12 lines
6.9 MiB
12 lines
6.9 MiB
// Auto-generated by tsbundle - do not edit
|
|
export const files: { path: string; contentBase64: string }[] = [
|
|
{
|
|
"path": "bundle.js",
|
|
"contentBase64": "dmFyIEM0dD1PYmplY3QuY3JlYXRlLE00dD1PYmplY3QuZnJlZXplLEwzPU9iamVjdC5kZWZpbmVQcm9wZXJ0eTt2YXIgXzR0PU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3I7dmFyIE5Icj1PYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lczt2YXIgRkhyPU9iamVjdC5nZXRQcm90b3R5cGVPZixPSHI9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTt2YXIgVDR0PShlLHQpPT4odD1TeW1ib2xbZV0pP3Q6U3ltYm9sLmZvcigiU3ltYm9sLiIrZSksSjg9ZT0+e3Rocm93IFR5cGVFcnJvcihlKX07dmFyIEw0dD0oZSx0LHIpPT50IGluIGU/TDMoZSx0LHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpyfSk6ZVt0XT1yO3ZhciBrNHQ9KGUsdCk9PkwzKGUsIm5hbWUiLHt2YWx1ZTp0LGNvbmZpZ3VyYWJsZTohMH0pLG4wPShlPT50eXBlb2YgcmVxdWlyZTwidSI/cmVxdWlyZTp0eXBlb2YgUHJveHk8InUiP25ldyBQcm94eShlLHtnZXQ6KHQscik9Pih0eXBlb2YgcmVxdWlyZTwidSI/cmVxdWlyZTp0KVtyXX0pOmUpKGZ1bmN0aW9uKGUpe2lmKHR5cGVvZiByZXF1aXJlPCJ1IilyZXR1cm4gcmVxdWlyZS5hcHBseSh0aGlzLGFyZ3VtZW50cyk7dGhyb3cgRXJyb3IoJ0R5bmFtaWMgcmVxdWlyZSBvZiAiJytlKyciIGlzIG5vdCBzdXBwb3J0ZWQnKX0pO3ZhciBsPShlLHQpPT4oKT0+KGUmJih0PWUoZT0wKSksdCk7dmFyIFhlPShlLHQpPT4oKT0+KHR8fGUoKHQ9e2V4cG9ydHM6e319KS5leHBvcnRzLHQpLHQuZXhwb3J0cykscWU9KGUsdCk9Pntmb3IodmFyIHIgaW4gdClMMyhlLHIse2dldDp0W3JdLGVudW1lcmFibGU6ITB9KX0sUkhyPShlLHQscixhKT0+e2lmKHQmJnR5cGVvZiB0PT0ib2JqZWN0Inx8dHlwZW9mIHQ9PSJmdW5jdGlvbiIpZm9yKGxldCBpIG9mIE5Icih0KSkhT0hyLmNhbGwoZSxpKSYmaSE9PXImJkwzKGUsaSx7Z2V0OigpPT50W2ldLGVudW1lcmFibGU6IShhPV80dCh0LGkpKXx8YS5lbnVtZXJhYmxlfSk7cmV0dXJuIGV9O3ZhciBBcj0oZSx0LHIpPT4ocj1lIT1udWxsP0M0dChGSHIoZSkpOnt9LFJIcih0fHwhZXx8IWUuX19lc01vZHVsZT9MMyhyLCJkZWZhdWx0Iix7dmFsdWU6ZSxlbnVtZXJhYmxlOiEwfSk6cixlKSk7dmFyIHkxPWU9PlssLCxDNHQoZT8uW1Q0dCgibWV0YWRhdGEiKV0/P251bGwpXSxENHQ9WyJjbGFzcyIsIm1ldGhvZCIsImdldHRlciIsInNldHRlciIsImFjY2Vzc29yIiwiZmllbGQiLCJ2YWx1ZSIsImdldCIsInNldCJdLGdnPWU9PmUhPT12b2lkIDAmJnR5cGVvZiBlIT0iZnVuY3Rpb24iP0o4KCJGdW5jdGlvbiBleHBlY3RlZCIpOmUsQkhyPShlLHQscixhLGkpPT4oe2tpbmQ6RDR0W2VdLG5hbWU6dCxtZXRhZGF0YTphLGFkZEluaXRpYWxpemVyOm89PnIuXz9KOCgiQWxyZWFkeSBpbml0aWFsaXplZCIpOmkucHVzaChnZyhvfHxudWxsKSl9KSxISHI9KGUsdCk9Pkw0dCh0LFQ0dCgibWV0YWRhdGEiKSxlWzNdKSxocj0oZSx0LHIsYSk9Pntmb3IodmFyIGk9MCxvPWVbdD4+MV0sbj1vJiZvLmxlbmd0aDtpPG47aSsrKXQmMT9vW2ldLmNhbGwocik6YT1vW2ldLmNhbGwocixhKTtyZXR1cm4gYX0scGE9KGUsdCxyLGEsaSxvKT0+e3ZhciBuLHMsYyxkLGYsdT10JjcscD0hISh0JjgpLGg9ISEodCYxNiksYj11PjM/ZS5sZW5ndGgrMTp1P3A/MToyOjAseD1ENHRbdSs1XSxnPXU+MyYmKGVbYi0xXT1bXSksdj1lW2JdfHwoZVtiXT1bXSksdz11JiYoIWgmJiFwJiYoaT1pLnByb3RvdHlwZSksdTw1JiYodT4zfHwhaCkmJl80dCh1PDQ/aTp7Z2V0W3JdKCl7cmV0dXJuIFM0dCh0aGlzLG8pfSxzZXRbcl0oRil7cmV0dXJuIHo0dCh0aGlzLG8sRil9fSxyKSk7dT9oJiZ1PDQmJms0dChvLCh1PjI/InNldCAiOnU+MT8iZ2V0ICI6IiIpK3IpOms0dChpLHIpO2Zvcih2YXIgTT1hLmxlbmd0aC0xO00+PTA7TS0tKWQ9QkhyKHUscixjPXt9LGVbM10sdiksdSYmKGQuc3RhdGljPXAsZC5wcml2YXRlPWgsZj1kLmFjY2Vzcz17aGFzOmg/Rj0+cUhyKGksRik6Rj0+ciBpbiBGfSx1XjMmJihmLmdldD1oP0Y9Pih1XjE/UzR0OmpIcikoRixpLHVeND9vOncuZ2V0KTpGPT5GW3JdKSx1PjImJihmLnNldD1oPyhGLEMpPT56NHQoRixpLEMsdV40P286dy5zZXQpOihGLEMpPT5GW3JdPUMpKSxzPSgwLGFbTV0pKHU/dTw0P2g/bzp3W3hdOnU+ND92b2lkIDA6e2dldDp3LmdldCxzZXQ6dy5zZXR9OmksZCksYy5fPTEsdV40fHxzPT09dm9pZCAwP2dnKHMpJiYodT40P2cudW5zaGlmdChzKTp1P2g/bz1zOndbeF09czppPXMpOnR5cGVvZiBzIT0ib2JqZWN0Inx8cz09PW51bGw/SjgoIk9iamVjdCBleHBlY3RlZCIpOihnZyhuPXMuZ2V0KSYmKHcuZ2V0PW4pLGdnKG49cy5zZXQpJiYody5zZXQ9biksZ2cobj1zLmluaXQpJiZnLnVuc2hpZnQobikpO3JldHVybiB1fHxISHIoZSxpKSx3JiZMMyhpLHIsdyksaD91XjQ/bzp3Oml9LGwxPShlLHQscik9Pkw0dChlLHR5cGVvZiB0IT0ic3ltYm9sIj90KyIiOnQsciksQWNlPShlLHQscik9PnQuaGFzKGUpfHxKOCgiQ2Fubm90ICIrcikscUhyPShlLHQpPT5PYmplY3QodCkhPT10P0o4KCdDYW5ub3QgdXNlIHRoZSAiaW4iIG9wZXJhdG9yIG9uIHRoaXMgdmFsdWUnKTplLmhhcyh0KSxTNHQ9KGUsdCxyKT0+KEFjZShlLHQsInJlYWQgZnJvbSBwcml2YXRlIGZpZWxkIikscj9yLmNhbGwoZSk6dC5nZXQoZSkpLGMxPShlLHQscik9PnQuaGFzKGUpP0o4KCJDYW5ub3QgYWRkIHRoZSBzYW1lIHByaXZhdGUgbWVtYmVyIG1vcmUgdGhhbiBvbmNlIik6dCBpbnN0YW5jZW9mIFdlYWtTZXQ/dC5hZGQoZSk6dC5zZXQoZSxyKSx6NHQ9KGUsdCxyLGEpPT4oQWNlKGUsdCwid3JpdGUgdG8gcHJpdmF0ZSBmaWVsZCIpLGE/YS5jYWxsKGUscik6dC5zZXQoZSxyKSxyKSxqSHI9KGUsdCxyKT0+KEFjZShlLHQsImFjY2VzcyBwcml2YXRlIG1ldGhvZCIpLHIpO3ZhciBlaD0oZSx0KT0+TTR0KEwzKGUsInJhdyIse3ZhbHVlOk00dCh0fHxlLnNsaWNlKCkpfSkpO3ZhciBsWCx4ZyxFY2UsQTR0LHRoLEpyLGhhLGNYLGJnLCRjZT1sKCgpPT57bFg9Z2xvYmFsVGhpcyx4Zz1sWC5TaGFkb3dSb290JiYobFguU2hhZHlDU1M9PT12b2lkIDB8fGxYLlNoYWR5Q1NTLm5hdGl2ZVNoYWRvdykmJiJhZG9wdGVkU3R5bGVTaGVldHMiaW4gRG9jdW1lbnQucHJvdG90eXBlJiYicmVwbGFjZSJpbiBDU1NTdHlsZVNoZWV0LnByb3RvdHlwZSxFY2U9U3ltYm9sKCksQTR0PW5ldyBXZWFrTWFwLHRoPWNsYXNze2NvbnN0cnVjdG9yKHQscixhKXtpZih0aGlzLl8kY3NzUmVzdWx0JD0hMCxhIT09RWNlKXRocm93IEVycm9yKCJDU1NSZXN1bHQgaXMgbm90IGNvbnN0cnVjdGFibGUuIFVzZSBgdW5zYWZlQ1NTYCBvciBgY3NzYCBpbnN0ZWFkLiIpO3RoaXMuY3NzVGV4dD10LHRoaXMudD1yfWdldCBzdHlsZVNoZWV0KCl7bGV0IHQ9dGhpcy5vLHI9dGhpcy50O2lmKHhnJiZ0PT09dm9pZCAwKXtsZXQgYT1yIT09dm9pZCAwJiZyLmxlbmd0aD09PTE7YSYmKHQ9QTR0LmdldChyKSksdD09PXZvaWQgMCYmKCh0aGlzLm89dD1uZXcgQ1NTU3R5bGVTaGVldCkucmVwbGFjZVN5bmModGhpcy5jc3NUZXh0KSxhJiZBNHQuc2V0KHIsdCkpfXJldHVybiB0fXRvU3RyaW5nKCl7cmV0dXJuIHRoaXMuY3NzVGV4dH19LEpyPWU9Pm5ldyB0aCh0eXBlb2YgZT09InN0cmluZyI/ZTplKyIiLHZvaWQgMCxFY2UpLGhhPShlLC4uLnQpPT57bGV0IHI9ZS5sZW5ndGg9PT0xP2VbMF06dC5yZWR1Y2UoKGEsaSxvKT0+YSsobj0+e2lmKG4uXyRjc3NSZXN1bHQkPT09ITApcmV0dXJuIG4uY3NzVGV4dDtpZih0eXBlb2Ygbj09Im51bWJlciIpcmV0dXJuIG47dGhyb3cgRXJyb3IoIlZhbHVlIHBhc3NlZCB0byAnY3NzJyBmdW5jdGlvbiBtdXN0IGJlIGEgJ2NzcycgZnVuY3Rpb24gcmVzdWx0OiAiK24rIi4gVXNlICd1bnNhZmVDU1MnIHRvIHBhc3Mgbm9uLWxpdGVyYWwgdmFsdWVzLCBidXQgdGFrZSBjYXJlIHRvIGVuc3VyZSBwYWdlIHNlY3VyaXR5LiIpfSkoaSkrZVtvKzFdLGVbMF0pO3JldHVybiBuZXcgdGgocixlLEVjZSl9LGNYPShlLHQpPT57aWYoeGcpZS5hZG9wdGVkU3R5bGVTaGVldHM9dC5tYXAocj0+ciBpbnN0YW5jZW9mIENTU1N0eWxlU2hlZXQ/cjpyLnN0eWxlU2hlZXQpO2Vsc2UgZm9yKGxldCByIG9mIHQpe2xldCBhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInN0eWxlIiksaT1sWC5saXROb25jZTtpIT09dm9pZCAwJiZhLnNldEF0dHJpYnV0ZSgibm9uY2UiLGkpLGEudGV4dENvbnRlbnQ9ci5jc3NUZXh0LGUuYXBwZW5kQ2hpbGQoYSl9fSxiZz14Zz9lPT5lOmU9PmUgaW5zdGFuY2VvZiBDU1NTdHlsZVNoZWV0Pyh0PT57bGV0IHI9IiI7Zm9yKGxldCBhIG9mIHQuY3NzUnVsZXMpcis9YS5jc3NUZXh0O3JldHVybiBKcihyKX0pKGUpOmV9KTt2YXIgVkhyLFVIcixXSHIsR0hyLFlIcixaSHIsZFgsRTR0LFhIcixRSHIsdmcscmgseWcsJDR0LFFzLHdnPWwoKCk9PnskY2UoKTskY2UoKTsoe2lzOlZIcixkZWZpbmVQcm9wZXJ0eTpVSHIsZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yOldIcixnZXRPd25Qcm9wZXJ0eU5hbWVzOkdIcixnZXRPd25Qcm9wZXJ0eVN5bWJvbHM6WUhyLGdldFByb3RvdHlwZU9mOlpIcn09T2JqZWN0KSxkWD1nbG9iYWxUaGlzLEU0dD1kWC50cnVzdGVkVHlwZXMsWEhyPUU0dD9FNHQuZW1wdHlTY3JpcHQ6IiIsUUhyPWRYLnJlYWN0aXZlRWxlbWVudFBvbHlmaWxsU3VwcG9ydCx2Zz0oZSx0KT0+ZSxyaD17dG9BdHRyaWJ1dGUoZSx0KXtzd2l0Y2godCl7Y2FzZSBCb29sZWFuOmU9ZT9YSHI6bnVsbDticmVhaztjYXNlIE9iamVjdDpjYXNlIEFycmF5OmU9ZT09bnVsbD9lOkpTT04uc3RyaW5naWZ5KGUpfXJldHVybiBlfSxmcm9tQXR0cmlidXRlKGUsdCl7bGV0IHI9ZTtzd2l0Y2godCl7Y2FzZSBCb29sZWFuOnI9ZSE9PW51bGw7YnJlYWs7Y2FzZSBOdW1iZXI6cj1lPT09bnVsbD9udWxsOk51bWJlcihlKTticmVhaztjYXNlIE9iamVjdDpjYXNlIEFycmF5OnRyeXtyPUpTT04ucGFyc2UoZSl9Y2F0Y2h7cj1udWxsfX1yZXR1cm4gcn19LHlnPShlLHQpPT4hVkhyKGUsdCksJDR0PXthdHRyaWJ1dGU6ITAsdHlwZTpTdHJpbmcsY29udmVydGVyOnJoLHJlZmxlY3Q6ITEsdXNlRGVmYXVsdDohMSxoYXNDaGFuZ2VkOnlnfTtTeW1ib2wubWV0YWRhdGE/Pz1TeW1ib2woIm1ldGFkYXRhIiksZFgubGl0UHJvcGVydHlNZXRhZGF0YT8/PW5ldyBXZWFrTWFwO1FzPWNsYXNzIGV4dGVuZHMgSFRNTEVsZW1lbnR7c3RhdGljIGFkZEluaXRpYWxpemVyKHQpe3RoaXMuXyRFaSgpLCh0aGlzLmw/Pz1bXSkucHVzaCh0KX1zdGF0aWMgZ2V0IG9ic2VydmVkQXR0cmlidXRlcygpe3JldHVybiB0aGlzLmZpbmFsaXplKCksdGhpcy5fJEVoJiZbLi4udGhpcy5fJEVoLmtleXMoKV19c3RhdGljIGNyZWF0ZVByb3BlcnR5KHQscj0kNHQpe2lmKHIuc3RhdGUmJihyLmF0dHJpYnV0ZT0hMSksdGhpcy5fJEVpKCksdGhpcy5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkodCkmJigocj1PYmplY3QuY3JlYXRlKHIpKS53cmFwcGVkPSEwKSx0aGlzLmVsZW1lbnRQcm9wZXJ0aWVzLnNldCh0LHIpLCFyLm5vQWNjZXNzb3Ipe2xldCBhPVN5bWJvbCgpLGk9dGhpcy5nZXRQcm9wZXJ0eURlc2NyaXB0b3IodCxhLHIpO2khPT12b2lkIDAmJlVIcih0aGlzLnByb3RvdHlwZSx0LGkpfX1zdGF0aWMgZ2V0UHJvcGVydHlEZXNjcmlwdG9yKHQscixhKXtsZXR7Z2V0Omksc2V0Om99PVdIcih0aGlzLnByb3RvdHlwZSx0KT8/e2dldCgpe3JldHVybiB0aGlzW3JdfSxzZXQobil7dGhpc1tyXT1ufX07cmV0dXJue2dldDppLHNldChuKXtsZXQgcz1pPy5jYWxsKHRoaXMpO28/LmNhbGwodGhpcyxuKSx0aGlzLnJlcXVlc3RVcGRhdGUodCxzLGEpfSxjb25maWd1cmFibGU6ITAsZW51bWVyYWJsZTohMH19c3RhdGljIGdldFByb3BlcnR5T3B0aW9ucyh0KXtyZXR1cm4gdGhpcy5lbGVtZW50UHJvcGVydGllcy5nZXQodCk/PyQ0dH1zdGF0aWMgXyRFaSgpe2lmKHRoaXMuaGFzT3duUHJvcGVydHkodmcoImVsZW1lbnRQcm9wZXJ0aWVzIikpKXJldHVybjtsZXQgdD1aSHIodGhpcyk7dC5maW5hbGl6ZSgpLHQubCE9PXZvaWQgMCYmKHRoaXMubD1bLi4udC5sXSksdGhpcy5lbGVtZW50UHJvcGVydGllcz1uZXcgTWFwKHQuZWxlbWVudFByb3BlcnRpZXMpfXN0YXRpYyBmaW5hbGl6ZSgpe2lmKHRoaXMuaGFzT3duUHJvcGVydHkodmcoImZpbmFsaXplZCIpKSlyZXR1cm47aWYodGhpcy5maW5hbGl6ZWQ9ITAsdGhpcy5fJEVpKCksdGhpcy5oYXNPd25Qcm9wZXJ0eSh2ZygicHJvcGVydGllcyIpKSl7bGV0IHI9dGhpcy5wcm9wZXJ0aWVzLGE9Wy4uLkdIcihyKSwuLi5ZSHIocildO2ZvcihsZXQgaSBvZiBhKXRoaXMuY3JlYXRlUHJvcGVydHkoaSxyW2ldKX1sZXQgdD10aGlzW1N5bWJvbC5tZXRhZGF0YV07aWYodCE9PW51bGwpe2xldCByPWxpdFByb3BlcnR5TWV0YWRhdGEuZ2V0KHQpO2lmKHIhPT12b2lkIDApZm9yKGxldFthLGldb2Ygcil0aGlzLmVsZW1lbnRQcm9wZXJ0aWVzLnNldChhLGkpfXRoaXMuXyRFaD1uZXcgTWFwO2ZvcihsZXRbcixhXW9mIHRoaXMuZWxlbWVudFByb3BlcnRpZXMpe2xldCBpPXRoaXMuXyRFdShyLGEpO2khPT12b2lkIDAmJnRoaXMuXyRFaC5zZXQoaSxyKX10aGlzLmVsZW1lbnRTdHlsZXM9dGhpcy5maW5hbGl6ZVN0eWxlcyh0aGlzLnN0eWxlcyl9c3RhdGljIGZpbmFsaXplU3R5bGVzKHQpe2xldCByPVtdO2lmKEFycmF5LmlzQXJyYXkodCkpe2xldCBhPW5ldyBTZXQodC5mbGF0KDEvMCkucmV2ZXJzZSgpKTtmb3IobGV0IGkgb2YgYSlyLnVuc2hpZnQoYmcoaSkpfWVsc2UgdCE9PXZvaWQgMCYmci5wdXNoKGJnKHQpKTtyZXR1cm4gcn1zdGF0aWMgXyRFdSh0LHIpe2xldCBhPXIuYXR0cmlidXRlO3JldHVybiBhPT09ITE/dm9pZCAwOnR5cGVvZiBhPT0ic3RyaW5nIj9hOnR5cGVvZiB0PT0ic3RyaW5nIj90LnRvTG93ZXJDYXNlKCk6dm9pZCAwfWNvbnN0cnVjdG9yKCl7c3VwZXIoKSx0aGlzLl8kRXA9dm9pZCAwLHRoaXMuaXNVcGRhdGVQZW5kaW5nPSExLHRoaXMuaGFzVXBkYXRlZD0hMSx0aGlzLl8kRW09bnVsbCx0aGlzLl8kRXYoKX1fJEV2KCl7dGhpcy5fJEVTPW5ldyBQcm9taXNlKHQ9PnRoaXMuZW5hYmxlVXBkYXRpbmc9dCksdGhpcy5fJEFMPW5ldyBNYXAsdGhpcy5fJEVfKCksdGhpcy5yZXF1ZXN0VXBkYXRlKCksdGhpcy5jb25zdHJ1Y3Rvci5sPy5mb3JFYWNoKHQ9PnQodGhpcykpfWFkZENvbnRyb2xsZXIodCl7KHRoaXMuXyRFTz8/PW5ldyBTZXQpLmFkZCh0KSx0aGlzLnJlbmRlclJvb3QhPT12b2lkIDAmJnRoaXMuaXNDb25uZWN0ZWQmJnQuaG9zdENvbm5lY3RlZD8uKCl9cmVtb3ZlQ29udHJvbGxlcih0KXt0aGlzLl8kRU8/LmRlbGV0ZSh0KX1fJEVfKCl7bGV0IHQ9bmV3IE1hcCxyPXRoaXMuY29uc3RydWN0b3IuZWxlbWVudFByb3BlcnRpZXM7Zm9yKGxldCBhIG9mIHIua2V5cygpKXRoaXMuaGFzT3duUHJvcGVydHkoYSkmJih0LnNldChhLHRoaXNbYV0pLGRlbGV0ZSB0aGlzW2FdKTt0LnNpemU+MCYmKHRoaXMuXyRFcD10KX1jcmVhdGVSZW5kZXJSb290KCl7bGV0IHQ9dGhpcy5zaGFkb3dSb290Pz90aGlzLmF0dGFjaFNoYWRvdyh0aGlzLmNvbnN0cnVjdG9yLnNoYWRvd1Jvb3RPcHRpb25zKTtyZXR1cm4gY1godCx0aGlzLmNvbnN0cnVjdG9yLmVsZW1lbnRTdHlsZXMpLHR9Y29ubmVjdGVkQ2FsbGJhY2soKXt0aGlzLnJlbmRlclJvb3Q/Pz10aGlzLmNyZWF0ZVJlbmRlclJvb3QoKSx0aGlzLmVuYWJsZVVwZGF0aW5nKCEwKSx0aGlzLl8kRU8/LmZvckVhY2godD0+dC5ob3N0Q29ubmVjdGVkPy4oKSl9ZW5hYmxlVXBkYXRpbmcodCl7fWRpc2Nvbm5lY3RlZENhbGxiYWNrKCl7dGhpcy5fJEVPPy5mb3JFYWNoKHQ9PnQuaG9zdERpc2Nvbm5lY3RlZD8uKCkpfWF0dHJpYnV0ZUNoYW5nZWRDYWxsYmFjayh0LHIsYSl7dGhpcy5fJEFLKHQsYSl9XyRFVCh0LHIpe2xldCBhPXRoaXMuY29uc3RydWN0b3IuZWxlbWVudFByb3BlcnRpZXMuZ2V0KHQpLGk9dGhpcy5jb25zdHJ1Y3Rvci5fJEV1KHQsYSk7aWYoaSE9PXZvaWQgMCYmYS5yZWZsZWN0PT09ITApe2xldCBvPShhLmNvbnZlcnRlcj8udG9BdHRyaWJ1dGUhPT12b2lkIDA/YS5jb252ZXJ0ZXI6cmgpLnRvQXR0cmlidXRlKHIsYS50eXBlKTt0aGlzLl8kRW09dCxvPT1udWxsP3RoaXMucmVtb3ZlQXR0cmlidXRlKGkpOnRoaXMuc2V0QXR0cmlidXRlKGksbyksdGhpcy5fJEVtPW51bGx9fV8kQUsodCxyKXtsZXQgYT10aGlzLmNvbnN0cnVjdG9yLGk9YS5fJEVoLmdldCh0KTtpZihpIT09dm9pZCAwJiZ0aGlzLl8kRW0hPT1pKXtsZXQgbz1hLmdldFByb3BlcnR5T3B0aW9ucyhpKSxuPXR5cGVvZiBvLmNvbnZlcnRlcj09ImZ1bmN0aW9uIj97ZnJvbUF0dHJpYnV0ZTpvLmNvbnZlcnRlcn06by5jb252ZXJ0ZXI/LmZyb21BdHRyaWJ1dGUhPT12b2lkIDA/by5jb252ZXJ0ZXI6cmg7dGhpcy5fJEVtPWk7bGV0IHM9bi5mcm9tQXR0cmlidXRlKHIsby50eXBlKTt0aGlzW2ldPXM/P3RoaXMuXyRFaj8uZ2V0KGkpPz9zLHRoaXMuXyRFbT1udWxsfX1yZXF1ZXN0VXBkYXRlKHQscixhLGk9ITEsbyl7aWYodCE9PXZvaWQgMCl7bGV0IG49dGhpcy5jb25zdHJ1Y3RvcjtpZihpPT09ITEmJihvPXRoaXNbdF0pLGE/Pz1uLmdldFByb3BlcnR5T3B0aW9ucyh0KSwhKChhLmhhc0NoYW5nZWQ/P3lnKShvLHIpfHxhLnVzZURlZmF1bHQmJmEucmVmbGVjdCYmbz09PXRoaXMuXyRFaj8uZ2V0KHQpJiYhdGhpcy5oYXNBdHRyaWJ1dGUobi5fJEV1KHQsYSkpKSlyZXR1cm47dGhpcy5DKHQscixhKX10aGlzLmlzVXBkYXRlUGVuZGluZz09PSExJiYodGhpcy5fJEVTPXRoaXMuXyRFUCgpKX1DKHQscix7dXNlRGVmYXVsdDphLHJlZmxlY3Q6aSx3cmFwcGVkOm99LG4pe2EmJiEodGhpcy5fJEVqPz89bmV3IE1hcCkuaGFzKHQpJiYodGhpcy5fJEVqLnNldCh0LG4/P3I/P3RoaXNbdF0pLG8hPT0hMHx8biE9PXZvaWQgMCl8fCh0aGlzLl8kQUwuaGFzKHQpfHwodGhpcy5oYXNVcGRhdGVkfHxhfHwocj12b2lkIDApLHRoaXMuXyRBTC5zZXQodCxyKSksaT09PSEwJiZ0aGlzLl8kRW0hPT10JiYodGhpcy5fJEVxPz89bmV3IFNldCkuYWRkKHQpKX1hc3luYyBfJEVQKCl7dGhpcy5pc1VwZGF0ZVBlbmRpbmc9ITA7dHJ5e2F3YWl0IHRoaXMuXyRFU31jYXRjaChyKXtQcm9taXNlLnJlamVjdChyKX1sZXQgdD10aGlzLnNjaGVkdWxlVXBkYXRlKCk7cmV0dXJuIHQhPW51bGwmJmF3YWl0IHQsIXRoaXMuaXNVcGRhdGVQZW5kaW5nfXNjaGVkdWxlVXBkYXRlKCl7cmV0dXJuIHRoaXMucGVyZm9ybVVwZGF0ZSgpfXBlcmZvcm1VcGRhdGUoKXtpZighdGhpcy5pc1VwZGF0ZVBlbmRpbmcpcmV0dXJuO2lmKCF0aGlzLmhhc1VwZGF0ZWQpe2lmKHRoaXMucmVuZGVyUm9vdD8/PXRoaXMuY3JlYXRlUmVuZGVyUm9vdCgpLHRoaXMuXyRFcCl7Zm9yKGxldFtpLG9db2YgdGhpcy5fJEVwKXRoaXNbaV09bzt0aGlzLl8kRXA9dm9pZCAwfWxldCBhPXRoaXMuY29uc3RydWN0b3IuZWxlbWVudFByb3BlcnRpZXM7aWYoYS5zaXplPjApZm9yKGxldFtpLG9db2YgYSl7bGV0e3dyYXBwZWQ6bn09byxzPXRoaXNbaV07biE9PSEwfHx0aGlzLl8kQUwuaGFzKGkpfHxzPT09dm9pZCAwfHx0aGlzLkMoaSx2b2lkIDAsbyxzKX19bGV0IHQ9ITEscj10aGlzLl8kQUw7dHJ5e3Q9dGhpcy5zaG91bGRVcGRhdGUociksdD8odGhpcy53aWxsVXBkYXRlKHIpLHRoaXMuXyRFTz8uZm9yRWFjaChhPT5hLmhvc3RVcGRhdGU/LigpKSx0aGlzLnVwZGF0ZShyKSk6dGhpcy5fJEVNKCl9Y2F0Y2goYSl7dGhyb3cgdD0hMSx0aGlzLl8kRU0oKSxhfXQmJnRoaXMuXyRBRShyKX13aWxsVXBkYXRlKHQpe31fJEFFKHQpe3RoaXMuXyRFTz8uZm9yRWFjaChyPT5yLmhvc3RVcGRhdGVkPy4oKSksdGhpcy5oYXNVcGRhdGVkfHwodGhpcy5oYXNVcGRhdGVkPSEwLHRoaXMuZmlyc3RVcGRhdGVkKHQpKSx0aGlzLnVwZGF0ZWQodCl9XyRFTSgpe3RoaXMuXyRBTD1uZXcgTWFwLHRoaXMuaXNVcGRhdGVQZW5kaW5nPSExfWdldCB1cGRhdGVDb21wbGV0ZSgpe3JldHVybiB0aGlzLmdldFVwZGF0ZUNvbXBsZXRlKCl9Z2V0VXBkYXRlQ29tcGxldGUoKXtyZXR1cm4gdGhpcy5fJEVTfXNob3VsZFVwZGF0ZSh0KXtyZXR1cm4hMH11cGRhdGUodCl7dGhpcy5fJEVxJiY9dGhpcy5fJEVxLmZvckVhY2gocj0+dGhpcy5fJEVUKHIsdGhpc1tyXSkpLHRoaXMuXyRFTSgpfXVwZGF0ZWQodCl7fWZpcnN0VXBkYXRlZCh0KXt9fTtRcy5lbGVtZW50U3R5bGVzPVtdLFFzLnNoYWRvd1Jvb3RPcHRpb25zPXttb2RlOiJvcGVuIn0sUXNbdmcoImVsZW1lbnRQcm9wZXJ0aWVzIildPW5ldyBNYXAsUXNbdmcoImZpbmFsaXplZCIpXT1uZXcgTWFwLFFIcj8uKHtSZWFjdGl2ZUVsZW1lbnQ6UXN9KSwoZFgucmVhY3RpdmVFbGVtZW50VmVyc2lvbnM/Pz1bXSkucHVzaCgiMi4xLjIiKX0pO2Z1bmN0aW9uIGo0dChlLHQpe2lmKCFGY2UoZSl8fCFlLmhhc093blByb3BlcnR5KCJyYXciKSl0aHJvdyBFcnJvcigiaW52YWxpZCB0ZW1wbGF0ZSBzdHJpbmdzIGFycmF5Iik7cmV0dXJuIEk0dCE9PXZvaWQgMD9JNHQuY3JlYXRlSFRNTCh0KTp0fWZ1bmN0aW9uICQzKGUsdCxyPWUsYSl7aWYodD09PXhhKXJldHVybiB0O2xldCBpPWEhPT12b2lkIDA/ci5fJENvPy5bYV06ci5fJENsLG89a2codCk/dm9pZCAwOnQuXyRsaXREaXJlY3RpdmUkO3JldHVybiBpPy5jb25zdHJ1Y3RvciE9PW8mJihpPy5fJEFPPy4oITEpLG89PT12b2lkIDA/aT12b2lkIDA6KGk9bmV3IG8oZSksaS5fJEFUKGUscixhKSksYSE9PXZvaWQgMD8oci5fJENvPz89W10pW2FdPWk6ci5fJENsPWkpLGkhPT12b2lkIDAmJih0PSQzKGUsaS5fJEFTKGUsdC52YWx1ZXMpLGksYSkpLHR9dmFyIFBjZSxQNHQsdVgsSTR0LEljZSxNbCxOY2UsS0hyLEQzLE1nLGtnLEZjZSxONHQsT2NlLFNnLEY0dCxPNHQsQTMsUjR0LEI0dCxINHQsUmNlLER0LEJjZSxIY2UseGEsRGEscTR0LEUzLFY0dCx6ZyxmWCxhaCxQMyxwWCxoWCxtWCxnWCxxY2UsSkhyLENnLEpuPWwoKCk9PntQY2U9Z2xvYmFsVGhpcyxQNHQ9ZT0+ZSx1WD1QY2UudHJ1c3RlZFR5cGVzLEk0dD11WD91WC5jcmVhdGVQb2xpY3koImxpdC1odG1sIix7Y3JlYXRlSFRNTDplPT5lfSk6dm9pZCAwLEljZT0iJGxpdCQiLE1sPWBsaXQkJHtNYXRoLnJhbmRvbSgpLnRvRml4ZWQoOSkuc2xpY2UoMil9JGAsTmNlPSI/IitNbCxLSHI9YDwke05jZX0+YCxEMz1kb2N1bWVudCxNZz0oKT0+RDMuY3JlYXRlQ29tbWVudCgiIiksa2c9ZT0+ZT09PW51bGx8fHR5cGVvZiBlIT0ib2JqZWN0IiYmdHlwZW9mIGUhPSJmdW5jdGlvbiIsRmNlPUFycmF5LmlzQXJyYXksTjR0PWU9PkZjZShlKXx8dHlwZW9mIGU/LltTeW1ib2wuaXRlcmF0b3JdPT0iZnVuY3Rpb24iLE9jZT1gWyAJClxmXHJdYCxTZz0vPCg/OighLS18XC9bXmEtekEtWl0pfChcLz9bYS16QS1aXVtePlxzXSopfChcLz8kKSkvZyxGNHQ9Ly0tPi9nLE80dD0vPi9nLEEzPVJlZ0V4cChgPnwke09jZX0oPzooW15cXHMiJz49L10rKSgke09jZX0qPSR7T2NlfSooPzpbXiAJClxmXHIiJ1xgPD49XXwoInwnKXwpKXwkKWAsImciKSxSNHQ9LycvZyxCNHQ9LyIvZyxINHQ9L14oPzpzY3JpcHR8c3R5bGV8dGV4dGFyZWF8dGl0bGUpJC9pLFJjZT1lPT4odCwuLi5yKT0+KHtfJGxpdFR5cGUkOmUsc3RyaW5nczp0LHZhbHVlczpyfSksRHQ9UmNlKDEpLEJjZT1SY2UoMiksSGNlPVJjZSgzKSx4YT1TeW1ib2wuZm9yKCJsaXQtbm9DaGFuZ2UiKSxEYT1TeW1ib2wuZm9yKCJsaXQtbm90aGluZyIpLHE0dD1uZXcgV2Vha01hcCxFMz1EMy5jcmVhdGVUcmVlV2Fsa2VyKEQzLDEyOSk7VjR0PShlLHQpPT57bGV0IHI9ZS5sZW5ndGgtMSxhPVtdLGksbz10PT09Mj8iPHN2Zz4iOnQ9PT0zPyI8bWF0aD4iOiIiLG49U2c7Zm9yKGxldCBzPTA7czxyO3MrKyl7bGV0IGM9ZVtzXSxkLGYsdT0tMSxwPTA7Zm9yKDtwPGMubGVuZ3RoJiYobi5sYXN0SW5kZXg9cCxmPW4uZXhlYyhjKSxmIT09bnVsbCk7KXA9bi5sYXN0SW5kZXgsbj09PVNnP2ZbMV09PT0iIS0tIj9uPUY0dDpmWzFdIT09dm9pZCAwP249TzR0OmZbMl0hPT12b2lkIDA/KEg0dC50ZXN0KGZbMl0pJiYoaT1SZWdFeHAoIjwvIitmWzJdLCJnIikpLG49QTMpOmZbM10hPT12b2lkIDAmJihuPUEzKTpuPT09QTM/ZlswXT09PSI+Ij8obj1pPz9TZyx1PS0xKTpmWzFdPT09dm9pZCAwP3U9LTI6KHU9bi5sYXN0SW5kZXgtZlsyXS5sZW5ndGgsZD1mWzFdLG49ZlszXT09PXZvaWQgMD9BMzpmWzNdPT09JyInP0I0dDpSNHQpOm49PT1CNHR8fG49PT1SNHQ/bj1BMzpuPT09RjR0fHxuPT09TzR0P249U2c6KG49QTMsaT12b2lkIDApO2xldCBoPW49PT1BMyYmZVtzKzFdLnN0YXJ0c1dpdGgoIi8+Iik/IiAiOiIiO28rPW49PT1TZz9jK0tIcjp1Pj0wPyhhLnB1c2goZCksYy5zbGljZSgwLHUpK0ljZStjLnNsaWNlKHUpK01sK2gpOmMrTWwrKHU9PT0tMj9zOmgpfXJldHVybltqNHQoZSxvKyhlW3JdfHwiPD8+IikrKHQ9PT0yPyI8L3N2Zz4iOnQ9PT0zPyI8L21hdGg+IjoiIikpLGFdfSx6Zz1jbGFzcyBle2NvbnN0cnVjdG9yKHtzdHJpbmdzOnQsXyRsaXRUeXBlJDpyfSxhKXtsZXQgaTt0aGlzLnBhcnRzPVtdO2xldCBvPTAsbj0wLHM9dC5sZW5ndGgtMSxjPXRoaXMucGFydHMsW2QsZl09VjR0KHQscik7aWYodGhpcy5lbD1lLmNyZWF0ZUVsZW1lbnQoZCxhKSxFMy5jdXJyZW50Tm9kZT10aGlzLmVsLmNvbnRlbnQscj09PTJ8fHI9PT0zKXtsZXQgdT10aGlzLmVsLmNvbnRlbnQuZmlyc3RDaGlsZDt1LnJlcGxhY2VXaXRoKC4uLnUuY2hpbGROb2Rlcyl9Zm9yKDsoaT1FMy5uZXh0Tm9kZSgpKSE9PW51bGwmJmMubGVuZ3RoPHM7KXtpZihpLm5vZGVUeXBlPT09MSl7aWYoaS5oYXNBdHRyaWJ1dGVzKCkpZm9yKGxldCB1IG9mIGkuZ2V0QXR0cmlidXRlTmFtZXMoKSlpZih1LmVuZHNXaXRoKEljZSkpe2xldCBwPWZbbisrXSxoPWkuZ2V0QXR0cmlidXRlKHUpLnNwbGl0KE1sKSxiPS8oWy4/QF0pPyguKikvLmV4ZWMocCk7Yy5wdXNoKHt0eXBlOjEsaW5kZXg6byxuYW1lOmJbMl0sc3RyaW5nczpoLGN0b3I6YlsxXT09PSIuIj9wWDpiWzFdPT09Ij8iP2hYOmJbMV09PT0iQCI/bVg6UDN9KSxpLnJlbW92ZUF0dHJpYnV0ZSh1KX1lbHNlIHUuc3RhcnRzV2l0aChNbCkmJihjLnB1c2goe3R5cGU6NixpbmRleDpvfSksaS5yZW1vdmVBdHRyaWJ1dGUodSkpO2lmKEg0dC50ZXN0KGkudGFnTmFtZSkpe2xldCB1PWkudGV4dENvbnRlbnQuc3BsaXQoTWwpLHA9dS5sZW5ndGgtMTtpZihwPjApe2kudGV4dENvbnRlbnQ9dVg/dVguZW1wdHlTY3JpcHQ6IiI7Zm9yKGxldCBoPTA7aDxwO2grKylpLmFwcGVuZCh1W2hdLE1nKCkpLEUzLm5leHROb2RlKCksYy5wdXNoKHt0eXBlOjIsaW5kZXg6KytvfSk7aS5hcHBlbmQodVtwXSxNZygpKX19fWVsc2UgaWYoaS5ub2RlVHlwZT09PTgpaWYoaS5kYXRhPT09TmNlKWMucHVzaCh7dHlwZToyLGluZGV4Om99KTtlbHNle2xldCB1PS0xO2Zvcig7KHU9aS5kYXRhLmluZGV4T2YoTWwsdSsxKSkhPT0tMTspYy5wdXNoKHt0eXBlOjcsaW5kZXg6b30pLHUrPU1sLmxlbmd0aC0xfW8rK319c3RhdGljIGNyZWF0ZUVsZW1lbnQodCxyKXtsZXQgYT1EMy5jcmVhdGVFbGVtZW50KCJ0ZW1wbGF0ZSIpO3JldHVybiBhLmlubmVySFRNTD10LGF9fTtmWD1jbGFzc3tjb25zdHJ1Y3Rvcih0LHIpe3RoaXMuXyRBVj1bXSx0aGlzLl8kQU49dm9pZCAwLHRoaXMuXyRBRD10LHRoaXMuXyRBTT1yfWdldCBwYXJlbnROb2RlKCl7cmV0dXJuIHRoaXMuXyRBTS5wYXJlbnROb2RlfWdldCBfJEFVKCl7cmV0dXJuIHRoaXMuXyRBTS5fJEFVfXUodCl7bGV0e2VsOntjb250ZW50OnJ9LHBhcnRzOmF9PXRoaXMuXyRBRCxpPSh0Py5jcmVhdGlvblNjb3BlPz9EMykuaW1wb3J0Tm9kZShyLCEwKTtFMy5jdXJyZW50Tm9kZT1pO2xldCBvPUUzLm5leHROb2RlKCksbj0wLHM9MCxjPWFbMF07Zm9yKDtjIT09dm9pZCAwOyl7aWYobj09PWMuaW5kZXgpe2xldCBkO2MudHlwZT09PTI/ZD1uZXcgYWgobyxvLm5leHRTaWJsaW5nLHRoaXMsdCk6Yy50eXBlPT09MT9kPW5ldyBjLmN0b3IobyxjLm5hbWUsYy5zdHJpbmdzLHRoaXMsdCk6Yy50eXBlPT09NiYmKGQ9bmV3IGdYKG8sdGhpcyx0KSksdGhpcy5fJEFWLnB1c2goZCksYz1hWysrc119biE9PWM/LmluZGV4JiYobz1FMy5uZXh0Tm9kZSgpLG4rKyl9cmV0dXJuIEUzLmN1cnJlbnROb2RlPUQzLGl9cCh0KXtsZXQgcj0wO2ZvcihsZXQgYSBvZiB0aGlzLl8kQVYpYSE9PXZvaWQgMCYmKGEuc3RyaW5ncyE9PXZvaWQgMD8oYS5fJEFJKHQsYSxyKSxyKz1hLnN0cmluZ3MubGVuZ3RoLTIpOmEuXyRBSSh0W3JdKSkscisrfX0sYWg9Y2xhc3MgZXtnZXQgXyRBVSgpe3JldHVybiB0aGlzLl8kQU0/Ll8kQVU/P3RoaXMuXyRDdn1jb25zdHJ1Y3Rvcih0LHIsYSxpKXt0aGlzLnR5cGU9Mix0aGlzLl8kQUg9RGEsdGhpcy5fJEFOPXZvaWQgMCx0aGlzLl8kQUE9dCx0aGlzLl8kQUI9cix0aGlzLl8kQU09YSx0aGlzLm9wdGlvbnM9aSx0aGlzLl8kQ3Y9aT8uaXNDb25uZWN0ZWQ/PyEwfWdldCBwYXJlbnROb2RlKCl7bGV0IHQ9dGhpcy5fJEFBLnBhcmVudE5vZGUscj10aGlzLl8kQU07cmV0dXJuIHIhPT12b2lkIDAmJnQ/Lm5vZGVUeXBlPT09MTEmJih0PXIucGFyZW50Tm9kZSksdH1nZXQgc3RhcnROb2RlKCl7cmV0dXJuIHRoaXMuXyRBQX1nZXQgZW5kTm9kZSgpe3JldHVybiB0aGlzLl8kQUJ9XyRBSSh0LHI9dGhpcyl7dD0kMyh0aGlzLHQsciksa2codCk/dD09PURhfHx0PT1udWxsfHx0PT09IiI/KHRoaXMuXyRBSCE9PURhJiZ0aGlzLl8kQVIoKSx0aGlzLl8kQUg9RGEpOnQhPT10aGlzLl8kQUgmJnQhPT14YSYmdGhpcy5fKHQpOnQuXyRsaXRUeXBlJCE9PXZvaWQgMD90aGlzLiQodCk6dC5ub2RlVHlwZSE9PXZvaWQgMD90aGlzLlQodCk6TjR0KHQpP3RoaXMuayh0KTp0aGlzLl8odCl9Tyh0KXtyZXR1cm4gdGhpcy5fJEFBLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHQsdGhpcy5fJEFCKX1UKHQpe3RoaXMuXyRBSCE9PXQmJih0aGlzLl8kQVIoKSx0aGlzLl8kQUg9dGhpcy5PKHQpKX1fKHQpe3RoaXMuXyRBSCE9PURhJiZrZyh0aGlzLl8kQUgpP3RoaXMuXyRBQS5uZXh0U2libGluZy5kYXRhPXQ6dGhpcy5UKEQzLmNyZWF0ZVRleHROb2RlKHQpKSx0aGlzLl8kQUg9dH0kKHQpe2xldHt2YWx1ZXM6cixfJGxpdFR5cGUkOmF9PXQsaT10eXBlb2YgYT09Im51bWJlciI/dGhpcy5fJEFDKHQpOihhLmVsPT09dm9pZCAwJiYoYS5lbD16Zy5jcmVhdGVFbGVtZW50KGo0dChhLmgsYS5oWzBdKSx0aGlzLm9wdGlvbnMpKSxhKTtpZih0aGlzLl8kQUg/Ll8kQUQ9PT1pKXRoaXMuXyRBSC5wKHIpO2Vsc2V7bGV0IG89bmV3IGZYKGksdGhpcyksbj1vLnUodGhpcy5vcHRpb25zKTtvLnAociksdGhpcy5UKG4pLHRoaXMuXyRBSD1vfX1fJEFDKHQpe2xldCByPXE0dC5nZXQodC5zdHJpbmdzKTtyZXR1cm4gcj09PXZvaWQgMCYmcTR0LnNldCh0LnN0cmluZ3Mscj1uZXcgemcodCkpLHJ9ayh0KXtGY2UodGhpcy5fJEFIKXx8KHRoaXMuXyRBSD1bXSx0aGlzLl8kQVIoKSk7bGV0IHI9dGhpcy5fJEFILGEsaT0wO2ZvcihsZXQgbyBvZiB0KWk9PT1yLmxlbmd0aD9yLnB1c2goYT1uZXcgZSh0aGlzLk8oTWcoKSksdGhpcy5PKE1nKCkpLHRoaXMsdGhpcy5vcHRpb25zKSk6YT1yW2ldLGEuXyRBSShvKSxpKys7aTxyLmxlbmd0aCYmKHRoaXMuXyRBUihhJiZhLl8kQUIubmV4dFNpYmxpbmcsaSksci5sZW5ndGg9aSl9XyRBUih0PXRoaXMuXyRBQS5uZXh0U2libGluZyxyKXtmb3IodGhpcy5fJEFQPy4oITEsITAscik7dCE9PXRoaXMuXyRBQjspe2xldCBhPVA0dCh0KS5uZXh0U2libGluZztQNHQodCkucmVtb3ZlKCksdD1hfX1zZXRDb25uZWN0ZWQodCl7dGhpcy5fJEFNPT09dm9pZCAwJiYodGhpcy5fJEN2PXQsdGhpcy5fJEFQPy4odCkpfX0sUDM9Y2xhc3N7Z2V0IHRhZ05hbWUoKXtyZXR1cm4gdGhpcy5lbGVtZW50LnRhZ05hbWV9Z2V0IF8kQVUoKXtyZXR1cm4gdGhpcy5fJEFNLl8kQVV9Y29uc3RydWN0b3IodCxyLGEsaSxvKXt0aGlzLnR5cGU9MSx0aGlzLl8kQUg9RGEsdGhpcy5fJEFOPXZvaWQgMCx0aGlzLmVsZW1lbnQ9dCx0aGlzLm5hbWU9cix0aGlzLl8kQU09aSx0aGlzLm9wdGlvbnM9byxhLmxlbmd0aD4yfHxhWzBdIT09IiJ8fGFbMV0hPT0iIj8odGhpcy5fJEFIPUFycmF5KGEubGVuZ3RoLTEpLmZpbGwobmV3IFN0cmluZyksdGhpcy5zdHJpbmdzPWEpOnRoaXMuXyRBSD1EYX1fJEFJKHQscj10aGlzLGEsaSl7bGV0IG89dGhpcy5zdHJpbmdzLG49ITE7aWYobz09PXZvaWQgMCl0PSQzKHRoaXMsdCxyLDApLG49IWtnKHQpfHx0IT09dGhpcy5fJEFIJiZ0IT09eGEsbiYmKHRoaXMuXyRBSD10KTtlbHNle2xldCBzPXQsYyxkO2Zvcih0PW9bMF0sYz0wO2M8by5sZW5ndGgtMTtjKyspZD0kMyh0aGlzLHNbYStjXSxyLGMpLGQ9PT14YSYmKGQ9dGhpcy5fJEFIW2NdKSxufHw9IWtnKGQpfHxkIT09dGhpcy5fJEFIW2NdLGQ9PT1EYT90PURhOnQhPT1EYSYmKHQrPShkPz8iIikrb1tjKzFdKSx0aGlzLl8kQUhbY109ZH1uJiYhaSYmdGhpcy5qKHQpfWoodCl7dD09PURhP3RoaXMuZWxlbWVudC5yZW1vdmVBdHRyaWJ1dGUodGhpcy5uYW1lKTp0aGlzLmVsZW1lbnQuc2V0QXR0cmlidXRlKHRoaXMubmFtZSx0Pz8iIil9fSxwWD1jbGFzcyBleHRlbmRzIFAze2NvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKSx0aGlzLnR5cGU9M31qKHQpe3RoaXMuZWxlbWVudFt0aGlzLm5hbWVdPXQ9PT1EYT92b2lkIDA6dH19LGhYPWNsYXNzIGV4dGVuZHMgUDN7Y29uc3RydWN0b3IoKXtzdXBlciguLi5hcmd1bWVudHMpLHRoaXMudHlwZT00fWoodCl7dGhpcy5lbGVtZW50LnRvZ2dsZUF0dHJpYnV0ZSh0aGlzLm5hbWUsISF0JiZ0IT09RGEpfX0sbVg9Y2xhc3MgZXh0ZW5kcyBQM3tjb25zdHJ1Y3Rvcih0LHIsYSxpLG8pe3N1cGVyKHQscixhLGksbyksdGhpcy50eXBlPTV9XyRBSSh0LHI9dGhpcyl7aWYoKHQ9JDModGhpcyx0LHIsMCk/P0RhKT09PXhhKXJldHVybjtsZXQgYT10aGlzLl8kQUgsaT10PT09RGEmJmEhPT1EYXx8dC5jYXB0dXJlIT09YS5jYXB0dXJlfHx0Lm9uY2UhPT1hLm9uY2V8fHQucGFzc2l2ZSE9PWEucGFzc2l2ZSxvPXQhPT1EYSYmKGE9PT1EYXx8aSk7aSYmdGhpcy5lbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIodGhpcy5uYW1lLHRoaXMsYSksbyYmdGhpcy5lbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIodGhpcy5uYW1lLHRoaXMsdCksdGhpcy5fJEFIPXR9aGFuZGxlRXZlbnQodCl7dHlwZW9mIHRoaXMuXyRBSD09ImZ1bmN0aW9uIj90aGlzLl8kQUguY2FsbCh0aGlzLm9wdGlvbnM/Lmhvc3Q/P3RoaXMuZWxlbWVudCx0KTp0aGlzLl8kQUguaGFuZGxlRXZlbnQodCl9fSxnWD1jbGFzc3tjb25zdHJ1Y3Rvcih0LHIsYSl7dGhpcy5lbGVtZW50PXQsdGhpcy50eXBlPTYsdGhpcy5fJEFOPXZvaWQgMCx0aGlzLl8kQU09cix0aGlzLm9wdGlvbnM9YX1nZXQgXyRBVSgpe3JldHVybiB0aGlzLl8kQU0uXyRBVX1fJEFJKHQpeyQzKHRoaXMsdCl9fSxxY2U9e006SWNlLFA6TWwsQTpOY2UsQzoxLEw6VjR0LFI6ZlgsRDpONHQsVjokMyxJOmFoLEg6UDMsTjpoWCxVOm1YLEI6cFgsRjpnWH0sSkhyPVBjZS5saXRIdG1sUG9seWZpbGxTdXBwb3J0O0pIcj8uKHpnLGFoKSwoUGNlLmxpdEh0bWxWZXJzaW9ucz8/PVtdKS5wdXNoKCIzLjMuMiIpO0NnPShlLHQscik9PntsZXQgYT1yPy5yZW5kZXJCZWZvcmU/P3QsaT1hLl8kbGl0UGFydCQ7aWYoaT09PXZvaWQgMCl7bGV0IG89cj8ucmVuZGVyQmVmb3JlPz9udWxsO2EuXyRsaXRQYXJ0JD1pPW5ldyBhaCh0Lmluc2VydEJlZm9yZShNZygpLG8pLG8sdm9pZCAwLHI/P3t9KX1yZXR1cm4gaS5fJEFJKGUpLGl9fSk7dmFyIGpjZSxrbCxlcXIsdHFyLFU0dD1sKCgpPT57d2coKTt3ZygpO0puKCk7Sm4oKTtqY2U9Z2xvYmFsVGhpcyxrbD1jbGFzcyBleHRlbmRzIFFze2NvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKSx0aGlzLnJlbmRlck9wdGlvbnM9e2hvc3Q6dGhpc30sdGhpcy5fJERvPXZvaWQgMH1jcmVhdGVSZW5kZXJSb290KCl7bGV0IHQ9c3VwZXIuY3JlYXRlUmVuZGVyUm9vdCgpO3JldHVybiB0aGlzLnJlbmRlck9wdGlvbnMucmVuZGVyQmVmb3JlPz89dC5maXJzdENoaWxkLHR9dXBkYXRlKHQpe2xldCByPXRoaXMucmVuZGVyKCk7dGhpcy5oYXNVcGRhdGVkfHwodGhpcy5yZW5kZXJPcHRpb25zLmlzQ29ubmVjdGVkPXRoaXMuaXNDb25uZWN0ZWQpLHN1cGVyLnVwZGF0ZSh0KSx0aGlzLl8kRG89Q2cocix0aGlzLnJlbmRlclJvb3QsdGhpcy5yZW5kZXJPcHRpb25zKX1jb25uZWN0ZWRDYWxsYmFjaygpe3N1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCksdGhpcy5fJERvPy5zZXRDb25uZWN0ZWQoITApfWRpc2Nvbm5lY3RlZENhbGxiYWNrKCl7c3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKSx0aGlzLl8kRG8/LnNldENvbm5lY3RlZCghMSl9cmVuZGVyKCl7cmV0dXJuIHhhfX07a2wuXyRsaXRFbGVtZW50JD0hMCxrbC5maW5hbGl6ZWQ9ITAsamNlLmxpdEVsZW1lbnRIeWRyYXRlU3VwcG9ydD8uKHtMaXRFbGVtZW50OmtsfSk7ZXFyPWpjZS5saXRFbGVtZW50UG9seWZpbGxTdXBwb3J0O2Vxcj8uKHtMaXRFbGVtZW50OmtsfSk7dHFyPXtfJEFLOihlLHQscik9PntlLl8kQUsodCxyKX0sXyRBTDplPT5lLl8kQUx9OyhqY2UubGl0RWxlbWVudFZlcnNpb25zPz89W10pLnB1c2goIjQuMi4yIil9KTt2YXIgcnFyLFc0dD1sKCgpPT57cnFyPSExfSk7dmFyIG1uPWwoKCk9Pnt3ZygpO0puKCk7VTR0KCk7VzR0KCl9KTt2YXIgYlg9WGUoeFg9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KHhYLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSx4WC51bmk9dm9pZCAwO3ZhciBhcXI9KGU9InVuaSIpPT5gJHtlfV8keyJ4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHgiLnJlcGxhY2UoL1t4eV0vZyx0PT57bGV0IHI9TWF0aC5yYW5kb20oKSoxNnwwO3JldHVybih0PT09IngiP3I6ciYzfDgpLnRvU3RyaW5nKDE2KX0pfWA7eFgudW5pPWFxcn0pO3ZhciB2WCxzMCx5WD1sKCgpPT57dlg9Y2xhc3N7Y2xhaW0oKXtpZih0aGlzLmNsYWltZWQpdGhyb3cgbmV3IEVycm9yKCJEZWZlcnJlZCBhbHJlYWR5IGNsYWltZWQiKTt0aGlzLmNsYWltZWQ9ITB9Z2V0IGR1cmF0aW9uKCl7cmV0dXJuIHRoaXMuc3RvcHBlZEF0P3RoaXMuc3RvcHBlZEF0LXRoaXMuc3RhcnRlZEF0OkRhdGUubm93KCktdGhpcy5zdGFydGVkQXR9Y29uc3RydWN0b3IoKXt0aGlzLmNsYWltZWQ9ITEsdGhpcy5wcm9taXNlPW5ldyBQcm9taXNlKCh0LHIpPT57dGhpcy5yZXNvbHZlPWE9Pnt0aGlzLnN0YXR1cz0iZnVsZmlsbGVkIix0aGlzLnN0b3BwZWRBdD1EYXRlLm5vdygpLHQoYSl9LHRoaXMucmVqZWN0PWE9Pnt0aGlzLnN0YXR1cz0icmVqZWN0ZWQiLHRoaXMuc3RvcHBlZEF0PURhdGUubm93KCkscihhKX0sdGhpcy5zdGFydGVkQXQ9RGF0ZS5ub3coKSx0aGlzLnN0YXR1cz0icGVuZGluZyJ9KX19LHMwPSgpPT5uZXcgdlh9KTt2YXIgd1gsaXFyLEc0dD1sKCgpPT57eVgoKTt3WD1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuYWNjdW11bGF0ZWRQcm9taXNlcz1bXSx0aGlzLmRlZmVycmVkPXMwKCksdGhpcy5wcm9taXNlPXRoaXMuZGVmZXJyZWQucHJvbWlzZSxzZXRUaW1lb3V0KGFzeW5jKCk9Pntmb3IoO3RoaXMuYWNjdW11bGF0ZWRQcm9taXNlcy5sZW5ndGg+MDspYXdhaXQgdGhpcy5hY2N1bXVsYXRlZFByb21pc2VzLnNoaWZ0KCk7dGhpcy5kZWZlcnJlZC5yZXNvbHZlKCl9LDApfXN1YkRlZmVyKCl7bGV0IHQ9czAoKTtyZXR1cm4gdGhpcy5hZGRQcm9taXNlKHQucHJvbWlzZSksdH1hZGRQcm9taXNlKHQpe3RoaXMuYWNjdW11bGF0ZWRQcm9taXNlcy5wdXNoKHQpfX0saXFyPSgpPT5uZXcgd1h9KTt2YXIgcHQ9e307cWUocHQse0N1bXVsYXRpdmVEZWZlcnJlZDooKT0+d1gsRGVmZXJyZWQ6KCk9PnZYLGN1bXVsYXRpdmVEZWZlcjooKT0+aXFyLGRlZmVyOigpPT5zMCxmcm9tQ2FsbGJhY2s6KCk9PmRxcixnZXRGaXJzdFRydWVPckZhbHNlOigpPT5jcXIsbWFwOigpPT5zcXIscmVqZWN0ZWRQcm9taXNlOigpPT5ucXIscmVzb2x2ZWRQcm9taXNlOigpPT5vcXIsdGltZW91dEFuZENvbnRpbnVlOigpPT5scXIsdGltZW91dFdyYXA6KCk9Plk0dH0pO3ZhciBvcXIsbnFyLHNxcixZNHQsbHFyLGNxcixkcXIsQ289bCgoKT0+e3lYKCk7RzR0KCk7eVgoKTtvcXI9ZT0+UHJvbWlzZS5yZXNvbHZlKGUpLG5xcj1lPT5Qcm9taXNlLnJlamVjdChlKSxzcXI9YXN5bmMoZSx0KT0+e2xldCByPVtdLGE9W107Zm9yKGxldCBpIG9mIGUpe2xldCBvPXQoaSk7ci5wdXNoKG8pLG8udGhlbihuPT57YS5wdXNoKG4pfSl9cmV0dXJuIGF3YWl0IFByb21pc2UuYWxsKHIpLGF9LFk0dD1hc3luYyhlLHQscj0hMCk9Pm5ldyBQcm9taXNlKChhLGkpPT57c2V0VGltZW91dCgoKT0+e3I/aShuZXcgRXJyb3IoInRpbWVvdXQiKSk6YShudWxsKX0sdCksZS50aGVuKGEsaSl9KSxscXI9YXN5bmMoZSx0PTZlNCk9Plk0dChlLHQsITEpLGNxcj1hc3luYyBlPT57bGV0IHQ9czAoKTtmb3IobGV0IHIgb2YgZSlyLnRoZW4oYT0+e2E9PT0hMCYmdC5yZXNvbHZlKCEwKX0pO3JldHVybiBQcm9taXNlLmFsbChlKS50aGVuKCgpPT57dC5yZXNvbHZlKCExKX0pLHQucHJvbWlzZX0sZHFyPWU9Pm5ldyBQcm9taXNlKCh0LHIpPT57ZSgoYSxpKT0+e2E/cihhKTp0KGkpfSl9KX0pO3ZhciBNWD1sKCgpPT57Q28oKX0pO2Z1bmN0aW9uIGFyKGUsdCl7aWYodHlwZW9mIHQhPSJmdW5jdGlvbiImJnQhPT1udWxsKXRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIitTdHJpbmcodCkrIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7VmNlKGUsdCk7ZnVuY3Rpb24gcigpe3RoaXMuY29uc3RydWN0b3I9ZX1lLnByb3RvdHlwZT10PT09bnVsbD9PYmplY3QuY3JlYXRlKHQpOihyLnByb3RvdHlwZT10LnByb3RvdHlwZSxuZXcgcil9ZnVuY3Rpb24gZnFyKGUsdCl7dmFyIHI9e307Zm9yKHZhciBhIGluIGUpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsYSkmJnQuaW5kZXhPZihhKTwwJiYoclthXT1lW2FdKTtpZihlIT1udWxsJiZ0eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scz09ImZ1bmN0aW9uIilmb3IodmFyIGk9MCxhPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMoZSk7aTxhLmxlbmd0aDtpKyspdC5pbmRleE9mKGFbaV0pPDAmJk9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChlLGFbaV0pJiYoclthW2ldXT1lW2FbaV1dKTtyZXR1cm4gcn1mdW5jdGlvbiBwcXIoZSx0LHIsYSl7dmFyIGk9YXJndW1lbnRzLmxlbmd0aCxvPWk8Mz90OmE9PT1udWxsP2E9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0LHIpOmEsbjtpZih0eXBlb2YgUmVmbGVjdD09Im9iamVjdCImJnR5cGVvZiBSZWZsZWN0LmRlY29yYXRlPT0iZnVuY3Rpb24iKW89UmVmbGVjdC5kZWNvcmF0ZShlLHQscixhKTtlbHNlIGZvcih2YXIgcz1lLmxlbmd0aC0xO3M+PTA7cy0tKShuPWVbc10pJiYobz0oaTwzP24obyk6aT4zP24odCxyLG8pOm4odCxyKSl8fG8pO3JldHVybiBpPjMmJm8mJk9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LHIsbyksb31mdW5jdGlvbiBocXIoZSx0KXtyZXR1cm4gZnVuY3Rpb24ocixhKXt0KHIsYSxlKX19ZnVuY3Rpb24gbXFyKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH1mdW5jdGlvbiBncXIoZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9ZnVuY3Rpb24geHFyKGUpe3JldHVybiB0eXBlb2YgZT09InN5bWJvbCI/ZToiIi5jb25jYXQoZSl9ZnVuY3Rpb24gYnFyKGUsdCxyKXtyZXR1cm4gdHlwZW9mIHQ9PSJzeW1ib2wiJiYodD10LmRlc2NyaXB0aW9uPyJbIi5jb25jYXQodC5kZXNjcmlwdGlvbiwiXSIpOiIiKSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwibmFtZSIse2NvbmZpZ3VyYWJsZTohMCx2YWx1ZTpyPyIiLmNvbmNhdChyLCIgIix0KTp0fSl9ZnVuY3Rpb24gdnFyKGUsdCl7aWYodHlwZW9mIFJlZmxlY3Q9PSJvYmplY3QiJiZ0eXBlb2YgUmVmbGVjdC5tZXRhZGF0YT09ImZ1bmN0aW9uIilyZXR1cm4gUmVmbGVjdC5tZXRhZGF0YShlLHQpfWZ1bmN0aW9uIFljZShlLHQscixhKXtmdW5jdGlvbiBpKG8pe3JldHVybiBvIGluc3RhbmNlb2Ygcj9vOm5ldyByKGZ1bmN0aW9uKG4pe24obyl9KX1yZXR1cm4gbmV3KHJ8fChyPVByb21pc2UpKShmdW5jdGlvbihvLG4pe2Z1bmN0aW9uIHMoZil7dHJ5e2QoYS5uZXh0KGYpKX1jYXRjaCh1KXtuKHUpfX1mdW5jdGlvbiBjKGYpe3RyeXtkKGEudGhyb3coZikpfWNhdGNoKHUpe24odSl9fWZ1bmN0aW9uIGQoZil7Zi5kb25lP28oZi52YWx1ZSk6aShmLnZhbHVlKS50aGVuKHMsYyl9ZCgoYT1hLmFwcGx5KGUsdHx8W10pKS5uZXh0KCkpfSl9ZnVuY3Rpb24gX2coZSx0KXt2YXIgcj17bGFiZWw6MCxzZW50OmZ1bmN0aW9uKCl7aWYob1swXSYxKXRocm93IG9bMV07cmV0dXJuIG9bMV19LHRyeXM6W10sb3BzOltdfSxhLGksbyxuPU9iamVjdC5jcmVhdGUoKHR5cGVvZiBJdGVyYXRvcj09ImZ1bmN0aW9uIj9JdGVyYXRvcjpPYmplY3QpLnByb3RvdHlwZSk7cmV0dXJuIG4ubmV4dD1zKDApLG4udGhyb3c9cygxKSxuLnJldHVybj1zKDIpLHR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJihuW1N5bWJvbC5pdGVyYXRvcl09ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30pLG47ZnVuY3Rpb24gcyhkKXtyZXR1cm4gZnVuY3Rpb24oZil7cmV0dXJuIGMoW2QsZl0pfX1mdW5jdGlvbiBjKGQpe2lmKGEpdGhyb3cgbmV3IFR5cGVFcnJvcigiR2VuZXJhdG9yIGlzIGFscmVhZHkgZXhlY3V0aW5nLiIpO2Zvcig7biYmKG49MCxkWzBdJiYocj0wKSkscjspdHJ5e2lmKGE9MSxpJiYobz1kWzBdJjI/aS5yZXR1cm46ZFswXT9pLnRocm93fHwoKG89aS5yZXR1cm4pJiZvLmNhbGwoaSksMCk6aS5uZXh0KSYmIShvPW8uY2FsbChpLGRbMV0pKS5kb25lKXJldHVybiBvO3N3aXRjaChpPTAsbyYmKGQ9W2RbMF0mMixvLnZhbHVlXSksZFswXSl7Y2FzZSAwOmNhc2UgMTpvPWQ7YnJlYWs7Y2FzZSA0OnJldHVybiByLmxhYmVsKysse3ZhbHVlOmRbMV0sZG9uZTohMX07Y2FzZSA1OnIubGFiZWwrKyxpPWRbMV0sZD1bMF07Y29udGludWU7Y2FzZSA3OmQ9ci5vcHMucG9wKCksci50cnlzLnBvcCgpO2NvbnRpbnVlO2RlZmF1bHQ6aWYobz1yLnRyeXMsIShvPW8ubGVuZ3RoPjAmJm9bby5sZW5ndGgtMV0pJiYoZFswXT09PTZ8fGRbMF09PT0yKSl7cj0wO2NvbnRpbnVlfWlmKGRbMF09PT0zJiYoIW98fGRbMV0+b1swXSYmZFsxXTxvWzNdKSl7ci5sYWJlbD1kWzFdO2JyZWFrfWlmKGRbMF09PT02JiZyLmxhYmVsPG9bMV0pe3IubGFiZWw9b1sxXSxvPWQ7YnJlYWt9aWYobyYmci5sYWJlbDxvWzJdKXtyLmxhYmVsPW9bMl0sci5vcHMucHVzaChkKTticmVha31vWzJdJiZyLm9wcy5wb3AoKSxyLnRyeXMucG9wKCk7Y29udGludWV9ZD10LmNhbGwoZSxyKX1jYXRjaChmKXtkPVs2LGZdLGk9MH1maW5hbGx5e2E9bz0wfWlmKGRbMF0mNSl0aHJvdyBkWzFdO3JldHVybnt2YWx1ZTpkWzBdP2RbMV06dm9pZCAwLGRvbmU6ITB9fX1mdW5jdGlvbiB5cXIoZSx0KXtmb3IodmFyIHIgaW4gZSlyIT09ImRlZmF1bHQiJiYhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQscikmJldjZSh0LGUscil9ZnVuY3Rpb24gdzEoZSl7dmFyIHQ9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLml0ZXJhdG9yLHI9dCYmZVt0XSxhPTA7aWYocilyZXR1cm4gci5jYWxsKGUpO2lmKGUmJnR5cGVvZiBlLmxlbmd0aD09Im51bWJlciIpcmV0dXJue25leHQ6ZnVuY3Rpb24oKXtyZXR1cm4gZSYmYT49ZS5sZW5ndGgmJihlPXZvaWQgMCkse3ZhbHVlOmUmJmVbYSsrXSxkb25lOiFlfX19O3Rocm93IG5ldyBUeXBlRXJyb3IodD8iT2JqZWN0IGlzIG5vdCBpdGVyYWJsZS4iOiJTeW1ib2wuaXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIil9ZnVuY3Rpb24gT2EoZSx0KXt2YXIgcj10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZlW1N5bWJvbC5pdGVyYXRvcl07aWYoIXIpcmV0dXJuIGU7dmFyIGE9ci5jYWxsKGUpLGksbz1bXSxuO3RyeXtmb3IoOyh0PT09dm9pZCAwfHx0LS0gPjApJiYhKGk9YS5uZXh0KCkpLmRvbmU7KW8ucHVzaChpLnZhbHVlKX1jYXRjaChzKXtuPXtlcnJvcjpzfX1maW5hbGx5e3RyeXtpJiYhaS5kb25lJiYocj1hLnJldHVybikmJnIuY2FsbChhKX1maW5hbGx5e2lmKG4pdGhyb3cgbi5lcnJvcn19cmV0dXJuIG99ZnVuY3Rpb24gd3FyKCl7Zm9yKHZhciBlPVtdLHQ9MDt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKWU9ZS5jb25jYXQoT2EoYXJndW1lbnRzW3RdKSk7cmV0dXJuIGV9ZnVuY3Rpb24gTXFyKCl7Zm9yKHZhciBlPTAsdD0wLHI9YXJndW1lbnRzLmxlbmd0aDt0PHI7dCsrKWUrPWFyZ3VtZW50c1t0XS5sZW5ndGg7Zm9yKHZhciBhPUFycmF5KGUpLGk9MCx0PTA7dDxyO3QrKylmb3IodmFyIG89YXJndW1lbnRzW3RdLG49MCxzPW8ubGVuZ3RoO248cztuKyssaSsrKWFbaV09b1tuXTtyZXR1cm4gYX1mdW5jdGlvbiB3aShlLHQscil7aWYocnx8YXJndW1lbnRzLmxlbmd0aD09PTIpZm9yKHZhciBhPTAsaT10Lmxlbmd0aCxvO2E8aTthKyspKG98fCEoYSBpbiB0KSkmJihvfHwobz1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbCh0LDAsYSkpLG9bYV09dFthXSk7cmV0dXJuIGUuY29uY2F0KG98fEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKHQpKX1mdW5jdGlvbiBTbChlKXtyZXR1cm4gdGhpcyBpbnN0YW5jZW9mIFNsPyh0aGlzLnY9ZSx0aGlzKTpuZXcgU2woZSl9ZnVuY3Rpb24gWmNlKGUsdCxyKXtpZighU3ltYm9sLmFzeW5jSXRlcmF0b3IpdGhyb3cgbmV3IFR5cGVFcnJvcigiU3ltYm9sLmFzeW5jSXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7dmFyIGE9ci5hcHBseShlLHR8fFtdKSxpLG89W107cmV0dXJuIGk9T2JqZWN0LmNyZWF0ZSgodHlwZW9mIEFzeW5jSXRlcmF0b3I9PSJmdW5jdGlvbiI/QXN5bmNJdGVyYXRvcjpPYmplY3QpLnByb3RvdHlwZSkscygibmV4dCIpLHMoInRocm93IikscygicmV0dXJuIixuKSxpW1N5bWJvbC5hc3luY0l0ZXJhdG9yXT1mdW5jdGlvbigpe3JldHVybiB0aGlzfSxpO2Z1bmN0aW9uIG4oaCl7cmV0dXJuIGZ1bmN0aW9uKGIpe3JldHVybiBQcm9taXNlLnJlc29sdmUoYikudGhlbihoLHUpfX1mdW5jdGlvbiBzKGgsYil7YVtoXSYmKGlbaF09ZnVuY3Rpb24oeCl7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKGcsdil7by5wdXNoKFtoLHgsZyx2XSk+MXx8YyhoLHgpfSl9LGImJihpW2hdPWIoaVtoXSkpKX1mdW5jdGlvbiBjKGgsYil7dHJ5e2QoYVtoXShiKSl9Y2F0Y2goeCl7cChvWzBdWzNdLHgpfX1mdW5jdGlvbiBkKGgpe2gudmFsdWUgaW5zdGFuY2VvZiBTbD9Qcm9taXNlLnJlc29sdmUoaC52YWx1ZS52KS50aGVuKGYsdSk6cChvWzBdWzJdLGgpfWZ1bmN0aW9uIGYoaCl7YygibmV4dCIsaCl9ZnVuY3Rpb24gdShoKXtjKCJ0aHJvdyIsaCl9ZnVuY3Rpb24gcChoLGIpe2goYiksby5zaGlmdCgpLG8ubGVuZ3RoJiZjKG9bMF1bMF0sb1swXVsxXSl9fWZ1bmN0aW9uIGtxcihlKXt2YXIgdCxyO3JldHVybiB0PXt9LGEoIm5leHQiKSxhKCJ0aHJvdyIsZnVuY3Rpb24oaSl7dGhyb3cgaX0pLGEoInJldHVybiIpLHRbU3ltYm9sLml0ZXJhdG9yXT1mdW5jdGlvbigpe3JldHVybiB0aGlzfSx0O2Z1bmN0aW9uIGEoaSxvKXt0W2ldPWVbaV0/ZnVuY3Rpb24obil7cmV0dXJuKHI9IXIpP3t2YWx1ZTpTbChlW2ldKG4pKSxkb25lOiExfTpvP28obik6bn06b319ZnVuY3Rpb24gWGNlKGUpe2lmKCFTeW1ib2wuYXN5bmNJdGVyYXRvcil0aHJvdyBuZXcgVHlwZUVycm9yKCJTeW1ib2wuYXN5bmNJdGVyYXRvciBpcyBub3QgZGVmaW5lZC4iKTt2YXIgdD1lW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSxyO3JldHVybiB0P3QuY2FsbChlKTooZT10eXBlb2YgdzE9PSJmdW5jdGlvbiI/dzEoZSk6ZVtTeW1ib2wuaXRlcmF0b3JdKCkscj17fSxhKCJuZXh0IiksYSgidGhyb3ciKSxhKCJyZXR1cm4iKSxyW1N5bWJvbC5hc3luY0l0ZXJhdG9yXT1mdW5jdGlvbigpe3JldHVybiB0aGlzfSxyKTtmdW5jdGlvbiBhKG8pe3Jbb109ZVtvXSYmZnVuY3Rpb24obil7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHMsYyl7bj1lW29dKG4pLGkocyxjLG4uZG9uZSxuLnZhbHVlKX0pfX1mdW5jdGlvbiBpKG8sbixzLGMpe1Byb21pc2UucmVzb2x2ZShjKS50aGVuKGZ1bmN0aW9uKGQpe28oe3ZhbHVlOmQsZG9uZTpzfSl9LG4pfX1mdW5jdGlvbiBTcXIoZSx0KXtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5P09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJyYXciLHt2YWx1ZTp0fSk6ZS5yYXc9dCxlfWZ1bmN0aW9uIENxcihlKXtpZihlJiZlLl9fZXNNb2R1bGUpcmV0dXJuIGU7dmFyIHQ9e307aWYoZSE9bnVsbClmb3IodmFyIHI9R2NlKGUpLGE9MDthPHIubGVuZ3RoO2ErKylyW2FdIT09ImRlZmF1bHQiJiZXY2UodCxlLHJbYV0pO3JldHVybiB6cXIodCxlKSx0fWZ1bmN0aW9uIF9xcihlKXtyZXR1cm4gZSYmZS5fX2VzTW9kdWxlP2U6e2RlZmF1bHQ6ZX19ZnVuY3Rpb24gVHFyKGUsdCxyLGEpe2lmKHI9PT0iYSImJiFhKXRocm93IG5ldyBUeXBlRXJyb3IoIlByaXZhdGUgYWNjZXNzb3Igd2FzIGRlZmluZWQgd2l0aG91dCBhIGdldHRlciIpO2lmKHR5cGVvZiB0PT0iZnVuY3Rpb24iP2UhPT10fHwhYTohdC5oYXMoZSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IHJlYWQgcHJpdmF0ZSBtZW1iZXIgZnJvbSBhbiBvYmplY3Qgd2hvc2UgY2xhc3MgZGlkIG5vdCBkZWNsYXJlIGl0Iik7cmV0dXJuIHI9PT0ibSI/YTpyPT09ImEiP2EuY2FsbChlKTphP2EudmFsdWU6dC5nZXQoZSl9ZnVuY3Rpb24gTHFyKGUsdCxyLGEsaSl7aWYoYT09PSJtIil0aHJvdyBuZXcgVHlwZUVycm9yKCJQcml2YXRlIG1ldGhvZCBpcyBub3Qgd3JpdGFibGUiKTtpZihhPT09ImEiJiYhaSl0aHJvdyBuZXcgVHlwZUVycm9yKCJQcml2YXRlIGFjY2Vzc29yIHdhcyBkZWZpbmVkIHdpdGhvdXQgYSBzZXR0ZXIiKTtpZih0eXBlb2YgdD09ImZ1bmN0aW9uIj9lIT09dHx8IWk6IXQuaGFzKGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCB3cml0ZSBwcml2YXRlIG1lbWJlciB0byBhbiBvYmplY3Qgd2hvc2UgY2xhc3MgZGlkIG5vdCBkZWNsYXJlIGl0Iik7cmV0dXJuIGE9PT0iYSI/aS5jYWxsKGUscik6aT9pLnZhbHVlPXI6dC5zZXQoZSxyKSxyfWZ1bmN0aW9uIERxcihlLHQpe2lmKHQ9PT1udWxsfHx0eXBlb2YgdCE9Im9iamVjdCImJnR5cGVvZiB0IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCB1c2UgJ2luJyBvcGVyYXRvciBvbiBub24tb2JqZWN0Iik7cmV0dXJuIHR5cGVvZiBlPT0iZnVuY3Rpb24iP3Q9PT1lOmUuaGFzKHQpfWZ1bmN0aW9uIEFxcihlLHQscil7aWYodCE9bnVsbCl7aWYodHlwZW9mIHQhPSJvYmplY3QiJiZ0eXBlb2YgdCE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQuIik7dmFyIGEsaTtpZihyKXtpZighU3ltYm9sLmFzeW5jRGlzcG9zZSl0aHJvdyBuZXcgVHlwZUVycm9yKCJTeW1ib2wuYXN5bmNEaXNwb3NlIGlzIG5vdCBkZWZpbmVkLiIpO2E9dFtTeW1ib2wuYXN5bmNEaXNwb3NlXX1pZihhPT09dm9pZCAwKXtpZighU3ltYm9sLmRpc3Bvc2UpdGhyb3cgbmV3IFR5cGVFcnJvcigiU3ltYm9sLmRpc3Bvc2UgaXMgbm90IGRlZmluZWQuIik7YT10W1N5bWJvbC5kaXNwb3NlXSxyJiYoaT1hKX1pZih0eXBlb2YgYSE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3Qgbm90IGRpc3Bvc2FibGUuIik7aSYmKGE9ZnVuY3Rpb24oKXt0cnl7aS5jYWxsKHRoaXMpfWNhdGNoKG8pe3JldHVybiBQcm9taXNlLnJlamVjdChvKX19KSxlLnN0YWNrLnB1c2goe3ZhbHVlOnQsZGlzcG9zZTphLGFzeW5jOnJ9KX1lbHNlIHImJmUuc3RhY2sucHVzaCh7YXN5bmM6ITB9KTtyZXR1cm4gdH1mdW5jdGlvbiAkcXIoZSl7ZnVuY3Rpb24gdChvKXtlLmVycm9yPWUuaGFzRXJyb3I/bmV3IEVxcihvLGUuZXJyb3IsIkFuIGVycm9yIHdhcyBzdXBwcmVzc2VkIGR1cmluZyBkaXNwb3NhbC4iKTpvLGUuaGFzRXJyb3I9ITB9dmFyIHIsYT0wO2Z1bmN0aW9uIGkoKXtmb3IoO3I9ZS5zdGFjay5wb3AoKTspdHJ5e2lmKCFyLmFzeW5jJiZhPT09MSlyZXR1cm4gYT0wLGUuc3RhY2sucHVzaChyKSxQcm9taXNlLnJlc29sdmUoKS50aGVuKGkpO2lmKHIuZGlzcG9zZSl7dmFyIG89ci5kaXNwb3NlLmNhbGwoci52YWx1ZSk7aWYoci5hc3luYylyZXR1cm4gYXw9MixQcm9taXNlLnJlc29sdmUobykudGhlbihpLGZ1bmN0aW9uKG4pe3JldHVybiB0KG4pLGkoKX0pfWVsc2UgYXw9MX1jYXRjaChuKXt0KG4pfWlmKGE9PT0xKXJldHVybiBlLmhhc0Vycm9yP1Byb21pc2UucmVqZWN0KGUuZXJyb3IpOlByb21pc2UucmVzb2x2ZSgpO2lmKGUuaGFzRXJyb3IpdGhyb3cgZS5lcnJvcn1yZXR1cm4gaSgpfWZ1bmN0aW9uIFBxcihlLHQpe3JldHVybiB0eXBlb2YgZT09InN0cmluZyImJi9eXC5cLj9cLy8udGVzdChlKT9lLnJlcGxhY2UoL1wuKHRzeCkkfCgoPzpcLmQpPykoKD86XC5bXi4vXSs/KT8pXC4oW2NtXT8pdHMkL2ksZnVuY3Rpb24ocixhLGksbyxuKXtyZXR1cm4gYT90PyIuanN4IjoiLmpzIjppJiYoIW98fCFuKT9yOmkrbysiLiIrbi50b0xvd2VyQ2FzZSgpKyJqcyJ9KTplfXZhciBWY2UsVWNlLFdjZSx6cXIsR2NlLEVxcixfeWEsVnI9bCgoKT0+e1ZjZT1mdW5jdGlvbihlLHQpe3JldHVybiBWY2U9T2JqZWN0LnNldFByb3RvdHlwZU9mfHx7X19wcm90b19fOltdfWluc3RhbmNlb2YgQXJyYXkmJmZ1bmN0aW9uKHIsYSl7ci5fX3Byb3RvX189YX18fGZ1bmN0aW9uKHIsYSl7Zm9yKHZhciBpIGluIGEpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGEsaSkmJihyW2ldPWFbaV0pfSxWY2UoZSx0KX07VWNlPWZ1bmN0aW9uKCl7cmV0dXJuIFVjZT1PYmplY3QuYXNzaWdufHxmdW5jdGlvbih0KXtmb3IodmFyIHIsYT0xLGk9YXJndW1lbnRzLmxlbmd0aDthPGk7YSsrKXtyPWFyZ3VtZW50c1thXTtmb3IodmFyIG8gaW4gcilPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocixvKSYmKHRbb109cltvXSl9cmV0dXJuIHR9LFVjZS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9O1djZT1PYmplY3QuY3JlYXRlPyhmdW5jdGlvbihlLHQscixhKXthPT09dm9pZCAwJiYoYT1yKTt2YXIgaT1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQscik7KCFpfHwoImdldCJpbiBpPyF0Ll9fZXNNb2R1bGU6aS53cml0YWJsZXx8aS5jb25maWd1cmFibGUpKSYmKGk9e2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRbcl19fSksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsYSxpKX0pOihmdW5jdGlvbihlLHQscixhKXthPT09dm9pZCAwJiYoYT1yKSxlW2FdPXRbcl19KTt6cXI9T2JqZWN0LmNyZWF0ZT8oZnVuY3Rpb24oZSx0KXtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiZGVmYXVsdCIse2VudW1lcmFibGU6ITAsdmFsdWU6dH0pfSk6ZnVuY3Rpb24oZSx0KXtlLmRlZmF1bHQ9dH0sR2NlPWZ1bmN0aW9uKGUpe3JldHVybiBHY2U9T2JqZWN0LmdldE93blByb3BlcnR5TmFtZXN8fGZ1bmN0aW9uKHQpe3ZhciByPVtdO2Zvcih2YXIgYSBpbiB0KU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0LGEpJiYocltyLmxlbmd0aF09YSk7cmV0dXJuIHJ9LEdjZShlKX07RXFyPXR5cGVvZiBTdXBwcmVzc2VkRXJyb3I9PSJmdW5jdGlvbiI/U3VwcHJlc3NlZEVycm9yOmZ1bmN0aW9uKGUsdCxyKXt2YXIgYT1uZXcgRXJyb3Iocik7cmV0dXJuIGEubmFtZT0iU3VwcHJlc3NlZEVycm9yIixhLmVycm9yPWUsYS5zdXBwcmVzc2VkPXQsYX07X3lhPXtfX2V4dGVuZHM6YXIsX19hc3NpZ246VWNlLF9fcmVzdDpmcXIsX19kZWNvcmF0ZTpwcXIsX19wYXJhbTpocXIsX19lc0RlY29yYXRlOm1xcixfX3J1bkluaXRpYWxpemVyczpncXIsX19wcm9wS2V5OnhxcixfX3NldEZ1bmN0aW9uTmFtZTpicXIsX19tZXRhZGF0YTp2cXIsX19hd2FpdGVyOlljZSxfX2dlbmVyYXRvcjpfZyxfX2NyZWF0ZUJpbmRpbmc6V2NlLF9fZXhwb3J0U3Rhcjp5cXIsX192YWx1ZXM6dzEsX19yZWFkOk9hLF9fc3ByZWFkOndxcixfX3NwcmVhZEFycmF5czpNcXIsX19zcHJlYWRBcnJheTp3aSxfX2F3YWl0OlNsLF9fYXN5bmNHZW5lcmF0b3I6WmNlLF9fYXN5bmNEZWxlZ2F0b3I6a3FyLF9fYXN5bmNWYWx1ZXM6WGNlLF9fbWFrZVRlbXBsYXRlT2JqZWN0OlNxcixfX2ltcG9ydFN0YXI6Q3FyLF9faW1wb3J0RGVmYXVsdDpfcXIsX19jbGFzc1ByaXZhdGVGaWVsZEdldDpUcXIsX19jbGFzc1ByaXZhdGVGaWVsZFNldDpMcXIsX19jbGFzc1ByaXZhdGVGaWVsZEluOkRxcixfX2FkZERpc3Bvc2FibGVSZXNvdXJjZTpBcXIsX19kaXNwb3NlUmVzb3VyY2VzOiRxcixfX3Jld3JpdGVSZWxhdGl2ZUltcG9ydEV4dGVuc2lvbjpQcXJ9fSk7ZnVuY3Rpb24gUHQoZSl7cmV0dXJuIHR5cGVvZiBlPT0iZnVuY3Rpb24ifXZhciBIaT1sKCgpPT57fSk7ZnVuY3Rpb24gX28oZSl7dmFyIHQ9ZnVuY3Rpb24oYSl7RXJyb3IuY2FsbChhKSxhLnN0YWNrPW5ldyBFcnJvcigpLnN0YWNrfSxyPWUodCk7cmV0dXJuIHIucHJvdG90eXBlPU9iamVjdC5jcmVhdGUoRXJyb3IucHJvdG90eXBlKSxyLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1yLHJ9dmFyIGwwPWwoKCk9Pnt9KTt2YXIgVGcsUWNlPWwoKCk9PntsMCgpO1RnPV9vKGZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbihyKXtlKHRoaXMpLHRoaXMubWVzc2FnZT1yP3IubGVuZ3RoK2AgZXJyb3JzIG9jY3VycmVkIGR1cmluZyB1bnN1YnNjcmlwdGlvbjoKYCtyLm1hcChmdW5jdGlvbihhLGkpe3JldHVybiBpKzErIikgIithLnRvU3RyaW5nKCl9KS5qb2luKGAKICBgKToiIix0aGlzLm5hbWU9IlVuc3Vic2NyaXB0aW9uRXJyb3IiLHRoaXMuZXJyb3JzPXJ9fSl9KTtmdW5jdGlvbiBlcyhlLHQpe2lmKGUpe3ZhciByPWUuaW5kZXhPZih0KTswPD1yJiZlLnNwbGljZShyLDEpfX12YXIgaWg9bCgoKT0+e30pO2Z1bmN0aW9uIGtYKGUpe3JldHVybiBlIGluc3RhbmNlb2YgUWF8fGUmJiJjbG9zZWQiaW4gZSYmUHQoZS5yZW1vdmUpJiZQdChlLmFkZCkmJlB0KGUudW5zdWJzY3JpYmUpfWZ1bmN0aW9uIFo0dChlKXtQdChlKT9lKCk6ZS51bnN1YnNjcmliZSgpfXZhciBRYSxLY2UsS3M9bCgoKT0+e1ZyKCk7SGkoKTtRY2UoKTtpaCgpO1FhPShmdW5jdGlvbigpe2Z1bmN0aW9uIGUodCl7dGhpcy5pbml0aWFsVGVhcmRvd249dCx0aGlzLmNsb3NlZD0hMSx0aGlzLl9wYXJlbnRhZ2U9bnVsbCx0aGlzLl9maW5hbGl6ZXJzPW51bGx9cmV0dXJuIGUucHJvdG90eXBlLnVuc3Vic2NyaWJlPWZ1bmN0aW9uKCl7dmFyIHQscixhLGksbztpZighdGhpcy5jbG9zZWQpe3RoaXMuY2xvc2VkPSEwO3ZhciBuPXRoaXMuX3BhcmVudGFnZTtpZihuKWlmKHRoaXMuX3BhcmVudGFnZT1udWxsLEFycmF5LmlzQXJyYXkobikpdHJ5e2Zvcih2YXIgcz13MShuKSxjPXMubmV4dCgpOyFjLmRvbmU7Yz1zLm5leHQoKSl7dmFyIGQ9Yy52YWx1ZTtkLnJlbW92ZSh0aGlzKX19Y2F0Y2goeCl7dD17ZXJyb3I6eH19ZmluYWxseXt0cnl7YyYmIWMuZG9uZSYmKHI9cy5yZXR1cm4pJiZyLmNhbGwocyl9ZmluYWxseXtpZih0KXRocm93IHQuZXJyb3J9fWVsc2Ugbi5yZW1vdmUodGhpcyk7dmFyIGY9dGhpcy5pbml0aWFsVGVhcmRvd247aWYoUHQoZikpdHJ5e2YoKX1jYXRjaCh4KXtvPXggaW5zdGFuY2VvZiBUZz94LmVycm9yczpbeF19dmFyIHU9dGhpcy5fZmluYWxpemVycztpZih1KXt0aGlzLl9maW5hbGl6ZXJzPW51bGw7dHJ5e2Zvcih2YXIgcD13MSh1KSxoPXAubmV4dCgpOyFoLmRvbmU7aD1wLm5leHQoKSl7dmFyIGI9aC52YWx1ZTt0cnl7WjR0KGIpfWNhdGNoKHgpe289bz8/W10seCBpbnN0YW5jZW9mIFRnP289d2kod2koW10sT2EobykpLE9hKHguZXJyb3JzKSk6by5wdXNoKHgpfX19Y2F0Y2goeCl7YT17ZXJyb3I6eH19ZmluYWxseXt0cnl7aCYmIWguZG9uZSYmKGk9cC5yZXR1cm4pJiZpLmNhbGwocCl9ZmluYWxseXtpZihhKXRocm93IGEuZXJyb3J9fX1pZihvKXRocm93IG5ldyBUZyhvKX19LGUucHJvdG90eXBlLmFkZD1mdW5jdGlvbih0KXt2YXIgcjtpZih0JiZ0IT09dGhpcylpZih0aGlzLmNsb3NlZClaNHQodCk7ZWxzZXtpZih0IGluc3RhbmNlb2YgZSl7aWYodC5jbG9zZWR8fHQuX2hhc1BhcmVudCh0aGlzKSlyZXR1cm47dC5fYWRkUGFyZW50KHRoaXMpfSh0aGlzLl9maW5hbGl6ZXJzPShyPXRoaXMuX2ZpbmFsaXplcnMpIT09bnVsbCYmciE9PXZvaWQgMD9yOltdKS5wdXNoKHQpfX0sZS5wcm90b3R5cGUuX2hhc1BhcmVudD1mdW5jdGlvbih0KXt2YXIgcj10aGlzLl9wYXJlbnRhZ2U7cmV0dXJuIHI9PT10fHxBcnJheS5pc0FycmF5KHIpJiZyLmluY2x1ZGVzKHQpfSxlLnByb3RvdHlwZS5fYWRkUGFyZW50PWZ1bmN0aW9uKHQpe3ZhciByPXRoaXMuX3BhcmVudGFnZTt0aGlzLl9wYXJlbnRhZ2U9QXJyYXkuaXNBcnJheShyKT8oci5wdXNoKHQpLHIpOnI/W3IsdF06dH0sZS5wcm90b3R5cGUuX3JlbW92ZVBhcmVudD1mdW5jdGlvbih0KXt2YXIgcj10aGlzLl9wYXJlbnRhZ2U7cj09PXQ/dGhpcy5fcGFyZW50YWdlPW51bGw6QXJyYXkuaXNBcnJheShyKSYmZXMocix0KX0sZS5wcm90b3R5cGUucmVtb3ZlPWZ1bmN0aW9uKHQpe3ZhciByPXRoaXMuX2ZpbmFsaXplcnM7ciYmZXMocix0KSx0IGluc3RhbmNlb2YgZSYmdC5fcmVtb3ZlUGFyZW50KHRoaXMpfSxlLkVNUFRZPShmdW5jdGlvbigpe3ZhciB0PW5ldyBlO3JldHVybiB0LmNsb3NlZD0hMCx0fSkoKSxlfSkoKSxLY2U9UWEuRU1QVFl9KTt2YXIgZ24sb2g9bCgoKT0+e2duPXtvblVuaGFuZGxlZEVycm9yOm51bGwsb25TdG9wcGVkTm90aWZpY2F0aW9uOm51bGwsUHJvbWlzZTp2b2lkIDAsdXNlRGVwcmVjYXRlZFN5bmNocm9ub3VzRXJyb3JIYW5kbGluZzohMSx1c2VEZXByZWNhdGVkTmV4dENvbnRleHQ6ITF9fSk7dmFyIG5oLEpjZT1sKCgpPT57VnIoKTtuaD17c2V0VGltZW91dDpmdW5jdGlvbihlLHQpe2Zvcih2YXIgcj1bXSxhPTI7YTxhcmd1bWVudHMubGVuZ3RoO2ErKylyW2EtMl09YXJndW1lbnRzW2FdO3ZhciBpPW5oLmRlbGVnYXRlO3JldHVybiBpPy5zZXRUaW1lb3V0P2kuc2V0VGltZW91dC5hcHBseShpLHdpKFtlLHRdLE9hKHIpKSk6c2V0VGltZW91dC5hcHBseSh2b2lkIDAsd2koW2UsdF0sT2EocikpKX0sY2xlYXJUaW1lb3V0OmZ1bmN0aW9uKGUpe3ZhciB0PW5oLmRlbGVnYXRlO3JldHVybih0Py5jbGVhclRpbWVvdXR8fGNsZWFyVGltZW91dCkoZSl9LGRlbGVnYXRlOnZvaWQgMH19KTtmdW5jdGlvbiBTWChlKXtuaC5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dmFyIHQ9Z24ub25VbmhhbmRsZWRFcnJvcjtpZih0KXQoZSk7ZWxzZSB0aHJvdyBlfSl9dmFyIGUwZT1sKCgpPT57b2goKTtKY2UoKX0pO2Z1bmN0aW9uIHhuKCl7fXZhciBJMz1sKCgpPT57fSk7ZnVuY3Rpb24gUTR0KGUpe3JldHVybiB0MGUoIkUiLHZvaWQgMCxlKX1mdW5jdGlvbiBLNHQoZSl7cmV0dXJuIHQwZSgiTiIsZSx2b2lkIDApfWZ1bmN0aW9uIHQwZShlLHQscil7cmV0dXJue2tpbmQ6ZSx2YWx1ZTp0LGVycm9yOnJ9fXZhciBYNHQsSjR0PWwoKCk9PntYNHQ9KGZ1bmN0aW9uKCl7cmV0dXJuIHQwZSgiQyIsdm9pZCAwLHZvaWQgMCl9KSgpfSk7ZnVuY3Rpb24gc2goZSl7aWYoZ24udXNlRGVwcmVjYXRlZFN5bmNocm9ub3VzRXJyb3JIYW5kbGluZyl7dmFyIHQ9IU4zO2lmKHQmJihOMz17ZXJyb3JUaHJvd246ITEsZXJyb3I6bnVsbH0pLGUoKSx0KXt2YXIgcj1OMyxhPXIuZXJyb3JUaHJvd24saT1yLmVycm9yO2lmKE4zPW51bGwsYSl0aHJvdyBpfX1lbHNlIGUoKX1mdW5jdGlvbiBlM3QoZSl7Z24udXNlRGVwcmVjYXRlZFN5bmNocm9ub3VzRXJyb3JIYW5kbGluZyYmTjMmJihOMy5lcnJvclRocm93bj0hMCxOMy5lcnJvcj1lKX12YXIgTjMselg9bCgoKT0+e29oKCk7TjM9bnVsbH0pO2Z1bmN0aW9uIHIwZShlLHQpe3JldHVybiBJcXIuY2FsbChlLHQpfWZ1bmN0aW9uIENYKGUpe2duLnVzZURlcHJlY2F0ZWRTeW5jaHJvbm91c0Vycm9ySGFuZGxpbmc/ZTN0KGUpOlNYKGUpfWZ1bmN0aW9uIEZxcihlKXt0aHJvdyBlfWZ1bmN0aW9uIGEwZShlLHQpe3ZhciByPWduLm9uU3RvcHBlZE5vdGlmaWNhdGlvbjtyJiZuaC5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cmV0dXJuIHIoZSx0KX0pfXZhciBGMyxJcXIsTnFyLGMwLE9xcixMZz1sKCgpPT57VnIoKTtIaSgpO0tzKCk7b2goKTtlMGUoKTtJMygpO0o0dCgpO0pjZSgpO3pYKCk7RjM9KGZ1bmN0aW9uKGUpe2FyKHQsZSk7ZnVuY3Rpb24gdChyKXt2YXIgYT1lLmNhbGwodGhpcyl8fHRoaXM7cmV0dXJuIGEuaXNTdG9wcGVkPSExLHI/KGEuZGVzdGluYXRpb249cixrWChyKSYmci5hZGQoYSkpOmEuZGVzdGluYXRpb249T3FyLGF9cmV0dXJuIHQuY3JlYXRlPWZ1bmN0aW9uKHIsYSxpKXtyZXR1cm4gbmV3IGMwKHIsYSxpKX0sdC5wcm90b3R5cGUubmV4dD1mdW5jdGlvbihyKXt0aGlzLmlzU3RvcHBlZD9hMGUoSzR0KHIpLHRoaXMpOnRoaXMuX25leHQocil9LHQucHJvdG90eXBlLmVycm9yPWZ1bmN0aW9uKHIpe3RoaXMuaXNTdG9wcGVkP2EwZShRNHQociksdGhpcyk6KHRoaXMuaXNTdG9wcGVkPSEwLHRoaXMuX2Vycm9yKHIpKX0sdC5wcm90b3R5cGUuY29tcGxldGU9ZnVuY3Rpb24oKXt0aGlzLmlzU3RvcHBlZD9hMGUoWDR0LHRoaXMpOih0aGlzLmlzU3RvcHBlZD0hMCx0aGlzLl9jb21wbGV0ZSgpKX0sdC5wcm90b3R5cGUudW5zdWJzY3JpYmU9ZnVuY3Rpb24oKXt0aGlzLmNsb3NlZHx8KHRoaXMuaXNTdG9wcGVkPSEwLGUucHJvdG90eXBlLnVuc3Vic2NyaWJlLmNhbGwodGhpcyksdGhpcy5kZXN0aW5hdGlvbj1udWxsKX0sdC5wcm90b3R5cGUuX25leHQ9ZnVuY3Rpb24ocil7dGhpcy5kZXN0aW5hdGlvbi5uZXh0KHIpfSx0LnByb3RvdHlwZS5fZXJyb3I9ZnVuY3Rpb24ocil7dHJ5e3RoaXMuZGVzdGluYXRpb24uZXJyb3Iocil9ZmluYWxseXt0aGlzLnVuc3Vic2NyaWJlKCl9fSx0LnByb3RvdHlwZS5fY29tcGxldGU9ZnVuY3Rpb24oKXt0cnl7dGhpcy5kZXN0aW5hdGlvbi5jb21wbGV0ZSgpfWZpbmFsbHl7dGhpcy51bnN1YnNjcmliZSgpfX0sdH0pKFFhKSxJcXI9RnVuY3Rpb24ucHJvdG90eXBlLmJpbmQ7TnFyPShmdW5jdGlvbigpe2Z1bmN0aW9uIGUodCl7dGhpcy5wYXJ0aWFsT2JzZXJ2ZXI9dH1yZXR1cm4gZS5wcm90b3R5cGUubmV4dD1mdW5jdGlvbih0KXt2YXIgcj10aGlzLnBhcnRpYWxPYnNlcnZlcjtpZihyLm5leHQpdHJ5e3IubmV4dCh0KX1jYXRjaChhKXtDWChhKX19LGUucHJvdG90eXBlLmVycm9yPWZ1bmN0aW9uKHQpe3ZhciByPXRoaXMucGFydGlhbE9ic2VydmVyO2lmKHIuZXJyb3IpdHJ5e3IuZXJyb3IodCl9Y2F0Y2goYSl7Q1goYSl9ZWxzZSBDWCh0KX0sZS5wcm90b3R5cGUuY29tcGxldGU9ZnVuY3Rpb24oKXt2YXIgdD10aGlzLnBhcnRpYWxPYnNlcnZlcjtpZih0LmNvbXBsZXRlKXRyeXt0LmNvbXBsZXRlKCl9Y2F0Y2gocil7Q1gocil9fSxlfSkoKSxjMD0oZnVuY3Rpb24oZSl7YXIodCxlKTtmdW5jdGlvbiB0KHIsYSxpKXt2YXIgbz1lLmNhbGwodGhpcyl8fHRoaXMsbjtpZihQdChyKXx8IXIpbj17bmV4dDpyPz92b2lkIDAsZXJyb3I6YT8/dm9pZCAwLGNvbXBsZXRlOmk/P3ZvaWQgMH07ZWxzZXt2YXIgcztvJiZnbi51c2VEZXByZWNhdGVkTmV4dENvbnRleHQ/KHM9T2JqZWN0LmNyZWF0ZShyKSxzLnVuc3Vic2NyaWJlPWZ1bmN0aW9uKCl7cmV0dXJuIG8udW5zdWJzY3JpYmUoKX0sbj17bmV4dDpyLm5leHQmJnIwZShyLm5leHQscyksZXJyb3I6ci5lcnJvciYmcjBlKHIuZXJyb3IscyksY29tcGxldGU6ci5jb21wbGV0ZSYmcjBlKHIuY29tcGxldGUscyl9KTpuPXJ9cmV0dXJuIG8uZGVzdGluYXRpb249bmV3IE5xcihuKSxvfXJldHVybiB0fSkoRjMpO09xcj17Y2xvc2VkOiEwLG5leHQ6eG4sZXJyb3I6RnFyLGNvbXBsZXRlOnhufX0pO3ZhciBPMyxEZz1sKCgpPT57TzM9KGZ1bmN0aW9uKCl7cmV0dXJuIHR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5vYnNlcnZhYmxlfHwiQEBvYnNlcnZhYmxlIn0pKCl9KTtmdW5jdGlvbiBkMChlKXtyZXR1cm4gZX12YXIgQWc9bCgoKT0+e30pO2Z1bmN0aW9uIFJxcigpe2Zvcih2YXIgZT1bXSx0PTA7dDxhcmd1bWVudHMubGVuZ3RoO3QrKyllW3RdPWFyZ3VtZW50c1t0XTtyZXR1cm4gaTBlKGUpfWZ1bmN0aW9uIGkwZShlKXtyZXR1cm4gZS5sZW5ndGg9PT0wP2QwOmUubGVuZ3RoPT09MT9lWzBdOmZ1bmN0aW9uKHIpe3JldHVybiBlLnJlZHVjZShmdW5jdGlvbihhLGkpe3JldHVybiBpKGEpfSxyKX19dmFyIG8wZT1sKCgpPT57QWcoKX0pO2Z1bmN0aW9uIHQzdChlKXt2YXIgdDtyZXR1cm4odD1lPz9nbi5Qcm9taXNlKSE9PW51bGwmJnQhPT12b2lkIDA/dDpQcm9taXNlfWZ1bmN0aW9uIEJxcihlKXtyZXR1cm4gZSYmUHQoZS5uZXh0KSYmUHQoZS5lcnJvcikmJlB0KGUuY29tcGxldGUpfWZ1bmN0aW9uIEhxcihlKXtyZXR1cm4gZSYmZSBpbnN0YW5jZW9mIEYzfHxCcXIoZSkmJmtYKGUpfXZhciBSdCx0bz1sKCgpPT57TGcoKTtLcygpO0RnKCk7bzBlKCk7b2goKTtIaSgpO3pYKCk7UnQ9KGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZSh0KXt0JiYodGhpcy5fc3Vic2NyaWJlPXQpfXJldHVybiBlLnByb3RvdHlwZS5saWZ0PWZ1bmN0aW9uKHQpe3ZhciByPW5ldyBlO3JldHVybiByLnNvdXJjZT10aGlzLHIub3BlcmF0b3I9dCxyfSxlLnByb3RvdHlwZS5zdWJzY3JpYmU9ZnVuY3Rpb24odCxyLGEpe3ZhciBpPXRoaXMsbz1IcXIodCk/dDpuZXcgYzAodCxyLGEpO3JldHVybiBzaChmdW5jdGlvbigpe3ZhciBuPWkscz1uLm9wZXJhdG9yLGM9bi5zb3VyY2U7by5hZGQocz9zLmNhbGwobyxjKTpjP2kuX3N1YnNjcmliZShvKTppLl90cnlTdWJzY3JpYmUobykpfSksb30sZS5wcm90b3R5cGUuX3RyeVN1YnNjcmliZT1mdW5jdGlvbih0KXt0cnl7cmV0dXJuIHRoaXMuX3N1YnNjcmliZSh0KX1jYXRjaChyKXt0LmVycm9yKHIpfX0sZS5wcm90b3R5cGUuZm9yRWFjaD1mdW5jdGlvbih0LHIpe3ZhciBhPXRoaXM7cmV0dXJuIHI9dDN0KHIpLG5ldyByKGZ1bmN0aW9uKGksbyl7dmFyIG49bmV3IGMwKHtuZXh0OmZ1bmN0aW9uKHMpe3RyeXt0KHMpfWNhdGNoKGMpe28oYyksbi51bnN1YnNjcmliZSgpfX0sZXJyb3I6byxjb21wbGV0ZTppfSk7YS5zdWJzY3JpYmUobil9KX0sZS5wcm90b3R5cGUuX3N1YnNjcmliZT1mdW5jdGlvbih0KXt2YXIgcjtyZXR1cm4ocj10aGlzLnNvdXJjZSk9PT1udWxsfHxyPT09dm9pZCAwP3ZvaWQgMDpyLnN1YnNjcmliZSh0KX0sZS5wcm90b3R5cGVbTzNdPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9LGUucHJvdG90eXBlLnBpcGU9ZnVuY3Rpb24oKXtmb3IodmFyIHQ9W10scj0wO3I8YXJndW1lbnRzLmxlbmd0aDtyKyspdFtyXT1hcmd1bWVudHNbcl07cmV0dXJuIGkwZSh0KSh0aGlzKX0sZS5wcm90b3R5cGUudG9Qcm9taXNlPWZ1bmN0aW9uKHQpe3ZhciByPXRoaXM7cmV0dXJuIHQ9dDN0KHQpLG5ldyB0KGZ1bmN0aW9uKGEsaSl7dmFyIG87ci5zdWJzY3JpYmUoZnVuY3Rpb24obil7cmV0dXJuIG89bn0sZnVuY3Rpb24obil7cmV0dXJuIGkobil9LGZ1bmN0aW9uKCl7cmV0dXJuIGEobyl9KX0pfSxlLmNyZWF0ZT1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IGUodCl9LGV9KSgpfSk7ZnVuY3Rpb24gbjBlKGUpe3JldHVybiBQdChlPy5saWZ0KX1mdW5jdGlvbiBFcihlKXtyZXR1cm4gZnVuY3Rpb24odCl7aWYobjBlKHQpKXJldHVybiB0LmxpZnQoZnVuY3Rpb24ocil7dHJ5e3JldHVybiBlKHIsdGhpcyl9Y2F0Y2goYSl7dGhpcy5lcnJvcihhKX19KTt0aHJvdyBuZXcgVHlwZUVycm9yKCJVbmFibGUgdG8gbGlmdCB1bmtub3duIE9ic2VydmFibGUgdHlwZSIpfX12YXIgcWk9bCgoKT0+e0hpKCl9KTtmdW5jdGlvbiBNcihlLHQscixhLGkpe3JldHVybiBuZXcgcjN0KGUsdCxyLGEsaSl9dmFyIHIzdCxNMT1sKCgpPT57VnIoKTtMZygpO3IzdD0oZnVuY3Rpb24oZSl7YXIodCxlKTtmdW5jdGlvbiB0KHIsYSxpLG8sbixzKXt2YXIgYz1lLmNhbGwodGhpcyxyKXx8dGhpcztyZXR1cm4gYy5vbkZpbmFsaXplPW4sYy5zaG91bGRVbnN1YnNjcmliZT1zLGMuX25leHQ9YT9mdW5jdGlvbihkKXt0cnl7YShkKX1jYXRjaChmKXtyLmVycm9yKGYpfX06ZS5wcm90b3R5cGUuX25leHQsYy5fZXJyb3I9bz9mdW5jdGlvbihkKXt0cnl7byhkKX1jYXRjaChmKXtyLmVycm9yKGYpfWZpbmFsbHl7dGhpcy51bnN1YnNjcmliZSgpfX06ZS5wcm90b3R5cGUuX2Vycm9yLGMuX2NvbXBsZXRlPWk/ZnVuY3Rpb24oKXt0cnl7aSgpfWNhdGNoKGQpe3IuZXJyb3IoZCl9ZmluYWxseXt0aGlzLnVuc3Vic2NyaWJlKCl9fTplLnByb3RvdHlwZS5fY29tcGxldGUsY31yZXR1cm4gdC5wcm90b3R5cGUudW5zdWJzY3JpYmU9ZnVuY3Rpb24oKXt2YXIgcjtpZighdGhpcy5zaG91bGRVbnN1YnNjcmliZXx8dGhpcy5zaG91bGRVbnN1YnNjcmliZSgpKXt2YXIgYT10aGlzLmNsb3NlZDtlLnByb3RvdHlwZS51bnN1YnNjcmliZS5jYWxsKHRoaXMpLCFhJiYoKHI9dGhpcy5vbkZpbmFsaXplKT09PW51bGx8fHI9PT12b2lkIDB8fHIuY2FsbCh0aGlzKSl9fSx0fSkoRjMpfSk7ZnVuY3Rpb24gX1goKXtyZXR1cm4gRXIoZnVuY3Rpb24oZSx0KXt2YXIgcj1udWxsO2UuX3JlZkNvdW50Kys7dmFyIGE9TXIodCx2b2lkIDAsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe2lmKCFlfHxlLl9yZWZDb3VudDw9MHx8MDwtLWUuX3JlZkNvdW50KXtyPW51bGw7cmV0dXJufXZhciBpPWUuX2Nvbm5lY3Rpb24sbz1yO3I9bnVsbCxpJiYoIW98fGk9PT1vKSYmaS51bnN1YnNjcmliZSgpLHQudW5zdWJzY3JpYmUoKX0pO2Uuc3Vic2NyaWJlKGEpLGEuY2xvc2VkfHwocj1lLmNvbm5lY3QoKSl9KX12YXIgVFg9bCgoKT0+e3FpKCk7TTEoKX0pO3ZhciBhM3QsaTN0PWwoKCk9PntWcigpO3RvKCk7S3MoKTtUWCgpO00xKCk7cWkoKTthM3Q9KGZ1bmN0aW9uKGUpe2FyKHQsZSk7ZnVuY3Rpb24gdChyLGEpe3ZhciBpPWUuY2FsbCh0aGlzKXx8dGhpcztyZXR1cm4gaS5zb3VyY2U9cixpLnN1YmplY3RGYWN0b3J5PWEsaS5fc3ViamVjdD1udWxsLGkuX3JlZkNvdW50PTAsaS5fY29ubmVjdGlvbj1udWxsLG4wZShyKSYmKGkubGlmdD1yLmxpZnQpLGl9cmV0dXJuIHQucHJvdG90eXBlLl9zdWJzY3JpYmU9ZnVuY3Rpb24ocil7cmV0dXJuIHRoaXMuZ2V0U3ViamVjdCgpLnN1YnNjcmliZShyKX0sdC5wcm90b3R5cGUuZ2V0U3ViamVjdD1mdW5jdGlvbigpe3ZhciByPXRoaXMuX3N1YmplY3Q7cmV0dXJuKCFyfHxyLmlzU3RvcHBlZCkmJih0aGlzLl9zdWJqZWN0PXRoaXMuc3ViamVjdEZhY3RvcnkoKSksdGhpcy5fc3ViamVjdH0sdC5wcm90b3R5cGUuX3RlYXJkb3duPWZ1bmN0aW9uKCl7dGhpcy5fcmVmQ291bnQ9MDt2YXIgcj10aGlzLl9jb25uZWN0aW9uO3RoaXMuX3N1YmplY3Q9dGhpcy5fY29ubmVjdGlvbj1udWxsLHI/LnVuc3Vic2NyaWJlKCl9LHQucHJvdG90eXBlLmNvbm5lY3Q9ZnVuY3Rpb24oKXt2YXIgcj10aGlzLGE9dGhpcy5fY29ubmVjdGlvbjtpZighYSl7YT10aGlzLl9jb25uZWN0aW9uPW5ldyBRYTt2YXIgaT10aGlzLmdldFN1YmplY3QoKTthLmFkZCh0aGlzLnNvdXJjZS5zdWJzY3JpYmUoTXIoaSx2b2lkIDAsZnVuY3Rpb24oKXtyLl90ZWFyZG93bigpLGkuY29tcGxldGUoKX0sZnVuY3Rpb24obyl7ci5fdGVhcmRvd24oKSxpLmVycm9yKG8pfSxmdW5jdGlvbigpe3JldHVybiByLl90ZWFyZG93bigpfSkpKSxhLmNsb3NlZCYmKHRoaXMuX2Nvbm5lY3Rpb249bnVsbCxhPVFhLkVNUFRZKX1yZXR1cm4gYX0sdC5wcm90b3R5cGUucmVmQ291bnQ9ZnVuY3Rpb24oKXtyZXR1cm4gX1goKSh0aGlzKX0sdH0pKFJ0KX0pO3ZhciBzMGUsbzN0PWwoKCk9PntzMGU9e25vdzpmdW5jdGlvbigpe3JldHVybihzMGUuZGVsZWdhdGV8fHBlcmZvcm1hbmNlKS5ub3coKX0sZGVsZWdhdGU6dm9pZCAwfX0pO3ZhciB6bCxsMGU9bCgoKT0+e1ZyKCk7S3MoKTt6bD17c2NoZWR1bGU6ZnVuY3Rpb24oZSl7dmFyIHQ9cmVxdWVzdEFuaW1hdGlvbkZyYW1lLHI9Y2FuY2VsQW5pbWF0aW9uRnJhbWUsYT16bC5kZWxlZ2F0ZTthJiYodD1hLnJlcXVlc3RBbmltYXRpb25GcmFtZSxyPWEuY2FuY2VsQW5pbWF0aW9uRnJhbWUpO3ZhciBpPXQoZnVuY3Rpb24obyl7cj12b2lkIDAsZShvKX0pO3JldHVybiBuZXcgUWEoZnVuY3Rpb24oKXtyZXR1cm4gcj8uKGkpfSl9LHJlcXVlc3RBbmltYXRpb25GcmFtZTpmdW5jdGlvbigpe2Zvcih2YXIgZT1bXSx0PTA7dDxhcmd1bWVudHMubGVuZ3RoO3QrKyllW3RdPWFyZ3VtZW50c1t0XTt2YXIgcj16bC5kZWxlZ2F0ZTtyZXR1cm4ocj8ucmVxdWVzdEFuaW1hdGlvbkZyYW1lfHxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUpLmFwcGx5KHZvaWQgMCx3aShbXSxPYShlKSkpfSxjYW5jZWxBbmltYXRpb25GcmFtZTpmdW5jdGlvbigpe2Zvcih2YXIgZT1bXSx0PTA7dDxhcmd1bWVudHMubGVuZ3RoO3QrKyllW3RdPWFyZ3VtZW50c1t0XTt2YXIgcj16bC5kZWxlZ2F0ZTtyZXR1cm4ocj8uY2FuY2VsQW5pbWF0aW9uRnJhbWV8fGNhbmNlbEFuaW1hdGlvbkZyYW1lKS5hcHBseSh2b2lkIDAsd2koW10sT2EoZSkpKX0sZGVsZWdhdGU6dm9pZCAwfX0pO2Z1bmN0aW9uIHFxcihlKXtyZXR1cm4gZT9uM3QoZSk6anFyfWZ1bmN0aW9uIG4zdChlKXtyZXR1cm4gbmV3IFJ0KGZ1bmN0aW9uKHQpe3ZhciByPWV8fHMwZSxhPXIubm93KCksaT0wLG89ZnVuY3Rpb24oKXt0LmNsb3NlZHx8KGk9emwucmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKG4pe2k9MDt2YXIgcz1yLm5vdygpO3QubmV4dCh7dGltZXN0YW1wOmU/czpuLGVsYXBzZWQ6cy1hfSksbygpfSkpfTtyZXR1cm4gbygpLGZ1bmN0aW9uKCl7aSYmemwuY2FuY2VsQW5pbWF0aW9uRnJhbWUoaSl9fSl9dmFyIGpxcixzM3Q9bCgoKT0+e3RvKCk7bzN0KCk7bDBlKCk7anFyPW4zdCgpfSk7dmFyIGMwZSxkMGU9bCgoKT0+e2wwKCk7YzBlPV9vKGZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbigpe2UodGhpcyksdGhpcy5uYW1lPSJPYmplY3RVbnN1YnNjcmliZWRFcnJvciIsdGhpcy5tZXNzYWdlPSJvYmplY3QgdW5zdWJzY3JpYmVkIn19KX0pO3ZhciBrMSx1MGUsbGg9bCgoKT0+e1ZyKCk7dG8oKTtLcygpO2QwZSgpO2loKCk7elgoKTtrMT0oZnVuY3Rpb24oZSl7YXIodCxlKTtmdW5jdGlvbiB0KCl7dmFyIHI9ZS5jYWxsKHRoaXMpfHx0aGlzO3JldHVybiByLmNsb3NlZD0hMSxyLmN1cnJlbnRPYnNlcnZlcnM9bnVsbCxyLm9ic2VydmVycz1bXSxyLmlzU3RvcHBlZD0hMSxyLmhhc0Vycm9yPSExLHIudGhyb3duRXJyb3I9bnVsbCxyfXJldHVybiB0LnByb3RvdHlwZS5saWZ0PWZ1bmN0aW9uKHIpe3ZhciBhPW5ldyB1MGUodGhpcyx0aGlzKTtyZXR1cm4gYS5vcGVyYXRvcj1yLGF9LHQucHJvdG90eXBlLl90aHJvd0lmQ2xvc2VkPWZ1bmN0aW9uKCl7aWYodGhpcy5jbG9zZWQpdGhyb3cgbmV3IGMwZX0sdC5wcm90b3R5cGUubmV4dD1mdW5jdGlvbihyKXt2YXIgYT10aGlzO3NoKGZ1bmN0aW9uKCl7dmFyIGksbztpZihhLl90aHJvd0lmQ2xvc2VkKCksIWEuaXNTdG9wcGVkKXthLmN1cnJlbnRPYnNlcnZlcnN8fChhLmN1cnJlbnRPYnNlcnZlcnM9QXJyYXkuZnJvbShhLm9ic2VydmVycykpO3RyeXtmb3IodmFyIG49dzEoYS5jdXJyZW50T2JzZXJ2ZXJzKSxzPW4ubmV4dCgpOyFzLmRvbmU7cz1uLm5leHQoKSl7dmFyIGM9cy52YWx1ZTtjLm5leHQocil9fWNhdGNoKGQpe2k9e2Vycm9yOmR9fWZpbmFsbHl7dHJ5e3MmJiFzLmRvbmUmJihvPW4ucmV0dXJuKSYmby5jYWxsKG4pfWZpbmFsbHl7aWYoaSl0aHJvdyBpLmVycm9yfX19fSl9LHQucHJvdG90eXBlLmVycm9yPWZ1bmN0aW9uKHIpe3ZhciBhPXRoaXM7c2goZnVuY3Rpb24oKXtpZihhLl90aHJvd0lmQ2xvc2VkKCksIWEuaXNTdG9wcGVkKXthLmhhc0Vycm9yPWEuaXNTdG9wcGVkPSEwLGEudGhyb3duRXJyb3I9cjtmb3IodmFyIGk9YS5vYnNlcnZlcnM7aS5sZW5ndGg7KWkuc2hpZnQoKS5lcnJvcihyKX19KX0sdC5wcm90b3R5cGUuY29tcGxldGU9ZnVuY3Rpb24oKXt2YXIgcj10aGlzO3NoKGZ1bmN0aW9uKCl7aWYoci5fdGhyb3dJZkNsb3NlZCgpLCFyLmlzU3RvcHBlZCl7ci5pc1N0b3BwZWQ9ITA7Zm9yKHZhciBhPXIub2JzZXJ2ZXJzO2EubGVuZ3RoOylhLnNoaWZ0KCkuY29tcGxldGUoKX19KX0sdC5wcm90b3R5cGUudW5zdWJzY3JpYmU9ZnVuY3Rpb24oKXt0aGlzLmlzU3RvcHBlZD10aGlzLmNsb3NlZD0hMCx0aGlzLm9ic2VydmVycz10aGlzLmN1cnJlbnRPYnNlcnZlcnM9bnVsbH0sT2JqZWN0LmRlZmluZVByb3BlcnR5KHQucHJvdG90eXBlLCJvYnNlcnZlZCIse2dldDpmdW5jdGlvbigpe3ZhciByO3JldHVybigocj10aGlzLm9ic2VydmVycyk9PT1udWxsfHxyPT09dm9pZCAwP3ZvaWQgMDpyLmxlbmd0aCk+MH0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSx0LnByb3RvdHlwZS5fdHJ5U3Vic2NyaWJlPWZ1bmN0aW9uKHIpe3JldHVybiB0aGlzLl90aHJvd0lmQ2xvc2VkKCksZS5wcm90b3R5cGUuX3RyeVN1YnNjcmliZS5jYWxsKHRoaXMscil9LHQucHJvdG90eXBlLl9zdWJzY3JpYmU9ZnVuY3Rpb24ocil7cmV0dXJuIHRoaXMuX3Rocm93SWZDbG9zZWQoKSx0aGlzLl9jaGVja0ZpbmFsaXplZFN0YXR1c2VzKHIpLHRoaXMuX2lubmVyU3Vic2NyaWJlKHIpfSx0LnByb3RvdHlwZS5faW5uZXJTdWJzY3JpYmU9ZnVuY3Rpb24ocil7dmFyIGE9dGhpcyxpPXRoaXMsbz1pLmhhc0Vycm9yLG49aS5pc1N0b3BwZWQscz1pLm9ic2VydmVycztyZXR1cm4gb3x8bj9LY2U6KHRoaXMuY3VycmVudE9ic2VydmVycz1udWxsLHMucHVzaChyKSxuZXcgUWEoZnVuY3Rpb24oKXthLmN1cnJlbnRPYnNlcnZlcnM9bnVsbCxlcyhzLHIpfSkpfSx0LnByb3RvdHlwZS5fY2hlY2tGaW5hbGl6ZWRTdGF0dXNlcz1mdW5jdGlvbihyKXt2YXIgYT10aGlzLGk9YS5oYXNFcnJvcixvPWEudGhyb3duRXJyb3Isbj1hLmlzU3RvcHBlZDtpP3IuZXJyb3Iobyk6biYmci5jb21wbGV0ZSgpfSx0LnByb3RvdHlwZS5hc09ic2VydmFibGU9ZnVuY3Rpb24oKXt2YXIgcj1uZXcgUnQ7cmV0dXJuIHIuc291cmNlPXRoaXMscn0sdC5jcmVhdGU9ZnVuY3Rpb24ocixhKXtyZXR1cm4gbmV3IHUwZShyLGEpfSx0fSkoUnQpLHUwZT0oZnVuY3Rpb24oZSl7YXIodCxlKTtmdW5jdGlvbiB0KHIsYSl7dmFyIGk9ZS5jYWxsKHRoaXMpfHx0aGlzO3JldHVybiBpLmRlc3RpbmF0aW9uPXIsaS5zb3VyY2U9YSxpfXJldHVybiB0LnByb3RvdHlwZS5uZXh0PWZ1bmN0aW9uKHIpe3ZhciBhLGk7KGk9KGE9dGhpcy5kZXN0aW5hdGlvbik9PT1udWxsfHxhPT09dm9pZCAwP3ZvaWQgMDphLm5leHQpPT09bnVsbHx8aT09PXZvaWQgMHx8aS5jYWxsKGEscil9LHQucHJvdG90eXBlLmVycm9yPWZ1bmN0aW9uKHIpe3ZhciBhLGk7KGk9KGE9dGhpcy5kZXN0aW5hdGlvbik9PT1udWxsfHxhPT09dm9pZCAwP3ZvaWQgMDphLmVycm9yKT09PW51bGx8fGk9PT12b2lkIDB8fGkuY2FsbChhLHIpfSx0LnByb3RvdHlwZS5jb21wbGV0ZT1mdW5jdGlvbigpe3ZhciByLGE7KGE9KHI9dGhpcy5kZXN0aW5hdGlvbik9PT1udWxsfHxyPT09dm9pZCAwP3ZvaWQgMDpyLmNvbXBsZXRlKT09PW51bGx8fGE9PT12b2lkIDB8fGEuY2FsbChyKX0sdC5wcm90b3R5cGUuX3N1YnNjcmliZT1mdW5jdGlvbihyKXt2YXIgYSxpO3JldHVybihpPShhPXRoaXMuc291cmNlKT09PW51bGx8fGE9PT12b2lkIDA/dm9pZCAwOmEuc3Vic2NyaWJlKHIpKSE9PW51bGwmJmkhPT12b2lkIDA/aTpLY2V9LHR9KShrMSl9KTt2YXIgbDN0LGMzdD1sKCgpPT57VnIoKTtsaCgpO2wzdD0oZnVuY3Rpb24oZSl7YXIodCxlKTtmdW5jdGlvbiB0KHIpe3ZhciBhPWUuY2FsbCh0aGlzKXx8dGhpcztyZXR1cm4gYS5fdmFsdWU9cixhfXJldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydHkodC5wcm90b3R5cGUsInZhbHVlIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZ2V0VmFsdWUoKX0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSx0LnByb3RvdHlwZS5fc3Vic2NyaWJlPWZ1bmN0aW9uKHIpe3ZhciBhPWUucHJvdG90eXBlLl9zdWJzY3JpYmUuY2FsbCh0aGlzLHIpO3JldHVybiFhLmNsb3NlZCYmci5uZXh0KHRoaXMuX3ZhbHVlKSxhfSx0LnByb3RvdHlwZS5nZXRWYWx1ZT1mdW5jdGlvbigpe3ZhciByPXRoaXMsYT1yLmhhc0Vycm9yLGk9ci50aHJvd25FcnJvcixvPXIuX3ZhbHVlO2lmKGEpdGhyb3cgaTtyZXR1cm4gdGhpcy5fdGhyb3dJZkNsb3NlZCgpLG99LHQucHJvdG90eXBlLm5leHQ9ZnVuY3Rpb24ocil7ZS5wcm90b3R5cGUubmV4dC5jYWxsKHRoaXMsdGhpcy5fdmFsdWU9cil9LHR9KShrMSl9KTt2YXIgRWcsZjBlPWwoKCk9PntFZz17bm93OmZ1bmN0aW9uKCl7cmV0dXJuKEVnLmRlbGVnYXRlfHxEYXRlKS5ub3coKX0sZGVsZWdhdGU6dm9pZCAwfX0pO3ZhciBjaCxwMGU9bCgoKT0+e1ZyKCk7bGgoKTtmMGUoKTtjaD0oZnVuY3Rpb24oZSl7YXIodCxlKTtmdW5jdGlvbiB0KHIsYSxpKXtyPT09dm9pZCAwJiYocj0xLzApLGE9PT12b2lkIDAmJihhPTEvMCksaT09PXZvaWQgMCYmKGk9RWcpO3ZhciBvPWUuY2FsbCh0aGlzKXx8dGhpcztyZXR1cm4gby5fYnVmZmVyU2l6ZT1yLG8uX3dpbmRvd1RpbWU9YSxvLl90aW1lc3RhbXBQcm92aWRlcj1pLG8uX2J1ZmZlcj1bXSxvLl9pbmZpbml0ZVRpbWVXaW5kb3c9ITAsby5faW5maW5pdGVUaW1lV2luZG93PWE9PT0xLzAsby5fYnVmZmVyU2l6ZT1NYXRoLm1heCgxLHIpLG8uX3dpbmRvd1RpbWU9TWF0aC5tYXgoMSxhKSxvfXJldHVybiB0LnByb3RvdHlwZS5uZXh0PWZ1bmN0aW9uKHIpe3ZhciBhPXRoaXMsaT1hLmlzU3RvcHBlZCxvPWEuX2J1ZmZlcixuPWEuX2luZmluaXRlVGltZVdpbmRvdyxzPWEuX3RpbWVzdGFtcFByb3ZpZGVyLGM9YS5fd2luZG93VGltZTtpfHwoby5wdXNoKHIpLCFuJiZvLnB1c2gocy5ub3coKStjKSksdGhpcy5fdHJpbUJ1ZmZlcigpLGUucHJvdG90eXBlLm5leHQuY2FsbCh0aGlzLHIpfSx0LnByb3RvdHlwZS5fc3Vic2NyaWJlPWZ1bmN0aW9uKHIpe3RoaXMuX3Rocm93SWZDbG9zZWQoKSx0aGlzLl90cmltQnVmZmVyKCk7Zm9yKHZhciBhPXRoaXMuX2lubmVyU3Vic2NyaWJlKHIpLGk9dGhpcyxvPWkuX2luZmluaXRlVGltZVdpbmRvdyxuPWkuX2J1ZmZlcixzPW4uc2xpY2UoKSxjPTA7YzxzLmxlbmd0aCYmIXIuY2xvc2VkO2MrPW8/MToyKXIubmV4dChzW2NdKTtyZXR1cm4gdGhpcy5fY2hlY2tGaW5hbGl6ZWRTdGF0dXNlcyhyKSxhfSx0LnByb3RvdHlwZS5fdHJpbUJ1ZmZlcj1mdW5jdGlvbigpe3ZhciByPXRoaXMsYT1yLl9idWZmZXJTaXplLGk9ci5fdGltZXN0YW1wUHJvdmlkZXIsbz1yLl9idWZmZXIsbj1yLl9pbmZpbml0ZVRpbWVXaW5kb3cscz0obj8xOjIpKmE7aWYoYTwxLzAmJnM8by5sZW5ndGgmJm8uc3BsaWNlKDAsby5sZW5ndGgtcyksIW4pe2Zvcih2YXIgYz1pLm5vdygpLGQ9MCxmPTE7ZjxvLmxlbmd0aCYmb1tmXTw9YztmKz0yKWQ9ZjtkJiZvLnNwbGljZSgwLGQrMSl9fSx0fSkoazEpfSk7dmFyIGQzdCx1M3Q9bCgoKT0+e1ZyKCk7bGgoKTtkM3Q9KGZ1bmN0aW9uKGUpe2FyKHQsZSk7ZnVuY3Rpb24gdCgpe3ZhciByPWUhPT1udWxsJiZlLmFwcGx5KHRoaXMsYXJndW1lbnRzKXx8dGhpcztyZXR1cm4gci5fdmFsdWU9bnVsbCxyLl9oYXNWYWx1ZT0hMSxyLl9pc0NvbXBsZXRlPSExLHJ9cmV0dXJuIHQucHJvdG90eXBlLl9jaGVja0ZpbmFsaXplZFN0YXR1c2VzPWZ1bmN0aW9uKHIpe3ZhciBhPXRoaXMsaT1hLmhhc0Vycm9yLG89YS5faGFzVmFsdWUsbj1hLl92YWx1ZSxzPWEudGhyb3duRXJyb3IsYz1hLmlzU3RvcHBlZCxkPWEuX2lzQ29tcGxldGU7aT9yLmVycm9yKHMpOihjfHxkKSYmKG8mJnIubmV4dChuKSxyLmNvbXBsZXRlKCkpfSx0LnByb3RvdHlwZS5uZXh0PWZ1bmN0aW9uKHIpe3RoaXMuaXNTdG9wcGVkfHwodGhpcy5fdmFsdWU9cix0aGlzLl9oYXNWYWx1ZT0hMCl9LHQucHJvdG90eXBlLmNvbXBsZXRlPWZ1bmN0aW9uKCl7dmFyIHI9dGhpcyxhPXIuX2hhc1ZhbHVlLGk9ci5fdmFsdWUsbz1yLl9pc0NvbXBsZXRlO298fCh0aGlzLl9pc0NvbXBsZXRlPSEwLGEmJmUucHJvdG90eXBlLm5leHQuY2FsbCh0aGlzLGkpLGUucHJvdG90eXBlLmNvbXBsZXRlLmNhbGwodGhpcykpfSx0fSkoazEpfSk7dmFyIGgwZSxmM3Q9bCgoKT0+e1ZyKCk7S3MoKTtoMGU9KGZ1bmN0aW9uKGUpe2FyKHQsZSk7ZnVuY3Rpb24gdChyLGEpe3JldHVybiBlLmNhbGwodGhpcyl8fHRoaXN9cmV0dXJuIHQucHJvdG90eXBlLnNjaGVkdWxlPWZ1bmN0aW9uKHIsYSl7cmV0dXJuIGE9PT12b2lkIDAmJihhPTApLHRoaXN9LHR9KShRYSl9KTt2YXIgJGcscDN0PWwoKCk9PntWcigpOyRnPXtzZXRJbnRlcnZhbDpmdW5jdGlvbihlLHQpe2Zvcih2YXIgcj1bXSxhPTI7YTxhcmd1bWVudHMubGVuZ3RoO2ErKylyW2EtMl09YXJndW1lbnRzW2FdO3ZhciBpPSRnLmRlbGVnYXRlO3JldHVybiBpPy5zZXRJbnRlcnZhbD9pLnNldEludGVydmFsLmFwcGx5KGksd2koW2UsdF0sT2EocikpKTpzZXRJbnRlcnZhbC5hcHBseSh2b2lkIDAsd2koW2UsdF0sT2EocikpKX0sY2xlYXJJbnRlcnZhbDpmdW5jdGlvbihlKXt2YXIgdD0kZy5kZWxlZ2F0ZTtyZXR1cm4odD8uY2xlYXJJbnRlcnZhbHx8Y2xlYXJJbnRlcnZhbCkoZSl9LGRlbGVnYXRlOnZvaWQgMH19KTt2YXIgdHMsZGg9bCgoKT0+e1ZyKCk7ZjN0KCk7cDN0KCk7aWgoKTt0cz0oZnVuY3Rpb24oZSl7YXIodCxlKTtmdW5jdGlvbiB0KHIsYSl7dmFyIGk9ZS5jYWxsKHRoaXMscixhKXx8dGhpcztyZXR1cm4gaS5zY2hlZHVsZXI9cixpLndvcms9YSxpLnBlbmRpbmc9ITEsaX1yZXR1cm4gdC5wcm90b3R5cGUuc2NoZWR1bGU9ZnVuY3Rpb24ocixhKXt2YXIgaTtpZihhPT09dm9pZCAwJiYoYT0wKSx0aGlzLmNsb3NlZClyZXR1cm4gdGhpczt0aGlzLnN0YXRlPXI7dmFyIG89dGhpcy5pZCxuPXRoaXMuc2NoZWR1bGVyO3JldHVybiBvIT1udWxsJiYodGhpcy5pZD10aGlzLnJlY3ljbGVBc3luY0lkKG4sbyxhKSksdGhpcy5wZW5kaW5nPSEwLHRoaXMuZGVsYXk9YSx0aGlzLmlkPShpPXRoaXMuaWQpIT09bnVsbCYmaSE9PXZvaWQgMD9pOnRoaXMucmVxdWVzdEFzeW5jSWQobix0aGlzLmlkLGEpLHRoaXN9LHQucHJvdG90eXBlLnJlcXVlc3RBc3luY0lkPWZ1bmN0aW9uKHIsYSxpKXtyZXR1cm4gaT09PXZvaWQgMCYmKGk9MCksJGcuc2V0SW50ZXJ2YWwoci5mbHVzaC5iaW5kKHIsdGhpcyksaSl9LHQucHJvdG90eXBlLnJlY3ljbGVBc3luY0lkPWZ1bmN0aW9uKHIsYSxpKXtpZihpPT09dm9pZCAwJiYoaT0wKSxpIT1udWxsJiZ0aGlzLmRlbGF5PT09aSYmdGhpcy5wZW5kaW5nPT09ITEpcmV0dXJuIGE7YSE9bnVsbCYmJGcuY2xlYXJJbnRlcnZhbChhKX0sdC5wcm90b3R5cGUuZXhlY3V0ZT1mdW5jdGlvbihyLGEpe2lmKHRoaXMuY2xvc2VkKXJldHVybiBuZXcgRXJyb3IoImV4ZWN1dGluZyBhIGNhbmNlbGxlZCBhY3Rpb24iKTt0aGlzLnBlbmRpbmc9ITE7dmFyIGk9dGhpcy5fZXhlY3V0ZShyLGEpO2lmKGkpcmV0dXJuIGk7dGhpcy5wZW5kaW5nPT09ITEmJnRoaXMuaWQhPW51bGwmJih0aGlzLmlkPXRoaXMucmVjeWNsZUFzeW5jSWQodGhpcy5zY2hlZHVsZXIsdGhpcy5pZCxudWxsKSl9LHQucHJvdG90eXBlLl9leGVjdXRlPWZ1bmN0aW9uKHIsYSl7dmFyIGk9ITEsbzt0cnl7dGhpcy53b3JrKHIpfWNhdGNoKG4pe2k9ITAsbz1ufHxuZXcgRXJyb3IoIlNjaGVkdWxlZCBhY3Rpb24gdGhyZXcgZmFsc3kgZXJyb3IiKX1pZihpKXJldHVybiB0aGlzLnVuc3Vic2NyaWJlKCksb30sdC5wcm90b3R5cGUudW5zdWJzY3JpYmU9ZnVuY3Rpb24oKXtpZighdGhpcy5jbG9zZWQpe3ZhciByPXRoaXMsYT1yLmlkLGk9ci5zY2hlZHVsZXIsbz1pLmFjdGlvbnM7dGhpcy53b3JrPXRoaXMuc3RhdGU9dGhpcy5zY2hlZHVsZXI9bnVsbCx0aGlzLnBlbmRpbmc9ITEsZXMobyx0aGlzKSxhIT1udWxsJiYodGhpcy5pZD10aGlzLnJlY3ljbGVBc3luY0lkKGksYSxudWxsKSksdGhpcy5kZWxheT1udWxsLGUucHJvdG90eXBlLnVuc3Vic2NyaWJlLmNhbGwodGhpcyl9fSx0fSkoaDBlKX0pO2Z1bmN0aW9uIGgzdChlKXtyZXR1cm4gZSBpbiBMWD8oZGVsZXRlIExYW2VdLCEwKTohMX12YXIgVnFyLG0wZSxMWCxnMGUsZ01hLG0zdD1sKCgpPT57VnFyPTEsTFg9e307ZzBlPXtzZXRJbW1lZGlhdGU6ZnVuY3Rpb24oZSl7dmFyIHQ9VnFyKys7cmV0dXJuIExYW3RdPSEwLG0wZXx8KG0wZT1Qcm9taXNlLnJlc29sdmUoKSksbTBlLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gaDN0KHQpJiZlKCl9KSx0fSxjbGVhckltbWVkaWF0ZTpmdW5jdGlvbihlKXtoM3QoZSl9fSxnTWE9e3BlbmRpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gT2JqZWN0LmtleXMoTFgpLmxlbmd0aH19fSk7dmFyIFVxcixXcXIsUGcsZzN0PWwoKCk9PntWcigpO20zdCgpO1Vxcj1nMGUuc2V0SW1tZWRpYXRlLFdxcj1nMGUuY2xlYXJJbW1lZGlhdGUsUGc9e3NldEltbWVkaWF0ZTpmdW5jdGlvbigpe2Zvcih2YXIgZT1bXSx0PTA7dDxhcmd1bWVudHMubGVuZ3RoO3QrKyllW3RdPWFyZ3VtZW50c1t0XTt2YXIgcj1QZy5kZWxlZ2F0ZTtyZXR1cm4ocj8uc2V0SW1tZWRpYXRlfHxVcXIpLmFwcGx5KHZvaWQgMCx3aShbXSxPYShlKSkpfSxjbGVhckltbWVkaWF0ZTpmdW5jdGlvbihlKXt2YXIgdD1QZy5kZWxlZ2F0ZTtyZXR1cm4odD8uY2xlYXJJbW1lZGlhdGV8fFdxcikoZSl9LGRlbGVnYXRlOnZvaWQgMH19KTt2YXIgeDBlLHgzdD1sKCgpPT57VnIoKTtkaCgpO2czdCgpO3gwZT0oZnVuY3Rpb24oZSl7YXIodCxlKTtmdW5jdGlvbiB0KHIsYSl7dmFyIGk9ZS5jYWxsKHRoaXMscixhKXx8dGhpcztyZXR1cm4gaS5zY2hlZHVsZXI9cixpLndvcms9YSxpfXJldHVybiB0LnByb3RvdHlwZS5yZXF1ZXN0QXN5bmNJZD1mdW5jdGlvbihyLGEsaSl7cmV0dXJuIGk9PT12b2lkIDAmJihpPTApLGkhPT1udWxsJiZpPjA/ZS5wcm90b3R5cGUucmVxdWVzdEFzeW5jSWQuY2FsbCh0aGlzLHIsYSxpKTooci5hY3Rpb25zLnB1c2godGhpcyksci5fc2NoZWR1bGVkfHwoci5fc2NoZWR1bGVkPVBnLnNldEltbWVkaWF0ZShyLmZsdXNoLmJpbmQocix2b2lkIDApKSkpfSx0LnByb3RvdHlwZS5yZWN5Y2xlQXN5bmNJZD1mdW5jdGlvbihyLGEsaSl7dmFyIG87aWYoaT09PXZvaWQgMCYmKGk9MCksaSE9bnVsbD9pPjA6dGhpcy5kZWxheT4wKXJldHVybiBlLnByb3RvdHlwZS5yZWN5Y2xlQXN5bmNJZC5jYWxsKHRoaXMscixhLGkpO3ZhciBuPXIuYWN0aW9uczthIT1udWxsJiYoKG89bltuLmxlbmd0aC0xXSk9PT1udWxsfHxvPT09dm9pZCAwP3ZvaWQgMDpvLmlkKSE9PWEmJihQZy5jbGVhckltbWVkaWF0ZShhKSxyLl9zY2hlZHVsZWQ9PT1hJiYoci5fc2NoZWR1bGVkPXZvaWQgMCkpfSx0fSkodHMpfSk7dmFyIElnLGIwZT1sKCgpPT57ZjBlKCk7SWc9KGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZSh0LHIpe3I9PT12b2lkIDAmJihyPWUubm93KSx0aGlzLnNjaGVkdWxlckFjdGlvbkN0b3I9dCx0aGlzLm5vdz1yfXJldHVybiBlLnByb3RvdHlwZS5zY2hlZHVsZT1mdW5jdGlvbih0LHIsYSl7cmV0dXJuIHI9PT12b2lkIDAmJihyPTApLG5ldyB0aGlzLnNjaGVkdWxlckFjdGlvbkN0b3IodGhpcyx0KS5zY2hlZHVsZShhLHIpfSxlLm5vdz1FZy5ub3csZX0pKCl9KTt2YXIgcnMsdWg9bCgoKT0+e1ZyKCk7YjBlKCk7cnM9KGZ1bmN0aW9uKGUpe2FyKHQsZSk7ZnVuY3Rpb24gdChyLGEpe2E9PT12b2lkIDAmJihhPUlnLm5vdyk7dmFyIGk9ZS5jYWxsKHRoaXMscixhKXx8dGhpcztyZXR1cm4gaS5hY3Rpb25zPVtdLGkuX2FjdGl2ZT0hMSxpfXJldHVybiB0LnByb3RvdHlwZS5mbHVzaD1mdW5jdGlvbihyKXt2YXIgYT10aGlzLmFjdGlvbnM7aWYodGhpcy5fYWN0aXZlKXthLnB1c2gocik7cmV0dXJufXZhciBpO3RoaXMuX2FjdGl2ZT0hMDtkbyBpZihpPXIuZXhlY3V0ZShyLnN0YXRlLHIuZGVsYXkpKWJyZWFrO3doaWxlKHI9YS5zaGlmdCgpKTtpZih0aGlzLl9hY3RpdmU9ITEsaSl7Zm9yKDtyPWEuc2hpZnQoKTspci51bnN1YnNjcmliZSgpO3Rocm93IGl9fSx0fSkoSWcpfSk7dmFyIHYwZSxiM3Q9bCgoKT0+e1ZyKCk7dWgoKTt2MGU9KGZ1bmN0aW9uKGUpe2FyKHQsZSk7ZnVuY3Rpb24gdCgpe3JldHVybiBlIT09bnVsbCYmZS5hcHBseSh0aGlzLGFyZ3VtZW50cyl8fHRoaXN9cmV0dXJuIHQucHJvdG90eXBlLmZsdXNoPWZ1bmN0aW9uKHIpe3RoaXMuX2FjdGl2ZT0hMDt2YXIgYT10aGlzLl9zY2hlZHVsZWQ7dGhpcy5fc2NoZWR1bGVkPXZvaWQgMDt2YXIgaT10aGlzLmFjdGlvbnMsbztyPXJ8fGkuc2hpZnQoKTtkbyBpZihvPXIuZXhlY3V0ZShyLnN0YXRlLHIuZGVsYXkpKWJyZWFrO3doaWxlKChyPWlbMF0pJiZyLmlkPT09YSYmaS5zaGlmdCgpKTtpZih0aGlzLl9hY3RpdmU9ITEsbyl7Zm9yKDsocj1pWzBdKSYmci5pZD09PWEmJmkuc2hpZnQoKTspci51bnN1YnNjcmliZSgpO3Rocm93IG99fSx0fSkocnMpfSk7dmFyIHYzdCxHcXIseTN0PWwoKCk9Pnt4M3QoKTtiM3QoKTt2M3Q9bmV3IHYwZSh4MGUpLEdxcj12M3R9KTt2YXIgSnMseTBlLFIzPWwoKCk9PntkaCgpO3VoKCk7SnM9bmV3IHJzKHRzKSx5MGU9SnN9KTt2YXIgdzBlLHczdD1sKCgpPT57VnIoKTtkaCgpO3cwZT0oZnVuY3Rpb24oZSl7YXIodCxlKTtmdW5jdGlvbiB0KHIsYSl7dmFyIGk9ZS5jYWxsKHRoaXMscixhKXx8dGhpcztyZXR1cm4gaS5zY2hlZHVsZXI9cixpLndvcms9YSxpfXJldHVybiB0LnByb3RvdHlwZS5zY2hlZHVsZT1mdW5jdGlvbihyLGEpe3JldHVybiBhPT09dm9pZCAwJiYoYT0wKSxhPjA/ZS5wcm90b3R5cGUuc2NoZWR1bGUuY2FsbCh0aGlzLHIsYSk6KHRoaXMuZGVsYXk9YSx0aGlzLnN0YXRlPXIsdGhpcy5zY2hlZHVsZXIuZmx1c2godGhpcyksdGhpcyl9LHQucHJvdG90eXBlLmV4ZWN1dGU9ZnVuY3Rpb24ocixhKXtyZXR1cm4gYT4wfHx0aGlzLmNsb3NlZD9lLnByb3RvdHlwZS5leGVjdXRlLmNhbGwodGhpcyxyLGEpOnRoaXMuX2V4ZWN1dGUocixhKX0sdC5wcm90b3R5cGUucmVxdWVzdEFzeW5jSWQ9ZnVuY3Rpb24ocixhLGkpe3JldHVybiBpPT09dm9pZCAwJiYoaT0wKSxpIT1udWxsJiZpPjB8fGk9PW51bGwmJnRoaXMuZGVsYXk+MD9lLnByb3RvdHlwZS5yZXF1ZXN0QXN5bmNJZC5jYWxsKHRoaXMscixhLGkpOihyLmZsdXNoKHRoaXMpLDApfSx0fSkodHMpfSk7dmFyIE0wZSxNM3Q9bCgoKT0+e1ZyKCk7dWgoKTtNMGU9KGZ1bmN0aW9uKGUpe2FyKHQsZSk7ZnVuY3Rpb24gdCgpe3JldHVybiBlIT09bnVsbCYmZS5hcHBseSh0aGlzLGFyZ3VtZW50cyl8fHRoaXN9cmV0dXJuIHR9KShycyl9KTt2YXIgazN0LFlxcixTM3Q9bCgoKT0+e3czdCgpO00zdCgpO2szdD1uZXcgTTBlKHcwZSksWXFyPWszdH0pO3ZhciBrMGUsejN0PWwoKCk9PntWcigpO2RoKCk7bDBlKCk7azBlPShmdW5jdGlvbihlKXthcih0LGUpO2Z1bmN0aW9uIHQocixhKXt2YXIgaT1lLmNhbGwodGhpcyxyLGEpfHx0aGlzO3JldHVybiBpLnNjaGVkdWxlcj1yLGkud29yaz1hLGl9cmV0dXJuIHQucHJvdG90eXBlLnJlcXVlc3RBc3luY0lkPWZ1bmN0aW9uKHIsYSxpKXtyZXR1cm4gaT09PXZvaWQgMCYmKGk9MCksaSE9PW51bGwmJmk+MD9lLnByb3RvdHlwZS5yZXF1ZXN0QXN5bmNJZC5jYWxsKHRoaXMscixhLGkpOihyLmFjdGlvbnMucHVzaCh0aGlzKSxyLl9zY2hlZHVsZWR8fChyLl9zY2hlZHVsZWQ9emwucmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCl7cmV0dXJuIHIuZmx1c2godm9pZCAwKX0pKSl9LHQucHJvdG90eXBlLnJlY3ljbGVBc3luY0lkPWZ1bmN0aW9uKHIsYSxpKXt2YXIgbztpZihpPT09dm9pZCAwJiYoaT0wKSxpIT1udWxsP2k+MDp0aGlzLmRlbGF5PjApcmV0dXJuIGUucHJvdG90eXBlLnJlY3ljbGVBc3luY0lkLmNhbGwodGhpcyxyLGEsaSk7dmFyIG49ci5hY3Rpb25zO2EhPW51bGwmJmE9PT1yLl9zY2hlZHVsZWQmJigobz1uW24ubGVuZ3RoLTFdKT09PW51bGx8fG89PT12b2lkIDA/dm9pZCAwOm8uaWQpIT09YSYmKHpsLmNhbmNlbEFuaW1hdGlvbkZyYW1lKGEpLHIuX3NjaGVkdWxlZD12b2lkIDApfSx0fSkodHMpfSk7dmFyIFMwZSxDM3Q9bCgoKT0+e1ZyKCk7dWgoKTtTMGU9KGZ1bmN0aW9uKGUpe2FyKHQsZSk7ZnVuY3Rpb24gdCgpe3JldHVybiBlIT09bnVsbCYmZS5hcHBseSh0aGlzLGFyZ3VtZW50cyl8fHRoaXN9cmV0dXJuIHQucHJvdG90eXBlLmZsdXNoPWZ1bmN0aW9uKHIpe3RoaXMuX2FjdGl2ZT0hMDt2YXIgYTtyP2E9ci5pZDooYT10aGlzLl9zY2hlZHVsZWQsdGhpcy5fc2NoZWR1bGVkPXZvaWQgMCk7dmFyIGk9dGhpcy5hY3Rpb25zLG87cj1yfHxpLnNoaWZ0KCk7ZG8gaWYobz1yLmV4ZWN1dGUoci5zdGF0ZSxyLmRlbGF5KSlicmVhazt3aGlsZSgocj1pWzBdKSYmci5pZD09PWEmJmkuc2hpZnQoKSk7aWYodGhpcy5fYWN0aXZlPSExLG8pe2Zvcig7KHI9aVswXSkmJnIuaWQ9PT1hJiZpLnNoaWZ0KCk7KXIudW5zdWJzY3JpYmUoKTt0aHJvdyBvfX0sdH0pKHJzKX0pO3ZhciBfM3QsWnFyLFQzdD1sKCgpPT57ejN0KCk7QzN0KCk7XzN0PW5ldyBTMGUoazBlKSxacXI9XzN0fSk7dmFyIEwzdCx6MGUsRDN0PWwoKCk9PntWcigpO2RoKCk7S3MoKTt1aCgpO0wzdD0oZnVuY3Rpb24oZSl7YXIodCxlKTtmdW5jdGlvbiB0KHIsYSl7cj09PXZvaWQgMCYmKHI9ejBlKSxhPT09dm9pZCAwJiYoYT0xLzApO3ZhciBpPWUuY2FsbCh0aGlzLHIsZnVuY3Rpb24oKXtyZXR1cm4gaS5mcmFtZX0pfHx0aGlzO3JldHVybiBpLm1heEZyYW1lcz1hLGkuZnJhbWU9MCxpLmluZGV4PS0xLGl9cmV0dXJuIHQucHJvdG90eXBlLmZsdXNoPWZ1bmN0aW9uKCl7Zm9yKHZhciByPXRoaXMsYT1yLmFjdGlvbnMsaT1yLm1heEZyYW1lcyxvLG47KG49YVswXSkmJm4uZGVsYXk8PWkmJihhLnNoaWZ0KCksdGhpcy5mcmFtZT1uLmRlbGF5LCEobz1uLmV4ZWN1dGUobi5zdGF0ZSxuLmRlbGF5KSkpOyk7aWYobyl7Zm9yKDtuPWEuc2hpZnQoKTspbi51bnN1YnNjcmliZSgpO3Rocm93IG99fSx0LmZyYW1lVGltZUZhY3Rvcj0xMCx0fSkocnMpLHowZT0oZnVuY3Rpb24oZSl7YXIodCxlKTtmdW5jdGlvbiB0KHIsYSxpKXtpPT09dm9pZCAwJiYoaT1yLmluZGV4Kz0xKTt2YXIgbz1lLmNhbGwodGhpcyxyLGEpfHx0aGlzO3JldHVybiBvLnNjaGVkdWxlcj1yLG8ud29yaz1hLG8uaW5kZXg9aSxvLmFjdGl2ZT0hMCxvLmluZGV4PXIuaW5kZXg9aSxvfXJldHVybiB0LnByb3RvdHlwZS5zY2hlZHVsZT1mdW5jdGlvbihyLGEpe2lmKGE9PT12b2lkIDAmJihhPTApLE51bWJlci5pc0Zpbml0ZShhKSl7aWYoIXRoaXMuaWQpcmV0dXJuIGUucHJvdG90eXBlLnNjaGVkdWxlLmNhbGwodGhpcyxyLGEpO3RoaXMuYWN0aXZlPSExO3ZhciBpPW5ldyB0KHRoaXMuc2NoZWR1bGVyLHRoaXMud29yayk7cmV0dXJuIHRoaXMuYWRkKGkpLGkuc2NoZWR1bGUocixhKX1lbHNlIHJldHVybiBRYS5FTVBUWX0sdC5wcm90b3R5cGUucmVxdWVzdEFzeW5jSWQ9ZnVuY3Rpb24ocixhLGkpe2k9PT12b2lkIDAmJihpPTApLHRoaXMuZGVsYXk9ci5mcmFtZStpO3ZhciBvPXIuYWN0aW9ucztyZXR1cm4gby5wdXNoKHRoaXMpLG8uc29ydCh0LnNvcnRBY3Rpb25zKSwxfSx0LnByb3RvdHlwZS5yZWN5Y2xlQXN5bmNJZD1mdW5jdGlvbihyLGEsaSl7aT09PXZvaWQgMCYmKGk9MCl9LHQucHJvdG90eXBlLl9leGVjdXRlPWZ1bmN0aW9uKHIsYSl7aWYodGhpcy5hY3RpdmU9PT0hMClyZXR1cm4gZS5wcm90b3R5cGUuX2V4ZWN1dGUuY2FsbCh0aGlzLHIsYSl9LHQuc29ydEFjdGlvbnM9ZnVuY3Rpb24ocixhKXtyZXR1cm4gci5kZWxheT09PWEuZGVsYXk/ci5pbmRleD09PWEuaW5kZXg/MDpyLmluZGV4PmEuaW5kZXg/MTotMTpyLmRlbGF5PmEuZGVsYXk/MTotMX0sdH0pKHRzKX0pO2Z1bmN0aW9uIFhxcihlKXtyZXR1cm4gZT9RcXIoZSk6RFh9ZnVuY3Rpb24gUXFyKGUpe3JldHVybiBuZXcgUnQoZnVuY3Rpb24odCl7cmV0dXJuIGUuc2NoZWR1bGUoZnVuY3Rpb24oKXtyZXR1cm4gdC5jb21wbGV0ZSgpfSl9KX12YXIgRFgsQVg9bCgoKT0+e3RvKCk7RFg9bmV3IFJ0KGZ1bmN0aW9uKGUpe3JldHVybiBlLmNvbXBsZXRlKCl9KX0pO2Z1bmN0aW9uIEVYKGUpe3JldHVybiBlJiZQdChlLnNjaGVkdWxlKX12YXIgQzBlPWwoKCk9PntIaSgpfSk7ZnVuY3Rpb24gXzBlKGUpe3JldHVybiBlW2UubGVuZ3RoLTFdfWZ1bmN0aW9uIEEzdChlKXtyZXR1cm4gUHQoXzBlKGUpKT9lLnBvcCgpOnZvaWQgMH1mdW5jdGlvbiBlMihlKXtyZXR1cm4gRVgoXzBlKGUpKT9lLnBvcCgpOnZvaWQgMH1mdW5jdGlvbiBta2EoZSx0KXtyZXR1cm4gdHlwZW9mIF8wZShlKT09Im51bWJlciI/ZS5wb3AoKTp0fXZhciBmaD1sKCgpPT57SGkoKTtDMGUoKX0pO3ZhciBwaCwkWD1sKCgpPT57cGg9KGZ1bmN0aW9uKGUpe3JldHVybiBlJiZ0eXBlb2YgZS5sZW5ndGg9PSJudW1iZXIiJiZ0eXBlb2YgZSE9ImZ1bmN0aW9uIn0pfSk7ZnVuY3Rpb24gUFgoZSl7cmV0dXJuIFB0KGU/LnRoZW4pfXZhciBUMGU9bCgoKT0+e0hpKCl9KTtmdW5jdGlvbiBJWChlKXtyZXR1cm4gUHQoZVtPM10pfXZhciBMMGU9bCgoKT0+e0RnKCk7SGkoKX0pO2Z1bmN0aW9uIE5YKGUpe3JldHVybiBTeW1ib2wuYXN5bmNJdGVyYXRvciYmUHQoZT8uW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSl9dmFyIEQwZT1sKCgpPT57SGkoKX0pO2Z1bmN0aW9uIEZYKGUpe3JldHVybiBuZXcgVHlwZUVycm9yKCJZb3UgcHJvdmlkZWQgIisoZSE9PW51bGwmJnR5cGVvZiBlPT0ib2JqZWN0Ij8iYW4gaW52YWxpZCBvYmplY3QiOiInIitlKyInIikrIiB3aGVyZSBhIHN0cmVhbSB3YXMgZXhwZWN0ZWQuIFlvdSBjYW4gcHJvdmlkZSBhbiBPYnNlcnZhYmxlLCBQcm9taXNlLCBSZWFkYWJsZVN0cmVhbSwgQXJyYXksIEFzeW5jSXRlcmFibGUsIG9yIEl0ZXJhYmxlLiIpfXZhciBBMGU9bCgoKT0+e30pO2Z1bmN0aW9uIEtxcigpe3JldHVybiB0eXBlb2YgU3ltYm9sIT0iZnVuY3Rpb24ifHwhU3ltYm9sLml0ZXJhdG9yPyJAQGl0ZXJhdG9yIjpTeW1ib2wuaXRlcmF0b3J9dmFyIE9YLEUwZT1sKCgpPT57T1g9S3FyKCl9KTtmdW5jdGlvbiBSWChlKXtyZXR1cm4gUHQoZT8uW09YXSl9dmFyICQwZT1sKCgpPT57RTBlKCk7SGkoKX0pO2Z1bmN0aW9uIEJYKGUpe3JldHVybiBaY2UodGhpcyxhcmd1bWVudHMsZnVuY3Rpb24oKXt2YXIgcixhLGksbztyZXR1cm4gX2codGhpcyxmdW5jdGlvbihuKXtzd2l0Y2gobi5sYWJlbCl7Y2FzZSAwOnI9ZS5nZXRSZWFkZXIoKSxuLmxhYmVsPTE7Y2FzZSAxOm4udHJ5cy5wdXNoKFsxLCw5LDEwXSksbi5sYWJlbD0yO2Nhc2UgMjpyZXR1cm5bNCxTbChyLnJlYWQoKSldO2Nhc2UgMzpyZXR1cm4gYT1uLnNlbnQoKSxpPWEudmFsdWUsbz1hLmRvbmUsbz9bNCxTbCh2b2lkIDApXTpbMyw1XTtjYXNlIDQ6cmV0dXJuWzIsbi5zZW50KCldO2Nhc2UgNTpyZXR1cm5bNCxTbChpKV07Y2FzZSA2OnJldHVybls0LG4uc2VudCgpXTtjYXNlIDc6cmV0dXJuIG4uc2VudCgpLFszLDJdO2Nhc2UgODpyZXR1cm5bMywxMF07Y2FzZSA5OnJldHVybiByLnJlbGVhc2VMb2NrKCksWzddO2Nhc2UgMTA6cmV0dXJuWzJdfX0pfSl9ZnVuY3Rpb24gSFgoZSl7cmV0dXJuIFB0KGU/LmdldFJlYWRlcil9dmFyIHFYPWwoKCk9PntWcigpO0hpKCl9KTtmdW5jdGlvbiBiYShlKXtpZihlIGluc3RhbmNlb2YgUnQpcmV0dXJuIGU7aWYoZSE9bnVsbCl7aWYoSVgoZSkpcmV0dXJuIEpxcihlKTtpZihwaChlKSlyZXR1cm4gZWpyKGUpO2lmKFBYKGUpKXJldHVybiB0anIoZSk7aWYoTlgoZSkpcmV0dXJuIEUzdChlKTtpZihSWChlKSlyZXR1cm4gcmpyKGUpO2lmKEhYKGUpKXJldHVybiBhanIoZSl9dGhyb3cgRlgoZSl9ZnVuY3Rpb24gSnFyKGUpe3JldHVybiBuZXcgUnQoZnVuY3Rpb24odCl7dmFyIHI9ZVtPM10oKTtpZihQdChyLnN1YnNjcmliZSkpcmV0dXJuIHIuc3Vic2NyaWJlKHQpO3Rocm93IG5ldyBUeXBlRXJyb3IoIlByb3ZpZGVkIG9iamVjdCBkb2VzIG5vdCBjb3JyZWN0bHkgaW1wbGVtZW50IFN5bWJvbC5vYnNlcnZhYmxlIil9KX1mdW5jdGlvbiBlanIoZSl7cmV0dXJuIG5ldyBSdChmdW5jdGlvbih0KXtmb3IodmFyIHI9MDtyPGUubGVuZ3RoJiYhdC5jbG9zZWQ7cisrKXQubmV4dChlW3JdKTt0LmNvbXBsZXRlKCl9KX1mdW5jdGlvbiB0anIoZSl7cmV0dXJuIG5ldyBSdChmdW5jdGlvbih0KXtlLnRoZW4oZnVuY3Rpb24ocil7dC5jbG9zZWR8fCh0Lm5leHQociksdC5jb21wbGV0ZSgpKX0sZnVuY3Rpb24ocil7cmV0dXJuIHQuZXJyb3Iocil9KS50aGVuKG51bGwsU1gpfSl9ZnVuY3Rpb24gcmpyKGUpe3JldHVybiBuZXcgUnQoZnVuY3Rpb24odCl7dmFyIHIsYTt0cnl7Zm9yKHZhciBpPXcxKGUpLG89aS5uZXh0KCk7IW8uZG9uZTtvPWkubmV4dCgpKXt2YXIgbj1vLnZhbHVlO2lmKHQubmV4dChuKSx0LmNsb3NlZClyZXR1cm59fWNhdGNoKHMpe3I9e2Vycm9yOnN9fWZpbmFsbHl7dHJ5e28mJiFvLmRvbmUmJihhPWkucmV0dXJuKSYmYS5jYWxsKGkpfWZpbmFsbHl7aWYocil0aHJvdyByLmVycm9yfX10LmNvbXBsZXRlKCl9KX1mdW5jdGlvbiBFM3QoZSl7cmV0dXJuIG5ldyBSdChmdW5jdGlvbih0KXtpanIoZSx0KS5jYXRjaChmdW5jdGlvbihyKXtyZXR1cm4gdC5lcnJvcihyKX0pfSl9ZnVuY3Rpb24gYWpyKGUpe3JldHVybiBFM3QoQlgoZSkpfWZ1bmN0aW9uIGlqcihlLHQpe3ZhciByLGEsaSxvO3JldHVybiBZY2UodGhpcyx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7dmFyIG4scztyZXR1cm4gX2codGhpcyxmdW5jdGlvbihjKXtzd2l0Y2goYy5sYWJlbCl7Y2FzZSAwOmMudHJ5cy5wdXNoKFswLDUsNiwxMV0pLHI9WGNlKGUpLGMubGFiZWw9MTtjYXNlIDE6cmV0dXJuWzQsci5uZXh0KCldO2Nhc2UgMjppZihhPWMuc2VudCgpLCEhYS5kb25lKXJldHVyblszLDRdO2lmKG49YS52YWx1ZSx0Lm5leHQobiksdC5jbG9zZWQpcmV0dXJuWzJdO2MubGFiZWw9MztjYXNlIDM6cmV0dXJuWzMsMV07Y2FzZSA0OnJldHVyblszLDExXTtjYXNlIDU6cmV0dXJuIHM9Yy5zZW50KCksaT17ZXJyb3I6c30sWzMsMTFdO2Nhc2UgNjpyZXR1cm4gYy50cnlzLnB1c2goWzYsLDksMTBdKSxhJiYhYS5kb25lJiYobz1yLnJldHVybik/WzQsby5jYWxsKHIpXTpbMyw4XTtjYXNlIDc6Yy5zZW50KCksYy5sYWJlbD04O2Nhc2UgODpyZXR1cm5bMywxMF07Y2FzZSA5OmlmKGkpdGhyb3cgaS5lcnJvcjtyZXR1cm5bN107Y2FzZSAxMDpyZXR1cm5bN107Y2FzZSAxMTpyZXR1cm4gdC5jb21wbGV0ZSgpLFsyXX19KX0pfXZhciBIbz1sKCgpPT57VnIoKTskWCgpO1QwZSgpO3RvKCk7TDBlKCk7RDBlKCk7QTBlKCk7JDBlKCk7cVgoKTtIaSgpO2UwZSgpO0RnKCl9KTtmdW5jdGlvbiBNaShlLHQscixhLGkpe2E9PT12b2lkIDAmJihhPTApLGk9PT12b2lkIDAmJihpPSExKTt2YXIgbz10LnNjaGVkdWxlKGZ1bmN0aW9uKCl7cigpLGk/ZS5hZGQodGhpcy5zY2hlZHVsZShudWxsLGEpKTp0aGlzLnVuc3Vic2NyaWJlKCl9LGEpO2lmKGUuYWRkKG8pLCFpKXJldHVybiBvfXZhciB1MD1sKCgpPT57fSk7ZnVuY3Rpb24gaGgoZSx0KXtyZXR1cm4gdD09PXZvaWQgMCYmKHQ9MCksRXIoZnVuY3Rpb24ocixhKXtyLnN1YnNjcmliZShNcihhLGZ1bmN0aW9uKGkpe3JldHVybiBNaShhLGUsZnVuY3Rpb24oKXtyZXR1cm4gYS5uZXh0KGkpfSx0KX0sZnVuY3Rpb24oKXtyZXR1cm4gTWkoYSxlLGZ1bmN0aW9uKCl7cmV0dXJuIGEuY29tcGxldGUoKX0sdCl9LGZ1bmN0aW9uKGkpe3JldHVybiBNaShhLGUsZnVuY3Rpb24oKXtyZXR1cm4gYS5lcnJvcihpKX0sdCl9KSl9KX12YXIgTmc9bCgoKT0+e3UwKCk7cWkoKTtNMSgpfSk7ZnVuY3Rpb24gbWgoZSx0KXtyZXR1cm4gdD09PXZvaWQgMCYmKHQ9MCksRXIoZnVuY3Rpb24ocixhKXthLmFkZChlLnNjaGVkdWxlKGZ1bmN0aW9uKCl7cmV0dXJuIHIuc3Vic2NyaWJlKGEpfSx0KSl9KX12YXIgRmc9bCgoKT0+e3FpKCl9KTtmdW5jdGlvbiAkM3QoZSx0KXtyZXR1cm4gYmEoZSkucGlwZShtaCh0KSxoaCh0KSl9dmFyIFAzdD1sKCgpPT57SG8oKTtOZygpO0ZnKCl9KTtmdW5jdGlvbiBJM3QoZSx0KXtyZXR1cm4gYmEoZSkucGlwZShtaCh0KSxoaCh0KSl9dmFyIE4zdD1sKCgpPT57SG8oKTtOZygpO0ZnKCl9KTtmdW5jdGlvbiBGM3QoZSx0KXtyZXR1cm4gbmV3IFJ0KGZ1bmN0aW9uKHIpe3ZhciBhPTA7cmV0dXJuIHQuc2NoZWR1bGUoZnVuY3Rpb24oKXthPT09ZS5sZW5ndGg/ci5jb21wbGV0ZSgpOihyLm5leHQoZVthKytdKSxyLmNsb3NlZHx8dGhpcy5zY2hlZHVsZSgpKX0pfSl9dmFyIE8zdD1sKCgpPT57dG8oKX0pO2Z1bmN0aW9uIFIzdChlLHQpe3JldHVybiBuZXcgUnQoZnVuY3Rpb24ocil7dmFyIGE7cmV0dXJuIE1pKHIsdCxmdW5jdGlvbigpe2E9ZVtPWF0oKSxNaShyLHQsZnVuY3Rpb24oKXt2YXIgaSxvLG47dHJ5e2k9YS5uZXh0KCksbz1pLnZhbHVlLG49aS5kb25lfWNhdGNoKHMpe3IuZXJyb3Iocyk7cmV0dXJufW4/ci5jb21wbGV0ZSgpOnIubmV4dChvKX0sMCwhMCl9KSxmdW5jdGlvbigpe3JldHVybiBQdChhPy5yZXR1cm4pJiZhLnJldHVybigpfX0pfXZhciBCM3Q9bCgoKT0+e3RvKCk7RTBlKCk7SGkoKTt1MCgpfSk7ZnVuY3Rpb24galgoZSx0KXtpZighZSl0aHJvdyBuZXcgRXJyb3IoIkl0ZXJhYmxlIGNhbm5vdCBiZSBudWxsIik7cmV0dXJuIG5ldyBSdChmdW5jdGlvbihyKXtNaShyLHQsZnVuY3Rpb24oKXt2YXIgYT1lW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSgpO01pKHIsdCxmdW5jdGlvbigpe2EubmV4dCgpLnRoZW4oZnVuY3Rpb24oaSl7aS5kb25lP3IuY29tcGxldGUoKTpyLm5leHQoaS52YWx1ZSl9KX0sMCwhMCl9KX0pfXZhciBQMGU9bCgoKT0+e3RvKCk7dTAoKX0pO2Z1bmN0aW9uIEgzdChlLHQpe3JldHVybiBqWChCWChlKSx0KX12YXIgcTN0PWwoKCk9PntQMGUoKTtxWCgpfSk7ZnVuY3Rpb24gSTBlKGUsdCl7aWYoZSE9bnVsbCl7aWYoSVgoZSkpcmV0dXJuICQzdChlLHQpO2lmKHBoKGUpKXJldHVybiBGM3QoZSx0KTtpZihQWChlKSlyZXR1cm4gSTN0KGUsdCk7aWYoTlgoZSkpcmV0dXJuIGpYKGUsdCk7aWYoUlgoZSkpcmV0dXJuIFIzdChlLHQpO2lmKEhYKGUpKXJldHVybiBIM3QoZSx0KX10aHJvdyBGWChlKX12YXIgTjBlPWwoKCk9PntQM3QoKTtOM3QoKTtPM3QoKTtCM3QoKTtQMGUoKTtMMGUoKTtUMGUoKTskWCgpOyQwZSgpO0QwZSgpO0EwZSgpO3FYKCk7cTN0KCl9KTtmdW5jdGlvbiB0MihlLHQpe3JldHVybiB0P0kwZShlLHQpOmJhKGUpfXZhciBPZz1sKCgpPT57TjBlKCk7SG8oKX0pO2Z1bmN0aW9uIFJnKCl7Zm9yKHZhciBlPVtdLHQ9MDt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKWVbdF09YXJndW1lbnRzW3RdO3ZhciByPWUyKGUpO3JldHVybiB0MihlLHIpfXZhciBGMGU9bCgoKT0+e2ZoKCk7T2coKX0pO2Z1bmN0aW9uIE8wZShlLHQpe3ZhciByPVB0KGUpP2U6ZnVuY3Rpb24oKXtyZXR1cm4gZX0sYT1mdW5jdGlvbihpKXtyZXR1cm4gaS5lcnJvcihyKCkpfTtyZXR1cm4gbmV3IFJ0KHQ/ZnVuY3Rpb24oaSl7cmV0dXJuIHQuc2NoZWR1bGUoYSwwLGkpfTphKX12YXIgUjBlPWwoKCk9Pnt0bygpO0hpKCl9KTtmdW5jdGlvbiBvanIoZSx0KXt2YXIgcixhLGksbz1lLG49by5raW5kLHM9by52YWx1ZSxjPW8uZXJyb3I7aWYodHlwZW9mIG4hPSJzdHJpbmciKXRocm93IG5ldyBUeXBlRXJyb3IoJ0ludmFsaWQgbm90aWZpY2F0aW9uLCBtaXNzaW5nICJraW5kIicpO249PT0iTiI/KHI9dC5uZXh0KT09PW51bGx8fHI9PT12b2lkIDB8fHIuY2FsbCh0LHMpOm49PT0iRSI/KGE9dC5lcnJvcik9PT1udWxsfHxhPT09dm9pZCAwfHxhLmNhbGwodCxjKTooaT10LmNvbXBsZXRlKT09PW51bGx8fGk9PT12b2lkIDB8fGkuY2FsbCh0KX12YXIgQjBlLGozdCxWM3Q9bCgoKT0+e0FYKCk7RjBlKCk7UjBlKCk7SGkoKTsoZnVuY3Rpb24oZSl7ZS5ORVhUPSJOIixlLkVSUk9SPSJFIixlLkNPTVBMRVRFPSJDIn0pKEIwZXx8KEIwZT17fSkpO2ozdD0oZnVuY3Rpb24oKXtmdW5jdGlvbiBlKHQscixhKXt0aGlzLmtpbmQ9dCx0aGlzLnZhbHVlPXIsdGhpcy5lcnJvcj1hLHRoaXMuaGFzVmFsdWU9dD09PSJOIn1yZXR1cm4gZS5wcm90b3R5cGUub2JzZXJ2ZT1mdW5jdGlvbih0KXtyZXR1cm4gb2pyKHRoaXMsdCl9LGUucHJvdG90eXBlLmRvPWZ1bmN0aW9uKHQscixhKXt2YXIgaT10aGlzLG89aS5raW5kLG49aS52YWx1ZSxzPWkuZXJyb3I7cmV0dXJuIG89PT0iTiI/dD8uKG4pOm89PT0iRSI/cj8uKHMpOmE/LigpfSxlLnByb3RvdHlwZS5hY2NlcHQ9ZnVuY3Rpb24odCxyLGEpe3ZhciBpO3JldHVybiBQdCgoaT10KT09PW51bGx8fGk9PT12b2lkIDA/dm9pZCAwOmkubmV4dCk/dGhpcy5vYnNlcnZlKHQpOnRoaXMuZG8odCxyLGEpfSxlLnByb3RvdHlwZS50b09ic2VydmFibGU9ZnVuY3Rpb24oKXt2YXIgdD10aGlzLHI9dC5raW5kLGE9dC52YWx1ZSxpPXQuZXJyb3Isbz1yPT09Ik4iP1JnKGEpOnI9PT0iRSI/TzBlKGZ1bmN0aW9uKCl7cmV0dXJuIGl9KTpyPT09IkMiP0RYOjA7aWYoIW8pdGhyb3cgbmV3IFR5cGVFcnJvcigiVW5leHBlY3RlZCBub3RpZmljYXRpb24ga2luZCAiK3IpO3JldHVybiBvfSxlLmNyZWF0ZU5leHQ9ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBlKCJOIix0KX0sZS5jcmVhdGVFcnJvcj1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IGUoIkUiLHZvaWQgMCx0KX0sZS5jcmVhdGVDb21wbGV0ZT1mdW5jdGlvbigpe3JldHVybiBlLmNvbXBsZXRlTm90aWZpY2F0aW9ufSxlLmNvbXBsZXRlTm90aWZpY2F0aW9uPW5ldyBlKCJDIiksZX0pKCl9KTt2YXIgVTN0PWwoKCk9Pnt9KTt2YXIgbmpyLFczdD1sKCgpPT57bDAoKTtuanI9X28oZnVuY3Rpb24oZSl7cmV0dXJuIGZ1bmN0aW9uKCl7ZSh0aGlzKSx0aGlzLm5hbWU9IkVtcHR5RXJyb3IiLHRoaXMubWVzc2FnZT0ibm8gZWxlbWVudHMgaW4gc2VxdWVuY2UifX0pfSk7dmFyIEczdD1sKCgpPT57fSk7dmFyIFkzdD1sKCgpPT57fSk7dmFyIHNqcixaM3Q9bCgoKT0+e2wwKCk7c2pyPV9vKGZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbigpe2UodGhpcyksdGhpcy5uYW1lPSJBcmd1bWVudE91dE9mUmFuZ2VFcnJvciIsdGhpcy5tZXNzYWdlPSJhcmd1bWVudCBvdXQgb2YgcmFuZ2UifX0pfSk7dmFyIGxqcixYM3Q9bCgoKT0+e2wwKCk7bGpyPV9vKGZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbihyKXtlKHRoaXMpLHRoaXMubmFtZT0iTm90Rm91bmRFcnJvciIsdGhpcy5tZXNzYWdlPXJ9fSl9KTt2YXIgY2pyLFEzdD1sKCgpPT57bDAoKTtjanI9X28oZnVuY3Rpb24oZSl7cmV0dXJuIGZ1bmN0aW9uKHIpe2UodGhpcyksdGhpcy5uYW1lPSJTZXF1ZW5jZUVycm9yIix0aGlzLm1lc3NhZ2U9cn19KX0pO2Z1bmN0aW9uIFZYKGUpe3JldHVybiBlIGluc3RhbmNlb2YgRGF0ZSYmIWlzTmFOKGUpfXZhciBIMGU9bCgoKT0+e30pO2Z1bmN0aW9uIEozdChlLHQpe3ZhciByPVZYKGUpP3tmaXJzdDplfTp0eXBlb2YgZT09Im51bWJlciI/e2VhY2g6ZX06ZSxhPXIuZmlyc3QsaT1yLmVhY2gsbz1yLndpdGgsbj1vPT09dm9pZCAwP2RqcjpvLHM9ci5zY2hlZHVsZXIsYz1zPT09dm9pZCAwP3Q/P0pzOnMsZD1yLm1ldGEsZj1kPT09dm9pZCAwP251bGw6ZDtpZihhPT1udWxsJiZpPT1udWxsKXRocm93IG5ldyBUeXBlRXJyb3IoIk5vIHRpbWVvdXQgcHJvdmlkZWQuIik7cmV0dXJuIEVyKGZ1bmN0aW9uKHUscCl7dmFyIGgsYix4PW51bGwsZz0wLHY9ZnVuY3Rpb24odyl7Yj1NaShwLGMsZnVuY3Rpb24oKXt0cnl7aC51bnN1YnNjcmliZSgpLGJhKG4oe21ldGE6ZixsYXN0VmFsdWU6eCxzZWVuOmd9KSkuc3Vic2NyaWJlKHApfWNhdGNoKE0pe3AuZXJyb3IoTSl9fSx3KX07aD11LnN1YnNjcmliZShNcihwLGZ1bmN0aW9uKHcpe2I/LnVuc3Vic2NyaWJlKCksZysrLHAubmV4dCh4PXcpLGk+MCYmdihpKX0sdm9pZCAwLHZvaWQgMCxmdW5jdGlvbigpe2I/LmNsb3NlZHx8Yj8udW5zdWJzY3JpYmUoKSx4PW51bGx9KSksIWcmJnYoYSE9bnVsbD90eXBlb2YgYT09Im51bWJlciI/YTorYS1jLm5vdygpOmkpfSl9ZnVuY3Rpb24gZGpyKGUpe3Rocm93IG5ldyBLM3QoZSl9dmFyIEszdCxVWD1sKCgpPT57UjMoKTtIMGUoKTtxaSgpO0hvKCk7bDAoKTtNMSgpO3UwKCk7SzN0PV9vKGZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbihyKXtyPT09dm9pZCAwJiYocj1udWxsKSxlKHRoaXMpLHRoaXMubWVzc2FnZT0iVGltZW91dCBoYXMgb2NjdXJyZWQiLHRoaXMubmFtZT0iVGltZW91dEVycm9yIix0aGlzLmluZm89cn19KX0pO2Z1bmN0aW9uIHIyKGUsdCl7cmV0dXJuIEVyKGZ1bmN0aW9uKHIsYSl7dmFyIGk9MDtyLnN1YnNjcmliZShNcihhLGZ1bmN0aW9uKG8pe2EubmV4dChlLmNhbGwodCxvLGkrKykpfSkpfSl9dmFyIEJnPWwoKCk9PntxaSgpO00xKCl9KTtmdW5jdGlvbiBmanIoZSx0KXtyZXR1cm4gdWpyKHQpP2UuYXBwbHkodm9pZCAwLHdpKFtdLE9hKHQpKSk6ZSh0KX1mdW5jdGlvbiBXWChlKXtyZXR1cm4gcjIoZnVuY3Rpb24odCl7cmV0dXJuIGZqcihlLHQpfSl9dmFyIHVqcixxMGU9bCgoKT0+e1ZyKCk7QmcoKTt1anI9QXJyYXkuaXNBcnJheX0pO3ZhciBlZHQ9bCgoKT0+e30pO3ZhciB0ZHQ9bCgoKT0+e30pO2Z1bmN0aW9uIHJkdChlKXtpZihlLmxlbmd0aD09PTEpe3ZhciB0PWVbMF07aWYocGpyKHQpKXJldHVybnthcmdzOnQsa2V5czpudWxsfTtpZih4anIodCkpe3ZhciByPWdqcih0KTtyZXR1cm57YXJnczpyLm1hcChmdW5jdGlvbihhKXtyZXR1cm4gdFthXX0pLGtleXM6cn19fXJldHVybnthcmdzOmUsa2V5czpudWxsfX1mdW5jdGlvbiB4anIoZSl7cmV0dXJuIGUmJnR5cGVvZiBlPT0ib2JqZWN0IiYmaGpyKGUpPT09bWpyfXZhciBwanIsaGpyLG1qcixnanIsYWR0PWwoKCk9PntwanI9QXJyYXkuaXNBcnJheSxoanI9T2JqZWN0LmdldFByb3RvdHlwZU9mLG1qcj1PYmplY3QucHJvdG90eXBlLGdqcj1PYmplY3Qua2V5c30pO2Z1bmN0aW9uIGlkdChlLHQpe3JldHVybiBlLnJlZHVjZShmdW5jdGlvbihyLGEsaSl7cmV0dXJuIHJbYV09dFtpXSxyfSx7fSl9dmFyIG9kdD1sKCgpPT57fSk7ZnVuY3Rpb24gajBlKCl7Zm9yKHZhciBlPVtdLHQ9MDt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKWVbdF09YXJndW1lbnRzW3RdO3ZhciByPWUyKGUpLGE9QTN0KGUpLGk9cmR0KGUpLG89aS5hcmdzLG49aS5rZXlzO2lmKG8ubGVuZ3RoPT09MClyZXR1cm4gdDIoW10scik7dmFyIHM9bmV3IFJ0KGJqcihvLHIsbj9mdW5jdGlvbihjKXtyZXR1cm4gaWR0KG4sYyl9OmQwKSk7cmV0dXJuIGE/cy5waXBlKFdYKGEpKTpzfWZ1bmN0aW9uIGJqcihlLHQscil7cmV0dXJuIHI9PT12b2lkIDAmJihyPWQwKSxmdW5jdGlvbihhKXtuZHQodCxmdW5jdGlvbigpe2Zvcih2YXIgaT1lLmxlbmd0aCxvPW5ldyBBcnJheShpKSxuPWkscz1pLGM9ZnVuY3Rpb24oZil7bmR0KHQsZnVuY3Rpb24oKXt2YXIgdT10MihlW2ZdLHQpLHA9ITE7dS5zdWJzY3JpYmUoTXIoYSxmdW5jdGlvbihoKXtvW2ZdPWgscHx8KHA9ITAscy0tKSxzfHxhLm5leHQocihvLnNsaWNlKCkpKX0sZnVuY3Rpb24oKXstLW58fGEuY29tcGxldGUoKX0pKX0sYSl9LGQ9MDtkPGk7ZCsrKWMoZCl9LGEpfX1mdW5jdGlvbiBuZHQoZSx0LHIpe2U/TWkocixlLHQpOnQoKX12YXIgc2R0PWwoKCk9Pnt0bygpO2FkdCgpO09nKCk7QWcoKTtxMGUoKTtmaCgpO29kdCgpO00xKCk7dTAoKX0pO2Z1bmN0aW9uIGxkdChlLHQscixhLGksbyxuLHMpe3ZhciBjPVtdLGQ9MCxmPTAsdT0hMSxwPWZ1bmN0aW9uKCl7dSYmIWMubGVuZ3RoJiYhZCYmdC5jb21wbGV0ZSgpfSxoPWZ1bmN0aW9uKHgpe3JldHVybiBkPGE/Yih4KTpjLnB1c2goeCl9LGI9ZnVuY3Rpb24oeCl7byYmdC5uZXh0KHgpLGQrKzt2YXIgZz0hMTtiYShyKHgsZisrKSkuc3Vic2NyaWJlKE1yKHQsZnVuY3Rpb24odil7aT8uKHYpLG8/aCh2KTp0Lm5leHQodil9LGZ1bmN0aW9uKCl7Zz0hMH0sdm9pZCAwLGZ1bmN0aW9uKCl7aWYoZyl0cnl7ZC0tO2Zvcih2YXIgdj1mdW5jdGlvbigpe3ZhciB3PWMuc2hpZnQoKTtuP01pKHQsbixmdW5jdGlvbigpe3JldHVybiBiKHcpfSk6Yih3KX07Yy5sZW5ndGgmJmQ8YTspdigpO3AoKX1jYXRjaCh3KXt0LmVycm9yKHcpfX0pKX07cmV0dXJuIGUuc3Vic2NyaWJlKE1yKHQsaCxmdW5jdGlvbigpe3U9ITAscCgpfSkpLGZ1bmN0aW9uKCl7cz8uKCl9fXZhciBjZHQ9bCgoKT0+e0hvKCk7dTAoKTtNMSgpfSk7ZnVuY3Rpb24gQjMoZSx0LHIpe3JldHVybiByPT09dm9pZCAwJiYocj0xLzApLFB0KHQpP0IzKGZ1bmN0aW9uKGEsaSl7cmV0dXJuIHIyKGZ1bmN0aW9uKG8sbil7cmV0dXJuIHQoYSxvLGksbil9KShiYShlKGEsaSkpKX0scik6KHR5cGVvZiB0PT0ibnVtYmVyIiYmKHI9dCksRXIoZnVuY3Rpb24oYSxpKXtyZXR1cm4gbGR0KGEsaSxlLHIpfSkpfXZhciBIZz1sKCgpPT57QmcoKTtIbygpO3FpKCk7Y2R0KCk7SGkoKX0pO2Z1bmN0aW9uIEdYKGUpe3JldHVybiBlPT09dm9pZCAwJiYoZT0xLzApLEIzKGQwLGUpfXZhciBZWD1sKCgpPT57SGcoKTtBZygpfSk7ZnVuY3Rpb24gWlgoKXtyZXR1cm4gR1goMSl9dmFyIFhYPWwoKCk9PntZWCgpfSk7ZnVuY3Rpb24gUVgoKXtmb3IodmFyIGU9W10sdD0wO3Q8YXJndW1lbnRzLmxlbmd0aDt0KyspZVt0XT1hcmd1bWVudHNbdF07cmV0dXJuIFpYKCkodDIoZSxlMihlKSkpfXZhciBWMGU9bCgoKT0+e1hYKCk7ZmgoKTtPZygpfSk7dmFyIGRkdD1sKCgpPT57fSk7dmFyIHVkdD1sKCgpPT57fSk7dmFyIGZkdD1sKCgpPT57fSk7ZnVuY3Rpb24gSDMoZSx0LHIsYSl7aWYoUHQocikmJihhPXIscj12b2lkIDApLGEpcmV0dXJuIEgzKGUsdCxyKS5waXBlKFdYKGEpKTt2YXIgaT1PYShTanIoZSk/eWpyLm1hcChmdW5jdGlvbihzKXtyZXR1cm4gZnVuY3Rpb24oYyl7cmV0dXJuIGVbc10odCxjLHIpfX0pOk1qcihlKT92anIubWFwKHBkdChlLHQpKTpranIoZSk/d2pyLm1hcChwZHQoZSx0KSk6W10sMiksbz1pWzBdLG49aVsxXTtpZighbyYmcGgoZSkpcmV0dXJuIEIzKGZ1bmN0aW9uKHMpe3JldHVybiBIMyhzLHQscil9KShiYShlKSk7aWYoIW8pdGhyb3cgbmV3IFR5cGVFcnJvcigiSW52YWxpZCBldmVudCB0YXJnZXQiKTtyZXR1cm4gbmV3IFJ0KGZ1bmN0aW9uKHMpe3ZhciBjPWZ1bmN0aW9uKCl7Zm9yKHZhciBkPVtdLGY9MDtmPGFyZ3VtZW50cy5sZW5ndGg7ZisrKWRbZl09YXJndW1lbnRzW2ZdO3JldHVybiBzLm5leHQoMTxkLmxlbmd0aD9kOmRbMF0pfTtyZXR1cm4gbyhjKSxmdW5jdGlvbigpe3JldHVybiBuKGMpfX0pfWZ1bmN0aW9uIHBkdChlLHQpe3JldHVybiBmdW5jdGlvbihyKXtyZXR1cm4gZnVuY3Rpb24oYSl7cmV0dXJuIGVbcl0odCxhKX19fWZ1bmN0aW9uIE1qcihlKXtyZXR1cm4gUHQoZS5hZGRMaXN0ZW5lcikmJlB0KGUucmVtb3ZlTGlzdGVuZXIpfWZ1bmN0aW9uIGtqcihlKXtyZXR1cm4gUHQoZS5vbikmJlB0KGUub2ZmKX1mdW5jdGlvbiBTanIoZSl7cmV0dXJuIFB0KGUuYWRkRXZlbnRMaXN0ZW5lcikmJlB0KGUucmVtb3ZlRXZlbnRMaXN0ZW5lcil9dmFyIHZqcix5anIsd2pyLGhkdD1sKCgpPT57VnIoKTtIbygpO3RvKCk7SGcoKTskWCgpO0hpKCk7cTBlKCk7dmpyPVsiYWRkTGlzdGVuZXIiLCJyZW1vdmVMaXN0ZW5lciJdLHlqcj1bImFkZEV2ZW50TGlzdGVuZXIiLCJyZW1vdmVFdmVudExpc3RlbmVyIl0sd2pyPVsib24iLCJvZmYiXX0pO3ZhciBtZHQ9bCgoKT0+e30pO3ZhciBnZHQ9bCgoKT0+e30pO3ZhciB4ZHQ9bCgoKT0+e30pO2Z1bmN0aW9uIFUwZShlLHQscil7ZT09PXZvaWQgMCYmKGU9MCkscj09PXZvaWQgMCYmKHI9eTBlKTt2YXIgYT0tMTtyZXR1cm4gdCE9bnVsbCYmKEVYKHQpP3I9dDphPXQpLG5ldyBSdChmdW5jdGlvbihpKXt2YXIgbz1WWChlKT8rZS1yLm5vdygpOmU7bzwwJiYobz0wKTt2YXIgbj0wO3JldHVybiByLnNjaGVkdWxlKGZ1bmN0aW9uKCl7aS5jbG9zZWR8fChpLm5leHQobisrKSwwPD1hP3RoaXMuc2NoZWR1bGUodm9pZCAwLGEpOmkuY29tcGxldGUoKSl9LG8pfSl9dmFyIFcwZT1sKCgpPT57dG8oKTtSMygpO0MwZSgpO0gwZSgpfSk7dmFyIGJkdD1sKCgpPT57fSk7dmFyIHZkdD1sKCgpPT57fSk7ZnVuY3Rpb24gempyKCl7cmV0dXJuIHlkdH12YXIgeWR0LEcwZT1sKCgpPT57dG8oKTtJMygpO3lkdD1uZXcgUnQoeG4pfSk7dmFyIHdkdD1sKCgpPT57fSk7dmFyIE1kdD1sKCgpPT57fSk7ZnVuY3Rpb24gS1goZSx0KXtyZXR1cm4gRXIoZnVuY3Rpb24ocixhKXt2YXIgaT0wO3Iuc3Vic2NyaWJlKE1yKGEsZnVuY3Rpb24obyl7cmV0dXJuIGUuY2FsbCh0LG8saSsrKSYmYS5uZXh0KG8pfSkpfSl9dmFyIFkwZT1sKCgpPT57cWkoKTtNMSgpfSk7dmFyIGtkdD1sKCgpPT57fSk7dmFyIFNkdD1sKCgpPT57fSk7dmFyIHpkdD1sKCgpPT57fSk7dmFyIENkdD1sKCgpPT57fSk7dmFyIF9kdD1sKCgpPT57fSk7dmFyIFRkdD1sKCgpPT57fSk7dmFyIFowZT1sKCgpPT57fSk7dmFyIFgwZT1sKCgpPT57fSk7ZnVuY3Rpb24gSlgoZSl7cmV0dXJuIEVyKGZ1bmN0aW9uKHQscil7dmFyIGE9W107cmV0dXJuIHQuc3Vic2NyaWJlKE1yKHIsZnVuY3Rpb24oaSl7cmV0dXJuIGEucHVzaChpKX0sZnVuY3Rpb24oKXtyLm5leHQoYSksci5jb21wbGV0ZSgpfSkpLGJhKGUpLnN1YnNjcmliZShNcihyLGZ1bmN0aW9uKCl7dmFyIGk9YTthPVtdLHIubmV4dChpKX0seG4pKSxmdW5jdGlvbigpe2E9bnVsbH19KX12YXIgUTBlPWwoKCk9PntxaSgpO0kzKCk7TTEoKTtIbygpfSk7ZnVuY3Rpb24gZVEoZSx0KXtyZXR1cm4gdD09PXZvaWQgMCYmKHQ9bnVsbCksdD10Pz9lLEVyKGZ1bmN0aW9uKHIsYSl7dmFyIGk9W10sbz0wO3Iuc3Vic2NyaWJlKE1yKGEsZnVuY3Rpb24obil7dmFyIHMsYyxkLGYsdT1udWxsO28rKyV0PT09MCYmaS5wdXNoKFtdKTt0cnl7Zm9yKHZhciBwPXcxKGkpLGg9cC5uZXh0KCk7IWguZG9uZTtoPXAubmV4dCgpKXt2YXIgYj1oLnZhbHVlO2IucHVzaChuKSxlPD1iLmxlbmd0aCYmKHU9dT8/W10sdS5wdXNoKGIpKX19Y2F0Y2godil7cz17ZXJyb3I6dn19ZmluYWxseXt0cnl7aCYmIWguZG9uZSYmKGM9cC5yZXR1cm4pJiZjLmNhbGwocCl9ZmluYWxseXtpZihzKXRocm93IHMuZXJyb3J9fWlmKHUpdHJ5e2Zvcih2YXIgeD13MSh1KSxnPXgubmV4dCgpOyFnLmRvbmU7Zz14Lm5leHQoKSl7dmFyIGI9Zy52YWx1ZTtlcyhpLGIpLGEubmV4dChiKX19Y2F0Y2godil7ZD17ZXJyb3I6dn19ZmluYWxseXt0cnl7ZyYmIWcuZG9uZSYmKGY9eC5yZXR1cm4pJiZmLmNhbGwoeCl9ZmluYWxseXtpZihkKXRocm93IGQuZXJyb3J9fX0sZnVuY3Rpb24oKXt2YXIgbixzO3RyeXtmb3IodmFyIGM9dzEoaSksZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpe3ZhciBmPWQudmFsdWU7YS5uZXh0KGYpfX1jYXRjaCh1KXtuPXtlcnJvcjp1fX1maW5hbGx5e3RyeXtkJiYhZC5kb25lJiYocz1jLnJldHVybikmJnMuY2FsbChjKX1maW5hbGx5e2lmKG4pdGhyb3cgbi5lcnJvcn19YS5jb21wbGV0ZSgpfSx2b2lkIDAsZnVuY3Rpb24oKXtpPW51bGx9KSl9KX12YXIgSzBlPWwoKCk9PntWcigpO3FpKCk7TTEoKTtpaCgpfSk7ZnVuY3Rpb24gdFEoZSl7Zm9yKHZhciB0LHIsYT1bXSxpPTE7aTxhcmd1bWVudHMubGVuZ3RoO2krKylhW2ktMV09YXJndW1lbnRzW2ldO3ZhciBvPSh0PWUyKGEpKSE9PW51bGwmJnQhPT12b2lkIDA/dDpKcyxuPShyPWFbMF0pIT09bnVsbCYmciE9PXZvaWQgMD9yOm51bGwscz1hWzFdfHwxLzA7cmV0dXJuIEVyKGZ1bmN0aW9uKGMsZCl7dmFyIGY9W10sdT0hMSxwPWZ1bmN0aW9uKHgpe3ZhciBnPXguYnVmZmVyLHY9eC5zdWJzO3YudW5zdWJzY3JpYmUoKSxlcyhmLHgpLGQubmV4dChnKSx1JiZoKCl9LGg9ZnVuY3Rpb24oKXtpZihmKXt2YXIgeD1uZXcgUWE7ZC5hZGQoeCk7dmFyIGc9W10sdj17YnVmZmVyOmcsc3Viczp4fTtmLnB1c2godiksTWkoeCxvLGZ1bmN0aW9uKCl7cmV0dXJuIHAodil9LGUpfX07biE9PW51bGwmJm4+PTA/TWkoZCxvLGgsbiwhMCk6dT0hMCxoKCk7dmFyIGI9TXIoZCxmdW5jdGlvbih4KXt2YXIgZyx2LHc9Zi5zbGljZSgpO3RyeXtmb3IodmFyIE09dzEodyksRj1NLm5leHQoKTshRi5kb25lO0Y9TS5uZXh0KCkpe3ZhciBDPUYudmFsdWUsaz1DLmJ1ZmZlcjtrLnB1c2goeCksczw9ay5sZW5ndGgmJnAoQyl9fWNhdGNoKE4pe2c9e2Vycm9yOk59fWZpbmFsbHl7dHJ5e0YmJiFGLmRvbmUmJih2PU0ucmV0dXJuKSYmdi5jYWxsKE0pfWZpbmFsbHl7aWYoZyl0aHJvdyBnLmVycm9yfX19LGZ1bmN0aW9uKCl7Zm9yKDtmPy5sZW5ndGg7KWQubmV4dChmLnNoaWZ0KCkuYnVmZmVyKTtiPy51bnN1YnNjcmliZSgpLGQuY29tcGxldGUoKSxkLnVuc3Vic2NyaWJlKCl9LHZvaWQgMCxmdW5jdGlvbigpe3JldHVybiBmPW51bGx9KTtjLnN1YnNjcmliZShiKX0pfXZhciBKMGU9bCgoKT0+e1ZyKCk7S3MoKTtxaSgpO00xKCk7aWgoKTtSMygpO2ZoKCk7dTAoKX0pO3ZhciBlNGU9bCgoKT0+e30pO3ZhciB0NGU9bCgoKT0+e30pO3ZhciByNGU9bCgoKT0+e30pO3ZhciBhNGU9bCgoKT0+e30pO3ZhciBpNGU9bCgoKT0+e30pO3ZhciBvNGU9bCgoKT0+e30pO3ZhciBuNGU9bCgoKT0+e30pO3ZhciBMZHQ9bCgoKT0+e30pO3ZhciBzNGU9bCgoKT0+e30pO3ZhciBsNGU9bCgoKT0+e30pO3ZhciBjNGU9bCgoKT0+e30pO3ZhciBEZHQ9bCgoKT0+e30pO3ZhciBkNGU9bCgoKT0+e30pO3ZhciB1NGU9bCgoKT0+e30pO3ZhciBmNGU9bCgoKT0+e30pO2Z1bmN0aW9uIHJRKGUpe3JldHVybiBFcihmdW5jdGlvbih0LHIpe3ZhciBhPSExLGk9bnVsbCxvPW51bGwsbj1mdW5jdGlvbigpe2lmKG8/LnVuc3Vic2NyaWJlKCksbz1udWxsLGEpe2E9ITE7dmFyIHM9aTtpPW51bGwsci5uZXh0KHMpfX07dC5zdWJzY3JpYmUoTXIocixmdW5jdGlvbihzKXtvPy51bnN1YnNjcmliZSgpLGE9ITAsaT1zLG89TXIocixuLHhuKSxiYShlKHMpKS5zdWJzY3JpYmUobyl9LGZ1bmN0aW9uKCl7bigpLHIuY29tcGxldGUoKX0sdm9pZCAwLGZ1bmN0aW9uKCl7aT1vPW51bGx9KSl9KX12YXIgcDRlPWwoKCk9PntxaSgpO0kzKCk7TTEoKTtIbygpfSk7ZnVuY3Rpb24gYVEoZSx0KXtyZXR1cm4gdD09PXZvaWQgMCYmKHQ9SnMpLEVyKGZ1bmN0aW9uKHIsYSl7dmFyIGk9bnVsbCxvPW51bGwsbj1udWxsLHM9ZnVuY3Rpb24oKXtpZihpKXtpLnVuc3Vic2NyaWJlKCksaT1udWxsO3ZhciBkPW87bz1udWxsLGEubmV4dChkKX19O2Z1bmN0aW9uIGMoKXt2YXIgZD1uK2UsZj10Lm5vdygpO2lmKGY8ZCl7aT10aGlzLnNjaGVkdWxlKHZvaWQgMCxkLWYpLGEuYWRkKGkpO3JldHVybn1zKCl9ci5zdWJzY3JpYmUoTXIoYSxmdW5jdGlvbihkKXtvPWQsbj10Lm5vdygpLGl8fChpPXQuc2NoZWR1bGUoYyxlKSxhLmFkZChpKSl9LGZ1bmN0aW9uKCl7cygpLGEuY29tcGxldGUoKX0sdm9pZCAwLGZ1bmN0aW9uKCl7bz1pPW51bGx9KSl9KX12YXIgaDRlPWwoKCk9PntSMygpO3FpKCk7TTEoKX0pO3ZhciBtNGU9bCgoKT0+e30pO3ZhciBnNGU9bCgoKT0+e30pO3ZhciB4NGU9bCgoKT0+e30pO3ZhciBiNGU9bCgoKT0+e30pO3ZhciB2NGU9bCgoKT0+e30pO3ZhciB5NGU9bCgoKT0+e30pO3ZhciB3NGU9bCgoKT0+e30pO3ZhciBNNGU9bCgoKT0+e30pO3ZhciBrNGU9bCgoKT0+e30pO3ZhciBTNGU9bCgoKT0+e30pO3ZhciB6NGU9bCgoKT0+e30pO3ZhciBDNGU9bCgoKT0+e30pO3ZhciBfNGU9bCgoKT0+e30pO3ZhciBUNGU9bCgoKT0+e30pO3ZhciBMNGU9bCgoKT0+e30pO3ZhciBENGU9bCgoKT0+e30pO3ZhciBBNGU9bCgoKT0+e30pO3ZhciBFNGU9bCgoKT0+e30pO3ZhciAkNGU9bCgoKT0+e30pO3ZhciBQNGU9bCgoKT0+e30pO3ZhciBJNGU9bCgoKT0+e30pO3ZhciBONGU9bCgoKT0+e30pO3ZhciBGNGU9bCgoKT0+e30pO3ZhciBPNGU9bCgoKT0+e30pO3ZhciBSNGU9bCgoKT0+e30pO3ZhciBCNGU9bCgoKT0+e30pO3ZhciBINGU9bCgoKT0+e30pO3ZhciBxNGU9bCgoKT0+e30pO3ZhciBqNGU9bCgoKT0+e30pO3ZhciBWNGU9bCgoKT0+e30pO3ZhciBVNGU9bCgoKT0+e30pO3ZhciBBZHQ9bCgoKT0+e30pO3ZhciBXNGU9bCgoKT0+e30pO3ZhciBHNGU9bCgoKT0+e30pO3ZhciBZNGU9bCgoKT0+e30pO3ZhciBaNGU9bCgoKT0+e30pO3ZhciBYNGU9bCgoKT0+e30pO3ZhciBRNGU9bCgoKT0+e30pO3ZhciBLNGU9bCgoKT0+e30pO3ZhciBKNGU9bCgoKT0+e30pO3ZhciBlM2U9bCgoKT0+e30pO3ZhciB0M2U9bCgoKT0+e30pO3ZhciByM2U9bCgoKT0+e30pO3ZhciBhM2U9bCgoKT0+e30pO3ZhciBpM2U9bCgoKT0+e30pO3ZhciBvM2U9bCgoKT0+e30pO3ZhciBuM2U9bCgoKT0+e30pO3ZhciBzM2U9bCgoKT0+e30pO3ZhciBsM2U9bCgoKT0+e30pO3ZhciBjM2U9bCgoKT0+e30pO3ZhciBkM2U9bCgoKT0+e30pO2Z1bmN0aW9uIGlRKGUpe2U9PT12b2lkIDAmJihlPXt9KTt2YXIgdD1lLmNvbm5lY3RvcixyPXQ9PT12b2lkIDA/ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IGsxfTp0LGE9ZS5yZXNldE9uRXJyb3IsaT1hPT09dm9pZCAwPyEwOmEsbz1lLnJlc2V0T25Db21wbGV0ZSxuPW89PT12b2lkIDA/ITA6byxzPWUucmVzZXRPblJlZkNvdW50WmVybyxjPXM9PT12b2lkIDA/ITA6cztyZXR1cm4gZnVuY3Rpb24oZCl7dmFyIGYsdSxwLGg9MCxiPSExLHg9ITEsZz1mdW5jdGlvbigpe3U/LnVuc3Vic2NyaWJlKCksdT12b2lkIDB9LHY9ZnVuY3Rpb24oKXtnKCksZj1wPXZvaWQgMCxiPXg9ITF9LHc9ZnVuY3Rpb24oKXt2YXIgTT1mO3YoKSxNPy51bnN1YnNjcmliZSgpfTtyZXR1cm4gRXIoZnVuY3Rpb24oTSxGKXtoKyssIXgmJiFiJiZnKCk7dmFyIEM9cD1wPz9yKCk7Ri5hZGQoZnVuY3Rpb24oKXtoLS0saD09PTAmJiF4JiYhYiYmKHU9dTNlKHcsYykpfSksQy5zdWJzY3JpYmUoRiksIWYmJmg+MCYmKGY9bmV3IGMwKHtuZXh0OmZ1bmN0aW9uKGspe3JldHVybiBDLm5leHQoayl9LGVycm9yOmZ1bmN0aW9uKGspe3g9ITAsZygpLHU9dTNlKHYsaSxrKSxDLmVycm9yKGspfSxjb21wbGV0ZTpmdW5jdGlvbigpe2I9ITAsZygpLHU9dTNlKHYsbiksQy5jb21wbGV0ZSgpfX0pLGJhKE0pLnN1YnNjcmliZShmKSl9KShkKX19ZnVuY3Rpb24gdTNlKGUsdCl7Zm9yKHZhciByPVtdLGE9MjthPGFyZ3VtZW50cy5sZW5ndGg7YSsrKXJbYS0yXT1hcmd1bWVudHNbYV07aWYodD09PSEwKXtlKCk7cmV0dXJufWlmKHQhPT0hMSl7dmFyIGk9bmV3IGMwKHtuZXh0OmZ1bmN0aW9uKCl7aS51bnN1YnNjcmliZSgpLGUoKX19KTtyZXR1cm4gYmEodC5hcHBseSh2b2lkIDAsd2koW10sT2EocikpKSkuc3Vic2NyaWJlKGkpfX12YXIgb1E9bCgoKT0+e1ZyKCk7SG8oKTtsaCgpO0xnKCk7cWkoKX0pO2Z1bmN0aW9uIG5RKGUsdCxyKXt2YXIgYSxpLG8sbixzPSExO3JldHVybiBlJiZ0eXBlb2YgZT09Im9iamVjdCI/KGE9ZS5idWZmZXJTaXplLG49YT09PXZvaWQgMD8xLzA6YSxpPWUud2luZG93VGltZSx0PWk9PT12b2lkIDA/MS8wOmksbz1lLnJlZkNvdW50LHM9bz09PXZvaWQgMD8hMTpvLHI9ZS5zY2hlZHVsZXIpOm49ZT8/MS8wLGlRKHtjb25uZWN0b3I6ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IGNoKG4sdCxyKX0scmVzZXRPbkVycm9yOiEwLHJlc2V0T25Db21wbGV0ZTohMSxyZXNldE9uUmVmQ291bnRaZXJvOnN9KX12YXIgZjNlPWwoKCk9PntwMGUoKTtvUSgpfSk7dmFyIHAzZT1sKCgpPT57fSk7dmFyIGgzZT1sKCgpPT57fSk7dmFyIG0zZT1sKCgpPT57fSk7dmFyIGczZT1sKCgpPT57fSk7dmFyIHgzZT1sKCgpPT57fSk7ZnVuY3Rpb24gc1EoKXtmb3IodmFyIGU9W10sdD0wO3Q8YXJndW1lbnRzLmxlbmd0aDt0KyspZVt0XT1hcmd1bWVudHNbdF07dmFyIHI9ZTIoZSk7cmV0dXJuIEVyKGZ1bmN0aW9uKGEsaSl7KHI/UVgoZSxhLHIpOlFYKGUsYSkpLnN1YnNjcmliZShpKX0pfXZhciBiM2U9bCgoKT0+e1YwZSgpO2ZoKCk7cWkoKX0pO3ZhciB2M2U9bCgoKT0+e30pO3ZhciB5M2U9bCgoKT0+e30pO3ZhciB3M2U9bCgoKT0+e30pO3ZhciBNM2U9bCgoKT0+e30pO2Z1bmN0aW9uIGdoKGUpe3JldHVybiBFcihmdW5jdGlvbih0LHIpe2JhKGUpLnN1YnNjcmliZShNcihyLGZ1bmN0aW9uKCl7cmV0dXJuIHIuY29tcGxldGUoKX0seG4pKSwhci5jbG9zZWQmJnQuc3Vic2NyaWJlKHIpfSl9dmFyIGszZT1sKCgpPT57cWkoKTtNMSgpO0hvKCk7STMoKX0pO3ZhciBTM2U9bCgoKT0+e30pO3ZhciB6M2U9bCgoKT0+e30pO2Z1bmN0aW9uIGxRKGUsdCl7cmV0dXJuIEVyKGZ1bmN0aW9uKHIsYSl7dmFyIGk9dD8/e30sbz1pLmxlYWRpbmcsbj1vPT09dm9pZCAwPyEwOm8scz1pLnRyYWlsaW5nLGM9cz09PXZvaWQgMD8hMTpzLGQ9ITEsZj1udWxsLHU9bnVsbCxwPSExLGg9ZnVuY3Rpb24oKXt1Py51bnN1YnNjcmliZSgpLHU9bnVsbCxjJiYoZygpLHAmJmEuY29tcGxldGUoKSl9LGI9ZnVuY3Rpb24oKXt1PW51bGwscCYmYS5jb21wbGV0ZSgpfSx4PWZ1bmN0aW9uKHYpe3JldHVybiB1PWJhKGUodikpLnN1YnNjcmliZShNcihhLGgsYikpfSxnPWZ1bmN0aW9uKCl7aWYoZCl7ZD0hMTt2YXIgdj1mO2Y9bnVsbCxhLm5leHQodiksIXAmJngodil9fTtyLnN1YnNjcmliZShNcihhLGZ1bmN0aW9uKHYpe2Q9ITAsZj12LCEodSYmIXUuY2xvc2VkKSYmKG4/ZygpOngodikpfSxmdW5jdGlvbigpe3A9ITAsIShjJiZkJiZ1JiYhdS5jbG9zZWQpJiZhLmNvbXBsZXRlKCl9KSl9KX12YXIgY1E9bCgoKT0+e3FpKCk7TTEoKTtIbygpfSk7ZnVuY3Rpb24gZFEoZSx0LHIpe3Q9PT12b2lkIDAmJih0PUpzKTt2YXIgYT1VMGUoZSx0KTtyZXR1cm4gbFEoZnVuY3Rpb24oKXtyZXR1cm4gYX0scil9dmFyIEMzZT1sKCgpPT57UjMoKTtjUSgpO1cwZSgpfSk7dmFyIF8zZT1sKCgpPT57fSk7dmFyIFQzZT1sKCgpPT57fSk7dmFyIEwzZT1sKCgpPT57fSk7dmFyIEQzZT1sKCgpPT57fSk7dmFyIEEzZT1sKCgpPT57fSk7dmFyIEUzZT1sKCgpPT57fSk7dmFyICQzZT1sKCgpPT57fSk7dmFyIFAzZT1sKCgpPT57fSk7dmFyIEkzZT1sKCgpPT57fSk7dmFyIE4zZT1sKCgpPT57fSk7dmFyIEVkdD1sKCgpPT57fSk7dmFyIEYzZT1sKCgpPT57fSk7dmFyIHFnPWwoKCk9Pnt0bygpO2kzdCgpO0RnKCk7czN0KCk7bGgoKTtjM3QoKTtwMGUoKTt1M3QoKTt5M3QoKTtSMygpO1MzdCgpO1QzdCgpO0QzdCgpO2IwZSgpO0tzKCk7TGcoKTtWM3QoKTtvMGUoKTtJMygpO0FnKCk7VTN0KCk7RzN0KCk7WTN0KCk7WjN0KCk7VzN0KCk7WDN0KCk7ZDBlKCk7UTN0KCk7VVgoKTtRY2UoKTtlZHQoKTt0ZHQoKTtzZHQoKTtWMGUoKTt1ZHQoKTtkZHQoKTtBWCgpO2ZkdCgpO09nKCk7aGR0KCk7bWR0KCk7Z2R0KCk7eGR0KCk7YmR0KCk7dmR0KCk7RzBlKCk7RjBlKCk7d2R0KCk7TWR0KCk7a2R0KCk7U2R0KCk7emR0KCk7UjBlKCk7VzBlKCk7Q2R0KCk7X2R0KCk7TjBlKCk7QVgoKTtHMGUoKTtUZHQoKTtvaCgpO1owZSgpO1gwZSgpO1EwZSgpO0swZSgpO0owZSgpO2U0ZSgpO3Q0ZSgpO3I0ZSgpO240ZSgpO280ZSgpO3M0ZSgpO1hYKCk7bDRlKCk7YzRlKCk7ZDRlKCk7dTRlKCk7ZjRlKCk7cDRlKCk7aDRlKCk7bTRlKCk7eTRlKCk7djRlKCk7dzRlKCk7TTRlKCk7azRlKCk7UzRlKCk7QzRlKCk7XzRlKCk7VDRlKCk7QTRlKCk7RDRlKCk7TDRlKCk7RTRlKCk7WTBlKCk7JDRlKCk7UDRlKCk7STRlKCk7TjRlKCk7RjRlKCk7eDRlKCk7TzRlKCk7QjRlKCk7QmcoKTtiNGUoKTtINGUoKTtxNGUoKTtZWCgpO2o0ZSgpO0hnKCk7VjRlKCk7VTRlKCk7VzRlKCk7RzRlKCk7WTRlKCk7TmcoKTtaNGUoKTtYNGUoKTtRNGUoKTtLNGUoKTtKNGUoKTtlM2UoKTt0M2UoKTtyM2UoKTthNGUoKTthM2UoKTtpM2UoKTtvM2UoKTtuM2UoKTtUWCgpO3MzZSgpO2wzZSgpO2MzZSgpO2QzZSgpO29RKCk7ZjNlKCk7cDNlKCk7aDNlKCk7bTNlKCk7ZzNlKCk7eDNlKCk7YjNlKCk7RmcoKTt5M2UoKTt2M2UoKTt3M2UoKTtNM2UoKTtnNGUoKTtSNGUoKTtrM2UoKTtTM2UoKTt6M2UoKTtjUSgpO0MzZSgpO3o0ZSgpO18zZSgpO1VYKCk7VDNlKCk7TDNlKCk7aTRlKCk7RDNlKCk7QTNlKCk7RTNlKCk7JDNlKCk7UDNlKCk7STNlKCk7TjNlKCk7RjNlKCl9KTt2YXIgJGR0PWwoKCk9Pnt9KTt2YXIgUGR0PWwoKCk9Pnt9KTt2YXIgSWR0PWwoKCk9PntaMGUoKTtYMGUoKTtRMGUoKTtLMGUoKTtKMGUoKTtlNGUoKTt0NGUoKTtyNGUoKTtuNGUoKTtvNGUoKTtMZHQoKTtzNGUoKTtEZHQoKTtYWCgpO2w0ZSgpO2M0ZSgpO2Q0ZSgpO3U0ZSgpO2Y0ZSgpO3A0ZSgpO2g0ZSgpO200ZSgpO3k0ZSgpO3Y0ZSgpO3c0ZSgpO000ZSgpO2s0ZSgpO1M0ZSgpO0M0ZSgpO180ZSgpO1Q0ZSgpO0E0ZSgpO0Q0ZSgpO0w0ZSgpO0U0ZSgpO1kwZSgpOyQ0ZSgpO1A0ZSgpO0k0ZSgpO040ZSgpO0Y0ZSgpO3g0ZSgpO080ZSgpO0I0ZSgpO0JnKCk7YjRlKCk7SDRlKCk7cTRlKCk7QWR0KCk7WVgoKTtqNGUoKTtIZygpO1Y0ZSgpO1U0ZSgpO1c0ZSgpO0c0ZSgpO1k0ZSgpO05nKCk7WjRlKCk7WDRlKCk7JGR0KCk7UTRlKCk7SzRlKCk7SjRlKCk7ZTNlKCk7dDNlKCk7UGR0KCk7cjNlKCk7YTRlKCk7YTNlKCk7aTNlKCk7bzNlKCk7bjNlKCk7VFgoKTtzM2UoKTtsM2UoKTtjM2UoKTtkM2UoKTtvUSgpO2YzZSgpO3AzZSgpO2gzZSgpO20zZSgpO2czZSgpO3gzZSgpO2IzZSgpO0ZnKCk7eTNlKCk7djNlKCk7dzNlKCk7TTNlKCk7ZzRlKCk7UjRlKCk7azNlKCk7UzNlKCk7ejNlKCk7Y1EoKTtDM2UoKTt6NGUoKTtfM2UoKTtVWCgpO1QzZSgpO0wzZSgpO2k0ZSgpO0QzZSgpO0EzZSgpO0UzZSgpOyQzZSgpO1AzZSgpO0kzZSgpO0VkdCgpO04zZSgpO0YzZSgpfSk7dmFyIHhoPXt9O3FlKHhoLHtPYnNlcnZhYmxlOigpPT5SdCxSZXBsYXlTdWJqZWN0OigpPT5jaCxTdWJqZWN0OigpPT5rMSxTdWJzY3JpcHRpb246KCk9PlFhLGZyb206KCk9PnQyLGZyb21FdmVudDooKT0+SDMsb2Y6KCk9PlJnLG9wczooKT0+aVVyfSk7dmFyIGlVcix1UT1sKCgpPT57cWcoKTtJZHQoKTtpVXI9e2J1ZmZlcjpKWCxidWZmZXJDb3VudDplUSxidWZmZXJUaW1lOnRRLGRlYm91bmNlOnJRLGRlYm91bmNlVGltZTphUSxmaWx0ZXI6S1gsbWFwOnIyLHN0YXJ0V2l0aDpzUSx0YWtlVW50aWw6Z2gsdGhyb3R0bGVUaW1lOmRRfX0pO3ZhciBPM2UsTmR0PWwoKCk9PntNWCgpO3VRKCk7TzNlPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5vYnNlcnZhYmxlRXZlbnRFbWl0dGVyQnVuZGxlQXJyYXk9bmV3IEFycmF5LHRoaXMub2JzZXJ2YWJsZUV2ZW50VGFyZ2V0QnVuZGxlQXJyYXk9bmV3IEFycmF5fWdldFN1YmplY3RGb3JFbWl0dGVyRXZlbnQodCxyKXtsZXQgYT10aGlzLm9ic2VydmFibGVFdmVudEVtaXR0ZXJCdW5kbGVBcnJheS5maW5kKGk9PmkuZXZlbnRSZWY9PT10JiZpLmV2ZW50PT09cik7aWYoYSlyZXR1cm4gYS5zdWJqZWN0O3tsZXQgaT1IMyh0LHIpLG89bmV3IGsxO2kuc3Vic2NyaWJlKG8pO2xldCBuPXtzdWJqZWN0Om8sZXZlbnRSZWY6dCxldmVudDpyfTtyZXR1cm4gdGhpcy5vYnNlcnZhYmxlRXZlbnRFbWl0dGVyQnVuZGxlQXJyYXkucHVzaChuKSxuLnN1YmplY3R9fWdldFN1YmplY3RGb3JFdmVudFRhcmdldCh0LHIpe2xldCBhPXRoaXMub2JzZXJ2YWJsZUV2ZW50VGFyZ2V0QnVuZGxlQXJyYXkuZmluZChpPT5pLmV2ZW50UmVmPT09dCYmaS5ldmVudD09PXIpO2lmKGEpcmV0dXJuIGEuc3ViamVjdDt7bGV0IG89e3N1YmplY3Q6bmV3IGsxLGV2ZW50UmVmOnQsZXZlbnQ6cn07cmV0dXJuIHRoaXMub2JzZXJ2YWJsZUV2ZW50VGFyZ2V0QnVuZGxlQXJyYXkucHVzaChvKSxvLnN1YmplY3R9fX19KTt2YXIgUjNlLEZkdD1sKCgpPT57TVgoKTt1USgpO1IzZT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMub2JzZXJ2YWJsZUZ1bmN0aW9ucz17bmV4dDp0PT57fSxjb21wbGV0ZTp0PT57fX0sdGhpcy5nZW5lcmF0b3I9bnVsbCx0aGlzLmJ1ZmZlcmVkPSExLHRoaXMucGF5bG9hZEJ1ZmZlcj1bXSx0aGlzLm9ic2VydmFibGU9bmV3IFJ0KHQ9Pnt0aGlzLm9ic2VydmFibGVGdW5jdGlvbnMubmV4dD0oLi4ucik9PnQubmV4dChyKSx0aGlzLm9ic2VydmFibGVGdW5jdGlvbnMuY29tcGxldGU9KCk9Pih0aGlzLmNvbXBsZXRlZERlZmZlcmVkLnJlc29sdmUoKSx0LmNvbXBsZXRlKCkpfSksdGhpcy5jb21wbGV0ZWREZWZmZXJlZD1wdC5kZWZlcigpLHRoaXMuY29tcGxldGVkPXRoaXMuY29tcGxldGVkRGVmZmVyZWQucHJvbWlzZX1zZXRPYnNlcnZhYmxlKHQpe3RoaXMub2JzZXJ2YWJsZT10fXB1c2godCl7dGhpcy5idWZmZXJlZD90aGlzLnBheWxvYWRCdWZmZXIucHVzaCh0KTp0aGlzLmludGVybmFsUHVzaCh0KX1wdXNoTWFueSh0KXtmb3IobGV0IHIgb2YgdCl0aGlzLnB1c2gocil9c2V0R2VuZXJhdG9yKHQpe3RoaXMuZ2VuZXJhdG9yPXR9bWFrZUJ1ZmZlcmVkKCl7dGhpcy5idWZmZXJlZD0hMH1zdWJzY3JpYmUoLi4udCl7cmV0dXJuIHRoaXMub2JzZXJ2YWJsZS5zdWJzY3JpYmUoLi4udCl9cmVxdWVzdCh0KXtpZih0IT09MClmb3IobGV0IHI9MDtyIT09dDtyKyspaWYodGhpcy5wYXlsb2FkQnVmZmVyLmxlbmd0aD4wKXRoaXMuaW50ZXJuYWxQdXNoKHRoaXMucGF5bG9hZEJ1ZmZlci5zaGlmdCgpKTtlbHNle2xldCBhPXRoaXMuZ2VuZXJhdG9yLm5leHQoKTt0aGlzLmludGVybmFsUHVzaChhLnZhbHVlKX19c2lnbmFsQ29tcGxldGUoKXt0aGlzLm9ic2VydmFibGVGdW5jdGlvbnMuY29tcGxldGUoKX1pbnRlcm5hbFB1c2godCl7dGhpcy5vYnNlcnZhYmxlRnVuY3Rpb25zLm5leHQodCl9fX0pO2Z1bmN0aW9uIG9VcihlKXtyZXR1cm4gbmV3IFJ0KHQ9PntsZXQgcj0oKT0+ZS5wYXVzZSgpLGE9KCk9PnByb2Nlc3MubmV4dFRpY2soKCk9PmUucmVzdW1lKCkpLGk9bz0+e3IoKSx0Lm5leHQobyksYSgpfTtyZXR1cm4gZS5vbigiZGF0YSIsaSksZS5vbigiZXJyb3IiLG89PnQuZXJyb3IobykpLGUub24oImVuZCIsKCk9PnQuY29tcGxldGUoKSksZS5vbigiY2xvc2UiLCgpPT50LmNvbXBsZXRlKCkpLCgpPT57ZS5yZW1vdmVMaXN0ZW5lcigiZGF0YSIsaSksZS5yZW1vdmVMaXN0ZW5lcigiZXJyb3IiLHQuZXJyb3IpLGUucmVtb3ZlTGlzdGVuZXIoImVuZCIsdC5jb21wbGV0ZSksZS5yZW1vdmVMaXN0ZW5lcigiY2xvc2UiLHQuY29tcGxldGUpfX0pfXZhciBPZHQ9bCgoKT0+e3FnKCl9KTt2YXIgJHI9e307cWUoJHIse09ic2VydmFibGVJbnRha2U6KCk9PlIzZSxPYnNlcnZhYmxlbWFwOigpPT5PM2UsZnJvbVN0cmVhbVdpdGhCYWNrcHJlc3N1cmU6KCk9Pm9VcixyeGpzOigpPT54aH0pO3ZhciBhMj1sKCgpPT57TVgoKTtOZHQoKTtGZHQoKTtPZHQoKTt1USgpfSk7ZnVuY3Rpb24gcTMoZSl7cmV0dXJuKHQscik9PnR5cGVvZiByPT0ib2JqZWN0Ij9SZHQoZSx0LHIpOigoYSxpLG8pPT57bGV0IG49aS5oYXNPd25Qcm9wZXJ0eShvKTtyZXR1cm4gaS5jb25zdHJ1Y3Rvci5jcmVhdGVQcm9wZXJ0eShvLGEpLG4/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihpLG8pOnZvaWQgMH0pKGUsdCxyKX12YXIgblVyLFJkdCxmUT1sKCgpPT57d2coKTtuVXI9e2F0dHJpYnV0ZTohMCx0eXBlOlN0cmluZyxjb252ZXJ0ZXI6cmgscmVmbGVjdDohMSxoYXNDaGFuZ2VkOnlnfSxSZHQ9KGU9blVyLHQscik9PntsZXR7a2luZDphLG1ldGFkYXRhOml9PXIsbz1nbG9iYWxUaGlzLmxpdFByb3BlcnR5TWV0YWRhdGEuZ2V0KGkpO2lmKG89PT12b2lkIDAmJmdsb2JhbFRoaXMubGl0UHJvcGVydHlNZXRhZGF0YS5zZXQoaSxvPW5ldyBNYXApLGE9PT0ic2V0dGVyIiYmKChlPU9iamVjdC5jcmVhdGUoZSkpLndyYXBwZWQ9ITApLG8uc2V0KHIubmFtZSxlKSxhPT09ImFjY2Vzc29yIil7bGV0e25hbWU6bn09cjtyZXR1cm57c2V0KHMpe2xldCBjPXQuZ2V0LmNhbGwodGhpcyk7dC5zZXQuY2FsbCh0aGlzLHMpLHRoaXMucmVxdWVzdFVwZGF0ZShuLGMsZSwhMCxzKX0saW5pdChzKXtyZXR1cm4gcyE9PXZvaWQgMCYmdGhpcy5DKG4sdm9pZCAwLGUscyksc319fWlmKGE9PT0ic2V0dGVyIil7bGV0e25hbWU6bn09cjtyZXR1cm4gZnVuY3Rpb24ocyl7bGV0IGM9dGhpc1tuXTt0LmNhbGwodGhpcyxzKSx0aGlzLnJlcXVlc3RVcGRhdGUobixjLGUsITAscyl9fXRocm93IEVycm9yKCJVbnN1cHBvcnRlZCBkZWNvcmF0b3IgbG9jYXRpb246ICIrYSl9fSk7dmFyIEJkdD1sKCgpPT57ZlEoKX0pO3ZhciBIZHQ9bCgoKT0+e30pO3ZhciBadD17fTtxZShadCx7VGltZW91dDooKT0+cFEsZGVsYXlGb3I6KCk9PnFkdCxkZWxheUZvclJhbmRvbTooKT0+c1VyfSk7dmFyIHFkdCxzVXIscFEsZjA9bCgoKT0+e0NvKCk7cWR0PWFzeW5jKGUsdCxyPSExKT0+KGF3YWl0IG5ldyBwUShlLG51bGwscikucHJvbWlzZSx0KSxzVXI9YXN5bmMoZSx0LHIsYT0hMSk9Pihhd2FpdCBxZHQoTWF0aC5yYW5kb20oKSoodC1lKStlLG51bGwsYSkscikscFE9Y2xhc3N7Y29uc3RydWN0b3IodCxyLGE9ITEpe3RoaXMuX2NhbmNlbGxlZD0hMSx0aGlzLnRpbWVvdXRJbk1pbGxpcz10LHRoaXMuX2RlZmVycmVkPXMwKCksdGhpcy5wcm9taXNlPXRoaXMuX2RlZmVycmVkLnByb21pc2UsdGhpcy5fdGltZW91dD1zZXRUaW1lb3V0KCgpPT57dGhpcy5fY2FuY2VsbGVkfHx0aGlzLl9kZWZlcnJlZC5yZXNvbHZlKHIpfSx0KSx0aGlzLnN0YXJ0ZWQ9RGF0ZS5ub3coKSxhJiZ0aGlzLm1ha2VVbnJlZmVkKCl9bWFrZVVucmVmZWQoKXt0aGlzLl90aW1lb3V0LnVucmVmKCl9Y2FuY2VsKCl7dGhpcy5fY2FuY2VsbGVkPSEwLGNsZWFyVGltZW91dCh0aGlzLl90aW1lb3V0KX1nZXRUaW1lTGVmdCgpe2xldCB0PXRoaXMuc3RhcnRlZCt0aGlzLnRpbWVvdXRJbk1pbGxpcy1EYXRlLm5vdygpO3JldHVybiB0PjA/dDowfX19KTt2YXIgcDA9e307dmFyIGpnPWwoKCk9Pnt9KTtmdW5jdGlvbiBqMyhlKXtpZih0eXBlb2YgZSE9InN0cmluZyIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBzdHJpbmciKTtyZXR1cm4gZS5yZXBsYWNlKC9bfFxce30oKVtcXV4kKyo/Ll0vZywiXFwkJiIpLnJlcGxhY2UoLy0vZywiXFx4MmQiKX12YXIgaFE9bCgoKT0+e30pO3ZhciBWZz17fTtxZShWZyx7aXNNYXRjaDooKT0+ZFVyLG1hdGNoZXI6KCk9PmNVcn0pO2Z1bmN0aW9uIGNVcihlLHQscil7cmV0dXJuIFZkdChlLHQsciwhMSl9ZnVuY3Rpb24gZFVyKGUsdCxyKXtyZXR1cm4gVmR0KGUsdCxyLCEwKS5sZW5ndGg+MH12YXIgQjNlLGpkdCxsVXIsVmR0LFVkdD1sKCgpPT57aFEoKTtCM2U9bmV3IE1hcCxqZHQ9KGUsdCk9PntpZighQXJyYXkuaXNBcnJheShlKSlzd2l0Y2godHlwZW9mIGUpe2Nhc2Uic3RyaW5nIjplPVtlXTticmVhaztjYXNlInVuZGVmaW5lZCI6ZT1bXTticmVhaztkZWZhdWx0OnRocm93IG5ldyBUeXBlRXJyb3IoYEV4cGVjdGVkICcke3R9JyB0byBiZSBhIHN0cmluZyBvciBhbiBhcnJheSwgYnV0IGdvdCBhIHR5cGUgb2YgJyR7dHlwZW9mIGV9J2ApfXJldHVybiBlLmZpbHRlcihyPT57aWYodHlwZW9mIHIhPSJzdHJpbmciKXtpZih0eXBlb2Ygcj4idSIpcmV0dXJuITE7dGhyb3cgbmV3IFR5cGVFcnJvcihgRXhwZWN0ZWQgJyR7dH0nIHRvIGJlIGFuIGFycmF5IG9mIHN0cmluZ3MsIGJ1dCBmb3VuZCBhIHR5cGUgb2YgJyR7dHlwZW9mIHJ9JyBpbiB0aGUgYXJyYXlgKX1yZXR1cm4hMH0pfSxsVXI9KGUsdCk9Pnt0PXtjYXNlU2Vuc2l0aXZlOiExLC4uLnR9O2xldCByPWUrSlNPTi5zdHJpbmdpZnkodCk7aWYoQjNlLmhhcyhyKSlyZXR1cm4gQjNlLmdldChyKTtsZXQgYT1lWzBdPT09IiEiO2EmJihlPWUuc2xpY2UoMSkpLGU9ajMoZSkucmVwbGFjZSgvXFxcKi9nLCJbXFxzXFxTXSoiKTtsZXQgaT1uZXcgUmVnRXhwKGBeJHtlfSRgLHQuY2FzZVNlbnNpdGl2ZT8iIjoiaSIpO3JldHVybiBpLm5lZ2F0ZWQ9YSxCM2Uuc2V0KHIsaSksaX0sVmR0PShlLHQscixhKT0+e2lmKGU9amR0KGUsImlucHV0cyIpLHQ9amR0KHQsInBhdHRlcm5zIiksdC5sZW5ndGg9PT0wKXJldHVybltdO3Q9dC5tYXAobj0+bFVyKG4scikpO2xldHthbGxQYXR0ZXJuczppfT1yfHx7fSxvPVtdO2ZvcihsZXQgbiBvZiBlKXtsZXQgcyxjPVsuLi50XS5maWxsKCExKTtmb3IobGV0W2QsZl1vZiB0LmVudHJpZXMoKSlpZihmLnRlc3QobikmJihjW2RdPSEwLHM9IWYubmVnYXRlZCwhcykpYnJlYWs7aWYoIShzPT09ITF8fHM9PT12b2lkIDAmJnQuc29tZShkPT4hZC5uZWdhdGVkKXx8aSYmYy5zb21lKChkLGYpPT4hZCYmIXRbZl0ubmVnYXRlZCkpJiYoby5wdXNoKG4pLGEpKWJyZWFrfXJldHVybiBvfX0pO3ZhciBXZHQ9bCgoKT0+e1VkdCgpfSk7dmFyIFVnPXt9O3FlKFVnLHtTbWFydE1hdGNoOigpPT5IM2V9KTt2YXIgSDNlLEdkdD1sKCgpPT57V2R0KCk7SDNlPWNsYXNze2NvbnN0cnVjdG9yKHQpe3RoaXMud2lsZGNhcmQ9dH1tYXRjaCh0KXtyZXR1cm4gVmcuaXNNYXRjaCh0LHRoaXMud2lsZGNhcmQpfX19KTt2YXIgWmc9e307cWUoWmcse0Nyb246KCk9PkpkdCxDcm9uRGF0ZTooKT0+a2ksQ3JvblBhdHRlcm46KCk9Pm1RLHNjaGVkdWxlZEpvYnM6KCk9PmJofSk7ZnVuY3Rpb24gV2coZSl7cmV0dXJuIERhdGUuVVRDKGUueSxlLm0tMSxlLmQsZS5oLGUuaSxlLnMpfWZ1bmN0aW9uIHEzZShlLHQpe3JldHVybiBlLnk9PT10LnkmJmUubT09PXQubSYmZS5kPT09dC5kJiZlLmg9PT10LmgmJmUuaT09PXQuaSYmZS5zPT09dC5zfWZ1bmN0aW9uIGZVcihlLHQpe2xldCByPW5ldyBEYXRlKERhdGUucGFyc2UoZSkpO2lmKGlzTmFOKHIpKXRocm93IG5ldyBFcnJvcigiSW52YWxpZCBJU084NjAxIHBhc3NlZCB0byB0aW1lem9uZSBwYXJzZXIuIik7bGV0IGE9ZS5zdWJzdHJpbmcoOSk7cmV0dXJuIGEuaW5jbHVkZXMoIloiKXx8YS5pbmNsdWRlcygiKyIpfHxhLmluY2x1ZGVzKCItIik/ajNlKHIuZ2V0VVRDRnVsbFllYXIoKSxyLmdldFVUQ01vbnRoKCkrMSxyLmdldFVUQ0RhdGUoKSxyLmdldFVUQ0hvdXJzKCksci5nZXRVVENNaW51dGVzKCksci5nZXRVVENTZWNvbmRzKCksIkV0Yy9VVEMiKTpqM2Uoci5nZXRGdWxsWWVhcigpLHIuZ2V0TW9udGgoKSsxLHIuZ2V0RGF0ZSgpLHIuZ2V0SG91cnMoKSxyLmdldE1pbnV0ZXMoKSxyLmdldFNlY29uZHMoKSx0KX1mdW5jdGlvbiBZZHQoZSx0LHIpe3JldHVybiBaZHQoZlVyKGUsdCkscil9ZnVuY3Rpb24gWmR0KGUsdCl7bGV0IHI9bmV3IERhdGUoV2coZSkpLGE9R2cocixlLnR6KSxpPVdnKGUpLG89V2coYSksbj1pLW8scz1uZXcgRGF0ZShyLmdldFRpbWUoKStuKSxjPUdnKHMsZS50eik7aWYocTNlKGMsZSkpe2xldCB1PW5ldyBEYXRlKHMuZ2V0VGltZSgpLTM2ZTUpLHA9R2codSxlLnR6KTtyZXR1cm4gcTNlKHAsZSk/dTpzfWxldCBkPW5ldyBEYXRlKHMuZ2V0VGltZSgpK1dnKGUpLVdnKGMpKSxmPUdnKGQsZS50eik7aWYocTNlKGYsZSkpcmV0dXJuIGQ7aWYodCl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgZGF0ZSBwYXNzZWQgdG8gZnJvbVRaKCkiKTtyZXR1cm4gcy5nZXRUaW1lKCk+ZC5nZXRUaW1lKCk/czpkfWZ1bmN0aW9uIEdnKGUsdCl7bGV0IHIsYTt0cnl7cj1uZXcgSW50bC5EYXRlVGltZUZvcm1hdCgiZW4tVVMiLHt0aW1lWm9uZTp0LHllYXI6Im51bWVyaWMiLG1vbnRoOiJudW1lcmljIixkYXk6Im51bWVyaWMiLGhvdXI6Im51bWVyaWMiLG1pbnV0ZToibnVtZXJpYyIsc2Vjb25kOiJudW1lcmljIixob3VyMTI6ITF9KSxhPXIuZm9ybWF0VG9QYXJ0cyhlKX1jYXRjaChvKXtsZXQgbj1vIGluc3RhbmNlb2YgRXJyb3I/by5tZXNzYWdlOlN0cmluZyhvKTt0aHJvdyBuZXcgUmFuZ2VFcnJvcihgdG9UWjogSW52YWxpZCB0aW1lem9uZSAnJHt0fScgb3IgZGF0ZS4gUGxlYXNlIHByb3ZpZGUgYSB2YWxpZCBJQU5BIHRpbWV6b25lIChlLmcuLCAnQW1lcmljYS9OZXdfWW9yaycsICdFdXJvcGUvU3RvY2tob2xtJykuIE9yaWdpbmFsIGVycm9yOiAke259YCl9bGV0IGk9e3llYXI6MCxtb250aDowLGRheTowLGhvdXI6MCxtaW51dGU6MCxzZWNvbmQ6MH07Zm9yKGxldCBvIG9mIGEpKG8udHlwZT09PSJ5ZWFyInx8by50eXBlPT09Im1vbnRoInx8by50eXBlPT09ImRheSJ8fG8udHlwZT09PSJob3VyInx8by50eXBlPT09Im1pbnV0ZSJ8fG8udHlwZT09PSJzZWNvbmQiKSYmKGlbby50eXBlXT1wYXJzZUludChvLnZhbHVlLDEwKSk7aWYoaXNOYU4oaS55ZWFyKXx8aXNOYU4oaS5tb250aCl8fGlzTmFOKGkuZGF5KXx8aXNOYU4oaS5ob3VyKXx8aXNOYU4oaS5taW51dGUpfHxpc05hTihpLnNlY29uZCkpdGhyb3cgbmV3IEVycm9yKGB0b1RaOiBGYWlsZWQgdG8gcGFyc2UgYWxsIGRhdGUgY29tcG9uZW50cyBmcm9tIHRpbWV6b25lICcke3R9Jy4gVGhpcyBtYXkgaW5kaWNhdGUgYW4gaW52YWxpZCBkYXRlIG9yIHRpbWV6b25lIGNvbmZpZ3VyYXRpb24uIFBhcnNlZCBjb21wb25lbnRzOiAke0pTT04uc3RyaW5naWZ5KGkpfWApO3JldHVybiBpLmhvdXI9PT0yNCYmKGkuaG91cj0wKSx7eTppLnllYXIsbTppLm1vbnRoLGQ6aS5kYXksaDppLmhvdXIsaTppLm1pbnV0ZSxzOmkuc2Vjb25kLHR6OnR9fWZ1bmN0aW9uIGozZShlLHQscixhLGksbyxuKXtyZXR1cm57eTplLG06dCxkOnIsaDphLGksczpvLHR6Om59fWZ1bmN0aW9uIHBVcihlKXtpZihlPT09dm9pZCAwJiYoZT17fSksZGVsZXRlIGUubmFtZSxlLmxlZ2FjeU1vZGUhPT12b2lkIDAmJmUuZG9tQW5kRG93PT09dm9pZCAwP2UuZG9tQW5kRG93PSFlLmxlZ2FjeU1vZGU6ZS5kb21BbmREb3c9PT12b2lkIDAmJihlLmRvbUFuZERvdz0hMSksZS5sZWdhY3lNb2RlPSFlLmRvbUFuZERvdyxlLnBhdXNlZD1lLnBhdXNlZD09PXZvaWQgMD8hMTplLnBhdXNlZCxlLm1heFJ1bnM9ZS5tYXhSdW5zPT09dm9pZCAwPzEvMDplLm1heFJ1bnMsZS5jYXRjaD1lLmNhdGNoPT09dm9pZCAwPyExOmUuY2F0Y2gsZS5pbnRlcnZhbD1lLmludGVydmFsPT09dm9pZCAwPzA6cGFyc2VJbnQoZS5pbnRlcnZhbC50b1N0cmluZygpLDEwKSxlLnV0Y09mZnNldD1lLnV0Y09mZnNldD09PXZvaWQgMD92b2lkIDA6cGFyc2VJbnQoZS51dGNPZmZzZXQudG9TdHJpbmcoKSwxMCksZS5kYXlPZmZzZXQ9ZS5kYXlPZmZzZXQ9PT12b2lkIDA/MDpwYXJzZUludChlLmRheU9mZnNldC50b1N0cmluZygpLDEwKSxlLnVucmVmPWUudW5yZWY9PT12b2lkIDA/ITE6ZS51bnJlZixlLm1vZGU9ZS5tb2RlPT09dm9pZCAwPyJhdXRvIjplLm1vZGUsZS5hbHRlcm5hdGl2ZVdlZWtkYXlzPWUuYWx0ZXJuYXRpdmVXZWVrZGF5cz09PXZvaWQgMD8hMTplLmFsdGVybmF0aXZlV2Vla2RheXMsZS5zbG9wcHlSYW5nZXM9ZS5zbG9wcHlSYW5nZXM9PT12b2lkIDA/ITE6ZS5zbG9wcHlSYW5nZXMsIVsiYXV0byIsIjUtcGFydCIsIjYtcGFydCIsIjctcGFydCIsIjUtb3ItNi1wYXJ0cyIsIjYtb3ItNy1wYXJ0cyJdLmluY2x1ZGVzKGUubW9kZSkpdGhyb3cgbmV3IEVycm9yKCJDcm9uT3B0aW9uczogbW9kZSBtdXN0IGJlIG9uZSBvZiAnYXV0bycsICc1LXBhcnQnLCAnNi1wYXJ0JywgJzctcGFydCcsICc1LW9yLTYtcGFydHMnLCBvciAnNi1vci03LXBhcnRzJy4iKTtpZihlLnN0YXJ0QXQmJihlLnN0YXJ0QXQ9bmV3IGtpKGUuc3RhcnRBdCxlLnRpbWV6b25lKSksZS5zdG9wQXQmJihlLnN0b3BBdD1uZXcga2koZS5zdG9wQXQsZS50aW1lem9uZSkpLGUuaW50ZXJ2YWwhPT1udWxsKXtpZihpc05hTihlLmludGVydmFsKSl0aHJvdyBuZXcgRXJyb3IoIkNyb25PcHRpb25zOiBTdXBwbGllZCB2YWx1ZSBmb3IgaW50ZXJ2YWwgaXMgbm90IGEgbnVtYmVyIik7aWYoZS5pbnRlcnZhbDwwKXRocm93IG5ldyBFcnJvcigiQ3Jvbk9wdGlvbnM6IFN1cHBsaWVkIHZhbHVlIGZvciBpbnRlcnZhbCBjYW4gbm90IGJlIG5lZ2F0aXZlIil9aWYoZS51dGNPZmZzZXQhPT12b2lkIDApe2lmKGlzTmFOKGUudXRjT2Zmc2V0KSl0aHJvdyBuZXcgRXJyb3IoIkNyb25PcHRpb25zOiBJbnZhbGlkIHZhbHVlIHBhc3NlZCBmb3IgdXRjT2Zmc2V0LCBzaG91bGQgYmUgbnVtYmVyIHJlcHJlc2VudGluZyBtaW51dGVzIG9mZnNldCBmcm9tIFVUQy4iKTtpZihlLnV0Y09mZnNldDwtODcwfHxlLnV0Y09mZnNldD44NzApdGhyb3cgbmV3IEVycm9yKCJDcm9uT3B0aW9uczogdXRjT2Zmc2V0IG91dCBvZiBib3VuZHMuIik7aWYoZS51dGNPZmZzZXQhPT12b2lkIDAmJmUudGltZXpvbmUpdGhyb3cgbmV3IEVycm9yKCJDcm9uT3B0aW9uczogQ29tYmluaW5nICd1dGNPZmZzZXQnIHdpdGggJ3RpbWV6b25lJyBpcyBub3QgYWxsb3dlZC4iKX1pZihlLnVucmVmIT09ITAmJmUudW5yZWYhPT0hMSl0aHJvdyBuZXcgRXJyb3IoIkNyb25PcHRpb25zOiBVbnJlZiBzaG91bGQgYmUgZWl0aGVyIHRydWUsIGZhbHNlIG9yIHVuZGVmaW5lZChmYWxzZSkuIik7aWYoZS5kYXlPZmZzZXQhPT12b2lkIDAmJmUuZGF5T2Zmc2V0IT09MCYmaXNOYU4oZS5kYXlPZmZzZXQpKXRocm93IG5ldyBFcnJvcigiQ3Jvbk9wdGlvbnM6IEludmFsaWQgdmFsdWUgcGFzc2VkIGZvciBkYXlPZmZzZXQsIHNob3VsZCBiZSBhIG51bWJlciByZXByZXNlbnRpbmcgZGF5cyB0byBvZmZzZXQuIik7cmV0dXJuIGV9ZnVuY3Rpb24gWWcoZSl7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKT09PSJbb2JqZWN0IEZ1bmN0aW9uXSJ8fHR5cGVvZiBlPT0iZnVuY3Rpb24ifHxlIGluc3RhbmNlb2YgRnVuY3Rpb259ZnVuY3Rpb24gaFVyKGUpe3JldHVybiBZZyhlKX1mdW5jdGlvbiBtVXIoZSl7dHlwZW9mIERlbm88InUiJiZ0eXBlb2YgRGVuby51bnJlZlRpbWVyPCJ1Ij9EZW5vLnVucmVmVGltZXIoZSk6ZSYmdHlwZW9mIGUudW5yZWY8InUiJiZlLnVucmVmKCl9dmFyIFhkdCxtUSxWM2UsdmEsa2ksUWR0LGJoLEpkdCxlNnQ9bCgoKT0+e1hkdD1bMSwyLDQsOCwxNl0sbVE9Y2xhc3N7cGF0dGVybjt0aW1lem9uZTttb2RlO2FsdGVybmF0aXZlV2Vla2RheXM7c2xvcHB5UmFuZ2VzO3NlY29uZDttaW51dGU7aG91cjtkYXk7bW9udGg7ZGF5T2ZXZWVrO3llYXI7bGFzdERheU9mTW9udGg7bGFzdFdlZWtkYXk7bmVhcmVzdFdlZWtkYXlzO3N0YXJET007c3RhckRPVztzdGFyWWVhcjt1c2VBbmRMb2dpYztjb25zdHJ1Y3RvcihlLHQscil7dGhpcy5wYXR0ZXJuPWUsdGhpcy50aW1lem9uZT10LHRoaXMubW9kZT1yPy5tb2RlPz8iYXV0byIsdGhpcy5hbHRlcm5hdGl2ZVdlZWtkYXlzPXI/LmFsdGVybmF0aXZlV2Vla2RheXM/PyExLHRoaXMuc2xvcHB5UmFuZ2VzPXI/LnNsb3BweVJhbmdlcz8/ITEsdGhpcy5zZWNvbmQ9QXJyYXkoNjApLmZpbGwoMCksdGhpcy5taW51dGU9QXJyYXkoNjApLmZpbGwoMCksdGhpcy5ob3VyPUFycmF5KDI0KS5maWxsKDApLHRoaXMuZGF5PUFycmF5KDMxKS5maWxsKDApLHRoaXMubW9udGg9QXJyYXkoMTIpLmZpbGwoMCksdGhpcy5kYXlPZldlZWs9QXJyYXkoNykuZmlsbCgwKSx0aGlzLnllYXI9QXJyYXkoMWU0KS5maWxsKDApLHRoaXMubGFzdERheU9mTW9udGg9ITEsdGhpcy5sYXN0V2Vla2RheT0hMSx0aGlzLm5lYXJlc3RXZWVrZGF5cz1BcnJheSgzMSkuZmlsbCgwKSx0aGlzLnN0YXJET009ITEsdGhpcy5zdGFyRE9XPSExLHRoaXMuc3RhclllYXI9ITEsdGhpcy51c2VBbmRMb2dpYz0hMSx0aGlzLnBhcnNlKCl9cGFyc2UoKXtpZighKHR5cGVvZiB0aGlzLnBhdHRlcm49PSJzdHJpbmcifHx0aGlzLnBhdHRlcm4gaW5zdGFuY2VvZiBTdHJpbmcpKXRocm93IG5ldyBUeXBlRXJyb3IoIkNyb25QYXR0ZXJuOiBQYXR0ZXJuIGhhcyB0byBiZSBvZiB0eXBlIHN0cmluZy4iKTt0aGlzLnBhdHRlcm4uaW5kZXhPZigiQCIpPj0wJiYodGhpcy5wYXR0ZXJuPXRoaXMuaGFuZGxlTmlja25hbWVzKHRoaXMucGF0dGVybikudHJpbSgpKTtsZXQgZT10aGlzLnBhdHRlcm4ubWF0Y2goL1xTKy9nKXx8WyIiXSx0PWUubGVuZ3RoO2lmKGUubGVuZ3RoPDV8fGUubGVuZ3RoPjcpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ3JvblBhdHRlcm46IGludmFsaWQgY29uZmlndXJhdGlvbiBmb3JtYXQgKCciK3RoaXMucGF0dGVybisiJyksIGV4YWN0bHkgZml2ZSwgc2l4LCBvciBzZXZlbiBzcGFjZSBzZXBhcmF0ZWQgcGFydHMgYXJlIHJlcXVpcmVkLiIpO2lmKHRoaXMubW9kZSE9PSJhdXRvIil7bGV0IGE7c3dpdGNoKHRoaXMubW9kZSl7Y2FzZSI1LXBhcnQiOmE9NTticmVhaztjYXNlIjYtcGFydCI6YT02O2JyZWFrO2Nhc2UiNy1wYXJ0IjphPTc7YnJlYWs7Y2FzZSI1LW9yLTYtcGFydHMiOmE9WzUsNl07YnJlYWs7Y2FzZSI2LW9yLTctcGFydHMiOmE9WzYsN107YnJlYWs7ZGVmYXVsdDphPTB9aWYoIShBcnJheS5pc0FycmF5KGEpP2EuaW5jbHVkZXModCk6dD09PWEpKXtsZXQgaT1BcnJheS5pc0FycmF5KGEpP2Euam9pbigiIG9yICIpOmEudG9TdHJpbmcoKTt0aHJvdyBuZXcgVHlwZUVycm9yKGBDcm9uUGF0dGVybjogbW9kZSAnJHt0aGlzLm1vZGV9JyByZXF1aXJlcyBleGFjdGx5ICR7aX0gcGFydHMsIGJ1dCBwYXR0ZXJuICcke3RoaXMucGF0dGVybn0nIGhhcyAke3R9IHBhcnRzLmApfX1pZihlLmxlbmd0aD09PTUmJmUudW5zaGlmdCgiMCIpLGUubGVuZ3RoPT09NiYmZS5wdXNoKCIqIiksZVszXS50b1VwcGVyQ2FzZSgpPT09IkxXIj8odGhpcy5sYXN0V2Vla2RheT0hMCxlWzNdPSIiKTplWzNdLnRvVXBwZXJDYXNlKCkuaW5kZXhPZigiTCIpPj0wJiYoZVszXT1lWzNdLnJlcGxhY2UoL0wvZ2ksIiIpLHRoaXMubGFzdERheU9mTW9udGg9ITApLGVbM109PSIqIiYmKHRoaXMuc3RhckRPTT0hMCksZVs2XT09IioiJiYodGhpcy5zdGFyWWVhcj0hMCksZVs0XS5sZW5ndGg+PTMmJihlWzRdPXRoaXMucmVwbGFjZUFscGhhTW9udGhzKGVbNF0pKSxlWzVdLmxlbmd0aD49MyYmKGVbNV09dGhpcy5hbHRlcm5hdGl2ZVdlZWtkYXlzP3RoaXMucmVwbGFjZUFscGhhRGF5c1F1YXJ0eihlWzVdKTp0aGlzLnJlcGxhY2VBbHBoYURheXMoZVs1XSkpLGVbNV0uc3RhcnRzV2l0aCgiKyIpJiYodGhpcy51c2VBbmRMb2dpYz0hMCxlWzVdPWVbNV0uc3Vic3RyaW5nKDEpLGVbNV09PT0iIikpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ3JvblBhdHRlcm46IERheS1vZi13ZWVrIGZpZWxkIGNhbm5vdCBiZSBlbXB0eSBhZnRlciAnKycgbW9kaWZpZXIuIik7c3dpdGNoKGVbNV09PSIqIiYmKHRoaXMuc3RhckRPVz0hMCksdGhpcy5wYXR0ZXJuLmluZGV4T2YoIj8iKT49MCYmKGVbMF09ZVswXS5yZXBsYWNlKC9cPy9nLCIqIiksZVsxXT1lWzFdLnJlcGxhY2UoL1w/L2csIioiKSxlWzJdPWVbMl0ucmVwbGFjZSgvXD8vZywiKiIpLGVbM109ZVszXS5yZXBsYWNlKC9cPy9nLCIqIiksZVs0XT1lWzRdLnJlcGxhY2UoL1w/L2csIioiKSxlWzVdPWVbNV0ucmVwbGFjZSgvXD8vZywiKiIpLGVbNl0mJihlWzZdPWVbNl0ucmVwbGFjZSgvXD8vZywiKiIpKSksdGhpcy5tb2RlKXtjYXNlIjUtcGFydCI6ZVswXT0iMCIsZVs2XT0iKiI7YnJlYWs7Y2FzZSI2LXBhcnQiOmVbNl09IioiO2JyZWFrO2Nhc2UiNS1vci02LXBhcnRzIjplWzZdPSIqIjticmVhaztjYXNlIjYtb3ItNy1wYXJ0cyI6YnJlYWs7Y2FzZSI3LXBhcnQiOmNhc2UiYXV0byI6YnJlYWt9dGhpcy50aHJvd0F0SWxsZWdhbENoYXJhY3RlcnMoZSksdGhpcy5wYXJ0VG9BcnJheSgic2Vjb25kIixlWzBdLDAsMSksdGhpcy5wYXJ0VG9BcnJheSgibWludXRlIixlWzFdLDAsMSksdGhpcy5wYXJ0VG9BcnJheSgiaG91ciIsZVsyXSwwLDEpLHRoaXMucGFydFRvQXJyYXkoImRheSIsZVszXSwtMSwxKSx0aGlzLnBhcnRUb0FycmF5KCJtb250aCIsZVs0XSwtMSwxKTtsZXQgcj10aGlzLmFsdGVybmF0aXZlV2Vla2RheXM/LTE6MDt0aGlzLnBhcnRUb0FycmF5KCJkYXlPZldlZWsiLGVbNV0sciw2MyksdGhpcy5wYXJ0VG9BcnJheSgieWVhciIsZVs2XSwwLDEpLCF0aGlzLmFsdGVybmF0aXZlV2Vla2RheXMmJnRoaXMuZGF5T2ZXZWVrWzddJiYodGhpcy5kYXlPZldlZWtbMF09dGhpcy5kYXlPZldlZWtbN10pfXBhcnRUb0FycmF5KGUsdCxyLGEpe2xldCBpPXRoaXNbZV0sbz1lPT09ImRheSImJnRoaXMubGFzdERheU9mTW9udGgsbj1lPT09ImRheSImJnRoaXMubGFzdFdlZWtkYXk7aWYodD09PSIiJiYhbyYmIW4pdGhyb3cgbmV3IFR5cGVFcnJvcigiQ3JvblBhdHRlcm46IGNvbmZpZ3VyYXRpb24gZW50cnkgIitlKyIgKCIrdCsiKSBpcyBlbXB0eSwgY2hlY2sgZm9yIHRyYWlsaW5nIHNwYWNlcy4iKTtpZih0PT09IioiKXJldHVybiBpLmZpbGwoYSk7bGV0IHM9dC5zcGxpdCgiLCIpO2lmKHMubGVuZ3RoPjEpZm9yKGxldCBjPTA7YzxzLmxlbmd0aDtjKyspdGhpcy5wYXJ0VG9BcnJheShlLHNbY10scixhKTtlbHNlIHQuaW5kZXhPZigiLSIpIT09LTEmJnQuaW5kZXhPZigiLyIpIT09LTE/dGhpcy5oYW5kbGVSYW5nZVdpdGhTdGVwcGluZyh0LGUscixhKTp0LmluZGV4T2YoIi0iKSE9PS0xP3RoaXMuaGFuZGxlUmFuZ2UodCxlLHIsYSk6dC5pbmRleE9mKCIvIikhPT0tMT90aGlzLmhhbmRsZVN0ZXBwaW5nKHQsZSxyLGEpOnQhPT0iIiYmdGhpcy5oYW5kbGVOdW1iZXIodCxlLHIsYSl9dGhyb3dBdElsbGVnYWxDaGFyYWN0ZXJzKGUpe2ZvcihsZXQgdD0wO3Q8ZS5sZW5ndGg7dCsrKWlmKCh0PT09Mz8vW14vKjAtOSxcLVd3TGxdKy86dD09PTU/L1teLyowLTksXC0jTGxdKy86L1teLyowLTksXC1dKy8pLnRlc3QoZVt0XSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ3JvblBhdHRlcm46IGNvbmZpZ3VyYXRpb24gZW50cnkgIit0KyIgKCIrZVt0XSsiKSBjb250YWlucyBpbGxlZ2FsIGNoYXJhY3RlcnMuIil9aGFuZGxlTnVtYmVyKGUsdCxyLGEpe2xldCBpPXRoaXMuZXh0cmFjdE50aChlLHQpLG89ZS50b1VwcGVyQ2FzZSgpLmluY2x1ZGVzKCJXIik7aWYodCE9PSJkYXkiJiZvKXRocm93IG5ldyBUeXBlRXJyb3IoIkNyb25QYXR0ZXJuOiBOZWFyZXN0IHdlZWtkYXkgbW9kaWZpZXIgKFcpIG9ubHkgYWxsb3dlZCBpbiBkYXktb2YtbW9udGguIik7byYmKHQ9Im5lYXJlc3RXZWVrZGF5cyIpO2xldCBuPXBhcnNlSW50KGlbMF0sMTApK3I7aWYoaXNOYU4obikpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ3JvblBhdHRlcm46ICIrdCsiIGlzIG5vdCBhIG51bWJlcjogJyIrZSsiJyIpO3RoaXMuc2V0UGFydCh0LG4saVsxXXx8YSl9c2V0UGFydChlLHQscil7aWYoIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0aGlzLGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIkNyb25QYXR0ZXJuOiBJbnZhbGlkIHBhcnQgc3BlY2lmaWVkOiAiK2UpO2lmKGU9PT0iZGF5T2ZXZWVrIil7aWYodD09PTcmJih0PTApLHQ8MHx8dD42KXRocm93IG5ldyBSYW5nZUVycm9yKCJDcm9uUGF0dGVybjogSW52YWxpZCB2YWx1ZSBmb3IgZGF5T2ZXZWVrOiAiK3QpO3RoaXMuc2V0TnRoV2Vla2RheU9mTW9udGgodCxyKTtyZXR1cm59aWYoZT09PSJzZWNvbmQifHxlPT09Im1pbnV0ZSIpe2lmKHQ8MHx8dD49NjApdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkNyb25QYXR0ZXJuOiBJbnZhbGlkIHZhbHVlIGZvciAiK2UrIjogIit0KX1lbHNlIGlmKGU9PT0iaG91ciIpe2lmKHQ8MHx8dD49MjQpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkNyb25QYXR0ZXJuOiBJbnZhbGlkIHZhbHVlIGZvciAiK2UrIjogIit0KX1lbHNlIGlmKGU9PT0iZGF5Inx8ZT09PSJuZWFyZXN0V2Vla2RheXMiKXtpZih0PDB8fHQ+PTMxKXRocm93IG5ldyBSYW5nZUVycm9yKCJDcm9uUGF0dGVybjogSW52YWxpZCB2YWx1ZSBmb3IgIitlKyI6ICIrdCl9ZWxzZSBpZihlPT09Im1vbnRoIil7aWYodDwwfHx0Pj0xMil0aHJvdyBuZXcgUmFuZ2VFcnJvcigiQ3JvblBhdHRlcm46IEludmFsaWQgdmFsdWUgZm9yICIrZSsiOiAiK3QpfWVsc2UgaWYoZT09PSJ5ZWFyIiYmKHQ8MXx8dD49MWU0KSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiQ3JvblBhdHRlcm46IEludmFsaWQgdmFsdWUgZm9yICIrZSsiOiAiK3QrIiAoc3VwcG9ydGVkIHJhbmdlOiAxLTk5OTkpIik7dGhpc1tlXVt0XT1yfXZhbGlkYXRlTm90TmFOKGUsdCl7aWYoaXNOYU4oZSkpdGhyb3cgbmV3IFR5cGVFcnJvcih0KX12YWxpZGF0ZVJhbmdlKGUsdCxyLGEsaSl7aWYoZT50KXRocm93IG5ldyBUeXBlRXJyb3IoIkNyb25QYXR0ZXJuOiBGcm9tIHZhbHVlIGlzIGxhcmdlciB0aGFuIHRvIHZhbHVlOiAnIitpKyInIik7aWYociE9PXZvaWQgMCl7aWYocj09PTApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ3JvblBhdHRlcm46IFN5bnRheCBlcnJvciwgaWxsZWdhbCBzdGVwcGluZzogMCIpO2lmKHI+dGhpc1thXS5sZW5ndGgpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ3JvblBhdHRlcm46IFN5bnRheCBlcnJvciwgc3RlcHMgY2Fubm90IGJlIGdyZWF0ZXIgdGhhbiBtYXhpbXVtIHZhbHVlIG9mIHBhcnQgKCIrdGhpc1thXS5sZW5ndGgrIikiKX19aGFuZGxlUmFuZ2VXaXRoU3RlcHBpbmcoZSx0LHIsYSl7aWYoZS50b1VwcGVyQ2FzZSgpLmluY2x1ZGVzKCJXIikpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ3JvblBhdHRlcm46IFN5bnRheCBlcnJvciwgVyBpcyBub3QgYWxsb3dlZCBpbiByYW5nZXMgd2l0aCBzdGVwcGluZy4iKTtsZXQgaT10aGlzLmV4dHJhY3ROdGgoZSx0KSxvPWlbMF0ubWF0Y2goL14oXGQrKS0oXGQrKVwvKFxkKykkLyk7aWYobz09PW51bGwpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ3JvblBhdHRlcm46IFN5bnRheCBlcnJvciwgaWxsZWdhbCByYW5nZSB3aXRoIHN0ZXBwaW5nOiAnIitlKyInIik7bGV0WyxuLHMsY109byxkPXBhcnNlSW50KG4sMTApK3IsZj1wYXJzZUludChzLDEwKStyLHU9cGFyc2VJbnQoYywxMCk7dGhpcy52YWxpZGF0ZU5vdE5hTihkLCJDcm9uUGF0dGVybjogU3ludGF4IGVycm9yLCBpbGxlZ2FsIGxvd2VyIHJhbmdlIChOYU4pIiksdGhpcy52YWxpZGF0ZU5vdE5hTihmLCJDcm9uUGF0dGVybjogU3ludGF4IGVycm9yLCBpbGxlZ2FsIHVwcGVyIHJhbmdlIChOYU4pIiksdGhpcy52YWxpZGF0ZU5vdE5hTih1LCJDcm9uUGF0dGVybjogU3ludGF4IGVycm9yLCBpbGxlZ2FsIHN0ZXBwaW5nOiAoTmFOKSIpLHRoaXMudmFsaWRhdGVSYW5nZShkLGYsdSx0LGUpO2ZvcihsZXQgcD1kO3A8PWY7cCs9dSl0aGlzLnNldFBhcnQodCxwLGlbMV18fGEpfWV4dHJhY3ROdGgoZSx0KXtsZXQgcj1lLGE7aWYoci5pbmNsdWRlcygiIyIpKXtpZih0IT09ImRheU9mV2VlayIpdGhyb3cgbmV3IEVycm9yKCJDcm9uUGF0dGVybjogbnRoICgjKSBvbmx5IGFsbG93ZWQgaW4gZGF5LW9mLXdlZWsgZmllbGQiKTthPXIuc3BsaXQoIiMiKVsxXSxyPXIuc3BsaXQoIiMiKVswXX1lbHNlIGlmKHIudG9VcHBlckNhc2UoKS5lbmRzV2l0aCgiTCIpKXtpZih0IT09ImRheU9mV2VlayIpdGhyb3cgbmV3IEVycm9yKCJDcm9uUGF0dGVybjogTCBtb2RpZmllciBvbmx5IGFsbG93ZWQgaW4gZGF5LW9mLXdlZWsgZmllbGQgKHVzZSBMIGFsb25lIGZvciBkYXktb2YtbW9udGgpIik7YT0iTCIscj1yLnNsaWNlKDAsLTEpfXJldHVybltyLGFdfWhhbmRsZVJhbmdlKGUsdCxyLGEpe2lmKGUudG9VcHBlckNhc2UoKS5pbmNsdWRlcygiVyIpKXRocm93IG5ldyBUeXBlRXJyb3IoIkNyb25QYXR0ZXJuOiBTeW50YXggZXJyb3IsIFcgaXMgbm90IGFsbG93ZWQgaW4gYSByYW5nZS4iKTtsZXQgaT10aGlzLmV4dHJhY3ROdGgoZSx0KSxvPWlbMF0uc3BsaXQoIi0iKTtpZihvLmxlbmd0aCE9PTIpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ3JvblBhdHRlcm46IFN5bnRheCBlcnJvciwgaWxsZWdhbCByYW5nZTogJyIrZSsiJyIpO2xldCBuPXBhcnNlSW50KG9bMF0sMTApK3Iscz1wYXJzZUludChvWzFdLDEwKStyO3RoaXMudmFsaWRhdGVOb3ROYU4obiwiQ3JvblBhdHRlcm46IFN5bnRheCBlcnJvciwgaWxsZWdhbCBsb3dlciByYW5nZSAoTmFOKSIpLHRoaXMudmFsaWRhdGVOb3ROYU4ocywiQ3JvblBhdHRlcm46IFN5bnRheCBlcnJvciwgaWxsZWdhbCB1cHBlciByYW5nZSAoTmFOKSIpLHRoaXMudmFsaWRhdGVSYW5nZShuLHMsdm9pZCAwLHQsZSk7Zm9yKGxldCBjPW47Yzw9cztjKyspdGhpcy5zZXRQYXJ0KHQsYyxpWzFdfHxhKX1oYW5kbGVTdGVwcGluZyhlLHQscixhKXtpZihlLnRvVXBwZXJDYXNlKCkuaW5jbHVkZXMoIlciKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJDcm9uUGF0dGVybjogU3ludGF4IGVycm9yLCBXIGlzIG5vdCBhbGxvd2VkIGluIHBhcnRzIHdpdGggc3RlcHBpbmcuIik7bGV0IGk9dGhpcy5leHRyYWN0TnRoKGUsdCksbz1pWzBdLnNwbGl0KCIvIik7aWYoby5sZW5ndGghPT0yKXRocm93IG5ldyBUeXBlRXJyb3IoIkNyb25QYXR0ZXJuOiBTeW50YXggZXJyb3IsIGlsbGVnYWwgc3RlcHBpbmc6ICciK2UrIiciKTtpZih0aGlzLnNsb3BweVJhbmdlcylvWzBdPT09IiImJihvWzBdPSIqIik7ZWxzZXtpZihvWzBdPT09IiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ3JvblBhdHRlcm46IFN5bnRheCBlcnJvciwgc3RlcHBpbmcgd2l0aCBtaXNzaW5nIHByZWZpeCAoJyIrZSsiJykgaXMgbm90IGFsbG93ZWQuIFVzZSB3aWxkY2FyZCAoKi9zdGVwKSBvciByYW5nZSAobWluLW1heC9zdGVwKSBpbnN0ZWFkLiIpO2lmKG9bMF0hPT0iKiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ3JvblBhdHRlcm46IFN5bnRheCBlcnJvciwgc3RlcHBpbmcgd2l0aCBudW1lcmljIHByZWZpeCAoJyIrZSsiJykgaXMgbm90IGFsbG93ZWQuIFVzZSB3aWxkY2FyZCAoKi9zdGVwKSBvciByYW5nZSAobWluLW1heC9zdGVwKSBpbnN0ZWFkLiIpfWxldCBuPTA7b1swXSE9PSIqIiYmKG49cGFyc2VJbnQob1swXSwxMCkrcik7bGV0IHM9cGFyc2VJbnQob1sxXSwxMCk7dGhpcy52YWxpZGF0ZU5vdE5hTihzLCJDcm9uUGF0dGVybjogU3ludGF4IGVycm9yLCBpbGxlZ2FsIHN0ZXBwaW5nOiAoTmFOKSIpLHRoaXMudmFsaWRhdGVSYW5nZSgwLHRoaXNbdF0ubGVuZ3RoLTEscyx0LGUpO2ZvcihsZXQgYz1uO2M8dGhpc1t0XS5sZW5ndGg7Yys9cyl0aGlzLnNldFBhcnQodCxjLGlbMV18fGEpfXJlcGxhY2VBbHBoYURheXMoZSl7cmV0dXJuIGUucmVwbGFjZSgvLXN1bi9naSwiLTciKS5yZXBsYWNlKC9zdW4vZ2ksIjAiKS5yZXBsYWNlKC9tb24vZ2ksIjEiKS5yZXBsYWNlKC90dWUvZ2ksIjIiKS5yZXBsYWNlKC93ZWQvZ2ksIjMiKS5yZXBsYWNlKC90aHUvZ2ksIjQiKS5yZXBsYWNlKC9mcmkvZ2ksIjUiKS5yZXBsYWNlKC9zYXQvZ2ksIjYiKX1yZXBsYWNlQWxwaGFEYXlzUXVhcnR6KGUpe3JldHVybiBlLnJlcGxhY2UoL3N1bi9naSwiMSIpLnJlcGxhY2UoL21vbi9naSwiMiIpLnJlcGxhY2UoL3R1ZS9naSwiMyIpLnJlcGxhY2UoL3dlZC9naSwiNCIpLnJlcGxhY2UoL3RodS9naSwiNSIpLnJlcGxhY2UoL2ZyaS9naSwiNiIpLnJlcGxhY2UoL3NhdC9naSwiNyIpfXJlcGxhY2VBbHBoYU1vbnRocyhlKXtyZXR1cm4gZS5yZXBsYWNlKC9qYW4vZ2ksIjEiKS5yZXBsYWNlKC9mZWIvZ2ksIjIiKS5yZXBsYWNlKC9tYXIvZ2ksIjMiKS5yZXBsYWNlKC9hcHIvZ2ksIjQiKS5yZXBsYWNlKC9tYXkvZ2ksIjUiKS5yZXBsYWNlKC9qdW4vZ2ksIjYiKS5yZXBsYWNlKC9qdWwvZ2ksIjciKS5yZXBsYWNlKC9hdWcvZ2ksIjgiKS5yZXBsYWNlKC9zZXAvZ2ksIjkiKS5yZXBsYWNlKC9vY3QvZ2ksIjEwIikucmVwbGFjZSgvbm92L2dpLCIxMSIpLnJlcGxhY2UoL2RlYy9naSwiMTIiKX1oYW5kbGVOaWNrbmFtZXMoZSl7bGV0IHQ9ZS50cmltKCkudG9Mb3dlckNhc2UoKTtpZih0PT09IkB5ZWFybHkifHx0PT09IkBhbm51YWxseSIpcmV0dXJuIjAgMCAxIDEgKiI7aWYodD09PSJAbW9udGhseSIpcmV0dXJuIjAgMCAxICogKiI7aWYodD09PSJAd2Vla2x5IilyZXR1cm4iMCAwICogKiAwIjtpZih0PT09IkBkYWlseSJ8fHQ9PT0iQG1pZG5pZ2h0IilyZXR1cm4iMCAwICogKiAqIjtpZih0PT09IkBob3VybHkiKXJldHVybiIwICogKiAqICoiO2lmKHQ9PT0iQHJlYm9vdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ3JvblBhdHRlcm46IEByZWJvb3QgaXMgbm90IHN1cHBvcnRlZCBpbiB0aGlzIGVudmlyb25tZW50LiBUaGlzIGlzIGFuIGV2ZW50LWJhc2VkIHRyaWdnZXIgdGhhdCByZXF1aXJlcyBzeXN0ZW0gc3RhcnR1cCBkZXRlY3Rpb24uIik7cmV0dXJuIGV9c2V0TnRoV2Vla2RheU9mTW9udGgoZSx0KXtpZih0eXBlb2YgdCE9Im51bWJlciImJnQudG9VcHBlckNhc2UoKT09PSJMIil0aGlzLmRheU9mV2Vla1tlXT10aGlzLmRheU9mV2Vla1tlXXwzMjtlbHNlIGlmKHQ9PT02Myl0aGlzLmRheU9mV2Vla1tlXT02MztlbHNlIGlmKHQ8NiYmdD4wKXRoaXMuZGF5T2ZXZWVrW2VdPXRoaXMuZGF5T2ZXZWVrW2VdfFhkdFt0LTFdO2Vsc2UgdGhyb3cgbmV3IFR5cGVFcnJvcihgQ3JvblBhdHRlcm46IG50aCB3ZWVrZGF5IG91dCBvZiByYW5nZSwgc2hvdWxkIGJlIDEtNSBvciBMLiBWYWx1ZTogJHt0fSwgVHlwZTogJHt0eXBlb2YgdH1gKX19LFYzZT1bMzEsMjgsMzEsMzAsMzEsMzAsMzEsMzEsMzAsMzEsMzAsMzFdLHZhPVtbIm1vbnRoIiwieWVhciIsMF0sWyJkYXkiLCJtb250aCIsLTFdLFsiaG91ciIsImRheSIsMF0sWyJtaW51dGUiLCJob3VyIiwwXSxbInNlY29uZCIsIm1pbnV0ZSIsMF1dLGtpPWNsYXNzIEtkdHt0ejttcztzZWNvbmQ7bWludXRlO2hvdXI7ZGF5O21vbnRoO3llYXI7Y29uc3RydWN0b3IodCxyKXtpZih0aGlzLnR6PXIsdCYmdCBpbnN0YW5jZW9mIERhdGUpaWYoIWlzTmFOKHQpKXRoaXMuZnJvbURhdGUodCk7ZWxzZSB0aHJvdyBuZXcgVHlwZUVycm9yKCJDcm9uRGF0ZTogSW52YWxpZCBkYXRlIHBhc3NlZCB0byBDcm9uRGF0ZSBjb25zdHJ1Y3RvciIpO2Vsc2UgaWYodD09bnVsbCl0aGlzLmZyb21EYXRlKG5ldyBEYXRlKTtlbHNlIGlmKHQmJnR5cGVvZiB0PT0ic3RyaW5nIil0aGlzLmZyb21TdHJpbmcodCk7ZWxzZSBpZih0IGluc3RhbmNlb2YgS2R0KXRoaXMuZnJvbUNyb25EYXRlKHQpO2Vsc2UgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ3JvbkRhdGU6IEludmFsaWQgdHlwZSAoIit0eXBlb2YgdCsiKSBwYXNzZWQgdG8gQ3JvbkRhdGUgY29uc3RydWN0b3IiKX1nZXRMYXN0RGF5T2ZNb250aCh0LHIpe3JldHVybiByIT09MT9WM2Vbcl06bmV3IERhdGUoRGF0ZS5VVEModCxyKzEsMCkpLmdldFVUQ0RhdGUoKX1nZXRMYXN0V2Vla2RheSh0LHIpe2xldCBhPXRoaXMuZ2V0TGFzdERheU9mTW9udGgodCxyKSxpPW5ldyBEYXRlKERhdGUuVVRDKHQscixhKSkuZ2V0VVRDRGF5KCk7cmV0dXJuIGk9PT0wP2EtMjppPT09Nj9hLTE6YX1nZXROZWFyZXN0V2Vla2RheSh0LHIsYSl7bGV0IGk9dGhpcy5nZXRMYXN0RGF5T2ZNb250aCh0LHIpO2lmKGE+aSlyZXR1cm4tMTtsZXQgbz1uZXcgRGF0ZShEYXRlLlVUQyh0LHIsYSkpLmdldFVUQ0RheSgpO3JldHVybiBvPT09MD9hPT09aT9hLTI6YSsxOm89PT02P2E9PT0xP2ErMjphLTE6YX1pc050aFdlZWtkYXlPZk1vbnRoKHQscixhLGkpe2xldCBvPW5ldyBEYXRlKERhdGUuVVRDKHQscixhKSkuZ2V0VVRDRGF5KCksbj0wO2ZvcihsZXQgcz0xO3M8PWE7cysrKW5ldyBEYXRlKERhdGUuVVRDKHQscixzKSkuZ2V0VVRDRGF5KCk9PT1vJiZuKys7aWYoaSY2MyYmWGR0W24tMV0maSlyZXR1cm4hMDtpZihpJjMyKXtsZXQgcz10aGlzLmdldExhc3REYXlPZk1vbnRoKHQscik7Zm9yKGxldCBjPWErMTtjPD1zO2MrKylpZihuZXcgRGF0ZShEYXRlLlVUQyh0LHIsYykpLmdldFVUQ0RheSgpPT09bylyZXR1cm4hMTtyZXR1cm4hMH1yZXR1cm4hMX1mcm9tRGF0ZSh0KXtpZih0aGlzLnR6IT09dm9pZCAwKWlmKHR5cGVvZiB0aGlzLnR6PT0ibnVtYmVyIil0aGlzLm1zPXQuZ2V0VVRDTWlsbGlzZWNvbmRzKCksdGhpcy5zZWNvbmQ9dC5nZXRVVENTZWNvbmRzKCksdGhpcy5taW51dGU9dC5nZXRVVENNaW51dGVzKCkrdGhpcy50eix0aGlzLmhvdXI9dC5nZXRVVENIb3VycygpLHRoaXMuZGF5PXQuZ2V0VVRDRGF0ZSgpLHRoaXMubW9udGg9dC5nZXRVVENNb250aCgpLHRoaXMueWVhcj10LmdldFVUQ0Z1bGxZZWFyKCksdGhpcy5hcHBseSgpO2Vsc2UgdHJ5e2xldCByPUdnKHQsdGhpcy50eik7dGhpcy5tcz10LmdldE1pbGxpc2Vjb25kcygpLHRoaXMuc2Vjb25kPXIucyx0aGlzLm1pbnV0ZT1yLmksdGhpcy5ob3VyPXIuaCx0aGlzLmRheT1yLmQsdGhpcy5tb250aD1yLm0tMSx0aGlzLnllYXI9ci55fWNhdGNoKHIpe2xldCBhPXIgaW5zdGFuY2VvZiBFcnJvcj9yLm1lc3NhZ2U6U3RyaW5nKHIpO3Rocm93IG5ldyBUeXBlRXJyb3IoYENyb25EYXRlOiBGYWlsZWQgdG8gY29udmVydCBkYXRlIHRvIHRpbWV6b25lICcke3RoaXMudHp9Jy4gVGhpcyBtYXkgaGFwcGVuIHdpdGggaW52YWxpZCB0aW1lem9uZSBuYW1lcyBvciBkYXRlcy4gT3JpZ2luYWwgZXJyb3I6ICR7YX1gKX1lbHNlIHRoaXMubXM9dC5nZXRNaWxsaXNlY29uZHMoKSx0aGlzLnNlY29uZD10LmdldFNlY29uZHMoKSx0aGlzLm1pbnV0ZT10LmdldE1pbnV0ZXMoKSx0aGlzLmhvdXI9dC5nZXRIb3VycygpLHRoaXMuZGF5PXQuZ2V0RGF0ZSgpLHRoaXMubW9udGg9dC5nZXRNb250aCgpLHRoaXMueWVhcj10LmdldEZ1bGxZZWFyKCl9ZnJvbUNyb25EYXRlKHQpe3RoaXMudHo9dC50eix0aGlzLnllYXI9dC55ZWFyLHRoaXMubW9udGg9dC5tb250aCx0aGlzLmRheT10LmRheSx0aGlzLmhvdXI9dC5ob3VyLHRoaXMubWludXRlPXQubWludXRlLHRoaXMuc2Vjb25kPXQuc2Vjb25kLHRoaXMubXM9dC5tc31hcHBseSgpe2lmKHRoaXMubW9udGg+MTF8fHRoaXMubW9udGg8MHx8dGhpcy5kYXk+VjNlW3RoaXMubW9udGhdfHx0aGlzLmRheTwxfHx0aGlzLmhvdXI+NTl8fHRoaXMubWludXRlPjU5fHx0aGlzLnNlY29uZD41OXx8dGhpcy5ob3VyPDB8fHRoaXMubWludXRlPDB8fHRoaXMuc2Vjb25kPDApe2xldCB0PW5ldyBEYXRlKERhdGUuVVRDKHRoaXMueWVhcix0aGlzLm1vbnRoLHRoaXMuZGF5LHRoaXMuaG91cix0aGlzLm1pbnV0ZSx0aGlzLnNlY29uZCx0aGlzLm1zKSk7cmV0dXJuIHRoaXMubXM9dC5nZXRVVENNaWxsaXNlY29uZHMoKSx0aGlzLnNlY29uZD10LmdldFVUQ1NlY29uZHMoKSx0aGlzLm1pbnV0ZT10LmdldFVUQ01pbnV0ZXMoKSx0aGlzLmhvdXI9dC5nZXRVVENIb3VycygpLHRoaXMuZGF5PXQuZ2V0VVRDRGF0ZSgpLHRoaXMubW9udGg9dC5nZXRVVENNb250aCgpLHRoaXMueWVhcj10LmdldFVUQ0Z1bGxZZWFyKCksITB9ZWxzZSByZXR1cm4hMX1mcm9tU3RyaW5nKHQpe2lmKHR5cGVvZiB0aGlzLnR6PT0ibnVtYmVyIil7bGV0IHI9WWR0KHQpO3RoaXMubXM9ci5nZXRVVENNaWxsaXNlY29uZHMoKSx0aGlzLnNlY29uZD1yLmdldFVUQ1NlY29uZHMoKSx0aGlzLm1pbnV0ZT1yLmdldFVUQ01pbnV0ZXMoKSx0aGlzLmhvdXI9ci5nZXRVVENIb3VycygpLHRoaXMuZGF5PXIuZ2V0VVRDRGF0ZSgpLHRoaXMubW9udGg9ci5nZXRVVENNb250aCgpLHRoaXMueWVhcj1yLmdldFVUQ0Z1bGxZZWFyKCksdGhpcy5hcHBseSgpfWVsc2UgcmV0dXJuIHRoaXMuZnJvbURhdGUoWWR0KHQsdGhpcy50eikpfWZpbmROZXh0KHQscixhLGkpe3JldHVybiB0aGlzLl9maW5kTWF0Y2godCxyLGEsaSwxKX1fZmluZE1hdGNoKHQscixhLGksbyl7bGV0IG49dGhpc1tyXSxzO2EubGFzdERheU9mTW9udGgmJihzPXRoaXMuZ2V0TGFzdERheU9mTW9udGgodGhpcy55ZWFyLHRoaXMubW9udGgpKTtsZXQgYz0hYS5zdGFyRE9XJiZyPT0iZGF5Ij9uZXcgRGF0ZShEYXRlLlVUQyh0aGlzLnllYXIsdGhpcy5tb250aCwxLDAsMCwwLDApKS5nZXRVVENEYXkoKTp2b2lkIDAsZD10aGlzW3JdK2ksZj1vPT09MT91PT51PGFbcl0ubGVuZ3RoOnU9PnU+PTA7Zm9yKGxldCB1PWQ7Zih1KTt1Kz1vKXtsZXQgcD1hW3JdW3VdO2lmKHI9PT0iZGF5IiYmIXApe2ZvcihsZXQgaD0wO2g8YS5uZWFyZXN0V2Vla2RheXMubGVuZ3RoO2grKylpZihhLm5lYXJlc3RXZWVrZGF5c1toXSl7bGV0IGI9dGhpcy5nZXROZWFyZXN0V2Vla2RheSh0aGlzLnllYXIsdGhpcy5tb250aCxoLWkpO2lmKGI9PT0tMSljb250aW51ZTtpZihiPT09dS1pKXtwPTE7YnJlYWt9fX1pZihyPT09ImRheSImJmEubGFzdFdlZWtkYXkpe2xldCBoPXRoaXMuZ2V0TGFzdFdlZWtkYXkodGhpcy55ZWFyLHRoaXMubW9udGgpO3UtaT09PWgmJihwPTEpfWlmKHI9PT0iZGF5IiYmYS5sYXN0RGF5T2ZNb250aCYmdS1pPT1zJiYocD0xKSxyPT09ImRheSImJiFhLnN0YXJET1cpe2xldCBoPWEuZGF5T2ZXZWVrWyhjKyh1LWktMSkpJTddO2lmKGgmJmgmNjMpaD10aGlzLmlzTnRoV2Vla2RheU9mTW9udGgodGhpcy55ZWFyLHRoaXMubW9udGgsdS1pLGgpPzE6MDtlbHNlIGlmKGgpdGhyb3cgbmV3IEVycm9yKGBDcm9uRGF0ZTogSW52YWxpZCB2YWx1ZSBmb3IgZGF5T2ZXZWVrIGVuY291bnRlcmVkLiAke2h9YCk7YS51c2VBbmRMb2dpYz9wPXAmJmg6IXQuZG9tQW5kRG93JiYhYS5zdGFyRE9NP3A9cHx8aDpwPXAmJmh9aWYocClyZXR1cm4gdGhpc1tyXT11LWksbiE9PXRoaXNbcl0/MjoxfXJldHVybiAzfXJlY3Vyc2UodCxyLGEpe2lmKGE9PT0wJiYhdC5zdGFyWWVhcil7aWYodGhpcy55ZWFyPj0wJiZ0aGlzLnllYXI8dC55ZWFyLmxlbmd0aCYmdC55ZWFyW3RoaXMueWVhcl09PT0wKXtsZXQgbz0tMTtmb3IobGV0IG49dGhpcy55ZWFyKzE7bjx0LnllYXIubGVuZ3RoJiZuPDFlNDtuKyspaWYodC55ZWFyW25dPT09MSl7bz1uO2JyZWFrfWlmKG89PT0tMSlyZXR1cm4gbnVsbDt0aGlzLnllYXI9byx0aGlzLm1vbnRoPTAsdGhpcy5kYXk9MSx0aGlzLmhvdXI9MCx0aGlzLm1pbnV0ZT0wLHRoaXMuc2Vjb25kPTAsdGhpcy5tcz0wfWlmKHRoaXMueWVhcj49MWU0KXJldHVybiBudWxsfWxldCBpPXRoaXMuZmluZE5leHQocix2YVthXVswXSx0LHZhW2FdWzJdKTtpZihpPjEpe2xldCBvPWErMTtmb3IoO288dmEubGVuZ3RoOyl0aGlzW3ZhW29dWzBdXT0tdmFbb11bMl0sbysrO2lmKGk9PT0zKXtpZih0aGlzW3ZhW2FdWzFdXSsrLHRoaXNbdmFbYV1bMF1dPS12YVthXVsyXSx0aGlzLmFwcGx5KCksYT09PTAmJiF0LnN0YXJZZWFyKXtmb3IoO3RoaXMueWVhcj49MCYmdGhpcy55ZWFyPHQueWVhci5sZW5ndGgmJnQueWVhclt0aGlzLnllYXJdPT09MCYmdGhpcy55ZWFyPDFlNDspdGhpcy55ZWFyKys7aWYodGhpcy55ZWFyPj0xZTR8fHRoaXMueWVhcj49dC55ZWFyLmxlbmd0aClyZXR1cm4gbnVsbH1yZXR1cm4gdGhpcy5yZWN1cnNlKHQsciwwKX1lbHNlIGlmKHRoaXMuYXBwbHkoKSlyZXR1cm4gdGhpcy5yZWN1cnNlKHQscixhLTEpfXJldHVybiBhKz0xLGE+PXZhLmxlbmd0aD90aGlzOih0LnN0YXJZZWFyP3RoaXMueWVhcj49M2UzOnRoaXMueWVhcj49MWU0KT9udWxsOnRoaXMucmVjdXJzZSh0LHIsYSl9aW5jcmVtZW50KHQscixhKXtyZXR1cm4gdGhpcy5zZWNvbmQrPXIuaW50ZXJ2YWwhPT12b2lkIDAmJnIuaW50ZXJ2YWw+MSYmYT9yLmludGVydmFsOjEsdGhpcy5tcz0wLHRoaXMuYXBwbHkoKSx0aGlzLnJlY3Vyc2UodCxyLDApfWRlY3JlbWVudCh0LHIpe3JldHVybiB0aGlzLnNlY29uZC09ci5pbnRlcnZhbCE9PXZvaWQgMCYmci5pbnRlcnZhbD4xP3IuaW50ZXJ2YWw6MSx0aGlzLm1zPTAsdGhpcy5hcHBseSgpLHRoaXMucmVjdXJzZUJhY2t3YXJkKHQsciwwLDApfXJlY3Vyc2VCYWNrd2FyZCh0LHIsYSxpPTApe2lmKGk+MWU0KXJldHVybiBudWxsO2lmKGE9PT0wJiYhdC5zdGFyWWVhcil7aWYodGhpcy55ZWFyPj0wJiZ0aGlzLnllYXI8dC55ZWFyLmxlbmd0aCYmdC55ZWFyW3RoaXMueWVhcl09PT0wKXtsZXQgbj0tMTtmb3IobGV0IHM9dGhpcy55ZWFyLTE7cz49MDtzLS0paWYodC55ZWFyW3NdPT09MSl7bj1zO2JyZWFrfWlmKG49PT0tMSlyZXR1cm4gbnVsbDt0aGlzLnllYXI9bix0aGlzLm1vbnRoPTExLHRoaXMuZGF5PTMxLHRoaXMuaG91cj0yMyx0aGlzLm1pbnV0ZT01OSx0aGlzLnNlY29uZD01OSx0aGlzLm1zPTB9aWYodGhpcy55ZWFyPDApcmV0dXJuIG51bGx9bGV0IG89dGhpcy5maW5kUHJldmlvdXMocix2YVthXVswXSx0LHZhW2FdWzJdKTtpZihvPjEpe2xldCBuPWErMTtmb3IoO248dmEubGVuZ3RoOyl7bGV0IHM9dmFbbl1bMF0sYz12YVtuXVsyXSxkPXRoaXMuZ2V0TWF4UGF0dGVyblZhbHVlKHMsdCxjKTt0aGlzW3NdPWQsbisrfWlmKG89PT0zKXtpZih0aGlzW3ZhW2FdWzFdXS0tLGE9PT0wKXtsZXQgZj10aGlzLmdldExhc3REYXlPZk1vbnRoKHRoaXMueWVhcix0aGlzLm1vbnRoKTt0aGlzLmRheT5mJiYodGhpcy5kYXk9Zil9aWYoYT09PTEpaWYodGhpcy5kYXk8PTApdGhpcy5kYXk9MTtlbHNle2xldCBmPXRoaXMueWVhcix1PXRoaXMubW9udGg7Zm9yKDt1PDA7KXUrPTEyLGYtLTtmb3IoO3U+MTE7KXUtPTEyLGYrKztsZXQgcD11IT09MT9WM2VbdV06bmV3IERhdGUoRGF0ZS5VVEMoZix1KzEsMCkpLmdldFVUQ0RhdGUoKTt0aGlzLmRheT5wJiYodGhpcy5kYXk9cCl9dGhpcy5hcHBseSgpO2xldCBzPXZhW2FdWzBdLGM9dmFbYV1bMl0sZD10aGlzLmdldE1heFBhdHRlcm5WYWx1ZShzLHQsYyk7aWYocz09PSJkYXkiKXtsZXQgZj10aGlzLmdldExhc3REYXlPZk1vbnRoKHRoaXMueWVhcix0aGlzLm1vbnRoKTt0aGlzW3NdPU1hdGgubWluKGQsZil9ZWxzZSB0aGlzW3NdPWQ7aWYodGhpcy5hcHBseSgpLGE9PT0wKXtsZXQgZj12YVsxXVsyXSx1PXRoaXMuZ2V0TWF4UGF0dGVyblZhbHVlKCJkYXkiLHQsZikscD10aGlzLmdldExhc3REYXlPZk1vbnRoKHRoaXMueWVhcix0aGlzLm1vbnRoKSxoPU1hdGgubWluKHUscCk7aCE9PXRoaXMuZGF5JiYodGhpcy5kYXk9aCx0aGlzLmhvdXI9dGhpcy5nZXRNYXhQYXR0ZXJuVmFsdWUoImhvdXIiLHQsdmFbMl1bMl0pLHRoaXMubWludXRlPXRoaXMuZ2V0TWF4UGF0dGVyblZhbHVlKCJtaW51dGUiLHQsdmFbM11bMl0pLHRoaXMuc2Vjb25kPXRoaXMuZ2V0TWF4UGF0dGVyblZhbHVlKCJzZWNvbmQiLHQsdmFbNF1bMl0pKX1pZihhPT09MCYmIXQuc3RhclllYXIpe2Zvcig7dGhpcy55ZWFyPj0wJiZ0aGlzLnllYXI8dC55ZWFyLmxlbmd0aCYmdC55ZWFyW3RoaXMueWVhcl09PT0wOyl0aGlzLnllYXItLTtpZih0aGlzLnllYXI8MClyZXR1cm4gbnVsbH1yZXR1cm4gdGhpcy5yZWN1cnNlQmFja3dhcmQodCxyLDAsaSsxKX1lbHNlIGlmKHRoaXMuYXBwbHkoKSlyZXR1cm4gdGhpcy5yZWN1cnNlQmFja3dhcmQodCxyLGEtMSxpKzEpfXJldHVybiBhKz0xLGE+PXZhLmxlbmd0aD90aGlzOnRoaXMueWVhcjwwP251bGw6dGhpcy5yZWN1cnNlQmFja3dhcmQodCxyLGEsaSsxKX1nZXRNYXhQYXR0ZXJuVmFsdWUodCxyLGEpe2lmKHQ9PT0iZGF5IiYmci5sYXN0RGF5T2ZNb250aClyZXR1cm4gdGhpcy5nZXRMYXN0RGF5T2ZNb250aCh0aGlzLnllYXIsdGhpcy5tb250aCk7aWYodD09PSJkYXkiJiYhci5zdGFyRE9XKXJldHVybiB0aGlzLmdldExhc3REYXlPZk1vbnRoKHRoaXMueWVhcix0aGlzLm1vbnRoKTtmb3IobGV0IGk9clt0XS5sZW5ndGgtMTtpPj0wO2ktLSlpZihyW3RdW2ldKXJldHVybiBpLWE7cmV0dXJuIHJbdF0ubGVuZ3RoLTEtYX1maW5kUHJldmlvdXModCxyLGEsaSl7cmV0dXJuIHRoaXMuX2ZpbmRNYXRjaCh0LHIsYSxpLC0xKX1nZXREYXRlKHQpe3JldHVybiB0fHx0aGlzLnR6PT09dm9pZCAwP25ldyBEYXRlKHRoaXMueWVhcix0aGlzLm1vbnRoLHRoaXMuZGF5LHRoaXMuaG91cix0aGlzLm1pbnV0ZSx0aGlzLnNlY29uZCx0aGlzLm1zKTp0eXBlb2YgdGhpcy50ej09Im51bWJlciI/bmV3IERhdGUoRGF0ZS5VVEModGhpcy55ZWFyLHRoaXMubW9udGgsdGhpcy5kYXksdGhpcy5ob3VyLHRoaXMubWludXRlLXRoaXMudHosdGhpcy5zZWNvbmQsdGhpcy5tcykpOlpkdChqM2UodGhpcy55ZWFyLHRoaXMubW9udGgrMSx0aGlzLmRheSx0aGlzLmhvdXIsdGhpcy5taW51dGUsdGhpcy5zZWNvbmQsdGhpcy50eiksITEpfWdldFRpbWUoKXtyZXR1cm4gdGhpcy5nZXREYXRlKCExKS5nZXRUaW1lKCl9bWF0Y2godCxyKXtpZighdC5zdGFyWWVhciYmKHRoaXMueWVhcjwwfHx0aGlzLnllYXI+PXQueWVhci5sZW5ndGh8fHQueWVhclt0aGlzLnllYXJdPT09MCkpcmV0dXJuITE7Zm9yKGxldCBhPTA7YTx2YS5sZW5ndGg7YSsrKXtsZXQgaT12YVthXVswXSxvPXZhW2FdWzJdLG49dGhpc1tpXTtpZihuK288MHx8bitvPj10W2ldLmxlbmd0aClyZXR1cm4hMTtsZXQgcz10W2ldW24rb107aWYoaT09PSJkYXkiKXtpZighcyl7Zm9yKGxldCBjPTA7Yzx0Lm5lYXJlc3RXZWVrZGF5cy5sZW5ndGg7YysrKWlmKHQubmVhcmVzdFdlZWtkYXlzW2NdKXtsZXQgZD10aGlzLmdldE5lYXJlc3RXZWVrZGF5KHRoaXMueWVhcix0aGlzLm1vbnRoLGMtbyk7aWYoZCE9PS0xJiZkPT09bil7cz0xO2JyZWFrfX19aWYodC5sYXN0V2Vla2RheSl7bGV0IGM9dGhpcy5nZXRMYXN0V2Vla2RheSh0aGlzLnllYXIsdGhpcy5tb250aCk7bj09PWMmJihzPTEpfWlmKHQubGFzdERheU9mTW9udGgpe2xldCBjPXRoaXMuZ2V0TGFzdERheU9mTW9udGgodGhpcy55ZWFyLHRoaXMubW9udGgpO249PT1jJiYocz0xKX1pZighdC5zdGFyRE9XKXtsZXQgYz1uZXcgRGF0ZShEYXRlLlVUQyh0aGlzLnllYXIsdGhpcy5tb250aCwxLDAsMCwwLDApKS5nZXRVVENEYXkoKSxkPXQuZGF5T2ZXZWVrWyhjKyhuLTEpKSU3XTtkJiZkJjYzJiYoZD10aGlzLmlzTnRoV2Vla2RheU9mTW9udGgodGhpcy55ZWFyLHRoaXMubW9udGgsbixkKT8xOjApLHQudXNlQW5kTG9naWM/cz1zJiZkOiFyLmRvbUFuZERvdyYmIXQuc3RhckRPTT9zPXN8fGQ6cz1zJiZkfX1pZighcylyZXR1cm4hMX1yZXR1cm4hMH19O1FkdD0zMCoxZTMsYmg9W10sSmR0PWNsYXNze25hbWU7b3B0aW9ucztfc3RhdGVzO2ZuO2dldFR6KCl7cmV0dXJuIHRoaXMub3B0aW9ucy50aW1lem9uZXx8dGhpcy5vcHRpb25zLnV0Y09mZnNldH1hcHBseURheU9mZnNldChlKXtpZih0aGlzLm9wdGlvbnMuZGF5T2Zmc2V0IT09dm9pZCAwJiZ0aGlzLm9wdGlvbnMuZGF5T2Zmc2V0IT09MCl7bGV0IHQ9dGhpcy5vcHRpb25zLmRheU9mZnNldCoyNCo2MCo2MCoxZTM7cmV0dXJuIG5ldyBEYXRlKGUuZ2V0VGltZSgpK3QpfXJldHVybiBlfWNvbnN0cnVjdG9yKGUsdCxyKXtsZXQgYSxpO2lmKFlnKHQpKWk9dDtlbHNlIGlmKHR5cGVvZiB0PT0ib2JqZWN0IilhPXQ7ZWxzZSBpZih0IT09dm9pZCAwKXRocm93IG5ldyBFcnJvcigiQ3JvbjogSW52YWxpZCBhcmd1bWVudCBwYXNzZWQgZm9yIG9wdGlvbnNJbi4gU2hvdWxkIGJlIG9uZSBvZiBmdW5jdGlvbiwgb3Igb2JqZWN0IChvcHRpb25zKS4iKTtpZihZZyhyKSlpPXI7ZWxzZSBpZih0eXBlb2Ygcj09Im9iamVjdCIpYT1yO2Vsc2UgaWYociE9PXZvaWQgMCl0aHJvdyBuZXcgRXJyb3IoIkNyb246IEludmFsaWQgYXJndW1lbnQgcGFzc2VkIGZvciBmdW5jSW4uIFNob3VsZCBiZSBvbmUgb2YgZnVuY3Rpb24sIG9yIG9iamVjdCAob3B0aW9ucykuIik7aWYodGhpcy5uYW1lPWE/Lm5hbWUsdGhpcy5vcHRpb25zPXBVcihhKSx0aGlzLl9zdGF0ZXM9e2tpbGw6ITEsYmxvY2tpbmc6ITEscHJldmlvdXNSdW46dm9pZCAwLGN1cnJlbnRSdW46dm9pZCAwLG9uY2U6dm9pZCAwLGN1cnJlbnRUaW1lb3V0OnZvaWQgMCxtYXhSdW5zOmE/YS5tYXhSdW5zOnZvaWQgMCxwYXVzZWQ6YT9hLnBhdXNlZDohMSxwYXR0ZXJuOm5ldyBtUSgiKiAqICogKiAqIix2b2lkIDAse21vZGU6ImF1dG8ifSl9LGUmJihlIGluc3RhbmNlb2YgRGF0ZXx8dHlwZW9mIGU9PSJzdHJpbmciJiZlLmluZGV4T2YoIjoiKT4wKT90aGlzLl9zdGF0ZXMub25jZT1uZXcga2koZSx0aGlzLmdldFR6KCkpOnRoaXMuX3N0YXRlcy5wYXR0ZXJuPW5ldyBtUShlLHRoaXMub3B0aW9ucy50aW1lem9uZSx7bW9kZTp0aGlzLm9wdGlvbnMubW9kZSxhbHRlcm5hdGl2ZVdlZWtkYXlzOnRoaXMub3B0aW9ucy5hbHRlcm5hdGl2ZVdlZWtkYXlzLHNsb3BweVJhbmdlczp0aGlzLm9wdGlvbnMuc2xvcHB5UmFuZ2VzfSksdGhpcy5uYW1lKXtpZihiaC5maW5kKG89Pm8ubmFtZT09PXRoaXMubmFtZSkpdGhyb3cgbmV3IEVycm9yKCJDcm9uOiBUcmllZCB0byBpbml0aWFsaXplIG5ldyBuYW1lZCBqb2IgJyIrdGhpcy5uYW1lKyInLCBidXQgbmFtZSBhbHJlYWR5IHRha2VuLiIpO2JoLnB1c2godGhpcyl9cmV0dXJuIGkhPT12b2lkIDAmJmhVcihpKSYmKHRoaXMuZm49aSx0aGlzLnNjaGVkdWxlKCkpLHRoaXN9bmV4dFJ1bihlKXtsZXQgdD10aGlzLl9uZXh0KGUpO3JldHVybiB0P3RoaXMuYXBwbHlEYXlPZmZzZXQodC5nZXREYXRlKCExKSk6bnVsbH1uZXh0UnVucyhlLHQpe3RoaXMuX3N0YXRlcy5tYXhSdW5zIT09dm9pZCAwJiZlPnRoaXMuX3N0YXRlcy5tYXhSdW5zJiYoZT10aGlzLl9zdGF0ZXMubWF4UnVucyk7bGV0IHI9dHx8dGhpcy5fc3RhdGVzLmN1cnJlbnRSdW58fHZvaWQgMDtyZXR1cm4gdGhpcy5fZW51bWVyYXRlUnVucyhlLHIsIm5leHQiKX1wcmV2aW91c1J1bnMoZSx0KXtyZXR1cm4gdGhpcy5fZW51bWVyYXRlUnVucyhlLHR8fHZvaWQgMCwicHJldmlvdXMiKX1fZW51bWVyYXRlUnVucyhlLHQscil7bGV0IGE9W10saT10P25ldyBraSh0LHRoaXMuZ2V0VHooKSk6bnVsbCxvPXI9PT0ibmV4dCI/dGhpcy5fbmV4dDp0aGlzLl9wcmV2aW91cztmb3IoO2UtLTspe2xldCBuPW8uY2FsbCh0aGlzLGkpO2lmKCFuKWJyZWFrO2xldCBzPW4uZ2V0RGF0ZSghMSk7YS5wdXNoKHRoaXMuYXBwbHlEYXlPZmZzZXQocykpLGk9bn1yZXR1cm4gYX1tYXRjaChlKXtpZih0aGlzLl9zdGF0ZXMub25jZSl7bGV0IHI9bmV3IGtpKGUsdGhpcy5nZXRUeigpKTtyLm1zPTA7bGV0IGE9bmV3IGtpKHRoaXMuX3N0YXRlcy5vbmNlLHRoaXMuZ2V0VHooKSk7cmV0dXJuIGEubXM9MCxyLmdldFRpbWUoKT09PWEuZ2V0VGltZSgpfWxldCB0PW5ldyBraShlLHRoaXMuZ2V0VHooKSk7cmV0dXJuIHQubXM9MCx0Lm1hdGNoKHRoaXMuX3N0YXRlcy5wYXR0ZXJuLHRoaXMub3B0aW9ucyl9Z2V0UGF0dGVybigpe2lmKCF0aGlzLl9zdGF0ZXMub25jZSlyZXR1cm4gdGhpcy5fc3RhdGVzLnBhdHRlcm4/dGhpcy5fc3RhdGVzLnBhdHRlcm4ucGF0dGVybjp2b2lkIDB9Z2V0T25jZSgpe3JldHVybiB0aGlzLl9zdGF0ZXMub25jZT90aGlzLl9zdGF0ZXMub25jZS5nZXREYXRlKCk6bnVsbH1pc1J1bm5pbmcoKXtsZXQgZT10aGlzLm5leHRSdW4odGhpcy5fc3RhdGVzLmN1cnJlbnRSdW4pLHQ9IXRoaXMuX3N0YXRlcy5wYXVzZWQscj10aGlzLmZuIT09dm9pZCAwLGE9IXRoaXMuX3N0YXRlcy5raWxsO3JldHVybiB0JiZyJiZhJiZlIT09bnVsbH1pc1N0b3BwZWQoKXtyZXR1cm4gdGhpcy5fc3RhdGVzLmtpbGx9aXNCdXN5KCl7cmV0dXJuIHRoaXMuX3N0YXRlcy5ibG9ja2luZ31jdXJyZW50UnVuKCl7cmV0dXJuIHRoaXMuX3N0YXRlcy5jdXJyZW50UnVuP3RoaXMuX3N0YXRlcy5jdXJyZW50UnVuLmdldERhdGUoKTpudWxsfXByZXZpb3VzUnVuKCl7cmV0dXJuIHRoaXMuX3N0YXRlcy5wcmV2aW91c1J1bj90aGlzLl9zdGF0ZXMucHJldmlvdXNSdW4uZ2V0RGF0ZSgpOm51bGx9bXNUb05leHQoZSl7bGV0IHQ9dGhpcy5fbmV4dChlKTtyZXR1cm4gdD9lIGluc3RhbmNlb2Yga2l8fGUgaW5zdGFuY2VvZiBEYXRlP3QuZ2V0VGltZSgpLWUuZ2V0VGltZSgpOnQuZ2V0VGltZSgpLW5ldyBraShlKS5nZXRUaW1lKCk6bnVsbH1zdG9wKCl7dGhpcy5fc3RhdGVzLmtpbGw9ITAsdGhpcy5fc3RhdGVzLmN1cnJlbnRUaW1lb3V0JiZjbGVhclRpbWVvdXQodGhpcy5fc3RhdGVzLmN1cnJlbnRUaW1lb3V0KTtsZXQgZT1iaC5pbmRleE9mKHRoaXMpO2U+PTAmJmJoLnNwbGljZShlLDEpfXBhdXNlKCl7cmV0dXJuIHRoaXMuX3N0YXRlcy5wYXVzZWQ9ITAsIXRoaXMuX3N0YXRlcy5raWxsfXJlc3VtZSgpe3JldHVybiB0aGlzLl9zdGF0ZXMucGF1c2VkPSExLCF0aGlzLl9zdGF0ZXMua2lsbH1zY2hlZHVsZShlKXtpZihlJiZ0aGlzLmZuKXRocm93IG5ldyBFcnJvcigiQ3JvbjogSXQgaXMgbm90IGFsbG93ZWQgdG8gc2NoZWR1bGUgdHdvIGZ1bmN0aW9ucyB1c2luZyB0aGUgc2FtZSBDcm9uZXIgaW5zdGFuY2UuIik7ZSYmKHRoaXMuZm49ZSk7bGV0IHQ9dGhpcy5tc1RvTmV4dCgpLHI9dGhpcy5uZXh0UnVuKHRoaXMuX3N0YXRlcy5jdXJyZW50UnVuKTtyZXR1cm4gdD09bnVsbHx8aXNOYU4odCl8fHI9PT1udWxsP3RoaXM6KHQ+UWR0JiYodD1RZHQpLHRoaXMuX3N0YXRlcy5jdXJyZW50VGltZW91dD1zZXRUaW1lb3V0KCgpPT50aGlzLl9jaGVja1RyaWdnZXIociksdCksdGhpcy5fc3RhdGVzLmN1cnJlbnRUaW1lb3V0JiZ0aGlzLm9wdGlvbnMudW5yZWYmJm1Vcih0aGlzLl9zdGF0ZXMuY3VycmVudFRpbWVvdXQpLHRoaXMpfWFzeW5jIF90cmlnZ2VyKGUpe3RoaXMuX3N0YXRlcy5ibG9ja2luZz0hMCx0aGlzLl9zdGF0ZXMuY3VycmVudFJ1bj1uZXcga2kodm9pZCAwLHRoaXMuZ2V0VHooKSk7dHJ5e2lmKHRoaXMub3B0aW9ucy5jYXRjaCl0cnl7dGhpcy5mbiE9PXZvaWQgMCYmYXdhaXQgdGhpcy5mbih0aGlzLHRoaXMub3B0aW9ucy5jb250ZXh0KX1jYXRjaCh0KXtpZihZZyh0aGlzLm9wdGlvbnMuY2F0Y2gpKXRyeXt0aGlzLm9wdGlvbnMuY2F0Y2godCx0aGlzKX1jYXRjaHt9fWVsc2UgdGhpcy5mbiE9PXZvaWQgMCYmYXdhaXQgdGhpcy5mbih0aGlzLHRoaXMub3B0aW9ucy5jb250ZXh0KX1maW5hbGx5e3RoaXMuX3N0YXRlcy5wcmV2aW91c1J1bj1uZXcga2koZSx0aGlzLmdldFR6KCkpLHRoaXMuX3N0YXRlcy5ibG9ja2luZz0hMX19YXN5bmMgdHJpZ2dlcigpe2F3YWl0IHRoaXMuX3RyaWdnZXIoKX1ydW5zTGVmdCgpe3JldHVybiB0aGlzLl9zdGF0ZXMubWF4UnVuc31fY2hlY2tUcmlnZ2VyKGUpe2xldCB0PW5ldyBEYXRlLHI9IXRoaXMuX3N0YXRlcy5wYXVzZWQmJnQuZ2V0VGltZSgpPj1lLmdldFRpbWUoKSxhPXRoaXMuX3N0YXRlcy5ibG9ja2luZyYmdGhpcy5vcHRpb25zLnByb3RlY3Q7ciYmIWE/KHRoaXMuX3N0YXRlcy5tYXhSdW5zIT09dm9pZCAwJiZ0aGlzLl9zdGF0ZXMubWF4UnVucy0tLHRoaXMuX3RyaWdnZXIoKSk6ciYmYSYmWWcodGhpcy5vcHRpb25zLnByb3RlY3QpJiZzZXRUaW1lb3V0KCgpPT50aGlzLm9wdGlvbnMucHJvdGVjdCh0aGlzKSwwKSx0aGlzLnNjaGVkdWxlKCl9X25leHQoZSl7bGV0IHQ9ISEoZXx8dGhpcy5fc3RhdGVzLmN1cnJlbnRSdW4pLHI9ITE7IWUmJnRoaXMub3B0aW9ucy5zdGFydEF0JiZ0aGlzLm9wdGlvbnMuaW50ZXJ2YWwmJihbZSx0XT10aGlzLl9jYWxjdWxhdGVQcmV2aW91c1J1bihlLHQpLHI9IWUpLGU9bmV3IGtpKGUsdGhpcy5nZXRUeigpKSx0aGlzLm9wdGlvbnMuc3RhcnRBdCYmZSYmZS5nZXRUaW1lKCk8dGhpcy5vcHRpb25zLnN0YXJ0QXQuZ2V0VGltZSgpJiYoZT10aGlzLm9wdGlvbnMuc3RhcnRBdCk7bGV0IGE9dGhpcy5fc3RhdGVzLm9uY2V8fG5ldyBraShlLHRoaXMuZ2V0VHooKSk7cmV0dXJuIXImJmEhPT10aGlzLl9zdGF0ZXMub25jZSYmKGE9YS5pbmNyZW1lbnQodGhpcy5fc3RhdGVzLnBhdHRlcm4sdGhpcy5vcHRpb25zLHQpKSx0aGlzLl9zdGF0ZXMub25jZSYmdGhpcy5fc3RhdGVzLm9uY2UuZ2V0VGltZSgpPD1lLmdldFRpbWUoKXx8YT09PW51bGx8fHRoaXMuX3N0YXRlcy5tYXhSdW5zIT09dm9pZCAwJiZ0aGlzLl9zdGF0ZXMubWF4UnVuczw9MHx8dGhpcy5fc3RhdGVzLmtpbGx8fHRoaXMub3B0aW9ucy5zdG9wQXQmJmEuZ2V0VGltZSgpPj10aGlzLm9wdGlvbnMuc3RvcEF0LmdldFRpbWUoKT9udWxsOmF9X3ByZXZpb3VzKGUpe2xldCB0PW5ldyBraShlLHRoaXMuZ2V0VHooKSk7dGhpcy5vcHRpb25zLnN0b3BBdCYmdC5nZXRUaW1lKCk+dGhpcy5vcHRpb25zLnN0b3BBdC5nZXRUaW1lKCkmJih0PXRoaXMub3B0aW9ucy5zdG9wQXQpO2xldCByPW5ldyBraSh0LHRoaXMuZ2V0VHooKSk7cmV0dXJuIHRoaXMuX3N0YXRlcy5vbmNlP3RoaXMuX3N0YXRlcy5vbmNlLmdldFRpbWUoKTx0LmdldFRpbWUoKT90aGlzLl9zdGF0ZXMub25jZTpudWxsOihyPXIuZGVjcmVtZW50KHRoaXMuX3N0YXRlcy5wYXR0ZXJuLHRoaXMub3B0aW9ucykscj09PW51bGx8fHRoaXMub3B0aW9ucy5zdGFydEF0JiZyLmdldFRpbWUoKTx0aGlzLm9wdGlvbnMuc3RhcnRBdC5nZXRUaW1lKCk/bnVsbDpyKX1fY2FsY3VsYXRlUHJldmlvdXNSdW4oZSx0KXtsZXQgcj1uZXcga2kodm9pZCAwLHRoaXMuZ2V0VHooKSksYT1lO2lmKHRoaXMub3B0aW9ucy5zdGFydEF0LmdldFRpbWUoKTw9ci5nZXRUaW1lKCkpe2E9dGhpcy5vcHRpb25zLnN0YXJ0QXQ7bGV0IGk9YS5nZXRUaW1lKCkrdGhpcy5vcHRpb25zLmludGVydmFsKjFlMztmb3IoO2k8PXIuZ2V0VGltZSgpOylhPW5ldyBraShhLHRoaXMuZ2V0VHooKSkuaW5jcmVtZW50KHRoaXMuX3N0YXRlcy5wYXR0ZXJuLHRoaXMub3B0aW9ucywhMCksaT1hLmdldFRpbWUoKSt0aGlzLm9wdGlvbnMuaW50ZXJ2YWwqMWUzO3Q9ITB9cmV0dXJuIGE9PT1udWxsJiYoYT12b2lkIDApLFthLHRdfX19KTt2YXIgeFEsWGcsZ1VyLFNJYSxpMixiUSxTMSxxbyx2aCxVM2UsaDAseWgsdlEseVEsd1EsTVEsVjMsd2gsZ1EsdDZ0LFczZSxHM2UscjZ0LFkzZSxYdD1sKCgpPT57eFE9NyxYZz0zNjUuMjQyNSxnVXI9TWF0aC5wb3coMTAsOCkqMjQqNjAqNjAqMWUzLFNJYT0tZ1VyLGkyPTYwNDhlNSxiUT04NjRlNSxTMT02ZTQscW89MzZlNSx2aD0xZTMsVTNlPTUyNTYwMCxoMD00MzIwMCx5aD0xNDQwLHZRPTYwLHlRPTMsd1E9MTIsTVE9NCxWMz0zNjAwLHdoPTYwLGdRPVYzKjI0LHQ2dD1nUSo3LFczZT1nUSozNjUuMjQyNSxHM2U9VzNlLzEyLHI2dD1HM2UqMyxZM2U9U3ltYm9sLmZvcigiY29uc3RydWN0RGF0ZUZyb20iKX0pO2Z1bmN0aW9uIFJlKGUsdCl7cmV0dXJuIHR5cGVvZiBlPT0iZnVuY3Rpb24iP2UodCk6ZSYmdHlwZW9mIGU9PSJvYmplY3QiJiZZM2UgaW4gZT9lW1kzZV0odCk6ZSBpbnN0YW5jZW9mIERhdGU/bmV3IGUuY29uc3RydWN0b3IodCk6bmV3IERhdGUodCl9dmFyIF9JYSx6dD1sKCgpPT57WHQoKTtfSWE9UmV9KTtmdW5jdGlvbiBoZShlLHQpe3JldHVybiBSZSh0fHxlLGUpfXZhciBESWEsamU9bCgoKT0+e3p0KCk7RElhPWhlfSk7ZnVuY3Rpb24gU2koZSx0LHIpe2xldCBhPWhlKGUscj8uaW4pO3JldHVybiBpc05hTih0KT9SZShyPy5pbnx8ZSxOYU4pOih0JiZhLnNldERhdGUoYS5nZXREYXRlKCkrdCksYSl9dmFyIFBJYSxvMj1sKCgpPT57enQoKTtqZSgpO1BJYT1TaX0pO2Z1bmN0aW9uIG4yKGUsdCxyKXtsZXQgYT1oZShlLHI/LmluKTtpZihpc05hTih0KSlyZXR1cm4gUmUocj8uaW58fGUsTmFOKTtpZighdClyZXR1cm4gYTtsZXQgaT1hLmdldERhdGUoKSxvPVJlKHI/LmlufHxlLGEuZ2V0VGltZSgpKTtvLnNldE1vbnRoKGEuZ2V0TW9udGgoKSt0KzEsMCk7bGV0IG49by5nZXREYXRlKCk7cmV0dXJuIGk+PW4/bzooYS5zZXRGdWxsWWVhcihvLmdldEZ1bGxZZWFyKCksby5nZXRNb250aCgpLGkpLGEpfXZhciBPSWEsTWg9bCgoKT0+e3p0KCk7amUoKTtPSWE9bjJ9KTtmdW5jdGlvbiBtMChlLHQscil7bGV0e3llYXJzOmE9MCxtb250aHM6aT0wLHdlZWtzOm89MCxkYXlzOm49MCxob3VyczpzPTAsbWludXRlczpjPTAsc2Vjb25kczpkPTB9PXQsZj1oZShlLHI/LmluKSx1PWl8fGE/bjIoZixpK2EqMTIpOmYscD1ufHxvP1NpKHUsbitvKjcpOnUsaD1jK3MqNjAseD0oZCtoKjYwKSoxZTM7cmV0dXJuIFJlKHI/LmlufHxlLCtwK3gpfXZhciBWSWEsWjNlPWwoKCk9PntvMigpO01oKCk7enQoKTtqZSgpO1ZJYT1tMH0pO2Z1bmN0aW9uIGtRKGUsdCl7cmV0dXJuIGhlKGUsdD8uaW4pLmdldERheSgpPT09Nn12YXIgR0lhLFgzZT1sKCgpPT57amUoKTtHSWE9a1F9KTtmdW5jdGlvbiBTUShlLHQpe3JldHVybiBoZShlLHQ/LmluKS5nZXREYXkoKT09PTB9dmFyIFhJYSxRM2U9bCgoKT0+e2plKCk7WElhPVNRfSk7ZnVuY3Rpb24gczIoZSx0KXtsZXQgcj1oZShlLHQ/LmluKS5nZXREYXkoKTtyZXR1cm4gcj09PTB8fHI9PT02fXZhciBKSWEsUWc9bCgoKT0+e2plKCk7SklhPXMyfSk7ZnVuY3Rpb24gelEoZSx0LHIpe2xldCBhPWhlKGUscj8uaW4pLGk9czIoYSxyKTtpZihpc05hTih0KSlyZXR1cm4gUmUocj8uaW4sTmFOKTtsZXQgbz1hLmdldEhvdXJzKCksbj10PDA/LTE6MSxzPU1hdGgudHJ1bmModC81KTthLnNldERhdGUoYS5nZXREYXRlKCkrcyo3KTtsZXQgYz1NYXRoLmFicyh0JTUpO2Zvcig7Yz4wOylhLnNldERhdGUoYS5nZXREYXRlKCkrbiksczIoYSxyKXx8KGMtPTEpO3JldHVybiBpJiZzMihhLHIpJiZ0IT09MCYmKGtRKGEscikmJmEuc2V0RGF0ZShhLmdldERhdGUoKSsobjwwPzI6LTEpKSxTUShhLHIpJiZhLnNldERhdGUoYS5nZXREYXRlKCkrKG48MD8xOi0yKSkpLGEuc2V0SG91cnMobyksYX12YXIgbk5hLEszZT1sKCgpPT57enQoKTtYM2UoKTtRM2UoKTtRZygpO2plKCk7bk5hPXpRfSk7ZnVuY3Rpb24gZzAoZSx0LHIpe3JldHVybiBSZShyPy5pbnx8ZSwraGUoZSkrdCl9dmFyIGROYSxLZz1sKCgpPT57enQoKTtqZSgpO2ROYT1nMH0pO2Z1bmN0aW9uIENRKGUsdCxyKXtyZXR1cm4gZzAoZSx0KnFvLHIpfXZhciBoTmEsSjNlPWwoKCk9PntLZygpO1h0KCk7aE5hPUNRfSk7ZnVuY3Rpb24gVXIoKXtyZXR1cm4gYTZ0fWZ1bmN0aW9uIGk2dChlKXthNnQ9ZX12YXIgYTZ0LHoxPWwoKCk9PnthNnQ9e319KTtmdW5jdGlvbiBsYShlLHQpe2xldCByPVVyKCksYT10Py53ZWVrU3RhcnRzT24/P3Q/LmxvY2FsZT8ub3B0aW9ucz8ud2Vla1N0YXJ0c09uPz9yLndlZWtTdGFydHNPbj8/ci5sb2NhbGU/Lm9wdGlvbnM/LndlZWtTdGFydHNPbj8/MCxpPWhlKGUsdD8uaW4pLG89aS5nZXREYXkoKSxuPShvPGE/NzowKStvLWE7cmV0dXJuIGkuc2V0RGF0ZShpLmdldERhdGUoKS1uKSxpLnNldEhvdXJzKDAsMCwwLDApLGl9dmFyIHZOYSxhcz1sKCgpPT57ejEoKTtqZSgpO3ZOYT1sYX0pO2Z1bmN0aW9uIGNpKGUsdCl7cmV0dXJuIGxhKGUsey4uLnQsd2Vla1N0YXJ0c09uOjF9KX12YXIgTU5hLGwyPWwoKCk9PnthcygpO01OYT1jaX0pO2Z1bmN0aW9uIHJvKGUsdCl7bGV0IHI9aGUoZSx0Py5pbiksYT1yLmdldEZ1bGxZZWFyKCksaT1SZShyLDApO2kuc2V0RnVsbFllYXIoYSsxLDAsNCksaS5zZXRIb3VycygwLDAsMCwwKTtsZXQgbz1jaShpKSxuPVJlKHIsMCk7bi5zZXRGdWxsWWVhcihhLDAsNCksbi5zZXRIb3VycygwLDAsMCwwKTtsZXQgcz1jaShuKTtyZXR1cm4gci5nZXRUaW1lKCk+PW8uZ2V0VGltZSgpP2ErMTpyLmdldFRpbWUoKT49cy5nZXRUaW1lKCk/YTphLTF9dmFyIF9OYSx4MD1sKCgpPT57enQoKTtsMigpO2plKCk7X05hPXJvfSk7ZnVuY3Rpb24gUmEoZSl7bGV0IHQ9aGUoZSkscj1uZXcgRGF0ZShEYXRlLlVUQyh0LmdldEZ1bGxZZWFyKCksdC5nZXRNb250aCgpLHQuZ2V0RGF0ZSgpLHQuZ2V0SG91cnMoKSx0LmdldE1pbnV0ZXMoKSx0LmdldFNlY29uZHMoKSx0LmdldE1pbGxpc2Vjb25kcygpKSk7cmV0dXJuIHIuc2V0VVRDRnVsbFllYXIodC5nZXRGdWxsWWVhcigpKSwrZS0rcn12YXIgQ2w9bCgoKT0+e2plKCl9KTtmdW5jdGlvbiB3dChlLC4uLnQpe2xldCByPVJlLmJpbmQobnVsbCxlfHx0LmZpbmQoYT0+dHlwZW9mIGE9PSJvYmplY3QiKSk7cmV0dXJuIHQubWFwKHIpfXZhciBlYT1sKCgpPT57enQoKX0pO2Z1bmN0aW9uIGMyKGUsdCl7bGV0IHI9aGUoZSx0Py5pbik7cmV0dXJuIHIuc2V0SG91cnMoMCwwLDAsMCkscn12YXIgUE5hLEpnPWwoKCk9PntqZSgpO1BOYT1jMn0pO2Z1bmN0aW9uIGppKGUsdCxyKXtsZXRbYSxpXT13dChyPy5pbixlLHQpLG89YzIoYSksbj1jMihpKSxzPStvLVJhKG8pLGM9K24tUmEobik7cmV0dXJuIE1hdGgucm91bmQoKHMtYykvYlEpfXZhciBCTmEsX2w9bCgoKT0+e0NsKCk7ZWEoKTtYdCgpO0pnKCk7Qk5hPWppfSk7ZnVuY3Rpb24gam8oZSx0KXtsZXQgcj1ybyhlLHQpLGE9UmUodD8uaW58fGUsMCk7cmV0dXJuIGEuc2V0RnVsbFllYXIociwwLDQpLGEuc2V0SG91cnMoMCwwLDAsMCksY2koYSl9dmFyIFVOYSxraD1sKCgpPT57enQoKTt4MCgpO2wyKCk7VU5hPWpvfSk7ZnVuY3Rpb24gX1EoZSx0LHIpe2xldCBhPWhlKGUscj8uaW4pLGk9amkoYSxqbyhhLHIpKSxvPVJlKHI/LmlufHxlLDApO3JldHVybiBvLnNldEZ1bGxZZWFyKHQsMCw0KSxvLnNldEhvdXJzKDAsMCwwLDApLGE9am8obyksYS5zZXREYXRlKGEuZ2V0RGF0ZSgpK2kpLGF9dmFyIFFOYSxlZGU9bCgoKT0+e3p0KCk7X2woKTtraCgpO2plKCk7UU5hPV9RfSk7ZnVuY3Rpb24gVFEoZSx0LHIpe3JldHVybiBfUShlLHJvKGUscikrdCxyKX12YXIgdEZhLHRkZT1sKCgpPT57eDAoKTtlZGUoKTt0RmE9VFF9KTtmdW5jdGlvbiBTaChlLHQscil7bGV0IGE9aGUoZSxyPy5pbik7cmV0dXJuIGEuc2V0VGltZShhLmdldFRpbWUoKSt0KlMxKSxhfXZhciBvRmEsTFE9bCgoKT0+e1h0KCk7amUoKTtvRmE9U2h9KTtmdW5jdGlvbiB6aChlLHQscil7cmV0dXJuIG4yKGUsdCozLHIpfXZhciBsRmEsRFE9bCgoKT0+e01oKCk7bEZhPXpofSk7ZnVuY3Rpb24gQVEoZSx0LHIpe3JldHVybiBnMChlLHQqMWUzLHIpfXZhciB1RmEscmRlPWwoKCk9PntLZygpO3VGYT1BUX0pO2Z1bmN0aW9uIGIwKGUsdCxyKXtyZXR1cm4gU2koZSx0Kjcscil9dmFyIGhGYSxleD1sKCgpPT57bzIoKTtoRmE9YjB9KTtmdW5jdGlvbiBFUShlLHQscil7cmV0dXJuIG4yKGUsdCoxMixyKX12YXIgeEZhLGFkZT1sKCgpPT57TWgoKTt4RmE9RVF9KTtmdW5jdGlvbiBvNnQoZSx0LHIpe2xldFthLGldPVsraGUoZS5zdGFydCxyPy5pbiksK2hlKGUuZW5kLHI/LmluKV0uc29ydCgocyxjKT0+cy1jKSxbbyxuXT1bK2hlKHQuc3RhcnQscj8uaW4pLCtoZSh0LmVuZCxyPy5pbildLnNvcnQoKHMsYyk9PnMtYyk7cmV0dXJuIHI/LmluY2x1c2l2ZT9hPD1uJiZvPD1pOmE8biYmbzxpfXZhciB5RmEsbjZ0PWwoKCk9PntqZSgpO3lGYT1vNnR9KTtmdW5jdGlvbiAkUShlLHQpe2xldCByLGE9dD8uaW47cmV0dXJuIGUuZm9yRWFjaChpPT57IWEmJnR5cGVvZiBpPT0ib2JqZWN0IiYmKGE9UmUuYmluZChudWxsLGkpKTtsZXQgbz1oZShpLGEpOyghcnx8cjxvfHxpc05hTigrbykpJiYocj1vKX0pLFJlKGEscnx8TmFOKX12YXIgU0ZhLGlkZT1sKCgpPT57enQoKTtqZSgpO1NGYT0kUX0pO2Z1bmN0aW9uIFBRKGUsdCl7bGV0IHIsYT10Py5pbjtyZXR1cm4gZS5mb3JFYWNoKGk9PnshYSYmdHlwZW9mIGk9PSJvYmplY3QiJiYoYT1SZS5iaW5kKG51bGwsaSkpO2xldCBvPWhlKGksYSk7KCFyfHxyPm98fGlzTmFOKCtvKSkmJihyPW8pfSksUmUoYSxyfHxOYU4pfXZhciBURmEsb2RlPWwoKCk9Pnt6dCgpO2plKCk7VEZhPVBRfSk7ZnVuY3Rpb24gczZ0KGUsdCxyKXtsZXRbYSxpLG9dPXd0KHI/LmluLGUsdC5zdGFydCx0LmVuZCk7cmV0dXJuIFBRKFskUShbYSxpXSxyKSxvXSxyKX12YXIgJEZhLGw2dD1sKCgpPT57ZWEoKTtpZGUoKTtvZGUoKTskRmE9czZ0fSk7ZnVuY3Rpb24gSVEoZSx0KXtsZXQgcj0raGUoZSk7aWYoaXNOYU4ocikpcmV0dXJuIE5hTjtsZXQgYSxpO3JldHVybiB0LmZvckVhY2goKG8sbik9PntsZXQgcz1oZShvKTtpZihpc05hTigrcykpe2E9TmFOLGk9TmFOO3JldHVybn1sZXQgYz1NYXRoLmFicyhyLStzKTsoYT09bnVsbHx8YzxpKSYmKGE9bixpPWMpfSksYX12YXIgTkZhLG5kZT1sKCgpPT57amUoKTtORmE9SVF9KTtmdW5jdGlvbiBjNnQoZSx0LHIpe2xldFthLC4uLmldPXd0KHI/LmluLGUsLi4udCksbz1JUShhLGkpO2lmKHR5cGVvZiBvPT0ibnVtYmVyIiYmaXNOYU4obykpcmV0dXJuIFJlKGEsTmFOKTtpZihvIT09dm9pZCAwKXJldHVybiBpW29dfXZhciBIRmEsZDZ0PWwoKCk9PntlYSgpO25kZSgpO3p0KCk7SEZhPWM2dH0pO2Z1bmN0aW9uIEMxKGUsdCl7bGV0IHI9K2hlKGUpLStoZSh0KTtyZXR1cm4gcjwwPy0xOnI+MD8xOnJ9dmFyIFZGYSxVMz1sKCgpPT57amUoKTtWRmE9QzF9KTtmdW5jdGlvbiB1NnQoZSx0KXtsZXQgcj0raGUoZSktK2hlKHQpO3JldHVybiByPjA/LTE6cjwwPzE6cn12YXIgR0ZhLGY2dD1sKCgpPT57amUoKTtHRmE9dTZ0fSk7ZnVuY3Rpb24gaXIoZSl7cmV0dXJuIFJlKGUsRGF0ZS5ub3coKSl9dmFyIFhGYSx6aT1sKCgpPT57enQoKTtYRmE9aXJ9KTtmdW5jdGlvbiBwNnQoZSl7bGV0IHQ9TWF0aC50cnVuYyhlLzcpO3JldHVybiB0PT09MD8wOnR9dmFyIEpGYSxoNnQ9bCgoKT0+e1h0KCk7SkZhPXA2dH0pO2Z1bmN0aW9uIGQyKGUsdCxyKXtsZXRbYSxpXT13dChyPy5pbixlLHQpO3JldHVybitjMihhKT09K2MyKGkpfXZhciBhT2EsQ2g9bCgoKT0+e2VhKCk7SmcoKTthT2E9ZDJ9KTtmdW5jdGlvbiBOUShlKXtyZXR1cm4gZSBpbnN0YW5jZW9mIERhdGV8fHR5cGVvZiBlPT0ib2JqZWN0IiYmT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpPT09IltvYmplY3QgRGF0ZV0ifXZhciBvT2Esc2RlPWwoKCk9PntvT2E9TlF9KTtmdW5jdGlvbiBkMShlKXtyZXR1cm4hKCFOUShlKSYmdHlwZW9mIGUhPSJudW1iZXIifHxpc05hTigraGUoZSkpKX12YXIgY09hLFRsPWwoKCk9PntzZGUoKTtqZSgpO2NPYT1kMX0pO2Z1bmN0aW9uIG02dChlLHQscil7bGV0W2EsaV09d3Qocj8uaW4sZSx0KTtpZighZDEoYSl8fCFkMShpKSlyZXR1cm4gTmFOO2xldCBvPWppKGEsaSksbj1vPDA/LTE6MSxzPU1hdGgudHJ1bmMoby83KSxjPXMqNSxkPVNpKGkscyo3KTtmb3IoOyFkMihhLGQpOyljKz1zMihkLHIpPzA6bixkPVNpKGQsbik7cmV0dXJuIGM9PT0wPzA6Y312YXIgeE9hLGc2dD1sKCgpPT57ZWEoKTtvMigpO19sKCk7Q2goKTtUbCgpO1FnKCk7eE9hPW02dH0pO2Z1bmN0aW9uIEZRKGUsdCxyKXtsZXRbYSxpXT13dChyPy5pbixlLHQpO3JldHVybiBybyhhLHIpLXJvKGkscil9dmFyIHdPYSxsZGU9bCgoKT0+e2VhKCk7eDAoKTt3T2E9RlF9KTtmdW5jdGlvbiB4NnQoZSx0LHIpe2xldFthLGldPXd0KHI/LmluLGUsdCksbz1jaShhKSxuPWNpKGkpLHM9K28tUmEobyksYz0rbi1SYShuKTtyZXR1cm4gTWF0aC5yb3VuZCgocy1jKS9pMil9dmFyIF9PYSxiNnQ9bCgoKT0+e0NsKCk7ZWEoKTtYdCgpO2wyKCk7X09hPXg2dH0pO2Z1bmN0aW9uIFczKGUsdCxyKXtsZXRbYSxpXT13dChyPy5pbixlLHQpLG89YS5nZXRGdWxsWWVhcigpLWkuZ2V0RnVsbFllYXIoKSxuPWEuZ2V0TW9udGgoKS1pLmdldE1vbnRoKCk7cmV0dXJuIG8qMTIrbn12YXIgRE9hLE9RPWwoKCk9PntlYSgpO0RPYT1XM30pO2Z1bmN0aW9uIHR4KGUsdCl7bGV0IHI9aGUoZSx0Py5pbik7cmV0dXJuIE1hdGgudHJ1bmMoci5nZXRNb250aCgpLzMpKzF9dmFyICRPYSxjZGU9bCgoKT0+e2plKCk7JE9hPXR4fSk7ZnVuY3Rpb24gX2goZSx0LHIpe2xldFthLGldPXd0KHI/LmluLGUsdCksbz1hLmdldEZ1bGxZZWFyKCktaS5nZXRGdWxsWWVhcigpLG49dHgoYSktdHgoaSk7cmV0dXJuIG8qNCtufXZhciBGT2EsZGRlPWwoKCk9PntlYSgpO2NkZSgpO0ZPYT1faH0pO2Z1bmN0aW9uIEczKGUsdCxyKXtsZXRbYSxpXT13dChyPy5pbixlLHQpLG89bGEoYSxyKSxuPWxhKGkscikscz0rby1SYShvKSxjPStuLVJhKG4pO3JldHVybiBNYXRoLnJvdW5kKChzLWMpL2kyKX12YXIgak9hLFJRPWwoKCk9PntDbCgpO2VhKCk7WHQoKTthcygpO2pPYT1HM30pO2Z1bmN0aW9uIHYwKGUsdCxyKXtsZXRbYSxpXT13dChyPy5pbixlLHQpO3JldHVybiBhLmdldEZ1bGxZZWFyKCktaS5nZXRGdWxsWWVhcigpfXZhciBXT2EsQlE9bCgoKT0+e2VhKCk7V09hPXYwfSk7ZnVuY3Rpb24gVGgoZSx0LHIpe2xldFthLGldPXd0KHI/LmluLGUsdCksbz12NnQoYSxpKSxuPU1hdGguYWJzKGppKGEsaSkpO2Euc2V0RGF0ZShhLmdldERhdGUoKS1vKm4pO2xldCBzPSsodjZ0KGEsaSk9PT0tbyksYz1vKihuLXMpO3JldHVybiBjPT09MD8wOmN9ZnVuY3Rpb24gdjZ0KGUsdCl7bGV0IHI9ZS5nZXRGdWxsWWVhcigpLXQuZ2V0RnVsbFllYXIoKXx8ZS5nZXRNb250aCgpLXQuZ2V0TW9udGgoKXx8ZS5nZXREYXRlKCktdC5nZXREYXRlKCl8fGUuZ2V0SG91cnMoKS10LmdldEhvdXJzKCl8fGUuZ2V0TWludXRlcygpLXQuZ2V0TWludXRlcygpfHxlLmdldFNlY29uZHMoKS10LmdldFNlY29uZHMoKXx8ZS5nZXRNaWxsaXNlY29uZHMoKS10LmdldE1pbGxpc2Vjb25kcygpO3JldHVybiByPDA/LTE6cj4wPzE6cn12YXIgWE9hLEhRPWwoKCk9PntlYSgpO19sKCk7WE9hPVRofSk7ZnVuY3Rpb24gXzEoZSl7cmV0dXJuIHQ9PntsZXQgYT0oZT9NYXRoW2VdOk1hdGgudHJ1bmMpKHQpO3JldHVybiBhPT09MD8wOmF9fXZhciBMbD1sKCgpPT57fSk7ZnVuY3Rpb24gWTMoZSx0LHIpe2xldFthLGldPXd0KHI/LmluLGUsdCksbz0oK2EtK2kpL3FvO3JldHVybiBfMShyPy5yb3VuZGluZ01ldGhvZCkobyl9dmFyIHJSYSxxUT1sKCgpPT57TGwoKTtlYSgpO1h0KCk7clJhPVkzfSk7ZnVuY3Rpb24galEoZSx0LHIpe3JldHVybiBUUShlLC10LHIpfXZhciBvUmEsdWRlPWwoKCk9Pnt0ZGUoKTtvUmE9alF9KTtmdW5jdGlvbiB5NnQoZSx0LHIpe2xldFthLGldPXd0KHI/LmluLGUsdCksbz1DMShhLGkpLG49TWF0aC5hYnMoRlEoYSxpLHIpKSxzPWpRKGEsbypuLHIpLGM9KyhDMShzLGkpPT09LW8pLGQ9byoobi1jKTtyZXR1cm4gZD09PTA/MDpkfXZhciB1UmEsdzZ0PWwoKCk9PntlYSgpO1UzKCk7bGRlKCk7dWRlKCk7dVJhPXk2dH0pO2Z1bmN0aW9uIExoKGUsdCl7cmV0dXJuK2hlKGUpLStoZSh0KX12YXIgaFJhLFZRPWwoKCk9PntqZSgpO2hSYT1MaH0pO2Z1bmN0aW9uIFozKGUsdCxyKXtsZXQgYT1MaChlLHQpL1MxO3JldHVybiBfMShyPy5yb3VuZGluZ01ldGhvZCkoYSl9dmFyIHZSYSxVUT1sKCgpPT57TGwoKTtYdCgpO1ZRKCk7dlJhPVozfSk7ZnVuY3Rpb24gRGgoZSx0KXtsZXQgcj1oZShlLHQ/LmluKTtyZXR1cm4gci5zZXRIb3VycygyMyw1OSw1OSw5OTkpLHJ9dmFyIE1SYSxXUT1sKCgpPT57amUoKTtNUmE9RGh9KTtmdW5jdGlvbiBBaChlLHQpe2xldCByPWhlKGUsdD8uaW4pLGE9ci5nZXRNb250aCgpO3JldHVybiByLnNldEZ1bGxZZWFyKHIuZ2V0RnVsbFllYXIoKSxhKzEsMCksci5zZXRIb3VycygyMyw1OSw1OSw5OTkpLHJ9dmFyIHpSYSxHUT1sKCgpPT57amUoKTt6UmE9QWh9KTtmdW5jdGlvbiBZUShlLHQpe2xldCByPWhlKGUsdD8uaW4pO3JldHVybitEaChyLHQpPT0rQWgocix0KX12YXIgRFJhLGZkZT1sKCgpPT57V1EoKTtHUSgpO2plKCk7RFJhPVlRfSk7ZnVuY3Rpb24geTAoZSx0LHIpe2xldFthLGksb109d3Qocj8uaW4sZSxlLHQpLG49QzEoaSxvKSxzPU1hdGguYWJzKFczKGksbykpO2lmKHM8MSlyZXR1cm4gMDtpLmdldE1vbnRoKCk9PT0xJiZpLmdldERhdGUoKT4yNyYmaS5zZXREYXRlKDMwKSxpLnNldE1vbnRoKGkuZ2V0TW9udGgoKS1uKnMpO2xldCBjPUMxKGksbyk9PT0tbjtZUShhKSYmcz09PTEmJkMxKGEsbyk9PT0xJiYoYz0hMSk7bGV0IGQ9bioocy0rYyk7cmV0dXJuIGQ9PT0wPzA6ZH12YXIgTlJhLHJ4PWwoKCk9PntlYSgpO1UzKCk7T1EoKTtmZGUoKTtOUmE9eTB9KTtmdW5jdGlvbiBNNnQoZSx0LHIpe2xldCBhPXkwKGUsdCxyKS8zO3JldHVybiBfMShyPy5yb3VuZGluZ01ldGhvZCkoYSl9dmFyIEJSYSxrNnQ9bCgoKT0+e0xsKCk7cngoKTtCUmE9TTZ0fSk7ZnVuY3Rpb24gdTIoZSx0LHIpe2xldCBhPUxoKGUsdCkvMWUzO3JldHVybiBfMShyPy5yb3VuZGluZ01ldGhvZCkoYSl9dmFyIFZSYSxheD1sKCgpPT57TGwoKTtWUSgpO1ZSYT11Mn0pO2Z1bmN0aW9uIFM2dChlLHQscil7bGV0IGE9VGgoZSx0LHIpLzc7cmV0dXJuIF8xKHI/LnJvdW5kaW5nTWV0aG9kKShhKX12YXIgWVJhLHo2dD1sKCgpPT57TGwoKTtIUSgpO1lSYT1TNnR9KTtmdW5jdGlvbiBaUShlLHQscil7bGV0W2EsaV09d3Qocj8uaW4sZSx0KSxvPUMxKGEsaSksbj1NYXRoLmFicyh2MChhLGkpKTthLnNldEZ1bGxZZWFyKDE1ODQpLGkuc2V0RnVsbFllYXIoMTU4NCk7bGV0IHM9QzEoYSxpKT09PS1vLGM9byoobi0rcyk7cmV0dXJuIGM9PT0wPzA6Y312YXIgSlJhLHBkZT1sKCgpPT57ZWEoKTtVMygpO0JRKCk7SlJhPVpRfSk7ZnVuY3Rpb24gVmkoZSx0KXtsZXRbcixhXT13dChlLHQuc3RhcnQsdC5lbmQpO3JldHVybntzdGFydDpyLGVuZDphfX12YXIgZjI9bCgoKT0+e2VhKCl9KTtmdW5jdGlvbiBYUShlLHQpe2xldHtzdGFydDpyLGVuZDphfT1WaSh0Py5pbixlKSxpPStyPithLG89aT8rcjorYSxuPWk/YTpyO24uc2V0SG91cnMoMCwwLDAsMCk7bGV0IHM9dD8uc3RlcD8/MTtpZighcylyZXR1cm5bXTtzPDAmJihzPS1zLGk9IWkpO2xldCBjPVtdO2Zvcig7K248PW87KWMucHVzaChSZShyLG4pKSxuLnNldERhdGUobi5nZXREYXRlKCkrcyksbi5zZXRIb3VycygwLDAsMCwwKTtyZXR1cm4gaT9jLnJldmVyc2UoKTpjfXZhciBvQmEsaGRlPWwoKCk9PntmMigpO3p0KCk7b0JhPVhRfSk7ZnVuY3Rpb24gQzZ0KGUsdCl7bGV0e3N0YXJ0OnIsZW5kOmF9PVZpKHQ/LmluLGUpLGk9K3I+K2Esbz1pPytyOithLG49aT9hOnI7bi5zZXRNaW51dGVzKDAsMCwwKTtsZXQgcz10Py5zdGVwPz8xO2lmKCFzKXJldHVybltdO3M8MCYmKHM9LXMsaT0haSk7bGV0IGM9W107Zm9yKDsrbjw9bzspYy5wdXNoKFJlKHIsbikpLG4uc2V0SG91cnMobi5nZXRIb3VycygpK3MpO3JldHVybiBpP2MucmV2ZXJzZSgpOmN9dmFyIGNCYSxfNnQ9bCgoKT0+e2YyKCk7enQoKTtjQmE9QzZ0fSk7ZnVuY3Rpb24gVDZ0KGUsdCl7bGV0e3N0YXJ0OnIsZW5kOmF9PVZpKHQ/LmluLGUpO3Iuc2V0U2Vjb25kcygwLDApO2xldCBpPStyPithLG89aT8rcjorYSxuPWk/YTpyLHM9dD8uc3RlcD8/MTtpZighcylyZXR1cm5bXTtzPDAmJihzPS1zLGk9IWkpO2xldCBjPVtdO2Zvcig7K248PW87KWMucHVzaChSZShyLG4pKSxuPVNoKG4scyk7cmV0dXJuIGk/Yy5yZXZlcnNlKCk6Y312YXIgaEJhLEw2dD1sKCgpPT57ZjIoKTtMUSgpO3p0KCk7aEJhPVQ2dH0pO2Z1bmN0aW9uIEQ2dChlLHQpe2xldHtzdGFydDpyLGVuZDphfT1WaSh0Py5pbixlKSxpPStyPithLG89aT8rcjorYSxuPWk/YTpyO24uc2V0SG91cnMoMCwwLDAsMCksbi5zZXREYXRlKDEpO2xldCBzPXQ/LnN0ZXA/PzE7aWYoIXMpcmV0dXJuW107czwwJiYocz0tcyxpPSFpKTtsZXQgYz1bXTtmb3IoOytuPD1vOyljLnB1c2goUmUocixuKSksbi5zZXRNb250aChuLmdldE1vbnRoKCkrcyk7cmV0dXJuIGk/Yy5yZXZlcnNlKCk6Y312YXIgYkJhLEE2dD1sKCgpPT57ZjIoKTt6dCgpO2JCYT1ENnR9KTtmdW5jdGlvbiBwMihlLHQpe2xldCByPWhlKGUsdD8uaW4pLGE9ci5nZXRNb250aCgpLGk9YS1hJTM7cmV0dXJuIHIuc2V0TW9udGgoaSwxKSxyLnNldEhvdXJzKDAsMCwwLDApLHJ9dmFyIHdCYSxRUT1sKCgpPT57amUoKTt3QmE9cDJ9KTtmdW5jdGlvbiBFNnQoZSx0KXtsZXR7c3RhcnQ6cixlbmQ6YX09VmkodD8uaW4sZSksaT0rcj4rYSxvPWk/K3AyKHIpOitwMihhKSxuPWk/cDIoYSk6cDIocikscz10Py5zdGVwPz8xO2lmKCFzKXJldHVybltdO3M8MCYmKHM9LXMsaT0haSk7bGV0IGM9W107Zm9yKDsrbjw9bzspYy5wdXNoKFJlKHIsbikpLG49emgobixzKTtyZXR1cm4gaT9jLnJldmVyc2UoKTpjfXZhciBfQmEsJDZ0PWwoKCk9PntmMigpO0RRKCk7enQoKTtRUSgpO19CYT1FNnR9KTtmdW5jdGlvbiBQNnQoZSx0KXtsZXR7c3RhcnQ6cixlbmQ6YX09VmkodD8uaW4sZSksaT0rcj4rYSxvPWk/bGEoYSx0KTpsYShyLHQpLG49aT9sYShyLHQpOmxhKGEsdCk7by5zZXRIb3VycygxNSksbi5zZXRIb3VycygxNSk7bGV0IHM9K24uZ2V0VGltZSgpLGM9byxkPXQ/LnN0ZXA/PzE7aWYoIWQpcmV0dXJuW107ZDwwJiYoZD0tZCxpPSFpKTtsZXQgZj1bXTtmb3IoOytjPD1zOyljLnNldEhvdXJzKDApLGYucHVzaChSZShyLGMpKSxjPWIwKGMsZCksYy5zZXRIb3VycygxNSk7cmV0dXJuIGk/Zi5yZXZlcnNlKCk6Zn12YXIgJEJhLEk2dD1sKCgpPT57ZjIoKTtleCgpO3p0KCk7YXMoKTskQmE9UDZ0fSk7ZnVuY3Rpb24gRWgoZSx0KXtsZXR7c3RhcnQ6cixlbmQ6YX09VmkodD8uaW4sZSksaT1YUSh7c3RhcnQ6cixlbmQ6YX0sdCksbz1bXSxuPTA7Zm9yKDtuPGkubGVuZ3RoOyl7bGV0IHM9aVtuKytdO3MyKHMpJiZvLnB1c2goUmUocixzKSl9cmV0dXJuIG99dmFyIFJCYSxLUT1sKCgpPT57ZjIoKTt6dCgpO2hkZSgpO1FnKCk7UkJhPUVofSk7ZnVuY3Rpb24gdzAoZSx0KXtsZXQgcj1oZShlLHQ/LmluKTtyZXR1cm4gci5zZXREYXRlKDEpLHIuc2V0SG91cnMoMCwwLDAsMCkscn12YXIgcUJhLGl4PWwoKCk9PntqZSgpO3FCYT13MH0pO2Z1bmN0aW9uIE42dChlLHQpe2xldCByPXcwKGUsdCksYT1BaChlLHQpO3JldHVybiBFaCh7c3RhcnQ6cixlbmQ6YX0sdCl9dmFyIEdCYSxGNnQ9bCgoKT0+e0tRKCk7R1EoKTtpeCgpO0dCYT1ONnR9KTtmdW5jdGlvbiBKUShlLHQpe2xldCByPWhlKGUsdD8uaW4pLGE9ci5nZXRGdWxsWWVhcigpO3JldHVybiByLnNldEZ1bGxZZWFyKGErMSwwLDApLHIuc2V0SG91cnMoMjMsNTksNTksOTk5KSxyfXZhciBYQmEsbWRlPWwoKCk9PntqZSgpO1hCYT1KUX0pO2Z1bmN0aW9uICRoKGUsdCl7bGV0IHI9aGUoZSx0Py5pbik7cmV0dXJuIHIuc2V0RnVsbFllYXIoci5nZXRGdWxsWWVhcigpLDAsMSksci5zZXRIb3VycygwLDAsMCwwKSxyfXZhciBKQmEsZUs9bCgoKT0+e2plKCk7SkJhPSRofSk7ZnVuY3Rpb24gTzZ0KGUsdCl7bGV0IHI9JGgoZSx0KSxhPUpRKGUsdCk7cmV0dXJuIEVoKHtzdGFydDpyLGVuZDphfSx0KX12YXIgaUhhLFI2dD1sKCgpPT57S1EoKTttZGUoKTtlSygpO2lIYT1PNnR9KTtmdW5jdGlvbiBCNnQoZSx0KXtsZXR7c3RhcnQ6cixlbmQ6YX09VmkodD8uaW4sZSksaT0rcj4rYSxvPWk/K3I6K2Esbj1pP2E6cjtuLnNldEhvdXJzKDAsMCwwLDApLG4uc2V0TW9udGgoMCwxKTtsZXQgcz10Py5zdGVwPz8xO2lmKCFzKXJldHVybltdO3M8MCYmKHM9LXMsaT0haSk7bGV0IGM9W107Zm9yKDsrbjw9bzspYy5wdXNoKFJlKHIsbikpLG4uc2V0RnVsbFllYXIobi5nZXRGdWxsWWVhcigpK3MpO3JldHVybiBpP2MucmV2ZXJzZSgpOmN9dmFyIGxIYSxINnQ9bCgoKT0+e2YyKCk7enQoKTtsSGE9QjZ0fSk7ZnVuY3Rpb24gcTZ0KGUsdCl7bGV0IHI9aGUoZSx0Py5pbiksYT1yLmdldEZ1bGxZZWFyKCksaT05K01hdGguZmxvb3IoYS8xMCkqMTA7cmV0dXJuIHIuc2V0RnVsbFllYXIoaSwxMSwzMSksci5zZXRIb3VycygyMyw1OSw1OSw5OTkpLHJ9dmFyIHVIYSxqNnQ9bCgoKT0+e2plKCk7dUhhPXE2dH0pO2Z1bmN0aW9uIFY2dChlLHQpe2xldCByPWhlKGUsdD8uaW4pO3JldHVybiByLnNldE1pbnV0ZXMoNTksNTksOTk5KSxyfXZhciBoSGEsVTZ0PWwoKCk9PntqZSgpO2hIYT1WNnR9KTtmdW5jdGlvbiB0SyhlLHQpe2xldCByPVVyKCksYT10Py53ZWVrU3RhcnRzT24/P3Q/LmxvY2FsZT8ub3B0aW9ucz8ud2Vla1N0YXJ0c09uPz9yLndlZWtTdGFydHNPbj8/ci5sb2NhbGU/Lm9wdGlvbnM/LndlZWtTdGFydHNPbj8/MCxpPWhlKGUsdD8uaW4pLG89aS5nZXREYXkoKSxuPShvPGE/LTc6MCkrNi0oby1hKTtyZXR1cm4gaS5zZXREYXRlKGkuZ2V0RGF0ZSgpK24pLGkuc2V0SG91cnMoMjMsNTksNTksOTk5KSxpfXZhciBiSGEsZ2RlPWwoKCk9Pnt6MSgpO2plKCk7YkhhPXRLfSk7ZnVuY3Rpb24gVzZ0KGUsdCl7cmV0dXJuIHRLKGUsey4uLnQsd2Vla1N0YXJ0c09uOjF9KX12YXIgd0hhLEc2dD1sKCgpPT57Z2RlKCk7d0hhPVc2dH0pO2Z1bmN0aW9uIFk2dChlLHQpe2xldCByPXJvKGUsdCksYT1SZSh0Py5pbnx8ZSwwKTthLnNldEZ1bGxZZWFyKHIrMSwwLDQpLGEuc2V0SG91cnMoMCwwLDAsMCk7bGV0IGk9Y2koYSx0KTtyZXR1cm4gaS5zZXRNaWxsaXNlY29uZHMoaS5nZXRNaWxsaXNlY29uZHMoKS0xKSxpfXZhciBDSGEsWjZ0PWwoKCk9Pnt6dCgpO3gwKCk7bDIoKTtDSGE9WTZ0fSk7ZnVuY3Rpb24gWDZ0KGUsdCl7bGV0IHI9aGUoZSx0Py5pbik7cmV0dXJuIHIuc2V0U2Vjb25kcyg1OSw5OTkpLHJ9dmFyIExIYSxRNnQ9bCgoKT0+e2plKCk7TEhhPVg2dH0pO2Z1bmN0aW9uIEs2dChlLHQpe2xldCByPWhlKGUsdD8uaW4pLGE9ci5nZXRNb250aCgpLGk9YS1hJTMrMztyZXR1cm4gci5zZXRNb250aChpLDApLHIuc2V0SG91cnMoMjMsNTksNTksOTk5KSxyfXZhciBFSGEsSjZ0PWwoKCk9PntqZSgpO0VIYT1LNnR9KTtmdW5jdGlvbiBldXQoZSx0KXtsZXQgcj1oZShlLHQ/LmluKTtyZXR1cm4gci5zZXRNaWxsaXNlY29uZHMoOTk5KSxyfXZhciBJSGEsdHV0PWwoKCk9PntqZSgpO0lIYT1ldXR9KTtmdW5jdGlvbiBydXQoZSl7cmV0dXJuIERoKERhdGUubm93KCksZSl9dmFyIE9IYSxhdXQ9bCgoKT0+e1dRKCk7T0hhPXJ1dH0pO2Z1bmN0aW9uIGl1dChlKXtsZXQgdD1pcihlPy5pbikscj10LmdldEZ1bGxZZWFyKCksYT10LmdldE1vbnRoKCksaT10LmdldERhdGUoKSxvPWlyKGU/LmluKTtyZXR1cm4gby5zZXRGdWxsWWVhcihyLGEsaSsxKSxvLnNldEhvdXJzKDIzLDU5LDU5LDk5OSksZT8uaW4/ZS5pbihvKTpvfXZhciBISGEsb3V0PWwoKCk9Pnt6aSgpO0hIYT1pdXR9KTtmdW5jdGlvbiBudXQoZSl7bGV0IHQ9aXIoZT8uaW4pLHI9UmUoZT8uaW4sMCk7cmV0dXJuIHIuc2V0RnVsbFllYXIodC5nZXRGdWxsWWVhcigpLHQuZ2V0TW9udGgoKSx0LmdldERhdGUoKS0xKSxyLnNldEhvdXJzKDIzLDU5LDU5LDk5OSkscn12YXIgVUhhLHN1dD1sKCgpPT57enQoKTt6aSgpO1VIYT1udXR9KTt2YXIgeFVyLGx1dCxjdXQ9bCgoKT0+e3hVcj17bGVzc1RoYW5YU2Vjb25kczp7b25lOiJsZXNzIHRoYW4gYSBzZWNvbmQiLG90aGVyOiJsZXNzIHRoYW4ge3tjb3VudH19IHNlY29uZHMifSx4U2Vjb25kczp7b25lOiIxIHNlY29uZCIsb3RoZXI6Int7Y291bnR9fSBzZWNvbmRzIn0saGFsZkFNaW51dGU6ImhhbGYgYSBtaW51dGUiLGxlc3NUaGFuWE1pbnV0ZXM6e29uZToibGVzcyB0aGFuIGEgbWludXRlIixvdGhlcjoibGVzcyB0aGFuIHt7Y291bnR9fSBtaW51dGVzIn0seE1pbnV0ZXM6e29uZToiMSBtaW51dGUiLG90aGVyOiJ7e2NvdW50fX0gbWludXRlcyJ9LGFib3V0WEhvdXJzOntvbmU6ImFib3V0IDEgaG91ciIsb3RoZXI6ImFib3V0IHt7Y291bnR9fSBob3VycyJ9LHhIb3Vyczp7b25lOiIxIGhvdXIiLG90aGVyOiJ7e2NvdW50fX0gaG91cnMifSx4RGF5czp7b25lOiIxIGRheSIsb3RoZXI6Int7Y291bnR9fSBkYXlzIn0sYWJvdXRYV2Vla3M6e29uZToiYWJvdXQgMSB3ZWVrIixvdGhlcjoiYWJvdXQge3tjb3VudH19IHdlZWtzIn0seFdlZWtzOntvbmU6IjEgd2VlayIsb3RoZXI6Int7Y291bnR9fSB3ZWVrcyJ9LGFib3V0WE1vbnRoczp7b25lOiJhYm91dCAxIG1vbnRoIixvdGhlcjoiYWJvdXQge3tjb3VudH19IG1vbnRocyJ9LHhNb250aHM6e29uZToiMSBtb250aCIsb3RoZXI6Int7Y291bnR9fSBtb250aHMifSxhYm91dFhZZWFyczp7b25lOiJhYm91dCAxIHllYXIiLG90aGVyOiJhYm91dCB7e2NvdW50fX0geWVhcnMifSx4WWVhcnM6e29uZToiMSB5ZWFyIixvdGhlcjoie3tjb3VudH19IHllYXJzIn0sb3ZlclhZZWFyczp7b25lOiJvdmVyIDEgeWVhciIsb3RoZXI6Im92ZXIge3tjb3VudH19IHllYXJzIn0sYWxtb3N0WFllYXJzOntvbmU6ImFsbW9zdCAxIHllYXIiLG90aGVyOiJhbG1vc3Qge3tjb3VudH19IHllYXJzIn19LGx1dD0oZSx0LHIpPT57bGV0IGEsaT14VXJbZV07cmV0dXJuIHR5cGVvZiBpPT0ic3RyaW5nIj9hPWk6dD09PTE/YT1pLm9uZTphPWkub3RoZXIucmVwbGFjZSgie3tjb3VudH19Iix0LnRvU3RyaW5nKCkpLHI/LmFkZFN1ZmZpeD9yLmNvbXBhcmlzb24mJnIuY29tcGFyaXNvbj4wPyJpbiAiK2E6YSsiIGFnbyI6YX19KTtmdW5jdGlvbiBySyhlKXtyZXR1cm4odD17fSk9PntsZXQgcj10LndpZHRoP1N0cmluZyh0LndpZHRoKTplLmRlZmF1bHRXaWR0aDtyZXR1cm4gZS5mb3JtYXRzW3JdfHxlLmZvcm1hdHNbZS5kZWZhdWx0V2lkdGhdfX12YXIgZHV0PWwoKCk9Pnt9KTt2YXIgYlVyLHZVcix5VXIsdXV0LGZ1dD1sKCgpPT57ZHV0KCk7YlVyPXtmdWxsOiJFRUVFLCBNTU1NIGRvLCB5Iixsb25nOiJNTU1NIGRvLCB5IixtZWRpdW06Ik1NTSBkLCB5IixzaG9ydDoiTU0vZGQveXl5eSJ9LHZVcj17ZnVsbDoiaDptbTpzcyBhIHp6enoiLGxvbmc6Img6bW06c3MgYSB6IixtZWRpdW06Img6bW06c3MgYSIsc2hvcnQ6Img6bW0gYSJ9LHlVcj17ZnVsbDoie3tkYXRlfX0gJ2F0JyB7e3RpbWV9fSIsbG9uZzoie3tkYXRlfX0gJ2F0JyB7e3RpbWV9fSIsbWVkaXVtOiJ7e2RhdGV9fSwge3t0aW1lfX0iLHNob3J0OiJ7e2RhdGV9fSwge3t0aW1lfX0ifSx1dXQ9e2RhdGU6cksoe2Zvcm1hdHM6YlVyLGRlZmF1bHRXaWR0aDoiZnVsbCJ9KSx0aW1lOnJLKHtmb3JtYXRzOnZVcixkZWZhdWx0V2lkdGg6ImZ1bGwifSksZGF0ZVRpbWU6cksoe2Zvcm1hdHM6eVVyLGRlZmF1bHRXaWR0aDoiZnVsbCJ9KX19KTt2YXIgd1VyLHB1dCxodXQ9bCgoKT0+e3dVcj17bGFzdFdlZWs6IidsYXN0JyBlZWVlICdhdCcgcCIseWVzdGVyZGF5OiIneWVzdGVyZGF5IGF0JyBwIix0b2RheToiJ3RvZGF5IGF0JyBwIix0b21vcnJvdzoiJ3RvbW9ycm93IGF0JyBwIixuZXh0V2VlazoiZWVlZSAnYXQnIHAiLG90aGVyOiJQIn0scHV0PShlLHQscixhKT0+d1VyW2VdfSk7ZnVuY3Rpb24gUGgoZSl7cmV0dXJuKHQscik9PntsZXQgYT1yPy5jb250ZXh0P1N0cmluZyhyLmNvbnRleHQpOiJzdGFuZGFsb25lIixpO2lmKGE9PT0iZm9ybWF0dGluZyImJmUuZm9ybWF0dGluZ1ZhbHVlcyl7bGV0IG49ZS5kZWZhdWx0Rm9ybWF0dGluZ1dpZHRofHxlLmRlZmF1bHRXaWR0aCxzPXI/LndpZHRoP1N0cmluZyhyLndpZHRoKTpuO2k9ZS5mb3JtYXR0aW5nVmFsdWVzW3NdfHxlLmZvcm1hdHRpbmdWYWx1ZXNbbl19ZWxzZXtsZXQgbj1lLmRlZmF1bHRXaWR0aCxzPXI/LndpZHRoP1N0cmluZyhyLndpZHRoKTplLmRlZmF1bHRXaWR0aDtpPWUudmFsdWVzW3NdfHxlLnZhbHVlc1tuXX1sZXQgbz1lLmFyZ3VtZW50Q2FsbGJhY2s/ZS5hcmd1bWVudENhbGxiYWNrKHQpOnQ7cmV0dXJuIGlbb119fXZhciBtdXQ9bCgoKT0+e30pO3ZhciBNVXIsa1VyLFNVcix6VXIsQ1VyLF9VcixUVXIsZ3V0LHh1dD1sKCgpPT57bXV0KCk7TVVyPXtuYXJyb3c6WyJCIiwiQSJdLGFiYnJldmlhdGVkOlsiQkMiLCJBRCJdLHdpZGU6WyJCZWZvcmUgQ2hyaXN0IiwiQW5ubyBEb21pbmkiXX0sa1VyPXtuYXJyb3c6WyIxIiwiMiIsIjMiLCI0Il0sYWJicmV2aWF0ZWQ6WyJRMSIsIlEyIiwiUTMiLCJRNCJdLHdpZGU6WyIxc3QgcXVhcnRlciIsIjJuZCBxdWFydGVyIiwiM3JkIHF1YXJ0ZXIiLCI0dGggcXVhcnRlciJdfSxTVXI9e25hcnJvdzpbIkoiLCJGIiwiTSIsIkEiLCJNIiwiSiIsIkoiLCJBIiwiUyIsIk8iLCJOIiwiRCJdLGFiYnJldmlhdGVkOlsiSmFuIiwiRmViIiwiTWFyIiwiQXByIiwiTWF5IiwiSnVuIiwiSnVsIiwiQXVnIiwiU2VwIiwiT2N0IiwiTm92IiwiRGVjIl0sd2lkZTpbIkphbnVhcnkiLCJGZWJydWFyeSIsIk1hcmNoIiwiQXByaWwiLCJNYXkiLCJKdW5lIiwiSnVseSIsIkF1Z3VzdCIsIlNlcHRlbWJlciIsIk9jdG9iZXIiLCJOb3ZlbWJlciIsIkRlY2VtYmVyIl19LHpVcj17bmFycm93OlsiUyIsIk0iLCJUIiwiVyIsIlQiLCJGIiwiUyJdLHNob3J0OlsiU3UiLCJNbyIsIlR1IiwiV2UiLCJUaCIsIkZyIiwiU2EiXSxhYmJyZXZpYXRlZDpbIlN1biIsIk1vbiIsIlR1ZSIsIldlZCIsIlRodSIsIkZyaSIsIlNhdCJdLHdpZGU6WyJTdW5kYXkiLCJNb25kYXkiLCJUdWVzZGF5IiwiV2VkbmVzZGF5IiwiVGh1cnNkYXkiLCJGcmlkYXkiLCJTYXR1cmRheSJdfSxDVXI9e25hcnJvdzp7YW06ImEiLHBtOiJwIixtaWRuaWdodDoibWkiLG5vb246Im4iLG1vcm5pbmc6Im1vcm5pbmciLGFmdGVybm9vbjoiYWZ0ZXJub29uIixldmVuaW5nOiJldmVuaW5nIixuaWdodDoibmlnaHQifSxhYmJyZXZpYXRlZDp7YW06IkFNIixwbToiUE0iLG1pZG5pZ2h0OiJtaWRuaWdodCIsbm9vbjoibm9vbiIsbW9ybmluZzoibW9ybmluZyIsYWZ0ZXJub29uOiJhZnRlcm5vb24iLGV2ZW5pbmc6ImV2ZW5pbmciLG5pZ2h0OiJuaWdodCJ9LHdpZGU6e2FtOiJhLm0uIixwbToicC5tLiIsbWlkbmlnaHQ6Im1pZG5pZ2h0Iixub29uOiJub29uIixtb3JuaW5nOiJtb3JuaW5nIixhZnRlcm5vb246ImFmdGVybm9vbiIsZXZlbmluZzoiZXZlbmluZyIsbmlnaHQ6Im5pZ2h0In19LF9Vcj17bmFycm93OnthbToiYSIscG06InAiLG1pZG5pZ2h0OiJtaSIsbm9vbjoibiIsbW9ybmluZzoiaW4gdGhlIG1vcm5pbmciLGFmdGVybm9vbjoiaW4gdGhlIGFmdGVybm9vbiIsZXZlbmluZzoiaW4gdGhlIGV2ZW5pbmciLG5pZ2h0OiJhdCBuaWdodCJ9LGFiYnJldmlhdGVkOnthbToiQU0iLHBtOiJQTSIsbWlkbmlnaHQ6Im1pZG5pZ2h0Iixub29uOiJub29uIixtb3JuaW5nOiJpbiB0aGUgbW9ybmluZyIsYWZ0ZXJub29uOiJpbiB0aGUgYWZ0ZXJub29uIixldmVuaW5nOiJpbiB0aGUgZXZlbmluZyIsbmlnaHQ6ImF0IG5pZ2h0In0sd2lkZTp7YW06ImEubS4iLHBtOiJwLm0uIixtaWRuaWdodDoibWlkbmlnaHQiLG5vb246Im5vb24iLG1vcm5pbmc6ImluIHRoZSBtb3JuaW5nIixhZnRlcm5vb246ImluIHRoZSBhZnRlcm5vb24iLGV2ZW5pbmc6ImluIHRoZSBldmVuaW5nIixuaWdodDoiYXQgbmlnaHQifX0sVFVyPShlLHQpPT57bGV0IHI9TnVtYmVyKGUpLGE9ciUxMDA7aWYoYT4yMHx8YTwxMClzd2l0Y2goYSUxMCl7Y2FzZSAxOnJldHVybiByKyJzdCI7Y2FzZSAyOnJldHVybiByKyJuZCI7Y2FzZSAzOnJldHVybiByKyJyZCJ9cmV0dXJuIHIrInRoIn0sZ3V0PXtvcmRpbmFsTnVtYmVyOlRVcixlcmE6UGgoe3ZhbHVlczpNVXIsZGVmYXVsdFdpZHRoOiJ3aWRlIn0pLHF1YXJ0ZXI6UGgoe3ZhbHVlczprVXIsZGVmYXVsdFdpZHRoOiJ3aWRlIixhcmd1bWVudENhbGxiYWNrOmU9PmUtMX0pLG1vbnRoOlBoKHt2YWx1ZXM6U1VyLGRlZmF1bHRXaWR0aDoid2lkZSJ9KSxkYXk6UGgoe3ZhbHVlczp6VXIsZGVmYXVsdFdpZHRoOiJ3aWRlIn0pLGRheVBlcmlvZDpQaCh7dmFsdWVzOkNVcixkZWZhdWx0V2lkdGg6IndpZGUiLGZvcm1hdHRpbmdWYWx1ZXM6X1VyLGRlZmF1bHRGb3JtYXR0aW5nV2lkdGg6IndpZGUifSl9fSk7ZnVuY3Rpb24gSWgoZSl7cmV0dXJuKHQscj17fSk9PntsZXQgYT1yLndpZHRoLGk9YSYmZS5tYXRjaFBhdHRlcm5zW2FdfHxlLm1hdGNoUGF0dGVybnNbZS5kZWZhdWx0TWF0Y2hXaWR0aF0sbz10Lm1hdGNoKGkpO2lmKCFvKXJldHVybiBudWxsO2xldCBuPW9bMF0scz1hJiZlLnBhcnNlUGF0dGVybnNbYV18fGUucGFyc2VQYXR0ZXJuc1tlLmRlZmF1bHRQYXJzZVdpZHRoXSxjPUFycmF5LmlzQXJyYXkocyk/RFVyKHMsdT0+dS50ZXN0KG4pKTpMVXIocyx1PT51LnRlc3QobikpLGQ7ZD1lLnZhbHVlQ2FsbGJhY2s/ZS52YWx1ZUNhbGxiYWNrKGMpOmMsZD1yLnZhbHVlQ2FsbGJhY2s/ci52YWx1ZUNhbGxiYWNrKGQpOmQ7bGV0IGY9dC5zbGljZShuLmxlbmd0aCk7cmV0dXJue3ZhbHVlOmQscmVzdDpmfX19ZnVuY3Rpb24gTFVyKGUsdCl7Zm9yKGxldCByIGluIGUpaWYoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUscikmJnQoZVtyXSkpcmV0dXJuIHJ9ZnVuY3Rpb24gRFVyKGUsdCl7Zm9yKGxldCByPTA7cjxlLmxlbmd0aDtyKyspaWYodChlW3JdKSlyZXR1cm4gcn12YXIgYnV0PWwoKCk9Pnt9KTtmdW5jdGlvbiB2dXQoZSl7cmV0dXJuKHQscj17fSk9PntsZXQgYT10Lm1hdGNoKGUubWF0Y2hQYXR0ZXJuKTtpZighYSlyZXR1cm4gbnVsbDtsZXQgaT1hWzBdLG89dC5tYXRjaChlLnBhcnNlUGF0dGVybik7aWYoIW8pcmV0dXJuIG51bGw7bGV0IG49ZS52YWx1ZUNhbGxiYWNrP2UudmFsdWVDYWxsYmFjayhvWzBdKTpvWzBdO249ci52YWx1ZUNhbGxiYWNrP3IudmFsdWVDYWxsYmFjayhuKTpuO2xldCBzPXQuc2xpY2UoaS5sZW5ndGgpO3JldHVybnt2YWx1ZTpuLHJlc3Q6c319fXZhciB5dXQ9bCgoKT0+e30pO3ZhciBBVXIsRVVyLCRVcixQVXIsSVVyLE5VcixGVXIsT1VyLFJVcixCVXIsSFVyLHFVcix3dXQsTXV0PWwoKCk9PntidXQoKTt5dXQoKTtBVXI9L14oXGQrKSh0aHxzdHxuZHxyZCk/L2ksRVVyPS9cZCsvaSwkVXI9e25hcnJvdzovXihifGEpL2ksYWJicmV2aWF0ZWQ6L14oYlwuP1xzP2NcLj98YlwuP1xzP2NcLj9ccz9lXC4/fGFcLj9ccz9kXC4/fGNcLj9ccz9lXC4/KS9pLHdpZGU6L14oYmVmb3JlIGNocmlzdHxiZWZvcmUgY29tbW9uIGVyYXxhbm5vIGRvbWluaXxjb21tb24gZXJhKS9pfSxQVXI9e2FueTpbL15iL2ksL14oYXxjKS9pXX0sSVVyPXtuYXJyb3c6L15bMTIzNF0vaSxhYmJyZXZpYXRlZDovXnFbMTIzNF0vaSx3aWRlOi9eWzEyMzRdKHRofHN0fG5kfHJkKT8gcXVhcnRlci9pfSxOVXI9e2FueTpbLzEvaSwvMi9pLC8zL2ksLzQvaV19LEZVcj17bmFycm93Oi9eW2pmbWFzb25kXS9pLGFiYnJldmlhdGVkOi9eKGphbnxmZWJ8bWFyfGFwcnxtYXl8anVufGp1bHxhdWd8c2VwfG9jdHxub3Z8ZGVjKS9pLHdpZGU6L14oamFudWFyeXxmZWJydWFyeXxtYXJjaHxhcHJpbHxtYXl8anVuZXxqdWx5fGF1Z3VzdHxzZXB0ZW1iZXJ8b2N0b2Jlcnxub3ZlbWJlcnxkZWNlbWJlcikvaX0sT1VyPXtuYXJyb3c6Wy9eai9pLC9eZi9pLC9ebS9pLC9eYS9pLC9ebS9pLC9eai9pLC9eai9pLC9eYS9pLC9ecy9pLC9eby9pLC9ebi9pLC9eZC9pXSxhbnk6Wy9eamEvaSwvXmYvaSwvXm1hci9pLC9eYXAvaSwvXm1heS9pLC9eanVuL2ksL15qdWwvaSwvXmF1L2ksL15zL2ksL15vL2ksL15uL2ksL15kL2ldfSxSVXI9e25hcnJvdzovXltzbXR3Zl0vaSxzaG9ydDovXihzdXxtb3x0dXx3ZXx0aHxmcnxzYSkvaSxhYmJyZXZpYXRlZDovXihzdW58bW9ufHR1ZXx3ZWR8dGh1fGZyaXxzYXQpL2ksd2lkZTovXihzdW5kYXl8bW9uZGF5fHR1ZXNkYXl8d2VkbmVzZGF5fHRodXJzZGF5fGZyaWRheXxzYXR1cmRheSkvaX0sQlVyPXtuYXJyb3c6Wy9ecy9pLC9ebS9pLC9edC9pLC9edy9pLC9edC9pLC9eZi9pLC9ecy9pXSxhbnk6Wy9ec3UvaSwvXm0vaSwvXnR1L2ksL153L2ksL150aC9pLC9eZi9pLC9ec2EvaV19LEhVcj17bmFycm93Oi9eKGF8cHxtaXxufChpbiB0aGV8YXQpIChtb3JuaW5nfGFmdGVybm9vbnxldmVuaW5nfG5pZ2h0KSkvaSxhbnk6L14oW2FwXVwuP1xzP21cLj98bWlkbmlnaHR8bm9vbnwoaW4gdGhlfGF0KSAobW9ybmluZ3xhZnRlcm5vb258ZXZlbmluZ3xuaWdodCkpL2l9LHFVcj17YW55OnthbTovXmEvaSxwbTovXnAvaSxtaWRuaWdodDovXm1pL2ksbm9vbjovXm5vL2ksbW9ybmluZzovbW9ybmluZy9pLGFmdGVybm9vbjovYWZ0ZXJub29uL2ksZXZlbmluZzovZXZlbmluZy9pLG5pZ2h0Oi9uaWdodC9pfX0sd3V0PXtvcmRpbmFsTnVtYmVyOnZ1dCh7bWF0Y2hQYXR0ZXJuOkFVcixwYXJzZVBhdHRlcm46RVVyLHZhbHVlQ2FsbGJhY2s6ZT0+cGFyc2VJbnQoZSwxMCl9KSxlcmE6SWgoe21hdGNoUGF0dGVybnM6JFVyLGRlZmF1bHRNYXRjaFdpZHRoOiJ3aWRlIixwYXJzZVBhdHRlcm5zOlBVcixkZWZhdWx0UGFyc2VXaWR0aDoiYW55In0pLHF1YXJ0ZXI6SWgoe21hdGNoUGF0dGVybnM6SVVyLGRlZmF1bHRNYXRjaFdpZHRoOiJ3aWRlIixwYXJzZVBhdHRlcm5zOk5VcixkZWZhdWx0UGFyc2VXaWR0aDoiYW55Iix2YWx1ZUNhbGxiYWNrOmU9PmUrMX0pLG1vbnRoOkloKHttYXRjaFBhdHRlcm5zOkZVcixkZWZhdWx0TWF0Y2hXaWR0aDoid2lkZSIscGFyc2VQYXR0ZXJuczpPVXIsZGVmYXVsdFBhcnNlV2lkdGg6ImFueSJ9KSxkYXk6SWgoe21hdGNoUGF0dGVybnM6UlVyLGRlZmF1bHRNYXRjaFdpZHRoOiJ3aWRlIixwYXJzZVBhdHRlcm5zOkJVcixkZWZhdWx0UGFyc2VXaWR0aDoiYW55In0pLGRheVBlcmlvZDpJaCh7bWF0Y2hQYXR0ZXJuczpIVXIsZGVmYXVsdE1hdGNoV2lkdGg6ImFueSIscGFyc2VQYXR0ZXJuczpxVXIsZGVmYXVsdFBhcnNlV2lkdGg6ImFueSJ9KX19KTt2YXIgVG8sdXFhLGt1dD1sKCgpPT57Y3V0KCk7ZnV0KCk7aHV0KCk7eHV0KCk7TXV0KCk7VG89e2NvZGU6ImVuLVVTIixmb3JtYXREaXN0YW5jZTpsdXQsZm9ybWF0TG9uZzp1dXQsZm9ybWF0UmVsYXRpdmU6cHV0LGxvY2FsaXplOmd1dCxtYXRjaDp3dXQsb3B0aW9uczp7d2Vla1N0YXJ0c09uOjAsZmlyc3RXZWVrQ29udGFpbnNEYXRlOjF9fSx1cWE9VG99KTt2YXIgWDM9bCgoKT0+e2t1dCgpfSk7ZnVuY3Rpb24gYUsoZSx0KXtsZXQgcj1oZShlLHQ/LmluKTtyZXR1cm4gamkociwkaChyKSkrMX12YXIgYnFhLHhkZT1sKCgpPT57X2woKTtlSygpO2plKCk7YnFhPWFLfSk7ZnVuY3Rpb24gTmgoZSx0KXtsZXQgcj1oZShlLHQ/LmluKSxhPStjaShyKS0ram8ocik7cmV0dXJuIE1hdGgucm91bmQoYS9pMikrMX12YXIgU3FhLGlLPWwoKCk9PntYdCgpO2wyKCk7a2goKTtqZSgpO1NxYT1OaH0pO2Z1bmN0aW9uIE0wKGUsdCl7bGV0IHI9aGUoZSx0Py5pbiksYT1yLmdldEZ1bGxZZWFyKCksaT1VcigpLG89dD8uZmlyc3RXZWVrQ29udGFpbnNEYXRlPz90Py5sb2NhbGU/Lm9wdGlvbnM/LmZpcnN0V2Vla0NvbnRhaW5zRGF0ZT8/aS5maXJzdFdlZWtDb250YWluc0RhdGU/P2kubG9jYWxlPy5vcHRpb25zPy5maXJzdFdlZWtDb250YWluc0RhdGU/PzEsbj1SZSh0Py5pbnx8ZSwwKTtuLnNldEZ1bGxZZWFyKGErMSwwLG8pLG4uc2V0SG91cnMoMCwwLDAsMCk7bGV0IHM9bGEobix0KSxjPVJlKHQ/LmlufHxlLDApO2Muc2V0RnVsbFllYXIoYSwwLG8pLGMuc2V0SG91cnMoMCwwLDAsMCk7bGV0IGQ9bGEoYyx0KTtyZXR1cm4rcj49K3M/YSsxOityPj0rZD9hOmEtMX12YXIgRHFhLG94PWwoKCk9Pnt6MSgpO3p0KCk7YXMoKTtqZSgpO0RxYT1NMH0pO2Z1bmN0aW9uIFEzKGUsdCl7bGV0IHI9VXIoKSxhPXQ/LmZpcnN0V2Vla0NvbnRhaW5zRGF0ZT8/dD8ubG9jYWxlPy5vcHRpb25zPy5maXJzdFdlZWtDb250YWluc0RhdGU/P3IuZmlyc3RXZWVrQ29udGFpbnNEYXRlPz9yLmxvY2FsZT8ub3B0aW9ucz8uZmlyc3RXZWVrQ29udGFpbnNEYXRlPz8xLGk9TTAoZSx0KSxvPVJlKHQ/LmlufHxlLDApO3JldHVybiBvLnNldEZ1bGxZZWFyKGksMCxhKSxvLnNldEhvdXJzKDAsMCwwLDApLGxhKG8sdCl9dmFyIE5xYSxvSz1sKCgpPT57ejEoKTt6dCgpO294KCk7YXMoKTtOcWE9UTN9KTtmdW5jdGlvbiBGaChlLHQpe2xldCByPWhlKGUsdD8uaW4pLGE9K2xhKHIsdCktK1EzKHIsdCk7cmV0dXJuIE1hdGgucm91bmQoYS9pMikrMX12YXIgcXFhLG5LPWwoKCk9PntYdCgpO2FzKCk7b0soKTtqZSgpO3FxYT1GaH0pO2Z1bmN0aW9uIGR0KGUsdCl7bGV0IHI9ZTwwPyItIjoiIixhPU1hdGguYWJzKGUpLnRvU3RyaW5nKCkucGFkU3RhcnQodCwiMCIpO3JldHVybiByK2F9dmFyIEszPWwoKCk9Pnt9KTt2YXIgVm8sYmRlPWwoKCk9PntLMygpO1ZvPXt5KGUsdCl7bGV0IHI9ZS5nZXRGdWxsWWVhcigpLGE9cj4wP3I6MS1yO3JldHVybiBkdCh0PT09Inl5Ij9hJTEwMDphLHQubGVuZ3RoKX0sTShlLHQpe2xldCByPWUuZ2V0TW9udGgoKTtyZXR1cm4gdD09PSJNIj9TdHJpbmcocisxKTpkdChyKzEsMil9LGQoZSx0KXtyZXR1cm4gZHQoZS5nZXREYXRlKCksdC5sZW5ndGgpfSxhKGUsdCl7bGV0IHI9ZS5nZXRIb3VycygpLzEyPj0xPyJwbSI6ImFtIjtzd2l0Y2godCl7Y2FzZSJhIjpjYXNlImFhIjpyZXR1cm4gci50b1VwcGVyQ2FzZSgpO2Nhc2UiYWFhIjpyZXR1cm4gcjtjYXNlImFhYWFhIjpyZXR1cm4gclswXTtkZWZhdWx0OnJldHVybiByPT09ImFtIj8iYS5tLiI6InAubS4ifX0saChlLHQpe3JldHVybiBkdChlLmdldEhvdXJzKCklMTJ8fDEyLHQubGVuZ3RoKX0sSChlLHQpe3JldHVybiBkdChlLmdldEhvdXJzKCksdC5sZW5ndGgpfSxtKGUsdCl7cmV0dXJuIGR0KGUuZ2V0TWludXRlcygpLHQubGVuZ3RoKX0scyhlLHQpe3JldHVybiBkdChlLmdldFNlY29uZHMoKSx0Lmxlbmd0aCl9LFMoZSx0KXtsZXQgcj10Lmxlbmd0aCxhPWUuZ2V0TWlsbGlzZWNvbmRzKCksaT1NYXRoLnRydW5jKGEqTWF0aC5wb3coMTAsci0zKSk7cmV0dXJuIGR0KGksdC5sZW5ndGgpfX19KTtmdW5jdGlvbiBTdXQoZSx0PSIiKXtsZXQgcj1lPjA/Ii0iOiIrIixhPU1hdGguYWJzKGUpLGk9TWF0aC50cnVuYyhhLzYwKSxvPWElNjA7cmV0dXJuIG89PT0wP3IrU3RyaW5nKGkpOnIrU3RyaW5nKGkpK3QrZHQobywyKX1mdW5jdGlvbiB6dXQoZSx0KXtyZXR1cm4gZSU2MD09PTA/KGU+MD8iLSI6IisiKStkdChNYXRoLmFicyhlKS82MCwyKTpKMyhlLHQpfWZ1bmN0aW9uIEozKGUsdD0iIil7bGV0IHI9ZT4wPyItIjoiKyIsYT1NYXRoLmFicyhlKSxpPWR0KE1hdGgudHJ1bmMoYS82MCksMiksbz1kdChhJTYwLDIpO3JldHVybiByK2krdCtvfXZhciBPaCxueCxDdXQ9bCgoKT0+e3hkZSgpO2lLKCk7eDAoKTtuSygpO294KCk7SzMoKTtiZGUoKTtPaD17YW06ImFtIixwbToicG0iLG1pZG5pZ2h0OiJtaWRuaWdodCIsbm9vbjoibm9vbiIsbW9ybmluZzoibW9ybmluZyIsYWZ0ZXJub29uOiJhZnRlcm5vb24iLGV2ZW5pbmc6ImV2ZW5pbmciLG5pZ2h0OiJuaWdodCJ9LG54PXtHOmZ1bmN0aW9uKGUsdCxyKXtsZXQgYT1lLmdldEZ1bGxZZWFyKCk+MD8xOjA7c3dpdGNoKHQpe2Nhc2UiRyI6Y2FzZSJHRyI6Y2FzZSJHR0ciOnJldHVybiByLmVyYShhLHt3aWR0aDoiYWJicmV2aWF0ZWQifSk7Y2FzZSJHR0dHRyI6cmV0dXJuIHIuZXJhKGEse3dpZHRoOiJuYXJyb3cifSk7ZGVmYXVsdDpyZXR1cm4gci5lcmEoYSx7d2lkdGg6IndpZGUifSl9fSx5OmZ1bmN0aW9uKGUsdCxyKXtpZih0PT09InlvIil7bGV0IGE9ZS5nZXRGdWxsWWVhcigpLGk9YT4wP2E6MS1hO3JldHVybiByLm9yZGluYWxOdW1iZXIoaSx7dW5pdDoieWVhciJ9KX1yZXR1cm4gVm8ueShlLHQpfSxZOmZ1bmN0aW9uKGUsdCxyLGEpe2xldCBpPU0wKGUsYSksbz1pPjA/aToxLWk7aWYodD09PSJZWSIpe2xldCBuPW8lMTAwO3JldHVybiBkdChuLDIpfXJldHVybiB0PT09IllvIj9yLm9yZGluYWxOdW1iZXIobyx7dW5pdDoieWVhciJ9KTpkdChvLHQubGVuZ3RoKX0sUjpmdW5jdGlvbihlLHQpe2xldCByPXJvKGUpO3JldHVybiBkdChyLHQubGVuZ3RoKX0sdTpmdW5jdGlvbihlLHQpe2xldCByPWUuZ2V0RnVsbFllYXIoKTtyZXR1cm4gZHQocix0Lmxlbmd0aCl9LFE6ZnVuY3Rpb24oZSx0LHIpe2xldCBhPU1hdGguY2VpbCgoZS5nZXRNb250aCgpKzEpLzMpO3N3aXRjaCh0KXtjYXNlIlEiOnJldHVybiBTdHJpbmcoYSk7Y2FzZSJRUSI6cmV0dXJuIGR0KGEsMik7Y2FzZSJRbyI6cmV0dXJuIHIub3JkaW5hbE51bWJlcihhLHt1bml0OiJxdWFydGVyIn0pO2Nhc2UiUVFRIjpyZXR1cm4gci5xdWFydGVyKGEse3dpZHRoOiJhYmJyZXZpYXRlZCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtjYXNlIlFRUVFRIjpyZXR1cm4gci5xdWFydGVyKGEse3dpZHRoOiJuYXJyb3ciLGNvbnRleHQ6ImZvcm1hdHRpbmcifSk7ZGVmYXVsdDpyZXR1cm4gci5xdWFydGVyKGEse3dpZHRoOiJ3aWRlIixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfX0scTpmdW5jdGlvbihlLHQscil7bGV0IGE9TWF0aC5jZWlsKChlLmdldE1vbnRoKCkrMSkvMyk7c3dpdGNoKHQpe2Nhc2UicSI6cmV0dXJuIFN0cmluZyhhKTtjYXNlInFxIjpyZXR1cm4gZHQoYSwyKTtjYXNlInFvIjpyZXR1cm4gci5vcmRpbmFsTnVtYmVyKGEse3VuaXQ6InF1YXJ0ZXIifSk7Y2FzZSJxcXEiOnJldHVybiByLnF1YXJ0ZXIoYSx7d2lkdGg6ImFiYnJldmlhdGVkIixjb250ZXh0OiJzdGFuZGFsb25lIn0pO2Nhc2UicXFxcXEiOnJldHVybiByLnF1YXJ0ZXIoYSx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoic3RhbmRhbG9uZSJ9KTtkZWZhdWx0OnJldHVybiByLnF1YXJ0ZXIoYSx7d2lkdGg6IndpZGUiLGNvbnRleHQ6InN0YW5kYWxvbmUifSl9fSxNOmZ1bmN0aW9uKGUsdCxyKXtsZXQgYT1lLmdldE1vbnRoKCk7c3dpdGNoKHQpe2Nhc2UiTSI6Y2FzZSJNTSI6cmV0dXJuIFZvLk0oZSx0KTtjYXNlIk1vIjpyZXR1cm4gci5vcmRpbmFsTnVtYmVyKGErMSx7dW5pdDoibW9udGgifSk7Y2FzZSJNTU0iOnJldHVybiByLm1vbnRoKGEse3dpZHRoOiJhYmJyZXZpYXRlZCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtjYXNlIk1NTU1NIjpyZXR1cm4gci5tb250aChhLHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pO2RlZmF1bHQ6cmV0dXJuIHIubW9udGgoYSx7d2lkdGg6IndpZGUiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl9fSxMOmZ1bmN0aW9uKGUsdCxyKXtsZXQgYT1lLmdldE1vbnRoKCk7c3dpdGNoKHQpe2Nhc2UiTCI6cmV0dXJuIFN0cmluZyhhKzEpO2Nhc2UiTEwiOnJldHVybiBkdChhKzEsMik7Y2FzZSJMbyI6cmV0dXJuIHIub3JkaW5hbE51bWJlcihhKzEse3VuaXQ6Im1vbnRoIn0pO2Nhc2UiTExMIjpyZXR1cm4gci5tb250aChhLHt3aWR0aDoiYWJicmV2aWF0ZWQiLGNvbnRleHQ6InN0YW5kYWxvbmUifSk7Y2FzZSJMTExMTCI6cmV0dXJuIHIubW9udGgoYSx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoic3RhbmRhbG9uZSJ9KTtkZWZhdWx0OnJldHVybiByLm1vbnRoKGEse3dpZHRoOiJ3aWRlIixjb250ZXh0OiJzdGFuZGFsb25lIn0pfX0sdzpmdW5jdGlvbihlLHQscixhKXtsZXQgaT1GaChlLGEpO3JldHVybiB0PT09IndvIj9yLm9yZGluYWxOdW1iZXIoaSx7dW5pdDoid2VlayJ9KTpkdChpLHQubGVuZ3RoKX0sSTpmdW5jdGlvbihlLHQscil7bGV0IGE9TmgoZSk7cmV0dXJuIHQ9PT0iSW8iP3Iub3JkaW5hbE51bWJlcihhLHt1bml0OiJ3ZWVrIn0pOmR0KGEsdC5sZW5ndGgpfSxkOmZ1bmN0aW9uKGUsdCxyKXtyZXR1cm4gdD09PSJkbyI/ci5vcmRpbmFsTnVtYmVyKGUuZ2V0RGF0ZSgpLHt1bml0OiJkYXRlIn0pOlZvLmQoZSx0KX0sRDpmdW5jdGlvbihlLHQscil7bGV0IGE9YUsoZSk7cmV0dXJuIHQ9PT0iRG8iP3Iub3JkaW5hbE51bWJlcihhLHt1bml0OiJkYXlPZlllYXIifSk6ZHQoYSx0Lmxlbmd0aCl9LEU6ZnVuY3Rpb24oZSx0LHIpe2xldCBhPWUuZ2V0RGF5KCk7c3dpdGNoKHQpe2Nhc2UiRSI6Y2FzZSJFRSI6Y2FzZSJFRUUiOnJldHVybiByLmRheShhLHt3aWR0aDoiYWJicmV2aWF0ZWQiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSk7Y2FzZSJFRUVFRSI6cmV0dXJuIHIuZGF5KGEse3dpZHRoOiJuYXJyb3ciLGNvbnRleHQ6ImZvcm1hdHRpbmcifSk7Y2FzZSJFRUVFRUUiOnJldHVybiByLmRheShhLHt3aWR0aDoic2hvcnQiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSk7ZGVmYXVsdDpyZXR1cm4gci5kYXkoYSx7d2lkdGg6IndpZGUiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl9fSxlOmZ1bmN0aW9uKGUsdCxyLGEpe2xldCBpPWUuZ2V0RGF5KCksbz0oaS1hLndlZWtTdGFydHNPbis4KSU3fHw3O3N3aXRjaCh0KXtjYXNlImUiOnJldHVybiBTdHJpbmcobyk7Y2FzZSJlZSI6cmV0dXJuIGR0KG8sMik7Y2FzZSJlbyI6cmV0dXJuIHIub3JkaW5hbE51bWJlcihvLHt1bml0OiJkYXkifSk7Y2FzZSJlZWUiOnJldHVybiByLmRheShpLHt3aWR0aDoiYWJicmV2aWF0ZWQiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSk7Y2FzZSJlZWVlZSI6cmV0dXJuIHIuZGF5KGkse3dpZHRoOiJuYXJyb3ciLGNvbnRleHQ6ImZvcm1hdHRpbmcifSk7Y2FzZSJlZWVlZWUiOnJldHVybiByLmRheShpLHt3aWR0aDoic2hvcnQiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSk7ZGVmYXVsdDpyZXR1cm4gci5kYXkoaSx7d2lkdGg6IndpZGUiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl9fSxjOmZ1bmN0aW9uKGUsdCxyLGEpe2xldCBpPWUuZ2V0RGF5KCksbz0oaS1hLndlZWtTdGFydHNPbis4KSU3fHw3O3N3aXRjaCh0KXtjYXNlImMiOnJldHVybiBTdHJpbmcobyk7Y2FzZSJjYyI6cmV0dXJuIGR0KG8sdC5sZW5ndGgpO2Nhc2UiY28iOnJldHVybiByLm9yZGluYWxOdW1iZXIobyx7dW5pdDoiZGF5In0pO2Nhc2UiY2NjIjpyZXR1cm4gci5kYXkoaSx7d2lkdGg6ImFiYnJldmlhdGVkIixjb250ZXh0OiJzdGFuZGFsb25lIn0pO2Nhc2UiY2NjY2MiOnJldHVybiByLmRheShpLHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJzdGFuZGFsb25lIn0pO2Nhc2UiY2NjY2NjIjpyZXR1cm4gci5kYXkoaSx7d2lkdGg6InNob3J0Iixjb250ZXh0OiJzdGFuZGFsb25lIn0pO2RlZmF1bHQ6cmV0dXJuIHIuZGF5KGkse3dpZHRoOiJ3aWRlIixjb250ZXh0OiJzdGFuZGFsb25lIn0pfX0saTpmdW5jdGlvbihlLHQscil7bGV0IGE9ZS5nZXREYXkoKSxpPWE9PT0wPzc6YTtzd2l0Y2godCl7Y2FzZSJpIjpyZXR1cm4gU3RyaW5nKGkpO2Nhc2UiaWkiOnJldHVybiBkdChpLHQubGVuZ3RoKTtjYXNlImlvIjpyZXR1cm4gci5vcmRpbmFsTnVtYmVyKGkse3VuaXQ6ImRheSJ9KTtjYXNlImlpaSI6cmV0dXJuIHIuZGF5KGEse3dpZHRoOiJhYmJyZXZpYXRlZCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtjYXNlImlpaWlpIjpyZXR1cm4gci5kYXkoYSx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtjYXNlImlpaWlpaSI6cmV0dXJuIHIuZGF5KGEse3dpZHRoOiJzaG9ydCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtkZWZhdWx0OnJldHVybiByLmRheShhLHt3aWR0aDoid2lkZSIsY29udGV4dDoiZm9ybWF0dGluZyJ9KX19LGE6ZnVuY3Rpb24oZSx0LHIpe2xldCBpPWUuZ2V0SG91cnMoKS8xMj49MT8icG0iOiJhbSI7c3dpdGNoKHQpe2Nhc2UiYSI6Y2FzZSJhYSI6cmV0dXJuIHIuZGF5UGVyaW9kKGkse3dpZHRoOiJhYmJyZXZpYXRlZCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtjYXNlImFhYSI6cmV0dXJuIHIuZGF5UGVyaW9kKGkse3dpZHRoOiJhYmJyZXZpYXRlZCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KS50b0xvd2VyQ2FzZSgpO2Nhc2UiYWFhYWEiOnJldHVybiByLmRheVBlcmlvZChpLHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pO2RlZmF1bHQ6cmV0dXJuIHIuZGF5UGVyaW9kKGkse3dpZHRoOiJ3aWRlIixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfX0sYjpmdW5jdGlvbihlLHQscil7bGV0IGE9ZS5nZXRIb3VycygpLGk7c3dpdGNoKGE9PT0xMj9pPU9oLm5vb246YT09PTA/aT1PaC5taWRuaWdodDppPWEvMTI+PTE/InBtIjoiYW0iLHQpe2Nhc2UiYiI6Y2FzZSJiYiI6cmV0dXJuIHIuZGF5UGVyaW9kKGkse3dpZHRoOiJhYmJyZXZpYXRlZCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtjYXNlImJiYiI6cmV0dXJuIHIuZGF5UGVyaW9kKGkse3dpZHRoOiJhYmJyZXZpYXRlZCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KS50b0xvd2VyQ2FzZSgpO2Nhc2UiYmJiYmIiOnJldHVybiByLmRheVBlcmlvZChpLHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pO2RlZmF1bHQ6cmV0dXJuIHIuZGF5UGVyaW9kKGkse3dpZHRoOiJ3aWRlIixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfX0sQjpmdW5jdGlvbihlLHQscil7bGV0IGE9ZS5nZXRIb3VycygpLGk7c3dpdGNoKGE+PTE3P2k9T2guZXZlbmluZzphPj0xMj9pPU9oLmFmdGVybm9vbjphPj00P2k9T2gubW9ybmluZzppPU9oLm5pZ2h0LHQpe2Nhc2UiQiI6Y2FzZSJCQiI6Y2FzZSJCQkIiOnJldHVybiByLmRheVBlcmlvZChpLHt3aWR0aDoiYWJicmV2aWF0ZWQiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSk7Y2FzZSJCQkJCQiI6cmV0dXJuIHIuZGF5UGVyaW9kKGkse3dpZHRoOiJuYXJyb3ciLGNvbnRleHQ6ImZvcm1hdHRpbmcifSk7ZGVmYXVsdDpyZXR1cm4gci5kYXlQZXJpb2QoaSx7d2lkdGg6IndpZGUiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl9fSxoOmZ1bmN0aW9uKGUsdCxyKXtpZih0PT09ImhvIil7bGV0IGE9ZS5nZXRIb3VycygpJTEyO3JldHVybiBhPT09MCYmKGE9MTIpLHIub3JkaW5hbE51bWJlcihhLHt1bml0OiJob3VyIn0pfXJldHVybiBWby5oKGUsdCl9LEg6ZnVuY3Rpb24oZSx0LHIpe3JldHVybiB0PT09IkhvIj9yLm9yZGluYWxOdW1iZXIoZS5nZXRIb3VycygpLHt1bml0OiJob3VyIn0pOlZvLkgoZSx0KX0sSzpmdW5jdGlvbihlLHQscil7bGV0IGE9ZS5nZXRIb3VycygpJTEyO3JldHVybiB0PT09IktvIj9yLm9yZGluYWxOdW1iZXIoYSx7dW5pdDoiaG91ciJ9KTpkdChhLHQubGVuZ3RoKX0sazpmdW5jdGlvbihlLHQscil7bGV0IGE9ZS5nZXRIb3VycygpO3JldHVybiBhPT09MCYmKGE9MjQpLHQ9PT0ia28iP3Iub3JkaW5hbE51bWJlcihhLHt1bml0OiJob3VyIn0pOmR0KGEsdC5sZW5ndGgpfSxtOmZ1bmN0aW9uKGUsdCxyKXtyZXR1cm4gdD09PSJtbyI/ci5vcmRpbmFsTnVtYmVyKGUuZ2V0TWludXRlcygpLHt1bml0OiJtaW51dGUifSk6Vm8ubShlLHQpfSxzOmZ1bmN0aW9uKGUsdCxyKXtyZXR1cm4gdD09PSJzbyI/ci5vcmRpbmFsTnVtYmVyKGUuZ2V0U2Vjb25kcygpLHt1bml0OiJzZWNvbmQifSk6Vm8ucyhlLHQpfSxTOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIFZvLlMoZSx0KX0sWDpmdW5jdGlvbihlLHQscil7bGV0IGE9ZS5nZXRUaW1lem9uZU9mZnNldCgpO2lmKGE9PT0wKXJldHVybiJaIjtzd2l0Y2godCl7Y2FzZSJYIjpyZXR1cm4genV0KGEpO2Nhc2UiWFhYWCI6Y2FzZSJYWCI6cmV0dXJuIEozKGEpO2RlZmF1bHQ6cmV0dXJuIEozKGEsIjoiKX19LHg6ZnVuY3Rpb24oZSx0LHIpe2xldCBhPWUuZ2V0VGltZXpvbmVPZmZzZXQoKTtzd2l0Y2godCl7Y2FzZSJ4IjpyZXR1cm4genV0KGEpO2Nhc2UieHh4eCI6Y2FzZSJ4eCI6cmV0dXJuIEozKGEpO2RlZmF1bHQ6cmV0dXJuIEozKGEsIjoiKX19LE86ZnVuY3Rpb24oZSx0LHIpe2xldCBhPWUuZ2V0VGltZXpvbmVPZmZzZXQoKTtzd2l0Y2godCl7Y2FzZSJPIjpjYXNlIk9PIjpjYXNlIk9PTyI6cmV0dXJuIkdNVCIrU3V0KGEsIjoiKTtkZWZhdWx0OnJldHVybiJHTVQiK0ozKGEsIjoiKX19LHo6ZnVuY3Rpb24oZSx0LHIpe2xldCBhPWUuZ2V0VGltZXpvbmVPZmZzZXQoKTtzd2l0Y2godCl7Y2FzZSJ6IjpjYXNlInp6IjpjYXNlInp6eiI6cmV0dXJuIkdNVCIrU3V0KGEsIjoiKTtkZWZhdWx0OnJldHVybiJHTVQiK0ozKGEsIjoiKX19LHQ6ZnVuY3Rpb24oZSx0LHIpe2xldCBhPU1hdGgudHJ1bmMoK2UvMWUzKTtyZXR1cm4gZHQoYSx0Lmxlbmd0aCl9LFQ6ZnVuY3Rpb24oZSx0LHIpe3JldHVybiBkdCgrZSx0Lmxlbmd0aCl9fX0pO3ZhciBfdXQsVHV0LGpVcixrMCx2ZGU9bCgoKT0+e191dD0oZSx0KT0+e3N3aXRjaChlKXtjYXNlIlAiOnJldHVybiB0LmRhdGUoe3dpZHRoOiJzaG9ydCJ9KTtjYXNlIlBQIjpyZXR1cm4gdC5kYXRlKHt3aWR0aDoibWVkaXVtIn0pO2Nhc2UiUFBQIjpyZXR1cm4gdC5kYXRlKHt3aWR0aDoibG9uZyJ9KTtkZWZhdWx0OnJldHVybiB0LmRhdGUoe3dpZHRoOiJmdWxsIn0pfX0sVHV0PShlLHQpPT57c3dpdGNoKGUpe2Nhc2UicCI6cmV0dXJuIHQudGltZSh7d2lkdGg6InNob3J0In0pO2Nhc2UicHAiOnJldHVybiB0LnRpbWUoe3dpZHRoOiJtZWRpdW0ifSk7Y2FzZSJwcHAiOnJldHVybiB0LnRpbWUoe3dpZHRoOiJsb25nIn0pO2RlZmF1bHQ6cmV0dXJuIHQudGltZSh7d2lkdGg6ImZ1bGwifSl9fSxqVXI9KGUsdCk9PntsZXQgcj1lLm1hdGNoKC8oUCspKHArKT8vKXx8W10sYT1yWzFdLGk9clsyXTtpZighaSlyZXR1cm4gX3V0KGUsdCk7bGV0IG87c3dpdGNoKGEpe2Nhc2UiUCI6bz10LmRhdGVUaW1lKHt3aWR0aDoic2hvcnQifSk7YnJlYWs7Y2FzZSJQUCI6bz10LmRhdGVUaW1lKHt3aWR0aDoibWVkaXVtIn0pO2JyZWFrO2Nhc2UiUFBQIjpvPXQuZGF0ZVRpbWUoe3dpZHRoOiJsb25nIn0pO2JyZWFrO2RlZmF1bHQ6bz10LmRhdGVUaW1lKHt3aWR0aDoiZnVsbCJ9KTticmVha31yZXR1cm4gby5yZXBsYWNlKCJ7e2RhdGV9fSIsX3V0KGEsdCkpLnJlcGxhY2UoInt7dGltZX19IixUdXQoaSx0KSl9LGswPXtwOlR1dCxQOmpVcn19KTtmdW5jdGlvbiBzSyhlKXtyZXR1cm4gVlVyLnRlc3QoZSl9ZnVuY3Rpb24gbEsoZSl7cmV0dXJuIFVVci50ZXN0KGUpfWZ1bmN0aW9uIHN4KGUsdCxyKXtsZXQgYT1HVXIoZSx0LHIpO2lmKGNvbnNvbGUud2FybihhKSxXVXIuaW5jbHVkZXMoZSkpdGhyb3cgbmV3IFJhbmdlRXJyb3IoYSl9ZnVuY3Rpb24gR1VyKGUsdCxyKXtsZXQgYT1lWzBdPT09IlkiPyJ5ZWFycyI6ImRheXMgb2YgdGhlIG1vbnRoIjtyZXR1cm5gVXNlIFxgJHtlLnRvTG93ZXJDYXNlKCl9XGAgaW5zdGVhZCBvZiBcYCR7ZX1cYCAoaW4gXGAke3R9XGApIGZvciBmb3JtYXR0aW5nICR7YX0gdG8gdGhlIGlucHV0IFxgJHtyfVxgOyBzZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9kYXRlLWZucy9kYXRlLWZucy9ibG9iL21hc3Rlci9kb2NzL3VuaWNvZGVUb2tlbnMubWRgfXZhciBWVXIsVVVyLFdVcix5ZGU9bCgoKT0+e1ZVcj0vXkQrJC8sVVVyPS9eWSskLyxXVXI9WyJEIiwiREQiLCJZWSIsIllZWVkiXX0pO2Z1bmN0aW9uIGx4KGUsdCxyKXtsZXQgYT1VcigpLGk9cj8ubG9jYWxlPz9hLmxvY2FsZT8/VG8sbz1yPy5maXJzdFdlZWtDb250YWluc0RhdGU/P3I/LmxvY2FsZT8ub3B0aW9ucz8uZmlyc3RXZWVrQ29udGFpbnNEYXRlPz9hLmZpcnN0V2Vla0NvbnRhaW5zRGF0ZT8/YS5sb2NhbGU/Lm9wdGlvbnM/LmZpcnN0V2Vla0NvbnRhaW5zRGF0ZT8/MSxuPXI/LndlZWtTdGFydHNPbj8/cj8ubG9jYWxlPy5vcHRpb25zPy53ZWVrU3RhcnRzT24/P2Eud2Vla1N0YXJ0c09uPz9hLmxvY2FsZT8ub3B0aW9ucz8ud2Vla1N0YXJ0c09uPz8wLHM9aGUoZSxyPy5pbik7aWYoIWQxKHMpKXRocm93IG5ldyBSYW5nZUVycm9yKCJJbnZhbGlkIHRpbWUgdmFsdWUiKTtsZXQgYz10Lm1hdGNoKFpVcikubWFwKGY9PntsZXQgdT1mWzBdO2lmKHU9PT0icCJ8fHU9PT0iUCIpe2xldCBwPWswW3VdO3JldHVybiBwKGYsaS5mb3JtYXRMb25nKX1yZXR1cm4gZn0pLmpvaW4oIiIpLm1hdGNoKFlVcikubWFwKGY9PntpZihmPT09IicnIilyZXR1cm57aXNUb2tlbjohMSx2YWx1ZToiJyJ9O2xldCB1PWZbMF07aWYodT09PSInIilyZXR1cm57aXNUb2tlbjohMSx2YWx1ZTpKVXIoZil9O2lmKG54W3VdKXJldHVybntpc1Rva2VuOiEwLHZhbHVlOmZ9O2lmKHUubWF0Y2goS1VyKSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiRm9ybWF0IHN0cmluZyBjb250YWlucyBhbiB1bmVzY2FwZWQgbGF0aW4gYWxwaGFiZXQgY2hhcmFjdGVyIGAiK3UrImAiKTtyZXR1cm57aXNUb2tlbjohMSx2YWx1ZTpmfX0pO2kubG9jYWxpemUucHJlcHJvY2Vzc29yJiYoYz1pLmxvY2FsaXplLnByZXByb2Nlc3NvcihzLGMpKTtsZXQgZD17Zmlyc3RXZWVrQ29udGFpbnNEYXRlOm8sd2Vla1N0YXJ0c09uOm4sbG9jYWxlOml9O3JldHVybiBjLm1hcChmPT57aWYoIWYuaXNUb2tlbilyZXR1cm4gZi52YWx1ZTtsZXQgdT1mLnZhbHVlOyghcj8udXNlQWRkaXRpb25hbFdlZWtZZWFyVG9rZW5zJiZsSyh1KXx8IXI/LnVzZUFkZGl0aW9uYWxEYXlPZlllYXJUb2tlbnMmJnNLKHUpKSYmc3godSx0LFN0cmluZyhlKSk7bGV0IHA9bnhbdVswXV07cmV0dXJuIHAocyx1LGkubG9jYWxpemUsZCl9KS5qb2luKCIiKX1mdW5jdGlvbiBKVXIoZSl7bGV0IHQ9ZS5tYXRjaChYVXIpO3JldHVybiB0P3RbMV0ucmVwbGFjZShRVXIsIiciKTplfXZhciBZVXIsWlVyLFhVcixRVXIsS1VyLGRqYSx3ZGU9bCgoKT0+e1gzKCk7ejEoKTtDdXQoKTt2ZGUoKTt5ZGUoKTtUbCgpO2plKCk7WVVyPS9beVlRcU1Md0lkRGVjaWhIS2ttc11vfChcdylcMSp8Jyd8JygnJ3xbXiddKSsoJ3wkKXwuL2csWlVyPS9QK3ArfFArfHArfCcnfCcoJyd8W14nXSkrKCd8JCl8Li9nLFhVcj0vXicoW15dKj8pJz8kLyxRVXI9LycnL2csS1VyPS9bYS16QS1aXS87ZGphPWx4fSk7ZnVuY3Rpb24gY0soZSx0LHIpe2xldCBhPVVyKCksaT1yPy5sb2NhbGU/P2EubG9jYWxlPz9UbyxvPTI1MjAsbj1DMShlLHQpO2lmKGlzTmFOKG4pKXRocm93IG5ldyBSYW5nZUVycm9yKCJJbnZhbGlkIHRpbWUgdmFsdWUiKTtsZXQgcz1PYmplY3QuYXNzaWduKHt9LHIse2FkZFN1ZmZpeDpyPy5hZGRTdWZmaXgsY29tcGFyaXNvbjpufSksW2MsZF09d3Qocj8uaW4sLi4ubj4wP1t0LGVdOltlLHRdKSxmPXUyKGQsYyksdT0oUmEoZCktUmEoYykpLzFlMyxwPU1hdGgucm91bmQoKGYtdSkvNjApLGg7aWYocDwyKXJldHVybiByPy5pbmNsdWRlU2Vjb25kcz9mPDU/aS5mb3JtYXREaXN0YW5jZSgibGVzc1RoYW5YU2Vjb25kcyIsNSxzKTpmPDEwP2kuZm9ybWF0RGlzdGFuY2UoImxlc3NUaGFuWFNlY29uZHMiLDEwLHMpOmY8MjA/aS5mb3JtYXREaXN0YW5jZSgibGVzc1RoYW5YU2Vjb25kcyIsMjAscyk6Zjw0MD9pLmZvcm1hdERpc3RhbmNlKCJoYWxmQU1pbnV0ZSIsMCxzKTpmPDYwP2kuZm9ybWF0RGlzdGFuY2UoImxlc3NUaGFuWE1pbnV0ZXMiLDEscyk6aS5mb3JtYXREaXN0YW5jZSgieE1pbnV0ZXMiLDEscyk6cD09PTA/aS5mb3JtYXREaXN0YW5jZSgibGVzc1RoYW5YTWludXRlcyIsMSxzKTppLmZvcm1hdERpc3RhbmNlKCJ4TWludXRlcyIscCxzKTtpZihwPDQ1KXJldHVybiBpLmZvcm1hdERpc3RhbmNlKCJ4TWludXRlcyIscCxzKTtpZihwPDkwKXJldHVybiBpLmZvcm1hdERpc3RhbmNlKCJhYm91dFhIb3VycyIsMSxzKTtpZihwPHloKXtsZXQgYj1NYXRoLnJvdW5kKHAvNjApO3JldHVybiBpLmZvcm1hdERpc3RhbmNlKCJhYm91dFhIb3VycyIsYixzKX1lbHNle2lmKHA8bylyZXR1cm4gaS5mb3JtYXREaXN0YW5jZSgieERheXMiLDEscyk7aWYocDxoMCl7bGV0IGI9TWF0aC5yb3VuZChwL3loKTtyZXR1cm4gaS5mb3JtYXREaXN0YW5jZSgieERheXMiLGIscyl9ZWxzZSBpZihwPGgwKjIpcmV0dXJuIGg9TWF0aC5yb3VuZChwL2gwKSxpLmZvcm1hdERpc3RhbmNlKCJhYm91dFhNb250aHMiLGgscyl9aWYoaD15MChkLGMpLGg8MTIpe2xldCBiPU1hdGgucm91bmQocC9oMCk7cmV0dXJuIGkuZm9ybWF0RGlzdGFuY2UoInhNb250aHMiLGIscyl9ZWxzZXtsZXQgYj1oJTEyLHg9TWF0aC50cnVuYyhoLzEyKTtyZXR1cm4gYjwzP2kuZm9ybWF0RGlzdGFuY2UoImFib3V0WFllYXJzIix4LHMpOmI8OT9pLmZvcm1hdERpc3RhbmNlKCJvdmVyWFllYXJzIix4LHMpOmkuZm9ybWF0RGlzdGFuY2UoImFsbW9zdFhZZWFycyIseCsxLHMpfX12YXIgeWphLE1kZT1sKCgpPT57WDMoKTt6MSgpO0NsKCk7ZWEoKTtVMygpO1h0KCk7cngoKTtheCgpO3lqYT1jS30pO2Z1bmN0aW9uIGRLKGUsdCxyKXtsZXQgYT1VcigpLGk9cj8ubG9jYWxlPz9hLmxvY2FsZT8/VG8sbz1DMShlLHQpO2lmKGlzTmFOKG8pKXRocm93IG5ldyBSYW5nZUVycm9yKCJJbnZhbGlkIHRpbWUgdmFsdWUiKTtsZXQgbj1PYmplY3QuYXNzaWduKHt9LHIse2FkZFN1ZmZpeDpyPy5hZGRTdWZmaXgsY29tcGFyaXNvbjpvfSksW3MsY109d3Qocj8uaW4sLi4ubz4wP1t0LGVdOltlLHRdKSxkPV8xKHI/LnJvdW5kaW5nTWV0aG9kPz8icm91bmQiKSxmPWMuZ2V0VGltZSgpLXMuZ2V0VGltZSgpLHU9Zi9TMSxwPVJhKGMpLVJhKHMpLGg9KGYtcCkvUzEsYj1yPy51bml0LHg7aWYoYj94PWI6dTwxP3g9InNlY29uZCI6dTw2MD94PSJtaW51dGUiOnU8eWg/eD0iaG91ciI6aDxoMD94PSJkYXkiOmg8VTNlP3g9Im1vbnRoIjp4PSJ5ZWFyIix4PT09InNlY29uZCIpe2xldCBnPWQoZi8xZTMpO3JldHVybiBpLmZvcm1hdERpc3RhbmNlKCJ4U2Vjb25kcyIsZyxuKX1lbHNlIGlmKHg9PT0ibWludXRlIil7bGV0IGc9ZCh1KTtyZXR1cm4gaS5mb3JtYXREaXN0YW5jZSgieE1pbnV0ZXMiLGcsbil9ZWxzZSBpZih4PT09ImhvdXIiKXtsZXQgZz1kKHUvNjApO3JldHVybiBpLmZvcm1hdERpc3RhbmNlKCJ4SG91cnMiLGcsbil9ZWxzZSBpZih4PT09ImRheSIpe2xldCBnPWQoaC95aCk7cmV0dXJuIGkuZm9ybWF0RGlzdGFuY2UoInhEYXlzIixnLG4pfWVsc2UgaWYoeD09PSJtb250aCIpe2xldCBnPWQoaC9oMCk7cmV0dXJuIGc9PT0xMiYmYiE9PSJtb250aCI/aS5mb3JtYXREaXN0YW5jZSgieFllYXJzIiwxLG4pOmkuZm9ybWF0RGlzdGFuY2UoInhNb250aHMiLGcsbil9ZWxzZXtsZXQgZz1kKGgvVTNlKTtyZXR1cm4gaS5mb3JtYXREaXN0YW5jZSgieFllYXJzIixnLG4pfX12YXIgTGphLGtkZT1sKCgpPT57WDMoKTt6MSgpO0xsKCk7Q2woKTtlYSgpO1UzKCk7WHQoKTtMamE9ZEt9KTtmdW5jdGlvbiBMdXQoZSx0KXtyZXR1cm4gY0soZSxpcihlKSx0KX12YXIgJGphLER1dD1sKCgpPT57emkoKTtNZGUoKTskamE9THV0fSk7ZnVuY3Rpb24gQXV0KGUsdCl7cmV0dXJuIGRLKGUsaXIoZSksdCl9dmFyIEZqYSxFdXQ9bCgoKT0+e3ppKCk7a2RlKCk7RmphPUF1dH0pO2Z1bmN0aW9uICR1dChlLHQpe2xldCByPVVyKCksYT10Py5sb2NhbGU/P3IubG9jYWxlPz9UbyxpPXQ/LmZvcm1hdD8/ZVdyLG89dD8uemVybz8/ITEsbj10Py5kZWxpbWl0ZXI/PyIgIjtyZXR1cm4gYS5mb3JtYXREaXN0YW5jZT9pLnJlZHVjZSgoYyxkKT0+e2xldCBmPWB4JHtkLnJlcGxhY2UoLyheLikvLHA9PnAudG9VcHBlckNhc2UoKSl9YCx1PWVbZF07cmV0dXJuIHUhPT12b2lkIDAmJihvfHxlW2RdKT9jLmNvbmNhdChhLmZvcm1hdERpc3RhbmNlKGYsdSkpOmN9LFtdKS5qb2luKG4pOiIifXZhciBlV3IsSGphLFB1dD1sKCgpPT57WDMoKTt6MSgpO2VXcj1bInllYXJzIiwibW9udGhzIiwid2Vla3MiLCJkYXlzIiwiaG91cnMiLCJtaW51dGVzIiwic2Vjb25kcyJdO0hqYT0kdXR9KTtmdW5jdGlvbiBJdXQoZSx0KXtsZXQgcj1oZShlLHQ/LmluKTtpZihpc05hTigrcikpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkludmFsaWQgdGltZSB2YWx1ZSIpO2xldCBhPXQ/LmZvcm1hdD8/ImV4dGVuZGVkIixpPXQ/LnJlcHJlc2VudGF0aW9uPz8iY29tcGxldGUiLG89IiIsbj0iIixzPWE9PT0iZXh0ZW5kZWQiPyItIjoiIixjPWE9PT0iZXh0ZW5kZWQiPyI6IjoiIjtpZihpIT09InRpbWUiKXtsZXQgZD1kdChyLmdldERhdGUoKSwyKSxmPWR0KHIuZ2V0TW9udGgoKSsxLDIpO289YCR7ZHQoci5nZXRGdWxsWWVhcigpLDQpfSR7c30ke2Z9JHtzfSR7ZH1gfWlmKGkhPT0iZGF0ZSIpe2xldCBkPXIuZ2V0VGltZXpvbmVPZmZzZXQoKTtpZihkIT09MCl7bGV0IHg9TWF0aC5hYnMoZCksZz1kdChNYXRoLnRydW5jKHgvNjApLDIpLHY9ZHQoeCU2MCwyKTtuPWAke2Q8MD8iKyI6Ii0ifSR7Z306JHt2fWB9ZWxzZSBuPSJaIjtsZXQgZj1kdChyLmdldEhvdXJzKCksMiksdT1kdChyLmdldE1pbnV0ZXMoKSwyKSxwPWR0KHIuZ2V0U2Vjb25kcygpLDIpLGg9bz09PSIiPyIiOiJUIixiPVtmLHUscF0uam9pbihjKTtvPWAke299JHtofSR7Yn0ke259YH1yZXR1cm4gb312YXIgVWphLE51dD1sKCgpPT57SzMoKTtqZSgpO1VqYT1JdXR9KTtmdW5jdGlvbiBGdXQoZSx0KXtsZXQgcj1oZShlLHQ/LmluKTtpZighZDEocikpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkludmFsaWQgdGltZSB2YWx1ZSIpO2xldCBhPXQ/LmZvcm1hdD8/ImV4dGVuZGVkIixpPXQ/LnJlcHJlc2VudGF0aW9uPz8iY29tcGxldGUiLG89IiIsbj1hPT09ImV4dGVuZGVkIj8iLSI6IiIscz1hPT09ImV4dGVuZGVkIj8iOiI6IiI7aWYoaSE9PSJ0aW1lIil7bGV0IGM9ZHQoci5nZXREYXRlKCksMiksZD1kdChyLmdldE1vbnRoKCkrMSwyKTtvPWAke2R0KHIuZ2V0RnVsbFllYXIoKSw0KX0ke259JHtkfSR7bn0ke2N9YH1pZihpIT09ImRhdGUiKXtsZXQgYz1kdChyLmdldEhvdXJzKCksMiksZD1kdChyLmdldE1pbnV0ZXMoKSwyKSxmPWR0KHIuZ2V0U2Vjb25kcygpLDIpO289YCR7b30ke289PT0iIj8iIjoiICJ9JHtjfSR7c30ke2R9JHtzfSR7Zn1gfXJldHVybiBvfXZhciBYamEsT3V0PWwoKCk9PntLMygpO1RsKCk7amUoKTtYamE9RnV0fSk7ZnVuY3Rpb24gUnV0KGUpe2xldHt5ZWFyczp0PTAsbW9udGhzOnI9MCxkYXlzOmE9MCxob3VyczppPTAsbWludXRlczpvPTAsc2Vjb25kczpuPTB9PWU7cmV0dXJuYFAke3R9WSR7cn1NJHthfURUJHtpfUgke299TSR7bn1TYH12YXIgS2phLEJ1dD1sKCgpPT57S2phPVJ1dH0pO2Z1bmN0aW9uIEh1dChlLHQpe2xldCByPWhlKGUsdD8uaW4pO2lmKCFkMShyKSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiSW52YWxpZCB0aW1lIHZhbHVlIik7bGV0IGE9dD8uZnJhY3Rpb25EaWdpdHM/PzAsaT1kdChyLmdldERhdGUoKSwyKSxvPWR0KHIuZ2V0TW9udGgoKSsxLDIpLG49ci5nZXRGdWxsWWVhcigpLHM9ZHQoci5nZXRIb3VycygpLDIpLGM9ZHQoci5nZXRNaW51dGVzKCksMiksZD1kdChyLmdldFNlY29uZHMoKSwyKSxmPSIiO2lmKGE+MCl7bGV0IGg9ci5nZXRNaWxsaXNlY29uZHMoKSxiPU1hdGgudHJ1bmMoaCpNYXRoLnBvdygxMCxhLTMpKTtmPSIuIitkdChiLGEpfWxldCB1PSIiLHA9ci5nZXRUaW1lem9uZU9mZnNldCgpO2lmKHAhPT0wKXtsZXQgaD1NYXRoLmFicyhwKSxiPWR0KE1hdGgudHJ1bmMoaC82MCksMikseD1kdChoJTYwLDIpO3U9YCR7cDwwPyIrIjoiLSJ9JHtifToke3h9YH1lbHNlIHU9IloiO3JldHVybmAke259LSR7b30tJHtpfVQke3N9OiR7Y306JHtkfSR7Zn0ke3V9YH12YXIgYVZhLHF1dD1sKCgpPT57SzMoKTtUbCgpO2plKCk7YVZhPUh1dH0pO2Z1bmN0aW9uIGp1dChlKXtsZXQgdD1oZShlKTtpZighZDEodCkpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkludmFsaWQgdGltZSB2YWx1ZSIpO2xldCByPXRXclt0LmdldFVUQ0RheSgpXSxhPWR0KHQuZ2V0VVRDRGF0ZSgpLDIpLGk9cldyW3QuZ2V0VVRDTW9udGgoKV0sbz10LmdldFVUQ0Z1bGxZZWFyKCksbj1kdCh0LmdldFVUQ0hvdXJzKCksMikscz1kdCh0LmdldFVUQ01pbnV0ZXMoKSwyKSxjPWR0KHQuZ2V0VVRDU2Vjb25kcygpLDIpO3JldHVybmAke3J9LCAke2F9ICR7aX0gJHtvfSAke259OiR7c306JHtjfSBHTVRgfXZhciB0V3IscldyLGxWYSxWdXQ9bCgoKT0+e0szKCk7VGwoKTtqZSgpO3RXcj1bIlN1biIsIk1vbiIsIlR1ZSIsIldlZCIsIlRodSIsIkZyaSIsIlNhdCJdLHJXcj1bIkphbiIsIkZlYiIsIk1hciIsIkFwciIsIk1heSIsIkp1biIsIkp1bCIsIkF1ZyIsIlNlcCIsIk9jdCIsIk5vdiIsIkRlYyJdO2xWYT1qdXR9KTtmdW5jdGlvbiBVdXQoZSx0LHIpe2xldFthLGldPXd0KHI/LmluLGUsdCksbz1VcigpLG49cj8ubG9jYWxlPz9vLmxvY2FsZT8/VG8scz1yPy53ZWVrU3RhcnRzT24/P3I/LmxvY2FsZT8ub3B0aW9ucz8ud2Vla1N0YXJ0c09uPz9vLndlZWtTdGFydHNPbj8/by5sb2NhbGU/Lm9wdGlvbnM/LndlZWtTdGFydHNPbj8/MCxjPWppKGEsaSk7aWYoaXNOYU4oYykpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkludmFsaWQgdGltZSB2YWx1ZSIpO2xldCBkO2M8LTY/ZD0ib3RoZXIiOmM8LTE/ZD0ibGFzdFdlZWsiOmM8MD9kPSJ5ZXN0ZXJkYXkiOmM8MT9kPSJ0b2RheSI6YzwyP2Q9InRvbW9ycm93IjpjPDc/ZD0ibmV4dFdlZWsiOmQ9Im90aGVyIjtsZXQgZj1uLmZvcm1hdFJlbGF0aXZlKGQsYSxpLHtsb2NhbGU6bix3ZWVrU3RhcnRzT246c30pO3JldHVybiBseChhLGYse2xvY2FsZTpuLHdlZWtTdGFydHNPbjpzfSl9dmFyIG1WYSxXdXQ9bCgoKT0+e1gzKCk7ejEoKTtlYSgpO19sKCk7d2RlKCk7bVZhPVV1dH0pO2Z1bmN0aW9uIEd1dChlLHQpe3JldHVybiBoZShlKjFlMyx0Py5pbil9dmFyIGJWYSxZdXQ9bCgoKT0+e2plKCk7YlZhPUd1dH0pO2Z1bmN0aW9uIHVLKGUsdCl7cmV0dXJuIGhlKGUsdD8uaW4pLmdldERhdGUoKX12YXIgd1ZhLFNkZT1sKCgpPT57amUoKTt3VmE9dUt9KTtmdW5jdGlvbiBTMChlLHQpe3JldHVybiBoZShlLHQ/LmluKS5nZXREYXkoKX12YXIgU1ZhLGN4PWwoKCk9PntqZSgpO1NWYT1TMH0pO2Z1bmN0aW9uIGZLKGUsdCl7bGV0IHI9aGUoZSx0Py5pbiksYT1yLmdldEZ1bGxZZWFyKCksaT1yLmdldE1vbnRoKCksbz1SZShyLDApO3JldHVybiBvLnNldEZ1bGxZZWFyKGEsaSsxLDApLG8uc2V0SG91cnMoMCwwLDAsMCksby5nZXREYXRlKCl9dmFyIFRWYSx6ZGU9bCgoKT0+e3p0KCk7amUoKTtUVmE9Zkt9KTtmdW5jdGlvbiBwSyhlLHQpe2xldCBhPWhlKGUsdD8uaW4pLmdldEZ1bGxZZWFyKCk7cmV0dXJuIGElNDAwPT09MHx8YSU0PT09MCYmYSUxMDAhPT0wfXZhciBBVmEsQ2RlPWwoKCk9PntqZSgpO0FWYT1wS30pO2Z1bmN0aW9uIFp1dChlLHQpe2xldCByPWhlKGUsdD8uaW4pO3JldHVybiBOdW1iZXIuaXNOYU4oK3IpP05hTjpwSyhyKT8zNjY6MzY1fXZhciBJVmEsWHV0PWwoKCk9PntDZGUoKTtqZSgpO0lWYT1adXR9KTtmdW5jdGlvbiBRdXQoZSx0KXtsZXQgYT1oZShlLHQ/LmluKS5nZXRGdWxsWWVhcigpO3JldHVybiBNYXRoLmZsb29yKGEvMTApKjEwfXZhciBPVmEsS3V0PWwoKCk9PntqZSgpO09WYT1RdXR9KTtmdW5jdGlvbiBoSygpe3JldHVybiBPYmplY3QuYXNzaWduKHt9LFVyKCkpfXZhciBIVmEsX2RlPWwoKCk9Pnt6MSgpO0hWYT1oS30pO2Z1bmN0aW9uIEp1dChlLHQpe3JldHVybiBoZShlLHQ/LmluKS5nZXRIb3VycygpfXZhciBWVmEsZWZ0PWwoKCk9PntqZSgpO1ZWYT1KdXR9KTtmdW5jdGlvbiBtSyhlLHQpe2xldCByPWhlKGUsdD8uaW4pLmdldERheSgpO3JldHVybiByPT09MD83OnJ9dmFyIEdWYSxUZGU9bCgoKT0+e2plKCk7R1ZhPW1LfSk7ZnVuY3Rpb24gdGZ0KGUsdCl7bGV0IHI9am8oZSx0KSxpPStqbyhiMChyLDYwKSktK3I7cmV0dXJuIE1hdGgucm91bmQoaS9pMil9dmFyIEtWYSxyZnQ9bCgoKT0+e2V4KCk7WHQoKTtraCgpO0tWYT10ZnR9KTtmdW5jdGlvbiBhZnQoZSl7cmV0dXJuIGhlKGUpLmdldE1pbGxpc2Vjb25kcygpfXZhciB0VWEsaWZ0PWwoKCk9PntqZSgpO3RVYT1hZnR9KTtmdW5jdGlvbiBvZnQoZSx0KXtyZXR1cm4gaGUoZSx0Py5pbikuZ2V0TWludXRlcygpfXZhciBpVWEsbmZ0PWwoKCk9PntqZSgpO2lVYT1vZnR9KTtmdW5jdGlvbiBzZnQoZSx0KXtyZXR1cm4gaGUoZSx0Py5pbikuZ2V0TW9udGgoKX12YXIgc1VhLGxmdD1sKCgpPT57amUoKTtzVWE9c2Z0fSk7ZnVuY3Rpb24gY2Z0KGUsdCl7bGV0W3IsYV09WytoZShlLnN0YXJ0KSwraGUoZS5lbmQpXS5zb3J0KCh1LHApPT51LXApLFtpLG9dPVsraGUodC5zdGFydCksK2hlKHQuZW5kKV0uc29ydCgodSxwKT0+dS1wKTtpZighKHI8byYmaTxhKSlyZXR1cm4gMDtsZXQgcz1pPHI/cjppLGM9cy1SYShzKSxkPW8+YT9hOm8sZj1kLVJhKGQpO3JldHVybiBNYXRoLmNlaWwoKGYtYykvYlEpfXZhciBmVWEsZGZ0PWwoKCk9PntDbCgpO1h0KCk7amUoKTtmVWE9Y2Z0fSk7ZnVuY3Rpb24gdWZ0KGUpe3JldHVybiBoZShlKS5nZXRTZWNvbmRzKCl9dmFyIG1VYSxmZnQ9bCgoKT0+e2plKCk7bVVhPXVmdH0pO2Z1bmN0aW9uIHBmdChlKXtyZXR1cm4raGUoZSl9dmFyIGJVYSxoZnQ9bCgoKT0+e2plKCk7YlVhPXBmdH0pO2Z1bmN0aW9uIG1mdChlKXtyZXR1cm4gTWF0aC50cnVuYygraGUoZSkvMWUzKX12YXIgd1VhLGdmdD1sKCgpPT57amUoKTt3VWE9bWZ0fSk7ZnVuY3Rpb24geGZ0KGUsdCl7bGV0IHI9VXIoKSxhPXQ/LndlZWtTdGFydHNPbj8/dD8ubG9jYWxlPy5vcHRpb25zPy53ZWVrU3RhcnRzT24/P3Iud2Vla1N0YXJ0c09uPz9yLmxvY2FsZT8ub3B0aW9ucz8ud2Vla1N0YXJ0c09uPz8wLGk9dUsoaGUoZSx0Py5pbikpO2lmKGlzTmFOKGkpKXJldHVybiBOYU47bGV0IG89UzAodzAoZSx0KSksbj1hLW87bjw9MCYmKG4rPTcpO2xldCBzPWktbjtyZXR1cm4gTWF0aC5jZWlsKHMvNykrMX12YXIgVFVhLGJmdD1sKCgpPT57ejEoKTtTZGUoKTtjeCgpO2l4KCk7amUoKTtUVWE9eGZ0fSk7ZnVuY3Rpb24gZ0soZSx0KXtsZXQgcj1oZShlLHQ/LmluKSxhPXIuZ2V0TW9udGgoKTtyZXR1cm4gci5zZXRGdWxsWWVhcihyLmdldEZ1bGxZZWFyKCksYSsxLDApLHIuc2V0SG91cnMoMCwwLDAsMCksaGUocix0Py5pbil9dmFyIEFVYSxMZGU9bCgoKT0+e2plKCk7QVVhPWdLfSk7ZnVuY3Rpb24gdmZ0KGUsdCl7bGV0IHI9aGUoZSx0Py5pbik7cmV0dXJuIEczKGdLKHIsdCksdzAocix0KSx0KSsxfXZhciBGVWEseWZ0PWwoKCk9PntSUSgpO0xkZSgpO2l4KCk7amUoKTtGVWE9dmZ0fSk7ZnVuY3Rpb24gd2Z0KGUsdCl7cmV0dXJuIGhlKGUsdD8uaW4pLmdldEZ1bGxZZWFyKCl9dmFyIEJVYSxNZnQ9bCgoKT0+e2plKCk7QlVhPXdmdH0pO2Z1bmN0aW9uIGtmdChlKXtyZXR1cm4gTWF0aC50cnVuYyhlKnFvKX12YXIgalVhLFNmdD1sKCgpPT57WHQoKTtqVWE9a2Z0fSk7ZnVuY3Rpb24gemZ0KGUpe3JldHVybiBNYXRoLnRydW5jKGUqdlEpfXZhciBXVWEsQ2Z0PWwoKCk9PntYdCgpO1dVYT16ZnR9KTtmdW5jdGlvbiBfZnQoZSl7cmV0dXJuIE1hdGgudHJ1bmMoZSpWMyl9dmFyIFpVYSxUZnQ9bCgoKT0+e1h0KCk7WlVhPV9mdH0pO2Z1bmN0aW9uIExmdChlLHQscil7bGV0W2EsaV09d3Qocj8uaW4sZSx0KTtpZihpc05hTigrYSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiU3RhcnQgZGF0ZSBpcyBpbnZhbGlkIik7aWYoaXNOYU4oK2kpKXRocm93IG5ldyBUeXBlRXJyb3IoIkVuZCBkYXRlIGlzIGludmFsaWQiKTtpZihyPy5hc3NlcnRQb3NpdGl2ZSYmK2E+K2kpdGhyb3cgbmV3IFR5cGVFcnJvcigiRW5kIGRhdGUgbXVzdCBiZSBhZnRlciBzdGFydCBkYXRlIik7cmV0dXJue3N0YXJ0OmEsZW5kOml9fXZhciBLVWEsRGZ0PWwoKCk9PntlYSgpO0tVYT1MZnR9KTtmdW5jdGlvbiBBZnQoZSx0KXtsZXR7c3RhcnQ6cixlbmQ6YX09VmkodD8uaW4sZSksaT17fSxvPVpRKGEscik7byYmKGkueWVhcnM9byk7bGV0IG49bTAocix7eWVhcnM6aS55ZWFyc30pLHM9eTAoYSxuKTtzJiYoaS5tb250aHM9cyk7bGV0IGM9bTAobix7bW9udGhzOmkubW9udGhzfSksZD1UaChhLGMpO2QmJihpLmRheXM9ZCk7bGV0IGY9bTAoYyx7ZGF5czppLmRheXN9KSx1PVkzKGEsZik7dSYmKGkuaG91cnM9dSk7bGV0IHA9bTAoZix7aG91cnM6aS5ob3Vyc30pLGg9WjMoYSxwKTtoJiYoaS5taW51dGVzPWgpO2xldCBiPW0wKHAse21pbnV0ZXM6aS5taW51dGVzfSkseD11MihhLGIpO3JldHVybiB4JiYoaS5zZWNvbmRzPXgpLGl9dmFyIGxXYSxFZnQ9bCgoKT0+e2YyKCk7WjNlKCk7SFEoKTtxUSgpO1VRKCk7cngoKTtheCgpO3BkZSgpO2xXYT1BZnR9KTtmdW5jdGlvbiAkZnQoZSx0LHIpe2xldCBhO3JldHVybiBhV3IodCk/YT10OnI9dCxuZXcgSW50bC5EYXRlVGltZUZvcm1hdChyPy5sb2NhbGUsYSkuZm9ybWF0KGhlKGUpKX1mdW5jdGlvbiBhV3IoZSl7cmV0dXJuIGUhPT12b2lkIDAmJiEoImxvY2FsZSJpbiBlKX12YXIgdVdhLFBmdD1sKCgpPT57amUoKTt1V2E9JGZ0fSk7ZnVuY3Rpb24gSWZ0KGUsdCxyKXtsZXQgYT0wLGksW28sbl09d3Qocj8uaW4sZSx0KTtpZihyPy51bml0KWk9cj8udW5pdCxpPT09InNlY29uZCI/YT11MihvLG4pOmk9PT0ibWludXRlIj9hPVozKG8sbik6aT09PSJob3VyIj9hPVkzKG8sbik6aT09PSJkYXkiP2E9amkobyxuKTppPT09IndlZWsiP2E9RzMobyxuKTppPT09Im1vbnRoIj9hPVczKG8sbik6aT09PSJxdWFydGVyIj9hPV9oKG8sbik6aT09PSJ5ZWFyIiYmKGE9djAobyxuKSk7ZWxzZXtsZXQgYz11MihvLG4pO01hdGguYWJzKGMpPHdoPyhhPXUyKG8sbiksaT0ic2Vjb25kIik6TWF0aC5hYnMoYyk8VjM/KGE9WjMobyxuKSxpPSJtaW51dGUiKTpNYXRoLmFicyhjKTxnUSYmTWF0aC5hYnMoamkobyxuKSk8MT8oYT1ZMyhvLG4pLGk9ImhvdXIiKTpNYXRoLmFicyhjKTx0NnQmJihhPWppKG8sbikpJiZNYXRoLmFicyhhKTw3P2k9ImRheSI6TWF0aC5hYnMoYyk8RzNlPyhhPUczKG8sbiksaT0id2VlayIpOk1hdGguYWJzKGMpPHI2dD8oYT1XMyhvLG4pLGk9Im1vbnRoIik6TWF0aC5hYnMoYyk8VzNlP19oKG8sbik8ND8oYT1faChvLG4pLGk9InF1YXJ0ZXIiKTooYT12MChvLG4pLGk9InllYXIiKTooYT12MChvLG4pLGk9InllYXIiKX1yZXR1cm4gbmV3IEludGwuUmVsYXRpdmVUaW1lRm9ybWF0KHI/LmxvY2FsZSx7bnVtZXJpYzoiYXV0byIsLi4ucn0pLmZvcm1hdChhLGkpfXZhciBrV2EsTmZ0PWwoKCk9PntlYSgpO1h0KCk7X2woKTtPUSgpO2RkZSgpO1JRKCk7QlEoKTtxUSgpO1VRKCk7YXgoKTtrV2E9SWZ0fSk7ZnVuY3Rpb24gRmZ0KGUsdCl7cmV0dXJuK2hlKGUpPitoZSh0KX12YXIgQ1dhLE9mdD1sKCgpPT57amUoKTtDV2E9RmZ0fSk7ZnVuY3Rpb24gUmZ0KGUsdCl7cmV0dXJuK2hlKGUpPCtoZSh0KX12YXIgTFdhLEJmdD1sKCgpPT57amUoKTtMV2E9UmZ0fSk7ZnVuY3Rpb24gSGZ0KGUsdCl7cmV0dXJuK2hlKGUpPT0raGUodCl9dmFyIEVXYSxxZnQ9bCgoKT0+e2plKCk7RVdhPUhmdH0pO2Z1bmN0aW9uIGpmdChlLHQscil7bGV0IGE9bmV3IERhdGUoZSx0LHIpO3JldHVybiBhLmdldEZ1bGxZZWFyKCk9PT1lJiZhLmdldE1vbnRoKCk9PT10JiZhLmdldERhdGUoKT09PXJ9dmFyIFBXYSxWZnQ9bCgoKT0+e1BXYT1qZnR9KTtmdW5jdGlvbiBVZnQoZSx0KXtyZXR1cm4gaGUoZSx0Py5pbikuZ2V0RGF0ZSgpPT09MX12YXIgRldhLFdmdD1sKCgpPT57amUoKTtGV2E9VWZ0fSk7ZnVuY3Rpb24gR2Z0KGUsdCl7cmV0dXJuIGhlKGUsdD8uaW4pLmdldERheSgpPT09NX12YXIgQldhLFlmdD1sKCgpPT57amUoKTtCV2E9R2Z0fSk7ZnVuY3Rpb24gWmZ0KGUpe3JldHVybitoZShlKT5EYXRlLm5vdygpfXZhciBqV2EsWGZ0PWwoKCk9PntqZSgpO2pXYT1aZnR9KTtmdW5jdGlvbiB4SyhlLHQpe2xldCByPWlXcih0KT9uZXcgdCgwKTpSZSh0LDApO3JldHVybiByLnNldEZ1bGxZZWFyKGUuZ2V0RnVsbFllYXIoKSxlLmdldE1vbnRoKCksZS5nZXREYXRlKCkpLHIuc2V0SG91cnMoZS5nZXRIb3VycygpLGUuZ2V0TWludXRlcygpLGUuZ2V0U2Vjb25kcygpLGUuZ2V0TWlsbGlzZWNvbmRzKCkpLHJ9ZnVuY3Rpb24gaVdyKGUpe3JldHVybiB0eXBlb2YgZT09ImZ1bmN0aW9uIiYmZS5wcm90b3R5cGU/LmNvbnN0cnVjdG9yPT09ZX12YXIgV1dhLERkZT1sKCgpPT57enQoKTtXV2E9eEt9KTt2YXIgb1dyLGJLLHZLLHlLLEFkZT1sKCgpPT57enQoKTtEZGUoKTtvV3I9MTAsYks9Y2xhc3N7c3ViUHJpb3JpdHk9MDt2YWxpZGF0ZSh0LHIpe3JldHVybiEwfX0sdks9Y2xhc3MgZXh0ZW5kcyBiS3tjb25zdHJ1Y3Rvcih0LHIsYSxpLG8pe3N1cGVyKCksdGhpcy52YWx1ZT10LHRoaXMudmFsaWRhdGVWYWx1ZT1yLHRoaXMuc2V0VmFsdWU9YSx0aGlzLnByaW9yaXR5PWksbyYmKHRoaXMuc3ViUHJpb3JpdHk9byl9dmFsaWRhdGUodCxyKXtyZXR1cm4gdGhpcy52YWxpZGF0ZVZhbHVlKHQsdGhpcy52YWx1ZSxyKX1zZXQodCxyLGEpe3JldHVybiB0aGlzLnNldFZhbHVlKHQscix0aGlzLnZhbHVlLGEpfX0seUs9Y2xhc3MgZXh0ZW5kcyBiS3twcmlvcml0eT1vV3I7c3ViUHJpb3JpdHk9LTE7Y29uc3RydWN0b3IodCxyKXtzdXBlcigpLHRoaXMuY29udGV4dD10fHwoYT0+UmUocixhKSl9c2V0KHQscil7cmV0dXJuIHIudGltZXN0YW1wSXNTZXQ/dDpSZSh0LHhLKHQsdGhpcy5jb250ZXh0KSl9fX0pO3ZhciBzdCxQcj1sKCgpPT57QWRlKCk7c3Q9Y2xhc3N7cnVuKHQscixhLGkpe2xldCBvPXRoaXMucGFyc2UodCxyLGEsaSk7cmV0dXJuIG8/e3NldHRlcjpuZXcgdksoby52YWx1ZSx0aGlzLnZhbGlkYXRlLHRoaXMuc2V0LHRoaXMucHJpb3JpdHksdGhpcy5zdWJQcmlvcml0eSkscmVzdDpvLnJlc3R9Om51bGx9dmFsaWRhdGUodCxyLGEpe3JldHVybiEwfX19KTt2YXIgd0ssUWZ0PWwoKCk9PntQcigpO3dLPWNsYXNzIGV4dGVuZHMgc3R7cHJpb3JpdHk9MTQwO3BhcnNlKHQscixhKXtzd2l0Y2gocil7Y2FzZSJHIjpjYXNlIkdHIjpjYXNlIkdHRyI6cmV0dXJuIGEuZXJhKHQse3dpZHRoOiJhYmJyZXZpYXRlZCJ9KXx8YS5lcmEodCx7d2lkdGg6Im5hcnJvdyJ9KTtjYXNlIkdHR0dHIjpyZXR1cm4gYS5lcmEodCx7d2lkdGg6Im5hcnJvdyJ9KTtkZWZhdWx0OnJldHVybiBhLmVyYSh0LHt3aWR0aDoid2lkZSJ9KXx8YS5lcmEodCx7d2lkdGg6ImFiYnJldmlhdGVkIn0pfHxhLmVyYSh0LHt3aWR0aDoibmFycm93In0pfX1zZXQodCxyLGEpe3JldHVybiByLmVyYT1hLHQuc2V0RnVsbFllYXIoYSwwLDEpLHQuc2V0SG91cnMoMCwwLDAsMCksdH1pbmNvbXBhdGlibGVUb2tlbnM9WyJSIiwidSIsInQiLCJUIl19fSk7dmFyIGtyLGJuLFQxPWwoKCk9Pntrcj17bW9udGg6L14oMVswLTJdfDA/XGQpLyxkYXRlOi9eKDNbMC0xXXxbMC0yXT9cZCkvLGRheU9mWWVhcjovXigzNlswLTZdfDNbMC01XVxkfFswLTJdP1xkP1xkKS8sd2VlazovXig1WzAtM118WzAtNF0/XGQpLyxob3VyMjNoOi9eKDJbMC0zXXxbMC0xXT9cZCkvLGhvdXIyNGg6L14oMlswLTRdfFswLTFdP1xkKS8saG91cjExaDovXigxWzAtMV18MD9cZCkvLGhvdXIxMmg6L14oMVswLTJdfDA/XGQpLyxtaW51dGU6L15bMC01XT9cZC8sc2Vjb25kOi9eWzAtNV0/XGQvLHNpbmdsZURpZ2l0Oi9eXGQvLHR3b0RpZ2l0czovXlxkezEsMn0vLHRocmVlRGlnaXRzOi9eXGR7MSwzfS8sZm91ckRpZ2l0czovXlxkezEsNH0vLGFueURpZ2l0c1NpZ25lZDovXi0/XGQrLyxzaW5nbGVEaWdpdFNpZ25lZDovXi0/XGQvLHR3b0RpZ2l0c1NpZ25lZDovXi0/XGR7MSwyfS8sdGhyZWVEaWdpdHNTaWduZWQ6L14tP1xkezEsM30vLGZvdXJEaWdpdHNTaWduZWQ6L14tP1xkezEsNH0vfSxibj17YmFzaWNPcHRpb25hbE1pbnV0ZXM6L14oWystXSkoXGR7Mn0pKFxkezJ9KT98Wi8sYmFzaWM6L14oWystXSkoXGR7Mn0pKFxkezJ9KXxaLyxiYXNpY09wdGlvbmFsU2Vjb25kczovXihbKy1dKShcZHsyfSkoXGR7Mn0pKChcZHsyfSkpP3xaLyxleHRlbmRlZDovXihbKy1dKShcZHsyfSk6KFxkezJ9KXxaLyxleHRlbmRlZE9wdGlvbmFsU2Vjb25kczovXihbKy1dKShcZHsyfSk6KFxkezJ9KSg6KFxkezJ9KSk/fFovfX0pO2Z1bmN0aW9uIHRhKGUsdCl7cmV0dXJuIGUmJnt2YWx1ZTp0KGUudmFsdWUpLHJlc3Q6ZS5yZXN0fX1mdW5jdGlvbiBncihlLHQpe2xldCByPXQubWF0Y2goZSk7cmV0dXJuIHI/e3ZhbHVlOnBhcnNlSW50KHJbMF0sMTApLHJlc3Q6dC5zbGljZShyWzBdLmxlbmd0aCl9Om51bGx9ZnVuY3Rpb24gdm4oZSx0KXtsZXQgcj10Lm1hdGNoKGUpO2lmKCFyKXJldHVybiBudWxsO2lmKHJbMF09PT0iWiIpcmV0dXJue3ZhbHVlOjAscmVzdDp0LnNsaWNlKDEpfTtsZXQgYT1yWzFdPT09IisiPzE6LTEsaT1yWzJdP3BhcnNlSW50KHJbMl0sMTApOjAsbz1yWzNdP3BhcnNlSW50KHJbM10sMTApOjAsbj1yWzVdP3BhcnNlSW50KHJbNV0sMTApOjA7cmV0dXJue3ZhbHVlOmEqKGkqcW8rbypTMStuKnZoKSxyZXN0OnQuc2xpY2UoclswXS5sZW5ndGgpfX1mdW5jdGlvbiBNSyhlKXtyZXR1cm4gZ3Ioa3IuYW55RGlnaXRzU2lnbmVkLGUpfWZ1bmN0aW9uIFZ0KGUsdCl7c3dpdGNoKGUpe2Nhc2UgMTpyZXR1cm4gZ3Ioa3Iuc2luZ2xlRGlnaXQsdCk7Y2FzZSAyOnJldHVybiBncihrci50d29EaWdpdHMsdCk7Y2FzZSAzOnJldHVybiBncihrci50aHJlZURpZ2l0cyx0KTtjYXNlIDQ6cmV0dXJuIGdyKGtyLmZvdXJEaWdpdHMsdCk7ZGVmYXVsdDpyZXR1cm4gZ3IobmV3IFJlZ0V4cCgiXlxcZHsxLCIrZSsifSIpLHQpfX1mdW5jdGlvbiBSaChlLHQpe3N3aXRjaChlKXtjYXNlIDE6cmV0dXJuIGdyKGtyLnNpbmdsZURpZ2l0U2lnbmVkLHQpO2Nhc2UgMjpyZXR1cm4gZ3Ioa3IudHdvRGlnaXRzU2lnbmVkLHQpO2Nhc2UgMzpyZXR1cm4gZ3Ioa3IudGhyZWVEaWdpdHNTaWduZWQsdCk7Y2FzZSA0OnJldHVybiBncihrci5mb3VyRGlnaXRzU2lnbmVkLHQpO2RlZmF1bHQ6cmV0dXJuIGdyKG5ldyBSZWdFeHAoIl4tP1xcZHsxLCIrZSsifSIpLHQpfX1mdW5jdGlvbiBCaChlKXtzd2l0Y2goZSl7Y2FzZSJtb3JuaW5nIjpyZXR1cm4gNDtjYXNlImV2ZW5pbmciOnJldHVybiAxNztjYXNlInBtIjpjYXNlIm5vb24iOmNhc2UiYWZ0ZXJub29uIjpyZXR1cm4gMTI7ZGVmYXVsdDpyZXR1cm4gMH19ZnVuY3Rpb24ga0soZSx0KXtsZXQgcj10PjAsYT1yP3Q6MS10LGk7aWYoYTw9NTApaT1lfHwxMDA7ZWxzZXtsZXQgbz1hKzUwLG49TWF0aC50cnVuYyhvLzEwMCkqMTAwLHM9ZT49byUxMDA7aT1lK24tKHM/MTAwOjApfXJldHVybiByP2k6MS1pfWZ1bmN0aW9uIFNLKGUpe3JldHVybiBlJTQwMD09PTB8fGUlND09PTAmJmUlMTAwIT09MH12YXIgV3I9bCgoKT0+e1h0KCk7VDEoKX0pO3ZhciB6SyxLZnQ9bCgoKT0+e1ByKCk7V3IoKTt6Sz1jbGFzcyBleHRlbmRzIHN0e3ByaW9yaXR5PTEzMDtpbmNvbXBhdGlibGVUb2tlbnM9WyJZIiwiUiIsInUiLCJ3IiwiSSIsImkiLCJlIiwiYyIsInQiLCJUIl07cGFyc2UodCxyLGEpe2xldCBpPW89Pih7eWVhcjpvLGlzVHdvRGlnaXRZZWFyOnI9PT0ieXkifSk7c3dpdGNoKHIpe2Nhc2UieSI6cmV0dXJuIHRhKFZ0KDQsdCksaSk7Y2FzZSJ5byI6cmV0dXJuIHRhKGEub3JkaW5hbE51bWJlcih0LHt1bml0OiJ5ZWFyIn0pLGkpO2RlZmF1bHQ6cmV0dXJuIHRhKFZ0KHIubGVuZ3RoLHQpLGkpfX12YWxpZGF0ZSh0LHIpe3JldHVybiByLmlzVHdvRGlnaXRZZWFyfHxyLnllYXI+MH1zZXQodCxyLGEpe2xldCBpPXQuZ2V0RnVsbFllYXIoKTtpZihhLmlzVHdvRGlnaXRZZWFyKXtsZXQgbj1rSyhhLnllYXIsaSk7cmV0dXJuIHQuc2V0RnVsbFllYXIobiwwLDEpLHQuc2V0SG91cnMoMCwwLDAsMCksdH1sZXQgbz0hKCJlcmEiaW4gcil8fHIuZXJhPT09MT9hLnllYXI6MS1hLnllYXI7cmV0dXJuIHQuc2V0RnVsbFllYXIobywwLDEpLHQuc2V0SG91cnMoMCwwLDAsMCksdH19fSk7dmFyIENLLEpmdD1sKCgpPT57b3goKTthcygpO1ByKCk7V3IoKTtDSz1jbGFzcyBleHRlbmRzIHN0e3ByaW9yaXR5PTEzMDtwYXJzZSh0LHIsYSl7bGV0IGk9bz0+KHt5ZWFyOm8saXNUd29EaWdpdFllYXI6cj09PSJZWSJ9KTtzd2l0Y2gocil7Y2FzZSJZIjpyZXR1cm4gdGEoVnQoNCx0KSxpKTtjYXNlIllvIjpyZXR1cm4gdGEoYS5vcmRpbmFsTnVtYmVyKHQse3VuaXQ6InllYXIifSksaSk7ZGVmYXVsdDpyZXR1cm4gdGEoVnQoci5sZW5ndGgsdCksaSl9fXZhbGlkYXRlKHQscil7cmV0dXJuIHIuaXNUd29EaWdpdFllYXJ8fHIueWVhcj4wfXNldCh0LHIsYSxpKXtsZXQgbz1NMCh0LGkpO2lmKGEuaXNUd29EaWdpdFllYXIpe2xldCBzPWtLKGEueWVhcixvKTtyZXR1cm4gdC5zZXRGdWxsWWVhcihzLDAsaS5maXJzdFdlZWtDb250YWluc0RhdGUpLHQuc2V0SG91cnMoMCwwLDAsMCksbGEodCxpKX1sZXQgbj0hKCJlcmEiaW4gcil8fHIuZXJhPT09MT9hLnllYXI6MS1hLnllYXI7cmV0dXJuIHQuc2V0RnVsbFllYXIobiwwLGkuZmlyc3RXZWVrQ29udGFpbnNEYXRlKSx0LnNldEhvdXJzKDAsMCwwLDApLGxhKHQsaSl9aW5jb21wYXRpYmxlVG9rZW5zPVsieSIsIlIiLCJ1IiwiUSIsInEiLCJNIiwiTCIsIkkiLCJkIiwiRCIsImkiLCJ0IiwiVCJdfX0pO3ZhciBfSyxlNXQ9bCgoKT0+e2wyKCk7enQoKTtQcigpO1dyKCk7X0s9Y2xhc3MgZXh0ZW5kcyBzdHtwcmlvcml0eT0xMzA7cGFyc2UodCxyKXtyZXR1cm4gcj09PSJSIj9SaCg0LHQpOlJoKHIubGVuZ3RoLHQpfXNldCh0LHIsYSl7bGV0IGk9UmUodCwwKTtyZXR1cm4gaS5zZXRGdWxsWWVhcihhLDAsNCksaS5zZXRIb3VycygwLDAsMCwwKSxjaShpKX1pbmNvbXBhdGlibGVUb2tlbnM9WyJHIiwieSIsIlkiLCJ1IiwiUSIsInEiLCJNIiwiTCIsInciLCJkIiwiRCIsImUiLCJjIiwidCIsIlQiXX19KTt2YXIgVEssdDV0PWwoKCk9PntQcigpO1dyKCk7VEs9Y2xhc3MgZXh0ZW5kcyBzdHtwcmlvcml0eT0xMzA7cGFyc2UodCxyKXtyZXR1cm4gcj09PSJ1Ij9SaCg0LHQpOlJoKHIubGVuZ3RoLHQpfXNldCh0LHIsYSl7cmV0dXJuIHQuc2V0RnVsbFllYXIoYSwwLDEpLHQuc2V0SG91cnMoMCwwLDAsMCksdH1pbmNvbXBhdGlibGVUb2tlbnM9WyJHIiwieSIsIlkiLCJSIiwidyIsIkkiLCJpIiwiZSIsImMiLCJ0IiwiVCJdfX0pO3ZhciBMSyxyNXQ9bCgoKT0+e1ByKCk7V3IoKTtMSz1jbGFzcyBleHRlbmRzIHN0e3ByaW9yaXR5PTEyMDtwYXJzZSh0LHIsYSl7c3dpdGNoKHIpe2Nhc2UiUSI6Y2FzZSJRUSI6cmV0dXJuIFZ0KHIubGVuZ3RoLHQpO2Nhc2UiUW8iOnJldHVybiBhLm9yZGluYWxOdW1iZXIodCx7dW5pdDoicXVhcnRlciJ9KTtjYXNlIlFRUSI6cmV0dXJuIGEucXVhcnRlcih0LHt3aWR0aDoiYWJicmV2aWF0ZWQiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl8fGEucXVhcnRlcih0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pO2Nhc2UiUVFRUVEiOnJldHVybiBhLnF1YXJ0ZXIodCx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtkZWZhdWx0OnJldHVybiBhLnF1YXJ0ZXIodCx7d2lkdGg6IndpZGUiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl8fGEucXVhcnRlcih0LHt3aWR0aDoiYWJicmV2aWF0ZWQiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl8fGEucXVhcnRlcih0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfX12YWxpZGF0ZSh0LHIpe3JldHVybiByPj0xJiZyPD00fXNldCh0LHIsYSl7cmV0dXJuIHQuc2V0TW9udGgoKGEtMSkqMywxKSx0LnNldEhvdXJzKDAsMCwwLDApLHR9aW5jb21wYXRpYmxlVG9rZW5zPVsiWSIsIlIiLCJxIiwiTSIsIkwiLCJ3IiwiSSIsImQiLCJEIiwiaSIsImUiLCJjIiwidCIsIlQiXX19KTt2YXIgREssYTV0PWwoKCk9PntQcigpO1dyKCk7REs9Y2xhc3MgZXh0ZW5kcyBzdHtwcmlvcml0eT0xMjA7cGFyc2UodCxyLGEpe3N3aXRjaChyKXtjYXNlInEiOmNhc2UicXEiOnJldHVybiBWdChyLmxlbmd0aCx0KTtjYXNlInFvIjpyZXR1cm4gYS5vcmRpbmFsTnVtYmVyKHQse3VuaXQ6InF1YXJ0ZXIifSk7Y2FzZSJxcXEiOnJldHVybiBhLnF1YXJ0ZXIodCx7d2lkdGg6ImFiYnJldmlhdGVkIixjb250ZXh0OiJzdGFuZGFsb25lIn0pfHxhLnF1YXJ0ZXIodCx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoic3RhbmRhbG9uZSJ9KTtjYXNlInFxcXFxIjpyZXR1cm4gYS5xdWFydGVyKHQse3dpZHRoOiJuYXJyb3ciLGNvbnRleHQ6InN0YW5kYWxvbmUifSk7ZGVmYXVsdDpyZXR1cm4gYS5xdWFydGVyKHQse3dpZHRoOiJ3aWRlIixjb250ZXh0OiJzdGFuZGFsb25lIn0pfHxhLnF1YXJ0ZXIodCx7d2lkdGg6ImFiYnJldmlhdGVkIixjb250ZXh0OiJzdGFuZGFsb25lIn0pfHxhLnF1YXJ0ZXIodCx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoic3RhbmRhbG9uZSJ9KX19dmFsaWRhdGUodCxyKXtyZXR1cm4gcj49MSYmcjw9NH1zZXQodCxyLGEpe3JldHVybiB0LnNldE1vbnRoKChhLTEpKjMsMSksdC5zZXRIb3VycygwLDAsMCwwKSx0fWluY29tcGF0aWJsZVRva2Vucz1bIlkiLCJSIiwiUSIsIk0iLCJMIiwidyIsIkkiLCJkIiwiRCIsImkiLCJlIiwiYyIsInQiLCJUIl19fSk7dmFyIEFLLGk1dD1sKCgpPT57VDEoKTtQcigpO1dyKCk7QUs9Y2xhc3MgZXh0ZW5kcyBzdHtpbmNvbXBhdGlibGVUb2tlbnM9WyJZIiwiUiIsInEiLCJRIiwiTCIsInciLCJJIiwiRCIsImkiLCJlIiwiYyIsInQiLCJUIl07cHJpb3JpdHk9MTEwO3BhcnNlKHQscixhKXtsZXQgaT1vPT5vLTE7c3dpdGNoKHIpe2Nhc2UiTSI6cmV0dXJuIHRhKGdyKGtyLm1vbnRoLHQpLGkpO2Nhc2UiTU0iOnJldHVybiB0YShWdCgyLHQpLGkpO2Nhc2UiTW8iOnJldHVybiB0YShhLm9yZGluYWxOdW1iZXIodCx7dW5pdDoibW9udGgifSksaSk7Y2FzZSJNTU0iOnJldHVybiBhLm1vbnRoKHQse3dpZHRoOiJhYmJyZXZpYXRlZCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KXx8YS5tb250aCh0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pO2Nhc2UiTU1NTU0iOnJldHVybiBhLm1vbnRoKHQse3dpZHRoOiJuYXJyb3ciLGNvbnRleHQ6ImZvcm1hdHRpbmcifSk7ZGVmYXVsdDpyZXR1cm4gYS5tb250aCh0LHt3aWR0aDoid2lkZSIsY29udGV4dDoiZm9ybWF0dGluZyJ9KXx8YS5tb250aCh0LHt3aWR0aDoiYWJicmV2aWF0ZWQiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl8fGEubW9udGgodCx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoiZm9ybWF0dGluZyJ9KX19dmFsaWRhdGUodCxyKXtyZXR1cm4gcj49MCYmcjw9MTF9c2V0KHQscixhKXtyZXR1cm4gdC5zZXRNb250aChhLDEpLHQuc2V0SG91cnMoMCwwLDAsMCksdH19fSk7dmFyIEVLLG81dD1sKCgpPT57VDEoKTtQcigpO1dyKCk7RUs9Y2xhc3MgZXh0ZW5kcyBzdHtwcmlvcml0eT0xMTA7cGFyc2UodCxyLGEpe2xldCBpPW89Pm8tMTtzd2l0Y2gocil7Y2FzZSJMIjpyZXR1cm4gdGEoZ3Ioa3IubW9udGgsdCksaSk7Y2FzZSJMTCI6cmV0dXJuIHRhKFZ0KDIsdCksaSk7Y2FzZSJMbyI6cmV0dXJuIHRhKGEub3JkaW5hbE51bWJlcih0LHt1bml0OiJtb250aCJ9KSxpKTtjYXNlIkxMTCI6cmV0dXJuIGEubW9udGgodCx7d2lkdGg6ImFiYnJldmlhdGVkIixjb250ZXh0OiJzdGFuZGFsb25lIn0pfHxhLm1vbnRoKHQse3dpZHRoOiJuYXJyb3ciLGNvbnRleHQ6InN0YW5kYWxvbmUifSk7Y2FzZSJMTExMTCI6cmV0dXJuIGEubW9udGgodCx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoic3RhbmRhbG9uZSJ9KTtkZWZhdWx0OnJldHVybiBhLm1vbnRoKHQse3dpZHRoOiJ3aWRlIixjb250ZXh0OiJzdGFuZGFsb25lIn0pfHxhLm1vbnRoKHQse3dpZHRoOiJhYmJyZXZpYXRlZCIsY29udGV4dDoic3RhbmRhbG9uZSJ9KXx8YS5tb250aCh0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJzdGFuZGFsb25lIn0pfX12YWxpZGF0ZSh0LHIpe3JldHVybiByPj0wJiZyPD0xMX1zZXQodCxyLGEpe3JldHVybiB0LnNldE1vbnRoKGEsMSksdC5zZXRIb3VycygwLDAsMCwwKSx0fWluY29tcGF0aWJsZVRva2Vucz1bIlkiLCJSIiwicSIsIlEiLCJNIiwidyIsIkkiLCJEIiwiaSIsImUiLCJjIiwidCIsIlQiXX19KTtmdW5jdGlvbiAkSyhlLHQscil7bGV0IGE9aGUoZSxyPy5pbiksaT1GaChhLHIpLXQ7cmV0dXJuIGEuc2V0RGF0ZShhLmdldERhdGUoKS1pKjcpLGhlKGEscj8uaW4pfXZhciBGR2EsRWRlPWwoKCk9PntuSygpO2plKCk7RkdhPSRLfSk7dmFyIFBLLG41dD1sKCgpPT57RWRlKCk7YXMoKTtUMSgpO1ByKCk7V3IoKTtQSz1jbGFzcyBleHRlbmRzIHN0e3ByaW9yaXR5PTEwMDtwYXJzZSh0LHIsYSl7c3dpdGNoKHIpe2Nhc2UidyI6cmV0dXJuIGdyKGtyLndlZWssdCk7Y2FzZSJ3byI6cmV0dXJuIGEub3JkaW5hbE51bWJlcih0LHt1bml0OiJ3ZWVrIn0pO2RlZmF1bHQ6cmV0dXJuIFZ0KHIubGVuZ3RoLHQpfX12YWxpZGF0ZSh0LHIpe3JldHVybiByPj0xJiZyPD01M31zZXQodCxyLGEsaSl7cmV0dXJuIGxhKCRLKHQsYSxpKSxpKX1pbmNvbXBhdGlibGVUb2tlbnM9WyJ5IiwiUiIsInUiLCJxIiwiUSIsIk0iLCJMIiwiSSIsImQiLCJEIiwiaSIsInQiLCJUIl19fSk7ZnVuY3Rpb24gSUsoZSx0LHIpe2xldCBhPWhlKGUscj8uaW4pLGk9TmgoYSxyKS10O3JldHVybiBhLnNldERhdGUoYS5nZXREYXRlKCktaSo3KSxhfXZhciBHR2EsJGRlPWwoKCk9PntpSygpO2plKCk7R0dhPUlLfSk7dmFyIE5LLHM1dD1sKCgpPT57JGRlKCk7bDIoKTtUMSgpO1ByKCk7V3IoKTtOSz1jbGFzcyBleHRlbmRzIHN0e3ByaW9yaXR5PTEwMDtwYXJzZSh0LHIsYSl7c3dpdGNoKHIpe2Nhc2UiSSI6cmV0dXJuIGdyKGtyLndlZWssdCk7Y2FzZSJJbyI6cmV0dXJuIGEub3JkaW5hbE51bWJlcih0LHt1bml0OiJ3ZWVrIn0pO2RlZmF1bHQ6cmV0dXJuIFZ0KHIubGVuZ3RoLHQpfX12YWxpZGF0ZSh0LHIpe3JldHVybiByPj0xJiZyPD01M31zZXQodCxyLGEpe3JldHVybiBjaShJSyh0LGEpKX1pbmNvbXBhdGlibGVUb2tlbnM9WyJ5IiwiWSIsInUiLCJxIiwiUSIsIk0iLCJMIiwidyIsImQiLCJEIiwiZSIsImMiLCJ0IiwiVCJdfX0pO3ZhciBuV3Isc1dyLEZLLGw1dD1sKCgpPT57VDEoKTtQcigpO1dyKCk7bldyPVszMSwyOCwzMSwzMCwzMSwzMCwzMSwzMSwzMCwzMSwzMCwzMV0sc1dyPVszMSwyOSwzMSwzMCwzMSwzMCwzMSwzMSwzMCwzMSwzMCwzMV0sRks9Y2xhc3MgZXh0ZW5kcyBzdHtwcmlvcml0eT05MDtzdWJQcmlvcml0eT0xO3BhcnNlKHQscixhKXtzd2l0Y2gocil7Y2FzZSJkIjpyZXR1cm4gZ3Ioa3IuZGF0ZSx0KTtjYXNlImRvIjpyZXR1cm4gYS5vcmRpbmFsTnVtYmVyKHQse3VuaXQ6ImRhdGUifSk7ZGVmYXVsdDpyZXR1cm4gVnQoci5sZW5ndGgsdCl9fXZhbGlkYXRlKHQscil7bGV0IGE9dC5nZXRGdWxsWWVhcigpLGk9U0soYSksbz10LmdldE1vbnRoKCk7cmV0dXJuIGk/cj49MSYmcjw9c1dyW29dOnI+PTEmJnI8PW5XcltvXX1zZXQodCxyLGEpe3JldHVybiB0LnNldERhdGUoYSksdC5zZXRIb3VycygwLDAsMCwwKSx0fWluY29tcGF0aWJsZVRva2Vucz1bIlkiLCJSIiwicSIsIlEiLCJ3IiwiSSIsIkQiLCJpIiwiZSIsImMiLCJ0IiwiVCJdfX0pO3ZhciBPSyxjNXQ9bCgoKT0+e1QxKCk7UHIoKTtXcigpO09LPWNsYXNzIGV4dGVuZHMgc3R7cHJpb3JpdHk9OTA7c3VicHJpb3JpdHk9MTtwYXJzZSh0LHIsYSl7c3dpdGNoKHIpe2Nhc2UiRCI6Y2FzZSJERCI6cmV0dXJuIGdyKGtyLmRheU9mWWVhcix0KTtjYXNlIkRvIjpyZXR1cm4gYS5vcmRpbmFsTnVtYmVyKHQse3VuaXQ6ImRhdGUifSk7ZGVmYXVsdDpyZXR1cm4gVnQoci5sZW5ndGgsdCl9fXZhbGlkYXRlKHQscil7bGV0IGE9dC5nZXRGdWxsWWVhcigpO3JldHVybiBTSyhhKT9yPj0xJiZyPD0zNjY6cj49MSYmcjw9MzY1fXNldCh0LHIsYSl7cmV0dXJuIHQuc2V0TW9udGgoMCxhKSx0LnNldEhvdXJzKDAsMCwwLDApLHR9aW5jb21wYXRpYmxlVG9rZW5zPVsiWSIsIlIiLCJxIiwiUSIsIk0iLCJMIiwidyIsIkkiLCJkIiwiRSIsImkiLCJlIiwiYyIsInQiLCJUIl19fSk7ZnVuY3Rpb24gejAoZSx0LHIpe2xldCBhPVVyKCksaT1yPy53ZWVrU3RhcnRzT24/P3I/LmxvY2FsZT8ub3B0aW9ucz8ud2Vla1N0YXJ0c09uPz9hLndlZWtTdGFydHNPbj8/YS5sb2NhbGU/Lm9wdGlvbnM/LndlZWtTdGFydHNPbj8/MCxvPWhlKGUscj8uaW4pLG49by5nZXREYXkoKSxjPSh0JTcrNyklNyxkPTctaSxmPXQ8MHx8dD42P3QtKG4rZCklNzooYytkKSU3LShuK2QpJTc7cmV0dXJuIFNpKG8sZixyKX12YXIgZllhLGR4PWwoKCk9Pnt6MSgpO28yKCk7amUoKTtmWWE9ejB9KTt2YXIgUkssZDV0PWwoKCk9PntkeCgpO1ByKCk7Uks9Y2xhc3MgZXh0ZW5kcyBzdHtwcmlvcml0eT05MDtwYXJzZSh0LHIsYSl7c3dpdGNoKHIpe2Nhc2UiRSI6Y2FzZSJFRSI6Y2FzZSJFRUUiOnJldHVybiBhLmRheSh0LHt3aWR0aDoiYWJicmV2aWF0ZWQiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl8fGEuZGF5KHQse3dpZHRoOiJzaG9ydCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KXx8YS5kYXkodCx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtjYXNlIkVFRUVFIjpyZXR1cm4gYS5kYXkodCx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtjYXNlIkVFRUVFRSI6cmV0dXJuIGEuZGF5KHQse3dpZHRoOiJzaG9ydCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KXx8YS5kYXkodCx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtkZWZhdWx0OnJldHVybiBhLmRheSh0LHt3aWR0aDoid2lkZSIsY29udGV4dDoiZm9ybWF0dGluZyJ9KXx8YS5kYXkodCx7d2lkdGg6ImFiYnJldmlhdGVkIixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfHxhLmRheSh0LHt3aWR0aDoic2hvcnQiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl8fGEuZGF5KHQse3dpZHRoOiJuYXJyb3ciLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl9fXZhbGlkYXRlKHQscil7cmV0dXJuIHI+PTAmJnI8PTZ9c2V0KHQscixhLGkpe3JldHVybiB0PXowKHQsYSxpKSx0LnNldEhvdXJzKDAsMCwwLDApLHR9aW5jb21wYXRpYmxlVG9rZW5zPVsiRCIsImkiLCJlIiwiYyIsInQiLCJUIl19fSk7dmFyIEJLLHU1dD1sKCgpPT57ZHgoKTtQcigpO1dyKCk7Qks9Y2xhc3MgZXh0ZW5kcyBzdHtwcmlvcml0eT05MDtwYXJzZSh0LHIsYSxpKXtsZXQgbz1uPT57bGV0IHM9TWF0aC5mbG9vcigobi0xKS83KSo3O3JldHVybihuK2kud2Vla1N0YXJ0c09uKzYpJTcrc307c3dpdGNoKHIpe2Nhc2UiZSI6Y2FzZSJlZSI6cmV0dXJuIHRhKFZ0KHIubGVuZ3RoLHQpLG8pO2Nhc2UiZW8iOnJldHVybiB0YShhLm9yZGluYWxOdW1iZXIodCx7dW5pdDoiZGF5In0pLG8pO2Nhc2UiZWVlIjpyZXR1cm4gYS5kYXkodCx7d2lkdGg6ImFiYnJldmlhdGVkIixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfHxhLmRheSh0LHt3aWR0aDoic2hvcnQiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl8fGEuZGF5KHQse3dpZHRoOiJuYXJyb3ciLGNvbnRleHQ6ImZvcm1hdHRpbmcifSk7Y2FzZSJlZWVlZSI6cmV0dXJuIGEuZGF5KHQse3dpZHRoOiJuYXJyb3ciLGNvbnRleHQ6ImZvcm1hdHRpbmcifSk7Y2FzZSJlZWVlZWUiOnJldHVybiBhLmRheSh0LHt3aWR0aDoic2hvcnQiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl8fGEuZGF5KHQse3dpZHRoOiJuYXJyb3ciLGNvbnRleHQ6ImZvcm1hdHRpbmcifSk7ZGVmYXVsdDpyZXR1cm4gYS5kYXkodCx7d2lkdGg6IndpZGUiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl8fGEuZGF5KHQse3dpZHRoOiJhYmJyZXZpYXRlZCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KXx8YS5kYXkodCx7d2lkdGg6InNob3J0Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfHxhLmRheSh0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfX12YWxpZGF0ZSh0LHIpe3JldHVybiByPj0wJiZyPD02fXNldCh0LHIsYSxpKXtyZXR1cm4gdD16MCh0LGEsaSksdC5zZXRIb3VycygwLDAsMCwwKSx0fWluY29tcGF0aWJsZVRva2Vucz1bInkiLCJSIiwidSIsInEiLCJRIiwiTSIsIkwiLCJJIiwiZCIsIkQiLCJFIiwiaSIsImMiLCJ0IiwiVCJdfX0pO3ZhciBISyxmNXQ9bCgoKT0+e2R4KCk7UHIoKTtXcigpO0hLPWNsYXNzIGV4dGVuZHMgc3R7cHJpb3JpdHk9OTA7cGFyc2UodCxyLGEsaSl7bGV0IG89bj0+e2xldCBzPU1hdGguZmxvb3IoKG4tMSkvNykqNztyZXR1cm4obitpLndlZWtTdGFydHNPbis2KSU3K3N9O3N3aXRjaChyKXtjYXNlImMiOmNhc2UiY2MiOnJldHVybiB0YShWdChyLmxlbmd0aCx0KSxvKTtjYXNlImNvIjpyZXR1cm4gdGEoYS5vcmRpbmFsTnVtYmVyKHQse3VuaXQ6ImRheSJ9KSxvKTtjYXNlImNjYyI6cmV0dXJuIGEuZGF5KHQse3dpZHRoOiJhYmJyZXZpYXRlZCIsY29udGV4dDoic3RhbmRhbG9uZSJ9KXx8YS5kYXkodCx7d2lkdGg6InNob3J0Iixjb250ZXh0OiJzdGFuZGFsb25lIn0pfHxhLmRheSh0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJzdGFuZGFsb25lIn0pO2Nhc2UiY2NjY2MiOnJldHVybiBhLmRheSh0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJzdGFuZGFsb25lIn0pO2Nhc2UiY2NjY2NjIjpyZXR1cm4gYS5kYXkodCx7d2lkdGg6InNob3J0Iixjb250ZXh0OiJzdGFuZGFsb25lIn0pfHxhLmRheSh0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJzdGFuZGFsb25lIn0pO2RlZmF1bHQ6cmV0dXJuIGEuZGF5KHQse3dpZHRoOiJ3aWRlIixjb250ZXh0OiJzdGFuZGFsb25lIn0pfHxhLmRheSh0LHt3aWR0aDoiYWJicmV2aWF0ZWQiLGNvbnRleHQ6InN0YW5kYWxvbmUifSl8fGEuZGF5KHQse3dpZHRoOiJzaG9ydCIsY29udGV4dDoic3RhbmRhbG9uZSJ9KXx8YS5kYXkodCx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoic3RhbmRhbG9uZSJ9KX19dmFsaWRhdGUodCxyKXtyZXR1cm4gcj49MCYmcjw9Nn1zZXQodCxyLGEsaSl7cmV0dXJuIHQ9ejAodCxhLGkpLHQuc2V0SG91cnMoMCwwLDAsMCksdH1pbmNvbXBhdGlibGVUb2tlbnM9WyJ5IiwiUiIsInUiLCJxIiwiUSIsIk0iLCJMIiwiSSIsImQiLCJEIiwiRSIsImkiLCJlIiwidCIsIlQiXX19KTtmdW5jdGlvbiBxSyhlLHQscil7bGV0IGE9aGUoZSxyPy5pbiksaT1tSyhhLHIpLG89dC1pO3JldHVybiBTaShhLG8scil9dmFyIFRZYSxQZGU9bCgoKT0+e28yKCk7VGRlKCk7amUoKTtUWWE9cUt9KTt2YXIgaksscDV0PWwoKCk9PntQZGUoKTtQcigpO1dyKCk7aks9Y2xhc3MgZXh0ZW5kcyBzdHtwcmlvcml0eT05MDtwYXJzZSh0LHIsYSl7bGV0IGk9bz0+bz09PTA/NzpvO3N3aXRjaChyKXtjYXNlImkiOmNhc2UiaWkiOnJldHVybiBWdChyLmxlbmd0aCx0KTtjYXNlImlvIjpyZXR1cm4gYS5vcmRpbmFsTnVtYmVyKHQse3VuaXQ6ImRheSJ9KTtjYXNlImlpaSI6cmV0dXJuIHRhKGEuZGF5KHQse3dpZHRoOiJhYmJyZXZpYXRlZCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KXx8YS5kYXkodCx7d2lkdGg6InNob3J0Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfHxhLmRheSh0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pLGkpO2Nhc2UiaWlpaWkiOnJldHVybiB0YShhLmRheSh0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pLGkpO2Nhc2UiaWlpaWlpIjpyZXR1cm4gdGEoYS5kYXkodCx7d2lkdGg6InNob3J0Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfHxhLmRheSh0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pLGkpO2RlZmF1bHQ6cmV0dXJuIHRhKGEuZGF5KHQse3dpZHRoOiJ3aWRlIixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfHxhLmRheSh0LHt3aWR0aDoiYWJicmV2aWF0ZWQiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl8fGEuZGF5KHQse3dpZHRoOiJzaG9ydCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KXx8YS5kYXkodCx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoiZm9ybWF0dGluZyJ9KSxpKX19dmFsaWRhdGUodCxyKXtyZXR1cm4gcj49MSYmcjw9N31zZXQodCxyLGEpe3JldHVybiB0PXFLKHQsYSksdC5zZXRIb3VycygwLDAsMCwwKSx0fWluY29tcGF0aWJsZVRva2Vucz1bInkiLCJZIiwidSIsInEiLCJRIiwiTSIsIkwiLCJ3IiwiZCIsIkQiLCJFIiwiZSIsImMiLCJ0IiwiVCJdfX0pO3ZhciBWSyxoNXQ9bCgoKT0+e1ByKCk7V3IoKTtWSz1jbGFzcyBleHRlbmRzIHN0e3ByaW9yaXR5PTgwO3BhcnNlKHQscixhKXtzd2l0Y2gocil7Y2FzZSJhIjpjYXNlImFhIjpjYXNlImFhYSI6cmV0dXJuIGEuZGF5UGVyaW9kKHQse3dpZHRoOiJhYmJyZXZpYXRlZCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KXx8YS5kYXlQZXJpb2QodCx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtjYXNlImFhYWFhIjpyZXR1cm4gYS5kYXlQZXJpb2QodCx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtkZWZhdWx0OnJldHVybiBhLmRheVBlcmlvZCh0LHt3aWR0aDoid2lkZSIsY29udGV4dDoiZm9ybWF0dGluZyJ9KXx8YS5kYXlQZXJpb2QodCx7d2lkdGg6ImFiYnJldmlhdGVkIixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfHxhLmRheVBlcmlvZCh0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfX1zZXQodCxyLGEpe3JldHVybiB0LnNldEhvdXJzKEJoKGEpLDAsMCwwKSx0fWluY29tcGF0aWJsZVRva2Vucz1bImIiLCJCIiwiSCIsImsiLCJ0IiwiVCJdfX0pO3ZhciBVSyxtNXQ9bCgoKT0+e1ByKCk7V3IoKTtVSz1jbGFzcyBleHRlbmRzIHN0e3ByaW9yaXR5PTgwO3BhcnNlKHQscixhKXtzd2l0Y2gocil7Y2FzZSJiIjpjYXNlImJiIjpjYXNlImJiYiI6cmV0dXJuIGEuZGF5UGVyaW9kKHQse3dpZHRoOiJhYmJyZXZpYXRlZCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KXx8YS5kYXlQZXJpb2QodCx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtjYXNlImJiYmJiIjpyZXR1cm4gYS5kYXlQZXJpb2QodCx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtkZWZhdWx0OnJldHVybiBhLmRheVBlcmlvZCh0LHt3aWR0aDoid2lkZSIsY29udGV4dDoiZm9ybWF0dGluZyJ9KXx8YS5kYXlQZXJpb2QodCx7d2lkdGg6ImFiYnJldmlhdGVkIixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfHxhLmRheVBlcmlvZCh0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfX1zZXQodCxyLGEpe3JldHVybiB0LnNldEhvdXJzKEJoKGEpLDAsMCwwKSx0fWluY29tcGF0aWJsZVRva2Vucz1bImEiLCJCIiwiSCIsImsiLCJ0IiwiVCJdfX0pO3ZhciBXSyxnNXQ9bCgoKT0+e1ByKCk7V3IoKTtXSz1jbGFzcyBleHRlbmRzIHN0e3ByaW9yaXR5PTgwO3BhcnNlKHQscixhKXtzd2l0Y2gocil7Y2FzZSJCIjpjYXNlIkJCIjpjYXNlIkJCQiI6cmV0dXJuIGEuZGF5UGVyaW9kKHQse3dpZHRoOiJhYmJyZXZpYXRlZCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KXx8YS5kYXlQZXJpb2QodCx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtjYXNlIkJCQkJCIjpyZXR1cm4gYS5kYXlQZXJpb2QodCx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtkZWZhdWx0OnJldHVybiBhLmRheVBlcmlvZCh0LHt3aWR0aDoid2lkZSIsY29udGV4dDoiZm9ybWF0dGluZyJ9KXx8YS5kYXlQZXJpb2QodCx7d2lkdGg6ImFiYnJldmlhdGVkIixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfHxhLmRheVBlcmlvZCh0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfX1zZXQodCxyLGEpe3JldHVybiB0LnNldEhvdXJzKEJoKGEpLDAsMCwwKSx0fWluY29tcGF0aWJsZVRva2Vucz1bImEiLCJiIiwidCIsIlQiXX19KTt2YXIgR0sseDV0PWwoKCk9PntUMSgpO1ByKCk7V3IoKTtHSz1jbGFzcyBleHRlbmRzIHN0e3ByaW9yaXR5PTcwO3BhcnNlKHQscixhKXtzd2l0Y2gocil7Y2FzZSJoIjpyZXR1cm4gZ3Ioa3IuaG91cjEyaCx0KTtjYXNlImhvIjpyZXR1cm4gYS5vcmRpbmFsTnVtYmVyKHQse3VuaXQ6ImhvdXIifSk7ZGVmYXVsdDpyZXR1cm4gVnQoci5sZW5ndGgsdCl9fXZhbGlkYXRlKHQscil7cmV0dXJuIHI+PTEmJnI8PTEyfXNldCh0LHIsYSl7bGV0IGk9dC5nZXRIb3VycygpPj0xMjtyZXR1cm4gaSYmYTwxMj90LnNldEhvdXJzKGErMTIsMCwwLDApOiFpJiZhPT09MTI/dC5zZXRIb3VycygwLDAsMCwwKTp0LnNldEhvdXJzKGEsMCwwLDApLHR9aW5jb21wYXRpYmxlVG9rZW5zPVsiSCIsIksiLCJrIiwidCIsIlQiXX19KTt2YXIgWUssYjV0PWwoKCk9PntUMSgpO1ByKCk7V3IoKTtZSz1jbGFzcyBleHRlbmRzIHN0e3ByaW9yaXR5PTcwO3BhcnNlKHQscixhKXtzd2l0Y2gocil7Y2FzZSJIIjpyZXR1cm4gZ3Ioa3IuaG91cjIzaCx0KTtjYXNlIkhvIjpyZXR1cm4gYS5vcmRpbmFsTnVtYmVyKHQse3VuaXQ6ImhvdXIifSk7ZGVmYXVsdDpyZXR1cm4gVnQoci5sZW5ndGgsdCl9fXZhbGlkYXRlKHQscil7cmV0dXJuIHI+PTAmJnI8PTIzfXNldCh0LHIsYSl7cmV0dXJuIHQuc2V0SG91cnMoYSwwLDAsMCksdH1pbmNvbXBhdGlibGVUb2tlbnM9WyJhIiwiYiIsImgiLCJLIiwiayIsInQiLCJUIl19fSk7dmFyIFpLLHY1dD1sKCgpPT57VDEoKTtQcigpO1dyKCk7Wks9Y2xhc3MgZXh0ZW5kcyBzdHtwcmlvcml0eT03MDtwYXJzZSh0LHIsYSl7c3dpdGNoKHIpe2Nhc2UiSyI6cmV0dXJuIGdyKGtyLmhvdXIxMWgsdCk7Y2FzZSJLbyI6cmV0dXJuIGEub3JkaW5hbE51bWJlcih0LHt1bml0OiJob3VyIn0pO2RlZmF1bHQ6cmV0dXJuIFZ0KHIubGVuZ3RoLHQpfX12YWxpZGF0ZSh0LHIpe3JldHVybiByPj0wJiZyPD0xMX1zZXQodCxyLGEpe3JldHVybiB0LmdldEhvdXJzKCk+PTEyJiZhPDEyP3Quc2V0SG91cnMoYSsxMiwwLDAsMCk6dC5zZXRIb3VycyhhLDAsMCwwKSx0fWluY29tcGF0aWJsZVRva2Vucz1bImgiLCJIIiwiayIsInQiLCJUIl19fSk7dmFyIFhLLHk1dD1sKCgpPT57VDEoKTtQcigpO1dyKCk7WEs9Y2xhc3MgZXh0ZW5kcyBzdHtwcmlvcml0eT03MDtwYXJzZSh0LHIsYSl7c3dpdGNoKHIpe2Nhc2UiayI6cmV0dXJuIGdyKGtyLmhvdXIyNGgsdCk7Y2FzZSJrbyI6cmV0dXJuIGEub3JkaW5hbE51bWJlcih0LHt1bml0OiJob3VyIn0pO2RlZmF1bHQ6cmV0dXJuIFZ0KHIubGVuZ3RoLHQpfX12YWxpZGF0ZSh0LHIpe3JldHVybiByPj0xJiZyPD0yNH1zZXQodCxyLGEpe2xldCBpPWE8PTI0P2ElMjQ6YTtyZXR1cm4gdC5zZXRIb3VycyhpLDAsMCwwKSx0fWluY29tcGF0aWJsZVRva2Vucz1bImEiLCJiIiwiaCIsIkgiLCJLIiwidCIsIlQiXX19KTt2YXIgUUssdzV0PWwoKCk9PntUMSgpO1ByKCk7V3IoKTtRSz1jbGFzcyBleHRlbmRzIHN0e3ByaW9yaXR5PTYwO3BhcnNlKHQscixhKXtzd2l0Y2gocil7Y2FzZSJtIjpyZXR1cm4gZ3Ioa3IubWludXRlLHQpO2Nhc2UibW8iOnJldHVybiBhLm9yZGluYWxOdW1iZXIodCx7dW5pdDoibWludXRlIn0pO2RlZmF1bHQ6cmV0dXJuIFZ0KHIubGVuZ3RoLHQpfX12YWxpZGF0ZSh0LHIpe3JldHVybiByPj0wJiZyPD01OX1zZXQodCxyLGEpe3JldHVybiB0LnNldE1pbnV0ZXMoYSwwLDApLHR9aW5jb21wYXRpYmxlVG9rZW5zPVsidCIsIlQiXX19KTt2YXIgS0ssTTV0PWwoKCk9PntUMSgpO1ByKCk7V3IoKTtLSz1jbGFzcyBleHRlbmRzIHN0e3ByaW9yaXR5PTUwO3BhcnNlKHQscixhKXtzd2l0Y2gocil7Y2FzZSJzIjpyZXR1cm4gZ3Ioa3Iuc2Vjb25kLHQpO2Nhc2Uic28iOnJldHVybiBhLm9yZGluYWxOdW1iZXIodCx7dW5pdDoic2Vjb25kIn0pO2RlZmF1bHQ6cmV0dXJuIFZ0KHIubGVuZ3RoLHQpfX12YWxpZGF0ZSh0LHIpe3JldHVybiByPj0wJiZyPD01OX1zZXQodCxyLGEpe3JldHVybiB0LnNldFNlY29uZHMoYSwwKSx0fWluY29tcGF0aWJsZVRva2Vucz1bInQiLCJUIl19fSk7dmFyIEpLLGs1dD1sKCgpPT57UHIoKTtXcigpO0pLPWNsYXNzIGV4dGVuZHMgc3R7cHJpb3JpdHk9MzA7cGFyc2UodCxyKXtsZXQgYT1pPT5NYXRoLnRydW5jKGkqTWF0aC5wb3coMTAsLXIubGVuZ3RoKzMpKTtyZXR1cm4gdGEoVnQoci5sZW5ndGgsdCksYSl9c2V0KHQscixhKXtyZXR1cm4gdC5zZXRNaWxsaXNlY29uZHMoYSksdH1pbmNvbXBhdGlibGVUb2tlbnM9WyJ0IiwiVCJdfX0pO3ZhciBlSixTNXQ9bCgoKT0+e3p0KCk7Q2woKTtUMSgpO1ByKCk7V3IoKTtlSj1jbGFzcyBleHRlbmRzIHN0e3ByaW9yaXR5PTEwO3BhcnNlKHQscil7c3dpdGNoKHIpe2Nhc2UiWCI6cmV0dXJuIHZuKGJuLmJhc2ljT3B0aW9uYWxNaW51dGVzLHQpO2Nhc2UiWFgiOnJldHVybiB2bihibi5iYXNpYyx0KTtjYXNlIlhYWFgiOnJldHVybiB2bihibi5iYXNpY09wdGlvbmFsU2Vjb25kcyx0KTtjYXNlIlhYWFhYIjpyZXR1cm4gdm4oYm4uZXh0ZW5kZWRPcHRpb25hbFNlY29uZHMsdCk7ZGVmYXVsdDpyZXR1cm4gdm4oYm4uZXh0ZW5kZWQsdCl9fXNldCh0LHIsYSl7cmV0dXJuIHIudGltZXN0YW1wSXNTZXQ/dDpSZSh0LHQuZ2V0VGltZSgpLVJhKHQpLWEpfWluY29tcGF0aWJsZVRva2Vucz1bInQiLCJUIiwieCJdfX0pO3ZhciB0Six6NXQ9bCgoKT0+e3p0KCk7Q2woKTtUMSgpO1ByKCk7V3IoKTt0Sj1jbGFzcyBleHRlbmRzIHN0e3ByaW9yaXR5PTEwO3BhcnNlKHQscil7c3dpdGNoKHIpe2Nhc2UieCI6cmV0dXJuIHZuKGJuLmJhc2ljT3B0aW9uYWxNaW51dGVzLHQpO2Nhc2UieHgiOnJldHVybiB2bihibi5iYXNpYyx0KTtjYXNlInh4eHgiOnJldHVybiB2bihibi5iYXNpY09wdGlvbmFsU2Vjb25kcyx0KTtjYXNlInh4eHh4IjpyZXR1cm4gdm4oYm4uZXh0ZW5kZWRPcHRpb25hbFNlY29uZHMsdCk7ZGVmYXVsdDpyZXR1cm4gdm4oYm4uZXh0ZW5kZWQsdCl9fXNldCh0LHIsYSl7cmV0dXJuIHIudGltZXN0YW1wSXNTZXQ/dDpSZSh0LHQuZ2V0VGltZSgpLVJhKHQpLWEpfWluY29tcGF0aWJsZVRva2Vucz1bInQiLCJUIiwiWCJdfX0pO3ZhciBySixDNXQ9bCgoKT0+e3p0KCk7UHIoKTtXcigpO3JKPWNsYXNzIGV4dGVuZHMgc3R7cHJpb3JpdHk9NDA7cGFyc2UodCl7cmV0dXJuIE1LKHQpfXNldCh0LHIsYSl7cmV0dXJuW1JlKHQsYSoxZTMpLHt0aW1lc3RhbXBJc1NldDohMH1dfWluY29tcGF0aWJsZVRva2Vucz0iKiJ9fSk7dmFyIGFKLF81dD1sKCgpPT57enQoKTtQcigpO1dyKCk7YUo9Y2xhc3MgZXh0ZW5kcyBzdHtwcmlvcml0eT0yMDtwYXJzZSh0KXtyZXR1cm4gTUsodCl9c2V0KHQscixhKXtyZXR1cm5bUmUodCxhKSx7dGltZXN0YW1wSXNTZXQ6ITB9XX1pbmNvbXBhdGlibGVUb2tlbnM9IioifX0pO3ZhciBpSixUNXQ9bCgoKT0+e1FmdCgpO0tmdCgpO0pmdCgpO2U1dCgpO3Q1dCgpO3I1dCgpO2E1dCgpO2k1dCgpO281dCgpO241dCgpO3M1dCgpO2w1dCgpO2M1dCgpO2Q1dCgpO3U1dCgpO2Y1dCgpO3A1dCgpO2g1dCgpO201dCgpO2c1dCgpO3g1dCgpO2I1dCgpO3Y1dCgpO3k1dCgpO3c1dCgpO001dCgpO2s1dCgpO1M1dCgpO3o1dCgpO0M1dCgpO181dCgpO2lKPXtHOm5ldyB3Syx5Om5ldyB6SyxZOm5ldyBDSyxSOm5ldyBfSyx1Om5ldyBUSyxROm5ldyBMSyxxOm5ldyBESyxNOm5ldyBBSyxMOm5ldyBFSyx3Om5ldyBQSyxJOm5ldyBOSyxkOm5ldyBGSyxEOm5ldyBPSyxFOm5ldyBSSyxlOm5ldyBCSyxjOm5ldyBISyxpOm5ldyBqSyxhOm5ldyBWSyxiOm5ldyBVSyxCOm5ldyBXSyxoOm5ldyBHSyxIOm5ldyBZSyxLOm5ldyBaSyxrOm5ldyBYSyxtOm5ldyBRSyxzOm5ldyBLSyxTOm5ldyBKSyxYOm5ldyBlSix4Om5ldyB0Six0Om5ldyBySixUOm5ldyBhSn19KTtmdW5jdGlvbiBvSihlLHQscixhKXtsZXQgaT0oKT0+UmUoYT8uaW58fHIsTmFOKSxvPWhLKCksbj1hPy5sb2NhbGU/P28ubG9jYWxlPz9UbyxzPWE/LmZpcnN0V2Vla0NvbnRhaW5zRGF0ZT8/YT8ubG9jYWxlPy5vcHRpb25zPy5maXJzdFdlZWtDb250YWluc0RhdGU/P28uZmlyc3RXZWVrQ29udGFpbnNEYXRlPz9vLmxvY2FsZT8ub3B0aW9ucz8uZmlyc3RXZWVrQ29udGFpbnNEYXRlPz8xLGM9YT8ud2Vla1N0YXJ0c09uPz9hPy5sb2NhbGU/Lm9wdGlvbnM/LndlZWtTdGFydHNPbj8/by53ZWVrU3RhcnRzT24/P28ubG9jYWxlPy5vcHRpb25zPy53ZWVrU3RhcnRzT24/PzA7aWYoIXQpcmV0dXJuIGU/aSgpOmhlKHIsYT8uaW4pO2xldCBkPXtmaXJzdFdlZWtDb250YWluc0RhdGU6cyx3ZWVrU3RhcnRzT246Yyxsb2NhbGU6bn0sZj1bbmV3IHlLKGE/LmluLHIpXSx1PXQubWF0Y2goY1dyKS5tYXAoZz0+e2xldCB2PWdbMF07aWYodiBpbiBrMCl7bGV0IHc9azBbdl07cmV0dXJuIHcoZyxuLmZvcm1hdExvbmcpfXJldHVybiBnfSkuam9pbigiIikubWF0Y2gobFdyKSxwPVtdO2ZvcihsZXQgZyBvZiB1KXshYT8udXNlQWRkaXRpb25hbFdlZWtZZWFyVG9rZW5zJiZsSyhnKSYmc3goZyx0LGUpLCFhPy51c2VBZGRpdGlvbmFsRGF5T2ZZZWFyVG9rZW5zJiZzSyhnKSYmc3goZyx0LGUpO2xldCB2PWdbMF0sdz1pSlt2XTtpZih3KXtsZXR7aW5jb21wYXRpYmxlVG9rZW5zOk19PXc7aWYoQXJyYXkuaXNBcnJheShNKSl7bGV0IEM9cC5maW5kKGs9Pk0uaW5jbHVkZXMoay50b2tlbil8fGsudG9rZW49PT12KTtpZihDKXRocm93IG5ldyBSYW5nZUVycm9yKGBUaGUgZm9ybWF0IHN0cmluZyBtdXN0bid0IGNvbnRhaW4gXGAke0MuZnVsbFRva2VufVxgIGFuZCBcYCR7Z31cYCBhdCB0aGUgc2FtZSB0aW1lYCl9ZWxzZSBpZih3LmluY29tcGF0aWJsZVRva2Vucz09PSIqIiYmcC5sZW5ndGg+MCl0aHJvdyBuZXcgUmFuZ2VFcnJvcihgVGhlIGZvcm1hdCBzdHJpbmcgbXVzdG4ndCBjb250YWluIFxgJHtnfVxgIGFuZCBhbnkgb3RoZXIgdG9rZW4gYXQgdGhlIHNhbWUgdGltZWApO3AucHVzaCh7dG9rZW46dixmdWxsVG9rZW46Z30pO2xldCBGPXcucnVuKGUsZyxuLm1hdGNoLGQpO2lmKCFGKXJldHVybiBpKCk7Zi5wdXNoKEYuc2V0dGVyKSxlPUYucmVzdH1lbHNle2lmKHYubWF0Y2gocFdyKSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiRm9ybWF0IHN0cmluZyBjb250YWlucyBhbiB1bmVzY2FwZWQgbGF0aW4gYWxwaGFiZXQgY2hhcmFjdGVyIGAiK3YrImAiKTtpZihnPT09IicnIj9nPSInIjp2PT09IiciJiYoZz1oV3IoZykpLGUuaW5kZXhPZihnKT09PTApZT1lLnNsaWNlKGcubGVuZ3RoKTtlbHNlIHJldHVybiBpKCl9fWlmKGUubGVuZ3RoPjAmJmZXci50ZXN0KGUpKXJldHVybiBpKCk7bGV0IGg9Zi5tYXAoZz0+Zy5wcmlvcml0eSkuc29ydCgoZyx2KT0+di1nKS5maWx0ZXIoKGcsdix3KT0+dy5pbmRleE9mKGcpPT09dikubWFwKGc9PmYuZmlsdGVyKHY9PnYucHJpb3JpdHk9PT1nKS5zb3J0KCh2LHcpPT53LnN1YlByaW9yaXR5LXYuc3ViUHJpb3JpdHkpKS5tYXAoZz0+Z1swXSksYj1oZShyLGE/LmluKTtpZihpc05hTigrYikpcmV0dXJuIGkoKTtsZXQgeD17fTtmb3IobGV0IGcgb2YgaCl7aWYoIWcudmFsaWRhdGUoYixkKSlyZXR1cm4gaSgpO2xldCB2PWcuc2V0KGIseCxkKTtBcnJheS5pc0FycmF5KHYpPyhiPXZbMF0sT2JqZWN0LmFzc2lnbih4LHZbMV0pKTpiPXZ9cmV0dXJuIGJ9ZnVuY3Rpb24gaFdyKGUpe3JldHVybiBlLm1hdGNoKGRXcilbMV0ucmVwbGFjZSh1V3IsIiciKX12YXIgbFdyLGNXcixkV3IsdVdyLGZXcixwV3IsTVhhLElkZT1sKCgpPT57WDMoKTt2ZGUoKTt5ZGUoKTt6dCgpO19kZSgpO2plKCk7QWRlKCk7VDV0KCk7bFdyPS9beVlRcU1Md0lkRGVjaWhIS2ttc11vfChcdylcMSp8Jyd8JygnJ3xbXiddKSsoJ3wkKXwuL2csY1dyPS9QK3ArfFArfHArfCcnfCcoJyd8W14nXSkrKCd8JCl8Li9nLGRXcj0vXicoW15dKj8pJz8kLyx1V3I9LycnL2csZldyPS9cUy8scFdyPS9bYS16QS1aXS87TVhhPW9KfSk7ZnVuY3Rpb24gTDV0KGUsdCxyKXtyZXR1cm4gZDEob0ooZSx0LG5ldyBEYXRlLHIpKX12YXIgQ1hhLEQ1dD1sKCgpPT57VGwoKTtJZGUoKTtDWGE9TDV0fSk7ZnVuY3Rpb24gQTV0KGUsdCl7cmV0dXJuIGhlKGUsdD8uaW4pLmdldERheSgpPT09MX12YXIgTFhhLEU1dD1sKCgpPT57amUoKTtMWGE9QTV0fSk7ZnVuY3Rpb24gJDV0KGUpe3JldHVybitoZShlKTxEYXRlLm5vdygpfXZhciBFWGEsUDV0PWwoKCk9PntqZSgpO0VYYT0kNXR9KTtmdW5jdGlvbiB1eChlLHQpe2xldCByPWhlKGUsdD8uaW4pO3JldHVybiByLnNldE1pbnV0ZXMoMCwwLDApLHJ9dmFyIElYYSxOZGU9bCgoKT0+e2plKCk7SVhhPXV4fSk7ZnVuY3Rpb24gbkooZSx0LHIpe2xldFthLGldPXd0KHI/LmluLGUsdCk7cmV0dXJuK3V4KGEpPT0rdXgoaSl9dmFyIFJYYSxGZGU9bCgoKT0+e2VhKCk7TmRlKCk7UlhhPW5KfSk7ZnVuY3Rpb24gSGgoZSx0LHIpe2xldFthLGldPXd0KHI/LmluLGUsdCk7cmV0dXJuK2xhKGEscik9PStsYShpLHIpfXZhciBqWGEsc0o9bCgoKT0+e2VhKCk7YXMoKTtqWGE9SGh9KTtmdW5jdGlvbiBsSihlLHQscil7cmV0dXJuIEhoKGUsdCx7Li4ucix3ZWVrU3RhcnRzT246MX0pfXZhciBXWGEsT2RlPWwoKCk9PntzSigpO1dYYT1sSn0pO2Z1bmN0aW9uIEk1dChlLHQscil7bGV0W2EsaV09d3Qocj8uaW4sZSx0KTtyZXR1cm4ram8oYSk9PStqbyhpKX12YXIgWFhhLE41dD1sKCgpPT57a2goKTtlYSgpO1hYYT1JNXR9KTtmdW5jdGlvbiBmeChlLHQpe2xldCByPWhlKGUsdD8uaW4pO3JldHVybiByLnNldFNlY29uZHMoMCwwKSxyfXZhciBKWGEsUmRlPWwoKCk9PntqZSgpO0pYYT1meH0pO2Z1bmN0aW9uIGNKKGUsdCl7cmV0dXJuK2Z4KGUpPT0rZngodCl9dmFyIHJRYSxCZGU9bCgoKT0+e1JkZSgpO3JRYT1jSn0pO2Z1bmN0aW9uIGRKKGUsdCxyKXtsZXRbYSxpXT13dChyPy5pbixlLHQpO3JldHVybiBhLmdldEZ1bGxZZWFyKCk9PT1pLmdldEZ1bGxZZWFyKCkmJmEuZ2V0TW9udGgoKT09PWkuZ2V0TW9udGgoKX12YXIgb1FhLEhkZT1sKCgpPT57ZWEoKTtvUWE9ZEp9KTtmdW5jdGlvbiB1SihlLHQscil7bGV0W2EsaV09d3Qocj8uaW4sZSx0KTtyZXR1cm4rcDIoYSk9PStwMihpKX12YXIgY1FhLHFkZT1sKCgpPT57ZWEoKTtRUSgpO2NRYT11Sn0pO2Z1bmN0aW9uIHB4KGUsdCl7bGV0IHI9aGUoZSx0Py5pbik7cmV0dXJuIHIuc2V0TWlsbGlzZWNvbmRzKDApLHJ9dmFyIGZRYSxqZGU9bCgoKT0+e2plKCk7ZlFhPXB4fSk7ZnVuY3Rpb24gZkooZSx0KXtyZXR1cm4rcHgoZSk9PStweCh0KX12YXIgbVFhLFZkZT1sKCgpPT57amRlKCk7bVFhPWZKfSk7ZnVuY3Rpb24gcEooZSx0LHIpe2xldFthLGldPXd0KHI/LmluLGUsdCk7cmV0dXJuIGEuZ2V0RnVsbFllYXIoKT09PWkuZ2V0RnVsbFllYXIoKX12YXIgYlFhLFVkZT1sKCgpPT57ZWEoKTtiUWE9cEp9KTtmdW5jdGlvbiBGNXQoZSx0KXtyZXR1cm4gbkooaGUoZSx0Py5pbiksaXIodD8uaW58fGUpKX12YXIga1FhLE81dD1sKCgpPT57emkoKTtGZGUoKTtqZSgpO2tRYT1GNXR9KTtmdW5jdGlvbiBSNXQoZSx0KXtyZXR1cm4gbEooUmUodD8uaW58fGUsZSksaXIodD8uaW58fGUpKX12YXIgVFFhLEI1dD1sKCgpPT57enQoKTt6aSgpO09kZSgpO1RRYT1SNXR9KTtmdW5jdGlvbiBINXQoZSl7cmV0dXJuIGNKKGUsaXIoZSkpfXZhciBFUWEscTV0PWwoKCk9Pnt6aSgpO0JkZSgpO0VRYT1INXR9KTtmdW5jdGlvbiBqNXQoZSx0KXtyZXR1cm4gZEooUmUodD8uaW58fGUsZSksaXIodD8uaW58fGUpKX12YXIgRlFhLFY1dD1sKCgpPT57enQoKTt6aSgpO0hkZSgpO0ZRYT1qNXR9KTtmdW5jdGlvbiBVNXQoZSx0KXtyZXR1cm4gdUooUmUodD8uaW58fGUsZSksaXIodD8uaW58fGUpKX12YXIgcVFhLFc1dD1sKCgpPT57enQoKTt6aSgpO3FkZSgpO3FRYT1VNXR9KTtmdW5jdGlvbiBHNXQoZSl7cmV0dXJuIGZKKGUsaXIoZSkpfXZhciBXUWEsWTV0PWwoKCk9Pnt6aSgpO1ZkZSgpO1dRYT1HNXR9KTtmdW5jdGlvbiBaNXQoZSx0KXtyZXR1cm4gSGgoUmUodD8uaW58fGUsZSksaXIodD8uaW58fGUpLHQpfXZhciBRUWEsWDV0PWwoKCk9Pnt6dCgpO3ppKCk7c0ooKTtRUWE9WjV0fSk7ZnVuY3Rpb24gUTV0KGUsdCl7cmV0dXJuIHBKKFJlKHQ/LmlufHxlLGUpLGlyKHQ/LmlufHxlKSl9dmFyIHJLYSxLNXQ9bCgoKT0+e3p0KCk7emkoKTtVZGUoKTtyS2E9UTV0fSk7ZnVuY3Rpb24gSjV0KGUsdCl7cmV0dXJuIGhlKGUsdD8uaW4pLmdldERheSgpPT09NH12YXIgb0thLGVwdD1sKCgpPT57amUoKTtvS2E9SjV0fSk7ZnVuY3Rpb24gdHB0KGUsdCl7cmV0dXJuIGQyKFJlKHQ/LmlufHxlLGUpLGlyKHQ/LmlufHxlKSl9dmFyIGRLYSxycHQ9bCgoKT0+e3p0KCk7emkoKTtDaCgpO2RLYT10cHR9KTtmdW5jdGlvbiBhcHQoZSx0KXtyZXR1cm4gZDIoZSxTaShpcih0Py5pbnx8ZSksMSksdCl9dmFyIG1LYSxpcHQ9bCgoKT0+e28yKCk7emkoKTtDaCgpO21LYT1hcHR9KTtmdW5jdGlvbiBvcHQoZSx0KXtyZXR1cm4gaGUoZSx0Py5pbikuZ2V0RGF5KCk9PT0yfXZhciBiS2EsbnB0PWwoKCk9PntqZSgpO2JLYT1vcHR9KTtmdW5jdGlvbiBzcHQoZSx0KXtyZXR1cm4gaGUoZSx0Py5pbikuZ2V0RGF5KCk9PT0zfXZhciB3S2EsbHB0PWwoKCk9PntqZSgpO3dLYT1zcHR9KTtmdW5jdGlvbiBjcHQoZSx0LHIpe2xldCBhPStoZShlLHI/LmluKSxbaSxvXT1bK2hlKHQuc3RhcnQscj8uaW4pLCtoZSh0LmVuZCxyPy5pbildLnNvcnQoKG4scyk9Pm4tcyk7cmV0dXJuIGE+PWkmJmE8PW99dmFyIFNLYSxkcHQ9bCgoKT0+e2plKCk7U0thPWNwdH0pO2Z1bmN0aW9uIEMwKGUsdCxyKXtyZXR1cm4gU2koZSwtdCxyKX12YXIgX0thLGh4PWwoKCk9PntvMigpO19LYT1DMH0pO2Z1bmN0aW9uIHVwdChlLHQpe3JldHVybiBkMihSZSh0Py5pbnx8ZSxlKSxDMChpcih0Py5pbnx8ZSksMSkpfXZhciAkS2EsZnB0PWwoKCk9Pnt6dCgpO3ppKCk7Q2goKTtoeCgpOyRLYT11cHR9KTtmdW5jdGlvbiBwcHQoZSx0KXtsZXQgcj1oZShlLHQ/LmluKSxhPXIuZ2V0RnVsbFllYXIoKSxpPTkrTWF0aC5mbG9vcihhLzEwKSoxMDtyZXR1cm4gci5zZXRGdWxsWWVhcihpKzEsMCwwKSxyLnNldEhvdXJzKDAsMCwwLDApLGhlKHIsdD8uaW4pfXZhciBOS2EsaHB0PWwoKCk9PntqZSgpO05LYT1wcHR9KTtmdW5jdGlvbiBoSihlLHQpe2xldCByPVVyKCksYT10Py53ZWVrU3RhcnRzT24/P3Q/LmxvY2FsZT8ub3B0aW9ucz8ud2Vla1N0YXJ0c09uPz9yLndlZWtTdGFydHNPbj8/ci5sb2NhbGU/Lm9wdGlvbnM/LndlZWtTdGFydHNPbj8/MCxpPWhlKGUsdD8uaW4pLG89aS5nZXREYXkoKSxuPShvPGE/LTc6MCkrNi0oby1hKTtyZXR1cm4gaS5zZXRIb3VycygwLDAsMCwwKSxpLnNldERhdGUoaS5nZXREYXRlKCkrbiksaX12YXIgQkthLFdkZT1sKCgpPT57ejEoKTtqZSgpO0JLYT1oSn0pO2Z1bmN0aW9uIG1wdChlLHQpe3JldHVybiBoSihlLHsuLi50LHdlZWtTdGFydHNPbjoxfSl9dmFyIGpLYSxncHQ9bCgoKT0+e1dkZSgpO2pLYT1tcHR9KTtmdW5jdGlvbiB4cHQoZSx0KXtsZXQgcj1ybyhlLHQpLGE9UmUodD8uaW58fGUsMCk7YS5zZXRGdWxsWWVhcihyKzEsMCw0KSxhLnNldEhvdXJzKDAsMCwwLDApO2xldCBpPWNpKGEsdCk7cmV0dXJuIGkuc2V0RGF0ZShpLmdldERhdGUoKS0xKSxpfXZhciBZS2EsYnB0PWwoKCk9Pnt6dCgpO3gwKCk7bDIoKTtZS2E9eHB0fSk7ZnVuY3Rpb24gdnB0KGUsdCl7bGV0IHI9aGUoZSx0Py5pbiksYT1yLmdldE1vbnRoKCksaT1hLWElMyszO3JldHVybiByLnNldE1vbnRoKGksMCksci5zZXRIb3VycygwLDAsMCwwKSxyfXZhciBRS2EseXB0PWwoKCk9PntqZSgpO1FLYT12cHR9KTtmdW5jdGlvbiB3cHQoZSx0KXtsZXQgcj1oZShlLHQ/LmluKSxhPXIuZ2V0RnVsbFllYXIoKTtyZXR1cm4gci5zZXRGdWxsWWVhcihhKzEsMCwwKSxyLnNldEhvdXJzKDAsMCwwLDApLHJ9dmFyIGVKYSxNcHQ9bCgoKT0+e2plKCk7ZUphPXdwdH0pO2Z1bmN0aW9uIGtwdChlLHQpe2xldCByPWhlKGUpO2lmKCFkMShyKSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiSW52YWxpZCB0aW1lIHZhbHVlIik7bGV0IGE9dC5tYXRjaChtV3IpO3JldHVybiBhP2EubWFwKG89PntpZihvPT09IicnIilyZXR1cm4iJyI7bGV0IG49b1swXTtpZihuPT09IiciKXJldHVybiB2V3Iobyk7bGV0IHM9Vm9bbl07aWYocylyZXR1cm4gcyhyLG8pO2lmKG4ubWF0Y2goYldyKSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiRm9ybWF0IHN0cmluZyBjb250YWlucyBhbiB1bmVzY2FwZWQgbGF0aW4gYWxwaGFiZXQgY2hhcmFjdGVyIGAiK24rImAiKTtyZXR1cm4gb30pLmpvaW4oIiIpOiIifWZ1bmN0aW9uIHZXcihlKXtsZXQgdD1lLm1hdGNoKGdXcik7cmV0dXJuIHQ/dFsxXS5yZXBsYWNlKHhXciwiJyIpOmV9dmFyIG1XcixnV3IseFdyLGJXcixvSmEsU3B0PWwoKCk9PntiZGUoKTtUbCgpO2plKCk7bVdyPS8oXHcpXDEqfCcnfCcoJyd8W14nXSkrKCd8JCl8Li9nLGdXcj0vXicoW15dKj8pJz8kLyx4V3I9LycnL2csYldyPS9bYS16QS1aXS87b0phPWtwdH0pO2Z1bmN0aW9uIHpwdCh7eWVhcnM6ZSxtb250aHM6dCx3ZWVrczpyLGRheXM6YSxob3VyczppLG1pbnV0ZXM6byxzZWNvbmRzOm59KXtsZXQgcz0wO2UmJihzKz1lKjM2NS4yNDI1KSx0JiYocys9dCooMzY1LjI0MjUvMTIpKSxyJiYocys9cio3KSxhJiYocys9YSk7bGV0IGM9cyoyNCo2MCo2MDtyZXR1cm4gaSYmKGMrPWkqNjAqNjApLG8mJihjKz1vKjYwKSxuJiYoYys9biksTWF0aC50cnVuYyhjKjFlMyl9dmFyIGxKYSxDcHQ9bCgoKT0+e1h0KCk7bEphPXpwdH0pO2Z1bmN0aW9uIF9wdChlKXtsZXQgdD1lL3FvO3JldHVybiBNYXRoLnRydW5jKHQpfXZhciB1SmEsVHB0PWwoKCk9PntYdCgpO3VKYT1fcHR9KTtmdW5jdGlvbiBMcHQoZSl7bGV0IHQ9ZS9TMTtyZXR1cm4gTWF0aC50cnVuYyh0KX12YXIgaEphLERwdD1sKCgpPT57WHQoKTtoSmE9THB0fSk7ZnVuY3Rpb24gQXB0KGUpe2xldCB0PWUvdmg7cmV0dXJuIE1hdGgudHJ1bmModCl9dmFyIHhKYSxFcHQ9bCgoKT0+e1h0KCk7eEphPUFwdH0pO2Z1bmN0aW9uICRwdChlKXtsZXQgdD1lL3ZRO3JldHVybiBNYXRoLnRydW5jKHQpfXZhciB5SmEsUHB0PWwoKCk9PntYdCgpO3lKYT0kcHR9KTtmdW5jdGlvbiBJcHQoZSl7cmV0dXJuIE1hdGgudHJ1bmMoZSpTMSl9dmFyIGtKYSxOcHQ9bCgoKT0+e1h0KCk7a0phPUlwdH0pO2Z1bmN0aW9uIEZwdChlKXtyZXR1cm4gTWF0aC50cnVuYyhlKndoKX12YXIgQ0phLE9wdD1sKCgpPT57WHQoKTtDSmE9RnB0fSk7ZnVuY3Rpb24gUnB0KGUpe2xldCB0PWUveVE7cmV0dXJuIE1hdGgudHJ1bmModCl9dmFyIExKYSxCcHQ9bCgoKT0+e1h0KCk7TEphPVJwdH0pO2Z1bmN0aW9uIEhwdChlKXtsZXQgdD1lL3dRO3JldHVybiBNYXRoLnRydW5jKHQpfXZhciBFSmEscXB0PWwoKCk9PntYdCgpO0VKYT1IcHR9KTtmdW5jdGlvbiBMMShlLHQscil7bGV0IGE9dC1TMChlLHIpO3JldHVybiBhPD0wJiYoYSs9NyksU2koZSxhLHIpfXZhciBOSmEsRGw9bCgoKT0+e28yKCk7Y3goKTtOSmE9TDF9KTtmdW5jdGlvbiBqcHQoZSx0KXtyZXR1cm4gTDEoZSw1LHQpfXZhciBSSmEsVnB0PWwoKCk9PntEbCgpO1JKYT1qcHR9KTtmdW5jdGlvbiBVcHQoZSx0KXtyZXR1cm4gTDEoZSwxLHQpfXZhciBxSmEsV3B0PWwoKCk9PntEbCgpO3FKYT1VcHR9KTtmdW5jdGlvbiBHcHQoZSx0KXtyZXR1cm4gTDEoZSw2LHQpfXZhciBVSmEsWXB0PWwoKCk9PntEbCgpO1VKYT1HcHR9KTtmdW5jdGlvbiBacHQoZSx0KXtyZXR1cm4gTDEoZSwwLHQpfXZhciBZSmEsWHB0PWwoKCk9PntEbCgpO1lKYT1acHR9KTtmdW5jdGlvbiBRcHQoZSx0KXtyZXR1cm4gTDEoZSw0LHQpfXZhciBRSmEsS3B0PWwoKCk9PntEbCgpO1FKYT1RcHR9KTtmdW5jdGlvbiBKcHQoZSx0KXtyZXR1cm4gTDEoZSwyLHQpfXZhciBlZWksZTh0PWwoKCk9PntEbCgpO2VlaT1KcHR9KTtmdW5jdGlvbiB0OHQoZSx0KXtyZXR1cm4gTDEoZSwzLHQpfXZhciBhZWkscjh0PWwoKCk9PntEbCgpO2FlaT10OHR9KTtmdW5jdGlvbiBpOHQoZSx0KXtsZXQgcj0oKT0+UmUodD8uaW4sTmFOKSxhPXQ/LmFkZGl0aW9uYWxEaWdpdHM/PzIsaT1rV3IoZSksbztpZihpLmRhdGUpe2xldCBkPVNXcihpLmRhdGUsYSk7bz16V3IoZC5yZXN0RGF0ZVN0cmluZyxkLnllYXIpfWlmKCFvfHxpc05hTigrbykpcmV0dXJuIHIoKTtsZXQgbj0rbyxzPTAsYztpZihpLnRpbWUmJihzPUNXcihpLnRpbWUpLGlzTmFOKHMpKSlyZXR1cm4gcigpO2lmKGkudGltZXpvbmUpe2lmKGM9X1dyKGkudGltZXpvbmUpLGlzTmFOKGMpKXJldHVybiByKCl9ZWxzZXtsZXQgZD1uZXcgRGF0ZShuK3MpLGY9aGUoMCx0Py5pbik7cmV0dXJuIGYuc2V0RnVsbFllYXIoZC5nZXRVVENGdWxsWWVhcigpLGQuZ2V0VVRDTW9udGgoKSxkLmdldFVUQ0RhdGUoKSksZi5zZXRIb3VycyhkLmdldFVUQ0hvdXJzKCksZC5nZXRVVENNaW51dGVzKCksZC5nZXRVVENTZWNvbmRzKCksZC5nZXRVVENNaWxsaXNlY29uZHMoKSksZn1yZXR1cm4gaGUobitzK2MsdD8uaW4pfWZ1bmN0aW9uIGtXcihlKXtsZXQgdD17fSxyPWUuc3BsaXQobUouZGF0ZVRpbWVEZWxpbWl0ZXIpLGE7aWYoci5sZW5ndGg+MilyZXR1cm4gdDtpZigvOi8udGVzdChyWzBdKT9hPXJbMF06KHQuZGF0ZT1yWzBdLGE9clsxXSxtSi50aW1lWm9uZURlbGltaXRlci50ZXN0KHQuZGF0ZSkmJih0LmRhdGU9ZS5zcGxpdChtSi50aW1lWm9uZURlbGltaXRlcilbMF0sYT1lLnN1YnN0cih0LmRhdGUubGVuZ3RoLGUubGVuZ3RoKSkpLGEpe2xldCBpPW1KLnRpbWV6b25lLmV4ZWMoYSk7aT8odC50aW1lPWEucmVwbGFjZShpWzFdLCIiKSx0LnRpbWV6b25lPWlbMV0pOnQudGltZT1hfXJldHVybiB0fWZ1bmN0aW9uIFNXcihlLHQpe2xldCByPW5ldyBSZWdFeHAoIl4oPzooXFxkezR9fFsrLV1cXGR7IisoNCt0KSsifSl8KFxcZHsyfXxbKy1dXFxkeyIrKDIrdCkrIn0pJCkiKSxhPWUubWF0Y2gocik7aWYoIWEpcmV0dXJue3llYXI6TmFOLHJlc3REYXRlU3RyaW5nOiIifTtsZXQgaT1hWzFdP3BhcnNlSW50KGFbMV0pOm51bGwsbz1hWzJdP3BhcnNlSW50KGFbMl0pOm51bGw7cmV0dXJue3llYXI6bz09PW51bGw/aTpvKjEwMCxyZXN0RGF0ZVN0cmluZzplLnNsaWNlKChhWzFdfHxhWzJdKS5sZW5ndGgpfX1mdW5jdGlvbiB6V3IoZSx0KXtpZih0PT09bnVsbClyZXR1cm4gbmV3IERhdGUoTmFOKTtsZXQgcj1lLm1hdGNoKHlXcik7aWYoIXIpcmV0dXJuIG5ldyBEYXRlKE5hTik7bGV0IGE9ISFyWzRdLGk9bXgoclsxXSksbz1teChyWzJdKS0xLG49bXgoclszXSkscz1teChyWzRdKSxjPW14KHJbNV0pLTE7aWYoYSlyZXR1cm4gRVdyKHQscyxjKT9UV3IodCxzLGMpOm5ldyBEYXRlKE5hTik7e2xldCBkPW5ldyBEYXRlKDApO3JldHVybiFEV3IodCxvLG4pfHwhQVdyKHQsaSk/bmV3IERhdGUoTmFOKTooZC5zZXRVVENGdWxsWWVhcih0LG8sTWF0aC5tYXgoaSxuKSksZCl9fWZ1bmN0aW9uIG14KGUpe3JldHVybiBlP3BhcnNlSW50KGUpOjF9ZnVuY3Rpb24gQ1dyKGUpe2xldCB0PWUubWF0Y2god1dyKTtpZighdClyZXR1cm4gTmFOO2xldCByPUdkZSh0WzFdKSxhPUdkZSh0WzJdKSxpPUdkZSh0WzNdKTtyZXR1cm4gJFdyKHIsYSxpKT9yKnFvK2EqUzEraSoxZTM6TmFOfWZ1bmN0aW9uIEdkZShlKXtyZXR1cm4gZSYmcGFyc2VGbG9hdChlLnJlcGxhY2UoIiwiLCIuIikpfHwwfWZ1bmN0aW9uIF9XcihlKXtpZihlPT09IloiKXJldHVybiAwO2xldCB0PWUubWF0Y2goTVdyKTtpZighdClyZXR1cm4gMDtsZXQgcj10WzFdPT09IisiPy0xOjEsYT1wYXJzZUludCh0WzJdKSxpPXRbM10mJnBhcnNlSW50KHRbM10pfHwwO3JldHVybiBQV3IoYSxpKT9yKihhKnFvK2kqUzEpOk5hTn1mdW5jdGlvbiBUV3IoZSx0LHIpe2xldCBhPW5ldyBEYXRlKDApO2Euc2V0VVRDRnVsbFllYXIoZSwwLDQpO2xldCBpPWEuZ2V0VVRDRGF5KCl8fDcsbz0odC0xKSo3K3IrMS1pO3JldHVybiBhLnNldFVUQ0RhdGUoYS5nZXRVVENEYXRlKCkrbyksYX1mdW5jdGlvbiBhOHQoZSl7cmV0dXJuIGUlNDAwPT09MHx8ZSU0PT09MCYmZSUxMDAhPT0wfWZ1bmN0aW9uIERXcihlLHQscil7cmV0dXJuIHQ+PTAmJnQ8PTExJiZyPj0xJiZyPD0oTFdyW3RdfHwoYTh0KGUpPzI5OjI4KSl9ZnVuY3Rpb24gQVdyKGUsdCl7cmV0dXJuIHQ+PTEmJnQ8PShhOHQoZSk/MzY2OjM2NSl9ZnVuY3Rpb24gRVdyKGUsdCxyKXtyZXR1cm4gdD49MSYmdDw9NTMmJnI+PTAmJnI8PTZ9ZnVuY3Rpb24gJFdyKGUsdCxyKXtyZXR1cm4gZT09PTI0P3Q9PT0wJiZyPT09MDpyPj0wJiZyPDYwJiZ0Pj0wJiZ0PDYwJiZlPj0wJiZlPDI1fWZ1bmN0aW9uIFBXcihlLHQpe3JldHVybiB0Pj0wJiZ0PD01OX12YXIgbUoseVdyLHdXcixNV3IsTFdyLGxlaSxvOHQ9bCgoKT0+e1h0KCk7enQoKTtqZSgpO21KPXtkYXRlVGltZURlbGltaXRlcjovW1QgXS8sdGltZVpvbmVEZWxpbWl0ZXI6L1taIF0vaSx0aW1lem9uZTovKFtaKy1dLiopJC99LHlXcj0vXi0/KD86KFxkezN9KXwoXGR7Mn0pKD86LT8oXGR7Mn0pKT98VyhcZHsyfSkoPzotPyhcZHsxfSkpP3wpJC8sd1dyPS9eKFxkezJ9KD86Wy4sXVxkKik/KSg/Ojo/KFxkezJ9KD86Wy4sXVxkKik/KSk/KD86Oj8oXGR7Mn0oPzpbLixdXGQqKT8pKT8kLyxNV3I9L14oWystXSkoXGR7Mn0pKD86Oj8oXGR7Mn0pKT8kLztMV3I9WzMxLG51bGwsMzEsMzAsMzEsMzAsMzEsMzEsMzAsMzEsMzAsMzFdO2xlaT1pOHR9KTtmdW5jdGlvbiBuOHQoZSx0KXtsZXQgcj1lLm1hdGNoKC8oXGR7NH0pLShcZHsyfSktKFxkezJ9KVtUIF0oXGR7Mn0pOihcZHsyfSk6KFxkezJ9KSg/OlwuKFxkezAsN30pKT8oPzpafCguKShcZHsyfSk6PyhcZHsyfSk/KT8vKTtyZXR1cm4gcj9oZShEYXRlLlVUQygrclsxXSwrclsyXS0xLCtyWzNdLCtyWzRdLSgrcls5XXx8MCkqKHJbOF09PSItIj8tMToxKSwrcls1XS0oK3JbMTBdfHwwKSoocls4XT09Ii0iPy0xOjEpLCtyWzZdLCsoKHJbN118fCIwIikrIjAwIikuc3Vic3RyaW5nKDAsMykpLHQ/LmluKTpoZShOYU4sdD8uaW4pfXZhciB1ZWksczh0PWwoKCk9PntqZSgpO3VlaT1uOHR9KTtmdW5jdGlvbiBEMShlLHQscil7bGV0IGE9UzAoZSxyKS10O3JldHVybiBhPD0wJiYoYSs9NyksQzAoZSxhLHIpfXZhciBtZWksQWw9bCgoKT0+e2N4KCk7aHgoKTttZWk9RDF9KTtmdW5jdGlvbiBsOHQoZSx0KXtyZXR1cm4gRDEoZSw1LHQpfXZhciBiZWksYzh0PWwoKCk9PntBbCgpO2JlaT1sOHR9KTtmdW5jdGlvbiBkOHQoZSx0KXtyZXR1cm4gRDEoZSwxLHQpfXZhciB3ZWksdTh0PWwoKCk9PntBbCgpO3dlaT1kOHR9KTtmdW5jdGlvbiBmOHQoZSx0KXtyZXR1cm4gRDEoZSw2LHQpfXZhciBTZWkscDh0PWwoKCk9PntBbCgpO1NlaT1mOHR9KTtmdW5jdGlvbiBoOHQoZSx0KXtyZXR1cm4gRDEoZSwwLHQpfXZhciBfZWksbTh0PWwoKCk9PntBbCgpO19laT1oOHR9KTtmdW5jdGlvbiBnOHQoZSx0KXtyZXR1cm4gRDEoZSw0LHQpfXZhciBEZWkseDh0PWwoKCk9PntBbCgpO0RlaT1nOHR9KTtmdW5jdGlvbiBiOHQoZSx0KXtyZXR1cm4gRDEoZSwyLHQpfXZhciAkZWksdjh0PWwoKCk9PntBbCgpOyRlaT1iOHR9KTtmdW5jdGlvbiB5OHQoZSx0KXtyZXR1cm4gRDEoZSwzLHQpfXZhciBOZWksdzh0PWwoKCk9PntBbCgpO05laT15OHR9KTtmdW5jdGlvbiBNOHQoZSl7cmV0dXJuIE1hdGgudHJ1bmMoZSp5USl9dmFyIFJlaSxrOHQ9bCgoKT0+e1h0KCk7UmVpPU04dH0pO2Z1bmN0aW9uIFM4dChlKXtsZXQgdD1lL01RO3JldHVybiBNYXRoLnRydW5jKHQpfXZhciBxZWksejh0PWwoKCk9PntYdCgpO3FlaT1TOHR9KTtmdW5jdGlvbiBDOHQoZSx0KXtsZXQgcj10Py5uZWFyZXN0VG8/PzE7aWYocjwxfHxyPjEyKXJldHVybiBSZSh0Py5pbnx8ZSxOYU4pO2xldCBhPWhlKGUsdD8uaW4pLGk9YS5nZXRNaW51dGVzKCkvNjAsbz1hLmdldFNlY29uZHMoKS82MC82MCxuPWEuZ2V0TWlsbGlzZWNvbmRzKCkvMWUzLzYwLzYwLHM9YS5nZXRIb3VycygpK2krbytuLGM9dD8ucm91bmRpbmdNZXRob2Q/PyJyb3VuZCIsZj1fMShjKShzL3IpKnI7cmV0dXJuIGEuc2V0SG91cnMoZiwwLDAsMCksYX12YXIgR2VpLF84dD1sKCgpPT57TGwoKTt6dCgpO2plKCk7R2VpPUM4dH0pO2Z1bmN0aW9uIFQ4dChlLHQpe2xldCByPXQ/Lm5lYXJlc3RUbz8/MTtpZihyPDF8fHI+MzApcmV0dXJuIFJlKGUsTmFOKTtsZXQgYT1oZShlLHQ/LmluKSxpPWEuZ2V0U2Vjb25kcygpLzYwLG89YS5nZXRNaWxsaXNlY29uZHMoKS8xZTMvNjAsbj1hLmdldE1pbnV0ZXMoKStpK28scz10Py5yb3VuZGluZ01ldGhvZD8/InJvdW5kIixkPV8xKHMpKG4vcikqcjtyZXR1cm4gYS5zZXRNaW51dGVzKGQsMCwwKSxhfXZhciBLZWksTDh0PWwoKCk9PntMbCgpO3p0KCk7amUoKTtLZWk9VDh0fSk7ZnVuY3Rpb24gRDh0KGUpe2xldCB0PWUvVjM7cmV0dXJuIE1hdGgudHJ1bmModCl9dmFyIHR0aSxBOHQ9bCgoKT0+e1h0KCk7dHRpPUQ4dH0pO2Z1bmN0aW9uIEU4dChlKXtyZXR1cm4gZSp2aH12YXIgaXRpLCQ4dD1sKCgpPT57WHQoKTtpdGk9RTh0fSk7ZnVuY3Rpb24gUDh0KGUpe2xldCB0PWUvd2g7cmV0dXJuIE1hdGgudHJ1bmModCl9dmFyIHN0aSxJOHQ9bCgoKT0+e1h0KCk7c3RpPVA4dH0pO2Z1bmN0aW9uIHFoKGUsdCxyKXtsZXQgYT1oZShlLHI/LmluKSxpPWEuZ2V0RnVsbFllYXIoKSxvPWEuZ2V0RGF0ZSgpLG49UmUocj8uaW58fGUsMCk7bi5zZXRGdWxsWWVhcihpLHQsMTUpLG4uc2V0SG91cnMoMCwwLDAsMCk7bGV0IHM9Zksobik7cmV0dXJuIGEuc2V0TW9udGgodCxNYXRoLm1pbihvLHMpKSxhfXZhciBmdGksZ0o9bCgoKT0+e3p0KCk7emRlKCk7amUoKTtmdGk9cWh9KTtmdW5jdGlvbiBOOHQoZSx0LHIpe2xldCBhPWhlKGUscj8uaW4pO3JldHVybiBpc05hTigrYSk/UmUocj8uaW58fGUsTmFOKToodC55ZWFyIT1udWxsJiZhLnNldEZ1bGxZZWFyKHQueWVhciksdC5tb250aCE9bnVsbCYmKGE9cWgoYSx0Lm1vbnRoKSksdC5kYXRlIT1udWxsJiZhLnNldERhdGUodC5kYXRlKSx0LmhvdXJzIT1udWxsJiZhLnNldEhvdXJzKHQuaG91cnMpLHQubWludXRlcyE9bnVsbCYmYS5zZXRNaW51dGVzKHQubWludXRlcyksdC5zZWNvbmRzIT1udWxsJiZhLnNldFNlY29uZHModC5zZWNvbmRzKSx0Lm1pbGxpc2Vjb25kcyE9bnVsbCYmYS5zZXRNaWxsaXNlY29uZHModC5taWxsaXNlY29uZHMpLGEpfXZhciB4dGksRjh0PWwoKCk9Pnt6dCgpO2dKKCk7amUoKTt4dGk9Tjh0fSk7ZnVuY3Rpb24gTzh0KGUsdCxyKXtsZXQgYT1oZShlLHI/LmluKTtyZXR1cm4gYS5zZXREYXRlKHQpLGF9dmFyIHl0aSxSOHQ9bCgoKT0+e2plKCk7eXRpPU84dH0pO2Z1bmN0aW9uIEI4dChlLHQscil7bGV0IGE9aGUoZSxyPy5pbik7cmV0dXJuIGEuc2V0TW9udGgoMCksYS5zZXREYXRlKHQpLGF9dmFyIGt0aSxIOHQ9bCgoKT0+e2plKCk7a3RpPUI4dH0pO2Z1bmN0aW9uIHE4dChlKXtsZXQgdD17fSxyPVVyKCk7Zm9yKGxldCBhIGluIHIpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHIsYSkmJih0W2FdPXJbYV0pO2ZvcihsZXQgYSBpbiBlKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLGEpJiYoZVthXT09PXZvaWQgMD9kZWxldGUgdFthXTp0W2FdPWVbYV0pO2k2dCh0KX12YXIgQ3RpLGo4dD1sKCgpPT57ejEoKTtDdGk9cTh0fSk7ZnVuY3Rpb24gVjh0KGUsdCxyKXtsZXQgYT1oZShlLHI/LmluKTtyZXR1cm4gYS5zZXRIb3Vycyh0KSxhfXZhciBMdGksVTh0PWwoKCk9PntqZSgpO0x0aT1WOHR9KTtmdW5jdGlvbiBXOHQoZSx0LHIpe2xldCBhPWhlKGUscj8uaW4pO3JldHVybiBhLnNldE1pbGxpc2Vjb25kcyh0KSxhfXZhciBFdGksRzh0PWwoKCk9PntqZSgpO0V0aT1XOHR9KTtmdW5jdGlvbiBZOHQoZSx0LHIpe2xldCBhPWhlKGUscj8uaW4pO3JldHVybiBhLnNldE1pbnV0ZXModCksYX12YXIgSXRpLFo4dD1sKCgpPT57amUoKTtJdGk9WTh0fSk7ZnVuY3Rpb24gWDh0KGUsdCxyKXtsZXQgYT1oZShlLHI/LmluKSxpPU1hdGgudHJ1bmMoYS5nZXRNb250aCgpLzMpKzEsbz10LWk7cmV0dXJuIHFoKGEsYS5nZXRNb250aCgpK28qMyl9dmFyIFJ0aSxROHQ9bCgoKT0+e2dKKCk7amUoKTtSdGk9WDh0fSk7ZnVuY3Rpb24gSzh0KGUsdCxyKXtsZXQgYT1oZShlLHI/LmluKTtyZXR1cm4gYS5zZXRTZWNvbmRzKHQpLGF9dmFyIHF0aSxKOHQ9bCgoKT0+e2plKCk7cXRpPUs4dH0pO2Z1bmN0aW9uIGVodChlLHQscil7bGV0IGE9VXIoKSxpPXI/LmZpcnN0V2Vla0NvbnRhaW5zRGF0ZT8/cj8ubG9jYWxlPy5vcHRpb25zPy5maXJzdFdlZWtDb250YWluc0RhdGU/P2EuZmlyc3RXZWVrQ29udGFpbnNEYXRlPz9hLmxvY2FsZT8ub3B0aW9ucz8uZmlyc3RXZWVrQ29udGFpbnNEYXRlPz8xLG89amkoaGUoZSxyPy5pbiksUTMoZSxyKSxyKSxuPVJlKHI/LmlufHxlLDApO24uc2V0RnVsbFllYXIodCwwLGkpLG4uc2V0SG91cnMoMCwwLDAsMCk7bGV0IHM9UTMobixyKTtyZXR1cm4gcy5zZXREYXRlKHMuZ2V0RGF0ZSgpK28pLHN9dmFyIFp0aSx0aHQ9bCgoKT0+e3oxKCk7enQoKTtfbCgpO29LKCk7amUoKTtadGk9ZWh0fSk7ZnVuY3Rpb24gcmh0KGUsdCxyKXtsZXQgYT1oZShlLHI/LmluKTtyZXR1cm4gaXNOYU4oK2EpP1JlKHI/LmlufHxlLE5hTik6KGEuc2V0RnVsbFllYXIodCksYSl9dmFyIEp0aSxhaHQ9bCgoKT0+e3p0KCk7amUoKTtKdGk9cmh0fSk7ZnVuY3Rpb24gaWh0KGUsdCl7bGV0IHI9aGUoZSx0Py5pbiksYT1yLmdldEZ1bGxZZWFyKCksaT1NYXRoLmZsb29yKGEvMTApKjEwO3JldHVybiByLnNldEZ1bGxZZWFyKGksMCwxKSxyLnNldEhvdXJzKDAsMCwwLDApLHJ9dmFyIHJyaSxvaHQ9bCgoKT0+e2plKCk7cnJpPWlodH0pO2Z1bmN0aW9uIG5odChlKXtyZXR1cm4gYzIoRGF0ZS5ub3coKSxlKX12YXIgb3JpLHNodD1sKCgpPT57SmcoKTtvcmk9bmh0fSk7ZnVuY3Rpb24gbGh0KGUpe2xldCB0PWlyKGU/LmluKSxyPXQuZ2V0RnVsbFllYXIoKSxhPXQuZ2V0TW9udGgoKSxpPXQuZ2V0RGF0ZSgpLG89UmUoZT8uaW4sMCk7cmV0dXJuIG8uc2V0RnVsbFllYXIocixhLGkrMSksby5zZXRIb3VycygwLDAsMCwwKSxvfXZhciBjcmksY2h0PWwoKCk9Pnt6dCgpO3ppKCk7Y3JpPWxodH0pO2Z1bmN0aW9uIGRodChlKXtsZXQgdD1pcihlPy5pbikscj10LmdldEZ1bGxZZWFyKCksYT10LmdldE1vbnRoKCksaT10LmdldERhdGUoKSxvPWlyKGU/LmluKTtyZXR1cm4gby5zZXRGdWxsWWVhcihyLGEsaS0xKSxvLnNldEhvdXJzKDAsMCwwLDApLG99dmFyIGZyaSx1aHQ9bCgoKT0+e3ppKCk7ZnJpPWRodH0pO2Z1bmN0aW9uIHhKKGUsdCxyKXtyZXR1cm4gbjIoZSwtdCxyKX12YXIgbXJpLFlkZT1sKCgpPT57TWgoKTttcmk9eEp9KTtmdW5jdGlvbiBmaHQoZSx0LHIpe2xldHt5ZWFyczphPTAsbW9udGhzOmk9MCx3ZWVrczpvPTAsZGF5czpuPTAsaG91cnM6cz0wLG1pbnV0ZXM6Yz0wLHNlY29uZHM6ZD0wfT10LGY9eEooZSxpK2EqMTIsciksdT1DMChmLG4rbyo3LHIpLHA9YytzKjYwLGI9KGQrcCo2MCkqMWUzO3JldHVybiBSZShyPy5pbnx8ZSwrdS1iKX12YXIgeXJpLHBodD1sKCgpPT57enQoKTtoeCgpO1lkZSgpO3lyaT1maHR9KTtmdW5jdGlvbiBoaHQoZSx0LHIpe3JldHVybiB6UShlLC10LHIpfXZhciBrcmksbWh0PWwoKCk9PntLM2UoKTtrcmk9aGh0fSk7ZnVuY3Rpb24gZ2h0KGUsdCxyKXtyZXR1cm4gQ1EoZSwtdCxyKX12YXIgQ3JpLHhodD1sKCgpPT57SjNlKCk7Q3JpPWdodH0pO2Z1bmN0aW9uIGJodChlLHQscil7cmV0dXJuIGcwKGUsLXQscil9dmFyIExyaSx2aHQ9bCgoKT0+e0tnKCk7THJpPWJodH0pO2Z1bmN0aW9uIHlodChlLHQscil7cmV0dXJuIFNoKGUsLXQscil9dmFyIEVyaSx3aHQ9bCgoKT0+e0xRKCk7RXJpPXlodH0pO2Z1bmN0aW9uIE1odChlLHQscil7cmV0dXJuIHpoKGUsLXQscil9dmFyIElyaSxraHQ9bCgoKT0+e0RRKCk7SXJpPU1odH0pO2Z1bmN0aW9uIFNodChlLHQscil7cmV0dXJuIEFRKGUsLXQscil9dmFyIE9yaSx6aHQ9bCgoKT0+e3JkZSgpO09yaT1TaHR9KTtmdW5jdGlvbiBDaHQoZSx0LHIpe3JldHVybiBiMChlLC10LHIpfXZhciBIcmksX2h0PWwoKCk9PntleCgpO0hyaT1DaHR9KTtmdW5jdGlvbiBUaHQoZSx0LHIpe3JldHVybiBFUShlLC10LHIpfXZhciBWcmksTGh0PWwoKCk9PnthZGUoKTtWcmk9VGh0fSk7ZnVuY3Rpb24gRGh0KGUpe3JldHVybiBNYXRoLnRydW5jKGUqNyl9dmFyIEdyaSxBaHQ9bCgoKT0+e1h0KCk7R3JpPURodH0pO2Z1bmN0aW9uIEVodChlKXtyZXR1cm4gTWF0aC50cnVuYyhlKjM2NS4yNDI1KX12YXIgWHJpLCRodD1sKCgpPT57WHQoKTtYcmk9RWh0fSk7ZnVuY3Rpb24gUGh0KGUpe3JldHVybiBNYXRoLnRydW5jKGUqd1EpfXZhciBKcmksSWh0PWwoKCk9PntYdCgpO0pyaT1QaHR9KTtmdW5jdGlvbiBOaHQoZSl7cmV0dXJuIE1hdGgudHJ1bmMoZSpNUSl9dmFyIHJhaSxGaHQ9bCgoKT0+e1h0KCk7cmFpPU5odH0pO3ZhciBneD17fTtxZShneCx7YWRkOigpPT5tMCxhZGRCdXNpbmVzc0RheXM6KCk9PnpRLGFkZERheXM6KCk9PlNpLGFkZEhvdXJzOigpPT5DUSxhZGRJU09XZWVrWWVhcnM6KCk9PlRRLGFkZE1pbGxpc2Vjb25kczooKT0+ZzAsYWRkTWludXRlczooKT0+U2gsYWRkTW9udGhzOigpPT5uMixhZGRRdWFydGVyczooKT0+emgsYWRkU2Vjb25kczooKT0+QVEsYWRkV2Vla3M6KCk9PmIwLGFkZFllYXJzOigpPT5FUSxhcmVJbnRlcnZhbHNPdmVybGFwcGluZzooKT0+bzZ0LGNsYW1wOigpPT5zNnQsY2xvc2VzdEluZGV4VG86KCk9PklRLGNsb3Nlc3RUbzooKT0+YzZ0LGNvbXBhcmVBc2M6KCk9PkMxLGNvbXBhcmVEZXNjOigpPT51NnQsY29uc3RydWN0RnJvbTooKT0+UmUsY29uc3RydWN0Tm93OigpPT5pcixkYXlzVG9XZWVrczooKT0+cDZ0LGRpZmZlcmVuY2VJbkJ1c2luZXNzRGF5czooKT0+bTZ0LGRpZmZlcmVuY2VJbkNhbGVuZGFyRGF5czooKT0+amksZGlmZmVyZW5jZUluQ2FsZW5kYXJJU09XZWVrWWVhcnM6KCk9PkZRLGRpZmZlcmVuY2VJbkNhbGVuZGFySVNPV2Vla3M6KCk9Png2dCxkaWZmZXJlbmNlSW5DYWxlbmRhck1vbnRoczooKT0+VzMsZGlmZmVyZW5jZUluQ2FsZW5kYXJRdWFydGVyczooKT0+X2gsZGlmZmVyZW5jZUluQ2FsZW5kYXJXZWVrczooKT0+RzMsZGlmZmVyZW5jZUluQ2FsZW5kYXJZZWFyczooKT0+djAsZGlmZmVyZW5jZUluRGF5czooKT0+VGgsZGlmZmVyZW5jZUluSG91cnM6KCk9PlkzLGRpZmZlcmVuY2VJbklTT1dlZWtZZWFyczooKT0+eTZ0LGRpZmZlcmVuY2VJbk1pbGxpc2Vjb25kczooKT0+TGgsZGlmZmVyZW5jZUluTWludXRlczooKT0+WjMsZGlmZmVyZW5jZUluTW9udGhzOigpPT55MCxkaWZmZXJlbmNlSW5RdWFydGVyczooKT0+TTZ0LGRpZmZlcmVuY2VJblNlY29uZHM6KCk9PnUyLGRpZmZlcmVuY2VJbldlZWtzOigpPT5TNnQsZGlmZmVyZW5jZUluWWVhcnM6KCk9PlpRLGVhY2hEYXlPZkludGVydmFsOigpPT5YUSxlYWNoSG91ck9mSW50ZXJ2YWw6KCk9PkM2dCxlYWNoTWludXRlT2ZJbnRlcnZhbDooKT0+VDZ0LGVhY2hNb250aE9mSW50ZXJ2YWw6KCk9PkQ2dCxlYWNoUXVhcnRlck9mSW50ZXJ2YWw6KCk9PkU2dCxlYWNoV2Vla09mSW50ZXJ2YWw6KCk9PlA2dCxlYWNoV2Vla2VuZE9mSW50ZXJ2YWw6KCk9PkVoLGVhY2hXZWVrZW5kT2ZNb250aDooKT0+TjZ0LGVhY2hXZWVrZW5kT2ZZZWFyOigpPT5PNnQsZWFjaFllYXJPZkludGVydmFsOigpPT5CNnQsZW5kT2ZEYXk6KCk9PkRoLGVuZE9mRGVjYWRlOigpPT5xNnQsZW5kT2ZIb3VyOigpPT5WNnQsZW5kT2ZJU09XZWVrOigpPT5XNnQsZW5kT2ZJU09XZWVrWWVhcjooKT0+WTZ0LGVuZE9mTWludXRlOigpPT5YNnQsZW5kT2ZNb250aDooKT0+QWgsZW5kT2ZRdWFydGVyOigpPT5LNnQsZW5kT2ZTZWNvbmQ6KCk9PmV1dCxlbmRPZlRvZGF5OigpPT5ydXQsZW5kT2ZUb21vcnJvdzooKT0+aXV0LGVuZE9mV2VlazooKT0+dEssZW5kT2ZZZWFyOigpPT5KUSxlbmRPZlllc3RlcmRheTooKT0+bnV0LGZvcm1hdDooKT0+bHgsZm9ybWF0RGF0ZTooKT0+bHgsZm9ybWF0RGlzdGFuY2U6KCk9PmNLLGZvcm1hdERpc3RhbmNlU3RyaWN0OigpPT5kSyxmb3JtYXREaXN0YW5jZVRvTm93OigpPT5MdXQsZm9ybWF0RGlzdGFuY2VUb05vd1N0cmljdDooKT0+QXV0LGZvcm1hdER1cmF0aW9uOigpPT4kdXQsZm9ybWF0SVNPOigpPT5JdXQsZm9ybWF0SVNPOTA3NTooKT0+RnV0LGZvcm1hdElTT0R1cmF0aW9uOigpPT5SdXQsZm9ybWF0UkZDMzMzOTooKT0+SHV0LGZvcm1hdFJGQzcyMzE6KCk9Pmp1dCxmb3JtYXRSZWxhdGl2ZTooKT0+VXV0LGZvcm1hdHRlcnM6KCk9Pm54LGZyb21Vbml4VGltZTooKT0+R3V0LGdldERhdGU6KCk9PnVLLGdldERheTooKT0+UzAsZ2V0RGF5T2ZZZWFyOigpPT5hSyxnZXREYXlzSW5Nb250aDooKT0+ZkssZ2V0RGF5c0luWWVhcjooKT0+WnV0LGdldERlY2FkZTooKT0+UXV0LGdldERlZmF1bHRPcHRpb25zOigpPT5oSyxnZXRIb3VyczooKT0+SnV0LGdldElTT0RheTooKT0+bUssZ2V0SVNPV2VlazooKT0+TmgsZ2V0SVNPV2Vla1llYXI6KCk9PnJvLGdldElTT1dlZWtzSW5ZZWFyOigpPT50ZnQsZ2V0TWlsbGlzZWNvbmRzOigpPT5hZnQsZ2V0TWludXRlczooKT0+b2Z0LGdldE1vbnRoOigpPT5zZnQsZ2V0T3ZlcmxhcHBpbmdEYXlzSW5JbnRlcnZhbHM6KCk9PmNmdCxnZXRRdWFydGVyOigpPT50eCxnZXRTZWNvbmRzOigpPT51ZnQsZ2V0VGltZTooKT0+cGZ0LGdldFVuaXhUaW1lOigpPT5tZnQsZ2V0V2VlazooKT0+RmgsZ2V0V2Vla09mTW9udGg6KCk9PnhmdCxnZXRXZWVrWWVhcjooKT0+TTAsZ2V0V2Vla3NJbk1vbnRoOigpPT52ZnQsZ2V0WWVhcjooKT0+d2Z0LGhvdXJzVG9NaWxsaXNlY29uZHM6KCk9PmtmdCxob3Vyc1RvTWludXRlczooKT0+emZ0LGhvdXJzVG9TZWNvbmRzOigpPT5fZnQsaW50ZXJ2YWw6KCk9PkxmdCxpbnRlcnZhbFRvRHVyYXRpb246KCk9PkFmdCxpbnRsRm9ybWF0OigpPT4kZnQsaW50bEZvcm1hdERpc3RhbmNlOigpPT5JZnQsaXNBZnRlcjooKT0+RmZ0LGlzQmVmb3JlOigpPT5SZnQsaXNEYXRlOigpPT5OUSxpc0VxdWFsOigpPT5IZnQsaXNFeGlzdHM6KCk9PmpmdCxpc0ZpcnN0RGF5T2ZNb250aDooKT0+VWZ0LGlzRnJpZGF5OigpPT5HZnQsaXNGdXR1cmU6KCk9PlpmdCxpc0xhc3REYXlPZk1vbnRoOigpPT5ZUSxpc0xlYXBZZWFyOigpPT5wSyxpc01hdGNoOigpPT5MNXQsaXNNb25kYXk6KCk9PkE1dCxpc1Bhc3Q6KCk9PiQ1dCxpc1NhbWVEYXk6KCk9PmQyLGlzU2FtZUhvdXI6KCk9Pm5KLGlzU2FtZUlTT1dlZWs6KCk9PmxKLGlzU2FtZUlTT1dlZWtZZWFyOigpPT5JNXQsaXNTYW1lTWludXRlOigpPT5jSixpc1NhbWVNb250aDooKT0+ZEosaXNTYW1lUXVhcnRlcjooKT0+dUosaXNTYW1lU2Vjb25kOigpPT5mSixpc1NhbWVXZWVrOigpPT5IaCxpc1NhbWVZZWFyOigpPT5wSixpc1NhdHVyZGF5OigpPT5rUSxpc1N1bmRheTooKT0+U1EsaXNUaGlzSG91cjooKT0+RjV0LGlzVGhpc0lTT1dlZWs6KCk9PlI1dCxpc1RoaXNNaW51dGU6KCk9Pkg1dCxpc1RoaXNNb250aDooKT0+ajV0LGlzVGhpc1F1YXJ0ZXI6KCk9PlU1dCxpc1RoaXNTZWNvbmQ6KCk9Pkc1dCxpc1RoaXNXZWVrOigpPT5aNXQsaXNUaGlzWWVhcjooKT0+UTV0LGlzVGh1cnNkYXk6KCk9Pko1dCxpc1RvZGF5OigpPT50cHQsaXNUb21vcnJvdzooKT0+YXB0LGlzVHVlc2RheTooKT0+b3B0LGlzVmFsaWQ6KCk9PmQxLGlzV2VkbmVzZGF5OigpPT5zcHQsaXNXZWVrZW5kOigpPT5zMixpc1dpdGhpbkludGVydmFsOigpPT5jcHQsaXNZZXN0ZXJkYXk6KCk9PnVwdCxsYXN0RGF5T2ZEZWNhZGU6KCk9PnBwdCxsYXN0RGF5T2ZJU09XZWVrOigpPT5tcHQsbGFzdERheU9mSVNPV2Vla1llYXI6KCk9PnhwdCxsYXN0RGF5T2ZNb250aDooKT0+Z0ssbGFzdERheU9mUXVhcnRlcjooKT0+dnB0LGxhc3REYXlPZldlZWs6KCk9PmhKLGxhc3REYXlPZlllYXI6KCk9PndwdCxsaWdodEZvcm1hdDooKT0+a3B0LGxpZ2h0Rm9ybWF0dGVyczooKT0+Vm8sbG9uZ0Zvcm1hdHRlcnM6KCk9PmswLG1heDooKT0+JFEsbWlsbGlzZWNvbmRzOigpPT56cHQsbWlsbGlzZWNvbmRzVG9Ib3VyczooKT0+X3B0LG1pbGxpc2Vjb25kc1RvTWludXRlczooKT0+THB0LG1pbGxpc2Vjb25kc1RvU2Vjb25kczooKT0+QXB0LG1pbjooKT0+UFEsbWludXRlc1RvSG91cnM6KCk9PiRwdCxtaW51dGVzVG9NaWxsaXNlY29uZHM6KCk9PklwdCxtaW51dGVzVG9TZWNvbmRzOigpPT5GcHQsbW9udGhzVG9RdWFydGVyczooKT0+UnB0LG1vbnRoc1RvWWVhcnM6KCk9PkhwdCxuZXh0RGF5OigpPT5MMSxuZXh0RnJpZGF5OigpPT5qcHQsbmV4dE1vbmRheTooKT0+VXB0LG5leHRTYXR1cmRheTooKT0+R3B0LG5leHRTdW5kYXk6KCk9PlpwdCxuZXh0VGh1cnNkYXk6KCk9PlFwdCxuZXh0VHVlc2RheTooKT0+SnB0LG5leHRXZWRuZXNkYXk6KCk9PnQ4dCxwYXJzZTooKT0+b0oscGFyc2VJU086KCk9Pmk4dCxwYXJzZUpTT046KCk9Pm44dCxwYXJzZXJzOigpPT5pSixwcmV2aW91c0RheTooKT0+RDEscHJldmlvdXNGcmlkYXk6KCk9Pmw4dCxwcmV2aW91c01vbmRheTooKT0+ZDh0LHByZXZpb3VzU2F0dXJkYXk6KCk9PmY4dCxwcmV2aW91c1N1bmRheTooKT0+aDh0LHByZXZpb3VzVGh1cnNkYXk6KCk9Pmc4dCxwcmV2aW91c1R1ZXNkYXk6KCk9PmI4dCxwcmV2aW91c1dlZG5lc2RheTooKT0+eTh0LHF1YXJ0ZXJzVG9Nb250aHM6KCk9Pk04dCxxdWFydGVyc1RvWWVhcnM6KCk9PlM4dCxyb3VuZFRvTmVhcmVzdEhvdXJzOigpPT5DOHQscm91bmRUb05lYXJlc3RNaW51dGVzOigpPT5UOHQsc2Vjb25kc1RvSG91cnM6KCk9PkQ4dCxzZWNvbmRzVG9NaWxsaXNlY29uZHM6KCk9PkU4dCxzZWNvbmRzVG9NaW51dGVzOigpPT5QOHQsc2V0OigpPT5OOHQsc2V0RGF0ZTooKT0+Tzh0LHNldERheTooKT0+ejAsc2V0RGF5T2ZZZWFyOigpPT5COHQsc2V0RGVmYXVsdE9wdGlvbnM6KCk9PnE4dCxzZXRIb3VyczooKT0+Vjh0LHNldElTT0RheTooKT0+cUssc2V0SVNPV2VlazooKT0+SUssc2V0SVNPV2Vla1llYXI6KCk9Pl9RLHNldE1pbGxpc2Vjb25kczooKT0+Vzh0LHNldE1pbnV0ZXM6KCk9Plk4dCxzZXRNb250aDooKT0+cWgsc2V0UXVhcnRlcjooKT0+WDh0LHNldFNlY29uZHM6KCk9Pks4dCxzZXRXZWVrOigpPT4kSyxzZXRXZWVrWWVhcjooKT0+ZWh0LHNldFllYXI6KCk9PnJodCxzdGFydE9mRGF5OigpPT5jMixzdGFydE9mRGVjYWRlOigpPT5paHQsc3RhcnRPZkhvdXI6KCk9PnV4LHN0YXJ0T2ZJU09XZWVrOigpPT5jaSxzdGFydE9mSVNPV2Vla1llYXI6KCk9PmpvLHN0YXJ0T2ZNaW51dGU6KCk9PmZ4LHN0YXJ0T2ZNb250aDooKT0+dzAsc3RhcnRPZlF1YXJ0ZXI6KCk9PnAyLHN0YXJ0T2ZTZWNvbmQ6KCk9PnB4LHN0YXJ0T2ZUb2RheTooKT0+bmh0LHN0YXJ0T2ZUb21vcnJvdzooKT0+bGh0LHN0YXJ0T2ZXZWVrOigpPT5sYSxzdGFydE9mV2Vla1llYXI6KCk9PlEzLHN0YXJ0T2ZZZWFyOigpPT4kaCxzdGFydE9mWWVzdGVyZGF5OigpPT5kaHQsc3ViOigpPT5maHQsc3ViQnVzaW5lc3NEYXlzOigpPT5oaHQsc3ViRGF5czooKT0+QzAsc3ViSG91cnM6KCk9PmdodCxzdWJJU09XZWVrWWVhcnM6KCk9PmpRLHN1Yk1pbGxpc2Vjb25kczooKT0+Ymh0LHN1Yk1pbnV0ZXM6KCk9PnlodCxzdWJNb250aHM6KCk9PnhKLHN1YlF1YXJ0ZXJzOigpPT5NaHQsc3ViU2Vjb25kczooKT0+U2h0LHN1YldlZWtzOigpPT5DaHQsc3ViWWVhcnM6KCk9PlRodCx0b0RhdGU6KCk9PmhlLHRyYW5zcG9zZTooKT0+eEssd2Vla3NUb0RheXM6KCk9PkRodCx5ZWFyc1RvRGF5czooKT0+RWh0LHllYXJzVG9Nb250aHM6KCk9PlBodCx5ZWFyc1RvUXVhcnRlcnM6KCk9Pk5odH0pO3ZhciBPaHQ9bCgoKT0+e1ozZSgpO0szZSgpO28yKCk7SjNlKCk7dGRlKCk7S2coKTtMUSgpO01oKCk7RFEoKTtyZGUoKTtleCgpO2FkZSgpO242dCgpO2w2dCgpO25kZSgpO2Q2dCgpO1UzKCk7ZjZ0KCk7enQoKTt6aSgpO2g2dCgpO2c2dCgpO19sKCk7bGRlKCk7YjZ0KCk7T1EoKTtkZGUoKTtSUSgpO0JRKCk7SFEoKTtxUSgpO3c2dCgpO1ZRKCk7VVEoKTtyeCgpO2s2dCgpO2F4KCk7ejZ0KCk7cGRlKCk7aGRlKCk7XzZ0KCk7TDZ0KCk7QTZ0KCk7JDZ0KCk7STZ0KCk7S1EoKTtGNnQoKTtSNnQoKTtINnQoKTtXUSgpO2o2dCgpO1U2dCgpO0c2dCgpO1o2dCgpO1E2dCgpO0dRKCk7SjZ0KCk7dHV0KCk7YXV0KCk7b3V0KCk7Z2RlKCk7bWRlKCk7c3V0KCk7d2RlKCk7TWRlKCk7a2RlKCk7RHV0KCk7RXV0KCk7UHV0KCk7TnV0KCk7T3V0KCk7QnV0KCk7cXV0KCk7VnV0KCk7V3V0KCk7WXV0KCk7U2RlKCk7Y3goKTt4ZGUoKTt6ZGUoKTtYdXQoKTtLdXQoKTtfZGUoKTtlZnQoKTtUZGUoKTtpSygpO3gwKCk7cmZ0KCk7aWZ0KCk7bmZ0KCk7bGZ0KCk7ZGZ0KCk7Y2RlKCk7ZmZ0KCk7aGZ0KCk7Z2Z0KCk7bksoKTtiZnQoKTtveCgpO3lmdCgpO01mdCgpO1NmdCgpO0NmdCgpO1RmdCgpO0RmdCgpO0VmdCgpO1BmdCgpO05mdCgpO09mdCgpO0JmdCgpO3NkZSgpO3FmdCgpO1ZmdCgpO1dmdCgpO1lmdCgpO1hmdCgpO2ZkZSgpO0NkZSgpO0Q1dCgpO0U1dCgpO1A1dCgpO0NoKCk7RmRlKCk7T2RlKCk7TjV0KCk7QmRlKCk7SGRlKCk7cWRlKCk7VmRlKCk7c0ooKTtVZGUoKTtYM2UoKTtRM2UoKTtPNXQoKTtCNXQoKTtxNXQoKTtWNXQoKTtXNXQoKTtZNXQoKTtYNXQoKTtLNXQoKTtlcHQoKTtycHQoKTtpcHQoKTtucHQoKTtUbCgpO2xwdCgpO1FnKCk7ZHB0KCk7ZnB0KCk7aHB0KCk7Z3B0KCk7YnB0KCk7TGRlKCk7eXB0KCk7V2RlKCk7TXB0KCk7U3B0KCk7aWRlKCk7Q3B0KCk7VHB0KCk7RHB0KCk7RXB0KCk7b2RlKCk7UHB0KCk7TnB0KCk7T3B0KCk7QnB0KCk7cXB0KCk7RGwoKTtWcHQoKTtXcHQoKTtZcHQoKTtYcHQoKTtLcHQoKTtlOHQoKTtyOHQoKTtJZGUoKTtvOHQoKTtzOHQoKTtBbCgpO2M4dCgpO3U4dCgpO3A4dCgpO204dCgpO3g4dCgpO3Y4dCgpO3c4dCgpO2s4dCgpO3o4dCgpO184dCgpO0w4dCgpO0E4dCgpOyQ4dCgpO0k4dCgpO0Y4dCgpO1I4dCgpO2R4KCk7SDh0KCk7ajh0KCk7VTh0KCk7UGRlKCk7JGRlKCk7ZWRlKCk7Rzh0KCk7Wjh0KCk7Z0ooKTtROHQoKTtKOHQoKTtFZGUoKTt0aHQoKTthaHQoKTtKZygpO29odCgpO05kZSgpO2wyKCk7a2goKTtSZGUoKTtpeCgpO1FRKCk7amRlKCk7c2h0KCk7Y2h0KCk7YXMoKTtvSygpO2VLKCk7dWh0KCk7cGh0KCk7bWh0KCk7aHgoKTt4aHQoKTt1ZGUoKTt2aHQoKTt3aHQoKTtZZGUoKTtraHQoKTt6aHQoKTtfaHQoKTtMaHQoKTtqZSgpO0RkZSgpO0FodCgpOyRodCgpO0lodCgpO0ZodCgpfSk7dmFyIFJodD1YZSgoWmRlLFhkZSk9PnsoZnVuY3Rpb24oZSx0KXt0eXBlb2YgWmRlPT0ib2JqZWN0IiYmdHlwZW9mIFhkZTwidSI/WGRlLmV4cG9ydHM9dCgpOnR5cGVvZiBkZWZpbmU9PSJmdW5jdGlvbiImJmRlZmluZS5hbWQ/ZGVmaW5lKHQpOihlPXR5cGVvZiBnbG9iYWxUaGlzPCJ1Ij9nbG9iYWxUaGlzOmV8fHNlbGYpLmRheWpzPXQoKX0pKFpkZSwoZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7dmFyIGU9MWUzLHQ9NmU0LHI9MzZlNSxhPSJtaWxsaXNlY29uZCIsaT0ic2Vjb25kIixvPSJtaW51dGUiLG49ImhvdXIiLHM9ImRheSIsYz0id2VlayIsZD0ibW9udGgiLGY9InF1YXJ0ZXIiLHU9InllYXIiLHA9ImRhdGUiLGg9IkludmFsaWQgRGF0ZSIsYj0vXihcZHs0fSlbLS9dPyhcZHsxLDJ9KT9bLS9dPyhcZHswLDJ9KVtUdFxzXSooXGR7MSwyfSk/Oj8oXGR7MSwyfSk/Oj8oXGR7MSwyfSk/Wy46XT8oXGQrKT8kLyx4PS9cWyhbXlxdXSspXXxZezEsNH18TXsxLDR9fER7MSwyfXxkezEsNH18SHsxLDJ9fGh7MSwyfXxhfEF8bXsxLDJ9fHN7MSwyfXxaezEsMn18U1NTL2csZz17bmFtZToiZW4iLHdlZWtkYXlzOiJTdW5kYXlfTW9uZGF5X1R1ZXNkYXlfV2VkbmVzZGF5X1RodXJzZGF5X0ZyaWRheV9TYXR1cmRheSIuc3BsaXQoIl8iKSxtb250aHM6IkphbnVhcnlfRmVicnVhcnlfTWFyY2hfQXByaWxfTWF5X0p1bmVfSnVseV9BdWd1c3RfU2VwdGVtYmVyX09jdG9iZXJfTm92ZW1iZXJfRGVjZW1iZXIiLnNwbGl0KCJfIiksb3JkaW5hbDpmdW5jdGlvbih5KXt2YXIgRT1bInRoIiwic3QiLCJuZCIsInJkIl0sXz15JTEwMDtyZXR1cm4iWyIreSsoRVsoXy0yMCklMTBdfHxFW19dfHxFWzBdKSsiXSJ9fSx2PWZ1bmN0aW9uKHksRSxfKXt2YXIgUD1TdHJpbmcoeSk7cmV0dXJuIVB8fFAubGVuZ3RoPj1FP3k6IiIrQXJyYXkoRSsxLVAubGVuZ3RoKS5qb2luKF8pK3l9LHc9e3M6dix6OmZ1bmN0aW9uKHkpe3ZhciBFPS15LnV0Y09mZnNldCgpLF89TWF0aC5hYnMoRSksUD1NYXRoLmZsb29yKF8vNjApLFY9XyU2MDtyZXR1cm4oRTw9MD8iKyI6Ii0iKSt2KFAsMiwiMCIpKyI6Iit2KFYsMiwiMCIpfSxtOmZ1bmN0aW9uIHkoRSxfKXtpZihFLmRhdGUoKTxfLmRhdGUoKSlyZXR1cm4teShfLEUpO3ZhciBQPTEyKihfLnllYXIoKS1FLnllYXIoKSkrKF8ubW9udGgoKS1FLm1vbnRoKCkpLFY9RS5jbG9uZSgpLmFkZChQLGQpLEg9Xy1WPDAsVz1FLmNsb25lKCkuYWRkKFArKEg/LTE6MSksZCk7cmV0dXJuKygtKFArKF8tVikvKEg/Vi1XOlctVikpfHwwKX0sYTpmdW5jdGlvbih5KXtyZXR1cm4geTwwP01hdGguY2VpbCh5KXx8MDpNYXRoLmZsb29yKHkpfSxwOmZ1bmN0aW9uKHkpe3JldHVybntNOmQseTp1LHc6YyxkOnMsRDpwLGg6bixtOm8sczppLG1zOmEsUTpmfVt5XXx8U3RyaW5nKHl8fCIiKS50b0xvd2VyQ2FzZSgpLnJlcGxhY2UoL3MkLywiIil9LHU6ZnVuY3Rpb24oeSl7cmV0dXJuIHk9PT12b2lkIDB9fSxNPSJlbiIsRj17fTtGW01dPWc7dmFyIEM9IiRpc0RheWpzT2JqZWN0IixrPWZ1bmN0aW9uKHkpe3JldHVybiB5IGluc3RhbmNlb2YgQnx8ISgheXx8IXlbQ10pfSxOPWZ1bmN0aW9uIHkoRSxfLFApe3ZhciBWO2lmKCFFKXJldHVybiBNO2lmKHR5cGVvZiBFPT0ic3RyaW5nIil7dmFyIEg9RS50b0xvd2VyQ2FzZSgpO0ZbSF0mJihWPUgpLF8mJihGW0hdPV8sVj1IKTt2YXIgVz1FLnNwbGl0KCItIik7aWYoIVYmJlcubGVuZ3RoPjEpcmV0dXJuIHkoV1swXSl9ZWxzZXt2YXIgYWU9RS5uYW1lO0ZbYWVdPUUsVj1hZX1yZXR1cm4hUCYmViYmKE09ViksVnx8IVAmJk19LCQ9ZnVuY3Rpb24oeSxFKXtpZihrKHkpKXJldHVybiB5LmNsb25lKCk7dmFyIF89dHlwZW9mIEU9PSJvYmplY3QiP0U6e307cmV0dXJuIF8uZGF0ZT15LF8uYXJncz1hcmd1bWVudHMsbmV3IEIoXyl9LEk9dztJLmw9TixJLmk9ayxJLnc9ZnVuY3Rpb24oeSxFKXtyZXR1cm4gJCh5LHtsb2NhbGU6RS4kTCx1dGM6RS4kdSx4OkUuJHgsJG9mZnNldDpFLiRvZmZzZXR9KX07dmFyIEI9KGZ1bmN0aW9uKCl7ZnVuY3Rpb24geShfKXt0aGlzLiRMPU4oXy5sb2NhbGUsbnVsbCwhMCksdGhpcy5wYXJzZShfKSx0aGlzLiR4PXRoaXMuJHh8fF8ueHx8e30sdGhpc1tDXT0hMH12YXIgRT15LnByb3RvdHlwZTtyZXR1cm4gRS5wYXJzZT1mdW5jdGlvbihfKXt0aGlzLiRkPShmdW5jdGlvbihQKXt2YXIgVj1QLmRhdGUsSD1QLnV0YztpZihWPT09bnVsbClyZXR1cm4gbmV3IERhdGUoTmFOKTtpZihJLnUoVikpcmV0dXJuIG5ldyBEYXRlO2lmKFYgaW5zdGFuY2VvZiBEYXRlKXJldHVybiBuZXcgRGF0ZShWKTtpZih0eXBlb2YgVj09InN0cmluZyImJiEvWiQvaS50ZXN0KFYpKXt2YXIgVz1WLm1hdGNoKGIpO2lmKFcpe3ZhciBhZT1XWzJdLTF8fDAsVD0oV1s3XXx8IjAiKS5zdWJzdHJpbmcoMCwzKTtyZXR1cm4gSD9uZXcgRGF0ZShEYXRlLlVUQyhXWzFdLGFlLFdbM118fDEsV1s0XXx8MCxXWzVdfHwwLFdbNl18fDAsVCkpOm5ldyBEYXRlKFdbMV0sYWUsV1szXXx8MSxXWzRdfHwwLFdbNV18fDAsV1s2XXx8MCxUKX19cmV0dXJuIG5ldyBEYXRlKFYpfSkoXyksdGhpcy5pbml0KCl9LEUuaW5pdD1mdW5jdGlvbigpe3ZhciBfPXRoaXMuJGQ7dGhpcy4keT1fLmdldEZ1bGxZZWFyKCksdGhpcy4kTT1fLmdldE1vbnRoKCksdGhpcy4kRD1fLmdldERhdGUoKSx0aGlzLiRXPV8uZ2V0RGF5KCksdGhpcy4kSD1fLmdldEhvdXJzKCksdGhpcy4kbT1fLmdldE1pbnV0ZXMoKSx0aGlzLiRzPV8uZ2V0U2Vjb25kcygpLHRoaXMuJG1zPV8uZ2V0TWlsbGlzZWNvbmRzKCl9LEUuJHV0aWxzPWZ1bmN0aW9uKCl7cmV0dXJuIEl9LEUuaXNWYWxpZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLiRkLnRvU3RyaW5nKCkhPT1ofSxFLmlzU2FtZT1mdW5jdGlvbihfLFApe3ZhciBWPSQoXyk7cmV0dXJuIHRoaXMuc3RhcnRPZihQKTw9ViYmVjw9dGhpcy5lbmRPZihQKX0sRS5pc0FmdGVyPWZ1bmN0aW9uKF8sUCl7cmV0dXJuICQoXyk8dGhpcy5zdGFydE9mKFApfSxFLmlzQmVmb3JlPWZ1bmN0aW9uKF8sUCl7cmV0dXJuIHRoaXMuZW5kT2YoUCk8JChfKX0sRS4kZz1mdW5jdGlvbihfLFAsVil7cmV0dXJuIEkudShfKT90aGlzW1BdOnRoaXMuc2V0KFYsXyl9LEUudW5peD1mdW5jdGlvbigpe3JldHVybiBNYXRoLmZsb29yKHRoaXMudmFsdWVPZigpLzFlMyl9LEUudmFsdWVPZj1mdW5jdGlvbigpe3JldHVybiB0aGlzLiRkLmdldFRpbWUoKX0sRS5zdGFydE9mPWZ1bmN0aW9uKF8sUCl7dmFyIFY9dGhpcyxIPSEhSS51KFApfHxQLFc9SS5wKF8pLGFlPWZ1bmN0aW9uKEEsRCl7dmFyIFI9SS53KFYuJHU/RGF0ZS5VVEMoVi4keSxELEEpOm5ldyBEYXRlKFYuJHksRCxBKSxWKTtyZXR1cm4gSD9SOlIuZW5kT2Yocyl9LFQ9ZnVuY3Rpb24oQSxEKXtyZXR1cm4gSS53KFYudG9EYXRlKClbQV0uYXBwbHkoVi50b0RhdGUoInMiKSwoSD9bMCwwLDAsMF06WzIzLDU5LDU5LDk5OV0pLnNsaWNlKEQpKSxWKX0sSj10aGlzLiRXLGZlPXRoaXMuJE0sTD10aGlzLiRELFE9InNldCIrKHRoaXMuJHU/IlVUQyI6IiIpO3N3aXRjaChXKXtjYXNlIHU6cmV0dXJuIEg/YWUoMSwwKTphZSgzMSwxMSk7Y2FzZSBkOnJldHVybiBIP2FlKDEsZmUpOmFlKDAsZmUrMSk7Y2FzZSBjOnZhciBrZT10aGlzLiRsb2NhbGUoKS53ZWVrU3RhcnR8fDAsRz0oSjxrZT9KKzc6Sikta2U7cmV0dXJuIGFlKEg/TC1HOkwrKDYtRyksZmUpO2Nhc2UgczpjYXNlIHA6cmV0dXJuIFQoUSsiSG91cnMiLDApO2Nhc2UgbjpyZXR1cm4gVChRKyJNaW51dGVzIiwxKTtjYXNlIG86cmV0dXJuIFQoUSsiU2Vjb25kcyIsMik7Y2FzZSBpOnJldHVybiBUKFErIk1pbGxpc2Vjb25kcyIsMyk7ZGVmYXVsdDpyZXR1cm4gdGhpcy5jbG9uZSgpfX0sRS5lbmRPZj1mdW5jdGlvbihfKXtyZXR1cm4gdGhpcy5zdGFydE9mKF8sITEpfSxFLiRzZXQ9ZnVuY3Rpb24oXyxQKXt2YXIgVixIPUkucChfKSxXPSJzZXQiKyh0aGlzLiR1PyJVVEMiOiIiKSxhZT0oVj17fSxWW3NdPVcrIkRhdGUiLFZbcF09VysiRGF0ZSIsVltkXT1XKyJNb250aCIsVlt1XT1XKyJGdWxsWWVhciIsVltuXT1XKyJIb3VycyIsVltvXT1XKyJNaW51dGVzIixWW2ldPVcrIlNlY29uZHMiLFZbYV09VysiTWlsbGlzZWNvbmRzIixWKVtIXSxUPUg9PT1zP3RoaXMuJEQrKFAtdGhpcy4kVyk6UDtpZihIPT09ZHx8SD09PXUpe3ZhciBKPXRoaXMuY2xvbmUoKS5zZXQocCwxKTtKLiRkW2FlXShUKSxKLmluaXQoKSx0aGlzLiRkPUouc2V0KHAsTWF0aC5taW4odGhpcy4kRCxKLmRheXNJbk1vbnRoKCkpKS4kZH1lbHNlIGFlJiZ0aGlzLiRkW2FlXShUKTtyZXR1cm4gdGhpcy5pbml0KCksdGhpc30sRS5zZXQ9ZnVuY3Rpb24oXyxQKXtyZXR1cm4gdGhpcy5jbG9uZSgpLiRzZXQoXyxQKX0sRS5nZXQ9ZnVuY3Rpb24oXyl7cmV0dXJuIHRoaXNbSS5wKF8pXSgpfSxFLmFkZD1mdW5jdGlvbihfLFApe3ZhciBWLEg9dGhpcztfPU51bWJlcihfKTt2YXIgVz1JLnAoUCksYWU9ZnVuY3Rpb24oZmUpe3ZhciBMPSQoSCk7cmV0dXJuIEkudyhMLmRhdGUoTC5kYXRlKCkrTWF0aC5yb3VuZChmZSpfKSksSCl9O2lmKFc9PT1kKXJldHVybiB0aGlzLnNldChkLHRoaXMuJE0rXyk7aWYoVz09PXUpcmV0dXJuIHRoaXMuc2V0KHUsdGhpcy4keStfKTtpZihXPT09cylyZXR1cm4gYWUoMSk7aWYoVz09PWMpcmV0dXJuIGFlKDcpO3ZhciBUPShWPXt9LFZbb109dCxWW25dPXIsVltpXT1lLFYpW1ddfHwxLEo9dGhpcy4kZC5nZXRUaW1lKCkrXypUO3JldHVybiBJLncoSix0aGlzKX0sRS5zdWJ0cmFjdD1mdW5jdGlvbihfLFApe3JldHVybiB0aGlzLmFkZCgtMSpfLFApfSxFLmZvcm1hdD1mdW5jdGlvbihfKXt2YXIgUD10aGlzLFY9dGhpcy4kbG9jYWxlKCk7aWYoIXRoaXMuaXNWYWxpZCgpKXJldHVybiBWLmludmFsaWREYXRlfHxoO3ZhciBIPV98fCJZWVlZLU1NLUREVEhIOm1tOnNzWiIsVz1JLnoodGhpcyksYWU9dGhpcy4kSCxUPXRoaXMuJG0sSj10aGlzLiRNLGZlPVYud2Vla2RheXMsTD1WLm1vbnRocyxRPVYubWVyaWRpZW0sa2U9ZnVuY3Rpb24oRCxSLE8sWSl7cmV0dXJuIEQmJihEW1JdfHxEKFAsSCkpfHxPW1JdLnNsaWNlKDAsWSl9LEc9ZnVuY3Rpb24oRCl7cmV0dXJuIEkucyhhZSUxMnx8MTIsRCwiMCIpfSxBPVF8fGZ1bmN0aW9uKEQsUixPKXt2YXIgWT1EPDEyPyJBTSI6IlBNIjtyZXR1cm4gTz9ZLnRvTG93ZXJDYXNlKCk6WX07cmV0dXJuIEgucmVwbGFjZSh4LChmdW5jdGlvbihELFIpe3JldHVybiBSfHwoZnVuY3Rpb24oTyl7c3dpdGNoKE8pe2Nhc2UiWVkiOnJldHVybiBTdHJpbmcoUC4keSkuc2xpY2UoLTIpO2Nhc2UiWVlZWSI6cmV0dXJuIEkucyhQLiR5LDQsIjAiKTtjYXNlIk0iOnJldHVybiBKKzE7Y2FzZSJNTSI6cmV0dXJuIEkucyhKKzEsMiwiMCIpO2Nhc2UiTU1NIjpyZXR1cm4ga2UoVi5tb250aHNTaG9ydCxKLEwsMyk7Y2FzZSJNTU1NIjpyZXR1cm4ga2UoTCxKKTtjYXNlIkQiOnJldHVybiBQLiREO2Nhc2UiREQiOnJldHVybiBJLnMoUC4kRCwyLCIwIik7Y2FzZSJkIjpyZXR1cm4gU3RyaW5nKFAuJFcpO2Nhc2UiZGQiOnJldHVybiBrZShWLndlZWtkYXlzTWluLFAuJFcsZmUsMik7Y2FzZSJkZGQiOnJldHVybiBrZShWLndlZWtkYXlzU2hvcnQsUC4kVyxmZSwzKTtjYXNlImRkZGQiOnJldHVybiBmZVtQLiRXXTtjYXNlIkgiOnJldHVybiBTdHJpbmcoYWUpO2Nhc2UiSEgiOnJldHVybiBJLnMoYWUsMiwiMCIpO2Nhc2UiaCI6cmV0dXJuIEcoMSk7Y2FzZSJoaCI6cmV0dXJuIEcoMik7Y2FzZSJhIjpyZXR1cm4gQShhZSxULCEwKTtjYXNlIkEiOnJldHVybiBBKGFlLFQsITEpO2Nhc2UibSI6cmV0dXJuIFN0cmluZyhUKTtjYXNlIm1tIjpyZXR1cm4gSS5zKFQsMiwiMCIpO2Nhc2UicyI6cmV0dXJuIFN0cmluZyhQLiRzKTtjYXNlInNzIjpyZXR1cm4gSS5zKFAuJHMsMiwiMCIpO2Nhc2UiU1NTIjpyZXR1cm4gSS5zKFAuJG1zLDMsIjAiKTtjYXNlIloiOnJldHVybiBXfXJldHVybiBudWxsfSkoRCl8fFcucmVwbGFjZSgiOiIsIiIpfSkpfSxFLnV0Y09mZnNldD1mdW5jdGlvbigpe3JldHVybiAxNSotTWF0aC5yb3VuZCh0aGlzLiRkLmdldFRpbWV6b25lT2Zmc2V0KCkvMTUpfSxFLmRpZmY9ZnVuY3Rpb24oXyxQLFYpe3ZhciBILFc9dGhpcyxhZT1JLnAoUCksVD0kKF8pLEo9KFQudXRjT2Zmc2V0KCktdGhpcy51dGNPZmZzZXQoKSkqdCxmZT10aGlzLVQsTD1mdW5jdGlvbigpe3JldHVybiBJLm0oVyxUKX07c3dpdGNoKGFlKXtjYXNlIHU6SD1MKCkvMTI7YnJlYWs7Y2FzZSBkOkg9TCgpO2JyZWFrO2Nhc2UgZjpIPUwoKS8zO2JyZWFrO2Nhc2UgYzpIPShmZS1KKS82MDQ4ZTU7YnJlYWs7Y2FzZSBzOkg9KGZlLUopLzg2NGU1O2JyZWFrO2Nhc2UgbjpIPWZlL3I7YnJlYWs7Y2FzZSBvOkg9ZmUvdDticmVhaztjYXNlIGk6SD1mZS9lO2JyZWFrO2RlZmF1bHQ6SD1mZX1yZXR1cm4gVj9IOkkuYShIKX0sRS5kYXlzSW5Nb250aD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmVuZE9mKGQpLiREfSxFLiRsb2NhbGU9ZnVuY3Rpb24oKXtyZXR1cm4gRlt0aGlzLiRMXX0sRS5sb2NhbGU9ZnVuY3Rpb24oXyxQKXtpZighXylyZXR1cm4gdGhpcy4kTDt2YXIgVj10aGlzLmNsb25lKCksSD1OKF8sUCwhMCk7cmV0dXJuIEgmJihWLiRMPUgpLFZ9LEUuY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gSS53KHRoaXMuJGQsdGhpcyl9LEUudG9EYXRlPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBEYXRlKHRoaXMudmFsdWVPZigpKX0sRS50b0pTT049ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5pc1ZhbGlkKCk/dGhpcy50b0lTT1N0cmluZygpOm51bGx9LEUudG9JU09TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy4kZC50b0lTT1N0cmluZygpfSxFLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuJGQudG9VVENTdHJpbmcoKX0seX0pKCksej1CLnByb3RvdHlwZTtyZXR1cm4gJC5wcm90b3R5cGU9eixbWyIkbXMiLGFdLFsiJHMiLGldLFsiJG0iLG9dLFsiJEgiLG5dLFsiJFciLHNdLFsiJE0iLGRdLFsiJHkiLHVdLFsiJEQiLHBdXS5mb3JFYWNoKChmdW5jdGlvbih5KXt6W3lbMV1dPWZ1bmN0aW9uKEUpe3JldHVybiB0aGlzLiRnKEUseVswXSx5WzFdKX19KSksJC5leHRlbmQ9ZnVuY3Rpb24oeSxFKXtyZXR1cm4geS4kaXx8KHkoRSxCLCQpLHkuJGk9ITApLCR9LCQubG9jYWxlPU4sJC5pc0RheWpzPWssJC51bml4PWZ1bmN0aW9uKHkpe3JldHVybiAkKDFlMyp5KX0sJC5lbj1GW01dLCQuTHM9RiwkLnA9e30sJH0pKX0pO3ZhciBCaHQ9WGUoKFFkZSxLZGUpPT57KGZ1bmN0aW9uKGUsdCl7dHlwZW9mIFFkZT09Im9iamVjdCImJnR5cGVvZiBLZGU8InUiP0tkZS5leHBvcnRzPXQoKTp0eXBlb2YgZGVmaW5lPT0iZnVuY3Rpb24iJiZkZWZpbmUuYW1kP2RlZmluZSh0KTooZT10eXBlb2YgZ2xvYmFsVGhpczwidSI/Z2xvYmFsVGhpczplfHxzZWxmKS5kYXlqc19wbHVnaW5faXNUb2RheT10KCl9KShRZGUsKGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO3JldHVybiBmdW5jdGlvbihlLHQscil7dC5wcm90b3R5cGUuaXNUb2RheT1mdW5jdGlvbigpe3ZhciBhPSJZWVlZLU1NLUREIixpPXIoKTtyZXR1cm4gdGhpcy5mb3JtYXQoYSk9PT1pLmZvcm1hdChhKX19fSkpfSk7ZnVuY3Rpb24gSVdyKGUpe3JldHVybntkYXlzOk1hdGgudHJ1bmMoZS84NjRlNSksaG91cnM6TWF0aC50cnVuYyhlLzM2ZTUlMjQpLG1pbnV0ZXM6TWF0aC50cnVuYyhlLzZlNCU2MCksc2Vjb25kczpNYXRoLnRydW5jKGUvMWUzJTYwKSxtaWxsaXNlY29uZHM6TWF0aC50cnVuYyhlJTFlMyksbWljcm9zZWNvbmRzOk1hdGgudHJ1bmMoSGh0KGUqMWUzKSUxZTMpLG5hbm9zZWNvbmRzOk1hdGgudHJ1bmMoSGh0KGUqMWU2KSUxZTMpfX1mdW5jdGlvbiBOV3IoZSl7cmV0dXJue2RheXM6ZS84NjQwMDAwMG4saG91cnM6ZS8zNjAwMDAwbiUyNG4sbWludXRlczplLzYwMDAwbiU2MG4sc2Vjb25kczplLzEwMDBuJTYwbixtaWxsaXNlY29uZHM6ZSUxMDAwbixtaWNyb3NlY29uZHM6MG4sbmFub3NlY29uZHM6MG59fWZ1bmN0aW9uIEpkZShlKXtzd2l0Y2godHlwZW9mIGUpe2Nhc2UibnVtYmVyIjp7aWYoTnVtYmVyLmlzRmluaXRlKGUpKXJldHVybiBJV3IoZSk7YnJlYWt9Y2FzZSJiaWdpbnQiOnJldHVybiBOV3IoZSl9dGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBmaW5pdGUgbnVtYmVyIG9yIGJpZ2ludCIpfXZhciBIaHQscWh0PWwoKCk9PntIaHQ9ZT0+TnVtYmVyLmlzRmluaXRlKGUpP2U6MH0pO2Z1bmN0aW9uIHh4KGUsdCl7bGV0IHI9dHlwZW9mIGU9PSJiaWdpbnQiO2lmKCFyJiYhTnVtYmVyLmlzRmluaXRlKGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkIGEgZmluaXRlIG51bWJlciBvciBiaWdpbnQiKTt0PXsuLi50fTtsZXQgYT1lPDA/Ii0iOiIiO2U9ZTwwPy1lOmUsdC5jb2xvbk5vdGF0aW9uJiYodC5jb21wYWN0PSExLHQuZm9ybWF0U3ViTWlsbGlzZWNvbmRzPSExLHQuc2VwYXJhdGVNaWxsaXNlY29uZHM9ITEsdC52ZXJib3NlPSExKSx0LmNvbXBhY3QmJih0LnVuaXRDb3VudD0xLHQuc2Vjb25kc0RlY2ltYWxEaWdpdHM9MCx0Lm1pbGxpc2Vjb25kc0RlY2ltYWxEaWdpdHM9MCk7bGV0IGk9W10sbz0oZix1KT0+e2xldCBwPU1hdGguZmxvb3IoZioxMCoqdStSV3IpO3JldHVybihNYXRoLnJvdW5kKHApLzEwKip1KS50b0ZpeGVkKHUpfSxuPShmLHUscCxoKT0+e2lmKCEoKGkubGVuZ3RoPT09MHx8IXQuY29sb25Ob3RhdGlvbikmJkZXcihmKSYmISh0LmNvbG9uTm90YXRpb24mJnA9PT0ibSIpKSl7aWYoaD8/PVN0cmluZyhmKSx0LmNvbG9uTm90YXRpb24pe2xldCBiPWguaW5jbHVkZXMoIi4iKT9oLnNwbGl0KCIuIilbMF0ubGVuZ3RoOmgubGVuZ3RoLHg9aS5sZW5ndGg+MD8yOjE7aD0iMCIucmVwZWF0KE1hdGgubWF4KDAseC1iKSkraH1lbHNlIGgrPXQudmVyYm9zZT8iICIrT1dyKHUsZik6cDtpLnB1c2goaCl9fSxzPUpkZShlKSxjPUJpZ0ludChzLmRheXMpO2lmKHQuaGlkZVllYXJBbmREYXlzP24oQmlnSW50KGMpKjI0bitCaWdJbnQocy5ob3VycyksImhvdXIiLCJoIik6KHQuaGlkZVllYXI/bihjLCJkYXkiLCJkIik6KG4oYy8zNjVuLCJ5ZWFyIiwieSIpLG4oYyUzNjVuLCJkYXkiLCJkIikpLG4oTnVtYmVyKHMuaG91cnMpLCJob3VyIiwiaCIpKSxuKE51bWJlcihzLm1pbnV0ZXMpLCJtaW51dGUiLCJtIiksIXQuaGlkZVNlY29uZHMpaWYodC5zZXBhcmF0ZU1pbGxpc2Vjb25kc3x8dC5mb3JtYXRTdWJNaWxsaXNlY29uZHN8fCF0LmNvbG9uTm90YXRpb24mJmU8MWUzJiYhdC5zdWJTZWNvbmRzQXNEZWNpbWFscyl7bGV0IGY9TnVtYmVyKHMuc2Vjb25kcyksdT1OdW1iZXIocy5taWxsaXNlY29uZHMpLHA9TnVtYmVyKHMubWljcm9zZWNvbmRzKSxoPU51bWJlcihzLm5hbm9zZWNvbmRzKTtpZihuKGYsInNlY29uZCIsInMiKSx0LmZvcm1hdFN1Yk1pbGxpc2Vjb25kcyluKHUsIm1pbGxpc2Vjb25kIiwibXMiKSxuKHAsIm1pY3Jvc2Vjb25kIiwiXHhCNXMiKSxuKGgsIm5hbm9zZWNvbmQiLCJucyIpO2Vsc2V7bGV0IGI9dStwLzFlMytoLzFlNix4PXR5cGVvZiB0Lm1pbGxpc2Vjb25kc0RlY2ltYWxEaWdpdHM9PSJudW1iZXIiP3QubWlsbGlzZWNvbmRzRGVjaW1hbERpZ2l0czowLGc9Yj49MT9NYXRoLnJvdW5kKGIpOk1hdGguY2VpbChiKSx2PXg/Yi50b0ZpeGVkKHgpOmc7bihOdW1iZXIucGFyc2VGbG9hdCh2KSwibWlsbGlzZWNvbmQiLCJtcyIsdil9fWVsc2V7bGV0IGY9KHI/TnVtYmVyKGUlQldyKTplKS8xZTMlNjAsdT10eXBlb2YgdC5zZWNvbmRzRGVjaW1hbERpZ2l0cz09Im51bWJlciI/dC5zZWNvbmRzRGVjaW1hbERpZ2l0czoxLHA9byhmLHUpLGg9dC5rZWVwRGVjaW1hbHNPbldob2xlU2Vjb25kcz9wOnAucmVwbGFjZSgvXC4wKyQvLCIiKTtuKE51bWJlci5wYXJzZUZsb2F0KGgpLCJzZWNvbmQiLCJzIixoKX1pZihpLmxlbmd0aD09PTApcmV0dXJuIGErIjAiKyh0LnZlcmJvc2U/IiBtaWxsaXNlY29uZHMiOiJtcyIpO2xldCBkPXQuY29sb25Ob3RhdGlvbj8iOiI6IiAiO3JldHVybiB0eXBlb2YgdC51bml0Q291bnQ9PSJudW1iZXIiJiYoaT1pLnNsaWNlKDAsTWF0aC5tYXgodC51bml0Q291bnQsMSkpKSxhK2kuam9pbihkKX12YXIgRldyLE9XcixSV3IsQldyLGpodD1sKCgpPT57cWh0KCk7RldyPWU9PmU9PT0wfHxlPT09MG4sT1dyPShlLHQpPT50PT09MXx8dD09PTFuP2U6YCR7ZX1zYCxSV3I9MWUtNyxCV3I9MjRuKjYwbio2MG4qMTAwMG59KTt2YXIgZWQsVmh0LF8wPWwoKCk9PntieCgpO2YwKCk7Q28oKTtlNnQoKTtPaHQoKTtlZD1BcihSaHQoKSwxKSxWaHQ9QXIoQmh0KCksMSk7amh0KCk7ZWQuZGVmYXVsdC5leHRlbmQoVmh0LmRlZmF1bHQpfSk7dmFyIHZ4LGU2ZT1sKCgpPT57XzAoKTt0NmUoKTt2eD1jbGFzc3tjb25zdHJ1Y3Rvcih0LHIsYSl7dGhpcy5zdGF0dXM9ImluaXRpYWwiLHRoaXMubmV4dEV4ZWN1dGlvblVuaXg9MCx0aGlzLmNyb25FeHByZXNzaW9uPXIsdGhpcy5qb2JGdW5jdGlvbj1hLHRoaXMuY3JvblBhcnNlcj1uZXcgWmcuQ3JvbihyKX1jaGVja0V4ZWN1dGlvbigpe2lmKHRoaXMuc3RhdHVzPT09InN0b3BwZWQiKXJldHVybiB0aGlzLm5leHRFeGVjdXRpb25Vbml4O2lmKHRoaXMubmV4dEV4ZWN1dGlvblVuaXg9PT0wJiZ0aGlzLmdldE5leHRFeGVjdXRpb25UaW1lKCksRGF0ZS5ub3coKT50aGlzLm5leHRFeGVjdXRpb25Vbml4KXtsZXQgdD10aGlzLmpvYkZ1bmN0aW9uKHRoaXMubmV4dEV4ZWN1dGlvblVuaXgpO3QgaW5zdGFuY2VvZiBQcm9taXNlJiZ0LmNhdGNoKHI9PmNvbnNvbGUubG9nKHIpKSx0aGlzLm5leHRFeGVjdXRpb25Vbml4PXRoaXMuZ2V0TmV4dEV4ZWN1dGlvblRpbWUoKX1yZXR1cm4gdGhpcy5uZXh0RXhlY3V0aW9uVW5peH1nZXROZXh0RXhlY3V0aW9uVGltZSgpe3JldHVybiB0aGlzLm5leHRFeGVjdXRpb25Vbml4PURhdGUubm93KCkrdGhpcy5nZXRUaW1lVG9OZXh0RXhlY3V0aW9uKCl9Z2V0VGltZVRvTmV4dEV4ZWN1dGlvbigpe3JldHVybiB0aGlzLmNyb25QYXJzZXIubXNUb05leHQoKX1zdGFydCgpe3RoaXMuc3RhdHVzPSJzdGFydGVkIn1zdG9wKCl7dGhpcy5zdGF0dXM9InN0b3BwZWQifX19KTt2YXIgcjZlLHQ2ZT1sKCgpPT57XzAoKTtlNmUoKTtyNmU9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLnN0YXR1cz0ic3RvcHBlZCIsdGhpcy5jcm9uam9icz1uZXcgQ2kuT2JqZWN0TWFwLHRoaXMuY3ljbGVXYWtlRGVmZXJyZWQ9bnVsbH13YWtlQ3ljbGUoKXt0aGlzLmN5Y2xlV2FrZURlZmVycmVkJiZ0aGlzLmN5Y2xlV2FrZURlZmVycmVkLnN0YXR1cz09PSJwZW5kaW5nIiYmdGhpcy5jeWNsZVdha2VEZWZlcnJlZC5yZXNvbHZlKCl9YWRkQ3JvbmpvYih0LHIpe2xldCBhPW5ldyB2eCh0aGlzLHQscik7cmV0dXJuIHRoaXMuY3JvbmpvYnMuYWRkKGEpLHRoaXMuc3RhdHVzPT09InN0YXJ0ZWQiJiYoYS5zdGFydCgpLHRoaXMud2FrZUN5Y2xlKCkpLGF9cmVtb3ZlQ3JvbmpvYih0KXt0LnN0b3AoKSx0aGlzLmNyb25qb2JzLnJlbW92ZSh0KSx0aGlzLnN0YXR1cz09PSJzdGFydGVkIiYmdGhpcy53YWtlQ3ljbGUoKX1zdGFydCgpe2lmKHRoaXMuc3RhdHVzIT09InN0YXJ0ZWQiKXt0aGlzLnN0YXR1cz0ic3RhcnRlZCI7Zm9yKGxldCB0IG9mIHRoaXMuY3JvbmpvYnMuZ2V0QXJyYXkoKSl0LnN0YXJ0KCk7dGhpcy5ydW5Dcm9uQ3ljbGUoKX19YXN5bmMgcnVuQ3JvbkN5Y2xlKCl7Zm9yKDt0aGlzLnN0YXR1cz09PSJzdGFydGVkIjspe3RoaXMuY3ljbGVXYWtlRGVmZXJyZWQ9bmV3IHB0LkRlZmVycmVkO2xldCB0PTEvMDtmb3IobGV0IHIgb2YgdGhpcy5jcm9uam9icy5nZXRBcnJheSgpKXtyLmNoZWNrRXhlY3V0aW9uKCk7bGV0IGE9ci5nZXRUaW1lVG9OZXh0RXhlY3V0aW9uKCk7YTx0JiYodD1hKX1pZih0PDEvMCYmdD4wKXRoaXMuZXhlY3V0aW9uVGltZW91dD1uZXcgWnQuVGltZW91dCh0KSxhd2FpdCBQcm9taXNlLnJhY2UoW3RoaXMuZXhlY3V0aW9uVGltZW91dC5wcm9taXNlLHRoaXMuY3ljbGVXYWtlRGVmZXJyZWQucHJvbWlzZV0pLHRoaXMuZXhlY3V0aW9uVGltZW91dC5jYW5jZWwoKTtlbHNle2lmKHQ8PTApY29udGludWU7YXdhaXQgdGhpcy5jeWNsZVdha2VEZWZlcnJlZC5wcm9taXNlfX10aGlzLmN5Y2xlV2FrZURlZmVycmVkPW51bGx9c3RvcCgpe3RoaXMuc3RhdHVzPT09InN0YXJ0ZWQiJiYodGhpcy5zdGF0dXM9InN0b3BwZWQiLHRoaXMuZXhlY3V0aW9uVGltZW91dCYmdGhpcy5leGVjdXRpb25UaW1lb3V0LmNhbmNlbCgpLHRoaXMud2FrZUN5Y2xlKCkpO2ZvcihsZXQgdCBvZiB0aGlzLmNyb25qb2JzLmdldEFycmF5KCkpdC5zdG9wKCl9fX0pO3ZhciBUMCxhNmUsSFdyLHFXcixpNmU9bCgoKT0+e18wKCk7VDA9e3llYXJzOihlPTEpPT5lKjMxNTRlNyxtb250aHM6KGU9MSk9PmUqMjYyOGU2LHdlZWtzOihlPTEpPT5lKjYwNDhlNSxkYXlzOihlPTEpPT5lKjg2NGU1LGhvdXJzOihlPTEpPT5lKjM2ZTUsbWludXRlczooZT0xKT0+ZSo2ZTQsc2Vjb25kczooZT0xKT0+ZSoxZTN9LGE2ZT1lPT57bGV0IHQ9MCxyPWE9Pnt0PXQrYX07cmV0dXJuIGUueWVhcnMmJnIoVDAueWVhcnMoZS55ZWFycykpLGUubW9udGhzJiZyKFQwLm1vbnRocyhlLm1vbnRocykpLGUud2Vla3MmJnIoVDAud2Vla3MoZS53ZWVrcykpLGUuZGF5cyYmcihUMC5kYXlzKGUuZGF5cykpLGUuaG91cnMmJnIoVDAuaG91cnMoZS5ob3VycykpLGUubWludXRlcyYmcihUMC5taW51dGVzKGUubWludXRlcykpLGUuc2Vjb25kcyYmcihUMC5zZWNvbmRzKGUuc2Vjb25kcykpLHR9LEhXcj1lPT54eChlKSxxV3I9ZT0+Z3guZm9ybWF0RGlzdGFuY2VUb05vdyhuZXcgRGF0ZShlKSl9KTt2YXIgbzZlLFVodD1sKCgpPT57XzAoKTtpNmUoKTtvNmU9Y2xhc3MgZSBleHRlbmRzIERhdGV7c3RhdGljIGZyb21NaWxsaXModCl7cmV0dXJuIG5ldyBlKHQpfXN0YXRpYyBmcm9tRGF0ZSh0KXtyZXR1cm4gbmV3IGUodC5nZXRUaW1lKCkpfXN0YXRpYyBmcm9tRXVyb3BlYW5EYXRlKHQpe2xldCByPS8oLiopXC4oLiopXC4oLiopLy5leGVjKHQpLGk9bmV3IERhdGUocGFyc2VGbG9hdChyWzNdKSxwYXJzZUZsb2F0KHJbMl0pLTEscGFyc2VGbG9hdChyWzFdKSkuZ2V0VGltZSgpO3JldHVybiBuZXcgZShpKX1zdGF0aWMgZnJvbUh5cGhlZERhdGUodCl7bGV0IHI9bmV3IERhdGUodCkuZ2V0VGltZSgpO3JldHVybiBuZXcgZShyKX1zdGF0aWMgZnJvbUV1cm9wZWFuRGF0ZUFuZFRpbWUodCxyPSIxMjowMDowMCIsYT0iRXVyb3BlL0JlcmxpbiIpe2xldCBpPS8oLiopXC4oLiopXC4oLiopLy5leGVjKHQpLG89ZD0+YDAke2R9YC5zbGljZSgtMiksbj1gJHtpWzNdfS0ke28oaVsyXSl9LSR7byhpWzFdKX1UJHtyfWAsYz1lZC5kZWZhdWx0KG4pLnRvRGF0ZSgpLmdldFRpbWUoKTtyZXR1cm4gbmV3IGUoYyl9Y29uc3RydWN0b3IodD1EYXRlLm5vdygpKXtzdXBlcih0KX1leHBvcnRUb0V1cm9wZWFuRGF0ZSgpe2xldCB0PXRoaXMuZXhwb3J0VG9Vbml0cygpO3JldHVybmAke3QuZGF5U3RyaW5nfS4ke3QubW9udGhTdHJpbmd9LiR7dC55ZWFyU3RyaW5nfWB9ZXhwb3J0VG9IeXBoZWRTb3J0YWJsZURhdGUoKXtsZXQgdD10aGlzLmV4cG9ydFRvVW5pdHMoKTtyZXR1cm5gJHt0LnllYXJTdHJpbmd9LSR7dC5tb250aFN0cmluZ30tJHt0LmRheVN0cmluZ31gfWV4cG9ydFRvVW5pdHMoKXtsZXQgdD1bIkphbnVhcnkiLCJGZWJydWFyeSIsIk1hcmNoIiwiQXByaWwiLCJNYXkiLCJKdW5lIiwiSnVseSIsIkF1Z3VzdCIsIlNlcHRlbWJlciIsIk9jdG9iZXIiLCJOb3ZlbWJlciIsIkRlY2VtYmVyIl0scj1bIk1vbmRheSIsIlR1ZXNkYXkiLCJXZWRuZXNkYXkiLCJUaHVyc2RheSIsIkZyaWRheSIsIlNhdHVyZGF5IiwiU3VuZGF5Il07cmV0dXJue3llYXI6dGhpcy5nZXRGdWxsWWVhcigpLHllYXJTdHJpbmc6YCR7dGhpcy5nZXRGdWxsWWVhcigpfWAsbW9udGg6dGhpcy5nZXRNb250aCgpKzEsbW9udGhTdHJpbmc6KCIwIisodGhpcy5nZXRNb250aCgpKzEpKS5zbGljZSgtMiksbW9udGhOYW1lOnRbdGhpcy5nZXRNb250aCgpXSxkYXk6dGhpcy5nZXREYXRlKCksZGF5U3RyaW5nOigiMCIrdGhpcy5nZXREYXRlKCkpLnNsaWNlKC0yKSxkYXlPZlRoZVdlZWs6dGhpcy5nZXREYXkoKSxkYXlPZlRoZVdlZWtOYW1lOnJbdGhpcy5nZXREYXkoKV19fWZvcm1hdCh0KXtyZXR1cm4gZWQuZGVmYXVsdCh0aGlzLmdldFRpbWUoKSkuZm9ybWF0KHQpfWlzVG9kYXkoKXtyZXR1cm4gZWQuZGVmYXVsdCh0aGlzLmdldFRpbWUoKSkuaXNUb2RheSgpfWxlc3NUaW1lUGFzc2VkVG9Ob3codCl7bGV0IHI9YTZlKHQpO3JldHVybiBEYXRlLm5vdygpLXRoaXMuZ2V0VGltZSgpPHJ9bW9yZVRpbWVQYXNzZWRUb05vdyh0KXtyZXR1cm4hdGhpcy5sZXNzVGltZVBhc3NlZFRvTm93KHQpfX19KTt2YXIgbjZlLFdodD1sKCgpPT57bjZlPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5uYW5vU2Vjb25kcz1udWxsLHRoaXMubWlsbGlTZWNvbmRzPW51bGwsdGhpcy5fbWlsbGlTdGFydD1udWxsLHRoaXMuX21pbGxpRGlmZj1udWxsLHRoaXMuX3N0YXJ0ZWQ9ITF9c3RhcnQoKXt0aGlzLl9zdGFydGVkPSEwLHRoaXMuX21pbGxpU3RhcnQ9RGF0ZS5ub3coKX1zdG9wKCl7aWYodGhpcy5fc3RhcnRlZD09PSExKXtjb25zb2xlLmxvZygiSGFzbid0IHN0YXJ0ZWQgeWV0Iik7cmV0dXJufXJldHVybiB0aGlzLl9taWxsaURpZmY9RGF0ZS5ub3coKS10aGlzLl9taWxsaVN0YXJ0LHRoaXMubmFub1NlY29uZHM9dGhpcy5fbWlsbGlEaWZmKjFlMyx0aGlzLm1pbGxpU2Vjb25kcz10aGlzLl9taWxsaURpZmYsdGhpc31yZXNldCgpe3RoaXMubmFub1NlY29uZHM9bnVsbCx0aGlzLm1pbGxpU2Vjb25kcz1udWxsLHRoaXMuX21pbGxpU3RhcnQ9bnVsbCx0aGlzLl9taWxsaURpZmY9bnVsbCx0aGlzLl9zdGFydGVkPSExfX19KTt2YXIgczZlLEdodD1sKCgpPT57XzAoKTtzNmU9Y2xhc3N7Y29uc3RydWN0b3IodCl7dGhpcy5zdGF0dXM9ImluaXRpYWwiLHRoaXMuc3RhdHVzQXV0aG9yaXphdGlvbj1udWxsLHRoaXMuaW50ZXJ2YWxKb2JzPVtdLHRoaXMuaW50ZXJ2YWxNaWxsaXNlY29uZHM9dH1zdGFydCgpe3RoaXMuc3RhdHVzPSJzdGFydGVkIjtsZXQgdD1uZXcgRGF0ZTt0aGlzLnN0YXR1c0F1dGhvcml6YXRpb249dCwoYXN5bmMoKT0+e2Zvcig7dGhpcy5zdGF0dXM9PT0ic3RhcnRlZCImJnRoaXMuc3RhdHVzQXV0aG9yaXphdGlvbj09PXQ7KWF3YWl0IFp0LmRlbGF5Rm9yKHRoaXMuaW50ZXJ2YWxNaWxsaXNlY29uZHMpLHRoaXMuZXhlY3V0ZUludGVydmFsSm9icygpfSkoKX1zdG9wKCl7dGhpcy5zdGF0dXM9InN0b3BwZWQiLHRoaXMuc3RhdHVzQXV0aG9yaXphdGlvbj1udWxsfWFkZEludGVydmFsSm9iKHQpe3RoaXMuaW50ZXJ2YWxKb2JzLnB1c2godCl9ZXhlY3V0ZUludGVydmFsSm9icygpe2ZvcihsZXQgdCBvZiB0aGlzLmludGVydmFsSm9icyl0KCl9fX0pO3ZhciBWaCxsNmU9bCgoKT0+e18wKCk7Vmg9Y2xhc3MgZXtzdGF0aWMgZnJvbU1pbGxpU2Vjb25kcyh0KXtyZXR1cm4gbmV3IGUodCl9c3RhdGljIGZyb21UaW1lU3RhbXAodCl7bGV0IHI9bmV3IGU7cmV0dXJuIHIuY2hhbmdlPXIubWlsbGlTZWNvbmRzLXQubWlsbGlTZWNvbmRzLHJ9Y29uc3RydWN0b3IodCl7dGhpcy5jaGFuZ2U9bnVsbCx0P3R5cGVvZiB0PT0ibnVtYmVyIiYmKHRoaXMuZGF0ZT1uZXcgRGF0ZSh0KSk6dGhpcy5kYXRlPW5ldyBEYXRlLHRoaXMubWlsbGlTZWNvbmRzPXRoaXMuZGF0ZS5nZXRUaW1lKCksdGhpcy5lcG9jaHRpbWU9TWF0aC5mbG9vcih0aGlzLm1pbGxpU2Vjb25kcy8xZTMpfWlzT2xkZXJUaGFuT3RoZXJUaW1lU3RhbXAodCxyPTApe3JldHVybiB0aGlzLm1pbGxpU2Vjb25kczx0Lm1pbGxpU2Vjb25kcy1yfWlzT2xkZXJUaGFuKHQscj0wKXtyZXR1cm4gdGhpcy5taWxsaVNlY29uZHMrcjx0Lm1pbGxpU2Vjb25kc31pc1lvdW5nZXJUaGFuT3RoZXJUaW1lU3RhbXAodCxyPTApe3JldHVybiB0aGlzLm1pbGxpU2Vjb25kcz50Lm1pbGxpU2Vjb25kcytyfWlzWW91bmdlclRoYW5NaWxsaVNlY29uZHModCl7bGV0IGE9bmV3IGUoKS5lcG9jaHRpbWUtdCxpPW5ldyBlKGEpO3JldHVybiB0aGlzLmlzWW91bmdlclRoYW5PdGhlclRpbWVTdGFtcChpKX19fSk7dmFyIGM2ZSxZaHQ9bCgoKT0+e18wKCk7bDZlKCk7YzZlPWNsYXNze2dldCB0aW1lTGVmdCgpe3JldHVybiB0aGlzLnRpbWVJbk1pbGxpc2Vjb25kcy10aGlzLnBhdXNlZEF0LmNoYW5nZX1jb25zdHJ1Y3Rvcih0KXt0aGlzLnN0YXRlPSJpbml0aWF0ZWQiLHRoaXMuY29tcGxldGVkRGVmZXJyZWQ9cHQuZGVmZXIoKSx0aGlzLnRpbWVJbk1pbGxpc2Vjb25kcz10LHRoaXMuY29tcGxldGVkPXRoaXMuY29tcGxldGVkRGVmZXJyZWQucHJvbWlzZX1zdGFydCgpe2lmKCF0aGlzLnN0YXJ0ZWRBdCl0aGlzLmN1cnJlbnRUaW1lb3V0PXNldFRpbWVvdXQoKCk9Pnt0aGlzLmNvbXBsZXRlZERlZmVycmVkLnJlc29sdmUoKX0sdGhpcy50aW1lSW5NaWxsaXNlY29uZHMpLHRoaXMuc3RhcnRlZEF0PW5ldyBWaDtlbHNlIHRocm93IG5ldyBFcnJvcigidGltZXIgaGFzIGJlZW4gc3RhcnRlZCBiZWZvcmUuIFBsZWFzZSB1c2UgcmVzdW1lIGluc3RlYWQiKX1wYXVzZSgpe3RoaXMuc3RhcnRlZEF0JiYoY2xlYXJUaW1lb3V0KHRoaXMuY3VycmVudFRpbWVvdXQpLHRoaXMuY3VycmVudFRpbWVvdXQ9bnVsbCx0aGlzLnBhdXNlZEF0PVZoLmZyb21UaW1lU3RhbXAodGhpcy5zdGFydGVkQXQpKX1yZXN1bWUoKXtpZih0aGlzLnN0YXJ0ZWRBdCl0aGlzLmN1cnJlbnRUaW1lb3V0PXNldFRpbWVvdXQoKCk9Pnt0aGlzLmNvbXBsZXRlZERlZmVycmVkLnJlc29sdmUoKX0sdGhpcy50aW1lTGVmdCk7ZWxzZSB0aHJvdyBuZXcgRXJyb3IoInRpbWVyIGhhcyBOT1QgYmVlbiBzdGFydGVkIGJlZm9yZS4gUGxlYXNlIHVzZSAuc3RhcnQoKSBpbnN0ZWFkIil9cmVzZXQoKXt0aGlzLnBhdXNlKCksdGhpcy5zdGFydGVkQXQ9bnVsbCx0aGlzLnBhdXNlZEF0PW51bGx9fX0pO3ZhciB0ZD17fTtxZSh0ZCx7Q3JvbkpvYjooKT0+dngsQ3Jvbk1hbmFnZXI6KCk9PnI2ZSxFeHRlbmRlZERhdGU6KCk9Pm82ZSxIcnRNZWFzdXJlbWVudDooKT0+bjZlLEludGVydmFsOigpPT5zNmUsVGltZVN0YW1wOigpPT5WaCxUaW1lcjooKT0+YzZlLGdldE1pbGxpU2Vjb25kc0FzSHVtYW5SZWFkYWJsZUFnb1RpbWU6KCk9PnFXcixnZXRNaWxsaVNlY29uZHNBc0h1bWFuUmVhZGFibGVTdHJpbmc6KCk9PkhXcixnZXRNaWxsaVNlY29uZHNGcm9tVW5pdHM6KCk9PmE2ZSx1bml0czooKT0+VDB9KTt2YXIgWmh0PWwoKCk9Pnt0NmUoKTtlNmUoKTtVaHQoKTtXaHQoKTtHaHQoKTtZaHQoKTtsNmUoKTtpNmUoKX0pO3ZhciBRaHQ9WGUoKGlzaSxYaHQpPT57InVzZSBzdHJpY3QiO1hodC5leHBvcnRzPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5wYXJlbnQ9bnVsbCx0aGlzLnByZXZpb3VzU2libGluZz1udWxsLHRoaXMubmV4dFNpYmxpbmc9bnVsbCx0aGlzLmZpcnN0Q2hpbGQ9bnVsbCx0aGlzLmxhc3RDaGlsZD1udWxsLHRoaXMuY2hpbGRyZW5WZXJzaW9uPTAsdGhpcy5jaGlsZEluZGV4Q2FjaGVkVXBUbz1udWxsLHRoaXMuY2FjaGVkSW5kZXg9LTEsdGhpcy5jYWNoZWRJbmRleFZlcnNpb249TmFOfWdldCBpc0F0dGFjaGVkKCl7cmV0dXJuISEodGhpcy5wYXJlbnR8fHRoaXMucHJldmlvdXNTaWJsaW5nfHx0aGlzLm5leHRTaWJsaW5nKX1nZXQgaGFzQ2hpbGRyZW4oKXtyZXR1cm4hIXRoaXMuZmlyc3RDaGlsZH1jaGlsZHJlbkNoYW5nZWQoKXt0aGlzLmNoaWxkcmVuVmVyc2lvbj10aGlzLmNoaWxkcmVuVmVyc2lvbisxJjQyOTQ5NjcyOTUsdGhpcy5jaGlsZEluZGV4Q2FjaGVkVXBUbz1udWxsfWdldENhY2hlZEluZGV4KHQpe3JldHVybiB0aGlzLmNhY2hlZEluZGV4VmVyc2lvbiE9PXQuY2hpbGRyZW5WZXJzaW9uPyh0aGlzLmNhY2hlZEluZGV4VmVyc2lvbj1OYU4sLTEpOnRoaXMuY2FjaGVkSW5kZXh9c2V0Q2FjaGVkSW5kZXgodCxyKXt0aGlzLmNhY2hlZEluZGV4VmVyc2lvbj10LmNoaWxkcmVuVmVyc2lvbix0aGlzLmNhY2hlZEluZGV4PXJ9fX0pO3ZhciBKaHQ9WGUoKG9zaSxLaHQpPT57InVzZSBzdHJpY3QiO0todC5leHBvcnRzPU9iamVjdC5mcmVlemUoe0RJU0NPTk5FQ1RFRDoxLFBSRUNFRElORzoyLEZPTExPV0lORzo0LENPTlRBSU5TOjgsQ09OVEFJTkVEX0JZOjE2fSl9KTt2YXIgaW10PVhlKChuc2ksYW10KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgZW10PVN5bWJvbCgpLHRtdD1TeW1ib2woKSxMMD1TeW1ib2woKSxybXQ9U3ltYm9sKCksaXM9Y2xhc3N7Y29uc3RydWN0b3IodCxyLGEsaSl7dGhpc1tlbXRdPXQsdGhpc1t0bXRdPXIsdGhpc1tMMF09YSx0aGlzW3JtdF09aX1uZXh0KCl7bGV0IHQ9dGhpc1tlbXRdLHI9dGhpc1tybXRdLGE9dGhpc1t0bXRdO2lmKCF0aGlzW0wwXSlyZXR1cm57ZG9uZTohMCx2YWx1ZTphfTtsZXQgaT10aGlzW0wwXTtyZXR1cm4gcj09PTE/dGhpc1tMMF09dC5fbm9kZShpKS5wcmV2aW91c1NpYmxpbmc6cj09PTI/dGhpc1tMMF09dC5fbm9kZShpKS5uZXh0U2libGluZzpyPT09Mz90aGlzW0wwXT10Ll9ub2RlKGkpLnBhcmVudDpyPT09ND90aGlzW0wwXT10LnByZWNlZGluZyhpLHtyb290OmF9KTp0aGlzW0wwXT10LmZvbGxvd2luZyhpLHtyb290OmF9KSx7ZG9uZTohMSx2YWx1ZTppfX19O09iamVjdC5kZWZpbmVQcm9wZXJ0eShpcy5wcm90b3R5cGUsU3ltYm9sLml0ZXJhdG9yLHt2YWx1ZTpmdW5jdGlvbigpe3JldHVybiB0aGlzfSx3cml0YWJsZTohMX0pLGlzLlBSRVY9MSxpcy5ORVhUPTIsaXMuUEFSRU5UPTMsaXMuUFJFQ0VESU5HPTQsaXMuRk9MTE9XSU5HPTUsT2JqZWN0LmZyZWV6ZShpcyksT2JqZWN0LmZyZWV6ZShpcy5wcm90b3R5cGUpLGFtdC5leHBvcnRzPWlzfSk7dmFyIG5tdD1YZSgoc3NpLG9tdCk9PnsidXNlIHN0cmljdCI7dmFyIFZXcj1RaHQoKSxEMD1KaHQoKSx5bj1pbXQoKTtmdW5jdGlvbiBkNmUoKXtyZXR1cm4hMH1mdW5jdGlvbiBVaChlLHQpe3JldHVybiBlW2UubGVuZ3RoLTEtdF19dmFyIGJKPWNsYXNze2NvbnN0cnVjdG9yKHQpe3RoaXMuc3ltYm9sPVN5bWJvbCh0fHwiU3ltYm9sVHJlZSBkYXRhIil9aW5pdGlhbGl6ZSh0KXtyZXR1cm4gdGhpcy5fbm9kZSh0KSx0fV9ub2RlKHQpe2lmKCF0KXJldHVybiBudWxsO2xldCByPXRbdGhpcy5zeW1ib2xdO3JldHVybiByfHwodFt0aGlzLnN5bWJvbF09bmV3IFZXcil9aGFzQ2hpbGRyZW4odCl7cmV0dXJuIHRoaXMuX25vZGUodCkuaGFzQ2hpbGRyZW59Zmlyc3RDaGlsZCh0KXtyZXR1cm4gdGhpcy5fbm9kZSh0KS5maXJzdENoaWxkfWxhc3RDaGlsZCh0KXtyZXR1cm4gdGhpcy5fbm9kZSh0KS5sYXN0Q2hpbGR9cHJldmlvdXNTaWJsaW5nKHQpe3JldHVybiB0aGlzLl9ub2RlKHQpLnByZXZpb3VzU2libGluZ31uZXh0U2libGluZyh0KXtyZXR1cm4gdGhpcy5fbm9kZSh0KS5uZXh0U2libGluZ31wYXJlbnQodCl7cmV0dXJuIHRoaXMuX25vZGUodCkucGFyZW50fWxhc3RJbmNsdXNpdmVEZXNjZW5kYW50KHQpe2xldCByLGE9dDtmb3IoO3I9dGhpcy5fbm9kZShhKS5sYXN0Q2hpbGQ7KWE9cjtyZXR1cm4gYX1wcmVjZWRpbmcodCxyKXtsZXQgYT1yJiZyLnJvb3Q7aWYodD09PWEpcmV0dXJuIG51bGw7bGV0IGk9dGhpcy5fbm9kZSh0KS5wcmV2aW91c1NpYmxpbmc7cmV0dXJuIGk/dGhpcy5sYXN0SW5jbHVzaXZlRGVzY2VuZGFudChpKTp0aGlzLl9ub2RlKHQpLnBhcmVudH1mb2xsb3dpbmcodCxyKXtsZXQgYT1yJiZyLnJvb3Qsbz0hKHImJnIuc2tpcENoaWxkcmVuKSYmdGhpcy5fbm9kZSh0KS5maXJzdENoaWxkO2lmKG8pcmV0dXJuIG87bGV0IG49dDtkb3tpZihuPT09YSlyZXR1cm4gbnVsbDtsZXQgcz10aGlzLl9ub2RlKG4pLm5leHRTaWJsaW5nO2lmKHMpcmV0dXJuIHM7bj10aGlzLl9ub2RlKG4pLnBhcmVudH13aGlsZShuKTtyZXR1cm4gbnVsbH1jaGlsZHJlblRvQXJyYXkodCxyKXtsZXQgYT1yJiZyLmFycmF5fHxbXSxpPXImJnIuZmlsdGVyfHxkNmUsbz1yJiZyLnRoaXNBcmd8fHZvaWQgMCxuPXRoaXMuX25vZGUodCkscz1uLmZpcnN0Q2hpbGQsYz0wO2Zvcig7czspe2xldCBkPXRoaXMuX25vZGUocyk7ZC5zZXRDYWNoZWRJbmRleChuLGMpLGkuY2FsbChvLHMpJiZhLnB1c2gocykscz1kLm5leHRTaWJsaW5nLCsrY31yZXR1cm4gYX1hbmNlc3RvcnNUb0FycmF5KHQscil7bGV0IGE9ciYmci5hcnJheXx8W10saT1yJiZyLmZpbHRlcnx8ZDZlLG89ciYmci50aGlzQXJnfHx2b2lkIDAsbj10O2Zvcig7bjspaS5jYWxsKG8sbikmJmEucHVzaChuKSxuPXRoaXMuX25vZGUobikucGFyZW50O3JldHVybiBhfXRyZWVUb0FycmF5KHQscil7bGV0IGE9ciYmci5hcnJheXx8W10saT1yJiZyLmZpbHRlcnx8ZDZlLG89ciYmci50aGlzQXJnfHx2b2lkIDAsbj10O2Zvcig7bjspaS5jYWxsKG8sbikmJmEucHVzaChuKSxuPXRoaXMuZm9sbG93aW5nKG4se3Jvb3Q6dH0pO3JldHVybiBhfWNoaWxkcmVuSXRlcmF0b3IodCxyKXtsZXQgYT1yJiZyLnJldmVyc2UsaT10aGlzLl9ub2RlKHQpO3JldHVybiBuZXcgeW4odGhpcyx0LGE/aS5sYXN0Q2hpbGQ6aS5maXJzdENoaWxkLGE/eW4uUFJFVjp5bi5ORVhUKX1wcmV2aW91c1NpYmxpbmdzSXRlcmF0b3IodCl7cmV0dXJuIG5ldyB5bih0aGlzLHQsdGhpcy5fbm9kZSh0KS5wcmV2aW91c1NpYmxpbmcseW4uUFJFVil9bmV4dFNpYmxpbmdzSXRlcmF0b3IodCl7cmV0dXJuIG5ldyB5bih0aGlzLHQsdGhpcy5fbm9kZSh0KS5uZXh0U2libGluZyx5bi5ORVhUKX1hbmNlc3RvcnNJdGVyYXRvcih0KXtyZXR1cm4gbmV3IHluKHRoaXMsdCx0LHluLlBBUkVOVCl9dHJlZUl0ZXJhdG9yKHQscil7bGV0IGE9ciYmci5yZXZlcnNlO3JldHVybiBuZXcgeW4odGhpcyx0LGE/dGhpcy5sYXN0SW5jbHVzaXZlRGVzY2VuZGFudCh0KTp0LGE/eW4uUFJFQ0VESU5HOnluLkZPTExPV0lORyl9aW5kZXgodCl7bGV0IHI9dGhpcy5fbm9kZSh0KSxhPXRoaXMuX25vZGUoci5wYXJlbnQpO2lmKCFhKXJldHVybi0xO2xldCBpPXIuZ2V0Q2FjaGVkSW5kZXgoYSk7aWYoaT49MClyZXR1cm4gaTtpPTA7bGV0IG89YS5maXJzdENoaWxkO2lmKGEuY2hpbGRJbmRleENhY2hlZFVwVG8pe2xldCBuPXRoaXMuX25vZGUoYS5jaGlsZEluZGV4Q2FjaGVkVXBUbyk7bz1uLm5leHRTaWJsaW5nLGk9bi5nZXRDYWNoZWRJbmRleChhKSsxfWZvcig7bzspe2xldCBuPXRoaXMuX25vZGUobyk7aWYobi5zZXRDYWNoZWRJbmRleChhLGkpLG89PT10KWJyZWFrOysraSxvPW4ubmV4dFNpYmxpbmd9cmV0dXJuIGEuY2hpbGRJbmRleENhY2hlZFVwVG89dCxpfWNoaWxkcmVuQ291bnQodCl7bGV0IHI9dGhpcy5fbm9kZSh0KTtyZXR1cm4gci5sYXN0Q2hpbGQ/dGhpcy5pbmRleChyLmxhc3RDaGlsZCkrMTowfWNvbXBhcmVUcmVlUG9zaXRpb24odCxyKXtpZih0PT09cilyZXR1cm4gMDtsZXQgYT1bXTt7bGV0IGY9dDtmb3IoO2Y7KXtpZihmPT09cilyZXR1cm4gRDAuQ09OVEFJTlN8RDAuUFJFQ0VESU5HO2EucHVzaChmKSxmPXRoaXMucGFyZW50KGYpfX1sZXQgaT1bXTt7bGV0IGY9cjtmb3IoO2Y7KXtpZihmPT09dClyZXR1cm4gRDAuQ09OVEFJTkVEX0JZfEQwLkZPTExPV0lORztpLnB1c2goZiksZj10aGlzLnBhcmVudChmKX19bGV0IG89VWgoYSwwKTtpZighb3x8byE9PVVoKGksMCkpcmV0dXJuIEQwLkRJU0NPTk5FQ1RFRDtsZXQgbj0wLHM9TWF0aC5taW4oYS5sZW5ndGgsaS5sZW5ndGgpO2ZvcihsZXQgZj0wO2Y8czsrK2Ype2xldCB1PVVoKGEsZikscD1VaChpLGYpO2lmKHUhPT1wKWJyZWFrO249Zn1sZXQgYz10aGlzLmluZGV4KFVoKGEsbisxKSk7cmV0dXJuIHRoaXMuaW5kZXgoVWgoaSxuKzEpKTxjP0QwLlBSRUNFRElORzpEMC5GT0xMT1dJTkd9cmVtb3ZlKHQpe2xldCByPXRoaXMuX25vZGUodCksYT10aGlzLl9ub2RlKHIucGFyZW50KSxpPXRoaXMuX25vZGUoci5wcmV2aW91c1NpYmxpbmcpLG89dGhpcy5fbm9kZShyLm5leHRTaWJsaW5nKTtyZXR1cm4gYSYmKGEuZmlyc3RDaGlsZD09PXQmJihhLmZpcnN0Q2hpbGQ9ci5uZXh0U2libGluZyksYS5sYXN0Q2hpbGQ9PT10JiYoYS5sYXN0Q2hpbGQ9ci5wcmV2aW91c1NpYmxpbmcpKSxpJiYoaS5uZXh0U2libGluZz1yLm5leHRTaWJsaW5nKSxvJiYoby5wcmV2aW91c1NpYmxpbmc9ci5wcmV2aW91c1NpYmxpbmcpLHIucGFyZW50PW51bGwsci5wcmV2aW91c1NpYmxpbmc9bnVsbCxyLm5leHRTaWJsaW5nPW51bGwsci5jYWNoZWRJbmRleD0tMSxyLmNhY2hlZEluZGV4VmVyc2lvbj1OYU4sYSYmYS5jaGlsZHJlbkNoYW5nZWQoKSx0fWluc2VydEJlZm9yZSh0LHIpe2xldCBhPXRoaXMuX25vZGUodCksaT10aGlzLl9ub2RlKGEucHJldmlvdXNTaWJsaW5nKSxvPXRoaXMuX25vZGUociksbj10aGlzLl9ub2RlKGEucGFyZW50KTtpZihvLmlzQXR0YWNoZWQpdGhyb3cgRXJyb3IoIkdpdmVuIG9iamVjdCBpcyBhbHJlYWR5IHByZXNlbnQgaW4gdGhpcyBTeW1ib2xUcmVlLCByZW1vdmUgaXQgZmlyc3QiKTtyZXR1cm4gby5wYXJlbnQ9YS5wYXJlbnQsby5wcmV2aW91c1NpYmxpbmc9YS5wcmV2aW91c1NpYmxpbmcsby5uZXh0U2libGluZz10LGEucHJldmlvdXNTaWJsaW5nPXIsaSYmKGkubmV4dFNpYmxpbmc9ciksbiYmbi5maXJzdENoaWxkPT09dCYmKG4uZmlyc3RDaGlsZD1yKSxuJiZuLmNoaWxkcmVuQ2hhbmdlZCgpLHJ9aW5zZXJ0QWZ0ZXIodCxyKXtsZXQgYT10aGlzLl9ub2RlKHQpLGk9dGhpcy5fbm9kZShhLm5leHRTaWJsaW5nKSxvPXRoaXMuX25vZGUociksbj10aGlzLl9ub2RlKGEucGFyZW50KTtpZihvLmlzQXR0YWNoZWQpdGhyb3cgRXJyb3IoIkdpdmVuIG9iamVjdCBpcyBhbHJlYWR5IHByZXNlbnQgaW4gdGhpcyBTeW1ib2xUcmVlLCByZW1vdmUgaXQgZmlyc3QiKTtyZXR1cm4gby5wYXJlbnQ9YS5wYXJlbnQsby5wcmV2aW91c1NpYmxpbmc9dCxvLm5leHRTaWJsaW5nPWEubmV4dFNpYmxpbmcsYS5uZXh0U2libGluZz1yLGkmJihpLnByZXZpb3VzU2libGluZz1yKSxuJiZuLmxhc3RDaGlsZD09PXQmJihuLmxhc3RDaGlsZD1yKSxuJiZuLmNoaWxkcmVuQ2hhbmdlZCgpLHJ9cHJlcGVuZENoaWxkKHQscil7bGV0IGE9dGhpcy5fbm9kZSh0KSxpPXRoaXMuX25vZGUocik7aWYoaS5pc0F0dGFjaGVkKXRocm93IEVycm9yKCJHaXZlbiBvYmplY3QgaXMgYWxyZWFkeSBwcmVzZW50IGluIHRoaXMgU3ltYm9sVHJlZSwgcmVtb3ZlIGl0IGZpcnN0Iik7cmV0dXJuIGEuaGFzQ2hpbGRyZW4/dGhpcy5pbnNlcnRCZWZvcmUoYS5maXJzdENoaWxkLHIpOihpLnBhcmVudD10LGEuZmlyc3RDaGlsZD1yLGEubGFzdENoaWxkPXIsYS5jaGlsZHJlbkNoYW5nZWQoKSkscn1hcHBlbmRDaGlsZCh0LHIpe2xldCBhPXRoaXMuX25vZGUodCksaT10aGlzLl9ub2RlKHIpO2lmKGkuaXNBdHRhY2hlZCl0aHJvdyBFcnJvcigiR2l2ZW4gb2JqZWN0IGlzIGFscmVhZHkgcHJlc2VudCBpbiB0aGlzIFN5bWJvbFRyZWUsIHJlbW92ZSBpdCBmaXJzdCIpO3JldHVybiBhLmhhc0NoaWxkcmVuP3RoaXMuaW5zZXJ0QWZ0ZXIoYS5sYXN0Q2hpbGQscik6KGkucGFyZW50PXQsYS5maXJzdENoaWxkPXIsYS5sYXN0Q2hpbGQ9cixhLmNoaWxkcmVuQ2hhbmdlZCgpKSxyfX07b210LmV4cG9ydHM9YkosYkouVHJlZVBvc2l0aW9uPUQwfSk7dmFyIHZKLHduPWwoKCk9PntmMCgpO0dkdCgpO0NvKCk7YTIoKTtaaHQoKTt2Sj1BcihubXQoKSwxKX0pO3ZhciB1NmUsc210PWwoKCk9Pnt3bigpO3U2ZT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuZXhlY3V0aW9uU2xvdHM9W10sdGhpcy5pc1Byb2Nlc3Npbmc9ITEsdGhpcy5ub25FeGNsdXNpdmVNYXhDb25jdXJyZW5jeT0xLzAsdGhpcy5ub25FeGNsdXNpdmVDdXJyZW50Q291bnQ9MCx0aGlzLm5vbkV4Y2x1c2l2ZVBlbmRpbmdRdWV1ZT1bXX1hc3luYyBnZXRFeGNsdXNpdmVFeGVjdXRpb25TbG90KHQscil7bGV0IGE9cHQuZGVmZXIoKSxpPXtmdW5jVG9FeGVjdXRlOnQsZXhlY3V0aW9uRGVmZXJyZWQ6YSx0aW1lb3V0OnIsbW9kZToiZXhjbHVzaXZlIn07cmV0dXJuIHRoaXMuZXhlY3V0aW9uU2xvdHMucHVzaChpKSx0aGlzLnByb2Nlc3NFeGVjdXRpb25TbG90cygpLGEucHJvbWlzZX1hc3luYyBnZXROb25FeGNsdXNpdmVFeGVjdXRpb25TbG90KHQscil7bGV0IGE9cHQuZGVmZXIoKSxpPXtmdW5jVG9FeGVjdXRlOnQsZXhlY3V0aW9uRGVmZXJyZWQ6YSx0aW1lb3V0OnIsbW9kZToibm9uZXhjbHVzaXZlIn07cmV0dXJuIHRoaXMuZXhlY3V0aW9uU2xvdHMucHVzaChpKSx0aGlzLnByb2Nlc3NFeGVjdXRpb25TbG90cygpLGEucHJvbWlzZX1zZXROb25FeGNsdXNpdmVNYXhDb25jdXJyZW5jeSh0KXtpZighTnVtYmVyLmlzRmluaXRlKHQpfHx0PDEpdGhyb3cgbmV3IEVycm9yKCJub25FeGNsdXNpdmVNYXhDb25jdXJyZW5jeSBtdXN0IGJlIGEgZmluaXRlIG51bWJlciA+PSAxIik7dGhpcy5ub25FeGNsdXNpdmVNYXhDb25jdXJyZW5jeT10fWdldE5vbkV4Y2x1c2l2ZU1heENvbmN1cnJlbmN5KCl7cmV0dXJuIHRoaXMubm9uRXhjbHVzaXZlTWF4Q29uY3VycmVuY3l9Z2V0QWN0aXZlTm9uRXhjbHVzaXZlQ291bnQoKXtyZXR1cm4gdGhpcy5ub25FeGNsdXNpdmVDdXJyZW50Q291bnR9Z2V0UGVuZGluZ05vbkV4Y2x1c2l2ZUNvdW50KCl7cmV0dXJuIHRoaXMubm9uRXhjbHVzaXZlUGVuZGluZ1F1ZXVlLmxlbmd0aH1hc3luYyBwcm9jZXNzRXhlY3V0aW9uU2xvdHMoKXtpZighdGhpcy5pc1Byb2Nlc3Npbmcpe2Zvcih0aGlzLmlzUHJvY2Vzc2luZz0hMDt0aGlzLmV4ZWN1dGlvblNsb3RzLmxlbmd0aD4wOyl7bGV0IHQ9dGhpcy5leGVjdXRpb25TbG90c1swXTtpZih0Lm1vZGU9PT0iZXhjbHVzaXZlIilhd2FpdCB0aGlzLmV4ZWN1dGVFeGNsdXNpdmVTbG90KHQpLHRoaXMuZXhlY3V0aW9uU2xvdHMuc2hpZnQoKTtlbHNle2xldCByPVtdO2Zvcig7dGhpcy5leGVjdXRpb25TbG90cy5sZW5ndGg+MCYmdGhpcy5leGVjdXRpb25TbG90c1swXS5tb2RlPT09Im5vbmV4Y2x1c2l2ZSI7KXIucHVzaCh0aGlzLmV4ZWN1dGlvblNsb3RzLnNoaWZ0KCkpO2F3YWl0IHRoaXMuZXhlY3V0ZU5vbkV4Y2x1c2l2ZVNsb3RzKHIpfX10aGlzLmlzUHJvY2Vzc2luZz0hMX19YXN5bmMgZXhlY3V0ZUV4Y2x1c2l2ZVNsb3QodCl7dHJ5e2lmKHQudGltZW91dCl7bGV0IHI9bmV3IFp0LlRpbWVvdXQodC50aW1lb3V0KTt0cnl7bGV0IGE9YXdhaXQgUHJvbWlzZS5yYWNlKFt0LmZ1bmNUb0V4ZWN1dGUoKSxyLnByb21pc2UudGhlbigoKT0+e3Rocm93IG5ldyBFcnJvcigiVGltZW91dCByZWFjaGVkIil9KV0pO3IuY2FuY2VsKCksdC5leGVjdXRpb25EZWZlcnJlZC5yZXNvbHZlKGEpfWNhdGNoKGEpe3Rocm93IHIuY2FuY2VsKCksYX19ZWxzZXtsZXQgcj1hd2FpdCB0LmZ1bmNUb0V4ZWN1dGUoKTt0LmV4ZWN1dGlvbkRlZmVycmVkLnJlc29sdmUocil9fWNhdGNoKHIpe3QuZXhlY3V0aW9uRGVmZXJyZWQucmVqZWN0KHIpfX1hc3luYyBleGVjdXRlTm9uRXhjbHVzaXZlU2xvdHModCl7bGV0IHI9dC5tYXAoYXN5bmMgYT0+e2F3YWl0IHRoaXMud2FpdEZvck5vbkV4Y2x1c2l2ZVNsb3QoKTt0cnl7aWYoYS50aW1lb3V0KXtsZXQgaT1uZXcgWnQuVGltZW91dChhLnRpbWVvdXQpO3RyeXtsZXQgbz1hd2FpdCBQcm9taXNlLnJhY2UoW2EuZnVuY1RvRXhlY3V0ZSgpLGkucHJvbWlzZS50aGVuKCgpPT57dGhyb3cgbmV3IEVycm9yKCJUaW1lb3V0IHJlYWNoZWQiKX0pXSk7aS5jYW5jZWwoKSxhLmV4ZWN1dGlvbkRlZmVycmVkLnJlc29sdmUobyl9Y2F0Y2gobyl7dGhyb3cgaS5jYW5jZWwoKSxvfX1lbHNle2xldCBpPWF3YWl0IGEuZnVuY1RvRXhlY3V0ZSgpO2EuZXhlY3V0aW9uRGVmZXJyZWQucmVzb2x2ZShpKX19Y2F0Y2goaSl7YS5leGVjdXRpb25EZWZlcnJlZC5yZWplY3QoaSl9ZmluYWxseXt0aGlzLnJlbGVhc2VOb25FeGNsdXNpdmVTbG90KCl9fSk7YXdhaXQgUHJvbWlzZS5hbGwocil9d2FpdEZvck5vbkV4Y2x1c2l2ZVNsb3QoKXtyZXR1cm4gdGhpcy5ub25FeGNsdXNpdmVDdXJyZW50Q291bnQ8dGhpcy5ub25FeGNsdXNpdmVNYXhDb25jdXJyZW5jeT8odGhpcy5ub25FeGNsdXNpdmVDdXJyZW50Q291bnQrKyxQcm9taXNlLnJlc29sdmUoKSk6bmV3IFByb21pc2UodD0+e3RoaXMubm9uRXhjbHVzaXZlUGVuZGluZ1F1ZXVlLnB1c2goKCk9Pnt0aGlzLm5vbkV4Y2x1c2l2ZUN1cnJlbnRDb3VudCsrLHQoKX0pfSl9cmVsZWFzZU5vbkV4Y2x1c2l2ZVNsb3QoKXt0aGlzLm5vbkV4Y2x1c2l2ZUN1cnJlbnRDb3VudC0tO2xldCB0PXRoaXMubm9uRXhjbHVzaXZlUGVuZGluZ1F1ZXVlLnNoaWZ0KCk7dCYmdCgpfX19KTt2YXIgZjZlLGxtdD1sKCgpPT57d24oKTtmNmU9Y2xhc3N7Y29uc3RydWN0b3IodD0xNil7dGhpcy5oYXNTcGFjZT1uZXcgJHIucnhqcy5TdWJqZWN0LHRoaXMuaXRlbXNBdmFpbGFibGU9bmV3ICRyLnJ4anMuU3ViamVjdCx0aGlzLmlzRGVzdHJveWVkPSExLHRoaXMuZGF0YT1bXSx0aGlzLmhpZ2hXYXRlck1hcms9dH1wdXNoKHQpe3RoaXMuZGF0YS5wdXNoKHQpLHRoaXMuaXRlbXNBdmFpbGFibGUubmV4dCgiaXRlbXNBdmFpbGFibGUiKTtsZXQgcj10aGlzLmNoZWNrU3BhY2VBdmFpbGFibGUoKTtyZXR1cm4gciYmdGhpcy5oYXNTcGFjZS5uZXh0KCJoYXNTcGFjZSIpLHJ9c2hpZnQoKXtsZXQgdD10aGlzLmRhdGEuc2hpZnQoKTtyZXR1cm4gdGhpcy5jaGVja1NwYWNlQXZhaWxhYmxlKCkmJnRoaXMuaGFzU3BhY2UubmV4dCgiaGFzU3BhY2UiKSx0fWNoZWNrU3BhY2VBdmFpbGFibGUoKXtyZXR1cm4gdGhpcy5kYXRhLmxlbmd0aDx0aGlzLmhpZ2hXYXRlck1hcmt9Y2hlY2tIYXNJdGVtcygpe3JldHVybiB0aGlzLmRhdGEubGVuZ3RoPjB9d2FpdEZvclNwYWNlKCl7cmV0dXJuIG5ldyBQcm9taXNlKHQ9PntpZih0aGlzLmNoZWNrU3BhY2VBdmFpbGFibGUoKXx8dGhpcy5pc0Rlc3Ryb3llZCl0KCk7ZWxzZXtsZXQgcj10aGlzLmhhc1NwYWNlLnN1YnNjcmliZSh7bmV4dDooKT0+e3IudW5zdWJzY3JpYmUoKSx0KCl9LGNvbXBsZXRlOigpPT57dCgpfX0pfX0pfXdhaXRGb3JJdGVtcygpe3JldHVybiBuZXcgUHJvbWlzZSh0PT57aWYodGhpcy5kYXRhLmxlbmd0aD4wfHx0aGlzLmlzRGVzdHJveWVkKXQoKTtlbHNle2xldCByPXRoaXMuaXRlbXNBdmFpbGFibGUuc3Vic2NyaWJlKHtuZXh0OigpPT57ci51bnN1YnNjcmliZSgpLHQoKX0sY29tcGxldGU6KCk9Pnt0KCl9fSl9fSl9ZGVzdHJveSgpe3RoaXMuaXNEZXN0cm95ZWQ9ITAsdGhpcy5oYXNTcGFjZS5jb21wbGV0ZSgpLHRoaXMuaXRlbXNBdmFpbGFibGUuY29tcGxldGUoKX19fSk7dmFyIHJkLHlKPWwoKCk9Pnt3bigpO3JkPWNsYXNzIGV7Y29uc3RydWN0b3IoKXt0aGlzLm1hcE9iamVjdD17fX1pc1VuaXF1ZUtleSh0KXtyZXR1cm4hdGhpcy5tYXBPYmplY3RbdF19YWRkVG9NYXAodCxyLGEpe3JldHVybiB0aGlzLmlzVW5pcXVlS2V5KHQpfHxhJiZhLmZvcmNlPyh0aGlzLm1hcE9iamVjdFt0XT1yLCEwKTohMX1nZXRCeUtleSh0KXtyZXR1cm4gdGhpcy5tYXBPYmplY3RbdF19cmVtb3ZlRnJvbU1hcCh0KXtsZXQgcj10aGlzLmdldEJ5S2V5KHQpO3JldHVybiBkZWxldGUgdGhpcy5tYXBPYmplY3RbdF0scn1nZXRLZXlzKCl7bGV0IHQ9W107Zm9yKGxldCByIGluIHRoaXMubWFwT2JqZWN0KXRoaXMubWFwT2JqZWN0W3JdJiZ0LnB1c2gocik7cmV0dXJuIHR9Y2xlYW4oKXt0aGlzLm1hcE9iamVjdD17fX1jb25jYXQodCl7bGV0IHI9bmV3IGU7Zm9yKGxldCBhIG9mIHRoaXMuZ2V0S2V5cygpKXIuYWRkVG9NYXAoYSx0aGlzLmdldEJ5S2V5KGEpKTtmb3IobGV0IGEgb2YgdC5nZXRLZXlzKCkpci5hZGRUb01hcChhLHQuZ2V0QnlLZXkoYSkse2ZvcmNlOiEwfSk7cmV0dXJuIHJ9YWRkQWxsRnJvbU90aGVyKHQpe2ZvcihsZXQgciBvZiB0LmdldEtleXMoKSl0aGlzLmFkZFRvTWFwKHIsdC5nZXRCeUtleShyKSx7Zm9yY2U6ITB9KX1hc3luYyBmaW5kKHQpe2ZvcihsZXQgciBvZiB0aGlzLmdldEtleXMoKSl7bGV0IGE9dGhpcy5nZXRCeUtleShyKTtpZihhd2FpdCB0KGEpKXJldHVybiBhfX19fSk7dmFyIGNtdCxFbCx5eD1sKCgpPT57d24oKTt5SigpO2NtdD0oZT0idW5pIik9PmAke2V9eHh4eHh4eHh4eHhgLnJlcGxhY2UoL1t4eV0vZyx0PT57bGV0IHI9TWF0aC5yYW5kb20oKSoxNnwwO3JldHVybih0PT09IngiP3I6ciYzfDgpLnRvU3RyaW5nKDE2KX0pLEVsPWNsYXNzIGV7Y29uc3RydWN0b3IoKXt0aGlzLmZhc3RNYXA9bmV3IHJkLHRoaXMuZXZlbnRTdWJqZWN0PW5ldyAkci5yeGpzLlN1YmplY3R9YWRkTWFwcGVkVW5pcXVlKHQscil7dGhpcy5mYXN0TWFwLmFkZFRvTWFwKHQscil9Z2V0TWFwcGVkVW5pcXVlKHQpe3JldHVybiB0aGlzLmZhc3RNYXAuZ2V0QnlLZXkodCl9cmVtb3ZlTWFwcGVkVW5pcXVlKHQpe2xldCByPXRoaXMuZmFzdE1hcC5yZW1vdmVGcm9tTWFwKHQpO3JldHVybiByIT09dm9pZCAwJiZ0aGlzLmV2ZW50U3ViamVjdC5uZXh0KHtvcGVyYXRpb246InJlbW92ZSIscGF5bG9hZDpyfSkscn1hZGQodCl7Zm9yKGxldCBhIG9mIHRoaXMuZmFzdE1hcC5nZXRLZXlzKCkpaWYodGhpcy5mYXN0TWFwLmdldEJ5S2V5KGEpPT09dClyZXR1cm4gYTtsZXQgcj1jbXQoImtleSIpO3JldHVybiB0aGlzLmFkZE1hcHBlZFVuaXF1ZShyLHQpLHRoaXMuZXZlbnRTdWJqZWN0Lm5leHQoe29wZXJhdGlvbjoiYWRkIixwYXlsb2FkOnR9KSxyfWFkZEFycmF5KHQpe2ZvcihsZXQgciBvZiB0KXRoaXMuYWRkKHIpfWNoZWNrRm9yT2JqZWN0KHQpe3JldHVybiEhdGhpcy5nZXRLZXlGb3JPYmplY3QodCl9Z2V0S2V5Rm9yT2JqZWN0KHQpe2xldCByPW51bGw7Zm9yKGxldCBhIG9mIHRoaXMuZmFzdE1hcC5nZXRLZXlzKCkpaWYoIXImJnRoaXMuZmFzdE1hcC5nZXRCeUtleShhKT09PXQpcj1hO2Vsc2UgY29udGludWU7cmV0dXJuIHJ9YXN5bmMgZmluZCh0KXtyZXR1cm4gdGhpcy5mYXN0TWFwLmZpbmQodCl9ZmluZFN5bmModCl7Zm9yKGxldCByIG9mIHRoaXMuZmFzdE1hcC5nZXRLZXlzKCkpaWYodCh0aGlzLmZhc3RNYXAuZ2V0QnlLZXkocikpKXJldHVybiB0aGlzLmdldE1hcHBlZFVuaXF1ZShyKX1hc3luYyBmaW5kT25lQW5kUmVtb3ZlKHQpe2xldCByPWF3YWl0IHRoaXMuZmluZCh0KTtyZXR1cm4gciYmdGhpcy5yZW1vdmUocikscn1maW5kT25lQW5kUmVtb3ZlU3luYyh0KXtsZXQgcj10aGlzLmZpbmRTeW5jKHQpO3JldHVybiByJiZ0aGlzLnJlbW92ZShyKSxyfWFzeW5jIGZvckVhY2godCl7Zm9yKGxldCByIG9mIHRoaXMuZmFzdE1hcC5nZXRLZXlzKCkpYXdhaXQgdCh0aGlzLmZhc3RNYXAuZ2V0QnlLZXkocikpfWdldE9uZUFuZFJlbW92ZSgpe2xldCB0PXRoaXMuZmFzdE1hcC5nZXRLZXlzKCk7aWYodC5sZW5ndGg9PT0wKXJldHVybiBudWxsO3tsZXQgcj10WzBdLGE9dGhpcy5mYXN0TWFwLnJlbW92ZUZyb21NYXAocik7cmV0dXJuIHRoaXMuZXZlbnRTdWJqZWN0Lm5leHQoe29wZXJhdGlvbjoicmVtb3ZlIixwYXlsb2FkOmF9KSxhfX1nZXRBcnJheSgpe2xldCB0PVtdO2ZvcihsZXQgciBvZiB0aGlzLmZhc3RNYXAuZ2V0S2V5cygpKXQucHVzaCh0aGlzLmZhc3RNYXAuZ2V0QnlLZXkocikpO3JldHVybiB0fWlzRW1wdHkoKXtyZXR1cm4gdGhpcy5mYXN0TWFwLmdldEtleXMoKS5sZW5ndGg9PT0wfXJlbW92ZSh0KXtpZih0aGlzLmNoZWNrRm9yT2JqZWN0KHQpKXtsZXQgcj10aGlzLmdldEtleUZvck9iamVjdCh0KSxhPXRoaXMuZmFzdE1hcC5yZW1vdmVGcm9tTWFwKHIpO3JldHVybiB0aGlzLmV2ZW50U3ViamVjdC5uZXh0KHtvcGVyYXRpb246InJlbW92ZSIscGF5bG9hZDphfSksYX1yZXR1cm4gbnVsbH13aXBlKCl7bGV0IHQ9dGhpcy5mYXN0TWFwLmdldEtleXMoKTtmb3IobGV0IHIgb2YgdCl7bGV0IGE9dGhpcy5mYXN0TWFwLnJlbW92ZUZyb21NYXAocik7dGhpcy5ldmVudFN1YmplY3QubmV4dCh7b3BlcmF0aW9uOiJyZW1vdmUiLHBheWxvYWQ6YX0pfX1jb25jYXQodCl7bGV0IHI9bmV3IGU7cmV0dXJuIHIuZmFzdE1hcC5hZGRBbGxGcm9tT3RoZXIodGhpcy5mYXN0TWFwKSxyLmZhc3RNYXAuYWRkQWxsRnJvbU90aGVyKHQuZmFzdE1hcCkscn1hZGRBbGxGcm9tT3RoZXIodCl7dGhpcy5mYXN0TWFwLmFkZEFsbEZyb21PdGhlcih0LmZhc3RNYXApfWRlc3Ryb3koKXt0aGlzLndpcGUoKSx0aGlzLmV2ZW50U3ViamVjdC5jb21wbGV0ZSgpfX19KTt2YXIgd3gscDZlPWwoKCk9Pnt3bigpO2g2ZSgpO3d4PWNsYXNze2dldCBjb21wYXJpc29uU3RyaW5nKCl7cmV0dXJuIHRoaXMuY29tcGFyaXNvbkZ1bmModGhpcy5vcmlnaW5hbEludGVyZXN0KX1mdWxsZmlsbEludGVyZXN0KHQpe3RoaXMuaXNGdWxsZmlsbGVkPSEwLHRoaXMuZnVsbGZpbGxtZW50U3RvcmU9W10sdGhpcy5pbnRlcmVzdERlZmVycmVkLnJlc29sdmUodCksdGhpcy5kZXN0cm95KCl9Y29uc3RydWN0b3IodCxyLGEsaSl7dGhpcy5kZXN0cnVjdGlvblRpbWVyPW5ldyB0ZC5UaW1lcigxZTQpLHRoaXMuaXNGdWxsZmlsbGVkPSExLHRoaXMuaXNEZXN0cm95ZWQ9ITEsdGhpcy5mdWxsZmlsbG1lbnRTdG9yZT1bXSx0aGlzLm1hcmtMb3N0VGltZW91dD1udWxsLHRoaXMuaW50ZXJlc3REZWZlcnJlZD1uZXcgcHQuRGVmZXJyZWQsdGhpcy5pbnRlcmVzdEZ1bGxmaWxsZWQ9dGhpcy5pbnRlcmVzdERlZmVycmVkLnByb21pc2UsdGhpcy5pbnRlcmVzdE1hcFJlZj10LHRoaXMub3JpZ2luYWxJbnRlcmVzdD1yLHRoaXMuY29tcGFyaXNvbkZ1bmM9YSx0aGlzLm9wdGlvbnM9aSx0aGlzLmRlc3RydWN0aW9uVGltZXIuY29tcGxldGVkLnRoZW4oKCk9Pnt0aGlzLmlzRGVzdHJveWVkfHx0aGlzLmRlc3Ryb3koKX0pLHRoaXMub3B0aW9ucz8ubWFya0xvc3RBZnRlckRlZmF1bHQmJih0aGlzLm1hcmtMb3N0VGltZW91dD1uZXcgWnQuVGltZW91dCh0aGlzLm9wdGlvbnMubWFya0xvc3RBZnRlckRlZmF1bHQpLHRoaXMubWFya0xvc3RUaW1lb3V0LnByb21pc2UudGhlbigoKT0+e3RoaXMuaXNEZXN0cm95ZWR8fHRoaXMubWFya0xvc3QoKX0pKX1kZXN0cm95KCl7dGhpcy5pc0Rlc3Ryb3llZHx8KHRoaXMuaXNEZXN0cm95ZWQ9ITAsdGhpcy5kZXN0cnVjdGlvblRpbWVyLnJlc2V0KCksdGhpcy5tYXJrTG9zdFRpbWVvdXQmJih0aGlzLm1hcmtMb3N0VGltZW91dC5jYW5jZWwoKSx0aGlzLm1hcmtMb3N0VGltZW91dD1udWxsKSx0aGlzLmZ1bGxmaWxsbWVudFN0b3JlPVtdLHRoaXMuaW50ZXJlc3RNYXBSZWYucmVtb3ZlSW50ZXJlc3QodGhpcyksIXRoaXMuaXNGdWxsZmlsbGVkJiZ0aGlzLm9wdGlvbnM/LmRlZmF1bHRGdWxsZmlsbG1lbnQmJih0aGlzLmlzRnVsbGZpbGxlZD0hMCx0aGlzLmludGVyZXN0RGVmZXJyZWQucmVzb2x2ZSh0aGlzLm9wdGlvbnMuZGVmYXVsdEZ1bGxmaWxsbWVudCkpKX1tYXJrTG9zdCgpe3RoaXMuZGVzdHJ1Y3Rpb25UaW1lci5zdGFydCgpfXJlbmV3KCl7dGhpcy5kZXN0cnVjdGlvblRpbWVyLnJlc2V0KCl9fX0pO3ZhciBtNmUsaDZlPWwoKCk9Pnt3bigpO3l4KCk7cDZlKCk7bTZlPWNsYXNze2NvbnN0cnVjdG9yKHQscj17fSl7dGhpcy5pbnRlcmVzdE9iamVjdE1hcD1uZXcgRWwsdGhpcy5pbnRlcmVzdE9ic2VydmFibGU9bmV3ICRyLk9ic2VydmFibGVJbnRha2UsdGhpcy5jb21wYXJpc29uRnVuYz10LHRoaXMub3B0aW9ucz1yfWFzeW5jIGFkZEludGVyZXN0KHQscil7bGV0IGE9dGhpcy5jb21wYXJpc29uRnVuYyh0KSxpLG89bmV3IHd4KHRoaXMsdCx0aGlzLmNvbXBhcmlzb25GdW5jLHttYXJrTG9zdEFmdGVyRGVmYXVsdDp0aGlzLm9wdGlvbnMubWFya0xvc3RBZnRlckRlZmF1bHQsZGVmYXVsdEZ1bGxmaWxsbWVudDpyfSksbj0hMTtyZXR1cm4gYXdhaXQgdGhpcy5pbnRlcmVzdE9iamVjdE1hcC5mb3JFYWNoKHM9PnshbiYmcy5jb21wYXJpc29uU3RyaW5nPT09by5jb21wYXJpc29uU3RyaW5nJiYoY29uc29sZS5sb2coImluZm8iLGBpbnRlcmVzdCBhbHJlYWR5IGV4aXN0cyBmb3IgJHtvLmNvbXBhcmlzb25TdHJpbmd9YCksbj0hMCxpPXMsaS5yZW5ldygpKX0pLGk/by5kZXN0cm95KCk6KGk9byx0aGlzLmludGVyZXN0T2JqZWN0TWFwLmFkZChpKSksdGhpcy5pbnRlcmVzdE9ic2VydmFibGUucHVzaChpKSxpfXJlbW92ZUludGVyZXN0KHQpe2xldCByPXRoaXMuaW50ZXJlc3RPYmplY3RNYXAuZmluZE9uZUFuZFJlbW92ZVN5bmMoYT0+dC5jb21wYXJpc29uU3RyaW5nPT09YS5jb21wYXJpc29uU3RyaW5nKX1jaGVja0ludGVyZXN0KHQpe2xldCByPXRoaXMuY29tcGFyaXNvbkZ1bmModCk7cmV0dXJuIHRoaXMuY2hlY2tJbnRlcmVzdEJ5U3RyaW5nKHIpfWNoZWNrSW50ZXJlc3RCeVN0cmluZyh0KXtyZXR1cm4hIXRoaXMuaW50ZXJlc3RPYmplY3RNYXAuZmluZFN5bmMoYT0+YS5jb21wYXJpc29uU3RyaW5nPT09dCl9aW5mb3JtTG9zdEludGVyZXN0KHQpe2xldCByPXRoaXMuZmluZEludGVyZXN0KHQpO3ImJnIubWFya0xvc3QoKX1maW5kSW50ZXJlc3QodCl7bGV0IHI9dGhpcy5jb21wYXJpc29uRnVuYyh0KTtyZXR1cm4gdGhpcy5pbnRlcmVzdE9iamVjdE1hcC5maW5kU3luYyhpPT5pLmNvbXBhcmlzb25TdHJpbmc9PT1yKX1kZXN0cm95KCl7bGV0IHQ9dGhpcy5pbnRlcmVzdE9iamVjdE1hcC5nZXRBcnJheSgpO2ZvcihsZXQgciBvZiB0KXIuZGVzdHJveSgpO3RoaXMuaW50ZXJlc3RPYmplY3RNYXAud2lwZSgpLHRoaXMuaW50ZXJlc3RPYnNlcnZhYmxlLnNpZ25hbENvbXBsZXRlKCl9fX0pO3ZhciBnNmUsZG10PWwoKCk9Pnt3bigpO2c2ZT1jbGFzc3tjb25zdHJ1Y3Rvcih0KXt0aGlzLmFycmF5PVtdLHRoaXMuYXJyYXlMaW1pdD10fWFkZE9uZSh0KXt0aGlzLmFycmF5LnVuc2hpZnQodCksdGhpcy5hcnJheS5sZW5ndGg+dGhpcy5hcnJheUxpbWl0JiYodGhpcy5hcnJheS5sZW5ndGg9dGhpcy5hcnJheUxpbWl0KX1hZGRNYW55KHQpe2ZvcihsZXQgciBvZiB0KXRoaXMuYWRkT25lKHIpfXNldExpbWl0KHQpe3RoaXMuYXJyYXlMaW1pdD10LHRoaXMuYXJyYXkubGVuZ3RoPnRoaXMuYXJyYXlMaW1pdCYmKHRoaXMuYXJyYXkubGVuZ3RoPXRoaXMuYXJyYXlMaW1pdCl9Z2V0QXZlcmFnZSgpe2lmKHR5cGVvZiB0aGlzLmFycmF5WzBdPT0ibnVtYmVyIil7bGV0IHQ9MDtmb3IobGV0IHIgb2YgdGhpcy5hcnJheSl0PXQrcjtyZXR1cm4gdC90aGlzLmFycmF5Lmxlbmd0aH1lbHNlIHJldHVybiBudWxsfX19KTt2YXIgeDZlLHVtdD1sKCgpPT57d24oKTt5eCgpO3g2ZT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMucmVmZXJlbmNlT2JqZWN0TWFwPW5ldyBFbH1jaGVja0FuZFRyYWNrKHQpe3JldHVybiB0aGlzLnJlZmVyZW5jZU9iamVjdE1hcC5jaGVja0Zvck9iamVjdCh0KT8hMToodGhpcy5yZWZlcmVuY2VPYmplY3RNYXAuYWRkKHQpLCEwKX1yZXNldCgpe3RoaXMucmVmZXJlbmNlT2JqZWN0TWFwLndpcGUoKX1kZXN0cm95KCl7dGhpcy5yZWZlcmVuY2VPYmplY3RNYXAuZGVzdHJveSgpfX19KTt2YXIgTXgsYjZlPWwoKCk9Pnt3bigpO014PWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5fc3RyaW5nQXJyYXk9W10sdGhpcy5fdHJpZ2dlclVudGlsVHJ1ZUZ1bmN0aW9uQXJyYXk9W119YWRkU3RyaW5nKHQpe3RoaXMuX3N0cmluZ0FycmF5LnB1c2godCksdGhpcy5ub3RpZnlUcmlnZ2VyKCl9YWRkU3RyaW5nQXJyYXkodCl7Zm9yKGxldCByIG9mIHQpdGhpcy5hZGRTdHJpbmcocil9cmVtb3ZlU3RyaW5nKHQpe2ZvcihsZXQgciBpbiB0aGlzLl9zdHJpbmdBcnJheSl0aGlzLl9zdHJpbmdBcnJheVtyXT09PXQmJnRoaXMuX3N0cmluZ0FycmF5LnNwbGljZShwYXJzZUludChyKSwxKTt0aGlzLm5vdGlmeVRyaWdnZXIoKX13aXBlKCl7dGhpcy5fc3RyaW5nQXJyYXk9W10sdGhpcy5ub3RpZnlUcmlnZ2VyKCl9Y2hlY2tTdHJpbmcodCl7cmV0dXJuIHRoaXMuX3N0cmluZ0FycmF5LmluZGV4T2YodCkhPT0tMX1jaGVja01pbmltYXRjaCh0KXtsZXQgcj1uZXcgVWcuU21hcnRNYXRjaCh0KSxhPSExO2ZvcihsZXQgaSBvZiB0aGlzLl9zdHJpbmdBcnJheSlyLm1hdGNoKGkpJiYoYT0hMCk7cmV0dXJuIGF9Y2hlY2tJc0VtcHR5KCl7cmV0dXJuIHRoaXMuX3N0cmluZ0FycmF5Lmxlbmd0aD09PTB9Z2V0U3RyaW5nQXJyYXkoKXtsZXQgdD1bXTtmb3IobGV0IHIgb2YgdGhpcy5fc3RyaW5nQXJyYXkpdC5wdXNoKHIpO3JldHVybiB0fXJlZ2lzdGVyVW50aWxUcnVlKHQscil7bGV0IGE9cHQuZGVmZXIoKTtyZXR1cm4gdGhpcy5fdHJpZ2dlclVudGlsVHJ1ZUZ1bmN0aW9uQXJyYXkucHVzaCgoKT0+e2xldCBpPXQodGhpcy5nZXRTdHJpbmdBcnJheSgpKTtyZXR1cm4gaT09PSEwJiYociYmcigpLGEucmVzb2x2ZSgpKSxpfSksdGhpcy5ub3RpZnlUcmlnZ2VyKCksYS5wcm9taXNlfW5vdGlmeVRyaWdnZXIoKXtsZXQgdD10aGlzLl90cmlnZ2VyVW50aWxUcnVlRnVuY3Rpb25BcnJheS5maWx0ZXIocj0+IXIoKSk7dGhpcy5fdHJpZ2dlclVudGlsVHJ1ZUZ1bmN0aW9uQXJyYXk9dH1kZXN0cm95KCl7dGhpcy5fc3RyaW5nQXJyYXk9W10sdGhpcy5fdHJpZ2dlclVudGlsVHJ1ZUZ1bmN0aW9uQXJyYXk9W119fX0pO3ZhciB2NmUsZm10PWwoKCk9Pnt3bigpO3Y2ZT1jbGFzc3tjb25zdHJ1Y3Rvcih0KXt0aGlzLnN0b3JhZ2VBcnJheT1bXSx0aGlzLmlzU3RvcHBlZD0hMSx0aGlzLm9wdGlvbnM9dH1jaGVja0FnZ3JlZ2F0aW9uU3RhdHVzKCl7aWYodGhpcy5pc1N0b3BwZWQpcmV0dXJuO2xldCB0PSgpPT57dGhpcy5hZ2dyZWdhdGlvblRpbWVyPW5ldyB0ZC5UaW1lcih0aGlzLm9wdGlvbnMuYWdncmVnYXRpb25JbnRlcnZhbEluTWlsbGlzKSx0aGlzLmFnZ3JlZ2F0aW9uVGltZXIuY29tcGxldGVkLnRoZW4oKCk9PntpZih0aGlzLmlzU3RvcHBlZCl7dGhpcy5hZ2dyZWdhdGlvblRpbWVyPW51bGw7cmV0dXJufWxldCByPXRoaXMuc3RvcmFnZUFycmF5O2lmKHIubGVuZ3RoPT09MCl7dGhpcy5hZ2dyZWdhdGlvblRpbWVyPW51bGw7cmV0dXJufXRoaXMuc3RvcmFnZUFycmF5PVtdLHQoKSx0aGlzLm9wdGlvbnMuZnVuY3Rpb25Gb3JBZ2dyZWdhdGlvbihyKX0pLHRoaXMuYWdncmVnYXRpb25UaW1lci5zdGFydCgpfTt0aGlzLmFnZ3JlZ2F0aW9uVGltZXJ8fHQoKX1hZGQodCl7dGhpcy5pc1N0b3BwZWR8fCh0aGlzLnN0b3JhZ2VBcnJheS5wdXNoKHQpLHRoaXMuY2hlY2tBZ2dyZWdhdGlvblN0YXR1cygpKX1zdG9wKHQ9ITEpe2lmKHRoaXMuaXNTdG9wcGVkPSEwLHRoaXMuYWdncmVnYXRpb25UaW1lciYmKHRoaXMuYWdncmVnYXRpb25UaW1lci5yZXNldCgpLHRoaXMuYWdncmVnYXRpb25UaW1lcj1udWxsKSx0JiZ0aGlzLnN0b3JhZ2VBcnJheS5sZW5ndGg+MCl7bGV0IHI9dGhpcy5zdG9yYWdlQXJyYXk7dGhpcy5zdG9yYWdlQXJyYXk9W10sdGhpcy5vcHRpb25zLmZ1bmN0aW9uRm9yQWdncmVnYXRpb24ocil9ZWxzZSB0aGlzLnN0b3JhZ2VBcnJheT1bXX19fSk7dmFyIHk2ZSxwbXQ9bCgoKT0+e3duKCk7eTZlPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5zeW1ib2xUcmVlPW5ldyB2Si5kZWZhdWx0fWluaXRpYWxpemUodCl7cmV0dXJuIHRoaXMuc3ltYm9sVHJlZS5pbml0aWFsaXplKHQpfWhhc0NoaWxkcmVuKHQpe3JldHVybiB0aGlzLnN5bWJvbFRyZWUuaGFzQ2hpbGRyZW4odCl9Zmlyc3RDaGlsZCh0KXtyZXR1cm4gdGhpcy5zeW1ib2xUcmVlLmZpcnN0Q2hpbGQodCl9bGFzdENoaWxkKHQpe3JldHVybiB0aGlzLnN5bWJvbFRyZWUubGFzdENoaWxkKHQpfXByZXZpb3VzU2libGluZyh0KXtyZXR1cm4gdGhpcy5zeW1ib2xUcmVlLnByZXZpb3VzU2libGluZyh0KX1uZXh0U2libGluZyh0KXtyZXR1cm4gdGhpcy5zeW1ib2xUcmVlLm5leHRTaWJsaW5nKHQpfXBhcmVudCh0KXtyZXR1cm4gdGhpcy5zeW1ib2xUcmVlLnBhcmVudCh0KX1sYXN0SW5jbHVzaXZlRGVzY2VuZGFudCh0KXtyZXR1cm4gdGhpcy5zeW1ib2xUcmVlLmxhc3RJbmNsdXNpdmVEZXNjZW5kYW50KHQpfXByZWNlZGluZyh0LHIpe3JldHVybiB0aGlzLnN5bWJvbFRyZWUucHJlY2VkaW5nKHQscil9Zm9sbG93aW5nKHQscil7cmV0dXJuIHRoaXMuc3ltYm9sVHJlZS5mb2xsb3dpbmcodCxyKX1jaGlsZHJlblRvQXJyYXkodCxyKXtyZXR1cm4gdGhpcy5zeW1ib2xUcmVlLmNoaWxkcmVuVG9BcnJheSh0LHIpfWFuY2VzdG9yc1RvQXJyYXkodCxyKXtyZXR1cm4gdGhpcy5zeW1ib2xUcmVlLmFuY2VzdG9yc1RvQXJyYXkodCxyKX10cmVlVG9BcnJheSh0LHIpe3JldHVybiB0aGlzLnN5bWJvbFRyZWUudHJlZVRvQXJyYXkodCxyKX1jaGlsZHJlbkl0ZXJhdG9yKHQscil7cmV0dXJuIHRoaXMuc3ltYm9sVHJlZS5jaGlsZHJlbkl0ZXJhdG9yKHQscil9cHJldmlvdXNTaWJsaW5nc0l0ZXJhdG9yKHQpe3JldHVybiB0aGlzLnN5bWJvbFRyZWUucHJldmlvdXNTaWJsaW5nc0l0ZXJhdG9yKHQpfW5leHRTaWJsaW5nc0l0ZXJhdG9yKHQpe3JldHVybiB0aGlzLnN5bWJvbFRyZWUubmV4dFNpYmxpbmdzSXRlcmF0b3IoKX1hbmNlc3RvcnNJdGVyYXRvcih0KXt0aGlzLnN5bWJvbFRyZWUuYW5jZXN0b3JzSXRlcmF0b3IoKX10cmVlSXRlcmF0b3IodCxyKXtyZXR1cm4gdGhpcy5zeW1ib2xUcmVlLnRyZWVJdGVyYXRvcih0KX1pbmRleCh0KXtyZXR1cm4gdGhpcy5zeW1ib2xUcmVlLmluZGV4KHQpfWNoaWxkcmVuQ291bnQodCl7cmV0dXJuIHRoaXMuc3ltYm9sVHJlZS5jaGlsZHJlbkNvdW50KHQpfWNvbXBhcmVUcmVlUG9zaXRpb24odCxyKXtyZXR1cm4gdGhpcy5zeW1ib2xUcmVlLmNvbXBhcmVUcmVlUG9zaXRpb24odCxyKX1yZW1vdmUodCl7cmV0dXJuIHRoaXMuc3ltYm9sVHJlZS5yZW1vdmUodCl9aW5zZXJ0QmVmb3JlKHQscil7cmV0dXJuIHRoaXMuc3ltYm9sVHJlZS5pbnNlcnRCZWZvcmUodCxyKX1pbnNlcnRBZnRlcih0LHIpe3JldHVybiB0aGlzLnN5bWJvbFRyZWUuaW5zZXJ0QWZ0ZXIodCxyKX1wcmVwZW5kQ2hpbGQodCxyKXtyZXR1cm4gdGhpcy5zeW1ib2xUcmVlLnByZXBlbmRDaGlsZCh0LHIpfWFwcGVuZENoaWxkKHQscil7cmV0dXJuIHRoaXMuc3ltYm9sVHJlZS5hcHBlbmRDaGlsZCh0LHIpfXRvSnNvbldpdGhIaWVyYWNoeSh0KXtsZXQgcj10aGlzLnRyZWVJdGVyYXRvcih0LHt9KTtmb3IobGV0IGEgb2Ygciljb25zb2xlLmxvZyhhKX1mcm9tSnNvbldpdGhIaWVyYWNoeSh0KXt9fX0pO3ZhciBDaT17fTtxZShDaSx7QXN5bmNFeGVjdXRpb25TdGFjazooKT0+dTZlLEJhY2twcmVzc3VyZWRBcnJheTooKT0+ZjZlLEZhc3RNYXA6KCk9PnJkLEludGVyZXN0OigpPT53eCxJbnRlcmVzdE1hcDooKT0+bTZlLExpbWl0ZWRBcnJheTooKT0+ZzZlLExvb3BUcmFja2VyOigpPT54NmUsT2JqZWN0TWFwOigpPT5FbCxTdHJpbmdtYXA6KCk9Pk14LFRpbWVkQWdncmVndG9yOigpPT52NmUsVHJlZTooKT0+eTZlLHVuaTooKT0+Y210fSk7dmFyIGJ4PWwoKCk9PntzbXQoKTtsbXQoKTt5SigpO2g2ZSgpO3A2ZSgpO2RtdCgpO3VtdCgpO3l4KCk7YjZlKCk7Zm10KCk7cG10KCl9KTt2YXIgJDA9e307cWUoJDAse2FyZVVpbnQ4QXJyYXlzRXF1YWw6KCk9PktXcixhc3NlcnRVaW50OEFycmF5OigpPT5FMCxhc3NlcnRVaW50OEFycmF5T3JBcnJheUJ1ZmZlcjooKT0+Ym10LGJhc2U2NFRvU3RyaW5nOigpPT5pR3IsYmFzZTY0VG9VaW50OEFycmF5OigpPT5NbXQsY29tcGFyZVVpbnQ4QXJyYXlzOigpPT5KV3IsY29uY2F0VWludDhBcnJheXM6KCk9PlFXcixnZXRVaW50QkU6KCk9PmxHcixoZXhUb1VpbnQ4QXJyYXk6KCk9PnNHcixpbmNsdWRlczooKT0+Y0dyLGluZGV4T2Y6KCk9PmttdCxpc1VpbnQ4QXJyYXk6KCk9Pnc2ZSxzdHJpbmdUb0Jhc2U2NDooKT0+YUdyLHN0cmluZ1RvVWludDhBcnJheTooKT0+eW10LHRvVWludDhBcnJheTooKT0+WFdyLHVpbnQ4QXJyYXlUb0Jhc2U2NDooKT0+d210LHVpbnQ4QXJyYXlUb0hleDooKT0+bkdyLHVpbnQ4QXJyYXlUb1N0cmluZzooKT0+dm10fSk7ZnVuY3Rpb24gaG10KGUsdCxyKXtyZXR1cm4gZT9lLmNvbnN0cnVjdG9yPT09dD8hMDpVV3IuY2FsbChlKT09PXI6ITF9ZnVuY3Rpb24gdzZlKGUpe3JldHVybiBobXQoZSxVaW50OEFycmF5LFdXcil9ZnVuY3Rpb24gWVdyKGUpe3JldHVybiBobXQoZSxBcnJheUJ1ZmZlcixHV3IpfWZ1bmN0aW9uIFpXcihlKXtyZXR1cm4gdzZlKGUpfHxZV3IoZSl9ZnVuY3Rpb24gRTAoZSl7aWYoIXc2ZShlKSl0aHJvdyBuZXcgVHlwZUVycm9yKGBFeHBlY3RlZCBcYFVpbnQ4QXJyYXlcYCwgZ290IFxgJHt0eXBlb2YgZX1cYGApfWZ1bmN0aW9uIGJtdChlKXtpZighWldyKGUpKXRocm93IG5ldyBUeXBlRXJyb3IoYEV4cGVjdGVkIFxgVWludDhBcnJheVxgIG9yIFxgQXJyYXlCdWZmZXJcYCwgZ290IFxgJHt0eXBlb2YgZX1cYGApfWZ1bmN0aW9uIFhXcihlKXtpZihlIGluc3RhbmNlb2YgQXJyYXlCdWZmZXIpcmV0dXJuIG5ldyBVaW50OEFycmF5KGUpO2lmKEFycmF5QnVmZmVyLmlzVmlldyhlKSlyZXR1cm4gbmV3IFVpbnQ4QXJyYXkoZS5idWZmZXIsZS5ieXRlT2Zmc2V0LGUuYnl0ZUxlbmd0aCk7dGhyb3cgbmV3IFR5cGVFcnJvcihgVW5zdXBwb3J0ZWQgdmFsdWUsIGdvdCBcYCR7dHlwZW9mIGV9XGAuYCl9ZnVuY3Rpb24gUVdyKGUsdCl7aWYoZS5sZW5ndGg9PT0wKXJldHVybiBuZXcgVWludDhBcnJheSgwKTt0Pz89ZS5yZWR1Y2UoKGksbyk9Pmkrby5sZW5ndGgsMCk7bGV0IHI9bmV3IFVpbnQ4QXJyYXkodCksYT0wO2ZvcihsZXQgaSBvZiBlKUUwKGkpLHIuc2V0KGksYSksYSs9aS5sZW5ndGg7cmV0dXJuIHJ9ZnVuY3Rpb24gS1dyKGUsdCl7aWYoRTAoZSksRTAodCksZT09PXQpcmV0dXJuITA7aWYoZS5sZW5ndGghPT10Lmxlbmd0aClyZXR1cm4hMTtmb3IobGV0IHI9MDtyPGUubGVuZ3RoO3IrKylpZihlW3JdIT09dFtyXSlyZXR1cm4hMTtyZXR1cm4hMH1mdW5jdGlvbiBKV3IoZSx0KXtFMChlKSxFMCh0KTtsZXQgcj1NYXRoLm1pbihlLmxlbmd0aCx0Lmxlbmd0aCk7Zm9yKGxldCBhPTA7YTxyO2ErKyl7bGV0IGk9ZVthXS10W2FdO2lmKGkhPT0wKXJldHVybiBNYXRoLnNpZ24oaSl9cmV0dXJuIE1hdGguc2lnbihlLmxlbmd0aC10Lmxlbmd0aCl9ZnVuY3Rpb24gdm10KGUsdD0idXRmOCIpe3JldHVybiBibXQoZSksbW10W3RdPz89bmV3IGdsb2JhbFRoaXMuVGV4dERlY29kZXIodCksbW10W3RdLmRlY29kZShlKX1mdW5jdGlvbiBreChlKXtpZih0eXBlb2YgZSE9InN0cmluZyIpdGhyb3cgbmV3IFR5cGVFcnJvcihgRXhwZWN0ZWQgXGBzdHJpbmdcYCwgZ290IFxgJHt0eXBlb2YgZX1cYGApfWZ1bmN0aW9uIHltdChlKXtyZXR1cm4ga3goZSksZUdyLmVuY29kZShlKX1mdW5jdGlvbiB0R3IoZSl7cmV0dXJuIGUucmVwbGFjZUFsbCgiKyIsIi0iKS5yZXBsYWNlQWxsKCIvIiwiXyIpLnJlcGxhY2UoLz0rJC8sIiIpfWZ1bmN0aW9uIHJHcihlKXtsZXQgdD1lLnJlcGxhY2VBbGwoIi0iLCIrIikucmVwbGFjZUFsbCgiXyIsIi8iKSxyPSg0LXQubGVuZ3RoJTQpJTQ7cmV0dXJuIHQrIj0iLnJlcGVhdChyKX1mdW5jdGlvbiB3bXQoZSx7dXJsU2FmZTp0PSExfT17fSl7RTAoZSk7bGV0IHI9IiI7Zm9yKGxldCBhPTA7YTxlLmxlbmd0aDthKz1nbXQpe2xldCBpPWUuc3ViYXJyYXkoYSxhK2dtdCk7cis9Z2xvYmFsVGhpcy5idG9hKFN0cmluZy5mcm9tQ29kZVBvaW50LmFwcGx5KHZvaWQgMCxpKSl9cmV0dXJuIHQ/dEdyKHIpOnJ9ZnVuY3Rpb24gTW10KGUpe3JldHVybiBreChlKSxVaW50OEFycmF5LmZyb20oZ2xvYmFsVGhpcy5hdG9iKHJHcihlKSksdD0+dC5jb2RlUG9pbnRBdCgwKSl9ZnVuY3Rpb24gYUdyKGUse3VybFNhZmU6dD0hMX09e30pe3JldHVybiBreChlKSx3bXQoeW10KGUpLHt1cmxTYWZlOnR9KX1mdW5jdGlvbiBpR3IoZSl7cmV0dXJuIGt4KGUpLHZtdChNbXQoZSkpfWZ1bmN0aW9uIG5HcihlKXtFMChlKTtsZXQgdD0iIjtmb3IobGV0IHI9MDtyPGUubGVuZ3RoO3IrKyl0Kz1vR3JbZVtyXV07cmV0dXJuIHR9ZnVuY3Rpb24gc0dyKGUpe2lmKGt4KGUpLGUubGVuZ3RoJTIhPT0wKXRocm93IG5ldyBFcnJvcigiSW52YWxpZCBIZXggc3RyaW5nIGxlbmd0aC4iKTtsZXQgdD1lLmxlbmd0aC8yLHI9bmV3IFVpbnQ4QXJyYXkodCk7Zm9yKGxldCBhPTA7YTx0O2ErKyl7bGV0IGk9eG10W2VbYSoyXV0sbz14bXRbZVthKjIrMV1dO2lmKGk9PT12b2lkIDB8fG89PT12b2lkIDApdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIEhleCBjaGFyYWN0ZXIgZW5jb3VudGVyZWQgYXQgcG9zaXRpb24gJHthKjJ9YCk7clthXT1pPDw0fG99cmV0dXJuIHJ9ZnVuY3Rpb24gbEdyKGUpe2xldHtieXRlTGVuZ3RoOnR9PWU7aWYodD09PTYpcmV0dXJuIGUuZ2V0VWludDE2KDApKjIqKjMyK2UuZ2V0VWludDMyKDIpO2lmKHQ9PT01KXJldHVybiBlLmdldFVpbnQ4KDApKjIqKjMyK2UuZ2V0VWludDMyKDEpO2lmKHQ9PT00KXJldHVybiBlLmdldFVpbnQzMigwKTtpZih0PT09MylyZXR1cm4gZS5nZXRVaW50OCgwKSoyKioxNitlLmdldFVpbnQxNigxKTtpZih0PT09MilyZXR1cm4gZS5nZXRVaW50MTYoMCk7aWYodD09PTEpcmV0dXJuIGUuZ2V0VWludDgoMCl9ZnVuY3Rpb24ga210KGUsdCl7bGV0IHI9ZS5sZW5ndGgsYT10Lmxlbmd0aDtpZihhPT09MHx8YT5yKXJldHVybi0xO2xldCBpPXItYTtmb3IobGV0IG89MDtvPD1pO28rKyl7bGV0IG49ITA7Zm9yKGxldCBzPTA7czxhO3MrKylpZihlW28rc10hPT10W3NdKXtuPSExO2JyZWFrfWlmKG4pcmV0dXJuIG99cmV0dXJuLTF9ZnVuY3Rpb24gY0dyKGUsdCl7cmV0dXJuIGttdChlLHQpIT09LTF9dmFyIFVXcixXV3IsR1dyLG1tdCxlR3IsZ210LG9Hcix4bXQsU210PWwoKCk9PntVV3I9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZyxXV3I9IltvYmplY3QgVWludDhBcnJheV0iLEdXcj0iW29iamVjdCBBcnJheUJ1ZmZlcl0iO21tdD17dXRmODpuZXcgZ2xvYmFsVGhpcy5UZXh0RGVjb2RlcigidXRmOCIpfTtlR3I9bmV3IGdsb2JhbFRoaXMuVGV4dEVuY29kZXI7Z210PTY1NTM1O29Hcj1BcnJheS5mcm9tKHtsZW5ndGg6MjU2fSwoZSx0KT0+dC50b1N0cmluZygxNikucGFkU3RhcnQoMiwiMCIpKTt4bXQ9ezA6MCwxOjEsMjoyLDM6Myw0OjQsNTo1LDY6Niw3OjcsODo4LDk6OSxhOjEwLGI6MTEsYzoxMixkOjEzLGU6MTQsZjoxNSxBOjEwLEI6MTEsQzoxMixEOjEzLEU6MTQsRjoxNX19KTt2YXIgem10PWwoKCk9PntTbXQoKX0pO3ZhciBXaD17fTtxZShXaCx7YmFzZTY0VG9VaW50OEFycmF5OigpPT5wR3IsZW5zdXJlUHVyZVVpbnQ4QXJyYXk6KCk9PmdHcixpc0J1ZmZlckxpa2U6KCk9Pm1Hcixpc1VpbnQ4QXJyYXk6KCk9PmhHcix1SW50OEFycmF5RXh0cmFzOigpPT51R3IsdUludDhBcnJheVRvQmFzZTY0OigpPT5mR3J9KTtmdW5jdGlvbiBmR3IoZSl7cmV0dXJuICQwLnVpbnQ4QXJyYXlUb0Jhc2U2NChlKX1mdW5jdGlvbiBwR3IoZSl7cmV0dXJuICQwLmJhc2U2NFRvVWludDhBcnJheShlKX1mdW5jdGlvbiBtR3IoZSl7cmV0dXJuIGUmJnR5cGVvZiBlLmJ5dGVMZW5ndGg9PSJudW1iZXIiPyEwOnR5cGVvZiBCdWZmZXI8InUiJiZCdWZmZXIuaXNCdWZmZXI/QnVmZmVyLmlzQnVmZmVyKGUpOiExfWZ1bmN0aW9uIGdHcihlKXtsZXQgdD1uZXcgVWludDhBcnJheShlLmxlbmd0aCk7cmV0dXJuIHQuc2V0KGUpLHR9dmFyIHVHcixoR3IsQ210PWwoKCk9Pnt6bXQoKTt1R3I9JDA7aEdyPWU9PiQwLmlzVWludDhBcnJheShlKX0pO3ZhciBTeD1sKCgpPT57Q28oKX0pO3ZhciB6eCx3Sj1sKCgpPT57U3goKTt6eD1jbGFzc3tjb25zdHJ1Y3Rvcih0LHIpe3RoaXMuZ3VhcmRGdW5jdGlvbj10LHRoaXMub3B0aW9ucz1yfWFzeW5jIGV4ZWModCl7cmV0dXJuIGF3YWl0IHRoaXMuZ3VhcmRGdW5jdGlvbih0KX1hc3luYyBnZXRGYWlsZWRIaW50KHQpe3JldHVybiBhd2FpdCB0aGlzLmV4ZWModCk/bnVsbDp0aGlzLm9wdGlvbnMuZmFpbGVkSGludH19fSk7dmFyIEN4LE02ZT1sKCgpPT57U3goKTtDeD1jbGFzcyBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKHQpe3N1cGVyKHQpLHRoaXMubmFtZT0iR3VhcmRFcnJvciJ9fX0pO3ZhciBfeCxrNmU9bCgoKT0+e1N4KCk7d0ooKTtfeD1jbGFzcyBleHRlbmRzIHp4e2NvbnN0cnVjdG9yKHQ9W10pe3N1cGVyKGFzeW5jIHI9PnRoaXMuYWxsR3VhcmRzUGFzcyhyKSksdGhpcy5ndWFyZHM9dH1hc3luYyBleGVjQWxsV2l0aERhdGEodCxyPXttb2RlOiJwYXJhbGxlbCIsc3RvcE9uRmFpbDohMX0pe2xldCBhPVtdO2ZvcihsZXQgbyBvZiB0aGlzLmd1YXJkcyl7bGV0IG49by5leGVjKHQpO2lmKHIubW9kZT09PSJzZXJpYWwiJiZhd2FpdCBuLGEucHVzaChuKSxyLnN0b3BPbkZhaWwmJiFhd2FpdCBuKXJldHVybiBhd2FpdCBQcm9taXNlLmFsbChhKX1yZXR1cm4gYXdhaXQgUHJvbWlzZS5hbGwoYSl9YXN5bmMgYWxsR3VhcmRzUGFzcyh0LHI9e21vZGU6InBhcmFsbGVsIixzdG9wT25GYWlsOiExfSl7cmV0dXJuKGF3YWl0IHRoaXMuZXhlY0FsbFdpdGhEYXRhKHQscikpLmV2ZXJ5KGk9PmkpfWFzeW5jIGFueUd1YXJkc1Bhc3ModCl7cmV0dXJuKGF3YWl0IHRoaXMuZXhlY0FsbFdpdGhEYXRhKHQse21vZGU6InBhcmFsbGVsIixzdG9wT25GYWlsOiExfSkpLnNvbWUoYT0+YSl9Z2V0RmFpbGVkSGludCh0KXtmb3IobGV0IHIgb2YgdGhpcy5ndWFyZHMpe2xldCBhPXIuZ2V0RmFpbGVkSGludCh0KTtpZihhKXJldHVybiBhfX19fSk7dmFyIFR4PXt9O3FlKFR4LHtHdWFyZDooKT0+engsR3VhcmRFcnJvcjooKT0+Q3gsR3VhcmRTZXQ6KCk9Pl94LHBhc3NHdWFyZHNPclJlamVjdDooKT0+eEdyfSk7dmFyIHhHcixfbXQ9bCgoKT0+e1N4KCk7d0ooKTtNNmUoKTt3SigpO2s2ZSgpO2s2ZSgpO002ZSgpO3hHcj1hc3luYyhlLHQpPT57bGV0IHI9bmV3IF94KHQpO2lmKCFhd2FpdCByLmFsbEd1YXJkc1Bhc3MoZSkpe2xldCBpPWF3YWl0IHIuZ2V0RmFpbGVkSGludChlKTt0aHJvdyBuZXcgQ3goYEd1YXJkcyBmYWlsZWQ6CiR7aX0KICAgIGApfX19KTt2YXIgR2gsUzZlPWwoKCk9PntHaD1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMucmVxdWVzdEludGVyY2VwdG9ycz1bXSx0aGlzLnJlc3BvbnNlSW50ZXJjZXB0b3JzPVtdLHRoaXMuZXJyb3JJbnRlcmNlcHRvcnM9W119YWRkUmVxdWVzdEludGVyY2VwdG9yKHQpe3RoaXMucmVxdWVzdEludGVyY2VwdG9ycy5wdXNoKHQpfWFkZFJlc3BvbnNlSW50ZXJjZXB0b3IodCl7dGhpcy5yZXNwb25zZUludGVyY2VwdG9ycy5wdXNoKHQpfWFkZEVycm9ySW50ZXJjZXB0b3IodCl7dGhpcy5lcnJvckludGVyY2VwdG9ycy5wdXNoKHQpfXJlbW92ZVJlcXVlc3RJbnRlcmNlcHRvcih0KXtsZXQgcj10aGlzLnJlcXVlc3RJbnRlcmNlcHRvcnMuaW5kZXhPZih0KTtyPi0xJiZ0aGlzLnJlcXVlc3RJbnRlcmNlcHRvcnMuc3BsaWNlKHIsMSl9cmVtb3ZlUmVzcG9uc2VJbnRlcmNlcHRvcih0KXtsZXQgcj10aGlzLnJlc3BvbnNlSW50ZXJjZXB0b3JzLmluZGV4T2YodCk7cj4tMSYmdGhpcy5yZXNwb25zZUludGVyY2VwdG9ycy5zcGxpY2UociwxKX1yZW1vdmVFcnJvckludGVyY2VwdG9yKHQpe2xldCByPXRoaXMuZXJyb3JJbnRlcmNlcHRvcnMuaW5kZXhPZih0KTtyPi0xJiZ0aGlzLmVycm9ySW50ZXJjZXB0b3JzLnNwbGljZShyLDEpfWNsZWFyQWxsKCl7dGhpcy5yZXF1ZXN0SW50ZXJjZXB0b3JzPVtdLHRoaXMucmVzcG9uc2VJbnRlcmNlcHRvcnM9W10sdGhpcy5lcnJvckludGVyY2VwdG9ycz1bXX1hc3luYyBwcm9jZXNzUmVxdWVzdCh0KXtsZXQgcj10O2ZvcihsZXQgYSBvZiB0aGlzLnJlcXVlc3RJbnRlcmNlcHRvcnMpdHJ5e3I9YXdhaXQgYShyKX1jYXRjaChpKXt0aHJvdyBhd2FpdCB0aGlzLnByb2Nlc3NFcnJvcihpIGluc3RhbmNlb2YgRXJyb3I/aTpuZXcgRXJyb3IoU3RyaW5nKGkpKSl9cmV0dXJuIHJ9YXN5bmMgcHJvY2Vzc1Jlc3BvbnNlKHQpe2xldCByPXQ7Zm9yKGxldCBhIG9mIHRoaXMucmVzcG9uc2VJbnRlcmNlcHRvcnMpdHJ5e3I9YXdhaXQgYShyKX1jYXRjaChpKXt0aHJvdyBhd2FpdCB0aGlzLnByb2Nlc3NFcnJvcihpIGluc3RhbmNlb2YgRXJyb3I/aTpuZXcgRXJyb3IoU3RyaW5nKGkpKSl9cmV0dXJuIHJ9YXN5bmMgcHJvY2Vzc0Vycm9yKHQpe2xldCByPXQ7Zm9yKGxldCBhIG9mIHRoaXMuZXJyb3JJbnRlcmNlcHRvcnMpdHJ5e3I9YXdhaXQgYShyKX1jYXRjaChpKXtyPWkgaW5zdGFuY2VvZiBFcnJvcj9pOm5ldyBFcnJvcihTdHJpbmcoaSkpfXJldHVybiByfWdldEludGVyY2VwdG9yQ291bnRzKCl7cmV0dXJue3JlcXVlc3Q6dGhpcy5yZXF1ZXN0SW50ZXJjZXB0b3JzLmxlbmd0aCxyZXNwb25zZTp0aGlzLnJlc3BvbnNlSW50ZXJjZXB0b3JzLmxlbmd0aCxlcnJvcjp0aGlzLmVycm9ySW50ZXJjZXB0b3JzLmxlbmd0aH19fX0pO3ZhciBUbXQ9bCgoKT0+e0NvKCl9KTt2YXIgTG10PWwoKCk9Pnt9KTt2YXIgejZlLERtdD1sKCgpPT57VG10KCk7TG10KCk7ejZlPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5sb2FkZWRTY3JpcHRzPVtdfWFzeW5jIGdldEVudkF3YXJlTW9kdWxlKHQpe2lmKHRoaXMuaXNOb2RlKXJldHVybiBhd2FpdCB0aGlzLmdldFNhZmVOb2RlTW9kdWxlKHQubm9kZU1vZHVsZU5hbWUpO2lmKHRoaXMuaXNCcm93c2VyKXJldHVybiBhd2FpdCB0aGlzLmdldFNhZmVXZWJNb2R1bGUodC53ZWJVcmxBcmcsdC5nZXRGdW5jdGlvbik7Y29uc29sZS5lcnJvcigicGxhdGZvcm0gZm9yIGxvYWRpbmcgbm90IHN1cHBvcnRlZCBieSBzbWFydGVudiIpfWFzeW5jIGdldFNhZmVOb2RlTW9kdWxlKHQscil7aWYoIXRoaXMuaXNOb2RlJiYhdGhpcy5pc0Rlbm8mJiF0aGlzLmlzQnVuKXtjb25zb2xlLmVycm9yKGBZb3UgdHJpZWQgdG8gbG9hZCBhIHNlcnZlciBtb2R1bGUgaW4gYSB3cm9uZyBjb250ZXh0OiAke3R9LiBUaGlzIGRvZXMgbm90IHRocm93LmApO3JldHVybn1sZXQgYT1hd2FpdCBuZXcgRnVuY3Rpb24oYHJldHVybiBpbXBvcnQoJyR7dH0nKWApKCk7cmV0dXJuIHImJmF3YWl0IHIoYSksYX1hc3luYyBnZXRTYWZlV2ViTW9kdWxlKHQscil7aWYoIXRoaXMuaXNCcm93c2VyKXtjb25zb2xlLmVycm9yKCJZb3UgdHJpZWQgdG8gbG9hZCBhIHdlYiBtb2R1bGUgaW4gYSB3cm9uZyBjb250ZXh0Iik7cmV0dXJufWlmKHRoaXMubG9hZGVkU2NyaXB0cy5pbmNsdWRlcyh0KSlyZXR1cm4gcigpO3RoaXMubG9hZGVkU2NyaXB0cy5wdXNoKHQpO2xldCBhPXB0LmRlZmVyKCk7aWYoZ2xvYmFsVGhpcy5pbXBvcnRTY3JpcHRzKWdsb2JhbFRoaXMuaW1wb3J0U2NyaXB0cyh0KSxhLnJlc29sdmUoKTtlbHNle2xldCBpPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpO2kub25sb2FkPSgpPT57YS5yZXNvbHZlKCl9LGkuc3JjPXQsZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChpKX1yZXR1cm4gYXdhaXQgYS5wcm9taXNlLHIoKX1nZXQgcnVudGltZUVudigpe3JldHVybiB0eXBlb2YgZ2xvYmFsVGhpcy5EZW5vPCJ1IiYmdHlwZW9mIGdsb2JhbFRoaXMuRGVubz8udmVyc2lvbjwidSI/ImRlbm8iOnR5cGVvZiBnbG9iYWxUaGlzLkJ1bjwidSImJnR5cGVvZiBnbG9iYWxUaGlzLkJ1bj8udmVyc2lvbjwidSI/ImJ1biI6dHlwZW9mIGdsb2JhbFRoaXMucHJvY2VzczwidSImJnR5cGVvZiBnbG9iYWxUaGlzLnByb2Nlc3M/LnZlcnNpb25zPy5ub2RlPCJ1Ij8ibm9kZSI6KHR5cGVvZiBnbG9iYWxUaGlzLndpbmRvdzwidSImJnR5cGVvZiBnbG9iYWxUaGlzLmRvY3VtZW50PCJ1IiwiYnJvd3NlciIpfWdldCBpc0Jyb3dzZXIoKXtyZXR1cm4gdGhpcy5ydW50aW1lRW52PT09ImJyb3dzZXIifWdldCBpc05vZGUoKXtyZXR1cm4gdGhpcy5ydW50aW1lRW52PT09Im5vZGUifWdldCBpc0Rlbm8oKXtyZXR1cm4gdGhpcy5ydW50aW1lRW52PT09ImRlbm8ifWdldCBpc0J1bigpe3JldHVybiB0aGlzLnJ1bnRpbWVFbnY9PT0iYnVuIn1nZXQgdXNlckFnZW50KCl7cmV0dXJuIHRoaXMuaXNCcm93c2VyP25hdmlnYXRvci51c2VyQWdlbnQ6InVuZGVmaW5lZCJ9Z2V0IG5vZGVWZXJzaW9uKCl7cmV0dXJuIHRoaXMuaXNOb2RlP3Byb2Nlc3MudmVyc2lvbjoidW5kZWZpbmVkIn1nZXQgZGVub1ZlcnNpb24oKXtyZXR1cm4gdGhpcy5pc0Rlbm8/Z2xvYmFsVGhpcy5EZW5vLnZlcnNpb24uZGVubzoidW5kZWZpbmVkIn1nZXQgYnVuVmVyc2lvbigpe3JldHVybiB0aGlzLmlzQnVuP2dsb2JhbFRoaXMuQnVuLnZlcnNpb246InVuZGVmaW5lZCJ9YXN5bmMgZ2V0U2FmZU1vZHVsZUZvcih0LHIsYSl7bGV0IGk7aWYoQXJyYXkuaXNBcnJheSh0KT9pPXQuZmxhdE1hcChvPT5vPT09InNlcnZlciI/WyJub2RlIiwiZGVubyIsImJ1biJdOltvXSk6dD09PSJzZXJ2ZXIiP2k9WyJub2RlIiwiZGVubyIsImJ1biJdOmk9W3RdLCFpLmluY2x1ZGVzKHRoaXMucnVudGltZUVudikpe2NvbnNvbGUud2FybihgTW9kdWxlICIke3J9IiByZXF1ZXN0ZWQgZm9yIHJ1bnRpbWUocykgWyR7aS5qb2luKCIsICIpfV0gYnV0IGN1cnJlbnQgcnVudGltZSBpcyAiJHt0aGlzLnJ1bnRpbWVFbnZ9Ii4gU2tpcHBpbmcgbG9hZC5gKTtyZXR1cm59aWYodGhpcy5pc05vZGV8fHRoaXMuaXNEZW5vfHx0aGlzLmlzQnVuKXJldHVybiBhd2FpdCB0aGlzLmdldFNhZmVOb2RlTW9kdWxlKHIpO2lmKHRoaXMuaXNCcm93c2VyKXtpZighYSl7Y29uc29sZS5lcnJvcihgQnJvd3NlciBtb2R1bGUgbG9hZCByZXF1aXJlcyBnZXRGdW5jdGlvbiBwYXJhbWV0ZXIgZm9yICIke3J9ImApO3JldHVybn1yZXR1cm4gYXdhaXQgdGhpcy5nZXRTYWZlV2ViTW9kdWxlKHIsYSl9fWdldCBpc0NJKCl7cmV0dXJuIHRoaXMuaXNOb2RlPyEhcHJvY2Vzcy5lbnYuQ0k6ITF9YXN5bmMgaXNNYWNBc3luYygpe3JldHVybiB0aGlzLmlzTm9kZT8oYXdhaXQgdGhpcy5nZXRTYWZlTm9kZU1vZHVsZSgib3MiKSkucGxhdGZvcm0oKT09PSJkYXJ3aW4iOiExfWFzeW5jIGlzV2luZG93c0FzeW5jKCl7cmV0dXJuIHRoaXMuaXNOb2RlPyhhd2FpdCB0aGlzLmdldFNhZmVOb2RlTW9kdWxlKCJvcyIpKS5wbGF0Zm9ybSgpPT09IndpbjMyIjohMX1hc3luYyBpc0xpbnV4QXN5bmMoKXtyZXR1cm4gdGhpcy5pc05vZGU/KGF3YWl0IHRoaXMuZ2V0U2FmZU5vZGVNb2R1bGUoIm9zIikpLnBsYXRmb3JtKCk9PT0ibGludXgiOiExfWFzeW5jIHByaW50RW52KCl7dGhpcy5pc05vZGU/KGNvbnNvbGUubG9nKCJydW5uaW5nIG9uIE5PREUiKSxjb25zb2xlLmxvZygibm9kZSB2ZXJzaW9uIGlzICIrdGhpcy5ub2RlVmVyc2lvbikpOnRoaXMuaXNEZW5vPyhjb25zb2xlLmxvZygicnVubmluZyBvbiBERU5PIiksY29uc29sZS5sb2coImRlbm8gdmVyc2lvbiBpcyAiK3RoaXMuZGVub1ZlcnNpb24pKTp0aGlzLmlzQnVuPyhjb25zb2xlLmxvZygicnVubmluZyBvbiBCVU4iKSxjb25zb2xlLmxvZygiYnVuIHZlcnNpb24gaXMgIit0aGlzLmJ1blZlcnNpb24pKTooY29uc29sZS5sb2coInJ1bm5pbmcgb24gQlJPV1NFUiIpLGNvbnNvbGUubG9nKCJicm93c2VyIGlzICIrdGhpcy51c2VyQWdlbnQpKX19fSk7dmFyIEx4PXt9O3FlKEx4LHtTbWFydGVudjooKT0+ejZlfSk7dmFyIEM2ZT1sKCgpPT57RG10KCl9KTt2YXIgXzZlLFloPWwoKCk9PntfNmU9QXIoYlgoKSwxKX0pO3ZhciBNSj17fTtxZShNSix7Y3JlYXRlQ3J5cHRvUmFuZG9tU3RyaW5nOigpPT5rR3IsY3JlYXRlUmFuZG9tU3RyaW5nOigpPT5NR3J9KTt2YXIgeUdyLHdHcixNR3Isa0dyLEFtdD1sKCgpPT57WWgoKTt5R3I9KGUsdCk9PntpZih0eXBlb2YgZ2xvYmFsVGhpczwidSImJmdsb2JhbFRoaXMuY3J5cHRvJiZnbG9iYWxUaGlzLmNyeXB0by5nZXRSYW5kb21WYWx1ZXMpe2xldCByPXQtZSxhPW5ldyBVaW50MzJBcnJheSgxKTtyZXR1cm4gZ2xvYmFsVGhpcy5jcnlwdG8uZ2V0UmFuZG9tVmFsdWVzKGEpLGUrYVswXSVyfWVsc2UgcmV0dXJuIE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSoodC1lKSkrZX0sd0dyPShlLHQscik9PntsZXQgYT17QToiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVoiLGE6ImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6IiwwOiIwMTIzNDU2Nzg5IiwiISI6IiFAIyQlXiYqKClfKy09W117fXw7OiwuPD4/IiwiKiI6IkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5IUAjJCVeJiooKV8rLT1bXXt9fDs6LC48Pj8ifSxpPWU7dCYmdD5lLmxlbmd0aD9pPWUucmVwZWF0KE1hdGguY2VpbCh0L2UubGVuZ3RoKSkuc2xpY2UoMCx0KTp0JiYoaT1lLnNsaWNlKDAsdCkpO2xldCBvPSIiO2ZvcihsZXQgbiBvZiBpKWlmKGFbbl0pe2xldCBzPWFbbl0sYz15R3IoMCxzLmxlbmd0aCk7bys9c1tjXX1lbHNlIG8rPW47cmV0dXJuIG99LE1Hcj0oZSx0LHIpPT53R3IoZSx0LHIpLGtHcj0oKT0+XzZlLnVuaSgpfSk7dmFyIGtKPXt9O3FlKGtKLHttYWtlRW52T2JqZWN0OigpPT5TR3J9KTt2YXIgU0dyLEVtdD1sKCgpPT57WWgoKTtTR3I9ZnVuY3Rpb24oZSl7bGV0IHQ9e30scj0vKC4qKT0oLiopLztpZih0eXBlb2YgZTwidSIpZm9yKGxldCBhIGluIGUpe2xldCBpPXIuZXhlYyhlW2FdKTt0W2lbMV1dPWlbMl19cmV0dXJuIHR9fSk7dmFyIFNKPXt9O3FlKFNKLHtpbmRlbnQ6KCk9PkNHcixpbmRlbnRXaXRoUHJlZml4OigpPT5fR3Isbm9ybWFsaXplOigpPT5UR3J9KTt2YXIgVDZlLEw2ZSx6R3IsQ0dyLF9HcixUR3IsJG10PWwoKCk9PntZaCgpO1Q2ZT1lPT57bGV0IHQ9ZS5zcGxpdChgCmApO3JldHVybiB6R3IodCl9LEw2ZT1lPT57bGV0IHQ9IiI7Zm9yKGxldCByIG9mIGUpdD10K3IrYApgO3JldHVybiB0fSx6R3I9ZT0+e2xldCB0PS9eW1xzXSokLztyZXR1cm4gdC50ZXN0KGVbMF0pJiZlLnNoaWZ0KCksdC50ZXN0KGVbZS5sZW5ndGgtMV0pJiZlLnBvcCgpLGV9LENHcj0oZSx0KT0+e2xldCByPVQ2ZShlKTtmb3IobGV0IGkgb2YgcilpPSIgIi5yZXBlYXQodCkraTtyZXR1cm4gTDZlKHIpfSxfR3I9KGUsdCk9PntsZXQgcixhPVQ2ZShlKSxpPVtdO2ZvcihsZXQgbyBvZiBhKWkucHVzaCh0K28pO3JldHVybiByPUw2ZShpKSxyfSxUR3I9ZT0+e2xldCB0LHI9VDZlKGUpLGEsaT0vXihccyopLyxvPS9eKFxzKikkLztmb3IobGV0IHMgb2Ygcil7bGV0IGM9aS5leGVjKHMpWzFdOyh0eXBlb2YgYT4idSJ8fGMubGVuZ3RoPGEpJiYhby50ZXN0KHMpJiYoYT1jLmxlbmd0aCl9bGV0IG49W107Zm9yKGxldCBzIG9mIHIpbi5wdXNoKHMuc3Vic3RyKGEpKTtyZXR1cm4gdD1MNmUobiksdH19KTt2YXIgeko9e307cWUoekose3JlcGxhY2VBbGw6KCk9PlBtdCxzdGFuZGFyZDooKT0+REdyfSk7dmFyIFBtdCxMR3IsREdyLEltdD1sKCgpPT57UG10PShlLHQscik9PmUucmVwbGFjZShuZXcgUmVnRXhwKHQsImciKSxyKSxMR3I9ZT0+e2xldCB0PWUuc3BsaXQoYApgKSxyPTEvMDtmb3IobGV0IGEgb2YgdClpZihhLnRyaW0oKS5sZW5ndGg+MCl7bGV0IGk9YS5tYXRjaCgvXihccyopLyk7aSYmKHI9TWF0aC5taW4ocixpWzFdLmxlbmd0aCkpfXJldHVybiByPT09MS8wfHxyPT09MD9lOnQubWFwKGE9PmEubGVuZ3RoPj1yP2Euc2xpY2Uocik6YSkuam9pbihgCmApfSxER3I9KGUsdCk9PntsZXQgcj1lO3JldHVybighdHx8dC5zdHJpcEluZGVudCkmJihyPUxHcihyKSksKCF0fHx0Lm5vcm1hbGl6ZU5ld2xpbmUpJiYocj1yLnJlcGxhY2UoL1xyXG4vZyxgCmApKSwoIXR8fHQucmVwbGFjZVRhYnMpJiYocj1QbXQociwiCS8iLCIgIikpLCghdHx8dC5zdHJpcExlYWRpbmdUcmFpbGluZ0VtcHR5TGluZXMpJiYocj1yLnJlcGxhY2UoL15ccypbXHJcbl0vZ20sIiIpLnJlcGxhY2UoL1xzKltcclxuXSQvZ20sIiIpKSwoIXR8fHQuc3RyaXBBbGxFbXB0eUxpbmVzKSYmKHI9ci5yZXBsYWNlKC9eXHMqW1xyXG5dL2dtLCIiKSkscn19KTt2YXIgRDZlLENKLFpoLEE2ZT1sKCgpPT57RDZlPXtlbmNvZGU6ZT0+e2lmKHR5cGVvZiBCdWZmZXI8InUiKXJldHVybiBCdWZmZXIuZnJvbShlLCJ1dGY4IikudG9TdHJpbmcoImJhc2U2NCIpO2lmKHR5cGVvZiBidG9hPCJ1Iil7bGV0IHQ9bmV3IFRleHRFbmNvZGVyKCkuZW5jb2RlKGUpLHI9QXJyYXkuZnJvbSh0LGE9PlN0cmluZy5mcm9tQ2hhckNvZGUoYSkpLmpvaW4oIiIpO3JldHVybiBidG9hKHIpfWVsc2V7bGV0IHQ9IkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky8iLHI9bmV3IFRleHRFbmNvZGVyKCkuZW5jb2RlKGUpLGE9IiIsaT0wO2Zvcig7aTxyLmxlbmd0aDspe2xldCBvPXJbaSsrXSxuPWk8ci5sZW5ndGg/cltpKytdOjAscz1pPHIubGVuZ3RoP3JbaSsrXTowLGM9bzw8MTZ8bjw8OHxzO2ErPXQuY2hhckF0KGM+PjE4JjYzKSxhKz10LmNoYXJBdChjPj4xMiY2MyksYSs9aS0yPHIubGVuZ3RoP3QuY2hhckF0KGM+PjYmNjMpOiI9IixhKz1pLTE8ci5sZW5ndGg/dC5jaGFyQXQoYyY2Myk6Ij0ifXJldHVybiBhfX0sZGVjb2RlOmU9PntsZXQgdD1lLnJlcGxhY2UoLy0vZywiKyIpLnJlcGxhY2UoL18vZywiLyIpLnBhZEVuZChlLmxlbmd0aCsoNC1lLmxlbmd0aCU0KSU0LCI9Iik7aWYodHlwZW9mIEJ1ZmZlcjwidSIpcmV0dXJuIEJ1ZmZlci5mcm9tKHQsImJhc2U2NCIpLnRvU3RyaW5nKCJ1dGY4Iik7aWYodHlwZW9mIGF0b2I8InUiKXtsZXQgcj1hdG9iKHQpLGE9bmV3IFVpbnQ4QXJyYXkoci5sZW5ndGgpO2ZvcihsZXQgaT0wO2k8ci5sZW5ndGg7aSsrKWFbaV09ci5jaGFyQ29kZUF0KGkpO3JldHVybiBuZXcgVGV4dERlY29kZXIoKS5kZWNvZGUoYSl9ZWxzZXtsZXQgcj0iQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLyIsYT1bXSxpPTA7Zm9yKDtpPHQubGVuZ3RoOyl7bGV0IG89ci5pbmRleE9mKHQuY2hhckF0KGkrKykpLG49ci5pbmRleE9mKHQuY2hhckF0KGkrKykpLHM9ci5pbmRleE9mKHQuY2hhckF0KGkrKykpLGM9ci5pbmRleE9mKHQuY2hhckF0KGkrKykpLGQ9bzw8MTh8bjw8MTJ8czw8NnxjO2EucHVzaChkPj4xNiYyNTUpLHMhPT02NCYmYS5wdXNoKGQ+PjgmMjU1KSxjIT09NjQmJmEucHVzaChkJjI1NSl9cmV0dXJuIG5ldyBUZXh0RGVjb2RlcigpLmRlY29kZShuZXcgVWludDhBcnJheShhKSl9fX0sQ0o9Y2xhc3N7Y29uc3RydWN0b3IodCxyKXtzd2l0Y2gocil7Y2FzZSJzdHJpbmciOnRoaXMucmVmU3RyaW5nPXQ7YnJlYWs7Y2FzZSJiYXNlNjQiOnRoaXMucmVmU3RyaW5nPVpoLmRlY29kZSh0KTticmVhaztjYXNlImJhc2U2NHVyaSI6dGhpcy5yZWZTdHJpbmc9WmguZGVjb2RlKHQpfX1nZXQgc2ltcGxlU3RyaW5nKCl7cmV0dXJuIHRoaXMucmVmU3RyaW5nfWdldCBiYXNlNjRTdHJpbmcoKXtyZXR1cm4gWmguZW5jb2RlKHRoaXMucmVmU3RyaW5nKX1nZXQgYmFzZTY0VXJpU3RyaW5nKCl7cmV0dXJuIFpoLmVuY29kZVVyaSh0aGlzLnJlZlN0cmluZyl9fSxaaD17ZW5jb2RlOmU9PkQ2ZS5lbmNvZGUoZSksZW5jb2RlVXJpOmU9PkQ2ZS5lbmNvZGUoZSkucmVwbGFjZSgvXCsvZywiLSIpLnJlcGxhY2UoL1wvL2csIl8iKS5yZXBsYWNlKC89L2csIiIpLGRlY29kZTplPT5ENmUuZGVjb2RlKGUpLGlzQmFzZTY0OmU9Pi9eKFtBLVphLXowLTkrL117NH0pKihbQS1aYS16MC05Ky9dezN9PXxbQS1aYS16MC05Ky9dezJ9PT0pPyQvLnRlc3QoZSl9fSk7dmFyIF9KPXt9O3FlKF9KLHtpc0Jhc2U2NDooKT0+RUdyLGlzVXRmODooKT0+QUdyfSk7dmFyIEFHcixFR3IsTm10PWwoKCk9PntZaCgpO0E2ZSgpO0FHcj1lPT57bGV0IHI9bmV3IFRleHRFbmNvZGVyKCkuZW5jb2RlKGUpLGE9MDtmb3IoO2E8ci5sZW5ndGg7KXtpZihyW2FdPT09OXx8clthXT09PTEwfHxyW2FdPT09MTN8fDMyPD1yW2FdJiZyW2FdPD0xMjYpe2ErPTE7Y29udGludWV9aWYoMTk0PD1yW2FdJiZyW2FdPD0yMjMmJjEyODw9clthKzFdJiZyW2ErMV08PTE5MSl7YSs9Mjtjb250aW51ZX1pZihyW2FdPT09MjI0JiYxNjA8PXJbYSsxXSYmclthKzFdPD0xOTEmJjEyODw9clthKzJdJiZyW2ErMl08PTE5MXx8KDIyNTw9clthXSYmclthXTw9MjM2fHxyW2FdPT09MjM4fHxyW2FdPT09MjM5KSYmMTI4PD1yW2ErMV0mJnJbYSsxXTw9MTkxJiYxMjg8PXJbYSsyXSYmclthKzJdPD0xOTF8fHJbYV09PT0yMzcmJjEyODw9clthKzFdJiZyW2ErMV08PTE1OSYmMTI4PD1yW2ErMl0mJnJbYSsyXTw9MTkxKXthKz0zO2NvbnRpbnVlfWlmKHJbYV09PT0yNDAmJjE0NDw9clthKzFdJiZyW2ErMV08PTE5MSYmMTI4PD1yW2ErMl0mJnJbYSsyXTw9MTkxJiYxMjg8PXJbYSszXSYmclthKzNdPD0xOTF8fDI0MTw9clthXSYmclthXTw9MjQzJiYxMjg8PXJbYSsxXSYmclthKzFdPD0xOTEmJjEyODw9clthKzJdJiZyW2ErMl08PTE5MSYmMTI4PD1yW2ErM10mJnJbYSszXTw9MTkxfHxyW2FdPT09MjQ0JiYxMjg8PXJbYSsxXSYmclthKzFdPD0xNDMmJjEyODw9clthKzJdJiZyW2ErMl08PTE5MSYmMTI4PD1yW2ErM10mJnJbYSszXTw9MTkxKXthKz00O2NvbnRpbnVlfXJldHVybiExfXJldHVybiEwfSxFR3I9ZT0+e2xldCB0PS9bXkEtWjAtOStcLz1dL2kscj1lLmxlbmd0aDtpZighcnx8ciU0IT09MHx8dC50ZXN0KGUpKXJldHVybiExO2xldCBhPWUuaW5kZXhPZigiPSIpO3JldHVybiBhPT09LTF8fGE9PT1yLTF8fGE9PT1yLTImJmVbci0xXT09PSI9In19KTt2YXIgVEosRm10PWwoKCk9PntUSj1jbGFzc3tjb25zdHJ1Y3Rvcih0KXt0aGlzLnByb3RvY29sPXRoaXMuX3Byb3RvY29sUmVnZXgodCksdGhpcy5wcm90b2NvbHx8KHQ9YGh0dHBzOi8vJHt0fWApLHRoaXMubm9kZVBhcnNlZFVybD1uZXcgVVJMKHQpLHRoaXMucG9ydD10aGlzLm5vZGVQYXJzZWRVcmwucG9ydDtsZXQgcj10aGlzLl9kb21haW5SZWdleCh0LnJlcGxhY2UodGhpcy5ub2RlUGFyc2VkVXJsLnBhdGhuYW1lLCIiKSk7dGhpcy5mdWxsTmFtZT0iIjtmb3IobGV0IGE9MTthPD01O2ErKylpZihyW2EtMV0pe2xldCBpPXJbYS0xXTt0aGlzWyJsZXZlbCIrYS50b1N0cmluZygpXT1pLHRoaXMuZnVsbE5hbWU9PT0iIj90aGlzLmZ1bGxOYW1lPWk6dGhpcy5mdWxsTmFtZT1pKyIuIit0aGlzLmZ1bGxOYW1lfWVsc2UgdGhpc1sibGV2ZWwiK2EudG9TdHJpbmcoKV09dm9pZCAwO3RoaXMuem9uZU5hbWU9dGhpcy5sZXZlbDIrIi4iK3RoaXMubGV2ZWwxLHRoaXMudG9wTGV2ZWw9dGhpcy5sZXZlbDEsdGhpcy5kb21haW5OYW1lPXRoaXMubGV2ZWwyLHRoaXMuc3ViRG9tYWluPXRoaXMubGV2ZWwzfV9kb21haW5SZWdleCh0KXtsZXQgYT0vKFthLXpBLVowLTlcLVxfXSopXC57MCwxfShbYS16QS1aMC05XC1cX10qKVwuezAsMX0oW2EtekEtWjAtOVwtXF9dKilcLnswLDF9KFthLXpBLVowLTlcLVxfXSopXC57MCwxfShbYS16QS1aMC05XC1cX10qKVwuezAsMX0kLy5leGVjKHQpO3JldHVybiBhLnJldmVyc2UoKSxhLnBvcCgpLGEuZmlsdGVyKGZ1bmN0aW9uKG8pe3JldHVybiBvIT09IiJ9KX1fcHJvdG9jb2xSZWdleCh0KXtsZXQgYT0vXihbYS16QS1aMC05XSopOlwvXC8vLmV4ZWModCk7aWYoYSlyZXR1cm4gYVsxXX1fcG9ydFJlZ2V4KHQpe2xldCBhPS9eKFthLXpBLVowLTldKik6XC9cLy8uZXhlYyh0KTtpZihhKXJldHVybiBhWzFdfX19KTt2YXIgTEosJEdyLE9tdCxSbXQ9bCgoKT0+e1loKCk7TEo9Y2xhc3N7Y29uc3RydWN0b3IodCxyKXtsZXQgYT0kR3IodCk7dGhpcy5ob3N0PWFbMV0sdGhpcy51c2VyPWFbMl0sdGhpcy5yZXBvPWFbM10sdGhpcy5hY2Nlc3NUb2tlbj1yLHRoaXMuc3NoVXJsPU9tdCh0aGlzLmhvc3QsdGhpcy51c2VyLHRoaXMucmVwbyx0aGlzLmFjY2Vzc1Rva2VuLCJzc2giKSx0aGlzLmh0dHBzVXJsPU9tdCh0aGlzLmhvc3QsdGhpcy51c2VyLHRoaXMucmVwbyx0aGlzLmFjY2Vzc1Rva2VuLCJodHRwcyIpfX0sJEdyPWZ1bmN0aW9uKGUpe3JldHVybi8oW2EtekEtWjAtOVwtX1wuXSopKD86XC98XDopKFthLXpBLVowLTlcLV9cLl0qKSg/OlwvKShbYS16QS1aMC05XC1fXC5dKikoPzpcLmdpdCkvLmV4ZWMoZSl9LE9tdD1mdW5jdGlvbihlLHQscixhPSIiLGkpe2xldCBvO3N3aXRjaChhIT09IiImJihhPWErIkAiKSxpKXtjYXNlImh0dHBzIjpvPSJodHRwczovLyIrYStlKyIvIit0KyIvIityKyIuZ2l0IjticmVhaztjYXNlInNzaCI6bz0iZ2l0QCIrZSsiOiIrdCsiLyIrcisiLmdpdCI7YnJlYWs7ZGVmYXVsdDpjb25zb2xlLmVycm9yKCJMaW5rIFR5cGUgIitpKyIgbm90IGtub3duIik7YnJlYWt9cmV0dXJuIG99fSk7dmFyIEExPXt9O3FlKEExLHtCYXNlNjQ6KCk9PkNKLERvbWFpbjooKT0+VEosR2l0UmVwbzooKT0+TEosYmFzZTY0OigpPT5aaCxjcmVhdGU6KCk9Pk1KLGRvY2tlcjooKT0+a0osaW5kZW50OigpPT5TSixub3JtYWxpemU6KCk9PnpKLHR5cGU6KCk9Pl9KfSk7dmFyIER4PWwoKCk9PntBbXQoKTtFbXQoKTskbXQoKTtJbXQoKTtObXQoKTtBNmUoKTtGbXQoKTtSbXQoKX0pO3ZhciBXNmU9WGUoKCR4LEpoKT0+e3ZhciBQR3I9MjAwLEJtdD0iX19sb2Rhc2hfaGFzaF91bmRlZmluZWRfXyIsSG10PTkwMDcxOTkyNTQ3NDA5OTEsRTZlPSJbb2JqZWN0IEFyZ3VtZW50c10iLElHcj0iW29iamVjdCBBcnJheV0iLHFtdD0iW29iamVjdCBCb29sZWFuXSIsam10PSJbb2JqZWN0IERhdGVdIixOR3I9IltvYmplY3QgRXJyb3JdIiwkNmU9IltvYmplY3QgRnVuY3Rpb25dIixWbXQ9IltvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dIixESj0iW29iamVjdCBNYXBdIixVbXQ9IltvYmplY3QgTnVtYmVyXSIsUDZlPSJbb2JqZWN0IE9iamVjdF0iLFdtdD0iW29iamVjdCBQcm9taXNlXSIsR210PSJbb2JqZWN0IFJlZ0V4cF0iLEFKPSJbb2JqZWN0IFNldF0iLFltdD0iW29iamVjdCBTdHJpbmddIixabXQ9IltvYmplY3QgU3ltYm9sXSIsSTZlPSJbb2JqZWN0IFdlYWtNYXBdIixYbXQ9IltvYmplY3QgQXJyYXlCdWZmZXJdIixFSj0iW29iamVjdCBEYXRhVmlld10iLFFtdD0iW29iamVjdCBGbG9hdDMyQXJyYXldIixLbXQ9IltvYmplY3QgRmxvYXQ2NEFycmF5XSIsSm10PSJbb2JqZWN0IEludDhBcnJheV0iLGU3dD0iW29iamVjdCBJbnQxNkFycmF5XSIsdDd0PSJbb2JqZWN0IEludDMyQXJyYXldIixyN3Q9IltvYmplY3QgVWludDhBcnJheV0iLGE3dD0iW29iamVjdCBVaW50OENsYW1wZWRBcnJheV0iLGk3dD0iW29iamVjdCBVaW50MTZBcnJheV0iLG83dD0iW29iamVjdCBVaW50MzJBcnJheV0iLEZHcj0vW1xcXiQuKis/KClbXF17fXxdL2csT0dyPS9cdyokLyxSR3I9L15cW29iamVjdCAuKz9Db25zdHJ1Y3RvclxdJC8sQkdyPS9eKD86MHxbMS05XVxkKikkLyxtYT17fTttYVtFNmVdPW1hW0lHcl09bWFbWG10XT1tYVtFSl09bWFbcW10XT1tYVtqbXRdPW1hW1FtdF09bWFbS210XT1tYVtKbXRdPW1hW2U3dF09bWFbdDd0XT1tYVtESl09bWFbVW10XT1tYVtQNmVdPW1hW0dtdF09bWFbQUpdPW1hW1ltdF09bWFbWm10XT1tYVtyN3RdPW1hW2E3dF09bWFbaTd0XT1tYVtvN3RdPSEwLG1hW05Hcl09bWFbJDZlXT1tYVtJNmVdPSExO3ZhciBIR3I9dHlwZW9mIGdsb2JhbD09Im9iamVjdCImJmdsb2JhbCYmZ2xvYmFsLk9iamVjdD09PU9iamVjdCYmZ2xvYmFsLHFHcj10eXBlb2Ygc2VsZj09Im9iamVjdCImJnNlbGYmJnNlbGYuT2JqZWN0PT09T2JqZWN0JiZzZWxmLCRsPUhHcnx8cUdyfHxGdW5jdGlvbigicmV0dXJuIHRoaXMiKSgpLG43dD10eXBlb2YgJHg9PSJvYmplY3QiJiYkeCYmISR4Lm5vZGVUeXBlJiYkeCxzN3Q9bjd0JiZ0eXBlb2YgSmg9PSJvYmplY3QiJiZKaCYmIUpoLm5vZGVUeXBlJiZKaCxqR3I9czd0JiZzN3QuZXhwb3J0cz09PW43dDtmdW5jdGlvbiBWR3IoZSx0KXtyZXR1cm4gZS5zZXQodFswXSx0WzFdKSxlfWZ1bmN0aW9uIFVHcihlLHQpe3JldHVybiBlLmFkZCh0KSxlfWZ1bmN0aW9uIFdHcihlLHQpe2Zvcih2YXIgcj0tMSxhPWU/ZS5sZW5ndGg6MDsrK3I8YSYmdChlW3JdLHIsZSkhPT0hMTspO3JldHVybiBlfWZ1bmN0aW9uIEdHcihlLHQpe2Zvcih2YXIgcj0tMSxhPXQubGVuZ3RoLGk9ZS5sZW5ndGg7KytyPGE7KWVbaStyXT10W3JdO3JldHVybiBlfWZ1bmN0aW9uIGw3dChlLHQscixhKXt2YXIgaT0tMSxvPWU/ZS5sZW5ndGg6MDtmb3IoYSYmbyYmKHI9ZVsrK2ldKTsrK2k8bzspcj10KHIsZVtpXSxpLGUpO3JldHVybiByfWZ1bmN0aW9uIFlHcihlLHQpe2Zvcih2YXIgcj0tMSxhPUFycmF5KGUpOysrcjxlOylhW3JdPXQocik7cmV0dXJuIGF9ZnVuY3Rpb24gWkdyKGUsdCl7cmV0dXJuIGU/Llt0XX1mdW5jdGlvbiBjN3QoZSl7dmFyIHQ9ITE7aWYoZSE9bnVsbCYmdHlwZW9mIGUudG9TdHJpbmchPSJmdW5jdGlvbiIpdHJ5e3Q9ISEoZSsiIil9Y2F0Y2h7fXJldHVybiB0fWZ1bmN0aW9uIGQ3dChlKXt2YXIgdD0tMSxyPUFycmF5KGUuc2l6ZSk7cmV0dXJuIGUuZm9yRWFjaChmdW5jdGlvbihhLGkpe3JbKyt0XT1baSxhXX0pLHJ9ZnVuY3Rpb24gTjZlKGUsdCl7cmV0dXJuIGZ1bmN0aW9uKHIpe3JldHVybiBlKHQocikpfX1mdW5jdGlvbiB1N3QoZSl7dmFyIHQ9LTEscj1BcnJheShlLnNpemUpO3JldHVybiBlLmZvckVhY2goZnVuY3Rpb24oYSl7clsrK3RdPWF9KSxyfXZhciBYR3I9QXJyYXkucHJvdG90eXBlLFFHcj1GdW5jdGlvbi5wcm90b3R5cGUsJEo9T2JqZWN0LnByb3RvdHlwZSxGNmU9JGxbIl9fY29yZS1qc19zaGFyZWRfXyJdLGY3dD0oZnVuY3Rpb24oKXt2YXIgZT0vW14uXSskLy5leGVjKEY2ZSYmRjZlLmtleXMmJkY2ZS5rZXlzLklFX1BST1RPfHwiIik7cmV0dXJuIGU/IlN5bWJvbChzcmMpXzEuIitlOiIifSkoKSxwN3Q9UUdyLnRvU3RyaW5nLFAwPSRKLmhhc093blByb3BlcnR5LFBKPSRKLnRvU3RyaW5nLEtHcj1SZWdFeHAoIl4iK3A3dC5jYWxsKFAwKS5yZXBsYWNlKEZHciwiXFwkJiIpLnJlcGxhY2UoL2hhc093blByb3BlcnR5fChmdW5jdGlvbikuKj8oPz1cXFwoKXwgZm9yIC4rPyg/PVxcXF0pL2csIiQxLio/IikrIiQiKSxoN3Q9akdyPyRsLkJ1ZmZlcjp2b2lkIDAsbTd0PSRsLlN5bWJvbCxnN3Q9JGwuVWludDhBcnJheSxKR3I9TjZlKE9iamVjdC5nZXRQcm90b3R5cGVPZixPYmplY3QpLGVZcj1PYmplY3QuY3JlYXRlLHRZcj0kSi5wcm9wZXJ0eUlzRW51bWVyYWJsZSxyWXI9WEdyLnNwbGljZSx4N3Q9T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyxhWXI9aDd0P2g3dC5pc0J1ZmZlcjp2b2lkIDAsaVlyPU42ZShPYmplY3Qua2V5cyxPYmplY3QpLE82ZT1LaCgkbCwiRGF0YVZpZXciKSxBeD1LaCgkbCwiTWFwIiksUjZlPUtoKCRsLCJQcm9taXNlIiksQjZlPUtoKCRsLCJTZXQiKSxINmU9S2goJGwsIldlYWtNYXAiKSxFeD1LaChPYmplY3QsImNyZWF0ZSIpLG9Zcj1vZChPNmUpLG5Zcj1vZChBeCksc1lyPW9kKFI2ZSksbFlyPW9kKEI2ZSksY1lyPW9kKEg2ZSksYjd0PW03dD9tN3QucHJvdG90eXBlOnZvaWQgMCx2N3Q9Yjd0P2I3dC52YWx1ZU9mOnZvaWQgMDtmdW5jdGlvbiBhZChlKXt2YXIgdD0tMSxyPWU/ZS5sZW5ndGg6MDtmb3IodGhpcy5jbGVhcigpOysrdDxyOyl7dmFyIGE9ZVt0XTt0aGlzLnNldChhWzBdLGFbMV0pfX1mdW5jdGlvbiBkWXIoKXt0aGlzLl9fZGF0YV9fPUV4P0V4KG51bGwpOnt9fWZ1bmN0aW9uIHVZcihlKXtyZXR1cm4gdGhpcy5oYXMoZSkmJmRlbGV0ZSB0aGlzLl9fZGF0YV9fW2VdfWZ1bmN0aW9uIGZZcihlKXt2YXIgdD10aGlzLl9fZGF0YV9fO2lmKEV4KXt2YXIgcj10W2VdO3JldHVybiByPT09Qm10P3ZvaWQgMDpyfXJldHVybiBQMC5jYWxsKHQsZSk/dFtlXTp2b2lkIDB9ZnVuY3Rpb24gcFlyKGUpe3ZhciB0PXRoaXMuX19kYXRhX187cmV0dXJuIEV4P3RbZV0hPT12b2lkIDA6UDAuY2FsbCh0LGUpfWZ1bmN0aW9uIGhZcihlLHQpe3ZhciByPXRoaXMuX19kYXRhX187cmV0dXJuIHJbZV09RXgmJnQ9PT12b2lkIDA/Qm10OnQsdGhpc31hZC5wcm90b3R5cGUuY2xlYXI9ZFlyLGFkLnByb3RvdHlwZS5kZWxldGU9dVlyLGFkLnByb3RvdHlwZS5nZXQ9ZllyLGFkLnByb3RvdHlwZS5oYXM9cFlyLGFkLnByb3RvdHlwZS5zZXQ9aFlyO2Z1bmN0aW9uIFBsKGUpe3ZhciB0PS0xLHI9ZT9lLmxlbmd0aDowO2Zvcih0aGlzLmNsZWFyKCk7Kyt0PHI7KXt2YXIgYT1lW3RdO3RoaXMuc2V0KGFbMF0sYVsxXSl9fWZ1bmN0aW9uIG1Zcigpe3RoaXMuX19kYXRhX189W119ZnVuY3Rpb24gZ1lyKGUpe3ZhciB0PXRoaXMuX19kYXRhX18scj1JSih0LGUpO2lmKHI8MClyZXR1cm4hMTt2YXIgYT10Lmxlbmd0aC0xO3JldHVybiByPT1hP3QucG9wKCk6cllyLmNhbGwodCxyLDEpLCEwfWZ1bmN0aW9uIHhZcihlKXt2YXIgdD10aGlzLl9fZGF0YV9fLHI9SUoodCxlKTtyZXR1cm4gcjwwP3ZvaWQgMDp0W3JdWzFdfWZ1bmN0aW9uIGJZcihlKXtyZXR1cm4gSUoodGhpcy5fX2RhdGFfXyxlKT4tMX1mdW5jdGlvbiB2WXIoZSx0KXt2YXIgcj10aGlzLl9fZGF0YV9fLGE9SUoocixlKTtyZXR1cm4gYTwwP3IucHVzaChbZSx0XSk6clthXVsxXT10LHRoaXN9UGwucHJvdG90eXBlLmNsZWFyPW1ZcixQbC5wcm90b3R5cGUuZGVsZXRlPWdZcixQbC5wcm90b3R5cGUuZ2V0PXhZcixQbC5wcm90b3R5cGUuaGFzPWJZcixQbC5wcm90b3R5cGUuc2V0PXZZcjtmdW5jdGlvbiBYaChlKXt2YXIgdD0tMSxyPWU/ZS5sZW5ndGg6MDtmb3IodGhpcy5jbGVhcigpOysrdDxyOyl7dmFyIGE9ZVt0XTt0aGlzLnNldChhWzBdLGFbMV0pfX1mdW5jdGlvbiB5WXIoKXt0aGlzLl9fZGF0YV9fPXtoYXNoOm5ldyBhZCxtYXA6bmV3KEF4fHxQbCksc3RyaW5nOm5ldyBhZH19ZnVuY3Rpb24gd1lyKGUpe3JldHVybiBOSih0aGlzLGUpLmRlbGV0ZShlKX1mdW5jdGlvbiBNWXIoZSl7cmV0dXJuIE5KKHRoaXMsZSkuZ2V0KGUpfWZ1bmN0aW9uIGtZcihlKXtyZXR1cm4gTkoodGhpcyxlKS5oYXMoZSl9ZnVuY3Rpb24gU1lyKGUsdCl7cmV0dXJuIE5KKHRoaXMsZSkuc2V0KGUsdCksdGhpc31YaC5wcm90b3R5cGUuY2xlYXI9eVlyLFhoLnByb3RvdHlwZS5kZWxldGU9d1lyLFhoLnByb3RvdHlwZS5nZXQ9TVlyLFhoLnByb3RvdHlwZS5oYXM9a1lyLFhoLnByb3RvdHlwZS5zZXQ9U1lyO2Z1bmN0aW9uIFFoKGUpe3RoaXMuX19kYXRhX189bmV3IFBsKGUpfWZ1bmN0aW9uIHpZcigpe3RoaXMuX19kYXRhX189bmV3IFBsfWZ1bmN0aW9uIENZcihlKXtyZXR1cm4gdGhpcy5fX2RhdGFfXy5kZWxldGUoZSl9ZnVuY3Rpb24gX1lyKGUpe3JldHVybiB0aGlzLl9fZGF0YV9fLmdldChlKX1mdW5jdGlvbiBUWXIoZSl7cmV0dXJuIHRoaXMuX19kYXRhX18uaGFzKGUpfWZ1bmN0aW9uIExZcihlLHQpe3ZhciByPXRoaXMuX19kYXRhX187aWYociBpbnN0YW5jZW9mIFBsKXt2YXIgYT1yLl9fZGF0YV9fO2lmKCFBeHx8YS5sZW5ndGg8UEdyLTEpcmV0dXJuIGEucHVzaChbZSx0XSksdGhpcztyPXRoaXMuX19kYXRhX189bmV3IFhoKGEpfXJldHVybiByLnNldChlLHQpLHRoaXN9UWgucHJvdG90eXBlLmNsZWFyPXpZcixRaC5wcm90b3R5cGUuZGVsZXRlPUNZcixRaC5wcm90b3R5cGUuZ2V0PV9ZcixRaC5wcm90b3R5cGUuaGFzPVRZcixRaC5wcm90b3R5cGUuc2V0PUxZcjtmdW5jdGlvbiBEWXIoZSx0KXt2YXIgcj1WNmUoZSl8fGVacihlKT9ZR3IoZS5sZW5ndGgsU3RyaW5nKTpbXSxhPXIubGVuZ3RoLGk9ISFhO2Zvcih2YXIgbyBpbiBlKSh0fHxQMC5jYWxsKGUsbykpJiYhKGkmJihvPT0ibGVuZ3RoInx8WFlyKG8sYSkpKSYmci5wdXNoKG8pO3JldHVybiByfWZ1bmN0aW9uIHk3dChlLHQscil7dmFyIGE9ZVt0XTsoIShQMC5jYWxsKGUsdCkmJlM3dChhLHIpKXx8cj09PXZvaWQgMCYmISh0IGluIGUpKSYmKGVbdF09cil9ZnVuY3Rpb24gSUooZSx0KXtmb3IodmFyIHI9ZS5sZW5ndGg7ci0tOylpZihTN3QoZVtyXVswXSx0KSlyZXR1cm4gcjtyZXR1cm4tMX1mdW5jdGlvbiBBWXIoZSx0KXtyZXR1cm4gZSYmdzd0KHQsVTZlKHQpLGUpfWZ1bmN0aW9uIHE2ZShlLHQscixhLGksbyxuKXt2YXIgcztpZihhJiYocz1vP2EoZSxpLG8sbik6YShlKSkscyE9PXZvaWQgMClyZXR1cm4gcztpZighRkooZSkpcmV0dXJuIGU7dmFyIGM9VjZlKGUpO2lmKGMpe2lmKHM9R1lyKGUpLCF0KXJldHVybiBWWXIoZSxzKX1lbHNle3ZhciBkPWlkKGUpLGY9ZD09JDZlfHxkPT1WbXQ7aWYoclpyKGUpKXJldHVybiBGWXIoZSx0KTtpZihkPT1QNmV8fGQ9PUU2ZXx8ZiYmIW8pe2lmKGM3dChlKSlyZXR1cm4gbz9lOnt9O2lmKHM9WVlyKGY/e306ZSksIXQpcmV0dXJuIFVZcihlLEFZcihzLGUpKX1lbHNle2lmKCFtYVtkXSlyZXR1cm4gbz9lOnt9O3M9WllyKGUsZCxxNmUsdCl9fW58fChuPW5ldyBRaCk7dmFyIHU9bi5nZXQoZSk7aWYodSlyZXR1cm4gdTtpZihuLnNldChlLHMpLCFjKXZhciBwPXI/V1lyKGUpOlU2ZShlKTtyZXR1cm4gV0dyKHB8fGUsZnVuY3Rpb24oaCxiKXtwJiYoYj1oLGg9ZVtiXSkseTd0KHMsYixxNmUoaCx0LHIsYSxiLGUsbikpfSksc31mdW5jdGlvbiBFWXIoZSl7cmV0dXJuIEZKKGUpP2VZcihlKTp7fX1mdW5jdGlvbiAkWXIoZSx0LHIpe3ZhciBhPXQoZSk7cmV0dXJuIFY2ZShlKT9hOkdHcihhLHIoZSkpfWZ1bmN0aW9uIFBZcihlKXtyZXR1cm4gUEouY2FsbChlKX1mdW5jdGlvbiBJWXIoZSl7aWYoIUZKKGUpfHxLWXIoZSkpcmV0dXJuITE7dmFyIHQ9Qzd0KGUpfHxjN3QoZSk/S0dyOlJHcjtyZXR1cm4gdC50ZXN0KG9kKGUpKX1mdW5jdGlvbiBOWXIoZSl7aWYoIWs3dChlKSlyZXR1cm4gaVlyKGUpO3ZhciB0PVtdO2Zvcih2YXIgciBpbiBPYmplY3QoZSkpUDAuY2FsbChlLHIpJiZyIT0iY29uc3RydWN0b3IiJiZ0LnB1c2gocik7cmV0dXJuIHR9ZnVuY3Rpb24gRllyKGUsdCl7aWYodClyZXR1cm4gZS5zbGljZSgpO3ZhciByPW5ldyBlLmNvbnN0cnVjdG9yKGUubGVuZ3RoKTtyZXR1cm4gZS5jb3B5KHIpLHJ9ZnVuY3Rpb24gajZlKGUpe3ZhciB0PW5ldyBlLmNvbnN0cnVjdG9yKGUuYnl0ZUxlbmd0aCk7cmV0dXJuIG5ldyBnN3QodCkuc2V0KG5ldyBnN3QoZSkpLHR9ZnVuY3Rpb24gT1lyKGUsdCl7dmFyIHI9dD9qNmUoZS5idWZmZXIpOmUuYnVmZmVyO3JldHVybiBuZXcgZS5jb25zdHJ1Y3RvcihyLGUuYnl0ZU9mZnNldCxlLmJ5dGVMZW5ndGgpfWZ1bmN0aW9uIFJZcihlLHQscil7dmFyIGE9dD9yKGQ3dChlKSwhMCk6ZDd0KGUpO3JldHVybiBsN3QoYSxWR3IsbmV3IGUuY29uc3RydWN0b3IpfWZ1bmN0aW9uIEJZcihlKXt2YXIgdD1uZXcgZS5jb25zdHJ1Y3RvcihlLnNvdXJjZSxPR3IuZXhlYyhlKSk7cmV0dXJuIHQubGFzdEluZGV4PWUubGFzdEluZGV4LHR9ZnVuY3Rpb24gSFlyKGUsdCxyKXt2YXIgYT10P3IodTd0KGUpLCEwKTp1N3QoZSk7cmV0dXJuIGw3dChhLFVHcixuZXcgZS5jb25zdHJ1Y3Rvcil9ZnVuY3Rpb24gcVlyKGUpe3JldHVybiB2N3Q/T2JqZWN0KHY3dC5jYWxsKGUpKTp7fX1mdW5jdGlvbiBqWXIoZSx0KXt2YXIgcj10P2o2ZShlLmJ1ZmZlcik6ZS5idWZmZXI7cmV0dXJuIG5ldyBlLmNvbnN0cnVjdG9yKHIsZS5ieXRlT2Zmc2V0LGUubGVuZ3RoKX1mdW5jdGlvbiBWWXIoZSx0KXt2YXIgcj0tMSxhPWUubGVuZ3RoO2Zvcih0fHwodD1BcnJheShhKSk7KytyPGE7KXRbcl09ZVtyXTtyZXR1cm4gdH1mdW5jdGlvbiB3N3QoZSx0LHIsYSl7cnx8KHI9e30pO2Zvcih2YXIgaT0tMSxvPXQubGVuZ3RoOysraTxvOyl7dmFyIG49dFtpXSxzPWE/YShyW25dLGVbbl0sbixyLGUpOnZvaWQgMDt5N3QocixuLHM9PT12b2lkIDA/ZVtuXTpzKX1yZXR1cm4gcn1mdW5jdGlvbiBVWXIoZSx0KXtyZXR1cm4gdzd0KGUsTTd0KGUpLHQpfWZ1bmN0aW9uIFdZcihlKXtyZXR1cm4gJFlyKGUsVTZlLE03dCl9ZnVuY3Rpb24gTkooZSx0KXt2YXIgcj1lLl9fZGF0YV9fO3JldHVybiBRWXIodCk/clt0eXBlb2YgdD09InN0cmluZyI/InN0cmluZyI6Imhhc2giXTpyLm1hcH1mdW5jdGlvbiBLaChlLHQpe3ZhciByPVpHcihlLHQpO3JldHVybiBJWXIocik/cjp2b2lkIDB9dmFyIE03dD14N3Q/TjZlKHg3dCxPYmplY3QpOm9acixpZD1QWXI7KE82ZSYmaWQobmV3IE82ZShuZXcgQXJyYXlCdWZmZXIoMSkpKSE9RUp8fEF4JiZpZChuZXcgQXgpIT1ESnx8UjZlJiZpZChSNmUucmVzb2x2ZSgpKSE9V210fHxCNmUmJmlkKG5ldyBCNmUpIT1BSnx8SDZlJiZpZChuZXcgSDZlKSE9STZlKSYmKGlkPWZ1bmN0aW9uKGUpe3ZhciB0PVBKLmNhbGwoZSkscj10PT1QNmU/ZS5jb25zdHJ1Y3Rvcjp2b2lkIDAsYT1yP29kKHIpOnZvaWQgMDtpZihhKXN3aXRjaChhKXtjYXNlIG9ZcjpyZXR1cm4gRUo7Y2FzZSBuWXI6cmV0dXJuIERKO2Nhc2Ugc1lyOnJldHVybiBXbXQ7Y2FzZSBsWXI6cmV0dXJuIEFKO2Nhc2UgY1lyOnJldHVybiBJNmV9cmV0dXJuIHR9KTtmdW5jdGlvbiBHWXIoZSl7dmFyIHQ9ZS5sZW5ndGgscj1lLmNvbnN0cnVjdG9yKHQpO3JldHVybiB0JiZ0eXBlb2YgZVswXT09InN0cmluZyImJlAwLmNhbGwoZSwiaW5kZXgiKSYmKHIuaW5kZXg9ZS5pbmRleCxyLmlucHV0PWUuaW5wdXQpLHJ9ZnVuY3Rpb24gWVlyKGUpe3JldHVybiB0eXBlb2YgZS5jb25zdHJ1Y3Rvcj09ImZ1bmN0aW9uIiYmIWs3dChlKT9FWXIoSkdyKGUpKTp7fX1mdW5jdGlvbiBaWXIoZSx0LHIsYSl7dmFyIGk9ZS5jb25zdHJ1Y3Rvcjtzd2l0Y2godCl7Y2FzZSBYbXQ6cmV0dXJuIGo2ZShlKTtjYXNlIHFtdDpjYXNlIGptdDpyZXR1cm4gbmV3IGkoK2UpO2Nhc2UgRUo6cmV0dXJuIE9ZcihlLGEpO2Nhc2UgUW10OmNhc2UgS210OmNhc2UgSm10OmNhc2UgZTd0OmNhc2UgdDd0OmNhc2Ugcjd0OmNhc2UgYTd0OmNhc2UgaTd0OmNhc2Ugbzd0OnJldHVybiBqWXIoZSxhKTtjYXNlIERKOnJldHVybiBSWXIoZSxhLHIpO2Nhc2UgVW10OmNhc2UgWW10OnJldHVybiBuZXcgaShlKTtjYXNlIEdtdDpyZXR1cm4gQllyKGUpO2Nhc2UgQUo6cmV0dXJuIEhZcihlLGEscik7Y2FzZSBabXQ6cmV0dXJuIHFZcihlKX19ZnVuY3Rpb24gWFlyKGUsdCl7cmV0dXJuIHQ9dD8/SG10LCEhdCYmKHR5cGVvZiBlPT0ibnVtYmVyInx8QkdyLnRlc3QoZSkpJiZlPi0xJiZlJTE9PTAmJmU8dH1mdW5jdGlvbiBRWXIoZSl7dmFyIHQ9dHlwZW9mIGU7cmV0dXJuIHQ9PSJzdHJpbmcifHx0PT0ibnVtYmVyInx8dD09InN5bWJvbCJ8fHQ9PSJib29sZWFuIj9lIT09Il9fcHJvdG9fXyI6ZT09PW51bGx9ZnVuY3Rpb24gS1lyKGUpe3JldHVybiEhZjd0JiZmN3QgaW4gZX1mdW5jdGlvbiBrN3QoZSl7dmFyIHQ9ZSYmZS5jb25zdHJ1Y3RvcixyPXR5cGVvZiB0PT0iZnVuY3Rpb24iJiZ0LnByb3RvdHlwZXx8JEo7cmV0dXJuIGU9PT1yfWZ1bmN0aW9uIG9kKGUpe2lmKGUhPW51bGwpe3RyeXtyZXR1cm4gcDd0LmNhbGwoZSl9Y2F0Y2h7fXRyeXtyZXR1cm4gZSsiIn1jYXRjaHt9fXJldHVybiIifWZ1bmN0aW9uIEpZcihlKXtyZXR1cm4gcTZlKGUsITAsITApfWZ1bmN0aW9uIFM3dChlLHQpe3JldHVybiBlPT09dHx8ZSE9PWUmJnQhPT10fWZ1bmN0aW9uIGVacihlKXtyZXR1cm4gdFpyKGUpJiZQMC5jYWxsKGUsImNhbGxlZSIpJiYoIXRZci5jYWxsKGUsImNhbGxlZSIpfHxQSi5jYWxsKGUpPT1FNmUpfXZhciBWNmU9QXJyYXkuaXNBcnJheTtmdW5jdGlvbiB6N3QoZSl7cmV0dXJuIGUhPW51bGwmJmFacihlLmxlbmd0aCkmJiFDN3QoZSl9ZnVuY3Rpb24gdFpyKGUpe3JldHVybiBpWnIoZSkmJno3dChlKX12YXIgclpyPWFZcnx8blpyO2Z1bmN0aW9uIEM3dChlKXt2YXIgdD1GSihlKT9QSi5jYWxsKGUpOiIiO3JldHVybiB0PT0kNmV8fHQ9PVZtdH1mdW5jdGlvbiBhWnIoZSl7cmV0dXJuIHR5cGVvZiBlPT0ibnVtYmVyIiYmZT4tMSYmZSUxPT0wJiZlPD1IbXR9ZnVuY3Rpb24gRkooZSl7dmFyIHQ9dHlwZW9mIGU7cmV0dXJuISFlJiYodD09Im9iamVjdCJ8fHQ9PSJmdW5jdGlvbiIpfWZ1bmN0aW9uIGlacihlKXtyZXR1cm4hIWUmJnR5cGVvZiBlPT0ib2JqZWN0In1mdW5jdGlvbiBVNmUoZSl7cmV0dXJuIHo3dChlKT9EWXIoZSk6TllyKGUpfWZ1bmN0aW9uIG9acigpe3JldHVybltdfWZ1bmN0aW9uIG5acigpe3JldHVybiExfUpoLmV4cG9ydHM9SllyfSk7dmFyIEc2ZT1YZSgoeDJpLF83dCk9PnsidXNlIHN0cmljdCI7Xzd0LmV4cG9ydHM9ZnVuY3Rpb24oZSx0KXt0fHwodD17fSksdHlwZW9mIHQ9PSJmdW5jdGlvbiImJih0PXtjbXA6dH0pO3ZhciByPXR5cGVvZiB0LmN5Y2xlcz09ImJvb2xlYW4iP3QuY3ljbGVzOiExLGE9dC5jbXAmJihmdW5jdGlvbihvKXtyZXR1cm4gZnVuY3Rpb24obil7cmV0dXJuIGZ1bmN0aW9uKHMsYyl7dmFyIGQ9e2tleTpzLHZhbHVlOm5bc119LGY9e2tleTpjLHZhbHVlOm5bY119O3JldHVybiBvKGQsZil9fX0pKHQuY21wKSxpPVtdO3JldHVybihmdW5jdGlvbiBvKG4pe2lmKG4mJm4udG9KU09OJiZ0eXBlb2Ygbi50b0pTT049PSJmdW5jdGlvbiImJihuPW4udG9KU09OKCkpLG4hPT12b2lkIDApe2lmKHR5cGVvZiBuPT0ibnVtYmVyIilyZXR1cm4gaXNGaW5pdGUobik/IiIrbjoibnVsbCI7aWYodHlwZW9mIG4hPSJvYmplY3QiKXJldHVybiBKU09OLnN0cmluZ2lmeShuKTt2YXIgcyxjO2lmKEFycmF5LmlzQXJyYXkobikpe2ZvcihjPSJbIixzPTA7czxuLmxlbmd0aDtzKyspcyYmKGMrPSIsIiksYys9byhuW3NdKXx8Im51bGwiO3JldHVybiBjKyJdIn1pZihuPT09bnVsbClyZXR1cm4ibnVsbCI7aWYoaS5pbmRleE9mKG4pIT09LTEpe2lmKHIpcmV0dXJuIEpTT04uc3RyaW5naWZ5KCJfX2N5Y2xlX18iKTt0aHJvdyBuZXcgVHlwZUVycm9yKCJDb252ZXJ0aW5nIGNpcmN1bGFyIHN0cnVjdHVyZSB0byBKU09OIil9dmFyIGQ9aS5wdXNoKG4pLTEsZj1PYmplY3Qua2V5cyhuKS5zb3J0KGEmJmEobikpO2ZvcihjPSIiLHM9MDtzPGYubGVuZ3RoO3MrKyl7dmFyIHU9ZltzXSxwPW8oblt1XSk7cCYmKGMmJihjKz0iLCIpLGMrPUpTT04uc3RyaW5naWZ5KHUpKyI6IitwKX1yZXR1cm4gaS5zcGxpY2UoZCwxKSwieyIrYysifSJ9fSkoZSl9fSk7dmFyIE9KLFQ3dCxSSixZNmU9bCgoKT0+e0M2ZSgpO0R4KCk7T0o9QXIoVzZlKCksMSksVDd0PUFyKEc2ZSgpLDEpLFJKPVQ3dC5kZWZhdWx0fSk7ZnVuY3Rpb24gbFpyKGUpe3JldHVybiB0eXBlb2YgQnVmZmVyPCJ1Ij9CdWZmZXIuZnJvbShlKS50b1N0cmluZygiYmFzZTY0Iik6YnRvYShTdHJpbmcuZnJvbUNoYXJDb2RlKC4uLmUpKX1mdW5jdGlvbiBjWnIoZSl7aWYodHlwZW9mIEJ1ZmZlcjwidSIpe2xldCB0PUJ1ZmZlci5mcm9tKGUsImJhc2U2NCIpO3JldHVybiBuZXcgVWludDhBcnJheSh0LmJ1ZmZlcix0LmJ5dGVPZmZzZXQsdC5ieXRlTGVuZ3RoKX1yZXR1cm4gbmV3IFVpbnQ4QXJyYXkoQXJyYXkuZnJvbShhdG9iKGUpKS5tYXAodD0+dC5jaGFyQ29kZUF0KDApKSl9ZnVuY3Rpb24gWDZlKGUsdCl7cmV0dXJuIEpTT04uc3RyaW5naWZ5KGUsQkosdCl9ZnVuY3Rpb24gUTZlKGUpe3JldHVybiBKU09OLnBhcnNlKGUsTDd0KX1mdW5jdGlvbiBkWnIoZSl7cmV0dXJuIEE3dChlKSYmZS50eXBlPT09IkVuY29kZWRCdWZmZXIiJiZaNmUoZS5kYXRhKX1mdW5jdGlvbiB1WnIoZSl7cmV0dXJuIEE3dChlKSYmZS50eXBlPT09IkJ1ZmZlciImJihEN3QoZS5kYXRhKXx8WjZlKGUuZGF0YSkpfHxlIGluc3RhbmNlb2YgVWludDhBcnJheX1mdW5jdGlvbiBEN3QoZSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoZSl9ZnVuY3Rpb24gWjZlKGUpe3JldHVybiB0eXBlb2YgZT09InN0cmluZyJ9ZnVuY3Rpb24gQTd0KGUpe3JldHVybiB0eXBlb2YgZT09Im9iamVjdCImJmUhPT1udWxsfXZhciBCSixMN3QsRTd0PWwoKCk9PntZNmUoKTtCSj0oZSx0KT0+e2lmKHVacih0KSl7bGV0IHI7aWYoImRhdGEiaW4gdCYmRDd0KHQuZGF0YSkpcj1uZXcgVWludDhBcnJheSh0LmRhdGEpO2Vsc2UgaWYodCBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkpcj10O2Vsc2UgcmV0dXJuIHQ7cmV0dXJue3R5cGU6IkVuY29kZWRCdWZmZXIiLGRhdGE6ImJhc2U2NDoiK2xacihyKX19cmV0dXJuIHR9LEw3dD0oZSx0KT0+e2lmKGRacih0KSYmWjZlKHQuZGF0YSkmJnQuZGF0YS5zdGFydHNXaXRoKCJiYXNlNjQ6Iikpe2xldCByPXQuZGF0YS5zbGljZSg3KTtyZXR1cm4gY1pyKHIpfXJldHVybiB0fX0pO3ZhciBvcz17fTtxZShvcyx7U21hcnRqc29uOigpPT5KNmUsZGVlcEVxdWFsSnNvbkxTdHJpbmdzOigpPT52WnIsZGVlcEVxdWFsT2JqZWN0czooKT0+JDd0LGZvbGREZWM6KCk9PmJacixwYXJzZTooKT0+SEoscGFyc2VCYXNlNjQ6KCk9PnhacixwYXJzZUpzb25MOigpPT5LNmUsc3RhYmxlT25lV2F5U3RyaW5naWZ5OigpPT5oWnIsc3RyaW5naWZ5OigpPT5uZCxzdHJpbmdpZnlCYXNlNjQ6KCk9PmdacixzdHJpbmdpZnlKc29uTDooKT0+cFpyLHN0cmluZ2lmeVByZXR0eTooKT0+bVpyfSk7dmFyIEhKLEs2ZSxwWnIsaFpyLG5kLG1acixnWnIseFpyLEo2ZSxiWnIsJDd0LHZacixxSj1sKCgpPT57WTZlKCk7RTd0KCk7SEo9UTZlLEs2ZT1lPT5lLnNwbGl0KGAKYCkucmVkdWNlKChhLGkpPT57bGV0IG89aS50cmltKCk7cmV0dXJuIG8ubGVuZ3RoPjAmJmEucHVzaChISihvKSksYX0sW10pLHBacj1lPT5lLm1hcCh0PT5uZCh0KSkuam9pbihgCmApLGhacj0oZSx0LHI9e30pPT57bGV0IGE9bmV3IFdlYWtTZXQsaT1zPT57aWYocz09PW51bGx8fHR5cGVvZiBzIT0ib2JqZWN0IilyZXR1cm4gcztsZXQgYz1CSigiIixzKTtpZihjJiZjLnR5cGU9PT0iRW5jb2RlZEJ1ZmZlciImJnR5cGVvZiBjLmRhdGE9PSJzdHJpbmciKXJldHVybiBjO2lmKGEuaGFzKHMpKXJldHVybiJfX2N5Y2xlX18iO2lmKGEuYWRkKHMpLEFycmF5LmlzQXJyYXkocykpcmV0dXJuIHMubWFwKGY9PmkoZikpO2xldCBkPXt9O2ZvcihsZXQgZiBvZiBPYmplY3Qua2V5cyhzKSl0cnl7ZFtmXT1pKHNbZl0pfWNhdGNoe2RbZl09Il9fdW5zZXJpYWxpemFibGVfXyJ9cmV0dXJuIGR9LG89aShlKSxuPXsuLi5yLGN5Y2xlczohMH07aWYodCYmIW4uY21wKXtsZXQgcz1uZXcgTWFwO3QuZm9yRWFjaCgoYyxkKT0+cy5zZXQoYyxkKSksbi5jbXA9KGMsZCk9PntsZXQgZj1zLmhhcyhjLmtleSk/cy5nZXQoYy5rZXkpOk51bWJlci5QT1NJVElWRV9JTkZJTklUWSx1PXMuaGFzKGQua2V5KT9zLmdldChkLmtleSk6TnVtYmVyLlBPU0lUSVZFX0lORklOSVRZO3JldHVybiBmIT09dT9mLXU6Yy5rZXk8ZC5rZXk/LTE6Yy5rZXk+ZC5rZXk/MTowfX1yZXR1cm4gUkoobyxuKX0sbmQ9KGUsdCxyPXt9KT0+e2xldCBhPVg2ZShlKTtlPUpTT04ucGFyc2UoYSk7bGV0IGk9ey4uLnJ9O2lmKHQmJiFpLmNtcCl7bGV0IG49bmV3IE1hcDt0LmZvckVhY2goKHMsYyk9Pm4uc2V0KHMsYykpLGkuY21wPShzLGMpPT57bGV0IGQ9bi5oYXMocy5rZXkpP24uZ2V0KHMua2V5KTpOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFksZj1uLmhhcyhjLmtleSk/bi5nZXQoYy5rZXkpOk51bWJlci5QT1NJVElWRV9JTkZJTklUWTtyZXR1cm4gZCE9PWY/ZC1mOnMua2V5PGMua2V5Py0xOnMua2V5PmMua2V5PzE6MH19cmV0dXJuIFJKKGUsaSl9LG1acj1lPT57bGV0IHQ9bmQoZSkscj1KU09OLnBhcnNlKHQpO3JldHVybiBKU09OLnN0cmluZ2lmeShyLG51bGwsMil9LGdacj0oLi4uZSk9PntsZXQgdD1uZCguLi5lKTtyZXR1cm4gQTEuYmFzZTY0LmVuY29kZVVyaSh0KX0seFpyPWU9PntsZXQgdD1BMS5iYXNlNjQsYT0odC5kZWNvZGVVcml8fHQuZGVjb2RlKShlKTtyZXR1cm4gSEooYSl9LEo2ZT1jbGFzcyBle3N0YXRpYyBlbmZvbGRGcm9tT2JqZWN0KHQpe2xldCByPW5ldyB0aGlzLGE9ci5zYXZlYWJsZVByb3BlcnRpZXN8fFtdO2ZvcihsZXQgaSBpbiB0KWEuaW5kZXhPZihpKSE9PS0xJiYocltpXT10W2ldKTtyZXR1cm4gcn1zdGF0aWMgZW5mb2xkRnJvbUpzb24odCl7bGV0IHI9SEoodCk7cmV0dXJuIHRoaXMuZW5mb2xkRnJvbU9iamVjdChyKX1zYXZlYWJsZVByb3BlcnRpZXM7Zm9sZFRvT2JqZWN0KCl7bGV0IHQ9bmV3IFNldDtyZXR1cm4gdC5hZGQodGhpcyksdGhpcy5mb2xkVG9PYmplY3RJbnRlcm5hbCh0KX1mb2xkVG9PYmplY3RJbnRlcm5hbCh0KXtsZXQgcj17fSxhPW89PntpZihvIGluc3RhbmNlb2YgZSl7aWYodC5oYXMobykpdGhyb3cgbmV3IEVycm9yKCJjeWNsZSBkZXRlY3RlZCIpO3JldHVybiB0LmFkZChvKSxvLmZvbGRUb09iamVjdEludGVybmFsKHQpfXJldHVybiBBcnJheS5pc0FycmF5KG8pP28ubWFwKG49PmEobikpOk9KLmRlZmF1bHQobyl9LGk9dGhpcy5zYXZlYWJsZVByb3BlcnRpZXN8fFtdO2ZvcihsZXQgbyBvZiBpKXtsZXQgbj10aGlzW29dO3Jbb109YShuKX1yZXR1cm4gcn1mb2xkVG9Kc29uKCl7bGV0IHQ9dGhpcy5mb2xkVG9PYmplY3QoKTtyZXR1cm4gbmQodCl9fSxiWnI9KCk9PihlLHQpPT57bGV0IHI9U3RyaW5nKHQubmFtZSk7dC5hZGRJbml0aWFsaXplcihmdW5jdGlvbigpe3RoaXMuc2F2ZWFibGVQcm9wZXJ0aWVzfHwodGhpcy5zYXZlYWJsZVByb3BlcnRpZXM9W10pLHRoaXMuc2F2ZWFibGVQcm9wZXJ0aWVzLmluY2x1ZGVzKHIpfHx0aGlzLnNhdmVhYmxlUHJvcGVydGllcy5wdXNoKHIpfSl9LCQ3dD0oZSx0KT0+e2xldCByPW5kKGUpLGE9bmQodCk7cmV0dXJuIHI9PT1hfSx2WnI9KGUsdCk9PntsZXQgcj1LNmUoZSksYT1LNmUodCk7cmV0dXJuICQ3dChyLGEpfX0pO3ZhciBQN3Q9bCgoKT0+e0NvKCl9KTt2YXIgSTd0PWwoKCk9Pnt9KTt2YXIgZXVlLE43dD1sKCgpPT57UDd0KCk7STd0KCk7ZXVlPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5sb2FkZWRTY3JpcHRzPVtdfWFzeW5jIGdldEVudkF3YXJlTW9kdWxlKHQpe2lmKHRoaXMuaXNOb2RlKXJldHVybiBhd2FpdCB0aGlzLmdldFNhZmVOb2RlTW9kdWxlKHQubm9kZU1vZHVsZU5hbWUpO2lmKHRoaXMuaXNCcm93c2VyKXJldHVybiBhd2FpdCB0aGlzLmdldFNhZmVXZWJNb2R1bGUodC53ZWJVcmxBcmcsdC5nZXRGdW5jdGlvbik7Y29uc29sZS5lcnJvcigicGxhdGZvcm0gZm9yIGxvYWRpbmcgbm90IHN1cHBvcnRlZCBieSBzbWFydGVudiIpfWFzeW5jIGdldFNhZmVOb2RlTW9kdWxlKHQscil7aWYoIXRoaXMuaXNOb2RlKXtjb25zb2xlLmVycm9yKGBZb3UgdHJpZWQgdG8gbG9hZCBhIG5vZGUgbW9kdWxlIGluIGEgd3JvbmcgY29udGV4dDogJHt0fS4gVGhpcyBkb2VzIG5vdCB0aHJvdy5gKTtyZXR1cm59bGV0IGE9YXdhaXQgbmV3IEZ1bmN0aW9uKGByZXR1cm4gaW1wb3J0KCcke3R9JylgKSgpO3JldHVybiByJiZhd2FpdCByKGEpLGF9YXN5bmMgZ2V0U2FmZVdlYk1vZHVsZSh0LHIpe2lmKCF0aGlzLmlzQnJvd3Nlcil7Y29uc29sZS5lcnJvcigiWW91IHRyaWVkIHRvIGxvYWQgYSB3ZWIgbW9kdWxlIGluIGEgd3JvbmcgY29udGV4dCIpO3JldHVybn1pZih0aGlzLmxvYWRlZFNjcmlwdHMuaW5jbHVkZXModCkpcmV0dXJuIHIoKTt0aGlzLmxvYWRlZFNjcmlwdHMucHVzaCh0KTtsZXQgYT1wdC5kZWZlcigpO2lmKGdsb2JhbFRoaXMuaW1wb3J0U2NyaXB0cylnbG9iYWxUaGlzLmltcG9ydFNjcmlwdHModCksYS5yZXNvbHZlKCk7ZWxzZXtsZXQgaT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtpLm9ubG9hZD0oKT0+e2EucmVzb2x2ZSgpfSxpLnNyYz10LGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoaSl9cmV0dXJuIGF3YWl0IGEucHJvbWlzZSxyKCl9Z2V0IHJ1bnRpbWVFbnYoKXtyZXR1cm4gdHlwZW9mIHByb2Nlc3M8InUiPyJub2RlIjoiYnJvd3NlciJ9Z2V0IGlzQnJvd3Nlcigpe3JldHVybiF0aGlzLmlzTm9kZX1nZXQgdXNlckFnZW50KCl7cmV0dXJuIHRoaXMuaXNCcm93c2VyP25hdmlnYXRvci51c2VyQWdlbnQ6InVuZGVmaW5lZCJ9Z2V0IGlzTm9kZSgpe3JldHVybiB0aGlzLnJ1bnRpbWVFbnY9PT0ibm9kZSJ9Z2V0IG5vZGVWZXJzaW9uKCl7cmV0dXJuIHByb2Nlc3MudmVyc2lvbn1nZXQgaXNDSSgpe3JldHVybiB0aGlzLmlzTm9kZT8hIXByb2Nlc3MuZW52LkNJOiExfWFzeW5jIGlzTWFjQXN5bmMoKXtyZXR1cm4gdGhpcy5pc05vZGU/KGF3YWl0IHRoaXMuZ2V0U2FmZU5vZGVNb2R1bGUoIm9zIikpLnBsYXRmb3JtKCk9PT0iZGFyd2luIjohMX1hc3luYyBpc1dpbmRvd3NBc3luYygpe3JldHVybiB0aGlzLmlzTm9kZT8oYXdhaXQgdGhpcy5nZXRTYWZlTm9kZU1vZHVsZSgib3MiKSkucGxhdGZvcm0oKT09PSJ3aW4zMiI6ITF9YXN5bmMgaXNMaW51eEFzeW5jKCl7cmV0dXJuIHRoaXMuaXNOb2RlPyhhd2FpdCB0aGlzLmdldFNhZmVOb2RlTW9kdWxlKCJvcyIpKS5wbGF0Zm9ybSgpPT09ImxpbnV4IjohMX1hc3luYyBwcmludEVudigpe3RoaXMuaXNOb2RlPyhjb25zb2xlLmxvZygicnVubmluZyBvbiBOT0RFIiksY29uc29sZS5sb2coIm5vZGUgdmVyc2lvbiBpcyAiK3RoaXMubm9kZVZlcnNpb24pKTooY29uc29sZS5sb2coInJ1bm5pbmcgb24gQlJPV1NFUiIpLGNvbnNvbGUubG9nKCJicm93c2VyIGlzICIrdGhpcy51c2VyQWdlbnQpKX19fSk7dmFyIElsPXt9O3FlKElsLHtTbWFydGVudjooKT0+ZXVlfSk7dmFyIGpKPWwoKCk9PntON3QoKX0pO3ZhciBWSixGN3QsVUosdHVlPWwoKCk9PntqSigpO0R4KCk7Vko9QXIoVzZlKCksMSksRjd0PUFyKEc2ZSgpLDEpLFVKPUY3dC5kZWZhdWx0fSk7ZnVuY3Rpb24gTVpyKGUpe3JldHVybiB0eXBlb2YgQnVmZmVyPCJ1Ij9CdWZmZXIuZnJvbShlKS50b1N0cmluZygiYmFzZTY0Iik6YnRvYShTdHJpbmcuZnJvbUNoYXJDb2RlKC4uLmUpKX1mdW5jdGlvbiBrWnIoZSl7aWYodHlwZW9mIEJ1ZmZlcjwidSIpe2xldCB0PUJ1ZmZlci5mcm9tKGUsImJhc2U2NCIpO3JldHVybiBuZXcgVWludDhBcnJheSh0LmJ1ZmZlcix0LmJ5dGVPZmZzZXQsdC5ieXRlTGVuZ3RoKX1yZXR1cm4gbmV3IFVpbnQ4QXJyYXkoQXJyYXkuZnJvbShhdG9iKGUpKS5tYXAodD0+dC5jaGFyQ29kZUF0KDApKSl9ZnVuY3Rpb24gYXVlKGUsdCl7cmV0dXJuIEpTT04uc3RyaW5naWZ5KGUsV0osdCl9ZnVuY3Rpb24gaXVlKGUpe3JldHVybiBKU09OLnBhcnNlKGUsTzd0KX1mdW5jdGlvbiBTWnIoZSl7cmV0dXJuIEI3dChlKSYmZS50eXBlPT09IkVuY29kZWRCdWZmZXIiJiZydWUoZS5kYXRhKX1mdW5jdGlvbiB6WnIoZSl7cmV0dXJuIEI3dChlKSYmZS50eXBlPT09IkJ1ZmZlciImJihSN3QoZS5kYXRhKXx8cnVlKGUuZGF0YSkpfHxlIGluc3RhbmNlb2YgVWludDhBcnJheX1mdW5jdGlvbiBSN3QoZSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoZSl9ZnVuY3Rpb24gcnVlKGUpe3JldHVybiB0eXBlb2YgZT09InN0cmluZyJ9ZnVuY3Rpb24gQjd0KGUpe3JldHVybiB0eXBlb2YgZT09Im9iamVjdCImJmUhPT1udWxsfXZhciBXSixPN3QsSDd0PWwoKCk9Pnt0dWUoKTtXSj0oZSx0KT0+e2lmKHpacih0KSl7bGV0IHI7aWYoImRhdGEiaW4gdCYmUjd0KHQuZGF0YSkpcj1uZXcgVWludDhBcnJheSh0LmRhdGEpO2Vsc2UgaWYodCBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkpcj10O2Vsc2UgcmV0dXJuIHQ7cmV0dXJue3R5cGU6IkVuY29kZWRCdWZmZXIiLGRhdGE6ImJhc2U2NDoiK01acihyKX19cmV0dXJuIHR9LE83dD0oZSx0KT0+e2lmKFNacih0KSYmcnVlKHQuZGF0YSkmJnQuZGF0YS5zdGFydHNXaXRoKCJiYXNlNjQ6Iikpe2xldCByPXQuZGF0YS5zbGljZSg3KTtyZXR1cm4ga1pyKHIpfXJldHVybiB0fX0pO3ZhciBObD17fTtxZShObCx7U21hcnRqc29uOigpPT5udWUsZGVlcEVxdWFsSnNvbkxTdHJpbmdzOigpPT4kWnIsZGVlcEVxdWFsT2JqZWN0czooKT0+cTd0LGZvbGREZWM6KCk9PkVacixwYXJzZTooKT0+R0oscGFyc2VCYXNlNjQ6KCk9PkFacixwYXJzZUpzb25MOigpPT5vdWUsc3RhYmxlT25lV2F5U3RyaW5naWZ5OigpPT5UWnIsc3RyaW5naWZ5OigpPT5zZCxzdHJpbmdpZnlCYXNlNjQ6KCk9PkRacixzdHJpbmdpZnlKc29uTDooKT0+X1pyLHN0cmluZ2lmeVByZXR0eTooKT0+TFpyfSk7dmFyIEdKLG91ZSxfWnIsVFpyLHNkLExacixEWnIsQVpyLG51ZSxFWnIscTd0LCRacixzdWU9bCgoKT0+e3R1ZSgpO0g3dCgpO0dKPWl1ZSxvdWU9ZT0+ZS5zcGxpdChgCmApLnJlZHVjZSgoYSxpKT0+e2xldCBvPWkudHJpbSgpO3JldHVybiBvLmxlbmd0aD4wJiZhLnB1c2goR0oobykpLGF9LFtdKSxfWnI9ZT0+ZS5tYXAodD0+c2QodCkpLmpvaW4oYApgKSxUWnI9KGUsdCxyPXt9KT0+e2xldCBhPW5ldyBXZWFrU2V0LGk9cz0+e2lmKHM9PT1udWxsfHx0eXBlb2YgcyE9Im9iamVjdCIpcmV0dXJuIHM7bGV0IGM9V0ooIiIscyk7aWYoYyYmYy50eXBlPT09IkVuY29kZWRCdWZmZXIiJiZ0eXBlb2YgYy5kYXRhPT0ic3RyaW5nIilyZXR1cm4gYztpZihhLmhhcyhzKSlyZXR1cm4iX19jeWNsZV9fIjtpZihhLmFkZChzKSxBcnJheS5pc0FycmF5KHMpKXJldHVybiBzLm1hcChmPT5pKGYpKTtsZXQgZD17fTtmb3IobGV0IGYgb2YgT2JqZWN0LmtleXMocykpdHJ5e2RbZl09aShzW2ZdKX1jYXRjaHtkW2ZdPSJfX3Vuc2VyaWFsaXphYmxlX18ifXJldHVybiBkfSxvPWkoZSksbj17Li4ucixjeWNsZXM6ITB9O2lmKHQmJiFuLmNtcCl7bGV0IHM9bmV3IE1hcDt0LmZvckVhY2goKGMsZCk9PnMuc2V0KGMsZCkpLG4uY21wPShjLGQpPT57bGV0IGY9cy5oYXMoYy5rZXkpP3MuZ2V0KGMua2V5KTpOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFksdT1zLmhhcyhkLmtleSk/cy5nZXQoZC5rZXkpOk51bWJlci5QT1NJVElWRV9JTkZJTklUWTtyZXR1cm4gZiE9PXU/Zi11OmMua2V5PGQua2V5Py0xOmMua2V5PmQua2V5PzE6MH19cmV0dXJuIFVKKG8sbil9LHNkPShlLHQscj17fSk9PntsZXQgYT1hdWUoZSk7ZT1KU09OLnBhcnNlKGEpO2xldCBpPXsuLi5yfTtpZih0JiYhaS5jbXApe2xldCBuPW5ldyBNYXA7dC5mb3JFYWNoKChzLGMpPT5uLnNldChzLGMpKSxpLmNtcD0ocyxjKT0+e2xldCBkPW4uaGFzKHMua2V5KT9uLmdldChzLmtleSk6TnVtYmVyLlBPU0lUSVZFX0lORklOSVRZLGY9bi5oYXMoYy5rZXkpP24uZ2V0KGMua2V5KTpOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFk7cmV0dXJuIGQhPT1mP2QtZjpzLmtleTxjLmtleT8tMTpzLmtleT5jLmtleT8xOjB9fXJldHVybiBVSihlLGkpfSxMWnI9ZT0+e2xldCB0PXNkKGUpLHI9SlNPTi5wYXJzZSh0KTtyZXR1cm4gSlNPTi5zdHJpbmdpZnkocixudWxsLDIpfSxEWnI9KC4uLmUpPT57bGV0IHQ9c2QoLi4uZSk7cmV0dXJuIEExLmJhc2U2NC5lbmNvZGVVcmkodCl9LEFacj1lPT57bGV0IHQ9QTEuYmFzZTY0LGE9KHQuZGVjb2RlVXJpfHx0LmRlY29kZSkoZSk7cmV0dXJuIEdKKGEpfSxudWU9Y2xhc3MgZXtzdGF0aWMgZW5mb2xkRnJvbU9iamVjdCh0KXtsZXQgcj1uZXcgdGhpcyxhPXIuc2F2ZWFibGVQcm9wZXJ0aWVzfHxbXTtmb3IobGV0IGkgaW4gdClhLmluZGV4T2YoaSkhPT0tMSYmKHJbaV09dFtpXSk7cmV0dXJuIHJ9c3RhdGljIGVuZm9sZEZyb21Kc29uKHQpe2xldCByPUdKKHQpO3JldHVybiB0aGlzLmVuZm9sZEZyb21PYmplY3Qocil9Zm9sZFRvT2JqZWN0KCl7bGV0IHQ9bmV3IFNldDtyZXR1cm4gdC5hZGQodGhpcyksdGhpcy5mb2xkVG9PYmplY3RJbnRlcm5hbCh0KX1mb2xkVG9PYmplY3RJbnRlcm5hbCh0KXtsZXQgcj17fSxhPW89PntpZihvIGluc3RhbmNlb2YgZSl7aWYodC5oYXMobykpdGhyb3cgbmV3IEVycm9yKCJjeWNsZSBkZXRlY3RlZCIpO3JldHVybiB0LmFkZChvKSxvLmZvbGRUb09iamVjdEludGVybmFsKHQpfXJldHVybiBBcnJheS5pc0FycmF5KG8pP28ubWFwKG49PmEobikpOlZKLmRlZmF1bHQobyl9LGk9dGhpcy5zYXZlYWJsZVByb3BlcnRpZXN8fFtdO2ZvcihsZXQgbyBvZiBpKXtsZXQgbj10aGlzW29dO3Jbb109YShuKX1yZXR1cm4gcn1mb2xkVG9Kc29uKCl7bGV0IHQ9dGhpcy5mb2xkVG9PYmplY3QoKTtyZXR1cm4gc2QodCl9fSxFWnI9KCk9PihlLHQpPT57ZS5zYXZlYWJsZVByb3BlcnRpZXN8fChlLnNhdmVhYmxlUHJvcGVydGllcz1bXSksZS5zYXZlYWJsZVByb3BlcnRpZXMucHVzaCh0KX0scTd0PShlLHQpPT57bGV0IHI9c2QoZSksYT1zZCh0KTtyZXR1cm4gcj09PWF9LCRacj0oZSx0KT0+e2xldCByPW91ZShlKSxhPW91ZSh0KTtyZXR1cm4gcTd0KHIsYSl9fSk7dmFyIEl4PXt9O3FlKEl4LHtkZWxldGVEQjooKT0+UTd0LG9wZW5EQjooKT0+WDd0LHVud3JhcDooKT0+UHgsd3JhcDooKT0+aDJ9KTtmdW5jdGlvbiBQWnIoKXtyZXR1cm4gajd0fHwoajd0PVtJREJEYXRhYmFzZSxJREJPYmplY3RTdG9yZSxJREJJbmRleCxJREJDdXJzb3IsSURCVHJhbnNhY3Rpb25dKX1mdW5jdGlvbiBJWnIoKXtyZXR1cm4gVjd0fHwoVjd0PVtJREJDdXJzb3IucHJvdG90eXBlLmFkdmFuY2UsSURCQ3Vyc29yLnByb3RvdHlwZS5jb250aW51ZSxJREJDdXJzb3IucHJvdG90eXBlLmNvbnRpbnVlUHJpbWFyeUtleV0pfWZ1bmN0aW9uIE5acihlKXtsZXQgdD1uZXcgUHJvbWlzZSgocixhKT0+e2xldCBpPSgpPT57ZS5yZW1vdmVFdmVudExpc3RlbmVyKCJzdWNjZXNzIixvKSxlLnJlbW92ZUV2ZW50TGlzdGVuZXIoImVycm9yIixuKX0sbz0oKT0+e3IoaDIoZS5yZXN1bHQpKSxpKCl9LG49KCk9PnthKGUuZXJyb3IpLGkoKX07ZS5hZGRFdmVudExpc3RlbmVyKCJzdWNjZXNzIixvKSxlLmFkZEV2ZW50TGlzdGVuZXIoImVycm9yIixuKX0pO3JldHVybiBZSi5zZXQodCxlKSx0fWZ1bmN0aW9uIEZacihlKXtpZihjdWUuaGFzKGUpKXJldHVybjtsZXQgdD1uZXcgUHJvbWlzZSgocixhKT0+e2xldCBpPSgpPT57ZS5yZW1vdmVFdmVudExpc3RlbmVyKCJjb21wbGV0ZSIsbyksZS5yZW1vdmVFdmVudExpc3RlbmVyKCJlcnJvciIsbiksZS5yZW1vdmVFdmVudExpc3RlbmVyKCJhYm9ydCIsbil9LG89KCk9PntyKCksaSgpfSxuPSgpPT57YShlLmVycm9yfHxuZXcgRE9NRXhjZXB0aW9uKCJBYm9ydEVycm9yIiwiQWJvcnRFcnJvciIpKSxpKCl9O2UuYWRkRXZlbnRMaXN0ZW5lcigiY29tcGxldGUiLG8pLGUuYWRkRXZlbnRMaXN0ZW5lcigiZXJyb3IiLG4pLGUuYWRkRXZlbnRMaXN0ZW5lcigiYWJvcnQiLG4pfSk7Y3VlLnNldChlLHQpfWZ1bmN0aW9uIFU3dChlKXt1dWU9ZSh1dWUpfWZ1bmN0aW9uIE9acihlKXtyZXR1cm4gSVpyKCkuaW5jbHVkZXMoZSk/ZnVuY3Rpb24oLi4udCl7cmV0dXJuIGUuYXBwbHkoUHgodGhpcyksdCksaDIodGhpcy5yZXF1ZXN0KX06ZnVuY3Rpb24oLi4udCl7cmV0dXJuIGgyKGUuYXBwbHkoUHgodGhpcyksdCkpfX1mdW5jdGlvbiBSWnIoZSl7cmV0dXJuIHR5cGVvZiBlPT0iZnVuY3Rpb24iP09acihlKTooZSBpbnN0YW5jZW9mIElEQlRyYW5zYWN0aW9uJiZGWnIoZSksbHVlKGUsUFpyKCkpP25ldyBQcm94eShlLHV1ZSk6ZSl9ZnVuY3Rpb24gaDIoZSl7aWYoZSBpbnN0YW5jZW9mIElEQlJlcXVlc3QpcmV0dXJuIE5acihlKTtpZihkdWUuaGFzKGUpKXJldHVybiBkdWUuZ2V0KGUpO2xldCB0PVJacihlKTtyZXR1cm4gdCE9PWUmJihkdWUuc2V0KGUsdCksWUouc2V0KHQsZSkpLHR9ZnVuY3Rpb24gWDd0KGUsdCx7YmxvY2tlZDpyLHVwZ3JhZGU6YSxibG9ja2luZzppLHRlcm1pbmF0ZWQ6b309e30pe2xldCBuPWluZGV4ZWREQi5vcGVuKGUsdCkscz1oMihuKTtyZXR1cm4gYSYmbi5hZGRFdmVudExpc3RlbmVyKCJ1cGdyYWRlbmVlZGVkIixjPT57YShoMihuLnJlc3VsdCksYy5vbGRWZXJzaW9uLGMubmV3VmVyc2lvbixoMihuLnRyYW5zYWN0aW9uKSxjKX0pLHImJm4uYWRkRXZlbnRMaXN0ZW5lcigiYmxvY2tlZCIsYz0+cihjLm9sZFZlcnNpb24sYy5uZXdWZXJzaW9uLGMpKSxzLnRoZW4oYz0+e28mJmMuYWRkRXZlbnRMaXN0ZW5lcigiY2xvc2UiLCgpPT5vKCkpLGkmJmMuYWRkRXZlbnRMaXN0ZW5lcigidmVyc2lvbmNoYW5nZSIsZD0+aShkLm9sZFZlcnNpb24sZC5uZXdWZXJzaW9uLGQpKX0pLmNhdGNoKCgpPT57fSksc31mdW5jdGlvbiBRN3QoZSx7YmxvY2tlZDp0fT17fSl7bGV0IHI9aW5kZXhlZERCLmRlbGV0ZURhdGFiYXNlKGUpO3JldHVybiB0JiZyLmFkZEV2ZW50TGlzdGVuZXIoImJsb2NrZWQiLGE9PnQoYS5vbGRWZXJzaW9uLGEpKSxoMihyKS50aGVuKCgpPT57fSl9ZnVuY3Rpb24gVzd0KGUsdCl7aWYoIShlIGluc3RhbmNlb2YgSURCRGF0YWJhc2UmJiEodCBpbiBlKSYmdHlwZW9mIHQ9PSJzdHJpbmciKSlyZXR1cm47aWYoZnVlLmdldCh0KSlyZXR1cm4gZnVlLmdldCh0KTtsZXQgcj10LnJlcGxhY2UoL0Zyb21JbmRleCQvLCIiKSxhPXQhPT1yLGk9SFpyLmluY2x1ZGVzKHIpO2lmKCEociBpbihhP0lEQkluZGV4OklEQk9iamVjdFN0b3JlKS5wcm90b3R5cGUpfHwhKGl8fEJaci5pbmNsdWRlcyhyKSkpcmV0dXJuO2xldCBvPWFzeW5jIGZ1bmN0aW9uKG4sLi4ucyl7bGV0IGM9dGhpcy50cmFuc2FjdGlvbihuLGk/InJlYWR3cml0ZSI6InJlYWRvbmx5IiksZD1jLnN0b3JlO3JldHVybiBhJiYoZD1kLmluZGV4KHMuc2hpZnQoKSkpLChhd2FpdCBQcm9taXNlLmFsbChbZFtyXSguLi5zKSxpJiZjLmRvbmVdKSlbMF19O3JldHVybiBmdWUuc2V0KHQsbyksb31hc3luYyBmdW5jdGlvbipWWnIoLi4uZSl7bGV0IHQ9dGhpcztpZih0IGluc3RhbmNlb2YgSURCQ3Vyc29yfHwodD1hd2FpdCB0Lm9wZW5DdXJzb3IoLi4uZSkpLCF0KXJldHVybjt0PXQ7bGV0IHI9bmV3IFByb3h5KHQsalpyKTtmb3IoWTd0LnNldChyLHQpLFlKLnNldChyLFB4KHQpKTt0Oyl5aWVsZCByLHQ9YXdhaXQocHVlLmdldChyKXx8dC5jb250aW51ZSgpKSxwdWUuZGVsZXRlKHIpfWZ1bmN0aW9uIFo3dChlLHQpe3JldHVybiB0PT09U3ltYm9sLmFzeW5jSXRlcmF0b3ImJmx1ZShlLFtJREJJbmRleCxJREJPYmplY3RTdG9yZSxJREJDdXJzb3JdKXx8dD09PSJpdGVyYXRlIiYmbHVlKGUsW0lEQkluZGV4LElEQk9iamVjdFN0b3JlXSl9dmFyIGx1ZSxqN3QsVjd0LGN1ZSxkdWUsWUosdXVlLFB4LEJacixIWnIsZnVlLHFacixHN3QscHVlLFk3dCxqWnIsSzd0PWwoKCk9PntsdWU9KGUsdCk9PnQuc29tZShyPT5lIGluc3RhbmNlb2Ygcik7Y3VlPW5ldyBXZWFrTWFwLGR1ZT1uZXcgV2Vha01hcCxZSj1uZXcgV2Vha01hcDt1dWU9e2dldChlLHQscil7aWYoZSBpbnN0YW5jZW9mIElEQlRyYW5zYWN0aW9uKXtpZih0PT09ImRvbmUiKXJldHVybiBjdWUuZ2V0KGUpO2lmKHQ9PT0ic3RvcmUiKXJldHVybiByLm9iamVjdFN0b3JlTmFtZXNbMV0/dm9pZCAwOnIub2JqZWN0U3RvcmUoci5vYmplY3RTdG9yZU5hbWVzWzBdKX1yZXR1cm4gaDIoZVt0XSl9LHNldChlLHQscil7cmV0dXJuIGVbdF09ciwhMH0saGFzKGUsdCl7cmV0dXJuIGUgaW5zdGFuY2VvZiBJREJUcmFuc2FjdGlvbiYmKHQ9PT0iZG9uZSJ8fHQ9PT0ic3RvcmUiKT8hMDp0IGluIGV9fTtQeD1lPT5ZSi5nZXQoZSk7QlpyPVsiZ2V0IiwiZ2V0S2V5IiwiZ2V0QWxsIiwiZ2V0QWxsS2V5cyIsImNvdW50Il0sSFpyPVsicHV0IiwiYWRkIiwiZGVsZXRlIiwiY2xlYXIiXSxmdWU9bmV3IE1hcDtVN3QoZT0+KHsuLi5lLGdldDoodCxyLGEpPT5XN3QodCxyKXx8ZS5nZXQodCxyLGEpLGhhczoodCxyKT0+ISFXN3QodCxyKXx8ZS5oYXModCxyKX0pKTtxWnI9WyJjb250aW51ZSIsImNvbnRpbnVlUHJpbWFyeUtleSIsImFkdmFuY2UiXSxHN3Q9e30scHVlPW5ldyBXZWFrTWFwLFk3dD1uZXcgV2Vha01hcCxqWnI9e2dldChlLHQpe2lmKCFxWnIuaW5jbHVkZXModCkpcmV0dXJuIGVbdF07bGV0IHI9Rzd0W3RdO3JldHVybiByfHwocj1HN3RbdF09ZnVuY3Rpb24oLi4uYSl7cHVlLnNldCh0aGlzLFk3dC5nZXQodGhpcylbdF0oLi4uYSkpfSkscn19O1U3dChlPT4oey4uLmUsZ2V0KHQscixhKXtyZXR1cm4gWjd0KHQscik/VlpyOmUuZ2V0KHQscixhKX0saGFzKHQscil7cmV0dXJuIFo3dCh0LHIpfHxlLmhhcyh0LHIpfX0pKX0pO3ZhciBodWU9bCgoKT0+e2J4KCk7akooKTtzdWUoKTtDbygpO2EyKCk7amcoKTtLN3QoKX0pO3ZhciBOeCxtdWU9bCgoKT0+e2h1ZSgpO054PWNsYXNze2NvbnN0cnVjdG9yKHQpe3RoaXMuaW5pdENhbGxlZD0hMSx0aGlzLnJlYWR5RGVmZXJyZWQ9cHQuZGVmZXIoKSx0aGlzLm9wdGlvbnM9dH1hc3luYyBpbml0KCl7aWYodGhpcy5pbml0Q2FsbGVkKXthd2FpdCB0aGlzLnJlYWR5RGVmZXJyZWQucHJvbWlzZTtyZXR1cm59dGhpcy5pbml0Q2FsbGVkPSEwO2xldCB0PW5ldyBJbC5TbWFydGVudjtpZighdC5pc0Jyb3dzZXImJiFnbG9iYWxUaGlzLmluZGV4ZWREQiYmKGNvbnNvbGUubG9nKCJoZXkiKSxjb25zb2xlLmxvZyhnbG9iYWxUaGlzLmluZGV4ZWREQiksYXdhaXQgdC5nZXRTYWZlTm9kZU1vZHVsZSgiZmFrZS1pbmRleGVkZGIvYXV0byIpLCFnbG9iYWxUaGlzLmluZGV4ZWREQikpe2xldCByPWF3YWl0IHQuZ2V0U2FmZU5vZGVNb2R1bGUoImZha2UtaW5kZXhlZGRiIik7Z2xvYmFsVGhpcy5pbmRleGVkREI9bmV3IHIuSURCRmFjdG9yeX10aGlzLmRiPWF3YWl0IEl4Lm9wZW5EQih0aGlzLm9wdGlvbnMuZGJOYW1lLDEse3VwZ3JhZGU6cj0+e3IuY3JlYXRlT2JqZWN0U3RvcmUodGhpcy5vcHRpb25zLnN0b3JlTmFtZSl9fSksdGhpcy5yZWFkeURlZmVycmVkLnJlc29sdmUoKX1hc3luYyBnZXQodCl7cmV0dXJuIGF3YWl0IHRoaXMuaW5pdCgpLHRoaXMuZGIuZ2V0KHRoaXMub3B0aW9ucy5zdG9yZU5hbWUsdCl9YXN5bmMgY2hlY2sodCl7cmV0dXJuIGF3YWl0IHRoaXMuaW5pdCgpLCEhYXdhaXQgdGhpcy5nZXQodCl9YXN5bmMgc2V0KHQscil7cmV0dXJuIGF3YWl0IHRoaXMuaW5pdCgpLHRoaXMuZGIucHV0KHRoaXMub3B0aW9ucy5zdG9yZU5hbWUscix0KX1hc3luYyBkZWxldGUodCl7cmV0dXJuIGF3YWl0IHRoaXMuaW5pdCgpLHRoaXMuZGIuZGVsZXRlKHRoaXMub3B0aW9ucy5zdG9yZU5hbWUsdCl9YXN5bmMgY2xlYXIoKXtyZXR1cm4gYXdhaXQgdGhpcy5pbml0KCksdGhpcy5kYi5jbGVhcih0aGlzLm9wdGlvbnMuc3RvcmVOYW1lKX1hc3luYyBrZXlzKCl7cmV0dXJuIGF3YWl0IHRoaXMuaW5pdCgpLHRoaXMuZGIuZ2V0QWxsS2V5cyh0aGlzLm9wdGlvbnMuc3RvcmVOYW1lKX19fSk7dmFyIGd1ZSxlOXQ9bCgoKT0+e211ZSgpO2h1ZSgpO2d1ZT1jbGFzc3tjb25zdHJ1Y3Rvcih0PSJkZWZhdWx0Iil7dGhpcy53ZWJzdG9yZT1uZXcgTngoe2RiTmFtZToidHJTdG9yZSIsc3RvcmVOYW1lOmB0clN0b3JlLSR7dH1gfSl9YnVpbGRLZXkodCl7cmV0dXJuIE5sLnN0cmluZ2lmeSh7bWV0aG9kOnQubWV0aG9kLHJlcXVlc3Q6dC5yZXF1ZXN0fSl9YXN5bmMgc2V0QnlSZXF1ZXN0KHQpe2lmKCF0LnJlc3BvbnNlKXRocm93IG5ldyBFcnJvcigiWW91IGNhbm5vdCBzdG9yZSByZXF1ZXN0cyB3aXRob3V0IGEgcmVzcG9uc2UgcHJlc2VudCIpO2F3YWl0IHRoaXMud2Vic3RvcmUuc2V0KHRoaXMuYnVpbGRLZXkodCksdCl9YXN5bmMgZ2V0QnlSZXF1ZXN0KHQpe3JldHVybiBhd2FpdCB0aGlzLndlYnN0b3JlLmdldCh0aGlzLmJ1aWxkS2V5KHQpKX19fSk7dmFyIG5zPXt9O3FlKG5zLHtUeXBlZHJlcXVlc3RDYWNoZTooKT0+Z3VlLFdlYlN0b3JlOigpPT5OeH0pO3ZhciBaSj1sKCgpPT57ZTl0KCk7bXVlKCl9KTt2YXIgRng9bCgoKT0+e2YwKCk7QzZlKCk7cUooKTtDbygpO1pKKCl9KTt2YXIgZW0sUUo9bCgoKT0+e0Z4KCk7ZW09Y2xhc3N7Y29uc3RydWN0b3IodD0id2VicmVxdWVzdC12NCIscj0iY2FjaGUiKXt0aGlzLndlYnN0b3JlPW5ldyBucy5XZWJTdG9yZSh7ZGJOYW1lOnQsc3RvcmVOYW1lOnJ9KSx0aGlzLmluaXRQcm9taXNlPXRoaXMuaW5pdCgpfWFzeW5jIGluaXQoKXt9Z2VuZXJhdGVDYWNoZUtleSh0KXtsZXQgcj10LnVybCxhPXQubWV0aG9kO3JldHVybiBhPT09IkdFVCI/cjpgJHthfToke3J9YH1hc3luYyBzZXQodCxyKXthd2FpdCB0aGlzLmluaXRQcm9taXNlLGF3YWl0IHRoaXMud2Vic3RvcmUuc2V0KHQscil9YXN5bmMgZ2V0KHQpe2F3YWl0IHRoaXMuaW5pdFByb21pc2U7dHJ5e3JldHVybiBhd2FpdCB0aGlzLndlYnN0b3JlLmdldCh0KXx8bnVsbH1jYXRjaHtyZXR1cm4gbnVsbH19YXN5bmMgaGFzKHQpe3JldHVybiBhd2FpdCB0aGlzLmluaXRQcm9taXNlLGF3YWl0IHRoaXMud2Vic3RvcmUuY2hlY2sodCl9YXN5bmMgZGVsZXRlKHQpe2F3YWl0IHRoaXMuaW5pdFByb21pc2UsYXdhaXQgdGhpcy53ZWJzdG9yZS5kZWxldGUodCl9YXN5bmMgY2xlYXIoKXthd2FpdCB0aGlzLmluaXRQcm9taXNlLGF3YWl0IHRoaXMud2Vic3RvcmUuY2xlYXIoKX1yZXNwb25zZUZyb21DYWNoZUVudHJ5KHQpe2xldCByPW5ldyBIZWFkZXJzKHQuaGVhZGVycyk7cmV0dXJuIG5ldyBSZXNwb25zZSh0LnJlc3BvbnNlLHtzdGF0dXM6dC5zdGF0dXMsc3RhdHVzVGV4dDp0LnN0YXR1c1RleHQsaGVhZGVyczpyfSl9YXN5bmMgY2FjaGVFbnRyeUZyb21SZXNwb25zZSh0LHIsYSl7bGV0IGk9ci5jbG9uZSgpLG89YXdhaXQgaS5hcnJheUJ1ZmZlcigpLG49e307cmV0dXJuIGkuaGVhZGVycy5mb3JFYWNoKChzLGMpPT57bltjXT1zfSkse3Jlc3BvbnNlOm8saGVhZGVyczpuLHRpbWVzdGFtcDpEYXRlLm5vdygpLGV0YWc6YT8uZXRhZ3x8aS5oZWFkZXJzLmdldCgiZXRhZyIpfHx2b2lkIDAsbGFzdE1vZGlmaWVkOmE/Lmxhc3RNb2RpZmllZHx8aS5oZWFkZXJzLmdldCgibGFzdC1tb2RpZmllZCIpfHx2b2lkIDAsbWF4QWdlOmE/Lm1heEFnZSx1cmw6dCxzdGF0dXM6aS5zdGF0dXMsc3RhdHVzVGV4dDppLnN0YXR1c1RleHR9fWFzeW5jIHBydW5lRXhwaXJlZCgpe3JldHVybiBhd2FpdCB0aGlzLmluaXRQcm9taXNlLDB9fX0pO2Z1bmN0aW9uIFVacihlKXtsZXQgdD17bWF4QWdlOjAsaW1tdXRhYmxlOiExLG5vQ2FjaGU6ITEsbm9TdG9yZTohMSxtdXN0UmV2YWxpZGF0ZTohMX07aWYoIWUpcmV0dXJuIHQ7bGV0IHI9ZS50b0xvd2VyQ2FzZSgpLnNwbGl0KCIsIikubWFwKGE9PmEudHJpbSgpKTtmb3IobGV0IGEgb2YgcilpZihhPT09Im5vLWNhY2hlIil0Lm5vQ2FjaGU9ITA7ZWxzZSBpZihhPT09Im5vLXN0b3JlIil0Lm5vU3RvcmU9ITA7ZWxzZSBpZihhPT09ImltbXV0YWJsZSIpdC5pbW11dGFibGU9ITA7ZWxzZSBpZihhPT09Im11c3QtcmV2YWxpZGF0ZSIpdC5tdXN0UmV2YWxpZGF0ZT0hMDtlbHNlIGlmKGEuc3RhcnRzV2l0aCgibWF4LWFnZT0iKSl7bGV0IGk9cGFyc2VJbnQoYS5zcGxpdCgiPSIpWzFdLDEwKTtpc05hTihpKXx8KHQubWF4QWdlPWkqMWUzKX1yZXR1cm4gdH1mdW5jdGlvbiBXWnIoZSl7aWYoZSl0cnl7cmV0dXJuIG5ldyBEYXRlKGUpLmdldFRpbWUoKX1jYXRjaHtyZXR1cm59fWZ1bmN0aW9uIG0yKGUpe2xldCB0PWUuZ2V0KCJjYWNoZS1jb250cm9sIikscj1lLmdldCgiZXhwaXJlcyIpLGE9ZS5nZXQoImV0YWciKSxpPWUuZ2V0KCJsYXN0LW1vZGlmaWVkIiksbz1VWnIodCk7aWYoby5tYXhBZ2U9PT0wJiZyKXtsZXQgbj1XWnIocik7biYmKG8ubWF4QWdlPU1hdGgubWF4KDAsbi1EYXRlLm5vdygpKSl9cmV0dXJue21heEFnZTpvLm1heEFnZXx8MCxldGFnOmF8fHZvaWQgMCxsYXN0TW9kaWZpZWQ6aXx8dm9pZCAwLGltbXV0YWJsZTpvLmltbXV0YWJsZXx8ITEsbm9DYWNoZTpvLm5vQ2FjaGV8fCExLG5vU3RvcmU6by5ub1N0b3JlfHwhMSxtdXN0UmV2YWxpZGF0ZTpvLm11c3RSZXZhbGlkYXRlfHwhMX19ZnVuY3Rpb24gT3goZSx0KXtpZih0Lm5vU3RvcmUpcmV0dXJuITE7aWYodC5pbW11dGFibGUpcmV0dXJuITA7bGV0IHI9RGF0ZS5ub3coKS1lLnRpbWVzdGFtcCxhPWUubWF4QWdlfHx0Lm1heEFnZXx8MDtyZXR1cm4gYT09PTA/ITE6cjxhfWZ1bmN0aW9uIFJ4KGUpe3JldHVybiBlLm5vQ2FjaGV8fGUubXVzdFJldmFsaWRhdGV9ZnVuY3Rpb24gS0ooZSl7bGV0IHQ9e307cmV0dXJuIGUuZXRhZyYmKHRbImlmLW5vbmUtbWF0Y2giXT1lLmV0YWcpLGUubGFzdE1vZGlmaWVkJiYodFsiaWYtbW9kaWZpZWQtc2luY2UiXT1lLmxhc3RNb2RpZmllZCksdH1mdW5jdGlvbiBKSihlKXtsZXQgdD17fTtyZXR1cm4gZS5mb3JFYWNoKChyLGEpPT57dFthXT1yfSksdH1mdW5jdGlvbiB0OXQoZSl7bGV0IHQ9bmV3IEhlYWRlcnM7cmV0dXJuIE9iamVjdC5lbnRyaWVzKGUpLmZvckVhY2goKFtyLGFdKT0+e3Quc2V0KHIsYSl9KSx0fXZhciBlZWU9bCgoKT0+e30pO2Z1bmN0aW9uIHI5dChlKXtzd2l0Y2goZSl7Y2FzZSJuZXR3b3JrLWZpcnN0IjpyZXR1cm4gbmV3IHRlZTtjYXNlImNhY2hlLWZpcnN0IjpyZXR1cm4gbmV3IHh1ZTtjYXNlInN0YWxlLXdoaWxlLXJldmFsaWRhdGUiOnJldHVybiBuZXcgYnVlO2Nhc2UibmV0d29yay1vbmx5IjpyZXR1cm4gbmV3IHZ1ZTtjYXNlImNhY2hlLW9ubHkiOnJldHVybiBuZXcgeXVlO2RlZmF1bHQ6cmV0dXJuIG5ldyB0ZWV9fXZhciB0ZWUseHVlLGJ1ZSx2dWUseXVlLGE5dD1sKCgpPT57UUooKTtlZWUoKTt0ZWU9Y2xhc3N7YXN5bmMgZXhlY3V0ZSh0KXt0cnl7bGV0IHI9YXdhaXQgdC5mZXRjaEZuKHQucmVxdWVzdCk7cmV0dXJuIHIub2smJmF3YWl0IHRoaXMuY2FjaGVSZXNwb25zZSh0LHIpLHtyZXNwb25zZTpyLGZyb21DYWNoZTohMSxyZXZhbGlkYXRlZDohMX19Y2F0Y2gocil7dC5sb2dnaW5nJiZjb25zb2xlLmxvZygiW3dlYnJlcXVlc3RdIE5ldHdvcmsgZmFpbGVkLCB0cnlpbmcgY2FjaGU6IixyKTtsZXQgYT1hd2FpdCB0LmNhY2hlU3RvcmUuZ2V0KHQuY2FjaGVLZXkpO2lmKGEpcmV0dXJue3Jlc3BvbnNlOnQuY2FjaGVTdG9yZS5yZXNwb25zZUZyb21DYWNoZUVudHJ5KGEpLGZyb21DYWNoZTohMCxyZXZhbGlkYXRlZDohMX07dGhyb3cgcn19YXN5bmMgY2FjaGVSZXNwb25zZSh0LHIpe2xldCBhPW0yKHIuaGVhZGVycyk7aWYoYS5ub1N0b3JlKXJldHVybjtsZXQgaT1hd2FpdCB0LmNhY2hlU3RvcmUuY2FjaGVFbnRyeUZyb21SZXNwb25zZSh0LnJlcXVlc3QudXJsLHIsYSk7YXdhaXQgdC5jYWNoZVN0b3JlLnNldCh0LmNhY2hlS2V5LGkpfX0seHVlPWNsYXNze2FzeW5jIGV4ZWN1dGUodCl7bGV0IHI9YXdhaXQgdC5jYWNoZVN0b3JlLmdldCh0LmNhY2hlS2V5KTtpZihyKXtsZXQgbz1tMihuZXcgSGVhZGVycyhyLmhlYWRlcnMpKTtpZihPeChyLG8pKXJldHVybiB0LmxvZ2dpbmcmJmNvbnNvbGUubG9nKCJbd2VicmVxdWVzdF0gQ2FjaGUgaGl0IChmcmVzaCk6Iix0LnJlcXVlc3QudXJsKSx7cmVzcG9uc2U6dC5jYWNoZVN0b3JlLnJlc3BvbnNlRnJvbUNhY2hlRW50cnkociksZnJvbUNhY2hlOiEwLHJldmFsaWRhdGVkOiExfTtpZihSeChvKSYmKHIuZXRhZ3x8ci5sYXN0TW9kaWZpZWQpKXJldHVybiBhd2FpdCB0aGlzLnJldmFsaWRhdGUodCxyKX10LmxvZ2dpbmcmJmNvbnNvbGUubG9nKCJbd2VicmVxdWVzdF0gQ2FjaGUgbWlzcywgZmV0Y2hpbmc6Iix0LnJlcXVlc3QudXJsKTtsZXQgYT1hd2FpdCB0LmZldGNoRm4odC5yZXF1ZXN0KSxpPW0yKGEuaGVhZGVycyk7aWYoIWkubm9TdG9yZSl7bGV0IG89YXdhaXQgdC5jYWNoZVN0b3JlLmNhY2hlRW50cnlGcm9tUmVzcG9uc2UodC5yZXF1ZXN0LnVybCxhLGkpO2F3YWl0IHQuY2FjaGVTdG9yZS5zZXQodC5jYWNoZUtleSxvKX1yZXR1cm57cmVzcG9uc2U6YSxmcm9tQ2FjaGU6ITEscmV2YWxpZGF0ZWQ6ITF9fWFzeW5jIHJldmFsaWRhdGUodCxyKXtsZXQgYT1LSihyKSxpPW5ldyBSZXF1ZXN0KHQucmVxdWVzdC51cmwse21ldGhvZDp0LnJlcXVlc3QubWV0aG9kLGhlYWRlcnM6ey4uLkpKKHQucmVxdWVzdC5oZWFkZXJzKSwuLi5hfX0pO3RyeXtsZXQgbz1hd2FpdCB0LmZldGNoRm4oaSk7aWYoby5zdGF0dXM9PT0zMDQpcmV0dXJuIHQubG9nZ2luZyYmY29uc29sZS5sb2coIlt3ZWJyZXF1ZXN0XSBDYWNoZSByZXZhbGlkYXRlZCAoMzA0KToiLHQucmVxdWVzdC51cmwpLHIudGltZXN0YW1wPURhdGUubm93KCksYXdhaXQgdC5jYWNoZVN0b3JlLnNldCh0LmNhY2hlS2V5LHIpLHtyZXNwb25zZTp0LmNhY2hlU3RvcmUucmVzcG9uc2VGcm9tQ2FjaGVFbnRyeShyKSxmcm9tQ2FjaGU6ITAscmV2YWxpZGF0ZWQ6ITB9O2lmKG8ub2spe2xldCBuPW0yKG8uaGVhZGVycyk7aWYoIW4ubm9TdG9yZSl7bGV0IHM9YXdhaXQgdC5jYWNoZVN0b3JlLmNhY2hlRW50cnlGcm9tUmVzcG9uc2UodC5yZXF1ZXN0LnVybCxvLG4pO2F3YWl0IHQuY2FjaGVTdG9yZS5zZXQodC5jYWNoZUtleSxzKX19cmV0dXJue3Jlc3BvbnNlOm8sZnJvbUNhY2hlOiExLHJldmFsaWRhdGVkOiEwfX1jYXRjaChvKXtyZXR1cm4gdC5sb2dnaW5nJiZjb25zb2xlLmxvZygiW3dlYnJlcXVlc3RdIFJldmFsaWRhdGlvbiBmYWlsZWQsIHVzaW5nIGNhY2hlOiIsbykse3Jlc3BvbnNlOnQuY2FjaGVTdG9yZS5yZXNwb25zZUZyb21DYWNoZUVudHJ5KHIpLGZyb21DYWNoZTohMCxyZXZhbGlkYXRlZDohMX19fX0sYnVlPWNsYXNze2FzeW5jIGV4ZWN1dGUodCl7bGV0IHI9YXdhaXQgdC5jYWNoZVN0b3JlLmdldCh0LmNhY2hlS2V5KTtpZihyKXtsZXQgbz10LmNhY2hlU3RvcmUucmVzcG9uc2VGcm9tQ2FjaGVFbnRyeShyKTtyZXR1cm4gdGhpcy5yZXZhbGlkYXRlSW5CYWNrZ3JvdW5kKHQscikuY2F0Y2gobj0+e3QubG9nZ2luZyYmY29uc29sZS53YXJuKCJbd2VicmVxdWVzdF0gQmFja2dyb3VuZCByZXZhbGlkYXRpb24gZmFpbGVkOiIsbil9KSx7cmVzcG9uc2U6byxmcm9tQ2FjaGU6ITAscmV2YWxpZGF0ZWQ6ITF9fWxldCBhPWF3YWl0IHQuZmV0Y2hGbih0LnJlcXVlc3QpLGk9bTIoYS5oZWFkZXJzKTtpZighaS5ub1N0b3JlJiZhLm9rKXtsZXQgbz1hd2FpdCB0LmNhY2hlU3RvcmUuY2FjaGVFbnRyeUZyb21SZXNwb25zZSh0LnJlcXVlc3QudXJsLGEsaSk7YXdhaXQgdC5jYWNoZVN0b3JlLnNldCh0LmNhY2hlS2V5LG8pfXJldHVybntyZXNwb25zZTphLGZyb21DYWNoZTohMSxyZXZhbGlkYXRlZDohMX19YXN5bmMgcmV2YWxpZGF0ZUluQmFja2dyb3VuZCh0LHIpe2xldCBhPW0yKG5ldyBIZWFkZXJzKHIuaGVhZGVycykpO2lmKCEoT3gocixhKSYmIVJ4KGEpKSl0cnl7bGV0IGk9YXdhaXQgdC5mZXRjaEZuKHQucmVxdWVzdCk7aWYoaS5vayl7bGV0IG89bTIoaS5oZWFkZXJzKTtpZighby5ub1N0b3JlKXtsZXQgbj1hd2FpdCB0LmNhY2hlU3RvcmUuY2FjaGVFbnRyeUZyb21SZXNwb25zZSh0LnJlcXVlc3QudXJsLGksbyk7YXdhaXQgdC5jYWNoZVN0b3JlLnNldCh0LmNhY2hlS2V5LG4pLHQubG9nZ2luZyYmY29uc29sZS5sb2coIlt3ZWJyZXF1ZXN0XSBCYWNrZ3JvdW5kIHJldmFsaWRhdGlvbiBjb21wbGV0ZToiLHQucmVxdWVzdC51cmwpfX19Y2F0Y2goaSl7dC5sb2dnaW5nJiZjb25zb2xlLndhcm4oIlt3ZWJyZXF1ZXN0XSBCYWNrZ3JvdW5kIHJldmFsaWRhdGlvbiBmYWlsZWQ6IixpKX19fSx2dWU9Y2xhc3N7YXN5bmMgZXhlY3V0ZSh0KXtyZXR1cm57cmVzcG9uc2U6YXdhaXQgdC5mZXRjaEZuKHQucmVxdWVzdCksZnJvbUNhY2hlOiExLHJldmFsaWRhdGVkOiExfX19LHl1ZT1jbGFzc3thc3luYyBleGVjdXRlKHQpe2xldCByPWF3YWl0IHQuY2FjaGVTdG9yZS5nZXQodC5jYWNoZUtleSk7aWYoIXIpdGhyb3cgbmV3IEVycm9yKGBDYWNoZSBtaXNzIGZvciAke3QucmVxdWVzdC51cmx9IChjYWNoZS1vbmx5IG1vZGUpYCk7cmV0dXJue3Jlc3BvbnNlOnQuY2FjaGVTdG9yZS5yZXNwb25zZUZyb21DYWNoZUVudHJ5KHIpLGZyb21DYWNoZTohMCxyZXZhbGlkYXRlZDohMX19fX0pO3ZhciB0bSx3dWU9bCgoKT0+e1FKKCk7YTl0KCk7ZWVlKCk7dG09Y2xhc3N7Y29uc3RydWN0b3IodCxyKXt0aGlzLmNhY2hlU3RvcmU9bmV3IGVtKHQscil9YXN5bmMgZXhlY3V0ZSh0LHIsYSl7bGV0IGk9dGhpcy5kZXRlcm1pbmVTdHJhdGVneSh0LHIpO2lmKGk9PT0ibmV0d29yay1vbmx5IilyZXR1cm57cmVzcG9uc2U6YXdhaXQgYSh0KSxmcm9tQ2FjaGU6ITEscmV2YWxpZGF0ZWQ6ITF9O2xldCBvPXRoaXMuZ2VuZXJhdGVDYWNoZUtleSh0LHIpLG49cjl0KGkpLHM9e3JlcXVlc3Q6dCxjYWNoZUtleTpvLGNhY2hlU3RvcmU6dGhpcy5jYWNoZVN0b3JlLGZldGNoRm46YSxsb2dnaW5nOnIubG9nZ2luZ307cmV0dXJuIGF3YWl0IG4uZXhlY3V0ZShzKX1kZXRlcm1pbmVTdHJhdGVneSh0LHIpe3JldHVybiByLmNhY2hlU3RyYXRlZ3k/ci5jYWNoZVN0cmF0ZWd5OnIuY2FjaGU/dGhpcy5tYXBDYWNoZU1vZGVUb1N0cmF0ZWd5KHIuY2FjaGUpOnQuY2FjaGU/dGhpcy5tYXBDYWNoZU1vZGVUb1N0cmF0ZWd5KHQuY2FjaGUpOiJuZXR3b3JrLWZpcnN0In1tYXBDYWNoZU1vZGVUb1N0cmF0ZWd5KHQpe3N3aXRjaCh0KXtjYXNlImRlZmF1bHQiOnJldHVybiJuZXR3b3JrLWZpcnN0IjtjYXNlIm5vLXN0b3JlIjpjYXNlInJlbG9hZCI6cmV0dXJuIm5ldHdvcmstb25seSI7Y2FzZSJuby1jYWNoZSI6cmV0dXJuIm5ldHdvcmstZmlyc3QiO2Nhc2UiZm9yY2UtY2FjaGUiOnJldHVybiJjYWNoZS1maXJzdCI7Y2FzZSJvbmx5LWlmLWNhY2hlZCI6cmV0dXJuImNhY2hlLW9ubHkiO2RlZmF1bHQ6cmV0dXJuIm5ldHdvcmstZmlyc3QifX1nZW5lcmF0ZUNhY2hlS2V5KHQscil7cmV0dXJuIHIuY2FjaGVLZXk/dHlwZW9mIHIuY2FjaGVLZXk9PSJmdW5jdGlvbiI/ci5jYWNoZUtleSh0KTpyLmNhY2hlS2V5OnRoaXMuY2FjaGVTdG9yZS5nZW5lcmF0ZUNhY2hlS2V5KHQpfWFzeW5jIGNsZWFyKCl7YXdhaXQgdGhpcy5jYWNoZVN0b3JlLmNsZWFyKCl9YXN5bmMgZGVsZXRlKHQpe2F3YWl0IHRoaXMuY2FjaGVTdG9yZS5kZWxldGUodCl9YXN5bmMgaGFzKHQpe3JldHVybiBhd2FpdCB0aGlzLmNhY2hlU3RvcmUuaGFzKHQpfWdldFN0b3JlKCl7cmV0dXJuIHRoaXMuY2FjaGVTdG9yZX19fSk7ZnVuY3Rpb24gaTl0KGUpe3N3aXRjaChlKXtjYXNlImV4cG9uZW50aWFsIjpyZXR1cm4gbmV3IHJlZTtjYXNlImxpbmVhciI6cmV0dXJuIG5ldyBNdWU7Y2FzZSJjb25zdGFudCI6cmV0dXJuIG5ldyBrdWU7ZGVmYXVsdDpyZXR1cm4gbmV3IHJlZX19ZnVuY3Rpb24gbzl0KGUsdD0uMSl7bGV0IHI9ZSp0Kk1hdGgucmFuZG9tKCk7cmV0dXJuIGUrcn12YXIgcmVlLE11ZSxrdWUsbjl0PWwoKCk9PntyZWU9Y2xhc3N7Y2FsY3VsYXRlKHQscixhKXtsZXQgaT1yKk1hdGgucG93KDIsdC0xKTtyZXR1cm4gTWF0aC5taW4oaSxhKX19LE11ZT1jbGFzc3tjYWxjdWxhdGUodCxyLGEpe2xldCBpPXIqdDtyZXR1cm4gTWF0aC5taW4oaSxhKX19LGt1ZT1jbGFzc3tjYWxjdWxhdGUodCxyLGEpe3JldHVybiBNYXRoLm1pbihyLGEpfX19KTt2YXIgcm0sU3VlPWwoKCk9PntGeCgpO245dCgpO3JtPWNsYXNze2NvbnN0cnVjdG9yKHQ9e30pe3RoaXMub3B0aW9ucz17bWF4QXR0ZW1wdHM6dC5tYXhBdHRlbXB0cz8/MyxiYWNrb2ZmOnQuYmFja29mZj8/ImV4cG9uZW50aWFsIixpbml0aWFsRGVsYXk6dC5pbml0aWFsRGVsYXk/PzFlMyxtYXhEZWxheTp0Lm1heERlbGF5Pz8zZTQscmV0cnlPbjp0LnJldHJ5T24/P1s0MDgsNDI5LDUwMCw1MDIsNTAzLDUwNF0sb25SZXRyeTp0Lm9uUmV0cnk/PygoKT0+e30pfX1hc3luYyBleGVjdXRlKHQscil7bGV0IGEsaTtmb3IobGV0IG89MTtvPD10aGlzLm9wdGlvbnMubWF4QXR0ZW1wdHM7bysrKXRyeXtsZXQgbj1hd2FpdCB0KCk7aWYobiBpbnN0YW5jZW9mIFJlc3BvbnNlJiZ0aGlzLnNob3VsZFJldHJ5UmVzcG9uc2Uobikpe2lmKGk9bixvPT09dGhpcy5vcHRpb25zLm1heEF0dGVtcHRzKXJldHVybiBuO2xldCBzPXRoaXMuY2FsY3VsYXRlRGVsYXkobyk7dGhpcy5vcHRpb25zLm9uUmV0cnkobyxuZXcgRXJyb3IoYEhUVFAgJHtuLnN0YXR1c31gKSxzKSxhd2FpdCB0aGlzLmRlbGF5KHMpO2NvbnRpbnVlfXJldHVybiBufWNhdGNoKG4pe2E9biBpbnN0YW5jZW9mIEVycm9yP246bmV3IEVycm9yKFN0cmluZyhuKSk7bGV0IHM9cj9yKG4sbyk6dGhpcy5zaG91bGRSZXRyeUVycm9yKG4pO2lmKG89PT10aGlzLm9wdGlvbnMubWF4QXR0ZW1wdHN8fCFzKXRocm93IGE7bGV0IGM9dGhpcy5jYWxjdWxhdGVEZWxheShvKTt0aGlzLm9wdGlvbnMub25SZXRyeShvLGEsYyksYXdhaXQgdGhpcy5kZWxheShjKX10aHJvdyBhfHxuZXcgRXJyb3IoIk1heCByZXRyeSBhdHRlbXB0cyByZWFjaGVkIil9YXN5bmMgZXhlY3V0ZVdpdGhGYWxsYmFja3ModCxyLGEpe2lmKHQubGVuZ3RoPT09MCl0aHJvdyBuZXcgRXJyb3IoIk5vIFVSTHMgcHJvdmlkZWQgZm9yIGZhbGxiYWNrIGV4ZWN1dGlvbiIpO2xldCBpLG89W107Zm9yKGxldCBuIG9mIHQpdHJ5e2xldCBzPWF3YWl0IHRoaXMuZXhlY3V0ZShhc3luYygpPT5hd2FpdCBhKG4scikpO2lmKHMuc3RhdHVzPDQwMHx8cy5zdGF0dXM+PTQwMCYmcy5zdGF0dXM8NTAwJiZzLnN0YXR1cyE9PTQwOClyZXR1cm4gcztvLnB1c2gobiksaT1uZXcgRXJyb3IoYFJlcXVlc3QgZmFpbGVkIHdpdGggc3RhdHVzICR7cy5zdGF0dXN9YCl9Y2F0Y2gocyl7by5wdXNoKG4pLGk9cyBpbnN0YW5jZW9mIEVycm9yP3M6bmV3IEVycm9yKFN0cmluZyhzKSl9dGhyb3cgbmV3IEVycm9yKGBBbGwgVVJMcyBmYWlsZWQ6ICR7by5qb2luKCIsICIpfS4gTGFzdCBlcnJvcjogJHtpPy5tZXNzYWdlfHwiVW5rbm93biBlcnJvciJ9YCl9c2hvdWxkUmV0cnlSZXNwb25zZSh0KXtsZXQgcj10aGlzLm9wdGlvbnMucmV0cnlPbjtyZXR1cm4gdHlwZW9mIHI9PSJmdW5jdGlvbiI/cih0KTpBcnJheS5pc0FycmF5KHIpP3IuaW5jbHVkZXModC5zdGF0dXMpOiExfXNob3VsZFJldHJ5RXJyb3IodCl7aWYodCBpbnN0YW5jZW9mIFR5cGVFcnJvciYmdC5tZXNzYWdlLmluY2x1ZGVzKCJmZXRjaCIpfHx0Lm5hbWU9PT0iQWJvcnRFcnJvciJ8fHQubWVzc2FnZS5pbmNsdWRlcygidGltZW91dCIpKXJldHVybiEwO2xldCByPXRoaXMub3B0aW9ucy5yZXRyeU9uO3JldHVybiB0eXBlb2Ygcj09ImZ1bmN0aW9uIj9yKHZvaWQgMCx0KTohMX1jYWxjdWxhdGVEZWxheSh0KXtsZXQgYT1pOXQodGhpcy5vcHRpb25zLmJhY2tvZmYpLmNhbGN1bGF0ZSh0LHRoaXMub3B0aW9ucy5pbml0aWFsRGVsYXksdGhpcy5vcHRpb25zLm1heERlbGF5KTtyZXR1cm4gbzl0KGEpfWFzeW5jIGRlbGF5KHQpe2F3YWl0IFp0LmRlbGF5Rm9yKHQpfX19KTt2YXIgYW0senVlPWwoKCk9PntGeCgpO2FtPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5pbkZsaWdodFJlcXVlc3RzPW5ldyBNYXB9Z2VuZXJhdGVLZXkodCl7bGV0IHI9dC51cmwsYT10Lm1ldGhvZDtyZXR1cm4gYT09PSJHRVQifHxhPT09IkhFQUQiP2Ake2F9OiR7cn1gOmAke2F9OiR7cn06JHtEYXRlLm5vdygpfWB9YXN5bmMgZXhlY3V0ZSh0LHIpe2xldCBhPXRoaXMuaW5GbGlnaHRSZXF1ZXN0cy5nZXQodCk7aWYoYSlyZXR1cm57cmVzcG9uc2U6KGF3YWl0IGEucHJvbWlzZSkuY2xvbmUoKSx3YXNEZWR1cGxpY2F0ZWQ6ITB9O2xldCBpPXB0LmRlZmVyKCk7dGhpcy5pbkZsaWdodFJlcXVlc3RzLnNldCh0LGkpO3RyeXtsZXQgbz1hd2FpdCByKCk7cmV0dXJuIGkucmVzb2x2ZShvKSx0aGlzLmluRmxpZ2h0UmVxdWVzdHMuZGVsZXRlKHQpLHtyZXNwb25zZTpvLHdhc0RlZHVwbGljYXRlZDohMX19Y2F0Y2gobyl7dGhyb3cgaS5yZWplY3QobyksdGhpcy5pbkZsaWdodFJlcXVlc3RzLmRlbGV0ZSh0KSxvfX1pc0luRmxpZ2h0KHQpe3JldHVybiB0aGlzLmluRmxpZ2h0UmVxdWVzdHMuaGFzKHQpfWdldEluRmxpZ2h0Q291bnQoKXtyZXR1cm4gdGhpcy5pbkZsaWdodFJlcXVlc3RzLnNpemV9Y2xlYXIoKXt0aGlzLmluRmxpZ2h0UmVxdWVzdHMuY2xlYXIoKX19fSk7ZnVuY3Rpb24gR1pyKGUpe2xldCB0PW5ldyBBYm9ydENvbnRyb2xsZXIscj1uZXcgWnQuVGltZW91dChlLG51bGwpO3JldHVybiByLnByb21pc2UudGhlbigoKT0+e3QuYWJvcnQoKX0pLHtjb250cm9sbGVyOnQsY2xlYW51cDooKT0+e3IuY2FuY2VsKCl9fX1hc3luYyBmdW5jdGlvbiBDdWUoZSx0LHIpe2xldHtjb250cm9sbGVyOmEsY2xlYW51cDppfT1HWnIocik7dHJ5e2xldCBvPWF3YWl0IGZldGNoKGUsey4uLnQsc2lnbmFsOmEuc2lnbmFsfSk7cmV0dXJuIGkoKSxvfWNhdGNoKG8pe3Rocm93IGkoKSxvIGluc3RhbmNlb2YgRXJyb3ImJm8ubmFtZT09PSJBYm9ydEVycm9yIj9uZXcgRXJyb3IoYFJlcXVlc3QgdGltZW91dCBhZnRlciAke3J9bXM6ICR7ZX1gKTpvfX12YXIgczl0PWwoKCk9PntGeCgpfSk7dmFyIGxkLF91ZT1sKCgpPT57UzZlKCk7d3VlKCk7U3VlKCk7enVlKCk7czl0KCk7bGQ9Y2xhc3N7Y29uc3RydWN0b3IodD17fSl7dGhpcy5kZWZhdWx0T3B0aW9ucz10LHRoaXMuaW50ZXJjZXB0b3JNYW5hZ2VyPW5ldyBHaCx0aGlzLmNhY2hlTWFuYWdlcj1uZXcgdG0sdGhpcy5kZWR1cGxpY2F0b3I9bmV3IGFtfWFkZFJlcXVlc3RJbnRlcmNlcHRvcih0KXt0aGlzLmludGVyY2VwdG9yTWFuYWdlci5hZGRSZXF1ZXN0SW50ZXJjZXB0b3IodCl9YWRkUmVzcG9uc2VJbnRlcmNlcHRvcih0KXt0aGlzLmludGVyY2VwdG9yTWFuYWdlci5hZGRSZXNwb25zZUludGVyY2VwdG9yKHQpfWFkZEVycm9ySW50ZXJjZXB0b3IodCl7dGhpcy5pbnRlcmNlcHRvck1hbmFnZXIuYWRkRXJyb3JJbnRlcmNlcHRvcih0KX1yZW1vdmVSZXF1ZXN0SW50ZXJjZXB0b3IodCl7dGhpcy5pbnRlcmNlcHRvck1hbmFnZXIucmVtb3ZlUmVxdWVzdEludGVyY2VwdG9yKHQpfXJlbW92ZVJlc3BvbnNlSW50ZXJjZXB0b3IodCl7dGhpcy5pbnRlcmNlcHRvck1hbmFnZXIucmVtb3ZlUmVzcG9uc2VJbnRlcmNlcHRvcih0KX1yZW1vdmVFcnJvckludGVyY2VwdG9yKHQpe3RoaXMuaW50ZXJjZXB0b3JNYW5hZ2VyLnJlbW92ZUVycm9ySW50ZXJjZXB0b3IodCl9Y2xlYXJJbnRlcmNlcHRvcnMoKXt0aGlzLmludGVyY2VwdG9yTWFuYWdlci5jbGVhckFsbCgpfWFzeW5jIGNsZWFyQ2FjaGUoKXthd2FpdCB0aGlzLmNhY2hlTWFuYWdlci5jbGVhcigpfWFzeW5jIHJlcXVlc3QodCxyPXt9KXtsZXQgYT17Li4udGhpcy5kZWZhdWx0T3B0aW9ucywuLi5yfSxpO2lmKHR5cGVvZiB0PT0ic3RyaW5nIj9pPW5ldyBSZXF1ZXN0KHQsYSk6aT10LGk9YXdhaXQgdGhpcy5pbnRlcmNlcHRvck1hbmFnZXIucHJvY2Vzc1JlcXVlc3QoaSksYS5pbnRlcmNlcHRvcnM/LnJlcXVlc3QpZm9yKGxldCBuIG9mIGEuaW50ZXJjZXB0b3JzLnJlcXVlc3QpaT1hd2FpdCBuKGkpO2lmKGEuZGVkdXBsaWNhdGU/PyExKXtsZXQgbj10aGlzLmRlZHVwbGljYXRvci5nZW5lcmF0ZUtleShpKTtyZXR1cm4oYXdhaXQgdGhpcy5kZWR1cGxpY2F0b3IuZXhlY3V0ZShuLGFzeW5jKCk9PmF3YWl0IHRoaXMuZXhlY3V0ZVJlcXVlc3QoaSxhKSkpLnJlc3BvbnNlfXJldHVybiBhd2FpdCB0aGlzLmV4ZWN1dGVSZXF1ZXN0KGksYSl9YXN5bmMgZXhlY3V0ZVJlcXVlc3QodCxyKXt0cnl7bGV0IGE9dHlwZW9mIHIucmV0cnk9PSJvYmplY3QiP3IucmV0cnk6ci5yZXRyeT97fTp2b2lkIDAsaT1hc3luYyBzPT57bGV0IGM9ci50aW1lb3V0Pz82ZTQ7cmV0dXJuIGF3YWl0IEN1ZShzLnVybCx7bWV0aG9kOnMubWV0aG9kLGhlYWRlcnM6cy5oZWFkZXJzLGJvZHk6cy5ib2R5LC4uLnJ9LGMpfSxvPWFzeW5jKHMsYyk9PntsZXQgZD1yLnRpbWVvdXQ/PzZlNDtyZXR1cm4gYXdhaXQgQ3VlKHMsYyxkKX0sbjtpZihhKXtsZXQgcz1uZXcgcm0oYSk7aWYoci5mYWxsYmFja1VybHMmJnIuZmFsbGJhY2tVcmxzLmxlbmd0aD4wKXtsZXQgYz1bdC51cmwsLi4uci5mYWxsYmFja1VybHNdO249YXdhaXQgcy5leGVjdXRlV2l0aEZhbGxiYWNrcyhjLHttZXRob2Q6dC5tZXRob2QsaGVhZGVyczp0LmhlYWRlcnMsYm9keTp0LmJvZHksLi4ucn0sbyl9ZWxzZSBuPWF3YWl0IHMuZXhlY3V0ZShhc3luYygpPT4oYXdhaXQgdGhpcy5jYWNoZU1hbmFnZXIuZXhlY3V0ZSh0LHIsaSkpLnJlc3BvbnNlKX1lbHNlIG49KGF3YWl0IHRoaXMuY2FjaGVNYW5hZ2VyLmV4ZWN1dGUodCxyLGkpKS5yZXNwb25zZTtpZihuPWF3YWl0IHRoaXMuaW50ZXJjZXB0b3JNYW5hZ2VyLnByb2Nlc3NSZXNwb25zZShuKSxyLmludGVyY2VwdG9ycz8ucmVzcG9uc2UpZm9yKGxldCBzIG9mIHIuaW50ZXJjZXB0b3JzLnJlc3BvbnNlKW49YXdhaXQgcyhuKTtyZXR1cm4gbn1jYXRjaChhKXt0aHJvdyBhd2FpdCB0aGlzLmludGVyY2VwdG9yTWFuYWdlci5wcm9jZXNzRXJyb3IoYSBpbnN0YW5jZW9mIEVycm9yP2E6bmV3IEVycm9yKFN0cmluZyhhKSkpfX1hc3luYyBnZXRKc29uKHQscj17fSl7bGV0IGE9YXdhaXQgdGhpcy5yZXF1ZXN0KHQsey4uLnIsbWV0aG9kOiJHRVQiLGhlYWRlcnM6e0FjY2VwdDoiYXBwbGljYXRpb24vanNvbiIsLi4uci5oZWFkZXJzfHx7fX19KTtpZighYS5vayl0aHJvdyBuZXcgRXJyb3IoYEhUVFAgJHthLnN0YXR1c306ICR7YS5zdGF0dXNUZXh0fWApO3JldHVybiBhd2FpdCBhLmpzb24oKX1hc3luYyBwb3N0SnNvbih0LHIsYT17fSl7bGV0IGk9YXdhaXQgdGhpcy5yZXF1ZXN0KHQsey4uLmEsbWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiIsQWNjZXB0OiJhcHBsaWNhdGlvbi9qc29uIiwuLi5hLmhlYWRlcnN8fHt9fSxib2R5OkpTT04uc3RyaW5naWZ5KHIpfSk7aWYoIWkub2spdGhyb3cgbmV3IEVycm9yKGBIVFRQICR7aS5zdGF0dXN9OiAke2kuc3RhdHVzVGV4dH1gKTtyZXR1cm4gYXdhaXQgaS5qc29uKCl9YXN5bmMgcHV0SnNvbih0LHIsYT17fSl7bGV0IGk9YXdhaXQgdGhpcy5yZXF1ZXN0KHQsey4uLmEsbWV0aG9kOiJQVVQiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIixBY2NlcHQ6ImFwcGxpY2F0aW9uL2pzb24iLC4uLmEuaGVhZGVyc3x8e319LGJvZHk6SlNPTi5zdHJpbmdpZnkocil9KTtpZighaS5vayl0aHJvdyBuZXcgRXJyb3IoYEhUVFAgJHtpLnN0YXR1c306ICR7aS5zdGF0dXNUZXh0fWApO3JldHVybiBhd2FpdCBpLmpzb24oKX1hc3luYyBkZWxldGVKc29uKHQscj17fSl7bGV0IGE9YXdhaXQgdGhpcy5yZXF1ZXN0KHQsey4uLnIsbWV0aG9kOiJERUxFVEUiLGhlYWRlcnM6e0FjY2VwdDoiYXBwbGljYXRpb24vanNvbiIsLi4uci5oZWFkZXJzfHx7fX19KTtpZighYS5vayl0aHJvdyBuZXcgRXJyb3IoYEhUVFAgJHthLnN0YXR1c306ICR7YS5zdGF0dXNUZXh0fWApO3JldHVybiBhd2FpdCBhLmpzb24oKX19fSk7YXN5bmMgZnVuY3Rpb24gVW8oZSx0KXtsZXQgcj1lIGluc3RhbmNlb2YgUmVxdWVzdD9lLnVybDpTdHJpbmcoZSksYT1lIGluc3RhbmNlb2YgUmVxdWVzdD9lOm5ldyBSZXF1ZXN0KHIsdCk7cmV0dXJuIGF3YWl0IHNzLnJlcXVlc3QoYSx0KX12YXIgc3MsbDl0PWwoKCk9PntfdWUoKTtzcz1uZXcgbGQ7VW8uZ2V0SnNvbj1hc3luYyBmdW5jdGlvbihlLHQpe3JldHVybiBhd2FpdCBzcy5nZXRKc29uKGUsdCl9LFVvLnBvc3RKc29uPWFzeW5jIGZ1bmN0aW9uKGUsdCxyKXtyZXR1cm4gYXdhaXQgc3MucG9zdEpzb24oZSx0LHIpfSxVby5wdXRKc29uPWFzeW5jIGZ1bmN0aW9uKGUsdCxyKXtyZXR1cm4gYXdhaXQgc3MucHV0SnNvbihlLHQscil9LFVvLmRlbGV0ZUpzb249YXN5bmMgZnVuY3Rpb24oZSx0KXtyZXR1cm4gYXdhaXQgc3MuZGVsZXRlSnNvbihlLHQpfSxVby5hZGRSZXF1ZXN0SW50ZXJjZXB0b3I9ZnVuY3Rpb24oZSl7c3MuYWRkUmVxdWVzdEludGVyY2VwdG9yKGUpfSxVby5hZGRSZXNwb25zZUludGVyY2VwdG9yPWZ1bmN0aW9uKGUpe3NzLmFkZFJlc3BvbnNlSW50ZXJjZXB0b3IoZSl9LFVvLmFkZEVycm9ySW50ZXJjZXB0b3I9ZnVuY3Rpb24oZSl7c3MuYWRkRXJyb3JJbnRlcmNlcHRvcihlKX0sVW8uY2xlYXJJbnRlcmNlcHRvcnM9ZnVuY3Rpb24oKXtzcy5jbGVhckludGVyY2VwdG9ycygpfSxVby5jbGVhckNhY2hlPWFzeW5jIGZ1bmN0aW9uKCl7YXdhaXQgc3MuY2xlYXJDYWNoZSgpfSxVby5jcmVhdGVDbGllbnQ9ZnVuY3Rpb24oZSl7cmV0dXJuIG5ldyBsZChlKX0sVW8uZ2V0RGVmYXVsdENsaWVudD1mdW5jdGlvbigpe3JldHVybiBzc319KTt2YXIgY2Q9e307cWUoY2Qse0NhY2hlTWFuYWdlcjooKT0+dG0sQ2FjaGVTdG9yZTooKT0+ZW0sSW50ZXJjZXB0b3JNYW5hZ2VyOigpPT5HaCxSZXF1ZXN0RGVkdXBsaWNhdG9yOigpPT5hbSxSZXRyeU1hbmFnZXI6KCk9PnJtLFdlYnJlcXVlc3RDbGllbnQ6KCk9PmxkLGNyZWF0ZUNvbmRpdGlvbmFsSGVhZGVyczooKT0+S0osZXh0cmFjdENhY2hlTWV0YWRhdGE6KCk9Pm0yLGhlYWRlcnNUb09iamVjdDooKT0+SkosaXNGcmVzaDooKT0+T3gsb2JqZWN0VG9IZWFkZXJzOigpPT50OXQscmVxdWlyZXNSZXZhbGlkYXRpb246KCk9PlJ4LHdlYnJlcXVlc3Q6KCk9PlVvfSk7dmFyIFR1ZT1sKCgpPT57bDl0KCk7X3VlKCk7d3VlKCk7UUooKTtTdWUoKTtTNmUoKTt6dWUoKTtlZWUoKX0pO3ZhciBJMCxOMD1sKCgpPT57amcoKTtJMD1BcihiWCgpLDEpO2J4KCk7Q210KCk7ZjAoKTtfbXQoKTtDbygpO1R1ZSgpfSk7dmFyIGxzLGltPWwoKCk9PntOMCgpO2xzPWNsYXNze2NvbnN0cnVjdG9yKHQscil7dGhpcy5lcnJvclRleHQ9dCx0aGlzLmVycm9yRGF0YT1yfX19KTt2YXIgaWVlLGM5dD1sKCgpPT57aW0oKTtOMCgpO2llZT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMubG9jYWxEYXRhPXt9fWFzeW5jIHBhc3NHdWFyZHModCxyKXtsZXQgYT1uZXcgVHguR3VhcmRTZXQodCk7aWYoIWF3YWl0IGEuYWxsR3VhcmRzUGFzcyhyKSl7bGV0IG89YXdhaXQgYS5nZXRGYWlsZWRIaW50KHIpO3Rocm93IG5ldyBscyhgZ3VhcmQgZmFpbGVkOiAke299YCx7ZmFpbGVkSGludDpvfSl9fX19KTt2YXIgTHVlLER1ZT1sKCgpPT57TjAoKTtpbSgpO2M5dCgpO0x1ZT1jbGFzc3tjb25zdHJ1Y3Rvcih0LHIpe3RoaXMubWV0aG9kPXQsdGhpcy5oYW5kbGVyRnVuY3Rpb249cn1hc3luYyBhZGRSZXNwb25zZSh0KXtpZih0Lm1ldGhvZCE9PXRoaXMubWV0aG9kKXRocm93IG5ldyBFcnJvcigidGhpcyBoYW5kbGVyIGhhcyBiZWVuIGdpdmVuIGEgd3JvbmcgbWV0aG9kIHRvIGFuc3dlciB0by4gUGxlYXNlIHVzZSBhIFR5cGVkUm91dGVyIHRvIGZpbHRlciByZXF1ZXN0cyIpO2xldCByLGE9bmV3IGllZTt0LmxvY2FsRGF0YSYmKGEubG9jYWxEYXRhPXQubG9jYWxEYXRhKTtsZXQgaT1hd2FpdCB0aGlzLmhhbmRsZXJGdW5jdGlvbih0LnJlcXVlc3QsYSkuY2F0Y2gobz0+e28gaW5zdGFuY2VvZiBscz9yPW86Y29uc29sZS5sb2cobyl9KTtyZXR1cm4gciYmKHQuZXJyb3I9e3RleHQ6ci5lcnJvclRleHQsZGF0YTpyLmVycm9yRGF0YX0pLGkmJih0LnJlc3BvbnNlPWkpLHQ/LmNvcnJlbGF0aW9uPy5waGFzZSYmKHQuY29ycmVsYXRpb24ucGhhc2U9InJlc3BvbnNlIiksdH19fSk7dmFyIGRkLEJ4PWwoKCk9PntOMCgpO29lZSgpO0R1ZSgpO0F1ZSgpO2ltKCk7ZGQ9Y2xhc3MgZXtjb25zdHJ1Y3Rvcigpe3RoaXMuaG9va3M9e30sdGhpcy5yb3V0ZXJNYXA9bmV3IENpLk9iamVjdE1hcCx0aGlzLmhhbmRsZXJNYXA9bmV3IENpLk9iamVjdE1hcCx0aGlzLnJlZ2lzdGVyZWRWaXJ0dWFsU3RyZWFtcz1uZXcgQ2kuT2JqZWN0TWFwLHRoaXMubWlkZGxld2FyZXM9W10sdGhpcy5maXJlRXZlbnRJbnRlcmVzdE1hcD1uZXcgQ2kuSW50ZXJlc3RNYXAodD0+dCl9c3RhdGljIGdldCBnbG9iYWxIb29rcygpe3JldHVybiBnbG9iYWxUaGlzLl9fdHlwZWRSb3V0ZXJHbG9iYWxIb29rc3x8KGdsb2JhbFRoaXMuX190eXBlZFJvdXRlckdsb2JhbEhvb2tzPXt9KSxnbG9iYWxUaGlzLl9fdHlwZWRSb3V0ZXJHbG9iYWxIb29rc31zdGF0aWMgc2V0IGdsb2JhbEhvb2tzKHQpe2dsb2JhbFRoaXMuX190eXBlZFJvdXRlckdsb2JhbEhvb2tzPXR9c3RhdGljIHNldEdsb2JhbEhvb2tzKHQpe2xldCByPWUuZ2xvYmFsSG9va3M7ZS5nbG9iYWxIb29rcz17Li4uciwuLi50fX1zdGF0aWMgY2xlYXJHbG9iYWxIb29rcygpe2dsb2JhbFRoaXMuX190eXBlZFJvdXRlckdsb2JhbEhvb2tzPXt9fXNldEhvb2tzKHQpe3RoaXMuaG9va3M9ey4uLnRoaXMuaG9va3MsLi4udH19Y2FsbEhvb2sodCxyKXt0cnl7ZS5nbG9iYWxIb29rc1t0XT8uKHIpLHRoaXMuaG9va3NbdF0/LihyKX1jYXRjaChhKXtjb25zb2xlLmVycm9yKGBUeXBlZFJvdXRlciBob29rIGVycm9yICgke3R9KTpgLGEpfX1hZGRNaWRkbGV3YXJlKHQpe3RoaXMubWlkZGxld2FyZXMucHVzaCh0KX1hZGRUeXBlZEhhbmRsZXIodCl7aWYodGhpcy5nZXRUeXBlZEhhbmRsZXJGb3JNZXRob2QodC5tZXRob2QpKXRocm93IG5ldyBFcnJvcihgYSBUeXBlZEhhbmRsZXIgZm9yICR7dC5tZXRob2R9IGFscmVkeSBleGlzdHMhIENhbid0IGFkZCBhbm90aGVyIG9uZS5gKTt0aGlzLmhhbmRsZXJNYXAuYWRkKHQpfWFkZFR5cGVkUm91dGVyKHQpe3RoaXMucm91dGVyTWFwLmZpbmRTeW5jKGE9PmE9PT10KXx8KHRoaXMucm91dGVyTWFwLmFkZCh0KSx0LmFkZFR5cGVkUm91dGVyKHRoaXMpKX1jaGVja0ZvclR5cGVkSGFuZGxlcih0KXtyZXR1cm4hIXRoaXMuZ2V0VHlwZWRIYW5kbGVyRm9yTWV0aG9kKHQpfWdldFR5cGVkSGFuZGxlckZvck1ldGhvZCh0LHI9W10pe3IucHVzaCh0aGlzKTtsZXQgYTtyZXR1cm4gYT10aGlzLmhhbmRsZXJNYXAuZmluZFN5bmMoaT0+aS5tZXRob2Q9PT10KSxhfHx0aGlzLnJvdXRlck1hcC5nZXRBcnJheSgpLmZvckVhY2goaT0+eyFhJiYhci5pbmNsdWRlcyhpKSYmKGE9aS5nZXRUeXBlZEhhbmRsZXJGb3JNZXRob2QodCxyKSl9KSxhfWdldFR5cGVkSGFuZGxlckFuZFJvdXRlcih0LHI9W10pe3IucHVzaCh0aGlzKTtsZXQgYT10aGlzLmhhbmRsZXJNYXAuZmluZFN5bmMoaT0+aS5tZXRob2Q9PT10KTtpZihhKXJldHVybntoYW5kbGVyOmEscm91dGVyOnRoaXN9O2ZvcihsZXQgaSBvZiB0aGlzLnJvdXRlck1hcC5nZXRBcnJheSgpKWlmKCFyLmluY2x1ZGVzKGkpKXtsZXQgbz1pLmdldFR5cGVkSGFuZGxlckFuZFJvdXRlcih0LHIpO2lmKG8pcmV0dXJuIG99cmV0dXJuIG51bGx9c3RhdGlje3RoaXMuZGVmYXVsdFJvdXRlT3B0aW9ucz17bG9jYWxSZXF1ZXN0OiExLHNraXBIb29rczohMX19YXN5bmMgcm91dGVBbmRBZGRSZXNwb25zZSh0LHI9e30pe2xldCBhPXsuLi5lLmRlZmF1bHRSb3V0ZU9wdGlvbnMsLi4ucn07aWYodD1jcy5kZWNvZGVQYXlsb2FkRnJvbU5ldHdvcmsodCx7dHlwZWRyb3V0ZXI6dGhpc30pLHQubG9jYWxEYXRhPXQubG9jYWxEYXRhfHx7fSx0LmxvY2FsRGF0YS5maXJzdFR5cGVkcm91dGVyPXRoaXMsdC5tZXRob2Q9PT0iIyNWaXJ0dWFsU3RyZWFtIyMiKXtsZXQgaT1hd2FpdCB0aGlzLmhhbmRsZVN0cmVhbVR5cGVkUmVxdWVzdCh0KTtyZXR1cm4gaS5sb2NhbERhdGE9bnVsbCxpfWlmKHQ/LmNvcnJlbGF0aW9uPy5waGFzZT09PSJyZXF1ZXN0Inx8YS5sb2NhbFJlcXVlc3Qpe2xldCBpPURhdGUubm93KCk7YS5za2lwSG9va3N8fHRoaXMuY2FsbEhvb2soIm9uSW5jb21pbmdSZXF1ZXN0Iix7Y29ycmVsYXRpb25JZDp0LmNvcnJlbGF0aW9uPy5pZHx8InVua25vd24iLG1ldGhvZDp0Lm1ldGhvZCxkaXJlY3Rpb246ImluY29taW5nIixwaGFzZToicmVxdWVzdCIsdGltZXN0YW1wOmkscGF5bG9hZDp0LnJlcXVlc3R9KTtsZXQgbz10aGlzLmdldFR5cGVkSGFuZGxlckFuZFJvdXRlcih0Lm1ldGhvZCk7aWYoIW8pcmV0dXJuIGNvbnNvbGUubG9nKGBDYW5ub3QgZmluZCBoYW5kbGVyIGZvciBtZXRob2RuYW1lICR7dC5tZXRob2R9YCksdC5lcnJvcj17dGV4dDoiVGhlcmUgaXMgbm8gYXZhaWxhYmxlIG1ldGhvZCBmb3IgdGhpcyBjYWxsIG9uIHRoZSBzZXJ2ZXIgc2lkZSIsZGF0YTp7fX0sdC5jb3JyZWxhdGlvbi5waGFzZT0icmVzcG9uc2UiLHQubG9jYWxEYXRhPW51bGwsdD1jcy5lbmNvZGVQYXlsb2FkRm9yTmV0d29yayh0LHt0eXBlZHJvdXRlcjp0aGlzfSksYS5za2lwSG9va3N8fHRoaXMuY2FsbEhvb2soIm9uT3V0Z29pbmdSZXNwb25zZSIse2NvcnJlbGF0aW9uSWQ6dC5jb3JyZWxhdGlvbj8uaWR8fCJ1bmtub3duIixtZXRob2Q6dC5tZXRob2QsZGlyZWN0aW9uOiJvdXRnb2luZyIscGhhc2U6InJlc3BvbnNlIix0aW1lc3RhbXA6RGF0ZS5ub3coKSxkdXJhdGlvbk1zOkRhdGUubm93KCktaSxwYXlsb2FkOnQucmVzcG9uc2UsZXJyb3I6dC5lcnJvcj8udGV4dH0pLHQ7bGV0e2hhbmRsZXI6bixyb3V0ZXI6c309bztpZihzLm1pZGRsZXdhcmVzLmxlbmd0aD4wKXRyeXtmb3IobGV0IGMgb2Ygcy5taWRkbGV3YXJlcylhd2FpdCBjKHQpfWNhdGNoKGMpe3JldHVybiBjIGluc3RhbmNlb2YgbHM/dC5lcnJvcj17dGV4dDpjLmVycm9yVGV4dCxkYXRhOmMuZXJyb3JEYXRhfHx7fX06dC5lcnJvcj17dGV4dDpjLm1lc3NhZ2V8fCJNaWRkbGV3YXJlIGVycm9yIixkYXRhOnt9fSx0LmNvcnJlbGF0aW9uLnBoYXNlPSJyZXNwb25zZSIsdC5sb2NhbERhdGE9bnVsbCx0PWNzLmVuY29kZVBheWxvYWRGb3JOZXR3b3JrKHQse3R5cGVkcm91dGVyOnRoaXN9KSxhLnNraXBIb29rc3x8dGhpcy5jYWxsSG9vaygib25PdXRnb2luZ1Jlc3BvbnNlIix7Y29ycmVsYXRpb25JZDp0LmNvcnJlbGF0aW9uPy5pZHx8InVua25vd24iLG1ldGhvZDp0Lm1ldGhvZCxkaXJlY3Rpb246Im91dGdvaW5nIixwaGFzZToicmVzcG9uc2UiLHRpbWVzdGFtcDpEYXRlLm5vdygpLGR1cmF0aW9uTXM6RGF0ZS5ub3coKS1pLHBheWxvYWQ6dC5yZXNwb25zZSxlcnJvcjp0LmVycm9yPy50ZXh0fSksdH1yZXR1cm4gdD1hd2FpdCBuLmFkZFJlc3BvbnNlKHQpLHQubG9jYWxEYXRhPW51bGwsdD1jcy5lbmNvZGVQYXlsb2FkRm9yTmV0d29yayh0LHt0eXBlZHJvdXRlcjp0aGlzfSksYS5za2lwSG9va3N8fHRoaXMuY2FsbEhvb2soIm9uT3V0Z29pbmdSZXNwb25zZSIse2NvcnJlbGF0aW9uSWQ6dC5jb3JyZWxhdGlvbj8uaWR8fCJ1bmtub3duIixtZXRob2Q6dC5tZXRob2QsZGlyZWN0aW9uOiJvdXRnb2luZyIscGhhc2U6InJlc3BvbnNlIix0aW1lc3RhbXA6RGF0ZS5ub3coKSxkdXJhdGlvbk1zOkRhdGUubm93KCktaSxwYXlsb2FkOnQucmVzcG9uc2UsZXJyb3I6dC5lcnJvcj8udGV4dH0pLHR9ZWxzZSByZXR1cm4gdD8uY29ycmVsYXRpb24/LnBoYXNlPT09InJlc3BvbnNlIj8oYS5za2lwSG9va3N8fHRoaXMuY2FsbEhvb2soIm9uSW5jb21pbmdSZXNwb25zZSIse2NvcnJlbGF0aW9uSWQ6dC5jb3JyZWxhdGlvbj8uaWR8fCJ1bmtub3duIixtZXRob2Q6dC5tZXRob2QsZGlyZWN0aW9uOiJpbmNvbWluZyIscGhhc2U6InJlc3BvbnNlIix0aW1lc3RhbXA6RGF0ZS5ub3coKSxwYXlsb2FkOnQucmVzcG9uc2UsZXJyb3I6dC5lcnJvcj8udGV4dH0pLHRoaXMuZmlyZUV2ZW50SW50ZXJlc3RNYXAuZmluZEludGVyZXN0KHQuY29ycmVsYXRpb24uaWQpPy5mdWxsZmlsbEludGVyZXN0KHQpLG51bGwpOihjb25zb2xlLmxvZygicmVjZWl2ZWQgd2VpcmRseSBzaGFwZWQgcmVxdWVzdCIpLGNvbnNvbGUubG9nKHQpLG51bGwpfWFzeW5jIGhhbmRsZVN0cmVhbVR5cGVkUmVxdWVzdCh0KXtsZXQgcj1hd2FpdCB0aGlzLnJlZ2lzdGVyZWRWaXJ0dWFsU3RyZWFtcy5maW5kKGFzeW5jIGk9Pmkuc3RyZWFtSWQ9PT10LnJlcXVlc3Quc3RyZWFtSWQpO2lmKHIpY29uc29sZS5sb2coYHN1Y2Nlc3M6IGZvdW5kIHJlbGV2YW50IHZpcnR1YWwgc3RyZWFtIHdpdGggaWQgJHt0LnJlcXVlc3Quc3RyZWFtSWR9YCk7ZWxzZSByZXR1cm4gY29uc29sZS5sb2coYG5vIHJlbGV2YW50IHZpcnR1YWwgc3RyZWFtIGZvdW5kIGZvciBzdHJlYW0gd2l0aCBpZCAke3QucmVxdWVzdC5zdHJlYW1JZH1gKSxjb25zb2xlLmxvZyh0aGlzLnJlZ2lzdGVyZWRWaXJ0dWFsU3RyZWFtcy5nZXRBcnJheSgpKSx0O3JldHVybiBhd2FpdCByLmhhbmRsZVN0cmVhbVRyKHQpfX19KTt2YXIgZDl0LGNzLG9lZT1sKCgpPT57TjAoKTtCeCgpO2Q5dD0iIyMjIyMjIyMjIyMjI0NMT1NJTkcgQklUIyMjIyMjIyMjIyMjIyIsY3M9Y2xhc3MgZXtzdGF0aWMgZW5jb2RlUGF5bG9hZEZvck5ldHdvcmsodCxyLGEsaT1bXSl7cmV0dXJuIXR8fFdoLmlzQnVmZmVyTGlrZSh0KT90OnQgaW5zdGFuY2VvZiBlPyghdC5zaWRlJiZyLnNlbmRNZXRob2QmJih0LnNpZGU9InJlcXVlc3RpbmciLHQuc2VuZE1ldGhvZD1yLnNlbmRNZXRob2QpLCF0LnNpZGUmJnIudHlwZWRyb3V0ZXImJih0LnNpZGU9InJlc3BvbmRpbmciLHQudHlwZWRyb3V0ZXI9ci50eXBlZHJvdXRlcixyLnR5cGVkcm91dGVyLnJlZ2lzdGVyZWRWaXJ0dWFsU3RyZWFtcy5hZGQodCkpLCFhLnJlc3BvbnNlfHxpLmluY2x1ZGVzKCJyZXNwb25zZSIpPyh0LnN0YXJ0S2VlcEFsaXZlTG9vcCgpLHtfaXNWaXJ0dWFsU3RyZWFtOiEwLHN0cmVhbUlkOnQuc3RyZWFtSWR9KTp7X09CTUlUVEVEX1ZJUlRVQUxfU1RSRUFNOiEwLHJlYXNvbjoicGF0aCBpcyB1bmRlciAucmVxdWVzdDogb2JtaXR0ZWQgZm9yIGRlZHVwbGljYXRpb24gcmVhc29ucyBpbiByZXNwb25zZSBjeWNsZS4ifSk6QXJyYXkuaXNBcnJheSh0KT90Lm1hcCgobyxuKT0+ZS5lbmNvZGVQYXlsb2FkRm9yTmV0d29yayhvLHIsYXx8dCxpLmNvbmNhdChTdHJpbmcobikpKSk6dCE9PW51bGwmJnR5cGVvZiB0PT0ib2JqZWN0Ij9PYmplY3QuZW50cmllcyh0KS5yZWR1Y2UoKG8sW24sc10pPT57bGV0IGM9aS5jb25jYXQobik7cmV0dXJuIG9bbl09ZS5lbmNvZGVQYXlsb2FkRm9yTmV0d29yayhzLHIsYXx8dCxjKSxvfSx7fSk6dH1zdGF0aWMgZGVjb2RlUGF5bG9hZEZyb21OZXR3b3JrKHQscil7aWYoV2guaXNCdWZmZXJMaWtlKHQpfHx0IGluc3RhbmNlb2YgZGQpcmV0dXJuIHQ7aWYodCE9PW51bGwmJnR5cGVvZiB0PT0ib2JqZWN0Iil7aWYodCBpbnN0YW5jZW9mIFNldHx8dCBpbnN0YW5jZW9mIE1hcHx8dCBpbnN0YW5jZW9mIERhdGV8fHQgaW5zdGFuY2VvZiBSZWdFeHB8fHQgaW5zdGFuY2VvZiBFcnJvcnx8dCBpbnN0YW5jZW9mIFByb21pc2V8fHR5cGVvZiB0LnRoZW49PSJmdW5jdGlvbiIpcmV0dXJuIHQ7aWYodC5faXNWaXJ0dWFsU3RyZWFtKXtsZXQgYT1uZXcgZTtyZXR1cm4gYS5zdHJlYW1JZD10LnN0cmVhbUlkLCFhLnNpZGUmJnIuc2VuZE1ldGhvZCYmKGEuc2lkZT0icmVxdWVzdGluZyIsYS5zZW5kTWV0aG9kPXIuc2VuZE1ldGhvZCksIWEuc2lkZSYmci50eXBlZHJvdXRlciYmKGEuc2lkZT0icmVzcG9uZGluZyIsYS50eXBlZHJvdXRlcj1yLnR5cGVkcm91dGVyLHIudHlwZWRyb3V0ZXIucmVnaXN0ZXJlZFZpcnR1YWxTdHJlYW1zLmFkZChhKSksYS5zdGFydEtlZXBBbGl2ZUxvb3AoKSxhfWVsc2UgaWYoQXJyYXkuaXNBcnJheSh0KSl7bGV0IGE9W107Zm9yKGxldCBpIG9mIHQpYS5wdXNoKGUuZGVjb2RlUGF5bG9hZEZyb21OZXR3b3JrKGkscikpO3JldHVybiBhfWVsc2UgcmV0dXJuIE9iamVjdC5rZXlzKHQpLnJlZHVjZSgoYSxpKT0+KGFbaV09ZS5kZWNvZGVQYXlsb2FkRnJvbU5ldHdvcmsodFtpXSxyKSxhKSx7fSl9ZWxzZSByZXR1cm4gdH1jb25zdHJ1Y3Rvcigpe3RoaXMuc3RyZWFtSWQ9STAudW5pKCksdGhpcy5rZWVwQWxpdmU9ITAsdGhpcy5zZW5kQmFja3ByZXNzdXJlZEFycmF5PW5ldyBDaS5CYWNrcHJlc3N1cmVkQXJyYXkoMTYpLHRoaXMucmVjZWl2ZUJhY2twcmVzc3VyZWRBcnJheT1uZXcgQ2kuQmFja3ByZXNzdXJlZEFycmF5KDE2KX1zdGF0aWMgcmVjb25zdGl0dXRlQmluYXJ5RGF0YSh0KXtpZih0PT1udWxsfHx0IGluc3RhbmNlb2YgVWludDhBcnJheXx8dHlwZW9mIEJ1ZmZlcjwidSImJkJ1ZmZlci5pc0J1ZmZlcih0KSlyZXR1cm4gdDtpZih0eXBlb2YgdD09Im9iamVjdCIpe2lmKHQudHlwZT09PSJCdWZmZXIiJiZBcnJheS5pc0FycmF5KHQuZGF0YSkpcmV0dXJuIG5ldyBVaW50OEFycmF5KHQuZGF0YSk7bGV0IHI9T2JqZWN0LmtleXModCk7aWYoci5sZW5ndGg+MCYmci5ldmVyeShhPT4vXlxkKyQvLnRlc3QoYSkpKXtsZXQgYT1uZXcgQXJyYXkoci5sZW5ndGgpO2ZvcihsZXQgaSBvZiByKWFbTnVtYmVyKGkpXT10W2ldO2lmKGEuZXZlcnkoaT0+dHlwZW9mIGk9PSJudW1iZXIiKSlyZXR1cm4gbmV3IFVpbnQ4QXJyYXkoYSl9fXJldHVybiB0fWFzeW5jIHdvcmtPblF1ZXVlKCl7aWYodGhpcy53b3JraW5nRGVmZXJyZWQpcmV0dXJuIHRoaXMud29ya2luZ0RlZmVycmVkLnByb21pc2U7aWYodGhpcy53b3JraW5nRGVmZXJyZWQ9cHQuZGVmZXIoKSx0aGlzLnNpZGU9PT0icmVxdWVzdGluZyIpe2xldCB0PSF0aGlzLnJlY2VpdmVCYWNrcHJlc3N1cmVkQXJyYXkuY2hlY2tTcGFjZUF2YWlsYWJsZSgpLHI9ITEsYT0hMSxpPWFzeW5jKCk9PntsZXQgbz1hd2FpdCB0aGlzLnNlbmRNZXRob2Qoe21ldGhvZDoiIyNWaXJ0dWFsU3RyZWFtIyMiLHJlcXVlc3Q6e3N0cmVhbUlkOnRoaXMuc3RyZWFtSWQsY3ljbGVJZDpJMC51bmkoKSxjeWNsZToicmVxdWVzdCIsbWFpblB1cnBvc2U6ImZlZWRiYWNrIixuZXh0OnRoaXMuc2VuZEJhY2twcmVzc3VyZWRBcnJheS5kYXRhLmxlbmd0aD4wLGJhY2twcmVzc3VyZTohdGhpcy5yZWNlaXZlQmFja3ByZXNzdXJlZEFycmF5LmNoZWNrU3BhY2VBdmFpbGFibGUoKX0scmVzcG9uc2U6bnVsbH0pLmNhdGNoKCgpPT57Y29uc29sZS5sb2coInN0cmVhbSBlbmRlZCBpbW1hdHVyZWx5IiksdGhpcy5rZWVwQWxpdmU9ITF9KTtvJiZvLnJlc3BvbnNlJiYoYT1vLnJlc3BvbnNlLmJhY2twcmVzc3VyZSxyPW8ucmVzcG9uc2UubmV4dCl9O2Zvcihhd2FpdCBpKCk7dGhpcy5zZW5kQmFja3ByZXNzdXJlZEFycmF5LmRhdGEubGVuZ3RoPjB8fHI7KXtpZihhKWZvcig7YTspY29uc29sZS5sb2coIndhaXRpbmcgZm9yIGZlZWRiYWNrIGJlY2F1c2Ugb2YgYmFja3ByZXNzdXJlLi4uIiksYXdhaXQgWnQuZGVsYXlGb3IoNTApLGF3YWl0IGkoKTtsZXQgbzt0aGlzLnNlbmRCYWNrcHJlc3N1cmVkQXJyYXkuZGF0YS5sZW5ndGg+MCYmKG89dGhpcy5zZW5kQmFja3ByZXNzdXJlZEFycmF5LnNoaWZ0KCkpO2xldCBuO249YXdhaXQgdGhpcy5zZW5kTWV0aG9kKHttZXRob2Q6IiMjVmlydHVhbFN0cmVhbSMjIixyZXF1ZXN0OntzdHJlYW1JZDp0aGlzLnN0cmVhbUlkLGN5Y2xlSWQ6STAudW5pKCksY3ljbGU6InJlcXVlc3QiLG1haW5QdXJwb3NlOm8/ImNodW5rIjoicmVhZCIsYmFja3ByZXNzdXJlOnQsbmV4dDp0aGlzLnNlbmRCYWNrcHJlc3N1cmVkQXJyYXkuZGF0YS5sZW5ndGg+MCwuLi5vP3tjaHVua0RhdGE6b306e319LHJlc3BvbnNlOm51bGx9KS5jYXRjaCgoKT0+KGNvbnNvbGUubG9nKCJzdHJlYW0gZW5kZWQgaW1tYXR1cmVseSIpLHRoaXMua2VlcEFsaXZlPSExLG51bGwpKSxuJiZuLnJlc3BvbnNlJiZuLnJlc3BvbnNlLmNodW5rRGF0YSYmdGhpcy5yZWNlaXZlQmFja3ByZXNzdXJlZEFycmF5LnB1c2goZS5yZWNvbnN0aXR1dGVCaW5hcnlEYXRhKG4ucmVzcG9uc2UuY2h1bmtEYXRhKSksYT1uJiZuLnJlc3BvbnNlJiZuLnJlc3BvbnNlLmJhY2twcmVzc3VyZSx0PSF0aGlzLnJlY2VpdmVCYWNrcHJlc3N1cmVkQXJyYXkuY2hlY2tTcGFjZUF2YWlsYWJsZSgpLHI9biYmbi5yZXNwb25zZSYmbi5yZXNwb25zZS5uZXh0fX10aGlzLndvcmtpbmdEZWZlcnJlZC5yZXNvbHZlKCksdGhpcy53b3JraW5nRGVmZXJyZWQ9bnVsbH1hc3luYyBoYW5kbGVTdHJlYW1Ucih0KXtpZih0LnJlcXVlc3Qua2VlcEFsaXZlPT09ITAmJnRoaXMua2VlcEFsaXZlPT09ITA/dGhpcy5sYXN0S2VlcEFsaXZlRXZlbnQ9RGF0ZS5ub3coKTp0LnJlcXVlc3Qua2VlcEFsaXZlPT09ITEmJih0aGlzLmtlZXBBbGl2ZT0hMSksdC5yZXF1ZXN0Lm1haW5QdXJwb3NlPT09ImtlZXBBbGl2ZSImJih0LnJlc3BvbnNlPXtzdHJlYW1JZDp0aGlzLnN0cmVhbUlkLGN5Y2xlSWQ6dC5yZXF1ZXN0LmN5Y2xlSWQsY3ljbGU6InJlc3BvbnNlIixtYWluUHVycG9zZToia2VlcEFsaXZlIixrZWVwQWxpdmU6dGhpcy5rZWVwQWxpdmUsbmV4dDp0aGlzLnNlbmRCYWNrcHJlc3N1cmVkQXJyYXkuZGF0YS5sZW5ndGg+MCxiYWNrcHJlc3N1cmU6IXRoaXMucmVjZWl2ZUJhY2twcmVzc3VyZWRBcnJheS5jaGVja1NwYWNlQXZhaWxhYmxlKCl9KSx0LnJlcXVlc3QubWFpblB1cnBvc2U9PT0iZmVlZGJhY2siJiYodC5yZXNwb25zZT17c3RyZWFtSWQ6dGhpcy5zdHJlYW1JZCxjeWNsZUlkOnQucmVxdWVzdC5jeWNsZUlkLGN5Y2xlOiJyZXNwb25zZSIsbWFpblB1cnBvc2U6ImZlZWRiYWNrIixuZXh0OnRoaXMuc2VuZEJhY2twcmVzc3VyZWRBcnJheS5kYXRhLmxlbmd0aD4wLGJhY2twcmVzc3VyZTohdGhpcy5yZWNlaXZlQmFja3ByZXNzdXJlZEFycmF5LmNoZWNrU3BhY2VBdmFpbGFibGUoKX0pLHQucmVxdWVzdC5tYWluUHVycG9zZT09PSJjaHVuayIpe2lmKHRoaXMucmVjZWl2ZUJhY2twcmVzc3VyZWRBcnJheS5wdXNoKGUucmVjb25zdGl0dXRlQmluYXJ5RGF0YSh0LnJlcXVlc3QuY2h1bmtEYXRhKSksdGhpcy5zZW5kQmFja3ByZXNzdXJlZEFycmF5LmRhdGEubGVuZ3RoPjAmJnQucmVzcG9uc2UuYmFja3ByZXNzdXJlPT09ITEpe2xldCByPXRoaXMuc2VuZEJhY2twcmVzc3VyZWRBcnJheS5zaGlmdCgpO3QucmVzcG9uc2U9e3N0cmVhbUlkOnRoaXMuc3RyZWFtSWQsY3ljbGVJZDp0LnJlcXVlc3QuY3ljbGVJZCxjeWNsZToicmVzcG9uc2UiLG1haW5QdXJwb3NlOiJjaHVuayIsbmV4dDp0aGlzLnNlbmRCYWNrcHJlc3N1cmVkQXJyYXkuZGF0YS5sZW5ndGg+MSxiYWNrcHJlc3N1cmU6IXRoaXMucmVjZWl2ZUJhY2twcmVzc3VyZWRBcnJheS5jaGVja1NwYWNlQXZhaWxhYmxlKCksY2h1bmtEYXRhOnRoaXMuc2VuZEJhY2twcmVzc3VyZWRBcnJheS5zaGlmdCgpfX1lbHNlIHQucmVzcG9uc2U9e3N0cmVhbUlkOnRoaXMuc3RyZWFtSWQsY3ljbGVJZDp0LnJlcXVlc3QuY3ljbGVJZCxjeWNsZToicmVzcG9uc2UiLG1haW5QdXJwb3NlOiJmZWVkYmFjayIsbmV4dDp0aGlzLnNlbmRCYWNrcHJlc3N1cmVkQXJyYXkuZGF0YS5sZW5ndGg+MCxiYWNrcHJlc3N1cmU6IXRoaXMucmVjZWl2ZUJhY2twcmVzc3VyZWRBcnJheS5jaGVja1NwYWNlQXZhaWxhYmxlKCl9O3QucmVxdWVzdD1udWxsfXJldHVybiB0fWFzeW5jIGNsZWFudXAoKXt0aGlzLnR5cGVkcm91dGVyJiZ0aGlzLnR5cGVkcm91dGVyLnJlZ2lzdGVyZWRWaXJ0dWFsU3RyZWFtcy5yZW1vdmUodGhpcyl9YXN5bmMgc3RhcnRLZWVwQWxpdmVMb29wKCl7aWYodGhpcy5zaWRlPT09InJlc3BvbmRpbmciKXJldHVybjthd2FpdCBadC5kZWxheUZvcigwKSxjb25zb2xlLmxvZyhgc3RhcnRpbmcga2VlcGFsaXZlIGxvb3Agb24gc2lkZSAke3RoaXMuc2lkZX1gKTtsZXQgdD0wO2Zvcig7dGhpcy5rZWVwQWxpdmU7KWF3YWl0IHRoaXMudHJpZ2dlcktlZXBBbGl2ZSgpLGF3YWl0IFp0LmRlbGF5Rm9yKDFlMyk7YXdhaXQgWnQuZGVsYXlGb3IoMWUzKSxhd2FpdCB0aGlzLmNsZWFudXAoKSxjb25zb2xlLmxvZyhgY2xlYW5lZCB1cCBmb3Igc3RyZWFtICR7dGhpcy5zdHJlYW1JZH1gKX1hc3luYyB0cmlnZ2VyS2VlcEFsaXZlKCl7aWYodGhpcy5zaWRlPT09InJlcXVlc3RpbmciKXtjb25zb2xlLmxvZygia2VlcGFsaXZlIHNlbnQuIik7bGV0IHQ9YXdhaXQgdGhpcy5zZW5kTWV0aG9kKHttZXRob2Q6IiMjVmlydHVhbFN0cmVhbSMjIixyZXF1ZXN0OntzdHJlYW1JZDp0aGlzLnN0cmVhbUlkLGN5Y2xlSWQ6STAudW5pKCksY3ljbGU6InJlcXVlc3QiLG1haW5QdXJwb3NlOiJrZWVwQWxpdmUiLGtlZXBBbGl2ZTp0aGlzLmtlZXBBbGl2ZX0scmVzcG9uc2U6bnVsbH0pLmNhdGNoKCgpPT57dGhpcy5rZWVwQWxpdmU9ITF9KTt0JiZ0LnJlc3BvbnNlJiZ0LnJlc3BvbnNlLmtlZXBBbGl2ZT09PSExP3RoaXMua2VlcEFsaXZlPSExOnRoaXMubGFzdEtlZXBBbGl2ZUV2ZW50PURhdGUubm93KCksdCYmdC5yZXNwb25zZSYmdC5yZXNwb25zZS5uZXh0JiZ0aGlzLndvcmtPblF1ZXVlKCl9RGF0ZS5ub3coKS10aGlzLmxhc3RLZWVwQWxpdmVFdmVudD4xZTQmJihjb25zb2xlLmxvZyhgY2xvc2luZyBzdHJlYW0gZm9yICR7dGhpcy5zdHJlYW1JZH1gKSx0aGlzLmtlZXBBbGl2ZT0hMSl9YXN5bmMgc2VuZERhdGEodCl7dGhpcy5zZW5kQmFja3ByZXNzdXJlZEFycmF5LnB1c2godCksdGhpcy53b3JrT25RdWV1ZSgpLGF3YWl0IHRoaXMuc2VuZEJhY2twcmVzc3VyZWRBcnJheS53YWl0Rm9yU3BhY2UoKX1hc3luYyBmZXRjaERhdGEoKXtyZXR1cm4gdGhpcy5yZWNlaXZlQmFja3ByZXNzdXJlZEFycmF5Lmhhc1NwYWNlLGF3YWl0IHRoaXMucmVjZWl2ZUJhY2twcmVzc3VyZWRBcnJheS53YWl0Rm9ySXRlbXMoKSx0aGlzLnJlY2VpdmVCYWNrcHJlc3N1cmVkQXJyYXkuc2hpZnQoKX1hc3luYyByZWFkRnJvbVdlYnN0cmVhbSh0LHI9ITApe2xldCBhPXQuZ2V0UmVhZGVyKCksaT0hMTtmb3IoOyFpOyl7bGV0e3ZhbHVlOm8sZG9uZTpufT1hd2FpdCBhLnJlYWQoKTtvJiZhd2FpdCB0aGlzLnNlbmREYXRhKG8pLGk9bn1yJiZhd2FpdCB0aGlzLmNsb3NlKCEwKX1hc3luYyB3cml0ZVRvV2Vic3RyZWFtKHQpe2xldCByPXQuZ2V0V3JpdGVyKCk7Zm9yKDt0aGlzLmtlZXBBbGl2ZXx8dGhpcy5yZWNlaXZlQmFja3ByZXNzdXJlZEFycmF5LmNoZWNrSGFzSXRlbXMoKTspe2xldCBhPWF3YWl0IHRoaXMuZmV0Y2hEYXRhKCk7aWYoYT09PWQ5dCl7ci5yZWxlYXNlTG9jaygpLGF3YWl0IHQuY2xvc2UoKTticmVha31hd2FpdCByLndyaXRlKGEpfX1hc3luYyBjbG9zZSh0PSExKXt0JiZ0aGlzLnNlbmREYXRhKGQ5dCksdGhpcy5rZWVwQWxpdmU9ITF9fX0pO3ZhciBFdWUsJHVlPWwoKCk9PntCeCgpO04wKCk7RXVlPWNsYXNze2NvbnN0cnVjdG9yKHQpe2lmKHQucG9zdE1ldGhvZFdpdGhUeXBlZFJvdXRlciYmIXQudHlwZWRSb3V0ZXJSZWYpdGhyb3cgbmV3IEVycm9yKCJ5b3UgaGF2ZSB0byBzcGVjaWZ5IGEgdHlwZWRyb3V0ZXIgd2hlbiB1c2luZyBwb3N0bWV0aG9kIHdpdGggdHlwZWRyb3V0ZXIiKTt0aGlzLm9wdGlvbnM9dH1hc3luYyBwb3N0KHQpe2xldCByO3RoaXMub3B0aW9ucy50eXBlZFJvdXRlclJlZiYmKHI9YXdhaXQgdGhpcy5vcHRpb25zLnR5cGVkUm91dGVyUmVmLmZpcmVFdmVudEludGVyZXN0TWFwLmFkZEludGVyZXN0KHQuY29ycmVsYXRpb24uaWQsdCkpO2xldCBpPWF3YWl0KHRoaXMub3B0aW9ucy5wb3N0TWV0aG9kfHx0aGlzLm9wdGlvbnMucG9zdE1ldGhvZFdpdGhUeXBlZFJvdXRlcikodCksbztyZXR1cm4gcj9vPWF3YWl0IHIuaW50ZXJlc3RGdWxsZmlsbGVkOmk/bz1pOm89dCxvfX19KTtmdW5jdGlvbiB1OXQoZSx0KXt0cnl7ZGQuZ2xvYmFsSG9va3NbZV0/Lih0KX1jYXRjaChyKXtjb25zb2xlLmVycm9yKGBUeXBlZFJlcXVlc3QgaG9vayBlcnJvciAoJHtlfSk6YCxyKX19dmFyIFlacixIeCxBdWU9bCgoKT0+e04wKCk7b2VlKCk7aW0oKTtCeCgpOyR1ZSgpO1lacj1uZXcgY2QuV2VicmVxdWVzdENsaWVudDtIeD1jbGFzc3tjb25zdHJ1Y3Rvcih0LHIpe3RoaXMuc2tpcEhvb2tzPSExLHR5cGVvZiB0PT0ic3RyaW5nIj90aGlzLnVybEVuZFBvaW50PXQ6dGhpcy50eXBlZFRhcmdldD10LHRoaXMubWV0aG9kPXJ9YXN5bmMgZmlyZSh0LHI9ITEpe2xldCBhPURhdGUubm93KCksaT17bWV0aG9kOnRoaXMubWV0aG9kLHJlcXVlc3Q6dCxyZXNwb25zZTpudWxsLGNvcnJlbGF0aW9uOntpZDpJMC51bmkoKSxwaGFzZToicmVxdWVzdCJ9fTtpPWNzLmVuY29kZVBheWxvYWRGb3JOZXR3b3JrKGkse3NlbmRNZXRob2Q6bj0+dGhpcy5wb3N0VHJPYmplY3Qobil9KSx0aGlzLnNraXBIb29rc3x8dTl0KCJvbk91dGdvaW5nUmVxdWVzdCIse2NvcnJlbGF0aW9uSWQ6aS5jb3JyZWxhdGlvbi5pZCxtZXRob2Q6dGhpcy5tZXRob2QsZGlyZWN0aW9uOiJvdXRnb2luZyIscGhhc2U6InJlcXVlc3QiLHRpbWVzdGFtcDphLHBheWxvYWQ6dH0pO2xldCBvO3JldHVybiBvPWF3YWl0IHRoaXMucG9zdFRyT2JqZWN0KGksciksbz1jcy5kZWNvZGVQYXlsb2FkRnJvbU5ldHdvcmsobyx7c2VuZE1ldGhvZDpuPT50aGlzLnBvc3RUck9iamVjdChuKX0pLHRoaXMuc2tpcEhvb2tzfHx1OXQoIm9uSW5jb21pbmdSZXNwb25zZSIse2NvcnJlbGF0aW9uSWQ6aS5jb3JyZWxhdGlvbi5pZCxtZXRob2Q6dGhpcy5tZXRob2QsZGlyZWN0aW9uOiJpbmNvbWluZyIscGhhc2U6InJlc3BvbnNlIix0aW1lc3RhbXA6RGF0ZS5ub3coKSxkdXJhdGlvbk1zOkRhdGUubm93KCktYSxwYXlsb2FkOm8/LnJlc3BvbnNlLGVycm9yOm8/LmVycm9yPy50ZXh0fSksby5yZXNwb25zZX1hc3luYyBwb3N0VHJPYmplY3QodCxyPSExKXtsZXQgYTtpZih0aGlzLnVybEVuZFBvaW50P2E9YXdhaXQgWVpyLnBvc3RKc29uKHRoaXMudXJsRW5kUG9pbnQsdCxyP3tjYWNoZVN0cmF0ZWd5OiJjYWNoZS1maXJzdCJ9Ont9KTphPWF3YWl0IHRoaXMudHlwZWRUYXJnZXQucG9zdCh0KSxhLmVycm9yKXtpZihjb25zb2xlLmVycm9yKGBtZXRob2Q6ID4+JHt0aGlzLm1ldGhvZH08PCBnb3QgYW4gRVJST1I6ICIke2EuZXJyb3IudGV4dH0iIHdpdGggZGF0YSAke0pTT04uc3RyaW5naWZ5KGEuZXJyb3IuZGF0YSxudWxsLDIpfWApLCFhLnJldHJ5KXRocm93IG5ldyBscyhhLmVycm9yLnRleHQsYS5lcnJvci5kYXRhKTtyZXR1cm4gbnVsbH1yZXR1cm4gYS5yZXRyeSYmKGNvbnNvbGUubG9nKGBzZXJ2ZXIgcmVxdWVzdGVkIHJldHJ5IGZvciB0aGUgZm9sbG93aW5nIHJlYXNvbjogJHthLnJldHJ5LnJlYXNvbn1gKSxhd2FpdCBadC5kZWxheUZvcihhLnJldHJ5LndhaXRGb3JNcyksYT1hd2FpdCB0aGlzLnBvc3RUck9iamVjdCh0LHIpKSxhfX19KTt2YXIgYW89e307cWUoYW8se1R5cGVkSGFuZGxlcjooKT0+THVlLFR5cGVkUmVxdWVzdDooKT0+SHgsVHlwZWRSZXNwb25zZUVycm9yOigpPT5scyxUeXBlZFJvdXRlcjooKT0+ZGQsVHlwZWRUYXJnZXQ6KCk9PkV1ZSxWaXJ0dWFsU3RyZWFtOigpPT5jc30pO3ZhciBxeD1sKCgpPT57QXVlKCk7RHVlKCk7QngoKTtpbSgpOyR1ZSgpO29lZSgpfSk7ZnVuY3Rpb24gZjl0KGUpe3JldHVybiBlJiZ0eXBlb2YgZS50aGVuPT0iZnVuY3Rpb24ifWZ1bmN0aW9uIGcyKGUsdCl7cmV0dXJuIGV8fChlPTApLG5ldyBQcm9taXNlKGZ1bmN0aW9uKHIpe3JldHVybiBzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cmV0dXJuIHIodCl9LGUpfSl9ZnVuY3Rpb24gbTl0KGUsdCl7cmV0dXJuIE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSoodC1lKzEpK2UpfWZ1bmN0aW9uIEZsKCl7cmV0dXJuIE1hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnN1YnN0cmluZygyKX1mdW5jdGlvbiBPbCgpe3ZhciBlPURhdGUubm93KCkqMWUzO3JldHVybiBlPD1QdWUmJihlPVB1ZSsxKSxQdWU9ZSxlfWZ1bmN0aW9uIGc5dCgpe3JldHVybiB0eXBlb2YgbmF2aWdhdG9yPCJ1IiYmdHlwZW9mIG5hdmlnYXRvci5sb2NrczwidSImJnR5cGVvZiBuYXZpZ2F0b3IubG9ja3MucmVxdWVzdD09ImZ1bmN0aW9uIn12YXIgcDl0LGg5dCxXbyxQdWUsRjA9bCgoKT0+e3A5dD1Qcm9taXNlLnJlc29sdmUoITEpLGg5dD1Qcm9taXNlLnJlc29sdmUoITApLFdvPVByb21pc2UucmVzb2x2ZSgpO1B1ZT0wfSk7ZnVuY3Rpb24gUVpyKGUpe3ZhciB0PXt0aW1lOk9sKCksbWVzc2FnZXNDYWxsYmFjazpudWxsLGJjOm5ldyBCcm9hZGNhc3RDaGFubmVsKGUpLHN1YkZuczpbXX07cmV0dXJuIHQuYmMub25tZXNzYWdlPWZ1bmN0aW9uKHIpe3QubWVzc2FnZXNDYWxsYmFjayYmdC5tZXNzYWdlc0NhbGxiYWNrKHIuZGF0YSl9LHR9ZnVuY3Rpb24gS1pyKGUpe2UuYmMuY2xvc2UoKSxlLnN1YkZucz1bXX1mdW5jdGlvbiBKWnIoZSx0KXt0cnl7cmV0dXJuIGUuYmMucG9zdE1lc3NhZ2UodCwhMSksV299Y2F0Y2gocil7cmV0dXJuIFByb21pc2UucmVqZWN0KHIpfX1mdW5jdGlvbiBlWHIoZSx0KXtlLm1lc3NhZ2VzQ2FsbGJhY2s9dH1mdW5jdGlvbiB0WHIoKXtpZih0eXBlb2YgZ2xvYmFsVGhpczwidSImJmdsb2JhbFRoaXMuRGVubyYmZ2xvYmFsVGhpcy5EZW5vLmFyZ3MpcmV0dXJuITA7aWYoKHR5cGVvZiB3aW5kb3c8InUifHx0eXBlb2Ygc2VsZjwidSIpJiZ0eXBlb2YgQnJvYWRjYXN0Q2hhbm5lbD09ImZ1bmN0aW9uIil7aWYoQnJvYWRjYXN0Q2hhbm5lbC5fcHVia2V5KXRocm93IG5ldyBFcnJvcigiQnJvYWRjYXN0Q2hhbm5lbDogRG8gbm90IG92ZXJ3cml0ZSB3aW5kb3cuQnJvYWRjYXN0Q2hhbm5lbCB3aXRoIHRoaXMgbW9kdWxlLCB0aGlzIGlzIG5vdCBhIHBvbHlmaWxsIik7cmV0dXJuITB9ZWxzZSByZXR1cm4hMX1mdW5jdGlvbiByWHIoKXtyZXR1cm4gMTUwfXZhciBaWnIsWFpyLHg5dCxiOXQ9bCgoKT0+e0YwKCk7WlpyPU9sLFhacj0ibmF0aXZlIjt4OXQ9e2NyZWF0ZTpRWnIsY2xvc2U6S1pyLG9uTWVzc2FnZTplWHIscG9zdE1lc3NhZ2U6SlpyLGNhbkJlVXNlZDp0WHIsdHlwZTpYWnIsYXZlcmFnZVJlc3BvbnNlVGltZTpyWHIsbWljcm9TZWNvbmRzOlpacn19KTtmdW5jdGlvbiBhWHIoZSl7bGV0IHQ9SXVlKCktZS50dGwscj1lLm1hcFtTeW1ib2wuaXRlcmF0b3JdKCk7Zm9yKDs7KXtsZXQgYT1yLm5leHQoKS52YWx1ZTtpZighYSlicmVhaztsZXQgaT1hWzBdO2lmKGFbMV08dCllLm1hcC5kZWxldGUoaSk7ZWxzZSBicmVha319ZnVuY3Rpb24gSXVlKCl7cmV0dXJuIERhdGUubm93KCl9dmFyIG9tLE51ZT1sKCgpPT57b209Y2xhc3N7dHRsO21hcD1uZXcgTWFwO190bz0hMTtjb25zdHJ1Y3Rvcih0KXt0aGlzLnR0bD10fWhhcyh0KXtsZXQgcj10aGlzLm1hcC5nZXQodCk7cmV0dXJuIHR5cGVvZiByPiJ1Ij8hMTpyPEl1ZSgpLXRoaXMudHRsPyh0aGlzLm1hcC5kZWxldGUodCksITEpOiEwfWFkZCh0KXt0aGlzLm1hcC5kZWxldGUodCksdGhpcy5tYXAuc2V0KHQsSXVlKCkpLHRoaXMuX3RvfHwodGhpcy5fdG89ITAsc2V0VGltZW91dCgoKT0+e3RoaXMuX3RvPSExLGFYcih0aGlzKX0sMCkpfWNsZWFyKCl7dGhpcy5tYXAuY2xlYXIoKX19fSk7ZnVuY3Rpb24gdWQoKXt2YXIgZT1hcmd1bWVudHMubGVuZ3RoPjAmJmFyZ3VtZW50c1swXSE9PXZvaWQgMD9hcmd1bWVudHNbMF06e30sdD1KU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KGUpKTtyZXR1cm4gdHlwZW9mIHQud2ViV29ya2VyU3VwcG9ydD4idSImJih0LndlYldvcmtlclN1cHBvcnQ9ITApLHQuaWRifHwodC5pZGI9e30pLHQuaWRiLnR0bHx8KHQuaWRiLnR0bD0xZTMqNDUpLHQuaWRiLmZhbGxiYWNrSW50ZXJ2YWx8fCh0LmlkYi5mYWxsYmFja0ludGVydmFsPTE1MCksZS5pZGImJnR5cGVvZiBlLmlkYi5vbmNsb3NlPT0iZnVuY3Rpb24iJiYodC5pZGIub25jbG9zZT1lLmlkYi5vbmNsb3NlKSx0LmxvY2Fsc3RvcmFnZXx8KHQubG9jYWxzdG9yYWdlPXt9KSx0LmxvY2Fsc3RvcmFnZS5yZW1vdmVUaW1lb3V0fHwodC5sb2NhbHN0b3JhZ2UucmVtb3ZlVGltZW91dD0xZTMqNjApLGUubWV0aG9kcyYmKHQubWV0aG9kcz1lLm1ldGhvZHMpLHQubm9kZXx8KHQubm9kZT17fSksdC5ub2RlLnR0bHx8KHQubm9kZS50dGw9MWUzKjYwKjIpLHQubm9kZS5tYXhQYXJhbGxlbFdyaXRlc3x8KHQubm9kZS5tYXhQYXJhbGxlbFdyaXRlcz0yMDQ4KSx0eXBlb2YgdC5ub2RlLnVzZUZhc3RQYXRoPiJ1IiYmKHQubm9kZS51c2VGYXN0UGF0aD0hMCksdH12YXIgbmVlPWwoKCk9Pnt9KTtmdW5jdGlvbiB2OXQoKXtpZih0eXBlb2YgaW5kZXhlZERCPCJ1IilyZXR1cm4gaW5kZXhlZERCO2lmKHR5cGVvZiB3aW5kb3c8InUiKXtpZih0eXBlb2Ygd2luZG93Lm1vekluZGV4ZWREQjwidSIpcmV0dXJuIHdpbmRvdy5tb3pJbmRleGVkREI7aWYodHlwZW9mIHdpbmRvdy53ZWJraXRJbmRleGVkREI8InUiKXJldHVybiB3aW5kb3cud2Via2l0SW5kZXhlZERCO2lmKHR5cGVvZiB3aW5kb3cubXNJbmRleGVkREI8InUiKXJldHVybiB3aW5kb3cubXNJbmRleGVkREJ9cmV0dXJuITF9ZnVuY3Rpb24gc2VlKGUpe2UuY29tbWl0JiZlLmNvbW1pdCgpfWZ1bmN0aW9uIHNYcihlKXt2YXIgdD12OXQoKSxyPW9YcitlLGE9dC5vcGVuKHIpO3JldHVybiBhLm9udXBncmFkZW5lZWRlZD1mdW5jdGlvbihpKXt2YXIgbz1pLnRhcmdldC5yZXN1bHQ7by5jcmVhdGVPYmplY3RTdG9yZShkcyx7a2V5UGF0aDoiaWQiLGF1dG9JbmNyZW1lbnQ6ITB9KX0sbmV3IFByb21pc2UoZnVuY3Rpb24oaSxvKXthLm9uZXJyb3I9ZnVuY3Rpb24obil7cmV0dXJuIG8obil9LGEub25zdWNjZXNzPWZ1bmN0aW9uKCl7aShhLnJlc3VsdCl9fSl9ZnVuY3Rpb24gbFhyKGUsdCxyKXt2YXIgYT1EYXRlLm5vdygpLGk9e3V1aWQ6dCx0aW1lOmEsZGF0YTpyfSxvPWUudHJhbnNhY3Rpb24oW2RzXSwicmVhZHdyaXRlIixqeCk7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKG4scyl7by5vbmNvbXBsZXRlPWZ1bmN0aW9uKCl7cmV0dXJuIG4oKX0sby5vbmVycm9yPWZ1bmN0aW9uKGQpe3JldHVybiBzKGQpfTt2YXIgYz1vLm9iamVjdFN0b3JlKGRzKTtjLmFkZChpKSxzZWUobyl9KX1mdW5jdGlvbiBZbGkoZSl7dmFyIHQ9ZS50cmFuc2FjdGlvbihkcywicmVhZG9ubHkiLGp4KSxyPXQub2JqZWN0U3RvcmUoZHMpLGE9W107cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKGkpe3Iub3BlbkN1cnNvcigpLm9uc3VjY2Vzcz1mdW5jdGlvbihvKXt2YXIgbj1vLnRhcmdldC5yZXN1bHQ7bj8oYS5wdXNoKG4udmFsdWUpLG4uY29udGludWUoKSk6KHNlZSh0KSxpKGEpKX19KX1mdW5jdGlvbiBjWHIoZSx0KXt2YXIgcj1lLnRyYW5zYWN0aW9uKGRzLCJyZWFkb25seSIsangpLGE9ci5vYmplY3RTdG9yZShkcyksaT1bXSxvPUlEQktleVJhbmdlLmJvdW5kKHQrMSwxLzApO2lmKGEuZ2V0QWxsKXt2YXIgbj1hLmdldEFsbChvKTtyZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24oYyxkKXtuLm9uZXJyb3I9ZnVuY3Rpb24oZil7cmV0dXJuIGQoZil9LG4ub25zdWNjZXNzPWZ1bmN0aW9uKGYpe2MoZi50YXJnZXQucmVzdWx0KX19KX1mdW5jdGlvbiBzKCl7dHJ5e3JldHVybiBvPUlEQktleVJhbmdlLmJvdW5kKHQrMSwxLzApLGEub3BlbkN1cnNvcihvKX1jYXRjaHtyZXR1cm4gYS5vcGVuQ3Vyc29yKCl9fXJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihjLGQpe3ZhciBmPXMoKTtmLm9uZXJyb3I9ZnVuY3Rpb24odSl7cmV0dXJuIGQodSl9LGYub25zdWNjZXNzPWZ1bmN0aW9uKHUpe3ZhciBwPXUudGFyZ2V0LnJlc3VsdDtwP3AudmFsdWUuaWQ8dCsxP3AuY29udGludWUodCsxKTooaS5wdXNoKHAudmFsdWUpLHAuY29udGludWUoKSk6KHNlZShyKSxjKGkpKX19KX1mdW5jdGlvbiBkWHIoZSx0KXtpZihlLmNsb3NlZClyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKFtdKTt2YXIgcj1lLmRiLnRyYW5zYWN0aW9uKGRzLCJyZWFkd3JpdGUiLGp4KSxhPXIub2JqZWN0U3RvcmUoZHMpO3JldHVybiBQcm9taXNlLmFsbCh0Lm1hcChmdW5jdGlvbihpKXt2YXIgbz1hLmRlbGV0ZShpKTtyZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24obil7by5vbnN1Y2Nlc3M9ZnVuY3Rpb24oKXtyZXR1cm4gbigpfX0pfSkpfWZ1bmN0aW9uIHVYcihlLHQpe3ZhciByPURhdGUubm93KCktdCxhPWUudHJhbnNhY3Rpb24oZHMsInJlYWRvbmx5IixqeCksaT1hLm9iamVjdFN0b3JlKGRzKSxvPVtdO3JldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihuKXtpLm9wZW5DdXJzb3IoKS5vbnN1Y2Nlc3M9ZnVuY3Rpb24ocyl7dmFyIGM9cy50YXJnZXQucmVzdWx0O2lmKGMpe3ZhciBkPWMudmFsdWU7ZC50aW1lPHI/KG8ucHVzaChkKSxjLmNvbnRpbnVlKCkpOihzZWUoYSksbihvKSl9ZWxzZSBuKG8pfX0pfWZ1bmN0aW9uIGZYcihlKXtyZXR1cm4gdVhyKGUuZGIsZS5vcHRpb25zLmlkYi50dGwpLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIGRYcihlLHQubWFwKGZ1bmN0aW9uKHIpe3JldHVybiByLmlkfSkpfSl9ZnVuY3Rpb24gcFhyKGUsdCl7cmV0dXJuIHQ9dWQodCksc1hyKGUpLnRoZW4oZnVuY3Rpb24ocil7dmFyIGE9e2Nsb3NlZDohMSxsYXN0Q3Vyc29ySWQ6MCxjaGFubmVsTmFtZTplLG9wdGlvbnM6dCx1dWlkOkZsKCksZU1JczpuZXcgb20odC5pZGIudHRsKjIpLHdyaXRlQmxvY2tQcm9taXNlOldvLG1lc3NhZ2VzQ2FsbGJhY2s6bnVsbCxyZWFkUXVldWVQcm9taXNlczpbXSxkYjpyfTtyZXR1cm4gci5vbmNsb3NlPWZ1bmN0aW9uKCl7YS5jbG9zZWQ9ITAsdC5pZGIub25jbG9zZSYmdC5pZGIub25jbG9zZSgpfSx5OXQoYSksYX0pfWZ1bmN0aW9uIHk5dChlKXtlLmNsb3NlZHx8dzl0KGUpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gZzIoZS5vcHRpb25zLmlkYi5mYWxsYmFja0ludGVydmFsKX0pLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4geTl0KGUpfSl9ZnVuY3Rpb24gaFhyKGUsdCl7cmV0dXJuIShlLnV1aWQ9PT10LnV1aWR8fHQuZU1Jcy5oYXMoZS5pZCl8fGUuZGF0YS50aW1lPHQubWVzc2FnZXNDYWxsYmFja1RpbWUpfWZ1bmN0aW9uIHc5dChlKXtyZXR1cm4gZS5jbG9zZWQ/V286ZS5tZXNzYWdlc0NhbGxiYWNrP2NYcihlLmRiLGUubGFzdEN1cnNvcklkKS50aGVuKGZ1bmN0aW9uKHQpe3ZhciByPXQuZmlsdGVyKGZ1bmN0aW9uKGEpe3JldHVybiEhYX0pLm1hcChmdW5jdGlvbihhKXtyZXR1cm4gYS5pZD5lLmxhc3RDdXJzb3JJZCYmKGUubGFzdEN1cnNvcklkPWEuaWQpLGF9KS5maWx0ZXIoZnVuY3Rpb24oYSl7cmV0dXJuIGhYcihhLGUpfSkuc29ydChmdW5jdGlvbihhLGkpe3JldHVybiBhLnRpbWUtaS50aW1lfSk7cmV0dXJuIHIuZm9yRWFjaChmdW5jdGlvbihhKXtlLm1lc3NhZ2VzQ2FsbGJhY2smJihlLmVNSXMuYWRkKGEuaWQpLGUubWVzc2FnZXNDYWxsYmFjayhhLmRhdGEpKX0pLFdvfSk6V299ZnVuY3Rpb24gbVhyKGUpe2UuY2xvc2VkPSEwLGUuZGIuY2xvc2UoKX1mdW5jdGlvbiBnWHIoZSx0KXtyZXR1cm4gZS53cml0ZUJsb2NrUHJvbWlzZT1lLndyaXRlQmxvY2tQcm9taXNlLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gbFhyKGUuZGIsZS51dWlkLHQpfSkudGhlbihmdW5jdGlvbigpe205dCgwLDEwKT09PTAmJmZYcihlKX0pLGUud3JpdGVCbG9ja1Byb21pc2V9ZnVuY3Rpb24geFhyKGUsdCxyKXtlLm1lc3NhZ2VzQ2FsbGJhY2tUaW1lPXIsZS5tZXNzYWdlc0NhbGxiYWNrPXQsdzl0KGUpfWZ1bmN0aW9uIGJYcigpe3JldHVybiEhdjl0KCl9ZnVuY3Rpb24gdlhyKGUpe3JldHVybiBlLmlkYi5mYWxsYmFja0ludGVydmFsKjJ9dmFyIGlYcixvWHIsZHMsangsblhyLE05dCxrOXQ9bCgoKT0+e0YwKCk7TnVlKCk7bmVlKCk7aVhyPU9sLG9Ycj0icHVia2V5LmJyb2FkY2FzdC1jaGFubmVsLTAtIixkcz0ibWVzc2FnZXMiLGp4PXtkdXJhYmlsaXR5OiJyZWxheGVkIn0sblhyPSJpZGIiO005dD17Y3JlYXRlOnBYcixjbG9zZTptWHIsb25NZXNzYWdlOnhYcixwb3N0TWVzc2FnZTpnWHIsY2FuQmVVc2VkOmJYcix0eXBlOm5YcixhdmVyYWdlUmVzcG9uc2VUaW1lOnZYcixtaWNyb1NlY29uZHM6aVhyfX0pO2Z1bmN0aW9uIFM5dCgpe3ZhciBlO2lmKHR5cGVvZiB3aW5kb3c+InUiKXJldHVybiBudWxsO3RyeXtlPXdpbmRvdy5sb2NhbFN0b3JhZ2UsZT13aW5kb3dbImllOC1ldmVudGxpc3RlbmVyL3N0b3JhZ2UiXXx8d2luZG93LmxvY2FsU3RvcmFnZX1jYXRjaHt9cmV0dXJuIGV9ZnVuY3Rpb24gejl0KGUpe3JldHVybiB3WHIrZX1mdW5jdGlvbiBrWHIoZSx0KXtyZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24ocil7ZzIoKS50aGVuKGZ1bmN0aW9uKCl7dmFyIGE9ejl0KGUuY2hhbm5lbE5hbWUpLGk9e3Rva2VuOkZsKCksdGltZTpEYXRlLm5vdygpLGRhdGE6dCx1dWlkOmUudXVpZH0sbz1KU09OLnN0cmluZ2lmeShpKTtTOXQoKS5zZXRJdGVtKGEsbyk7dmFyIG49ZG9jdW1lbnQuY3JlYXRlRXZlbnQoIkV2ZW50Iik7bi5pbml0RXZlbnQoInN0b3JhZ2UiLCEwLCEwKSxuLmtleT1hLG4ubmV3VmFsdWU9byx3aW5kb3cuZGlzcGF0Y2hFdmVudChuKSxyKCl9KX0pfWZ1bmN0aW9uIFNYcihlLHQpe3ZhciByPXo5dChlKSxhPWZ1bmN0aW9uKG8pe28ua2V5PT09ciYmdChKU09OLnBhcnNlKG8ubmV3VmFsdWUpKX07cmV0dXJuIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJzdG9yYWdlIixhKSxhfWZ1bmN0aW9uIHpYcihlKXt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigic3RvcmFnZSIsZSl9ZnVuY3Rpb24gQ1hyKGUsdCl7aWYodD11ZCh0KSwhQzl0KCkpdGhyb3cgbmV3IEVycm9yKCJCcm9hZGNhc3RDaGFubmVsOiBsb2NhbHN0b3JhZ2UgY2Fubm90IGJlIHVzZWQiKTt2YXIgcj1GbCgpLGE9bmV3IG9tKHQubG9jYWxzdG9yYWdlLnJlbW92ZVRpbWVvdXQpLGk9e2NoYW5uZWxOYW1lOmUsdXVpZDpyLGVNSXM6YX07cmV0dXJuIGkubGlzdGVuZXI9U1hyKGUsZnVuY3Rpb24obyl7aS5tZXNzYWdlc0NhbGxiYWNrJiZvLnV1aWQhPT1yJiYoIW8udG9rZW58fGEuaGFzKG8udG9rZW4pfHxvLmRhdGEudGltZSYmby5kYXRhLnRpbWU8aS5tZXNzYWdlc0NhbGxiYWNrVGltZXx8KGEuYWRkKG8udG9rZW4pLGkubWVzc2FnZXNDYWxsYmFjayhvLmRhdGEpKSl9KSxpfWZ1bmN0aW9uIF9YcihlKXt6WHIoZS5saXN0ZW5lcil9ZnVuY3Rpb24gVFhyKGUsdCxyKXtlLm1lc3NhZ2VzQ2FsbGJhY2tUaW1lPXIsZS5tZXNzYWdlc0NhbGxiYWNrPXR9ZnVuY3Rpb24gQzl0KCl7dmFyIGU9Uzl0KCk7aWYoIWUpcmV0dXJuITE7dHJ5e3ZhciB0PSJfX2Jyb2FkY2FzdGNoYW5uZWxfY2hlY2siO2Uuc2V0SXRlbSh0LCJ3b3JrcyIpLGUucmVtb3ZlSXRlbSh0KX1jYXRjaHtyZXR1cm4hMX1yZXR1cm4hMH1mdW5jdGlvbiBMWHIoKXt2YXIgZT0xMjAsdD1uYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCk7cmV0dXJuIHQuaW5jbHVkZXMoInNhZmFyaSIpJiYhdC5pbmNsdWRlcygiY2hyb21lIik/ZSoyOmV9dmFyIHlYcix3WHIsTVhyLF85dCxUOXQ9bCgoKT0+e051ZSgpO25lZSgpO0YwKCk7eVhyPU9sLHdYcj0icHVia2V5LmJyb2FkY2FzdENoYW5uZWwtIixNWHI9ImxvY2Fsc3RvcmFnZSI7Xzl0PXtjcmVhdGU6Q1hyLGNsb3NlOl9Ycixvbk1lc3NhZ2U6VFhyLHBvc3RNZXNzYWdlOmtYcixjYW5CZVVzZWQ6Qzl0LHR5cGU6TVhyLGF2ZXJhZ2VSZXNwb25zZVRpbWU6TFhyLG1pY3JvU2Vjb25kczp5WHJ9fSk7ZnVuY3Rpb24gQVhyKGUpe3ZhciB0PXt0aW1lOkw5dCgpLG5hbWU6ZSxtZXNzYWdlc0NhbGxiYWNrOm51bGx9O3JldHVybiBGdWUuYWRkKHQpLHR9ZnVuY3Rpb24gRVhyKGUpe0Z1ZS5kZWxldGUoZSl9ZnVuY3Rpb24gJFhyKGUsdCl7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHIpe3JldHVybiBzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dmFyIGE9QXJyYXkuZnJvbShGdWUpO2EuZm9yRWFjaChmdW5jdGlvbihpKXtpLm5hbWU9PT1lLm5hbWUmJmkhPT1lJiZpLm1lc3NhZ2VzQ2FsbGJhY2smJmkudGltZTx0LnRpbWUmJmkubWVzc2FnZXNDYWxsYmFjayh0KX0pLHIoKX0sRDl0KX0pfWZ1bmN0aW9uIFBYcihlLHQpe2UubWVzc2FnZXNDYWxsYmFjaz10fWZ1bmN0aW9uIElYcigpe3JldHVybiEwfWZ1bmN0aW9uIE5Ycigpe3JldHVybiBEOXR9dmFyIEw5dCxEWHIsRnVlLEQ5dCxBOXQsRTl0PWwoKCk9PntGMCgpO0w5dD1PbCxEWHI9InNpbXVsYXRlIixGdWU9bmV3IFNldDtEOXQ9NTtBOXQ9e2NyZWF0ZTpBWHIsY2xvc2U6RVhyLG9uTWVzc2FnZTpQWHIscG9zdE1lc3NhZ2U6JFhyLGNhbkJlVXNlZDpJWHIsdHlwZTpEWHIsYXZlcmFnZVJlc3BvbnNlVGltZTpOWHIsbWljcm9TZWNvbmRzOkw5dH19KTtmdW5jdGlvbiBPdWUoZSl7dmFyIHQ9W10uY29uY2F0KGUubWV0aG9kcywkOXQpLmZpbHRlcihCb29sZWFuKTtpZihlLnR5cGUpe2lmKGUudHlwZT09PSJzaW11bGF0ZSIpcmV0dXJuIEE5dDt2YXIgcj10LmZpbmQoZnVuY3Rpb24oaSl7cmV0dXJuIGkudHlwZT09PWUudHlwZX0pO2lmKHIpcmV0dXJuIHI7dGhyb3cgbmV3IEVycm9yKCJtZXRob2QtdHlwZSAiK2UudHlwZSsiIG5vdCBmb3VuZCIpfWUud2ViV29ya2VyU3VwcG9ydHx8KHQ9dC5maWx0ZXIoZnVuY3Rpb24oaSl7cmV0dXJuIGkudHlwZSE9PSJpZGIifSkpO3ZhciBhPXQuZmluZChmdW5jdGlvbihpKXtyZXR1cm4gaS5jYW5CZVVzZWQoKX0pO2lmKGEpcmV0dXJuIGE7dGhyb3cgbmV3IEVycm9yKCJObyB1c2FibGUgbWV0aG9kIGZvdW5kIGluICIrSlNPTi5zdHJpbmdpZnkoJDl0Lm1hcChmdW5jdGlvbihpKXtyZXR1cm4gaS50eXBlfSkpKX12YXIgJDl0LFA5dD1sKCgpPT57Yjl0KCk7azl0KCk7VDl0KCk7RTl0KCk7JDl0PVt4OXQsTTl0LF85dF19KTtmdW5jdGlvbiBPWHIoZSl7ZT11ZChlKTt2YXIgdD1PdWUoZSk7cmV0dXJuIHQudHlwZT09PSJub2RlIj90LmNsZWFyTm9kZUZvbGRlcigpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4hMH0pOnA5dH1mdW5jdGlvbiBSWHIoZSl7UnVlPWV9ZnVuY3Rpb24gSTl0KGUsdCxyKXt2YXIgYT1lLm1ldGhvZC5taWNyb1NlY29uZHMoKSxpPXt0aW1lOmEsdHlwZTp0LGRhdGE6cn0sbz1lLl9wcmVwUD9lLl9wcmVwUDpXbztyZXR1cm4gby50aGVuKGZ1bmN0aW9uKCl7dmFyIG49ZS5tZXRob2QucG9zdE1lc3NhZ2UoZS5fc3RhdGUsaSk7cmV0dXJuIGUuX3VNUC5hZGQobiksbi5jYXRjaCgpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gZS5fdU1QLmRlbGV0ZShuKX0pLG59KX1mdW5jdGlvbiBCWHIoZSl7dmFyIHQ9ZS5tZXRob2QuY3JlYXRlKGUubmFtZSxlLm9wdGlvbnMpO2Y5dCh0KT8oZS5fcHJlcFA9dCx0LnRoZW4oZnVuY3Rpb24ocil7ZS5fc3RhdGU9cn0pKTplLl9zdGF0ZT10fWZ1bmN0aW9uIE45dChlKXtyZXR1cm4gZS5fYWRkRUwubWVzc2FnZS5sZW5ndGg+MHx8ZS5fYWRkRUwuaW50ZXJuYWwubGVuZ3RoPjB9ZnVuY3Rpb24gRjl0KGUsdCxyKXtlLl9hZGRFTFt0XS5wdXNoKHIpLEhYcihlKX1mdW5jdGlvbiBPOXQoZSx0LHIpe2UuX2FkZEVMW3RdPWUuX2FkZEVMW3RdLmZpbHRlcihmdW5jdGlvbihhKXtyZXR1cm4gYSE9PXJ9KSxxWHIoZSl9ZnVuY3Rpb24gSFhyKGUpe2lmKCFlLl9pTCYmTjl0KGUpKXt2YXIgdD1mdW5jdGlvbihpKXtlLl9hZGRFTFtpLnR5cGVdLmZvckVhY2goZnVuY3Rpb24obyl7aS50aW1lPj1vLnRpbWUmJm8uZm4oaS5kYXRhKX0pfSxyPWUubWV0aG9kLm1pY3JvU2Vjb25kcygpO2UuX3ByZXBQP2UuX3ByZXBQLnRoZW4oZnVuY3Rpb24oKXtlLl9pTD0hMCxlLm1ldGhvZC5vbk1lc3NhZ2UoZS5fc3RhdGUsdCxyKX0pOihlLl9pTD0hMCxlLm1ldGhvZC5vbk1lc3NhZ2UoZS5fc3RhdGUsdCxyKSl9fWZ1bmN0aW9uIHFYcihlKXtpZihlLl9pTCYmIU45dChlKSl7ZS5faUw9ITE7dmFyIHQ9ZS5tZXRob2QubWljcm9TZWNvbmRzKCk7ZS5tZXRob2Qub25NZXNzYWdlKGUuX3N0YXRlLG51bGwsdCl9fXZhciBCdWUsRlhyLGZkLFJ1ZSxSOXQ9bCgoKT0+e0YwKCk7UDl0KCk7bmVlKCk7QnVlPW5ldyBTZXQsRlhyPTAsZmQ9ZnVuY3Rpb24odCxyKXt0aGlzLmlkPUZYcisrLEJ1ZS5hZGQodGhpcyksdGhpcy5uYW1lPXQsUnVlJiYocj1SdWUpLHRoaXMub3B0aW9ucz11ZChyKSx0aGlzLm1ldGhvZD1PdWUodGhpcy5vcHRpb25zKSx0aGlzLl9pTD0hMSx0aGlzLl9vbk1MPW51bGwsdGhpcy5fYWRkRUw9e21lc3NhZ2U6W10saW50ZXJuYWw6W119LHRoaXMuX3VNUD1uZXcgU2V0LHRoaXMuX2JlZkM9W10sdGhpcy5fcHJlcFA9bnVsbCxCWHIodGhpcyl9O2ZkLl9wdWJrZXk9ITA7ZmQucHJvdG90eXBlPXtwb3N0TWVzc2FnZTpmdW5jdGlvbih0KXtpZih0aGlzLmNsb3NlZCl0aHJvdyBuZXcgRXJyb3IoIkJyb2FkY2FzdENoYW5uZWwucG9zdE1lc3NhZ2UoKTogQ2Fubm90IHBvc3QgbWVzc2FnZSBhZnRlciBjaGFubmVsIGhhcyBjbG9zZWQgIitKU09OLnN0cmluZ2lmeSh0KSk7cmV0dXJuIEk5dCh0aGlzLCJtZXNzYWdlIix0KX0scG9zdEludGVybmFsOmZ1bmN0aW9uKHQpe3JldHVybiBJOXQodGhpcywiaW50ZXJuYWwiLHQpfSxzZXQgb25tZXNzYWdlKGUpe3ZhciB0PXRoaXMubWV0aG9kLm1pY3JvU2Vjb25kcygpLHI9e3RpbWU6dCxmbjplfTtPOXQodGhpcywibWVzc2FnZSIsdGhpcy5fb25NTCksZSYmdHlwZW9mIGU9PSJmdW5jdGlvbiI/KHRoaXMuX29uTUw9cixGOXQodGhpcywibWVzc2FnZSIscikpOnRoaXMuX29uTUw9bnVsbH0sYWRkRXZlbnRMaXN0ZW5lcjpmdW5jdGlvbih0LHIpe3ZhciBhPXRoaXMubWV0aG9kLm1pY3JvU2Vjb25kcygpLGk9e3RpbWU6YSxmbjpyfTtGOXQodGhpcyx0LGkpfSxyZW1vdmVFdmVudExpc3RlbmVyOmZ1bmN0aW9uKHQscil7dmFyIGE9dGhpcy5fYWRkRUxbdF0uZmluZChmdW5jdGlvbihpKXtyZXR1cm4gaS5mbj09PXJ9KTtPOXQodGhpcyx0LGEpfSxjbG9zZTpmdW5jdGlvbigpe3ZhciB0PXRoaXM7aWYoIXRoaXMuY2xvc2VkKXtCdWUuZGVsZXRlKHRoaXMpLHRoaXMuY2xvc2VkPSEwO3ZhciByPXRoaXMuX3ByZXBQP3RoaXMuX3ByZXBQOldvO3JldHVybiB0aGlzLl9vbk1MPW51bGwsdGhpcy5fYWRkRUwubWVzc2FnZT1bXSxyLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gUHJvbWlzZS5hbGwoQXJyYXkuZnJvbSh0Ll91TVApKX0pLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gUHJvbWlzZS5hbGwodC5fYmVmQy5tYXAoZnVuY3Rpb24oYSl7cmV0dXJuIGEoKX0pKX0pLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gdC5tZXRob2QuY2xvc2UodC5fc3RhdGUpfSl9fSxnZXQgdHlwZSgpe3JldHVybiB0aGlzLm1ldGhvZC50eXBlfSxnZXQgaXNDbG9zZWQoKXtyZXR1cm4gdGhpcy5jbG9zZWR9fX0pO2Z1bmN0aW9uIEI5dChlKXtpZih0eXBlb2YgV29ya2VyR2xvYmFsU2NvcGU9PSJmdW5jdGlvbiImJnNlbGYgaW5zdGFuY2VvZiBXb3JrZXJHbG9iYWxTY29wZSl7dmFyIHQ9c2VsZi5jbG9zZS5iaW5kKHNlbGYpO3NlbGYuY2xvc2U9ZnVuY3Rpb24oKXtyZXR1cm4gZSgpLHQoKX19ZWxzZXtpZih0eXBlb2Ygd2luZG93LmFkZEV2ZW50TGlzdGVuZXIhPSJmdW5jdGlvbiIpcmV0dXJuO3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJiZWZvcmV1bmxvYWQiLGZ1bmN0aW9uKCl7ZSgpfSwhMCksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInVubG9hZCIsZnVuY3Rpb24oKXtlKCl9LCEwKX19dmFyIEg5dD1sKCgpPT57fSk7ZnVuY3Rpb24gcTl0KGUpe3Byb2Nlc3Mub24oImV4aXQiLGZ1bmN0aW9uKCl7cmV0dXJuIGUoKX0pLHByb2Nlc3Mub24oImJlZm9yZUV4aXQiLGZ1bmN0aW9uKCl7cmV0dXJuIGUoKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIHByb2Nlc3MuZXhpdCgpfSl9KSxwcm9jZXNzLm9uKCJTSUdJTlQiLGZ1bmN0aW9uKCl7cmV0dXJuIGUoKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIHByb2Nlc3MuZXhpdCgpfSl9KSxwcm9jZXNzLm9uKCJ1bmNhdWdodEV4Y2VwdGlvbiIsZnVuY3Rpb24odCl7cmV0dXJuIGUoKS50aGVuKGZ1bmN0aW9uKCl7Y29uc29sZS50cmFjZSh0KSxwcm9jZXNzLmV4aXQoMTAxKX0pfSl9dmFyIGo5dD1sKCgpPT57fSk7ZnVuY3Rpb24gVVhyKCl7Vjl0fHwoVjl0PSEwLFZYcihXWHIpKX1mdW5jdGlvbiBVOXQoZSl7aWYoVVhyKCksdHlwZW9mIGUhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IEVycm9yKCJMaXN0ZW5lciBpcyBubyBmdW5jdGlvbiIpO3BkLmFkZChlKTt2YXIgdD17cmVtb3ZlOmZ1bmN0aW9uKCl7cmV0dXJuIHBkLmRlbGV0ZShlKX0scnVuOmZ1bmN0aW9uKCl7cmV0dXJuIHBkLmRlbGV0ZShlKSxlKCl9fTtyZXR1cm4gdH1mdW5jdGlvbiBXWHIoKXt2YXIgZT1bXTtyZXR1cm4gcGQuZm9yRWFjaChmdW5jdGlvbih0KXtlLnB1c2godCgpKSxwZC5kZWxldGUodCl9KSxQcm9taXNlLmFsbChlKX1mdW5jdGlvbiBtY2koKXtwZC5jbGVhcigpfWZ1bmN0aW9uIGdjaSgpe3JldHVybiBwZC5zaXplfXZhciBqWHIsVlhyLHBkLFY5dCxXOXQ9bCgoKT0+e0g5dCgpO2o5dCgpO2pYcj1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwodHlwZW9mIHByb2Nlc3M8InUiP3Byb2Nlc3M6MCk9PT0iW29iamVjdCBwcm9jZXNzXSIsVlhyPWpYcj9xOXQ6Qjl0LHBkPW5ldyBTZXQsVjl0PSExfSk7ZnVuY3Rpb24gUmwoZSx0KXt2YXIgcj17Y29udGV4dDoibGVhZGVyIixhY3Rpb246dCx0b2tlbjplLnRva2VufTtyZXR1cm4gZS5icm9hZGNhc3RDaGFubmVsLnBvc3RJbnRlcm5hbChyKX1mdW5jdGlvbiBWeChlKXtlLmlzTGVhZGVyPSEwLGUuX2hhc0xlYWRlcj0hMDt2YXIgdD1VOXQoZnVuY3Rpb24oKXtyZXR1cm4gZS5kaWUoKX0pO2UuX3VubC5wdXNoKHQpO3ZhciByPWZ1bmN0aW9uKGkpe2kuY29udGV4dD09PSJsZWFkZXIiJiZpLmFjdGlvbj09PSJhcHBseSImJlJsKGUsInRlbGwiKSxpLmNvbnRleHQ9PT0ibGVhZGVyIiYmaS5hY3Rpb249PT0idGVsbCImJiFlLl9kcExDJiYoZS5fZHBMQz0hMCxlLl9kcEwoKSxSbChlLCJ0ZWxsIikpfTtyZXR1cm4gZS5icm9hZGNhc3RDaGFubmVsLmFkZEV2ZW50TGlzdGVuZXIoImludGVybmFsIixyKSxlLl9sc3Rucy5wdXNoKHIpLFJsKGUsInRlbGwiKX12YXIgbGVlPWwoKCk9PntXOXQoKX0pO3ZhciBIdWUsRzl0LFk5dD1sKCgpPT57RjAoKTtsZWUoKTtIdWU9ZnVuY3Rpb24odCxyKXt2YXIgYT10aGlzO3RoaXMuYnJvYWRjYXN0Q2hhbm5lbD10LHQuX2JlZkMucHVzaChmdW5jdGlvbigpe3JldHVybiBhLmRpZSgpfSksdGhpcy5fb3B0aW9ucz1yLHRoaXMuaXNMZWFkZXI9ITEsdGhpcy5pc0RlYWQ9ITEsdGhpcy50b2tlbj1GbCgpLHRoaXMuX2xzdG5zPVtdLHRoaXMuX3VubD1bXSx0aGlzLl9kcEw9ZnVuY3Rpb24oKXt9LHRoaXMuX2RwTEM9ITEsdGhpcy5fd0tNQz17fSx0aGlzLmxOPSJwdWJrZXktYmN8fCIrdC5tZXRob2QudHlwZSsifHwiK3QubmFtZX0sRzl0PSJMZWFkZXJFbGVjdGlvbldlYkxvY2suZGllKCkgY2FsbGVkIjtIdWUucHJvdG90eXBlPXtoYXNMZWFkZXI6ZnVuY3Rpb24oKXt2YXIgdD10aGlzO3JldHVybiBuYXZpZ2F0b3IubG9ja3MucXVlcnkoKS50aGVuKGZ1bmN0aW9uKHIpe3ZhciBhPXIuaGVsZD9yLmhlbGQuZmlsdGVyKGZ1bmN0aW9uKGkpe3JldHVybiBpLm5hbWU9PT10LmxOfSk6W107cmV0dXJuISEoYSYmYS5sZW5ndGg+MCl9KX0sYXdhaXRMZWFkZXJzaGlwOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcztpZighdGhpcy5fd0xNUCl7dGhpcy5fd0tNQy5jPW5ldyBBYm9ydENvbnRyb2xsZXI7dmFyIHI9bmV3IFByb21pc2UoZnVuY3Rpb24oYSxpKXt0Ll93S01DLnJlcz1hLHQuX3dLTUMucmVqPWl9KTt0aGlzLl93TE1QPW5ldyBQcm9taXNlKGZ1bmN0aW9uKGEsaSl7bmF2aWdhdG9yLmxvY2tzLnJlcXVlc3QodC5sTix7c2lnbmFsOnQuX3dLTUMuYy5zaWduYWx9LGZ1bmN0aW9uKCl7cmV0dXJuIHQuX3dLTUMuYz12b2lkIDAsVngodCksYSgpLHJ9KS5jYXRjaChmdW5jdGlvbihvKXtvLm1lc3NhZ2UmJm8ubWVzc2FnZT09PUc5dHx8KHQuX3dLTUMucmVqJiZ0Ll93S01DLnJlaihvKSxpKG8pKX0pfSl9cmV0dXJuIHRoaXMuX3dMTVB9LHNldCBvbmR1cGxpY2F0ZShlKXt9LGRpZTpmdW5jdGlvbigpe3ZhciB0PXRoaXM7cmV0dXJuIHRoaXMuX2xzdG5zLmZvckVhY2goZnVuY3Rpb24ocil7cmV0dXJuIHQuYnJvYWRjYXN0Q2hhbm5lbC5yZW1vdmVFdmVudExpc3RlbmVyKCJpbnRlcm5hbCIscil9KSx0aGlzLl9sc3Rucz1bXSx0aGlzLl91bmwuZm9yRWFjaChmdW5jdGlvbihyKXtyZXR1cm4gci5yZW1vdmUoKX0pLHRoaXMuX3VubD1bXSx0aGlzLmlzTGVhZGVyJiYodGhpcy5pc0xlYWRlcj0hMSksdGhpcy5pc0RlYWQ9ITAsdGhpcy5fd0tNQy5yZXMmJnRoaXMuX3dLTUMucmVzKCksdGhpcy5fd0tNQy5jJiZ0aGlzLl93S01DLmMuYWJvcnQobmV3IEVycm9yKEc5dCkpLFJsKHRoaXMsImRlYXRoIil9fX0pO2Z1bmN0aW9uIEdYcihlKXtyZXR1cm4gZS5pc0xlYWRlcj9XbzpuZXcgUHJvbWlzZShmdW5jdGlvbih0KXt2YXIgcj0hMTtmdW5jdGlvbiBhKCl7cnx8KHI9ITAsZS5icm9hZGNhc3RDaGFubmVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoImludGVybmFsIixvKSx0KCEwKSl9ZS5hcHBseU9uY2UoKS50aGVuKGZ1bmN0aW9uKCl7ZS5pc0xlYWRlciYmYSgpfSk7dmFyIGk9ZnVuY3Rpb24oKXtyZXR1cm4gZzIoZS5fb3B0aW9ucy5mYWxsYmFja0ludGVydmFsKS50aGVuKGZ1bmN0aW9uKCl7aWYoIShlLmlzRGVhZHx8cikpaWYoZS5pc0xlYWRlcilhKCk7ZWxzZSByZXR1cm4gZS5hcHBseU9uY2UoITApLnRoZW4oZnVuY3Rpb24oKXtlLmlzTGVhZGVyP2EoKTppKCl9KX0pfTtpKCk7dmFyIG89ZnVuY3Rpb24ocyl7cy5jb250ZXh0PT09ImxlYWRlciImJnMuYWN0aW9uPT09ImRlYXRoIiYmKGUuX2hhc0xlYWRlcj0hMSxlLmFwcGx5T25jZSgpLnRoZW4oZnVuY3Rpb24oKXtlLmlzTGVhZGVyJiZhKCl9KSl9O2UuYnJvYWRjYXN0Q2hhbm5lbC5hZGRFdmVudExpc3RlbmVyKCJpbnRlcm5hbCIsbyksZS5fbHN0bnMucHVzaChvKX0pfWZ1bmN0aW9uIFlYcihlLHQpe3JldHVybiBlfHwoZT17fSksZT1KU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KGUpKSxlLmZhbGxiYWNrSW50ZXJ2YWx8fChlLmZhbGxiYWNrSW50ZXJ2YWw9M2UzKSxlLnJlc3BvbnNlVGltZXx8KGUucmVzcG9uc2VUaW1lPXQubWV0aG9kLmF2ZXJhZ2VSZXNwb25zZVRpbWUodC5vcHRpb25zKSksZX1mdW5jdGlvbiBaWHIoZSx0KXtpZihlLl9sZWFkZXJFbGVjdG9yKXRocm93IG5ldyBFcnJvcigiQnJvYWRjYXN0Q2hhbm5lbCBhbHJlYWR5IGhhcyBhIGxlYWRlci1lbGVjdG9yIik7dD1ZWHIodCxlKTt2YXIgcj1nOXQoKT9uZXcgSHVlKGUsdCk6bmV3IFo5dChlLHQpO3JldHVybiBlLl9iZWZDLnB1c2goZnVuY3Rpb24oKXtyZXR1cm4gci5kaWUoKX0pLGUuX2xlYWRlckVsZWN0b3I9cixyfXZhciBaOXQsWDl0PWwoKCk9PntGMCgpO2xlZSgpO1k5dCgpO1o5dD1mdW5jdGlvbih0LHIpe3ZhciBhPXRoaXM7dGhpcy5icm9hZGNhc3RDaGFubmVsPXQsdGhpcy5fb3B0aW9ucz1yLHRoaXMuaXNMZWFkZXI9ITEsdGhpcy5faGFzTGVhZGVyPSExLHRoaXMuaXNEZWFkPSExLHRoaXMudG9rZW49RmwoKSx0aGlzLl9hcGxRPVdvLHRoaXMuX2FwbFFDPTAsdGhpcy5fdW5sPVtdLHRoaXMuX2xzdG5zPVtdLHRoaXMuX2RwTD1mdW5jdGlvbigpe30sdGhpcy5fZHBMQz0hMTt2YXIgaT1mdW5jdGlvbihuKXtuLmNvbnRleHQ9PT0ibGVhZGVyIiYmKG4uYWN0aW9uPT09ImRlYXRoIiYmKGEuX2hhc0xlYWRlcj0hMSksbi5hY3Rpb249PT0idGVsbCImJihhLl9oYXNMZWFkZXI9ITApKX07dGhpcy5icm9hZGNhc3RDaGFubmVsLmFkZEV2ZW50TGlzdGVuZXIoImludGVybmFsIixpKSx0aGlzLl9sc3Rucy5wdXNoKGkpfTtaOXQucHJvdG90eXBlPXtoYXNMZWFkZXI6ZnVuY3Rpb24oKXtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMuX2hhc0xlYWRlcil9LGFwcGx5T25jZTpmdW5jdGlvbih0KXt2YXIgcj10aGlzO2lmKHRoaXMuaXNMZWFkZXIpcmV0dXJuIGcyKDAsITApO2lmKHRoaXMuaXNEZWFkKXJldHVybiBnMigwLCExKTtpZih0aGlzLl9hcGxRQz4xKXJldHVybiB0aGlzLl9hcGxRO3ZhciBhPWZ1bmN0aW9uKCl7aWYoci5pc0xlYWRlcilyZXR1cm4gaDl0O3ZhciBvPSExLG4scz1uZXcgUHJvbWlzZShmdW5jdGlvbihmKXtuPWZ1bmN0aW9uKCl7bz0hMCxmKCl9fSksYz1mdW5jdGlvbih1KXt1LmNvbnRleHQ9PT0ibGVhZGVyIiYmdS50b2tlbiE9ci50b2tlbiYmKHUuYWN0aW9uPT09ImFwcGx5IiYmdS50b2tlbj5yLnRva2VuJiZuKCksdS5hY3Rpb249PT0idGVsbCImJihuKCksci5faGFzTGVhZGVyPSEwKSl9O3IuYnJvYWRjYXN0Q2hhbm5lbC5hZGRFdmVudExpc3RlbmVyKCJpbnRlcm5hbCIsYyk7dmFyIGQ9dD9yLl9vcHRpb25zLnJlc3BvbnNlVGltZSo0OnIuX29wdGlvbnMucmVzcG9uc2VUaW1lO3JldHVybiBSbChyLCJhcHBseSIpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gUHJvbWlzZS5yYWNlKFtnMihkKSxzLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IEVycm9yKX0pXSl9KS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIFJsKHIsImFwcGx5Iil9KS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIFByb21pc2UucmFjZShbZzIoZCkscy50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIFByb21pc2UucmVqZWN0KG5ldyBFcnJvcil9KV0pfSkuY2F0Y2goZnVuY3Rpb24oKXt9KS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIHIuYnJvYWRjYXN0Q2hhbm5lbC5yZW1vdmVFdmVudExpc3RlbmVyKCJpbnRlcm5hbCIsYyksbz8hMTpWeChyKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuITB9KX0pfTtyZXR1cm4gdGhpcy5fYXBsUUM9dGhpcy5fYXBsUUMrMSx0aGlzLl9hcGxRPXRoaXMuX2FwbFEudGhlbihmdW5jdGlvbigpe3JldHVybiBhKCl9KS50aGVuKGZ1bmN0aW9uKCl7ci5fYXBsUUM9ci5fYXBsUUMtMX0pLHRoaXMuX2FwbFEudGhlbihmdW5jdGlvbigpe3JldHVybiByLmlzTGVhZGVyfSl9LGF3YWl0TGVhZGVyc2hpcDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9hTFB8fCh0aGlzLl9hTFA9R1hyKHRoaXMpKSx0aGlzLl9hTFB9LHNldCBvbmR1cGxpY2F0ZShlKXt0aGlzLl9kcEw9ZX0sZGllOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcztyZXR1cm4gdGhpcy5fbHN0bnMuZm9yRWFjaChmdW5jdGlvbihyKXtyZXR1cm4gdC5icm9hZGNhc3RDaGFubmVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoImludGVybmFsIixyKX0pLHRoaXMuX2xzdG5zPVtdLHRoaXMuX3VubC5mb3JFYWNoKGZ1bmN0aW9uKHIpe3JldHVybiByLnJlbW92ZSgpfSksdGhpcy5fdW5sPVtdLHRoaXMuaXNMZWFkZXImJih0aGlzLl9oYXNMZWFkZXI9ITEsdGhpcy5pc0xlYWRlcj0hMSksdGhpcy5pc0RlYWQ9ITAsUmwodGhpcywiZGVhdGgiKX19fSk7dmFyIFE5dD1sKCgpPT57Ujl0KCk7WDl0KCk7bGVlKCl9KTt2YXIgSzl0PWwoKCk9PntmMCgpO2pnKCk7cXgoKTtROXQoKX0pO3ZhciBxdWUsanVlLEo5dD1sKCgpPT57Szl0KCk7cXVlPWdsb2JhbFRoaXMuQnJvYWRjYXN0Q2hhbm5lbDtxdWV8fChxdWU9ZmQpO2p1ZT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuYnJvYWRjYXN0Q2hhbm5lbD1uZXcgcXVlKCJkZWVzLWNvbW1zIiksdGhpcy50eXBlZHJvdXRlcj1uZXcgYW8uVHlwZWRSb3V0ZXIsdGhpcy50eXBlZHRhcmdldD1uZXcgYW8uVHlwZWRUYXJnZXQoe3Bvc3RNZXRob2RXaXRoVHlwZWRSb3V0ZXI6YXN5bmMgdD0+e3RoaXMucG9zdE1lc3NhZ2UodCl9LHR5cGVkUm91dGVyUmVmOnRoaXMudHlwZWRyb3V0ZXJ9KSx0aGlzLmJyb2FkY2FzdENoYW5uZWwub25tZXNzYWdlPWFzeW5jIHQ9PntsZXQgcj10Lm1ldGhvZD90OnQuZGF0YTtjb25zb2xlLmxvZyhKU09OLnN0cmluZ2lmeShyKSk7bGV0IGE9YXdhaXQgdGhpcy50eXBlZHJvdXRlci5yb3V0ZUFuZEFkZFJlc3BvbnNlKHIse3NraXBIb29rczohMH0pO2EmJiFhLmVycm9yJiZ0aGlzLnBvc3RNZXNzYWdlKGEpfX1jcmVhdGVUeXBlZFJlcXVlc3QodCl7cmV0dXJuIG5ldyBhby5UeXBlZFJlcXVlc3QodGhpcy50eXBlZHRhcmdldCx0KX1hc3luYyBwb3N0TWVzc2FnZSh0KXt0aGlzLmJyb2FkY2FzdENoYW5uZWwucG9zdE1lc3NhZ2UodCl9YXN5bmMgY3JlYXRlVHlwZWRIYW5kbGVyKHQscil7dGhpcy50eXBlZHJvdXRlci5hZGRUeXBlZEhhbmRsZXIobmV3IGFvLlR5cGVkSGFuZGxlcih0LHIpKX19fSk7dmFyIFV4PXt9O3FlKFV4LHtEZWVzQ29tbXM6KCk9Pmp1ZX0pO3ZhciBlZ3Q9bCgoKT0+e0o5dCgpfSk7dmFyIG1kPVhlKChQY2ksaGQpPT57InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHRndChlKXtyZXR1cm4gdHlwZW9mIGU+InUifHxlPT09bnVsbH1mdW5jdGlvbiBRWHIoZSl7cmV0dXJuIHR5cGVvZiBlPT0ib2JqZWN0IiYmZSE9PW51bGx9ZnVuY3Rpb24gS1hyKGUpe3JldHVybiBBcnJheS5pc0FycmF5KGUpP2U6dGd0KGUpP1tdOltlXX1mdW5jdGlvbiBKWHIoZSx0KXt2YXIgcixhLGksbztpZih0KWZvcihvPU9iamVjdC5rZXlzKHQpLHI9MCxhPW8ubGVuZ3RoO3I8YTtyKz0xKWk9b1tyXSxlW2ldPXRbaV07cmV0dXJuIGV9ZnVuY3Rpb24gZVFyKGUsdCl7dmFyIHI9IiIsYTtmb3IoYT0wO2E8dDthKz0xKXIrPWU7cmV0dXJuIHJ9ZnVuY3Rpb24gdFFyKGUpe3JldHVybiBlPT09MCYmTnVtYmVyLk5FR0FUSVZFX0lORklOSVRZPT09MS9lfWhkLmV4cG9ydHMuaXNOb3RoaW5nPXRndCxoZC5leHBvcnRzLmlzT2JqZWN0PVFYcixoZC5leHBvcnRzLnRvQXJyYXk9S1hyLGhkLmV4cG9ydHMucmVwZWF0PWVRcixoZC5leHBvcnRzLmlzTmVnYXRpdmVaZXJvPXRRcixoZC5leHBvcnRzLmV4dGVuZD1KWHJ9KTt2YXIgbm09WGUoKEljaSxyZ3QpPT57InVzZSBzdHJpY3QiO2Z1bmN0aW9uIFd4KGUsdCl7RXJyb3IuY2FsbCh0aGlzKSx0aGlzLm5hbWU9IllBTUxFeGNlcHRpb24iLHRoaXMucmVhc29uPWUsdGhpcy5tYXJrPXQsdGhpcy5tZXNzYWdlPSh0aGlzLnJlYXNvbnx8Iih1bmtub3duIHJlYXNvbikiKSsodGhpcy5tYXJrPyIgIit0aGlzLm1hcmsudG9TdHJpbmcoKToiIiksRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2U/RXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UodGhpcyx0aGlzLmNvbnN0cnVjdG9yKTp0aGlzLnN0YWNrPW5ldyBFcnJvcigpLnN0YWNrfHwiIn1XeC5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZShFcnJvci5wcm90b3R5cGUpLFd4LnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1XeCxXeC5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24odCl7dmFyIHI9dGhpcy5uYW1lKyI6ICI7cmV0dXJuIHIrPXRoaXMucmVhc29ufHwiKHVua25vd24gcmVhc29uKSIsIXQmJnRoaXMubWFyayYmKHIrPSIgIit0aGlzLm1hcmsudG9TdHJpbmcoKSkscn0scmd0LmV4cG9ydHM9V3h9KTt2YXIgb2d0PVhlKChOY2ksaWd0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgYWd0PW1kKCk7ZnVuY3Rpb24gVnVlKGUsdCxyLGEsaSl7dGhpcy5uYW1lPWUsdGhpcy5idWZmZXI9dCx0aGlzLnBvc2l0aW9uPXIsdGhpcy5saW5lPWEsdGhpcy5jb2x1bW49aX1WdWUucHJvdG90eXBlLmdldFNuaXBwZXQ9ZnVuY3Rpb24odCxyKXt2YXIgYSxpLG8sbixzO2lmKCF0aGlzLmJ1ZmZlcilyZXR1cm4gbnVsbDtmb3IodD10fHw0LHI9cnx8NzUsYT0iIixpPXRoaXMucG9zaXRpb247aT4wJiZgXDBccgpceDg1XHUyMDI4XHUyMDI5YC5pbmRleE9mKHRoaXMuYnVmZmVyLmNoYXJBdChpLTEpKT09PS0xOylpZihpLT0xLHRoaXMucG9zaXRpb24taT5yLzItMSl7YT0iIC4uLiAiLGkrPTU7YnJlYWt9Zm9yKG89IiIsbj10aGlzLnBvc2l0aW9uO248dGhpcy5idWZmZXIubGVuZ3RoJiZgXDBccgpceDg1XHUyMDI4XHUyMDI5YC5pbmRleE9mKHRoaXMuYnVmZmVyLmNoYXJBdChuKSk9PT0tMTspaWYobis9MSxuLXRoaXMucG9zaXRpb24+ci8yLTEpe289IiAuLi4gIixuLT01O2JyZWFrfXJldHVybiBzPXRoaXMuYnVmZmVyLnNsaWNlKGksbiksYWd0LnJlcGVhdCgiICIsdCkrYStzK28rYApgK2FndC5yZXBlYXQoIiAiLHQrdGhpcy5wb3NpdGlvbi1pK2EubGVuZ3RoKSsiXiJ9LFZ1ZS5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24odCl7dmFyIHIsYT0iIjtyZXR1cm4gdGhpcy5uYW1lJiYoYSs9J2luICInK3RoaXMubmFtZSsnIiAnKSxhKz0iYXQgbGluZSAiKyh0aGlzLmxpbmUrMSkrIiwgY29sdW1uICIrKHRoaXMuY29sdW1uKzEpLHR8fChyPXRoaXMuZ2V0U25pcHBldCgpLHImJihhKz1gOgpgK3IpKSxhfSxpZ3QuZXhwb3J0cz1WdWV9KTt2YXIgX2k9WGUoKEZjaSxzZ3QpPT57InVzZSBzdHJpY3QiO3ZhciBuZ3Q9bm0oKSxyUXI9WyJraW5kIiwicmVzb2x2ZSIsImNvbnN0cnVjdCIsImluc3RhbmNlT2YiLCJwcmVkaWNhdGUiLCJyZXByZXNlbnQiLCJkZWZhdWx0U3R5bGUiLCJzdHlsZUFsaWFzZXMiXSxhUXI9WyJzY2FsYXIiLCJzZXF1ZW5jZSIsIm1hcHBpbmciXTtmdW5jdGlvbiBpUXIoZSl7dmFyIHQ9e307cmV0dXJuIGUhPT1udWxsJiZPYmplY3Qua2V5cyhlKS5mb3JFYWNoKGZ1bmN0aW9uKHIpe2Vbcl0uZm9yRWFjaChmdW5jdGlvbihhKXt0W1N0cmluZyhhKV09cn0pfSksdH1mdW5jdGlvbiBvUXIoZSx0KXtpZih0PXR8fHt9LE9iamVjdC5rZXlzKHQpLmZvckVhY2goZnVuY3Rpb24ocil7aWYoclFyLmluZGV4T2Yocik9PT0tMSl0aHJvdyBuZXcgbmd0KCdVbmtub3duIG9wdGlvbiAiJytyKyciIGlzIG1ldCBpbiBkZWZpbml0aW9uIG9mICInK2UrJyIgWUFNTCB0eXBlLicpfSksdGhpcy50YWc9ZSx0aGlzLmtpbmQ9dC5raW5kfHxudWxsLHRoaXMucmVzb2x2ZT10LnJlc29sdmV8fGZ1bmN0aW9uKCl7cmV0dXJuITB9LHRoaXMuY29uc3RydWN0PXQuY29uc3RydWN0fHxmdW5jdGlvbihyKXtyZXR1cm4gcn0sdGhpcy5pbnN0YW5jZU9mPXQuaW5zdGFuY2VPZnx8bnVsbCx0aGlzLnByZWRpY2F0ZT10LnByZWRpY2F0ZXx8bnVsbCx0aGlzLnJlcHJlc2VudD10LnJlcHJlc2VudHx8bnVsbCx0aGlzLmRlZmF1bHRTdHlsZT10LmRlZmF1bHRTdHlsZXx8bnVsbCx0aGlzLnN0eWxlQWxpYXNlcz1pUXIodC5zdHlsZUFsaWFzZXN8fG51bGwpLGFRci5pbmRleE9mKHRoaXMua2luZCk9PT0tMSl0aHJvdyBuZXcgbmd0KCdVbmtub3duIGtpbmQgIicrdGhpcy5raW5kKyciIGlzIHNwZWNpZmllZCBmb3IgIicrZSsnIiBZQU1MIHR5cGUuJyl9c2d0LmV4cG9ydHM9b1FyfSk7dmFyIGdkPVhlKChPY2ksY2d0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbGd0PW1kKCksY2VlPW5tKCksblFyPV9pKCk7ZnVuY3Rpb24gVXVlKGUsdCxyKXt2YXIgYT1bXTtyZXR1cm4gZS5pbmNsdWRlLmZvckVhY2goZnVuY3Rpb24oaSl7cj1VdWUoaSx0LHIpfSksZVt0XS5mb3JFYWNoKGZ1bmN0aW9uKGkpe3IuZm9yRWFjaChmdW5jdGlvbihvLG4pe28udGFnPT09aS50YWcmJm8ua2luZD09PWkua2luZCYmYS5wdXNoKG4pfSksci5wdXNoKGkpfSksci5maWx0ZXIoZnVuY3Rpb24oaSxvKXtyZXR1cm4gYS5pbmRleE9mKG8pPT09LTF9KX1mdW5jdGlvbiBzUXIoKXt2YXIgZT17c2NhbGFyOnt9LHNlcXVlbmNlOnt9LG1hcHBpbmc6e30sZmFsbGJhY2s6e319LHQscjtmdW5jdGlvbiBhKGkpe2VbaS5raW5kXVtpLnRhZ109ZS5mYWxsYmFja1tpLnRhZ109aX1mb3IodD0wLHI9YXJndW1lbnRzLmxlbmd0aDt0PHI7dCs9MSlhcmd1bWVudHNbdF0uZm9yRWFjaChhKTtyZXR1cm4gZX1mdW5jdGlvbiBzbShlKXt0aGlzLmluY2x1ZGU9ZS5pbmNsdWRlfHxbXSx0aGlzLmltcGxpY2l0PWUuaW1wbGljaXR8fFtdLHRoaXMuZXhwbGljaXQ9ZS5leHBsaWNpdHx8W10sdGhpcy5pbXBsaWNpdC5mb3JFYWNoKGZ1bmN0aW9uKHQpe2lmKHQubG9hZEtpbmQmJnQubG9hZEtpbmQhPT0ic2NhbGFyIil0aHJvdyBuZXcgY2VlKCJUaGVyZSBpcyBhIG5vbi1zY2FsYXIgdHlwZSBpbiB0aGUgaW1wbGljaXQgbGlzdCBvZiBhIHNjaGVtYS4gSW1wbGljaXQgcmVzb2x2aW5nIG9mIHN1Y2ggdHlwZXMgaXMgbm90IHN1cHBvcnRlZC4iKX0pLHRoaXMuY29tcGlsZWRJbXBsaWNpdD1VdWUodGhpcywiaW1wbGljaXQiLFtdKSx0aGlzLmNvbXBpbGVkRXhwbGljaXQ9VXVlKHRoaXMsImV4cGxpY2l0IixbXSksdGhpcy5jb21waWxlZFR5cGVNYXA9c1FyKHRoaXMuY29tcGlsZWRJbXBsaWNpdCx0aGlzLmNvbXBpbGVkRXhwbGljaXQpfXNtLkRFRkFVTFQ9bnVsbCxzbS5jcmVhdGU9ZnVuY3Rpb24oKXt2YXIgdCxyO3N3aXRjaChhcmd1bWVudHMubGVuZ3RoKXtjYXNlIDE6dD1zbS5ERUZBVUxULHI9YXJndW1lbnRzWzBdO2JyZWFrO2Nhc2UgMjp0PWFyZ3VtZW50c1swXSxyPWFyZ3VtZW50c1sxXTticmVhaztkZWZhdWx0OnRocm93IG5ldyBjZWUoIldyb25nIG51bWJlciBvZiBhcmd1bWVudHMgZm9yIFNjaGVtYS5jcmVhdGUgZnVuY3Rpb24iKX1pZih0PWxndC50b0FycmF5KHQpLHI9bGd0LnRvQXJyYXkociksIXQuZXZlcnkoZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBzbX0pKXRocm93IG5ldyBjZWUoIlNwZWNpZmllZCBsaXN0IG9mIHN1cGVyIHNjaGVtYXMgKG9yIGEgc2luZ2xlIFNjaGVtYSBvYmplY3QpIGNvbnRhaW5zIGEgbm9uLVNjaGVtYSBvYmplY3QuIik7aWYoIXIuZXZlcnkoZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBuUXJ9KSl0aHJvdyBuZXcgY2VlKCJTcGVjaWZpZWQgbGlzdCBvZiBZQU1MIHR5cGVzIChvciBhIHNpbmdsZSBUeXBlIG9iamVjdCkgY29udGFpbnMgYSBub24tVHlwZSBvYmplY3QuIik7cmV0dXJuIG5ldyBzbSh7aW5jbHVkZTp0LGV4cGxpY2l0OnJ9KX0sY2d0LmV4cG9ydHM9c219KTt2YXIgdWd0PVhlKChSY2ksZGd0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgbFFyPV9pKCk7ZGd0LmV4cG9ydHM9bmV3IGxRcigidGFnOnlhbWwub3JnLDIwMDI6c3RyIix7a2luZDoic2NhbGFyIixjb25zdHJ1Y3Q6ZnVuY3Rpb24oZSl7cmV0dXJuIGUhPT1udWxsP2U6IiJ9fSl9KTt2YXIgcGd0PVhlKChCY2ksZmd0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgY1FyPV9pKCk7Zmd0LmV4cG9ydHM9bmV3IGNRcigidGFnOnlhbWwub3JnLDIwMDI6c2VxIix7a2luZDoic2VxdWVuY2UiLGNvbnN0cnVjdDpmdW5jdGlvbihlKXtyZXR1cm4gZSE9PW51bGw/ZTpbXX19KX0pO3ZhciBtZ3Q9WGUoKEhjaSxoZ3QpPT57InVzZSBzdHJpY3QiO3ZhciBkUXI9X2koKTtoZ3QuZXhwb3J0cz1uZXcgZFFyKCJ0YWc6eWFtbC5vcmcsMjAwMjptYXAiLHtraW5kOiJtYXBwaW5nIixjb25zdHJ1Y3Q6ZnVuY3Rpb24oZSl7cmV0dXJuIGUhPT1udWxsP2U6e319fSl9KTt2YXIgZGVlPVhlKChxY2ksZ2d0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgdVFyPWdkKCk7Z2d0LmV4cG9ydHM9bmV3IHVRcih7ZXhwbGljaXQ6W3VndCgpLHBndCgpLG1ndCgpXX0pfSk7dmFyIGJndD1YZSgoamNpLHhndCk9PnsidXNlIHN0cmljdCI7dmFyIGZRcj1faSgpO2Z1bmN0aW9uIHBRcihlKXtpZihlPT09bnVsbClyZXR1cm4hMDt2YXIgdD1lLmxlbmd0aDtyZXR1cm4gdD09PTEmJmU9PT0ifiJ8fHQ9PT00JiYoZT09PSJudWxsInx8ZT09PSJOdWxsInx8ZT09PSJOVUxMIil9ZnVuY3Rpb24gaFFyKCl7cmV0dXJuIG51bGx9ZnVuY3Rpb24gbVFyKGUpe3JldHVybiBlPT09bnVsbH14Z3QuZXhwb3J0cz1uZXcgZlFyKCJ0YWc6eWFtbC5vcmcsMjAwMjpudWxsIix7a2luZDoic2NhbGFyIixyZXNvbHZlOnBRcixjb25zdHJ1Y3Q6aFFyLHByZWRpY2F0ZTptUXIscmVwcmVzZW50OntjYW5vbmljYWw6ZnVuY3Rpb24oKXtyZXR1cm4ifiJ9LGxvd2VyY2FzZTpmdW5jdGlvbigpe3JldHVybiJudWxsIn0sdXBwZXJjYXNlOmZ1bmN0aW9uKCl7cmV0dXJuIk5VTEwifSxjYW1lbGNhc2U6ZnVuY3Rpb24oKXtyZXR1cm4iTnVsbCJ9fSxkZWZhdWx0U3R5bGU6Imxvd2VyY2FzZSJ9KX0pO3ZhciB5Z3Q9WGUoKFZjaSx2Z3QpPT57InVzZSBzdHJpY3QiO3ZhciBnUXI9X2koKTtmdW5jdGlvbiB4UXIoZSl7aWYoZT09PW51bGwpcmV0dXJuITE7dmFyIHQ9ZS5sZW5ndGg7cmV0dXJuIHQ9PT00JiYoZT09PSJ0cnVlInx8ZT09PSJUcnVlInx8ZT09PSJUUlVFIil8fHQ9PT01JiYoZT09PSJmYWxzZSJ8fGU9PT0iRmFsc2UifHxlPT09IkZBTFNFIil9ZnVuY3Rpb24gYlFyKGUpe3JldHVybiBlPT09InRydWUifHxlPT09IlRydWUifHxlPT09IlRSVUUifWZ1bmN0aW9uIHZRcihlKXtyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpPT09IltvYmplY3QgQm9vbGVhbl0ifXZndC5leHBvcnRzPW5ldyBnUXIoInRhZzp5YW1sLm9yZywyMDAyOmJvb2wiLHtraW5kOiJzY2FsYXIiLHJlc29sdmU6eFFyLGNvbnN0cnVjdDpiUXIscHJlZGljYXRlOnZRcixyZXByZXNlbnQ6e2xvd2VyY2FzZTpmdW5jdGlvbihlKXtyZXR1cm4gZT8idHJ1ZSI6ImZhbHNlIn0sdXBwZXJjYXNlOmZ1bmN0aW9uKGUpe3JldHVybiBlPyJUUlVFIjoiRkFMU0UifSxjYW1lbGNhc2U6ZnVuY3Rpb24oZSl7cmV0dXJuIGU/IlRydWUiOiJGYWxzZSJ9fSxkZWZhdWx0U3R5bGU6Imxvd2VyY2FzZSJ9KX0pO3ZhciBNZ3Q9WGUoKFVjaSx3Z3QpPT57InVzZSBzdHJpY3QiO3ZhciB5UXI9bWQoKSx3UXI9X2koKTtmdW5jdGlvbiBNUXIoZSl7cmV0dXJuIDQ4PD1lJiZlPD01N3x8NjU8PWUmJmU8PTcwfHw5Nzw9ZSYmZTw9MTAyfWZ1bmN0aW9uIGtRcihlKXtyZXR1cm4gNDg8PWUmJmU8PTU1fWZ1bmN0aW9uIFNRcihlKXtyZXR1cm4gNDg8PWUmJmU8PTU3fWZ1bmN0aW9uIHpRcihlKXtpZihlPT09bnVsbClyZXR1cm4hMTt2YXIgdD1lLmxlbmd0aCxyPTAsYT0hMSxpO2lmKCF0KXJldHVybiExO2lmKGk9ZVtyXSwoaT09PSItInx8aT09PSIrIikmJihpPWVbKytyXSksaT09PSIwIil7aWYocisxPT09dClyZXR1cm4hMDtpZihpPWVbKytyXSxpPT09ImIiKXtmb3IocisrO3I8dDtyKyspaWYoaT1lW3JdLGkhPT0iXyIpe2lmKGkhPT0iMCImJmkhPT0iMSIpcmV0dXJuITE7YT0hMH1yZXR1cm4gYSYmaSE9PSJfIn1pZihpPT09IngiKXtmb3IocisrO3I8dDtyKyspaWYoaT1lW3JdLGkhPT0iXyIpe2lmKCFNUXIoZS5jaGFyQ29kZUF0KHIpKSlyZXR1cm4hMTthPSEwfXJldHVybiBhJiZpIT09Il8ifWZvcig7cjx0O3IrKylpZihpPWVbcl0saSE9PSJfIil7aWYoIWtRcihlLmNoYXJDb2RlQXQocikpKXJldHVybiExO2E9ITB9cmV0dXJuIGEmJmkhPT0iXyJ9aWYoaT09PSJfIilyZXR1cm4hMTtmb3IoO3I8dDtyKyspaWYoaT1lW3JdLGkhPT0iXyIpe2lmKGk9PT0iOiIpYnJlYWs7aWYoIVNRcihlLmNoYXJDb2RlQXQocikpKXJldHVybiExO2E9ITB9cmV0dXJuIWF8fGk9PT0iXyI/ITE6aSE9PSI6Ij8hMDovXig6WzAtNV0/WzAtOV0pKyQvLnRlc3QoZS5zbGljZShyKSl9ZnVuY3Rpb24gQ1FyKGUpe3ZhciB0PWUscj0xLGEsaSxvPVtdO3JldHVybiB0LmluZGV4T2YoIl8iKSE9PS0xJiYodD10LnJlcGxhY2UoL18vZywiIikpLGE9dFswXSwoYT09PSItInx8YT09PSIrIikmJihhPT09Ii0iJiYocj0tMSksdD10LnNsaWNlKDEpLGE9dFswXSksdD09PSIwIj8wOmE9PT0iMCI/dFsxXT09PSJiIj9yKnBhcnNlSW50KHQuc2xpY2UoMiksMik6dFsxXT09PSJ4Ij9yKnBhcnNlSW50KHQsMTYpOnIqcGFyc2VJbnQodCw4KTp0LmluZGV4T2YoIjoiKSE9PS0xPyh0LnNwbGl0KCI6IikuZm9yRWFjaChmdW5jdGlvbihuKXtvLnVuc2hpZnQocGFyc2VJbnQobiwxMCkpfSksdD0wLGk9MSxvLmZvckVhY2goZnVuY3Rpb24obil7dCs9bippLGkqPTYwfSkscip0KTpyKnBhcnNlSW50KHQsMTApfWZ1bmN0aW9uIF9RcihlKXtyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpPT09IltvYmplY3QgTnVtYmVyXSImJmUlMT09PTAmJiF5UXIuaXNOZWdhdGl2ZVplcm8oZSl9d2d0LmV4cG9ydHM9bmV3IHdRcigidGFnOnlhbWwub3JnLDIwMDI6aW50Iix7a2luZDoic2NhbGFyIixyZXNvbHZlOnpRcixjb25zdHJ1Y3Q6Q1FyLHByZWRpY2F0ZTpfUXIscmVwcmVzZW50OntiaW5hcnk6ZnVuY3Rpb24oZSl7cmV0dXJuIGU+PTA/IjBiIitlLnRvU3RyaW5nKDIpOiItMGIiK2UudG9TdHJpbmcoMikuc2xpY2UoMSl9LG9jdGFsOmZ1bmN0aW9uKGUpe3JldHVybiBlPj0wPyIwIitlLnRvU3RyaW5nKDgpOiItMCIrZS50b1N0cmluZyg4KS5zbGljZSgxKX0sZGVjaW1hbDpmdW5jdGlvbihlKXtyZXR1cm4gZS50b1N0cmluZygxMCl9LGhleGFkZWNpbWFsOmZ1bmN0aW9uKGUpe3JldHVybiBlPj0wPyIweCIrZS50b1N0cmluZygxNikudG9VcHBlckNhc2UoKToiLTB4IitlLnRvU3RyaW5nKDE2KS50b1VwcGVyQ2FzZSgpLnNsaWNlKDEpfX0sZGVmYXVsdFN0eWxlOiJkZWNpbWFsIixzdHlsZUFsaWFzZXM6e2JpbmFyeTpbMiwiYmluIl0sb2N0YWw6WzgsIm9jdCJdLGRlY2ltYWw6WzEwLCJkZWMiXSxoZXhhZGVjaW1hbDpbMTYsImhleCJdfX0pfSk7dmFyIHpndD1YZSgoV2NpLFNndCk9PnsidXNlIHN0cmljdCI7dmFyIGtndD1tZCgpLFRRcj1faSgpLExRcj1uZXcgUmVnRXhwKCJeKD86Wy0rXT8oPzowfFsxLTldWzAtOV9dKikoPzpcXC5bMC05X10qKT8oPzpbZUVdWy0rXT9bMC05XSspP3xcXC5bMC05X10rKD86W2VFXVstK10/WzAtOV0rKT98Wy0rXT9bMC05XVswLTlfXSooPzo6WzAtNV0/WzAtOV0pK1xcLlswLTlfXSp8Wy0rXT9cXC4oPzppbmZ8SW5mfElORil8XFwuKD86bmFufE5hTnxOQU4pKSQiKTtmdW5jdGlvbiBEUXIoZSl7cmV0dXJuIShlPT09bnVsbHx8IUxRci50ZXN0KGUpfHxlW2UubGVuZ3RoLTFdPT09Il8iKX1mdW5jdGlvbiBBUXIoZSl7dmFyIHQscixhLGk7cmV0dXJuIHQ9ZS5yZXBsYWNlKC9fL2csIiIpLnRvTG93ZXJDYXNlKCkscj10WzBdPT09Ii0iPy0xOjEsaT1bXSwiKy0iLmluZGV4T2YodFswXSk+PTAmJih0PXQuc2xpY2UoMSkpLHQ9PT0iLmluZiI/cj09PTE/TnVtYmVyLlBPU0lUSVZFX0lORklOSVRZOk51bWJlci5ORUdBVElWRV9JTkZJTklUWTp0PT09Ii5uYW4iP05hTjp0LmluZGV4T2YoIjoiKT49MD8odC5zcGxpdCgiOiIpLmZvckVhY2goZnVuY3Rpb24obyl7aS51bnNoaWZ0KHBhcnNlRmxvYXQobywxMCkpfSksdD0wLGE9MSxpLmZvckVhY2goZnVuY3Rpb24obyl7dCs9byphLGEqPTYwfSkscip0KTpyKnBhcnNlRmxvYXQodCwxMCl9dmFyIEVRcj0vXlstK10/WzAtOV0rZS87ZnVuY3Rpb24gJFFyKGUsdCl7dmFyIHI7aWYoaXNOYU4oZSkpc3dpdGNoKHQpe2Nhc2UibG93ZXJjYXNlIjpyZXR1cm4iLm5hbiI7Y2FzZSJ1cHBlcmNhc2UiOnJldHVybiIuTkFOIjtjYXNlImNhbWVsY2FzZSI6cmV0dXJuIi5OYU4ifWVsc2UgaWYoTnVtYmVyLlBPU0lUSVZFX0lORklOSVRZPT09ZSlzd2l0Y2godCl7Y2FzZSJsb3dlcmNhc2UiOnJldHVybiIuaW5mIjtjYXNlInVwcGVyY2FzZSI6cmV0dXJuIi5JTkYiO2Nhc2UiY2FtZWxjYXNlIjpyZXR1cm4iLkluZiJ9ZWxzZSBpZihOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFk9PT1lKXN3aXRjaCh0KXtjYXNlImxvd2VyY2FzZSI6cmV0dXJuIi0uaW5mIjtjYXNlInVwcGVyY2FzZSI6cmV0dXJuIi0uSU5GIjtjYXNlImNhbWVsY2FzZSI6cmV0dXJuIi0uSW5mIn1lbHNlIGlmKGtndC5pc05lZ2F0aXZlWmVybyhlKSlyZXR1cm4iLTAuMCI7cmV0dXJuIHI9ZS50b1N0cmluZygxMCksRVFyLnRlc3Qocik/ci5yZXBsYWNlKCJlIiwiLmUiKTpyfWZ1bmN0aW9uIFBRcihlKXtyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpPT09IltvYmplY3QgTnVtYmVyXSImJihlJTEhPT0wfHxrZ3QuaXNOZWdhdGl2ZVplcm8oZSkpfVNndC5leHBvcnRzPW5ldyBUUXIoInRhZzp5YW1sLm9yZywyMDAyOmZsb2F0Iix7a2luZDoic2NhbGFyIixyZXNvbHZlOkRRcixjb25zdHJ1Y3Q6QVFyLHByZWRpY2F0ZTpQUXIscmVwcmVzZW50OiRRcixkZWZhdWx0U3R5bGU6Imxvd2VyY2FzZSJ9KX0pO3ZhciBXdWU9WGUoKEdjaSxDZ3QpPT57InVzZSBzdHJpY3QiO3ZhciBJUXI9Z2QoKTtDZ3QuZXhwb3J0cz1uZXcgSVFyKHtpbmNsdWRlOltkZWUoKV0saW1wbGljaXQ6W2JndCgpLHlndCgpLE1ndCgpLHpndCgpXX0pfSk7dmFyIEd1ZT1YZSgoWWNpLF9ndCk9PnsidXNlIHN0cmljdCI7dmFyIE5Rcj1nZCgpO19ndC5leHBvcnRzPW5ldyBOUXIoe2luY2x1ZGU6W1d1ZSgpXX0pfSk7dmFyIEFndD1YZSgoWmNpLERndCk9PnsidXNlIHN0cmljdCI7dmFyIEZRcj1faSgpLFRndD1uZXcgUmVnRXhwKCJeKFswLTldWzAtOV1bMC05XVswLTldKS0oWzAtOV1bMC05XSktKFswLTldWzAtOV0pJCIpLExndD1uZXcgUmVnRXhwKCJeKFswLTldWzAtOV1bMC05XVswLTldKS0oWzAtOV1bMC05XT8pLShbMC05XVswLTldPykoPzpbVHRdfFsgXFx0XSspKFswLTldWzAtOV0/KTooWzAtOV1bMC05XSk6KFswLTldWzAtOV0pKD86XFwuKFswLTldKikpPyg/OlsgXFx0XSooWnwoWy0rXSkoWzAtOV1bMC05XT8pKD86OihbMC05XVswLTldKSk/KSk/JCIpO2Z1bmN0aW9uIE9RcihlKXtyZXR1cm4gZT09PW51bGw/ITE6VGd0LmV4ZWMoZSkhPT1udWxsfHxMZ3QuZXhlYyhlKSE9PW51bGx9ZnVuY3Rpb24gUlFyKGUpe3ZhciB0LHIsYSxpLG8sbixzLGM9MCxkPW51bGwsZix1LHA7aWYodD1UZ3QuZXhlYyhlKSx0PT09bnVsbCYmKHQ9TGd0LmV4ZWMoZSkpLHQ9PT1udWxsKXRocm93IG5ldyBFcnJvcigiRGF0ZSByZXNvbHZlIGVycm9yIik7aWYocj0rdFsxXSxhPSt0WzJdLTEsaT0rdFszXSwhdFs0XSlyZXR1cm4gbmV3IERhdGUoRGF0ZS5VVEMocixhLGkpKTtpZihvPSt0WzRdLG49K3RbNV0scz0rdFs2XSx0WzddKXtmb3IoYz10WzddLnNsaWNlKDAsMyk7Yy5sZW5ndGg8MzspYys9IjAiO2M9K2N9cmV0dXJuIHRbOV0mJihmPSt0WzEwXSx1PSsodFsxMV18fDApLGQ9KGYqNjArdSkqNmU0LHRbOV09PT0iLSImJihkPS1kKSkscD1uZXcgRGF0ZShEYXRlLlVUQyhyLGEsaSxvLG4scyxjKSksZCYmcC5zZXRUaW1lKHAuZ2V0VGltZSgpLWQpLHB9ZnVuY3Rpb24gQlFyKGUpe3JldHVybiBlLnRvSVNPU3RyaW5nKCl9RGd0LmV4cG9ydHM9bmV3IEZRcigidGFnOnlhbWwub3JnLDIwMDI6dGltZXN0YW1wIix7a2luZDoic2NhbGFyIixyZXNvbHZlOk9Rcixjb25zdHJ1Y3Q6UlFyLGluc3RhbmNlT2Y6RGF0ZSxyZXByZXNlbnQ6QlFyfSl9KTt2YXIgJGd0PVhlKChYY2ksRWd0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgSFFyPV9pKCk7ZnVuY3Rpb24gcVFyKGUpe3JldHVybiBlPT09Ijw8Inx8ZT09PW51bGx9RWd0LmV4cG9ydHM9bmV3IEhRcigidGFnOnlhbWwub3JnLDIwMDI6bWVyZ2UiLHtraW5kOiJzY2FsYXIiLHJlc29sdmU6cVFyfSl9KTt2YXIgTmd0PVhlKChRY2ksSWd0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgeGQ7dHJ5e1BndD1uMCx4ZD1QZ3QoImJ1ZmZlciIpLkJ1ZmZlcn1jYXRjaHt9dmFyIGpRcj1faSgpLFl1ZT1gQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLz0KXHJgO2Z1bmN0aW9uIFZRcihlKXtpZihlPT09bnVsbClyZXR1cm4hMTt2YXIgdCxyLGE9MCxpPWUubGVuZ3RoLG89WXVlO2ZvcihyPTA7cjxpO3IrKylpZih0PW8uaW5kZXhPZihlLmNoYXJBdChyKSksISh0PjY0KSl7aWYodDwwKXJldHVybiExO2ErPTZ9cmV0dXJuIGElOD09PTB9ZnVuY3Rpb24gVVFyKGUpe3ZhciB0LHIsYT1lLnJlcGxhY2UoL1tcclxuPV0vZywiIiksaT1hLmxlbmd0aCxvPVl1ZSxuPTAscz1bXTtmb3IodD0wO3Q8aTt0KyspdCU0PT09MCYmdCYmKHMucHVzaChuPj4xNiYyNTUpLHMucHVzaChuPj44JjI1NSkscy5wdXNoKG4mMjU1KSksbj1uPDw2fG8uaW5kZXhPZihhLmNoYXJBdCh0KSk7cmV0dXJuIHI9aSU0KjYscj09PTA/KHMucHVzaChuPj4xNiYyNTUpLHMucHVzaChuPj44JjI1NSkscy5wdXNoKG4mMjU1KSk6cj09PTE4PyhzLnB1c2gobj4+MTAmMjU1KSxzLnB1c2gobj4+MiYyNTUpKTpyPT09MTImJnMucHVzaChuPj40JjI1NSkseGQ/eGQuZnJvbT94ZC5mcm9tKHMpOm5ldyB4ZChzKTpzfWZ1bmN0aW9uIFdRcihlKXt2YXIgdD0iIixyPTAsYSxpLG89ZS5sZW5ndGgsbj1ZdWU7Zm9yKGE9MDthPG87YSsrKWElMz09PTAmJmEmJih0Kz1uW3I+PjE4JjYzXSx0Kz1uW3I+PjEyJjYzXSx0Kz1uW3I+PjYmNjNdLHQrPW5bciY2M10pLHI9KHI8PDgpK2VbYV07cmV0dXJuIGk9byUzLGk9PT0wPyh0Kz1uW3I+PjE4JjYzXSx0Kz1uW3I+PjEyJjYzXSx0Kz1uW3I+PjYmNjNdLHQrPW5bciY2M10pOmk9PT0yPyh0Kz1uW3I+PjEwJjYzXSx0Kz1uW3I+PjQmNjNdLHQrPW5bcjw8MiY2M10sdCs9bls2NF0pOmk9PT0xJiYodCs9bltyPj4yJjYzXSx0Kz1uW3I8PDQmNjNdLHQrPW5bNjRdLHQrPW5bNjRdKSx0fWZ1bmN0aW9uIEdRcihlKXtyZXR1cm4geGQmJnhkLmlzQnVmZmVyKGUpfUlndC5leHBvcnRzPW5ldyBqUXIoInRhZzp5YW1sLm9yZywyMDAyOmJpbmFyeSIse2tpbmQ6InNjYWxhciIscmVzb2x2ZTpWUXIsY29uc3RydWN0OlVRcixwcmVkaWNhdGU6R1FyLHJlcHJlc2VudDpXUXJ9KTt2YXIgUGd0fSk7dmFyIE9ndD1YZSgoSmNpLEZndCk9PnsidXNlIHN0cmljdCI7dmFyIFlRcj1faSgpLFpRcj1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LFhRcj1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nO2Z1bmN0aW9uIFFRcihlKXtpZihlPT09bnVsbClyZXR1cm4hMDt2YXIgdD1bXSxyLGEsaSxvLG4scz1lO2ZvcihyPTAsYT1zLmxlbmd0aDtyPGE7cis9MSl7aWYoaT1zW3JdLG49ITEsWFFyLmNhbGwoaSkhPT0iW29iamVjdCBPYmplY3RdIilyZXR1cm4hMTtmb3IobyBpbiBpKWlmKFpRci5jYWxsKGksbykpaWYoIW4pbj0hMDtlbHNlIHJldHVybiExO2lmKCFuKXJldHVybiExO2lmKHQuaW5kZXhPZihvKT09PS0xKXQucHVzaChvKTtlbHNlIHJldHVybiExfXJldHVybiEwfWZ1bmN0aW9uIEtRcihlKXtyZXR1cm4gZSE9PW51bGw/ZTpbXX1GZ3QuZXhwb3J0cz1uZXcgWVFyKCJ0YWc6eWFtbC5vcmcsMjAwMjpvbWFwIix7a2luZDoic2VxdWVuY2UiLHJlc29sdmU6UVFyLGNvbnN0cnVjdDpLUXJ9KX0pO3ZhciBCZ3Q9WGUoKGUwaSxSZ3QpPT57InVzZSBzdHJpY3QiO3ZhciBKUXI9X2koKSxlS3I9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZztmdW5jdGlvbiB0S3IoZSl7aWYoZT09PW51bGwpcmV0dXJuITA7dmFyIHQscixhLGksbyxuPWU7Zm9yKG89bmV3IEFycmF5KG4ubGVuZ3RoKSx0PTAscj1uLmxlbmd0aDt0PHI7dCs9MSl7aWYoYT1uW3RdLGVLci5jYWxsKGEpIT09IltvYmplY3QgT2JqZWN0XSJ8fChpPU9iamVjdC5rZXlzKGEpLGkubGVuZ3RoIT09MSkpcmV0dXJuITE7b1t0XT1baVswXSxhW2lbMF1dXX1yZXR1cm4hMH1mdW5jdGlvbiByS3IoZSl7aWYoZT09PW51bGwpcmV0dXJuW107dmFyIHQscixhLGksbyxuPWU7Zm9yKG89bmV3IEFycmF5KG4ubGVuZ3RoKSx0PTAscj1uLmxlbmd0aDt0PHI7dCs9MSlhPW5bdF0saT1PYmplY3Qua2V5cyhhKSxvW3RdPVtpWzBdLGFbaVswXV1dO3JldHVybiBvfVJndC5leHBvcnRzPW5ldyBKUXIoInRhZzp5YW1sLm9yZywyMDAyOnBhaXJzIix7a2luZDoic2VxdWVuY2UiLHJlc29sdmU6dEtyLGNvbnN0cnVjdDpyS3J9KX0pO3ZhciBxZ3Q9WGUoKHQwaSxIZ3QpPT57InVzZSBzdHJpY3QiO3ZhciBhS3I9X2koKSxpS3I9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtmdW5jdGlvbiBvS3IoZSl7aWYoZT09PW51bGwpcmV0dXJuITA7dmFyIHQscj1lO2Zvcih0IGluIHIpaWYoaUtyLmNhbGwocix0KSYmclt0XSE9PW51bGwpcmV0dXJuITE7cmV0dXJuITB9ZnVuY3Rpb24gbktyKGUpe3JldHVybiBlIT09bnVsbD9lOnt9fUhndC5leHBvcnRzPW5ldyBhS3IoInRhZzp5YW1sLm9yZywyMDAyOnNldCIse2tpbmQ6Im1hcHBpbmciLHJlc29sdmU6b0tyLGNvbnN0cnVjdDpuS3J9KX0pO3ZhciBsbT1YZSgocjBpLGpndCk9PnsidXNlIHN0cmljdCI7dmFyIHNLcj1nZCgpO2pndC5leHBvcnRzPW5ldyBzS3Ioe2luY2x1ZGU6W0d1ZSgpXSxpbXBsaWNpdDpbQWd0KCksJGd0KCldLGV4cGxpY2l0OltOZ3QoKSxPZ3QoKSxCZ3QoKSxxZ3QoKV19KX0pO3ZhciBVZ3Q9WGUoKGEwaSxWZ3QpPT57InVzZSBzdHJpY3QiO3ZhciBsS3I9X2koKTtmdW5jdGlvbiBjS3IoKXtyZXR1cm4hMH1mdW5jdGlvbiBkS3IoKXt9ZnVuY3Rpb24gdUtyKCl7cmV0dXJuIiJ9ZnVuY3Rpb24gZktyKGUpe3JldHVybiB0eXBlb2YgZT4idSJ9Vmd0LmV4cG9ydHM9bmV3IGxLcigidGFnOnlhbWwub3JnLDIwMDI6anMvdW5kZWZpbmVkIix7a2luZDoic2NhbGFyIixyZXNvbHZlOmNLcixjb25zdHJ1Y3Q6ZEtyLHByZWRpY2F0ZTpmS3IscmVwcmVzZW50OnVLcn0pfSk7dmFyIEdndD1YZSgoaTBpLFdndCk9PnsidXNlIHN0cmljdCI7dmFyIHBLcj1faSgpO2Z1bmN0aW9uIGhLcihlKXtpZihlPT09bnVsbHx8ZS5sZW5ndGg9PT0wKXJldHVybiExO3ZhciB0PWUscj0vXC8oW2dpbV0qKSQvLmV4ZWMoZSksYT0iIjtyZXR1cm4hKHRbMF09PT0iLyImJihyJiYoYT1yWzFdKSxhLmxlbmd0aD4zfHx0W3QubGVuZ3RoLWEubGVuZ3RoLTFdIT09Ii8iKSl9ZnVuY3Rpb24gbUtyKGUpe3ZhciB0PWUscj0vXC8oW2dpbV0qKSQvLmV4ZWMoZSksYT0iIjtyZXR1cm4gdFswXT09PSIvIiYmKHImJihhPXJbMV0pLHQ9dC5zbGljZSgxLHQubGVuZ3RoLWEubGVuZ3RoLTEpKSxuZXcgUmVnRXhwKHQsYSl9ZnVuY3Rpb24gZ0tyKGUpe3ZhciB0PSIvIitlLnNvdXJjZSsiLyI7cmV0dXJuIGUuZ2xvYmFsJiYodCs9ImciKSxlLm11bHRpbGluZSYmKHQrPSJtIiksZS5pZ25vcmVDYXNlJiYodCs9ImkiKSx0fWZ1bmN0aW9uIHhLcihlKXtyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpPT09IltvYmplY3QgUmVnRXhwXSJ9V2d0LmV4cG9ydHM9bmV3IHBLcigidGFnOnlhbWwub3JnLDIwMDI6anMvcmVnZXhwIix7a2luZDoic2NhbGFyIixyZXNvbHZlOmhLcixjb25zdHJ1Y3Q6bUtyLHByZWRpY2F0ZTp4S3IscmVwcmVzZW50OmdLcn0pfSk7dmFyIFhndD1YZSgobzBpLFpndCk9PnsidXNlIHN0cmljdCI7dmFyIHVlZTt0cnl7WWd0PW4wLHVlZT1ZZ3QoImVzcHJpbWEiKX1jYXRjaHt0eXBlb2Ygd2luZG93PCJ1IiYmKHVlZT13aW5kb3cuZXNwcmltYSl9dmFyIGJLcj1faSgpO2Z1bmN0aW9uIHZLcihlKXtpZihlPT09bnVsbClyZXR1cm4hMTt0cnl7dmFyIHQ9IigiK2UrIikiLHI9dWVlLnBhcnNlKHQse3JhbmdlOiEwfSk7cmV0dXJuIShyLnR5cGUhPT0iUHJvZ3JhbSJ8fHIuYm9keS5sZW5ndGghPT0xfHxyLmJvZHlbMF0udHlwZSE9PSJFeHByZXNzaW9uU3RhdGVtZW50Inx8ci5ib2R5WzBdLmV4cHJlc3Npb24udHlwZSE9PSJBcnJvd0Z1bmN0aW9uRXhwcmVzc2lvbiImJnIuYm9keVswXS5leHByZXNzaW9uLnR5cGUhPT0iRnVuY3Rpb25FeHByZXNzaW9uIil9Y2F0Y2h7cmV0dXJuITF9fWZ1bmN0aW9uIHlLcihlKXt2YXIgdD0iKCIrZSsiKSIscj11ZWUucGFyc2UodCx7cmFuZ2U6ITB9KSxhPVtdLGk7aWYoci50eXBlIT09IlByb2dyYW0ifHxyLmJvZHkubGVuZ3RoIT09MXx8ci5ib2R5WzBdLnR5cGUhPT0iRXhwcmVzc2lvblN0YXRlbWVudCJ8fHIuYm9keVswXS5leHByZXNzaW9uLnR5cGUhPT0iQXJyb3dGdW5jdGlvbkV4cHJlc3Npb24iJiZyLmJvZHlbMF0uZXhwcmVzc2lvbi50eXBlIT09IkZ1bmN0aW9uRXhwcmVzc2lvbiIpdGhyb3cgbmV3IEVycm9yKCJGYWlsZWQgdG8gcmVzb2x2ZSBmdW5jdGlvbiIpO3JldHVybiByLmJvZHlbMF0uZXhwcmVzc2lvbi5wYXJhbXMuZm9yRWFjaChmdW5jdGlvbihvKXthLnB1c2goby5uYW1lKX0pLGk9ci5ib2R5WzBdLmV4cHJlc3Npb24uYm9keS5yYW5nZSxyLmJvZHlbMF0uZXhwcmVzc2lvbi5ib2R5LnR5cGU9PT0iQmxvY2tTdGF0ZW1lbnQiP25ldyBGdW5jdGlvbihhLHQuc2xpY2UoaVswXSsxLGlbMV0tMSkpOm5ldyBGdW5jdGlvbihhLCJyZXR1cm4gIit0LnNsaWNlKGlbMF0saVsxXSkpfWZ1bmN0aW9uIHdLcihlKXtyZXR1cm4gZS50b1N0cmluZygpfWZ1bmN0aW9uIE1LcihlKXtyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpPT09IltvYmplY3QgRnVuY3Rpb25dIn1aZ3QuZXhwb3J0cz1uZXcgYktyKCJ0YWc6eWFtbC5vcmcsMjAwMjpqcy9mdW5jdGlvbiIse2tpbmQ6InNjYWxhciIscmVzb2x2ZTp2S3IsY29uc3RydWN0OnlLcixwcmVkaWNhdGU6TUtyLHJlcHJlc2VudDp3S3J9KTt2YXIgWWd0fSk7dmFyIEd4PVhlKChzMGksS2d0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgUWd0PWdkKCk7S2d0LmV4cG9ydHM9UWd0LkRFRkFVTFQ9bmV3IFFndCh7aW5jbHVkZTpbbG0oKV0sZXhwbGljaXQ6W1VndCgpLEdndCgpLFhndCgpXX0pfSk7dmFyIGJ4dD1YZSgobDBpLFl4KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgQmw9bWQoKSxKZ3Q9bm0oKSxrS3I9b2d0KCksZXh0PWxtKCksU0tyPUd4KCksTzA9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSxmZWU9MSx0eHQ9MixyeHQ9MyxwZWU9NCxadWU9MSx6S3I9MixheHQ9MyxDS3I9L1tceDAwLVx4MDhceDBCXHgwQ1x4MEUtXHgxRlx4N0YtXHg4NFx4ODYtXHg5Rlx1RkZGRVx1RkZGRl18W1x1RDgwMC1cdURCRkZdKD8hW1x1REMwMC1cdURGRkZdKXwoPzpbXlx1RDgwMC1cdURCRkZdfF4pW1x1REMwMC1cdURGRkZdLyxfS3I9L1tceDg1XHUyMDI4XHUyMDI5XS8sVEtyPS9bLFxbXF1ce1x9XS8saXh0PS9eKD86IXwhIXwhW2EtelwtXSshKSQvaSxveHQ9L14oPzohfFteLFxbXF1ce1x9XSkoPzolWzAtOWEtZl17Mn18WzAtOWEtelwtIztcL1w/OkAmPVwrXCQsX1wuIX5cKidcKFwpXFtcXV0pKiQvaTtmdW5jdGlvbiBueHQoZSl7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKX1mdW5jdGlvbiB4MihlKXtyZXR1cm4gZT09PTEwfHxlPT09MTN9ZnVuY3Rpb24gYmQoZSl7cmV0dXJuIGU9PT05fHxlPT09MzJ9ZnVuY3Rpb24gTG8oZSl7cmV0dXJuIGU9PT05fHxlPT09MzJ8fGU9PT0xMHx8ZT09PTEzfWZ1bmN0aW9uIGNtKGUpe3JldHVybiBlPT09NDR8fGU9PT05MXx8ZT09PTkzfHxlPT09MTIzfHxlPT09MTI1fWZ1bmN0aW9uIExLcihlKXt2YXIgdDtyZXR1cm4gNDg8PWUmJmU8PTU3P2UtNDg6KHQ9ZXwzMiw5Nzw9dCYmdDw9MTAyP3QtOTcrMTA6LTEpfWZ1bmN0aW9uIERLcihlKXtyZXR1cm4gZT09PTEyMD8yOmU9PT0xMTc/NDplPT09ODU/ODowfWZ1bmN0aW9uIEFLcihlKXtyZXR1cm4gNDg8PWUmJmU8PTU3P2UtNDg6LTF9ZnVuY3Rpb24gc3h0KGUpe3JldHVybiBlPT09NDg/IlwwIjplPT09OTc/Ilx4MDciOmU9PT05OD8iXGIiOmU9PT0xMTZ8fGU9PT05PyIJIjplPT09MTEwP2AKYDplPT09MTE4PyJcdiI6ZT09PTEwMj8iXGYiOmU9PT0xMTQ/IlxyIjplPT09MTAxPyJceDFCIjplPT09MzI/IiAiOmU9PT0zND8nIic6ZT09PTQ3PyIvIjplPT09OTI/IlxcIjplPT09Nzg/Ilx4ODUiOmU9PT05NT8iXHhBMCI6ZT09PTc2PyJcdTIwMjgiOmU9PT04MD8iXHUyMDI5IjoiIn1mdW5jdGlvbiBFS3IoZSl7cmV0dXJuIGU8PTY1NTM1P1N0cmluZy5mcm9tQ2hhckNvZGUoZSk6U3RyaW5nLmZyb21DaGFyQ29kZSgoZS02NTUzNj4+MTApKzU1Mjk2LChlLTY1NTM2JjEwMjMpKzU2MzIwKX1mdW5jdGlvbiBseHQoZSx0LHIpe3Q9PT0iX19wcm90b19fIj9PYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LHtjb25maWd1cmFibGU6ITAsZW51bWVyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpyfSk6ZVt0XT1yfXZhciBjeHQ9bmV3IEFycmF5KDI1NiksZHh0PW5ldyBBcnJheSgyNTYpO2Zvcih2ZD0wO3ZkPDI1Njt2ZCsrKWN4dFt2ZF09c3h0KHZkKT8xOjAsZHh0W3ZkXT1zeHQodmQpO2Z1bmN0aW9uICRLcihlLHQpe3RoaXMuaW5wdXQ9ZSx0aGlzLmZpbGVuYW1lPXQuZmlsZW5hbWV8fG51bGwsdGhpcy5zY2hlbWE9dC5zY2hlbWF8fFNLcix0aGlzLm9uV2FybmluZz10Lm9uV2FybmluZ3x8bnVsbCx0aGlzLmxlZ2FjeT10LmxlZ2FjeXx8ITEsdGhpcy5qc29uPXQuanNvbnx8ITEsdGhpcy5saXN0ZW5lcj10Lmxpc3RlbmVyfHxudWxsLHRoaXMuaW1wbGljaXRUeXBlcz10aGlzLnNjaGVtYS5jb21waWxlZEltcGxpY2l0LHRoaXMudHlwZU1hcD10aGlzLnNjaGVtYS5jb21waWxlZFR5cGVNYXAsdGhpcy5sZW5ndGg9ZS5sZW5ndGgsdGhpcy5wb3NpdGlvbj0wLHRoaXMubGluZT0wLHRoaXMubGluZVN0YXJ0PTAsdGhpcy5saW5lSW5kZW50PTAsdGhpcy5kb2N1bWVudHM9W119ZnVuY3Rpb24gdXh0KGUsdCl7cmV0dXJuIG5ldyBKZ3QodCxuZXcga0tyKGUuZmlsZW5hbWUsZS5pbnB1dCxlLnBvc2l0aW9uLGUubGluZSxlLnBvc2l0aW9uLWUubGluZVN0YXJ0KSl9ZnVuY3Rpb24gQXQoZSx0KXt0aHJvdyB1eHQoZSx0KX1mdW5jdGlvbiBoZWUoZSx0KXtlLm9uV2FybmluZyYmZS5vbldhcm5pbmcuY2FsbChudWxsLHV4dChlLHQpKX12YXIgZnh0PXtZQU1MOmZ1bmN0aW9uKHQscixhKXt2YXIgaSxvLG47dC52ZXJzaW9uIT09bnVsbCYmQXQodCwiZHVwbGljYXRpb24gb2YgJVlBTUwgZGlyZWN0aXZlIiksYS5sZW5ndGghPT0xJiZBdCh0LCJZQU1MIGRpcmVjdGl2ZSBhY2NlcHRzIGV4YWN0bHkgb25lIGFyZ3VtZW50IiksaT0vXihbMC05XSspXC4oWzAtOV0rKSQvLmV4ZWMoYVswXSksaT09PW51bGwmJkF0KHQsImlsbC1mb3JtZWQgYXJndW1lbnQgb2YgdGhlIFlBTUwgZGlyZWN0aXZlIiksbz1wYXJzZUludChpWzFdLDEwKSxuPXBhcnNlSW50KGlbMl0sMTApLG8hPT0xJiZBdCh0LCJ1bmFjY2VwdGFibGUgWUFNTCB2ZXJzaW9uIG9mIHRoZSBkb2N1bWVudCIpLHQudmVyc2lvbj1hWzBdLHQuY2hlY2tMaW5lQnJlYWtzPW48MixuIT09MSYmbiE9PTImJmhlZSh0LCJ1bnN1cHBvcnRlZCBZQU1MIHZlcnNpb24gb2YgdGhlIGRvY3VtZW50Iil9LFRBRzpmdW5jdGlvbih0LHIsYSl7dmFyIGksbzthLmxlbmd0aCE9PTImJkF0KHQsIlRBRyBkaXJlY3RpdmUgYWNjZXB0cyBleGFjdGx5IHR3byBhcmd1bWVudHMiKSxpPWFbMF0sbz1hWzFdLGl4dC50ZXN0KGkpfHxBdCh0LCJpbGwtZm9ybWVkIHRhZyBoYW5kbGUgKGZpcnN0IGFyZ3VtZW50KSBvZiB0aGUgVEFHIGRpcmVjdGl2ZSIpLE8wLmNhbGwodC50YWdNYXAsaSkmJkF0KHQsJ3RoZXJlIGlzIGEgcHJldmlvdXNseSBkZWNsYXJlZCBzdWZmaXggZm9yICInK2krJyIgdGFnIGhhbmRsZScpLG94dC50ZXN0KG8pfHxBdCh0LCJpbGwtZm9ybWVkIHRhZyBwcmVmaXggKHNlY29uZCBhcmd1bWVudCkgb2YgdGhlIFRBRyBkaXJlY3RpdmUiKSx0LnRhZ01hcFtpXT1vfX07ZnVuY3Rpb24gUjAoZSx0LHIsYSl7dmFyIGksbyxuLHM7aWYodDxyKXtpZihzPWUuaW5wdXQuc2xpY2UodCxyKSxhKWZvcihpPTAsbz1zLmxlbmd0aDtpPG87aSs9MSluPXMuY2hhckNvZGVBdChpKSxuPT09OXx8MzI8PW4mJm48PTExMTQxMTF8fEF0KGUsImV4cGVjdGVkIHZhbGlkIEpTT04gY2hhcmFjdGVyIik7ZWxzZSBDS3IudGVzdChzKSYmQXQoZSwidGhlIHN0cmVhbSBjb250YWlucyBub24tcHJpbnRhYmxlIGNoYXJhY3RlcnMiKTtlLnJlc3VsdCs9c319ZnVuY3Rpb24gcHh0KGUsdCxyLGEpe3ZhciBpLG8sbixzO2ZvcihCbC5pc09iamVjdChyKXx8QXQoZSwiY2Fubm90IG1lcmdlIG1hcHBpbmdzOyB0aGUgcHJvdmlkZWQgc291cmNlIG9iamVjdCBpcyB1bmFjY2VwdGFibGUiKSxpPU9iamVjdC5rZXlzKHIpLG49MCxzPWkubGVuZ3RoO248cztuKz0xKW89aVtuXSxPMC5jYWxsKHQsbyl8fChseHQodCxvLHJbb10pLGFbb109ITApfWZ1bmN0aW9uIGRtKGUsdCxyLGEsaSxvLG4scyl7dmFyIGMsZDtpZihBcnJheS5pc0FycmF5KGkpKWZvcihpPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGkpLGM9MCxkPWkubGVuZ3RoO2M8ZDtjKz0xKUFycmF5LmlzQXJyYXkoaVtjXSkmJkF0KGUsIm5lc3RlZCBhcnJheXMgYXJlIG5vdCBzdXBwb3J0ZWQgaW5zaWRlIGtleXMiKSx0eXBlb2YgaT09Im9iamVjdCImJm54dChpW2NdKT09PSJbb2JqZWN0IE9iamVjdF0iJiYoaVtjXT0iW29iamVjdCBPYmplY3RdIik7aWYodHlwZW9mIGk9PSJvYmplY3QiJiZueHQoaSk9PT0iW29iamVjdCBPYmplY3RdIiYmKGk9IltvYmplY3QgT2JqZWN0XSIpLGk9U3RyaW5nKGkpLHQ9PT1udWxsJiYodD17fSksYT09PSJ0YWc6eWFtbC5vcmcsMjAwMjptZXJnZSIpaWYoQXJyYXkuaXNBcnJheShvKSlmb3IoYz0wLGQ9by5sZW5ndGg7YzxkO2MrPTEpcHh0KGUsdCxvW2NdLHIpO2Vsc2UgcHh0KGUsdCxvLHIpO2Vsc2UhZS5qc29uJiYhTzAuY2FsbChyLGkpJiZPMC5jYWxsKHQsaSkmJihlLmxpbmU9bnx8ZS5saW5lLGUucG9zaXRpb249c3x8ZS5wb3NpdGlvbixBdChlLCJkdXBsaWNhdGVkIG1hcHBpbmcga2V5IikpLGx4dCh0LGksbyksZGVsZXRlIHJbaV07cmV0dXJuIHR9ZnVuY3Rpb24gWHVlKGUpe3ZhciB0O3Q9ZS5pbnB1dC5jaGFyQ29kZUF0KGUucG9zaXRpb24pLHQ9PT0xMD9lLnBvc2l0aW9uKys6dD09PTEzPyhlLnBvc2l0aW9uKyssZS5pbnB1dC5jaGFyQ29kZUF0KGUucG9zaXRpb24pPT09MTAmJmUucG9zaXRpb24rKyk6QXQoZSwiYSBsaW5lIGJyZWFrIGlzIGV4cGVjdGVkIiksZS5saW5lKz0xLGUubGluZVN0YXJ0PWUucG9zaXRpb259ZnVuY3Rpb24gZGkoZSx0LHIpe2Zvcih2YXIgYT0wLGk9ZS5pbnB1dC5jaGFyQ29kZUF0KGUucG9zaXRpb24pO2khPT0wOyl7Zm9yKDtiZChpKTspaT1lLmlucHV0LmNoYXJDb2RlQXQoKytlLnBvc2l0aW9uKTtpZih0JiZpPT09MzUpZG8gaT1lLmlucHV0LmNoYXJDb2RlQXQoKytlLnBvc2l0aW9uKTt3aGlsZShpIT09MTAmJmkhPT0xMyYmaSE9PTApO2lmKHgyKGkpKWZvcihYdWUoZSksaT1lLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbiksYSsrLGUubGluZUluZGVudD0wO2k9PT0zMjspZS5saW5lSW5kZW50KyssaT1lLmlucHV0LmNoYXJDb2RlQXQoKytlLnBvc2l0aW9uKTtlbHNlIGJyZWFrfXJldHVybiByIT09LTEmJmEhPT0wJiZlLmxpbmVJbmRlbnQ8ciYmaGVlKGUsImRlZmljaWVudCBpbmRlbnRhdGlvbiIpLGF9ZnVuY3Rpb24gbWVlKGUpe3ZhciB0PWUucG9zaXRpb24scjtyZXR1cm4gcj1lLmlucHV0LmNoYXJDb2RlQXQodCksISEoKHI9PT00NXx8cj09PTQ2KSYmcj09PWUuaW5wdXQuY2hhckNvZGVBdCh0KzEpJiZyPT09ZS5pbnB1dC5jaGFyQ29kZUF0KHQrMikmJih0Kz0zLHI9ZS5pbnB1dC5jaGFyQ29kZUF0KHQpLHI9PT0wfHxMbyhyKSkpfWZ1bmN0aW9uIFF1ZShlLHQpe3Q9PT0xP2UucmVzdWx0Kz0iICI6dD4xJiYoZS5yZXN1bHQrPUJsLnJlcGVhdChgCmAsdC0xKSl9ZnVuY3Rpb24gUEtyKGUsdCxyKXt2YXIgYSxpLG8sbixzLGMsZCxmLHU9ZS5raW5kLHA9ZS5yZXN1bHQsaDtpZihoPWUuaW5wdXQuY2hhckNvZGVBdChlLnBvc2l0aW9uKSxMbyhoKXx8Y20oaCl8fGg9PT0zNXx8aD09PTM4fHxoPT09NDJ8fGg9PT0zM3x8aD09PTEyNHx8aD09PTYyfHxoPT09Mzl8fGg9PT0zNHx8aD09PTM3fHxoPT09NjR8fGg9PT05Nnx8KGg9PT02M3x8aD09PTQ1KSYmKGk9ZS5pbnB1dC5jaGFyQ29kZUF0KGUucG9zaXRpb24rMSksTG8oaSl8fHImJmNtKGkpKSlyZXR1cm4hMTtmb3IoZS5raW5kPSJzY2FsYXIiLGUucmVzdWx0PSIiLG89bj1lLnBvc2l0aW9uLHM9ITE7aCE9PTA7KXtpZihoPT09NTgpe2lmKGk9ZS5pbnB1dC5jaGFyQ29kZUF0KGUucG9zaXRpb24rMSksTG8oaSl8fHImJmNtKGkpKWJyZWFrfWVsc2UgaWYoaD09PTM1KXtpZihhPWUuaW5wdXQuY2hhckNvZGVBdChlLnBvc2l0aW9uLTEpLExvKGEpKWJyZWFrfWVsc2V7aWYoZS5wb3NpdGlvbj09PWUubGluZVN0YXJ0JiZtZWUoZSl8fHImJmNtKGgpKWJyZWFrO2lmKHgyKGgpKWlmKGM9ZS5saW5lLGQ9ZS5saW5lU3RhcnQsZj1lLmxpbmVJbmRlbnQsZGkoZSwhMSwtMSksZS5saW5lSW5kZW50Pj10KXtzPSEwLGg9ZS5pbnB1dC5jaGFyQ29kZUF0KGUucG9zaXRpb24pO2NvbnRpbnVlfWVsc2V7ZS5wb3NpdGlvbj1uLGUubGluZT1jLGUubGluZVN0YXJ0PWQsZS5saW5lSW5kZW50PWY7YnJlYWt9fXMmJihSMChlLG8sbiwhMSksUXVlKGUsZS5saW5lLWMpLG89bj1lLnBvc2l0aW9uLHM9ITEpLGJkKGgpfHwobj1lLnBvc2l0aW9uKzEpLGg9ZS5pbnB1dC5jaGFyQ29kZUF0KCsrZS5wb3NpdGlvbil9cmV0dXJuIFIwKGUsbyxuLCExKSxlLnJlc3VsdD8hMDooZS5raW5kPXUsZS5yZXN1bHQ9cCwhMSl9ZnVuY3Rpb24gSUtyKGUsdCl7dmFyIHIsYSxpO2lmKHI9ZS5pbnB1dC5jaGFyQ29kZUF0KGUucG9zaXRpb24pLHIhPT0zOSlyZXR1cm4hMTtmb3IoZS5raW5kPSJzY2FsYXIiLGUucmVzdWx0PSIiLGUucG9zaXRpb24rKyxhPWk9ZS5wb3NpdGlvbjsocj1lLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbikpIT09MDspaWYocj09PTM5KWlmKFIwKGUsYSxlLnBvc2l0aW9uLCEwKSxyPWUuaW5wdXQuY2hhckNvZGVBdCgrK2UucG9zaXRpb24pLHI9PT0zOSlhPWUucG9zaXRpb24sZS5wb3NpdGlvbisrLGk9ZS5wb3NpdGlvbjtlbHNlIHJldHVybiEwO2Vsc2UgeDIocik/KFIwKGUsYSxpLCEwKSxRdWUoZSxkaShlLCExLHQpKSxhPWk9ZS5wb3NpdGlvbik6ZS5wb3NpdGlvbj09PWUubGluZVN0YXJ0JiZtZWUoZSk/QXQoZSwidW5leHBlY3RlZCBlbmQgb2YgdGhlIGRvY3VtZW50IHdpdGhpbiBhIHNpbmdsZSBxdW90ZWQgc2NhbGFyIik6KGUucG9zaXRpb24rKyxpPWUucG9zaXRpb24pO0F0KGUsInVuZXhwZWN0ZWQgZW5kIG9mIHRoZSBzdHJlYW0gd2l0aGluIGEgc2luZ2xlIHF1b3RlZCBzY2FsYXIiKX1mdW5jdGlvbiBOS3IoZSx0KXt2YXIgcixhLGksbyxuLHM7aWYocz1lLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbikscyE9PTM0KXJldHVybiExO2ZvcihlLmtpbmQ9InNjYWxhciIsZS5yZXN1bHQ9IiIsZS5wb3NpdGlvbisrLHI9YT1lLnBvc2l0aW9uOyhzPWUuaW5wdXQuY2hhckNvZGVBdChlLnBvc2l0aW9uKSkhPT0wOyl7aWYocz09PTM0KXJldHVybiBSMChlLHIsZS5wb3NpdGlvbiwhMCksZS5wb3NpdGlvbisrLCEwO2lmKHM9PT05Mil7aWYoUjAoZSxyLGUucG9zaXRpb24sITApLHM9ZS5pbnB1dC5jaGFyQ29kZUF0KCsrZS5wb3NpdGlvbikseDIocykpZGkoZSwhMSx0KTtlbHNlIGlmKHM8MjU2JiZjeHRbc10pZS5yZXN1bHQrPWR4dFtzXSxlLnBvc2l0aW9uKys7ZWxzZSBpZigobj1ES3IocykpPjApe2ZvcihpPW4sbz0wO2k+MDtpLS0pcz1lLmlucHV0LmNoYXJDb2RlQXQoKytlLnBvc2l0aW9uKSwobj1MS3IocykpPj0wP289KG88PDQpK246QXQoZSwiZXhwZWN0ZWQgaGV4YWRlY2ltYWwgY2hhcmFjdGVyIik7ZS5yZXN1bHQrPUVLcihvKSxlLnBvc2l0aW9uKyt9ZWxzZSBBdChlLCJ1bmtub3duIGVzY2FwZSBzZXF1ZW5jZSIpO3I9YT1lLnBvc2l0aW9ufWVsc2UgeDIocyk/KFIwKGUscixhLCEwKSxRdWUoZSxkaShlLCExLHQpKSxyPWE9ZS5wb3NpdGlvbik6ZS5wb3NpdGlvbj09PWUubGluZVN0YXJ0JiZtZWUoZSk/QXQoZSwidW5leHBlY3RlZCBlbmQgb2YgdGhlIGRvY3VtZW50IHdpdGhpbiBhIGRvdWJsZSBxdW90ZWQgc2NhbGFyIik6KGUucG9zaXRpb24rKyxhPWUucG9zaXRpb24pfUF0KGUsInVuZXhwZWN0ZWQgZW5kIG9mIHRoZSBzdHJlYW0gd2l0aGluIGEgZG91YmxlIHF1b3RlZCBzY2FsYXIiKX1mdW5jdGlvbiBGS3IoZSx0KXt2YXIgcj0hMCxhLGk9ZS50YWcsbyxuPWUuYW5jaG9yLHMsYyxkLGYsdSxwPXt9LGgsYix4LGc7aWYoZz1lLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbiksZz09PTkxKWM9OTMsdT0hMSxvPVtdO2Vsc2UgaWYoZz09PTEyMyljPTEyNSx1PSEwLG89e307ZWxzZSByZXR1cm4hMTtmb3IoZS5hbmNob3IhPT1udWxsJiYoZS5hbmNob3JNYXBbZS5hbmNob3JdPW8pLGc9ZS5pbnB1dC5jaGFyQ29kZUF0KCsrZS5wb3NpdGlvbik7ZyE9PTA7KXtpZihkaShlLCEwLHQpLGc9ZS5pbnB1dC5jaGFyQ29kZUF0KGUucG9zaXRpb24pLGc9PT1jKXJldHVybiBlLnBvc2l0aW9uKyssZS50YWc9aSxlLmFuY2hvcj1uLGUua2luZD11PyJtYXBwaW5nIjoic2VxdWVuY2UiLGUucmVzdWx0PW8sITA7cnx8QXQoZSwibWlzc2VkIGNvbW1hIGJldHdlZW4gZmxvdyBjb2xsZWN0aW9uIGVudHJpZXMiKSxiPWg9eD1udWxsLGQ9Zj0hMSxnPT09NjMmJihzPWUuaW5wdXQuY2hhckNvZGVBdChlLnBvc2l0aW9uKzEpLExvKHMpJiYoZD1mPSEwLGUucG9zaXRpb24rKyxkaShlLCEwLHQpKSksYT1lLmxpbmUsdW0oZSx0LGZlZSwhMSwhMCksYj1lLnRhZyxoPWUucmVzdWx0LGRpKGUsITAsdCksZz1lLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbiksKGZ8fGUubGluZT09PWEpJiZnPT09NTgmJihkPSEwLGc9ZS5pbnB1dC5jaGFyQ29kZUF0KCsrZS5wb3NpdGlvbiksZGkoZSwhMCx0KSx1bShlLHQsZmVlLCExLCEwKSx4PWUucmVzdWx0KSx1P2RtKGUsbyxwLGIsaCx4KTpkP28ucHVzaChkbShlLG51bGwscCxiLGgseCkpOm8ucHVzaChoKSxkaShlLCEwLHQpLGc9ZS5pbnB1dC5jaGFyQ29kZUF0KGUucG9zaXRpb24pLGc9PT00ND8ocj0hMCxnPWUuaW5wdXQuY2hhckNvZGVBdCgrK2UucG9zaXRpb24pKTpyPSExfUF0KGUsInVuZXhwZWN0ZWQgZW5kIG9mIHRoZSBzdHJlYW0gd2l0aGluIGEgZmxvdyBjb2xsZWN0aW9uIil9ZnVuY3Rpb24gT0tyKGUsdCl7dmFyIHIsYSxpPVp1ZSxvPSExLG49ITEscz10LGM9MCxkPSExLGYsdTtpZih1PWUuaW5wdXQuY2hhckNvZGVBdChlLnBvc2l0aW9uKSx1PT09MTI0KWE9ITE7ZWxzZSBpZih1PT09NjIpYT0hMDtlbHNlIHJldHVybiExO2ZvcihlLmtpbmQ9InNjYWxhciIsZS5yZXN1bHQ9IiI7dSE9PTA7KWlmKHU9ZS5pbnB1dC5jaGFyQ29kZUF0KCsrZS5wb3NpdGlvbiksdT09PTQzfHx1PT09NDUpWnVlPT09aT9pPXU9PT00Mz9heHQ6ektyOkF0KGUsInJlcGVhdCBvZiBhIGNob21waW5nIG1vZGUgaWRlbnRpZmllciIpO2Vsc2UgaWYoKGY9QUtyKHUpKT49MClmPT09MD9BdChlLCJiYWQgZXhwbGljaXQgaW5kZW50YXRpb24gd2lkdGggb2YgYSBibG9jayBzY2FsYXI7IGl0IGNhbm5vdCBiZSBsZXNzIHRoYW4gb25lIik6bj9BdChlLCJyZXBlYXQgb2YgYW4gaW5kZW50YXRpb24gd2lkdGggaWRlbnRpZmllciIpOihzPXQrZi0xLG49ITApO2Vsc2UgYnJlYWs7aWYoYmQodSkpe2RvIHU9ZS5pbnB1dC5jaGFyQ29kZUF0KCsrZS5wb3NpdGlvbik7d2hpbGUoYmQodSkpO2lmKHU9PT0zNSlkbyB1PWUuaW5wdXQuY2hhckNvZGVBdCgrK2UucG9zaXRpb24pO3doaWxlKCF4Mih1KSYmdSE9PTApfWZvcig7dSE9PTA7KXtmb3IoWHVlKGUpLGUubGluZUluZGVudD0wLHU9ZS5pbnB1dC5jaGFyQ29kZUF0KGUucG9zaXRpb24pOyghbnx8ZS5saW5lSW5kZW50PHMpJiZ1PT09MzI7KWUubGluZUluZGVudCsrLHU9ZS5pbnB1dC5jaGFyQ29kZUF0KCsrZS5wb3NpdGlvbik7aWYoIW4mJmUubGluZUluZGVudD5zJiYocz1lLmxpbmVJbmRlbnQpLHgyKHUpKXtjKys7Y29udGludWV9aWYoZS5saW5lSW5kZW50PHMpe2k9PT1heHQ/ZS5yZXN1bHQrPUJsLnJlcGVhdChgCmAsbz8xK2M6Yyk6aT09PVp1ZSYmbyYmKGUucmVzdWx0Kz1gCmApO2JyZWFrfWZvcihhP2JkKHUpPyhkPSEwLGUucmVzdWx0Kz1CbC5yZXBlYXQoYApgLG8/MStjOmMpKTpkPyhkPSExLGUucmVzdWx0Kz1CbC5yZXBlYXQoYApgLGMrMSkpOmM9PT0wP28mJihlLnJlc3VsdCs9IiAiKTplLnJlc3VsdCs9QmwucmVwZWF0KGAKYCxjKTplLnJlc3VsdCs9QmwucmVwZWF0KGAKYCxvPzErYzpjKSxvPSEwLG49ITAsYz0wLHI9ZS5wb3NpdGlvbjsheDIodSkmJnUhPT0wOyl1PWUuaW5wdXQuY2hhckNvZGVBdCgrK2UucG9zaXRpb24pO1IwKGUscixlLnBvc2l0aW9uLCExKX1yZXR1cm4hMH1mdW5jdGlvbiBoeHQoZSx0KXt2YXIgcixhPWUudGFnLGk9ZS5hbmNob3Isbz1bXSxuLHM9ITEsYztmb3IoZS5hbmNob3IhPT1udWxsJiYoZS5hbmNob3JNYXBbZS5hbmNob3JdPW8pLGM9ZS5pbnB1dC5jaGFyQ29kZUF0KGUucG9zaXRpb24pO2MhPT0wJiYhKGMhPT00NXx8KG49ZS5pbnB1dC5jaGFyQ29kZUF0KGUucG9zaXRpb24rMSksIUxvKG4pKSk7KXtpZihzPSEwLGUucG9zaXRpb24rKyxkaShlLCEwLC0xKSYmZS5saW5lSW5kZW50PD10KXtvLnB1c2gobnVsbCksYz1lLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbik7Y29udGludWV9aWYocj1lLmxpbmUsdW0oZSx0LHJ4dCwhMSwhMCksby5wdXNoKGUucmVzdWx0KSxkaShlLCEwLC0xKSxjPWUuaW5wdXQuY2hhckNvZGVBdChlLnBvc2l0aW9uKSwoZS5saW5lPT09cnx8ZS5saW5lSW5kZW50PnQpJiZjIT09MClBdChlLCJiYWQgaW5kZW50YXRpb24gb2YgYSBzZXF1ZW5jZSBlbnRyeSIpO2Vsc2UgaWYoZS5saW5lSW5kZW50PHQpYnJlYWt9cmV0dXJuIHM/KGUudGFnPWEsZS5hbmNob3I9aSxlLmtpbmQ9InNlcXVlbmNlIixlLnJlc3VsdD1vLCEwKTohMX1mdW5jdGlvbiBSS3IoZSx0LHIpe3ZhciBhLGksbyxuLHM9ZS50YWcsYz1lLmFuY2hvcixkPXt9LGY9e30sdT1udWxsLHA9bnVsbCxoPW51bGwsYj0hMSx4PSExLGc7Zm9yKGUuYW5jaG9yIT09bnVsbCYmKGUuYW5jaG9yTWFwW2UuYW5jaG9yXT1kKSxnPWUuaW5wdXQuY2hhckNvZGVBdChlLnBvc2l0aW9uKTtnIT09MDspe2lmKGE9ZS5pbnB1dC5jaGFyQ29kZUF0KGUucG9zaXRpb24rMSksbz1lLmxpbmUsbj1lLnBvc2l0aW9uLChnPT09NjN8fGc9PT01OCkmJkxvKGEpKWc9PT02Mz8oYiYmKGRtKGUsZCxmLHUscCxudWxsKSx1PXA9aD1udWxsKSx4PSEwLGI9ITAsaT0hMCk6Yj8oYj0hMSxpPSEwKTpBdChlLCJpbmNvbXBsZXRlIGV4cGxpY2l0IG1hcHBpbmcgcGFpcjsgYSBrZXkgbm9kZSBpcyBtaXNzZWQ7IG9yIGZvbGxvd2VkIGJ5IGEgbm9uLXRhYnVsYXRlZCBlbXB0eSBsaW5lIiksZS5wb3NpdGlvbis9MSxnPWE7ZWxzZSBpZih1bShlLHIsdHh0LCExLCEwKSlpZihlLmxpbmU9PT1vKXtmb3IoZz1lLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbik7YmQoZyk7KWc9ZS5pbnB1dC5jaGFyQ29kZUF0KCsrZS5wb3NpdGlvbik7aWYoZz09PTU4KWc9ZS5pbnB1dC5jaGFyQ29kZUF0KCsrZS5wb3NpdGlvbiksTG8oZyl8fEF0KGUsImEgd2hpdGVzcGFjZSBjaGFyYWN0ZXIgaXMgZXhwZWN0ZWQgYWZ0ZXIgdGhlIGtleS12YWx1ZSBzZXBhcmF0b3Igd2l0aGluIGEgYmxvY2sgbWFwcGluZyIpLGImJihkbShlLGQsZix1LHAsbnVsbCksdT1wPWg9bnVsbCkseD0hMCxiPSExLGk9ITEsdT1lLnRhZyxwPWUucmVzdWx0O2Vsc2UgaWYoeClBdChlLCJjYW4gbm90IHJlYWQgYW4gaW1wbGljaXQgbWFwcGluZyBwYWlyOyBhIGNvbG9uIGlzIG1pc3NlZCIpO2Vsc2UgcmV0dXJuIGUudGFnPXMsZS5hbmNob3I9YywhMH1lbHNlIGlmKHgpQXQoZSwiY2FuIG5vdCByZWFkIGEgYmxvY2sgbWFwcGluZyBlbnRyeTsgYSBtdWx0aWxpbmUga2V5IG1heSBub3QgYmUgYW4gaW1wbGljaXQga2V5Iik7ZWxzZSByZXR1cm4gZS50YWc9cyxlLmFuY2hvcj1jLCEwO2Vsc2UgYnJlYWs7aWYoKGUubGluZT09PW98fGUubGluZUluZGVudD50KSYmKHVtKGUsdCxwZWUsITAsaSkmJihiP3A9ZS5yZXN1bHQ6aD1lLnJlc3VsdCksYnx8KGRtKGUsZCxmLHUscCxoLG8sbiksdT1wPWg9bnVsbCksZGkoZSwhMCwtMSksZz1lLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbikpLGUubGluZUluZGVudD50JiZnIT09MClBdChlLCJiYWQgaW5kZW50YXRpb24gb2YgYSBtYXBwaW5nIGVudHJ5Iik7ZWxzZSBpZihlLmxpbmVJbmRlbnQ8dClicmVha31yZXR1cm4gYiYmZG0oZSxkLGYsdSxwLG51bGwpLHgmJihlLnRhZz1zLGUuYW5jaG9yPWMsZS5raW5kPSJtYXBwaW5nIixlLnJlc3VsdD1kKSx4fWZ1bmN0aW9uIEJLcihlKXt2YXIgdCxyPSExLGE9ITEsaSxvLG47aWYobj1lLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbiksbiE9PTMzKXJldHVybiExO2lmKGUudGFnIT09bnVsbCYmQXQoZSwiZHVwbGljYXRpb24gb2YgYSB0YWcgcHJvcGVydHkiKSxuPWUuaW5wdXQuY2hhckNvZGVBdCgrK2UucG9zaXRpb24pLG49PT02MD8ocj0hMCxuPWUuaW5wdXQuY2hhckNvZGVBdCgrK2UucG9zaXRpb24pKTpuPT09MzM/KGE9ITAsaT0iISEiLG49ZS5pbnB1dC5jaGFyQ29kZUF0KCsrZS5wb3NpdGlvbikpOmk9IiEiLHQ9ZS5wb3NpdGlvbixyKXtkbyBuPWUuaW5wdXQuY2hhckNvZGVBdCgrK2UucG9zaXRpb24pO3doaWxlKG4hPT0wJiZuIT09NjIpO2UucG9zaXRpb248ZS5sZW5ndGg/KG89ZS5pbnB1dC5zbGljZSh0LGUucG9zaXRpb24pLG49ZS5pbnB1dC5jaGFyQ29kZUF0KCsrZS5wb3NpdGlvbikpOkF0KGUsInVuZXhwZWN0ZWQgZW5kIG9mIHRoZSBzdHJlYW0gd2l0aGluIGEgdmVyYmF0aW0gdGFnIil9ZWxzZXtmb3IoO24hPT0wJiYhTG8obik7KW49PT0zMyYmKGE/QXQoZSwidGFnIHN1ZmZpeCBjYW5ub3QgY29udGFpbiBleGNsYW1hdGlvbiBtYXJrcyIpOihpPWUuaW5wdXQuc2xpY2UodC0xLGUucG9zaXRpb24rMSksaXh0LnRlc3QoaSl8fEF0KGUsIm5hbWVkIHRhZyBoYW5kbGUgY2Fubm90IGNvbnRhaW4gc3VjaCBjaGFyYWN0ZXJzIiksYT0hMCx0PWUucG9zaXRpb24rMSkpLG49ZS5pbnB1dC5jaGFyQ29kZUF0KCsrZS5wb3NpdGlvbik7bz1lLmlucHV0LnNsaWNlKHQsZS5wb3NpdGlvbiksVEtyLnRlc3QobykmJkF0KGUsInRhZyBzdWZmaXggY2Fubm90IGNvbnRhaW4gZmxvdyBpbmRpY2F0b3IgY2hhcmFjdGVycyIpfXJldHVybiBvJiYhb3h0LnRlc3QobykmJkF0KGUsInRhZyBuYW1lIGNhbm5vdCBjb250YWluIHN1Y2ggY2hhcmFjdGVyczogIitvKSxyP2UudGFnPW86TzAuY2FsbChlLnRhZ01hcCxpKT9lLnRhZz1lLnRhZ01hcFtpXStvOmk9PT0iISI/ZS50YWc9IiEiK286aT09PSIhISI/ZS50YWc9InRhZzp5YW1sLm9yZywyMDAyOiIrbzpBdChlLCd1bmRlY2xhcmVkIHRhZyBoYW5kbGUgIicraSsnIicpLCEwfWZ1bmN0aW9uIEhLcihlKXt2YXIgdCxyO2lmKHI9ZS5pbnB1dC5jaGFyQ29kZUF0KGUucG9zaXRpb24pLHIhPT0zOClyZXR1cm4hMTtmb3IoZS5hbmNob3IhPT1udWxsJiZBdChlLCJkdXBsaWNhdGlvbiBvZiBhbiBhbmNob3IgcHJvcGVydHkiKSxyPWUuaW5wdXQuY2hhckNvZGVBdCgrK2UucG9zaXRpb24pLHQ9ZS5wb3NpdGlvbjtyIT09MCYmIUxvKHIpJiYhY20ocik7KXI9ZS5pbnB1dC5jaGFyQ29kZUF0KCsrZS5wb3NpdGlvbik7cmV0dXJuIGUucG9zaXRpb249PT10JiZBdChlLCJuYW1lIG9mIGFuIGFuY2hvciBub2RlIG11c3QgY29udGFpbiBhdCBsZWFzdCBvbmUgY2hhcmFjdGVyIiksZS5hbmNob3I9ZS5pbnB1dC5zbGljZSh0LGUucG9zaXRpb24pLCEwfWZ1bmN0aW9uIHFLcihlKXt2YXIgdCxyLGE7aWYoYT1lLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbiksYSE9PTQyKXJldHVybiExO2ZvcihhPWUuaW5wdXQuY2hhckNvZGVBdCgrK2UucG9zaXRpb24pLHQ9ZS5wb3NpdGlvbjthIT09MCYmIUxvKGEpJiYhY20oYSk7KWE9ZS5pbnB1dC5jaGFyQ29kZUF0KCsrZS5wb3NpdGlvbik7cmV0dXJuIGUucG9zaXRpb249PT10JiZBdChlLCJuYW1lIG9mIGFuIGFsaWFzIG5vZGUgbXVzdCBjb250YWluIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIiKSxyPWUuaW5wdXQuc2xpY2UodCxlLnBvc2l0aW9uKSxPMC5jYWxsKGUuYW5jaG9yTWFwLHIpfHxBdChlLCd1bmlkZW50aWZpZWQgYWxpYXMgIicrcisnIicpLGUucmVzdWx0PWUuYW5jaG9yTWFwW3JdLGRpKGUsITAsLTEpLCEwfWZ1bmN0aW9uIHVtKGUsdCxyLGEsaSl7dmFyIG8sbixzLGM9MSxkPSExLGY9ITEsdSxwLGgsYix4O2lmKGUubGlzdGVuZXIhPT1udWxsJiZlLmxpc3RlbmVyKCJvcGVuIixlKSxlLnRhZz1udWxsLGUuYW5jaG9yPW51bGwsZS5raW5kPW51bGwsZS5yZXN1bHQ9bnVsbCxvPW49cz1wZWU9PT1yfHxyeHQ9PT1yLGEmJmRpKGUsITAsLTEpJiYoZD0hMCxlLmxpbmVJbmRlbnQ+dD9jPTE6ZS5saW5lSW5kZW50PT09dD9jPTA6ZS5saW5lSW5kZW50PHQmJihjPS0xKSksYz09PTEpZm9yKDtCS3IoZSl8fEhLcihlKTspZGkoZSwhMCwtMSk/KGQ9ITAscz1vLGUubGluZUluZGVudD50P2M9MTplLmxpbmVJbmRlbnQ9PT10P2M9MDplLmxpbmVJbmRlbnQ8dCYmKGM9LTEpKTpzPSExO2lmKHMmJihzPWR8fGkpLChjPT09MXx8cGVlPT09cikmJihmZWU9PT1yfHx0eHQ9PT1yP2I9dDpiPXQrMSx4PWUucG9zaXRpb24tZS5saW5lU3RhcnQsYz09PTE/cyYmKGh4dChlLHgpfHxSS3IoZSx4LGIpKXx8RktyKGUsYik/Zj0hMDoobiYmT0tyKGUsYil8fElLcihlLGIpfHxOS3IoZSxiKT9mPSEwOnFLcihlKT8oZj0hMCwoZS50YWchPT1udWxsfHxlLmFuY2hvciE9PW51bGwpJiZBdChlLCJhbGlhcyBub2RlIHNob3VsZCBub3QgaGF2ZSBhbnkgcHJvcGVydGllcyIpKTpQS3IoZSxiLGZlZT09PXIpJiYoZj0hMCxlLnRhZz09PW51bGwmJihlLnRhZz0iPyIpKSxlLmFuY2hvciE9PW51bGwmJihlLmFuY2hvck1hcFtlLmFuY2hvcl09ZS5yZXN1bHQpKTpjPT09MCYmKGY9cyYmaHh0KGUseCkpKSxlLnRhZyE9PW51bGwmJmUudGFnIT09IiEiKWlmKGUudGFnPT09Ij8iKXtmb3IoZS5yZXN1bHQhPT1udWxsJiZlLmtpbmQhPT0ic2NhbGFyIiYmQXQoZSwndW5hY2NlcHRhYmxlIG5vZGUga2luZCBmb3IgITw/PiB0YWc7IGl0IHNob3VsZCBiZSAic2NhbGFyIiwgbm90ICInK2Uua2luZCsnIicpLHU9MCxwPWUuaW1wbGljaXRUeXBlcy5sZW5ndGg7dTxwO3UrPTEpaWYoaD1lLmltcGxpY2l0VHlwZXNbdV0saC5yZXNvbHZlKGUucmVzdWx0KSl7ZS5yZXN1bHQ9aC5jb25zdHJ1Y3QoZS5yZXN1bHQpLGUudGFnPWgudGFnLGUuYW5jaG9yIT09bnVsbCYmKGUuYW5jaG9yTWFwW2UuYW5jaG9yXT1lLnJlc3VsdCk7YnJlYWt9fWVsc2UgTzAuY2FsbChlLnR5cGVNYXBbZS5raW5kfHwiZmFsbGJhY2siXSxlLnRhZyk/KGg9ZS50eXBlTWFwW2Uua2luZHx8ImZhbGxiYWNrIl1bZS50YWddLGUucmVzdWx0IT09bnVsbCYmaC5raW5kIT09ZS5raW5kJiZBdChlLCJ1bmFjY2VwdGFibGUgbm9kZSBraW5kIGZvciAhPCIrZS50YWcrJz4gdGFnOyBpdCBzaG91bGQgYmUgIicraC5raW5kKyciLCBub3QgIicrZS5raW5kKyciJyksaC5yZXNvbHZlKGUucmVzdWx0KT8oZS5yZXN1bHQ9aC5jb25zdHJ1Y3QoZS5yZXN1bHQpLGUuYW5jaG9yIT09bnVsbCYmKGUuYW5jaG9yTWFwW2UuYW5jaG9yXT1lLnJlc3VsdCkpOkF0KGUsImNhbm5vdCByZXNvbHZlIGEgbm9kZSB3aXRoICE8IitlLnRhZysiPiBleHBsaWNpdCB0YWciKSk6QXQoZSwidW5rbm93biB0YWcgITwiK2UudGFnKyI+Iik7cmV0dXJuIGUubGlzdGVuZXIhPT1udWxsJiZlLmxpc3RlbmVyKCJjbG9zZSIsZSksZS50YWchPT1udWxsfHxlLmFuY2hvciE9PW51bGx8fGZ9ZnVuY3Rpb24gaktyKGUpe3ZhciB0PWUucG9zaXRpb24scixhLGksbz0hMSxuO2ZvcihlLnZlcnNpb249bnVsbCxlLmNoZWNrTGluZUJyZWFrcz1lLmxlZ2FjeSxlLnRhZ01hcD17fSxlLmFuY2hvck1hcD17fTsobj1lLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbikpIT09MCYmKGRpKGUsITAsLTEpLG49ZS5pbnB1dC5jaGFyQ29kZUF0KGUucG9zaXRpb24pLCEoZS5saW5lSW5kZW50PjB8fG4hPT0zNykpOyl7Zm9yKG89ITAsbj1lLmlucHV0LmNoYXJDb2RlQXQoKytlLnBvc2l0aW9uKSxyPWUucG9zaXRpb247biE9PTAmJiFMbyhuKTspbj1lLmlucHV0LmNoYXJDb2RlQXQoKytlLnBvc2l0aW9uKTtmb3IoYT1lLmlucHV0LnNsaWNlKHIsZS5wb3NpdGlvbiksaT1bXSxhLmxlbmd0aDwxJiZBdChlLCJkaXJlY3RpdmUgbmFtZSBtdXN0IG5vdCBiZSBsZXNzIHRoYW4gb25lIGNoYXJhY3RlciBpbiBsZW5ndGgiKTtuIT09MDspe2Zvcig7YmQobik7KW49ZS5pbnB1dC5jaGFyQ29kZUF0KCsrZS5wb3NpdGlvbik7aWYobj09PTM1KXtkbyBuPWUuaW5wdXQuY2hhckNvZGVBdCgrK2UucG9zaXRpb24pO3doaWxlKG4hPT0wJiYheDIobikpO2JyZWFrfWlmKHgyKG4pKWJyZWFrO2ZvcihyPWUucG9zaXRpb247biE9PTAmJiFMbyhuKTspbj1lLmlucHV0LmNoYXJDb2RlQXQoKytlLnBvc2l0aW9uKTtpLnB1c2goZS5pbnB1dC5zbGljZShyLGUucG9zaXRpb24pKX1uIT09MCYmWHVlKGUpLE8wLmNhbGwoZnh0LGEpP2Z4dFthXShlLGEsaSk6aGVlKGUsJ3Vua25vd24gZG9jdW1lbnQgZGlyZWN0aXZlICInK2ErJyInKX1pZihkaShlLCEwLC0xKSxlLmxpbmVJbmRlbnQ9PT0wJiZlLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbik9PT00NSYmZS5pbnB1dC5jaGFyQ29kZUF0KGUucG9zaXRpb24rMSk9PT00NSYmZS5pbnB1dC5jaGFyQ29kZUF0KGUucG9zaXRpb24rMik9PT00NT8oZS5wb3NpdGlvbis9MyxkaShlLCEwLC0xKSk6byYmQXQoZSwiZGlyZWN0aXZlcyBlbmQgbWFyayBpcyBleHBlY3RlZCIpLHVtKGUsZS5saW5lSW5kZW50LTEscGVlLCExLCEwKSxkaShlLCEwLC0xKSxlLmNoZWNrTGluZUJyZWFrcyYmX0tyLnRlc3QoZS5pbnB1dC5zbGljZSh0LGUucG9zaXRpb24pKSYmaGVlKGUsIm5vbi1BU0NJSSBsaW5lIGJyZWFrcyBhcmUgaW50ZXJwcmV0ZWQgYXMgY29udGVudCIpLGUuZG9jdW1lbnRzLnB1c2goZS5yZXN1bHQpLGUucG9zaXRpb249PT1lLmxpbmVTdGFydCYmbWVlKGUpKXtlLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbik9PT00NiYmKGUucG9zaXRpb24rPTMsZGkoZSwhMCwtMSkpO3JldHVybn1pZihlLnBvc2l0aW9uPGUubGVuZ3RoLTEpQXQoZSwiZW5kIG9mIHRoZSBzdHJlYW0gb3IgYSBkb2N1bWVudCBzZXBhcmF0b3IgaXMgZXhwZWN0ZWQiKTtlbHNlIHJldHVybn1mdW5jdGlvbiBteHQoZSx0KXtlPVN0cmluZyhlKSx0PXR8fHt9LGUubGVuZ3RoIT09MCYmKGUuY2hhckNvZGVBdChlLmxlbmd0aC0xKSE9PTEwJiZlLmNoYXJDb2RlQXQoZS5sZW5ndGgtMSkhPT0xMyYmKGUrPWAKYCksZS5jaGFyQ29kZUF0KDApPT09NjUyNzkmJihlPWUuc2xpY2UoMSkpKTt2YXIgcj1uZXcgJEtyKGUsdCksYT1lLmluZGV4T2YoIlwwIik7Zm9yKGEhPT0tMSYmKHIucG9zaXRpb249YSxBdChyLCJudWxsIGJ5dGUgaXMgbm90IGFsbG93ZWQgaW4gaW5wdXQiKSksci5pbnB1dCs9IlwwIjtyLmlucHV0LmNoYXJDb2RlQXQoci5wb3NpdGlvbik9PT0zMjspci5saW5lSW5kZW50Kz0xLHIucG9zaXRpb24rPTE7Zm9yKDtyLnBvc2l0aW9uPHIubGVuZ3RoLTE7KWpLcihyKTtyZXR1cm4gci5kb2N1bWVudHN9ZnVuY3Rpb24gZ3h0KGUsdCxyKXt0IT09bnVsbCYmdHlwZW9mIHQ9PSJvYmplY3QiJiZ0eXBlb2Ygcj4idSImJihyPXQsdD1udWxsKTt2YXIgYT1teHQoZSxyKTtpZih0eXBlb2YgdCE9ImZ1bmN0aW9uIilyZXR1cm4gYTtmb3IodmFyIGk9MCxvPWEubGVuZ3RoO2k8bztpKz0xKXQoYVtpXSl9ZnVuY3Rpb24geHh0KGUsdCl7dmFyIHI9bXh0KGUsdCk7aWYoci5sZW5ndGghPT0wKXtpZihyLmxlbmd0aD09PTEpcmV0dXJuIHJbMF07dGhyb3cgbmV3IEpndCgiZXhwZWN0ZWQgYSBzaW5nbGUgZG9jdW1lbnQgaW4gdGhlIHN0cmVhbSwgYnV0IGZvdW5kIG1vcmUiKX19ZnVuY3Rpb24gVktyKGUsdCxyKXtyZXR1cm4gdHlwZW9mIHQ9PSJvYmplY3QiJiZ0IT09bnVsbCYmdHlwZW9mIHI+InUiJiYocj10LHQ9bnVsbCksZ3h0KGUsdCxCbC5leHRlbmQoe3NjaGVtYTpleHR9LHIpKX1mdW5jdGlvbiBVS3IoZSx0KXtyZXR1cm4geHh0KGUsQmwuZXh0ZW5kKHtzY2hlbWE6ZXh0fSx0KSl9WXguZXhwb3J0cy5sb2FkQWxsPWd4dCxZeC5leHBvcnRzLmxvYWQ9eHh0LFl4LmV4cG9ydHMuc2FmZUxvYWRBbGw9VktyLFl4LmV4cG9ydHMuc2FmZUxvYWQ9VUtyO3ZhciB2ZH0pO3ZhciBIeHQ9WGUoKGMwaSx0ZmUpPT57InVzZSBzdHJpY3QiO3ZhciBaeD1tZCgpLFh4PW5tKCksV0tyPUd4KCksR0tyPWxtKCksdnh0PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcseXh0PU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHksWUtyPTksUXg9MTAsWktyPTEzLFhLcj0zMixRS3I9MzMsS0tyPTM0LHd4dD0zNSxKS3I9MzcsZUpyPTM4LHRKcj0zOSxySnI9NDIsTXh0PTQ0LGFKcj00NSxreHQ9NTgsaUpyPTYxLG9Kcj02MixuSnI9NjMsc0pyPTY0LFN4dD05MSx6eHQ9OTMsbEpyPTk2LEN4dD0xMjMsY0pyPTEyNCxfeHQ9MTI1LEUxPXt9O0UxWzBdPSJcXDAiLEUxWzddPSJcXGEiLEUxWzhdPSJcXGIiLEUxWzldPSJcXHQiLEUxWzEwXT0iXFxuIixFMVsxMV09IlxcdiIsRTFbMTJdPSJcXGYiLEUxWzEzXT0iXFxyIixFMVsyN109IlxcZSIsRTFbMzRdPSdcXCInLEUxWzkyXT0iXFxcXCIsRTFbMTMzXT0iXFxOIixFMVsxNjBdPSJcXF8iLEUxWzgyMzJdPSJcXEwiLEUxWzgyMzNdPSJcXFAiO3ZhciBkSnI9WyJ5IiwiWSIsInllcyIsIlllcyIsIllFUyIsIm9uIiwiT24iLCJPTiIsIm4iLCJOIiwibm8iLCJObyIsIk5PIiwib2ZmIiwiT2ZmIiwiT0ZGIl07ZnVuY3Rpb24gdUpyKGUsdCl7dmFyIHIsYSxpLG8sbixzLGM7aWYodD09PW51bGwpcmV0dXJue307Zm9yKHI9e30sYT1PYmplY3Qua2V5cyh0KSxpPTAsbz1hLmxlbmd0aDtpPG87aSs9MSluPWFbaV0scz1TdHJpbmcodFtuXSksbi5zbGljZSgwLDIpPT09IiEhIiYmKG49InRhZzp5YW1sLm9yZywyMDAyOiIrbi5zbGljZSgyKSksYz1lLmNvbXBpbGVkVHlwZU1hcC5mYWxsYmFja1tuXSxjJiZ5eHQuY2FsbChjLnN0eWxlQWxpYXNlcyxzKSYmKHM9Yy5zdHlsZUFsaWFzZXNbc10pLHJbbl09cztyZXR1cm4gcn1mdW5jdGlvbiBUeHQoZSl7dmFyIHQscixhO2lmKHQ9ZS50b1N0cmluZygxNikudG9VcHBlckNhc2UoKSxlPD0yNTUpcj0ieCIsYT0yO2Vsc2UgaWYoZTw9NjU1MzUpcj0idSIsYT00O2Vsc2UgaWYoZTw9NDI5NDk2NzI5NSlyPSJVIixhPTg7ZWxzZSB0aHJvdyBuZXcgWHgoImNvZGUgcG9pbnQgd2l0aGluIGEgc3RyaW5nIG1heSBub3QgYmUgZ3JlYXRlciB0aGFuIDB4RkZGRkZGRkYiKTtyZXR1cm4iXFwiK3IrWngucmVwZWF0KCIwIixhLXQubGVuZ3RoKSt0fWZ1bmN0aW9uIGZKcihlKXt0aGlzLnNjaGVtYT1lLnNjaGVtYXx8V0tyLHRoaXMuaW5kZW50PU1hdGgubWF4KDEsZS5pbmRlbnR8fDIpLHRoaXMubm9BcnJheUluZGVudD1lLm5vQXJyYXlJbmRlbnR8fCExLHRoaXMuc2tpcEludmFsaWQ9ZS5za2lwSW52YWxpZHx8ITEsdGhpcy5mbG93TGV2ZWw9WnguaXNOb3RoaW5nKGUuZmxvd0xldmVsKT8tMTplLmZsb3dMZXZlbCx0aGlzLnN0eWxlTWFwPXVKcih0aGlzLnNjaGVtYSxlLnN0eWxlc3x8bnVsbCksdGhpcy5zb3J0S2V5cz1lLnNvcnRLZXlzfHwhMSx0aGlzLmxpbmVXaWR0aD1lLmxpbmVXaWR0aHx8ODAsdGhpcy5ub1JlZnM9ZS5ub1JlZnN8fCExLHRoaXMubm9Db21wYXRNb2RlPWUubm9Db21wYXRNb2RlfHwhMSx0aGlzLmNvbmRlbnNlRmxvdz1lLmNvbmRlbnNlRmxvd3x8ITEsdGhpcy5pbXBsaWNpdFR5cGVzPXRoaXMuc2NoZW1hLmNvbXBpbGVkSW1wbGljaXQsdGhpcy5leHBsaWNpdFR5cGVzPXRoaXMuc2NoZW1hLmNvbXBpbGVkRXhwbGljaXQsdGhpcy50YWc9bnVsbCx0aGlzLnJlc3VsdD0iIix0aGlzLmR1cGxpY2F0ZXM9W10sdGhpcy51c2VkRHVwbGljYXRlcz1udWxsfWZ1bmN0aW9uIEx4dChlLHQpe2Zvcih2YXIgcj1aeC5yZXBlYXQoIiAiLHQpLGE9MCxpPS0xLG89IiIsbixzPWUubGVuZ3RoO2E8czspaT1lLmluZGV4T2YoYApgLGEpLGk9PT0tMT8obj1lLnNsaWNlKGEpLGE9cyk6KG49ZS5zbGljZShhLGkrMSksYT1pKzEpLG4ubGVuZ3RoJiZuIT09YApgJiYobys9ciksbys9bjtyZXR1cm4gb31mdW5jdGlvbiBLdWUoZSx0KXtyZXR1cm5gCmArWngucmVwZWF0KCIgIixlLmluZGVudCp0KX1mdW5jdGlvbiBwSnIoZSx0KXt2YXIgcixhLGk7Zm9yKHI9MCxhPWUuaW1wbGljaXRUeXBlcy5sZW5ndGg7cjxhO3IrPTEpaWYoaT1lLmltcGxpY2l0VHlwZXNbcl0saS5yZXNvbHZlKHQpKXJldHVybiEwO3JldHVybiExfWZ1bmN0aW9uIEp1ZShlKXtyZXR1cm4gZT09PVhLcnx8ZT09PVlLcn1mdW5jdGlvbiBmbShlKXtyZXR1cm4gMzI8PWUmJmU8PTEyNnx8MTYxPD1lJiZlPD01NTI5NSYmZSE9PTgyMzImJmUhPT04MjMzfHw1NzM0NDw9ZSYmZTw9NjU1MzMmJmUhPT02NTI3OXx8NjU1MzY8PWUmJmU8PTExMTQxMTF9ZnVuY3Rpb24gaEpyKGUpe3JldHVybiBmbShlKSYmIUp1ZShlKSYmZSE9PTY1Mjc5JiZlIT09WktyJiZlIT09UXh9ZnVuY3Rpb24gRHh0KGUsdCl7cmV0dXJuIGZtKGUpJiZlIT09NjUyNzkmJmUhPT1NeHQmJmUhPT1TeHQmJmUhPT16eHQmJmUhPT1DeHQmJmUhPT1feHQmJmUhPT1reHQmJihlIT09d3h0fHx0JiZoSnIodCkpfWZ1bmN0aW9uIG1KcihlKXtyZXR1cm4gZm0oZSkmJmUhPT02NTI3OSYmIUp1ZShlKSYmZSE9PWFKciYmZSE9PW5KciYmZSE9PWt4dCYmZSE9PU14dCYmZSE9PVN4dCYmZSE9PXp4dCYmZSE9PUN4dCYmZSE9PV94dCYmZSE9PXd4dCYmZSE9PWVKciYmZSE9PXJKciYmZSE9PVFLciYmZSE9PWNKciYmZSE9PWlKciYmZSE9PW9KciYmZSE9PXRKciYmZSE9PUtLciYmZSE9PUpLciYmZSE9PXNKciYmZSE9PWxKcn1mdW5jdGlvbiBBeHQoZSl7dmFyIHQ9L15cbiogLztyZXR1cm4gdC50ZXN0KGUpfXZhciBFeHQ9MSwkeHQ9MixQeHQ9MyxJeHQ9NCxnZWU9NTtmdW5jdGlvbiBnSnIoZSx0LHIsYSxpKXt2YXIgbyxuLHMsYz0hMSxkPSExLGY9YSE9PS0xLHU9LTEscD1tSnIoZS5jaGFyQ29kZUF0KDApKSYmIUp1ZShlLmNoYXJDb2RlQXQoZS5sZW5ndGgtMSkpO2lmKHQpZm9yKG89MDtvPGUubGVuZ3RoO28rKyl7aWYobj1lLmNoYXJDb2RlQXQobyksIWZtKG4pKXJldHVybiBnZWU7cz1vPjA/ZS5jaGFyQ29kZUF0KG8tMSk6bnVsbCxwPXAmJkR4dChuLHMpfWVsc2V7Zm9yKG89MDtvPGUubGVuZ3RoO28rKyl7aWYobj1lLmNoYXJDb2RlQXQobyksbj09PVF4KWM9ITAsZiYmKGQ9ZHx8by11LTE+YSYmZVt1KzFdIT09IiAiLHU9byk7ZWxzZSBpZighZm0obikpcmV0dXJuIGdlZTtzPW8+MD9lLmNoYXJDb2RlQXQoby0xKTpudWxsLHA9cCYmRHh0KG4scyl9ZD1kfHxmJiZvLXUtMT5hJiZlW3UrMV0hPT0iICJ9cmV0dXJuIWMmJiFkP3AmJiFpKGUpP0V4dDokeHQ6cj45JiZBeHQoZSk/Z2VlOmQ/SXh0OlB4dH1mdW5jdGlvbiB4SnIoZSx0LHIsYSl7ZS5kdW1wPShmdW5jdGlvbigpe2lmKHQubGVuZ3RoPT09MClyZXR1cm4iJyciO2lmKCFlLm5vQ29tcGF0TW9kZSYmZEpyLmluZGV4T2YodCkhPT0tMSlyZXR1cm4iJyIrdCsiJyI7dmFyIGk9ZS5pbmRlbnQqTWF0aC5tYXgoMSxyKSxvPWUubGluZVdpZHRoPT09LTE/LTE6TWF0aC5tYXgoTWF0aC5taW4oZS5saW5lV2lkdGgsNDApLGUubGluZVdpZHRoLWkpLG49YXx8ZS5mbG93TGV2ZWw+LTEmJnI+PWUuZmxvd0xldmVsO2Z1bmN0aW9uIHMoYyl7cmV0dXJuIHBKcihlLGMpfXN3aXRjaChnSnIodCxuLGUuaW5kZW50LG8scykpe2Nhc2UgRXh0OnJldHVybiB0O2Nhc2UgJHh0OnJldHVybiInIit0LnJlcGxhY2UoLycvZywiJyciKSsiJyI7Y2FzZSBQeHQ6cmV0dXJuInwiK054dCh0LGUuaW5kZW50KStGeHQoTHh0KHQsaSkpO2Nhc2UgSXh0OnJldHVybiI+IitOeHQodCxlLmluZGVudCkrRnh0KEx4dChiSnIodCxvKSxpKSk7Y2FzZSBnZWU6cmV0dXJuJyInK3ZKcih0LG8pKyciJztkZWZhdWx0OnRocm93IG5ldyBYeCgiaW1wb3NzaWJsZSBlcnJvcjogaW52YWxpZCBzY2FsYXIgc3R5bGUiKX19KSgpfWZ1bmN0aW9uIE54dChlLHQpe3ZhciByPUF4dChlKT9TdHJpbmcodCk6IiIsYT1lW2UubGVuZ3RoLTFdPT09YApgLGk9YSYmKGVbZS5sZW5ndGgtMl09PT1gCmB8fGU9PT1gCmApLG89aT8iKyI6YT8iIjoiLSI7cmV0dXJuIHIrbytgCmB9ZnVuY3Rpb24gRnh0KGUpe3JldHVybiBlW2UubGVuZ3RoLTFdPT09YApgP2Uuc2xpY2UoMCwtMSk6ZX1mdW5jdGlvbiBiSnIoZSx0KXtmb3IodmFyIHI9LyhcbispKFteXG5dKikvZyxhPShmdW5jdGlvbigpe3ZhciBkPWUuaW5kZXhPZihgCmApO3JldHVybiBkPWQhPT0tMT9kOmUubGVuZ3RoLHIubGFzdEluZGV4PWQsT3h0KGUuc2xpY2UoMCxkKSx0KX0pKCksaT1lWzBdPT09YApgfHxlWzBdPT09IiAiLG8sbjtuPXIuZXhlYyhlKTspe3ZhciBzPW5bMV0sYz1uWzJdO289Y1swXT09PSIgIixhKz1zKyghaSYmIW8mJmMhPT0iIj9gCmA6IiIpK094dChjLHQpLGk9b31yZXR1cm4gYX1mdW5jdGlvbiBPeHQoZSx0KXtpZihlPT09IiJ8fGVbMF09PT0iICIpcmV0dXJuIGU7Zm9yKHZhciByPS8gW14gXS9nLGEsaT0wLG8sbj0wLHM9MCxjPSIiO2E9ci5leGVjKGUpOylzPWEuaW5kZXgscy1pPnQmJihvPW4+aT9uOnMsYys9YApgK2Uuc2xpY2UoaSxvKSxpPW8rMSksbj1zO3JldHVybiBjKz1gCmAsZS5sZW5ndGgtaT50JiZuPmk/Yys9ZS5zbGljZShpLG4pK2AKYCtlLnNsaWNlKG4rMSk6Yys9ZS5zbGljZShpKSxjLnNsaWNlKDEpfWZ1bmN0aW9uIHZKcihlKXtmb3IodmFyIHQ9IiIscixhLGksbz0wO288ZS5sZW5ndGg7bysrKXtpZihyPWUuY2hhckNvZGVBdChvKSxyPj01NTI5NiYmcjw9NTYzMTkmJihhPWUuY2hhckNvZGVBdChvKzEpLGE+PTU2MzIwJiZhPD01NzM0Mykpe3QrPVR4dCgoci01NTI5NikqMTAyNCthLTU2MzIwKzY1NTM2KSxvKys7Y29udGludWV9aT1FMVtyXSx0Kz0haSYmZm0ocik/ZVtvXTppfHxUeHQocil9cmV0dXJuIHR9ZnVuY3Rpb24geUpyKGUsdCxyKXt2YXIgYT0iIixpPWUudGFnLG8sbjtmb3Iobz0wLG49ci5sZW5ndGg7bzxuO28rPTEpeWQoZSx0LHJbb10sITEsITEpJiYobyE9PTAmJihhKz0iLCIrKGUuY29uZGVuc2VGbG93PyIiOiIgIikpLGErPWUuZHVtcCk7ZS50YWc9aSxlLmR1bXA9IlsiK2ErIl0ifWZ1bmN0aW9uIHdKcihlLHQscixhKXt2YXIgaT0iIixvPWUudGFnLG4scztmb3Iobj0wLHM9ci5sZW5ndGg7bjxzO24rPTEpeWQoZSx0KzEscltuXSwhMCwhMCkmJigoIWF8fG4hPT0wKSYmKGkrPUt1ZShlLHQpKSxlLmR1bXAmJlF4PT09ZS5kdW1wLmNoYXJDb2RlQXQoMCk/aSs9Ii0iOmkrPSItICIsaSs9ZS5kdW1wKTtlLnRhZz1vLGUuZHVtcD1pfHwiW10ifWZ1bmN0aW9uIE1KcihlLHQscil7dmFyIGE9IiIsaT1lLnRhZyxvPU9iamVjdC5rZXlzKHIpLG4scyxjLGQsZjtmb3Iobj0wLHM9by5sZW5ndGg7bjxzO24rPTEpZj0iIixuIT09MCYmKGYrPSIsICIpLGUuY29uZGVuc2VGbG93JiYoZis9JyInKSxjPW9bbl0sZD1yW2NdLHlkKGUsdCxjLCExLCExKSYmKGUuZHVtcC5sZW5ndGg+MTAyNCYmKGYrPSI/ICIpLGYrPWUuZHVtcCsoZS5jb25kZW5zZUZsb3c/JyInOiIiKSsiOiIrKGUuY29uZGVuc2VGbG93PyIiOiIgIikseWQoZSx0LGQsITEsITEpJiYoZis9ZS5kdW1wLGErPWYpKTtlLnRhZz1pLGUuZHVtcD0ieyIrYSsifSJ9ZnVuY3Rpb24ga0pyKGUsdCxyLGEpe3ZhciBpPSIiLG89ZS50YWcsbj1PYmplY3Qua2V5cyhyKSxzLGMsZCxmLHUscDtpZihlLnNvcnRLZXlzPT09ITApbi5zb3J0KCk7ZWxzZSBpZih0eXBlb2YgZS5zb3J0S2V5cz09ImZ1bmN0aW9uIiluLnNvcnQoZS5zb3J0S2V5cyk7ZWxzZSBpZihlLnNvcnRLZXlzKXRocm93IG5ldyBYeCgic29ydEtleXMgbXVzdCBiZSBhIGJvb2xlYW4gb3IgYSBmdW5jdGlvbiIpO2ZvcihzPTAsYz1uLmxlbmd0aDtzPGM7cys9MSlwPSIiLCghYXx8cyE9PTApJiYocCs9S3VlKGUsdCkpLGQ9bltzXSxmPXJbZF0seWQoZSx0KzEsZCwhMCwhMCwhMCkmJih1PWUudGFnIT09bnVsbCYmZS50YWchPT0iPyJ8fGUuZHVtcCYmZS5kdW1wLmxlbmd0aD4xMDI0LHUmJihlLmR1bXAmJlF4PT09ZS5kdW1wLmNoYXJDb2RlQXQoMCk/cCs9Ij8iOnArPSI/ICIpLHArPWUuZHVtcCx1JiYocCs9S3VlKGUsdCkpLHlkKGUsdCsxLGYsITAsdSkmJihlLmR1bXAmJlF4PT09ZS5kdW1wLmNoYXJDb2RlQXQoMCk/cCs9IjoiOnArPSI6ICIscCs9ZS5kdW1wLGkrPXApKTtlLnRhZz1vLGUuZHVtcD1pfHwie30ifWZ1bmN0aW9uIFJ4dChlLHQscil7dmFyIGEsaSxvLG4scyxjO2ZvcihpPXI/ZS5leHBsaWNpdFR5cGVzOmUuaW1wbGljaXRUeXBlcyxvPTAsbj1pLmxlbmd0aDtvPG47bys9MSlpZihzPWlbb10sKHMuaW5zdGFuY2VPZnx8cy5wcmVkaWNhdGUpJiYoIXMuaW5zdGFuY2VPZnx8dHlwZW9mIHQ9PSJvYmplY3QiJiZ0IGluc3RhbmNlb2Ygcy5pbnN0YW5jZU9mKSYmKCFzLnByZWRpY2F0ZXx8cy5wcmVkaWNhdGUodCkpKXtpZihlLnRhZz1yP3MudGFnOiI/IixzLnJlcHJlc2VudCl7aWYoYz1lLnN0eWxlTWFwW3MudGFnXXx8cy5kZWZhdWx0U3R5bGUsdnh0LmNhbGwocy5yZXByZXNlbnQpPT09IltvYmplY3QgRnVuY3Rpb25dIilhPXMucmVwcmVzZW50KHQsYyk7ZWxzZSBpZih5eHQuY2FsbChzLnJlcHJlc2VudCxjKSlhPXMucmVwcmVzZW50W2NdKHQsYyk7ZWxzZSB0aHJvdyBuZXcgWHgoIiE8IitzLnRhZysnPiB0YWcgcmVzb2x2ZXIgYWNjZXB0cyBub3QgIicrYysnIiBzdHlsZScpO2UuZHVtcD1hfXJldHVybiEwfXJldHVybiExfWZ1bmN0aW9uIHlkKGUsdCxyLGEsaSxvKXtlLnRhZz1udWxsLGUuZHVtcD1yLFJ4dChlLHIsITEpfHxSeHQoZSxyLCEwKTt2YXIgbj12eHQuY2FsbChlLmR1bXApO2EmJihhPWUuZmxvd0xldmVsPDB8fGUuZmxvd0xldmVsPnQpO3ZhciBzPW49PT0iW29iamVjdCBPYmplY3RdInx8bj09PSJbb2JqZWN0IEFycmF5XSIsYyxkO2lmKHMmJihjPWUuZHVwbGljYXRlcy5pbmRleE9mKHIpLGQ9YyE9PS0xKSwoZS50YWchPT1udWxsJiZlLnRhZyE9PSI/Inx8ZHx8ZS5pbmRlbnQhPT0yJiZ0PjApJiYoaT0hMSksZCYmZS51c2VkRHVwbGljYXRlc1tjXSllLmR1bXA9IipyZWZfIitjO2Vsc2V7aWYocyYmZCYmIWUudXNlZER1cGxpY2F0ZXNbY10mJihlLnVzZWREdXBsaWNhdGVzW2NdPSEwKSxuPT09IltvYmplY3QgT2JqZWN0XSIpYSYmT2JqZWN0LmtleXMoZS5kdW1wKS5sZW5ndGghPT0wPyhrSnIoZSx0LGUuZHVtcCxpKSxkJiYoZS5kdW1wPSImcmVmXyIrYytlLmR1bXApKTooTUpyKGUsdCxlLmR1bXApLGQmJihlLmR1bXA9IiZyZWZfIitjKyIgIitlLmR1bXApKTtlbHNlIGlmKG49PT0iW29iamVjdCBBcnJheV0iKXt2YXIgZj1lLm5vQXJyYXlJbmRlbnQmJnQ+MD90LTE6dDthJiZlLmR1bXAubGVuZ3RoIT09MD8od0pyKGUsZixlLmR1bXAsaSksZCYmKGUuZHVtcD0iJnJlZl8iK2MrZS5kdW1wKSk6KHlKcihlLGYsZS5kdW1wKSxkJiYoZS5kdW1wPSImcmVmXyIrYysiICIrZS5kdW1wKSl9ZWxzZSBpZihuPT09IltvYmplY3QgU3RyaW5nXSIpZS50YWchPT0iPyImJnhKcihlLGUuZHVtcCx0LG8pO2Vsc2V7aWYoZS5za2lwSW52YWxpZClyZXR1cm4hMTt0aHJvdyBuZXcgWHgoInVuYWNjZXB0YWJsZSBraW5kIG9mIGFuIG9iamVjdCB0byBkdW1wICIrbil9ZS50YWchPT1udWxsJiZlLnRhZyE9PSI/IiYmKGUuZHVtcD0iITwiK2UudGFnKyI+ICIrZS5kdW1wKX1yZXR1cm4hMH1mdW5jdGlvbiBTSnIoZSx0KXt2YXIgcj1bXSxhPVtdLGksbztmb3IoZWZlKGUscixhKSxpPTAsbz1hLmxlbmd0aDtpPG87aSs9MSl0LmR1cGxpY2F0ZXMucHVzaChyW2FbaV1dKTt0LnVzZWREdXBsaWNhdGVzPW5ldyBBcnJheShvKX1mdW5jdGlvbiBlZmUoZSx0LHIpe3ZhciBhLGksbztpZihlIT09bnVsbCYmdHlwZW9mIGU9PSJvYmplY3QiKWlmKGk9dC5pbmRleE9mKGUpLGkhPT0tMSlyLmluZGV4T2YoaSk9PT0tMSYmci5wdXNoKGkpO2Vsc2UgaWYodC5wdXNoKGUpLEFycmF5LmlzQXJyYXkoZSkpZm9yKGk9MCxvPWUubGVuZ3RoO2k8bztpKz0xKWVmZShlW2ldLHQscik7ZWxzZSBmb3IoYT1PYmplY3Qua2V5cyhlKSxpPTAsbz1hLmxlbmd0aDtpPG87aSs9MSllZmUoZVthW2ldXSx0LHIpfWZ1bmN0aW9uIEJ4dChlLHQpe3Q9dHx8e307dmFyIHI9bmV3IGZKcih0KTtyZXR1cm4gci5ub1JlZnN8fFNKcihlLHIpLHlkKHIsMCxlLCEwLCEwKT9yLmR1bXArYApgOiIifWZ1bmN0aW9uIHpKcihlLHQpe3JldHVybiBCeHQoZSxaeC5leHRlbmQoe3NjaGVtYTpHS3J9LHQpKX10ZmUuZXhwb3J0cy5kdW1wPUJ4dCx0ZmUuZXhwb3J0cy5zYWZlRHVtcD16SnJ9KTt2YXIganh0PVhlKChkMGksQmEpPT57InVzZSBzdHJpY3QiO3ZhciB4ZWU9Ynh0KCkscXh0PUh4dCgpO2Z1bmN0aW9uIGJlZShlKXtyZXR1cm4gZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3IoIkZ1bmN0aW9uICIrZSsiIGlzIGRlcHJlY2F0ZWQgYW5kIGNhbm5vdCBiZSB1c2VkLiIpfX1CYS5leHBvcnRzLlR5cGU9X2koKSxCYS5leHBvcnRzLlNjaGVtYT1nZCgpLEJhLmV4cG9ydHMuRkFJTFNBRkVfU0NIRU1BPWRlZSgpLEJhLmV4cG9ydHMuSlNPTl9TQ0hFTUE9V3VlKCksQmEuZXhwb3J0cy5DT1JFX1NDSEVNQT1HdWUoKSxCYS5leHBvcnRzLkRFRkFVTFRfU0FGRV9TQ0hFTUE9bG0oKSxCYS5leHBvcnRzLkRFRkFVTFRfRlVMTF9TQ0hFTUE9R3goKSxCYS5leHBvcnRzLmxvYWQ9eGVlLmxvYWQsQmEuZXhwb3J0cy5sb2FkQWxsPXhlZS5sb2FkQWxsLEJhLmV4cG9ydHMuc2FmZUxvYWQ9eGVlLnNhZmVMb2FkLEJhLmV4cG9ydHMuc2FmZUxvYWRBbGw9eGVlLnNhZmVMb2FkQWxsLEJhLmV4cG9ydHMuZHVtcD1xeHQuZHVtcCxCYS5leHBvcnRzLnNhZmVEdW1wPXF4dC5zYWZlRHVtcCxCYS5leHBvcnRzLllBTUxFeGNlcHRpb249bm0oKSxCYS5leHBvcnRzLk1JTklNQUxfU0NIRU1BPWRlZSgpLEJhLmV4cG9ydHMuU0FGRV9TQ0hFTUE9bG0oKSxCYS5leHBvcnRzLkRFRkFVTFRfU0NIRU1BPUd4KCksQmEuZXhwb3J0cy5zY2FuPWJlZSgic2NhbiIpLEJhLmV4cG9ydHMucGFyc2U9YmVlKCJwYXJzZSIpLEJhLmV4cG9ydHMuY29tcG9zZT1iZWUoImNvbXBvc2UiKSxCYS5leHBvcnRzLmFkZENvbnN0cnVjdG9yPWJlZSgiYWRkQ29uc3RydWN0b3IiKX0pO3ZhciBVeHQ9WGUoKHUwaSxWeHQpPT57InVzZSBzdHJpY3QiO3ZhciBDSnI9anh0KCk7Vnh0LmV4cG9ydHM9Q0pyfSk7dmFyIFd4dD1YZShiMj0+eyJ1c2Ugc3RyaWN0Ijt2YXIgX0pyPWIyJiZiMi5fX2NyZWF0ZUJpbmRpbmd8fChPYmplY3QuY3JlYXRlPyhmdW5jdGlvbihlLHQscixhKXthPT09dm9pZCAwJiYoYT1yKSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxhLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiB0W3JdfX0pfSk6KGZ1bmN0aW9uKGUsdCxyLGEpe2E9PT12b2lkIDAmJihhPXIpLGVbYV09dFtyXX0pKSxUSnI9YjImJmIyLl9fc2V0TW9kdWxlRGVmYXVsdHx8KE9iamVjdC5jcmVhdGU/KGZ1bmN0aW9uKGUsdCl7T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsImRlZmF1bHQiLHtlbnVtZXJhYmxlOiEwLHZhbHVlOnR9KX0pOmZ1bmN0aW9uKGUsdCl7ZS5kZWZhdWx0PXR9KSxMSnI9YjImJmIyLl9faW1wb3J0U3Rhcnx8ZnVuY3Rpb24oZSl7aWYoZSYmZS5fX2VzTW9kdWxlKXJldHVybiBlO3ZhciB0PXt9O2lmKGUhPW51bGwpZm9yKHZhciByIGluIGUpciE9PSJkZWZhdWx0IiYmT2JqZWN0Lmhhc093blByb3BlcnR5LmNhbGwoZSxyKSYmX0pyKHQsZSxyKTtyZXR1cm4gVEpyKHQsZSksdH07T2JqZWN0LmRlZmluZVByb3BlcnR5KGIyLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxiMi5qc1lhbWw9dm9pZCAwO3ZhciBESnI9TEpyKFV4dCgpKTtiMi5qc1lhbWw9REpyfSk7dmFyIFl4dD1YZShNbj0+eyJ1c2Ugc3RyaWN0Ijt2YXIgQUpyPU1uJiZNbi5fX2NyZWF0ZUJpbmRpbmd8fChPYmplY3QuY3JlYXRlPyhmdW5jdGlvbihlLHQscixhKXthPT09dm9pZCAwJiYoYT1yKSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxhLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiB0W3JdfX0pfSk6KGZ1bmN0aW9uKGUsdCxyLGEpe2E9PT12b2lkIDAmJihhPXIpLGVbYV09dFtyXX0pKSxFSnI9TW4mJk1uLl9fc2V0TW9kdWxlRGVmYXVsdHx8KE9iamVjdC5jcmVhdGU/KGZ1bmN0aW9uKGUsdCl7T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsImRlZmF1bHQiLHtlbnVtZXJhYmxlOiEwLHZhbHVlOnR9KX0pOmZ1bmN0aW9uKGUsdCl7ZS5kZWZhdWx0PXR9KSwkSnI9TW4mJk1uLl9faW1wb3J0U3Rhcnx8ZnVuY3Rpb24oZSl7aWYoZSYmZS5fX2VzTW9kdWxlKXJldHVybiBlO3ZhciB0PXt9O2lmKGUhPW51bGwpZm9yKHZhciByIGluIGUpciE9PSJkZWZhdWx0IiYmT2JqZWN0Lmhhc093blByb3BlcnR5LmNhbGwoZSxyKSYmQUpyKHQsZSxyKTtyZXR1cm4gRUpyKHQsZSksdH07T2JqZWN0LmRlZmluZVByb3BlcnR5KE1uLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxNbi5vYmplY3RUb1lhbWxTdHJpbmc9TW4ueWFtbFN0cmluZ1RvT2JqZWN0PXZvaWQgMDt2YXIgR3h0PSRKcihXeHQoKSk7TW4ueWFtbFN0cmluZ1RvT2JqZWN0PWFzeW5jKGUsdD17fSk9Pkd4dC5qc1lhbWwuc2FmZUxvYWQoZSksTW4ub2JqZWN0VG9ZYW1sU3RyaW5nPWFzeW5jKGUsdD17fSk9Pkd4dC5qc1lhbWwuc2FmZUR1bXAoZSl9KTtmdW5jdGlvbiByZmUoZSl7aWYoZSl0aHJvdyBlfXZhciBaeHQ9bCgoKT0+e30pO3ZhciBpYnQ9WGUoKG0waSxhYnQpPT57InVzZSBzdHJpY3QiO3ZhciB2ZWU9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSxYeHQ9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZyxReHQ9T2JqZWN0LmRlZmluZVByb3BlcnR5LEt4dD1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yLEp4dD1mdW5jdGlvbih0KXtyZXR1cm4gdHlwZW9mIEFycmF5LmlzQXJyYXk9PSJmdW5jdGlvbiI/QXJyYXkuaXNBcnJheSh0KTpYeHQuY2FsbCh0KT09PSJbb2JqZWN0IEFycmF5XSJ9LGVidD1mdW5jdGlvbih0KXtpZighdHx8WHh0LmNhbGwodCkhPT0iW29iamVjdCBPYmplY3RdIilyZXR1cm4hMTt2YXIgcj12ZWUuY2FsbCh0LCJjb25zdHJ1Y3RvciIpLGE9dC5jb25zdHJ1Y3RvciYmdC5jb25zdHJ1Y3Rvci5wcm90b3R5cGUmJnZlZS5jYWxsKHQuY29uc3RydWN0b3IucHJvdG90eXBlLCJpc1Byb3RvdHlwZU9mIik7aWYodC5jb25zdHJ1Y3RvciYmIXImJiFhKXJldHVybiExO3ZhciBpO2ZvcihpIGluIHQpO3JldHVybiB0eXBlb2YgaT4idSJ8fHZlZS5jYWxsKHQsaSl9LHRidD1mdW5jdGlvbih0LHIpe1F4dCYmci5uYW1lPT09Il9fcHJvdG9fXyI/UXh0KHQsci5uYW1lLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx2YWx1ZTpyLm5ld1ZhbHVlLHdyaXRhYmxlOiEwfSk6dFtyLm5hbWVdPXIubmV3VmFsdWV9LHJidD1mdW5jdGlvbih0LHIpe2lmKHI9PT0iX19wcm90b19fIilpZih2ZWUuY2FsbCh0LHIpKXtpZihLeHQpcmV0dXJuIEt4dCh0LHIpLnZhbHVlfWVsc2UgcmV0dXJuO3JldHVybiB0W3JdfTthYnQuZXhwb3J0cz1mdW5jdGlvbiBlKCl7dmFyIHQscixhLGksbyxuLHM9YXJndW1lbnRzWzBdLGM9MSxkPWFyZ3VtZW50cy5sZW5ndGgsZj0hMTtmb3IodHlwZW9mIHM9PSJib29sZWFuIiYmKGY9cyxzPWFyZ3VtZW50c1sxXXx8e30sYz0yKSwocz09bnVsbHx8dHlwZW9mIHMhPSJvYmplY3QiJiZ0eXBlb2YgcyE9ImZ1bmN0aW9uIikmJihzPXt9KTtjPGQ7KytjKWlmKHQ9YXJndW1lbnRzW2NdLHQhPW51bGwpZm9yKHIgaW4gdClhPXJidChzLHIpLGk9cmJ0KHQscikscyE9PWkmJihmJiZpJiYoZWJ0KGkpfHwobz1KeHQoaSkpKT8obz8obz0hMSxuPWEmJkp4dChhKT9hOltdKTpuPWEmJmVidChhKT9hOnt9LHRidChzLHtuYW1lOnIsbmV3VmFsdWU6ZShmLG4saSl9KSk6dHlwZW9mIGk8InUiJiZ0YnQocyx7bmFtZTpyLG5ld1ZhbHVlOml9KSk7cmV0dXJuIHN9fSk7dmFyIEIwPWwoKCk9Pnt9KTtmdW5jdGlvbiBLeChlKXtpZih0eXBlb2YgZSE9Im9iamVjdCJ8fGU9PT1udWxsKXJldHVybiExO2xldCB0PU9iamVjdC5nZXRQcm90b3R5cGVPZihlKTtyZXR1cm4odD09PW51bGx8fHQ9PT1PYmplY3QucHJvdG90eXBlfHxPYmplY3QuZ2V0UHJvdG90eXBlT2YodCk9PT1udWxsKSYmIShTeW1ib2wudG9TdHJpbmdUYWcgaW4gZSkmJiEoU3ltYm9sLml0ZXJhdG9yIGluIGUpfXZhciBvYnQ9bCgoKT0+e30pO2Z1bmN0aW9uIGFmZSgpe2xldCBlPVtdLHQ9e3J1bjpyLHVzZTphfTtyZXR1cm4gdDtmdW5jdGlvbiByKC4uLmkpe2xldCBvPS0xLG49aS5wb3AoKTtpZih0eXBlb2YgbiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJFeHBlY3RlZCBmdW5jdGlvbiBhcyBsYXN0IGFyZ3VtZW50LCBub3QgIituKTtzKG51bGwsLi4uaSk7ZnVuY3Rpb24gcyhjLC4uLmQpe2xldCBmPWVbKytvXSx1PS0xO2lmKGMpe24oYyk7cmV0dXJufWZvcig7Kyt1PGkubGVuZ3RoOykoZFt1XT09PW51bGx8fGRbdV09PT12b2lkIDApJiYoZFt1XT1pW3VdKTtpPWQsZj9uYnQoZixzKSguLi5kKTpuKG51bGwsLi4uZCl9fWZ1bmN0aW9uIGEoaSl7aWYodHlwZW9mIGkhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYG1pZGRlbHdhcmVgIHRvIGJlIGEgZnVuY3Rpb24sIG5vdCAiK2kpO3JldHVybiBlLnB1c2goaSksdH19ZnVuY3Rpb24gbmJ0KGUsdCl7bGV0IHI7cmV0dXJuIGE7ZnVuY3Rpb24gYSguLi5uKXtsZXQgcz1lLmxlbmd0aD5uLmxlbmd0aCxjO3MmJm4ucHVzaChpKTt0cnl7Yz1lLmFwcGx5KHRoaXMsbil9Y2F0Y2goZCl7bGV0IGY9ZDtpZihzJiZyKXRocm93IGY7cmV0dXJuIGkoZil9c3x8KGMmJmMudGhlbiYmdHlwZW9mIGMudGhlbj09ImZ1bmN0aW9uIj9jLnRoZW4obyxpKTpjIGluc3RhbmNlb2YgRXJyb3I/aShjKTpvKGMpKX1mdW5jdGlvbiBpKG4sLi4ucyl7cnx8KHI9ITAsdChuLC4uLnMpKX1mdW5jdGlvbiBvKG4pe2kobnVsbCxuKX19dmFyIHNidD1sKCgpPT57fSk7dmFyIGxidD1sKCgpPT57c2J0KCl9KTtmdW5jdGlvbiBIMChlKXtyZXR1cm4hZXx8dHlwZW9mIGUhPSJvYmplY3QiPyIiOiJwb3NpdGlvbiJpbiBlfHwidHlwZSJpbiBlP2NidChlLnBvc2l0aW9uKToic3RhcnQiaW4gZXx8ImVuZCJpbiBlP2NidChlKToibGluZSJpbiBlfHwiY29sdW1uImluIGU/aWZlKGUpOiIifWZ1bmN0aW9uIGlmZShlKXtyZXR1cm4gZGJ0KGUmJmUubGluZSkrIjoiK2RidChlJiZlLmNvbHVtbil9ZnVuY3Rpb24gY2J0KGUpe3JldHVybiBpZmUoZSYmZS5zdGFydCkrIi0iK2lmZShlJiZlLmVuZCl9ZnVuY3Rpb24gZGJ0KGUpe3JldHVybiBlJiZ0eXBlb2YgZT09Im51bWJlciI/ZToxfXZhciB1YnQ9bCgoKT0+e30pO3ZhciBvZmU9bCgoKT0+e3VidCgpfSk7dmFyIFVpLGZidD1sKCgpPT57b2ZlKCk7VWk9Y2xhc3MgZXh0ZW5kcyBFcnJvcntjb25zdHJ1Y3Rvcih0LHIsYSl7c3VwZXIoKSx0eXBlb2Ygcj09InN0cmluZyImJihhPXIscj12b2lkIDApO2xldCBpPSIiLG89e30sbj0hMTtpZihyJiYoImxpbmUiaW4gciYmImNvbHVtbiJpbiByP289e3BsYWNlOnJ9OiJzdGFydCJpbiByJiYiZW5kImluIHI/bz17cGxhY2U6cn06InR5cGUiaW4gcj9vPXthbmNlc3RvcnM6W3JdLHBsYWNlOnIucG9zaXRpb259Om89ey4uLnJ9KSx0eXBlb2YgdD09InN0cmluZyI/aT10OiFvLmNhdXNlJiZ0JiYobj0hMCxpPXQubWVzc2FnZSxvLmNhdXNlPXQpLCFvLnJ1bGVJZCYmIW8uc291cmNlJiZ0eXBlb2YgYT09InN0cmluZyIpe2xldCBjPWEuaW5kZXhPZigiOiIpO2M9PT0tMT9vLnJ1bGVJZD1hOihvLnNvdXJjZT1hLnNsaWNlKDAsYyksby5ydWxlSWQ9YS5zbGljZShjKzEpKX1pZighby5wbGFjZSYmby5hbmNlc3RvcnMmJm8uYW5jZXN0b3JzKXtsZXQgYz1vLmFuY2VzdG9yc1tvLmFuY2VzdG9ycy5sZW5ndGgtMV07YyYmKG8ucGxhY2U9Yy5wb3NpdGlvbil9bGV0IHM9by5wbGFjZSYmInN0YXJ0ImluIG8ucGxhY2U/by5wbGFjZS5zdGFydDpvLnBsYWNlO3RoaXMuYW5jZXN0b3JzPW8uYW5jZXN0b3JzfHx2b2lkIDAsdGhpcy5jYXVzZT1vLmNhdXNlfHx2b2lkIDAsdGhpcy5jb2x1bW49cz9zLmNvbHVtbjp2b2lkIDAsdGhpcy5mYXRhbD12b2lkIDAsdGhpcy5maWxlPSIiLHRoaXMubWVzc2FnZT1pLHRoaXMubGluZT1zP3MubGluZTp2b2lkIDAsdGhpcy5uYW1lPUgwKG8ucGxhY2UpfHwiMToxIix0aGlzLnBsYWNlPW8ucGxhY2V8fHZvaWQgMCx0aGlzLnJlYXNvbj10aGlzLm1lc3NhZ2UsdGhpcy5ydWxlSWQ9by5ydWxlSWR8fHZvaWQgMCx0aGlzLnNvdXJjZT1vLnNvdXJjZXx8dm9pZCAwLHRoaXMuc3RhY2s9biYmby5jYXVzZSYmdHlwZW9mIG8uY2F1c2Uuc3RhY2s9PSJzdHJpbmciP28uY2F1c2Uuc3RhY2s6IiIsdGhpcy5hY3R1YWw9dm9pZCAwLHRoaXMuZXhwZWN0ZWQ9dm9pZCAwLHRoaXMubm90ZT12b2lkIDAsdGhpcy51cmw9dm9pZCAwfX07VWkucHJvdG90eXBlLmZpbGU9IiIsVWkucHJvdG90eXBlLm5hbWU9IiIsVWkucHJvdG90eXBlLnJlYXNvbj0iIixVaS5wcm90b3R5cGUubWVzc2FnZT0iIixVaS5wcm90b3R5cGUuc3RhY2s9IiIsVWkucHJvdG90eXBlLmNvbHVtbj12b2lkIDAsVWkucHJvdG90eXBlLmxpbmU9dm9pZCAwLFVpLnByb3RvdHlwZS5hbmNlc3RvcnM9dm9pZCAwLFVpLnByb3RvdHlwZS5jYXVzZT12b2lkIDAsVWkucHJvdG90eXBlLmZhdGFsPXZvaWQgMCxVaS5wcm90b3R5cGUucGxhY2U9dm9pZCAwLFVpLnByb3RvdHlwZS5ydWxlSWQ9dm9pZCAwLFVpLnByb3RvdHlwZS5zb3VyY2U9dm9pZCAwfSk7dmFyIHBidD1sKCgpPT57ZmJ0KCl9KTtmdW5jdGlvbiBQSnIoZSx0KXtpZih0IT09dm9pZCAwJiZ0eXBlb2YgdCE9InN0cmluZyIpdGhyb3cgbmV3IFR5cGVFcnJvcignImV4dCIgYXJndW1lbnQgbXVzdCBiZSBhIHN0cmluZycpO0p4KGUpO2xldCByPTAsYT0tMSxpPWUubGVuZ3RoLG87aWYodD09PXZvaWQgMHx8dC5sZW5ndGg9PT0wfHx0Lmxlbmd0aD5lLmxlbmd0aCl7Zm9yKDtpLS07KWlmKGUuY29kZVBvaW50QXQoaSk9PT00Nyl7aWYobyl7cj1pKzE7YnJlYWt9fWVsc2UgYTwwJiYobz0hMCxhPWkrMSk7cmV0dXJuIGE8MD8iIjplLnNsaWNlKHIsYSl9aWYodD09PWUpcmV0dXJuIiI7bGV0IG49LTEscz10Lmxlbmd0aC0xO2Zvcig7aS0tOylpZihlLmNvZGVQb2ludEF0KGkpPT09NDcpe2lmKG8pe3I9aSsxO2JyZWFrfX1lbHNlIG48MCYmKG89ITAsbj1pKzEpLHM+LTEmJihlLmNvZGVQb2ludEF0KGkpPT09dC5jb2RlUG9pbnRBdChzLS0pP3M8MCYmKGE9aSk6KHM9LTEsYT1uKSk7cmV0dXJuIHI9PT1hP2E9bjphPDAmJihhPWUubGVuZ3RoKSxlLnNsaWNlKHIsYSl9ZnVuY3Rpb24gSUpyKGUpe2lmKEp4KGUpLGUubGVuZ3RoPT09MClyZXR1cm4iLiI7bGV0IHQ9LTEscj1lLmxlbmd0aCxhO2Zvcig7LS1yOylpZihlLmNvZGVQb2ludEF0KHIpPT09NDcpe2lmKGEpe3Q9cjticmVha319ZWxzZSBhfHwoYT0hMCk7cmV0dXJuIHQ8MD9lLmNvZGVQb2ludEF0KDApPT09NDc/Ii8iOiIuIjp0PT09MSYmZS5jb2RlUG9pbnRBdCgwKT09PTQ3PyIvLyI6ZS5zbGljZSgwLHQpfWZ1bmN0aW9uIE5KcihlKXtKeChlKTtsZXQgdD1lLmxlbmd0aCxyPS0xLGE9MCxpPS0xLG89MCxuO2Zvcig7dC0tOyl7bGV0IHM9ZS5jb2RlUG9pbnRBdCh0KTtpZihzPT09NDcpe2lmKG4pe2E9dCsxO2JyZWFrfWNvbnRpbnVlfXI8MCYmKG49ITAscj10KzEpLHM9PT00Nj9pPDA/aT10Om8hPT0xJiYobz0xKTppPi0xJiYobz0tMSl9cmV0dXJuIGk8MHx8cjwwfHxvPT09MHx8bz09PTEmJmk9PT1yLTEmJmk9PT1hKzE/IiI6ZS5zbGljZShpLHIpfWZ1bmN0aW9uIEZKciguLi5lKXtsZXQgdD0tMSxyO2Zvcig7Kyt0PGUubGVuZ3RoOylKeChlW3RdKSxlW3RdJiYocj1yPT09dm9pZCAwP2VbdF06cisiLyIrZVt0XSk7cmV0dXJuIHI9PT12b2lkIDA/Ii4iOk9KcihyKX1mdW5jdGlvbiBPSnIoZSl7SngoZSk7bGV0IHQ9ZS5jb2RlUG9pbnRBdCgwKT09PTQ3LHI9UkpyKGUsIXQpO3JldHVybiByLmxlbmd0aD09PTAmJiF0JiYocj0iLiIpLHIubGVuZ3RoPjAmJmUuY29kZVBvaW50QXQoZS5sZW5ndGgtMSk9PT00NyYmKHIrPSIvIiksdD8iLyIrcjpyfWZ1bmN0aW9uIFJKcihlLHQpe2xldCByPSIiLGE9MCxpPS0xLG89MCxuPS0xLHMsYztmb3IoOysrbjw9ZS5sZW5ndGg7KXtpZihuPGUubGVuZ3RoKXM9ZS5jb2RlUG9pbnRBdChuKTtlbHNle2lmKHM9PT00NylicmVhaztzPTQ3fWlmKHM9PT00Nyl7aWYoIShpPT09bi0xfHxvPT09MSkpaWYoaSE9PW4tMSYmbz09PTIpe2lmKHIubGVuZ3RoPDJ8fGEhPT0yfHxyLmNvZGVQb2ludEF0KHIubGVuZ3RoLTEpIT09NDZ8fHIuY29kZVBvaW50QXQoci5sZW5ndGgtMikhPT00Nil7aWYoci5sZW5ndGg+Mil7aWYoYz1yLmxhc3RJbmRleE9mKCIvIiksYyE9PXIubGVuZ3RoLTEpe2M8MD8ocj0iIixhPTApOihyPXIuc2xpY2UoMCxjKSxhPXIubGVuZ3RoLTEtci5sYXN0SW5kZXhPZigiLyIpKSxpPW4sbz0wO2NvbnRpbnVlfX1lbHNlIGlmKHIubGVuZ3RoPjApe3I9IiIsYT0wLGk9bixvPTA7Y29udGludWV9fXQmJihyPXIubGVuZ3RoPjA/cisiLy4uIjoiLi4iLGE9Mil9ZWxzZSByLmxlbmd0aD4wP3IrPSIvIitlLnNsaWNlKGkrMSxuKTpyPWUuc2xpY2UoaSsxLG4pLGE9bi1pLTE7aT1uLG89MH1lbHNlIHM9PT00NiYmbz4tMT9vKys6bz0tMX1yZXR1cm4gcn1mdW5jdGlvbiBKeChlKXtpZih0eXBlb2YgZSE9InN0cmluZyIpdGhyb3cgbmV3IFR5cGVFcnJvcigiUGF0aCBtdXN0IGJlIGEgc3RyaW5nLiBSZWNlaXZlZCAiK0pTT04uc3RyaW5naWZ5KGUpKX12YXIgdXMsaGJ0PWwoKCk9Pnt1cz17YmFzZW5hbWU6UEpyLGRpcm5hbWU6SUpyLGV4dG5hbWU6TkpyLGpvaW46RkpyLHNlcDoiLyJ9fSk7ZnVuY3Rpb24gQkpyKCl7cmV0dXJuIi8ifXZhciBtYnQsZ2J0PWwoKCk9PnttYnQ9e2N3ZDpCSnJ9fSk7ZnVuY3Rpb24gcG0oZSl7cmV0dXJuISEoZSE9PW51bGwmJnR5cGVvZiBlPT0ib2JqZWN0IiYmImhyZWYiaW4gZSYmZS5ocmVmJiYicHJvdG9jb2wiaW4gZSYmZS5wcm90b2NvbCYmZS5hdXRoPT09dm9pZCAwKX12YXIgbmZlPWwoKCk9Pnt9KTtmdW5jdGlvbiB4YnQoZSl7aWYodHlwZW9mIGU9PSJzdHJpbmciKWU9bmV3IFVSTChlKTtlbHNlIGlmKCFwbShlKSl7bGV0IHQ9bmV3IFR5cGVFcnJvcignVGhlICJwYXRoIiBhcmd1bWVudCBtdXN0IGJlIG9mIHR5cGUgc3RyaW5nIG9yIGFuIGluc3RhbmNlIG9mIFVSTC4gUmVjZWl2ZWQgYCcrZSsiYCIpO3Rocm93IHQuY29kZT0iRVJSX0lOVkFMSURfQVJHX1RZUEUiLHR9aWYoZS5wcm90b2NvbCE9PSJmaWxlOiIpe2xldCB0PW5ldyBUeXBlRXJyb3IoIlRoZSBVUkwgbXVzdCBiZSBvZiBzY2hlbWUgZmlsZSIpO3Rocm93IHQuY29kZT0iRVJSX0lOVkFMSURfVVJMX1NDSEVNRSIsdH1yZXR1cm4gSEpyKGUpfWZ1bmN0aW9uIEhKcihlKXtpZihlLmhvc3RuYW1lIT09IiIpe2xldCBhPW5ldyBUeXBlRXJyb3IoJ0ZpbGUgVVJMIGhvc3QgbXVzdCBiZSAibG9jYWxob3N0IiBvciBlbXB0eSBvbiBkYXJ3aW4nKTt0aHJvdyBhLmNvZGU9IkVSUl9JTlZBTElEX0ZJTEVfVVJMX0hPU1QiLGF9bGV0IHQ9ZS5wYXRobmFtZSxyPS0xO2Zvcig7KytyPHQubGVuZ3RoOylpZih0LmNvZGVQb2ludEF0KHIpPT09MzcmJnQuY29kZVBvaW50QXQocisxKT09PTUwKXtsZXQgYT10LmNvZGVQb2ludEF0KHIrMik7aWYoYT09PTcwfHxhPT09MTAyKXtsZXQgaT1uZXcgVHlwZUVycm9yKCJGaWxlIFVSTCBwYXRoIG11c3Qgbm90IGluY2x1ZGUgZW5jb2RlZCAvIGNoYXJhY3RlcnMiKTt0aHJvdyBpLmNvZGU9IkVSUl9JTlZBTElEX0ZJTEVfVVJMX1BBVEgiLGl9fXJldHVybiBkZWNvZGVVUklDb21wb25lbnQodCl9dmFyIGJidD1sKCgpPT57bmZlKCk7bmZlKCl9KTtmdW5jdGlvbiBsZmUoZSx0KXtpZihlJiZlLmluY2x1ZGVzKHVzLnNlcCkpdGhyb3cgbmV3IEVycm9yKCJgIit0KyJgIGNhbm5vdCBiZSBhIHBhdGg6IGRpZCBub3QgZXhwZWN0IGAiK3VzLnNlcCsiYCIpfWZ1bmN0aW9uIGNmZShlLHQpe2lmKCFlKXRocm93IG5ldyBFcnJvcigiYCIrdCsiYCBjYW5ub3QgYmUgZW1wdHkiKX1mdW5jdGlvbiB2YnQoZSx0KXtpZighZSl0aHJvdyBuZXcgRXJyb3IoIlNldHRpbmcgYCIrdCsiYCByZXF1aXJlcyBgcGF0aGAgdG8gYmUgc2V0IHRvbyIpfWZ1bmN0aW9uIHFKcihlKXtyZXR1cm4hIShlJiZ0eXBlb2YgZT09Im9iamVjdCImJiJieXRlTGVuZ3RoImluIGUmJiJieXRlT2Zmc2V0ImluIGUpfXZhciBzZmUsZWIseWJ0PWwoKCk9PntwYnQoKTtoYnQoKTtnYnQoKTtiYnQoKTtzZmU9WyJoaXN0b3J5IiwicGF0aCIsImJhc2VuYW1lIiwic3RlbSIsImV4dG5hbWUiLCJkaXJuYW1lIl0sZWI9Y2xhc3N7Y29uc3RydWN0b3IodCl7bGV0IHI7dD9wbSh0KT9yPXtwYXRoOnR9OnR5cGVvZiB0PT0ic3RyaW5nInx8cUpyKHQpP3I9e3ZhbHVlOnR9OnI9dDpyPXt9LHRoaXMuY3dkPSJjd2QiaW4gcj8iIjptYnQuY3dkKCksdGhpcy5kYXRhPXt9LHRoaXMuaGlzdG9yeT1bXSx0aGlzLm1lc3NhZ2VzPVtdLHRoaXMudmFsdWUsdGhpcy5tYXAsdGhpcy5yZXN1bHQsdGhpcy5zdG9yZWQ7bGV0IGE9LTE7Zm9yKDsrK2E8c2ZlLmxlbmd0aDspe2xldCBvPXNmZVthXTtvIGluIHImJnJbb10hPT12b2lkIDAmJnJbb10hPT1udWxsJiYodGhpc1tvXT1vPT09Imhpc3RvcnkiP1suLi5yW29dXTpyW29dKX1sZXQgaTtmb3IoaSBpbiByKXNmZS5pbmNsdWRlcyhpKXx8KHRoaXNbaV09cltpXSl9Z2V0IGJhc2VuYW1lKCl7cmV0dXJuIHR5cGVvZiB0aGlzLnBhdGg9PSJzdHJpbmciP3VzLmJhc2VuYW1lKHRoaXMucGF0aCk6dm9pZCAwfXNldCBiYXNlbmFtZSh0KXtjZmUodCwiYmFzZW5hbWUiKSxsZmUodCwiYmFzZW5hbWUiKSx0aGlzLnBhdGg9dXMuam9pbih0aGlzLmRpcm5hbWV8fCIiLHQpfWdldCBkaXJuYW1lKCl7cmV0dXJuIHR5cGVvZiB0aGlzLnBhdGg9PSJzdHJpbmciP3VzLmRpcm5hbWUodGhpcy5wYXRoKTp2b2lkIDB9c2V0IGRpcm5hbWUodCl7dmJ0KHRoaXMuYmFzZW5hbWUsImRpcm5hbWUiKSx0aGlzLnBhdGg9dXMuam9pbih0fHwiIix0aGlzLmJhc2VuYW1lKX1nZXQgZXh0bmFtZSgpe3JldHVybiB0eXBlb2YgdGhpcy5wYXRoPT0ic3RyaW5nIj91cy5leHRuYW1lKHRoaXMucGF0aCk6dm9pZCAwfXNldCBleHRuYW1lKHQpe2lmKGxmZSh0LCJleHRuYW1lIiksdmJ0KHRoaXMuZGlybmFtZSwiZXh0bmFtZSIpLHQpe2lmKHQuY29kZVBvaW50QXQoMCkhPT00Nil0aHJvdyBuZXcgRXJyb3IoImBleHRuYW1lYCBtdXN0IHN0YXJ0IHdpdGggYC5gIik7aWYodC5pbmNsdWRlcygiLiIsMSkpdGhyb3cgbmV3IEVycm9yKCJgZXh0bmFtZWAgY2Fubm90IGNvbnRhaW4gbXVsdGlwbGUgZG90cyIpfXRoaXMucGF0aD11cy5qb2luKHRoaXMuZGlybmFtZSx0aGlzLnN0ZW0rKHR8fCIiKSl9Z2V0IHBhdGgoKXtyZXR1cm4gdGhpcy5oaXN0b3J5W3RoaXMuaGlzdG9yeS5sZW5ndGgtMV19c2V0IHBhdGgodCl7cG0odCkmJih0PXhidCh0KSksY2ZlKHQsInBhdGgiKSx0aGlzLnBhdGghPT10JiZ0aGlzLmhpc3RvcnkucHVzaCh0KX1nZXQgc3RlbSgpe3JldHVybiB0eXBlb2YgdGhpcy5wYXRoPT0ic3RyaW5nIj91cy5iYXNlbmFtZSh0aGlzLnBhdGgsdGhpcy5leHRuYW1lKTp2b2lkIDB9c2V0IHN0ZW0odCl7Y2ZlKHQsInN0ZW0iKSxsZmUodCwic3RlbSIpLHRoaXMucGF0aD11cy5qb2luKHRoaXMuZGlybmFtZXx8IiIsdCsodGhpcy5leHRuYW1lfHwiIikpfWZhaWwodCxyLGEpe2xldCBpPXRoaXMubWVzc2FnZSh0LHIsYSk7dGhyb3cgaS5mYXRhbD0hMCxpfWluZm8odCxyLGEpe2xldCBpPXRoaXMubWVzc2FnZSh0LHIsYSk7cmV0dXJuIGkuZmF0YWw9dm9pZCAwLGl9bWVzc2FnZSh0LHIsYSl7bGV0IGk9bmV3IFVpKHQscixhKTtyZXR1cm4gdGhpcy5wYXRoJiYoaS5uYW1lPXRoaXMucGF0aCsiOiIraS5uYW1lLGkuZmlsZT10aGlzLnBhdGgpLGkuZmF0YWw9ITEsdGhpcy5tZXNzYWdlcy5wdXNoKGkpLGl9dG9TdHJpbmcodCl7cmV0dXJuIHRoaXMudmFsdWU9PT12b2lkIDA/IiI6dHlwZW9mIHRoaXMudmFsdWU9PSJzdHJpbmciP3RoaXMudmFsdWU6bmV3IFRleHREZWNvZGVyKHR8fHZvaWQgMCkuZGVjb2RlKHRoaXMudmFsdWUpfX19KTt2YXIgd2J0PWwoKCk9Pnt5YnQoKX0pO3ZhciBNYnQsa2J0PWwoKCk9PntNYnQ9KGZ1bmN0aW9uKGUpe2xldCBhPXRoaXMuY29uc3RydWN0b3IucHJvdG90eXBlLGk9YVtlXSxvPWZ1bmN0aW9uKCl7cmV0dXJuIGkuYXBwbHkobyxhcmd1bWVudHMpfTtyZXR1cm4gT2JqZWN0LnNldFByb3RvdHlwZU9mKG8sYSksb30pfSk7ZnVuY3Rpb24gdWZlKGUsdCl7aWYodHlwZW9mIHQhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGAiK2UrImAgd2l0aG91dCBgcGFyc2VyYCIpfWZ1bmN0aW9uIGZmZShlLHQpe2lmKHR5cGVvZiB0IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBgIitlKyJgIHdpdGhvdXQgYGNvbXBpbGVyYCIpfWZ1bmN0aW9uIHBmZShlLHQpe2lmKHQpdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgY2FsbCBgIitlKyJgIG9uIGEgZnJvemVuIHByb2Nlc3Nvci5cbkNyZWF0ZSBhIG5ldyBwcm9jZXNzb3IgZmlyc3QsIGJ5IGNhbGxpbmcgaXQ6IHVzZSBgcHJvY2Vzc29yKClgIGluc3RlYWQgb2YgYHByb2Nlc3NvcmAuIil9ZnVuY3Rpb24gU2J0KGUpe2lmKCFLeChlKXx8dHlwZW9mIGUudHlwZSE9InN0cmluZyIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgbm9kZSwgZ290IGAiK2UrImAiKX1mdW5jdGlvbiB6YnQoZSx0LHIpe2lmKCFyKXRocm93IG5ldyBFcnJvcigiYCIrZSsiYCBmaW5pc2hlZCBhc3luYy4gVXNlIGAiK3QrImAgaW5zdGVhZCIpfWZ1bmN0aW9uIHllZShlKXtyZXR1cm4gVkpyKGUpP2U6bmV3IGViKGUpfWZ1bmN0aW9uIFZKcihlKXtyZXR1cm4hIShlJiZ0eXBlb2YgZT09Im9iamVjdCImJiJtZXNzYWdlImluIGUmJiJtZXNzYWdlcyJpbiBlKX1mdW5jdGlvbiBVSnIoZSl7cmV0dXJuIHR5cGVvZiBlPT0ic3RyaW5nInx8V0pyKGUpfWZ1bmN0aW9uIFdKcihlKXtyZXR1cm4hIShlJiZ0eXBlb2YgZT09Im9iamVjdCImJiJieXRlTGVuZ3RoImluIGUmJiJieXRlT2Zmc2V0ImluIGUpfXZhciB3ZWUsakpyLGRmZSx0YixDYnQ9bCgoKT0+e1p4dCgpO3dlZT1BcihpYnQoKSwxKTtCMCgpO29idCgpO2xidCgpO3didCgpO2tidCgpO2pKcj17fS5oYXNPd25Qcm9wZXJ0eSxkZmU9Y2xhc3MgZSBleHRlbmRzIE1idHtjb25zdHJ1Y3Rvcigpe3N1cGVyKCJjb3B5IiksdGhpcy5Db21waWxlcj12b2lkIDAsdGhpcy5QYXJzZXI9dm9pZCAwLHRoaXMuYXR0YWNoZXJzPVtdLHRoaXMuY29tcGlsZXI9dm9pZCAwLHRoaXMuZnJlZXplSW5kZXg9LTEsdGhpcy5mcm96ZW49dm9pZCAwLHRoaXMubmFtZXNwYWNlPXt9LHRoaXMucGFyc2VyPXZvaWQgMCx0aGlzLnRyYW5zZm9ybWVycz1hZmUoKX1jb3B5KCl7bGV0IHQ9bmV3IGUscj0tMTtmb3IoOysrcjx0aGlzLmF0dGFjaGVycy5sZW5ndGg7KXtsZXQgYT10aGlzLmF0dGFjaGVyc1tyXTt0LnVzZSguLi5hKX1yZXR1cm4gdC5kYXRhKCgwLHdlZS5kZWZhdWx0KSghMCx7fSx0aGlzLm5hbWVzcGFjZSkpLHR9ZGF0YSh0LHIpe3JldHVybiB0eXBlb2YgdD09InN0cmluZyI/YXJndW1lbnRzLmxlbmd0aD09PTI/KHBmZSgiZGF0YSIsdGhpcy5mcm96ZW4pLHRoaXMubmFtZXNwYWNlW3RdPXIsdGhpcyk6akpyLmNhbGwodGhpcy5uYW1lc3BhY2UsdCkmJnRoaXMubmFtZXNwYWNlW3RdfHx2b2lkIDA6dD8ocGZlKCJkYXRhIix0aGlzLmZyb3plbiksdGhpcy5uYW1lc3BhY2U9dCx0aGlzKTp0aGlzLm5hbWVzcGFjZX1mcmVlemUoKXtpZih0aGlzLmZyb3plbilyZXR1cm4gdGhpcztsZXQgdD10aGlzO2Zvcig7Kyt0aGlzLmZyZWV6ZUluZGV4PHRoaXMuYXR0YWNoZXJzLmxlbmd0aDspe2xldFtyLC4uLmFdPXRoaXMuYXR0YWNoZXJzW3RoaXMuZnJlZXplSW5kZXhdO2lmKGFbMF09PT0hMSljb250aW51ZTthWzBdPT09ITAmJihhWzBdPXZvaWQgMCk7bGV0IGk9ci5jYWxsKHQsLi4uYSk7dHlwZW9mIGk9PSJmdW5jdGlvbiImJnRoaXMudHJhbnNmb3JtZXJzLnVzZShpKX1yZXR1cm4gdGhpcy5mcm96ZW49ITAsdGhpcy5mcmVlemVJbmRleD1OdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFksdGhpc31wYXJzZSh0KXt0aGlzLmZyZWV6ZSgpO2xldCByPXllZSh0KSxhPXRoaXMucGFyc2VyfHx0aGlzLlBhcnNlcjtyZXR1cm4gdWZlKCJwYXJzZSIsYSksYShTdHJpbmcocikscil9cHJvY2Vzcyh0LHIpe2xldCBhPXRoaXM7cmV0dXJuIHRoaXMuZnJlZXplKCksdWZlKCJwcm9jZXNzIix0aGlzLnBhcnNlcnx8dGhpcy5QYXJzZXIpLGZmZSgicHJvY2VzcyIsdGhpcy5jb21waWxlcnx8dGhpcy5Db21waWxlcikscj9pKHZvaWQgMCxyKTpuZXcgUHJvbWlzZShpKTtmdW5jdGlvbiBpKG8sbil7bGV0IHM9eWVlKHQpLGM9YS5wYXJzZShzKTthLnJ1bihjLHMsZnVuY3Rpb24oZix1LHApe2lmKGZ8fCF1fHwhcClyZXR1cm4gZChmKTtsZXQgaD11LGI9YS5zdHJpbmdpZnkoaCxwKTtVSnIoYik/cC52YWx1ZT1iOnAucmVzdWx0PWIsZChmLHApfSk7ZnVuY3Rpb24gZChmLHUpe2Z8fCF1P24oZik6bz9vKHUpOnIodm9pZCAwLHUpfX19cHJvY2Vzc1N5bmModCl7bGV0IHI9ITEsYTtyZXR1cm4gdGhpcy5mcmVlemUoKSx1ZmUoInByb2Nlc3NTeW5jIix0aGlzLnBhcnNlcnx8dGhpcy5QYXJzZXIpLGZmZSgicHJvY2Vzc1N5bmMiLHRoaXMuY29tcGlsZXJ8fHRoaXMuQ29tcGlsZXIpLHRoaXMucHJvY2Vzcyh0LGkpLHpidCgicHJvY2Vzc1N5bmMiLCJwcm9jZXNzIixyKSxhO2Z1bmN0aW9uIGkobyxuKXtyPSEwLHJmZShvKSxhPW59fXJ1bih0LHIsYSl7U2J0KHQpLHRoaXMuZnJlZXplKCk7bGV0IGk9dGhpcy50cmFuc2Zvcm1lcnM7cmV0dXJuIWEmJnR5cGVvZiByPT0iZnVuY3Rpb24iJiYoYT1yLHI9dm9pZCAwKSxhP28odm9pZCAwLGEpOm5ldyBQcm9taXNlKG8pO2Z1bmN0aW9uIG8obixzKXtsZXQgYz15ZWUocik7aS5ydW4odCxjLGQpO2Z1bmN0aW9uIGQoZix1LHApe2xldCBoPXV8fHQ7Zj9zKGYpOm4/bihoKTphKHZvaWQgMCxoLHApfX19cnVuU3luYyh0LHIpe2xldCBhPSExLGk7cmV0dXJuIHRoaXMucnVuKHQscixvKSx6YnQoInJ1blN5bmMiLCJydW4iLGEpLGk7ZnVuY3Rpb24gbyhuLHMpe3JmZShuKSxpPXMsYT0hMH19c3RyaW5naWZ5KHQscil7dGhpcy5mcmVlemUoKTtsZXQgYT15ZWUociksaT10aGlzLmNvbXBpbGVyfHx0aGlzLkNvbXBpbGVyO3JldHVybiBmZmUoInN0cmluZ2lmeSIsaSksU2J0KHQpLGkodCxhKX11c2UodCwuLi5yKXtsZXQgYT10aGlzLmF0dGFjaGVycyxpPXRoaXMubmFtZXNwYWNlO2lmKHBmZSgidXNlIix0aGlzLmZyb3plbiksdCE9bnVsbClpZih0eXBlb2YgdD09ImZ1bmN0aW9uIiljKHQscik7ZWxzZSBpZih0eXBlb2YgdD09Im9iamVjdCIpQXJyYXkuaXNBcnJheSh0KT9zKHQpOm4odCk7ZWxzZSB0aHJvdyBuZXcgVHlwZUVycm9yKCJFeHBlY3RlZCB1c2FibGUgdmFsdWUsIG5vdCBgIit0KyJgIik7cmV0dXJuIHRoaXM7ZnVuY3Rpb24gbyhkKXtpZih0eXBlb2YgZD09ImZ1bmN0aW9uIiljKGQsW10pO2Vsc2UgaWYodHlwZW9mIGQ9PSJvYmplY3QiKWlmKEFycmF5LmlzQXJyYXkoZCkpe2xldFtmLC4uLnVdPWQ7YyhmLHUpfWVsc2UgbihkKTtlbHNlIHRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkIHVzYWJsZSB2YWx1ZSwgbm90IGAiK2QrImAiKX1mdW5jdGlvbiBuKGQpe2lmKCEoInBsdWdpbnMiaW4gZCkmJiEoInNldHRpbmdzImluIGQpKXRocm93IG5ldyBFcnJvcigiRXhwZWN0ZWQgdXNhYmxlIHZhbHVlIGJ1dCByZWNlaXZlZCBhbiBlbXB0eSBwcmVzZXQsIHdoaWNoIGlzIHByb2JhYmx5IGEgbWlzdGFrZTogcHJlc2V0cyB0eXBpY2FsbHkgY29tZSB3aXRoIGBwbHVnaW5zYCBhbmQgc29tZXRpbWVzIHdpdGggYHNldHRpbmdzYCwgYnV0IHRoaXMgaGFzIG5laXRoZXIiKTtzKGQucGx1Z2lucyksZC5zZXR0aW5ncyYmKGkuc2V0dGluZ3M9KDAsd2VlLmRlZmF1bHQpKCEwLGkuc2V0dGluZ3MsZC5zZXR0aW5ncykpfWZ1bmN0aW9uIHMoZCl7bGV0IGY9LTE7aWYoZCE9bnVsbClpZihBcnJheS5pc0FycmF5KGQpKWZvcig7KytmPGQubGVuZ3RoOyl7bGV0IHU9ZFtmXTtvKHUpfWVsc2UgdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBsaXN0IG9mIHBsdWdpbnMsIG5vdCBgIitkKyJgIil9ZnVuY3Rpb24gYyhkLGYpe2xldCB1PS0xLHA9LTE7Zm9yKDsrK3U8YS5sZW5ndGg7KWlmKGFbdV1bMF09PT1kKXtwPXU7YnJlYWt9aWYocD09PS0xKWEucHVzaChbZCwuLi5mXSk7ZWxzZSBpZihmLmxlbmd0aD4wKXtsZXRbaCwuLi5iXT1mLHg9YVtwXVsxXTtLeCh4KSYmS3goaCkmJihoPSgwLHdlZS5kZWZhdWx0KSghMCx4LGgpKSxhW3BdPVtkLGgsLi4uYl19fX19LHRiPW5ldyBkZmUoKS5mcmVlemUoKX0pO3ZhciBfYnQ9bCgoKT0+e0NidCgpfSk7ZnVuY3Rpb24gbW0oZSx0KXtsZXQgcj1TdHJpbmcoZSk7aWYodHlwZW9mIHQhPSJzdHJpbmciKXRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkIGNoYXJhY3RlciIpO2xldCBhPTAsaT1yLmluZGV4T2YodCk7Zm9yKDtpIT09LTE7KWErKyxpPXIuaW5kZXhPZih0LGkrdC5sZW5ndGgpO3JldHVybiBhfXZhciBoZmU9bCgoKT0+e30pO2Z1bmN0aW9uIHdkKGUpe3JldHVybiBlIT09bnVsbCYmKGU8MzJ8fGU9PT0xMjcpfWZ1bmN0aW9uIGV0KGUpe3JldHVybiBlIT09bnVsbCYmZTwtMn1mdW5jdGlvbiBvcihlKXtyZXR1cm4gZSE9PW51bGwmJihlPDB8fGU9PT0zMil9ZnVuY3Rpb24geHQoZSl7cmV0dXJuIGU9PT0tMnx8ZT09PS0xfHxlPT09MzJ9ZnVuY3Rpb24gcTAoZSl7cmV0dXJuIHQ7ZnVuY3Rpb24gdChyKXtyZXR1cm4gciE9PW51bGwmJnI+LTEmJmUudGVzdChTdHJpbmcuZnJvbUNoYXJDb2RlKHIpKX19dmFyIFRpLEhhLFRidCxyYixMYnQsRGJ0LE1kLHYyLHVyPWwoKCk9PntUaT1xMCgvW0EtWmEtel0vKSxIYT1xMCgvW1xkQS1aYS16XS8pLFRidD1xMCgvWyMtJyorXC0tOT0/QS1aXi1+XS8pO3JiPXEwKC9cZC8pLExidD1xMCgvW1xkQS1GYS1mXS8pLERidD1xMCgvWyEtLzotQFstYHstfl0vKTtNZD1xMCgvXHB7UH18XHB7U30vdSksdjI9cTAoL1xzLyl9KTtmdW5jdGlvbiBHSnIoZSl7bGV0IHQ9W10scj0tMTtmb3IoOysrcjxlLmxlbmd0aDspdFtyXT1IbChlW3JdKTtyZXR1cm4gTWVlKGEpO2Z1bmN0aW9uIGEoLi4uaSl7bGV0IG89LTE7Zm9yKDsrK288dC5sZW5ndGg7KWlmKHRbb10uYXBwbHkodGhpcyxpKSlyZXR1cm4hMDtyZXR1cm4hMX19ZnVuY3Rpb24gWUpyKGUpe2xldCB0PWU7cmV0dXJuIE1lZShyKTtmdW5jdGlvbiByKGEpe2xldCBpPWEsbztmb3IobyBpbiBlKWlmKGlbb10hPT10W29dKXJldHVybiExO3JldHVybiEwfX1mdW5jdGlvbiBaSnIoZSl7cmV0dXJuIE1lZSh0KTtmdW5jdGlvbiB0KHIpe3JldHVybiByJiZyLnR5cGU9PT1lfX1mdW5jdGlvbiBNZWUoZSl7cmV0dXJuIHQ7ZnVuY3Rpb24gdChyLGEsaSl7cmV0dXJuISEoQWJ0KHIpJiZlLmNhbGwodGhpcyxyLHR5cGVvZiBhPT0ibnVtYmVyIj9hOnZvaWQgMCxpfHx2b2lkIDApKX19ZnVuY3Rpb24gWEpyKCl7cmV0dXJuITB9ZnVuY3Rpb24gQWJ0KGUpe3JldHVybiBlIT09bnVsbCYmdHlwZW9mIGU9PSJvYmplY3QiJiYidHlwZSJpbiBlfXZhciBFYnQsSGwsJGJ0PWwoKCk9PntFYnQ9KGZ1bmN0aW9uKGUsdCxyLGEsaSl7bGV0IG89SGwodCk7aWYociE9bnVsbCYmKHR5cGVvZiByIT0ibnVtYmVyInx8cjwwfHxyPT09TnVtYmVyLlBPU0lUSVZFX0lORklOSVRZKSl0aHJvdyBuZXcgRXJyb3IoIkV4cGVjdGVkIHBvc2l0aXZlIGZpbml0ZSBpbmRleCIpO2lmKGEhPW51bGwmJighRWJ0KGEpfHwhYS5jaGlsZHJlbikpdGhyb3cgbmV3IEVycm9yKCJFeHBlY3RlZCBwYXJlbnQgbm9kZSIpO2lmKGE9PW51bGwhPShyPT1udWxsKSl0aHJvdyBuZXcgRXJyb3IoIkV4cGVjdGVkIGJvdGggcGFyZW50IGFuZCBpbmRleCIpO3JldHVybiBBYnQoZSk/by5jYWxsKGksZSxyLGEpOiExfSksSGw9KGZ1bmN0aW9uKGUpe2lmKGU9PW51bGwpcmV0dXJuIFhKcjtpZih0eXBlb2YgZT09ImZ1bmN0aW9uIilyZXR1cm4gTWVlKGUpO2lmKHR5cGVvZiBlPT0ib2JqZWN0IilyZXR1cm4gQXJyYXkuaXNBcnJheShlKT9HSnIoZSk6WUpyKGUpO2lmKHR5cGVvZiBlPT0ic3RyaW5nIilyZXR1cm4gWkpyKGUpO3Rocm93IG5ldyBFcnJvcigiRXhwZWN0ZWQgZnVuY3Rpb24sIHN0cmluZywgb3Igb2JqZWN0IGFzIHRlc3QiKX0pfSk7dmFyIGtlZT1sKCgpPT57JGJ0KCl9KTt2YXIgUGJ0PWwoKCk9Pnt9KTtmdW5jdGlvbiBhYihlLHQscixhKXtsZXQgaTt0eXBlb2YgdD09ImZ1bmN0aW9uIiYmdHlwZW9mIHIhPSJmdW5jdGlvbiI/KGE9cixyPXQpOmk9dDtsZXQgbz1IbChpKSxuPWE/LTE6MTtzKGUsdm9pZCAwLFtdKSgpO2Z1bmN0aW9uIHMoYyxkLGYpe2xldCB1PWMmJnR5cGVvZiBjPT0ib2JqZWN0Ij9jOnt9O2lmKHR5cGVvZiB1LnR5cGU9PSJzdHJpbmciKXtsZXQgaD10eXBlb2YgdS50YWdOYW1lPT0ic3RyaW5nIj91LnRhZ05hbWU6dHlwZW9mIHUubmFtZT09InN0cmluZyI/dS5uYW1lOnZvaWQgMDtPYmplY3QuZGVmaW5lUHJvcGVydHkocCwibmFtZSIse3ZhbHVlOiJub2RlICgiKyhjLnR5cGUrKGg/IjwiK2grIj4iOiIiKSkrIikifSl9cmV0dXJuIHA7ZnVuY3Rpb24gcCgpe2xldCBoPUlidCxiLHgsZztpZigoIXR8fG8oYyxkLGZbZi5sZW5ndGgtMV18fHZvaWQgMCkpJiYoaD1RSnIocihjLGYpKSxoWzBdPT09a2QpKXJldHVybiBoO2lmKCJjaGlsZHJlbiJpbiBjJiZjLmNoaWxkcmVuKXtsZXQgdj1jO2lmKHYuY2hpbGRyZW4mJmhbMF0hPT16ZWUpZm9yKHg9KGE/di5jaGlsZHJlbi5sZW5ndGg6LTEpK24sZz1mLmNvbmNhdCh2KTt4Pi0xJiZ4PHYuY2hpbGRyZW4ubGVuZ3RoOyl7bGV0IHc9di5jaGlsZHJlblt4XTtpZihiPXModyx4LGcpKCksYlswXT09PWtkKXJldHVybiBiO3g9dHlwZW9mIGJbMV09PSJudW1iZXIiP2JbMV06eCtufX1yZXR1cm4gaH19fWZ1bmN0aW9uIFFKcihlKXtyZXR1cm4gQXJyYXkuaXNBcnJheShlKT9lOnR5cGVvZiBlPT0ibnVtYmVyIj9bU2VlLGVdOmU9PW51bGw/SWJ0OltlXX12YXIgSWJ0LFNlZSxrZCx6ZWUsTmJ0PWwoKCk9PntrZWUoKTtQYnQoKTtJYnQ9W10sU2VlPSEwLGtkPSExLHplZT0ic2tpcCJ9KTt2YXIgQ2VlPWwoKCk9PntOYnQoKX0pO2Z1bmN0aW9uIG1mZShlLHQscil7bGV0IGk9SGwoKHJ8fHt9KS5pZ25vcmV8fFtdKSxvPUtKcih0KSxuPS0xO2Zvcig7KytuPG8ubGVuZ3RoOylhYihlLCJ0ZXh0IixzKTtmdW5jdGlvbiBzKGQsZil7bGV0IHU9LTEscDtmb3IoOysrdTxmLmxlbmd0aDspe2xldCBoPWZbdV0sYj1wP3AuY2hpbGRyZW46dm9pZCAwO2lmKGkoaCxiP2IuaW5kZXhPZihoKTp2b2lkIDAscCkpcmV0dXJuO3A9aH1pZihwKXJldHVybiBjKGQsZil9ZnVuY3Rpb24gYyhkLGYpe2xldCB1PWZbZi5sZW5ndGgtMV0scD1vW25dWzBdLGg9b1tuXVsxXSxiPTAsZz11LmNoaWxkcmVuLmluZGV4T2YoZCksdj0hMSx3PVtdO3AubGFzdEluZGV4PTA7bGV0IE09cC5leGVjKGQudmFsdWUpO2Zvcig7TTspe2xldCBGPU0uaW5kZXgsQz17aW5kZXg6TS5pbmRleCxpbnB1dDpNLmlucHV0LHN0YWNrOlsuLi5mLGRdfSxrPWgoLi4uTSxDKTtpZih0eXBlb2Ygaz09InN0cmluZyImJihrPWsubGVuZ3RoPjA/e3R5cGU6InRleHQiLHZhbHVlOmt9OnZvaWQgMCksaz09PSExP3AubGFzdEluZGV4PUYrMTooYiE9PUYmJncucHVzaCh7dHlwZToidGV4dCIsdmFsdWU6ZC52YWx1ZS5zbGljZShiLEYpfSksQXJyYXkuaXNBcnJheShrKT93LnB1c2goLi4uayk6ayYmdy5wdXNoKGspLGI9RitNWzBdLmxlbmd0aCx2PSEwKSwhcC5nbG9iYWwpYnJlYWs7TT1wLmV4ZWMoZC52YWx1ZSl9cmV0dXJuIHY/KGI8ZC52YWx1ZS5sZW5ndGgmJncucHVzaCh7dHlwZToidGV4dCIsdmFsdWU6ZC52YWx1ZS5zbGljZShiKX0pLHUuY2hpbGRyZW4uc3BsaWNlKGcsMSwuLi53KSk6dz1bZF0sZyt3Lmxlbmd0aH19ZnVuY3Rpb24gS0pyKGUpe2xldCB0PVtdO2lmKCFBcnJheS5pc0FycmF5KGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkIGZpbmQgYW5kIHJlcGxhY2UgdHVwbGUgb3IgbGlzdCBvZiB0dXBsZXMiKTtsZXQgcj0hZVswXXx8QXJyYXkuaXNBcnJheShlWzBdKT9lOltlXSxhPS0xO2Zvcig7KythPHIubGVuZ3RoOyl7bGV0IGk9clthXTt0LnB1c2goW0pKcihpWzBdKSxlZWEoaVsxXSldKX1yZXR1cm4gdH1mdW5jdGlvbiBKSnIoZSl7cmV0dXJuIHR5cGVvZiBlPT0ic3RyaW5nIj9uZXcgUmVnRXhwKGozKGUpLCJnIik6ZX1mdW5jdGlvbiBlZWEoZSl7cmV0dXJuIHR5cGVvZiBlPT0iZnVuY3Rpb24iP2U6ZnVuY3Rpb24oKXtyZXR1cm4gZX19dmFyIEZidD1sKCgpPT57aFEoKTtDZWUoKTtrZWUoKX0pO3ZhciBPYnQ9bCgoKT0+e0ZidCgpfSk7ZnVuY3Rpb24gdmZlKCl7cmV0dXJue3RyYW5zZm9ybXM6W25lYV0sZW50ZXI6e2xpdGVyYWxBdXRvbGluazp0ZWEsbGl0ZXJhbEF1dG9saW5rRW1haWw6YmZlLGxpdGVyYWxBdXRvbGlua0h0dHA6YmZlLGxpdGVyYWxBdXRvbGlua1d3dzpiZmV9LGV4aXQ6e2xpdGVyYWxBdXRvbGluazpvZWEsbGl0ZXJhbEF1dG9saW5rRW1haWw6aWVhLGxpdGVyYWxBdXRvbGlua0h0dHA6cmVhLGxpdGVyYWxBdXRvbGlua1d3dzphZWF9fX1mdW5jdGlvbiB5ZmUoKXtyZXR1cm57dW5zYWZlOlt7Y2hhcmFjdGVyOiJAIixiZWZvcmU6IlsrXFwtLlxcd10iLGFmdGVyOiJbXFwtLlxcd10iLGluQ29uc3RydWN0OmdmZSxub3RJbkNvbnN0cnVjdDp4ZmV9LHtjaGFyYWN0ZXI6Ii4iLGJlZm9yZToiW1d3XSIsYWZ0ZXI6IltcXC0uXFx3XSIsaW5Db25zdHJ1Y3Q6Z2ZlLG5vdEluQ29uc3RydWN0OnhmZX0se2NoYXJhY3RlcjoiOiIsYmVmb3JlOiJbcHNdIixhZnRlcjoiXFwvIixpbkNvbnN0cnVjdDpnZmUsbm90SW5Db25zdHJ1Y3Q6eGZlfV19fWZ1bmN0aW9uIHRlYShlKXt0aGlzLmVudGVyKHt0eXBlOiJsaW5rIix0aXRsZTpudWxsLHVybDoiIixjaGlsZHJlbjpbXX0sZSl9ZnVuY3Rpb24gYmZlKGUpe3RoaXMuY29uZmlnLmVudGVyLmF1dG9saW5rUHJvdG9jb2wuY2FsbCh0aGlzLGUpfWZ1bmN0aW9uIHJlYShlKXt0aGlzLmNvbmZpZy5leGl0LmF1dG9saW5rUHJvdG9jb2wuY2FsbCh0aGlzLGUpfWZ1bmN0aW9uIGFlYShlKXt0aGlzLmNvbmZpZy5leGl0LmRhdGEuY2FsbCh0aGlzLGUpO2xldCB0PXRoaXMuc3RhY2tbdGhpcy5zdGFjay5sZW5ndGgtMV07dC50eXBlLHQudXJsPSJodHRwOi8vIit0aGlzLnNsaWNlU2VyaWFsaXplKGUpfWZ1bmN0aW9uIGllYShlKXt0aGlzLmNvbmZpZy5leGl0LmF1dG9saW5rRW1haWwuY2FsbCh0aGlzLGUpfWZ1bmN0aW9uIG9lYShlKXt0aGlzLmV4aXQoZSl9ZnVuY3Rpb24gbmVhKGUpe21mZShlLFtbLyhodHRwcz86XC9cL3x3d3coPz1cLikpKFstLlx3XSspKFteIFx0XHJcbl0qKS9naSxzZWFdLFsvKD88PV58XHN8XHB7UH18XHB7U30pKFstLlx3K10rKUAoWy1cd10rKD86XC5bLVx3XSspKykvZ3UsbGVhXV0se2lnbm9yZTpbImxpbmsiLCJsaW5rUmVmZXJlbmNlIl19KX1mdW5jdGlvbiBzZWEoZSx0LHIsYSxpKXtsZXQgbz0iIjtpZighUmJ0KGkpfHwoL153L2kudGVzdCh0KSYmKHI9dCtyLHQ9IiIsbz0iaHR0cDovLyIpLCFjZWEocikpKXJldHVybiExO2xldCBuPWRlYShyK2EpO2lmKCFuWzBdKXJldHVybiExO2xldCBzPXt0eXBlOiJsaW5rIix0aXRsZTpudWxsLHVybDpvK3QrblswXSxjaGlsZHJlbjpbe3R5cGU6InRleHQiLHZhbHVlOnQrblswXX1dfTtyZXR1cm4gblsxXT9bcyx7dHlwZToidGV4dCIsdmFsdWU6blsxXX1dOnN9ZnVuY3Rpb24gbGVhKGUsdCxyLGEpe3JldHVybiFSYnQoYSwhMCl8fC9bLVxkX10kLy50ZXN0KHIpPyExOnt0eXBlOiJsaW5rIix0aXRsZTpudWxsLHVybDoibWFpbHRvOiIrdCsiQCIrcixjaGlsZHJlbjpbe3R5cGU6InRleHQiLHZhbHVlOnQrIkAiK3J9XX19ZnVuY3Rpb24gY2VhKGUpe2xldCB0PWUuc3BsaXQoIi4iKTtyZXR1cm4hKHQubGVuZ3RoPDJ8fHRbdC5sZW5ndGgtMV0mJigvXy8udGVzdCh0W3QubGVuZ3RoLTFdKXx8IS9bYS16QS1aXGRdLy50ZXN0KHRbdC5sZW5ndGgtMV0pKXx8dFt0Lmxlbmd0aC0yXSYmKC9fLy50ZXN0KHRbdC5sZW5ndGgtMl0pfHwhL1thLXpBLVpcZF0vLnRlc3QodFt0Lmxlbmd0aC0yXSkpKX1mdW5jdGlvbiBkZWEoZSl7bGV0IHQ9L1shIiYnKSwuOjs8Pj9cXX1dKyQvLmV4ZWMoZSk7aWYoIXQpcmV0dXJuW2Usdm9pZCAwXTtlPWUuc2xpY2UoMCx0LmluZGV4KTtsZXQgcj10WzBdLGE9ci5pbmRleE9mKCIpIiksaT1tbShlLCIoIiksbz1tbShlLCIpIik7Zm9yKDthIT09LTEmJmk+bzspZSs9ci5zbGljZSgwLGErMSkscj1yLnNsaWNlKGErMSksYT1yLmluZGV4T2YoIikiKSxvKys7cmV0dXJuW2Uscl19ZnVuY3Rpb24gUmJ0KGUsdCl7bGV0IHI9ZS5pbnB1dC5jaGFyQ29kZUF0KGUuaW5kZXgtMSk7cmV0dXJuKGUuaW5kZXg9PT0wfHx2MihyKXx8TWQocikpJiYoIXR8fHIhPT00Nyl9dmFyIGdmZSx4ZmUsQmJ0PWwoKCk9PntoZmUoKTtCMCgpO3VyKCk7T2J0KCk7Z2ZlPSJwaHJhc2luZyIseGZlPVsiYXV0b2xpbmsiLCJsaW5rIiwiaW1hZ2UiLCJsYWJlbCJdfSk7dmFyIEhidD1sKCgpPT57QmJ0KCl9KTtmdW5jdGlvbiBxYShlKXtyZXR1cm4gZS5yZXBsYWNlKC9bXHRcblxyIF0rL2csIiAiKS5yZXBsYWNlKC9eIHwgJC9nLCIiKS50b0xvd2VyQ2FzZSgpLnRvVXBwZXJDYXNlKCl9dmFyIGowPWwoKCk9Pnt9KTtmdW5jdGlvbiB1ZWEoKXt0aGlzLmJ1ZmZlcigpfWZ1bmN0aW9uIGZlYShlKXt0aGlzLmVudGVyKHt0eXBlOiJmb290bm90ZVJlZmVyZW5jZSIsaWRlbnRpZmllcjoiIixsYWJlbDoiIn0sZSl9ZnVuY3Rpb24gcGVhKCl7dGhpcy5idWZmZXIoKX1mdW5jdGlvbiBoZWEoZSl7dGhpcy5lbnRlcih7dHlwZToiZm9vdG5vdGVEZWZpbml0aW9uIixpZGVudGlmaWVyOiIiLGxhYmVsOiIiLGNoaWxkcmVuOltdfSxlKX1mdW5jdGlvbiBtZWEoZSl7bGV0IHQ9dGhpcy5yZXN1bWUoKSxyPXRoaXMuc3RhY2tbdGhpcy5zdGFjay5sZW5ndGgtMV07ci50eXBlLHIuaWRlbnRpZmllcj1xYSh0aGlzLnNsaWNlU2VyaWFsaXplKGUpKS50b0xvd2VyQ2FzZSgpLHIubGFiZWw9dH1mdW5jdGlvbiBnZWEoZSl7dGhpcy5leGl0KGUpfWZ1bmN0aW9uIHhlYShlKXtsZXQgdD10aGlzLnJlc3VtZSgpLHI9dGhpcy5zdGFja1t0aGlzLnN0YWNrLmxlbmd0aC0xXTtyLnR5cGUsci5pZGVudGlmaWVyPXFhKHRoaXMuc2xpY2VTZXJpYWxpemUoZSkpLnRvTG93ZXJDYXNlKCksci5sYWJlbD10fWZ1bmN0aW9uIGJlYShlKXt0aGlzLmV4aXQoZSl9ZnVuY3Rpb24gdmVhKCl7cmV0dXJuIlsifWZ1bmN0aW9uIHFidChlLHQscixhKXtsZXQgaT1yLmNyZWF0ZVRyYWNrZXIoYSksbz1pLm1vdmUoIlteIiksbj1yLmVudGVyKCJmb290bm90ZVJlZmVyZW5jZSIpLHM9ci5lbnRlcigicmVmZXJlbmNlIik7cmV0dXJuIG8rPWkubW92ZShyLnNhZmUoci5hc3NvY2lhdGlvbklkKGUpLHthZnRlcjoiXSIsYmVmb3JlOm99KSkscygpLG4oKSxvKz1pLm1vdmUoIl0iKSxvfWZ1bmN0aW9uIHdmZSgpe3JldHVybntlbnRlcjp7Z2ZtRm9vdG5vdGVDYWxsU3RyaW5nOnVlYSxnZm1Gb290bm90ZUNhbGw6ZmVhLGdmbUZvb3Rub3RlRGVmaW5pdGlvbkxhYmVsU3RyaW5nOnBlYSxnZm1Gb290bm90ZURlZmluaXRpb246aGVhfSxleGl0OntnZm1Gb290bm90ZUNhbGxTdHJpbmc6bWVhLGdmbUZvb3Rub3RlQ2FsbDpnZWEsZ2ZtRm9vdG5vdGVEZWZpbml0aW9uTGFiZWxTdHJpbmc6eGVhLGdmbUZvb3Rub3RlRGVmaW5pdGlvbjpiZWF9fX1mdW5jdGlvbiBNZmUoZSl7bGV0IHQ9ITE7cmV0dXJuIGUmJmUuZmlyc3RMaW5lQmxhbmsmJih0PSEwKSx7aGFuZGxlcnM6e2Zvb3Rub3RlRGVmaW5pdGlvbjpyLGZvb3Rub3RlUmVmZXJlbmNlOnFidH0sdW5zYWZlOlt7Y2hhcmFjdGVyOiJbIixpbkNvbnN0cnVjdDpbImxhYmVsIiwicGhyYXNpbmciLCJyZWZlcmVuY2UiXX1dfTtmdW5jdGlvbiByKGEsaSxvLG4pe2xldCBzPW8uY3JlYXRlVHJhY2tlcihuKSxjPXMubW92ZSgiW14iKSxkPW8uZW50ZXIoImZvb3Rub3RlRGVmaW5pdGlvbiIpLGY9by5lbnRlcigibGFiZWwiKTtyZXR1cm4gYys9cy5tb3ZlKG8uc2FmZShvLmFzc29jaWF0aW9uSWQoYSkse2JlZm9yZTpjLGFmdGVyOiJdIn0pKSxmKCksYys9cy5tb3ZlKCJdOiIpLGEuY2hpbGRyZW4mJmEuY2hpbGRyZW4ubGVuZ3RoPjAmJihzLnNoaWZ0KDQpLGMrPXMubW92ZSgodD9gCmA6IiAiKStvLmluZGVudExpbmVzKG8uY29udGFpbmVyRmxvdyhhLHMuY3VycmVudCgpKSx0P2pidDp5ZWEpKSksZCgpLGN9fWZ1bmN0aW9uIHllYShlLHQscil7cmV0dXJuIHQ9PT0wP2U6amJ0KGUsdCxyKX1mdW5jdGlvbiBqYnQoZSx0LHIpe3JldHVybihyPyIiOiIgICAgIikrZX12YXIgVmJ0PWwoKCk9PntCMCgpO2owKCk7cWJ0LnBlZWs9dmVhfSk7dmFyIFVidD1sKCgpPT57VmJ0KCl9KTtmdW5jdGlvbiBrZmUoKXtyZXR1cm57Y2FuQ29udGFpbkVvbHM6WyJkZWxldGUiXSxlbnRlcjp7c3RyaWtldGhyb3VnaDpNZWF9LGV4aXQ6e3N0cmlrZXRocm91Z2g6a2VhfX19ZnVuY3Rpb24gU2ZlKCl7cmV0dXJue3Vuc2FmZTpbe2NoYXJhY3RlcjoifiIsaW5Db25zdHJ1Y3Q6InBocmFzaW5nIixub3RJbkNvbnN0cnVjdDp3ZWF9XSxoYW5kbGVyczp7ZGVsZXRlOldidH19fWZ1bmN0aW9uIE1lYShlKXt0aGlzLmVudGVyKHt0eXBlOiJkZWxldGUiLGNoaWxkcmVuOltdfSxlKX1mdW5jdGlvbiBrZWEoZSl7dGhpcy5leGl0KGUpfWZ1bmN0aW9uIFdidChlLHQscixhKXtsZXQgaT1yLmNyZWF0ZVRyYWNrZXIoYSksbz1yLmVudGVyKCJzdHJpa2V0aHJvdWdoIiksbj1pLm1vdmUoIn5+Iik7cmV0dXJuIG4rPXIuY29udGFpbmVyUGhyYXNpbmcoZSx7Li4uaS5jdXJyZW50KCksYmVmb3JlOm4sYWZ0ZXI6In4ifSksbis9aS5tb3ZlKCJ+fiIpLG8oKSxufWZ1bmN0aW9uIFNlYSgpe3JldHVybiJ+In12YXIgd2VhLEdidD1sKCgpPT57d2VhPVsiYXV0b2xpbmsiLCJkZXN0aW5hdGlvbkxpdGVyYWwiLCJkZXN0aW5hdGlvblJhdyIsInJlZmVyZW5jZSIsInRpdGxlUXVvdGUiLCJ0aXRsZUFwb3N0cm9waGUiXTtXYnQucGVlaz1TZWF9KTt2YXIgWWJ0PWwoKCk9PntHYnQoKX0pO2Z1bmN0aW9uIHplYShlKXtyZXR1cm4gZS5sZW5ndGh9ZnVuY3Rpb24gWGJ0KGUsdCl7bGV0IHI9dHx8e30sYT0oci5hbGlnbnx8W10pLmNvbmNhdCgpLGk9ci5zdHJpbmdMZW5ndGh8fHplYSxvPVtdLG49W10scz1bXSxjPVtdLGQ9MCxmPS0xO2Zvcig7KytmPGUubGVuZ3RoOyl7bGV0IHg9W10sZz1bXSx2PS0xO2ZvcihlW2ZdLmxlbmd0aD5kJiYoZD1lW2ZdLmxlbmd0aCk7Kyt2PGVbZl0ubGVuZ3RoOyl7bGV0IHc9Q2VhKGVbZl1bdl0pO2lmKHIuYWxpZ25EZWxpbWl0ZXJzIT09ITEpe2xldCBNPWkodyk7Z1t2XT1NLChjW3ZdPT09dm9pZCAwfHxNPmNbdl0pJiYoY1t2XT1NKX14LnB1c2godyl9bltmXT14LHNbZl09Z31sZXQgdT0tMTtpZih0eXBlb2YgYT09Im9iamVjdCImJiJsZW5ndGgiaW4gYSlmb3IoOysrdTxkOylvW3VdPVpidChhW3VdKTtlbHNle2xldCB4PVpidChhKTtmb3IoOysrdTxkOylvW3VdPXh9dT0tMTtsZXQgcD1bXSxoPVtdO2Zvcig7Kyt1PGQ7KXtsZXQgeD1vW3VdLGc9IiIsdj0iIjt4PT09OTk/KGc9IjoiLHY9IjoiKTp4PT09MTA4P2c9IjoiOng9PT0xMTQmJih2PSI6Iik7bGV0IHc9ci5hbGlnbkRlbGltaXRlcnM9PT0hMT8xOk1hdGgubWF4KDEsY1t1XS1nLmxlbmd0aC12Lmxlbmd0aCksTT1nKyItIi5yZXBlYXQodykrdjtyLmFsaWduRGVsaW1pdGVycyE9PSExJiYodz1nLmxlbmd0aCt3K3YubGVuZ3RoLHc+Y1t1XSYmKGNbdV09dyksaFt1XT13KSxwW3VdPU19bi5zcGxpY2UoMSwwLHApLHMuc3BsaWNlKDEsMCxoKSxmPS0xO2xldCBiPVtdO2Zvcig7KytmPG4ubGVuZ3RoOyl7bGV0IHg9bltmXSxnPXNbZl07dT0tMTtsZXQgdj1bXTtmb3IoOysrdTxkOyl7bGV0IHc9eFt1XXx8IiIsTT0iIixGPSIiO2lmKHIuYWxpZ25EZWxpbWl0ZXJzIT09ITEpe2xldCBDPWNbdV0tKGdbdV18fDApLGs9b1t1XTtrPT09MTE0P009IiAiLnJlcGVhdChDKTprPT09OTk/QyUyPyhNPSIgIi5yZXBlYXQoQy8yKy41KSxGPSIgIi5yZXBlYXQoQy8yLS41KSk6KE09IiAiLnJlcGVhdChDLzIpLEY9TSk6Rj0iICIucmVwZWF0KEMpfXIuZGVsaW1pdGVyU3RhcnQhPT0hMSYmIXUmJnYucHVzaCgifCIpLHIucGFkZGluZyE9PSExJiYhKHIuYWxpZ25EZWxpbWl0ZXJzPT09ITEmJnc9PT0iIikmJihyLmRlbGltaXRlclN0YXJ0IT09ITF8fHUpJiZ2LnB1c2goIiAiKSxyLmFsaWduRGVsaW1pdGVycyE9PSExJiZ2LnB1c2goTSksdi5wdXNoKHcpLHIuYWxpZ25EZWxpbWl0ZXJzIT09ITEmJnYucHVzaChGKSxyLnBhZGRpbmchPT0hMSYmdi5wdXNoKCIgIiksKHIuZGVsaW1pdGVyRW5kIT09ITF8fHUhPT1kLTEpJiZ2LnB1c2goInwiKX1iLnB1c2goci5kZWxpbWl0ZXJFbmQ9PT0hMT92LmpvaW4oIiIpLnJlcGxhY2UoLyArJC8sIiIpOnYuam9pbigiIikpfXJldHVybiBiLmpvaW4oYApgKX1mdW5jdGlvbiBDZWEoZSl7cmV0dXJuIGU9PW51bGw/IiI6U3RyaW5nKGUpfWZ1bmN0aW9uIFpidChlKXtsZXQgdD10eXBlb2YgZT09InN0cmluZyI/ZS5jb2RlUG9pbnRBdCgwKTowO3JldHVybiB0PT09Njd8fHQ9PT05OT85OTp0PT09NzZ8fHQ9PT0xMDg/MTA4OnQ9PT04Mnx8dD09PTExND8xMTQ6MH12YXIgUWJ0PWwoKCk9Pnt9KTtmdW5jdGlvbiBfZWUoZSx0KXtsZXQgcj10fHx7fTtmdW5jdGlvbiBhKGksLi4ubyl7bGV0IG49YS5pbnZhbGlkLHM9YS5oYW5kbGVycztpZihpJiZLYnQuY2FsbChpLGUpKXtsZXQgYz1TdHJpbmcoaVtlXSk7bj1LYnQuY2FsbChzLGMpP3NbY106YS51bmtub3dufWlmKG4pcmV0dXJuIG4uY2FsbCh0aGlzLGksLi4ubyl9cmV0dXJuIGEuaGFuZGxlcnM9ci5oYW5kbGVyc3x8e30sYS5pbnZhbGlkPXIuaW52YWxpZCxhLnVua25vd249ci51bmtub3duLGF9dmFyIEtidCx6ZmU9bCgoKT0+e0tidD17fS5oYXNPd25Qcm9wZXJ0eX0pO2Z1bmN0aW9uIENmZShlLHQpe2xldCByPS0xLGE7aWYodC5leHRlbnNpb25zKWZvcig7KytyPHQuZXh0ZW5zaW9ucy5sZW5ndGg7KUNmZShlLHQuZXh0ZW5zaW9uc1tyXSk7Zm9yKGEgaW4gdClpZihfZWEuY2FsbCh0LGEpKXN3aXRjaChhKXtjYXNlImV4dGVuc2lvbnMiOmJyZWFrO2Nhc2UidW5zYWZlIjp7SmJ0KGVbYV0sdFthXSk7YnJlYWt9Y2FzZSJqb2luIjp7SmJ0KGVbYV0sdFthXSk7YnJlYWt9Y2FzZSJoYW5kbGVycyI6e1RlYShlW2FdLHRbYV0pO2JyZWFrfWRlZmF1bHQ6ZS5vcHRpb25zW2FdPXRbYV19cmV0dXJuIGV9ZnVuY3Rpb24gSmJ0KGUsdCl7dCYmZS5wdXNoKC4uLnQpfWZ1bmN0aW9uIFRlYShlLHQpe3QmJk9iamVjdC5hc3NpZ24oZSx0KX12YXIgX2VhLGV2dD1sKCgpPT57X2VhPXt9Lmhhc093blByb3BlcnR5fSk7ZnVuY3Rpb24gdHZ0KGUsdCxyLGEpe2xldCBpPXIuZW50ZXIoImJsb2NrcXVvdGUiKSxvPXIuY3JlYXRlVHJhY2tlcihhKTtvLm1vdmUoIj4gIiksby5zaGlmdCgyKTtsZXQgbj1yLmluZGVudExpbmVzKHIuY29udGFpbmVyRmxvdyhlLG8uY3VycmVudCgpKSxMZWEpO3JldHVybiBpKCksbn1mdW5jdGlvbiBMZWEoZSx0LHIpe3JldHVybiI+Iisocj8iIjoiICIpK2V9dmFyIHJ2dD1sKCgpPT57fSk7ZnVuY3Rpb24gVGVlKGUsdCl7cmV0dXJuIGF2dChlLHQuaW5Db25zdHJ1Y3QsITApJiYhYXZ0KGUsdC5ub3RJbkNvbnN0cnVjdCwhMSl9ZnVuY3Rpb24gYXZ0KGUsdCxyKXtpZih0eXBlb2YgdD09InN0cmluZyImJih0PVt0XSksIXR8fHQubGVuZ3RoPT09MClyZXR1cm4gcjtsZXQgYT0tMTtmb3IoOysrYTx0Lmxlbmd0aDspaWYoZS5pbmNsdWRlcyh0W2FdKSlyZXR1cm4hMDtyZXR1cm4hMX12YXIgX2ZlPWwoKCk9Pnt9KTtmdW5jdGlvbiBUZmUoZSx0LHIsYSl7bGV0IGk9LTE7Zm9yKDsrK2k8ci51bnNhZmUubGVuZ3RoOylpZihyLnVuc2FmZVtpXS5jaGFyYWN0ZXI9PT1gCmAmJlRlZShyLnN0YWNrLHIudW5zYWZlW2ldKSlyZXR1cm4vWyBcdF0vLnRlc3QoYS5iZWZvcmUpPyIiOiIgIjtyZXR1cm5gXFwKYH12YXIgaXZ0PWwoKCk9PntfZmUoKX0pO2Z1bmN0aW9uIG92dChlLHQpe2xldCByPVN0cmluZyhlKSxhPXIuaW5kZXhPZih0KSxpPWEsbz0wLG49MDtpZih0eXBlb2YgdCE9InN0cmluZyIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgc3Vic3RyaW5nIik7Zm9yKDthIT09LTE7KWE9PT1pPysrbz5uJiYobj1vKTpvPTEsaT1hK3QubGVuZ3RoLGE9ci5pbmRleE9mKHQsaSk7cmV0dXJuIG59dmFyIG52dD1sKCgpPT57fSk7ZnVuY3Rpb24gaWIoZSx0KXtyZXR1cm4hISh0Lm9wdGlvbnMuZmVuY2VzPT09ITEmJmUudmFsdWUmJiFlLmxhbmcmJi9bXiBcclxuXS8udGVzdChlLnZhbHVlKSYmIS9eW1x0IF0qKD86W1xyXG5dfCQpfCg/Ol58W1xyXG5dKVtcdCBdKiQvLnRlc3QoZS52YWx1ZSkpfXZhciBMZmU9bCgoKT0+e30pO2Z1bmN0aW9uIHN2dChlKXtsZXQgdD1lLm9wdGlvbnMuZmVuY2V8fCJgIjtpZih0IT09ImAiJiZ0IT09In4iKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IHNlcmlhbGl6ZSBjb2RlIHdpdGggYCIrdCsiYCBmb3IgYG9wdGlvbnMuZmVuY2VgLCBleHBlY3RlZCBgYCBgIGBgIG9yIGB+YCIpO3JldHVybiB0fXZhciBsdnQ9bCgoKT0+e30pO2Z1bmN0aW9uIGN2dChlLHQscixhKXtsZXQgaT1zdnQociksbz1lLnZhbHVlfHwiIixuPWk9PT0iYCI/IkdyYXZlQWNjZW50IjoiVGlsZGUiO2lmKGliKGUscikpe2xldCB1PXIuZW50ZXIoImNvZGVJbmRlbnRlZCIpLHA9ci5pbmRlbnRMaW5lcyhvLERlYSk7cmV0dXJuIHUoKSxwfWxldCBzPXIuY3JlYXRlVHJhY2tlcihhKSxjPWkucmVwZWF0KE1hdGgubWF4KG92dChvLGkpKzEsMykpLGQ9ci5lbnRlcigiY29kZUZlbmNlZCIpLGY9cy5tb3ZlKGMpO2lmKGUubGFuZyl7bGV0IHU9ci5lbnRlcihgY29kZUZlbmNlZExhbmcke259YCk7Zis9cy5tb3ZlKHIuc2FmZShlLmxhbmcse2JlZm9yZTpmLGFmdGVyOiIgIixlbmNvZGU6WyJgIl0sLi4ucy5jdXJyZW50KCl9KSksdSgpfWlmKGUubGFuZyYmZS5tZXRhKXtsZXQgdT1yLmVudGVyKGBjb2RlRmVuY2VkTWV0YSR7bn1gKTtmKz1zLm1vdmUoIiAiKSxmKz1zLm1vdmUoci5zYWZlKGUubWV0YSx7YmVmb3JlOmYsYWZ0ZXI6YApgLGVuY29kZTpbImAiXSwuLi5zLmN1cnJlbnQoKX0pKSx1KCl9cmV0dXJuIGYrPXMubW92ZShgCmApLG8mJihmKz1zLm1vdmUobytgCmApKSxmKz1zLm1vdmUoYyksZCgpLGZ9ZnVuY3Rpb24gRGVhKGUsdCxyKXtyZXR1cm4ocj8iIjoiICAgICIpK2V9dmFyIGR2dD1sKCgpPT57bnZ0KCk7TGZlKCk7bHZ0KCl9KTtmdW5jdGlvbiBnbShlKXtsZXQgdD1lLm9wdGlvbnMucXVvdGV8fCciJztpZih0IT09JyInJiZ0IT09IiciKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IHNlcmlhbGl6ZSB0aXRsZSB3aXRoIGAiK3QrImAgZm9yIGBvcHRpb25zLnF1b3RlYCwgZXhwZWN0ZWQgYFwiYCwgb3IgYCdgIik7cmV0dXJuIHR9dmFyIExlZT1sKCgpPT57fSk7ZnVuY3Rpb24gdXZ0KGUsdCxyLGEpe2xldCBpPWdtKHIpLG89aT09PSciJz8iUXVvdGUiOiJBcG9zdHJvcGhlIixuPXIuZW50ZXIoImRlZmluaXRpb24iKSxzPXIuZW50ZXIoImxhYmVsIiksYz1yLmNyZWF0ZVRyYWNrZXIoYSksZD1jLm1vdmUoIlsiKTtyZXR1cm4gZCs9Yy5tb3ZlKHIuc2FmZShyLmFzc29jaWF0aW9uSWQoZSkse2JlZm9yZTpkLGFmdGVyOiJdIiwuLi5jLmN1cnJlbnQoKX0pKSxkKz1jLm1vdmUoIl06ICIpLHMoKSwhZS51cmx8fC9bXDAtIFx1MDA3Rl0vLnRlc3QoZS51cmwpPyhzPXIuZW50ZXIoImRlc3RpbmF0aW9uTGl0ZXJhbCIpLGQrPWMubW92ZSgiPCIpLGQrPWMubW92ZShyLnNhZmUoZS51cmwse2JlZm9yZTpkLGFmdGVyOiI+IiwuLi5jLmN1cnJlbnQoKX0pKSxkKz1jLm1vdmUoIj4iKSk6KHM9ci5lbnRlcigiZGVzdGluYXRpb25SYXciKSxkKz1jLm1vdmUoci5zYWZlKGUudXJsLHtiZWZvcmU6ZCxhZnRlcjplLnRpdGxlPyIgIjpgCmAsLi4uYy5jdXJyZW50KCl9KSkpLHMoKSxlLnRpdGxlJiYocz1yLmVudGVyKGB0aXRsZSR7b31gKSxkKz1jLm1vdmUoIiAiK2kpLGQrPWMubW92ZShyLnNhZmUoZS50aXRsZSx7YmVmb3JlOmQsYWZ0ZXI6aSwuLi5jLmN1cnJlbnQoKX0pKSxkKz1jLm1vdmUoaSkscygpKSxuKCksZH12YXIgZnZ0PWwoKCk9PntMZWUoKX0pO2Z1bmN0aW9uIHB2dChlKXtsZXQgdD1lLm9wdGlvbnMuZW1waGFzaXN8fCIqIjtpZih0IT09IioiJiZ0IT09Il8iKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IHNlcmlhbGl6ZSBlbXBoYXNpcyB3aXRoIGAiK3QrImAgZm9yIGBvcHRpb25zLmVtcGhhc2lzYCwgZXhwZWN0ZWQgYCpgLCBvciBgX2AiKTtyZXR1cm4gdH12YXIgaHZ0PWwoKCk9Pnt9KTtmdW5jdGlvbiBHbyhlKXtyZXR1cm4iJiN4IitlLnRvU3RyaW5nKDE2KS50b1VwcGVyQ2FzZSgpKyI7In12YXIgeG09bCgoKT0+e30pO2Z1bmN0aW9uIHFsKGUpe2lmKGU9PT1udWxsfHxvcihlKXx8djIoZSkpcmV0dXJuIDE7aWYoTWQoZSkpcmV0dXJuIDJ9dmFyIERlZT1sKCgpPT57dXIoKX0pO2Z1bmN0aW9uIGJtKGUsdCxyKXtsZXQgYT1xbChlKSxpPXFsKHQpO3JldHVybiBhPT09dm9pZCAwP2k9PT12b2lkIDA/cj09PSJfIj97aW5zaWRlOiEwLG91dHNpZGU6ITB9OntpbnNpZGU6ITEsb3V0c2lkZTohMX06aT09PTE/e2luc2lkZTohMCxvdXRzaWRlOiEwfTp7aW5zaWRlOiExLG91dHNpZGU6ITB9OmE9PT0xP2k9PT12b2lkIDA/e2luc2lkZTohMSxvdXRzaWRlOiExfTppPT09MT97aW5zaWRlOiEwLG91dHNpZGU6ITB9OntpbnNpZGU6ITEsb3V0c2lkZTohMX06aT09PXZvaWQgMD97aW5zaWRlOiExLG91dHNpZGU6ITF9Omk9PT0xP3tpbnNpZGU6ITAsb3V0c2lkZTohMX06e2luc2lkZTohMSxvdXRzaWRlOiExfX12YXIgRGZlPWwoKCk9PntEZWUoKX0pO2Z1bmN0aW9uIEFmZShlLHQscixhKXtsZXQgaT1wdnQociksbz1yLmVudGVyKCJlbXBoYXNpcyIpLG49ci5jcmVhdGVUcmFja2VyKGEpLHM9bi5tb3ZlKGkpLGM9bi5tb3ZlKHIuY29udGFpbmVyUGhyYXNpbmcoZSx7YWZ0ZXI6aSxiZWZvcmU6cywuLi5uLmN1cnJlbnQoKX0pKSxkPWMuY2hhckNvZGVBdCgwKSxmPWJtKGEuYmVmb3JlLmNoYXJDb2RlQXQoYS5iZWZvcmUubGVuZ3RoLTEpLGQsaSk7Zi5pbnNpZGUmJihjPUdvKGQpK2Muc2xpY2UoMSkpO2xldCB1PWMuY2hhckNvZGVBdChjLmxlbmd0aC0xKSxwPWJtKGEuYWZ0ZXIuY2hhckNvZGVBdCgwKSx1LGkpO3AuaW5zaWRlJiYoYz1jLnNsaWNlKDAsLTEpK0dvKHUpKTtsZXQgaD1uLm1vdmUoaSk7cmV0dXJuIG8oKSxyLmF0dGVudGlvbkVuY29kZVN1cnJvdW5kaW5nSW5mbz17YWZ0ZXI6cC5vdXRzaWRlLGJlZm9yZTpmLm91dHNpZGV9LHMrYytofWZ1bmN0aW9uIEFlYShlLHQscil7cmV0dXJuIHIub3B0aW9ucy5lbXBoYXNpc3x8IioifXZhciBtdnQ9bCgoKT0+e2h2dCgpO3htKCk7RGZlKCk7QWZlLnBlZWs9QWVhfSk7ZnVuY3Rpb24gb2IoZSx0LHIsYSl7bGV0IGksbyxuO3R5cGVvZiB0PT0iZnVuY3Rpb24iJiZ0eXBlb2YgciE9ImZ1bmN0aW9uIj8obz12b2lkIDAsbj10LGk9cik6KG89dCxuPXIsaT1hKSxhYihlLG8scyxpKTtmdW5jdGlvbiBzKGMsZCl7bGV0IGY9ZFtkLmxlbmd0aC0xXSx1PWY/Zi5jaGlsZHJlbi5pbmRleE9mKGMpOnZvaWQgMDtyZXR1cm4gbihjLHUsZil9fXZhciBndnQ9bCgoKT0+e0NlZSgpO0NlZSgpfSk7dmFyIEVmZT1sKCgpPT57Z3Z0KCl9KTtmdW5jdGlvbiBTZChlLHQpe2xldCByPXR8fEVlYSxhPXR5cGVvZiByLmluY2x1ZGVJbWFnZUFsdD09ImJvb2xlYW4iP3IuaW5jbHVkZUltYWdlQWx0OiEwLGk9dHlwZW9mIHIuaW5jbHVkZUh0bWw9PSJib29sZWFuIj9yLmluY2x1ZGVIdG1sOiEwO3JldHVybiB4dnQoZSxhLGkpfWZ1bmN0aW9uIHh2dChlLHQscil7aWYoJGVhKGUpKXtpZigidmFsdWUiaW4gZSlyZXR1cm4gZS50eXBlPT09Imh0bWwiJiYhcj8iIjplLnZhbHVlO2lmKHQmJiJhbHQiaW4gZSYmZS5hbHQpcmV0dXJuIGUuYWx0O2lmKCJjaGlsZHJlbiJpbiBlKXJldHVybiBidnQoZS5jaGlsZHJlbix0LHIpfXJldHVybiBBcnJheS5pc0FycmF5KGUpP2J2dChlLHQscik6IiJ9ZnVuY3Rpb24gYnZ0KGUsdCxyKXtsZXQgYT1bXSxpPS0xO2Zvcig7KytpPGUubGVuZ3RoOylhW2ldPXh2dChlW2ldLHQscik7cmV0dXJuIGEuam9pbigiIil9ZnVuY3Rpb24gJGVhKGUpe3JldHVybiEhKGUmJnR5cGVvZiBlPT0ib2JqZWN0Iil9dmFyIEVlYSx2dnQ9bCgoKT0+e0VlYT17fX0pO3ZhciBBZWU9bCgoKT0+e3Z2dCgpfSk7ZnVuY3Rpb24gRWVlKGUsdCl7bGV0IHI9ITE7cmV0dXJuIG9iKGUsZnVuY3Rpb24oYSl7aWYoInZhbHVlImluIGEmJi9ccj9cbnxcci8udGVzdChhLnZhbHVlKXx8YS50eXBlPT09ImJyZWFrIilyZXR1cm4gcj0hMCxrZH0pLCEhKCghZS5kZXB0aHx8ZS5kZXB0aDwzKSYmU2QoZSkmJih0Lm9wdGlvbnMuc2V0ZXh0fHxyKSl9dmFyICRmZT1sKCgpPT57RWZlKCk7QWVlKCl9KTtmdW5jdGlvbiB5dnQoZSx0LHIsYSl7bGV0IGk9TWF0aC5tYXgoTWF0aC5taW4oNixlLmRlcHRofHwxKSwxKSxvPXIuY3JlYXRlVHJhY2tlcihhKTtpZihFZWUoZSxyKSl7bGV0IGY9ci5lbnRlcigiaGVhZGluZ1NldGV4dCIpLHU9ci5lbnRlcigicGhyYXNpbmciKSxwPXIuY29udGFpbmVyUGhyYXNpbmcoZSx7Li4uby5jdXJyZW50KCksYmVmb3JlOmAKYCxhZnRlcjpgCmB9KTtyZXR1cm4gdSgpLGYoKSxwK2AKYCsoaT09PTE/Ij0iOiItIikucmVwZWF0KHAubGVuZ3RoLShNYXRoLm1heChwLmxhc3RJbmRleE9mKCJcciIpLHAubGFzdEluZGV4T2YoYApgKSkrMSkpfWxldCBuPSIjIi5yZXBlYXQoaSkscz1yLmVudGVyKCJoZWFkaW5nQXR4IiksYz1yLmVudGVyKCJwaHJhc2luZyIpO28ubW92ZShuKyIgIik7bGV0IGQ9ci5jb250YWluZXJQaHJhc2luZyhlLHtiZWZvcmU6IiMgIixhZnRlcjpgCmAsLi4uby5jdXJyZW50KCl9KTtyZXR1cm4vXltcdCBdLy50ZXN0KGQpJiYoZD1HbyhkLmNoYXJDb2RlQXQoMCkpK2Quc2xpY2UoMSkpLGQ9ZD9uKyIgIitkOm4sci5vcHRpb25zLmNsb3NlQXR4JiYoZCs9IiAiK24pLGMoKSxzKCksZH12YXIgd3Z0PWwoKCk9Pnt4bSgpOyRmZSgpfSk7ZnVuY3Rpb24gUGZlKGUpe3JldHVybiBlLnZhbHVlfHwiIn1mdW5jdGlvbiBQZWEoKXtyZXR1cm4iPCJ9dmFyIE12dD1sKCgpPT57UGZlLnBlZWs9UGVhfSk7ZnVuY3Rpb24gSWZlKGUsdCxyLGEpe2xldCBpPWdtKHIpLG89aT09PSciJz8iUXVvdGUiOiJBcG9zdHJvcGhlIixuPXIuZW50ZXIoImltYWdlIikscz1yLmVudGVyKCJsYWJlbCIpLGM9ci5jcmVhdGVUcmFja2VyKGEpLGQ9Yy5tb3ZlKCIhWyIpO3JldHVybiBkKz1jLm1vdmUoci5zYWZlKGUuYWx0LHtiZWZvcmU6ZCxhZnRlcjoiXSIsLi4uYy5jdXJyZW50KCl9KSksZCs9Yy5tb3ZlKCJdKCIpLHMoKSwhZS51cmwmJmUudGl0bGV8fC9bXDAtIFx1MDA3Rl0vLnRlc3QoZS51cmwpPyhzPXIuZW50ZXIoImRlc3RpbmF0aW9uTGl0ZXJhbCIpLGQrPWMubW92ZSgiPCIpLGQrPWMubW92ZShyLnNhZmUoZS51cmwse2JlZm9yZTpkLGFmdGVyOiI+IiwuLi5jLmN1cnJlbnQoKX0pKSxkKz1jLm1vdmUoIj4iKSk6KHM9ci5lbnRlcigiZGVzdGluYXRpb25SYXciKSxkKz1jLm1vdmUoci5zYWZlKGUudXJsLHtiZWZvcmU6ZCxhZnRlcjplLnRpdGxlPyIgIjoiKSIsLi4uYy5jdXJyZW50KCl9KSkpLHMoKSxlLnRpdGxlJiYocz1yLmVudGVyKGB0aXRsZSR7b31gKSxkKz1jLm1vdmUoIiAiK2kpLGQrPWMubW92ZShyLnNhZmUoZS50aXRsZSx7YmVmb3JlOmQsYWZ0ZXI6aSwuLi5jLmN1cnJlbnQoKX0pKSxkKz1jLm1vdmUoaSkscygpKSxkKz1jLm1vdmUoIikiKSxuKCksZH1mdW5jdGlvbiBJZWEoKXtyZXR1cm4iISJ9dmFyIGt2dD1sKCgpPT57TGVlKCk7SWZlLnBlZWs9SWVhfSk7ZnVuY3Rpb24gTmZlKGUsdCxyLGEpe2xldCBpPWUucmVmZXJlbmNlVHlwZSxvPXIuZW50ZXIoImltYWdlUmVmZXJlbmNlIiksbj1yLmVudGVyKCJsYWJlbCIpLHM9ci5jcmVhdGVUcmFja2VyKGEpLGM9cy5tb3ZlKCIhWyIpLGQ9ci5zYWZlKGUuYWx0LHtiZWZvcmU6YyxhZnRlcjoiXSIsLi4ucy5jdXJyZW50KCl9KTtjKz1zLm1vdmUoZCsiXVsiKSxuKCk7bGV0IGY9ci5zdGFjaztyLnN0YWNrPVtdLG49ci5lbnRlcigicmVmZXJlbmNlIik7bGV0IHU9ci5zYWZlKHIuYXNzb2NpYXRpb25JZChlKSx7YmVmb3JlOmMsYWZ0ZXI6Il0iLC4uLnMuY3VycmVudCgpfSk7cmV0dXJuIG4oKSxyLnN0YWNrPWYsbygpLGk9PT0iZnVsbCJ8fCFkfHxkIT09dT9jKz1zLm1vdmUodSsiXSIpOmk9PT0ic2hvcnRjdXQiP2M9Yy5zbGljZSgwLC0xKTpjKz1zLm1vdmUoIl0iKSxjfWZ1bmN0aW9uIE5lYSgpe3JldHVybiIhIn12YXIgU3Z0PWwoKCk9PntOZmUucGVlaz1OZWF9KTtmdW5jdGlvbiBGZmUoZSx0LHIpe2xldCBhPWUudmFsdWV8fCIiLGk9ImAiLG89LTE7Zm9yKDtuZXcgUmVnRXhwKCIoXnxbXmBdKSIraSsiKFteYF18JCkiKS50ZXN0KGEpOylpKz0iYCI7Zm9yKC9bXiBcclxuXS8udGVzdChhKSYmKC9eWyBcclxuXS8udGVzdChhKSYmL1sgXHJcbl0kLy50ZXN0KGEpfHwvXmB8YCQvLnRlc3QoYSkpJiYoYT0iICIrYSsiICIpOysrbzxyLnVuc2FmZS5sZW5ndGg7KXtsZXQgbj1yLnVuc2FmZVtvXSxzPXIuY29tcGlsZVBhdHRlcm4obiksYztpZihuLmF0QnJlYWspZm9yKDtjPXMuZXhlYyhhKTspe2xldCBkPWMuaW5kZXg7YS5jaGFyQ29kZUF0KGQpPT09MTAmJmEuY2hhckNvZGVBdChkLTEpPT09MTMmJmQtLSxhPWEuc2xpY2UoMCxkKSsiICIrYS5zbGljZShjLmluZGV4KzEpfX1yZXR1cm4gaSthK2l9ZnVuY3Rpb24gRmVhKCl7cmV0dXJuImAifXZhciB6dnQ9bCgoKT0+e0ZmZS5wZWVrPUZlYX0pO2Z1bmN0aW9uIE9mZShlLHQpe2xldCByPVNkKGUpO3JldHVybiEhKCF0Lm9wdGlvbnMucmVzb3VyY2VMaW5rJiZlLnVybCYmIWUudGl0bGUmJmUuY2hpbGRyZW4mJmUuY2hpbGRyZW4ubGVuZ3RoPT09MSYmZS5jaGlsZHJlblswXS50eXBlPT09InRleHQiJiYocj09PWUudXJsfHwibWFpbHRvOiIrcj09PWUudXJsKSYmL15bYS16XVthLXorLi1dKzovaS50ZXN0KGUudXJsKSYmIS9bXDAtIDw+XHUwMDdGXS8udGVzdChlLnVybCkpfXZhciBDdnQ9bCgoKT0+e0FlZSgpfSk7ZnVuY3Rpb24gUmZlKGUsdCxyLGEpe2xldCBpPWdtKHIpLG89aT09PSciJz8iUXVvdGUiOiJBcG9zdHJvcGhlIixuPXIuY3JlYXRlVHJhY2tlcihhKSxzLGM7aWYoT2ZlKGUscikpe2xldCBmPXIuc3RhY2s7ci5zdGFjaz1bXSxzPXIuZW50ZXIoImF1dG9saW5rIik7bGV0IHU9bi5tb3ZlKCI8Iik7cmV0dXJuIHUrPW4ubW92ZShyLmNvbnRhaW5lclBocmFzaW5nKGUse2JlZm9yZTp1LGFmdGVyOiI+IiwuLi5uLmN1cnJlbnQoKX0pKSx1Kz1uLm1vdmUoIj4iKSxzKCksci5zdGFjaz1mLHV9cz1yLmVudGVyKCJsaW5rIiksYz1yLmVudGVyKCJsYWJlbCIpO2xldCBkPW4ubW92ZSgiWyIpO3JldHVybiBkKz1uLm1vdmUoci5jb250YWluZXJQaHJhc2luZyhlLHtiZWZvcmU6ZCxhZnRlcjoiXSgiLC4uLm4uY3VycmVudCgpfSkpLGQrPW4ubW92ZSgiXSgiKSxjKCksIWUudXJsJiZlLnRpdGxlfHwvW1wwLSBcdTAwN0ZdLy50ZXN0KGUudXJsKT8oYz1yLmVudGVyKCJkZXN0aW5hdGlvbkxpdGVyYWwiKSxkKz1uLm1vdmUoIjwiKSxkKz1uLm1vdmUoci5zYWZlKGUudXJsLHtiZWZvcmU6ZCxhZnRlcjoiPiIsLi4ubi5jdXJyZW50KCl9KSksZCs9bi5tb3ZlKCI+IikpOihjPXIuZW50ZXIoImRlc3RpbmF0aW9uUmF3IiksZCs9bi5tb3ZlKHIuc2FmZShlLnVybCx7YmVmb3JlOmQsYWZ0ZXI6ZS50aXRsZT8iICI6IikiLC4uLm4uY3VycmVudCgpfSkpKSxjKCksZS50aXRsZSYmKGM9ci5lbnRlcihgdGl0bGUke299YCksZCs9bi5tb3ZlKCIgIitpKSxkKz1uLm1vdmUoci5zYWZlKGUudGl0bGUse2JlZm9yZTpkLGFmdGVyOmksLi4ubi5jdXJyZW50KCl9KSksZCs9bi5tb3ZlKGkpLGMoKSksZCs9bi5tb3ZlKCIpIikscygpLGR9ZnVuY3Rpb24gT2VhKGUsdCxyKXtyZXR1cm4gT2ZlKGUscik/IjwiOiJbIn12YXIgX3Z0PWwoKCk9PntMZWUoKTtDdnQoKTtSZmUucGVlaz1PZWF9KTtmdW5jdGlvbiBCZmUoZSx0LHIsYSl7bGV0IGk9ZS5yZWZlcmVuY2VUeXBlLG89ci5lbnRlcigibGlua1JlZmVyZW5jZSIpLG49ci5lbnRlcigibGFiZWwiKSxzPXIuY3JlYXRlVHJhY2tlcihhKSxjPXMubW92ZSgiWyIpLGQ9ci5jb250YWluZXJQaHJhc2luZyhlLHtiZWZvcmU6YyxhZnRlcjoiXSIsLi4ucy5jdXJyZW50KCl9KTtjKz1zLm1vdmUoZCsiXVsiKSxuKCk7bGV0IGY9ci5zdGFjaztyLnN0YWNrPVtdLG49ci5lbnRlcigicmVmZXJlbmNlIik7bGV0IHU9ci5zYWZlKHIuYXNzb2NpYXRpb25JZChlKSx7YmVmb3JlOmMsYWZ0ZXI6Il0iLC4uLnMuY3VycmVudCgpfSk7cmV0dXJuIG4oKSxyLnN0YWNrPWYsbygpLGk9PT0iZnVsbCJ8fCFkfHxkIT09dT9jKz1zLm1vdmUodSsiXSIpOmk9PT0ic2hvcnRjdXQiP2M9Yy5zbGljZSgwLC0xKTpjKz1zLm1vdmUoIl0iKSxjfWZ1bmN0aW9uIFJlYSgpe3JldHVybiJbIn12YXIgVHZ0PWwoKCk9PntCZmUucGVlaz1SZWF9KTtmdW5jdGlvbiB2bShlKXtsZXQgdD1lLm9wdGlvbnMuYnVsbGV0fHwiKiI7aWYodCE9PSIqIiYmdCE9PSIrIiYmdCE9PSItIil0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBzZXJpYWxpemUgaXRlbXMgd2l0aCBgIit0KyJgIGZvciBgb3B0aW9ucy5idWxsZXRgLCBleHBlY3RlZCBgKmAsIGArYCwgb3IgYC1gIik7cmV0dXJuIHR9dmFyICRlZT1sKCgpPT57fSk7ZnVuY3Rpb24gTHZ0KGUpe2xldCB0PXZtKGUpLHI9ZS5vcHRpb25zLmJ1bGxldE90aGVyO2lmKCFyKXJldHVybiB0PT09IioiPyItIjoiKiI7aWYociE9PSIqIiYmciE9PSIrIiYmciE9PSItIil0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBzZXJpYWxpemUgaXRlbXMgd2l0aCBgIityKyJgIGZvciBgb3B0aW9ucy5idWxsZXRPdGhlcmAsIGV4cGVjdGVkIGAqYCwgYCtgLCBvciBgLWAiKTtpZihyPT09dCl0aHJvdyBuZXcgRXJyb3IoIkV4cGVjdGVkIGBidWxsZXRgIChgIit0KyJgKSBhbmQgYGJ1bGxldE90aGVyYCAoYCIrcisiYCkgdG8gYmUgZGlmZmVyZW50Iik7cmV0dXJuIHJ9dmFyIER2dD1sKCgpPT57JGVlKCl9KTtmdW5jdGlvbiBBdnQoZSl7bGV0IHQ9ZS5vcHRpb25zLmJ1bGxldE9yZGVyZWR8fCIuIjtpZih0IT09Ii4iJiZ0IT09IikiKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IHNlcmlhbGl6ZSBpdGVtcyB3aXRoIGAiK3QrImAgZm9yIGBvcHRpb25zLmJ1bGxldE9yZGVyZWRgLCBleHBlY3RlZCBgLmAgb3IgYClgIik7cmV0dXJuIHR9dmFyIEV2dD1sKCgpPT57fSk7ZnVuY3Rpb24gUGVlKGUpe2xldCB0PWUub3B0aW9ucy5ydWxlfHwiKiI7aWYodCE9PSIqIiYmdCE9PSItIiYmdCE9PSJfIil0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBzZXJpYWxpemUgcnVsZXMgd2l0aCBgIit0KyJgIGZvciBgb3B0aW9ucy5ydWxlYCwgZXhwZWN0ZWQgYCpgLCBgLWAsIG9yIGBfYCIpO3JldHVybiB0fXZhciBIZmU9bCgoKT0+e30pO2Z1bmN0aW9uICR2dChlLHQscixhKXtsZXQgaT1yLmVudGVyKCJsaXN0Iiksbz1yLmJ1bGxldEN1cnJlbnQsbj1lLm9yZGVyZWQ/QXZ0KHIpOnZtKHIpLHM9ZS5vcmRlcmVkP249PT0iLiI/IikiOiIuIjpMdnQociksYz10JiZyLmJ1bGxldExhc3RVc2VkP249PT1yLmJ1bGxldExhc3RVc2VkOiExO2lmKCFlLm9yZGVyZWQpe2xldCBmPWUuY2hpbGRyZW4/ZS5jaGlsZHJlblswXTp2b2lkIDA7aWYoKG49PT0iKiJ8fG49PT0iLSIpJiZmJiYoIWYuY2hpbGRyZW58fCFmLmNoaWxkcmVuWzBdKSYmci5zdGFja1tyLnN0YWNrLmxlbmd0aC0xXT09PSJsaXN0IiYmci5zdGFja1tyLnN0YWNrLmxlbmd0aC0yXT09PSJsaXN0SXRlbSImJnIuc3RhY2tbci5zdGFjay5sZW5ndGgtM109PT0ibGlzdCImJnIuc3RhY2tbci5zdGFjay5sZW5ndGgtNF09PT0ibGlzdEl0ZW0iJiZyLmluZGV4U3RhY2tbci5pbmRleFN0YWNrLmxlbmd0aC0xXT09PTAmJnIuaW5kZXhTdGFja1tyLmluZGV4U3RhY2subGVuZ3RoLTJdPT09MCYmci5pbmRleFN0YWNrW3IuaW5kZXhTdGFjay5sZW5ndGgtM109PT0wJiYoYz0hMCksUGVlKHIpPT09biYmZil7bGV0IHU9LTE7Zm9yKDsrK3U8ZS5jaGlsZHJlbi5sZW5ndGg7KXtsZXQgcD1lLmNoaWxkcmVuW3VdO2lmKHAmJnAudHlwZT09PSJsaXN0SXRlbSImJnAuY2hpbGRyZW4mJnAuY2hpbGRyZW5bMF0mJnAuY2hpbGRyZW5bMF0udHlwZT09PSJ0aGVtYXRpY0JyZWFrIil7Yz0hMDticmVha319fX1jJiYobj1zKSxyLmJ1bGxldEN1cnJlbnQ9bjtsZXQgZD1yLmNvbnRhaW5lckZsb3coZSxhKTtyZXR1cm4gci5idWxsZXRMYXN0VXNlZD1uLHIuYnVsbGV0Q3VycmVudD1vLGkoKSxkfXZhciBQdnQ9bCgoKT0+eyRlZSgpO0R2dCgpO0V2dCgpO0hmZSgpfSk7ZnVuY3Rpb24gSXZ0KGUpe2xldCB0PWUub3B0aW9ucy5saXN0SXRlbUluZGVudHx8Im9uZSI7aWYodCE9PSJ0YWIiJiZ0IT09Im9uZSImJnQhPT0ibWl4ZWQiKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IHNlcmlhbGl6ZSBpdGVtcyB3aXRoIGAiK3QrImAgZm9yIGBvcHRpb25zLmxpc3RJdGVtSW5kZW50YCwgZXhwZWN0ZWQgYHRhYmAsIGBvbmVgLCBvciBgbWl4ZWRgIik7cmV0dXJuIHR9dmFyIE52dD1sKCgpPT57fSk7ZnVuY3Rpb24gRnZ0KGUsdCxyLGEpe2xldCBpPUl2dChyKSxvPXIuYnVsbGV0Q3VycmVudHx8dm0ocik7dCYmdC50eXBlPT09Imxpc3QiJiZ0Lm9yZGVyZWQmJihvPSh0eXBlb2YgdC5zdGFydD09Im51bWJlciImJnQuc3RhcnQ+LTE/dC5zdGFydDoxKSsoci5vcHRpb25zLmluY3JlbWVudExpc3RNYXJrZXI9PT0hMT8wOnQuY2hpbGRyZW4uaW5kZXhPZihlKSkrbyk7bGV0IG49by5sZW5ndGgrMTsoaT09PSJ0YWIifHxpPT09Im1peGVkIiYmKHQmJnQudHlwZT09PSJsaXN0IiYmdC5zcHJlYWR8fGUuc3ByZWFkKSkmJihuPU1hdGguY2VpbChuLzQpKjQpO2xldCBzPXIuY3JlYXRlVHJhY2tlcihhKTtzLm1vdmUobysiICIucmVwZWF0KG4tby5sZW5ndGgpKSxzLnNoaWZ0KG4pO2xldCBjPXIuZW50ZXIoImxpc3RJdGVtIiksZD1yLmluZGVudExpbmVzKHIuY29udGFpbmVyRmxvdyhlLHMuY3VycmVudCgpKSxmKTtyZXR1cm4gYygpLGQ7ZnVuY3Rpb24gZih1LHAsaCl7cmV0dXJuIHA/KGg/IiI6IiAiLnJlcGVhdChuKSkrdTooaD9vOm8rIiAiLnJlcGVhdChuLW8ubGVuZ3RoKSkrdX19dmFyIE92dD1sKCgpPT57JGVlKCk7TnZ0KCl9KTtmdW5jdGlvbiBSdnQoZSx0LHIsYSl7bGV0IGk9ci5lbnRlcigicGFyYWdyYXBoIiksbz1yLmVudGVyKCJwaHJhc2luZyIpLG49ci5jb250YWluZXJQaHJhc2luZyhlLGEpO3JldHVybiBvKCksaSgpLG59dmFyIEJ2dD1sKCgpPT57fSk7dmFyIHFmZSxIdnQ9bCgoKT0+e2tlZSgpO3FmZT1IbChbImJyZWFrIiwiZGVsZXRlIiwiZW1waGFzaXMiLCJmb290bm90ZSIsImZvb3Rub3RlUmVmZXJlbmNlIiwiaW1hZ2UiLCJpbWFnZVJlZmVyZW5jZSIsImlubGluZUNvZGUiLCJpbmxpbmVNYXRoIiwibGluayIsImxpbmtSZWZlcmVuY2UiLCJtZHhKc3hUZXh0RWxlbWVudCIsIm1keFRleHRFeHByZXNzaW9uIiwic3Ryb25nIiwidGV4dCIsInRleHREaXJlY3RpdmUiXSl9KTt2YXIgcXZ0PWwoKCk9PntIdnQoKX0pO2Z1bmN0aW9uIGp2dChlLHQscixhKXtyZXR1cm4oZS5jaGlsZHJlbi5zb21lKGZ1bmN0aW9uKG4pe3JldHVybiBxZmUobil9KT9yLmNvbnRhaW5lclBocmFzaW5nOnIuY29udGFpbmVyRmxvdykuY2FsbChyLGUsYSl9dmFyIFZ2dD1sKCgpPT57cXZ0KCl9KTtmdW5jdGlvbiBVdnQoZSl7bGV0IHQ9ZS5vcHRpb25zLnN0cm9uZ3x8IioiO2lmKHQhPT0iKiImJnQhPT0iXyIpdGhyb3cgbmV3IEVycm9yKCJDYW5ub3Qgc2VyaWFsaXplIHN0cm9uZyB3aXRoIGAiK3QrImAgZm9yIGBvcHRpb25zLnN0cm9uZ2AsIGV4cGVjdGVkIGAqYCwgb3IgYF9gIik7cmV0dXJuIHR9dmFyIFd2dD1sKCgpPT57fSk7ZnVuY3Rpb24gamZlKGUsdCxyLGEpe2xldCBpPVV2dChyKSxvPXIuZW50ZXIoInN0cm9uZyIpLG49ci5jcmVhdGVUcmFja2VyKGEpLHM9bi5tb3ZlKGkraSksYz1uLm1vdmUoci5jb250YWluZXJQaHJhc2luZyhlLHthZnRlcjppLGJlZm9yZTpzLC4uLm4uY3VycmVudCgpfSkpLGQ9Yy5jaGFyQ29kZUF0KDApLGY9Ym0oYS5iZWZvcmUuY2hhckNvZGVBdChhLmJlZm9yZS5sZW5ndGgtMSksZCxpKTtmLmluc2lkZSYmKGM9R28oZCkrYy5zbGljZSgxKSk7bGV0IHU9Yy5jaGFyQ29kZUF0KGMubGVuZ3RoLTEpLHA9Ym0oYS5hZnRlci5jaGFyQ29kZUF0KDApLHUsaSk7cC5pbnNpZGUmJihjPWMuc2xpY2UoMCwtMSkrR28odSkpO2xldCBoPW4ubW92ZShpK2kpO3JldHVybiBvKCksci5hdHRlbnRpb25FbmNvZGVTdXJyb3VuZGluZ0luZm89e2FmdGVyOnAub3V0c2lkZSxiZWZvcmU6Zi5vdXRzaWRlfSxzK2MraH1mdW5jdGlvbiBCZWEoZSx0LHIpe3JldHVybiByLm9wdGlvbnMuc3Ryb25nfHwiKiJ9dmFyIEd2dD1sKCgpPT57V3Z0KCk7eG0oKTtEZmUoKTtqZmUucGVlaz1CZWF9KTtmdW5jdGlvbiBZdnQoZSx0LHIsYSl7cmV0dXJuIHIuc2FmZShlLnZhbHVlLGEpfXZhciBadnQ9bCgoKT0+e30pO2Z1bmN0aW9uIFh2dChlKXtsZXQgdD1lLm9wdGlvbnMucnVsZVJlcGV0aXRpb258fDM7aWYodDwzKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IHNlcmlhbGl6ZSBydWxlcyB3aXRoIHJlcGV0aXRpb24gYCIrdCsiYCBmb3IgYG9wdGlvbnMucnVsZVJlcGV0aXRpb25gLCBleHBlY3RlZCBgM2Agb3IgbW9yZSIpO3JldHVybiB0fXZhciBRdnQ9bCgoKT0+e30pO2Z1bmN0aW9uIEt2dChlLHQscil7bGV0IGE9KFBlZShyKSsoci5vcHRpb25zLnJ1bGVTcGFjZXM/IiAiOiIiKSkucmVwZWF0KFh2dChyKSk7cmV0dXJuIHIub3B0aW9ucy5ydWxlU3BhY2VzP2Euc2xpY2UoMCwtMSk6YX12YXIgSnZ0PWwoKCk9PntRdnQoKTtIZmUoKX0pO3ZhciB6ZCxWZmU9bCgoKT0+e3J2dCgpO2l2dCgpO2R2dCgpO2Z2dCgpO212dCgpO3d2dCgpO012dCgpO2t2dCgpO1N2dCgpO3p2dCgpO192dCgpO1R2dCgpO1B2dCgpO092dCgpO0J2dCgpO1Z2dCgpO0d2dCgpO1p2dCgpO0p2dCgpO3pkPXtibG9ja3F1b3RlOnR2dCxicmVhazpUZmUsY29kZTpjdnQsZGVmaW5pdGlvbjp1dnQsZW1waGFzaXM6QWZlLGhhcmRCcmVhazpUZmUsaGVhZGluZzp5dnQsaHRtbDpQZmUsaW1hZ2U6SWZlLGltYWdlUmVmZXJlbmNlOk5mZSxpbmxpbmVDb2RlOkZmZSxsaW5rOlJmZSxsaW5rUmVmZXJlbmNlOkJmZSxsaXN0OiR2dCxsaXN0SXRlbTpGdnQscGFyYWdyYXBoOlJ2dCxyb290Omp2dCxzdHJvbmc6amZlLHRleHQ6WXZ0LHRoZW1hdGljQnJlYWs6S3Z0fX0pO2Z1bmN0aW9uIEhlYShlLHQscixhKXtpZih0LnR5cGU9PT0iY29kZSImJmliKHQsYSkmJihlLnR5cGU9PT0ibGlzdCJ8fGUudHlwZT09PXQudHlwZSYmaWIoZSxhKSkpcmV0dXJuITE7aWYoInNwcmVhZCJpbiByJiZ0eXBlb2Ygci5zcHJlYWQ9PSJib29sZWFuIilyZXR1cm4gZS50eXBlPT09InBhcmFncmFwaCImJihlLnR5cGU9PT10LnR5cGV8fHQudHlwZT09PSJkZWZpbml0aW9uInx8dC50eXBlPT09ImhlYWRpbmciJiZFZWUodCxhKSk/dm9pZCAwOnIuc3ByZWFkPzE6MH12YXIgZXl0LHR5dD1sKCgpPT57TGZlKCk7JGZlKCk7ZXl0PVtIZWFdfSk7dmFyIENkLHJ5dCxheXQ9bCgoKT0+e0NkPVsiYXV0b2xpbmsiLCJkZXN0aW5hdGlvbkxpdGVyYWwiLCJkZXN0aW5hdGlvblJhdyIsInJlZmVyZW5jZSIsInRpdGxlUXVvdGUiLCJ0aXRsZUFwb3N0cm9waGUiXSxyeXQ9W3tjaGFyYWN0ZXI6IgkiLGFmdGVyOiJbXFxyXFxuXSIsaW5Db25zdHJ1Y3Q6InBocmFzaW5nIn0se2NoYXJhY3RlcjoiCSIsYmVmb3JlOiJbXFxyXFxuXSIsaW5Db25zdHJ1Y3Q6InBocmFzaW5nIn0se2NoYXJhY3RlcjoiCSIsaW5Db25zdHJ1Y3Q6WyJjb2RlRmVuY2VkTGFuZ0dyYXZlQWNjZW50IiwiY29kZUZlbmNlZExhbmdUaWxkZSJdfSx7Y2hhcmFjdGVyOiJcciIsaW5Db25zdHJ1Y3Q6WyJjb2RlRmVuY2VkTGFuZ0dyYXZlQWNjZW50IiwiY29kZUZlbmNlZExhbmdUaWxkZSIsImNvZGVGZW5jZWRNZXRhR3JhdmVBY2NlbnQiLCJjb2RlRmVuY2VkTWV0YVRpbGRlIiwiZGVzdGluYXRpb25MaXRlcmFsIiwiaGVhZGluZ0F0eCJdfSx7Y2hhcmFjdGVyOmAKYCxpbkNvbnN0cnVjdDpbImNvZGVGZW5jZWRMYW5nR3JhdmVBY2NlbnQiLCJjb2RlRmVuY2VkTGFuZ1RpbGRlIiwiY29kZUZlbmNlZE1ldGFHcmF2ZUFjY2VudCIsImNvZGVGZW5jZWRNZXRhVGlsZGUiLCJkZXN0aW5hdGlvbkxpdGVyYWwiLCJoZWFkaW5nQXR4Il19LHtjaGFyYWN0ZXI6IiAiLGFmdGVyOiJbXFxyXFxuXSIsaW5Db25zdHJ1Y3Q6InBocmFzaW5nIn0se2NoYXJhY3RlcjoiICIsYmVmb3JlOiJbXFxyXFxuXSIsaW5Db25zdHJ1Y3Q6InBocmFzaW5nIn0se2NoYXJhY3RlcjoiICIsaW5Db25zdHJ1Y3Q6WyJjb2RlRmVuY2VkTGFuZ0dyYXZlQWNjZW50IiwiY29kZUZlbmNlZExhbmdUaWxkZSJdfSx7Y2hhcmFjdGVyOiIhIixhZnRlcjoiXFxbIixpbkNvbnN0cnVjdDoicGhyYXNpbmciLG5vdEluQ29uc3RydWN0OkNkfSx7Y2hhcmFjdGVyOiciJyxpbkNvbnN0cnVjdDoidGl0bGVRdW90ZSJ9LHthdEJyZWFrOiEwLGNoYXJhY3RlcjoiIyJ9LHtjaGFyYWN0ZXI6IiMiLGluQ29uc3RydWN0OiJoZWFkaW5nQXR4IixhZnRlcjpgKD86W1xyCl18JClgfSx7Y2hhcmFjdGVyOiImIixhZnRlcjoiWyNBLVphLXpdIixpbkNvbnN0cnVjdDoicGhyYXNpbmcifSx7Y2hhcmFjdGVyOiInIixpbkNvbnN0cnVjdDoidGl0bGVBcG9zdHJvcGhlIn0se2NoYXJhY3RlcjoiKCIsaW5Db25zdHJ1Y3Q6ImRlc3RpbmF0aW9uUmF3In0se2JlZm9yZToiXFxdIixjaGFyYWN0ZXI6IigiLGluQ29uc3RydWN0OiJwaHJhc2luZyIsbm90SW5Db25zdHJ1Y3Q6Q2R9LHthdEJyZWFrOiEwLGJlZm9yZToiXFxkKyIsY2hhcmFjdGVyOiIpIn0se2NoYXJhY3RlcjoiKSIsaW5Db25zdHJ1Y3Q6ImRlc3RpbmF0aW9uUmF3In0se2F0QnJlYWs6ITAsY2hhcmFjdGVyOiIqIixhZnRlcjpgKD86WyAJXHIKKl0pYH0se2NoYXJhY3RlcjoiKiIsaW5Db25zdHJ1Y3Q6InBocmFzaW5nIixub3RJbkNvbnN0cnVjdDpDZH0se2F0QnJlYWs6ITAsY2hhcmFjdGVyOiIrIixhZnRlcjpgKD86WyAJXHIKXSlgfSx7YXRCcmVhazohMCxjaGFyYWN0ZXI6Ii0iLGFmdGVyOmAoPzpbIAlccgotXSlgfSx7YXRCcmVhazohMCxiZWZvcmU6IlxcZCsiLGNoYXJhY3RlcjoiLiIsYWZ0ZXI6YCg/OlsgCVxyCl18JClgfSx7YXRCcmVhazohMCxjaGFyYWN0ZXI6IjwiLGFmdGVyOiJbIS8/QS1aYS16XSJ9LHtjaGFyYWN0ZXI6IjwiLGFmdGVyOiJbIS8/QS1aYS16XSIsaW5Db25zdHJ1Y3Q6InBocmFzaW5nIixub3RJbkNvbnN0cnVjdDpDZH0se2NoYXJhY3RlcjoiPCIsaW5Db25zdHJ1Y3Q6ImRlc3RpbmF0aW9uTGl0ZXJhbCJ9LHthdEJyZWFrOiEwLGNoYXJhY3RlcjoiPSJ9LHthdEJyZWFrOiEwLGNoYXJhY3RlcjoiPiJ9LHtjaGFyYWN0ZXI6Ij4iLGluQ29uc3RydWN0OiJkZXN0aW5hdGlvbkxpdGVyYWwifSx7YXRCcmVhazohMCxjaGFyYWN0ZXI6IlsifSx7Y2hhcmFjdGVyOiJbIixpbkNvbnN0cnVjdDoicGhyYXNpbmciLG5vdEluQ29uc3RydWN0OkNkfSx7Y2hhcmFjdGVyOiJbIixpbkNvbnN0cnVjdDpbImxhYmVsIiwicmVmZXJlbmNlIl19LHtjaGFyYWN0ZXI6IlxcIixhZnRlcjoiW1xcclxcbl0iLGluQ29uc3RydWN0OiJwaHJhc2luZyJ9LHtjaGFyYWN0ZXI6Il0iLGluQ29uc3RydWN0OlsibGFiZWwiLCJyZWZlcmVuY2UiXX0se2F0QnJlYWs6ITAsY2hhcmFjdGVyOiJfIn0se2NoYXJhY3RlcjoiXyIsaW5Db25zdHJ1Y3Q6InBocmFzaW5nIixub3RJbkNvbnN0cnVjdDpDZH0se2F0QnJlYWs6ITAsY2hhcmFjdGVyOiJgIn0se2NoYXJhY3RlcjoiYCIsaW5Db25zdHJ1Y3Q6WyJjb2RlRmVuY2VkTGFuZ0dyYXZlQWNjZW50IiwiY29kZUZlbmNlZE1ldGFHcmF2ZUFjY2VudCJdfSx7Y2hhcmFjdGVyOiJgIixpbkNvbnN0cnVjdDoicGhyYXNpbmciLG5vdEluQ29uc3RydWN0OkNkfSx7YXRCcmVhazohMCxjaGFyYWN0ZXI6In4ifV19KTtmdW5jdGlvbiBWMChlKXtsZXQgdD0iJiIrZSsiOyI7aXl0LmlubmVySFRNTD10O2xldCByPWl5dC50ZXh0Q29udGVudDtyZXR1cm4gci5jaGFyQ29kZUF0KHIubGVuZ3RoLTEpPT09NTkmJmUhPT0ic2VtaSJ8fHI9PT10PyExOnJ9dmFyIGl5dCxuYj1sKCgpPT57aXl0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImkiKX0pO2Z1bmN0aW9uIHltKGUsdCl7bGV0IHI9TnVtYmVyLnBhcnNlSW50KGUsdCk7cmV0dXJuIHI8OXx8cj09PTExfHxyPjEzJiZyPDMyfHxyPjEyNiYmcjwxNjB8fHI+NTUyOTUmJnI8NTczNDR8fHI+NjQ5NzUmJnI8NjUwMDh8fChyJjY1NTM1KT09PTY1NTM1fHwociY2NTUzNSk9PT02NTUzNHx8cj4xMTE0MTExPyJcdUZGRkQiOlN0cmluZy5mcm9tQ29kZVBvaW50KHIpfXZhciBJZWU9bCgoKT0+e30pO2Z1bmN0aW9uIE5lZShlKXtyZXR1cm4gZS5yZXBsYWNlKHFlYSxqZWEpfWZ1bmN0aW9uIGplYShlLHQscil7aWYodClyZXR1cm4gdDtpZihyLmNoYXJDb2RlQXQoMCk9PT0zNSl7bGV0IGk9ci5jaGFyQ29kZUF0KDEpLG89aT09PTEyMHx8aT09PTg4O3JldHVybiB5bShyLnNsaWNlKG8/MjoxKSxvPzE2OjEwKX1yZXR1cm4gVjAocil8fGV9dmFyIHFlYSxVZmU9bCgoKT0+e25iKCk7SWVlKCk7cWVhPS9cXChbIS0vOi1AWy1gey1+XSl8JigjKD86XGR7MSw3fXx4W1xkYS1mXXsxLDZ9KXxbXGRhLXpdezEsMzF9KTsvZ2l9KTtmdW5jdGlvbiBveXQoZSl7cmV0dXJuIGUubGFiZWx8fCFlLmlkZW50aWZpZXI/ZS5sYWJlbHx8IiI6TmVlKGUuaWRlbnRpZmllcil9dmFyIG55dD1sKCgpPT57VWZlKCl9KTtmdW5jdGlvbiBzeXQoZSl7aWYoIWUuX2NvbXBpbGVkKXtsZXQgdD0oZS5hdEJyZWFrPyJbXFxyXFxuXVtcXHQgXSoiOiIiKSsoZS5iZWZvcmU/Iig/OiIrZS5iZWZvcmUrIikiOiIiKTtlLl9jb21waWxlZD1uZXcgUmVnRXhwKCh0PyIoIit0KyIpIjoiIikrKC9bfFxce30oKVtcXV4kKyo/Li1dLy50ZXN0KGUuY2hhcmFjdGVyKT8iXFwiOiIiKStlLmNoYXJhY3RlcisoZS5hZnRlcj8iKD86IitlLmFmdGVyKyIpIjoiIiksImciKX1yZXR1cm4gZS5fY29tcGlsZWR9dmFyIGx5dD1sKCgpPT57fSk7ZnVuY3Rpb24gY3l0KGUsdCxyKXtsZXQgYT10LmluZGV4U3RhY2ssaT1lLmNoaWxkcmVufHxbXSxvPVtdLG49LTEscz1yLmJlZm9yZSxjO2EucHVzaCgtMSk7bGV0IGQ9dC5jcmVhdGVUcmFja2VyKHIpO2Zvcig7KytuPGkubGVuZ3RoOyl7bGV0IGY9aVtuXSx1O2lmKGFbYS5sZW5ndGgtMV09bixuKzE8aS5sZW5ndGgpe2xldCBiPXQuaGFuZGxlLmhhbmRsZXJzW2lbbisxXS50eXBlXTtiJiZiLnBlZWsmJihiPWIucGVlayksdT1iP2IoaVtuKzFdLGUsdCx7YmVmb3JlOiIiLGFmdGVyOiIiLC4uLmQuY3VycmVudCgpfSkuY2hhckF0KDApOiIifWVsc2UgdT1yLmFmdGVyO28ubGVuZ3RoPjAmJihzPT09IlxyInx8cz09PWAKYCkmJmYudHlwZT09PSJodG1sIiYmKG9bby5sZW5ndGgtMV09b1tvLmxlbmd0aC0xXS5yZXBsYWNlKC8oXHI/XG58XHIpJC8sIiAiKSxzPSIgIixkPXQuY3JlYXRlVHJhY2tlcihyKSxkLm1vdmUoby5qb2luKCIiKSkpO2xldCBwPXQuaGFuZGxlKGYsZSx0LHsuLi5kLmN1cnJlbnQoKSxhZnRlcjp1LGJlZm9yZTpzfSk7YyYmYz09PXAuc2xpY2UoMCwxKSYmKHA9R28oYy5jaGFyQ29kZUF0KDApKStwLnNsaWNlKDEpKTtsZXQgaD10LmF0dGVudGlvbkVuY29kZVN1cnJvdW5kaW5nSW5mbzt0LmF0dGVudGlvbkVuY29kZVN1cnJvdW5kaW5nSW5mbz12b2lkIDAsYz12b2lkIDAsaCYmKG8ubGVuZ3RoPjAmJmguYmVmb3JlJiZzPT09b1tvLmxlbmd0aC0xXS5zbGljZSgtMSkmJihvW28ubGVuZ3RoLTFdPW9bby5sZW5ndGgtMV0uc2xpY2UoMCwtMSkrR28ocy5jaGFyQ29kZUF0KDApKSksaC5hZnRlciYmKGM9dSkpLGQubW92ZShwKSxvLnB1c2gocCkscz1wLnNsaWNlKC0xKX1yZXR1cm4gYS5wb3AoKSxvLmpvaW4oIiIpfXZhciBkeXQ9bCgoKT0+e3htKCl9KTtmdW5jdGlvbiB1eXQoZSx0LHIpe2xldCBhPXQuaW5kZXhTdGFjayxpPWUuY2hpbGRyZW58fFtdLG89dC5jcmVhdGVUcmFja2VyKHIpLG49W10scz0tMTtmb3IoYS5wdXNoKC0xKTsrK3M8aS5sZW5ndGg7KXtsZXQgYz1pW3NdO2FbYS5sZW5ndGgtMV09cyxuLnB1c2goby5tb3ZlKHQuaGFuZGxlKGMsZSx0LHtiZWZvcmU6YApgLGFmdGVyOmAKYCwuLi5vLmN1cnJlbnQoKX0pKSksYy50eXBlIT09Imxpc3QiJiYodC5idWxsZXRMYXN0VXNlZD12b2lkIDApLHM8aS5sZW5ndGgtMSYmbi5wdXNoKG8ubW92ZShWZWEoYyxpW3MrMV0sZSx0KSkpfXJldHVybiBhLnBvcCgpLG4uam9pbigiIil9ZnVuY3Rpb24gVmVhKGUsdCxyLGEpe2xldCBpPWEuam9pbi5sZW5ndGg7Zm9yKDtpLS07KXtsZXQgbz1hLmpvaW5baV0oZSx0LHIsYSk7aWYobz09PSEwfHxvPT09MSlicmVhaztpZih0eXBlb2Ygbz09Im51bWJlciIpcmV0dXJuYApgLnJlcGVhdCgxK28pO2lmKG89PT0hMSlyZXR1cm5gCgo8IS0tLS0+CgpgfXJldHVybmAKCmB9dmFyIGZ5dD1sKCgpPT57fSk7ZnVuY3Rpb24gcHl0KGUsdCl7bGV0IHI9W10sYT0wLGk9MCxvO2Zvcig7bz1VZWEuZXhlYyhlKTspbihlLnNsaWNlKGEsby5pbmRleCkpLHIucHVzaChvWzBdKSxhPW8uaW5kZXgrb1swXS5sZW5ndGgsaSsrO3JldHVybiBuKGUuc2xpY2UoYSkpLHIuam9pbigiIik7ZnVuY3Rpb24gbihzKXtyLnB1c2godChzLGksIXMpKX19dmFyIFVlYSxoeXQ9bCgoKT0+e1VlYT0vXHI/XG58XHIvZ30pO2Z1bmN0aW9uIGd5dChlLHQscil7bGV0IGE9KHIuYmVmb3JlfHwiIikrKHR8fCIiKSsoci5hZnRlcnx8IiIpLGk9W10sbz1bXSxuPXt9LHM9LTE7Zm9yKDsrK3M8ZS51bnNhZmUubGVuZ3RoOyl7bGV0IGY9ZS51bnNhZmVbc107aWYoIVRlZShlLnN0YWNrLGYpKWNvbnRpbnVlO2xldCB1PWUuY29tcGlsZVBhdHRlcm4oZikscDtmb3IoO3A9dS5leGVjKGEpOyl7bGV0IGg9ImJlZm9yZSJpbiBmfHwhIWYuYXRCcmVhayxiPSJhZnRlciJpbiBmLHg9cC5pbmRleCsoaD9wWzFdLmxlbmd0aDowKTtpLmluY2x1ZGVzKHgpPyhuW3hdLmJlZm9yZSYmIWgmJihuW3hdLmJlZm9yZT0hMSksblt4XS5hZnRlciYmIWImJihuW3hdLmFmdGVyPSExKSk6KGkucHVzaCh4KSxuW3hdPXtiZWZvcmU6aCxhZnRlcjpifSl9fWkuc29ydChXZWEpO2xldCBjPXIuYmVmb3JlP3IuYmVmb3JlLmxlbmd0aDowLGQ9YS5sZW5ndGgtKHIuYWZ0ZXI/ci5hZnRlci5sZW5ndGg6MCk7Zm9yKHM9LTE7KytzPGkubGVuZ3RoOyl7bGV0IGY9aVtzXTtmPGN8fGY+PWR8fGYrMTxkJiZpW3MrMV09PT1mKzEmJm5bZl0uYWZ0ZXImJiFuW2YrMV0uYmVmb3JlJiYhbltmKzFdLmFmdGVyfHxpW3MtMV09PT1mLTEmJm5bZl0uYmVmb3JlJiYhbltmLTFdLmJlZm9yZSYmIW5bZi0xXS5hZnRlcnx8KGMhPT1mJiZvLnB1c2gobXl0KGEuc2xpY2UoYyxmKSwiXFwiKSksYz1mLC9bIS0vOi1AWy1gey1+XS8udGVzdChhLmNoYXJBdChmKSkmJighci5lbmNvZGV8fCFyLmVuY29kZS5pbmNsdWRlcyhhLmNoYXJBdChmKSkpP28ucHVzaCgiXFwiKTooby5wdXNoKEdvKGEuY2hhckNvZGVBdChmKSkpLGMrKykpfXJldHVybiBvLnB1c2gobXl0KGEuc2xpY2UoYyxkKSxyLmFmdGVyKSksby5qb2luKCIiKX1mdW5jdGlvbiBXZWEoZSx0KXtyZXR1cm4gZS10fWZ1bmN0aW9uIG15dChlLHQpe2xldCByPS9cXCg/PVshLS86LUBbLWB7LX5dKS9nLGE9W10saT1bXSxvPWUrdCxuPS0xLHM9MCxjO2Zvcig7Yz1yLmV4ZWMobyk7KWEucHVzaChjLmluZGV4KTtmb3IoOysrbjxhLmxlbmd0aDspcyE9PWFbbl0mJmkucHVzaChlLnNsaWNlKHMsYVtuXSkpLGkucHVzaCgiXFwiKSxzPWFbbl07cmV0dXJuIGkucHVzaChlLnNsaWNlKHMpKSxpLmpvaW4oIiIpfXZhciB4eXQ9bCgoKT0+e3htKCk7X2ZlKCl9KTtmdW5jdGlvbiBieXQoZSl7bGV0IHQ9ZXx8e30scj10Lm5vd3x8e30sYT10LmxpbmVTaGlmdHx8MCxpPXIubGluZXx8MSxvPXIuY29sdW1ufHwxO3JldHVybnttb3ZlOmMsY3VycmVudDpuLHNoaWZ0OnN9O2Z1bmN0aW9uIG4oKXtyZXR1cm57bm93OntsaW5lOmksY29sdW1uOm99LGxpbmVTaGlmdDphfX1mdW5jdGlvbiBzKGQpe2ErPWR9ZnVuY3Rpb24gYyhkKXtsZXQgZj1kfHwiIix1PWYuc3BsaXQoL1xyP1xufFxyL2cpLHA9dVt1Lmxlbmd0aC0xXTtyZXR1cm4gaSs9dS5sZW5ndGgtMSxvPXUubGVuZ3RoPT09MT9vK3AubGVuZ3RoOjErcC5sZW5ndGgrYSxmfX12YXIgdnl0PWwoKCk9Pnt9KTtmdW5jdGlvbiBXZmUoZSx0KXtsZXQgcj10fHx7fSxhPXthc3NvY2lhdGlvbklkOm95dCxjb250YWluZXJQaHJhc2luZzpYZWEsY29udGFpbmVyRmxvdzpRZWEsY3JlYXRlVHJhY2tlcjpieXQsY29tcGlsZVBhdHRlcm46c3l0LGVudGVyOm8saGFuZGxlcnM6ey4uLnpkfSxoYW5kbGU6dm9pZCAwLGluZGVudExpbmVzOnB5dCxpbmRleFN0YWNrOltdLGpvaW46Wy4uLmV5dF0sb3B0aW9uczp7fSxzYWZlOktlYSxzdGFjazpbXSx1bnNhZmU6Wy4uLnJ5dF19O0NmZShhLHIpLGEub3B0aW9ucy50aWdodERlZmluaXRpb25zJiZhLmpvaW4ucHVzaChaZWEpLGEuaGFuZGxlPV9lZSgidHlwZSIse2ludmFsaWQ6R2VhLHVua25vd246WWVhLGhhbmRsZXJzOmEuaGFuZGxlcnN9KTtsZXQgaT1hLmhhbmRsZShlLHZvaWQgMCxhLHtiZWZvcmU6YApgLGFmdGVyOmAKYCxub3c6e2xpbmU6MSxjb2x1bW46MX0sbGluZVNoaWZ0OjB9KTtyZXR1cm4gaSYmaS5jaGFyQ29kZUF0KGkubGVuZ3RoLTEpIT09MTAmJmkuY2hhckNvZGVBdChpLmxlbmd0aC0xKSE9PTEzJiYoaSs9YApgKSxpO2Z1bmN0aW9uIG8obil7cmV0dXJuIGEuc3RhY2sucHVzaChuKSxzO2Z1bmN0aW9uIHMoKXthLnN0YWNrLnBvcCgpfX19ZnVuY3Rpb24gR2VhKGUpe3Rocm93IG5ldyBFcnJvcigiQ2Fubm90IGhhbmRsZSB2YWx1ZSBgIitlKyJgLCBleHBlY3RlZCBub2RlIil9ZnVuY3Rpb24gWWVhKGUpe2xldCB0PWU7dGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgaGFuZGxlIHVua25vd24gbm9kZSBgIit0LnR5cGUrImAiKX1mdW5jdGlvbiBaZWEoZSx0KXtpZihlLnR5cGU9PT0iZGVmaW5pdGlvbiImJmUudHlwZT09PXQudHlwZSlyZXR1cm4gMH1mdW5jdGlvbiBYZWEoZSx0KXtyZXR1cm4gY3l0KGUsdGhpcyx0KX1mdW5jdGlvbiBRZWEoZSx0KXtyZXR1cm4gdXl0KGUsdGhpcyx0KX1mdW5jdGlvbiBLZWEoZSx0KXtyZXR1cm4gZ3l0KHRoaXMsZSx0KX12YXIgeXl0PWwoKCk9Pnt6ZmUoKTtldnQoKTtWZmUoKTt0eXQoKTtheXQoKTtueXQoKTtseXQoKTtkeXQoKTtmeXQoKTtoeXQoKTt4eXQoKTt2eXQoKX0pO3ZhciBGZWU9bCgoKT0+e3l5dCgpO1ZmZSgpfSk7ZnVuY3Rpb24gWWZlKCl7cmV0dXJue2VudGVyOnt0YWJsZTpKZWEsdGFibGVEYXRhOnd5dCx0YWJsZUhlYWRlcjp3eXQsdGFibGVSb3c6dHRhfSxleGl0Ontjb2RlVGV4dDpydGEsdGFibGU6ZXRhLHRhYmxlRGF0YTpHZmUsdGFibGVIZWFkZXI6R2ZlLHRhYmxlUm93OkdmZX19fWZ1bmN0aW9uIEplYShlKXtsZXQgdD1lLl9hbGlnbjt0aGlzLmVudGVyKHt0eXBlOiJ0YWJsZSIsYWxpZ246dC5tYXAoZnVuY3Rpb24ocil7cmV0dXJuIHI9PT0ibm9uZSI/bnVsbDpyfSksY2hpbGRyZW46W119LGUpLHRoaXMuZGF0YS5pblRhYmxlPSEwfWZ1bmN0aW9uIGV0YShlKXt0aGlzLmV4aXQoZSksdGhpcy5kYXRhLmluVGFibGU9dm9pZCAwfWZ1bmN0aW9uIHR0YShlKXt0aGlzLmVudGVyKHt0eXBlOiJ0YWJsZVJvdyIsY2hpbGRyZW46W119LGUpfWZ1bmN0aW9uIEdmZShlKXt0aGlzLmV4aXQoZSl9ZnVuY3Rpb24gd3l0KGUpe3RoaXMuZW50ZXIoe3R5cGU6InRhYmxlQ2VsbCIsY2hpbGRyZW46W119LGUpfWZ1bmN0aW9uIHJ0YShlKXtsZXQgdD10aGlzLnJlc3VtZSgpO3RoaXMuZGF0YS5pblRhYmxlJiYodD10LnJlcGxhY2UoL1xcKFtcXHxdKS9nLGF0YSkpO2xldCByPXRoaXMuc3RhY2tbdGhpcy5zdGFjay5sZW5ndGgtMV07ci50eXBlLHIudmFsdWU9dCx0aGlzLmV4aXQoZSl9ZnVuY3Rpb24gYXRhKGUsdCl7cmV0dXJuIHQ9PT0ifCI/dDplfWZ1bmN0aW9uIFpmZShlKXtsZXQgdD1lfHx7fSxyPXQudGFibGVDZWxsUGFkZGluZyxhPXQudGFibGVQaXBlQWxpZ24saT10LnN0cmluZ0xlbmd0aCxvPXI/IiAiOiJ8IjtyZXR1cm57dW5zYWZlOlt7Y2hhcmFjdGVyOiJcciIsaW5Db25zdHJ1Y3Q6InRhYmxlQ2VsbCJ9LHtjaGFyYWN0ZXI6YApgLGluQ29uc3RydWN0OiJ0YWJsZUNlbGwifSx7YXRCcmVhazohMCxjaGFyYWN0ZXI6InwiLGFmdGVyOiJbCSA6LV0ifSx7Y2hhcmFjdGVyOiJ8IixpbkNvbnN0cnVjdDoidGFibGVDZWxsIn0se2F0QnJlYWs6ITAsY2hhcmFjdGVyOiI6IixhZnRlcjoiLSJ9LHthdEJyZWFrOiEwLGNoYXJhY3RlcjoiLSIsYWZ0ZXI6Ils6fC1dIn1dLGhhbmRsZXJzOntpbmxpbmVDb2RlOnAsdGFibGU6bix0YWJsZUNlbGw6Yyx0YWJsZVJvdzpzfX07ZnVuY3Rpb24gbihoLGIseCxnKXtyZXR1cm4gZChmKGgseCxnKSxoLmFsaWduKX1mdW5jdGlvbiBzKGgsYix4LGcpe2xldCB2PXUoaCx4LGcpLHc9ZChbdl0pO3JldHVybiB3LnNsaWNlKDAsdy5pbmRleE9mKGAKYCkpfWZ1bmN0aW9uIGMoaCxiLHgsZyl7bGV0IHY9eC5lbnRlcigidGFibGVDZWxsIiksdz14LmVudGVyKCJwaHJhc2luZyIpLE09eC5jb250YWluZXJQaHJhc2luZyhoLHsuLi5nLGJlZm9yZTpvLGFmdGVyOm99KTtyZXR1cm4gdygpLHYoKSxNfWZ1bmN0aW9uIGQoaCxiKXtyZXR1cm4gWGJ0KGgse2FsaWduOmIsYWxpZ25EZWxpbWl0ZXJzOmEscGFkZGluZzpyLHN0cmluZ0xlbmd0aDppfSl9ZnVuY3Rpb24gZihoLGIseCl7bGV0IGc9aC5jaGlsZHJlbix2PS0xLHc9W10sTT1iLmVudGVyKCJ0YWJsZSIpO2Zvcig7Kyt2PGcubGVuZ3RoOyl3W3ZdPXUoZ1t2XSxiLHgpO3JldHVybiBNKCksd31mdW5jdGlvbiB1KGgsYix4KXtsZXQgZz1oLmNoaWxkcmVuLHY9LTEsdz1bXSxNPWIuZW50ZXIoInRhYmxlUm93Iik7Zm9yKDsrK3Y8Zy5sZW5ndGg7KXdbdl09YyhnW3ZdLGgsYix4KTtyZXR1cm4gTSgpLHd9ZnVuY3Rpb24gcChoLGIseCl7bGV0IGc9emQuaW5saW5lQ29kZShoLGIseCk7cmV0dXJuIHguc3RhY2suaW5jbHVkZXMoInRhYmxlQ2VsbCIpJiYoZz1nLnJlcGxhY2UoL1x8L2csIlxcJCYiKSksZ319dmFyIE15dD1sKCgpPT57QjAoKTtRYnQoKTtGZWUoKX0pO3ZhciBreXQ9bCgoKT0+e015dCgpfSk7ZnVuY3Rpb24gWGZlKCl7cmV0dXJue2V4aXQ6e3Rhc2tMaXN0Q2hlY2tWYWx1ZUNoZWNrZWQ6U3l0LHRhc2tMaXN0Q2hlY2tWYWx1ZVVuY2hlY2tlZDpTeXQscGFyYWdyYXBoOml0YX19fWZ1bmN0aW9uIFFmZSgpe3JldHVybnt1bnNhZmU6W3thdEJyZWFrOiEwLGNoYXJhY3RlcjoiLSIsYWZ0ZXI6Ils6fC1dIn1dLGhhbmRsZXJzOntsaXN0SXRlbTpvdGF9fX1mdW5jdGlvbiBTeXQoZSl7bGV0IHQ9dGhpcy5zdGFja1t0aGlzLnN0YWNrLmxlbmd0aC0yXTt0LnR5cGUsdC5jaGVja2VkPWUudHlwZT09PSJ0YXNrTGlzdENoZWNrVmFsdWVDaGVja2VkIn1mdW5jdGlvbiBpdGEoZSl7bGV0IHQ9dGhpcy5zdGFja1t0aGlzLnN0YWNrLmxlbmd0aC0yXTtpZih0JiZ0LnR5cGU9PT0ibGlzdEl0ZW0iJiZ0eXBlb2YgdC5jaGVja2VkPT0iYm9vbGVhbiIpe2xldCByPXRoaXMuc3RhY2tbdGhpcy5zdGFjay5sZW5ndGgtMV07ci50eXBlO2xldCBhPXIuY2hpbGRyZW5bMF07aWYoYSYmYS50eXBlPT09InRleHQiKXtsZXQgaT10LmNoaWxkcmVuLG89LTEsbjtmb3IoOysrbzxpLmxlbmd0aDspe2xldCBzPWlbb107aWYocy50eXBlPT09InBhcmFncmFwaCIpe249czticmVha319bj09PXImJihhLnZhbHVlPWEudmFsdWUuc2xpY2UoMSksYS52YWx1ZS5sZW5ndGg9PT0wP3IuY2hpbGRyZW4uc2hpZnQoKTpyLnBvc2l0aW9uJiZhLnBvc2l0aW9uJiZ0eXBlb2YgYS5wb3NpdGlvbi5zdGFydC5vZmZzZXQ9PSJudW1iZXIiJiYoYS5wb3NpdGlvbi5zdGFydC5jb2x1bW4rKyxhLnBvc2l0aW9uLnN0YXJ0Lm9mZnNldCsrLHIucG9zaXRpb24uc3RhcnQ9T2JqZWN0LmFzc2lnbih7fSxhLnBvc2l0aW9uLnN0YXJ0KSkpfX10aGlzLmV4aXQoZSl9ZnVuY3Rpb24gb3RhKGUsdCxyLGEpe2xldCBpPWUuY2hpbGRyZW5bMF0sbz10eXBlb2YgZS5jaGVja2VkPT0iYm9vbGVhbiImJmkmJmkudHlwZT09PSJwYXJhZ3JhcGgiLG49IlsiKyhlLmNoZWNrZWQ/IngiOiIgIikrIl0gIixzPXIuY3JlYXRlVHJhY2tlcihhKTtvJiZzLm1vdmUobik7bGV0IGM9emQubGlzdEl0ZW0oZSx0LHIsey4uLmEsLi4ucy5jdXJyZW50KCl9KTtyZXR1cm4gbyYmKGM9Yy5yZXBsYWNlKC9eKD86WyorLV18XGQrXC4pKFtcclxuXXwgezEsM30pLyxkKSksYztmdW5jdGlvbiBkKGYpe3JldHVybiBmK259fXZhciB6eXQ9bCgoKT0+e0IwKCk7RmVlKCl9KTt2YXIgQ3l0PWwoKCk9Pnt6eXQoKX0pO2Z1bmN0aW9uIEtmZSgpe3JldHVyblt2ZmUoKSx3ZmUoKSxrZmUoKSxZZmUoKSxYZmUoKV19ZnVuY3Rpb24gSmZlKGUpe3JldHVybntleHRlbnNpb25zOlt5ZmUoKSxNZmUoZSksU2ZlKCksWmZlKGUpLFFmZSgpXX19dmFyIF95dD1sKCgpPT57SGJ0KCk7VWJ0KCk7WWJ0KCk7a3l0KCk7Q3l0KCl9KTt2YXIgVHl0PWwoKCk9PntfeXQoKX0pO2Z1bmN0aW9uIEthKGUsdCxyLGEpe2xldCBpPWUubGVuZ3RoLG89MCxuO2lmKHQ8MD90PS10Pmk/MDppK3Q6dD10Pmk/aTp0LHI9cj4wP3I6MCxhLmxlbmd0aDwxZTQpbj1BcnJheS5mcm9tKGEpLG4udW5zaGlmdCh0LHIpLGUuc3BsaWNlKC4uLm4pO2Vsc2UgZm9yKHImJmUuc3BsaWNlKHQscik7bzxhLmxlbmd0aDspbj1hLnNsaWNlKG8sbysxZTQpLG4udW5zaGlmdCh0LDApLGUuc3BsaWNlKC4uLm4pLG8rPTFlNCx0Kz0xZTR9ZnVuY3Rpb24gdWkoZSx0KXtyZXR1cm4gZS5sZW5ndGg+MD8oS2EoZSxlLmxlbmd0aCwwLHQpLGUpOnR9dmFyIHkyPWwoKCk9Pnt9KTtmdW5jdGlvbiBPZWUoZSl7bGV0IHQ9e30scj0tMTtmb3IoOysrcjxlLmxlbmd0aDspbnRhKHQsZVtyXSk7cmV0dXJuIHR9ZnVuY3Rpb24gbnRhKGUsdCl7bGV0IHI7Zm9yKHIgaW4gdCl7bGV0IGk9KGU1ZS5jYWxsKGUscik/ZVtyXTp2b2lkIDApfHwoZVtyXT17fSksbz10W3JdLG47aWYobylmb3IobiBpbiBvKXtlNWUuY2FsbChpLG4pfHwoaVtuXT1bXSk7bGV0IHM9b1tuXTtzdGEoaVtuXSxBcnJheS5pc0FycmF5KHMpP3M6cz9bc106W10pfX19ZnVuY3Rpb24gc3RhKGUsdCl7bGV0IHI9LTEsYT1bXTtmb3IoOysrcjx0Lmxlbmd0aDspKHRbcl0uYWRkPT09ImFmdGVyIj9lOmEpLnB1c2godFtyXSk7S2EoZSwwLDAsYSl9ZnVuY3Rpb24gUmVlKGUpe2xldCB0PXt9LHI9LTE7Zm9yKDsrK3I8ZS5sZW5ndGg7KWx0YSh0LGVbcl0pO3JldHVybiB0fWZ1bmN0aW9uIGx0YShlLHQpe2xldCByO2ZvcihyIGluIHQpe2xldCBpPShlNWUuY2FsbChlLHIpP2Vbcl06dm9pZCAwKXx8KGVbcl09e30pLG89dFtyXSxuO2lmKG8pZm9yKG4gaW4gbylpW25dPW9bbl19fXZhciBlNWUsQmVlPWwoKCk9Pnt5MigpO2U1ZT17fS5oYXNPd25Qcm9wZXJ0eX0pO2Z1bmN0aW9uIGE1ZSgpe3JldHVybnt0ZXh0OncyfX1mdW5jdGlvbiB1dGEoZSx0LHIpe2xldCBhPXRoaXMsaSxvO3JldHVybiBuO2Z1bmN0aW9uIG4odSl7cmV0dXJuIXQ1ZSh1KXx8IU55dC5jYWxsKGEsYS5wcmV2aW91cyl8fHI1ZShhLmV2ZW50cyk/cih1KTooZS5lbnRlcigibGl0ZXJhbEF1dG9saW5rIiksZS5lbnRlcigibGl0ZXJhbEF1dG9saW5rRW1haWwiKSxzKHUpKX1mdW5jdGlvbiBzKHUpe3JldHVybiB0NWUodSk/KGUuY29uc3VtZSh1KSxzKTp1PT09NjQ/KGUuY29uc3VtZSh1KSxjKTpyKHUpfWZ1bmN0aW9uIGModSl7cmV0dXJuIHU9PT00Nj9lLmNoZWNrKGR0YSxmLGQpKHUpOnU9PT00NXx8dT09PTk1fHxIYSh1KT8obz0hMCxlLmNvbnN1bWUodSksYyk6Zih1KX1mdW5jdGlvbiBkKHUpe3JldHVybiBlLmNvbnN1bWUodSksaT0hMCxjfWZ1bmN0aW9uIGYodSl7cmV0dXJuIG8mJmkmJlRpKGEucHJldmlvdXMpPyhlLmV4aXQoImxpdGVyYWxBdXRvbGlua0VtYWlsIiksZS5leGl0KCJsaXRlcmFsQXV0b2xpbmsiKSx0KHUpKTpyKHUpfX1mdW5jdGlvbiBmdGEoZSx0LHIpe2xldCBhPXRoaXM7cmV0dXJuIGk7ZnVuY3Rpb24gaShuKXtyZXR1cm4gbiE9PTg3JiZuIT09MTE5fHwhUHl0LmNhbGwoYSxhLnByZXZpb3VzKXx8cjVlKGEuZXZlbnRzKT9yKG4pOihlLmVudGVyKCJsaXRlcmFsQXV0b2xpbmsiKSxlLmVudGVyKCJsaXRlcmFsQXV0b2xpbmtXd3ciKSxlLmNoZWNrKGN0YSxlLmF0dGVtcHQoTHl0LGUuYXR0ZW1wdChEeXQsbykscikscikobikpfWZ1bmN0aW9uIG8obil7cmV0dXJuIGUuZXhpdCgibGl0ZXJhbEF1dG9saW5rV3d3IiksZS5leGl0KCJsaXRlcmFsQXV0b2xpbmsiKSx0KG4pfX1mdW5jdGlvbiBwdGEoZSx0LHIpe2xldCBhPXRoaXMsaT0iIixvPSExO3JldHVybiBuO2Z1bmN0aW9uIG4odSl7cmV0dXJuKHU9PT03Mnx8dT09PTEwNCkmJkl5dC5jYWxsKGEsYS5wcmV2aW91cykmJiFyNWUoYS5ldmVudHMpPyhlLmVudGVyKCJsaXRlcmFsQXV0b2xpbmsiKSxlLmVudGVyKCJsaXRlcmFsQXV0b2xpbmtIdHRwIiksaSs9U3RyaW5nLmZyb21Db2RlUG9pbnQodSksZS5jb25zdW1lKHUpLHMpOnIodSl9ZnVuY3Rpb24gcyh1KXtpZihUaSh1KSYmaS5sZW5ndGg8NSlyZXR1cm4gaSs9U3RyaW5nLmZyb21Db2RlUG9pbnQodSksZS5jb25zdW1lKHUpLHM7aWYodT09PTU4KXtsZXQgcD1pLnRvTG93ZXJDYXNlKCk7aWYocD09PSJodHRwInx8cD09PSJodHRwcyIpcmV0dXJuIGUuY29uc3VtZSh1KSxjfXJldHVybiByKHUpfWZ1bmN0aW9uIGModSl7cmV0dXJuIHU9PT00Nz8oZS5jb25zdW1lKHUpLG8/ZDoobz0hMCxjKSk6cih1KX1mdW5jdGlvbiBkKHUpe3JldHVybiB1PT09bnVsbHx8d2QodSl8fG9yKHUpfHx2Mih1KXx8TWQodSk/cih1KTplLmF0dGVtcHQoTHl0LGUuYXR0ZW1wdChEeXQsZikscikodSl9ZnVuY3Rpb24gZih1KXtyZXR1cm4gZS5leGl0KCJsaXRlcmFsQXV0b2xpbmtIdHRwIiksZS5leGl0KCJsaXRlcmFsQXV0b2xpbmsiKSx0KHUpfX1mdW5jdGlvbiBodGEoZSx0LHIpe2xldCBhPTA7cmV0dXJuIGk7ZnVuY3Rpb24gaShuKXtyZXR1cm4obj09PTg3fHxuPT09MTE5KSYmYTwzPyhhKyssZS5jb25zdW1lKG4pLGkpOm49PT00NiYmYT09PTM/KGUuY29uc3VtZShuKSxvKTpyKG4pfWZ1bmN0aW9uIG8obil7cmV0dXJuIG49PT1udWxsP3Iobik6dChuKX19ZnVuY3Rpb24gbXRhKGUsdCxyKXtsZXQgYSxpLG87cmV0dXJuIG47ZnVuY3Rpb24gbihkKXtyZXR1cm4gZD09PTQ2fHxkPT09OTU/ZS5jaGVjayhBeXQsYyxzKShkKTpkPT09bnVsbHx8b3IoZCl8fHYyKGQpfHxkIT09NDUmJk1kKGQpP2MoZCk6KG89ITAsZS5jb25zdW1lKGQpLG4pfWZ1bmN0aW9uIHMoZCl7cmV0dXJuIGQ9PT05NT9hPSEwOihpPWEsYT12b2lkIDApLGUuY29uc3VtZShkKSxufWZ1bmN0aW9uIGMoZCl7cmV0dXJuIGl8fGF8fCFvP3IoZCk6dChkKX19ZnVuY3Rpb24gZ3RhKGUsdCl7bGV0IHI9MCxhPTA7cmV0dXJuIGk7ZnVuY3Rpb24gaShuKXtyZXR1cm4gbj09PTQwPyhyKyssZS5jb25zdW1lKG4pLGkpOm49PT00MSYmYTxyP28obik6bj09PTMzfHxuPT09MzR8fG49PT0zOHx8bj09PTM5fHxuPT09NDF8fG49PT00Mnx8bj09PTQ0fHxuPT09NDZ8fG49PT01OHx8bj09PTU5fHxuPT09NjB8fG49PT02M3x8bj09PTkzfHxuPT09OTV8fG49PT0xMjY/ZS5jaGVjayhBeXQsdCxvKShuKTpuPT09bnVsbHx8b3Iobil8fHYyKG4pP3Qobik6KGUuY29uc3VtZShuKSxpKX1mdW5jdGlvbiBvKG4pe3JldHVybiBuPT09NDEmJmErKyxlLmNvbnN1bWUobiksaX19ZnVuY3Rpb24geHRhKGUsdCxyKXtyZXR1cm4gYTtmdW5jdGlvbiBhKHMpe3JldHVybiBzPT09MzN8fHM9PT0zNHx8cz09PTM5fHxzPT09NDF8fHM9PT00Mnx8cz09PTQ0fHxzPT09NDZ8fHM9PT01OHx8cz09PTU5fHxzPT09NjN8fHM9PT05NXx8cz09PTEyNj8oZS5jb25zdW1lKHMpLGEpOnM9PT0zOD8oZS5jb25zdW1lKHMpLG8pOnM9PT05Mz8oZS5jb25zdW1lKHMpLGkpOnM9PT02MHx8cz09PW51bGx8fG9yKHMpfHx2MihzKT90KHMpOnIocyl9ZnVuY3Rpb24gaShzKXtyZXR1cm4gcz09PW51bGx8fHM9PT00MHx8cz09PTkxfHxvcihzKXx8djIocyk/dChzKTphKHMpfWZ1bmN0aW9uIG8ocyl7cmV0dXJuIFRpKHMpP24ocyk6cihzKX1mdW5jdGlvbiBuKHMpe3JldHVybiBzPT09NTk/KGUuY29uc3VtZShzKSxhKTpUaShzKT8oZS5jb25zdW1lKHMpLG4pOnIocyl9fWZ1bmN0aW9uIGJ0YShlLHQscil7cmV0dXJuIGE7ZnVuY3Rpb24gYShvKXtyZXR1cm4gZS5jb25zdW1lKG8pLGl9ZnVuY3Rpb24gaShvKXtyZXR1cm4gSGEobyk/cihvKTp0KG8pfX1mdW5jdGlvbiBQeXQoZSl7cmV0dXJuIGU9PT1udWxsfHxlPT09NDB8fGU9PT00Mnx8ZT09PTk1fHxlPT09OTF8fGU9PT05M3x8ZT09PTEyNnx8b3IoZSl9ZnVuY3Rpb24gSXl0KGUpe3JldHVybiFUaShlKX1mdW5jdGlvbiBOeXQoZSl7cmV0dXJuIShlPT09NDd8fHQ1ZShlKSl9ZnVuY3Rpb24gdDVlKGUpe3JldHVybiBlPT09NDN8fGU9PT00NXx8ZT09PTQ2fHxlPT09OTV8fEhhKGUpfWZ1bmN0aW9uIHI1ZShlKXtsZXQgdD1lLmxlbmd0aCxyPSExO2Zvcig7dC0tOyl7bGV0IGE9ZVt0XVsxXTtpZigoYS50eXBlPT09ImxhYmVsTGluayJ8fGEudHlwZT09PSJsYWJlbEltYWdlIikmJiFhLl9iYWxhbmNlZCl7cj0hMDticmVha31pZihhLl9nZm1BdXRvbGlua0xpdGVyYWxXYWxrZWRJbnRvKXtyPSExO2JyZWFrfX1yZXR1cm4gZS5sZW5ndGg+MCYmIXImJihlW2UubGVuZ3RoLTFdWzFdLl9nZm1BdXRvbGlua0xpdGVyYWxXYWxrZWRJbnRvPSEwKSxyfXZhciBjdGEsTHl0LER5dCxBeXQsZHRhLEV5dCwkeXQsamwsdzIsRnl0PWwoKCk9Pnt1cigpO2N0YT17dG9rZW5pemU6aHRhLHBhcnRpYWw6ITB9LEx5dD17dG9rZW5pemU6bXRhLHBhcnRpYWw6ITB9LER5dD17dG9rZW5pemU6Z3RhLHBhcnRpYWw6ITB9LEF5dD17dG9rZW5pemU6eHRhLHBhcnRpYWw6ITB9LGR0YT17dG9rZW5pemU6YnRhLHBhcnRpYWw6ITB9LEV5dD17bmFtZToid3d3QXV0b2xpbmsiLHRva2VuaXplOmZ0YSxwcmV2aW91czpQeXR9LCR5dD17bmFtZToicHJvdG9jb2xBdXRvbGluayIsdG9rZW5pemU6cHRhLHByZXZpb3VzOkl5dH0samw9e25hbWU6ImVtYWlsQXV0b2xpbmsiLHRva2VuaXplOnV0YSxwcmV2aW91czpOeXR9LHcyPXt9O2Zvcih2YXIgX2Q9NDg7X2Q8MTIzOyl3MltfZF09amwsX2QrKyxfZD09PTU4P19kPTY1Ol9kPT09OTEmJihfZD05Nyk7dzJbNDNdPWpsLHcyWzQ1XT1qbCx3Mls0Nl09amwsdzJbOTVdPWpsLHcyWzcyXT1bamwsJHl0XSx3MlsxMDRdPVtqbCwkeXRdLHcyWzg3XT1bamwsRXl0XSx3MlsxMTldPVtqbCxFeXRdfSk7ZnVuY3Rpb24gSGVlKGUpe3JldHVybiBlLnJlcGxhY2UoL1siJjw+XS9nLHQpO2Z1bmN0aW9uIHQocil7cmV0dXJuIiYiK3Z0YVtyXSsiOyJ9fXZhciB2dGEsaTVlPWwoKCk9Pnt2dGE9eyciJzoicXVvdCIsIiYiOiJhbXAiLCI8IjoibHQiLCI+IjoiZ3QifX0pO2Z1bmN0aW9uIE0yKGUsdCl7bGV0IHI9SGVlKFlvKGV8fCIiKSk7aWYoIXQpcmV0dXJuIHI7bGV0IGE9ci5pbmRleE9mKCI6IiksaT1yLmluZGV4T2YoIj8iKSxvPXIuaW5kZXhPZigiIyIpLG49ci5pbmRleE9mKCIvIik7cmV0dXJuIGE8MHx8bj4tMSYmYT5ufHxpPi0xJiZhPml8fG8+LTEmJmE+b3x8dC50ZXN0KHIuc2xpY2UoMCxhKSk/cjoiIn1mdW5jdGlvbiBZbyhlKXtsZXQgdD1bXSxyPS0xLGE9MCxpPTA7Zm9yKDsrK3I8ZS5sZW5ndGg7KXtsZXQgbz1lLmNoYXJDb2RlQXQociksbj0iIjtpZihvPT09MzcmJkhhKGUuY2hhckNvZGVBdChyKzEpKSYmSGEoZS5jaGFyQ29kZUF0KHIrMikpKWk9MjtlbHNlIGlmKG88MTI4KS9bISMkJi07PT8tWl9hLXp+XS8udGVzdChTdHJpbmcuZnJvbUNoYXJDb2RlKG8pKXx8KG49U3RyaW5nLmZyb21DaGFyQ29kZShvKSk7ZWxzZSBpZihvPjU1Mjk1JiZvPDU3MzQ0KXtsZXQgcz1lLmNoYXJDb2RlQXQocisxKTtvPDU2MzIwJiZzPjU2MzE5JiZzPDU3MzQ0PyhuPVN0cmluZy5mcm9tQ2hhckNvZGUobyxzKSxpPTEpOm49Ilx1RkZGRCJ9ZWxzZSBuPVN0cmluZy5mcm9tQ2hhckNvZGUobyk7biYmKHQucHVzaChlLnNsaWNlKGEsciksZW5jb2RlVVJJQ29tcG9uZW50KG4pKSxhPXIraSsxLG49IiIpLGkmJihyKz1pLGk9MCl9cmV0dXJuIHQuam9pbigiIikrZS5zbGljZShhKX12YXIgazI9bCgoKT0+e3VyKCk7aTVlKCl9KTtmdW5jdGlvbiBuNWUoKXtyZXR1cm57ZXhpdDp7bGl0ZXJhbEF1dG9saW5rRW1haWw6d3RhLGxpdGVyYWxBdXRvbGlua0h0dHA6TXRhLGxpdGVyYWxBdXRvbGlua1d3dzp5dGF9fX1mdW5jdGlvbiB5dGEoZSl7bzVlLmNhbGwodGhpcyxlLCJodHRwOi8vIil9ZnVuY3Rpb24gd3RhKGUpe281ZS5jYWxsKHRoaXMsZSwibWFpbHRvOiIpfWZ1bmN0aW9uIE10YShlKXtvNWUuY2FsbCh0aGlzLGUpfWZ1bmN0aW9uIG81ZShlLHQpe2xldCByPXRoaXMuc2xpY2VTZXJpYWxpemUoZSk7dGhpcy50YWcoJzxhIGhyZWY9IicrTTIoKHR8fCIiKStyKSsnIj4nKSx0aGlzLnJhdyh0aGlzLmVuY29kZShyKSksdGhpcy50YWcoIjwvYT4iKX12YXIgT3l0PWwoKCk9PntrMigpfSk7dmFyIFJ5dD1sKCgpPT57Rnl0KCk7T3l0KCl9KTtmdW5jdGlvbiBVMChlLHQscil7bGV0IGE9W10saT0tMTtmb3IoOysraTxlLmxlbmd0aDspe2xldCBvPWVbaV0ucmVzb2x2ZUFsbDtvJiYhYS5pbmNsdWRlcyhvKSYmKHQ9byh0LHIpLGEucHVzaChvKSl9cmV0dXJuIHR9dmFyIHNiPWwoKCk9Pnt9KTtmdW5jdGlvbiBrdGEoZSx0KXtsZXQgcj0tMSxhLGksbyxuLHMsYyxkLGY7Zm9yKDsrK3I8ZS5sZW5ndGg7KWlmKGVbcl1bMF09PT0iZW50ZXIiJiZlW3JdWzFdLnR5cGU9PT0iYXR0ZW50aW9uU2VxdWVuY2UiJiZlW3JdWzFdLl9jbG9zZSl7Zm9yKGE9cjthLS07KWlmKGVbYV1bMF09PT0iZXhpdCImJmVbYV1bMV0udHlwZT09PSJhdHRlbnRpb25TZXF1ZW5jZSImJmVbYV1bMV0uX29wZW4mJnQuc2xpY2VTZXJpYWxpemUoZVthXVsxXSkuY2hhckNvZGVBdCgwKT09PXQuc2xpY2VTZXJpYWxpemUoZVtyXVsxXSkuY2hhckNvZGVBdCgwKSl7aWYoKGVbYV1bMV0uX2Nsb3NlfHxlW3JdWzFdLl9vcGVuKSYmKGVbcl1bMV0uZW5kLm9mZnNldC1lW3JdWzFdLnN0YXJ0Lm9mZnNldCklMyYmISgoZVthXVsxXS5lbmQub2Zmc2V0LWVbYV1bMV0uc3RhcnQub2Zmc2V0K2Vbcl1bMV0uZW5kLm9mZnNldC1lW3JdWzFdLnN0YXJ0Lm9mZnNldCklMykpY29udGludWU7Yz1lW2FdWzFdLmVuZC5vZmZzZXQtZVthXVsxXS5zdGFydC5vZmZzZXQ+MSYmZVtyXVsxXS5lbmQub2Zmc2V0LWVbcl1bMV0uc3RhcnQub2Zmc2V0PjE/MjoxO2xldCB1PXsuLi5lW2FdWzFdLmVuZH0scD17Li4uZVtyXVsxXS5zdGFydH07Qnl0KHUsLWMpLEJ5dChwLGMpLG49e3R5cGU6Yz4xPyJzdHJvbmdTZXF1ZW5jZSI6ImVtcGhhc2lzU2VxdWVuY2UiLHN0YXJ0OnUsZW5kOnsuLi5lW2FdWzFdLmVuZH19LHM9e3R5cGU6Yz4xPyJzdHJvbmdTZXF1ZW5jZSI6ImVtcGhhc2lzU2VxdWVuY2UiLHN0YXJ0OnsuLi5lW3JdWzFdLnN0YXJ0fSxlbmQ6cH0sbz17dHlwZTpjPjE/InN0cm9uZ1RleHQiOiJlbXBoYXNpc1RleHQiLHN0YXJ0OnsuLi5lW2FdWzFdLmVuZH0sZW5kOnsuLi5lW3JdWzFdLnN0YXJ0fX0saT17dHlwZTpjPjE/InN0cm9uZyI6ImVtcGhhc2lzIixzdGFydDp7Li4ubi5zdGFydH0sZW5kOnsuLi5zLmVuZH19LGVbYV1bMV0uZW5kPXsuLi5uLnN0YXJ0fSxlW3JdWzFdLnN0YXJ0PXsuLi5zLmVuZH0sZD1bXSxlW2FdWzFdLmVuZC5vZmZzZXQtZVthXVsxXS5zdGFydC5vZmZzZXQmJihkPXVpKGQsW1siZW50ZXIiLGVbYV1bMV0sdF0sWyJleGl0IixlW2FdWzFdLHRdXSkpLGQ9dWkoZCxbWyJlbnRlciIsaSx0XSxbImVudGVyIixuLHRdLFsiZXhpdCIsbix0XSxbImVudGVyIixvLHRdXSksZD11aShkLFUwKHQucGFyc2VyLmNvbnN0cnVjdHMuaW5zaWRlU3Bhbi5udWxsLGUuc2xpY2UoYSsxLHIpLHQpKSxkPXVpKGQsW1siZXhpdCIsbyx0XSxbImVudGVyIixzLHRdLFsiZXhpdCIscyx0XSxbImV4aXQiLGksdF1dKSxlW3JdWzFdLmVuZC5vZmZzZXQtZVtyXVsxXS5zdGFydC5vZmZzZXQ/KGY9MixkPXVpKGQsW1siZW50ZXIiLGVbcl1bMV0sdF0sWyJleGl0IixlW3JdWzFdLHRdXSkpOmY9MCxLYShlLGEtMSxyLWErMyxkKSxyPWErZC5sZW5ndGgtZi0yO2JyZWFrfX1mb3Iocj0tMTsrK3I8ZS5sZW5ndGg7KWVbcl1bMV0udHlwZT09PSJhdHRlbnRpb25TZXF1ZW5jZSImJihlW3JdWzFdLnR5cGU9ImRhdGEiKTtyZXR1cm4gZX1mdW5jdGlvbiBTdGEoZSx0KXtsZXQgcj10aGlzLnBhcnNlci5jb25zdHJ1Y3RzLmF0dGVudGlvbk1hcmtlcnMubnVsbCxhPXRoaXMucHJldmlvdXMsaT1xbChhKSxvO3JldHVybiBuO2Z1bmN0aW9uIG4oYyl7cmV0dXJuIG89YyxlLmVudGVyKCJhdHRlbnRpb25TZXF1ZW5jZSIpLHMoYyl9ZnVuY3Rpb24gcyhjKXtpZihjPT09bylyZXR1cm4gZS5jb25zdW1lKGMpLHM7bGV0IGQ9ZS5leGl0KCJhdHRlbnRpb25TZXF1ZW5jZSIpLGY9cWwoYyksdT0hZnx8Zj09PTImJml8fHIuaW5jbHVkZXMoYykscD0haXx8aT09PTImJmZ8fHIuaW5jbHVkZXMoYSk7cmV0dXJuIGQuX29wZW49ISEobz09PTQyP3U6dSYmKGl8fCFwKSksZC5fY2xvc2U9ISEobz09PTQyP3A6cCYmKGZ8fCF1KSksdChjKX19ZnVuY3Rpb24gQnl0KGUsdCl7ZS5jb2x1bW4rPXQsZS5vZmZzZXQrPXQsZS5fYnVmZmVySW5kZXgrPXR9dmFyIGxiLEh5dD1sKCgpPT57eTIoKTtEZWUoKTtzYigpO2xiPXtuYW1lOiJhdHRlbnRpb24iLHJlc29sdmVBbGw6a3RhLHRva2VuaXplOlN0YX19KTtmdW5jdGlvbiB6dGEoZSx0LHIpe2xldCBhPTA7cmV0dXJuIGk7ZnVuY3Rpb24gaShoKXtyZXR1cm4gZS5lbnRlcigiYXV0b2xpbmsiKSxlLmVudGVyKCJhdXRvbGlua01hcmtlciIpLGUuY29uc3VtZShoKSxlLmV4aXQoImF1dG9saW5rTWFya2VyIiksZS5lbnRlcigiYXV0b2xpbmtQcm90b2NvbCIpLG99ZnVuY3Rpb24gbyhoKXtyZXR1cm4gVGkoaCk/KGUuY29uc3VtZShoKSxuKTpoPT09NjQ/cihoKTpkKGgpfWZ1bmN0aW9uIG4oaCl7cmV0dXJuIGg9PT00M3x8aD09PTQ1fHxoPT09NDZ8fEhhKGgpPyhhPTEscyhoKSk6ZChoKX1mdW5jdGlvbiBzKGgpe3JldHVybiBoPT09NTg/KGUuY29uc3VtZShoKSxhPTAsYyk6KGg9PT00M3x8aD09PTQ1fHxoPT09NDZ8fEhhKGgpKSYmYSsrPDMyPyhlLmNvbnN1bWUoaCkscyk6KGE9MCxkKGgpKX1mdW5jdGlvbiBjKGgpe3JldHVybiBoPT09NjI/KGUuZXhpdCgiYXV0b2xpbmtQcm90b2NvbCIpLGUuZW50ZXIoImF1dG9saW5rTWFya2VyIiksZS5jb25zdW1lKGgpLGUuZXhpdCgiYXV0b2xpbmtNYXJrZXIiKSxlLmV4aXQoImF1dG9saW5rIiksdCk6aD09PW51bGx8fGg9PT0zMnx8aD09PTYwfHx3ZChoKT9yKGgpOihlLmNvbnN1bWUoaCksYyl9ZnVuY3Rpb24gZChoKXtyZXR1cm4gaD09PTY0PyhlLmNvbnN1bWUoaCksZik6VGJ0KGgpPyhlLmNvbnN1bWUoaCksZCk6cihoKX1mdW5jdGlvbiBmKGgpe3JldHVybiBIYShoKT91KGgpOnIoaCl9ZnVuY3Rpb24gdShoKXtyZXR1cm4gaD09PTQ2PyhlLmNvbnN1bWUoaCksYT0wLGYpOmg9PT02Mj8oZS5leGl0KCJhdXRvbGlua1Byb3RvY29sIikudHlwZT0iYXV0b2xpbmtFbWFpbCIsZS5lbnRlcigiYXV0b2xpbmtNYXJrZXIiKSxlLmNvbnN1bWUoaCksZS5leGl0KCJhdXRvbGlua01hcmtlciIpLGUuZXhpdCgiYXV0b2xpbmsiKSx0KTpwKGgpfWZ1bmN0aW9uIHAoaCl7aWYoKGg9PT00NXx8SGEoaCkpJiZhKys8NjMpe2xldCBiPWg9PT00NT9wOnU7cmV0dXJuIGUuY29uc3VtZShoKSxifXJldHVybiByKGgpfX12YXIgczVlLHF5dD1sKCgpPT57dXIoKTtzNWU9e25hbWU6ImF1dG9saW5rIix0b2tlbml6ZTp6dGF9fSk7ZnVuY3Rpb24gQ3QoZSx0LHIsYSl7bGV0IGk9YT9hLTE6TnVtYmVyLlBPU0lUSVZFX0lORklOSVRZLG89MDtyZXR1cm4gbjtmdW5jdGlvbiBuKGMpe3JldHVybiB4dChjKT8oZS5lbnRlcihyKSxzKGMpKTp0KGMpfWZ1bmN0aW9uIHMoYyl7cmV0dXJuIHh0KGMpJiZvKys8aT8oZS5jb25zdW1lKGMpLHMpOihlLmV4aXQociksdChjKSl9fXZhciBKYT1sKCgpPT57dXIoKX0pO2Z1bmN0aW9uIEN0YShlLHQscil7cmV0dXJuIGE7ZnVuY3Rpb24gYShvKXtyZXR1cm4geHQobyk/Q3QoZSxpLCJsaW5lUHJlZml4Iikobyk6aShvKX1mdW5jdGlvbiBpKG8pe3JldHVybiBvPT09bnVsbHx8ZXQobyk/dChvKTpyKG8pfX12YXIgUzIscWVlPWwoKCk9PntKYSgpO3VyKCk7UzI9e3BhcnRpYWw6ITAsdG9rZW5pemU6Q3RhfX0pO2Z1bmN0aW9uIF90YShlLHQscil7bGV0IGE9dGhpcztyZXR1cm4gaTtmdW5jdGlvbiBpKG4pe2lmKG49PT02Mil7bGV0IHM9YS5jb250YWluZXJTdGF0ZTtyZXR1cm4gcy5vcGVufHwoZS5lbnRlcigiYmxvY2tRdW90ZSIse19jb250YWluZXI6ITB9KSxzLm9wZW49ITApLGUuZW50ZXIoImJsb2NrUXVvdGVQcmVmaXgiKSxlLmVudGVyKCJibG9ja1F1b3RlTWFya2VyIiksZS5jb25zdW1lKG4pLGUuZXhpdCgiYmxvY2tRdW90ZU1hcmtlciIpLG99cmV0dXJuIHIobil9ZnVuY3Rpb24gbyhuKXtyZXR1cm4geHQobik/KGUuZW50ZXIoImJsb2NrUXVvdGVQcmVmaXhXaGl0ZXNwYWNlIiksZS5jb25zdW1lKG4pLGUuZXhpdCgiYmxvY2tRdW90ZVByZWZpeFdoaXRlc3BhY2UiKSxlLmV4aXQoImJsb2NrUXVvdGVQcmVmaXgiKSx0KTooZS5leGl0KCJibG9ja1F1b3RlUHJlZml4IiksdChuKSl9fWZ1bmN0aW9uIFR0YShlLHQscil7bGV0IGE9dGhpcztyZXR1cm4gaTtmdW5jdGlvbiBpKG4pe3JldHVybiB4dChuKT9DdChlLG8sImxpbmVQcmVmaXgiLGEucGFyc2VyLmNvbnN0cnVjdHMuZGlzYWJsZS5udWxsLmluY2x1ZGVzKCJjb2RlSW5kZW50ZWQiKT92b2lkIDA6NCkobik6byhuKX1mdW5jdGlvbiBvKG4pe3JldHVybiBlLmF0dGVtcHQoamVlLHQscikobil9fWZ1bmN0aW9uIEx0YShlKXtlLmV4aXQoImJsb2NrUXVvdGUiKX12YXIgamVlLGp5dD1sKCgpPT57SmEoKTt1cigpO2plZT17Y29udGludWF0aW9uOnt0b2tlbml6ZTpUdGF9LGV4aXQ6THRhLG5hbWU6ImJsb2NrUXVvdGUiLHRva2VuaXplOl90YX19KTtmdW5jdGlvbiBEdGEoZSx0LHIpe3JldHVybiBhO2Z1bmN0aW9uIGEobyl7cmV0dXJuIGUuZW50ZXIoImNoYXJhY3RlckVzY2FwZSIpLGUuZW50ZXIoImVzY2FwZU1hcmtlciIpLGUuY29uc3VtZShvKSxlLmV4aXQoImVzY2FwZU1hcmtlciIpLGl9ZnVuY3Rpb24gaShvKXtyZXR1cm4gRGJ0KG8pPyhlLmVudGVyKCJjaGFyYWN0ZXJFc2NhcGVWYWx1ZSIpLGUuY29uc3VtZShvKSxlLmV4aXQoImNoYXJhY3RlckVzY2FwZVZhbHVlIiksZS5leGl0KCJjaGFyYWN0ZXJFc2NhcGUiKSx0KTpyKG8pfX12YXIgVmVlLFZ5dD1sKCgpPT57dXIoKTtWZWU9e25hbWU6ImNoYXJhY3RlckVzY2FwZSIsdG9rZW5pemU6RHRhfX0pO2Z1bmN0aW9uIEF0YShlLHQscil7bGV0IGE9dGhpcyxpPTAsbyxuO3JldHVybiBzO2Z1bmN0aW9uIHModSl7cmV0dXJuIGUuZW50ZXIoImNoYXJhY3RlclJlZmVyZW5jZSIpLGUuZW50ZXIoImNoYXJhY3RlclJlZmVyZW5jZU1hcmtlciIpLGUuY29uc3VtZSh1KSxlLmV4aXQoImNoYXJhY3RlclJlZmVyZW5jZU1hcmtlciIpLGN9ZnVuY3Rpb24gYyh1KXtyZXR1cm4gdT09PTM1PyhlLmVudGVyKCJjaGFyYWN0ZXJSZWZlcmVuY2VNYXJrZXJOdW1lcmljIiksZS5jb25zdW1lKHUpLGUuZXhpdCgiY2hhcmFjdGVyUmVmZXJlbmNlTWFya2VyTnVtZXJpYyIpLGQpOihlLmVudGVyKCJjaGFyYWN0ZXJSZWZlcmVuY2VWYWx1ZSIpLG89MzEsbj1IYSxmKHUpKX1mdW5jdGlvbiBkKHUpe3JldHVybiB1PT09ODh8fHU9PT0xMjA/KGUuZW50ZXIoImNoYXJhY3RlclJlZmVyZW5jZU1hcmtlckhleGFkZWNpbWFsIiksZS5jb25zdW1lKHUpLGUuZXhpdCgiY2hhcmFjdGVyUmVmZXJlbmNlTWFya2VySGV4YWRlY2ltYWwiKSxlLmVudGVyKCJjaGFyYWN0ZXJSZWZlcmVuY2VWYWx1ZSIpLG89NixuPUxidCxmKTooZS5lbnRlcigiY2hhcmFjdGVyUmVmZXJlbmNlVmFsdWUiKSxvPTcsbj1yYixmKHUpKX1mdW5jdGlvbiBmKHUpe2lmKHU9PT01OSYmaSl7bGV0IHA9ZS5leGl0KCJjaGFyYWN0ZXJSZWZlcmVuY2VWYWx1ZSIpO3JldHVybiBuPT09SGEmJiFWMChhLnNsaWNlU2VyaWFsaXplKHApKT9yKHUpOihlLmVudGVyKCJjaGFyYWN0ZXJSZWZlcmVuY2VNYXJrZXIiKSxlLmNvbnN1bWUodSksZS5leGl0KCJjaGFyYWN0ZXJSZWZlcmVuY2VNYXJrZXIiKSxlLmV4aXQoImNoYXJhY3RlclJlZmVyZW5jZSIpLHQpfXJldHVybiBuKHUpJiZpKys8bz8oZS5jb25zdW1lKHUpLGYpOnIodSl9fXZhciBVZWUsVXl0PWwoKCk9PntuYigpO3VyKCk7VWVlPXtuYW1lOiJjaGFyYWN0ZXJSZWZlcmVuY2UiLHRva2VuaXplOkF0YX19KTtmdW5jdGlvbiBFdGEoZSx0LHIpe2xldCBhPXRoaXMsaT17cGFydGlhbDohMCx0b2tlbml6ZTpDfSxvPTAsbj0wLHM7cmV0dXJuIGM7ZnVuY3Rpb24gYyhrKXtyZXR1cm4gZChrKX1mdW5jdGlvbiBkKGspe2xldCBOPWEuZXZlbnRzW2EuZXZlbnRzLmxlbmd0aC0xXTtyZXR1cm4gbz1OJiZOWzFdLnR5cGU9PT0ibGluZVByZWZpeCI/TlsyXS5zbGljZVNlcmlhbGl6ZShOWzFdLCEwKS5sZW5ndGg6MCxzPWssZS5lbnRlcigiY29kZUZlbmNlZCIpLGUuZW50ZXIoImNvZGVGZW5jZWRGZW5jZSIpLGUuZW50ZXIoImNvZGVGZW5jZWRGZW5jZVNlcXVlbmNlIiksZihrKX1mdW5jdGlvbiBmKGspe3JldHVybiBrPT09cz8obisrLGUuY29uc3VtZShrKSxmKTpuPDM/cihrKTooZS5leGl0KCJjb2RlRmVuY2VkRmVuY2VTZXF1ZW5jZSIpLHh0KGspP0N0KGUsdSwid2hpdGVzcGFjZSIpKGspOnUoaykpfWZ1bmN0aW9uIHUoayl7cmV0dXJuIGs9PT1udWxsfHxldChrKT8oZS5leGl0KCJjb2RlRmVuY2VkRmVuY2UiKSxhLmludGVycnVwdD90KGspOmUuY2hlY2soV3l0LHgsRikoaykpOihlLmVudGVyKCJjb2RlRmVuY2VkRmVuY2VJbmZvIiksZS5lbnRlcigiY2h1bmtTdHJpbmciLHtjb250ZW50VHlwZToic3RyaW5nIn0pLHAoaykpfWZ1bmN0aW9uIHAoayl7cmV0dXJuIGs9PT1udWxsfHxldChrKT8oZS5leGl0KCJjaHVua1N0cmluZyIpLGUuZXhpdCgiY29kZUZlbmNlZEZlbmNlSW5mbyIpLHUoaykpOnh0KGspPyhlLmV4aXQoImNodW5rU3RyaW5nIiksZS5leGl0KCJjb2RlRmVuY2VkRmVuY2VJbmZvIiksQ3QoZSxoLCJ3aGl0ZXNwYWNlIikoaykpOms9PT05NiYmaz09PXM/cihrKTooZS5jb25zdW1lKGspLHApfWZ1bmN0aW9uIGgoayl7cmV0dXJuIGs9PT1udWxsfHxldChrKT91KGspOihlLmVudGVyKCJjb2RlRmVuY2VkRmVuY2VNZXRhIiksZS5lbnRlcigiY2h1bmtTdHJpbmciLHtjb250ZW50VHlwZToic3RyaW5nIn0pLGIoaykpfWZ1bmN0aW9uIGIoayl7cmV0dXJuIGs9PT1udWxsfHxldChrKT8oZS5leGl0KCJjaHVua1N0cmluZyIpLGUuZXhpdCgiY29kZUZlbmNlZEZlbmNlTWV0YSIpLHUoaykpOms9PT05NiYmaz09PXM/cihrKTooZS5jb25zdW1lKGspLGIpfWZ1bmN0aW9uIHgoayl7cmV0dXJuIGUuYXR0ZW1wdChpLEYsZykoayl9ZnVuY3Rpb24gZyhrKXtyZXR1cm4gZS5lbnRlcigibGluZUVuZGluZyIpLGUuY29uc3VtZShrKSxlLmV4aXQoImxpbmVFbmRpbmciKSx2fWZ1bmN0aW9uIHYoayl7cmV0dXJuIG8+MCYmeHQoayk/Q3QoZSx3LCJsaW5lUHJlZml4IixvKzEpKGspOncoayl9ZnVuY3Rpb24gdyhrKXtyZXR1cm4gaz09PW51bGx8fGV0KGspP2UuY2hlY2soV3l0LHgsRikoayk6KGUuZW50ZXIoImNvZGVGbG93VmFsdWUiKSxNKGspKX1mdW5jdGlvbiBNKGspe3JldHVybiBrPT09bnVsbHx8ZXQoayk/KGUuZXhpdCgiY29kZUZsb3dWYWx1ZSIpLHcoaykpOihlLmNvbnN1bWUoayksTSl9ZnVuY3Rpb24gRihrKXtyZXR1cm4gZS5leGl0KCJjb2RlRmVuY2VkIiksdChrKX1mdW5jdGlvbiBDKGssTiwkKXtsZXQgST0wO3JldHVybiBCO2Z1bmN0aW9uIEIoUCl7cmV0dXJuIGsuZW50ZXIoImxpbmVFbmRpbmciKSxrLmNvbnN1bWUoUCksay5leGl0KCJsaW5lRW5kaW5nIiksen1mdW5jdGlvbiB6KFApe3JldHVybiBrLmVudGVyKCJjb2RlRmVuY2VkRmVuY2UiKSx4dChQKT9DdChrLHksImxpbmVQcmVmaXgiLGEucGFyc2VyLmNvbnN0cnVjdHMuZGlzYWJsZS5udWxsLmluY2x1ZGVzKCJjb2RlSW5kZW50ZWQiKT92b2lkIDA6NCkoUCk6eShQKX1mdW5jdGlvbiB5KFApe3JldHVybiBQPT09cz8oay5lbnRlcigiY29kZUZlbmNlZEZlbmNlU2VxdWVuY2UiKSxFKFApKTokKFApfWZ1bmN0aW9uIEUoUCl7cmV0dXJuIFA9PT1zPyhJKyssay5jb25zdW1lKFApLEUpOkk+PW4/KGsuZXhpdCgiY29kZUZlbmNlZEZlbmNlU2VxdWVuY2UiKSx4dChQKT9DdChrLF8sIndoaXRlc3BhY2UiKShQKTpfKFApKTokKFApfWZ1bmN0aW9uIF8oUCl7cmV0dXJuIFA9PT1udWxsfHxldChQKT8oay5leGl0KCJjb2RlRmVuY2VkRmVuY2UiKSxOKFApKTokKFApfX19ZnVuY3Rpb24gJHRhKGUsdCxyKXtsZXQgYT10aGlzO3JldHVybiBpO2Z1bmN0aW9uIGkobil7cmV0dXJuIG49PT1udWxsP3Iobik6KGUuZW50ZXIoImxpbmVFbmRpbmciKSxlLmNvbnN1bWUobiksZS5leGl0KCJsaW5lRW5kaW5nIiksbyl9ZnVuY3Rpb24gbyhuKXtyZXR1cm4gYS5wYXJzZXIubGF6eVthLm5vdygpLmxpbmVdP3Iobik6dChuKX19dmFyIFd5dCxXZWUsR3l0PWwoKCk9PntKYSgpO3VyKCk7V3l0PXtwYXJ0aWFsOiEwLHRva2VuaXplOiR0YX0sV2VlPXtjb25jcmV0ZTohMCxuYW1lOiJjb2RlRmVuY2VkIix0b2tlbml6ZTpFdGF9fSk7ZnVuY3Rpb24gSXRhKGUsdCxyKXtsZXQgYT10aGlzO3JldHVybiBpO2Z1bmN0aW9uIGkoZCl7cmV0dXJuIGUuZW50ZXIoImNvZGVJbmRlbnRlZCIpLEN0KGUsbywibGluZVByZWZpeCIsNSkoZCl9ZnVuY3Rpb24gbyhkKXtsZXQgZj1hLmV2ZW50c1thLmV2ZW50cy5sZW5ndGgtMV07cmV0dXJuIGYmJmZbMV0udHlwZT09PSJsaW5lUHJlZml4IiYmZlsyXS5zbGljZVNlcmlhbGl6ZShmWzFdLCEwKS5sZW5ndGg+PTQ/bihkKTpyKGQpfWZ1bmN0aW9uIG4oZCl7cmV0dXJuIGQ9PT1udWxsP2MoZCk6ZXQoZCk/ZS5hdHRlbXB0KFB0YSxuLGMpKGQpOihlLmVudGVyKCJjb2RlRmxvd1ZhbHVlIikscyhkKSl9ZnVuY3Rpb24gcyhkKXtyZXR1cm4gZD09PW51bGx8fGV0KGQpPyhlLmV4aXQoImNvZGVGbG93VmFsdWUiKSxuKGQpKTooZS5jb25zdW1lKGQpLHMpfWZ1bmN0aW9uIGMoZCl7cmV0dXJuIGUuZXhpdCgiY29kZUluZGVudGVkIiksdChkKX19ZnVuY3Rpb24gTnRhKGUsdCxyKXtsZXQgYT10aGlzO3JldHVybiBpO2Z1bmN0aW9uIGkobil7cmV0dXJuIGEucGFyc2VyLmxhenlbYS5ub3coKS5saW5lXT9yKG4pOmV0KG4pPyhlLmVudGVyKCJsaW5lRW5kaW5nIiksZS5jb25zdW1lKG4pLGUuZXhpdCgibGluZUVuZGluZyIpLGkpOkN0KGUsbywibGluZVByZWZpeCIsNSkobil9ZnVuY3Rpb24gbyhuKXtsZXQgcz1hLmV2ZW50c1thLmV2ZW50cy5sZW5ndGgtMV07cmV0dXJuIHMmJnNbMV0udHlwZT09PSJsaW5lUHJlZml4IiYmc1syXS5zbGljZVNlcmlhbGl6ZShzWzFdLCEwKS5sZW5ndGg+PTQ/dChuKTpldChuKT9pKG4pOnIobil9fXZhciBjYixQdGEsWXl0PWwoKCk9PntKYSgpO3VyKCk7Y2I9e25hbWU6ImNvZGVJbmRlbnRlZCIsdG9rZW5pemU6SXRhfSxQdGE9e3BhcnRpYWw6ITAsdG9rZW5pemU6TnRhfX0pO2Z1bmN0aW9uIEZ0YShlKXtsZXQgdD1lLmxlbmd0aC00LHI9MyxhLGk7aWYoKGVbcl1bMV0udHlwZT09PSJsaW5lRW5kaW5nInx8ZVtyXVsxXS50eXBlPT09InNwYWNlIikmJihlW3RdWzFdLnR5cGU9PT0ibGluZUVuZGluZyJ8fGVbdF1bMV0udHlwZT09PSJzcGFjZSIpKXtmb3IoYT1yOysrYTx0OylpZihlW2FdWzFdLnR5cGU9PT0iY29kZVRleHREYXRhIil7ZVtyXVsxXS50eXBlPSJjb2RlVGV4dFBhZGRpbmciLGVbdF1bMV0udHlwZT0iY29kZVRleHRQYWRkaW5nIixyKz0yLHQtPTI7YnJlYWt9fWZvcihhPXItMSx0Kys7KythPD10OylpPT09dm9pZCAwP2EhPT10JiZlW2FdWzFdLnR5cGUhPT0ibGluZUVuZGluZyImJihpPWEpOihhPT09dHx8ZVthXVsxXS50eXBlPT09ImxpbmVFbmRpbmciKSYmKGVbaV1bMV0udHlwZT0iY29kZVRleHREYXRhIixhIT09aSsyJiYoZVtpXVsxXS5lbmQ9ZVthLTFdWzFdLmVuZCxlLnNwbGljZShpKzIsYS1pLTIpLHQtPWEtaS0yLGE9aSsyKSxpPXZvaWQgMCk7cmV0dXJuIGV9ZnVuY3Rpb24gT3RhKGUpe3JldHVybiBlIT09OTZ8fHRoaXMuZXZlbnRzW3RoaXMuZXZlbnRzLmxlbmd0aC0xXVsxXS50eXBlPT09ImNoYXJhY3RlckVzY2FwZSJ9ZnVuY3Rpb24gUnRhKGUsdCxyKXtsZXQgYT10aGlzLGk9MCxvLG47cmV0dXJuIHM7ZnVuY3Rpb24gcyhwKXtyZXR1cm4gZS5lbnRlcigiY29kZVRleHQiKSxlLmVudGVyKCJjb2RlVGV4dFNlcXVlbmNlIiksYyhwKX1mdW5jdGlvbiBjKHApe3JldHVybiBwPT09OTY/KGUuY29uc3VtZShwKSxpKyssYyk6KGUuZXhpdCgiY29kZVRleHRTZXF1ZW5jZSIpLGQocCkpfWZ1bmN0aW9uIGQocCl7cmV0dXJuIHA9PT1udWxsP3IocCk6cD09PTMyPyhlLmVudGVyKCJzcGFjZSIpLGUuY29uc3VtZShwKSxlLmV4aXQoInNwYWNlIiksZCk6cD09PTk2PyhuPWUuZW50ZXIoImNvZGVUZXh0U2VxdWVuY2UiKSxvPTAsdShwKSk6ZXQocCk/KGUuZW50ZXIoImxpbmVFbmRpbmciKSxlLmNvbnN1bWUocCksZS5leGl0KCJsaW5lRW5kaW5nIiksZCk6KGUuZW50ZXIoImNvZGVUZXh0RGF0YSIpLGYocCkpfWZ1bmN0aW9uIGYocCl7cmV0dXJuIHA9PT1udWxsfHxwPT09MzJ8fHA9PT05Nnx8ZXQocCk/KGUuZXhpdCgiY29kZVRleHREYXRhIiksZChwKSk6KGUuY29uc3VtZShwKSxmKX1mdW5jdGlvbiB1KHApe3JldHVybiBwPT09OTY/KGUuY29uc3VtZShwKSxvKyssdSk6bz09PWk/KGUuZXhpdCgiY29kZVRleHRTZXF1ZW5jZSIpLGUuZXhpdCgiY29kZVRleHQiKSx0KHApKToobi50eXBlPSJjb2RlVGV4dERhdGEiLGYocCkpfX12YXIgbDVlLFp5dD1sKCgpPT57dXIoKTtsNWU9e25hbWU6ImNvZGVUZXh0IixwcmV2aW91czpPdGEscmVzb2x2ZTpGdGEsdG9rZW5pemU6UnRhfX0pO2Z1bmN0aW9uIGRiKGUsdCl7bGV0IHI9MDtpZih0Lmxlbmd0aDwxZTQpZS5wdXNoKC4uLnQpO2Vsc2UgZm9yKDtyPHQubGVuZ3RoOyllLnB1c2goLi4udC5zbGljZShyLHIrMWU0KSkscis9MWU0fXZhciB1YixjNWU9bCgoKT0+e3ViPWNsYXNze2NvbnN0cnVjdG9yKHQpe3RoaXMubGVmdD10P1suLi50XTpbXSx0aGlzLnJpZ2h0PVtdfWdldCh0KXtpZih0PDB8fHQ+PXRoaXMubGVmdC5sZW5ndGgrdGhpcy5yaWdodC5sZW5ndGgpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkNhbm5vdCBhY2Nlc3MgaW5kZXggYCIrdCsiYCBpbiBhIHNwbGljZSBidWZmZXIgb2Ygc2l6ZSBgIisodGhpcy5sZWZ0Lmxlbmd0aCt0aGlzLnJpZ2h0Lmxlbmd0aCkrImAiKTtyZXR1cm4gdDx0aGlzLmxlZnQubGVuZ3RoP3RoaXMubGVmdFt0XTp0aGlzLnJpZ2h0W3RoaXMucmlnaHQubGVuZ3RoLXQrdGhpcy5sZWZ0Lmxlbmd0aC0xXX1nZXQgbGVuZ3RoKCl7cmV0dXJuIHRoaXMubGVmdC5sZW5ndGgrdGhpcy5yaWdodC5sZW5ndGh9c2hpZnQoKXtyZXR1cm4gdGhpcy5zZXRDdXJzb3IoMCksdGhpcy5yaWdodC5wb3AoKX1zbGljZSh0LHIpe2xldCBhPXI/P051bWJlci5QT1NJVElWRV9JTkZJTklUWTtyZXR1cm4gYTx0aGlzLmxlZnQubGVuZ3RoP3RoaXMubGVmdC5zbGljZSh0LGEpOnQ+dGhpcy5sZWZ0Lmxlbmd0aD90aGlzLnJpZ2h0LnNsaWNlKHRoaXMucmlnaHQubGVuZ3RoLWErdGhpcy5sZWZ0Lmxlbmd0aCx0aGlzLnJpZ2h0Lmxlbmd0aC10K3RoaXMubGVmdC5sZW5ndGgpLnJldmVyc2UoKTp0aGlzLmxlZnQuc2xpY2UodCkuY29uY2F0KHRoaXMucmlnaHQuc2xpY2UodGhpcy5yaWdodC5sZW5ndGgtYSt0aGlzLmxlZnQubGVuZ3RoKS5yZXZlcnNlKCkpfXNwbGljZSh0LHIsYSl7bGV0IGk9cnx8MDt0aGlzLnNldEN1cnNvcihNYXRoLnRydW5jKHQpKTtsZXQgbz10aGlzLnJpZ2h0LnNwbGljZSh0aGlzLnJpZ2h0Lmxlbmd0aC1pLE51bWJlci5QT1NJVElWRV9JTkZJTklUWSk7cmV0dXJuIGEmJmRiKHRoaXMubGVmdCxhKSxvLnJldmVyc2UoKX1wb3AoKXtyZXR1cm4gdGhpcy5zZXRDdXJzb3IoTnVtYmVyLlBPU0lUSVZFX0lORklOSVRZKSx0aGlzLmxlZnQucG9wKCl9cHVzaCh0KXt0aGlzLnNldEN1cnNvcihOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFkpLHRoaXMubGVmdC5wdXNoKHQpfXB1c2hNYW55KHQpe3RoaXMuc2V0Q3Vyc29yKE51bWJlci5QT1NJVElWRV9JTkZJTklUWSksZGIodGhpcy5sZWZ0LHQpfXVuc2hpZnQodCl7dGhpcy5zZXRDdXJzb3IoMCksdGhpcy5yaWdodC5wdXNoKHQpfXVuc2hpZnRNYW55KHQpe3RoaXMuc2V0Q3Vyc29yKDApLGRiKHRoaXMucmlnaHQsdC5yZXZlcnNlKCkpfXNldEN1cnNvcih0KXtpZighKHQ9PT10aGlzLmxlZnQubGVuZ3RofHx0PnRoaXMubGVmdC5sZW5ndGgmJnRoaXMucmlnaHQubGVuZ3RoPT09MHx8dDwwJiZ0aGlzLmxlZnQubGVuZ3RoPT09MCkpaWYodDx0aGlzLmxlZnQubGVuZ3RoKXtsZXQgcj10aGlzLmxlZnQuc3BsaWNlKHQsTnVtYmVyLlBPU0lUSVZFX0lORklOSVRZKTtkYih0aGlzLnJpZ2h0LHIucmV2ZXJzZSgpKX1lbHNle2xldCByPXRoaXMucmlnaHQuc3BsaWNlKHRoaXMubGVmdC5sZW5ndGgrdGhpcy5yaWdodC5sZW5ndGgtdCxOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFkpO2RiKHRoaXMubGVmdCxyLnJldmVyc2UoKSl9fX19KTtmdW5jdGlvbiBHZWUoZSl7bGV0IHQ9e30scj0tMSxhLGksbyxuLHMsYyxkLGY9bmV3IHViKGUpO2Zvcig7KytyPGYubGVuZ3RoOyl7Zm9yKDtyIGluIHQ7KXI9dFtyXTtpZihhPWYuZ2V0KHIpLHImJmFbMV0udHlwZT09PSJjaHVua0Zsb3ciJiZmLmdldChyLTEpWzFdLnR5cGU9PT0ibGlzdEl0ZW1QcmVmaXgiJiYoYz1hWzFdLl90b2tlbml6ZXIuZXZlbnRzLG89MCxvPGMubGVuZ3RoJiZjW29dWzFdLnR5cGU9PT0ibGluZUVuZGluZ0JsYW5rIiYmKG8rPTIpLG88Yy5sZW5ndGgmJmNbb11bMV0udHlwZT09PSJjb250ZW50IikpZm9yKDsrK288Yy5sZW5ndGgmJmNbb11bMV0udHlwZSE9PSJjb250ZW50IjspY1tvXVsxXS50eXBlPT09ImNodW5rVGV4dCImJihjW29dWzFdLl9pc0luRmlyc3RDb250ZW50T2ZMaXN0SXRlbT0hMCxvKyspO2lmKGFbMF09PT0iZW50ZXIiKWFbMV0uY29udGVudFR5cGUmJihPYmplY3QuYXNzaWduKHQsQnRhKGYscikpLHI9dFtyXSxkPSEwKTtlbHNlIGlmKGFbMV0uX2NvbnRhaW5lcil7Zm9yKG89cixpPXZvaWQgMDtvLS07KWlmKG49Zi5nZXQobyksblsxXS50eXBlPT09ImxpbmVFbmRpbmcifHxuWzFdLnR5cGU9PT0ibGluZUVuZGluZ0JsYW5rIiluWzBdPT09ImVudGVyIiYmKGkmJihmLmdldChpKVsxXS50eXBlPSJsaW5lRW5kaW5nQmxhbmsiKSxuWzFdLnR5cGU9ImxpbmVFbmRpbmciLGk9byk7ZWxzZSBpZighKG5bMV0udHlwZT09PSJsaW5lUHJlZml4Inx8blsxXS50eXBlPT09Imxpc3RJdGVtSW5kZW50IikpYnJlYWs7aSYmKGFbMV0uZW5kPXsuLi5mLmdldChpKVsxXS5zdGFydH0scz1mLnNsaWNlKGkscikscy51bnNoaWZ0KGEpLGYuc3BsaWNlKGksci1pKzEscykpfX1yZXR1cm4gS2EoZSwwLE51bWJlci5QT1NJVElWRV9JTkZJTklUWSxmLnNsaWNlKDApKSwhZH1mdW5jdGlvbiBCdGEoZSx0KXtsZXQgcj1lLmdldCh0KVsxXSxhPWUuZ2V0KHQpWzJdLGk9dC0xLG89W10sbj1yLl90b2tlbml6ZXI7bnx8KG49YS5wYXJzZXJbci5jb250ZW50VHlwZV0oci5zdGFydCksci5fY29udGVudFR5cGVUZXh0VHJhaWxpbmcmJihuLl9jb250ZW50VHlwZVRleHRUcmFpbGluZz0hMCkpO2xldCBzPW4uZXZlbnRzLGM9W10sZD17fSxmLHUscD0tMSxoPXIsYj0wLHg9MCxnPVt4XTtmb3IoO2g7KXtmb3IoO2UuZ2V0KCsraSlbMV0hPT1oOyk7by5wdXNoKGkpLGguX3Rva2VuaXplcnx8KGY9YS5zbGljZVN0cmVhbShoKSxoLm5leHR8fGYucHVzaChudWxsKSx1JiZuLmRlZmluZVNraXAoaC5zdGFydCksaC5faXNJbkZpcnN0Q29udGVudE9mTGlzdEl0ZW0mJihuLl9nZm1UYXNrbGlzdEZpcnN0Q29udGVudE9mTGlzdEl0ZW09ITApLG4ud3JpdGUoZiksaC5faXNJbkZpcnN0Q29udGVudE9mTGlzdEl0ZW0mJihuLl9nZm1UYXNrbGlzdEZpcnN0Q29udGVudE9mTGlzdEl0ZW09dm9pZCAwKSksdT1oLGg9aC5uZXh0fWZvcihoPXI7KytwPHMubGVuZ3RoOylzW3BdWzBdPT09ImV4aXQiJiZzW3AtMV1bMF09PT0iZW50ZXIiJiZzW3BdWzFdLnR5cGU9PT1zW3AtMV1bMV0udHlwZSYmc1twXVsxXS5zdGFydC5saW5lIT09c1twXVsxXS5lbmQubGluZSYmKHg9cCsxLGcucHVzaCh4KSxoLl90b2tlbml6ZXI9dm9pZCAwLGgucHJldmlvdXM9dm9pZCAwLGg9aC5uZXh0KTtmb3Iobi5ldmVudHM9W10saD8oaC5fdG9rZW5pemVyPXZvaWQgMCxoLnByZXZpb3VzPXZvaWQgMCk6Zy5wb3AoKSxwPWcubGVuZ3RoO3AtLTspe2xldCB2PXMuc2xpY2UoZ1twXSxnW3ArMV0pLHc9by5wb3AoKTtjLnB1c2goW3csdyt2Lmxlbmd0aC0xXSksZS5zcGxpY2UodywyLHYpfWZvcihjLnJldmVyc2UoKSxwPS0xOysrcDxjLmxlbmd0aDspZFtiK2NbcF1bMF1dPWIrY1twXVsxXSxiKz1jW3BdWzFdLWNbcF1bMF0tMTtyZXR1cm4gZH12YXIgZDVlPWwoKCk9Pnt5MigpO2M1ZSgpO2M1ZSgpfSk7ZnVuY3Rpb24gcXRhKGUpe3JldHVybiBHZWUoZSksZX1mdW5jdGlvbiBqdGEoZSx0KXtsZXQgcjtyZXR1cm4gYTtmdW5jdGlvbiBhKHMpe3JldHVybiBlLmVudGVyKCJjb250ZW50Iikscj1lLmVudGVyKCJjaHVua0NvbnRlbnQiLHtjb250ZW50VHlwZToiY29udGVudCJ9KSxpKHMpfWZ1bmN0aW9uIGkocyl7cmV0dXJuIHM9PT1udWxsP28ocyk6ZXQocyk/ZS5jaGVjayhIdGEsbixvKShzKTooZS5jb25zdW1lKHMpLGkpfWZ1bmN0aW9uIG8ocyl7cmV0dXJuIGUuZXhpdCgiY2h1bmtDb250ZW50IiksZS5leGl0KCJjb250ZW50IiksdChzKX1mdW5jdGlvbiBuKHMpe3JldHVybiBlLmNvbnN1bWUocyksZS5leGl0KCJjaHVua0NvbnRlbnQiKSxyLm5leHQ9ZS5lbnRlcigiY2h1bmtDb250ZW50Iix7Y29udGVudFR5cGU6ImNvbnRlbnQiLHByZXZpb3VzOnJ9KSxyPXIubmV4dCxpfX1mdW5jdGlvbiBWdGEoZSx0LHIpe2xldCBhPXRoaXM7cmV0dXJuIGk7ZnVuY3Rpb24gaShuKXtyZXR1cm4gZS5leGl0KCJjaHVua0NvbnRlbnQiKSxlLmVudGVyKCJsaW5lRW5kaW5nIiksZS5jb25zdW1lKG4pLGUuZXhpdCgibGluZUVuZGluZyIpLEN0KGUsbywibGluZVByZWZpeCIpfWZ1bmN0aW9uIG8obil7aWYobj09PW51bGx8fGV0KG4pKXJldHVybiByKG4pO2xldCBzPWEuZXZlbnRzW2EuZXZlbnRzLmxlbmd0aC0xXTtyZXR1cm4hYS5wYXJzZXIuY29uc3RydWN0cy5kaXNhYmxlLm51bGwuaW5jbHVkZXMoImNvZGVJbmRlbnRlZCIpJiZzJiZzWzFdLnR5cGU9PT0ibGluZVByZWZpeCImJnNbMl0uc2xpY2VTZXJpYWxpemUoc1sxXSwhMCkubGVuZ3RoPj00P3Qobik6ZS5pbnRlcnJ1cHQoYS5wYXJzZXIuY29uc3RydWN0cy5mbG93LHIsdCkobil9fXZhciB1NWUsSHRhLFh5dD1sKCgpPT57SmEoKTt1cigpO2Q1ZSgpO3U1ZT17cmVzb2x2ZTpxdGEsdG9rZW5pemU6anRhfSxIdGE9e3BhcnRpYWw6ITAsdG9rZW5pemU6VnRhfX0pO2Z1bmN0aW9uIFllZShlLHQscixhLGksbyxuLHMsYyl7bGV0IGQ9Y3x8TnVtYmVyLlBPU0lUSVZFX0lORklOSVRZLGY9MDtyZXR1cm4gdTtmdW5jdGlvbiB1KHYpe3JldHVybiB2PT09NjA/KGUuZW50ZXIoYSksZS5lbnRlcihpKSxlLmVudGVyKG8pLGUuY29uc3VtZSh2KSxlLmV4aXQobykscCk6dj09PW51bGx8fHY9PT0zMnx8dj09PTQxfHx3ZCh2KT9yKHYpOihlLmVudGVyKGEpLGUuZW50ZXIobiksZS5lbnRlcihzKSxlLmVudGVyKCJjaHVua1N0cmluZyIse2NvbnRlbnRUeXBlOiJzdHJpbmcifSkseCh2KSl9ZnVuY3Rpb24gcCh2KXtyZXR1cm4gdj09PTYyPyhlLmVudGVyKG8pLGUuY29uc3VtZSh2KSxlLmV4aXQobyksZS5leGl0KGkpLGUuZXhpdChhKSx0KTooZS5lbnRlcihzKSxlLmVudGVyKCJjaHVua1N0cmluZyIse2NvbnRlbnRUeXBlOiJzdHJpbmcifSksaCh2KSl9ZnVuY3Rpb24gaCh2KXtyZXR1cm4gdj09PTYyPyhlLmV4aXQoImNodW5rU3RyaW5nIiksZS5leGl0KHMpLHAodikpOnY9PT1udWxsfHx2PT09NjB8fGV0KHYpP3Iodik6KGUuY29uc3VtZSh2KSx2PT09OTI/YjpoKX1mdW5jdGlvbiBiKHYpe3JldHVybiB2PT09NjB8fHY9PT02Mnx8dj09PTkyPyhlLmNvbnN1bWUodiksaCk6aCh2KX1mdW5jdGlvbiB4KHYpe3JldHVybiFmJiYodj09PW51bGx8fHY9PT00MXx8b3IodikpPyhlLmV4aXQoImNodW5rU3RyaW5nIiksZS5leGl0KHMpLGUuZXhpdChuKSxlLmV4aXQoYSksdCh2KSk6ZjxkJiZ2PT09NDA/KGUuY29uc3VtZSh2KSxmKysseCk6dj09PTQxPyhlLmNvbnN1bWUodiksZi0tLHgpOnY9PT1udWxsfHx2PT09MzJ8fHY9PT00MHx8d2Qodik/cih2KTooZS5jb25zdW1lKHYpLHY9PT05Mj9nOngpfWZ1bmN0aW9uIGcodil7cmV0dXJuIHY9PT00MHx8dj09PTQxfHx2PT09OTI/KGUuY29uc3VtZSh2KSx4KTp4KHYpfX12YXIgZjVlPWwoKCk9Pnt1cigpfSk7ZnVuY3Rpb24gWmVlKGUsdCxyLGEsaSxvKXtsZXQgbj10aGlzLHM9MCxjO3JldHVybiBkO2Z1bmN0aW9uIGQoaCl7cmV0dXJuIGUuZW50ZXIoYSksZS5lbnRlcihpKSxlLmNvbnN1bWUoaCksZS5leGl0KGkpLGUuZW50ZXIobyksZn1mdW5jdGlvbiBmKGgpe3JldHVybiBzPjk5OXx8aD09PW51bGx8fGg9PT05MXx8aD09PTkzJiYhY3x8aD09PTk0JiYhcyYmIl9oaWRkZW5Gb290bm90ZVN1cHBvcnQiaW4gbi5wYXJzZXIuY29uc3RydWN0cz9yKGgpOmg9PT05Mz8oZS5leGl0KG8pLGUuZW50ZXIoaSksZS5jb25zdW1lKGgpLGUuZXhpdChpKSxlLmV4aXQoYSksdCk6ZXQoaCk/KGUuZW50ZXIoImxpbmVFbmRpbmciKSxlLmNvbnN1bWUoaCksZS5leGl0KCJsaW5lRW5kaW5nIiksZik6KGUuZW50ZXIoImNodW5rU3RyaW5nIix7Y29udGVudFR5cGU6InN0cmluZyJ9KSx1KGgpKX1mdW5jdGlvbiB1KGgpe3JldHVybiBoPT09bnVsbHx8aD09PTkxfHxoPT09OTN8fGV0KGgpfHxzKys+OTk5PyhlLmV4aXQoImNodW5rU3RyaW5nIiksZihoKSk6KGUuY29uc3VtZShoKSxjfHwoYz0heHQoaCkpLGg9PT05Mj9wOnUpfWZ1bmN0aW9uIHAoaCl7cmV0dXJuIGg9PT05MXx8aD09PTkyfHxoPT09OTM/KGUuY29uc3VtZShoKSxzKyssdSk6dShoKX19dmFyIHA1ZT1sKCgpPT57dXIoKX0pO2Z1bmN0aW9uIFhlZShlLHQscixhLGksbyl7bGV0IG47cmV0dXJuIHM7ZnVuY3Rpb24gcyhwKXtyZXR1cm4gcD09PTM0fHxwPT09Mzl8fHA9PT00MD8oZS5lbnRlcihhKSxlLmVudGVyKGkpLGUuY29uc3VtZShwKSxlLmV4aXQoaSksbj1wPT09NDA/NDE6cCxjKTpyKHApfWZ1bmN0aW9uIGMocCl7cmV0dXJuIHA9PT1uPyhlLmVudGVyKGkpLGUuY29uc3VtZShwKSxlLmV4aXQoaSksZS5leGl0KGEpLHQpOihlLmVudGVyKG8pLGQocCkpfWZ1bmN0aW9uIGQocCl7cmV0dXJuIHA9PT1uPyhlLmV4aXQobyksYyhuKSk6cD09PW51bGw/cihwKTpldChwKT8oZS5lbnRlcigibGluZUVuZGluZyIpLGUuY29uc3VtZShwKSxlLmV4aXQoImxpbmVFbmRpbmciKSxDdChlLGQsImxpbmVQcmVmaXgiKSk6KGUuZW50ZXIoImNodW5rU3RyaW5nIix7Y29udGVudFR5cGU6InN0cmluZyJ9KSxmKHApKX1mdW5jdGlvbiBmKHApe3JldHVybiBwPT09bnx8cD09PW51bGx8fGV0KHApPyhlLmV4aXQoImNodW5rU3RyaW5nIiksZChwKSk6KGUuY29uc3VtZShwKSxwPT09OTI/dTpmKX1mdW5jdGlvbiB1KHApe3JldHVybiBwPT09bnx8cD09PTkyPyhlLmNvbnN1bWUocCksZik6ZihwKX19dmFyIGg1ZT1sKCgpPT57SmEoKTt1cigpfSk7ZnVuY3Rpb24gVGQoZSx0KXtsZXQgcjtyZXR1cm4gYTtmdW5jdGlvbiBhKGkpe3JldHVybiBldChpKT8oZS5lbnRlcigibGluZUVuZGluZyIpLGUuY29uc3VtZShpKSxlLmV4aXQoImxpbmVFbmRpbmciKSxyPSEwLGEpOnh0KGkpP0N0KGUsYSxyPyJsaW5lUHJlZml4IjoibGluZVN1ZmZpeCIpKGkpOnQoaSl9fXZhciBtNWU9bCgoKT0+e0phKCk7dXIoKX0pO2Z1bmN0aW9uIFd0YShlLHQscil7bGV0IGE9dGhpcyxpO3JldHVybiBvO2Z1bmN0aW9uIG8oaCl7cmV0dXJuIGUuZW50ZXIoImRlZmluaXRpb24iKSxuKGgpfWZ1bmN0aW9uIG4oaCl7cmV0dXJuIFplZS5jYWxsKGEsZSxzLHIsImRlZmluaXRpb25MYWJlbCIsImRlZmluaXRpb25MYWJlbE1hcmtlciIsImRlZmluaXRpb25MYWJlbFN0cmluZyIpKGgpfWZ1bmN0aW9uIHMoaCl7cmV0dXJuIGk9cWEoYS5zbGljZVNlcmlhbGl6ZShhLmV2ZW50c1thLmV2ZW50cy5sZW5ndGgtMV1bMV0pLnNsaWNlKDEsLTEpKSxoPT09NTg/KGUuZW50ZXIoImRlZmluaXRpb25NYXJrZXIiKSxlLmNvbnN1bWUoaCksZS5leGl0KCJkZWZpbml0aW9uTWFya2VyIiksYyk6cihoKX1mdW5jdGlvbiBjKGgpe3JldHVybiBvcihoKT9UZChlLGQpKGgpOmQoaCl9ZnVuY3Rpb24gZChoKXtyZXR1cm4gWWVlKGUsZixyLCJkZWZpbml0aW9uRGVzdGluYXRpb24iLCJkZWZpbml0aW9uRGVzdGluYXRpb25MaXRlcmFsIiwiZGVmaW5pdGlvbkRlc3RpbmF0aW9uTGl0ZXJhbE1hcmtlciIsImRlZmluaXRpb25EZXN0aW5hdGlvblJhdyIsImRlZmluaXRpb25EZXN0aW5hdGlvblN0cmluZyIpKGgpfWZ1bmN0aW9uIGYoaCl7cmV0dXJuIGUuYXR0ZW1wdChVdGEsdSx1KShoKX1mdW5jdGlvbiB1KGgpe3JldHVybiB4dChoKT9DdChlLHAsIndoaXRlc3BhY2UiKShoKTpwKGgpfWZ1bmN0aW9uIHAoaCl7cmV0dXJuIGg9PT1udWxsfHxldChoKT8oZS5leGl0KCJkZWZpbml0aW9uIiksYS5wYXJzZXIuZGVmaW5lZC5wdXNoKGkpLHQoaCkpOnIoaCl9fWZ1bmN0aW9uIEd0YShlLHQscil7cmV0dXJuIGE7ZnVuY3Rpb24gYShzKXtyZXR1cm4gb3Iocyk/VGQoZSxpKShzKTpyKHMpfWZ1bmN0aW9uIGkocyl7cmV0dXJuIFhlZShlLG8sciwiZGVmaW5pdGlvblRpdGxlIiwiZGVmaW5pdGlvblRpdGxlTWFya2VyIiwiZGVmaW5pdGlvblRpdGxlU3RyaW5nIikocyl9ZnVuY3Rpb24gbyhzKXtyZXR1cm4geHQocyk/Q3QoZSxuLCJ3aGl0ZXNwYWNlIikocyk6bihzKX1mdW5jdGlvbiBuKHMpe3JldHVybiBzPT09bnVsbHx8ZXQocyk/dChzKTpyKHMpfX12YXIgZzVlLFV0YSxReXQ9bCgoKT0+e2Y1ZSgpO3A1ZSgpO0phKCk7aDVlKCk7bTVlKCk7dXIoKTtqMCgpO2c1ZT17bmFtZToiZGVmaW5pdGlvbiIsdG9rZW5pemU6V3RhfSxVdGE9e3BhcnRpYWw6ITAsdG9rZW5pemU6R3RhfX0pO2Z1bmN0aW9uIFl0YShlLHQscil7cmV0dXJuIGE7ZnVuY3Rpb24gYShvKXtyZXR1cm4gZS5lbnRlcigiaGFyZEJyZWFrRXNjYXBlIiksZS5jb25zdW1lKG8pLGl9ZnVuY3Rpb24gaShvKXtyZXR1cm4gZXQobyk/KGUuZXhpdCgiaGFyZEJyZWFrRXNjYXBlIiksdChvKSk6cihvKX19dmFyIHg1ZSxLeXQ9bCgoKT0+e3VyKCk7eDVlPXtuYW1lOiJoYXJkQnJlYWtFc2NhcGUiLHRva2VuaXplOll0YX19KTtmdW5jdGlvbiBadGEoZSx0KXtsZXQgcj1lLmxlbmd0aC0yLGE9MyxpLG87cmV0dXJuIGVbYV1bMV0udHlwZT09PSJ3aGl0ZXNwYWNlIiYmKGErPTIpLHItMj5hJiZlW3JdWzFdLnR5cGU9PT0id2hpdGVzcGFjZSImJihyLT0yKSxlW3JdWzFdLnR5cGU9PT0iYXR4SGVhZGluZ1NlcXVlbmNlIiYmKGE9PT1yLTF8fHItND5hJiZlW3ItMl1bMV0udHlwZT09PSJ3aGl0ZXNwYWNlIikmJihyLT1hKzE9PT1yPzI6NCkscj5hJiYoaT17dHlwZToiYXR4SGVhZGluZ1RleHQiLHN0YXJ0OmVbYV1bMV0uc3RhcnQsZW5kOmVbcl1bMV0uZW5kfSxvPXt0eXBlOiJjaHVua1RleHQiLHN0YXJ0OmVbYV1bMV0uc3RhcnQsZW5kOmVbcl1bMV0uZW5kLGNvbnRlbnRUeXBlOiJ0ZXh0In0sS2EoZSxhLHItYSsxLFtbImVudGVyIixpLHRdLFsiZW50ZXIiLG8sdF0sWyJleGl0IixvLHRdLFsiZXhpdCIsaSx0XV0pKSxlfWZ1bmN0aW9uIFh0YShlLHQscil7bGV0IGE9MDtyZXR1cm4gaTtmdW5jdGlvbiBpKGYpe3JldHVybiBlLmVudGVyKCJhdHhIZWFkaW5nIiksbyhmKX1mdW5jdGlvbiBvKGYpe3JldHVybiBlLmVudGVyKCJhdHhIZWFkaW5nU2VxdWVuY2UiKSxuKGYpfWZ1bmN0aW9uIG4oZil7cmV0dXJuIGY9PT0zNSYmYSsrPDY/KGUuY29uc3VtZShmKSxuKTpmPT09bnVsbHx8b3IoZik/KGUuZXhpdCgiYXR4SGVhZGluZ1NlcXVlbmNlIikscyhmKSk6cihmKX1mdW5jdGlvbiBzKGYpe3JldHVybiBmPT09MzU/KGUuZW50ZXIoImF0eEhlYWRpbmdTZXF1ZW5jZSIpLGMoZikpOmY9PT1udWxsfHxldChmKT8oZS5leGl0KCJhdHhIZWFkaW5nIiksdChmKSk6eHQoZik/Q3QoZSxzLCJ3aGl0ZXNwYWNlIikoZik6KGUuZW50ZXIoImF0eEhlYWRpbmdUZXh0IiksZChmKSl9ZnVuY3Rpb24gYyhmKXtyZXR1cm4gZj09PTM1PyhlLmNvbnN1bWUoZiksYyk6KGUuZXhpdCgiYXR4SGVhZGluZ1NlcXVlbmNlIikscyhmKSl9ZnVuY3Rpb24gZChmKXtyZXR1cm4gZj09PW51bGx8fGY9PT0zNXx8b3IoZik/KGUuZXhpdCgiYXR4SGVhZGluZ1RleHQiKSxzKGYpKTooZS5jb25zdW1lKGYpLGQpfX12YXIgYjVlLEp5dD1sKCgpPT57SmEoKTt1cigpO3kyKCk7YjVlPXtuYW1lOiJoZWFkaW5nQXR4IixyZXNvbHZlOlp0YSx0b2tlbml6ZTpYdGF9fSk7dmFyIGV3dCx2NWUsdHd0PWwoKCk9Pntld3Q9WyJhZGRyZXNzIiwiYXJ0aWNsZSIsImFzaWRlIiwiYmFzZSIsImJhc2Vmb250IiwiYmxvY2txdW90ZSIsImJvZHkiLCJjYXB0aW9uIiwiY2VudGVyIiwiY29sIiwiY29sZ3JvdXAiLCJkZCIsImRldGFpbHMiLCJkaWFsb2ciLCJkaXIiLCJkaXYiLCJkbCIsImR0IiwiZmllbGRzZXQiLCJmaWdjYXB0aW9uIiwiZmlndXJlIiwiZm9vdGVyIiwiZm9ybSIsImZyYW1lIiwiZnJhbWVzZXQiLCJoMSIsImgyIiwiaDMiLCJoNCIsImg1IiwiaDYiLCJoZWFkIiwiaGVhZGVyIiwiaHIiLCJodG1sIiwiaWZyYW1lIiwibGVnZW5kIiwibGkiLCJsaW5rIiwibWFpbiIsIm1lbnUiLCJtZW51aXRlbSIsIm5hdiIsIm5vZnJhbWVzIiwib2wiLCJvcHRncm91cCIsIm9wdGlvbiIsInAiLCJwYXJhbSIsInNlYXJjaCIsInNlY3Rpb24iLCJzdW1tYXJ5IiwidGFibGUiLCJ0Ym9keSIsInRkIiwidGZvb3QiLCJ0aCIsInRoZWFkIiwidGl0bGUiLCJ0ciIsInRyYWNrIiwidWwiXSx2NWU9WyJwcmUiLCJzY3JpcHQiLCJzdHlsZSIsInRleHRhcmVhIl19KTtmdW5jdGlvbiBKdGEoZSl7bGV0IHQ9ZS5sZW5ndGg7Zm9yKDt0LS0mJiEoZVt0XVswXT09PSJlbnRlciImJmVbdF1bMV0udHlwZT09PSJodG1sRmxvdyIpOyk7cmV0dXJuIHQ+MSYmZVt0LTJdWzFdLnR5cGU9PT0ibGluZVByZWZpeCImJihlW3RdWzFdLnN0YXJ0PWVbdC0yXVsxXS5zdGFydCxlW3QrMV1bMV0uc3RhcnQ9ZVt0LTJdWzFdLnN0YXJ0LGUuc3BsaWNlKHQtMiwyKSksZX1mdW5jdGlvbiBlcmEoZSx0LHIpe2xldCBhPXRoaXMsaSxvLG4scyxjO3JldHVybiBkO2Z1bmN0aW9uIGQoTCl7cmV0dXJuIGYoTCl9ZnVuY3Rpb24gZihMKXtyZXR1cm4gZS5lbnRlcigiaHRtbEZsb3ciKSxlLmVudGVyKCJodG1sRmxvd0RhdGEiKSxlLmNvbnN1bWUoTCksdX1mdW5jdGlvbiB1KEwpe3JldHVybiBMPT09MzM/KGUuY29uc3VtZShMKSxwKTpMPT09NDc/KGUuY29uc3VtZShMKSxvPSEwLHgpOkw9PT02Mz8oZS5jb25zdW1lKEwpLGk9MyxhLmludGVycnVwdD90OlQpOlRpKEwpPyhlLmNvbnN1bWUoTCksbj1TdHJpbmcuZnJvbUNoYXJDb2RlKEwpLGcpOnIoTCl9ZnVuY3Rpb24gcChMKXtyZXR1cm4gTD09PTQ1PyhlLmNvbnN1bWUoTCksaT0yLGgpOkw9PT05MT8oZS5jb25zdW1lKEwpLGk9NSxzPTAsYik6VGkoTCk/KGUuY29uc3VtZShMKSxpPTQsYS5pbnRlcnJ1cHQ/dDpUKTpyKEwpfWZ1bmN0aW9uIGgoTCl7cmV0dXJuIEw9PT00NT8oZS5jb25zdW1lKEwpLGEuaW50ZXJydXB0P3Q6VCk6cihMKX1mdW5jdGlvbiBiKEwpe2xldCBRPSJDREFUQVsiO3JldHVybiBMPT09US5jaGFyQ29kZUF0KHMrKyk/KGUuY29uc3VtZShMKSxzPT09US5sZW5ndGg/YS5pbnRlcnJ1cHQ/dDp5OmIpOnIoTCl9ZnVuY3Rpb24geChMKXtyZXR1cm4gVGkoTCk/KGUuY29uc3VtZShMKSxuPVN0cmluZy5mcm9tQ2hhckNvZGUoTCksZyk6cihMKX1mdW5jdGlvbiBnKEwpe2lmKEw9PT1udWxsfHxMPT09NDd8fEw9PT02Mnx8b3IoTCkpe2xldCBRPUw9PT00NyxrZT1uLnRvTG93ZXJDYXNlKCk7cmV0dXJuIVEmJiFvJiZ2NWUuaW5jbHVkZXMoa2UpPyhpPTEsYS5pbnRlcnJ1cHQ/dChMKTp5KEwpKTpld3QuaW5jbHVkZXMobi50b0xvd2VyQ2FzZSgpKT8oaT02LFE/KGUuY29uc3VtZShMKSx2KTphLmludGVycnVwdD90KEwpOnkoTCkpOihpPTcsYS5pbnRlcnJ1cHQmJiFhLnBhcnNlci5sYXp5W2Eubm93KCkubGluZV0/cihMKTpvP3coTCk6TShMKSl9cmV0dXJuIEw9PT00NXx8SGEoTCk/KGUuY29uc3VtZShMKSxuKz1TdHJpbmcuZnJvbUNoYXJDb2RlKEwpLGcpOnIoTCl9ZnVuY3Rpb24gdihMKXtyZXR1cm4gTD09PTYyPyhlLmNvbnN1bWUoTCksYS5pbnRlcnJ1cHQ/dDp5KTpyKEwpfWZ1bmN0aW9uIHcoTCl7cmV0dXJuIHh0KEwpPyhlLmNvbnN1bWUoTCksdyk6QihMKX1mdW5jdGlvbiBNKEwpe3JldHVybiBMPT09NDc/KGUuY29uc3VtZShMKSxCKTpMPT09NTh8fEw9PT05NXx8VGkoTCk/KGUuY29uc3VtZShMKSxGKTp4dChMKT8oZS5jb25zdW1lKEwpLE0pOkIoTCl9ZnVuY3Rpb24gRihMKXtyZXR1cm4gTD09PTQ1fHxMPT09NDZ8fEw9PT01OHx8TD09PTk1fHxIYShMKT8oZS5jb25zdW1lKEwpLEYpOkMoTCl9ZnVuY3Rpb24gQyhMKXtyZXR1cm4gTD09PTYxPyhlLmNvbnN1bWUoTCksayk6eHQoTCk/KGUuY29uc3VtZShMKSxDKTpNKEwpfWZ1bmN0aW9uIGsoTCl7cmV0dXJuIEw9PT1udWxsfHxMPT09NjB8fEw9PT02MXx8TD09PTYyfHxMPT09OTY/cihMKTpMPT09MzR8fEw9PT0zOT8oZS5jb25zdW1lKEwpLGM9TCxOKTp4dChMKT8oZS5jb25zdW1lKEwpLGspOiQoTCl9ZnVuY3Rpb24gTihMKXtyZXR1cm4gTD09PWM/KGUuY29uc3VtZShMKSxjPW51bGwsSSk6TD09PW51bGx8fGV0KEwpP3IoTCk6KGUuY29uc3VtZShMKSxOKX1mdW5jdGlvbiAkKEwpe3JldHVybiBMPT09bnVsbHx8TD09PTM0fHxMPT09Mzl8fEw9PT00N3x8TD09PTYwfHxMPT09NjF8fEw9PT02Mnx8TD09PTk2fHxvcihMKT9DKEwpOihlLmNvbnN1bWUoTCksJCl9ZnVuY3Rpb24gSShMKXtyZXR1cm4gTD09PTQ3fHxMPT09NjJ8fHh0KEwpP00oTCk6cihMKX1mdW5jdGlvbiBCKEwpe3JldHVybiBMPT09NjI/KGUuY29uc3VtZShMKSx6KTpyKEwpfWZ1bmN0aW9uIHooTCl7cmV0dXJuIEw9PT1udWxsfHxldChMKT95KEwpOnh0KEwpPyhlLmNvbnN1bWUoTCkseik6cihMKX1mdW5jdGlvbiB5KEwpe3JldHVybiBMPT09NDUmJmk9PT0yPyhlLmNvbnN1bWUoTCksVik6TD09PTYwJiZpPT09MT8oZS5jb25zdW1lKEwpLEgpOkw9PT02MiYmaT09PTQ/KGUuY29uc3VtZShMKSxKKTpMPT09NjMmJmk9PT0zPyhlLmNvbnN1bWUoTCksVCk6TD09PTkzJiZpPT09NT8oZS5jb25zdW1lKEwpLGFlKTpldChMKSYmKGk9PT02fHxpPT09Nyk/KGUuZXhpdCgiaHRtbEZsb3dEYXRhIiksZS5jaGVjayhRdGEsZmUsRSkoTCkpOkw9PT1udWxsfHxldChMKT8oZS5leGl0KCJodG1sRmxvd0RhdGEiKSxFKEwpKTooZS5jb25zdW1lKEwpLHkpfWZ1bmN0aW9uIEUoTCl7cmV0dXJuIGUuY2hlY2soS3RhLF8sZmUpKEwpfWZ1bmN0aW9uIF8oTCl7cmV0dXJuIGUuZW50ZXIoImxpbmVFbmRpbmciKSxlLmNvbnN1bWUoTCksZS5leGl0KCJsaW5lRW5kaW5nIiksUH1mdW5jdGlvbiBQKEwpe3JldHVybiBMPT09bnVsbHx8ZXQoTCk/RShMKTooZS5lbnRlcigiaHRtbEZsb3dEYXRhIikseShMKSl9ZnVuY3Rpb24gVihMKXtyZXR1cm4gTD09PTQ1PyhlLmNvbnN1bWUoTCksVCk6eShMKX1mdW5jdGlvbiBIKEwpe3JldHVybiBMPT09NDc/KGUuY29uc3VtZShMKSxuPSIiLFcpOnkoTCl9ZnVuY3Rpb24gVyhMKXtpZihMPT09NjIpe2xldCBRPW4udG9Mb3dlckNhc2UoKTtyZXR1cm4gdjVlLmluY2x1ZGVzKFEpPyhlLmNvbnN1bWUoTCksSik6eShMKX1yZXR1cm4gVGkoTCkmJm4ubGVuZ3RoPDg/KGUuY29uc3VtZShMKSxuKz1TdHJpbmcuZnJvbUNoYXJDb2RlKEwpLFcpOnkoTCl9ZnVuY3Rpb24gYWUoTCl7cmV0dXJuIEw9PT05Mz8oZS5jb25zdW1lKEwpLFQpOnkoTCl9ZnVuY3Rpb24gVChMKXtyZXR1cm4gTD09PTYyPyhlLmNvbnN1bWUoTCksSik6TD09PTQ1JiZpPT09Mj8oZS5jb25zdW1lKEwpLFQpOnkoTCl9ZnVuY3Rpb24gSihMKXtyZXR1cm4gTD09PW51bGx8fGV0KEwpPyhlLmV4aXQoImh0bWxGbG93RGF0YSIpLGZlKEwpKTooZS5jb25zdW1lKEwpLEopfWZ1bmN0aW9uIGZlKEwpe3JldHVybiBlLmV4aXQoImh0bWxGbG93IiksdChMKX19ZnVuY3Rpb24gdHJhKGUsdCxyKXtsZXQgYT10aGlzO3JldHVybiBpO2Z1bmN0aW9uIGkobil7cmV0dXJuIGV0KG4pPyhlLmVudGVyKCJsaW5lRW5kaW5nIiksZS5jb25zdW1lKG4pLGUuZXhpdCgibGluZUVuZGluZyIpLG8pOnIobil9ZnVuY3Rpb24gbyhuKXtyZXR1cm4gYS5wYXJzZXIubGF6eVthLm5vdygpLmxpbmVdP3Iobik6dChuKX19ZnVuY3Rpb24gcnJhKGUsdCxyKXtyZXR1cm4gYTtmdW5jdGlvbiBhKGkpe3JldHVybiBlLmVudGVyKCJsaW5lRW5kaW5nIiksZS5jb25zdW1lKGkpLGUuZXhpdCgibGluZUVuZGluZyIpLGUuYXR0ZW1wdChTMix0LHIpfX12YXIgeTVlLFF0YSxLdGEscnd0PWwoKCk9Pnt1cigpO3R3dCgpO3FlZSgpO3k1ZT17Y29uY3JldGU6ITAsbmFtZToiaHRtbEZsb3ciLHJlc29sdmVUbzpKdGEsdG9rZW5pemU6ZXJhfSxRdGE9e3BhcnRpYWw6ITAsdG9rZW5pemU6cnJhfSxLdGE9e3BhcnRpYWw6ITAsdG9rZW5pemU6dHJhfX0pO2Z1bmN0aW9uIGFyYShlLHQscil7bGV0IGE9dGhpcyxpLG8sbjtyZXR1cm4gcztmdW5jdGlvbiBzKFQpe3JldHVybiBlLmVudGVyKCJodG1sVGV4dCIpLGUuZW50ZXIoImh0bWxUZXh0RGF0YSIpLGUuY29uc3VtZShUKSxjfWZ1bmN0aW9uIGMoVCl7cmV0dXJuIFQ9PT0zMz8oZS5jb25zdW1lKFQpLGQpOlQ9PT00Nz8oZS5jb25zdW1lKFQpLEMpOlQ9PT02Mz8oZS5jb25zdW1lKFQpLE0pOlRpKFQpPyhlLmNvbnN1bWUoVCksJCk6cihUKX1mdW5jdGlvbiBkKFQpe3JldHVybiBUPT09NDU/KGUuY29uc3VtZShUKSxmKTpUPT09OTE/KGUuY29uc3VtZShUKSxvPTAsYik6VGkoVCk/KGUuY29uc3VtZShUKSx3KTpyKFQpfWZ1bmN0aW9uIGYoVCl7cmV0dXJuIFQ9PT00NT8oZS5jb25zdW1lKFQpLGgpOnIoVCl9ZnVuY3Rpb24gdShUKXtyZXR1cm4gVD09PW51bGw/cihUKTpUPT09NDU/KGUuY29uc3VtZShUKSxwKTpldChUKT8obj11LEgoVCkpOihlLmNvbnN1bWUoVCksdSl9ZnVuY3Rpb24gcChUKXtyZXR1cm4gVD09PTQ1PyhlLmNvbnN1bWUoVCksaCk6dShUKX1mdW5jdGlvbiBoKFQpe3JldHVybiBUPT09NjI/VihUKTpUPT09NDU/cChUKTp1KFQpfWZ1bmN0aW9uIGIoVCl7bGV0IEo9IkNEQVRBWyI7cmV0dXJuIFQ9PT1KLmNoYXJDb2RlQXQobysrKT8oZS5jb25zdW1lKFQpLG89PT1KLmxlbmd0aD94OmIpOnIoVCl9ZnVuY3Rpb24geChUKXtyZXR1cm4gVD09PW51bGw/cihUKTpUPT09OTM/KGUuY29uc3VtZShUKSxnKTpldChUKT8obj14LEgoVCkpOihlLmNvbnN1bWUoVCkseCl9ZnVuY3Rpb24gZyhUKXtyZXR1cm4gVD09PTkzPyhlLmNvbnN1bWUoVCksdik6eChUKX1mdW5jdGlvbiB2KFQpe3JldHVybiBUPT09NjI/VihUKTpUPT09OTM/KGUuY29uc3VtZShUKSx2KTp4KFQpfWZ1bmN0aW9uIHcoVCl7cmV0dXJuIFQ9PT1udWxsfHxUPT09NjI/VihUKTpldChUKT8obj13LEgoVCkpOihlLmNvbnN1bWUoVCksdyl9ZnVuY3Rpb24gTShUKXtyZXR1cm4gVD09PW51bGw/cihUKTpUPT09NjM/KGUuY29uc3VtZShUKSxGKTpldChUKT8obj1NLEgoVCkpOihlLmNvbnN1bWUoVCksTSl9ZnVuY3Rpb24gRihUKXtyZXR1cm4gVD09PTYyP1YoVCk6TShUKX1mdW5jdGlvbiBDKFQpe3JldHVybiBUaShUKT8oZS5jb25zdW1lKFQpLGspOnIoVCl9ZnVuY3Rpb24gayhUKXtyZXR1cm4gVD09PTQ1fHxIYShUKT8oZS5jb25zdW1lKFQpLGspOk4oVCl9ZnVuY3Rpb24gTihUKXtyZXR1cm4gZXQoVCk/KG49TixIKFQpKTp4dChUKT8oZS5jb25zdW1lKFQpLE4pOlYoVCl9ZnVuY3Rpb24gJChUKXtyZXR1cm4gVD09PTQ1fHxIYShUKT8oZS5jb25zdW1lKFQpLCQpOlQ9PT00N3x8VD09PTYyfHxvcihUKT9JKFQpOnIoVCl9ZnVuY3Rpb24gSShUKXtyZXR1cm4gVD09PTQ3PyhlLmNvbnN1bWUoVCksVik6VD09PTU4fHxUPT09OTV8fFRpKFQpPyhlLmNvbnN1bWUoVCksQik6ZXQoVCk/KG49SSxIKFQpKTp4dChUKT8oZS5jb25zdW1lKFQpLEkpOlYoVCl9ZnVuY3Rpb24gQihUKXtyZXR1cm4gVD09PTQ1fHxUPT09NDZ8fFQ9PT01OHx8VD09PTk1fHxIYShUKT8oZS5jb25zdW1lKFQpLEIpOnooVCl9ZnVuY3Rpb24geihUKXtyZXR1cm4gVD09PTYxPyhlLmNvbnN1bWUoVCkseSk6ZXQoVCk/KG49eixIKFQpKTp4dChUKT8oZS5jb25zdW1lKFQpLHopOkkoVCl9ZnVuY3Rpb24geShUKXtyZXR1cm4gVD09PW51bGx8fFQ9PT02MHx8VD09PTYxfHxUPT09NjJ8fFQ9PT05Nj9yKFQpOlQ9PT0zNHx8VD09PTM5PyhlLmNvbnN1bWUoVCksaT1ULEUpOmV0KFQpPyhuPXksSChUKSk6eHQoVCk/KGUuY29uc3VtZShUKSx5KTooZS5jb25zdW1lKFQpLF8pfWZ1bmN0aW9uIEUoVCl7cmV0dXJuIFQ9PT1pPyhlLmNvbnN1bWUoVCksaT12b2lkIDAsUCk6VD09PW51bGw/cihUKTpldChUKT8obj1FLEgoVCkpOihlLmNvbnN1bWUoVCksRSl9ZnVuY3Rpb24gXyhUKXtyZXR1cm4gVD09PW51bGx8fFQ9PT0zNHx8VD09PTM5fHxUPT09NjB8fFQ9PT02MXx8VD09PTk2P3IoVCk6VD09PTQ3fHxUPT09NjJ8fG9yKFQpP0koVCk6KGUuY29uc3VtZShUKSxfKX1mdW5jdGlvbiBQKFQpe3JldHVybiBUPT09NDd8fFQ9PT02Mnx8b3IoVCk/SShUKTpyKFQpfWZ1bmN0aW9uIFYoVCl7cmV0dXJuIFQ9PT02Mj8oZS5jb25zdW1lKFQpLGUuZXhpdCgiaHRtbFRleHREYXRhIiksZS5leGl0KCJodG1sVGV4dCIpLHQpOnIoVCl9ZnVuY3Rpb24gSChUKXtyZXR1cm4gZS5leGl0KCJodG1sVGV4dERhdGEiKSxlLmVudGVyKCJsaW5lRW5kaW5nIiksZS5jb25zdW1lKFQpLGUuZXhpdCgibGluZUVuZGluZyIpLFd9ZnVuY3Rpb24gVyhUKXtyZXR1cm4geHQoVCk/Q3QoZSxhZSwibGluZVByZWZpeCIsYS5wYXJzZXIuY29uc3RydWN0cy5kaXNhYmxlLm51bGwuaW5jbHVkZXMoImNvZGVJbmRlbnRlZCIpP3ZvaWQgMDo0KShUKTphZShUKX1mdW5jdGlvbiBhZShUKXtyZXR1cm4gZS5lbnRlcigiaHRtbFRleHREYXRhIiksbihUKX19dmFyIHc1ZSxhd3Q9bCgoKT0+e0phKCk7dXIoKTt3NWU9e25hbWU6Imh0bWxUZXh0Iix0b2tlbml6ZTphcmF9fSk7ZnVuY3Rpb24gc3JhKGUpe2xldCB0PS0xLHI9W107Zm9yKDsrK3Q8ZS5sZW5ndGg7KXtsZXQgYT1lW3RdWzFdO2lmKHIucHVzaChlW3RdKSxhLnR5cGU9PT0ibGFiZWxJbWFnZSJ8fGEudHlwZT09PSJsYWJlbExpbmsifHxhLnR5cGU9PT0ibGFiZWxFbmQiKXtsZXQgaT1hLnR5cGU9PT0ibGFiZWxJbWFnZSI/NDoyO2EudHlwZT0iZGF0YSIsdCs9aX19cmV0dXJuIGUubGVuZ3RoIT09ci5sZW5ndGgmJkthKGUsMCxlLmxlbmd0aCxyKSxlfWZ1bmN0aW9uIGxyYShlLHQpe2xldCByPWUubGVuZ3RoLGE9MCxpLG8sbixzO2Zvcig7ci0tOylpZihpPWVbcl1bMV0sbyl7aWYoaS50eXBlPT09ImxpbmsifHxpLnR5cGU9PT0ibGFiZWxMaW5rIiYmaS5faW5hY3RpdmUpYnJlYWs7ZVtyXVswXT09PSJlbnRlciImJmkudHlwZT09PSJsYWJlbExpbmsiJiYoaS5faW5hY3RpdmU9ITApfWVsc2UgaWYobil7aWYoZVtyXVswXT09PSJlbnRlciImJihpLnR5cGU9PT0ibGFiZWxJbWFnZSJ8fGkudHlwZT09PSJsYWJlbExpbmsiKSYmIWkuX2JhbGFuY2VkJiYobz1yLGkudHlwZSE9PSJsYWJlbExpbmsiKSl7YT0yO2JyZWFrfX1lbHNlIGkudHlwZT09PSJsYWJlbEVuZCImJihuPXIpO2xldCBjPXt0eXBlOmVbb11bMV0udHlwZT09PSJsYWJlbExpbmsiPyJsaW5rIjoiaW1hZ2UiLHN0YXJ0OnsuLi5lW29dWzFdLnN0YXJ0fSxlbmQ6ey4uLmVbZS5sZW5ndGgtMV1bMV0uZW5kfX0sZD17dHlwZToibGFiZWwiLHN0YXJ0OnsuLi5lW29dWzFdLnN0YXJ0fSxlbmQ6ey4uLmVbbl1bMV0uZW5kfX0sZj17dHlwZToibGFiZWxUZXh0IixzdGFydDp7Li4uZVtvK2ErMl1bMV0uZW5kfSxlbmQ6ey4uLmVbbi0yXVsxXS5zdGFydH19O3JldHVybiBzPVtbImVudGVyIixjLHRdLFsiZW50ZXIiLGQsdF1dLHM9dWkocyxlLnNsaWNlKG8rMSxvK2ErMykpLHM9dWkocyxbWyJlbnRlciIsZix0XV0pLHM9dWkocyxVMCh0LnBhcnNlci5jb25zdHJ1Y3RzLmluc2lkZVNwYW4ubnVsbCxlLnNsaWNlKG8rYSs0LG4tMyksdCkpLHM9dWkocyxbWyJleGl0IixmLHRdLGVbbi0yXSxlW24tMV0sWyJleGl0IixkLHRdXSkscz11aShzLGUuc2xpY2UobisxKSkscz11aShzLFtbImV4aXQiLGMsdF1dKSxLYShlLG8sZS5sZW5ndGgscyksZX1mdW5jdGlvbiBjcmEoZSx0LHIpe2xldCBhPXRoaXMsaT1hLmV2ZW50cy5sZW5ndGgsbyxuO2Zvcig7aS0tOylpZigoYS5ldmVudHNbaV1bMV0udHlwZT09PSJsYWJlbEltYWdlInx8YS5ldmVudHNbaV1bMV0udHlwZT09PSJsYWJlbExpbmsiKSYmIWEuZXZlbnRzW2ldWzFdLl9iYWxhbmNlZCl7bz1hLmV2ZW50c1tpXVsxXTticmVha31yZXR1cm4gcztmdW5jdGlvbiBzKHApe3JldHVybiBvP28uX2luYWN0aXZlP3UocCk6KG49YS5wYXJzZXIuZGVmaW5lZC5pbmNsdWRlcyhxYShhLnNsaWNlU2VyaWFsaXplKHtzdGFydDpvLmVuZCxlbmQ6YS5ub3coKX0pKSksZS5lbnRlcigibGFiZWxFbmQiKSxlLmVudGVyKCJsYWJlbE1hcmtlciIpLGUuY29uc3VtZShwKSxlLmV4aXQoImxhYmVsTWFya2VyIiksZS5leGl0KCJsYWJlbEVuZCIpLGMpOnIocCl9ZnVuY3Rpb24gYyhwKXtyZXR1cm4gcD09PTQwP2UuYXR0ZW1wdChpcmEsZixuP2Y6dSkocCk6cD09PTkxP2UuYXR0ZW1wdChvcmEsZixuP2Q6dSkocCk6bj9mKHApOnUocCl9ZnVuY3Rpb24gZChwKXtyZXR1cm4gZS5hdHRlbXB0KG5yYSxmLHUpKHApfWZ1bmN0aW9uIGYocCl7cmV0dXJuIHQocCl9ZnVuY3Rpb24gdShwKXtyZXR1cm4gby5fYmFsYW5jZWQ9ITAscihwKX19ZnVuY3Rpb24gZHJhKGUsdCxyKXtyZXR1cm4gYTtmdW5jdGlvbiBhKHUpe3JldHVybiBlLmVudGVyKCJyZXNvdXJjZSIpLGUuZW50ZXIoInJlc291cmNlTWFya2VyIiksZS5jb25zdW1lKHUpLGUuZXhpdCgicmVzb3VyY2VNYXJrZXIiKSxpfWZ1bmN0aW9uIGkodSl7cmV0dXJuIG9yKHUpP1RkKGUsbykodSk6byh1KX1mdW5jdGlvbiBvKHUpe3JldHVybiB1PT09NDE/Zih1KTpZZWUoZSxuLHMsInJlc291cmNlRGVzdGluYXRpb24iLCJyZXNvdXJjZURlc3RpbmF0aW9uTGl0ZXJhbCIsInJlc291cmNlRGVzdGluYXRpb25MaXRlcmFsTWFya2VyIiwicmVzb3VyY2VEZXN0aW5hdGlvblJhdyIsInJlc291cmNlRGVzdGluYXRpb25TdHJpbmciLDMyKSh1KX1mdW5jdGlvbiBuKHUpe3JldHVybiBvcih1KT9UZChlLGMpKHUpOmYodSl9ZnVuY3Rpb24gcyh1KXtyZXR1cm4gcih1KX1mdW5jdGlvbiBjKHUpe3JldHVybiB1PT09MzR8fHU9PT0zOXx8dT09PTQwP1hlZShlLGQsciwicmVzb3VyY2VUaXRsZSIsInJlc291cmNlVGl0bGVNYXJrZXIiLCJyZXNvdXJjZVRpdGxlU3RyaW5nIikodSk6Zih1KX1mdW5jdGlvbiBkKHUpe3JldHVybiBvcih1KT9UZChlLGYpKHUpOmYodSl9ZnVuY3Rpb24gZih1KXtyZXR1cm4gdT09PTQxPyhlLmVudGVyKCJyZXNvdXJjZU1hcmtlciIpLGUuY29uc3VtZSh1KSxlLmV4aXQoInJlc291cmNlTWFya2VyIiksZS5leGl0KCJyZXNvdXJjZSIpLHQpOnIodSl9fWZ1bmN0aW9uIHVyYShlLHQscil7bGV0IGE9dGhpcztyZXR1cm4gaTtmdW5jdGlvbiBpKHMpe3JldHVybiBaZWUuY2FsbChhLGUsbyxuLCJyZWZlcmVuY2UiLCJyZWZlcmVuY2VNYXJrZXIiLCJyZWZlcmVuY2VTdHJpbmciKShzKX1mdW5jdGlvbiBvKHMpe3JldHVybiBhLnBhcnNlci5kZWZpbmVkLmluY2x1ZGVzKHFhKGEuc2xpY2VTZXJpYWxpemUoYS5ldmVudHNbYS5ldmVudHMubGVuZ3RoLTFdWzFdKS5zbGljZSgxLC0xKSkpP3Qocyk6cihzKX1mdW5jdGlvbiBuKHMpe3JldHVybiByKHMpfX1mdW5jdGlvbiBmcmEoZSx0LHIpe3JldHVybiBhO2Z1bmN0aW9uIGEobyl7cmV0dXJuIGUuZW50ZXIoInJlZmVyZW5jZSIpLGUuZW50ZXIoInJlZmVyZW5jZU1hcmtlciIpLGUuY29uc3VtZShvKSxlLmV4aXQoInJlZmVyZW5jZU1hcmtlciIpLGl9ZnVuY3Rpb24gaShvKXtyZXR1cm4gbz09PTkzPyhlLmVudGVyKCJyZWZlcmVuY2VNYXJrZXIiKSxlLmNvbnN1bWUobyksZS5leGl0KCJyZWZlcmVuY2VNYXJrZXIiKSxlLmV4aXQoInJlZmVyZW5jZSIpLHQpOnIobyl9fXZhciBMZCxpcmEsb3JhLG5yYSxRZWU9bCgoKT0+e2Y1ZSgpO3A1ZSgpO2g1ZSgpO201ZSgpO3VyKCk7eTIoKTtqMCgpO3NiKCk7TGQ9e25hbWU6ImxhYmVsRW5kIixyZXNvbHZlQWxsOnNyYSxyZXNvbHZlVG86bHJhLHRva2VuaXplOmNyYX0saXJhPXt0b2tlbml6ZTpkcmF9LG9yYT17dG9rZW5pemU6dXJhfSxucmE9e3Rva2VuaXplOmZyYX19KTtmdW5jdGlvbiBwcmEoZSx0LHIpe2xldCBhPXRoaXM7cmV0dXJuIGk7ZnVuY3Rpb24gaShzKXtyZXR1cm4gZS5lbnRlcigibGFiZWxJbWFnZSIpLGUuZW50ZXIoImxhYmVsSW1hZ2VNYXJrZXIiKSxlLmNvbnN1bWUocyksZS5leGl0KCJsYWJlbEltYWdlTWFya2VyIiksb31mdW5jdGlvbiBvKHMpe3JldHVybiBzPT09OTE/KGUuZW50ZXIoImxhYmVsTWFya2VyIiksZS5jb25zdW1lKHMpLGUuZXhpdCgibGFiZWxNYXJrZXIiKSxlLmV4aXQoImxhYmVsSW1hZ2UiKSxuKTpyKHMpfWZ1bmN0aW9uIG4ocyl7cmV0dXJuIHM9PT05NCYmIl9oaWRkZW5Gb290bm90ZVN1cHBvcnQiaW4gYS5wYXJzZXIuY29uc3RydWN0cz9yKHMpOnQocyl9fXZhciBNNWUsaXd0PWwoKCk9PntRZWUoKTtNNWU9e25hbWU6ImxhYmVsU3RhcnRJbWFnZSIscmVzb2x2ZUFsbDpMZC5yZXNvbHZlQWxsLHRva2VuaXplOnByYX19KTtmdW5jdGlvbiBocmEoZSx0LHIpe2xldCBhPXRoaXM7cmV0dXJuIGk7ZnVuY3Rpb24gaShuKXtyZXR1cm4gZS5lbnRlcigibGFiZWxMaW5rIiksZS5lbnRlcigibGFiZWxNYXJrZXIiKSxlLmNvbnN1bWUobiksZS5leGl0KCJsYWJlbE1hcmtlciIpLGUuZXhpdCgibGFiZWxMaW5rIiksb31mdW5jdGlvbiBvKG4pe3JldHVybiBuPT09OTQmJiJfaGlkZGVuRm9vdG5vdGVTdXBwb3J0ImluIGEucGFyc2VyLmNvbnN0cnVjdHM/cihuKTp0KG4pfX12YXIgazVlLG93dD1sKCgpPT57UWVlKCk7azVlPXtuYW1lOiJsYWJlbFN0YXJ0TGluayIscmVzb2x2ZUFsbDpMZC5yZXNvbHZlQWxsLHRva2VuaXplOmhyYX19KTtmdW5jdGlvbiBtcmEoZSx0KXtyZXR1cm4gcjtmdW5jdGlvbiByKGEpe3JldHVybiBlLmVudGVyKCJsaW5lRW5kaW5nIiksZS5jb25zdW1lKGEpLGUuZXhpdCgibGluZUVuZGluZyIpLEN0KGUsdCwibGluZVByZWZpeCIpfX12YXIgZmIsbnd0PWwoKCk9PntKYSgpO3VyKCk7ZmI9e25hbWU6ImxpbmVFbmRpbmciLHRva2VuaXplOm1yYX19KTtmdW5jdGlvbiBncmEoZSx0LHIpe2xldCBhPTAsaTtyZXR1cm4gbztmdW5jdGlvbiBvKGQpe3JldHVybiBlLmVudGVyKCJ0aGVtYXRpY0JyZWFrIiksbihkKX1mdW5jdGlvbiBuKGQpe3JldHVybiBpPWQscyhkKX1mdW5jdGlvbiBzKGQpe3JldHVybiBkPT09aT8oZS5lbnRlcigidGhlbWF0aWNCcmVha1NlcXVlbmNlIiksYyhkKSk6YT49MyYmKGQ9PT1udWxsfHxldChkKSk/KGUuZXhpdCgidGhlbWF0aWNCcmVhayIpLHQoZCkpOnIoZCl9ZnVuY3Rpb24gYyhkKXtyZXR1cm4gZD09PWk/KGUuY29uc3VtZShkKSxhKyssYyk6KGUuZXhpdCgidGhlbWF0aWNCcmVha1NlcXVlbmNlIikseHQoZCk/Q3QoZSxzLCJ3aGl0ZXNwYWNlIikoZCk6cyhkKSl9fXZhciBEZCxTNWU9bCgoKT0+e0phKCk7dXIoKTtEZD17bmFtZToidGhlbWF0aWNCcmVhayIsdG9rZW5pemU6Z3JhfX0pO2Z1bmN0aW9uIHZyYShlLHQscil7bGV0IGE9dGhpcyxpPWEuZXZlbnRzW2EuZXZlbnRzLmxlbmd0aC0xXSxvPWkmJmlbMV0udHlwZT09PSJsaW5lUHJlZml4Ij9pWzJdLnNsaWNlU2VyaWFsaXplKGlbMV0sITApLmxlbmd0aDowLG49MDtyZXR1cm4gcztmdW5jdGlvbiBzKGgpe2xldCBiPWEuY29udGFpbmVyU3RhdGUudHlwZXx8KGg9PT00Mnx8aD09PTQzfHxoPT09NDU/Imxpc3RVbm9yZGVyZWQiOiJsaXN0T3JkZXJlZCIpO2lmKGI9PT0ibGlzdFVub3JkZXJlZCI/IWEuY29udGFpbmVyU3RhdGUubWFya2VyfHxoPT09YS5jb250YWluZXJTdGF0ZS5tYXJrZXI6cmIoaCkpe2lmKGEuY29udGFpbmVyU3RhdGUudHlwZXx8KGEuY29udGFpbmVyU3RhdGUudHlwZT1iLGUuZW50ZXIoYix7X2NvbnRhaW5lcjohMH0pKSxiPT09Imxpc3RVbm9yZGVyZWQiKXJldHVybiBlLmVudGVyKCJsaXN0SXRlbVByZWZpeCIpLGg9PT00Mnx8aD09PTQ1P2UuY2hlY2soRGQscixkKShoKTpkKGgpO2lmKCFhLmludGVycnVwdHx8aD09PTQ5KXJldHVybiBlLmVudGVyKCJsaXN0SXRlbVByZWZpeCIpLGUuZW50ZXIoImxpc3RJdGVtVmFsdWUiKSxjKGgpfXJldHVybiByKGgpfWZ1bmN0aW9uIGMoaCl7cmV0dXJuIHJiKGgpJiYrK248MTA/KGUuY29uc3VtZShoKSxjKTooIWEuaW50ZXJydXB0fHxuPDIpJiYoYS5jb250YWluZXJTdGF0ZS5tYXJrZXI/aD09PWEuY29udGFpbmVyU3RhdGUubWFya2VyOmg9PT00MXx8aD09PTQ2KT8oZS5leGl0KCJsaXN0SXRlbVZhbHVlIiksZChoKSk6cihoKX1mdW5jdGlvbiBkKGgpe3JldHVybiBlLmVudGVyKCJsaXN0SXRlbU1hcmtlciIpLGUuY29uc3VtZShoKSxlLmV4aXQoImxpc3RJdGVtTWFya2VyIiksYS5jb250YWluZXJTdGF0ZS5tYXJrZXI9YS5jb250YWluZXJTdGF0ZS5tYXJrZXJ8fGgsZS5jaGVjayhTMixhLmludGVycnVwdD9yOmYsZS5hdHRlbXB0KHhyYSxwLHUpKX1mdW5jdGlvbiBmKGgpe3JldHVybiBhLmNvbnRhaW5lclN0YXRlLmluaXRpYWxCbGFua0xpbmU9ITAsbysrLHAoaCl9ZnVuY3Rpb24gdShoKXtyZXR1cm4geHQoaCk/KGUuZW50ZXIoImxpc3RJdGVtUHJlZml4V2hpdGVzcGFjZSIpLGUuY29uc3VtZShoKSxlLmV4aXQoImxpc3RJdGVtUHJlZml4V2hpdGVzcGFjZSIpLHApOnIoaCl9ZnVuY3Rpb24gcChoKXtyZXR1cm4gYS5jb250YWluZXJTdGF0ZS5zaXplPW8rYS5zbGljZVNlcmlhbGl6ZShlLmV4aXQoImxpc3RJdGVtUHJlZml4IiksITApLmxlbmd0aCx0KGgpfX1mdW5jdGlvbiB5cmEoZSx0LHIpe2xldCBhPXRoaXM7cmV0dXJuIGEuY29udGFpbmVyU3RhdGUuX2Nsb3NlRmxvdz12b2lkIDAsZS5jaGVjayhTMixpLG8pO2Z1bmN0aW9uIGkocyl7cmV0dXJuIGEuY29udGFpbmVyU3RhdGUuZnVydGhlckJsYW5rTGluZXM9YS5jb250YWluZXJTdGF0ZS5mdXJ0aGVyQmxhbmtMaW5lc3x8YS5jb250YWluZXJTdGF0ZS5pbml0aWFsQmxhbmtMaW5lLEN0KGUsdCwibGlzdEl0ZW1JbmRlbnQiLGEuY29udGFpbmVyU3RhdGUuc2l6ZSsxKShzKX1mdW5jdGlvbiBvKHMpe3JldHVybiBhLmNvbnRhaW5lclN0YXRlLmZ1cnRoZXJCbGFua0xpbmVzfHwheHQocyk/KGEuY29udGFpbmVyU3RhdGUuZnVydGhlckJsYW5rTGluZXM9dm9pZCAwLGEuY29udGFpbmVyU3RhdGUuaW5pdGlhbEJsYW5rTGluZT12b2lkIDAsbihzKSk6KGEuY29udGFpbmVyU3RhdGUuZnVydGhlckJsYW5rTGluZXM9dm9pZCAwLGEuY29udGFpbmVyU3RhdGUuaW5pdGlhbEJsYW5rTGluZT12b2lkIDAsZS5hdHRlbXB0KGJyYSx0LG4pKHMpKX1mdW5jdGlvbiBuKHMpe3JldHVybiBhLmNvbnRhaW5lclN0YXRlLl9jbG9zZUZsb3c9ITAsYS5pbnRlcnJ1cHQ9dm9pZCAwLEN0KGUsZS5hdHRlbXB0KCQxLHQsciksImxpbmVQcmVmaXgiLGEucGFyc2VyLmNvbnN0cnVjdHMuZGlzYWJsZS5udWxsLmluY2x1ZGVzKCJjb2RlSW5kZW50ZWQiKT92b2lkIDA6NCkocyl9fWZ1bmN0aW9uIHdyYShlLHQscil7bGV0IGE9dGhpcztyZXR1cm4gQ3QoZSxpLCJsaXN0SXRlbUluZGVudCIsYS5jb250YWluZXJTdGF0ZS5zaXplKzEpO2Z1bmN0aW9uIGkobyl7bGV0IG49YS5ldmVudHNbYS5ldmVudHMubGVuZ3RoLTFdO3JldHVybiBuJiZuWzFdLnR5cGU9PT0ibGlzdEl0ZW1JbmRlbnQiJiZuWzJdLnNsaWNlU2VyaWFsaXplKG5bMV0sITApLmxlbmd0aD09PWEuY29udGFpbmVyU3RhdGUuc2l6ZT90KG8pOnIobyl9fWZ1bmN0aW9uIE1yYShlKXtlLmV4aXQodGhpcy5jb250YWluZXJTdGF0ZS50eXBlKX1mdW5jdGlvbiBrcmEoZSx0LHIpe2xldCBhPXRoaXM7cmV0dXJuIEN0KGUsaSwibGlzdEl0ZW1QcmVmaXhXaGl0ZXNwYWNlIixhLnBhcnNlci5jb25zdHJ1Y3RzLmRpc2FibGUubnVsbC5pbmNsdWRlcygiY29kZUluZGVudGVkIik/dm9pZCAwOjUpO2Z1bmN0aW9uIGkobyl7bGV0IG49YS5ldmVudHNbYS5ldmVudHMubGVuZ3RoLTFdO3JldHVybiF4dChvKSYmbiYmblsxXS50eXBlPT09Imxpc3RJdGVtUHJlZml4V2hpdGVzcGFjZSI/dChvKTpyKG8pfX12YXIgJDEseHJhLGJyYSxzd3Q9bCgoKT0+e0phKCk7dXIoKTtxZWUoKTtTNWUoKTskMT17Y29udGludWF0aW9uOnt0b2tlbml6ZTp5cmF9LGV4aXQ6TXJhLG5hbWU6Imxpc3QiLHRva2VuaXplOnZyYX0seHJhPXtwYXJ0aWFsOiEwLHRva2VuaXplOmtyYX0sYnJhPXtwYXJ0aWFsOiEwLHRva2VuaXplOndyYX19KTtmdW5jdGlvbiBTcmEoZSx0KXtsZXQgcj1lLmxlbmd0aCxhLGksbztmb3IoO3ItLTspaWYoZVtyXVswXT09PSJlbnRlciIpe2lmKGVbcl1bMV0udHlwZT09PSJjb250ZW50Iil7YT1yO2JyZWFrfWVbcl1bMV0udHlwZT09PSJwYXJhZ3JhcGgiJiYoaT1yKX1lbHNlIGVbcl1bMV0udHlwZT09PSJjb250ZW50IiYmZS5zcGxpY2UociwxKSwhbyYmZVtyXVsxXS50eXBlPT09ImRlZmluaXRpb24iJiYobz1yKTtsZXQgbj17dHlwZToic2V0ZXh0SGVhZGluZyIsc3RhcnQ6ey4uLmVbYV1bMV0uc3RhcnR9LGVuZDp7Li4uZVtlLmxlbmd0aC0xXVsxXS5lbmR9fTtyZXR1cm4gZVtpXVsxXS50eXBlPSJzZXRleHRIZWFkaW5nVGV4dCIsbz8oZS5zcGxpY2UoaSwwLFsiZW50ZXIiLG4sdF0pLGUuc3BsaWNlKG8rMSwwLFsiZXhpdCIsZVthXVsxXSx0XSksZVthXVsxXS5lbmQ9ey4uLmVbb11bMV0uZW5kfSk6ZVthXVsxXT1uLGUucHVzaChbImV4aXQiLG4sdF0pLGV9ZnVuY3Rpb24genJhKGUsdCxyKXtsZXQgYT10aGlzLGk7cmV0dXJuIG87ZnVuY3Rpb24gbyhkKXtsZXQgZj1hLmV2ZW50cy5sZW5ndGgsdTtmb3IoO2YtLTspaWYoYS5ldmVudHNbZl1bMV0udHlwZSE9PSJsaW5lRW5kaW5nIiYmYS5ldmVudHNbZl1bMV0udHlwZSE9PSJsaW5lUHJlZml4IiYmYS5ldmVudHNbZl1bMV0udHlwZSE9PSJjb250ZW50Iil7dT1hLmV2ZW50c1tmXVsxXS50eXBlPT09InBhcmFncmFwaCI7YnJlYWt9cmV0dXJuIWEucGFyc2VyLmxhenlbYS5ub3coKS5saW5lXSYmKGEuaW50ZXJydXB0fHx1KT8oZS5lbnRlcigic2V0ZXh0SGVhZGluZ0xpbmUiKSxpPWQsbihkKSk6cihkKX1mdW5jdGlvbiBuKGQpe3JldHVybiBlLmVudGVyKCJzZXRleHRIZWFkaW5nTGluZVNlcXVlbmNlIikscyhkKX1mdW5jdGlvbiBzKGQpe3JldHVybiBkPT09aT8oZS5jb25zdW1lKGQpLHMpOihlLmV4aXQoInNldGV4dEhlYWRpbmdMaW5lU2VxdWVuY2UiKSx4dChkKT9DdChlLGMsImxpbmVTdWZmaXgiKShkKTpjKGQpKX1mdW5jdGlvbiBjKGQpe3JldHVybiBkPT09bnVsbHx8ZXQoZCk/KGUuZXhpdCgic2V0ZXh0SGVhZGluZ0xpbmUiKSx0KGQpKTpyKGQpfX12YXIgS2VlLGx3dD1sKCgpPT57SmEoKTt1cigpO0tlZT17bmFtZToic2V0ZXh0VW5kZXJsaW5lIixyZXNvbHZlVG86U3JhLHRva2VuaXplOnpyYX19KTt2YXIgSmVlPWwoKCk9PntIeXQoKTtxeXQoKTtxZWUoKTtqeXQoKTtWeXQoKTtVeXQoKTtHeXQoKTtZeXQoKTtaeXQoKTtYeXQoKTtReXQoKTtLeXQoKTtKeXQoKTtyd3QoKTthd3QoKTtRZWUoKTtpd3QoKTtvd3QoKTtud3QoKTtzd3QoKTtsd3QoKTtTNWUoKX0pO2Z1bmN0aW9uIHo1ZSgpe3JldHVybntkb2N1bWVudDp7OTE6e25hbWU6ImdmbUZvb3Rub3RlRGVmaW5pdGlvbiIsdG9rZW5pemU6RHJhLGNvbnRpbnVhdGlvbjp7dG9rZW5pemU6QXJhfSxleGl0OkVyYX19LHRleHQ6ezkxOntuYW1lOiJnZm1Gb290bm90ZUNhbGwiLHRva2VuaXplOkxyYX0sOTM6e25hbWU6ImdmbVBvdGVudGlhbEZvb3Rub3RlQ2FsbCIsYWRkOiJhZnRlciIsdG9rZW5pemU6X3JhLHJlc29sdmVUbzpUcmF9fX19ZnVuY3Rpb24gX3JhKGUsdCxyKXtsZXQgYT10aGlzLGk9YS5ldmVudHMubGVuZ3RoLG89YS5wYXJzZXIuZ2ZtRm9vdG5vdGVzfHwoYS5wYXJzZXIuZ2ZtRm9vdG5vdGVzPVtdKSxuO2Zvcig7aS0tOyl7bGV0IGM9YS5ldmVudHNbaV1bMV07aWYoYy50eXBlPT09ImxhYmVsSW1hZ2UiKXtuPWM7YnJlYWt9aWYoYy50eXBlPT09ImdmbUZvb3Rub3RlQ2FsbCJ8fGMudHlwZT09PSJsYWJlbExpbmsifHxjLnR5cGU9PT0ibGFiZWwifHxjLnR5cGU9PT0iaW1hZ2UifHxjLnR5cGU9PT0ibGluayIpYnJlYWt9cmV0dXJuIHM7ZnVuY3Rpb24gcyhjKXtpZighbnx8IW4uX2JhbGFuY2VkKXJldHVybiByKGMpO2xldCBkPXFhKGEuc2xpY2VTZXJpYWxpemUoe3N0YXJ0Om4uZW5kLGVuZDphLm5vdygpfSkpO3JldHVybiBkLmNvZGVQb2ludEF0KDApIT09OTR8fCFvLmluY2x1ZGVzKGQuc2xpY2UoMSkpP3IoYyk6KGUuZW50ZXIoImdmbUZvb3Rub3RlQ2FsbExhYmVsTWFya2VyIiksZS5jb25zdW1lKGMpLGUuZXhpdCgiZ2ZtRm9vdG5vdGVDYWxsTGFiZWxNYXJrZXIiKSx0KGMpKX19ZnVuY3Rpb24gVHJhKGUsdCl7bGV0IHI9ZS5sZW5ndGgsYTtmb3IoO3ItLTspaWYoZVtyXVsxXS50eXBlPT09ImxhYmVsSW1hZ2UiJiZlW3JdWzBdPT09ImVudGVyIil7YT1lW3JdWzFdO2JyZWFrfWVbcisxXVsxXS50eXBlPSJkYXRhIixlW3IrM11bMV0udHlwZT0iZ2ZtRm9vdG5vdGVDYWxsTGFiZWxNYXJrZXIiO2xldCBpPXt0eXBlOiJnZm1Gb290bm90ZUNhbGwiLHN0YXJ0Ok9iamVjdC5hc3NpZ24oe30sZVtyKzNdWzFdLnN0YXJ0KSxlbmQ6T2JqZWN0LmFzc2lnbih7fSxlW2UubGVuZ3RoLTFdWzFdLmVuZCl9LG89e3R5cGU6ImdmbUZvb3Rub3RlQ2FsbE1hcmtlciIsc3RhcnQ6T2JqZWN0LmFzc2lnbih7fSxlW3IrM11bMV0uZW5kKSxlbmQ6T2JqZWN0LmFzc2lnbih7fSxlW3IrM11bMV0uZW5kKX07by5lbmQuY29sdW1uKyssby5lbmQub2Zmc2V0Kyssby5lbmQuX2J1ZmZlckluZGV4Kys7bGV0IG49e3R5cGU6ImdmbUZvb3Rub3RlQ2FsbFN0cmluZyIsc3RhcnQ6T2JqZWN0LmFzc2lnbih7fSxvLmVuZCksZW5kOk9iamVjdC5hc3NpZ24oe30sZVtlLmxlbmd0aC0xXVsxXS5zdGFydCl9LHM9e3R5cGU6ImNodW5rU3RyaW5nIixjb250ZW50VHlwZToic3RyaW5nIixzdGFydDpPYmplY3QuYXNzaWduKHt9LG4uc3RhcnQpLGVuZDpPYmplY3QuYXNzaWduKHt9LG4uZW5kKX0sYz1bZVtyKzFdLGVbcisyXSxbImVudGVyIixpLHRdLGVbciszXSxlW3IrNF0sWyJlbnRlciIsbyx0XSxbImV4aXQiLG8sdF0sWyJlbnRlciIsbix0XSxbImVudGVyIixzLHRdLFsiZXhpdCIscyx0XSxbImV4aXQiLG4sdF0sZVtlLmxlbmd0aC0yXSxlW2UubGVuZ3RoLTFdLFsiZXhpdCIsaSx0XV07cmV0dXJuIGUuc3BsaWNlKHIsZS5sZW5ndGgtcisxLC4uLmMpLGV9ZnVuY3Rpb24gTHJhKGUsdCxyKXtsZXQgYT10aGlzLGk9YS5wYXJzZXIuZ2ZtRm9vdG5vdGVzfHwoYS5wYXJzZXIuZ2ZtRm9vdG5vdGVzPVtdKSxvPTAsbjtyZXR1cm4gcztmdW5jdGlvbiBzKHUpe3JldHVybiBlLmVudGVyKCJnZm1Gb290bm90ZUNhbGwiKSxlLmVudGVyKCJnZm1Gb290bm90ZUNhbGxMYWJlbE1hcmtlciIpLGUuY29uc3VtZSh1KSxlLmV4aXQoImdmbUZvb3Rub3RlQ2FsbExhYmVsTWFya2VyIiksY31mdW5jdGlvbiBjKHUpe3JldHVybiB1IT09OTQ/cih1KTooZS5lbnRlcigiZ2ZtRm9vdG5vdGVDYWxsTWFya2VyIiksZS5jb25zdW1lKHUpLGUuZXhpdCgiZ2ZtRm9vdG5vdGVDYWxsTWFya2VyIiksZS5lbnRlcigiZ2ZtRm9vdG5vdGVDYWxsU3RyaW5nIiksZS5lbnRlcigiY2h1bmtTdHJpbmciKS5jb250ZW50VHlwZT0ic3RyaW5nIixkKX1mdW5jdGlvbiBkKHUpe2lmKG8+OTk5fHx1PT09OTMmJiFufHx1PT09bnVsbHx8dT09PTkxfHxvcih1KSlyZXR1cm4gcih1KTtpZih1PT09OTMpe2UuZXhpdCgiY2h1bmtTdHJpbmciKTtsZXQgcD1lLmV4aXQoImdmbUZvb3Rub3RlQ2FsbFN0cmluZyIpO3JldHVybiBpLmluY2x1ZGVzKHFhKGEuc2xpY2VTZXJpYWxpemUocCkpKT8oZS5lbnRlcigiZ2ZtRm9vdG5vdGVDYWxsTGFiZWxNYXJrZXIiKSxlLmNvbnN1bWUodSksZS5leGl0KCJnZm1Gb290bm90ZUNhbGxMYWJlbE1hcmtlciIpLGUuZXhpdCgiZ2ZtRm9vdG5vdGVDYWxsIiksdCk6cih1KX1yZXR1cm4gb3IodSl8fChuPSEwKSxvKyssZS5jb25zdW1lKHUpLHU9PT05Mj9mOmR9ZnVuY3Rpb24gZih1KXtyZXR1cm4gdT09PTkxfHx1PT09OTJ8fHU9PT05Mz8oZS5jb25zdW1lKHUpLG8rKyxkKTpkKHUpfX1mdW5jdGlvbiBEcmEoZSx0LHIpe2xldCBhPXRoaXMsaT1hLnBhcnNlci5nZm1Gb290bm90ZXN8fChhLnBhcnNlci5nZm1Gb290bm90ZXM9W10pLG8sbj0wLHM7cmV0dXJuIGM7ZnVuY3Rpb24gYyhiKXtyZXR1cm4gZS5lbnRlcigiZ2ZtRm9vdG5vdGVEZWZpbml0aW9uIikuX2NvbnRhaW5lcj0hMCxlLmVudGVyKCJnZm1Gb290bm90ZURlZmluaXRpb25MYWJlbCIpLGUuZW50ZXIoImdmbUZvb3Rub3RlRGVmaW5pdGlvbkxhYmVsTWFya2VyIiksZS5jb25zdW1lKGIpLGUuZXhpdCgiZ2ZtRm9vdG5vdGVEZWZpbml0aW9uTGFiZWxNYXJrZXIiKSxkfWZ1bmN0aW9uIGQoYil7cmV0dXJuIGI9PT05ND8oZS5lbnRlcigiZ2ZtRm9vdG5vdGVEZWZpbml0aW9uTWFya2VyIiksZS5jb25zdW1lKGIpLGUuZXhpdCgiZ2ZtRm9vdG5vdGVEZWZpbml0aW9uTWFya2VyIiksZS5lbnRlcigiZ2ZtRm9vdG5vdGVEZWZpbml0aW9uTGFiZWxTdHJpbmciKSxlLmVudGVyKCJjaHVua1N0cmluZyIpLmNvbnRlbnRUeXBlPSJzdHJpbmciLGYpOnIoYil9ZnVuY3Rpb24gZihiKXtpZihuPjk5OXx8Yj09PTkzJiYhc3x8Yj09PW51bGx8fGI9PT05MXx8b3IoYikpcmV0dXJuIHIoYik7aWYoYj09PTkzKXtlLmV4aXQoImNodW5rU3RyaW5nIik7bGV0IHg9ZS5leGl0KCJnZm1Gb290bm90ZURlZmluaXRpb25MYWJlbFN0cmluZyIpO3JldHVybiBvPXFhKGEuc2xpY2VTZXJpYWxpemUoeCkpLGUuZW50ZXIoImdmbUZvb3Rub3RlRGVmaW5pdGlvbkxhYmVsTWFya2VyIiksZS5jb25zdW1lKGIpLGUuZXhpdCgiZ2ZtRm9vdG5vdGVEZWZpbml0aW9uTGFiZWxNYXJrZXIiKSxlLmV4aXQoImdmbUZvb3Rub3RlRGVmaW5pdGlvbkxhYmVsIikscH1yZXR1cm4gb3IoYil8fChzPSEwKSxuKyssZS5jb25zdW1lKGIpLGI9PT05Mj91OmZ9ZnVuY3Rpb24gdShiKXtyZXR1cm4gYj09PTkxfHxiPT09OTJ8fGI9PT05Mz8oZS5jb25zdW1lKGIpLG4rKyxmKTpmKGIpfWZ1bmN0aW9uIHAoYil7cmV0dXJuIGI9PT01OD8oZS5lbnRlcigiZGVmaW5pdGlvbk1hcmtlciIpLGUuY29uc3VtZShiKSxlLmV4aXQoImRlZmluaXRpb25NYXJrZXIiKSxpLmluY2x1ZGVzKG8pfHxpLnB1c2gobyksQ3QoZSxoLCJnZm1Gb290bm90ZURlZmluaXRpb25XaGl0ZXNwYWNlIikpOnIoYil9ZnVuY3Rpb24gaChiKXtyZXR1cm4gdChiKX19ZnVuY3Rpb24gQXJhKGUsdCxyKXtyZXR1cm4gZS5jaGVjayhTMix0LGUuYXR0ZW1wdChDcmEsdCxyKSl9ZnVuY3Rpb24gRXJhKGUpe2UuZXhpdCgiZ2ZtRm9vdG5vdGVEZWZpbml0aW9uIil9ZnVuY3Rpb24gJHJhKGUsdCxyKXtsZXQgYT10aGlzO3JldHVybiBDdChlLGksImdmbUZvb3Rub3RlRGVmaW5pdGlvbkluZGVudCIsNSk7ZnVuY3Rpb24gaShvKXtsZXQgbj1hLmV2ZW50c1thLmV2ZW50cy5sZW5ndGgtMV07cmV0dXJuIG4mJm5bMV0udHlwZT09PSJnZm1Gb290bm90ZURlZmluaXRpb25JbmRlbnQiJiZuWzJdLnNsaWNlU2VyaWFsaXplKG5bMV0sITApLmxlbmd0aD09PTQ/dChvKTpyKG8pfX12YXIgQ3JhLGN3dD1sKCgpPT57SmVlKCk7SmEoKTt1cigpO2owKCk7Q3JhPXt0b2tlbml6ZTokcmEscGFydGlhbDohMH19KTtmdW5jdGlvbiBkd3QoZSx0KXtyZXR1cm4iQmFjayB0byByZWZlcmVuY2UgIisoZSsxKSsodD4xPyItIit0OiIiKX1mdW5jdGlvbiBDNWUoZSl7bGV0IHQ9ZXx8SXJhLHI9dC5sYWJlbHx8IkZvb3Rub3RlcyIsYT10LmxhYmVsVGFnTmFtZXx8ImgyIixpPXQubGFiZWxBdHRyaWJ1dGVzPT09bnVsbHx8dC5sYWJlbEF0dHJpYnV0ZXM9PT12b2lkIDA/J2NsYXNzPSJzci1vbmx5Iic6dC5sYWJlbEF0dHJpYnV0ZXMsbz10LmJhY2tMYWJlbHx8ZHd0LG49dC5jbG9iYmVyUHJlZml4PT09bnVsbHx8dC5jbG9iYmVyUHJlZml4PT09dm9pZCAwPyJ1c2VyLWNvbnRlbnQtIjp0LmNsb2JiZXJQcmVmaXg7cmV0dXJue2VudGVyOntnZm1Gb290bm90ZURlZmluaXRpb24oKXt0aGlzLmdldERhdGEoInRpZ2h0U3RhY2siKS5wdXNoKCExKX0sZ2ZtRm9vdG5vdGVEZWZpbml0aW9uTGFiZWxTdHJpbmcoKXt0aGlzLmJ1ZmZlcigpfSxnZm1Gb290bm90ZUNhbGxTdHJpbmcoKXt0aGlzLmJ1ZmZlcigpfX0sZXhpdDp7Z2ZtRm9vdG5vdGVEZWZpbml0aW9uKCl7bGV0IHM9dGhpcy5nZXREYXRhKCJnZm1Gb290bm90ZURlZmluaXRpb25zIiksYz10aGlzLmdldERhdGEoImdmbUZvb3Rub3RlRGVmaW5pdGlvblN0YWNrIiksZD10aGlzLmdldERhdGEoInRpZ2h0U3RhY2siKSxmPWMucG9wKCksdT10aGlzLnJlc3VtZSgpO3N8fHRoaXMuc2V0RGF0YSgiZ2ZtRm9vdG5vdGVEZWZpbml0aW9ucyIscz17fSksUHJhLmNhbGwocyxmKXx8KHNbZl09dSksZC5wb3AoKSx0aGlzLnNldERhdGEoInNsdXJwT25lTGluZUVuZGluZyIsITApLHRoaXMuc2V0RGF0YSgibGFzdFdhc1RhZyIpfSxnZm1Gb290bm90ZURlZmluaXRpb25MYWJlbFN0cmluZyhzKXtsZXQgYz10aGlzLmdldERhdGEoImdmbUZvb3Rub3RlRGVmaW5pdGlvblN0YWNrIik7Y3x8dGhpcy5zZXREYXRhKCJnZm1Gb290bm90ZURlZmluaXRpb25TdGFjayIsYz1bXSksYy5wdXNoKHFhKHRoaXMuc2xpY2VTZXJpYWxpemUocykpKSx0aGlzLnJlc3VtZSgpLHRoaXMuYnVmZmVyKCl9LGdmbUZvb3Rub3RlQ2FsbFN0cmluZyhzKXtsZXQgYz10aGlzLmdldERhdGEoImdmbUZvb3Rub3RlQ2FsbE9yZGVyIiksZD10aGlzLmdldERhdGEoImdmbUZvb3Rub3RlQ2FsbENvdW50cyIpLGY9cWEodGhpcy5zbGljZVNlcmlhbGl6ZShzKSksdTt0aGlzLnJlc3VtZSgpLGN8fHRoaXMuc2V0RGF0YSgiZ2ZtRm9vdG5vdGVDYWxsT3JkZXIiLGM9W10pLGR8fHRoaXMuc2V0RGF0YSgiZ2ZtRm9vdG5vdGVDYWxsQ291bnRzIixkPXt9KTtsZXQgcD1jLmluZGV4T2YoZiksaD1NMihmLnRvTG93ZXJDYXNlKCkpO3A9PT0tMT8oYy5wdXNoKGYpLGRbZl09MSx1PWMubGVuZ3RoKTooZFtmXSsrLHU9cCsxKTtsZXQgYj1kW2ZdO3RoaXMudGFnKCc8c3VwPjxhIGhyZWY9IiMnK24rImZuLSIraCsnIiBpZD0iJytuKyJmbnJlZi0iK2grKGI+MT8iLSIrYjoiIikrJyIgZGF0YS1mb290bm90ZS1yZWY9IiIgYXJpYS1kZXNjcmliZWRieT0iZm9vdG5vdGUtbGFiZWwiPicrU3RyaW5nKHUpKyI8L2E+PC9zdXA+Iil9LG51bGwoKXtsZXQgcz10aGlzLmdldERhdGEoImdmbUZvb3Rub3RlQ2FsbE9yZGVyIil8fFtdLGM9dGhpcy5nZXREYXRhKCJnZm1Gb290bm90ZUNhbGxDb3VudHMiKXx8e30sZD10aGlzLmdldERhdGEoImdmbUZvb3Rub3RlRGVmaW5pdGlvbnMiKXx8e30sZj0tMTtmb3Iocy5sZW5ndGg+MCYmKHRoaXMubGluZUVuZGluZ0lmTmVlZGVkKCksdGhpcy50YWcoJzxzZWN0aW9uIGRhdGEtZm9vdG5vdGVzPSIiIGNsYXNzPSJmb290bm90ZXMiPjwnK2ErJyBpZD0iZm9vdG5vdGUtbGFiZWwiJysoaT8iICIraToiIikrIj4iKSx0aGlzLnJhdyh0aGlzLmVuY29kZShyKSksdGhpcy50YWcoIjwvIithKyI+IiksdGhpcy5saW5lRW5kaW5nSWZOZWVkZWQoKSx0aGlzLnRhZygiPG9sPiIpKTsrK2Y8cy5sZW5ndGg7KXtsZXQgdT1zW2ZdLHA9TTIodS50b0xvd2VyQ2FzZSgpKSxoPTAsYj1bXTtmb3IoOysraDw9Y1t1XTspYi5wdXNoKCc8YSBocmVmPSIjJytuKyJmbnJlZi0iK3ArKGg+MT8iLSIraDoiIikrJyIgZGF0YS1mb290bm90ZS1iYWNrcmVmPSIiIGFyaWEtbGFiZWw9IicrdGhpcy5lbmNvZGUodHlwZW9mIG89PSJzdHJpbmciP286byhmLGgpKSsnIiBjbGFzcz0iZGF0YS1mb290bm90ZS1iYWNrcmVmIj5cdTIxQTknKyhoPjE/IjxzdXA+IitoKyI8L3N1cD4iOiIiKSsiPC9hPiIpO2xldCB4PWIuam9pbigiICIpLGc9ITE7dGhpcy5saW5lRW5kaW5nSWZOZWVkZWQoKSx0aGlzLnRhZygnPGxpIGlkPSInK24rImZuLSIrcCsnIj4nKSx0aGlzLmxpbmVFbmRpbmdJZk5lZWRlZCgpLHRoaXMudGFnKGRbdV0ucmVwbGFjZSgvPFwvcD4oPzpccj9cbnxccik/JC8sZnVuY3Rpb24odil7cmV0dXJuIGc9ITAsIiAiK3grdn0pKSxnfHwodGhpcy5saW5lRW5kaW5nSWZOZWVkZWQoKSx0aGlzLnRhZyh4KSksdGhpcy5saW5lRW5kaW5nSWZOZWVkZWQoKSx0aGlzLnRhZygiPC9saT4iKX1zLmxlbmd0aD4wJiYodGhpcy5saW5lRW5kaW5nSWZOZWVkZWQoKSx0aGlzLnRhZygiPC9vbD4iKSx0aGlzLmxpbmVFbmRpbmdJZk5lZWRlZCgpLHRoaXMudGFnKCI8L3NlY3Rpb24+IikpfX19fXZhciBQcmEsSXJhLHV3dD1sKCgpPT57ajAoKTtrMigpO1ByYT17fS5oYXNPd25Qcm9wZXJ0eSxJcmE9e319KTt2YXIgZnd0PWwoKCk9Pntjd3QoKTt1d3QoKX0pO2Z1bmN0aW9uIF81ZSgpe3JldHVybntlbnRlcjp7c3RyaWtldGhyb3VnaCgpe3RoaXMudGFnKCI8ZGVsPiIpfX0sZXhpdDp7c3RyaWtldGhyb3VnaCgpe3RoaXMudGFnKCI8L2RlbD4iKX19fX12YXIgcHd0PWwoKCk9Pnt9KTtmdW5jdGlvbiBUNWUoZSl7bGV0IHI9KGV8fHt9KS5zaW5nbGVUaWxkZSxhPXtuYW1lOiJzdHJpa2V0aHJvdWdoIix0b2tlbml6ZTpvLHJlc29sdmVBbGw6aX07cmV0dXJuIHI9PW51bGwmJihyPSEwKSx7dGV4dDp7MTI2OmF9LGluc2lkZVNwYW46e251bGw6W2FdfSxhdHRlbnRpb25NYXJrZXJzOntudWxsOlsxMjZdfX07ZnVuY3Rpb24gaShuLHMpe2xldCBjPS0xO2Zvcig7KytjPG4ubGVuZ3RoOylpZihuW2NdWzBdPT09ImVudGVyIiYmbltjXVsxXS50eXBlPT09InN0cmlrZXRocm91Z2hTZXF1ZW5jZVRlbXBvcmFyeSImJm5bY11bMV0uX2Nsb3NlKXtsZXQgZD1jO2Zvcig7ZC0tOylpZihuW2RdWzBdPT09ImV4aXQiJiZuW2RdWzFdLnR5cGU9PT0ic3RyaWtldGhyb3VnaFNlcXVlbmNlVGVtcG9yYXJ5IiYmbltkXVsxXS5fb3BlbiYmbltjXVsxXS5lbmQub2Zmc2V0LW5bY11bMV0uc3RhcnQub2Zmc2V0PT09bltkXVsxXS5lbmQub2Zmc2V0LW5bZF1bMV0uc3RhcnQub2Zmc2V0KXtuW2NdWzFdLnR5cGU9InN0cmlrZXRocm91Z2hTZXF1ZW5jZSIsbltkXVsxXS50eXBlPSJzdHJpa2V0aHJvdWdoU2VxdWVuY2UiO2xldCBmPXt0eXBlOiJzdHJpa2V0aHJvdWdoIixzdGFydDpPYmplY3QuYXNzaWduKHt9LG5bZF1bMV0uc3RhcnQpLGVuZDpPYmplY3QuYXNzaWduKHt9LG5bY11bMV0uZW5kKX0sdT17dHlwZToic3RyaWtldGhyb3VnaFRleHQiLHN0YXJ0Ok9iamVjdC5hc3NpZ24oe30sbltkXVsxXS5lbmQpLGVuZDpPYmplY3QuYXNzaWduKHt9LG5bY11bMV0uc3RhcnQpfSxwPVtbImVudGVyIixmLHNdLFsiZW50ZXIiLG5bZF1bMV0sc10sWyJleGl0IixuW2RdWzFdLHNdLFsiZW50ZXIiLHUsc11dLGg9cy5wYXJzZXIuY29uc3RydWN0cy5pbnNpZGVTcGFuLm51bGw7aCYmS2EocCxwLmxlbmd0aCwwLFUwKGgsbi5zbGljZShkKzEsYykscykpLEthKHAscC5sZW5ndGgsMCxbWyJleGl0Iix1LHNdLFsiZW50ZXIiLG5bY11bMV0sc10sWyJleGl0IixuW2NdWzFdLHNdLFsiZXhpdCIsZixzXV0pLEthKG4sZC0xLGMtZCszLHApLGM9ZCtwLmxlbmd0aC0yO2JyZWFrfX1mb3IoYz0tMTsrK2M8bi5sZW5ndGg7KW5bY11bMV0udHlwZT09PSJzdHJpa2V0aHJvdWdoU2VxdWVuY2VUZW1wb3JhcnkiJiYobltjXVsxXS50eXBlPSJkYXRhIik7cmV0dXJuIG59ZnVuY3Rpb24gbyhuLHMsYyl7bGV0IGQ9dGhpcy5wcmV2aW91cyxmPXRoaXMuZXZlbnRzLHU9MDtyZXR1cm4gcDtmdW5jdGlvbiBwKGIpe3JldHVybiBkPT09MTI2JiZmW2YubGVuZ3RoLTFdWzFdLnR5cGUhPT0iY2hhcmFjdGVyRXNjYXBlIj9jKGIpOihuLmVudGVyKCJzdHJpa2V0aHJvdWdoU2VxdWVuY2VUZW1wb3JhcnkiKSxoKGIpKX1mdW5jdGlvbiBoKGIpe2xldCB4PXFsKGQpO2lmKGI9PT0xMjYpcmV0dXJuIHU+MT9jKGIpOihuLmNvbnN1bWUoYiksdSsrLGgpO2lmKHU8MiYmIXIpcmV0dXJuIGMoYik7bGV0IGc9bi5leGl0KCJzdHJpa2V0aHJvdWdoU2VxdWVuY2VUZW1wb3JhcnkiKSx2PXFsKGIpO3JldHVybiBnLl9vcGVuPSF2fHx2PT09MiYmISF4LGcuX2Nsb3NlPSF4fHx4PT09MiYmISF2LHMoYil9fX12YXIgaHd0PWwoKCk9Pnt5MigpO0RlZSgpO3NiKCl9KTt2YXIgbXd0PWwoKCk9Pntwd3QoKTtod3QoKX0pO2Z1bmN0aW9uIEQ1ZSgpe3JldHVybntlbnRlcjp7dGFibGUoZSl7bGV0IHQ9ZS5fYWxpZ247dGhpcy5saW5lRW5kaW5nSWZOZWVkZWQoKSx0aGlzLnRhZygiPHRhYmxlPiIpLHRoaXMuc2V0RGF0YSgidGFibGVBbGlnbiIsdCl9LHRhYmxlQm9keSgpe3RoaXMudGFnKCI8dGJvZHk+Iil9LHRhYmxlRGF0YSgpe2xldCBlPXRoaXMuZ2V0RGF0YSgidGFibGVBbGlnbiIpLHQ9dGhpcy5nZXREYXRhKCJ0YWJsZUNvbHVtbiIpLHI9TDVlW2VbdF1dO3I9PT12b2lkIDA/dGhpcy5idWZmZXIoKToodGhpcy5saW5lRW5kaW5nSWZOZWVkZWQoKSx0aGlzLnRhZygiPHRkIityKyI+IikpfSx0YWJsZUhlYWQoKXt0aGlzLmxpbmVFbmRpbmdJZk5lZWRlZCgpLHRoaXMudGFnKCI8dGhlYWQ+Iil9LHRhYmxlSGVhZGVyKCl7bGV0IGU9dGhpcy5nZXREYXRhKCJ0YWJsZUFsaWduIiksdD10aGlzLmdldERhdGEoInRhYmxlQ29sdW1uIikscj1MNWVbZVt0XV07dGhpcy5saW5lRW5kaW5nSWZOZWVkZWQoKSx0aGlzLnRhZygiPHRoIityKyI+Iil9LHRhYmxlUm93KCl7dGhpcy5zZXREYXRhKCJ0YWJsZUNvbHVtbiIsMCksdGhpcy5saW5lRW5kaW5nSWZOZWVkZWQoKSx0aGlzLnRhZygiPHRyPiIpfX0sZXhpdDp7Y29kZVRleHREYXRhKGUpe2xldCB0PXRoaXMuc2xpY2VTZXJpYWxpemUoZSk7dGhpcy5nZXREYXRhKCJ0YWJsZUFsaWduIikmJih0PXQucmVwbGFjZSgvXFwoW1xcfF0pL2csTnJhKSksdGhpcy5yYXcodGhpcy5lbmNvZGUodCkpfSx0YWJsZSgpe3RoaXMuc2V0RGF0YSgidGFibGVBbGlnbiIpLHRoaXMuc2V0RGF0YSgic2x1cnBBbGxMaW5lRW5kaW5ncyIpLHRoaXMubGluZUVuZGluZ0lmTmVlZGVkKCksdGhpcy50YWcoIjwvdGFibGU+Iil9LHRhYmxlQm9keSgpe3RoaXMubGluZUVuZGluZ0lmTmVlZGVkKCksdGhpcy50YWcoIjwvdGJvZHk+Iil9LHRhYmxlRGF0YSgpe2xldCBlPXRoaXMuZ2V0RGF0YSgidGFibGVBbGlnbiIpLHQ9dGhpcy5nZXREYXRhKCJ0YWJsZUNvbHVtbiIpO3QgaW4gZT8odGhpcy50YWcoIjwvdGQ+IiksdGhpcy5zZXREYXRhKCJ0YWJsZUNvbHVtbiIsdCsxKSk6dGhpcy5yZXN1bWUoKX0sdGFibGVIZWFkKCl7dGhpcy5saW5lRW5kaW5nSWZOZWVkZWQoKSx0aGlzLnRhZygiPC90aGVhZD4iKX0sdGFibGVIZWFkZXIoKXtsZXQgZT10aGlzLmdldERhdGEoInRhYmxlQ29sdW1uIik7dGhpcy50YWcoIjwvdGg+IiksdGhpcy5zZXREYXRhKCJ0YWJsZUNvbHVtbiIsZSsxKX0sdGFibGVSb3coKXtsZXQgZT10aGlzLmdldERhdGEoInRhYmxlQWxpZ24iKSx0PXRoaXMuZ2V0RGF0YSgidGFibGVDb2x1bW4iKTtmb3IoO3Q8ZS5sZW5ndGg7KXRoaXMubGluZUVuZGluZ0lmTmVlZGVkKCksdGhpcy50YWcoIjx0ZCIrTDVlW2VbdF1dKyI+PC90ZD4iKSx0Kys7dGhpcy5zZXREYXRhKCJ0YWJsZUNvbHVtbiIsdCksdGhpcy5saW5lRW5kaW5nSWZOZWVkZWQoKSx0aGlzLnRhZygiPC90cj4iKX19fX1mdW5jdGlvbiBOcmEoZSx0KXtyZXR1cm4gdD09PSJ8Ij90OmV9dmFyIEw1ZSxnd3Q9bCgoKT0+e0w1ZT17bm9uZToiIixsZWZ0OicgYWxpZ249ImxlZnQiJyxyaWdodDonIGFsaWduPSJyaWdodCInLGNlbnRlcjonIGFsaWduPSJjZW50ZXIiJ319KTtmdW5jdGlvbiBGcmEoZSx0LHIsYSl7bGV0IGk9MDtpZighKHI9PT0wJiZhLmxlbmd0aD09PTApKXtmb3IoO2k8ZS5tYXAubGVuZ3RoOyl7aWYoZS5tYXBbaV1bMF09PT10KXtlLm1hcFtpXVsxXSs9cixlLm1hcFtpXVsyXS5wdXNoKC4uLmEpO3JldHVybn1pKz0xfWUubWFwLnB1c2goW3QscixhXSl9fXZhciBldGUseHd0PWwoKCk9PntldGU9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLm1hcD1bXX1hZGQodCxyLGEpe0ZyYSh0aGlzLHQscixhKX1jb25zdW1lKHQpe2lmKHRoaXMubWFwLnNvcnQoZnVuY3Rpb24obyxuKXtyZXR1cm4gb1swXS1uWzBdfSksdGhpcy5tYXAubGVuZ3RoPT09MClyZXR1cm47bGV0IHI9dGhpcy5tYXAubGVuZ3RoLGE9W107Zm9yKDtyPjA7KXItPTEsYS5wdXNoKHQuc2xpY2UodGhpcy5tYXBbcl1bMF0rdGhpcy5tYXBbcl1bMV0pLHRoaXMubWFwW3JdWzJdKSx0Lmxlbmd0aD10aGlzLm1hcFtyXVswXTthLnB1c2godC5zbGljZSgpKSx0Lmxlbmd0aD0wO2xldCBpPWEucG9wKCk7Zm9yKDtpOyl7Zm9yKGxldCBvIG9mIGkpdC5wdXNoKG8pO2k9YS5wb3AoKX10aGlzLm1hcC5sZW5ndGg9MH19fSk7ZnVuY3Rpb24gYnd0KGUsdCl7bGV0IHI9ITEsYT1bXTtmb3IoO3Q8ZS5sZW5ndGg7KXtsZXQgaT1lW3RdO2lmKHIpe2lmKGlbMF09PT0iZW50ZXIiKWlbMV0udHlwZT09PSJ0YWJsZUNvbnRlbnQiJiZhLnB1c2goZVt0KzFdWzFdLnR5cGU9PT0idGFibGVEZWxpbWl0ZXJNYXJrZXIiPyJsZWZ0Ijoibm9uZSIpO2Vsc2UgaWYoaVsxXS50eXBlPT09InRhYmxlQ29udGVudCIpe2lmKGVbdC0xXVsxXS50eXBlPT09InRhYmxlRGVsaW1pdGVyTWFya2VyIil7bGV0IG89YS5sZW5ndGgtMTthW29dPWFbb109PT0ibGVmdCI/ImNlbnRlciI6InJpZ2h0In19ZWxzZSBpZihpWzFdLnR5cGU9PT0idGFibGVEZWxpbWl0ZXJSb3ciKWJyZWFrfWVsc2UgaVswXT09PSJlbnRlciImJmlbMV0udHlwZT09PSJ0YWJsZURlbGltaXRlclJvdyImJihyPSEwKTt0Kz0xfXJldHVybiBhfXZhciB2d3Q9bCgoKT0+e30pO2Z1bmN0aW9uIEE1ZSgpe3JldHVybntmbG93OntudWxsOntuYW1lOiJ0YWJsZSIsdG9rZW5pemU6T3JhLHJlc29sdmVBbGw6UnJhfX19fWZ1bmN0aW9uIE9yYShlLHQscil7bGV0IGE9dGhpcyxpPTAsbz0wLG47cmV0dXJuIHM7ZnVuY3Rpb24gcyhCKXtsZXQgej1hLmV2ZW50cy5sZW5ndGgtMTtmb3IoO3o+LTE7KXtsZXQgXz1hLmV2ZW50c1t6XVsxXS50eXBlO2lmKF89PT0ibGluZUVuZGluZyJ8fF89PT0ibGluZVByZWZpeCIpei0tO2Vsc2UgYnJlYWt9bGV0IHk9ej4tMT9hLmV2ZW50c1t6XVsxXS50eXBlOm51bGwsRT15PT09InRhYmxlSGVhZCJ8fHk9PT0idGFibGVSb3ciP2s6YztyZXR1cm4gRT09PWsmJmEucGFyc2VyLmxhenlbYS5ub3coKS5saW5lXT9yKEIpOkUoQil9ZnVuY3Rpb24gYyhCKXtyZXR1cm4gZS5lbnRlcigidGFibGVIZWFkIiksZS5lbnRlcigidGFibGVSb3ciKSxkKEIpfWZ1bmN0aW9uIGQoQil7cmV0dXJuIEI9PT0xMjR8fChuPSEwLG8rPTEpLGYoQil9ZnVuY3Rpb24gZihCKXtyZXR1cm4gQj09PW51bGw/cihCKTpldChCKT9vPjE/KG89MCxhLmludGVycnVwdD0hMCxlLmV4aXQoInRhYmxlUm93IiksZS5lbnRlcigibGluZUVuZGluZyIpLGUuY29uc3VtZShCKSxlLmV4aXQoImxpbmVFbmRpbmciKSxoKTpyKEIpOnh0KEIpP0N0KGUsZiwid2hpdGVzcGFjZSIpKEIpOihvKz0xLG4mJihuPSExLGkrPTEpLEI9PT0xMjQ/KGUuZW50ZXIoInRhYmxlQ2VsbERpdmlkZXIiKSxlLmNvbnN1bWUoQiksZS5leGl0KCJ0YWJsZUNlbGxEaXZpZGVyIiksbj0hMCxmKTooZS5lbnRlcigiZGF0YSIpLHUoQikpKX1mdW5jdGlvbiB1KEIpe3JldHVybiBCPT09bnVsbHx8Qj09PTEyNHx8b3IoQik/KGUuZXhpdCgiZGF0YSIpLGYoQikpOihlLmNvbnN1bWUoQiksQj09PTkyP3A6dSl9ZnVuY3Rpb24gcChCKXtyZXR1cm4gQj09PTkyfHxCPT09MTI0PyhlLmNvbnN1bWUoQiksdSk6dShCKX1mdW5jdGlvbiBoKEIpe3JldHVybiBhLmludGVycnVwdD0hMSxhLnBhcnNlci5sYXp5W2Eubm93KCkubGluZV0/cihCKTooZS5lbnRlcigidGFibGVEZWxpbWl0ZXJSb3ciKSxuPSExLHh0KEIpP0N0KGUsYiwibGluZVByZWZpeCIsYS5wYXJzZXIuY29uc3RydWN0cy5kaXNhYmxlLm51bGwuaW5jbHVkZXMoImNvZGVJbmRlbnRlZCIpP3ZvaWQgMDo0KShCKTpiKEIpKX1mdW5jdGlvbiBiKEIpe3JldHVybiBCPT09NDV8fEI9PT01OD9nKEIpOkI9PT0xMjQ/KG49ITAsZS5lbnRlcigidGFibGVDZWxsRGl2aWRlciIpLGUuY29uc3VtZShCKSxlLmV4aXQoInRhYmxlQ2VsbERpdmlkZXIiKSx4KTpDKEIpfWZ1bmN0aW9uIHgoQil7cmV0dXJuIHh0KEIpP0N0KGUsZywid2hpdGVzcGFjZSIpKEIpOmcoQil9ZnVuY3Rpb24gZyhCKXtyZXR1cm4gQj09PTU4PyhvKz0xLG49ITAsZS5lbnRlcigidGFibGVEZWxpbWl0ZXJNYXJrZXIiKSxlLmNvbnN1bWUoQiksZS5leGl0KCJ0YWJsZURlbGltaXRlck1hcmtlciIpLHYpOkI9PT00NT8obys9MSx2KEIpKTpCPT09bnVsbHx8ZXQoQik/RihCKTpDKEIpfWZ1bmN0aW9uIHYoQil7cmV0dXJuIEI9PT00NT8oZS5lbnRlcigidGFibGVEZWxpbWl0ZXJGaWxsZXIiKSx3KEIpKTpDKEIpfWZ1bmN0aW9uIHcoQil7cmV0dXJuIEI9PT00NT8oZS5jb25zdW1lKEIpLHcpOkI9PT01OD8obj0hMCxlLmV4aXQoInRhYmxlRGVsaW1pdGVyRmlsbGVyIiksZS5lbnRlcigidGFibGVEZWxpbWl0ZXJNYXJrZXIiKSxlLmNvbnN1bWUoQiksZS5leGl0KCJ0YWJsZURlbGltaXRlck1hcmtlciIpLE0pOihlLmV4aXQoInRhYmxlRGVsaW1pdGVyRmlsbGVyIiksTShCKSl9ZnVuY3Rpb24gTShCKXtyZXR1cm4geHQoQik/Q3QoZSxGLCJ3aGl0ZXNwYWNlIikoQik6RihCKX1mdW5jdGlvbiBGKEIpe3JldHVybiBCPT09MTI0P2IoQik6Qj09PW51bGx8fGV0KEIpPyFufHxpIT09bz9DKEIpOihlLmV4aXQoInRhYmxlRGVsaW1pdGVyUm93IiksZS5leGl0KCJ0YWJsZUhlYWQiKSx0KEIpKTpDKEIpfWZ1bmN0aW9uIEMoQil7cmV0dXJuIHIoQil9ZnVuY3Rpb24gayhCKXtyZXR1cm4gZS5lbnRlcigidGFibGVSb3ciKSxOKEIpfWZ1bmN0aW9uIE4oQil7cmV0dXJuIEI9PT0xMjQ/KGUuZW50ZXIoInRhYmxlQ2VsbERpdmlkZXIiKSxlLmNvbnN1bWUoQiksZS5leGl0KCJ0YWJsZUNlbGxEaXZpZGVyIiksTik6Qj09PW51bGx8fGV0KEIpPyhlLmV4aXQoInRhYmxlUm93IiksdChCKSk6eHQoQik/Q3QoZSxOLCJ3aGl0ZXNwYWNlIikoQik6KGUuZW50ZXIoImRhdGEiKSwkKEIpKX1mdW5jdGlvbiAkKEIpe3JldHVybiBCPT09bnVsbHx8Qj09PTEyNHx8b3IoQik/KGUuZXhpdCgiZGF0YSIpLE4oQikpOihlLmNvbnN1bWUoQiksQj09PTkyP0k6JCl9ZnVuY3Rpb24gSShCKXtyZXR1cm4gQj09PTkyfHxCPT09MTI0PyhlLmNvbnN1bWUoQiksJCk6JChCKX19ZnVuY3Rpb24gUnJhKGUsdCl7bGV0IHI9LTEsYT0hMCxpPTAsbz1bMCwwLDAsMF0sbj1bMCwwLDAsMF0scz0hMSxjPTAsZCxmLHUscD1uZXcgZXRlO2Zvcig7KytyPGUubGVuZ3RoOyl7bGV0IGg9ZVtyXSxiPWhbMV07aFswXT09PSJlbnRlciI/Yi50eXBlPT09InRhYmxlSGVhZCI/KHM9ITEsYyE9PTAmJih5d3QocCx0LGMsZCxmKSxmPXZvaWQgMCxjPTApLGQ9e3R5cGU6InRhYmxlIixzdGFydDpPYmplY3QuYXNzaWduKHt9LGIuc3RhcnQpLGVuZDpPYmplY3QuYXNzaWduKHt9LGIuZW5kKX0scC5hZGQociwwLFtbImVudGVyIixkLHRdXSkpOmIudHlwZT09PSJ0YWJsZVJvdyJ8fGIudHlwZT09PSJ0YWJsZURlbGltaXRlclJvdyI/KGE9ITAsdT12b2lkIDAsbz1bMCwwLDAsMF0sbj1bMCxyKzEsMCwwXSxzJiYocz0hMSxmPXt0eXBlOiJ0YWJsZUJvZHkiLHN0YXJ0Ok9iamVjdC5hc3NpZ24oe30sYi5zdGFydCksZW5kOk9iamVjdC5hc3NpZ24oe30sYi5lbmQpfSxwLmFkZChyLDAsW1siZW50ZXIiLGYsdF1dKSksaT1iLnR5cGU9PT0idGFibGVEZWxpbWl0ZXJSb3ciPzI6Zj8zOjEpOmkmJihiLnR5cGU9PT0iZGF0YSJ8fGIudHlwZT09PSJ0YWJsZURlbGltaXRlck1hcmtlciJ8fGIudHlwZT09PSJ0YWJsZURlbGltaXRlckZpbGxlciIpPyhhPSExLG5bMl09PT0wJiYob1sxXSE9PTAmJihuWzBdPW5bMV0sdT10dGUocCx0LG8saSx2b2lkIDAsdSksbz1bMCwwLDAsMF0pLG5bMl09cikpOmIudHlwZT09PSJ0YWJsZUNlbGxEaXZpZGVyIiYmKGE/YT0hMToob1sxXSE9PTAmJihuWzBdPW5bMV0sdT10dGUocCx0LG8saSx2b2lkIDAsdSkpLG89bixuPVtvWzFdLHIsMCwwXSkpOmIudHlwZT09PSJ0YWJsZUhlYWQiPyhzPSEwLGM9cik6Yi50eXBlPT09InRhYmxlUm93Inx8Yi50eXBlPT09InRhYmxlRGVsaW1pdGVyUm93Ij8oYz1yLG9bMV0hPT0wPyhuWzBdPW5bMV0sdT10dGUocCx0LG8saSxyLHUpKTpuWzFdIT09MCYmKHU9dHRlKHAsdCxuLGkscix1KSksaT0wKTppJiYoYi50eXBlPT09ImRhdGEifHxiLnR5cGU9PT0idGFibGVEZWxpbWl0ZXJNYXJrZXIifHxiLnR5cGU9PT0idGFibGVEZWxpbWl0ZXJGaWxsZXIiKSYmKG5bM109cil9Zm9yKGMhPT0wJiZ5d3QocCx0LGMsZCxmKSxwLmNvbnN1bWUodC5ldmVudHMpLHI9LTE7KytyPHQuZXZlbnRzLmxlbmd0aDspe2xldCBoPXQuZXZlbnRzW3JdO2hbMF09PT0iZW50ZXIiJiZoWzFdLnR5cGU9PT0idGFibGUiJiYoaFsxXS5fYWxpZ249Ynd0KHQuZXZlbnRzLHIpKX1yZXR1cm4gZX1mdW5jdGlvbiB0dGUoZSx0LHIsYSxpLG8pe2xldCBuPWE9PT0xPyJ0YWJsZUhlYWRlciI6YT09PTI/InRhYmxlRGVsaW1pdGVyIjoidGFibGVEYXRhIixzPSJ0YWJsZUNvbnRlbnQiO3JbMF0hPT0wJiYoby5lbmQ9T2JqZWN0LmFzc2lnbih7fSx3bSh0LmV2ZW50cyxyWzBdKSksZS5hZGQoclswXSwwLFtbImV4aXQiLG8sdF1dKSk7bGV0IGM9d20odC5ldmVudHMsclsxXSk7aWYobz17dHlwZTpuLHN0YXJ0Ok9iamVjdC5hc3NpZ24oe30sYyksZW5kOk9iamVjdC5hc3NpZ24oe30sYyl9LGUuYWRkKHJbMV0sMCxbWyJlbnRlciIsbyx0XV0pLHJbMl0hPT0wKXtsZXQgZD13bSh0LmV2ZW50cyxyWzJdKSxmPXdtKHQuZXZlbnRzLHJbM10pLHU9e3R5cGU6cyxzdGFydDpPYmplY3QuYXNzaWduKHt9LGQpLGVuZDpPYmplY3QuYXNzaWduKHt9LGYpfTtpZihlLmFkZChyWzJdLDAsW1siZW50ZXIiLHUsdF1dKSxhIT09Mil7bGV0IHA9dC5ldmVudHNbclsyXV0saD10LmV2ZW50c1tyWzNdXTtpZihwWzFdLmVuZD1PYmplY3QuYXNzaWduKHt9LGhbMV0uZW5kKSxwWzFdLnR5cGU9ImNodW5rVGV4dCIscFsxXS5jb250ZW50VHlwZT0idGV4dCIsclszXT5yWzJdKzEpe2xldCBiPXJbMl0rMSx4PXJbM10tclsyXS0xO2UuYWRkKGIseCxbXSl9fWUuYWRkKHJbM10rMSwwLFtbImV4aXQiLHUsdF1dKX1yZXR1cm4gaSE9PXZvaWQgMCYmKG8uZW5kPU9iamVjdC5hc3NpZ24oe30sd20odC5ldmVudHMsaSkpLGUuYWRkKGksMCxbWyJleGl0IixvLHRdXSksbz12b2lkIDApLG99ZnVuY3Rpb24geXd0KGUsdCxyLGEsaSl7bGV0IG89W10sbj13bSh0LmV2ZW50cyxyKTtpJiYoaS5lbmQ9T2JqZWN0LmFzc2lnbih7fSxuKSxvLnB1c2goWyJleGl0IixpLHRdKSksYS5lbmQ9T2JqZWN0LmFzc2lnbih7fSxuKSxvLnB1c2goWyJleGl0IixhLHRdKSxlLmFkZChyKzEsMCxvKX1mdW5jdGlvbiB3bShlLHQpe2xldCByPWVbdF0sYT1yWzBdPT09ImVudGVyIj8ic3RhcnQiOiJlbmQiO3JldHVybiByWzFdW2FdfXZhciB3d3Q9bCgoKT0+e0phKCk7dXIoKTt4d3QoKTt2d3QoKX0pO3ZhciBNd3Q9bCgoKT0+e2d3dCgpO3d3dCgpfSk7ZnVuY3Rpb24gRTVlKCl7cmV0dXJue2V4aXQ6e2h0bWxGbG93RGF0YShlKXtTd3QuY2FsbCh0aGlzLGUsa3d0KX0saHRtbFRleHREYXRhKGUpe1N3dC5jYWxsKHRoaXMsZSxCcmEpfX19fWZ1bmN0aW9uIFN3dChlLHQpe2xldCByPXRoaXMuc2xpY2VTZXJpYWxpemUoZSk7dGhpcy5vcHRpb25zLmFsbG93RGFuZ2Vyb3VzSHRtbCYmKHI9ci5yZXBsYWNlKHQsIiZsdDskMSQyIikpLHRoaXMucmF3KHRoaXMuZW5jb2RlKHIpKX12YXIga3d0LEJyYSx6d3Q9bCgoKT0+e2t3dD0vPChcLz8pKGlmcmFtZXxub2VtYmVkfG5vZnJhbWVzfHBsYWludGV4dHxzY3JpcHR8c3R5bGV8dGl0bGV8dGV4dGFyZWF8eG1wKSg/PVtcdFxuXGZcciAvPl0pL2dpLEJyYT1uZXcgUmVnRXhwKCJeIitrd3Quc291cmNlLCJpIil9KTt2YXIgQ3d0PWwoKCk9Pnt6d3QoKX0pO2Z1bmN0aW9uICQ1ZSgpe3JldHVybntlbnRlcjp7dGFza0xpc3RDaGVjaygpe3RoaXMudGFnKCc8aW5wdXQgdHlwZT0iY2hlY2tib3giIGRpc2FibGVkPSIiICcpfX0sZXhpdDp7dGFza0xpc3RDaGVjaygpe3RoaXMudGFnKCIvPiIpfSx0YXNrTGlzdENoZWNrVmFsdWVDaGVja2VkKCl7dGhpcy50YWcoJ2NoZWNrZWQ9IiIgJyl9fX19dmFyIF93dD1sKCgpPT57fSk7ZnVuY3Rpb24gUDVlKCl7cmV0dXJue3RleHQ6ezkxOkhyYX19fWZ1bmN0aW9uIHFyYShlLHQscil7bGV0IGE9dGhpcztyZXR1cm4gaTtmdW5jdGlvbiBpKGMpe3JldHVybiBhLnByZXZpb3VzIT09bnVsbHx8IWEuX2dmbVRhc2tsaXN0Rmlyc3RDb250ZW50T2ZMaXN0SXRlbT9yKGMpOihlLmVudGVyKCJ0YXNrTGlzdENoZWNrIiksZS5lbnRlcigidGFza0xpc3RDaGVja01hcmtlciIpLGUuY29uc3VtZShjKSxlLmV4aXQoInRhc2tMaXN0Q2hlY2tNYXJrZXIiKSxvKX1mdW5jdGlvbiBvKGMpe3JldHVybiBvcihjKT8oZS5lbnRlcigidGFza0xpc3RDaGVja1ZhbHVlVW5jaGVja2VkIiksZS5jb25zdW1lKGMpLGUuZXhpdCgidGFza0xpc3RDaGVja1ZhbHVlVW5jaGVja2VkIiksbik6Yz09PTg4fHxjPT09MTIwPyhlLmVudGVyKCJ0YXNrTGlzdENoZWNrVmFsdWVDaGVja2VkIiksZS5jb25zdW1lKGMpLGUuZXhpdCgidGFza0xpc3RDaGVja1ZhbHVlQ2hlY2tlZCIpLG4pOnIoYyl9ZnVuY3Rpb24gbihjKXtyZXR1cm4gYz09PTkzPyhlLmVudGVyKCJ0YXNrTGlzdENoZWNrTWFya2VyIiksZS5jb25zdW1lKGMpLGUuZXhpdCgidGFza0xpc3RDaGVja01hcmtlciIpLGUuZXhpdCgidGFza0xpc3RDaGVjayIpLHMpOnIoYyl9ZnVuY3Rpb24gcyhjKXtyZXR1cm4gZXQoYyk/dChjKTp4dChjKT9lLmNoZWNrKHt0b2tlbml6ZTpqcmF9LHQscikoYyk6cihjKX19ZnVuY3Rpb24ganJhKGUsdCxyKXtyZXR1cm4gQ3QoZSxhLCJ3aGl0ZXNwYWNlIik7ZnVuY3Rpb24gYShpKXtyZXR1cm4gaT09PW51bGw/cihpKTp0KGkpfX12YXIgSHJhLFR3dD1sKCgpPT57SmEoKTt1cigpO0hyYT17bmFtZToidGFza2xpc3RDaGVjayIsdG9rZW5pemU6cXJhfX0pO3ZhciBMd3Q9bCgoKT0+e193dCgpO1R3dCgpfSk7ZnVuY3Rpb24gRHd0KGUpe3JldHVybiBPZWUoW2E1ZSgpLHo1ZSgpLFQ1ZShlKSxBNWUoKSxQNWUoKV0pfWZ1bmN0aW9uIEc1aShlKXtyZXR1cm4gUmVlKFtuNWUoKSxDNWUoZSksXzVlKCksRDVlKCksRTVlKCksJDVlKCldKX12YXIgQXd0PWwoKCk9PntCZWUoKTtSeXQoKTtmd3QoKTttd3QoKTtNd3QoKTtDd3QoKTtMd3QoKX0pO2Z1bmN0aW9uIE1tKGUpe2xldCB0PXRoaXMscj1lfHxWcmEsYT10LmRhdGEoKSxpPWEubWljcm9tYXJrRXh0ZW5zaW9uc3x8KGEubWljcm9tYXJrRXh0ZW5zaW9ucz1bXSksbz1hLmZyb21NYXJrZG93bkV4dGVuc2lvbnN8fChhLmZyb21NYXJrZG93bkV4dGVuc2lvbnM9W10pLG49YS50b01hcmtkb3duRXh0ZW5zaW9uc3x8KGEudG9NYXJrZG93bkV4dGVuc2lvbnM9W10pO2kucHVzaChEd3QocikpLG8ucHVzaChLZmUoKSksbi5wdXNoKEpmZShyKSl9dmFyIFZyYSxFd3Q9bCgoKT0+e1R5dCgpO0F3dCgpO1ZyYT17fX0pO3ZhciAkd3Q9bCgoKT0+e0V3dCgpfSk7ZnVuY3Rpb24gSTVlKGUpe2xldCB0PWV8fHt9LHI9ITAsYT17fSxpPVtbXV0sbz1bXSxuPVtdLGM9UmVlKFt7ZW50ZXI6e2Jsb2NrUXVvdGU6UCxjb2RlRmVuY2VkOmFlLGNvZGVGZW5jZWRGZW5jZUluZm86Zyxjb2RlRmVuY2VkRmVuY2VNZXRhOmcsY29kZUluZGVudGVkOmZlLGNvZGVUZXh0OnNlLGNvbnRlbnQ6QWUsZGVmaW5pdGlvbjokZSxkZWZpbml0aW9uRGVzdGluYXRpb25TdHJpbmc6cSxkZWZpbml0aW9uTGFiZWxTdHJpbmc6ZyxkZWZpbml0aW9uVGl0bGVTdHJpbmc6ZyxlbXBoYXNpczpMdCxodG1sRmxvdzpLZSxodG1sVGV4dDpudCxpbWFnZTpRLGxhYmVsOmcsbGluazprZSxsaXN0SXRlbU1hcmtlcjp6LGxpc3RJdGVtVmFsdWU6QixsaXN0T3JkZXJlZDokLGxpc3RVbm9yZGVyZWQ6SSxwYXJhZ3JhcGg6SCxyZWZlcmVuY2U6ZyxyZXNvdXJjZTpSLHJlc291cmNlRGVzdGluYXRpb25TdHJpbmc6TyxyZXNvdXJjZVRpdGxlU3RyaW5nOmcsc2V0ZXh0SGVhZGluZzpuZSxzdHJvbmc6T3R9LGV4aXQ6e2F0eEhlYWRpbmc6T2UsYXR4SGVhZGluZ1NlcXVlbmNlOnhlLGF1dG9saW5rRW1haWw6aTEsYXV0b2xpbmtQcm90b2NvbDphMSxibG9ja1F1b3RlOlYsY2hhcmFjdGVyRXNjYXBlVmFsdWU6WixjaGFyYWN0ZXJSZWZlcmVuY2VNYXJrZXJIZXhhZGVjaW1hbDp5cixjaGFyYWN0ZXJSZWZlcmVuY2VNYXJrZXJOdW1lcmljOnlyLGNoYXJhY3RlclJlZmVyZW5jZVZhbHVlOmxpLGNvZGVGZW5jZWQ6TCxjb2RlRmVuY2VkRmVuY2U6Sixjb2RlRmVuY2VkRmVuY2VJbmZvOlQsY29kZUZlbmNlZEZlbmNlTWV0YTpOLGNvZGVGbG93VmFsdWU6YmUsY29kZUluZGVudGVkOkwsY29kZVRleHQ6ZGUsY29kZVRleHREYXRhOlosZGF0YTpaLGRlZmluaXRpb246Z2UsZGVmaW5pdGlvbkRlc3RpbmF0aW9uU3RyaW5nOmllLGRlZmluaXRpb25MYWJlbFN0cmluZzpVLGRlZmluaXRpb25UaXRsZVN0cmluZzp3ZSxlbXBoYXNpczpFZSxoYXJkQnJlYWtFc2NhcGU6TmUsaGFyZEJyZWFrVHJhaWxpbmc6TmUsaHRtbEZsb3c6eXQsaHRtbEZsb3dEYXRhOlosaHRtbFRleHQ6eXQsaHRtbFRleHREYXRhOlosaW1hZ2U6eWUsbGFiZWw6QSxsYWJlbFRleHQ6RyxsaW5lRW5kaW5nOmVlLGxpbms6eWUsbGlzdE9yZGVyZWQ6eSxsaXN0VW5vcmRlcmVkOkUscGFyYWdyYXBoOlcscmVmZXJlbmNlOk4scmVmZXJlbmNlU3RyaW5nOkQscmVzb3VyY2U6TixyZXNvdXJjZURlc3RpbmF0aW9uU3RyaW5nOlkscmVzb3VyY2VUaXRsZVN0cmluZzp1ZSxzZXRleHRIZWFkaW5nOnRlLHNldGV4dEhlYWRpbmdMaW5lU2VxdWVuY2U6SmUsc2V0ZXh0SGVhZGluZ1RleHQ6TGUsc3Ryb25nOmd0LHRoZW1hdGljQnJlYWs6a3R9fSwuLi50Lmh0bWxFeHRlbnNpb25zfHxbXV0pLGQ9e2RlZmluaXRpb25zOmEsdGlnaHRTdGFjazpufSxmPXtidWZmZXI6ZyxlbmNvZGU6ayxnZXREYXRhOngsbGluZUVuZGluZ0lmTmVlZGVkOkMsb3B0aW9uczp0LHJhdzpNLHJlc3VtZTp2LHNldERhdGE6Yix0YWc6d30sdT10LmRlZmF1bHRMaW5lRW5kaW5nO3JldHVybiBwO2Z1bmN0aW9uIHAoX2Upe2xldCBGZT0tMSxOdD0wLG1yPVtdLENyPVtdLE9yPVtdO2Zvcig7KytGZTxfZS5sZW5ndGg7KSF1JiYoX2VbRmVdWzFdLnR5cGU9PT0ibGluZUVuZGluZyJ8fF9lW0ZlXVsxXS50eXBlPT09ImxpbmVFbmRpbmdCbGFuayIpJiYodT1fZVtGZV1bMl0uc2xpY2VTZXJpYWxpemUoX2VbRmVdWzFdKSksKF9lW0ZlXVsxXS50eXBlPT09Imxpc3RPcmRlcmVkInx8X2VbRmVdWzFdLnR5cGU9PT0ibGlzdFVub3JkZXJlZCIpJiYoX2VbRmVdWzBdPT09ImVudGVyIj9tci5wdXNoKEZlKTpoKF9lLnNsaWNlKG1yLnBvcCgpLEZlKSkpLF9lW0ZlXVsxXS50eXBlPT09ImRlZmluaXRpb24iJiYoX2VbRmVdWzBdPT09ImVudGVyIj8oT3I9dWkoT3IsX2Uuc2xpY2UoTnQsRmUpKSxOdD1GZSk6KENyPXVpKENyLF9lLnNsaWNlKE50LEZlKzEpKSxOdD1GZSsxKSk7Q3I9dWkoQ3IsT3IpLENyPXVpKENyLF9lLnNsaWNlKE50KSksRmU9LTE7bGV0IF9yPUNyO2ZvcihjLmVudGVyLm51bGwmJmMuZW50ZXIubnVsbC5jYWxsKGYpOysrRmU8X2UubGVuZ3RoOyl7bGV0IG8xPWNbX3JbRmVdWzBdXSxuMT1fcltGZV1bMV0udHlwZSxDZT1vMVtuMV07UHd0LmNhbGwobzEsbjEpJiZDZSYmQ2UuY2FsbCh7c2xpY2VTZXJpYWxpemU6X3JbRmVdWzJdLnNsaWNlU2VyaWFsaXplLC4uLmZ9LF9yW0ZlXVsxXSl9cmV0dXJuIGMuZXhpdC5udWxsJiZjLmV4aXQubnVsbC5jYWxsKGYpLGlbMF0uam9pbigiIil9ZnVuY3Rpb24gaChfZSl7bGV0IEZlPV9lLmxlbmd0aCxOdD0wLG1yPTAsQ3I9ITEsT3I7Zm9yKDsrK050PEZlOyl7bGV0IF9yPV9lW050XTtpZihfclsxXS5fY29udGFpbmVyKU9yPXZvaWQgMCxfclswXT09PSJlbnRlciI/bXIrKzptci0tO2Vsc2Ugc3dpdGNoKF9yWzFdLnR5cGUpe2Nhc2UibGlzdEl0ZW1QcmVmaXgiOntfclswXT09PSJleGl0IiYmKE9yPSEwKTticmVha31jYXNlImxpbmVQcmVmaXgiOmJyZWFrO2Nhc2UibGluZUVuZGluZ0JsYW5rIjp7X3JbMF09PT0iZW50ZXIiJiYhbXImJihPcj9Pcj12b2lkIDA6Q3I9ITApO2JyZWFrfWRlZmF1bHQ6T3I9dm9pZCAwfX1fZVswXVsxXS5fbG9vc2U9Q3J9ZnVuY3Rpb24gYihfZSxGZSl7ZFtfZV09RmV9ZnVuY3Rpb24geChfZSl7cmV0dXJuIGRbX2VdfWZ1bmN0aW9uIGcoKXtpLnB1c2goW10pfWZ1bmN0aW9uIHYoKXtyZXR1cm4gaS5wb3AoKS5qb2luKCIiKX1mdW5jdGlvbiB3KF9lKXtyJiYoYigibGFzdFdhc1RhZyIsITApLGlbaS5sZW5ndGgtMV0ucHVzaChfZSkpfWZ1bmN0aW9uIE0oX2Upe2IoImxhc3RXYXNUYWciKSxpW2kubGVuZ3RoLTFdLnB1c2goX2UpfWZ1bmN0aW9uIEYoKXtNKHV8fGAKYCl9ZnVuY3Rpb24gQygpe2xldCBfZT1pW2kubGVuZ3RoLTFdLEZlPV9lW19lLmxlbmd0aC0xXSxOdD1GZT9GZS5jaGFyQ29kZUF0KEZlLmxlbmd0aC0xKTpudWxsO050PT09MTB8fE50PT09MTN8fE50PT09bnVsbHx8RigpfWZ1bmN0aW9uIGsoX2Upe3JldHVybiB4KCJpZ25vcmVFbmNvZGUiKT9fZTpIZWUoX2UpfWZ1bmN0aW9uIE4oKXt2KCl9ZnVuY3Rpb24gJChfZSl7bi5wdXNoKCFfZS5fbG9vc2UpLEMoKSx3KCI8b2wiKSxiKCJleHBlY3RGaXJzdEl0ZW0iLCEwKX1mdW5jdGlvbiBJKF9lKXtuLnB1c2goIV9lLl9sb29zZSksQygpLHcoIjx1bCIpLGIoImV4cGVjdEZpcnN0SXRlbSIsITApfWZ1bmN0aW9uIEIoX2Upe2lmKHgoImV4cGVjdEZpcnN0SXRlbSIpKXtsZXQgRmU9TnVtYmVyLnBhcnNlSW50KHRoaXMuc2xpY2VTZXJpYWxpemUoX2UpLDEwKTtGZSE9PTEmJncoJyBzdGFydD0iJytrKFN0cmluZyhGZSkpKyciJyl9fWZ1bmN0aW9uIHooKXt4KCJleHBlY3RGaXJzdEl0ZW0iKT93KCI+Iik6XygpLEMoKSx3KCI8bGk+IiksYigiZXhwZWN0Rmlyc3RJdGVtIiksYigibGFzdFdhc1RhZyIpfWZ1bmN0aW9uIHkoKXtfKCksbi5wb3AoKSxGKCksdygiPC9vbD4iKX1mdW5jdGlvbiBFKCl7XygpLG4ucG9wKCksRigpLHcoIjwvdWw+Iil9ZnVuY3Rpb24gXygpe3goImxhc3RXYXNUYWciKSYmIXgoInNsdXJwQWxsTGluZUVuZGluZ3MiKSYmQygpLHcoIjwvbGk+IiksYigic2x1cnBBbGxMaW5lRW5kaW5ncyIpfWZ1bmN0aW9uIFAoKXtuLnB1c2goITEpLEMoKSx3KCI8YmxvY2txdW90ZT4iKX1mdW5jdGlvbiBWKCl7bi5wb3AoKSxDKCksdygiPC9ibG9ja3F1b3RlPiIpLGIoInNsdXJwQWxsTGluZUVuZGluZ3MiKX1mdW5jdGlvbiBIKCl7bltuLmxlbmd0aC0xXXx8KEMoKSx3KCI8cD4iKSksYigic2x1cnBBbGxMaW5lRW5kaW5ncyIpfWZ1bmN0aW9uIFcoKXtuW24ubGVuZ3RoLTFdP2IoInNsdXJwQWxsTGluZUVuZGluZ3MiLCEwKTp3KCI8L3A+Iil9ZnVuY3Rpb24gYWUoKXtDKCksdygiPHByZT48Y29kZSIpLGIoImZlbmNlc0NvdW50IiwwKX1mdW5jdGlvbiBUKCl7bGV0IF9lPXYoKTt3KCcgY2xhc3M9Imxhbmd1YWdlLScrX2UrJyInKX1mdW5jdGlvbiBKKCl7bGV0IF9lPXgoImZlbmNlc0NvdW50Iil8fDA7X2V8fCh3KCI+IiksYigic2x1cnBPbmVMaW5lRW5kaW5nIiwhMCkpLGIoImZlbmNlc0NvdW50IixfZSsxKX1mdW5jdGlvbiBmZSgpe0MoKSx3KCI8cHJlPjxjb2RlPiIpfWZ1bmN0aW9uIEwoKXtsZXQgX2U9eCgiZmVuY2VzQ291bnQiKTtfZSE9PXZvaWQgMCYmX2U8MiYmZC50aWdodFN0YWNrLmxlbmd0aD4wJiYheCgibGFzdFdhc1RhZyIpJiZGKCkseCgiZmxvd0NvZGVTZWVuRGF0YSIpJiZDKCksdygiPC9jb2RlPjwvcHJlPiIpLF9lIT09dm9pZCAwJiZfZTwyJiZDKCksYigiZmxvd0NvZGVTZWVuRGF0YSIpLGIoImZlbmNlc0NvdW50IiksYigic2x1cnBPbmVMaW5lRW5kaW5nIil9ZnVuY3Rpb24gUSgpe28ucHVzaCh7aW1hZ2U6ITB9KSxyPXZvaWQgMH1mdW5jdGlvbiBrZSgpe28ucHVzaCh7fSl9ZnVuY3Rpb24gRyhfZSl7b1tvLmxlbmd0aC0xXS5sYWJlbElkPXRoaXMuc2xpY2VTZXJpYWxpemUoX2UpfWZ1bmN0aW9uIEEoKXtvW28ubGVuZ3RoLTFdLmxhYmVsPXYoKX1mdW5jdGlvbiBEKF9lKXtvW28ubGVuZ3RoLTFdLnJlZmVyZW5jZUlkPXRoaXMuc2xpY2VTZXJpYWxpemUoX2UpfWZ1bmN0aW9uIFIoKXtnKCksb1tvLmxlbmd0aC0xXS5kZXN0aW5hdGlvbj0iIn1mdW5jdGlvbiBPKCl7ZygpLGIoImlnbm9yZUVuY29kZSIsITApfWZ1bmN0aW9uIFkoKXtvW28ubGVuZ3RoLTFdLmRlc3RpbmF0aW9uPXYoKSxiKCJpZ25vcmVFbmNvZGUiKX1mdW5jdGlvbiB1ZSgpe29bby5sZW5ndGgtMV0udGl0bGU9digpfWZ1bmN0aW9uIHllKCl7bGV0IF9lPW8ubGVuZ3RoLTEsRmU9b1tfZV0sTnQ9RmUucmVmZXJlbmNlSWR8fEZlLmxhYmVsSWQsbXI9RmUuZGVzdGluYXRpb249PT12b2lkIDA/YVtxYShOdCldOkZlO2ZvcihyPSEwO19lLS07KWlmKG9bX2VdLmltYWdlKXtyPXZvaWQgMDticmVha31GZS5pbWFnZT8odygnPGltZyBzcmM9IicrTTIobXIuZGVzdGluYXRpb24sdC5hbGxvd0Rhbmdlcm91c1Byb3RvY29sP3ZvaWQgMDpVcmEpKyciIGFsdD0iJyksTShGZS5sYWJlbCksdygnIicpKTp3KCc8YSBocmVmPSInK00yKG1yLmRlc3RpbmF0aW9uLHQuYWxsb3dEYW5nZXJvdXNQcm90b2NvbD92b2lkIDA6SXd0KSsnIicpLHcobXIudGl0bGU/JyB0aXRsZT0iJyttci50aXRsZSsnIic6IiIpLEZlLmltYWdlP3coIiAvPiIpOih3KCI+IiksTShGZS5sYWJlbCksdygiPC9hPiIpKSxvLnBvcCgpfWZ1bmN0aW9uICRlKCl7ZygpLG8ucHVzaCh7fSl9ZnVuY3Rpb24gVShfZSl7digpLG9bby5sZW5ndGgtMV0ubGFiZWxJZD10aGlzLnNsaWNlU2VyaWFsaXplKF9lKX1mdW5jdGlvbiBxKCl7ZygpLGIoImlnbm9yZUVuY29kZSIsITApfWZ1bmN0aW9uIGllKCl7b1tvLmxlbmd0aC0xXS5kZXN0aW5hdGlvbj12KCksYigiaWdub3JlRW5jb2RlIil9ZnVuY3Rpb24gd2UoKXtvW28ubGVuZ3RoLTFdLnRpdGxlPXYoKX1mdW5jdGlvbiBnZSgpe2xldCBfZT1vW28ubGVuZ3RoLTFdLEZlPXFhKF9lLmxhYmVsSWQpO3YoKSxQd3QuY2FsbChhLEZlKXx8KGFbRmVdPW9bby5sZW5ndGgtMV0pLG8ucG9wKCl9ZnVuY3Rpb24gQWUoKXtiKCJzbHVycEFsbExpbmVFbmRpbmdzIiwhMCl9ZnVuY3Rpb24geGUoX2Upe3goImhlYWRpbmdSYW5rIil8fChiKCJoZWFkaW5nUmFuayIsdGhpcy5zbGljZVNlcmlhbGl6ZShfZSkubGVuZ3RoKSxDKCksdygiPGgiK3goImhlYWRpbmdSYW5rIikrIj4iKSl9ZnVuY3Rpb24gbmUoKXtnKCksYigic2x1cnBBbGxMaW5lRW5kaW5ncyIpfWZ1bmN0aW9uIExlKCl7Yigic2x1cnBBbGxMaW5lRW5kaW5ncyIsITApfWZ1bmN0aW9uIE9lKCl7dygiPC9oIit4KCJoZWFkaW5nUmFuayIpKyI+IiksYigiaGVhZGluZ1JhbmsiKX1mdW5jdGlvbiBKZShfZSl7YigiaGVhZGluZ1JhbmsiLHRoaXMuc2xpY2VTZXJpYWxpemUoX2UpLmNoYXJDb2RlQXQoMCk9PT02MT8xOjIpfWZ1bmN0aW9uIHRlKCl7bGV0IF9lPXYoKTtDKCksdygiPGgiK3goImhlYWRpbmdSYW5rIikrIj4iKSxNKF9lKSx3KCI8L2giK3goImhlYWRpbmdSYW5rIikrIj4iKSxiKCJzbHVycEFsbExpbmVFbmRpbmdzIiksYigiaGVhZGluZ1JhbmsiKX1mdW5jdGlvbiBaKF9lKXtNKGsodGhpcy5zbGljZVNlcmlhbGl6ZShfZSkpKX1mdW5jdGlvbiBlZShfZSl7aWYoIXgoInNsdXJwQWxsTGluZUVuZGluZ3MiKSl7aWYoeCgic2x1cnBPbmVMaW5lRW5kaW5nIikpe2IoInNsdXJwT25lTGluZUVuZGluZyIpO3JldHVybn1pZih4KCJpbkNvZGVUZXh0Iikpe00oIiAiKTtyZXR1cm59TShrKHRoaXMuc2xpY2VTZXJpYWxpemUoX2UpKSl9fWZ1bmN0aW9uIGJlKF9lKXtNKGsodGhpcy5zbGljZVNlcmlhbGl6ZShfZSkpKSxiKCJmbG93Q29kZVNlZW5EYXRhIiwhMCl9ZnVuY3Rpb24gTmUoKXt3KCI8YnIgLz4iKX1mdW5jdGlvbiBLZSgpe0MoKSxudCgpfWZ1bmN0aW9uIHl0KCl7YigiaWdub3JlRW5jb2RlIil9ZnVuY3Rpb24gbnQoKXt0LmFsbG93RGFuZ2Vyb3VzSHRtbCYmYigiaWdub3JlRW5jb2RlIiwhMCl9ZnVuY3Rpb24gTHQoKXt3KCI8ZW0+Iil9ZnVuY3Rpb24gT3QoKXt3KCI8c3Ryb25nPiIpfWZ1bmN0aW9uIHNlKCl7YigiaW5Db2RlVGV4dCIsITApLHcoIjxjb2RlPiIpfWZ1bmN0aW9uIGRlKCl7YigiaW5Db2RlVGV4dCIpLHcoIjwvY29kZT4iKX1mdW5jdGlvbiBFZSgpe3coIjwvZW0+Iil9ZnVuY3Rpb24gZ3QoKXt3KCI8L3N0cm9uZz4iKX1mdW5jdGlvbiBrdCgpe0MoKSx3KCI8aHIgLz4iKX1mdW5jdGlvbiB5cihfZSl7YigiY2hhcmFjdGVyUmVmZXJlbmNlVHlwZSIsX2UudHlwZSl9ZnVuY3Rpb24gbGkoX2Upe2xldCBGZT10aGlzLnNsaWNlU2VyaWFsaXplKF9lKSxOdD14KCJjaGFyYWN0ZXJSZWZlcmVuY2VUeXBlIik/eW0oRmUseCgiY2hhcmFjdGVyUmVmZXJlbmNlVHlwZSIpPT09ImNoYXJhY3RlclJlZmVyZW5jZU1hcmtlck51bWVyaWMiPzEwOjE2KTpWMChGZSk7TShrKE50KSksYigiY2hhcmFjdGVyUmVmZXJlbmNlVHlwZSIpfWZ1bmN0aW9uIGExKF9lKXtsZXQgRmU9dGhpcy5zbGljZVNlcmlhbGl6ZShfZSk7dygnPGEgaHJlZj0iJytNMihGZSx0LmFsbG93RGFuZ2Vyb3VzUHJvdG9jb2w/dm9pZCAwOkl3dCkrJyI+JyksTShrKEZlKSksdygiPC9hPiIpfWZ1bmN0aW9uIGkxKF9lKXtsZXQgRmU9dGhpcy5zbGljZVNlcmlhbGl6ZShfZSk7dygnPGEgaHJlZj0iJytNMigibWFpbHRvOiIrRmUpKyciPicpLE0oayhGZSkpLHcoIjwvYT4iKX19dmFyIFB3dCxJd3QsVXJhLE41ZT1sKCgpPT57bmIoKTt5MigpO0JlZSgpO0llZSgpO2k1ZSgpO2owKCk7azIoKTtQd3Q9e30uaGFzT3duUHJvcGVydHksSXd0PS9eKGh0dHBzP3xpcmNzP3xtYWlsdG98eG1wcCkkL2ksVXJhPS9eaHR0cHM/JC9pfSk7ZnVuY3Rpb24gV3JhKGUpe2xldCB0PWUuYXR0ZW1wdCh0aGlzLnBhcnNlci5jb25zdHJ1Y3RzLmNvbnRlbnRJbml0aWFsLGEsaSkscjtyZXR1cm4gdDtmdW5jdGlvbiBhKHMpe2lmKHM9PT1udWxsKXtlLmNvbnN1bWUocyk7cmV0dXJufXJldHVybiBlLmVudGVyKCJsaW5lRW5kaW5nIiksZS5jb25zdW1lKHMpLGUuZXhpdCgibGluZUVuZGluZyIpLEN0KGUsdCwibGluZVByZWZpeCIpfWZ1bmN0aW9uIGkocyl7cmV0dXJuIGUuZW50ZXIoInBhcmFncmFwaCIpLG8ocyl9ZnVuY3Rpb24gbyhzKXtsZXQgYz1lLmVudGVyKCJjaHVua1RleHQiLHtjb250ZW50VHlwZToidGV4dCIscHJldmlvdXM6cn0pO3JldHVybiByJiYoci5uZXh0PWMpLHI9YyxuKHMpfWZ1bmN0aW9uIG4ocyl7aWYocz09PW51bGwpe2UuZXhpdCgiY2h1bmtUZXh0IiksZS5leGl0KCJwYXJhZ3JhcGgiKSxlLmNvbnN1bWUocyk7cmV0dXJufXJldHVybiBldChzKT8oZS5jb25zdW1lKHMpLGUuZXhpdCgiY2h1bmtUZXh0Iiksbyk6KGUuY29uc3VtZShzKSxuKX19dmFyIE53dCxGd3Q9bCgoKT0+e0phKCk7dXIoKTtOd3Q9e3Rva2VuaXplOldyYX19KTtmdW5jdGlvbiBHcmEoZSl7bGV0IHQ9dGhpcyxyPVtdLGE9MCxpLG8sbjtyZXR1cm4gcztmdW5jdGlvbiBzKE0pe2lmKGE8ci5sZW5ndGgpe2xldCBGPXJbYV07cmV0dXJuIHQuY29udGFpbmVyU3RhdGU9RlsxXSxlLmF0dGVtcHQoRlswXS5jb250aW51YXRpb24sYyxkKShNKX1yZXR1cm4gZChNKX1mdW5jdGlvbiBjKE0pe2lmKGErKyx0LmNvbnRhaW5lclN0YXRlLl9jbG9zZUZsb3cpe3QuY29udGFpbmVyU3RhdGUuX2Nsb3NlRmxvdz12b2lkIDAsaSYmdygpO2xldCBGPXQuZXZlbnRzLmxlbmd0aCxDPUYsaztmb3IoO0MtLTspaWYodC5ldmVudHNbQ11bMF09PT0iZXhpdCImJnQuZXZlbnRzW0NdWzFdLnR5cGU9PT0iY2h1bmtGbG93Iil7az10LmV2ZW50c1tDXVsxXS5lbmQ7YnJlYWt9dihhKTtsZXQgTj1GO2Zvcig7Tjx0LmV2ZW50cy5sZW5ndGg7KXQuZXZlbnRzW05dWzFdLmVuZD17Li4ua30sTisrO3JldHVybiBLYSh0LmV2ZW50cyxDKzEsMCx0LmV2ZW50cy5zbGljZShGKSksdC5ldmVudHMubGVuZ3RoPU4sZChNKX1yZXR1cm4gcyhNKX1mdW5jdGlvbiBkKE0pe2lmKGE9PT1yLmxlbmd0aCl7aWYoIWkpcmV0dXJuIHAoTSk7aWYoaS5jdXJyZW50Q29uc3RydWN0JiZpLmN1cnJlbnRDb25zdHJ1Y3QuY29uY3JldGUpcmV0dXJuIGIoTSk7dC5pbnRlcnJ1cHQ9ISEoaS5jdXJyZW50Q29uc3RydWN0JiYhaS5fZ2ZtVGFibGVEeW5hbWljSW50ZXJydXB0SGFjayl9cmV0dXJuIHQuY29udGFpbmVyU3RhdGU9e30sZS5jaGVjayhPd3QsZix1KShNKX1mdW5jdGlvbiBmKE0pe3JldHVybiBpJiZ3KCksdihhKSxwKE0pfWZ1bmN0aW9uIHUoTSl7cmV0dXJuIHQucGFyc2VyLmxhenlbdC5ub3coKS5saW5lXT1hIT09ci5sZW5ndGgsbj10Lm5vdygpLm9mZnNldCxiKE0pfWZ1bmN0aW9uIHAoTSl7cmV0dXJuIHQuY29udGFpbmVyU3RhdGU9e30sZS5hdHRlbXB0KE93dCxoLGIpKE0pfWZ1bmN0aW9uIGgoTSl7cmV0dXJuIGErKyxyLnB1c2goW3QuY3VycmVudENvbnN0cnVjdCx0LmNvbnRhaW5lclN0YXRlXSkscChNKX1mdW5jdGlvbiBiKE0pe2lmKE09PT1udWxsKXtpJiZ3KCksdigwKSxlLmNvbnN1bWUoTSk7cmV0dXJufXJldHVybiBpPWl8fHQucGFyc2VyLmZsb3codC5ub3coKSksZS5lbnRlcigiY2h1bmtGbG93Iix7X3Rva2VuaXplcjppLGNvbnRlbnRUeXBlOiJmbG93IixwcmV2aW91czpvfSkseChNKX1mdW5jdGlvbiB4KE0pe2lmKE09PT1udWxsKXtnKGUuZXhpdCgiY2h1bmtGbG93IiksITApLHYoMCksZS5jb25zdW1lKE0pO3JldHVybn1yZXR1cm4gZXQoTSk/KGUuY29uc3VtZShNKSxnKGUuZXhpdCgiY2h1bmtGbG93IikpLGE9MCx0LmludGVycnVwdD12b2lkIDAscyk6KGUuY29uc3VtZShNKSx4KX1mdW5jdGlvbiBnKE0sRil7bGV0IEM9dC5zbGljZVN0cmVhbShNKTtpZihGJiZDLnB1c2gobnVsbCksTS5wcmV2aW91cz1vLG8mJihvLm5leHQ9TSksbz1NLGkuZGVmaW5lU2tpcChNLnN0YXJ0KSxpLndyaXRlKEMpLHQucGFyc2VyLmxhenlbTS5zdGFydC5saW5lXSl7bGV0IGs9aS5ldmVudHMubGVuZ3RoO2Zvcig7ay0tOylpZihpLmV2ZW50c1trXVsxXS5zdGFydC5vZmZzZXQ8biYmKCFpLmV2ZW50c1trXVsxXS5lbmR8fGkuZXZlbnRzW2tdWzFdLmVuZC5vZmZzZXQ+bikpcmV0dXJuO2xldCBOPXQuZXZlbnRzLmxlbmd0aCwkPU4sSSxCO2Zvcig7JC0tOylpZih0LmV2ZW50c1skXVswXT09PSJleGl0IiYmdC5ldmVudHNbJF1bMV0udHlwZT09PSJjaHVua0Zsb3ciKXtpZihJKXtCPXQuZXZlbnRzWyRdWzFdLmVuZDticmVha31JPSEwfWZvcih2KGEpLGs9TjtrPHQuZXZlbnRzLmxlbmd0aDspdC5ldmVudHNba11bMV0uZW5kPXsuLi5CfSxrKys7S2EodC5ldmVudHMsJCsxLDAsdC5ldmVudHMuc2xpY2UoTikpLHQuZXZlbnRzLmxlbmd0aD1rfX1mdW5jdGlvbiB2KE0pe2xldCBGPXIubGVuZ3RoO2Zvcig7Ri0tID5NOyl7bGV0IEM9cltGXTt0LmNvbnRhaW5lclN0YXRlPUNbMV0sQ1swXS5leGl0LmNhbGwodCxlKX1yLmxlbmd0aD1NfWZ1bmN0aW9uIHcoKXtpLndyaXRlKFtudWxsXSksbz12b2lkIDAsaT12b2lkIDAsdC5jb250YWluZXJTdGF0ZS5fY2xvc2VGbG93PXZvaWQgMH19ZnVuY3Rpb24gWXJhKGUsdCxyKXtyZXR1cm4gQ3QoZSxlLmF0dGVtcHQodGhpcy5wYXJzZXIuY29uc3RydWN0cy5kb2N1bWVudCx0LHIpLCJsaW5lUHJlZml4Iix0aGlzLnBhcnNlci5jb25zdHJ1Y3RzLmRpc2FibGUubnVsbC5pbmNsdWRlcygiY29kZUluZGVudGVkIik/dm9pZCAwOjQpfXZhciBSd3QsT3d0LEJ3dD1sKCgpPT57SmEoKTt1cigpO3kyKCk7Und0PXt0b2tlbml6ZTpHcmF9LE93dD17dG9rZW5pemU6WXJhfX0pO2Z1bmN0aW9uIFpyYShlKXtsZXQgdD10aGlzLHI9ZS5hdHRlbXB0KFMyLGEsZS5hdHRlbXB0KHRoaXMucGFyc2VyLmNvbnN0cnVjdHMuZmxvd0luaXRpYWwsaSxDdChlLGUuYXR0ZW1wdCh0aGlzLnBhcnNlci5jb25zdHJ1Y3RzLmZsb3csaSxlLmF0dGVtcHQodTVlLGkpKSwibGluZVByZWZpeCIpKSk7cmV0dXJuIHI7ZnVuY3Rpb24gYShvKXtpZihvPT09bnVsbCl7ZS5jb25zdW1lKG8pO3JldHVybn1yZXR1cm4gZS5lbnRlcigibGluZUVuZGluZ0JsYW5rIiksZS5jb25zdW1lKG8pLGUuZXhpdCgibGluZUVuZGluZ0JsYW5rIiksdC5jdXJyZW50Q29uc3RydWN0PXZvaWQgMCxyfWZ1bmN0aW9uIGkobyl7aWYobz09PW51bGwpe2UuY29uc3VtZShvKTtyZXR1cm59cmV0dXJuIGUuZW50ZXIoImxpbmVFbmRpbmciKSxlLmNvbnN1bWUobyksZS5leGl0KCJsaW5lRW5kaW5nIiksdC5jdXJyZW50Q29uc3RydWN0PXZvaWQgMCxyfX12YXIgSHd0LHF3dD1sKCgpPT57SmVlKCk7SmEoKTt1cigpO0h3dD17dG9rZW5pemU6WnJhfX0pO2Z1bmN0aW9uIGp3dChlKXtyZXR1cm57cmVzb2x2ZUFsbDpWd3QoZT09PSJ0ZXh0Ij9YcmE6dm9pZCAwKSx0b2tlbml6ZTp0fTtmdW5jdGlvbiB0KHIpe2xldCBhPXRoaXMsaT10aGlzLnBhcnNlci5jb25zdHJ1Y3RzW2VdLG89ci5hdHRlbXB0KGksbixzKTtyZXR1cm4gbjtmdW5jdGlvbiBuKGYpe3JldHVybiBkKGYpP28oZik6cyhmKX1mdW5jdGlvbiBzKGYpe2lmKGY9PT1udWxsKXtyLmNvbnN1bWUoZik7cmV0dXJufXJldHVybiByLmVudGVyKCJkYXRhIiksci5jb25zdW1lKGYpLGN9ZnVuY3Rpb24gYyhmKXtyZXR1cm4gZChmKT8oci5leGl0KCJkYXRhIiksbyhmKSk6KHIuY29uc3VtZShmKSxjKX1mdW5jdGlvbiBkKGYpe2lmKGY9PT1udWxsKXJldHVybiEwO2xldCB1PWlbZl0scD0tMTtpZih1KWZvcig7KytwPHUubGVuZ3RoOyl7bGV0IGg9dVtwXTtpZighaC5wcmV2aW91c3x8aC5wcmV2aW91cy5jYWxsKGEsYS5wcmV2aW91cykpcmV0dXJuITB9cmV0dXJuITF9fX1mdW5jdGlvbiBWd3QoZSl7cmV0dXJuIHQ7ZnVuY3Rpb24gdChyLGEpe2xldCBpPS0xLG87Zm9yKDsrK2k8PXIubGVuZ3RoOylvPT09dm9pZCAwP3JbaV0mJnJbaV1bMV0udHlwZT09PSJkYXRhIiYmKG89aSxpKyspOighcltpXXx8cltpXVsxXS50eXBlIT09ImRhdGEiKSYmKGkhPT1vKzImJihyW29dWzFdLmVuZD1yW2ktMV1bMV0uZW5kLHIuc3BsaWNlKG8rMixpLW8tMiksaT1vKzIpLG89dm9pZCAwKTtyZXR1cm4gZT9lKHIsYSk6cn19ZnVuY3Rpb24gWHJhKGUsdCl7bGV0IHI9MDtmb3IoOysrcjw9ZS5sZW5ndGg7KWlmKChyPT09ZS5sZW5ndGh8fGVbcl1bMV0udHlwZT09PSJsaW5lRW5kaW5nIikmJmVbci0xXVsxXS50eXBlPT09ImRhdGEiKXtsZXQgYT1lW3ItMV1bMV0saT10LnNsaWNlU3RyZWFtKGEpLG89aS5sZW5ndGgsbj0tMSxzPTAsYztmb3IoO28tLTspe2xldCBkPWlbb107aWYodHlwZW9mIGQ9PSJzdHJpbmciKXtmb3Iobj1kLmxlbmd0aDtkLmNoYXJDb2RlQXQobi0xKT09PTMyOylzKyssbi0tO2lmKG4pYnJlYWs7bj0tMX1lbHNlIGlmKGQ9PT0tMiljPSEwLHMrKztlbHNlIGlmKGQhPT0tMSl7bysrO2JyZWFrfX1pZih0Ll9jb250ZW50VHlwZVRleHRUcmFpbGluZyYmcj09PWUubGVuZ3RoJiYocz0wKSxzKXtsZXQgZD17dHlwZTpyPT09ZS5sZW5ndGh8fGN8fHM8Mj8ibGluZVN1ZmZpeCI6ImhhcmRCcmVha1RyYWlsaW5nIixzdGFydDp7X2J1ZmZlckluZGV4Om8/bjphLnN0YXJ0Ll9idWZmZXJJbmRleCtuLF9pbmRleDphLnN0YXJ0Ll9pbmRleCtvLGxpbmU6YS5lbmQubGluZSxjb2x1bW46YS5lbmQuY29sdW1uLXMsb2Zmc2V0OmEuZW5kLm9mZnNldC1zfSxlbmQ6ey4uLmEuZW5kfX07YS5lbmQ9ey4uLmQuc3RhcnR9LGEuc3RhcnQub2Zmc2V0PT09YS5lbmQub2Zmc2V0P09iamVjdC5hc3NpZ24oYSxkKTooZS5zcGxpY2UociwwLFsiZW50ZXIiLGQsdF0sWyJleGl0IixkLHRdKSxyKz0yKX1yKyt9cmV0dXJuIGV9dmFyIFV3dCxXd3QsR3d0LEY1ZT1sKCgpPT57VXd0PXtyZXNvbHZlQWxsOlZ3dCgpfSxXd3Q9and0KCJzdHJpbmciKSxHd3Q9and0KCJ0ZXh0Iil9KTt2YXIgTzVlPXt9O3FlKE81ZSx7YXR0ZW50aW9uTWFya2VyczooKT0+aWFhLGNvbnRlbnRJbml0aWFsOigpPT5LcmEsZGlzYWJsZTooKT0+b2FhLGRvY3VtZW50OigpPT5RcmEsZmxvdzooKT0+ZWFhLGZsb3dJbml0aWFsOigpPT5KcmEsaW5zaWRlU3BhbjooKT0+YWFhLHN0cmluZzooKT0+dGFhLHRleHQ6KCk9PnJhYX0pO3ZhciBRcmEsS3JhLEpyYSxlYWEsdGFhLHJhYSxhYWEsaWFhLG9hYSxZd3Q9bCgoKT0+e0plZSgpO0Y1ZSgpO1FyYT17NDI6JDEsNDM6JDEsNDU6JDEsNDg6JDEsNDk6JDEsNTA6JDEsNTE6JDEsNTI6JDEsNTM6JDEsNTQ6JDEsNTU6JDEsNTY6JDEsNTc6JDEsNjI6amVlfSxLcmE9ezkxOmc1ZX0sSnJhPXtbLTJdOmNiLFstMV06Y2IsMzI6Y2J9LGVhYT17MzU6YjVlLDQyOkRkLDQ1OltLZWUsRGRdLDYwOnk1ZSw2MTpLZWUsOTU6RGQsOTY6V2VlLDEyNjpXZWV9LHRhYT17Mzg6VWVlLDkyOlZlZX0scmFhPXtbLTVdOmZiLFstNF06ZmIsWy0zXTpmYiwzMzpNNWUsMzg6VWVlLDQyOmxiLDYwOltzNWUsdzVlXSw5MTprNWUsOTI6W3g1ZSxWZWVdLDkzOkxkLDk1OmxiLDk2Omw1ZX0sYWFhPXtudWxsOltsYixVd3RdfSxpYWE9e251bGw6WzQyLDk1XX0sb2FhPXtudWxsOltdfX0pO2Z1bmN0aW9uIFp3dChlLHQscil7bGV0IGE9e19idWZmZXJJbmRleDotMSxfaW5kZXg6MCxsaW5lOnImJnIubGluZXx8MSxjb2x1bW46ciYmci5jb2x1bW58fDEsb2Zmc2V0OnImJnIub2Zmc2V0fHwwfSxpPXt9LG89W10sbj1bXSxzPVtdLGM9ITAsZD17YXR0ZW1wdDpJKE4pLGNoZWNrOkkoJCksY29uc3VtZTpGLGVudGVyOkMsZXhpdDprLGludGVycnVwdDpJKCQse2ludGVycnVwdDohMH0pfSxmPXtjb2RlOm51bGwsY29udGFpbmVyU3RhdGU6e30sZGVmaW5lU2tpcDp2LGV2ZW50czpbXSxub3c6ZyxwYXJzZXI6ZSxwcmV2aW91czpudWxsLHNsaWNlU2VyaWFsaXplOmIsc2xpY2VTdHJlYW06eCx3cml0ZTpofSx1PXQudG9rZW5pemUuY2FsbChmLGQpLHA7cmV0dXJuIHQucmVzb2x2ZUFsbCYmby5wdXNoKHQpLGY7ZnVuY3Rpb24gaChFKXtyZXR1cm4gbj11aShuLEUpLHcoKSxuW24ubGVuZ3RoLTFdIT09bnVsbD9bXTooQih0LDApLGYuZXZlbnRzPVUwKG8sZi5ldmVudHMsZiksZi5ldmVudHMpfWZ1bmN0aW9uIGIoRSxfKXtyZXR1cm4gc2FhKHgoRSksXyl9ZnVuY3Rpb24geChFKXtyZXR1cm4gbmFhKG4sRSl9ZnVuY3Rpb24gZygpe2xldHtfYnVmZmVySW5kZXg6RSxfaW5kZXg6XyxsaW5lOlAsY29sdW1uOlYsb2Zmc2V0Okh9PWE7cmV0dXJue19idWZmZXJJbmRleDpFLF9pbmRleDpfLGxpbmU6UCxjb2x1bW46VixvZmZzZXQ6SH19ZnVuY3Rpb24gdihFKXtpW0UubGluZV09RS5jb2x1bW4seSgpfWZ1bmN0aW9uIHcoKXtsZXQgRTtmb3IoO2EuX2luZGV4PG4ubGVuZ3RoOyl7bGV0IF89blthLl9pbmRleF07aWYodHlwZW9mIF89PSJzdHJpbmciKWZvcihFPWEuX2luZGV4LGEuX2J1ZmZlckluZGV4PDAmJihhLl9idWZmZXJJbmRleD0wKTthLl9pbmRleD09PUUmJmEuX2J1ZmZlckluZGV4PF8ubGVuZ3RoOylNKF8uY2hhckNvZGVBdChhLl9idWZmZXJJbmRleCkpO2Vsc2UgTShfKX19ZnVuY3Rpb24gTShFKXtjPXZvaWQgMCxwPUUsdT11KEUpfWZ1bmN0aW9uIEYoRSl7ZXQoRSk/KGEubGluZSsrLGEuY29sdW1uPTEsYS5vZmZzZXQrPUU9PT0tMz8yOjEseSgpKTpFIT09LTEmJihhLmNvbHVtbisrLGEub2Zmc2V0KyspLGEuX2J1ZmZlckluZGV4PDA/YS5faW5kZXgrKzooYS5fYnVmZmVySW5kZXgrKyxhLl9idWZmZXJJbmRleD09PW5bYS5faW5kZXhdLmxlbmd0aCYmKGEuX2J1ZmZlckluZGV4PS0xLGEuX2luZGV4KyspKSxmLnByZXZpb3VzPUUsYz0hMH1mdW5jdGlvbiBDKEUsXyl7bGV0IFA9X3x8e307cmV0dXJuIFAudHlwZT1FLFAuc3RhcnQ9ZygpLGYuZXZlbnRzLnB1c2goWyJlbnRlciIsUCxmXSkscy5wdXNoKFApLFB9ZnVuY3Rpb24gayhFKXtsZXQgXz1zLnBvcCgpO3JldHVybiBfLmVuZD1nKCksZi5ldmVudHMucHVzaChbImV4aXQiLF8sZl0pLF99ZnVuY3Rpb24gTihFLF8pe0IoRSxfLmZyb20pfWZ1bmN0aW9uICQoRSxfKXtfLnJlc3RvcmUoKX1mdW5jdGlvbiBJKEUsXyl7cmV0dXJuIFA7ZnVuY3Rpb24gUChWLEgsVyl7bGV0IGFlLFQsSixmZTtyZXR1cm4gQXJyYXkuaXNBcnJheShWKT9RKFYpOiJ0b2tlbml6ZSJpbiBWP1EoW1ZdKTpMKFYpO2Z1bmN0aW9uIEwoRCl7cmV0dXJuIFI7ZnVuY3Rpb24gUihPKXtsZXQgWT1PIT09bnVsbCYmRFtPXSx1ZT1PIT09bnVsbCYmRC5udWxsLHllPVsuLi5BcnJheS5pc0FycmF5KFkpP1k6WT9bWV06W10sLi4uQXJyYXkuaXNBcnJheSh1ZSk/dWU6dWU/W3VlXTpbXV07cmV0dXJuIFEoeWUpKE8pfX1mdW5jdGlvbiBRKEQpe3JldHVybiBhZT1ELFQ9MCxELmxlbmd0aD09PTA/VzprZShEW1RdKX1mdW5jdGlvbiBrZShEKXtyZXR1cm4gUjtmdW5jdGlvbiBSKE8pe3JldHVybiBmZT16KCksSj1ELEQucGFydGlhbHx8KGYuY3VycmVudENvbnN0cnVjdD1EKSxELm5hbWUmJmYucGFyc2VyLmNvbnN0cnVjdHMuZGlzYWJsZS5udWxsLmluY2x1ZGVzKEQubmFtZSk/QShPKTpELnRva2VuaXplLmNhbGwoXz9PYmplY3QuYXNzaWduKE9iamVjdC5jcmVhdGUoZiksXyk6ZixkLEcsQSkoTyl9fWZ1bmN0aW9uIEcoRCl7cmV0dXJuIGM9ITAsRShKLGZlKSxIfWZ1bmN0aW9uIEEoRCl7cmV0dXJuIGM9ITAsZmUucmVzdG9yZSgpLCsrVDxhZS5sZW5ndGg/a2UoYWVbVF0pOld9fX1mdW5jdGlvbiBCKEUsXyl7RS5yZXNvbHZlQWxsJiYhby5pbmNsdWRlcyhFKSYmby5wdXNoKEUpLEUucmVzb2x2ZSYmS2EoZi5ldmVudHMsXyxmLmV2ZW50cy5sZW5ndGgtXyxFLnJlc29sdmUoZi5ldmVudHMuc2xpY2UoXyksZikpLEUucmVzb2x2ZVRvJiYoZi5ldmVudHM9RS5yZXNvbHZlVG8oZi5ldmVudHMsZikpfWZ1bmN0aW9uIHooKXtsZXQgRT1nKCksXz1mLnByZXZpb3VzLFA9Zi5jdXJyZW50Q29uc3RydWN0LFY9Zi5ldmVudHMubGVuZ3RoLEg9QXJyYXkuZnJvbShzKTtyZXR1cm57ZnJvbTpWLHJlc3RvcmU6V307ZnVuY3Rpb24gVygpe2E9RSxmLnByZXZpb3VzPV8sZi5jdXJyZW50Q29uc3RydWN0PVAsZi5ldmVudHMubGVuZ3RoPVYscz1ILHkoKX19ZnVuY3Rpb24geSgpe2EubGluZSBpbiBpJiZhLmNvbHVtbjwyJiYoYS5jb2x1bW49aVthLmxpbmVdLGEub2Zmc2V0Kz1pW2EubGluZV0tMSl9fWZ1bmN0aW9uIG5hYShlLHQpe2xldCByPXQuc3RhcnQuX2luZGV4LGE9dC5zdGFydC5fYnVmZmVySW5kZXgsaT10LmVuZC5faW5kZXgsbz10LmVuZC5fYnVmZmVySW5kZXgsbjtpZihyPT09aSluPVtlW3JdLnNsaWNlKGEsbyldO2Vsc2V7aWYobj1lLnNsaWNlKHIsaSksYT4tMSl7bGV0IHM9blswXTt0eXBlb2Ygcz09InN0cmluZyI/blswXT1zLnNsaWNlKGEpOm4uc2hpZnQoKX1vPjAmJm4ucHVzaChlW2ldLnNsaWNlKDAsbykpfXJldHVybiBufWZ1bmN0aW9uIHNhYShlLHQpe2xldCByPS0xLGE9W10saTtmb3IoOysrcjxlLmxlbmd0aDspe2xldCBvPWVbcl0sbjtpZih0eXBlb2Ygbz09InN0cmluZyIpbj1vO2Vsc2Ugc3dpdGNoKG8pe2Nhc2UtNTp7bj0iXHIiO2JyZWFrfWNhc2UtNDp7bj1gCmA7YnJlYWt9Y2FzZS0zOntuPWBccgpgO2JyZWFrfWNhc2UtMjp7bj10PyIgIjoiCSI7YnJlYWt9Y2FzZS0xOntpZighdCYmaSljb250aW51ZTtuPSIgIjticmVha31kZWZhdWx0Om49U3RyaW5nLmZyb21DaGFyQ29kZShvKX1pPW89PT0tMixhLnB1c2gobil9cmV0dXJuIGEuam9pbigiIil9dmFyIFh3dD1sKCgpPT57dXIoKTt5MigpO3NiKCl9KTtmdW5jdGlvbiBwYihlKXtsZXQgYT17Y29uc3RydWN0czpPZWUoW081ZSwuLi4oZXx8e30pLmV4dGVuc2lvbnN8fFtdXSksY29udGVudDppKE53dCksZGVmaW5lZDpbXSxkb2N1bWVudDppKFJ3dCksZmxvdzppKEh3dCksbGF6eTp7fSxzdHJpbmc6aShXd3QpLHRleHQ6aShHd3QpfTtyZXR1cm4gYTtmdW5jdGlvbiBpKG8pe3JldHVybiBuO2Z1bmN0aW9uIG4ocyl7cmV0dXJuIFp3dChhLG8scyl9fX12YXIgUjVlPWwoKCk9PntCZWUoKTtGd3QoKTtCd3QoKTtxd3QoKTtGNWUoKTtZd3QoKTtYd3QoKX0pO2Z1bmN0aW9uIGhiKGUpe2Zvcig7IUdlZShlKTspO3JldHVybiBlfXZhciBCNWU9bCgoKT0+e2Q1ZSgpfSk7ZnVuY3Rpb24gbWIoKXtsZXQgZT0xLHQ9IiIscj0hMCxhO3JldHVybiBpO2Z1bmN0aW9uIGkobyxuLHMpe2xldCBjPVtdLGQsZix1LHAsaDtmb3Iobz10Kyh0eXBlb2Ygbz09InN0cmluZyI/by50b1N0cmluZygpOm5ldyBUZXh0RGVjb2RlcihufHx2b2lkIDApLmRlY29kZShvKSksdT0wLHQ9IiIsciYmKG8uY2hhckNvZGVBdCgwKT09PTY1Mjc5JiZ1Kysscj12b2lkIDApO3U8by5sZW5ndGg7KXtpZihRd3QubGFzdEluZGV4PXUsZD1Rd3QuZXhlYyhvKSxwPWQmJmQuaW5kZXghPT12b2lkIDA/ZC5pbmRleDpvLmxlbmd0aCxoPW8uY2hhckNvZGVBdChwKSwhZCl7dD1vLnNsaWNlKHUpO2JyZWFrfWlmKGg9PT0xMCYmdT09PXAmJmEpYy5wdXNoKC0zKSxhPXZvaWQgMDtlbHNlIHN3aXRjaChhJiYoYy5wdXNoKC01KSxhPXZvaWQgMCksdTxwJiYoYy5wdXNoKG8uc2xpY2UodSxwKSksZSs9cC11KSxoKXtjYXNlIDA6e2MucHVzaCg2NTUzMyksZSsrO2JyZWFrfWNhc2UgOTp7Zm9yKGY9TWF0aC5jZWlsKGUvNCkqNCxjLnB1c2goLTIpO2UrKzxmOyljLnB1c2goLTEpO2JyZWFrfWNhc2UgMTA6e2MucHVzaCgtNCksZT0xO2JyZWFrfWRlZmF1bHQ6YT0hMCxlPTF9dT1wKzF9cmV0dXJuIHMmJihhJiZjLnB1c2goLTUpLHQmJmMucHVzaCh0KSxjLnB1c2gobnVsbCkpLGN9fXZhciBRd3QsSDVlPWwoKCk9PntRd3Q9L1tcMFx0XG5ccl0vZ30pO2Z1bmN0aW9uIEhwaShlLHQscil7cmV0dXJuIHR5cGVvZiB0IT0ic3RyaW5nIiYmKHI9dCx0PXZvaWQgMCksSTVlKHIpKGhiKHBiKHIpLmRvY3VtZW50KCkud3JpdGUobWIoKShlLHQsITApKSkpfXZhciBLd3Q9bCgoKT0+e041ZSgpO1I1ZSgpO0I1ZSgpO0g1ZSgpO041ZSgpO1I1ZSgpO0I1ZSgpO0g1ZSgpfSk7ZnVuY3Rpb24gcTVlKGUsdCxyKXtyZXR1cm4gdCYmdHlwZW9mIHQ9PSJvYmplY3QiJiYocj10LHQ9dm9pZCAwKSxsYWEocikoaGIocGIocikuZG9jdW1lbnQoKS53cml0ZShtYigpKGUsdCwhMCkpKSl9ZnVuY3Rpb24gbGFhKGUpe2xldCB0PXt0cmFuc2Zvcm1zOltdLGNhbkNvbnRhaW5Fb2xzOlsiZW1waGFzaXMiLCJmcmFnbWVudCIsImhlYWRpbmciLCJwYXJhZ3JhcGgiLCJzdHJvbmciXSxlbnRlcjp7YXV0b2xpbms6byhnZSksYXV0b2xpbmtQcm90b2NvbDpJLGF1dG9saW5rRW1haWw6SSxhdHhIZWFkaW5nOm8oVSksYmxvY2tRdW90ZTpvKE8pLGNoYXJhY3RlckVzY2FwZTpJLGNoYXJhY3RlclJlZmVyZW5jZTpJLGNvZGVGZW5jZWQ6byhZKSxjb2RlRmVuY2VkRmVuY2VJbmZvOm4sY29kZUZlbmNlZEZlbmNlTWV0YTpuLGNvZGVJbmRlbnRlZDpvKFksbiksY29kZVRleHQ6byh1ZSxuKSxjb2RlVGV4dERhdGE6SSxkYXRhOkksY29kZUZsb3dWYWx1ZTpJLGRlZmluaXRpb246byh5ZSksZGVmaW5pdGlvbkRlc3RpbmF0aW9uU3RyaW5nOm4sZGVmaW5pdGlvbkxhYmVsU3RyaW5nOm4sZGVmaW5pdGlvblRpdGxlU3RyaW5nOm4sZW1waGFzaXM6bygkZSksaGFyZEJyZWFrRXNjYXBlOm8ocSksaGFyZEJyZWFrVHJhaWxpbmc6byhxKSxodG1sRmxvdzpvKGllLG4pLGh0bWxGbG93RGF0YTpJLGh0bWxUZXh0Om8oaWUsbiksaHRtbFRleHREYXRhOkksaW1hZ2U6byh3ZSksbGFiZWw6bixsaW5rOm8oZ2UpLGxpc3RJdGVtOm8oeGUpLGxpc3RJdGVtVmFsdWU6cCxsaXN0T3JkZXJlZDpvKEFlLHUpLGxpc3RVbm9yZGVyZWQ6byhBZSkscGFyYWdyYXBoOm8obmUpLHJlZmVyZW5jZTpMLHJlZmVyZW5jZVN0cmluZzpuLHJlc291cmNlRGVzdGluYXRpb25TdHJpbmc6bixyZXNvdXJjZVRpdGxlU3RyaW5nOm4sc2V0ZXh0SGVhZGluZzpvKFUpLHN0cm9uZzpvKExlKSx0aGVtYXRpY0JyZWFrOm8oSmUpfSxleGl0OnthdHhIZWFkaW5nOmMoKSxhdHhIZWFkaW5nU2VxdWVuY2U6QyxhdXRvbGluazpjKCksYXV0b2xpbmtFbWFpbDpSLGF1dG9saW5rUHJvdG9jb2w6RCxibG9ja1F1b3RlOmMoKSxjaGFyYWN0ZXJFc2NhcGVWYWx1ZTpCLGNoYXJhY3RlclJlZmVyZW5jZU1hcmtlckhleGFkZWNpbWFsOmtlLGNoYXJhY3RlclJlZmVyZW5jZU1hcmtlck51bWVyaWM6a2UsY2hhcmFjdGVyUmVmZXJlbmNlVmFsdWU6RyxjaGFyYWN0ZXJSZWZlcmVuY2U6QSxjb2RlRmVuY2VkOmMoZyksY29kZUZlbmNlZEZlbmNlOngsY29kZUZlbmNlZEZlbmNlSW5mbzpoLGNvZGVGZW5jZWRGZW5jZU1ldGE6Yixjb2RlRmxvd1ZhbHVlOkIsY29kZUluZGVudGVkOmModiksY29kZVRleHQ6YyhQKSxjb2RlVGV4dERhdGE6QixkYXRhOkIsZGVmaW5pdGlvbjpjKCksZGVmaW5pdGlvbkRlc3RpbmF0aW9uU3RyaW5nOkYsZGVmaW5pdGlvbkxhYmVsU3RyaW5nOncsZGVmaW5pdGlvblRpdGxlU3RyaW5nOk0sZW1waGFzaXM6YygpLGhhcmRCcmVha0VzY2FwZTpjKHkpLGhhcmRCcmVha1RyYWlsaW5nOmMoeSksaHRtbEZsb3c6YyhFKSxodG1sRmxvd0RhdGE6QixodG1sVGV4dDpjKF8pLGh0bWxUZXh0RGF0YTpCLGltYWdlOmMoSCksbGFiZWw6YWUsbGFiZWxUZXh0OlcsbGluZUVuZGluZzp6LGxpbms6YyhWKSxsaXN0SXRlbTpjKCksbGlzdE9yZGVyZWQ6YygpLGxpc3RVbm9yZGVyZWQ6YygpLHBhcmFncmFwaDpjKCkscmVmZXJlbmNlU3RyaW5nOlEscmVzb3VyY2VEZXN0aW5hdGlvblN0cmluZzpULHJlc291cmNlVGl0bGVTdHJpbmc6SixyZXNvdXJjZTpmZSxzZXRleHRIZWFkaW5nOmMoJCksc2V0ZXh0SGVhZGluZ0xpbmVTZXF1ZW5jZTpOLHNldGV4dEhlYWRpbmdUZXh0Omssc3Ryb25nOmMoKSx0aGVtYXRpY0JyZWFrOmMoKX19O2VNdCh0LChlfHx7fSkubWRhc3RFeHRlbnNpb25zfHxbXSk7bGV0IHI9e307cmV0dXJuIGE7ZnVuY3Rpb24gYSh0ZSl7bGV0IFo9e3R5cGU6InJvb3QiLGNoaWxkcmVuOltdfSxlZT17c3RhY2s6W1pdLHRva2VuU3RhY2s6W10sY29uZmlnOnQsZW50ZXI6cyxleGl0OmQsYnVmZmVyOm4scmVzdW1lOmYsZGF0YTpyfSxiZT1bXSxOZT0tMTtmb3IoOysrTmU8dGUubGVuZ3RoOylpZih0ZVtOZV1bMV0udHlwZT09PSJsaXN0T3JkZXJlZCJ8fHRlW05lXVsxXS50eXBlPT09Imxpc3RVbm9yZGVyZWQiKWlmKHRlW05lXVswXT09PSJlbnRlciIpYmUucHVzaChOZSk7ZWxzZXtsZXQgS2U9YmUucG9wKCk7TmU9aSh0ZSxLZSxOZSl9Zm9yKE5lPS0xOysrTmU8dGUubGVuZ3RoOyl7bGV0IEtlPXRbdGVbTmVdWzBdXTtKd3QuY2FsbChLZSx0ZVtOZV1bMV0udHlwZSkmJktlW3RlW05lXVsxXS50eXBlXS5jYWxsKE9iamVjdC5hc3NpZ24oe3NsaWNlU2VyaWFsaXplOnRlW05lXVsyXS5zbGljZVNlcmlhbGl6ZX0sZWUpLHRlW05lXVsxXSl9aWYoZWUudG9rZW5TdGFjay5sZW5ndGg+MCl7bGV0IEtlPWVlLnRva2VuU3RhY2tbZWUudG9rZW5TdGFjay5sZW5ndGgtMV07KEtlWzFdfHx0TXQpLmNhbGwoZWUsdm9pZCAwLEtlWzBdKX1mb3IoWi5wb3NpdGlvbj17c3RhcnQ6VzAodGUubGVuZ3RoPjA/dGVbMF1bMV0uc3RhcnQ6e2xpbmU6MSxjb2x1bW46MSxvZmZzZXQ6MH0pLGVuZDpXMCh0ZS5sZW5ndGg+MD90ZVt0ZS5sZW5ndGgtMl1bMV0uZW5kOntsaW5lOjEsY29sdW1uOjEsb2Zmc2V0OjB9KX0sTmU9LTE7KytOZTx0LnRyYW5zZm9ybXMubGVuZ3RoOylaPXQudHJhbnNmb3Jtc1tOZV0oWil8fFo7cmV0dXJuIFp9ZnVuY3Rpb24gaSh0ZSxaLGVlKXtsZXQgYmU9Wi0xLE5lPS0xLEtlPSExLHl0LG50LEx0LE90O2Zvcig7KytiZTw9ZWU7KXtsZXQgc2U9dGVbYmVdO3N3aXRjaChzZVsxXS50eXBlKXtjYXNlImxpc3RVbm9yZGVyZWQiOmNhc2UibGlzdE9yZGVyZWQiOmNhc2UiYmxvY2tRdW90ZSI6e3NlWzBdPT09ImVudGVyIj9OZSsrOk5lLS0sT3Q9dm9pZCAwO2JyZWFrfWNhc2UibGluZUVuZGluZ0JsYW5rIjp7c2VbMF09PT0iZW50ZXIiJiYoeXQmJiFPdCYmIU5lJiYhTHQmJihMdD1iZSksT3Q9dm9pZCAwKTticmVha31jYXNlImxpbmVQcmVmaXgiOmNhc2UibGlzdEl0ZW1WYWx1ZSI6Y2FzZSJsaXN0SXRlbU1hcmtlciI6Y2FzZSJsaXN0SXRlbVByZWZpeCI6Y2FzZSJsaXN0SXRlbVByZWZpeFdoaXRlc3BhY2UiOmJyZWFrO2RlZmF1bHQ6T3Q9dm9pZCAwfWlmKCFOZSYmc2VbMF09PT0iZW50ZXIiJiZzZVsxXS50eXBlPT09Imxpc3RJdGVtUHJlZml4Inx8TmU9PT0tMSYmc2VbMF09PT0iZXhpdCImJihzZVsxXS50eXBlPT09Imxpc3RVbm9yZGVyZWQifHxzZVsxXS50eXBlPT09Imxpc3RPcmRlcmVkIikpe2lmKHl0KXtsZXQgZGU9YmU7Zm9yKG50PXZvaWQgMDtkZS0tOyl7bGV0IEVlPXRlW2RlXTtpZihFZVsxXS50eXBlPT09ImxpbmVFbmRpbmcifHxFZVsxXS50eXBlPT09ImxpbmVFbmRpbmdCbGFuayIpe2lmKEVlWzBdPT09ImV4aXQiKWNvbnRpbnVlO250JiYodGVbbnRdWzFdLnR5cGU9ImxpbmVFbmRpbmdCbGFuayIsS2U9ITApLEVlWzFdLnR5cGU9ImxpbmVFbmRpbmciLG50PWRlfWVsc2UgaWYoIShFZVsxXS50eXBlPT09ImxpbmVQcmVmaXgifHxFZVsxXS50eXBlPT09ImJsb2NrUXVvdGVQcmVmaXgifHxFZVsxXS50eXBlPT09ImJsb2NrUXVvdGVQcmVmaXhXaGl0ZXNwYWNlInx8RWVbMV0udHlwZT09PSJibG9ja1F1b3RlTWFya2VyInx8RWVbMV0udHlwZT09PSJsaXN0SXRlbUluZGVudCIpKWJyZWFrfUx0JiYoIW50fHxMdDxudCkmJih5dC5fc3ByZWFkPSEwKSx5dC5lbmQ9T2JqZWN0LmFzc2lnbih7fSxudD90ZVtudF1bMV0uc3RhcnQ6c2VbMV0uZW5kKSx0ZS5zcGxpY2UobnR8fGJlLDAsWyJleGl0Iix5dCxzZVsyXV0pLGJlKyssZWUrK31pZihzZVsxXS50eXBlPT09Imxpc3RJdGVtUHJlZml4Iil7bGV0IGRlPXt0eXBlOiJsaXN0SXRlbSIsX3NwcmVhZDohMSxzdGFydDpPYmplY3QuYXNzaWduKHt9LHNlWzFdLnN0YXJ0KSxlbmQ6dm9pZCAwfTt5dD1kZSx0ZS5zcGxpY2UoYmUsMCxbImVudGVyIixkZSxzZVsyXV0pLGJlKyssZWUrKyxMdD12b2lkIDAsT3Q9ITB9fX1yZXR1cm4gdGVbWl1bMV0uX3NwcmVhZD1LZSxlZX1mdW5jdGlvbiBvKHRlLFope3JldHVybiBlZTtmdW5jdGlvbiBlZShiZSl7cy5jYWxsKHRoaXMsdGUoYmUpLGJlKSxaJiZaLmNhbGwodGhpcyxiZSl9fWZ1bmN0aW9uIG4oKXt0aGlzLnN0YWNrLnB1c2goe3R5cGU6ImZyYWdtZW50IixjaGlsZHJlbjpbXX0pfWZ1bmN0aW9uIHModGUsWixlZSl7dGhpcy5zdGFja1t0aGlzLnN0YWNrLmxlbmd0aC0xXS5jaGlsZHJlbi5wdXNoKHRlKSx0aGlzLnN0YWNrLnB1c2godGUpLHRoaXMudG9rZW5TdGFjay5wdXNoKFtaLGVlfHx2b2lkIDBdKSx0ZS5wb3NpdGlvbj17c3RhcnQ6VzAoWi5zdGFydCksZW5kOnZvaWQgMH19ZnVuY3Rpb24gYyh0ZSl7cmV0dXJuIFo7ZnVuY3Rpb24gWihlZSl7dGUmJnRlLmNhbGwodGhpcyxlZSksZC5jYWxsKHRoaXMsZWUpfX1mdW5jdGlvbiBkKHRlLFope2xldCBlZT10aGlzLnN0YWNrLnBvcCgpLGJlPXRoaXMudG9rZW5TdGFjay5wb3AoKTtpZihiZSliZVswXS50eXBlIT09dGUudHlwZSYmKFo/Wi5jYWxsKHRoaXMsdGUsYmVbMF0pOihiZVsxXXx8dE10KS5jYWxsKHRoaXMsdGUsYmVbMF0pKTtlbHNlIHRocm93IG5ldyBFcnJvcigiQ2Fubm90IGNsb3NlIGAiK3RlLnR5cGUrImAgKCIrSDAoe3N0YXJ0OnRlLnN0YXJ0LGVuZDp0ZS5lbmR9KSsiKTogaXRcdTIwMTlzIG5vdCBvcGVuIik7ZWUucG9zaXRpb24uZW5kPVcwKHRlLmVuZCl9ZnVuY3Rpb24gZigpe3JldHVybiBTZCh0aGlzLnN0YWNrLnBvcCgpKX1mdW5jdGlvbiB1KCl7dGhpcy5kYXRhLmV4cGVjdGluZ0ZpcnN0TGlzdEl0ZW1WYWx1ZT0hMH1mdW5jdGlvbiBwKHRlKXtpZih0aGlzLmRhdGEuZXhwZWN0aW5nRmlyc3RMaXN0SXRlbVZhbHVlKXtsZXQgWj10aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoLTJdO1ouc3RhcnQ9TnVtYmVyLnBhcnNlSW50KHRoaXMuc2xpY2VTZXJpYWxpemUodGUpLDEwKSx0aGlzLmRhdGEuZXhwZWN0aW5nRmlyc3RMaXN0SXRlbVZhbHVlPXZvaWQgMH19ZnVuY3Rpb24gaCgpe2xldCB0ZT10aGlzLnJlc3VtZSgpLFo9dGhpcy5zdGFja1t0aGlzLnN0YWNrLmxlbmd0aC0xXTtaLmxhbmc9dGV9ZnVuY3Rpb24gYigpe2xldCB0ZT10aGlzLnJlc3VtZSgpLFo9dGhpcy5zdGFja1t0aGlzLnN0YWNrLmxlbmd0aC0xXTtaLm1ldGE9dGV9ZnVuY3Rpb24geCgpe3RoaXMuZGF0YS5mbG93Q29kZUluc2lkZXx8KHRoaXMuYnVmZmVyKCksdGhpcy5kYXRhLmZsb3dDb2RlSW5zaWRlPSEwKX1mdW5jdGlvbiBnKCl7bGV0IHRlPXRoaXMucmVzdW1lKCksWj10aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoLTFdO1oudmFsdWU9dGUucmVwbGFjZSgvXihccj9cbnxccil8KFxyP1xufFxyKSQvZywiIiksdGhpcy5kYXRhLmZsb3dDb2RlSW5zaWRlPXZvaWQgMH1mdW5jdGlvbiB2KCl7bGV0IHRlPXRoaXMucmVzdW1lKCksWj10aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoLTFdO1oudmFsdWU9dGUucmVwbGFjZSgvKFxyP1xufFxyKSQvZywiIil9ZnVuY3Rpb24gdyh0ZSl7bGV0IFo9dGhpcy5yZXN1bWUoKSxlZT10aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoLTFdO2VlLmxhYmVsPVosZWUuaWRlbnRpZmllcj1xYSh0aGlzLnNsaWNlU2VyaWFsaXplKHRlKSkudG9Mb3dlckNhc2UoKX1mdW5jdGlvbiBNKCl7bGV0IHRlPXRoaXMucmVzdW1lKCksWj10aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoLTFdO1oudGl0bGU9dGV9ZnVuY3Rpb24gRigpe2xldCB0ZT10aGlzLnJlc3VtZSgpLFo9dGhpcy5zdGFja1t0aGlzLnN0YWNrLmxlbmd0aC0xXTtaLnVybD10ZX1mdW5jdGlvbiBDKHRlKXtsZXQgWj10aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoLTFdO2lmKCFaLmRlcHRoKXtsZXQgZWU9dGhpcy5zbGljZVNlcmlhbGl6ZSh0ZSkubGVuZ3RoO1ouZGVwdGg9ZWV9fWZ1bmN0aW9uIGsoKXt0aGlzLmRhdGEuc2V0ZXh0SGVhZGluZ1NsdXJwTGluZUVuZGluZz0hMH1mdW5jdGlvbiBOKHRlKXtsZXQgWj10aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoLTFdO1ouZGVwdGg9dGhpcy5zbGljZVNlcmlhbGl6ZSh0ZSkuY29kZVBvaW50QXQoMCk9PT02MT8xOjJ9ZnVuY3Rpb24gJCgpe3RoaXMuZGF0YS5zZXRleHRIZWFkaW5nU2x1cnBMaW5lRW5kaW5nPXZvaWQgMH1mdW5jdGlvbiBJKHRlKXtsZXQgZWU9dGhpcy5zdGFja1t0aGlzLnN0YWNrLmxlbmd0aC0xXS5jaGlsZHJlbixiZT1lZVtlZS5sZW5ndGgtMV07KCFiZXx8YmUudHlwZSE9PSJ0ZXh0IikmJihiZT1PZSgpLGJlLnBvc2l0aW9uPXtzdGFydDpXMCh0ZS5zdGFydCksZW5kOnZvaWQgMH0sZWUucHVzaChiZSkpLHRoaXMuc3RhY2sucHVzaChiZSl9ZnVuY3Rpb24gQih0ZSl7bGV0IFo9dGhpcy5zdGFjay5wb3AoKTtaLnZhbHVlKz10aGlzLnNsaWNlU2VyaWFsaXplKHRlKSxaLnBvc2l0aW9uLmVuZD1XMCh0ZS5lbmQpfWZ1bmN0aW9uIHoodGUpe2xldCBaPXRoaXMuc3RhY2tbdGhpcy5zdGFjay5sZW5ndGgtMV07aWYodGhpcy5kYXRhLmF0SGFyZEJyZWFrKXtsZXQgZWU9Wi5jaGlsZHJlbltaLmNoaWxkcmVuLmxlbmd0aC0xXTtlZS5wb3NpdGlvbi5lbmQ9VzAodGUuZW5kKSx0aGlzLmRhdGEuYXRIYXJkQnJlYWs9dm9pZCAwO3JldHVybn0hdGhpcy5kYXRhLnNldGV4dEhlYWRpbmdTbHVycExpbmVFbmRpbmcmJnQuY2FuQ29udGFpbkVvbHMuaW5jbHVkZXMoWi50eXBlKSYmKEkuY2FsbCh0aGlzLHRlKSxCLmNhbGwodGhpcyx0ZSkpfWZ1bmN0aW9uIHkoKXt0aGlzLmRhdGEuYXRIYXJkQnJlYWs9ITB9ZnVuY3Rpb24gRSgpe2xldCB0ZT10aGlzLnJlc3VtZSgpLFo9dGhpcy5zdGFja1t0aGlzLnN0YWNrLmxlbmd0aC0xXTtaLnZhbHVlPXRlfWZ1bmN0aW9uIF8oKXtsZXQgdGU9dGhpcy5yZXN1bWUoKSxaPXRoaXMuc3RhY2tbdGhpcy5zdGFjay5sZW5ndGgtMV07Wi52YWx1ZT10ZX1mdW5jdGlvbiBQKCl7bGV0IHRlPXRoaXMucmVzdW1lKCksWj10aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoLTFdO1oudmFsdWU9dGV9ZnVuY3Rpb24gVigpe2xldCB0ZT10aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoLTFdO2lmKHRoaXMuZGF0YS5pblJlZmVyZW5jZSl7bGV0IFo9dGhpcy5kYXRhLnJlZmVyZW5jZVR5cGV8fCJzaG9ydGN1dCI7dGUudHlwZSs9IlJlZmVyZW5jZSIsdGUucmVmZXJlbmNlVHlwZT1aLGRlbGV0ZSB0ZS51cmwsZGVsZXRlIHRlLnRpdGxlfWVsc2UgZGVsZXRlIHRlLmlkZW50aWZpZXIsZGVsZXRlIHRlLmxhYmVsO3RoaXMuZGF0YS5yZWZlcmVuY2VUeXBlPXZvaWQgMH1mdW5jdGlvbiBIKCl7bGV0IHRlPXRoaXMuc3RhY2tbdGhpcy5zdGFjay5sZW5ndGgtMV07aWYodGhpcy5kYXRhLmluUmVmZXJlbmNlKXtsZXQgWj10aGlzLmRhdGEucmVmZXJlbmNlVHlwZXx8InNob3J0Y3V0Ijt0ZS50eXBlKz0iUmVmZXJlbmNlIix0ZS5yZWZlcmVuY2VUeXBlPVosZGVsZXRlIHRlLnVybCxkZWxldGUgdGUudGl0bGV9ZWxzZSBkZWxldGUgdGUuaWRlbnRpZmllcixkZWxldGUgdGUubGFiZWw7dGhpcy5kYXRhLnJlZmVyZW5jZVR5cGU9dm9pZCAwfWZ1bmN0aW9uIFcodGUpe2xldCBaPXRoaXMuc2xpY2VTZXJpYWxpemUodGUpLGVlPXRoaXMuc3RhY2tbdGhpcy5zdGFjay5sZW5ndGgtMl07ZWUubGFiZWw9TmVlKFopLGVlLmlkZW50aWZpZXI9cWEoWikudG9Mb3dlckNhc2UoKX1mdW5jdGlvbiBhZSgpe2xldCB0ZT10aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoLTFdLFo9dGhpcy5yZXN1bWUoKSxlZT10aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoLTFdO2lmKHRoaXMuZGF0YS5pblJlZmVyZW5jZT0hMCxlZS50eXBlPT09ImxpbmsiKXtsZXQgYmU9dGUuY2hpbGRyZW47ZWUuY2hpbGRyZW49YmV9ZWxzZSBlZS5hbHQ9Wn1mdW5jdGlvbiBUKCl7bGV0IHRlPXRoaXMucmVzdW1lKCksWj10aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoLTFdO1oudXJsPXRlfWZ1bmN0aW9uIEooKXtsZXQgdGU9dGhpcy5yZXN1bWUoKSxaPXRoaXMuc3RhY2tbdGhpcy5zdGFjay5sZW5ndGgtMV07Wi50aXRsZT10ZX1mdW5jdGlvbiBmZSgpe3RoaXMuZGF0YS5pblJlZmVyZW5jZT12b2lkIDB9ZnVuY3Rpb24gTCgpe3RoaXMuZGF0YS5yZWZlcmVuY2VUeXBlPSJjb2xsYXBzZWQifWZ1bmN0aW9uIFEodGUpe2xldCBaPXRoaXMucmVzdW1lKCksZWU9dGhpcy5zdGFja1t0aGlzLnN0YWNrLmxlbmd0aC0xXTtlZS5sYWJlbD1aLGVlLmlkZW50aWZpZXI9cWEodGhpcy5zbGljZVNlcmlhbGl6ZSh0ZSkpLnRvTG93ZXJDYXNlKCksdGhpcy5kYXRhLnJlZmVyZW5jZVR5cGU9ImZ1bGwifWZ1bmN0aW9uIGtlKHRlKXt0aGlzLmRhdGEuY2hhcmFjdGVyUmVmZXJlbmNlVHlwZT10ZS50eXBlfWZ1bmN0aW9uIEcodGUpe2xldCBaPXRoaXMuc2xpY2VTZXJpYWxpemUodGUpLGVlPXRoaXMuZGF0YS5jaGFyYWN0ZXJSZWZlcmVuY2VUeXBlLGJlO2VlPyhiZT15bShaLGVlPT09ImNoYXJhY3RlclJlZmVyZW5jZU1hcmtlck51bWVyaWMiPzEwOjE2KSx0aGlzLmRhdGEuY2hhcmFjdGVyUmVmZXJlbmNlVHlwZT12b2lkIDApOmJlPVYwKFopO2xldCBOZT10aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoLTFdO05lLnZhbHVlKz1iZX1mdW5jdGlvbiBBKHRlKXtsZXQgWj10aGlzLnN0YWNrLnBvcCgpO1oucG9zaXRpb24uZW5kPVcwKHRlLmVuZCl9ZnVuY3Rpb24gRCh0ZSl7Qi5jYWxsKHRoaXMsdGUpO2xldCBaPXRoaXMuc3RhY2tbdGhpcy5zdGFjay5sZW5ndGgtMV07Wi51cmw9dGhpcy5zbGljZVNlcmlhbGl6ZSh0ZSl9ZnVuY3Rpb24gUih0ZSl7Qi5jYWxsKHRoaXMsdGUpO2xldCBaPXRoaXMuc3RhY2tbdGhpcy5zdGFjay5sZW5ndGgtMV07Wi51cmw9Im1haWx0bzoiK3RoaXMuc2xpY2VTZXJpYWxpemUodGUpfWZ1bmN0aW9uIE8oKXtyZXR1cm57dHlwZToiYmxvY2txdW90ZSIsY2hpbGRyZW46W119fWZ1bmN0aW9uIFkoKXtyZXR1cm57dHlwZToiY29kZSIsbGFuZzpudWxsLG1ldGE6bnVsbCx2YWx1ZToiIn19ZnVuY3Rpb24gdWUoKXtyZXR1cm57dHlwZToiaW5saW5lQ29kZSIsdmFsdWU6IiJ9fWZ1bmN0aW9uIHllKCl7cmV0dXJue3R5cGU6ImRlZmluaXRpb24iLGlkZW50aWZpZXI6IiIsbGFiZWw6bnVsbCx0aXRsZTpudWxsLHVybDoiIn19ZnVuY3Rpb24gJGUoKXtyZXR1cm57dHlwZToiZW1waGFzaXMiLGNoaWxkcmVuOltdfX1mdW5jdGlvbiBVKCl7cmV0dXJue3R5cGU6ImhlYWRpbmciLGRlcHRoOjAsY2hpbGRyZW46W119fWZ1bmN0aW9uIHEoKXtyZXR1cm57dHlwZToiYnJlYWsifX1mdW5jdGlvbiBpZSgpe3JldHVybnt0eXBlOiJodG1sIix2YWx1ZToiIn19ZnVuY3Rpb24gd2UoKXtyZXR1cm57dHlwZToiaW1hZ2UiLHRpdGxlOm51bGwsdXJsOiIiLGFsdDpudWxsfX1mdW5jdGlvbiBnZSgpe3JldHVybnt0eXBlOiJsaW5rIix0aXRsZTpudWxsLHVybDoiIixjaGlsZHJlbjpbXX19ZnVuY3Rpb24gQWUodGUpe3JldHVybnt0eXBlOiJsaXN0IixvcmRlcmVkOnRlLnR5cGU9PT0ibGlzdE9yZGVyZWQiLHN0YXJ0Om51bGwsc3ByZWFkOnRlLl9zcHJlYWQsY2hpbGRyZW46W119fWZ1bmN0aW9uIHhlKHRlKXtyZXR1cm57dHlwZToibGlzdEl0ZW0iLHNwcmVhZDp0ZS5fc3ByZWFkLGNoZWNrZWQ6bnVsbCxjaGlsZHJlbjpbXX19ZnVuY3Rpb24gbmUoKXtyZXR1cm57dHlwZToicGFyYWdyYXBoIixjaGlsZHJlbjpbXX19ZnVuY3Rpb24gTGUoKXtyZXR1cm57dHlwZToic3Ryb25nIixjaGlsZHJlbjpbXX19ZnVuY3Rpb24gT2UoKXtyZXR1cm57dHlwZToidGV4dCIsdmFsdWU6IiJ9fWZ1bmN0aW9uIEplKCl7cmV0dXJue3R5cGU6InRoZW1hdGljQnJlYWsifX19ZnVuY3Rpb24gVzAoZSl7cmV0dXJue2xpbmU6ZS5saW5lLGNvbHVtbjplLmNvbHVtbixvZmZzZXQ6ZS5vZmZzZXR9fWZ1bmN0aW9uIGVNdChlLHQpe2xldCByPS0xO2Zvcig7KytyPHQubGVuZ3RoOyl7bGV0IGE9dFtyXTtBcnJheS5pc0FycmF5KGEpP2VNdChlLGEpOmNhYShlLGEpfX1mdW5jdGlvbiBjYWEoZSx0KXtsZXQgcjtmb3IociBpbiB0KWlmKEp3dC5jYWxsKHQscikpc3dpdGNoKHIpe2Nhc2UiY2FuQ29udGFpbkVvbHMiOntsZXQgYT10W3JdO2EmJmVbcl0ucHVzaCguLi5hKTticmVha31jYXNlInRyYW5zZm9ybXMiOntsZXQgYT10W3JdO2EmJmVbcl0ucHVzaCguLi5hKTticmVha31jYXNlImVudGVyIjpjYXNlImV4aXQiOntsZXQgYT10W3JdO2EmJk9iamVjdC5hc3NpZ24oZVtyXSxhKTticmVha319fWZ1bmN0aW9uIHRNdChlLHQpe3Rocm93IGU/bmV3IEVycm9yKCJDYW5ub3QgY2xvc2UgYCIrZS50eXBlKyJgICgiK0gwKHtzdGFydDplLnN0YXJ0LGVuZDplLmVuZH0pKyIpOiBhIGRpZmZlcmVudCB0b2tlbiAoYCIrdC50eXBlKyJgLCAiK0gwKHtzdGFydDp0LnN0YXJ0LGVuZDp0LmVuZH0pKyIpIGlzIG9wZW4iKTpuZXcgRXJyb3IoIkNhbm5vdCBjbG9zZSBkb2N1bWVudCwgYSB0b2tlbiAoYCIrdC50eXBlKyJgLCAiK0gwKHtzdGFydDp0LnN0YXJ0LGVuZDp0LmVuZH0pKyIpIGlzIHN0aWxsIG9wZW4iKX12YXIgSnd0LHJNdD1sKCgpPT57QWVlKCk7S3d0KCk7SWVlKCk7VWZlKCk7ajAoKTtuYigpO29mZSgpO0p3dD17fS5oYXNPd25Qcm9wZXJ0eX0pO3ZhciBhTXQ9bCgoKT0+e3JNdCgpfSk7ZnVuY3Rpb24ga20oZSl7bGV0IHQ9dGhpczt0LnBhcnNlcj1yO2Z1bmN0aW9uIHIoYSl7cmV0dXJuIHE1ZShhLHsuLi50LmRhdGEoInNldHRpbmdzIiksLi4uZSxleHRlbnNpb25zOnQuZGF0YSgibWljcm9tYXJrRXh0ZW5zaW9ucyIpfHxbXSxtZGFzdEV4dGVuc2lvbnM6dC5kYXRhKCJmcm9tTWFya2Rvd25FeHRlbnNpb25zIil8fFtdfSl9fXZhciBpTXQ9bCgoKT0+e2FNdCgpfSk7dmFyIG9NdD1sKCgpPT57aU10KCl9KTt2YXIgbk10PVhlKChzOGksajVlKT0+eyhmdW5jdGlvbigpe3ZhciBlO3R5cGVvZiBqNWU8InUiP2U9ajVlLmV4cG9ydHM9YTplPShmdW5jdGlvbigpe3JldHVybiB0aGlzfHwoMCxldmFsKSgidGhpcyIpfSkoKSxlLmZvcm1hdD1hLGUudnNwcmludGY9cix0eXBlb2YgY29uc29sZTwidSImJnR5cGVvZiBjb25zb2xlLmxvZz09ImZ1bmN0aW9uIiYmKGUucHJpbnRmPXQpO2Z1bmN0aW9uIHQoKXtjb25zb2xlLmxvZyhhLmFwcGx5KG51bGwsYXJndW1lbnRzKSl9ZnVuY3Rpb24gcihpLG8pe3JldHVybiBhLmFwcGx5KG51bGwsW2ldLmNvbmNhdChvKSl9ZnVuY3Rpb24gYShpKXtmb3IodmFyIG89MSxuPVtdLnNsaWNlLmNhbGwoYXJndW1lbnRzKSxzPTAsYz1pLmxlbmd0aCxkPSIiLGYsdT0hMSxwLGgsYj0hMSx4LGc9ZnVuY3Rpb24oKXtyZXR1cm4gbltvKytdfSx2PWZ1bmN0aW9uKCl7Zm9yKHZhciB3PSIiOy9cZC8udGVzdChpW3NdKTspdys9aVtzKytdLGY9aVtzXTtyZXR1cm4gdy5sZW5ndGg+MD9wYXJzZUludCh3KTpudWxsfTtzPGM7KytzKWlmKGY9aVtzXSx1KXN3aXRjaCh1PSExLGY9PSIuIj8oYj0hMSxmPWlbKytzXSk6Zj09IjAiJiZpW3MrMV09PSIuIj8oYj0hMCxzKz0yLGY9aVtzXSk6Yj0hMCx4PXYoKSxmKXtjYXNlImIiOmQrPXBhcnNlSW50KGcoKSwxMCkudG9TdHJpbmcoMik7YnJlYWs7Y2FzZSJjIjpwPWcoKSx0eXBlb2YgcD09InN0cmluZyJ8fHAgaW5zdGFuY2VvZiBTdHJpbmc/ZCs9cDpkKz1TdHJpbmcuZnJvbUNoYXJDb2RlKHBhcnNlSW50KHAsMTApKTticmVhaztjYXNlImQiOmQrPXBhcnNlSW50KGcoKSwxMCk7YnJlYWs7Y2FzZSJmIjpoPVN0cmluZyhwYXJzZUZsb2F0KGcoKSkudG9GaXhlZCh4fHw2KSksZCs9Yj9oOmgucmVwbGFjZSgvXjAvLCIiKTticmVhaztjYXNlImoiOmQrPUpTT04uc3RyaW5naWZ5KGcoKSk7YnJlYWs7Y2FzZSJvIjpkKz0iMCIrcGFyc2VJbnQoZygpLDEwKS50b1N0cmluZyg4KTticmVhaztjYXNlInMiOmQrPWcoKTticmVhaztjYXNlIngiOmQrPSIweCIrcGFyc2VJbnQoZygpLDEwKS50b1N0cmluZygxNik7YnJlYWs7Y2FzZSJYIjpkKz0iMHgiK3BhcnNlSW50KGcoKSwxMCkudG9TdHJpbmcoMTYpLnRvVXBwZXJDYXNlKCk7YnJlYWs7ZGVmYXVsdDpkKz1mO2JyZWFrfWVsc2UgZj09PSIlIj91PSEwOmQrPWY7cmV0dXJuIGR9fSkoKX0pO2Z1bmN0aW9uIEFkKGUpe3JldHVybiB0LmRpc3BsYXlOYW1lPWUuZGlzcGxheU5hbWV8fGUubmFtZSx0O2Z1bmN0aW9uIHQociwuLi5hKXtsZXQgaT1yJiYoMCxzTXQuZGVmYXVsdCkociwuLi5hKTtyZXR1cm4gbmV3IGUoaSl9fXZhciBzTXQsZ2IsbE10PWwoKCk9PntzTXQ9QXIobk10KCksMSksZ2I9T2JqZWN0LmFzc2lnbihBZChFcnJvcikse2V2YWw6QWQoRXZhbEVycm9yKSxyYW5nZTpBZChSYW5nZUVycm9yKSxyZWZlcmVuY2U6QWQoUmVmZXJlbmNlRXJyb3IpLHN5bnRheDpBZChTeW50YXhFcnJvciksdHlwZTpBZChUeXBlRXJyb3IpLHVyaTpBZChVUklFcnJvcil9KX0pO2Z1bmN0aW9uIFNtKGUpe2xldCB0PVtdLHI9LTEsYT1BcnJheS5pc0FycmF5KGUpP2U6ZT9bZV06WyJ5YW1sIl07Zm9yKDsrK3I8YS5sZW5ndGg7KXRbcl09ZGFhKGFbcl0pO3JldHVybiB0fWZ1bmN0aW9uIGRhYShlKXtsZXQgdD1lO2lmKHR5cGVvZiB0PT0ic3RyaW5nIil7aWYoIXJ0ZS5jYWxsKGNNdCx0KSl0aHJvdyBnYigiTWlzc2luZyBtYXR0ZXIgZGVmaW5pdGlvbiBmb3IgYCVzYCIsdCk7dD17dHlwZTp0LG1hcmtlcjpjTXRbdF19fWVsc2UgaWYodHlwZW9mIHQhPSJvYmplY3QiKXRocm93IGdiKCJFeHBlY3RlZCBtYXR0ZXIgdG8gYmUgYW4gb2JqZWN0LCBub3QgYCVqYCIsdCk7aWYoIXJ0ZS5jYWxsKHQsInR5cGUiKSl0aHJvdyBnYigiTWlzc2luZyBgdHlwZWAgaW4gbWF0dGVyIGAlamAiLHQpO2lmKCFydGUuY2FsbCh0LCJmZW5jZSIpJiYhcnRlLmNhbGwodCwibWFya2VyIikpdGhyb3cgZ2IoIk1pc3NpbmcgYG1hcmtlcmAgb3IgYGZlbmNlYCBpbiBtYXR0ZXIgYCVqYCIsdCk7cmV0dXJuIHR9dmFyIHJ0ZSxjTXQsVjVlPWwoKCk9PntsTXQoKTtydGU9e30uaGFzT3duUHJvcGVydHksY010PXt5YW1sOiItIix0b21sOiIrIn19KTtmdW5jdGlvbiBXNWUoZSl7bGV0IHQ9U20oZSkscj17fSxhPS0xO2Zvcig7KythPHQubGVuZ3RoOyl7bGV0IGk9dFthXSxvPVU1ZShpLCJvcGVuIikuY2hhckNvZGVBdCgwKSxuPXVhYShpKSxzPXJbb107QXJyYXkuaXNBcnJheShzKT9zLnB1c2gobik6cltvXT1bbl19cmV0dXJue2Zsb3c6cn19ZnVuY3Rpb24gdWFhKGUpe2xldCB0PWUuYW55d2hlcmUscj1lLnR5cGUsYT1yKyJGZW5jZSIsaT1hKyJTZXF1ZW5jZSIsbz1yKyJWYWx1ZSIsbj17dG9rZW5pemU6ZixwYXJ0aWFsOiEwfSxzLGM9MDtyZXR1cm57dG9rZW5pemU6ZCxjb25jcmV0ZTohMH07ZnVuY3Rpb24gZCh1LHAsaCl7bGV0IGI9dGhpcztyZXR1cm4geDtmdW5jdGlvbiB4KE4pe2xldCAkPWIubm93KCk7cmV0dXJuICQuY29sdW1uPT09MSYmKCQubGluZT09PTF8fHQpJiYocz1VNWUoZSwib3BlbiIpLGM9MCxOPT09cy5jaGFyQ29kZUF0KGMpKT8odS5lbnRlcihyKSx1LmVudGVyKGEpLHUuZW50ZXIoaSksZyhOKSk6aChOKX1mdW5jdGlvbiBnKE4pe3JldHVybiBjPT09cy5sZW5ndGg/KHUuZXhpdChpKSx4dChOKT8odS5lbnRlcigid2hpdGVzcGFjZSIpLHYoTikpOncoTikpOk49PT1zLmNoYXJDb2RlQXQoYysrKT8odS5jb25zdW1lKE4pLGcpOmgoTil9ZnVuY3Rpb24gdihOKXtyZXR1cm4geHQoTik/KHUuY29uc3VtZShOKSx2KToodS5leGl0KCJ3aGl0ZXNwYWNlIiksdyhOKSl9ZnVuY3Rpb24gdyhOKXtyZXR1cm4gZXQoTik/KHUuZXhpdChhKSx1LmVudGVyKCJsaW5lRW5kaW5nIiksdS5jb25zdW1lKE4pLHUuZXhpdCgibGluZUVuZGluZyIpLHM9VTVlKGUsImNsb3NlIiksYz0wLHUuYXR0ZW1wdChuLGssTSkpOmgoTil9ZnVuY3Rpb24gTShOKXtyZXR1cm4gTj09PW51bGx8fGV0KE4pP0MoTik6KHUuZW50ZXIobyksRihOKSl9ZnVuY3Rpb24gRihOKXtyZXR1cm4gTj09PW51bGx8fGV0KE4pPyh1LmV4aXQobyksQyhOKSk6KHUuY29uc3VtZShOKSxGKX1mdW5jdGlvbiBDKE4pe3JldHVybiBOPT09bnVsbD9oKE4pOih1LmVudGVyKCJsaW5lRW5kaW5nIiksdS5jb25zdW1lKE4pLHUuZXhpdCgibGluZUVuZGluZyIpLHUuYXR0ZW1wdChuLGssTSkpfWZ1bmN0aW9uIGsoTil7cmV0dXJuIHUuZXhpdChyKSxwKE4pfX1mdW5jdGlvbiBmKHUscCxoKXtsZXQgYj0wO3JldHVybiB4O2Z1bmN0aW9uIHgoTSl7cmV0dXJuIE09PT1zLmNoYXJDb2RlQXQoYik/KHUuZW50ZXIoYSksdS5lbnRlcihpKSxnKE0pKTpoKE0pfWZ1bmN0aW9uIGcoTSl7cmV0dXJuIGI9PT1zLmxlbmd0aD8odS5leGl0KGkpLHh0KE0pPyh1LmVudGVyKCJ3aGl0ZXNwYWNlIiksdihNKSk6dyhNKSk6TT09PXMuY2hhckNvZGVBdChiKyspPyh1LmNvbnN1bWUoTSksZyk6aChNKX1mdW5jdGlvbiB2KE0pe3JldHVybiB4dChNKT8odS5jb25zdW1lKE0pLHYpOih1LmV4aXQoIndoaXRlc3BhY2UiKSx3KE0pKX1mdW5jdGlvbiB3KE0pe3JldHVybiBNPT09bnVsbHx8ZXQoTSk/KHUuZXhpdChhKSxwKE0pKTpoKE0pfX19ZnVuY3Rpb24gVTVlKGUsdCl7cmV0dXJuIGUubWFya2VyP2RNdChlLm1hcmtlcix0KS5yZXBlYXQoMyk6ZE10KGUuZmVuY2UsdCl9ZnVuY3Rpb24gZE10KGUsdCl7cmV0dXJuIHR5cGVvZiBlPT0ic3RyaW5nIj9lOmVbdF19dmFyIHVNdD1sKCgpPT57dXIoKTtWNWUoKX0pO3ZhciBmTXQ9bCgoKT0+e30pO3ZhciBHNWU9bCgoKT0+e3VNdCgpO2ZNdCgpO1Y1ZSgpfSk7ZnVuY3Rpb24gWjVlKGUpe2xldCB0PVNtKGUpLHI9e30sYT17fSxpPS0xO2Zvcig7KytpPHQubGVuZ3RoOyl7bGV0IG89dFtpXTtyW28udHlwZV09ZmFhKG8pLGFbby50eXBlXT1wYWEsYVtvLnR5cGUrIlZhbHVlIl09aGFhfXJldHVybntlbnRlcjpyLGV4aXQ6YX19ZnVuY3Rpb24gZmFhKGUpe3JldHVybiB0O2Z1bmN0aW9uIHQocil7dGhpcy5lbnRlcih7dHlwZTplLnR5cGUsdmFsdWU6IiJ9LHIpLHRoaXMuYnVmZmVyKCl9fWZ1bmN0aW9uIHBhYShlKXtsZXQgdD10aGlzLnJlc3VtZSgpLHI9dGhpcy5zdGFja1t0aGlzLnN0YWNrLmxlbmd0aC0xXTsidmFsdWUiaW4gcix0aGlzLmV4aXQoZSksci52YWx1ZT10LnJlcGxhY2UoL14oXHI/XG58XHIpfChccj9cbnxccikkL2csIiIpfWZ1bmN0aW9uIGhhYShlKXt0aGlzLmNvbmZpZy5lbnRlci5kYXRhLmNhbGwodGhpcyxlKSx0aGlzLmNvbmZpZy5leGl0LmRhdGEuY2FsbCh0aGlzLGUpfWZ1bmN0aW9uIFg1ZShlKXtsZXQgdD1bXSxyPXt9LGE9U20oZSksaT0tMTtmb3IoOysraTxhLmxlbmd0aDspe2xldCBvPWFbaV07cltvLnR5cGVdPW1hYShvKTtsZXQgbj1ZNWUobywib3BlbiIpO3QucHVzaCh7YXRCcmVhazohMCxjaGFyYWN0ZXI6bi5jaGFyQXQoMCksYWZ0ZXI6ajMobi5jaGFyQXQoMSkpfSl9cmV0dXJue3Vuc2FmZTp0LGhhbmRsZXJzOnJ9fWZ1bmN0aW9uIG1hYShlKXtsZXQgdD1ZNWUoZSwib3BlbiIpLHI9WTVlKGUsImNsb3NlIik7cmV0dXJuIGE7ZnVuY3Rpb24gYShpKXtyZXR1cm4gdCsoaS52YWx1ZT9gCmAraS52YWx1ZToiIikrYApgK3J9fWZ1bmN0aW9uIFk1ZShlLHQpe3JldHVybiBlLm1hcmtlcj9wTXQoZS5tYXJrZXIsdCkucmVwZWF0KDMpOnBNdChlLmZlbmNlLHQpfWZ1bmN0aW9uIHBNdChlLHQpe3JldHVybiB0eXBlb2YgZT09InN0cmluZyI/ZTplW3RdfXZhciBoTXQ9bCgoKT0+e0IwKCk7RzVlKCk7aFEoKX0pO3ZhciBtTXQ9bCgoKT0+e2hNdCgpfSk7ZnVuY3Rpb24gem0oZSl7bGV0IHQ9dGhpcyxyPWV8fGdhYSxhPXQuZGF0YSgpLGk9YS5taWNyb21hcmtFeHRlbnNpb25zfHwoYS5taWNyb21hcmtFeHRlbnNpb25zPVtdKSxvPWEuZnJvbU1hcmtkb3duRXh0ZW5zaW9uc3x8KGEuZnJvbU1hcmtkb3duRXh0ZW5zaW9ucz1bXSksbj1hLnRvTWFya2Rvd25FeHRlbnNpb25zfHwoYS50b01hcmtkb3duRXh0ZW5zaW9ucz1bXSk7aS5wdXNoKFc1ZShyKSksby5wdXNoKFo1ZShyKSksbi5wdXNoKFg1ZShyKSl9dmFyIGdhYSxnTXQ9bCgoKT0+e21NdCgpO0c1ZSgpO2dhYT0ieWFtbCJ9KTt2YXIgeE10PWwoKCk9PntnTXQoKX0pO3ZhciBRNWU9bCgoKT0+e30pO3ZhciBiTXQseGFhLHN0ZSx2TXQ9bCgoKT0+e1E1ZSgpO2JNdD10eXBlb2Ygc2VsZj09Im9iamVjdCI/c2VsZjpnbG9iYWxUaGlzLHhhYT0oZSx0KT0+e2xldCByPShpLG8pPT4oZS5zZXQobyxpKSxpKSxhPWk9PntpZihlLmhhcyhpKSlyZXR1cm4gZS5nZXQoaSk7bGV0W28sbl09dFtpXTtzd2l0Y2gobyl7Y2FzZSAwOmNhc2UtMTpyZXR1cm4gcihuLGkpO2Nhc2UgMTp7bGV0IHM9cihbXSxpKTtmb3IobGV0IGMgb2YgbilzLnB1c2goYShjKSk7cmV0dXJuIHN9Y2FzZSAyOntsZXQgcz1yKHt9LGkpO2ZvcihsZXRbYyxkXW9mIG4pc1thKGMpXT1hKGQpO3JldHVybiBzfWNhc2UgMzpyZXR1cm4gcihuZXcgRGF0ZShuKSxpKTtjYXNlIDQ6e2xldHtzb3VyY2U6cyxmbGFnczpjfT1uO3JldHVybiByKG5ldyBSZWdFeHAocyxjKSxpKX1jYXNlIDU6e2xldCBzPXIobmV3IE1hcCxpKTtmb3IobGV0W2MsZF1vZiBuKXMuc2V0KGEoYyksYShkKSk7cmV0dXJuIHN9Y2FzZSA2OntsZXQgcz1yKG5ldyBTZXQsaSk7Zm9yKGxldCBjIG9mIG4pcy5hZGQoYShjKSk7cmV0dXJuIHN9Y2FzZSA3OntsZXR7bmFtZTpzLG1lc3NhZ2U6Y309bjtyZXR1cm4gcihuZXcgYk10W3NdKGMpLGkpfWNhc2UgODpyZXR1cm4gcihCaWdJbnQobiksaSk7Y2FzZSJCaWdJbnQiOnJldHVybiByKE9iamVjdChCaWdJbnQobikpLGkpO2Nhc2UiQXJyYXlCdWZmZXIiOnJldHVybiByKG5ldyBVaW50OEFycmF5KG4pLmJ1ZmZlcixuKTtjYXNlIkRhdGFWaWV3Ijp7bGV0e2J1ZmZlcjpzfT1uZXcgVWludDhBcnJheShuKTtyZXR1cm4gcihuZXcgRGF0YVZpZXcocyksbil9fXJldHVybiByKG5ldyBiTXRbb10obiksaSl9O3JldHVybiBhfSxzdGU9ZT0+eGFhKG5ldyBNYXAsZSkoMCl9KTt2YXIgX20sYmFhLHZhYSx2YixsdGUseWFhLGN0ZSx5TXQ9bCgoKT0+e1E1ZSgpO19tPSIiLHt0b1N0cmluZzpiYWF9PXt9LHtrZXlzOnZhYX09T2JqZWN0LHZiPWU9PntsZXQgdD10eXBlb2YgZTtpZih0IT09Im9iamVjdCJ8fCFlKXJldHVyblswLHRdO2xldCByPWJhYS5jYWxsKGUpLnNsaWNlKDgsLTEpO3N3aXRjaChyKXtjYXNlIkFycmF5IjpyZXR1cm5bMSxfbV07Y2FzZSJPYmplY3QiOnJldHVyblsyLF9tXTtjYXNlIkRhdGUiOnJldHVyblszLF9tXTtjYXNlIlJlZ0V4cCI6cmV0dXJuWzQsX21dO2Nhc2UiTWFwIjpyZXR1cm5bNSxfbV07Y2FzZSJTZXQiOnJldHVybls2LF9tXTtjYXNlIkRhdGFWaWV3IjpyZXR1cm5bMSxyXX1yZXR1cm4gci5pbmNsdWRlcygiQXJyYXkiKT9bMSxyXTpyLmluY2x1ZGVzKCJFcnJvciIpP1s3LHJdOlsyLHJdfSxsdGU9KFtlLHRdKT0+ZT09PTAmJih0PT09ImZ1bmN0aW9uInx8dD09PSJzeW1ib2wiKSx5YWE9KGUsdCxyLGEpPT57bGV0IGk9KG4scyk9PntsZXQgYz1hLnB1c2gobiktMTtyZXR1cm4gci5zZXQocyxjKSxjfSxvPW49PntpZihyLmhhcyhuKSlyZXR1cm4gci5nZXQobik7bGV0W3MsY109dmIobik7c3dpdGNoKHMpe2Nhc2UgMDp7bGV0IGY9bjtzd2l0Y2goYyl7Y2FzZSJiaWdpbnQiOnM9OCxmPW4udG9TdHJpbmcoKTticmVhaztjYXNlImZ1bmN0aW9uIjpjYXNlInN5bWJvbCI6aWYoZSl0aHJvdyBuZXcgVHlwZUVycm9yKCJ1bmFibGUgdG8gc2VyaWFsaXplICIrYyk7Zj1udWxsO2JyZWFrO2Nhc2UidW5kZWZpbmVkIjpyZXR1cm4gaShbLTFdLG4pfXJldHVybiBpKFtzLGZdLG4pfWNhc2UgMTp7aWYoYyl7bGV0IHA9bjtyZXR1cm4gYz09PSJEYXRhVmlldyI/cD1uZXcgVWludDhBcnJheShuLmJ1ZmZlcik6Yz09PSJBcnJheUJ1ZmZlciImJihwPW5ldyBVaW50OEFycmF5KG4pKSxpKFtjLFsuLi5wXV0sbil9bGV0IGY9W10sdT1pKFtzLGZdLG4pO2ZvcihsZXQgcCBvZiBuKWYucHVzaChvKHApKTtyZXR1cm4gdX1jYXNlIDI6e2lmKGMpc3dpdGNoKGMpe2Nhc2UiQmlnSW50IjpyZXR1cm4gaShbYyxuLnRvU3RyaW5nKCldLG4pO2Nhc2UiQm9vbGVhbiI6Y2FzZSJOdW1iZXIiOmNhc2UiU3RyaW5nIjpyZXR1cm4gaShbYyxuLnZhbHVlT2YoKV0sbil9aWYodCYmInRvSlNPTiJpbiBuKXJldHVybiBvKG4udG9KU09OKCkpO2xldCBmPVtdLHU9aShbcyxmXSxuKTtmb3IobGV0IHAgb2YgdmFhKG4pKShlfHwhbHRlKHZiKG5bcF0pKSkmJmYucHVzaChbbyhwKSxvKG5bcF0pXSk7cmV0dXJuIHV9Y2FzZSAzOnJldHVybiBpKFtzLG4udG9JU09TdHJpbmcoKV0sbik7Y2FzZSA0OntsZXR7c291cmNlOmYsZmxhZ3M6dX09bjtyZXR1cm4gaShbcyx7c291cmNlOmYsZmxhZ3M6dX1dLG4pfWNhc2UgNTp7bGV0IGY9W10sdT1pKFtzLGZdLG4pO2ZvcihsZXRbcCxoXW9mIG4pKGV8fCEobHRlKHZiKHApKXx8bHRlKHZiKGgpKSkpJiZmLnB1c2goW28ocCksbyhoKV0pO3JldHVybiB1fWNhc2UgNjp7bGV0IGY9W10sdT1pKFtzLGZdLG4pO2ZvcihsZXQgcCBvZiBuKShlfHwhbHRlKHZiKHApKSkmJmYucHVzaChvKHApKTtyZXR1cm4gdX19bGV0e21lc3NhZ2U6ZH09bjtyZXR1cm4gaShbcyx7bmFtZTpjLG1lc3NhZ2U6ZH1dLG4pfTtyZXR1cm4gb30sY3RlPShlLHtqc29uOnQsbG9zc3k6cn09e30pPT57bGV0IGE9W107cmV0dXJuIHlhYSghKHR8fHIpLCEhdCxuZXcgTWFwLGEpKGUpLGF9fSk7dmFyIEcwLGR0ZT1sKCgpPT57dk10KCk7eU10KCk7RzA9dHlwZW9mIHN0cnVjdHVyZWRDbG9uZT09ImZ1bmN0aW9uIj8oZSx0KT0+dCYmKCJqc29uImluIHR8fCJsb3NzeSJpbiB0KT9zdGUoY3RlKGUsdCkpOnN0cnVjdHVyZWRDbG9uZShlKTooZSx0KT0+c3RlKGN0ZShlLHQpKX0pO2Z1bmN0aW9uIHdNdChlKXtyZXR1cm4gdDtmdW5jdGlvbiB0KHIpe2xldCBhPXImJnIucG9zaXRpb24mJnIucG9zaXRpb25bZV18fHt9O2lmKHR5cGVvZiBhLmxpbmU9PSJudW1iZXIiJiZhLmxpbmU+MCYmdHlwZW9mIGEuY29sdW1uPT0ibnVtYmVyIiYmYS5jb2x1bW4+MClyZXR1cm57bGluZTphLmxpbmUsY29sdW1uOmEuY29sdW1uLG9mZnNldDp0eXBlb2YgYS5vZmZzZXQ9PSJudW1iZXIiJiZhLm9mZnNldD4tMT9hLm9mZnNldDp2b2lkIDB9fX1mdW5jdGlvbiB5YihlKXtsZXQgdD1mdGUoZSkscj11dGUoZSk7aWYodCYmcilyZXR1cm57c3RhcnQ6dCxlbmQ6cn19dmFyIHV0ZSxmdGUsTU10PWwoKCk9Pnt1dGU9d010KCJlbmQiKSxmdGU9d010KCJzdGFydCIpfSk7dmFyIHB0ZT1sKCgpPT57TU10KCl9KTt2YXIgRWQsaHRlLHRwZT1sKCgpPT57RWQ9WyJhcmlhRGVzY3JpYmVkQnkiLCJhcmlhTGFiZWwiLCJhcmlhTGFiZWxsZWRCeSJdLGh0ZT17YW5jZXN0b3JzOnt0Ym9keTpbInRhYmxlIl0sdGQ6WyJ0YWJsZSJdLHRoOlsidGFibGUiXSx0aGVhZDpbInRhYmxlIl0sdGZvb3Q6WyJ0YWJsZSJdLHRyOlsidGFibGUiXX0sYXR0cmlidXRlczp7YTpbLi4uRWQsImRhdGFGb290bm90ZUJhY2tyZWYiLCJkYXRhRm9vdG5vdGVSZWYiLFsiY2xhc3NOYW1lIiwiZGF0YS1mb290bm90ZS1iYWNrcmVmIl0sImhyZWYiXSxibG9ja3F1b3RlOlsiY2l0ZSJdLGNvZGU6W1siY2xhc3NOYW1lIiwvXmxhbmd1YWdlLS4vXV0sZGVsOlsiY2l0ZSJdLGRpdjpbIml0ZW1TY29wZSIsIml0ZW1UeXBlIl0sZGw6Wy4uLkVkXSxoMjpbWyJjbGFzc05hbWUiLCJzci1vbmx5Il1dLGltZzpbLi4uRWQsImxvbmdEZXNjIiwic3JjIl0saW5wdXQ6W1siZGlzYWJsZWQiLCEwXSxbInR5cGUiLCJjaGVja2JveCJdXSxpbnM6WyJjaXRlIl0sbGk6W1siY2xhc3NOYW1lIiwidGFzay1saXN0LWl0ZW0iXV0sb2w6Wy4uLkVkLFsiY2xhc3NOYW1lIiwiY29udGFpbnMtdGFzay1saXN0Il1dLHE6WyJjaXRlIl0sc2VjdGlvbjpbImRhdGFGb290bm90ZXMiLFsiY2xhc3NOYW1lIiwiZm9vdG5vdGVzIl1dLHNvdXJjZTpbInNyY1NldCJdLHN1bW1hcnk6Wy4uLkVkXSx0YWJsZTpbLi4uRWRdLHVsOlsuLi5FZCxbImNsYXNzTmFtZSIsImNvbnRhaW5zLXRhc2stbGlzdCJdXSwiKiI6WyJhYmJyIiwiYWNjZXB0IiwiYWNjZXB0Q2hhcnNldCIsImFjY2Vzc0tleSIsImFjdGlvbiIsImFsaWduIiwiYWx0IiwiYXhpcyIsImJvcmRlciIsImNlbGxQYWRkaW5nIiwiY2VsbFNwYWNpbmciLCJjaGFyIiwiY2hhck9mZiIsImNoYXJTZXQiLCJjaGVja2VkIiwiY2xlYXIiLCJjb2xTcGFuIiwiY29sb3IiLCJjb2xzIiwiY29tcGFjdCIsImNvb3JkcyIsImRhdGVUaW1lIiwiZGlyIiwiZW5jVHlwZSIsImZyYW1lIiwiaFNwYWNlIiwiaGVhZGVycyIsImhlaWdodCIsImhyZWZMYW5nIiwiaHRtbEZvciIsImlkIiwiaXNNYXAiLCJpdGVtUHJvcCIsImxhYmVsIiwibGFuZyIsIm1heExlbmd0aCIsIm1lZGlhIiwibWV0aG9kIiwibXVsdGlwbGUiLCJuYW1lIiwibm9IcmVmIiwibm9TaGFkZSIsIm5vV3JhcCIsIm9wZW4iLCJwcm9tcHQiLCJyZWFkT25seSIsInJldiIsInJvd1NwYW4iLCJyb3dzIiwicnVsZXMiLCJzY29wZSIsInNlbGVjdGVkIiwic2hhcGUiLCJzaXplIiwic3BhbiIsInN0YXJ0Iiwic3VtbWFyeSIsInRhYkluZGV4IiwidGl0bGUiLCJ1c2VNYXAiLCJ2QWxpZ24iLCJ2YWx1ZSIsIndpZHRoIl19LGNsb2JiZXI6WyJhcmlhRGVzY3JpYmVkQnkiLCJhcmlhTGFiZWxsZWRCeSIsImlkIiwibmFtZSJdLGNsb2JiZXJQcmVmaXg6InVzZXItY29udGVudC0iLHByb3RvY29sczp7Y2l0ZTpbImh0dHAiLCJodHRwcyJdLGhyZWY6WyJodHRwIiwiaHR0cHMiLCJpcmMiLCJpcmNzIiwibWFpbHRvIiwieG1wcCJdLGxvbmdEZXNjOlsiaHR0cCIsImh0dHBzIl0sc3JjOlsiaHR0cCIsImh0dHBzIl19LHJlcXVpcmVkOntpbnB1dDp7ZGlzYWJsZWQ6ITAsdHlwZToiY2hlY2tib3gifX0sc3RyaXA6WyJzY3JpcHQiXSx0YWdOYW1lczpbImEiLCJiIiwiYmxvY2txdW90ZSIsImJyIiwiY29kZSIsImRkIiwiZGVsIiwiZGV0YWlscyIsImRpdiIsImRsIiwiZHQiLCJlbSIsImgxIiwiaDIiLCJoMyIsImg0IiwiaDUiLCJoNiIsImhyIiwiaSIsImltZyIsImlucHV0IiwiaW5zIiwia2JkIiwibGkiLCJvbCIsInAiLCJwaWN0dXJlIiwicHJlIiwicSIsInJwIiwicnQiLCJydWJ5IiwicyIsInNhbXAiLCJzZWN0aW9uIiwic291cmNlIiwic3BhbiIsInN0cmlrZSIsInN0cm9uZyIsInN1YiIsInN1bW1hcnkiLCJzdXAiLCJ0YWJsZSIsInRib2R5IiwidGQiLCJ0Zm9vdCIsInRoIiwidGhlYWQiLCJ0ciIsInR0IiwidWwiLCJ2YXIiXX19KTtmdW5jdGlvbiBycGUoZSx0KXtsZXQgcj17dHlwZToicm9vdCIsY2hpbGRyZW46W119LGE9e3NjaGVtYTp0P3suLi5odGUsLi4udH06aHRlLHN0YWNrOltdfSxpPWtNdChhLGUpO3JldHVybiBpJiYoQXJyYXkuaXNBcnJheShpKT9pLmxlbmd0aD09PTE/cj1pWzBdOnIuY2hpbGRyZW49aTpyPWkpLHJ9ZnVuY3Rpb24ga010KGUsdCl7aWYodCYmdHlwZW9mIHQ9PSJvYmplY3QiKXtsZXQgcj10O3N3aXRjaCh0eXBlb2Ygci50eXBlPT0ic3RyaW5nIj9yLnR5cGU6IiIpe2Nhc2UiY29tbWVudCI6cmV0dXJuIHdhYShlLHIpO2Nhc2UiZG9jdHlwZSI6cmV0dXJuIE1hYShlLHIpO2Nhc2UiZWxlbWVudCI6cmV0dXJuIGthYShlLHIpO2Nhc2Uicm9vdCI6cmV0dXJuIFNhYShlLHIpO2Nhc2UidGV4dCI6cmV0dXJuIHphYShlLHIpO2RlZmF1bHQ6fX19ZnVuY3Rpb24gd2FhKGUsdCl7aWYoZS5zY2hlbWEuYWxsb3dDb21tZW50cyl7bGV0IHI9dHlwZW9mIHQudmFsdWU9PSJzdHJpbmciP3QudmFsdWU6IiIsYT1yLmluZGV4T2YoIi0tPiIpLG89e3R5cGU6ImNvbW1lbnQiLHZhbHVlOmE8MD9yOnIuc2xpY2UoMCxhKX07cmV0dXJuIHdiKG8sdCksb319ZnVuY3Rpb24gTWFhKGUsdCl7aWYoZS5zY2hlbWEuYWxsb3dEb2N0eXBlcyl7bGV0IHI9e3R5cGU6ImRvY3R5cGUifTtyZXR1cm4gd2Iocix0KSxyfX1mdW5jdGlvbiBrYWEoZSx0KXtsZXQgcj10eXBlb2YgdC50YWdOYW1lPT0ic3RyaW5nIj90LnRhZ05hbWU6IiI7ZS5zdGFjay5wdXNoKHIpO2xldCBhPVNNdChlLHQuY2hpbGRyZW4pLGk9Q2FhKGUsdC5wcm9wZXJ0aWVzKTtlLnN0YWNrLnBvcCgpO2xldCBvPSExO2lmKHImJnIhPT0iKiImJighZS5zY2hlbWEudGFnTmFtZXN8fGUuc2NoZW1hLnRhZ05hbWVzLmluY2x1ZGVzKHIpKSYmKG89ITAsZS5zY2hlbWEuYW5jZXN0b3JzJiZZMC5jYWxsKGUuc2NoZW1hLmFuY2VzdG9ycyxyKSkpe2xldCBzPWUuc2NoZW1hLmFuY2VzdG9yc1tyXSxjPS0xO2ZvcihvPSExOysrYzxzLmxlbmd0aDspZS5zdGFjay5pbmNsdWRlcyhzW2NdKSYmKG89ITApfWlmKCFvKXJldHVybiBlLnNjaGVtYS5zdHJpcCYmIWUuc2NoZW1hLnN0cmlwLmluY2x1ZGVzKHIpP2E6dm9pZCAwO2xldCBuPXt0eXBlOiJlbGVtZW50Iix0YWdOYW1lOnIscHJvcGVydGllczppLGNoaWxkcmVuOmF9O3JldHVybiB3YihuLHQpLG59ZnVuY3Rpb24gU2FhKGUsdCl7bGV0IGE9e3R5cGU6InJvb3QiLGNoaWxkcmVuOlNNdChlLHQuY2hpbGRyZW4pfTtyZXR1cm4gd2IoYSx0KSxhfWZ1bmN0aW9uIHphYShlLHQpe2xldCBhPXt0eXBlOiJ0ZXh0Iix2YWx1ZTp0eXBlb2YgdC52YWx1ZT09InN0cmluZyI/dC52YWx1ZToiIn07cmV0dXJuIHdiKGEsdCksYX1mdW5jdGlvbiBTTXQoZSx0KXtsZXQgcj1bXTtpZihBcnJheS5pc0FycmF5KHQpKXtsZXQgYT10LGk9LTE7Zm9yKDsrK2k8YS5sZW5ndGg7KXtsZXQgbz1rTXQoZSxhW2ldKTtvJiYoQXJyYXkuaXNBcnJheShvKT9yLnB1c2goLi4ubyk6ci5wdXNoKG8pKX19cmV0dXJuIHJ9ZnVuY3Rpb24gQ2FhKGUsdCl7bGV0IHI9ZS5zdGFja1tlLnN0YWNrLmxlbmd0aC0xXSxhPWUuc2NoZW1hLmF0dHJpYnV0ZXMsaT1lLnNjaGVtYS5yZXF1aXJlZCxvPWEmJlkwLmNhbGwoYSxyKT9hW3JdOnZvaWQgMCxuPWEmJlkwLmNhbGwoYSwiKiIpP2FbIioiXTp2b2lkIDAscz10JiZ0eXBlb2YgdD09Im9iamVjdCI/dDp7fSxjPXt9LGQ7Zm9yKGQgaW4gcylpZihZMC5jYWxsKHMsZCkpe2xldCBmPXNbZF0sdT16TXQoZSxfTXQobyxkKSxkLGYpO3U9PW51bGwmJih1PXpNdChlLF9NdChuLGQpLGQsZikpLHUhPW51bGwmJihjW2RdPXUpfWlmKGkmJlkwLmNhbGwoaSxyKSl7bGV0IGY9aVtyXTtmb3IoZCBpbiBmKVkwLmNhbGwoZixkKSYmIVkwLmNhbGwoYyxkKSYmKGNbZF09ZltkXSl9cmV0dXJuIGN9ZnVuY3Rpb24gek10KGUsdCxyLGEpe3JldHVybiB0P0FycmF5LmlzQXJyYXkoYSk/X2FhKGUsdCxyLGEpOkNNdChlLHQscixhKTp2b2lkIDB9ZnVuY3Rpb24gX2FhKGUsdCxyLGEpe2xldCBpPS0xLG89W107Zm9yKDsrK2k8YS5sZW5ndGg7KXtsZXQgbj1DTXQoZSx0LHIsYVtpXSk7KHR5cGVvZiBuPT0ibnVtYmVyInx8dHlwZW9mIG49PSJzdHJpbmciKSYmby5wdXNoKG4pfXJldHVybiBvfWZ1bmN0aW9uIENNdChlLHQscixhKXtpZighKHR5cGVvZiBhIT0iYm9vbGVhbiImJnR5cGVvZiBhIT0ibnVtYmVyIiYmdHlwZW9mIGEhPSJzdHJpbmciKSYmVGFhKGUscixhKSl7aWYodHlwZW9mIHQ9PSJvYmplY3QiJiZ0Lmxlbmd0aD4xKXtsZXQgaT0hMSxvPTA7Zm9yKDsrK288dC5sZW5ndGg7KXtsZXQgbj10W29dO2lmKG4mJnR5cGVvZiBuPT0ib2JqZWN0IiYmImZsYWdzImluIG4pe2lmKG4udGVzdChTdHJpbmcoYSkpKXtpPSEwO2JyZWFrfX1lbHNlIGlmKG49PT1hKXtpPSEwO2JyZWFrfX1pZighaSlyZXR1cm59cmV0dXJuIGUuc2NoZW1hLmNsb2JiZXImJmUuc2NoZW1hLmNsb2JiZXJQcmVmaXgmJmUuc2NoZW1hLmNsb2JiZXIuaW5jbHVkZXMocik/ZS5zY2hlbWEuY2xvYmJlclByZWZpeCthOmF9fWZ1bmN0aW9uIFRhYShlLHQscil7bGV0IGE9ZS5zY2hlbWEucHJvdG9jb2xzJiZZMC5jYWxsKGUuc2NoZW1hLnByb3RvY29scyx0KT9lLnNjaGVtYS5wcm90b2NvbHNbdF06dm9pZCAwO2lmKCFhfHxhLmxlbmd0aD09PTApcmV0dXJuITA7bGV0IGk9U3RyaW5nKHIpLG89aS5pbmRleE9mKCI6Iiksbj1pLmluZGV4T2YoIj8iKSxzPWkuaW5kZXhPZigiIyIpLGM9aS5pbmRleE9mKCIvIik7aWYobzwwfHxjPi0xJiZvPmN8fG4+LTEmJm8+bnx8cz4tMSYmbz5zKXJldHVybiEwO2xldCBkPS0xO2Zvcig7KytkPGEubGVuZ3RoOyl7bGV0IGY9YVtkXTtpZihvPT09Zi5sZW5ndGgmJmkuc2xpY2UoMCxmLmxlbmd0aCk9PT1mKXJldHVybiEwfXJldHVybiExfWZ1bmN0aW9uIHdiKGUsdCl7bGV0IHI9eWIodCk7dC5kYXRhJiYoZS5kYXRhPUcwKHQuZGF0YSkpLHImJihlLnBvc2l0aW9uPXIpfWZ1bmN0aW9uIF9NdChlLHQpe2xldCByLGE9LTE7aWYoZSlmb3IoOysrYTxlLmxlbmd0aDspe2xldCBpPWVbYV0sbz10eXBlb2YgaT09InN0cmluZyI/aTppWzBdO2lmKG89PT10KXJldHVybiBpO289PT0iZGF0YSoiJiYocj1pKX1pZih0Lmxlbmd0aD40JiZ0LnNsaWNlKDAsNCkudG9Mb3dlckNhc2UoKT09PSJkYXRhIilyZXR1cm4gcn12YXIgWTAsVE10PWwoKCk9PntkdGUoKTtwdGUoKTt0cGUoKTtZMD17fS5oYXNPd25Qcm9wZXJ0eX0pO3ZhciBMTXQ9bCgoKT0+e1RNdCgpO3RwZSgpfSk7ZnVuY3Rpb24gRE10KGUsdCl7bGV0IHI9e3R5cGU6ImVsZW1lbnQiLHRhZ05hbWU6ImJsb2NrcXVvdGUiLHByb3BlcnRpZXM6e30sY2hpbGRyZW46ZS53cmFwKGUuYWxsKHQpLCEwKX07cmV0dXJuIGUucGF0Y2godCxyKSxlLmFwcGx5RGF0YSh0LHIpfXZhciBBTXQ9bCgoKT0+e30pO2Z1bmN0aW9uIEVNdChlLHQpe2xldCByPXt0eXBlOiJlbGVtZW50Iix0YWdOYW1lOiJiciIscHJvcGVydGllczp7fSxjaGlsZHJlbjpbXX07cmV0dXJuIGUucGF0Y2godCxyKSxbZS5hcHBseURhdGEodCxyKSx7dHlwZToidGV4dCIsdmFsdWU6YApgfV19dmFyICRNdD1sKCgpPT57fSk7ZnVuY3Rpb24gUE10KGUsdCl7bGV0IHI9dC52YWx1ZT90LnZhbHVlK2AKYDoiIixhPXt9LGk9dC5sYW5nP3QubGFuZy5zcGxpdCgvXHMrLyk6W107aS5sZW5ndGg+MCYmKGEuY2xhc3NOYW1lPVsibGFuZ3VhZ2UtIitpWzBdXSk7bGV0IG89e3R5cGU6ImVsZW1lbnQiLHRhZ05hbWU6ImNvZGUiLHByb3BlcnRpZXM6YSxjaGlsZHJlbjpbe3R5cGU6InRleHQiLHZhbHVlOnJ9XX07cmV0dXJuIHQubWV0YSYmKG8uZGF0YT17bWV0YTp0Lm1ldGF9KSxlLnBhdGNoKHQsbyksbz1lLmFwcGx5RGF0YSh0LG8pLG89e3R5cGU6ImVsZW1lbnQiLHRhZ05hbWU6InByZSIscHJvcGVydGllczp7fSxjaGlsZHJlbjpbb119LGUucGF0Y2godCxvKSxvfXZhciBJTXQ9bCgoKT0+e30pO2Z1bmN0aW9uIE5NdChlLHQpe2xldCByPXt0eXBlOiJlbGVtZW50Iix0YWdOYW1lOiJkZWwiLHByb3BlcnRpZXM6e30sY2hpbGRyZW46ZS5hbGwodCl9O3JldHVybiBlLnBhdGNoKHQsciksZS5hcHBseURhdGEodCxyKX12YXIgRk10PWwoKCk9Pnt9KTtmdW5jdGlvbiBPTXQoZSx0KXtsZXQgcj17dHlwZToiZWxlbWVudCIsdGFnTmFtZToiZW0iLHByb3BlcnRpZXM6e30sY2hpbGRyZW46ZS5hbGwodCl9O3JldHVybiBlLnBhdGNoKHQsciksZS5hcHBseURhdGEodCxyKX12YXIgUk10PWwoKCk9Pnt9KTtmdW5jdGlvbiBCTXQoZSx0KXtsZXQgcj10eXBlb2YgZS5vcHRpb25zLmNsb2JiZXJQcmVmaXg9PSJzdHJpbmciP2Uub3B0aW9ucy5jbG9iYmVyUHJlZml4OiJ1c2VyLWNvbnRlbnQtIixhPVN0cmluZyh0LmlkZW50aWZpZXIpLnRvVXBwZXJDYXNlKCksaT1ZbyhhLnRvTG93ZXJDYXNlKCkpLG89ZS5mb290bm90ZU9yZGVyLmluZGV4T2YoYSksbixzPWUuZm9vdG5vdGVDb3VudHMuZ2V0KGEpO3M9PT12b2lkIDA/KHM9MCxlLmZvb3Rub3RlT3JkZXIucHVzaChhKSxuPWUuZm9vdG5vdGVPcmRlci5sZW5ndGgpOm49bysxLHMrPTEsZS5mb290bm90ZUNvdW50cy5zZXQoYSxzKTtsZXQgYz17dHlwZToiZWxlbWVudCIsdGFnTmFtZToiYSIscHJvcGVydGllczp7aHJlZjoiIyIrcisiZm4tIitpLGlkOnIrImZucmVmLSIraSsocz4xPyItIitzOiIiKSxkYXRhRm9vdG5vdGVSZWY6ITAsYXJpYURlc2NyaWJlZEJ5OlsiZm9vdG5vdGUtbGFiZWwiXX0sY2hpbGRyZW46W3t0eXBlOiJ0ZXh0Iix2YWx1ZTpTdHJpbmcobil9XX07ZS5wYXRjaCh0LGMpO2xldCBkPXt0eXBlOiJlbGVtZW50Iix0YWdOYW1lOiJzdXAiLHByb3BlcnRpZXM6e30sY2hpbGRyZW46W2NdfTtyZXR1cm4gZS5wYXRjaCh0LGQpLGUuYXBwbHlEYXRhKHQsZCl9dmFyIEhNdD1sKCgpPT57azIoKX0pO2Z1bmN0aW9uIHFNdChlLHQpe2xldCByPXt0eXBlOiJlbGVtZW50Iix0YWdOYW1lOiJoIit0LmRlcHRoLHByb3BlcnRpZXM6e30sY2hpbGRyZW46ZS5hbGwodCl9O3JldHVybiBlLnBhdGNoKHQsciksZS5hcHBseURhdGEodCxyKX12YXIgak10PWwoKCk9Pnt9KTtmdW5jdGlvbiBWTXQoZSx0KXtpZihlLm9wdGlvbnMuYWxsb3dEYW5nZXJvdXNIdG1sKXtsZXQgcj17dHlwZToicmF3Iix2YWx1ZTp0LnZhbHVlfTtyZXR1cm4gZS5wYXRjaCh0LHIpLGUuYXBwbHlEYXRhKHQscil9fXZhciBVTXQ9bCgoKT0+e30pO2Z1bmN0aW9uIG10ZShlLHQpe2xldCByPXQucmVmZXJlbmNlVHlwZSxhPSJdIjtpZihyPT09ImNvbGxhcHNlZCI/YSs9IltdIjpyPT09ImZ1bGwiJiYoYSs9IlsiKyh0LmxhYmVsfHx0LmlkZW50aWZpZXIpKyJdIiksdC50eXBlPT09ImltYWdlUmVmZXJlbmNlIilyZXR1cm5be3R5cGU6InRleHQiLHZhbHVlOiIhWyIrdC5hbHQrYX1dO2xldCBpPWUuYWxsKHQpLG89aVswXTtvJiZvLnR5cGU9PT0idGV4dCI/by52YWx1ZT0iWyIrby52YWx1ZTppLnVuc2hpZnQoe3R5cGU6InRleHQiLHZhbHVlOiJbIn0pO2xldCBuPWlbaS5sZW5ndGgtMV07cmV0dXJuIG4mJm4udHlwZT09PSJ0ZXh0Ij9uLnZhbHVlKz1hOmkucHVzaCh7dHlwZToidGV4dCIsdmFsdWU6YX0pLGl9dmFyIGFwZT1sKCgpPT57fSk7ZnVuY3Rpb24gV010KGUsdCl7bGV0IHI9U3RyaW5nKHQuaWRlbnRpZmllcikudG9VcHBlckNhc2UoKSxhPWUuZGVmaW5pdGlvbkJ5SWQuZ2V0KHIpO2lmKCFhKXJldHVybiBtdGUoZSx0KTtsZXQgaT17c3JjOllvKGEudXJsfHwiIiksYWx0OnQuYWx0fTthLnRpdGxlIT09bnVsbCYmYS50aXRsZSE9PXZvaWQgMCYmKGkudGl0bGU9YS50aXRsZSk7bGV0IG89e3R5cGU6ImVsZW1lbnQiLHRhZ05hbWU6ImltZyIscHJvcGVydGllczppLGNoaWxkcmVuOltdfTtyZXR1cm4gZS5wYXRjaCh0LG8pLGUuYXBwbHlEYXRhKHQsbyl9dmFyIEdNdD1sKCgpPT57azIoKTthcGUoKX0pO2Z1bmN0aW9uIFlNdChlLHQpe2xldCByPXtzcmM6WW8odC51cmwpfTt0LmFsdCE9PW51bGwmJnQuYWx0IT09dm9pZCAwJiYoci5hbHQ9dC5hbHQpLHQudGl0bGUhPT1udWxsJiZ0LnRpdGxlIT09dm9pZCAwJiYoci50aXRsZT10LnRpdGxlKTtsZXQgYT17dHlwZToiZWxlbWVudCIsdGFnTmFtZToiaW1nIixwcm9wZXJ0aWVzOnIsY2hpbGRyZW46W119O3JldHVybiBlLnBhdGNoKHQsYSksZS5hcHBseURhdGEodCxhKX12YXIgWk10PWwoKCk9PntrMigpfSk7ZnVuY3Rpb24gWE10KGUsdCl7bGV0IHI9e3R5cGU6InRleHQiLHZhbHVlOnQudmFsdWUucmVwbGFjZSgvXHI/XG58XHIvZywiICIpfTtlLnBhdGNoKHQscik7bGV0IGE9e3R5cGU6ImVsZW1lbnQiLHRhZ05hbWU6ImNvZGUiLHByb3BlcnRpZXM6e30sY2hpbGRyZW46W3JdfTtyZXR1cm4gZS5wYXRjaCh0LGEpLGUuYXBwbHlEYXRhKHQsYSl9dmFyIFFNdD1sKCgpPT57fSk7ZnVuY3Rpb24gS010KGUsdCl7bGV0IHI9U3RyaW5nKHQuaWRlbnRpZmllcikudG9VcHBlckNhc2UoKSxhPWUuZGVmaW5pdGlvbkJ5SWQuZ2V0KHIpO2lmKCFhKXJldHVybiBtdGUoZSx0KTtsZXQgaT17aHJlZjpZbyhhLnVybHx8IiIpfTthLnRpdGxlIT09bnVsbCYmYS50aXRsZSE9PXZvaWQgMCYmKGkudGl0bGU9YS50aXRsZSk7bGV0IG89e3R5cGU6ImVsZW1lbnQiLHRhZ05hbWU6ImEiLHByb3BlcnRpZXM6aSxjaGlsZHJlbjplLmFsbCh0KX07cmV0dXJuIGUucGF0Y2godCxvKSxlLmFwcGx5RGF0YSh0LG8pfXZhciBKTXQ9bCgoKT0+e2syKCk7YXBlKCl9KTtmdW5jdGlvbiBla3QoZSx0KXtsZXQgcj17aHJlZjpZbyh0LnVybCl9O3QudGl0bGUhPT1udWxsJiZ0LnRpdGxlIT09dm9pZCAwJiYoci50aXRsZT10LnRpdGxlKTtsZXQgYT17dHlwZToiZWxlbWVudCIsdGFnTmFtZToiYSIscHJvcGVydGllczpyLGNoaWxkcmVuOmUuYWxsKHQpfTtyZXR1cm4gZS5wYXRjaCh0LGEpLGUuYXBwbHlEYXRhKHQsYSl9dmFyIHRrdD1sKCgpPT57azIoKX0pO2Z1bmN0aW9uIGFrdChlLHQscil7bGV0IGE9ZS5hbGwodCksaT1yP0xhYShyKTpya3QodCksbz17fSxuPVtdO2lmKHR5cGVvZiB0LmNoZWNrZWQ9PSJib29sZWFuIil7bGV0IGY9YVswXSx1O2YmJmYudHlwZT09PSJlbGVtZW50IiYmZi50YWdOYW1lPT09InAiP3U9ZjoodT17dHlwZToiZWxlbWVudCIsdGFnTmFtZToicCIscHJvcGVydGllczp7fSxjaGlsZHJlbjpbXX0sYS51bnNoaWZ0KHUpKSx1LmNoaWxkcmVuLmxlbmd0aD4wJiZ1LmNoaWxkcmVuLnVuc2hpZnQoe3R5cGU6InRleHQiLHZhbHVlOiIgIn0pLHUuY2hpbGRyZW4udW5zaGlmdCh7dHlwZToiZWxlbWVudCIsdGFnTmFtZToiaW5wdXQiLHByb3BlcnRpZXM6e3R5cGU6ImNoZWNrYm94IixjaGVja2VkOnQuY2hlY2tlZCxkaXNhYmxlZDohMH0sY2hpbGRyZW46W119KSxvLmNsYXNzTmFtZT1bInRhc2stbGlzdC1pdGVtIl19bGV0IHM9LTE7Zm9yKDsrK3M8YS5sZW5ndGg7KXtsZXQgZj1hW3NdOyhpfHxzIT09MHx8Zi50eXBlIT09ImVsZW1lbnQifHxmLnRhZ05hbWUhPT0icCIpJiZuLnB1c2goe3R5cGU6InRleHQiLHZhbHVlOmAKYH0pLGYudHlwZT09PSJlbGVtZW50IiYmZi50YWdOYW1lPT09InAiJiYhaT9uLnB1c2goLi4uZi5jaGlsZHJlbik6bi5wdXNoKGYpfWxldCBjPWFbYS5sZW5ndGgtMV07YyYmKGl8fGMudHlwZSE9PSJlbGVtZW50Inx8Yy50YWdOYW1lIT09InAiKSYmbi5wdXNoKHt0eXBlOiJ0ZXh0Iix2YWx1ZTpgCmB9KTtsZXQgZD17dHlwZToiZWxlbWVudCIsdGFnTmFtZToibGkiLHByb3BlcnRpZXM6byxjaGlsZHJlbjpufTtyZXR1cm4gZS5wYXRjaCh0LGQpLGUuYXBwbHlEYXRhKHQsZCl9ZnVuY3Rpb24gTGFhKGUpe2xldCB0PSExO2lmKGUudHlwZT09PSJsaXN0Iil7dD1lLnNwcmVhZHx8ITE7bGV0IHI9ZS5jaGlsZHJlbixhPS0xO2Zvcig7IXQmJisrYTxyLmxlbmd0aDspdD1ya3QoclthXSl9cmV0dXJuIHR9ZnVuY3Rpb24gcmt0KGUpe2xldCB0PWUuc3ByZWFkO3JldHVybiB0Pz9lLmNoaWxkcmVuLmxlbmd0aD4xfXZhciBpa3Q9bCgoKT0+e30pO2Z1bmN0aW9uIG9rdChlLHQpe2xldCByPXt9LGE9ZS5hbGwodCksaT0tMTtmb3IodHlwZW9mIHQuc3RhcnQ9PSJudW1iZXIiJiZ0LnN0YXJ0IT09MSYmKHIuc3RhcnQ9dC5zdGFydCk7KytpPGEubGVuZ3RoOyl7bGV0IG49YVtpXTtpZihuLnR5cGU9PT0iZWxlbWVudCImJm4udGFnTmFtZT09PSJsaSImJm4ucHJvcGVydGllcyYmQXJyYXkuaXNBcnJheShuLnByb3BlcnRpZXMuY2xhc3NOYW1lKSYmbi5wcm9wZXJ0aWVzLmNsYXNzTmFtZS5pbmNsdWRlcygidGFzay1saXN0LWl0ZW0iKSl7ci5jbGFzc05hbWU9WyJjb250YWlucy10YXNrLWxpc3QiXTticmVha319bGV0IG89e3R5cGU6ImVsZW1lbnQiLHRhZ05hbWU6dC5vcmRlcmVkPyJvbCI6InVsIixwcm9wZXJ0aWVzOnIsY2hpbGRyZW46ZS53cmFwKGEsITApfTtyZXR1cm4gZS5wYXRjaCh0LG8pLGUuYXBwbHlEYXRhKHQsbyl9dmFyIG5rdD1sKCgpPT57fSk7ZnVuY3Rpb24gc2t0KGUsdCl7bGV0IHI9e3R5cGU6ImVsZW1lbnQiLHRhZ05hbWU6InAiLHByb3BlcnRpZXM6e30sY2hpbGRyZW46ZS5hbGwodCl9O3JldHVybiBlLnBhdGNoKHQsciksZS5hcHBseURhdGEodCxyKX12YXIgbGt0PWwoKCk9Pnt9KTtmdW5jdGlvbiBja3QoZSx0KXtsZXQgcj17dHlwZToicm9vdCIsY2hpbGRyZW46ZS53cmFwKGUuYWxsKHQpKX07cmV0dXJuIGUucGF0Y2godCxyKSxlLmFwcGx5RGF0YSh0LHIpfXZhciBka3Q9bCgoKT0+e30pO2Z1bmN0aW9uIHVrdChlLHQpe2xldCByPXt0eXBlOiJlbGVtZW50Iix0YWdOYW1lOiJzdHJvbmciLHByb3BlcnRpZXM6e30sY2hpbGRyZW46ZS5hbGwodCl9O3JldHVybiBlLnBhdGNoKHQsciksZS5hcHBseURhdGEodCxyKX12YXIgZmt0PWwoKCk9Pnt9KTtmdW5jdGlvbiBwa3QoZSx0KXtsZXQgcj1lLmFsbCh0KSxhPXIuc2hpZnQoKSxpPVtdO2lmKGEpe2xldCBuPXt0eXBlOiJlbGVtZW50Iix0YWdOYW1lOiJ0aGVhZCIscHJvcGVydGllczp7fSxjaGlsZHJlbjplLndyYXAoW2FdLCEwKX07ZS5wYXRjaCh0LmNoaWxkcmVuWzBdLG4pLGkucHVzaChuKX1pZihyLmxlbmd0aD4wKXtsZXQgbj17dHlwZToiZWxlbWVudCIsdGFnTmFtZToidGJvZHkiLHByb3BlcnRpZXM6e30sY2hpbGRyZW46ZS53cmFwKHIsITApfSxzPWZ0ZSh0LmNoaWxkcmVuWzFdKSxjPXV0ZSh0LmNoaWxkcmVuW3QuY2hpbGRyZW4ubGVuZ3RoLTFdKTtzJiZjJiYobi5wb3NpdGlvbj17c3RhcnQ6cyxlbmQ6Y30pLGkucHVzaChuKX1sZXQgbz17dHlwZToiZWxlbWVudCIsdGFnTmFtZToidGFibGUiLHByb3BlcnRpZXM6e30sY2hpbGRyZW46ZS53cmFwKGksITApfTtyZXR1cm4gZS5wYXRjaCh0LG8pLGUuYXBwbHlEYXRhKHQsbyl9dmFyIGhrdD1sKCgpPT57cHRlKCl9KTtmdW5jdGlvbiBta3QoZSx0LHIpe2xldCBhPXI/ci5jaGlsZHJlbjp2b2lkIDAsbz0oYT9hLmluZGV4T2YodCk6MSk9PT0wPyJ0aCI6InRkIixuPXImJnIudHlwZT09PSJ0YWJsZSI/ci5hbGlnbjp2b2lkIDAscz1uP24ubGVuZ3RoOnQuY2hpbGRyZW4ubGVuZ3RoLGM9LTEsZD1bXTtmb3IoOysrYzxzOyl7bGV0IHU9dC5jaGlsZHJlbltjXSxwPXt9LGg9bj9uW2NdOnZvaWQgMDtoJiYocC5hbGlnbj1oKTtsZXQgYj17dHlwZToiZWxlbWVudCIsdGFnTmFtZTpvLHByb3BlcnRpZXM6cCxjaGlsZHJlbjpbXX07dSYmKGIuY2hpbGRyZW49ZS5hbGwodSksZS5wYXRjaCh1LGIpLGI9ZS5hcHBseURhdGEodSxiKSksZC5wdXNoKGIpfWxldCBmPXt0eXBlOiJlbGVtZW50Iix0YWdOYW1lOiJ0ciIscHJvcGVydGllczp7fSxjaGlsZHJlbjplLndyYXAoZCwhMCl9O3JldHVybiBlLnBhdGNoKHQsZiksZS5hcHBseURhdGEodCxmKX12YXIgZ2t0PWwoKCk9Pnt9KTtmdW5jdGlvbiB4a3QoZSx0KXtsZXQgcj17dHlwZToiZWxlbWVudCIsdGFnTmFtZToidGQiLHByb3BlcnRpZXM6e30sY2hpbGRyZW46ZS5hbGwodCl9O3JldHVybiBlLnBhdGNoKHQsciksZS5hcHBseURhdGEodCxyKX12YXIgYmt0PWwoKCk9Pnt9KTtmdW5jdGlvbiB5a3QoZSl7bGV0IHQ9U3RyaW5nKGUpLHI9L1xyP1xufFxyL2csYT1yLmV4ZWModCksaT0wLG89W107Zm9yKDthOylvLnB1c2godmt0KHQuc2xpY2UoaSxhLmluZGV4KSxpPjAsITApLGFbMF0pLGk9YS5pbmRleCthWzBdLmxlbmd0aCxhPXIuZXhlYyh0KTtyZXR1cm4gby5wdXNoKHZrdCh0LnNsaWNlKGkpLGk+MCwhMSkpLG8uam9pbigiIil9ZnVuY3Rpb24gdmt0KGUsdCxyKXtsZXQgYT0wLGk9ZS5sZW5ndGg7aWYodCl7bGV0IG89ZS5jb2RlUG9pbnRBdChhKTtmb3IoO289PT05fHxvPT09MzI7KWErKyxvPWUuY29kZVBvaW50QXQoYSl9aWYocil7bGV0IG89ZS5jb2RlUG9pbnRBdChpLTEpO2Zvcig7bz09PTl8fG89PT0zMjspaS0tLG89ZS5jb2RlUG9pbnRBdChpLTEpfXJldHVybiBpPmE/ZS5zbGljZShhLGkpOiIifXZhciBDaGksX2hpLHdrdD1sKCgpPT57Q2hpPTksX2hpPTMyfSk7ZnVuY3Rpb24gTWt0KGUsdCl7bGV0IHI9e3R5cGU6InRleHQiLHZhbHVlOnlrdChTdHJpbmcodC52YWx1ZSkpfTtyZXR1cm4gZS5wYXRjaCh0LHIpLGUuYXBwbHlEYXRhKHQscil9dmFyIGtrdD1sKCgpPT57d2t0KCl9KTtmdW5jdGlvbiBTa3QoZSx0KXtsZXQgcj17dHlwZToiZWxlbWVudCIsdGFnTmFtZToiaHIiLHByb3BlcnRpZXM6e30sY2hpbGRyZW46W119O3JldHVybiBlLnBhdGNoKHQsciksZS5hcHBseURhdGEodCxyKX12YXIgemt0PWwoKCk9Pnt9KTtmdW5jdGlvbiBndGUoKXt9dmFyIGlwZSxvcGU9bCgoKT0+e0FNdCgpOyRNdCgpO0lNdCgpO0ZNdCgpO1JNdCgpO0hNdCgpO2pNdCgpO1VNdCgpO0dNdCgpO1pNdCgpO1FNdCgpO0pNdCgpO3RrdCgpO2lrdCgpO25rdCgpO2xrdCgpO2RrdCgpO2ZrdCgpO2hrdCgpO2drdCgpO2JrdCgpO2trdCgpO3prdCgpO2lwZT17YmxvY2txdW90ZTpETXQsYnJlYWs6RU10LGNvZGU6UE10LGRlbGV0ZTpOTXQsZW1waGFzaXM6T010LGZvb3Rub3RlUmVmZXJlbmNlOkJNdCxoZWFkaW5nOnFNdCxodG1sOlZNdCxpbWFnZVJlZmVyZW5jZTpXTXQsaW1hZ2U6WU10LGlubGluZUNvZGU6WE10LGxpbmtSZWZlcmVuY2U6S010LGxpbms6ZWt0LGxpc3RJdGVtOmFrdCxsaXN0Om9rdCxwYXJhZ3JhcGg6c2t0LHJvb3Q6Y2t0LHN0cm9uZzp1a3QsdGFibGU6cGt0LHRhYmxlQ2VsbDp4a3QsdGFibGVSb3c6bWt0LHRleHQ6TWt0LHRoZW1hdGljQnJlYWs6U2t0LHRvbWw6Z3RlLHlhbWw6Z3RlLGRlZmluaXRpb246Z3RlLGZvb3Rub3RlRGVmaW5pdGlvbjpndGV9fSk7ZnVuY3Rpb24gQ2t0KGUsdCl7bGV0IHI9W3t0eXBlOiJ0ZXh0Iix2YWx1ZToiXHUyMUE5In1dO3JldHVybiB0PjEmJnIucHVzaCh7dHlwZToiZWxlbWVudCIsdGFnTmFtZToic3VwIixwcm9wZXJ0aWVzOnt9LGNoaWxkcmVuOlt7dHlwZToidGV4dCIsdmFsdWU6U3RyaW5nKHQpfV19KSxyfWZ1bmN0aW9uIF9rdChlLHQpe3JldHVybiJCYWNrIHRvIHJlZmVyZW5jZSAiKyhlKzEpKyh0PjE/Ii0iK3Q6IiIpfWZ1bmN0aW9uIFRrdChlKXtsZXQgdD10eXBlb2YgZS5vcHRpb25zLmNsb2JiZXJQcmVmaXg9PSJzdHJpbmciP2Uub3B0aW9ucy5jbG9iYmVyUHJlZml4OiJ1c2VyLWNvbnRlbnQtIixyPWUub3B0aW9ucy5mb290bm90ZUJhY2tDb250ZW50fHxDa3QsYT1lLm9wdGlvbnMuZm9vdG5vdGVCYWNrTGFiZWx8fF9rdCxpPWUub3B0aW9ucy5mb290bm90ZUxhYmVsfHwiRm9vdG5vdGVzIixvPWUub3B0aW9ucy5mb290bm90ZUxhYmVsVGFnTmFtZXx8ImgyIixuPWUub3B0aW9ucy5mb290bm90ZUxhYmVsUHJvcGVydGllc3x8e2NsYXNzTmFtZTpbInNyLW9ubHkiXX0scz1bXSxjPS0xO2Zvcig7KytjPGUuZm9vdG5vdGVPcmRlci5sZW5ndGg7KXtsZXQgZD1lLmZvb3Rub3RlQnlJZC5nZXQoZS5mb290bm90ZU9yZGVyW2NdKTtpZighZCljb250aW51ZTtsZXQgZj1lLmFsbChkKSx1PVN0cmluZyhkLmlkZW50aWZpZXIpLnRvVXBwZXJDYXNlKCkscD1Zbyh1LnRvTG93ZXJDYXNlKCkpLGg9MCxiPVtdLHg9ZS5mb290bm90ZUNvdW50cy5nZXQodSk7Zm9yKDt4IT09dm9pZCAwJiYrK2g8PXg7KXtiLmxlbmd0aD4wJiZiLnB1c2goe3R5cGU6InRleHQiLHZhbHVlOiIgIn0pO2xldCB3PXR5cGVvZiByPT0ic3RyaW5nIj9yOnIoYyxoKTt0eXBlb2Ygdz09InN0cmluZyImJih3PXt0eXBlOiJ0ZXh0Iix2YWx1ZTp3fSksYi5wdXNoKHt0eXBlOiJlbGVtZW50Iix0YWdOYW1lOiJhIixwcm9wZXJ0aWVzOntocmVmOiIjIit0KyJmbnJlZi0iK3ArKGg+MT8iLSIraDoiIiksZGF0YUZvb3Rub3RlQmFja3JlZjoiIixhcmlhTGFiZWw6dHlwZW9mIGE9PSJzdHJpbmciP2E6YShjLGgpLGNsYXNzTmFtZTpbImRhdGEtZm9vdG5vdGUtYmFja3JlZiJdfSxjaGlsZHJlbjpBcnJheS5pc0FycmF5KHcpP3c6W3ddfSl9bGV0IGc9ZltmLmxlbmd0aC0xXTtpZihnJiZnLnR5cGU9PT0iZWxlbWVudCImJmcudGFnTmFtZT09PSJwIil7bGV0IHc9Zy5jaGlsZHJlbltnLmNoaWxkcmVuLmxlbmd0aC0xXTt3JiZ3LnR5cGU9PT0idGV4dCI/dy52YWx1ZSs9IiAiOmcuY2hpbGRyZW4ucHVzaCh7dHlwZToidGV4dCIsdmFsdWU6IiAifSksZy5jaGlsZHJlbi5wdXNoKC4uLmIpfWVsc2UgZi5wdXNoKC4uLmIpO2xldCB2PXt0eXBlOiJlbGVtZW50Iix0YWdOYW1lOiJsaSIscHJvcGVydGllczp7aWQ6dCsiZm4tIitwfSxjaGlsZHJlbjplLndyYXAoZiwhMCl9O2UucGF0Y2goZCx2KSxzLnB1c2godil9aWYocy5sZW5ndGghPT0wKXJldHVybnt0eXBlOiJlbGVtZW50Iix0YWdOYW1lOiJzZWN0aW9uIixwcm9wZXJ0aWVzOntkYXRhRm9vdG5vdGVzOiEwLGNsYXNzTmFtZTpbImZvb3Rub3RlcyJdfSxjaGlsZHJlbjpbe3R5cGU6ImVsZW1lbnQiLHRhZ05hbWU6byxwcm9wZXJ0aWVzOnsuLi5HMChuKSxpZDoiZm9vdG5vdGUtbGFiZWwifSxjaGlsZHJlbjpbe3R5cGU6InRleHQiLHZhbHVlOml9XX0se3R5cGU6InRleHQiLHZhbHVlOmAKYH0se3R5cGU6ImVsZW1lbnQiLHRhZ05hbWU6Im9sIixwcm9wZXJ0aWVzOnt9LGNoaWxkcmVuOmUud3JhcChzLCEwKX0se3R5cGU6InRleHQiLHZhbHVlOmAKYH1dfX12YXIgbnBlPWwoKCk9PntkdGUoKTtrMigpfSk7ZnVuY3Rpb24gRGt0KGUsdCl7bGV0IHI9dHx8RGFhLGE9bmV3IE1hcCxpPW5ldyBNYXAsbz1uZXcgTWFwLG49ey4uLmlwZSwuLi5yLmhhbmRsZXJzfSxzPXthbGw6ZCxhcHBseURhdGE6RWFhLGRlZmluaXRpb25CeUlkOmEsZm9vdG5vdGVCeUlkOmksZm9vdG5vdGVDb3VudHM6byxmb290bm90ZU9yZGVyOltdLGhhbmRsZXJzOm4sb25lOmMsb3B0aW9uczpyLHBhdGNoOkFhYSx3cmFwOlBhYX07cmV0dXJuIG9iKGUsZnVuY3Rpb24oZil7aWYoZi50eXBlPT09ImRlZmluaXRpb24ifHxmLnR5cGU9PT0iZm9vdG5vdGVEZWZpbml0aW9uIil7bGV0IHU9Zi50eXBlPT09ImRlZmluaXRpb24iP2E6aSxwPVN0cmluZyhmLmlkZW50aWZpZXIpLnRvVXBwZXJDYXNlKCk7dS5oYXMocCl8fHUuc2V0KHAsZil9fSkscztmdW5jdGlvbiBjKGYsdSl7bGV0IHA9Zi50eXBlLGg9cy5oYW5kbGVyc1twXTtpZihzcGUuY2FsbChzLmhhbmRsZXJzLHApJiZoKXJldHVybiBoKHMsZix1KTtpZihzLm9wdGlvbnMucGFzc1Rocm91Z2gmJnMub3B0aW9ucy5wYXNzVGhyb3VnaC5pbmNsdWRlcyhwKSl7aWYoImNoaWxkcmVuImluIGYpe2xldHtjaGlsZHJlbjp4LC4uLmd9PWYsdj1HMChnKTtyZXR1cm4gdi5jaGlsZHJlbj1zLmFsbChmKSx2fXJldHVybiBHMChmKX1yZXR1cm4ocy5vcHRpb25zLnVua25vd25IYW5kbGVyfHwkYWEpKHMsZix1KX1mdW5jdGlvbiBkKGYpe2xldCB1PVtdO2lmKCJjaGlsZHJlbiJpbiBmKXtsZXQgcD1mLmNoaWxkcmVuLGg9LTE7Zm9yKDsrK2g8cC5sZW5ndGg7KXtsZXQgYj1zLm9uZShwW2hdLGYpO2lmKGIpe2lmKGgmJnBbaC0xXS50eXBlPT09ImJyZWFrIiYmKCFBcnJheS5pc0FycmF5KGIpJiZiLnR5cGU9PT0idGV4dCImJihiLnZhbHVlPUxrdChiLnZhbHVlKSksIUFycmF5LmlzQXJyYXkoYikmJmIudHlwZT09PSJlbGVtZW50Iikpe2xldCB4PWIuY2hpbGRyZW5bMF07eCYmeC50eXBlPT09InRleHQiJiYoeC52YWx1ZT1Ma3QoeC52YWx1ZSkpfUFycmF5LmlzQXJyYXkoYik/dS5wdXNoKC4uLmIpOnUucHVzaChiKX19fXJldHVybiB1fX1mdW5jdGlvbiBBYWEoZSx0KXtlLnBvc2l0aW9uJiYodC5wb3NpdGlvbj15YihlKSl9ZnVuY3Rpb24gRWFhKGUsdCl7bGV0IHI9dDtpZihlJiZlLmRhdGEpe2xldCBhPWUuZGF0YS5oTmFtZSxpPWUuZGF0YS5oQ2hpbGRyZW4sbz1lLmRhdGEuaFByb3BlcnRpZXM7aWYodHlwZW9mIGE9PSJzdHJpbmciKWlmKHIudHlwZT09PSJlbGVtZW50IilyLnRhZ05hbWU9YTtlbHNle2xldCBuPSJjaGlsZHJlbiJpbiByP3IuY2hpbGRyZW46W3JdO3I9e3R5cGU6ImVsZW1lbnQiLHRhZ05hbWU6YSxwcm9wZXJ0aWVzOnt9LGNoaWxkcmVuOm59fXIudHlwZT09PSJlbGVtZW50IiYmbyYmT2JqZWN0LmFzc2lnbihyLnByb3BlcnRpZXMsRzAobykpLCJjaGlsZHJlbiJpbiByJiZyLmNoaWxkcmVuJiZpIT09bnVsbCYmaSE9PXZvaWQgMCYmKHIuY2hpbGRyZW49aSl9cmV0dXJuIHJ9ZnVuY3Rpb24gJGFhKGUsdCl7bGV0IHI9dC5kYXRhfHx7fSxhPSJ2YWx1ZSJpbiB0JiYhKHNwZS5jYWxsKHIsImhQcm9wZXJ0aWVzIil8fHNwZS5jYWxsKHIsImhDaGlsZHJlbiIpKT97dHlwZToidGV4dCIsdmFsdWU6dC52YWx1ZX06e3R5cGU6ImVsZW1lbnQiLHRhZ05hbWU6ImRpdiIscHJvcGVydGllczp7fSxjaGlsZHJlbjplLmFsbCh0KX07cmV0dXJuIGUucGF0Y2godCxhKSxlLmFwcGx5RGF0YSh0LGEpfWZ1bmN0aW9uIFBhYShlLHQpe2xldCByPVtdLGE9LTE7Zm9yKHQmJnIucHVzaCh7dHlwZToidGV4dCIsdmFsdWU6YApgfSk7KythPGUubGVuZ3RoOylhJiZyLnB1c2goe3R5cGU6InRleHQiLHZhbHVlOmAKYH0pLHIucHVzaChlW2FdKTtyZXR1cm4gdCYmZS5sZW5ndGg+MCYmci5wdXNoKHt0eXBlOiJ0ZXh0Iix2YWx1ZTpgCmB9KSxyfWZ1bmN0aW9uIExrdChlKXtsZXQgdD0wLHI9ZS5jaGFyQ29kZUF0KHQpO2Zvcig7cj09PTl8fHI9PT0zMjspdCsrLHI9ZS5jaGFyQ29kZUF0KHQpO3JldHVybiBlLnNsaWNlKHQpfXZhciBzcGUsRGFhLEFrdD1sKCgpPT57ZHRlKCk7RWZlKCk7cHRlKCk7b3BlKCk7c3BlPXt9Lmhhc093blByb3BlcnR5LERhYT17fX0pO2Z1bmN0aW9uIGxwZShlLHQpe2xldCByPURrdChlLHQpLGE9ci5vbmUoZSx2b2lkIDApLGk9VGt0KHIpLG89QXJyYXkuaXNBcnJheShhKT97dHlwZToicm9vdCIsY2hpbGRyZW46YX06YXx8e3R5cGU6InJvb3QiLGNoaWxkcmVuOltdfTtyZXR1cm4gaSYmKCJjaGlsZHJlbiJpbiBvLG8uY2hpbGRyZW4ucHVzaCh7dHlwZToidGV4dCIsdmFsdWU6YApgfSxpKSksb312YXIgRWt0PWwoKCk9PntCMCgpO25wZSgpO0FrdCgpfSk7dmFyICRrdD1sKCgpPT57b3BlKCk7RWt0KCk7bnBlKCl9KTt2YXIgUGt0LElrdD1sKCgpPT57UGt0PVsiYXJlYSIsImJhc2UiLCJiYXNlZm9udCIsImJnc291bmQiLCJiciIsImNvbCIsImNvbW1hbmQiLCJlbWJlZCIsImZyYW1lIiwiaHIiLCJpbWFnZSIsImltZyIsImlucHV0Iiwia2V5Z2VuIiwibGluayIsIm1ldGEiLCJwYXJhbSIsInNvdXJjZSIsInRyYWNrIiwid2JyIl19KTt2YXIgVmwsY3BlPWwoKCk9PntWbD1jbGFzc3tjb25zdHJ1Y3Rvcih0LHIsYSl7dGhpcy5ub3JtYWw9cix0aGlzLnByb3BlcnR5PXQsYSYmKHRoaXMuc3BhY2U9YSl9fTtWbC5wcm90b3R5cGUubm9ybWFsPXt9LFZsLnByb3RvdHlwZS5wcm9wZXJ0eT17fSxWbC5wcm90b3R5cGUuc3BhY2U9dm9pZCAwfSk7ZnVuY3Rpb24gZHBlKGUsdCl7bGV0IHI9e30sYT17fTtmb3IobGV0IGkgb2YgZSlPYmplY3QuYXNzaWduKHIsaS5wcm9wZXJ0eSksT2JqZWN0LmFzc2lnbihhLGkubm9ybWFsKTtyZXR1cm4gbmV3IFZsKHIsYSx0KX12YXIgTmt0PWwoKCk9PntjcGUoKX0pO2Z1bmN0aW9uIFRtKGUpe3JldHVybiBlLnRvTG93ZXJDYXNlKCl9dmFyIHh0ZT1sKCgpPT57fSk7dmFyIFdpLHVwZT1sKCgpPT57V2k9Y2xhc3N7Y29uc3RydWN0b3IodCxyKXt0aGlzLmF0dHJpYnV0ZT1yLHRoaXMucHJvcGVydHk9dH19O1dpLnByb3RvdHlwZS5hdHRyaWJ1dGU9IiIsV2kucHJvdG90eXBlLmJvb2xlYW5pc2g9ITEsV2kucHJvdG90eXBlLmJvb2xlYW49ITEsV2kucHJvdG90eXBlLmNvbW1hT3JTcGFjZVNlcGFyYXRlZD0hMSxXaS5wcm90b3R5cGUuY29tbWFTZXBhcmF0ZWQ9ITEsV2kucHJvdG90eXBlLmRlZmluZWQ9ITEsV2kucHJvdG90eXBlLm11c3RVc2VQcm9wZXJ0eT0hMSxXaS5wcm90b3R5cGUubnVtYmVyPSExLFdpLnByb3RvdHlwZS5vdmVybG9hZGVkQm9vbGVhbj0hMSxXaS5wcm90b3R5cGUucHJvcGVydHk9IiIsV2kucHJvdG90eXBlLnNwYWNlU2VwYXJhdGVkPSExLFdpLnByb3RvdHlwZS5zcGFjZT12b2lkIDB9KTt2YXIgTWI9e307cWUoTWIse2Jvb2xlYW46KCk9PkJ0LGJvb2xlYW5pc2g6KCk9PmphLGNvbW1hT3JTcGFjZVNlcGFyYXRlZDooKT0+RG8sY29tbWFTZXBhcmF0ZWQ6KCk9PlowLG51bWJlcjooKT0+WWUsb3ZlcmxvYWRlZEJvb2xlYW46KCk9PmJ0ZSxzcGFjZVNlcGFyYXRlZDooKT0+cmF9KTtmdW5jdGlvbiAkZCgpe3JldHVybiAyKiorK0lhYX12YXIgSWFhLEJ0LGphLGJ0ZSxZZSxyYSxaMCxEbyxrYj1sKCgpPT57SWFhPTAsQnQ9JGQoKSxqYT0kZCgpLGJ0ZT0kZCgpLFllPSRkKCkscmE9JGQoKSxaMD0kZCgpLERvPSRkKCl9KTtmdW5jdGlvbiBGa3QoZSx0LHIpe3ImJihlW3RdPXIpfXZhciBmcGUsUGQscHBlPWwoKCk9Pnt1cGUoKTtrYigpO2ZwZT1PYmplY3Qua2V5cyhNYiksUGQ9Y2xhc3MgZXh0ZW5kcyBXaXtjb25zdHJ1Y3Rvcih0LHIsYSxpKXtsZXQgbz0tMTtpZihzdXBlcih0LHIpLEZrdCh0aGlzLCJzcGFjZSIsaSksdHlwZW9mIGE9PSJudW1iZXIiKWZvcig7KytvPGZwZS5sZW5ndGg7KXtsZXQgbj1mcGVbb107Rmt0KHRoaXMsZnBlW29dLChhJk1iW25dKT09PU1iW25dKX19fTtQZC5wcm90b3R5cGUuZGVmaW5lZD0hMH0pO2Z1bmN0aW9uIGtuKGUpe2xldCB0PXt9LHI9e307Zm9yKGxldFthLGldb2YgT2JqZWN0LmVudHJpZXMoZS5wcm9wZXJ0aWVzKSl7bGV0IG89bmV3IFBkKGEsZS50cmFuc2Zvcm0oZS5hdHRyaWJ1dGVzfHx7fSxhKSxpLGUuc3BhY2UpO2UubXVzdFVzZVByb3BlcnR5JiZlLm11c3RVc2VQcm9wZXJ0eS5pbmNsdWRlcyhhKSYmKG8ubXVzdFVzZVByb3BlcnR5PSEwKSx0W2FdPW8scltUbShhKV09YSxyW1RtKG8uYXR0cmlidXRlKV09YX1yZXR1cm4gbmV3IFZsKHQscixlLnNwYWNlKX12YXIgSWQ9bCgoKT0+e3h0ZSgpO3BwZSgpO2NwZSgpfSk7dmFyIGhwZSxPa3Q9bCgoKT0+e0lkKCk7a2IoKTtocGU9a24oe3Byb3BlcnRpZXM6e2FyaWFBY3RpdmVEZXNjZW5kYW50Om51bGwsYXJpYUF0b21pYzpqYSxhcmlhQXV0b0NvbXBsZXRlOm51bGwsYXJpYUJ1c3k6amEsYXJpYUNoZWNrZWQ6amEsYXJpYUNvbENvdW50OlllLGFyaWFDb2xJbmRleDpZZSxhcmlhQ29sU3BhbjpZZSxhcmlhQ29udHJvbHM6cmEsYXJpYUN1cnJlbnQ6bnVsbCxhcmlhRGVzY3JpYmVkQnk6cmEsYXJpYURldGFpbHM6bnVsbCxhcmlhRGlzYWJsZWQ6amEsYXJpYURyb3BFZmZlY3Q6cmEsYXJpYUVycm9yTWVzc2FnZTpudWxsLGFyaWFFeHBhbmRlZDpqYSxhcmlhRmxvd1RvOnJhLGFyaWFHcmFiYmVkOmphLGFyaWFIYXNQb3B1cDpudWxsLGFyaWFIaWRkZW46amEsYXJpYUludmFsaWQ6bnVsbCxhcmlhS2V5U2hvcnRjdXRzOm51bGwsYXJpYUxhYmVsOm51bGwsYXJpYUxhYmVsbGVkQnk6cmEsYXJpYUxldmVsOlllLGFyaWFMaXZlOm51bGwsYXJpYU1vZGFsOmphLGFyaWFNdWx0aUxpbmU6amEsYXJpYU11bHRpU2VsZWN0YWJsZTpqYSxhcmlhT3JpZW50YXRpb246bnVsbCxhcmlhT3duczpyYSxhcmlhUGxhY2Vob2xkZXI6bnVsbCxhcmlhUG9zSW5TZXQ6WWUsYXJpYVByZXNzZWQ6amEsYXJpYVJlYWRPbmx5OmphLGFyaWFSZWxldmFudDpudWxsLGFyaWFSZXF1aXJlZDpqYSxhcmlhUm9sZURlc2NyaXB0aW9uOnJhLGFyaWFSb3dDb3VudDpZZSxhcmlhUm93SW5kZXg6WWUsYXJpYVJvd1NwYW46WWUsYXJpYVNlbGVjdGVkOmphLGFyaWFTZXRTaXplOlllLGFyaWFTb3J0Om51bGwsYXJpYVZhbHVlTWF4OlllLGFyaWFWYWx1ZU1pbjpZZSxhcmlhVmFsdWVOb3c6WWUsYXJpYVZhbHVlVGV4dDpudWxsLHJvbGU6bnVsbH0sdHJhbnNmb3JtKGUsdCl7cmV0dXJuIHQ9PT0icm9sZSI/dDoiYXJpYS0iK3Quc2xpY2UoNCkudG9Mb3dlckNhc2UoKX19KX0pO2Z1bmN0aW9uIHZ0ZShlLHQpe3JldHVybiB0IGluIGU/ZVt0XTp0fXZhciBtcGU9bCgoKT0+e30pO2Z1bmN0aW9uIHl0ZShlLHQpe3JldHVybiB2dGUoZSx0LnRvTG93ZXJDYXNlKCkpfXZhciBncGU9bCgoKT0+e21wZSgpfSk7dmFyIFJrdCxCa3Q9bCgoKT0+e2dwZSgpO0lkKCk7a2IoKTtSa3Q9a24oe2F0dHJpYnV0ZXM6e2FjY2VwdGNoYXJzZXQ6ImFjY2VwdC1jaGFyc2V0IixjbGFzc25hbWU6ImNsYXNzIixodG1sZm9yOiJmb3IiLGh0dHBlcXVpdjoiaHR0cC1lcXVpdiJ9LG11c3RVc2VQcm9wZXJ0eTpbImNoZWNrZWQiLCJtdWx0aXBsZSIsIm11dGVkIiwic2VsZWN0ZWQiXSxwcm9wZXJ0aWVzOnthYmJyOm51bGwsYWNjZXB0OlowLGFjY2VwdENoYXJzZXQ6cmEsYWNjZXNzS2V5OnJhLGFjdGlvbjpudWxsLGFsbG93Om51bGwsYWxsb3dGdWxsU2NyZWVuOkJ0LGFsbG93UGF5bWVudFJlcXVlc3Q6QnQsYWxsb3dVc2VyTWVkaWE6QnQsYWx0Om51bGwsYXM6bnVsbCxhc3luYzpCdCxhdXRvQ2FwaXRhbGl6ZTpudWxsLGF1dG9Db21wbGV0ZTpyYSxhdXRvRm9jdXM6QnQsYXV0b1BsYXk6QnQsYmxvY2tpbmc6cmEsY2FwdHVyZTpudWxsLGNoYXJTZXQ6bnVsbCxjaGVja2VkOkJ0LGNpdGU6bnVsbCxjbGFzc05hbWU6cmEsY29sczpZZSxjb2xTcGFuOm51bGwsY29udGVudDpudWxsLGNvbnRlbnRFZGl0YWJsZTpqYSxjb250cm9sczpCdCxjb250cm9sc0xpc3Q6cmEsY29vcmRzOlllfFowLGNyb3NzT3JpZ2luOm51bGwsZGF0YTpudWxsLGRhdGVUaW1lOm51bGwsZGVjb2Rpbmc6bnVsbCxkZWZhdWx0OkJ0LGRlZmVyOkJ0LGRpcjpudWxsLGRpck5hbWU6bnVsbCxkaXNhYmxlZDpCdCxkb3dubG9hZDpidGUsZHJhZ2dhYmxlOmphLGVuY1R5cGU6bnVsbCxlbnRlcktleUhpbnQ6bnVsbCxmZXRjaFByaW9yaXR5Om51bGwsZm9ybTpudWxsLGZvcm1BY3Rpb246bnVsbCxmb3JtRW5jVHlwZTpudWxsLGZvcm1NZXRob2Q6bnVsbCxmb3JtTm9WYWxpZGF0ZTpCdCxmb3JtVGFyZ2V0Om51bGwsaGVhZGVyczpyYSxoZWlnaHQ6WWUsaGlkZGVuOmJ0ZSxoaWdoOlllLGhyZWY6bnVsbCxocmVmTGFuZzpudWxsLGh0bWxGb3I6cmEsaHR0cEVxdWl2OnJhLGlkOm51bGwsaW1hZ2VTaXplczpudWxsLGltYWdlU3JjU2V0Om51bGwsaW5lcnQ6QnQsaW5wdXRNb2RlOm51bGwsaW50ZWdyaXR5Om51bGwsaXM6bnVsbCxpc01hcDpCdCxpdGVtSWQ6bnVsbCxpdGVtUHJvcDpyYSxpdGVtUmVmOnJhLGl0ZW1TY29wZTpCdCxpdGVtVHlwZTpyYSxraW5kOm51bGwsbGFiZWw6bnVsbCxsYW5nOm51bGwsbGFuZ3VhZ2U6bnVsbCxsaXN0Om51bGwsbG9hZGluZzpudWxsLGxvb3A6QnQsbG93OlllLG1hbmlmZXN0Om51bGwsbWF4Om51bGwsbWF4TGVuZ3RoOlllLG1lZGlhOm51bGwsbWV0aG9kOm51bGwsbWluOm51bGwsbWluTGVuZ3RoOlllLG11bHRpcGxlOkJ0LG11dGVkOkJ0LG5hbWU6bnVsbCxub25jZTpudWxsLG5vTW9kdWxlOkJ0LG5vVmFsaWRhdGU6QnQsb25BYm9ydDpudWxsLG9uQWZ0ZXJQcmludDpudWxsLG9uQXV4Q2xpY2s6bnVsbCxvbkJlZm9yZU1hdGNoOm51bGwsb25CZWZvcmVQcmludDpudWxsLG9uQmVmb3JlVG9nZ2xlOm51bGwsb25CZWZvcmVVbmxvYWQ6bnVsbCxvbkJsdXI6bnVsbCxvbkNhbmNlbDpudWxsLG9uQ2FuUGxheTpudWxsLG9uQ2FuUGxheVRocm91Z2g6bnVsbCxvbkNoYW5nZTpudWxsLG9uQ2xpY2s6bnVsbCxvbkNsb3NlOm51bGwsb25Db250ZXh0TG9zdDpudWxsLG9uQ29udGV4dE1lbnU6bnVsbCxvbkNvbnRleHRSZXN0b3JlZDpudWxsLG9uQ29weTpudWxsLG9uQ3VlQ2hhbmdlOm51bGwsb25DdXQ6bnVsbCxvbkRibENsaWNrOm51bGwsb25EcmFnOm51bGwsb25EcmFnRW5kOm51bGwsb25EcmFnRW50ZXI6bnVsbCxvbkRyYWdFeGl0Om51bGwsb25EcmFnTGVhdmU6bnVsbCxvbkRyYWdPdmVyOm51bGwsb25EcmFnU3RhcnQ6bnVsbCxvbkRyb3A6bnVsbCxvbkR1cmF0aW9uQ2hhbmdlOm51bGwsb25FbXB0aWVkOm51bGwsb25FbmRlZDpudWxsLG9uRXJyb3I6bnVsbCxvbkZvY3VzOm51bGwsb25Gb3JtRGF0YTpudWxsLG9uSGFzaENoYW5nZTpudWxsLG9uSW5wdXQ6bnVsbCxvbkludmFsaWQ6bnVsbCxvbktleURvd246bnVsbCxvbktleVByZXNzOm51bGwsb25LZXlVcDpudWxsLG9uTGFuZ3VhZ2VDaGFuZ2U6bnVsbCxvbkxvYWQ6bnVsbCxvbkxvYWRlZERhdGE6bnVsbCxvbkxvYWRlZE1ldGFkYXRhOm51bGwsb25Mb2FkRW5kOm51bGwsb25Mb2FkU3RhcnQ6bnVsbCxvbk1lc3NhZ2U6bnVsbCxvbk1lc3NhZ2VFcnJvcjpudWxsLG9uTW91c2VEb3duOm51bGwsb25Nb3VzZUVudGVyOm51bGwsb25Nb3VzZUxlYXZlOm51bGwsb25Nb3VzZU1vdmU6bnVsbCxvbk1vdXNlT3V0Om51bGwsb25Nb3VzZU92ZXI6bnVsbCxvbk1vdXNlVXA6bnVsbCxvbk9mZmxpbmU6bnVsbCxvbk9ubGluZTpudWxsLG9uUGFnZUhpZGU6bnVsbCxvblBhZ2VTaG93Om51bGwsb25QYXN0ZTpudWxsLG9uUGF1c2U6bnVsbCxvblBsYXk6bnVsbCxvblBsYXlpbmc6bnVsbCxvblBvcFN0YXRlOm51bGwsb25Qcm9ncmVzczpudWxsLG9uUmF0ZUNoYW5nZTpudWxsLG9uUmVqZWN0aW9uSGFuZGxlZDpudWxsLG9uUmVzZXQ6bnVsbCxvblJlc2l6ZTpudWxsLG9uU2Nyb2xsOm51bGwsb25TY3JvbGxFbmQ6bnVsbCxvblNlY3VyaXR5UG9saWN5VmlvbGF0aW9uOm51bGwsb25TZWVrZWQ6bnVsbCxvblNlZWtpbmc6bnVsbCxvblNlbGVjdDpudWxsLG9uU2xvdENoYW5nZTpudWxsLG9uU3RhbGxlZDpudWxsLG9uU3RvcmFnZTpudWxsLG9uU3VibWl0Om51bGwsb25TdXNwZW5kOm51bGwsb25UaW1lVXBkYXRlOm51bGwsb25Ub2dnbGU6bnVsbCxvblVuaGFuZGxlZFJlamVjdGlvbjpudWxsLG9uVW5sb2FkOm51bGwsb25Wb2x1bWVDaGFuZ2U6bnVsbCxvbldhaXRpbmc6bnVsbCxvbldoZWVsOm51bGwsb3BlbjpCdCxvcHRpbXVtOlllLHBhdHRlcm46bnVsbCxwaW5nOnJhLHBsYWNlaG9sZGVyOm51bGwscGxheXNJbmxpbmU6QnQscG9wb3ZlcjpudWxsLHBvcG92ZXJUYXJnZXQ6bnVsbCxwb3BvdmVyVGFyZ2V0QWN0aW9uOm51bGwscG9zdGVyOm51bGwscHJlbG9hZDpudWxsLHJlYWRPbmx5OkJ0LHJlZmVycmVyUG9saWN5Om51bGwscmVsOnJhLHJlcXVpcmVkOkJ0LHJldmVyc2VkOkJ0LHJvd3M6WWUscm93U3BhbjpZZSxzYW5kYm94OnJhLHNjb3BlOm51bGwsc2NvcGVkOkJ0LHNlYW1sZXNzOkJ0LHNlbGVjdGVkOkJ0LHNoYWRvd1Jvb3RDbG9uYWJsZTpCdCxzaGFkb3dSb290RGVsZWdhdGVzRm9jdXM6QnQsc2hhZG93Um9vdE1vZGU6bnVsbCxzaGFwZTpudWxsLHNpemU6WWUsc2l6ZXM6bnVsbCxzbG90Om51bGwsc3BhbjpZZSxzcGVsbENoZWNrOmphLHNyYzpudWxsLHNyY0RvYzpudWxsLHNyY0xhbmc6bnVsbCxzcmNTZXQ6bnVsbCxzdGFydDpZZSxzdGVwOm51bGwsc3R5bGU6bnVsbCx0YWJJbmRleDpZZSx0YXJnZXQ6bnVsbCx0aXRsZTpudWxsLHRyYW5zbGF0ZTpudWxsLHR5cGU6bnVsbCx0eXBlTXVzdE1hdGNoOkJ0LHVzZU1hcDpudWxsLHZhbHVlOmphLHdpZHRoOlllLHdyYXA6bnVsbCx3cml0aW5nU3VnZ2VzdGlvbnM6bnVsbCxhbGlnbjpudWxsLGFMaW5rOm51bGwsYXJjaGl2ZTpyYSxheGlzOm51bGwsYmFja2dyb3VuZDpudWxsLGJnQ29sb3I6bnVsbCxib3JkZXI6WWUsYm9yZGVyQ29sb3I6bnVsbCxib3R0b21NYXJnaW46WWUsY2VsbFBhZGRpbmc6bnVsbCxjZWxsU3BhY2luZzpudWxsLGNoYXI6bnVsbCxjaGFyT2ZmOm51bGwsY2xhc3NJZDpudWxsLGNsZWFyOm51bGwsY29kZTpudWxsLGNvZGVCYXNlOm51bGwsY29kZVR5cGU6bnVsbCxjb2xvcjpudWxsLGNvbXBhY3Q6QnQsZGVjbGFyZTpCdCxldmVudDpudWxsLGZhY2U6bnVsbCxmcmFtZTpudWxsLGZyYW1lQm9yZGVyOm51bGwsaFNwYWNlOlllLGxlZnRNYXJnaW46WWUsbGluazpudWxsLGxvbmdEZXNjOm51bGwsbG93U3JjOm51bGwsbWFyZ2luSGVpZ2h0OlllLG1hcmdpbldpZHRoOlllLG5vUmVzaXplOkJ0LG5vSHJlZjpCdCxub1NoYWRlOkJ0LG5vV3JhcDpCdCxvYmplY3Q6bnVsbCxwcm9maWxlOm51bGwscHJvbXB0Om51bGwscmV2Om51bGwscmlnaHRNYXJnaW46WWUscnVsZXM6bnVsbCxzY2hlbWU6bnVsbCxzY3JvbGxpbmc6amEsc3RhbmRieTpudWxsLHN1bW1hcnk6bnVsbCx0ZXh0Om51bGwsdG9wTWFyZ2luOlllLHZhbHVlVHlwZTpudWxsLHZlcnNpb246bnVsbCx2QWxpZ246bnVsbCx2TGluazpudWxsLHZTcGFjZTpZZSxhbGxvd1RyYW5zcGFyZW5jeTpudWxsLGF1dG9Db3JyZWN0Om51bGwsYXV0b1NhdmU6bnVsbCxkaXNhYmxlUGljdHVyZUluUGljdHVyZTpCdCxkaXNhYmxlUmVtb3RlUGxheWJhY2s6QnQscHJlZml4Om51bGwscHJvcGVydHk6bnVsbCxyZXN1bHRzOlllLHNlY3VyaXR5Om51bGwsdW5zZWxlY3RhYmxlOm51bGx9LHNwYWNlOiJodG1sIix0cmFuc2Zvcm06eXRlfSl9KTt2YXIgSGt0LHFrdD1sKCgpPT57bXBlKCk7SWQoKTtrYigpO0hrdD1rbih7YXR0cmlidXRlczp7YWNjZW50SGVpZ2h0OiJhY2NlbnQtaGVpZ2h0IixhbGlnbm1lbnRCYXNlbGluZToiYWxpZ25tZW50LWJhc2VsaW5lIixhcmFiaWNGb3JtOiJhcmFiaWMtZm9ybSIsYmFzZWxpbmVTaGlmdDoiYmFzZWxpbmUtc2hpZnQiLGNhcEhlaWdodDoiY2FwLWhlaWdodCIsY2xhc3NOYW1lOiJjbGFzcyIsY2xpcFBhdGg6ImNsaXAtcGF0aCIsY2xpcFJ1bGU6ImNsaXAtcnVsZSIsY29sb3JJbnRlcnBvbGF0aW9uOiJjb2xvci1pbnRlcnBvbGF0aW9uIixjb2xvckludGVycG9sYXRpb25GaWx0ZXJzOiJjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnMiLGNvbG9yUHJvZmlsZToiY29sb3ItcHJvZmlsZSIsY29sb3JSZW5kZXJpbmc6ImNvbG9yLXJlbmRlcmluZyIsY3Jvc3NPcmlnaW46ImNyb3Nzb3JpZ2luIixkYXRhVHlwZToiZGF0YXR5cGUiLGRvbWluYW50QmFzZWxpbmU6ImRvbWluYW50LWJhc2VsaW5lIixlbmFibGVCYWNrZ3JvdW5kOiJlbmFibGUtYmFja2dyb3VuZCIsZmlsbE9wYWNpdHk6ImZpbGwtb3BhY2l0eSIsZmlsbFJ1bGU6ImZpbGwtcnVsZSIsZmxvb2RDb2xvcjoiZmxvb2QtY29sb3IiLGZsb29kT3BhY2l0eToiZmxvb2Qtb3BhY2l0eSIsZm9udEZhbWlseToiZm9udC1mYW1pbHkiLGZvbnRTaXplOiJmb250LXNpemUiLGZvbnRTaXplQWRqdXN0OiJmb250LXNpemUtYWRqdXN0Iixmb250U3RyZXRjaDoiZm9udC1zdHJldGNoIixmb250U3R5bGU6ImZvbnQtc3R5bGUiLGZvbnRWYXJpYW50OiJmb250LXZhcmlhbnQiLGZvbnRXZWlnaHQ6ImZvbnQtd2VpZ2h0IixnbHlwaE5hbWU6ImdseXBoLW5hbWUiLGdseXBoT3JpZW50YXRpb25Ib3Jpem9udGFsOiJnbHlwaC1vcmllbnRhdGlvbi1ob3Jpem9udGFsIixnbHlwaE9yaWVudGF0aW9uVmVydGljYWw6ImdseXBoLW9yaWVudGF0aW9uLXZlcnRpY2FsIixocmVmTGFuZzoiaHJlZmxhbmciLGhvcml6QWR2WDoiaG9yaXotYWR2LXgiLGhvcml6T3JpZ2luWDoiaG9yaXotb3JpZ2luLXgiLGhvcml6T3JpZ2luWToiaG9yaXotb3JpZ2luLXkiLGltYWdlUmVuZGVyaW5nOiJpbWFnZS1yZW5kZXJpbmciLGxldHRlclNwYWNpbmc6ImxldHRlci1zcGFjaW5nIixsaWdodGluZ0NvbG9yOiJsaWdodGluZy1jb2xvciIsbWFya2VyRW5kOiJtYXJrZXItZW5kIixtYXJrZXJNaWQ6Im1hcmtlci1taWQiLG1hcmtlclN0YXJ0OiJtYXJrZXItc3RhcnQiLG5hdkRvd246Im5hdi1kb3duIixuYXZEb3duTGVmdDoibmF2LWRvd24tbGVmdCIsbmF2RG93blJpZ2h0OiJuYXYtZG93bi1yaWdodCIsbmF2TGVmdDoibmF2LWxlZnQiLG5hdk5leHQ6Im5hdi1uZXh0IixuYXZQcmV2OiJuYXYtcHJldiIsbmF2UmlnaHQ6Im5hdi1yaWdodCIsbmF2VXA6Im5hdi11cCIsbmF2VXBMZWZ0OiJuYXYtdXAtbGVmdCIsbmF2VXBSaWdodDoibmF2LXVwLXJpZ2h0IixvbkFib3J0OiJvbmFib3J0IixvbkFjdGl2YXRlOiJvbmFjdGl2YXRlIixvbkFmdGVyUHJpbnQ6Im9uYWZ0ZXJwcmludCIsb25CZWZvcmVQcmludDoib25iZWZvcmVwcmludCIsb25CZWdpbjoib25iZWdpbiIsb25DYW5jZWw6Im9uY2FuY2VsIixvbkNhblBsYXk6Im9uY2FucGxheSIsb25DYW5QbGF5VGhyb3VnaDoib25jYW5wbGF5dGhyb3VnaCIsb25DaGFuZ2U6Im9uY2hhbmdlIixvbkNsaWNrOiJvbmNsaWNrIixvbkNsb3NlOiJvbmNsb3NlIixvbkNvcHk6Im9uY29weSIsb25DdWVDaGFuZ2U6Im9uY3VlY2hhbmdlIixvbkN1dDoib25jdXQiLG9uRGJsQ2xpY2s6Im9uZGJsY2xpY2siLG9uRHJhZzoib25kcmFnIixvbkRyYWdFbmQ6Im9uZHJhZ2VuZCIsb25EcmFnRW50ZXI6Im9uZHJhZ2VudGVyIixvbkRyYWdFeGl0OiJvbmRyYWdleGl0IixvbkRyYWdMZWF2ZToib25kcmFnbGVhdmUiLG9uRHJhZ092ZXI6Im9uZHJhZ292ZXIiLG9uRHJhZ1N0YXJ0OiJvbmRyYWdzdGFydCIsb25Ecm9wOiJvbmRyb3AiLG9uRHVyYXRpb25DaGFuZ2U6Im9uZHVyYXRpb25jaGFuZ2UiLG9uRW1wdGllZDoib25lbXB0aWVkIixvbkVuZDoib25lbmQiLG9uRW5kZWQ6Im9uZW5kZWQiLG9uRXJyb3I6Im9uZXJyb3IiLG9uRm9jdXM6Im9uZm9jdXMiLG9uRm9jdXNJbjoib25mb2N1c2luIixvbkZvY3VzT3V0OiJvbmZvY3Vzb3V0Iixvbkhhc2hDaGFuZ2U6Im9uaGFzaGNoYW5nZSIsb25JbnB1dDoib25pbnB1dCIsb25JbnZhbGlkOiJvbmludmFsaWQiLG9uS2V5RG93bjoib25rZXlkb3duIixvbktleVByZXNzOiJvbmtleXByZXNzIixvbktleVVwOiJvbmtleXVwIixvbkxvYWQ6Im9ubG9hZCIsb25Mb2FkZWREYXRhOiJvbmxvYWRlZGRhdGEiLG9uTG9hZGVkTWV0YWRhdGE6Im9ubG9hZGVkbWV0YWRhdGEiLG9uTG9hZFN0YXJ0OiJvbmxvYWRzdGFydCIsb25NZXNzYWdlOiJvbm1lc3NhZ2UiLG9uTW91c2VEb3duOiJvbm1vdXNlZG93biIsb25Nb3VzZUVudGVyOiJvbm1vdXNlZW50ZXIiLG9uTW91c2VMZWF2ZToib25tb3VzZWxlYXZlIixvbk1vdXNlTW92ZToib25tb3VzZW1vdmUiLG9uTW91c2VPdXQ6Im9ubW91c2VvdXQiLG9uTW91c2VPdmVyOiJvbm1vdXNlb3ZlciIsb25Nb3VzZVVwOiJvbm1vdXNldXAiLG9uTW91c2VXaGVlbDoib25tb3VzZXdoZWVsIixvbk9mZmxpbmU6Im9ub2ZmbGluZSIsb25PbmxpbmU6Im9ub25saW5lIixvblBhZ2VIaWRlOiJvbnBhZ2VoaWRlIixvblBhZ2VTaG93OiJvbnBhZ2VzaG93IixvblBhc3RlOiJvbnBhc3RlIixvblBhdXNlOiJvbnBhdXNlIixvblBsYXk6Im9ucGxheSIsb25QbGF5aW5nOiJvbnBsYXlpbmciLG9uUG9wU3RhdGU6Im9ucG9wc3RhdGUiLG9uUHJvZ3Jlc3M6Im9ucHJvZ3Jlc3MiLG9uUmF0ZUNoYW5nZToib25yYXRlY2hhbmdlIixvblJlcGVhdDoib25yZXBlYXQiLG9uUmVzZXQ6Im9ucmVzZXQiLG9uUmVzaXplOiJvbnJlc2l6ZSIsb25TY3JvbGw6Im9uc2Nyb2xsIixvblNlZWtlZDoib25zZWVrZWQiLG9uU2Vla2luZzoib25zZWVraW5nIixvblNlbGVjdDoib25zZWxlY3QiLG9uU2hvdzoib25zaG93IixvblN0YWxsZWQ6Im9uc3RhbGxlZCIsb25TdG9yYWdlOiJvbnN0b3JhZ2UiLG9uU3VibWl0OiJvbnN1Ym1pdCIsb25TdXNwZW5kOiJvbnN1c3BlbmQiLG9uVGltZVVwZGF0ZToib250aW1ldXBkYXRlIixvblRvZ2dsZToib250b2dnbGUiLG9uVW5sb2FkOiJvbnVubG9hZCIsb25Wb2x1bWVDaGFuZ2U6Im9udm9sdW1lY2hhbmdlIixvbldhaXRpbmc6Im9ud2FpdGluZyIsb25ab29tOiJvbnpvb20iLG92ZXJsaW5lUG9zaXRpb246Im92ZXJsaW5lLXBvc2l0aW9uIixvdmVybGluZVRoaWNrbmVzczoib3ZlcmxpbmUtdGhpY2tuZXNzIixwYWludE9yZGVyOiJwYWludC1vcmRlciIscGFub3NlMToicGFub3NlLTEiLHBvaW50ZXJFdmVudHM6InBvaW50ZXItZXZlbnRzIixyZWZlcnJlclBvbGljeToicmVmZXJyZXJwb2xpY3kiLHJlbmRlcmluZ0ludGVudDoicmVuZGVyaW5nLWludGVudCIsc2hhcGVSZW5kZXJpbmc6InNoYXBlLXJlbmRlcmluZyIsc3RvcENvbG9yOiJzdG9wLWNvbG9yIixzdG9wT3BhY2l0eToic3RvcC1vcGFjaXR5IixzdHJpa2V0aHJvdWdoUG9zaXRpb246InN0cmlrZXRocm91Z2gtcG9zaXRpb24iLHN0cmlrZXRocm91Z2hUaGlja25lc3M6InN0cmlrZXRocm91Z2gtdGhpY2tuZXNzIixzdHJva2VEYXNoQXJyYXk6InN0cm9rZS1kYXNoYXJyYXkiLHN0cm9rZURhc2hPZmZzZXQ6InN0cm9rZS1kYXNob2Zmc2V0IixzdHJva2VMaW5lQ2FwOiJzdHJva2UtbGluZWNhcCIsc3Ryb2tlTGluZUpvaW46InN0cm9rZS1saW5lam9pbiIsc3Ryb2tlTWl0ZXJMaW1pdDoic3Ryb2tlLW1pdGVybGltaXQiLHN0cm9rZU9wYWNpdHk6InN0cm9rZS1vcGFjaXR5IixzdHJva2VXaWR0aDoic3Ryb2tlLXdpZHRoIix0YWJJbmRleDoidGFiaW5kZXgiLHRleHRBbmNob3I6InRleHQtYW5jaG9yIix0ZXh0RGVjb3JhdGlvbjoidGV4dC1kZWNvcmF0aW9uIix0ZXh0UmVuZGVyaW5nOiJ0ZXh0LXJlbmRlcmluZyIsdHJhbnNmb3JtT3JpZ2luOiJ0cmFuc2Zvcm0tb3JpZ2luIix0eXBlT2Y6InR5cGVvZiIsdW5kZXJsaW5lUG9zaXRpb246InVuZGVybGluZS1wb3NpdGlvbiIsdW5kZXJsaW5lVGhpY2tuZXNzOiJ1bmRlcmxpbmUtdGhpY2tuZXNzIix1bmljb2RlQmlkaToidW5pY29kZS1iaWRpIix1bmljb2RlUmFuZ2U6InVuaWNvZGUtcmFuZ2UiLHVuaXRzUGVyRW06InVuaXRzLXBlci1lbSIsdkFscGhhYmV0aWM6InYtYWxwaGFiZXRpYyIsdkhhbmdpbmc6InYtaGFuZ2luZyIsdklkZW9ncmFwaGljOiJ2LWlkZW9ncmFwaGljIix2TWF0aGVtYXRpY2FsOiJ2LW1hdGhlbWF0aWNhbCIsdmVjdG9yRWZmZWN0OiJ2ZWN0b3ItZWZmZWN0Iix2ZXJ0QWR2WToidmVydC1hZHYteSIsdmVydE9yaWdpblg6InZlcnQtb3JpZ2luLXgiLHZlcnRPcmlnaW5ZOiJ2ZXJ0LW9yaWdpbi15Iix3b3JkU3BhY2luZzoid29yZC1zcGFjaW5nIix3cml0aW5nTW9kZToid3JpdGluZy1tb2RlIix4SGVpZ2h0OiJ4LWhlaWdodCIscGxheWJhY2tPcmRlcjoicGxheWJhY2tvcmRlciIsdGltZWxpbmVCZWdpbjoidGltZWxpbmViZWdpbiJ9LHByb3BlcnRpZXM6e2Fib3V0OkRvLGFjY2VudEhlaWdodDpZZSxhY2N1bXVsYXRlOm51bGwsYWRkaXRpdmU6bnVsbCxhbGlnbm1lbnRCYXNlbGluZTpudWxsLGFscGhhYmV0aWM6WWUsYW1wbGl0dWRlOlllLGFyYWJpY0Zvcm06bnVsbCxhc2NlbnQ6WWUsYXR0cmlidXRlTmFtZTpudWxsLGF0dHJpYnV0ZVR5cGU6bnVsbCxhemltdXRoOlllLGJhbmR3aWR0aDpudWxsLGJhc2VsaW5lU2hpZnQ6bnVsbCxiYXNlRnJlcXVlbmN5Om51bGwsYmFzZVByb2ZpbGU6bnVsbCxiYm94Om51bGwsYmVnaW46bnVsbCxiaWFzOlllLGJ5Om51bGwsY2FsY01vZGU6bnVsbCxjYXBIZWlnaHQ6WWUsY2xhc3NOYW1lOnJhLGNsaXA6bnVsbCxjbGlwUGF0aDpudWxsLGNsaXBQYXRoVW5pdHM6bnVsbCxjbGlwUnVsZTpudWxsLGNvbG9yOm51bGwsY29sb3JJbnRlcnBvbGF0aW9uOm51bGwsY29sb3JJbnRlcnBvbGF0aW9uRmlsdGVyczpudWxsLGNvbG9yUHJvZmlsZTpudWxsLGNvbG9yUmVuZGVyaW5nOm51bGwsY29udGVudDpudWxsLGNvbnRlbnRTY3JpcHRUeXBlOm51bGwsY29udGVudFN0eWxlVHlwZTpudWxsLGNyb3NzT3JpZ2luOm51bGwsY3Vyc29yOm51bGwsY3g6bnVsbCxjeTpudWxsLGQ6bnVsbCxkYXRhVHlwZTpudWxsLGRlZmF1bHRBY3Rpb246bnVsbCxkZXNjZW50OlllLGRpZmZ1c2VDb25zdGFudDpZZSxkaXJlY3Rpb246bnVsbCxkaXNwbGF5Om51bGwsZHVyOm51bGwsZGl2aXNvcjpZZSxkb21pbmFudEJhc2VsaW5lOm51bGwsZG93bmxvYWQ6QnQsZHg6bnVsbCxkeTpudWxsLGVkZ2VNb2RlOm51bGwsZWRpdGFibGU6bnVsbCxlbGV2YXRpb246WWUsZW5hYmxlQmFja2dyb3VuZDpudWxsLGVuZDpudWxsLGV2ZW50Om51bGwsZXhwb25lbnQ6WWUsZXh0ZXJuYWxSZXNvdXJjZXNSZXF1aXJlZDpudWxsLGZpbGw6bnVsbCxmaWxsT3BhY2l0eTpZZSxmaWxsUnVsZTpudWxsLGZpbHRlcjpudWxsLGZpbHRlclJlczpudWxsLGZpbHRlclVuaXRzOm51bGwsZmxvb2RDb2xvcjpudWxsLGZsb29kT3BhY2l0eTpudWxsLGZvY3VzYWJsZTpudWxsLGZvY3VzSGlnaGxpZ2h0Om51bGwsZm9udEZhbWlseTpudWxsLGZvbnRTaXplOm51bGwsZm9udFNpemVBZGp1c3Q6bnVsbCxmb250U3RyZXRjaDpudWxsLGZvbnRTdHlsZTpudWxsLGZvbnRWYXJpYW50Om51bGwsZm9udFdlaWdodDpudWxsLGZvcm1hdDpudWxsLGZyOm51bGwsZnJvbTpudWxsLGZ4Om51bGwsZnk6bnVsbCxnMTpaMCxnMjpaMCxnbHlwaE5hbWU6WjAsZ2x5cGhPcmllbnRhdGlvbkhvcml6b250YWw6bnVsbCxnbHlwaE9yaWVudGF0aW9uVmVydGljYWw6bnVsbCxnbHlwaFJlZjpudWxsLGdyYWRpZW50VHJhbnNmb3JtOm51bGwsZ3JhZGllbnRVbml0czpudWxsLGhhbmRsZXI6bnVsbCxoYW5naW5nOlllLGhhdGNoQ29udGVudFVuaXRzOm51bGwsaGF0Y2hVbml0czpudWxsLGhlaWdodDpudWxsLGhyZWY6bnVsbCxocmVmTGFuZzpudWxsLGhvcml6QWR2WDpZZSxob3Jpek9yaWdpblg6WWUsaG9yaXpPcmlnaW5ZOlllLGlkOm51bGwsaWRlb2dyYXBoaWM6WWUsaW1hZ2VSZW5kZXJpbmc6bnVsbCxpbml0aWFsVmlzaWJpbGl0eTpudWxsLGluOm51bGwsaW4yOm51bGwsaW50ZXJjZXB0OlllLGs6WWUsazE6WWUsazI6WWUsazM6WWUsazQ6WWUsa2VybmVsTWF0cml4OkRvLGtlcm5lbFVuaXRMZW5ndGg6bnVsbCxrZXlQb2ludHM6bnVsbCxrZXlTcGxpbmVzOm51bGwsa2V5VGltZXM6bnVsbCxrZXJuaW5nOm51bGwsbGFuZzpudWxsLGxlbmd0aEFkanVzdDpudWxsLGxldHRlclNwYWNpbmc6bnVsbCxsaWdodGluZ0NvbG9yOm51bGwsbGltaXRpbmdDb25lQW5nbGU6WWUsbG9jYWw6bnVsbCxtYXJrZXJFbmQ6bnVsbCxtYXJrZXJNaWQ6bnVsbCxtYXJrZXJTdGFydDpudWxsLG1hcmtlckhlaWdodDpudWxsLG1hcmtlclVuaXRzOm51bGwsbWFya2VyV2lkdGg6bnVsbCxtYXNrOm51bGwsbWFza0NvbnRlbnRVbml0czpudWxsLG1hc2tVbml0czpudWxsLG1hdGhlbWF0aWNhbDpudWxsLG1heDpudWxsLG1lZGlhOm51bGwsbWVkaWFDaGFyYWN0ZXJFbmNvZGluZzpudWxsLG1lZGlhQ29udGVudEVuY29kaW5nczpudWxsLG1lZGlhU2l6ZTpZZSxtZWRpYVRpbWU6bnVsbCxtZXRob2Q6bnVsbCxtaW46bnVsbCxtb2RlOm51bGwsbmFtZTpudWxsLG5hdkRvd246bnVsbCxuYXZEb3duTGVmdDpudWxsLG5hdkRvd25SaWdodDpudWxsLG5hdkxlZnQ6bnVsbCxuYXZOZXh0Om51bGwsbmF2UHJldjpudWxsLG5hdlJpZ2h0Om51bGwsbmF2VXA6bnVsbCxuYXZVcExlZnQ6bnVsbCxuYXZVcFJpZ2h0Om51bGwsbnVtT2N0YXZlczpudWxsLG9ic2VydmVyOm51bGwsb2Zmc2V0Om51bGwsb25BYm9ydDpudWxsLG9uQWN0aXZhdGU6bnVsbCxvbkFmdGVyUHJpbnQ6bnVsbCxvbkJlZm9yZVByaW50Om51bGwsb25CZWdpbjpudWxsLG9uQ2FuY2VsOm51bGwsb25DYW5QbGF5Om51bGwsb25DYW5QbGF5VGhyb3VnaDpudWxsLG9uQ2hhbmdlOm51bGwsb25DbGljazpudWxsLG9uQ2xvc2U6bnVsbCxvbkNvcHk6bnVsbCxvbkN1ZUNoYW5nZTpudWxsLG9uQ3V0Om51bGwsb25EYmxDbGljazpudWxsLG9uRHJhZzpudWxsLG9uRHJhZ0VuZDpudWxsLG9uRHJhZ0VudGVyOm51bGwsb25EcmFnRXhpdDpudWxsLG9uRHJhZ0xlYXZlOm51bGwsb25EcmFnT3ZlcjpudWxsLG9uRHJhZ1N0YXJ0Om51bGwsb25Ecm9wOm51bGwsb25EdXJhdGlvbkNoYW5nZTpudWxsLG9uRW1wdGllZDpudWxsLG9uRW5kOm51bGwsb25FbmRlZDpudWxsLG9uRXJyb3I6bnVsbCxvbkZvY3VzOm51bGwsb25Gb2N1c0luOm51bGwsb25Gb2N1c091dDpudWxsLG9uSGFzaENoYW5nZTpudWxsLG9uSW5wdXQ6bnVsbCxvbkludmFsaWQ6bnVsbCxvbktleURvd246bnVsbCxvbktleVByZXNzOm51bGwsb25LZXlVcDpudWxsLG9uTG9hZDpudWxsLG9uTG9hZGVkRGF0YTpudWxsLG9uTG9hZGVkTWV0YWRhdGE6bnVsbCxvbkxvYWRTdGFydDpudWxsLG9uTWVzc2FnZTpudWxsLG9uTW91c2VEb3duOm51bGwsb25Nb3VzZUVudGVyOm51bGwsb25Nb3VzZUxlYXZlOm51bGwsb25Nb3VzZU1vdmU6bnVsbCxvbk1vdXNlT3V0Om51bGwsb25Nb3VzZU92ZXI6bnVsbCxvbk1vdXNlVXA6bnVsbCxvbk1vdXNlV2hlZWw6bnVsbCxvbk9mZmxpbmU6bnVsbCxvbk9ubGluZTpudWxsLG9uUGFnZUhpZGU6bnVsbCxvblBhZ2VTaG93Om51bGwsb25QYXN0ZTpudWxsLG9uUGF1c2U6bnVsbCxvblBsYXk6bnVsbCxvblBsYXlpbmc6bnVsbCxvblBvcFN0YXRlOm51bGwsb25Qcm9ncmVzczpudWxsLG9uUmF0ZUNoYW5nZTpudWxsLG9uUmVwZWF0Om51bGwsb25SZXNldDpudWxsLG9uUmVzaXplOm51bGwsb25TY3JvbGw6bnVsbCxvblNlZWtlZDpudWxsLG9uU2Vla2luZzpudWxsLG9uU2VsZWN0Om51bGwsb25TaG93Om51bGwsb25TdGFsbGVkOm51bGwsb25TdG9yYWdlOm51bGwsb25TdWJtaXQ6bnVsbCxvblN1c3BlbmQ6bnVsbCxvblRpbWVVcGRhdGU6bnVsbCxvblRvZ2dsZTpudWxsLG9uVW5sb2FkOm51bGwsb25Wb2x1bWVDaGFuZ2U6bnVsbCxvbldhaXRpbmc6bnVsbCxvblpvb206bnVsbCxvcGFjaXR5Om51bGwsb3BlcmF0b3I6bnVsbCxvcmRlcjpudWxsLG9yaWVudDpudWxsLG9yaWVudGF0aW9uOm51bGwsb3JpZ2luOm51bGwsb3ZlcmZsb3c6bnVsbCxvdmVybGF5Om51bGwsb3ZlcmxpbmVQb3NpdGlvbjpZZSxvdmVybGluZVRoaWNrbmVzczpZZSxwYWludE9yZGVyOm51bGwscGFub3NlMTpudWxsLHBhdGg6bnVsbCxwYXRoTGVuZ3RoOlllLHBhdHRlcm5Db250ZW50VW5pdHM6bnVsbCxwYXR0ZXJuVHJhbnNmb3JtOm51bGwscGF0dGVyblVuaXRzOm51bGwscGhhc2U6bnVsbCxwaW5nOnJhLHBpdGNoOm51bGwscGxheWJhY2tPcmRlcjpudWxsLHBvaW50ZXJFdmVudHM6bnVsbCxwb2ludHM6bnVsbCxwb2ludHNBdFg6WWUscG9pbnRzQXRZOlllLHBvaW50c0F0WjpZZSxwcmVzZXJ2ZUFscGhhOm51bGwscHJlc2VydmVBc3BlY3RSYXRpbzpudWxsLHByaW1pdGl2ZVVuaXRzOm51bGwscHJvcGFnYXRlOm51bGwscHJvcGVydHk6RG8scjpudWxsLHJhZGl1czpudWxsLHJlZmVycmVyUG9saWN5Om51bGwscmVmWDpudWxsLHJlZlk6bnVsbCxyZWw6RG8scmV2OkRvLHJlbmRlcmluZ0ludGVudDpudWxsLHJlcGVhdENvdW50Om51bGwscmVwZWF0RHVyOm51bGwscmVxdWlyZWRFeHRlbnNpb25zOkRvLHJlcXVpcmVkRmVhdHVyZXM6RG8scmVxdWlyZWRGb250czpEbyxyZXF1aXJlZEZvcm1hdHM6RG8scmVzb3VyY2U6bnVsbCxyZXN0YXJ0Om51bGwscmVzdWx0Om51bGwscm90YXRlOm51bGwscng6bnVsbCxyeTpudWxsLHNjYWxlOm51bGwsc2VlZDpudWxsLHNoYXBlUmVuZGVyaW5nOm51bGwsc2lkZTpudWxsLHNsb3BlOm51bGwsc25hcHNob3RUaW1lOm51bGwsc3BlY3VsYXJDb25zdGFudDpZZSxzcGVjdWxhckV4cG9uZW50OlllLHNwcmVhZE1ldGhvZDpudWxsLHNwYWNpbmc6bnVsbCxzdGFydE9mZnNldDpudWxsLHN0ZERldmlhdGlvbjpudWxsLHN0ZW1oOm51bGwsc3RlbXY6bnVsbCxzdGl0Y2hUaWxlczpudWxsLHN0b3BDb2xvcjpudWxsLHN0b3BPcGFjaXR5Om51bGwsc3RyaWtldGhyb3VnaFBvc2l0aW9uOlllLHN0cmlrZXRocm91Z2hUaGlja25lc3M6WWUsc3RyaW5nOm51bGwsc3Ryb2tlOm51bGwsc3Ryb2tlRGFzaEFycmF5OkRvLHN0cm9rZURhc2hPZmZzZXQ6bnVsbCxzdHJva2VMaW5lQ2FwOm51bGwsc3Ryb2tlTGluZUpvaW46bnVsbCxzdHJva2VNaXRlckxpbWl0OlllLHN0cm9rZU9wYWNpdHk6WWUsc3Ryb2tlV2lkdGg6bnVsbCxzdHlsZTpudWxsLHN1cmZhY2VTY2FsZTpZZSxzeW5jQmVoYXZpb3I6bnVsbCxzeW5jQmVoYXZpb3JEZWZhdWx0Om51bGwsc3luY01hc3RlcjpudWxsLHN5bmNUb2xlcmFuY2U6bnVsbCxzeW5jVG9sZXJhbmNlRGVmYXVsdDpudWxsLHN5c3RlbUxhbmd1YWdlOkRvLHRhYkluZGV4OlllLHRhYmxlVmFsdWVzOm51bGwsdGFyZ2V0Om51bGwsdGFyZ2V0WDpZZSx0YXJnZXRZOlllLHRleHRBbmNob3I6bnVsbCx0ZXh0RGVjb3JhdGlvbjpudWxsLHRleHRSZW5kZXJpbmc6bnVsbCx0ZXh0TGVuZ3RoOm51bGwsdGltZWxpbmVCZWdpbjpudWxsLHRpdGxlOm51bGwsdHJhbnNmb3JtQmVoYXZpb3I6bnVsbCx0eXBlOm51bGwsdHlwZU9mOkRvLHRvOm51bGwsdHJhbnNmb3JtOm51bGwsdHJhbnNmb3JtT3JpZ2luOm51bGwsdTE6bnVsbCx1MjpudWxsLHVuZGVybGluZVBvc2l0aW9uOlllLHVuZGVybGluZVRoaWNrbmVzczpZZSx1bmljb2RlOm51bGwsdW5pY29kZUJpZGk6bnVsbCx1bmljb2RlUmFuZ2U6bnVsbCx1bml0c1BlckVtOlllLHZhbHVlczpudWxsLHZBbHBoYWJldGljOlllLHZNYXRoZW1hdGljYWw6WWUsdmVjdG9yRWZmZWN0Om51bGwsdkhhbmdpbmc6WWUsdklkZW9ncmFwaGljOlllLHZlcnNpb246bnVsbCx2ZXJ0QWR2WTpZZSx2ZXJ0T3JpZ2luWDpZZSx2ZXJ0T3JpZ2luWTpZZSx2aWV3Qm94Om51bGwsdmlld1RhcmdldDpudWxsLHZpc2liaWxpdHk6bnVsbCx3aWR0aDpudWxsLHdpZHRoczpudWxsLHdvcmRTcGFjaW5nOm51bGwsd3JpdGluZ01vZGU6bnVsbCx4Om51bGwseDE6bnVsbCx4MjpudWxsLHhDaGFubmVsU2VsZWN0b3I6bnVsbCx4SGVpZ2h0OlllLHk6bnVsbCx5MTpudWxsLHkyOm51bGwseUNoYW5uZWxTZWxlY3RvcjpudWxsLHo6bnVsbCx6b29tQW5kUGFuOm51bGx9LHNwYWNlOiJzdmciLHRyYW5zZm9ybTp2dGV9KX0pO3ZhciB4cGUsamt0PWwoKCk9PntJZCgpO3hwZT1rbih7cHJvcGVydGllczp7eExpbmtBY3R1YXRlOm51bGwseExpbmtBcmNSb2xlOm51bGwseExpbmtIcmVmOm51bGwseExpbmtSb2xlOm51bGwseExpbmtTaG93Om51bGwseExpbmtUaXRsZTpudWxsLHhMaW5rVHlwZTpudWxsfSxzcGFjZToieGxpbmsiLHRyYW5zZm9ybShlLHQpe3JldHVybiJ4bGluazoiK3Quc2xpY2UoNSkudG9Mb3dlckNhc2UoKX19KX0pO3ZhciBicGUsVmt0PWwoKCk9PntJZCgpO2dwZSgpO2JwZT1rbih7YXR0cmlidXRlczp7eG1sbnN4bGluazoieG1sbnM6eGxpbmsifSxwcm9wZXJ0aWVzOnt4bWxuc1hMaW5rOm51bGwseG1sbnM6bnVsbH0sc3BhY2U6InhtbG5zIix0cmFuc2Zvcm06eXRlfSl9KTt2YXIgdnBlLFVrdD1sKCgpPT57SWQoKTt2cGU9a24oe3Byb3BlcnRpZXM6e3htbEJhc2U6bnVsbCx4bWxMYW5nOm51bGwseG1sU3BhY2U6bnVsbH0sc3BhY2U6InhtbCIsdHJhbnNmb3JtKGUsdCl7cmV0dXJuInhtbDoiK3Quc2xpY2UoMykudG9Mb3dlckNhc2UoKX19KX0pO3ZhciBXa3Q9bCgoKT0+e30pO2Z1bmN0aW9uIHlwZShlLHQpe2xldCByPVRtKHQpLGE9dCxpPVdpO2lmKHIgaW4gZS5ub3JtYWwpcmV0dXJuIGUucHJvcGVydHlbZS5ub3JtYWxbcl1dO2lmKHIubGVuZ3RoPjQmJnIuc2xpY2UoMCw0KT09PSJkYXRhIiYmRmFhLnRlc3QodCkpe2lmKHQuY2hhckF0KDQpPT09Ii0iKXtsZXQgbz10LnNsaWNlKDUpLnJlcGxhY2UoR2t0LFJhYSk7YT0iZGF0YSIrby5jaGFyQXQoMCkudG9VcHBlckNhc2UoKStvLnNsaWNlKDEpfWVsc2V7bGV0IG89dC5zbGljZSg0KTtpZighR2t0LnRlc3Qobykpe2xldCBuPW8ucmVwbGFjZShOYWEsT2FhKTtuLmNoYXJBdCgwKSE9PSItIiYmKG49Ii0iK24pLHQ9ImRhdGEiK259fWk9UGR9cmV0dXJuIG5ldyBpKGEsdCl9ZnVuY3Rpb24gT2FhKGUpe3JldHVybiItIitlLnRvTG93ZXJDYXNlKCl9ZnVuY3Rpb24gUmFhKGUpe3JldHVybiBlLmNoYXJBdCgxKS50b1VwcGVyQ2FzZSgpfXZhciBOYWEsR2t0LEZhYSxZa3Q9bCgoKT0+e3BwZSgpO3VwZSgpO3h0ZSgpO05hYT0vW0EtWl0vZyxHa3Q9Ly1bYS16XS9nLEZhYT0vXmRhdGFbLVx3LjpdKyQvaX0pO3ZhciBaa3Qsd3RlLHdwZT1sKCgpPT57Tmt0KCk7T2t0KCk7Qmt0KCk7cWt0KCk7amt0KCk7Vmt0KCk7VWt0KCk7V2t0KCk7WWt0KCk7eHRlKCk7Wmt0PWRwZShbaHBlLFJrdCx4cGUsYnBlLHZwZV0sImh0bWwiKSx3dGU9ZHBlKFtocGUsSGt0LHhwZSxicGUsdnBlXSwic3ZnIil9KTtmdW5jdGlvbiBNcGUoZSx0KXtpZihlPWUucmVwbGFjZSh0LnN1YnNldD9WYWEodC5zdWJzZXQpOkJhYSxhKSx0LnN1YnNldHx8dC5lc2NhcGVPbmx5KXJldHVybiBlO3JldHVybiBlLnJlcGxhY2UoSGFhLHIpLnJlcGxhY2UocWFhLGEpO2Z1bmN0aW9uIHIoaSxvLG4pe3JldHVybiB0LmZvcm1hdCgoaS5jaGFyQ29kZUF0KDApLTU1Mjk2KSoxMDI0K2kuY2hhckNvZGVBdCgxKS01NjMyMCs2NTUzNixuLmNoYXJDb2RlQXQobysyKSx0KX1mdW5jdGlvbiBhKGksbyxuKXtyZXR1cm4gdC5mb3JtYXQoaS5jaGFyQ29kZUF0KDApLG4uY2hhckNvZGVBdChvKzEpLHQpfX1mdW5jdGlvbiBWYWEoZSl7bGV0IHQ9WGt0LmdldChlKTtyZXR1cm4gdHx8KHQ9VWFhKGUpLFhrdC5zZXQoZSx0KSksdH1mdW5jdGlvbiBVYWEoZSl7bGV0IHQ9W10scj0tMTtmb3IoOysrcjxlLmxlbmd0aDspdC5wdXNoKGVbcl0ucmVwbGFjZShqYWEsIlxcJCYiKSk7cmV0dXJuIG5ldyBSZWdFeHAoIig/OiIrdC5qb2luKCJ8IikrIikiLCJnIil9dmFyIEJhYSxIYWEscWFhLGphYSxYa3QsUWt0PWwoKCk9PntCYWE9L1siJic8PmBdL2csSGFhPS9bXHVEODAwLVx1REJGRl1bXHVEQzAwLVx1REZGRl0vZyxxYWE9L1tceDAxLVx0XHZcZlx4MEUtXHgxRlx4N0ZceDgxXHg4RFx4OEZceDkwXHg5RFx4QTAtXHVGRkZGXS9nLGphYT0vW3xcXHt9KClbXF1eJCsqPy5dL2csWGt0PW5ldyBXZWFrTWFwfSk7ZnVuY3Rpb24gS2t0KGUsdCxyKXtsZXQgYT0iJiN4IitlLnRvU3RyaW5nKDE2KS50b1VwcGVyQ2FzZSgpO3JldHVybiByJiZ0JiYhV2FhLnRlc3QoU3RyaW5nLmZyb21DaGFyQ29kZSh0KSk/YTphKyI7In12YXIgV2FhLEprdD1sKCgpPT57V2FhPS9bXGRBLUZhLWZdL30pO2Z1bmN0aW9uIGVTdChlLHQscil7bGV0IGE9IiYjIitTdHJpbmcoZSk7cmV0dXJuIHImJnQmJiFHYWEudGVzdChTdHJpbmcuZnJvbUNoYXJDb2RlKHQpKT9hOmErIjsifXZhciBHYWEsdFN0PWwoKCk9PntHYWE9L1xkL30pO3ZhciByU3QsYVN0PWwoKCk9PntyU3Q9WyJBRWxpZyIsIkFNUCIsIkFhY3V0ZSIsIkFjaXJjIiwiQWdyYXZlIiwiQXJpbmciLCJBdGlsZGUiLCJBdW1sIiwiQ09QWSIsIkNjZWRpbCIsIkVUSCIsIkVhY3V0ZSIsIkVjaXJjIiwiRWdyYXZlIiwiRXVtbCIsIkdUIiwiSWFjdXRlIiwiSWNpcmMiLCJJZ3JhdmUiLCJJdW1sIiwiTFQiLCJOdGlsZGUiLCJPYWN1dGUiLCJPY2lyYyIsIk9ncmF2ZSIsIk9zbGFzaCIsIk90aWxkZSIsIk91bWwiLCJRVU9UIiwiUkVHIiwiVEhPUk4iLCJVYWN1dGUiLCJVY2lyYyIsIlVncmF2ZSIsIlV1bWwiLCJZYWN1dGUiLCJhYWN1dGUiLCJhY2lyYyIsImFjdXRlIiwiYWVsaWciLCJhZ3JhdmUiLCJhbXAiLCJhcmluZyIsImF0aWxkZSIsImF1bWwiLCJicnZiYXIiLCJjY2VkaWwiLCJjZWRpbCIsImNlbnQiLCJjb3B5IiwiY3VycmVuIiwiZGVnIiwiZGl2aWRlIiwiZWFjdXRlIiwiZWNpcmMiLCJlZ3JhdmUiLCJldGgiLCJldW1sIiwiZnJhYzEyIiwiZnJhYzE0IiwiZnJhYzM0IiwiZ3QiLCJpYWN1dGUiLCJpY2lyYyIsImlleGNsIiwiaWdyYXZlIiwiaXF1ZXN0IiwiaXVtbCIsImxhcXVvIiwibHQiLCJtYWNyIiwibWljcm8iLCJtaWRkb3QiLCJuYnNwIiwibm90IiwibnRpbGRlIiwib2FjdXRlIiwib2NpcmMiLCJvZ3JhdmUiLCJvcmRmIiwib3JkbSIsIm9zbGFzaCIsIm90aWxkZSIsIm91bWwiLCJwYXJhIiwicGx1c21uIiwicG91bmQiLCJxdW90IiwicmFxdW8iLCJyZWciLCJzZWN0Iiwic2h5Iiwic3VwMSIsInN1cDIiLCJzdXAzIiwic3psaWciLCJ0aG9ybiIsInRpbWVzIiwidWFjdXRlIiwidWNpcmMiLCJ1Z3JhdmUiLCJ1bWwiLCJ1dW1sIiwieWFjdXRlIiwieWVuIiwieXVtbCJdfSk7dmFyIE10ZSxpU3Q9bCgoKT0+e010ZT17bmJzcDoiXHhBMCIsaWV4Y2w6Ilx4QTEiLGNlbnQ6Ilx4QTIiLHBvdW5kOiJceEEzIixjdXJyZW46Ilx4QTQiLHllbjoiXHhBNSIsYnJ2YmFyOiJceEE2IixzZWN0OiJceEE3Iix1bWw6Ilx4QTgiLGNvcHk6Ilx4QTkiLG9yZGY6Ilx4QUEiLGxhcXVvOiJceEFCIixub3Q6Ilx4QUMiLHNoeToiXHhBRCIscmVnOiJceEFFIixtYWNyOiJceEFGIixkZWc6Ilx4QjAiLHBsdXNtbjoiXHhCMSIsc3VwMjoiXHhCMiIsc3VwMzoiXHhCMyIsYWN1dGU6Ilx4QjQiLG1pY3JvOiJceEI1IixwYXJhOiJceEI2IixtaWRkb3Q6Ilx4QjciLGNlZGlsOiJceEI4IixzdXAxOiJceEI5IixvcmRtOiJceEJBIixyYXF1bzoiXHhCQiIsZnJhYzE0OiJceEJDIixmcmFjMTI6Ilx4QkQiLGZyYWMzNDoiXHhCRSIsaXF1ZXN0OiJceEJGIixBZ3JhdmU6Ilx4QzAiLEFhY3V0ZToiXHhDMSIsQWNpcmM6Ilx4QzIiLEF0aWxkZToiXHhDMyIsQXVtbDoiXHhDNCIsQXJpbmc6Ilx4QzUiLEFFbGlnOiJceEM2IixDY2VkaWw6Ilx4QzciLEVncmF2ZToiXHhDOCIsRWFjdXRlOiJceEM5IixFY2lyYzoiXHhDQSIsRXVtbDoiXHhDQiIsSWdyYXZlOiJceENDIixJYWN1dGU6Ilx4Q0QiLEljaXJjOiJceENFIixJdW1sOiJceENGIixFVEg6Ilx4RDAiLE50aWxkZToiXHhEMSIsT2dyYXZlOiJceEQyIixPYWN1dGU6Ilx4RDMiLE9jaXJjOiJceEQ0IixPdGlsZGU6Ilx4RDUiLE91bWw6Ilx4RDYiLHRpbWVzOiJceEQ3IixPc2xhc2g6Ilx4RDgiLFVncmF2ZToiXHhEOSIsVWFjdXRlOiJceERBIixVY2lyYzoiXHhEQiIsVXVtbDoiXHhEQyIsWWFjdXRlOiJceEREIixUSE9STjoiXHhERSIsc3psaWc6Ilx4REYiLGFncmF2ZToiXHhFMCIsYWFjdXRlOiJceEUxIixhY2lyYzoiXHhFMiIsYXRpbGRlOiJceEUzIixhdW1sOiJceEU0IixhcmluZzoiXHhFNSIsYWVsaWc6Ilx4RTYiLGNjZWRpbDoiXHhFNyIsZWdyYXZlOiJceEU4IixlYWN1dGU6Ilx4RTkiLGVjaXJjOiJceEVBIixldW1sOiJceEVCIixpZ3JhdmU6Ilx4RUMiLGlhY3V0ZToiXHhFRCIsaWNpcmM6Ilx4RUUiLGl1bWw6Ilx4RUYiLGV0aDoiXHhGMCIsbnRpbGRlOiJceEYxIixvZ3JhdmU6Ilx4RjIiLG9hY3V0ZToiXHhGMyIsb2NpcmM6Ilx4RjQiLG90aWxkZToiXHhGNSIsb3VtbDoiXHhGNiIsZGl2aWRlOiJceEY3Iixvc2xhc2g6Ilx4RjgiLHVncmF2ZToiXHhGOSIsdWFjdXRlOiJceEZBIix1Y2lyYzoiXHhGQiIsdXVtbDoiXHhGQyIseWFjdXRlOiJceEZEIix0aG9ybjoiXHhGRSIseXVtbDoiXHhGRiIsZm5vZjoiXHUwMTkyIixBbHBoYToiXHUwMzkxIixCZXRhOiJcdTAzOTIiLEdhbW1hOiJcdTAzOTMiLERlbHRhOiJcdTAzOTQiLEVwc2lsb246Ilx1MDM5NSIsWmV0YToiXHUwMzk2IixFdGE6Ilx1MDM5NyIsVGhldGE6Ilx1MDM5OCIsSW90YToiXHUwMzk5IixLYXBwYToiXHUwMzlBIixMYW1iZGE6Ilx1MDM5QiIsTXU6Ilx1MDM5QyIsTnU6Ilx1MDM5RCIsWGk6Ilx1MDM5RSIsT21pY3JvbjoiXHUwMzlGIixQaToiXHUwM0EwIixSaG86Ilx1MDNBMSIsU2lnbWE6Ilx1MDNBMyIsVGF1OiJcdTAzQTQiLFVwc2lsb246Ilx1MDNBNSIsUGhpOiJcdTAzQTYiLENoaToiXHUwM0E3IixQc2k6Ilx1MDNBOCIsT21lZ2E6Ilx1MDNBOSIsYWxwaGE6Ilx1MDNCMSIsYmV0YToiXHUwM0IyIixnYW1tYToiXHUwM0IzIixkZWx0YToiXHUwM0I0IixlcHNpbG9uOiJcdTAzQjUiLHpldGE6Ilx1MDNCNiIsZXRhOiJcdTAzQjciLHRoZXRhOiJcdTAzQjgiLGlvdGE6Ilx1MDNCOSIsa2FwcGE6Ilx1MDNCQSIsbGFtYmRhOiJcdTAzQkIiLG11OiJcdTAzQkMiLG51OiJcdTAzQkQiLHhpOiJcdTAzQkUiLG9taWNyb246Ilx1MDNCRiIscGk6Ilx1MDNDMCIscmhvOiJcdTAzQzEiLHNpZ21hZjoiXHUwM0MyIixzaWdtYToiXHUwM0MzIix0YXU6Ilx1MDNDNCIsdXBzaWxvbjoiXHUwM0M1IixwaGk6Ilx1MDNDNiIsY2hpOiJcdTAzQzciLHBzaToiXHUwM0M4IixvbWVnYToiXHUwM0M5Iix0aGV0YXN5bToiXHUwM0QxIix1cHNpaDoiXHUwM0QyIixwaXY6Ilx1MDNENiIsYnVsbDoiXHUyMDIyIixoZWxsaXA6Ilx1MjAyNiIscHJpbWU6Ilx1MjAzMiIsUHJpbWU6Ilx1MjAzMyIsb2xpbmU6Ilx1MjAzRSIsZnJhc2w6Ilx1MjA0NCIsd2VpZXJwOiJcdTIxMTgiLGltYWdlOiJcdTIxMTEiLHJlYWw6Ilx1MjExQyIsdHJhZGU6Ilx1MjEyMiIsYWxlZnN5bToiXHUyMTM1IixsYXJyOiJcdTIxOTAiLHVhcnI6Ilx1MjE5MSIscmFycjoiXHUyMTkyIixkYXJyOiJcdTIxOTMiLGhhcnI6Ilx1MjE5NCIsY3JhcnI6Ilx1MjFCNSIsbEFycjoiXHUyMUQwIix1QXJyOiJcdTIxRDEiLHJBcnI6Ilx1MjFEMiIsZEFycjoiXHUyMUQzIixoQXJyOiJcdTIxRDQiLGZvcmFsbDoiXHUyMjAwIixwYXJ0OiJcdTIyMDIiLGV4aXN0OiJcdTIyMDMiLGVtcHR5OiJcdTIyMDUiLG5hYmxhOiJcdTIyMDciLGlzaW46Ilx1MjIwOCIsbm90aW46Ilx1MjIwOSIsbmk6Ilx1MjIwQiIscHJvZDoiXHUyMjBGIixzdW06Ilx1MjIxMSIsbWludXM6Ilx1MjIxMiIsbG93YXN0OiJcdTIyMTciLHJhZGljOiJcdTIyMUEiLHByb3A6Ilx1MjIxRCIsaW5maW46Ilx1MjIxRSIsYW5nOiJcdTIyMjAiLGFuZDoiXHUyMjI3IixvcjoiXHUyMjI4IixjYXA6Ilx1MjIyOSIsY3VwOiJcdTIyMkEiLGludDoiXHUyMjJCIix0aGVyZTQ6Ilx1MjIzNCIsc2ltOiJcdTIyM0MiLGNvbmc6Ilx1MjI0NSIsYXN5bXA6Ilx1MjI0OCIsbmU6Ilx1MjI2MCIsZXF1aXY6Ilx1MjI2MSIsbGU6Ilx1MjI2NCIsZ2U6Ilx1MjI2NSIsc3ViOiJcdTIyODIiLHN1cDoiXHUyMjgzIixuc3ViOiJcdTIyODQiLHN1YmU6Ilx1MjI4NiIsc3VwZToiXHUyMjg3IixvcGx1czoiXHUyMjk1IixvdGltZXM6Ilx1MjI5NyIscGVycDoiXHUyMkE1IixzZG90OiJcdTIyQzUiLGxjZWlsOiJcdTIzMDgiLHJjZWlsOiJcdTIzMDkiLGxmbG9vcjoiXHUyMzBBIixyZmxvb3I6Ilx1MjMwQiIsbGFuZzoiXHUyMzI5IixyYW5nOiJcdTIzMkEiLGxvejoiXHUyNUNBIixzcGFkZXM6Ilx1MjY2MCIsY2x1YnM6Ilx1MjY2MyIsaGVhcnRzOiJcdTI2NjUiLGRpYW1zOiJcdTI2NjYiLHF1b3Q6JyInLGFtcDoiJiIsbHQ6IjwiLGd0OiI+IixPRWxpZzoiXHUwMTUyIixvZWxpZzoiXHUwMTUzIixTY2Fyb246Ilx1MDE2MCIsc2Nhcm9uOiJcdTAxNjEiLFl1bWw6Ilx1MDE3OCIsY2lyYzoiXHUwMkM2Iix0aWxkZToiXHUwMkRDIixlbnNwOiJcdTIwMDIiLGVtc3A6Ilx1MjAwMyIsdGhpbnNwOiJcdTIwMDkiLHp3bmo6Ilx1MjAwQyIsendqOiJcdTIwMEQiLGxybToiXHUyMDBFIixybG06Ilx1MjAwRiIsbmRhc2g6Ilx1MjAxMyIsbWRhc2g6Ilx1MjAxNCIsbHNxdW86Ilx1MjAxOCIscnNxdW86Ilx1MjAxOSIsc2JxdW86Ilx1MjAxQSIsbGRxdW86Ilx1MjAxQyIscmRxdW86Ilx1MjAxRCIsYmRxdW86Ilx1MjAxRSIsZGFnZ2VyOiJcdTIwMjAiLERhZ2dlcjoiXHUyMDIxIixwZXJtaWw6Ilx1MjAzMCIsbHNhcXVvOiJcdTIwMzkiLHJzYXF1bzoiXHUyMDNBIixldXJvOiJcdTIwQUMifX0pO3ZhciBvU3QsblN0PWwoKCk9PntvU3Q9WyJjZW50IiwiY29weSIsImRpdmlkZSIsImd0IiwibHQiLCJub3QiLCJwYXJhIiwidGltZXMiXX0pO2Z1bmN0aW9uIGxTdChlLHQscixhKXtsZXQgaT1TdHJpbmcuZnJvbUNoYXJDb2RlKGUpO2lmKHNTdC5jYWxsKGtwZSxpKSl7bGV0IG89a3BlW2ldLG49IiYiK287cmV0dXJuIHImJnJTdC5pbmNsdWRlcyhvKSYmIW9TdC5pbmNsdWRlcyhvKSYmKCFhfHx0JiZ0IT09NjEmJllhYS50ZXN0KFN0cmluZy5mcm9tQ2hhckNvZGUodCkpKT9uOm4rIjsifXJldHVybiIifXZhciBzU3Qsa3BlLGt0ZSxZYWEsY1N0PWwoKCk9PnthU3QoKTtpU3QoKTtuU3QoKTtzU3Q9e30uaGFzT3duUHJvcGVydHksa3BlPXt9O2ZvcihrdGUgaW4gTXRlKXNTdC5jYWxsKE10ZSxrdGUpJiYoa3BlW010ZVtrdGVdXT1rdGUpO1lhYT0vW15cZEEtWmEtel0vfSk7ZnVuY3Rpb24gZFN0KGUsdCxyKXtsZXQgYT1La3QoZSx0LHIub21pdE9wdGlvbmFsU2VtaWNvbG9ucyksaTtpZigoci51c2VOYW1lZFJlZmVyZW5jZXN8fHIudXNlU2hvcnRlc3RSZWZlcmVuY2VzKSYmKGk9bFN0KGUsdCxyLm9taXRPcHRpb25hbFNlbWljb2xvbnMsci5hdHRyaWJ1dGUpKSwoci51c2VTaG9ydGVzdFJlZmVyZW5jZXN8fCFpKSYmci51c2VTaG9ydGVzdFJlZmVyZW5jZXMpe2xldCBvPWVTdChlLHQsci5vbWl0T3B0aW9uYWxTZW1pY29sb25zKTtvLmxlbmd0aDxhLmxlbmd0aCYmKGE9byl9cmV0dXJuIGkmJighci51c2VTaG9ydGVzdFJlZmVyZW5jZXN8fGkubGVuZ3RoPGEubGVuZ3RoKT9pOmF9dmFyIHVTdD1sKCgpPT57Smt0KCk7dFN0KCk7Y1N0KCl9KTtmdW5jdGlvbiBmU3QoZSl7cmV0dXJuIiYjeCIrZS50b1N0cmluZygxNikudG9VcHBlckNhc2UoKSsiOyJ9dmFyIHBTdD1sKCgpPT57fSk7ZnVuY3Rpb24gVWwoZSx0KXtyZXR1cm4gTXBlKGUsT2JqZWN0LmFzc2lnbih7Zm9ybWF0OmRTdH0sdCkpfWZ1bmN0aW9uIEU3aShlLHQpe3JldHVybiBNcGUoZSxPYmplY3QuYXNzaWduKHtmb3JtYXQ6ZlN0fSx0KSl9dmFyIGhTdD1sKCgpPT57UWt0KCk7dVN0KCk7cFN0KCl9KTt2YXIgU3RlPWwoKCk9PntoU3QoKX0pO2Z1bmN0aW9uIG1TdChlLHQscixhKXtyZXR1cm4gYS5zZXR0aW5ncy5ib2d1c0NvbW1lbnRzPyI8PyIrVWwoZS52YWx1ZSxPYmplY3QuYXNzaWduKHt9LGEuc2V0dGluZ3MuY2hhcmFjdGVyUmVmZXJlbmNlcyx7c3Vic2V0OlhhYX0pKSsiPiI6IjwhLS0iK2UudmFsdWUucmVwbGFjZShaYWEsaSkrIi0tPiI7ZnVuY3Rpb24gaShvKXtyZXR1cm4gVWwobyxPYmplY3QuYXNzaWduKHt9LGEuc2V0dGluZ3MuY2hhcmFjdGVyUmVmZXJlbmNlcyx7c3Vic2V0OlFhYX0pKX19dmFyIFphYSxYYWEsUWFhLGdTdD1sKCgpPT57U3RlKCk7WmFhPS9ePnxeLT58PCEtLXwtLT58LS0hPnw8IS0kL2csWGFhPVsiPiJdLFFhYT1bIjwiLCI+Il19KTtmdW5jdGlvbiB4U3QoZSx0LHIsYSl7cmV0dXJuIjwhIisoYS5zZXR0aW5ncy51cHBlckRvY3R5cGU/IkRPQ1RZUEUiOiJkb2N0eXBlIikrKGEuc2V0dGluZ3MudGlnaHREb2N0eXBlPyIiOiIgIikrImh0bWw+In12YXIgYlN0PWwoKCk9Pnt9KTtmdW5jdGlvbiBSN2koZSl7bGV0IHQ9W10scj1TdHJpbmcoZXx8IiIpLGE9ci5pbmRleE9mKCIsIiksaT0wLG89ITE7Zm9yKDshbzspe2E9PT0tMSYmKGE9ci5sZW5ndGgsbz0hMCk7bGV0IG49ci5zbGljZShpLGEpLnRyaW0oKTsobnx8IW8pJiZ0LnB1c2gobiksaT1hKzEsYT1yLmluZGV4T2YoIiwiLGkpfXJldHVybiB0fWZ1bmN0aW9uIHZTdChlLHQpe2xldCByPXR8fHt9O3JldHVybihlW2UubGVuZ3RoLTFdPT09IiI/Wy4uLmUsIiJdOmUpLmpvaW4oKHIucGFkUmlnaHQ/IiAiOiIiKSsiLCIrKHIucGFkTGVmdD09PSExPyIiOiIgIikpLnRyaW0oKX12YXIgeVN0PWwoKCk9Pnt9KTtmdW5jdGlvbiBIN2koZSl7bGV0IHQ9U3RyaW5nKGV8fCIiKS50cmltKCk7cmV0dXJuIHQ/dC5zcGxpdCgvWyBcdFxuXHJcZl0rL2cpOltdfWZ1bmN0aW9uIHdTdChlKXtyZXR1cm4gZS5qb2luKCIgIikudHJpbSgpfXZhciBNU3Q9bCgoKT0+e30pO2Z1bmN0aW9uIE5kKGUpe3JldHVybiB0eXBlb2YgZT09Im9iamVjdCI/ZS50eXBlPT09InRleHQiP2tTdChlLnZhbHVlKTohMTprU3QoZSl9ZnVuY3Rpb24ga1N0KGUpe3JldHVybiBlLnJlcGxhY2UoS2FhLCIiKT09PSIifXZhciBLYWEsU1N0PWwoKCk9PntLYWE9L1sgXHRcblxmXHJdL2d9KTt2YXIgenRlPWwoKCk9PntTU3QoKX0pO2Z1bmN0aW9uIHpTdChlKXtyZXR1cm4gdDtmdW5jdGlvbiB0KHIsYSxpKXtsZXQgbz1yP3IuY2hpbGRyZW46SmFhLG49KGF8fDApK2Uscz1vW25dO2lmKCFpKWZvcig7cyYmTmQocyk7KW4rPWUscz1vW25dO3JldHVybiBzfX12YXIgZWksU3BlLEphYSx6cGU9bCgoKT0+e3p0ZSgpO2VpPXpTdCgxKSxTcGU9elN0KC0xKSxKYWE9W119KTtmdW5jdGlvbiBDdGUoZSl7cmV0dXJuIHQ7ZnVuY3Rpb24gdChyLGEsaSl7cmV0dXJuIGVpYS5jYWxsKGUsci50YWdOYW1lKSYmZVtyLnRhZ05hbWVdKHIsYSxpKX19dmFyIGVpYSxDcGU9bCgoKT0+e2VpYT17fS5oYXNPd25Qcm9wZXJ0eX0pO2Z1bmN0aW9uIF9wZShlLHQscil7bGV0IGE9ZWkocix0LCEwKTtyZXR1cm4hYXx8YS50eXBlIT09ImNvbW1lbnQiJiYhKGEudHlwZT09PSJ0ZXh0IiYmTmQoYS52YWx1ZS5jaGFyQXQoMCkpKX1mdW5jdGlvbiB0aWEoZSx0LHIpe2xldCBhPWVpKHIsdCk7cmV0dXJuIWF8fGEudHlwZSE9PSJjb21tZW50In1mdW5jdGlvbiByaWEoZSx0LHIpe2xldCBhPWVpKHIsdCk7cmV0dXJuIWF8fGEudHlwZSE9PSJjb21tZW50In1mdW5jdGlvbiBhaWEoZSx0LHIpe2xldCBhPWVpKHIsdCk7cmV0dXJuIGE/YS50eXBlPT09ImVsZW1lbnQiJiYoYS50YWdOYW1lPT09ImFkZHJlc3MifHxhLnRhZ05hbWU9PT0iYXJ0aWNsZSJ8fGEudGFnTmFtZT09PSJhc2lkZSJ8fGEudGFnTmFtZT09PSJibG9ja3F1b3RlInx8YS50YWdOYW1lPT09ImRldGFpbHMifHxhLnRhZ05hbWU9PT0iZGl2Inx8YS50YWdOYW1lPT09ImRsInx8YS50YWdOYW1lPT09ImZpZWxkc2V0Inx8YS50YWdOYW1lPT09ImZpZ2NhcHRpb24ifHxhLnRhZ05hbWU9PT0iZmlndXJlInx8YS50YWdOYW1lPT09ImZvb3RlciJ8fGEudGFnTmFtZT09PSJmb3JtInx8YS50YWdOYW1lPT09ImgxInx8YS50YWdOYW1lPT09ImgyInx8YS50YWdOYW1lPT09ImgzInx8YS50YWdOYW1lPT09Img0Inx8YS50YWdOYW1lPT09Img1Inx8YS50YWdOYW1lPT09Img2Inx8YS50YWdOYW1lPT09ImhlYWRlciJ8fGEudGFnTmFtZT09PSJoZ3JvdXAifHxhLnRhZ05hbWU9PT0iaHIifHxhLnRhZ05hbWU9PT0ibWFpbiJ8fGEudGFnTmFtZT09PSJtZW51Inx8YS50YWdOYW1lPT09Im5hdiJ8fGEudGFnTmFtZT09PSJvbCJ8fGEudGFnTmFtZT09PSJwInx8YS50YWdOYW1lPT09InByZSJ8fGEudGFnTmFtZT09PSJzZWN0aW9uInx8YS50YWdOYW1lPT09InRhYmxlInx8YS50YWdOYW1lPT09InVsIik6IXJ8fCEoci50eXBlPT09ImVsZW1lbnQiJiYoci50YWdOYW1lPT09ImEifHxyLnRhZ05hbWU9PT0iYXVkaW8ifHxyLnRhZ05hbWU9PT0iZGVsInx8ci50YWdOYW1lPT09ImlucyJ8fHIudGFnTmFtZT09PSJtYXAifHxyLnRhZ05hbWU9PT0ibm9zY3JpcHQifHxyLnRhZ05hbWU9PT0idmlkZW8iKSl9ZnVuY3Rpb24gaWlhKGUsdCxyKXtsZXQgYT1laShyLHQpO3JldHVybiFhfHxhLnR5cGU9PT0iZWxlbWVudCImJmEudGFnTmFtZT09PSJsaSJ9ZnVuY3Rpb24gb2lhKGUsdCxyKXtsZXQgYT1laShyLHQpO3JldHVybiEhKGEmJmEudHlwZT09PSJlbGVtZW50IiYmKGEudGFnTmFtZT09PSJkdCJ8fGEudGFnTmFtZT09PSJkZCIpKX1mdW5jdGlvbiBuaWEoZSx0LHIpe2xldCBhPWVpKHIsdCk7cmV0dXJuIWF8fGEudHlwZT09PSJlbGVtZW50IiYmKGEudGFnTmFtZT09PSJkdCJ8fGEudGFnTmFtZT09PSJkZCIpfWZ1bmN0aW9uIENTdChlLHQscil7bGV0IGE9ZWkocix0KTtyZXR1cm4hYXx8YS50eXBlPT09ImVsZW1lbnQiJiYoYS50YWdOYW1lPT09InJwInx8YS50YWdOYW1lPT09InJ0Iil9ZnVuY3Rpb24gc2lhKGUsdCxyKXtsZXQgYT1laShyLHQpO3JldHVybiFhfHxhLnR5cGU9PT0iZWxlbWVudCImJmEudGFnTmFtZT09PSJvcHRncm91cCJ9ZnVuY3Rpb24gbGlhKGUsdCxyKXtsZXQgYT1laShyLHQpO3JldHVybiFhfHxhLnR5cGU9PT0iZWxlbWVudCImJihhLnRhZ05hbWU9PT0ib3B0aW9uInx8YS50YWdOYW1lPT09Im9wdGdyb3VwIil9ZnVuY3Rpb24gY2lhKGUsdCxyKXtsZXQgYT1laShyLHQpO3JldHVybiEhKGEmJmEudHlwZT09PSJlbGVtZW50IiYmKGEudGFnTmFtZT09PSJ0Ym9keSJ8fGEudGFnTmFtZT09PSJ0Zm9vdCIpKX1mdW5jdGlvbiBkaWEoZSx0LHIpe2xldCBhPWVpKHIsdCk7cmV0dXJuIWF8fGEudHlwZT09PSJlbGVtZW50IiYmKGEudGFnTmFtZT09PSJ0Ym9keSJ8fGEudGFnTmFtZT09PSJ0Zm9vdCIpfWZ1bmN0aW9uIHVpYShlLHQscil7cmV0dXJuIWVpKHIsdCl9ZnVuY3Rpb24gZmlhKGUsdCxyKXtsZXQgYT1laShyLHQpO3JldHVybiFhfHxhLnR5cGU9PT0iZWxlbWVudCImJmEudGFnTmFtZT09PSJ0ciJ9ZnVuY3Rpb24gX1N0KGUsdCxyKXtsZXQgYT1laShyLHQpO3JldHVybiFhfHxhLnR5cGU9PT0iZWxlbWVudCImJihhLnRhZ05hbWU9PT0idGQifHxhLnRhZ05hbWU9PT0idGgiKX12YXIgU2IsVHBlPWwoKCk9Pnt6dGUoKTt6cGUoKTtDcGUoKTtTYj1DdGUoe2JvZHk6cmlhLGNhcHRpb246X3BlLGNvbGdyb3VwOl9wZSxkZDpuaWEsZHQ6b2lhLGhlYWQ6X3BlLGh0bWw6dGlhLGxpOmlpYSxvcHRncm91cDpzaWEsb3B0aW9uOmxpYSxwOmFpYSxycDpDU3QscnQ6Q1N0LHRib2R5OmRpYSx0ZDpfU3QsdGZvb3Q6dWlhLHRoOl9TdCx0aGVhZDpjaWEsdHI6ZmlhfSl9KTtmdW5jdGlvbiBwaWEoZSl7bGV0IHQ9ZWkoZSwtMSk7cmV0dXJuIXR8fHQudHlwZSE9PSJjb21tZW50In1mdW5jdGlvbiBoaWEoZSl7bGV0IHQ9bmV3IFNldDtmb3IobGV0IGEgb2YgZS5jaGlsZHJlbilpZihhLnR5cGU9PT0iZWxlbWVudCImJihhLnRhZ05hbWU9PT0iYmFzZSJ8fGEudGFnTmFtZT09PSJ0aXRsZSIpKXtpZih0LmhhcyhhLnRhZ05hbWUpKXJldHVybiExO3QuYWRkKGEudGFnTmFtZSl9bGV0IHI9ZS5jaGlsZHJlblswXTtyZXR1cm4hcnx8ci50eXBlPT09ImVsZW1lbnQifWZ1bmN0aW9uIG1pYShlKXtsZXQgdD1laShlLC0xLCEwKTtyZXR1cm4hdHx8dC50eXBlIT09ImNvbW1lbnQiJiYhKHQudHlwZT09PSJ0ZXh0IiYmTmQodC52YWx1ZS5jaGFyQXQoMCkpKSYmISh0LnR5cGU9PT0iZWxlbWVudCImJih0LnRhZ05hbWU9PT0ibWV0YSJ8fHQudGFnTmFtZT09PSJsaW5rInx8dC50YWdOYW1lPT09InNjcmlwdCJ8fHQudGFnTmFtZT09PSJzdHlsZSJ8fHQudGFnTmFtZT09PSJ0ZW1wbGF0ZSIpKX1mdW5jdGlvbiBnaWEoZSx0LHIpe2xldCBhPVNwZShyLHQpLGk9ZWkoZSwtMSwhMCk7cmV0dXJuIHImJmEmJmEudHlwZT09PSJlbGVtZW50IiYmYS50YWdOYW1lPT09ImNvbGdyb3VwIiYmU2IoYSxyLmNoaWxkcmVuLmluZGV4T2YoYSkscik/ITE6ISEoaSYmaS50eXBlPT09ImVsZW1lbnQiJiZpLnRhZ05hbWU9PT0iY29sIil9ZnVuY3Rpb24geGlhKGUsdCxyKXtsZXQgYT1TcGUocix0KSxpPWVpKGUsLTEpO3JldHVybiByJiZhJiZhLnR5cGU9PT0iZWxlbWVudCImJihhLnRhZ05hbWU9PT0idGhlYWQifHxhLnRhZ05hbWU9PT0idGJvZHkiKSYmU2IoYSxyLmNoaWxkcmVuLmluZGV4T2YoYSkscik/ITE6ISEoaSYmaS50eXBlPT09ImVsZW1lbnQiJiZpLnRhZ05hbWU9PT0idHIiKX12YXIgVFN0LExTdD1sKCgpPT57enRlKCk7enBlKCk7VHBlKCk7Q3BlKCk7VFN0PUN0ZSh7Ym9keTptaWEsY29sZ3JvdXA6Z2lhLGhlYWQ6aGlhLGh0bWw6cGlhLHRib2R5OnhpYX0pfSk7ZnVuY3Rpb24gRFN0KGUsdCxyLGEpe2xldCBpPWEuc2NoZW1hLG89aS5zcGFjZT09PSJzdmciPyExOmEuc2V0dGluZ3Mub21pdE9wdGlvbmFsVGFncyxuPWkuc3BhY2U9PT0ic3ZnIj9hLnNldHRpbmdzLmNsb3NlRW1wdHlFbGVtZW50czphLnNldHRpbmdzLnZvaWRzLmluY2x1ZGVzKGUudGFnTmFtZS50b0xvd2VyQ2FzZSgpKSxzPVtdLGM7aS5zcGFjZT09PSJodG1sIiYmZS50YWdOYW1lPT09InN2ZyImJihhLnNjaGVtYT13dGUpO2xldCBkPWJpYShhLGUucHJvcGVydGllcyksZj1hLmFsbChpLnNwYWNlPT09Imh0bWwiJiZlLnRhZ05hbWU9PT0idGVtcGxhdGUiP2UuY29udGVudDplKTtyZXR1cm4gYS5zY2hlbWE9aSxmJiYobj0hMSksKGR8fCFvfHwhVFN0KGUsdCxyKSkmJihzLnB1c2goIjwiLGUudGFnTmFtZSxkPyIgIitkOiIiKSxuJiYoaS5zcGFjZT09PSJzdmcifHxhLnNldHRpbmdzLmNsb3NlU2VsZkNsb3NpbmcpJiYoYz1kLmNoYXJBdChkLmxlbmd0aC0xKSwoIWEuc2V0dGluZ3MudGlnaHRTZWxmQ2xvc2luZ3x8Yz09PSIvInx8YyYmYyE9PSciJyYmYyE9PSInIikmJnMucHVzaCgiICIpLHMucHVzaCgiLyIpKSxzLnB1c2goIj4iKSkscy5wdXNoKGYpLCFuJiYoIW98fCFTYihlLHQscikpJiZzLnB1c2goIjwvIitlLnRhZ05hbWUrIj4iKSxzLmpvaW4oIiIpfWZ1bmN0aW9uIGJpYShlLHQpe2xldCByPVtdLGE9LTEsaTtpZih0KXtmb3IoaSBpbiB0KWlmKHRbaV0hPT1udWxsJiZ0W2ldIT09dm9pZCAwKXtsZXQgbz12aWEoZSxpLHRbaV0pO28mJnIucHVzaChvKX19Zm9yKDsrK2E8ci5sZW5ndGg7KXtsZXQgbz1lLnNldHRpbmdzLnRpZ2h0QXR0cmlidXRlcz9yW2FdLmNoYXJBdChyW2FdLmxlbmd0aC0xKTp2b2lkIDA7YSE9PXIubGVuZ3RoLTEmJm8hPT0nIicmJm8hPT0iJyImJihyW2FdKz0iICIpfXJldHVybiByLmpvaW4oIiIpfWZ1bmN0aW9uIHZpYShlLHQscil7bGV0IGE9eXBlKGUuc2NoZW1hLHQpLGk9ZS5zZXR0aW5ncy5hbGxvd1BhcnNlRXJyb3JzJiZlLnNjaGVtYS5zcGFjZT09PSJodG1sIj8wOjEsbz1lLnNldHRpbmdzLmFsbG93RGFuZ2Vyb3VzQ2hhcmFjdGVycz8wOjEsbj1lLnF1b3RlLHM7aWYoYS5vdmVybG9hZGVkQm9vbGVhbiYmKHI9PT1hLmF0dHJpYnV0ZXx8cj09PSIiKT9yPSEwOihhLmJvb2xlYW58fGEub3ZlcmxvYWRlZEJvb2xlYW4pJiYodHlwZW9mIHIhPSJzdHJpbmcifHxyPT09YS5hdHRyaWJ1dGV8fHI9PT0iIikmJihyPSEhcikscj09bnVsbHx8cj09PSExfHx0eXBlb2Ygcj09Im51bWJlciImJk51bWJlci5pc05hTihyKSlyZXR1cm4iIjtsZXQgYz1VbChhLmF0dHJpYnV0ZSxPYmplY3QuYXNzaWduKHt9LGUuc2V0dGluZ3MuY2hhcmFjdGVyUmVmZXJlbmNlcyx7c3Vic2V0Ol90ZS5uYW1lW2ldW29dfSkpO3JldHVybiByPT09ITB8fChyPUFycmF5LmlzQXJyYXkocik/KGEuY29tbWFTZXBhcmF0ZWQ/dlN0OndTdCkocix7cGFkTGVmdDohZS5zZXR0aW5ncy50aWdodENvbW1hU2VwYXJhdGVkTGlzdHN9KTpTdHJpbmcociksZS5zZXR0aW5ncy5jb2xsYXBzZUVtcHR5QXR0cmlidXRlcyYmIXIpP2M6KGUuc2V0dGluZ3MucHJlZmVyVW5xdW90ZWQmJihzPVVsKHIsT2JqZWN0LmFzc2lnbih7fSxlLnNldHRpbmdzLmNoYXJhY3RlclJlZmVyZW5jZXMse2F0dHJpYnV0ZTohMCxzdWJzZXQ6X3RlLnVucXVvdGVkW2ldW29dfSkpKSxzIT09ciYmKGUuc2V0dGluZ3MucXVvdGVTbWFydCYmbW0ocixuKT5tbShyLGUuYWx0ZXJuYXRpdmUpJiYobj1lLmFsdGVybmF0aXZlKSxzPW4rVWwocixPYmplY3QuYXNzaWduKHt9LGUuc2V0dGluZ3MuY2hhcmFjdGVyUmVmZXJlbmNlcyx7c3Vic2V0OihuPT09IiciP190ZS5zaW5nbGU6X3RlLmRvdWJsZSlbaV1bb10sYXR0cmlidXRlOiEwfSkpK24pLGMrKHMmJiI9IitzKSl9dmFyIF90ZSxBU3Q9bCgoKT0+e2hmZSgpO3lTdCgpO3dwZSgpO01TdCgpO1N0ZSgpO1RwZSgpO0xTdCgpO190ZT17bmFtZTpbW2AJClxmXHIgJi89PmAuc3BsaXQoIiIpLGAJClxmXHIgIiYnLz0+XGBgLnNwbGl0KCIiKV0sW2BcMAkKXGZcciAiJicvPD0+YC5zcGxpdCgiIiksYFwwCQpcZlxyICImJy88PT5cYGAuc3BsaXQoIiIpXV0sdW5xdW90ZWQ6W1tgCQpcZlxyICY+YC5zcGxpdCgiIiksYFwwCQpcZlxyICImJzw9PlxgYC5zcGxpdCgiIildLFtgXDAJClxmXHIgIiYnPD0+XGBgLnNwbGl0KCIiKSxgXDAJClxmXHIgIiYnPD0+XGBgLnNwbGl0KCIiKV1dLHNpbmdsZTpbWyImJyIuc3BsaXQoIiIpLCJcIiYnYCIuc3BsaXQoIiIpXSxbIlwwJiciLnNwbGl0KCIiKSwiXDBcIiYnYCIuc3BsaXQoIiIpXV0sZG91YmxlOltbJyImJy5zcGxpdCgiIiksIlwiJidgIi5zcGxpdCgiIildLFsnXDAiJicuc3BsaXQoIiIpLCJcMFwiJidgIi5zcGxpdCgiIildXX19KTtmdW5jdGlvbiBUdGUoZSx0LHIsYSl7cmV0dXJuIHImJnIudHlwZT09PSJlbGVtZW50IiYmKHIudGFnTmFtZT09PSJzY3JpcHQifHxyLnRhZ05hbWU9PT0ic3R5bGUiKT9lLnZhbHVlOlVsKGUudmFsdWUsT2JqZWN0LmFzc2lnbih7fSxhLnNldHRpbmdzLmNoYXJhY3RlclJlZmVyZW5jZXMse3N1YnNldDp5aWF9KSl9dmFyIHlpYSxMcGU9bCgoKT0+e1N0ZSgpO3lpYT1bIjwiLCImIl19KTtmdW5jdGlvbiBFU3QoZSx0LHIsYSl7cmV0dXJuIGEuc2V0dGluZ3MuYWxsb3dEYW5nZXJvdXNIdG1sP2UudmFsdWU6VHRlKGUsdCxyLGEpfXZhciAkU3Q9bCgoKT0+e0xwZSgpfSk7ZnVuY3Rpb24gUFN0KGUsdCxyLGEpe3JldHVybiBhLmFsbChlKX12YXIgSVN0PWwoKCk9Pnt9KTtmdW5jdGlvbiB3aWEoZSl7dGhyb3cgbmV3IEVycm9yKCJFeHBlY3RlZCBub2RlLCBub3QgYCIrZSsiYCIpfWZ1bmN0aW9uIE1pYShlKXtsZXQgdD1lO3Rocm93IG5ldyBFcnJvcigiQ2Fubm90IGNvbXBpbGUgdW5rbm93biBub2RlIGAiK3QudHlwZSsiYCIpfXZhciBOU3QsRlN0PWwoKCk9Pnt6ZmUoKTtnU3QoKTtiU3QoKTtBU3QoKTskU3QoKTtJU3QoKTtMcGUoKTtOU3Q9X2VlKCJ0eXBlIix7aW52YWxpZDp3aWEsdW5rbm93bjpNaWEsaGFuZGxlcnM6e2NvbW1lbnQ6bVN0LGRvY3R5cGU6eFN0LGVsZW1lbnQ6RFN0LHJhdzpFU3Qscm9vdDpQU3QsdGV4dDpUdGV9fSl9KTtmdW5jdGlvbiBEcGUoZSx0KXtsZXQgcj10fHxraWEsYT1yLnF1b3RlfHwnIicsaT1hPT09JyInPyInIjonIic7aWYoYSE9PSciJyYmYSE9PSInIil0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgcXVvdGUgYCIrYSsiYCwgZXhwZWN0ZWQgYCdgIG9yIGBcImAiKTtyZXR1cm57b25lOkNpYSxhbGw6X2lhLHNldHRpbmdzOntvbWl0T3B0aW9uYWxUYWdzOnIub21pdE9wdGlvbmFsVGFnc3x8ITEsYWxsb3dQYXJzZUVycm9yczpyLmFsbG93UGFyc2VFcnJvcnN8fCExLGFsbG93RGFuZ2Vyb3VzQ2hhcmFjdGVyczpyLmFsbG93RGFuZ2Vyb3VzQ2hhcmFjdGVyc3x8ITEscXVvdGVTbWFydDpyLnF1b3RlU21hcnR8fCExLHByZWZlclVucXVvdGVkOnIucHJlZmVyVW5xdW90ZWR8fCExLHRpZ2h0QXR0cmlidXRlczpyLnRpZ2h0QXR0cmlidXRlc3x8ITEsdXBwZXJEb2N0eXBlOnIudXBwZXJEb2N0eXBlfHwhMSx0aWdodERvY3R5cGU6ci50aWdodERvY3R5cGV8fCExLGJvZ3VzQ29tbWVudHM6ci5ib2d1c0NvbW1lbnRzfHwhMSx0aWdodENvbW1hU2VwYXJhdGVkTGlzdHM6ci50aWdodENvbW1hU2VwYXJhdGVkTGlzdHN8fCExLHRpZ2h0U2VsZkNsb3Npbmc6ci50aWdodFNlbGZDbG9zaW5nfHwhMSxjb2xsYXBzZUVtcHR5QXR0cmlidXRlczpyLmNvbGxhcHNlRW1wdHlBdHRyaWJ1dGVzfHwhMSxhbGxvd0Rhbmdlcm91c0h0bWw6ci5hbGxvd0Rhbmdlcm91c0h0bWx8fCExLHZvaWRzOnIudm9pZHN8fFBrdCxjaGFyYWN0ZXJSZWZlcmVuY2VzOnIuY2hhcmFjdGVyUmVmZXJlbmNlc3x8U2lhLGNsb3NlU2VsZkNsb3Npbmc6ci5jbG9zZVNlbGZDbG9zaW5nfHwhMSxjbG9zZUVtcHR5RWxlbWVudHM6ci5jbG9zZUVtcHR5RWxlbWVudHN8fCExfSxzY2hlbWE6ci5zcGFjZT09PSJzdmciP3d0ZTpaa3QscXVvdGU6YSxhbHRlcm5hdGl2ZTppfS5vbmUoQXJyYXkuaXNBcnJheShlKT97dHlwZToicm9vdCIsY2hpbGRyZW46ZX06ZSx2b2lkIDAsdm9pZCAwKX1mdW5jdGlvbiBDaWEoZSx0LHIpe3JldHVybiBOU3QoZSx0LHIsdGhpcyl9ZnVuY3Rpb24gX2lhKGUpe2xldCB0PVtdLHI9ZSYmZS5jaGlsZHJlbnx8emlhLGE9LTE7Zm9yKDsrK2E8ci5sZW5ndGg7KXRbYV09dGhpcy5vbmUoclthXSxhLGUpO3JldHVybiB0LmpvaW4oIiIpfXZhciBraWEsU2lhLHppYSxPU3Q9bCgoKT0+e0lrdCgpO3dwZSgpO0ZTdCgpO2tpYT17fSxTaWE9e30semlhPVtdfSk7dmFyIFJTdD1sKCgpPT57T1N0KCl9KTtmdW5jdGlvbiBMbShlKXtsZXQgdD10aGlzLHtoYW5kbGVyczpyLHNhbml0aXplOmEsLi4uaX09ZXx8VGlhLG89ITEsbjt0eXBlb2YgYT09ImJvb2xlYW4iP289IWE6YSYmKG49YSksdC5jb21waWxlcj1zO2Z1bmN0aW9uIHMoYyxkKXtsZXQgZj1scGUoYyx7aGFuZGxlcnM6cixhbGxvd0Rhbmdlcm91c0h0bWw6b30pLHU9bz9mOnJwZShmLG4pLHA9RHBlKHUsey4uLmksYWxsb3dEYW5nZXJvdXNIdG1sOm99KTtyZXR1cm4gZC5leHRuYW1lJiYoZC5leHRuYW1lPSIuaHRtbCIpLGMmJmMudHlwZT09PSJyb290IiYmcCYmL1teXHJcbl0vLnRlc3QocC5jaGFyQXQocC5sZW5ndGgtMSkpP3ArYApgOnB9fXZhciBUaWEsQlN0PWwoKCk9PntMTXQoKTska3QoKTtSU3QoKTtUaWE9e319KTt2YXIgSFN0PWwoKCk9PntCU3QoKX0pO2Z1bmN0aW9uIERtKGUpe2xldCB0PXRoaXM7dC5jb21waWxlcj1yO2Z1bmN0aW9uIHIoYSl7cmV0dXJuIFdmZShhLHsuLi50LmRhdGEoInNldHRpbmdzIiksLi4uZSxleHRlbnNpb25zOnQuZGF0YSgidG9NYXJrZG93bkV4dGVuc2lvbnMiKXx8W119KX19dmFyIHFTdD1sKCgpPT57RmVlKCl9KTt2YXIgalN0PWwoKCk9PntxU3QoKX0pO2Z1bmN0aW9uIExpYShlKXtmb3IodmFyIHQ9MTt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKXt2YXIgcj1hcmd1bWVudHNbdF07Zm9yKHZhciBhIGluIHIpci5oYXNPd25Qcm9wZXJ0eShhKSYmKGVbYV09clthXSl9cmV0dXJuIGV9ZnVuY3Rpb24gQXBlKGUsdCl7cmV0dXJuIEFycmF5KHQrMSkuam9pbihlKX1mdW5jdGlvbiBWU3QoZSl7cmV0dXJuIGUucmVwbGFjZSgvXlxuKi8sIiIpfWZ1bmN0aW9uIFVTdChlKXtmb3IodmFyIHQ9ZS5sZW5ndGg7dD4wJiZlW3QtMV09PT1gCmA7KXQtLTtyZXR1cm4gZS5zdWJzdHJpbmcoMCx0KX1mdW5jdGlvbiBXU3QoZSl7cmV0dXJuIFVTdChWU3QoZSkpfWZ1bmN0aW9uIEVwZShlKXtyZXR1cm4gJHBlKGUsRGlhKX1mdW5jdGlvbiBZU3QoZSl7cmV0dXJuICRwZShlLEdTdCl9ZnVuY3Rpb24gQWlhKGUpe3JldHVybiBYU3QoZSxHU3QpfWZ1bmN0aW9uIEVpYShlKXtyZXR1cm4gJHBlKGUsWlN0KX1mdW5jdGlvbiAkaWEoZSl7cmV0dXJuIFhTdChlLFpTdCl9ZnVuY3Rpb24gJHBlKGUsdCl7cmV0dXJuIHQuaW5kZXhPZihlLm5vZGVOYW1lKT49MH1mdW5jdGlvbiBYU3QoZSx0KXtyZXR1cm4gZS5nZXRFbGVtZW50c0J5VGFnTmFtZSYmdC5zb21lKGZ1bmN0aW9uKHIpe3JldHVybiBlLmdldEVsZW1lbnRzQnlUYWdOYW1lKHIpLmxlbmd0aH0pfWZ1bmN0aW9uIEx0ZShlKXtyZXR1cm4gZT9lLnJlcGxhY2UoLyhcbitccyopKy9nLGAKYCk6IiJ9ZnVuY3Rpb24gUVN0KGUpe3RoaXMub3B0aW9ucz1lLHRoaXMuX2tlZXA9W10sdGhpcy5fcmVtb3ZlPVtdLHRoaXMuYmxhbmtSdWxlPXtyZXBsYWNlbWVudDplLmJsYW5rUmVwbGFjZW1lbnR9LHRoaXMua2VlcFJlcGxhY2VtZW50PWUua2VlcFJlcGxhY2VtZW50LHRoaXMuZGVmYXVsdFJ1bGU9e3JlcGxhY2VtZW50OmUuZGVmYXVsdFJlcGxhY2VtZW50fSx0aGlzLmFycmF5PVtdO2Zvcih2YXIgdCBpbiBlLnJ1bGVzKXRoaXMuYXJyYXkucHVzaChlLnJ1bGVzW3RdKX1mdW5jdGlvbiBQcGUoZSx0LHIpe2Zvcih2YXIgYT0wO2E8ZS5sZW5ndGg7YSsrKXt2YXIgaT1lW2FdO2lmKFBpYShpLHQscikpcmV0dXJuIGl9fWZ1bmN0aW9uIFBpYShlLHQscil7dmFyIGE9ZS5maWx0ZXI7aWYodHlwZW9mIGE9PSJzdHJpbmciKXtpZihhPT09dC5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpKXJldHVybiEwfWVsc2UgaWYoQXJyYXkuaXNBcnJheShhKSl7aWYoYS5pbmRleE9mKHQubm9kZU5hbWUudG9Mb3dlckNhc2UoKSk+LTEpcmV0dXJuITB9ZWxzZSBpZih0eXBlb2YgYT09ImZ1bmN0aW9uIil7aWYoYS5jYWxsKGUsdCxyKSlyZXR1cm4hMH1lbHNlIHRocm93IG5ldyBUeXBlRXJyb3IoImBmaWx0ZXJgIG5lZWRzIHRvIGJlIGEgc3RyaW5nLCBhcnJheSwgb3IgZnVuY3Rpb24iKX1mdW5jdGlvbiBJaWEoZSl7dmFyIHQ9ZS5lbGVtZW50LHI9ZS5pc0Jsb2NrLGE9ZS5pc1ZvaWQsaT1lLmlzUHJlfHxmdW5jdGlvbih1KXtyZXR1cm4gdS5ub2RlTmFtZT09PSJQUkUifTtpZighKCF0LmZpcnN0Q2hpbGR8fGkodCkpKXtmb3IodmFyIG89bnVsbCxuPSExLHM9bnVsbCxjPUtTdChzLHQsaSk7YyE9PXQ7KXtpZihjLm5vZGVUeXBlPT09M3x8Yy5ub2RlVHlwZT09PTQpe3ZhciBkPWMuZGF0YS5yZXBsYWNlKC9bIFxyXG5cdF0rL2csIiAiKTtpZigoIW98fC8gJC8udGVzdChvLmRhdGEpKSYmIW4mJmRbMF09PT0iICImJihkPWQuc3Vic3RyKDEpKSwhZCl7Yz1JcGUoYyk7Y29udGludWV9Yy5kYXRhPWQsbz1jfWVsc2UgaWYoYy5ub2RlVHlwZT09PTEpcihjKXx8Yy5ub2RlTmFtZT09PSJCUiI/KG8mJihvLmRhdGE9by5kYXRhLnJlcGxhY2UoLyAkLywiIikpLG89bnVsbCxuPSExKTphKGMpfHxpKGMpPyhvPW51bGwsbj0hMCk6byYmKG49ITEpO2Vsc2V7Yz1JcGUoYyk7Y29udGludWV9dmFyIGY9S1N0KHMsYyxpKTtzPWMsYz1mfW8mJihvLmRhdGE9by5kYXRhLnJlcGxhY2UoLyAkLywiIiksby5kYXRhfHxJcGUobykpfX1mdW5jdGlvbiBJcGUoZSl7dmFyIHQ9ZS5uZXh0U2libGluZ3x8ZS5wYXJlbnROb2RlO3JldHVybiBlLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoZSksdH1mdW5jdGlvbiBLU3QoZSx0LHIpe3JldHVybiBlJiZlLnBhcmVudE5vZGU9PT10fHxyKHQpP3QubmV4dFNpYmxpbmd8fHQucGFyZW50Tm9kZTp0LmZpcnN0Q2hpbGR8fHQubmV4dFNpYmxpbmd8fHQucGFyZW50Tm9kZX1mdW5jdGlvbiBOaWEoKXt2YXIgZT1OcGUuRE9NUGFyc2VyLHQ9ITE7dHJ5e25ldyBlKCkucGFyc2VGcm9tU3RyaW5nKCIiLCJ0ZXh0L2h0bWwiKSYmKHQ9ITApfWNhdGNoe31yZXR1cm4gdH1mdW5jdGlvbiBGaWEoKXt2YXIgZT1mdW5jdGlvbigpe307cmV0dXJuIE9pYSgpP2UucHJvdG90eXBlLnBhcnNlRnJvbVN0cmluZz1mdW5jdGlvbih0KXt2YXIgcj1uZXcgd2luZG93LkFjdGl2ZVhPYmplY3QoImh0bWxmaWxlIik7cmV0dXJuIHIuZGVzaWduTW9kZT0ib24iLHIub3BlbigpLHIud3JpdGUodCksci5jbG9zZSgpLHJ9OmUucHJvdG90eXBlLnBhcnNlRnJvbVN0cmluZz1mdW5jdGlvbih0KXt2YXIgcj1kb2N1bWVudC5pbXBsZW1lbnRhdGlvbi5jcmVhdGVIVE1MRG9jdW1lbnQoIiIpO3JldHVybiByLm9wZW4oKSxyLndyaXRlKHQpLHIuY2xvc2UoKSxyfSxlfWZ1bmN0aW9uIE9pYSgpe3ZhciBlPSExO3RyeXtkb2N1bWVudC5pbXBsZW1lbnRhdGlvbi5jcmVhdGVIVE1MRG9jdW1lbnQoIiIpLm9wZW4oKX1jYXRjaHtOcGUuQWN0aXZlWE9iamVjdCYmKGU9ITApfXJldHVybiBlfWZ1bmN0aW9uIEJpYShlLHQpe3ZhciByO2lmKHR5cGVvZiBlPT0ic3RyaW5nIil7dmFyIGE9SGlhKCkucGFyc2VGcm9tU3RyaW5nKCc8eC10dXJuZG93biBpZD0idHVybmRvd24tcm9vdCI+JytlKyI8L3gtdHVybmRvd24+IiwidGV4dC9odG1sIik7cj1hLmdldEVsZW1lbnRCeUlkKCJ0dXJuZG93bi1yb290Iil9ZWxzZSByPWUuY2xvbmVOb2RlKCEwKTtyZXR1cm4gSWlhKHtlbGVtZW50OnIsaXNCbG9jazpFcGUsaXNWb2lkOllTdCxpc1ByZTp0LnByZWZvcm1hdHRlZENvZGU/cWlhOm51bGx9KSxyfWZ1bmN0aW9uIEhpYSgpe3JldHVybiBGcGU9RnBlfHxuZXcgUmlhLEZwZX1mdW5jdGlvbiBxaWEoZSl7cmV0dXJuIGUubm9kZU5hbWU9PT0iUFJFInx8ZS5ub2RlTmFtZT09PSJDT0RFIn1mdW5jdGlvbiBqaWEoZSx0KXtyZXR1cm4gZS5pc0Jsb2NrPUVwZShlKSxlLmlzQ29kZT1lLm5vZGVOYW1lPT09IkNPREUifHxlLnBhcmVudE5vZGUuaXNDb2RlLGUuaXNCbGFuaz1WaWEoZSksZS5mbGFua2luZ1doaXRlc3BhY2U9VWlhKGUsdCksZX1mdW5jdGlvbiBWaWEoZSl7cmV0dXJuIVlTdChlKSYmIUVpYShlKSYmL15ccyokL2kudGVzdChlLnRleHRDb250ZW50KSYmIUFpYShlKSYmISRpYShlKX1mdW5jdGlvbiBVaWEoZSx0KXtpZihlLmlzQmxvY2t8fHQucHJlZm9ybWF0dGVkQ29kZSYmZS5pc0NvZGUpcmV0dXJue2xlYWRpbmc6IiIsdHJhaWxpbmc6IiJ9O3ZhciByPVdpYShlLnRleHRDb250ZW50KTtyZXR1cm4gci5sZWFkaW5nQXNjaWkmJkpTdCgibGVmdCIsZSx0KSYmKHIubGVhZGluZz1yLmxlYWRpbmdOb25Bc2NpaSksci50cmFpbGluZ0FzY2lpJiZKU3QoInJpZ2h0IixlLHQpJiYoci50cmFpbGluZz1yLnRyYWlsaW5nTm9uQXNjaWkpLHtsZWFkaW5nOnIubGVhZGluZyx0cmFpbGluZzpyLnRyYWlsaW5nfX1mdW5jdGlvbiBXaWEoZSl7dmFyIHQ9ZS5tYXRjaCgvXigoWyBcdFxyXG5dKikoXHMqKSkoPzooPz1cUylbXHNcU10qXFMpPygoXHMqPykoWyBcdFxyXG5dKikpJC8pO3JldHVybntsZWFkaW5nOnRbMV0sbGVhZGluZ0FzY2lpOnRbMl0sbGVhZGluZ05vbkFzY2lpOnRbM10sdHJhaWxpbmc6dFs0XSx0cmFpbGluZ05vbkFzY2lpOnRbNV0sdHJhaWxpbmdBc2NpaTp0WzZdfX1mdW5jdGlvbiBKU3QoZSx0LHIpe3ZhciBhLGksbztyZXR1cm4gZT09PSJsZWZ0Ij8oYT10LnByZXZpb3VzU2libGluZyxpPS8gJC8pOihhPXQubmV4dFNpYmxpbmcsaT0vXiAvKSxhJiYoYS5ub2RlVHlwZT09PTM/bz1pLnRlc3QoYS5ub2RlVmFsdWUpOnIucHJlZm9ybWF0dGVkQ29kZSYmYS5ub2RlTmFtZT09PSJDT0RFIj9vPSExOmEubm9kZVR5cGU9PT0xJiYhRXBlKGEpJiYobz1pLnRlc3QoYS50ZXh0Q29udGVudCkpKSxvfWZ1bmN0aW9uIER0ZShlKXtpZighKHRoaXMgaW5zdGFuY2VvZiBEdGUpKXJldHVybiBuZXcgRHRlKGUpO3ZhciB0PXtydWxlczpQMSxoZWFkaW5nU3R5bGU6InNldGV4dCIsaHI6IiogKiAqIixidWxsZXRMaXN0TWFya2VyOiIqIixjb2RlQmxvY2tTdHlsZToiaW5kZW50ZWQiLGZlbmNlOiJgYGAiLGVtRGVsaW1pdGVyOiJfIixzdHJvbmdEZWxpbWl0ZXI6IioqIixsaW5rU3R5bGU6ImlubGluZWQiLGxpbmtSZWZlcmVuY2VTdHlsZToiZnVsbCIsYnI6IiAgIixwcmVmb3JtYXR0ZWRDb2RlOiExLGJsYW5rUmVwbGFjZW1lbnQ6ZnVuY3Rpb24ocixhKXtyZXR1cm4gYS5pc0Jsb2NrP2AKCmA6IiJ9LGtlZXBSZXBsYWNlbWVudDpmdW5jdGlvbihyLGEpe3JldHVybiBhLmlzQmxvY2s/YAoKYCthLm91dGVySFRNTCtgCgpgOmEub3V0ZXJIVE1MfSxkZWZhdWx0UmVwbGFjZW1lbnQ6ZnVuY3Rpb24ocixhKXtyZXR1cm4gYS5pc0Jsb2NrP2AKCmArcitgCgpgOnJ9fTt0aGlzLm9wdGlvbnM9TGlhKHt9LHQsZSksdGhpcy5ydWxlcz1uZXcgUVN0KHRoaXMub3B0aW9ucyl9ZnVuY3Rpb24gZXp0KGUpe3ZhciB0PXRoaXM7cmV0dXJuIEdpYS5jYWxsKGUuY2hpbGROb2RlcyxmdW5jdGlvbihyLGEpe2E9bmV3IGppYShhLHQub3B0aW9ucyk7dmFyIGk9IiI7cmV0dXJuIGEubm9kZVR5cGU9PT0zP2k9YS5pc0NvZGU/YS5ub2RlVmFsdWU6dC5lc2NhcGUoYS5ub2RlVmFsdWUpOmEubm9kZVR5cGU9PT0xJiYoaT1YaWEuY2FsbCh0LGEpKSx0enQocixpKX0sIiIpfWZ1bmN0aW9uIFppYShlKXt2YXIgdD10aGlzO3JldHVybiB0aGlzLnJ1bGVzLmZvckVhY2goZnVuY3Rpb24ocil7dHlwZW9mIHIuYXBwZW5kPT0iZnVuY3Rpb24iJiYoZT10enQoZSxyLmFwcGVuZCh0Lm9wdGlvbnMpKSl9KSxlLnJlcGxhY2UoL15bXHRcclxuXSsvLCIiKS5yZXBsYWNlKC9bXHRcclxuXHNdKyQvLCIiKX1mdW5jdGlvbiBYaWEoZSl7dmFyIHQ9dGhpcy5ydWxlcy5mb3JOb2RlKGUpLHI9ZXp0LmNhbGwodGhpcyxlKSxhPWUuZmxhbmtpbmdXaGl0ZXNwYWNlO3JldHVybihhLmxlYWRpbmd8fGEudHJhaWxpbmcpJiYocj1yLnRyaW0oKSksYS5sZWFkaW5nK3QucmVwbGFjZW1lbnQocixlLHRoaXMub3B0aW9ucykrYS50cmFpbGluZ31mdW5jdGlvbiB0enQoZSx0KXt2YXIgcj1VU3QoZSksYT1WU3QodCksaT1NYXRoLm1heChlLmxlbmd0aC1yLmxlbmd0aCx0Lmxlbmd0aC1hLmxlbmd0aCksbz1gCgpgLnN1YnN0cmluZygwLGkpO3JldHVybiByK28rYX1mdW5jdGlvbiBRaWEoZSl7cmV0dXJuIGUhPW51bGwmJih0eXBlb2YgZT09InN0cmluZyJ8fGUubm9kZVR5cGUmJihlLm5vZGVUeXBlPT09MXx8ZS5ub2RlVHlwZT09PTl8fGUubm9kZVR5cGU9PT0xMSkpfXZhciBEaWEsR1N0LFpTdCxQMSxOcGUsUmlhLEZwZSxHaWEsWWlhLEF0ZSxyenQ9bCgoKT0+e0RpYT1bIkFERFJFU1MiLCJBUlRJQ0xFIiwiQVNJREUiLCJBVURJTyIsIkJMT0NLUVVPVEUiLCJCT0RZIiwiQ0FOVkFTIiwiQ0VOVEVSIiwiREQiLCJESVIiLCJESVYiLCJETCIsIkRUIiwiRklFTERTRVQiLCJGSUdDQVBUSU9OIiwiRklHVVJFIiwiRk9PVEVSIiwiRk9STSIsIkZSQU1FU0VUIiwiSDEiLCJIMiIsIkgzIiwiSDQiLCJINSIsIkg2IiwiSEVBREVSIiwiSEdST1VQIiwiSFIiLCJIVE1MIiwiSVNJTkRFWCIsIkxJIiwiTUFJTiIsIk1FTlUiLCJOQVYiLCJOT0ZSQU1FUyIsIk5PU0NSSVBUIiwiT0wiLCJPVVRQVVQiLCJQIiwiUFJFIiwiU0VDVElPTiIsIlRBQkxFIiwiVEJPRFkiLCJURCIsIlRGT09UIiwiVEgiLCJUSEVBRCIsIlRSIiwiVUwiXTtHU3Q9WyJBUkVBIiwiQkFTRSIsIkJSIiwiQ09MIiwiQ09NTUFORCIsIkVNQkVEIiwiSFIiLCJJTUciLCJJTlBVVCIsIktFWUdFTiIsIkxJTksiLCJNRVRBIiwiUEFSQU0iLCJTT1VSQ0UiLCJUUkFDSyIsIldCUiJdO1pTdD1bIkEiLCJUQUJMRSIsIlRIRUFEIiwiVEJPRFkiLCJURk9PVCIsIlRIIiwiVEQiLCJJRlJBTUUiLCJTQ1JJUFQiLCJBVURJTyIsIlZJREVPIl07UDE9e307UDEucGFyYWdyYXBoPXtmaWx0ZXI6InAiLHJlcGxhY2VtZW50OmZ1bmN0aW9uKGUpe3JldHVybmAKCmArZStgCgpgfX0sUDEubGluZUJyZWFrPXtmaWx0ZXI6ImJyIixyZXBsYWNlbWVudDpmdW5jdGlvbihlLHQscil7cmV0dXJuIHIuYnIrYApgfX0sUDEuaGVhZGluZz17ZmlsdGVyOlsiaDEiLCJoMiIsImgzIiwiaDQiLCJoNSIsImg2Il0scmVwbGFjZW1lbnQ6ZnVuY3Rpb24oZSx0LHIpe3ZhciBhPU51bWJlcih0Lm5vZGVOYW1lLmNoYXJBdCgxKSk7aWYoci5oZWFkaW5nU3R5bGU9PT0ic2V0ZXh0IiYmYTwzKXt2YXIgaT1BcGUoYT09PTE/Ij0iOiItIixlLmxlbmd0aCk7cmV0dXJuYAoKYCtlK2AKYCtpK2AKCmB9ZWxzZSByZXR1cm5gCgpgK0FwZSgiIyIsYSkrIiAiK2UrYAoKYH19LFAxLmJsb2NrcXVvdGU9e2ZpbHRlcjoiYmxvY2txdW90ZSIscmVwbGFjZW1lbnQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGU9V1N0KGUpLnJlcGxhY2UoL14vZ20sIj4gIiksYAoKYCtlK2AKCmB9fSxQMS5saXN0PXtmaWx0ZXI6WyJ1bCIsIm9sIl0scmVwbGFjZW1lbnQ6ZnVuY3Rpb24oZSx0KXt2YXIgcj10LnBhcmVudE5vZGU7cmV0dXJuIHIubm9kZU5hbWU9PT0iTEkiJiZyLmxhc3RFbGVtZW50Q2hpbGQ9PT10P2AKYCtlOmAKCmArZStgCgpgfX0sUDEubGlzdEl0ZW09e2ZpbHRlcjoibGkiLHJlcGxhY2VtZW50OmZ1bmN0aW9uKGUsdCxyKXt2YXIgYT1yLmJ1bGxldExpc3RNYXJrZXIrIiAgICIsaT10LnBhcmVudE5vZGU7aWYoaS5ub2RlTmFtZT09PSJPTCIpe3ZhciBvPWkuZ2V0QXR0cmlidXRlKCJzdGFydCIpLG49QXJyYXkucHJvdG90eXBlLmluZGV4T2YuY2FsbChpLmNoaWxkcmVuLHQpO2E9KG8/TnVtYmVyKG8pK246bisxKSsiLiAgIn12YXIgcz0vXG4kLy50ZXN0KGUpO3JldHVybiBlPVdTdChlKSsocz9gCmA6IiIpLGU9ZS5yZXBsYWNlKC9cbi9nbSxgCmArIiAiLnJlcGVhdChhLmxlbmd0aCkpLGErZSsodC5uZXh0U2libGluZz9gCmA6IiIpfX0sUDEuaW5kZW50ZWRDb2RlQmxvY2s9e2ZpbHRlcjpmdW5jdGlvbihlLHQpe3JldHVybiB0LmNvZGVCbG9ja1N0eWxlPT09ImluZGVudGVkIiYmZS5ub2RlTmFtZT09PSJQUkUiJiZlLmZpcnN0Q2hpbGQmJmUuZmlyc3RDaGlsZC5ub2RlTmFtZT09PSJDT0RFIn0scmVwbGFjZW1lbnQ6ZnVuY3Rpb24oZSx0LHIpe3JldHVybmAKCiAgICBgK3QuZmlyc3RDaGlsZC50ZXh0Q29udGVudC5yZXBsYWNlKC9cbi9nLGAKICAgIGApK2AKCmB9fSxQMS5mZW5jZWRDb2RlQmxvY2s9e2ZpbHRlcjpmdW5jdGlvbihlLHQpe3JldHVybiB0LmNvZGVCbG9ja1N0eWxlPT09ImZlbmNlZCImJmUubm9kZU5hbWU9PT0iUFJFIiYmZS5maXJzdENoaWxkJiZlLmZpcnN0Q2hpbGQubm9kZU5hbWU9PT0iQ09ERSJ9LHJlcGxhY2VtZW50OmZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9dC5maXJzdENoaWxkLmdldEF0dHJpYnV0ZSgiY2xhc3MiKXx8IiIsaT0oYS5tYXRjaCgvbGFuZ3VhZ2UtKFxTKykvKXx8W251bGwsIiJdKVsxXSxvPXQuZmlyc3RDaGlsZC50ZXh0Q29udGVudCxuPXIuZmVuY2UuY2hhckF0KDApLHM9MyxjPW5ldyBSZWdFeHAoIl4iK24rInszLH0iLCJnbSIpLGQ7ZD1jLmV4ZWMobyk7KWRbMF0ubGVuZ3RoPj1zJiYocz1kWzBdLmxlbmd0aCsxKTt2YXIgZj1BcGUobixzKTtyZXR1cm5gCgpgK2YraStgCmArby5yZXBsYWNlKC9cbiQvLCIiKStgCmArZitgCgpgfX0sUDEuaG9yaXpvbnRhbFJ1bGU9e2ZpbHRlcjoiaHIiLHJlcGxhY2VtZW50OmZ1bmN0aW9uKGUsdCxyKXtyZXR1cm5gCgpgK3IuaHIrYAoKYH19LFAxLmlubGluZUxpbms9e2ZpbHRlcjpmdW5jdGlvbihlLHQpe3JldHVybiB0LmxpbmtTdHlsZT09PSJpbmxpbmVkIiYmZS5ub2RlTmFtZT09PSJBIiYmZS5nZXRBdHRyaWJ1dGUoImhyZWYiKX0scmVwbGFjZW1lbnQ6ZnVuY3Rpb24oZSx0KXt2YXIgcj10LmdldEF0dHJpYnV0ZSgiaHJlZiIpO3ImJihyPXIucmVwbGFjZSgvKFsoKV0pL2csIlxcJDEiKSk7dmFyIGE9THRlKHQuZ2V0QXR0cmlidXRlKCJ0aXRsZSIpKTtyZXR1cm4gYSYmKGE9JyAiJythLnJlcGxhY2UoLyIvZywnXFwiJykrJyInKSwiWyIrZSsiXSgiK3IrYSsiKSJ9fSxQMS5yZWZlcmVuY2VMaW5rPXtmaWx0ZXI6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdC5saW5rU3R5bGU9PT0icmVmZXJlbmNlZCImJmUubm9kZU5hbWU9PT0iQSImJmUuZ2V0QXR0cmlidXRlKCJocmVmIil9LHJlcGxhY2VtZW50OmZ1bmN0aW9uKGUsdCxyKXt2YXIgYT10LmdldEF0dHJpYnV0ZSgiaHJlZiIpLGk9THRlKHQuZ2V0QXR0cmlidXRlKCJ0aXRsZSIpKTtpJiYoaT0nICInK2krJyInKTt2YXIgbyxuO3N3aXRjaChyLmxpbmtSZWZlcmVuY2VTdHlsZSl7Y2FzZSJjb2xsYXBzZWQiOm89IlsiK2UrIl1bXSIsbj0iWyIrZSsiXTogIithK2k7YnJlYWs7Y2FzZSJzaG9ydGN1dCI6bz0iWyIrZSsiXSIsbj0iWyIrZSsiXTogIithK2k7YnJlYWs7ZGVmYXVsdDp2YXIgcz10aGlzLnJlZmVyZW5jZXMubGVuZ3RoKzE7bz0iWyIrZSsiXVsiK3MrIl0iLG49IlsiK3MrIl06ICIrYStpfXJldHVybiB0aGlzLnJlZmVyZW5jZXMucHVzaChuKSxvfSxyZWZlcmVuY2VzOltdLGFwcGVuZDpmdW5jdGlvbihlKXt2YXIgdD0iIjtyZXR1cm4gdGhpcy5yZWZlcmVuY2VzLmxlbmd0aCYmKHQ9YAoKYCt0aGlzLnJlZmVyZW5jZXMuam9pbihgCmApK2AKCmAsdGhpcy5yZWZlcmVuY2VzPVtdKSx0fX0sUDEuZW1waGFzaXM9e2ZpbHRlcjpbImVtIiwiaSJdLHJlcGxhY2VtZW50OmZ1bmN0aW9uKGUsdCxyKXtyZXR1cm4gZS50cmltKCk/ci5lbURlbGltaXRlcitlK3IuZW1EZWxpbWl0ZXI6IiJ9fSxQMS5zdHJvbmc9e2ZpbHRlcjpbInN0cm9uZyIsImIiXSxyZXBsYWNlbWVudDpmdW5jdGlvbihlLHQscil7cmV0dXJuIGUudHJpbSgpP3Iuc3Ryb25nRGVsaW1pdGVyK2Urci5zdHJvbmdEZWxpbWl0ZXI6IiJ9fSxQMS5jb2RlPXtmaWx0ZXI6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5wcmV2aW91c1NpYmxpbmd8fGUubmV4dFNpYmxpbmcscj1lLnBhcmVudE5vZGUubm9kZU5hbWU9PT0iUFJFIiYmIXQ7cmV0dXJuIGUubm9kZU5hbWU9PT0iQ09ERSImJiFyfSxyZXBsYWNlbWVudDpmdW5jdGlvbihlKXtpZighZSlyZXR1cm4iIjtlPWUucmVwbGFjZSgvXHI/XG58XHIvZywiICIpO2Zvcih2YXIgdD0vXmB8XiAuKj9bXiBdLiogJHxgJC8udGVzdChlKT8iICI6IiIscj0iYCIsYT1lLm1hdGNoKC9gKy9nbSl8fFtdO2EuaW5kZXhPZihyKSE9PS0xOylyPXIrImAiO3JldHVybiByK3QrZSt0K3J9fSxQMS5pbWFnZT17ZmlsdGVyOiJpbWciLHJlcGxhY2VtZW50OmZ1bmN0aW9uKGUsdCl7dmFyIHI9THRlKHQuZ2V0QXR0cmlidXRlKCJhbHQiKSksYT10LmdldEF0dHJpYnV0ZSgic3JjIil8fCIiLGk9THRlKHQuZ2V0QXR0cmlidXRlKCJ0aXRsZSIpKSxvPWk/JyAiJytpKyciJzoiIjtyZXR1cm4gYT8iIVsiK3IrIl0oIithK28rIikiOiIifX07UVN0LnByb3RvdHlwZT17YWRkOmZ1bmN0aW9uKGUsdCl7dGhpcy5hcnJheS51bnNoaWZ0KHQpfSxrZWVwOmZ1bmN0aW9uKGUpe3RoaXMuX2tlZXAudW5zaGlmdCh7ZmlsdGVyOmUscmVwbGFjZW1lbnQ6dGhpcy5rZWVwUmVwbGFjZW1lbnR9KX0scmVtb3ZlOmZ1bmN0aW9uKGUpe3RoaXMuX3JlbW92ZS51bnNoaWZ0KHtmaWx0ZXI6ZSxyZXBsYWNlbWVudDpmdW5jdGlvbigpe3JldHVybiIifX0pfSxmb3JOb2RlOmZ1bmN0aW9uKGUpe2lmKGUuaXNCbGFuaylyZXR1cm4gdGhpcy5ibGFua1J1bGU7dmFyIHQ7cmV0dXJuKHQ9UHBlKHRoaXMuYXJyYXksZSx0aGlzLm9wdGlvbnMpKXx8KHQ9UHBlKHRoaXMuX2tlZXAsZSx0aGlzLm9wdGlvbnMpKXx8KHQ9UHBlKHRoaXMuX3JlbW92ZSxlLHRoaXMub3B0aW9ucykpP3Q6dGhpcy5kZWZhdWx0UnVsZX0sZm9yRWFjaDpmdW5jdGlvbihlKXtmb3IodmFyIHQ9MDt0PHRoaXMuYXJyYXkubGVuZ3RoO3QrKyllKHRoaXMuYXJyYXlbdF0sdCl9fTtOcGU9dHlwZW9mIHdpbmRvdzwidSI/d2luZG93Ont9O1JpYT1OaWEoKT9OcGUuRE9NUGFyc2VyOkZpYSgpO0dpYT1BcnJheS5wcm90b3R5cGUucmVkdWNlLFlpYT1bWy9cXC9nLCJcXFxcIl0sWy9cKi9nLCJcXCoiXSxbL14tL2csIlxcLSJdLFsvXlwrIC9nLCJcXCsgIl0sWy9eKD0rKS9nLCJcXCQxIl0sWy9eKCN7MSw2fSkgL2csIlxcJDEgIl0sWy9gL2csIlxcYCJdLFsvXn5+fi9nLCJcXH5+fiJdLFsvXFsvZywiXFxbIl0sWy9cXS9nLCJcXF0iXSxbL14+L2csIlxcPiJdLFsvXy9nLCJcXF8iXSxbL14oXGQrKVwuIC9nLCIkMVxcLiAiXV07RHRlLnByb3RvdHlwZT17dHVybmRvd246ZnVuY3Rpb24oZSl7aWYoIVFpYShlKSl0aHJvdyBuZXcgVHlwZUVycm9yKGUrIiBpcyBub3QgYSBzdHJpbmcsIG9yIGFuIGVsZW1lbnQvZG9jdW1lbnQvZnJhZ21lbnQgbm9kZS4iKTtpZihlPT09IiIpcmV0dXJuIiI7dmFyIHQ9ZXp0LmNhbGwodGhpcyxuZXcgQmlhKGUsdGhpcy5vcHRpb25zKSk7cmV0dXJuIFppYS5jYWxsKHRoaXMsdCl9LHVzZTpmdW5jdGlvbihlKXtpZihBcnJheS5pc0FycmF5KGUpKWZvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCsrKXRoaXMudXNlKGVbdF0pO2Vsc2UgaWYodHlwZW9mIGU9PSJmdW5jdGlvbiIpZSh0aGlzKTtlbHNlIHRocm93IG5ldyBUeXBlRXJyb3IoInBsdWdpbiBtdXN0IGJlIGEgRnVuY3Rpb24gb3IgYW4gQXJyYXkgb2YgRnVuY3Rpb25zIik7cmV0dXJuIHRoaXN9LGFkZFJ1bGU6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdGhpcy5ydWxlcy5hZGQoZSx0KSx0aGlzfSxrZWVwOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLnJ1bGVzLmtlZXAoZSksdGhpc30scmVtb3ZlOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLnJ1bGVzLnJlbW92ZShlKSx0aGlzfSxlc2NhcGU6ZnVuY3Rpb24oZSl7cmV0dXJuIFlpYS5yZWR1Y2UoZnVuY3Rpb24odCxyKXtyZXR1cm4gdC5yZXBsYWNlKHJbMF0sclsxXSl9LGUpfX07QXRlPUR0ZX0pO3ZhciB6Yj17fTtxZSh6Yix7Z2ZtOigpPT5venQsaGlnaGxpZ2h0ZWRDb2RlQmxvY2s6KCk9PlJwZSxzdHJpa2V0aHJvdWdoOigpPT5CcGUsdGFibGVzOigpPT5IcGUsdGFza0xpc3RJdGVtczooKT0+cXBlfSk7ZnVuY3Rpb24gUnBlKGUpe2UuYWRkUnVsZSgiaGlnaGxpZ2h0ZWRDb2RlQmxvY2siLHtmaWx0ZXI6ZnVuY3Rpb24odCl7dmFyIHI9dC5maXJzdENoaWxkO3JldHVybiB0Lm5vZGVOYW1lPT09IkRJViImJmF6dC50ZXN0KHQuY2xhc3NOYW1lKSYmciYmci5ub2RlTmFtZT09PSJQUkUifSxyZXBsYWNlbWVudDpmdW5jdGlvbih0LHIsYSl7dmFyIGk9ci5jbGFzc05hbWV8fCIiLG89KGkubWF0Y2goYXp0KXx8W251bGwsIiJdKVsxXTtyZXR1cm5gCgpgK2EuZmVuY2UrbytgCmArci5maXJzdENoaWxkLnRleHRDb250ZW50K2AKYCthLmZlbmNlK2AKCmB9fSl9ZnVuY3Rpb24gQnBlKGUpe2UuYWRkUnVsZSgic3RyaWtldGhyb3VnaCIse2ZpbHRlcjpbImRlbCIsInMiLCJzdHJpa2UiXSxyZXBsYWNlbWVudDpmdW5jdGlvbih0KXtyZXR1cm4ifiIrdCsifiJ9fSl9ZnVuY3Rpb24gT3BlKGUpe3ZhciB0PWUucGFyZW50Tm9kZTtyZXR1cm4gdC5ub2RlTmFtZT09PSJUSEVBRCJ8fHQuZmlyc3RDaGlsZD09PWUmJih0Lm5vZGVOYW1lPT09IlRBQkxFInx8ZTFhKHQpKSYmSmlhLmNhbGwoZS5jaGlsZE5vZGVzLGZ1bmN0aW9uKHIpe3JldHVybiByLm5vZGVOYW1lPT09IlRIIn0pfWZ1bmN0aW9uIGUxYShlKXt2YXIgdD1lLnByZXZpb3VzU2libGluZztyZXR1cm4gZS5ub2RlTmFtZT09PSJUQk9EWSImJighdHx8dC5ub2RlTmFtZT09PSJUSEVBRCImJi9eXHMqJC9pLnRlc3QodC50ZXh0Q29udGVudCkpfWZ1bmN0aW9uIGl6dChlLHQpe3ZhciByPUtpYS5jYWxsKHQucGFyZW50Tm9kZS5jaGlsZE5vZGVzLHQpLGE9IiAiO3JldHVybiByPT09MCYmKGE9InwgIiksYStlKyIgfCJ9ZnVuY3Rpb24gSHBlKGUpe2Uua2VlcChmdW5jdGlvbihyKXtyZXR1cm4gci5ub2RlTmFtZT09PSJUQUJMRSImJiFPcGUoci5yb3dzWzBdKX0pO2Zvcih2YXIgdCBpbiBBbSllLmFkZFJ1bGUodCxBbVt0XSl9ZnVuY3Rpb24gcXBlKGUpe2UuYWRkUnVsZSgidGFza0xpc3RJdGVtcyIse2ZpbHRlcjpmdW5jdGlvbih0KXtyZXR1cm4gdC50eXBlPT09ImNoZWNrYm94IiYmdC5wYXJlbnROb2RlLm5vZGVOYW1lPT09IkxJIn0scmVwbGFjZW1lbnQ6ZnVuY3Rpb24odCxyKXtyZXR1cm4oci5jaGVja2VkPyJbeF0iOiJbIF0iKSsiICJ9fSl9ZnVuY3Rpb24gb3p0KGUpe2UudXNlKFtScGUsQnBlLEhwZSxxcGVdKX12YXIgYXp0LEtpYSxKaWEsQW0sbnp0PWwoKCk9PnthenQ9L2hpZ2hsaWdodC0oPzp0ZXh0fHNvdXJjZSktKFthLXowLTldKykvO0tpYT1BcnJheS5wcm90b3R5cGUuaW5kZXhPZixKaWE9QXJyYXkucHJvdG90eXBlLmV2ZXJ5LEFtPXt9O0FtLnRhYmxlQ2VsbD17ZmlsdGVyOlsidGgiLCJ0ZCJdLHJlcGxhY2VtZW50OmZ1bmN0aW9uKGUsdCl7cmV0dXJuIGl6dChlLHQpfX0sQW0udGFibGVSb3c9e2ZpbHRlcjoidHIiLHJlcGxhY2VtZW50OmZ1bmN0aW9uKGUsdCl7dmFyIHI9IiIsYT17bGVmdDoiOi0tIixyaWdodDoiLS06IixjZW50ZXI6IjotOiJ9O2lmKE9wZSh0KSlmb3IodmFyIGk9MDtpPHQuY2hpbGROb2Rlcy5sZW5ndGg7aSsrKXt2YXIgbz0iLS0tIixuPSh0LmNoaWxkTm9kZXNbaV0uZ2V0QXR0cmlidXRlKCJhbGlnbiIpfHwiIikudG9Mb3dlckNhc2UoKTtuJiYobz1hW25dfHxvKSxyKz1penQobyx0LmNoaWxkTm9kZXNbaV0pfXJldHVybmAKYCtlKyhyP2AKYCtyOiIiKX19LEFtLnRhYmxlPXtmaWx0ZXI6ZnVuY3Rpb24oZSl7cmV0dXJuIGUubm9kZU5hbWU9PT0iVEFCTEUiJiZPcGUoZS5yb3dzWzBdKX0scmVwbGFjZW1lbnQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGU9ZS5yZXBsYWNlKGAKCmAsYApgKSxgCgpgK2UrYAoKYH19LEFtLnRhYmxlU2VjdGlvbj17ZmlsdGVyOlsidGhlYWQiLCJ0Ym9keSIsInRmb290Il0scmVwbGFjZW1lbnQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGV9fX0pO3ZhciBqcGUsVnBlPWwoKCk9PntqcGU9QXIoWXh0KCksMSk7X2J0KCk7JHd0KCk7b010KCk7eE10KCk7SFN0KCk7alN0KCk7cnp0KCk7bnp0KCl9KTt2YXIgRXRlLGx6dD1sKCgpPT57VnBlKCk7RXRlPWNsYXNzIGV7c3RhdGljIGFzeW5jIGNyZWF0ZUZyb21NYXJrZG93blN0cmluZyh0KXtsZXQgcj1uZXcgZTtyZXR1cm4gYXdhaXQgci51cGRhdGVGcm9tTWFya2Rvd25TdHJpbmcodCkscn1hc3luYyB1cGRhdGVGcm9tTWFya2Rvd25TdHJpbmcodCl7bGV0IHIsYT1hd2FpdCB0YigpLnVzZShrbSkudXNlKE1tKS51c2Uoem0sWyJ5YW1sIiwidG9tbCJdKS51c2UoRG0pLnVzZShMbSkudXNlKCgpPT5pPT57Y29uc29sZS5kaXIoaSk7bGV0IG89aS5jaGlsZHJlbi5maW5kKG49Pm4udHlwZT09PSJ5YW1sIik7byYmKHI9by52YWx1ZSl9KS5wcm9jZXNzKHQpO3RoaXMuaHRtbD1hLnRvU3RyaW5nKCkscj90aGlzLmZyb250bWF0dGVyRGF0YT1hd2FpdCBqcGUueWFtbFN0cmluZ1RvT2JqZWN0KHIpOnRoaXMuZnJvbnRtYXR0ZXJEYXRhPXt9fX19KTt2YXIgRW09e307cWUoRW0se1NtYXJ0TWFya2Rvd246KCk9PlVwZX0pO3ZhciBVcGUsV3BlPWwoKCk9PntWcGUoKTtsenQoKTtVcGU9Y2xhc3MgZXtzdGF0aWMgYXN5bmMgZWFzeU1hcmtkb3duVG9IdG1sKHQpe3JldHVybihhd2FpdCBuZXcgZSgpLmdldE1kUGFyc2VkUmVzdWx0RnJvbU1hcmtkb3duKHQpKS5odG1sfWNvbnN0cnVjdG9yKCl7fWFzeW5jIGdldE1kUGFyc2VkUmVzdWx0RnJvbU1hcmtkb3duKHQpe3JldHVybiBhd2FpdCBFdGUuY3JlYXRlRnJvbU1hcmtkb3duU3RyaW5nKHQpfWh0bWxUb01hcmtkb3duKHQpe2xldCByPW5ldyBBdGUoe2hlYWRpbmdTdHlsZToiYXR4Iixjb2RlQmxvY2tTdHlsZToiZmVuY2VkIn0pO3JldHVybiByLnVzZSh6Yi5nZm0pLHIudHVybmRvd24odCl9fX0pO3ZhciBoenQ9WGUoZnM9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KGZzLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxmcy5QYXRoRXJyb3I9ZnMuVG9rZW5EYXRhPXZvaWQgMCxmcy5wYXJzZT1YcGUsZnMuY29tcGlsZT1hMWEsZnMubWF0Y2g9bzFhLGZzLnBhdGhUb1JlZ2V4cD11enQsZnMuc3RyaW5naWZ5PWwxYTt2YXIgR3BlPSIvIixZcGU9ZT0+ZSxjenQ9L15bJF9ccHtJRF9TdGFydH1dJC91LFpwZT0vXlskXHUyMDBjXHUyMDBkXHB7SURfQ29udGludWV9XSQvdSx0MWE9eyJ7IjoieyIsIn0iOiJ9IiwiKCI6IigiLCIpIjoiKSIsIlsiOiJbIiwiXSI6Il0iLCIrIjoiKyIsIj8iOiI/IiwiISI6IiEifTtmdW5jdGlvbiByMWEoZSl7cmV0dXJuIGUucmVwbGFjZSgvW3t9KClcW1xdKz8hOipcXF0vZywiXFwkJiIpfWZ1bmN0aW9uIHoyKGUpe3JldHVybiBlLnJlcGxhY2UoL1suKyo/XiR7fSgpW1xdfC9cXF0vZywiXFwkJiIpfXZhciAkdGU9Y2xhc3N7Y29uc3RydWN0b3IodCxyKXt0aGlzLnRva2Vucz10LHRoaXMub3JpZ2luYWxQYXRoPXJ9fTtmcy5Ub2tlbkRhdGE9JHRlO3ZhciBGZD1jbGFzcyBleHRlbmRzIFR5cGVFcnJvcntjb25zdHJ1Y3Rvcih0LHIpe2xldCBhPXQ7ciYmKGErPWA6ICR7cn1gKSxhKz0iOyB2aXNpdCBodHRwczovL2dpdC5uZXcvcGF0aFRvUmVnZXhwRXJyb3IgZm9yIGluZm8iLHN1cGVyKGEpLHRoaXMub3JpZ2luYWxQYXRoPXJ9fTtmcy5QYXRoRXJyb3I9RmQ7ZnVuY3Rpb24gWHBlKGUsdD17fSl7bGV0e2VuY29kZVBhdGg6cj1ZcGV9PXQsYT1bLi4uZV0saT1bXSxvPTAsbj0wO2Z1bmN0aW9uIHMoKXtsZXQgZD0iIjtpZihjenQudGVzdChhW29dKSlkbyBkKz1hW28rK107d2hpbGUoWnBlLnRlc3QoYVtvXSkpO2Vsc2UgaWYoYVtvXT09PSciJyl7bGV0IGY9bztmb3IoO28rKzxhLmxlbmd0aDspe2lmKGFbb109PT0nIicpe28rKyxmPTA7YnJlYWt9YVtvXT09PSJcXCImJm8rKyxkKz1hW29dfWlmKGYpdGhyb3cgbmV3IEZkKGBVbnRlcm1pbmF0ZWQgcXVvdGUgYXQgaW5kZXggJHtmfWAsZSl9aWYoIWQpdGhyb3cgbmV3IEZkKGBNaXNzaW5nIHBhcmFtZXRlciBuYW1lIGF0IGluZGV4ICR7b31gLGUpO3JldHVybiBkfWZvcig7bzxhLmxlbmd0aDspe2xldCBkPWFbb10sZj10MWFbZF07Zj9pLnB1c2goe3R5cGU6ZixpbmRleDpvKyssdmFsdWU6ZH0pOmQ9PT0iXFwiP2kucHVzaCh7dHlwZToiZXNjYXBlIixpbmRleDpvKyssdmFsdWU6YVtvKytdfSk6ZD09PSI6Ij9pLnB1c2goe3R5cGU6InBhcmFtIixpbmRleDpvKyssdmFsdWU6cygpfSk6ZD09PSIqIj9pLnB1c2goe3R5cGU6IndpbGRjYXJkIixpbmRleDpvKyssdmFsdWU6cygpfSk6aS5wdXNoKHt0eXBlOiJjaGFyIixpbmRleDpvKyssdmFsdWU6ZH0pfWkucHVzaCh7dHlwZToiZW5kIixpbmRleDpvLHZhbHVlOiIifSk7ZnVuY3Rpb24gYyhkKXtsZXQgZj1bXTtmb3IoOzspe2xldCB1PWlbbisrXTtpZih1LnR5cGU9PT1kKWJyZWFrO2lmKHUudHlwZT09PSJjaGFyInx8dS50eXBlPT09ImVzY2FwZSIpe2xldCBwPXUudmFsdWUsaD1pW25dO2Zvcig7aC50eXBlPT09ImNoYXIifHxoLnR5cGU9PT0iZXNjYXBlIjspcCs9aC52YWx1ZSxoPWlbKytuXTtmLnB1c2goe3R5cGU6InRleHQiLHZhbHVlOnIocCl9KTtjb250aW51ZX1pZih1LnR5cGU9PT0icGFyYW0ifHx1LnR5cGU9PT0id2lsZGNhcmQiKXtmLnB1c2goe3R5cGU6dS50eXBlLG5hbWU6dS52YWx1ZX0pO2NvbnRpbnVlfWlmKHUudHlwZT09PSJ7Iil7Zi5wdXNoKHt0eXBlOiJncm91cCIsdG9rZW5zOmMoIn0iKX0pO2NvbnRpbnVlfXRocm93IG5ldyBGZChgVW5leHBlY3RlZCAke3UudHlwZX0gYXQgaW5kZXggJHt1LmluZGV4fSwgZXhwZWN0ZWQgJHtkfWAsZSl9cmV0dXJuIGZ9cmV0dXJuIG5ldyAkdGUoYygiZW5kIiksZSl9ZnVuY3Rpb24gYTFhKGUsdD17fSl7bGV0e2VuY29kZTpyPWVuY29kZVVSSUNvbXBvbmVudCxkZWxpbWl0ZXI6YT1HcGV9PXQsaT10eXBlb2YgZT09Im9iamVjdCI/ZTpYcGUoZSx0KSxvPWR6dChpLnRva2VucyxhLHIpO3JldHVybiBmdW5jdGlvbihzPXt9KXtsZXRbYywuLi5kXT1vKHMpO2lmKGQubGVuZ3RoKXRocm93IG5ldyBUeXBlRXJyb3IoYE1pc3NpbmcgcGFyYW1ldGVyczogJHtkLmpvaW4oIiwgIil9YCk7cmV0dXJuIGN9fWZ1bmN0aW9uIGR6dChlLHQscil7bGV0IGE9ZS5tYXAoaT0+aTFhKGksdCxyKSk7cmV0dXJuIGk9PntsZXQgbz1bIiJdO2ZvcihsZXQgbiBvZiBhKXtsZXRbcywuLi5jXT1uKGkpO29bMF0rPXMsby5wdXNoKC4uLmMpfXJldHVybiBvfX1mdW5jdGlvbiBpMWEoZSx0LHIpe2lmKGUudHlwZT09PSJ0ZXh0IilyZXR1cm4oKT0+W2UudmFsdWVdO2lmKGUudHlwZT09PSJncm91cCIpe2xldCBpPWR6dChlLnRva2Vucyx0LHIpO3JldHVybiBvPT57bGV0W24sLi4uc109aShvKTtyZXR1cm4gcy5sZW5ndGg/WyIiXTpbbl19fWxldCBhPXJ8fFlwZTtyZXR1cm4gZS50eXBlPT09IndpbGRjYXJkIiYmciE9PSExP2k9PntsZXQgbz1pW2UubmFtZV07aWYobz09bnVsbClyZXR1cm5bIiIsZS5uYW1lXTtpZighQXJyYXkuaXNBcnJheShvKXx8by5sZW5ndGg9PT0wKXRocm93IG5ldyBUeXBlRXJyb3IoYEV4cGVjdGVkICIke2UubmFtZX0iIHRvIGJlIGEgbm9uLWVtcHR5IGFycmF5YCk7cmV0dXJuW28ubWFwKChuLHMpPT57aWYodHlwZW9mIG4hPSJzdHJpbmciKXRocm93IG5ldyBUeXBlRXJyb3IoYEV4cGVjdGVkICIke2UubmFtZX0vJHtzfSIgdG8gYmUgYSBzdHJpbmdgKTtyZXR1cm4gYShuKX0pLmpvaW4odCldfTppPT57bGV0IG89aVtlLm5hbWVdO2lmKG89PW51bGwpcmV0dXJuWyIiLGUubmFtZV07aWYodHlwZW9mIG8hPSJzdHJpbmciKXRocm93IG5ldyBUeXBlRXJyb3IoYEV4cGVjdGVkICIke2UubmFtZX0iIHRvIGJlIGEgc3RyaW5nYCk7cmV0dXJuW2EobyldfX1mdW5jdGlvbiBvMWEoZSx0PXt9KXtsZXR7ZGVjb2RlOnI9ZGVjb2RlVVJJQ29tcG9uZW50LGRlbGltaXRlcjphPUdwZX09dCx7cmVnZXhwOmksa2V5czpvfT11enQoZSx0KSxuPW8ubWFwKHM9PnI9PT0hMT9ZcGU6cy50eXBlPT09InBhcmFtIj9yOmM9PmMuc3BsaXQoYSkubWFwKHIpKTtyZXR1cm4gZnVuY3Rpb24oYyl7bGV0IGQ9aS5leGVjKGMpO2lmKCFkKXJldHVybiExO2xldCBmPWRbMF0sdT1PYmplY3QuY3JlYXRlKG51bGwpO2ZvcihsZXQgcD0xO3A8ZC5sZW5ndGg7cCsrKXtpZihkW3BdPT09dm9pZCAwKWNvbnRpbnVlO2xldCBoPW9bcC0xXSxiPW5bcC0xXTt1W2gubmFtZV09YihkW3BdKX1yZXR1cm57cGF0aDpmLHBhcmFtczp1fX19ZnVuY3Rpb24gdXp0KGUsdD17fSl7bGV0e2RlbGltaXRlcjpyPUdwZSxlbmQ6YT0hMCxzZW5zaXRpdmU6aT0hMSx0cmFpbGluZzpvPSEwfT10LG49W10scz1pPyIiOiJpIixjPVtdO2ZvcihsZXQgdSBvZiBmenQoZSxbXSkpe2xldCBwPXR5cGVvZiB1PT0ib2JqZWN0Ij91OlhwZSh1LHQpO2ZvcihsZXQgaCBvZiBQdGUocC50b2tlbnMsMCxbXSkpYy5wdXNoKG4xYShoLHIsbixwLm9yaWdpbmFsUGF0aCkpfWxldCBkPWBeKD86JHtjLmpvaW4oInwiKX0pYDtyZXR1cm4gbyYmKGQrPWAoPzoke3oyKHIpfSQpP2ApLGQrPWE/IiQiOmAoPz0ke3oyKHIpfXwkKWAse3JlZ2V4cDpuZXcgUmVnRXhwKGQscyksa2V5czpufX1mdW5jdGlvbiBmenQoZSx0KXtpZihBcnJheS5pc0FycmF5KGUpKWZvcihsZXQgciBvZiBlKWZ6dChyLHQpO2Vsc2UgdC5wdXNoKGUpO3JldHVybiB0fWZ1bmN0aW9uKlB0ZShlLHQscil7aWYodD09PWUubGVuZ3RoKXJldHVybiB5aWVsZCByO2xldCBhPWVbdF07aWYoYS50eXBlPT09Imdyb3VwIilmb3IobGV0IGkgb2YgUHRlKGEudG9rZW5zLDAsci5zbGljZSgpKSl5aWVsZCpQdGUoZSx0KzEsaSk7ZWxzZSByLnB1c2goYSk7eWllbGQqUHRlKGUsdCsxLHIpfWZ1bmN0aW9uIG4xYShlLHQscixhKXtsZXQgaT0iIixvPSIiLG49ITA7Zm9yKGxldCBzIG9mIGUpe2lmKHMudHlwZT09PSJ0ZXh0Iil7aSs9ejIocy52YWx1ZSksbys9cy52YWx1ZSxufHwobj1zLnZhbHVlLmluY2x1ZGVzKHQpKTtjb250aW51ZX1pZihzLnR5cGU9PT0icGFyYW0ifHxzLnR5cGU9PT0id2lsZGNhcmQiKXtpZighbiYmIW8pdGhyb3cgbmV3IEZkKGBNaXNzaW5nIHRleHQgYmVmb3JlICIke3MubmFtZX0iICR7cy50eXBlfWAsYSk7cy50eXBlPT09InBhcmFtIj9pKz1gKCR7czFhKHQsbj8iIjpvKX0rKWA6aSs9IihbXFxzXFxTXSspIixyLnB1c2gocyksbz0iIixuPSExO2NvbnRpbnVlfX1yZXR1cm4gaX1mdW5jdGlvbiBzMWEoZSx0KXtyZXR1cm4gdC5sZW5ndGg8Mj9lLmxlbmd0aDwyP2BbXiR7ejIoZSt0KX1dYDpgKD86KD8hJHt6MihlKX0pW14ke3oyKHQpfV0pYDplLmxlbmd0aDwyP2AoPzooPyEke3oyKHQpfSlbXiR7ejIoZSl9XSlgOmAoPzooPyEke3oyKHQpfXwke3oyKGUpfSlbXFxzXFxTXSlgfWZ1bmN0aW9uIHB6dChlKXtsZXQgdD0iIixyPTA7ZnVuY3Rpb24gYShpKXtyZXR1cm4gYzFhKGkpJiZkMWEoZVtyXSk/aTpKU09OLnN0cmluZ2lmeShpKX1mb3IoO3I8ZS5sZW5ndGg7KXtsZXQgaT1lW3IrK107aWYoaS50eXBlPT09InRleHQiKXt0Kz1yMWEoaS52YWx1ZSk7Y29udGludWV9aWYoaS50eXBlPT09Imdyb3VwIil7dCs9YHske3B6dChpLnRva2Vucyl9fWA7Y29udGludWV9aWYoaS50eXBlPT09InBhcmFtIil7dCs9YDoke2EoaS5uYW1lKX1gO2NvbnRpbnVlfWlmKGkudHlwZT09PSJ3aWxkY2FyZCIpe3QrPWAqJHthKGkubmFtZSl9YDtjb250aW51ZX10aHJvdyBuZXcgVHlwZUVycm9yKGBVbmtub3duIHRva2VuIHR5cGU6ICR7aS50eXBlfWApfXJldHVybiB0fWZ1bmN0aW9uIGwxYShlKXtyZXR1cm4gcHp0KGUudG9rZW5zKX1mdW5jdGlvbiBjMWEoZSl7bGV0W3QsLi4ucl09ZTtyZXR1cm4gY3p0LnRlc3QodCkmJnIuZXZlcnkoYT0+WnBlLnRlc3QoYSkpfWZ1bmN0aW9uIGQxYShlKXtyZXR1cm4gZSYmZS50eXBlPT09InRleHQiPyFacGUudGVzdChlLnZhbHVlWzBdKTohMH19KTt2YXIgUXBlLEtwZT1sKCgpPT57YngoKTthMigpO1FwZT1BcihoenQoKSwxKX0pO3ZhciBJdGUsbXp0PWwoKCk9PntLcGUoKTtJdGU9Y2xhc3N7Y29uc3RydWN0b3IoKXt9Z2V0QWxsQXNPYmplY3QoKXtsZXQgdD1uZXcgVVJMU2VhcmNoUGFyYW1zKHdpbmRvdy5sb2NhdGlvbi5zZWFyY2gpO3JldHVybiBPYmplY3QuZnJvbUVudHJpZXModC5lbnRyaWVzKCkpfXNldFF1ZXJ5UGFyYW0odCxyLGE9InJlcGxhY2UiKXt2YXIgaT1uZXcgVVJMU2VhcmNoUGFyYW1zKHdpbmRvdy5sb2NhdGlvbi5zZWFyY2gpO2kuc2V0KHQsciksYT09PSJwdXNoIj9oaXN0b3J5LnB1c2hTdGF0ZShudWxsLG51bGwsIj8iK2kudG9TdHJpbmcoKSk6aGlzdG9yeS5yZXBsYWNlU3RhdGUobnVsbCxudWxsLCI/IitpLnRvU3RyaW5nKCkpfWRlbGV0ZVF1ZXJ5UGFyYW0odCxyPSJyZXBsYWNlIil7dmFyIGE9bmV3IFVSTFNlYXJjaFBhcmFtcyh3aW5kb3cubG9jYXRpb24uc2VhcmNoKTthLmRlbGV0ZSh0KSxyPT09InB1c2giP2hpc3RvcnkucHVzaFN0YXRlKG51bGwsbnVsbCwiPyIrYS50b1N0cmluZygpKTpoaXN0b3J5LnJlcGxhY2VTdGF0ZShudWxsLG51bGwsIj8iK2EudG9TdHJpbmcoKSl9Z2V0UXVlcnlQYXJhbSh0KXtyZXR1cm4gdGhpcy5nZXRBbGxBc09iamVjdCgpW3RdfX19KTt2YXIgdGdpLEpwZSxnenQ9bCgoKT0+e0twZSgpO216dCgpO3RnaT1lPT57Y29uc29sZS5sb2coYCVjW1JvdXRlcl0lYyAke2V9YCwiY29sb3I6IHJnYigyNTUsIDEwNSwgMTAwKTsiLCJjb2xvcjogaW5oZXJpdCIpfSxKcGU9Y2xhc3MgZXtjb25zdHJ1Y3Rvcih0LHI9IiIpe3RoaXMub3B0aW9ucz17ZGVidWc6ITF9LHRoaXMucXVlcnlQYXJhbXM9bmV3IEl0ZSx0aGlzLnJvdXRlcz1bXSx0aGlzLm9wdGlvbnM9ey4uLnRoaXMub3B0aW9ucywuLi50fSx0aGlzLmJhc2VQYXRoPXIsdGhpcy5wb3BzdGF0ZUxpc3RlbmVyPWE9PnthLnByZXZlbnREZWZhdWx0KCksdGhpcy5faGFuZGxlUm91dGVTdGF0ZSgpfSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicG9wc3RhdGUiLHRoaXMucG9wc3RhdGVMaXN0ZW5lcil9Y3JlYXRlU3ViUm91dGVyKHQscil7bGV0IGE9YCR7dGhpcy5iYXNlUGF0aH0ke3R9YDtyZXR1cm4gbmV3IGUoey4uLnRoaXMub3B0aW9ucywuLi5yfSxhKX1hc3luYyBwdXNoVXJsKHQ9Ii8iLHI9e30pe2xldCBhPWAke3RoaXMuYmFzZVBhdGh9JHt0fWA7YSE9PXdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZT93aW5kb3cuaGlzdG9yeS5wdXNoU3RhdGUocix3aW5kb3cuZG9jdW1lbnQudGl0bGUsYSk6d2luZG93Lmhpc3RvcnkucmVwbGFjZVN0YXRlKHIsd2luZG93LmRvY3VtZW50LnRpdGxlLGEpLGF3YWl0IHRoaXMuX2hhbmRsZVJvdXRlU3RhdGUoKX1vbih0LHIpe2xldCBhPWAke3RoaXMuYmFzZVBhdGh9JHt0fWAsaT17bWF0Y2hGdW5jdGlvbjpRcGUubWF0Y2goYSksaGFuZGxlcjpyfTtyZXR1cm4gdGhpcy5yb3V0ZXMucHVzaChpKSwoKT0+e3RoaXMucm91dGVzLnNwbGljZSh0aGlzLnJvdXRlcy5pbmRleE9mKGkpLDEpfX1hc3luYyBfaGFuZGxlUm91dGVTdGF0ZSgpe2xldCB0PXdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSxyPXRoaXMucm91dGVzLmZpbHRlcihhPT4hIWEubWF0Y2hGdW5jdGlvbih0KSk7Zm9yKGxldCBhIG9mIHIpe2xldCBpPWEubWF0Y2hGdW5jdGlvbih0KTthLmhhbmRsZXIoey4uLmkudmFsdWVPZigpLHF1ZXJ5UGFyYW1zOnRoaXMucXVlcnlQYXJhbXMuZ2V0QWxsQXNPYmplY3QoKX0pfX1kZXN0cm95KCl7d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInBvcHN0YXRlIix0aGlzLnBvcHN0YXRlTGlzdGVuZXIpLHRoaXMucm91dGVzPVtdfX19KTt2YXIgWDA9e307cWUoWDAse1NtYXJ0Um91dGVyOigpPT5KcGV9KTt2YXIgZThlPWwoKCk9PntnenQoKX0pO3ZhciB4enQ9bCgoKT0+e2pKKCk7c3VlKCl9KTtmdW5jdGlvbiBDMihlLHQpe3JldHVybiBlPj4+dHxlPDwzMi10fWZ1bmN0aW9uIG0xYShlLHQpe2xldCByPXRbMF0sYT10WzFdLGk9dFsyXSxvPXRbM10sbj10WzRdLHM9dFs1XSxjPXRbNl0sZD10WzddO2ZvcihsZXQgZj0wO2Y8NjQ7ZisrKXtpZihmPj0xNil7bGV0IHY9QzIoZVtmLTE1XSw3KV5DMihlW2YtMTVdLDE4KV5lW2YtMTVdPj4+Myx3PUMyKGVbZi0yXSwxNyleQzIoZVtmLTJdLDE5KV5lW2YtMl0+Pj4xMDtlW2ZdPWVbZi0xNl0rditlW2YtN10rdz4+PjB9bGV0IHU9QzIobiw2KV5DMihuLDExKV5DMihuLDI1KSxwPW4mc15+biZjLGg9ZCt1K3ArcDFhW2ZdK2VbZl0+Pj4wLGI9QzIociwyKV5DMihyLDEzKV5DMihyLDIyKSx4PXImYV5yJmleYSZpLGc9Yit4Pj4+MDtkPWMsYz1zLHM9bixuPW8raD4+PjAsbz1pLGk9YSxhPXIscj1oK2c+Pj4wfXRbMF09dFswXStyPj4+MCx0WzFdPXRbMV0rYT4+PjAsdFsyXT10WzJdK2k+Pj4wLHRbM109dFszXStvPj4+MCx0WzRdPXRbNF0rbj4+PjAsdFs1XT10WzVdK3M+Pj4wLHRbNl09dFs2XStjPj4+MCx0WzddPXRbN10rZD4+PjB9ZnVuY3Rpb24gdDhlKGUpe2xldCB0PVsuLi5oMWFdLHI9ZS5sZW5ndGgsYT1yKjgsaT1yJTY0PDU2PzU2LXIlNjQ6MTIwLXIlNjQsbz1uZXcgVWludDhBcnJheShyK2krOCk7by5zZXQoZSksb1tyXT0xMjg7bGV0IG49bmV3IERhdGFWaWV3KG8uYnVmZmVyKTtuLnNldFVpbnQzMihvLmxlbmd0aC04LDAsITEpLG4uc2V0VWludDMyKG8ubGVuZ3RoLTQsYT4+PjAsITEpO2ZvcihsZXQgYz0wO2M8by5sZW5ndGg7Yys9NjQpe2xldCBkPW5ldyBBcnJheSg2NCk7Zm9yKGxldCBmPTA7ZjwxNjtmKyspZFtmXT1uLmdldFVpbnQzMihjK2YqNCwhMSk7bTFhKGQsdCl9bGV0IHM9IiI7Zm9yKGxldCBjPTA7Yzw4O2MrKylzKz10W2NdLnRvU3RyaW5nKDE2KS5wYWRTdGFydCg4LCIwIik7cmV0dXJuIHN9dmFyIHAxYSxoMWEsYnp0PWwoKCk9PntwMWE9WzExMTYzNTI0MDgsMTg5OTQ0NzQ0MSwzMDQ5MzIzNDcxLDM5MjEwMDk1NzMsOTYxOTg3MTYzLDE1MDg5NzA5OTMsMjQ1MzYzNTc0OCwyODcwNzYzMjIxLDM2MjQzODEwODAsMzEwNTk4NDAxLDYwNzIyNTI3OCwxNDI2ODgxOTg3LDE5MjUwNzgzODgsMjE2MjA3ODIwNiwyNjE0ODg4MTAzLDMyNDgyMjI1ODAsMzgzNTM5MDQwMSw0MDIyMjI0Nzc0LDI2NDM0NzA3OCw2MDQ4MDc2MjgsNzcwMjU1OTgzLDEyNDkxNTAxMjIsMTU1NTA4MTY5MiwxOTk2MDY0OTg2LDI1NTQyMjA4ODIsMjgyMTgzNDM0OSwyOTUyOTk2ODA4LDMyMTAzMTM2NzEsMzMzNjU3MTg5MSwzNTg0NTI4NzExLDExMzkyNjk5MywzMzgyNDE4OTUsNjY2MzA3MjA1LDc3MzUyOTkxMiwxMjk0NzU3MzcyLDEzOTYxODIyOTEsMTY5NTE4MzcwMCwxOTg2NjYxMDUxLDIxNzcwMjYzNTAsMjQ1Njk1NjAzNywyNzMwNDg1OTIxLDI4MjAzMDI0MTEsMzI1OTczMDgwMCwzMzQ1NzY0NzcxLDM1MTYwNjU4MTcsMzYwMDM1MjgwNCw0MDk0NTcxOTA5LDI3NTQyMzM0NCw0MzAyMjc3MzQsNTA2OTQ4NjE2LDY1OTA2MDU1Niw4ODM5OTc4NzcsOTU4MTM5NTcxLDEzMjI4MjIyMTgsMTUzNzAwMjA2MywxNzQ3ODczNzc5LDE5NTU1NjIyMjIsMjAyNDEwNDgxNSwyMjI3NzMwNDUyLDIzNjE4NTI0MjQsMjQyODQzNjQ3NCwyNzU2NzM0MTg3LDMyMDQwMzE0NzksMzMyOTMyNTI5OF0saDFhPVsxNzc5MDMzNzAzLDMxNDQxMzQyNzcsMTAxMzkwNDI0MiwyNzczNDgwNzYyLDEzNTk4OTMxMTksMjYwMDgyMjkyNCw1Mjg3MzQ2MzUsMTU0MTQ1OTIyNV19KTt2YXIgQ2I9e307cWUoQ2Ise21kNUZyb21TdHJpbmc6KCk9PncxYSxzaGEyNTZGcm9tQnVmZmVyOigpPT54MWEsc2hhMjU2RnJvbUZpbGU6KCk9PnkxYSxzaGEyNTZGcm9tU3RyZWFtOigpPT52MWEsc2hhMjU2RnJvbVN0cmluZzooKT0+d3p0LHNoYTI1NkZyb21TdHJpbmdTeW5jOigpPT5nMWEsc2hhMjY1RnJvbU9iamVjdDooKT0+YjFhfSk7dmFyIHZ6dCx5enQsd3p0LGcxYSx4MWEsYjFhLHYxYSx5MWEsdzFhLE16dD1sKCgpPT57eHp0KCk7Ynp0KCk7dnp0PWU9PntsZXQgdD1bXSxyPW5ldyBEYXRhVmlldyhlKTtmb3IobGV0IGE9MDthPHIuYnl0ZUxlbmd0aDthKz00KXtsZXQgbz1yLmdldFVpbnQzMihhKS50b1N0cmluZygxNiksbj0iMDAwMDAwMDAiLHM9KG4rbykuc2xpY2UoLW4ubGVuZ3RoKTt0LnB1c2gocyl9cmV0dXJuIHQuam9pbigiIil9LHl6dD0oKT0+dHlwZW9mIGNyeXB0bzwidSImJmNyeXB0by5zdWJ0bGUhPT12b2lkIDAsd3p0PWFzeW5jIGU9PntsZXQgdD1uZXcgVGV4dEVuY29kZXIoKS5lbmNvZGUoZSk7aWYoeXp0KCkpe2xldCByPWF3YWl0IGNyeXB0by5zdWJ0bGUuZGlnZXN0KCJTSEEtMjU2Iix0KTtyZXR1cm4gdnp0KHIpfWVsc2UgcmV0dXJuIHQ4ZSh0KX0sZzFhPWU9Pnt0aHJvdyBjb25zb2xlLndhcm4oInNoYTI1NkZyb21TdHJpbmdTeW5jIGlzIG5vdCB0cnVseSBzeW5jaHJvbm91cyBpbiBicm93c2VyIGVudmlyb25tZW50IiksbmV3IEVycm9yKCJzaGEyNTZGcm9tU3RyaW5nU3luYyBpcyBub3Qgc3VwcG9ydGVkIGluIGJyb3dzZXIgZW52aXJvbm1lbnQuIFVzZSBzaGEyNTZGcm9tU3RyaW5nIGluc3RlYWQuIil9LHgxYT1hc3luYyBlPT57aWYoeXp0KCkpe2xldCB0O2lmKGUgaW5zdGFuY2VvZiBVaW50OEFycmF5KXtsZXQgaT1lO3Q9aS5idWZmZXIuc2xpY2UoaS5ieXRlT2Zmc2V0LGkuYnl0ZU9mZnNldCtpLmJ5dGVMZW5ndGgpfWVsc2UgdD1lO2xldCByPWF3YWl0IGNyeXB0by5zdWJ0bGUuZGlnZXN0KCJTSEEtMjU2Iix0KTtyZXR1cm4gdnp0KHIpfWVsc2V7bGV0IHQ9ZSBpbnN0YW5jZW9mIFVpbnQ4QXJyYXk/ZTpuZXcgVWludDhBcnJheShlKTtyZXR1cm4gdDhlKHQpfX0sYjFhPWFzeW5jIGU9PntsZXQgdD1ObC5zdHJpbmdpZnkoZSk7cmV0dXJuIGF3YWl0IHd6dCh0KX0sdjFhPWU9Pnt0aHJvdyBuZXcgRXJyb3IoInNoYTI1NkZyb21TdHJlYW0gaXMgbm90IHN1cHBvcnRlZCBpbiBicm93c2VyIGVudmlyb25tZW50Iil9LHkxYT1hc3luYyBlPT57dGhyb3cgbmV3IEVycm9yKCJzaGEyNTZGcm9tRmlsZSBpcyBub3Qgc3VwcG9ydGVkIGluIGJyb3dzZXIgZW52aXJvbm1lbnQiKX0sdzFhPWFzeW5jIGU9Pnt0aHJvdyBuZXcgRXJyb3IoIm1kNUZyb21TdHJpbmcgaXMgbm90IHN1cHBvcnRlZCBpbiBicm93c2VyIGVudmlyb25tZW50LiBXZWIgQ3J5cHRvIEFQSSBkb2VzIG5vdCBzdXBwb3J0IE1ENS4iKX19KTt2YXIgTnRlPWwoKCk9PntNenQoKTtxSigpO0NvKCk7YTIoKTtaSigpfSk7dmFyIF9iLHI4ZT1sKCgpPT57RnRlKCk7X2I9Y2xhc3N7Y29uc3RydWN0b3IodCxyKXt0aGlzLnN0YXRlUGFydFJlZj10LHRoaXMuYWN0aW9uRGVmPXJ9dHJpZ2dlcih0KXtyZXR1cm4gdGhpcy5zdGF0ZVBhcnRSZWYuZGlzcGF0Y2hBY3Rpb24odGhpcyx0KX19fSk7ZnVuY3Rpb24gazFhKGUpe3JldHVybiBuZXcgUnQodD0+e2lmKGUuYWJvcnRlZCl7dC5uZXh0KCksdC5jb21wbGV0ZSgpO3JldHVybn1sZXQgcj0oKT0+e3QubmV4dCgpLHQuY29tcGxldGUoKX07cmV0dXJuIGUuYWRkRXZlbnRMaXN0ZW5lcigiYWJvcnQiLHIpLCgpPT5lLnJlbW92ZUV2ZW50TGlzdGVuZXIoImFib3J0IixyKX0pfXZhciBUYixGdGU9bCgoKT0+e050ZSgpO3FnKCk7cjhlKCk7VGI9Y2xhc3MgZXtzdGF0aWN7dGhpcy5NQVhfTkVTVEVEX0RJU1BBVENIX0RFUFRIPTEwfWNvbnN0cnVjdG9yKHQscil7dGhpcy5zdGF0ZT1uZXcgJHIucnhqcy5TdWJqZWN0LHRoaXMuY3VtdWxhdGl2ZURlZmVycmVkPXB0LmN1bXVsYXRpdmVEZWZlcigpLHRoaXMubXV0YXRpb25RdWV1ZT1Qcm9taXNlLnJlc29sdmUoKSx0aGlzLnBlbmRpbmdDdW11bGF0aXZlTm90aWZpY2F0aW9uPW51bGwsdGhpcy53ZWJTdG9yZT1udWxsLHRoaXMubWlkZGxld2FyZXM9W10sdGhpcy5zZWxlY3RvckNhY2hlPW5ldyBXZWFrTWFwLHRoaXMuZGVmYXVsdFNlbGVjdE9ic2VydmFibGU9bnVsbCx0aGlzLm5hbWU9dCxyJiYodGhpcy53ZWJTdG9yZU9wdGlvbnM9cil9YXN5bmMgaW5pdCgpe2lmKHRoaXMud2ViU3RvcmVPcHRpb25zKXt0aGlzLndlYlN0b3JlPW5ldyBucy5XZWJTdG9yZSh0aGlzLndlYlN0b3JlT3B0aW9ucyksYXdhaXQgdGhpcy53ZWJTdG9yZS5pbml0KCk7bGV0IHQ9YXdhaXQgdGhpcy53ZWJTdG9yZS5nZXQoU3RyaW5nKHRoaXMubmFtZSkpO3QmJnRoaXMudmFsaWRhdGVTdGF0ZSh0KSYmKHRoaXMuc3RhdGVTdG9yZT10LGF3YWl0IHRoaXMubm90aWZ5Q2hhbmdlKCkpfX1nZXRTdGF0ZSgpe3JldHVybiB0aGlzLnN0YXRlU3RvcmV9YWRkTWlkZGxld2FyZSh0KXtyZXR1cm4gdGhpcy5taWRkbGV3YXJlcy5wdXNoKHQpLCgpPT57bGV0IHI9dGhpcy5taWRkbGV3YXJlcy5pbmRleE9mKHQpO3IhPT0tMSYmdGhpcy5taWRkbGV3YXJlcy5zcGxpY2UociwxKX19YXN5bmMgc2V0U3RhdGUodCl7cmV0dXJuIHRoaXMubXV0YXRpb25RdWV1ZT10aGlzLm11dGF0aW9uUXVldWUudGhlbigoKT0+dGhpcy5hcHBseVN0YXRlKHQpLCgpPT50aGlzLmFwcGx5U3RhdGUodCkpfWFzeW5jIGFwcGx5U3RhdGUodCl7bGV0IHI9dDtmb3IobGV0IGEgb2YgdGhpcy5taWRkbGV3YXJlcylyPWF3YWl0IGEocix0aGlzLnN0YXRlU3RvcmUpO2lmKCF0aGlzLnZhbGlkYXRlU3RhdGUocikpdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHN0YXRlIHN0cnVjdHVyZSBmb3Igc3RhdGUgcGFydCAnJHt0aGlzLm5hbWV9J2ApO3JldHVybiB0aGlzLndlYlN0b3JlJiZhd2FpdCB0aGlzLndlYlN0b3JlLnNldChTdHJpbmcodGhpcy5uYW1lKSxyKSx0aGlzLnN0YXRlU3RvcmU9cixhd2FpdCB0aGlzLm5vdGlmeUNoYW5nZSgpLHRoaXMuc3RhdGVTdG9yZX12YWxpZGF0ZVN0YXRlKHQpe3JldHVybiB0IT1udWxsfWFzeW5jIG5vdGlmeUNoYW5nZSgpe2xldCB0PXRoaXMuc3RhdGVTdG9yZTtpZih0PT09dm9pZCAwKXJldHVybjtpZih0aGlzLnNtYXJ0c3RhdGVSZWY/LmlzQmF0Y2hpbmcpe3RoaXMuc21hcnRzdGF0ZVJlZi5yZWdpc3RlclBlbmRpbmdOb3RpZmljYXRpb24odGhpcyk7cmV0dXJufWxldCByPWFzeW5jIGE9PmF3YWl0IENiLnNoYTI1NkZyb21TdHJpbmcob3Muc3RhYmxlT25lV2F5U3RyaW5naWZ5KGEpKTt0cnl7bGV0IGE9YXdhaXQgcih0KTtpZih0aGlzLmxhc3RTdGF0ZU5vdGlmaWNhdGlvblBheWxvYWRIYXNoJiZhPT09dGhpcy5sYXN0U3RhdGVOb3RpZmljYXRpb25QYXlsb2FkSGFzaClyZXR1cm47dGhpcy5sYXN0U3RhdGVOb3RpZmljYXRpb25QYXlsb2FkSGFzaD1hfWNhdGNoKGEpe2NvbnNvbGUuZXJyb3IoYFN0YXRlIGhhc2ggY29tcHV0YXRpb24gZmFpbGVkIGZvciAnJHt0aGlzLm5hbWV9JzpgLGEpfXRoaXMuc3RhdGUubmV4dCh0KX1ub3RpZnlDaGFuZ2VDdW11bGF0aXZlKCl7dGhpcy5wZW5kaW5nQ3VtdWxhdGl2ZU5vdGlmaWNhdGlvbiYmY2xlYXJUaW1lb3V0KHRoaXMucGVuZGluZ0N1bXVsYXRpdmVOb3RpZmljYXRpb24pLHRoaXMucGVuZGluZ0N1bXVsYXRpdmVOb3RpZmljYXRpb249c2V0VGltZW91dCgoKT0+e3RoaXMucGVuZGluZ0N1bXVsYXRpdmVOb3RpZmljYXRpb249bnVsbCx0aGlzLnN0YXRlU3RvcmUhPT12b2lkIDAmJnRoaXMubm90aWZ5Q2hhbmdlKCkuY2F0Y2godD0+e2NvbnNvbGUuZXJyb3IoYG5vdGlmeUNoYW5nZUN1bXVsYXRpdmUgZmFpbGVkIGZvciAnJHt0aGlzLm5hbWV9JzpgLHQpfSl9LDApfXNlbGVjdCh0LHIpe2xldCBhPXI/LnNpZ25hbCE9bnVsbDtpZighYSl7aWYodCl7aWYodGhpcy5zZWxlY3RvckNhY2hlLmhhcyh0KSlyZXR1cm4gdGhpcy5zZWxlY3RvckNhY2hlLmdldCh0KX1lbHNlIGlmKHRoaXMuZGVmYXVsdFNlbGVjdE9ic2VydmFibGUpcmV0dXJuIHRoaXMuZGVmYXVsdFNlbGVjdE9ic2VydmFibGV9bGV0IGk9dHx8KHM9PnMpLG89dGhpcy5zdGF0ZS5waXBlKCRyLnJ4anMub3BzLnN0YXJ0V2l0aCh0aGlzLmdldFN0YXRlKCkpLCRyLnJ4anMub3BzLmZpbHRlcihzPT5zIT09dm9pZCAwKSwkci5yeGpzLm9wcy5tYXAocz0+e3RyeXtyZXR1cm4gaShzKX1jYXRjaChjKXtjb25zb2xlLmVycm9yKGBTZWxlY3RvciBlcnJvciBpbiBzdGF0ZSBwYXJ0ICcke3RoaXMubmFtZX0nOmAsYyk7cmV0dXJufX0pKTtpZihhKXJldHVybiBvPW8ucGlwZShnaChrMWEoci5zaWduYWwpKSksbztsZXQgbj1vLnBpcGUoblEoe2J1ZmZlclNpemU6MSxyZWZDb3VudDohMH0pKTtyZXR1cm4gdD90aGlzLnNlbGVjdG9yQ2FjaGUuc2V0KHQsbik6dGhpcy5kZWZhdWx0U2VsZWN0T2JzZXJ2YWJsZT1uLG59Y3JlYXRlQWN0aW9uKHQpe3JldHVybiBuZXcgX2IodGhpcyx0KX1jcmVhdGVBY3Rpb25Db250ZXh0KHQpe2xldCByPXRoaXM7cmV0dXJue2Rpc3BhdGNoOmFzeW5jKGEsaSk9PntpZih0Pj1lLk1BWF9ORVNURURfRElTUEFUQ0hfREVQVEgpdGhyb3cgbmV3IEVycm9yKGBNYXhpbXVtIG5lc3RlZCBhY3Rpb24gZGlzcGF0Y2ggZGVwdGggKCR7ZS5NQVhfTkVTVEVEX0RJU1BBVENIX0RFUFRIfSkgZXhjZWVkZWQuIENoZWNrIGZvciBjaXJjdWxhciBhY3Rpb24gZGlzcGF0Y2hlcy5gKTtsZXQgbz1yLmNyZWF0ZUFjdGlvbkNvbnRleHQodCsxKSxuPWF3YWl0IGEuYWN0aW9uRGVmKHIsaSxvKTtyZXR1cm4gci5hcHBseVN0YXRlKG4pfX19YXN5bmMgZGlzcGF0Y2hBY3Rpb24odCxyKXtyZXR1cm4gYXdhaXQgdGhpcy5jdW11bGF0aXZlRGVmZXJyZWQucHJvbWlzZSx0aGlzLm11dGF0aW9uUXVldWU9dGhpcy5tdXRhdGlvblF1ZXVlLnRoZW4oYXN5bmMoKT0+e2xldCBhPXRoaXMuY3JlYXRlQWN0aW9uQ29udGV4dCgwKSxpPWF3YWl0IHQuYWN0aW9uRGVmKHRoaXMscixhKTtyZXR1cm4gdGhpcy5hcHBseVN0YXRlKGkpfSxhc3luYygpPT57bGV0IGE9dGhpcy5jcmVhdGVBY3Rpb25Db250ZXh0KDApLGk9YXdhaXQgdC5hY3Rpb25EZWYodGhpcyxyLGEpO3JldHVybiB0aGlzLmFwcGx5U3RhdGUoaSl9KX1hc3luYyB3YWl0VW50aWxQcmVzZW50KHQscil7bGV0IGEsaTt0eXBlb2Ygcj09Im51bWJlciI/YT1yOnImJihhPXIudGltZW91dE1zLGk9ci5zaWduYWwpO2xldCBvPXB0LmRlZmVyKCksbj10aGlzLnNlbGVjdCh0KSxzPSExO2lmKGk/LmFib3J0ZWQpdGhyb3cgbmV3IEVycm9yKCJBYm9ydGVkIik7bGV0IGM9bi5zdWJzY3JpYmUodT0+e3UhPW51bGwmJiFzJiYocz0hMCxvLnJlc29sdmUodSkpfSksZDthJiYoZD1zZXRUaW1lb3V0KCgpPT57c3x8KHM9ITAsYy51bnN1YnNjcmliZSgpLG8ucmVqZWN0KG5ldyBFcnJvcihgd2FpdFVudGlsUHJlc2VudCB0aW1lZCBvdXQgYWZ0ZXIgJHthfW1zYCkpKX0sYSkpO2xldCBmPWk/KCk9PntzfHwocz0hMCxjLnVuc3Vic2NyaWJlKCksZCYmY2xlYXJUaW1lb3V0KGQpLG8ucmVqZWN0KG5ldyBFcnJvcigiQWJvcnRlZCIpKSl9OnZvaWQgMDtpJiZmJiZpLmFkZEV2ZW50TGlzdGVuZXIoImFib3J0IixmKTt0cnl7cmV0dXJuIGF3YWl0IG8ucHJvbWlzZX1maW5hbGx5e2MudW5zdWJzY3JpYmUoKSxkJiZjbGVhclRpbWVvdXQoZCksaSYmZiYmaS5yZW1vdmVFdmVudExpc3RlbmVyKCJhYm9ydCIsZil9fWFzeW5jIHN0YXRlU2V0dXAodCl7bGV0IHI9dCh0aGlzKTt0aGlzLmN1bXVsYXRpdmVEZWZlcnJlZC5hZGRQcm9taXNlKHIpLGF3YWl0IHRoaXMuc2V0U3RhdGUoYXdhaXQgcil9ZGlzcG9zZSgpe3RoaXMuc3RhdGUuY29tcGxldGUoKSx0aGlzLnBlbmRpbmdDdW11bGF0aXZlTm90aWZpY2F0aW9uJiYoY2xlYXJUaW1lb3V0KHRoaXMucGVuZGluZ0N1bXVsYXRpdmVOb3RpZmljYXRpb24pLHRoaXMucGVuZGluZ0N1bXVsYXRpdmVOb3RpZmljYXRpb249bnVsbCksdGhpcy5taWRkbGV3YXJlcy5sZW5ndGg9MCx0aGlzLnNlbGVjdG9yQ2FjaGU9bmV3IFdlYWtNYXAsdGhpcy5kZWZhdWx0U2VsZWN0T2JzZXJ2YWJsZT1udWxsLHRoaXMud2ViU3RvcmU9bnVsbCx0aGlzLnNtYXJ0c3RhdGVSZWY9dm9pZCAwfX19KTtmdW5jdGlvbiBhOGUoZSx0KXtyZXR1cm4gajBlKGUubWFwKHI9PnIuc2VsZWN0KCkpKS5waXBlKHIyKHI9PnQoLi4ucikpKX12YXIgaThlPWwoKCk9PntOdGUoKTtxZygpfSk7dmFyIG84ZSxrenQ9bCgoKT0+e050ZSgpO0Z0ZSgpO2k4ZSgpO284ZT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuc3RhdGVQYXJ0TWFwPXt9LHRoaXMucGVuZGluZ1N0YXRlUGFydENyZWF0aW9uPW5ldyBNYXAsdGhpcy5iYXRjaERlcHRoPTAsdGhpcy5pc0ZsdXNoaW5nPSExLHRoaXMucGVuZGluZ05vdGlmaWNhdGlvbnM9bmV3IFNldH1nZXQgaXNCYXRjaGluZygpe3JldHVybiB0aGlzLmJhdGNoRGVwdGg+MH1yZWdpc3RlclBlbmRpbmdOb3RpZmljYXRpb24odCl7dGhpcy5wZW5kaW5nTm90aWZpY2F0aW9ucy5hZGQodCl9YXN5bmMgYmF0Y2godCl7dGhpcy5iYXRjaERlcHRoKys7dHJ5e2F3YWl0IHQoKX1maW5hbGx5e2lmKHRoaXMuYmF0Y2hEZXB0aC0tLHRoaXMuYmF0Y2hEZXB0aD09PTAmJiF0aGlzLmlzRmx1c2hpbmcpe3RoaXMuaXNGbHVzaGluZz0hMDt0cnl7Zm9yKDt0aGlzLnBlbmRpbmdOb3RpZmljYXRpb25zLnNpemU+MDspe2xldCByPVsuLi50aGlzLnBlbmRpbmdOb3RpZmljYXRpb25zXTt0aGlzLnBlbmRpbmdOb3RpZmljYXRpb25zLmNsZWFyKCk7Zm9yKGxldCBhIG9mIHIpYXdhaXQgYS5ub3RpZnlDaGFuZ2UoKX19ZmluYWxseXt0aGlzLmlzRmx1c2hpbmc9ITF9fX19Y29tcHV0ZWQodCxyKXtyZXR1cm4gYThlKHQscil9YXN5bmMgZ2V0U3RhdGVQYXJ0KHQscixhPSJzb2Z0Iil7bGV0IGk9dGhpcy5wZW5kaW5nU3RhdGVQYXJ0Q3JlYXRpb24uZ2V0KHQpO2lmKGkpcmV0dXJuIGk7bGV0IG89dGhpcy5zdGF0ZVBhcnRNYXBbdF07aWYobylzd2l0Y2goYSl7Y2FzZSJtYW5kYXRvcnkiOnRocm93IG5ldyBFcnJvcihgU3RhdGUgcGFydCAnJHt0fScgYWxyZWFkeSBleGlzdHMsIGJ1dCBpbml0TW9kZSBpcyAnbWFuZGF0b3J5J2ApO2Nhc2UiZm9yY2UiOm8uZGlzcG9zZSgpO2JyZWFrO2RlZmF1bHQ6cmV0dXJuIG99ZWxzZSBpZihyPT09dm9pZCAwKXRocm93IG5ldyBFcnJvcihgU3RhdGUgcGFydCAnJHt0fScgZG9lcyBub3QgZXhpc3QgYW5kIG5vIGluaXRpYWwgc3RhdGUgcHJvdmlkZWRgKTtsZXQgbj10aGlzLmNyZWF0ZVN0YXRlUGFydCh0LHIsYSk7dGhpcy5wZW5kaW5nU3RhdGVQYXJ0Q3JlYXRpb24uc2V0KHQsbik7dHJ5e3JldHVybiBhd2FpdCBufWZpbmFsbHl7dGhpcy5wZW5kaW5nU3RhdGVQYXJ0Q3JlYXRpb24uZGVsZXRlKHQpfX1hc3luYyBjcmVhdGVTdGF0ZVBhcnQodCxyLGE9InNvZnQiKXtsZXQgaT1uZXcgVGIodCxhPT09InBlcnNpc3RlbnQiP3tkYk5hbWU6InNtYXJ0c3RhdGUiLHN0b3JlTmFtZTp0fTpudWxsKTtpLnNtYXJ0c3RhdGVSZWY9dGhpcyxhd2FpdCBpLmluaXQoKTtsZXQgbz1pLmdldFN0YXRlKCk7cmV0dXJuIGE9PT0icGVyc2lzdGVudCImJm8hPT12b2lkIDA/YXdhaXQgaS5zZXRTdGF0ZSh7Li4uciwuLi5vfSk6YXdhaXQgaS5zZXRTdGF0ZShyKSx0aGlzLnN0YXRlUGFydE1hcFt0XT1pLGl9fX0pO2Z1bmN0aW9uIFMxYShlLHQpe2xldHtjb250ZXh0OnIsc3RhdGVQYXJ0OmEsc2VsZWN0b3JGbjppfT10LG89bmV3IFNldCxuPWEuc2VsZWN0KGkpLnN1YnNjcmliZShkPT57Zm9yKGxldCBmIG9mIG8pZihkKX0pLHM9KCk9PntsZXQgZD1hLmdldFN0YXRlKCk7aWYoZCE9PXZvaWQgMClyZXR1cm4gaT9pKGQpOmR9LGM9ZD0+e2xldCBmPWQsdT1mLmRldGFpbDtpZighKCF1fHx1LmNvbnRleHQhPT1yKSlpZihmLnN0b3BQcm9wYWdhdGlvbigpLHUuc3Vic2NyaWJlKXtsZXQgcD11LmNhbGxiYWNrO28uYWRkKHApO2xldCBoPSgpPT5vLmRlbGV0ZShwKTtwKHMoKSxoKX1lbHNlIHUuY2FsbGJhY2socygpKX07cmV0dXJuIGUuYWRkRXZlbnRMaXN0ZW5lcigiY29udGV4dC1yZXF1ZXN0IixjKSwoKT0+e2UucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY29udGV4dC1yZXF1ZXN0IixjKSxuLnVuc3Vic2NyaWJlKCksby5jbGVhcigpfX12YXIgU3p0PWwoKCk9Pnt9KTt2YXIgUTA9e307cWUoUTAse1NtYXJ0c3RhdGU6KCk9Pm84ZSxTdGF0ZUFjdGlvbjooKT0+X2IsU3RhdGVQYXJ0OigpPT5UYixhdHRhY2hDb250ZXh0UHJvdmlkZXI6KCk9PlMxYSxjb21wdXRlZDooKT0+YThlfSk7dmFyIG44ZT1sKCgpPT57a3p0KCk7RnRlKCk7cjhlKCk7aThlKCk7U3p0KCl9KTt2YXIgenp0PWwoKCk9Pnt9KTt2YXIgczhlLEN6dD1sKCgpPT57enp0KCk7czhlPWNsYXNzIGV7c3RhdGljIGNyZWF0ZUZyb21VcmwodCxyKXtsZXQgYT1uZXcgVVJMKHQpLGk9e30sbz1bXTthLnNlYXJjaCYmYS5zZWFyY2gucmVwbGFjZSgiPyIsIiIpLnNwbGl0KCImIikubWFwKGQ9PntvLnB1c2goe2tleTpkLnNwbGl0KCI9IilbMF0sdmFsdWU6ZC5zcGxpdCgiPSIpWzFdfSl9KTtmb3IobGV0IGQgb2YgbylpW2Qua2V5XT1kLnZhbHVlO2lmKHI/LnNlYXJjaFBhcmFtcylmb3IobGV0IGQgb2YgT2JqZWN0LmtleXMoci5zZWFyY2hQYXJhbXMpKWlbZF09ci5zZWFyY2hQYXJhbXNbZF07bGV0IG49YS5wYXRobmFtZXx8IiI7aWYoT2JqZWN0LmtleXMoaSkubGVuZ3RoPjApe24rPSI/IjtsZXQgZD0hMDtmb3IobGV0IGYgb2YgT2JqZWN0LmtleXMoaSkpZD9kPSExOm4rPSImIixuKz1gJHtmfT0ke2lbZl19YH1sZXQgcz17Li4uYSxocmVmOmEuaHJlZixvcmlnaW46YS5vcmlnaW4scHJvdG9jb2w6YS5wcm90b2NvbCx1c2VybmFtZTphLnVzZXJuYW1lLHBhc3N3b3JkOmEucGFzc3dvcmQsaG9zdDphLmhvc3QsaG9zdG5hbWU6YS5ob3N0bmFtZSxwb3J0OmEucG9ydCxwYXRoOm4scGF0aG5hbWU6YS5wYXRobmFtZSxzZWFyY2g6YS5zZWFyY2gsc2VhcmNoUGFyYW1zOmksaGFzaDphLmhhc2h9OyFzLnBvcnQmJnMucHJvdG9jb2w9PT0iaHR0cHM6IiYmKHMucG9ydD0iNDQzIiksIXMucG9ydCYmcy5wcm90b2NvbD09PSJodHRwOiImJihzLnBvcnQ9IjgwIik7bGV0IGM9bmV3IGU7cmV0dXJuIE9iamVjdC5hc3NpZ24oYyxzKSxjfXN0YXRpYyBjcmVhdGVGcm9tUGFyc2VkVXJsKHQpe2xldCByPW5ldyBlO3JldHVybiBPYmplY3QuYXNzaWduKHIsdCkscn1jb25zdHJ1Y3Rvcigpe3RoaXMuc2VhcmNoUGFyYW1zPXt9fWNsb25lKCl7bGV0IHQ9bmV3IGU7cmV0dXJuIE9iamVjdC5hc3NpZ24odCx0aGlzKSx0LnNlYXJjaFBhcmFtcz17Li4udGhpcy5zZWFyY2hQYXJhbXN9LHR9c2V0KHQscil7cmV0dXJuIHRoaXNbdF09cix0aGlzfXRvU3RyaW5nKCl7bGV0IHQ9IiI7cmV0dXJuIHRoaXMudXNlcm5hbWUmJiF0aGlzLnBhc3N3b3JkJiYodD1gJHt0aGlzLnVzZXJuYW1lfUBgKSx0aGlzLnVzZXJuYW1lJiZ0aGlzLnBhc3N3b3JkJiYodD1gJHt0aGlzLnVzZXJuYW1lfToke3RoaXMucGFzc3dvcmR9QGApLGAke3RoaXMucHJvdG9jb2x9Ly8ke3R9JHt0aGlzLmhvc3RuYW1lfToke3RoaXMucG9ydH0ke3RoaXMucGF0aH1gfX19KTt2YXIgSzA9e307cWUoSzAse1NtYXJ0dXJsOigpPT5zOGV9KTt2YXIgbDhlPWwoKCk9PntDenQoKX0pO3ZhciBPdGUsT2QsUnRlPWwoKCk9PntPdGU9Y2xhc3N7Y2xhaW0oKXtpZih0aGlzLmNsYWltZWQpdGhyb3cgbmV3IEVycm9yKCJEZWZlcnJlZCBhbHJlYWR5IGNsYWltZWQiKTt0aGlzLmNsYWltZWQ9ITB9Z2V0IGR1cmF0aW9uKCl7cmV0dXJuIHRoaXMuc3RvcHBlZEF0P3RoaXMuc3RvcHBlZEF0LXRoaXMuc3RhcnRlZEF0OkRhdGUubm93KCktdGhpcy5zdGFydGVkQXR9Y29uc3RydWN0b3IoKXt0aGlzLmNsYWltZWQ9ITEsdGhpcy5wcm9taXNlPW5ldyBQcm9taXNlKCh0LHIpPT57dGhpcy5yZXNvbHZlPWE9Pnt0aGlzLnN0YXR1cz0iZnVsZmlsbGVkIix0aGlzLnN0b3BwZWRBdD1EYXRlLm5vdygpLHQoYSl9LHRoaXMucmVqZWN0PWE9Pnt0aGlzLnN0YXR1cz0icmVqZWN0ZWQiLHRoaXMuc3RvcHBlZEF0PURhdGUubm93KCkscihhKX0sdGhpcy5zdGFydGVkQXQ9RGF0ZS5ub3coKSx0aGlzLnN0YXR1cz0icGVuZGluZyJ9KX19LE9kPSgpPT5uZXcgT3RlfSk7dmFyIEJ0ZSx6MWEsX3p0PWwoKCk9PntSdGUoKTtCdGU9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLmFjY3VtdWxhdGVkUHJvbWlzZXM9W10sdGhpcy5kZWZlcnJlZD1PZCgpLHRoaXMucHJvbWlzZT10aGlzLmRlZmVycmVkLnByb21pc2Usc2V0VGltZW91dChhc3luYygpPT57Zm9yKDt0aGlzLmFjY3VtdWxhdGVkUHJvbWlzZXMubGVuZ3RoPjA7KWF3YWl0IHRoaXMuYWNjdW11bGF0ZWRQcm9taXNlcy5zaGlmdCgpO3RoaXMuZGVmZXJyZWQucmVzb2x2ZSgpfSwwKX1hZGRQcm9taXNlKHQpe3RoaXMuYWNjdW11bGF0ZWRQcm9taXNlcy5wdXNoKHQpfX0sejFhPSgpPT5uZXcgQnRlfSk7dmFyIFJkPXt9O3FlKFJkLHtDdW11bGF0aXZlRGVmZXJyZWQ6KCk9PkJ0ZSxEZWZlcnJlZDooKT0+T3RlLGN1bXVsYXRpdmVEZWZlcjooKT0+ejFhLGRlZmVyOigpPT5PZCxnZXRGaXJzdFRydWVPckZhbHNlOigpPT5EMWEsbWFwOigpPT5UMWEscmVqZWN0ZWRQcm9taXNlOigpPT5fMWEscmVzb2x2ZWRQcm9taXNlOigpPT5DMWEsdGltZW91dEFuZENvbnRpbnVlOigpPT5MMWEsdGltZW91dFdyYXA6KCk9PlR6dH0pO3ZhciBDMWEsXzFhLFQxYSxUenQsTDFhLEQxYSxjOGU9bCgoKT0+e1J0ZSgpO196dCgpO1J0ZSgpO0MxYT1lPT5Qcm9taXNlLnJlc29sdmUoZSksXzFhPWU9PlByb21pc2UucmVqZWN0KGUpLFQxYT1hc3luYyhlLHQpPT57bGV0IHI9W10sYT1bXTtmb3IobGV0IGkgb2YgZSl7bGV0IG89dChpKTtyLnB1c2gobyksby50aGVuKG49PnthLnB1c2gobil9KX1yZXR1cm4gYXdhaXQgUHJvbWlzZS5hbGwociksYX0sVHp0PWFzeW5jKGUsdCxyPSEwKT0+bmV3IFByb21pc2UoKGEsaSk9PntzZXRUaW1lb3V0KCgpPT57cj9pKG5ldyBFcnJvcigidGltZW91dCIpKTphKG51bGwpfSx0KSxlLnRoZW4oYSxpKX0pLEwxYT1hc3luYyhlLHQ9NmU0KT0+VHp0KGUsdCwhMSksRDFhPWFzeW5jIGU9PntsZXQgdD1PZCgpO2ZvcihsZXQgciBvZiBlKXIudGhlbihhPT57YT09PSEwJiZ0LnJlc29sdmUoITApfSk7cmV0dXJuIFByb21pc2UuYWxsKGUpLnRoZW4oKCk9Pnt0LnJlc29sdmUoITEpfSksdC5wcm9taXNlfX0pO3ZhciBkOGU9e307cWUoZDhlLHtUaW1lb3V0OigpPT5IdGUsZGVsYXlGb3I6KCk9Pkx6dCxkZWxheUZvclJhbmRvbTooKT0+QTFhfSk7dmFyIEx6dCxBMWEsSHRlLER6dD1sKCgpPT57YzhlKCk7THp0PWFzeW5jKGUsdCxyPSExKT0+KGF3YWl0IG5ldyBIdGUoZSxudWxsLHIpLnByb21pc2UsdCksQTFhPWFzeW5jKGUsdCxyLGE9ITEpPT4oYXdhaXQgTHp0KE1hdGgucmFuZG9tKCkqKHQtZSkrZSxudWxsLGEpLHIpLEh0ZT1jbGFzc3tjb25zdHJ1Y3Rvcih0LHIsYT0hMSl7dGhpcy5fY2FuY2VsbGVkPSExLHRoaXMudGltZW91dEluTWlsbGlzPXQsdGhpcy5fZGVmZXJyZWQ9T2QoKSx0aGlzLnByb21pc2U9dGhpcy5fZGVmZXJyZWQucHJvbWlzZSx0aGlzLl90aW1lb3V0PXNldFRpbWVvdXQoKCk9Pnt0aGlzLl9jYW5jZWxsZWR8fHRoaXMuX2RlZmVycmVkLnJlc29sdmUocil9LHQpLHRoaXMuc3RhcnRlZD1EYXRlLm5vdygpLGEmJnRoaXMubWFrZVVucmVmZWQoKX1tYWtlVW5yZWZlZCgpe3RoaXMuX3RpbWVvdXQudW5yZWYoKX1jYW5jZWwoKXt0aGlzLl9jYW5jZWxsZWQ9ITAsY2xlYXJUaW1lb3V0KHRoaXMuX3RpbWVvdXQpfWdldFRpbWVMZWZ0KCl7bGV0IHQ9dGhpcy5zdGFydGVkK3RoaXMudGltZW91dEluTWlsbGlzLURhdGUubm93KCk7cmV0dXJuIHQ+MD90OjB9fX0pO3ZhciBBenQ9bCgoKT0+e30pO3ZhciBxdGU9bCgoKT0+e18yKCl9KTt2YXIganRlPWwoKCk9PntfMigpO18yKCl9KTt2YXIgRXp0PWwoKCk9PntfMigpfSk7dmFyICR6dD1sKCgpPT57fSk7dmFyIFB6dD1sKCgpPT57XzIoKX0pO3ZhciBJenQ9bCgoKT0+e18yKCl9KTt2YXIgTnp0PWwoKCk9Pnt9KTt2YXIgRnp0PWwoKCk9Pnt9KTt2YXIgdThlPXt9O3ZhciBWdGU9bCgoKT0+e0V6dCgpOyR6dCgpO1B6dCgpO0l6dCgpO056dCgpO0Z6dCgpfSk7dmFyIGY4ZSxPenQ9bCgoKT0+e1Z0ZSgpO3F0ZSgpO2p0ZSgpO2Y4ZT1jbGFzc3t9fSk7dmFyIFJ6dD1sKCgpPT57fSk7dmFyIEJ6dD1sKCgpPT57fSk7dmFyIEh6dD1sKCgpPT57fSk7dmFyIHF6dD1sKCgpPT57fSk7dmFyIHA4ZT17fTt2YXIgaDhlPWwoKCk9PntSenQoKTtCenQoKTtIenQoKTtxenQoKX0pO3ZhciBqenQ9bCgoKT0+e204ZSgpO1Z0ZSgpO2g4ZSgpfSk7dmFyIFZ6dD1sKCgpPT57fSk7dmFyIFV6dD1sKCgpPT57anRlKCl9KTt2YXIgV3p0PWwoKCk9Pnt9KTt2YXIgVXRlPXt9O3FlKFV0ZSx7SUpvYjooKT0+ZjhlfSk7dmFyIG04ZT1sKCgpPT57QXp0KCk7cXRlKCk7anRlKCk7T3p0KCk7anp0KCk7Vnp0KCk7VXp0KCk7V3p0KCl9KTt2YXIgR3p0PWwoKCk9Pnt9KTt2YXIgWXp0PWwoKCk9Pnt9KTt2YXIgZzhlPXt9O3ZhciBaenQ9bCgoKT0+e0d6dCgpO1l6dCgpfSk7dmFyIFh6dD1sKCgpPT57fSk7dmFyIFF6dD1sKCgpPT57fSk7dmFyIHg4ZT17fTt2YXIgS3p0PWwoKCk9PntYenQoKTtRenQoKX0pO3ZhciBiOGU9bCgoKT0+e18yKCl9KTt2YXIgSnp0PWwoKCk9PntfMigpfSk7dmFyIGVDdD1sKCgpPT57YjhlKCl9KTt2YXIgdjhlPXt9O3ZhciB0Q3Q9bCgoKT0+e2I4ZSgpO0p6dCgpO2VDdCgpfSk7dmFyIHJDdD1sKCgpPT57fSk7dmFyIGFDdD1sKCgpPT57fSk7dmFyIHk4ZT17fTt2YXIgaUN0PWwoKCk9PntyQ3QoKTthQ3QoKX0pO3ZhciB3OGU9bCgoKT0+e30pO3ZhciBNOGUsb0N0PWwoKCk9Pnt3OGUoKTtNOGU9Y2xhc3N7fX0pO3ZhciBuQ3Q9bCgoKT0+e30pO3ZhciBzQ3Q9bCgoKT0+e30pO3ZhciBsQ3Q9bCgoKT0+e30pO3ZhciBjQ3Q9bCgoKT0+e30pO3ZhciBkQ3Q9bCgoKT0+e30pO3ZhciB1Q3Q9bCgoKT0+e30pO3ZhciBmQ3Q9bCgoKT0+e30pO3ZhciBwQ3Q9bCgoKT0+e30pO3ZhciBoQ3Q9bCgoKT0+e30pO3ZhciBXdGU9e307cWUoV3RlLHtJQ25hbWVEZXNjcmlwdG9yOigpPT5NOGV9KTt2YXIgbUN0PWwoKCk9Pnt3OGUoKTtvQ3QoKTtuQ3QoKTtzQ3QoKTtsQ3QoKTtjQ3QoKTtkQ3QoKTt1Q3QoKTtmQ3QoKTtwQ3QoKTtoQ3QoKX0pO3ZhciBrOGU9bCgoKT0+e3F0ZSgpfSk7dmFyIGdDdD1sKCgpPT57azhlKCl9KTt2YXIgUzhlPXt9O3ZhciB4Q3Q9bCgoKT0+e2dDdCgpO2s4ZSgpfSk7dmFyIHo4ZT17fTt2YXIgYkN0PWwoKCk9Pnt9KTt2YXIgdkN0PWwoKCk9Pnt9KTt2YXIgeUN0PWwoKCk9Pnt9KTt2YXIgd0N0PWwoKCk9Pnt9KTt2YXIgQzhlPXt9O3ZhciBNQ3Q9bCgoKT0+e3ZDdCgpO3lDdCgpO3dDdCgpfSk7dmFyIGtDdD1sKCgpPT57fSk7dmFyIF84ZT17fTtxZShfOGUse2J1c2luZXNzOigpPT5VdGUsY29kZTooKT0+ZzhlLGNvbnRhaW5lcjooKT0+eDhlLGNvbnRlbnQ6KCk9PnY4ZSxkYXRhYmFzZTooKT0+cDhlLGZpbmFuY2U6KCk9PnU4ZSxnZW5lcmFsOigpPT55OGUsbmV0d29yazooKT0+V3RlLHNhYXM6KCk9PlM4ZSxzdG9yYWdlOigpPT56OGUsd2Vic2l0ZTooKT0+QzhlfSk7dmFyIF8yPWwoKCk9PnttOGUoKTtaenQoKTtLenQoKTtoOGUoKTtWdGUoKTt0Q3QoKTtpQ3QoKTttQ3QoKTt4Q3QoKTtiQ3QoKTtNQ3QoKTtrQ3QoKX0pO3ZhciBXbD1sKCgpPT57RHp0KCk7YzhlKCk7XzIoKX0pO3ZhciBHdGU9bCgoKT0+e1dsKCl9KTt2YXIgSjAsTGI9bCgoKT0+e1dsKCk7SjA9Y2xhc3N7YXBwZW5kVG9Eb20oKXshdGhpcy5lbGVtZW50UmVmLnBhcmVudEVsZW1lbnQmJiF0aGlzLmVsZW1lbnRSZWYucGFyZW50Tm9kZSYmZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImhlYWQiKVswXS5hcHBlbmRDaGlsZCh0aGlzLmVsZW1lbnRSZWYpfXJlbW92ZUZyb21Eb20oKXt0aGlzLmVsZW1lbnRSZWYucGFyZW50RWxlbWVudD90aGlzLmVsZW1lbnRSZWYucGFyZW50RWxlbWVudC5yZW1vdmVDaGlsZCh0aGlzLmVsZW1lbnRSZWYpOnRoaXMuZWxlbWVudFJlZi5wYXJlbnROb2RlJiZ0aGlzLmVsZW1lbnRSZWYucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCh0aGlzLmVsZW1lbnRSZWYpfX19KTt2YXIgQmQsWXRlPWwoKCk9PntXbCgpO0d0ZSgpO0xiKCk7QmQ9Y2xhc3MgZSBleHRlbmRzIEowe3N0YXRpYyBjcmVhdGVDb21wYW55SnNvbkxkKHQpe2xldCByPXsiQGNvbnRleHQiOiJodHRwczovL3NjaGVtYS5vcmciLCJAdHlwZSI6IkNvcnBvcmF0aW9uIixuYW1lOnQubmFtZSxhbHRlcm5hdGVOYW1lOnQubmFtZS5yZXBsYWNlKCIgR21iSCIsIiIpLHVybDp0LmNvbnRhY3Qud2Vic2l0ZSxsb2dvOnQuY29udGFjdC5sb2dvVXJsLGNvbnRhY3RQb2ludDp7IkB0eXBlIjoiQ29udGFjdFBvaW50Iix0ZWxlcGhvbmU6dC5jb250YWN0LnBob25lLGNvbnRhY3RUeXBlOiJjdXN0b21lciBzZXJ2aWNlIixhcmVhU2VydmVkOiJERSIsYXZhaWxhYmxlTGFuZ3VhZ2U6WyJlbiIsIkdlcm1hbiJdfSxzYW1lQXM6W119O3JldHVybiB0LmNvbnRhY3QuZmFjZWJvb2tVcmwmJnIuc2FtZUFzLnB1c2godC5jb250YWN0LmZhY2Vib29rVXJsKSx0LmNvbnRhY3QudHdpdHRlclVybCYmci5zYW1lQXMucHVzaCh0LmNvbnRhY3QudHdpdHRlclVybCksbmV3IGUocil9c3RhdGljIGNyZWF0ZU5ld3NBcnRpY2xlSnNvbkxkKHQpe2xldCByPXsiQGNvbnRleHQiOiJodHRwczovL3NjaGVtYS5vcmciLCJAdHlwZSI6Ik5ld3NBcnRpY2xlIixtYWluRW50aXR5T2ZQYWdlOnsiQHR5cGUiOiJXZWJQYWdlIiwiQGlkIjp3aW5kb3cubG9jYXRpb24uaHJlZn0saGVhZGxpbmU6IkFydGljbGUgaGVhZGxpbmUiLGltYWdlOlt0LmZlYXR1cmVkSW1hZ2VVcmxdLGRhdGVQdWJsaXNoZWQ6bmV3IERhdGUodC50aW1lc3RhbXApLnRvSVNPU3RyaW5nKCksZGF0ZU1vZGlmaWVkOm5ldyBEYXRlKHQudGltZXN0YW1wKS50b0lTT1N0cmluZygpLGF1dGhvcjp7IkB0eXBlIjoiUGVyc29uIixuYW1lOmAke3QuYXV0aG9yLmZpcnN0TmFtZX0gJHt0LmF1dGhvci5zdXJOYW1lfWB9LHB1Ymxpc2hlcjp7IkB0eXBlIjoiT3JnYW5pemF0aW9uIixuYW1lOnQuYXV0aG9yLnN1ck5hbWUsbG9nbzp7IkB0eXBlIjoiSW1hZ2VPYmplY3QiLHVybDp0LmF1dGhvci5zdXJOYW1lfX0sZGVzY3JpcHRpb246dC5hdXRob3IuZmlyc3ROYW1lfTtyZXR1cm4gbmV3IGUocil9c3RhdGljIGNyZWF0ZVByb2R1Y3RKc29uTGQodCxyKXtsZXQgYT17IkBjb250ZXh0IjoiaHR0cHM6Ly9zY2hlbWEub3JnIiwiQHR5cGUiOiJTb2Z0d2FyZUFwcGxpY2F0aW9uIixuYW1lOnQubmFtZSxkZXNjcmlwdGlvbjp0LmRlc2NyaXB0aW9uLG9wZXJhdGluZ1N5c3RlbTp0Lm9zLGFwcGxpY2F0aW9uQ2F0ZWdvcnk6dC5jYXRlZ29yeSxvZmZlcnM6eyJAdHlwZSI6Ik9mZmVyIixuYW1lOiJVc2VyLWJhc2VkIFBsYW4iLHByaWNlU3BlY2lmaWNhdGlvbjp7IkB0eXBlIjoiUHJvcGVydHlWYWx1ZVNwZWNpZmljYXRpb24iLHZhbHVlTmFtZToiTnVtYmVyIG9mIFVzZXJzIix2YWx1ZVJlcXVpcmVkOiEwLHByaWNlOiI0Ljk5IixwcmljZUN1cnJlbmN5OiJFVVIifX0scHVibGlzaGVyOnRoaXMuY3JlYXRlQ29tcGFueUpzb25MZChyKS5lbGVtZW50UmVmLnRleHRDb250ZW50LHNjcmVlbnNob3Q6Imh0dHBzOi8vd3d3LnNvY2lhbC5pby9zY3JlZW5zaG90LnBuZyIsdXJsOiJodHRwczovL3d3dy5zb2NpYWwuaW8vIn07cmV0dXJuIG5ldyBlKGEpfWNvbnN0cnVjdG9yKHQpe3N1cGVyKCk7bGV0IHI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7ci50eXBlPSJhcHBsaWNhdGlvbi9sZCtqc29uIixyLnRleHQ9SlNPTi5zdHJpbmdpZnkodCksdGhpcy5lbGVtZW50UmVmPXJ9fX0pO3ZhciBpbyxadGU9bCgoKT0+e1dsKCk7TGIoKTtpbz1jbGFzcyBlIGV4dGVuZHMgSjB7c3RhdGljIGNyZWF0ZU5ld3NBcnRpY2xlT2dUYWdzKHQpe2xldCByPVtdO3JldHVybiByLnB1c2gobmV3IGUoIm9nOnVybCIsdC51cmwpKSxyLnB1c2gobmV3IGUoIm9nOnRpdGxlIix0LnRpdGxlKSksci5wdXNoKG5ldyBlKCJvZzpkZXNjcmlwdGlvbiIsdC5jb250ZW50KSksci5wdXNoKG5ldyBlKCJvZzppbWFnZSIsdC5mZWF0dXJlZEltYWdlVXJsKSkscn1zdGF0aWMgY3JlYXRlUHJvZHVjdE9nVGFncyh0KXtsZXQgcj1bXTtyZXR1cm4gci5wdXNoKG5ldyBlKCJvZzp1cmwiLGdsb2JhbFRoaXMubG9jYXRpb24uaHJlZikpLHIucHVzaChuZXcgZSgib2c6dGl0bGUiLGAke3QubmFtZX0gLSAke3Quc2xvZ2FufWApKSxyLnB1c2gobmV3IGUoIm9nOnNpdGVfbmFtZSIsdC5uYW1lKSksci5wdXNoKG5ldyBlKCJvZzpkZXNjcmlwdGlvbiIsdC5kZXNjcmlwdGlvbikpLHIucHVzaChuZXcgZSgib2c6aW1hZ2UiLHQubG9nb0xpbmspKSxyfWNvbnN0cnVjdG9yKHQscil7c3VwZXIoKTtsZXQgYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJtZXRhIik7YS5zZXRBdHRyaWJ1dGUoInByb3BlcnR5Iix0KSxhLmNvbnRlbnQ9cix0aGlzLmVsZW1lbnRSZWY9YX19fSk7dmFyICRtLFQ4ZT1sKCgpPT57TGIoKTtZdGUoKTtadGUoKTtMOGUoKTtXbCgpOyRtPWNsYXNze3NldCB0aXRsZSh0KXt0aGlzLnRpdGxlU3RvcmU9dCx0aGlzLnN0YXRlPT09ImVuYWJsZWQiJiYoZG9jdW1lbnQudGl0bGU9dGhpcy50aXRsZVN0b3JlKX1nZXQgdGl0bGUoKXtyZXR1cm4gdGhpcy50aXRsZVN0b3JlfWNvbnN0cnVjdG9yKHQscil7dGhpcy50YWdzPVtdLHRoaXMuc3RhdGU9ImRpc2FibGVkIix0aGlzLnRhZ01hbmFnZXJSZWY9dH1hZGRUYWcodCl7aWYodCBpbnN0YW5jZW9mIEFycmF5KWZvcihsZXQgciBvZiB0KXRoaXMuYWRkVGFnKHIpO2Vsc2UgdGhpcy50YWdzLnB1c2godCksdGhpcy5zdGF0ZT09PSJlbmFibGVkIiYmdC5hcHBlbmRUb0RvbSgpfWFzeW5jIGFkZENvbXBhbnlJbmZvKHQpe3RoaXMuYWRkVGFnKEJkLmNyZWF0ZUNvbXBhbnlKc29uTGQodCkpLHRoaXMuYWRkVGFnKG5ldyBpbygib2c6dHlwZSIsImJ1c2luZXNzLmJ1c2luZXNzIikpLHRoaXMuYWRkVGFnKG5ldyBpbygib2c6dGl0bGUiLHQubmFtZSkpLHRoaXMuYWRkVGFnKG5ldyBpbygib2c6dXJsIix0LmNvbnRhY3Qud2Vic2l0ZSkpLHRoaXMuYWRkVGFnKG5ldyBpbygib2c6aW1hZ2UiLHQuY29udGFjdC5sb2dvVXJsKSksdGhpcy5hZGRUYWcobmV3IGlvKCJidXNpbmVzczpjb250YWN0X2RhdGE6c3RyZWV0X2FkZHJlc3MiLGAke3QuY29udGFjdC5hZGRyZXNzLnN0cmVldE5hbWV9ICR7dC5jb250YWN0LmFkZHJlc3MuaG91c2VOdW1iZXJ9YCkpLHRoaXMuYWRkVGFnKG5ldyBpbygiYnVzaW5lc3M6Y29udGFjdF9kYXRhOmxvY2FsaXR5Iix0LmNvbnRhY3QuYWRkcmVzcy5wb3N0YWxDb2RlKSksdGhpcy5hZGRUYWcobmV3IGlvKCJidXNpbmVzczpjb250YWN0X2RhdGE6cmVnaW9uIix0LmNvbnRhY3QuYWRkcmVzcy5jaXR5KSksdGhpcy5hZGRUYWcobmV3IGlvKCJidXNpbmVzczpjb250YWN0X2RhdGE6cG9zdGFsX2NvZGUiLHQuY29udGFjdC5hZGRyZXNzLnBvc3RhbENvZGUpKSx0aGlzLmFkZFRhZyhuZXcgaW8oImJ1c2luZXNzOmNvbnRhY3RfZGF0YTpjb3VudHJ5X25hbWUiLHQuY29udGFjdC5hZGRyZXNzLmNvdW50cnkpKX1hZGROZXdzQXJ0aWNsZUluZm8odCl7dGhpcy5hZGRUYWcoQmQuY3JlYXRlTmV3c0FydGljbGVKc29uTGQodCkpLHRoaXMuYWRkVGFnKGlvLmNyZWF0ZU5ld3NBcnRpY2xlT2dUYWdzKHQpKX1hZGRQcm9kdWN0SW5mbyh0LHIpe3RoaXMuYWRkVGFnKEJkLmNyZWF0ZVByb2R1Y3RKc29uTGQodCxyKSksdGhpcy5hZGRUYWcoaW8uY3JlYXRlUHJvZHVjdE9nVGFncyh0KSl9YXN5bmMgZW5hYmxlKCl7dGhpcy50aXRsZSYmKGRvY3VtZW50LnRpdGxlPXRoaXMudGl0bGUpO2ZvcihsZXQgdCBvZiB0aGlzLnRhZ3MpdC5hcHBlbmRUb0RvbSgpO3RoaXMuc3RhdGU9ImVuYWJsZWQifWFzeW5jIGRpc2FibGUoKXtmb3IobGV0IHQgb2YgdGhpcy50YWdzKXQucmVtb3ZlRnJvbURvbSgpO3RoaXMuc3RhdGU9ImRpc2FibGVkIn19fSk7dmFyIFNuLEQ4ZT1sKCgpPT57TGIoKTtTbj1jbGFzcyBleHRlbmRzIEowe2NvbnN0cnVjdG9yKHQscil7c3VwZXIoKTtsZXQgYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJtZXRhIik7YS5uYW1lPXQsYS5jb250ZW50PXIsdGhpcy5lbGVtZW50UmVmPWF9fX0pO3ZhciBYdGUsTDhlPWwoKCk9PntUOGUoKTtXbCgpO0d0ZSgpO0Q4ZSgpO1l0ZSgpO1p0ZSgpO1h0ZT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuZ2xvYmFsTGV2ZWw9bmV3ICRtKHRoaXMsImdsb2JhbCIpLHRoaXMuYmFzZUxldmVsPW5ldyAkbSh0aGlzLCJiYXNlIil9YXN5bmMgc2V0dXAodCl7c3dpdGNoKHRoaXMuZ2xvYmFsTGV2ZWwuYWRkVGFnKG5ldyBTbigiZ29vZ2xlIiwibm90cmFuc2xhdGUiKSksdGhpcy5nbG9iYWxMZXZlbC5hZGRUYWcobmV3IFNuKCJyZXZpc2l0LWFmdGVyIiwiMSBkYXlzIikpLHQudHdpdHRlckhhbmRsZSYmKHRoaXMuZ2xvYmFsTGV2ZWwuYWRkVGFnKG5ldyBTbigidHdpdHRlcjpjYXJkIiwic3VtbWFyeV9sYXJnZV9pbWFnZSIpKSx0aGlzLmdsb2JhbExldmVsLmFkZFRhZyhuZXcgU24oInR3aXR0ZXI6c2l0ZSIsdC50d2l0dGVySGFuZGxlKSksdGhpcy5nbG9iYWxMZXZlbC5hZGRUYWcobmV3IFNuKCJ0d2l0dGVyOmNyZWF0b3IiLHQudHdpdHRlckhhbmRsZSkpKSx0aGlzLmJhc2VMZXZlbC50aXRsZT10LnRpdGxlLHQuZGVzY3JpcHRpb24mJnRoaXMuYmFzZUxldmVsLmFkZFRhZyhuZXcgU24oImRlc2NyaXB0aW9uIix0LmRlc2NyaXB0aW9uKSksdC5jYW5vbmljYWxEb21haW4mJnRoaXMuYmFzZUxldmVsLmFkZFRhZyhuZXcgU24oImNhbm9uaWNhbCIsdC5jYW5vbmljYWxEb21haW4pKSwhMCl7Y2FzZSh0LmxkQ29tcGFueSYmIXQubGRQcm9kdWN0KTp0aGlzLmJhc2VMZXZlbC5hZGRDb21wYW55SW5mbyh0LmxkQ29tcGFueSk7YnJlYWs7Y2FzZSEhdC5sZFByb2R1Y3Q6dGhpcy5iYXNlTGV2ZWwuYWRkUHJvZHVjdEluZm8odC5sZFByb2R1Y3QsdC5sZENvbXBhbnkpO2JyZWFrfWF3YWl0IHRoaXMuZ2xvYmFsTGV2ZWwuZW5hYmxlKCksdGhpcy5hY3RpdmVMZXZlbD10aGlzLmJhc2VMZXZlbCxhd2FpdCB0aGlzLmFjdGl2ZUxldmVsLmVuYWJsZSgpfWFzeW5jIHNldFN1YlBhZ2VMZXZlbCh0KXtsZXQgcj1uZXcgJG0odGhpcywic3VicGFnZSIpO3JldHVybiByLnRpdGxlPXQudGl0bGUsdC5kZXNjcmlwdGlvbiYmci5hZGRUYWcobmV3IFNuKCJkZXNjcmlwdGlvbiIsdC5kZXNjcmlwdGlvbikpLGF3YWl0IHRoaXMuYWN0aXZlTGV2ZWwuZGlzYWJsZSgpLHRoaXMuYWN0aXZlTGV2ZWw9cixhd2FpdCB0aGlzLmFjdGl2ZUxldmVsLmVuYWJsZSgpLHJ9YXN5bmMgcmV2ZXJ0VG9CYXNlTGV2ZWwoKXt0aGlzLmFjdGl2ZUxldmVsIT09dGhpcy5iYXNlTGV2ZWwmJihhd2FpdCB0aGlzLmFjdGl2ZUxldmVsLmRpc2FibGUoKSx0aGlzLmFjdGl2ZUxldmVsPXRoaXMuYmFzZUxldmVsLGF3YWl0IHRoaXMuYWN0aXZlTGV2ZWwuZW5hYmxlKCkpfX19KTt2YXIgRGIsU0N0PWwoKCk9PntXbCgpO0d0ZSgpO0w4ZSgpO1Q4ZSgpO0RiPWNsYXNze2NvbnN0cnVjdG9yKHQpe3RoaXMudGFnTWFuYWdlcj1uZXcgWHRlLHRoaXMucmVhZHlEZWZlcnJlZD1SZC5kZWZlcigpLHRoaXMucmVhZHlGb3JTbWFydHNzckRlZmVycmVkPVJkLmRlZmVyKCksdGhpcy5yZWFkeVByb21pc2U9dGhpcy5yZWFkeURlZmVycmVkLnByb21pc2UsdGhpcy5yZWFkeUZvclNtYXJ0c3NyUHJvbWlzZT10aGlzLnJlYWR5Rm9yU21hcnRzc3JEZWZlcnJlZC5wcm9taXNlLHRoaXMub3B0aW9ucz10LHRoaXMuc2V0dXAoKS50aGVuKCgpPT57dGhpcy5yZWFkeURlZmVycmVkLnJlc29sdmUoKSx0aGlzLm9wdGlvbnMuc21hcnRzc3JXYWl0Rm9yUmVhZHlTaWduYWx8fHRoaXMucmVhZHlGb3JTbWFydHNzckRlZmVycmVkLnJlc29sdmUoKX0pfWFzeW5jIHNldHVwKHQpe3QmJih0aGlzLm9wdGlvbnM9dCksYXdhaXQgdGhpcy50YWdNYW5hZ2VyLnNldHVwKHRoaXMub3B0aW9ucy5tZXRhT2JqZWN0KX1yZXZlcnRUb0Jhc2VMZXZlbCgpe3RoaXMudGFnTWFuYWdlci5yZXZlcnRUb0Jhc2VMZXZlbCgpfWFzeW5jIHNldFN1YkxldmVsKHQpe3JldHVybiBhd2FpdCB0aGlzLnRhZ01hbmFnZXIuc2V0U3ViUGFnZUxldmVsKHQpfWZsYXNoVGl0bGUodCl7fWluZm9ybVJlYWR5Rm9yU21hcnRzc3IoKXt0aGlzLm9wdGlvbnMuc21hcnRzc3JXYWl0Rm9yUmVhZHlTaWduYWx8fGNvbnNvbGUuZXJyb3IoIllvdSBoYXZlIG5vdCBpbmRpY2F0ZWQgdGhhdCB5b3UgaW5mb3JtIHNtYXJ0c3NyIGJ5IGEgZGVkaWNhdGVkIHNpZ25hbCEgUGxlYXNlIGNvbnNpZGVyIGRvaW5nIHNvISIpLHRoaXMucmVhZHlGb3JTbWFydHNzckRlZmVycmVkLnJlc29sdmUoKX19fSk7dmFyIEE4ZSx6Q3Q9bCgoKT0+e1dsKCk7QThlPWNsYXNze319KTt2YXIgRThlPXt9O3FlKEU4ZSx7SnNvbkxkVGFnOigpPT5CZCxNZXRhVGFnOigpPT5TbixPcGVuZ3JhcGhUYWc6KCk9PmlvLFRpdGxlOigpPT5BOGUsV2ViU2V0dXA6KCk9PkRifSk7dmFyIFF0ZT1sKCgpPT57U0N0KCk7RDhlKCk7WnRlKCk7WXRlKCk7ekN0KCl9KTtmdW5jdGlvbiBDQ3QoZSx0LHIpe3JldHVybiBNYXRoLm1heChlLE1hdGgubWluKHQscikpfWZ1bmN0aW9uIFAxYShlLHQscil7cmV0dXJuKDEtcikqZStyKnR9ZnVuY3Rpb24gSTFhKGUsdCxyLGEpe3JldHVybiBQMWEoZSx0LDEtTWF0aC5leHAoLXIqYSkpfWZ1bmN0aW9uIE4xYShlLHQpe3JldHVybihlJXQrdCkldH1mdW5jdGlvbiBPMWEoZSx0KXtsZXQgcjtyZXR1cm4gZnVuY3Rpb24oLi4uYSl7bGV0IGk9dGhpcztjbGVhclRpbWVvdXQocikscj1zZXRUaW1lb3V0KCgpPT57cj12b2lkIDAsZS5hcHBseShpLGEpfSx0KX19dmFyICQxYSxGMWEsUjFhLF9DdCxUQ3QsZTQsQjFhLExDdCxBYixEQ3Q9bCgoKT0+eyQxYT0iMS4zLjE3IjtGMWE9Y2xhc3N7aXNSdW5uaW5nPSExO3ZhbHVlPTA7ZnJvbT0wO3RvPTA7Y3VycmVudFRpbWU9MDtsZXJwO2R1cmF0aW9uO2Vhc2luZztvblVwZGF0ZTthZHZhbmNlKGUpe2lmKCF0aGlzLmlzUnVubmluZylyZXR1cm47bGV0IHQ9ITE7aWYodGhpcy5kdXJhdGlvbiYmdGhpcy5lYXNpbmcpe3RoaXMuY3VycmVudFRpbWUrPWU7bGV0IHI9Q0N0KDAsdGhpcy5jdXJyZW50VGltZS90aGlzLmR1cmF0aW9uLDEpO3Q9cj49MTtsZXQgYT10PzE6dGhpcy5lYXNpbmcocik7dGhpcy52YWx1ZT10aGlzLmZyb20rKHRoaXMudG8tdGhpcy5mcm9tKSphfWVsc2UgdGhpcy5sZXJwPyh0aGlzLnZhbHVlPUkxYSh0aGlzLnZhbHVlLHRoaXMudG8sdGhpcy5sZXJwKjYwLGUpLE1hdGgucm91bmQodGhpcy52YWx1ZSk9PT10aGlzLnRvJiYodGhpcy52YWx1ZT10aGlzLnRvLHQ9ITApKToodGhpcy52YWx1ZT10aGlzLnRvLHQ9ITApO3QmJnRoaXMuc3RvcCgpLHRoaXMub25VcGRhdGU/Lih0aGlzLnZhbHVlLHQpfXN0b3AoKXt0aGlzLmlzUnVubmluZz0hMX1mcm9tVG8oZSx0LHtsZXJwOnIsZHVyYXRpb246YSxlYXNpbmc6aSxvblN0YXJ0Om8sb25VcGRhdGU6bn0pe3RoaXMuZnJvbT10aGlzLnZhbHVlPWUsdGhpcy50bz10LHRoaXMubGVycD1yLHRoaXMuZHVyYXRpb249YSx0aGlzLmVhc2luZz1pLHRoaXMuY3VycmVudFRpbWU9MCx0aGlzLmlzUnVubmluZz0hMCxvPy4oKSx0aGlzLm9uVXBkYXRlPW59fTtSMWE9Y2xhc3N7Y29uc3RydWN0b3IoZSx0LHthdXRvUmVzaXplOnI9ITAsZGVib3VuY2U6YT0yNTB9PXt9KXt0aGlzLndyYXBwZXI9ZSx0aGlzLmNvbnRlbnQ9dCxyJiYodGhpcy5kZWJvdW5jZWRSZXNpemU9TzFhKHRoaXMucmVzaXplLGEpLHRoaXMud3JhcHBlciBpbnN0YW5jZW9mIFdpbmRvdz93aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicmVzaXplIix0aGlzLmRlYm91bmNlZFJlc2l6ZSwhMSk6KHRoaXMud3JhcHBlclJlc2l6ZU9ic2VydmVyPW5ldyBSZXNpemVPYnNlcnZlcih0aGlzLmRlYm91bmNlZFJlc2l6ZSksdGhpcy53cmFwcGVyUmVzaXplT2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzLndyYXBwZXIpKSx0aGlzLmNvbnRlbnRSZXNpemVPYnNlcnZlcj1uZXcgUmVzaXplT2JzZXJ2ZXIodGhpcy5kZWJvdW5jZWRSZXNpemUpLHRoaXMuY29udGVudFJlc2l6ZU9ic2VydmVyLm9ic2VydmUodGhpcy5jb250ZW50KSksdGhpcy5yZXNpemUoKX13aWR0aD0wO2hlaWdodD0wO3Njcm9sbEhlaWdodD0wO3Njcm9sbFdpZHRoPTA7ZGVib3VuY2VkUmVzaXplO3dyYXBwZXJSZXNpemVPYnNlcnZlcjtjb250ZW50UmVzaXplT2JzZXJ2ZXI7ZGVzdHJveSgpe3RoaXMud3JhcHBlclJlc2l6ZU9ic2VydmVyPy5kaXNjb25uZWN0KCksdGhpcy5jb250ZW50UmVzaXplT2JzZXJ2ZXI/LmRpc2Nvbm5lY3QoKSx0aGlzLndyYXBwZXI9PT13aW5kb3cmJnRoaXMuZGVib3VuY2VkUmVzaXplJiZ3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigicmVzaXplIix0aGlzLmRlYm91bmNlZFJlc2l6ZSwhMSl9cmVzaXplPSgpPT57dGhpcy5vbldyYXBwZXJSZXNpemUoKSx0aGlzLm9uQ29udGVudFJlc2l6ZSgpfTtvbldyYXBwZXJSZXNpemU9KCk9Pnt0aGlzLndyYXBwZXIgaW5zdGFuY2VvZiBXaW5kb3c/KHRoaXMud2lkdGg9d2luZG93LmlubmVyV2lkdGgsdGhpcy5oZWlnaHQ9d2luZG93LmlubmVySGVpZ2h0KToodGhpcy53aWR0aD10aGlzLndyYXBwZXIuY2xpZW50V2lkdGgsdGhpcy5oZWlnaHQ9dGhpcy53cmFwcGVyLmNsaWVudEhlaWdodCl9O29uQ29udGVudFJlc2l6ZT0oKT0+e3RoaXMud3JhcHBlciBpbnN0YW5jZW9mIFdpbmRvdz8odGhpcy5zY3JvbGxIZWlnaHQ9dGhpcy5jb250ZW50LnNjcm9sbEhlaWdodCx0aGlzLnNjcm9sbFdpZHRoPXRoaXMuY29udGVudC5zY3JvbGxXaWR0aCk6KHRoaXMuc2Nyb2xsSGVpZ2h0PXRoaXMud3JhcHBlci5zY3JvbGxIZWlnaHQsdGhpcy5zY3JvbGxXaWR0aD10aGlzLndyYXBwZXIuc2Nyb2xsV2lkdGgpfTtnZXQgbGltaXQoKXtyZXR1cm57eDp0aGlzLnNjcm9sbFdpZHRoLXRoaXMud2lkdGgseTp0aGlzLnNjcm9sbEhlaWdodC10aGlzLmhlaWdodH19fSxfQ3Q9Y2xhc3N7ZXZlbnRzPXt9O2VtaXQoZSwuLi50KXtsZXQgcj10aGlzLmV2ZW50c1tlXXx8W107Zm9yKGxldCBhPTAsaT1yLmxlbmd0aDthPGk7YSsrKXJbYV0/LiguLi50KX1vbihlLHQpe3JldHVybiB0aGlzLmV2ZW50c1tlXT8ucHVzaCh0KXx8KHRoaXMuZXZlbnRzW2VdPVt0XSksKCk9Pnt0aGlzLmV2ZW50c1tlXT10aGlzLmV2ZW50c1tlXT8uZmlsdGVyKHI9PnQhPT1yKX19b2ZmKGUsdCl7dGhpcy5ldmVudHNbZV09dGhpcy5ldmVudHNbZV0/LmZpbHRlcihyPT50IT09cil9ZGVzdHJveSgpe3RoaXMuZXZlbnRzPXt9fX0sVEN0PTEwMC82LGU0PXtwYXNzaXZlOiExfSxCMWE9Y2xhc3N7Y29uc3RydWN0b3IoZSx0PXt3aGVlbE11bHRpcGxpZXI6MSx0b3VjaE11bHRpcGxpZXI6MX0pe3RoaXMuZWxlbWVudD1lLHRoaXMub3B0aW9ucz10LHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLHRoaXMub25XaW5kb3dSZXNpemUsITEpLHRoaXMub25XaW5kb3dSZXNpemUoKSx0aGlzLmVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigid2hlZWwiLHRoaXMub25XaGVlbCxlNCksdGhpcy5lbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLHRoaXMub25Ub3VjaFN0YXJ0LGU0KSx0aGlzLmVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIix0aGlzLm9uVG91Y2hNb3ZlLGU0KSx0aGlzLmVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hlbmQiLHRoaXMub25Ub3VjaEVuZCxlNCl9dG91Y2hTdGFydD17eDowLHk6MH07bGFzdERlbHRhPXt4OjAseTowfTt3aW5kb3c9e3dpZHRoOjAsaGVpZ2h0OjB9O2VtaXR0ZXI9bmV3IF9DdDtvbihlLHQpe3JldHVybiB0aGlzLmVtaXR0ZXIub24oZSx0KX1kZXN0cm95KCl7dGhpcy5lbWl0dGVyLmRlc3Ryb3koKSx3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigicmVzaXplIix0aGlzLm9uV2luZG93UmVzaXplLCExKSx0aGlzLmVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigid2hlZWwiLHRoaXMub25XaGVlbCxlNCksdGhpcy5lbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLHRoaXMub25Ub3VjaFN0YXJ0LGU0KSx0aGlzLmVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIix0aGlzLm9uVG91Y2hNb3ZlLGU0KSx0aGlzLmVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigidG91Y2hlbmQiLHRoaXMub25Ub3VjaEVuZCxlNCl9b25Ub3VjaFN0YXJ0PWU9PntsZXR7Y2xpZW50WDp0LGNsaWVudFk6cn09ZS50YXJnZXRUb3VjaGVzP2UudGFyZ2V0VG91Y2hlc1swXTplO3RoaXMudG91Y2hTdGFydC54PXQsdGhpcy50b3VjaFN0YXJ0Lnk9cix0aGlzLmxhc3REZWx0YT17eDowLHk6MH0sdGhpcy5lbWl0dGVyLmVtaXQoInNjcm9sbCIse2RlbHRhWDowLGRlbHRhWTowLGV2ZW50OmV9KX07b25Ub3VjaE1vdmU9ZT0+e2xldHtjbGllbnRYOnQsY2xpZW50WTpyfT1lLnRhcmdldFRvdWNoZXM/ZS50YXJnZXRUb3VjaGVzWzBdOmUsYT0tKHQtdGhpcy50b3VjaFN0YXJ0LngpKnRoaXMub3B0aW9ucy50b3VjaE11bHRpcGxpZXIsaT0tKHItdGhpcy50b3VjaFN0YXJ0LnkpKnRoaXMub3B0aW9ucy50b3VjaE11bHRpcGxpZXI7dGhpcy50b3VjaFN0YXJ0Lng9dCx0aGlzLnRvdWNoU3RhcnQueT1yLHRoaXMubGFzdERlbHRhPXt4OmEseTppfSx0aGlzLmVtaXR0ZXIuZW1pdCgic2Nyb2xsIix7ZGVsdGFYOmEsZGVsdGFZOmksZXZlbnQ6ZX0pfTtvblRvdWNoRW5kPWU9Pnt0aGlzLmVtaXR0ZXIuZW1pdCgic2Nyb2xsIix7ZGVsdGFYOnRoaXMubGFzdERlbHRhLngsZGVsdGFZOnRoaXMubGFzdERlbHRhLnksZXZlbnQ6ZX0pfTtvbldoZWVsPWU9PntsZXR7ZGVsdGFYOnQsZGVsdGFZOnIsZGVsdGFNb2RlOmF9PWUsaT1hPT09MT9UQ3Q6YT09PTI/dGhpcy53aW5kb3cud2lkdGg6MSxvPWE9PT0xP1RDdDphPT09Mj90aGlzLndpbmRvdy5oZWlnaHQ6MTt0Kj1pLHIqPW8sdCo9dGhpcy5vcHRpb25zLndoZWVsTXVsdGlwbGllcixyKj10aGlzLm9wdGlvbnMud2hlZWxNdWx0aXBsaWVyLHRoaXMuZW1pdHRlci5lbWl0KCJzY3JvbGwiLHtkZWx0YVg6dCxkZWx0YVk6cixldmVudDplfSl9O29uV2luZG93UmVzaXplPSgpPT57dGhpcy53aW5kb3c9e3dpZHRoOndpbmRvdy5pbm5lcldpZHRoLGhlaWdodDp3aW5kb3cuaW5uZXJIZWlnaHR9fX0sTEN0PWU9Pk1hdGgubWluKDEsMS4wMDEtTWF0aC5wb3coMiwtMTAqZSkpLEFiPWNsYXNze19pc1Njcm9sbGluZz0hMTtfaXNTdG9wcGVkPSExO19pc0xvY2tlZD0hMTtfcHJldmVudE5leHROYXRpdmVTY3JvbGxFdmVudD0hMTtfcmVzZXRWZWxvY2l0eVRpbWVvdXQ9bnVsbDtfcmFmSWQ9bnVsbDtpc1RvdWNoaW5nO3RpbWU9MDt1c2VyRGF0YT17fTtsYXN0VmVsb2NpdHk9MDt2ZWxvY2l0eT0wO2RpcmVjdGlvbj0wO29wdGlvbnM7dGFyZ2V0U2Nyb2xsO2FuaW1hdGVkU2Nyb2xsO2FuaW1hdGU9bmV3IEYxYTtlbWl0dGVyPW5ldyBfQ3Q7ZGltZW5zaW9uczt2aXJ0dWFsU2Nyb2xsO2NvbnN0cnVjdG9yKHt3cmFwcGVyOmU9d2luZG93LGNvbnRlbnQ6dD1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsZXZlbnRzVGFyZ2V0OnI9ZSxzbW9vdGhXaGVlbDphPSEwLHN5bmNUb3VjaDppPSExLHN5bmNUb3VjaExlcnA6bz0uMDc1LHRvdWNoSW5lcnRpYUV4cG9uZW50Om49MS43LGR1cmF0aW9uOnMsZWFzaW5nOmMsbGVycDpkPS4xLGluZmluaXRlOmY9ITEsb3JpZW50YXRpb246dT0idmVydGljYWwiLGdlc3R1cmVPcmllbnRhdGlvbjpwPXU9PT0iaG9yaXpvbnRhbCI/ImJvdGgiOiJ2ZXJ0aWNhbCIsdG91Y2hNdWx0aXBsaWVyOmg9MSx3aGVlbE11bHRpcGxpZXI6Yj0xLGF1dG9SZXNpemU6eD0hMCxwcmV2ZW50OmcsdmlydHVhbFNjcm9sbDp2LG92ZXJzY3JvbGw6dz0hMCxhdXRvUmFmOk09ITEsYW5jaG9yczpGPSExLGF1dG9Ub2dnbGU6Qz0hMSxhbGxvd05lc3RlZFNjcm9sbDprPSExLF9fZXhwZXJpbWVudGFsX19uYWl2ZURpbWVuc2lvbnM6Tj0hMSxuYWl2ZURpbWVuc2lvbnM6JD1OLHN0b3BJbmVydGlhT25OYXZpZ2F0ZTpJPSExfT17fSl7d2luZG93LmxlbmlzVmVyc2lvbj0kMWEsKCFlfHxlPT09ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KSYmKGU9d2luZG93KSx0eXBlb2Ygcz09Im51bWJlciImJnR5cGVvZiBjIT0iZnVuY3Rpb24iP2M9TEN0OnR5cGVvZiBjPT0iZnVuY3Rpb24iJiZ0eXBlb2YgcyE9Im51bWJlciImJihzPTEpLHRoaXMub3B0aW9ucz17d3JhcHBlcjplLGNvbnRlbnQ6dCxldmVudHNUYXJnZXQ6cixzbW9vdGhXaGVlbDphLHN5bmNUb3VjaDppLHN5bmNUb3VjaExlcnA6byx0b3VjaEluZXJ0aWFFeHBvbmVudDpuLGR1cmF0aW9uOnMsZWFzaW5nOmMsbGVycDpkLGluZmluaXRlOmYsZ2VzdHVyZU9yaWVudGF0aW9uOnAsb3JpZW50YXRpb246dSx0b3VjaE11bHRpcGxpZXI6aCx3aGVlbE11bHRpcGxpZXI6YixhdXRvUmVzaXplOngscHJldmVudDpnLHZpcnR1YWxTY3JvbGw6dixvdmVyc2Nyb2xsOncsYXV0b1JhZjpNLGFuY2hvcnM6RixhdXRvVG9nZ2xlOkMsYWxsb3dOZXN0ZWRTY3JvbGw6ayxuYWl2ZURpbWVuc2lvbnM6JCxzdG9wSW5lcnRpYU9uTmF2aWdhdGU6SX0sdGhpcy5kaW1lbnNpb25zPW5ldyBSMWEoZSx0LHthdXRvUmVzaXplOnh9KSx0aGlzLnVwZGF0ZUNsYXNzTmFtZSgpLHRoaXMudGFyZ2V0U2Nyb2xsPXRoaXMuYW5pbWF0ZWRTY3JvbGw9dGhpcy5hY3R1YWxTY3JvbGwsdGhpcy5vcHRpb25zLndyYXBwZXIuYWRkRXZlbnRMaXN0ZW5lcigic2Nyb2xsIix0aGlzLm9uTmF0aXZlU2Nyb2xsLCExKSx0aGlzLm9wdGlvbnMud3JhcHBlci5hZGRFdmVudExpc3RlbmVyKCJzY3JvbGxlbmQiLHRoaXMub25TY3JvbGxFbmQse2NhcHR1cmU6ITB9KSwodGhpcy5vcHRpb25zLmFuY2hvcnN8fHRoaXMub3B0aW9ucy5zdG9wSW5lcnRpYU9uTmF2aWdhdGUpJiZ0aGlzLm9wdGlvbnMud3JhcHBlci5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsdGhpcy5vbkNsaWNrLCExKSx0aGlzLm9wdGlvbnMud3JhcHBlci5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVyZG93biIsdGhpcy5vblBvaW50ZXJEb3duLCExKSx0aGlzLnZpcnR1YWxTY3JvbGw9bmV3IEIxYShyLHt0b3VjaE11bHRpcGxpZXI6aCx3aGVlbE11bHRpcGxpZXI6Yn0pLHRoaXMudmlydHVhbFNjcm9sbC5vbigic2Nyb2xsIix0aGlzLm9uVmlydHVhbFNjcm9sbCksdGhpcy5vcHRpb25zLmF1dG9Ub2dnbGUmJih0aGlzLmNoZWNrT3ZlcmZsb3coKSx0aGlzLnJvb3RFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRyYW5zaXRpb25lbmQiLHRoaXMub25UcmFuc2l0aW9uRW5kLHtwYXNzaXZlOiEwfSkpLHRoaXMub3B0aW9ucy5hdXRvUmFmJiYodGhpcy5fcmFmSWQ9cmVxdWVzdEFuaW1hdGlvbkZyYW1lKHRoaXMucmFmKSl9ZGVzdHJveSgpe3RoaXMuZW1pdHRlci5kZXN0cm95KCksdGhpcy5vcHRpb25zLndyYXBwZXIucmVtb3ZlRXZlbnRMaXN0ZW5lcigic2Nyb2xsIix0aGlzLm9uTmF0aXZlU2Nyb2xsLCExKSx0aGlzLm9wdGlvbnMud3JhcHBlci5yZW1vdmVFdmVudExpc3RlbmVyKCJzY3JvbGxlbmQiLHRoaXMub25TY3JvbGxFbmQse2NhcHR1cmU6ITB9KSx0aGlzLm9wdGlvbnMud3JhcHBlci5yZW1vdmVFdmVudExpc3RlbmVyKCJwb2ludGVyZG93biIsdGhpcy5vblBvaW50ZXJEb3duLCExKSwodGhpcy5vcHRpb25zLmFuY2hvcnN8fHRoaXMub3B0aW9ucy5zdG9wSW5lcnRpYU9uTmF2aWdhdGUpJiZ0aGlzLm9wdGlvbnMud3JhcHBlci5yZW1vdmVFdmVudExpc3RlbmVyKCJjbGljayIsdGhpcy5vbkNsaWNrLCExKSx0aGlzLnZpcnR1YWxTY3JvbGwuZGVzdHJveSgpLHRoaXMuZGltZW5zaW9ucy5kZXN0cm95KCksdGhpcy5jbGVhblVwQ2xhc3NOYW1lKCksdGhpcy5fcmFmSWQmJmNhbmNlbEFuaW1hdGlvbkZyYW1lKHRoaXMuX3JhZklkKX1vbihlLHQpe3JldHVybiB0aGlzLmVtaXR0ZXIub24oZSx0KX1vZmYoZSx0KXtyZXR1cm4gdGhpcy5lbWl0dGVyLm9mZihlLHQpfW9uU2Nyb2xsRW5kPWU9PntlIGluc3RhbmNlb2YgQ3VzdG9tRXZlbnR8fCh0aGlzLmlzU2Nyb2xsaW5nPT09InNtb290aCJ8fHRoaXMuaXNTY3JvbGxpbmc9PT0hMSkmJmUuc3RvcFByb3BhZ2F0aW9uKCl9O2Rpc3BhdGNoU2Nyb2xsZW5kRXZlbnQ9KCk9Pnt0aGlzLm9wdGlvbnMud3JhcHBlci5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgic2Nyb2xsZW5kIix7YnViYmxlczp0aGlzLm9wdGlvbnMud3JhcHBlcj09PXdpbmRvdyxkZXRhaWw6e2xlbmlzU2Nyb2xsRW5kOiEwfX0pKX07Z2V0IG92ZXJmbG93KCl7bGV0IGU9dGhpcy5pc0hvcml6b250YWw/Im92ZXJmbG93LXgiOiJvdmVyZmxvdy15IjtyZXR1cm4gZ2V0Q29tcHV0ZWRTdHlsZSh0aGlzLnJvb3RFbGVtZW50KVtlXX1jaGVja092ZXJmbG93KCl7WyJoaWRkZW4iLCJjbGlwIl0uaW5jbHVkZXModGhpcy5vdmVyZmxvdyk/dGhpcy5pbnRlcm5hbFN0b3AoKTp0aGlzLmludGVybmFsU3RhcnQoKX1vblRyYW5zaXRpb25FbmQ9ZT0+e2UucHJvcGVydHlOYW1lLmluY2x1ZGVzKCJvdmVyZmxvdyIpJiZ0aGlzLmNoZWNrT3ZlcmZsb3coKX07c2V0U2Nyb2xsKGUpe3RoaXMuaXNIb3Jpem9udGFsP3RoaXMub3B0aW9ucy53cmFwcGVyLnNjcm9sbFRvKHtsZWZ0OmUsYmVoYXZpb3I6Imluc3RhbnQifSk6dGhpcy5vcHRpb25zLndyYXBwZXIuc2Nyb2xsVG8oe3RvcDplLGJlaGF2aW9yOiJpbnN0YW50In0pfW9uQ2xpY2s9ZT0+e2xldCByPWUuY29tcG9zZWRQYXRoKCkuZmlsdGVyKGE9PmEgaW5zdGFuY2VvZiBIVE1MQW5jaG9yRWxlbWVudCYmYS5nZXRBdHRyaWJ1dGUoImhyZWYiKSk7aWYodGhpcy5vcHRpb25zLmFuY2hvcnMpe2xldCBhPXIuZmluZChpPT5pLmdldEF0dHJpYnV0ZSgiaHJlZiIpPy5pbmNsdWRlcygiIyIpKTtpZihhKXtsZXQgaT1hLmdldEF0dHJpYnV0ZSgiaHJlZiIpO2lmKGkpe2xldCBvPXR5cGVvZiB0aGlzLm9wdGlvbnMuYW5jaG9ycz09Im9iamVjdCImJnRoaXMub3B0aW9ucy5hbmNob3JzP3RoaXMub3B0aW9ucy5hbmNob3JzOnZvaWQgMCxuPWAjJHtpLnNwbGl0KCIjIilbMV19YDt0aGlzLnNjcm9sbFRvKG4sbyl9fX10aGlzLm9wdGlvbnMuc3RvcEluZXJ0aWFPbk5hdmlnYXRlJiZyLmZpbmQoaT0+aS5ob3N0PT09d2luZG93LmxvY2F0aW9uLmhvc3QpJiZ0aGlzLnJlc2V0KCl9O29uUG9pbnRlckRvd249ZT0+e2UuYnV0dG9uPT09MSYmdGhpcy5yZXNldCgpfTtvblZpcnR1YWxTY3JvbGw9ZT0+e2lmKHR5cGVvZiB0aGlzLm9wdGlvbnMudmlydHVhbFNjcm9sbD09ImZ1bmN0aW9uIiYmdGhpcy5vcHRpb25zLnZpcnR1YWxTY3JvbGwoZSk9PT0hMSlyZXR1cm47bGV0e2RlbHRhWDp0LGRlbHRhWTpyLGV2ZW50OmF9PWU7aWYodGhpcy5lbWl0dGVyLmVtaXQoInZpcnR1YWwtc2Nyb2xsIix7ZGVsdGFYOnQsZGVsdGFZOnIsZXZlbnQ6YX0pLGEuY3RybEtleXx8YS5sZW5pc1N0b3BQcm9wYWdhdGlvbilyZXR1cm47bGV0IGk9YS50eXBlLmluY2x1ZGVzKCJ0b3VjaCIpLG89YS50eXBlLmluY2x1ZGVzKCJ3aGVlbCIpO3RoaXMuaXNUb3VjaGluZz1hLnR5cGU9PT0idG91Y2hzdGFydCJ8fGEudHlwZT09PSJ0b3VjaG1vdmUiO2xldCBuPXQ9PT0wJiZyPT09MDtpZih0aGlzLm9wdGlvbnMuc3luY1RvdWNoJiZpJiZhLnR5cGU9PT0idG91Y2hzdGFydCImJm4mJiF0aGlzLmlzU3RvcHBlZCYmIXRoaXMuaXNMb2NrZWQpe3RoaXMucmVzZXQoKTtyZXR1cm59bGV0IGM9dGhpcy5vcHRpb25zLmdlc3R1cmVPcmllbnRhdGlvbj09PSJ2ZXJ0aWNhbCImJnI9PT0wfHx0aGlzLm9wdGlvbnMuZ2VzdHVyZU9yaWVudGF0aW9uPT09Imhvcml6b250YWwiJiZ0PT09MDtpZihufHxjKXJldHVybjtsZXQgZD1hLmNvbXBvc2VkUGF0aCgpO2Q9ZC5zbGljZSgwLGQuaW5kZXhPZih0aGlzLnJvb3RFbGVtZW50KSk7bGV0IGY9dGhpcy5vcHRpb25zLnByZXZlbnQ7aWYoZC5maW5kKGc9PmcgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCYmKHR5cGVvZiBmPT0iZnVuY3Rpb24iJiZmPy4oZyl8fGcuaGFzQXR0cmlidXRlPy4oImRhdGEtbGVuaXMtcHJldmVudCIpfHxpJiZnLmhhc0F0dHJpYnV0ZT8uKCJkYXRhLWxlbmlzLXByZXZlbnQtdG91Y2giKXx8byYmZy5oYXNBdHRyaWJ1dGU/LigiZGF0YS1sZW5pcy1wcmV2ZW50LXdoZWVsIil8fHRoaXMub3B0aW9ucy5hbGxvd05lc3RlZFNjcm9sbCYmdGhpcy5jaGVja05lc3RlZFNjcm9sbChnLHtkZWx0YVg6dCxkZWx0YVk6cn0pKSkpcmV0dXJuO2lmKHRoaXMuaXNTdG9wcGVkfHx0aGlzLmlzTG9ja2VkKXthLmNhbmNlbGFibGUmJmEucHJldmVudERlZmF1bHQoKTtyZXR1cm59aWYoISh0aGlzLm9wdGlvbnMuc3luY1RvdWNoJiZpfHx0aGlzLm9wdGlvbnMuc21vb3RoV2hlZWwmJm8pKXt0aGlzLmlzU2Nyb2xsaW5nPSJuYXRpdmUiLHRoaXMuYW5pbWF0ZS5zdG9wKCksYS5sZW5pc1N0b3BQcm9wYWdhdGlvbj0hMDtyZXR1cm59bGV0IHA9cjt0aGlzLm9wdGlvbnMuZ2VzdHVyZU9yaWVudGF0aW9uPT09ImJvdGgiP3A9TWF0aC5hYnMocik+TWF0aC5hYnModCk/cjp0OnRoaXMub3B0aW9ucy5nZXN0dXJlT3JpZW50YXRpb249PT0iaG9yaXpvbnRhbCImJihwPXQpLCghdGhpcy5vcHRpb25zLm92ZXJzY3JvbGx8fHRoaXMub3B0aW9ucy5pbmZpbml0ZXx8dGhpcy5vcHRpb25zLndyYXBwZXIhPT13aW5kb3cmJnRoaXMubGltaXQ+MCYmKHRoaXMuYW5pbWF0ZWRTY3JvbGw+MCYmdGhpcy5hbmltYXRlZFNjcm9sbDx0aGlzLmxpbWl0fHx0aGlzLmFuaW1hdGVkU2Nyb2xsPT09MCYmcj4wfHx0aGlzLmFuaW1hdGVkU2Nyb2xsPT09dGhpcy5saW1pdCYmcjwwKSkmJihhLmxlbmlzU3RvcFByb3BhZ2F0aW9uPSEwKSxhLmNhbmNlbGFibGUmJmEucHJldmVudERlZmF1bHQoKTtsZXQgaD1pJiZ0aGlzLm9wdGlvbnMuc3luY1RvdWNoLHg9aSYmYS50eXBlPT09InRvdWNoZW5kIjt4JiYocD1NYXRoLnNpZ24odGhpcy52ZWxvY2l0eSkqTWF0aC5wb3coTWF0aC5hYnModGhpcy52ZWxvY2l0eSksdGhpcy5vcHRpb25zLnRvdWNoSW5lcnRpYUV4cG9uZW50KSksdGhpcy5zY3JvbGxUbyh0aGlzLnRhcmdldFNjcm9sbCtwLHtwcm9ncmFtbWF0aWM6ITEsLi4uaD97bGVycDp4P3RoaXMub3B0aW9ucy5zeW5jVG91Y2hMZXJwOjF9OntsZXJwOnRoaXMub3B0aW9ucy5sZXJwLGR1cmF0aW9uOnRoaXMub3B0aW9ucy5kdXJhdGlvbixlYXNpbmc6dGhpcy5vcHRpb25zLmVhc2luZ319KX07cmVzaXplKCl7dGhpcy5kaW1lbnNpb25zLnJlc2l6ZSgpLHRoaXMuYW5pbWF0ZWRTY3JvbGw9dGhpcy50YXJnZXRTY3JvbGw9dGhpcy5hY3R1YWxTY3JvbGwsdGhpcy5lbWl0KCl9ZW1pdCgpe3RoaXMuZW1pdHRlci5lbWl0KCJzY3JvbGwiLHRoaXMpfW9uTmF0aXZlU2Nyb2xsPSgpPT57aWYodGhpcy5fcmVzZXRWZWxvY2l0eVRpbWVvdXQhPT1udWxsJiYoY2xlYXJUaW1lb3V0KHRoaXMuX3Jlc2V0VmVsb2NpdHlUaW1lb3V0KSx0aGlzLl9yZXNldFZlbG9jaXR5VGltZW91dD1udWxsKSx0aGlzLl9wcmV2ZW50TmV4dE5hdGl2ZVNjcm9sbEV2ZW50KXt0aGlzLl9wcmV2ZW50TmV4dE5hdGl2ZVNjcm9sbEV2ZW50PSExO3JldHVybn1pZih0aGlzLmlzU2Nyb2xsaW5nPT09ITF8fHRoaXMuaXNTY3JvbGxpbmc9PT0ibmF0aXZlIil7bGV0IGU9dGhpcy5hbmltYXRlZFNjcm9sbDt0aGlzLmFuaW1hdGVkU2Nyb2xsPXRoaXMudGFyZ2V0U2Nyb2xsPXRoaXMuYWN0dWFsU2Nyb2xsLHRoaXMubGFzdFZlbG9jaXR5PXRoaXMudmVsb2NpdHksdGhpcy52ZWxvY2l0eT10aGlzLmFuaW1hdGVkU2Nyb2xsLWUsdGhpcy5kaXJlY3Rpb249TWF0aC5zaWduKHRoaXMuYW5pbWF0ZWRTY3JvbGwtZSksdGhpcy5pc1N0b3BwZWR8fCh0aGlzLmlzU2Nyb2xsaW5nPSJuYXRpdmUiKSx0aGlzLmVtaXQoKSx0aGlzLnZlbG9jaXR5IT09MCYmKHRoaXMuX3Jlc2V0VmVsb2NpdHlUaW1lb3V0PXNldFRpbWVvdXQoKCk9Pnt0aGlzLmxhc3RWZWxvY2l0eT10aGlzLnZlbG9jaXR5LHRoaXMudmVsb2NpdHk9MCx0aGlzLmlzU2Nyb2xsaW5nPSExLHRoaXMuZW1pdCgpfSw0MDApKX19O3Jlc2V0KCl7dGhpcy5pc0xvY2tlZD0hMSx0aGlzLmlzU2Nyb2xsaW5nPSExLHRoaXMuYW5pbWF0ZWRTY3JvbGw9dGhpcy50YXJnZXRTY3JvbGw9dGhpcy5hY3R1YWxTY3JvbGwsdGhpcy5sYXN0VmVsb2NpdHk9dGhpcy52ZWxvY2l0eT0wLHRoaXMuYW5pbWF0ZS5zdG9wKCl9c3RhcnQoKXtpZih0aGlzLmlzU3RvcHBlZCl7aWYodGhpcy5vcHRpb25zLmF1dG9Ub2dnbGUpe3RoaXMucm9vdEVsZW1lbnQuc3R5bGUucmVtb3ZlUHJvcGVydHkoIm92ZXJmbG93Iik7cmV0dXJufXRoaXMuaW50ZXJuYWxTdGFydCgpfX1pbnRlcm5hbFN0YXJ0KCl7dGhpcy5pc1N0b3BwZWQmJih0aGlzLnJlc2V0KCksdGhpcy5pc1N0b3BwZWQ9ITEsdGhpcy5lbWl0KCkpfXN0b3AoKXtpZighdGhpcy5pc1N0b3BwZWQpe2lmKHRoaXMub3B0aW9ucy5hdXRvVG9nZ2xlKXt0aGlzLnJvb3RFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCJvdmVyZmxvdyIsImNsaXAiKTtyZXR1cm59dGhpcy5pbnRlcm5hbFN0b3AoKX19aW50ZXJuYWxTdG9wKCl7dGhpcy5pc1N0b3BwZWR8fCh0aGlzLnJlc2V0KCksdGhpcy5pc1N0b3BwZWQ9ITAsdGhpcy5lbWl0KCkpfXJhZj1lPT57bGV0IHQ9ZS0odGhpcy50aW1lfHxlKTt0aGlzLnRpbWU9ZSx0aGlzLmFuaW1hdGUuYWR2YW5jZSh0Ki4wMDEpLHRoaXMub3B0aW9ucy5hdXRvUmFmJiYodGhpcy5fcmFmSWQ9cmVxdWVzdEFuaW1hdGlvbkZyYW1lKHRoaXMucmFmKSl9O3Njcm9sbFRvKGUse29mZnNldDp0PTAsaW1tZWRpYXRlOnI9ITEsbG9jazphPSExLHByb2dyYW1tYXRpYzppPSEwLGxlcnA6bz1pP3RoaXMub3B0aW9ucy5sZXJwOnZvaWQgMCxkdXJhdGlvbjpuPWk/dGhpcy5vcHRpb25zLmR1cmF0aW9uOnZvaWQgMCxlYXNpbmc6cz1pP3RoaXMub3B0aW9ucy5lYXNpbmc6dm9pZCAwLG9uU3RhcnQ6YyxvbkNvbXBsZXRlOmQsZm9yY2U6Zj0hMSx1c2VyRGF0YTp1fT17fSl7aWYoISgodGhpcy5pc1N0b3BwZWR8fHRoaXMuaXNMb2NrZWQpJiYhZikpe2lmKHR5cGVvZiBlPT0ic3RyaW5nIiYmWyJ0b3AiLCJsZWZ0Iiwic3RhcnQiLCIjIl0uaW5jbHVkZXMoZSkpZT0wO2Vsc2UgaWYodHlwZW9mIGU9PSJzdHJpbmciJiZbImJvdHRvbSIsInJpZ2h0IiwiZW5kIl0uaW5jbHVkZXMoZSkpZT10aGlzLmxpbWl0O2Vsc2V7bGV0IHA7aWYodHlwZW9mIGU9PSJzdHJpbmciPyhwPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoZSkscHx8KGU9PT0iI3RvcCI/ZT0wOmNvbnNvbGUud2FybigiTGVuaXM6IFRhcmdldCBub3QgZm91bmQiLGUpKSk6ZSBpbnN0YW5jZW9mIEhUTUxFbGVtZW50JiZlPy5ub2RlVHlwZSYmKHA9ZSkscCl7aWYodGhpcy5vcHRpb25zLndyYXBwZXIhPT13aW5kb3cpe2xldCBiPXRoaXMucm9vdEVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7dC09dGhpcy5pc0hvcml6b250YWw/Yi5sZWZ0OmIudG9wfWxldCBoPXAuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7ZT0odGhpcy5pc0hvcml6b250YWw/aC5sZWZ0OmgudG9wKSt0aGlzLmFuaW1hdGVkU2Nyb2xsfX1pZih0eXBlb2YgZT09Im51bWJlciIpe2lmKGUrPXQsZT1NYXRoLnJvdW5kKGUpLHRoaXMub3B0aW9ucy5pbmZpbml0ZSl7aWYoaSl7dGhpcy50YXJnZXRTY3JvbGw9dGhpcy5hbmltYXRlZFNjcm9sbD10aGlzLnNjcm9sbDtsZXQgcD1lLXRoaXMuYW5pbWF0ZWRTY3JvbGw7cD50aGlzLmxpbWl0LzI/ZT1lLXRoaXMubGltaXQ6cDwtdGhpcy5saW1pdC8yJiYoZT1lK3RoaXMubGltaXQpfX1lbHNlIGU9Q0N0KDAsZSx0aGlzLmxpbWl0KTtpZihlPT09dGhpcy50YXJnZXRTY3JvbGwpe2M/Lih0aGlzKSxkPy4odGhpcyk7cmV0dXJufWlmKHRoaXMudXNlckRhdGE9dT8/e30scil7dGhpcy5hbmltYXRlZFNjcm9sbD10aGlzLnRhcmdldFNjcm9sbD1lLHRoaXMuc2V0U2Nyb2xsKHRoaXMuc2Nyb2xsKSx0aGlzLnJlc2V0KCksdGhpcy5wcmV2ZW50TmV4dE5hdGl2ZVNjcm9sbEV2ZW50KCksdGhpcy5lbWl0KCksZD8uKHRoaXMpLHRoaXMudXNlckRhdGE9e30scmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57dGhpcy5kaXNwYXRjaFNjcm9sbGVuZEV2ZW50KCl9KTtyZXR1cm59aXx8KHRoaXMudGFyZ2V0U2Nyb2xsPWUpLHR5cGVvZiBuPT0ibnVtYmVyIiYmdHlwZW9mIHMhPSJmdW5jdGlvbiI/cz1MQ3Q6dHlwZW9mIHM9PSJmdW5jdGlvbiImJnR5cGVvZiBuIT0ibnVtYmVyIiYmKG49MSksdGhpcy5hbmltYXRlLmZyb21Ubyh0aGlzLmFuaW1hdGVkU2Nyb2xsLGUse2R1cmF0aW9uOm4sZWFzaW5nOnMsbGVycDpvLG9uU3RhcnQ6KCk9PnthJiYodGhpcy5pc0xvY2tlZD0hMCksdGhpcy5pc1Njcm9sbGluZz0ic21vb3RoIixjPy4odGhpcyl9LG9uVXBkYXRlOihwLGgpPT57dGhpcy5pc1Njcm9sbGluZz0ic21vb3RoIix0aGlzLmxhc3RWZWxvY2l0eT10aGlzLnZlbG9jaXR5LHRoaXMudmVsb2NpdHk9cC10aGlzLmFuaW1hdGVkU2Nyb2xsLHRoaXMuZGlyZWN0aW9uPU1hdGguc2lnbih0aGlzLnZlbG9jaXR5KSx0aGlzLmFuaW1hdGVkU2Nyb2xsPXAsdGhpcy5zZXRTY3JvbGwodGhpcy5zY3JvbGwpLGkmJih0aGlzLnRhcmdldFNjcm9sbD1wKSxofHx0aGlzLmVtaXQoKSxoJiYodGhpcy5yZXNldCgpLHRoaXMuZW1pdCgpLGQ/Lih0aGlzKSx0aGlzLnVzZXJEYXRhPXt9LHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKT0+e3RoaXMuZGlzcGF0Y2hTY3JvbGxlbmRFdmVudCgpfSksdGhpcy5wcmV2ZW50TmV4dE5hdGl2ZVNjcm9sbEV2ZW50KCkpfX0pfX19cHJldmVudE5leHROYXRpdmVTY3JvbGxFdmVudCgpe3RoaXMuX3ByZXZlbnROZXh0TmF0aXZlU2Nyb2xsRXZlbnQ9ITAscmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57dGhpcy5fcHJldmVudE5leHROYXRpdmVTY3JvbGxFdmVudD0hMX0pfWNoZWNrTmVzdGVkU2Nyb2xsKGUse2RlbHRhWDp0LGRlbHRhWTpyfSl7bGV0IGE9RGF0ZS5ub3coKSxpPWUuX2xlbmlzPz89e30sbyxuLHMsYyxkLGYsdSxwLGg9dGhpcy5vcHRpb25zLmdlc3R1cmVPcmllbnRhdGlvbjtpZihhLShpLnRpbWU/PzApPjJlMyl7aS50aW1lPURhdGUubm93KCk7bGV0IEM9d2luZG93LmdldENvbXB1dGVkU3R5bGUoZSk7aS5jb21wdXRlZFN0eWxlPUM7bGV0IGs9Qy5vdmVyZmxvd1gsTj1DLm92ZXJmbG93WTtpZihvPVsiYXV0byIsIm92ZXJsYXkiLCJzY3JvbGwiXS5pbmNsdWRlcyhrKSxuPVsiYXV0byIsIm92ZXJsYXkiLCJzY3JvbGwiXS5pbmNsdWRlcyhOKSxpLmhhc092ZXJmbG93WD1vLGkuaGFzT3ZlcmZsb3dZPW4sIW8mJiFufHxoPT09InZlcnRpY2FsIiYmIW58fGg9PT0iaG9yaXpvbnRhbCImJiFvKXJldHVybiExO2Q9ZS5zY3JvbGxXaWR0aCxmPWUuc2Nyb2xsSGVpZ2h0LHU9ZS5jbGllbnRXaWR0aCxwPWUuY2xpZW50SGVpZ2h0LHM9ZD51LGM9Zj5wLGkuaXNTY3JvbGxhYmxlWD1zLGkuaXNTY3JvbGxhYmxlWT1jLGkuc2Nyb2xsV2lkdGg9ZCxpLnNjcm9sbEhlaWdodD1mLGkuY2xpZW50V2lkdGg9dSxpLmNsaWVudEhlaWdodD1wfWVsc2Ugcz1pLmlzU2Nyb2xsYWJsZVgsYz1pLmlzU2Nyb2xsYWJsZVksbz1pLmhhc092ZXJmbG93WCxuPWkuaGFzT3ZlcmZsb3dZLGQ9aS5zY3JvbGxXaWR0aCxmPWkuc2Nyb2xsSGVpZ2h0LHU9aS5jbGllbnRXaWR0aCxwPWkuY2xpZW50SGVpZ2h0O2lmKCFvJiYhbnx8IXMmJiFjfHxoPT09InZlcnRpY2FsIiYmKCFufHwhYyl8fGg9PT0iaG9yaXpvbnRhbCImJighb3x8IXMpKXJldHVybiExO2xldCBiO2lmKGg9PT0iaG9yaXpvbnRhbCIpYj0ieCI7ZWxzZSBpZihoPT09InZlcnRpY2FsIiliPSJ5IjtlbHNle2xldCBDPXQhPT0wLGs9ciE9PTA7QyYmbyYmcyYmKGI9IngiKSxrJiZuJiZjJiYoYj0ieSIpfWlmKCFiKXJldHVybiExO2xldCB4LGcsdix3LE07aWYoYj09PSJ4Iil4PWUuc2Nyb2xsTGVmdCxnPWQtdSx2PXQsdz1vLE09cztlbHNlIGlmKGI9PT0ieSIpeD1lLnNjcm9sbFRvcCxnPWYtcCx2PXIsdz1uLE09YztlbHNlIHJldHVybiExO3JldHVybih2PjA/eDxnOng+MCkmJncmJk19Z2V0IHJvb3RFbGVtZW50KCl7cmV0dXJuIHRoaXMub3B0aW9ucy53cmFwcGVyPT09d2luZG93P2RvY3VtZW50LmRvY3VtZW50RWxlbWVudDp0aGlzLm9wdGlvbnMud3JhcHBlcn1nZXQgbGltaXQoKXtyZXR1cm4gdGhpcy5vcHRpb25zLm5haXZlRGltZW5zaW9ucz90aGlzLmlzSG9yaXpvbnRhbD90aGlzLnJvb3RFbGVtZW50LnNjcm9sbFdpZHRoLXRoaXMucm9vdEVsZW1lbnQuY2xpZW50V2lkdGg6dGhpcy5yb290RWxlbWVudC5zY3JvbGxIZWlnaHQtdGhpcy5yb290RWxlbWVudC5jbGllbnRIZWlnaHQ6dGhpcy5kaW1lbnNpb25zLmxpbWl0W3RoaXMuaXNIb3Jpem9udGFsPyJ4IjoieSJdfWdldCBpc0hvcml6b250YWwoKXtyZXR1cm4gdGhpcy5vcHRpb25zLm9yaWVudGF0aW9uPT09Imhvcml6b250YWwifWdldCBhY3R1YWxTY3JvbGwoKXtsZXQgZT10aGlzLm9wdGlvbnMud3JhcHBlcjtyZXR1cm4gdGhpcy5pc0hvcml6b250YWw/ZS5zY3JvbGxYPz9lLnNjcm9sbExlZnQ6ZS5zY3JvbGxZPz9lLnNjcm9sbFRvcH1nZXQgc2Nyb2xsKCl7cmV0dXJuIHRoaXMub3B0aW9ucy5pbmZpbml0ZT9OMWEodGhpcy5hbmltYXRlZFNjcm9sbCx0aGlzLmxpbWl0KTp0aGlzLmFuaW1hdGVkU2Nyb2xsfWdldCBwcm9ncmVzcygpe3JldHVybiB0aGlzLmxpbWl0PT09MD8xOnRoaXMuc2Nyb2xsL3RoaXMubGltaXR9Z2V0IGlzU2Nyb2xsaW5nKCl7cmV0dXJuIHRoaXMuX2lzU2Nyb2xsaW5nfXNldCBpc1Njcm9sbGluZyhlKXt0aGlzLl9pc1Njcm9sbGluZyE9PWUmJih0aGlzLl9pc1Njcm9sbGluZz1lLHRoaXMudXBkYXRlQ2xhc3NOYW1lKCkpfWdldCBpc1N0b3BwZWQoKXtyZXR1cm4gdGhpcy5faXNTdG9wcGVkfXNldCBpc1N0b3BwZWQoZSl7dGhpcy5faXNTdG9wcGVkIT09ZSYmKHRoaXMuX2lzU3RvcHBlZD1lLHRoaXMudXBkYXRlQ2xhc3NOYW1lKCkpfWdldCBpc0xvY2tlZCgpe3JldHVybiB0aGlzLl9pc0xvY2tlZH1zZXQgaXNMb2NrZWQoZSl7dGhpcy5faXNMb2NrZWQhPT1lJiYodGhpcy5faXNMb2NrZWQ9ZSx0aGlzLnVwZGF0ZUNsYXNzTmFtZSgpKX1nZXQgaXNTbW9vdGgoKXtyZXR1cm4gdGhpcy5pc1Njcm9sbGluZz09PSJzbW9vdGgifWdldCBjbGFzc05hbWUoKXtsZXQgZT0ibGVuaXMiO3JldHVybiB0aGlzLm9wdGlvbnMuYXV0b1RvZ2dsZSYmKGUrPSIgbGVuaXMtYXV0b1RvZ2dsZSIpLHRoaXMuaXNTdG9wcGVkJiYoZSs9IiBsZW5pcy1zdG9wcGVkIiksdGhpcy5pc0xvY2tlZCYmKGUrPSIgbGVuaXMtbG9ja2VkIiksdGhpcy5pc1Njcm9sbGluZyYmKGUrPSIgbGVuaXMtc2Nyb2xsaW5nIiksdGhpcy5pc1Njcm9sbGluZz09PSJzbW9vdGgiJiYoZSs9IiBsZW5pcy1zbW9vdGgiKSxlfXVwZGF0ZUNsYXNzTmFtZSgpe3RoaXMuY2xlYW5VcENsYXNzTmFtZSgpLHRoaXMucm9vdEVsZW1lbnQuY2xhc3NOYW1lPWAke3RoaXMucm9vdEVsZW1lbnQuY2xhc3NOYW1lfSAke3RoaXMuY2xhc3NOYW1lfWAudHJpbSgpfWNsZWFuVXBDbGFzc05hbWUoKXt0aGlzLnJvb3RFbGVtZW50LmNsYXNzTmFtZT10aGlzLnJvb3RFbGVtZW50LmNsYXNzTmFtZS5yZXBsYWNlKC9sZW5pcygtXHcrKT8vZywiIikudHJpbSgpfX19KTt2YXIgSThlPVhlKCgkOGUsUDhlKT0+eyhmdW5jdGlvbihlLHQpe3R5cGVvZiAkOGU9PSJvYmplY3QiJiZ0eXBlb2YgUDhlPCJ1Ij9QOGUuZXhwb3J0cz10KCk6dHlwZW9mIGRlZmluZT09ImZ1bmN0aW9uIiYmZGVmaW5lLmFtZD9kZWZpbmUodCk6KGU9ZXx8c2VsZixlLlN3ZWV0U2Nyb2xsPXQoKSl9KSgkOGUsZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7dmFyIGU9ZnVuY3Rpb24oKXtyZXR1cm4gZT1PYmplY3QuYXNzaWdufHxmdW5jdGlvbihEKXtmb3IodmFyIFIsTz0xLFk9YXJndW1lbnRzLmxlbmd0aDtPPFk7TysrKXtSPWFyZ3VtZW50c1tPXTtmb3IodmFyIHVlIGluIFIpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKFIsdWUpJiYoRFt1ZV09Ult1ZV0pfXJldHVybiBEfSxlLmFwcGx5KHRoaXMsYXJndW1lbnRzKX0sdD0hISh0eXBlb2Ygd2luZG93PCJ1IiYmd2luZG93LmRvY3VtZW50JiZ3aW5kb3cuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCkscj10P3dpbmRvdy5oaXN0b3J5JiYicHVzaFN0YXRlImluIHdpbmRvdy5oaXN0b3J5JiZ3aW5kb3cubG9jYXRpb24ucHJvdG9jb2whPT0iZmlsZToiOiExLGE9KGZ1bmN0aW9uKCl7dmFyIEE9ITE7aWYoIXQpcmV0dXJuIEE7dHJ5e3ZhciBEPXdpbmRvdyxSPU9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7fSwicGFzc2l2ZSIse2dldDpmdW5jdGlvbigpe0E9ITB9fSk7RC5hZGRFdmVudExpc3RlbmVyKCJ0ZXN0IixudWxsLFIpLEQucmVtb3ZlRXZlbnRMaXN0ZW5lcigidGVzdCIsbnVsbCxSKX1jYXRjaHt9cmV0dXJuIEF9KSgpLGk9ZnVuY3Rpb24oQSl7cmV0dXJuIHR5cGVvZiBBPT0ic3RyaW5nIn0sbz1mdW5jdGlvbihBKXtyZXR1cm4gdHlwZW9mIEE9PSJmdW5jdGlvbiJ9LG49ZnVuY3Rpb24oQSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoQSl9LHM9ZnVuY3Rpb24oQSl7cmV0dXJuIW4oQSkmJkEtcGFyc2VGbG9hdChBKSsxPj0wfSxjPWZ1bmN0aW9uKEEsRCl7cmV0dXJuIEEmJkEuaGFzT3duUHJvcGVydHkoRCl9LGQ9dD93aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lLmJpbmQod2luZG93KTpudWxsLGY9dD93aW5kb3cuY2FuY2VsQW5pbWF0aW9uRnJhbWUuYmluZCh3aW5kb3cpOm51bGwsdT1NYXRoLmNvcyxwPU1hdGguc2luLGg9TWF0aC5wb3csYj1NYXRoLnNxcnQseD1NYXRoLlBJLGc9e2xpbmVhcjpmdW5jdGlvbihBKXtyZXR1cm4gQX0sZWFzZUluUXVhZDpmdW5jdGlvbihBLEQsUixPLFkpe3JldHVybiBPKihELz1ZKSpEK1J9LGVhc2VPdXRRdWFkOmZ1bmN0aW9uKEEsRCxSLE8sWSl7cmV0dXJuLU8qKEQvPVkpKihELTIpK1J9LGVhc2VJbk91dFF1YWQ6ZnVuY3Rpb24oQSxELFIsTyxZKXtyZXR1cm4oRC89WS8yKTwxP08vMipEKkQrUjotTy8yKigtLUQqKEQtMiktMSkrUn0sZWFzZUluQ3ViaWM6ZnVuY3Rpb24oQSxELFIsTyxZKXtyZXR1cm4gTyooRC89WSkqRCpEK1J9LGVhc2VPdXRDdWJpYzpmdW5jdGlvbihBLEQsUixPLFkpe3JldHVybiBPKigoRD1EL1ktMSkqRCpEKzEpK1J9LGVhc2VJbk91dEN1YmljOmZ1bmN0aW9uKEEsRCxSLE8sWSl7cmV0dXJuKEQvPVkvMik8MT9PLzIqRCpEKkQrUjpPLzIqKChELT0yKSpEKkQrMikrUn0sZWFzZUluUXVhcnQ6ZnVuY3Rpb24oQSxELFIsTyxZKXtyZXR1cm4gTyooRC89WSkqRCpEKkQrUn0sZWFzZU91dFF1YXJ0OmZ1bmN0aW9uKEEsRCxSLE8sWSl7cmV0dXJuLU8qKChEPUQvWS0xKSpEKkQqRC0xKStSfSxlYXNlSW5PdXRRdWFydDpmdW5jdGlvbihBLEQsUixPLFkpe3JldHVybihELz1ZLzIpPDE/Ty8yKkQqRCpEKkQrUjotTy8yKigoRC09MikqRCpEKkQtMikrUn0sZWFzZUluUXVpbnQ6ZnVuY3Rpb24oQSxELFIsTyxZKXtyZXR1cm4gTyooRC89WSkqRCpEKkQqRCtSfSxlYXNlT3V0UXVpbnQ6ZnVuY3Rpb24oQSxELFIsTyxZKXtyZXR1cm4gTyooKEQ9RC9ZLTEpKkQqRCpEKkQrMSkrUn0sZWFzZUluT3V0UXVpbnQ6ZnVuY3Rpb24oQSxELFIsTyxZKXtyZXR1cm4oRC89WS8yKTwxP08vMipEKkQqRCpEKkQrUjpPLzIqKChELT0yKSpEKkQqRCpEKzIpK1J9LGVhc2VJblNpbmU6ZnVuY3Rpb24oQSxELFIsTyxZKXtyZXR1cm4tTyp1KEQvWSooeC8yKSkrTytSfSxlYXNlT3V0U2luZTpmdW5jdGlvbihBLEQsUixPLFkpe3JldHVybiBPKnAoRC9ZKih4LzIpKStSfSxlYXNlSW5PdXRTaW5lOmZ1bmN0aW9uKEEsRCxSLE8sWSl7cmV0dXJuLU8vMioodSh4KkQvWSktMSkrUn0sZWFzZUluRXhwbzpmdW5jdGlvbihBLEQsUixPLFkpe3JldHVybiBEPT09MD9SOk8qaCgyLDEwKihEL1ktMSkpK1J9LGVhc2VPdXRFeHBvOmZ1bmN0aW9uKEEsRCxSLE8sWSl7cmV0dXJuIEQ9PT1ZP1IrTzpPKigtaCgyLC0xMCpEL1kpKzEpK1J9LGVhc2VJbk91dEV4cG86ZnVuY3Rpb24oQSxELFIsTyxZKXtyZXR1cm4gRD09PTA/UjpEPT09WT9SK086KEQvPVkvMik8MT9PLzIqaCgyLDEwKihELTEpKStSOk8vMiooLWgoMiwtMTAqLS1EKSsyKStSfSxlYXNlSW5DaXJjOmZ1bmN0aW9uKEEsRCxSLE8sWSl7cmV0dXJuLU8qKGIoMS0oRC89WSkqRCktMSkrUn0sZWFzZU91dENpcmM6ZnVuY3Rpb24oQSxELFIsTyxZKXtyZXR1cm4gTypiKDEtKEQ9RC9ZLTEpKkQpK1J9LGVhc2VJbk91dENpcmM6ZnVuY3Rpb24oQSxELFIsTyxZKXtyZXR1cm4oRC89WS8yKTwxPy1PLzIqKGIoMS1EKkQpLTEpK1I6Ty8yKihiKDEtKEQtPTIpKkQpKzEpK1J9fSx2PWZ1bmN0aW9uKEEpe3JldHVybiBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChBP2RvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoQSk6W10pfSx3PWZ1bmN0aW9uKEEpe3JldHVybiB2KEEpLnNoaWZ0KCl8fG51bGx9LE09ZnVuY3Rpb24oQSl7cmV0dXJuIEEgaW5zdGFuY2VvZiBFbGVtZW50fSxGPWZ1bmN0aW9uKEEpe3JldHVybiBBPT09d2luZG93fSxDPWZ1bmN0aW9uKEEpe3JldHVybiBBPT09ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50fHxBPT09ZG9jdW1lbnQuYm9keX0saz1mdW5jdGlvbihBLEQpe2lmKE0oRCkpcmV0dXJuIEE9PT1EO2Zvcih2YXIgUj12KEQpLE89Ui5sZW5ndGg7LS1PPj0wJiZSW09dIT09QTspO3JldHVybiBPPi0xfSxOPWZ1bmN0aW9uKEEpe3JldHVybiBNYXRoLm1heChBLnNjcm9sbEhlaWdodCxBLmNsaWVudEhlaWdodCxBLm9mZnNldEhlaWdodCl9LCQ9ZnVuY3Rpb24oQSl7cmV0dXJuIE1hdGgubWF4KEEuc2Nyb2xsV2lkdGgsQS5jbGllbnRXaWR0aCxBLm9mZnNldFdpZHRoKX0sST1mdW5jdGlvbihBKXtyZXR1cm57d2lkdGg6JChBKSxoZWlnaHQ6TihBKX19LEI9ZnVuY3Rpb24oQSl7dmFyIEQ9RihBKXx8QyhBKTtyZXR1cm57dmlld3BvcnQ6e3dpZHRoOkQ/TWF0aC5taW4od2luZG93LmlubmVyV2lkdGgsZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudFdpZHRoKTpBLmNsaWVudFdpZHRoLGhlaWdodDpEP3dpbmRvdy5pbm5lckhlaWdodDpBLmNsaWVudEhlaWdodH0sc2l6ZTpEP3t3aWR0aDpNYXRoLm1heCgkKGRvY3VtZW50LmJvZHkpLCQoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KSksaGVpZ2h0Ok1hdGgubWF4KE4oZG9jdW1lbnQuYm9keSksTihkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpKX06SShBKX19LHo9e3k6InNjcm9sbFRvcCIseDoic2Nyb2xsTGVmdCJ9LHk9e3k6InBhZ2VZT2Zmc2V0Iix4OiJwYWdlWE9mZnNldCJ9LEU9ZnVuY3Rpb24oQSxEKXtyZXR1cm4gRihBKT9BW3lbRF1dOkFbeltEXV19LF89ZnVuY3Rpb24oQSxELFIpe2lmKEYoQSkpe3ZhciBPPVI9PT0ieSI7QS5zY3JvbGxUbyhPP0EucGFnZVhPZmZzZXQ6RCxPP0Q6QS5wYWdlWU9mZnNldCl9ZWxzZSBBW3pbUl1dPUR9LFA9ZnVuY3Rpb24oQSxEKXt2YXIgUj1BLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO2lmKFIud2lkdGh8fFIuaGVpZ2h0KXt2YXIgTz17dG9wOjAsbGVmdDowfSxZPXZvaWQgMDtpZihGKEQpfHxDKEQpKVk9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LE8udG9wPXdpbmRvd1t5LnldLE8ubGVmdD13aW5kb3dbeS54XTtlbHNle1k9RDt2YXIgdWU9WS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtPLnRvcD11ZS50b3AqLTErWVt6LnldLE8ubGVmdD11ZS5sZWZ0Ki0xK1lbei54XX1yZXR1cm57dG9wOlIudG9wK08udG9wLVkuY2xpZW50VG9wLGxlZnQ6Ui5sZWZ0K08ubGVmdC1ZLmNsaWVudExlZnR9fXJldHVybiBSfSxWPShmdW5jdGlvbigpe3JldHVybiB0PyJvbndoZWVsImluIGRvY3VtZW50PyJ3aGVlbCI6Im1vdXNld2hlZWwiOiJ3aGVlbCJ9KSgpLEg9ZnVuY3Rpb24oQSl7cmV0dXJuIEE9PT0id2hlZWwiP1Y6QX0sVz1mdW5jdGlvbihBLEQsUixPLFkpe1Iuc3BsaXQoIiAiKS5mb3JFYWNoKGZ1bmN0aW9uKHVlKXtBW0RdKEgodWUpLE8sYT97cGFzc2l2ZTpZfTohMSl9KX0sYWU9ZnVuY3Rpb24oQSxELFIsTyl7cmV0dXJuIFcoQSwiYWRkRXZlbnRMaXN0ZW5lciIsRCxSLE8pfSxUPWZ1bmN0aW9uKEEsRCxSLE8pe3JldHVybiBXKEEsInJlbW92ZUV2ZW50TGlzdGVuZXIiLEQsUixPKX0sSj0vXihcK3wtKT0oXGQrKD86XC5cZCspPykkLyxmZT1mdW5jdGlvbihBLEQpe3ZhciBSPXt0b3A6MCxsZWZ0OjAscmVsYXRpdmU6ITF9O2lmKGMoQSwidG9wIil8fGMoQSwibGVmdCIpKVI9ZSh7fSxSLEEpO2Vsc2UgaWYobihBKSlpZihBLmxlbmd0aD4xKVIudG9wPUFbMF0sUi5sZWZ0PUFbMV07ZWxzZSBpZihBLmxlbmd0aD09PTEpUi50b3A9RD9BWzBdOjAsUi5sZWZ0PUQ/MDpBWzBdO2Vsc2UgcmV0dXJuIG51bGw7ZWxzZSBpZihzKEEpKUQ/Ui50b3A9QTpSLmxlZnQ9QTtlbHNlIGlmKGkoQSkpe3ZhciBPPUEudHJpbSgpLm1hdGNoKEopO2lmKCFPKXJldHVybiBudWxsO3ZhciBZPU9bMV0sdWU9cGFyc2VJbnQoT1syXSwxMCk7WT09PSIrIj8oUi50b3A9RD91ZTowLFIubGVmdD1EPzA6dWUpOihSLnRvcD1EPy11ZTowLFIubGVmdD1EPzA6LXVlKSxSLnJlbGF0aXZlPSEwfWVsc2UgcmV0dXJuIG51bGw7cmV0dXJuIFJ9LEw9e3RyaWdnZXI6IltkYXRhLXNjcm9sbF0iLGhlYWRlcjoiW2RhdGEtc2Nyb2xsLWhlYWRlcl0iLGR1cmF0aW9uOjFlMyxlYXNpbmc6ImVhc2VPdXRRdWludCIsb2Zmc2V0OjAsdmVydGljYWw6ITAsaG9yaXpvbnRhbDohMSxjYW5jZWxsYWJsZTohMCx1cGRhdGVVUkw6ITEscHJldmVudERlZmF1bHQ6ITAsc3RvcFByb3BhZ2F0aW9uOiEwLGJlZm9yZTpudWxsLGFmdGVyOm51bGwsY2FuY2VsOm51bGwsY29tcGxldGU6bnVsbCxzdGVwOm51bGx9LFE9ImNsaWNrIixrZT0id2hlZWwgdG91Y2hzdGFydCB0b3VjaG1vdmUiLEc9KGZ1bmN0aW9uKCl7ZnVuY3Rpb24gQShELFIpe3ZhciBPPXRoaXM7dGhpcy4kZWw9bnVsbCx0aGlzLmN0eD17JHRyaWdnZXI6bnVsbCxvcHRzOm51bGwscHJvZ3Jlc3M6ITEscG9zOm51bGwsc3RhcnRQb3M6bnVsbCxlYXNpbmc6bnVsbCxzdGFydDowLGlkOjAsY2FuY2VsOiExLGhhc2g6bnVsbH0sdGhpcy5sb29wPWZ1bmN0aW9uKHVlKXt2YXIgeWU9TywkZT15ZS4kZWwsVT15ZS5jdHg7aWYoVS5zdGFydHx8KFUuc3RhcnQ9dWUpLCFVLnByb2dyZXNzfHwhJGUpe08uc3RvcCgpO3JldHVybn12YXIgcT1VLm9wdHMsaWU9VS5wb3Msd2U9VS5zdGFydCxnZT1VLnN0YXJ0UG9zLEFlPVUuZWFzaW5nLHhlPXEuZHVyYXRpb24sbmU9e3RvcDoieSIsbGVmdDoieCJ9LExlPXVlLXdlLE9lPU1hdGgubWluKDEsTWF0aC5tYXgoTGUveGUsMCkpO09iamVjdC5rZXlzKGllKS5mb3JFYWNoKGZ1bmN0aW9uKEplKXt2YXIgdGU9aWVbSmVdLFo9Z2VbSmVdLGVlPXRlLVo7aWYoZWUhPT0wKXt2YXIgYmU9QWUoT2UseGUqT2UsMCwxLHhlKTtfKCRlLE1hdGgucm91bmQoWitlZSpiZSksbmVbSmVdKX19KSxMZTw9eGU/KE8uaG9vayhxLCJzdGVwIixPZSksVS5pZD1BLnJhZihPLmxvb3ApKTpPLnN0b3AoITApfSx0aGlzLmhhbmRsZUNsaWNrPWZ1bmN0aW9uKHVlKXtmb3IodmFyIHllPU8ub3B0cywkZT11ZS50YXJnZXQ7JGUmJiRlIT09ZG9jdW1lbnQ7JGU9JGUucGFyZW50Tm9kZSlpZihrKCRlLHllLnRyaWdnZXIpKXt2YXIgVT1KU09OLnBhcnNlKCRlLmdldEF0dHJpYnV0ZSgiZGF0YS1zY3JvbGwtb3B0aW9ucyIpfHwie30iKSxxPSRlLmdldEF0dHJpYnV0ZSgiZGF0YS1zY3JvbGwiKSxpZT1xfHwkZS5nZXRBdHRyaWJ1dGUoImhyZWYiKSx3ZT1lKHt9LHllLFUpLGdlPXdlLnByZXZlbnREZWZhdWx0LEFlPXdlLnN0b3BQcm9wYWdhdGlvbix4ZT13ZS52ZXJ0aWNhbCxuZT13ZS5ob3Jpem9udGFsO2dlJiZ1ZS5wcmV2ZW50RGVmYXVsdCgpLEFlJiZ1ZS5zdG9wUHJvcGFnYXRpb24oKSxPLmN0eC4kdHJpZ2dlcj0kZSxuZSYmeGU/Ty50byhpZSx3ZSk6eGU/Ty50b1RvcChpZSx3ZSk6bmUmJk8udG9MZWZ0KGllLHdlKTticmVha319LHRoaXMuaGFuZGxlU3RvcD1mdW5jdGlvbih1ZSl7dmFyIHllPU8uY3R4LCRlPXllLm9wdHM7JGUmJiRlLmNhbmNlbGxhYmxlPyh5ZS5jYW5jZWw9ITAsTy5zdG9wKCkpOnVlLnByZXZlbnREZWZhdWx0KCl9LHRoaXMub3B0cz1lKHt9LEwsRHx8e30pO3ZhciBZPW51bGw7dCYmKHR5cGVvZiBSPT0ic3RyaW5nIj9ZPXcoUik6UiE9bnVsbD9ZPVI6WT13aW5kb3cpLHRoaXMuJGVsPVksWSYmdGhpcy5iaW5kKCEwLCExKX1yZXR1cm4gQS5jcmVhdGU9ZnVuY3Rpb24oRCxSKXtyZXR1cm4gbmV3IEEoRCxSKX0sQS5wcm90b3R5cGUudG89ZnVuY3Rpb24oRCxSKXtpZih0KXt2YXIgTz10aGlzLFk9Ty4kZWwsdWU9Ty5jdHgseWU9Ty5vcHRzLCRlPXVlLiR0cmlnZ2VyLFU9ZSh7fSx5ZSxSfHx7fSkscT1VLm9mZnNldCxpZT1VLnZlcnRpY2FsLHdlPVUuaG9yaXpvbnRhbCxnZT1NKFUuaGVhZGVyKT9VLmhlYWRlcjp3KFUuaGVhZGVyKSxBZT0vXiMvLHhlPWkoRCkmJkFlLnRlc3QoRCk/RDpudWxsO2lmKHVlLm9wdHM9VSx1ZS5jYW5jZWw9ITEsdWUuaGFzaD14ZSx0aGlzLnN0b3AoKSwhIVkpe3ZhciBuZT1mZShxLGllKSxMZT1mZShELGllKSxPZT17dG9wOjAsbGVmdDowfTtpZihMZSlpZihMZS5yZWxhdGl2ZSl7dmFyIEplPUUoWSxpZT8ieSI6IngiKTtPZS50b3A9aWU/SmUrTGUudG9wOkxlLnRvcCxPZS5sZWZ0PWllP0xlLmxlZnQ6SmUrTGUubGVmdH1lbHNlIE9lPUxlO2Vsc2UgaWYoaShEKSYmRCE9PSIjIil7dmFyIHRlPXcoRCk7aWYoIXRlKXJldHVybjtPZT1QKHRlLFkpfW5lJiYoT2UudG9wKz1uZS50b3AsT2UubGVmdCs9bmUubGVmdCksZ2UmJihPZS50b3A9TWF0aC5tYXgoMCxPZS50b3AtSShnZSkuaGVpZ2h0KSk7dmFyIFo9QihZKSxlZT1aLnZpZXdwb3J0LGJlPVouc2l6ZTtpZihPZS50b3A9aWU/TWF0aC5tYXgoMCxNYXRoLm1pbihiZS5oZWlnaHQtZWUuaGVpZ2h0LE9lLnRvcCkpOkUoWSwieSIpLE9lLmxlZnQ9d2U/TWF0aC5tYXgoMCxNYXRoLm1pbihiZS53aWR0aC1lZS53aWR0aCxPZS5sZWZ0KSk6RShZLCJ4IiksdGhpcy5ob29rKFUsImJlZm9yZSIsT2UsJGUpPT09ITEpe3VlLm9wdHM9bnVsbDtyZXR1cm59dWUucG9zPU9lLHRoaXMuc3RhcnQoVSksdGhpcy5iaW5kKCExLCEwKX19fSxBLnByb3RvdHlwZS50b1RvcD1mdW5jdGlvbihELFIpe3RoaXMudG8oRCxlKHt9LFJ8fHt9LHt2ZXJ0aWNhbDohMCxob3Jpem9udGFsOiExfSkpfSxBLnByb3RvdHlwZS50b0xlZnQ9ZnVuY3Rpb24oRCxSKXt0aGlzLnRvKEQsZSh7fSxSfHx7fSx7dmVydGljYWw6ITEsaG9yaXpvbnRhbDohMH0pKX0sQS5wcm90b3R5cGUudG9FbGVtZW50PWZ1bmN0aW9uKEQsUil7dmFyIE89dGhpcy4kZWw7IXR8fCFPfHx0aGlzLnRvKFAoRCxPKSxSfHx7fSl9LEEucHJvdG90eXBlLnN0b3A9ZnVuY3Rpb24oRCl7RD09PXZvaWQgMCYmKEQ9ITEpO3ZhciBSPXRoaXMsTz1SLiRlbCxZPVIuY3R4LHVlPVkucG9zOyFPfHwhWS5wcm9ncmVzc3x8KEEuY2FmKFkuaWQpLFkucHJvZ3Jlc3M9ITEsWS5zdGFydD0wLFkuaWQ9MCxEJiZ1ZSYmKF8oTyx1ZS5sZWZ0LCJ4IiksXyhPLHVlLnRvcCwieSIpKSx0aGlzLmNvbXBsZXRlKCkpfSxBLnByb3RvdHlwZS51cGRhdGU9ZnVuY3Rpb24oRCl7aWYodGhpcy4kZWwpe3ZhciBSPWUoe30sdGhpcy5vcHRzLEQpO3RoaXMuc3RvcCgpLHRoaXMudW5iaW5kKCEwLCEwKSx0aGlzLm9wdHM9Uix0aGlzLmJpbmQoITAsITEpfX0sQS5wcm90b3R5cGUuZGVzdHJveT1mdW5jdGlvbigpe3RoaXMuJGVsJiYodGhpcy5zdG9wKCksdGhpcy51bmJpbmQoITAsITApLHRoaXMuJGVsPW51bGwpfSxBLnByb3RvdHlwZS5vbkJlZm9yZT1mdW5jdGlvbihELFIpe3JldHVybiEwfSxBLnByb3RvdHlwZS5vblN0ZXA9ZnVuY3Rpb24oRCl7fSxBLnByb3RvdHlwZS5vbkFmdGVyPWZ1bmN0aW9uKEQsUil7fSxBLnByb3RvdHlwZS5vbkNhbmNlbD1mdW5jdGlvbigpe30sQS5wcm90b3R5cGUub25Db21wbGV0ZT1mdW5jdGlvbihEKXt9LEEucHJvdG90eXBlLnN0YXJ0PWZ1bmN0aW9uKEQpe3ZhciBSPXRoaXMuY3R4O1Iub3B0cz1ELFIucHJvZ3Jlc3M9ITAsUi5lYXNpbmc9byhELmVhc2luZyk/RC5lYXNpbmc6Z1tELmVhc2luZ107dmFyIE89dGhpcy4kZWwsWT17dG9wOkUoTywieSIpLGxlZnQ6RShPLCJ4Iil9O1Iuc3RhcnRQb3M9WSxSLmlkPUEucmFmKHRoaXMubG9vcCl9LEEucHJvdG90eXBlLmNvbXBsZXRlPWZ1bmN0aW9uKCl7dmFyIEQ9dGhpcyxSPUQuJGVsLE89RC5jdHgsWT1PLmhhc2gsdWU9Ty5jYW5jZWwseWU9Ty5vcHRzLCRlPU8ucG9zLFU9Ty4kdHJpZ2dlcjtpZighKCFSfHwheWUpKXtpZihZIT1udWxsJiZZIT09d2luZG93LmxvY2F0aW9uLmhhc2gpe3ZhciBxPXllLnVwZGF0ZVVSTDt0JiZyJiZxIT09ITEmJndpbmRvdy5oaXN0b3J5W3E9PT0icmVwbGFjZSI/InJlcGxhY2VTdGF0ZSI6InB1c2hTdGF0ZSJdKG51bGwsIiIsWSl9dGhpcy51bmJpbmQoITEsITApLE8ub3B0cz1udWxsLE8uJHRyaWdnZXI9bnVsbCx1ZT90aGlzLmhvb2soeWUsImNhbmNlbCIpOnRoaXMuaG9vayh5ZSwiYWZ0ZXIiLCRlLFUpLHRoaXMuaG9vayh5ZSwiY29tcGxldGUiLHVlKX19LEEucHJvdG90eXBlLmhvb2s9ZnVuY3Rpb24oRCxSKXtmb3IodmFyIE89W10sWT0yO1k8YXJndW1lbnRzLmxlbmd0aDtZKyspT1tZLTJdPWFyZ3VtZW50c1tZXTt2YXIgdWUseWU9RFtSXSwkZSxVO3JldHVybiBvKHllKSYmKCRlPXllLmFwcGx5KHRoaXMsTy5jb25jYXQoW3RoaXNdKSkpLFU9KHVlPXRoaXMpWyJvbiIrKFJbMF0udG9VcHBlckNhc2UoKStSLnNsaWNlKDEpKV0uYXBwbHkodWUsTyksJGUhPT12b2lkIDA/JGU6VX0sQS5wcm90b3R5cGUuYmluZD1mdW5jdGlvbihELFIpe3ZhciBPPXRoaXMsWT1PLiRlbCx1ZT1PLmN0eC5vcHRzO1kmJihEJiZhZShZLFEsdGhpcy5oYW5kbGVDbGljaywhMSksUiYmYWUoWSxrZSx0aGlzLmhhbmRsZVN0b3AsdWU/dWUuY2FuY2VsbGFibGU6ITApKX0sQS5wcm90b3R5cGUudW5iaW5kPWZ1bmN0aW9uKEQsUil7dmFyIE89dGhpcyxZPU8uJGVsLHVlPU8uY3R4Lm9wdHM7WSYmKEQmJlQoWSxRLHRoaXMuaGFuZGxlQ2xpY2ssITEpLFImJlQoWSxrZSx0aGlzLmhhbmRsZVN0b3AsdWU/dWUuY2FuY2VsbGFibGU6ITApKX0sQS5yYWY9ZCxBLmNhZj1mLEF9KSgpO3JldHVybiBHfSl9KTt2YXIgS3RlLEViLFBtPWwoKCk9PntlZ3QoKTtxeCgpO2YwKCk7cUooKTtXcGUoKTtDbygpO2U4ZSgpO2EyKCk7bjhlKCk7RHgoKTtsOGUoKTtUdWUoKTtRdGUoKTtaSigpO3l4KCk7YjZlKCk7eUooKTtEQ3QoKTtLdGU9QXIoSThlKCksMSksRWI9e09iamVjdE1hcDpFbCxTdHJpbmdtYXA6TXgsRmFzdE1hcDpyZH19KTt2YXIgRWE9e307cWUoRWEse2NvbnRhaW5lckNvbnRleHRTdHlsZXM6KCk9PmoxYSxjc3NGb3JDb25zdHJhaW50OigpPT5IMWEsY3NzRm9yQ29uc3RyYWludENvbnRhaW5lcjooKT0+cTFhLGNzc0ZvckNvbnRhaW5lcjooKT0+RkN0LGNzc0ZvckRlc2t0b3A6KCk9PlYxYSxjc3NGb3JOb3RlYm9vazooKT0+VTFhLGNzc0ZvclBoYWJsZXQ6KCk9PkcxYSxjc3NGb3JQaG9uZTooKT0+WTFhLGNzc0ZvclRhYmxldDooKT0+VzFhLGNzc0ZvclZpZXdwb3J0OigpPT5IZCxkZXNrdG9wOigpPT5FQ3Qsbm90ZWJvb2s6KCk9PiRDdCxwaGFibGV0OigpPT5JQ3QscGhvbmU6KCk9Pk5DdCx0YWJsZXQ6KCk9PlBDdH0pO3ZhciBFQ3QsJEN0LFBDdCxJQ3QsTkN0LEFDdCxIZCxGQ3QsSDFhLHExYSxqMWEsVjFhLFUxYSxXMWEsRzFhLFkxYSxOOGU9bCgoKT0+e0ltKCk7bW4oKTtFQ3Q9MTYwMCwkQ3Q9MTI0MCxQQ3Q9MTAyNCxJQ3Q9NjAwLE5DdD00MDAsQUN0PWU9PntsZXQgdD1bXTtyZXR1cm4gZS5taW5XaWR0aCYmdC5wdXNoKGAobWluLXdpZHRoOiAke2UubWluV2lkdGh9cHgpYCksZS5tYXhXaWR0aCYmdC5wdXNoKGAobWF4LXdpZHRoOiAke2UubWF4V2lkdGh9cHgpYCksdC5qb2luKCIgYW5kICIpfSxIZD0oZSx0KT0+SnIoYAogICAgQGNvbnRhaW5lciB3Y2NUb29sc1ZpZXdwb3J0ICR7dH0gewogICAgICAke2UuY3NzVGV4dH0KICAgIH0KICAgIEBtZWRpYSAke3R9IHsKICAgICAgJHtlLmNzc1RleHR9CiAgICB9CiAgYCksRkN0PShlLHQscik9PkpyKGAKICAgIEBjb250YWluZXIgJHtyfSAke3R9IHsKICAgICAgJHtlLmNzc1RleHR9CiAgICB9CiAgYCksSDFhPWU9PnQ9PkhkKHQsQUN0KGUpKSxxMWE9KGUsdCk9PnI9PkZDdChyLEFDdChlKSx0KSxqMWE9ZT0+aGFgCiAgOmhvc3QgewogICAgY29udGFpbmVyLXR5cGU6IGlubGluZS1zaXplOwogICAgY29udGFpbmVyLW5hbWU6ICR7SnIoZSl9OwogIH0KYCxWMWE9ZT0+SGQoZSxgKG1pbi13aWR0aDogJHtFQ3R9cHgpYCksVTFhPWU9PkhkKGUsYChtYXgtd2lkdGg6ICR7JEN0fXB4KWApLFcxYT1lPT5IZChlLGAobWF4LXdpZHRoOiAke1BDdH1weClgKSxHMWE9ZT0+SGQoZSxgKG1heC13aWR0aDogJHtJQ3R9cHgpYCksWTFhPWU9PkhkKGUsYChtYXgtd2lkdGg6ICR7TkN0fXB4KWApfSk7dmFyIGVyZSxPQ3Q9bCgoKT0+e1BtKCk7ZXJlPWNsYXNze2RvbXRvb2xzSW5zdGFuY2U7c2Nyb2xsQ2FsbGJhY2tzPVtdO2xlbmlzSW5zdGFuY2U9bnVsbDtoYW5kbGVOYXRpdmVTY3JvbGw9dD0+e3RoaXMuZXhlY3V0ZVNjcm9sbENhbGxiYWNrcygpfTtoYW5kbGVMZW5pc1Njcm9sbD10PT57dGhpcy5leGVjdXRlU2Nyb2xsQ2FsbGJhY2tzKCl9O2NvbnN0cnVjdG9yKHQpe3RoaXMuZG9tdG9vbHNJbnN0YW5jZT10LHRoaXMuYXR0YWNoTmF0aXZlU2Nyb2xsTGlzdGVuZXIoKX1zd2VldFNjcm9sbGVyPW5ldyBLdGUuZGVmYXVsdCh7fSk7YXN5bmMgdG9FbGVtZW50KHQscil7dGhpcy5zd2VldFNjcm9sbGVyLnRvRWxlbWVudCh0LHIpLGF3YWl0IFp0LmRlbGF5Rm9yKHIuZHVyYXRpb24pfWFzeW5jIGRldGVjdE5hdGl2ZVNtb290aFNjcm9sbCgpe2xldCB0PXB0LmRlZmVyKCkscj0xMDAsYT0zLGk9Ljc1LG89W107ZnVuY3Rpb24gbihjKXtvLnB1c2goYy5kZWx0YVkpLG8ubGVuZ3RoPj1yJiYod2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoIndoZWVsIixuKSxzKCkpfWZ1bmN0aW9uIHMoKXtsZXQgYz1vLmxlbmd0aC0xLGQ9MDtmb3IobGV0IHU9MDt1PGM7dSsrKU1hdGguYWJzKG9bdSsxXS1vW3VdKTw9YSYmZCsrO2QvYz49aT8oY29uc29sZS5sb2coIlNtb290aCBzY3JvbGxpbmcgZGV0ZWN0ZWQuIiksdC5yZXNvbHZlKCEwKSk6KGNvbnNvbGUubG9nKCJTbW9vdGggc2Nyb2xsaW5nIE5PVCBkZXRlY3RlZC4iKSx0LnJlc29sdmUoITEpKX1yZXR1cm4gd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIndoZWVsIixuKSx0LnByb21pc2V9YXN5bmMgZW5hYmxlTGVuaXNTY3JvbGwodCl7bGV0IHI9bmV3IEFiKHthdXRvUmFmOiEwfSk7aWYodD8uZGlzYWJsZU9uTmF0aXZlU21vb3RoU2Nyb2xsJiZhd2FpdCB0aGlzLmRldGVjdE5hdGl2ZVNtb290aFNjcm9sbCgpKXtyLmRlc3Ryb3koKTtyZXR1cm59dGhpcy5sZW5pc0luc3RhbmNlPXIsdGhpcy5kZXRhY2hOYXRpdmVTY3JvbGxMaXN0ZW5lcigpLHRoaXMuYXR0YWNoTGVuaXNTY3JvbGxMaXN0ZW5lcigpO2xldCBhPXIuZGVzdHJveS5iaW5kKHIpO3IuZGVzdHJveT0oKT0+e2EoKSx0aGlzLmRldGFjaExlbmlzU2Nyb2xsTGlzdGVuZXIoKSx0aGlzLmF0dGFjaE5hdGl2ZVNjcm9sbExpc3RlbmVyKCksdGhpcy5sZW5pc0luc3RhbmNlPW51bGx9fW9uU2Nyb2xsKHQpe3RoaXMuc2Nyb2xsQ2FsbGJhY2tzLnB1c2godCl9ZXhlY3V0ZVNjcm9sbENhbGxiYWNrcygpe3RoaXMuc2Nyb2xsQ2FsbGJhY2tzLmZvckVhY2godD0+e3RyeXt0KCl9Y2F0Y2gocil7Y29uc29sZS5lcnJvcigiRXJyb3IgaW4gc2Nyb2xsIGNhbGxiYWNrOiIscil9fSl9YXR0YWNoTmF0aXZlU2Nyb2xsTGlzdGVuZXIoKXt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigic2Nyb2xsIix0aGlzLmhhbmRsZU5hdGl2ZVNjcm9sbCl9ZGV0YWNoTmF0aXZlU2Nyb2xsTGlzdGVuZXIoKXt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigic2Nyb2xsIix0aGlzLmhhbmRsZU5hdGl2ZVNjcm9sbCl9YXR0YWNoTGVuaXNTY3JvbGxMaXN0ZW5lcigpe3RoaXMubGVuaXNJbnN0YW5jZSYmdGhpcy5sZW5pc0luc3RhbmNlLm9uKCJzY3JvbGwiLHRoaXMuaGFuZGxlTGVuaXNTY3JvbGwpfWRldGFjaExlbmlzU2Nyb2xsTGlzdGVuZXIoKXt0aGlzLmxlbmlzSW5zdGFuY2UmJnRoaXMubGVuaXNJbnN0YW5jZS5vZmYoInNjcm9sbCIsdGhpcy5oYW5kbGVMZW5pc1Njcm9sbCl9fX0pO3ZhciB0cmUsUkN0PWwoKCk9PntJbSgpO1BtKCk7dHJlPWNsYXNze2RvbXRvb2xzUmVmO2dvQnJpZ2h0Qm9vbGVhbj0hMTtwcmVmZXJyZWRDb2xvclNjaGVtZU1lZGlhTWF0Y2g9d2luZG93Lm1hdGNoTWVkaWEoIihwcmVmZXJzLWNvbG9yLXNjaGVtZTogbGlnaHQpIik7dGhlbWVPYnNlcnZhYmxlPW5ldyAkci5yeGpzLlJlcGxheVN1YmplY3QoMSk7Y29uc3RydWN0b3IodCl7dGhpcy5kb210b29sc1JlZj10LHRoaXMuZ29CcmlnaHRCb29sZWFuPXRoaXMucHJlZmVycmVkQ29sb3JTY2hlbWVNZWRpYU1hdGNoLm1hdGNoZXMsdGhpcy5wcmVmZXJyZWRDb2xvclNjaGVtZU1lZGlhTWF0Y2guYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixyPT57dGhpcy5nb0JyaWdodEJvb2xlYW49ci5tYXRjaGVzLHRoaXMudXBkYXRlQWxsQ29ubmVjdGVkRWxlbWVudHMoKX0pLHRoaXMudXBkYXRlQWxsQ29ubmVjdGVkRWxlbWVudHMoKX1hc3luYyBlbmFibGVBdXRvbWF0aWNHbG9iYWxUaGVtZUNoYW5nZSgpe2RvY3VtZW50LmJvZHkmJmRvY3VtZW50LmJvZHkuc3R5bGUmJnRoaXMudGhlbWVPYnNlcnZhYmxlLnN1YnNjcmliZSh7bmV4dDp0PT57ZG9jdW1lbnQuYm9keS5zdHlsZS5iYWNrZ3JvdW5kPXQ/IiNmZmYiOiIjMDAwIn19KX1hc3luYyB1cGRhdGVBbGxDb25uZWN0ZWRFbGVtZW50cygpe3RoaXMudGhlbWVPYnNlcnZhYmxlLm5leHQodGhpcy5nb0JyaWdodEJvb2xlYW4pfWdvQnJpZ2h0KCl7dGhpcy5nb0JyaWdodEJvb2xlYW49ITAsdGhpcy51cGRhdGVBbGxDb25uZWN0ZWRFbGVtZW50cygpfWdvRGFyaygpe3RoaXMuZ29CcmlnaHRCb29sZWFuPSExLHRoaXMudXBkYXRlQWxsQ29ubmVjdGVkRWxlbWVudHMoKX10b2dnbGVEYXJrQnJpZ2h0KCl7dGhpcy5nb0JyaWdodEJvb2xlYW49IXRoaXMuZ29CcmlnaHRCb29sZWFuLHRoaXMudXBkYXRlQWxsQ29ubmVjdGVkRWxlbWVudHMoKX19fSk7dmFyIEY4ZSxycmUsQkN0PWwoKCk9PntQbSgpOyhmdW5jdGlvbihlKXtlW2UuQmFja3NwYWNlPThdPSJCYWNrc3BhY2UiLGVbZS5UYWI9OV09IlRhYiIsZVtlLkVudGVyPTEzXT0iRW50ZXIiLGVbZS5TaGlmdD0xNl09IlNoaWZ0IixlW2UuQ3RybD0xN109IkN0cmwiLGVbZS5BbHQ9MThdPSJBbHQiLGVbZS5QYXVzZUJyZWFrPTE5XT0iUGF1c2VCcmVhayIsZVtlLkNhcHNMb2NrPTIwXT0iQ2Fwc0xvY2siLGVbZS5Fc2NhcGU9MjddPSJFc2NhcGUiLGVbZS5TcGFjZT0zMl09IlNwYWNlIixlW2UuUGFnZVVwPTMzXT0iUGFnZVVwIixlW2UuUGFnZURvd249MzRdPSJQYWdlRG93biIsZVtlLkVuZD0zNV09IkVuZCIsZVtlLkhvbWU9MzZdPSJIb21lIixlW2UuTGVmdEFycm93PTM3XT0iTGVmdEFycm93IixlW2UuVXBBcnJvdz0zOF09IlVwQXJyb3ciLGVbZS5SaWdodEFycm93PTM5XT0iUmlnaHRBcnJvdyIsZVtlLkRvd25BcnJvdz00MF09IkRvd25BcnJvdyIsZVtlLkluc2VydD00NV09Ikluc2VydCIsZVtlLkRlbGV0ZT00Nl09IkRlbGV0ZSIsZVtlLlplcm89NDhdPSJaZXJvIixlW2UuQ2xvc2VkUGFyZW49NDhdPSJDbG9zZWRQYXJlbiIsZVtlLk9uZT00OV09Ik9uZSIsZVtlLkV4Y2xhbWF0aW9uTWFyaz00OV09IkV4Y2xhbWF0aW9uTWFyayIsZVtlLlR3bz01MF09IlR3byIsZVtlLkF0U2lnbj01MF09IkF0U2lnbiIsZVtlLlRocmVlPTUxXT0iVGhyZWUiLGVbZS5Qb3VuZFNpZ249NTFdPSJQb3VuZFNpZ24iLGVbZS5IYXNoPTUxXT0iSGFzaCIsZVtlLkZvdXI9NTJdPSJGb3VyIixlW2UuRG9sbGFyU2lnbj01Ml09IkRvbGxhclNpZ24iLGVbZS5GaXZlPTUzXT0iRml2ZSIsZVtlLlBlcmNlbnRTaWduPTUzXT0iUGVyY2VudFNpZ24iLGVbZS5TaXg9NTRdPSJTaXgiLGVbZS5DYXJldD01NF09IkNhcmV0IixlW2UuSGF0PTU0XT0iSGF0IixlW2UuU2V2ZW49NTVdPSJTZXZlbiIsZVtlLkFtcGVyc2FuZD01NV09IkFtcGVyc2FuZCIsZVtlLkVpZ2h0PTU2XT0iRWlnaHQiLGVbZS5TdGFyPTU2XT0iU3RhciIsZVtlLkFzdGVyaWs9NTZdPSJBc3RlcmlrIixlW2UuTmluZT01N109Ik5pbmUiLGVbZS5PcGVuUGFyZW49NTddPSJPcGVuUGFyZW4iLGVbZS5BPTY1XT0iQSIsZVtlLkI9NjZdPSJCIixlW2UuQz02N109IkMiLGVbZS5EPTY4XT0iRCIsZVtlLkU9NjldPSJFIixlW2UuRj03MF09IkYiLGVbZS5HPTcxXT0iRyIsZVtlLkg9NzJdPSJIIixlW2UuST03M109IkkiLGVbZS5KPTc0XT0iSiIsZVtlLks9NzVdPSJLIixlW2UuTD03Nl09IkwiLGVbZS5NPTc3XT0iTSIsZVtlLk49NzhdPSJOIixlW2UuTz03OV09Ik8iLGVbZS5QPTgwXT0iUCIsZVtlLlE9ODFdPSJRIixlW2UuUj04Ml09IlIiLGVbZS5TPTgzXT0iUyIsZVtlLlQ9ODRdPSJUIixlW2UuVT04NV09IlUiLGVbZS5WPTg2XT0iViIsZVtlLlc9ODddPSJXIixlW2UuWD04OF09IlgiLGVbZS5ZPTg5XT0iWSIsZVtlLlo9OTBdPSJaIixlW2UuTGVmdFdpbmRvd0tleT05MV09IkxlZnRXaW5kb3dLZXkiLGVbZS5SaWdodFdpbmRvd0tleT05Ml09IlJpZ2h0V2luZG93S2V5IixlW2UuU2VsZWN0S2V5PTkzXT0iU2VsZWN0S2V5IixlW2UuTnVtcGFkMD05Nl09Ik51bXBhZDAiLGVbZS5OdW1wYWQxPTk3XT0iTnVtcGFkMSIsZVtlLk51bXBhZDI9OThdPSJOdW1wYWQyIixlW2UuTnVtcGFkMz05OV09Ik51bXBhZDMiLGVbZS5OdW1wYWQ0PTEwMF09Ik51bXBhZDQiLGVbZS5OdW1wYWQ1PTEwMV09Ik51bXBhZDUiLGVbZS5OdW1wYWQ2PTEwMl09Ik51bXBhZDYiLGVbZS5OdW1wYWQ3PTEwM109Ik51bXBhZDciLGVbZS5OdW1wYWQ4PTEwNF09Ik51bXBhZDgiLGVbZS5OdW1wYWQ5PTEwNV09Ik51bXBhZDkiLGVbZS5NdWx0aXBseT0xMDZdPSJNdWx0aXBseSIsZVtlLkFkZD0xMDddPSJBZGQiLGVbZS5TdWJ0cmFjdD0xMDldPSJTdWJ0cmFjdCIsZVtlLkRlY2ltYWxQb2ludD0xMTBdPSJEZWNpbWFsUG9pbnQiLGVbZS5EaXZpZGU9MTExXT0iRGl2aWRlIixlW2UuRjE9MTEyXT0iRjEiLGVbZS5GMj0xMTNdPSJGMiIsZVtlLkYzPTExNF09IkYzIixlW2UuRjQ9MTE1XT0iRjQiLGVbZS5GNT0xMTZdPSJGNSIsZVtlLkY2PTExN109IkY2IixlW2UuRjc9MTE4XT0iRjciLGVbZS5GOD0xMTldPSJGOCIsZVtlLkY5PTEyMF09IkY5IixlW2UuRjEwPTEyMV09IkYxMCIsZVtlLkYxMT0xMjJdPSJGMTEiLGVbZS5GMTI9MTIzXT0iRjEyIixlW2UuTnVtTG9jaz0xNDRdPSJOdW1Mb2NrIixlW2UuU2Nyb2xsTG9jaz0xNDVdPSJTY3JvbGxMb2NrIixlW2UuU2VtaUNvbG9uPTE4Nl09IlNlbWlDb2xvbiIsZVtlLkVxdWFscz0xODddPSJFcXVhbHMiLGVbZS5Db21tYT0xODhdPSJDb21tYSIsZVtlLkRhc2g9MTg5XT0iRGFzaCIsZVtlLlBlcmlvZD0xOTBdPSJQZXJpb2QiLGVbZS5VbmRlclNjb3JlPTE4OV09IlVuZGVyU2NvcmUiLGVbZS5QbHVzU2lnbj0xODddPSJQbHVzU2lnbiIsZVtlLkZvcndhcmRTbGFzaD0xOTFdPSJGb3J3YXJkU2xhc2giLGVbZS5UaWxkZT0xOTJdPSJUaWxkZSIsZVtlLkdyYXZlQWNjZW50PTE5Ml09IkdyYXZlQWNjZW50IixlW2UuT3BlbkJyYWNrZXQ9MjE5XT0iT3BlbkJyYWNrZXQiLGVbZS5DbG9zZWRCcmFja2V0PTIyMV09IkNsb3NlZEJyYWNrZXQiLGVbZS5RdW90ZT0yMjJdPSJRdW90ZSJ9KShGOGV8fChGOGU9e30pKTtycmU9Y2xhc3N7ZG9tTm9kZTttYXBDb21ib3NUb0hhbmRsZXJzPW5ldyBNYXA7cHJlc3NlZEtleXM9bmV3IFNldDtjb25zdHJ1Y3Rvcih0KXt0aGlzLmRvbU5vZGU9dCx0aGlzLnN0YXJ0TGlzdGVuaW5nKCl9a2V5RW51bT1GOGU7b24odCl7bGV0IHI9bmV3ICRyLnJ4anMuU3ViamVjdDtyZXR1cm4gdGhpcy5yZWdpc3RlcktleXModCxyKSxyfXRyaWdnZXJLZXlQcmVzcyh0KXtmb3IobGV0IHIgb2YgdCl0aGlzLnByZXNzZWRLZXlzLmFkZChyKTt0aGlzLmNoZWNrTWF0Y2hpbmdLZXlib2FyZFN1YmplY3RzKCk7Zm9yKGxldCByIG9mIHQpdGhpcy5wcmVzc2VkS2V5cy5kZWxldGUocil9c3RhcnRMaXN0ZW5pbmcoKXt0aGlzLmRvbU5vZGUuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsdGhpcy5oYW5kbGVLZXlEb3duKSx0aGlzLmRvbU5vZGUuYWRkRXZlbnRMaXN0ZW5lcigia2V5dXAiLHRoaXMuaGFuZGxlS2V5VXApfXN0b3BMaXN0ZW5pbmcoKXt0aGlzLmRvbU5vZGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsdGhpcy5oYW5kbGVLZXlEb3duKSx0aGlzLmRvbU5vZGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5dXAiLHRoaXMuaGFuZGxlS2V5VXApfWNsZWFyKCl7dGhpcy5zdG9wTGlzdGVuaW5nKCksdGhpcy5tYXBDb21ib3NUb0hhbmRsZXJzLmNsZWFyKCksdGhpcy5wcmVzc2VkS2V5cy5jbGVhcigpfWhhbmRsZUtleURvd249dD0+e3RoaXMucHJlc3NlZEtleXMuYWRkKHQua2V5Q29kZSksdGhpcy5jaGVja01hdGNoaW5nS2V5Ym9hcmRTdWJqZWN0cyh0KX07Y2hlY2tNYXRjaGluZ0tleWJvYXJkU3ViamVjdHModCl7dGhpcy5tYXBDb21ib3NUb0hhbmRsZXJzLmZvckVhY2goKHIsYSk9Pnt0aGlzLmFyZUFsbEtleXNQcmVzc2VkKGEpJiZyLm5leHQodCl9KX1oYW5kbGVLZXlVcD10PT57dGhpcy5wcmVzc2VkS2V5cy5kZWxldGUodC5rZXlDb2RlKX07YXJlQWxsS2V5c1ByZXNzZWQodCl7bGV0IHI9ITA7cmV0dXJuIHQuZm9yRWFjaChhPT57dGhpcy5wcmVzc2VkS2V5cy5oYXMoYSl8fChyPSExKX0pLHJ9cmVnaXN0ZXJLZXlzKHQscil7aWYoIXRoaXMubWFwQ29tYm9zVG9IYW5kbGVycy5oYXModCkpdGhpcy5tYXBDb21ib3NUb0hhbmRsZXJzLnNldCh0LHIpO2Vsc2UgcmV0dXJuIHRoaXMubWFwQ29tYm9zVG9IYW5kbGVycy5nZXQodCl9fX0pO3ZhciBUMixJbT1sKCgpPT57UG0oKTtOOGUoKTtPQ3QoKTtRdGUoKTtSQ3QoKTtCQ3QoKTtUMj1jbGFzcyBle3N0YXRpYyBpbml0aWFsaXphdGlvblByb21pc2U9bnVsbDtzdGF0aWMgYXN5bmMgc2V0dXBEb21Ub29scyh0PXt9KXtyZXR1cm4hdC5pZ25vcmVHbG9iYWwmJmUuaW5pdGlhbGl6YXRpb25Qcm9taXNlP2F3YWl0IGUuaW5pdGlhbGl6YXRpb25Qcm9taXNlOnQuaWdub3JlR2xvYmFsP25ldyBlKHQpOihlLmluaXRpYWxpemF0aW9uUHJvbWlzZT0oYXN5bmMoKT0+e2xldCByO2lmKGdsb2JhbFRoaXMuZGVlc0RvbVRvb2xzKXI9Z2xvYmFsVGhpcy5kZWVzRG9tVG9vbHM7ZWxzZXtnbG9iYWxUaGlzLmRlZXNEb21Ub29scz1uZXcgZSh0KSxyPWdsb2JhbFRoaXMuZGVlc0RvbVRvb2xzO2xldCBhPSgpPT57KGRvY3VtZW50LnJlYWR5U3RhdGU9PT0iaW50ZXJhY3RpdmUifHxkb2N1bWVudC5yZWFkeVN0YXRlPT09ImNvbXBsZXRlIikmJihyLmVsZW1lbnRzLmhlYWRFbGVtZW50PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImhlYWQiKSxyLmVsZW1lbnRzLmJvZHlFbGVtZW50PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImJvZHkiKSxyLmtleWJvYXJkPW5ldyBycmUoZG9jdW1lbnQuYm9keSksci5kb21SZWFkeS5yZXNvbHZlKCkpfTtkb2N1bWVudC5yZWFkeVN0YXRlPT09ImludGVyYWN0aXZlInx8ZG9jdW1lbnQucmVhZHlTdGF0ZT09PSJjb21wbGV0ZSI/YSgpOmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInJlYWR5c3RhdGVjaGFuZ2UiLGEpLHIuZG9tVG9vbHNSZWFkeS5yZXNvbHZlKCl9cmV0dXJuIGF3YWl0IHIuZG9tVG9vbHNSZWFkeS5wcm9taXNlLHJ9KSgpLGF3YWl0IGUuaW5pdGlhbGl6YXRpb25Qcm9taXNlKX1zdGF0aWMgZ2V0R2xvYmFsRG9tVG9vbHNTeW5jKCl7aWYoIWdsb2JhbFRoaXMuZGVlc0RvbVRvb2xzKXRocm93IG5ldyBFcnJvcigiWW91IHRyaWVkIHRvIGFjY2VzcyBkb210b29scyBzeW5jaHJvbm91c2x5IHRvbyBlYXJseSIpO3JldHVybiBnbG9iYWxUaGlzLmRlZXNEb21Ub29sc31lbGVtZW50cz17aGVhZEVsZW1lbnQ6bnVsbCxib2R5RWxlbWVudDpudWxsfTt3ZWJzZXR1cD1uZXcgRGIoe21ldGFPYmplY3Q6e3RpdGxlOiIifX0pO3NtYXJ0c3RhdGU9bmV3IFEwLlNtYXJ0c3RhdGU7ZG9tVG9vbHNTdGF0ZVBhcnQ9dGhpcy5zbWFydHN0YXRlLmdldFN0YXRlUGFydCgiZG9tdG9vbHMiLHt2aXJ0dWFsVmlld3BvcnQ6Im5hdGl2ZSIsand0Om51bGx9KTtyb3V0ZXI9bmV3IFgwLlNtYXJ0Um91dGVyKHtkZWJ1ZzohMX0pO2NvbnZlbmllbmNlPXt0eXBlZHJlcXVlc3Q6YW8sc21hcnRkZWxheTpadCxzbWFydGpzb246b3Msc21hcnR1cmw6SzB9O2RlZXNDb21tcz1uZXcgVXguRGVlc0NvbW1zO3Njcm9sbGVyPW5ldyBlcmUodGhpcyk7dGhlbWVNYW5hZ2VyPW5ldyB0cmUodGhpcyk7a2V5Ym9hcmQ9bnVsbDtkb21Ub29sc1JlYWR5PXB0LmRlZmVyKCk7ZG9tUmVhZHk9cHQuZGVmZXIoKTtnbG9iYWxTdHlsZXNSZWFkeT1wdC5kZWZlcigpO2NvbnN0cnVjdG9yKHQpe31ydW5PbmNlVHJhY2tlclN0cmluZ01hcD1uZXcgRWIuU3RyaW5nbWFwO3J1bk9uY2VSZXN1bHRNYXA9bmV3IEViLkZhc3RNYXA7cnVuT25jZUVycm9yTWFwPW5ldyBFYi5GYXN0TWFwO2FzeW5jIHJ1bk9uY2UodCxyKXtsZXQgYT1gJHt0fStydW5uaW5nQ2hlY2tgO2lmKCF0aGlzLnJ1bk9uY2VUcmFja2VyU3RyaW5nTWFwLmNoZWNrU3RyaW5nKHQpKXt0aGlzLnJ1bk9uY2VUcmFja2VyU3RyaW5nTWFwLmFkZFN0cmluZyh0KSx0aGlzLnJ1bk9uY2VUcmFja2VyU3RyaW5nTWFwLmFkZFN0cmluZyhhKTt0cnl7bGV0IGk9YXdhaXQgcigpO3RoaXMucnVuT25jZVJlc3VsdE1hcC5hZGRUb01hcCh0LGkpfWNhdGNoKGkpe3RoaXMucnVuT25jZUVycm9yTWFwLmFkZFRvTWFwKHQsaSl9ZmluYWxseXt0aGlzLnJ1bk9uY2VUcmFja2VyU3RyaW5nTWFwLnJlbW92ZVN0cmluZyhhKX19cmV0dXJuIGF3YWl0IHRoaXMucnVuT25jZVRyYWNrZXJTdHJpbmdNYXAucmVnaXN0ZXJVbnRpbFRydWUoaT0+IWkuaW5jbHVkZXMoYSksKCk9PntsZXQgaT10aGlzLnJ1bk9uY2VFcnJvck1hcC5nZXRCeUtleSh0KTtpZihpKXRocm93IGk7cmV0dXJuIHRoaXMucnVuT25jZVJlc3VsdE1hcC5nZXRCeUtleSh0KX0pfWFzeW5jIHNldEdsb2JhbFN0eWxlcyh0KXthd2FpdCB0aGlzLmRvbVJlYWR5LnByb21pc2U7bGV0IHI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3R5bGUiKTtyLnR5cGU9InRleHQvY3NzIixyLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKHQpKSx0aGlzLmVsZW1lbnRzLmhlYWRFbGVtZW50LmFwcGVuZENoaWxkKHIpfWFzeW5jIHNldEV4dGVybmFsU2NyaXB0KHQpe2F3YWl0IHRoaXMuZG9tUmVhZHkucHJvbWlzZTtsZXQgcj1wdC5kZWZlcigpLGE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7YS5zcmM9dCxhLmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLGZ1bmN0aW9uKCl7ci5yZXNvbHZlKCl9KSwoZG9jdW1lbnQuaGVhZHx8ZG9jdW1lbnQuYm9keSkuYXBwZW5kKGEpLGF3YWl0IHIucHJvbWlzZX1hc3luYyBzZXRFeHRlcm5hbENzcyh0KXtsZXQgcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJsaW5rIik7ci5yZWw9InN0eWxlc2hlZXQiLHIuY3Jvc3NPcmlnaW49ImFub255bW91cyIsci5ocmVmPXQsZG9jdW1lbnQuaGVhZC5hcHBlbmQocil9YXN5bmMgc2V0V2Vic2l0ZUluZm8odCl7YXdhaXQgdGhpcy53ZWJzZXR1cC5zZXR1cCh0KSxhd2FpdCB0aGlzLndlYnNldHVwLnJlYWR5UHJvbWlzZX19fSk7dmFyIGFyZSxIQ3QscUN0PWwoKCk9PntJbSgpO21uKCk7YXJlPSgoKT0+e2xldCBlPW5hdmlnYXRvci51c2VyQWdlbnQuaW5kZXhPZigiTWFjIE9TIFgiKT09PS0xP2hhYGAuY3NzVGV4dDoiIjtyZXR1cm4gaGFgCiAgICAvKiB3aWR0aCAqLwogICAgOjotd2Via2l0LXNjcm9sbGJhciB7CiAgICAgIHdpZHRoOiAwcHg7CiAgICB9CiAgICBib2R5IHsKICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOwogICAgfQogIGAuY3NzVGV4dH0pKCksSEN0PWhhYAogIC8qCiAgQGZvbnQtZmFjZSB7CiAgICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJzsKICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsKICAgIGZvbnQtd2VpZ2h0OiA0MDA7CiAgICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvbWF0ZXJpYWxpY29ucy92NDIvZmxVaFJxNnR6WmNsUUVKLVZkZy1JdWlhRHNOY0loUTh0US53b2ZmMikKICAgICAgZm9ybWF0KCd3b2ZmMicpOwogIH0gKi8KCiAgLyogZ2xvYmFsIGJvZHkgc3R5bGVzICovCiAgYm9keSB7CiAgICBtYXJnaW46IDBweDsKICAgIGZvbnQtZmFtaWx5OiAnR2Vpc3QgU2FucycsICdJbnRlcicsIHNhbnMtc2VyaWY7CiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogIH0KCiAgLyogc2Nyb2xsIGJhciBzdHlsZXMgKi8KICAke0pyKGFyZSl9CmAuY3NzVGV4dH0pO3ZhciBObT17fTtxZShObSx7c2V0dXA6KCk9PlExYSxzdGF0aWNTdHlsZXM6KCk9PloxYSxzdHlsZXM6KCk9PlgxYX0pO3ZhciBaMWEsWDFhLFExYSxqQ3Q9bCgoKT0+e1BtKCk7SW0oKTtxQ3QoKTttbigpO1oxYT1oYWAKICAqIHsKICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xcywgY29sb3IgMC4xczsKICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgfQoKICA6aG9zdCB7CiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgZm9udC1mYW1pbHk6ICdHZWlzdCBTYW5zJywgJ0ludGVyJywgc2Fucy1zZXJpZjsKICB9CgogICR7SnIoYXJlKX0KYCxYMWE9RHRgCiAgPHN0eWxlPgogICAgKiB7CiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xcywgY29sb3IgMC4xczsKICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgIH0KCiAgICA6aG9zdCB7CiAgICAgIGZvbnQtZmFtaWx5OiAnR2Vpc3QgU2FucycsICdJbnRlcicsIHNhbnMtc2VyaWY7CiAgICB9CgogICAgJHthcmV9CiAgPC9zdHlsZT4KYCxRMWE9YXN5bmMoZSx0PXt9KT0+e2xldCByPWF3YWl0IFQyLnNldHVwRG9tVG9vbHModCk7cmV0dXJuIHIucnVuT25jZSgiZWxlbWVudEJhc2ljU2V0dXAiLGFzeW5jKCk9PntyLnNldEdsb2JhbFN0eWxlcyhIQ3QpfSkscn19KTt2YXIgaXJlPXt9O3FlKGlyZSx7Y3NzR3JpZENvbHVtbnM6KCk9PksxYX0pO3ZhciBLMWEsVkN0PWwoKCk9PntLMWE9KGUsdCk9PntsZXQgcj0iIjtmb3IobGV0IGE9MDthPGU7YSsrKXIrPWAgY2FsYygoMTAwJS8ke2V9KSAtICgke3QqKGUtMSl9cHgvJHtlfSkpYDtyZXR1cm4gcn19KTt2YXIgb3JlPXt9O3FlKG9yZSx7U3dlZXRTY3JvbGw6KCk9Pk84ZS5kZWZhdWx0LHNtYXJ0ZGVsYXk6KCk9Plp0LHNtYXJ0bWFya2Rvd246KCk9PkVtLHNtYXJ0cHJvbWlzZTooKT0+cHQsc21hcnRyb3V0ZXI6KCk9PlgwLHNtYXJ0cng6KCk9PiRyLHNtYXJ0c3RhdGU6KCk9PlEwLHNtYXJ0c3RyaW5nOigpPT5BMSxzbWFydHVybDooKT0+SzAsdHlwZWRyZXF1ZXN0OigpPT5hb30pO3ZhciBPOGUsVUN0PWwoKCk9PntmMCgpO1dwZSgpO0NvKCk7TzhlPUFyKEk4ZSgpLDEpO244ZSgpO2U4ZSgpO2EyKCk7RHgoKTtsOGUoKTtxeCgpfSk7dmFyIEFvPXt9O3FlKEFvLHtEb21Ub29sczooKT0+VDIsVHlwZWRSZXF1ZXN0OigpPT5IeCxicmVha3BvaW50czooKT0+RWEsY3NzOigpPT5pcmUsZWxlbWVudEJhc2ljOigpPT5ObSxwbHVnaW5zOigpPT5vcmV9KTt2YXIgJGI9bCgoKT0+e0hkdCgpO2pDdCgpO044ZSgpO1ZDdCgpO0ltKCk7cXgoKTtRdGUoKTtVQ3QoKX0pO3ZhciBSOGUsdDQsQjhlPWwoKCk9PntSOGU9QXIoYlgoKSwxKTthMigpO21uKCk7QmR0KCk7JGIoKTt0ND17Y3NzOmhhLHVuc2FmZUNTUzpKcixMaXRFbGVtZW50OmtsLHByb3BlcnR5OnEzfX0pO3ZhciBucmUsR0N0PWwoKCk9PnttbigpO0I4ZSgpOyRiKCk7bnJlPWNsYXNzIGV7c3RhdGljIGluc3RhbmNlPW51bGw7c3RhdGljIGdldFNpbmdsZXRvbigpe3JldHVybiBlLmluc3RhbmNlfHwoZS5pbnN0YW5jZT1uZXcgZSksZS5pbnN0YW5jZX1kb210b29sc1Byb21pc2U9VDIuc2V0dXBEb21Ub29scygpO2dvQnJpZ2h0PSExO2JkVmFyVHJpcGxldFN0b3JlPVtdO2NvbnN0cnVjdG9yKCl7dGhpcy5kb210b29sc1Byb21pc2UudGhlbihhc3luYyB0PT57dC50aGVtZU1hbmFnZXIudGhlbWVPYnNlcnZhYmxlLnN1YnNjcmliZShhc3luYyByPT57dGhpcy5nb0JyaWdodD1yLGF3YWl0IHQuZG9tUmVhZHkucHJvbWlzZTtmb3IobGV0IGEgb2YgdGhpcy5iZFZhclRyaXBsZXRTdG9yZSlkb2N1bWVudC5ib2R5LnN0eWxlLnNldFByb3BlcnR5KGEuY3NzVmFyTmFtZSx0aGlzLmdvQnJpZ2h0P2EuYnJpZ2h0VmFsdWU6YS5kYXJrVmFsdWUpfSl9KX1nZXQgZGVmYXVsdFN0eWxlcygpe3JldHVybiBObS5zdGF0aWNTdHlsZXN9Z2V0Q29udGFpbmVyTmFtZUZyb21DbGFzcyh0KXtyZXR1cm4gdC5pc3x8dC5uYW1lLnJlcGxhY2UoLyhbYS16XSkoW0EtWl0pL2csIiQxLSQyIikudG9Mb3dlckNhc2UoKX1jc3NGb3JEZXNrdG9wKHQscil7cmV0dXJuIHI/SnIoRWEuY3NzRm9yQ29udGFpbmVyKHQsYChtaW4td2lkdGg6ICR7RWEuZGVza3RvcH1weClgLHRoaXMuZ2V0Q29udGFpbmVyTmFtZUZyb21DbGFzcyhyKSkpOkpyKEVhLmNzc0ZvckRlc2t0b3AodCkpfWNzc0Zvck5vdGVib29rKHQscil7cmV0dXJuIHI/SnIoRWEuY3NzRm9yQ29udGFpbmVyKHQsYChtYXgtd2lkdGg6ICR7RWEubm90ZWJvb2t9cHgpYCx0aGlzLmdldENvbnRhaW5lck5hbWVGcm9tQ2xhc3MocikpKTpKcihFYS5jc3NGb3JOb3RlYm9vayh0KSl9Y3NzRm9yVGFibGV0KHQscil7cmV0dXJuIHI/SnIoRWEuY3NzRm9yQ29udGFpbmVyKHQsYChtYXgtd2lkdGg6ICR7RWEudGFibGV0fXB4KWAsdGhpcy5nZXRDb250YWluZXJOYW1lRnJvbUNsYXNzKHIpKSk6SnIoRWEuY3NzRm9yVGFibGV0KHQpKX1jc3NGb3JQaGFibGV0KHQscil7cmV0dXJuIHI/SnIoRWEuY3NzRm9yQ29udGFpbmVyKHQsYChtYXgtd2lkdGg6ICR7RWEucGhhYmxldH1weClgLHRoaXMuZ2V0Q29udGFpbmVyTmFtZUZyb21DbGFzcyhyKSkpOkpyKEVhLmNzc0ZvclBoYWJsZXQodCkpfWNzc0ZvclBob25lKHQscil7cmV0dXJuIHI/SnIoRWEuY3NzRm9yQ29udGFpbmVyKHQsYChtYXgtd2lkdGg6ICR7RWEucGhvbmV9cHgpYCx0aGlzLmdldENvbnRhaW5lck5hbWVGcm9tQ2xhc3MocikpKTpKcihFYS5jc3NGb3JQaG9uZSh0KSl9Y3NzRm9yQ29uc3RyYWludCh0KXtyZXR1cm4gcj0+SnIoRWEuY3NzRm9yQ29uc3RyYWludCh0KShyKSl9YmRUaGVtZSh0LHIpe2xldCBhLGk7VDIuZ2V0R2xvYmFsRG9tVG9vbHNTeW5jKCk/aT1UMi5nZXRHbG9iYWxEb21Ub29sc1N5bmMoKS50aGVtZU1hbmFnZXIuZ29CcmlnaHRCb29sZWFuP3Q6cjppPXI7bGV0IG89dGhpcy5iZFZhclRyaXBsZXRTdG9yZS5maW5kKG49Pm4uZGFya1ZhbHVlPT09ciYmbi5icmlnaHRWYWx1ZT09PXQpO2lmKG8pYT1vLmNzc1Zhck5hbWU7ZWxzZXtsZXQgbj17Y3NzVmFyTmFtZTpgLS0ke1I4ZS51bmkoKX1gLGJyaWdodFZhbHVlOnQsZGFya1ZhbHVlOnJ9O3RoaXMuYmRWYXJUcmlwbGV0U3RvcmUucHVzaChuKSx0aGlzLmRvbXRvb2xzUHJvbWlzZS50aGVuKGFzeW5jIHM9Pnthd2FpdCBzLmRvbVJlYWR5LnByb21pc2UsZG9jdW1lbnQuYm9keS5zdHlsZS5zZXRQcm9wZXJ0eShuLmNzc1Zhck5hbWUsaSl9KSxhPW4uY3NzVmFyTmFtZX1yZXR1cm4gdDQudW5zYWZlQ1NTKGB2YXIoJHthfSwgJHtpfSlgKX1jc3NHcmlkQ29sdW1ucz0odCxyKT0+e2xldCBhPSIiO2ZvcihsZXQgaT0wO2k8dDtpKyspYSs9YCBjYWxjKCgxMDAlLyR7dH0pIC0gKCR7cioodC0xKX1weC8ke3R9KSlgO3JldHVybiB0NC51bnNhZmVDU1MoYSl9fX0pO3ZhciBIOGUsSjFhLHE4ZSxlb2EsWUN0LHNyZSxqOGUsdG9hLHJvYSxaQ3Q9bCgoKT0+e0puKCk7SDhlPVN5bWJvbC5mb3IoIiIpLEoxYT1lPT57aWYoZT8ucj09PUg4ZSlyZXR1cm4gZT8uXyRsaXRTdGF0aWMkfSxxOGU9ZT0+KHtfJGxpdFN0YXRpYyQ6ZSxyOkg4ZX0pLGVvYT0oZSwuLi50KT0+KHtfJGxpdFN0YXRpYyQ6dC5yZWR1Y2UoKHIsYSxpKT0+cisobz0+e2lmKG8uXyRsaXRTdGF0aWMkIT09dm9pZCAwKXJldHVybiBvLl8kbGl0U3RhdGljJDt0aHJvdyBFcnJvcihgVmFsdWUgcGFzc2VkIHRvICdsaXRlcmFsJyBmdW5jdGlvbiBtdXN0IGJlIGEgJ2xpdGVyYWwnIHJlc3VsdDogJHtvfS4gVXNlICd1bnNhZmVTdGF0aWMnIHRvIHBhc3Mgbm9uLWxpdGVyYWwgdmFsdWVzLCBidXQKICAgICAgICAgICAgdGFrZSBjYXJlIHRvIGVuc3VyZSBwYWdlIHNlY3VyaXR5LmApfSkoYSkrZVtpKzFdLGVbMF0pLHI6SDhlfSksWUN0PW5ldyBNYXAsc3JlPWU9Pih0LC4uLnIpPT57bGV0IGE9ci5sZW5ndGgsaSxvLG49W10scz1bXSxjLGQ9MCxmPSExO2Zvcig7ZDxhOyl7Zm9yKGM9dFtkXTtkPGEmJihvPXJbZF0sKGk9SjFhKG8pKSE9PXZvaWQgMCk7KWMrPWkrdFsrK2RdLGY9ITA7ZCE9PWEmJnMucHVzaChvKSxuLnB1c2goYyksZCsrfWlmKGQ9PT1hJiZuLnB1c2godFthXSksZil7bGV0IHU9bi5qb2luKCIkJGxpdCQkIik7KHQ9WUN0LmdldCh1KSk9PT12b2lkIDAmJihuLnJhdz1uLFlDdC5zZXQodSx0PW4pKSxyPXN9cmV0dXJuIGUodCwuLi5yKX0sajhlPXNyZShEdCksdG9hPXNyZShCY2UpLHJvYT1zcmUoSGNlKX0pO3ZhciBYQ3Q9bCgoKT0+e1pDdCgpfSk7dmFyIEwyLGZpLHpuLEdsPWwoKCk9PntMMj17QVRUUklCVVRFOjEsQ0hJTEQ6MixQUk9QRVJUWTozLEJPT0xFQU5fQVRUUklCVVRFOjQsRVZFTlQ6NSxFTEVNRU5UOjZ9LGZpPWU9PiguLi50KT0+KHtfJGxpdERpcmVjdGl2ZSQ6ZSx2YWx1ZXM6dH0pLHpuPWNsYXNze2NvbnN0cnVjdG9yKHQpe31nZXQgXyRBVSgpe3JldHVybiB0aGlzLl8kQU0uXyRBVX1fJEFUKHQscixhKXt0aGlzLl8kQ3Q9dCx0aGlzLl8kQU09cix0aGlzLl8kQ2k9YX1fJEFTKHQscil7cmV0dXJuIHRoaXMudXBkYXRlKHQscil9dXBkYXRlKHQscil7cmV0dXJuIHRoaXMucmVuZGVyKC4uLnIpfX19KTt2YXIgRm0sVjhlLFFDdD1sKCgpPT57Sm4oKTtHbCgpO0ZtPWNsYXNzIGV4dGVuZHMgem57Y29uc3RydWN0b3IodCl7aWYoc3VwZXIodCksdGhpcy5pdD1EYSx0LnR5cGUhPT1MMi5DSElMRCl0aHJvdyBFcnJvcih0aGlzLmNvbnN0cnVjdG9yLmRpcmVjdGl2ZU5hbWUrIigpIGNhbiBvbmx5IGJlIHVzZWQgaW4gY2hpbGQgYmluZGluZ3MiKX1yZW5kZXIodCl7aWYodD09PURhfHx0PT1udWxsKXJldHVybiB0aGlzLl90PXZvaWQgMCx0aGlzLml0PXQ7aWYodD09PXhhKXJldHVybiB0O2lmKHR5cGVvZiB0IT0ic3RyaW5nIil0aHJvdyBFcnJvcih0aGlzLmNvbnN0cnVjdG9yLmRpcmVjdGl2ZU5hbWUrIigpIGNhbGxlZCB3aXRoIGEgbm9uLXN0cmluZyB2YWx1ZSIpO2lmKHQ9PT10aGlzLml0KXJldHVybiB0aGlzLl90O3RoaXMuaXQ9dDtsZXQgcj1bdF07cmV0dXJuIHIucmF3PXIsdGhpcy5fdD17XyRsaXRUeXBlJDp0aGlzLmNvbnN0cnVjdG9yLnJlc3VsdFR5cGUsc3RyaW5nczpyLHZhbHVlczpbXX19fTtGbS5kaXJlY3RpdmVOYW1lPSJ1bnNhZmVIVE1MIixGbS5yZXN1bHRUeXBlPTE7VjhlPWZpKEZtKX0pO3ZhciBLQ3Q9bCgoKT0+e1FDdCgpfSk7dmFyIFU4ZSxXOGU9bCgoKT0+e1U4ZT1lPT4odCxyKT0+e3IhPT12b2lkIDA/ci5hZGRJbml0aWFsaXplcigoKT0+e2N1c3RvbUVsZW1lbnRzLmRlZmluZShlLHQpfSk6Y3VzdG9tRWxlbWVudHMuZGVmaW5lKGUsdCl9fSk7dmFyIEpDdD1sKCgpPT57VzhlKCl9KTtmdW5jdGlvbiBHaShlKXtyZXR1cm4odCxyKT0+e2lmKHQuaXM9ZSx0Lm5hbWUpe2xldCBhPWFvYSh0Lm5hbWUpO2EhPT1lJiZjb25zb2xlLndhcm4oYFtkZWVzLWVsZW1lbnRdIENsYXNzICIke3QubmFtZX0iIGtlYmFiLWNhc2VzIHRvICIke2F9IiBidXQgdGFnIGlzICIke2V9Ii4gQ29udGFpbmVyIHF1ZXJpZXMgdXNlIC5pcyAoIiR7ZX0iKS5gKX1yZXR1cm4gVThlKGUpKHQscil9fXZhciBhb2EsZV90PWwoKCk9PntKQ3QoKTthb2E9ZT0+ZS5yZXBsYWNlKC8oW2Etel0pKFtBLVpdKS9nLCIkMS0kMiIpLnRvTG93ZXJDYXNlKCl9KTtmdW5jdGlvbiBwaShlKXtyZXR1cm4gcTMoey4uLmUsc3RhdGU6ITAsYXR0cmlidXRlOiExfSl9dmFyIHRfdD1sKCgpPT57ZlEoKTt9KTtmdW5jdGlvbiBpb2EoZSl7cmV0dXJuKHQscik9PntsZXQgYT10eXBlb2YgdD09ImZ1bmN0aW9uIj90OnRbcl07T2JqZWN0LmFzc2lnbihhLGUpfX12YXIgcl90PWwoKCk9Pnt9KTt2YXIgQ24sT209bCgoKT0+e0NuPShlLHQscik9PihyLmNvbmZpZ3VyYWJsZT0hMCxyLmVudW1lcmFibGU9ITAsUmVmbGVjdC5kZWNvcmF0ZSYmdHlwZW9mIHQhPSJvYmplY3QiJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LHIpLHIpfSk7ZnVuY3Rpb24gRzhlKGUsdCl7cmV0dXJuKHIsYSxpKT0+e2xldCBvPW49Pm4ucmVuZGVyUm9vdD8ucXVlcnlTZWxlY3RvcihlKT8/bnVsbDtpZih0KXtsZXR7Z2V0Om4sc2V0OnN9PXR5cGVvZiBhPT0ib2JqZWN0Ij9yOmk/PygoKT0+e2xldCBjPVN5bWJvbCgpO3JldHVybntnZXQoKXtyZXR1cm4gdGhpc1tjXX0sc2V0KGQpe3RoaXNbY109ZH19fSkoKTtyZXR1cm4gQ24ocixhLHtnZXQoKXtsZXQgYz1uLmNhbGwodGhpcyk7cmV0dXJuIGM9PT12b2lkIDAmJihjPW8odGhpcyksKGMhPT1udWxsfHx0aGlzLmhhc1VwZGF0ZWQpJiZzLmNhbGwodGhpcyxjKSksY319KX1yZXR1cm4gQ24ocixhLHtnZXQoKXtyZXR1cm4gbyh0aGlzKX19KX19dmFyIGFfdD1sKCgpPT57T20oKTt9KTtmdW5jdGlvbiBZOGUoZSl7cmV0dXJuKHQscik9PkNuKHQscix7Z2V0KCl7cmV0dXJuKHRoaXMucmVuZGVyUm9vdD8/KG9vYT8/PWRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKSkpLnF1ZXJ5U2VsZWN0b3JBbGwoZSl9fSl9dmFyIG9vYSxpX3Q9bCgoKT0+e09tKCk7fSk7ZnVuY3Rpb24gWjhlKGUpe3JldHVybih0LHIpPT5Dbih0LHIse2FzeW5jIGdldCgpe3JldHVybiBhd2FpdCB0aGlzLnVwZGF0ZUNvbXBsZXRlLHRoaXMucmVuZGVyUm9vdD8ucXVlcnlTZWxlY3RvcihlKT8/bnVsbH19KX12YXIgb190PWwoKCk9PntPbSgpO30pO2Z1bmN0aW9uIG5vYShlKXtyZXR1cm4odCxyKT0+e2xldHtzbG90OmEsc2VsZWN0b3I6aX09ZT8/e30sbz0ic2xvdCIrKGE/YFtuYW1lPSR7YX1dYDoiOm5vdChbbmFtZV0pIik7cmV0dXJuIENuKHQscix7Z2V0KCl7bGV0IG49dGhpcy5yZW5kZXJSb290Py5xdWVyeVNlbGVjdG9yKG8pLHM9bj8uYXNzaWduZWRFbGVtZW50cyhlKT8/W107cmV0dXJuIGk9PT12b2lkIDA/czpzLmZpbHRlcihjPT5jLm1hdGNoZXMoaSkpfX0pfX12YXIgbl90PWwoKCk9PntPbSgpO30pO2Z1bmN0aW9uIHNvYShlKXtyZXR1cm4odCxyKT0+e2xldHtzbG90OmF9PWU/P3t9LGk9InNsb3QiKyhhP2BbbmFtZT0ke2F9XWA6Ijpub3QoW25hbWVdKSIpO3JldHVybiBDbih0LHIse2dldCgpe3JldHVybiB0aGlzLnJlbmRlclJvb3Q/LnF1ZXJ5U2VsZWN0b3IoaSk/LmFzc2lnbmVkTm9kZXMoZSk/P1tdfX0pfX12YXIgc190PWwoKCk9PntPbSgpO30pO3ZhciBsX3Q9bCgoKT0+e1c4ZSgpO2ZRKCk7dF90KCk7cl90KCk7YV90KCk7aV90KCk7b190KCk7bl90KCk7c190KCl9KTt2YXIgY190LGxyZSxZaSxkX3Q9bCgoKT0+e0I4ZSgpO21uKCk7Y190PWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sbHJlPWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSxZaT0oKCk9PntsZXQgZT10NC5MaXRFbGVtZW50LHQscj1bXSxhPVtdLGksbz1bXSxuPVtdO3JldHVybiBjbGFzcyBleHRlbmRzIGV7c3RhdGlje2xldCBjPXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGVbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO3Q9W3Q0LnByb3BlcnR5KHt0eXBlOkJvb2xlYW59KV0saT1bdDQucHJvcGVydHkoKV0sY190KHRoaXMsbnVsbCx0LHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZ29CcmlnaHQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmQ9PiJnb0JyaWdodCJpbiBkLGdldDpkPT5kLmdvQnJpZ2h0LHNldDooZCxmKT0+e2QuZ29CcmlnaHQ9Zn19LG1ldGFkYXRhOmN9LHIsYSksY190KHRoaXMsbnVsbCxpLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZG9tdG9vbHMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmQ9PiJkb210b29scyJpbiBkLGdldDpkPT5kLmRvbXRvb2xzLHNldDooZCxmKT0+e2QuZG9tdG9vbHM9Zn19LG1ldGFkYXRhOmN9LG8sbiksYyYmT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpjfSl9c3RhdGljIGdldENvbnRhaW5lck5hbWUoKXtyZXR1cm4gdGhpcy5pc3x8dGhpcy5uYW1lLnJlcGxhY2UoLyhbYS16XSkoW0EtWl0pL2csIiQxLSQyIikudG9Mb3dlckNhc2UoKX1zdGF0aWMgY3NzRm9yQ29uc3RyYWludChjKXtyZXR1cm4gZD0+QW8uYnJlYWtwb2ludHMuY3NzRm9yQ29uc3RyYWludENvbnRhaW5lcihjLHRoaXMuZ2V0Q29udGFpbmVyTmFtZSgpKShkKX0jZT1scmUodGhpcyxyLCExKTtnZXQgZ29CcmlnaHQoKXtyZXR1cm4gdGhpcy4jZX1zZXQgZ29CcmlnaHQoYyl7dGhpcy4jZT1jfWRvbXRvb2xzUHJvbWlzZT1scmUodGhpcyxhKTsjdD1scmUodGhpcyxvLHZvaWQgMCk7Z2V0IGRvbXRvb2xzKCl7cmV0dXJuIHRoaXMuI3R9c2V0IGRvbXRvb2xzKGMpe3RoaXMuI3Q9Y31yeFN1YnNjcmlwdGlvbnM9KGxyZSh0aGlzLG4pLFtdKTt0aGVtZVN1YnNjcmlwdGlvbjtlbGVtZW50RG9tUmVhZHlEZWZlcnJlZD1Bby5wbHVnaW5zLnNtYXJ0cHJvbWlzZS5kZWZlcigpO2VsZW1lbnREb21SZWFkeT10aGlzLmVsZW1lbnREb21SZWFkeURlZmVycmVkLnByb21pc2U7Y29uc3RydWN0b3IoYz17fSl7c3VwZXIoKSx0aGlzLmRvbXRvb2xzUHJvbWlzZT1Bby5lbGVtZW50QmFzaWMuc2V0dXAodGhpcyxjKSx0aGlzLmRvbXRvb2xzUHJvbWlzZS50aGVuKGQ9Pnt0aGlzLmRvbXRvb2xzPWR9KX1hc3luYyBjb25uZWN0ZWRDYWxsYmFjaygpe3N1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7bGV0IGM9YXdhaXQgdGhpcy5kb210b29sc1Byb21pc2U7dGhpcy50aGVtZVN1YnNjcmlwdGlvbj1jLnRoZW1lTWFuYWdlci50aGVtZU9ic2VydmFibGUuc3Vic2NyaWJlKGQ9Pnt0aGlzLmdvQnJpZ2h0PWQsdGhpcy50aGVtZUNoYW5nZWQmJnRoaXMudGhlbWVDaGFuZ2VkKGQpfSksdGhpcy5yeFN1YnNjcmlwdGlvbnMucHVzaCh0aGlzLnRoZW1lU3Vic2NyaXB0aW9uKTtmb3IobGV0IGQgb2YgdGhpcy5zdGFydHVwRnVuY3Rpb25zKWF3YWl0IGQoKTt0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJkZWVzRWxlbWVudENvbm5lY3RlZCIpKX1maXJzdFVwZGF0ZWQoYyl7c3VwZXIuZmlyc3RVcGRhdGVkKGMpLHRoaXMuZWxlbWVudERvbVJlYWR5RGVmZXJyZWQucmVzb2x2ZSgpfXN0YXJ0dXBGdW5jdGlvbnM9W107cmVnaXN0ZXJTdGFydHVwRnVuY3Rpb24oYyl7dGhpcy5zdGFydHVwRnVuY3Rpb25zLnB1c2goYyl9Z2FyYmFnZUZ1bmN0aW9ucz1bXTtyZWdpc3RlckdhcmJhZ2VGdW5jdGlvbihjKXt0aGlzLmdhcmJhZ2VGdW5jdGlvbnMucHVzaChjKX1hc3luYyBkaXNjb25uZWN0ZWRDYWxsYmFjaygpe2F3YWl0IHRoaXMuZG9tdG9vbHNQcm9taXNlLHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCk7Zm9yKGxldCBjIG9mIHRoaXMucnhTdWJzY3JpcHRpb25zKWMudW5zdWJzY3JpYmUoKTtmb3IobGV0IGMgb2YgdGhpcy5nYXJiYWdlRnVuY3Rpb25zKWF3YWl0IGMoKTt0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJkZWVzRWxlbWVudERpc2Nvbm5lY3RlZCIpKX19fSkoKX0pO2Z1bmN0aW9uIHVfdCgpe3JldHVybiBmdW5jdGlvbihlKXtsZXQgdD1lLmlzfHxlLm5hbWUucmVwbGFjZSgvKFthLXpdKShbQS1aXSkvZywiJDEtJDIiKS50b0xvd2VyQ2FzZSgpLHI9ZS5uYW1lP2xvYShlLm5hbWUpOm51bGw7aWYociYmciE9PXQpe2xldCBvPXM9PnMmJnMuY3NzVGV4dCYmcy5jc3NUZXh0LmluY2x1ZGVzKGBAY29udGFpbmVyICR7cn1gKT9KcihzLmNzc1RleHQucmVwbGFjZUFsbChgQGNvbnRhaW5lciAke3J9YCxgQGNvbnRhaW5lciAke3R9YCkpOnMsbj1lLnN0eWxlcztBcnJheS5pc0FycmF5KG4pP2Uuc3R5bGVzPW4ubWFwKG8pOm4mJihlLnN0eWxlcz1vKG4pKX1sZXQgYT1FYS5jb250YWluZXJDb250ZXh0U3R5bGVzKHQpLGk9ZS5zdHlsZXM7cmV0dXJuIEFycmF5LmlzQXJyYXkoaSk/ZS5zdHlsZXM9Wy4uLmksYV06aT9lLnN0eWxlcz1baSxhXTplLnN0eWxlcz1bYV0sZX19dmFyIGxvYSxmX3Q9bCgoKT0+e21uKCk7JGIoKTtsb2E9ZT0+ZS5yZXBsYWNlKC8oW2Etel0pKFtBLVpdKS9nLCIkMS0kMiIpLnRvTG93ZXJDYXNlKCl9KTt2YXIgY29hLHBfdCxYOGUsZG9hLHVvYSxmb2EscG9hLGhvYSxROGUsaF90LFlsLHBzLG1vYSxQYixLOGUsSWIsSjhlLFJtPWwoKCk9PntKbigpOyh7STpjb2F9PXFjZSkscF90PWU9PmUsWDhlPWU9PmU9PT1udWxsfHx0eXBlb2YgZSE9Im9iamVjdCImJnR5cGVvZiBlIT0iZnVuY3Rpb24iLGRvYT17SFRNTDoxLFNWRzoyLE1BVEhNTDozfSx1b2E9KGUsdCk9PnQ9PT12b2lkIDA/ZT8uXyRsaXRUeXBlJCE9PXZvaWQgMDplPy5fJGxpdFR5cGUkPT09dCxmb2E9ZT0+ZT8uXyRsaXRUeXBlJD8uaCE9bnVsbCxwb2E9ZT0+ZT8uXyRsaXREaXJlY3RpdmUkIT09dm9pZCAwLGhvYT1lPT5lPy5fJGxpdERpcmVjdGl2ZSQsUThlPWU9PmUuc3RyaW5ncz09PXZvaWQgMCxoX3Q9KCk9PmRvY3VtZW50LmNyZWF0ZUNvbW1lbnQoIiIpLFlsPShlLHQscik9PntsZXQgYT1lLl8kQUEucGFyZW50Tm9kZSxpPXQ9PT12b2lkIDA/ZS5fJEFCOnQuXyRBQTtpZihyPT09dm9pZCAwKXtsZXQgbz1hLmluc2VydEJlZm9yZShoX3QoKSxpKSxuPWEuaW5zZXJ0QmVmb3JlKGhfdCgpLGkpO3I9bmV3IGNvYShvLG4sZSxlLm9wdGlvbnMpfWVsc2V7bGV0IG89ci5fJEFCLm5leHRTaWJsaW5nLG49ci5fJEFNLHM9biE9PWU7aWYocyl7bGV0IGM7ci5fJEFRPy4oZSksci5fJEFNPWUsci5fJEFQIT09dm9pZCAwJiYoYz1lLl8kQVUpIT09bi5fJEFVJiZyLl8kQVAoYyl9aWYobyE9PWl8fHMpe2xldCBjPXIuXyRBQTtmb3IoO2MhPT1vOyl7bGV0IGQ9cF90KGMpLm5leHRTaWJsaW5nO3BfdChhKS5pbnNlcnRCZWZvcmUoYyxpKSxjPWR9fX1yZXR1cm4gcn0scHM9KGUsdCxyPWUpPT4oZS5fJEFJKHQsciksZSksbW9hPXt9LFBiPShlLHQ9bW9hKT0+ZS5fJEFIPXQsSzhlPWU9PmUuXyRBSCxJYj1lPT57ZS5fJEFSKCksZS5fJEFBLnJlbW92ZSgpfSxKOGU9ZT0+e2UuXyRBUigpfX0pO2Z1bmN0aW9uIGdvYShlKXt0aGlzLl8kQU4hPT12b2lkIDA/KGNyZSh0aGlzKSx0aGlzLl8kQU09ZSxtX3QodGhpcykpOnRoaXMuXyRBTT1lfWZ1bmN0aW9uIHhvYShlLHQ9ITEscj0wKXtsZXQgYT10aGlzLl8kQUgsaT10aGlzLl8kQU47aWYoaSE9PXZvaWQgMCYmaS5zaXplIT09MClpZih0KWlmKEFycmF5LmlzQXJyYXkoYSkpZm9yKGxldCBvPXI7bzxhLmxlbmd0aDtvKyspTmIoYVtvXSwhMSksY3JlKGFbb10pO2Vsc2UgYSE9bnVsbCYmKE5iKGEsITEpLGNyZShhKSk7ZWxzZSBOYih0aGlzLGUpfXZhciBOYixjcmUsbV90LGJvYSxabyxkcmU9bCgoKT0+e1JtKCk7R2woKTtHbCgpO05iPShlLHQpPT57bGV0IHI9ZS5fJEFOO2lmKHI9PT12b2lkIDApcmV0dXJuITE7Zm9yKGxldCBhIG9mIHIpYS5fJEFPPy4odCwhMSksTmIoYSx0KTtyZXR1cm4hMH0sY3JlPWU9PntsZXQgdCxyO2Rve2lmKCh0PWUuXyRBTSk9PT12b2lkIDApYnJlYWs7cj10Ll8kQU4sci5kZWxldGUoZSksZT10fXdoaWxlKHI/LnNpemU9PT0wKX0sbV90PWU9Pntmb3IobGV0IHQ7dD1lLl8kQU07ZT10KXtsZXQgcj10Ll8kQU47aWYocj09PXZvaWQgMCl0Ll8kQU49cj1uZXcgU2V0O2Vsc2UgaWYoci5oYXMoZSkpYnJlYWs7ci5hZGQoZSksYm9hKHQpfX07Ym9hPWU9PntlLnR5cGU9PUwyLkNISUxEJiYoZS5fJEFQPz89eG9hLGUuXyRBUT8/PWdvYSl9LFpvPWNsYXNzIGV4dGVuZHMgem57Y29uc3RydWN0b3IoKXtzdXBlciguLi5hcmd1bWVudHMpLHRoaXMuXyRBTj12b2lkIDB9XyRBVCh0LHIsYSl7c3VwZXIuXyRBVCh0LHIsYSksbV90KHRoaXMpLHRoaXMuaXNDb25uZWN0ZWQ9dC5fJEFVfV8kQU8odCxyPSEwKXt0IT09dGhpcy5pc0Nvbm5lY3RlZCYmKHRoaXMuaXNDb25uZWN0ZWQ9dCx0P3RoaXMucmVjb25uZWN0ZWQ/LigpOnRoaXMuZGlzY29ubmVjdGVkPy4oKSksciYmKE5iKHRoaXMsdCksY3JlKHRoaXMpKX1zZXRWYWx1ZSh0KXtpZihROGUodGhpcy5fJEN0KSl0aGlzLl8kQ3QuXyRBSSh0LHRoaXMpO2Vsc2V7bGV0IHI9Wy4uLnRoaXMuXyRDdC5fJEFIXTtyW3RoaXMuXyRDaV09dCx0aGlzLl8kQ3QuXyRBSShyLHRoaXMsMCl9fWRpc2Nvbm5lY3RlZCgpe31yZWNvbm5lY3RlZCgpe319fSk7dmFyIHVyZT1sKCgpPT57ZHJlKCl9KTt2YXIgZWhlLGdfdCx2b2EseF90PWwoKCk9PnttbigpO3VyZSgpO2VoZT1jbGFzcyBleHRlbmRzIFpve3Byb21pc2U7aGFzUHJvbWlzZVNldHRsZWQ9ITE7cmVuZGVyKHQpe3JldHVybiB0aGlzLnByb21pc2UhPT10JiYodGhpcy5wcm9taXNlPXQsdGhpcy5pc0Nvbm5lY3RlZCYmdGhpcy5oYW5kbGVQcm9taXNlKHQpKSx4YX1oYW5kbGVQcm9taXNlKHQpe3RoaXMuaGFzUHJvbWlzZVNldHRsZWQ9ITEsdC50aGVuKHI9Pnt0aGlzLnByb21pc2U9PT10JiYhdGhpcy5oYXNQcm9taXNlU2V0dGxlZCYmKHRoaXMuc2V0VmFsdWUociksdGhpcy5oYXNQcm9taXNlU2V0dGxlZD0hMCl9KS5jYXRjaChyPT57dGhpcy5wcm9taXNlPT09dCYmIXRoaXMuaGFzUHJvbWlzZVNldHRsZWQmJih0aGlzLnNldFZhbHVlKHIpLHRoaXMuaGFzUHJvbWlzZVNldHRsZWQ9ITApfSl9ZGlzY29ubmVjdGVkKCl7dGhpcy5oYXNQcm9taXNlU2V0dGxlZD0hMH1yZWNvbm5lY3RlZCgpe3RoaXMuaGFzUHJvbWlzZVNldHRsZWR8fHRoaXMuaGFuZGxlUHJvbWlzZSh0aGlzLnByb21pc2UpfX0sZ190PWZpKGVoZSksdm9hPWU9PmdfdChlKCkpfSk7dmFyIHRoZSx5b2EsYl90PWwoKCk9PnttbigpO3VyZSgpO2EyKCk7dGhlPWNsYXNzIGV4dGVuZHMgWm97b2JzZXJ2YWJsZTtzdWI9bnVsbDtyZW5kZXIodCl7cmV0dXJuIHRoaXMub2JzZXJ2YWJsZSE9PXQmJih0aGlzLnN1Yj8udW5zdWJzY3JpYmUoKSx0aGlzLm9ic2VydmFibGU9dCx0aGlzLmlzQ29ubmVjdGVkJiZ0aGlzLnN1YnNjcmliZSh0KSkseGF9c3Vic2NyaWJlKHQpe3RoaXMuc3ViPXQuc3Vic2NyaWJlKHI9Pnt0aGlzLnNldFZhbHVlKHIpfSl9ZGlzY29ubmVjdGVkKCl7dGhpcy5zdWI/LnVuc3Vic2NyaWJlKCl9cmVjb25uZWN0ZWQoKXt0aGlzLnN1YnNjcmliZSh0aGlzLm9ic2VydmFibGUpfX0seW9hPWZpKHRoZSl9KTt2YXIgcmhlLHZfdCx5X3Q9bCgoKT0+e21uKCk7dXJlKCk7YTIoKTtyaGU9Y2xhc3MgZXh0ZW5kcyBab3tvYnNlcnZhYmxlO3RlbXBsYXRlRm47c3ViPW51bGw7cmVuZGVyKHQscil7cmV0dXJuKHRoaXMub2JzZXJ2YWJsZSE9PXR8fHRoaXMudGVtcGxhdGVGbiE9PXIpJiYodGhpcy5zdWI/LnVuc3Vic2NyaWJlKCksdGhpcy5vYnNlcnZhYmxlPXQsdGhpcy50ZW1wbGF0ZUZuPXIsdGhpcy5pc0Nvbm5lY3RlZCYmdGhpcy5zdGFydFN1YnNjcmlwdGlvbigpKSx4YX1zdGFydFN1YnNjcmlwdGlvbigpe3RoaXMuc3ViPXRoaXMub2JzZXJ2YWJsZS5zdWJzY3JpYmUodD0+e2xldCByPXRoaXMudGVtcGxhdGVGbih0KTt0aGlzLnNldFZhbHVlKHIpfSl9ZGlzY29ubmVjdGVkKCl7dGhpcy5zdWI/LnVuc3Vic2NyaWJlKCl9cmVjb25uZWN0ZWQoKXt0aGlzLnN0YXJ0U3Vic2NyaXB0aW9uKCl9fSx2X3Q9ZmkocmhlKX0pO3ZhciBhaGUscWQsamQsaWhlPWwoKCk9PnthaGU9YXN5bmMoZSx0KT0+e2ZvciBhd2FpdChsZXQgciBvZiBlKWlmKGF3YWl0IHQocik9PT0hMSlyZXR1cm59LHFkPWNsYXNze2NvbnN0cnVjdG9yKHQpe3RoaXMuRz10fWRpc2Nvbm5lY3QoKXt0aGlzLkc9dm9pZCAwfXJlY29ubmVjdCh0KXt0aGlzLkc9dH1kZXJlZigpe3JldHVybiB0aGlzLkd9fSxqZD1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuWT12b2lkIDAsdGhpcy5aPXZvaWQgMH1nZXQoKXtyZXR1cm4gdGhpcy5ZfXBhdXNlKCl7dGhpcy5ZPz89bmV3IFByb21pc2UodD0+dGhpcy5aPXQpfXJlc3VtZSgpe3RoaXMuWj8uKCksdGhpcy5ZPXRoaXMuWj12b2lkIDB9fX0pO3ZhciB3X3QsTV90LGZyZSxvaGUsa190PWwoKCk9PntKbigpO1JtKCk7ZHJlKCk7aWhlKCk7R2woKTt3X3Q9ZT0+IVg4ZShlKSYmdHlwZW9mIGUudGhlbj09ImZ1bmN0aW9uIixNX3Q9MTA3Mzc0MTgyMyxmcmU9Y2xhc3MgZXh0ZW5kcyBab3tjb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyksdGhpcy5fJEN3dD1NX3QsdGhpcy5fJENidD1bXSx0aGlzLl8kQ0s9bmV3IHFkKHRoaXMpLHRoaXMuXyRDWD1uZXcgamR9cmVuZGVyKC4uLnQpe3JldHVybiB0LmZpbmQocj0+IXdfdChyKSk/P3hhfXVwZGF0ZSh0LHIpe2xldCBhPXRoaXMuXyRDYnQsaT1hLmxlbmd0aDt0aGlzLl8kQ2J0PXI7bGV0IG89dGhpcy5fJENLLG49dGhpcy5fJENYO3RoaXMuaXNDb25uZWN0ZWR8fHRoaXMuZGlzY29ubmVjdGVkKCk7Zm9yKGxldCBzPTA7czxyLmxlbmd0aCYmIShzPnRoaXMuXyRDd3QpO3MrKyl7bGV0IGM9cltzXTtpZighd190KGMpKXJldHVybiB0aGlzLl8kQ3d0PXMsYztzPGkmJmM9PT1hW3NdfHwodGhpcy5fJEN3dD1NX3QsaT0wLFByb21pc2UucmVzb2x2ZShjKS50aGVuKGFzeW5jIGQ9Pntmb3IoO24uZ2V0KCk7KWF3YWl0IG4uZ2V0KCk7bGV0IGY9by5kZXJlZigpO2lmKGYhPT12b2lkIDApe2xldCB1PWYuXyRDYnQuaW5kZXhPZihjKTt1Pi0xJiZ1PGYuXyRDd3QmJihmLl8kQ3d0PXUsZi5zZXRWYWx1ZShkKSl9fSkpfXJldHVybiB4YX1kaXNjb25uZWN0ZWQoKXt0aGlzLl8kQ0suZGlzY29ubmVjdCgpLHRoaXMuXyRDWC5wYXVzZSgpfXJlY29ubmVjdGVkKCl7dGhpcy5fJENLLnJlY29ubmVjdCh0aGlzKSx0aGlzLl8kQ1gucmVzdW1lKCl9fSxvaGU9ZmkoZnJlKX0pO3ZhciBTX3Q9bCgoKT0+e2tfdCgpfSk7dmFyIEJtLHdvYSx6X3Q9bCgoKT0+e0puKCk7ZHJlKCk7aWhlKCk7R2woKTtCbT1jbGFzcyBleHRlbmRzIFpve2NvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKSx0aGlzLl8kQ0s9bmV3IHFkKHRoaXMpLHRoaXMuXyRDWD1uZXcgamR9cmVuZGVyKHQscil7cmV0dXJuIHhhfXVwZGF0ZSh0LFtyLGFdKXtpZih0aGlzLmlzQ29ubmVjdGVkfHx0aGlzLmRpc2Nvbm5lY3RlZCgpLHI9PT10aGlzLl8kQ0opcmV0dXJuIHhhO3RoaXMuXyRDSj1yO2xldCBpPTAse18kQ0s6byxfJENYOm59PXRoaXM7cmV0dXJuIGFoZShyLGFzeW5jIHM9Pntmb3IoO24uZ2V0KCk7KWF3YWl0IG4uZ2V0KCk7bGV0IGM9by5kZXJlZigpO2lmKGMhPT12b2lkIDApe2lmKGMuXyRDSiE9PXIpcmV0dXJuITE7YSE9PXZvaWQgMCYmKHM9YShzLGkpKSxjLmNvbW1pdFZhbHVlKHMsaSksaSsrfXJldHVybiEwfSkseGF9Y29tbWl0VmFsdWUodCxyKXt0aGlzLnNldFZhbHVlKHQpfWRpc2Nvbm5lY3RlZCgpe3RoaXMuXyRDSy5kaXNjb25uZWN0KCksdGhpcy5fJENYLnBhdXNlKCl9cmVjb25uZWN0ZWQoKXt0aGlzLl8kQ0sucmVjb25uZWN0KHRoaXMpLHRoaXMuXyRDWC5yZXN1bWUoKX19LHdvYT1maShCbSl9KTt2YXIgbmhlLENfdD1sKCgpPT57R2woKTt6X3QoKTtSbSgpO25oZT1maShjbGFzcyBleHRlbmRzIEJte2NvbnN0cnVjdG9yKGUpe2lmKHN1cGVyKGUpLGUudHlwZSE9PUwyLkNISUxEKXRocm93IEVycm9yKCJhc3luY0FwcGVuZCBjYW4gb25seSBiZSB1c2VkIGluIGNoaWxkIGV4cHJlc3Npb25zIil9dXBkYXRlKGUsdCl7cmV0dXJuIHRoaXMuXyRDdHQ9ZSxzdXBlci51cGRhdGUoZSx0KX1jb21taXRWYWx1ZShlLHQpe3Q9PT0wJiZKOGUodGhpcy5fJEN0dCk7bGV0IHI9WWwodGhpcy5fJEN0dCk7cHMocixlKX19KX0pO3ZhciBfX3Q9bCgoKT0+e0NfdCgpfSk7dmFyIHNoZSxUX3Q9bCgoKT0+e0puKCk7R2woKTtSbSgpO3NoZT1maShjbGFzcyBleHRlbmRzIHpue2NvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKSx0aGlzLmtleT1EYX1yZW5kZXIoZSx0KXtyZXR1cm4gdGhpcy5rZXk9ZSx0fXVwZGF0ZShlLFt0LHJdKXtyZXR1cm4gdCE9PXRoaXMua2V5JiYoUGIoZSksdGhpcy5rZXk9dCkscn19KX0pO3ZhciBMX3Q9bCgoKT0+e1RfdCgpfSk7dmFyIERfdCxsaGUsQV90PWwoKCk9PntKbigpO0dsKCk7Um0oKTtEX3Q9KGUsdCxyKT0+e2xldCBhPW5ldyBNYXA7Zm9yKGxldCBpPXQ7aTw9cjtpKyspYS5zZXQoZVtpXSxpKTtyZXR1cm4gYX0sbGhlPWZpKGNsYXNzIGV4dGVuZHMgem57Y29uc3RydWN0b3IoZSl7aWYoc3VwZXIoZSksZS50eXBlIT09TDIuQ0hJTEQpdGhyb3cgRXJyb3IoInJlcGVhdCgpIGNhbiBvbmx5IGJlIHVzZWQgaW4gdGV4dCBleHByZXNzaW9ucyIpfWR0KGUsdCxyKXtsZXQgYTtyPT09dm9pZCAwP3I9dDp0IT09dm9pZCAwJiYoYT10KTtsZXQgaT1bXSxvPVtdLG49MDtmb3IobGV0IHMgb2YgZSlpW25dPWE/YShzLG4pOm4sb1tuXT1yKHMsbiksbisrO3JldHVybnt2YWx1ZXM6byxrZXlzOml9fXJlbmRlcihlLHQscil7cmV0dXJuIHRoaXMuZHQoZSx0LHIpLnZhbHVlc311cGRhdGUoZSxbdCxyLGFdKXtsZXQgaT1LOGUoZSkse3ZhbHVlczpvLGtleXM6bn09dGhpcy5kdCh0LHIsYSk7aWYoIUFycmF5LmlzQXJyYXkoaSkpcmV0dXJuIHRoaXMudXQ9bixvO2xldCBzPXRoaXMudXQ/Pz1bXSxjPVtdLGQsZix1PTAscD1pLmxlbmd0aC0xLGg9MCxiPW8ubGVuZ3RoLTE7Zm9yKDt1PD1wJiZoPD1iOylpZihpW3VdPT09bnVsbCl1Kys7ZWxzZSBpZihpW3BdPT09bnVsbClwLS07ZWxzZSBpZihzW3VdPT09bltoXSljW2hdPXBzKGlbdV0sb1toXSksdSsrLGgrKztlbHNlIGlmKHNbcF09PT1uW2JdKWNbYl09cHMoaVtwXSxvW2JdKSxwLS0sYi0tO2Vsc2UgaWYoc1t1XT09PW5bYl0pY1tiXT1wcyhpW3VdLG9bYl0pLFlsKGUsY1tiKzFdLGlbdV0pLHUrKyxiLS07ZWxzZSBpZihzW3BdPT09bltoXSljW2hdPXBzKGlbcF0sb1toXSksWWwoZSxpW3VdLGlbcF0pLHAtLSxoKys7ZWxzZSBpZihkPT09dm9pZCAwJiYoZD1EX3QobixoLGIpLGY9RF90KHMsdSxwKSksZC5oYXMoc1t1XSkpaWYoZC5oYXMoc1twXSkpe2xldCB4PWYuZ2V0KG5baF0pLGc9eCE9PXZvaWQgMD9pW3hdOm51bGw7aWYoZz09PW51bGwpe2xldCB2PVlsKGUsaVt1XSk7cHModixvW2hdKSxjW2hdPXZ9ZWxzZSBjW2hdPXBzKGcsb1toXSksWWwoZSxpW3VdLGcpLGlbeF09bnVsbDtoKyt9ZWxzZSBJYihpW3BdKSxwLS07ZWxzZSBJYihpW3VdKSx1Kys7Zm9yKDtoPD1iOyl7bGV0IHg9WWwoZSxjW2IrMV0pO3BzKHgsb1toXSksY1toKytdPXh9Zm9yKDt1PD1wOyl7bGV0IHg9aVt1KytdO3ghPT1udWxsJiZJYih4KX1yZXR1cm4gdGhpcy51dD1uLFBiKGUsYykseGF9fSl9KTt2YXIgRV90PWwoKCk9PntBX3QoKX0pO3ZhciBwcmU9e307cWUocHJlLHthc3luY0FwcGVuZDooKT0+bmhlLGtleWVkOigpPT5zaGUscmVwZWF0OigpPT5saGUscmVzb2x2ZTooKT0+Z190LHJlc29sdmVFeGVjOigpPT52b2Esc3Vic2NyaWJlOigpPT55b2Esc3Vic2NyaWJlV2l0aFRlbXBsYXRlOigpPT52X3QsdW50aWw6KCk9Pm9oZX0pO3ZhciAkX3Q9bCgoKT0+e3hfdCgpO2JfdCgpO3lfdCgpO1NfdCgpO19fdCgpO0xfdCgpO0VfdCgpfSk7dmFyIEZiPXt9O3FlKEZiLHtEZWVzRWxlbWVudDooKT0+WWksY29udGFpbmVyUmVzcG9uc2l2ZTooKT0+dV90LGNzczooKT0+aGEsY3NzTWFuYWdlcjooKT0+aXQsY3VzdG9tRWxlbWVudDooKT0+R2ksZGlyZWN0aXZlczooKT0+cHJlLGRvbXRvb2xzOigpPT5BbyxodG1sOigpPT5EdCxwcm9wZXJ0eTooKT0+cTMscXVlcnk6KCk9Pkc4ZSxxdWVyeUFsbDooKT0+WThlLHF1ZXJ5QXN5bmM6KCk9Plo4ZSxyZW5kZXI6KCk9PkNnLHN0YXRlOigpPT5waSxzdGF0aWM6KCk9Pmo4ZSx1bnNhZmVDU1M6KCk9PkpyLHVuc2FmZUhUTUw6KCk9PlY4ZSx1bnNhZmVTdGF0aWM6KCk9PnE4ZX0pO3ZhciBpdCxfbj1sKCgpPT57R0N0KCk7bW4oKTtYQ3QoKTtLQ3QoKTtlX3QoKTtsX3QoKTskYigpO2RfdCgpO2ZfdCgpOyRfdCgpO2l0PW5yZS5nZXRTaW5nbGV0b24oKX0pO2Z1bmN0aW9uIE1vYShlLHQpe2xldCByPUxpW2VdO3JldHVybiB0eXBlb2Ygcj09Im9iamVjdCImJnQ/clt0XXx8ImF1dG8iOnR5cGVvZiByPT0ibnVtYmVyIj9yOiJhdXRvIn12YXIgTGksa29hLGhyZSxjYSxUbj1sKCgpPT57TGk9e2Jhc2U6e2NvbnRlbnQ6ImF1dG8iLGlucHV0RWxlbWVudHM6MX0sZml4ZWQ6e2FwcEJhcjoxMCxzaWRlTWVudToxMCxtb2JpbGVOYXY6MjUwfSxiYWNrZHJvcDp7ZHJvcGRvd246MTk5OSxtb2RhbDoyOTk5LGNvbnRleHRNZW51OjM5OTl9LG92ZXJsYXk6e2Ryb3Bkb3duOjJlMyxtb2RhbDozZTMsY29udGV4dE1lbnU6NGUzLHRvYXN0OjVlM30sbW9kYWxEcm9wZG93bjozNTAwLHd5c2l3eWdNZW51czo0NTAwfTtrb2E9eyJkZWVzLW1vZGFsIjpMaS5vdmVybGF5Lm1vZGFsLCJkZWVzLXdpbmRvd2xheWVyIjpMaS5vdmVybGF5LmRyb3Bkb3duLCJkZWVzLWNvbnRleHRtZW51IjpMaS5vdmVybGF5LmNvbnRleHRNZW51LCJkZWVzLXRvYXN0IjpMaS5vdmVybGF5LnRvYXN0LCJkZWVzLWFwcHVpLW1haW5tZW51IjpMaS5maXhlZC5hcHBCYXIsImRlZXMtbW9iaWxlbmF2aWdhdGlvbiI6TGkuZml4ZWQubW9iaWxlTmF2LCJkZWVzLXNsYXNoLW1lbnUiOkxpLnd5c2l3eWdNZW51cywiZGVlcy1mb3JtYXR0aW5nLW1lbnUiOkxpLnd5c2l3eWdNZW51c30saHJlPWNsYXNzIGV7c3RhdGljIGluc3RhbmNlO2FjdGl2ZUVsZW1lbnRzPW5ldyBTZXQ7ZWxlbWVudFpJbmRleE1hcD1uZXcgV2Vha01hcDtjdXJyZW50WkluZGV4PTFlMztjb25zdHJ1Y3Rvcigpe31zdGF0aWMgZ2V0SW5zdGFuY2UoKXtyZXR1cm4gZS5pbnN0YW5jZXx8KGUuaW5zdGFuY2U9bmV3IGUpLGUuaW5zdGFuY2V9Z2V0TmV4dFpJbmRleCgpe3JldHVybiB0aGlzLmN1cnJlbnRaSW5kZXgrPTEwLHRoaXMuY3VycmVudFpJbmRleH1yZWdpc3Rlcih0LHIpe3RoaXMuYWN0aXZlRWxlbWVudHMuYWRkKHQpLHRoaXMuZWxlbWVudFpJbmRleE1hcC5zZXQodCxyKX11bnJlZ2lzdGVyKHQpe3RoaXMuYWN0aXZlRWxlbWVudHMuZGVsZXRlKHQpLHRoaXMuZWxlbWVudFpJbmRleE1hcC5kZWxldGUodCksdGhpcy5hY3RpdmVFbGVtZW50cy5zaXplPT09MCYmKHRoaXMuY3VycmVudFpJbmRleD0xZTMpfWdldEVsZW1lbnRaSW5kZXgodCl7cmV0dXJuIHRoaXMuZWxlbWVudFpJbmRleE1hcC5nZXQodCl9Z2V0QWN0aXZlQ291bnQoKXtyZXR1cm4gdGhpcy5hY3RpdmVFbGVtZW50cy5zaXplfWdldEN1cnJlbnRaSW5kZXgoKXtyZXR1cm4gdGhpcy5jdXJyZW50WkluZGV4fWNsZWFyKCl7dGhpcy5hY3RpdmVFbGVtZW50cy5jbGVhcigpLHRoaXMuZWxlbWVudFpJbmRleE1hcD1uZXcgV2Vha01hcCx0aGlzLmN1cnJlbnRaSW5kZXg9MWUzfWdldEFjdGl2ZUVsZW1lbnRzSW5PcmRlcigpe3JldHVybiBBcnJheS5mcm9tKHRoaXMuYWN0aXZlRWxlbWVudHMpLnNvcnQoKHQscik9PntsZXQgYT10aGlzLmVsZW1lbnRaSW5kZXhNYXAuZ2V0KHQpfHwwLGk9dGhpcy5lbGVtZW50WkluZGV4TWFwLmdldChyKXx8MDtyZXR1cm4gYS1pfSl9fSxjYT1ocmUuZ2V0SW5zdGFuY2UoKX0pO3ZhciBtcmUsT2IsY2hlLFBfdCxIbSxmcixsZSxncmUsUmIsZGhlPWwoKCk9PnttcmU9Z2xvYmFsVGhpcyxPYj1tcmUuU2hhZG93Um9vdCYmKG1yZS5TaGFkeUNTUz09PXZvaWQgMHx8bXJlLlNoYWR5Q1NTLm5hdGl2ZVNoYWRvdykmJiJhZG9wdGVkU3R5bGVTaGVldHMiaW4gRG9jdW1lbnQucHJvdG90eXBlJiYicmVwbGFjZSJpbiBDU1NTdHlsZVNoZWV0LnByb3RvdHlwZSxjaGU9U3ltYm9sKCksUF90PW5ldyBXZWFrTWFwLEhtPWNsYXNze2NvbnN0cnVjdG9yKHQscixhKXtpZih0aGlzLl8kY3NzUmVzdWx0JD0hMCxhIT09Y2hlKXRocm93IEVycm9yKCJDU1NSZXN1bHQgaXMgbm90IGNvbnN0cnVjdGFibGUuIFVzZSBgdW5zYWZlQ1NTYCBvciBgY3NzYCBpbnN0ZWFkLiIpO3RoaXMuY3NzVGV4dD10LHRoaXMudD1yfWdldCBzdHlsZVNoZWV0KCl7bGV0IHQ9dGhpcy5vLHI9dGhpcy50O2lmKE9iJiZ0PT09dm9pZCAwKXtsZXQgYT1yIT09dm9pZCAwJiZyLmxlbmd0aD09PTE7YSYmKHQ9UF90LmdldChyKSksdD09PXZvaWQgMCYmKCh0aGlzLm89dD1uZXcgQ1NTU3R5bGVTaGVldCkucmVwbGFjZVN5bmModGhpcy5jc3NUZXh0KSxhJiZQX3Quc2V0KHIsdCkpfXJldHVybiB0fXRvU3RyaW5nKCl7cmV0dXJuIHRoaXMuY3NzVGV4dH19LGZyPWU9Pm5ldyBIbSh0eXBlb2YgZT09InN0cmluZyI/ZTplKyIiLHZvaWQgMCxjaGUpLGxlPShlLC4uLnQpPT57bGV0IHI9ZS5sZW5ndGg9PT0xP2VbMF06dC5yZWR1Y2UoKGEsaSxvKT0+YSsobj0+e2lmKG4uXyRjc3NSZXN1bHQkPT09ITApcmV0dXJuIG4uY3NzVGV4dDtpZih0eXBlb2Ygbj09Im51bWJlciIpcmV0dXJuIG47dGhyb3cgRXJyb3IoIlZhbHVlIHBhc3NlZCB0byAnY3NzJyBmdW5jdGlvbiBtdXN0IGJlIGEgJ2NzcycgZnVuY3Rpb24gcmVzdWx0OiAiK24rIi4gVXNlICd1bnNhZmVDU1MnIHRvIHBhc3Mgbm9uLWxpdGVyYWwgdmFsdWVzLCBidXQgdGFrZSBjYXJlIHRvIGVuc3VyZSBwYWdlIHNlY3VyaXR5LiIpfSkoaSkrZVtvKzFdLGVbMF0pO3JldHVybiBuZXcgSG0ocixlLGNoZSl9LGdyZT0oZSx0KT0+e2lmKE9iKWUuYWRvcHRlZFN0eWxlU2hlZXRzPXQubWFwKHI9PnIgaW5zdGFuY2VvZiBDU1NTdHlsZVNoZWV0P3I6ci5zdHlsZVNoZWV0KTtlbHNlIGZvcihsZXQgciBvZiB0KXtsZXQgYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpLGk9bXJlLmxpdE5vbmNlO2khPT12b2lkIDAmJmEuc2V0QXR0cmlidXRlKCJub25jZSIsaSksYS50ZXh0Q29udGVudD1yLmNzc1RleHQsZS5hcHBlbmRDaGlsZChhKX19LFJiPU9iP2U9PmU6ZT0+ZSBpbnN0YW5jZW9mIENTU1N0eWxlU2hlZXQ/KHQ9PntsZXQgcj0iIjtmb3IobGV0IGEgb2YgdC5jc3NSdWxlcylyKz1hLmNzc1RleHQ7cmV0dXJuIGZyKHIpfSkoZSk6ZX0pO3ZhciBTb2Esem9hLENvYSxfb2EsVG9hLExvYSx4cmUsSV90LERvYSxBb2EsQmIscW0sSGIsTl90LEQyLHFiPWwoKCk9PntkaGUoKTtkaGUoKTsoe2lzOlNvYSxkZWZpbmVQcm9wZXJ0eTp6b2EsZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yOkNvYSxnZXRPd25Qcm9wZXJ0eU5hbWVzOl9vYSxnZXRPd25Qcm9wZXJ0eVN5bWJvbHM6VG9hLGdldFByb3RvdHlwZU9mOkxvYX09T2JqZWN0KSx4cmU9Z2xvYmFsVGhpcyxJX3Q9eHJlLnRydXN0ZWRUeXBlcyxEb2E9SV90P0lfdC5lbXB0eVNjcmlwdDoiIixBb2E9eHJlLnJlYWN0aXZlRWxlbWVudFBvbHlmaWxsU3VwcG9ydCxCYj0oZSx0KT0+ZSxxbT17dG9BdHRyaWJ1dGUoZSx0KXtzd2l0Y2godCl7Y2FzZSBCb29sZWFuOmU9ZT9Eb2E6bnVsbDticmVhaztjYXNlIE9iamVjdDpjYXNlIEFycmF5OmU9ZT09bnVsbD9lOkpTT04uc3RyaW5naWZ5KGUpfXJldHVybiBlfSxmcm9tQXR0cmlidXRlKGUsdCl7bGV0IHI9ZTtzd2l0Y2godCl7Y2FzZSBCb29sZWFuOnI9ZSE9PW51bGw7YnJlYWs7Y2FzZSBOdW1iZXI6cj1lPT09bnVsbD9udWxsOk51bWJlcihlKTticmVhaztjYXNlIE9iamVjdDpjYXNlIEFycmF5OnRyeXtyPUpTT04ucGFyc2UoZSl9Y2F0Y2h7cj1udWxsfX1yZXR1cm4gcn19LEhiPShlLHQpPT4hU29hKGUsdCksTl90PXthdHRyaWJ1dGU6ITAsdHlwZTpTdHJpbmcsY29udmVydGVyOnFtLHJlZmxlY3Q6ITEsdXNlRGVmYXVsdDohMSxoYXNDaGFuZ2VkOkhifTtTeW1ib2wubWV0YWRhdGE/Pz1TeW1ib2woIm1ldGFkYXRhIikseHJlLmxpdFByb3BlcnR5TWV0YWRhdGE/Pz1uZXcgV2Vha01hcDtEMj1jbGFzcyBleHRlbmRzIEhUTUxFbGVtZW50e3N0YXRpYyBhZGRJbml0aWFsaXplcih0KXt0aGlzLl8kRWkoKSwodGhpcy5sPz89W10pLnB1c2godCl9c3RhdGljIGdldCBvYnNlcnZlZEF0dHJpYnV0ZXMoKXtyZXR1cm4gdGhpcy5maW5hbGl6ZSgpLHRoaXMuXyRFaCYmWy4uLnRoaXMuXyRFaC5rZXlzKCldfXN0YXRpYyBjcmVhdGVQcm9wZXJ0eSh0LHI9Tl90KXtpZihyLnN0YXRlJiYoci5hdHRyaWJ1dGU9ITEpLHRoaXMuXyRFaSgpLHRoaXMucHJvdG90eXBlLmhhc093blByb3BlcnR5KHQpJiYoKHI9T2JqZWN0LmNyZWF0ZShyKSkud3JhcHBlZD0hMCksdGhpcy5lbGVtZW50UHJvcGVydGllcy5zZXQodCxyKSwhci5ub0FjY2Vzc29yKXtsZXQgYT1TeW1ib2woKSxpPXRoaXMuZ2V0UHJvcGVydHlEZXNjcmlwdG9yKHQsYSxyKTtpIT09dm9pZCAwJiZ6b2EodGhpcy5wcm90b3R5cGUsdCxpKX19c3RhdGljIGdldFByb3BlcnR5RGVzY3JpcHRvcih0LHIsYSl7bGV0e2dldDppLHNldDpvfT1Db2EodGhpcy5wcm90b3R5cGUsdCk/P3tnZXQoKXtyZXR1cm4gdGhpc1tyXX0sc2V0KG4pe3RoaXNbcl09bn19O3JldHVybntnZXQ6aSxzZXQobil7bGV0IHM9aT8uY2FsbCh0aGlzKTtvPy5jYWxsKHRoaXMsbiksdGhpcy5yZXF1ZXN0VXBkYXRlKHQscyxhKX0sY29uZmlndXJhYmxlOiEwLGVudW1lcmFibGU6ITB9fXN0YXRpYyBnZXRQcm9wZXJ0eU9wdGlvbnModCl7cmV0dXJuIHRoaXMuZWxlbWVudFByb3BlcnRpZXMuZ2V0KHQpPz9OX3R9c3RhdGljIF8kRWkoKXtpZih0aGlzLmhhc093blByb3BlcnR5KEJiKCJlbGVtZW50UHJvcGVydGllcyIpKSlyZXR1cm47bGV0IHQ9TG9hKHRoaXMpO3QuZmluYWxpemUoKSx0LmwhPT12b2lkIDAmJih0aGlzLmw9Wy4uLnQubF0pLHRoaXMuZWxlbWVudFByb3BlcnRpZXM9bmV3IE1hcCh0LmVsZW1lbnRQcm9wZXJ0aWVzKX1zdGF0aWMgZmluYWxpemUoKXtpZih0aGlzLmhhc093blByb3BlcnR5KEJiKCJmaW5hbGl6ZWQiKSkpcmV0dXJuO2lmKHRoaXMuZmluYWxpemVkPSEwLHRoaXMuXyRFaSgpLHRoaXMuaGFzT3duUHJvcGVydHkoQmIoInByb3BlcnRpZXMiKSkpe2xldCByPXRoaXMucHJvcGVydGllcyxhPVsuLi5fb2EociksLi4uVG9hKHIpXTtmb3IobGV0IGkgb2YgYSl0aGlzLmNyZWF0ZVByb3BlcnR5KGkscltpXSl9bGV0IHQ9dGhpc1tTeW1ib2wubWV0YWRhdGFdO2lmKHQhPT1udWxsKXtsZXQgcj1saXRQcm9wZXJ0eU1ldGFkYXRhLmdldCh0KTtpZihyIT09dm9pZCAwKWZvcihsZXRbYSxpXW9mIHIpdGhpcy5lbGVtZW50UHJvcGVydGllcy5zZXQoYSxpKX10aGlzLl8kRWg9bmV3IE1hcDtmb3IobGV0W3IsYV1vZiB0aGlzLmVsZW1lbnRQcm9wZXJ0aWVzKXtsZXQgaT10aGlzLl8kRXUocixhKTtpIT09dm9pZCAwJiZ0aGlzLl8kRWguc2V0KGkscil9dGhpcy5lbGVtZW50U3R5bGVzPXRoaXMuZmluYWxpemVTdHlsZXModGhpcy5zdHlsZXMpfXN0YXRpYyBmaW5hbGl6ZVN0eWxlcyh0KXtsZXQgcj1bXTtpZihBcnJheS5pc0FycmF5KHQpKXtsZXQgYT1uZXcgU2V0KHQuZmxhdCgxLzApLnJldmVyc2UoKSk7Zm9yKGxldCBpIG9mIGEpci51bnNoaWZ0KFJiKGkpKX1lbHNlIHQhPT12b2lkIDAmJnIucHVzaChSYih0KSk7cmV0dXJuIHJ9c3RhdGljIF8kRXUodCxyKXtsZXQgYT1yLmF0dHJpYnV0ZTtyZXR1cm4gYT09PSExP3ZvaWQgMDp0eXBlb2YgYT09InN0cmluZyI/YTp0eXBlb2YgdD09InN0cmluZyI/dC50b0xvd2VyQ2FzZSgpOnZvaWQgMH1jb25zdHJ1Y3Rvcigpe3N1cGVyKCksdGhpcy5fJEVwPXZvaWQgMCx0aGlzLmlzVXBkYXRlUGVuZGluZz0hMSx0aGlzLmhhc1VwZGF0ZWQ9ITEsdGhpcy5fJEVtPW51bGwsdGhpcy5fJEV2KCl9XyRFdigpe3RoaXMuXyRFUz1uZXcgUHJvbWlzZSh0PT50aGlzLmVuYWJsZVVwZGF0aW5nPXQpLHRoaXMuXyRBTD1uZXcgTWFwLHRoaXMuXyRFXygpLHRoaXMucmVxdWVzdFVwZGF0ZSgpLHRoaXMuY29uc3RydWN0b3IubD8uZm9yRWFjaCh0PT50KHRoaXMpKX1hZGRDb250cm9sbGVyKHQpeyh0aGlzLl8kRU8/Pz1uZXcgU2V0KS5hZGQodCksdGhpcy5yZW5kZXJSb290IT09dm9pZCAwJiZ0aGlzLmlzQ29ubmVjdGVkJiZ0Lmhvc3RDb25uZWN0ZWQ/LigpfXJlbW92ZUNvbnRyb2xsZXIodCl7dGhpcy5fJEVPPy5kZWxldGUodCl9XyRFXygpe2xldCB0PW5ldyBNYXAscj10aGlzLmNvbnN0cnVjdG9yLmVsZW1lbnRQcm9wZXJ0aWVzO2ZvcihsZXQgYSBvZiByLmtleXMoKSl0aGlzLmhhc093blByb3BlcnR5KGEpJiYodC5zZXQoYSx0aGlzW2FdKSxkZWxldGUgdGhpc1thXSk7dC5zaXplPjAmJih0aGlzLl8kRXA9dCl9Y3JlYXRlUmVuZGVyUm9vdCgpe2xldCB0PXRoaXMuc2hhZG93Um9vdD8/dGhpcy5hdHRhY2hTaGFkb3codGhpcy5jb25zdHJ1Y3Rvci5zaGFkb3dSb290T3B0aW9ucyk7cmV0dXJuIGdyZSh0LHRoaXMuY29uc3RydWN0b3IuZWxlbWVudFN0eWxlcyksdH1jb25uZWN0ZWRDYWxsYmFjaygpe3RoaXMucmVuZGVyUm9vdD8/PXRoaXMuY3JlYXRlUmVuZGVyUm9vdCgpLHRoaXMuZW5hYmxlVXBkYXRpbmcoITApLHRoaXMuXyRFTz8uZm9yRWFjaCh0PT50Lmhvc3RDb25uZWN0ZWQ/LigpKX1lbmFibGVVcGRhdGluZyh0KXt9ZGlzY29ubmVjdGVkQ2FsbGJhY2soKXt0aGlzLl8kRU8/LmZvckVhY2godD0+dC5ob3N0RGlzY29ubmVjdGVkPy4oKSl9YXR0cmlidXRlQ2hhbmdlZENhbGxiYWNrKHQscixhKXt0aGlzLl8kQUsodCxhKX1fJEVUKHQscil7bGV0IGE9dGhpcy5jb25zdHJ1Y3Rvci5lbGVtZW50UHJvcGVydGllcy5nZXQodCksaT10aGlzLmNvbnN0cnVjdG9yLl8kRXUodCxhKTtpZihpIT09dm9pZCAwJiZhLnJlZmxlY3Q9PT0hMCl7bGV0IG89KGEuY29udmVydGVyPy50b0F0dHJpYnV0ZSE9PXZvaWQgMD9hLmNvbnZlcnRlcjpxbSkudG9BdHRyaWJ1dGUocixhLnR5cGUpO3RoaXMuXyRFbT10LG89PW51bGw/dGhpcy5yZW1vdmVBdHRyaWJ1dGUoaSk6dGhpcy5zZXRBdHRyaWJ1dGUoaSxvKSx0aGlzLl8kRW09bnVsbH19XyRBSyh0LHIpe2xldCBhPXRoaXMuY29uc3RydWN0b3IsaT1hLl8kRWguZ2V0KHQpO2lmKGkhPT12b2lkIDAmJnRoaXMuXyRFbSE9PWkpe2xldCBvPWEuZ2V0UHJvcGVydHlPcHRpb25zKGkpLG49dHlwZW9mIG8uY29udmVydGVyPT0iZnVuY3Rpb24iP3tmcm9tQXR0cmlidXRlOm8uY29udmVydGVyfTpvLmNvbnZlcnRlcj8uZnJvbUF0dHJpYnV0ZSE9PXZvaWQgMD9vLmNvbnZlcnRlcjpxbTt0aGlzLl8kRW09aTtsZXQgcz1uLmZyb21BdHRyaWJ1dGUocixvLnR5cGUpO3RoaXNbaV09cz8/dGhpcy5fJEVqPy5nZXQoaSk/P3MsdGhpcy5fJEVtPW51bGx9fXJlcXVlc3RVcGRhdGUodCxyLGEsaT0hMSxvKXtpZih0IT09dm9pZCAwKXtsZXQgbj10aGlzLmNvbnN0cnVjdG9yO2lmKGk9PT0hMSYmKG89dGhpc1t0XSksYT8/PW4uZ2V0UHJvcGVydHlPcHRpb25zKHQpLCEoKGEuaGFzQ2hhbmdlZD8/SGIpKG8scil8fGEudXNlRGVmYXVsdCYmYS5yZWZsZWN0JiZvPT09dGhpcy5fJEVqPy5nZXQodCkmJiF0aGlzLmhhc0F0dHJpYnV0ZShuLl8kRXUodCxhKSkpKXJldHVybjt0aGlzLkModCxyLGEpfXRoaXMuaXNVcGRhdGVQZW5kaW5nPT09ITEmJih0aGlzLl8kRVM9dGhpcy5fJEVQKCkpfUModCxyLHt1c2VEZWZhdWx0OmEscmVmbGVjdDppLHdyYXBwZWQ6b30sbil7YSYmISh0aGlzLl8kRWo/Pz1uZXcgTWFwKS5oYXModCkmJih0aGlzLl8kRWouc2V0KHQsbj8/cj8/dGhpc1t0XSksbyE9PSEwfHxuIT09dm9pZCAwKXx8KHRoaXMuXyRBTC5oYXModCl8fCh0aGlzLmhhc1VwZGF0ZWR8fGF8fChyPXZvaWQgMCksdGhpcy5fJEFMLnNldCh0LHIpKSxpPT09ITAmJnRoaXMuXyRFbSE9PXQmJih0aGlzLl8kRXE/Pz1uZXcgU2V0KS5hZGQodCkpfWFzeW5jIF8kRVAoKXt0aGlzLmlzVXBkYXRlUGVuZGluZz0hMDt0cnl7YXdhaXQgdGhpcy5fJEVTfWNhdGNoKHIpe1Byb21pc2UucmVqZWN0KHIpfWxldCB0PXRoaXMuc2NoZWR1bGVVcGRhdGUoKTtyZXR1cm4gdCE9bnVsbCYmYXdhaXQgdCwhdGhpcy5pc1VwZGF0ZVBlbmRpbmd9c2NoZWR1bGVVcGRhdGUoKXtyZXR1cm4gdGhpcy5wZXJmb3JtVXBkYXRlKCl9cGVyZm9ybVVwZGF0ZSgpe2lmKCF0aGlzLmlzVXBkYXRlUGVuZGluZylyZXR1cm47aWYoIXRoaXMuaGFzVXBkYXRlZCl7aWYodGhpcy5yZW5kZXJSb290Pz89dGhpcy5jcmVhdGVSZW5kZXJSb290KCksdGhpcy5fJEVwKXtmb3IobGV0W2ksb11vZiB0aGlzLl8kRXApdGhpc1tpXT1vO3RoaXMuXyRFcD12b2lkIDB9bGV0IGE9dGhpcy5jb25zdHJ1Y3Rvci5lbGVtZW50UHJvcGVydGllcztpZihhLnNpemU+MClmb3IobGV0W2ksb11vZiBhKXtsZXR7d3JhcHBlZDpufT1vLHM9dGhpc1tpXTtuIT09ITB8fHRoaXMuXyRBTC5oYXMoaSl8fHM9PT12b2lkIDB8fHRoaXMuQyhpLHZvaWQgMCxvLHMpfX1sZXQgdD0hMSxyPXRoaXMuXyRBTDt0cnl7dD10aGlzLnNob3VsZFVwZGF0ZShyKSx0Pyh0aGlzLndpbGxVcGRhdGUociksdGhpcy5fJEVPPy5mb3JFYWNoKGE9PmEuaG9zdFVwZGF0ZT8uKCkpLHRoaXMudXBkYXRlKHIpKTp0aGlzLl8kRU0oKX1jYXRjaChhKXt0aHJvdyB0PSExLHRoaXMuXyRFTSgpLGF9dCYmdGhpcy5fJEFFKHIpfXdpbGxVcGRhdGUodCl7fV8kQUUodCl7dGhpcy5fJEVPPy5mb3JFYWNoKHI9PnIuaG9zdFVwZGF0ZWQ/LigpKSx0aGlzLmhhc1VwZGF0ZWR8fCh0aGlzLmhhc1VwZGF0ZWQ9ITAsdGhpcy5maXJzdFVwZGF0ZWQodCkpLHRoaXMudXBkYXRlZCh0KX1fJEVNKCl7dGhpcy5fJEFMPW5ldyBNYXAsdGhpcy5pc1VwZGF0ZVBlbmRpbmc9ITF9Z2V0IHVwZGF0ZUNvbXBsZXRlKCl7cmV0dXJuIHRoaXMuZ2V0VXBkYXRlQ29tcGxldGUoKX1nZXRVcGRhdGVDb21wbGV0ZSgpe3JldHVybiB0aGlzLl8kRVN9c2hvdWxkVXBkYXRlKHQpe3JldHVybiEwfXVwZGF0ZSh0KXt0aGlzLl8kRXEmJj10aGlzLl8kRXEuZm9yRWFjaChyPT50aGlzLl8kRVQocix0aGlzW3JdKSksdGhpcy5fJEVNKCl9dXBkYXRlZCh0KXt9Zmlyc3RVcGRhdGVkKHQpe319O0QyLmVsZW1lbnRTdHlsZXM9W10sRDIuc2hhZG93Um9vdE9wdGlvbnM9e21vZGU6Im9wZW4ifSxEMltCYigiZWxlbWVudFByb3BlcnRpZXMiKV09bmV3IE1hcCxEMltCYigiZmluYWxpemVkIildPW5ldyBNYXAsQW9hPy4oe1JlYWN0aXZlRWxlbWVudDpEMn0pLCh4cmUucmVhY3RpdmVFbGVtZW50VmVyc2lvbnM/Pz1bXSkucHVzaCgiMi4xLjIiKX0pO2Z1bmN0aW9uIFdfdChlLHQpe2lmKCFoaGUoZSl8fCFlLmhhc093blByb3BlcnR5KCJyYXciKSl0aHJvdyBFcnJvcigiaW52YWxpZCB0ZW1wbGF0ZSBzdHJpbmdzIGFycmF5Iik7cmV0dXJuIE9fdCE9PXZvaWQgMD9PX3QuY3JlYXRlSFRNTCh0KTp0fWZ1bmN0aW9uIEdkKGUsdCxyPWUsYSl7aWYodD09PXlhKXJldHVybiB0O2xldCBpPWEhPT12b2lkIDA/ci5fJENvPy5bYV06ci5fJENsLG89VmIodCk/dm9pZCAwOnQuXyRsaXREaXJlY3RpdmUkO3JldHVybiBpPy5jb25zdHJ1Y3RvciE9PW8mJihpPy5fJEFPPy4oITEpLG89PT12b2lkIDA/aT12b2lkIDA6KGk9bmV3IG8oZSksaS5fJEFUKGUscixhKSksYSE9PXZvaWQgMD8oci5fJENvPz89W10pW2FdPWk6ci5fJENsPWkpLGkhPT12b2lkIDAmJih0PUdkKGUsaS5fJEFTKGUsdC52YWx1ZXMpLGksYSkpLHR9dmFyIHVoZSxGX3QsYnJlLE9fdCxmaGUsWmwscGhlLEVvYSxWZCxqYixWYixoaGUsUl90LG1oZSxVYixCX3QsSF90LFVkLHFfdCxqX3QsVl90LGdoZSxTLHhoZSxiaGUseWEsQWEsVV90LFdkLEdfdCxXYix2cmUsam0sWWQseXJlLHdyZSxNcmUsa3JlLHZoZSwkb2EsWmQsaHM9bCgoKT0+e3VoZT1nbG9iYWxUaGlzLEZfdD1lPT5lLGJyZT11aGUudHJ1c3RlZFR5cGVzLE9fdD1icmU/YnJlLmNyZWF0ZVBvbGljeSgibGl0LWh0bWwiLHtjcmVhdGVIVE1MOmU9PmV9KTp2b2lkIDAsZmhlPSIkbGl0JCIsWmw9YGxpdCQke01hdGgucmFuZG9tKCkudG9GaXhlZCg5KS5zbGljZSgyKX0kYCxwaGU9Ij8iK1psLEVvYT1gPCR7cGhlfT5gLFZkPWRvY3VtZW50LGpiPSgpPT5WZC5jcmVhdGVDb21tZW50KCIiKSxWYj1lPT5lPT09bnVsbHx8dHlwZW9mIGUhPSJvYmplY3QiJiZ0eXBlb2YgZSE9ImZ1bmN0aW9uIixoaGU9QXJyYXkuaXNBcnJheSxSX3Q9ZT0+aGhlKGUpfHx0eXBlb2YgZT8uW1N5bWJvbC5pdGVyYXRvcl09PSJmdW5jdGlvbiIsbWhlPWBbIAkKXGZccl1gLFViPS88KD86KCEtLXxcL1teYS16QS1aXSl8KFwvP1thLXpBLVpdW14+XHNdKil8KFwvPyQpKS9nLEJfdD0vLS0+L2csSF90PS8+L2csVWQ9UmVnRXhwKGA+fCR7bWhlfSg/OihbXlxccyInPj0vXSspKCR7bWhlfSo9JHttaGV9Kig/OlteIAkKXGZcciInXGA8Pj1dfCgifCcpfCkpfCQpYCwiZyIpLHFfdD0vJy9nLGpfdD0vIi9nLFZfdD0vXig/OnNjcmlwdHxzdHlsZXx0ZXh0YXJlYXx0aXRsZSkkL2ksZ2hlPWU9Pih0LC4uLnIpPT4oe18kbGl0VHlwZSQ6ZSxzdHJpbmdzOnQsdmFsdWVzOnJ9KSxTPWdoZSgxKSx4aGU9Z2hlKDIpLGJoZT1naGUoMykseWE9U3ltYm9sLmZvcigibGl0LW5vQ2hhbmdlIiksQWE9U3ltYm9sLmZvcigibGl0LW5vdGhpbmciKSxVX3Q9bmV3IFdlYWtNYXAsV2Q9VmQuY3JlYXRlVHJlZVdhbGtlcihWZCwxMjkpO0dfdD0oZSx0KT0+e2xldCByPWUubGVuZ3RoLTEsYT1bXSxpLG89dD09PTI/Ijxzdmc+Ijp0PT09Mz8iPG1hdGg+IjoiIixuPVViO2ZvcihsZXQgcz0wO3M8cjtzKyspe2xldCBjPWVbc10sZCxmLHU9LTEscD0wO2Zvcig7cDxjLmxlbmd0aCYmKG4ubGFzdEluZGV4PXAsZj1uLmV4ZWMoYyksZiE9PW51bGwpOylwPW4ubGFzdEluZGV4LG49PT1VYj9mWzFdPT09IiEtLSI/bj1CX3Q6ZlsxXSE9PXZvaWQgMD9uPUhfdDpmWzJdIT09dm9pZCAwPyhWX3QudGVzdChmWzJdKSYmKGk9UmVnRXhwKCI8LyIrZlsyXSwiZyIpKSxuPVVkKTpmWzNdIT09dm9pZCAwJiYobj1VZCk6bj09PVVkP2ZbMF09PT0iPiI/KG49aT8/VWIsdT0tMSk6ZlsxXT09PXZvaWQgMD91PS0yOih1PW4ubGFzdEluZGV4LWZbMl0ubGVuZ3RoLGQ9ZlsxXSxuPWZbM109PT12b2lkIDA/VWQ6ZlszXT09PSciJz9qX3Q6cV90KTpuPT09al90fHxuPT09cV90P249VWQ6bj09PUJfdHx8bj09PUhfdD9uPVViOihuPVVkLGk9dm9pZCAwKTtsZXQgaD1uPT09VWQmJmVbcysxXS5zdGFydHNXaXRoKCIvPiIpPyIgIjoiIjtvKz1uPT09VWI/YytFb2E6dT49MD8oYS5wdXNoKGQpLGMuc2xpY2UoMCx1KStmaGUrYy5zbGljZSh1KStabCtoKTpjK1psKyh1PT09LTI/czpoKX1yZXR1cm5bV190KGUsbysoZVtyXXx8Ijw/PiIpKyh0PT09Mj8iPC9zdmc+Ijp0PT09Mz8iPC9tYXRoPiI6IiIpKSxhXX0sV2I9Y2xhc3MgZXtjb25zdHJ1Y3Rvcih7c3RyaW5nczp0LF8kbGl0VHlwZSQ6cn0sYSl7bGV0IGk7dGhpcy5wYXJ0cz1bXTtsZXQgbz0wLG49MCxzPXQubGVuZ3RoLTEsYz10aGlzLnBhcnRzLFtkLGZdPUdfdCh0LHIpO2lmKHRoaXMuZWw9ZS5jcmVhdGVFbGVtZW50KGQsYSksV2QuY3VycmVudE5vZGU9dGhpcy5lbC5jb250ZW50LHI9PT0yfHxyPT09Myl7bGV0IHU9dGhpcy5lbC5jb250ZW50LmZpcnN0Q2hpbGQ7dS5yZXBsYWNlV2l0aCguLi51LmNoaWxkTm9kZXMpfWZvcig7KGk9V2QubmV4dE5vZGUoKSkhPT1udWxsJiZjLmxlbmd0aDxzOyl7aWYoaS5ub2RlVHlwZT09PTEpe2lmKGkuaGFzQXR0cmlidXRlcygpKWZvcihsZXQgdSBvZiBpLmdldEF0dHJpYnV0ZU5hbWVzKCkpaWYodS5lbmRzV2l0aChmaGUpKXtsZXQgcD1mW24rK10saD1pLmdldEF0dHJpYnV0ZSh1KS5zcGxpdChabCksYj0vKFsuP0BdKT8oLiopLy5leGVjKHApO2MucHVzaCh7dHlwZToxLGluZGV4Om8sbmFtZTpiWzJdLHN0cmluZ3M6aCxjdG9yOmJbMV09PT0iLiI/eXJlOmJbMV09PT0iPyI/d3JlOmJbMV09PT0iQCI/TXJlOllkfSksaS5yZW1vdmVBdHRyaWJ1dGUodSl9ZWxzZSB1LnN0YXJ0c1dpdGgoWmwpJiYoYy5wdXNoKHt0eXBlOjYsaW5kZXg6b30pLGkucmVtb3ZlQXR0cmlidXRlKHUpKTtpZihWX3QudGVzdChpLnRhZ05hbWUpKXtsZXQgdT1pLnRleHRDb250ZW50LnNwbGl0KFpsKSxwPXUubGVuZ3RoLTE7aWYocD4wKXtpLnRleHRDb250ZW50PWJyZT9icmUuZW1wdHlTY3JpcHQ6IiI7Zm9yKGxldCBoPTA7aDxwO2grKylpLmFwcGVuZCh1W2hdLGpiKCkpLFdkLm5leHROb2RlKCksYy5wdXNoKHt0eXBlOjIsaW5kZXg6KytvfSk7aS5hcHBlbmQodVtwXSxqYigpKX19fWVsc2UgaWYoaS5ub2RlVHlwZT09PTgpaWYoaS5kYXRhPT09cGhlKWMucHVzaCh7dHlwZToyLGluZGV4Om99KTtlbHNle2xldCB1PS0xO2Zvcig7KHU9aS5kYXRhLmluZGV4T2YoWmwsdSsxKSkhPT0tMTspYy5wdXNoKHt0eXBlOjcsaW5kZXg6b30pLHUrPVpsLmxlbmd0aC0xfW8rK319c3RhdGljIGNyZWF0ZUVsZW1lbnQodCxyKXtsZXQgYT1WZC5jcmVhdGVFbGVtZW50KCJ0ZW1wbGF0ZSIpO3JldHVybiBhLmlubmVySFRNTD10LGF9fTt2cmU9Y2xhc3N7Y29uc3RydWN0b3IodCxyKXt0aGlzLl8kQVY9W10sdGhpcy5fJEFOPXZvaWQgMCx0aGlzLl8kQUQ9dCx0aGlzLl8kQU09cn1nZXQgcGFyZW50Tm9kZSgpe3JldHVybiB0aGlzLl8kQU0ucGFyZW50Tm9kZX1nZXQgXyRBVSgpe3JldHVybiB0aGlzLl8kQU0uXyRBVX11KHQpe2xldHtlbDp7Y29udGVudDpyfSxwYXJ0czphfT10aGlzLl8kQUQsaT0odD8uY3JlYXRpb25TY29wZT8/VmQpLmltcG9ydE5vZGUociwhMCk7V2QuY3VycmVudE5vZGU9aTtsZXQgbz1XZC5uZXh0Tm9kZSgpLG49MCxzPTAsYz1hWzBdO2Zvcig7YyE9PXZvaWQgMDspe2lmKG49PT1jLmluZGV4KXtsZXQgZDtjLnR5cGU9PT0yP2Q9bmV3IGptKG8sby5uZXh0U2libGluZyx0aGlzLHQpOmMudHlwZT09PTE/ZD1uZXcgYy5jdG9yKG8sYy5uYW1lLGMuc3RyaW5ncyx0aGlzLHQpOmMudHlwZT09PTYmJihkPW5ldyBrcmUobyx0aGlzLHQpKSx0aGlzLl8kQVYucHVzaChkKSxjPWFbKytzXX1uIT09Yz8uaW5kZXgmJihvPVdkLm5leHROb2RlKCksbisrKX1yZXR1cm4gV2QuY3VycmVudE5vZGU9VmQsaX1wKHQpe2xldCByPTA7Zm9yKGxldCBhIG9mIHRoaXMuXyRBVilhIT09dm9pZCAwJiYoYS5zdHJpbmdzIT09dm9pZCAwPyhhLl8kQUkodCxhLHIpLHIrPWEuc3RyaW5ncy5sZW5ndGgtMik6YS5fJEFJKHRbcl0pKSxyKyt9fSxqbT1jbGFzcyBle2dldCBfJEFVKCl7cmV0dXJuIHRoaXMuXyRBTT8uXyRBVT8/dGhpcy5fJEN2fWNvbnN0cnVjdG9yKHQscixhLGkpe3RoaXMudHlwZT0yLHRoaXMuXyRBSD1BYSx0aGlzLl8kQU49dm9pZCAwLHRoaXMuXyRBQT10LHRoaXMuXyRBQj1yLHRoaXMuXyRBTT1hLHRoaXMub3B0aW9ucz1pLHRoaXMuXyRDdj1pPy5pc0Nvbm5lY3RlZD8/ITB9Z2V0IHBhcmVudE5vZGUoKXtsZXQgdD10aGlzLl8kQUEucGFyZW50Tm9kZSxyPXRoaXMuXyRBTTtyZXR1cm4gciE9PXZvaWQgMCYmdD8ubm9kZVR5cGU9PT0xMSYmKHQ9ci5wYXJlbnROb2RlKSx0fWdldCBzdGFydE5vZGUoKXtyZXR1cm4gdGhpcy5fJEFBfWdldCBlbmROb2RlKCl7cmV0dXJuIHRoaXMuXyRBQn1fJEFJKHQscj10aGlzKXt0PUdkKHRoaXMsdCxyKSxWYih0KT90PT09QWF8fHQ9PW51bGx8fHQ9PT0iIj8odGhpcy5fJEFIIT09QWEmJnRoaXMuXyRBUigpLHRoaXMuXyRBSD1BYSk6dCE9PXRoaXMuXyRBSCYmdCE9PXlhJiZ0aGlzLl8odCk6dC5fJGxpdFR5cGUkIT09dm9pZCAwP3RoaXMuJCh0KTp0Lm5vZGVUeXBlIT09dm9pZCAwP3RoaXMuVCh0KTpSX3QodCk/dGhpcy5rKHQpOnRoaXMuXyh0KX1PKHQpe3JldHVybiB0aGlzLl8kQUEucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUodCx0aGlzLl8kQUIpfVQodCl7dGhpcy5fJEFIIT09dCYmKHRoaXMuXyRBUigpLHRoaXMuXyRBSD10aGlzLk8odCkpfV8odCl7dGhpcy5fJEFIIT09QWEmJlZiKHRoaXMuXyRBSCk/dGhpcy5fJEFBLm5leHRTaWJsaW5nLmRhdGE9dDp0aGlzLlQoVmQuY3JlYXRlVGV4dE5vZGUodCkpLHRoaXMuXyRBSD10fSQodCl7bGV0e3ZhbHVlczpyLF8kbGl0VHlwZSQ6YX09dCxpPXR5cGVvZiBhPT0ibnVtYmVyIj90aGlzLl8kQUModCk6KGEuZWw9PT12b2lkIDAmJihhLmVsPVdiLmNyZWF0ZUVsZW1lbnQoV190KGEuaCxhLmhbMF0pLHRoaXMub3B0aW9ucykpLGEpO2lmKHRoaXMuXyRBSD8uXyRBRD09PWkpdGhpcy5fJEFILnAocik7ZWxzZXtsZXQgbz1uZXcgdnJlKGksdGhpcyksbj1vLnUodGhpcy5vcHRpb25zKTtvLnAociksdGhpcy5UKG4pLHRoaXMuXyRBSD1vfX1fJEFDKHQpe2xldCByPVVfdC5nZXQodC5zdHJpbmdzKTtyZXR1cm4gcj09PXZvaWQgMCYmVV90LnNldCh0LnN0cmluZ3Mscj1uZXcgV2IodCkpLHJ9ayh0KXtoaGUodGhpcy5fJEFIKXx8KHRoaXMuXyRBSD1bXSx0aGlzLl8kQVIoKSk7bGV0IHI9dGhpcy5fJEFILGEsaT0wO2ZvcihsZXQgbyBvZiB0KWk9PT1yLmxlbmd0aD9yLnB1c2goYT1uZXcgZSh0aGlzLk8oamIoKSksdGhpcy5PKGpiKCkpLHRoaXMsdGhpcy5vcHRpb25zKSk6YT1yW2ldLGEuXyRBSShvKSxpKys7aTxyLmxlbmd0aCYmKHRoaXMuXyRBUihhJiZhLl8kQUIubmV4dFNpYmxpbmcsaSksci5sZW5ndGg9aSl9XyRBUih0PXRoaXMuXyRBQS5uZXh0U2libGluZyxyKXtmb3IodGhpcy5fJEFQPy4oITEsITAscik7dCE9PXRoaXMuXyRBQjspe2xldCBhPUZfdCh0KS5uZXh0U2libGluZztGX3QodCkucmVtb3ZlKCksdD1hfX1zZXRDb25uZWN0ZWQodCl7dGhpcy5fJEFNPT09dm9pZCAwJiYodGhpcy5fJEN2PXQsdGhpcy5fJEFQPy4odCkpfX0sWWQ9Y2xhc3N7Z2V0IHRhZ05hbWUoKXtyZXR1cm4gdGhpcy5lbGVtZW50LnRhZ05hbWV9Z2V0IF8kQVUoKXtyZXR1cm4gdGhpcy5fJEFNLl8kQVV9Y29uc3RydWN0b3IodCxyLGEsaSxvKXt0aGlzLnR5cGU9MSx0aGlzLl8kQUg9QWEsdGhpcy5fJEFOPXZvaWQgMCx0aGlzLmVsZW1lbnQ9dCx0aGlzLm5hbWU9cix0aGlzLl8kQU09aSx0aGlzLm9wdGlvbnM9byxhLmxlbmd0aD4yfHxhWzBdIT09IiJ8fGFbMV0hPT0iIj8odGhpcy5fJEFIPUFycmF5KGEubGVuZ3RoLTEpLmZpbGwobmV3IFN0cmluZyksdGhpcy5zdHJpbmdzPWEpOnRoaXMuXyRBSD1BYX1fJEFJKHQscj10aGlzLGEsaSl7bGV0IG89dGhpcy5zdHJpbmdzLG49ITE7aWYobz09PXZvaWQgMCl0PUdkKHRoaXMsdCxyLDApLG49IVZiKHQpfHx0IT09dGhpcy5fJEFIJiZ0IT09eWEsbiYmKHRoaXMuXyRBSD10KTtlbHNle2xldCBzPXQsYyxkO2Zvcih0PW9bMF0sYz0wO2M8by5sZW5ndGgtMTtjKyspZD1HZCh0aGlzLHNbYStjXSxyLGMpLGQ9PT15YSYmKGQ9dGhpcy5fJEFIW2NdKSxufHw9IVZiKGQpfHxkIT09dGhpcy5fJEFIW2NdLGQ9PT1BYT90PUFhOnQhPT1BYSYmKHQrPShkPz8iIikrb1tjKzFdKSx0aGlzLl8kQUhbY109ZH1uJiYhaSYmdGhpcy5qKHQpfWoodCl7dD09PUFhP3RoaXMuZWxlbWVudC5yZW1vdmVBdHRyaWJ1dGUodGhpcy5uYW1lKTp0aGlzLmVsZW1lbnQuc2V0QXR0cmlidXRlKHRoaXMubmFtZSx0Pz8iIil9fSx5cmU9Y2xhc3MgZXh0ZW5kcyBZZHtjb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyksdGhpcy50eXBlPTN9aih0KXt0aGlzLmVsZW1lbnRbdGhpcy5uYW1lXT10PT09QWE/dm9pZCAwOnR9fSx3cmU9Y2xhc3MgZXh0ZW5kcyBZZHtjb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyksdGhpcy50eXBlPTR9aih0KXt0aGlzLmVsZW1lbnQudG9nZ2xlQXR0cmlidXRlKHRoaXMubmFtZSwhIXQmJnQhPT1BYSl9fSxNcmU9Y2xhc3MgZXh0ZW5kcyBZZHtjb25zdHJ1Y3Rvcih0LHIsYSxpLG8pe3N1cGVyKHQscixhLGksbyksdGhpcy50eXBlPTV9XyRBSSh0LHI9dGhpcyl7aWYoKHQ9R2QodGhpcyx0LHIsMCk/P0FhKT09PXlhKXJldHVybjtsZXQgYT10aGlzLl8kQUgsaT10PT09QWEmJmEhPT1BYXx8dC5jYXB0dXJlIT09YS5jYXB0dXJlfHx0Lm9uY2UhPT1hLm9uY2V8fHQucGFzc2l2ZSE9PWEucGFzc2l2ZSxvPXQhPT1BYSYmKGE9PT1BYXx8aSk7aSYmdGhpcy5lbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIodGhpcy5uYW1lLHRoaXMsYSksbyYmdGhpcy5lbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIodGhpcy5uYW1lLHRoaXMsdCksdGhpcy5fJEFIPXR9aGFuZGxlRXZlbnQodCl7dHlwZW9mIHRoaXMuXyRBSD09ImZ1bmN0aW9uIj90aGlzLl8kQUguY2FsbCh0aGlzLm9wdGlvbnM/Lmhvc3Q/P3RoaXMuZWxlbWVudCx0KTp0aGlzLl8kQUguaGFuZGxlRXZlbnQodCl9fSxrcmU9Y2xhc3N7Y29uc3RydWN0b3IodCxyLGEpe3RoaXMuZWxlbWVudD10LHRoaXMudHlwZT02LHRoaXMuXyRBTj12b2lkIDAsdGhpcy5fJEFNPXIsdGhpcy5vcHRpb25zPWF9Z2V0IF8kQVUoKXtyZXR1cm4gdGhpcy5fJEFNLl8kQVV9XyRBSSh0KXtHZCh0aGlzLHQpfX0sdmhlPXtNOmZoZSxQOlpsLEE6cGhlLEM6MSxMOkdfdCxSOnZyZSxEOlJfdCxWOkdkLEk6am0sSDpZZCxOOndyZSxVOk1yZSxCOnlyZSxGOmtyZX0sJG9hPXVoZS5saXRIdG1sUG9seWZpbGxTdXBwb3J0OyRvYT8uKFdiLGptKSwodWhlLmxpdEh0bWxWZXJzaW9ucz8/PVtdKS5wdXNoKCIzLjMuMiIpO1pkPShlLHQscik9PntsZXQgYT1yPy5yZW5kZXJCZWZvcmU/P3QsaT1hLl8kbGl0UGFydCQ7aWYoaT09PXZvaWQgMCl7bGV0IG89cj8ucmVuZGVyQmVmb3JlPz9udWxsO2EuXyRsaXRQYXJ0JD1pPW5ldyBqbSh0Lmluc2VydEJlZm9yZShqYigpLG8pLG8sdm9pZCAwLHI/P3t9KX1yZXR1cm4gaS5fJEFJKGUpLGl9fSk7dmFyIHloZSxYbCxQb2EsSW9hLFlfdD1sKCgpPT57cWIoKTtxYigpO2hzKCk7aHMoKTt5aGU9Z2xvYmFsVGhpcyxYbD1jbGFzcyBleHRlbmRzIEQye2NvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKSx0aGlzLnJlbmRlck9wdGlvbnM9e2hvc3Q6dGhpc30sdGhpcy5fJERvPXZvaWQgMH1jcmVhdGVSZW5kZXJSb290KCl7bGV0IHQ9c3VwZXIuY3JlYXRlUmVuZGVyUm9vdCgpO3JldHVybiB0aGlzLnJlbmRlck9wdGlvbnMucmVuZGVyQmVmb3JlPz89dC5maXJzdENoaWxkLHR9dXBkYXRlKHQpe2xldCByPXRoaXMucmVuZGVyKCk7dGhpcy5oYXNVcGRhdGVkfHwodGhpcy5yZW5kZXJPcHRpb25zLmlzQ29ubmVjdGVkPXRoaXMuaXNDb25uZWN0ZWQpLHN1cGVyLnVwZGF0ZSh0KSx0aGlzLl8kRG89WmQocix0aGlzLnJlbmRlclJvb3QsdGhpcy5yZW5kZXJPcHRpb25zKX1jb25uZWN0ZWRDYWxsYmFjaygpe3N1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCksdGhpcy5fJERvPy5zZXRDb25uZWN0ZWQoITApfWRpc2Nvbm5lY3RlZENhbGxiYWNrKCl7c3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKSx0aGlzLl8kRG8/LnNldENvbm5lY3RlZCghMSl9cmVuZGVyKCl7cmV0dXJuIHlhfX07WGwuXyRsaXRFbGVtZW50JD0hMCxYbC5maW5hbGl6ZWQ9ITAseWhlLmxpdEVsZW1lbnRIeWRyYXRlU3VwcG9ydD8uKHtMaXRFbGVtZW50OlhsfSk7UG9hPXloZS5saXRFbGVtZW50UG9seWZpbGxTdXBwb3J0O1BvYT8uKHtMaXRFbGVtZW50OlhsfSk7SW9hPXtfJEFLOihlLHQscik9PntlLl8kQUsodCxyKX0sXyRBTDplPT5lLl8kQUx9Oyh5aGUubGl0RWxlbWVudFZlcnNpb25zPz89W10pLnB1c2goIjQuMi4yIil9KTt2YXIgTm9hLFpfdD1sKCgpPT57Tm9hPSExfSk7dmFyIExuPWwoKCk9PntxYigpO2hzKCk7WV90KCk7Wl90KCl9KTt2YXIgenJlPVhlKFNyZT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkoU3JlLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxTcmUudW5pPXZvaWQgMDt2YXIgRm9hPShlPSJ1bmkiKT0+YCR7ZX1fJHsieHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4Ii5yZXBsYWNlKC9beHldL2csdD0+e2xldCByPU1hdGgucmFuZG9tKCkqMTZ8MDtyZXR1cm4odD09PSJ4Ij9yOnImM3w4KS50b1N0cmluZygxNil9KX1gO1NyZS51bmk9Rm9hfSk7dmFyIENyZSxyNCxfcmU9bCgoKT0+e0NyZT1jbGFzc3tjbGFpbSgpe2lmKHRoaXMuY2xhaW1lZCl0aHJvdyBuZXcgRXJyb3IoIkRlZmVycmVkIGFscmVhZHkgY2xhaW1lZCIpO3RoaXMuY2xhaW1lZD0hMH1nZXQgZHVyYXRpb24oKXtyZXR1cm4gdGhpcy5zdG9wcGVkQXQ/dGhpcy5zdG9wcGVkQXQtdGhpcy5zdGFydGVkQXQ6RGF0ZS5ub3coKS10aGlzLnN0YXJ0ZWRBdH1jb25zdHJ1Y3Rvcigpe3RoaXMuY2xhaW1lZD0hMSx0aGlzLnByb21pc2U9bmV3IFByb21pc2UoKHQscik9Pnt0aGlzLnJlc29sdmU9YT0+e3RoaXMuc3RhdHVzPSJmdWxmaWxsZWQiLHRoaXMuc3RvcHBlZEF0PURhdGUubm93KCksdChhKX0sdGhpcy5yZWplY3Q9YT0+e3RoaXMuc3RhdHVzPSJyZWplY3RlZCIsdGhpcy5zdG9wcGVkQXQ9RGF0ZS5ub3coKSxyKGEpfSx0aGlzLnN0YXJ0ZWRBdD1EYXRlLm5vdygpLHRoaXMuc3RhdHVzPSJwZW5kaW5nIn0pfX0scjQ9KCk9Pm5ldyBDcmV9KTt2YXIgVHJlLE9vYSxYX3Q9bCgoKT0+e19yZSgpO1RyZT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuYWNjdW11bGF0ZWRQcm9taXNlcz1bXSx0aGlzLmRlZmVycmVkPXI0KCksdGhpcy5wcm9taXNlPXRoaXMuZGVmZXJyZWQucHJvbWlzZSxzZXRUaW1lb3V0KGFzeW5jKCk9Pntmb3IoO3RoaXMuYWNjdW11bGF0ZWRQcm9taXNlcy5sZW5ndGg+MDspYXdhaXQgdGhpcy5hY2N1bXVsYXRlZFByb21pc2VzLnNoaWZ0KCk7dGhpcy5kZWZlcnJlZC5yZXNvbHZlKCl9LDApfXN1YkRlZmVyKCl7bGV0IHQ9cjQoKTtyZXR1cm4gdGhpcy5hZGRQcm9taXNlKHQucHJvbWlzZSksdH1hZGRQcm9taXNlKHQpe3RoaXMuYWNjdW11bGF0ZWRQcm9taXNlcy5wdXNoKHQpfX0sT29hPSgpPT5uZXcgVHJlfSk7dmFyIGx0PXt9O3FlKGx0LHtDdW11bGF0aXZlRGVmZXJyZWQ6KCk9PlRyZSxEZWZlcnJlZDooKT0+Q3JlLGN1bXVsYXRpdmVEZWZlcjooKT0+T29hLGRlZmVyOigpPT5yNCxmcm9tQ2FsbGJhY2s6KCk9PlZvYSxnZXRGaXJzdFRydWVPckZhbHNlOigpPT5qb2EsbWFwOigpPT5Ib2EscmVqZWN0ZWRQcm9taXNlOigpPT5Cb2EscmVzb2x2ZWRQcm9taXNlOigpPT5Sb2EsdGltZW91dEFuZENvbnRpbnVlOigpPT5xb2EsdGltZW91dFdyYXA6KCk9PlFfdH0pO3ZhciBSb2EsQm9hLEhvYSxRX3QscW9hLGpvYSxWb2Esb289bCgoKT0+e19yZSgpO1hfdCgpO19yZSgpO1JvYT1lPT5Qcm9taXNlLnJlc29sdmUoZSksQm9hPWU9PlByb21pc2UucmVqZWN0KGUpLEhvYT1hc3luYyhlLHQpPT57bGV0IHI9W10sYT1bXTtmb3IobGV0IGkgb2YgZSl7bGV0IG89dChpKTtyLnB1c2gobyksby50aGVuKG49PnthLnB1c2gobil9KX1yZXR1cm4gYXdhaXQgUHJvbWlzZS5hbGwociksYX0sUV90PWFzeW5jKGUsdCxyPSEwKT0+bmV3IFByb21pc2UoKGEsaSk9PntzZXRUaW1lb3V0KCgpPT57cj9pKG5ldyBFcnJvcigidGltZW91dCIpKTphKG51bGwpfSx0KSxlLnRoZW4oYSxpKX0pLHFvYT1hc3luYyhlLHQ9NmU0KT0+UV90KGUsdCwhMSksam9hPWFzeW5jIGU9PntsZXQgdD1yNCgpO2ZvcihsZXQgciBvZiBlKXIudGhlbihhPT57YT09PSEwJiZ0LnJlc29sdmUoITApfSk7cmV0dXJuIFByb21pc2UuYWxsKGUpLnRoZW4oKCk9Pnt0LnJlc29sdmUoITEpfSksdC5wcm9taXNlfSxWb2E9ZT0+bmV3IFByb21pc2UoKHQscik9PntlKChhLGkpPT57YT9yKGEpOnQoaSl9KX0pfSk7dmFyIExyZT1sKCgpPT57b28oKX0pO2Z1bmN0aW9uIG5yKGUsdCl7aWYodHlwZW9mIHQhPSJmdW5jdGlvbiImJnQhPT1udWxsKXRocm93IG5ldyBUeXBlRXJyb3IoIkNsYXNzIGV4dGVuZHMgdmFsdWUgIitTdHJpbmcodCkrIiBpcyBub3QgYSBjb25zdHJ1Y3RvciBvciBudWxsIik7d2hlKGUsdCk7ZnVuY3Rpb24gcigpe3RoaXMuY29uc3RydWN0b3I9ZX1lLnByb3RvdHlwZT10PT09bnVsbD9PYmplY3QuY3JlYXRlKHQpOihyLnByb3RvdHlwZT10LnByb3RvdHlwZSxuZXcgcil9ZnVuY3Rpb24gV29hKGUsdCl7dmFyIHI9e307Zm9yKHZhciBhIGluIGUpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsYSkmJnQuaW5kZXhPZihhKTwwJiYoclthXT1lW2FdKTtpZihlIT1udWxsJiZ0eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scz09ImZ1bmN0aW9uIilmb3IodmFyIGk9MCxhPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMoZSk7aTxhLmxlbmd0aDtpKyspdC5pbmRleE9mKGFbaV0pPDAmJk9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChlLGFbaV0pJiYoclthW2ldXT1lW2FbaV1dKTtyZXR1cm4gcn1mdW5jdGlvbiBHb2EoZSx0LHIsYSl7dmFyIGk9YXJndW1lbnRzLmxlbmd0aCxvPWk8Mz90OmE9PT1udWxsP2E9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0LHIpOmEsbjtpZih0eXBlb2YgUmVmbGVjdD09Im9iamVjdCImJnR5cGVvZiBSZWZsZWN0LmRlY29yYXRlPT0iZnVuY3Rpb24iKW89UmVmbGVjdC5kZWNvcmF0ZShlLHQscixhKTtlbHNlIGZvcih2YXIgcz1lLmxlbmd0aC0xO3M+PTA7cy0tKShuPWVbc10pJiYobz0oaTwzP24obyk6aT4zP24odCxyLG8pOm4odCxyKSl8fG8pO3JldHVybiBpPjMmJm8mJk9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LHIsbyksb31mdW5jdGlvbiBZb2EoZSx0KXtyZXR1cm4gZnVuY3Rpb24ocixhKXt0KHIsYSxlKX19ZnVuY3Rpb24gWm9hKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH1mdW5jdGlvbiBYb2EoZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9ZnVuY3Rpb24gUW9hKGUpe3JldHVybiB0eXBlb2YgZT09InN5bWJvbCI/ZToiIi5jb25jYXQoZSl9ZnVuY3Rpb24gS29hKGUsdCxyKXtyZXR1cm4gdHlwZW9mIHQ9PSJzeW1ib2wiJiYodD10LmRlc2NyaXB0aW9uPyJbIi5jb25jYXQodC5kZXNjcmlwdGlvbiwiXSIpOiIiKSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwibmFtZSIse2NvbmZpZ3VyYWJsZTohMCx2YWx1ZTpyPyIiLmNvbmNhdChyLCIgIix0KTp0fSl9ZnVuY3Rpb24gSm9hKGUsdCl7aWYodHlwZW9mIFJlZmxlY3Q9PSJvYmplY3QiJiZ0eXBlb2YgUmVmbGVjdC5tZXRhZGF0YT09ImZ1bmN0aW9uIilyZXR1cm4gUmVmbGVjdC5tZXRhZGF0YShlLHQpfWZ1bmN0aW9uIHpoZShlLHQscixhKXtmdW5jdGlvbiBpKG8pe3JldHVybiBvIGluc3RhbmNlb2Ygcj9vOm5ldyByKGZ1bmN0aW9uKG4pe24obyl9KX1yZXR1cm4gbmV3KHJ8fChyPVByb21pc2UpKShmdW5jdGlvbihvLG4pe2Z1bmN0aW9uIHMoZil7dHJ5e2QoYS5uZXh0KGYpKX1jYXRjaCh1KXtuKHUpfX1mdW5jdGlvbiBjKGYpe3RyeXtkKGEudGhyb3coZikpfWNhdGNoKHUpe24odSl9fWZ1bmN0aW9uIGQoZil7Zi5kb25lP28oZi52YWx1ZSk6aShmLnZhbHVlKS50aGVuKHMsYyl9ZCgoYT1hLmFwcGx5KGUsdHx8W10pKS5uZXh0KCkpfSl9ZnVuY3Rpb24gR2IoZSx0KXt2YXIgcj17bGFiZWw6MCxzZW50OmZ1bmN0aW9uKCl7aWYob1swXSYxKXRocm93IG9bMV07cmV0dXJuIG9bMV19LHRyeXM6W10sb3BzOltdfSxhLGksbyxuPU9iamVjdC5jcmVhdGUoKHR5cGVvZiBJdGVyYXRvcj09ImZ1bmN0aW9uIj9JdGVyYXRvcjpPYmplY3QpLnByb3RvdHlwZSk7cmV0dXJuIG4ubmV4dD1zKDApLG4udGhyb3c9cygxKSxuLnJldHVybj1zKDIpLHR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJihuW1N5bWJvbC5pdGVyYXRvcl09ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30pLG47ZnVuY3Rpb24gcyhkKXtyZXR1cm4gZnVuY3Rpb24oZil7cmV0dXJuIGMoW2QsZl0pfX1mdW5jdGlvbiBjKGQpe2lmKGEpdGhyb3cgbmV3IFR5cGVFcnJvcigiR2VuZXJhdG9yIGlzIGFscmVhZHkgZXhlY3V0aW5nLiIpO2Zvcig7biYmKG49MCxkWzBdJiYocj0wKSkscjspdHJ5e2lmKGE9MSxpJiYobz1kWzBdJjI/aS5yZXR1cm46ZFswXT9pLnRocm93fHwoKG89aS5yZXR1cm4pJiZvLmNhbGwoaSksMCk6aS5uZXh0KSYmIShvPW8uY2FsbChpLGRbMV0pKS5kb25lKXJldHVybiBvO3N3aXRjaChpPTAsbyYmKGQ9W2RbMF0mMixvLnZhbHVlXSksZFswXSl7Y2FzZSAwOmNhc2UgMTpvPWQ7YnJlYWs7Y2FzZSA0OnJldHVybiByLmxhYmVsKysse3ZhbHVlOmRbMV0sZG9uZTohMX07Y2FzZSA1OnIubGFiZWwrKyxpPWRbMV0sZD1bMF07Y29udGludWU7Y2FzZSA3OmQ9ci5vcHMucG9wKCksci50cnlzLnBvcCgpO2NvbnRpbnVlO2RlZmF1bHQ6aWYobz1yLnRyeXMsIShvPW8ubGVuZ3RoPjAmJm9bby5sZW5ndGgtMV0pJiYoZFswXT09PTZ8fGRbMF09PT0yKSl7cj0wO2NvbnRpbnVlfWlmKGRbMF09PT0zJiYoIW98fGRbMV0+b1swXSYmZFsxXTxvWzNdKSl7ci5sYWJlbD1kWzFdO2JyZWFrfWlmKGRbMF09PT02JiZyLmxhYmVsPG9bMV0pe3IubGFiZWw9b1sxXSxvPWQ7YnJlYWt9aWYobyYmci5sYWJlbDxvWzJdKXtyLmxhYmVsPW9bMl0sci5vcHMucHVzaChkKTticmVha31vWzJdJiZyLm9wcy5wb3AoKSxyLnRyeXMucG9wKCk7Y29udGludWV9ZD10LmNhbGwoZSxyKX1jYXRjaChmKXtkPVs2LGZdLGk9MH1maW5hbGx5e2E9bz0wfWlmKGRbMF0mNSl0aHJvdyBkWzFdO3JldHVybnt2YWx1ZTpkWzBdP2RbMV06dm9pZCAwLGRvbmU6ITB9fX1mdW5jdGlvbiBlbmEoZSx0KXtmb3IodmFyIHIgaW4gZSlyIT09ImRlZmF1bHQiJiYhT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQscikmJmtoZSh0LGUscil9ZnVuY3Rpb24gSTEoZSl7dmFyIHQ9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLml0ZXJhdG9yLHI9dCYmZVt0XSxhPTA7aWYocilyZXR1cm4gci5jYWxsKGUpO2lmKGUmJnR5cGVvZiBlLmxlbmd0aD09Im51bWJlciIpcmV0dXJue25leHQ6ZnVuY3Rpb24oKXtyZXR1cm4gZSYmYT49ZS5sZW5ndGgmJihlPXZvaWQgMCkse3ZhbHVlOmUmJmVbYSsrXSxkb25lOiFlfX19O3Rocm93IG5ldyBUeXBlRXJyb3IodD8iT2JqZWN0IGlzIG5vdCBpdGVyYWJsZS4iOiJTeW1ib2wuaXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIil9ZnVuY3Rpb24gVmEoZSx0KXt2YXIgcj10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZlW1N5bWJvbC5pdGVyYXRvcl07aWYoIXIpcmV0dXJuIGU7dmFyIGE9ci5jYWxsKGUpLGksbz1bXSxuO3RyeXtmb3IoOyh0PT09dm9pZCAwfHx0LS0gPjApJiYhKGk9YS5uZXh0KCkpLmRvbmU7KW8ucHVzaChpLnZhbHVlKX1jYXRjaChzKXtuPXtlcnJvcjpzfX1maW5hbGx5e3RyeXtpJiYhaS5kb25lJiYocj1hLnJldHVybikmJnIuY2FsbChhKX1maW5hbGx5e2lmKG4pdGhyb3cgbi5lcnJvcn19cmV0dXJuIG99ZnVuY3Rpb24gdG5hKCl7Zm9yKHZhciBlPVtdLHQ9MDt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKWU9ZS5jb25jYXQoVmEoYXJndW1lbnRzW3RdKSk7cmV0dXJuIGV9ZnVuY3Rpb24gcm5hKCl7Zm9yKHZhciBlPTAsdD0wLHI9YXJndW1lbnRzLmxlbmd0aDt0PHI7dCsrKWUrPWFyZ3VtZW50c1t0XS5sZW5ndGg7Zm9yKHZhciBhPUFycmF5KGUpLGk9MCx0PTA7dDxyO3QrKylmb3IodmFyIG89YXJndW1lbnRzW3RdLG49MCxzPW8ubGVuZ3RoO248cztuKyssaSsrKWFbaV09b1tuXTtyZXR1cm4gYX1mdW5jdGlvbiBEaShlLHQscil7aWYocnx8YXJndW1lbnRzLmxlbmd0aD09PTIpZm9yKHZhciBhPTAsaT10Lmxlbmd0aCxvO2E8aTthKyspKG98fCEoYSBpbiB0KSkmJihvfHwobz1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbCh0LDAsYSkpLG9bYV09dFthXSk7cmV0dXJuIGUuY29uY2F0KG98fEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKHQpKX1mdW5jdGlvbiBRbChlKXtyZXR1cm4gdGhpcyBpbnN0YW5jZW9mIFFsPyh0aGlzLnY9ZSx0aGlzKTpuZXcgUWwoZSl9ZnVuY3Rpb24gQ2hlKGUsdCxyKXtpZighU3ltYm9sLmFzeW5jSXRlcmF0b3IpdGhyb3cgbmV3IFR5cGVFcnJvcigiU3ltYm9sLmFzeW5jSXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7dmFyIGE9ci5hcHBseShlLHR8fFtdKSxpLG89W107cmV0dXJuIGk9T2JqZWN0LmNyZWF0ZSgodHlwZW9mIEFzeW5jSXRlcmF0b3I9PSJmdW5jdGlvbiI/QXN5bmNJdGVyYXRvcjpPYmplY3QpLnByb3RvdHlwZSkscygibmV4dCIpLHMoInRocm93IikscygicmV0dXJuIixuKSxpW1N5bWJvbC5hc3luY0l0ZXJhdG9yXT1mdW5jdGlvbigpe3JldHVybiB0aGlzfSxpO2Z1bmN0aW9uIG4oaCl7cmV0dXJuIGZ1bmN0aW9uKGIpe3JldHVybiBQcm9taXNlLnJlc29sdmUoYikudGhlbihoLHUpfX1mdW5jdGlvbiBzKGgsYil7YVtoXSYmKGlbaF09ZnVuY3Rpb24oeCl7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKGcsdil7by5wdXNoKFtoLHgsZyx2XSk+MXx8YyhoLHgpfSl9LGImJihpW2hdPWIoaVtoXSkpKX1mdW5jdGlvbiBjKGgsYil7dHJ5e2QoYVtoXShiKSl9Y2F0Y2goeCl7cChvWzBdWzNdLHgpfX1mdW5jdGlvbiBkKGgpe2gudmFsdWUgaW5zdGFuY2VvZiBRbD9Qcm9taXNlLnJlc29sdmUoaC52YWx1ZS52KS50aGVuKGYsdSk6cChvWzBdWzJdLGgpfWZ1bmN0aW9uIGYoaCl7YygibmV4dCIsaCl9ZnVuY3Rpb24gdShoKXtjKCJ0aHJvdyIsaCl9ZnVuY3Rpb24gcChoLGIpe2goYiksby5zaGlmdCgpLG8ubGVuZ3RoJiZjKG9bMF1bMF0sb1swXVsxXSl9fWZ1bmN0aW9uIGFuYShlKXt2YXIgdCxyO3JldHVybiB0PXt9LGEoIm5leHQiKSxhKCJ0aHJvdyIsZnVuY3Rpb24oaSl7dGhyb3cgaX0pLGEoInJldHVybiIpLHRbU3ltYm9sLml0ZXJhdG9yXT1mdW5jdGlvbigpe3JldHVybiB0aGlzfSx0O2Z1bmN0aW9uIGEoaSxvKXt0W2ldPWVbaV0/ZnVuY3Rpb24obil7cmV0dXJuKHI9IXIpP3t2YWx1ZTpRbChlW2ldKG4pKSxkb25lOiExfTpvP28obik6bn06b319ZnVuY3Rpb24gX2hlKGUpe2lmKCFTeW1ib2wuYXN5bmNJdGVyYXRvcil0aHJvdyBuZXcgVHlwZUVycm9yKCJTeW1ib2wuYXN5bmNJdGVyYXRvciBpcyBub3QgZGVmaW5lZC4iKTt2YXIgdD1lW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSxyO3JldHVybiB0P3QuY2FsbChlKTooZT10eXBlb2YgSTE9PSJmdW5jdGlvbiI/STEoZSk6ZVtTeW1ib2wuaXRlcmF0b3JdKCkscj17fSxhKCJuZXh0IiksYSgidGhyb3ciKSxhKCJyZXR1cm4iKSxyW1N5bWJvbC5hc3luY0l0ZXJhdG9yXT1mdW5jdGlvbigpe3JldHVybiB0aGlzfSxyKTtmdW5jdGlvbiBhKG8pe3Jbb109ZVtvXSYmZnVuY3Rpb24obil7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHMsYyl7bj1lW29dKG4pLGkocyxjLG4uZG9uZSxuLnZhbHVlKX0pfX1mdW5jdGlvbiBpKG8sbixzLGMpe1Byb21pc2UucmVzb2x2ZShjKS50aGVuKGZ1bmN0aW9uKGQpe28oe3ZhbHVlOmQsZG9uZTpzfSl9LG4pfX1mdW5jdGlvbiBpbmEoZSx0KXtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5P09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJyYXciLHt2YWx1ZTp0fSk6ZS5yYXc9dCxlfWZ1bmN0aW9uIG5uYShlKXtpZihlJiZlLl9fZXNNb2R1bGUpcmV0dXJuIGU7dmFyIHQ9e307aWYoZSE9bnVsbClmb3IodmFyIHI9U2hlKGUpLGE9MDthPHIubGVuZ3RoO2ErKylyW2FdIT09ImRlZmF1bHQiJiZraGUodCxlLHJbYV0pO3JldHVybiBvbmEodCxlKSx0fWZ1bmN0aW9uIHNuYShlKXtyZXR1cm4gZSYmZS5fX2VzTW9kdWxlP2U6e2RlZmF1bHQ6ZX19ZnVuY3Rpb24gbG5hKGUsdCxyLGEpe2lmKHI9PT0iYSImJiFhKXRocm93IG5ldyBUeXBlRXJyb3IoIlByaXZhdGUgYWNjZXNzb3Igd2FzIGRlZmluZWQgd2l0aG91dCBhIGdldHRlciIpO2lmKHR5cGVvZiB0PT0iZnVuY3Rpb24iP2UhPT10fHwhYTohdC5oYXMoZSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IHJlYWQgcHJpdmF0ZSBtZW1iZXIgZnJvbSBhbiBvYmplY3Qgd2hvc2UgY2xhc3MgZGlkIG5vdCBkZWNsYXJlIGl0Iik7cmV0dXJuIHI9PT0ibSI/YTpyPT09ImEiP2EuY2FsbChlKTphP2EudmFsdWU6dC5nZXQoZSl9ZnVuY3Rpb24gY25hKGUsdCxyLGEsaSl7aWYoYT09PSJtIil0aHJvdyBuZXcgVHlwZUVycm9yKCJQcml2YXRlIG1ldGhvZCBpcyBub3Qgd3JpdGFibGUiKTtpZihhPT09ImEiJiYhaSl0aHJvdyBuZXcgVHlwZUVycm9yKCJQcml2YXRlIGFjY2Vzc29yIHdhcyBkZWZpbmVkIHdpdGhvdXQgYSBzZXR0ZXIiKTtpZih0eXBlb2YgdD09ImZ1bmN0aW9uIj9lIT09dHx8IWk6IXQuaGFzKGUpKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCB3cml0ZSBwcml2YXRlIG1lbWJlciB0byBhbiBvYmplY3Qgd2hvc2UgY2xhc3MgZGlkIG5vdCBkZWNsYXJlIGl0Iik7cmV0dXJuIGE9PT0iYSI/aS5jYWxsKGUscik6aT9pLnZhbHVlPXI6dC5zZXQoZSxyKSxyfWZ1bmN0aW9uIGRuYShlLHQpe2lmKHQ9PT1udWxsfHx0eXBlb2YgdCE9Im9iamVjdCImJnR5cGVvZiB0IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCB1c2UgJ2luJyBvcGVyYXRvciBvbiBub24tb2JqZWN0Iik7cmV0dXJuIHR5cGVvZiBlPT0iZnVuY3Rpb24iP3Q9PT1lOmUuaGFzKHQpfWZ1bmN0aW9uIHVuYShlLHQscil7aWYodCE9bnVsbCl7aWYodHlwZW9mIHQhPSJvYmplY3QiJiZ0eXBlb2YgdCE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQuIik7dmFyIGEsaTtpZihyKXtpZighU3ltYm9sLmFzeW5jRGlzcG9zZSl0aHJvdyBuZXcgVHlwZUVycm9yKCJTeW1ib2wuYXN5bmNEaXNwb3NlIGlzIG5vdCBkZWZpbmVkLiIpO2E9dFtTeW1ib2wuYXN5bmNEaXNwb3NlXX1pZihhPT09dm9pZCAwKXtpZighU3ltYm9sLmRpc3Bvc2UpdGhyb3cgbmV3IFR5cGVFcnJvcigiU3ltYm9sLmRpc3Bvc2UgaXMgbm90IGRlZmluZWQuIik7YT10W1N5bWJvbC5kaXNwb3NlXSxyJiYoaT1hKX1pZih0eXBlb2YgYSE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3Qgbm90IGRpc3Bvc2FibGUuIik7aSYmKGE9ZnVuY3Rpb24oKXt0cnl7aS5jYWxsKHRoaXMpfWNhdGNoKG8pe3JldHVybiBQcm9taXNlLnJlamVjdChvKX19KSxlLnN0YWNrLnB1c2goe3ZhbHVlOnQsZGlzcG9zZTphLGFzeW5jOnJ9KX1lbHNlIHImJmUuc3RhY2sucHVzaCh7YXN5bmM6ITB9KTtyZXR1cm4gdH1mdW5jdGlvbiBwbmEoZSl7ZnVuY3Rpb24gdChvKXtlLmVycm9yPWUuaGFzRXJyb3I/bmV3IGZuYShvLGUuZXJyb3IsIkFuIGVycm9yIHdhcyBzdXBwcmVzc2VkIGR1cmluZyBkaXNwb3NhbC4iKTpvLGUuaGFzRXJyb3I9ITB9dmFyIHIsYT0wO2Z1bmN0aW9uIGkoKXtmb3IoO3I9ZS5zdGFjay5wb3AoKTspdHJ5e2lmKCFyLmFzeW5jJiZhPT09MSlyZXR1cm4gYT0wLGUuc3RhY2sucHVzaChyKSxQcm9taXNlLnJlc29sdmUoKS50aGVuKGkpO2lmKHIuZGlzcG9zZSl7dmFyIG89ci5kaXNwb3NlLmNhbGwoci52YWx1ZSk7aWYoci5hc3luYylyZXR1cm4gYXw9MixQcm9taXNlLnJlc29sdmUobykudGhlbihpLGZ1bmN0aW9uKG4pe3JldHVybiB0KG4pLGkoKX0pfWVsc2UgYXw9MX1jYXRjaChuKXt0KG4pfWlmKGE9PT0xKXJldHVybiBlLmhhc0Vycm9yP1Byb21pc2UucmVqZWN0KGUuZXJyb3IpOlByb21pc2UucmVzb2x2ZSgpO2lmKGUuaGFzRXJyb3IpdGhyb3cgZS5lcnJvcn1yZXR1cm4gaSgpfWZ1bmN0aW9uIGhuYShlLHQpe3JldHVybiB0eXBlb2YgZT09InN0cmluZyImJi9eXC5cLj9cLy8udGVzdChlKT9lLnJlcGxhY2UoL1wuKHRzeCkkfCgoPzpcLmQpPykoKD86XC5bXi4vXSs/KT8pXC4oW2NtXT8pdHMkL2ksZnVuY3Rpb24ocixhLGksbyxuKXtyZXR1cm4gYT90PyIuanN4IjoiLmpzIjppJiYoIW98fCFuKT9yOmkrbysiLiIrbi50b0xvd2VyQ2FzZSgpKyJqcyJ9KTplfXZhciB3aGUsTWhlLGtoZSxvbmEsU2hlLGZuYSxpTWksR3I9bCgoKT0+e3doZT1mdW5jdGlvbihlLHQpe3JldHVybiB3aGU9T2JqZWN0LnNldFByb3RvdHlwZU9mfHx7X19wcm90b19fOltdfWluc3RhbmNlb2YgQXJyYXkmJmZ1bmN0aW9uKHIsYSl7ci5fX3Byb3RvX189YX18fGZ1bmN0aW9uKHIsYSl7Zm9yKHZhciBpIGluIGEpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGEsaSkmJihyW2ldPWFbaV0pfSx3aGUoZSx0KX07TWhlPWZ1bmN0aW9uKCl7cmV0dXJuIE1oZT1PYmplY3QuYXNzaWdufHxmdW5jdGlvbih0KXtmb3IodmFyIHIsYT0xLGk9YXJndW1lbnRzLmxlbmd0aDthPGk7YSsrKXtyPWFyZ3VtZW50c1thXTtmb3IodmFyIG8gaW4gcilPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocixvKSYmKHRbb109cltvXSl9cmV0dXJuIHR9LE1oZS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9O2toZT1PYmplY3QuY3JlYXRlPyhmdW5jdGlvbihlLHQscixhKXthPT09dm9pZCAwJiYoYT1yKTt2YXIgaT1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQscik7KCFpfHwoImdldCJpbiBpPyF0Ll9fZXNNb2R1bGU6aS53cml0YWJsZXx8aS5jb25maWd1cmFibGUpKSYmKGk9e2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRbcl19fSksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsYSxpKX0pOihmdW5jdGlvbihlLHQscixhKXthPT09dm9pZCAwJiYoYT1yKSxlW2FdPXRbcl19KTtvbmE9T2JqZWN0LmNyZWF0ZT8oZnVuY3Rpb24oZSx0KXtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiZGVmYXVsdCIse2VudW1lcmFibGU6ITAsdmFsdWU6dH0pfSk6ZnVuY3Rpb24oZSx0KXtlLmRlZmF1bHQ9dH0sU2hlPWZ1bmN0aW9uKGUpe3JldHVybiBTaGU9T2JqZWN0LmdldE93blByb3BlcnR5TmFtZXN8fGZ1bmN0aW9uKHQpe3ZhciByPVtdO2Zvcih2YXIgYSBpbiB0KU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0LGEpJiYocltyLmxlbmd0aF09YSk7cmV0dXJuIHJ9LFNoZShlKX07Zm5hPXR5cGVvZiBTdXBwcmVzc2VkRXJyb3I9PSJmdW5jdGlvbiI/U3VwcHJlc3NlZEVycm9yOmZ1bmN0aW9uKGUsdCxyKXt2YXIgYT1uZXcgRXJyb3Iocik7cmV0dXJuIGEubmFtZT0iU3VwcHJlc3NlZEVycm9yIixhLmVycm9yPWUsYS5zdXBwcmVzc2VkPXQsYX07aU1pPXtfX2V4dGVuZHM6bnIsX19hc3NpZ246TWhlLF9fcmVzdDpXb2EsX19kZWNvcmF0ZTpHb2EsX19wYXJhbTpZb2EsX19lc0RlY29yYXRlOlpvYSxfX3J1bkluaXRpYWxpemVyczpYb2EsX19wcm9wS2V5OlFvYSxfX3NldEZ1bmN0aW9uTmFtZTpLb2EsX19tZXRhZGF0YTpKb2EsX19hd2FpdGVyOnpoZSxfX2dlbmVyYXRvcjpHYixfX2NyZWF0ZUJpbmRpbmc6a2hlLF9fZXhwb3J0U3RhcjplbmEsX192YWx1ZXM6STEsX19yZWFkOlZhLF9fc3ByZWFkOnRuYSxfX3NwcmVhZEFycmF5czpybmEsX19zcHJlYWRBcnJheTpEaSxfX2F3YWl0OlFsLF9fYXN5bmNHZW5lcmF0b3I6Q2hlLF9fYXN5bmNEZWxlZ2F0b3I6YW5hLF9fYXN5bmNWYWx1ZXM6X2hlLF9fbWFrZVRlbXBsYXRlT2JqZWN0OmluYSxfX2ltcG9ydFN0YXI6bm5hLF9faW1wb3J0RGVmYXVsdDpzbmEsX19jbGFzc1ByaXZhdGVGaWVsZEdldDpsbmEsX19jbGFzc1ByaXZhdGVGaWVsZFNldDpjbmEsX19jbGFzc1ByaXZhdGVGaWVsZEluOmRuYSxfX2FkZERpc3Bvc2FibGVSZXNvdXJjZTp1bmEsX19kaXNwb3NlUmVzb3VyY2VzOnBuYSxfX3Jld3JpdGVSZWxhdGl2ZUltcG9ydEV4dGVuc2lvbjpobmF9fSk7ZnVuY3Rpb24gSXQoZSl7cmV0dXJuIHR5cGVvZiBlPT0iZnVuY3Rpb24ifXZhciBaaT1sKCgpPT57fSk7ZnVuY3Rpb24gRW8oZSl7dmFyIHQ9ZnVuY3Rpb24oYSl7RXJyb3IuY2FsbChhKSxhLnN0YWNrPW5ldyBFcnJvcigpLnN0YWNrfSxyPWUodCk7cmV0dXJuIHIucHJvdG90eXBlPU9iamVjdC5jcmVhdGUoRXJyb3IucHJvdG90eXBlKSxyLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1yLHJ9dmFyIGE0PWwoKCk9Pnt9KTt2YXIgWWIsVGhlPWwoKCk9PnthNCgpO1liPUVvKGZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbihyKXtlKHRoaXMpLHRoaXMubWVzc2FnZT1yP3IubGVuZ3RoK2AgZXJyb3JzIG9jY3VycmVkIGR1cmluZyB1bnN1YnNjcmlwdGlvbjoKYCtyLm1hcChmdW5jdGlvbihhLGkpe3JldHVybiBpKzErIikgIithLnRvU3RyaW5nKCl9KS5qb2luKGAKICBgKToiIix0aGlzLm5hbWU9IlVuc3Vic2NyaXB0aW9uRXJyb3IiLHRoaXMuZXJyb3JzPXJ9fSl9KTtmdW5jdGlvbiBtcyhlLHQpe2lmKGUpe3ZhciByPWUuaW5kZXhPZih0KTswPD1yJiZlLnNwbGljZShyLDEpfX12YXIgVm09bCgoKT0+e30pO2Z1bmN0aW9uIERyZShlKXtyZXR1cm4gZSBpbnN0YW5jZW9mIHRpfHxlJiYiY2xvc2VkImluIGUmJkl0KGUucmVtb3ZlKSYmSXQoZS5hZGQpJiZJdChlLnVuc3Vic2NyaWJlKX1mdW5jdGlvbiBLX3QoZSl7SXQoZSk/ZSgpOmUudW5zdWJzY3JpYmUoKX12YXIgdGksTGhlLEEyPWwoKCk9PntHcigpO1ppKCk7VGhlKCk7Vm0oKTt0aT0oZnVuY3Rpb24oKXtmdW5jdGlvbiBlKHQpe3RoaXMuaW5pdGlhbFRlYXJkb3duPXQsdGhpcy5jbG9zZWQ9ITEsdGhpcy5fcGFyZW50YWdlPW51bGwsdGhpcy5fZmluYWxpemVycz1udWxsfXJldHVybiBlLnByb3RvdHlwZS51bnN1YnNjcmliZT1mdW5jdGlvbigpe3ZhciB0LHIsYSxpLG87aWYoIXRoaXMuY2xvc2VkKXt0aGlzLmNsb3NlZD0hMDt2YXIgbj10aGlzLl9wYXJlbnRhZ2U7aWYobilpZih0aGlzLl9wYXJlbnRhZ2U9bnVsbCxBcnJheS5pc0FycmF5KG4pKXRyeXtmb3IodmFyIHM9STEobiksYz1zLm5leHQoKTshYy5kb25lO2M9cy5uZXh0KCkpe3ZhciBkPWMudmFsdWU7ZC5yZW1vdmUodGhpcyl9fWNhdGNoKHgpe3Q9e2Vycm9yOnh9fWZpbmFsbHl7dHJ5e2MmJiFjLmRvbmUmJihyPXMucmV0dXJuKSYmci5jYWxsKHMpfWZpbmFsbHl7aWYodCl0aHJvdyB0LmVycm9yfX1lbHNlIG4ucmVtb3ZlKHRoaXMpO3ZhciBmPXRoaXMuaW5pdGlhbFRlYXJkb3duO2lmKEl0KGYpKXRyeXtmKCl9Y2F0Y2goeCl7bz14IGluc3RhbmNlb2YgWWI/eC5lcnJvcnM6W3hdfXZhciB1PXRoaXMuX2ZpbmFsaXplcnM7aWYodSl7dGhpcy5fZmluYWxpemVycz1udWxsO3RyeXtmb3IodmFyIHA9STEodSksaD1wLm5leHQoKTshaC5kb25lO2g9cC5uZXh0KCkpe3ZhciBiPWgudmFsdWU7dHJ5e0tfdChiKX1jYXRjaCh4KXtvPW8/P1tdLHggaW5zdGFuY2VvZiBZYj9vPURpKERpKFtdLFZhKG8pKSxWYSh4LmVycm9ycykpOm8ucHVzaCh4KX19fWNhdGNoKHgpe2E9e2Vycm9yOnh9fWZpbmFsbHl7dHJ5e2gmJiFoLmRvbmUmJihpPXAucmV0dXJuKSYmaS5jYWxsKHApfWZpbmFsbHl7aWYoYSl0aHJvdyBhLmVycm9yfX19aWYobyl0aHJvdyBuZXcgWWIobyl9fSxlLnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24odCl7dmFyIHI7aWYodCYmdCE9PXRoaXMpaWYodGhpcy5jbG9zZWQpS190KHQpO2Vsc2V7aWYodCBpbnN0YW5jZW9mIGUpe2lmKHQuY2xvc2VkfHx0Ll9oYXNQYXJlbnQodGhpcykpcmV0dXJuO3QuX2FkZFBhcmVudCh0aGlzKX0odGhpcy5fZmluYWxpemVycz0ocj10aGlzLl9maW5hbGl6ZXJzKSE9PW51bGwmJnIhPT12b2lkIDA/cjpbXSkucHVzaCh0KX19LGUucHJvdG90eXBlLl9oYXNQYXJlbnQ9ZnVuY3Rpb24odCl7dmFyIHI9dGhpcy5fcGFyZW50YWdlO3JldHVybiByPT09dHx8QXJyYXkuaXNBcnJheShyKSYmci5pbmNsdWRlcyh0KX0sZS5wcm90b3R5cGUuX2FkZFBhcmVudD1mdW5jdGlvbih0KXt2YXIgcj10aGlzLl9wYXJlbnRhZ2U7dGhpcy5fcGFyZW50YWdlPUFycmF5LmlzQXJyYXkocik/KHIucHVzaCh0KSxyKTpyP1tyLHRdOnR9LGUucHJvdG90eXBlLl9yZW1vdmVQYXJlbnQ9ZnVuY3Rpb24odCl7dmFyIHI9dGhpcy5fcGFyZW50YWdlO3I9PT10P3RoaXMuX3BhcmVudGFnZT1udWxsOkFycmF5LmlzQXJyYXkocikmJm1zKHIsdCl9LGUucHJvdG90eXBlLnJlbW92ZT1mdW5jdGlvbih0KXt2YXIgcj10aGlzLl9maW5hbGl6ZXJzO3ImJm1zKHIsdCksdCBpbnN0YW5jZW9mIGUmJnQuX3JlbW92ZVBhcmVudCh0aGlzKX0sZS5FTVBUWT0oZnVuY3Rpb24oKXt2YXIgdD1uZXcgZTtyZXR1cm4gdC5jbG9zZWQ9ITAsdH0pKCksZX0pKCksTGhlPXRpLkVNUFRZfSk7dmFyIERuLFVtPWwoKCk9PntEbj17b25VbmhhbmRsZWRFcnJvcjpudWxsLG9uU3RvcHBlZE5vdGlmaWNhdGlvbjpudWxsLFByb21pc2U6dm9pZCAwLHVzZURlcHJlY2F0ZWRTeW5jaHJvbm91c0Vycm9ySGFuZGxpbmc6ITEsdXNlRGVwcmVjYXRlZE5leHRDb250ZXh0OiExfX0pO3ZhciBXbSxEaGU9bCgoKT0+e0dyKCk7V209e3NldFRpbWVvdXQ6ZnVuY3Rpb24oZSx0KXtmb3IodmFyIHI9W10sYT0yO2E8YXJndW1lbnRzLmxlbmd0aDthKyspclthLTJdPWFyZ3VtZW50c1thXTt2YXIgaT1XbS5kZWxlZ2F0ZTtyZXR1cm4gaT8uc2V0VGltZW91dD9pLnNldFRpbWVvdXQuYXBwbHkoaSxEaShbZSx0XSxWYShyKSkpOnNldFRpbWVvdXQuYXBwbHkodm9pZCAwLERpKFtlLHRdLFZhKHIpKSl9LGNsZWFyVGltZW91dDpmdW5jdGlvbihlKXt2YXIgdD1XbS5kZWxlZ2F0ZTtyZXR1cm4odD8uY2xlYXJUaW1lb3V0fHxjbGVhclRpbWVvdXQpKGUpfSxkZWxlZ2F0ZTp2b2lkIDB9fSk7ZnVuY3Rpb24gQXJlKGUpe1dtLnNldFRpbWVvdXQoZnVuY3Rpb24oKXt2YXIgdD1Ebi5vblVuaGFuZGxlZEVycm9yO2lmKHQpdChlKTtlbHNlIHRocm93IGV9KX12YXIgQWhlPWwoKCk9PntVbSgpO0RoZSgpfSk7ZnVuY3Rpb24gQW4oKXt9dmFyIFhkPWwoKCk9Pnt9KTtmdW5jdGlvbiBlVHQoZSl7cmV0dXJuIEVoZSgiRSIsdm9pZCAwLGUpfWZ1bmN0aW9uIHRUdChlKXtyZXR1cm4gRWhlKCJOIixlLHZvaWQgMCl9ZnVuY3Rpb24gRWhlKGUsdCxyKXtyZXR1cm57a2luZDplLHZhbHVlOnQsZXJyb3I6cn19dmFyIEpfdCxyVHQ9bCgoKT0+e0pfdD0oZnVuY3Rpb24oKXtyZXR1cm4gRWhlKCJDIix2b2lkIDAsdm9pZCAwKX0pKCl9KTtmdW5jdGlvbiBHbShlKXtpZihEbi51c2VEZXByZWNhdGVkU3luY2hyb25vdXNFcnJvckhhbmRsaW5nKXt2YXIgdD0hUWQ7aWYodCYmKFFkPXtlcnJvclRocm93bjohMSxlcnJvcjpudWxsfSksZSgpLHQpe3ZhciByPVFkLGE9ci5lcnJvclRocm93bixpPXIuZXJyb3I7aWYoUWQ9bnVsbCxhKXRocm93IGl9fWVsc2UgZSgpfWZ1bmN0aW9uIGFUdChlKXtEbi51c2VEZXByZWNhdGVkU3luY2hyb25vdXNFcnJvckhhbmRsaW5nJiZRZCYmKFFkLmVycm9yVGhyb3duPSEwLFFkLmVycm9yPWUpfXZhciBRZCxFcmU9bCgoKT0+e1VtKCk7UWQ9bnVsbH0pO2Z1bmN0aW9uICRoZShlLHQpe3JldHVybiBtbmEuY2FsbChlLHQpfWZ1bmN0aW9uICRyZShlKXtEbi51c2VEZXByZWNhdGVkU3luY2hyb25vdXNFcnJvckhhbmRsaW5nP2FUdChlKTpBcmUoZSl9ZnVuY3Rpb24geG5hKGUpe3Rocm93IGV9ZnVuY3Rpb24gUGhlKGUsdCl7dmFyIHI9RG4ub25TdG9wcGVkTm90aWZpY2F0aW9uO3ImJldtLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtyZXR1cm4gcihlLHQpfSl9dmFyIEtkLG1uYSxnbmEsaTQsYm5hLFpiPWwoKCk9PntHcigpO1ppKCk7QTIoKTtVbSgpO0FoZSgpO1hkKCk7clR0KCk7RGhlKCk7RXJlKCk7S2Q9KGZ1bmN0aW9uKGUpe25yKHQsZSk7ZnVuY3Rpb24gdChyKXt2YXIgYT1lLmNhbGwodGhpcyl8fHRoaXM7cmV0dXJuIGEuaXNTdG9wcGVkPSExLHI/KGEuZGVzdGluYXRpb249cixEcmUocikmJnIuYWRkKGEpKTphLmRlc3RpbmF0aW9uPWJuYSxhfXJldHVybiB0LmNyZWF0ZT1mdW5jdGlvbihyLGEsaSl7cmV0dXJuIG5ldyBpNChyLGEsaSl9LHQucHJvdG90eXBlLm5leHQ9ZnVuY3Rpb24ocil7dGhpcy5pc1N0b3BwZWQ/UGhlKHRUdChyKSx0aGlzKTp0aGlzLl9uZXh0KHIpfSx0LnByb3RvdHlwZS5lcnJvcj1mdW5jdGlvbihyKXt0aGlzLmlzU3RvcHBlZD9QaGUoZVR0KHIpLHRoaXMpOih0aGlzLmlzU3RvcHBlZD0hMCx0aGlzLl9lcnJvcihyKSl9LHQucHJvdG90eXBlLmNvbXBsZXRlPWZ1bmN0aW9uKCl7dGhpcy5pc1N0b3BwZWQ/UGhlKEpfdCx0aGlzKToodGhpcy5pc1N0b3BwZWQ9ITAsdGhpcy5fY29tcGxldGUoKSl9LHQucHJvdG90eXBlLnVuc3Vic2NyaWJlPWZ1bmN0aW9uKCl7dGhpcy5jbG9zZWR8fCh0aGlzLmlzU3RvcHBlZD0hMCxlLnByb3RvdHlwZS51bnN1YnNjcmliZS5jYWxsKHRoaXMpLHRoaXMuZGVzdGluYXRpb249bnVsbCl9LHQucHJvdG90eXBlLl9uZXh0PWZ1bmN0aW9uKHIpe3RoaXMuZGVzdGluYXRpb24ubmV4dChyKX0sdC5wcm90b3R5cGUuX2Vycm9yPWZ1bmN0aW9uKHIpe3RyeXt0aGlzLmRlc3RpbmF0aW9uLmVycm9yKHIpfWZpbmFsbHl7dGhpcy51bnN1YnNjcmliZSgpfX0sdC5wcm90b3R5cGUuX2NvbXBsZXRlPWZ1bmN0aW9uKCl7dHJ5e3RoaXMuZGVzdGluYXRpb24uY29tcGxldGUoKX1maW5hbGx5e3RoaXMudW5zdWJzY3JpYmUoKX19LHR9KSh0aSksbW5hPUZ1bmN0aW9uLnByb3RvdHlwZS5iaW5kO2duYT0oZnVuY3Rpb24oKXtmdW5jdGlvbiBlKHQpe3RoaXMucGFydGlhbE9ic2VydmVyPXR9cmV0dXJuIGUucHJvdG90eXBlLm5leHQ9ZnVuY3Rpb24odCl7dmFyIHI9dGhpcy5wYXJ0aWFsT2JzZXJ2ZXI7aWYoci5uZXh0KXRyeXtyLm5leHQodCl9Y2F0Y2goYSl7JHJlKGEpfX0sZS5wcm90b3R5cGUuZXJyb3I9ZnVuY3Rpb24odCl7dmFyIHI9dGhpcy5wYXJ0aWFsT2JzZXJ2ZXI7aWYoci5lcnJvcil0cnl7ci5lcnJvcih0KX1jYXRjaChhKXskcmUoYSl9ZWxzZSAkcmUodCl9LGUucHJvdG90eXBlLmNvbXBsZXRlPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5wYXJ0aWFsT2JzZXJ2ZXI7aWYodC5jb21wbGV0ZSl0cnl7dC5jb21wbGV0ZSgpfWNhdGNoKHIpeyRyZShyKX19LGV9KSgpLGk0PShmdW5jdGlvbihlKXtucih0LGUpO2Z1bmN0aW9uIHQocixhLGkpe3ZhciBvPWUuY2FsbCh0aGlzKXx8dGhpcyxuO2lmKEl0KHIpfHwhciluPXtuZXh0OnI/P3ZvaWQgMCxlcnJvcjphPz92b2lkIDAsY29tcGxldGU6aT8/dm9pZCAwfTtlbHNle3ZhciBzO28mJkRuLnVzZURlcHJlY2F0ZWROZXh0Q29udGV4dD8ocz1PYmplY3QuY3JlYXRlKHIpLHMudW5zdWJzY3JpYmU9ZnVuY3Rpb24oKXtyZXR1cm4gby51bnN1YnNjcmliZSgpfSxuPXtuZXh0OnIubmV4dCYmJGhlKHIubmV4dCxzKSxlcnJvcjpyLmVycm9yJiYkaGUoci5lcnJvcixzKSxjb21wbGV0ZTpyLmNvbXBsZXRlJiYkaGUoci5jb21wbGV0ZSxzKX0pOm49cn1yZXR1cm4gby5kZXN0aW5hdGlvbj1uZXcgZ25hKG4pLG99cmV0dXJuIHR9KShLZCk7Ym5hPXtjbG9zZWQ6ITAsbmV4dDpBbixlcnJvcjp4bmEsY29tcGxldGU6QW59fSk7dmFyIEpkLFhiPWwoKCk9PntKZD0oZnVuY3Rpb24oKXtyZXR1cm4gdHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm9ic2VydmFibGV8fCJAQG9ic2VydmFibGUifSkoKX0pO2Z1bmN0aW9uIG80KGUpe3JldHVybiBlfXZhciBRYj1sKCgpPT57fSk7ZnVuY3Rpb24gdm5hKCl7Zm9yKHZhciBlPVtdLHQ9MDt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKWVbdF09YXJndW1lbnRzW3RdO3JldHVybiBJaGUoZSl9ZnVuY3Rpb24gSWhlKGUpe3JldHVybiBlLmxlbmd0aD09PTA/bzQ6ZS5sZW5ndGg9PT0xP2VbMF06ZnVuY3Rpb24ocil7cmV0dXJuIGUucmVkdWNlKGZ1bmN0aW9uKGEsaSl7cmV0dXJuIGkoYSl9LHIpfX12YXIgTmhlPWwoKCk9PntRYigpfSk7ZnVuY3Rpb24gaVR0KGUpe3ZhciB0O3JldHVybih0PWU/P0RuLlByb21pc2UpIT09bnVsbCYmdCE9PXZvaWQgMD90OlByb21pc2V9ZnVuY3Rpb24geW5hKGUpe3JldHVybiBlJiZJdChlLm5leHQpJiZJdChlLmVycm9yKSYmSXQoZS5jb21wbGV0ZSl9ZnVuY3Rpb24gd25hKGUpe3JldHVybiBlJiZlIGluc3RhbmNlb2YgS2R8fHluYShlKSYmRHJlKGUpfXZhciBIdCxubz1sKCgpPT57WmIoKTtBMigpO1hiKCk7TmhlKCk7VW0oKTtaaSgpO0VyZSgpO0h0PShmdW5jdGlvbigpe2Z1bmN0aW9uIGUodCl7dCYmKHRoaXMuX3N1YnNjcmliZT10KX1yZXR1cm4gZS5wcm90b3R5cGUubGlmdD1mdW5jdGlvbih0KXt2YXIgcj1uZXcgZTtyZXR1cm4gci5zb3VyY2U9dGhpcyxyLm9wZXJhdG9yPXQscn0sZS5wcm90b3R5cGUuc3Vic2NyaWJlPWZ1bmN0aW9uKHQscixhKXt2YXIgaT10aGlzLG89d25hKHQpP3Q6bmV3IGk0KHQscixhKTtyZXR1cm4gR20oZnVuY3Rpb24oKXt2YXIgbj1pLHM9bi5vcGVyYXRvcixjPW4uc291cmNlO28uYWRkKHM/cy5jYWxsKG8sYyk6Yz9pLl9zdWJzY3JpYmUobyk6aS5fdHJ5U3Vic2NyaWJlKG8pKX0pLG99LGUucHJvdG90eXBlLl90cnlTdWJzY3JpYmU9ZnVuY3Rpb24odCl7dHJ5e3JldHVybiB0aGlzLl9zdWJzY3JpYmUodCl9Y2F0Y2gocil7dC5lcnJvcihyKX19LGUucHJvdG90eXBlLmZvckVhY2g9ZnVuY3Rpb24odCxyKXt2YXIgYT10aGlzO3JldHVybiByPWlUdChyKSxuZXcgcihmdW5jdGlvbihpLG8pe3ZhciBuPW5ldyBpNCh7bmV4dDpmdW5jdGlvbihzKXt0cnl7dChzKX1jYXRjaChjKXtvKGMpLG4udW5zdWJzY3JpYmUoKX19LGVycm9yOm8sY29tcGxldGU6aX0pO2Euc3Vic2NyaWJlKG4pfSl9LGUucHJvdG90eXBlLl9zdWJzY3JpYmU9ZnVuY3Rpb24odCl7dmFyIHI7cmV0dXJuKHI9dGhpcy5zb3VyY2UpPT09bnVsbHx8cj09PXZvaWQgMD92b2lkIDA6ci5zdWJzY3JpYmUodCl9LGUucHJvdG90eXBlW0pkXT1mdW5jdGlvbigpe3JldHVybiB0aGlzfSxlLnByb3RvdHlwZS5waXBlPWZ1bmN0aW9uKCl7Zm9yKHZhciB0PVtdLHI9MDtyPGFyZ3VtZW50cy5sZW5ndGg7cisrKXRbcl09YXJndW1lbnRzW3JdO3JldHVybiBJaGUodCkodGhpcyl9LGUucHJvdG90eXBlLnRvUHJvbWlzZT1mdW5jdGlvbih0KXt2YXIgcj10aGlzO3JldHVybiB0PWlUdCh0KSxuZXcgdChmdW5jdGlvbihhLGkpe3ZhciBvO3Iuc3Vic2NyaWJlKGZ1bmN0aW9uKG4pe3JldHVybiBvPW59LGZ1bmN0aW9uKG4pe3JldHVybiBpKG4pfSxmdW5jdGlvbigpe3JldHVybiBhKG8pfSl9KX0sZS5jcmVhdGU9ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBlKHQpfSxlfSkoKX0pO2Z1bmN0aW9uIEZoZShlKXtyZXR1cm4gSXQoZT8ubGlmdCl9ZnVuY3Rpb24gSXIoZSl7cmV0dXJuIGZ1bmN0aW9uKHQpe2lmKEZoZSh0KSlyZXR1cm4gdC5saWZ0KGZ1bmN0aW9uKHIpe3RyeXtyZXR1cm4gZShyLHRoaXMpfWNhdGNoKGEpe3RoaXMuZXJyb3IoYSl9fSk7dGhyb3cgbmV3IFR5cGVFcnJvcigiVW5hYmxlIHRvIGxpZnQgdW5rbm93biBPYnNlcnZhYmxlIHR5cGUiKX19dmFyIFhpPWwoKCk9PntaaSgpfSk7ZnVuY3Rpb24gU3IoZSx0LHIsYSxpKXtyZXR1cm4gbmV3IG9UdChlLHQscixhLGkpfXZhciBvVHQsTjE9bCgoKT0+e0dyKCk7WmIoKTtvVHQ9KGZ1bmN0aW9uKGUpe25yKHQsZSk7ZnVuY3Rpb24gdChyLGEsaSxvLG4scyl7dmFyIGM9ZS5jYWxsKHRoaXMscil8fHRoaXM7cmV0dXJuIGMub25GaW5hbGl6ZT1uLGMuc2hvdWxkVW5zdWJzY3JpYmU9cyxjLl9uZXh0PWE/ZnVuY3Rpb24oZCl7dHJ5e2EoZCl9Y2F0Y2goZil7ci5lcnJvcihmKX19OmUucHJvdG90eXBlLl9uZXh0LGMuX2Vycm9yPW8/ZnVuY3Rpb24oZCl7dHJ5e28oZCl9Y2F0Y2goZil7ci5lcnJvcihmKX1maW5hbGx5e3RoaXMudW5zdWJzY3JpYmUoKX19OmUucHJvdG90eXBlLl9lcnJvcixjLl9jb21wbGV0ZT1pP2Z1bmN0aW9uKCl7dHJ5e2koKX1jYXRjaChkKXtyLmVycm9yKGQpfWZpbmFsbHl7dGhpcy51bnN1YnNjcmliZSgpfX06ZS5wcm90b3R5cGUuX2NvbXBsZXRlLGN9cmV0dXJuIHQucHJvdG90eXBlLnVuc3Vic2NyaWJlPWZ1bmN0aW9uKCl7dmFyIHI7aWYoIXRoaXMuc2hvdWxkVW5zdWJzY3JpYmV8fHRoaXMuc2hvdWxkVW5zdWJzY3JpYmUoKSl7dmFyIGE9dGhpcy5jbG9zZWQ7ZS5wcm90b3R5cGUudW5zdWJzY3JpYmUuY2FsbCh0aGlzKSwhYSYmKChyPXRoaXMub25GaW5hbGl6ZSk9PT1udWxsfHxyPT09dm9pZCAwfHxyLmNhbGwodGhpcykpfX0sdH0pKEtkKX0pO2Z1bmN0aW9uIFByZSgpe3JldHVybiBJcihmdW5jdGlvbihlLHQpe3ZhciByPW51bGw7ZS5fcmVmQ291bnQrKzt2YXIgYT1Tcih0LHZvaWQgMCx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKCl7aWYoIWV8fGUuX3JlZkNvdW50PD0wfHwwPC0tZS5fcmVmQ291bnQpe3I9bnVsbDtyZXR1cm59dmFyIGk9ZS5fY29ubmVjdGlvbixvPXI7cj1udWxsLGkmJighb3x8aT09PW8pJiZpLnVuc3Vic2NyaWJlKCksdC51bnN1YnNjcmliZSgpfSk7ZS5zdWJzY3JpYmUoYSksYS5jbG9zZWR8fChyPWUuY29ubmVjdCgpKX0pfXZhciBJcmU9bCgoKT0+e1hpKCk7TjEoKX0pO3ZhciBuVHQsc1R0PWwoKCk9PntHcigpO25vKCk7QTIoKTtJcmUoKTtOMSgpO1hpKCk7blR0PShmdW5jdGlvbihlKXtucih0LGUpO2Z1bmN0aW9uIHQocixhKXt2YXIgaT1lLmNhbGwodGhpcyl8fHRoaXM7cmV0dXJuIGkuc291cmNlPXIsaS5zdWJqZWN0RmFjdG9yeT1hLGkuX3N1YmplY3Q9bnVsbCxpLl9yZWZDb3VudD0wLGkuX2Nvbm5lY3Rpb249bnVsbCxGaGUocikmJihpLmxpZnQ9ci5saWZ0KSxpfXJldHVybiB0LnByb3RvdHlwZS5fc3Vic2NyaWJlPWZ1bmN0aW9uKHIpe3JldHVybiB0aGlzLmdldFN1YmplY3QoKS5zdWJzY3JpYmUocil9LHQucHJvdG90eXBlLmdldFN1YmplY3Q9ZnVuY3Rpb24oKXt2YXIgcj10aGlzLl9zdWJqZWN0O3JldHVybighcnx8ci5pc1N0b3BwZWQpJiYodGhpcy5fc3ViamVjdD10aGlzLnN1YmplY3RGYWN0b3J5KCkpLHRoaXMuX3N1YmplY3R9LHQucHJvdG90eXBlLl90ZWFyZG93bj1mdW5jdGlvbigpe3RoaXMuX3JlZkNvdW50PTA7dmFyIHI9dGhpcy5fY29ubmVjdGlvbjt0aGlzLl9zdWJqZWN0PXRoaXMuX2Nvbm5lY3Rpb249bnVsbCxyPy51bnN1YnNjcmliZSgpfSx0LnByb3RvdHlwZS5jb25uZWN0PWZ1bmN0aW9uKCl7dmFyIHI9dGhpcyxhPXRoaXMuX2Nvbm5lY3Rpb247aWYoIWEpe2E9dGhpcy5fY29ubmVjdGlvbj1uZXcgdGk7dmFyIGk9dGhpcy5nZXRTdWJqZWN0KCk7YS5hZGQodGhpcy5zb3VyY2Uuc3Vic2NyaWJlKFNyKGksdm9pZCAwLGZ1bmN0aW9uKCl7ci5fdGVhcmRvd24oKSxpLmNvbXBsZXRlKCl9LGZ1bmN0aW9uKG8pe3IuX3RlYXJkb3duKCksaS5lcnJvcihvKX0sZnVuY3Rpb24oKXtyZXR1cm4gci5fdGVhcmRvd24oKX0pKSksYS5jbG9zZWQmJih0aGlzLl9jb25uZWN0aW9uPW51bGwsYT10aS5FTVBUWSl9cmV0dXJuIGF9LHQucHJvdG90eXBlLnJlZkNvdW50PWZ1bmN0aW9uKCl7cmV0dXJuIFByZSgpKHRoaXMpfSx0fSkoSHQpfSk7dmFyIE9oZSxsVHQ9bCgoKT0+e09oZT17bm93OmZ1bmN0aW9uKCl7cmV0dXJuKE9oZS5kZWxlZ2F0ZXx8cGVyZm9ybWFuY2UpLm5vdygpfSxkZWxlZ2F0ZTp2b2lkIDB9fSk7dmFyIEtsLFJoZT1sKCgpPT57R3IoKTtBMigpO0tsPXtzY2hlZHVsZTpmdW5jdGlvbihlKXt2YXIgdD1yZXF1ZXN0QW5pbWF0aW9uRnJhbWUscj1jYW5jZWxBbmltYXRpb25GcmFtZSxhPUtsLmRlbGVnYXRlO2EmJih0PWEucmVxdWVzdEFuaW1hdGlvbkZyYW1lLHI9YS5jYW5jZWxBbmltYXRpb25GcmFtZSk7dmFyIGk9dChmdW5jdGlvbihvKXtyPXZvaWQgMCxlKG8pfSk7cmV0dXJuIG5ldyB0aShmdW5jdGlvbigpe3JldHVybiByPy4oaSl9KX0scmVxdWVzdEFuaW1hdGlvbkZyYW1lOmZ1bmN0aW9uKCl7Zm9yKHZhciBlPVtdLHQ9MDt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKWVbdF09YXJndW1lbnRzW3RdO3ZhciByPUtsLmRlbGVnYXRlO3JldHVybihyPy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWV8fHJlcXVlc3RBbmltYXRpb25GcmFtZSkuYXBwbHkodm9pZCAwLERpKFtdLFZhKGUpKSl9LGNhbmNlbEFuaW1hdGlvbkZyYW1lOmZ1bmN0aW9uKCl7Zm9yKHZhciBlPVtdLHQ9MDt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKWVbdF09YXJndW1lbnRzW3RdO3ZhciByPUtsLmRlbGVnYXRlO3JldHVybihyPy5jYW5jZWxBbmltYXRpb25GcmFtZXx8Y2FuY2VsQW5pbWF0aW9uRnJhbWUpLmFwcGx5KHZvaWQgMCxEaShbXSxWYShlKSkpfSxkZWxlZ2F0ZTp2b2lkIDB9fSk7ZnVuY3Rpb24gTW5hKGUpe3JldHVybiBlP2NUdChlKTprbmF9ZnVuY3Rpb24gY1R0KGUpe3JldHVybiBuZXcgSHQoZnVuY3Rpb24odCl7dmFyIHI9ZXx8T2hlLGE9ci5ub3coKSxpPTAsbz1mdW5jdGlvbigpe3QuY2xvc2VkfHwoaT1LbC5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24obil7aT0wO3ZhciBzPXIubm93KCk7dC5uZXh0KHt0aW1lc3RhbXA6ZT9zOm4sZWxhcHNlZDpzLWF9KSxvKCl9KSl9O3JldHVybiBvKCksZnVuY3Rpb24oKXtpJiZLbC5jYW5jZWxBbmltYXRpb25GcmFtZShpKX19KX12YXIga25hLGRUdD1sKCgpPT57bm8oKTtsVHQoKTtSaGUoKTtrbmE9Y1R0KCl9KTt2YXIgQmhlLEhoZT1sKCgpPT57YTQoKTtCaGU9RW8oZnVuY3Rpb24oZSl7cmV0dXJuIGZ1bmN0aW9uKCl7ZSh0aGlzKSx0aGlzLm5hbWU9Ik9iamVjdFVuc3Vic2NyaWJlZEVycm9yIix0aGlzLm1lc3NhZ2U9Im9iamVjdCB1bnN1YnNjcmliZWQifX0pfSk7dmFyIEYxLHFoZSxZbT1sKCgpPT57R3IoKTtubygpO0EyKCk7SGhlKCk7Vm0oKTtFcmUoKTtGMT0oZnVuY3Rpb24oZSl7bnIodCxlKTtmdW5jdGlvbiB0KCl7dmFyIHI9ZS5jYWxsKHRoaXMpfHx0aGlzO3JldHVybiByLmNsb3NlZD0hMSxyLmN1cnJlbnRPYnNlcnZlcnM9bnVsbCxyLm9ic2VydmVycz1bXSxyLmlzU3RvcHBlZD0hMSxyLmhhc0Vycm9yPSExLHIudGhyb3duRXJyb3I9bnVsbCxyfXJldHVybiB0LnByb3RvdHlwZS5saWZ0PWZ1bmN0aW9uKHIpe3ZhciBhPW5ldyBxaGUodGhpcyx0aGlzKTtyZXR1cm4gYS5vcGVyYXRvcj1yLGF9LHQucHJvdG90eXBlLl90aHJvd0lmQ2xvc2VkPWZ1bmN0aW9uKCl7aWYodGhpcy5jbG9zZWQpdGhyb3cgbmV3IEJoZX0sdC5wcm90b3R5cGUubmV4dD1mdW5jdGlvbihyKXt2YXIgYT10aGlzO0dtKGZ1bmN0aW9uKCl7dmFyIGksbztpZihhLl90aHJvd0lmQ2xvc2VkKCksIWEuaXNTdG9wcGVkKXthLmN1cnJlbnRPYnNlcnZlcnN8fChhLmN1cnJlbnRPYnNlcnZlcnM9QXJyYXkuZnJvbShhLm9ic2VydmVycykpO3RyeXtmb3IodmFyIG49STEoYS5jdXJyZW50T2JzZXJ2ZXJzKSxzPW4ubmV4dCgpOyFzLmRvbmU7cz1uLm5leHQoKSl7dmFyIGM9cy52YWx1ZTtjLm5leHQocil9fWNhdGNoKGQpe2k9e2Vycm9yOmR9fWZpbmFsbHl7dHJ5e3MmJiFzLmRvbmUmJihvPW4ucmV0dXJuKSYmby5jYWxsKG4pfWZpbmFsbHl7aWYoaSl0aHJvdyBpLmVycm9yfX19fSl9LHQucHJvdG90eXBlLmVycm9yPWZ1bmN0aW9uKHIpe3ZhciBhPXRoaXM7R20oZnVuY3Rpb24oKXtpZihhLl90aHJvd0lmQ2xvc2VkKCksIWEuaXNTdG9wcGVkKXthLmhhc0Vycm9yPWEuaXNTdG9wcGVkPSEwLGEudGhyb3duRXJyb3I9cjtmb3IodmFyIGk9YS5vYnNlcnZlcnM7aS5sZW5ndGg7KWkuc2hpZnQoKS5lcnJvcihyKX19KX0sdC5wcm90b3R5cGUuY29tcGxldGU9ZnVuY3Rpb24oKXt2YXIgcj10aGlzO0dtKGZ1bmN0aW9uKCl7aWYoci5fdGhyb3dJZkNsb3NlZCgpLCFyLmlzU3RvcHBlZCl7ci5pc1N0b3BwZWQ9ITA7Zm9yKHZhciBhPXIub2JzZXJ2ZXJzO2EubGVuZ3RoOylhLnNoaWZ0KCkuY29tcGxldGUoKX19KX0sdC5wcm90b3R5cGUudW5zdWJzY3JpYmU9ZnVuY3Rpb24oKXt0aGlzLmlzU3RvcHBlZD10aGlzLmNsb3NlZD0hMCx0aGlzLm9ic2VydmVycz10aGlzLmN1cnJlbnRPYnNlcnZlcnM9bnVsbH0sT2JqZWN0LmRlZmluZVByb3BlcnR5KHQucHJvdG90eXBlLCJvYnNlcnZlZCIse2dldDpmdW5jdGlvbigpe3ZhciByO3JldHVybigocj10aGlzLm9ic2VydmVycyk9PT1udWxsfHxyPT09dm9pZCAwP3ZvaWQgMDpyLmxlbmd0aCk+MH0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSx0LnByb3RvdHlwZS5fdHJ5U3Vic2NyaWJlPWZ1bmN0aW9uKHIpe3JldHVybiB0aGlzLl90aHJvd0lmQ2xvc2VkKCksZS5wcm90b3R5cGUuX3RyeVN1YnNjcmliZS5jYWxsKHRoaXMscil9LHQucHJvdG90eXBlLl9zdWJzY3JpYmU9ZnVuY3Rpb24ocil7cmV0dXJuIHRoaXMuX3Rocm93SWZDbG9zZWQoKSx0aGlzLl9jaGVja0ZpbmFsaXplZFN0YXR1c2VzKHIpLHRoaXMuX2lubmVyU3Vic2NyaWJlKHIpfSx0LnByb3RvdHlwZS5faW5uZXJTdWJzY3JpYmU9ZnVuY3Rpb24ocil7dmFyIGE9dGhpcyxpPXRoaXMsbz1pLmhhc0Vycm9yLG49aS5pc1N0b3BwZWQscz1pLm9ic2VydmVycztyZXR1cm4gb3x8bj9MaGU6KHRoaXMuY3VycmVudE9ic2VydmVycz1udWxsLHMucHVzaChyKSxuZXcgdGkoZnVuY3Rpb24oKXthLmN1cnJlbnRPYnNlcnZlcnM9bnVsbCxtcyhzLHIpfSkpfSx0LnByb3RvdHlwZS5fY2hlY2tGaW5hbGl6ZWRTdGF0dXNlcz1mdW5jdGlvbihyKXt2YXIgYT10aGlzLGk9YS5oYXNFcnJvcixvPWEudGhyb3duRXJyb3Isbj1hLmlzU3RvcHBlZDtpP3IuZXJyb3Iobyk6biYmci5jb21wbGV0ZSgpfSx0LnByb3RvdHlwZS5hc09ic2VydmFibGU9ZnVuY3Rpb24oKXt2YXIgcj1uZXcgSHQ7cmV0dXJuIHIuc291cmNlPXRoaXMscn0sdC5jcmVhdGU9ZnVuY3Rpb24ocixhKXtyZXR1cm4gbmV3IHFoZShyLGEpfSx0fSkoSHQpLHFoZT0oZnVuY3Rpb24oZSl7bnIodCxlKTtmdW5jdGlvbiB0KHIsYSl7dmFyIGk9ZS5jYWxsKHRoaXMpfHx0aGlzO3JldHVybiBpLmRlc3RpbmF0aW9uPXIsaS5zb3VyY2U9YSxpfXJldHVybiB0LnByb3RvdHlwZS5uZXh0PWZ1bmN0aW9uKHIpe3ZhciBhLGk7KGk9KGE9dGhpcy5kZXN0aW5hdGlvbik9PT1udWxsfHxhPT09dm9pZCAwP3ZvaWQgMDphLm5leHQpPT09bnVsbHx8aT09PXZvaWQgMHx8aS5jYWxsKGEscil9LHQucHJvdG90eXBlLmVycm9yPWZ1bmN0aW9uKHIpe3ZhciBhLGk7KGk9KGE9dGhpcy5kZXN0aW5hdGlvbik9PT1udWxsfHxhPT09dm9pZCAwP3ZvaWQgMDphLmVycm9yKT09PW51bGx8fGk9PT12b2lkIDB8fGkuY2FsbChhLHIpfSx0LnByb3RvdHlwZS5jb21wbGV0ZT1mdW5jdGlvbigpe3ZhciByLGE7KGE9KHI9dGhpcy5kZXN0aW5hdGlvbik9PT1udWxsfHxyPT09dm9pZCAwP3ZvaWQgMDpyLmNvbXBsZXRlKT09PW51bGx8fGE9PT12b2lkIDB8fGEuY2FsbChyKX0sdC5wcm90b3R5cGUuX3N1YnNjcmliZT1mdW5jdGlvbihyKXt2YXIgYSxpO3JldHVybihpPShhPXRoaXMuc291cmNlKT09PW51bGx8fGE9PT12b2lkIDA/dm9pZCAwOmEuc3Vic2NyaWJlKHIpKSE9PW51bGwmJmkhPT12b2lkIDA/aTpMaGV9LHR9KShGMSl9KTt2YXIgdVR0LGZUdD1sKCgpPT57R3IoKTtZbSgpO3VUdD0oZnVuY3Rpb24oZSl7bnIodCxlKTtmdW5jdGlvbiB0KHIpe3ZhciBhPWUuY2FsbCh0aGlzKXx8dGhpcztyZXR1cm4gYS5fdmFsdWU9cixhfXJldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydHkodC5wcm90b3R5cGUsInZhbHVlIix7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZ2V0VmFsdWUoKX0sZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITB9KSx0LnByb3RvdHlwZS5fc3Vic2NyaWJlPWZ1bmN0aW9uKHIpe3ZhciBhPWUucHJvdG90eXBlLl9zdWJzY3JpYmUuY2FsbCh0aGlzLHIpO3JldHVybiFhLmNsb3NlZCYmci5uZXh0KHRoaXMuX3ZhbHVlKSxhfSx0LnByb3RvdHlwZS5nZXRWYWx1ZT1mdW5jdGlvbigpe3ZhciByPXRoaXMsYT1yLmhhc0Vycm9yLGk9ci50aHJvd25FcnJvcixvPXIuX3ZhbHVlO2lmKGEpdGhyb3cgaTtyZXR1cm4gdGhpcy5fdGhyb3dJZkNsb3NlZCgpLG99LHQucHJvdG90eXBlLm5leHQ9ZnVuY3Rpb24ocil7ZS5wcm90b3R5cGUubmV4dC5jYWxsKHRoaXMsdGhpcy5fdmFsdWU9cil9LHR9KShGMSl9KTt2YXIgS2IsamhlPWwoKCk9PntLYj17bm93OmZ1bmN0aW9uKCl7cmV0dXJuKEtiLmRlbGVnYXRlfHxEYXRlKS5ub3coKX0sZGVsZWdhdGU6dm9pZCAwfX0pO3ZhciBabSxWaGU9bCgoKT0+e0dyKCk7WW0oKTtqaGUoKTtabT0oZnVuY3Rpb24oZSl7bnIodCxlKTtmdW5jdGlvbiB0KHIsYSxpKXtyPT09dm9pZCAwJiYocj0xLzApLGE9PT12b2lkIDAmJihhPTEvMCksaT09PXZvaWQgMCYmKGk9S2IpO3ZhciBvPWUuY2FsbCh0aGlzKXx8dGhpcztyZXR1cm4gby5fYnVmZmVyU2l6ZT1yLG8uX3dpbmRvd1RpbWU9YSxvLl90aW1lc3RhbXBQcm92aWRlcj1pLG8uX2J1ZmZlcj1bXSxvLl9pbmZpbml0ZVRpbWVXaW5kb3c9ITAsby5faW5maW5pdGVUaW1lV2luZG93PWE9PT0xLzAsby5fYnVmZmVyU2l6ZT1NYXRoLm1heCgxLHIpLG8uX3dpbmRvd1RpbWU9TWF0aC5tYXgoMSxhKSxvfXJldHVybiB0LnByb3RvdHlwZS5uZXh0PWZ1bmN0aW9uKHIpe3ZhciBhPXRoaXMsaT1hLmlzU3RvcHBlZCxvPWEuX2J1ZmZlcixuPWEuX2luZmluaXRlVGltZVdpbmRvdyxzPWEuX3RpbWVzdGFtcFByb3ZpZGVyLGM9YS5fd2luZG93VGltZTtpfHwoby5wdXNoKHIpLCFuJiZvLnB1c2gocy5ub3coKStjKSksdGhpcy5fdHJpbUJ1ZmZlcigpLGUucHJvdG90eXBlLm5leHQuY2FsbCh0aGlzLHIpfSx0LnByb3RvdHlwZS5fc3Vic2NyaWJlPWZ1bmN0aW9uKHIpe3RoaXMuX3Rocm93SWZDbG9zZWQoKSx0aGlzLl90cmltQnVmZmVyKCk7Zm9yKHZhciBhPXRoaXMuX2lubmVyU3Vic2NyaWJlKHIpLGk9dGhpcyxvPWkuX2luZmluaXRlVGltZVdpbmRvdyxuPWkuX2J1ZmZlcixzPW4uc2xpY2UoKSxjPTA7YzxzLmxlbmd0aCYmIXIuY2xvc2VkO2MrPW8/MToyKXIubmV4dChzW2NdKTtyZXR1cm4gdGhpcy5fY2hlY2tGaW5hbGl6ZWRTdGF0dXNlcyhyKSxhfSx0LnByb3RvdHlwZS5fdHJpbUJ1ZmZlcj1mdW5jdGlvbigpe3ZhciByPXRoaXMsYT1yLl9idWZmZXJTaXplLGk9ci5fdGltZXN0YW1wUHJvdmlkZXIsbz1yLl9idWZmZXIsbj1yLl9pbmZpbml0ZVRpbWVXaW5kb3cscz0obj8xOjIpKmE7aWYoYTwxLzAmJnM8by5sZW5ndGgmJm8uc3BsaWNlKDAsby5sZW5ndGgtcyksIW4pe2Zvcih2YXIgYz1pLm5vdygpLGQ9MCxmPTE7ZjxvLmxlbmd0aCYmb1tmXTw9YztmKz0yKWQ9ZjtkJiZvLnNwbGljZSgwLGQrMSl9fSx0fSkoRjEpfSk7dmFyIHBUdCxoVHQ9bCgoKT0+e0dyKCk7WW0oKTtwVHQ9KGZ1bmN0aW9uKGUpe25yKHQsZSk7ZnVuY3Rpb24gdCgpe3ZhciByPWUhPT1udWxsJiZlLmFwcGx5KHRoaXMsYXJndW1lbnRzKXx8dGhpcztyZXR1cm4gci5fdmFsdWU9bnVsbCxyLl9oYXNWYWx1ZT0hMSxyLl9pc0NvbXBsZXRlPSExLHJ9cmV0dXJuIHQucHJvdG90eXBlLl9jaGVja0ZpbmFsaXplZFN0YXR1c2VzPWZ1bmN0aW9uKHIpe3ZhciBhPXRoaXMsaT1hLmhhc0Vycm9yLG89YS5faGFzVmFsdWUsbj1hLl92YWx1ZSxzPWEudGhyb3duRXJyb3IsYz1hLmlzU3RvcHBlZCxkPWEuX2lzQ29tcGxldGU7aT9yLmVycm9yKHMpOihjfHxkKSYmKG8mJnIubmV4dChuKSxyLmNvbXBsZXRlKCkpfSx0LnByb3RvdHlwZS5uZXh0PWZ1bmN0aW9uKHIpe3RoaXMuaXNTdG9wcGVkfHwodGhpcy5fdmFsdWU9cix0aGlzLl9oYXNWYWx1ZT0hMCl9LHQucHJvdG90eXBlLmNvbXBsZXRlPWZ1bmN0aW9uKCl7dmFyIHI9dGhpcyxhPXIuX2hhc1ZhbHVlLGk9ci5fdmFsdWUsbz1yLl9pc0NvbXBsZXRlO298fCh0aGlzLl9pc0NvbXBsZXRlPSEwLGEmJmUucHJvdG90eXBlLm5leHQuY2FsbCh0aGlzLGkpLGUucHJvdG90eXBlLmNvbXBsZXRlLmNhbGwodGhpcykpfSx0fSkoRjEpfSk7dmFyIFVoZSxtVHQ9bCgoKT0+e0dyKCk7QTIoKTtVaGU9KGZ1bmN0aW9uKGUpe25yKHQsZSk7ZnVuY3Rpb24gdChyLGEpe3JldHVybiBlLmNhbGwodGhpcyl8fHRoaXN9cmV0dXJuIHQucHJvdG90eXBlLnNjaGVkdWxlPWZ1bmN0aW9uKHIsYSl7cmV0dXJuIGE9PT12b2lkIDAmJihhPTApLHRoaXN9LHR9KSh0aSl9KTt2YXIgSmIsZ1R0PWwoKCk9PntHcigpO0piPXtzZXRJbnRlcnZhbDpmdW5jdGlvbihlLHQpe2Zvcih2YXIgcj1bXSxhPTI7YTxhcmd1bWVudHMubGVuZ3RoO2ErKylyW2EtMl09YXJndW1lbnRzW2FdO3ZhciBpPUpiLmRlbGVnYXRlO3JldHVybiBpPy5zZXRJbnRlcnZhbD9pLnNldEludGVydmFsLmFwcGx5KGksRGkoW2UsdF0sVmEocikpKTpzZXRJbnRlcnZhbC5hcHBseSh2b2lkIDAsRGkoW2UsdF0sVmEocikpKX0sY2xlYXJJbnRlcnZhbDpmdW5jdGlvbihlKXt2YXIgdD1KYi5kZWxlZ2F0ZTtyZXR1cm4odD8uY2xlYXJJbnRlcnZhbHx8Y2xlYXJJbnRlcnZhbCkoZSl9LGRlbGVnYXRlOnZvaWQgMH19KTt2YXIgZ3MsWG09bCgoKT0+e0dyKCk7bVR0KCk7Z1R0KCk7Vm0oKTtncz0oZnVuY3Rpb24oZSl7bnIodCxlKTtmdW5jdGlvbiB0KHIsYSl7dmFyIGk9ZS5jYWxsKHRoaXMscixhKXx8dGhpcztyZXR1cm4gaS5zY2hlZHVsZXI9cixpLndvcms9YSxpLnBlbmRpbmc9ITEsaX1yZXR1cm4gdC5wcm90b3R5cGUuc2NoZWR1bGU9ZnVuY3Rpb24ocixhKXt2YXIgaTtpZihhPT09dm9pZCAwJiYoYT0wKSx0aGlzLmNsb3NlZClyZXR1cm4gdGhpczt0aGlzLnN0YXRlPXI7dmFyIG89dGhpcy5pZCxuPXRoaXMuc2NoZWR1bGVyO3JldHVybiBvIT1udWxsJiYodGhpcy5pZD10aGlzLnJlY3ljbGVBc3luY0lkKG4sbyxhKSksdGhpcy5wZW5kaW5nPSEwLHRoaXMuZGVsYXk9YSx0aGlzLmlkPShpPXRoaXMuaWQpIT09bnVsbCYmaSE9PXZvaWQgMD9pOnRoaXMucmVxdWVzdEFzeW5jSWQobix0aGlzLmlkLGEpLHRoaXN9LHQucHJvdG90eXBlLnJlcXVlc3RBc3luY0lkPWZ1bmN0aW9uKHIsYSxpKXtyZXR1cm4gaT09PXZvaWQgMCYmKGk9MCksSmIuc2V0SW50ZXJ2YWwoci5mbHVzaC5iaW5kKHIsdGhpcyksaSl9LHQucHJvdG90eXBlLnJlY3ljbGVBc3luY0lkPWZ1bmN0aW9uKHIsYSxpKXtpZihpPT09dm9pZCAwJiYoaT0wKSxpIT1udWxsJiZ0aGlzLmRlbGF5PT09aSYmdGhpcy5wZW5kaW5nPT09ITEpcmV0dXJuIGE7YSE9bnVsbCYmSmIuY2xlYXJJbnRlcnZhbChhKX0sdC5wcm90b3R5cGUuZXhlY3V0ZT1mdW5jdGlvbihyLGEpe2lmKHRoaXMuY2xvc2VkKXJldHVybiBuZXcgRXJyb3IoImV4ZWN1dGluZyBhIGNhbmNlbGxlZCBhY3Rpb24iKTt0aGlzLnBlbmRpbmc9ITE7dmFyIGk9dGhpcy5fZXhlY3V0ZShyLGEpO2lmKGkpcmV0dXJuIGk7dGhpcy5wZW5kaW5nPT09ITEmJnRoaXMuaWQhPW51bGwmJih0aGlzLmlkPXRoaXMucmVjeWNsZUFzeW5jSWQodGhpcy5zY2hlZHVsZXIsdGhpcy5pZCxudWxsKSl9LHQucHJvdG90eXBlLl9leGVjdXRlPWZ1bmN0aW9uKHIsYSl7dmFyIGk9ITEsbzt0cnl7dGhpcy53b3JrKHIpfWNhdGNoKG4pe2k9ITAsbz1ufHxuZXcgRXJyb3IoIlNjaGVkdWxlZCBhY3Rpb24gdGhyZXcgZmFsc3kgZXJyb3IiKX1pZihpKXJldHVybiB0aGlzLnVuc3Vic2NyaWJlKCksb30sdC5wcm90b3R5cGUudW5zdWJzY3JpYmU9ZnVuY3Rpb24oKXtpZighdGhpcy5jbG9zZWQpe3ZhciByPXRoaXMsYT1yLmlkLGk9ci5zY2hlZHVsZXIsbz1pLmFjdGlvbnM7dGhpcy53b3JrPXRoaXMuc3RhdGU9dGhpcy5zY2hlZHVsZXI9bnVsbCx0aGlzLnBlbmRpbmc9ITEsbXMobyx0aGlzKSxhIT1udWxsJiYodGhpcy5pZD10aGlzLnJlY3ljbGVBc3luY0lkKGksYSxudWxsKSksdGhpcy5kZWxheT1udWxsLGUucHJvdG90eXBlLnVuc3Vic2NyaWJlLmNhbGwodGhpcyl9fSx0fSkoVWhlKX0pO2Z1bmN0aW9uIHhUdChlKXtyZXR1cm4gZSBpbiBOcmU/KGRlbGV0ZSBOcmVbZV0sITApOiExfXZhciBTbmEsV2hlLE5yZSxHaGUsR2tpLGJUdD1sKCgpPT57U25hPTEsTnJlPXt9O0doZT17c2V0SW1tZWRpYXRlOmZ1bmN0aW9uKGUpe3ZhciB0PVNuYSsrO3JldHVybiBOcmVbdF09ITAsV2hlfHwoV2hlPVByb21pc2UucmVzb2x2ZSgpKSxXaGUudGhlbihmdW5jdGlvbigpe3JldHVybiB4VHQodCkmJmUoKX0pLHR9LGNsZWFySW1tZWRpYXRlOmZ1bmN0aW9uKGUpe3hUdChlKX19LEdraT17cGVuZGluZzpmdW5jdGlvbigpe3JldHVybiBPYmplY3Qua2V5cyhOcmUpLmxlbmd0aH19fSk7dmFyIHpuYSxDbmEsZXYsdlR0PWwoKCk9PntHcigpO2JUdCgpO3puYT1HaGUuc2V0SW1tZWRpYXRlLENuYT1HaGUuY2xlYXJJbW1lZGlhdGUsZXY9e3NldEltbWVkaWF0ZTpmdW5jdGlvbigpe2Zvcih2YXIgZT1bXSx0PTA7dDxhcmd1bWVudHMubGVuZ3RoO3QrKyllW3RdPWFyZ3VtZW50c1t0XTt2YXIgcj1ldi5kZWxlZ2F0ZTtyZXR1cm4ocj8uc2V0SW1tZWRpYXRlfHx6bmEpLmFwcGx5KHZvaWQgMCxEaShbXSxWYShlKSkpfSxjbGVhckltbWVkaWF0ZTpmdW5jdGlvbihlKXt2YXIgdD1ldi5kZWxlZ2F0ZTtyZXR1cm4odD8uY2xlYXJJbW1lZGlhdGV8fENuYSkoZSl9LGRlbGVnYXRlOnZvaWQgMH19KTt2YXIgWWhlLHlUdD1sKCgpPT57R3IoKTtYbSgpO3ZUdCgpO1loZT0oZnVuY3Rpb24oZSl7bnIodCxlKTtmdW5jdGlvbiB0KHIsYSl7dmFyIGk9ZS5jYWxsKHRoaXMscixhKXx8dGhpcztyZXR1cm4gaS5zY2hlZHVsZXI9cixpLndvcms9YSxpfXJldHVybiB0LnByb3RvdHlwZS5yZXF1ZXN0QXN5bmNJZD1mdW5jdGlvbihyLGEsaSl7cmV0dXJuIGk9PT12b2lkIDAmJihpPTApLGkhPT1udWxsJiZpPjA/ZS5wcm90b3R5cGUucmVxdWVzdEFzeW5jSWQuY2FsbCh0aGlzLHIsYSxpKTooci5hY3Rpb25zLnB1c2godGhpcyksci5fc2NoZWR1bGVkfHwoci5fc2NoZWR1bGVkPWV2LnNldEltbWVkaWF0ZShyLmZsdXNoLmJpbmQocix2b2lkIDApKSkpfSx0LnByb3RvdHlwZS5yZWN5Y2xlQXN5bmNJZD1mdW5jdGlvbihyLGEsaSl7dmFyIG87aWYoaT09PXZvaWQgMCYmKGk9MCksaSE9bnVsbD9pPjA6dGhpcy5kZWxheT4wKXJldHVybiBlLnByb3RvdHlwZS5yZWN5Y2xlQXN5bmNJZC5jYWxsKHRoaXMscixhLGkpO3ZhciBuPXIuYWN0aW9uczthIT1udWxsJiYoKG89bltuLmxlbmd0aC0xXSk9PT1udWxsfHxvPT09dm9pZCAwP3ZvaWQgMDpvLmlkKSE9PWEmJihldi5jbGVhckltbWVkaWF0ZShhKSxyLl9zY2hlZHVsZWQ9PT1hJiYoci5fc2NoZWR1bGVkPXZvaWQgMCkpfSx0fSkoZ3MpfSk7dmFyIHR2LFpoZT1sKCgpPT57amhlKCk7dHY9KGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZSh0LHIpe3I9PT12b2lkIDAmJihyPWUubm93KSx0aGlzLnNjaGVkdWxlckFjdGlvbkN0b3I9dCx0aGlzLm5vdz1yfXJldHVybiBlLnByb3RvdHlwZS5zY2hlZHVsZT1mdW5jdGlvbih0LHIsYSl7cmV0dXJuIHI9PT12b2lkIDAmJihyPTApLG5ldyB0aGlzLnNjaGVkdWxlckFjdGlvbkN0b3IodGhpcyx0KS5zY2hlZHVsZShhLHIpfSxlLm5vdz1LYi5ub3csZX0pKCl9KTt2YXIgeHMsUW09bCgoKT0+e0dyKCk7WmhlKCk7eHM9KGZ1bmN0aW9uKGUpe25yKHQsZSk7ZnVuY3Rpb24gdChyLGEpe2E9PT12b2lkIDAmJihhPXR2Lm5vdyk7dmFyIGk9ZS5jYWxsKHRoaXMscixhKXx8dGhpcztyZXR1cm4gaS5hY3Rpb25zPVtdLGkuX2FjdGl2ZT0hMSxpfXJldHVybiB0LnByb3RvdHlwZS5mbHVzaD1mdW5jdGlvbihyKXt2YXIgYT10aGlzLmFjdGlvbnM7aWYodGhpcy5fYWN0aXZlKXthLnB1c2gocik7cmV0dXJufXZhciBpO3RoaXMuX2FjdGl2ZT0hMDtkbyBpZihpPXIuZXhlY3V0ZShyLnN0YXRlLHIuZGVsYXkpKWJyZWFrO3doaWxlKHI9YS5zaGlmdCgpKTtpZih0aGlzLl9hY3RpdmU9ITEsaSl7Zm9yKDtyPWEuc2hpZnQoKTspci51bnN1YnNjcmliZSgpO3Rocm93IGl9fSx0fSkodHYpfSk7dmFyIFhoZSx3VHQ9bCgoKT0+e0dyKCk7UW0oKTtYaGU9KGZ1bmN0aW9uKGUpe25yKHQsZSk7ZnVuY3Rpb24gdCgpe3JldHVybiBlIT09bnVsbCYmZS5hcHBseSh0aGlzLGFyZ3VtZW50cyl8fHRoaXN9cmV0dXJuIHQucHJvdG90eXBlLmZsdXNoPWZ1bmN0aW9uKHIpe3RoaXMuX2FjdGl2ZT0hMDt2YXIgYT10aGlzLl9zY2hlZHVsZWQ7dGhpcy5fc2NoZWR1bGVkPXZvaWQgMDt2YXIgaT10aGlzLmFjdGlvbnMsbztyPXJ8fGkuc2hpZnQoKTtkbyBpZihvPXIuZXhlY3V0ZShyLnN0YXRlLHIuZGVsYXkpKWJyZWFrO3doaWxlKChyPWlbMF0pJiZyLmlkPT09YSYmaS5zaGlmdCgpKTtpZih0aGlzLl9hY3RpdmU9ITEsbyl7Zm9yKDsocj1pWzBdKSYmci5pZD09PWEmJmkuc2hpZnQoKTspci51bnN1YnNjcmliZSgpO3Rocm93IG99fSx0fSkoeHMpfSk7dmFyIE1UdCxfbmEsa1R0PWwoKCk9Pnt5VHQoKTt3VHQoKTtNVHQ9bmV3IFhoZShZaGUpLF9uYT1NVHR9KTt2YXIgRTIsUWhlLGU2PWwoKCk9PntYbSgpO1FtKCk7RTI9bmV3IHhzKGdzKSxRaGU9RTJ9KTt2YXIgS2hlLFNUdD1sKCgpPT57R3IoKTtYbSgpO0toZT0oZnVuY3Rpb24oZSl7bnIodCxlKTtmdW5jdGlvbiB0KHIsYSl7dmFyIGk9ZS5jYWxsKHRoaXMscixhKXx8dGhpcztyZXR1cm4gaS5zY2hlZHVsZXI9cixpLndvcms9YSxpfXJldHVybiB0LnByb3RvdHlwZS5zY2hlZHVsZT1mdW5jdGlvbihyLGEpe3JldHVybiBhPT09dm9pZCAwJiYoYT0wKSxhPjA/ZS5wcm90b3R5cGUuc2NoZWR1bGUuY2FsbCh0aGlzLHIsYSk6KHRoaXMuZGVsYXk9YSx0aGlzLnN0YXRlPXIsdGhpcy5zY2hlZHVsZXIuZmx1c2godGhpcyksdGhpcyl9LHQucHJvdG90eXBlLmV4ZWN1dGU9ZnVuY3Rpb24ocixhKXtyZXR1cm4gYT4wfHx0aGlzLmNsb3NlZD9lLnByb3RvdHlwZS5leGVjdXRlLmNhbGwodGhpcyxyLGEpOnRoaXMuX2V4ZWN1dGUocixhKX0sdC5wcm90b3R5cGUucmVxdWVzdEFzeW5jSWQ9ZnVuY3Rpb24ocixhLGkpe3JldHVybiBpPT09dm9pZCAwJiYoaT0wKSxpIT1udWxsJiZpPjB8fGk9PW51bGwmJnRoaXMuZGVsYXk+MD9lLnByb3RvdHlwZS5yZXF1ZXN0QXN5bmNJZC5jYWxsKHRoaXMscixhLGkpOihyLmZsdXNoKHRoaXMpLDApfSx0fSkoZ3MpfSk7dmFyIEpoZSx6VHQ9bCgoKT0+e0dyKCk7UW0oKTtKaGU9KGZ1bmN0aW9uKGUpe25yKHQsZSk7ZnVuY3Rpb24gdCgpe3JldHVybiBlIT09bnVsbCYmZS5hcHBseSh0aGlzLGFyZ3VtZW50cyl8fHRoaXN9cmV0dXJuIHR9KSh4cyl9KTt2YXIgQ1R0LFRuYSxfVHQ9bCgoKT0+e1NUdCgpO3pUdCgpO0NUdD1uZXcgSmhlKEtoZSksVG5hPUNUdH0pO3ZhciBlbWUsVFR0PWwoKCk9PntHcigpO1htKCk7UmhlKCk7ZW1lPShmdW5jdGlvbihlKXtucih0LGUpO2Z1bmN0aW9uIHQocixhKXt2YXIgaT1lLmNhbGwodGhpcyxyLGEpfHx0aGlzO3JldHVybiBpLnNjaGVkdWxlcj1yLGkud29yaz1hLGl9cmV0dXJuIHQucHJvdG90eXBlLnJlcXVlc3RBc3luY0lkPWZ1bmN0aW9uKHIsYSxpKXtyZXR1cm4gaT09PXZvaWQgMCYmKGk9MCksaSE9PW51bGwmJmk+MD9lLnByb3RvdHlwZS5yZXF1ZXN0QXN5bmNJZC5jYWxsKHRoaXMscixhLGkpOihyLmFjdGlvbnMucHVzaCh0aGlzKSxyLl9zY2hlZHVsZWR8fChyLl9zY2hlZHVsZWQ9S2wucmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCl7cmV0dXJuIHIuZmx1c2godm9pZCAwKX0pKSl9LHQucHJvdG90eXBlLnJlY3ljbGVBc3luY0lkPWZ1bmN0aW9uKHIsYSxpKXt2YXIgbztpZihpPT09dm9pZCAwJiYoaT0wKSxpIT1udWxsP2k+MDp0aGlzLmRlbGF5PjApcmV0dXJuIGUucHJvdG90eXBlLnJlY3ljbGVBc3luY0lkLmNhbGwodGhpcyxyLGEsaSk7dmFyIG49ci5hY3Rpb25zO2EhPW51bGwmJmE9PT1yLl9zY2hlZHVsZWQmJigobz1uW24ubGVuZ3RoLTFdKT09PW51bGx8fG89PT12b2lkIDA/dm9pZCAwOm8uaWQpIT09YSYmKEtsLmNhbmNlbEFuaW1hdGlvbkZyYW1lKGEpLHIuX3NjaGVkdWxlZD12b2lkIDApfSx0fSkoZ3MpfSk7dmFyIHRtZSxMVHQ9bCgoKT0+e0dyKCk7UW0oKTt0bWU9KGZ1bmN0aW9uKGUpe25yKHQsZSk7ZnVuY3Rpb24gdCgpe3JldHVybiBlIT09bnVsbCYmZS5hcHBseSh0aGlzLGFyZ3VtZW50cyl8fHRoaXN9cmV0dXJuIHQucHJvdG90eXBlLmZsdXNoPWZ1bmN0aW9uKHIpe3RoaXMuX2FjdGl2ZT0hMDt2YXIgYTtyP2E9ci5pZDooYT10aGlzLl9zY2hlZHVsZWQsdGhpcy5fc2NoZWR1bGVkPXZvaWQgMCk7dmFyIGk9dGhpcy5hY3Rpb25zLG87cj1yfHxpLnNoaWZ0KCk7ZG8gaWYobz1yLmV4ZWN1dGUoci5zdGF0ZSxyLmRlbGF5KSlicmVhazt3aGlsZSgocj1pWzBdKSYmci5pZD09PWEmJmkuc2hpZnQoKSk7aWYodGhpcy5fYWN0aXZlPSExLG8pe2Zvcig7KHI9aVswXSkmJnIuaWQ9PT1hJiZpLnNoaWZ0KCk7KXIudW5zdWJzY3JpYmUoKTt0aHJvdyBvfX0sdH0pKHhzKX0pO3ZhciBEVHQsTG5hLEFUdD1sKCgpPT57VFR0KCk7TFR0KCk7RFR0PW5ldyB0bWUoZW1lKSxMbmE9RFR0fSk7dmFyIEVUdCxybWUsJFR0PWwoKCk9PntHcigpO1htKCk7QTIoKTtRbSgpO0VUdD0oZnVuY3Rpb24oZSl7bnIodCxlKTtmdW5jdGlvbiB0KHIsYSl7cj09PXZvaWQgMCYmKHI9cm1lKSxhPT09dm9pZCAwJiYoYT0xLzApO3ZhciBpPWUuY2FsbCh0aGlzLHIsZnVuY3Rpb24oKXtyZXR1cm4gaS5mcmFtZX0pfHx0aGlzO3JldHVybiBpLm1heEZyYW1lcz1hLGkuZnJhbWU9MCxpLmluZGV4PS0xLGl9cmV0dXJuIHQucHJvdG90eXBlLmZsdXNoPWZ1bmN0aW9uKCl7Zm9yKHZhciByPXRoaXMsYT1yLmFjdGlvbnMsaT1yLm1heEZyYW1lcyxvLG47KG49YVswXSkmJm4uZGVsYXk8PWkmJihhLnNoaWZ0KCksdGhpcy5mcmFtZT1uLmRlbGF5LCEobz1uLmV4ZWN1dGUobi5zdGF0ZSxuLmRlbGF5KSkpOyk7aWYobyl7Zm9yKDtuPWEuc2hpZnQoKTspbi51bnN1YnNjcmliZSgpO3Rocm93IG99fSx0LmZyYW1lVGltZUZhY3Rvcj0xMCx0fSkoeHMpLHJtZT0oZnVuY3Rpb24oZSl7bnIodCxlKTtmdW5jdGlvbiB0KHIsYSxpKXtpPT09dm9pZCAwJiYoaT1yLmluZGV4Kz0xKTt2YXIgbz1lLmNhbGwodGhpcyxyLGEpfHx0aGlzO3JldHVybiBvLnNjaGVkdWxlcj1yLG8ud29yaz1hLG8uaW5kZXg9aSxvLmFjdGl2ZT0hMCxvLmluZGV4PXIuaW5kZXg9aSxvfXJldHVybiB0LnByb3RvdHlwZS5zY2hlZHVsZT1mdW5jdGlvbihyLGEpe2lmKGE9PT12b2lkIDAmJihhPTApLE51bWJlci5pc0Zpbml0ZShhKSl7aWYoIXRoaXMuaWQpcmV0dXJuIGUucHJvdG90eXBlLnNjaGVkdWxlLmNhbGwodGhpcyxyLGEpO3RoaXMuYWN0aXZlPSExO3ZhciBpPW5ldyB0KHRoaXMuc2NoZWR1bGVyLHRoaXMud29yayk7cmV0dXJuIHRoaXMuYWRkKGkpLGkuc2NoZWR1bGUocixhKX1lbHNlIHJldHVybiB0aS5FTVBUWX0sdC5wcm90b3R5cGUucmVxdWVzdEFzeW5jSWQ9ZnVuY3Rpb24ocixhLGkpe2k9PT12b2lkIDAmJihpPTApLHRoaXMuZGVsYXk9ci5mcmFtZStpO3ZhciBvPXIuYWN0aW9ucztyZXR1cm4gby5wdXNoKHRoaXMpLG8uc29ydCh0LnNvcnRBY3Rpb25zKSwxfSx0LnByb3RvdHlwZS5yZWN5Y2xlQXN5bmNJZD1mdW5jdGlvbihyLGEsaSl7aT09PXZvaWQgMCYmKGk9MCl9LHQucHJvdG90eXBlLl9leGVjdXRlPWZ1bmN0aW9uKHIsYSl7aWYodGhpcy5hY3RpdmU9PT0hMClyZXR1cm4gZS5wcm90b3R5cGUuX2V4ZWN1dGUuY2FsbCh0aGlzLHIsYSl9LHQuc29ydEFjdGlvbnM9ZnVuY3Rpb24ocixhKXtyZXR1cm4gci5kZWxheT09PWEuZGVsYXk/ci5pbmRleD09PWEuaW5kZXg/MDpyLmluZGV4PmEuaW5kZXg/MTotMTpyLmRlbGF5PmEuZGVsYXk/MTotMX0sdH0pKGdzKX0pO2Z1bmN0aW9uIERuYShlKXtyZXR1cm4gZT9BbmEoZSk6RnJlfWZ1bmN0aW9uIEFuYShlKXtyZXR1cm4gbmV3IEh0KGZ1bmN0aW9uKHQpe3JldHVybiBlLnNjaGVkdWxlKGZ1bmN0aW9uKCl7cmV0dXJuIHQuY29tcGxldGUoKX0pfSl9dmFyIEZyZSxPcmU9bCgoKT0+e25vKCk7RnJlPW5ldyBIdChmdW5jdGlvbihlKXtyZXR1cm4gZS5jb21wbGV0ZSgpfSl9KTtmdW5jdGlvbiBScmUoZSl7cmV0dXJuIGUmJkl0KGUuc2NoZWR1bGUpfXZhciBhbWU9bCgoKT0+e1ppKCl9KTtmdW5jdGlvbiBpbWUoZSl7cmV0dXJuIGVbZS5sZW5ndGgtMV19ZnVuY3Rpb24gUFR0KGUpe3JldHVybiBJdChpbWUoZSkpP2UucG9wKCk6dm9pZCAwfWZ1bmN0aW9uICQyKGUpe3JldHVybiBScmUoaW1lKGUpKT9lLnBvcCgpOnZvaWQgMH1mdW5jdGlvbiBXU2koZSx0KXtyZXR1cm4gdHlwZW9mIGltZShlKT09Im51bWJlciI/ZS5wb3AoKTp0fXZhciBLbT1sKCgpPT57WmkoKTthbWUoKX0pO3ZhciBKbSxCcmU9bCgoKT0+e0ptPShmdW5jdGlvbihlKXtyZXR1cm4gZSYmdHlwZW9mIGUubGVuZ3RoPT0ibnVtYmVyIiYmdHlwZW9mIGUhPSJmdW5jdGlvbiJ9KX0pO2Z1bmN0aW9uIEhyZShlKXtyZXR1cm4gSXQoZT8udGhlbil9dmFyIG9tZT1sKCgpPT57WmkoKX0pO2Z1bmN0aW9uIHFyZShlKXtyZXR1cm4gSXQoZVtKZF0pfXZhciBubWU9bCgoKT0+e1hiKCk7WmkoKX0pO2Z1bmN0aW9uIGpyZShlKXtyZXR1cm4gU3ltYm9sLmFzeW5jSXRlcmF0b3ImJkl0KGU/LltTeW1ib2wuYXN5bmNJdGVyYXRvcl0pfXZhciBzbWU9bCgoKT0+e1ppKCl9KTtmdW5jdGlvbiBWcmUoZSl7cmV0dXJuIG5ldyBUeXBlRXJyb3IoIllvdSBwcm92aWRlZCAiKyhlIT09bnVsbCYmdHlwZW9mIGU9PSJvYmplY3QiPyJhbiBpbnZhbGlkIG9iamVjdCI6IiciK2UrIiciKSsiIHdoZXJlIGEgc3RyZWFtIHdhcyBleHBlY3RlZC4gWW91IGNhbiBwcm92aWRlIGFuIE9ic2VydmFibGUsIFByb21pc2UsIFJlYWRhYmxlU3RyZWFtLCBBcnJheSwgQXN5bmNJdGVyYWJsZSwgb3IgSXRlcmFibGUuIil9dmFyIGxtZT1sKCgpPT57fSk7ZnVuY3Rpb24gRW5hKCl7cmV0dXJuIHR5cGVvZiBTeW1ib2whPSJmdW5jdGlvbiJ8fCFTeW1ib2wuaXRlcmF0b3I/IkBAaXRlcmF0b3IiOlN5bWJvbC5pdGVyYXRvcn12YXIgVXJlLGNtZT1sKCgpPT57VXJlPUVuYSgpfSk7ZnVuY3Rpb24gV3JlKGUpe3JldHVybiBJdChlPy5bVXJlXSl9dmFyIGRtZT1sKCgpPT57Y21lKCk7WmkoKX0pO2Z1bmN0aW9uIEdyZShlKXtyZXR1cm4gQ2hlKHRoaXMsYXJndW1lbnRzLGZ1bmN0aW9uKCl7dmFyIHIsYSxpLG87cmV0dXJuIEdiKHRoaXMsZnVuY3Rpb24obil7c3dpdGNoKG4ubGFiZWwpe2Nhc2UgMDpyPWUuZ2V0UmVhZGVyKCksbi5sYWJlbD0xO2Nhc2UgMTpuLnRyeXMucHVzaChbMSwsOSwxMF0pLG4ubGFiZWw9MjtjYXNlIDI6cmV0dXJuWzQsUWwoci5yZWFkKCkpXTtjYXNlIDM6cmV0dXJuIGE9bi5zZW50KCksaT1hLnZhbHVlLG89YS5kb25lLG8/WzQsUWwodm9pZCAwKV06WzMsNV07Y2FzZSA0OnJldHVyblsyLG4uc2VudCgpXTtjYXNlIDU6cmV0dXJuWzQsUWwoaSldO2Nhc2UgNjpyZXR1cm5bNCxuLnNlbnQoKV07Y2FzZSA3OnJldHVybiBuLnNlbnQoKSxbMywyXTtjYXNlIDg6cmV0dXJuWzMsMTBdO2Nhc2UgOTpyZXR1cm4gci5yZWxlYXNlTG9jaygpLFs3XTtjYXNlIDEwOnJldHVyblsyXX19KX0pfWZ1bmN0aW9uIFlyZShlKXtyZXR1cm4gSXQoZT8uZ2V0UmVhZGVyKX12YXIgWnJlPWwoKCk9PntHcigpO1ppKCl9KTtmdW5jdGlvbiB3YShlKXtpZihlIGluc3RhbmNlb2YgSHQpcmV0dXJuIGU7aWYoZSE9bnVsbCl7aWYocXJlKGUpKXJldHVybiAkbmEoZSk7aWYoSm0oZSkpcmV0dXJuIFBuYShlKTtpZihIcmUoZSkpcmV0dXJuIEluYShlKTtpZihqcmUoZSkpcmV0dXJuIElUdChlKTtpZihXcmUoZSkpcmV0dXJuIE5uYShlKTtpZihZcmUoZSkpcmV0dXJuIEZuYShlKX10aHJvdyBWcmUoZSl9ZnVuY3Rpb24gJG5hKGUpe3JldHVybiBuZXcgSHQoZnVuY3Rpb24odCl7dmFyIHI9ZVtKZF0oKTtpZihJdChyLnN1YnNjcmliZSkpcmV0dXJuIHIuc3Vic2NyaWJlKHQpO3Rocm93IG5ldyBUeXBlRXJyb3IoIlByb3ZpZGVkIG9iamVjdCBkb2VzIG5vdCBjb3JyZWN0bHkgaW1wbGVtZW50IFN5bWJvbC5vYnNlcnZhYmxlIil9KX1mdW5jdGlvbiBQbmEoZSl7cmV0dXJuIG5ldyBIdChmdW5jdGlvbih0KXtmb3IodmFyIHI9MDtyPGUubGVuZ3RoJiYhdC5jbG9zZWQ7cisrKXQubmV4dChlW3JdKTt0LmNvbXBsZXRlKCl9KX1mdW5jdGlvbiBJbmEoZSl7cmV0dXJuIG5ldyBIdChmdW5jdGlvbih0KXtlLnRoZW4oZnVuY3Rpb24ocil7dC5jbG9zZWR8fCh0Lm5leHQociksdC5jb21wbGV0ZSgpKX0sZnVuY3Rpb24ocil7cmV0dXJuIHQuZXJyb3Iocil9KS50aGVuKG51bGwsQXJlKX0pfWZ1bmN0aW9uIE5uYShlKXtyZXR1cm4gbmV3IEh0KGZ1bmN0aW9uKHQpe3ZhciByLGE7dHJ5e2Zvcih2YXIgaT1JMShlKSxvPWkubmV4dCgpOyFvLmRvbmU7bz1pLm5leHQoKSl7dmFyIG49by52YWx1ZTtpZih0Lm5leHQobiksdC5jbG9zZWQpcmV0dXJufX1jYXRjaChzKXtyPXtlcnJvcjpzfX1maW5hbGx5e3RyeXtvJiYhby5kb25lJiYoYT1pLnJldHVybikmJmEuY2FsbChpKX1maW5hbGx5e2lmKHIpdGhyb3cgci5lcnJvcn19dC5jb21wbGV0ZSgpfSl9ZnVuY3Rpb24gSVR0KGUpe3JldHVybiBuZXcgSHQoZnVuY3Rpb24odCl7T25hKGUsdCkuY2F0Y2goZnVuY3Rpb24ocil7cmV0dXJuIHQuZXJyb3Iocil9KX0pfWZ1bmN0aW9uIEZuYShlKXtyZXR1cm4gSVR0KEdyZShlKSl9ZnVuY3Rpb24gT25hKGUsdCl7dmFyIHIsYSxpLG87cmV0dXJuIHpoZSh0aGlzLHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXt2YXIgbixzO3JldHVybiBHYih0aGlzLGZ1bmN0aW9uKGMpe3N3aXRjaChjLmxhYmVsKXtjYXNlIDA6Yy50cnlzLnB1c2goWzAsNSw2LDExXSkscj1faGUoZSksYy5sYWJlbD0xO2Nhc2UgMTpyZXR1cm5bNCxyLm5leHQoKV07Y2FzZSAyOmlmKGE9Yy5zZW50KCksISFhLmRvbmUpcmV0dXJuWzMsNF07aWYobj1hLnZhbHVlLHQubmV4dChuKSx0LmNsb3NlZClyZXR1cm5bMl07Yy5sYWJlbD0zO2Nhc2UgMzpyZXR1cm5bMywxXTtjYXNlIDQ6cmV0dXJuWzMsMTFdO2Nhc2UgNTpyZXR1cm4gcz1jLnNlbnQoKSxpPXtlcnJvcjpzfSxbMywxMV07Y2FzZSA2OnJldHVybiBjLnRyeXMucHVzaChbNiwsOSwxMF0pLGEmJiFhLmRvbmUmJihvPXIucmV0dXJuKT9bNCxvLmNhbGwocildOlszLDhdO2Nhc2UgNzpjLnNlbnQoKSxjLmxhYmVsPTg7Y2FzZSA4OnJldHVyblszLDEwXTtjYXNlIDk6aWYoaSl0aHJvdyBpLmVycm9yO3JldHVybls3XTtjYXNlIDEwOnJldHVybls3XTtjYXNlIDExOnJldHVybiB0LmNvbXBsZXRlKCksWzJdfX0pfSl9dmFyIFhvPWwoKCk9PntHcigpO0JyZSgpO29tZSgpO25vKCk7bm1lKCk7c21lKCk7bG1lKCk7ZG1lKCk7WnJlKCk7WmkoKTtBaGUoKTtYYigpfSk7ZnVuY3Rpb24gQWkoZSx0LHIsYSxpKXthPT09dm9pZCAwJiYoYT0wKSxpPT09dm9pZCAwJiYoaT0hMSk7dmFyIG89dC5zY2hlZHVsZShmdW5jdGlvbigpe3IoKSxpP2UuYWRkKHRoaXMuc2NoZWR1bGUobnVsbCxhKSk6dGhpcy51bnN1YnNjcmliZSgpfSxhKTtpZihlLmFkZChvKSwhaSlyZXR1cm4gb312YXIgbjQ9bCgoKT0+e30pO2Z1bmN0aW9uIGU3KGUsdCl7cmV0dXJuIHQ9PT12b2lkIDAmJih0PTApLElyKGZ1bmN0aW9uKHIsYSl7ci5zdWJzY3JpYmUoU3IoYSxmdW5jdGlvbihpKXtyZXR1cm4gQWkoYSxlLGZ1bmN0aW9uKCl7cmV0dXJuIGEubmV4dChpKX0sdCl9LGZ1bmN0aW9uKCl7cmV0dXJuIEFpKGEsZSxmdW5jdGlvbigpe3JldHVybiBhLmNvbXBsZXRlKCl9LHQpfSxmdW5jdGlvbihpKXtyZXR1cm4gQWkoYSxlLGZ1bmN0aW9uKCl7cmV0dXJuIGEuZXJyb3IoaSl9LHQpfSkpfSl9dmFyIHJ2PWwoKCk9PntuNCgpO1hpKCk7TjEoKX0pO2Z1bmN0aW9uIHQ3KGUsdCl7cmV0dXJuIHQ9PT12b2lkIDAmJih0PTApLElyKGZ1bmN0aW9uKHIsYSl7YS5hZGQoZS5zY2hlZHVsZShmdW5jdGlvbigpe3JldHVybiByLnN1YnNjcmliZShhKX0sdCkpfSl9dmFyIGF2PWwoKCk9PntYaSgpfSk7ZnVuY3Rpb24gTlR0KGUsdCl7cmV0dXJuIHdhKGUpLnBpcGUodDcodCksZTcodCkpfXZhciBGVHQ9bCgoKT0+e1hvKCk7cnYoKTthdigpfSk7ZnVuY3Rpb24gT1R0KGUsdCl7cmV0dXJuIHdhKGUpLnBpcGUodDcodCksZTcodCkpfXZhciBSVHQ9bCgoKT0+e1hvKCk7cnYoKTthdigpfSk7ZnVuY3Rpb24gQlR0KGUsdCl7cmV0dXJuIG5ldyBIdChmdW5jdGlvbihyKXt2YXIgYT0wO3JldHVybiB0LnNjaGVkdWxlKGZ1bmN0aW9uKCl7YT09PWUubGVuZ3RoP3IuY29tcGxldGUoKTooci5uZXh0KGVbYSsrXSksci5jbG9zZWR8fHRoaXMuc2NoZWR1bGUoKSl9KX0pfXZhciBIVHQ9bCgoKT0+e25vKCl9KTtmdW5jdGlvbiBxVHQoZSx0KXtyZXR1cm4gbmV3IEh0KGZ1bmN0aW9uKHIpe3ZhciBhO3JldHVybiBBaShyLHQsZnVuY3Rpb24oKXthPWVbVXJlXSgpLEFpKHIsdCxmdW5jdGlvbigpe3ZhciBpLG8sbjt0cnl7aT1hLm5leHQoKSxvPWkudmFsdWUsbj1pLmRvbmV9Y2F0Y2gocyl7ci5lcnJvcihzKTtyZXR1cm59bj9yLmNvbXBsZXRlKCk6ci5uZXh0KG8pfSwwLCEwKX0pLGZ1bmN0aW9uKCl7cmV0dXJuIEl0KGE/LnJldHVybikmJmEucmV0dXJuKCl9fSl9dmFyIGpUdD1sKCgpPT57bm8oKTtjbWUoKTtaaSgpO240KCl9KTtmdW5jdGlvbiBYcmUoZSx0KXtpZighZSl0aHJvdyBuZXcgRXJyb3IoIkl0ZXJhYmxlIGNhbm5vdCBiZSBudWxsIik7cmV0dXJuIG5ldyBIdChmdW5jdGlvbihyKXtBaShyLHQsZnVuY3Rpb24oKXt2YXIgYT1lW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSgpO0FpKHIsdCxmdW5jdGlvbigpe2EubmV4dCgpLnRoZW4oZnVuY3Rpb24oaSl7aS5kb25lP3IuY29tcGxldGUoKTpyLm5leHQoaS52YWx1ZSl9KX0sMCwhMCl9KX0pfXZhciB1bWU9bCgoKT0+e25vKCk7bjQoKX0pO2Z1bmN0aW9uIFZUdChlLHQpe3JldHVybiBYcmUoR3JlKGUpLHQpfXZhciBVVHQ9bCgoKT0+e3VtZSgpO1pyZSgpfSk7ZnVuY3Rpb24gZm1lKGUsdCl7aWYoZSE9bnVsbCl7aWYocXJlKGUpKXJldHVybiBOVHQoZSx0KTtpZihKbShlKSlyZXR1cm4gQlR0KGUsdCk7aWYoSHJlKGUpKXJldHVybiBPVHQoZSx0KTtpZihqcmUoZSkpcmV0dXJuIFhyZShlLHQpO2lmKFdyZShlKSlyZXR1cm4gcVR0KGUsdCk7aWYoWXJlKGUpKXJldHVybiBWVHQoZSx0KX10aHJvdyBWcmUoZSl9dmFyIHBtZT1sKCgpPT57RlR0KCk7UlR0KCk7SFR0KCk7alR0KCk7dW1lKCk7bm1lKCk7b21lKCk7QnJlKCk7ZG1lKCk7c21lKCk7bG1lKCk7WnJlKCk7VVR0KCl9KTtmdW5jdGlvbiBQMihlLHQpe3JldHVybiB0P2ZtZShlLHQpOndhKGUpfXZhciBpdj1sKCgpPT57cG1lKCk7WG8oKX0pO2Z1bmN0aW9uIG92KCl7Zm9yKHZhciBlPVtdLHQ9MDt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKWVbdF09YXJndW1lbnRzW3RdO3ZhciByPSQyKGUpO3JldHVybiBQMihlLHIpfXZhciBobWU9bCgoKT0+e0ttKCk7aXYoKX0pO2Z1bmN0aW9uIG1tZShlLHQpe3ZhciByPUl0KGUpP2U6ZnVuY3Rpb24oKXtyZXR1cm4gZX0sYT1mdW5jdGlvbihpKXtyZXR1cm4gaS5lcnJvcihyKCkpfTtyZXR1cm4gbmV3IEh0KHQ/ZnVuY3Rpb24oaSl7cmV0dXJuIHQuc2NoZWR1bGUoYSwwLGkpfTphKX12YXIgZ21lPWwoKCk9PntubygpO1ppKCl9KTtmdW5jdGlvbiBSbmEoZSx0KXt2YXIgcixhLGksbz1lLG49by5raW5kLHM9by52YWx1ZSxjPW8uZXJyb3I7aWYodHlwZW9mIG4hPSJzdHJpbmciKXRocm93IG5ldyBUeXBlRXJyb3IoJ0ludmFsaWQgbm90aWZpY2F0aW9uLCBtaXNzaW5nICJraW5kIicpO249PT0iTiI/KHI9dC5uZXh0KT09PW51bGx8fHI9PT12b2lkIDB8fHIuY2FsbCh0LHMpOm49PT0iRSI/KGE9dC5lcnJvcik9PT1udWxsfHxhPT09dm9pZCAwfHxhLmNhbGwodCxjKTooaT10LmNvbXBsZXRlKT09PW51bGx8fGk9PT12b2lkIDB8fGkuY2FsbCh0KX12YXIgeG1lLFdUdCxHVHQ9bCgoKT0+e09yZSgpO2htZSgpO2dtZSgpO1ppKCk7KGZ1bmN0aW9uKGUpe2UuTkVYVD0iTiIsZS5FUlJPUj0iRSIsZS5DT01QTEVURT0iQyJ9KSh4bWV8fCh4bWU9e30pKTtXVHQ9KGZ1bmN0aW9uKCl7ZnVuY3Rpb24gZSh0LHIsYSl7dGhpcy5raW5kPXQsdGhpcy52YWx1ZT1yLHRoaXMuZXJyb3I9YSx0aGlzLmhhc1ZhbHVlPXQ9PT0iTiJ9cmV0dXJuIGUucHJvdG90eXBlLm9ic2VydmU9ZnVuY3Rpb24odCl7cmV0dXJuIFJuYSh0aGlzLHQpfSxlLnByb3RvdHlwZS5kbz1mdW5jdGlvbih0LHIsYSl7dmFyIGk9dGhpcyxvPWkua2luZCxuPWkudmFsdWUscz1pLmVycm9yO3JldHVybiBvPT09Ik4iP3Q/LihuKTpvPT09IkUiP3I/LihzKTphPy4oKX0sZS5wcm90b3R5cGUuYWNjZXB0PWZ1bmN0aW9uKHQscixhKXt2YXIgaTtyZXR1cm4gSXQoKGk9dCk9PT1udWxsfHxpPT09dm9pZCAwP3ZvaWQgMDppLm5leHQpP3RoaXMub2JzZXJ2ZSh0KTp0aGlzLmRvKHQscixhKX0sZS5wcm90b3R5cGUudG9PYnNlcnZhYmxlPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcyxyPXQua2luZCxhPXQudmFsdWUsaT10LmVycm9yLG89cj09PSJOIj9vdihhKTpyPT09IkUiP21tZShmdW5jdGlvbigpe3JldHVybiBpfSk6cj09PSJDIj9GcmU6MDtpZighbyl0aHJvdyBuZXcgVHlwZUVycm9yKCJVbmV4cGVjdGVkIG5vdGlmaWNhdGlvbiBraW5kICIrcik7cmV0dXJuIG99LGUuY3JlYXRlTmV4dD1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IGUoIk4iLHQpfSxlLmNyZWF0ZUVycm9yPWZ1bmN0aW9uKHQpe3JldHVybiBuZXcgZSgiRSIsdm9pZCAwLHQpfSxlLmNyZWF0ZUNvbXBsZXRlPWZ1bmN0aW9uKCl7cmV0dXJuIGUuY29tcGxldGVOb3RpZmljYXRpb259LGUuY29tcGxldGVOb3RpZmljYXRpb249bmV3IGUoIkMiKSxlfSkoKX0pO3ZhciBZVHQ9bCgoKT0+e30pO3ZhciBCbmEsWlR0PWwoKCk9PnthNCgpO0JuYT1FbyhmdW5jdGlvbihlKXtyZXR1cm4gZnVuY3Rpb24oKXtlKHRoaXMpLHRoaXMubmFtZT0iRW1wdHlFcnJvciIsdGhpcy5tZXNzYWdlPSJubyBlbGVtZW50cyBpbiBzZXF1ZW5jZSJ9fSl9KTt2YXIgWFR0PWwoKCk9Pnt9KTt2YXIgUVR0PWwoKCk9Pnt9KTt2YXIgSG5hLEtUdD1sKCgpPT57YTQoKTtIbmE9RW8oZnVuY3Rpb24oZSl7cmV0dXJuIGZ1bmN0aW9uKCl7ZSh0aGlzKSx0aGlzLm5hbWU9IkFyZ3VtZW50T3V0T2ZSYW5nZUVycm9yIix0aGlzLm1lc3NhZ2U9ImFyZ3VtZW50IG91dCBvZiByYW5nZSJ9fSl9KTt2YXIgcW5hLEpUdD1sKCgpPT57YTQoKTtxbmE9RW8oZnVuY3Rpb24oZSl7cmV0dXJuIGZ1bmN0aW9uKHIpe2UodGhpcyksdGhpcy5uYW1lPSJOb3RGb3VuZEVycm9yIix0aGlzLm1lc3NhZ2U9cn19KX0pO3ZhciBqbmEsZUx0PWwoKCk9PnthNCgpO2puYT1FbyhmdW5jdGlvbihlKXtyZXR1cm4gZnVuY3Rpb24ocil7ZSh0aGlzKSx0aGlzLm5hbWU9IlNlcXVlbmNlRXJyb3IiLHRoaXMubWVzc2FnZT1yfX0pfSk7ZnVuY3Rpb24gUXJlKGUpe3JldHVybiBlIGluc3RhbmNlb2YgRGF0ZSYmIWlzTmFOKGUpfXZhciBibWU9bCgoKT0+e30pO2Z1bmN0aW9uIHJMdChlLHQpe3ZhciByPVFyZShlKT97Zmlyc3Q6ZX06dHlwZW9mIGU9PSJudW1iZXIiP3tlYWNoOmV9OmUsYT1yLmZpcnN0LGk9ci5lYWNoLG89ci53aXRoLG49bz09PXZvaWQgMD9WbmE6byxzPXIuc2NoZWR1bGVyLGM9cz09PXZvaWQgMD90Pz9FMjpzLGQ9ci5tZXRhLGY9ZD09PXZvaWQgMD9udWxsOmQ7aWYoYT09bnVsbCYmaT09bnVsbCl0aHJvdyBuZXcgVHlwZUVycm9yKCJObyB0aW1lb3V0IHByb3ZpZGVkLiIpO3JldHVybiBJcihmdW5jdGlvbih1LHApe3ZhciBoLGIseD1udWxsLGc9MCx2PWZ1bmN0aW9uKHcpe2I9QWkocCxjLGZ1bmN0aW9uKCl7dHJ5e2gudW5zdWJzY3JpYmUoKSx3YShuKHttZXRhOmYsbGFzdFZhbHVlOngsc2VlbjpnfSkpLnN1YnNjcmliZShwKX1jYXRjaChNKXtwLmVycm9yKE0pfX0sdyl9O2g9dS5zdWJzY3JpYmUoU3IocCxmdW5jdGlvbih3KXtiPy51bnN1YnNjcmliZSgpLGcrKyxwLm5leHQoeD13KSxpPjAmJnYoaSl9LHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oKXtiPy5jbG9zZWR8fGI/LnVuc3Vic2NyaWJlKCkseD1udWxsfSkpLCFnJiZ2KGEhPW51bGw/dHlwZW9mIGE9PSJudW1iZXIiP2E6K2EtYy5ub3coKTppKX0pfWZ1bmN0aW9uIFZuYShlKXt0aHJvdyBuZXcgdEx0KGUpfXZhciB0THQsS3JlPWwoKCk9PntlNigpO2JtZSgpO1hpKCk7WG8oKTthNCgpO04xKCk7bjQoKTt0THQ9RW8oZnVuY3Rpb24oZSl7cmV0dXJuIGZ1bmN0aW9uKHIpe3I9PT12b2lkIDAmJihyPW51bGwpLGUodGhpcyksdGhpcy5tZXNzYWdlPSJUaW1lb3V0IGhhcyBvY2N1cnJlZCIsdGhpcy5uYW1lPSJUaW1lb3V0RXJyb3IiLHRoaXMuaW5mbz1yfX0pfSk7ZnVuY3Rpb24gSTIoZSx0KXtyZXR1cm4gSXIoZnVuY3Rpb24ocixhKXt2YXIgaT0wO3Iuc3Vic2NyaWJlKFNyKGEsZnVuY3Rpb24obyl7YS5uZXh0KGUuY2FsbCh0LG8saSsrKSl9KSl9KX12YXIgbnY9bCgoKT0+e1hpKCk7TjEoKX0pO2Z1bmN0aW9uIFduYShlLHQpe3JldHVybiBVbmEodCk/ZS5hcHBseSh2b2lkIDAsRGkoW10sVmEodCkpKTplKHQpfWZ1bmN0aW9uIEpyZShlKXtyZXR1cm4gSTIoZnVuY3Rpb24odCl7cmV0dXJuIFduYShlLHQpfSl9dmFyIFVuYSx2bWU9bCgoKT0+e0dyKCk7bnYoKTtVbmE9QXJyYXkuaXNBcnJheX0pO3ZhciBhTHQ9bCgoKT0+e30pO3ZhciBpTHQ9bCgoKT0+e30pO2Z1bmN0aW9uIG9MdChlKXtpZihlLmxlbmd0aD09PTEpe3ZhciB0PWVbMF07aWYoR25hKHQpKXJldHVybnthcmdzOnQsa2V5czpudWxsfTtpZihRbmEodCkpe3ZhciByPVhuYSh0KTtyZXR1cm57YXJnczpyLm1hcChmdW5jdGlvbihhKXtyZXR1cm4gdFthXX0pLGtleXM6cn19fXJldHVybnthcmdzOmUsa2V5czpudWxsfX1mdW5jdGlvbiBRbmEoZSl7cmV0dXJuIGUmJnR5cGVvZiBlPT0ib2JqZWN0IiYmWW5hKGUpPT09Wm5hfXZhciBHbmEsWW5hLFpuYSxYbmEsbkx0PWwoKCk9PntHbmE9QXJyYXkuaXNBcnJheSxZbmE9T2JqZWN0LmdldFByb3RvdHlwZU9mLFpuYT1PYmplY3QucHJvdG90eXBlLFhuYT1PYmplY3Qua2V5c30pO2Z1bmN0aW9uIHNMdChlLHQpe3JldHVybiBlLnJlZHVjZShmdW5jdGlvbihyLGEsaSl7cmV0dXJuIHJbYV09dFtpXSxyfSx7fSl9dmFyIGxMdD1sKCgpPT57fSk7ZnVuY3Rpb24geW1lKCl7Zm9yKHZhciBlPVtdLHQ9MDt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKWVbdF09YXJndW1lbnRzW3RdO3ZhciByPSQyKGUpLGE9UFR0KGUpLGk9b0x0KGUpLG89aS5hcmdzLG49aS5rZXlzO2lmKG8ubGVuZ3RoPT09MClyZXR1cm4gUDIoW10scik7dmFyIHM9bmV3IEh0KEtuYShvLHIsbj9mdW5jdGlvbihjKXtyZXR1cm4gc0x0KG4sYyl9Om80KSk7cmV0dXJuIGE/cy5waXBlKEpyZShhKSk6c31mdW5jdGlvbiBLbmEoZSx0LHIpe3JldHVybiByPT09dm9pZCAwJiYocj1vNCksZnVuY3Rpb24oYSl7Y0x0KHQsZnVuY3Rpb24oKXtmb3IodmFyIGk9ZS5sZW5ndGgsbz1uZXcgQXJyYXkoaSksbj1pLHM9aSxjPWZ1bmN0aW9uKGYpe2NMdCh0LGZ1bmN0aW9uKCl7dmFyIHU9UDIoZVtmXSx0KSxwPSExO3Uuc3Vic2NyaWJlKFNyKGEsZnVuY3Rpb24oaCl7b1tmXT1oLHB8fChwPSEwLHMtLSksc3x8YS5uZXh0KHIoby5zbGljZSgpKSl9LGZ1bmN0aW9uKCl7LS1ufHxhLmNvbXBsZXRlKCl9KSl9LGEpfSxkPTA7ZDxpO2QrKyljKGQpfSxhKX19ZnVuY3Rpb24gY0x0KGUsdCxyKXtlP0FpKHIsZSx0KTp0KCl9dmFyIGRMdD1sKCgpPT57bm8oKTtuTHQoKTtpdigpO1FiKCk7dm1lKCk7S20oKTtsTHQoKTtOMSgpO240KCl9KTtmdW5jdGlvbiB1THQoZSx0LHIsYSxpLG8sbixzKXt2YXIgYz1bXSxkPTAsZj0wLHU9ITEscD1mdW5jdGlvbigpe3UmJiFjLmxlbmd0aCYmIWQmJnQuY29tcGxldGUoKX0saD1mdW5jdGlvbih4KXtyZXR1cm4gZDxhP2IoeCk6Yy5wdXNoKHgpfSxiPWZ1bmN0aW9uKHgpe28mJnQubmV4dCh4KSxkKys7dmFyIGc9ITE7d2Eocih4LGYrKykpLnN1YnNjcmliZShTcih0LGZ1bmN0aW9uKHYpe2k/Lih2KSxvP2godik6dC5uZXh0KHYpfSxmdW5jdGlvbigpe2c9ITB9LHZvaWQgMCxmdW5jdGlvbigpe2lmKGcpdHJ5e2QtLTtmb3IodmFyIHY9ZnVuY3Rpb24oKXt2YXIgdz1jLnNoaWZ0KCk7bj9BaSh0LG4sZnVuY3Rpb24oKXtyZXR1cm4gYih3KX0pOmIodyl9O2MubGVuZ3RoJiZkPGE7KXYoKTtwKCl9Y2F0Y2godyl7dC5lcnJvcih3KX19KSl9O3JldHVybiBlLnN1YnNjcmliZShTcih0LGgsZnVuY3Rpb24oKXt1PSEwLHAoKX0pKSxmdW5jdGlvbigpe3M/LigpfX12YXIgZkx0PWwoKCk9PntYbygpO240KCk7TjEoKX0pO2Z1bmN0aW9uIHQ2KGUsdCxyKXtyZXR1cm4gcj09PXZvaWQgMCYmKHI9MS8wKSxJdCh0KT90NihmdW5jdGlvbihhLGkpe3JldHVybiBJMihmdW5jdGlvbihvLG4pe3JldHVybiB0KGEsbyxpLG4pfSkod2EoZShhLGkpKSl9LHIpOih0eXBlb2YgdD09Im51bWJlciImJihyPXQpLElyKGZ1bmN0aW9uKGEsaSl7cmV0dXJuIHVMdChhLGksZSxyKX0pKX12YXIgc3Y9bCgoKT0+e252KCk7WG8oKTtYaSgpO2ZMdCgpO1ppKCl9KTtmdW5jdGlvbiBlYWUoZSl7cmV0dXJuIGU9PT12b2lkIDAmJihlPTEvMCksdDYobzQsZSl9dmFyIHRhZT1sKCgpPT57c3YoKTtRYigpfSk7ZnVuY3Rpb24gcmFlKCl7cmV0dXJuIGVhZSgxKX12YXIgYWFlPWwoKCk9Pnt0YWUoKX0pO2Z1bmN0aW9uIGlhZSgpe2Zvcih2YXIgZT1bXSx0PTA7dDxhcmd1bWVudHMubGVuZ3RoO3QrKyllW3RdPWFyZ3VtZW50c1t0XTtyZXR1cm4gcmFlKCkoUDIoZSwkMihlKSkpfXZhciB3bWU9bCgoKT0+e2FhZSgpO0ttKCk7aXYoKX0pO3ZhciBwTHQ9bCgoKT0+e30pO3ZhciBoTHQ9bCgoKT0+e30pO3ZhciBtTHQ9bCgoKT0+e30pO2Z1bmN0aW9uIHI2KGUsdCxyLGEpe2lmKEl0KHIpJiYoYT1yLHI9dm9pZCAwKSxhKXJldHVybiByNihlLHQscikucGlwZShKcmUoYSkpO3ZhciBpPVZhKGlzYShlKT9lc2EubWFwKGZ1bmN0aW9uKHMpe3JldHVybiBmdW5jdGlvbihjKXtyZXR1cm4gZVtzXSh0LGMscil9fSk6cnNhKGUpP0puYS5tYXAoZ0x0KGUsdCkpOmFzYShlKT90c2EubWFwKGdMdChlLHQpKTpbXSwyKSxvPWlbMF0sbj1pWzFdO2lmKCFvJiZKbShlKSlyZXR1cm4gdDYoZnVuY3Rpb24ocyl7cmV0dXJuIHI2KHMsdCxyKX0pKHdhKGUpKTtpZighbyl0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGV2ZW50IHRhcmdldCIpO3JldHVybiBuZXcgSHQoZnVuY3Rpb24ocyl7dmFyIGM9ZnVuY3Rpb24oKXtmb3IodmFyIGQ9W10sZj0wO2Y8YXJndW1lbnRzLmxlbmd0aDtmKyspZFtmXT1hcmd1bWVudHNbZl07cmV0dXJuIHMubmV4dCgxPGQubGVuZ3RoP2Q6ZFswXSl9O3JldHVybiBvKGMpLGZ1bmN0aW9uKCl7cmV0dXJuIG4oYyl9fSl9ZnVuY3Rpb24gZ0x0KGUsdCl7cmV0dXJuIGZ1bmN0aW9uKHIpe3JldHVybiBmdW5jdGlvbihhKXtyZXR1cm4gZVtyXSh0LGEpfX19ZnVuY3Rpb24gcnNhKGUpe3JldHVybiBJdChlLmFkZExpc3RlbmVyKSYmSXQoZS5yZW1vdmVMaXN0ZW5lcil9ZnVuY3Rpb24gYXNhKGUpe3JldHVybiBJdChlLm9uKSYmSXQoZS5vZmYpfWZ1bmN0aW9uIGlzYShlKXtyZXR1cm4gSXQoZS5hZGRFdmVudExpc3RlbmVyKSYmSXQoZS5yZW1vdmVFdmVudExpc3RlbmVyKX12YXIgSm5hLGVzYSx0c2EseEx0PWwoKCk9PntHcigpO1hvKCk7bm8oKTtzdigpO0JyZSgpO1ppKCk7dm1lKCk7Sm5hPVsiYWRkTGlzdGVuZXIiLCJyZW1vdmVMaXN0ZW5lciJdLGVzYT1bImFkZEV2ZW50TGlzdGVuZXIiLCJyZW1vdmVFdmVudExpc3RlbmVyIl0sdHNhPVsib24iLCJvZmYiXX0pO3ZhciBiTHQ9bCgoKT0+e30pO3ZhciB2THQ9bCgoKT0+e30pO3ZhciB5THQ9bCgoKT0+e30pO2Z1bmN0aW9uIE1tZShlLHQscil7ZT09PXZvaWQgMCYmKGU9MCkscj09PXZvaWQgMCYmKHI9UWhlKTt2YXIgYT0tMTtyZXR1cm4gdCE9bnVsbCYmKFJyZSh0KT9yPXQ6YT10KSxuZXcgSHQoZnVuY3Rpb24oaSl7dmFyIG89UXJlKGUpPytlLXIubm93KCk6ZTtvPDAmJihvPTApO3ZhciBuPTA7cmV0dXJuIHIuc2NoZWR1bGUoZnVuY3Rpb24oKXtpLmNsb3NlZHx8KGkubmV4dChuKyspLDA8PWE/dGhpcy5zY2hlZHVsZSh2b2lkIDAsYSk6aS5jb21wbGV0ZSgpKX0sbyl9KX12YXIga21lPWwoKCk9PntubygpO2U2KCk7YW1lKCk7Ym1lKCl9KTt2YXIgd0x0PWwoKCk9Pnt9KTt2YXIgTUx0PWwoKCk9Pnt9KTtmdW5jdGlvbiBvc2EoKXtyZXR1cm4ga0x0fXZhciBrTHQsU21lPWwoKCk9PntubygpO1hkKCk7a0x0PW5ldyBIdChBbil9KTt2YXIgU0x0PWwoKCk9Pnt9KTt2YXIgekx0PWwoKCk9Pnt9KTtmdW5jdGlvbiBvYWUoZSx0KXtyZXR1cm4gSXIoZnVuY3Rpb24ocixhKXt2YXIgaT0wO3Iuc3Vic2NyaWJlKFNyKGEsZnVuY3Rpb24obyl7cmV0dXJuIGUuY2FsbCh0LG8saSsrKSYmYS5uZXh0KG8pfSkpfSl9dmFyIHptZT1sKCgpPT57WGkoKTtOMSgpfSk7dmFyIENMdD1sKCgpPT57fSk7dmFyIF9MdD1sKCgpPT57fSk7dmFyIFRMdD1sKCgpPT57fSk7dmFyIExMdD1sKCgpPT57fSk7dmFyIERMdD1sKCgpPT57fSk7dmFyIEFMdD1sKCgpPT57fSk7dmFyIENtZT1sKCgpPT57fSk7dmFyIF9tZT1sKCgpPT57fSk7ZnVuY3Rpb24gbmFlKGUpe3JldHVybiBJcihmdW5jdGlvbih0LHIpe3ZhciBhPVtdO3JldHVybiB0LnN1YnNjcmliZShTcihyLGZ1bmN0aW9uKGkpe3JldHVybiBhLnB1c2goaSl9LGZ1bmN0aW9uKCl7ci5uZXh0KGEpLHIuY29tcGxldGUoKX0pKSx3YShlKS5zdWJzY3JpYmUoU3IocixmdW5jdGlvbigpe3ZhciBpPWE7YT1bXSxyLm5leHQoaSl9LEFuKSksZnVuY3Rpb24oKXthPW51bGx9fSl9dmFyIFRtZT1sKCgpPT57WGkoKTtYZCgpO04xKCk7WG8oKX0pO2Z1bmN0aW9uIHNhZShlLHQpe3JldHVybiB0PT09dm9pZCAwJiYodD1udWxsKSx0PXQ/P2UsSXIoZnVuY3Rpb24ocixhKXt2YXIgaT1bXSxvPTA7ci5zdWJzY3JpYmUoU3IoYSxmdW5jdGlvbihuKXt2YXIgcyxjLGQsZix1PW51bGw7bysrJXQ9PT0wJiZpLnB1c2goW10pO3RyeXtmb3IodmFyIHA9STEoaSksaD1wLm5leHQoKTshaC5kb25lO2g9cC5uZXh0KCkpe3ZhciBiPWgudmFsdWU7Yi5wdXNoKG4pLGU8PWIubGVuZ3RoJiYodT11Pz9bXSx1LnB1c2goYikpfX1jYXRjaCh2KXtzPXtlcnJvcjp2fX1maW5hbGx5e3RyeXtoJiYhaC5kb25lJiYoYz1wLnJldHVybikmJmMuY2FsbChwKX1maW5hbGx5e2lmKHMpdGhyb3cgcy5lcnJvcn19aWYodSl0cnl7Zm9yKHZhciB4PUkxKHUpLGc9eC5uZXh0KCk7IWcuZG9uZTtnPXgubmV4dCgpKXt2YXIgYj1nLnZhbHVlO21zKGksYiksYS5uZXh0KGIpfX1jYXRjaCh2KXtkPXtlcnJvcjp2fX1maW5hbGx5e3RyeXtnJiYhZy5kb25lJiYoZj14LnJldHVybikmJmYuY2FsbCh4KX1maW5hbGx5e2lmKGQpdGhyb3cgZC5lcnJvcn19fSxmdW5jdGlvbigpe3ZhciBuLHM7dHJ5e2Zvcih2YXIgYz1JMShpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7dmFyIGY9ZC52YWx1ZTthLm5leHQoZil9fWNhdGNoKHUpe249e2Vycm9yOnV9fWZpbmFsbHl7dHJ5e2QmJiFkLmRvbmUmJihzPWMucmV0dXJuKSYmcy5jYWxsKGMpfWZpbmFsbHl7aWYobil0aHJvdyBuLmVycm9yfX1hLmNvbXBsZXRlKCl9LHZvaWQgMCxmdW5jdGlvbigpe2k9bnVsbH0pKX0pfXZhciBMbWU9bCgoKT0+e0dyKCk7WGkoKTtOMSgpO1ZtKCl9KTtmdW5jdGlvbiBsYWUoZSl7Zm9yKHZhciB0LHIsYT1bXSxpPTE7aTxhcmd1bWVudHMubGVuZ3RoO2krKylhW2ktMV09YXJndW1lbnRzW2ldO3ZhciBvPSh0PSQyKGEpKSE9PW51bGwmJnQhPT12b2lkIDA/dDpFMixuPShyPWFbMF0pIT09bnVsbCYmciE9PXZvaWQgMD9yOm51bGwscz1hWzFdfHwxLzA7cmV0dXJuIElyKGZ1bmN0aW9uKGMsZCl7dmFyIGY9W10sdT0hMSxwPWZ1bmN0aW9uKHgpe3ZhciBnPXguYnVmZmVyLHY9eC5zdWJzO3YudW5zdWJzY3JpYmUoKSxtcyhmLHgpLGQubmV4dChnKSx1JiZoKCl9LGg9ZnVuY3Rpb24oKXtpZihmKXt2YXIgeD1uZXcgdGk7ZC5hZGQoeCk7dmFyIGc9W10sdj17YnVmZmVyOmcsc3Viczp4fTtmLnB1c2godiksQWkoeCxvLGZ1bmN0aW9uKCl7cmV0dXJuIHAodil9LGUpfX07biE9PW51bGwmJm4+PTA/QWkoZCxvLGgsbiwhMCk6dT0hMCxoKCk7dmFyIGI9U3IoZCxmdW5jdGlvbih4KXt2YXIgZyx2LHc9Zi5zbGljZSgpO3RyeXtmb3IodmFyIE09STEodyksRj1NLm5leHQoKTshRi5kb25lO0Y9TS5uZXh0KCkpe3ZhciBDPUYudmFsdWUsaz1DLmJ1ZmZlcjtrLnB1c2goeCksczw9ay5sZW5ndGgmJnAoQyl9fWNhdGNoKE4pe2c9e2Vycm9yOk59fWZpbmFsbHl7dHJ5e0YmJiFGLmRvbmUmJih2PU0ucmV0dXJuKSYmdi5jYWxsKE0pfWZpbmFsbHl7aWYoZyl0aHJvdyBnLmVycm9yfX19LGZ1bmN0aW9uKCl7Zm9yKDtmPy5sZW5ndGg7KWQubmV4dChmLnNoaWZ0KCkuYnVmZmVyKTtiPy51bnN1YnNjcmliZSgpLGQuY29tcGxldGUoKSxkLnVuc3Vic2NyaWJlKCl9LHZvaWQgMCxmdW5jdGlvbigpe3JldHVybiBmPW51bGx9KTtjLnN1YnNjcmliZShiKX0pfXZhciBEbWU9bCgoKT0+e0dyKCk7QTIoKTtYaSgpO04xKCk7Vm0oKTtlNigpO0ttKCk7bjQoKX0pO3ZhciBBbWU9bCgoKT0+e30pO3ZhciBFbWU9bCgoKT0+e30pO3ZhciAkbWU9bCgoKT0+e30pO3ZhciBQbWU9bCgoKT0+e30pO3ZhciBJbWU9bCgoKT0+e30pO3ZhciBObWU9bCgoKT0+e30pO3ZhciBGbWU9bCgoKT0+e30pO3ZhciBFTHQ9bCgoKT0+e30pO3ZhciBPbWU9bCgoKT0+e30pO3ZhciBSbWU9bCgoKT0+e30pO3ZhciBCbWU9bCgoKT0+e30pO3ZhciAkTHQ9bCgoKT0+e30pO3ZhciBIbWU9bCgoKT0+e30pO3ZhciBxbWU9bCgoKT0+e30pO3ZhciBqbWU9bCgoKT0+e30pO2Z1bmN0aW9uIGNhZShlKXtyZXR1cm4gSXIoZnVuY3Rpb24odCxyKXt2YXIgYT0hMSxpPW51bGwsbz1udWxsLG49ZnVuY3Rpb24oKXtpZihvPy51bnN1YnNjcmliZSgpLG89bnVsbCxhKXthPSExO3ZhciBzPWk7aT1udWxsLHIubmV4dChzKX19O3Quc3Vic2NyaWJlKFNyKHIsZnVuY3Rpb24ocyl7bz8udW5zdWJzY3JpYmUoKSxhPSEwLGk9cyxvPVNyKHIsbixBbiksd2EoZShzKSkuc3Vic2NyaWJlKG8pfSxmdW5jdGlvbigpe24oKSxyLmNvbXBsZXRlKCl9LHZvaWQgMCxmdW5jdGlvbigpe2k9bz1udWxsfSkpfSl9dmFyIFZtZT1sKCgpPT57WGkoKTtYZCgpO04xKCk7WG8oKX0pO2Z1bmN0aW9uIGRhZShlLHQpe3JldHVybiB0PT09dm9pZCAwJiYodD1FMiksSXIoZnVuY3Rpb24ocixhKXt2YXIgaT1udWxsLG89bnVsbCxuPW51bGwscz1mdW5jdGlvbigpe2lmKGkpe2kudW5zdWJzY3JpYmUoKSxpPW51bGw7dmFyIGQ9bztvPW51bGwsYS5uZXh0KGQpfX07ZnVuY3Rpb24gYygpe3ZhciBkPW4rZSxmPXQubm93KCk7aWYoZjxkKXtpPXRoaXMuc2NoZWR1bGUodm9pZCAwLGQtZiksYS5hZGQoaSk7cmV0dXJufXMoKX1yLnN1YnNjcmliZShTcihhLGZ1bmN0aW9uKGQpe289ZCxuPXQubm93KCksaXx8KGk9dC5zY2hlZHVsZShjLGUpLGEuYWRkKGkpKX0sZnVuY3Rpb24oKXtzKCksYS5jb21wbGV0ZSgpfSx2b2lkIDAsZnVuY3Rpb24oKXtvPWk9bnVsbH0pKX0pfXZhciBVbWU9bCgoKT0+e2U2KCk7WGkoKTtOMSgpfSk7dmFyIFdtZT1sKCgpPT57fSk7dmFyIEdtZT1sKCgpPT57fSk7dmFyIFltZT1sKCgpPT57fSk7dmFyIFptZT1sKCgpPT57fSk7dmFyIFhtZT1sKCgpPT57fSk7dmFyIFFtZT1sKCgpPT57fSk7dmFyIEttZT1sKCgpPT57fSk7dmFyIEptZT1sKCgpPT57fSk7dmFyIGU3ZT1sKCgpPT57fSk7dmFyIHQ3ZT1sKCgpPT57fSk7dmFyIHI3ZT1sKCgpPT57fSk7dmFyIGE3ZT1sKCgpPT57fSk7dmFyIGk3ZT1sKCgpPT57fSk7dmFyIG83ZT1sKCgpPT57fSk7dmFyIG43ZT1sKCgpPT57fSk7dmFyIHM3ZT1sKCgpPT57fSk7dmFyIGw3ZT1sKCgpPT57fSk7dmFyIGM3ZT1sKCgpPT57fSk7dmFyIGQ3ZT1sKCgpPT57fSk7dmFyIHU3ZT1sKCgpPT57fSk7dmFyIGY3ZT1sKCgpPT57fSk7dmFyIHA3ZT1sKCgpPT57fSk7dmFyIGg3ZT1sKCgpPT57fSk7dmFyIG03ZT1sKCgpPT57fSk7dmFyIGc3ZT1sKCgpPT57fSk7dmFyIHg3ZT1sKCgpPT57fSk7dmFyIGI3ZT1sKCgpPT57fSk7dmFyIHY3ZT1sKCgpPT57fSk7dmFyIHk3ZT1sKCgpPT57fSk7dmFyIHc3ZT1sKCgpPT57fSk7dmFyIE03ZT1sKCgpPT57fSk7dmFyIFBMdD1sKCgpPT57fSk7dmFyIGs3ZT1sKCgpPT57fSk7dmFyIFM3ZT1sKCgpPT57fSk7dmFyIHo3ZT1sKCgpPT57fSk7dmFyIEM3ZT1sKCgpPT57fSk7dmFyIF83ZT1sKCgpPT57fSk7dmFyIFQ3ZT1sKCgpPT57fSk7dmFyIEw3ZT1sKCgpPT57fSk7dmFyIEQ3ZT1sKCgpPT57fSk7dmFyIEE3ZT1sKCgpPT57fSk7dmFyIEU3ZT1sKCgpPT57fSk7dmFyICQ3ZT1sKCgpPT57fSk7dmFyIFA3ZT1sKCgpPT57fSk7dmFyIEk3ZT1sKCgpPT57fSk7dmFyIE43ZT1sKCgpPT57fSk7dmFyIEY3ZT1sKCgpPT57fSk7dmFyIE83ZT1sKCgpPT57fSk7dmFyIFI3ZT1sKCgpPT57fSk7dmFyIEI3ZT1sKCgpPT57fSk7dmFyIEg3ZT1sKCgpPT57fSk7ZnVuY3Rpb24gdWFlKGUpe2U9PT12b2lkIDAmJihlPXt9KTt2YXIgdD1lLmNvbm5lY3RvcixyPXQ9PT12b2lkIDA/ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IEYxfTp0LGE9ZS5yZXNldE9uRXJyb3IsaT1hPT09dm9pZCAwPyEwOmEsbz1lLnJlc2V0T25Db21wbGV0ZSxuPW89PT12b2lkIDA/ITA6byxzPWUucmVzZXRPblJlZkNvdW50WmVybyxjPXM9PT12b2lkIDA/ITA6cztyZXR1cm4gZnVuY3Rpb24oZCl7dmFyIGYsdSxwLGg9MCxiPSExLHg9ITEsZz1mdW5jdGlvbigpe3U/LnVuc3Vic2NyaWJlKCksdT12b2lkIDB9LHY9ZnVuY3Rpb24oKXtnKCksZj1wPXZvaWQgMCxiPXg9ITF9LHc9ZnVuY3Rpb24oKXt2YXIgTT1mO3YoKSxNPy51bnN1YnNjcmliZSgpfTtyZXR1cm4gSXIoZnVuY3Rpb24oTSxGKXtoKyssIXgmJiFiJiZnKCk7dmFyIEM9cD1wPz9yKCk7Ri5hZGQoZnVuY3Rpb24oKXtoLS0saD09PTAmJiF4JiYhYiYmKHU9cTdlKHcsYykpfSksQy5zdWJzY3JpYmUoRiksIWYmJmg+MCYmKGY9bmV3IGk0KHtuZXh0OmZ1bmN0aW9uKGspe3JldHVybiBDLm5leHQoayl9LGVycm9yOmZ1bmN0aW9uKGspe3g9ITAsZygpLHU9cTdlKHYsaSxrKSxDLmVycm9yKGspfSxjb21wbGV0ZTpmdW5jdGlvbigpe2I9ITAsZygpLHU9cTdlKHYsbiksQy5jb21wbGV0ZSgpfX0pLHdhKE0pLnN1YnNjcmliZShmKSl9KShkKX19ZnVuY3Rpb24gcTdlKGUsdCl7Zm9yKHZhciByPVtdLGE9MjthPGFyZ3VtZW50cy5sZW5ndGg7YSsrKXJbYS0yXT1hcmd1bWVudHNbYV07aWYodD09PSEwKXtlKCk7cmV0dXJufWlmKHQhPT0hMSl7dmFyIGk9bmV3IGk0KHtuZXh0OmZ1bmN0aW9uKCl7aS51bnN1YnNjcmliZSgpLGUoKX19KTtyZXR1cm4gd2EodC5hcHBseSh2b2lkIDAsRGkoW10sVmEocikpKSkuc3Vic2NyaWJlKGkpfX12YXIgZmFlPWwoKCk9PntHcigpO1hvKCk7WW0oKTtaYigpO1hpKCl9KTtmdW5jdGlvbiBwYWUoZSx0LHIpe3ZhciBhLGksbyxuLHM9ITE7cmV0dXJuIGUmJnR5cGVvZiBlPT0ib2JqZWN0Ij8oYT1lLmJ1ZmZlclNpemUsbj1hPT09dm9pZCAwPzEvMDphLGk9ZS53aW5kb3dUaW1lLHQ9aT09PXZvaWQgMD8xLzA6aSxvPWUucmVmQ291bnQscz1vPT09dm9pZCAwPyExOm8scj1lLnNjaGVkdWxlcik6bj1lPz8xLzAsdWFlKHtjb25uZWN0b3I6ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IFptKG4sdCxyKX0scmVzZXRPbkVycm9yOiEwLHJlc2V0T25Db21wbGV0ZTohMSxyZXNldE9uUmVmQ291bnRaZXJvOnN9KX12YXIgajdlPWwoKCk9PntWaGUoKTtmYWUoKX0pO3ZhciBWN2U9bCgoKT0+e30pO3ZhciBVN2U9bCgoKT0+e30pO3ZhciBXN2U9bCgoKT0+e30pO3ZhciBHN2U9bCgoKT0+e30pO3ZhciBZN2U9bCgoKT0+e30pO2Z1bmN0aW9uIGhhZSgpe2Zvcih2YXIgZT1bXSx0PTA7dDxhcmd1bWVudHMubGVuZ3RoO3QrKyllW3RdPWFyZ3VtZW50c1t0XTt2YXIgcj0kMihlKTtyZXR1cm4gSXIoZnVuY3Rpb24oYSxpKXsocj9pYWUoZSxhLHIpOmlhZShlLGEpKS5zdWJzY3JpYmUoaSl9KX12YXIgWjdlPWwoKCk9Pnt3bWUoKTtLbSgpO1hpKCl9KTt2YXIgWDdlPWwoKCk9Pnt9KTt2YXIgUTdlPWwoKCk9Pnt9KTt2YXIgSzdlPWwoKCk9Pnt9KTt2YXIgSjdlPWwoKCk9Pnt9KTtmdW5jdGlvbiByNyhlKXtyZXR1cm4gSXIoZnVuY3Rpb24odCxyKXt3YShlKS5zdWJzY3JpYmUoU3IocixmdW5jdGlvbigpe3JldHVybiByLmNvbXBsZXRlKCl9LEFuKSksIXIuY2xvc2VkJiZ0LnN1YnNjcmliZShyKX0pfXZhciBlOWU9bCgoKT0+e1hpKCk7TjEoKTtYbygpO1hkKCl9KTt2YXIgdDllPWwoKCk9Pnt9KTt2YXIgcjllPWwoKCk9Pnt9KTtmdW5jdGlvbiBtYWUoZSx0KXtyZXR1cm4gSXIoZnVuY3Rpb24ocixhKXt2YXIgaT10Pz97fSxvPWkubGVhZGluZyxuPW89PT12b2lkIDA/ITA6byxzPWkudHJhaWxpbmcsYz1zPT09dm9pZCAwPyExOnMsZD0hMSxmPW51bGwsdT1udWxsLHA9ITEsaD1mdW5jdGlvbigpe3U/LnVuc3Vic2NyaWJlKCksdT1udWxsLGMmJihnKCkscCYmYS5jb21wbGV0ZSgpKX0sYj1mdW5jdGlvbigpe3U9bnVsbCxwJiZhLmNvbXBsZXRlKCl9LHg9ZnVuY3Rpb24odil7cmV0dXJuIHU9d2EoZSh2KSkuc3Vic2NyaWJlKFNyKGEsaCxiKSl9LGc9ZnVuY3Rpb24oKXtpZihkKXtkPSExO3ZhciB2PWY7Zj1udWxsLGEubmV4dCh2KSwhcCYmeCh2KX19O3Iuc3Vic2NyaWJlKFNyKGEsZnVuY3Rpb24odil7ZD0hMCxmPXYsISh1JiYhdS5jbG9zZWQpJiYobj9nKCk6eCh2KSl9LGZ1bmN0aW9uKCl7cD0hMCwhKGMmJmQmJnUmJiF1LmNsb3NlZCkmJmEuY29tcGxldGUoKX0pKX0pfXZhciBnYWU9bCgoKT0+e1hpKCk7TjEoKTtYbygpfSk7ZnVuY3Rpb24geGFlKGUsdCxyKXt0PT09dm9pZCAwJiYodD1FMik7dmFyIGE9TW1lKGUsdCk7cmV0dXJuIG1hZShmdW5jdGlvbigpe3JldHVybiBhfSxyKX12YXIgYTllPWwoKCk9PntlNigpO2dhZSgpO2ttZSgpfSk7dmFyIGk5ZT1sKCgpPT57fSk7dmFyIG85ZT1sKCgpPT57fSk7dmFyIG45ZT1sKCgpPT57fSk7dmFyIHM5ZT1sKCgpPT57fSk7dmFyIGw5ZT1sKCgpPT57fSk7dmFyIGM5ZT1sKCgpPT57fSk7dmFyIGQ5ZT1sKCgpPT57fSk7dmFyIHU5ZT1sKCgpPT57fSk7dmFyIGY5ZT1sKCgpPT57fSk7dmFyIHA5ZT1sKCgpPT57fSk7dmFyIElMdD1sKCgpPT57fSk7dmFyIGg5ZT1sKCgpPT57fSk7dmFyIGx2PWwoKCk9PntubygpO3NUdCgpO1hiKCk7ZFR0KCk7WW0oKTtmVHQoKTtWaGUoKTtoVHQoKTtrVHQoKTtlNigpO19UdCgpO0FUdCgpOyRUdCgpO1poZSgpO0EyKCk7WmIoKTtHVHQoKTtOaGUoKTtYZCgpO1FiKCk7WVR0KCk7WFR0KCk7UVR0KCk7S1R0KCk7WlR0KCk7SlR0KCk7SGhlKCk7ZUx0KCk7S3JlKCk7VGhlKCk7YUx0KCk7aUx0KCk7ZEx0KCk7d21lKCk7aEx0KCk7cEx0KCk7T3JlKCk7bUx0KCk7aXYoKTt4THQoKTtiTHQoKTt2THQoKTt5THQoKTt3THQoKTtNTHQoKTtTbWUoKTtobWUoKTtTTHQoKTt6THQoKTtDTHQoKTtfTHQoKTtUTHQoKTtnbWUoKTtrbWUoKTtMTHQoKTtETHQoKTtwbWUoKTtPcmUoKTtTbWUoKTtBTHQoKTtVbSgpO0NtZSgpO19tZSgpO1RtZSgpO0xtZSgpO0RtZSgpO0FtZSgpO0VtZSgpOyRtZSgpO0ZtZSgpO05tZSgpO09tZSgpO2FhZSgpO1JtZSgpO0JtZSgpO0htZSgpO3FtZSgpO2ptZSgpO1ZtZSgpO1VtZSgpO1dtZSgpO1FtZSgpO1htZSgpO0ttZSgpO0ptZSgpO2U3ZSgpO3Q3ZSgpO2E3ZSgpO2k3ZSgpO283ZSgpO2w3ZSgpO3M3ZSgpO243ZSgpO2M3ZSgpO3ptZSgpO2Q3ZSgpO3U3ZSgpO2Y3ZSgpO3A3ZSgpO2g3ZSgpO1ltZSgpO203ZSgpO3g3ZSgpO252KCk7Wm1lKCk7YjdlKCk7djdlKCk7dGFlKCk7eTdlKCk7c3YoKTt3N2UoKTtNN2UoKTtrN2UoKTtTN2UoKTt6N2UoKTtydigpO0M3ZSgpO183ZSgpO1Q3ZSgpO0w3ZSgpO0Q3ZSgpO0E3ZSgpO0U3ZSgpOyQ3ZSgpO1BtZSgpO1A3ZSgpO0k3ZSgpO043ZSgpO0Y3ZSgpO0lyZSgpO083ZSgpO1I3ZSgpO0I3ZSgpO0g3ZSgpO2ZhZSgpO2o3ZSgpO1Y3ZSgpO1U3ZSgpO1c3ZSgpO0c3ZSgpO1k3ZSgpO1o3ZSgpO2F2KCk7UTdlKCk7WDdlKCk7SzdlKCk7SjdlKCk7R21lKCk7ZzdlKCk7ZTllKCk7dDllKCk7cjllKCk7Z2FlKCk7YTllKCk7cjdlKCk7aTllKCk7S3JlKCk7bzllKCk7bjllKCk7SW1lKCk7czllKCk7bDllKCk7YzllKCk7ZDllKCk7dTllKCk7ZjllKCk7cDllKCk7aDllKCl9KTt2YXIgTkx0PWwoKCk9Pnt9KTt2YXIgRkx0PWwoKCk9Pnt9KTt2YXIgT0x0PWwoKCk9PntDbWUoKTtfbWUoKTtUbWUoKTtMbWUoKTtEbWUoKTtBbWUoKTtFbWUoKTskbWUoKTtGbWUoKTtObWUoKTtFTHQoKTtPbWUoKTskTHQoKTthYWUoKTtSbWUoKTtCbWUoKTtIbWUoKTtxbWUoKTtqbWUoKTtWbWUoKTtVbWUoKTtXbWUoKTtRbWUoKTtYbWUoKTtLbWUoKTtKbWUoKTtlN2UoKTt0N2UoKTthN2UoKTtpN2UoKTtvN2UoKTtsN2UoKTtzN2UoKTtuN2UoKTtjN2UoKTt6bWUoKTtkN2UoKTt1N2UoKTtmN2UoKTtwN2UoKTtoN2UoKTtZbWUoKTttN2UoKTt4N2UoKTtudigpO1ptZSgpO2I3ZSgpO3Y3ZSgpO1BMdCgpO3RhZSgpO3k3ZSgpO3N2KCk7dzdlKCk7TTdlKCk7azdlKCk7UzdlKCk7ejdlKCk7cnYoKTtDN2UoKTtfN2UoKTtOTHQoKTtUN2UoKTtMN2UoKTtEN2UoKTtBN2UoKTtFN2UoKTtGTHQoKTskN2UoKTtQbWUoKTtQN2UoKTtJN2UoKTtON2UoKTtGN2UoKTtJcmUoKTtPN2UoKTtSN2UoKTtCN2UoKTtIN2UoKTtmYWUoKTtqN2UoKTtWN2UoKTtVN2UoKTtXN2UoKTtHN2UoKTtZN2UoKTtaN2UoKTthdigpO1E3ZSgpO1g3ZSgpO0s3ZSgpO0o3ZSgpO0dtZSgpO2c3ZSgpO2U5ZSgpO3Q5ZSgpO3I5ZSgpO2dhZSgpO2E5ZSgpO3I3ZSgpO2k5ZSgpO0tyZSgpO285ZSgpO245ZSgpO0ltZSgpO3M5ZSgpO2w5ZSgpO2M5ZSgpO2Q5ZSgpO3U5ZSgpO2Y5ZSgpO0lMdCgpO3A5ZSgpO2g5ZSgpfSk7dmFyIGE3PXt9O3FlKGE3LHtPYnNlcnZhYmxlOigpPT5IdCxSZXBsYXlTdWJqZWN0OigpPT5abSxTdWJqZWN0OigpPT5GMSxTdWJzY3JpcHRpb246KCk9PnRpLGZyb206KCk9PlAyLGZyb21FdmVudDooKT0+cjYsb2Y6KCk9Pm92LG9wczooKT0+TzJhfSk7dmFyIE8yYSxiYWU9bCgoKT0+e2x2KCk7T0x0KCk7TzJhPXtidWZmZXI6bmFlLGJ1ZmZlckNvdW50OnNhZSxidWZmZXJUaW1lOmxhZSxkZWJvdW5jZTpjYWUsZGVib3VuY2VUaW1lOmRhZSxmaWx0ZXI6b2FlLG1hcDpJMixzdGFydFdpdGg6aGFlLHRha2VVbnRpbDpyNyx0aHJvdHRsZVRpbWU6eGFlfX0pO3ZhciBtOWUsUkx0PWwoKCk9PntMcmUoKTtiYWUoKTttOWU9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLm9ic2VydmFibGVFdmVudEVtaXR0ZXJCdW5kbGVBcnJheT1uZXcgQXJyYXksdGhpcy5vYnNlcnZhYmxlRXZlbnRUYXJnZXRCdW5kbGVBcnJheT1uZXcgQXJyYXl9Z2V0U3ViamVjdEZvckVtaXR0ZXJFdmVudCh0LHIpe2xldCBhPXRoaXMub2JzZXJ2YWJsZUV2ZW50RW1pdHRlckJ1bmRsZUFycmF5LmZpbmQoaT0+aS5ldmVudFJlZj09PXQmJmkuZXZlbnQ9PT1yKTtpZihhKXJldHVybiBhLnN1YmplY3Q7e2xldCBpPXI2KHQsciksbz1uZXcgRjE7aS5zdWJzY3JpYmUobyk7bGV0IG49e3N1YmplY3Q6byxldmVudFJlZjp0LGV2ZW50OnJ9O3JldHVybiB0aGlzLm9ic2VydmFibGVFdmVudEVtaXR0ZXJCdW5kbGVBcnJheS5wdXNoKG4pLG4uc3ViamVjdH19Z2V0U3ViamVjdEZvckV2ZW50VGFyZ2V0KHQscil7bGV0IGE9dGhpcy5vYnNlcnZhYmxlRXZlbnRUYXJnZXRCdW5kbGVBcnJheS5maW5kKGk9PmkuZXZlbnRSZWY9PT10JiZpLmV2ZW50PT09cik7aWYoYSlyZXR1cm4gYS5zdWJqZWN0O3tsZXQgbz17c3ViamVjdDpuZXcgRjEsZXZlbnRSZWY6dCxldmVudDpyfTtyZXR1cm4gdGhpcy5vYnNlcnZhYmxlRXZlbnRUYXJnZXRCdW5kbGVBcnJheS5wdXNoKG8pLG8uc3ViamVjdH19fX0pO3ZhciBnOWUsQkx0PWwoKCk9PntMcmUoKTtiYWUoKTtnOWU9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLm9ic2VydmFibGVGdW5jdGlvbnM9e25leHQ6dD0+e30sY29tcGxldGU6dD0+e319LHRoaXMuZ2VuZXJhdG9yPW51bGwsdGhpcy5idWZmZXJlZD0hMSx0aGlzLnBheWxvYWRCdWZmZXI9W10sdGhpcy5vYnNlcnZhYmxlPW5ldyBIdCh0PT57dGhpcy5vYnNlcnZhYmxlRnVuY3Rpb25zLm5leHQ9KC4uLnIpPT50Lm5leHQociksdGhpcy5vYnNlcnZhYmxlRnVuY3Rpb25zLmNvbXBsZXRlPSgpPT4odGhpcy5jb21wbGV0ZWREZWZmZXJlZC5yZXNvbHZlKCksdC5jb21wbGV0ZSgpKX0pLHRoaXMuY29tcGxldGVkRGVmZmVyZWQ9bHQuZGVmZXIoKSx0aGlzLmNvbXBsZXRlZD10aGlzLmNvbXBsZXRlZERlZmZlcmVkLnByb21pc2V9c2V0T2JzZXJ2YWJsZSh0KXt0aGlzLm9ic2VydmFibGU9dH1wdXNoKHQpe3RoaXMuYnVmZmVyZWQ/dGhpcy5wYXlsb2FkQnVmZmVyLnB1c2godCk6dGhpcy5pbnRlcm5hbFB1c2godCl9cHVzaE1hbnkodCl7Zm9yKGxldCByIG9mIHQpdGhpcy5wdXNoKHIpfXNldEdlbmVyYXRvcih0KXt0aGlzLmdlbmVyYXRvcj10fW1ha2VCdWZmZXJlZCgpe3RoaXMuYnVmZmVyZWQ9ITB9c3Vic2NyaWJlKC4uLnQpe3JldHVybiB0aGlzLm9ic2VydmFibGUuc3Vic2NyaWJlKC4uLnQpfXJlcXVlc3QodCl7aWYodCE9PTApZm9yKGxldCByPTA7ciE9PXQ7cisrKWlmKHRoaXMucGF5bG9hZEJ1ZmZlci5sZW5ndGg+MCl0aGlzLmludGVybmFsUHVzaCh0aGlzLnBheWxvYWRCdWZmZXIuc2hpZnQoKSk7ZWxzZXtsZXQgYT10aGlzLmdlbmVyYXRvci5uZXh0KCk7dGhpcy5pbnRlcm5hbFB1c2goYS52YWx1ZSl9fXNpZ25hbENvbXBsZXRlKCl7dGhpcy5vYnNlcnZhYmxlRnVuY3Rpb25zLmNvbXBsZXRlKCl9aW50ZXJuYWxQdXNoKHQpe3RoaXMub2JzZXJ2YWJsZUZ1bmN0aW9ucy5uZXh0KHQpfX19KTtmdW5jdGlvbiBSMmEoZSl7cmV0dXJuIG5ldyBIdCh0PT57bGV0IHI9KCk9PmUucGF1c2UoKSxhPSgpPT5wcm9jZXNzLm5leHRUaWNrKCgpPT5lLnJlc3VtZSgpKSxpPW89PntyKCksdC5uZXh0KG8pLGEoKX07cmV0dXJuIGUub24oImRhdGEiLGkpLGUub24oImVycm9yIixvPT50LmVycm9yKG8pKSxlLm9uKCJlbmQiLCgpPT50LmNvbXBsZXRlKCkpLGUub24oImNsb3NlIiwoKT0+dC5jb21wbGV0ZSgpKSwoKT0+e2UucmVtb3ZlTGlzdGVuZXIoImRhdGEiLGkpLGUucmVtb3ZlTGlzdGVuZXIoImVycm9yIix0LmVycm9yKSxlLnJlbW92ZUxpc3RlbmVyKCJlbmQiLHQuY29tcGxldGUpLGUucmVtb3ZlTGlzdGVuZXIoImNsb3NlIix0LmNvbXBsZXRlKX19KX12YXIgSEx0PWwoKCk9PntsdigpfSk7dmFyIE5yPXt9O3FlKE5yLHtPYnNlcnZhYmxlSW50YWtlOigpPT5nOWUsT2JzZXJ2YWJsZW1hcDooKT0+bTllLGZyb21TdHJlYW1XaXRoQmFja3ByZXNzdXJlOigpPT5SMmEscnhqczooKT0+YTd9KTt2YXIgTjI9bCgoKT0+e0xyZSgpO1JMdCgpO0JMdCgpO0hMdCgpO2JhZSgpfSk7ZnVuY3Rpb24gaihlKXtyZXR1cm4odCxyKT0+dHlwZW9mIHI9PSJvYmplY3QiP3FMdChlLHQscik6KChhLGksbyk9PntsZXQgbj1pLmhhc093blByb3BlcnR5KG8pO3JldHVybiBpLmNvbnN0cnVjdG9yLmNyZWF0ZVByb3BlcnR5KG8sYSksbj9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGksbyk6dm9pZCAwfSkoZSx0LHIpfXZhciBCMmEscUx0LHZhZT1sKCgpPT57cWIoKTtCMmE9e2F0dHJpYnV0ZTohMCx0eXBlOlN0cmluZyxjb252ZXJ0ZXI6cW0scmVmbGVjdDohMSxoYXNDaGFuZ2VkOkhifSxxTHQ9KGU9QjJhLHQscik9PntsZXR7a2luZDphLG1ldGFkYXRhOml9PXIsbz1nbG9iYWxUaGlzLmxpdFByb3BlcnR5TWV0YWRhdGEuZ2V0KGkpO2lmKG89PT12b2lkIDAmJmdsb2JhbFRoaXMubGl0UHJvcGVydHlNZXRhZGF0YS5zZXQoaSxvPW5ldyBNYXApLGE9PT0ic2V0dGVyIiYmKChlPU9iamVjdC5jcmVhdGUoZSkpLndyYXBwZWQ9ITApLG8uc2V0KHIubmFtZSxlKSxhPT09ImFjY2Vzc29yIil7bGV0e25hbWU6bn09cjtyZXR1cm57c2V0KHMpe2xldCBjPXQuZ2V0LmNhbGwodGhpcyk7dC5zZXQuY2FsbCh0aGlzLHMpLHRoaXMucmVxdWVzdFVwZGF0ZShuLGMsZSwhMCxzKX0saW5pdChzKXtyZXR1cm4gcyE9PXZvaWQgMCYmdGhpcy5DKG4sdm9pZCAwLGUscyksc319fWlmKGE9PT0ic2V0dGVyIil7bGV0e25hbWU6bn09cjtyZXR1cm4gZnVuY3Rpb24ocyl7bGV0IGM9dGhpc1tuXTt0LmNhbGwodGhpcyxzKSx0aGlzLnJlcXVlc3RVcGRhdGUobixjLGUsITAscyl9fXRocm93IEVycm9yKCJVbnN1cHBvcnRlZCBkZWNvcmF0b3IgbG9jYXRpb246ICIrYSl9fSk7dmFyIGpMdD1sKCgpPT57dmFlKCl9KTt2YXIgVkx0PWwoKCk9Pnt9KTt2YXIgUXQ9e307cWUoUXQse1RpbWVvdXQ6KCk9PnlhZSxkZWxheUZvcjooKT0+VUx0LGRlbGF5Rm9yUmFuZG9tOigpPT5IMmF9KTt2YXIgVUx0LEgyYSx5YWUsczQ9bCgoKT0+e29vKCk7VUx0PWFzeW5jKGUsdCxyPSExKT0+KGF3YWl0IG5ldyB5YWUoZSxudWxsLHIpLnByb21pc2UsdCksSDJhPWFzeW5jKGUsdCxyLGE9ITEpPT4oYXdhaXQgVUx0KE1hdGgucmFuZG9tKCkqKHQtZSkrZSxudWxsLGEpLHIpLHlhZT1jbGFzc3tjb25zdHJ1Y3Rvcih0LHIsYT0hMSl7dGhpcy5fY2FuY2VsbGVkPSExLHRoaXMudGltZW91dEluTWlsbGlzPXQsdGhpcy5fZGVmZXJyZWQ9cjQoKSx0aGlzLnByb21pc2U9dGhpcy5fZGVmZXJyZWQucHJvbWlzZSx0aGlzLl90aW1lb3V0PXNldFRpbWVvdXQoKCk9Pnt0aGlzLl9jYW5jZWxsZWR8fHRoaXMuX2RlZmVycmVkLnJlc29sdmUocil9LHQpLHRoaXMuc3RhcnRlZD1EYXRlLm5vdygpLGEmJnRoaXMubWFrZVVucmVmZWQoKX1tYWtlVW5yZWZlZCgpe3RoaXMuX3RpbWVvdXQudW5yZWYoKX1jYW5jZWwoKXt0aGlzLl9jYW5jZWxsZWQ9ITAsY2xlYXJUaW1lb3V0KHRoaXMuX3RpbWVvdXQpfWdldFRpbWVMZWZ0KCl7bGV0IHQ9dGhpcy5zdGFydGVkK3RoaXMudGltZW91dEluTWlsbGlzLURhdGUubm93KCk7cmV0dXJuIHQ+MD90OjB9fX0pO3ZhciBpNz17fTt2YXIgd2FlPWwoKCk9Pnt9KTtmdW5jdGlvbiBhNihlKXtpZih0eXBlb2YgZSE9InN0cmluZyIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBzdHJpbmciKTtyZXR1cm4gZS5yZXBsYWNlKC9bfFxce30oKVtcXV4kKyo/Ll0vZywiXFwkJiIpLnJlcGxhY2UoLy0vZywiXFx4MmQiKX12YXIgTWFlPWwoKCk9Pnt9KTt2YXIgY3Y9e307cWUoY3Yse2lzTWF0Y2g6KCk9PlYyYSxtYXRjaGVyOigpPT5qMmF9KTtmdW5jdGlvbiBqMmEoZSx0LHIpe3JldHVybiBHTHQoZSx0LHIsITEpfWZ1bmN0aW9uIFYyYShlLHQscil7cmV0dXJuIEdMdChlLHQsciwhMCkubGVuZ3RoPjB9dmFyIHg5ZSxXTHQscTJhLEdMdCxZTHQ9bCgoKT0+e01hZSgpO3g5ZT1uZXcgTWFwLFdMdD0oZSx0KT0+e2lmKCFBcnJheS5pc0FycmF5KGUpKXN3aXRjaCh0eXBlb2YgZSl7Y2FzZSJzdHJpbmciOmU9W2VdO2JyZWFrO2Nhc2UidW5kZWZpbmVkIjplPVtdO2JyZWFrO2RlZmF1bHQ6dGhyb3cgbmV3IFR5cGVFcnJvcihgRXhwZWN0ZWQgJyR7dH0nIHRvIGJlIGEgc3RyaW5nIG9yIGFuIGFycmF5LCBidXQgZ290IGEgdHlwZSBvZiAnJHt0eXBlb2YgZX0nYCl9cmV0dXJuIGUuZmlsdGVyKHI9PntpZih0eXBlb2YgciE9InN0cmluZyIpe2lmKHR5cGVvZiByPiJ1IilyZXR1cm4hMTt0aHJvdyBuZXcgVHlwZUVycm9yKGBFeHBlY3RlZCAnJHt0fScgdG8gYmUgYW4gYXJyYXkgb2Ygc3RyaW5ncywgYnV0IGZvdW5kIGEgdHlwZSBvZiAnJHt0eXBlb2Ygcn0nIGluIHRoZSBhcnJheWApfXJldHVybiEwfSl9LHEyYT0oZSx0KT0+e3Q9e2Nhc2VTZW5zaXRpdmU6ITEsLi4udH07bGV0IHI9ZStKU09OLnN0cmluZ2lmeSh0KTtpZih4OWUuaGFzKHIpKXJldHVybiB4OWUuZ2V0KHIpO2xldCBhPWVbMF09PT0iISI7YSYmKGU9ZS5zbGljZSgxKSksZT1hNihlKS5yZXBsYWNlKC9cXFwqL2csIltcXHNcXFNdKiIpO2xldCBpPW5ldyBSZWdFeHAoYF4ke2V9JGAsdC5jYXNlU2Vuc2l0aXZlPyIiOiJpIik7cmV0dXJuIGkubmVnYXRlZD1hLHg5ZS5zZXQocixpKSxpfSxHTHQ9KGUsdCxyLGEpPT57aWYoZT1XTHQoZSwiaW5wdXRzIiksdD1XTHQodCwicGF0dGVybnMiKSx0Lmxlbmd0aD09PTApcmV0dXJuW107dD10Lm1hcChuPT5xMmEobixyKSk7bGV0e2FsbFBhdHRlcm5zOml9PXJ8fHt9LG89W107Zm9yKGxldCBuIG9mIGUpe2xldCBzLGM9Wy4uLnRdLmZpbGwoITEpO2ZvcihsZXRbZCxmXW9mIHQuZW50cmllcygpKWlmKGYudGVzdChuKSYmKGNbZF09ITAscz0hZi5uZWdhdGVkLCFzKSlicmVhaztpZighKHM9PT0hMXx8cz09PXZvaWQgMCYmdC5zb21lKGQ9PiFkLm5lZ2F0ZWQpfHxpJiZjLnNvbWUoKGQsZik9PiFkJiYhdFtmXS5uZWdhdGVkKSkmJihvLnB1c2gobiksYSkpYnJlYWt9cmV0dXJuIG99fSk7dmFyIFpMdD1sKCgpPT57WUx0KCl9KTt2YXIgZHY9e307cWUoZHYse1NtYXJ0TWF0Y2g6KCk9PmI5ZX0pO3ZhciBiOWUsWEx0PWwoKCk9PntaTHQoKTtiOWU9Y2xhc3N7Y29uc3RydWN0b3IodCl7dGhpcy53aWxkY2FyZD10fW1hdGNoKHQpe3JldHVybiBjdi5pc01hdGNoKHQsdGhpcy53aWxkY2FyZCl9fX0pO3ZhciBodj17fTtxZShodix7Q3JvbjooKT0+ckR0LENyb25EYXRlOigpPT5FaSxDcm9uUGF0dGVybjooKT0+a2FlLHNjaGVkdWxlZEpvYnM6KCk9Pm83fSk7ZnVuY3Rpb24gdXYoZSl7cmV0dXJuIERhdGUuVVRDKGUueSxlLm0tMSxlLmQsZS5oLGUuaSxlLnMpfWZ1bmN0aW9uIHY5ZShlLHQpe3JldHVybiBlLnk9PT10LnkmJmUubT09PXQubSYmZS5kPT09dC5kJiZlLmg9PT10LmgmJmUuaT09PXQuaSYmZS5zPT09dC5zfWZ1bmN0aW9uIFcyYShlLHQpe2xldCByPW5ldyBEYXRlKERhdGUucGFyc2UoZSkpO2lmKGlzTmFOKHIpKXRocm93IG5ldyBFcnJvcigiSW52YWxpZCBJU084NjAxIHBhc3NlZCB0byB0aW1lem9uZSBwYXJzZXIuIik7bGV0IGE9ZS5zdWJzdHJpbmcoOSk7cmV0dXJuIGEuaW5jbHVkZXMoIloiKXx8YS5pbmNsdWRlcygiKyIpfHxhLmluY2x1ZGVzKCItIik/eTllKHIuZ2V0VVRDRnVsbFllYXIoKSxyLmdldFVUQ01vbnRoKCkrMSxyLmdldFVUQ0RhdGUoKSxyLmdldFVUQ0hvdXJzKCksci5nZXRVVENNaW51dGVzKCksci5nZXRVVENTZWNvbmRzKCksIkV0Yy9VVEMiKTp5OWUoci5nZXRGdWxsWWVhcigpLHIuZ2V0TW9udGgoKSsxLHIuZ2V0RGF0ZSgpLHIuZ2V0SG91cnMoKSxyLmdldE1pbnV0ZXMoKSxyLmdldFNlY29uZHMoKSx0KX1mdW5jdGlvbiBRTHQoZSx0LHIpe3JldHVybiBLTHQoVzJhKGUsdCkscil9ZnVuY3Rpb24gS0x0KGUsdCl7bGV0IHI9bmV3IERhdGUodXYoZSkpLGE9ZnYocixlLnR6KSxpPXV2KGUpLG89dXYoYSksbj1pLW8scz1uZXcgRGF0ZShyLmdldFRpbWUoKStuKSxjPWZ2KHMsZS50eik7aWYodjllKGMsZSkpe2xldCB1PW5ldyBEYXRlKHMuZ2V0VGltZSgpLTM2ZTUpLHA9ZnYodSxlLnR6KTtyZXR1cm4gdjllKHAsZSk/dTpzfWxldCBkPW5ldyBEYXRlKHMuZ2V0VGltZSgpK3V2KGUpLXV2KGMpKSxmPWZ2KGQsZS50eik7aWYodjllKGYsZSkpcmV0dXJuIGQ7aWYodCl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgZGF0ZSBwYXNzZWQgdG8gZnJvbVRaKCkiKTtyZXR1cm4gcy5nZXRUaW1lKCk+ZC5nZXRUaW1lKCk/czpkfWZ1bmN0aW9uIGZ2KGUsdCl7bGV0IHIsYTt0cnl7cj1uZXcgSW50bC5EYXRlVGltZUZvcm1hdCgiZW4tVVMiLHt0aW1lWm9uZTp0LHllYXI6Im51bWVyaWMiLG1vbnRoOiJudW1lcmljIixkYXk6Im51bWVyaWMiLGhvdXI6Im51bWVyaWMiLG1pbnV0ZToibnVtZXJpYyIsc2Vjb25kOiJudW1lcmljIixob3VyMTI6ITF9KSxhPXIuZm9ybWF0VG9QYXJ0cyhlKX1jYXRjaChvKXtsZXQgbj1vIGluc3RhbmNlb2YgRXJyb3I/by5tZXNzYWdlOlN0cmluZyhvKTt0aHJvdyBuZXcgUmFuZ2VFcnJvcihgdG9UWjogSW52YWxpZCB0aW1lem9uZSAnJHt0fScgb3IgZGF0ZS4gUGxlYXNlIHByb3ZpZGUgYSB2YWxpZCBJQU5BIHRpbWV6b25lIChlLmcuLCAnQW1lcmljYS9OZXdfWW9yaycsICdFdXJvcGUvU3RvY2tob2xtJykuIE9yaWdpbmFsIGVycm9yOiAke259YCl9bGV0IGk9e3llYXI6MCxtb250aDowLGRheTowLGhvdXI6MCxtaW51dGU6MCxzZWNvbmQ6MH07Zm9yKGxldCBvIG9mIGEpKG8udHlwZT09PSJ5ZWFyInx8by50eXBlPT09Im1vbnRoInx8by50eXBlPT09ImRheSJ8fG8udHlwZT09PSJob3VyInx8by50eXBlPT09Im1pbnV0ZSJ8fG8udHlwZT09PSJzZWNvbmQiKSYmKGlbby50eXBlXT1wYXJzZUludChvLnZhbHVlLDEwKSk7aWYoaXNOYU4oaS55ZWFyKXx8aXNOYU4oaS5tb250aCl8fGlzTmFOKGkuZGF5KXx8aXNOYU4oaS5ob3VyKXx8aXNOYU4oaS5taW51dGUpfHxpc05hTihpLnNlY29uZCkpdGhyb3cgbmV3IEVycm9yKGB0b1RaOiBGYWlsZWQgdG8gcGFyc2UgYWxsIGRhdGUgY29tcG9uZW50cyBmcm9tIHRpbWV6b25lICcke3R9Jy4gVGhpcyBtYXkgaW5kaWNhdGUgYW4gaW52YWxpZCBkYXRlIG9yIHRpbWV6b25lIGNvbmZpZ3VyYXRpb24uIFBhcnNlZCBjb21wb25lbnRzOiAke0pTT04uc3RyaW5naWZ5KGkpfWApO3JldHVybiBpLmhvdXI9PT0yNCYmKGkuaG91cj0wKSx7eTppLnllYXIsbTppLm1vbnRoLGQ6aS5kYXksaDppLmhvdXIsaTppLm1pbnV0ZSxzOmkuc2Vjb25kLHR6OnR9fWZ1bmN0aW9uIHk5ZShlLHQscixhLGksbyxuKXtyZXR1cm57eTplLG06dCxkOnIsaDphLGksczpvLHR6Om59fWZ1bmN0aW9uIEcyYShlKXtpZihlPT09dm9pZCAwJiYoZT17fSksZGVsZXRlIGUubmFtZSxlLmxlZ2FjeU1vZGUhPT12b2lkIDAmJmUuZG9tQW5kRG93PT09dm9pZCAwP2UuZG9tQW5kRG93PSFlLmxlZ2FjeU1vZGU6ZS5kb21BbmREb3c9PT12b2lkIDAmJihlLmRvbUFuZERvdz0hMSksZS5sZWdhY3lNb2RlPSFlLmRvbUFuZERvdyxlLnBhdXNlZD1lLnBhdXNlZD09PXZvaWQgMD8hMTplLnBhdXNlZCxlLm1heFJ1bnM9ZS5tYXhSdW5zPT09dm9pZCAwPzEvMDplLm1heFJ1bnMsZS5jYXRjaD1lLmNhdGNoPT09dm9pZCAwPyExOmUuY2F0Y2gsZS5pbnRlcnZhbD1lLmludGVydmFsPT09dm9pZCAwPzA6cGFyc2VJbnQoZS5pbnRlcnZhbC50b1N0cmluZygpLDEwKSxlLnV0Y09mZnNldD1lLnV0Y09mZnNldD09PXZvaWQgMD92b2lkIDA6cGFyc2VJbnQoZS51dGNPZmZzZXQudG9TdHJpbmcoKSwxMCksZS5kYXlPZmZzZXQ9ZS5kYXlPZmZzZXQ9PT12b2lkIDA/MDpwYXJzZUludChlLmRheU9mZnNldC50b1N0cmluZygpLDEwKSxlLnVucmVmPWUudW5yZWY9PT12b2lkIDA/ITE6ZS51bnJlZixlLm1vZGU9ZS5tb2RlPT09dm9pZCAwPyJhdXRvIjplLm1vZGUsZS5hbHRlcm5hdGl2ZVdlZWtkYXlzPWUuYWx0ZXJuYXRpdmVXZWVrZGF5cz09PXZvaWQgMD8hMTplLmFsdGVybmF0aXZlV2Vla2RheXMsZS5zbG9wcHlSYW5nZXM9ZS5zbG9wcHlSYW5nZXM9PT12b2lkIDA/ITE6ZS5zbG9wcHlSYW5nZXMsIVsiYXV0byIsIjUtcGFydCIsIjYtcGFydCIsIjctcGFydCIsIjUtb3ItNi1wYXJ0cyIsIjYtb3ItNy1wYXJ0cyJdLmluY2x1ZGVzKGUubW9kZSkpdGhyb3cgbmV3IEVycm9yKCJDcm9uT3B0aW9uczogbW9kZSBtdXN0IGJlIG9uZSBvZiAnYXV0bycsICc1LXBhcnQnLCAnNi1wYXJ0JywgJzctcGFydCcsICc1LW9yLTYtcGFydHMnLCBvciAnNi1vci03LXBhcnRzJy4iKTtpZihlLnN0YXJ0QXQmJihlLnN0YXJ0QXQ9bmV3IEVpKGUuc3RhcnRBdCxlLnRpbWV6b25lKSksZS5zdG9wQXQmJihlLnN0b3BBdD1uZXcgRWkoZS5zdG9wQXQsZS50aW1lem9uZSkpLGUuaW50ZXJ2YWwhPT1udWxsKXtpZihpc05hTihlLmludGVydmFsKSl0aHJvdyBuZXcgRXJyb3IoIkNyb25PcHRpb25zOiBTdXBwbGllZCB2YWx1ZSBmb3IgaW50ZXJ2YWwgaXMgbm90IGEgbnVtYmVyIik7aWYoZS5pbnRlcnZhbDwwKXRocm93IG5ldyBFcnJvcigiQ3Jvbk9wdGlvbnM6IFN1cHBsaWVkIHZhbHVlIGZvciBpbnRlcnZhbCBjYW4gbm90IGJlIG5lZ2F0aXZlIil9aWYoZS51dGNPZmZzZXQhPT12b2lkIDApe2lmKGlzTmFOKGUudXRjT2Zmc2V0KSl0aHJvdyBuZXcgRXJyb3IoIkNyb25PcHRpb25zOiBJbnZhbGlkIHZhbHVlIHBhc3NlZCBmb3IgdXRjT2Zmc2V0LCBzaG91bGQgYmUgbnVtYmVyIHJlcHJlc2VudGluZyBtaW51dGVzIG9mZnNldCBmcm9tIFVUQy4iKTtpZihlLnV0Y09mZnNldDwtODcwfHxlLnV0Y09mZnNldD44NzApdGhyb3cgbmV3IEVycm9yKCJDcm9uT3B0aW9uczogdXRjT2Zmc2V0IG91dCBvZiBib3VuZHMuIik7aWYoZS51dGNPZmZzZXQhPT12b2lkIDAmJmUudGltZXpvbmUpdGhyb3cgbmV3IEVycm9yKCJDcm9uT3B0aW9uczogQ29tYmluaW5nICd1dGNPZmZzZXQnIHdpdGggJ3RpbWV6b25lJyBpcyBub3QgYWxsb3dlZC4iKX1pZihlLnVucmVmIT09ITAmJmUudW5yZWYhPT0hMSl0aHJvdyBuZXcgRXJyb3IoIkNyb25PcHRpb25zOiBVbnJlZiBzaG91bGQgYmUgZWl0aGVyIHRydWUsIGZhbHNlIG9yIHVuZGVmaW5lZChmYWxzZSkuIik7aWYoZS5kYXlPZmZzZXQhPT12b2lkIDAmJmUuZGF5T2Zmc2V0IT09MCYmaXNOYU4oZS5kYXlPZmZzZXQpKXRocm93IG5ldyBFcnJvcigiQ3Jvbk9wdGlvbnM6IEludmFsaWQgdmFsdWUgcGFzc2VkIGZvciBkYXlPZmZzZXQsIHNob3VsZCBiZSBhIG51bWJlciByZXByZXNlbnRpbmcgZGF5cyB0byBvZmZzZXQuIik7cmV0dXJuIGV9ZnVuY3Rpb24gcHYoZSl7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKT09PSJbb2JqZWN0IEZ1bmN0aW9uXSJ8fHR5cGVvZiBlPT0iZnVuY3Rpb24ifHxlIGluc3RhbmNlb2YgRnVuY3Rpb259ZnVuY3Rpb24gWTJhKGUpe3JldHVybiBwdihlKX1mdW5jdGlvbiBaMmEoZSl7dHlwZW9mIERlbm88InUiJiZ0eXBlb2YgRGVuby51bnJlZlRpbWVyPCJ1Ij9EZW5vLnVucmVmVGltZXIoZSk6ZSYmdHlwZW9mIGUudW5yZWY8InUiJiZlLnVucmVmKCl9dmFyIEpMdCxrYWUsdzllLE1hLEVpLGVEdCxvNyxyRHQsYUR0PWwoKCk9PntKTHQ9WzEsMiw0LDgsMTZdLGthZT1jbGFzc3twYXR0ZXJuO3RpbWV6b25lO21vZGU7YWx0ZXJuYXRpdmVXZWVrZGF5cztzbG9wcHlSYW5nZXM7c2Vjb25kO21pbnV0ZTtob3VyO2RheTttb250aDtkYXlPZldlZWs7eWVhcjtsYXN0RGF5T2ZNb250aDtsYXN0V2Vla2RheTtuZWFyZXN0V2Vla2RheXM7c3RhckRPTTtzdGFyRE9XO3N0YXJZZWFyO3VzZUFuZExvZ2ljO2NvbnN0cnVjdG9yKGUsdCxyKXt0aGlzLnBhdHRlcm49ZSx0aGlzLnRpbWV6b25lPXQsdGhpcy5tb2RlPXI/Lm1vZGU/PyJhdXRvIix0aGlzLmFsdGVybmF0aXZlV2Vla2RheXM9cj8uYWx0ZXJuYXRpdmVXZWVrZGF5cz8/ITEsdGhpcy5zbG9wcHlSYW5nZXM9cj8uc2xvcHB5UmFuZ2VzPz8hMSx0aGlzLnNlY29uZD1BcnJheSg2MCkuZmlsbCgwKSx0aGlzLm1pbnV0ZT1BcnJheSg2MCkuZmlsbCgwKSx0aGlzLmhvdXI9QXJyYXkoMjQpLmZpbGwoMCksdGhpcy5kYXk9QXJyYXkoMzEpLmZpbGwoMCksdGhpcy5tb250aD1BcnJheSgxMikuZmlsbCgwKSx0aGlzLmRheU9mV2Vlaz1BcnJheSg3KS5maWxsKDApLHRoaXMueWVhcj1BcnJheSgxZTQpLmZpbGwoMCksdGhpcy5sYXN0RGF5T2ZNb250aD0hMSx0aGlzLmxhc3RXZWVrZGF5PSExLHRoaXMubmVhcmVzdFdlZWtkYXlzPUFycmF5KDMxKS5maWxsKDApLHRoaXMuc3RhckRPTT0hMSx0aGlzLnN0YXJET1c9ITEsdGhpcy5zdGFyWWVhcj0hMSx0aGlzLnVzZUFuZExvZ2ljPSExLHRoaXMucGFyc2UoKX1wYXJzZSgpe2lmKCEodHlwZW9mIHRoaXMucGF0dGVybj09InN0cmluZyJ8fHRoaXMucGF0dGVybiBpbnN0YW5jZW9mIFN0cmluZykpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ3JvblBhdHRlcm46IFBhdHRlcm4gaGFzIHRvIGJlIG9mIHR5cGUgc3RyaW5nLiIpO3RoaXMucGF0dGVybi5pbmRleE9mKCJAIik+PTAmJih0aGlzLnBhdHRlcm49dGhpcy5oYW5kbGVOaWNrbmFtZXModGhpcy5wYXR0ZXJuKS50cmltKCkpO2xldCBlPXRoaXMucGF0dGVybi5tYXRjaCgvXFMrL2cpfHxbIiJdLHQ9ZS5sZW5ndGg7aWYoZS5sZW5ndGg8NXx8ZS5sZW5ndGg+Nyl0aHJvdyBuZXcgVHlwZUVycm9yKCJDcm9uUGF0dGVybjogaW52YWxpZCBjb25maWd1cmF0aW9uIGZvcm1hdCAoJyIrdGhpcy5wYXR0ZXJuKyInKSwgZXhhY3RseSBmaXZlLCBzaXgsIG9yIHNldmVuIHNwYWNlIHNlcGFyYXRlZCBwYXJ0cyBhcmUgcmVxdWlyZWQuIik7aWYodGhpcy5tb2RlIT09ImF1dG8iKXtsZXQgYTtzd2l0Y2godGhpcy5tb2RlKXtjYXNlIjUtcGFydCI6YT01O2JyZWFrO2Nhc2UiNi1wYXJ0IjphPTY7YnJlYWs7Y2FzZSI3LXBhcnQiOmE9NzticmVhaztjYXNlIjUtb3ItNi1wYXJ0cyI6YT1bNSw2XTticmVhaztjYXNlIjYtb3ItNy1wYXJ0cyI6YT1bNiw3XTticmVhaztkZWZhdWx0OmE9MH1pZighKEFycmF5LmlzQXJyYXkoYSk/YS5pbmNsdWRlcyh0KTp0PT09YSkpe2xldCBpPUFycmF5LmlzQXJyYXkoYSk/YS5qb2luKCIgb3IgIik6YS50b1N0cmluZygpO3Rocm93IG5ldyBUeXBlRXJyb3IoYENyb25QYXR0ZXJuOiBtb2RlICcke3RoaXMubW9kZX0nIHJlcXVpcmVzIGV4YWN0bHkgJHtpfSBwYXJ0cywgYnV0IHBhdHRlcm4gJyR7dGhpcy5wYXR0ZXJufScgaGFzICR7dH0gcGFydHMuYCl9fWlmKGUubGVuZ3RoPT09NSYmZS51bnNoaWZ0KCIwIiksZS5sZW5ndGg9PT02JiZlLnB1c2goIioiKSxlWzNdLnRvVXBwZXJDYXNlKCk9PT0iTFciPyh0aGlzLmxhc3RXZWVrZGF5PSEwLGVbM109IiIpOmVbM10udG9VcHBlckNhc2UoKS5pbmRleE9mKCJMIik+PTAmJihlWzNdPWVbM10ucmVwbGFjZSgvTC9naSwiIiksdGhpcy5sYXN0RGF5T2ZNb250aD0hMCksZVszXT09IioiJiYodGhpcy5zdGFyRE9NPSEwKSxlWzZdPT0iKiImJih0aGlzLnN0YXJZZWFyPSEwKSxlWzRdLmxlbmd0aD49MyYmKGVbNF09dGhpcy5yZXBsYWNlQWxwaGFNb250aHMoZVs0XSkpLGVbNV0ubGVuZ3RoPj0zJiYoZVs1XT10aGlzLmFsdGVybmF0aXZlV2Vla2RheXM/dGhpcy5yZXBsYWNlQWxwaGFEYXlzUXVhcnR6KGVbNV0pOnRoaXMucmVwbGFjZUFscGhhRGF5cyhlWzVdKSksZVs1XS5zdGFydHNXaXRoKCIrIikmJih0aGlzLnVzZUFuZExvZ2ljPSEwLGVbNV09ZVs1XS5zdWJzdHJpbmcoMSksZVs1XT09PSIiKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJDcm9uUGF0dGVybjogRGF5LW9mLXdlZWsgZmllbGQgY2Fubm90IGJlIGVtcHR5IGFmdGVyICcrJyBtb2RpZmllci4iKTtzd2l0Y2goZVs1XT09IioiJiYodGhpcy5zdGFyRE9XPSEwKSx0aGlzLnBhdHRlcm4uaW5kZXhPZigiPyIpPj0wJiYoZVswXT1lWzBdLnJlcGxhY2UoL1w/L2csIioiKSxlWzFdPWVbMV0ucmVwbGFjZSgvXD8vZywiKiIpLGVbMl09ZVsyXS5yZXBsYWNlKC9cPy9nLCIqIiksZVszXT1lWzNdLnJlcGxhY2UoL1w/L2csIioiKSxlWzRdPWVbNF0ucmVwbGFjZSgvXD8vZywiKiIpLGVbNV09ZVs1XS5yZXBsYWNlKC9cPy9nLCIqIiksZVs2XSYmKGVbNl09ZVs2XS5yZXBsYWNlKC9cPy9nLCIqIikpKSx0aGlzLm1vZGUpe2Nhc2UiNS1wYXJ0IjplWzBdPSIwIixlWzZdPSIqIjticmVhaztjYXNlIjYtcGFydCI6ZVs2XT0iKiI7YnJlYWs7Y2FzZSI1LW9yLTYtcGFydHMiOmVbNl09IioiO2JyZWFrO2Nhc2UiNi1vci03LXBhcnRzIjpicmVhaztjYXNlIjctcGFydCI6Y2FzZSJhdXRvIjpicmVha310aGlzLnRocm93QXRJbGxlZ2FsQ2hhcmFjdGVycyhlKSx0aGlzLnBhcnRUb0FycmF5KCJzZWNvbmQiLGVbMF0sMCwxKSx0aGlzLnBhcnRUb0FycmF5KCJtaW51dGUiLGVbMV0sMCwxKSx0aGlzLnBhcnRUb0FycmF5KCJob3VyIixlWzJdLDAsMSksdGhpcy5wYXJ0VG9BcnJheSgiZGF5IixlWzNdLC0xLDEpLHRoaXMucGFydFRvQXJyYXkoIm1vbnRoIixlWzRdLC0xLDEpO2xldCByPXRoaXMuYWx0ZXJuYXRpdmVXZWVrZGF5cz8tMTowO3RoaXMucGFydFRvQXJyYXkoImRheU9mV2VlayIsZVs1XSxyLDYzKSx0aGlzLnBhcnRUb0FycmF5KCJ5ZWFyIixlWzZdLDAsMSksIXRoaXMuYWx0ZXJuYXRpdmVXZWVrZGF5cyYmdGhpcy5kYXlPZldlZWtbN10mJih0aGlzLmRheU9mV2Vla1swXT10aGlzLmRheU9mV2Vla1s3XSl9cGFydFRvQXJyYXkoZSx0LHIsYSl7bGV0IGk9dGhpc1tlXSxvPWU9PT0iZGF5IiYmdGhpcy5sYXN0RGF5T2ZNb250aCxuPWU9PT0iZGF5IiYmdGhpcy5sYXN0V2Vla2RheTtpZih0PT09IiImJiFvJiYhbil0aHJvdyBuZXcgVHlwZUVycm9yKCJDcm9uUGF0dGVybjogY29uZmlndXJhdGlvbiBlbnRyeSAiK2UrIiAoIit0KyIpIGlzIGVtcHR5LCBjaGVjayBmb3IgdHJhaWxpbmcgc3BhY2VzLiIpO2lmKHQ9PT0iKiIpcmV0dXJuIGkuZmlsbChhKTtsZXQgcz10LnNwbGl0KCIsIik7aWYocy5sZW5ndGg+MSlmb3IobGV0IGM9MDtjPHMubGVuZ3RoO2MrKyl0aGlzLnBhcnRUb0FycmF5KGUsc1tjXSxyLGEpO2Vsc2UgdC5pbmRleE9mKCItIikhPT0tMSYmdC5pbmRleE9mKCIvIikhPT0tMT90aGlzLmhhbmRsZVJhbmdlV2l0aFN0ZXBwaW5nKHQsZSxyLGEpOnQuaW5kZXhPZigiLSIpIT09LTE/dGhpcy5oYW5kbGVSYW5nZSh0LGUscixhKTp0LmluZGV4T2YoIi8iKSE9PS0xP3RoaXMuaGFuZGxlU3RlcHBpbmcodCxlLHIsYSk6dCE9PSIiJiZ0aGlzLmhhbmRsZU51bWJlcih0LGUscixhKX10aHJvd0F0SWxsZWdhbENoYXJhY3RlcnMoZSl7Zm9yKGxldCB0PTA7dDxlLmxlbmd0aDt0KyspaWYoKHQ9PT0zPy9bXi8qMC05LFwtV3dMbF0rLzp0PT09NT8vW14vKjAtOSxcLSNMbF0rLzovW14vKjAtOSxcLV0rLykudGVzdChlW3RdKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJDcm9uUGF0dGVybjogY29uZmlndXJhdGlvbiBlbnRyeSAiK3QrIiAoIitlW3RdKyIpIGNvbnRhaW5zIGlsbGVnYWwgY2hhcmFjdGVycy4iKX1oYW5kbGVOdW1iZXIoZSx0LHIsYSl7bGV0IGk9dGhpcy5leHRyYWN0TnRoKGUsdCksbz1lLnRvVXBwZXJDYXNlKCkuaW5jbHVkZXMoIlciKTtpZih0IT09ImRheSImJm8pdGhyb3cgbmV3IFR5cGVFcnJvcigiQ3JvblBhdHRlcm46IE5lYXJlc3Qgd2Vla2RheSBtb2RpZmllciAoVykgb25seSBhbGxvd2VkIGluIGRheS1vZi1tb250aC4iKTtvJiYodD0ibmVhcmVzdFdlZWtkYXlzIik7bGV0IG49cGFyc2VJbnQoaVswXSwxMCkrcjtpZihpc05hTihuKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJDcm9uUGF0dGVybjogIit0KyIgaXMgbm90IGEgbnVtYmVyOiAnIitlKyInIik7dGhpcy5zZXRQYXJ0KHQsbixpWzFdfHxhKX1zZXRQYXJ0KGUsdCxyKXtpZighT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHRoaXMsZSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ3JvblBhdHRlcm46IEludmFsaWQgcGFydCBzcGVjaWZpZWQ6ICIrZSk7aWYoZT09PSJkYXlPZldlZWsiKXtpZih0PT09NyYmKHQ9MCksdDwwfHx0PjYpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkNyb25QYXR0ZXJuOiBJbnZhbGlkIHZhbHVlIGZvciBkYXlPZldlZWs6ICIrdCk7dGhpcy5zZXROdGhXZWVrZGF5T2ZNb250aCh0LHIpO3JldHVybn1pZihlPT09InNlY29uZCJ8fGU9PT0ibWludXRlIil7aWYodDwwfHx0Pj02MCl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiQ3JvblBhdHRlcm46IEludmFsaWQgdmFsdWUgZm9yICIrZSsiOiAiK3QpfWVsc2UgaWYoZT09PSJob3VyIil7aWYodDwwfHx0Pj0yNCl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiQ3JvblBhdHRlcm46IEludmFsaWQgdmFsdWUgZm9yICIrZSsiOiAiK3QpfWVsc2UgaWYoZT09PSJkYXkifHxlPT09Im5lYXJlc3RXZWVrZGF5cyIpe2lmKHQ8MHx8dD49MzEpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkNyb25QYXR0ZXJuOiBJbnZhbGlkIHZhbHVlIGZvciAiK2UrIjogIit0KX1lbHNlIGlmKGU9PT0ibW9udGgiKXtpZih0PDB8fHQ+PTEyKXRocm93IG5ldyBSYW5nZUVycm9yKCJDcm9uUGF0dGVybjogSW52YWxpZCB2YWx1ZSBmb3IgIitlKyI6ICIrdCl9ZWxzZSBpZihlPT09InllYXIiJiYodDwxfHx0Pj0xZTQpKXRocm93IG5ldyBSYW5nZUVycm9yKCJDcm9uUGF0dGVybjogSW52YWxpZCB2YWx1ZSBmb3IgIitlKyI6ICIrdCsiIChzdXBwb3J0ZWQgcmFuZ2U6IDEtOTk5OSkiKTt0aGlzW2VdW3RdPXJ9dmFsaWRhdGVOb3ROYU4oZSx0KXtpZihpc05hTihlKSl0aHJvdyBuZXcgVHlwZUVycm9yKHQpfXZhbGlkYXRlUmFuZ2UoZSx0LHIsYSxpKXtpZihlPnQpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ3JvblBhdHRlcm46IEZyb20gdmFsdWUgaXMgbGFyZ2VyIHRoYW4gdG8gdmFsdWU6ICciK2krIiciKTtpZihyIT09dm9pZCAwKXtpZihyPT09MCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDcm9uUGF0dGVybjogU3ludGF4IGVycm9yLCBpbGxlZ2FsIHN0ZXBwaW5nOiAwIik7aWYocj50aGlzW2FdLmxlbmd0aCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDcm9uUGF0dGVybjogU3ludGF4IGVycm9yLCBzdGVwcyBjYW5ub3QgYmUgZ3JlYXRlciB0aGFuIG1heGltdW0gdmFsdWUgb2YgcGFydCAoIit0aGlzW2FdLmxlbmd0aCsiKSIpfX1oYW5kbGVSYW5nZVdpdGhTdGVwcGluZyhlLHQscixhKXtpZihlLnRvVXBwZXJDYXNlKCkuaW5jbHVkZXMoIlciKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJDcm9uUGF0dGVybjogU3ludGF4IGVycm9yLCBXIGlzIG5vdCBhbGxvd2VkIGluIHJhbmdlcyB3aXRoIHN0ZXBwaW5nLiIpO2xldCBpPXRoaXMuZXh0cmFjdE50aChlLHQpLG89aVswXS5tYXRjaCgvXihcZCspLShcZCspXC8oXGQrKSQvKTtpZihvPT09bnVsbCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDcm9uUGF0dGVybjogU3ludGF4IGVycm9yLCBpbGxlZ2FsIHJhbmdlIHdpdGggc3RlcHBpbmc6ICciK2UrIiciKTtsZXRbLG4scyxjXT1vLGQ9cGFyc2VJbnQobiwxMCkrcixmPXBhcnNlSW50KHMsMTApK3IsdT1wYXJzZUludChjLDEwKTt0aGlzLnZhbGlkYXRlTm90TmFOKGQsIkNyb25QYXR0ZXJuOiBTeW50YXggZXJyb3IsIGlsbGVnYWwgbG93ZXIgcmFuZ2UgKE5hTikiKSx0aGlzLnZhbGlkYXRlTm90TmFOKGYsIkNyb25QYXR0ZXJuOiBTeW50YXggZXJyb3IsIGlsbGVnYWwgdXBwZXIgcmFuZ2UgKE5hTikiKSx0aGlzLnZhbGlkYXRlTm90TmFOKHUsIkNyb25QYXR0ZXJuOiBTeW50YXggZXJyb3IsIGlsbGVnYWwgc3RlcHBpbmc6IChOYU4pIiksdGhpcy52YWxpZGF0ZVJhbmdlKGQsZix1LHQsZSk7Zm9yKGxldCBwPWQ7cDw9ZjtwKz11KXRoaXMuc2V0UGFydCh0LHAsaVsxXXx8YSl9ZXh0cmFjdE50aChlLHQpe2xldCByPWUsYTtpZihyLmluY2x1ZGVzKCIjIikpe2lmKHQhPT0iZGF5T2ZXZWVrIil0aHJvdyBuZXcgRXJyb3IoIkNyb25QYXR0ZXJuOiBudGggKCMpIG9ubHkgYWxsb3dlZCBpbiBkYXktb2Ytd2VlayBmaWVsZCIpO2E9ci5zcGxpdCgiIyIpWzFdLHI9ci5zcGxpdCgiIyIpWzBdfWVsc2UgaWYoci50b1VwcGVyQ2FzZSgpLmVuZHNXaXRoKCJMIikpe2lmKHQhPT0iZGF5T2ZXZWVrIil0aHJvdyBuZXcgRXJyb3IoIkNyb25QYXR0ZXJuOiBMIG1vZGlmaWVyIG9ubHkgYWxsb3dlZCBpbiBkYXktb2Ytd2VlayBmaWVsZCAodXNlIEwgYWxvbmUgZm9yIGRheS1vZi1tb250aCkiKTthPSJMIixyPXIuc2xpY2UoMCwtMSl9cmV0dXJuW3IsYV19aGFuZGxlUmFuZ2UoZSx0LHIsYSl7aWYoZS50b1VwcGVyQ2FzZSgpLmluY2x1ZGVzKCJXIikpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ3JvblBhdHRlcm46IFN5bnRheCBlcnJvciwgVyBpcyBub3QgYWxsb3dlZCBpbiBhIHJhbmdlLiIpO2xldCBpPXRoaXMuZXh0cmFjdE50aChlLHQpLG89aVswXS5zcGxpdCgiLSIpO2lmKG8ubGVuZ3RoIT09Mil0aHJvdyBuZXcgVHlwZUVycm9yKCJDcm9uUGF0dGVybjogU3ludGF4IGVycm9yLCBpbGxlZ2FsIHJhbmdlOiAnIitlKyInIik7bGV0IG49cGFyc2VJbnQob1swXSwxMCkrcixzPXBhcnNlSW50KG9bMV0sMTApK3I7dGhpcy52YWxpZGF0ZU5vdE5hTihuLCJDcm9uUGF0dGVybjogU3ludGF4IGVycm9yLCBpbGxlZ2FsIGxvd2VyIHJhbmdlIChOYU4pIiksdGhpcy52YWxpZGF0ZU5vdE5hTihzLCJDcm9uUGF0dGVybjogU3ludGF4IGVycm9yLCBpbGxlZ2FsIHVwcGVyIHJhbmdlIChOYU4pIiksdGhpcy52YWxpZGF0ZVJhbmdlKG4scyx2b2lkIDAsdCxlKTtmb3IobGV0IGM9bjtjPD1zO2MrKyl0aGlzLnNldFBhcnQodCxjLGlbMV18fGEpfWhhbmRsZVN0ZXBwaW5nKGUsdCxyLGEpe2lmKGUudG9VcHBlckNhc2UoKS5pbmNsdWRlcygiVyIpKXRocm93IG5ldyBUeXBlRXJyb3IoIkNyb25QYXR0ZXJuOiBTeW50YXggZXJyb3IsIFcgaXMgbm90IGFsbG93ZWQgaW4gcGFydHMgd2l0aCBzdGVwcGluZy4iKTtsZXQgaT10aGlzLmV4dHJhY3ROdGgoZSx0KSxvPWlbMF0uc3BsaXQoIi8iKTtpZihvLmxlbmd0aCE9PTIpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ3JvblBhdHRlcm46IFN5bnRheCBlcnJvciwgaWxsZWdhbCBzdGVwcGluZzogJyIrZSsiJyIpO2lmKHRoaXMuc2xvcHB5UmFuZ2VzKW9bMF09PT0iIiYmKG9bMF09IioiKTtlbHNle2lmKG9bMF09PT0iIil0aHJvdyBuZXcgVHlwZUVycm9yKCJDcm9uUGF0dGVybjogU3ludGF4IGVycm9yLCBzdGVwcGluZyB3aXRoIG1pc3NpbmcgcHJlZml4ICgnIitlKyInKSBpcyBub3QgYWxsb3dlZC4gVXNlIHdpbGRjYXJkICgqL3N0ZXApIG9yIHJhbmdlIChtaW4tbWF4L3N0ZXApIGluc3RlYWQuIik7aWYob1swXSE9PSIqIil0aHJvdyBuZXcgVHlwZUVycm9yKCJDcm9uUGF0dGVybjogU3ludGF4IGVycm9yLCBzdGVwcGluZyB3aXRoIG51bWVyaWMgcHJlZml4ICgnIitlKyInKSBpcyBub3QgYWxsb3dlZC4gVXNlIHdpbGRjYXJkICgqL3N0ZXApIG9yIHJhbmdlIChtaW4tbWF4L3N0ZXApIGluc3RlYWQuIil9bGV0IG49MDtvWzBdIT09IioiJiYobj1wYXJzZUludChvWzBdLDEwKStyKTtsZXQgcz1wYXJzZUludChvWzFdLDEwKTt0aGlzLnZhbGlkYXRlTm90TmFOKHMsIkNyb25QYXR0ZXJuOiBTeW50YXggZXJyb3IsIGlsbGVnYWwgc3RlcHBpbmc6IChOYU4pIiksdGhpcy52YWxpZGF0ZVJhbmdlKDAsdGhpc1t0XS5sZW5ndGgtMSxzLHQsZSk7Zm9yKGxldCBjPW47Yzx0aGlzW3RdLmxlbmd0aDtjKz1zKXRoaXMuc2V0UGFydCh0LGMsaVsxXXx8YSl9cmVwbGFjZUFscGhhRGF5cyhlKXtyZXR1cm4gZS5yZXBsYWNlKC8tc3VuL2dpLCItNyIpLnJlcGxhY2UoL3N1bi9naSwiMCIpLnJlcGxhY2UoL21vbi9naSwiMSIpLnJlcGxhY2UoL3R1ZS9naSwiMiIpLnJlcGxhY2UoL3dlZC9naSwiMyIpLnJlcGxhY2UoL3RodS9naSwiNCIpLnJlcGxhY2UoL2ZyaS9naSwiNSIpLnJlcGxhY2UoL3NhdC9naSwiNiIpfXJlcGxhY2VBbHBoYURheXNRdWFydHooZSl7cmV0dXJuIGUucmVwbGFjZSgvc3VuL2dpLCIxIikucmVwbGFjZSgvbW9uL2dpLCIyIikucmVwbGFjZSgvdHVlL2dpLCIzIikucmVwbGFjZSgvd2VkL2dpLCI0IikucmVwbGFjZSgvdGh1L2dpLCI1IikucmVwbGFjZSgvZnJpL2dpLCI2IikucmVwbGFjZSgvc2F0L2dpLCI3Iil9cmVwbGFjZUFscGhhTW9udGhzKGUpe3JldHVybiBlLnJlcGxhY2UoL2phbi9naSwiMSIpLnJlcGxhY2UoL2ZlYi9naSwiMiIpLnJlcGxhY2UoL21hci9naSwiMyIpLnJlcGxhY2UoL2Fwci9naSwiNCIpLnJlcGxhY2UoL21heS9naSwiNSIpLnJlcGxhY2UoL2p1bi9naSwiNiIpLnJlcGxhY2UoL2p1bC9naSwiNyIpLnJlcGxhY2UoL2F1Zy9naSwiOCIpLnJlcGxhY2UoL3NlcC9naSwiOSIpLnJlcGxhY2UoL29jdC9naSwiMTAiKS5yZXBsYWNlKC9ub3YvZ2ksIjExIikucmVwbGFjZSgvZGVjL2dpLCIxMiIpfWhhbmRsZU5pY2tuYW1lcyhlKXtsZXQgdD1lLnRyaW0oKS50b0xvd2VyQ2FzZSgpO2lmKHQ9PT0iQHllYXJseSJ8fHQ9PT0iQGFubnVhbGx5IilyZXR1cm4iMCAwIDEgMSAqIjtpZih0PT09IkBtb250aGx5IilyZXR1cm4iMCAwIDEgKiAqIjtpZih0PT09IkB3ZWVrbHkiKXJldHVybiIwIDAgKiAqIDAiO2lmKHQ9PT0iQGRhaWx5Inx8dD09PSJAbWlkbmlnaHQiKXJldHVybiIwIDAgKiAqICoiO2lmKHQ9PT0iQGhvdXJseSIpcmV0dXJuIjAgKiAqICogKiI7aWYodD09PSJAcmVib290Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJDcm9uUGF0dGVybjogQHJlYm9vdCBpcyBub3Qgc3VwcG9ydGVkIGluIHRoaXMgZW52aXJvbm1lbnQuIFRoaXMgaXMgYW4gZXZlbnQtYmFzZWQgdHJpZ2dlciB0aGF0IHJlcXVpcmVzIHN5c3RlbSBzdGFydHVwIGRldGVjdGlvbi4iKTtyZXR1cm4gZX1zZXROdGhXZWVrZGF5T2ZNb250aChlLHQpe2lmKHR5cGVvZiB0IT0ibnVtYmVyIiYmdC50b1VwcGVyQ2FzZSgpPT09IkwiKXRoaXMuZGF5T2ZXZWVrW2VdPXRoaXMuZGF5T2ZXZWVrW2VdfDMyO2Vsc2UgaWYodD09PTYzKXRoaXMuZGF5T2ZXZWVrW2VdPTYzO2Vsc2UgaWYodDw2JiZ0PjApdGhpcy5kYXlPZldlZWtbZV09dGhpcy5kYXlPZldlZWtbZV18Skx0W3QtMV07ZWxzZSB0aHJvdyBuZXcgVHlwZUVycm9yKGBDcm9uUGF0dGVybjogbnRoIHdlZWtkYXkgb3V0IG9mIHJhbmdlLCBzaG91bGQgYmUgMS01IG9yIEwuIFZhbHVlOiAke3R9LCBUeXBlOiAke3R5cGVvZiB0fWApfX0sdzllPVszMSwyOCwzMSwzMCwzMSwzMCwzMSwzMSwzMCwzMSwzMCwzMV0sTWE9W1sibW9udGgiLCJ5ZWFyIiwwXSxbImRheSIsIm1vbnRoIiwtMV0sWyJob3VyIiwiZGF5IiwwXSxbIm1pbnV0ZSIsImhvdXIiLDBdLFsic2Vjb25kIiwibWludXRlIiwwXV0sRWk9Y2xhc3MgdER0e3R6O21zO3NlY29uZDttaW51dGU7aG91cjtkYXk7bW9udGg7eWVhcjtjb25zdHJ1Y3Rvcih0LHIpe2lmKHRoaXMudHo9cix0JiZ0IGluc3RhbmNlb2YgRGF0ZSlpZighaXNOYU4odCkpdGhpcy5mcm9tRGF0ZSh0KTtlbHNlIHRocm93IG5ldyBUeXBlRXJyb3IoIkNyb25EYXRlOiBJbnZhbGlkIGRhdGUgcGFzc2VkIHRvIENyb25EYXRlIGNvbnN0cnVjdG9yIik7ZWxzZSBpZih0PT1udWxsKXRoaXMuZnJvbURhdGUobmV3IERhdGUpO2Vsc2UgaWYodCYmdHlwZW9mIHQ9PSJzdHJpbmciKXRoaXMuZnJvbVN0cmluZyh0KTtlbHNlIGlmKHQgaW5zdGFuY2VvZiB0RHQpdGhpcy5mcm9tQ3JvbkRhdGUodCk7ZWxzZSB0aHJvdyBuZXcgVHlwZUVycm9yKCJDcm9uRGF0ZTogSW52YWxpZCB0eXBlICgiK3R5cGVvZiB0KyIpIHBhc3NlZCB0byBDcm9uRGF0ZSBjb25zdHJ1Y3RvciIpfWdldExhc3REYXlPZk1vbnRoKHQscil7cmV0dXJuIHIhPT0xP3c5ZVtyXTpuZXcgRGF0ZShEYXRlLlVUQyh0LHIrMSwwKSkuZ2V0VVRDRGF0ZSgpfWdldExhc3RXZWVrZGF5KHQscil7bGV0IGE9dGhpcy5nZXRMYXN0RGF5T2ZNb250aCh0LHIpLGk9bmV3IERhdGUoRGF0ZS5VVEModCxyLGEpKS5nZXRVVENEYXkoKTtyZXR1cm4gaT09PTA/YS0yOmk9PT02P2EtMTphfWdldE5lYXJlc3RXZWVrZGF5KHQscixhKXtsZXQgaT10aGlzLmdldExhc3REYXlPZk1vbnRoKHQscik7aWYoYT5pKXJldHVybi0xO2xldCBvPW5ldyBEYXRlKERhdGUuVVRDKHQscixhKSkuZ2V0VVRDRGF5KCk7cmV0dXJuIG89PT0wP2E9PT1pP2EtMjphKzE6bz09PTY/YT09PTE/YSsyOmEtMTphfWlzTnRoV2Vla2RheU9mTW9udGgodCxyLGEsaSl7bGV0IG89bmV3IERhdGUoRGF0ZS5VVEModCxyLGEpKS5nZXRVVENEYXkoKSxuPTA7Zm9yKGxldCBzPTE7czw9YTtzKyspbmV3IERhdGUoRGF0ZS5VVEModCxyLHMpKS5nZXRVVENEYXkoKT09PW8mJm4rKztpZihpJjYzJiZKTHRbbi0xXSZpKXJldHVybiEwO2lmKGkmMzIpe2xldCBzPXRoaXMuZ2V0TGFzdERheU9mTW9udGgodCxyKTtmb3IobGV0IGM9YSsxO2M8PXM7YysrKWlmKG5ldyBEYXRlKERhdGUuVVRDKHQscixjKSkuZ2V0VVRDRGF5KCk9PT1vKXJldHVybiExO3JldHVybiEwfXJldHVybiExfWZyb21EYXRlKHQpe2lmKHRoaXMudHohPT12b2lkIDApaWYodHlwZW9mIHRoaXMudHo9PSJudW1iZXIiKXRoaXMubXM9dC5nZXRVVENNaWxsaXNlY29uZHMoKSx0aGlzLnNlY29uZD10LmdldFVUQ1NlY29uZHMoKSx0aGlzLm1pbnV0ZT10LmdldFVUQ01pbnV0ZXMoKSt0aGlzLnR6LHRoaXMuaG91cj10LmdldFVUQ0hvdXJzKCksdGhpcy5kYXk9dC5nZXRVVENEYXRlKCksdGhpcy5tb250aD10LmdldFVUQ01vbnRoKCksdGhpcy55ZWFyPXQuZ2V0VVRDRnVsbFllYXIoKSx0aGlzLmFwcGx5KCk7ZWxzZSB0cnl7bGV0IHI9ZnYodCx0aGlzLnR6KTt0aGlzLm1zPXQuZ2V0TWlsbGlzZWNvbmRzKCksdGhpcy5zZWNvbmQ9ci5zLHRoaXMubWludXRlPXIuaSx0aGlzLmhvdXI9ci5oLHRoaXMuZGF5PXIuZCx0aGlzLm1vbnRoPXIubS0xLHRoaXMueWVhcj1yLnl9Y2F0Y2gocil7bGV0IGE9ciBpbnN0YW5jZW9mIEVycm9yP3IubWVzc2FnZTpTdHJpbmcocik7dGhyb3cgbmV3IFR5cGVFcnJvcihgQ3JvbkRhdGU6IEZhaWxlZCB0byBjb252ZXJ0IGRhdGUgdG8gdGltZXpvbmUgJyR7dGhpcy50en0nLiBUaGlzIG1heSBoYXBwZW4gd2l0aCBpbnZhbGlkIHRpbWV6b25lIG5hbWVzIG9yIGRhdGVzLiBPcmlnaW5hbCBlcnJvcjogJHthfWApfWVsc2UgdGhpcy5tcz10LmdldE1pbGxpc2Vjb25kcygpLHRoaXMuc2Vjb25kPXQuZ2V0U2Vjb25kcygpLHRoaXMubWludXRlPXQuZ2V0TWludXRlcygpLHRoaXMuaG91cj10LmdldEhvdXJzKCksdGhpcy5kYXk9dC5nZXREYXRlKCksdGhpcy5tb250aD10LmdldE1vbnRoKCksdGhpcy55ZWFyPXQuZ2V0RnVsbFllYXIoKX1mcm9tQ3JvbkRhdGUodCl7dGhpcy50ej10LnR6LHRoaXMueWVhcj10LnllYXIsdGhpcy5tb250aD10Lm1vbnRoLHRoaXMuZGF5PXQuZGF5LHRoaXMuaG91cj10LmhvdXIsdGhpcy5taW51dGU9dC5taW51dGUsdGhpcy5zZWNvbmQ9dC5zZWNvbmQsdGhpcy5tcz10Lm1zfWFwcGx5KCl7aWYodGhpcy5tb250aD4xMXx8dGhpcy5tb250aDwwfHx0aGlzLmRheT53OWVbdGhpcy5tb250aF18fHRoaXMuZGF5PDF8fHRoaXMuaG91cj41OXx8dGhpcy5taW51dGU+NTl8fHRoaXMuc2Vjb25kPjU5fHx0aGlzLmhvdXI8MHx8dGhpcy5taW51dGU8MHx8dGhpcy5zZWNvbmQ8MCl7bGV0IHQ9bmV3IERhdGUoRGF0ZS5VVEModGhpcy55ZWFyLHRoaXMubW9udGgsdGhpcy5kYXksdGhpcy5ob3VyLHRoaXMubWludXRlLHRoaXMuc2Vjb25kLHRoaXMubXMpKTtyZXR1cm4gdGhpcy5tcz10LmdldFVUQ01pbGxpc2Vjb25kcygpLHRoaXMuc2Vjb25kPXQuZ2V0VVRDU2Vjb25kcygpLHRoaXMubWludXRlPXQuZ2V0VVRDTWludXRlcygpLHRoaXMuaG91cj10LmdldFVUQ0hvdXJzKCksdGhpcy5kYXk9dC5nZXRVVENEYXRlKCksdGhpcy5tb250aD10LmdldFVUQ01vbnRoKCksdGhpcy55ZWFyPXQuZ2V0VVRDRnVsbFllYXIoKSwhMH1lbHNlIHJldHVybiExfWZyb21TdHJpbmcodCl7aWYodHlwZW9mIHRoaXMudHo9PSJudW1iZXIiKXtsZXQgcj1RTHQodCk7dGhpcy5tcz1yLmdldFVUQ01pbGxpc2Vjb25kcygpLHRoaXMuc2Vjb25kPXIuZ2V0VVRDU2Vjb25kcygpLHRoaXMubWludXRlPXIuZ2V0VVRDTWludXRlcygpLHRoaXMuaG91cj1yLmdldFVUQ0hvdXJzKCksdGhpcy5kYXk9ci5nZXRVVENEYXRlKCksdGhpcy5tb250aD1yLmdldFVUQ01vbnRoKCksdGhpcy55ZWFyPXIuZ2V0VVRDRnVsbFllYXIoKSx0aGlzLmFwcGx5KCl9ZWxzZSByZXR1cm4gdGhpcy5mcm9tRGF0ZShRTHQodCx0aGlzLnR6KSl9ZmluZE5leHQodCxyLGEsaSl7cmV0dXJuIHRoaXMuX2ZpbmRNYXRjaCh0LHIsYSxpLDEpfV9maW5kTWF0Y2godCxyLGEsaSxvKXtsZXQgbj10aGlzW3JdLHM7YS5sYXN0RGF5T2ZNb250aCYmKHM9dGhpcy5nZXRMYXN0RGF5T2ZNb250aCh0aGlzLnllYXIsdGhpcy5tb250aCkpO2xldCBjPSFhLnN0YXJET1cmJnI9PSJkYXkiP25ldyBEYXRlKERhdGUuVVRDKHRoaXMueWVhcix0aGlzLm1vbnRoLDEsMCwwLDAsMCkpLmdldFVUQ0RheSgpOnZvaWQgMCxkPXRoaXNbcl0raSxmPW89PT0xP3U9PnU8YVtyXS5sZW5ndGg6dT0+dT49MDtmb3IobGV0IHU9ZDtmKHUpO3UrPW8pe2xldCBwPWFbcl1bdV07aWYocj09PSJkYXkiJiYhcCl7Zm9yKGxldCBoPTA7aDxhLm5lYXJlc3RXZWVrZGF5cy5sZW5ndGg7aCsrKWlmKGEubmVhcmVzdFdlZWtkYXlzW2hdKXtsZXQgYj10aGlzLmdldE5lYXJlc3RXZWVrZGF5KHRoaXMueWVhcix0aGlzLm1vbnRoLGgtaSk7aWYoYj09PS0xKWNvbnRpbnVlO2lmKGI9PT11LWkpe3A9MTticmVha319fWlmKHI9PT0iZGF5IiYmYS5sYXN0V2Vla2RheSl7bGV0IGg9dGhpcy5nZXRMYXN0V2Vla2RheSh0aGlzLnllYXIsdGhpcy5tb250aCk7dS1pPT09aCYmKHA9MSl9aWYocj09PSJkYXkiJiZhLmxhc3REYXlPZk1vbnRoJiZ1LWk9PXMmJihwPTEpLHI9PT0iZGF5IiYmIWEuc3RhckRPVyl7bGV0IGg9YS5kYXlPZldlZWtbKGMrKHUtaS0xKSklN107aWYoaCYmaCY2MyloPXRoaXMuaXNOdGhXZWVrZGF5T2ZNb250aCh0aGlzLnllYXIsdGhpcy5tb250aCx1LWksaCk/MTowO2Vsc2UgaWYoaCl0aHJvdyBuZXcgRXJyb3IoYENyb25EYXRlOiBJbnZhbGlkIHZhbHVlIGZvciBkYXlPZldlZWsgZW5jb3VudGVyZWQuICR7aH1gKTthLnVzZUFuZExvZ2ljP3A9cCYmaDohdC5kb21BbmREb3cmJiFhLnN0YXJET00/cD1wfHxoOnA9cCYmaH1pZihwKXJldHVybiB0aGlzW3JdPXUtaSxuIT09dGhpc1tyXT8yOjF9cmV0dXJuIDN9cmVjdXJzZSh0LHIsYSl7aWYoYT09PTAmJiF0LnN0YXJZZWFyKXtpZih0aGlzLnllYXI+PTAmJnRoaXMueWVhcjx0LnllYXIubGVuZ3RoJiZ0LnllYXJbdGhpcy55ZWFyXT09PTApe2xldCBvPS0xO2ZvcihsZXQgbj10aGlzLnllYXIrMTtuPHQueWVhci5sZW5ndGgmJm48MWU0O24rKylpZih0LnllYXJbbl09PT0xKXtvPW47YnJlYWt9aWYobz09PS0xKXJldHVybiBudWxsO3RoaXMueWVhcj1vLHRoaXMubW9udGg9MCx0aGlzLmRheT0xLHRoaXMuaG91cj0wLHRoaXMubWludXRlPTAsdGhpcy5zZWNvbmQ9MCx0aGlzLm1zPTB9aWYodGhpcy55ZWFyPj0xZTQpcmV0dXJuIG51bGx9bGV0IGk9dGhpcy5maW5kTmV4dChyLE1hW2FdWzBdLHQsTWFbYV1bMl0pO2lmKGk+MSl7bGV0IG89YSsxO2Zvcig7bzxNYS5sZW5ndGg7KXRoaXNbTWFbb11bMF1dPS1NYVtvXVsyXSxvKys7aWYoaT09PTMpe2lmKHRoaXNbTWFbYV1bMV1dKyssdGhpc1tNYVthXVswXV09LU1hW2FdWzJdLHRoaXMuYXBwbHkoKSxhPT09MCYmIXQuc3RhclllYXIpe2Zvcig7dGhpcy55ZWFyPj0wJiZ0aGlzLnllYXI8dC55ZWFyLmxlbmd0aCYmdC55ZWFyW3RoaXMueWVhcl09PT0wJiZ0aGlzLnllYXI8MWU0Oyl0aGlzLnllYXIrKztpZih0aGlzLnllYXI+PTFlNHx8dGhpcy55ZWFyPj10LnllYXIubGVuZ3RoKXJldHVybiBudWxsfXJldHVybiB0aGlzLnJlY3Vyc2UodCxyLDApfWVsc2UgaWYodGhpcy5hcHBseSgpKXJldHVybiB0aGlzLnJlY3Vyc2UodCxyLGEtMSl9cmV0dXJuIGErPTEsYT49TWEubGVuZ3RoP3RoaXM6KHQuc3RhclllYXI/dGhpcy55ZWFyPj0zZTM6dGhpcy55ZWFyPj0xZTQpP251bGw6dGhpcy5yZWN1cnNlKHQscixhKX1pbmNyZW1lbnQodCxyLGEpe3JldHVybiB0aGlzLnNlY29uZCs9ci5pbnRlcnZhbCE9PXZvaWQgMCYmci5pbnRlcnZhbD4xJiZhP3IuaW50ZXJ2YWw6MSx0aGlzLm1zPTAsdGhpcy5hcHBseSgpLHRoaXMucmVjdXJzZSh0LHIsMCl9ZGVjcmVtZW50KHQscil7cmV0dXJuIHRoaXMuc2Vjb25kLT1yLmludGVydmFsIT09dm9pZCAwJiZyLmludGVydmFsPjE/ci5pbnRlcnZhbDoxLHRoaXMubXM9MCx0aGlzLmFwcGx5KCksdGhpcy5yZWN1cnNlQmFja3dhcmQodCxyLDAsMCl9cmVjdXJzZUJhY2t3YXJkKHQscixhLGk9MCl7aWYoaT4xZTQpcmV0dXJuIG51bGw7aWYoYT09PTAmJiF0LnN0YXJZZWFyKXtpZih0aGlzLnllYXI+PTAmJnRoaXMueWVhcjx0LnllYXIubGVuZ3RoJiZ0LnllYXJbdGhpcy55ZWFyXT09PTApe2xldCBuPS0xO2ZvcihsZXQgcz10aGlzLnllYXItMTtzPj0wO3MtLSlpZih0LnllYXJbc109PT0xKXtuPXM7YnJlYWt9aWYobj09PS0xKXJldHVybiBudWxsO3RoaXMueWVhcj1uLHRoaXMubW9udGg9MTEsdGhpcy5kYXk9MzEsdGhpcy5ob3VyPTIzLHRoaXMubWludXRlPTU5LHRoaXMuc2Vjb25kPTU5LHRoaXMubXM9MH1pZih0aGlzLnllYXI8MClyZXR1cm4gbnVsbH1sZXQgbz10aGlzLmZpbmRQcmV2aW91cyhyLE1hW2FdWzBdLHQsTWFbYV1bMl0pO2lmKG8+MSl7bGV0IG49YSsxO2Zvcig7bjxNYS5sZW5ndGg7KXtsZXQgcz1NYVtuXVswXSxjPU1hW25dWzJdLGQ9dGhpcy5nZXRNYXhQYXR0ZXJuVmFsdWUocyx0LGMpO3RoaXNbc109ZCxuKyt9aWYobz09PTMpe2lmKHRoaXNbTWFbYV1bMV1dLS0sYT09PTApe2xldCBmPXRoaXMuZ2V0TGFzdERheU9mTW9udGgodGhpcy55ZWFyLHRoaXMubW9udGgpO3RoaXMuZGF5PmYmJih0aGlzLmRheT1mKX1pZihhPT09MSlpZih0aGlzLmRheTw9MCl0aGlzLmRheT0xO2Vsc2V7bGV0IGY9dGhpcy55ZWFyLHU9dGhpcy5tb250aDtmb3IoO3U8MDspdSs9MTIsZi0tO2Zvcig7dT4xMTspdS09MTIsZisrO2xldCBwPXUhPT0xP3c5ZVt1XTpuZXcgRGF0ZShEYXRlLlVUQyhmLHUrMSwwKSkuZ2V0VVRDRGF0ZSgpO3RoaXMuZGF5PnAmJih0aGlzLmRheT1wKX10aGlzLmFwcGx5KCk7bGV0IHM9TWFbYV1bMF0sYz1NYVthXVsyXSxkPXRoaXMuZ2V0TWF4UGF0dGVyblZhbHVlKHMsdCxjKTtpZihzPT09ImRheSIpe2xldCBmPXRoaXMuZ2V0TGFzdERheU9mTW9udGgodGhpcy55ZWFyLHRoaXMubW9udGgpO3RoaXNbc109TWF0aC5taW4oZCxmKX1lbHNlIHRoaXNbc109ZDtpZih0aGlzLmFwcGx5KCksYT09PTApe2xldCBmPU1hWzFdWzJdLHU9dGhpcy5nZXRNYXhQYXR0ZXJuVmFsdWUoImRheSIsdCxmKSxwPXRoaXMuZ2V0TGFzdERheU9mTW9udGgodGhpcy55ZWFyLHRoaXMubW9udGgpLGg9TWF0aC5taW4odSxwKTtoIT09dGhpcy5kYXkmJih0aGlzLmRheT1oLHRoaXMuaG91cj10aGlzLmdldE1heFBhdHRlcm5WYWx1ZSgiaG91ciIsdCxNYVsyXVsyXSksdGhpcy5taW51dGU9dGhpcy5nZXRNYXhQYXR0ZXJuVmFsdWUoIm1pbnV0ZSIsdCxNYVszXVsyXSksdGhpcy5zZWNvbmQ9dGhpcy5nZXRNYXhQYXR0ZXJuVmFsdWUoInNlY29uZCIsdCxNYVs0XVsyXSkpfWlmKGE9PT0wJiYhdC5zdGFyWWVhcil7Zm9yKDt0aGlzLnllYXI+PTAmJnRoaXMueWVhcjx0LnllYXIubGVuZ3RoJiZ0LnllYXJbdGhpcy55ZWFyXT09PTA7KXRoaXMueWVhci0tO2lmKHRoaXMueWVhcjwwKXJldHVybiBudWxsfXJldHVybiB0aGlzLnJlY3Vyc2VCYWNrd2FyZCh0LHIsMCxpKzEpfWVsc2UgaWYodGhpcy5hcHBseSgpKXJldHVybiB0aGlzLnJlY3Vyc2VCYWNrd2FyZCh0LHIsYS0xLGkrMSl9cmV0dXJuIGErPTEsYT49TWEubGVuZ3RoP3RoaXM6dGhpcy55ZWFyPDA/bnVsbDp0aGlzLnJlY3Vyc2VCYWNrd2FyZCh0LHIsYSxpKzEpfWdldE1heFBhdHRlcm5WYWx1ZSh0LHIsYSl7aWYodD09PSJkYXkiJiZyLmxhc3REYXlPZk1vbnRoKXJldHVybiB0aGlzLmdldExhc3REYXlPZk1vbnRoKHRoaXMueWVhcix0aGlzLm1vbnRoKTtpZih0PT09ImRheSImJiFyLnN0YXJET1cpcmV0dXJuIHRoaXMuZ2V0TGFzdERheU9mTW9udGgodGhpcy55ZWFyLHRoaXMubW9udGgpO2ZvcihsZXQgaT1yW3RdLmxlbmd0aC0xO2k+PTA7aS0tKWlmKHJbdF1baV0pcmV0dXJuIGktYTtyZXR1cm4gclt0XS5sZW5ndGgtMS1hfWZpbmRQcmV2aW91cyh0LHIsYSxpKXtyZXR1cm4gdGhpcy5fZmluZE1hdGNoKHQscixhLGksLTEpfWdldERhdGUodCl7cmV0dXJuIHR8fHRoaXMudHo9PT12b2lkIDA/bmV3IERhdGUodGhpcy55ZWFyLHRoaXMubW9udGgsdGhpcy5kYXksdGhpcy5ob3VyLHRoaXMubWludXRlLHRoaXMuc2Vjb25kLHRoaXMubXMpOnR5cGVvZiB0aGlzLnR6PT0ibnVtYmVyIj9uZXcgRGF0ZShEYXRlLlVUQyh0aGlzLnllYXIsdGhpcy5tb250aCx0aGlzLmRheSx0aGlzLmhvdXIsdGhpcy5taW51dGUtdGhpcy50eix0aGlzLnNlY29uZCx0aGlzLm1zKSk6S0x0KHk5ZSh0aGlzLnllYXIsdGhpcy5tb250aCsxLHRoaXMuZGF5LHRoaXMuaG91cix0aGlzLm1pbnV0ZSx0aGlzLnNlY29uZCx0aGlzLnR6KSwhMSl9Z2V0VGltZSgpe3JldHVybiB0aGlzLmdldERhdGUoITEpLmdldFRpbWUoKX1tYXRjaCh0LHIpe2lmKCF0LnN0YXJZZWFyJiYodGhpcy55ZWFyPDB8fHRoaXMueWVhcj49dC55ZWFyLmxlbmd0aHx8dC55ZWFyW3RoaXMueWVhcl09PT0wKSlyZXR1cm4hMTtmb3IobGV0IGE9MDthPE1hLmxlbmd0aDthKyspe2xldCBpPU1hW2FdWzBdLG89TWFbYV1bMl0sbj10aGlzW2ldO2lmKG4rbzwwfHxuK28+PXRbaV0ubGVuZ3RoKXJldHVybiExO2xldCBzPXRbaV1bbitvXTtpZihpPT09ImRheSIpe2lmKCFzKXtmb3IobGV0IGM9MDtjPHQubmVhcmVzdFdlZWtkYXlzLmxlbmd0aDtjKyspaWYodC5uZWFyZXN0V2Vla2RheXNbY10pe2xldCBkPXRoaXMuZ2V0TmVhcmVzdFdlZWtkYXkodGhpcy55ZWFyLHRoaXMubW9udGgsYy1vKTtpZihkIT09LTEmJmQ9PT1uKXtzPTE7YnJlYWt9fX1pZih0Lmxhc3RXZWVrZGF5KXtsZXQgYz10aGlzLmdldExhc3RXZWVrZGF5KHRoaXMueWVhcix0aGlzLm1vbnRoKTtuPT09YyYmKHM9MSl9aWYodC5sYXN0RGF5T2ZNb250aCl7bGV0IGM9dGhpcy5nZXRMYXN0RGF5T2ZNb250aCh0aGlzLnllYXIsdGhpcy5tb250aCk7bj09PWMmJihzPTEpfWlmKCF0LnN0YXJET1cpe2xldCBjPW5ldyBEYXRlKERhdGUuVVRDKHRoaXMueWVhcix0aGlzLm1vbnRoLDEsMCwwLDAsMCkpLmdldFVUQ0RheSgpLGQ9dC5kYXlPZldlZWtbKGMrKG4tMSkpJTddO2QmJmQmNjMmJihkPXRoaXMuaXNOdGhXZWVrZGF5T2ZNb250aCh0aGlzLnllYXIsdGhpcy5tb250aCxuLGQpPzE6MCksdC51c2VBbmRMb2dpYz9zPXMmJmQ6IXIuZG9tQW5kRG93JiYhdC5zdGFyRE9NP3M9c3x8ZDpzPXMmJmR9fWlmKCFzKXJldHVybiExfXJldHVybiEwfX07ZUR0PTMwKjFlMyxvNz1bXSxyRHQ9Y2xhc3N7bmFtZTtvcHRpb25zO19zdGF0ZXM7Zm47Z2V0VHooKXtyZXR1cm4gdGhpcy5vcHRpb25zLnRpbWV6b25lfHx0aGlzLm9wdGlvbnMudXRjT2Zmc2V0fWFwcGx5RGF5T2Zmc2V0KGUpe2lmKHRoaXMub3B0aW9ucy5kYXlPZmZzZXQhPT12b2lkIDAmJnRoaXMub3B0aW9ucy5kYXlPZmZzZXQhPT0wKXtsZXQgdD10aGlzLm9wdGlvbnMuZGF5T2Zmc2V0KjI0KjYwKjYwKjFlMztyZXR1cm4gbmV3IERhdGUoZS5nZXRUaW1lKCkrdCl9cmV0dXJuIGV9Y29uc3RydWN0b3IoZSx0LHIpe2xldCBhLGk7aWYocHYodCkpaT10O2Vsc2UgaWYodHlwZW9mIHQ9PSJvYmplY3QiKWE9dDtlbHNlIGlmKHQhPT12b2lkIDApdGhyb3cgbmV3IEVycm9yKCJDcm9uOiBJbnZhbGlkIGFyZ3VtZW50IHBhc3NlZCBmb3Igb3B0aW9uc0luLiBTaG91bGQgYmUgb25lIG9mIGZ1bmN0aW9uLCBvciBvYmplY3QgKG9wdGlvbnMpLiIpO2lmKHB2KHIpKWk9cjtlbHNlIGlmKHR5cGVvZiByPT0ib2JqZWN0IilhPXI7ZWxzZSBpZihyIT09dm9pZCAwKXRocm93IG5ldyBFcnJvcigiQ3JvbjogSW52YWxpZCBhcmd1bWVudCBwYXNzZWQgZm9yIGZ1bmNJbi4gU2hvdWxkIGJlIG9uZSBvZiBmdW5jdGlvbiwgb3Igb2JqZWN0IChvcHRpb25zKS4iKTtpZih0aGlzLm5hbWU9YT8ubmFtZSx0aGlzLm9wdGlvbnM9RzJhKGEpLHRoaXMuX3N0YXRlcz17a2lsbDohMSxibG9ja2luZzohMSxwcmV2aW91c1J1bjp2b2lkIDAsY3VycmVudFJ1bjp2b2lkIDAsb25jZTp2b2lkIDAsY3VycmVudFRpbWVvdXQ6dm9pZCAwLG1heFJ1bnM6YT9hLm1heFJ1bnM6dm9pZCAwLHBhdXNlZDphP2EucGF1c2VkOiExLHBhdHRlcm46bmV3IGthZSgiKiAqICogKiAqIix2b2lkIDAse21vZGU6ImF1dG8ifSl9LGUmJihlIGluc3RhbmNlb2YgRGF0ZXx8dHlwZW9mIGU9PSJzdHJpbmciJiZlLmluZGV4T2YoIjoiKT4wKT90aGlzLl9zdGF0ZXMub25jZT1uZXcgRWkoZSx0aGlzLmdldFR6KCkpOnRoaXMuX3N0YXRlcy5wYXR0ZXJuPW5ldyBrYWUoZSx0aGlzLm9wdGlvbnMudGltZXpvbmUse21vZGU6dGhpcy5vcHRpb25zLm1vZGUsYWx0ZXJuYXRpdmVXZWVrZGF5czp0aGlzLm9wdGlvbnMuYWx0ZXJuYXRpdmVXZWVrZGF5cyxzbG9wcHlSYW5nZXM6dGhpcy5vcHRpb25zLnNsb3BweVJhbmdlc30pLHRoaXMubmFtZSl7aWYobzcuZmluZChvPT5vLm5hbWU9PT10aGlzLm5hbWUpKXRocm93IG5ldyBFcnJvcigiQ3JvbjogVHJpZWQgdG8gaW5pdGlhbGl6ZSBuZXcgbmFtZWQgam9iICciK3RoaXMubmFtZSsiJywgYnV0IG5hbWUgYWxyZWFkeSB0YWtlbi4iKTtvNy5wdXNoKHRoaXMpfXJldHVybiBpIT09dm9pZCAwJiZZMmEoaSkmJih0aGlzLmZuPWksdGhpcy5zY2hlZHVsZSgpKSx0aGlzfW5leHRSdW4oZSl7bGV0IHQ9dGhpcy5fbmV4dChlKTtyZXR1cm4gdD90aGlzLmFwcGx5RGF5T2Zmc2V0KHQuZ2V0RGF0ZSghMSkpOm51bGx9bmV4dFJ1bnMoZSx0KXt0aGlzLl9zdGF0ZXMubWF4UnVucyE9PXZvaWQgMCYmZT50aGlzLl9zdGF0ZXMubWF4UnVucyYmKGU9dGhpcy5fc3RhdGVzLm1heFJ1bnMpO2xldCByPXR8fHRoaXMuX3N0YXRlcy5jdXJyZW50UnVufHx2b2lkIDA7cmV0dXJuIHRoaXMuX2VudW1lcmF0ZVJ1bnMoZSxyLCJuZXh0Iil9cHJldmlvdXNSdW5zKGUsdCl7cmV0dXJuIHRoaXMuX2VudW1lcmF0ZVJ1bnMoZSx0fHx2b2lkIDAsInByZXZpb3VzIil9X2VudW1lcmF0ZVJ1bnMoZSx0LHIpe2xldCBhPVtdLGk9dD9uZXcgRWkodCx0aGlzLmdldFR6KCkpOm51bGwsbz1yPT09Im5leHQiP3RoaXMuX25leHQ6dGhpcy5fcHJldmlvdXM7Zm9yKDtlLS07KXtsZXQgbj1vLmNhbGwodGhpcyxpKTtpZighbilicmVhaztsZXQgcz1uLmdldERhdGUoITEpO2EucHVzaCh0aGlzLmFwcGx5RGF5T2Zmc2V0KHMpKSxpPW59cmV0dXJuIGF9bWF0Y2goZSl7aWYodGhpcy5fc3RhdGVzLm9uY2Upe2xldCByPW5ldyBFaShlLHRoaXMuZ2V0VHooKSk7ci5tcz0wO2xldCBhPW5ldyBFaSh0aGlzLl9zdGF0ZXMub25jZSx0aGlzLmdldFR6KCkpO3JldHVybiBhLm1zPTAsci5nZXRUaW1lKCk9PT1hLmdldFRpbWUoKX1sZXQgdD1uZXcgRWkoZSx0aGlzLmdldFR6KCkpO3JldHVybiB0Lm1zPTAsdC5tYXRjaCh0aGlzLl9zdGF0ZXMucGF0dGVybix0aGlzLm9wdGlvbnMpfWdldFBhdHRlcm4oKXtpZighdGhpcy5fc3RhdGVzLm9uY2UpcmV0dXJuIHRoaXMuX3N0YXRlcy5wYXR0ZXJuP3RoaXMuX3N0YXRlcy5wYXR0ZXJuLnBhdHRlcm46dm9pZCAwfWdldE9uY2UoKXtyZXR1cm4gdGhpcy5fc3RhdGVzLm9uY2U/dGhpcy5fc3RhdGVzLm9uY2UuZ2V0RGF0ZSgpOm51bGx9aXNSdW5uaW5nKCl7bGV0IGU9dGhpcy5uZXh0UnVuKHRoaXMuX3N0YXRlcy5jdXJyZW50UnVuKSx0PSF0aGlzLl9zdGF0ZXMucGF1c2VkLHI9dGhpcy5mbiE9PXZvaWQgMCxhPSF0aGlzLl9zdGF0ZXMua2lsbDtyZXR1cm4gdCYmciYmYSYmZSE9PW51bGx9aXNTdG9wcGVkKCl7cmV0dXJuIHRoaXMuX3N0YXRlcy5raWxsfWlzQnVzeSgpe3JldHVybiB0aGlzLl9zdGF0ZXMuYmxvY2tpbmd9Y3VycmVudFJ1bigpe3JldHVybiB0aGlzLl9zdGF0ZXMuY3VycmVudFJ1bj90aGlzLl9zdGF0ZXMuY3VycmVudFJ1bi5nZXREYXRlKCk6bnVsbH1wcmV2aW91c1J1bigpe3JldHVybiB0aGlzLl9zdGF0ZXMucHJldmlvdXNSdW4/dGhpcy5fc3RhdGVzLnByZXZpb3VzUnVuLmdldERhdGUoKTpudWxsfW1zVG9OZXh0KGUpe2xldCB0PXRoaXMuX25leHQoZSk7cmV0dXJuIHQ/ZSBpbnN0YW5jZW9mIEVpfHxlIGluc3RhbmNlb2YgRGF0ZT90LmdldFRpbWUoKS1lLmdldFRpbWUoKTp0LmdldFRpbWUoKS1uZXcgRWkoZSkuZ2V0VGltZSgpOm51bGx9c3RvcCgpe3RoaXMuX3N0YXRlcy5raWxsPSEwLHRoaXMuX3N0YXRlcy5jdXJyZW50VGltZW91dCYmY2xlYXJUaW1lb3V0KHRoaXMuX3N0YXRlcy5jdXJyZW50VGltZW91dCk7bGV0IGU9bzcuaW5kZXhPZih0aGlzKTtlPj0wJiZvNy5zcGxpY2UoZSwxKX1wYXVzZSgpe3JldHVybiB0aGlzLl9zdGF0ZXMucGF1c2VkPSEwLCF0aGlzLl9zdGF0ZXMua2lsbH1yZXN1bWUoKXtyZXR1cm4gdGhpcy5fc3RhdGVzLnBhdXNlZD0hMSwhdGhpcy5fc3RhdGVzLmtpbGx9c2NoZWR1bGUoZSl7aWYoZSYmdGhpcy5mbil0aHJvdyBuZXcgRXJyb3IoIkNyb246IEl0IGlzIG5vdCBhbGxvd2VkIHRvIHNjaGVkdWxlIHR3byBmdW5jdGlvbnMgdXNpbmcgdGhlIHNhbWUgQ3JvbmVyIGluc3RhbmNlLiIpO2UmJih0aGlzLmZuPWUpO2xldCB0PXRoaXMubXNUb05leHQoKSxyPXRoaXMubmV4dFJ1bih0aGlzLl9zdGF0ZXMuY3VycmVudFJ1bik7cmV0dXJuIHQ9PW51bGx8fGlzTmFOKHQpfHxyPT09bnVsbD90aGlzOih0PmVEdCYmKHQ9ZUR0KSx0aGlzLl9zdGF0ZXMuY3VycmVudFRpbWVvdXQ9c2V0VGltZW91dCgoKT0+dGhpcy5fY2hlY2tUcmlnZ2VyKHIpLHQpLHRoaXMuX3N0YXRlcy5jdXJyZW50VGltZW91dCYmdGhpcy5vcHRpb25zLnVucmVmJiZaMmEodGhpcy5fc3RhdGVzLmN1cnJlbnRUaW1lb3V0KSx0aGlzKX1hc3luYyBfdHJpZ2dlcihlKXt0aGlzLl9zdGF0ZXMuYmxvY2tpbmc9ITAsdGhpcy5fc3RhdGVzLmN1cnJlbnRSdW49bmV3IEVpKHZvaWQgMCx0aGlzLmdldFR6KCkpO3RyeXtpZih0aGlzLm9wdGlvbnMuY2F0Y2gpdHJ5e3RoaXMuZm4hPT12b2lkIDAmJmF3YWl0IHRoaXMuZm4odGhpcyx0aGlzLm9wdGlvbnMuY29udGV4dCl9Y2F0Y2godCl7aWYocHYodGhpcy5vcHRpb25zLmNhdGNoKSl0cnl7dGhpcy5vcHRpb25zLmNhdGNoKHQsdGhpcyl9Y2F0Y2h7fX1lbHNlIHRoaXMuZm4hPT12b2lkIDAmJmF3YWl0IHRoaXMuZm4odGhpcyx0aGlzLm9wdGlvbnMuY29udGV4dCl9ZmluYWxseXt0aGlzLl9zdGF0ZXMucHJldmlvdXNSdW49bmV3IEVpKGUsdGhpcy5nZXRUeigpKSx0aGlzLl9zdGF0ZXMuYmxvY2tpbmc9ITF9fWFzeW5jIHRyaWdnZXIoKXthd2FpdCB0aGlzLl90cmlnZ2VyKCl9cnVuc0xlZnQoKXtyZXR1cm4gdGhpcy5fc3RhdGVzLm1heFJ1bnN9X2NoZWNrVHJpZ2dlcihlKXtsZXQgdD1uZXcgRGF0ZSxyPSF0aGlzLl9zdGF0ZXMucGF1c2VkJiZ0LmdldFRpbWUoKT49ZS5nZXRUaW1lKCksYT10aGlzLl9zdGF0ZXMuYmxvY2tpbmcmJnRoaXMub3B0aW9ucy5wcm90ZWN0O3ImJiFhPyh0aGlzLl9zdGF0ZXMubWF4UnVucyE9PXZvaWQgMCYmdGhpcy5fc3RhdGVzLm1heFJ1bnMtLSx0aGlzLl90cmlnZ2VyKCkpOnImJmEmJnB2KHRoaXMub3B0aW9ucy5wcm90ZWN0KSYmc2V0VGltZW91dCgoKT0+dGhpcy5vcHRpb25zLnByb3RlY3QodGhpcyksMCksdGhpcy5zY2hlZHVsZSgpfV9uZXh0KGUpe2xldCB0PSEhKGV8fHRoaXMuX3N0YXRlcy5jdXJyZW50UnVuKSxyPSExOyFlJiZ0aGlzLm9wdGlvbnMuc3RhcnRBdCYmdGhpcy5vcHRpb25zLmludGVydmFsJiYoW2UsdF09dGhpcy5fY2FsY3VsYXRlUHJldmlvdXNSdW4oZSx0KSxyPSFlKSxlPW5ldyBFaShlLHRoaXMuZ2V0VHooKSksdGhpcy5vcHRpb25zLnN0YXJ0QXQmJmUmJmUuZ2V0VGltZSgpPHRoaXMub3B0aW9ucy5zdGFydEF0LmdldFRpbWUoKSYmKGU9dGhpcy5vcHRpb25zLnN0YXJ0QXQpO2xldCBhPXRoaXMuX3N0YXRlcy5vbmNlfHxuZXcgRWkoZSx0aGlzLmdldFR6KCkpO3JldHVybiFyJiZhIT09dGhpcy5fc3RhdGVzLm9uY2UmJihhPWEuaW5jcmVtZW50KHRoaXMuX3N0YXRlcy5wYXR0ZXJuLHRoaXMub3B0aW9ucyx0KSksdGhpcy5fc3RhdGVzLm9uY2UmJnRoaXMuX3N0YXRlcy5vbmNlLmdldFRpbWUoKTw9ZS5nZXRUaW1lKCl8fGE9PT1udWxsfHx0aGlzLl9zdGF0ZXMubWF4UnVucyE9PXZvaWQgMCYmdGhpcy5fc3RhdGVzLm1heFJ1bnM8PTB8fHRoaXMuX3N0YXRlcy5raWxsfHx0aGlzLm9wdGlvbnMuc3RvcEF0JiZhLmdldFRpbWUoKT49dGhpcy5vcHRpb25zLnN0b3BBdC5nZXRUaW1lKCk/bnVsbDphfV9wcmV2aW91cyhlKXtsZXQgdD1uZXcgRWkoZSx0aGlzLmdldFR6KCkpO3RoaXMub3B0aW9ucy5zdG9wQXQmJnQuZ2V0VGltZSgpPnRoaXMub3B0aW9ucy5zdG9wQXQuZ2V0VGltZSgpJiYodD10aGlzLm9wdGlvbnMuc3RvcEF0KTtsZXQgcj1uZXcgRWkodCx0aGlzLmdldFR6KCkpO3JldHVybiB0aGlzLl9zdGF0ZXMub25jZT90aGlzLl9zdGF0ZXMub25jZS5nZXRUaW1lKCk8dC5nZXRUaW1lKCk/dGhpcy5fc3RhdGVzLm9uY2U6bnVsbDoocj1yLmRlY3JlbWVudCh0aGlzLl9zdGF0ZXMucGF0dGVybix0aGlzLm9wdGlvbnMpLHI9PT1udWxsfHx0aGlzLm9wdGlvbnMuc3RhcnRBdCYmci5nZXRUaW1lKCk8dGhpcy5vcHRpb25zLnN0YXJ0QXQuZ2V0VGltZSgpP251bGw6cil9X2NhbGN1bGF0ZVByZXZpb3VzUnVuKGUsdCl7bGV0IHI9bmV3IEVpKHZvaWQgMCx0aGlzLmdldFR6KCkpLGE9ZTtpZih0aGlzLm9wdGlvbnMuc3RhcnRBdC5nZXRUaW1lKCk8PXIuZ2V0VGltZSgpKXthPXRoaXMub3B0aW9ucy5zdGFydEF0O2xldCBpPWEuZ2V0VGltZSgpK3RoaXMub3B0aW9ucy5pbnRlcnZhbCoxZTM7Zm9yKDtpPD1yLmdldFRpbWUoKTspYT1uZXcgRWkoYSx0aGlzLmdldFR6KCkpLmluY3JlbWVudCh0aGlzLl9zdGF0ZXMucGF0dGVybix0aGlzLm9wdGlvbnMsITApLGk9YS5nZXRUaW1lKCkrdGhpcy5vcHRpb25zLmludGVydmFsKjFlMzt0PSEwfXJldHVybiBhPT09bnVsbCYmKGE9dm9pZCAwKSxbYSx0XX19fSk7dmFyIHphZSxtdixYMmEsdEZpLEYyLENhZSxPMSxRbyxuNyxNOWUsbDQsczcsX2FlLFRhZSxMYWUsRGFlLGk2LGw3LFNhZSxpRHQsazllLFM5ZSxvRHQsejllLEt0PWwoKCk9Pnt6YWU9Nyxtdj0zNjUuMjQyNSxYMmE9TWF0aC5wb3coMTAsOCkqMjQqNjAqNjAqMWUzLHRGaT0tWDJhLEYyPTYwNDhlNSxDYWU9ODY0ZTUsTzE9NmU0LFFvPTM2ZTUsbjc9MWUzLE05ZT01MjU2MDAsbDQ9NDMyMDAsczc9MTQ0MCxfYWU9NjAsVGFlPTMsTGFlPTEyLERhZT00LGk2PTM2MDAsbDc9NjAsU2FlPWk2KjI0LGlEdD1TYWUqNyxrOWU9U2FlKjM2NS4yNDI1LFM5ZT1rOWUvMTIsb0R0PVM5ZSozLHo5ZT1TeW1ib2wuZm9yKCJjb25zdHJ1Y3REYXRlRnJvbSIpfSk7ZnVuY3Rpb24gQmUoZSx0KXtyZXR1cm4gdHlwZW9mIGU9PSJmdW5jdGlvbiI/ZSh0KTplJiZ0eXBlb2YgZT09Im9iamVjdCImJno5ZSBpbiBlP2VbejllXSh0KTplIGluc3RhbmNlb2YgRGF0ZT9uZXcgZS5jb25zdHJ1Y3Rvcih0KTpuZXcgRGF0ZSh0KX12YXIgaUZpLF90PWwoKCk9PntLdCgpO2lGaT1CZX0pO2Z1bmN0aW9uIG1lKGUsdCl7cmV0dXJuIEJlKHR8fGUsZSl9dmFyIHNGaSxWZT1sKCgpPT57X3QoKTtzRmk9bWV9KTtmdW5jdGlvbiAkaShlLHQscil7bGV0IGE9bWUoZSxyPy5pbik7cmV0dXJuIGlzTmFOKHQpP0JlKHI/LmlufHxlLE5hTik6KHQmJmEuc2V0RGF0ZShhLmdldERhdGUoKSt0KSxhKX12YXIgdUZpLE8yPWwoKCk9PntfdCgpO1ZlKCk7dUZpPSRpfSk7ZnVuY3Rpb24gUjIoZSx0LHIpe2xldCBhPW1lKGUscj8uaW4pO2lmKGlzTmFOKHQpKXJldHVybiBCZShyPy5pbnx8ZSxOYU4pO2lmKCF0KXJldHVybiBhO2xldCBpPWEuZ2V0RGF0ZSgpLG89QmUocj8uaW58fGUsYS5nZXRUaW1lKCkpO28uc2V0TW9udGgoYS5nZXRNb250aCgpK3QrMSwwKTtsZXQgbj1vLmdldERhdGUoKTtyZXR1cm4gaT49bj9vOihhLnNldEZ1bGxZZWFyKG8uZ2V0RnVsbFllYXIoKSxvLmdldE1vbnRoKCksaSksYSl9dmFyIG1GaSxjNz1sKCgpPT57X3QoKTtWZSgpO21GaT1SMn0pO2Z1bmN0aW9uIGM0KGUsdCxyKXtsZXR7eWVhcnM6YT0wLG1vbnRoczppPTAsd2Vla3M6bz0wLGRheXM6bj0wLGhvdXJzOnM9MCxtaW51dGVzOmM9MCxzZWNvbmRzOmQ9MH09dCxmPW1lKGUscj8uaW4pLHU9aXx8YT9SMihmLGkrYSoxMik6ZixwPW58fG8/JGkodSxuK28qNyk6dSxoPWMrcyo2MCx4PShkK2gqNjApKjFlMztyZXR1cm4gQmUocj8uaW58fGUsK3AreCl9dmFyIHdGaSxDOWU9bCgoKT0+e08yKCk7YzcoKTtfdCgpO1ZlKCk7d0ZpPWM0fSk7ZnVuY3Rpb24gQWFlKGUsdCl7cmV0dXJuIG1lKGUsdD8uaW4pLmdldERheSgpPT09Nn12YXIgU0ZpLF85ZT1sKCgpPT57VmUoKTtTRmk9QWFlfSk7ZnVuY3Rpb24gRWFlKGUsdCl7cmV0dXJuIG1lKGUsdD8uaW4pLmdldERheSgpPT09MH12YXIgX0ZpLFQ5ZT1sKCgpPT57VmUoKTtfRmk9RWFlfSk7ZnVuY3Rpb24gQjIoZSx0KXtsZXQgcj1tZShlLHQ/LmluKS5nZXREYXkoKTtyZXR1cm4gcj09PTB8fHI9PT02fXZhciBERmksZ3Y9bCgoKT0+e1ZlKCk7REZpPUIyfSk7ZnVuY3Rpb24gJGFlKGUsdCxyKXtsZXQgYT1tZShlLHI/LmluKSxpPUIyKGEscik7aWYoaXNOYU4odCkpcmV0dXJuIEJlKHI/LmluLE5hTik7bGV0IG89YS5nZXRIb3VycygpLG49dDwwPy0xOjEscz1NYXRoLnRydW5jKHQvNSk7YS5zZXREYXRlKGEuZ2V0RGF0ZSgpK3MqNyk7bGV0IGM9TWF0aC5hYnModCU1KTtmb3IoO2M+MDspYS5zZXREYXRlKGEuZ2V0RGF0ZSgpK24pLEIyKGEscil8fChjLT0xKTtyZXR1cm4gaSYmQjIoYSxyKSYmdCE9PTAmJihBYWUoYSxyKSYmYS5zZXREYXRlKGEuZ2V0RGF0ZSgpKyhuPDA/MjotMSkpLEVhZShhLHIpJiZhLnNldERhdGUoYS5nZXREYXRlKCkrKG48MD8xOi0yKSkpLGEuc2V0SG91cnMobyksYX12YXIgRkZpLEw5ZT1sKCgpPT57X3QoKTtfOWUoKTtUOWUoKTtndigpO1ZlKCk7RkZpPSRhZX0pO2Z1bmN0aW9uIGQ0KGUsdCxyKXtyZXR1cm4gQmUocj8uaW58fGUsK21lKGUpK3QpfXZhciBIRmkseHY9bCgoKT0+e190KCk7VmUoKTtIRmk9ZDR9KTtmdW5jdGlvbiBQYWUoZSx0LHIpe3JldHVybiBkNChlLHQqUW8scil9dmFyIFVGaSxEOWU9bCgoKT0+e3h2KCk7S3QoKTtVRmk9UGFlfSk7ZnVuY3Rpb24gWXIoKXtyZXR1cm4gbkR0fWZ1bmN0aW9uIHNEdChlKXtuRHQ9ZX12YXIgbkR0LFIxPWwoKCk9PntuRHQ9e319KTtmdW5jdGlvbiBkYShlLHQpe2xldCByPVlyKCksYT10Py53ZWVrU3RhcnRzT24/P3Q/LmxvY2FsZT8ub3B0aW9ucz8ud2Vla1N0YXJ0c09uPz9yLndlZWtTdGFydHNPbj8/ci5sb2NhbGU/Lm9wdGlvbnM/LndlZWtTdGFydHNPbj8/MCxpPW1lKGUsdD8uaW4pLG89aS5nZXREYXkoKSxuPShvPGE/NzowKStvLWE7cmV0dXJuIGkuc2V0RGF0ZShpLmdldERhdGUoKS1uKSxpLnNldEhvdXJzKDAsMCwwLDApLGl9dmFyIFhGaSxicz1sKCgpPT57UjEoKTtWZSgpO1hGaT1kYX0pO2Z1bmN0aW9uIGhpKGUsdCl7cmV0dXJuIGRhKGUsey4uLnQsd2Vla1N0YXJ0c09uOjF9KX12YXIgSkZpLEgyPWwoKCk9PnticygpO0pGaT1oaX0pO2Z1bmN0aW9uIHNvKGUsdCl7bGV0IHI9bWUoZSx0Py5pbiksYT1yLmdldEZ1bGxZZWFyKCksaT1CZShyLDApO2kuc2V0RnVsbFllYXIoYSsxLDAsNCksaS5zZXRIb3VycygwLDAsMCwwKTtsZXQgbz1oaShpKSxuPUJlKHIsMCk7bi5zZXRGdWxsWWVhcihhLDAsNCksbi5zZXRIb3VycygwLDAsMCwwKTtsZXQgcz1oaShuKTtyZXR1cm4gci5nZXRUaW1lKCk+PW8uZ2V0VGltZSgpP2ErMTpyLmdldFRpbWUoKT49cy5nZXRUaW1lKCk/YTphLTF9dmFyIGlPaSx1ND1sKCgpPT57X3QoKTtIMigpO1ZlKCk7aU9pPXNvfSk7ZnVuY3Rpb24gVWEoZSl7bGV0IHQ9bWUoZSkscj1uZXcgRGF0ZShEYXRlLlVUQyh0LmdldEZ1bGxZZWFyKCksdC5nZXRNb250aCgpLHQuZ2V0RGF0ZSgpLHQuZ2V0SG91cnMoKSx0LmdldE1pbnV0ZXMoKSx0LmdldFNlY29uZHMoKSx0LmdldE1pbGxpc2Vjb25kcygpKSk7cmV0dXJuIHIuc2V0VVRDRnVsbFllYXIodC5nZXRGdWxsWWVhcigpKSwrZS0rcn12YXIgSmw9bCgoKT0+e1ZlKCl9KTtmdW5jdGlvbiBNdChlLC4uLnQpe2xldCByPUJlLmJpbmQobnVsbCxlfHx0LmZpbmQoYT0+dHlwZW9mIGE9PSJvYmplY3QiKSk7cmV0dXJuIHQubWFwKHIpfXZhciBhYT1sKCgpPT57X3QoKX0pO2Z1bmN0aW9uIHEyKGUsdCl7bGV0IHI9bWUoZSx0Py5pbik7cmV0dXJuIHIuc2V0SG91cnMoMCwwLDAsMCkscn12YXIgdU9pLGJ2PWwoKCk9PntWZSgpO3VPaT1xMn0pO2Z1bmN0aW9uIFFpKGUsdCxyKXtsZXRbYSxpXT1NdChyPy5pbixlLHQpLG89cTIoYSksbj1xMihpKSxzPStvLVVhKG8pLGM9K24tVWEobik7cmV0dXJuIE1hdGgucm91bmQoKHMtYykvQ2FlKX12YXIgeE9pLGVjPWwoKCk9PntKbCgpO2FhKCk7S3QoKTtidigpO3hPaT1RaX0pO2Z1bmN0aW9uIEtvKGUsdCl7bGV0IHI9c28oZSx0KSxhPUJlKHQ/LmlufHxlLDApO3JldHVybiBhLnNldEZ1bGxZZWFyKHIsMCw0KSxhLnNldEhvdXJzKDAsMCwwLDApLGhpKGEpfXZhciBNT2ksZDc9bCgoKT0+e190KCk7dTQoKTtIMigpO01PaT1Lb30pO2Z1bmN0aW9uIElhZShlLHQscil7bGV0IGE9bWUoZSxyPy5pbiksaT1RaShhLEtvKGEscikpLG89QmUocj8uaW58fGUsMCk7cmV0dXJuIG8uc2V0RnVsbFllYXIodCwwLDQpLG8uc2V0SG91cnMoMCwwLDAsMCksYT1LbyhvKSxhLnNldERhdGUoYS5nZXREYXRlKCkraSksYX12YXIgVE9pLEE5ZT1sKCgpPT57X3QoKTtlYygpO2Q3KCk7VmUoKTtUT2k9SWFlfSk7ZnVuY3Rpb24gTmFlKGUsdCxyKXtyZXR1cm4gSWFlKGUsc28oZSxyKSt0LHIpfXZhciBFT2ksRTllPWwoKCk9Pnt1NCgpO0E5ZSgpO0VPaT1OYWV9KTtmdW5jdGlvbiB1NyhlLHQscil7bGV0IGE9bWUoZSxyPy5pbik7cmV0dXJuIGEuc2V0VGltZShhLmdldFRpbWUoKSt0Kk8xKSxhfXZhciBOT2ksRmFlPWwoKCk9PntLdCgpO1ZlKCk7Tk9pPXU3fSk7ZnVuY3Rpb24gZjcoZSx0LHIpe3JldHVybiBSMihlLHQqMyxyKX12YXIgUk9pLE9hZT1sKCgpPT57YzcoKTtST2k9Zjd9KTtmdW5jdGlvbiBSYWUoZSx0LHIpe3JldHVybiBkNChlLHQqMWUzLHIpfXZhciBxT2ksJDllPWwoKCk9Pnt4digpO3FPaT1SYWV9KTtmdW5jdGlvbiBmNChlLHQscil7cmV0dXJuICRpKGUsdCo3LHIpfXZhciBVT2ksdnY9bCgoKT0+e08yKCk7VU9pPWY0fSk7ZnVuY3Rpb24gQmFlKGUsdCxyKXtyZXR1cm4gUjIoZSx0KjEyLHIpfXZhciBZT2ksUDllPWwoKCk9PntjNygpO1lPaT1CYWV9KTtmdW5jdGlvbiBsRHQoZSx0LHIpe2xldFthLGldPVsrbWUoZS5zdGFydCxyPy5pbiksK21lKGUuZW5kLHI/LmluKV0uc29ydCgocyxjKT0+cy1jKSxbbyxuXT1bK21lKHQuc3RhcnQscj8uaW4pLCttZSh0LmVuZCxyPy5pbildLnNvcnQoKHMsYyk9PnMtYyk7cmV0dXJuIHI/LmluY2x1c2l2ZT9hPD1uJiZvPD1pOmE8biYmbzxpfXZhciBRT2ksY0R0PWwoKCk9PntWZSgpO1FPaT1sRHR9KTtmdW5jdGlvbiBIYWUoZSx0KXtsZXQgcixhPXQ/LmluO3JldHVybiBlLmZvckVhY2goaT0+eyFhJiZ0eXBlb2YgaT09Im9iamVjdCImJihhPUJlLmJpbmQobnVsbCxpKSk7bGV0IG89bWUoaSxhKTsoIXJ8fHI8b3x8aXNOYU4oK28pKSYmKHI9byl9KSxCZShhLHJ8fE5hTil9dmFyIHRSaSxJOWU9bCgoKT0+e190KCk7VmUoKTt0Umk9SGFlfSk7ZnVuY3Rpb24gcWFlKGUsdCl7bGV0IHIsYT10Py5pbjtyZXR1cm4gZS5mb3JFYWNoKGk9PnshYSYmdHlwZW9mIGk9PSJvYmplY3QiJiYoYT1CZS5iaW5kKG51bGwsaSkpO2xldCBvPW1lKGksYSk7KCFyfHxyPm98fGlzTmFOKCtvKSkmJihyPW8pfSksQmUoYSxyfHxOYU4pfXZhciBvUmksTjllPWwoKCk9PntfdCgpO1ZlKCk7b1JpPXFhZX0pO2Z1bmN0aW9uIGREdChlLHQscil7bGV0W2EsaSxvXT1NdChyPy5pbixlLHQuc3RhcnQsdC5lbmQpO3JldHVybiBxYWUoW0hhZShbYSxpXSxyKSxvXSxyKX12YXIgZFJpLHVEdD1sKCgpPT57YWEoKTtJOWUoKTtOOWUoKTtkUmk9ZER0fSk7ZnVuY3Rpb24gamFlKGUsdCl7bGV0IHI9K21lKGUpO2lmKGlzTmFOKHIpKXJldHVybiBOYU47bGV0IGEsaTtyZXR1cm4gdC5mb3JFYWNoKChvLG4pPT57bGV0IHM9bWUobyk7aWYoaXNOYU4oK3MpKXthPU5hTixpPU5hTjtyZXR1cm59bGV0IGM9TWF0aC5hYnMoci0rcyk7KGE9PW51bGx8fGM8aSkmJihhPW4saT1jKX0pLGF9dmFyIHBSaSxGOWU9bCgoKT0+e1ZlKCk7cFJpPWphZX0pO2Z1bmN0aW9uIGZEdChlLHQscil7bGV0W2EsLi4uaV09TXQocj8uaW4sZSwuLi50KSxvPWphZShhLGkpO2lmKHR5cGVvZiBvPT0ibnVtYmVyIiYmaXNOYU4obykpcmV0dXJuIEJlKGEsTmFOKTtpZihvIT09dm9pZCAwKXJldHVybiBpW29dfXZhciBiUmkscER0PWwoKCk9PnthYSgpO0Y5ZSgpO190KCk7YlJpPWZEdH0pO2Z1bmN0aW9uIEIxKGUsdCl7bGV0IHI9K21lKGUpLSttZSh0KTtyZXR1cm4gcjwwPy0xOnI+MD8xOnJ9dmFyIHdSaSxvNj1sKCgpPT57VmUoKTt3Umk9QjF9KTtmdW5jdGlvbiBoRHQoZSx0KXtsZXQgcj0rbWUoZSktK21lKHQpO3JldHVybiByPjA/LTE6cjwwPzE6cn12YXIgU1JpLG1EdD1sKCgpPT57VmUoKTtTUmk9aER0fSk7ZnVuY3Rpb24gc3IoZSl7cmV0dXJuIEJlKGUsRGF0ZS5ub3coKSl9dmFyIF9SaSxQaT1sKCgpPT57X3QoKTtfUmk9c3J9KTtmdW5jdGlvbiBnRHQoZSl7bGV0IHQ9TWF0aC50cnVuYyhlLzcpO3JldHVybiB0PT09MD8wOnR9dmFyIERSaSx4RHQ9bCgoKT0+e0t0KCk7RFJpPWdEdH0pO2Z1bmN0aW9uIGoyKGUsdCxyKXtsZXRbYSxpXT1NdChyPy5pbixlLHQpO3JldHVybitxMihhKT09K3EyKGkpfXZhciBQUmkscDc9bCgoKT0+e2FhKCk7YnYoKTtQUmk9ajJ9KTtmdW5jdGlvbiBWYWUoZSl7cmV0dXJuIGUgaW5zdGFuY2VvZiBEYXRlfHx0eXBlb2YgZT09Im9iamVjdCImJk9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKT09PSJbb2JqZWN0IERhdGVdIn12YXIgTlJpLE85ZT1sKCgpPT57TlJpPVZhZX0pO2Z1bmN0aW9uIHUxKGUpe3JldHVybiEoIVZhZShlKSYmdHlwZW9mIGUhPSJudW1iZXIifHxpc05hTigrbWUoZSkpKX12YXIgQlJpLHRjPWwoKCk9PntPOWUoKTtWZSgpO0JSaT11MX0pO2Z1bmN0aW9uIGJEdChlLHQscil7bGV0W2EsaV09TXQocj8uaW4sZSx0KTtpZighdTEoYSl8fCF1MShpKSlyZXR1cm4gTmFOO2xldCBvPVFpKGEsaSksbj1vPDA/LTE6MSxzPU1hdGgudHJ1bmMoby83KSxjPXMqNSxkPSRpKGkscyo3KTtmb3IoOyFqMihhLGQpOyljKz1CMihkLHIpPzA6bixkPSRpKGQsbik7cmV0dXJuIGM9PT0wPzA6Y312YXIgWVJpLHZEdD1sKCgpPT57YWEoKTtPMigpO2VjKCk7cDcoKTt0YygpO2d2KCk7WVJpPWJEdH0pO2Z1bmN0aW9uIFVhZShlLHQscil7bGV0W2EsaV09TXQocj8uaW4sZSx0KTtyZXR1cm4gc28oYSxyKS1zbyhpLHIpfXZhciBLUmksUjllPWwoKCk9PnthYSgpO3U0KCk7S1JpPVVhZX0pO2Z1bmN0aW9uIHlEdChlLHQscil7bGV0W2EsaV09TXQocj8uaW4sZSx0KSxvPWhpKGEpLG49aGkoaSkscz0rby1VYShvKSxjPStuLVVhKG4pO3JldHVybiBNYXRoLnJvdW5kKChzLWMpL0YyKX12YXIgaUJpLHdEdD1sKCgpPT57SmwoKTthYSgpO0t0KCk7SDIoKTtpQmk9eUR0fSk7ZnVuY3Rpb24gbjYoZSx0LHIpe2xldFthLGldPU10KHI/LmluLGUsdCksbz1hLmdldEZ1bGxZZWFyKCktaS5nZXRGdWxsWWVhcigpLG49YS5nZXRNb250aCgpLWkuZ2V0TW9udGgoKTtyZXR1cm4gbyoxMitufXZhciBzQmksV2FlPWwoKCk9PnthYSgpO3NCaT1uNn0pO2Z1bmN0aW9uIHl2KGUsdCl7bGV0IHI9bWUoZSx0Py5pbik7cmV0dXJuIE1hdGgudHJ1bmMoci5nZXRNb250aCgpLzMpKzF9dmFyIGRCaSxCOWU9bCgoKT0+e1ZlKCk7ZEJpPXl2fSk7ZnVuY3Rpb24gaDcoZSx0LHIpe2xldFthLGldPU10KHI/LmluLGUsdCksbz1hLmdldEZ1bGxZZWFyKCktaS5nZXRGdWxsWWVhcigpLG49eXYoYSkteXYoaSk7cmV0dXJuIG8qNCtufXZhciBoQmksSDllPWwoKCk9PnthYSgpO0I5ZSgpO2hCaT1oN30pO2Z1bmN0aW9uIHM2KGUsdCxyKXtsZXRbYSxpXT1NdChyPy5pbixlLHQpLG89ZGEoYSxyKSxuPWRhKGkscikscz0rby1VYShvKSxjPStuLVVhKG4pO3JldHVybiBNYXRoLnJvdW5kKChzLWMpL0YyKX12YXIgeUJpLEdhZT1sKCgpPT57SmwoKTthYSgpO0t0KCk7YnMoKTt5Qmk9czZ9KTtmdW5jdGlvbiBwNChlLHQscil7bGV0W2EsaV09TXQocj8uaW4sZSx0KTtyZXR1cm4gYS5nZXRGdWxsWWVhcigpLWkuZ2V0RnVsbFllYXIoKX12YXIga0JpLFlhZT1sKCgpPT57YWEoKTtrQmk9cDR9KTtmdW5jdGlvbiBtNyhlLHQscil7bGV0W2EsaV09TXQocj8uaW4sZSx0KSxvPU1EdChhLGkpLG49TWF0aC5hYnMoUWkoYSxpKSk7YS5zZXREYXRlKGEuZ2V0RGF0ZSgpLW8qbik7bGV0IHM9KyhNRHQoYSxpKT09PS1vKSxjPW8qKG4tcyk7cmV0dXJuIGM9PT0wPzA6Y31mdW5jdGlvbiBNRHQoZSx0KXtsZXQgcj1lLmdldEZ1bGxZZWFyKCktdC5nZXRGdWxsWWVhcigpfHxlLmdldE1vbnRoKCktdC5nZXRNb250aCgpfHxlLmdldERhdGUoKS10LmdldERhdGUoKXx8ZS5nZXRIb3VycygpLXQuZ2V0SG91cnMoKXx8ZS5nZXRNaW51dGVzKCktdC5nZXRNaW51dGVzKCl8fGUuZ2V0U2Vjb25kcygpLXQuZ2V0U2Vjb25kcygpfHxlLmdldE1pbGxpc2Vjb25kcygpLXQuZ2V0TWlsbGlzZWNvbmRzKCk7cmV0dXJuIHI8MD8tMTpyPjA/MTpyfXZhciBfQmksWmFlPWwoKCk9PnthYSgpO2VjKCk7X0JpPW03fSk7ZnVuY3Rpb24gSDEoZSl7cmV0dXJuIHQ9PntsZXQgYT0oZT9NYXRoW2VdOk1hdGgudHJ1bmMpKHQpO3JldHVybiBhPT09MD8wOmF9fXZhciByYz1sKCgpPT57fSk7ZnVuY3Rpb24gbDYoZSx0LHIpe2xldFthLGldPU10KHI/LmluLGUsdCksbz0oK2EtK2kpL1FvO3JldHVybiBIMShyPy5yb3VuZGluZ01ldGhvZCkobyl9dmFyICRCaSxYYWU9bCgoKT0+e3JjKCk7YWEoKTtLdCgpOyRCaT1sNn0pO2Z1bmN0aW9uIFFhZShlLHQscil7cmV0dXJuIE5hZShlLC10LHIpfXZhciBOQmkscTllPWwoKCk9PntFOWUoKTtOQmk9UWFlfSk7ZnVuY3Rpb24ga0R0KGUsdCxyKXtsZXRbYSxpXT1NdChyPy5pbixlLHQpLG89QjEoYSxpKSxuPU1hdGguYWJzKFVhZShhLGkscikpLHM9UWFlKGEsbypuLHIpLGM9KyhCMShzLGkpPT09LW8pLGQ9byoobi1jKTtyZXR1cm4gZD09PTA/MDpkfXZhciBxQmksU0R0PWwoKCk9PnthYSgpO282KCk7UjllKCk7cTllKCk7cUJpPWtEdH0pO2Z1bmN0aW9uIGc3KGUsdCl7cmV0dXJuK21lKGUpLSttZSh0KX12YXIgVUJpLEthZT1sKCgpPT57VmUoKTtVQmk9Zzd9KTtmdW5jdGlvbiBjNihlLHQscil7bGV0IGE9ZzcoZSx0KS9PMTtyZXR1cm4gSDEocj8ucm91bmRpbmdNZXRob2QpKGEpfXZhciBYQmksSmFlPWwoKCk9PntyYygpO0t0KCk7S2FlKCk7WEJpPWM2fSk7ZnVuY3Rpb24geDcoZSx0KXtsZXQgcj1tZShlLHQ/LmluKTtyZXR1cm4gci5zZXRIb3VycygyMyw1OSw1OSw5OTkpLHJ9dmFyIEpCaSxlaWU9bCgoKT0+e1ZlKCk7SkJpPXg3fSk7ZnVuY3Rpb24gYjcoZSx0KXtsZXQgcj1tZShlLHQ/LmluKSxhPXIuZ2V0TW9udGgoKTtyZXR1cm4gci5zZXRGdWxsWWVhcihyLmdldEZ1bGxZZWFyKCksYSsxLDApLHIuc2V0SG91cnMoMjMsNTksNTksOTk5KSxyfXZhciBySGksdGllPWwoKCk9PntWZSgpO3JIaT1iN30pO2Z1bmN0aW9uIHJpZShlLHQpe2xldCByPW1lKGUsdD8uaW4pO3JldHVybit4NyhyLHQpPT0rYjcocix0KX12YXIgc0hpLGo5ZT1sKCgpPT57ZWllKCk7dGllKCk7VmUoKTtzSGk9cmllfSk7ZnVuY3Rpb24gaDQoZSx0LHIpe2xldFthLGksb109TXQocj8uaW4sZSxlLHQpLG49QjEoaSxvKSxzPU1hdGguYWJzKG42KGksbykpO2lmKHM8MSlyZXR1cm4gMDtpLmdldE1vbnRoKCk9PT0xJiZpLmdldERhdGUoKT4yNyYmaS5zZXREYXRlKDMwKSxpLnNldE1vbnRoKGkuZ2V0TW9udGgoKS1uKnMpO2xldCBjPUIxKGksbyk9PT0tbjtyaWUoYSkmJnM9PT0xJiZCMShhLG8pPT09MSYmKGM9ITEpO2xldCBkPW4qKHMtK2MpO3JldHVybiBkPT09MD8wOmR9dmFyIHBIaSx3dj1sKCgpPT57YWEoKTtvNigpO1dhZSgpO2o5ZSgpO3BIaT1oNH0pO2Z1bmN0aW9uIHpEdChlLHQscil7bGV0IGE9aDQoZSx0LHIpLzM7cmV0dXJuIEgxKHI/LnJvdW5kaW5nTWV0aG9kKShhKX12YXIgeEhpLENEdD1sKCgpPT57cmMoKTt3digpO3hIaT16RHR9KTtmdW5jdGlvbiBWMihlLHQscil7bGV0IGE9ZzcoZSx0KS8xZTM7cmV0dXJuIEgxKHI/LnJvdW5kaW5nTWV0aG9kKShhKX12YXIgd0hpLE12PWwoKCk9PntyYygpO0thZSgpO3dIaT1WMn0pO2Z1bmN0aW9uIF9EdChlLHQscil7bGV0IGE9bTcoZSx0LHIpLzc7cmV0dXJuIEgxKHI/LnJvdW5kaW5nTWV0aG9kKShhKX12YXIgekhpLFREdD1sKCgpPT57cmMoKTtaYWUoKTt6SGk9X0R0fSk7ZnVuY3Rpb24gYWllKGUsdCxyKXtsZXRbYSxpXT1NdChyPy5pbixlLHQpLG89QjEoYSxpKSxuPU1hdGguYWJzKHA0KGEsaSkpO2Euc2V0RnVsbFllYXIoMTU4NCksaS5zZXRGdWxsWWVhcigxNTg0KTtsZXQgcz1CMShhLGkpPT09LW8sYz1vKihuLStzKTtyZXR1cm4gYz09PTA/MDpjfXZhciBESGksVjllPWwoKCk9PnthYSgpO282KCk7WWFlKCk7REhpPWFpZX0pO2Z1bmN0aW9uIEtpKGUsdCl7bGV0W3IsYV09TXQoZSx0LnN0YXJ0LHQuZW5kKTtyZXR1cm57c3RhcnQ6cixlbmQ6YX19dmFyIFUyPWwoKCk9PnthYSgpfSk7ZnVuY3Rpb24gaWllKGUsdCl7bGV0e3N0YXJ0OnIsZW5kOmF9PUtpKHQ/LmluLGUpLGk9K3I+K2Esbz1pPytyOithLG49aT9hOnI7bi5zZXRIb3VycygwLDAsMCwwKTtsZXQgcz10Py5zdGVwPz8xO2lmKCFzKXJldHVybltdO3M8MCYmKHM9LXMsaT0haSk7bGV0IGM9W107Zm9yKDsrbjw9bzspYy5wdXNoKEJlKHIsbikpLG4uc2V0RGF0ZShuLmdldERhdGUoKStzKSxuLnNldEhvdXJzKDAsMCwwLDApO3JldHVybiBpP2MucmV2ZXJzZSgpOmN9dmFyIE5IaSxVOWU9bCgoKT0+e1UyKCk7X3QoKTtOSGk9aWllfSk7ZnVuY3Rpb24gTER0KGUsdCl7bGV0e3N0YXJ0OnIsZW5kOmF9PUtpKHQ/LmluLGUpLGk9K3I+K2Esbz1pPytyOithLG49aT9hOnI7bi5zZXRNaW51dGVzKDAsMCwwKTtsZXQgcz10Py5zdGVwPz8xO2lmKCFzKXJldHVybltdO3M8MCYmKHM9LXMsaT0haSk7bGV0IGM9W107Zm9yKDsrbjw9bzspYy5wdXNoKEJlKHIsbikpLG4uc2V0SG91cnMobi5nZXRIb3VycygpK3MpO3JldHVybiBpP2MucmV2ZXJzZSgpOmN9dmFyIEJIaSxERHQ9bCgoKT0+e1UyKCk7X3QoKTtCSGk9TER0fSk7ZnVuY3Rpb24gQUR0KGUsdCl7bGV0e3N0YXJ0OnIsZW5kOmF9PUtpKHQ/LmluLGUpO3Iuc2V0U2Vjb25kcygwLDApO2xldCBpPStyPithLG89aT8rcjorYSxuPWk/YTpyLHM9dD8uc3RlcD8/MTtpZighcylyZXR1cm5bXTtzPDAmJihzPS1zLGk9IWkpO2xldCBjPVtdO2Zvcig7K248PW87KWMucHVzaChCZShyLG4pKSxuPXU3KG4scyk7cmV0dXJuIGk/Yy5yZXZlcnNlKCk6Y312YXIgVUhpLEVEdD1sKCgpPT57VTIoKTtGYWUoKTtfdCgpO1VIaT1BRHR9KTtmdW5jdGlvbiAkRHQoZSx0KXtsZXR7c3RhcnQ6cixlbmQ6YX09S2kodD8uaW4sZSksaT0rcj4rYSxvPWk/K3I6K2Esbj1pP2E6cjtuLnNldEhvdXJzKDAsMCwwLDApLG4uc2V0RGF0ZSgxKTtsZXQgcz10Py5zdGVwPz8xO2lmKCFzKXJldHVybltdO3M8MCYmKHM9LXMsaT0haSk7bGV0IGM9W107Zm9yKDsrbjw9bzspYy5wdXNoKEJlKHIsbikpLG4uc2V0TW9udGgobi5nZXRNb250aCgpK3MpO3JldHVybiBpP2MucmV2ZXJzZSgpOmN9dmFyIFpIaSxQRHQ9bCgoKT0+e1UyKCk7X3QoKTtaSGk9JER0fSk7ZnVuY3Rpb24gVzIoZSx0KXtsZXQgcj1tZShlLHQ/LmluKSxhPXIuZ2V0TW9udGgoKSxpPWEtYSUzO3JldHVybiByLnNldE1vbnRoKGksMSksci5zZXRIb3VycygwLDAsMCwwKSxyfXZhciBLSGksb2llPWwoKCk9PntWZSgpO0tIaT1XMn0pO2Z1bmN0aW9uIElEdChlLHQpe2xldHtzdGFydDpyLGVuZDphfT1LaSh0Py5pbixlKSxpPStyPithLG89aT8rVzIocik6K1cyKGEpLG49aT9XMihhKTpXMihyKSxzPXQ/LnN0ZXA/PzE7aWYoIXMpcmV0dXJuW107czwwJiYocz0tcyxpPSFpKTtsZXQgYz1bXTtmb3IoOytuPD1vOyljLnB1c2goQmUocixuKSksbj1mNyhuLHMpO3JldHVybiBpP2MucmV2ZXJzZSgpOmN9dmFyIGlxaSxORHQ9bCgoKT0+e1UyKCk7T2FlKCk7X3QoKTtvaWUoKTtpcWk9SUR0fSk7ZnVuY3Rpb24gRkR0KGUsdCl7bGV0e3N0YXJ0OnIsZW5kOmF9PUtpKHQ/LmluLGUpLGk9K3I+K2Esbz1pP2RhKGEsdCk6ZGEocix0KSxuPWk/ZGEocix0KTpkYShhLHQpO28uc2V0SG91cnMoMTUpLG4uc2V0SG91cnMoMTUpO2xldCBzPStuLmdldFRpbWUoKSxjPW8sZD10Py5zdGVwPz8xO2lmKCFkKXJldHVybltdO2Q8MCYmKGQ9LWQsaT0haSk7bGV0IGY9W107Zm9yKDsrYzw9czspYy5zZXRIb3VycygwKSxmLnB1c2goQmUocixjKSksYz1mNChjLGQpLGMuc2V0SG91cnMoMTUpO3JldHVybiBpP2YucmV2ZXJzZSgpOmZ9dmFyIGRxaSxPRHQ9bCgoKT0+e1UyKCk7dnYoKTtfdCgpO2JzKCk7ZHFpPUZEdH0pO2Z1bmN0aW9uIHY3KGUsdCl7bGV0e3N0YXJ0OnIsZW5kOmF9PUtpKHQ/LmluLGUpLGk9aWllKHtzdGFydDpyLGVuZDphfSx0KSxvPVtdLG49MDtmb3IoO248aS5sZW5ndGg7KXtsZXQgcz1pW24rK107QjIocykmJm8ucHVzaChCZShyLHMpKX1yZXR1cm4gb312YXIgZ3FpLG5pZT1sKCgpPT57VTIoKTtfdCgpO1U5ZSgpO2d2KCk7Z3FpPXY3fSk7ZnVuY3Rpb24gbTQoZSx0KXtsZXQgcj1tZShlLHQ/LmluKTtyZXR1cm4gci5zZXREYXRlKDEpLHIuc2V0SG91cnMoMCwwLDAsMCkscn12YXIgdnFpLGt2PWwoKCk9PntWZSgpO3ZxaT1tNH0pO2Z1bmN0aW9uIFJEdChlLHQpe2xldCByPW00KGUsdCksYT1iNyhlLHQpO3JldHVybiB2Nyh7c3RhcnQ6cixlbmQ6YX0sdCl9dmFyIFNxaSxCRHQ9bCgoKT0+e25pZSgpO3RpZSgpO2t2KCk7U3FpPVJEdH0pO2Z1bmN0aW9uIHNpZShlLHQpe2xldCByPW1lKGUsdD8uaW4pLGE9ci5nZXRGdWxsWWVhcigpO3JldHVybiByLnNldEZ1bGxZZWFyKGErMSwwLDApLHIuc2V0SG91cnMoMjMsNTksNTksOTk5KSxyfXZhciBfcWksVzllPWwoKCk9PntWZSgpO19xaT1zaWV9KTtmdW5jdGlvbiB5NyhlLHQpe2xldCByPW1lKGUsdD8uaW4pO3JldHVybiByLnNldEZ1bGxZZWFyKHIuZ2V0RnVsbFllYXIoKSwwLDEpLHIuc2V0SG91cnMoMCwwLDAsMCkscn12YXIgRHFpLGxpZT1sKCgpPT57VmUoKTtEcWk9eTd9KTtmdW5jdGlvbiBIRHQoZSx0KXtsZXQgcj15NyhlLHQpLGE9c2llKGUsdCk7cmV0dXJuIHY3KHtzdGFydDpyLGVuZDphfSx0KX12YXIgSXFpLHFEdD1sKCgpPT57bmllKCk7VzllKCk7bGllKCk7SXFpPUhEdH0pO2Z1bmN0aW9uIGpEdChlLHQpe2xldHtzdGFydDpyLGVuZDphfT1LaSh0Py5pbixlKSxpPStyPithLG89aT8rcjorYSxuPWk/YTpyO24uc2V0SG91cnMoMCwwLDAsMCksbi5zZXRNb250aCgwLDEpO2xldCBzPXQ/LnN0ZXA/PzE7aWYoIXMpcmV0dXJuW107czwwJiYocz0tcyxpPSFpKTtsZXQgYz1bXTtmb3IoOytuPD1vOyljLnB1c2goQmUocixuKSksbi5zZXRGdWxsWWVhcihuLmdldEZ1bGxZZWFyKCkrcyk7cmV0dXJuIGk/Yy5yZXZlcnNlKCk6Y312YXIgUnFpLFZEdD1sKCgpPT57VTIoKTtfdCgpO1JxaT1qRHR9KTtmdW5jdGlvbiBVRHQoZSx0KXtsZXQgcj1tZShlLHQ/LmluKSxhPXIuZ2V0RnVsbFllYXIoKSxpPTkrTWF0aC5mbG9vcihhLzEwKSoxMDtyZXR1cm4gci5zZXRGdWxsWWVhcihpLDExLDMxKSxyLnNldEhvdXJzKDIzLDU5LDU5LDk5OSkscn12YXIgcXFpLFdEdD1sKCgpPT57VmUoKTtxcWk9VUR0fSk7ZnVuY3Rpb24gR0R0KGUsdCl7bGV0IHI9bWUoZSx0Py5pbik7cmV0dXJuIHIuc2V0TWludXRlcyg1OSw1OSw5OTkpLHJ9dmFyIFVxaSxZRHQ9bCgoKT0+e1ZlKCk7VXFpPUdEdH0pO2Z1bmN0aW9uIGNpZShlLHQpe2xldCByPVlyKCksYT10Py53ZWVrU3RhcnRzT24/P3Q/LmxvY2FsZT8ub3B0aW9ucz8ud2Vla1N0YXJ0c09uPz9yLndlZWtTdGFydHNPbj8/ci5sb2NhbGU/Lm9wdGlvbnM/LndlZWtTdGFydHNPbj8/MCxpPW1lKGUsdD8uaW4pLG89aS5nZXREYXkoKSxuPShvPGE/LTc6MCkrNi0oby1hKTtyZXR1cm4gaS5zZXREYXRlKGkuZ2V0RGF0ZSgpK24pLGkuc2V0SG91cnMoMjMsNTksNTksOTk5KSxpfXZhciBacWksRzllPWwoKCk9PntSMSgpO1ZlKCk7WnFpPWNpZX0pO2Z1bmN0aW9uIFpEdChlLHQpe3JldHVybiBjaWUoZSx7Li4udCx3ZWVrU3RhcnRzT246MX0pfXZhciBLcWksWER0PWwoKCk9PntHOWUoKTtLcWk9WkR0fSk7ZnVuY3Rpb24gUUR0KGUsdCl7bGV0IHI9c28oZSx0KSxhPUJlKHQ/LmlufHxlLDApO2Euc2V0RnVsbFllYXIocisxLDAsNCksYS5zZXRIb3VycygwLDAsMCwwKTtsZXQgaT1oaShhLHQpO3JldHVybiBpLnNldE1pbGxpc2Vjb25kcyhpLmdldE1pbGxpc2Vjb25kcygpLTEpLGl9dmFyIGFqaSxLRHQ9bCgoKT0+e190KCk7dTQoKTtIMigpO2FqaT1RRHR9KTtmdW5jdGlvbiBKRHQoZSx0KXtsZXQgcj1tZShlLHQ/LmluKTtyZXR1cm4gci5zZXRTZWNvbmRzKDU5LDk5OSkscn12YXIgbmppLGVBdD1sKCgpPT57VmUoKTtuamk9SkR0fSk7ZnVuY3Rpb24gdEF0KGUsdCl7bGV0IHI9bWUoZSx0Py5pbiksYT1yLmdldE1vbnRoKCksaT1hLWElMyszO3JldHVybiByLnNldE1vbnRoKGksMCksci5zZXRIb3VycygyMyw1OSw1OSw5OTkpLHJ9dmFyIGNqaSxyQXQ9bCgoKT0+e1ZlKCk7Y2ppPXRBdH0pO2Z1bmN0aW9uIGFBdChlLHQpe2xldCByPW1lKGUsdD8uaW4pO3JldHVybiByLnNldE1pbGxpc2Vjb25kcyg5OTkpLHJ9dmFyIGZqaSxpQXQ9bCgoKT0+e1ZlKCk7ZmppPWFBdH0pO2Z1bmN0aW9uIG9BdChlKXtyZXR1cm4geDcoRGF0ZS5ub3coKSxlKX12YXIgbWppLG5BdD1sKCgpPT57ZWllKCk7bWppPW9BdH0pO2Z1bmN0aW9uIHNBdChlKXtsZXQgdD1zcihlPy5pbikscj10LmdldEZ1bGxZZWFyKCksYT10LmdldE1vbnRoKCksaT10LmdldERhdGUoKSxvPXNyKGU/LmluKTtyZXR1cm4gby5zZXRGdWxsWWVhcihyLGEsaSsxKSxvLnNldEhvdXJzKDIzLDU5LDU5LDk5OSksZT8uaW4/ZS5pbihvKTpvfXZhciBiamksbEF0PWwoKCk9PntQaSgpO2JqaT1zQXR9KTtmdW5jdGlvbiBjQXQoZSl7bGV0IHQ9c3IoZT8uaW4pLHI9QmUoZT8uaW4sMCk7cmV0dXJuIHIuc2V0RnVsbFllYXIodC5nZXRGdWxsWWVhcigpLHQuZ2V0TW9udGgoKSx0LmdldERhdGUoKS0xKSxyLnNldEhvdXJzKDIzLDU5LDU5LDk5OSkscn12YXIgTWppLGRBdD1sKCgpPT57X3QoKTtQaSgpO01qaT1jQXR9KTt2YXIgUTJhLHVBdCxmQXQ9bCgoKT0+e1EyYT17bGVzc1RoYW5YU2Vjb25kczp7b25lOiJsZXNzIHRoYW4gYSBzZWNvbmQiLG90aGVyOiJsZXNzIHRoYW4ge3tjb3VudH19IHNlY29uZHMifSx4U2Vjb25kczp7b25lOiIxIHNlY29uZCIsb3RoZXI6Int7Y291bnR9fSBzZWNvbmRzIn0saGFsZkFNaW51dGU6ImhhbGYgYSBtaW51dGUiLGxlc3NUaGFuWE1pbnV0ZXM6e29uZToibGVzcyB0aGFuIGEgbWludXRlIixvdGhlcjoibGVzcyB0aGFuIHt7Y291bnR9fSBtaW51dGVzIn0seE1pbnV0ZXM6e29uZToiMSBtaW51dGUiLG90aGVyOiJ7e2NvdW50fX0gbWludXRlcyJ9LGFib3V0WEhvdXJzOntvbmU6ImFib3V0IDEgaG91ciIsb3RoZXI6ImFib3V0IHt7Y291bnR9fSBob3VycyJ9LHhIb3Vyczp7b25lOiIxIGhvdXIiLG90aGVyOiJ7e2NvdW50fX0gaG91cnMifSx4RGF5czp7b25lOiIxIGRheSIsb3RoZXI6Int7Y291bnR9fSBkYXlzIn0sYWJvdXRYV2Vla3M6e29uZToiYWJvdXQgMSB3ZWVrIixvdGhlcjoiYWJvdXQge3tjb3VudH19IHdlZWtzIn0seFdlZWtzOntvbmU6IjEgd2VlayIsb3RoZXI6Int7Y291bnR9fSB3ZWVrcyJ9LGFib3V0WE1vbnRoczp7b25lOiJhYm91dCAxIG1vbnRoIixvdGhlcjoiYWJvdXQge3tjb3VudH19IG1vbnRocyJ9LHhNb250aHM6e29uZToiMSBtb250aCIsb3RoZXI6Int7Y291bnR9fSBtb250aHMifSxhYm91dFhZZWFyczp7b25lOiJhYm91dCAxIHllYXIiLG90aGVyOiJhYm91dCB7e2NvdW50fX0geWVhcnMifSx4WWVhcnM6e29uZToiMSB5ZWFyIixvdGhlcjoie3tjb3VudH19IHllYXJzIn0sb3ZlclhZZWFyczp7b25lOiJvdmVyIDEgeWVhciIsb3RoZXI6Im92ZXIge3tjb3VudH19IHllYXJzIn0sYWxtb3N0WFllYXJzOntvbmU6ImFsbW9zdCAxIHllYXIiLG90aGVyOiJhbG1vc3Qge3tjb3VudH19IHllYXJzIn19LHVBdD0oZSx0LHIpPT57bGV0IGEsaT1RMmFbZV07cmV0dXJuIHR5cGVvZiBpPT0ic3RyaW5nIj9hPWk6dD09PTE/YT1pLm9uZTphPWkub3RoZXIucmVwbGFjZSgie3tjb3VudH19Iix0LnRvU3RyaW5nKCkpLHI/LmFkZFN1ZmZpeD9yLmNvbXBhcmlzb24mJnIuY29tcGFyaXNvbj4wPyJpbiAiK2E6YSsiIGFnbyI6YX19KTtmdW5jdGlvbiBkaWUoZSl7cmV0dXJuKHQ9e30pPT57bGV0IHI9dC53aWR0aD9TdHJpbmcodC53aWR0aCk6ZS5kZWZhdWx0V2lkdGg7cmV0dXJuIGUuZm9ybWF0c1tyXXx8ZS5mb3JtYXRzW2UuZGVmYXVsdFdpZHRoXX19dmFyIHBBdD1sKCgpPT57fSk7dmFyIEsyYSxKMmEsZWxhLGhBdCxtQXQ9bCgoKT0+e3BBdCgpO0syYT17ZnVsbDoiRUVFRSwgTU1NTSBkbywgeSIsbG9uZzoiTU1NTSBkbywgeSIsbWVkaXVtOiJNTU0gZCwgeSIsc2hvcnQ6Ik1NL2RkL3l5eXkifSxKMmE9e2Z1bGw6Img6bW06c3MgYSB6enp6Iixsb25nOiJoOm1tOnNzIGEgeiIsbWVkaXVtOiJoOm1tOnNzIGEiLHNob3J0OiJoOm1tIGEifSxlbGE9e2Z1bGw6Int7ZGF0ZX19ICdhdCcge3t0aW1lfX0iLGxvbmc6Int7ZGF0ZX19ICdhdCcge3t0aW1lfX0iLG1lZGl1bToie3tkYXRlfX0sIHt7dGltZX19IixzaG9ydDoie3tkYXRlfX0sIHt7dGltZX19In0saEF0PXtkYXRlOmRpZSh7Zm9ybWF0czpLMmEsZGVmYXVsdFdpZHRoOiJmdWxsIn0pLHRpbWU6ZGllKHtmb3JtYXRzOkoyYSxkZWZhdWx0V2lkdGg6ImZ1bGwifSksZGF0ZVRpbWU6ZGllKHtmb3JtYXRzOmVsYSxkZWZhdWx0V2lkdGg6ImZ1bGwifSl9fSk7dmFyIHRsYSxnQXQseEF0PWwoKCk9Pnt0bGE9e2xhc3RXZWVrOiInbGFzdCcgZWVlZSAnYXQnIHAiLHllc3RlcmRheToiJ3llc3RlcmRheSBhdCcgcCIsdG9kYXk6Iid0b2RheSBhdCcgcCIsdG9tb3Jyb3c6Iid0b21vcnJvdyBhdCcgcCIsbmV4dFdlZWs6ImVlZWUgJ2F0JyBwIixvdGhlcjoiUCJ9LGdBdD0oZSx0LHIsYSk9PnRsYVtlXX0pO2Z1bmN0aW9uIHc3KGUpe3JldHVybih0LHIpPT57bGV0IGE9cj8uY29udGV4dD9TdHJpbmcoci5jb250ZXh0KToic3RhbmRhbG9uZSIsaTtpZihhPT09ImZvcm1hdHRpbmciJiZlLmZvcm1hdHRpbmdWYWx1ZXMpe2xldCBuPWUuZGVmYXVsdEZvcm1hdHRpbmdXaWR0aHx8ZS5kZWZhdWx0V2lkdGgscz1yPy53aWR0aD9TdHJpbmcoci53aWR0aCk6bjtpPWUuZm9ybWF0dGluZ1ZhbHVlc1tzXXx8ZS5mb3JtYXR0aW5nVmFsdWVzW25dfWVsc2V7bGV0IG49ZS5kZWZhdWx0V2lkdGgscz1yPy53aWR0aD9TdHJpbmcoci53aWR0aCk6ZS5kZWZhdWx0V2lkdGg7aT1lLnZhbHVlc1tzXXx8ZS52YWx1ZXNbbl19bGV0IG89ZS5hcmd1bWVudENhbGxiYWNrP2UuYXJndW1lbnRDYWxsYmFjayh0KTp0O3JldHVybiBpW29dfX12YXIgYkF0PWwoKCk9Pnt9KTt2YXIgcmxhLGFsYSxpbGEsb2xhLG5sYSxzbGEsbGxhLHZBdCx5QXQ9bCgoKT0+e2JBdCgpO3JsYT17bmFycm93OlsiQiIsIkEiXSxhYmJyZXZpYXRlZDpbIkJDIiwiQUQiXSx3aWRlOlsiQmVmb3JlIENocmlzdCIsIkFubm8gRG9taW5pIl19LGFsYT17bmFycm93OlsiMSIsIjIiLCIzIiwiNCJdLGFiYnJldmlhdGVkOlsiUTEiLCJRMiIsIlEzIiwiUTQiXSx3aWRlOlsiMXN0IHF1YXJ0ZXIiLCIybmQgcXVhcnRlciIsIjNyZCBxdWFydGVyIiwiNHRoIHF1YXJ0ZXIiXX0saWxhPXtuYXJyb3c6WyJKIiwiRiIsIk0iLCJBIiwiTSIsIkoiLCJKIiwiQSIsIlMiLCJPIiwiTiIsIkQiXSxhYmJyZXZpYXRlZDpbIkphbiIsIkZlYiIsIk1hciIsIkFwciIsIk1heSIsIkp1biIsIkp1bCIsIkF1ZyIsIlNlcCIsIk9jdCIsIk5vdiIsIkRlYyJdLHdpZGU6WyJKYW51YXJ5IiwiRmVicnVhcnkiLCJNYXJjaCIsIkFwcmlsIiwiTWF5IiwiSnVuZSIsIkp1bHkiLCJBdWd1c3QiLCJTZXB0ZW1iZXIiLCJPY3RvYmVyIiwiTm92ZW1iZXIiLCJEZWNlbWJlciJdfSxvbGE9e25hcnJvdzpbIlMiLCJNIiwiVCIsIlciLCJUIiwiRiIsIlMiXSxzaG9ydDpbIlN1IiwiTW8iLCJUdSIsIldlIiwiVGgiLCJGciIsIlNhIl0sYWJicmV2aWF0ZWQ6WyJTdW4iLCJNb24iLCJUdWUiLCJXZWQiLCJUaHUiLCJGcmkiLCJTYXQiXSx3aWRlOlsiU3VuZGF5IiwiTW9uZGF5IiwiVHVlc2RheSIsIldlZG5lc2RheSIsIlRodXJzZGF5IiwiRnJpZGF5IiwiU2F0dXJkYXkiXX0sbmxhPXtuYXJyb3c6e2FtOiJhIixwbToicCIsbWlkbmlnaHQ6Im1pIixub29uOiJuIixtb3JuaW5nOiJtb3JuaW5nIixhZnRlcm5vb246ImFmdGVybm9vbiIsZXZlbmluZzoiZXZlbmluZyIsbmlnaHQ6Im5pZ2h0In0sYWJicmV2aWF0ZWQ6e2FtOiJBTSIscG06IlBNIixtaWRuaWdodDoibWlkbmlnaHQiLG5vb246Im5vb24iLG1vcm5pbmc6Im1vcm5pbmciLGFmdGVybm9vbjoiYWZ0ZXJub29uIixldmVuaW5nOiJldmVuaW5nIixuaWdodDoibmlnaHQifSx3aWRlOnthbToiYS5tLiIscG06InAubS4iLG1pZG5pZ2h0OiJtaWRuaWdodCIsbm9vbjoibm9vbiIsbW9ybmluZzoibW9ybmluZyIsYWZ0ZXJub29uOiJhZnRlcm5vb24iLGV2ZW5pbmc6ImV2ZW5pbmciLG5pZ2h0OiJuaWdodCJ9fSxzbGE9e25hcnJvdzp7YW06ImEiLHBtOiJwIixtaWRuaWdodDoibWkiLG5vb246Im4iLG1vcm5pbmc6ImluIHRoZSBtb3JuaW5nIixhZnRlcm5vb246ImluIHRoZSBhZnRlcm5vb24iLGV2ZW5pbmc6ImluIHRoZSBldmVuaW5nIixuaWdodDoiYXQgbmlnaHQifSxhYmJyZXZpYXRlZDp7YW06IkFNIixwbToiUE0iLG1pZG5pZ2h0OiJtaWRuaWdodCIsbm9vbjoibm9vbiIsbW9ybmluZzoiaW4gdGhlIG1vcm5pbmciLGFmdGVybm9vbjoiaW4gdGhlIGFmdGVybm9vbiIsZXZlbmluZzoiaW4gdGhlIGV2ZW5pbmciLG5pZ2h0OiJhdCBuaWdodCJ9LHdpZGU6e2FtOiJhLm0uIixwbToicC5tLiIsbWlkbmlnaHQ6Im1pZG5pZ2h0Iixub29uOiJub29uIixtb3JuaW5nOiJpbiB0aGUgbW9ybmluZyIsYWZ0ZXJub29uOiJpbiB0aGUgYWZ0ZXJub29uIixldmVuaW5nOiJpbiB0aGUgZXZlbmluZyIsbmlnaHQ6ImF0IG5pZ2h0In19LGxsYT0oZSx0KT0+e2xldCByPU51bWJlcihlKSxhPXIlMTAwO2lmKGE+MjB8fGE8MTApc3dpdGNoKGElMTApe2Nhc2UgMTpyZXR1cm4gcisic3QiO2Nhc2UgMjpyZXR1cm4gcisibmQiO2Nhc2UgMzpyZXR1cm4gcisicmQifXJldHVybiByKyJ0aCJ9LHZBdD17b3JkaW5hbE51bWJlcjpsbGEsZXJhOnc3KHt2YWx1ZXM6cmxhLGRlZmF1bHRXaWR0aDoid2lkZSJ9KSxxdWFydGVyOnc3KHt2YWx1ZXM6YWxhLGRlZmF1bHRXaWR0aDoid2lkZSIsYXJndW1lbnRDYWxsYmFjazplPT5lLTF9KSxtb250aDp3Nyh7dmFsdWVzOmlsYSxkZWZhdWx0V2lkdGg6IndpZGUifSksZGF5Onc3KHt2YWx1ZXM6b2xhLGRlZmF1bHRXaWR0aDoid2lkZSJ9KSxkYXlQZXJpb2Q6dzcoe3ZhbHVlczpubGEsZGVmYXVsdFdpZHRoOiJ3aWRlIixmb3JtYXR0aW5nVmFsdWVzOnNsYSxkZWZhdWx0Rm9ybWF0dGluZ1dpZHRoOiJ3aWRlIn0pfX0pO2Z1bmN0aW9uIE03KGUpe3JldHVybih0LHI9e30pPT57bGV0IGE9ci53aWR0aCxpPWEmJmUubWF0Y2hQYXR0ZXJuc1thXXx8ZS5tYXRjaFBhdHRlcm5zW2UuZGVmYXVsdE1hdGNoV2lkdGhdLG89dC5tYXRjaChpKTtpZighbylyZXR1cm4gbnVsbDtsZXQgbj1vWzBdLHM9YSYmZS5wYXJzZVBhdHRlcm5zW2FdfHxlLnBhcnNlUGF0dGVybnNbZS5kZWZhdWx0UGFyc2VXaWR0aF0sYz1BcnJheS5pc0FycmF5KHMpP2RsYShzLHU9PnUudGVzdChuKSk6Y2xhKHMsdT0+dS50ZXN0KG4pKSxkO2Q9ZS52YWx1ZUNhbGxiYWNrP2UudmFsdWVDYWxsYmFjayhjKTpjLGQ9ci52YWx1ZUNhbGxiYWNrP3IudmFsdWVDYWxsYmFjayhkKTpkO2xldCBmPXQuc2xpY2Uobi5sZW5ndGgpO3JldHVybnt2YWx1ZTpkLHJlc3Q6Zn19fWZ1bmN0aW9uIGNsYShlLHQpe2ZvcihsZXQgciBpbiBlKWlmKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLHIpJiZ0KGVbcl0pKXJldHVybiByfWZ1bmN0aW9uIGRsYShlLHQpe2ZvcihsZXQgcj0wO3I8ZS5sZW5ndGg7cisrKWlmKHQoZVtyXSkpcmV0dXJuIHJ9dmFyIHdBdD1sKCgpPT57fSk7ZnVuY3Rpb24gTUF0KGUpe3JldHVybih0LHI9e30pPT57bGV0IGE9dC5tYXRjaChlLm1hdGNoUGF0dGVybik7aWYoIWEpcmV0dXJuIG51bGw7bGV0IGk9YVswXSxvPXQubWF0Y2goZS5wYXJzZVBhdHRlcm4pO2lmKCFvKXJldHVybiBudWxsO2xldCBuPWUudmFsdWVDYWxsYmFjaz9lLnZhbHVlQ2FsbGJhY2sob1swXSk6b1swXTtuPXIudmFsdWVDYWxsYmFjaz9yLnZhbHVlQ2FsbGJhY2sobik6bjtsZXQgcz10LnNsaWNlKGkubGVuZ3RoKTtyZXR1cm57dmFsdWU6bixyZXN0OnN9fX12YXIga0F0PWwoKCk9Pnt9KTt2YXIgdWxhLGZsYSxwbGEsaGxhLG1sYSxnbGEseGxhLGJsYSx2bGEseWxhLHdsYSxNbGEsU0F0LHpBdD1sKCgpPT57d0F0KCk7a0F0KCk7dWxhPS9eKFxkKykodGh8c3R8bmR8cmQpPy9pLGZsYT0vXGQrL2kscGxhPXtuYXJyb3c6L14oYnxhKS9pLGFiYnJldmlhdGVkOi9eKGJcLj9ccz9jXC4/fGJcLj9ccz9jXC4/XHM/ZVwuP3xhXC4/XHM/ZFwuP3xjXC4/XHM/ZVwuPykvaSx3aWRlOi9eKGJlZm9yZSBjaHJpc3R8YmVmb3JlIGNvbW1vbiBlcmF8YW5ubyBkb21pbml8Y29tbW9uIGVyYSkvaX0saGxhPXthbnk6Wy9eYi9pLC9eKGF8YykvaV19LG1sYT17bmFycm93Oi9eWzEyMzRdL2ksYWJicmV2aWF0ZWQ6L15xWzEyMzRdL2ksd2lkZTovXlsxMjM0XSh0aHxzdHxuZHxyZCk/IHF1YXJ0ZXIvaX0sZ2xhPXthbnk6Wy8xL2ksLzIvaSwvMy9pLC80L2ldfSx4bGE9e25hcnJvdzovXltqZm1hc29uZF0vaSxhYmJyZXZpYXRlZDovXihqYW58ZmVifG1hcnxhcHJ8bWF5fGp1bnxqdWx8YXVnfHNlcHxvY3R8bm92fGRlYykvaSx3aWRlOi9eKGphbnVhcnl8ZmVicnVhcnl8bWFyY2h8YXByaWx8bWF5fGp1bmV8anVseXxhdWd1c3R8c2VwdGVtYmVyfG9jdG9iZXJ8bm92ZW1iZXJ8ZGVjZW1iZXIpL2l9LGJsYT17bmFycm93OlsvXmovaSwvXmYvaSwvXm0vaSwvXmEvaSwvXm0vaSwvXmovaSwvXmovaSwvXmEvaSwvXnMvaSwvXm8vaSwvXm4vaSwvXmQvaV0sYW55OlsvXmphL2ksL15mL2ksL15tYXIvaSwvXmFwL2ksL15tYXkvaSwvXmp1bi9pLC9eanVsL2ksL15hdS9pLC9ecy9pLC9eby9pLC9ebi9pLC9eZC9pXX0sdmxhPXtuYXJyb3c6L15bc210d2ZdL2ksc2hvcnQ6L14oc3V8bW98dHV8d2V8dGh8ZnJ8c2EpL2ksYWJicmV2aWF0ZWQ6L14oc3VufG1vbnx0dWV8d2VkfHRodXxmcml8c2F0KS9pLHdpZGU6L14oc3VuZGF5fG1vbmRheXx0dWVzZGF5fHdlZG5lc2RheXx0aHVyc2RheXxmcmlkYXl8c2F0dXJkYXkpL2l9LHlsYT17bmFycm93OlsvXnMvaSwvXm0vaSwvXnQvaSwvXncvaSwvXnQvaSwvXmYvaSwvXnMvaV0sYW55OlsvXnN1L2ksL15tL2ksL150dS9pLC9edy9pLC9edGgvaSwvXmYvaSwvXnNhL2ldfSx3bGE9e25hcnJvdzovXihhfHB8bWl8bnwoaW4gdGhlfGF0KSAobW9ybmluZ3xhZnRlcm5vb258ZXZlbmluZ3xuaWdodCkpL2ksYW55Oi9eKFthcF1cLj9ccz9tXC4/fG1pZG5pZ2h0fG5vb258KGluIHRoZXxhdCkgKG1vcm5pbmd8YWZ0ZXJub29ufGV2ZW5pbmd8bmlnaHQpKS9pfSxNbGE9e2FueTp7YW06L15hL2kscG06L15wL2ksbWlkbmlnaHQ6L15taS9pLG5vb246L15uby9pLG1vcm5pbmc6L21vcm5pbmcvaSxhZnRlcm5vb246L2FmdGVybm9vbi9pLGV2ZW5pbmc6L2V2ZW5pbmcvaSxuaWdodDovbmlnaHQvaX19LFNBdD17b3JkaW5hbE51bWJlcjpNQXQoe21hdGNoUGF0dGVybjp1bGEscGFyc2VQYXR0ZXJuOmZsYSx2YWx1ZUNhbGxiYWNrOmU9PnBhcnNlSW50KGUsMTApfSksZXJhOk03KHttYXRjaFBhdHRlcm5zOnBsYSxkZWZhdWx0TWF0Y2hXaWR0aDoid2lkZSIscGFyc2VQYXR0ZXJuczpobGEsZGVmYXVsdFBhcnNlV2lkdGg6ImFueSJ9KSxxdWFydGVyOk03KHttYXRjaFBhdHRlcm5zOm1sYSxkZWZhdWx0TWF0Y2hXaWR0aDoid2lkZSIscGFyc2VQYXR0ZXJuczpnbGEsZGVmYXVsdFBhcnNlV2lkdGg6ImFueSIsdmFsdWVDYWxsYmFjazplPT5lKzF9KSxtb250aDpNNyh7bWF0Y2hQYXR0ZXJuczp4bGEsZGVmYXVsdE1hdGNoV2lkdGg6IndpZGUiLHBhcnNlUGF0dGVybnM6YmxhLGRlZmF1bHRQYXJzZVdpZHRoOiJhbnkifSksZGF5Ok03KHttYXRjaFBhdHRlcm5zOnZsYSxkZWZhdWx0TWF0Y2hXaWR0aDoid2lkZSIscGFyc2VQYXR0ZXJuczp5bGEsZGVmYXVsdFBhcnNlV2lkdGg6ImFueSJ9KSxkYXlQZXJpb2Q6TTcoe21hdGNoUGF0dGVybnM6d2xhLGRlZmF1bHRNYXRjaFdpZHRoOiJhbnkiLHBhcnNlUGF0dGVybnM6TWxhLGRlZmF1bHRQYXJzZVdpZHRoOiJhbnkifSl9fSk7dmFyICRvLHFqaSxDQXQ9bCgoKT0+e2ZBdCgpO21BdCgpO3hBdCgpO3lBdCgpO3pBdCgpOyRvPXtjb2RlOiJlbi1VUyIsZm9ybWF0RGlzdGFuY2U6dUF0LGZvcm1hdExvbmc6aEF0LGZvcm1hdFJlbGF0aXZlOmdBdCxsb2NhbGl6ZTp2QXQsbWF0Y2g6U0F0LG9wdGlvbnM6e3dlZWtTdGFydHNPbjowLGZpcnN0V2Vla0NvbnRhaW5zRGF0ZToxfX0scWppPSRvfSk7dmFyIGQ2PWwoKCk9PntDQXQoKX0pO2Z1bmN0aW9uIHVpZShlLHQpe2xldCByPW1lKGUsdD8uaW4pO3JldHVybiBRaShyLHk3KHIpKSsxfXZhciBaamksWTllPWwoKCk9PntlYygpO2xpZSgpO1ZlKCk7WmppPXVpZX0pO2Z1bmN0aW9uIGs3KGUsdCl7bGV0IHI9bWUoZSx0Py5pbiksYT0raGkociktK0tvKHIpO3JldHVybiBNYXRoLnJvdW5kKGEvRjIpKzF9dmFyIHRWaSxmaWU9bCgoKT0+e0t0KCk7SDIoKTtkNygpO1ZlKCk7dFZpPWs3fSk7ZnVuY3Rpb24gZzQoZSx0KXtsZXQgcj1tZShlLHQ/LmluKSxhPXIuZ2V0RnVsbFllYXIoKSxpPVlyKCksbz10Py5maXJzdFdlZWtDb250YWluc0RhdGU/P3Q/LmxvY2FsZT8ub3B0aW9ucz8uZmlyc3RXZWVrQ29udGFpbnNEYXRlPz9pLmZpcnN0V2Vla0NvbnRhaW5zRGF0ZT8/aS5sb2NhbGU/Lm9wdGlvbnM/LmZpcnN0V2Vla0NvbnRhaW5zRGF0ZT8/MSxuPUJlKHQ/LmlufHxlLDApO24uc2V0RnVsbFllYXIoYSsxLDAsbyksbi5zZXRIb3VycygwLDAsMCwwKTtsZXQgcz1kYShuLHQpLGM9QmUodD8uaW58fGUsMCk7Yy5zZXRGdWxsWWVhcihhLDAsbyksYy5zZXRIb3VycygwLDAsMCwwKTtsZXQgZD1kYShjLHQpO3JldHVybityPj0rcz9hKzE6K3I+PStkP2E6YS0xfXZhciBzVmksU3Y9bCgoKT0+e1IxKCk7X3QoKTticygpO1ZlKCk7c1ZpPWc0fSk7ZnVuY3Rpb24gdTYoZSx0KXtsZXQgcj1ZcigpLGE9dD8uZmlyc3RXZWVrQ29udGFpbnNEYXRlPz90Py5sb2NhbGU/Lm9wdGlvbnM/LmZpcnN0V2Vla0NvbnRhaW5zRGF0ZT8/ci5maXJzdFdlZWtDb250YWluc0RhdGU/P3IubG9jYWxlPy5vcHRpb25zPy5maXJzdFdlZWtDb250YWluc0RhdGU/PzEsaT1nNChlLHQpLG89QmUodD8uaW58fGUsMCk7cmV0dXJuIG8uc2V0RnVsbFllYXIoaSwwLGEpLG8uc2V0SG91cnMoMCwwLDAsMCksZGEobyx0KX12YXIgcFZpLHBpZT1sKCgpPT57UjEoKTtfdCgpO1N2KCk7YnMoKTtwVmk9dTZ9KTtmdW5jdGlvbiBTNyhlLHQpe2xldCByPW1lKGUsdD8uaW4pLGE9K2RhKHIsdCktK3U2KHIsdCk7cmV0dXJuIE1hdGgucm91bmQoYS9GMikrMX12YXIgdlZpLGhpZT1sKCgpPT57S3QoKTticygpO3BpZSgpO1ZlKCk7dlZpPVM3fSk7ZnVuY3Rpb24gdXQoZSx0KXtsZXQgcj1lPDA/Ii0iOiIiLGE9TWF0aC5hYnMoZSkudG9TdHJpbmcoKS5wYWRTdGFydCh0LCIwIik7cmV0dXJuIHIrYX12YXIgZjY9bCgoKT0+e30pO3ZhciBKbyxaOWU9bCgoKT0+e2Y2KCk7Sm89e3koZSx0KXtsZXQgcj1lLmdldEZ1bGxZZWFyKCksYT1yPjA/cjoxLXI7cmV0dXJuIHV0KHQ9PT0ieXkiP2ElMTAwOmEsdC5sZW5ndGgpfSxNKGUsdCl7bGV0IHI9ZS5nZXRNb250aCgpO3JldHVybiB0PT09Ik0iP1N0cmluZyhyKzEpOnV0KHIrMSwyKX0sZChlLHQpe3JldHVybiB1dChlLmdldERhdGUoKSx0Lmxlbmd0aCl9LGEoZSx0KXtsZXQgcj1lLmdldEhvdXJzKCkvMTI+PTE/InBtIjoiYW0iO3N3aXRjaCh0KXtjYXNlImEiOmNhc2UiYWEiOnJldHVybiByLnRvVXBwZXJDYXNlKCk7Y2FzZSJhYWEiOnJldHVybiByO2Nhc2UiYWFhYWEiOnJldHVybiByWzBdO2RlZmF1bHQ6cmV0dXJuIHI9PT0iYW0iPyJhLm0uIjoicC5tLiJ9fSxoKGUsdCl7cmV0dXJuIHV0KGUuZ2V0SG91cnMoKSUxMnx8MTIsdC5sZW5ndGgpfSxIKGUsdCl7cmV0dXJuIHV0KGUuZ2V0SG91cnMoKSx0Lmxlbmd0aCl9LG0oZSx0KXtyZXR1cm4gdXQoZS5nZXRNaW51dGVzKCksdC5sZW5ndGgpfSxzKGUsdCl7cmV0dXJuIHV0KGUuZ2V0U2Vjb25kcygpLHQubGVuZ3RoKX0sUyhlLHQpe2xldCByPXQubGVuZ3RoLGE9ZS5nZXRNaWxsaXNlY29uZHMoKSxpPU1hdGgudHJ1bmMoYSpNYXRoLnBvdygxMCxyLTMpKTtyZXR1cm4gdXQoaSx0Lmxlbmd0aCl9fX0pO2Z1bmN0aW9uIF9BdChlLHQ9IiIpe2xldCByPWU+MD8iLSI6IisiLGE9TWF0aC5hYnMoZSksaT1NYXRoLnRydW5jKGEvNjApLG89YSU2MDtyZXR1cm4gbz09PTA/citTdHJpbmcoaSk6citTdHJpbmcoaSkrdCt1dChvLDIpfWZ1bmN0aW9uIFRBdChlLHQpe3JldHVybiBlJTYwPT09MD8oZT4wPyItIjoiKyIpK3V0KE1hdGguYWJzKGUpLzYwLDIpOnA2KGUsdCl9ZnVuY3Rpb24gcDYoZSx0PSIiKXtsZXQgcj1lPjA/Ii0iOiIrIixhPU1hdGguYWJzKGUpLGk9dXQoTWF0aC50cnVuYyhhLzYwKSwyKSxvPXV0KGElNjAsMik7cmV0dXJuIHIraSt0K299dmFyIHo3LHp2LExBdD1sKCgpPT57WTllKCk7ZmllKCk7dTQoKTtoaWUoKTtTdigpO2Y2KCk7WjllKCk7ejc9e2FtOiJhbSIscG06InBtIixtaWRuaWdodDoibWlkbmlnaHQiLG5vb246Im5vb24iLG1vcm5pbmc6Im1vcm5pbmciLGFmdGVybm9vbjoiYWZ0ZXJub29uIixldmVuaW5nOiJldmVuaW5nIixuaWdodDoibmlnaHQifSx6dj17RzpmdW5jdGlvbihlLHQscil7bGV0IGE9ZS5nZXRGdWxsWWVhcigpPjA/MTowO3N3aXRjaCh0KXtjYXNlIkciOmNhc2UiR0ciOmNhc2UiR0dHIjpyZXR1cm4gci5lcmEoYSx7d2lkdGg6ImFiYnJldmlhdGVkIn0pO2Nhc2UiR0dHR0ciOnJldHVybiByLmVyYShhLHt3aWR0aDoibmFycm93In0pO2RlZmF1bHQ6cmV0dXJuIHIuZXJhKGEse3dpZHRoOiJ3aWRlIn0pfX0seTpmdW5jdGlvbihlLHQscil7aWYodD09PSJ5byIpe2xldCBhPWUuZ2V0RnVsbFllYXIoKSxpPWE+MD9hOjEtYTtyZXR1cm4gci5vcmRpbmFsTnVtYmVyKGkse3VuaXQ6InllYXIifSl9cmV0dXJuIEpvLnkoZSx0KX0sWTpmdW5jdGlvbihlLHQscixhKXtsZXQgaT1nNChlLGEpLG89aT4wP2k6MS1pO2lmKHQ9PT0iWVkiKXtsZXQgbj1vJTEwMDtyZXR1cm4gdXQobiwyKX1yZXR1cm4gdD09PSJZbyI/ci5vcmRpbmFsTnVtYmVyKG8se3VuaXQ6InllYXIifSk6dXQobyx0Lmxlbmd0aCl9LFI6ZnVuY3Rpb24oZSx0KXtsZXQgcj1zbyhlKTtyZXR1cm4gdXQocix0Lmxlbmd0aCl9LHU6ZnVuY3Rpb24oZSx0KXtsZXQgcj1lLmdldEZ1bGxZZWFyKCk7cmV0dXJuIHV0KHIsdC5sZW5ndGgpfSxROmZ1bmN0aW9uKGUsdCxyKXtsZXQgYT1NYXRoLmNlaWwoKGUuZ2V0TW9udGgoKSsxKS8zKTtzd2l0Y2godCl7Y2FzZSJRIjpyZXR1cm4gU3RyaW5nKGEpO2Nhc2UiUVEiOnJldHVybiB1dChhLDIpO2Nhc2UiUW8iOnJldHVybiByLm9yZGluYWxOdW1iZXIoYSx7dW5pdDoicXVhcnRlciJ9KTtjYXNlIlFRUSI6cmV0dXJuIHIucXVhcnRlcihhLHt3aWR0aDoiYWJicmV2aWF0ZWQiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSk7Y2FzZSJRUVFRUSI6cmV0dXJuIHIucXVhcnRlcihhLHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pO2RlZmF1bHQ6cmV0dXJuIHIucXVhcnRlcihhLHt3aWR0aDoid2lkZSIsY29udGV4dDoiZm9ybWF0dGluZyJ9KX19LHE6ZnVuY3Rpb24oZSx0LHIpe2xldCBhPU1hdGguY2VpbCgoZS5nZXRNb250aCgpKzEpLzMpO3N3aXRjaCh0KXtjYXNlInEiOnJldHVybiBTdHJpbmcoYSk7Y2FzZSJxcSI6cmV0dXJuIHV0KGEsMik7Y2FzZSJxbyI6cmV0dXJuIHIub3JkaW5hbE51bWJlcihhLHt1bml0OiJxdWFydGVyIn0pO2Nhc2UicXFxIjpyZXR1cm4gci5xdWFydGVyKGEse3dpZHRoOiJhYmJyZXZpYXRlZCIsY29udGV4dDoic3RhbmRhbG9uZSJ9KTtjYXNlInFxcXFxIjpyZXR1cm4gci5xdWFydGVyKGEse3dpZHRoOiJuYXJyb3ciLGNvbnRleHQ6InN0YW5kYWxvbmUifSk7ZGVmYXVsdDpyZXR1cm4gci5xdWFydGVyKGEse3dpZHRoOiJ3aWRlIixjb250ZXh0OiJzdGFuZGFsb25lIn0pfX0sTTpmdW5jdGlvbihlLHQscil7bGV0IGE9ZS5nZXRNb250aCgpO3N3aXRjaCh0KXtjYXNlIk0iOmNhc2UiTU0iOnJldHVybiBKby5NKGUsdCk7Y2FzZSJNbyI6cmV0dXJuIHIub3JkaW5hbE51bWJlcihhKzEse3VuaXQ6Im1vbnRoIn0pO2Nhc2UiTU1NIjpyZXR1cm4gci5tb250aChhLHt3aWR0aDoiYWJicmV2aWF0ZWQiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSk7Y2FzZSJNTU1NTSI6cmV0dXJuIHIubW9udGgoYSx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtkZWZhdWx0OnJldHVybiByLm1vbnRoKGEse3dpZHRoOiJ3aWRlIixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfX0sTDpmdW5jdGlvbihlLHQscil7bGV0IGE9ZS5nZXRNb250aCgpO3N3aXRjaCh0KXtjYXNlIkwiOnJldHVybiBTdHJpbmcoYSsxKTtjYXNlIkxMIjpyZXR1cm4gdXQoYSsxLDIpO2Nhc2UiTG8iOnJldHVybiByLm9yZGluYWxOdW1iZXIoYSsxLHt1bml0OiJtb250aCJ9KTtjYXNlIkxMTCI6cmV0dXJuIHIubW9udGgoYSx7d2lkdGg6ImFiYnJldmlhdGVkIixjb250ZXh0OiJzdGFuZGFsb25lIn0pO2Nhc2UiTExMTEwiOnJldHVybiByLm1vbnRoKGEse3dpZHRoOiJuYXJyb3ciLGNvbnRleHQ6InN0YW5kYWxvbmUifSk7ZGVmYXVsdDpyZXR1cm4gci5tb250aChhLHt3aWR0aDoid2lkZSIsY29udGV4dDoic3RhbmRhbG9uZSJ9KX19LHc6ZnVuY3Rpb24oZSx0LHIsYSl7bGV0IGk9UzcoZSxhKTtyZXR1cm4gdD09PSJ3byI/ci5vcmRpbmFsTnVtYmVyKGkse3VuaXQ6IndlZWsifSk6dXQoaSx0Lmxlbmd0aCl9LEk6ZnVuY3Rpb24oZSx0LHIpe2xldCBhPWs3KGUpO3JldHVybiB0PT09IklvIj9yLm9yZGluYWxOdW1iZXIoYSx7dW5pdDoid2VlayJ9KTp1dChhLHQubGVuZ3RoKX0sZDpmdW5jdGlvbihlLHQscil7cmV0dXJuIHQ9PT0iZG8iP3Iub3JkaW5hbE51bWJlcihlLmdldERhdGUoKSx7dW5pdDoiZGF0ZSJ9KTpKby5kKGUsdCl9LEQ6ZnVuY3Rpb24oZSx0LHIpe2xldCBhPXVpZShlKTtyZXR1cm4gdD09PSJEbyI/ci5vcmRpbmFsTnVtYmVyKGEse3VuaXQ6ImRheU9mWWVhciJ9KTp1dChhLHQubGVuZ3RoKX0sRTpmdW5jdGlvbihlLHQscil7bGV0IGE9ZS5nZXREYXkoKTtzd2l0Y2godCl7Y2FzZSJFIjpjYXNlIkVFIjpjYXNlIkVFRSI6cmV0dXJuIHIuZGF5KGEse3dpZHRoOiJhYmJyZXZpYXRlZCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtjYXNlIkVFRUVFIjpyZXR1cm4gci5kYXkoYSx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtjYXNlIkVFRUVFRSI6cmV0dXJuIHIuZGF5KGEse3dpZHRoOiJzaG9ydCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtkZWZhdWx0OnJldHVybiByLmRheShhLHt3aWR0aDoid2lkZSIsY29udGV4dDoiZm9ybWF0dGluZyJ9KX19LGU6ZnVuY3Rpb24oZSx0LHIsYSl7bGV0IGk9ZS5nZXREYXkoKSxvPShpLWEud2Vla1N0YXJ0c09uKzgpJTd8fDc7c3dpdGNoKHQpe2Nhc2UiZSI6cmV0dXJuIFN0cmluZyhvKTtjYXNlImVlIjpyZXR1cm4gdXQobywyKTtjYXNlImVvIjpyZXR1cm4gci5vcmRpbmFsTnVtYmVyKG8se3VuaXQ6ImRheSJ9KTtjYXNlImVlZSI6cmV0dXJuIHIuZGF5KGkse3dpZHRoOiJhYmJyZXZpYXRlZCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtjYXNlImVlZWVlIjpyZXR1cm4gci5kYXkoaSx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtjYXNlImVlZWVlZSI6cmV0dXJuIHIuZGF5KGkse3dpZHRoOiJzaG9ydCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtkZWZhdWx0OnJldHVybiByLmRheShpLHt3aWR0aDoid2lkZSIsY29udGV4dDoiZm9ybWF0dGluZyJ9KX19LGM6ZnVuY3Rpb24oZSx0LHIsYSl7bGV0IGk9ZS5nZXREYXkoKSxvPShpLWEud2Vla1N0YXJ0c09uKzgpJTd8fDc7c3dpdGNoKHQpe2Nhc2UiYyI6cmV0dXJuIFN0cmluZyhvKTtjYXNlImNjIjpyZXR1cm4gdXQobyx0Lmxlbmd0aCk7Y2FzZSJjbyI6cmV0dXJuIHIub3JkaW5hbE51bWJlcihvLHt1bml0OiJkYXkifSk7Y2FzZSJjY2MiOnJldHVybiByLmRheShpLHt3aWR0aDoiYWJicmV2aWF0ZWQiLGNvbnRleHQ6InN0YW5kYWxvbmUifSk7Y2FzZSJjY2NjYyI6cmV0dXJuIHIuZGF5KGkse3dpZHRoOiJuYXJyb3ciLGNvbnRleHQ6InN0YW5kYWxvbmUifSk7Y2FzZSJjY2NjY2MiOnJldHVybiByLmRheShpLHt3aWR0aDoic2hvcnQiLGNvbnRleHQ6InN0YW5kYWxvbmUifSk7ZGVmYXVsdDpyZXR1cm4gci5kYXkoaSx7d2lkdGg6IndpZGUiLGNvbnRleHQ6InN0YW5kYWxvbmUifSl9fSxpOmZ1bmN0aW9uKGUsdCxyKXtsZXQgYT1lLmdldERheSgpLGk9YT09PTA/NzphO3N3aXRjaCh0KXtjYXNlImkiOnJldHVybiBTdHJpbmcoaSk7Y2FzZSJpaSI6cmV0dXJuIHV0KGksdC5sZW5ndGgpO2Nhc2UiaW8iOnJldHVybiByLm9yZGluYWxOdW1iZXIoaSx7dW5pdDoiZGF5In0pO2Nhc2UiaWlpIjpyZXR1cm4gci5kYXkoYSx7d2lkdGg6ImFiYnJldmlhdGVkIixjb250ZXh0OiJmb3JtYXR0aW5nIn0pO2Nhc2UiaWlpaWkiOnJldHVybiByLmRheShhLHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pO2Nhc2UiaWlpaWlpIjpyZXR1cm4gci5kYXkoYSx7d2lkdGg6InNob3J0Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pO2RlZmF1bHQ6cmV0dXJuIHIuZGF5KGEse3dpZHRoOiJ3aWRlIixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfX0sYTpmdW5jdGlvbihlLHQscil7bGV0IGk9ZS5nZXRIb3VycygpLzEyPj0xPyJwbSI6ImFtIjtzd2l0Y2godCl7Y2FzZSJhIjpjYXNlImFhIjpyZXR1cm4gci5kYXlQZXJpb2QoaSx7d2lkdGg6ImFiYnJldmlhdGVkIixjb250ZXh0OiJmb3JtYXR0aW5nIn0pO2Nhc2UiYWFhIjpyZXR1cm4gci5kYXlQZXJpb2QoaSx7d2lkdGg6ImFiYnJldmlhdGVkIixjb250ZXh0OiJmb3JtYXR0aW5nIn0pLnRvTG93ZXJDYXNlKCk7Y2FzZSJhYWFhYSI6cmV0dXJuIHIuZGF5UGVyaW9kKGkse3dpZHRoOiJuYXJyb3ciLGNvbnRleHQ6ImZvcm1hdHRpbmcifSk7ZGVmYXVsdDpyZXR1cm4gci5kYXlQZXJpb2QoaSx7d2lkdGg6IndpZGUiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl9fSxiOmZ1bmN0aW9uKGUsdCxyKXtsZXQgYT1lLmdldEhvdXJzKCksaTtzd2l0Y2goYT09PTEyP2k9ejcubm9vbjphPT09MD9pPXo3Lm1pZG5pZ2h0Omk9YS8xMj49MT8icG0iOiJhbSIsdCl7Y2FzZSJiIjpjYXNlImJiIjpyZXR1cm4gci5kYXlQZXJpb2QoaSx7d2lkdGg6ImFiYnJldmlhdGVkIixjb250ZXh0OiJmb3JtYXR0aW5nIn0pO2Nhc2UiYmJiIjpyZXR1cm4gci5kYXlQZXJpb2QoaSx7d2lkdGg6ImFiYnJldmlhdGVkIixjb250ZXh0OiJmb3JtYXR0aW5nIn0pLnRvTG93ZXJDYXNlKCk7Y2FzZSJiYmJiYiI6cmV0dXJuIHIuZGF5UGVyaW9kKGkse3dpZHRoOiJuYXJyb3ciLGNvbnRleHQ6ImZvcm1hdHRpbmcifSk7ZGVmYXVsdDpyZXR1cm4gci5kYXlQZXJpb2QoaSx7d2lkdGg6IndpZGUiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl9fSxCOmZ1bmN0aW9uKGUsdCxyKXtsZXQgYT1lLmdldEhvdXJzKCksaTtzd2l0Y2goYT49MTc/aT16Ny5ldmVuaW5nOmE+PTEyP2k9ejcuYWZ0ZXJub29uOmE+PTQ/aT16Ny5tb3JuaW5nOmk9ejcubmlnaHQsdCl7Y2FzZSJCIjpjYXNlIkJCIjpjYXNlIkJCQiI6cmV0dXJuIHIuZGF5UGVyaW9kKGkse3dpZHRoOiJhYmJyZXZpYXRlZCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtjYXNlIkJCQkJCIjpyZXR1cm4gci5kYXlQZXJpb2QoaSx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtkZWZhdWx0OnJldHVybiByLmRheVBlcmlvZChpLHt3aWR0aDoid2lkZSIsY29udGV4dDoiZm9ybWF0dGluZyJ9KX19LGg6ZnVuY3Rpb24oZSx0LHIpe2lmKHQ9PT0iaG8iKXtsZXQgYT1lLmdldEhvdXJzKCklMTI7cmV0dXJuIGE9PT0wJiYoYT0xMiksci5vcmRpbmFsTnVtYmVyKGEse3VuaXQ6ImhvdXIifSl9cmV0dXJuIEpvLmgoZSx0KX0sSDpmdW5jdGlvbihlLHQscil7cmV0dXJuIHQ9PT0iSG8iP3Iub3JkaW5hbE51bWJlcihlLmdldEhvdXJzKCkse3VuaXQ6ImhvdXIifSk6Sm8uSChlLHQpfSxLOmZ1bmN0aW9uKGUsdCxyKXtsZXQgYT1lLmdldEhvdXJzKCklMTI7cmV0dXJuIHQ9PT0iS28iP3Iub3JkaW5hbE51bWJlcihhLHt1bml0OiJob3VyIn0pOnV0KGEsdC5sZW5ndGgpfSxrOmZ1bmN0aW9uKGUsdCxyKXtsZXQgYT1lLmdldEhvdXJzKCk7cmV0dXJuIGE9PT0wJiYoYT0yNCksdD09PSJrbyI/ci5vcmRpbmFsTnVtYmVyKGEse3VuaXQ6ImhvdXIifSk6dXQoYSx0Lmxlbmd0aCl9LG06ZnVuY3Rpb24oZSx0LHIpe3JldHVybiB0PT09Im1vIj9yLm9yZGluYWxOdW1iZXIoZS5nZXRNaW51dGVzKCkse3VuaXQ6Im1pbnV0ZSJ9KTpKby5tKGUsdCl9LHM6ZnVuY3Rpb24oZSx0LHIpe3JldHVybiB0PT09InNvIj9yLm9yZGluYWxOdW1iZXIoZS5nZXRTZWNvbmRzKCkse3VuaXQ6InNlY29uZCJ9KTpKby5zKGUsdCl9LFM6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gSm8uUyhlLHQpfSxYOmZ1bmN0aW9uKGUsdCxyKXtsZXQgYT1lLmdldFRpbWV6b25lT2Zmc2V0KCk7aWYoYT09PTApcmV0dXJuIloiO3N3aXRjaCh0KXtjYXNlIlgiOnJldHVybiBUQXQoYSk7Y2FzZSJYWFhYIjpjYXNlIlhYIjpyZXR1cm4gcDYoYSk7ZGVmYXVsdDpyZXR1cm4gcDYoYSwiOiIpfX0seDpmdW5jdGlvbihlLHQscil7bGV0IGE9ZS5nZXRUaW1lem9uZU9mZnNldCgpO3N3aXRjaCh0KXtjYXNlIngiOnJldHVybiBUQXQoYSk7Y2FzZSJ4eHh4IjpjYXNlInh4IjpyZXR1cm4gcDYoYSk7ZGVmYXVsdDpyZXR1cm4gcDYoYSwiOiIpfX0sTzpmdW5jdGlvbihlLHQscil7bGV0IGE9ZS5nZXRUaW1lem9uZU9mZnNldCgpO3N3aXRjaCh0KXtjYXNlIk8iOmNhc2UiT08iOmNhc2UiT09PIjpyZXR1cm4iR01UIitfQXQoYSwiOiIpO2RlZmF1bHQ6cmV0dXJuIkdNVCIrcDYoYSwiOiIpfX0sejpmdW5jdGlvbihlLHQscil7bGV0IGE9ZS5nZXRUaW1lem9uZU9mZnNldCgpO3N3aXRjaCh0KXtjYXNlInoiOmNhc2UienoiOmNhc2Uienp6IjpyZXR1cm4iR01UIitfQXQoYSwiOiIpO2RlZmF1bHQ6cmV0dXJuIkdNVCIrcDYoYSwiOiIpfX0sdDpmdW5jdGlvbihlLHQscil7bGV0IGE9TWF0aC50cnVuYygrZS8xZTMpO3JldHVybiB1dChhLHQubGVuZ3RoKX0sVDpmdW5jdGlvbihlLHQscil7cmV0dXJuIHV0KCtlLHQubGVuZ3RoKX19fSk7dmFyIERBdCxBQXQsa2xhLHg0LFg5ZT1sKCgpPT57REF0PShlLHQpPT57c3dpdGNoKGUpe2Nhc2UiUCI6cmV0dXJuIHQuZGF0ZSh7d2lkdGg6InNob3J0In0pO2Nhc2UiUFAiOnJldHVybiB0LmRhdGUoe3dpZHRoOiJtZWRpdW0ifSk7Y2FzZSJQUFAiOnJldHVybiB0LmRhdGUoe3dpZHRoOiJsb25nIn0pO2RlZmF1bHQ6cmV0dXJuIHQuZGF0ZSh7d2lkdGg6ImZ1bGwifSl9fSxBQXQ9KGUsdCk9Pntzd2l0Y2goZSl7Y2FzZSJwIjpyZXR1cm4gdC50aW1lKHt3aWR0aDoic2hvcnQifSk7Y2FzZSJwcCI6cmV0dXJuIHQudGltZSh7d2lkdGg6Im1lZGl1bSJ9KTtjYXNlInBwcCI6cmV0dXJuIHQudGltZSh7d2lkdGg6ImxvbmcifSk7ZGVmYXVsdDpyZXR1cm4gdC50aW1lKHt3aWR0aDoiZnVsbCJ9KX19LGtsYT0oZSx0KT0+e2xldCByPWUubWF0Y2goLyhQKykocCspPy8pfHxbXSxhPXJbMV0saT1yWzJdO2lmKCFpKXJldHVybiBEQXQoZSx0KTtsZXQgbztzd2l0Y2goYSl7Y2FzZSJQIjpvPXQuZGF0ZVRpbWUoe3dpZHRoOiJzaG9ydCJ9KTticmVhaztjYXNlIlBQIjpvPXQuZGF0ZVRpbWUoe3dpZHRoOiJtZWRpdW0ifSk7YnJlYWs7Y2FzZSJQUFAiOm89dC5kYXRlVGltZSh7d2lkdGg6ImxvbmcifSk7YnJlYWs7ZGVmYXVsdDpvPXQuZGF0ZVRpbWUoe3dpZHRoOiJmdWxsIn0pO2JyZWFrfXJldHVybiBvLnJlcGxhY2UoInt7ZGF0ZX19IixEQXQoYSx0KSkucmVwbGFjZSgie3t0aW1lfX0iLEFBdChpLHQpKX0seDQ9e3A6QUF0LFA6a2xhfX0pO2Z1bmN0aW9uIG1pZShlKXtyZXR1cm4gU2xhLnRlc3QoZSl9ZnVuY3Rpb24gZ2llKGUpe3JldHVybiB6bGEudGVzdChlKX1mdW5jdGlvbiBDdihlLHQscil7bGV0IGE9X2xhKGUsdCxyKTtpZihjb25zb2xlLndhcm4oYSksQ2xhLmluY2x1ZGVzKGUpKXRocm93IG5ldyBSYW5nZUVycm9yKGEpfWZ1bmN0aW9uIF9sYShlLHQscil7bGV0IGE9ZVswXT09PSJZIj8ieWVhcnMiOiJkYXlzIG9mIHRoZSBtb250aCI7cmV0dXJuYFVzZSBcYCR7ZS50b0xvd2VyQ2FzZSgpfVxgIGluc3RlYWQgb2YgXGAke2V9XGAgKGluIFxgJHt0fVxgKSBmb3IgZm9ybWF0dGluZyAke2F9IHRvIHRoZSBpbnB1dCBcYCR7cn1cYDsgc2VlOiBodHRwczovL2dpdGh1Yi5jb20vZGF0ZS1mbnMvZGF0ZS1mbnMvYmxvYi9tYXN0ZXIvZG9jcy91bmljb2RlVG9rZW5zLm1kYH12YXIgU2xhLHpsYSxDbGEsUTllPWwoKCk9PntTbGE9L15EKyQvLHpsYT0vXlkrJC8sQ2xhPVsiRCIsIkREIiwiWVkiLCJZWVlZIl19KTtmdW5jdGlvbiBfdihlLHQscil7bGV0IGE9WXIoKSxpPXI/LmxvY2FsZT8/YS5sb2NhbGU/PyRvLG89cj8uZmlyc3RXZWVrQ29udGFpbnNEYXRlPz9yPy5sb2NhbGU/Lm9wdGlvbnM/LmZpcnN0V2Vla0NvbnRhaW5zRGF0ZT8/YS5maXJzdFdlZWtDb250YWluc0RhdGU/P2EubG9jYWxlPy5vcHRpb25zPy5maXJzdFdlZWtDb250YWluc0RhdGU/PzEsbj1yPy53ZWVrU3RhcnRzT24/P3I/LmxvY2FsZT8ub3B0aW9ucz8ud2Vla1N0YXJ0c09uPz9hLndlZWtTdGFydHNPbj8/YS5sb2NhbGU/Lm9wdGlvbnM/LndlZWtTdGFydHNPbj8/MCxzPW1lKGUscj8uaW4pO2lmKCF1MShzKSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiSW52YWxpZCB0aW1lIHZhbHVlIik7bGV0IGM9dC5tYXRjaChMbGEpLm1hcChmPT57bGV0IHU9ZlswXTtpZih1PT09InAifHx1PT09IlAiKXtsZXQgcD14NFt1XTtyZXR1cm4gcChmLGkuZm9ybWF0TG9uZyl9cmV0dXJuIGZ9KS5qb2luKCIiKS5tYXRjaChUbGEpLm1hcChmPT57aWYoZj09PSInJyIpcmV0dXJue2lzVG9rZW46ITEsdmFsdWU6IicifTtsZXQgdT1mWzBdO2lmKHU9PT0iJyIpcmV0dXJue2lzVG9rZW46ITEsdmFsdWU6JGxhKGYpfTtpZih6dlt1XSlyZXR1cm57aXNUb2tlbjohMCx2YWx1ZTpmfTtpZih1Lm1hdGNoKEVsYSkpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkZvcm1hdCBzdHJpbmcgY29udGFpbnMgYW4gdW5lc2NhcGVkIGxhdGluIGFscGhhYmV0IGNoYXJhY3RlciBgIit1KyJgIik7cmV0dXJue2lzVG9rZW46ITEsdmFsdWU6Zn19KTtpLmxvY2FsaXplLnByZXByb2Nlc3NvciYmKGM9aS5sb2NhbGl6ZS5wcmVwcm9jZXNzb3IocyxjKSk7bGV0IGQ9e2ZpcnN0V2Vla0NvbnRhaW5zRGF0ZTpvLHdlZWtTdGFydHNPbjpuLGxvY2FsZTppfTtyZXR1cm4gYy5tYXAoZj0+e2lmKCFmLmlzVG9rZW4pcmV0dXJuIGYudmFsdWU7bGV0IHU9Zi52YWx1ZTsoIXI/LnVzZUFkZGl0aW9uYWxXZWVrWWVhclRva2VucyYmZ2llKHUpfHwhcj8udXNlQWRkaXRpb25hbERheU9mWWVhclRva2VucyYmbWllKHUpKSYmQ3YodSx0LFN0cmluZyhlKSk7bGV0IHA9enZbdVswXV07cmV0dXJuIHAocyx1LGkubG9jYWxpemUsZCl9KS5qb2luKCIiKX1mdW5jdGlvbiAkbGEoZSl7bGV0IHQ9ZS5tYXRjaChEbGEpO3JldHVybiB0P3RbMV0ucmVwbGFjZShBbGEsIiciKTplfXZhciBUbGEsTGxhLERsYSxBbGEsRWxhLEhWaSxLOWU9bCgoKT0+e2Q2KCk7UjEoKTtMQXQoKTtYOWUoKTtROWUoKTt0YygpO1ZlKCk7VGxhPS9beVlRcU1Md0lkRGVjaWhIS2ttc11vfChcdylcMSp8Jyd8JygnJ3xbXiddKSsoJ3wkKXwuL2csTGxhPS9QK3ArfFArfHArfCcnfCcoJyd8W14nXSkrKCd8JCl8Li9nLERsYT0vXicoW15dKj8pJz8kLyxBbGE9LycnL2csRWxhPS9bYS16QS1aXS87SFZpPV92fSk7ZnVuY3Rpb24geGllKGUsdCxyKXtsZXQgYT1ZcigpLGk9cj8ubG9jYWxlPz9hLmxvY2FsZT8/JG8sbz0yNTIwLG49QjEoZSx0KTtpZihpc05hTihuKSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiSW52YWxpZCB0aW1lIHZhbHVlIik7bGV0IHM9T2JqZWN0LmFzc2lnbih7fSxyLHthZGRTdWZmaXg6cj8uYWRkU3VmZml4LGNvbXBhcmlzb246bn0pLFtjLGRdPU10KHI/LmluLC4uLm4+MD9bdCxlXTpbZSx0XSksZj1WMihkLGMpLHU9KFVhKGQpLVVhKGMpKS8xZTMscD1NYXRoLnJvdW5kKChmLXUpLzYwKSxoO2lmKHA8MilyZXR1cm4gcj8uaW5jbHVkZVNlY29uZHM/Zjw1P2kuZm9ybWF0RGlzdGFuY2UoImxlc3NUaGFuWFNlY29uZHMiLDUscyk6ZjwxMD9pLmZvcm1hdERpc3RhbmNlKCJsZXNzVGhhblhTZWNvbmRzIiwxMCxzKTpmPDIwP2kuZm9ybWF0RGlzdGFuY2UoImxlc3NUaGFuWFNlY29uZHMiLDIwLHMpOmY8NDA/aS5mb3JtYXREaXN0YW5jZSgiaGFsZkFNaW51dGUiLDAscyk6Zjw2MD9pLmZvcm1hdERpc3RhbmNlKCJsZXNzVGhhblhNaW51dGVzIiwxLHMpOmkuZm9ybWF0RGlzdGFuY2UoInhNaW51dGVzIiwxLHMpOnA9PT0wP2kuZm9ybWF0RGlzdGFuY2UoImxlc3NUaGFuWE1pbnV0ZXMiLDEscyk6aS5mb3JtYXREaXN0YW5jZSgieE1pbnV0ZXMiLHAscyk7aWYocDw0NSlyZXR1cm4gaS5mb3JtYXREaXN0YW5jZSgieE1pbnV0ZXMiLHAscyk7aWYocDw5MClyZXR1cm4gaS5mb3JtYXREaXN0YW5jZSgiYWJvdXRYSG91cnMiLDEscyk7aWYocDxzNyl7bGV0IGI9TWF0aC5yb3VuZChwLzYwKTtyZXR1cm4gaS5mb3JtYXREaXN0YW5jZSgiYWJvdXRYSG91cnMiLGIscyl9ZWxzZXtpZihwPG8pcmV0dXJuIGkuZm9ybWF0RGlzdGFuY2UoInhEYXlzIiwxLHMpO2lmKHA8bDQpe2xldCBiPU1hdGgucm91bmQocC9zNyk7cmV0dXJuIGkuZm9ybWF0RGlzdGFuY2UoInhEYXlzIixiLHMpfWVsc2UgaWYocDxsNCoyKXJldHVybiBoPU1hdGgucm91bmQocC9sNCksaS5mb3JtYXREaXN0YW5jZSgiYWJvdXRYTW9udGhzIixoLHMpfWlmKGg9aDQoZCxjKSxoPDEyKXtsZXQgYj1NYXRoLnJvdW5kKHAvbDQpO3JldHVybiBpLmZvcm1hdERpc3RhbmNlKCJ4TW9udGhzIixiLHMpfWVsc2V7bGV0IGI9aCUxMix4PU1hdGgudHJ1bmMoaC8xMik7cmV0dXJuIGI8Mz9pLmZvcm1hdERpc3RhbmNlKCJhYm91dFhZZWFycyIseCxzKTpiPDk/aS5mb3JtYXREaXN0YW5jZSgib3ZlclhZZWFycyIseCxzKTppLmZvcm1hdERpc3RhbmNlKCJhbG1vc3RYWWVhcnMiLHgrMSxzKX19dmFyIFFWaSxKOWU9bCgoKT0+e2Q2KCk7UjEoKTtKbCgpO2FhKCk7bzYoKTtLdCgpO3d2KCk7TXYoKTtRVmk9eGllfSk7ZnVuY3Rpb24gYmllKGUsdCxyKXtsZXQgYT1ZcigpLGk9cj8ubG9jYWxlPz9hLmxvY2FsZT8/JG8sbz1CMShlLHQpO2lmKGlzTmFOKG8pKXRocm93IG5ldyBSYW5nZUVycm9yKCJJbnZhbGlkIHRpbWUgdmFsdWUiKTtsZXQgbj1PYmplY3QuYXNzaWduKHt9LHIse2FkZFN1ZmZpeDpyPy5hZGRTdWZmaXgsY29tcGFyaXNvbjpvfSksW3MsY109TXQocj8uaW4sLi4ubz4wP1t0LGVdOltlLHRdKSxkPUgxKHI/LnJvdW5kaW5nTWV0aG9kPz8icm91bmQiKSxmPWMuZ2V0VGltZSgpLXMuZ2V0VGltZSgpLHU9Zi9PMSxwPVVhKGMpLVVhKHMpLGg9KGYtcCkvTzEsYj1yPy51bml0LHg7aWYoYj94PWI6dTwxP3g9InNlY29uZCI6dTw2MD94PSJtaW51dGUiOnU8czc/eD0iaG91ciI6aDxsND94PSJkYXkiOmg8TTllP3g9Im1vbnRoIjp4PSJ5ZWFyIix4PT09InNlY29uZCIpe2xldCBnPWQoZi8xZTMpO3JldHVybiBpLmZvcm1hdERpc3RhbmNlKCJ4U2Vjb25kcyIsZyxuKX1lbHNlIGlmKHg9PT0ibWludXRlIil7bGV0IGc9ZCh1KTtyZXR1cm4gaS5mb3JtYXREaXN0YW5jZSgieE1pbnV0ZXMiLGcsbil9ZWxzZSBpZih4PT09ImhvdXIiKXtsZXQgZz1kKHUvNjApO3JldHVybiBpLmZvcm1hdERpc3RhbmNlKCJ4SG91cnMiLGcsbil9ZWxzZSBpZih4PT09ImRheSIpe2xldCBnPWQoaC9zNyk7cmV0dXJuIGkuZm9ybWF0RGlzdGFuY2UoInhEYXlzIixnLG4pfWVsc2UgaWYoeD09PSJtb250aCIpe2xldCBnPWQoaC9sNCk7cmV0dXJuIGc9PT0xMiYmYiE9PSJtb250aCI/aS5mb3JtYXREaXN0YW5jZSgieFllYXJzIiwxLG4pOmkuZm9ybWF0RGlzdGFuY2UoInhNb250aHMiLGcsbil9ZWxzZXtsZXQgZz1kKGgvTTllKTtyZXR1cm4gaS5mb3JtYXREaXN0YW5jZSgieFllYXJzIixnLG4pfX12YXIgblVpLGVnZT1sKCgpPT57ZDYoKTtSMSgpO3JjKCk7SmwoKTthYSgpO282KCk7S3QoKTtuVWk9YmllfSk7ZnVuY3Rpb24gRUF0KGUsdCl7cmV0dXJuIHhpZShlLHNyKGUpLHQpfXZhciBkVWksJEF0PWwoKCk9PntQaSgpO0o5ZSgpO2RVaT1FQXR9KTtmdW5jdGlvbiBQQXQoZSx0KXtyZXR1cm4gYmllKGUsc3IoZSksdCl9dmFyIGhVaSxJQXQ9bCgoKT0+e1BpKCk7ZWdlKCk7aFVpPVBBdH0pO2Z1bmN0aW9uIE5BdChlLHQpe2xldCByPVlyKCksYT10Py5sb2NhbGU/P3IubG9jYWxlPz8kbyxpPXQ/LmZvcm1hdD8/UGxhLG89dD8uemVybz8/ITEsbj10Py5kZWxpbWl0ZXI/PyIgIjtyZXR1cm4gYS5mb3JtYXREaXN0YW5jZT9pLnJlZHVjZSgoYyxkKT0+e2xldCBmPWB4JHtkLnJlcGxhY2UoLyheLikvLHA9PnAudG9VcHBlckNhc2UoKSl9YCx1PWVbZF07cmV0dXJuIHUhPT12b2lkIDAmJihvfHxlW2RdKT9jLmNvbmNhdChhLmZvcm1hdERpc3RhbmNlKGYsdSkpOmN9LFtdKS5qb2luKG4pOiIifXZhciBQbGEsYlVpLEZBdD1sKCgpPT57ZDYoKTtSMSgpO1BsYT1bInllYXJzIiwibW9udGhzIiwid2Vla3MiLCJkYXlzIiwiaG91cnMiLCJtaW51dGVzIiwic2Vjb25kcyJdO2JVaT1OQXR9KTtmdW5jdGlvbiBPQXQoZSx0KXtsZXQgcj1tZShlLHQ/LmluKTtpZihpc05hTigrcikpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkludmFsaWQgdGltZSB2YWx1ZSIpO2xldCBhPXQ/LmZvcm1hdD8/ImV4dGVuZGVkIixpPXQ/LnJlcHJlc2VudGF0aW9uPz8iY29tcGxldGUiLG89IiIsbj0iIixzPWE9PT0iZXh0ZW5kZWQiPyItIjoiIixjPWE9PT0iZXh0ZW5kZWQiPyI6IjoiIjtpZihpIT09InRpbWUiKXtsZXQgZD11dChyLmdldERhdGUoKSwyKSxmPXV0KHIuZ2V0TW9udGgoKSsxLDIpO289YCR7dXQoci5nZXRGdWxsWWVhcigpLDQpfSR7c30ke2Z9JHtzfSR7ZH1gfWlmKGkhPT0iZGF0ZSIpe2xldCBkPXIuZ2V0VGltZXpvbmVPZmZzZXQoKTtpZihkIT09MCl7bGV0IHg9TWF0aC5hYnMoZCksZz11dChNYXRoLnRydW5jKHgvNjApLDIpLHY9dXQoeCU2MCwyKTtuPWAke2Q8MD8iKyI6Ii0ifSR7Z306JHt2fWB9ZWxzZSBuPSJaIjtsZXQgZj11dChyLmdldEhvdXJzKCksMiksdT11dChyLmdldE1pbnV0ZXMoKSwyKSxwPXV0KHIuZ2V0U2Vjb25kcygpLDIpLGg9bz09PSIiPyIiOiJUIixiPVtmLHUscF0uam9pbihjKTtvPWAke299JHtofSR7Yn0ke259YH1yZXR1cm4gb312YXIgTVVpLFJBdD1sKCgpPT57ZjYoKTtWZSgpO01VaT1PQXR9KTtmdW5jdGlvbiBCQXQoZSx0KXtsZXQgcj1tZShlLHQ/LmluKTtpZighdTEocikpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkludmFsaWQgdGltZSB2YWx1ZSIpO2xldCBhPXQ/LmZvcm1hdD8/ImV4dGVuZGVkIixpPXQ/LnJlcHJlc2VudGF0aW9uPz8iY29tcGxldGUiLG89IiIsbj1hPT09ImV4dGVuZGVkIj8iLSI6IiIscz1hPT09ImV4dGVuZGVkIj8iOiI6IiI7aWYoaSE9PSJ0aW1lIil7bGV0IGM9dXQoci5nZXREYXRlKCksMiksZD11dChyLmdldE1vbnRoKCkrMSwyKTtvPWAke3V0KHIuZ2V0RnVsbFllYXIoKSw0KX0ke259JHtkfSR7bn0ke2N9YH1pZihpIT09ImRhdGUiKXtsZXQgYz11dChyLmdldEhvdXJzKCksMiksZD11dChyLmdldE1pbnV0ZXMoKSwyKSxmPXV0KHIuZ2V0U2Vjb25kcygpLDIpO289YCR7b30ke289PT0iIj8iIjoiICJ9JHtjfSR7c30ke2R9JHtzfSR7Zn1gfXJldHVybiBvfXZhciBfVWksSEF0PWwoKCk9PntmNigpO3RjKCk7VmUoKTtfVWk9QkF0fSk7ZnVuY3Rpb24gcUF0KGUpe2xldHt5ZWFyczp0PTAsbW9udGhzOnI9MCxkYXlzOmE9MCxob3VyczppPTAsbWludXRlczpvPTAsc2Vjb25kczpuPTB9PWU7cmV0dXJuYFAke3R9WSR7cn1NJHthfURUJHtpfUgke299TSR7bn1TYH12YXIgTFVpLGpBdD1sKCgpPT57TFVpPXFBdH0pO2Z1bmN0aW9uIFZBdChlLHQpe2xldCByPW1lKGUsdD8uaW4pO2lmKCF1MShyKSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiSW52YWxpZCB0aW1lIHZhbHVlIik7bGV0IGE9dD8uZnJhY3Rpb25EaWdpdHM/PzAsaT11dChyLmdldERhdGUoKSwyKSxvPXV0KHIuZ2V0TW9udGgoKSsxLDIpLG49ci5nZXRGdWxsWWVhcigpLHM9dXQoci5nZXRIb3VycygpLDIpLGM9dXQoci5nZXRNaW51dGVzKCksMiksZD11dChyLmdldFNlY29uZHMoKSwyKSxmPSIiO2lmKGE+MCl7bGV0IGg9ci5nZXRNaWxsaXNlY29uZHMoKSxiPU1hdGgudHJ1bmMoaCpNYXRoLnBvdygxMCxhLTMpKTtmPSIuIit1dChiLGEpfWxldCB1PSIiLHA9ci5nZXRUaW1lem9uZU9mZnNldCgpO2lmKHAhPT0wKXtsZXQgaD1NYXRoLmFicyhwKSxiPXV0KE1hdGgudHJ1bmMoaC82MCksMikseD11dChoJTYwLDIpO3U9YCR7cDwwPyIrIjoiLSJ9JHtifToke3h9YH1lbHNlIHU9IloiO3JldHVybmAke259LSR7b30tJHtpfVQke3N9OiR7Y306JHtkfSR7Zn0ke3V9YH12YXIgUFVpLFVBdD1sKCgpPT57ZjYoKTt0YygpO1ZlKCk7UFVpPVZBdH0pO2Z1bmN0aW9uIFdBdChlKXtsZXQgdD1tZShlKTtpZighdTEodCkpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkludmFsaWQgdGltZSB2YWx1ZSIpO2xldCByPUlsYVt0LmdldFVUQ0RheSgpXSxhPXV0KHQuZ2V0VVRDRGF0ZSgpLDIpLGk9TmxhW3QuZ2V0VVRDTW9udGgoKV0sbz10LmdldFVUQ0Z1bGxZZWFyKCksbj11dCh0LmdldFVUQ0hvdXJzKCksMikscz11dCh0LmdldFVUQ01pbnV0ZXMoKSwyKSxjPXV0KHQuZ2V0VVRDU2Vjb25kcygpLDIpO3JldHVybmAke3J9LCAke2F9ICR7aX0gJHtvfSAke259OiR7c306JHtjfSBHTVRgfXZhciBJbGEsTmxhLFJVaSxHQXQ9bCgoKT0+e2Y2KCk7dGMoKTtWZSgpO0lsYT1bIlN1biIsIk1vbiIsIlR1ZSIsIldlZCIsIlRodSIsIkZyaSIsIlNhdCJdLE5sYT1bIkphbiIsIkZlYiIsIk1hciIsIkFwciIsIk1heSIsIkp1biIsIkp1bCIsIkF1ZyIsIlNlcCIsIk9jdCIsIk5vdiIsIkRlYyJdO1JVaT1XQXR9KTtmdW5jdGlvbiBZQXQoZSx0LHIpe2xldFthLGldPU10KHI/LmluLGUsdCksbz1ZcigpLG49cj8ubG9jYWxlPz9vLmxvY2FsZT8/JG8scz1yPy53ZWVrU3RhcnRzT24/P3I/LmxvY2FsZT8ub3B0aW9ucz8ud2Vla1N0YXJ0c09uPz9vLndlZWtTdGFydHNPbj8/by5sb2NhbGU/Lm9wdGlvbnM/LndlZWtTdGFydHNPbj8/MCxjPVFpKGEsaSk7aWYoaXNOYU4oYykpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkludmFsaWQgdGltZSB2YWx1ZSIpO2xldCBkO2M8LTY/ZD0ib3RoZXIiOmM8LTE/ZD0ibGFzdFdlZWsiOmM8MD9kPSJ5ZXN0ZXJkYXkiOmM8MT9kPSJ0b2RheSI6YzwyP2Q9InRvbW9ycm93IjpjPDc/ZD0ibmV4dFdlZWsiOmQ9Im90aGVyIjtsZXQgZj1uLmZvcm1hdFJlbGF0aXZlKGQsYSxpLHtsb2NhbGU6bix3ZWVrU3RhcnRzT246c30pO3JldHVybiBfdihhLGYse2xvY2FsZTpuLHdlZWtTdGFydHNPbjpzfSl9dmFyIFdVaSxaQXQ9bCgoKT0+e2Q2KCk7UjEoKTthYSgpO2VjKCk7SzllKCk7V1VpPVlBdH0pO2Z1bmN0aW9uIFhBdChlLHQpe3JldHVybiBtZShlKjFlMyx0Py5pbil9dmFyIFpVaSxRQXQ9bCgoKT0+e1ZlKCk7WlVpPVhBdH0pO2Z1bmN0aW9uIHZpZShlLHQpe3JldHVybiBtZShlLHQ/LmluKS5nZXREYXRlKCl9dmFyIEtVaSx0Z2U9bCgoKT0+e1ZlKCk7S1VpPXZpZX0pO2Z1bmN0aW9uIGI0KGUsdCl7cmV0dXJuIG1lKGUsdD8uaW4pLmdldERheSgpfXZhciB0V2ksVHY9bCgoKT0+e1ZlKCk7dFdpPWI0fSk7ZnVuY3Rpb24geWllKGUsdCl7bGV0IHI9bWUoZSx0Py5pbiksYT1yLmdldEZ1bGxZZWFyKCksaT1yLmdldE1vbnRoKCksbz1CZShyLDApO3JldHVybiBvLnNldEZ1bGxZZWFyKGEsaSsxLDApLG8uc2V0SG91cnMoMCwwLDAsMCksby5nZXREYXRlKCl9dmFyIG9XaSxyZ2U9bCgoKT0+e190KCk7VmUoKTtvV2k9eWllfSk7ZnVuY3Rpb24gd2llKGUsdCl7bGV0IGE9bWUoZSx0Py5pbikuZ2V0RnVsbFllYXIoKTtyZXR1cm4gYSU0MDA9PT0wfHxhJTQ9PT0wJiZhJTEwMCE9PTB9dmFyIGxXaSxhZ2U9bCgoKT0+e1ZlKCk7bFdpPXdpZX0pO2Z1bmN0aW9uIEtBdChlLHQpe2xldCByPW1lKGUsdD8uaW4pO3JldHVybiBOdW1iZXIuaXNOYU4oK3IpP05hTjp3aWUocik/MzY2OjM2NX12YXIgZldpLEpBdD1sKCgpPT57YWdlKCk7VmUoKTtmV2k9S0F0fSk7ZnVuY3Rpb24gZUV0KGUsdCl7bGV0IGE9bWUoZSx0Py5pbikuZ2V0RnVsbFllYXIoKTtyZXR1cm4gTWF0aC5mbG9vcihhLzEwKSoxMH12YXIgbVdpLHRFdD1sKCgpPT57VmUoKTttV2k9ZUV0fSk7ZnVuY3Rpb24gTWllKCl7cmV0dXJuIE9iamVjdC5hc3NpZ24oe30sWXIoKSl9dmFyIGJXaSxpZ2U9bCgoKT0+e1IxKCk7YldpPU1pZX0pO2Z1bmN0aW9uIHJFdChlLHQpe3JldHVybiBtZShlLHQ/LmluKS5nZXRIb3VycygpfXZhciB3V2ksYUV0PWwoKCk9PntWZSgpO3dXaT1yRXR9KTtmdW5jdGlvbiBraWUoZSx0KXtsZXQgcj1tZShlLHQ/LmluKS5nZXREYXkoKTtyZXR1cm4gcj09PTA/NzpyfXZhciBTV2ksb2dlPWwoKCk9PntWZSgpO1NXaT1raWV9KTtmdW5jdGlvbiBpRXQoZSx0KXtsZXQgcj1LbyhlLHQpLGk9K0tvKGY0KHIsNjApKS0rcjtyZXR1cm4gTWF0aC5yb3VuZChpL0YyKX12YXIgTFdpLG9FdD1sKCgpPT57dnYoKTtLdCgpO2Q3KCk7TFdpPWlFdH0pO2Z1bmN0aW9uIG5FdChlKXtyZXR1cm4gbWUoZSkuZ2V0TWlsbGlzZWNvbmRzKCl9dmFyIEVXaSxzRXQ9bCgoKT0+e1ZlKCk7RVdpPW5FdH0pO2Z1bmN0aW9uIGxFdChlLHQpe3JldHVybiBtZShlLHQ/LmluKS5nZXRNaW51dGVzKCl9dmFyIElXaSxjRXQ9bCgoKT0+e1ZlKCk7SVdpPWxFdH0pO2Z1bmN0aW9uIGRFdChlLHQpe3JldHVybiBtZShlLHQ/LmluKS5nZXRNb250aCgpfXZhciBPV2ksdUV0PWwoKCk9PntWZSgpO09XaT1kRXR9KTtmdW5jdGlvbiBmRXQoZSx0KXtsZXRbcixhXT1bK21lKGUuc3RhcnQpLCttZShlLmVuZCldLnNvcnQoKHUscCk9PnUtcCksW2ksb109WyttZSh0LnN0YXJ0KSwrbWUodC5lbmQpXS5zb3J0KCh1LHApPT51LXApO2lmKCEocjxvJiZpPGEpKXJldHVybiAwO2xldCBzPWk8cj9yOmksYz1zLVVhKHMpLGQ9bz5hP2E6byxmPWQtVWEoZCk7cmV0dXJuIE1hdGguY2VpbCgoZi1jKS9DYWUpfXZhciBqV2kscEV0PWwoKCk9PntKbCgpO0t0KCk7VmUoKTtqV2k9ZkV0fSk7ZnVuY3Rpb24gaEV0KGUpe3JldHVybiBtZShlKS5nZXRTZWNvbmRzKCl9dmFyIFdXaSxtRXQ9bCgoKT0+e1ZlKCk7V1dpPWhFdH0pO2Z1bmN0aW9uIGdFdChlKXtyZXR1cm4rbWUoZSl9dmFyIFpXaSx4RXQ9bCgoKT0+e1ZlKCk7WldpPWdFdH0pO2Z1bmN0aW9uIGJFdChlKXtyZXR1cm4gTWF0aC50cnVuYygrbWUoZSkvMWUzKX12YXIgS1dpLHZFdD1sKCgpPT57VmUoKTtLV2k9YkV0fSk7ZnVuY3Rpb24geUV0KGUsdCl7bGV0IHI9WXIoKSxhPXQ/LndlZWtTdGFydHNPbj8/dD8ubG9jYWxlPy5vcHRpb25zPy53ZWVrU3RhcnRzT24/P3Iud2Vla1N0YXJ0c09uPz9yLmxvY2FsZT8ub3B0aW9ucz8ud2Vla1N0YXJ0c09uPz8wLGk9dmllKG1lKGUsdD8uaW4pKTtpZihpc05hTihpKSlyZXR1cm4gTmFOO2xldCBvPWI0KG00KGUsdCkpLG49YS1vO248PTAmJihuKz03KTtsZXQgcz1pLW47cmV0dXJuIE1hdGguY2VpbChzLzcpKzF9dmFyIG9HaSx3RXQ9bCgoKT0+e1IxKCk7dGdlKCk7VHYoKTtrdigpO1ZlKCk7b0dpPXlFdH0pO2Z1bmN0aW9uIFNpZShlLHQpe2xldCByPW1lKGUsdD8uaW4pLGE9ci5nZXRNb250aCgpO3JldHVybiByLnNldEZ1bGxZZWFyKHIuZ2V0RnVsbFllYXIoKSxhKzEsMCksci5zZXRIb3VycygwLDAsMCwwKSxtZShyLHQ/LmluKX12YXIgbEdpLG5nZT1sKCgpPT57VmUoKTtsR2k9U2llfSk7ZnVuY3Rpb24gTUV0KGUsdCl7bGV0IHI9bWUoZSx0Py5pbik7cmV0dXJuIHM2KFNpZShyLHQpLG00KHIsdCksdCkrMX12YXIgaEdpLGtFdD1sKCgpPT57R2FlKCk7bmdlKCk7a3YoKTtWZSgpO2hHaT1NRXR9KTtmdW5jdGlvbiBTRXQoZSx0KXtyZXR1cm4gbWUoZSx0Py5pbikuZ2V0RnVsbFllYXIoKX12YXIgeEdpLHpFdD1sKCgpPT57VmUoKTt4R2k9U0V0fSk7ZnVuY3Rpb24gQ0V0KGUpe3JldHVybiBNYXRoLnRydW5jKGUqUW8pfXZhciB5R2ksX0V0PWwoKCk9PntLdCgpO3lHaT1DRXR9KTtmdW5jdGlvbiBURXQoZSl7cmV0dXJuIE1hdGgudHJ1bmMoZSpfYWUpfXZhciBrR2ksTEV0PWwoKCk9PntLdCgpO2tHaT1URXR9KTtmdW5jdGlvbiBERXQoZSl7cmV0dXJuIE1hdGgudHJ1bmMoZSppNil9dmFyIENHaSxBRXQ9bCgoKT0+e0t0KCk7Q0dpPURFdH0pO2Z1bmN0aW9uIEVFdChlLHQscil7bGV0W2EsaV09TXQocj8uaW4sZSx0KTtpZihpc05hTigrYSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiU3RhcnQgZGF0ZSBpcyBpbnZhbGlkIik7aWYoaXNOYU4oK2kpKXRocm93IG5ldyBUeXBlRXJyb3IoIkVuZCBkYXRlIGlzIGludmFsaWQiKTtpZihyPy5hc3NlcnRQb3NpdGl2ZSYmK2E+K2kpdGhyb3cgbmV3IFR5cGVFcnJvcigiRW5kIGRhdGUgbXVzdCBiZSBhZnRlciBzdGFydCBkYXRlIik7cmV0dXJue3N0YXJ0OmEsZW5kOml9fXZhciBMR2ksJEV0PWwoKCk9PnthYSgpO0xHaT1FRXR9KTtmdW5jdGlvbiBQRXQoZSx0KXtsZXR7c3RhcnQ6cixlbmQ6YX09S2kodD8uaW4sZSksaT17fSxvPWFpZShhLHIpO28mJihpLnllYXJzPW8pO2xldCBuPWM0KHIse3llYXJzOmkueWVhcnN9KSxzPWg0KGEsbik7cyYmKGkubW9udGhzPXMpO2xldCBjPWM0KG4se21vbnRoczppLm1vbnRoc30pLGQ9bTcoYSxjKTtkJiYoaS5kYXlzPWQpO2xldCBmPWM0KGMse2RheXM6aS5kYXlzfSksdT1sNihhLGYpO3UmJihpLmhvdXJzPXUpO2xldCBwPWM0KGYse2hvdXJzOmkuaG91cnN9KSxoPWM2KGEscCk7aCYmKGkubWludXRlcz1oKTtsZXQgYj1jNChwLHttaW51dGVzOmkubWludXRlc30pLHg9VjIoYSxiKTtyZXR1cm4geCYmKGkuc2Vjb25kcz14KSxpfXZhciBSR2ksSUV0PWwoKCk9PntVMigpO0M5ZSgpO1phZSgpO1hhZSgpO0phZSgpO3d2KCk7TXYoKTtWOWUoKTtSR2k9UEV0fSk7ZnVuY3Rpb24gTkV0KGUsdCxyKXtsZXQgYTtyZXR1cm4gRmxhKHQpP2E9dDpyPXQsbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQocj8ubG9jYWxlLGEpLmZvcm1hdChtZShlKSl9ZnVuY3Rpb24gRmxhKGUpe3JldHVybiBlIT09dm9pZCAwJiYhKCJsb2NhbGUiaW4gZSl9dmFyIHFHaSxGRXQ9bCgoKT0+e1ZlKCk7cUdpPU5FdH0pO2Z1bmN0aW9uIE9FdChlLHQscil7bGV0IGE9MCxpLFtvLG5dPU10KHI/LmluLGUsdCk7aWYocj8udW5pdClpPXI/LnVuaXQsaT09PSJzZWNvbmQiP2E9VjIobyxuKTppPT09Im1pbnV0ZSI/YT1jNihvLG4pOmk9PT0iaG91ciI/YT1sNihvLG4pOmk9PT0iZGF5Ij9hPVFpKG8sbik6aT09PSJ3ZWVrIj9hPXM2KG8sbik6aT09PSJtb250aCI/YT1uNihvLG4pOmk9PT0icXVhcnRlciI/YT1oNyhvLG4pOmk9PT0ieWVhciImJihhPXA0KG8sbikpO2Vsc2V7bGV0IGM9VjIobyxuKTtNYXRoLmFicyhjKTxsNz8oYT1WMihvLG4pLGk9InNlY29uZCIpOk1hdGguYWJzKGMpPGk2PyhhPWM2KG8sbiksaT0ibWludXRlIik6TWF0aC5hYnMoYyk8U2FlJiZNYXRoLmFicyhRaShvLG4pKTwxPyhhPWw2KG8sbiksaT0iaG91ciIpOk1hdGguYWJzKGMpPGlEdCYmKGE9UWkobyxuKSkmJk1hdGguYWJzKGEpPDc/aT0iZGF5IjpNYXRoLmFicyhjKTxTOWU/KGE9czYobyxuKSxpPSJ3ZWVrIik6TWF0aC5hYnMoYyk8b0R0PyhhPW42KG8sbiksaT0ibW9udGgiKTpNYXRoLmFicyhjKTxrOWU/aDcobyxuKTw0PyhhPWg3KG8sbiksaT0icXVhcnRlciIpOihhPXA0KG8sbiksaT0ieWVhciIpOihhPXA0KG8sbiksaT0ieWVhciIpfXJldHVybiBuZXcgSW50bC5SZWxhdGl2ZVRpbWVGb3JtYXQocj8ubG9jYWxlLHtudW1lcmljOiJhdXRvIiwuLi5yfSkuZm9ybWF0KGEsaSl9dmFyIGVZaSxSRXQ9bCgoKT0+e2FhKCk7S3QoKTtlYygpO1dhZSgpO0g5ZSgpO0dhZSgpO1lhZSgpO1hhZSgpO0phZSgpO012KCk7ZVlpPU9FdH0pO2Z1bmN0aW9uIEJFdChlLHQpe3JldHVybittZShlKT4rbWUodCl9dmFyIGFZaSxIRXQ9bCgoKT0+e1ZlKCk7YVlpPUJFdH0pO2Z1bmN0aW9uIHFFdChlLHQpe3JldHVybittZShlKTwrbWUodCl9dmFyIG5ZaSxqRXQ9bCgoKT0+e1ZlKCk7bllpPXFFdH0pO2Z1bmN0aW9uIFZFdChlLHQpe3JldHVybittZShlKT09K21lKHQpfXZhciBjWWksVUV0PWwoKCk9PntWZSgpO2NZaT1WRXR9KTtmdW5jdGlvbiBXRXQoZSx0LHIpe2xldCBhPW5ldyBEYXRlKGUsdCxyKTtyZXR1cm4gYS5nZXRGdWxsWWVhcigpPT09ZSYmYS5nZXRNb250aCgpPT09dCYmYS5nZXREYXRlKCk9PT1yfXZhciB1WWksR0V0PWwoKCk9Pnt1WWk9V0V0fSk7ZnVuY3Rpb24gWUV0KGUsdCl7cmV0dXJuIG1lKGUsdD8uaW4pLmdldERhdGUoKT09PTF9dmFyIGhZaSxaRXQ9bCgoKT0+e1ZlKCk7aFlpPVlFdH0pO2Z1bmN0aW9uIFhFdChlLHQpe3JldHVybiBtZShlLHQ/LmluKS5nZXREYXkoKT09PTV9dmFyIHhZaSxRRXQ9bCgoKT0+e1ZlKCk7eFlpPVhFdH0pO2Z1bmN0aW9uIEtFdChlKXtyZXR1cm4rbWUoZSk+RGF0ZS5ub3coKX12YXIgeVlpLEpFdD1sKCgpPT57VmUoKTt5WWk9S0V0fSk7ZnVuY3Rpb24gemllKGUsdCl7bGV0IHI9T2xhKHQpP25ldyB0KDApOkJlKHQsMCk7cmV0dXJuIHIuc2V0RnVsbFllYXIoZS5nZXRGdWxsWWVhcigpLGUuZ2V0TW9udGgoKSxlLmdldERhdGUoKSksci5zZXRIb3VycyhlLmdldEhvdXJzKCksZS5nZXRNaW51dGVzKCksZS5nZXRTZWNvbmRzKCksZS5nZXRNaWxsaXNlY29uZHMoKSkscn1mdW5jdGlvbiBPbGEoZSl7cmV0dXJuIHR5cGVvZiBlPT0iZnVuY3Rpb24iJiZlLnByb3RvdHlwZT8uY29uc3RydWN0b3I9PT1lfXZhciBrWWksc2dlPWwoKCk9PntfdCgpO2tZaT16aWV9KTt2YXIgUmxhLENpZSxfaWUsVGllLGxnZT1sKCgpPT57X3QoKTtzZ2UoKTtSbGE9MTAsQ2llPWNsYXNze3N1YlByaW9yaXR5PTA7dmFsaWRhdGUodCxyKXtyZXR1cm4hMH19LF9pZT1jbGFzcyBleHRlbmRzIENpZXtjb25zdHJ1Y3Rvcih0LHIsYSxpLG8pe3N1cGVyKCksdGhpcy52YWx1ZT10LHRoaXMudmFsaWRhdGVWYWx1ZT1yLHRoaXMuc2V0VmFsdWU9YSx0aGlzLnByaW9yaXR5PWksbyYmKHRoaXMuc3ViUHJpb3JpdHk9byl9dmFsaWRhdGUodCxyKXtyZXR1cm4gdGhpcy52YWxpZGF0ZVZhbHVlKHQsdGhpcy52YWx1ZSxyKX1zZXQodCxyLGEpe3JldHVybiB0aGlzLnNldFZhbHVlKHQscix0aGlzLnZhbHVlLGEpfX0sVGllPWNsYXNzIGV4dGVuZHMgQ2lle3ByaW9yaXR5PVJsYTtzdWJQcmlvcml0eT0tMTtjb25zdHJ1Y3Rvcih0LHIpe3N1cGVyKCksdGhpcy5jb250ZXh0PXR8fChhPT5CZShyLGEpKX1zZXQodCxyKXtyZXR1cm4gci50aW1lc3RhbXBJc1NldD90OkJlKHQsemllKHQsdGhpcy5jb250ZXh0KSl9fX0pO3ZhciBjdCxGcj1sKCgpPT57bGdlKCk7Y3Q9Y2xhc3N7cnVuKHQscixhLGkpe2xldCBvPXRoaXMucGFyc2UodCxyLGEsaSk7cmV0dXJuIG8/e3NldHRlcjpuZXcgX2llKG8udmFsdWUsdGhpcy52YWxpZGF0ZSx0aGlzLnNldCx0aGlzLnByaW9yaXR5LHRoaXMuc3ViUHJpb3JpdHkpLHJlc3Q6by5yZXN0fTpudWxsfXZhbGlkYXRlKHQscixhKXtyZXR1cm4hMH19fSk7dmFyIExpZSxlJHQ9bCgoKT0+e0ZyKCk7TGllPWNsYXNzIGV4dGVuZHMgY3R7cHJpb3JpdHk9MTQwO3BhcnNlKHQscixhKXtzd2l0Y2gocil7Y2FzZSJHIjpjYXNlIkdHIjpjYXNlIkdHRyI6cmV0dXJuIGEuZXJhKHQse3dpZHRoOiJhYmJyZXZpYXRlZCJ9KXx8YS5lcmEodCx7d2lkdGg6Im5hcnJvdyJ9KTtjYXNlIkdHR0dHIjpyZXR1cm4gYS5lcmEodCx7d2lkdGg6Im5hcnJvdyJ9KTtkZWZhdWx0OnJldHVybiBhLmVyYSh0LHt3aWR0aDoid2lkZSJ9KXx8YS5lcmEodCx7d2lkdGg6ImFiYnJldmlhdGVkIn0pfHxhLmVyYSh0LHt3aWR0aDoibmFycm93In0pfX1zZXQodCxyLGEpe3JldHVybiByLmVyYT1hLHQuc2V0RnVsbFllYXIoYSwwLDEpLHQuc2V0SG91cnMoMCwwLDAsMCksdH1pbmNvbXBhdGlibGVUb2tlbnM9WyJSIiwidSIsInQiLCJUIl19fSk7dmFyIHpyLEVuLHExPWwoKCk9Pnt6cj17bW9udGg6L14oMVswLTJdfDA/XGQpLyxkYXRlOi9eKDNbMC0xXXxbMC0yXT9cZCkvLGRheU9mWWVhcjovXigzNlswLTZdfDNbMC01XVxkfFswLTJdP1xkP1xkKS8sd2VlazovXig1WzAtM118WzAtNF0/XGQpLyxob3VyMjNoOi9eKDJbMC0zXXxbMC0xXT9cZCkvLGhvdXIyNGg6L14oMlswLTRdfFswLTFdP1xkKS8saG91cjExaDovXigxWzAtMV18MD9cZCkvLGhvdXIxMmg6L14oMVswLTJdfDA/XGQpLyxtaW51dGU6L15bMC01XT9cZC8sc2Vjb25kOi9eWzAtNV0/XGQvLHNpbmdsZURpZ2l0Oi9eXGQvLHR3b0RpZ2l0czovXlxkezEsMn0vLHRocmVlRGlnaXRzOi9eXGR7MSwzfS8sZm91ckRpZ2l0czovXlxkezEsNH0vLGFueURpZ2l0c1NpZ25lZDovXi0/XGQrLyxzaW5nbGVEaWdpdFNpZ25lZDovXi0/XGQvLHR3b0RpZ2l0c1NpZ25lZDovXi0/XGR7MSwyfS8sdGhyZWVEaWdpdHNTaWduZWQ6L14tP1xkezEsM30vLGZvdXJEaWdpdHNTaWduZWQ6L14tP1xkezEsNH0vfSxFbj17YmFzaWNPcHRpb25hbE1pbnV0ZXM6L14oWystXSkoXGR7Mn0pKFxkezJ9KT98Wi8sYmFzaWM6L14oWystXSkoXGR7Mn0pKFxkezJ9KXxaLyxiYXNpY09wdGlvbmFsU2Vjb25kczovXihbKy1dKShcZHsyfSkoXGR7Mn0pKChcZHsyfSkpP3xaLyxleHRlbmRlZDovXihbKy1dKShcZHsyfSk6KFxkezJ9KXxaLyxleHRlbmRlZE9wdGlvbmFsU2Vjb25kczovXihbKy1dKShcZHsyfSk6KFxkezJ9KSg6KFxkezJ9KSk/fFovfX0pO2Z1bmN0aW9uIGlhKGUsdCl7cmV0dXJuIGUmJnt2YWx1ZTp0KGUudmFsdWUpLHJlc3Q6ZS5yZXN0fX1mdW5jdGlvbiB4cihlLHQpe2xldCByPXQubWF0Y2goZSk7cmV0dXJuIHI/e3ZhbHVlOnBhcnNlSW50KHJbMF0sMTApLHJlc3Q6dC5zbGljZShyWzBdLmxlbmd0aCl9Om51bGx9ZnVuY3Rpb24gJG4oZSx0KXtsZXQgcj10Lm1hdGNoKGUpO2lmKCFyKXJldHVybiBudWxsO2lmKHJbMF09PT0iWiIpcmV0dXJue3ZhbHVlOjAscmVzdDp0LnNsaWNlKDEpfTtsZXQgYT1yWzFdPT09IisiPzE6LTEsaT1yWzJdP3BhcnNlSW50KHJbMl0sMTApOjAsbz1yWzNdP3BhcnNlSW50KHJbM10sMTApOjAsbj1yWzVdP3BhcnNlSW50KHJbNV0sMTApOjA7cmV0dXJue3ZhbHVlOmEqKGkqUW8rbypPMStuKm43KSxyZXN0OnQuc2xpY2UoclswXS5sZW5ndGgpfX1mdW5jdGlvbiBEaWUoZSl7cmV0dXJuIHhyKHpyLmFueURpZ2l0c1NpZ25lZCxlKX1mdW5jdGlvbiBVdChlLHQpe3N3aXRjaChlKXtjYXNlIDE6cmV0dXJuIHhyKHpyLnNpbmdsZURpZ2l0LHQpO2Nhc2UgMjpyZXR1cm4geHIoenIudHdvRGlnaXRzLHQpO2Nhc2UgMzpyZXR1cm4geHIoenIudGhyZWVEaWdpdHMsdCk7Y2FzZSA0OnJldHVybiB4cih6ci5mb3VyRGlnaXRzLHQpO2RlZmF1bHQ6cmV0dXJuIHhyKG5ldyBSZWdFeHAoIl5cXGR7MSwiK2UrIn0iKSx0KX19ZnVuY3Rpb24gQzcoZSx0KXtzd2l0Y2goZSl7Y2FzZSAxOnJldHVybiB4cih6ci5zaW5nbGVEaWdpdFNpZ25lZCx0KTtjYXNlIDI6cmV0dXJuIHhyKHpyLnR3b0RpZ2l0c1NpZ25lZCx0KTtjYXNlIDM6cmV0dXJuIHhyKHpyLnRocmVlRGlnaXRzU2lnbmVkLHQpO2Nhc2UgNDpyZXR1cm4geHIoenIuZm91ckRpZ2l0c1NpZ25lZCx0KTtkZWZhdWx0OnJldHVybiB4cihuZXcgUmVnRXhwKCJeLT9cXGR7MSwiK2UrIn0iKSx0KX19ZnVuY3Rpb24gXzcoZSl7c3dpdGNoKGUpe2Nhc2UibW9ybmluZyI6cmV0dXJuIDQ7Y2FzZSJldmVuaW5nIjpyZXR1cm4gMTc7Y2FzZSJwbSI6Y2FzZSJub29uIjpjYXNlImFmdGVybm9vbiI6cmV0dXJuIDEyO2RlZmF1bHQ6cmV0dXJuIDB9fWZ1bmN0aW9uIEFpZShlLHQpe2xldCByPXQ+MCxhPXI/dDoxLXQsaTtpZihhPD01MClpPWV8fDEwMDtlbHNle2xldCBvPWErNTAsbj1NYXRoLnRydW5jKG8vMTAwKSoxMDAscz1lPj1vJTEwMDtpPWUrbi0ocz8xMDA6MCl9cmV0dXJuIHI/aToxLWl9ZnVuY3Rpb24gRWllKGUpe3JldHVybiBlJTQwMD09PTB8fGUlND09PTAmJmUlMTAwIT09MH12YXIgWnI9bCgoKT0+e0t0KCk7cTEoKX0pO3ZhciAkaWUsdCR0PWwoKCk9PntGcigpO1pyKCk7JGllPWNsYXNzIGV4dGVuZHMgY3R7cHJpb3JpdHk9MTMwO2luY29tcGF0aWJsZVRva2Vucz1bIlkiLCJSIiwidSIsInciLCJJIiwiaSIsImUiLCJjIiwidCIsIlQiXTtwYXJzZSh0LHIsYSl7bGV0IGk9bz0+KHt5ZWFyOm8saXNUd29EaWdpdFllYXI6cj09PSJ5eSJ9KTtzd2l0Y2gocil7Y2FzZSJ5IjpyZXR1cm4gaWEoVXQoNCx0KSxpKTtjYXNlInlvIjpyZXR1cm4gaWEoYS5vcmRpbmFsTnVtYmVyKHQse3VuaXQ6InllYXIifSksaSk7ZGVmYXVsdDpyZXR1cm4gaWEoVXQoci5sZW5ndGgsdCksaSl9fXZhbGlkYXRlKHQscil7cmV0dXJuIHIuaXNUd29EaWdpdFllYXJ8fHIueWVhcj4wfXNldCh0LHIsYSl7bGV0IGk9dC5nZXRGdWxsWWVhcigpO2lmKGEuaXNUd29EaWdpdFllYXIpe2xldCBuPUFpZShhLnllYXIsaSk7cmV0dXJuIHQuc2V0RnVsbFllYXIobiwwLDEpLHQuc2V0SG91cnMoMCwwLDAsMCksdH1sZXQgbz0hKCJlcmEiaW4gcil8fHIuZXJhPT09MT9hLnllYXI6MS1hLnllYXI7cmV0dXJuIHQuc2V0RnVsbFllYXIobywwLDEpLHQuc2V0SG91cnMoMCwwLDAsMCksdH19fSk7dmFyIFBpZSxyJHQ9bCgoKT0+e1N2KCk7YnMoKTtGcigpO1pyKCk7UGllPWNsYXNzIGV4dGVuZHMgY3R7cHJpb3JpdHk9MTMwO3BhcnNlKHQscixhKXtsZXQgaT1vPT4oe3llYXI6byxpc1R3b0RpZ2l0WWVhcjpyPT09IllZIn0pO3N3aXRjaChyKXtjYXNlIlkiOnJldHVybiBpYShVdCg0LHQpLGkpO2Nhc2UiWW8iOnJldHVybiBpYShhLm9yZGluYWxOdW1iZXIodCx7dW5pdDoieWVhciJ9KSxpKTtkZWZhdWx0OnJldHVybiBpYShVdChyLmxlbmd0aCx0KSxpKX19dmFsaWRhdGUodCxyKXtyZXR1cm4gci5pc1R3b0RpZ2l0WWVhcnx8ci55ZWFyPjB9c2V0KHQscixhLGkpe2xldCBvPWc0KHQsaSk7aWYoYS5pc1R3b0RpZ2l0WWVhcil7bGV0IHM9QWllKGEueWVhcixvKTtyZXR1cm4gdC5zZXRGdWxsWWVhcihzLDAsaS5maXJzdFdlZWtDb250YWluc0RhdGUpLHQuc2V0SG91cnMoMCwwLDAsMCksZGEodCxpKX1sZXQgbj0hKCJlcmEiaW4gcil8fHIuZXJhPT09MT9hLnllYXI6MS1hLnllYXI7cmV0dXJuIHQuc2V0RnVsbFllYXIobiwwLGkuZmlyc3RXZWVrQ29udGFpbnNEYXRlKSx0LnNldEhvdXJzKDAsMCwwLDApLGRhKHQsaSl9aW5jb21wYXRpYmxlVG9rZW5zPVsieSIsIlIiLCJ1IiwiUSIsInEiLCJNIiwiTCIsIkkiLCJkIiwiRCIsImkiLCJ0IiwiVCJdfX0pO3ZhciBJaWUsYSR0PWwoKCk9PntIMigpO190KCk7RnIoKTtacigpO0lpZT1jbGFzcyBleHRlbmRzIGN0e3ByaW9yaXR5PTEzMDtwYXJzZSh0LHIpe3JldHVybiByPT09IlIiP0M3KDQsdCk6Qzcoci5sZW5ndGgsdCl9c2V0KHQscixhKXtsZXQgaT1CZSh0LDApO3JldHVybiBpLnNldEZ1bGxZZWFyKGEsMCw0KSxpLnNldEhvdXJzKDAsMCwwLDApLGhpKGkpfWluY29tcGF0aWJsZVRva2Vucz1bIkciLCJ5IiwiWSIsInUiLCJRIiwicSIsIk0iLCJMIiwidyIsImQiLCJEIiwiZSIsImMiLCJ0IiwiVCJdfX0pO3ZhciBOaWUsaSR0PWwoKCk9PntGcigpO1pyKCk7TmllPWNsYXNzIGV4dGVuZHMgY3R7cHJpb3JpdHk9MTMwO3BhcnNlKHQscil7cmV0dXJuIHI9PT0idSI/QzcoNCx0KTpDNyhyLmxlbmd0aCx0KX1zZXQodCxyLGEpe3JldHVybiB0LnNldEZ1bGxZZWFyKGEsMCwxKSx0LnNldEhvdXJzKDAsMCwwLDApLHR9aW5jb21wYXRpYmxlVG9rZW5zPVsiRyIsInkiLCJZIiwiUiIsInciLCJJIiwiaSIsImUiLCJjIiwidCIsIlQiXX19KTt2YXIgRmllLG8kdD1sKCgpPT57RnIoKTtacigpO0ZpZT1jbGFzcyBleHRlbmRzIGN0e3ByaW9yaXR5PTEyMDtwYXJzZSh0LHIsYSl7c3dpdGNoKHIpe2Nhc2UiUSI6Y2FzZSJRUSI6cmV0dXJuIFV0KHIubGVuZ3RoLHQpO2Nhc2UiUW8iOnJldHVybiBhLm9yZGluYWxOdW1iZXIodCx7dW5pdDoicXVhcnRlciJ9KTtjYXNlIlFRUSI6cmV0dXJuIGEucXVhcnRlcih0LHt3aWR0aDoiYWJicmV2aWF0ZWQiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl8fGEucXVhcnRlcih0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pO2Nhc2UiUVFRUVEiOnJldHVybiBhLnF1YXJ0ZXIodCx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtkZWZhdWx0OnJldHVybiBhLnF1YXJ0ZXIodCx7d2lkdGg6IndpZGUiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl8fGEucXVhcnRlcih0LHt3aWR0aDoiYWJicmV2aWF0ZWQiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl8fGEucXVhcnRlcih0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfX12YWxpZGF0ZSh0LHIpe3JldHVybiByPj0xJiZyPD00fXNldCh0LHIsYSl7cmV0dXJuIHQuc2V0TW9udGgoKGEtMSkqMywxKSx0LnNldEhvdXJzKDAsMCwwLDApLHR9aW5jb21wYXRpYmxlVG9rZW5zPVsiWSIsIlIiLCJxIiwiTSIsIkwiLCJ3IiwiSSIsImQiLCJEIiwiaSIsImUiLCJjIiwidCIsIlQiXX19KTt2YXIgT2llLG4kdD1sKCgpPT57RnIoKTtacigpO09pZT1jbGFzcyBleHRlbmRzIGN0e3ByaW9yaXR5PTEyMDtwYXJzZSh0LHIsYSl7c3dpdGNoKHIpe2Nhc2UicSI6Y2FzZSJxcSI6cmV0dXJuIFV0KHIubGVuZ3RoLHQpO2Nhc2UicW8iOnJldHVybiBhLm9yZGluYWxOdW1iZXIodCx7dW5pdDoicXVhcnRlciJ9KTtjYXNlInFxcSI6cmV0dXJuIGEucXVhcnRlcih0LHt3aWR0aDoiYWJicmV2aWF0ZWQiLGNvbnRleHQ6InN0YW5kYWxvbmUifSl8fGEucXVhcnRlcih0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJzdGFuZGFsb25lIn0pO2Nhc2UicXFxcXEiOnJldHVybiBhLnF1YXJ0ZXIodCx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoic3RhbmRhbG9uZSJ9KTtkZWZhdWx0OnJldHVybiBhLnF1YXJ0ZXIodCx7d2lkdGg6IndpZGUiLGNvbnRleHQ6InN0YW5kYWxvbmUifSl8fGEucXVhcnRlcih0LHt3aWR0aDoiYWJicmV2aWF0ZWQiLGNvbnRleHQ6InN0YW5kYWxvbmUifSl8fGEucXVhcnRlcih0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJzdGFuZGFsb25lIn0pfX12YWxpZGF0ZSh0LHIpe3JldHVybiByPj0xJiZyPD00fXNldCh0LHIsYSl7cmV0dXJuIHQuc2V0TW9udGgoKGEtMSkqMywxKSx0LnNldEhvdXJzKDAsMCwwLDApLHR9aW5jb21wYXRpYmxlVG9rZW5zPVsiWSIsIlIiLCJRIiwiTSIsIkwiLCJ3IiwiSSIsImQiLCJEIiwiaSIsImUiLCJjIiwidCIsIlQiXX19KTt2YXIgUmllLHMkdD1sKCgpPT57cTEoKTtGcigpO1pyKCk7UmllPWNsYXNzIGV4dGVuZHMgY3R7aW5jb21wYXRpYmxlVG9rZW5zPVsiWSIsIlIiLCJxIiwiUSIsIkwiLCJ3IiwiSSIsIkQiLCJpIiwiZSIsImMiLCJ0IiwiVCJdO3ByaW9yaXR5PTExMDtwYXJzZSh0LHIsYSl7bGV0IGk9bz0+by0xO3N3aXRjaChyKXtjYXNlIk0iOnJldHVybiBpYSh4cih6ci5tb250aCx0KSxpKTtjYXNlIk1NIjpyZXR1cm4gaWEoVXQoMix0KSxpKTtjYXNlIk1vIjpyZXR1cm4gaWEoYS5vcmRpbmFsTnVtYmVyKHQse3VuaXQ6Im1vbnRoIn0pLGkpO2Nhc2UiTU1NIjpyZXR1cm4gYS5tb250aCh0LHt3aWR0aDoiYWJicmV2aWF0ZWQiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl8fGEubW9udGgodCx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtjYXNlIk1NTU1NIjpyZXR1cm4gYS5tb250aCh0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pO2RlZmF1bHQ6cmV0dXJuIGEubW9udGgodCx7d2lkdGg6IndpZGUiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl8fGEubW9udGgodCx7d2lkdGg6ImFiYnJldmlhdGVkIixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfHxhLm1vbnRoKHQse3dpZHRoOiJuYXJyb3ciLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl9fXZhbGlkYXRlKHQscil7cmV0dXJuIHI+PTAmJnI8PTExfXNldCh0LHIsYSl7cmV0dXJuIHQuc2V0TW9udGgoYSwxKSx0LnNldEhvdXJzKDAsMCwwLDApLHR9fX0pO3ZhciBCaWUsbCR0PWwoKCk9PntxMSgpO0ZyKCk7WnIoKTtCaWU9Y2xhc3MgZXh0ZW5kcyBjdHtwcmlvcml0eT0xMTA7cGFyc2UodCxyLGEpe2xldCBpPW89Pm8tMTtzd2l0Y2gocil7Y2FzZSJMIjpyZXR1cm4gaWEoeHIoenIubW9udGgsdCksaSk7Y2FzZSJMTCI6cmV0dXJuIGlhKFV0KDIsdCksaSk7Y2FzZSJMbyI6cmV0dXJuIGlhKGEub3JkaW5hbE51bWJlcih0LHt1bml0OiJtb250aCJ9KSxpKTtjYXNlIkxMTCI6cmV0dXJuIGEubW9udGgodCx7d2lkdGg6ImFiYnJldmlhdGVkIixjb250ZXh0OiJzdGFuZGFsb25lIn0pfHxhLm1vbnRoKHQse3dpZHRoOiJuYXJyb3ciLGNvbnRleHQ6InN0YW5kYWxvbmUifSk7Y2FzZSJMTExMTCI6cmV0dXJuIGEubW9udGgodCx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoic3RhbmRhbG9uZSJ9KTtkZWZhdWx0OnJldHVybiBhLm1vbnRoKHQse3dpZHRoOiJ3aWRlIixjb250ZXh0OiJzdGFuZGFsb25lIn0pfHxhLm1vbnRoKHQse3dpZHRoOiJhYmJyZXZpYXRlZCIsY29udGV4dDoic3RhbmRhbG9uZSJ9KXx8YS5tb250aCh0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJzdGFuZGFsb25lIn0pfX12YWxpZGF0ZSh0LHIpe3JldHVybiByPj0wJiZyPD0xMX1zZXQodCxyLGEpe3JldHVybiB0LnNldE1vbnRoKGEsMSksdC5zZXRIb3VycygwLDAsMCwwKSx0fWluY29tcGF0aWJsZVRva2Vucz1bIlkiLCJSIiwicSIsIlEiLCJNIiwidyIsIkkiLCJEIiwiaSIsImUiLCJjIiwidCIsIlQiXX19KTtmdW5jdGlvbiBIaWUoZSx0LHIpe2xldCBhPW1lKGUscj8uaW4pLGk9UzcoYSxyKS10O3JldHVybiBhLnNldERhdGUoYS5nZXREYXRlKCktaSo3KSxtZShhLHI/LmluKX12YXIgaFppLGNnZT1sKCgpPT57aGllKCk7VmUoKTtoWmk9SGllfSk7dmFyIHFpZSxjJHQ9bCgoKT0+e2NnZSgpO2JzKCk7cTEoKTtGcigpO1pyKCk7cWllPWNsYXNzIGV4dGVuZHMgY3R7cHJpb3JpdHk9MTAwO3BhcnNlKHQscixhKXtzd2l0Y2gocil7Y2FzZSJ3IjpyZXR1cm4geHIoenIud2Vlayx0KTtjYXNlIndvIjpyZXR1cm4gYS5vcmRpbmFsTnVtYmVyKHQse3VuaXQ6IndlZWsifSk7ZGVmYXVsdDpyZXR1cm4gVXQoci5sZW5ndGgsdCl9fXZhbGlkYXRlKHQscil7cmV0dXJuIHI+PTEmJnI8PTUzfXNldCh0LHIsYSxpKXtyZXR1cm4gZGEoSGllKHQsYSxpKSxpKX1pbmNvbXBhdGlibGVUb2tlbnM9WyJ5IiwiUiIsInUiLCJxIiwiUSIsIk0iLCJMIiwiSSIsImQiLCJEIiwiaSIsInQiLCJUIl19fSk7ZnVuY3Rpb24gamllKGUsdCxyKXtsZXQgYT1tZShlLHI/LmluKSxpPWs3KGEsciktdDtyZXR1cm4gYS5zZXREYXRlKGEuZ2V0RGF0ZSgpLWkqNyksYX12YXIgU1ppLGRnZT1sKCgpPT57ZmllKCk7VmUoKTtTWmk9amllfSk7dmFyIFZpZSxkJHQ9bCgoKT0+e2RnZSgpO0gyKCk7cTEoKTtGcigpO1pyKCk7VmllPWNsYXNzIGV4dGVuZHMgY3R7cHJpb3JpdHk9MTAwO3BhcnNlKHQscixhKXtzd2l0Y2gocil7Y2FzZSJJIjpyZXR1cm4geHIoenIud2Vlayx0KTtjYXNlIklvIjpyZXR1cm4gYS5vcmRpbmFsTnVtYmVyKHQse3VuaXQ6IndlZWsifSk7ZGVmYXVsdDpyZXR1cm4gVXQoci5sZW5ndGgsdCl9fXZhbGlkYXRlKHQscil7cmV0dXJuIHI+PTEmJnI8PTUzfXNldCh0LHIsYSl7cmV0dXJuIGhpKGppZSh0LGEpKX1pbmNvbXBhdGlibGVUb2tlbnM9WyJ5IiwiWSIsInUiLCJxIiwiUSIsIk0iLCJMIiwidyIsImQiLCJEIiwiZSIsImMiLCJ0IiwiVCJdfX0pO3ZhciBCbGEsSGxhLFVpZSx1JHQ9bCgoKT0+e3ExKCk7RnIoKTtacigpO0JsYT1bMzEsMjgsMzEsMzAsMzEsMzAsMzEsMzEsMzAsMzEsMzAsMzFdLEhsYT1bMzEsMjksMzEsMzAsMzEsMzAsMzEsMzEsMzAsMzEsMzAsMzFdLFVpZT1jbGFzcyBleHRlbmRzIGN0e3ByaW9yaXR5PTkwO3N1YlByaW9yaXR5PTE7cGFyc2UodCxyLGEpe3N3aXRjaChyKXtjYXNlImQiOnJldHVybiB4cih6ci5kYXRlLHQpO2Nhc2UiZG8iOnJldHVybiBhLm9yZGluYWxOdW1iZXIodCx7dW5pdDoiZGF0ZSJ9KTtkZWZhdWx0OnJldHVybiBVdChyLmxlbmd0aCx0KX19dmFsaWRhdGUodCxyKXtsZXQgYT10LmdldEZ1bGxZZWFyKCksaT1FaWUoYSksbz10LmdldE1vbnRoKCk7cmV0dXJuIGk/cj49MSYmcjw9SGxhW29dOnI+PTEmJnI8PUJsYVtvXX1zZXQodCxyLGEpe3JldHVybiB0LnNldERhdGUoYSksdC5zZXRIb3VycygwLDAsMCwwKSx0fWluY29tcGF0aWJsZVRva2Vucz1bIlkiLCJSIiwicSIsIlEiLCJ3IiwiSSIsIkQiLCJpIiwiZSIsImMiLCJ0IiwiVCJdfX0pO3ZhciBXaWUsZiR0PWwoKCk9PntxMSgpO0ZyKCk7WnIoKTtXaWU9Y2xhc3MgZXh0ZW5kcyBjdHtwcmlvcml0eT05MDtzdWJwcmlvcml0eT0xO3BhcnNlKHQscixhKXtzd2l0Y2gocil7Y2FzZSJEIjpjYXNlIkREIjpyZXR1cm4geHIoenIuZGF5T2ZZZWFyLHQpO2Nhc2UiRG8iOnJldHVybiBhLm9yZGluYWxOdW1iZXIodCx7dW5pdDoiZGF0ZSJ9KTtkZWZhdWx0OnJldHVybiBVdChyLmxlbmd0aCx0KX19dmFsaWRhdGUodCxyKXtsZXQgYT10LmdldEZ1bGxZZWFyKCk7cmV0dXJuIEVpZShhKT9yPj0xJiZyPD0zNjY6cj49MSYmcjw9MzY1fXNldCh0LHIsYSl7cmV0dXJuIHQuc2V0TW9udGgoMCxhKSx0LnNldEhvdXJzKDAsMCwwLDApLHR9aW5jb21wYXRpYmxlVG9rZW5zPVsiWSIsIlIiLCJxIiwiUSIsIk0iLCJMIiwidyIsIkkiLCJkIiwiRSIsImkiLCJlIiwiYyIsInQiLCJUIl19fSk7ZnVuY3Rpb24gdjQoZSx0LHIpe2xldCBhPVlyKCksaT1yPy53ZWVrU3RhcnRzT24/P3I/LmxvY2FsZT8ub3B0aW9ucz8ud2Vla1N0YXJ0c09uPz9hLndlZWtTdGFydHNPbj8/YS5sb2NhbGU/Lm9wdGlvbnM/LndlZWtTdGFydHNPbj8/MCxvPW1lKGUscj8uaW4pLG49by5nZXREYXkoKSxjPSh0JTcrNyklNyxkPTctaSxmPXQ8MHx8dD42P3QtKG4rZCklNzooYytkKSU3LShuK2QpJTc7cmV0dXJuICRpKG8sZixyKX12YXIgalppLEx2PWwoKCk9PntSMSgpO08yKCk7VmUoKTtqWmk9djR9KTt2YXIgR2llLHAkdD1sKCgpPT57THYoKTtGcigpO0dpZT1jbGFzcyBleHRlbmRzIGN0e3ByaW9yaXR5PTkwO3BhcnNlKHQscixhKXtzd2l0Y2gocil7Y2FzZSJFIjpjYXNlIkVFIjpjYXNlIkVFRSI6cmV0dXJuIGEuZGF5KHQse3dpZHRoOiJhYmJyZXZpYXRlZCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KXx8YS5kYXkodCx7d2lkdGg6InNob3J0Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfHxhLmRheSh0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pO2Nhc2UiRUVFRUUiOnJldHVybiBhLmRheSh0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pO2Nhc2UiRUVFRUVFIjpyZXR1cm4gYS5kYXkodCx7d2lkdGg6InNob3J0Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfHxhLmRheSh0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pO2RlZmF1bHQ6cmV0dXJuIGEuZGF5KHQse3dpZHRoOiJ3aWRlIixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfHxhLmRheSh0LHt3aWR0aDoiYWJicmV2aWF0ZWQiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl8fGEuZGF5KHQse3dpZHRoOiJzaG9ydCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KXx8YS5kYXkodCx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoiZm9ybWF0dGluZyJ9KX19dmFsaWRhdGUodCxyKXtyZXR1cm4gcj49MCYmcjw9Nn1zZXQodCxyLGEsaSl7cmV0dXJuIHQ9djQodCxhLGkpLHQuc2V0SG91cnMoMCwwLDAsMCksdH1pbmNvbXBhdGlibGVUb2tlbnM9WyJEIiwiaSIsImUiLCJjIiwidCIsIlQiXX19KTt2YXIgWWllLGgkdD1sKCgpPT57THYoKTtGcigpO1pyKCk7WWllPWNsYXNzIGV4dGVuZHMgY3R7cHJpb3JpdHk9OTA7cGFyc2UodCxyLGEsaSl7bGV0IG89bj0+e2xldCBzPU1hdGguZmxvb3IoKG4tMSkvNykqNztyZXR1cm4obitpLndlZWtTdGFydHNPbis2KSU3K3N9O3N3aXRjaChyKXtjYXNlImUiOmNhc2UiZWUiOnJldHVybiBpYShVdChyLmxlbmd0aCx0KSxvKTtjYXNlImVvIjpyZXR1cm4gaWEoYS5vcmRpbmFsTnVtYmVyKHQse3VuaXQ6ImRheSJ9KSxvKTtjYXNlImVlZSI6cmV0dXJuIGEuZGF5KHQse3dpZHRoOiJhYmJyZXZpYXRlZCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KXx8YS5kYXkodCx7d2lkdGg6InNob3J0Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfHxhLmRheSh0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pO2Nhc2UiZWVlZWUiOnJldHVybiBhLmRheSh0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pO2Nhc2UiZWVlZWVlIjpyZXR1cm4gYS5kYXkodCx7d2lkdGg6InNob3J0Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfHxhLmRheSh0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pO2RlZmF1bHQ6cmV0dXJuIGEuZGF5KHQse3dpZHRoOiJ3aWRlIixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfHxhLmRheSh0LHt3aWR0aDoiYWJicmV2aWF0ZWQiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl8fGEuZGF5KHQse3dpZHRoOiJzaG9ydCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KXx8YS5kYXkodCx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoiZm9ybWF0dGluZyJ9KX19dmFsaWRhdGUodCxyKXtyZXR1cm4gcj49MCYmcjw9Nn1zZXQodCxyLGEsaSl7cmV0dXJuIHQ9djQodCxhLGkpLHQuc2V0SG91cnMoMCwwLDAsMCksdH1pbmNvbXBhdGlibGVUb2tlbnM9WyJ5IiwiUiIsInUiLCJxIiwiUSIsIk0iLCJMIiwiSSIsImQiLCJEIiwiRSIsImkiLCJjIiwidCIsIlQiXX19KTt2YXIgWmllLG0kdD1sKCgpPT57THYoKTtGcigpO1pyKCk7WmllPWNsYXNzIGV4dGVuZHMgY3R7cHJpb3JpdHk9OTA7cGFyc2UodCxyLGEsaSl7bGV0IG89bj0+e2xldCBzPU1hdGguZmxvb3IoKG4tMSkvNykqNztyZXR1cm4obitpLndlZWtTdGFydHNPbis2KSU3K3N9O3N3aXRjaChyKXtjYXNlImMiOmNhc2UiY2MiOnJldHVybiBpYShVdChyLmxlbmd0aCx0KSxvKTtjYXNlImNvIjpyZXR1cm4gaWEoYS5vcmRpbmFsTnVtYmVyKHQse3VuaXQ6ImRheSJ9KSxvKTtjYXNlImNjYyI6cmV0dXJuIGEuZGF5KHQse3dpZHRoOiJhYmJyZXZpYXRlZCIsY29udGV4dDoic3RhbmRhbG9uZSJ9KXx8YS5kYXkodCx7d2lkdGg6InNob3J0Iixjb250ZXh0OiJzdGFuZGFsb25lIn0pfHxhLmRheSh0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJzdGFuZGFsb25lIn0pO2Nhc2UiY2NjY2MiOnJldHVybiBhLmRheSh0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJzdGFuZGFsb25lIn0pO2Nhc2UiY2NjY2NjIjpyZXR1cm4gYS5kYXkodCx7d2lkdGg6InNob3J0Iixjb250ZXh0OiJzdGFuZGFsb25lIn0pfHxhLmRheSh0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJzdGFuZGFsb25lIn0pO2RlZmF1bHQ6cmV0dXJuIGEuZGF5KHQse3dpZHRoOiJ3aWRlIixjb250ZXh0OiJzdGFuZGFsb25lIn0pfHxhLmRheSh0LHt3aWR0aDoiYWJicmV2aWF0ZWQiLGNvbnRleHQ6InN0YW5kYWxvbmUifSl8fGEuZGF5KHQse3dpZHRoOiJzaG9ydCIsY29udGV4dDoic3RhbmRhbG9uZSJ9KXx8YS5kYXkodCx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoic3RhbmRhbG9uZSJ9KX19dmFsaWRhdGUodCxyKXtyZXR1cm4gcj49MCYmcjw9Nn1zZXQodCxyLGEsaSl7cmV0dXJuIHQ9djQodCxhLGkpLHQuc2V0SG91cnMoMCwwLDAsMCksdH1pbmNvbXBhdGlibGVUb2tlbnM9WyJ5IiwiUiIsInUiLCJxIiwiUSIsIk0iLCJMIiwiSSIsImQiLCJEIiwiRSIsImkiLCJlIiwidCIsIlQiXX19KTtmdW5jdGlvbiBYaWUoZSx0LHIpe2xldCBhPW1lKGUscj8uaW4pLGk9a2llKGEsciksbz10LWk7cmV0dXJuICRpKGEsbyxyKX12YXIgb1hpLHVnZT1sKCgpPT57TzIoKTtvZ2UoKTtWZSgpO29YaT1YaWV9KTt2YXIgUWllLGckdD1sKCgpPT57dWdlKCk7RnIoKTtacigpO1FpZT1jbGFzcyBleHRlbmRzIGN0e3ByaW9yaXR5PTkwO3BhcnNlKHQscixhKXtsZXQgaT1vPT5vPT09MD83Om87c3dpdGNoKHIpe2Nhc2UiaSI6Y2FzZSJpaSI6cmV0dXJuIFV0KHIubGVuZ3RoLHQpO2Nhc2UiaW8iOnJldHVybiBhLm9yZGluYWxOdW1iZXIodCx7dW5pdDoiZGF5In0pO2Nhc2UiaWlpIjpyZXR1cm4gaWEoYS5kYXkodCx7d2lkdGg6ImFiYnJldmlhdGVkIixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfHxhLmRheSh0LHt3aWR0aDoic2hvcnQiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl8fGEuZGF5KHQse3dpZHRoOiJuYXJyb3ciLGNvbnRleHQ6ImZvcm1hdHRpbmcifSksaSk7Y2FzZSJpaWlpaSI6cmV0dXJuIGlhKGEuZGF5KHQse3dpZHRoOiJuYXJyb3ciLGNvbnRleHQ6ImZvcm1hdHRpbmcifSksaSk7Y2FzZSJpaWlpaWkiOnJldHVybiBpYShhLmRheSh0LHt3aWR0aDoic2hvcnQiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl8fGEuZGF5KHQse3dpZHRoOiJuYXJyb3ciLGNvbnRleHQ6ImZvcm1hdHRpbmcifSksaSk7ZGVmYXVsdDpyZXR1cm4gaWEoYS5kYXkodCx7d2lkdGg6IndpZGUiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl8fGEuZGF5KHQse3dpZHRoOiJhYmJyZXZpYXRlZCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KXx8YS5kYXkodCx7d2lkdGg6InNob3J0Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfHxhLmRheSh0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pLGkpfX12YWxpZGF0ZSh0LHIpe3JldHVybiByPj0xJiZyPD03fXNldCh0LHIsYSl7cmV0dXJuIHQ9WGllKHQsYSksdC5zZXRIb3VycygwLDAsMCwwKSx0fWluY29tcGF0aWJsZVRva2Vucz1bInkiLCJZIiwidSIsInEiLCJRIiwiTSIsIkwiLCJ3IiwiZCIsIkQiLCJFIiwiZSIsImMiLCJ0IiwiVCJdfX0pO3ZhciBLaWUseCR0PWwoKCk9PntGcigpO1pyKCk7S2llPWNsYXNzIGV4dGVuZHMgY3R7cHJpb3JpdHk9ODA7cGFyc2UodCxyLGEpe3N3aXRjaChyKXtjYXNlImEiOmNhc2UiYWEiOmNhc2UiYWFhIjpyZXR1cm4gYS5kYXlQZXJpb2QodCx7d2lkdGg6ImFiYnJldmlhdGVkIixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfHxhLmRheVBlcmlvZCh0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pO2Nhc2UiYWFhYWEiOnJldHVybiBhLmRheVBlcmlvZCh0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pO2RlZmF1bHQ6cmV0dXJuIGEuZGF5UGVyaW9kKHQse3dpZHRoOiJ3aWRlIixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfHxhLmRheVBlcmlvZCh0LHt3aWR0aDoiYWJicmV2aWF0ZWQiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl8fGEuZGF5UGVyaW9kKHQse3dpZHRoOiJuYXJyb3ciLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl9fXNldCh0LHIsYSl7cmV0dXJuIHQuc2V0SG91cnMoXzcoYSksMCwwLDApLHR9aW5jb21wYXRpYmxlVG9rZW5zPVsiYiIsIkIiLCJIIiwiayIsInQiLCJUIl19fSk7dmFyIEppZSxiJHQ9bCgoKT0+e0ZyKCk7WnIoKTtKaWU9Y2xhc3MgZXh0ZW5kcyBjdHtwcmlvcml0eT04MDtwYXJzZSh0LHIsYSl7c3dpdGNoKHIpe2Nhc2UiYiI6Y2FzZSJiYiI6Y2FzZSJiYmIiOnJldHVybiBhLmRheVBlcmlvZCh0LHt3aWR0aDoiYWJicmV2aWF0ZWQiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl8fGEuZGF5UGVyaW9kKHQse3dpZHRoOiJuYXJyb3ciLGNvbnRleHQ6ImZvcm1hdHRpbmcifSk7Y2FzZSJiYmJiYiI6cmV0dXJuIGEuZGF5UGVyaW9kKHQse3dpZHRoOiJuYXJyb3ciLGNvbnRleHQ6ImZvcm1hdHRpbmcifSk7ZGVmYXVsdDpyZXR1cm4gYS5kYXlQZXJpb2QodCx7d2lkdGg6IndpZGUiLGNvbnRleHQ6ImZvcm1hdHRpbmcifSl8fGEuZGF5UGVyaW9kKHQse3dpZHRoOiJhYmJyZXZpYXRlZCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KXx8YS5kYXlQZXJpb2QodCx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoiZm9ybWF0dGluZyJ9KX19c2V0KHQscixhKXtyZXR1cm4gdC5zZXRIb3VycyhfNyhhKSwwLDAsMCksdH1pbmNvbXBhdGlibGVUb2tlbnM9WyJhIiwiQiIsIkgiLCJrIiwidCIsIlQiXX19KTt2YXIgZTFlLHYkdD1sKCgpPT57RnIoKTtacigpO2UxZT1jbGFzcyBleHRlbmRzIGN0e3ByaW9yaXR5PTgwO3BhcnNlKHQscixhKXtzd2l0Y2gocil7Y2FzZSJCIjpjYXNlIkJCIjpjYXNlIkJCQiI6cmV0dXJuIGEuZGF5UGVyaW9kKHQse3dpZHRoOiJhYmJyZXZpYXRlZCIsY29udGV4dDoiZm9ybWF0dGluZyJ9KXx8YS5kYXlQZXJpb2QodCx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtjYXNlIkJCQkJCIjpyZXR1cm4gYS5kYXlQZXJpb2QodCx7d2lkdGg6Im5hcnJvdyIsY29udGV4dDoiZm9ybWF0dGluZyJ9KTtkZWZhdWx0OnJldHVybiBhLmRheVBlcmlvZCh0LHt3aWR0aDoid2lkZSIsY29udGV4dDoiZm9ybWF0dGluZyJ9KXx8YS5kYXlQZXJpb2QodCx7d2lkdGg6ImFiYnJldmlhdGVkIixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfHxhLmRheVBlcmlvZCh0LHt3aWR0aDoibmFycm93Iixjb250ZXh0OiJmb3JtYXR0aW5nIn0pfX1zZXQodCxyLGEpe3JldHVybiB0LnNldEhvdXJzKF83KGEpLDAsMCwwKSx0fWluY29tcGF0aWJsZVRva2Vucz1bImEiLCJiIiwidCIsIlQiXX19KTt2YXIgdDFlLHkkdD1sKCgpPT57cTEoKTtGcigpO1pyKCk7dDFlPWNsYXNzIGV4dGVuZHMgY3R7cHJpb3JpdHk9NzA7cGFyc2UodCxyLGEpe3N3aXRjaChyKXtjYXNlImgiOnJldHVybiB4cih6ci5ob3VyMTJoLHQpO2Nhc2UiaG8iOnJldHVybiBhLm9yZGluYWxOdW1iZXIodCx7dW5pdDoiaG91ciJ9KTtkZWZhdWx0OnJldHVybiBVdChyLmxlbmd0aCx0KX19dmFsaWRhdGUodCxyKXtyZXR1cm4gcj49MSYmcjw9MTJ9c2V0KHQscixhKXtsZXQgaT10LmdldEhvdXJzKCk+PTEyO3JldHVybiBpJiZhPDEyP3Quc2V0SG91cnMoYSsxMiwwLDAsMCk6IWkmJmE9PT0xMj90LnNldEhvdXJzKDAsMCwwLDApOnQuc2V0SG91cnMoYSwwLDAsMCksdH1pbmNvbXBhdGlibGVUb2tlbnM9WyJIIiwiSyIsImsiLCJ0IiwiVCJdfX0pO3ZhciByMWUsdyR0PWwoKCk9PntxMSgpO0ZyKCk7WnIoKTtyMWU9Y2xhc3MgZXh0ZW5kcyBjdHtwcmlvcml0eT03MDtwYXJzZSh0LHIsYSl7c3dpdGNoKHIpe2Nhc2UiSCI6cmV0dXJuIHhyKHpyLmhvdXIyM2gsdCk7Y2FzZSJIbyI6cmV0dXJuIGEub3JkaW5hbE51bWJlcih0LHt1bml0OiJob3VyIn0pO2RlZmF1bHQ6cmV0dXJuIFV0KHIubGVuZ3RoLHQpfX12YWxpZGF0ZSh0LHIpe3JldHVybiByPj0wJiZyPD0yM31zZXQodCxyLGEpe3JldHVybiB0LnNldEhvdXJzKGEsMCwwLDApLHR9aW5jb21wYXRpYmxlVG9rZW5zPVsiYSIsImIiLCJoIiwiSyIsImsiLCJ0IiwiVCJdfX0pO3ZhciBhMWUsTSR0PWwoKCk9PntxMSgpO0ZyKCk7WnIoKTthMWU9Y2xhc3MgZXh0ZW5kcyBjdHtwcmlvcml0eT03MDtwYXJzZSh0LHIsYSl7c3dpdGNoKHIpe2Nhc2UiSyI6cmV0dXJuIHhyKHpyLmhvdXIxMWgsdCk7Y2FzZSJLbyI6cmV0dXJuIGEub3JkaW5hbE51bWJlcih0LHt1bml0OiJob3VyIn0pO2RlZmF1bHQ6cmV0dXJuIFV0KHIubGVuZ3RoLHQpfX12YWxpZGF0ZSh0LHIpe3JldHVybiByPj0wJiZyPD0xMX1zZXQodCxyLGEpe3JldHVybiB0LmdldEhvdXJzKCk+PTEyJiZhPDEyP3Quc2V0SG91cnMoYSsxMiwwLDAsMCk6dC5zZXRIb3VycyhhLDAsMCwwKSx0fWluY29tcGF0aWJsZVRva2Vucz1bImgiLCJIIiwiayIsInQiLCJUIl19fSk7dmFyIGkxZSxrJHQ9bCgoKT0+e3ExKCk7RnIoKTtacigpO2kxZT1jbGFzcyBleHRlbmRzIGN0e3ByaW9yaXR5PTcwO3BhcnNlKHQscixhKXtzd2l0Y2gocil7Y2FzZSJrIjpyZXR1cm4geHIoenIuaG91cjI0aCx0KTtjYXNlImtvIjpyZXR1cm4gYS5vcmRpbmFsTnVtYmVyKHQse3VuaXQ6ImhvdXIifSk7ZGVmYXVsdDpyZXR1cm4gVXQoci5sZW5ndGgsdCl9fXZhbGlkYXRlKHQscil7cmV0dXJuIHI+PTEmJnI8PTI0fXNldCh0LHIsYSl7bGV0IGk9YTw9MjQ/YSUyNDphO3JldHVybiB0LnNldEhvdXJzKGksMCwwLDApLHR9aW5jb21wYXRpYmxlVG9rZW5zPVsiYSIsImIiLCJoIiwiSCIsIksiLCJ0IiwiVCJdfX0pO3ZhciBvMWUsUyR0PWwoKCk9PntxMSgpO0ZyKCk7WnIoKTtvMWU9Y2xhc3MgZXh0ZW5kcyBjdHtwcmlvcml0eT02MDtwYXJzZSh0LHIsYSl7c3dpdGNoKHIpe2Nhc2UibSI6cmV0dXJuIHhyKHpyLm1pbnV0ZSx0KTtjYXNlIm1vIjpyZXR1cm4gYS5vcmRpbmFsTnVtYmVyKHQse3VuaXQ6Im1pbnV0ZSJ9KTtkZWZhdWx0OnJldHVybiBVdChyLmxlbmd0aCx0KX19dmFsaWRhdGUodCxyKXtyZXR1cm4gcj49MCYmcjw9NTl9c2V0KHQscixhKXtyZXR1cm4gdC5zZXRNaW51dGVzKGEsMCwwKSx0fWluY29tcGF0aWJsZVRva2Vucz1bInQiLCJUIl19fSk7dmFyIG4xZSx6JHQ9bCgoKT0+e3ExKCk7RnIoKTtacigpO24xZT1jbGFzcyBleHRlbmRzIGN0e3ByaW9yaXR5PTUwO3BhcnNlKHQscixhKXtzd2l0Y2gocil7Y2FzZSJzIjpyZXR1cm4geHIoenIuc2Vjb25kLHQpO2Nhc2Uic28iOnJldHVybiBhLm9yZGluYWxOdW1iZXIodCx7dW5pdDoic2Vjb25kIn0pO2RlZmF1bHQ6cmV0dXJuIFV0KHIubGVuZ3RoLHQpfX12YWxpZGF0ZSh0LHIpe3JldHVybiByPj0wJiZyPD01OX1zZXQodCxyLGEpe3JldHVybiB0LnNldFNlY29uZHMoYSwwKSx0fWluY29tcGF0aWJsZVRva2Vucz1bInQiLCJUIl19fSk7dmFyIHMxZSxDJHQ9bCgoKT0+e0ZyKCk7WnIoKTtzMWU9Y2xhc3MgZXh0ZW5kcyBjdHtwcmlvcml0eT0zMDtwYXJzZSh0LHIpe2xldCBhPWk9Pk1hdGgudHJ1bmMoaSpNYXRoLnBvdygxMCwtci5sZW5ndGgrMykpO3JldHVybiBpYShVdChyLmxlbmd0aCx0KSxhKX1zZXQodCxyLGEpe3JldHVybiB0LnNldE1pbGxpc2Vjb25kcyhhKSx0fWluY29tcGF0aWJsZVRva2Vucz1bInQiLCJUIl19fSk7dmFyIGwxZSxfJHQ9bCgoKT0+e190KCk7SmwoKTtxMSgpO0ZyKCk7WnIoKTtsMWU9Y2xhc3MgZXh0ZW5kcyBjdHtwcmlvcml0eT0xMDtwYXJzZSh0LHIpe3N3aXRjaChyKXtjYXNlIlgiOnJldHVybiAkbihFbi5iYXNpY09wdGlvbmFsTWludXRlcyx0KTtjYXNlIlhYIjpyZXR1cm4gJG4oRW4uYmFzaWMsdCk7Y2FzZSJYWFhYIjpyZXR1cm4gJG4oRW4uYmFzaWNPcHRpb25hbFNlY29uZHMsdCk7Y2FzZSJYWFhYWCI6cmV0dXJuICRuKEVuLmV4dGVuZGVkT3B0aW9uYWxTZWNvbmRzLHQpO2RlZmF1bHQ6cmV0dXJuICRuKEVuLmV4dGVuZGVkLHQpfX1zZXQodCxyLGEpe3JldHVybiByLnRpbWVzdGFtcElzU2V0P3Q6QmUodCx0LmdldFRpbWUoKS1VYSh0KS1hKX1pbmNvbXBhdGlibGVUb2tlbnM9WyJ0IiwiVCIsIngiXX19KTt2YXIgYzFlLFQkdD1sKCgpPT57X3QoKTtKbCgpO3ExKCk7RnIoKTtacigpO2MxZT1jbGFzcyBleHRlbmRzIGN0e3ByaW9yaXR5PTEwO3BhcnNlKHQscil7c3dpdGNoKHIpe2Nhc2UieCI6cmV0dXJuICRuKEVuLmJhc2ljT3B0aW9uYWxNaW51dGVzLHQpO2Nhc2UieHgiOnJldHVybiAkbihFbi5iYXNpYyx0KTtjYXNlInh4eHgiOnJldHVybiAkbihFbi5iYXNpY09wdGlvbmFsU2Vjb25kcyx0KTtjYXNlInh4eHh4IjpyZXR1cm4gJG4oRW4uZXh0ZW5kZWRPcHRpb25hbFNlY29uZHMsdCk7ZGVmYXVsdDpyZXR1cm4gJG4oRW4uZXh0ZW5kZWQsdCl9fXNldCh0LHIsYSl7cmV0dXJuIHIudGltZXN0YW1wSXNTZXQ/dDpCZSh0LHQuZ2V0VGltZSgpLVVhKHQpLWEpfWluY29tcGF0aWJsZVRva2Vucz1bInQiLCJUIiwiWCJdfX0pO3ZhciBkMWUsTCR0PWwoKCk9PntfdCgpO0ZyKCk7WnIoKTtkMWU9Y2xhc3MgZXh0ZW5kcyBjdHtwcmlvcml0eT00MDtwYXJzZSh0KXtyZXR1cm4gRGllKHQpfXNldCh0LHIsYSl7cmV0dXJuW0JlKHQsYSoxZTMpLHt0aW1lc3RhbXBJc1NldDohMH1dfWluY29tcGF0aWJsZVRva2Vucz0iKiJ9fSk7dmFyIHUxZSxEJHQ9bCgoKT0+e190KCk7RnIoKTtacigpO3UxZT1jbGFzcyBleHRlbmRzIGN0e3ByaW9yaXR5PTIwO3BhcnNlKHQpe3JldHVybiBEaWUodCl9c2V0KHQscixhKXtyZXR1cm5bQmUodCxhKSx7dGltZXN0YW1wSXNTZXQ6ITB9XX1pbmNvbXBhdGlibGVUb2tlbnM9IioifX0pO3ZhciBmMWUsQSR0PWwoKCk9PntlJHQoKTt0JHQoKTtyJHQoKTthJHQoKTtpJHQoKTtvJHQoKTtuJHQoKTtzJHQoKTtsJHQoKTtjJHQoKTtkJHQoKTt1JHQoKTtmJHQoKTtwJHQoKTtoJHQoKTttJHQoKTtnJHQoKTt4JHQoKTtiJHQoKTt2JHQoKTt5JHQoKTt3JHQoKTtNJHQoKTtrJHQoKTtTJHQoKTt6JHQoKTtDJHQoKTtfJHQoKTtUJHQoKTtMJHQoKTtEJHQoKTtmMWU9e0c6bmV3IExpZSx5Om5ldyAkaWUsWTpuZXcgUGllLFI6bmV3IElpZSx1Om5ldyBOaWUsUTpuZXcgRmllLHE6bmV3IE9pZSxNOm5ldyBSaWUsTDpuZXcgQmllLHc6bmV3IHFpZSxJOm5ldyBWaWUsZDpuZXcgVWllLEQ6bmV3IFdpZSxFOm5ldyBHaWUsZTpuZXcgWWllLGM6bmV3IFppZSxpOm5ldyBRaWUsYTpuZXcgS2llLGI6bmV3IEppZSxCOm5ldyBlMWUsaDpuZXcgdDFlLEg6bmV3IHIxZSxLOm5ldyBhMWUsazpuZXcgaTFlLG06bmV3IG8xZSxzOm5ldyBuMWUsUzpuZXcgczFlLFg6bmV3IGwxZSx4Om5ldyBjMWUsdDpuZXcgZDFlLFQ6bmV3IHUxZX19KTtmdW5jdGlvbiBwMWUoZSx0LHIsYSl7bGV0IGk9KCk9PkJlKGE/LmlufHxyLE5hTiksbz1NaWUoKSxuPWE/LmxvY2FsZT8/by5sb2NhbGU/PyRvLHM9YT8uZmlyc3RXZWVrQ29udGFpbnNEYXRlPz9hPy5sb2NhbGU/Lm9wdGlvbnM/LmZpcnN0V2Vla0NvbnRhaW5zRGF0ZT8/by5maXJzdFdlZWtDb250YWluc0RhdGU/P28ubG9jYWxlPy5vcHRpb25zPy5maXJzdFdlZWtDb250YWluc0RhdGU/PzEsYz1hPy53ZWVrU3RhcnRzT24/P2E/LmxvY2FsZT8ub3B0aW9ucz8ud2Vla1N0YXJ0c09uPz9vLndlZWtTdGFydHNPbj8/by5sb2NhbGU/Lm9wdGlvbnM/LndlZWtTdGFydHNPbj8/MDtpZighdClyZXR1cm4gZT9pKCk6bWUocixhPy5pbik7bGV0IGQ9e2ZpcnN0V2Vla0NvbnRhaW5zRGF0ZTpzLHdlZWtTdGFydHNPbjpjLGxvY2FsZTpufSxmPVtuZXcgVGllKGE/LmluLHIpXSx1PXQubWF0Y2goamxhKS5tYXAoZz0+e2xldCB2PWdbMF07aWYodiBpbiB4NCl7bGV0IHc9eDRbdl07cmV0dXJuIHcoZyxuLmZvcm1hdExvbmcpfXJldHVybiBnfSkuam9pbigiIikubWF0Y2gocWxhKSxwPVtdO2ZvcihsZXQgZyBvZiB1KXshYT8udXNlQWRkaXRpb25hbFdlZWtZZWFyVG9rZW5zJiZnaWUoZykmJkN2KGcsdCxlKSwhYT8udXNlQWRkaXRpb25hbERheU9mWWVhclRva2VucyYmbWllKGcpJiZDdihnLHQsZSk7bGV0IHY9Z1swXSx3PWYxZVt2XTtpZih3KXtsZXR7aW5jb21wYXRpYmxlVG9rZW5zOk19PXc7aWYoQXJyYXkuaXNBcnJheShNKSl7bGV0IEM9cC5maW5kKGs9Pk0uaW5jbHVkZXMoay50b2tlbil8fGsudG9rZW49PT12KTtpZihDKXRocm93IG5ldyBSYW5nZUVycm9yKGBUaGUgZm9ybWF0IHN0cmluZyBtdXN0bid0IGNvbnRhaW4gXGAke0MuZnVsbFRva2VufVxgIGFuZCBcYCR7Z31cYCBhdCB0aGUgc2FtZSB0aW1lYCl9ZWxzZSBpZih3LmluY29tcGF0aWJsZVRva2Vucz09PSIqIiYmcC5sZW5ndGg+MCl0aHJvdyBuZXcgUmFuZ2VFcnJvcihgVGhlIGZvcm1hdCBzdHJpbmcgbXVzdG4ndCBjb250YWluIFxgJHtnfVxgIGFuZCBhbnkgb3RoZXIgdG9rZW4gYXQgdGhlIHNhbWUgdGltZWApO3AucHVzaCh7dG9rZW46dixmdWxsVG9rZW46Z30pO2xldCBGPXcucnVuKGUsZyxuLm1hdGNoLGQpO2lmKCFGKXJldHVybiBpKCk7Zi5wdXNoKEYuc2V0dGVyKSxlPUYucmVzdH1lbHNle2lmKHYubWF0Y2goR2xhKSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiRm9ybWF0IHN0cmluZyBjb250YWlucyBhbiB1bmVzY2FwZWQgbGF0aW4gYWxwaGFiZXQgY2hhcmFjdGVyIGAiK3YrImAiKTtpZihnPT09IicnIj9nPSInIjp2PT09IiciJiYoZz1ZbGEoZykpLGUuaW5kZXhPZihnKT09PTApZT1lLnNsaWNlKGcubGVuZ3RoKTtlbHNlIHJldHVybiBpKCl9fWlmKGUubGVuZ3RoPjAmJldsYS50ZXN0KGUpKXJldHVybiBpKCk7bGV0IGg9Zi5tYXAoZz0+Zy5wcmlvcml0eSkuc29ydCgoZyx2KT0+di1nKS5maWx0ZXIoKGcsdix3KT0+dy5pbmRleE9mKGcpPT09dikubWFwKGc9PmYuZmlsdGVyKHY9PnYucHJpb3JpdHk9PT1nKS5zb3J0KCh2LHcpPT53LnN1YlByaW9yaXR5LXYuc3ViUHJpb3JpdHkpKS5tYXAoZz0+Z1swXSksYj1tZShyLGE/LmluKTtpZihpc05hTigrYikpcmV0dXJuIGkoKTtsZXQgeD17fTtmb3IobGV0IGcgb2YgaCl7aWYoIWcudmFsaWRhdGUoYixkKSlyZXR1cm4gaSgpO2xldCB2PWcuc2V0KGIseCxkKTtBcnJheS5pc0FycmF5KHYpPyhiPXZbMF0sT2JqZWN0LmFzc2lnbih4LHZbMV0pKTpiPXZ9cmV0dXJuIGJ9ZnVuY3Rpb24gWWxhKGUpe3JldHVybiBlLm1hdGNoKFZsYSlbMV0ucmVwbGFjZShVbGEsIiciKX12YXIgcWxhLGpsYSxWbGEsVWxhLFdsYSxHbGEsSlFpLGZnZT1sKCgpPT57ZDYoKTtYOWUoKTtROWUoKTtfdCgpO2lnZSgpO1ZlKCk7bGdlKCk7QSR0KCk7cWxhPS9beVlRcU1Md0lkRGVjaWhIS2ttc11vfChcdylcMSp8Jyd8JygnJ3xbXiddKSsoJ3wkKXwuL2csamxhPS9QK3ArfFArfHArfCcnfCcoJyd8W14nXSkrKCd8JCl8Li9nLFZsYT0vXicoW15dKj8pJz8kLyxVbGE9LycnL2csV2xhPS9cUy8sR2xhPS9bYS16QS1aXS87SlFpPXAxZX0pO2Z1bmN0aW9uIEUkdChlLHQscil7cmV0dXJuIHUxKHAxZShlLHQsbmV3IERhdGUscikpfXZhciBhS2ksJCR0PWwoKCk9Pnt0YygpO2ZnZSgpO2FLaT1FJHR9KTtmdW5jdGlvbiBQJHQoZSx0KXtyZXR1cm4gbWUoZSx0Py5pbikuZ2V0RGF5KCk9PT0xfXZhciBuS2ksSSR0PWwoKCk9PntWZSgpO25LaT1QJHR9KTtmdW5jdGlvbiBOJHQoZSl7cmV0dXJuK21lKGUpPERhdGUubm93KCl9dmFyIGNLaSxGJHQ9bCgoKT0+e1ZlKCk7Y0tpPU4kdH0pO2Z1bmN0aW9uIER2KGUsdCl7bGV0IHI9bWUoZSx0Py5pbik7cmV0dXJuIHIuc2V0TWludXRlcygwLDAsMCkscn12YXIgZktpLHBnZT1sKCgpPT57VmUoKTtmS2k9RHZ9KTtmdW5jdGlvbiBoMWUoZSx0LHIpe2xldFthLGldPU10KHI/LmluLGUsdCk7cmV0dXJuK0R2KGEpPT0rRHYoaSl9dmFyIGdLaSxoZ2U9bCgoKT0+e2FhKCk7cGdlKCk7Z0tpPWgxZX0pO2Z1bmN0aW9uIFQ3KGUsdCxyKXtsZXRbYSxpXT1NdChyPy5pbixlLHQpO3JldHVybitkYShhLHIpPT0rZGEoaSxyKX12YXIgeUtpLG0xZT1sKCgpPT57YWEoKTticygpO3lLaT1UN30pO2Z1bmN0aW9uIGcxZShlLHQscil7cmV0dXJuIFQ3KGUsdCx7Li4ucix3ZWVrU3RhcnRzT246MX0pfXZhciBrS2ksbWdlPWwoKCk9PnttMWUoKTtrS2k9ZzFlfSk7ZnVuY3Rpb24gTyR0KGUsdCxyKXtsZXRbYSxpXT1NdChyPy5pbixlLHQpO3JldHVybitLbyhhKT09K0tvKGkpfXZhciBfS2ksUiR0PWwoKCk9PntkNygpO2FhKCk7X0tpPU8kdH0pO2Z1bmN0aW9uIEF2KGUsdCl7bGV0IHI9bWUoZSx0Py5pbik7cmV0dXJuIHIuc2V0U2Vjb25kcygwLDApLHJ9dmFyIERLaSxnZ2U9bCgoKT0+e1ZlKCk7REtpPUF2fSk7ZnVuY3Rpb24geDFlKGUsdCl7cmV0dXJuK0F2KGUpPT0rQXYodCl9dmFyICRLaSx4Z2U9bCgoKT0+e2dnZSgpOyRLaT14MWV9KTtmdW5jdGlvbiBiMWUoZSx0LHIpe2xldFthLGldPU10KHI/LmluLGUsdCk7cmV0dXJuIGEuZ2V0RnVsbFllYXIoKT09PWkuZ2V0RnVsbFllYXIoKSYmYS5nZXRNb250aCgpPT09aS5nZXRNb250aCgpfXZhciBOS2ksYmdlPWwoKCk9PnthYSgpO05LaT1iMWV9KTtmdW5jdGlvbiB2MWUoZSx0LHIpe2xldFthLGldPU10KHI/LmluLGUsdCk7cmV0dXJuK1cyKGEpPT0rVzIoaSl9dmFyIEJLaSx2Z2U9bCgoKT0+e2FhKCk7b2llKCk7QktpPXYxZX0pO2Z1bmN0aW9uIEV2KGUsdCl7bGV0IHI9bWUoZSx0Py5pbik7cmV0dXJuIHIuc2V0TWlsbGlzZWNvbmRzKDApLHJ9dmFyIGpLaSx5Z2U9bCgoKT0+e1ZlKCk7aktpPUV2fSk7ZnVuY3Rpb24geTFlKGUsdCl7cmV0dXJuK0V2KGUpPT0rRXYodCl9dmFyIFdLaSx3Z2U9bCgoKT0+e3lnZSgpO1dLaT15MWV9KTtmdW5jdGlvbiB3MWUoZSx0LHIpe2xldFthLGldPU10KHI/LmluLGUsdCk7cmV0dXJuIGEuZ2V0RnVsbFllYXIoKT09PWkuZ2V0RnVsbFllYXIoKX12YXIgWktpLE1nZT1sKCgpPT57YWEoKTtaS2k9dzFlfSk7ZnVuY3Rpb24gQiR0KGUsdCl7cmV0dXJuIGgxZShtZShlLHQ/LmluKSxzcih0Py5pbnx8ZSkpfXZhciBlSmksSCR0PWwoKCk9PntQaSgpO2hnZSgpO1ZlKCk7ZUppPUIkdH0pO2Z1bmN0aW9uIHEkdChlLHQpe3JldHVybiBnMWUoQmUodD8uaW58fGUsZSksc3IodD8uaW58fGUpKX12YXIgb0ppLGokdD1sKCgpPT57X3QoKTtQaSgpO21nZSgpO29KaT1xJHR9KTtmdW5jdGlvbiBWJHQoZSl7cmV0dXJuIHgxZShlLHNyKGUpKX12YXIgY0ppLFUkdD1sKCgpPT57UGkoKTt4Z2UoKTtjSmk9ViR0fSk7ZnVuY3Rpb24gVyR0KGUsdCl7cmV0dXJuIGIxZShCZSh0Py5pbnx8ZSxlKSxzcih0Py5pbnx8ZSkpfXZhciBoSmksRyR0PWwoKCk9PntfdCgpO1BpKCk7YmdlKCk7aEppPVckdH0pO2Z1bmN0aW9uIFkkdChlLHQpe3JldHVybiB2MWUoQmUodD8uaW58fGUsZSksc3IodD8uaW58fGUpKX12YXIgdkppLFokdD1sKCgpPT57X3QoKTtQaSgpO3ZnZSgpO3ZKaT1ZJHR9KTtmdW5jdGlvbiBYJHQoZSl7cmV0dXJuIHkxZShlLHNyKGUpKX12YXIga0ppLFEkdD1sKCgpPT57UGkoKTt3Z2UoKTtrSmk9WCR0fSk7ZnVuY3Rpb24gSyR0KGUsdCl7cmV0dXJuIFQ3KEJlKHQ/LmlufHxlLGUpLHNyKHQ/LmlufHxlKSx0KX12YXIgVEppLEokdD1sKCgpPT57X3QoKTtQaSgpO20xZSgpO1RKaT1LJHR9KTtmdW5jdGlvbiBlUHQoZSx0KXtyZXR1cm4gdzFlKEJlKHQ/LmlufHxlLGUpLHNyKHQ/LmlufHxlKSl9dmFyICRKaSx0UHQ9bCgoKT0+e190KCk7UGkoKTtNZ2UoKTskSmk9ZVB0fSk7ZnVuY3Rpb24gclB0KGUsdCl7cmV0dXJuIG1lKGUsdD8uaW4pLmdldERheSgpPT09NH12YXIgTkppLGFQdD1sKCgpPT57VmUoKTtOSmk9clB0fSk7ZnVuY3Rpb24gaVB0KGUsdCl7cmV0dXJuIGoyKEJlKHQ/LmlufHxlLGUpLHNyKHQ/LmlufHxlKSl9dmFyIEhKaSxvUHQ9bCgoKT0+e190KCk7UGkoKTtwNygpO0hKaT1pUHR9KTtmdW5jdGlvbiBuUHQoZSx0KXtyZXR1cm4gajIoZSwkaShzcih0Py5pbnx8ZSksMSksdCl9dmFyIFdKaSxzUHQ9bCgoKT0+e08yKCk7UGkoKTtwNygpO1dKaT1uUHR9KTtmdW5jdGlvbiBsUHQoZSx0KXtyZXR1cm4gbWUoZSx0Py5pbikuZ2V0RGF5KCk9PT0yfXZhciBaSmksY1B0PWwoKCk9PntWZSgpO1pKaT1sUHR9KTtmdW5jdGlvbiBkUHQoZSx0KXtyZXR1cm4gbWUoZSx0Py5pbikuZ2V0RGF5KCk9PT0zfXZhciBLSmksdVB0PWwoKCk9PntWZSgpO0tKaT1kUHR9KTtmdW5jdGlvbiBmUHQoZSx0LHIpe2xldCBhPSttZShlLHI/LmluKSxbaSxvXT1bK21lKHQuc3RhcnQscj8uaW4pLCttZSh0LmVuZCxyPy5pbildLnNvcnQoKG4scyk9Pm4tcyk7cmV0dXJuIGE+PWkmJmE8PW99dmFyIHRlMSxwUHQ9bCgoKT0+e1ZlKCk7dGUxPWZQdH0pO2Z1bmN0aW9uIHk0KGUsdCxyKXtyZXR1cm4gJGkoZSwtdCxyKX12YXIgaWUxLCR2PWwoKCk9PntPMigpO2llMT15NH0pO2Z1bmN0aW9uIGhQdChlLHQpe3JldHVybiBqMihCZSh0Py5pbnx8ZSxlKSx5NChzcih0Py5pbnx8ZSksMSkpfXZhciBkZTEsbVB0PWwoKCk9PntfdCgpO1BpKCk7cDcoKTskdigpO2RlMT1oUHR9KTtmdW5jdGlvbiBnUHQoZSx0KXtsZXQgcj1tZShlLHQ/LmluKSxhPXIuZ2V0RnVsbFllYXIoKSxpPTkrTWF0aC5mbG9vcihhLzEwKSoxMDtyZXR1cm4gci5zZXRGdWxsWWVhcihpKzEsMCwwKSxyLnNldEhvdXJzKDAsMCwwLDApLG1lKHIsdD8uaW4pfXZhciBwZTEseFB0PWwoKCk9PntWZSgpO3BlMT1nUHR9KTtmdW5jdGlvbiBNMWUoZSx0KXtsZXQgcj1ZcigpLGE9dD8ud2Vla1N0YXJ0c09uPz90Py5sb2NhbGU/Lm9wdGlvbnM/LndlZWtTdGFydHNPbj8/ci53ZWVrU3RhcnRzT24/P3IubG9jYWxlPy5vcHRpb25zPy53ZWVrU3RhcnRzT24/PzAsaT1tZShlLHQ/LmluKSxvPWkuZ2V0RGF5KCksbj0obzxhPy03OjApKzYtKG8tYSk7cmV0dXJuIGkuc2V0SG91cnMoMCwwLDAsMCksaS5zZXREYXRlKGkuZ2V0RGF0ZSgpK24pLGl9dmFyIHhlMSxrZ2U9bCgoKT0+e1IxKCk7VmUoKTt4ZTE9TTFlfSk7ZnVuY3Rpb24gYlB0KGUsdCl7cmV0dXJuIE0xZShlLHsuLi50LHdlZWtTdGFydHNPbjoxfSl9dmFyIHllMSx2UHQ9bCgoKT0+e2tnZSgpO3llMT1iUHR9KTtmdW5jdGlvbiB5UHQoZSx0KXtsZXQgcj1zbyhlLHQpLGE9QmUodD8uaW58fGUsMCk7YS5zZXRGdWxsWWVhcihyKzEsMCw0KSxhLnNldEhvdXJzKDAsMCwwLDApO2xldCBpPWhpKGEsdCk7cmV0dXJuIGkuc2V0RGF0ZShpLmdldERhdGUoKS0xKSxpfXZhciB6ZTEsd1B0PWwoKCk9PntfdCgpO3U0KCk7SDIoKTt6ZTE9eVB0fSk7ZnVuY3Rpb24gTVB0KGUsdCl7bGV0IHI9bWUoZSx0Py5pbiksYT1yLmdldE1vbnRoKCksaT1hLWElMyszO3JldHVybiByLnNldE1vbnRoKGksMCksci5zZXRIb3VycygwLDAsMCwwKSxyfXZhciBUZTEsa1B0PWwoKCk9PntWZSgpO1RlMT1NUHR9KTtmdW5jdGlvbiBTUHQoZSx0KXtsZXQgcj1tZShlLHQ/LmluKSxhPXIuZ2V0RnVsbFllYXIoKTtyZXR1cm4gci5zZXRGdWxsWWVhcihhKzEsMCwwKSxyLnNldEhvdXJzKDAsMCwwLDApLHJ9dmFyIEFlMSx6UHQ9bCgoKT0+e1ZlKCk7QWUxPVNQdH0pO2Z1bmN0aW9uIENQdChlLHQpe2xldCByPW1lKGUpO2lmKCF1MShyKSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiSW52YWxpZCB0aW1lIHZhbHVlIik7bGV0IGE9dC5tYXRjaChabGEpO3JldHVybiBhP2EubWFwKG89PntpZihvPT09IicnIilyZXR1cm4iJyI7bGV0IG49b1swXTtpZihuPT09IiciKXJldHVybiBKbGEobyk7bGV0IHM9Sm9bbl07aWYocylyZXR1cm4gcyhyLG8pO2lmKG4ubWF0Y2goS2xhKSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiRm9ybWF0IHN0cmluZyBjb250YWlucyBhbiB1bmVzY2FwZWQgbGF0aW4gYWxwaGFiZXQgY2hhcmFjdGVyIGAiK24rImAiKTtyZXR1cm4gb30pLmpvaW4oIiIpOiIifWZ1bmN0aW9uIEpsYShlKXtsZXQgdD1lLm1hdGNoKFhsYSk7cmV0dXJuIHQ/dFsxXS5yZXBsYWNlKFFsYSwiJyIpOmV9dmFyIFpsYSxYbGEsUWxhLEtsYSxOZTEsX1B0PWwoKCk9PntaOWUoKTt0YygpO1ZlKCk7WmxhPS8oXHcpXDEqfCcnfCcoJyd8W14nXSkrKCd8JCl8Li9nLFhsYT0vXicoW15dKj8pJz8kLyxRbGE9LycnL2csS2xhPS9bYS16QS1aXS87TmUxPUNQdH0pO2Z1bmN0aW9uIFRQdCh7eWVhcnM6ZSxtb250aHM6dCx3ZWVrczpyLGRheXM6YSxob3VyczppLG1pbnV0ZXM6byxzZWNvbmRzOm59KXtsZXQgcz0wO2UmJihzKz1lKjM2NS4yNDI1KSx0JiYocys9dCooMzY1LjI0MjUvMTIpKSxyJiYocys9cio3KSxhJiYocys9YSk7bGV0IGM9cyoyNCo2MCo2MDtyZXR1cm4gaSYmKGMrPWkqNjAqNjApLG8mJihjKz1vKjYwKSxuJiYoYys9biksTWF0aC50cnVuYyhjKjFlMyl9dmFyIFJlMSxMUHQ9bCgoKT0+e0t0KCk7UmUxPVRQdH0pO2Z1bmN0aW9uIERQdChlKXtsZXQgdD1lL1FvO3JldHVybiBNYXRoLnRydW5jKHQpfXZhciBxZTEsQVB0PWwoKCk9PntLdCgpO3FlMT1EUHR9KTtmdW5jdGlvbiBFUHQoZSl7bGV0IHQ9ZS9PMTtyZXR1cm4gTWF0aC50cnVuYyh0KX12YXIgVWUxLCRQdD1sKCgpPT57S3QoKTtVZTE9RVB0fSk7ZnVuY3Rpb24gUFB0KGUpe2xldCB0PWUvbjc7cmV0dXJuIE1hdGgudHJ1bmModCl9dmFyIFllMSxJUHQ9bCgoKT0+e0t0KCk7WWUxPVBQdH0pO2Z1bmN0aW9uIE5QdChlKXtsZXQgdD1lL19hZTtyZXR1cm4gTWF0aC50cnVuYyh0KX12YXIgUWUxLEZQdD1sKCgpPT57S3QoKTtRZTE9TlB0fSk7ZnVuY3Rpb24gT1B0KGUpe3JldHVybiBNYXRoLnRydW5jKGUqTzEpfXZhciBldDEsUlB0PWwoKCk9PntLdCgpO2V0MT1PUHR9KTtmdW5jdGlvbiBCUHQoZSl7cmV0dXJuIE1hdGgudHJ1bmMoZSpsNyl9dmFyIGF0MSxIUHQ9bCgoKT0+e0t0KCk7YXQxPUJQdH0pO2Z1bmN0aW9uIHFQdChlKXtsZXQgdD1lL1RhZTtyZXR1cm4gTWF0aC50cnVuYyh0KX12YXIgbnQxLGpQdD1sKCgpPT57S3QoKTtudDE9cVB0fSk7ZnVuY3Rpb24gVlB0KGUpe2xldCB0PWUvTGFlO3JldHVybiBNYXRoLnRydW5jKHQpfXZhciBjdDEsVVB0PWwoKCk9PntLdCgpO2N0MT1WUHR9KTtmdW5jdGlvbiBqMShlLHQscil7bGV0IGE9dC1iNChlLHIpO3JldHVybiBhPD0wJiYoYSs9NyksJGkoZSxhLHIpfXZhciBwdDEsYWM9bCgoKT0+e08yKCk7VHYoKTtwdDE9ajF9KTtmdW5jdGlvbiBXUHQoZSx0KXtyZXR1cm4gajEoZSw1LHQpfXZhciBndDEsR1B0PWwoKCk9PnthYygpO2d0MT1XUHR9KTtmdW5jdGlvbiBZUHQoZSx0KXtyZXR1cm4gajEoZSwxLHQpfXZhciB2dDEsWlB0PWwoKCk9PnthYygpO3Z0MT1ZUHR9KTtmdW5jdGlvbiBYUHQoZSx0KXtyZXR1cm4gajEoZSw2LHQpfXZhciBNdDEsUVB0PWwoKCk9PnthYygpO010MT1YUHR9KTtmdW5jdGlvbiBLUHQoZSx0KXtyZXR1cm4gajEoZSwwLHQpfXZhciB6dDEsSlB0PWwoKCk9PnthYygpO3p0MT1LUHR9KTtmdW5jdGlvbiBlSXQoZSx0KXtyZXR1cm4gajEoZSw0LHQpfXZhciBUdDEsdEl0PWwoKCk9PnthYygpO1R0MT1lSXR9KTtmdW5jdGlvbiBySXQoZSx0KXtyZXR1cm4gajEoZSwyLHQpfXZhciBBdDEsYUl0PWwoKCk9PnthYygpO0F0MT1ySXR9KTtmdW5jdGlvbiBpSXQoZSx0KXtyZXR1cm4gajEoZSwzLHQpfXZhciBQdDEsb0l0PWwoKCk9PnthYygpO1B0MT1pSXR9KTtmdW5jdGlvbiBzSXQoZSx0KXtsZXQgcj0oKT0+QmUodD8uaW4sTmFOKSxhPXQ/LmFkZGl0aW9uYWxEaWdpdHM/PzIsaT1hY2EoZSksbztpZihpLmRhdGUpe2xldCBkPWljYShpLmRhdGUsYSk7bz1vY2EoZC5yZXN0RGF0ZVN0cmluZyxkLnllYXIpfWlmKCFvfHxpc05hTigrbykpcmV0dXJuIHIoKTtsZXQgbj0rbyxzPTAsYztpZihpLnRpbWUmJihzPW5jYShpLnRpbWUpLGlzTmFOKHMpKSlyZXR1cm4gcigpO2lmKGkudGltZXpvbmUpe2lmKGM9c2NhKGkudGltZXpvbmUpLGlzTmFOKGMpKXJldHVybiByKCl9ZWxzZXtsZXQgZD1uZXcgRGF0ZShuK3MpLGY9bWUoMCx0Py5pbik7cmV0dXJuIGYuc2V0RnVsbFllYXIoZC5nZXRVVENGdWxsWWVhcigpLGQuZ2V0VVRDTW9udGgoKSxkLmdldFVUQ0RhdGUoKSksZi5zZXRIb3VycyhkLmdldFVUQ0hvdXJzKCksZC5nZXRVVENNaW51dGVzKCksZC5nZXRVVENTZWNvbmRzKCksZC5nZXRVVENNaWxsaXNlY29uZHMoKSksZn1yZXR1cm4gbWUobitzK2MsdD8uaW4pfWZ1bmN0aW9uIGFjYShlKXtsZXQgdD17fSxyPWUuc3BsaXQoazFlLmRhdGVUaW1lRGVsaW1pdGVyKSxhO2lmKHIubGVuZ3RoPjIpcmV0dXJuIHQ7aWYoLzovLnRlc3QoclswXSk/YT1yWzBdOih0LmRhdGU9clswXSxhPXJbMV0sazFlLnRpbWVab25lRGVsaW1pdGVyLnRlc3QodC5kYXRlKSYmKHQuZGF0ZT1lLnNwbGl0KGsxZS50aW1lWm9uZURlbGltaXRlcilbMF0sYT1lLnN1YnN0cih0LmRhdGUubGVuZ3RoLGUubGVuZ3RoKSkpLGEpe2xldCBpPWsxZS50aW1lem9uZS5leGVjKGEpO2k/KHQudGltZT1hLnJlcGxhY2UoaVsxXSwiIiksdC50aW1lem9uZT1pWzFdKTp0LnRpbWU9YX1yZXR1cm4gdH1mdW5jdGlvbiBpY2EoZSx0KXtsZXQgcj1uZXcgUmVnRXhwKCJeKD86KFxcZHs0fXxbKy1dXFxkeyIrKDQrdCkrIn0pfChcXGR7Mn18WystXVxcZHsiKygyK3QpKyJ9KSQpIiksYT1lLm1hdGNoKHIpO2lmKCFhKXJldHVybnt5ZWFyOk5hTixyZXN0RGF0ZVN0cmluZzoiIn07bGV0IGk9YVsxXT9wYXJzZUludChhWzFdKTpudWxsLG89YVsyXT9wYXJzZUludChhWzJdKTpudWxsO3JldHVybnt5ZWFyOm89PT1udWxsP2k6byoxMDAscmVzdERhdGVTdHJpbmc6ZS5zbGljZSgoYVsxXXx8YVsyXSkubGVuZ3RoKX19ZnVuY3Rpb24gb2NhKGUsdCl7aWYodD09PW51bGwpcmV0dXJuIG5ldyBEYXRlKE5hTik7bGV0IHI9ZS5tYXRjaChlY2EpO2lmKCFyKXJldHVybiBuZXcgRGF0ZShOYU4pO2xldCBhPSEhcls0XSxpPVB2KHJbMV0pLG89UHYoclsyXSktMSxuPVB2KHJbM10pLHM9UHYocls0XSksYz1QdihyWzVdKS0xO2lmKGEpcmV0dXJuIGZjYSh0LHMsYyk/bGNhKHQscyxjKTpuZXcgRGF0ZShOYU4pO3tsZXQgZD1uZXcgRGF0ZSgwKTtyZXR1cm4hZGNhKHQsbyxuKXx8IXVjYSh0LGkpP25ldyBEYXRlKE5hTik6KGQuc2V0VVRDRnVsbFllYXIodCxvLE1hdGgubWF4KGksbikpLGQpfX1mdW5jdGlvbiBQdihlKXtyZXR1cm4gZT9wYXJzZUludChlKToxfWZ1bmN0aW9uIG5jYShlKXtsZXQgdD1lLm1hdGNoKHRjYSk7aWYoIXQpcmV0dXJuIE5hTjtsZXQgcj1TZ2UodFsxXSksYT1TZ2UodFsyXSksaT1TZ2UodFszXSk7cmV0dXJuIHBjYShyLGEsaSk/cipRbythKk8xK2kqMWUzOk5hTn1mdW5jdGlvbiBTZ2UoZSl7cmV0dXJuIGUmJnBhcnNlRmxvYXQoZS5yZXBsYWNlKCIsIiwiLiIpKXx8MH1mdW5jdGlvbiBzY2EoZSl7aWYoZT09PSJaIilyZXR1cm4gMDtsZXQgdD1lLm1hdGNoKHJjYSk7aWYoIXQpcmV0dXJuIDA7bGV0IHI9dFsxXT09PSIrIj8tMToxLGE9cGFyc2VJbnQodFsyXSksaT10WzNdJiZwYXJzZUludCh0WzNdKXx8MDtyZXR1cm4gaGNhKGEsaSk/ciooYSpRbytpKk8xKTpOYU59ZnVuY3Rpb24gbGNhKGUsdCxyKXtsZXQgYT1uZXcgRGF0ZSgwKTthLnNldFVUQ0Z1bGxZZWFyKGUsMCw0KTtsZXQgaT1hLmdldFVUQ0RheSgpfHw3LG89KHQtMSkqNytyKzEtaTtyZXR1cm4gYS5zZXRVVENEYXRlKGEuZ2V0VVRDRGF0ZSgpK28pLGF9ZnVuY3Rpb24gbkl0KGUpe3JldHVybiBlJTQwMD09PTB8fGUlND09PTAmJmUlMTAwIT09MH1mdW5jdGlvbiBkY2EoZSx0LHIpe3JldHVybiB0Pj0wJiZ0PD0xMSYmcj49MSYmcjw9KGNjYVt0XXx8KG5JdChlKT8yOToyOCkpfWZ1bmN0aW9uIHVjYShlLHQpe3JldHVybiB0Pj0xJiZ0PD0obkl0KGUpPzM2NjozNjUpfWZ1bmN0aW9uIGZjYShlLHQscil7cmV0dXJuIHQ+PTEmJnQ8PTUzJiZyPj0wJiZyPD02fWZ1bmN0aW9uIHBjYShlLHQscil7cmV0dXJuIGU9PT0yND90PT09MCYmcj09PTA6cj49MCYmcjw2MCYmdD49MCYmdDw2MCYmZT49MCYmZTwyNX1mdW5jdGlvbiBoY2EoZSx0KXtyZXR1cm4gdD49MCYmdDw9NTl9dmFyIGsxZSxlY2EsdGNhLHJjYSxjY2EsUnQxLGxJdD1sKCgpPT57S3QoKTtfdCgpO1ZlKCk7azFlPXtkYXRlVGltZURlbGltaXRlcjovW1QgXS8sdGltZVpvbmVEZWxpbWl0ZXI6L1taIF0vaSx0aW1lem9uZTovKFtaKy1dLiopJC99LGVjYT0vXi0/KD86KFxkezN9KXwoXGR7Mn0pKD86LT8oXGR7Mn0pKT98VyhcZHsyfSkoPzotPyhcZHsxfSkpP3wpJC8sdGNhPS9eKFxkezJ9KD86Wy4sXVxkKik/KSg/Ojo/KFxkezJ9KD86Wy4sXVxkKik/KSk/KD86Oj8oXGR7Mn0oPzpbLixdXGQqKT8pKT8kLyxyY2E9L14oWystXSkoXGR7Mn0pKD86Oj8oXGR7Mn0pKT8kLztjY2E9WzMxLG51bGwsMzEsMzAsMzEsMzAsMzEsMzEsMzAsMzEsMzAsMzFdO1J0MT1zSXR9KTtmdW5jdGlvbiBjSXQoZSx0KXtsZXQgcj1lLm1hdGNoKC8oXGR7NH0pLShcZHsyfSktKFxkezJ9KVtUIF0oXGR7Mn0pOihcZHsyfSk6KFxkezJ9KSg/OlwuKFxkezAsN30pKT8oPzpafCguKShcZHsyfSk6PyhcZHsyfSk/KT8vKTtyZXR1cm4gcj9tZShEYXRlLlVUQygrclsxXSwrclsyXS0xLCtyWzNdLCtyWzRdLSgrcls5XXx8MCkqKHJbOF09PSItIj8tMToxKSwrcls1XS0oK3JbMTBdfHwwKSoocls4XT09Ii0iPy0xOjEpLCtyWzZdLCsoKHJbN118fCIwIikrIjAwIikuc3Vic3RyaW5nKDAsMykpLHQ/LmluKTptZShOYU4sdD8uaW4pfXZhciBxdDEsZEl0PWwoKCk9PntWZSgpO3F0MT1jSXR9KTtmdW5jdGlvbiBWMShlLHQscil7bGV0IGE9YjQoZSxyKS10O3JldHVybiBhPD0wJiYoYSs9NykseTQoZSxhLHIpfXZhciBXdDEsaWM9bCgoKT0+e1R2KCk7JHYoKTtXdDE9VjF9KTtmdW5jdGlvbiB1SXQoZSx0KXtyZXR1cm4gVjEoZSw1LHQpfXZhciBadDEsZkl0PWwoKCk9PntpYygpO1p0MT11SXR9KTtmdW5jdGlvbiBwSXQoZSx0KXtyZXR1cm4gVjEoZSwxLHQpfXZhciBLdDEsaEl0PWwoKCk9PntpYygpO0t0MT1wSXR9KTtmdW5jdGlvbiBtSXQoZSx0KXtyZXR1cm4gVjEoZSw2LHQpfXZhciB0cjEsZ0l0PWwoKCk9PntpYygpO3RyMT1tSXR9KTtmdW5jdGlvbiB4SXQoZSx0KXtyZXR1cm4gVjEoZSwwLHQpfXZhciBpcjEsYkl0PWwoKCk9PntpYygpO2lyMT14SXR9KTtmdW5jdGlvbiB2SXQoZSx0KXtyZXR1cm4gVjEoZSw0LHQpfXZhciBzcjEseUl0PWwoKCk9PntpYygpO3NyMT12SXR9KTtmdW5jdGlvbiB3SXQoZSx0KXtyZXR1cm4gVjEoZSwyLHQpfXZhciBkcjEsTUl0PWwoKCk9PntpYygpO2RyMT13SXR9KTtmdW5jdGlvbiBrSXQoZSx0KXtyZXR1cm4gVjEoZSwzLHQpfXZhciBwcjEsU0l0PWwoKCk9PntpYygpO3ByMT1rSXR9KTtmdW5jdGlvbiB6SXQoZSl7cmV0dXJuIE1hdGgudHJ1bmMoZSpUYWUpfXZhciBncjEsQ0l0PWwoKCk9PntLdCgpO2dyMT16SXR9KTtmdW5jdGlvbiBfSXQoZSl7bGV0IHQ9ZS9EYWU7cmV0dXJuIE1hdGgudHJ1bmModCl9dmFyIHZyMSxUSXQ9bCgoKT0+e0t0KCk7dnIxPV9JdH0pO2Z1bmN0aW9uIExJdChlLHQpe2xldCByPXQ/Lm5lYXJlc3RUbz8/MTtpZihyPDF8fHI+MTIpcmV0dXJuIEJlKHQ/LmlufHxlLE5hTik7bGV0IGE9bWUoZSx0Py5pbiksaT1hLmdldE1pbnV0ZXMoKS82MCxvPWEuZ2V0U2Vjb25kcygpLzYwLzYwLG49YS5nZXRNaWxsaXNlY29uZHMoKS8xZTMvNjAvNjAscz1hLmdldEhvdXJzKCkraStvK24sYz10Py5yb3VuZGluZ01ldGhvZD8/InJvdW5kIixmPUgxKGMpKHMvcikqcjtyZXR1cm4gYS5zZXRIb3VycyhmLDAsMCwwKSxhfXZhciBTcjEsREl0PWwoKCk9PntyYygpO190KCk7VmUoKTtTcjE9TEl0fSk7ZnVuY3Rpb24gQUl0KGUsdCl7bGV0IHI9dD8ubmVhcmVzdFRvPz8xO2lmKHI8MXx8cj4zMClyZXR1cm4gQmUoZSxOYU4pO2xldCBhPW1lKGUsdD8uaW4pLGk9YS5nZXRTZWNvbmRzKCkvNjAsbz1hLmdldE1pbGxpc2Vjb25kcygpLzFlMy82MCxuPWEuZ2V0TWludXRlcygpK2krbyxzPXQ/LnJvdW5kaW5nTWV0aG9kPz8icm91bmQiLGQ9SDEocykobi9yKSpyO3JldHVybiBhLnNldE1pbnV0ZXMoZCwwLDApLGF9dmFyIExyMSxFSXQ9bCgoKT0+e3JjKCk7X3QoKTtWZSgpO0xyMT1BSXR9KTtmdW5jdGlvbiAkSXQoZSl7bGV0IHQ9ZS9pNjtyZXR1cm4gTWF0aC50cnVuYyh0KX12YXIgRXIxLFBJdD1sKCgpPT57S3QoKTtFcjE9JEl0fSk7ZnVuY3Rpb24gSUl0KGUpe3JldHVybiBlKm43fXZhciBJcjEsTkl0PWwoKCk9PntLdCgpO0lyMT1JSXR9KTtmdW5jdGlvbiBGSXQoZSl7bGV0IHQ9ZS9sNztyZXR1cm4gTWF0aC50cnVuYyh0KX12YXIgT3IxLE9JdD1sKCgpPT57S3QoKTtPcjE9Rkl0fSk7ZnVuY3Rpb24gTDcoZSx0LHIpe2xldCBhPW1lKGUscj8uaW4pLGk9YS5nZXRGdWxsWWVhcigpLG89YS5nZXREYXRlKCksbj1CZShyPy5pbnx8ZSwwKTtuLnNldEZ1bGxZZWFyKGksdCwxNSksbi5zZXRIb3VycygwLDAsMCwwKTtsZXQgcz15aWUobik7cmV0dXJuIGEuc2V0TW9udGgodCxNYXRoLm1pbihvLHMpKSxhfXZhciBqcjEsUzFlPWwoKCk9PntfdCgpO3JnZSgpO1ZlKCk7anIxPUw3fSk7ZnVuY3Rpb24gUkl0KGUsdCxyKXtsZXQgYT1tZShlLHI/LmluKTtyZXR1cm4gaXNOYU4oK2EpP0JlKHI/LmlufHxlLE5hTik6KHQueWVhciE9bnVsbCYmYS5zZXRGdWxsWWVhcih0LnllYXIpLHQubW9udGghPW51bGwmJihhPUw3KGEsdC5tb250aCkpLHQuZGF0ZSE9bnVsbCYmYS5zZXREYXRlKHQuZGF0ZSksdC5ob3VycyE9bnVsbCYmYS5zZXRIb3Vycyh0LmhvdXJzKSx0Lm1pbnV0ZXMhPW51bGwmJmEuc2V0TWludXRlcyh0Lm1pbnV0ZXMpLHQuc2Vjb25kcyE9bnVsbCYmYS5zZXRTZWNvbmRzKHQuc2Vjb25kcyksdC5taWxsaXNlY29uZHMhPW51bGwmJmEuc2V0TWlsbGlzZWNvbmRzKHQubWlsbGlzZWNvbmRzKSxhKX12YXIgWXIxLEJJdD1sKCgpPT57X3QoKTtTMWUoKTtWZSgpO1lyMT1SSXR9KTtmdW5jdGlvbiBISXQoZSx0LHIpe2xldCBhPW1lKGUscj8uaW4pO3JldHVybiBhLnNldERhdGUodCksYX12YXIgUXIxLHFJdD1sKCgpPT57VmUoKTtRcjE9SEl0fSk7ZnVuY3Rpb24gakl0KGUsdCxyKXtsZXQgYT1tZShlLHI/LmluKTtyZXR1cm4gYS5zZXRNb250aCgwKSxhLnNldERhdGUodCksYX12YXIgZWExLFZJdD1sKCgpPT57VmUoKTtlYTE9akl0fSk7ZnVuY3Rpb24gVUl0KGUpe2xldCB0PXt9LHI9WXIoKTtmb3IobGV0IGEgaW4gcilPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocixhKSYmKHRbYV09clthXSk7Zm9yKGxldCBhIGluIGUpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsYSkmJihlW2FdPT09dm9pZCAwP2RlbGV0ZSB0W2FdOnRbYV09ZVthXSk7c0R0KHQpfXZhciBhYTEsV0l0PWwoKCk9PntSMSgpO2FhMT1VSXR9KTtmdW5jdGlvbiBHSXQoZSx0LHIpe2xldCBhPW1lKGUscj8uaW4pO3JldHVybiBhLnNldEhvdXJzKHQpLGF9dmFyIG5hMSxZSXQ9bCgoKT0+e1ZlKCk7bmExPUdJdH0pO2Z1bmN0aW9uIFpJdChlLHQscil7bGV0IGE9bWUoZSxyPy5pbik7cmV0dXJuIGEuc2V0TWlsbGlzZWNvbmRzKHQpLGF9dmFyIGNhMSxYSXQ9bCgoKT0+e1ZlKCk7Y2ExPVpJdH0pO2Z1bmN0aW9uIFFJdChlLHQscil7bGV0IGE9bWUoZSxyPy5pbik7cmV0dXJuIGEuc2V0TWludXRlcyh0KSxhfXZhciBmYTEsS0l0PWwoKCk9PntWZSgpO2ZhMT1RSXR9KTtmdW5jdGlvbiBKSXQoZSx0LHIpe2xldCBhPW1lKGUscj8uaW4pLGk9TWF0aC50cnVuYyhhLmdldE1vbnRoKCkvMykrMSxvPXQtaTtyZXR1cm4gTDcoYSxhLmdldE1vbnRoKCkrbyozKX12YXIgZ2ExLGVOdD1sKCgpPT57UzFlKCk7VmUoKTtnYTE9Skl0fSk7ZnVuY3Rpb24gdE50KGUsdCxyKXtsZXQgYT1tZShlLHI/LmluKTtyZXR1cm4gYS5zZXRTZWNvbmRzKHQpLGF9dmFyIHZhMSxyTnQ9bCgoKT0+e1ZlKCk7dmExPXROdH0pO2Z1bmN0aW9uIGFOdChlLHQscil7bGV0IGE9WXIoKSxpPXI/LmZpcnN0V2Vla0NvbnRhaW5zRGF0ZT8/cj8ubG9jYWxlPy5vcHRpb25zPy5maXJzdFdlZWtDb250YWluc0RhdGU/P2EuZmlyc3RXZWVrQ29udGFpbnNEYXRlPz9hLmxvY2FsZT8ub3B0aW9ucz8uZmlyc3RXZWVrQ29udGFpbnNEYXRlPz8xLG89UWkobWUoZSxyPy5pbiksdTYoZSxyKSxyKSxuPUJlKHI/LmlufHxlLDApO24uc2V0RnVsbFllYXIodCwwLGkpLG4uc2V0SG91cnMoMCwwLDAsMCk7bGV0IHM9dTYobixyKTtyZXR1cm4gcy5zZXREYXRlKHMuZ2V0RGF0ZSgpK28pLHN9dmFyIENhMSxpTnQ9bCgoKT0+e1IxKCk7X3QoKTtlYygpO3BpZSgpO1ZlKCk7Q2ExPWFOdH0pO2Z1bmN0aW9uIG9OdChlLHQscil7bGV0IGE9bWUoZSxyPy5pbik7cmV0dXJuIGlzTmFOKCthKT9CZShyPy5pbnx8ZSxOYU4pOihhLnNldEZ1bGxZZWFyKHQpLGEpfXZhciBEYTEsbk50PWwoKCk9PntfdCgpO1ZlKCk7RGExPW9OdH0pO2Z1bmN0aW9uIHNOdChlLHQpe2xldCByPW1lKGUsdD8uaW4pLGE9ci5nZXRGdWxsWWVhcigpLGk9TWF0aC5mbG9vcihhLzEwKSoxMDtyZXR1cm4gci5zZXRGdWxsWWVhcihpLDAsMSksci5zZXRIb3VycygwLDAsMCwwKSxyfXZhciAkYTEsbE50PWwoKCk9PntWZSgpOyRhMT1zTnR9KTtmdW5jdGlvbiBjTnQoZSl7cmV0dXJuIHEyKERhdGUubm93KCksZSl9dmFyIE5hMSxkTnQ9bCgoKT0+e2J2KCk7TmExPWNOdH0pO2Z1bmN0aW9uIHVOdChlKXtsZXQgdD1zcihlPy5pbikscj10LmdldEZ1bGxZZWFyKCksYT10LmdldE1vbnRoKCksaT10LmdldERhdGUoKSxvPUJlKGU/LmluLDApO3JldHVybiBvLnNldEZ1bGxZZWFyKHIsYSxpKzEpLG8uc2V0SG91cnMoMCwwLDAsMCksb312YXIgQmExLGZOdD1sKCgpPT57X3QoKTtQaSgpO0JhMT11TnR9KTtmdW5jdGlvbiBwTnQoZSl7bGV0IHQ9c3IoZT8uaW4pLHI9dC5nZXRGdWxsWWVhcigpLGE9dC5nZXRNb250aCgpLGk9dC5nZXREYXRlKCksbz1zcihlPy5pbik7cmV0dXJuIG8uc2V0RnVsbFllYXIocixhLGktMSksby5zZXRIb3VycygwLDAsMCwwKSxvfXZhciBqYTEsaE50PWwoKCk9PntQaSgpO2phMT1wTnR9KTtmdW5jdGlvbiB6MWUoZSx0LHIpe3JldHVybiBSMihlLC10LHIpfXZhciBXYTEsemdlPWwoKCk9PntjNygpO1dhMT16MWV9KTtmdW5jdGlvbiBtTnQoZSx0LHIpe2xldHt5ZWFyczphPTAsbW9udGhzOmk9MCx3ZWVrczpvPTAsZGF5czpuPTAsaG91cnM6cz0wLG1pbnV0ZXM6Yz0wLHNlY29uZHM6ZD0wfT10LGY9ejFlKGUsaSthKjEyLHIpLHU9eTQoZixuK28qNyxyKSxwPWMrcyo2MCxiPShkK3AqNjApKjFlMztyZXR1cm4gQmUocj8uaW58fGUsK3UtYil9dmFyIFFhMSxnTnQ9bCgoKT0+e190KCk7JHYoKTt6Z2UoKTtRYTE9bU50fSk7ZnVuY3Rpb24geE50KGUsdCxyKXtyZXR1cm4gJGFlKGUsLXQscil9dmFyIGVpMSxiTnQ9bCgoKT0+e0w5ZSgpO2VpMT14TnR9KTtmdW5jdGlvbiB2TnQoZSx0LHIpe3JldHVybiBQYWUoZSwtdCxyKX12YXIgYWkxLHlOdD1sKCgpPT57RDllKCk7YWkxPXZOdH0pO2Z1bmN0aW9uIHdOdChlLHQscil7cmV0dXJuIGQ0KGUsLXQscil9dmFyIG5pMSxNTnQ9bCgoKT0+e3h2KCk7bmkxPXdOdH0pO2Z1bmN0aW9uIGtOdChlLHQscil7cmV0dXJuIHU3KGUsLXQscil9dmFyIGNpMSxTTnQ9bCgoKT0+e0ZhZSgpO2NpMT1rTnR9KTtmdW5jdGlvbiB6TnQoZSx0LHIpe3JldHVybiBmNyhlLC10LHIpfXZhciBmaTEsQ050PWwoKCk9PntPYWUoKTtmaTE9ek50fSk7ZnVuY3Rpb24gX050KGUsdCxyKXtyZXR1cm4gUmFlKGUsLXQscil9dmFyIG1pMSxUTnQ9bCgoKT0+eyQ5ZSgpO21pMT1fTnR9KTtmdW5jdGlvbiBMTnQoZSx0LHIpe3JldHVybiBmNChlLC10LHIpfXZhciBiaTEsRE50PWwoKCk9Pnt2digpO2JpMT1MTnR9KTtmdW5jdGlvbiBBTnQoZSx0LHIpe3JldHVybiBCYWUoZSwtdCxyKX12YXIgd2kxLEVOdD1sKCgpPT57UDllKCk7d2kxPUFOdH0pO2Z1bmN0aW9uICROdChlKXtyZXR1cm4gTWF0aC50cnVuYyhlKjcpfXZhciBTaTEsUE50PWwoKCk9PntLdCgpO1NpMT0kTnR9KTtmdW5jdGlvbiBJTnQoZSl7cmV0dXJuIE1hdGgudHJ1bmMoZSozNjUuMjQyNSl9dmFyIF9pMSxOTnQ9bCgoKT0+e0t0KCk7X2kxPUlOdH0pO2Z1bmN0aW9uIEZOdChlKXtyZXR1cm4gTWF0aC50cnVuYyhlKkxhZSl9dmFyIERpMSxPTnQ9bCgoKT0+e0t0KCk7RGkxPUZOdH0pO2Z1bmN0aW9uIFJOdChlKXtyZXR1cm4gTWF0aC50cnVuYyhlKkRhZSl9dmFyICRpMSxCTnQ9bCgoKT0+e0t0KCk7JGkxPVJOdH0pO3ZhciBJdj17fTtxZShJdix7YWRkOigpPT5jNCxhZGRCdXNpbmVzc0RheXM6KCk9PiRhZSxhZGREYXlzOigpPT4kaSxhZGRIb3VyczooKT0+UGFlLGFkZElTT1dlZWtZZWFyczooKT0+TmFlLGFkZE1pbGxpc2Vjb25kczooKT0+ZDQsYWRkTWludXRlczooKT0+dTcsYWRkTW9udGhzOigpPT5SMixhZGRRdWFydGVyczooKT0+ZjcsYWRkU2Vjb25kczooKT0+UmFlLGFkZFdlZWtzOigpPT5mNCxhZGRZZWFyczooKT0+QmFlLGFyZUludGVydmFsc092ZXJsYXBwaW5nOigpPT5sRHQsY2xhbXA6KCk9PmREdCxjbG9zZXN0SW5kZXhUbzooKT0+amFlLGNsb3Nlc3RUbzooKT0+ZkR0LGNvbXBhcmVBc2M6KCk9PkIxLGNvbXBhcmVEZXNjOigpPT5oRHQsY29uc3RydWN0RnJvbTooKT0+QmUsY29uc3RydWN0Tm93OigpPT5zcixkYXlzVG9XZWVrczooKT0+Z0R0LGRpZmZlcmVuY2VJbkJ1c2luZXNzRGF5czooKT0+YkR0LGRpZmZlcmVuY2VJbkNhbGVuZGFyRGF5czooKT0+UWksZGlmZmVyZW5jZUluQ2FsZW5kYXJJU09XZWVrWWVhcnM6KCk9PlVhZSxkaWZmZXJlbmNlSW5DYWxlbmRhcklTT1dlZWtzOigpPT55RHQsZGlmZmVyZW5jZUluQ2FsZW5kYXJNb250aHM6KCk9Pm42LGRpZmZlcmVuY2VJbkNhbGVuZGFyUXVhcnRlcnM6KCk9Pmg3LGRpZmZlcmVuY2VJbkNhbGVuZGFyV2Vla3M6KCk9PnM2LGRpZmZlcmVuY2VJbkNhbGVuZGFyWWVhcnM6KCk9PnA0LGRpZmZlcmVuY2VJbkRheXM6KCk9Pm03LGRpZmZlcmVuY2VJbkhvdXJzOigpPT5sNixkaWZmZXJlbmNlSW5JU09XZWVrWWVhcnM6KCk9PmtEdCxkaWZmZXJlbmNlSW5NaWxsaXNlY29uZHM6KCk9Pmc3LGRpZmZlcmVuY2VJbk1pbnV0ZXM6KCk9PmM2LGRpZmZlcmVuY2VJbk1vbnRoczooKT0+aDQsZGlmZmVyZW5jZUluUXVhcnRlcnM6KCk9PnpEdCxkaWZmZXJlbmNlSW5TZWNvbmRzOigpPT5WMixkaWZmZXJlbmNlSW5XZWVrczooKT0+X0R0LGRpZmZlcmVuY2VJblllYXJzOigpPT5haWUsZWFjaERheU9mSW50ZXJ2YWw6KCk9PmlpZSxlYWNoSG91ck9mSW50ZXJ2YWw6KCk9PkxEdCxlYWNoTWludXRlT2ZJbnRlcnZhbDooKT0+QUR0LGVhY2hNb250aE9mSW50ZXJ2YWw6KCk9PiREdCxlYWNoUXVhcnRlck9mSW50ZXJ2YWw6KCk9PklEdCxlYWNoV2Vla09mSW50ZXJ2YWw6KCk9PkZEdCxlYWNoV2Vla2VuZE9mSW50ZXJ2YWw6KCk9PnY3LGVhY2hXZWVrZW5kT2ZNb250aDooKT0+UkR0LGVhY2hXZWVrZW5kT2ZZZWFyOigpPT5IRHQsZWFjaFllYXJPZkludGVydmFsOigpPT5qRHQsZW5kT2ZEYXk6KCk9Png3LGVuZE9mRGVjYWRlOigpPT5VRHQsZW5kT2ZIb3VyOigpPT5HRHQsZW5kT2ZJU09XZWVrOigpPT5aRHQsZW5kT2ZJU09XZWVrWWVhcjooKT0+UUR0LGVuZE9mTWludXRlOigpPT5KRHQsZW5kT2ZNb250aDooKT0+YjcsZW5kT2ZRdWFydGVyOigpPT50QXQsZW5kT2ZTZWNvbmQ6KCk9PmFBdCxlbmRPZlRvZGF5OigpPT5vQXQsZW5kT2ZUb21vcnJvdzooKT0+c0F0LGVuZE9mV2VlazooKT0+Y2llLGVuZE9mWWVhcjooKT0+c2llLGVuZE9mWWVzdGVyZGF5OigpPT5jQXQsZm9ybWF0OigpPT5fdixmb3JtYXREYXRlOigpPT5fdixmb3JtYXREaXN0YW5jZTooKT0+eGllLGZvcm1hdERpc3RhbmNlU3RyaWN0OigpPT5iaWUsZm9ybWF0RGlzdGFuY2VUb05vdzooKT0+RUF0LGZvcm1hdERpc3RhbmNlVG9Ob3dTdHJpY3Q6KCk9PlBBdCxmb3JtYXREdXJhdGlvbjooKT0+TkF0LGZvcm1hdElTTzooKT0+T0F0LGZvcm1hdElTTzkwNzU6KCk9PkJBdCxmb3JtYXRJU09EdXJhdGlvbjooKT0+cUF0LGZvcm1hdFJGQzMzMzk6KCk9PlZBdCxmb3JtYXRSRkM3MjMxOigpPT5XQXQsZm9ybWF0UmVsYXRpdmU6KCk9PllBdCxmb3JtYXR0ZXJzOigpPT56dixmcm9tVW5peFRpbWU6KCk9PlhBdCxnZXREYXRlOigpPT52aWUsZ2V0RGF5OigpPT5iNCxnZXREYXlPZlllYXI6KCk9PnVpZSxnZXREYXlzSW5Nb250aDooKT0+eWllLGdldERheXNJblllYXI6KCk9PktBdCxnZXREZWNhZGU6KCk9PmVFdCxnZXREZWZhdWx0T3B0aW9uczooKT0+TWllLGdldEhvdXJzOigpPT5yRXQsZ2V0SVNPRGF5OigpPT5raWUsZ2V0SVNPV2VlazooKT0+azcsZ2V0SVNPV2Vla1llYXI6KCk9PnNvLGdldElTT1dlZWtzSW5ZZWFyOigpPT5pRXQsZ2V0TWlsbGlzZWNvbmRzOigpPT5uRXQsZ2V0TWludXRlczooKT0+bEV0LGdldE1vbnRoOigpPT5kRXQsZ2V0T3ZlcmxhcHBpbmdEYXlzSW5JbnRlcnZhbHM6KCk9PmZFdCxnZXRRdWFydGVyOigpPT55dixnZXRTZWNvbmRzOigpPT5oRXQsZ2V0VGltZTooKT0+Z0V0LGdldFVuaXhUaW1lOigpPT5iRXQsZ2V0V2VlazooKT0+UzcsZ2V0V2Vla09mTW9udGg6KCk9PnlFdCxnZXRXZWVrWWVhcjooKT0+ZzQsZ2V0V2Vla3NJbk1vbnRoOigpPT5NRXQsZ2V0WWVhcjooKT0+U0V0LGhvdXJzVG9NaWxsaXNlY29uZHM6KCk9PkNFdCxob3Vyc1RvTWludXRlczooKT0+VEV0LGhvdXJzVG9TZWNvbmRzOigpPT5ERXQsaW50ZXJ2YWw6KCk9PkVFdCxpbnRlcnZhbFRvRHVyYXRpb246KCk9PlBFdCxpbnRsRm9ybWF0OigpPT5ORXQsaW50bEZvcm1hdERpc3RhbmNlOigpPT5PRXQsaXNBZnRlcjooKT0+QkV0LGlzQmVmb3JlOigpPT5xRXQsaXNEYXRlOigpPT5WYWUsaXNFcXVhbDooKT0+VkV0LGlzRXhpc3RzOigpPT5XRXQsaXNGaXJzdERheU9mTW9udGg6KCk9PllFdCxpc0ZyaWRheTooKT0+WEV0LGlzRnV0dXJlOigpPT5LRXQsaXNMYXN0RGF5T2ZNb250aDooKT0+cmllLGlzTGVhcFllYXI6KCk9PndpZSxpc01hdGNoOigpPT5FJHQsaXNNb25kYXk6KCk9PlAkdCxpc1Bhc3Q6KCk9Pk4kdCxpc1NhbWVEYXk6KCk9PmoyLGlzU2FtZUhvdXI6KCk9PmgxZSxpc1NhbWVJU09XZWVrOigpPT5nMWUsaXNTYW1lSVNPV2Vla1llYXI6KCk9Pk8kdCxpc1NhbWVNaW51dGU6KCk9PngxZSxpc1NhbWVNb250aDooKT0+YjFlLGlzU2FtZVF1YXJ0ZXI6KCk9PnYxZSxpc1NhbWVTZWNvbmQ6KCk9PnkxZSxpc1NhbWVXZWVrOigpPT5UNyxpc1NhbWVZZWFyOigpPT53MWUsaXNTYXR1cmRheTooKT0+QWFlLGlzU3VuZGF5OigpPT5FYWUsaXNUaGlzSG91cjooKT0+QiR0LGlzVGhpc0lTT1dlZWs6KCk9PnEkdCxpc1RoaXNNaW51dGU6KCk9PlYkdCxpc1RoaXNNb250aDooKT0+VyR0LGlzVGhpc1F1YXJ0ZXI6KCk9PlkkdCxpc1RoaXNTZWNvbmQ6KCk9PlgkdCxpc1RoaXNXZWVrOigpPT5LJHQsaXNUaGlzWWVhcjooKT0+ZVB0LGlzVGh1cnNkYXk6KCk9PnJQdCxpc1RvZGF5OigpPT5pUHQsaXNUb21vcnJvdzooKT0+blB0LGlzVHVlc2RheTooKT0+bFB0LGlzVmFsaWQ6KCk9PnUxLGlzV2VkbmVzZGF5OigpPT5kUHQsaXNXZWVrZW5kOigpPT5CMixpc1dpdGhpbkludGVydmFsOigpPT5mUHQsaXNZZXN0ZXJkYXk6KCk9PmhQdCxsYXN0RGF5T2ZEZWNhZGU6KCk9PmdQdCxsYXN0RGF5T2ZJU09XZWVrOigpPT5iUHQsbGFzdERheU9mSVNPV2Vla1llYXI6KCk9PnlQdCxsYXN0RGF5T2ZNb250aDooKT0+U2llLGxhc3REYXlPZlF1YXJ0ZXI6KCk9Pk1QdCxsYXN0RGF5T2ZXZWVrOigpPT5NMWUsbGFzdERheU9mWWVhcjooKT0+U1B0LGxpZ2h0Rm9ybWF0OigpPT5DUHQsbGlnaHRGb3JtYXR0ZXJzOigpPT5Kbyxsb25nRm9ybWF0dGVyczooKT0+eDQsbWF4OigpPT5IYWUsbWlsbGlzZWNvbmRzOigpPT5UUHQsbWlsbGlzZWNvbmRzVG9Ib3VyczooKT0+RFB0LG1pbGxpc2Vjb25kc1RvTWludXRlczooKT0+RVB0LG1pbGxpc2Vjb25kc1RvU2Vjb25kczooKT0+UFB0LG1pbjooKT0+cWFlLG1pbnV0ZXNUb0hvdXJzOigpPT5OUHQsbWludXRlc1RvTWlsbGlzZWNvbmRzOigpPT5PUHQsbWludXRlc1RvU2Vjb25kczooKT0+QlB0LG1vbnRoc1RvUXVhcnRlcnM6KCk9PnFQdCxtb250aHNUb1llYXJzOigpPT5WUHQsbmV4dERheTooKT0+ajEsbmV4dEZyaWRheTooKT0+V1B0LG5leHRNb25kYXk6KCk9PllQdCxuZXh0U2F0dXJkYXk6KCk9PlhQdCxuZXh0U3VuZGF5OigpPT5LUHQsbmV4dFRodXJzZGF5OigpPT5lSXQsbmV4dFR1ZXNkYXk6KCk9PnJJdCxuZXh0V2VkbmVzZGF5OigpPT5pSXQscGFyc2U6KCk9PnAxZSxwYXJzZUlTTzooKT0+c0l0LHBhcnNlSlNPTjooKT0+Y0l0LHBhcnNlcnM6KCk9PmYxZSxwcmV2aW91c0RheTooKT0+VjEscHJldmlvdXNGcmlkYXk6KCk9PnVJdCxwcmV2aW91c01vbmRheTooKT0+cEl0LHByZXZpb3VzU2F0dXJkYXk6KCk9Pm1JdCxwcmV2aW91c1N1bmRheTooKT0+eEl0LHByZXZpb3VzVGh1cnNkYXk6KCk9PnZJdCxwcmV2aW91c1R1ZXNkYXk6KCk9PndJdCxwcmV2aW91c1dlZG5lc2RheTooKT0+a0l0LHF1YXJ0ZXJzVG9Nb250aHM6KCk9PnpJdCxxdWFydGVyc1RvWWVhcnM6KCk9Pl9JdCxyb3VuZFRvTmVhcmVzdEhvdXJzOigpPT5MSXQscm91bmRUb05lYXJlc3RNaW51dGVzOigpPT5BSXQsc2Vjb25kc1RvSG91cnM6KCk9PiRJdCxzZWNvbmRzVG9NaWxsaXNlY29uZHM6KCk9PklJdCxzZWNvbmRzVG9NaW51dGVzOigpPT5GSXQsc2V0OigpPT5SSXQsc2V0RGF0ZTooKT0+SEl0LHNldERheTooKT0+djQsc2V0RGF5T2ZZZWFyOigpPT5qSXQsc2V0RGVmYXVsdE9wdGlvbnM6KCk9PlVJdCxzZXRIb3VyczooKT0+R0l0LHNldElTT0RheTooKT0+WGllLHNldElTT1dlZWs6KCk9PmppZSxzZXRJU09XZWVrWWVhcjooKT0+SWFlLHNldE1pbGxpc2Vjb25kczooKT0+Wkl0LHNldE1pbnV0ZXM6KCk9PlFJdCxzZXRNb250aDooKT0+TDcsc2V0UXVhcnRlcjooKT0+Skl0LHNldFNlY29uZHM6KCk9PnROdCxzZXRXZWVrOigpPT5IaWUsc2V0V2Vla1llYXI6KCk9PmFOdCxzZXRZZWFyOigpPT5vTnQsc3RhcnRPZkRheTooKT0+cTIsc3RhcnRPZkRlY2FkZTooKT0+c050LHN0YXJ0T2ZIb3VyOigpPT5EdixzdGFydE9mSVNPV2VlazooKT0+aGksc3RhcnRPZklTT1dlZWtZZWFyOigpPT5LbyxzdGFydE9mTWludXRlOigpPT5BdixzdGFydE9mTW9udGg6KCk9Pm00LHN0YXJ0T2ZRdWFydGVyOigpPT5XMixzdGFydE9mU2Vjb25kOigpPT5FdixzdGFydE9mVG9kYXk6KCk9PmNOdCxzdGFydE9mVG9tb3Jyb3c6KCk9PnVOdCxzdGFydE9mV2VlazooKT0+ZGEsc3RhcnRPZldlZWtZZWFyOigpPT51NixzdGFydE9mWWVhcjooKT0+eTcsc3RhcnRPZlllc3RlcmRheTooKT0+cE50LHN1YjooKT0+bU50LHN1YkJ1c2luZXNzRGF5czooKT0+eE50LHN1YkRheXM6KCk9Pnk0LHN1YkhvdXJzOigpPT52TnQsc3ViSVNPV2Vla1llYXJzOigpPT5RYWUsc3ViTWlsbGlzZWNvbmRzOigpPT53TnQsc3ViTWludXRlczooKT0+a050LHN1Yk1vbnRoczooKT0+ejFlLHN1YlF1YXJ0ZXJzOigpPT56TnQsc3ViU2Vjb25kczooKT0+X050LHN1YldlZWtzOigpPT5MTnQsc3ViWWVhcnM6KCk9PkFOdCx0b0RhdGU6KCk9Pm1lLHRyYW5zcG9zZTooKT0+emllLHdlZWtzVG9EYXlzOigpPT4kTnQseWVhcnNUb0RheXM6KCk9PklOdCx5ZWFyc1RvTW9udGhzOigpPT5GTnQseWVhcnNUb1F1YXJ0ZXJzOigpPT5STnR9KTt2YXIgSE50PWwoKCk9PntDOWUoKTtMOWUoKTtPMigpO0Q5ZSgpO0U5ZSgpO3h2KCk7RmFlKCk7YzcoKTtPYWUoKTskOWUoKTt2digpO1A5ZSgpO2NEdCgpO3VEdCgpO0Y5ZSgpO3BEdCgpO282KCk7bUR0KCk7X3QoKTtQaSgpO3hEdCgpO3ZEdCgpO2VjKCk7UjllKCk7d0R0KCk7V2FlKCk7SDllKCk7R2FlKCk7WWFlKCk7WmFlKCk7WGFlKCk7U0R0KCk7S2FlKCk7SmFlKCk7d3YoKTtDRHQoKTtNdigpO1REdCgpO1Y5ZSgpO1U5ZSgpO0REdCgpO0VEdCgpO1BEdCgpO05EdCgpO09EdCgpO25pZSgpO0JEdCgpO3FEdCgpO1ZEdCgpO2VpZSgpO1dEdCgpO1lEdCgpO1hEdCgpO0tEdCgpO2VBdCgpO3RpZSgpO3JBdCgpO2lBdCgpO25BdCgpO2xBdCgpO0c5ZSgpO1c5ZSgpO2RBdCgpO0s5ZSgpO0o5ZSgpO2VnZSgpOyRBdCgpO0lBdCgpO0ZBdCgpO1JBdCgpO0hBdCgpO2pBdCgpO1VBdCgpO0dBdCgpO1pBdCgpO1FBdCgpO3RnZSgpO1R2KCk7WTllKCk7cmdlKCk7SkF0KCk7dEV0KCk7aWdlKCk7YUV0KCk7b2dlKCk7ZmllKCk7dTQoKTtvRXQoKTtzRXQoKTtjRXQoKTt1RXQoKTtwRXQoKTtCOWUoKTttRXQoKTt4RXQoKTt2RXQoKTtoaWUoKTt3RXQoKTtTdigpO2tFdCgpO3pFdCgpO19FdCgpO0xFdCgpO0FFdCgpOyRFdCgpO0lFdCgpO0ZFdCgpO1JFdCgpO0hFdCgpO2pFdCgpO085ZSgpO1VFdCgpO0dFdCgpO1pFdCgpO1FFdCgpO0pFdCgpO2o5ZSgpO2FnZSgpOyQkdCgpO0kkdCgpO0YkdCgpO3A3KCk7aGdlKCk7bWdlKCk7UiR0KCk7eGdlKCk7YmdlKCk7dmdlKCk7d2dlKCk7bTFlKCk7TWdlKCk7XzllKCk7VDllKCk7SCR0KCk7aiR0KCk7VSR0KCk7RyR0KCk7WiR0KCk7USR0KCk7SiR0KCk7dFB0KCk7YVB0KCk7b1B0KCk7c1B0KCk7Y1B0KCk7dGMoKTt1UHQoKTtndigpO3BQdCgpO21QdCgpO3hQdCgpO3ZQdCgpO3dQdCgpO25nZSgpO2tQdCgpO2tnZSgpO3pQdCgpO19QdCgpO0k5ZSgpO0xQdCgpO0FQdCgpOyRQdCgpO0lQdCgpO045ZSgpO0ZQdCgpO1JQdCgpO0hQdCgpO2pQdCgpO1VQdCgpO2FjKCk7R1B0KCk7WlB0KCk7UVB0KCk7SlB0KCk7dEl0KCk7YUl0KCk7b0l0KCk7ZmdlKCk7bEl0KCk7ZEl0KCk7aWMoKTtmSXQoKTtoSXQoKTtnSXQoKTtiSXQoKTt5SXQoKTtNSXQoKTtTSXQoKTtDSXQoKTtUSXQoKTtESXQoKTtFSXQoKTtQSXQoKTtOSXQoKTtPSXQoKTtCSXQoKTtxSXQoKTtMdigpO1ZJdCgpO1dJdCgpO1lJdCgpO3VnZSgpO2RnZSgpO0E5ZSgpO1hJdCgpO0tJdCgpO1MxZSgpO2VOdCgpO3JOdCgpO2NnZSgpO2lOdCgpO25OdCgpO2J2KCk7bE50KCk7cGdlKCk7SDIoKTtkNygpO2dnZSgpO2t2KCk7b2llKCk7eWdlKCk7ZE50KCk7Zk50KCk7YnMoKTtwaWUoKTtsaWUoKTtoTnQoKTtnTnQoKTtiTnQoKTskdigpO3lOdCgpO3E5ZSgpO01OdCgpO1NOdCgpO3pnZSgpO0NOdCgpO1ROdCgpO0ROdCgpO0VOdCgpO1ZlKCk7c2dlKCk7UE50KCk7Tk50KCk7T050KCk7Qk50KCl9KTt2YXIgcU50PVhlKChDZ2UsX2dlKT0+eyhmdW5jdGlvbihlLHQpe3R5cGVvZiBDZ2U9PSJvYmplY3QiJiZ0eXBlb2YgX2dlPCJ1Ij9fZ2UuZXhwb3J0cz10KCk6dHlwZW9mIGRlZmluZT09ImZ1bmN0aW9uIiYmZGVmaW5lLmFtZD9kZWZpbmUodCk6KGU9dHlwZW9mIGdsb2JhbFRoaXM8InUiP2dsb2JhbFRoaXM6ZXx8c2VsZikuZGF5anM9dCgpfSkoQ2dlLChmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0Ijt2YXIgZT0xZTMsdD02ZTQscj0zNmU1LGE9Im1pbGxpc2Vjb25kIixpPSJzZWNvbmQiLG89Im1pbnV0ZSIsbj0iaG91ciIscz0iZGF5IixjPSJ3ZWVrIixkPSJtb250aCIsZj0icXVhcnRlciIsdT0ieWVhciIscD0iZGF0ZSIsaD0iSW52YWxpZCBEYXRlIixiPS9eKFxkezR9KVstL10/KFxkezEsMn0pP1stL10/KFxkezAsMn0pW1R0XHNdKihcZHsxLDJ9KT86PyhcZHsxLDJ9KT86PyhcZHsxLDJ9KT9bLjpdPyhcZCspPyQvLHg9L1xbKFteXF1dKyldfFl7MSw0fXxNezEsNH18RHsxLDJ9fGR7MSw0fXxIezEsMn18aHsxLDJ9fGF8QXxtezEsMn18c3sxLDJ9fFp7MSwyfXxTU1MvZyxnPXtuYW1lOiJlbiIsd2Vla2RheXM6IlN1bmRheV9Nb25kYXlfVHVlc2RheV9XZWRuZXNkYXlfVGh1cnNkYXlfRnJpZGF5X1NhdHVyZGF5Ii5zcGxpdCgiXyIpLG1vbnRoczoiSmFudWFyeV9GZWJydWFyeV9NYXJjaF9BcHJpbF9NYXlfSnVuZV9KdWx5X0F1Z3VzdF9TZXB0ZW1iZXJfT2N0b2Jlcl9Ob3ZlbWJlcl9EZWNlbWJlciIuc3BsaXQoIl8iKSxvcmRpbmFsOmZ1bmN0aW9uKHkpe3ZhciBFPVsidGgiLCJzdCIsIm5kIiwicmQiXSxfPXklMTAwO3JldHVybiJbIit5KyhFWyhfLTIwKSUxMF18fEVbX118fEVbMF0pKyJdIn19LHY9ZnVuY3Rpb24oeSxFLF8pe3ZhciBQPVN0cmluZyh5KTtyZXR1cm4hUHx8UC5sZW5ndGg+PUU/eToiIitBcnJheShFKzEtUC5sZW5ndGgpLmpvaW4oXykreX0sdz17czp2LHo6ZnVuY3Rpb24oeSl7dmFyIEU9LXkudXRjT2Zmc2V0KCksXz1NYXRoLmFicyhFKSxQPU1hdGguZmxvb3IoXy82MCksVj1fJTYwO3JldHVybihFPD0wPyIrIjoiLSIpK3YoUCwyLCIwIikrIjoiK3YoViwyLCIwIil9LG06ZnVuY3Rpb24geShFLF8pe2lmKEUuZGF0ZSgpPF8uZGF0ZSgpKXJldHVybi15KF8sRSk7dmFyIFA9MTIqKF8ueWVhcigpLUUueWVhcigpKSsoXy5tb250aCgpLUUubW9udGgoKSksVj1FLmNsb25lKCkuYWRkKFAsZCksSD1fLVY8MCxXPUUuY2xvbmUoKS5hZGQoUCsoSD8tMToxKSxkKTtyZXR1cm4rKC0oUCsoXy1WKS8oSD9WLVc6Vy1WKSl8fDApfSxhOmZ1bmN0aW9uKHkpe3JldHVybiB5PDA/TWF0aC5jZWlsKHkpfHwwOk1hdGguZmxvb3IoeSl9LHA6ZnVuY3Rpb24oeSl7cmV0dXJue006ZCx5OnUsdzpjLGQ6cyxEOnAsaDpuLG06byxzOmksbXM6YSxROmZ9W3ldfHxTdHJpbmcoeXx8IiIpLnRvTG93ZXJDYXNlKCkucmVwbGFjZSgvcyQvLCIiKX0sdTpmdW5jdGlvbih5KXtyZXR1cm4geT09PXZvaWQgMH19LE09ImVuIixGPXt9O0ZbTV09Zzt2YXIgQz0iJGlzRGF5anNPYmplY3QiLGs9ZnVuY3Rpb24oeSl7cmV0dXJuIHkgaW5zdGFuY2VvZiBCfHwhKCF5fHwheVtDXSl9LE49ZnVuY3Rpb24geShFLF8sUCl7dmFyIFY7aWYoIUUpcmV0dXJuIE07aWYodHlwZW9mIEU9PSJzdHJpbmciKXt2YXIgSD1FLnRvTG93ZXJDYXNlKCk7RltIXSYmKFY9SCksXyYmKEZbSF09XyxWPUgpO3ZhciBXPUUuc3BsaXQoIi0iKTtpZighViYmVy5sZW5ndGg+MSlyZXR1cm4geShXWzBdKX1lbHNle3ZhciBhZT1FLm5hbWU7RlthZV09RSxWPWFlfXJldHVybiFQJiZWJiYoTT1WKSxWfHwhUCYmTX0sJD1mdW5jdGlvbih5LEUpe2lmKGsoeSkpcmV0dXJuIHkuY2xvbmUoKTt2YXIgXz10eXBlb2YgRT09Im9iamVjdCI/RTp7fTtyZXR1cm4gXy5kYXRlPXksXy5hcmdzPWFyZ3VtZW50cyxuZXcgQihfKX0sST13O0kubD1OLEkuaT1rLEkudz1mdW5jdGlvbih5LEUpe3JldHVybiAkKHkse2xvY2FsZTpFLiRMLHV0YzpFLiR1LHg6RS4keCwkb2Zmc2V0OkUuJG9mZnNldH0pfTt2YXIgQj0oZnVuY3Rpb24oKXtmdW5jdGlvbiB5KF8pe3RoaXMuJEw9TihfLmxvY2FsZSxudWxsLCEwKSx0aGlzLnBhcnNlKF8pLHRoaXMuJHg9dGhpcy4keHx8Xy54fHx7fSx0aGlzW0NdPSEwfXZhciBFPXkucHJvdG90eXBlO3JldHVybiBFLnBhcnNlPWZ1bmN0aW9uKF8pe3RoaXMuJGQ9KGZ1bmN0aW9uKFApe3ZhciBWPVAuZGF0ZSxIPVAudXRjO2lmKFY9PT1udWxsKXJldHVybiBuZXcgRGF0ZShOYU4pO2lmKEkudShWKSlyZXR1cm4gbmV3IERhdGU7aWYoViBpbnN0YW5jZW9mIERhdGUpcmV0dXJuIG5ldyBEYXRlKFYpO2lmKHR5cGVvZiBWPT0ic3RyaW5nIiYmIS9aJC9pLnRlc3QoVikpe3ZhciBXPVYubWF0Y2goYik7aWYoVyl7dmFyIGFlPVdbMl0tMXx8MCxUPShXWzddfHwiMCIpLnN1YnN0cmluZygwLDMpO3JldHVybiBIP25ldyBEYXRlKERhdGUuVVRDKFdbMV0sYWUsV1szXXx8MSxXWzRdfHwwLFdbNV18fDAsV1s2XXx8MCxUKSk6bmV3IERhdGUoV1sxXSxhZSxXWzNdfHwxLFdbNF18fDAsV1s1XXx8MCxXWzZdfHwwLFQpfX1yZXR1cm4gbmV3IERhdGUoVil9KShfKSx0aGlzLmluaXQoKX0sRS5pbml0PWZ1bmN0aW9uKCl7dmFyIF89dGhpcy4kZDt0aGlzLiR5PV8uZ2V0RnVsbFllYXIoKSx0aGlzLiRNPV8uZ2V0TW9udGgoKSx0aGlzLiREPV8uZ2V0RGF0ZSgpLHRoaXMuJFc9Xy5nZXREYXkoKSx0aGlzLiRIPV8uZ2V0SG91cnMoKSx0aGlzLiRtPV8uZ2V0TWludXRlcygpLHRoaXMuJHM9Xy5nZXRTZWNvbmRzKCksdGhpcy4kbXM9Xy5nZXRNaWxsaXNlY29uZHMoKX0sRS4kdXRpbHM9ZnVuY3Rpb24oKXtyZXR1cm4gSX0sRS5pc1ZhbGlkPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuJGQudG9TdHJpbmcoKSE9PWh9LEUuaXNTYW1lPWZ1bmN0aW9uKF8sUCl7dmFyIFY9JChfKTtyZXR1cm4gdGhpcy5zdGFydE9mKFApPD1WJiZWPD10aGlzLmVuZE9mKFApfSxFLmlzQWZ0ZXI9ZnVuY3Rpb24oXyxQKXtyZXR1cm4gJChfKTx0aGlzLnN0YXJ0T2YoUCl9LEUuaXNCZWZvcmU9ZnVuY3Rpb24oXyxQKXtyZXR1cm4gdGhpcy5lbmRPZihQKTwkKF8pfSxFLiRnPWZ1bmN0aW9uKF8sUCxWKXtyZXR1cm4gSS51KF8pP3RoaXNbUF06dGhpcy5zZXQoVixfKX0sRS51bml4PWZ1bmN0aW9uKCl7cmV0dXJuIE1hdGguZmxvb3IodGhpcy52YWx1ZU9mKCkvMWUzKX0sRS52YWx1ZU9mPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuJGQuZ2V0VGltZSgpfSxFLnN0YXJ0T2Y9ZnVuY3Rpb24oXyxQKXt2YXIgVj10aGlzLEg9ISFJLnUoUCl8fFAsVz1JLnAoXyksYWU9ZnVuY3Rpb24oQSxEKXt2YXIgUj1JLncoVi4kdT9EYXRlLlVUQyhWLiR5LEQsQSk6bmV3IERhdGUoVi4keSxELEEpLFYpO3JldHVybiBIP1I6Ui5lbmRPZihzKX0sVD1mdW5jdGlvbihBLEQpe3JldHVybiBJLncoVi50b0RhdGUoKVtBXS5hcHBseShWLnRvRGF0ZSgicyIpLChIP1swLDAsMCwwXTpbMjMsNTksNTksOTk5XSkuc2xpY2UoRCkpLFYpfSxKPXRoaXMuJFcsZmU9dGhpcy4kTSxMPXRoaXMuJEQsUT0ic2V0IisodGhpcy4kdT8iVVRDIjoiIik7c3dpdGNoKFcpe2Nhc2UgdTpyZXR1cm4gSD9hZSgxLDApOmFlKDMxLDExKTtjYXNlIGQ6cmV0dXJuIEg/YWUoMSxmZSk6YWUoMCxmZSsxKTtjYXNlIGM6dmFyIGtlPXRoaXMuJGxvY2FsZSgpLndlZWtTdGFydHx8MCxHPShKPGtlP0orNzpKKS1rZTtyZXR1cm4gYWUoSD9MLUc6TCsoNi1HKSxmZSk7Y2FzZSBzOmNhc2UgcDpyZXR1cm4gVChRKyJIb3VycyIsMCk7Y2FzZSBuOnJldHVybiBUKFErIk1pbnV0ZXMiLDEpO2Nhc2UgbzpyZXR1cm4gVChRKyJTZWNvbmRzIiwyKTtjYXNlIGk6cmV0dXJuIFQoUSsiTWlsbGlzZWNvbmRzIiwzKTtkZWZhdWx0OnJldHVybiB0aGlzLmNsb25lKCl9fSxFLmVuZE9mPWZ1bmN0aW9uKF8pe3JldHVybiB0aGlzLnN0YXJ0T2YoXywhMSl9LEUuJHNldD1mdW5jdGlvbihfLFApe3ZhciBWLEg9SS5wKF8pLFc9InNldCIrKHRoaXMuJHU/IlVUQyI6IiIpLGFlPShWPXt9LFZbc109VysiRGF0ZSIsVltwXT1XKyJEYXRlIixWW2RdPVcrIk1vbnRoIixWW3VdPVcrIkZ1bGxZZWFyIixWW25dPVcrIkhvdXJzIixWW29dPVcrIk1pbnV0ZXMiLFZbaV09VysiU2Vjb25kcyIsVlthXT1XKyJNaWxsaXNlY29uZHMiLFYpW0hdLFQ9SD09PXM/dGhpcy4kRCsoUC10aGlzLiRXKTpQO2lmKEg9PT1kfHxIPT09dSl7dmFyIEo9dGhpcy5jbG9uZSgpLnNldChwLDEpO0ouJGRbYWVdKFQpLEouaW5pdCgpLHRoaXMuJGQ9Si5zZXQocCxNYXRoLm1pbih0aGlzLiRELEouZGF5c0luTW9udGgoKSkpLiRkfWVsc2UgYWUmJnRoaXMuJGRbYWVdKFQpO3JldHVybiB0aGlzLmluaXQoKSx0aGlzfSxFLnNldD1mdW5jdGlvbihfLFApe3JldHVybiB0aGlzLmNsb25lKCkuJHNldChfLFApfSxFLmdldD1mdW5jdGlvbihfKXtyZXR1cm4gdGhpc1tJLnAoXyldKCl9LEUuYWRkPWZ1bmN0aW9uKF8sUCl7dmFyIFYsSD10aGlzO189TnVtYmVyKF8pO3ZhciBXPUkucChQKSxhZT1mdW5jdGlvbihmZSl7dmFyIEw9JChIKTtyZXR1cm4gSS53KEwuZGF0ZShMLmRhdGUoKStNYXRoLnJvdW5kKGZlKl8pKSxIKX07aWYoVz09PWQpcmV0dXJuIHRoaXMuc2V0KGQsdGhpcy4kTStfKTtpZihXPT09dSlyZXR1cm4gdGhpcy5zZXQodSx0aGlzLiR5K18pO2lmKFc9PT1zKXJldHVybiBhZSgxKTtpZihXPT09YylyZXR1cm4gYWUoNyk7dmFyIFQ9KFY9e30sVltvXT10LFZbbl09cixWW2ldPWUsVilbV118fDEsSj10aGlzLiRkLmdldFRpbWUoKStfKlQ7cmV0dXJuIEkudyhKLHRoaXMpfSxFLnN1YnRyYWN0PWZ1bmN0aW9uKF8sUCl7cmV0dXJuIHRoaXMuYWRkKC0xKl8sUCl9LEUuZm9ybWF0PWZ1bmN0aW9uKF8pe3ZhciBQPXRoaXMsVj10aGlzLiRsb2NhbGUoKTtpZighdGhpcy5pc1ZhbGlkKCkpcmV0dXJuIFYuaW52YWxpZERhdGV8fGg7dmFyIEg9X3x8IllZWVktTU0tRERUSEg6bW06c3NaIixXPUkueih0aGlzKSxhZT10aGlzLiRILFQ9dGhpcy4kbSxKPXRoaXMuJE0sZmU9Vi53ZWVrZGF5cyxMPVYubW9udGhzLFE9Vi5tZXJpZGllbSxrZT1mdW5jdGlvbihELFIsTyxZKXtyZXR1cm4gRCYmKERbUl18fEQoUCxIKSl8fE9bUl0uc2xpY2UoMCxZKX0sRz1mdW5jdGlvbihEKXtyZXR1cm4gSS5zKGFlJTEyfHwxMixELCIwIil9LEE9UXx8ZnVuY3Rpb24oRCxSLE8pe3ZhciBZPUQ8MTI/IkFNIjoiUE0iO3JldHVybiBPP1kudG9Mb3dlckNhc2UoKTpZfTtyZXR1cm4gSC5yZXBsYWNlKHgsKGZ1bmN0aW9uKEQsUil7cmV0dXJuIFJ8fChmdW5jdGlvbihPKXtzd2l0Y2goTyl7Y2FzZSJZWSI6cmV0dXJuIFN0cmluZyhQLiR5KS5zbGljZSgtMik7Y2FzZSJZWVlZIjpyZXR1cm4gSS5zKFAuJHksNCwiMCIpO2Nhc2UiTSI6cmV0dXJuIEorMTtjYXNlIk1NIjpyZXR1cm4gSS5zKEorMSwyLCIwIik7Y2FzZSJNTU0iOnJldHVybiBrZShWLm1vbnRoc1Nob3J0LEosTCwzKTtjYXNlIk1NTU0iOnJldHVybiBrZShMLEopO2Nhc2UiRCI6cmV0dXJuIFAuJEQ7Y2FzZSJERCI6cmV0dXJuIEkucyhQLiRELDIsIjAiKTtjYXNlImQiOnJldHVybiBTdHJpbmcoUC4kVyk7Y2FzZSJkZCI6cmV0dXJuIGtlKFYud2Vla2RheXNNaW4sUC4kVyxmZSwyKTtjYXNlImRkZCI6cmV0dXJuIGtlKFYud2Vla2RheXNTaG9ydCxQLiRXLGZlLDMpO2Nhc2UiZGRkZCI6cmV0dXJuIGZlW1AuJFddO2Nhc2UiSCI6cmV0dXJuIFN0cmluZyhhZSk7Y2FzZSJISCI6cmV0dXJuIEkucyhhZSwyLCIwIik7Y2FzZSJoIjpyZXR1cm4gRygxKTtjYXNlImhoIjpyZXR1cm4gRygyKTtjYXNlImEiOnJldHVybiBBKGFlLFQsITApO2Nhc2UiQSI6cmV0dXJuIEEoYWUsVCwhMSk7Y2FzZSJtIjpyZXR1cm4gU3RyaW5nKFQpO2Nhc2UibW0iOnJldHVybiBJLnMoVCwyLCIwIik7Y2FzZSJzIjpyZXR1cm4gU3RyaW5nKFAuJHMpO2Nhc2Uic3MiOnJldHVybiBJLnMoUC4kcywyLCIwIik7Y2FzZSJTU1MiOnJldHVybiBJLnMoUC4kbXMsMywiMCIpO2Nhc2UiWiI6cmV0dXJuIFd9cmV0dXJuIG51bGx9KShEKXx8Vy5yZXBsYWNlKCI6IiwiIil9KSl9LEUudXRjT2Zmc2V0PWZ1bmN0aW9uKCl7cmV0dXJuIDE1Ki1NYXRoLnJvdW5kKHRoaXMuJGQuZ2V0VGltZXpvbmVPZmZzZXQoKS8xNSl9LEUuZGlmZj1mdW5jdGlvbihfLFAsVil7dmFyIEgsVz10aGlzLGFlPUkucChQKSxUPSQoXyksSj0oVC51dGNPZmZzZXQoKS10aGlzLnV0Y09mZnNldCgpKSp0LGZlPXRoaXMtVCxMPWZ1bmN0aW9uKCl7cmV0dXJuIEkubShXLFQpfTtzd2l0Y2goYWUpe2Nhc2UgdTpIPUwoKS8xMjticmVhaztjYXNlIGQ6SD1MKCk7YnJlYWs7Y2FzZSBmOkg9TCgpLzM7YnJlYWs7Y2FzZSBjOkg9KGZlLUopLzYwNDhlNTticmVhaztjYXNlIHM6SD0oZmUtSikvODY0ZTU7YnJlYWs7Y2FzZSBuOkg9ZmUvcjticmVhaztjYXNlIG86SD1mZS90O2JyZWFrO2Nhc2UgaTpIPWZlL2U7YnJlYWs7ZGVmYXVsdDpIPWZlfXJldHVybiBWP0g6SS5hKEgpfSxFLmRheXNJbk1vbnRoPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZW5kT2YoZCkuJER9LEUuJGxvY2FsZT1mdW5jdGlvbigpe3JldHVybiBGW3RoaXMuJExdfSxFLmxvY2FsZT1mdW5jdGlvbihfLFApe2lmKCFfKXJldHVybiB0aGlzLiRMO3ZhciBWPXRoaXMuY2xvbmUoKSxIPU4oXyxQLCEwKTtyZXR1cm4gSCYmKFYuJEw9SCksVn0sRS5jbG9uZT1mdW5jdGlvbigpe3JldHVybiBJLncodGhpcy4kZCx0aGlzKX0sRS50b0RhdGU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IERhdGUodGhpcy52YWx1ZU9mKCkpfSxFLnRvSlNPTj1mdW5jdGlvbigpe3JldHVybiB0aGlzLmlzVmFsaWQoKT90aGlzLnRvSVNPU3RyaW5nKCk6bnVsbH0sRS50b0lTT1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLiRkLnRvSVNPU3RyaW5nKCl9LEUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy4kZC50b1VUQ1N0cmluZygpfSx5fSkoKSx6PUIucHJvdG90eXBlO3JldHVybiAkLnByb3RvdHlwZT16LFtbIiRtcyIsYV0sWyIkcyIsaV0sWyIkbSIsb10sWyIkSCIsbl0sWyIkVyIsc10sWyIkTSIsZF0sWyIkeSIsdV0sWyIkRCIscF1dLmZvckVhY2goKGZ1bmN0aW9uKHkpe3pbeVsxXV09ZnVuY3Rpb24oRSl7cmV0dXJuIHRoaXMuJGcoRSx5WzBdLHlbMV0pfX0pKSwkLmV4dGVuZD1mdW5jdGlvbih5LEUpe3JldHVybiB5LiRpfHwoeShFLEIsJCkseS4kaT0hMCksJH0sJC5sb2NhbGU9TiwkLmlzRGF5anM9aywkLnVuaXg9ZnVuY3Rpb24oeSl7cmV0dXJuICQoMWUzKnkpfSwkLmVuPUZbTV0sJC5Mcz1GLCQucD17fSwkfSkpfSk7dmFyIGpOdD1YZSgoVGdlLExnZSk9PnsoZnVuY3Rpb24oZSx0KXt0eXBlb2YgVGdlPT0ib2JqZWN0IiYmdHlwZW9mIExnZTwidSI/TGdlLmV4cG9ydHM9dCgpOnR5cGVvZiBkZWZpbmU9PSJmdW5jdGlvbiImJmRlZmluZS5hbWQ/ZGVmaW5lKHQpOihlPXR5cGVvZiBnbG9iYWxUaGlzPCJ1Ij9nbG9iYWxUaGlzOmV8fHNlbGYpLmRheWpzX3BsdWdpbl9pc1RvZGF5PXQoKX0pKFRnZSwoZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7cmV0dXJuIGZ1bmN0aW9uKGUsdCxyKXt0LnByb3RvdHlwZS5pc1RvZGF5PWZ1bmN0aW9uKCl7dmFyIGE9IllZWVktTU0tREQiLGk9cigpO3JldHVybiB0aGlzLmZvcm1hdChhKT09PWkuZm9ybWF0KGEpfX19KSl9KTtmdW5jdGlvbiBtY2EoZSl7cmV0dXJue2RheXM6TWF0aC50cnVuYyhlLzg2NGU1KSxob3VyczpNYXRoLnRydW5jKGUvMzZlNSUyNCksbWludXRlczpNYXRoLnRydW5jKGUvNmU0JTYwKSxzZWNvbmRzOk1hdGgudHJ1bmMoZS8xZTMlNjApLG1pbGxpc2Vjb25kczpNYXRoLnRydW5jKGUlMWUzKSxtaWNyb3NlY29uZHM6TWF0aC50cnVuYyhWTnQoZSoxZTMpJTFlMyksbmFub3NlY29uZHM6TWF0aC50cnVuYyhWTnQoZSoxZTYpJTFlMyl9fWZ1bmN0aW9uIGdjYShlKXtyZXR1cm57ZGF5czplLzg2NDAwMDAwbixob3VyczplLzM2MDAwMDBuJTI0bixtaW51dGVzOmUvNjAwMDBuJTYwbixzZWNvbmRzOmUvMTAwMG4lNjBuLG1pbGxpc2Vjb25kczplJTEwMDBuLG1pY3Jvc2Vjb25kczowbixuYW5vc2Vjb25kczowbn19ZnVuY3Rpb24gRGdlKGUpe3N3aXRjaCh0eXBlb2YgZSl7Y2FzZSJudW1iZXIiOntpZihOdW1iZXIuaXNGaW5pdGUoZSkpcmV0dXJuIG1jYShlKTticmVha31jYXNlImJpZ2ludCI6cmV0dXJuIGdjYShlKX10aHJvdyBuZXcgVHlwZUVycm9yKCJFeHBlY3RlZCBhIGZpbml0ZSBudW1iZXIgb3IgYmlnaW50Iil9dmFyIFZOdCxVTnQ9bCgoKT0+e1ZOdD1lPT5OdW1iZXIuaXNGaW5pdGUoZSk/ZTowfSk7ZnVuY3Rpb24gTnYoZSx0KXtsZXQgcj10eXBlb2YgZT09ImJpZ2ludCI7aWYoIXImJiFOdW1iZXIuaXNGaW5pdGUoZSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgYSBmaW5pdGUgbnVtYmVyIG9yIGJpZ2ludCIpO3Q9ey4uLnR9O2xldCBhPWU8MD8iLSI6IiI7ZT1lPDA/LWU6ZSx0LmNvbG9uTm90YXRpb24mJih0LmNvbXBhY3Q9ITEsdC5mb3JtYXRTdWJNaWxsaXNlY29uZHM9ITEsdC5zZXBhcmF0ZU1pbGxpc2Vjb25kcz0hMSx0LnZlcmJvc2U9ITEpLHQuY29tcGFjdCYmKHQudW5pdENvdW50PTEsdC5zZWNvbmRzRGVjaW1hbERpZ2l0cz0wLHQubWlsbGlzZWNvbmRzRGVjaW1hbERpZ2l0cz0wKTtsZXQgaT1bXSxvPShmLHUpPT57bGV0IHA9TWF0aC5mbG9vcihmKjEwKip1K3ZjYSk7cmV0dXJuKE1hdGgucm91bmQocCkvMTAqKnUpLnRvRml4ZWQodSl9LG49KGYsdSxwLGgpPT57aWYoISgoaS5sZW5ndGg9PT0wfHwhdC5jb2xvbk5vdGF0aW9uKSYmeGNhKGYpJiYhKHQuY29sb25Ob3RhdGlvbiYmcD09PSJtIikpKXtpZihoPz89U3RyaW5nKGYpLHQuY29sb25Ob3RhdGlvbil7bGV0IGI9aC5pbmNsdWRlcygiLiIpP2guc3BsaXQoIi4iKVswXS5sZW5ndGg6aC5sZW5ndGgseD1pLmxlbmd0aD4wPzI6MTtoPSIwIi5yZXBlYXQoTWF0aC5tYXgoMCx4LWIpKStofWVsc2UgaCs9dC52ZXJib3NlPyIgIitiY2EodSxmKTpwO2kucHVzaChoKX19LHM9RGdlKGUpLGM9QmlnSW50KHMuZGF5cyk7aWYodC5oaWRlWWVhckFuZERheXM/bihCaWdJbnQoYykqMjRuK0JpZ0ludChzLmhvdXJzKSwiaG91ciIsImgiKToodC5oaWRlWWVhcj9uKGMsImRheSIsImQiKToobihjLzM2NW4sInllYXIiLCJ5IiksbihjJTM2NW4sImRheSIsImQiKSksbihOdW1iZXIocy5ob3VycyksImhvdXIiLCJoIikpLG4oTnVtYmVyKHMubWludXRlcyksIm1pbnV0ZSIsIm0iKSwhdC5oaWRlU2Vjb25kcylpZih0LnNlcGFyYXRlTWlsbGlzZWNvbmRzfHx0LmZvcm1hdFN1Yk1pbGxpc2Vjb25kc3x8IXQuY29sb25Ob3RhdGlvbiYmZTwxZTMmJiF0LnN1YlNlY29uZHNBc0RlY2ltYWxzKXtsZXQgZj1OdW1iZXIocy5zZWNvbmRzKSx1PU51bWJlcihzLm1pbGxpc2Vjb25kcykscD1OdW1iZXIocy5taWNyb3NlY29uZHMpLGg9TnVtYmVyKHMubmFub3NlY29uZHMpO2lmKG4oZiwic2Vjb25kIiwicyIpLHQuZm9ybWF0U3ViTWlsbGlzZWNvbmRzKW4odSwibWlsbGlzZWNvbmQiLCJtcyIpLG4ocCwibWljcm9zZWNvbmQiLCJceEI1cyIpLG4oaCwibmFub3NlY29uZCIsIm5zIik7ZWxzZXtsZXQgYj11K3AvMWUzK2gvMWU2LHg9dHlwZW9mIHQubWlsbGlzZWNvbmRzRGVjaW1hbERpZ2l0cz09Im51bWJlciI/dC5taWxsaXNlY29uZHNEZWNpbWFsRGlnaXRzOjAsZz1iPj0xP01hdGgucm91bmQoYik6TWF0aC5jZWlsKGIpLHY9eD9iLnRvRml4ZWQoeCk6ZztuKE51bWJlci5wYXJzZUZsb2F0KHYpLCJtaWxsaXNlY29uZCIsIm1zIix2KX19ZWxzZXtsZXQgZj0ocj9OdW1iZXIoZSV5Y2EpOmUpLzFlMyU2MCx1PXR5cGVvZiB0LnNlY29uZHNEZWNpbWFsRGlnaXRzPT0ibnVtYmVyIj90LnNlY29uZHNEZWNpbWFsRGlnaXRzOjEscD1vKGYsdSksaD10LmtlZXBEZWNpbWFsc09uV2hvbGVTZWNvbmRzP3A6cC5yZXBsYWNlKC9cLjArJC8sIiIpO24oTnVtYmVyLnBhcnNlRmxvYXQoaCksInNlY29uZCIsInMiLGgpfWlmKGkubGVuZ3RoPT09MClyZXR1cm4gYSsiMCIrKHQudmVyYm9zZT8iIG1pbGxpc2Vjb25kcyI6Im1zIik7bGV0IGQ9dC5jb2xvbk5vdGF0aW9uPyI6IjoiICI7cmV0dXJuIHR5cGVvZiB0LnVuaXRDb3VudD09Im51bWJlciImJihpPWkuc2xpY2UoMCxNYXRoLm1heCh0LnVuaXRDb3VudCwxKSkpLGEraS5qb2luKGQpfXZhciB4Y2EsYmNhLHZjYSx5Y2EsV050PWwoKCk9PntVTnQoKTt4Y2E9ZT0+ZT09PTB8fGU9PT0wbixiY2E9KGUsdCk9PnQ9PT0xfHx0PT09MW4/ZTpgJHtlfXNgLHZjYT0xZS03LHljYT0yNG4qNjBuKjYwbioxMDAwbn0pO3ZhciBoNixHTnQsdzQ9bCgoKT0+e0Z2KCk7czQoKTtvbygpO2FEdCgpO0hOdCgpO2g2PUFyKHFOdCgpLDEpLEdOdD1BcihqTnQoKSwxKTtXTnQoKTtoNi5kZWZhdWx0LmV4dGVuZChHTnQuZGVmYXVsdCl9KTt2YXIgT3YsQWdlPWwoKCk9Pnt3NCgpO0VnZSgpO092PWNsYXNze2NvbnN0cnVjdG9yKHQscixhKXt0aGlzLnN0YXR1cz0iaW5pdGlhbCIsdGhpcy5uZXh0RXhlY3V0aW9uVW5peD0wLHRoaXMuY3JvbkV4cHJlc3Npb249cix0aGlzLmpvYkZ1bmN0aW9uPWEsdGhpcy5jcm9uUGFyc2VyPW5ldyBodi5Dcm9uKHIpfWNoZWNrRXhlY3V0aW9uKCl7aWYodGhpcy5zdGF0dXM9PT0ic3RvcHBlZCIpcmV0dXJuIHRoaXMubmV4dEV4ZWN1dGlvblVuaXg7aWYodGhpcy5uZXh0RXhlY3V0aW9uVW5peD09PTAmJnRoaXMuZ2V0TmV4dEV4ZWN1dGlvblRpbWUoKSxEYXRlLm5vdygpPnRoaXMubmV4dEV4ZWN1dGlvblVuaXgpe2xldCB0PXRoaXMuam9iRnVuY3Rpb24odGhpcy5uZXh0RXhlY3V0aW9uVW5peCk7dCBpbnN0YW5jZW9mIFByb21pc2UmJnQuY2F0Y2gocj0+Y29uc29sZS5sb2cocikpLHRoaXMubmV4dEV4ZWN1dGlvblVuaXg9dGhpcy5nZXROZXh0RXhlY3V0aW9uVGltZSgpfXJldHVybiB0aGlzLm5leHRFeGVjdXRpb25Vbml4fWdldE5leHRFeGVjdXRpb25UaW1lKCl7cmV0dXJuIHRoaXMubmV4dEV4ZWN1dGlvblVuaXg9RGF0ZS5ub3coKSt0aGlzLmdldFRpbWVUb05leHRFeGVjdXRpb24oKX1nZXRUaW1lVG9OZXh0RXhlY3V0aW9uKCl7cmV0dXJuIHRoaXMuY3JvblBhcnNlci5tc1RvTmV4dCgpfXN0YXJ0KCl7dGhpcy5zdGF0dXM9InN0YXJ0ZWQifXN0b3AoKXt0aGlzLnN0YXR1cz0ic3RvcHBlZCJ9fX0pO3ZhciAkZ2UsRWdlPWwoKCk9Pnt3NCgpO0FnZSgpOyRnZT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuc3RhdHVzPSJzdG9wcGVkIix0aGlzLmNyb25qb2JzPW5ldyBJaS5PYmplY3RNYXAsdGhpcy5jeWNsZVdha2VEZWZlcnJlZD1udWxsfXdha2VDeWNsZSgpe3RoaXMuY3ljbGVXYWtlRGVmZXJyZWQmJnRoaXMuY3ljbGVXYWtlRGVmZXJyZWQuc3RhdHVzPT09InBlbmRpbmciJiZ0aGlzLmN5Y2xlV2FrZURlZmVycmVkLnJlc29sdmUoKX1hZGRDcm9uam9iKHQscil7bGV0IGE9bmV3IE92KHRoaXMsdCxyKTtyZXR1cm4gdGhpcy5jcm9uam9icy5hZGQoYSksdGhpcy5zdGF0dXM9PT0ic3RhcnRlZCImJihhLnN0YXJ0KCksdGhpcy53YWtlQ3ljbGUoKSksYX1yZW1vdmVDcm9uam9iKHQpe3Quc3RvcCgpLHRoaXMuY3JvbmpvYnMucmVtb3ZlKHQpLHRoaXMuc3RhdHVzPT09InN0YXJ0ZWQiJiZ0aGlzLndha2VDeWNsZSgpfXN0YXJ0KCl7aWYodGhpcy5zdGF0dXMhPT0ic3RhcnRlZCIpe3RoaXMuc3RhdHVzPSJzdGFydGVkIjtmb3IobGV0IHQgb2YgdGhpcy5jcm9uam9icy5nZXRBcnJheSgpKXQuc3RhcnQoKTt0aGlzLnJ1bkNyb25DeWNsZSgpfX1hc3luYyBydW5Dcm9uQ3ljbGUoKXtmb3IoO3RoaXMuc3RhdHVzPT09InN0YXJ0ZWQiOyl7dGhpcy5jeWNsZVdha2VEZWZlcnJlZD1uZXcgbHQuRGVmZXJyZWQ7bGV0IHQ9MS8wO2ZvcihsZXQgciBvZiB0aGlzLmNyb25qb2JzLmdldEFycmF5KCkpe3IuY2hlY2tFeGVjdXRpb24oKTtsZXQgYT1yLmdldFRpbWVUb05leHRFeGVjdXRpb24oKTthPHQmJih0PWEpfWlmKHQ8MS8wJiZ0PjApdGhpcy5leGVjdXRpb25UaW1lb3V0PW5ldyBRdC5UaW1lb3V0KHQpLGF3YWl0IFByb21pc2UucmFjZShbdGhpcy5leGVjdXRpb25UaW1lb3V0LnByb21pc2UsdGhpcy5jeWNsZVdha2VEZWZlcnJlZC5wcm9taXNlXSksdGhpcy5leGVjdXRpb25UaW1lb3V0LmNhbmNlbCgpO2Vsc2V7aWYodDw9MCljb250aW51ZTthd2FpdCB0aGlzLmN5Y2xlV2FrZURlZmVycmVkLnByb21pc2V9fXRoaXMuY3ljbGVXYWtlRGVmZXJyZWQ9bnVsbH1zdG9wKCl7dGhpcy5zdGF0dXM9PT0ic3RhcnRlZCImJih0aGlzLnN0YXR1cz0ic3RvcHBlZCIsdGhpcy5leGVjdXRpb25UaW1lb3V0JiZ0aGlzLmV4ZWN1dGlvblRpbWVvdXQuY2FuY2VsKCksdGhpcy53YWtlQ3ljbGUoKSk7Zm9yKGxldCB0IG9mIHRoaXMuY3JvbmpvYnMuZ2V0QXJyYXkoKSl0LnN0b3AoKX19fSk7dmFyIE00LFBnZSx3Y2EsTWNhLElnZT1sKCgpPT57dzQoKTtNND17eWVhcnM6KGU9MSk9PmUqMzE1NGU3LG1vbnRoczooZT0xKT0+ZSoyNjI4ZTYsd2Vla3M6KGU9MSk9PmUqNjA0OGU1LGRheXM6KGU9MSk9PmUqODY0ZTUsaG91cnM6KGU9MSk9PmUqMzZlNSxtaW51dGVzOihlPTEpPT5lKjZlNCxzZWNvbmRzOihlPTEpPT5lKjFlM30sUGdlPWU9PntsZXQgdD0wLHI9YT0+e3Q9dCthfTtyZXR1cm4gZS55ZWFycyYmcihNNC55ZWFycyhlLnllYXJzKSksZS5tb250aHMmJnIoTTQubW9udGhzKGUubW9udGhzKSksZS53ZWVrcyYmcihNNC53ZWVrcyhlLndlZWtzKSksZS5kYXlzJiZyKE00LmRheXMoZS5kYXlzKSksZS5ob3VycyYmcihNNC5ob3VycyhlLmhvdXJzKSksZS5taW51dGVzJiZyKE00Lm1pbnV0ZXMoZS5taW51dGVzKSksZS5zZWNvbmRzJiZyKE00LnNlY29uZHMoZS5zZWNvbmRzKSksdH0sd2NhPWU9Pk52KGUpLE1jYT1lPT5Jdi5mb3JtYXREaXN0YW5jZVRvTm93KG5ldyBEYXRlKGUpKX0pO3ZhciBOZ2UsWU50PWwoKCk9Pnt3NCgpO0lnZSgpO05nZT1jbGFzcyBlIGV4dGVuZHMgRGF0ZXtzdGF0aWMgZnJvbU1pbGxpcyh0KXtyZXR1cm4gbmV3IGUodCl9c3RhdGljIGZyb21EYXRlKHQpe3JldHVybiBuZXcgZSh0LmdldFRpbWUoKSl9c3RhdGljIGZyb21FdXJvcGVhbkRhdGUodCl7bGV0IHI9LyguKilcLiguKilcLiguKikvLmV4ZWModCksaT1uZXcgRGF0ZShwYXJzZUZsb2F0KHJbM10pLHBhcnNlRmxvYXQoclsyXSktMSxwYXJzZUZsb2F0KHJbMV0pKS5nZXRUaW1lKCk7cmV0dXJuIG5ldyBlKGkpfXN0YXRpYyBmcm9tSHlwaGVkRGF0ZSh0KXtsZXQgcj1uZXcgRGF0ZSh0KS5nZXRUaW1lKCk7cmV0dXJuIG5ldyBlKHIpfXN0YXRpYyBmcm9tRXVyb3BlYW5EYXRlQW5kVGltZSh0LHI9IjEyOjAwOjAwIixhPSJFdXJvcGUvQmVybGluIil7bGV0IGk9LyguKilcLiguKilcLiguKikvLmV4ZWModCksbz1kPT5gMCR7ZH1gLnNsaWNlKC0yKSxuPWAke2lbM119LSR7byhpWzJdKX0tJHtvKGlbMV0pfVQke3J9YCxjPWg2LmRlZmF1bHQobikudG9EYXRlKCkuZ2V0VGltZSgpO3JldHVybiBuZXcgZShjKX1jb25zdHJ1Y3Rvcih0PURhdGUubm93KCkpe3N1cGVyKHQpfWV4cG9ydFRvRXVyb3BlYW5EYXRlKCl7bGV0IHQ9dGhpcy5leHBvcnRUb1VuaXRzKCk7cmV0dXJuYCR7dC5kYXlTdHJpbmd9LiR7dC5tb250aFN0cmluZ30uJHt0LnllYXJTdHJpbmd9YH1leHBvcnRUb0h5cGhlZFNvcnRhYmxlRGF0ZSgpe2xldCB0PXRoaXMuZXhwb3J0VG9Vbml0cygpO3JldHVybmAke3QueWVhclN0cmluZ30tJHt0Lm1vbnRoU3RyaW5nfS0ke3QuZGF5U3RyaW5nfWB9ZXhwb3J0VG9Vbml0cygpe2xldCB0PVsiSmFudWFyeSIsIkZlYnJ1YXJ5IiwiTWFyY2giLCJBcHJpbCIsIk1heSIsIkp1bmUiLCJKdWx5IiwiQXVndXN0IiwiU2VwdGVtYmVyIiwiT2N0b2JlciIsIk5vdmVtYmVyIiwiRGVjZW1iZXIiXSxyPVsiTW9uZGF5IiwiVHVlc2RheSIsIldlZG5lc2RheSIsIlRodXJzZGF5IiwiRnJpZGF5IiwiU2F0dXJkYXkiLCJTdW5kYXkiXTtyZXR1cm57eWVhcjp0aGlzLmdldEZ1bGxZZWFyKCkseWVhclN0cmluZzpgJHt0aGlzLmdldEZ1bGxZZWFyKCl9YCxtb250aDp0aGlzLmdldE1vbnRoKCkrMSxtb250aFN0cmluZzooIjAiKyh0aGlzLmdldE1vbnRoKCkrMSkpLnNsaWNlKC0yKSxtb250aE5hbWU6dFt0aGlzLmdldE1vbnRoKCldLGRheTp0aGlzLmdldERhdGUoKSxkYXlTdHJpbmc6KCIwIit0aGlzLmdldERhdGUoKSkuc2xpY2UoLTIpLGRheU9mVGhlV2Vlazp0aGlzLmdldERheSgpLGRheU9mVGhlV2Vla05hbWU6clt0aGlzLmdldERheSgpXX19Zm9ybWF0KHQpe3JldHVybiBoNi5kZWZhdWx0KHRoaXMuZ2V0VGltZSgpKS5mb3JtYXQodCl9aXNUb2RheSgpe3JldHVybiBoNi5kZWZhdWx0KHRoaXMuZ2V0VGltZSgpKS5pc1RvZGF5KCl9bGVzc1RpbWVQYXNzZWRUb05vdyh0KXtsZXQgcj1QZ2UodCk7cmV0dXJuIERhdGUubm93KCktdGhpcy5nZXRUaW1lKCk8cn1tb3JlVGltZVBhc3NlZFRvTm93KHQpe3JldHVybiF0aGlzLmxlc3NUaW1lUGFzc2VkVG9Ob3codCl9fX0pO3ZhciBGZ2UsWk50PWwoKCk9PntGZ2U9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLm5hbm9TZWNvbmRzPW51bGwsdGhpcy5taWxsaVNlY29uZHM9bnVsbCx0aGlzLl9taWxsaVN0YXJ0PW51bGwsdGhpcy5fbWlsbGlEaWZmPW51bGwsdGhpcy5fc3RhcnRlZD0hMX1zdGFydCgpe3RoaXMuX3N0YXJ0ZWQ9ITAsdGhpcy5fbWlsbGlTdGFydD1EYXRlLm5vdygpfXN0b3AoKXtpZih0aGlzLl9zdGFydGVkPT09ITEpe2NvbnNvbGUubG9nKCJIYXNuJ3Qgc3RhcnRlZCB5ZXQiKTtyZXR1cm59cmV0dXJuIHRoaXMuX21pbGxpRGlmZj1EYXRlLm5vdygpLXRoaXMuX21pbGxpU3RhcnQsdGhpcy5uYW5vU2Vjb25kcz10aGlzLl9taWxsaURpZmYqMWUzLHRoaXMubWlsbGlTZWNvbmRzPXRoaXMuX21pbGxpRGlmZix0aGlzfXJlc2V0KCl7dGhpcy5uYW5vU2Vjb25kcz1udWxsLHRoaXMubWlsbGlTZWNvbmRzPW51bGwsdGhpcy5fbWlsbGlTdGFydD1udWxsLHRoaXMuX21pbGxpRGlmZj1udWxsLHRoaXMuX3N0YXJ0ZWQ9ITF9fX0pO3ZhciBPZ2UsWE50PWwoKCk9Pnt3NCgpO09nZT1jbGFzc3tjb25zdHJ1Y3Rvcih0KXt0aGlzLnN0YXR1cz0iaW5pdGlhbCIsdGhpcy5zdGF0dXNBdXRob3JpemF0aW9uPW51bGwsdGhpcy5pbnRlcnZhbEpvYnM9W10sdGhpcy5pbnRlcnZhbE1pbGxpc2Vjb25kcz10fXN0YXJ0KCl7dGhpcy5zdGF0dXM9InN0YXJ0ZWQiO2xldCB0PW5ldyBEYXRlO3RoaXMuc3RhdHVzQXV0aG9yaXphdGlvbj10LChhc3luYygpPT57Zm9yKDt0aGlzLnN0YXR1cz09PSJzdGFydGVkIiYmdGhpcy5zdGF0dXNBdXRob3JpemF0aW9uPT09dDspYXdhaXQgUXQuZGVsYXlGb3IodGhpcy5pbnRlcnZhbE1pbGxpc2Vjb25kcyksdGhpcy5leGVjdXRlSW50ZXJ2YWxKb2JzKCl9KSgpfXN0b3AoKXt0aGlzLnN0YXR1cz0ic3RvcHBlZCIsdGhpcy5zdGF0dXNBdXRob3JpemF0aW9uPW51bGx9YWRkSW50ZXJ2YWxKb2IodCl7dGhpcy5pbnRlcnZhbEpvYnMucHVzaCh0KX1leGVjdXRlSW50ZXJ2YWxKb2JzKCl7Zm9yKGxldCB0IG9mIHRoaXMuaW50ZXJ2YWxKb2JzKXQoKX19fSk7dmFyIEE3LFJnZT1sKCgpPT57dzQoKTtBNz1jbGFzcyBle3N0YXRpYyBmcm9tTWlsbGlTZWNvbmRzKHQpe3JldHVybiBuZXcgZSh0KX1zdGF0aWMgZnJvbVRpbWVTdGFtcCh0KXtsZXQgcj1uZXcgZTtyZXR1cm4gci5jaGFuZ2U9ci5taWxsaVNlY29uZHMtdC5taWxsaVNlY29uZHMscn1jb25zdHJ1Y3Rvcih0KXt0aGlzLmNoYW5nZT1udWxsLHQ/dHlwZW9mIHQ9PSJudW1iZXIiJiYodGhpcy5kYXRlPW5ldyBEYXRlKHQpKTp0aGlzLmRhdGU9bmV3IERhdGUsdGhpcy5taWxsaVNlY29uZHM9dGhpcy5kYXRlLmdldFRpbWUoKSx0aGlzLmVwb2NodGltZT1NYXRoLmZsb29yKHRoaXMubWlsbGlTZWNvbmRzLzFlMyl9aXNPbGRlclRoYW5PdGhlclRpbWVTdGFtcCh0LHI9MCl7cmV0dXJuIHRoaXMubWlsbGlTZWNvbmRzPHQubWlsbGlTZWNvbmRzLXJ9aXNPbGRlclRoYW4odCxyPTApe3JldHVybiB0aGlzLm1pbGxpU2Vjb25kcytyPHQubWlsbGlTZWNvbmRzfWlzWW91bmdlclRoYW5PdGhlclRpbWVTdGFtcCh0LHI9MCl7cmV0dXJuIHRoaXMubWlsbGlTZWNvbmRzPnQubWlsbGlTZWNvbmRzK3J9aXNZb3VuZ2VyVGhhbk1pbGxpU2Vjb25kcyh0KXtsZXQgYT1uZXcgZSgpLmVwb2NodGltZS10LGk9bmV3IGUoYSk7cmV0dXJuIHRoaXMuaXNZb3VuZ2VyVGhhbk90aGVyVGltZVN0YW1wKGkpfX19KTt2YXIgQmdlLFFOdD1sKCgpPT57dzQoKTtSZ2UoKTtCZ2U9Y2xhc3N7Z2V0IHRpbWVMZWZ0KCl7cmV0dXJuIHRoaXMudGltZUluTWlsbGlzZWNvbmRzLXRoaXMucGF1c2VkQXQuY2hhbmdlfWNvbnN0cnVjdG9yKHQpe3RoaXMuc3RhdGU9ImluaXRpYXRlZCIsdGhpcy5jb21wbGV0ZWREZWZlcnJlZD1sdC5kZWZlcigpLHRoaXMudGltZUluTWlsbGlzZWNvbmRzPXQsdGhpcy5jb21wbGV0ZWQ9dGhpcy5jb21wbGV0ZWREZWZlcnJlZC5wcm9taXNlfXN0YXJ0KCl7aWYoIXRoaXMuc3RhcnRlZEF0KXRoaXMuY3VycmVudFRpbWVvdXQ9c2V0VGltZW91dCgoKT0+e3RoaXMuY29tcGxldGVkRGVmZXJyZWQucmVzb2x2ZSgpfSx0aGlzLnRpbWVJbk1pbGxpc2Vjb25kcyksdGhpcy5zdGFydGVkQXQ9bmV3IEE3O2Vsc2UgdGhyb3cgbmV3IEVycm9yKCJ0aW1lciBoYXMgYmVlbiBzdGFydGVkIGJlZm9yZS4gUGxlYXNlIHVzZSByZXN1bWUgaW5zdGVhZCIpfXBhdXNlKCl7dGhpcy5zdGFydGVkQXQmJihjbGVhclRpbWVvdXQodGhpcy5jdXJyZW50VGltZW91dCksdGhpcy5jdXJyZW50VGltZW91dD1udWxsLHRoaXMucGF1c2VkQXQ9QTcuZnJvbVRpbWVTdGFtcCh0aGlzLnN0YXJ0ZWRBdCkpfXJlc3VtZSgpe2lmKHRoaXMuc3RhcnRlZEF0KXRoaXMuY3VycmVudFRpbWVvdXQ9c2V0VGltZW91dCgoKT0+e3RoaXMuY29tcGxldGVkRGVmZXJyZWQucmVzb2x2ZSgpfSx0aGlzLnRpbWVMZWZ0KTtlbHNlIHRocm93IG5ldyBFcnJvcigidGltZXIgaGFzIE5PVCBiZWVuIHN0YXJ0ZWQgYmVmb3JlLiBQbGVhc2UgdXNlIC5zdGFydCgpIGluc3RlYWQiKX1yZXNldCgpe3RoaXMucGF1c2UoKSx0aGlzLnN0YXJ0ZWRBdD1udWxsLHRoaXMucGF1c2VkQXQ9bnVsbH19fSk7dmFyIG02PXt9O3FlKG02LHtDcm9uSm9iOigpPT5PdixDcm9uTWFuYWdlcjooKT0+JGdlLEV4dGVuZGVkRGF0ZTooKT0+TmdlLEhydE1lYXN1cmVtZW50OigpPT5GZ2UsSW50ZXJ2YWw6KCk9Pk9nZSxUaW1lU3RhbXA6KCk9PkE3LFRpbWVyOigpPT5CZ2UsZ2V0TWlsbGlTZWNvbmRzQXNIdW1hblJlYWRhYmxlQWdvVGltZTooKT0+TWNhLGdldE1pbGxpU2Vjb25kc0FzSHVtYW5SZWFkYWJsZVN0cmluZzooKT0+d2NhLGdldE1pbGxpU2Vjb25kc0Zyb21Vbml0czooKT0+UGdlLHVuaXRzOigpPT5NNH0pO3ZhciBLTnQ9bCgoKT0+e0VnZSgpO0FnZSgpO1lOdCgpO1pOdCgpO1hOdCgpO1FOdCgpO1JnZSgpO0lnZSgpfSk7dmFyIGVGdD1YZSgoSTIxLEpOdCk9PnsidXNlIHN0cmljdCI7Sk50LmV4cG9ydHM9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLnBhcmVudD1udWxsLHRoaXMucHJldmlvdXNTaWJsaW5nPW51bGwsdGhpcy5uZXh0U2libGluZz1udWxsLHRoaXMuZmlyc3RDaGlsZD1udWxsLHRoaXMubGFzdENoaWxkPW51bGwsdGhpcy5jaGlsZHJlblZlcnNpb249MCx0aGlzLmNoaWxkSW5kZXhDYWNoZWRVcFRvPW51bGwsdGhpcy5jYWNoZWRJbmRleD0tMSx0aGlzLmNhY2hlZEluZGV4VmVyc2lvbj1OYU59Z2V0IGlzQXR0YWNoZWQoKXtyZXR1cm4hISh0aGlzLnBhcmVudHx8dGhpcy5wcmV2aW91c1NpYmxpbmd8fHRoaXMubmV4dFNpYmxpbmcpfWdldCBoYXNDaGlsZHJlbigpe3JldHVybiEhdGhpcy5maXJzdENoaWxkfWNoaWxkcmVuQ2hhbmdlZCgpe3RoaXMuY2hpbGRyZW5WZXJzaW9uPXRoaXMuY2hpbGRyZW5WZXJzaW9uKzEmNDI5NDk2NzI5NSx0aGlzLmNoaWxkSW5kZXhDYWNoZWRVcFRvPW51bGx9Z2V0Q2FjaGVkSW5kZXgodCl7cmV0dXJuIHRoaXMuY2FjaGVkSW5kZXhWZXJzaW9uIT09dC5jaGlsZHJlblZlcnNpb24/KHRoaXMuY2FjaGVkSW5kZXhWZXJzaW9uPU5hTiwtMSk6dGhpcy5jYWNoZWRJbmRleH1zZXRDYWNoZWRJbmRleCh0LHIpe3RoaXMuY2FjaGVkSW5kZXhWZXJzaW9uPXQuY2hpbGRyZW5WZXJzaW9uLHRoaXMuY2FjaGVkSW5kZXg9cn19fSk7dmFyIHJGdD1YZSgoTjIxLHRGdCk9PnsidXNlIHN0cmljdCI7dEZ0LmV4cG9ydHM9T2JqZWN0LmZyZWV6ZSh7RElTQ09OTkVDVEVEOjEsUFJFQ0VESU5HOjIsRk9MTE9XSU5HOjQsQ09OVEFJTlM6OCxDT05UQUlORURfQlk6MTZ9KX0pO3ZhciBzRnQ9WGUoKEYyMSxuRnQpPT57InVzZSBzdHJpY3QiO3ZhciBhRnQ9U3ltYm9sKCksaUZ0PVN5bWJvbCgpLGs0PVN5bWJvbCgpLG9GdD1TeW1ib2woKSx2cz1jbGFzc3tjb25zdHJ1Y3Rvcih0LHIsYSxpKXt0aGlzW2FGdF09dCx0aGlzW2lGdF09cix0aGlzW2s0XT1hLHRoaXNbb0Z0XT1pfW5leHQoKXtsZXQgdD10aGlzW2FGdF0scj10aGlzW29GdF0sYT10aGlzW2lGdF07aWYoIXRoaXNbazRdKXJldHVybntkb25lOiEwLHZhbHVlOmF9O2xldCBpPXRoaXNbazRdO3JldHVybiByPT09MT90aGlzW2s0XT10Ll9ub2RlKGkpLnByZXZpb3VzU2libGluZzpyPT09Mj90aGlzW2s0XT10Ll9ub2RlKGkpLm5leHRTaWJsaW5nOnI9PT0zP3RoaXNbazRdPXQuX25vZGUoaSkucGFyZW50OnI9PT00P3RoaXNbazRdPXQucHJlY2VkaW5nKGkse3Jvb3Q6YX0pOnRoaXNbazRdPXQuZm9sbG93aW5nKGkse3Jvb3Q6YX0pLHtkb25lOiExLHZhbHVlOml9fX07T2JqZWN0LmRlZmluZVByb3BlcnR5KHZzLnByb3RvdHlwZSxTeW1ib2wuaXRlcmF0b3Ise3ZhbHVlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9LHdyaXRhYmxlOiExfSksdnMuUFJFVj0xLHZzLk5FWFQ9Mix2cy5QQVJFTlQ9Myx2cy5QUkVDRURJTkc9NCx2cy5GT0xMT1dJTkc9NSxPYmplY3QuZnJlZXplKHZzKSxPYmplY3QuZnJlZXplKHZzLnByb3RvdHlwZSksbkZ0LmV4cG9ydHM9dnN9KTt2YXIgY0Z0PVhlKChPMjEsbEZ0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgU2NhPWVGdCgpLFM0PXJGdCgpLFBuPXNGdCgpO2Z1bmN0aW9uIEhnZSgpe3JldHVybiEwfWZ1bmN0aW9uIEU3KGUsdCl7cmV0dXJuIGVbZS5sZW5ndGgtMS10XX12YXIgQzFlPWNsYXNze2NvbnN0cnVjdG9yKHQpe3RoaXMuc3ltYm9sPVN5bWJvbCh0fHwiU3ltYm9sVHJlZSBkYXRhIil9aW5pdGlhbGl6ZSh0KXtyZXR1cm4gdGhpcy5fbm9kZSh0KSx0fV9ub2RlKHQpe2lmKCF0KXJldHVybiBudWxsO2xldCByPXRbdGhpcy5zeW1ib2xdO3JldHVybiByfHwodFt0aGlzLnN5bWJvbF09bmV3IFNjYSl9aGFzQ2hpbGRyZW4odCl7cmV0dXJuIHRoaXMuX25vZGUodCkuaGFzQ2hpbGRyZW59Zmlyc3RDaGlsZCh0KXtyZXR1cm4gdGhpcy5fbm9kZSh0KS5maXJzdENoaWxkfWxhc3RDaGlsZCh0KXtyZXR1cm4gdGhpcy5fbm9kZSh0KS5sYXN0Q2hpbGR9cHJldmlvdXNTaWJsaW5nKHQpe3JldHVybiB0aGlzLl9ub2RlKHQpLnByZXZpb3VzU2libGluZ31uZXh0U2libGluZyh0KXtyZXR1cm4gdGhpcy5fbm9kZSh0KS5uZXh0U2libGluZ31wYXJlbnQodCl7cmV0dXJuIHRoaXMuX25vZGUodCkucGFyZW50fWxhc3RJbmNsdXNpdmVEZXNjZW5kYW50KHQpe2xldCByLGE9dDtmb3IoO3I9dGhpcy5fbm9kZShhKS5sYXN0Q2hpbGQ7KWE9cjtyZXR1cm4gYX1wcmVjZWRpbmcodCxyKXtsZXQgYT1yJiZyLnJvb3Q7aWYodD09PWEpcmV0dXJuIG51bGw7bGV0IGk9dGhpcy5fbm9kZSh0KS5wcmV2aW91c1NpYmxpbmc7cmV0dXJuIGk/dGhpcy5sYXN0SW5jbHVzaXZlRGVzY2VuZGFudChpKTp0aGlzLl9ub2RlKHQpLnBhcmVudH1mb2xsb3dpbmcodCxyKXtsZXQgYT1yJiZyLnJvb3Qsbz0hKHImJnIuc2tpcENoaWxkcmVuKSYmdGhpcy5fbm9kZSh0KS5maXJzdENoaWxkO2lmKG8pcmV0dXJuIG87bGV0IG49dDtkb3tpZihuPT09YSlyZXR1cm4gbnVsbDtsZXQgcz10aGlzLl9ub2RlKG4pLm5leHRTaWJsaW5nO2lmKHMpcmV0dXJuIHM7bj10aGlzLl9ub2RlKG4pLnBhcmVudH13aGlsZShuKTtyZXR1cm4gbnVsbH1jaGlsZHJlblRvQXJyYXkodCxyKXtsZXQgYT1yJiZyLmFycmF5fHxbXSxpPXImJnIuZmlsdGVyfHxIZ2Usbz1yJiZyLnRoaXNBcmd8fHZvaWQgMCxuPXRoaXMuX25vZGUodCkscz1uLmZpcnN0Q2hpbGQsYz0wO2Zvcig7czspe2xldCBkPXRoaXMuX25vZGUocyk7ZC5zZXRDYWNoZWRJbmRleChuLGMpLGkuY2FsbChvLHMpJiZhLnB1c2gocykscz1kLm5leHRTaWJsaW5nLCsrY31yZXR1cm4gYX1hbmNlc3RvcnNUb0FycmF5KHQscil7bGV0IGE9ciYmci5hcnJheXx8W10saT1yJiZyLmZpbHRlcnx8SGdlLG89ciYmci50aGlzQXJnfHx2b2lkIDAsbj10O2Zvcig7bjspaS5jYWxsKG8sbikmJmEucHVzaChuKSxuPXRoaXMuX25vZGUobikucGFyZW50O3JldHVybiBhfXRyZWVUb0FycmF5KHQscil7bGV0IGE9ciYmci5hcnJheXx8W10saT1yJiZyLmZpbHRlcnx8SGdlLG89ciYmci50aGlzQXJnfHx2b2lkIDAsbj10O2Zvcig7bjspaS5jYWxsKG8sbikmJmEucHVzaChuKSxuPXRoaXMuZm9sbG93aW5nKG4se3Jvb3Q6dH0pO3JldHVybiBhfWNoaWxkcmVuSXRlcmF0b3IodCxyKXtsZXQgYT1yJiZyLnJldmVyc2UsaT10aGlzLl9ub2RlKHQpO3JldHVybiBuZXcgUG4odGhpcyx0LGE/aS5sYXN0Q2hpbGQ6aS5maXJzdENoaWxkLGE/UG4uUFJFVjpQbi5ORVhUKX1wcmV2aW91c1NpYmxpbmdzSXRlcmF0b3IodCl7cmV0dXJuIG5ldyBQbih0aGlzLHQsdGhpcy5fbm9kZSh0KS5wcmV2aW91c1NpYmxpbmcsUG4uUFJFVil9bmV4dFNpYmxpbmdzSXRlcmF0b3IodCl7cmV0dXJuIG5ldyBQbih0aGlzLHQsdGhpcy5fbm9kZSh0KS5uZXh0U2libGluZyxQbi5ORVhUKX1hbmNlc3RvcnNJdGVyYXRvcih0KXtyZXR1cm4gbmV3IFBuKHRoaXMsdCx0LFBuLlBBUkVOVCl9dHJlZUl0ZXJhdG9yKHQscil7bGV0IGE9ciYmci5yZXZlcnNlO3JldHVybiBuZXcgUG4odGhpcyx0LGE/dGhpcy5sYXN0SW5jbHVzaXZlRGVzY2VuZGFudCh0KTp0LGE/UG4uUFJFQ0VESU5HOlBuLkZPTExPV0lORyl9aW5kZXgodCl7bGV0IHI9dGhpcy5fbm9kZSh0KSxhPXRoaXMuX25vZGUoci5wYXJlbnQpO2lmKCFhKXJldHVybi0xO2xldCBpPXIuZ2V0Q2FjaGVkSW5kZXgoYSk7aWYoaT49MClyZXR1cm4gaTtpPTA7bGV0IG89YS5maXJzdENoaWxkO2lmKGEuY2hpbGRJbmRleENhY2hlZFVwVG8pe2xldCBuPXRoaXMuX25vZGUoYS5jaGlsZEluZGV4Q2FjaGVkVXBUbyk7bz1uLm5leHRTaWJsaW5nLGk9bi5nZXRDYWNoZWRJbmRleChhKSsxfWZvcig7bzspe2xldCBuPXRoaXMuX25vZGUobyk7aWYobi5zZXRDYWNoZWRJbmRleChhLGkpLG89PT10KWJyZWFrOysraSxvPW4ubmV4dFNpYmxpbmd9cmV0dXJuIGEuY2hpbGRJbmRleENhY2hlZFVwVG89dCxpfWNoaWxkcmVuQ291bnQodCl7bGV0IHI9dGhpcy5fbm9kZSh0KTtyZXR1cm4gci5sYXN0Q2hpbGQ/dGhpcy5pbmRleChyLmxhc3RDaGlsZCkrMTowfWNvbXBhcmVUcmVlUG9zaXRpb24odCxyKXtpZih0PT09cilyZXR1cm4gMDtsZXQgYT1bXTt7bGV0IGY9dDtmb3IoO2Y7KXtpZihmPT09cilyZXR1cm4gUzQuQ09OVEFJTlN8UzQuUFJFQ0VESU5HO2EucHVzaChmKSxmPXRoaXMucGFyZW50KGYpfX1sZXQgaT1bXTt7bGV0IGY9cjtmb3IoO2Y7KXtpZihmPT09dClyZXR1cm4gUzQuQ09OVEFJTkVEX0JZfFM0LkZPTExPV0lORztpLnB1c2goZiksZj10aGlzLnBhcmVudChmKX19bGV0IG89RTcoYSwwKTtpZighb3x8byE9PUU3KGksMCkpcmV0dXJuIFM0LkRJU0NPTk5FQ1RFRDtsZXQgbj0wLHM9TWF0aC5taW4oYS5sZW5ndGgsaS5sZW5ndGgpO2ZvcihsZXQgZj0wO2Y8czsrK2Ype2xldCB1PUU3KGEsZikscD1FNyhpLGYpO2lmKHUhPT1wKWJyZWFrO249Zn1sZXQgYz10aGlzLmluZGV4KEU3KGEsbisxKSk7cmV0dXJuIHRoaXMuaW5kZXgoRTcoaSxuKzEpKTxjP1M0LlBSRUNFRElORzpTNC5GT0xMT1dJTkd9cmVtb3ZlKHQpe2xldCByPXRoaXMuX25vZGUodCksYT10aGlzLl9ub2RlKHIucGFyZW50KSxpPXRoaXMuX25vZGUoci5wcmV2aW91c1NpYmxpbmcpLG89dGhpcy5fbm9kZShyLm5leHRTaWJsaW5nKTtyZXR1cm4gYSYmKGEuZmlyc3RDaGlsZD09PXQmJihhLmZpcnN0Q2hpbGQ9ci5uZXh0U2libGluZyksYS5sYXN0Q2hpbGQ9PT10JiYoYS5sYXN0Q2hpbGQ9ci5wcmV2aW91c1NpYmxpbmcpKSxpJiYoaS5uZXh0U2libGluZz1yLm5leHRTaWJsaW5nKSxvJiYoby5wcmV2aW91c1NpYmxpbmc9ci5wcmV2aW91c1NpYmxpbmcpLHIucGFyZW50PW51bGwsci5wcmV2aW91c1NpYmxpbmc9bnVsbCxyLm5leHRTaWJsaW5nPW51bGwsci5jYWNoZWRJbmRleD0tMSxyLmNhY2hlZEluZGV4VmVyc2lvbj1OYU4sYSYmYS5jaGlsZHJlbkNoYW5nZWQoKSx0fWluc2VydEJlZm9yZSh0LHIpe2xldCBhPXRoaXMuX25vZGUodCksaT10aGlzLl9ub2RlKGEucHJldmlvdXNTaWJsaW5nKSxvPXRoaXMuX25vZGUociksbj10aGlzLl9ub2RlKGEucGFyZW50KTtpZihvLmlzQXR0YWNoZWQpdGhyb3cgRXJyb3IoIkdpdmVuIG9iamVjdCBpcyBhbHJlYWR5IHByZXNlbnQgaW4gdGhpcyBTeW1ib2xUcmVlLCByZW1vdmUgaXQgZmlyc3QiKTtyZXR1cm4gby5wYXJlbnQ9YS5wYXJlbnQsby5wcmV2aW91c1NpYmxpbmc9YS5wcmV2aW91c1NpYmxpbmcsby5uZXh0U2libGluZz10LGEucHJldmlvdXNTaWJsaW5nPXIsaSYmKGkubmV4dFNpYmxpbmc9ciksbiYmbi5maXJzdENoaWxkPT09dCYmKG4uZmlyc3RDaGlsZD1yKSxuJiZuLmNoaWxkcmVuQ2hhbmdlZCgpLHJ9aW5zZXJ0QWZ0ZXIodCxyKXtsZXQgYT10aGlzLl9ub2RlKHQpLGk9dGhpcy5fbm9kZShhLm5leHRTaWJsaW5nKSxvPXRoaXMuX25vZGUociksbj10aGlzLl9ub2RlKGEucGFyZW50KTtpZihvLmlzQXR0YWNoZWQpdGhyb3cgRXJyb3IoIkdpdmVuIG9iamVjdCBpcyBhbHJlYWR5IHByZXNlbnQgaW4gdGhpcyBTeW1ib2xUcmVlLCByZW1vdmUgaXQgZmlyc3QiKTtyZXR1cm4gby5wYXJlbnQ9YS5wYXJlbnQsby5wcmV2aW91c1NpYmxpbmc9dCxvLm5leHRTaWJsaW5nPWEubmV4dFNpYmxpbmcsYS5uZXh0U2libGluZz1yLGkmJihpLnByZXZpb3VzU2libGluZz1yKSxuJiZuLmxhc3RDaGlsZD09PXQmJihuLmxhc3RDaGlsZD1yKSxuJiZuLmNoaWxkcmVuQ2hhbmdlZCgpLHJ9cHJlcGVuZENoaWxkKHQscil7bGV0IGE9dGhpcy5fbm9kZSh0KSxpPXRoaXMuX25vZGUocik7aWYoaS5pc0F0dGFjaGVkKXRocm93IEVycm9yKCJHaXZlbiBvYmplY3QgaXMgYWxyZWFkeSBwcmVzZW50IGluIHRoaXMgU3ltYm9sVHJlZSwgcmVtb3ZlIGl0IGZpcnN0Iik7cmV0dXJuIGEuaGFzQ2hpbGRyZW4/dGhpcy5pbnNlcnRCZWZvcmUoYS5maXJzdENoaWxkLHIpOihpLnBhcmVudD10LGEuZmlyc3RDaGlsZD1yLGEubGFzdENoaWxkPXIsYS5jaGlsZHJlbkNoYW5nZWQoKSkscn1hcHBlbmRDaGlsZCh0LHIpe2xldCBhPXRoaXMuX25vZGUodCksaT10aGlzLl9ub2RlKHIpO2lmKGkuaXNBdHRhY2hlZCl0aHJvdyBFcnJvcigiR2l2ZW4gb2JqZWN0IGlzIGFscmVhZHkgcHJlc2VudCBpbiB0aGlzIFN5bWJvbFRyZWUsIHJlbW92ZSBpdCBmaXJzdCIpO3JldHVybiBhLmhhc0NoaWxkcmVuP3RoaXMuaW5zZXJ0QWZ0ZXIoYS5sYXN0Q2hpbGQscik6KGkucGFyZW50PXQsYS5maXJzdENoaWxkPXIsYS5sYXN0Q2hpbGQ9cixhLmNoaWxkcmVuQ2hhbmdlZCgpKSxyfX07bEZ0LmV4cG9ydHM9QzFlLEMxZS5UcmVlUG9zaXRpb249UzR9KTt2YXIgXzFlLEluPWwoKCk9PntzNCgpO1hMdCgpO29vKCk7TjIoKTtLTnQoKTtfMWU9QXIoY0Z0KCksMSl9KTt2YXIgcWdlLGRGdD1sKCgpPT57SW4oKTtxZ2U9Y2xhc3N7ZXhlY3V0aW9uU2xvdHM9W107aXNQcm9jZXNzaW5nPSExO25vbkV4Y2x1c2l2ZU1heENvbmN1cnJlbmN5PTEvMDtub25FeGNsdXNpdmVDdXJyZW50Q291bnQ9MDtub25FeGNsdXNpdmVQZW5kaW5nUXVldWU9W107YXN5bmMgZ2V0RXhjbHVzaXZlRXhlY3V0aW9uU2xvdCh0LHIpe2xldCBhPWx0LmRlZmVyKCksaT17ZnVuY1RvRXhlY3V0ZTp0LGV4ZWN1dGlvbkRlZmVycmVkOmEsdGltZW91dDpyLG1vZGU6ImV4Y2x1c2l2ZSJ9O3JldHVybiB0aGlzLmV4ZWN1dGlvblNsb3RzLnB1c2goaSksdGhpcy5wcm9jZXNzRXhlY3V0aW9uU2xvdHMoKSxhLnByb21pc2V9YXN5bmMgZ2V0Tm9uRXhjbHVzaXZlRXhlY3V0aW9uU2xvdCh0LHIpe2xldCBhPWx0LmRlZmVyKCksaT17ZnVuY1RvRXhlY3V0ZTp0LGV4ZWN1dGlvbkRlZmVycmVkOmEsdGltZW91dDpyLG1vZGU6Im5vbmV4Y2x1c2l2ZSJ9O3JldHVybiB0aGlzLmV4ZWN1dGlvblNsb3RzLnB1c2goaSksdGhpcy5wcm9jZXNzRXhlY3V0aW9uU2xvdHMoKSxhLnByb21pc2V9c2V0Tm9uRXhjbHVzaXZlTWF4Q29uY3VycmVuY3kodCl7aWYoIU51bWJlci5pc0Zpbml0ZSh0KXx8dDwxKXRocm93IG5ldyBFcnJvcigibm9uRXhjbHVzaXZlTWF4Q29uY3VycmVuY3kgbXVzdCBiZSBhIGZpbml0ZSBudW1iZXIgPj0gMSIpO3RoaXMubm9uRXhjbHVzaXZlTWF4Q29uY3VycmVuY3k9dH1nZXROb25FeGNsdXNpdmVNYXhDb25jdXJyZW5jeSgpe3JldHVybiB0aGlzLm5vbkV4Y2x1c2l2ZU1heENvbmN1cnJlbmN5fWdldEFjdGl2ZU5vbkV4Y2x1c2l2ZUNvdW50KCl7cmV0dXJuIHRoaXMubm9uRXhjbHVzaXZlQ3VycmVudENvdW50fWdldFBlbmRpbmdOb25FeGNsdXNpdmVDb3VudCgpe3JldHVybiB0aGlzLm5vbkV4Y2x1c2l2ZVBlbmRpbmdRdWV1ZS5sZW5ndGh9YXN5bmMgcHJvY2Vzc0V4ZWN1dGlvblNsb3RzKCl7aWYoIXRoaXMuaXNQcm9jZXNzaW5nKXtmb3IodGhpcy5pc1Byb2Nlc3Npbmc9ITA7dGhpcy5leGVjdXRpb25TbG90cy5sZW5ndGg+MDspe2xldCB0PXRoaXMuZXhlY3V0aW9uU2xvdHNbMF07aWYodC5tb2RlPT09ImV4Y2x1c2l2ZSIpYXdhaXQgdGhpcy5leGVjdXRlRXhjbHVzaXZlU2xvdCh0KSx0aGlzLmV4ZWN1dGlvblNsb3RzLnNoaWZ0KCk7ZWxzZXtsZXQgcj1bXTtmb3IoO3RoaXMuZXhlY3V0aW9uU2xvdHMubGVuZ3RoPjAmJnRoaXMuZXhlY3V0aW9uU2xvdHNbMF0ubW9kZT09PSJub25leGNsdXNpdmUiOylyLnB1c2godGhpcy5leGVjdXRpb25TbG90cy5zaGlmdCgpKTthd2FpdCB0aGlzLmV4ZWN1dGVOb25FeGNsdXNpdmVTbG90cyhyKX19dGhpcy5pc1Byb2Nlc3Npbmc9ITF9fWFzeW5jIGV4ZWN1dGVFeGNsdXNpdmVTbG90KHQpe3RyeXtpZih0LnRpbWVvdXQpe2xldCByPW5ldyBRdC5UaW1lb3V0KHQudGltZW91dCk7dHJ5e2xldCBhPWF3YWl0IFByb21pc2UucmFjZShbdC5mdW5jVG9FeGVjdXRlKCksci5wcm9taXNlLnRoZW4oKCk9Pnt0aHJvdyBuZXcgRXJyb3IoIlRpbWVvdXQgcmVhY2hlZCIpfSldKTtyLmNhbmNlbCgpLHQuZXhlY3V0aW9uRGVmZXJyZWQucmVzb2x2ZShhKX1jYXRjaChhKXt0aHJvdyByLmNhbmNlbCgpLGF9fWVsc2V7bGV0IHI9YXdhaXQgdC5mdW5jVG9FeGVjdXRlKCk7dC5leGVjdXRpb25EZWZlcnJlZC5yZXNvbHZlKHIpfX1jYXRjaChyKXt0LmV4ZWN1dGlvbkRlZmVycmVkLnJlamVjdChyKX19YXN5bmMgZXhlY3V0ZU5vbkV4Y2x1c2l2ZVNsb3RzKHQpe2xldCByPXQubWFwKGFzeW5jIGE9Pnthd2FpdCB0aGlzLndhaXRGb3JOb25FeGNsdXNpdmVTbG90KCk7dHJ5e2lmKGEudGltZW91dCl7bGV0IGk9bmV3IFF0LlRpbWVvdXQoYS50aW1lb3V0KTt0cnl7bGV0IG89YXdhaXQgUHJvbWlzZS5yYWNlKFthLmZ1bmNUb0V4ZWN1dGUoKSxpLnByb21pc2UudGhlbigoKT0+e3Rocm93IG5ldyBFcnJvcigiVGltZW91dCByZWFjaGVkIil9KV0pO2kuY2FuY2VsKCksYS5leGVjdXRpb25EZWZlcnJlZC5yZXNvbHZlKG8pfWNhdGNoKG8pe3Rocm93IGkuY2FuY2VsKCksb319ZWxzZXtsZXQgaT1hd2FpdCBhLmZ1bmNUb0V4ZWN1dGUoKTthLmV4ZWN1dGlvbkRlZmVycmVkLnJlc29sdmUoaSl9fWNhdGNoKGkpe2EuZXhlY3V0aW9uRGVmZXJyZWQucmVqZWN0KGkpfWZpbmFsbHl7dGhpcy5yZWxlYXNlTm9uRXhjbHVzaXZlU2xvdCgpfX0pO2F3YWl0IFByb21pc2UuYWxsKHIpfXdhaXRGb3JOb25FeGNsdXNpdmVTbG90KCl7cmV0dXJuIHRoaXMubm9uRXhjbHVzaXZlQ3VycmVudENvdW50PHRoaXMubm9uRXhjbHVzaXZlTWF4Q29uY3VycmVuY3k/KHRoaXMubm9uRXhjbHVzaXZlQ3VycmVudENvdW50KyssUHJvbWlzZS5yZXNvbHZlKCkpOm5ldyBQcm9taXNlKHQ9Pnt0aGlzLm5vbkV4Y2x1c2l2ZVBlbmRpbmdRdWV1ZS5wdXNoKCgpPT57dGhpcy5ub25FeGNsdXNpdmVDdXJyZW50Q291bnQrKyx0KCl9KX0pfXJlbGVhc2VOb25FeGNsdXNpdmVTbG90KCl7dGhpcy5ub25FeGNsdXNpdmVDdXJyZW50Q291bnQtLTtsZXQgdD10aGlzLm5vbkV4Y2x1c2l2ZVBlbmRpbmdRdWV1ZS5zaGlmdCgpO3QmJnQoKX19fSk7dmFyIGpnZSx1RnQ9bCgoKT0+e0luKCk7amdlPWNsYXNze2RhdGE7aGlnaFdhdGVyTWFyaztoYXNTcGFjZT1uZXcgTnIucnhqcy5TdWJqZWN0O2l0ZW1zQXZhaWxhYmxlPW5ldyBOci5yeGpzLlN1YmplY3Q7aXNEZXN0cm95ZWQ9ITE7Y29uc3RydWN0b3IodD0xNil7dGhpcy5kYXRhPVtdLHRoaXMuaGlnaFdhdGVyTWFyaz10fWdldCBsZW5ndGgoKXtyZXR1cm4gdGhpcy5kYXRhLmxlbmd0aH1wdXNoKHQpe3RoaXMuZGF0YS5wdXNoKHQpLHRoaXMuaXRlbXNBdmFpbGFibGUubmV4dCgiaXRlbXNBdmFpbGFibGUiKTtsZXQgcj10aGlzLmNoZWNrU3BhY2VBdmFpbGFibGUoKTtyZXR1cm4gciYmdGhpcy5oYXNTcGFjZS5uZXh0KCJoYXNTcGFjZSIpLHJ9cHVzaE1hbnkodCl7Zm9yKGxldCByIG9mIHQpdGhpcy5wdXNoKHIpO3JldHVybiB0aGlzLmNoZWNrU3BhY2VBdmFpbGFibGUoKX1zaGlmdCgpe2xldCB0PXRoaXMuZGF0YS5zaGlmdCgpO3JldHVybiB0aGlzLmNoZWNrU3BhY2VBdmFpbGFibGUoKSYmdGhpcy5oYXNTcGFjZS5uZXh0KCJoYXNTcGFjZSIpLHR9cGVlaygpe3JldHVybiB0aGlzLmRhdGFbMF19Y2hlY2tTcGFjZUF2YWlsYWJsZSgpe3JldHVybiB0aGlzLmRhdGEubGVuZ3RoPHRoaXMuaGlnaFdhdGVyTWFya31jaGVja0hhc0l0ZW1zKCl7cmV0dXJuIHRoaXMuZGF0YS5sZW5ndGg+MH13YWl0Rm9yU3BhY2UoKXtyZXR1cm4gbmV3IFByb21pc2UodD0+e2lmKHRoaXMuY2hlY2tTcGFjZUF2YWlsYWJsZSgpfHx0aGlzLmlzRGVzdHJveWVkKXQoKTtlbHNle2xldCByPXRoaXMuaGFzU3BhY2Uuc3Vic2NyaWJlKHtuZXh0OigpPT57ci51bnN1YnNjcmliZSgpLHQoKX0sY29tcGxldGU6KCk9Pnt0KCl9fSl9fSl9d2FpdEZvckl0ZW1zKCl7cmV0dXJuIG5ldyBQcm9taXNlKHQ9PntpZih0aGlzLmRhdGEubGVuZ3RoPjB8fHRoaXMuaXNEZXN0cm95ZWQpdCgpO2Vsc2V7bGV0IHI9dGhpcy5pdGVtc0F2YWlsYWJsZS5zdWJzY3JpYmUoe25leHQ6KCk9PntyLnVuc3Vic2NyaWJlKCksdCgpfSxjb21wbGV0ZTooKT0+e3QoKX19KX19KX1bU3ltYm9sLml0ZXJhdG9yXSgpe3JldHVybiB0aGlzLmRhdGFbU3ltYm9sLml0ZXJhdG9yXSgpfWRlc3Ryb3koKXt0aGlzLmlzRGVzdHJveWVkPSEwLHRoaXMuaGFzU3BhY2UuY29tcGxldGUoKSx0aGlzLml0ZW1zQXZhaWxhYmxlLmNvbXBsZXRlKCl9fX0pO3ZhciBnNixUMWU9bCgoKT0+e0luKCk7ZzY9Y2xhc3MgZXttYXBPYmplY3Q9bmV3IE1hcDtpc1VuaXF1ZUtleSh0KXtyZXR1cm4hdGhpcy5tYXBPYmplY3QuaGFzKHQpfWhhcyh0KXtyZXR1cm4gdGhpcy5tYXBPYmplY3QuaGFzKHQpfWdldCBzaXplKCl7cmV0dXJuIHRoaXMubWFwT2JqZWN0LnNpemV9YWRkVG9NYXAodCxyLGEpe3JldHVybiB0aGlzLmlzVW5pcXVlS2V5KHQpfHxhJiZhLmZvcmNlPyh0aGlzLm1hcE9iamVjdC5zZXQodCxyKSwhMCk6ITF9Z2V0QnlLZXkodCl7cmV0dXJuIHRoaXMubWFwT2JqZWN0LmdldCh0KX1yZW1vdmVGcm9tTWFwKHQpe2xldCByPXRoaXMubWFwT2JqZWN0LmdldCh0KTtyZXR1cm4gdGhpcy5tYXBPYmplY3QuZGVsZXRlKHQpLHJ9Z2V0S2V5cygpe3JldHVybiBBcnJheS5mcm9tKHRoaXMubWFwT2JqZWN0LmtleXMoKSl9dmFsdWVzKCl7cmV0dXJuIEFycmF5LmZyb20odGhpcy5tYXBPYmplY3QudmFsdWVzKCkpfWVudHJpZXMoKXtyZXR1cm4gQXJyYXkuZnJvbSh0aGlzLm1hcE9iamVjdC5lbnRyaWVzKCkpfWNsZWFuKCl7dGhpcy5tYXBPYmplY3QuY2xlYXIoKX1jb25jYXQodCl7bGV0IHI9bmV3IGU7Zm9yKGxldCBhIG9mIHRoaXMuZ2V0S2V5cygpKXIuYWRkVG9NYXAoYSx0aGlzLmdldEJ5S2V5KGEpKTtmb3IobGV0IGEgb2YgdC5nZXRLZXlzKCkpci5hZGRUb01hcChhLHQuZ2V0QnlLZXkoYSkse2ZvcmNlOiEwfSk7cmV0dXJuIHJ9YWRkQWxsRnJvbU90aGVyKHQpe2ZvcihsZXQgciBvZiB0LmdldEtleXMoKSl0aGlzLmFkZFRvTWFwKHIsdC5nZXRCeUtleShyKSx7Zm9yY2U6ITB9KX1hc3luYyBmaW5kKHQpe2ZvcihsZXQgciBvZiB0aGlzLmdldEtleXMoKSl7bGV0IGE9dGhpcy5nZXRCeUtleShyKTtpZihhd2FpdCB0KGEpKXJldHVybiBhfX1bU3ltYm9sLml0ZXJhdG9yXSgpe3JldHVybiB0aGlzLm1hcE9iamVjdC5lbnRyaWVzKCl9fX0pO3ZhciBmRnQsb2MsUnY9bCgoKT0+e0luKCk7VDFlKCk7ZkZ0PShlPSJ1bmkiKT0+YCR7ZX14eHh4eHh4eHh4eGAucmVwbGFjZSgvW3h5XS9nLHQ9PntsZXQgcj1NYXRoLnJhbmRvbSgpKjE2fDA7cmV0dXJuKHQ9PT0ieCI/cjpyJjN8OCkudG9TdHJpbmcoMTYpfSksb2M9Y2xhc3MgZXtmYXN0TWFwPW5ldyBnNjtyZXZlcnNlTWFwPW5ldyBNYXA7ZXZlbnRTdWJqZWN0PW5ldyBOci5yeGpzLlN1YmplY3Q7Y29uc3RydWN0b3IoKXt9Z2V0IGxlbmd0aCgpe3JldHVybiB0aGlzLmZhc3RNYXAuc2l6ZX1hZGRNYXBwZWRVbmlxdWUodCxyKXt0aGlzLmZhc3RNYXAuYWRkVG9NYXAodCxyKSx0aGlzLnJldmVyc2VNYXAuc2V0KHIsdCl9Z2V0TWFwcGVkVW5pcXVlKHQpe3JldHVybiB0aGlzLmZhc3RNYXAuZ2V0QnlLZXkodCl9cmVtb3ZlTWFwcGVkVW5pcXVlKHQpe2xldCByPXRoaXMuZmFzdE1hcC5yZW1vdmVGcm9tTWFwKHQpO3JldHVybiByIT09dm9pZCAwJiYodGhpcy5yZXZlcnNlTWFwLmRlbGV0ZShyKSx0aGlzLmV2ZW50U3ViamVjdC5uZXh0KHtvcGVyYXRpb246InJlbW92ZSIscGF5bG9hZDpyfSkpLHJ9YWRkKHQpe2xldCByPXRoaXMucmV2ZXJzZU1hcC5nZXQodCk7aWYociE9PXZvaWQgMClyZXR1cm4gcjtsZXQgYT1mRnQoImtleSIpO3JldHVybiB0aGlzLmFkZE1hcHBlZFVuaXF1ZShhLHQpLHRoaXMuZXZlbnRTdWJqZWN0Lm5leHQoe29wZXJhdGlvbjoiYWRkIixwYXlsb2FkOnR9KSxhfWFkZEFycmF5KHQpe2ZvcihsZXQgciBvZiB0KXRoaXMuYWRkKHIpfWNoZWNrRm9yT2JqZWN0KHQpe3JldHVybiB0aGlzLnJldmVyc2VNYXAuaGFzKHQpfWdldEtleUZvck9iamVjdCh0KXtyZXR1cm4gdGhpcy5yZXZlcnNlTWFwLmdldCh0KT8/bnVsbH1hc3luYyBmaW5kKHQpe3JldHVybiB0aGlzLmZhc3RNYXAuZmluZCh0KX1maW5kU3luYyh0KXtmb3IobGV0IHIgb2YgdGhpcy5mYXN0TWFwLmdldEtleXMoKSlpZih0KHRoaXMuZmFzdE1hcC5nZXRCeUtleShyKSkpcmV0dXJuIHRoaXMuZ2V0TWFwcGVkVW5pcXVlKHIpfWFzeW5jIGZpbmRPbmVBbmRSZW1vdmUodCl7bGV0IHI9YXdhaXQgdGhpcy5maW5kKHQpO3JldHVybiByJiZ0aGlzLnJlbW92ZShyKSxyfWZpbmRPbmVBbmRSZW1vdmVTeW5jKHQpe2xldCByPXRoaXMuZmluZFN5bmModCk7cmV0dXJuIHImJnRoaXMucmVtb3ZlKHIpLHJ9YXN5bmMgZm9yRWFjaCh0KXtmb3IobGV0IHIgb2YgdGhpcy5mYXN0TWFwLmdldEtleXMoKSlhd2FpdCB0KHRoaXMuZmFzdE1hcC5nZXRCeUtleShyKSl9Z2V0T25lQW5kUmVtb3ZlKCl7bGV0IHQ9dGhpcy5mYXN0TWFwLmdldEtleXMoKTtpZih0Lmxlbmd0aD09PTApcmV0dXJuIG51bGw7e2xldCByPXRbMF0sYT10aGlzLmZhc3RNYXAucmVtb3ZlRnJvbU1hcChyKTtyZXR1cm4gdGhpcy5yZXZlcnNlTWFwLmRlbGV0ZShhKSx0aGlzLmV2ZW50U3ViamVjdC5uZXh0KHtvcGVyYXRpb246InJlbW92ZSIscGF5bG9hZDphfSksYX19Z2V0QXJyYXkoKXtyZXR1cm4gdGhpcy5mYXN0TWFwLnZhbHVlcygpfWlzRW1wdHkoKXtyZXR1cm4gdGhpcy5mYXN0TWFwLnNpemU9PT0wfXJlbW92ZSh0KXtsZXQgcj10aGlzLnJldmVyc2VNYXAuZ2V0KHQpO2lmKHIhPT12b2lkIDApe2xldCBhPXRoaXMuZmFzdE1hcC5yZW1vdmVGcm9tTWFwKHIpO3JldHVybiB0aGlzLnJldmVyc2VNYXAuZGVsZXRlKGEpLHRoaXMuZXZlbnRTdWJqZWN0Lm5leHQoe29wZXJhdGlvbjoicmVtb3ZlIixwYXlsb2FkOmF9KSxhfXJldHVybiBudWxsfXdpcGUoKXtsZXQgdD10aGlzLmZhc3RNYXAuZ2V0S2V5cygpO2ZvcihsZXQgciBvZiB0KXtsZXQgYT10aGlzLmZhc3RNYXAucmVtb3ZlRnJvbU1hcChyKTt0aGlzLnJldmVyc2VNYXAuZGVsZXRlKGEpLHRoaXMuZXZlbnRTdWJqZWN0Lm5leHQoe29wZXJhdGlvbjoicmVtb3ZlIixwYXlsb2FkOmF9KX19Y29uY2F0KHQpe2xldCByPW5ldyBlO3IuZmFzdE1hcC5hZGRBbGxGcm9tT3RoZXIodGhpcy5mYXN0TWFwKSxyLmZhc3RNYXAuYWRkQWxsRnJvbU90aGVyKHQuZmFzdE1hcCk7Zm9yKGxldCBhIG9mIHIuZmFzdE1hcC5nZXRLZXlzKCkpci5yZXZlcnNlTWFwLnNldChyLmZhc3RNYXAuZ2V0QnlLZXkoYSksYSk7cmV0dXJuIHJ9YWRkQWxsRnJvbU90aGVyKHQpe3RoaXMuZmFzdE1hcC5hZGRBbGxGcm9tT3RoZXIodC5mYXN0TWFwKTtmb3IobGV0IHIgb2YgdC5mYXN0TWFwLmdldEtleXMoKSl0aGlzLnJldmVyc2VNYXAuc2V0KHQuZmFzdE1hcC5nZXRCeUtleShyKSxyKX1tYXAodCl7cmV0dXJuIHRoaXMuZ2V0QXJyYXkoKS5tYXAodCl9ZmlsdGVyKHQpe3JldHVybiB0aGlzLmdldEFycmF5KCkuZmlsdGVyKHQpfXJlZHVjZSh0LHIpe3JldHVybiB0aGlzLmdldEFycmF5KCkucmVkdWNlKHQscil9W1N5bWJvbC5pdGVyYXRvcl0oKXtyZXR1cm4gdGhpcy5nZXRBcnJheSgpW1N5bWJvbC5pdGVyYXRvcl0oKX1kZXN0cm95KCl7dGhpcy53aXBlKCksdGhpcy5yZXZlcnNlTWFwLmNsZWFyKCksdGhpcy5ldmVudFN1YmplY3QuY29tcGxldGUoKX19fSk7dmFyIEJ2LFZnZT1sKCgpPT57SW4oKTtVZ2UoKTtCdj1jbGFzc3tvcHRpb25zO2ludGVyZXN0TWFwUmVmO29yaWdpbmFsSW50ZXJlc3Q7Y29tcGFyaXNvbkZ1bmM7ZGVzdHJ1Y3Rpb25UaW1lcj1uZXcgbTYuVGltZXIoMWU0KTtpc0Z1bGxmaWxsZWQ9ITE7aXNEZXN0cm95ZWQ9ITE7ZnVsbGZpbGxtZW50U3RvcmU9W107bWFya0xvc3RUaW1lb3V0PW51bGw7Z2V0IGNvbXBhcmlzb25TdHJpbmcoKXtyZXR1cm4gdGhpcy5jb21wYXJpc29uRnVuYyh0aGlzLm9yaWdpbmFsSW50ZXJlc3QpfWludGVyZXN0RGVmZXJyZWQ9bmV3IGx0LkRlZmVycmVkO2ludGVyZXN0RnVsbGZpbGxlZD10aGlzLmludGVyZXN0RGVmZXJyZWQucHJvbWlzZTtmdWxsZmlsbEludGVyZXN0KHQpe3RoaXMuaXNGdWxsZmlsbGVkPSEwLHRoaXMuZnVsbGZpbGxtZW50U3RvcmU9W10sdGhpcy5pbnRlcmVzdERlZmVycmVkLnJlc29sdmUodCksdGhpcy5kZXN0cm95KCl9Y29uc3RydWN0b3IodCxyLGEsaSl7dGhpcy5pbnRlcmVzdE1hcFJlZj10LHRoaXMub3JpZ2luYWxJbnRlcmVzdD1yLHRoaXMuY29tcGFyaXNvbkZ1bmM9YSx0aGlzLm9wdGlvbnM9aSx0aGlzLmRlc3RydWN0aW9uVGltZXIuY29tcGxldGVkLnRoZW4oKCk9Pnt0aGlzLmlzRGVzdHJveWVkfHx0aGlzLmRlc3Ryb3koKX0pLHRoaXMub3B0aW9ucz8ubWFya0xvc3RBZnRlckRlZmF1bHQmJih0aGlzLm1hcmtMb3N0VGltZW91dD1uZXcgUXQuVGltZW91dCh0aGlzLm9wdGlvbnMubWFya0xvc3RBZnRlckRlZmF1bHQpLHRoaXMubWFya0xvc3RUaW1lb3V0LnByb21pc2UudGhlbigoKT0+e3RoaXMuaXNEZXN0cm95ZWR8fHRoaXMubWFya0xvc3QoKX0pKX1kZXN0cm95KCl7dGhpcy5pc0Rlc3Ryb3llZHx8KHRoaXMuaXNEZXN0cm95ZWQ9ITAsdGhpcy5kZXN0cnVjdGlvblRpbWVyLnJlc2V0KCksdGhpcy5tYXJrTG9zdFRpbWVvdXQmJih0aGlzLm1hcmtMb3N0VGltZW91dC5jYW5jZWwoKSx0aGlzLm1hcmtMb3N0VGltZW91dD1udWxsKSx0aGlzLmZ1bGxmaWxsbWVudFN0b3JlPVtdLHRoaXMuaW50ZXJlc3RNYXBSZWYucmVtb3ZlSW50ZXJlc3QodGhpcyksIXRoaXMuaXNGdWxsZmlsbGVkJiZ0aGlzLm9wdGlvbnM/LmRlZmF1bHRGdWxsZmlsbG1lbnQmJih0aGlzLmlzRnVsbGZpbGxlZD0hMCx0aGlzLmludGVyZXN0RGVmZXJyZWQucmVzb2x2ZSh0aGlzLm9wdGlvbnMuZGVmYXVsdEZ1bGxmaWxsbWVudCkpKX1tYXJrTG9zdCgpe3RoaXMuZGVzdHJ1Y3Rpb25UaW1lci5zdGFydCgpfXJlbmV3KCl7dGhpcy5kZXN0cnVjdGlvblRpbWVyLnJlc2V0KCl9fX0pO3ZhciBXZ2UsVWdlPWwoKCk9PntJbigpO1J2KCk7VmdlKCk7V2dlPWNsYXNze29wdGlvbnM7aW50ZXJlc3RPYmplY3RNYXA9bmV3IG9jO2ludGVyZXN0c0J5Q29tcGFyaXNvblN0cmluZz1uZXcgTWFwO2NvbXBhcmlzb25GdW5jO2NvbnN0cnVjdG9yKHQscj17fSl7dGhpcy5jb21wYXJpc29uRnVuYz10LHRoaXMub3B0aW9ucz1yfWFzeW5jIGFkZEludGVyZXN0KHQscil7bGV0IGE9dGhpcy5jb21wYXJpc29uRnVuYyh0KSxpLG89dGhpcy5pbnRlcmVzdHNCeUNvbXBhcmlzb25TdHJpbmcuZ2V0KGEpO3JldHVybiBvPyhpPW8saS5yZW5ldygpKTooaT1uZXcgQnYodGhpcyx0LHRoaXMuY29tcGFyaXNvbkZ1bmMse21hcmtMb3N0QWZ0ZXJEZWZhdWx0OnRoaXMub3B0aW9ucy5tYXJrTG9zdEFmdGVyRGVmYXVsdCxkZWZhdWx0RnVsbGZpbGxtZW50OnJ9KSx0aGlzLmludGVyZXN0T2JqZWN0TWFwLmFkZChpKSx0aGlzLmludGVyZXN0c0J5Q29tcGFyaXNvblN0cmluZy5zZXQoYSxpKSksdGhpcy5pbnRlcmVzdE9ic2VydmFibGUucHVzaChpKSxpfWludGVyZXN0T2JzZXJ2YWJsZT1uZXcgTnIuT2JzZXJ2YWJsZUludGFrZTtyZW1vdmVJbnRlcmVzdCh0KXt0aGlzLmludGVyZXN0T2JqZWN0TWFwLmZpbmRPbmVBbmRSZW1vdmVTeW5jKHI9PnQuY29tcGFyaXNvblN0cmluZz09PXIuY29tcGFyaXNvblN0cmluZyksdGhpcy5pbnRlcmVzdHNCeUNvbXBhcmlzb25TdHJpbmcuZGVsZXRlKHQuY29tcGFyaXNvblN0cmluZyl9Y2hlY2tJbnRlcmVzdCh0KXtsZXQgcj10aGlzLmNvbXBhcmlzb25GdW5jKHQpO3JldHVybiB0aGlzLmNoZWNrSW50ZXJlc3RCeVN0cmluZyhyKX1jaGVja0ludGVyZXN0QnlTdHJpbmcodCl7cmV0dXJuIHRoaXMuaW50ZXJlc3RzQnlDb21wYXJpc29uU3RyaW5nLmhhcyh0KX1pbmZvcm1Mb3N0SW50ZXJlc3QodCl7bGV0IHI9dGhpcy5maW5kSW50ZXJlc3QodCk7ciYmci5tYXJrTG9zdCgpfWZpbmRJbnRlcmVzdCh0KXtsZXQgcj10aGlzLmNvbXBhcmlzb25GdW5jKHQpO3JldHVybiB0aGlzLmludGVyZXN0c0J5Q29tcGFyaXNvblN0cmluZy5nZXQocik/P251bGx9ZGVzdHJveSgpe2xldCB0PXRoaXMuaW50ZXJlc3RPYmplY3RNYXAuZ2V0QXJyYXkoKTtmb3IobGV0IHIgb2YgdClyLmRlc3Ryb3koKTt0aGlzLmludGVyZXN0T2JqZWN0TWFwLndpcGUoKSx0aGlzLmludGVyZXN0c0J5Q29tcGFyaXNvblN0cmluZy5jbGVhcigpLHRoaXMuaW50ZXJlc3RPYnNlcnZhYmxlLnNpZ25hbENvbXBsZXRlKCl9fX0pO3ZhciBHZ2UscEZ0PWwoKCk9PntJbigpO0dnZT1jbGFzc3thcnJheT1bXTthcnJheUxpbWl0O2NvbnN0cnVjdG9yKHQpe3RoaXMuYXJyYXlMaW1pdD10fWdldCBsZW5ndGgoKXtyZXR1cm4gdGhpcy5hcnJheS5sZW5ndGh9YWRkT25lKHQpe3RoaXMuYXJyYXkudW5zaGlmdCh0KSx0aGlzLmFycmF5Lmxlbmd0aD50aGlzLmFycmF5TGltaXQmJih0aGlzLmFycmF5Lmxlbmd0aD10aGlzLmFycmF5TGltaXQpfWFkZE1hbnkodCl7Zm9yKGxldCByIG9mIHQpdGhpcy5hZGRPbmUocil9c2V0TGltaXQodCl7dGhpcy5hcnJheUxpbWl0PXQsdGhpcy5hcnJheS5sZW5ndGg+dGhpcy5hcnJheUxpbWl0JiYodGhpcy5hcnJheS5sZW5ndGg9dGhpcy5hcnJheUxpbWl0KX1nZXRBdmVyYWdlKCl7aWYodGhpcy5hcnJheS5sZW5ndGg9PT0wKXJldHVybiAwO2lmKHR5cGVvZiB0aGlzLmFycmF5WzBdPT0ibnVtYmVyIil7bGV0IHQ9MDtmb3IobGV0IHIgb2YgdGhpcy5hcnJheSl0PXQrcjtyZXR1cm4gdC90aGlzLmFycmF5Lmxlbmd0aH1lbHNlIHJldHVybiBudWxsfXJlbW92ZSh0KXtsZXQgcj10aGlzLmFycmF5LmluZGV4T2YodCk7cmV0dXJuIHIhPT0tMT8odGhpcy5hcnJheS5zcGxpY2UociwxKSwhMCk6ITF9Y2xlYXIoKXt0aGlzLmFycmF5Lmxlbmd0aD0wfWdldEFycmF5KCl7cmV0dXJuWy4uLnRoaXMuYXJyYXldfVtTeW1ib2wuaXRlcmF0b3JdKCl7cmV0dXJuIHRoaXMuYXJyYXlbU3ltYm9sLml0ZXJhdG9yXSgpfX19KTt2YXIgWWdlLGhGdD1sKCgpPT57SW4oKTtSdigpO1lnZT1jbGFzc3tyZWZlcmVuY2VPYmplY3RNYXA9bmV3IG9jO2NvbnN0cnVjdG9yKCl7fWNoZWNrQW5kVHJhY2sodCl7cmV0dXJuIHRoaXMucmVmZXJlbmNlT2JqZWN0TWFwLmNoZWNrRm9yT2JqZWN0KHQpPyExOih0aGlzLnJlZmVyZW5jZU9iamVjdE1hcC5hZGQodCksITApfXJlc2V0KCl7dGhpcy5yZWZlcmVuY2VPYmplY3RNYXAud2lwZSgpfWRlc3Ryb3koKXt0aGlzLnJlZmVyZW5jZU9iamVjdE1hcC5kZXN0cm95KCl9fX0pO3ZhciBIdixaZ2U9bCgoKT0+e0luKCk7SHY9Y2xhc3N7X3N0cmluZ0FycmF5PVtdO190cmlnZ2VyVW50aWxUcnVlRnVuY3Rpb25BcnJheT1bXTtjb25zdHJ1Y3Rvcigpe31hZGRTdHJpbmcodCl7dGhpcy5fc3RyaW5nQXJyYXkucHVzaCh0KSx0aGlzLm5vdGlmeVRyaWdnZXIoKX1hZGRTdHJpbmdBcnJheSh0KXtmb3IobGV0IHIgb2YgdCl0aGlzLmFkZFN0cmluZyhyKX1yZW1vdmVTdHJpbmcodCl7dGhpcy5fc3RyaW5nQXJyYXk9dGhpcy5fc3RyaW5nQXJyYXkuZmlsdGVyKHI9PnIhPT10KSx0aGlzLm5vdGlmeVRyaWdnZXIoKX13aXBlKCl7dGhpcy5fc3RyaW5nQXJyYXk9W10sdGhpcy5ub3RpZnlUcmlnZ2VyKCl9Y2hlY2tTdHJpbmcodCl7cmV0dXJuIHRoaXMuX3N0cmluZ0FycmF5LmluZGV4T2YodCkhPT0tMX1jaGVja01pbmltYXRjaCh0KXtsZXQgcj1uZXcgZHYuU21hcnRNYXRjaCh0KSxhPSExO2ZvcihsZXQgaSBvZiB0aGlzLl9zdHJpbmdBcnJheSlyLm1hdGNoKGkpJiYoYT0hMCk7cmV0dXJuIGF9Y2hlY2tJc0VtcHR5KCl7cmV0dXJuIHRoaXMuX3N0cmluZ0FycmF5Lmxlbmd0aD09PTB9Z2V0U3RyaW5nQXJyYXkoKXtsZXQgdD1bXTtmb3IobGV0IHIgb2YgdGhpcy5fc3RyaW5nQXJyYXkpdC5wdXNoKHIpO3JldHVybiB0fXJlZ2lzdGVyVW50aWxUcnVlKHQscil7bGV0IGE9bHQuZGVmZXIoKTtyZXR1cm4gdGhpcy5fdHJpZ2dlclVudGlsVHJ1ZUZ1bmN0aW9uQXJyYXkucHVzaCgoKT0+e2xldCBpPXQodGhpcy5nZXRTdHJpbmdBcnJheSgpKTtyZXR1cm4gaT09PSEwJiYociYmcigpLGEucmVzb2x2ZSgpKSxpfSksdGhpcy5ub3RpZnlUcmlnZ2VyKCksYS5wcm9taXNlfW5vdGlmeVRyaWdnZXIoKXtsZXQgdD10aGlzLl90cmlnZ2VyVW50aWxUcnVlRnVuY3Rpb25BcnJheS5maWx0ZXIocj0+IXIoKSk7dGhpcy5fdHJpZ2dlclVudGlsVHJ1ZUZ1bmN0aW9uQXJyYXk9dH1kZXN0cm95KCl7dGhpcy5fc3RyaW5nQXJyYXk9W10sdGhpcy5fdHJpZ2dlclVudGlsVHJ1ZUZ1bmN0aW9uQXJyYXk9W119fX0pO3ZhciBxdixYZ2U9bCgoKT0+e0luKCk7cXY9Y2xhc3N7b3B0aW9ucztzdG9yYWdlQXJyYXk9W107aXNTdG9wcGVkPSExO2NvbnN0cnVjdG9yKHQpe3RoaXMub3B0aW9ucz10fWFnZ3JlZ2F0aW9uVGltZXI7Y2hlY2tBZ2dyZWdhdGlvblN0YXR1cygpe2lmKHRoaXMuaXNTdG9wcGVkKXJldHVybjtsZXQgdD0oKT0+e3RoaXMuYWdncmVnYXRpb25UaW1lcj1uZXcgbTYuVGltZXIodGhpcy5vcHRpb25zLmFnZ3JlZ2F0aW9uSW50ZXJ2YWxJbk1pbGxpcyksdGhpcy5hZ2dyZWdhdGlvblRpbWVyLmNvbXBsZXRlZC50aGVuKCgpPT57aWYodGhpcy5pc1N0b3BwZWQpe3RoaXMuYWdncmVnYXRpb25UaW1lcj1udWxsO3JldHVybn1sZXQgcj10aGlzLnN0b3JhZ2VBcnJheTtpZihyLmxlbmd0aD09PTApe3RoaXMuYWdncmVnYXRpb25UaW1lcj1udWxsO3JldHVybn10aGlzLnN0b3JhZ2VBcnJheT1bXSx0KCksdGhpcy5vcHRpb25zLmZ1bmN0aW9uRm9yQWdncmVnYXRpb24ocil9KSx0aGlzLmFnZ3JlZ2F0aW9uVGltZXIuc3RhcnQoKX07dGhpcy5hZ2dyZWdhdGlvblRpbWVyfHx0KCl9YWRkKHQpe3RoaXMuaXNTdG9wcGVkfHwodGhpcy5zdG9yYWdlQXJyYXkucHVzaCh0KSx0aGlzLmNoZWNrQWdncmVnYXRpb25TdGF0dXMoKSl9c3RvcCh0PSExKXtpZih0aGlzLmlzU3RvcHBlZD0hMCx0aGlzLmFnZ3JlZ2F0aW9uVGltZXImJih0aGlzLmFnZ3JlZ2F0aW9uVGltZXIucmVzZXQoKSx0aGlzLmFnZ3JlZ2F0aW9uVGltZXI9bnVsbCksdCYmdGhpcy5zdG9yYWdlQXJyYXkubGVuZ3RoPjApe2xldCByPXRoaXMuc3RvcmFnZUFycmF5O3RoaXMuc3RvcmFnZUFycmF5PVtdLHRoaXMub3B0aW9ucy5mdW5jdGlvbkZvckFnZ3JlZ2F0aW9uKHIpfWVsc2UgdGhpcy5zdG9yYWdlQXJyYXk9W119cmVzdGFydCgpe3RoaXMuaXNTdG9wcGVkPSExfX19KTt2YXIgUWdlLG1GdD1sKCgpPT57SW4oKTtRZ2U9Y2xhc3N7c3ltYm9sVHJlZTtjb25zdHJ1Y3Rvcigpe3RoaXMuc3ltYm9sVHJlZT1uZXcgXzFlLmRlZmF1bHR9aW5pdGlhbGl6ZSh0KXtyZXR1cm4gdGhpcy5zeW1ib2xUcmVlLmluaXRpYWxpemUodCl9aGFzQ2hpbGRyZW4odCl7cmV0dXJuIHRoaXMuc3ltYm9sVHJlZS5oYXNDaGlsZHJlbih0KX1maXJzdENoaWxkKHQpe3JldHVybiB0aGlzLnN5bWJvbFRyZWUuZmlyc3RDaGlsZCh0KX1sYXN0Q2hpbGQodCl7cmV0dXJuIHRoaXMuc3ltYm9sVHJlZS5sYXN0Q2hpbGQodCl9cHJldmlvdXNTaWJsaW5nKHQpe3JldHVybiB0aGlzLnN5bWJvbFRyZWUucHJldmlvdXNTaWJsaW5nKHQpfW5leHRTaWJsaW5nKHQpe3JldHVybiB0aGlzLnN5bWJvbFRyZWUubmV4dFNpYmxpbmcodCl9cGFyZW50KHQpe3JldHVybiB0aGlzLnN5bWJvbFRyZWUucGFyZW50KHQpfWxhc3RJbmNsdXNpdmVEZXNjZW5kYW50KHQpe3JldHVybiB0aGlzLnN5bWJvbFRyZWUubGFzdEluY2x1c2l2ZURlc2NlbmRhbnQodCl9cHJlY2VkaW5nKHQscil7cmV0dXJuIHRoaXMuc3ltYm9sVHJlZS5wcmVjZWRpbmcodCxyKX1mb2xsb3dpbmcodCxyKXtyZXR1cm4gdGhpcy5zeW1ib2xUcmVlLmZvbGxvd2luZyh0LHIpfWNoaWxkcmVuVG9BcnJheSh0LHIpe3JldHVybiB0aGlzLnN5bWJvbFRyZWUuY2hpbGRyZW5Ub0FycmF5KHQscil9YW5jZXN0b3JzVG9BcnJheSh0LHIpe3JldHVybiB0aGlzLnN5bWJvbFRyZWUuYW5jZXN0b3JzVG9BcnJheSh0LHIpfXRyZWVUb0FycmF5KHQscil7cmV0dXJuIHRoaXMuc3ltYm9sVHJlZS50cmVlVG9BcnJheSh0LHIpfWNoaWxkcmVuSXRlcmF0b3IodCxyKXtyZXR1cm4gdGhpcy5zeW1ib2xUcmVlLmNoaWxkcmVuSXRlcmF0b3IodCxyKX1wcmV2aW91c1NpYmxpbmdzSXRlcmF0b3IodCl7cmV0dXJuIHRoaXMuc3ltYm9sVHJlZS5wcmV2aW91c1NpYmxpbmdzSXRlcmF0b3IodCl9bmV4dFNpYmxpbmdzSXRlcmF0b3IodCl7cmV0dXJuIHRoaXMuc3ltYm9sVHJlZS5uZXh0U2libGluZ3NJdGVyYXRvcih0KX1hbmNlc3RvcnNJdGVyYXRvcih0KXtyZXR1cm4gdGhpcy5zeW1ib2xUcmVlLmFuY2VzdG9yc0l0ZXJhdG9yKHQpfXRyZWVJdGVyYXRvcih0LHIpe3JldHVybiB0aGlzLnN5bWJvbFRyZWUudHJlZUl0ZXJhdG9yKHQscil9aW5kZXgodCl7cmV0dXJuIHRoaXMuc3ltYm9sVHJlZS5pbmRleCh0KX1jaGlsZHJlbkNvdW50KHQpe3JldHVybiB0aGlzLnN5bWJvbFRyZWUuY2hpbGRyZW5Db3VudCh0KX1jb21wYXJlVHJlZVBvc2l0aW9uKHQscil7cmV0dXJuIHRoaXMuc3ltYm9sVHJlZS5jb21wYXJlVHJlZVBvc2l0aW9uKHQscil9cmVtb3ZlKHQpe3JldHVybiB0aGlzLnN5bWJvbFRyZWUucmVtb3ZlKHQpfWluc2VydEJlZm9yZSh0LHIpe3JldHVybiB0aGlzLnN5bWJvbFRyZWUuaW5zZXJ0QmVmb3JlKHQscil9aW5zZXJ0QWZ0ZXIodCxyKXtyZXR1cm4gdGhpcy5zeW1ib2xUcmVlLmluc2VydEFmdGVyKHQscil9cHJlcGVuZENoaWxkKHQscil7cmV0dXJuIHRoaXMuc3ltYm9sVHJlZS5wcmVwZW5kQ2hpbGQodCxyKX1hcHBlbmRDaGlsZCh0LHIpe3JldHVybiB0aGlzLnN5bWJvbFRyZWUuYXBwZW5kQ2hpbGQodCxyKX10b0pzb25XaXRoSGllcmFjaHkodCl7bGV0IHI9YT0+e2xldCBpPVtdO2lmKHRoaXMuaGFzQ2hpbGRyZW4oYSkpe2xldCBvPXRoaXMuY2hpbGRyZW5Ub0FycmF5KGEse30pO2ZvcihsZXQgbiBvZiBvKWkucHVzaChyKG4pKX1yZXR1cm57ZGF0YTphLGNoaWxkcmVuOml9fTtyZXR1cm4gcih0KX1mcm9tSnNvbldpdGhIaWVyYWNoeSh0LHIpe2xldCBhPShpLG8pPT57bGV0IG49cj9yKGkuZGF0YSk6aS5kYXRhO3RoaXMuaW5pdGlhbGl6ZShuKSxvJiZ0aGlzLmFwcGVuZENoaWxkKG8sbik7Zm9yKGxldCBzIG9mIGkuY2hpbGRyZW4pYShzLG4pO3JldHVybiBufTtyZXR1cm4gYSh0KX19fSk7dmFyIElpPXt9O3FlKElpLHtBc3luY0V4ZWN1dGlvblN0YWNrOigpPT5xZ2UsQmFja3ByZXNzdXJlZEFycmF5OigpPT5qZ2UsRmFzdE1hcDooKT0+ZzYsSW50ZXJlc3Q6KCk9PkJ2LEludGVyZXN0TWFwOigpPT5XZ2UsTGltaXRlZEFycmF5OigpPT5HZ2UsTG9vcFRyYWNrZXI6KCk9PllnZSxPYmplY3RNYXA6KCk9Pm9jLFN0cmluZ21hcDooKT0+SHYsVGltZWRBZ2dyZWdhdG9yOigpPT5xdixUaW1lZEFnZ3JlZ3RvcjooKT0+cXYsVHJlZTooKT0+UWdlLHVuaTooKT0+ZkZ0fSk7dmFyIEZ2PWwoKCk9PntkRnQoKTt1RnQoKTtUMWUoKTtVZ2UoKTtWZ2UoKTtwRnQoKTtoRnQoKTtSdigpO1pnZSgpO1hnZSgpO1hnZSgpO21GdCgpfSk7dmFyIF80PXt9O3FlKF80LHthcmVVaW50OEFycmF5c0VxdWFsOigpPT5FY2EsYXNzZXJ0VWludDhBcnJheTooKT0+QzQsYXNzZXJ0VWludDhBcnJheU9yQXJyYXlCdWZmZXI6KCk9PnlGdCxiYXNlNjRUb1N0cmluZzooKT0+T2NhLGJhc2U2NFRvVWludDhBcnJheTooKT0+U0Z0LGNvbXBhcmVVaW50OEFycmF5czooKT0+JGNhLGNvbmNhdFVpbnQ4QXJyYXlzOigpPT5BY2EsZ2V0VWludEJFOigpPT5xY2EsaGV4VG9VaW50OEFycmF5OigpPT5IY2EsaW5jbHVkZXM6KCk9PmpjYSxpbmRleE9mOigpPT56RnQsaXNVaW50OEFycmF5OigpPT5LZ2Usc3RyaW5nVG9CYXNlNjQ6KCk9PkZjYSxzdHJpbmdUb1VpbnQ4QXJyYXk6KCk9Pk1GdCx0b1VpbnQ4QXJyYXk6KCk9PkRjYSx1aW50OEFycmF5VG9CYXNlNjQ6KCk9PmtGdCx1aW50OEFycmF5VG9IZXg6KCk9PkJjYSx1aW50OEFycmF5VG9TdHJpbmc6KCk9PndGdH0pO2Z1bmN0aW9uIGdGdChlLHQscil7cmV0dXJuIGU/ZS5jb25zdHJ1Y3Rvcj09PXQ/ITA6emNhLmNhbGwoZSk9PT1yOiExfWZ1bmN0aW9uIEtnZShlKXtyZXR1cm4gZ0Z0KGUsVWludDhBcnJheSxDY2EpfWZ1bmN0aW9uIFRjYShlKXtyZXR1cm4gZ0Z0KGUsQXJyYXlCdWZmZXIsX2NhKX1mdW5jdGlvbiBMY2EoZSl7cmV0dXJuIEtnZShlKXx8VGNhKGUpfWZ1bmN0aW9uIEM0KGUpe2lmKCFLZ2UoZSkpdGhyb3cgbmV3IFR5cGVFcnJvcihgRXhwZWN0ZWQgXGBVaW50OEFycmF5XGAsIGdvdCBcYCR7dHlwZW9mIGV9XGBgKX1mdW5jdGlvbiB5RnQoZSl7aWYoIUxjYShlKSl0aHJvdyBuZXcgVHlwZUVycm9yKGBFeHBlY3RlZCBcYFVpbnQ4QXJyYXlcYCBvciBcYEFycmF5QnVmZmVyXGAsIGdvdCBcYCR7dHlwZW9mIGV9XGBgKX1mdW5jdGlvbiBEY2EoZSl7aWYoZSBpbnN0YW5jZW9mIEFycmF5QnVmZmVyKXJldHVybiBuZXcgVWludDhBcnJheShlKTtpZihBcnJheUJ1ZmZlci5pc1ZpZXcoZSkpcmV0dXJuIG5ldyBVaW50OEFycmF5KGUuYnVmZmVyLGUuYnl0ZU9mZnNldCxlLmJ5dGVMZW5ndGgpO3Rocm93IG5ldyBUeXBlRXJyb3IoYFVuc3VwcG9ydGVkIHZhbHVlLCBnb3QgXGAke3R5cGVvZiBlfVxgLmApfWZ1bmN0aW9uIEFjYShlLHQpe2lmKGUubGVuZ3RoPT09MClyZXR1cm4gbmV3IFVpbnQ4QXJyYXkoMCk7dD8/PWUucmVkdWNlKChpLG8pPT5pK28ubGVuZ3RoLDApO2xldCByPW5ldyBVaW50OEFycmF5KHQpLGE9MDtmb3IobGV0IGkgb2YgZSlDNChpKSxyLnNldChpLGEpLGErPWkubGVuZ3RoO3JldHVybiByfWZ1bmN0aW9uIEVjYShlLHQpe2lmKEM0KGUpLEM0KHQpLGU9PT10KXJldHVybiEwO2lmKGUubGVuZ3RoIT09dC5sZW5ndGgpcmV0dXJuITE7Zm9yKGxldCByPTA7cjxlLmxlbmd0aDtyKyspaWYoZVtyXSE9PXRbcl0pcmV0dXJuITE7cmV0dXJuITB9ZnVuY3Rpb24gJGNhKGUsdCl7QzQoZSksQzQodCk7bGV0IHI9TWF0aC5taW4oZS5sZW5ndGgsdC5sZW5ndGgpO2ZvcihsZXQgYT0wO2E8cjthKyspe2xldCBpPWVbYV0tdFthXTtpZihpIT09MClyZXR1cm4gTWF0aC5zaWduKGkpfXJldHVybiBNYXRoLnNpZ24oZS5sZW5ndGgtdC5sZW5ndGgpfWZ1bmN0aW9uIHdGdChlLHQ9InV0ZjgiKXtyZXR1cm4geUZ0KGUpLHhGdFt0XT8/PW5ldyBnbG9iYWxUaGlzLlRleHREZWNvZGVyKHQpLHhGdFt0XS5kZWNvZGUoZSl9ZnVuY3Rpb24ganYoZSl7aWYodHlwZW9mIGUhPSJzdHJpbmciKXRocm93IG5ldyBUeXBlRXJyb3IoYEV4cGVjdGVkIFxgc3RyaW5nXGAsIGdvdCBcYCR7dHlwZW9mIGV9XGBgKX1mdW5jdGlvbiBNRnQoZSl7cmV0dXJuIGp2KGUpLFBjYS5lbmNvZGUoZSl9ZnVuY3Rpb24gSWNhKGUpe3JldHVybiBlLnJlcGxhY2VBbGwoIisiLCItIikucmVwbGFjZUFsbCgiLyIsIl8iKS5yZXBsYWNlKC89KyQvLCIiKX1mdW5jdGlvbiBOY2EoZSl7bGV0IHQ9ZS5yZXBsYWNlQWxsKCItIiwiKyIpLnJlcGxhY2VBbGwoIl8iLCIvIikscj0oNC10Lmxlbmd0aCU0KSU0O3JldHVybiB0KyI9Ii5yZXBlYXQocil9ZnVuY3Rpb24ga0Z0KGUse3VybFNhZmU6dD0hMX09e30pe0M0KGUpO2xldCByPSIiO2ZvcihsZXQgYT0wO2E8ZS5sZW5ndGg7YSs9YkZ0KXtsZXQgaT1lLnN1YmFycmF5KGEsYStiRnQpO3IrPWdsb2JhbFRoaXMuYnRvYShTdHJpbmcuZnJvbUNvZGVQb2ludC5hcHBseSh2b2lkIDAsaSkpfXJldHVybiB0P0ljYShyKTpyfWZ1bmN0aW9uIFNGdChlKXtyZXR1cm4ganYoZSksVWludDhBcnJheS5mcm9tKGdsb2JhbFRoaXMuYXRvYihOY2EoZSkpLHQ9PnQuY29kZVBvaW50QXQoMCkpfWZ1bmN0aW9uIEZjYShlLHt1cmxTYWZlOnQ9ITF9PXt9KXtyZXR1cm4ganYoZSksa0Z0KE1GdChlKSx7dXJsU2FmZTp0fSl9ZnVuY3Rpb24gT2NhKGUpe3JldHVybiBqdihlKSx3RnQoU0Z0KGUpKX1mdW5jdGlvbiBCY2EoZSl7QzQoZSk7bGV0IHQ9IiI7Zm9yKGxldCByPTA7cjxlLmxlbmd0aDtyKyspdCs9UmNhW2Vbcl1dO3JldHVybiB0fWZ1bmN0aW9uIEhjYShlKXtpZihqdihlKSxlLmxlbmd0aCUyIT09MCl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgSGV4IHN0cmluZyBsZW5ndGguIik7bGV0IHQ9ZS5sZW5ndGgvMixyPW5ldyBVaW50OEFycmF5KHQpO2ZvcihsZXQgYT0wO2E8dDthKyspe2xldCBpPXZGdFtlW2EqMl1dLG89dkZ0W2VbYSoyKzFdXTtpZihpPT09dm9pZCAwfHxvPT09dm9pZCAwKXRocm93IG5ldyBFcnJvcihgSW52YWxpZCBIZXggY2hhcmFjdGVyIGVuY291bnRlcmVkIGF0IHBvc2l0aW9uICR7YSoyfWApO3JbYV09aTw8NHxvfXJldHVybiByfWZ1bmN0aW9uIHFjYShlKXtsZXR7Ynl0ZUxlbmd0aDp0fT1lO2lmKHQ9PT02KXJldHVybiBlLmdldFVpbnQxNigwKSoyKiozMitlLmdldFVpbnQzMigyKTtpZih0PT09NSlyZXR1cm4gZS5nZXRVaW50OCgwKSoyKiozMitlLmdldFVpbnQzMigxKTtpZih0PT09NClyZXR1cm4gZS5nZXRVaW50MzIoMCk7aWYodD09PTMpcmV0dXJuIGUuZ2V0VWludDgoMCkqMioqMTYrZS5nZXRVaW50MTYoMSk7aWYodD09PTIpcmV0dXJuIGUuZ2V0VWludDE2KDApO2lmKHQ9PT0xKXJldHVybiBlLmdldFVpbnQ4KDApfWZ1bmN0aW9uIHpGdChlLHQpe2xldCByPWUubGVuZ3RoLGE9dC5sZW5ndGg7aWYoYT09PTB8fGE+cilyZXR1cm4tMTtsZXQgaT1yLWE7Zm9yKGxldCBvPTA7bzw9aTtvKyspe2xldCBuPSEwO2ZvcihsZXQgcz0wO3M8YTtzKyspaWYoZVtvK3NdIT09dFtzXSl7bj0hMTticmVha31pZihuKXJldHVybiBvfXJldHVybi0xfWZ1bmN0aW9uIGpjYShlLHQpe3JldHVybiB6RnQoZSx0KSE9PS0xfXZhciB6Y2EsQ2NhLF9jYSx4RnQsUGNhLGJGdCxSY2EsdkZ0LENGdD1sKCgpPT57emNhPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcsQ2NhPSJbb2JqZWN0IFVpbnQ4QXJyYXldIixfY2E9IltvYmplY3QgQXJyYXlCdWZmZXJdIjt4RnQ9e3V0Zjg6bmV3IGdsb2JhbFRoaXMuVGV4dERlY29kZXIoInV0ZjgiKX07UGNhPW5ldyBnbG9iYWxUaGlzLlRleHRFbmNvZGVyO2JGdD02NTUzNTtSY2E9QXJyYXkuZnJvbSh7bGVuZ3RoOjI1Nn0sKGUsdCk9PnQudG9TdHJpbmcoMTYpLnBhZFN0YXJ0KDIsIjAiKSk7dkZ0PXswOjAsMToxLDI6MiwzOjMsNDo0LDU6NSw2OjYsNzo3LDg6OCw5OjksYToxMCxiOjExLGM6MTIsZDoxMyxlOjE0LGY6MTUsQToxMCxCOjExLEM6MTIsRDoxMyxFOjE0LEY6MTV9fSk7dmFyIF9GdD1sKCgpPT57Q0Z0KCl9KTt2YXIgJDc9e307cWUoJDcse2Jhc2U2NFRvVWludDhBcnJheTooKT0+R2NhLGVuc3VyZVB1cmVVaW50OEFycmF5OigpPT5YY2EsaXNCdWZmZXJMaWtlOigpPT5aY2EsaXNVaW50OEFycmF5OigpPT5ZY2EsdUludDhBcnJheUV4dHJhczooKT0+VWNhLHVJbnQ4QXJyYXlUb0Jhc2U2NDooKT0+V2NhfSk7ZnVuY3Rpb24gV2NhKGUpe3JldHVybiBfNC51aW50OEFycmF5VG9CYXNlNjQoZSl9ZnVuY3Rpb24gR2NhKGUpe3JldHVybiBfNC5iYXNlNjRUb1VpbnQ4QXJyYXkoZSl9ZnVuY3Rpb24gWmNhKGUpe3JldHVybiBlJiZ0eXBlb2YgZS5ieXRlTGVuZ3RoPT0ibnVtYmVyIj8hMDp0eXBlb2YgQnVmZmVyPCJ1IiYmQnVmZmVyLmlzQnVmZmVyP0J1ZmZlci5pc0J1ZmZlcihlKTohMX1mdW5jdGlvbiBYY2EoZSl7bGV0IHQ9bmV3IFVpbnQ4QXJyYXkoZS5sZW5ndGgpO3JldHVybiB0LnNldChlKSx0fXZhciBVY2EsWWNhLFRGdD1sKCgpPT57X0Z0KCk7VWNhPV80O1ljYT1lPT5fNC5pc1VpbnQ4QXJyYXkoZSl9KTt2YXIgVnY9bCgoKT0+e29vKCl9KTt2YXIgVXYsTDFlPWwoKCk9PntWdigpO1V2PWNsYXNze2NvbnN0cnVjdG9yKHQscil7dGhpcy5ndWFyZEZ1bmN0aW9uPXQsdGhpcy5vcHRpb25zPXJ9YXN5bmMgZXhlYyh0KXtyZXR1cm4gYXdhaXQgdGhpcy5ndWFyZEZ1bmN0aW9uKHQpfWFzeW5jIGdldEZhaWxlZEhpbnQodCl7cmV0dXJuIGF3YWl0IHRoaXMuZXhlYyh0KT9udWxsOnRoaXMub3B0aW9ucy5mYWlsZWRIaW50fX19KTt2YXIgV3YsSmdlPWwoKCk9PntWdigpO1d2PWNsYXNzIGV4dGVuZHMgRXJyb3J7Y29uc3RydWN0b3IodCl7c3VwZXIodCksdGhpcy5uYW1lPSJHdWFyZEVycm9yIn19fSk7dmFyIEd2LGV4ZT1sKCgpPT57VnYoKTtMMWUoKTtHdj1jbGFzcyBleHRlbmRzIFV2e2NvbnN0cnVjdG9yKHQ9W10pe3N1cGVyKGFzeW5jIHI9PnRoaXMuYWxsR3VhcmRzUGFzcyhyKSksdGhpcy5ndWFyZHM9dH1hc3luYyBleGVjQWxsV2l0aERhdGEodCxyPXttb2RlOiJwYXJhbGxlbCIsc3RvcE9uRmFpbDohMX0pe2xldCBhPVtdO2ZvcihsZXQgbyBvZiB0aGlzLmd1YXJkcyl7bGV0IG49by5leGVjKHQpO2lmKHIubW9kZT09PSJzZXJpYWwiJiZhd2FpdCBuLGEucHVzaChuKSxyLnN0b3BPbkZhaWwmJiFhd2FpdCBuKXJldHVybiBhd2FpdCBQcm9taXNlLmFsbChhKX1yZXR1cm4gYXdhaXQgUHJvbWlzZS5hbGwoYSl9YXN5bmMgYWxsR3VhcmRzUGFzcyh0LHI9e21vZGU6InBhcmFsbGVsIixzdG9wT25GYWlsOiExfSl7cmV0dXJuKGF3YWl0IHRoaXMuZXhlY0FsbFdpdGhEYXRhKHQscikpLmV2ZXJ5KGk9PmkpfWFzeW5jIGFueUd1YXJkc1Bhc3ModCl7cmV0dXJuKGF3YWl0IHRoaXMuZXhlY0FsbFdpdGhEYXRhKHQse21vZGU6InBhcmFsbGVsIixzdG9wT25GYWlsOiExfSkpLnNvbWUoYT0+YSl9Z2V0RmFpbGVkSGludCh0KXtmb3IobGV0IHIgb2YgdGhpcy5ndWFyZHMpe2xldCBhPXIuZ2V0RmFpbGVkSGludCh0KTtpZihhKXJldHVybiBhfX19fSk7dmFyIFl2PXt9O3FlKFl2LHtHdWFyZDooKT0+VXYsR3VhcmRFcnJvcjooKT0+V3YsR3VhcmRTZXQ6KCk9Pkd2LHBhc3NHdWFyZHNPclJlamVjdDooKT0+UWNhfSk7dmFyIFFjYSxMRnQ9bCgoKT0+e1Z2KCk7TDFlKCk7SmdlKCk7TDFlKCk7ZXhlKCk7ZXhlKCk7SmdlKCk7UWNhPWFzeW5jKGUsdCk9PntsZXQgcj1uZXcgR3YodCk7aWYoIWF3YWl0IHIuYWxsR3VhcmRzUGFzcyhlKSl7bGV0IGk9YXdhaXQgci5nZXRGYWlsZWRIaW50KGUpO3Rocm93IG5ldyBXdihgR3VhcmRzIGZhaWxlZDoKJHtpfQogICAgYCl9fX0pO3ZhciBQNyx0eGU9bCgoKT0+e1A3PWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5yZXF1ZXN0SW50ZXJjZXB0b3JzPVtdLHRoaXMucmVzcG9uc2VJbnRlcmNlcHRvcnM9W10sdGhpcy5lcnJvckludGVyY2VwdG9ycz1bXX1hZGRSZXF1ZXN0SW50ZXJjZXB0b3IodCl7dGhpcy5yZXF1ZXN0SW50ZXJjZXB0b3JzLnB1c2godCl9YWRkUmVzcG9uc2VJbnRlcmNlcHRvcih0KXt0aGlzLnJlc3BvbnNlSW50ZXJjZXB0b3JzLnB1c2godCl9YWRkRXJyb3JJbnRlcmNlcHRvcih0KXt0aGlzLmVycm9ySW50ZXJjZXB0b3JzLnB1c2godCl9cmVtb3ZlUmVxdWVzdEludGVyY2VwdG9yKHQpe2xldCByPXRoaXMucmVxdWVzdEludGVyY2VwdG9ycy5pbmRleE9mKHQpO3I+LTEmJnRoaXMucmVxdWVzdEludGVyY2VwdG9ycy5zcGxpY2UociwxKX1yZW1vdmVSZXNwb25zZUludGVyY2VwdG9yKHQpe2xldCByPXRoaXMucmVzcG9uc2VJbnRlcmNlcHRvcnMuaW5kZXhPZih0KTtyPi0xJiZ0aGlzLnJlc3BvbnNlSW50ZXJjZXB0b3JzLnNwbGljZShyLDEpfXJlbW92ZUVycm9ySW50ZXJjZXB0b3IodCl7bGV0IHI9dGhpcy5lcnJvckludGVyY2VwdG9ycy5pbmRleE9mKHQpO3I+LTEmJnRoaXMuZXJyb3JJbnRlcmNlcHRvcnMuc3BsaWNlKHIsMSl9Y2xlYXJBbGwoKXt0aGlzLnJlcXVlc3RJbnRlcmNlcHRvcnM9W10sdGhpcy5yZXNwb25zZUludGVyY2VwdG9ycz1bXSx0aGlzLmVycm9ySW50ZXJjZXB0b3JzPVtdfWFzeW5jIHByb2Nlc3NSZXF1ZXN0KHQpe2xldCByPXQ7Zm9yKGxldCBhIG9mIHRoaXMucmVxdWVzdEludGVyY2VwdG9ycyl0cnl7cj1hd2FpdCBhKHIpfWNhdGNoKGkpe3Rocm93IGF3YWl0IHRoaXMucHJvY2Vzc0Vycm9yKGkgaW5zdGFuY2VvZiBFcnJvcj9pOm5ldyBFcnJvcihTdHJpbmcoaSkpKX1yZXR1cm4gcn1hc3luYyBwcm9jZXNzUmVzcG9uc2UodCl7bGV0IHI9dDtmb3IobGV0IGEgb2YgdGhpcy5yZXNwb25zZUludGVyY2VwdG9ycyl0cnl7cj1hd2FpdCBhKHIpfWNhdGNoKGkpe3Rocm93IGF3YWl0IHRoaXMucHJvY2Vzc0Vycm9yKGkgaW5zdGFuY2VvZiBFcnJvcj9pOm5ldyBFcnJvcihTdHJpbmcoaSkpKX1yZXR1cm4gcn1hc3luYyBwcm9jZXNzRXJyb3IodCl7bGV0IHI9dDtmb3IobGV0IGEgb2YgdGhpcy5lcnJvckludGVyY2VwdG9ycyl0cnl7cj1hd2FpdCBhKHIpfWNhdGNoKGkpe3I9aSBpbnN0YW5jZW9mIEVycm9yP2k6bmV3IEVycm9yKFN0cmluZyhpKSl9cmV0dXJuIHJ9Z2V0SW50ZXJjZXB0b3JDb3VudHMoKXtyZXR1cm57cmVxdWVzdDp0aGlzLnJlcXVlc3RJbnRlcmNlcHRvcnMubGVuZ3RoLHJlc3BvbnNlOnRoaXMucmVzcG9uc2VJbnRlcmNlcHRvcnMubGVuZ3RoLGVycm9yOnRoaXMuZXJyb3JJbnRlcmNlcHRvcnMubGVuZ3RofX19fSk7dmFyIERGdD1sKCgpPT57b28oKX0pO3ZhciBBRnQ9bCgoKT0+e30pO3ZhciByeGUsRUZ0PWwoKCk9PntERnQoKTtBRnQoKTtyeGU9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLmxvYWRlZFNjcmlwdHM9W119YXN5bmMgZ2V0RW52QXdhcmVNb2R1bGUodCl7aWYodGhpcy5pc05vZGUpcmV0dXJuIGF3YWl0IHRoaXMuZ2V0U2FmZU5vZGVNb2R1bGUodC5ub2RlTW9kdWxlTmFtZSk7aWYodGhpcy5pc0Jyb3dzZXIpcmV0dXJuIGF3YWl0IHRoaXMuZ2V0U2FmZVdlYk1vZHVsZSh0LndlYlVybEFyZyx0LmdldEZ1bmN0aW9uKTtjb25zb2xlLmVycm9yKCJwbGF0Zm9ybSBmb3IgbG9hZGluZyBub3Qgc3VwcG9ydGVkIGJ5IHNtYXJ0ZW52Iil9YXN5bmMgZ2V0U2FmZU5vZGVNb2R1bGUodCxyKXtpZighdGhpcy5pc05vZGUmJiF0aGlzLmlzRGVubyYmIXRoaXMuaXNCdW4pe2NvbnNvbGUuZXJyb3IoYFlvdSB0cmllZCB0byBsb2FkIGEgc2VydmVyIG1vZHVsZSBpbiBhIHdyb25nIGNvbnRleHQ6ICR7dH0uIFRoaXMgZG9lcyBub3QgdGhyb3cuYCk7cmV0dXJufWxldCBhPWF3YWl0IG5ldyBGdW5jdGlvbihgcmV0dXJuIGltcG9ydCgnJHt0fScpYCkoKTtyZXR1cm4gciYmYXdhaXQgcihhKSxhfWFzeW5jIGdldFNhZmVXZWJNb2R1bGUodCxyKXtpZighdGhpcy5pc0Jyb3dzZXIpe2NvbnNvbGUuZXJyb3IoIllvdSB0cmllZCB0byBsb2FkIGEgd2ViIG1vZHVsZSBpbiBhIHdyb25nIGNvbnRleHQiKTtyZXR1cm59aWYodGhpcy5sb2FkZWRTY3JpcHRzLmluY2x1ZGVzKHQpKXJldHVybiByKCk7dGhpcy5sb2FkZWRTY3JpcHRzLnB1c2godCk7bGV0IGE9bHQuZGVmZXIoKTtpZihnbG9iYWxUaGlzLmltcG9ydFNjcmlwdHMpZ2xvYmFsVGhpcy5pbXBvcnRTY3JpcHRzKHQpLGEucmVzb2x2ZSgpO2Vsc2V7bGV0IGk9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7aS5vbmxvYWQ9KCk9PnthLnJlc29sdmUoKX0saS5zcmM9dCxkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKGkpfXJldHVybiBhd2FpdCBhLnByb21pc2UscigpfWdldCBydW50aW1lRW52KCl7cmV0dXJuIHR5cGVvZiBnbG9iYWxUaGlzLkRlbm88InUiJiZ0eXBlb2YgZ2xvYmFsVGhpcy5EZW5vPy52ZXJzaW9uPCJ1Ij8iZGVubyI6dHlwZW9mIGdsb2JhbFRoaXMuQnVuPCJ1IiYmdHlwZW9mIGdsb2JhbFRoaXMuQnVuPy52ZXJzaW9uPCJ1Ij8iYnVuIjp0eXBlb2YgZ2xvYmFsVGhpcy5wcm9jZXNzPCJ1IiYmdHlwZW9mIGdsb2JhbFRoaXMucHJvY2Vzcz8udmVyc2lvbnM/Lm5vZGU8InUiPyJub2RlIjoodHlwZW9mIGdsb2JhbFRoaXMud2luZG93PCJ1IiYmdHlwZW9mIGdsb2JhbFRoaXMuZG9jdW1lbnQ8InUiLCJicm93c2VyIil9Z2V0IGlzQnJvd3Nlcigpe3JldHVybiB0aGlzLnJ1bnRpbWVFbnY9PT0iYnJvd3NlciJ9Z2V0IGlzTm9kZSgpe3JldHVybiB0aGlzLnJ1bnRpbWVFbnY9PT0ibm9kZSJ9Z2V0IGlzRGVubygpe3JldHVybiB0aGlzLnJ1bnRpbWVFbnY9PT0iZGVubyJ9Z2V0IGlzQnVuKCl7cmV0dXJuIHRoaXMucnVudGltZUVudj09PSJidW4ifWdldCB1c2VyQWdlbnQoKXtyZXR1cm4gdGhpcy5pc0Jyb3dzZXI/bmF2aWdhdG9yLnVzZXJBZ2VudDoidW5kZWZpbmVkIn1nZXQgbm9kZVZlcnNpb24oKXtyZXR1cm4gdGhpcy5pc05vZGU/cHJvY2Vzcy52ZXJzaW9uOiJ1bmRlZmluZWQifWdldCBkZW5vVmVyc2lvbigpe3JldHVybiB0aGlzLmlzRGVubz9nbG9iYWxUaGlzLkRlbm8udmVyc2lvbi5kZW5vOiJ1bmRlZmluZWQifWdldCBidW5WZXJzaW9uKCl7cmV0dXJuIHRoaXMuaXNCdW4/Z2xvYmFsVGhpcy5CdW4udmVyc2lvbjoidW5kZWZpbmVkIn1hc3luYyBnZXRTYWZlTW9kdWxlRm9yKHQscixhKXtsZXQgaTtpZihBcnJheS5pc0FycmF5KHQpP2k9dC5mbGF0TWFwKG89Pm89PT0ic2VydmVyIj9bIm5vZGUiLCJkZW5vIiwiYnVuIl06W29dKTp0PT09InNlcnZlciI/aT1bIm5vZGUiLCJkZW5vIiwiYnVuIl06aT1bdF0sIWkuaW5jbHVkZXModGhpcy5ydW50aW1lRW52KSl7Y29uc29sZS53YXJuKGBNb2R1bGUgIiR7cn0iIHJlcXVlc3RlZCBmb3IgcnVudGltZShzKSBbJHtpLmpvaW4oIiwgIil9XSBidXQgY3VycmVudCBydW50aW1lIGlzICIke3RoaXMucnVudGltZUVudn0iLiBTa2lwcGluZyBsb2FkLmApO3JldHVybn1pZih0aGlzLmlzTm9kZXx8dGhpcy5pc0Rlbm98fHRoaXMuaXNCdW4pcmV0dXJuIGF3YWl0IHRoaXMuZ2V0U2FmZU5vZGVNb2R1bGUocik7aWYodGhpcy5pc0Jyb3dzZXIpe2lmKCFhKXtjb25zb2xlLmVycm9yKGBCcm93c2VyIG1vZHVsZSBsb2FkIHJlcXVpcmVzIGdldEZ1bmN0aW9uIHBhcmFtZXRlciBmb3IgIiR7cn0iYCk7cmV0dXJufXJldHVybiBhd2FpdCB0aGlzLmdldFNhZmVXZWJNb2R1bGUocixhKX19Z2V0IGlzQ0koKXtyZXR1cm4gdGhpcy5pc05vZGU/ISFwcm9jZXNzLmVudi5DSTohMX1hc3luYyBpc01hY0FzeW5jKCl7cmV0dXJuIHRoaXMuaXNOb2RlPyhhd2FpdCB0aGlzLmdldFNhZmVOb2RlTW9kdWxlKCJvcyIpKS5wbGF0Zm9ybSgpPT09ImRhcndpbiI6ITF9YXN5bmMgaXNXaW5kb3dzQXN5bmMoKXtyZXR1cm4gdGhpcy5pc05vZGU/KGF3YWl0IHRoaXMuZ2V0U2FmZU5vZGVNb2R1bGUoIm9zIikpLnBsYXRmb3JtKCk9PT0id2luMzIiOiExfWFzeW5jIGlzTGludXhBc3luYygpe3JldHVybiB0aGlzLmlzTm9kZT8oYXdhaXQgdGhpcy5nZXRTYWZlTm9kZU1vZHVsZSgib3MiKSkucGxhdGZvcm0oKT09PSJsaW51eCI6ITF9YXN5bmMgcHJpbnRFbnYoKXt0aGlzLmlzTm9kZT8oY29uc29sZS5sb2coInJ1bm5pbmcgb24gTk9ERSIpLGNvbnNvbGUubG9nKCJub2RlIHZlcnNpb24gaXMgIit0aGlzLm5vZGVWZXJzaW9uKSk6dGhpcy5pc0Rlbm8/KGNvbnNvbGUubG9nKCJydW5uaW5nIG9uIERFTk8iKSxjb25zb2xlLmxvZygiZGVubyB2ZXJzaW9uIGlzICIrdGhpcy5kZW5vVmVyc2lvbikpOnRoaXMuaXNCdW4/KGNvbnNvbGUubG9nKCJydW5uaW5nIG9uIEJVTiIpLGNvbnNvbGUubG9nKCJidW4gdmVyc2lvbiBpcyAiK3RoaXMuYnVuVmVyc2lvbikpOihjb25zb2xlLmxvZygicnVubmluZyBvbiBCUk9XU0VSIiksY29uc29sZS5sb2coImJyb3dzZXIgaXMgIit0aGlzLnVzZXJBZ2VudCkpfX19KTt2YXIgWnY9e307cWUoWnYse1NtYXJ0ZW52OigpPT5yeGV9KTt2YXIgYXhlPWwoKCk9PntFRnQoKX0pO3ZhciBpeGUsSTc9bCgoKT0+e2l4ZT1Bcih6cmUoKSwxKX0pO3ZhciBEMWU9e307cWUoRDFlLHtjcmVhdGVDcnlwdG9SYW5kb21TdHJpbmc6KCk9PmEwYSxjcmVhdGVSYW5kb21TdHJpbmc6KCk9PnIwYX0pO3ZhciBlMGEsdDBhLHIwYSxhMGEsJEZ0PWwoKCk9PntJNygpO2UwYT0oZSx0KT0+e2lmKHR5cGVvZiBnbG9iYWxUaGlzPCJ1IiYmZ2xvYmFsVGhpcy5jcnlwdG8mJmdsb2JhbFRoaXMuY3J5cHRvLmdldFJhbmRvbVZhbHVlcyl7bGV0IHI9dC1lLGE9bmV3IFVpbnQzMkFycmF5KDEpO3JldHVybiBnbG9iYWxUaGlzLmNyeXB0by5nZXRSYW5kb21WYWx1ZXMoYSksZSthWzBdJXJ9ZWxzZSByZXR1cm4gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKih0LWUpKStlfSx0MGE9KGUsdCxyKT0+e2xldCBhPXtBOiJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWiIsYToiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXoiLDA6IjAxMjM0NTY3ODkiLCIhIjoiIUAjJCVeJiooKV8rLT1bXXt9fDs6LC48Pj8iLCIqIjoiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkhQCMkJV4mKigpXystPVtde318OzosLjw+PyJ9LGk9ZTt0JiZ0PmUubGVuZ3RoP2k9ZS5yZXBlYXQoTWF0aC5jZWlsKHQvZS5sZW5ndGgpKS5zbGljZSgwLHQpOnQmJihpPWUuc2xpY2UoMCx0KSk7bGV0IG89IiI7Zm9yKGxldCBuIG9mIGkpaWYoYVtuXSl7bGV0IHM9YVtuXSxjPWUwYSgwLHMubGVuZ3RoKTtvKz1zW2NdfWVsc2Ugbys9bjtyZXR1cm4gb30scjBhPShlLHQscik9PnQwYShlLHQsciksYTBhPSgpPT5peGUudW5pKCl9KTt2YXIgQTFlPXt9O3FlKEExZSx7bWFrZUVudk9iamVjdDooKT0+aTBhfSk7dmFyIGkwYSxQRnQ9bCgoKT0+e0k3KCk7aTBhPWZ1bmN0aW9uKGUpe2xldCB0PXt9LHI9LyguKik9KC4qKS87aWYodHlwZW9mIGU8InUiKWZvcihsZXQgYSBpbiBlKXtsZXQgaT1yLmV4ZWMoZVthXSk7dFtpWzFdXT1pWzJdfXJldHVybiB0fX0pO3ZhciB4Nj17fTtxZSh4Nix7aW5kZW50OigpPT5uMGEsaW5kZW50V2l0aFByZWZpeDooKT0+czBhLG5vcm1hbGl6ZTooKT0+bDBhfSk7dmFyIG94ZSxueGUsbzBhLG4wYSxzMGEsbDBhLElGdD1sKCgpPT57STcoKTtveGU9ZT0+e2xldCB0PWUuc3BsaXQoYApgKTtyZXR1cm4gbzBhKHQpfSxueGU9ZT0+e2xldCB0PSIiO2ZvcihsZXQgciBvZiBlKXQ9dCtyK2AKYDtyZXR1cm4gdH0sbzBhPWU9PntsZXQgdD0vXltcc10qJC87cmV0dXJuIHQudGVzdChlWzBdKSYmZS5zaGlmdCgpLHQudGVzdChlW2UubGVuZ3RoLTFdKSYmZS5wb3AoKSxlfSxuMGE9KGUsdCk9PntsZXQgcj1veGUoZSk7Zm9yKGxldCBpIG9mIHIpaT0iICIucmVwZWF0KHQpK2k7cmV0dXJuIG54ZShyKX0sczBhPShlLHQpPT57bGV0IHIsYT1veGUoZSksaT1bXTtmb3IobGV0IG8gb2YgYSlpLnB1c2godCtvKTtyZXR1cm4gcj1ueGUoaSkscn0sbDBhPWU9PntsZXQgdCxyPW94ZShlKSxhLGk9L14oXHMqKS8sbz0vXihccyopJC87Zm9yKGxldCBzIG9mIHIpe2xldCBjPWkuZXhlYyhzKVsxXTsodHlwZW9mIGE+InUifHxjLmxlbmd0aDxhKSYmIW8udGVzdChzKSYmKGE9Yy5sZW5ndGgpfWxldCBuPVtdO2ZvcihsZXQgcyBvZiByKW4ucHVzaChzLnN1YnN0cihhKSk7cmV0dXJuIHQ9bnhlKG4pLHR9fSk7dmFyIEUxZT17fTtxZShFMWUse3JlcGxhY2VBbGw6KCk9Pk5GdCxzdGFuZGFyZDooKT0+ZDBhfSk7dmFyIE5GdCxjMGEsZDBhLEZGdD1sKCgpPT57TkZ0PShlLHQscik9PmUucmVwbGFjZShuZXcgUmVnRXhwKHQsImciKSxyKSxjMGE9ZT0+e2xldCB0PWUuc3BsaXQoYApgKSxyPTEvMDtmb3IobGV0IGEgb2YgdClpZihhLnRyaW0oKS5sZW5ndGg+MCl7bGV0IGk9YS5tYXRjaCgvXihccyopLyk7aSYmKHI9TWF0aC5taW4ocixpWzFdLmxlbmd0aCkpfXJldHVybiByPT09MS8wfHxyPT09MD9lOnQubWFwKGE9PmEubGVuZ3RoPj1yP2Euc2xpY2Uocik6YSkuam9pbihgCmApfSxkMGE9KGUsdCk9PntsZXQgcj1lO3JldHVybighdHx8dC5zdHJpcEluZGVudCkmJihyPWMwYShyKSksKCF0fHx0Lm5vcm1hbGl6ZU5ld2xpbmUpJiYocj1yLnJlcGxhY2UoL1xyXG4vZyxgCmApKSwoIXR8fHQucmVwbGFjZVRhYnMpJiYocj1ORnQociwiCS8iLCIgIikpLCghdHx8dC5zdHJpcExlYWRpbmdUcmFpbGluZ0VtcHR5TGluZXMpJiYocj1yLnJlcGxhY2UoL15ccypbXHJcbl0vZ20sIiIpLnJlcGxhY2UoL1xzKltcclxuXSQvZ20sIiIpKSwoIXR8fHQuc3RyaXBBbGxFbXB0eUxpbmVzKSYmKHI9ci5yZXBsYWNlKC9eXHMqW1xyXG5dL2dtLCIiKSkscn19KTt2YXIgc3hlLCQxZSxONyxseGU9bCgoKT0+e3N4ZT17ZW5jb2RlOmU9PntpZih0eXBlb2YgQnVmZmVyPCJ1IilyZXR1cm4gQnVmZmVyLmZyb20oZSwidXRmOCIpLnRvU3RyaW5nKCJiYXNlNjQiKTtpZih0eXBlb2YgYnRvYTwidSIpe2xldCB0PW5ldyBUZXh0RW5jb2RlcigpLmVuY29kZShlKSxyPUFycmF5LmZyb20odCxhPT5TdHJpbmcuZnJvbUNoYXJDb2RlKGEpKS5qb2luKCIiKTtyZXR1cm4gYnRvYShyKX1lbHNle2xldCB0PSJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvIixyPW5ldyBUZXh0RW5jb2RlcigpLmVuY29kZShlKSxhPSIiLGk9MDtmb3IoO2k8ci5sZW5ndGg7KXtsZXQgbz1yW2krK10sbj1pPHIubGVuZ3RoP3JbaSsrXTowLHM9aTxyLmxlbmd0aD9yW2krK106MCxjPW88PDE2fG48PDh8czthKz10LmNoYXJBdChjPj4xOCY2MyksYSs9dC5jaGFyQXQoYz4+MTImNjMpLGErPWktMjxyLmxlbmd0aD90LmNoYXJBdChjPj42JjYzKToiPSIsYSs9aS0xPHIubGVuZ3RoP3QuY2hhckF0KGMmNjMpOiI9In1yZXR1cm4gYX19LGRlY29kZTplPT57bGV0IHQ9ZS5yZXBsYWNlKC8tL2csIisiKS5yZXBsYWNlKC9fL2csIi8iKS5wYWRFbmQoZS5sZW5ndGgrKDQtZS5sZW5ndGglNCklNCwiPSIpO2lmKHR5cGVvZiBCdWZmZXI8InUiKXJldHVybiBCdWZmZXIuZnJvbSh0LCJiYXNlNjQiKS50b1N0cmluZygidXRmOCIpO2lmKHR5cGVvZiBhdG9iPCJ1Iil7bGV0IHI9YXRvYih0KSxhPW5ldyBVaW50OEFycmF5KHIubGVuZ3RoKTtmb3IobGV0IGk9MDtpPHIubGVuZ3RoO2krKylhW2ldPXIuY2hhckNvZGVBdChpKTtyZXR1cm4gbmV3IFRleHREZWNvZGVyKCkuZGVjb2RlKGEpfWVsc2V7bGV0IHI9IkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky8iLGE9W10saT0wO2Zvcig7aTx0Lmxlbmd0aDspe2xldCBvPXIuaW5kZXhPZih0LmNoYXJBdChpKyspKSxuPXIuaW5kZXhPZih0LmNoYXJBdChpKyspKSxzPXIuaW5kZXhPZih0LmNoYXJBdChpKyspKSxjPXIuaW5kZXhPZih0LmNoYXJBdChpKyspKSxkPW88PDE4fG48PDEyfHM8PDZ8YzthLnB1c2goZD4+MTYmMjU1KSxzIT09NjQmJmEucHVzaChkPj44JjI1NSksYyE9PTY0JiZhLnB1c2goZCYyNTUpfXJldHVybiBuZXcgVGV4dERlY29kZXIoKS5kZWNvZGUobmV3IFVpbnQ4QXJyYXkoYSkpfX19LCQxZT1jbGFzc3tjb25zdHJ1Y3Rvcih0LHIpe3N3aXRjaChyKXtjYXNlInN0cmluZyI6dGhpcy5yZWZTdHJpbmc9dDticmVhaztjYXNlImJhc2U2NCI6dGhpcy5yZWZTdHJpbmc9TjcuZGVjb2RlKHQpO2JyZWFrO2Nhc2UiYmFzZTY0dXJpIjp0aGlzLnJlZlN0cmluZz1ONy5kZWNvZGUodCl9fWdldCBzaW1wbGVTdHJpbmcoKXtyZXR1cm4gdGhpcy5yZWZTdHJpbmd9Z2V0IGJhc2U2NFN0cmluZygpe3JldHVybiBONy5lbmNvZGUodGhpcy5yZWZTdHJpbmcpfWdldCBiYXNlNjRVcmlTdHJpbmcoKXtyZXR1cm4gTjcuZW5jb2RlVXJpKHRoaXMucmVmU3RyaW5nKX19LE43PXtlbmNvZGU6ZT0+c3hlLmVuY29kZShlKSxlbmNvZGVVcmk6ZT0+c3hlLmVuY29kZShlKS5yZXBsYWNlKC9cKy9nLCItIikucmVwbGFjZSgvXC8vZywiXyIpLnJlcGxhY2UoLz0vZywiIiksZGVjb2RlOmU9PnN4ZS5kZWNvZGUoZSksaXNCYXNlNjQ6ZT0+L14oW0EtWmEtejAtOSsvXXs0fSkqKFtBLVphLXowLTkrL117M309fFtBLVphLXowLTkrL117Mn09PSk/JC8udGVzdChlKX19KTt2YXIgUDFlPXt9O3FlKFAxZSx7aXNCYXNlNjQ6KCk9PmYwYSxpc1V0Zjg6KCk9PnUwYX0pO3ZhciB1MGEsZjBhLE9GdD1sKCgpPT57STcoKTtseGUoKTt1MGE9ZT0+e2xldCByPW5ldyBUZXh0RW5jb2RlcigpLmVuY29kZShlKSxhPTA7Zm9yKDthPHIubGVuZ3RoOyl7aWYoclthXT09PTl8fHJbYV09PT0xMHx8clthXT09PTEzfHwzMjw9clthXSYmclthXTw9MTI2KXthKz0xO2NvbnRpbnVlfWlmKDE5NDw9clthXSYmclthXTw9MjIzJiYxMjg8PXJbYSsxXSYmclthKzFdPD0xOTEpe2ErPTI7Y29udGludWV9aWYoclthXT09PTIyNCYmMTYwPD1yW2ErMV0mJnJbYSsxXTw9MTkxJiYxMjg8PXJbYSsyXSYmclthKzJdPD0xOTF8fCgyMjU8PXJbYV0mJnJbYV08PTIzNnx8clthXT09PTIzOHx8clthXT09PTIzOSkmJjEyODw9clthKzFdJiZyW2ErMV08PTE5MSYmMTI4PD1yW2ErMl0mJnJbYSsyXTw9MTkxfHxyW2FdPT09MjM3JiYxMjg8PXJbYSsxXSYmclthKzFdPD0xNTkmJjEyODw9clthKzJdJiZyW2ErMl08PTE5MSl7YSs9Mztjb250aW51ZX1pZihyW2FdPT09MjQwJiYxNDQ8PXJbYSsxXSYmclthKzFdPD0xOTEmJjEyODw9clthKzJdJiZyW2ErMl08PTE5MSYmMTI4PD1yW2ErM10mJnJbYSszXTw9MTkxfHwyNDE8PXJbYV0mJnJbYV08PTI0MyYmMTI4PD1yW2ErMV0mJnJbYSsxXTw9MTkxJiYxMjg8PXJbYSsyXSYmclthKzJdPD0xOTEmJjEyODw9clthKzNdJiZyW2ErM108PTE5MXx8clthXT09PTI0NCYmMTI4PD1yW2ErMV0mJnJbYSsxXTw9MTQzJiYxMjg8PXJbYSsyXSYmclthKzJdPD0xOTEmJjEyODw9clthKzNdJiZyW2ErM108PTE5MSl7YSs9NDtjb250aW51ZX1yZXR1cm4hMX1yZXR1cm4hMH0sZjBhPWU9PntsZXQgdD0vW15BLVowLTkrXC89XS9pLHI9ZS5sZW5ndGg7aWYoIXJ8fHIlNCE9PTB8fHQudGVzdChlKSlyZXR1cm4hMTtsZXQgYT1lLmluZGV4T2YoIj0iKTtyZXR1cm4gYT09PS0xfHxhPT09ci0xfHxhPT09ci0yJiZlW3ItMV09PT0iPSJ9fSk7dmFyIEkxZSxSRnQ9bCgoKT0+e0kxZT1jbGFzc3tjb25zdHJ1Y3Rvcih0KXt0aGlzLnByb3RvY29sPXRoaXMuX3Byb3RvY29sUmVnZXgodCksdGhpcy5wcm90b2NvbHx8KHQ9YGh0dHBzOi8vJHt0fWApLHRoaXMubm9kZVBhcnNlZFVybD1uZXcgVVJMKHQpLHRoaXMucG9ydD10aGlzLm5vZGVQYXJzZWRVcmwucG9ydDtsZXQgcj10aGlzLl9kb21haW5SZWdleCh0LnJlcGxhY2UodGhpcy5ub2RlUGFyc2VkVXJsLnBhdGhuYW1lLCIiKSk7dGhpcy5mdWxsTmFtZT0iIjtmb3IobGV0IGE9MTthPD01O2ErKylpZihyW2EtMV0pe2xldCBpPXJbYS0xXTt0aGlzWyJsZXZlbCIrYS50b1N0cmluZygpXT1pLHRoaXMuZnVsbE5hbWU9PT0iIj90aGlzLmZ1bGxOYW1lPWk6dGhpcy5mdWxsTmFtZT1pKyIuIit0aGlzLmZ1bGxOYW1lfWVsc2UgdGhpc1sibGV2ZWwiK2EudG9TdHJpbmcoKV09dm9pZCAwO3RoaXMuem9uZU5hbWU9dGhpcy5sZXZlbDIrIi4iK3RoaXMubGV2ZWwxLHRoaXMudG9wTGV2ZWw9dGhpcy5sZXZlbDEsdGhpcy5kb21haW5OYW1lPXRoaXMubGV2ZWwyLHRoaXMuc3ViRG9tYWluPXRoaXMubGV2ZWwzfV9kb21haW5SZWdleCh0KXtsZXQgYT0vKFthLXpBLVowLTlcLVxfXSopXC57MCwxfShbYS16QS1aMC05XC1cX10qKVwuezAsMX0oW2EtekEtWjAtOVwtXF9dKilcLnswLDF9KFthLXpBLVowLTlcLVxfXSopXC57MCwxfShbYS16QS1aMC05XC1cX10qKVwuezAsMX0kLy5leGVjKHQpO3JldHVybiBhLnJldmVyc2UoKSxhLnBvcCgpLGEuZmlsdGVyKGZ1bmN0aW9uKG8pe3JldHVybiBvIT09IiJ9KX1fcHJvdG9jb2xSZWdleCh0KXtsZXQgYT0vXihbYS16QS1aMC05XSopOlwvXC8vLmV4ZWModCk7aWYoYSlyZXR1cm4gYVsxXX1fcG9ydFJlZ2V4KHQpe2xldCBhPS9eKFthLXpBLVowLTldKik6XC9cLy8uZXhlYyh0KTtpZihhKXJldHVybiBhWzFdfX19KTt2YXIgTjFlLHAwYSxCRnQsSEZ0PWwoKCk9PntJNygpO04xZT1jbGFzc3tjb25zdHJ1Y3Rvcih0LHIpe2xldCBhPXAwYSh0KTt0aGlzLmhvc3Q9YVsxXSx0aGlzLnVzZXI9YVsyXSx0aGlzLnJlcG89YVszXSx0aGlzLmFjY2Vzc1Rva2VuPXIsdGhpcy5zc2hVcmw9QkZ0KHRoaXMuaG9zdCx0aGlzLnVzZXIsdGhpcy5yZXBvLHRoaXMuYWNjZXNzVG9rZW4sInNzaCIpLHRoaXMuaHR0cHNVcmw9QkZ0KHRoaXMuaG9zdCx0aGlzLnVzZXIsdGhpcy5yZXBvLHRoaXMuYWNjZXNzVG9rZW4sImh0dHBzIil9fSxwMGE9ZnVuY3Rpb24oZSl7cmV0dXJuLyhbYS16QS1aMC05XC1fXC5dKikoPzpcL3xcOikoW2EtekEtWjAtOVwtX1wuXSopKD86XC8pKFthLXpBLVowLTlcLV9cLl0qKSg/OlwuZ2l0KS8uZXhlYyhlKX0sQkZ0PWZ1bmN0aW9uKGUsdCxyLGE9IiIsaSl7bGV0IG87c3dpdGNoKGEhPT0iIiYmKGE9YSsiQCIpLGkpe2Nhc2UiaHR0cHMiOm89Imh0dHBzOi8vIithK2UrIi8iK3QrIi8iK3IrIi5naXQiO2JyZWFrO2Nhc2Uic3NoIjpvPSJnaXRAIitlKyI6Iit0KyIvIityKyIuZ2l0IjticmVhaztkZWZhdWx0OmNvbnNvbGUuZXJyb3IoIkxpbmsgVHlwZSAiK2krIiBub3Qga25vd24iKTticmVha31yZXR1cm4gb319KTt2YXIgZjE9e307cWUoZjEse0Jhc2U2NDooKT0+JDFlLERvbWFpbjooKT0+STFlLEdpdFJlcG86KCk9Pk4xZSxiYXNlNjQ6KCk9Pk43LGNyZWF0ZTooKT0+RDFlLGRvY2tlcjooKT0+QTFlLGluZGVudDooKT0+eDYsbm9ybWFsaXplOigpPT5FMWUsdHlwZTooKT0+UDFlfSk7dmFyIEY3PWwoKCk9PnskRnQoKTtQRnQoKTtJRnQoKTtGRnQoKTtPRnQoKTtseGUoKTtSRnQoKTtIRnQoKX0pO3ZhciBreGU9WGUoKEt2LEg3KT0+e3ZhciBoMGE9MjAwLHFGdD0iX19sb2Rhc2hfaGFzaF91bmRlZmluZWRfXyIsakZ0PTkwMDcxOTkyNTQ3NDA5OTEsY3hlPSJbb2JqZWN0IEFyZ3VtZW50c10iLG0wYT0iW29iamVjdCBBcnJheV0iLFZGdD0iW29iamVjdCBCb29sZWFuXSIsVUZ0PSJbb2JqZWN0IERhdGVdIixnMGE9IltvYmplY3QgRXJyb3JdIixkeGU9IltvYmplY3QgRnVuY3Rpb25dIixXRnQ9IltvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dIixGMWU9IltvYmplY3QgTWFwXSIsR0Z0PSJbb2JqZWN0IE51bWJlcl0iLHV4ZT0iW29iamVjdCBPYmplY3RdIixZRnQ9IltvYmplY3QgUHJvbWlzZV0iLFpGdD0iW29iamVjdCBSZWdFeHBdIixPMWU9IltvYmplY3QgU2V0XSIsWEZ0PSJbb2JqZWN0IFN0cmluZ10iLFFGdD0iW29iamVjdCBTeW1ib2xdIixmeGU9IltvYmplY3QgV2Vha01hcF0iLEtGdD0iW29iamVjdCBBcnJheUJ1ZmZlcl0iLFIxZT0iW29iamVjdCBEYXRhVmlld10iLEpGdD0iW29iamVjdCBGbG9hdDMyQXJyYXldIixlT3Q9IltvYmplY3QgRmxvYXQ2NEFycmF5XSIsdE90PSJbb2JqZWN0IEludDhBcnJheV0iLHJPdD0iW29iamVjdCBJbnQxNkFycmF5XSIsYU90PSJbb2JqZWN0IEludDMyQXJyYXldIixpT3Q9IltvYmplY3QgVWludDhBcnJheV0iLG9PdD0iW29iamVjdCBVaW50OENsYW1wZWRBcnJheV0iLG5PdD0iW29iamVjdCBVaW50MTZBcnJheV0iLHNPdD0iW29iamVjdCBVaW50MzJBcnJheV0iLHgwYT0vW1xcXiQuKis/KClbXF17fXxdL2csYjBhPS9cdyokLyx2MGE9L15cW29iamVjdCAuKz9Db25zdHJ1Y3RvclxdJC8seTBhPS9eKD86MHxbMS05XVxkKikkLyxnYT17fTtnYVtjeGVdPWdhW20wYV09Z2FbS0Z0XT1nYVtSMWVdPWdhW1ZGdF09Z2FbVUZ0XT1nYVtKRnRdPWdhW2VPdF09Z2FbdE90XT1nYVtyT3RdPWdhW2FPdF09Z2FbRjFlXT1nYVtHRnRdPWdhW3V4ZV09Z2FbWkZ0XT1nYVtPMWVdPWdhW1hGdF09Z2FbUUZ0XT1nYVtpT3RdPWdhW29PdF09Z2Fbbk90XT1nYVtzT3RdPSEwLGdhW2cwYV09Z2FbZHhlXT1nYVtmeGVdPSExO3ZhciB3MGE9dHlwZW9mIGdsb2JhbD09Im9iamVjdCImJmdsb2JhbCYmZ2xvYmFsLk9iamVjdD09PU9iamVjdCYmZ2xvYmFsLE0wYT10eXBlb2Ygc2VsZj09Im9iamVjdCImJnNlbGYmJnNlbGYuT2JqZWN0PT09T2JqZWN0JiZzZWxmLG5jPXcwYXx8TTBhfHxGdW5jdGlvbigicmV0dXJuIHRoaXMiKSgpLGxPdD10eXBlb2YgS3Y9PSJvYmplY3QiJiZLdiYmIUt2Lm5vZGVUeXBlJiZLdixjT3Q9bE90JiZ0eXBlb2YgSDc9PSJvYmplY3QiJiZINyYmIUg3Lm5vZGVUeXBlJiZINyxrMGE9Y090JiZjT3QuZXhwb3J0cz09PWxPdDtmdW5jdGlvbiBTMGEoZSx0KXtyZXR1cm4gZS5zZXQodFswXSx0WzFdKSxlfWZ1bmN0aW9uIHowYShlLHQpe3JldHVybiBlLmFkZCh0KSxlfWZ1bmN0aW9uIEMwYShlLHQpe2Zvcih2YXIgcj0tMSxhPWU/ZS5sZW5ndGg6MDsrK3I8YSYmdChlW3JdLHIsZSkhPT0hMTspO3JldHVybiBlfWZ1bmN0aW9uIF8wYShlLHQpe2Zvcih2YXIgcj0tMSxhPXQubGVuZ3RoLGk9ZS5sZW5ndGg7KytyPGE7KWVbaStyXT10W3JdO3JldHVybiBlfWZ1bmN0aW9uIGRPdChlLHQscixhKXt2YXIgaT0tMSxvPWU/ZS5sZW5ndGg6MDtmb3IoYSYmbyYmKHI9ZVsrK2ldKTsrK2k8bzspcj10KHIsZVtpXSxpLGUpO3JldHVybiByfWZ1bmN0aW9uIFQwYShlLHQpe2Zvcih2YXIgcj0tMSxhPUFycmF5KGUpOysrcjxlOylhW3JdPXQocik7cmV0dXJuIGF9ZnVuY3Rpb24gTDBhKGUsdCl7cmV0dXJuIGU/Llt0XX1mdW5jdGlvbiB1T3QoZSl7dmFyIHQ9ITE7aWYoZSE9bnVsbCYmdHlwZW9mIGUudG9TdHJpbmchPSJmdW5jdGlvbiIpdHJ5e3Q9ISEoZSsiIil9Y2F0Y2h7fXJldHVybiB0fWZ1bmN0aW9uIGZPdChlKXt2YXIgdD0tMSxyPUFycmF5KGUuc2l6ZSk7cmV0dXJuIGUuZm9yRWFjaChmdW5jdGlvbihhLGkpe3JbKyt0XT1baSxhXX0pLHJ9ZnVuY3Rpb24gcHhlKGUsdCl7cmV0dXJuIGZ1bmN0aW9uKHIpe3JldHVybiBlKHQocikpfX1mdW5jdGlvbiBwT3QoZSl7dmFyIHQ9LTEscj1BcnJheShlLnNpemUpO3JldHVybiBlLmZvckVhY2goZnVuY3Rpb24oYSl7clsrK3RdPWF9KSxyfXZhciBEMGE9QXJyYXkucHJvdG90eXBlLEEwYT1GdW5jdGlvbi5wcm90b3R5cGUsQjFlPU9iamVjdC5wcm90b3R5cGUsaHhlPW5jWyJfX2NvcmUtanNfc2hhcmVkX18iXSxoT3Q9KGZ1bmN0aW9uKCl7dmFyIGU9L1teLl0rJC8uZXhlYyhoeGUmJmh4ZS5rZXlzJiZoeGUua2V5cy5JRV9QUk9UT3x8IiIpO3JldHVybiBlPyJTeW1ib2woc3JjKV8xLiIrZToiIn0pKCksbU90PUEwYS50b1N0cmluZyxUND1CMWUuaGFzT3duUHJvcGVydHksSDFlPUIxZS50b1N0cmluZyxFMGE9UmVnRXhwKCJeIittT3QuY2FsbChUNCkucmVwbGFjZSh4MGEsIlxcJCYiKS5yZXBsYWNlKC9oYXNPd25Qcm9wZXJ0eXwoZnVuY3Rpb24pLio/KD89XFxcKCl8IGZvciAuKz8oPz1cXFxdKS9nLCIkMS4qPyIpKyIkIiksZ090PWswYT9uYy5CdWZmZXI6dm9pZCAwLHhPdD1uYy5TeW1ib2wsYk90PW5jLlVpbnQ4QXJyYXksJDBhPXB4ZShPYmplY3QuZ2V0UHJvdG90eXBlT2YsT2JqZWN0KSxQMGE9T2JqZWN0LmNyZWF0ZSxJMGE9QjFlLnByb3BlcnR5SXNFbnVtZXJhYmxlLE4wYT1EMGEuc3BsaWNlLHZPdD1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzLEYwYT1nT3Q/Z090LmlzQnVmZmVyOnZvaWQgMCxPMGE9cHhlKE9iamVjdC5rZXlzLE9iamVjdCksbXhlPUI3KG5jLCJEYXRhVmlldyIpLFh2PUI3KG5jLCJNYXAiKSxneGU9QjcobmMsIlByb21pc2UiKSx4eGU9QjcobmMsIlNldCIpLGJ4ZT1CNyhuYywiV2Vha01hcCIpLFF2PUI3KE9iamVjdCwiY3JlYXRlIiksUjBhPXk2KG14ZSksQjBhPXk2KFh2KSxIMGE9eTYoZ3hlKSxxMGE9eTYoeHhlKSxqMGE9eTYoYnhlKSx5T3Q9eE90P3hPdC5wcm90b3R5cGU6dm9pZCAwLHdPdD15T3Q/eU90LnZhbHVlT2Y6dm9pZCAwO2Z1bmN0aW9uIGI2KGUpe3ZhciB0PS0xLHI9ZT9lLmxlbmd0aDowO2Zvcih0aGlzLmNsZWFyKCk7Kyt0PHI7KXt2YXIgYT1lW3RdO3RoaXMuc2V0KGFbMF0sYVsxXSl9fWZ1bmN0aW9uIFYwYSgpe3RoaXMuX19kYXRhX189UXY/UXYobnVsbCk6e319ZnVuY3Rpb24gVTBhKGUpe3JldHVybiB0aGlzLmhhcyhlKSYmZGVsZXRlIHRoaXMuX19kYXRhX19bZV19ZnVuY3Rpb24gVzBhKGUpe3ZhciB0PXRoaXMuX19kYXRhX187aWYoUXYpe3ZhciByPXRbZV07cmV0dXJuIHI9PT1xRnQ/dm9pZCAwOnJ9cmV0dXJuIFQ0LmNhbGwodCxlKT90W2VdOnZvaWQgMH1mdW5jdGlvbiBHMGEoZSl7dmFyIHQ9dGhpcy5fX2RhdGFfXztyZXR1cm4gUXY/dFtlXSE9PXZvaWQgMDpUNC5jYWxsKHQsZSl9ZnVuY3Rpb24gWTBhKGUsdCl7dmFyIHI9dGhpcy5fX2RhdGFfXztyZXR1cm4gcltlXT1RdiYmdD09PXZvaWQgMD9xRnQ6dCx0aGlzfWI2LnByb3RvdHlwZS5jbGVhcj1WMGEsYjYucHJvdG90eXBlLmRlbGV0ZT1VMGEsYjYucHJvdG90eXBlLmdldD1XMGEsYjYucHJvdG90eXBlLmhhcz1HMGEsYjYucHJvdG90eXBlLnNldD1ZMGE7ZnVuY3Rpb24gc2MoZSl7dmFyIHQ9LTEscj1lP2UubGVuZ3RoOjA7Zm9yKHRoaXMuY2xlYXIoKTsrK3Q8cjspe3ZhciBhPWVbdF07dGhpcy5zZXQoYVswXSxhWzFdKX19ZnVuY3Rpb24gWjBhKCl7dGhpcy5fX2RhdGFfXz1bXX1mdW5jdGlvbiBYMGEoZSl7dmFyIHQ9dGhpcy5fX2RhdGFfXyxyPXExZSh0LGUpO2lmKHI8MClyZXR1cm4hMTt2YXIgYT10Lmxlbmd0aC0xO3JldHVybiByPT1hP3QucG9wKCk6TjBhLmNhbGwodCxyLDEpLCEwfWZ1bmN0aW9uIFEwYShlKXt2YXIgdD10aGlzLl9fZGF0YV9fLHI9cTFlKHQsZSk7cmV0dXJuIHI8MD92b2lkIDA6dFtyXVsxXX1mdW5jdGlvbiBLMGEoZSl7cmV0dXJuIHExZSh0aGlzLl9fZGF0YV9fLGUpPi0xfWZ1bmN0aW9uIEowYShlLHQpe3ZhciByPXRoaXMuX19kYXRhX18sYT1xMWUocixlKTtyZXR1cm4gYTwwP3IucHVzaChbZSx0XSk6clthXVsxXT10LHRoaXN9c2MucHJvdG90eXBlLmNsZWFyPVowYSxzYy5wcm90b3R5cGUuZGVsZXRlPVgwYSxzYy5wcm90b3R5cGUuZ2V0PVEwYSxzYy5wcm90b3R5cGUuaGFzPUswYSxzYy5wcm90b3R5cGUuc2V0PUowYTtmdW5jdGlvbiBPNyhlKXt2YXIgdD0tMSxyPWU/ZS5sZW5ndGg6MDtmb3IodGhpcy5jbGVhcigpOysrdDxyOyl7dmFyIGE9ZVt0XTt0aGlzLnNldChhWzBdLGFbMV0pfX1mdW5jdGlvbiBlNGEoKXt0aGlzLl9fZGF0YV9fPXtoYXNoOm5ldyBiNixtYXA6bmV3KFh2fHxzYyksc3RyaW5nOm5ldyBiNn19ZnVuY3Rpb24gdDRhKGUpe3JldHVybiBqMWUodGhpcyxlKS5kZWxldGUoZSl9ZnVuY3Rpb24gcjRhKGUpe3JldHVybiBqMWUodGhpcyxlKS5nZXQoZSl9ZnVuY3Rpb24gYTRhKGUpe3JldHVybiBqMWUodGhpcyxlKS5oYXMoZSl9ZnVuY3Rpb24gaTRhKGUsdCl7cmV0dXJuIGoxZSh0aGlzLGUpLnNldChlLHQpLHRoaXN9TzcucHJvdG90eXBlLmNsZWFyPWU0YSxPNy5wcm90b3R5cGUuZGVsZXRlPXQ0YSxPNy5wcm90b3R5cGUuZ2V0PXI0YSxPNy5wcm90b3R5cGUuaGFzPWE0YSxPNy5wcm90b3R5cGUuc2V0PWk0YTtmdW5jdGlvbiBSNyhlKXt0aGlzLl9fZGF0YV9fPW5ldyBzYyhlKX1mdW5jdGlvbiBvNGEoKXt0aGlzLl9fZGF0YV9fPW5ldyBzY31mdW5jdGlvbiBuNGEoZSl7cmV0dXJuIHRoaXMuX19kYXRhX18uZGVsZXRlKGUpfWZ1bmN0aW9uIHM0YShlKXtyZXR1cm4gdGhpcy5fX2RhdGFfXy5nZXQoZSl9ZnVuY3Rpb24gbDRhKGUpe3JldHVybiB0aGlzLl9fZGF0YV9fLmhhcyhlKX1mdW5jdGlvbiBjNGEoZSx0KXt2YXIgcj10aGlzLl9fZGF0YV9fO2lmKHIgaW5zdGFuY2VvZiBzYyl7dmFyIGE9ci5fX2RhdGFfXztpZighWHZ8fGEubGVuZ3RoPGgwYS0xKXJldHVybiBhLnB1c2goW2UsdF0pLHRoaXM7cj10aGlzLl9fZGF0YV9fPW5ldyBPNyhhKX1yZXR1cm4gci5zZXQoZSx0KSx0aGlzfVI3LnByb3RvdHlwZS5jbGVhcj1vNGEsUjcucHJvdG90eXBlLmRlbGV0ZT1uNGEsUjcucHJvdG90eXBlLmdldD1zNGEsUjcucHJvdG90eXBlLmhhcz1sNGEsUjcucHJvdG90eXBlLnNldD1jNGE7ZnVuY3Rpb24gZDRhKGUsdCl7dmFyIHI9d3hlKGUpfHxQNGEoZSk/VDBhKGUubGVuZ3RoLFN0cmluZyk6W10sYT1yLmxlbmd0aCxpPSEhYTtmb3IodmFyIG8gaW4gZSkodHx8VDQuY2FsbChlLG8pKSYmIShpJiYobz09Imxlbmd0aCJ8fEQ0YShvLGEpKSkmJnIucHVzaChvKTtyZXR1cm4gcn1mdW5jdGlvbiBNT3QoZSx0LHIpe3ZhciBhPWVbdF07KCEoVDQuY2FsbChlLHQpJiZDT3QoYSxyKSl8fHI9PT12b2lkIDAmJiEodCBpbiBlKSkmJihlW3RdPXIpfWZ1bmN0aW9uIHExZShlLHQpe2Zvcih2YXIgcj1lLmxlbmd0aDtyLS07KWlmKENPdChlW3JdWzBdLHQpKXJldHVybiByO3JldHVybi0xfWZ1bmN0aW9uIHU0YShlLHQpe3JldHVybiBlJiZrT3QodCxNeGUodCksZSl9ZnVuY3Rpb24gdnhlKGUsdCxyLGEsaSxvLG4pe3ZhciBzO2lmKGEmJihzPW8/YShlLGksbyxuKTphKGUpKSxzIT09dm9pZCAwKXJldHVybiBzO2lmKCFWMWUoZSkpcmV0dXJuIGU7dmFyIGM9d3hlKGUpO2lmKGMpe2lmKHM9XzRhKGUpLCF0KXJldHVybiBTNGEoZSxzKX1lbHNle3ZhciBkPXY2KGUpLGY9ZD09ZHhlfHxkPT1XRnQ7aWYoTjRhKGUpKXJldHVybiB4NGEoZSx0KTtpZihkPT11eGV8fGQ9PWN4ZXx8ZiYmIW8pe2lmKHVPdChlKSlyZXR1cm4gbz9lOnt9O2lmKHM9VDRhKGY/e306ZSksIXQpcmV0dXJuIHo0YShlLHU0YShzLGUpKX1lbHNle2lmKCFnYVtkXSlyZXR1cm4gbz9lOnt9O3M9TDRhKGUsZCx2eGUsdCl9fW58fChuPW5ldyBSNyk7dmFyIHU9bi5nZXQoZSk7aWYodSlyZXR1cm4gdTtpZihuLnNldChlLHMpLCFjKXZhciBwPXI/QzRhKGUpOk14ZShlKTtyZXR1cm4gQzBhKHB8fGUsZnVuY3Rpb24oaCxiKXtwJiYoYj1oLGg9ZVtiXSksTU90KHMsYix2eGUoaCx0LHIsYSxiLGUsbikpfSksc31mdW5jdGlvbiBmNGEoZSl7cmV0dXJuIFYxZShlKT9QMGEoZSk6e319ZnVuY3Rpb24gcDRhKGUsdCxyKXt2YXIgYT10KGUpO3JldHVybiB3eGUoZSk/YTpfMGEoYSxyKGUpKX1mdW5jdGlvbiBoNGEoZSl7cmV0dXJuIEgxZS5jYWxsKGUpfWZ1bmN0aW9uIG00YShlKXtpZighVjFlKGUpfHxFNGEoZSkpcmV0dXJuITE7dmFyIHQ9VE90KGUpfHx1T3QoZSk/RTBhOnYwYTtyZXR1cm4gdC50ZXN0KHk2KGUpKX1mdW5jdGlvbiBnNGEoZSl7aWYoIXpPdChlKSlyZXR1cm4gTzBhKGUpO3ZhciB0PVtdO2Zvcih2YXIgciBpbiBPYmplY3QoZSkpVDQuY2FsbChlLHIpJiZyIT0iY29uc3RydWN0b3IiJiZ0LnB1c2gocik7cmV0dXJuIHR9ZnVuY3Rpb24geDRhKGUsdCl7aWYodClyZXR1cm4gZS5zbGljZSgpO3ZhciByPW5ldyBlLmNvbnN0cnVjdG9yKGUubGVuZ3RoKTtyZXR1cm4gZS5jb3B5KHIpLHJ9ZnVuY3Rpb24geXhlKGUpe3ZhciB0PW5ldyBlLmNvbnN0cnVjdG9yKGUuYnl0ZUxlbmd0aCk7cmV0dXJuIG5ldyBiT3QodCkuc2V0KG5ldyBiT3QoZSkpLHR9ZnVuY3Rpb24gYjRhKGUsdCl7dmFyIHI9dD95eGUoZS5idWZmZXIpOmUuYnVmZmVyO3JldHVybiBuZXcgZS5jb25zdHJ1Y3RvcihyLGUuYnl0ZU9mZnNldCxlLmJ5dGVMZW5ndGgpfWZ1bmN0aW9uIHY0YShlLHQscil7dmFyIGE9dD9yKGZPdChlKSwhMCk6Zk90KGUpO3JldHVybiBkT3QoYSxTMGEsbmV3IGUuY29uc3RydWN0b3IpfWZ1bmN0aW9uIHk0YShlKXt2YXIgdD1uZXcgZS5jb25zdHJ1Y3RvcihlLnNvdXJjZSxiMGEuZXhlYyhlKSk7cmV0dXJuIHQubGFzdEluZGV4PWUubGFzdEluZGV4LHR9ZnVuY3Rpb24gdzRhKGUsdCxyKXt2YXIgYT10P3IocE90KGUpLCEwKTpwT3QoZSk7cmV0dXJuIGRPdChhLHowYSxuZXcgZS5jb25zdHJ1Y3Rvcil9ZnVuY3Rpb24gTTRhKGUpe3JldHVybiB3T3Q/T2JqZWN0KHdPdC5jYWxsKGUpKTp7fX1mdW5jdGlvbiBrNGEoZSx0KXt2YXIgcj10P3l4ZShlLmJ1ZmZlcik6ZS5idWZmZXI7cmV0dXJuIG5ldyBlLmNvbnN0cnVjdG9yKHIsZS5ieXRlT2Zmc2V0LGUubGVuZ3RoKX1mdW5jdGlvbiBTNGEoZSx0KXt2YXIgcj0tMSxhPWUubGVuZ3RoO2Zvcih0fHwodD1BcnJheShhKSk7KytyPGE7KXRbcl09ZVtyXTtyZXR1cm4gdH1mdW5jdGlvbiBrT3QoZSx0LHIsYSl7cnx8KHI9e30pO2Zvcih2YXIgaT0tMSxvPXQubGVuZ3RoOysraTxvOyl7dmFyIG49dFtpXSxzPWE/YShyW25dLGVbbl0sbixyLGUpOnZvaWQgMDtNT3QocixuLHM9PT12b2lkIDA/ZVtuXTpzKX1yZXR1cm4gcn1mdW5jdGlvbiB6NGEoZSx0KXtyZXR1cm4ga090KGUsU090KGUpLHQpfWZ1bmN0aW9uIEM0YShlKXtyZXR1cm4gcDRhKGUsTXhlLFNPdCl9ZnVuY3Rpb24gajFlKGUsdCl7dmFyIHI9ZS5fX2RhdGFfXztyZXR1cm4gQTRhKHQpP3JbdHlwZW9mIHQ9PSJzdHJpbmciPyJzdHJpbmciOiJoYXNoIl06ci5tYXB9ZnVuY3Rpb24gQjcoZSx0KXt2YXIgcj1MMGEoZSx0KTtyZXR1cm4gbTRhKHIpP3I6dm9pZCAwfXZhciBTT3Q9dk90P3B4ZSh2T3QsT2JqZWN0KTpSNGEsdjY9aDRhOyhteGUmJnY2KG5ldyBteGUobmV3IEFycmF5QnVmZmVyKDEpKSkhPVIxZXx8WHYmJnY2KG5ldyBYdikhPUYxZXx8Z3hlJiZ2NihneGUucmVzb2x2ZSgpKSE9WUZ0fHx4eGUmJnY2KG5ldyB4eGUpIT1PMWV8fGJ4ZSYmdjYobmV3IGJ4ZSkhPWZ4ZSkmJih2Nj1mdW5jdGlvbihlKXt2YXIgdD1IMWUuY2FsbChlKSxyPXQ9PXV4ZT9lLmNvbnN0cnVjdG9yOnZvaWQgMCxhPXI/eTYocik6dm9pZCAwO2lmKGEpc3dpdGNoKGEpe2Nhc2UgUjBhOnJldHVybiBSMWU7Y2FzZSBCMGE6cmV0dXJuIEYxZTtjYXNlIEgwYTpyZXR1cm4gWUZ0O2Nhc2UgcTBhOnJldHVybiBPMWU7Y2FzZSBqMGE6cmV0dXJuIGZ4ZX1yZXR1cm4gdH0pO2Z1bmN0aW9uIF80YShlKXt2YXIgdD1lLmxlbmd0aCxyPWUuY29uc3RydWN0b3IodCk7cmV0dXJuIHQmJnR5cGVvZiBlWzBdPT0ic3RyaW5nIiYmVDQuY2FsbChlLCJpbmRleCIpJiYoci5pbmRleD1lLmluZGV4LHIuaW5wdXQ9ZS5pbnB1dCkscn1mdW5jdGlvbiBUNGEoZSl7cmV0dXJuIHR5cGVvZiBlLmNvbnN0cnVjdG9yPT0iZnVuY3Rpb24iJiYhek90KGUpP2Y0YSgkMGEoZSkpOnt9fWZ1bmN0aW9uIEw0YShlLHQscixhKXt2YXIgaT1lLmNvbnN0cnVjdG9yO3N3aXRjaCh0KXtjYXNlIEtGdDpyZXR1cm4geXhlKGUpO2Nhc2UgVkZ0OmNhc2UgVUZ0OnJldHVybiBuZXcgaSgrZSk7Y2FzZSBSMWU6cmV0dXJuIGI0YShlLGEpO2Nhc2UgSkZ0OmNhc2UgZU90OmNhc2UgdE90OmNhc2Ugck90OmNhc2UgYU90OmNhc2UgaU90OmNhc2Ugb090OmNhc2Ugbk90OmNhc2Ugc090OnJldHVybiBrNGEoZSxhKTtjYXNlIEYxZTpyZXR1cm4gdjRhKGUsYSxyKTtjYXNlIEdGdDpjYXNlIFhGdDpyZXR1cm4gbmV3IGkoZSk7Y2FzZSBaRnQ6cmV0dXJuIHk0YShlKTtjYXNlIE8xZTpyZXR1cm4gdzRhKGUsYSxyKTtjYXNlIFFGdDpyZXR1cm4gTTRhKGUpfX1mdW5jdGlvbiBENGEoZSx0KXtyZXR1cm4gdD10Pz9qRnQsISF0JiYodHlwZW9mIGU9PSJudW1iZXIifHx5MGEudGVzdChlKSkmJmU+LTEmJmUlMT09MCYmZTx0fWZ1bmN0aW9uIEE0YShlKXt2YXIgdD10eXBlb2YgZTtyZXR1cm4gdD09InN0cmluZyJ8fHQ9PSJudW1iZXIifHx0PT0ic3ltYm9sInx8dD09ImJvb2xlYW4iP2UhPT0iX19wcm90b19fIjplPT09bnVsbH1mdW5jdGlvbiBFNGEoZSl7cmV0dXJuISFoT3QmJmhPdCBpbiBlfWZ1bmN0aW9uIHpPdChlKXt2YXIgdD1lJiZlLmNvbnN0cnVjdG9yLHI9dHlwZW9mIHQ9PSJmdW5jdGlvbiImJnQucHJvdG90eXBlfHxCMWU7cmV0dXJuIGU9PT1yfWZ1bmN0aW9uIHk2KGUpe2lmKGUhPW51bGwpe3RyeXtyZXR1cm4gbU90LmNhbGwoZSl9Y2F0Y2h7fXRyeXtyZXR1cm4gZSsiIn1jYXRjaHt9fXJldHVybiIifWZ1bmN0aW9uICQ0YShlKXtyZXR1cm4gdnhlKGUsITAsITApfWZ1bmN0aW9uIENPdChlLHQpe3JldHVybiBlPT09dHx8ZSE9PWUmJnQhPT10fWZ1bmN0aW9uIFA0YShlKXtyZXR1cm4gSTRhKGUpJiZUNC5jYWxsKGUsImNhbGxlZSIpJiYoIUkwYS5jYWxsKGUsImNhbGxlZSIpfHxIMWUuY2FsbChlKT09Y3hlKX12YXIgd3hlPUFycmF5LmlzQXJyYXk7ZnVuY3Rpb24gX090KGUpe3JldHVybiBlIT1udWxsJiZGNGEoZS5sZW5ndGgpJiYhVE90KGUpfWZ1bmN0aW9uIEk0YShlKXtyZXR1cm4gTzRhKGUpJiZfT3QoZSl9dmFyIE40YT1GMGF8fEI0YTtmdW5jdGlvbiBUT3QoZSl7dmFyIHQ9VjFlKGUpP0gxZS5jYWxsKGUpOiIiO3JldHVybiB0PT1keGV8fHQ9PVdGdH1mdW5jdGlvbiBGNGEoZSl7cmV0dXJuIHR5cGVvZiBlPT0ibnVtYmVyIiYmZT4tMSYmZSUxPT0wJiZlPD1qRnR9ZnVuY3Rpb24gVjFlKGUpe3ZhciB0PXR5cGVvZiBlO3JldHVybiEhZSYmKHQ9PSJvYmplY3QifHx0PT0iZnVuY3Rpb24iKX1mdW5jdGlvbiBPNGEoZSl7cmV0dXJuISFlJiZ0eXBlb2YgZT09Im9iamVjdCJ9ZnVuY3Rpb24gTXhlKGUpe3JldHVybiBfT3QoZSk/ZDRhKGUpOmc0YShlKX1mdW5jdGlvbiBSNGEoKXtyZXR1cm5bXX1mdW5jdGlvbiBCNGEoKXtyZXR1cm4hMX1INy5leHBvcnRzPSQ0YX0pO3ZhciBTeGU9WGUoKFpsMSxMT3QpPT57InVzZSBzdHJpY3QiO0xPdC5leHBvcnRzPWZ1bmN0aW9uKGUsdCl7dHx8KHQ9e30pLHR5cGVvZiB0PT0iZnVuY3Rpb24iJiYodD17Y21wOnR9KTt2YXIgcj10eXBlb2YgdC5jeWNsZXM9PSJib29sZWFuIj90LmN5Y2xlczohMSxhPXQuY21wJiYoZnVuY3Rpb24obyl7cmV0dXJuIGZ1bmN0aW9uKG4pe3JldHVybiBmdW5jdGlvbihzLGMpe3ZhciBkPXtrZXk6cyx2YWx1ZTpuW3NdfSxmPXtrZXk6Yyx2YWx1ZTpuW2NdfTtyZXR1cm4gbyhkLGYpfX19KSh0LmNtcCksaT1bXTtyZXR1cm4oZnVuY3Rpb24gbyhuKXtpZihuJiZuLnRvSlNPTiYmdHlwZW9mIG4udG9KU09OPT0iZnVuY3Rpb24iJiYobj1uLnRvSlNPTigpKSxuIT09dm9pZCAwKXtpZih0eXBlb2Ygbj09Im51bWJlciIpcmV0dXJuIGlzRmluaXRlKG4pPyIiK246Im51bGwiO2lmKHR5cGVvZiBuIT0ib2JqZWN0IilyZXR1cm4gSlNPTi5zdHJpbmdpZnkobik7dmFyIHMsYztpZihBcnJheS5pc0FycmF5KG4pKXtmb3IoYz0iWyIscz0wO3M8bi5sZW5ndGg7cysrKXMmJihjKz0iLCIpLGMrPW8obltzXSl8fCJudWxsIjtyZXR1cm4gYysiXSJ9aWYobj09PW51bGwpcmV0dXJuIm51bGwiO2lmKGkuaW5kZXhPZihuKSE9PS0xKXtpZihyKXJldHVybiBKU09OLnN0cmluZ2lmeSgiX19jeWNsZV9fIik7dGhyb3cgbmV3IFR5cGVFcnJvcigiQ29udmVydGluZyBjaXJjdWxhciBzdHJ1Y3R1cmUgdG8gSlNPTiIpfXZhciBkPWkucHVzaChuKS0xLGY9T2JqZWN0LmtleXMobikuc29ydChhJiZhKG4pKTtmb3IoYz0iIixzPTA7czxmLmxlbmd0aDtzKyspe3ZhciB1PWZbc10scD1vKG5bdV0pO3AmJihjJiYoYys9IiwiKSxjKz1KU09OLnN0cmluZ2lmeSh1KSsiOiIrcCl9cmV0dXJuIGkuc3BsaWNlKGQsMSksInsiK2MrIn0ifX0pKGUpfX0pO3ZhciBVMWUsRE90LFcxZSx6eGU9bCgoKT0+e2F4ZSgpO0Y3KCk7VTFlPUFyKGt4ZSgpLDEpLERPdD1BcihTeGUoKSwxKSxXMWU9RE90LmRlZmF1bHR9KTtmdW5jdGlvbiBxNGEoZSl7cmV0dXJuIHR5cGVvZiBCdWZmZXI8InUiP0J1ZmZlci5mcm9tKGUpLnRvU3RyaW5nKCJiYXNlNjQiKTpidG9hKFN0cmluZy5mcm9tQ2hhckNvZGUoLi4uZSkpfWZ1bmN0aW9uIGo0YShlKXtpZih0eXBlb2YgQnVmZmVyPCJ1Iil7bGV0IHQ9QnVmZmVyLmZyb20oZSwiYmFzZTY0Iik7cmV0dXJuIG5ldyBVaW50OEFycmF5KHQuYnVmZmVyLHQuYnl0ZU9mZnNldCx0LmJ5dGVMZW5ndGgpfXJldHVybiBuZXcgVWludDhBcnJheShBcnJheS5mcm9tKGF0b2IoZSkpLm1hcCh0PT50LmNoYXJDb2RlQXQoMCkpKX1mdW5jdGlvbiBfeGUoZSx0KXtyZXR1cm4gSlNPTi5zdHJpbmdpZnkoZSxHMWUsdCl9ZnVuY3Rpb24gVHhlKGUpe3JldHVybiBKU09OLnBhcnNlKGUsQU90KX1mdW5jdGlvbiBWNGEoZSl7cmV0dXJuICRPdChlKSYmZS50eXBlPT09IkVuY29kZWRCdWZmZXIiJiZDeGUoZS5kYXRhKX1mdW5jdGlvbiBVNGEoZSl7cmV0dXJuICRPdChlKSYmZS50eXBlPT09IkJ1ZmZlciImJihFT3QoZS5kYXRhKXx8Q3hlKGUuZGF0YSkpfHxlIGluc3RhbmNlb2YgVWludDhBcnJheX1mdW5jdGlvbiBFT3QoZSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoZSl9ZnVuY3Rpb24gQ3hlKGUpe3JldHVybiB0eXBlb2YgZT09InN0cmluZyJ9ZnVuY3Rpb24gJE90KGUpe3JldHVybiB0eXBlb2YgZT09Im9iamVjdCImJmUhPT1udWxsfXZhciBHMWUsQU90LFBPdD1sKCgpPT57enhlKCk7RzFlPShlLHQpPT57aWYoVTRhKHQpKXtsZXQgcjtpZigiZGF0YSJpbiB0JiZFT3QodC5kYXRhKSlyPW5ldyBVaW50OEFycmF5KHQuZGF0YSk7ZWxzZSBpZih0IGluc3RhbmNlb2YgVWludDhBcnJheSlyPXQ7ZWxzZSByZXR1cm4gdDtyZXR1cm57dHlwZToiRW5jb2RlZEJ1ZmZlciIsZGF0YToiYmFzZTY0OiIrcTRhKHIpfX1yZXR1cm4gdH0sQU90PShlLHQpPT57aWYoVjRhKHQpJiZDeGUodC5kYXRhKSYmdC5kYXRhLnN0YXJ0c1dpdGgoImJhc2U2NDoiKSl7bGV0IHI9dC5kYXRhLnNsaWNlKDcpO3JldHVybiBqNGEocil9cmV0dXJuIHR9fSk7dmFyIHlzPXt9O3FlKHlzLHtTbWFydGpzb246KCk9PkR4ZSxkZWVwRXF1YWxKc29uTFN0cmluZ3M6KCk9Pko0YSxkZWVwRXF1YWxPYmplY3RzOigpPT5JT3QsZm9sZERlYzooKT0+SzRhLHBhcnNlOigpPT5ZMWUscGFyc2VCYXNlNjQ6KCk9PlE0YSxwYXJzZUpzb25MOigpPT5MeGUsc3RhYmxlT25lV2F5U3RyaW5naWZ5OigpPT5ZNGEsc3RyaW5naWZ5OigpPT53NixzdHJpbmdpZnlCYXNlNjQ6KCk9Plg0YSxzdHJpbmdpZnlKc29uTDooKT0+RzRhLHN0cmluZ2lmeVByZXR0eTooKT0+WjRhfSk7dmFyIFkxZSxMeGUsRzRhLFk0YSx3NixaNGEsWDRhLFE0YSxEeGUsSzRhLElPdCxKNGEsWjFlPWwoKCk9Pnt6eGUoKTtQT3QoKTtZMWU9VHhlLEx4ZT1lPT5lLnNwbGl0KGAKYCkucmVkdWNlKChhLGkpPT57bGV0IG89aS50cmltKCk7cmV0dXJuIG8ubGVuZ3RoPjAmJmEucHVzaChZMWUobykpLGF9LFtdKSxHNGE9ZT0+ZS5tYXAodD0+dzYodCkpLmpvaW4oYApgKSxZNGE9KGUsdCxyPXt9KT0+e2xldCBhPW5ldyBXZWFrU2V0LGk9cz0+e2lmKHM9PT1udWxsfHx0eXBlb2YgcyE9Im9iamVjdCIpcmV0dXJuIHM7bGV0IGM9RzFlKCIiLHMpO2lmKGMmJmMudHlwZT09PSJFbmNvZGVkQnVmZmVyIiYmdHlwZW9mIGMuZGF0YT09InN0cmluZyIpcmV0dXJuIGM7aWYoYS5oYXMocykpcmV0dXJuIl9fY3ljbGVfXyI7aWYoYS5hZGQocyksQXJyYXkuaXNBcnJheShzKSlyZXR1cm4gcy5tYXAoZj0+aShmKSk7bGV0IGQ9e307Zm9yKGxldCBmIG9mIE9iamVjdC5rZXlzKHMpKXRyeXtkW2ZdPWkoc1tmXSl9Y2F0Y2h7ZFtmXT0iX191bnNlcmlhbGl6YWJsZV9fIn1yZXR1cm4gZH0sbz1pKGUpLG49ey4uLnIsY3ljbGVzOiEwfTtpZih0JiYhbi5jbXApe2xldCBzPW5ldyBNYXA7dC5mb3JFYWNoKChjLGQpPT5zLnNldChjLGQpKSxuLmNtcD0oYyxkKT0+e2xldCBmPXMuaGFzKGMua2V5KT9zLmdldChjLmtleSk6TnVtYmVyLlBPU0lUSVZFX0lORklOSVRZLHU9cy5oYXMoZC5rZXkpP3MuZ2V0KGQua2V5KTpOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFk7cmV0dXJuIGYhPT11P2YtdTpjLmtleTxkLmtleT8tMTpjLmtleT5kLmtleT8xOjB9fXJldHVybiBXMWUobyxuKX0sdzY9KGUsdCxyPXt9KT0+e2xldCBhPV94ZShlKTtlPUpTT04ucGFyc2UoYSk7bGV0IGk9ey4uLnJ9O2lmKHQmJiFpLmNtcCl7bGV0IG49bmV3IE1hcDt0LmZvckVhY2goKHMsYyk9Pm4uc2V0KHMsYykpLGkuY21wPShzLGMpPT57bGV0IGQ9bi5oYXMocy5rZXkpP24uZ2V0KHMua2V5KTpOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFksZj1uLmhhcyhjLmtleSk/bi5nZXQoYy5rZXkpOk51bWJlci5QT1NJVElWRV9JTkZJTklUWTtyZXR1cm4gZCE9PWY/ZC1mOnMua2V5PGMua2V5Py0xOnMua2V5PmMua2V5PzE6MH19cmV0dXJuIFcxZShlLGkpfSxaNGE9ZT0+e2xldCB0PXc2KGUpLHI9SlNPTi5wYXJzZSh0KTtyZXR1cm4gSlNPTi5zdHJpbmdpZnkocixudWxsLDIpfSxYNGE9KC4uLmUpPT57bGV0IHQ9dzYoLi4uZSk7cmV0dXJuIGYxLmJhc2U2NC5lbmNvZGVVcmkodCl9LFE0YT1lPT57bGV0IHQ9ZjEuYmFzZTY0LGE9KHQuZGVjb2RlVXJpfHx0LmRlY29kZSkoZSk7cmV0dXJuIFkxZShhKX0sRHhlPWNsYXNzIGV7c3RhdGljIGVuZm9sZEZyb21PYmplY3QodCl7bGV0IHI9bmV3IHRoaXMsYT1yLnNhdmVhYmxlUHJvcGVydGllc3x8W107Zm9yKGxldCBpIGluIHQpYS5pbmRleE9mKGkpIT09LTEmJihyW2ldPXRbaV0pO3JldHVybiByfXN0YXRpYyBlbmZvbGRGcm9tSnNvbih0KXtsZXQgcj1ZMWUodCk7cmV0dXJuIHRoaXMuZW5mb2xkRnJvbU9iamVjdChyKX1zYXZlYWJsZVByb3BlcnRpZXM7Zm9sZFRvT2JqZWN0KCl7bGV0IHQ9bmV3IFNldDtyZXR1cm4gdC5hZGQodGhpcyksdGhpcy5mb2xkVG9PYmplY3RJbnRlcm5hbCh0KX1mb2xkVG9PYmplY3RJbnRlcm5hbCh0KXtsZXQgcj17fSxhPW89PntpZihvIGluc3RhbmNlb2YgZSl7aWYodC5oYXMobykpdGhyb3cgbmV3IEVycm9yKCJjeWNsZSBkZXRlY3RlZCIpO3JldHVybiB0LmFkZChvKSxvLmZvbGRUb09iamVjdEludGVybmFsKHQpfXJldHVybiBBcnJheS5pc0FycmF5KG8pP28ubWFwKG49PmEobikpOlUxZS5kZWZhdWx0KG8pfSxpPXRoaXMuc2F2ZWFibGVQcm9wZXJ0aWVzfHxbXTtmb3IobGV0IG8gb2YgaSl7bGV0IG49dGhpc1tvXTtyW29dPWEobil9cmV0dXJuIHJ9Zm9sZFRvSnNvbigpe2xldCB0PXRoaXMuZm9sZFRvT2JqZWN0KCk7cmV0dXJuIHc2KHQpfX0sSzRhPSgpPT4oZSx0KT0+e2xldCByPVN0cmluZyh0Lm5hbWUpO3QuYWRkSW5pdGlhbGl6ZXIoZnVuY3Rpb24oKXt0aGlzLnNhdmVhYmxlUHJvcGVydGllc3x8KHRoaXMuc2F2ZWFibGVQcm9wZXJ0aWVzPVtdKSx0aGlzLnNhdmVhYmxlUHJvcGVydGllcy5pbmNsdWRlcyhyKXx8dGhpcy5zYXZlYWJsZVByb3BlcnRpZXMucHVzaChyKX0pfSxJT3Q9KGUsdCk9PntsZXQgcj13NihlKSxhPXc2KHQpO3JldHVybiByPT09YX0sSjRhPShlLHQpPT57bGV0IHI9THhlKGUpLGE9THhlKHQpO3JldHVybiBJT3QocixhKX19KTt2YXIgTk90PWwoKCk9PntvbygpfSk7dmFyIEZPdD1sKCgpPT57fSk7dmFyIEF4ZSxPT3Q9bCgoKT0+e05PdCgpO0ZPdCgpO0F4ZT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMubG9hZGVkU2NyaXB0cz1bXX1hc3luYyBnZXRFbnZBd2FyZU1vZHVsZSh0KXtpZih0aGlzLmlzTm9kZSlyZXR1cm4gYXdhaXQgdGhpcy5nZXRTYWZlTm9kZU1vZHVsZSh0Lm5vZGVNb2R1bGVOYW1lKTtpZih0aGlzLmlzQnJvd3NlcilyZXR1cm4gYXdhaXQgdGhpcy5nZXRTYWZlV2ViTW9kdWxlKHQud2ViVXJsQXJnLHQuZ2V0RnVuY3Rpb24pO2NvbnNvbGUuZXJyb3IoInBsYXRmb3JtIGZvciBsb2FkaW5nIG5vdCBzdXBwb3J0ZWQgYnkgc21hcnRlbnYiKX1hc3luYyBnZXRTYWZlTm9kZU1vZHVsZSh0LHIpe2lmKCF0aGlzLmlzTm9kZSl7Y29uc29sZS5lcnJvcihgWW91IHRyaWVkIHRvIGxvYWQgYSBub2RlIG1vZHVsZSBpbiBhIHdyb25nIGNvbnRleHQ6ICR7dH0uIFRoaXMgZG9lcyBub3QgdGhyb3cuYCk7cmV0dXJufWxldCBhPWF3YWl0IG5ldyBGdW5jdGlvbihgcmV0dXJuIGltcG9ydCgnJHt0fScpYCkoKTtyZXR1cm4gciYmYXdhaXQgcihhKSxhfWFzeW5jIGdldFNhZmVXZWJNb2R1bGUodCxyKXtpZighdGhpcy5pc0Jyb3dzZXIpe2NvbnNvbGUuZXJyb3IoIllvdSB0cmllZCB0byBsb2FkIGEgd2ViIG1vZHVsZSBpbiBhIHdyb25nIGNvbnRleHQiKTtyZXR1cm59aWYodGhpcy5sb2FkZWRTY3JpcHRzLmluY2x1ZGVzKHQpKXJldHVybiByKCk7dGhpcy5sb2FkZWRTY3JpcHRzLnB1c2godCk7bGV0IGE9bHQuZGVmZXIoKTtpZihnbG9iYWxUaGlzLmltcG9ydFNjcmlwdHMpZ2xvYmFsVGhpcy5pbXBvcnRTY3JpcHRzKHQpLGEucmVzb2x2ZSgpO2Vsc2V7bGV0IGk9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7aS5vbmxvYWQ9KCk9PnthLnJlc29sdmUoKX0saS5zcmM9dCxkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKGkpfXJldHVybiBhd2FpdCBhLnByb21pc2UscigpfWdldCBydW50aW1lRW52KCl7cmV0dXJuIHR5cGVvZiBwcm9jZXNzPCJ1Ij8ibm9kZSI6ImJyb3dzZXIifWdldCBpc0Jyb3dzZXIoKXtyZXR1cm4hdGhpcy5pc05vZGV9Z2V0IHVzZXJBZ2VudCgpe3JldHVybiB0aGlzLmlzQnJvd3Nlcj9uYXZpZ2F0b3IudXNlckFnZW50OiJ1bmRlZmluZWQifWdldCBpc05vZGUoKXtyZXR1cm4gdGhpcy5ydW50aW1lRW52PT09Im5vZGUifWdldCBub2RlVmVyc2lvbigpe3JldHVybiBwcm9jZXNzLnZlcnNpb259Z2V0IGlzQ0koKXtyZXR1cm4gdGhpcy5pc05vZGU/ISFwcm9jZXNzLmVudi5DSTohMX1hc3luYyBpc01hY0FzeW5jKCl7cmV0dXJuIHRoaXMuaXNOb2RlPyhhd2FpdCB0aGlzLmdldFNhZmVOb2RlTW9kdWxlKCJvcyIpKS5wbGF0Zm9ybSgpPT09ImRhcndpbiI6ITF9YXN5bmMgaXNXaW5kb3dzQXN5bmMoKXtyZXR1cm4gdGhpcy5pc05vZGU/KGF3YWl0IHRoaXMuZ2V0U2FmZU5vZGVNb2R1bGUoIm9zIikpLnBsYXRmb3JtKCk9PT0id2luMzIiOiExfWFzeW5jIGlzTGludXhBc3luYygpe3JldHVybiB0aGlzLmlzTm9kZT8oYXdhaXQgdGhpcy5nZXRTYWZlTm9kZU1vZHVsZSgib3MiKSkucGxhdGZvcm0oKT09PSJsaW51eCI6ITF9YXN5bmMgcHJpbnRFbnYoKXt0aGlzLmlzTm9kZT8oY29uc29sZS5sb2coInJ1bm5pbmcgb24gTk9ERSIpLGNvbnNvbGUubG9nKCJub2RlIHZlcnNpb24gaXMgIit0aGlzLm5vZGVWZXJzaW9uKSk6KGNvbnNvbGUubG9nKCJydW5uaW5nIG9uIEJST1dTRVIiKSxjb25zb2xlLmxvZygiYnJvd3NlciBpcyAiK3RoaXMudXNlckFnZW50KSl9fX0pO3ZhciBsYz17fTtxZShsYyx7U21hcnRlbnY6KCk9PkF4ZX0pO3ZhciBYMWU9bCgoKT0+e09PdCgpfSk7dmFyIFExZSxST3QsSzFlLEV4ZT1sKCgpPT57WDFlKCk7RjcoKTtRMWU9QXIoa3hlKCksMSksUk90PUFyKFN4ZSgpLDEpLEsxZT1ST3QuZGVmYXVsdH0pO2Z1bmN0aW9uIHIzYShlKXtyZXR1cm4gdHlwZW9mIEJ1ZmZlcjwidSI/QnVmZmVyLmZyb20oZSkudG9TdHJpbmcoImJhc2U2NCIpOmJ0b2EoU3RyaW5nLmZyb21DaGFyQ29kZSguLi5lKSl9ZnVuY3Rpb24gYTNhKGUpe2lmKHR5cGVvZiBCdWZmZXI8InUiKXtsZXQgdD1CdWZmZXIuZnJvbShlLCJiYXNlNjQiKTtyZXR1cm4gbmV3IFVpbnQ4QXJyYXkodC5idWZmZXIsdC5ieXRlT2Zmc2V0LHQuYnl0ZUxlbmd0aCl9cmV0dXJuIG5ldyBVaW50OEFycmF5KEFycmF5LmZyb20oYXRvYihlKSkubWFwKHQ9PnQuY2hhckNvZGVBdCgwKSkpfWZ1bmN0aW9uIFB4ZShlLHQpe3JldHVybiBKU09OLnN0cmluZ2lmeShlLEoxZSx0KX1mdW5jdGlvbiBJeGUoZSl7cmV0dXJuIEpTT04ucGFyc2UoZSxCT3QpfWZ1bmN0aW9uIGkzYShlKXtyZXR1cm4gcU90KGUpJiZlLnR5cGU9PT0iRW5jb2RlZEJ1ZmZlciImJiR4ZShlLmRhdGEpfWZ1bmN0aW9uIG8zYShlKXtyZXR1cm4gcU90KGUpJiZlLnR5cGU9PT0iQnVmZmVyIiYmKEhPdChlLmRhdGEpfHwkeGUoZS5kYXRhKSl8fGUgaW5zdGFuY2VvZiBVaW50OEFycmF5fWZ1bmN0aW9uIEhPdChlKXtyZXR1cm4gQXJyYXkuaXNBcnJheShlKX1mdW5jdGlvbiAkeGUoZSl7cmV0dXJuIHR5cGVvZiBlPT0ic3RyaW5nIn1mdW5jdGlvbiBxT3QoZSl7cmV0dXJuIHR5cGVvZiBlPT0ib2JqZWN0IiYmZSE9PW51bGx9dmFyIEoxZSxCT3Qsak90PWwoKCk9PntFeGUoKTtKMWU9KGUsdCk9PntpZihvM2EodCkpe2xldCByO2lmKCJkYXRhImluIHQmJkhPdCh0LmRhdGEpKXI9bmV3IFVpbnQ4QXJyYXkodC5kYXRhKTtlbHNlIGlmKHQgaW5zdGFuY2VvZiBVaW50OEFycmF5KXI9dDtlbHNlIHJldHVybiB0O3JldHVybnt0eXBlOiJFbmNvZGVkQnVmZmVyIixkYXRhOiJiYXNlNjQ6IityM2Eocil9fXJldHVybiB0fSxCT3Q9KGUsdCk9PntpZihpM2EodCkmJiR4ZSh0LmRhdGEpJiZ0LmRhdGEuc3RhcnRzV2l0aCgiYmFzZTY0OiIpKXtsZXQgcj10LmRhdGEuc2xpY2UoNyk7cmV0dXJuIGEzYShyKX1yZXR1cm4gdH19KTt2YXIgY2M9e307cWUoY2Mse1NtYXJ0anNvbjooKT0+RnhlLGRlZXBFcXVhbEpzb25MU3RyaW5nczooKT0+cDNhLGRlZXBFcXVhbE9iamVjdHM6KCk9PlZPdCxmb2xkRGVjOigpPT5mM2EscGFyc2U6KCk9PmVvZSxwYXJzZUJhc2U2NDooKT0+dTNhLHBhcnNlSnNvbkw6KCk9Pk54ZSxzdGFibGVPbmVXYXlTdHJpbmdpZnk6KCk9PmwzYSxzdHJpbmdpZnk6KCk9Pk02LHN0cmluZ2lmeUJhc2U2NDooKT0+ZDNhLHN0cmluZ2lmeUpzb25MOigpPT5zM2Esc3RyaW5naWZ5UHJldHR5OigpPT5jM2F9KTt2YXIgZW9lLE54ZSxzM2EsbDNhLE02LGMzYSxkM2EsdTNhLEZ4ZSxmM2EsVk90LHAzYSxPeGU9bCgoKT0+e0V4ZSgpO2pPdCgpO2VvZT1JeGUsTnhlPWU9PmUuc3BsaXQoYApgKS5yZWR1Y2UoKGEsaSk9PntsZXQgbz1pLnRyaW0oKTtyZXR1cm4gby5sZW5ndGg+MCYmYS5wdXNoKGVvZShvKSksYX0sW10pLHMzYT1lPT5lLm1hcCh0PT5NNih0KSkuam9pbihgCmApLGwzYT0oZSx0LHI9e30pPT57bGV0IGE9bmV3IFdlYWtTZXQsaT1zPT57aWYocz09PW51bGx8fHR5cGVvZiBzIT0ib2JqZWN0IilyZXR1cm4gcztsZXQgYz1KMWUoIiIscyk7aWYoYyYmYy50eXBlPT09IkVuY29kZWRCdWZmZXIiJiZ0eXBlb2YgYy5kYXRhPT0ic3RyaW5nIilyZXR1cm4gYztpZihhLmhhcyhzKSlyZXR1cm4iX19jeWNsZV9fIjtpZihhLmFkZChzKSxBcnJheS5pc0FycmF5KHMpKXJldHVybiBzLm1hcChmPT5pKGYpKTtsZXQgZD17fTtmb3IobGV0IGYgb2YgT2JqZWN0LmtleXMocykpdHJ5e2RbZl09aShzW2ZdKX1jYXRjaHtkW2ZdPSJfX3Vuc2VyaWFsaXphYmxlX18ifXJldHVybiBkfSxvPWkoZSksbj17Li4ucixjeWNsZXM6ITB9O2lmKHQmJiFuLmNtcCl7bGV0IHM9bmV3IE1hcDt0LmZvckVhY2goKGMsZCk9PnMuc2V0KGMsZCkpLG4uY21wPShjLGQpPT57bGV0IGY9cy5oYXMoYy5rZXkpP3MuZ2V0KGMua2V5KTpOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFksdT1zLmhhcyhkLmtleSk/cy5nZXQoZC5rZXkpOk51bWJlci5QT1NJVElWRV9JTkZJTklUWTtyZXR1cm4gZiE9PXU/Zi11OmMua2V5PGQua2V5Py0xOmMua2V5PmQua2V5PzE6MH19cmV0dXJuIEsxZShvLG4pfSxNNj0oZSx0LHI9e30pPT57bGV0IGE9UHhlKGUpO2U9SlNPTi5wYXJzZShhKTtsZXQgaT17Li4ucn07aWYodCYmIWkuY21wKXtsZXQgbj1uZXcgTWFwO3QuZm9yRWFjaCgocyxjKT0+bi5zZXQocyxjKSksaS5jbXA9KHMsYyk9PntsZXQgZD1uLmhhcyhzLmtleSk/bi5nZXQocy5rZXkpOk51bWJlci5QT1NJVElWRV9JTkZJTklUWSxmPW4uaGFzKGMua2V5KT9uLmdldChjLmtleSk6TnVtYmVyLlBPU0lUSVZFX0lORklOSVRZO3JldHVybiBkIT09Zj9kLWY6cy5rZXk8Yy5rZXk/LTE6cy5rZXk+Yy5rZXk/MTowfX1yZXR1cm4gSzFlKGUsaSl9LGMzYT1lPT57bGV0IHQ9TTYoZSkscj1KU09OLnBhcnNlKHQpO3JldHVybiBKU09OLnN0cmluZ2lmeShyLG51bGwsMil9LGQzYT0oLi4uZSk9PntsZXQgdD1NNiguLi5lKTtyZXR1cm4gZjEuYmFzZTY0LmVuY29kZVVyaSh0KX0sdTNhPWU9PntsZXQgdD1mMS5iYXNlNjQsYT0odC5kZWNvZGVVcml8fHQuZGVjb2RlKShlKTtyZXR1cm4gZW9lKGEpfSxGeGU9Y2xhc3MgZXtzdGF0aWMgZW5mb2xkRnJvbU9iamVjdCh0KXtsZXQgcj1uZXcgdGhpcyxhPXIuc2F2ZWFibGVQcm9wZXJ0aWVzfHxbXTtmb3IobGV0IGkgaW4gdClhLmluZGV4T2YoaSkhPT0tMSYmKHJbaV09dFtpXSk7cmV0dXJuIHJ9c3RhdGljIGVuZm9sZEZyb21Kc29uKHQpe2xldCByPWVvZSh0KTtyZXR1cm4gdGhpcy5lbmZvbGRGcm9tT2JqZWN0KHIpfWZvbGRUb09iamVjdCgpe2xldCB0PW5ldyBTZXQ7cmV0dXJuIHQuYWRkKHRoaXMpLHRoaXMuZm9sZFRvT2JqZWN0SW50ZXJuYWwodCl9Zm9sZFRvT2JqZWN0SW50ZXJuYWwodCl7bGV0IHI9e30sYT1vPT57aWYobyBpbnN0YW5jZW9mIGUpe2lmKHQuaGFzKG8pKXRocm93IG5ldyBFcnJvcigiY3ljbGUgZGV0ZWN0ZWQiKTtyZXR1cm4gdC5hZGQobyksby5mb2xkVG9PYmplY3RJbnRlcm5hbCh0KX1yZXR1cm4gQXJyYXkuaXNBcnJheShvKT9vLm1hcChuPT5hKG4pKTpRMWUuZGVmYXVsdChvKX0saT10aGlzLnNhdmVhYmxlUHJvcGVydGllc3x8W107Zm9yKGxldCBvIG9mIGkpe2xldCBuPXRoaXNbb107cltvXT1hKG4pfXJldHVybiByfWZvbGRUb0pzb24oKXtsZXQgdD10aGlzLmZvbGRUb09iamVjdCgpO3JldHVybiBNNih0KX19LGYzYT0oKT0+KGUsdCk9PntlLnNhdmVhYmxlUHJvcGVydGllc3x8KGUuc2F2ZWFibGVQcm9wZXJ0aWVzPVtdKSxlLnNhdmVhYmxlUHJvcGVydGllcy5wdXNoKHQpfSxWT3Q9KGUsdCk9PntsZXQgcj1NNihlKSxhPU02KHQpO3JldHVybiByPT09YX0scDNhPShlLHQpPT57bGV0IHI9TnhlKGUpLGE9TnhlKHQpO3JldHVybiBWT3QocixhKX19KTt2YXIgZXk9e307cWUoZXkse2RlbGV0ZURCOigpPT5KT3Qsb3BlbkRCOigpPT5LT3QsdW53cmFwOigpPT5Kdix3cmFwOigpPT5HMn0pO2Z1bmN0aW9uIGgzYSgpe3JldHVybiBVT3R8fChVT3Q9W0lEQkRhdGFiYXNlLElEQk9iamVjdFN0b3JlLElEQkluZGV4LElEQkN1cnNvcixJREJUcmFuc2FjdGlvbl0pfWZ1bmN0aW9uIG0zYSgpe3JldHVybiBXT3R8fChXT3Q9W0lEQkN1cnNvci5wcm90b3R5cGUuYWR2YW5jZSxJREJDdXJzb3IucHJvdG90eXBlLmNvbnRpbnVlLElEQkN1cnNvci5wcm90b3R5cGUuY29udGludWVQcmltYXJ5S2V5XSl9ZnVuY3Rpb24gZzNhKGUpe2xldCB0PW5ldyBQcm9taXNlKChyLGEpPT57bGV0IGk9KCk9PntlLnJlbW92ZUV2ZW50TGlzdGVuZXIoInN1Y2Nlc3MiLG8pLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZXJyb3IiLG4pfSxvPSgpPT57cihHMihlLnJlc3VsdCkpLGkoKX0sbj0oKT0+e2EoZS5lcnJvciksaSgpfTtlLmFkZEV2ZW50TGlzdGVuZXIoInN1Y2Nlc3MiLG8pLGUuYWRkRXZlbnRMaXN0ZW5lcigiZXJyb3IiLG4pfSk7cmV0dXJuIHRvZS5zZXQodCxlKSx0fWZ1bmN0aW9uIHgzYShlKXtpZihCeGUuaGFzKGUpKXJldHVybjtsZXQgdD1uZXcgUHJvbWlzZSgocixhKT0+e2xldCBpPSgpPT57ZS5yZW1vdmVFdmVudExpc3RlbmVyKCJjb21wbGV0ZSIsbyksZS5yZW1vdmVFdmVudExpc3RlbmVyKCJlcnJvciIsbiksZS5yZW1vdmVFdmVudExpc3RlbmVyKCJhYm9ydCIsbil9LG89KCk9PntyKCksaSgpfSxuPSgpPT57YShlLmVycm9yfHxuZXcgRE9NRXhjZXB0aW9uKCJBYm9ydEVycm9yIiwiQWJvcnRFcnJvciIpKSxpKCl9O2UuYWRkRXZlbnRMaXN0ZW5lcigiY29tcGxldGUiLG8pLGUuYWRkRXZlbnRMaXN0ZW5lcigiZXJyb3IiLG4pLGUuYWRkRXZlbnRMaXN0ZW5lcigiYWJvcnQiLG4pfSk7QnhlLnNldChlLHQpfWZ1bmN0aW9uIEdPdChlKXtxeGU9ZShxeGUpfWZ1bmN0aW9uIGIzYShlKXtyZXR1cm4gbTNhKCkuaW5jbHVkZXMoZSk/ZnVuY3Rpb24oLi4udCl7cmV0dXJuIGUuYXBwbHkoSnYodGhpcyksdCksRzIodGhpcy5yZXF1ZXN0KX06ZnVuY3Rpb24oLi4udCl7cmV0dXJuIEcyKGUuYXBwbHkoSnYodGhpcyksdCkpfX1mdW5jdGlvbiB2M2EoZSl7cmV0dXJuIHR5cGVvZiBlPT0iZnVuY3Rpb24iP2IzYShlKTooZSBpbnN0YW5jZW9mIElEQlRyYW5zYWN0aW9uJiZ4M2EoZSksUnhlKGUsaDNhKCkpP25ldyBQcm94eShlLHF4ZSk6ZSl9ZnVuY3Rpb24gRzIoZSl7aWYoZSBpbnN0YW5jZW9mIElEQlJlcXVlc3QpcmV0dXJuIGczYShlKTtpZihIeGUuaGFzKGUpKXJldHVybiBIeGUuZ2V0KGUpO2xldCB0PXYzYShlKTtyZXR1cm4gdCE9PWUmJihIeGUuc2V0KGUsdCksdG9lLnNldCh0LGUpKSx0fWZ1bmN0aW9uIEtPdChlLHQse2Jsb2NrZWQ6cix1cGdyYWRlOmEsYmxvY2tpbmc6aSx0ZXJtaW5hdGVkOm99PXt9KXtsZXQgbj1pbmRleGVkREIub3BlbihlLHQpLHM9RzIobik7cmV0dXJuIGEmJm4uYWRkRXZlbnRMaXN0ZW5lcigidXBncmFkZW5lZWRlZCIsYz0+e2EoRzIobi5yZXN1bHQpLGMub2xkVmVyc2lvbixjLm5ld1ZlcnNpb24sRzIobi50cmFuc2FjdGlvbiksYyl9KSxyJiZuLmFkZEV2ZW50TGlzdGVuZXIoImJsb2NrZWQiLGM9PnIoYy5vbGRWZXJzaW9uLGMubmV3VmVyc2lvbixjKSkscy50aGVuKGM9PntvJiZjLmFkZEV2ZW50TGlzdGVuZXIoImNsb3NlIiwoKT0+bygpKSxpJiZjLmFkZEV2ZW50TGlzdGVuZXIoInZlcnNpb25jaGFuZ2UiLGQ9PmkoZC5vbGRWZXJzaW9uLGQubmV3VmVyc2lvbixkKSl9KS5jYXRjaCgoKT0+e30pLHN9ZnVuY3Rpb24gSk90KGUse2Jsb2NrZWQ6dH09e30pe2xldCByPWluZGV4ZWREQi5kZWxldGVEYXRhYmFzZShlKTtyZXR1cm4gdCYmci5hZGRFdmVudExpc3RlbmVyKCJibG9ja2VkIixhPT50KGEub2xkVmVyc2lvbixhKSksRzIocikudGhlbigoKT0+e30pfWZ1bmN0aW9uIFlPdChlLHQpe2lmKCEoZSBpbnN0YW5jZW9mIElEQkRhdGFiYXNlJiYhKHQgaW4gZSkmJnR5cGVvZiB0PT0ic3RyaW5nIikpcmV0dXJuO2lmKGp4ZS5nZXQodCkpcmV0dXJuIGp4ZS5nZXQodCk7bGV0IHI9dC5yZXBsYWNlKC9Gcm9tSW5kZXgkLywiIiksYT10IT09cixpPXczYS5pbmNsdWRlcyhyKTtpZighKHIgaW4oYT9JREJJbmRleDpJREJPYmplY3RTdG9yZSkucHJvdG90eXBlKXx8IShpfHx5M2EuaW5jbHVkZXMocikpKXJldHVybjtsZXQgbz1hc3luYyBmdW5jdGlvbihuLC4uLnMpe2xldCBjPXRoaXMudHJhbnNhY3Rpb24obixpPyJyZWFkd3JpdGUiOiJyZWFkb25seSIpLGQ9Yy5zdG9yZTtyZXR1cm4gYSYmKGQ9ZC5pbmRleChzLnNoaWZ0KCkpKSwoYXdhaXQgUHJvbWlzZS5hbGwoW2Rbcl0oLi4ucyksaSYmYy5kb25lXSkpWzBdfTtyZXR1cm4ganhlLnNldCh0LG8pLG99YXN5bmMgZnVuY3Rpb24qUzNhKC4uLmUpe2xldCB0PXRoaXM7aWYodCBpbnN0YW5jZW9mIElEQkN1cnNvcnx8KHQ9YXdhaXQgdC5vcGVuQ3Vyc29yKC4uLmUpKSwhdClyZXR1cm47dD10O2xldCByPW5ldyBQcm94eSh0LGszYSk7Zm9yKFhPdC5zZXQocix0KSx0b2Uuc2V0KHIsSnYodCkpO3Q7KXlpZWxkIHIsdD1hd2FpdChWeGUuZ2V0KHIpfHx0LmNvbnRpbnVlKCkpLFZ4ZS5kZWxldGUocil9ZnVuY3Rpb24gUU90KGUsdCl7cmV0dXJuIHQ9PT1TeW1ib2wuYXN5bmNJdGVyYXRvciYmUnhlKGUsW0lEQkluZGV4LElEQk9iamVjdFN0b3JlLElEQkN1cnNvcl0pfHx0PT09Iml0ZXJhdGUiJiZSeGUoZSxbSURCSW5kZXgsSURCT2JqZWN0U3RvcmVdKX12YXIgUnhlLFVPdCxXT3QsQnhlLEh4ZSx0b2UscXhlLEp2LHkzYSx3M2EsanhlLE0zYSxaT3QsVnhlLFhPdCxrM2EsZVJ0PWwoKCk9PntSeGU9KGUsdCk9PnQuc29tZShyPT5lIGluc3RhbmNlb2Ygcik7QnhlPW5ldyBXZWFrTWFwLEh4ZT1uZXcgV2Vha01hcCx0b2U9bmV3IFdlYWtNYXA7cXhlPXtnZXQoZSx0LHIpe2lmKGUgaW5zdGFuY2VvZiBJREJUcmFuc2FjdGlvbil7aWYodD09PSJkb25lIilyZXR1cm4gQnhlLmdldChlKTtpZih0PT09InN0b3JlIilyZXR1cm4gci5vYmplY3RTdG9yZU5hbWVzWzFdP3ZvaWQgMDpyLm9iamVjdFN0b3JlKHIub2JqZWN0U3RvcmVOYW1lc1swXSl9cmV0dXJuIEcyKGVbdF0pfSxzZXQoZSx0LHIpe3JldHVybiBlW3RdPXIsITB9LGhhcyhlLHQpe3JldHVybiBlIGluc3RhbmNlb2YgSURCVHJhbnNhY3Rpb24mJih0PT09ImRvbmUifHx0PT09InN0b3JlIik/ITA6dCBpbiBlfX07SnY9ZT0+dG9lLmdldChlKTt5M2E9WyJnZXQiLCJnZXRLZXkiLCJnZXRBbGwiLCJnZXRBbGxLZXlzIiwiY291bnQiXSx3M2E9WyJwdXQiLCJhZGQiLCJkZWxldGUiLCJjbGVhciJdLGp4ZT1uZXcgTWFwO0dPdChlPT4oey4uLmUsZ2V0Oih0LHIsYSk9PllPdCh0LHIpfHxlLmdldCh0LHIsYSksaGFzOih0LHIpPT4hIVlPdCh0LHIpfHxlLmhhcyh0LHIpfSkpO00zYT1bImNvbnRpbnVlIiwiY29udGludWVQcmltYXJ5S2V5IiwiYWR2YW5jZSJdLFpPdD17fSxWeGU9bmV3IFdlYWtNYXAsWE90PW5ldyBXZWFrTWFwLGszYT17Z2V0KGUsdCl7aWYoIU0zYS5pbmNsdWRlcyh0KSlyZXR1cm4gZVt0XTtsZXQgcj1aT3RbdF07cmV0dXJuIHJ8fChyPVpPdFt0XT1mdW5jdGlvbiguLi5hKXtWeGUuc2V0KHRoaXMsWE90LmdldCh0aGlzKVt0XSguLi5hKSl9KSxyfX07R090KGU9Pih7Li4uZSxnZXQodCxyLGEpe3JldHVybiBRT3QodCxyKT9TM2E6ZS5nZXQodCxyLGEpfSxoYXModCxyKXtyZXR1cm4gUU90KHQscil8fGUuaGFzKHQscil9fSkpfSk7dmFyIFV4ZT1sKCgpPT57RnYoKTtYMWUoKTtPeGUoKTtvbygpO04yKCk7d2FlKCk7ZVJ0KCl9KTt2YXIgdHksV3hlPWwoKCk9PntVeGUoKTt0eT1jbGFzc3tjb25zdHJ1Y3Rvcih0KXt0aGlzLmluaXRDYWxsZWQ9ITEsdGhpcy5yZWFkeURlZmVycmVkPWx0LmRlZmVyKCksdGhpcy5vcHRpb25zPXR9YXN5bmMgaW5pdCgpe2lmKHRoaXMuaW5pdENhbGxlZCl7YXdhaXQgdGhpcy5yZWFkeURlZmVycmVkLnByb21pc2U7cmV0dXJufXRoaXMuaW5pdENhbGxlZD0hMDtsZXQgdD1uZXcgbGMuU21hcnRlbnY7aWYoIXQuaXNCcm93c2VyJiYhZ2xvYmFsVGhpcy5pbmRleGVkREImJihjb25zb2xlLmxvZygiaGV5IiksY29uc29sZS5sb2coZ2xvYmFsVGhpcy5pbmRleGVkREIpLGF3YWl0IHQuZ2V0U2FmZU5vZGVNb2R1bGUoImZha2UtaW5kZXhlZGRiL2F1dG8iKSwhZ2xvYmFsVGhpcy5pbmRleGVkREIpKXtsZXQgcj1hd2FpdCB0LmdldFNhZmVOb2RlTW9kdWxlKCJmYWtlLWluZGV4ZWRkYiIpO2dsb2JhbFRoaXMuaW5kZXhlZERCPW5ldyByLklEQkZhY3Rvcnl9dGhpcy5kYj1hd2FpdCBleS5vcGVuREIodGhpcy5vcHRpb25zLmRiTmFtZSwxLHt1cGdyYWRlOnI9PntyLmNyZWF0ZU9iamVjdFN0b3JlKHRoaXMub3B0aW9ucy5zdG9yZU5hbWUpfX0pLHRoaXMucmVhZHlEZWZlcnJlZC5yZXNvbHZlKCl9YXN5bmMgZ2V0KHQpe3JldHVybiBhd2FpdCB0aGlzLmluaXQoKSx0aGlzLmRiLmdldCh0aGlzLm9wdGlvbnMuc3RvcmVOYW1lLHQpfWFzeW5jIGNoZWNrKHQpe3JldHVybiBhd2FpdCB0aGlzLmluaXQoKSwhIWF3YWl0IHRoaXMuZ2V0KHQpfWFzeW5jIHNldCh0LHIpe3JldHVybiBhd2FpdCB0aGlzLmluaXQoKSx0aGlzLmRiLnB1dCh0aGlzLm9wdGlvbnMuc3RvcmVOYW1lLHIsdCl9YXN5bmMgZGVsZXRlKHQpe3JldHVybiBhd2FpdCB0aGlzLmluaXQoKSx0aGlzLmRiLmRlbGV0ZSh0aGlzLm9wdGlvbnMuc3RvcmVOYW1lLHQpfWFzeW5jIGNsZWFyKCl7cmV0dXJuIGF3YWl0IHRoaXMuaW5pdCgpLHRoaXMuZGIuY2xlYXIodGhpcy5vcHRpb25zLnN0b3JlTmFtZSl9YXN5bmMga2V5cygpe3JldHVybiBhd2FpdCB0aGlzLmluaXQoKSx0aGlzLmRiLmdldEFsbEtleXModGhpcy5vcHRpb25zLnN0b3JlTmFtZSl9fX0pO3ZhciBHeGUsclJ0PWwoKCk9PntXeGUoKTtVeGUoKTtHeGU9Y2xhc3N7Y29uc3RydWN0b3IodD0iZGVmYXVsdCIpe3RoaXMud2Vic3RvcmU9bmV3IHR5KHtkYk5hbWU6InRyU3RvcmUiLHN0b3JlTmFtZTpgdHJTdG9yZS0ke3R9YH0pfWJ1aWxkS2V5KHQpe3JldHVybiBjYy5zdHJpbmdpZnkoe21ldGhvZDp0Lm1ldGhvZCxyZXF1ZXN0OnQucmVxdWVzdH0pfWFzeW5jIHNldEJ5UmVxdWVzdCh0KXtpZighdC5yZXNwb25zZSl0aHJvdyBuZXcgRXJyb3IoIllvdSBjYW5ub3Qgc3RvcmUgcmVxdWVzdHMgd2l0aG91dCBhIHJlc3BvbnNlIHByZXNlbnQiKTthd2FpdCB0aGlzLndlYnN0b3JlLnNldCh0aGlzLmJ1aWxkS2V5KHQpLHQpfWFzeW5jIGdldEJ5UmVxdWVzdCh0KXtyZXR1cm4gYXdhaXQgdGhpcy53ZWJzdG9yZS5nZXQodGhpcy5idWlsZEtleSh0KSl9fX0pO3ZhciB3cz17fTtxZSh3cyx7VHlwZWRyZXF1ZXN0Q2FjaGU6KCk9Pkd4ZSxXZWJTdG9yZTooKT0+dHl9KTt2YXIgcm9lPWwoKCk9PntyUnQoKTtXeGUoKX0pO3ZhciByeT1sKCgpPT57czQoKTtheGUoKTtaMWUoKTtvbygpO3JvZSgpfSk7dmFyIHE3LGlvZT1sKCgpPT57cnkoKTtxNz1jbGFzc3tjb25zdHJ1Y3Rvcih0PSJ3ZWJyZXF1ZXN0LXY0IixyPSJjYWNoZSIpe3RoaXMud2Vic3RvcmU9bmV3IHdzLldlYlN0b3JlKHtkYk5hbWU6dCxzdG9yZU5hbWU6cn0pLHRoaXMuaW5pdFByb21pc2U9dGhpcy5pbml0KCl9YXN5bmMgaW5pdCgpe31nZW5lcmF0ZUNhY2hlS2V5KHQpe2xldCByPXQudXJsLGE9dC5tZXRob2Q7cmV0dXJuIGE9PT0iR0VUIj9yOmAke2F9OiR7cn1gfWFzeW5jIHNldCh0LHIpe2F3YWl0IHRoaXMuaW5pdFByb21pc2UsYXdhaXQgdGhpcy53ZWJzdG9yZS5zZXQodCxyKX1hc3luYyBnZXQodCl7YXdhaXQgdGhpcy5pbml0UHJvbWlzZTt0cnl7cmV0dXJuIGF3YWl0IHRoaXMud2Vic3RvcmUuZ2V0KHQpfHxudWxsfWNhdGNoe3JldHVybiBudWxsfX1hc3luYyBoYXModCl7cmV0dXJuIGF3YWl0IHRoaXMuaW5pdFByb21pc2UsYXdhaXQgdGhpcy53ZWJzdG9yZS5jaGVjayh0KX1hc3luYyBkZWxldGUodCl7YXdhaXQgdGhpcy5pbml0UHJvbWlzZSxhd2FpdCB0aGlzLndlYnN0b3JlLmRlbGV0ZSh0KX1hc3luYyBjbGVhcigpe2F3YWl0IHRoaXMuaW5pdFByb21pc2UsYXdhaXQgdGhpcy53ZWJzdG9yZS5jbGVhcigpfXJlc3BvbnNlRnJvbUNhY2hlRW50cnkodCl7bGV0IHI9bmV3IEhlYWRlcnModC5oZWFkZXJzKTtyZXR1cm4gbmV3IFJlc3BvbnNlKHQucmVzcG9uc2Use3N0YXR1czp0LnN0YXR1cyxzdGF0dXNUZXh0OnQuc3RhdHVzVGV4dCxoZWFkZXJzOnJ9KX1hc3luYyBjYWNoZUVudHJ5RnJvbVJlc3BvbnNlKHQscixhKXtsZXQgaT1yLmNsb25lKCksbz1hd2FpdCBpLmFycmF5QnVmZmVyKCksbj17fTtyZXR1cm4gaS5oZWFkZXJzLmZvckVhY2goKHMsYyk9PntuW2NdPXN9KSx7cmVzcG9uc2U6byxoZWFkZXJzOm4sdGltZXN0YW1wOkRhdGUubm93KCksZXRhZzphPy5ldGFnfHxpLmhlYWRlcnMuZ2V0KCJldGFnIil8fHZvaWQgMCxsYXN0TW9kaWZpZWQ6YT8ubGFzdE1vZGlmaWVkfHxpLmhlYWRlcnMuZ2V0KCJsYXN0LW1vZGlmaWVkIil8fHZvaWQgMCxtYXhBZ2U6YT8ubWF4QWdlLHVybDp0LHN0YXR1czppLnN0YXR1cyxzdGF0dXNUZXh0Omkuc3RhdHVzVGV4dH19YXN5bmMgcHJ1bmVFeHBpcmVkKCl7cmV0dXJuIGF3YWl0IHRoaXMuaW5pdFByb21pc2UsMH19fSk7ZnVuY3Rpb24gejNhKGUpe2xldCB0PXttYXhBZ2U6MCxpbW11dGFibGU6ITEsbm9DYWNoZTohMSxub1N0b3JlOiExLG11c3RSZXZhbGlkYXRlOiExfTtpZighZSlyZXR1cm4gdDtsZXQgcj1lLnRvTG93ZXJDYXNlKCkuc3BsaXQoIiwiKS5tYXAoYT0+YS50cmltKCkpO2ZvcihsZXQgYSBvZiByKWlmKGE9PT0ibm8tY2FjaGUiKXQubm9DYWNoZT0hMDtlbHNlIGlmKGE9PT0ibm8tc3RvcmUiKXQubm9TdG9yZT0hMDtlbHNlIGlmKGE9PT0iaW1tdXRhYmxlIil0LmltbXV0YWJsZT0hMDtlbHNlIGlmKGE9PT0ibXVzdC1yZXZhbGlkYXRlIil0Lm11c3RSZXZhbGlkYXRlPSEwO2Vsc2UgaWYoYS5zdGFydHNXaXRoKCJtYXgtYWdlPSIpKXtsZXQgaT1wYXJzZUludChhLnNwbGl0KCI9IilbMV0sMTApO2lzTmFOKGkpfHwodC5tYXhBZ2U9aSoxZTMpfXJldHVybiB0fWZ1bmN0aW9uIEMzYShlKXtpZihlKXRyeXtyZXR1cm4gbmV3IERhdGUoZSkuZ2V0VGltZSgpfWNhdGNoe3JldHVybn19ZnVuY3Rpb24gWTIoZSl7bGV0IHQ9ZS5nZXQoImNhY2hlLWNvbnRyb2wiKSxyPWUuZ2V0KCJleHBpcmVzIiksYT1lLmdldCgiZXRhZyIpLGk9ZS5nZXQoImxhc3QtbW9kaWZpZWQiKSxvPXozYSh0KTtpZihvLm1heEFnZT09PTAmJnIpe2xldCBuPUMzYShyKTtuJiYoby5tYXhBZ2U9TWF0aC5tYXgoMCxuLURhdGUubm93KCkpKX1yZXR1cm57bWF4QWdlOm8ubWF4QWdlfHwwLGV0YWc6YXx8dm9pZCAwLGxhc3RNb2RpZmllZDppfHx2b2lkIDAsaW1tdXRhYmxlOm8uaW1tdXRhYmxlfHwhMSxub0NhY2hlOm8ubm9DYWNoZXx8ITEsbm9TdG9yZTpvLm5vU3RvcmV8fCExLG11c3RSZXZhbGlkYXRlOm8ubXVzdFJldmFsaWRhdGV8fCExfX1mdW5jdGlvbiBheShlLHQpe2lmKHQubm9TdG9yZSlyZXR1cm4hMTtpZih0LmltbXV0YWJsZSlyZXR1cm4hMDtsZXQgcj1EYXRlLm5vdygpLWUudGltZXN0YW1wLGE9ZS5tYXhBZ2V8fHQubWF4QWdlfHwwO3JldHVybiBhPT09MD8hMTpyPGF9ZnVuY3Rpb24gaXkoZSl7cmV0dXJuIGUubm9DYWNoZXx8ZS5tdXN0UmV2YWxpZGF0ZX1mdW5jdGlvbiBvb2UoZSl7bGV0IHQ9e307cmV0dXJuIGUuZXRhZyYmKHRbImlmLW5vbmUtbWF0Y2giXT1lLmV0YWcpLGUubGFzdE1vZGlmaWVkJiYodFsiaWYtbW9kaWZpZWQtc2luY2UiXT1lLmxhc3RNb2RpZmllZCksdH1mdW5jdGlvbiBub2UoZSl7bGV0IHQ9e307cmV0dXJuIGUuZm9yRWFjaCgocixhKT0+e3RbYV09cn0pLHR9ZnVuY3Rpb24gYVJ0KGUpe2xldCB0PW5ldyBIZWFkZXJzO3JldHVybiBPYmplY3QuZW50cmllcyhlKS5mb3JFYWNoKChbcixhXSk9Pnt0LnNldChyLGEpfSksdH12YXIgc29lPWwoKCk9Pnt9KTtmdW5jdGlvbiBpUnQoZSl7c3dpdGNoKGUpe2Nhc2UibmV0d29yay1maXJzdCI6cmV0dXJuIG5ldyBsb2U7Y2FzZSJjYWNoZS1maXJzdCI6cmV0dXJuIG5ldyBZeGU7Y2FzZSJzdGFsZS13aGlsZS1yZXZhbGlkYXRlIjpyZXR1cm4gbmV3IFp4ZTtjYXNlIm5ldHdvcmstb25seSI6cmV0dXJuIG5ldyBYeGU7Y2FzZSJjYWNoZS1vbmx5IjpyZXR1cm4gbmV3IFF4ZTtkZWZhdWx0OnJldHVybiBuZXcgbG9lfX12YXIgbG9lLFl4ZSxaeGUsWHhlLFF4ZSxvUnQ9bCgoKT0+e2lvZSgpO3NvZSgpO2xvZT1jbGFzc3thc3luYyBleGVjdXRlKHQpe3RyeXtsZXQgcj1hd2FpdCB0LmZldGNoRm4odC5yZXF1ZXN0KTtyZXR1cm4gci5vayYmYXdhaXQgdGhpcy5jYWNoZVJlc3BvbnNlKHQscikse3Jlc3BvbnNlOnIsZnJvbUNhY2hlOiExLHJldmFsaWRhdGVkOiExfX1jYXRjaChyKXt0LmxvZ2dpbmcmJmNvbnNvbGUubG9nKCJbd2VicmVxdWVzdF0gTmV0d29yayBmYWlsZWQsIHRyeWluZyBjYWNoZToiLHIpO2xldCBhPWF3YWl0IHQuY2FjaGVTdG9yZS5nZXQodC5jYWNoZUtleSk7aWYoYSlyZXR1cm57cmVzcG9uc2U6dC5jYWNoZVN0b3JlLnJlc3BvbnNlRnJvbUNhY2hlRW50cnkoYSksZnJvbUNhY2hlOiEwLHJldmFsaWRhdGVkOiExfTt0aHJvdyByfX1hc3luYyBjYWNoZVJlc3BvbnNlKHQscil7bGV0IGE9WTIoci5oZWFkZXJzKTtpZihhLm5vU3RvcmUpcmV0dXJuO2xldCBpPWF3YWl0IHQuY2FjaGVTdG9yZS5jYWNoZUVudHJ5RnJvbVJlc3BvbnNlKHQucmVxdWVzdC51cmwscixhKTthd2FpdCB0LmNhY2hlU3RvcmUuc2V0KHQuY2FjaGVLZXksaSl9fSxZeGU9Y2xhc3N7YXN5bmMgZXhlY3V0ZSh0KXtsZXQgcj1hd2FpdCB0LmNhY2hlU3RvcmUuZ2V0KHQuY2FjaGVLZXkpO2lmKHIpe2xldCBvPVkyKG5ldyBIZWFkZXJzKHIuaGVhZGVycykpO2lmKGF5KHIsbykpcmV0dXJuIHQubG9nZ2luZyYmY29uc29sZS5sb2coIlt3ZWJyZXF1ZXN0XSBDYWNoZSBoaXQgKGZyZXNoKToiLHQucmVxdWVzdC51cmwpLHtyZXNwb25zZTp0LmNhY2hlU3RvcmUucmVzcG9uc2VGcm9tQ2FjaGVFbnRyeShyKSxmcm9tQ2FjaGU6ITAscmV2YWxpZGF0ZWQ6ITF9O2lmKGl5KG8pJiYoci5ldGFnfHxyLmxhc3RNb2RpZmllZCkpcmV0dXJuIGF3YWl0IHRoaXMucmV2YWxpZGF0ZSh0LHIpfXQubG9nZ2luZyYmY29uc29sZS5sb2coIlt3ZWJyZXF1ZXN0XSBDYWNoZSBtaXNzLCBmZXRjaGluZzoiLHQucmVxdWVzdC51cmwpO2xldCBhPWF3YWl0IHQuZmV0Y2hGbih0LnJlcXVlc3QpLGk9WTIoYS5oZWFkZXJzKTtpZighaS5ub1N0b3JlKXtsZXQgbz1hd2FpdCB0LmNhY2hlU3RvcmUuY2FjaGVFbnRyeUZyb21SZXNwb25zZSh0LnJlcXVlc3QudXJsLGEsaSk7YXdhaXQgdC5jYWNoZVN0b3JlLnNldCh0LmNhY2hlS2V5LG8pfXJldHVybntyZXNwb25zZTphLGZyb21DYWNoZTohMSxyZXZhbGlkYXRlZDohMX19YXN5bmMgcmV2YWxpZGF0ZSh0LHIpe2xldCBhPW9vZShyKSxpPW5ldyBSZXF1ZXN0KHQucmVxdWVzdC51cmwse21ldGhvZDp0LnJlcXVlc3QubWV0aG9kLGhlYWRlcnM6ey4uLm5vZSh0LnJlcXVlc3QuaGVhZGVycyksLi4uYX19KTt0cnl7bGV0IG89YXdhaXQgdC5mZXRjaEZuKGkpO2lmKG8uc3RhdHVzPT09MzA0KXJldHVybiB0LmxvZ2dpbmcmJmNvbnNvbGUubG9nKCJbd2VicmVxdWVzdF0gQ2FjaGUgcmV2YWxpZGF0ZWQgKDMwNCk6Iix0LnJlcXVlc3QudXJsKSxyLnRpbWVzdGFtcD1EYXRlLm5vdygpLGF3YWl0IHQuY2FjaGVTdG9yZS5zZXQodC5jYWNoZUtleSxyKSx7cmVzcG9uc2U6dC5jYWNoZVN0b3JlLnJlc3BvbnNlRnJvbUNhY2hlRW50cnkociksZnJvbUNhY2hlOiEwLHJldmFsaWRhdGVkOiEwfTtpZihvLm9rKXtsZXQgbj1ZMihvLmhlYWRlcnMpO2lmKCFuLm5vU3RvcmUpe2xldCBzPWF3YWl0IHQuY2FjaGVTdG9yZS5jYWNoZUVudHJ5RnJvbVJlc3BvbnNlKHQucmVxdWVzdC51cmwsbyxuKTthd2FpdCB0LmNhY2hlU3RvcmUuc2V0KHQuY2FjaGVLZXkscyl9fXJldHVybntyZXNwb25zZTpvLGZyb21DYWNoZTohMSxyZXZhbGlkYXRlZDohMH19Y2F0Y2gobyl7cmV0dXJuIHQubG9nZ2luZyYmY29uc29sZS5sb2coIlt3ZWJyZXF1ZXN0XSBSZXZhbGlkYXRpb24gZmFpbGVkLCB1c2luZyBjYWNoZToiLG8pLHtyZXNwb25zZTp0LmNhY2hlU3RvcmUucmVzcG9uc2VGcm9tQ2FjaGVFbnRyeShyKSxmcm9tQ2FjaGU6ITAscmV2YWxpZGF0ZWQ6ITF9fX19LFp4ZT1jbGFzc3thc3luYyBleGVjdXRlKHQpe2xldCByPWF3YWl0IHQuY2FjaGVTdG9yZS5nZXQodC5jYWNoZUtleSk7aWYocil7bGV0IG89dC5jYWNoZVN0b3JlLnJlc3BvbnNlRnJvbUNhY2hlRW50cnkocik7cmV0dXJuIHRoaXMucmV2YWxpZGF0ZUluQmFja2dyb3VuZCh0LHIpLmNhdGNoKG49Pnt0LmxvZ2dpbmcmJmNvbnNvbGUud2FybigiW3dlYnJlcXVlc3RdIEJhY2tncm91bmQgcmV2YWxpZGF0aW9uIGZhaWxlZDoiLG4pfSkse3Jlc3BvbnNlOm8sZnJvbUNhY2hlOiEwLHJldmFsaWRhdGVkOiExfX1sZXQgYT1hd2FpdCB0LmZldGNoRm4odC5yZXF1ZXN0KSxpPVkyKGEuaGVhZGVycyk7aWYoIWkubm9TdG9yZSYmYS5vayl7bGV0IG89YXdhaXQgdC5jYWNoZVN0b3JlLmNhY2hlRW50cnlGcm9tUmVzcG9uc2UodC5yZXF1ZXN0LnVybCxhLGkpO2F3YWl0IHQuY2FjaGVTdG9yZS5zZXQodC5jYWNoZUtleSxvKX1yZXR1cm57cmVzcG9uc2U6YSxmcm9tQ2FjaGU6ITEscmV2YWxpZGF0ZWQ6ITF9fWFzeW5jIHJldmFsaWRhdGVJbkJhY2tncm91bmQodCxyKXtsZXQgYT1ZMihuZXcgSGVhZGVycyhyLmhlYWRlcnMpKTtpZighKGF5KHIsYSkmJiFpeShhKSkpdHJ5e2xldCBpPWF3YWl0IHQuZmV0Y2hGbih0LnJlcXVlc3QpO2lmKGkub2spe2xldCBvPVkyKGkuaGVhZGVycyk7aWYoIW8ubm9TdG9yZSl7bGV0IG49YXdhaXQgdC5jYWNoZVN0b3JlLmNhY2hlRW50cnlGcm9tUmVzcG9uc2UodC5yZXF1ZXN0LnVybCxpLG8pO2F3YWl0IHQuY2FjaGVTdG9yZS5zZXQodC5jYWNoZUtleSxuKSx0LmxvZ2dpbmcmJmNvbnNvbGUubG9nKCJbd2VicmVxdWVzdF0gQmFja2dyb3VuZCByZXZhbGlkYXRpb24gY29tcGxldGU6Iix0LnJlcXVlc3QudXJsKX19fWNhdGNoKGkpe3QubG9nZ2luZyYmY29uc29sZS53YXJuKCJbd2VicmVxdWVzdF0gQmFja2dyb3VuZCByZXZhbGlkYXRpb24gZmFpbGVkOiIsaSl9fX0sWHhlPWNsYXNze2FzeW5jIGV4ZWN1dGUodCl7cmV0dXJue3Jlc3BvbnNlOmF3YWl0IHQuZmV0Y2hGbih0LnJlcXVlc3QpLGZyb21DYWNoZTohMSxyZXZhbGlkYXRlZDohMX19fSxReGU9Y2xhc3N7YXN5bmMgZXhlY3V0ZSh0KXtsZXQgcj1hd2FpdCB0LmNhY2hlU3RvcmUuZ2V0KHQuY2FjaGVLZXkpO2lmKCFyKXRocm93IG5ldyBFcnJvcihgQ2FjaGUgbWlzcyBmb3IgJHt0LnJlcXVlc3QudXJsfSAoY2FjaGUtb25seSBtb2RlKWApO3JldHVybntyZXNwb25zZTp0LmNhY2hlU3RvcmUucmVzcG9uc2VGcm9tQ2FjaGVFbnRyeShyKSxmcm9tQ2FjaGU6ITAscmV2YWxpZGF0ZWQ6ITF9fX19KTt2YXIgajcsS3hlPWwoKCk9Pntpb2UoKTtvUnQoKTtzb2UoKTtqNz1jbGFzc3tjb25zdHJ1Y3Rvcih0LHIpe3RoaXMuY2FjaGVTdG9yZT1uZXcgcTcodCxyKX1hc3luYyBleGVjdXRlKHQscixhKXtsZXQgaT10aGlzLmRldGVybWluZVN0cmF0ZWd5KHQscik7aWYoaT09PSJuZXR3b3JrLW9ubHkiKXJldHVybntyZXNwb25zZTphd2FpdCBhKHQpLGZyb21DYWNoZTohMSxyZXZhbGlkYXRlZDohMX07bGV0IG89dGhpcy5nZW5lcmF0ZUNhY2hlS2V5KHQsciksbj1pUnQoaSkscz17cmVxdWVzdDp0LGNhY2hlS2V5Om8sY2FjaGVTdG9yZTp0aGlzLmNhY2hlU3RvcmUsZmV0Y2hGbjphLGxvZ2dpbmc6ci5sb2dnaW5nfTtyZXR1cm4gYXdhaXQgbi5leGVjdXRlKHMpfWRldGVybWluZVN0cmF0ZWd5KHQscil7cmV0dXJuIHIuY2FjaGVTdHJhdGVneT9yLmNhY2hlU3RyYXRlZ3k6ci5jYWNoZT90aGlzLm1hcENhY2hlTW9kZVRvU3RyYXRlZ3koci5jYWNoZSk6dC5jYWNoZT90aGlzLm1hcENhY2hlTW9kZVRvU3RyYXRlZ3kodC5jYWNoZSk6Im5ldHdvcmstZmlyc3QifW1hcENhY2hlTW9kZVRvU3RyYXRlZ3kodCl7c3dpdGNoKHQpe2Nhc2UiZGVmYXVsdCI6cmV0dXJuIm5ldHdvcmstZmlyc3QiO2Nhc2Uibm8tc3RvcmUiOmNhc2UicmVsb2FkIjpyZXR1cm4ibmV0d29yay1vbmx5IjtjYXNlIm5vLWNhY2hlIjpyZXR1cm4ibmV0d29yay1maXJzdCI7Y2FzZSJmb3JjZS1jYWNoZSI6cmV0dXJuImNhY2hlLWZpcnN0IjtjYXNlIm9ubHktaWYtY2FjaGVkIjpyZXR1cm4iY2FjaGUtb25seSI7ZGVmYXVsdDpyZXR1cm4ibmV0d29yay1maXJzdCJ9fWdlbmVyYXRlQ2FjaGVLZXkodCxyKXtyZXR1cm4gci5jYWNoZUtleT90eXBlb2Ygci5jYWNoZUtleT09ImZ1bmN0aW9uIj9yLmNhY2hlS2V5KHQpOnIuY2FjaGVLZXk6dGhpcy5jYWNoZVN0b3JlLmdlbmVyYXRlQ2FjaGVLZXkodCl9YXN5bmMgY2xlYXIoKXthd2FpdCB0aGlzLmNhY2hlU3RvcmUuY2xlYXIoKX1hc3luYyBkZWxldGUodCl7YXdhaXQgdGhpcy5jYWNoZVN0b3JlLmRlbGV0ZSh0KX1hc3luYyBoYXModCl7cmV0dXJuIGF3YWl0IHRoaXMuY2FjaGVTdG9yZS5oYXModCl9Z2V0U3RvcmUoKXtyZXR1cm4gdGhpcy5jYWNoZVN0b3JlfX19KTtmdW5jdGlvbiBuUnQoZSl7c3dpdGNoKGUpe2Nhc2UiZXhwb25lbnRpYWwiOnJldHVybiBuZXcgY29lO2Nhc2UibGluZWFyIjpyZXR1cm4gbmV3IEp4ZTtjYXNlImNvbnN0YW50IjpyZXR1cm4gbmV3IGViZTtkZWZhdWx0OnJldHVybiBuZXcgY29lfX1mdW5jdGlvbiBzUnQoZSx0PS4xKXtsZXQgcj1lKnQqTWF0aC5yYW5kb20oKTtyZXR1cm4gZStyfXZhciBjb2UsSnhlLGViZSxsUnQ9bCgoKT0+e2NvZT1jbGFzc3tjYWxjdWxhdGUodCxyLGEpe2xldCBpPXIqTWF0aC5wb3coMix0LTEpO3JldHVybiBNYXRoLm1pbihpLGEpfX0sSnhlPWNsYXNze2NhbGN1bGF0ZSh0LHIsYSl7bGV0IGk9cip0O3JldHVybiBNYXRoLm1pbihpLGEpfX0sZWJlPWNsYXNze2NhbGN1bGF0ZSh0LHIsYSl7cmV0dXJuIE1hdGgubWluKHIsYSl9fX0pO3ZhciBWNyx0YmU9bCgoKT0+e3J5KCk7bFJ0KCk7Vjc9Y2xhc3N7Y29uc3RydWN0b3IodD17fSl7dGhpcy5vcHRpb25zPXttYXhBdHRlbXB0czp0Lm1heEF0dGVtcHRzPz8zLGJhY2tvZmY6dC5iYWNrb2ZmPz8iZXhwb25lbnRpYWwiLGluaXRpYWxEZWxheTp0LmluaXRpYWxEZWxheT8/MWUzLG1heERlbGF5OnQubWF4RGVsYXk/PzNlNCxyZXRyeU9uOnQucmV0cnlPbj8/WzQwOCw0MjksNTAwLDUwMiw1MDMsNTA0XSxvblJldHJ5OnQub25SZXRyeT8/KCgpPT57fSl9fWFzeW5jIGV4ZWN1dGUodCxyKXtsZXQgYSxpO2ZvcihsZXQgbz0xO288PXRoaXMub3B0aW9ucy5tYXhBdHRlbXB0cztvKyspdHJ5e2xldCBuPWF3YWl0IHQoKTtpZihuIGluc3RhbmNlb2YgUmVzcG9uc2UmJnRoaXMuc2hvdWxkUmV0cnlSZXNwb25zZShuKSl7aWYoaT1uLG89PT10aGlzLm9wdGlvbnMubWF4QXR0ZW1wdHMpcmV0dXJuIG47bGV0IHM9dGhpcy5jYWxjdWxhdGVEZWxheShvKTt0aGlzLm9wdGlvbnMub25SZXRyeShvLG5ldyBFcnJvcihgSFRUUCAke24uc3RhdHVzfWApLHMpLGF3YWl0IHRoaXMuZGVsYXkocyk7Y29udGludWV9cmV0dXJuIG59Y2F0Y2gobil7YT1uIGluc3RhbmNlb2YgRXJyb3I/bjpuZXcgRXJyb3IoU3RyaW5nKG4pKTtsZXQgcz1yP3IobixvKTp0aGlzLnNob3VsZFJldHJ5RXJyb3Iobik7aWYobz09PXRoaXMub3B0aW9ucy5tYXhBdHRlbXB0c3x8IXMpdGhyb3cgYTtsZXQgYz10aGlzLmNhbGN1bGF0ZURlbGF5KG8pO3RoaXMub3B0aW9ucy5vblJldHJ5KG8sYSxjKSxhd2FpdCB0aGlzLmRlbGF5KGMpfXRocm93IGF8fG5ldyBFcnJvcigiTWF4IHJldHJ5IGF0dGVtcHRzIHJlYWNoZWQiKX1hc3luYyBleGVjdXRlV2l0aEZhbGxiYWNrcyh0LHIsYSl7aWYodC5sZW5ndGg9PT0wKXRocm93IG5ldyBFcnJvcigiTm8gVVJMcyBwcm92aWRlZCBmb3IgZmFsbGJhY2sgZXhlY3V0aW9uIik7bGV0IGksbz1bXTtmb3IobGV0IG4gb2YgdCl0cnl7bGV0IHM9YXdhaXQgdGhpcy5leGVjdXRlKGFzeW5jKCk9PmF3YWl0IGEobixyKSk7aWYocy5zdGF0dXM8NDAwfHxzLnN0YXR1cz49NDAwJiZzLnN0YXR1czw1MDAmJnMuc3RhdHVzIT09NDA4KXJldHVybiBzO28ucHVzaChuKSxpPW5ldyBFcnJvcihgUmVxdWVzdCBmYWlsZWQgd2l0aCBzdGF0dXMgJHtzLnN0YXR1c31gKX1jYXRjaChzKXtvLnB1c2gobiksaT1zIGluc3RhbmNlb2YgRXJyb3I/czpuZXcgRXJyb3IoU3RyaW5nKHMpKX10aHJvdyBuZXcgRXJyb3IoYEFsbCBVUkxzIGZhaWxlZDogJHtvLmpvaW4oIiwgIil9LiBMYXN0IGVycm9yOiAke2k/Lm1lc3NhZ2V8fCJVbmtub3duIGVycm9yIn1gKX1zaG91bGRSZXRyeVJlc3BvbnNlKHQpe2xldCByPXRoaXMub3B0aW9ucy5yZXRyeU9uO3JldHVybiB0eXBlb2Ygcj09ImZ1bmN0aW9uIj9yKHQpOkFycmF5LmlzQXJyYXkocik/ci5pbmNsdWRlcyh0LnN0YXR1cyk6ITF9c2hvdWxkUmV0cnlFcnJvcih0KXtpZih0IGluc3RhbmNlb2YgVHlwZUVycm9yJiZ0Lm1lc3NhZ2UuaW5jbHVkZXMoImZldGNoIil8fHQubmFtZT09PSJBYm9ydEVycm9yInx8dC5tZXNzYWdlLmluY2x1ZGVzKCJ0aW1lb3V0IikpcmV0dXJuITA7bGV0IHI9dGhpcy5vcHRpb25zLnJldHJ5T247cmV0dXJuIHR5cGVvZiByPT0iZnVuY3Rpb24iP3Iodm9pZCAwLHQpOiExfWNhbGN1bGF0ZURlbGF5KHQpe2xldCBhPW5SdCh0aGlzLm9wdGlvbnMuYmFja29mZikuY2FsY3VsYXRlKHQsdGhpcy5vcHRpb25zLmluaXRpYWxEZWxheSx0aGlzLm9wdGlvbnMubWF4RGVsYXkpO3JldHVybiBzUnQoYSl9YXN5bmMgZGVsYXkodCl7YXdhaXQgUXQuZGVsYXlGb3IodCl9fX0pO3ZhciBVNyxyYmU9bCgoKT0+e3J5KCk7VTc9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLmluRmxpZ2h0UmVxdWVzdHM9bmV3IE1hcH1nZW5lcmF0ZUtleSh0KXtsZXQgcj10LnVybCxhPXQubWV0aG9kO3JldHVybiBhPT09IkdFVCJ8fGE9PT0iSEVBRCI/YCR7YX06JHtyfWA6YCR7YX06JHtyfToke0RhdGUubm93KCl9YH1hc3luYyBleGVjdXRlKHQscil7bGV0IGE9dGhpcy5pbkZsaWdodFJlcXVlc3RzLmdldCh0KTtpZihhKXJldHVybntyZXNwb25zZTooYXdhaXQgYS5wcm9taXNlKS5jbG9uZSgpLHdhc0RlZHVwbGljYXRlZDohMH07bGV0IGk9bHQuZGVmZXIoKTt0aGlzLmluRmxpZ2h0UmVxdWVzdHMuc2V0KHQsaSk7dHJ5e2xldCBvPWF3YWl0IHIoKTtyZXR1cm4gaS5yZXNvbHZlKG8pLHRoaXMuaW5GbGlnaHRSZXF1ZXN0cy5kZWxldGUodCkse3Jlc3BvbnNlOm8sd2FzRGVkdXBsaWNhdGVkOiExfX1jYXRjaChvKXt0aHJvdyBpLnJlamVjdChvKSx0aGlzLmluRmxpZ2h0UmVxdWVzdHMuZGVsZXRlKHQpLG99fWlzSW5GbGlnaHQodCl7cmV0dXJuIHRoaXMuaW5GbGlnaHRSZXF1ZXN0cy5oYXModCl9Z2V0SW5GbGlnaHRDb3VudCgpe3JldHVybiB0aGlzLmluRmxpZ2h0UmVxdWVzdHMuc2l6ZX1jbGVhcigpe3RoaXMuaW5GbGlnaHRSZXF1ZXN0cy5jbGVhcigpfX19KTtmdW5jdGlvbiBfM2EoZSl7bGV0IHQ9bmV3IEFib3J0Q29udHJvbGxlcixyPW5ldyBRdC5UaW1lb3V0KGUsbnVsbCk7cmV0dXJuIHIucHJvbWlzZS50aGVuKCgpPT57dC5hYm9ydCgpfSkse2NvbnRyb2xsZXI6dCxjbGVhbnVwOigpPT57ci5jYW5jZWwoKX19fWFzeW5jIGZ1bmN0aW9uIGFiZShlLHQscil7bGV0e2NvbnRyb2xsZXI6YSxjbGVhbnVwOml9PV8zYShyKTt0cnl7bGV0IG89YXdhaXQgZmV0Y2goZSx7Li4udCxzaWduYWw6YS5zaWduYWx9KTtyZXR1cm4gaSgpLG99Y2F0Y2gobyl7dGhyb3cgaSgpLG8gaW5zdGFuY2VvZiBFcnJvciYmby5uYW1lPT09IkFib3J0RXJyb3IiP25ldyBFcnJvcihgUmVxdWVzdCB0aW1lb3V0IGFmdGVyICR7cn1tczogJHtlfWApOm99fXZhciBjUnQ9bCgoKT0+e3J5KCl9KTt2YXIgazYsaWJlPWwoKCk9Pnt0eGUoKTtLeGUoKTt0YmUoKTtyYmUoKTtjUnQoKTtrNj1jbGFzc3tjb25zdHJ1Y3Rvcih0PXt9KXt0aGlzLmRlZmF1bHRPcHRpb25zPXQsdGhpcy5pbnRlcmNlcHRvck1hbmFnZXI9bmV3IFA3LHRoaXMuY2FjaGVNYW5hZ2VyPW5ldyBqNyx0aGlzLmRlZHVwbGljYXRvcj1uZXcgVTd9YWRkUmVxdWVzdEludGVyY2VwdG9yKHQpe3RoaXMuaW50ZXJjZXB0b3JNYW5hZ2VyLmFkZFJlcXVlc3RJbnRlcmNlcHRvcih0KX1hZGRSZXNwb25zZUludGVyY2VwdG9yKHQpe3RoaXMuaW50ZXJjZXB0b3JNYW5hZ2VyLmFkZFJlc3BvbnNlSW50ZXJjZXB0b3IodCl9YWRkRXJyb3JJbnRlcmNlcHRvcih0KXt0aGlzLmludGVyY2VwdG9yTWFuYWdlci5hZGRFcnJvckludGVyY2VwdG9yKHQpfXJlbW92ZVJlcXVlc3RJbnRlcmNlcHRvcih0KXt0aGlzLmludGVyY2VwdG9yTWFuYWdlci5yZW1vdmVSZXF1ZXN0SW50ZXJjZXB0b3IodCl9cmVtb3ZlUmVzcG9uc2VJbnRlcmNlcHRvcih0KXt0aGlzLmludGVyY2VwdG9yTWFuYWdlci5yZW1vdmVSZXNwb25zZUludGVyY2VwdG9yKHQpfXJlbW92ZUVycm9ySW50ZXJjZXB0b3IodCl7dGhpcy5pbnRlcmNlcHRvck1hbmFnZXIucmVtb3ZlRXJyb3JJbnRlcmNlcHRvcih0KX1jbGVhckludGVyY2VwdG9ycygpe3RoaXMuaW50ZXJjZXB0b3JNYW5hZ2VyLmNsZWFyQWxsKCl9YXN5bmMgY2xlYXJDYWNoZSgpe2F3YWl0IHRoaXMuY2FjaGVNYW5hZ2VyLmNsZWFyKCl9YXN5bmMgcmVxdWVzdCh0LHI9e30pe2xldCBhPXsuLi50aGlzLmRlZmF1bHRPcHRpb25zLC4uLnJ9LGk7aWYodHlwZW9mIHQ9PSJzdHJpbmciP2k9bmV3IFJlcXVlc3QodCxhKTppPXQsaT1hd2FpdCB0aGlzLmludGVyY2VwdG9yTWFuYWdlci5wcm9jZXNzUmVxdWVzdChpKSxhLmludGVyY2VwdG9ycz8ucmVxdWVzdClmb3IobGV0IG4gb2YgYS5pbnRlcmNlcHRvcnMucmVxdWVzdClpPWF3YWl0IG4oaSk7aWYoYS5kZWR1cGxpY2F0ZT8/ITEpe2xldCBuPXRoaXMuZGVkdXBsaWNhdG9yLmdlbmVyYXRlS2V5KGkpO3JldHVybihhd2FpdCB0aGlzLmRlZHVwbGljYXRvci5leGVjdXRlKG4sYXN5bmMoKT0+YXdhaXQgdGhpcy5leGVjdXRlUmVxdWVzdChpLGEpKSkucmVzcG9uc2V9cmV0dXJuIGF3YWl0IHRoaXMuZXhlY3V0ZVJlcXVlc3QoaSxhKX1hc3luYyBleGVjdXRlUmVxdWVzdCh0LHIpe3RyeXtsZXQgYT10eXBlb2Ygci5yZXRyeT09Im9iamVjdCI/ci5yZXRyeTpyLnJldHJ5P3t9OnZvaWQgMCxpPWFzeW5jIHM9PntsZXQgYz1yLnRpbWVvdXQ/PzZlNDtyZXR1cm4gYXdhaXQgYWJlKHMudXJsLHttZXRob2Q6cy5tZXRob2QsaGVhZGVyczpzLmhlYWRlcnMsYm9keTpzLmJvZHksLi4ucn0sYyl9LG89YXN5bmMocyxjKT0+e2xldCBkPXIudGltZW91dD8/NmU0O3JldHVybiBhd2FpdCBhYmUocyxjLGQpfSxuO2lmKGEpe2xldCBzPW5ldyBWNyhhKTtpZihyLmZhbGxiYWNrVXJscyYmci5mYWxsYmFja1VybHMubGVuZ3RoPjApe2xldCBjPVt0LnVybCwuLi5yLmZhbGxiYWNrVXJsc107bj1hd2FpdCBzLmV4ZWN1dGVXaXRoRmFsbGJhY2tzKGMse21ldGhvZDp0Lm1ldGhvZCxoZWFkZXJzOnQuaGVhZGVycyxib2R5OnQuYm9keSwuLi5yfSxvKX1lbHNlIG49YXdhaXQgcy5leGVjdXRlKGFzeW5jKCk9Pihhd2FpdCB0aGlzLmNhY2hlTWFuYWdlci5leGVjdXRlKHQscixpKSkucmVzcG9uc2UpfWVsc2Ugbj0oYXdhaXQgdGhpcy5jYWNoZU1hbmFnZXIuZXhlY3V0ZSh0LHIsaSkpLnJlc3BvbnNlO2lmKG49YXdhaXQgdGhpcy5pbnRlcmNlcHRvck1hbmFnZXIucHJvY2Vzc1Jlc3BvbnNlKG4pLHIuaW50ZXJjZXB0b3JzPy5yZXNwb25zZSlmb3IobGV0IHMgb2Ygci5pbnRlcmNlcHRvcnMucmVzcG9uc2Upbj1hd2FpdCBzKG4pO3JldHVybiBufWNhdGNoKGEpe3Rocm93IGF3YWl0IHRoaXMuaW50ZXJjZXB0b3JNYW5hZ2VyLnByb2Nlc3NFcnJvcihhIGluc3RhbmNlb2YgRXJyb3I/YTpuZXcgRXJyb3IoU3RyaW5nKGEpKSl9fWFzeW5jIGdldEpzb24odCxyPXt9KXtsZXQgYT1hd2FpdCB0aGlzLnJlcXVlc3QodCx7Li4ucixtZXRob2Q6IkdFVCIsaGVhZGVyczp7QWNjZXB0OiJhcHBsaWNhdGlvbi9qc29uIiwuLi5yLmhlYWRlcnN8fHt9fX0pO2lmKCFhLm9rKXRocm93IG5ldyBFcnJvcihgSFRUUCAke2Euc3RhdHVzfTogJHthLnN0YXR1c1RleHR9YCk7cmV0dXJuIGF3YWl0IGEuanNvbigpfWFzeW5jIHBvc3RKc29uKHQscixhPXt9KXtsZXQgaT1hd2FpdCB0aGlzLnJlcXVlc3QodCx7Li4uYSxtZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIixBY2NlcHQ6ImFwcGxpY2F0aW9uL2pzb24iLC4uLmEuaGVhZGVyc3x8e319LGJvZHk6SlNPTi5zdHJpbmdpZnkocil9KTtpZighaS5vayl0aHJvdyBuZXcgRXJyb3IoYEhUVFAgJHtpLnN0YXR1c306ICR7aS5zdGF0dXNUZXh0fWApO3JldHVybiBhd2FpdCBpLmpzb24oKX1hc3luYyBwdXRKc29uKHQscixhPXt9KXtsZXQgaT1hd2FpdCB0aGlzLnJlcXVlc3QodCx7Li4uYSxtZXRob2Q6IlBVVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24iLEFjY2VwdDoiYXBwbGljYXRpb24vanNvbiIsLi4uYS5oZWFkZXJzfHx7fX0sYm9keTpKU09OLnN0cmluZ2lmeShyKX0pO2lmKCFpLm9rKXRocm93IG5ldyBFcnJvcihgSFRUUCAke2kuc3RhdHVzfTogJHtpLnN0YXR1c1RleHR9YCk7cmV0dXJuIGF3YWl0IGkuanNvbigpfWFzeW5jIGRlbGV0ZUpzb24odCxyPXt9KXtsZXQgYT1hd2FpdCB0aGlzLnJlcXVlc3QodCx7Li4ucixtZXRob2Q6IkRFTEVURSIsaGVhZGVyczp7QWNjZXB0OiJhcHBsaWNhdGlvbi9qc29uIiwuLi5yLmhlYWRlcnN8fHt9fX0pO2lmKCFhLm9rKXRocm93IG5ldyBFcnJvcihgSFRUUCAke2Euc3RhdHVzfTogJHthLnN0YXR1c1RleHR9YCk7cmV0dXJuIGF3YWl0IGEuanNvbigpfX19KTthc3luYyBmdW5jdGlvbiBlbihlLHQpe2xldCByPWUgaW5zdGFuY2VvZiBSZXF1ZXN0P2UudXJsOlN0cmluZyhlKSxhPWUgaW5zdGFuY2VvZiBSZXF1ZXN0P2U6bmV3IFJlcXVlc3Qocix0KTtyZXR1cm4gYXdhaXQgTXMucmVxdWVzdChhLHQpfXZhciBNcyxkUnQ9bCgoKT0+e2liZSgpO01zPW5ldyBrNjtlbi5nZXRKc29uPWFzeW5jIGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGF3YWl0IE1zLmdldEpzb24oZSx0KX0sZW4ucG9zdEpzb249YXN5bmMgZnVuY3Rpb24oZSx0LHIpe3JldHVybiBhd2FpdCBNcy5wb3N0SnNvbihlLHQscil9LGVuLnB1dEpzb249YXN5bmMgZnVuY3Rpb24oZSx0LHIpe3JldHVybiBhd2FpdCBNcy5wdXRKc29uKGUsdCxyKX0sZW4uZGVsZXRlSnNvbj1hc3luYyBmdW5jdGlvbihlLHQpe3JldHVybiBhd2FpdCBNcy5kZWxldGVKc29uKGUsdCl9LGVuLmFkZFJlcXVlc3RJbnRlcmNlcHRvcj1mdW5jdGlvbihlKXtNcy5hZGRSZXF1ZXN0SW50ZXJjZXB0b3IoZSl9LGVuLmFkZFJlc3BvbnNlSW50ZXJjZXB0b3I9ZnVuY3Rpb24oZSl7TXMuYWRkUmVzcG9uc2VJbnRlcmNlcHRvcihlKX0sZW4uYWRkRXJyb3JJbnRlcmNlcHRvcj1mdW5jdGlvbihlKXtNcy5hZGRFcnJvckludGVyY2VwdG9yKGUpfSxlbi5jbGVhckludGVyY2VwdG9ycz1mdW5jdGlvbigpe01zLmNsZWFySW50ZXJjZXB0b3JzKCl9LGVuLmNsZWFyQ2FjaGU9YXN5bmMgZnVuY3Rpb24oKXthd2FpdCBNcy5jbGVhckNhY2hlKCl9LGVuLmNyZWF0ZUNsaWVudD1mdW5jdGlvbihlKXtyZXR1cm4gbmV3IGs2KGUpfSxlbi5nZXREZWZhdWx0Q2xpZW50PWZ1bmN0aW9uKCl7cmV0dXJuIE1zfX0pO3ZhciBTNj17fTtxZShTNix7Q2FjaGVNYW5hZ2VyOigpPT5qNyxDYWNoZVN0b3JlOigpPT5xNyxJbnRlcmNlcHRvck1hbmFnZXI6KCk9PlA3LFJlcXVlc3REZWR1cGxpY2F0b3I6KCk9PlU3LFJldHJ5TWFuYWdlcjooKT0+VjcsV2VicmVxdWVzdENsaWVudDooKT0+azYsY3JlYXRlQ29uZGl0aW9uYWxIZWFkZXJzOigpPT5vb2UsZXh0cmFjdENhY2hlTWV0YWRhdGE6KCk9PlkyLGhlYWRlcnNUb09iamVjdDooKT0+bm9lLGlzRnJlc2g6KCk9PmF5LG9iamVjdFRvSGVhZGVyczooKT0+YVJ0LHJlcXVpcmVzUmV2YWxpZGF0aW9uOigpPT5peSx3ZWJyZXF1ZXN0OigpPT5lbn0pO3ZhciBvYmU9bCgoKT0+e2RSdCgpO2liZSgpO0t4ZSgpO2lvZSgpO3RiZSgpO3R4ZSgpO3JiZSgpO3NvZSgpfSk7dmFyIEw0LEQ0PWwoKCk9Pnt3YWUoKTtMND1Bcih6cmUoKSwxKTtGdigpO1RGdCgpO3M0KCk7TEZ0KCk7b28oKTtvYmUoKX0pO3ZhciBrcyxXNz1sKCgpPT57RDQoKTtrcz1jbGFzc3tjb25zdHJ1Y3Rvcih0LHIpe3RoaXMuZXJyb3JUZXh0PXQsdGhpcy5lcnJvckRhdGE9cn19fSk7dmFyIHVvZSx1UnQ9bCgoKT0+e1c3KCk7RDQoKTt1b2U9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLmxvY2FsRGF0YT17fX1hc3luYyBwYXNzR3VhcmRzKHQscil7bGV0IGE9bmV3IFl2Lkd1YXJkU2V0KHQpO2lmKCFhd2FpdCBhLmFsbEd1YXJkc1Bhc3Mocikpe2xldCBvPWF3YWl0IGEuZ2V0RmFpbGVkSGludChyKTt0aHJvdyBuZXcga3MoYGd1YXJkIGZhaWxlZDogJHtvfWAse2ZhaWxlZEhpbnQ6b30pfX19fSk7dmFyIG5iZSxzYmU9bCgoKT0+e0Q0KCk7VzcoKTt1UnQoKTtuYmU9Y2xhc3N7Y29uc3RydWN0b3IodCxyKXt0aGlzLm1ldGhvZD10LHRoaXMuaGFuZGxlckZ1bmN0aW9uPXJ9YXN5bmMgYWRkUmVzcG9uc2UodCl7aWYodC5tZXRob2QhPT10aGlzLm1ldGhvZCl0aHJvdyBuZXcgRXJyb3IoInRoaXMgaGFuZGxlciBoYXMgYmVlbiBnaXZlbiBhIHdyb25nIG1ldGhvZCB0byBhbnN3ZXIgdG8uIFBsZWFzZSB1c2UgYSBUeXBlZFJvdXRlciB0byBmaWx0ZXIgcmVxdWVzdHMiKTtsZXQgcixhPW5ldyB1b2U7dC5sb2NhbERhdGEmJihhLmxvY2FsRGF0YT10LmxvY2FsRGF0YSk7bGV0IGk9YXdhaXQgdGhpcy5oYW5kbGVyRnVuY3Rpb24odC5yZXF1ZXN0LGEpLmNhdGNoKG89PntvIGluc3RhbmNlb2Yga3M/cj1vOmNvbnNvbGUubG9nKG8pfSk7cmV0dXJuIHImJih0LmVycm9yPXt0ZXh0OnIuZXJyb3JUZXh0LGRhdGE6ci5lcnJvckRhdGF9KSxpJiYodC5yZXNwb25zZT1pKSx0Py5jb3JyZWxhdGlvbj8ucGhhc2UmJih0LmNvcnJlbGF0aW9uLnBoYXNlPSJyZXNwb25zZSIpLHR9fX0pO3ZhciB6NixveT1sKCgpPT57RDQoKTtmb2UoKTtzYmUoKTtsYmUoKTtXNygpO3o2PWNsYXNzIGV7Y29uc3RydWN0b3IoKXt0aGlzLmhvb2tzPXt9LHRoaXMucm91dGVyTWFwPW5ldyBJaS5PYmplY3RNYXAsdGhpcy5oYW5kbGVyTWFwPW5ldyBJaS5PYmplY3RNYXAsdGhpcy5yZWdpc3RlcmVkVmlydHVhbFN0cmVhbXM9bmV3IElpLk9iamVjdE1hcCx0aGlzLm1pZGRsZXdhcmVzPVtdLHRoaXMuZmlyZUV2ZW50SW50ZXJlc3RNYXA9bmV3IElpLkludGVyZXN0TWFwKHQ9PnQpfXN0YXRpYyBnZXQgZ2xvYmFsSG9va3MoKXtyZXR1cm4gZ2xvYmFsVGhpcy5fX3R5cGVkUm91dGVyR2xvYmFsSG9va3N8fChnbG9iYWxUaGlzLl9fdHlwZWRSb3V0ZXJHbG9iYWxIb29rcz17fSksZ2xvYmFsVGhpcy5fX3R5cGVkUm91dGVyR2xvYmFsSG9va3N9c3RhdGljIHNldCBnbG9iYWxIb29rcyh0KXtnbG9iYWxUaGlzLl9fdHlwZWRSb3V0ZXJHbG9iYWxIb29rcz10fXN0YXRpYyBzZXRHbG9iYWxIb29rcyh0KXtsZXQgcj1lLmdsb2JhbEhvb2tzO2UuZ2xvYmFsSG9va3M9ey4uLnIsLi4udH19c3RhdGljIGNsZWFyR2xvYmFsSG9va3MoKXtnbG9iYWxUaGlzLl9fdHlwZWRSb3V0ZXJHbG9iYWxIb29rcz17fX1zZXRIb29rcyh0KXt0aGlzLmhvb2tzPXsuLi50aGlzLmhvb2tzLC4uLnR9fWNhbGxIb29rKHQscil7dHJ5e2UuZ2xvYmFsSG9va3NbdF0/LihyKSx0aGlzLmhvb2tzW3RdPy4ocil9Y2F0Y2goYSl7Y29uc29sZS5lcnJvcihgVHlwZWRSb3V0ZXIgaG9vayBlcnJvciAoJHt0fSk6YCxhKX19YWRkTWlkZGxld2FyZSh0KXt0aGlzLm1pZGRsZXdhcmVzLnB1c2godCl9YWRkVHlwZWRIYW5kbGVyKHQpe2lmKHRoaXMuZ2V0VHlwZWRIYW5kbGVyRm9yTWV0aG9kKHQubWV0aG9kKSl0aHJvdyBuZXcgRXJyb3IoYGEgVHlwZWRIYW5kbGVyIGZvciAke3QubWV0aG9kfSBhbHJlZHkgZXhpc3RzISBDYW4ndCBhZGQgYW5vdGhlciBvbmUuYCk7dGhpcy5oYW5kbGVyTWFwLmFkZCh0KX1hZGRUeXBlZFJvdXRlcih0KXt0aGlzLnJvdXRlck1hcC5maW5kU3luYyhhPT5hPT09dCl8fCh0aGlzLnJvdXRlck1hcC5hZGQodCksdC5hZGRUeXBlZFJvdXRlcih0aGlzKSl9Y2hlY2tGb3JUeXBlZEhhbmRsZXIodCl7cmV0dXJuISF0aGlzLmdldFR5cGVkSGFuZGxlckZvck1ldGhvZCh0KX1nZXRUeXBlZEhhbmRsZXJGb3JNZXRob2QodCxyPVtdKXtyLnB1c2godGhpcyk7bGV0IGE7cmV0dXJuIGE9dGhpcy5oYW5kbGVyTWFwLmZpbmRTeW5jKGk9PmkubWV0aG9kPT09dCksYXx8dGhpcy5yb3V0ZXJNYXAuZ2V0QXJyYXkoKS5mb3JFYWNoKGk9PnshYSYmIXIuaW5jbHVkZXMoaSkmJihhPWkuZ2V0VHlwZWRIYW5kbGVyRm9yTWV0aG9kKHQscikpfSksYX1nZXRUeXBlZEhhbmRsZXJBbmRSb3V0ZXIodCxyPVtdKXtyLnB1c2godGhpcyk7bGV0IGE9dGhpcy5oYW5kbGVyTWFwLmZpbmRTeW5jKGk9PmkubWV0aG9kPT09dCk7aWYoYSlyZXR1cm57aGFuZGxlcjphLHJvdXRlcjp0aGlzfTtmb3IobGV0IGkgb2YgdGhpcy5yb3V0ZXJNYXAuZ2V0QXJyYXkoKSlpZighci5pbmNsdWRlcyhpKSl7bGV0IG89aS5nZXRUeXBlZEhhbmRsZXJBbmRSb3V0ZXIodCxyKTtpZihvKXJldHVybiBvfXJldHVybiBudWxsfXN0YXRpY3t0aGlzLmRlZmF1bHRSb3V0ZU9wdGlvbnM9e2xvY2FsUmVxdWVzdDohMSxza2lwSG9va3M6ITF9fWFzeW5jIHJvdXRlQW5kQWRkUmVzcG9uc2UodCxyPXt9KXtsZXQgYT17Li4uZS5kZWZhdWx0Um91dGVPcHRpb25zLC4uLnJ9O2lmKHQ9U3MuZGVjb2RlUGF5bG9hZEZyb21OZXR3b3JrKHQse3R5cGVkcm91dGVyOnRoaXN9KSx0LmxvY2FsRGF0YT10LmxvY2FsRGF0YXx8e30sdC5sb2NhbERhdGEuZmlyc3RUeXBlZHJvdXRlcj10aGlzLHQubWV0aG9kPT09IiMjVmlydHVhbFN0cmVhbSMjIil7bGV0IGk9YXdhaXQgdGhpcy5oYW5kbGVTdHJlYW1UeXBlZFJlcXVlc3QodCk7cmV0dXJuIGkubG9jYWxEYXRhPW51bGwsaX1pZih0Py5jb3JyZWxhdGlvbj8ucGhhc2U9PT0icmVxdWVzdCJ8fGEubG9jYWxSZXF1ZXN0KXtsZXQgaT1EYXRlLm5vdygpO2Euc2tpcEhvb2tzfHx0aGlzLmNhbGxIb29rKCJvbkluY29taW5nUmVxdWVzdCIse2NvcnJlbGF0aW9uSWQ6dC5jb3JyZWxhdGlvbj8uaWR8fCJ1bmtub3duIixtZXRob2Q6dC5tZXRob2QsZGlyZWN0aW9uOiJpbmNvbWluZyIscGhhc2U6InJlcXVlc3QiLHRpbWVzdGFtcDppLHBheWxvYWQ6dC5yZXF1ZXN0fSk7bGV0IG89dGhpcy5nZXRUeXBlZEhhbmRsZXJBbmRSb3V0ZXIodC5tZXRob2QpO2lmKCFvKXJldHVybiBjb25zb2xlLmxvZyhgQ2Fubm90IGZpbmQgaGFuZGxlciBmb3IgbWV0aG9kbmFtZSAke3QubWV0aG9kfWApLHQuZXJyb3I9e3RleHQ6IlRoZXJlIGlzIG5vIGF2YWlsYWJsZSBtZXRob2QgZm9yIHRoaXMgY2FsbCBvbiB0aGUgc2VydmVyIHNpZGUiLGRhdGE6e319LHQuY29ycmVsYXRpb24ucGhhc2U9InJlc3BvbnNlIix0LmxvY2FsRGF0YT1udWxsLHQ9U3MuZW5jb2RlUGF5bG9hZEZvck5ldHdvcmsodCx7dHlwZWRyb3V0ZXI6dGhpc30pLGEuc2tpcEhvb2tzfHx0aGlzLmNhbGxIb29rKCJvbk91dGdvaW5nUmVzcG9uc2UiLHtjb3JyZWxhdGlvbklkOnQuY29ycmVsYXRpb24/LmlkfHwidW5rbm93biIsbWV0aG9kOnQubWV0aG9kLGRpcmVjdGlvbjoib3V0Z29pbmciLHBoYXNlOiJyZXNwb25zZSIsdGltZXN0YW1wOkRhdGUubm93KCksZHVyYXRpb25NczpEYXRlLm5vdygpLWkscGF5bG9hZDp0LnJlc3BvbnNlLGVycm9yOnQuZXJyb3I/LnRleHR9KSx0O2xldHtoYW5kbGVyOm4scm91dGVyOnN9PW87aWYocy5taWRkbGV3YXJlcy5sZW5ndGg+MCl0cnl7Zm9yKGxldCBjIG9mIHMubWlkZGxld2FyZXMpYXdhaXQgYyh0KX1jYXRjaChjKXtyZXR1cm4gYyBpbnN0YW5jZW9mIGtzP3QuZXJyb3I9e3RleHQ6Yy5lcnJvclRleHQsZGF0YTpjLmVycm9yRGF0YXx8e319OnQuZXJyb3I9e3RleHQ6Yy5tZXNzYWdlfHwiTWlkZGxld2FyZSBlcnJvciIsZGF0YTp7fX0sdC5jb3JyZWxhdGlvbi5waGFzZT0icmVzcG9uc2UiLHQubG9jYWxEYXRhPW51bGwsdD1Tcy5lbmNvZGVQYXlsb2FkRm9yTmV0d29yayh0LHt0eXBlZHJvdXRlcjp0aGlzfSksYS5za2lwSG9va3N8fHRoaXMuY2FsbEhvb2soIm9uT3V0Z29pbmdSZXNwb25zZSIse2NvcnJlbGF0aW9uSWQ6dC5jb3JyZWxhdGlvbj8uaWR8fCJ1bmtub3duIixtZXRob2Q6dC5tZXRob2QsZGlyZWN0aW9uOiJvdXRnb2luZyIscGhhc2U6InJlc3BvbnNlIix0aW1lc3RhbXA6RGF0ZS5ub3coKSxkdXJhdGlvbk1zOkRhdGUubm93KCktaSxwYXlsb2FkOnQucmVzcG9uc2UsZXJyb3I6dC5lcnJvcj8udGV4dH0pLHR9cmV0dXJuIHQ9YXdhaXQgbi5hZGRSZXNwb25zZSh0KSx0LmxvY2FsRGF0YT1udWxsLHQ9U3MuZW5jb2RlUGF5bG9hZEZvck5ldHdvcmsodCx7dHlwZWRyb3V0ZXI6dGhpc30pLGEuc2tpcEhvb2tzfHx0aGlzLmNhbGxIb29rKCJvbk91dGdvaW5nUmVzcG9uc2UiLHtjb3JyZWxhdGlvbklkOnQuY29ycmVsYXRpb24/LmlkfHwidW5rbm93biIsbWV0aG9kOnQubWV0aG9kLGRpcmVjdGlvbjoib3V0Z29pbmciLHBoYXNlOiJyZXNwb25zZSIsdGltZXN0YW1wOkRhdGUubm93KCksZHVyYXRpb25NczpEYXRlLm5vdygpLWkscGF5bG9hZDp0LnJlc3BvbnNlLGVycm9yOnQuZXJyb3I/LnRleHR9KSx0fWVsc2UgcmV0dXJuIHQ/LmNvcnJlbGF0aW9uPy5waGFzZT09PSJyZXNwb25zZSI/KGEuc2tpcEhvb2tzfHx0aGlzLmNhbGxIb29rKCJvbkluY29taW5nUmVzcG9uc2UiLHtjb3JyZWxhdGlvbklkOnQuY29ycmVsYXRpb24/LmlkfHwidW5rbm93biIsbWV0aG9kOnQubWV0aG9kLGRpcmVjdGlvbjoiaW5jb21pbmciLHBoYXNlOiJyZXNwb25zZSIsdGltZXN0YW1wOkRhdGUubm93KCkscGF5bG9hZDp0LnJlc3BvbnNlLGVycm9yOnQuZXJyb3I/LnRleHR9KSx0aGlzLmZpcmVFdmVudEludGVyZXN0TWFwLmZpbmRJbnRlcmVzdCh0LmNvcnJlbGF0aW9uLmlkKT8uZnVsbGZpbGxJbnRlcmVzdCh0KSxudWxsKTooY29uc29sZS5sb2coInJlY2VpdmVkIHdlaXJkbHkgc2hhcGVkIHJlcXVlc3QiKSxjb25zb2xlLmxvZyh0KSxudWxsKX1hc3luYyBoYW5kbGVTdHJlYW1UeXBlZFJlcXVlc3QodCl7bGV0IHI9YXdhaXQgdGhpcy5yZWdpc3RlcmVkVmlydHVhbFN0cmVhbXMuZmluZChhc3luYyBpPT5pLnN0cmVhbUlkPT09dC5yZXF1ZXN0LnN0cmVhbUlkKTtpZihyKWNvbnNvbGUubG9nKGBzdWNjZXNzOiBmb3VuZCByZWxldmFudCB2aXJ0dWFsIHN0cmVhbSB3aXRoIGlkICR7dC5yZXF1ZXN0LnN0cmVhbUlkfWApO2Vsc2UgcmV0dXJuIGNvbnNvbGUubG9nKGBubyByZWxldmFudCB2aXJ0dWFsIHN0cmVhbSBmb3VuZCBmb3Igc3RyZWFtIHdpdGggaWQgJHt0LnJlcXVlc3Quc3RyZWFtSWR9YCksY29uc29sZS5sb2codGhpcy5yZWdpc3RlcmVkVmlydHVhbFN0cmVhbXMuZ2V0QXJyYXkoKSksdDtyZXR1cm4gYXdhaXQgci5oYW5kbGVTdHJlYW1Ucih0KX19fSk7dmFyIGZSdCxTcyxmb2U9bCgoKT0+e0Q0KCk7b3koKTtmUnQ9IiMjIyMjIyMjIyMjIyNDTE9TSU5HIEJJVCMjIyMjIyMjIyMjIyMiLFNzPWNsYXNzIGV7c3RhdGljIGVuY29kZVBheWxvYWRGb3JOZXR3b3JrKHQscixhLGk9W10pe3JldHVybiF0fHwkNy5pc0J1ZmZlckxpa2UodCk/dDp0IGluc3RhbmNlb2YgZT8oIXQuc2lkZSYmci5zZW5kTWV0aG9kJiYodC5zaWRlPSJyZXF1ZXN0aW5nIix0LnNlbmRNZXRob2Q9ci5zZW5kTWV0aG9kKSwhdC5zaWRlJiZyLnR5cGVkcm91dGVyJiYodC5zaWRlPSJyZXNwb25kaW5nIix0LnR5cGVkcm91dGVyPXIudHlwZWRyb3V0ZXIsci50eXBlZHJvdXRlci5yZWdpc3RlcmVkVmlydHVhbFN0cmVhbXMuYWRkKHQpKSwhYS5yZXNwb25zZXx8aS5pbmNsdWRlcygicmVzcG9uc2UiKT8odC5zdGFydEtlZXBBbGl2ZUxvb3AoKSx7X2lzVmlydHVhbFN0cmVhbTohMCxzdHJlYW1JZDp0LnN0cmVhbUlkfSk6e19PQk1JVFRFRF9WSVJUVUFMX1NUUkVBTTohMCxyZWFzb246InBhdGggaXMgdW5kZXIgLnJlcXVlc3Q6IG9ibWl0dGVkIGZvciBkZWR1cGxpY2F0aW9uIHJlYXNvbnMgaW4gcmVzcG9uc2UgY3ljbGUuIn0pOkFycmF5LmlzQXJyYXkodCk/dC5tYXAoKG8sbik9PmUuZW5jb2RlUGF5bG9hZEZvck5ldHdvcmsobyxyLGF8fHQsaS5jb25jYXQoU3RyaW5nKG4pKSkpOnQhPT1udWxsJiZ0eXBlb2YgdD09Im9iamVjdCI/T2JqZWN0LmVudHJpZXModCkucmVkdWNlKChvLFtuLHNdKT0+e2xldCBjPWkuY29uY2F0KG4pO3JldHVybiBvW25dPWUuZW5jb2RlUGF5bG9hZEZvck5ldHdvcmsocyxyLGF8fHQsYyksb30se30pOnR9c3RhdGljIGRlY29kZVBheWxvYWRGcm9tTmV0d29yayh0LHIpe2lmKCQ3LmlzQnVmZmVyTGlrZSh0KXx8dCBpbnN0YW5jZW9mIHo2KXJldHVybiB0O2lmKHQhPT1udWxsJiZ0eXBlb2YgdD09Im9iamVjdCIpe2lmKHQgaW5zdGFuY2VvZiBTZXR8fHQgaW5zdGFuY2VvZiBNYXB8fHQgaW5zdGFuY2VvZiBEYXRlfHx0IGluc3RhbmNlb2YgUmVnRXhwfHx0IGluc3RhbmNlb2YgRXJyb3J8fHQgaW5zdGFuY2VvZiBQcm9taXNlfHx0eXBlb2YgdC50aGVuPT0iZnVuY3Rpb24iKXJldHVybiB0O2lmKHQuX2lzVmlydHVhbFN0cmVhbSl7bGV0IGE9bmV3IGU7cmV0dXJuIGEuc3RyZWFtSWQ9dC5zdHJlYW1JZCwhYS5zaWRlJiZyLnNlbmRNZXRob2QmJihhLnNpZGU9InJlcXVlc3RpbmciLGEuc2VuZE1ldGhvZD1yLnNlbmRNZXRob2QpLCFhLnNpZGUmJnIudHlwZWRyb3V0ZXImJihhLnNpZGU9InJlc3BvbmRpbmciLGEudHlwZWRyb3V0ZXI9ci50eXBlZHJvdXRlcixyLnR5cGVkcm91dGVyLnJlZ2lzdGVyZWRWaXJ0dWFsU3RyZWFtcy5hZGQoYSkpLGEuc3RhcnRLZWVwQWxpdmVMb29wKCksYX1lbHNlIGlmKEFycmF5LmlzQXJyYXkodCkpe2xldCBhPVtdO2ZvcihsZXQgaSBvZiB0KWEucHVzaChlLmRlY29kZVBheWxvYWRGcm9tTmV0d29yayhpLHIpKTtyZXR1cm4gYX1lbHNlIHJldHVybiBPYmplY3Qua2V5cyh0KS5yZWR1Y2UoKGEsaSk9PihhW2ldPWUuZGVjb2RlUGF5bG9hZEZyb21OZXR3b3JrKHRbaV0sciksYSkse30pfWVsc2UgcmV0dXJuIHR9Y29uc3RydWN0b3IoKXt0aGlzLnN0cmVhbUlkPUw0LnVuaSgpLHRoaXMua2VlcEFsaXZlPSEwLHRoaXMuc2VuZEJhY2twcmVzc3VyZWRBcnJheT1uZXcgSWkuQmFja3ByZXNzdXJlZEFycmF5KDE2KSx0aGlzLnJlY2VpdmVCYWNrcHJlc3N1cmVkQXJyYXk9bmV3IElpLkJhY2twcmVzc3VyZWRBcnJheSgxNil9c3RhdGljIHJlY29uc3RpdHV0ZUJpbmFyeURhdGEodCl7aWYodD09bnVsbHx8dCBpbnN0YW5jZW9mIFVpbnQ4QXJyYXl8fHR5cGVvZiBCdWZmZXI8InUiJiZCdWZmZXIuaXNCdWZmZXIodCkpcmV0dXJuIHQ7aWYodHlwZW9mIHQ9PSJvYmplY3QiKXtpZih0LnR5cGU9PT0iQnVmZmVyIiYmQXJyYXkuaXNBcnJheSh0LmRhdGEpKXJldHVybiBuZXcgVWludDhBcnJheSh0LmRhdGEpO2xldCByPU9iamVjdC5rZXlzKHQpO2lmKHIubGVuZ3RoPjAmJnIuZXZlcnkoYT0+L15cZCskLy50ZXN0KGEpKSl7bGV0IGE9bmV3IEFycmF5KHIubGVuZ3RoKTtmb3IobGV0IGkgb2YgcilhW051bWJlcihpKV09dFtpXTtpZihhLmV2ZXJ5KGk9PnR5cGVvZiBpPT0ibnVtYmVyIikpcmV0dXJuIG5ldyBVaW50OEFycmF5KGEpfX1yZXR1cm4gdH1hc3luYyB3b3JrT25RdWV1ZSgpe2lmKHRoaXMud29ya2luZ0RlZmVycmVkKXJldHVybiB0aGlzLndvcmtpbmdEZWZlcnJlZC5wcm9taXNlO2lmKHRoaXMud29ya2luZ0RlZmVycmVkPWx0LmRlZmVyKCksdGhpcy5zaWRlPT09InJlcXVlc3RpbmciKXtsZXQgdD0hdGhpcy5yZWNlaXZlQmFja3ByZXNzdXJlZEFycmF5LmNoZWNrU3BhY2VBdmFpbGFibGUoKSxyPSExLGE9ITEsaT1hc3luYygpPT57bGV0IG89YXdhaXQgdGhpcy5zZW5kTWV0aG9kKHttZXRob2Q6IiMjVmlydHVhbFN0cmVhbSMjIixyZXF1ZXN0OntzdHJlYW1JZDp0aGlzLnN0cmVhbUlkLGN5Y2xlSWQ6TDQudW5pKCksY3ljbGU6InJlcXVlc3QiLG1haW5QdXJwb3NlOiJmZWVkYmFjayIsbmV4dDp0aGlzLnNlbmRCYWNrcHJlc3N1cmVkQXJyYXkuZGF0YS5sZW5ndGg+MCxiYWNrcHJlc3N1cmU6IXRoaXMucmVjZWl2ZUJhY2twcmVzc3VyZWRBcnJheS5jaGVja1NwYWNlQXZhaWxhYmxlKCl9LHJlc3BvbnNlOm51bGx9KS5jYXRjaCgoKT0+e2NvbnNvbGUubG9nKCJzdHJlYW0gZW5kZWQgaW1tYXR1cmVseSIpLHRoaXMua2VlcEFsaXZlPSExfSk7byYmby5yZXNwb25zZSYmKGE9by5yZXNwb25zZS5iYWNrcHJlc3N1cmUscj1vLnJlc3BvbnNlLm5leHQpfTtmb3IoYXdhaXQgaSgpO3RoaXMuc2VuZEJhY2twcmVzc3VyZWRBcnJheS5kYXRhLmxlbmd0aD4wfHxyOyl7aWYoYSlmb3IoO2E7KWNvbnNvbGUubG9nKCJ3YWl0aW5nIGZvciBmZWVkYmFjayBiZWNhdXNlIG9mIGJhY2twcmVzc3VyZS4uLiIpLGF3YWl0IFF0LmRlbGF5Rm9yKDUwKSxhd2FpdCBpKCk7bGV0IG87dGhpcy5zZW5kQmFja3ByZXNzdXJlZEFycmF5LmRhdGEubGVuZ3RoPjAmJihvPXRoaXMuc2VuZEJhY2twcmVzc3VyZWRBcnJheS5zaGlmdCgpKTtsZXQgbjtuPWF3YWl0IHRoaXMuc2VuZE1ldGhvZCh7bWV0aG9kOiIjI1ZpcnR1YWxTdHJlYW0jIyIscmVxdWVzdDp7c3RyZWFtSWQ6dGhpcy5zdHJlYW1JZCxjeWNsZUlkOkw0LnVuaSgpLGN5Y2xlOiJyZXF1ZXN0IixtYWluUHVycG9zZTpvPyJjaHVuayI6InJlYWQiLGJhY2twcmVzc3VyZTp0LG5leHQ6dGhpcy5zZW5kQmFja3ByZXNzdXJlZEFycmF5LmRhdGEubGVuZ3RoPjAsLi4ubz97Y2h1bmtEYXRhOm99Ont9fSxyZXNwb25zZTpudWxsfSkuY2F0Y2goKCk9Pihjb25zb2xlLmxvZygic3RyZWFtIGVuZGVkIGltbWF0dXJlbHkiKSx0aGlzLmtlZXBBbGl2ZT0hMSxudWxsKSksbiYmbi5yZXNwb25zZSYmbi5yZXNwb25zZS5jaHVua0RhdGEmJnRoaXMucmVjZWl2ZUJhY2twcmVzc3VyZWRBcnJheS5wdXNoKGUucmVjb25zdGl0dXRlQmluYXJ5RGF0YShuLnJlc3BvbnNlLmNodW5rRGF0YSkpLGE9biYmbi5yZXNwb25zZSYmbi5yZXNwb25zZS5iYWNrcHJlc3N1cmUsdD0hdGhpcy5yZWNlaXZlQmFja3ByZXNzdXJlZEFycmF5LmNoZWNrU3BhY2VBdmFpbGFibGUoKSxyPW4mJm4ucmVzcG9uc2UmJm4ucmVzcG9uc2UubmV4dH19dGhpcy53b3JraW5nRGVmZXJyZWQucmVzb2x2ZSgpLHRoaXMud29ya2luZ0RlZmVycmVkPW51bGx9YXN5bmMgaGFuZGxlU3RyZWFtVHIodCl7aWYodC5yZXF1ZXN0LmtlZXBBbGl2ZT09PSEwJiZ0aGlzLmtlZXBBbGl2ZT09PSEwP3RoaXMubGFzdEtlZXBBbGl2ZUV2ZW50PURhdGUubm93KCk6dC5yZXF1ZXN0LmtlZXBBbGl2ZT09PSExJiYodGhpcy5rZWVwQWxpdmU9ITEpLHQucmVxdWVzdC5tYWluUHVycG9zZT09PSJrZWVwQWxpdmUiJiYodC5yZXNwb25zZT17c3RyZWFtSWQ6dGhpcy5zdHJlYW1JZCxjeWNsZUlkOnQucmVxdWVzdC5jeWNsZUlkLGN5Y2xlOiJyZXNwb25zZSIsbWFpblB1cnBvc2U6ImtlZXBBbGl2ZSIsa2VlcEFsaXZlOnRoaXMua2VlcEFsaXZlLG5leHQ6dGhpcy5zZW5kQmFja3ByZXNzdXJlZEFycmF5LmRhdGEubGVuZ3RoPjAsYmFja3ByZXNzdXJlOiF0aGlzLnJlY2VpdmVCYWNrcHJlc3N1cmVkQXJyYXkuY2hlY2tTcGFjZUF2YWlsYWJsZSgpfSksdC5yZXF1ZXN0Lm1haW5QdXJwb3NlPT09ImZlZWRiYWNrIiYmKHQucmVzcG9uc2U9e3N0cmVhbUlkOnRoaXMuc3RyZWFtSWQsY3ljbGVJZDp0LnJlcXVlc3QuY3ljbGVJZCxjeWNsZToicmVzcG9uc2UiLG1haW5QdXJwb3NlOiJmZWVkYmFjayIsbmV4dDp0aGlzLnNlbmRCYWNrcHJlc3N1cmVkQXJyYXkuZGF0YS5sZW5ndGg+MCxiYWNrcHJlc3N1cmU6IXRoaXMucmVjZWl2ZUJhY2twcmVzc3VyZWRBcnJheS5jaGVja1NwYWNlQXZhaWxhYmxlKCl9KSx0LnJlcXVlc3QubWFpblB1cnBvc2U9PT0iY2h1bmsiKXtpZih0aGlzLnJlY2VpdmVCYWNrcHJlc3N1cmVkQXJyYXkucHVzaChlLnJlY29uc3RpdHV0ZUJpbmFyeURhdGEodC5yZXF1ZXN0LmNodW5rRGF0YSkpLHRoaXMuc2VuZEJhY2twcmVzc3VyZWRBcnJheS5kYXRhLmxlbmd0aD4wJiZ0LnJlc3BvbnNlLmJhY2twcmVzc3VyZT09PSExKXtsZXQgcj10aGlzLnNlbmRCYWNrcHJlc3N1cmVkQXJyYXkuc2hpZnQoKTt0LnJlc3BvbnNlPXtzdHJlYW1JZDp0aGlzLnN0cmVhbUlkLGN5Y2xlSWQ6dC5yZXF1ZXN0LmN5Y2xlSWQsY3ljbGU6InJlc3BvbnNlIixtYWluUHVycG9zZToiY2h1bmsiLG5leHQ6dGhpcy5zZW5kQmFja3ByZXNzdXJlZEFycmF5LmRhdGEubGVuZ3RoPjEsYmFja3ByZXNzdXJlOiF0aGlzLnJlY2VpdmVCYWNrcHJlc3N1cmVkQXJyYXkuY2hlY2tTcGFjZUF2YWlsYWJsZSgpLGNodW5rRGF0YTp0aGlzLnNlbmRCYWNrcHJlc3N1cmVkQXJyYXkuc2hpZnQoKX19ZWxzZSB0LnJlc3BvbnNlPXtzdHJlYW1JZDp0aGlzLnN0cmVhbUlkLGN5Y2xlSWQ6dC5yZXF1ZXN0LmN5Y2xlSWQsY3ljbGU6InJlc3BvbnNlIixtYWluUHVycG9zZToiZmVlZGJhY2siLG5leHQ6dGhpcy5zZW5kQmFja3ByZXNzdXJlZEFycmF5LmRhdGEubGVuZ3RoPjAsYmFja3ByZXNzdXJlOiF0aGlzLnJlY2VpdmVCYWNrcHJlc3N1cmVkQXJyYXkuY2hlY2tTcGFjZUF2YWlsYWJsZSgpfTt0LnJlcXVlc3Q9bnVsbH1yZXR1cm4gdH1hc3luYyBjbGVhbnVwKCl7dGhpcy50eXBlZHJvdXRlciYmdGhpcy50eXBlZHJvdXRlci5yZWdpc3RlcmVkVmlydHVhbFN0cmVhbXMucmVtb3ZlKHRoaXMpfWFzeW5jIHN0YXJ0S2VlcEFsaXZlTG9vcCgpe2lmKHRoaXMuc2lkZT09PSJyZXNwb25kaW5nIilyZXR1cm47YXdhaXQgUXQuZGVsYXlGb3IoMCksY29uc29sZS5sb2coYHN0YXJ0aW5nIGtlZXBhbGl2ZSBsb29wIG9uIHNpZGUgJHt0aGlzLnNpZGV9YCk7bGV0IHQ9MDtmb3IoO3RoaXMua2VlcEFsaXZlOylhd2FpdCB0aGlzLnRyaWdnZXJLZWVwQWxpdmUoKSxhd2FpdCBRdC5kZWxheUZvcigxZTMpO2F3YWl0IFF0LmRlbGF5Rm9yKDFlMyksYXdhaXQgdGhpcy5jbGVhbnVwKCksY29uc29sZS5sb2coYGNsZWFuZWQgdXAgZm9yIHN0cmVhbSAke3RoaXMuc3RyZWFtSWR9YCl9YXN5bmMgdHJpZ2dlcktlZXBBbGl2ZSgpe2lmKHRoaXMuc2lkZT09PSJyZXF1ZXN0aW5nIil7Y29uc29sZS5sb2coImtlZXBhbGl2ZSBzZW50LiIpO2xldCB0PWF3YWl0IHRoaXMuc2VuZE1ldGhvZCh7bWV0aG9kOiIjI1ZpcnR1YWxTdHJlYW0jIyIscmVxdWVzdDp7c3RyZWFtSWQ6dGhpcy5zdHJlYW1JZCxjeWNsZUlkOkw0LnVuaSgpLGN5Y2xlOiJyZXF1ZXN0IixtYWluUHVycG9zZToia2VlcEFsaXZlIixrZWVwQWxpdmU6dGhpcy5rZWVwQWxpdmV9LHJlc3BvbnNlOm51bGx9KS5jYXRjaCgoKT0+e3RoaXMua2VlcEFsaXZlPSExfSk7dCYmdC5yZXNwb25zZSYmdC5yZXNwb25zZS5rZWVwQWxpdmU9PT0hMT90aGlzLmtlZXBBbGl2ZT0hMTp0aGlzLmxhc3RLZWVwQWxpdmVFdmVudD1EYXRlLm5vdygpLHQmJnQucmVzcG9uc2UmJnQucmVzcG9uc2UubmV4dCYmdGhpcy53b3JrT25RdWV1ZSgpfURhdGUubm93KCktdGhpcy5sYXN0S2VlcEFsaXZlRXZlbnQ+MWU0JiYoY29uc29sZS5sb2coYGNsb3Npbmcgc3RyZWFtIGZvciAke3RoaXMuc3RyZWFtSWR9YCksdGhpcy5rZWVwQWxpdmU9ITEpfWFzeW5jIHNlbmREYXRhKHQpe3RoaXMuc2VuZEJhY2twcmVzc3VyZWRBcnJheS5wdXNoKHQpLHRoaXMud29ya09uUXVldWUoKSxhd2FpdCB0aGlzLnNlbmRCYWNrcHJlc3N1cmVkQXJyYXkud2FpdEZvclNwYWNlKCl9YXN5bmMgZmV0Y2hEYXRhKCl7cmV0dXJuIHRoaXMucmVjZWl2ZUJhY2twcmVzc3VyZWRBcnJheS5oYXNTcGFjZSxhd2FpdCB0aGlzLnJlY2VpdmVCYWNrcHJlc3N1cmVkQXJyYXkud2FpdEZvckl0ZW1zKCksdGhpcy5yZWNlaXZlQmFja3ByZXNzdXJlZEFycmF5LnNoaWZ0KCl9YXN5bmMgcmVhZEZyb21XZWJzdHJlYW0odCxyPSEwKXtsZXQgYT10LmdldFJlYWRlcigpLGk9ITE7Zm9yKDshaTspe2xldHt2YWx1ZTpvLGRvbmU6bn09YXdhaXQgYS5yZWFkKCk7byYmYXdhaXQgdGhpcy5zZW5kRGF0YShvKSxpPW59ciYmYXdhaXQgdGhpcy5jbG9zZSghMCl9YXN5bmMgd3JpdGVUb1dlYnN0cmVhbSh0KXtsZXQgcj10LmdldFdyaXRlcigpO2Zvcig7dGhpcy5rZWVwQWxpdmV8fHRoaXMucmVjZWl2ZUJhY2twcmVzc3VyZWRBcnJheS5jaGVja0hhc0l0ZW1zKCk7KXtsZXQgYT1hd2FpdCB0aGlzLmZldGNoRGF0YSgpO2lmKGE9PT1mUnQpe3IucmVsZWFzZUxvY2soKSxhd2FpdCB0LmNsb3NlKCk7YnJlYWt9YXdhaXQgci53cml0ZShhKX19YXN5bmMgY2xvc2UodD0hMSl7dCYmdGhpcy5zZW5kRGF0YShmUnQpLHRoaXMua2VlcEFsaXZlPSExfX19KTt2YXIgY2JlLGRiZT1sKCgpPT57b3koKTtENCgpO2NiZT1jbGFzc3tjb25zdHJ1Y3Rvcih0KXtpZih0LnBvc3RNZXRob2RXaXRoVHlwZWRSb3V0ZXImJiF0LnR5cGVkUm91dGVyUmVmKXRocm93IG5ldyBFcnJvcigieW91IGhhdmUgdG8gc3BlY2lmeSBhIHR5cGVkcm91dGVyIHdoZW4gdXNpbmcgcG9zdG1ldGhvZCB3aXRoIHR5cGVkcm91dGVyIik7dGhpcy5vcHRpb25zPXR9YXN5bmMgcG9zdCh0KXtsZXQgcjt0aGlzLm9wdGlvbnMudHlwZWRSb3V0ZXJSZWYmJihyPWF3YWl0IHRoaXMub3B0aW9ucy50eXBlZFJvdXRlclJlZi5maXJlRXZlbnRJbnRlcmVzdE1hcC5hZGRJbnRlcmVzdCh0LmNvcnJlbGF0aW9uLmlkLHQpKTtsZXQgaT1hd2FpdCh0aGlzLm9wdGlvbnMucG9zdE1ldGhvZHx8dGhpcy5vcHRpb25zLnBvc3RNZXRob2RXaXRoVHlwZWRSb3V0ZXIpKHQpLG87cmV0dXJuIHI/bz1hd2FpdCByLmludGVyZXN0RnVsbGZpbGxlZDppP289aTpvPXQsb319fSk7ZnVuY3Rpb24gcFJ0KGUsdCl7dHJ5e3o2Lmdsb2JhbEhvb2tzW2VdPy4odCl9Y2F0Y2gocil7Y29uc29sZS5lcnJvcihgVHlwZWRSZXF1ZXN0IGhvb2sgZXJyb3IgKCR7ZX0pOmAscil9fXZhciBUM2EsbnksbGJlPWwoKCk9PntENCgpO2ZvZSgpO1c3KCk7b3koKTtkYmUoKTtUM2E9bmV3IFM2LldlYnJlcXVlc3RDbGllbnQ7bnk9Y2xhc3N7Y29uc3RydWN0b3IodCxyKXt0aGlzLnNraXBIb29rcz0hMSx0eXBlb2YgdD09InN0cmluZyI/dGhpcy51cmxFbmRQb2ludD10OnRoaXMudHlwZWRUYXJnZXQ9dCx0aGlzLm1ldGhvZD1yfWFzeW5jIGZpcmUodCxyPSExKXtsZXQgYT1EYXRlLm5vdygpLGk9e21ldGhvZDp0aGlzLm1ldGhvZCxyZXF1ZXN0OnQscmVzcG9uc2U6bnVsbCxjb3JyZWxhdGlvbjp7aWQ6TDQudW5pKCkscGhhc2U6InJlcXVlc3QifX07aT1Tcy5lbmNvZGVQYXlsb2FkRm9yTmV0d29yayhpLHtzZW5kTWV0aG9kOm49PnRoaXMucG9zdFRyT2JqZWN0KG4pfSksdGhpcy5za2lwSG9va3N8fHBSdCgib25PdXRnb2luZ1JlcXVlc3QiLHtjb3JyZWxhdGlvbklkOmkuY29ycmVsYXRpb24uaWQsbWV0aG9kOnRoaXMubWV0aG9kLGRpcmVjdGlvbjoib3V0Z29pbmciLHBoYXNlOiJyZXF1ZXN0Iix0aW1lc3RhbXA6YSxwYXlsb2FkOnR9KTtsZXQgbztyZXR1cm4gbz1hd2FpdCB0aGlzLnBvc3RUck9iamVjdChpLHIpLG89U3MuZGVjb2RlUGF5bG9hZEZyb21OZXR3b3JrKG8se3NlbmRNZXRob2Q6bj0+dGhpcy5wb3N0VHJPYmplY3Qobil9KSx0aGlzLnNraXBIb29rc3x8cFJ0KCJvbkluY29taW5nUmVzcG9uc2UiLHtjb3JyZWxhdGlvbklkOmkuY29ycmVsYXRpb24uaWQsbWV0aG9kOnRoaXMubWV0aG9kLGRpcmVjdGlvbjoiaW5jb21pbmciLHBoYXNlOiJyZXNwb25zZSIsdGltZXN0YW1wOkRhdGUubm93KCksZHVyYXRpb25NczpEYXRlLm5vdygpLWEscGF5bG9hZDpvPy5yZXNwb25zZSxlcnJvcjpvPy5lcnJvcj8udGV4dH0pLG8ucmVzcG9uc2V9YXN5bmMgcG9zdFRyT2JqZWN0KHQscj0hMSl7bGV0IGE7aWYodGhpcy51cmxFbmRQb2ludD9hPWF3YWl0IFQzYS5wb3N0SnNvbih0aGlzLnVybEVuZFBvaW50LHQscj97Y2FjaGVTdHJhdGVneToiY2FjaGUtZmlyc3QifTp7fSk6YT1hd2FpdCB0aGlzLnR5cGVkVGFyZ2V0LnBvc3QodCksYS5lcnJvcil7aWYoY29uc29sZS5lcnJvcihgbWV0aG9kOiA+PiR7dGhpcy5tZXRob2R9PDwgZ290IGFuIEVSUk9SOiAiJHthLmVycm9yLnRleHR9IiB3aXRoIGRhdGEgJHtKU09OLnN0cmluZ2lmeShhLmVycm9yLmRhdGEsbnVsbCwyKX1gKSwhYS5yZXRyeSl0aHJvdyBuZXcga3MoYS5lcnJvci50ZXh0LGEuZXJyb3IuZGF0YSk7cmV0dXJuIG51bGx9cmV0dXJuIGEucmV0cnkmJihjb25zb2xlLmxvZyhgc2VydmVyIHJlcXVlc3RlZCByZXRyeSBmb3IgdGhlIGZvbGxvd2luZyByZWFzb246ICR7YS5yZXRyeS5yZWFzb259YCksYXdhaXQgUXQuZGVsYXlGb3IoYS5yZXRyeS53YWl0Rm9yTXMpLGE9YXdhaXQgdGhpcy5wb3N0VHJPYmplY3QodCxyKSksYX19fSk7dmFyIGxvPXt9O3FlKGxvLHtUeXBlZEhhbmRsZXI6KCk9Pm5iZSxUeXBlZFJlcXVlc3Q6KCk9Pm55LFR5cGVkUmVzcG9uc2VFcnJvcjooKT0+a3MsVHlwZWRSb3V0ZXI6KCk9Pno2LFR5cGVkVGFyZ2V0OigpPT5jYmUsVmlydHVhbFN0cmVhbTooKT0+U3N9KTt2YXIgc3k9bCgoKT0+e2xiZSgpO3NiZSgpO295KCk7VzcoKTtkYmUoKTtmb2UoKX0pO2Z1bmN0aW9uIGhSdChlKXtyZXR1cm4gZSYmdHlwZW9mIGUudGhlbj09ImZ1bmN0aW9uIn1mdW5jdGlvbiBaMihlLHQpe3JldHVybiBlfHwoZT0wKSxuZXcgUHJvbWlzZShmdW5jdGlvbihyKXtyZXR1cm4gc2V0VGltZW91dChmdW5jdGlvbigpe3JldHVybiByKHQpfSxlKX0pfWZ1bmN0aW9uIHhSdChlLHQpe3JldHVybiBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqKHQtZSsxKStlKX1mdW5jdGlvbiBkYygpe3JldHVybiBNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zdWJzdHJpbmcoMil9ZnVuY3Rpb24gdWMoKXt2YXIgZT1EYXRlLm5vdygpKjFlMztyZXR1cm4gZTw9dWJlJiYoZT11YmUrMSksdWJlPWUsZX1mdW5jdGlvbiBiUnQoKXtyZXR1cm4gdHlwZW9mIG5hdmlnYXRvcjwidSImJnR5cGVvZiBuYXZpZ2F0b3IubG9ja3M8InUiJiZ0eXBlb2YgbmF2aWdhdG9yLmxvY2tzLnJlcXVlc3Q9PSJmdW5jdGlvbiJ9dmFyIG1SdCxnUnQsdG4sdWJlLEE0PWwoKCk9PnttUnQ9UHJvbWlzZS5yZXNvbHZlKCExKSxnUnQ9UHJvbWlzZS5yZXNvbHZlKCEwKSx0bj1Qcm9taXNlLnJlc29sdmUoKTt1YmU9MH0pO2Z1bmN0aW9uIEEzYShlKXt2YXIgdD17dGltZTp1YygpLG1lc3NhZ2VzQ2FsbGJhY2s6bnVsbCxiYzpuZXcgQnJvYWRjYXN0Q2hhbm5lbChlKSxzdWJGbnM6W119O3JldHVybiB0LmJjLm9ubWVzc2FnZT1mdW5jdGlvbihyKXt0Lm1lc3NhZ2VzQ2FsbGJhY2smJnQubWVzc2FnZXNDYWxsYmFjayhyLmRhdGEpfSx0fWZ1bmN0aW9uIEUzYShlKXtlLmJjLmNsb3NlKCksZS5zdWJGbnM9W119ZnVuY3Rpb24gJDNhKGUsdCl7dHJ5e3JldHVybiBlLmJjLnBvc3RNZXNzYWdlKHQsITEpLHRufWNhdGNoKHIpe3JldHVybiBQcm9taXNlLnJlamVjdChyKX19ZnVuY3Rpb24gUDNhKGUsdCl7ZS5tZXNzYWdlc0NhbGxiYWNrPXR9ZnVuY3Rpb24gSTNhKCl7aWYodHlwZW9mIGdsb2JhbFRoaXM8InUiJiZnbG9iYWxUaGlzLkRlbm8mJmdsb2JhbFRoaXMuRGVuby5hcmdzKXJldHVybiEwO2lmKCh0eXBlb2Ygd2luZG93PCJ1Inx8dHlwZW9mIHNlbGY8InUiKSYmdHlwZW9mIEJyb2FkY2FzdENoYW5uZWw9PSJmdW5jdGlvbiIpe2lmKEJyb2FkY2FzdENoYW5uZWwuX3B1YmtleSl0aHJvdyBuZXcgRXJyb3IoIkJyb2FkY2FzdENoYW5uZWw6IERvIG5vdCBvdmVyd3JpdGUgd2luZG93LkJyb2FkY2FzdENoYW5uZWwgd2l0aCB0aGlzIG1vZHVsZSwgdGhpcyBpcyBub3QgYSBwb2x5ZmlsbCIpO3JldHVybiEwfWVsc2UgcmV0dXJuITF9ZnVuY3Rpb24gTjNhKCl7cmV0dXJuIDE1MH12YXIgTDNhLEQzYSx2UnQseVJ0PWwoKCk9PntBNCgpO0wzYT11YyxEM2E9Im5hdGl2ZSI7dlJ0PXtjcmVhdGU6QTNhLGNsb3NlOkUzYSxvbk1lc3NhZ2U6UDNhLHBvc3RNZXNzYWdlOiQzYSxjYW5CZVVzZWQ6STNhLHR5cGU6RDNhLGF2ZXJhZ2VSZXNwb25zZVRpbWU6TjNhLG1pY3JvU2Vjb25kczpMM2F9fSk7ZnVuY3Rpb24gRjNhKGUpe2xldCB0PWZiZSgpLWUudHRsLHI9ZS5tYXBbU3ltYm9sLml0ZXJhdG9yXSgpO2Zvcig7Oyl7bGV0IGE9ci5uZXh0KCkudmFsdWU7aWYoIWEpYnJlYWs7bGV0IGk9YVswXTtpZihhWzFdPHQpZS5tYXAuZGVsZXRlKGkpO2Vsc2UgYnJlYWt9fWZ1bmN0aW9uIGZiZSgpe3JldHVybiBEYXRlLm5vdygpfXZhciBHNyxwYmU9bCgoKT0+e0c3PWNsYXNze3R0bDttYXA9bmV3IE1hcDtfdG89ITE7Y29uc3RydWN0b3IodCl7dGhpcy50dGw9dH1oYXModCl7bGV0IHI9dGhpcy5tYXAuZ2V0KHQpO3JldHVybiB0eXBlb2Ygcj4idSI/ITE6cjxmYmUoKS10aGlzLnR0bD8odGhpcy5tYXAuZGVsZXRlKHQpLCExKTohMH1hZGQodCl7dGhpcy5tYXAuZGVsZXRlKHQpLHRoaXMubWFwLnNldCh0LGZiZSgpKSx0aGlzLl90b3x8KHRoaXMuX3RvPSEwLHNldFRpbWVvdXQoKCk9Pnt0aGlzLl90bz0hMSxGM2EodGhpcyl9LDApKX1jbGVhcigpe3RoaXMubWFwLmNsZWFyKCl9fX0pO2Z1bmN0aW9uIEM2KCl7dmFyIGU9YXJndW1lbnRzLmxlbmd0aD4wJiZhcmd1bWVudHNbMF0hPT12b2lkIDA/YXJndW1lbnRzWzBdOnt9LHQ9SlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShlKSk7cmV0dXJuIHR5cGVvZiB0LndlYldvcmtlclN1cHBvcnQ+InUiJiYodC53ZWJXb3JrZXJTdXBwb3J0PSEwKSx0LmlkYnx8KHQuaWRiPXt9KSx0LmlkYi50dGx8fCh0LmlkYi50dGw9MWUzKjQ1KSx0LmlkYi5mYWxsYmFja0ludGVydmFsfHwodC5pZGIuZmFsbGJhY2tJbnRlcnZhbD0xNTApLGUuaWRiJiZ0eXBlb2YgZS5pZGIub25jbG9zZT09ImZ1bmN0aW9uIiYmKHQuaWRiLm9uY2xvc2U9ZS5pZGIub25jbG9zZSksdC5sb2NhbHN0b3JhZ2V8fCh0LmxvY2Fsc3RvcmFnZT17fSksdC5sb2NhbHN0b3JhZ2UucmVtb3ZlVGltZW91dHx8KHQubG9jYWxzdG9yYWdlLnJlbW92ZVRpbWVvdXQ9MWUzKjYwKSxlLm1ldGhvZHMmJih0Lm1ldGhvZHM9ZS5tZXRob2RzKSx0Lm5vZGV8fCh0Lm5vZGU9e30pLHQubm9kZS50dGx8fCh0Lm5vZGUudHRsPTFlMyo2MCoyKSx0Lm5vZGUubWF4UGFyYWxsZWxXcml0ZXN8fCh0Lm5vZGUubWF4UGFyYWxsZWxXcml0ZXM9MjA0OCksdHlwZW9mIHQubm9kZS51c2VGYXN0UGF0aD4idSImJih0Lm5vZGUudXNlRmFzdFBhdGg9ITApLHR9dmFyIHBvZT1sKCgpPT57fSk7ZnVuY3Rpb24gd1J0KCl7aWYodHlwZW9mIGluZGV4ZWREQjwidSIpcmV0dXJuIGluZGV4ZWREQjtpZih0eXBlb2Ygd2luZG93PCJ1Iil7aWYodHlwZW9mIHdpbmRvdy5tb3pJbmRleGVkREI8InUiKXJldHVybiB3aW5kb3cubW96SW5kZXhlZERCO2lmKHR5cGVvZiB3aW5kb3cud2Via2l0SW5kZXhlZERCPCJ1IilyZXR1cm4gd2luZG93LndlYmtpdEluZGV4ZWREQjtpZih0eXBlb2Ygd2luZG93Lm1zSW5kZXhlZERCPCJ1IilyZXR1cm4gd2luZG93Lm1zSW5kZXhlZERCfXJldHVybiExfWZ1bmN0aW9uIGhvZShlKXtlLmNvbW1pdCYmZS5jb21taXQoKX1mdW5jdGlvbiBIM2EoZSl7dmFyIHQ9d1J0KCkscj1SM2ErZSxhPXQub3BlbihyKTtyZXR1cm4gYS5vbnVwZ3JhZGVuZWVkZWQ9ZnVuY3Rpb24oaSl7dmFyIG89aS50YXJnZXQucmVzdWx0O28uY3JlYXRlT2JqZWN0U3RvcmUoenMse2tleVBhdGg6ImlkIixhdXRvSW5jcmVtZW50OiEwfSl9LG5ldyBQcm9taXNlKGZ1bmN0aW9uKGksbyl7YS5vbmVycm9yPWZ1bmN0aW9uKG4pe3JldHVybiBvKG4pfSxhLm9uc3VjY2Vzcz1mdW5jdGlvbigpe2koYS5yZXN1bHQpfX0pfWZ1bmN0aW9uIHEzYShlLHQscil7dmFyIGE9RGF0ZS5ub3coKSxpPXt1dWlkOnQsdGltZTphLGRhdGE6cn0sbz1lLnRyYW5zYWN0aW9uKFt6c10sInJlYWR3cml0ZSIsbHkpO3JldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihuLHMpe28ub25jb21wbGV0ZT1mdW5jdGlvbigpe3JldHVybiBuKCl9LG8ub25lcnJvcj1mdW5jdGlvbihkKXtyZXR1cm4gcyhkKX07dmFyIGM9by5vYmplY3RTdG9yZSh6cyk7Yy5hZGQoaSksaG9lKG8pfSl9ZnVuY3Rpb24gQzAxKGUpe3ZhciB0PWUudHJhbnNhY3Rpb24oenMsInJlYWRvbmx5IixseSkscj10Lm9iamVjdFN0b3JlKHpzKSxhPVtdO3JldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihpKXtyLm9wZW5DdXJzb3IoKS5vbnN1Y2Nlc3M9ZnVuY3Rpb24obyl7dmFyIG49by50YXJnZXQucmVzdWx0O24/KGEucHVzaChuLnZhbHVlKSxuLmNvbnRpbnVlKCkpOihob2UodCksaShhKSl9fSl9ZnVuY3Rpb24gajNhKGUsdCl7dmFyIHI9ZS50cmFuc2FjdGlvbih6cywicmVhZG9ubHkiLGx5KSxhPXIub2JqZWN0U3RvcmUoenMpLGk9W10sbz1JREJLZXlSYW5nZS5ib3VuZCh0KzEsMS8wKTtpZihhLmdldEFsbCl7dmFyIG49YS5nZXRBbGwobyk7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKGMsZCl7bi5vbmVycm9yPWZ1bmN0aW9uKGYpe3JldHVybiBkKGYpfSxuLm9uc3VjY2Vzcz1mdW5jdGlvbihmKXtjKGYudGFyZ2V0LnJlc3VsdCl9fSl9ZnVuY3Rpb24gcygpe3RyeXtyZXR1cm4gbz1JREJLZXlSYW5nZS5ib3VuZCh0KzEsMS8wKSxhLm9wZW5DdXJzb3Iobyl9Y2F0Y2h7cmV0dXJuIGEub3BlbkN1cnNvcigpfX1yZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24oYyxkKXt2YXIgZj1zKCk7Zi5vbmVycm9yPWZ1bmN0aW9uKHUpe3JldHVybiBkKHUpfSxmLm9uc3VjY2Vzcz1mdW5jdGlvbih1KXt2YXIgcD11LnRhcmdldC5yZXN1bHQ7cD9wLnZhbHVlLmlkPHQrMT9wLmNvbnRpbnVlKHQrMSk6KGkucHVzaChwLnZhbHVlKSxwLmNvbnRpbnVlKCkpOihob2UociksYyhpKSl9fSl9ZnVuY3Rpb24gVjNhKGUsdCl7aWYoZS5jbG9zZWQpcmV0dXJuIFByb21pc2UucmVzb2x2ZShbXSk7dmFyIHI9ZS5kYi50cmFuc2FjdGlvbih6cywicmVhZHdyaXRlIixseSksYT1yLm9iamVjdFN0b3JlKHpzKTtyZXR1cm4gUHJvbWlzZS5hbGwodC5tYXAoZnVuY3Rpb24oaSl7dmFyIG89YS5kZWxldGUoaSk7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKG4pe28ub25zdWNjZXNzPWZ1bmN0aW9uKCl7cmV0dXJuIG4oKX19KX0pKX1mdW5jdGlvbiBVM2EoZSx0KXt2YXIgcj1EYXRlLm5vdygpLXQsYT1lLnRyYW5zYWN0aW9uKHpzLCJyZWFkb25seSIsbHkpLGk9YS5vYmplY3RTdG9yZSh6cyksbz1bXTtyZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24obil7aS5vcGVuQ3Vyc29yKCkub25zdWNjZXNzPWZ1bmN0aW9uKHMpe3ZhciBjPXMudGFyZ2V0LnJlc3VsdDtpZihjKXt2YXIgZD1jLnZhbHVlO2QudGltZTxyPyhvLnB1c2goZCksYy5jb250aW51ZSgpKTooaG9lKGEpLG4obykpfWVsc2UgbihvKX19KX1mdW5jdGlvbiBXM2EoZSl7cmV0dXJuIFUzYShlLmRiLGUub3B0aW9ucy5pZGIudHRsKS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiBWM2EoZSx0Lm1hcChmdW5jdGlvbihyKXtyZXR1cm4gci5pZH0pKX0pfWZ1bmN0aW9uIEczYShlLHQpe3JldHVybiB0PUM2KHQpLEgzYShlKS50aGVuKGZ1bmN0aW9uKHIpe3ZhciBhPXtjbG9zZWQ6ITEsbGFzdEN1cnNvcklkOjAsY2hhbm5lbE5hbWU6ZSxvcHRpb25zOnQsdXVpZDpkYygpLGVNSXM6bmV3IEc3KHQuaWRiLnR0bCoyKSx3cml0ZUJsb2NrUHJvbWlzZTp0bixtZXNzYWdlc0NhbGxiYWNrOm51bGwscmVhZFF1ZXVlUHJvbWlzZXM6W10sZGI6cn07cmV0dXJuIHIub25jbG9zZT1mdW5jdGlvbigpe2EuY2xvc2VkPSEwLHQuaWRiLm9uY2xvc2UmJnQuaWRiLm9uY2xvc2UoKX0sTVJ0KGEpLGF9KX1mdW5jdGlvbiBNUnQoZSl7ZS5jbG9zZWR8fGtSdChlKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIFoyKGUub3B0aW9ucy5pZGIuZmFsbGJhY2tJbnRlcnZhbCl9KS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIE1SdChlKX0pfWZ1bmN0aW9uIFkzYShlLHQpe3JldHVybiEoZS51dWlkPT09dC51dWlkfHx0LmVNSXMuaGFzKGUuaWQpfHxlLmRhdGEudGltZTx0Lm1lc3NhZ2VzQ2FsbGJhY2tUaW1lKX1mdW5jdGlvbiBrUnQoZSl7cmV0dXJuIGUuY2xvc2VkP3RuOmUubWVzc2FnZXNDYWxsYmFjaz9qM2EoZS5kYixlLmxhc3RDdXJzb3JJZCkudGhlbihmdW5jdGlvbih0KXt2YXIgcj10LmZpbHRlcihmdW5jdGlvbihhKXtyZXR1cm4hIWF9KS5tYXAoZnVuY3Rpb24oYSl7cmV0dXJuIGEuaWQ+ZS5sYXN0Q3Vyc29ySWQmJihlLmxhc3RDdXJzb3JJZD1hLmlkKSxhfSkuZmlsdGVyKGZ1bmN0aW9uKGEpe3JldHVybiBZM2EoYSxlKX0pLnNvcnQoZnVuY3Rpb24oYSxpKXtyZXR1cm4gYS50aW1lLWkudGltZX0pO3JldHVybiByLmZvckVhY2goZnVuY3Rpb24oYSl7ZS5tZXNzYWdlc0NhbGxiYWNrJiYoZS5lTUlzLmFkZChhLmlkKSxlLm1lc3NhZ2VzQ2FsbGJhY2soYS5kYXRhKSl9KSx0bn0pOnRufWZ1bmN0aW9uIFozYShlKXtlLmNsb3NlZD0hMCxlLmRiLmNsb3NlKCl9ZnVuY3Rpb24gWDNhKGUsdCl7cmV0dXJuIGUud3JpdGVCbG9ja1Byb21pc2U9ZS53cml0ZUJsb2NrUHJvbWlzZS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIHEzYShlLmRiLGUudXVpZCx0KX0pLnRoZW4oZnVuY3Rpb24oKXt4UnQoMCwxMCk9PT0wJiZXM2EoZSl9KSxlLndyaXRlQmxvY2tQcm9taXNlfWZ1bmN0aW9uIFEzYShlLHQscil7ZS5tZXNzYWdlc0NhbGxiYWNrVGltZT1yLGUubWVzc2FnZXNDYWxsYmFjaz10LGtSdChlKX1mdW5jdGlvbiBLM2EoKXtyZXR1cm4hIXdSdCgpfWZ1bmN0aW9uIEozYShlKXtyZXR1cm4gZS5pZGIuZmFsbGJhY2tJbnRlcnZhbCoyfXZhciBPM2EsUjNhLHpzLGx5LEIzYSxTUnQselJ0PWwoKCk9PntBNCgpO3BiZSgpO3BvZSgpO08zYT11YyxSM2E9InB1YmtleS5icm9hZGNhc3QtY2hhbm5lbC0wLSIsenM9Im1lc3NhZ2VzIixseT17ZHVyYWJpbGl0eToicmVsYXhlZCJ9LEIzYT0iaWRiIjtTUnQ9e2NyZWF0ZTpHM2EsY2xvc2U6WjNhLG9uTWVzc2FnZTpRM2EscG9zdE1lc3NhZ2U6WDNhLGNhbkJlVXNlZDpLM2EsdHlwZTpCM2EsYXZlcmFnZVJlc3BvbnNlVGltZTpKM2EsbWljcm9TZWNvbmRzOk8zYX19KTtmdW5jdGlvbiBDUnQoKXt2YXIgZTtpZih0eXBlb2Ygd2luZG93PiJ1IilyZXR1cm4gbnVsbDt0cnl7ZT13aW5kb3cubG9jYWxTdG9yYWdlLGU9d2luZG93WyJpZTgtZXZlbnRsaXN0ZW5lci9zdG9yYWdlIl18fHdpbmRvdy5sb2NhbFN0b3JhZ2V9Y2F0Y2h7fXJldHVybiBlfWZ1bmN0aW9uIF9SdChlKXtyZXR1cm4gdGRhK2V9ZnVuY3Rpb24gYWRhKGUsdCl7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHIpe1oyKCkudGhlbihmdW5jdGlvbigpe3ZhciBhPV9SdChlLmNoYW5uZWxOYW1lKSxpPXt0b2tlbjpkYygpLHRpbWU6RGF0ZS5ub3coKSxkYXRhOnQsdXVpZDplLnV1aWR9LG89SlNPTi5zdHJpbmdpZnkoaSk7Q1J0KCkuc2V0SXRlbShhLG8pO3ZhciBuPWRvY3VtZW50LmNyZWF0ZUV2ZW50KCJFdmVudCIpO24uaW5pdEV2ZW50KCJzdG9yYWdlIiwhMCwhMCksbi5rZXk9YSxuLm5ld1ZhbHVlPW8sd2luZG93LmRpc3BhdGNoRXZlbnQobikscigpfSl9KX1mdW5jdGlvbiBpZGEoZSx0KXt2YXIgcj1fUnQoZSksYT1mdW5jdGlvbihvKXtvLmtleT09PXImJnQoSlNPTi5wYXJzZShvLm5ld1ZhbHVlKSl9O3JldHVybiB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigic3RvcmFnZSIsYSksYX1mdW5jdGlvbiBvZGEoZSl7d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInN0b3JhZ2UiLGUpfWZ1bmN0aW9uIG5kYShlLHQpe2lmKHQ9QzYodCksIVRSdCgpKXRocm93IG5ldyBFcnJvcigiQnJvYWRjYXN0Q2hhbm5lbDogbG9jYWxzdG9yYWdlIGNhbm5vdCBiZSB1c2VkIik7dmFyIHI9ZGMoKSxhPW5ldyBHNyh0LmxvY2Fsc3RvcmFnZS5yZW1vdmVUaW1lb3V0KSxpPXtjaGFubmVsTmFtZTplLHV1aWQ6cixlTUlzOmF9O3JldHVybiBpLmxpc3RlbmVyPWlkYShlLGZ1bmN0aW9uKG8pe2kubWVzc2FnZXNDYWxsYmFjayYmby51dWlkIT09ciYmKCFvLnRva2VufHxhLmhhcyhvLnRva2VuKXx8by5kYXRhLnRpbWUmJm8uZGF0YS50aW1lPGkubWVzc2FnZXNDYWxsYmFja1RpbWV8fChhLmFkZChvLnRva2VuKSxpLm1lc3NhZ2VzQ2FsbGJhY2soby5kYXRhKSkpfSksaX1mdW5jdGlvbiBzZGEoZSl7b2RhKGUubGlzdGVuZXIpfWZ1bmN0aW9uIGxkYShlLHQscil7ZS5tZXNzYWdlc0NhbGxiYWNrVGltZT1yLGUubWVzc2FnZXNDYWxsYmFjaz10fWZ1bmN0aW9uIFRSdCgpe3ZhciBlPUNSdCgpO2lmKCFlKXJldHVybiExO3RyeXt2YXIgdD0iX19icm9hZGNhc3RjaGFubmVsX2NoZWNrIjtlLnNldEl0ZW0odCwid29ya3MiKSxlLnJlbW92ZUl0ZW0odCl9Y2F0Y2h7cmV0dXJuITF9cmV0dXJuITB9ZnVuY3Rpb24gY2RhKCl7dmFyIGU9MTIwLHQ9bmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpO3JldHVybiB0LmluY2x1ZGVzKCJzYWZhcmkiKSYmIXQuaW5jbHVkZXMoImNocm9tZSIpP2UqMjplfXZhciBlZGEsdGRhLHJkYSxMUnQsRFJ0PWwoKCk9PntwYmUoKTtwb2UoKTtBNCgpO2VkYT11Yyx0ZGE9InB1YmtleS5icm9hZGNhc3RDaGFubmVsLSIscmRhPSJsb2NhbHN0b3JhZ2UiO0xSdD17Y3JlYXRlOm5kYSxjbG9zZTpzZGEsb25NZXNzYWdlOmxkYSxwb3N0TWVzc2FnZTphZGEsY2FuQmVVc2VkOlRSdCx0eXBlOnJkYSxhdmVyYWdlUmVzcG9uc2VUaW1lOmNkYSxtaWNyb1NlY29uZHM6ZWRhfX0pO2Z1bmN0aW9uIHVkYShlKXt2YXIgdD17dGltZTpBUnQoKSxuYW1lOmUsbWVzc2FnZXNDYWxsYmFjazpudWxsfTtyZXR1cm4gaGJlLmFkZCh0KSx0fWZ1bmN0aW9uIGZkYShlKXtoYmUuZGVsZXRlKGUpfWZ1bmN0aW9uIHBkYShlLHQpe3JldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihyKXtyZXR1cm4gc2V0VGltZW91dChmdW5jdGlvbigpe3ZhciBhPUFycmF5LmZyb20oaGJlKTthLmZvckVhY2goZnVuY3Rpb24oaSl7aS5uYW1lPT09ZS5uYW1lJiZpIT09ZSYmaS5tZXNzYWdlc0NhbGxiYWNrJiZpLnRpbWU8dC50aW1lJiZpLm1lc3NhZ2VzQ2FsbGJhY2sodCl9KSxyKCl9LEVSdCl9KX1mdW5jdGlvbiBoZGEoZSx0KXtlLm1lc3NhZ2VzQ2FsbGJhY2s9dH1mdW5jdGlvbiBtZGEoKXtyZXR1cm4hMH1mdW5jdGlvbiBnZGEoKXtyZXR1cm4gRVJ0fXZhciBBUnQsZGRhLGhiZSxFUnQsJFJ0LFBSdD1sKCgpPT57QTQoKTtBUnQ9dWMsZGRhPSJzaW11bGF0ZSIsaGJlPW5ldyBTZXQ7RVJ0PTU7JFJ0PXtjcmVhdGU6dWRhLGNsb3NlOmZkYSxvbk1lc3NhZ2U6aGRhLHBvc3RNZXNzYWdlOnBkYSxjYW5CZVVzZWQ6bWRhLHR5cGU6ZGRhLGF2ZXJhZ2VSZXNwb25zZVRpbWU6Z2RhLG1pY3JvU2Vjb25kczpBUnR9fSk7ZnVuY3Rpb24gbWJlKGUpe3ZhciB0PVtdLmNvbmNhdChlLm1ldGhvZHMsSVJ0KS5maWx0ZXIoQm9vbGVhbik7aWYoZS50eXBlKXtpZihlLnR5cGU9PT0ic2ltdWxhdGUiKXJldHVybiAkUnQ7dmFyIHI9dC5maW5kKGZ1bmN0aW9uKGkpe3JldHVybiBpLnR5cGU9PT1lLnR5cGV9KTtpZihyKXJldHVybiByO3Rocm93IG5ldyBFcnJvcigibWV0aG9kLXR5cGUgIitlLnR5cGUrIiBub3QgZm91bmQiKX1lLndlYldvcmtlclN1cHBvcnR8fCh0PXQuZmlsdGVyKGZ1bmN0aW9uKGkpe3JldHVybiBpLnR5cGUhPT0iaWRiIn0pKTt2YXIgYT10LmZpbmQoZnVuY3Rpb24oaSl7cmV0dXJuIGkuY2FuQmVVc2VkKCl9KTtpZihhKXJldHVybiBhO3Rocm93IG5ldyBFcnJvcigiTm8gdXNhYmxlIG1ldGhvZCBmb3VuZCBpbiAiK0pTT04uc3RyaW5naWZ5KElSdC5tYXAoZnVuY3Rpb24oaSl7cmV0dXJuIGkudHlwZX0pKSl9dmFyIElSdCxOUnQ9bCgoKT0+e3lSdCgpO3pSdCgpO0RSdCgpO1BSdCgpO0lSdD1bdlJ0LFNSdCxMUnRdfSk7ZnVuY3Rpb24gYmRhKGUpe2U9QzYoZSk7dmFyIHQ9bWJlKGUpO3JldHVybiB0LnR5cGU9PT0ibm9kZSI/dC5jbGVhck5vZGVGb2xkZXIoKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuITB9KTptUnR9ZnVuY3Rpb24gdmRhKGUpe2diZT1lfWZ1bmN0aW9uIEZSdChlLHQscil7dmFyIGE9ZS5tZXRob2QubWljcm9TZWNvbmRzKCksaT17dGltZTphLHR5cGU6dCxkYXRhOnJ9LG89ZS5fcHJlcFA/ZS5fcHJlcFA6dG47cmV0dXJuIG8udGhlbihmdW5jdGlvbigpe3ZhciBuPWUubWV0aG9kLnBvc3RNZXNzYWdlKGUuX3N0YXRlLGkpO3JldHVybiBlLl91TVAuYWRkKG4pLG4uY2F0Y2goKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGUuX3VNUC5kZWxldGUobil9KSxufSl9ZnVuY3Rpb24geWRhKGUpe3ZhciB0PWUubWV0aG9kLmNyZWF0ZShlLm5hbWUsZS5vcHRpb25zKTtoUnQodCk/KGUuX3ByZXBQPXQsdC50aGVuKGZ1bmN0aW9uKHIpe2UuX3N0YXRlPXJ9KSk6ZS5fc3RhdGU9dH1mdW5jdGlvbiBPUnQoZSl7cmV0dXJuIGUuX2FkZEVMLm1lc3NhZ2UubGVuZ3RoPjB8fGUuX2FkZEVMLmludGVybmFsLmxlbmd0aD4wfWZ1bmN0aW9uIFJSdChlLHQscil7ZS5fYWRkRUxbdF0ucHVzaChyKSx3ZGEoZSl9ZnVuY3Rpb24gQlJ0KGUsdCxyKXtlLl9hZGRFTFt0XT1lLl9hZGRFTFt0XS5maWx0ZXIoZnVuY3Rpb24oYSl7cmV0dXJuIGEhPT1yfSksTWRhKGUpfWZ1bmN0aW9uIHdkYShlKXtpZighZS5faUwmJk9SdChlKSl7dmFyIHQ9ZnVuY3Rpb24oaSl7ZS5fYWRkRUxbaS50eXBlXS5mb3JFYWNoKGZ1bmN0aW9uKG8pe2kudGltZT49by50aW1lJiZvLmZuKGkuZGF0YSl9KX0scj1lLm1ldGhvZC5taWNyb1NlY29uZHMoKTtlLl9wcmVwUD9lLl9wcmVwUC50aGVuKGZ1bmN0aW9uKCl7ZS5faUw9ITAsZS5tZXRob2Qub25NZXNzYWdlKGUuX3N0YXRlLHQscil9KTooZS5faUw9ITAsZS5tZXRob2Qub25NZXNzYWdlKGUuX3N0YXRlLHQscikpfX1mdW5jdGlvbiBNZGEoZSl7aWYoZS5faUwmJiFPUnQoZSkpe2UuX2lMPSExO3ZhciB0PWUubWV0aG9kLm1pY3JvU2Vjb25kcygpO2UubWV0aG9kLm9uTWVzc2FnZShlLl9zdGF0ZSxudWxsLHQpfX12YXIgeGJlLHhkYSxfNixnYmUsSFJ0PWwoKCk9PntBNCgpO05SdCgpO3BvZSgpO3hiZT1uZXcgU2V0LHhkYT0wLF82PWZ1bmN0aW9uKHQscil7dGhpcy5pZD14ZGErKyx4YmUuYWRkKHRoaXMpLHRoaXMubmFtZT10LGdiZSYmKHI9Z2JlKSx0aGlzLm9wdGlvbnM9QzYociksdGhpcy5tZXRob2Q9bWJlKHRoaXMub3B0aW9ucyksdGhpcy5faUw9ITEsdGhpcy5fb25NTD1udWxsLHRoaXMuX2FkZEVMPXttZXNzYWdlOltdLGludGVybmFsOltdfSx0aGlzLl91TVA9bmV3IFNldCx0aGlzLl9iZWZDPVtdLHRoaXMuX3ByZXBQPW51bGwseWRhKHRoaXMpfTtfNi5fcHVia2V5PSEwO182LnByb3RvdHlwZT17cG9zdE1lc3NhZ2U6ZnVuY3Rpb24odCl7aWYodGhpcy5jbG9zZWQpdGhyb3cgbmV3IEVycm9yKCJCcm9hZGNhc3RDaGFubmVsLnBvc3RNZXNzYWdlKCk6IENhbm5vdCBwb3N0IG1lc3NhZ2UgYWZ0ZXIgY2hhbm5lbCBoYXMgY2xvc2VkICIrSlNPTi5zdHJpbmdpZnkodCkpO3JldHVybiBGUnQodGhpcywibWVzc2FnZSIsdCl9LHBvc3RJbnRlcm5hbDpmdW5jdGlvbih0KXtyZXR1cm4gRlJ0KHRoaXMsImludGVybmFsIix0KX0sc2V0IG9ubWVzc2FnZShlKXt2YXIgdD10aGlzLm1ldGhvZC5taWNyb1NlY29uZHMoKSxyPXt0aW1lOnQsZm46ZX07QlJ0KHRoaXMsIm1lc3NhZ2UiLHRoaXMuX29uTUwpLGUmJnR5cGVvZiBlPT0iZnVuY3Rpb24iPyh0aGlzLl9vbk1MPXIsUlJ0KHRoaXMsIm1lc3NhZ2UiLHIpKTp0aGlzLl9vbk1MPW51bGx9LGFkZEV2ZW50TGlzdGVuZXI6ZnVuY3Rpb24odCxyKXt2YXIgYT10aGlzLm1ldGhvZC5taWNyb1NlY29uZHMoKSxpPXt0aW1lOmEsZm46cn07UlJ0KHRoaXMsdCxpKX0scmVtb3ZlRXZlbnRMaXN0ZW5lcjpmdW5jdGlvbih0LHIpe3ZhciBhPXRoaXMuX2FkZEVMW3RdLmZpbmQoZnVuY3Rpb24oaSl7cmV0dXJuIGkuZm49PT1yfSk7QlJ0KHRoaXMsdCxhKX0sY2xvc2U6ZnVuY3Rpb24oKXt2YXIgdD10aGlzO2lmKCF0aGlzLmNsb3NlZCl7eGJlLmRlbGV0ZSh0aGlzKSx0aGlzLmNsb3NlZD0hMDt2YXIgcj10aGlzLl9wcmVwUD90aGlzLl9wcmVwUDp0bjtyZXR1cm4gdGhpcy5fb25NTD1udWxsLHRoaXMuX2FkZEVMLm1lc3NhZ2U9W10sci50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIFByb21pc2UuYWxsKEFycmF5LmZyb20odC5fdU1QKSl9KS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIFByb21pc2UuYWxsKHQuX2JlZkMubWFwKGZ1bmN0aW9uKGEpe3JldHVybiBhKCl9KSl9KS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIHQubWV0aG9kLmNsb3NlKHQuX3N0YXRlKX0pfX0sZ2V0IHR5cGUoKXtyZXR1cm4gdGhpcy5tZXRob2QudHlwZX0sZ2V0IGlzQ2xvc2VkKCl7cmV0dXJuIHRoaXMuY2xvc2VkfX19KTtmdW5jdGlvbiBxUnQoZSl7aWYodHlwZW9mIFdvcmtlckdsb2JhbFNjb3BlPT0iZnVuY3Rpb24iJiZzZWxmIGluc3RhbmNlb2YgV29ya2VyR2xvYmFsU2NvcGUpe3ZhciB0PXNlbGYuY2xvc2UuYmluZChzZWxmKTtzZWxmLmNsb3NlPWZ1bmN0aW9uKCl7cmV0dXJuIGUoKSx0KCl9fWVsc2V7aWYodHlwZW9mIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyIT0iZnVuY3Rpb24iKXJldHVybjt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiYmVmb3JldW5sb2FkIixmdW5jdGlvbigpe2UoKX0sITApLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJ1bmxvYWQiLGZ1bmN0aW9uKCl7ZSgpfSwhMCl9fXZhciBqUnQ9bCgoKT0+e30pO2Z1bmN0aW9uIFZSdChlKXtwcm9jZXNzLm9uKCJleGl0IixmdW5jdGlvbigpe3JldHVybiBlKCl9KSxwcm9jZXNzLm9uKCJiZWZvcmVFeGl0IixmdW5jdGlvbigpe3JldHVybiBlKCkudGhlbihmdW5jdGlvbigpe3JldHVybiBwcm9jZXNzLmV4aXQoKX0pfSkscHJvY2Vzcy5vbigiU0lHSU5UIixmdW5jdGlvbigpe3JldHVybiBlKCkudGhlbihmdW5jdGlvbigpe3JldHVybiBwcm9jZXNzLmV4aXQoKX0pfSkscHJvY2Vzcy5vbigidW5jYXVnaHRFeGNlcHRpb24iLGZ1bmN0aW9uKHQpe3JldHVybiBlKCkudGhlbihmdW5jdGlvbigpe2NvbnNvbGUudHJhY2UodCkscHJvY2Vzcy5leGl0KDEwMSl9KX0pfXZhciBVUnQ9bCgoKT0+e30pO2Z1bmN0aW9uIHpkYSgpe1dSdHx8KFdSdD0hMCxTZGEoQ2RhKSl9ZnVuY3Rpb24gR1J0KGUpe2lmKHpkYSgpLHR5cGVvZiBlIT0iZnVuY3Rpb24iKXRocm93IG5ldyBFcnJvcigiTGlzdGVuZXIgaXMgbm8gZnVuY3Rpb24iKTtUNi5hZGQoZSk7dmFyIHQ9e3JlbW92ZTpmdW5jdGlvbigpe3JldHVybiBUNi5kZWxldGUoZSl9LHJ1bjpmdW5jdGlvbigpe3JldHVybiBUNi5kZWxldGUoZSksZSgpfX07cmV0dXJuIHR9ZnVuY3Rpb24gQ2RhKCl7dmFyIGU9W107cmV0dXJuIFQ2LmZvckVhY2goZnVuY3Rpb24odCl7ZS5wdXNoKHQoKSksVDYuZGVsZXRlKHQpfSksUHJvbWlzZS5hbGwoZSl9ZnVuY3Rpb24gRzAxKCl7VDYuY2xlYXIoKX1mdW5jdGlvbiBZMDEoKXtyZXR1cm4gVDYuc2l6ZX12YXIga2RhLFNkYSxUNixXUnQsWVJ0PWwoKCk9PntqUnQoKTtVUnQoKTtrZGE9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHR5cGVvZiBwcm9jZXNzPCJ1Ij9wcm9jZXNzOjApPT09IltvYmplY3QgcHJvY2Vzc10iLFNkYT1rZGE/VlJ0OnFSdCxUNj1uZXcgU2V0LFdSdD0hMX0pO2Z1bmN0aW9uIGZjKGUsdCl7dmFyIHI9e2NvbnRleHQ6ImxlYWRlciIsYWN0aW9uOnQsdG9rZW46ZS50b2tlbn07cmV0dXJuIGUuYnJvYWRjYXN0Q2hhbm5lbC5wb3N0SW50ZXJuYWwocil9ZnVuY3Rpb24gY3koZSl7ZS5pc0xlYWRlcj0hMCxlLl9oYXNMZWFkZXI9ITA7dmFyIHQ9R1J0KGZ1bmN0aW9uKCl7cmV0dXJuIGUuZGllKCl9KTtlLl91bmwucHVzaCh0KTt2YXIgcj1mdW5jdGlvbihpKXtpLmNvbnRleHQ9PT0ibGVhZGVyIiYmaS5hY3Rpb249PT0iYXBwbHkiJiZmYyhlLCJ0ZWxsIiksaS5jb250ZXh0PT09ImxlYWRlciImJmkuYWN0aW9uPT09InRlbGwiJiYhZS5fZHBMQyYmKGUuX2RwTEM9ITAsZS5fZHBMKCksZmMoZSwidGVsbCIpKX07cmV0dXJuIGUuYnJvYWRjYXN0Q2hhbm5lbC5hZGRFdmVudExpc3RlbmVyKCJpbnRlcm5hbCIsciksZS5fbHN0bnMucHVzaChyKSxmYyhlLCJ0ZWxsIil9dmFyIG1vZT1sKCgpPT57WVJ0KCl9KTt2YXIgYmJlLFpSdCxYUnQ9bCgoKT0+e0E0KCk7bW9lKCk7YmJlPWZ1bmN0aW9uKHQscil7dmFyIGE9dGhpczt0aGlzLmJyb2FkY2FzdENoYW5uZWw9dCx0Ll9iZWZDLnB1c2goZnVuY3Rpb24oKXtyZXR1cm4gYS5kaWUoKX0pLHRoaXMuX29wdGlvbnM9cix0aGlzLmlzTGVhZGVyPSExLHRoaXMuaXNEZWFkPSExLHRoaXMudG9rZW49ZGMoKSx0aGlzLl9sc3Rucz1bXSx0aGlzLl91bmw9W10sdGhpcy5fZHBMPWZ1bmN0aW9uKCl7fSx0aGlzLl9kcExDPSExLHRoaXMuX3dLTUM9e30sdGhpcy5sTj0icHVia2V5LWJjfHwiK3QubWV0aG9kLnR5cGUrInx8Iit0Lm5hbWV9LFpSdD0iTGVhZGVyRWxlY3Rpb25XZWJMb2NrLmRpZSgpIGNhbGxlZCI7YmJlLnByb3RvdHlwZT17aGFzTGVhZGVyOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcztyZXR1cm4gbmF2aWdhdG9yLmxvY2tzLnF1ZXJ5KCkudGhlbihmdW5jdGlvbihyKXt2YXIgYT1yLmhlbGQ/ci5oZWxkLmZpbHRlcihmdW5jdGlvbihpKXtyZXR1cm4gaS5uYW1lPT09dC5sTn0pOltdO3JldHVybiEhKGEmJmEubGVuZ3RoPjApfSl9LGF3YWl0TGVhZGVyc2hpcDpmdW5jdGlvbigpe3ZhciB0PXRoaXM7aWYoIXRoaXMuX3dMTVApe3RoaXMuX3dLTUMuYz1uZXcgQWJvcnRDb250cm9sbGVyO3ZhciByPW5ldyBQcm9taXNlKGZ1bmN0aW9uKGEsaSl7dC5fd0tNQy5yZXM9YSx0Ll93S01DLnJlaj1pfSk7dGhpcy5fd0xNUD1uZXcgUHJvbWlzZShmdW5jdGlvbihhLGkpe25hdmlnYXRvci5sb2Nrcy5yZXF1ZXN0KHQubE4se3NpZ25hbDp0Ll93S01DLmMuc2lnbmFsfSxmdW5jdGlvbigpe3JldHVybiB0Ll93S01DLmM9dm9pZCAwLGN5KHQpLGEoKSxyfSkuY2F0Y2goZnVuY3Rpb24obyl7by5tZXNzYWdlJiZvLm1lc3NhZ2U9PT1aUnR8fCh0Ll93S01DLnJlaiYmdC5fd0tNQy5yZWoobyksaShvKSl9KX0pfXJldHVybiB0aGlzLl93TE1QfSxzZXQgb25kdXBsaWNhdGUoZSl7fSxkaWU6ZnVuY3Rpb24oKXt2YXIgdD10aGlzO3JldHVybiB0aGlzLl9sc3Rucy5mb3JFYWNoKGZ1bmN0aW9uKHIpe3JldHVybiB0LmJyb2FkY2FzdENoYW5uZWwucmVtb3ZlRXZlbnRMaXN0ZW5lcigiaW50ZXJuYWwiLHIpfSksdGhpcy5fbHN0bnM9W10sdGhpcy5fdW5sLmZvckVhY2goZnVuY3Rpb24ocil7cmV0dXJuIHIucmVtb3ZlKCl9KSx0aGlzLl91bmw9W10sdGhpcy5pc0xlYWRlciYmKHRoaXMuaXNMZWFkZXI9ITEpLHRoaXMuaXNEZWFkPSEwLHRoaXMuX3dLTUMucmVzJiZ0aGlzLl93S01DLnJlcygpLHRoaXMuX3dLTUMuYyYmdGhpcy5fd0tNQy5jLmFib3J0KG5ldyBFcnJvcihaUnQpKSxmYyh0aGlzLCJkZWF0aCIpfX19KTtmdW5jdGlvbiBfZGEoZSl7cmV0dXJuIGUuaXNMZWFkZXI/dG46bmV3IFByb21pc2UoZnVuY3Rpb24odCl7dmFyIHI9ITE7ZnVuY3Rpb24gYSgpe3J8fChyPSEwLGUuYnJvYWRjYXN0Q2hhbm5lbC5yZW1vdmVFdmVudExpc3RlbmVyKCJpbnRlcm5hbCIsbyksdCghMCkpfWUuYXBwbHlPbmNlKCkudGhlbihmdW5jdGlvbigpe2UuaXNMZWFkZXImJmEoKX0pO3ZhciBpPWZ1bmN0aW9uKCl7cmV0dXJuIFoyKGUuX29wdGlvbnMuZmFsbGJhY2tJbnRlcnZhbCkudGhlbihmdW5jdGlvbigpe2lmKCEoZS5pc0RlYWR8fHIpKWlmKGUuaXNMZWFkZXIpYSgpO2Vsc2UgcmV0dXJuIGUuYXBwbHlPbmNlKCEwKS50aGVuKGZ1bmN0aW9uKCl7ZS5pc0xlYWRlcj9hKCk6aSgpfSl9KX07aSgpO3ZhciBvPWZ1bmN0aW9uKHMpe3MuY29udGV4dD09PSJsZWFkZXIiJiZzLmFjdGlvbj09PSJkZWF0aCImJihlLl9oYXNMZWFkZXI9ITEsZS5hcHBseU9uY2UoKS50aGVuKGZ1bmN0aW9uKCl7ZS5pc0xlYWRlciYmYSgpfSkpfTtlLmJyb2FkY2FzdENoYW5uZWwuYWRkRXZlbnRMaXN0ZW5lcigiaW50ZXJuYWwiLG8pLGUuX2xzdG5zLnB1c2gobyl9KX1mdW5jdGlvbiBUZGEoZSx0KXtyZXR1cm4gZXx8KGU9e30pLGU9SlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShlKSksZS5mYWxsYmFja0ludGVydmFsfHwoZS5mYWxsYmFja0ludGVydmFsPTNlMyksZS5yZXNwb25zZVRpbWV8fChlLnJlc3BvbnNlVGltZT10Lm1ldGhvZC5hdmVyYWdlUmVzcG9uc2VUaW1lKHQub3B0aW9ucykpLGV9ZnVuY3Rpb24gTGRhKGUsdCl7aWYoZS5fbGVhZGVyRWxlY3Rvcil0aHJvdyBuZXcgRXJyb3IoIkJyb2FkY2FzdENoYW5uZWwgYWxyZWFkeSBoYXMgYSBsZWFkZXItZWxlY3RvciIpO3Q9VGRhKHQsZSk7dmFyIHI9YlJ0KCk/bmV3IGJiZShlLHQpOm5ldyBRUnQoZSx0KTtyZXR1cm4gZS5fYmVmQy5wdXNoKGZ1bmN0aW9uKCl7cmV0dXJuIHIuZGllKCl9KSxlLl9sZWFkZXJFbGVjdG9yPXIscn12YXIgUVJ0LEtSdD1sKCgpPT57QTQoKTttb2UoKTtYUnQoKTtRUnQ9ZnVuY3Rpb24odCxyKXt2YXIgYT10aGlzO3RoaXMuYnJvYWRjYXN0Q2hhbm5lbD10LHRoaXMuX29wdGlvbnM9cix0aGlzLmlzTGVhZGVyPSExLHRoaXMuX2hhc0xlYWRlcj0hMSx0aGlzLmlzRGVhZD0hMSx0aGlzLnRva2VuPWRjKCksdGhpcy5fYXBsUT10bix0aGlzLl9hcGxRQz0wLHRoaXMuX3VubD1bXSx0aGlzLl9sc3Rucz1bXSx0aGlzLl9kcEw9ZnVuY3Rpb24oKXt9LHRoaXMuX2RwTEM9ITE7dmFyIGk9ZnVuY3Rpb24obil7bi5jb250ZXh0PT09ImxlYWRlciImJihuLmFjdGlvbj09PSJkZWF0aCImJihhLl9oYXNMZWFkZXI9ITEpLG4uYWN0aW9uPT09InRlbGwiJiYoYS5faGFzTGVhZGVyPSEwKSl9O3RoaXMuYnJvYWRjYXN0Q2hhbm5lbC5hZGRFdmVudExpc3RlbmVyKCJpbnRlcm5hbCIsaSksdGhpcy5fbHN0bnMucHVzaChpKX07UVJ0LnByb3RvdHlwZT17aGFzTGVhZGVyOmZ1bmN0aW9uKCl7cmV0dXJuIFByb21pc2UucmVzb2x2ZSh0aGlzLl9oYXNMZWFkZXIpfSxhcHBseU9uY2U6ZnVuY3Rpb24odCl7dmFyIHI9dGhpcztpZih0aGlzLmlzTGVhZGVyKXJldHVybiBaMigwLCEwKTtpZih0aGlzLmlzRGVhZClyZXR1cm4gWjIoMCwhMSk7aWYodGhpcy5fYXBsUUM+MSlyZXR1cm4gdGhpcy5fYXBsUTt2YXIgYT1mdW5jdGlvbigpe2lmKHIuaXNMZWFkZXIpcmV0dXJuIGdSdDt2YXIgbz0hMSxuLHM9bmV3IFByb21pc2UoZnVuY3Rpb24oZil7bj1mdW5jdGlvbigpe289ITAsZigpfX0pLGM9ZnVuY3Rpb24odSl7dS5jb250ZXh0PT09ImxlYWRlciImJnUudG9rZW4hPXIudG9rZW4mJih1LmFjdGlvbj09PSJhcHBseSImJnUudG9rZW4+ci50b2tlbiYmbigpLHUuYWN0aW9uPT09InRlbGwiJiYobigpLHIuX2hhc0xlYWRlcj0hMCkpfTtyLmJyb2FkY2FzdENoYW5uZWwuYWRkRXZlbnRMaXN0ZW5lcigiaW50ZXJuYWwiLGMpO3ZhciBkPXQ/ci5fb3B0aW9ucy5yZXNwb25zZVRpbWUqNDpyLl9vcHRpb25zLnJlc3BvbnNlVGltZTtyZXR1cm4gZmMociwiYXBwbHkiKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIFByb21pc2UucmFjZShbWjIoZCkscy50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIFByb21pc2UucmVqZWN0KG5ldyBFcnJvcil9KV0pfSkudGhlbihmdW5jdGlvbigpe3JldHVybiBmYyhyLCJhcHBseSIpfSkudGhlbihmdW5jdGlvbigpe3JldHVybiBQcm9taXNlLnJhY2UoW1oyKGQpLHMudGhlbihmdW5jdGlvbigpe3JldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IpfSldKX0pLmNhdGNoKGZ1bmN0aW9uKCl7fSkudGhlbihmdW5jdGlvbigpe3JldHVybiByLmJyb2FkY2FzdENoYW5uZWwucmVtb3ZlRXZlbnRMaXN0ZW5lcigiaW50ZXJuYWwiLGMpLG8/ITE6Y3kocikudGhlbihmdW5jdGlvbigpe3JldHVybiEwfSl9KX07cmV0dXJuIHRoaXMuX2FwbFFDPXRoaXMuX2FwbFFDKzEsdGhpcy5fYXBsUT10aGlzLl9hcGxRLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gYSgpfSkudGhlbihmdW5jdGlvbigpe3IuX2FwbFFDPXIuX2FwbFFDLTF9KSx0aGlzLl9hcGxRLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gci5pc0xlYWRlcn0pfSxhd2FpdExlYWRlcnNoaXA6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fYUxQfHwodGhpcy5fYUxQPV9kYSh0aGlzKSksdGhpcy5fYUxQfSxzZXQgb25kdXBsaWNhdGUoZSl7dGhpcy5fZHBMPWV9LGRpZTpmdW5jdGlvbigpe3ZhciB0PXRoaXM7cmV0dXJuIHRoaXMuX2xzdG5zLmZvckVhY2goZnVuY3Rpb24ocil7cmV0dXJuIHQuYnJvYWRjYXN0Q2hhbm5lbC5yZW1vdmVFdmVudExpc3RlbmVyKCJpbnRlcm5hbCIscil9KSx0aGlzLl9sc3Rucz1bXSx0aGlzLl91bmwuZm9yRWFjaChmdW5jdGlvbihyKXtyZXR1cm4gci5yZW1vdmUoKX0pLHRoaXMuX3VubD1bXSx0aGlzLmlzTGVhZGVyJiYodGhpcy5faGFzTGVhZGVyPSExLHRoaXMuaXNMZWFkZXI9ITEpLHRoaXMuaXNEZWFkPSEwLGZjKHRoaXMsImRlYXRoIil9fX0pO3ZhciBKUnQ9bCgoKT0+e0hSdCgpO0tSdCgpO21vZSgpfSk7dmFyIGVCdD1sKCgpPT57czQoKTt3YWUoKTtzeSgpO0pSdCgpfSk7dmFyIHZiZSx5YmUsdEJ0PWwoKCk9PntlQnQoKTt2YmU9Z2xvYmFsVGhpcy5Ccm9hZGNhc3RDaGFubmVsO3ZiZXx8KHZiZT1fNik7eWJlPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5icm9hZGNhc3RDaGFubmVsPW5ldyB2YmUoImRlZXMtY29tbXMiKSx0aGlzLnR5cGVkcm91dGVyPW5ldyBsby5UeXBlZFJvdXRlcix0aGlzLnR5cGVkdGFyZ2V0PW5ldyBsby5UeXBlZFRhcmdldCh7cG9zdE1ldGhvZFdpdGhUeXBlZFJvdXRlcjphc3luYyB0PT57dGhpcy5wb3N0TWVzc2FnZSh0KX0sdHlwZWRSb3V0ZXJSZWY6dGhpcy50eXBlZHJvdXRlcn0pLHRoaXMuYnJvYWRjYXN0Q2hhbm5lbC5vbm1lc3NhZ2U9YXN5bmMgdD0+e2xldCByPXQubWV0aG9kP3Q6dC5kYXRhO2NvbnNvbGUubG9nKEpTT04uc3RyaW5naWZ5KHIpKTtsZXQgYT1hd2FpdCB0aGlzLnR5cGVkcm91dGVyLnJvdXRlQW5kQWRkUmVzcG9uc2Uocix7c2tpcEhvb2tzOiEwfSk7YSYmIWEuZXJyb3ImJnRoaXMucG9zdE1lc3NhZ2UoYSl9fWNyZWF0ZVR5cGVkUmVxdWVzdCh0KXtyZXR1cm4gbmV3IGxvLlR5cGVkUmVxdWVzdCh0aGlzLnR5cGVkdGFyZ2V0LHQpfWFzeW5jIHBvc3RNZXNzYWdlKHQpe3RoaXMuYnJvYWRjYXN0Q2hhbm5lbC5wb3N0TWVzc2FnZSh0KX1hc3luYyBjcmVhdGVUeXBlZEhhbmRsZXIodCxyKXt0aGlzLnR5cGVkcm91dGVyLmFkZFR5cGVkSGFuZGxlcihuZXcgbG8uVHlwZWRIYW5kbGVyKHQscikpfX19KTt2YXIgZHk9e307cWUoZHkse0RlZXNDb21tczooKT0+eWJlfSk7dmFyIHJCdD1sKCgpPT57dEJ0KCl9KTt2YXIgRDY9WGUoKGY0MSxMNik9PnsidXNlIHN0cmljdCI7ZnVuY3Rpb24gYUJ0KGUpe3JldHVybiB0eXBlb2YgZT4idSJ8fGU9PT1udWxsfWZ1bmN0aW9uIEFkYShlKXtyZXR1cm4gdHlwZW9mIGU9PSJvYmplY3QiJiZlIT09bnVsbH1mdW5jdGlvbiBFZGEoZSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoZSk/ZTphQnQoZSk/W106W2VdfWZ1bmN0aW9uICRkYShlLHQpe3ZhciByLGEsaSxvO2lmKHQpZm9yKG89T2JqZWN0LmtleXModCkscj0wLGE9by5sZW5ndGg7cjxhO3IrPTEpaT1vW3JdLGVbaV09dFtpXTtyZXR1cm4gZX1mdW5jdGlvbiBQZGEoZSx0KXt2YXIgcj0iIixhO2ZvcihhPTA7YTx0O2ErPTEpcis9ZTtyZXR1cm4gcn1mdW5jdGlvbiBJZGEoZSl7cmV0dXJuIGU9PT0wJiZOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFk9PT0xL2V9TDYuZXhwb3J0cy5pc05vdGhpbmc9YUJ0LEw2LmV4cG9ydHMuaXNPYmplY3Q9QWRhLEw2LmV4cG9ydHMudG9BcnJheT1FZGEsTDYuZXhwb3J0cy5yZXBlYXQ9UGRhLEw2LmV4cG9ydHMuaXNOZWdhdGl2ZVplcm89SWRhLEw2LmV4cG9ydHMuZXh0ZW5kPSRkYX0pO3ZhciBZNz1YZSgocDQxLGlCdCk9PnsidXNlIHN0cmljdCI7ZnVuY3Rpb24gdXkoZSx0KXtFcnJvci5jYWxsKHRoaXMpLHRoaXMubmFtZT0iWUFNTEV4Y2VwdGlvbiIsdGhpcy5yZWFzb249ZSx0aGlzLm1hcms9dCx0aGlzLm1lc3NhZ2U9KHRoaXMucmVhc29ufHwiKHVua25vd24gcmVhc29uKSIpKyh0aGlzLm1hcms/IiAiK3RoaXMubWFyay50b1N0cmluZygpOiIiKSxFcnJvci5jYXB0dXJlU3RhY2tUcmFjZT9FcnJvci5jYXB0dXJlU3RhY2tUcmFjZSh0aGlzLHRoaXMuY29uc3RydWN0b3IpOnRoaXMuc3RhY2s9bmV3IEVycm9yKCkuc3RhY2t8fCIifXV5LnByb3RvdHlwZT1PYmplY3QuY3JlYXRlKEVycm9yLnByb3RvdHlwZSksdXkucHJvdG90eXBlLmNvbnN0cnVjdG9yPXV5LHV5LnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbih0KXt2YXIgcj10aGlzLm5hbWUrIjogIjtyZXR1cm4gcis9dGhpcy5yZWFzb258fCIodW5rbm93biByZWFzb24pIiwhdCYmdGhpcy5tYXJrJiYocis9IiAiK3RoaXMubWFyay50b1N0cmluZygpKSxyfSxpQnQuZXhwb3J0cz11eX0pO3ZhciBzQnQ9WGUoKGg0MSxuQnQpPT57InVzZSBzdHJpY3QiO3ZhciBvQnQ9RDYoKTtmdW5jdGlvbiB3YmUoZSx0LHIsYSxpKXt0aGlzLm5hbWU9ZSx0aGlzLmJ1ZmZlcj10LHRoaXMucG9zaXRpb249cix0aGlzLmxpbmU9YSx0aGlzLmNvbHVtbj1pfXdiZS5wcm90b3R5cGUuZ2V0U25pcHBldD1mdW5jdGlvbih0LHIpe3ZhciBhLGksbyxuLHM7aWYoIXRoaXMuYnVmZmVyKXJldHVybiBudWxsO2Zvcih0PXR8fDQscj1yfHw3NSxhPSIiLGk9dGhpcy5wb3NpdGlvbjtpPjAmJmBcMFxyClx4ODVcdTIwMjhcdTIwMjlgLmluZGV4T2YodGhpcy5idWZmZXIuY2hhckF0KGktMSkpPT09LTE7KWlmKGktPTEsdGhpcy5wb3NpdGlvbi1pPnIvMi0xKXthPSIgLi4uICIsaSs9NTticmVha31mb3Iobz0iIixuPXRoaXMucG9zaXRpb247bjx0aGlzLmJ1ZmZlci5sZW5ndGgmJmBcMFxyClx4ODVcdTIwMjhcdTIwMjlgLmluZGV4T2YodGhpcy5idWZmZXIuY2hhckF0KG4pKT09PS0xOylpZihuKz0xLG4tdGhpcy5wb3NpdGlvbj5yLzItMSl7bz0iIC4uLiAiLG4tPTU7YnJlYWt9cmV0dXJuIHM9dGhpcy5idWZmZXIuc2xpY2UoaSxuKSxvQnQucmVwZWF0KCIgIix0KSthK3MrbytgCmArb0J0LnJlcGVhdCgiICIsdCt0aGlzLnBvc2l0aW9uLWkrYS5sZW5ndGgpKyJeIn0sd2JlLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbih0KXt2YXIgcixhPSIiO3JldHVybiB0aGlzLm5hbWUmJihhKz0naW4gIicrdGhpcy5uYW1lKyciICcpLGErPSJhdCBsaW5lICIrKHRoaXMubGluZSsxKSsiLCBjb2x1bW4gIisodGhpcy5jb2x1bW4rMSksdHx8KHI9dGhpcy5nZXRTbmlwcGV0KCksciYmKGErPWA6CmArcikpLGF9LG5CdC5leHBvcnRzPXdiZX0pO3ZhciBOaT1YZSgobTQxLGNCdCk9PnsidXNlIHN0cmljdCI7dmFyIGxCdD1ZNygpLE5kYT1bImtpbmQiLCJyZXNvbHZlIiwiY29uc3RydWN0IiwiaW5zdGFuY2VPZiIsInByZWRpY2F0ZSIsInJlcHJlc2VudCIsImRlZmF1bHRTdHlsZSIsInN0eWxlQWxpYXNlcyJdLEZkYT1bInNjYWxhciIsInNlcXVlbmNlIiwibWFwcGluZyJdO2Z1bmN0aW9uIE9kYShlKXt2YXIgdD17fTtyZXR1cm4gZSE9PW51bGwmJk9iamVjdC5rZXlzKGUpLmZvckVhY2goZnVuY3Rpb24ocil7ZVtyXS5mb3JFYWNoKGZ1bmN0aW9uKGEpe3RbU3RyaW5nKGEpXT1yfSl9KSx0fWZ1bmN0aW9uIFJkYShlLHQpe2lmKHQ9dHx8e30sT2JqZWN0LmtleXModCkuZm9yRWFjaChmdW5jdGlvbihyKXtpZihOZGEuaW5kZXhPZihyKT09PS0xKXRocm93IG5ldyBsQnQoJ1Vua25vd24gb3B0aW9uICInK3IrJyIgaXMgbWV0IGluIGRlZmluaXRpb24gb2YgIicrZSsnIiBZQU1MIHR5cGUuJyl9KSx0aGlzLnRhZz1lLHRoaXMua2luZD10LmtpbmR8fG51bGwsdGhpcy5yZXNvbHZlPXQucmVzb2x2ZXx8ZnVuY3Rpb24oKXtyZXR1cm4hMH0sdGhpcy5jb25zdHJ1Y3Q9dC5jb25zdHJ1Y3R8fGZ1bmN0aW9uKHIpe3JldHVybiByfSx0aGlzLmluc3RhbmNlT2Y9dC5pbnN0YW5jZU9mfHxudWxsLHRoaXMucHJlZGljYXRlPXQucHJlZGljYXRlfHxudWxsLHRoaXMucmVwcmVzZW50PXQucmVwcmVzZW50fHxudWxsLHRoaXMuZGVmYXVsdFN0eWxlPXQuZGVmYXVsdFN0eWxlfHxudWxsLHRoaXMuc3R5bGVBbGlhc2VzPU9kYSh0LnN0eWxlQWxpYXNlc3x8bnVsbCksRmRhLmluZGV4T2YodGhpcy5raW5kKT09PS0xKXRocm93IG5ldyBsQnQoJ1Vua25vd24ga2luZCAiJyt0aGlzLmtpbmQrJyIgaXMgc3BlY2lmaWVkIGZvciAiJytlKyciIFlBTUwgdHlwZS4nKX1jQnQuZXhwb3J0cz1SZGF9KTt2YXIgQTY9WGUoKGc0MSx1QnQpPT57InVzZSBzdHJpY3QiO3ZhciBkQnQ9RDYoKSxnb2U9WTcoKSxCZGE9TmkoKTtmdW5jdGlvbiBNYmUoZSx0LHIpe3ZhciBhPVtdO3JldHVybiBlLmluY2x1ZGUuZm9yRWFjaChmdW5jdGlvbihpKXtyPU1iZShpLHQscil9KSxlW3RdLmZvckVhY2goZnVuY3Rpb24oaSl7ci5mb3JFYWNoKGZ1bmN0aW9uKG8sbil7by50YWc9PT1pLnRhZyYmby5raW5kPT09aS5raW5kJiZhLnB1c2gobil9KSxyLnB1c2goaSl9KSxyLmZpbHRlcihmdW5jdGlvbihpLG8pe3JldHVybiBhLmluZGV4T2Yobyk9PT0tMX0pfWZ1bmN0aW9uIEhkYSgpe3ZhciBlPXtzY2FsYXI6e30sc2VxdWVuY2U6e30sbWFwcGluZzp7fSxmYWxsYmFjazp7fX0sdCxyO2Z1bmN0aW9uIGEoaSl7ZVtpLmtpbmRdW2kudGFnXT1lLmZhbGxiYWNrW2kudGFnXT1pfWZvcih0PTAscj1hcmd1bWVudHMubGVuZ3RoO3Q8cjt0Kz0xKWFyZ3VtZW50c1t0XS5mb3JFYWNoKGEpO3JldHVybiBlfWZ1bmN0aW9uIFo3KGUpe3RoaXMuaW5jbHVkZT1lLmluY2x1ZGV8fFtdLHRoaXMuaW1wbGljaXQ9ZS5pbXBsaWNpdHx8W10sdGhpcy5leHBsaWNpdD1lLmV4cGxpY2l0fHxbXSx0aGlzLmltcGxpY2l0LmZvckVhY2goZnVuY3Rpb24odCl7aWYodC5sb2FkS2luZCYmdC5sb2FkS2luZCE9PSJzY2FsYXIiKXRocm93IG5ldyBnb2UoIlRoZXJlIGlzIGEgbm9uLXNjYWxhciB0eXBlIGluIHRoZSBpbXBsaWNpdCBsaXN0IG9mIGEgc2NoZW1hLiBJbXBsaWNpdCByZXNvbHZpbmcgb2Ygc3VjaCB0eXBlcyBpcyBub3Qgc3VwcG9ydGVkLiIpfSksdGhpcy5jb21waWxlZEltcGxpY2l0PU1iZSh0aGlzLCJpbXBsaWNpdCIsW10pLHRoaXMuY29tcGlsZWRFeHBsaWNpdD1NYmUodGhpcywiZXhwbGljaXQiLFtdKSx0aGlzLmNvbXBpbGVkVHlwZU1hcD1IZGEodGhpcy5jb21waWxlZEltcGxpY2l0LHRoaXMuY29tcGlsZWRFeHBsaWNpdCl9WjcuREVGQVVMVD1udWxsLFo3LmNyZWF0ZT1mdW5jdGlvbigpe3ZhciB0LHI7c3dpdGNoKGFyZ3VtZW50cy5sZW5ndGgpe2Nhc2UgMTp0PVo3LkRFRkFVTFQscj1hcmd1bWVudHNbMF07YnJlYWs7Y2FzZSAyOnQ9YXJndW1lbnRzWzBdLHI9YXJndW1lbnRzWzFdO2JyZWFrO2RlZmF1bHQ6dGhyb3cgbmV3IGdvZSgiV3JvbmcgbnVtYmVyIG9mIGFyZ3VtZW50cyBmb3IgU2NoZW1hLmNyZWF0ZSBmdW5jdGlvbiIpfWlmKHQ9ZEJ0LnRvQXJyYXkodCkscj1kQnQudG9BcnJheShyKSwhdC5ldmVyeShmdW5jdGlvbihhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIFo3fSkpdGhyb3cgbmV3IGdvZSgiU3BlY2lmaWVkIGxpc3Qgb2Ygc3VwZXIgc2NoZW1hcyAob3IgYSBzaW5nbGUgU2NoZW1hIG9iamVjdCkgY29udGFpbnMgYSBub24tU2NoZW1hIG9iamVjdC4iKTtpZighci5ldmVyeShmdW5jdGlvbihhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIEJkYX0pKXRocm93IG5ldyBnb2UoIlNwZWNpZmllZCBsaXN0IG9mIFlBTUwgdHlwZXMgKG9yIGEgc2luZ2xlIFR5cGUgb2JqZWN0KSBjb250YWlucyBhIG5vbi1UeXBlIG9iamVjdC4iKTtyZXR1cm4gbmV3IFo3KHtpbmNsdWRlOnQsZXhwbGljaXQ6cn0pfSx1QnQuZXhwb3J0cz1aN30pO3ZhciBwQnQ9WGUoKHg0MSxmQnQpPT57InVzZSBzdHJpY3QiO3ZhciBxZGE9TmkoKTtmQnQuZXhwb3J0cz1uZXcgcWRhKCJ0YWc6eWFtbC5vcmcsMjAwMjpzdHIiLHtraW5kOiJzY2FsYXIiLGNvbnN0cnVjdDpmdW5jdGlvbihlKXtyZXR1cm4gZSE9PW51bGw/ZToiIn19KX0pO3ZhciBtQnQ9WGUoKGI0MSxoQnQpPT57InVzZSBzdHJpY3QiO3ZhciBqZGE9TmkoKTtoQnQuZXhwb3J0cz1uZXcgamRhKCJ0YWc6eWFtbC5vcmcsMjAwMjpzZXEiLHtraW5kOiJzZXF1ZW5jZSIsY29uc3RydWN0OmZ1bmN0aW9uKGUpe3JldHVybiBlIT09bnVsbD9lOltdfX0pfSk7dmFyIHhCdD1YZSgodjQxLGdCdCk9PnsidXNlIHN0cmljdCI7dmFyIFZkYT1OaSgpO2dCdC5leHBvcnRzPW5ldyBWZGEoInRhZzp5YW1sLm9yZywyMDAyOm1hcCIse2tpbmQ6Im1hcHBpbmciLGNvbnN0cnVjdDpmdW5jdGlvbihlKXtyZXR1cm4gZSE9PW51bGw/ZTp7fX19KX0pO3ZhciB4b2U9WGUoKHk0MSxiQnQpPT57InVzZSBzdHJpY3QiO3ZhciBVZGE9QTYoKTtiQnQuZXhwb3J0cz1uZXcgVWRhKHtleHBsaWNpdDpbcEJ0KCksbUJ0KCkseEJ0KCldfSl9KTt2YXIgeUJ0PVhlKCh3NDEsdkJ0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgV2RhPU5pKCk7ZnVuY3Rpb24gR2RhKGUpe2lmKGU9PT1udWxsKXJldHVybiEwO3ZhciB0PWUubGVuZ3RoO3JldHVybiB0PT09MSYmZT09PSJ+Inx8dD09PTQmJihlPT09Im51bGwifHxlPT09Ik51bGwifHxlPT09Ik5VTEwiKX1mdW5jdGlvbiBZZGEoKXtyZXR1cm4gbnVsbH1mdW5jdGlvbiBaZGEoZSl7cmV0dXJuIGU9PT1udWxsfXZCdC5leHBvcnRzPW5ldyBXZGEoInRhZzp5YW1sLm9yZywyMDAyOm51bGwiLHtraW5kOiJzY2FsYXIiLHJlc29sdmU6R2RhLGNvbnN0cnVjdDpZZGEscHJlZGljYXRlOlpkYSxyZXByZXNlbnQ6e2Nhbm9uaWNhbDpmdW5jdGlvbigpe3JldHVybiJ+In0sbG93ZXJjYXNlOmZ1bmN0aW9uKCl7cmV0dXJuIm51bGwifSx1cHBlcmNhc2U6ZnVuY3Rpb24oKXtyZXR1cm4iTlVMTCJ9LGNhbWVsY2FzZTpmdW5jdGlvbigpe3JldHVybiJOdWxsIn19LGRlZmF1bHRTdHlsZToibG93ZXJjYXNlIn0pfSk7dmFyIE1CdD1YZSgoTTQxLHdCdCk9PnsidXNlIHN0cmljdCI7dmFyIFhkYT1OaSgpO2Z1bmN0aW9uIFFkYShlKXtpZihlPT09bnVsbClyZXR1cm4hMTt2YXIgdD1lLmxlbmd0aDtyZXR1cm4gdD09PTQmJihlPT09InRydWUifHxlPT09IlRydWUifHxlPT09IlRSVUUiKXx8dD09PTUmJihlPT09ImZhbHNlInx8ZT09PSJGYWxzZSJ8fGU9PT0iRkFMU0UiKX1mdW5jdGlvbiBLZGEoZSl7cmV0dXJuIGU9PT0idHJ1ZSJ8fGU9PT0iVHJ1ZSJ8fGU9PT0iVFJVRSJ9ZnVuY3Rpb24gSmRhKGUpe3JldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSk9PT0iW29iamVjdCBCb29sZWFuXSJ9d0J0LmV4cG9ydHM9bmV3IFhkYSgidGFnOnlhbWwub3JnLDIwMDI6Ym9vbCIse2tpbmQ6InNjYWxhciIscmVzb2x2ZTpRZGEsY29uc3RydWN0OktkYSxwcmVkaWNhdGU6SmRhLHJlcHJlc2VudDp7bG93ZXJjYXNlOmZ1bmN0aW9uKGUpe3JldHVybiBlPyJ0cnVlIjoiZmFsc2UifSx1cHBlcmNhc2U6ZnVuY3Rpb24oZSl7cmV0dXJuIGU/IlRSVUUiOiJGQUxTRSJ9LGNhbWVsY2FzZTpmdW5jdGlvbihlKXtyZXR1cm4gZT8iVHJ1ZSI6IkZhbHNlIn19LGRlZmF1bHRTdHlsZToibG93ZXJjYXNlIn0pfSk7dmFyIFNCdD1YZSgoazQxLGtCdCk9PnsidXNlIHN0cmljdCI7dmFyIGU2YT1ENigpLHQ2YT1OaSgpO2Z1bmN0aW9uIHI2YShlKXtyZXR1cm4gNDg8PWUmJmU8PTU3fHw2NTw9ZSYmZTw9NzB8fDk3PD1lJiZlPD0xMDJ9ZnVuY3Rpb24gYTZhKGUpe3JldHVybiA0ODw9ZSYmZTw9NTV9ZnVuY3Rpb24gaTZhKGUpe3JldHVybiA0ODw9ZSYmZTw9NTd9ZnVuY3Rpb24gbzZhKGUpe2lmKGU9PT1udWxsKXJldHVybiExO3ZhciB0PWUubGVuZ3RoLHI9MCxhPSExLGk7aWYoIXQpcmV0dXJuITE7aWYoaT1lW3JdLChpPT09Ii0ifHxpPT09IisiKSYmKGk9ZVsrK3JdKSxpPT09IjAiKXtpZihyKzE9PT10KXJldHVybiEwO2lmKGk9ZVsrK3JdLGk9PT0iYiIpe2ZvcihyKys7cjx0O3IrKylpZihpPWVbcl0saSE9PSJfIil7aWYoaSE9PSIwIiYmaSE9PSIxIilyZXR1cm4hMTthPSEwfXJldHVybiBhJiZpIT09Il8ifWlmKGk9PT0ieCIpe2ZvcihyKys7cjx0O3IrKylpZihpPWVbcl0saSE9PSJfIil7aWYoIXI2YShlLmNoYXJDb2RlQXQocikpKXJldHVybiExO2E9ITB9cmV0dXJuIGEmJmkhPT0iXyJ9Zm9yKDtyPHQ7cisrKWlmKGk9ZVtyXSxpIT09Il8iKXtpZighYTZhKGUuY2hhckNvZGVBdChyKSkpcmV0dXJuITE7YT0hMH1yZXR1cm4gYSYmaSE9PSJfIn1pZihpPT09Il8iKXJldHVybiExO2Zvcig7cjx0O3IrKylpZihpPWVbcl0saSE9PSJfIil7aWYoaT09PSI6IilicmVhaztpZighaTZhKGUuY2hhckNvZGVBdChyKSkpcmV0dXJuITE7YT0hMH1yZXR1cm4hYXx8aT09PSJfIj8hMTppIT09IjoiPyEwOi9eKDpbMC01XT9bMC05XSkrJC8udGVzdChlLnNsaWNlKHIpKX1mdW5jdGlvbiBuNmEoZSl7dmFyIHQ9ZSxyPTEsYSxpLG89W107cmV0dXJuIHQuaW5kZXhPZigiXyIpIT09LTEmJih0PXQucmVwbGFjZSgvXy9nLCIiKSksYT10WzBdLChhPT09Ii0ifHxhPT09IisiKSYmKGE9PT0iLSImJihyPS0xKSx0PXQuc2xpY2UoMSksYT10WzBdKSx0PT09IjAiPzA6YT09PSIwIj90WzFdPT09ImIiP3IqcGFyc2VJbnQodC5zbGljZSgyKSwyKTp0WzFdPT09IngiP3IqcGFyc2VJbnQodCwxNik6cipwYXJzZUludCh0LDgpOnQuaW5kZXhPZigiOiIpIT09LTE/KHQuc3BsaXQoIjoiKS5mb3JFYWNoKGZ1bmN0aW9uKG4pe28udW5zaGlmdChwYXJzZUludChuLDEwKSl9KSx0PTAsaT0xLG8uZm9yRWFjaChmdW5jdGlvbihuKXt0Kz1uKmksaSo9NjB9KSxyKnQpOnIqcGFyc2VJbnQodCwxMCl9ZnVuY3Rpb24gczZhKGUpe3JldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSk9PT0iW29iamVjdCBOdW1iZXJdIiYmZSUxPT09MCYmIWU2YS5pc05lZ2F0aXZlWmVybyhlKX1rQnQuZXhwb3J0cz1uZXcgdDZhKCJ0YWc6eWFtbC5vcmcsMjAwMjppbnQiLHtraW5kOiJzY2FsYXIiLHJlc29sdmU6bzZhLGNvbnN0cnVjdDpuNmEscHJlZGljYXRlOnM2YSxyZXByZXNlbnQ6e2JpbmFyeTpmdW5jdGlvbihlKXtyZXR1cm4gZT49MD8iMGIiK2UudG9TdHJpbmcoMik6Ii0wYiIrZS50b1N0cmluZygyKS5zbGljZSgxKX0sb2N0YWw6ZnVuY3Rpb24oZSl7cmV0dXJuIGU+PTA/IjAiK2UudG9TdHJpbmcoOCk6Ii0wIitlLnRvU3RyaW5nKDgpLnNsaWNlKDEpfSxkZWNpbWFsOmZ1bmN0aW9uKGUpe3JldHVybiBlLnRvU3RyaW5nKDEwKX0saGV4YWRlY2ltYWw6ZnVuY3Rpb24oZSl7cmV0dXJuIGU+PTA/IjB4IitlLnRvU3RyaW5nKDE2KS50b1VwcGVyQ2FzZSgpOiItMHgiK2UudG9TdHJpbmcoMTYpLnRvVXBwZXJDYXNlKCkuc2xpY2UoMSl9fSxkZWZhdWx0U3R5bGU6ImRlY2ltYWwiLHN0eWxlQWxpYXNlczp7YmluYXJ5OlsyLCJiaW4iXSxvY3RhbDpbOCwib2N0Il0sZGVjaW1hbDpbMTAsImRlYyJdLGhleGFkZWNpbWFsOlsxNiwiaGV4Il19fSl9KTt2YXIgX0J0PVhlKChTNDEsQ0J0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgekJ0PUQ2KCksbDZhPU5pKCksYzZhPW5ldyBSZWdFeHAoIl4oPzpbLStdPyg/OjB8WzEtOV1bMC05X10qKSg/OlxcLlswLTlfXSopPyg/OltlRV1bLStdP1swLTldKyk/fFxcLlswLTlfXSsoPzpbZUVdWy0rXT9bMC05XSspP3xbLStdP1swLTldWzAtOV9dKig/OjpbMC01XT9bMC05XSkrXFwuWzAtOV9dKnxbLStdP1xcLig/OmluZnxJbmZ8SU5GKXxcXC4oPzpuYW58TmFOfE5BTikpJCIpO2Z1bmN0aW9uIGQ2YShlKXtyZXR1cm4hKGU9PT1udWxsfHwhYzZhLnRlc3QoZSl8fGVbZS5sZW5ndGgtMV09PT0iXyIpfWZ1bmN0aW9uIHU2YShlKXt2YXIgdCxyLGEsaTtyZXR1cm4gdD1lLnJlcGxhY2UoL18vZywiIikudG9Mb3dlckNhc2UoKSxyPXRbMF09PT0iLSI/LTE6MSxpPVtdLCIrLSIuaW5kZXhPZih0WzBdKT49MCYmKHQ9dC5zbGljZSgxKSksdD09PSIuaW5mIj9yPT09MT9OdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFk6TnVtYmVyLk5FR0FUSVZFX0lORklOSVRZOnQ9PT0iLm5hbiI/TmFOOnQuaW5kZXhPZigiOiIpPj0wPyh0LnNwbGl0KCI6IikuZm9yRWFjaChmdW5jdGlvbihvKXtpLnVuc2hpZnQocGFyc2VGbG9hdChvLDEwKSl9KSx0PTAsYT0xLGkuZm9yRWFjaChmdW5jdGlvbihvKXt0Kz1vKmEsYSo9NjB9KSxyKnQpOnIqcGFyc2VGbG9hdCh0LDEwKX12YXIgZjZhPS9eWy0rXT9bMC05XStlLztmdW5jdGlvbiBwNmEoZSx0KXt2YXIgcjtpZihpc05hTihlKSlzd2l0Y2godCl7Y2FzZSJsb3dlcmNhc2UiOnJldHVybiIubmFuIjtjYXNlInVwcGVyY2FzZSI6cmV0dXJuIi5OQU4iO2Nhc2UiY2FtZWxjYXNlIjpyZXR1cm4iLk5hTiJ9ZWxzZSBpZihOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFk9PT1lKXN3aXRjaCh0KXtjYXNlImxvd2VyY2FzZSI6cmV0dXJuIi5pbmYiO2Nhc2UidXBwZXJjYXNlIjpyZXR1cm4iLklORiI7Y2FzZSJjYW1lbGNhc2UiOnJldHVybiIuSW5mIn1lbHNlIGlmKE51bWJlci5ORUdBVElWRV9JTkZJTklUWT09PWUpc3dpdGNoKHQpe2Nhc2UibG93ZXJjYXNlIjpyZXR1cm4iLS5pbmYiO2Nhc2UidXBwZXJjYXNlIjpyZXR1cm4iLS5JTkYiO2Nhc2UiY2FtZWxjYXNlIjpyZXR1cm4iLS5JbmYifWVsc2UgaWYoekJ0LmlzTmVnYXRpdmVaZXJvKGUpKXJldHVybiItMC4wIjtyZXR1cm4gcj1lLnRvU3RyaW5nKDEwKSxmNmEudGVzdChyKT9yLnJlcGxhY2UoImUiLCIuZSIpOnJ9ZnVuY3Rpb24gaDZhKGUpe3JldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSk9PT0iW29iamVjdCBOdW1iZXJdIiYmKGUlMSE9PTB8fHpCdC5pc05lZ2F0aXZlWmVybyhlKSl9Q0J0LmV4cG9ydHM9bmV3IGw2YSgidGFnOnlhbWwub3JnLDIwMDI6ZmxvYXQiLHtraW5kOiJzY2FsYXIiLHJlc29sdmU6ZDZhLGNvbnN0cnVjdDp1NmEscHJlZGljYXRlOmg2YSxyZXByZXNlbnQ6cDZhLGRlZmF1bHRTdHlsZToibG93ZXJjYXNlIn0pfSk7dmFyIGtiZT1YZSgoejQxLFRCdCk9PnsidXNlIHN0cmljdCI7dmFyIG02YT1BNigpO1RCdC5leHBvcnRzPW5ldyBtNmEoe2luY2x1ZGU6W3hvZSgpXSxpbXBsaWNpdDpbeUJ0KCksTUJ0KCksU0J0KCksX0J0KCldfSl9KTt2YXIgU2JlPVhlKChDNDEsTEJ0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgZzZhPUE2KCk7TEJ0LmV4cG9ydHM9bmV3IGc2YSh7aW5jbHVkZTpba2JlKCldfSl9KTt2YXIgJEJ0PVhlKChfNDEsRUJ0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgeDZhPU5pKCksREJ0PW5ldyBSZWdFeHAoIl4oWzAtOV1bMC05XVswLTldWzAtOV0pLShbMC05XVswLTldKS0oWzAtOV1bMC05XSkkIiksQUJ0PW5ldyBSZWdFeHAoIl4oWzAtOV1bMC05XVswLTldWzAtOV0pLShbMC05XVswLTldPyktKFswLTldWzAtOV0/KSg/OltUdF18WyBcXHRdKykoWzAtOV1bMC05XT8pOihbMC05XVswLTldKTooWzAtOV1bMC05XSkoPzpcXC4oWzAtOV0qKSk/KD86WyBcXHRdKihafChbLStdKShbMC05XVswLTldPykoPzo6KFswLTldWzAtOV0pKT8pKT8kIik7ZnVuY3Rpb24gYjZhKGUpe3JldHVybiBlPT09bnVsbD8hMTpEQnQuZXhlYyhlKSE9PW51bGx8fEFCdC5leGVjKGUpIT09bnVsbH1mdW5jdGlvbiB2NmEoZSl7dmFyIHQscixhLGksbyxuLHMsYz0wLGQ9bnVsbCxmLHUscDtpZih0PURCdC5leGVjKGUpLHQ9PT1udWxsJiYodD1BQnQuZXhlYyhlKSksdD09PW51bGwpdGhyb3cgbmV3IEVycm9yKCJEYXRlIHJlc29sdmUgZXJyb3IiKTtpZihyPSt0WzFdLGE9K3RbMl0tMSxpPSt0WzNdLCF0WzRdKXJldHVybiBuZXcgRGF0ZShEYXRlLlVUQyhyLGEsaSkpO2lmKG89K3RbNF0sbj0rdFs1XSxzPSt0WzZdLHRbN10pe2ZvcihjPXRbN10uc2xpY2UoMCwzKTtjLmxlbmd0aDwzOyljKz0iMCI7Yz0rY31yZXR1cm4gdFs5XSYmKGY9K3RbMTBdLHU9Kyh0WzExXXx8MCksZD0oZio2MCt1KSo2ZTQsdFs5XT09PSItIiYmKGQ9LWQpKSxwPW5ldyBEYXRlKERhdGUuVVRDKHIsYSxpLG8sbixzLGMpKSxkJiZwLnNldFRpbWUocC5nZXRUaW1lKCktZCkscH1mdW5jdGlvbiB5NmEoZSl7cmV0dXJuIGUudG9JU09TdHJpbmcoKX1FQnQuZXhwb3J0cz1uZXcgeDZhKCJ0YWc6eWFtbC5vcmcsMjAwMjp0aW1lc3RhbXAiLHtraW5kOiJzY2FsYXIiLHJlc29sdmU6YjZhLGNvbnN0cnVjdDp2NmEsaW5zdGFuY2VPZjpEYXRlLHJlcHJlc2VudDp5NmF9KX0pO3ZhciBJQnQ9WGUoKFQ0MSxQQnQpPT57InVzZSBzdHJpY3QiO3ZhciB3NmE9TmkoKTtmdW5jdGlvbiBNNmEoZSl7cmV0dXJuIGU9PT0iPDwifHxlPT09bnVsbH1QQnQuZXhwb3J0cz1uZXcgdzZhKCJ0YWc6eWFtbC5vcmcsMjAwMjptZXJnZSIse2tpbmQ6InNjYWxhciIscmVzb2x2ZTpNNmF9KX0pO3ZhciBPQnQ9WGUoKEw0MSxGQnQpPT57InVzZSBzdHJpY3QiO3ZhciBFNjt0cnl7TkJ0PW4wLEU2PU5CdCgiYnVmZmVyIikuQnVmZmVyfWNhdGNoe312YXIgazZhPU5pKCksemJlPWBBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvPQpccmA7ZnVuY3Rpb24gUzZhKGUpe2lmKGU9PT1udWxsKXJldHVybiExO3ZhciB0LHIsYT0wLGk9ZS5sZW5ndGgsbz16YmU7Zm9yKHI9MDtyPGk7cisrKWlmKHQ9by5pbmRleE9mKGUuY2hhckF0KHIpKSwhKHQ+NjQpKXtpZih0PDApcmV0dXJuITE7YSs9Nn1yZXR1cm4gYSU4PT09MH1mdW5jdGlvbiB6NmEoZSl7dmFyIHQscixhPWUucmVwbGFjZSgvW1xyXG49XS9nLCIiKSxpPWEubGVuZ3RoLG89emJlLG49MCxzPVtdO2Zvcih0PTA7dDxpO3QrKyl0JTQ9PT0wJiZ0JiYocy5wdXNoKG4+PjE2JjI1NSkscy5wdXNoKG4+PjgmMjU1KSxzLnB1c2gobiYyNTUpKSxuPW48PDZ8by5pbmRleE9mKGEuY2hhckF0KHQpKTtyZXR1cm4gcj1pJTQqNixyPT09MD8ocy5wdXNoKG4+PjE2JjI1NSkscy5wdXNoKG4+PjgmMjU1KSxzLnB1c2gobiYyNTUpKTpyPT09MTg/KHMucHVzaChuPj4xMCYyNTUpLHMucHVzaChuPj4yJjI1NSkpOnI9PT0xMiYmcy5wdXNoKG4+PjQmMjU1KSxFNj9FNi5mcm9tP0U2LmZyb20ocyk6bmV3IEU2KHMpOnN9ZnVuY3Rpb24gQzZhKGUpe3ZhciB0PSIiLHI9MCxhLGksbz1lLmxlbmd0aCxuPXpiZTtmb3IoYT0wO2E8bzthKyspYSUzPT09MCYmYSYmKHQrPW5bcj4+MTgmNjNdLHQrPW5bcj4+MTImNjNdLHQrPW5bcj4+NiY2M10sdCs9bltyJjYzXSkscj0ocjw8OCkrZVthXTtyZXR1cm4gaT1vJTMsaT09PTA/KHQrPW5bcj4+MTgmNjNdLHQrPW5bcj4+MTImNjNdLHQrPW5bcj4+NiY2M10sdCs9bltyJjYzXSk6aT09PTI/KHQrPW5bcj4+MTAmNjNdLHQrPW5bcj4+NCY2M10sdCs9bltyPDwyJjYzXSx0Kz1uWzY0XSk6aT09PTEmJih0Kz1uW3I+PjImNjNdLHQrPW5bcjw8NCY2M10sdCs9bls2NF0sdCs9bls2NF0pLHR9ZnVuY3Rpb24gXzZhKGUpe3JldHVybiBFNiYmRTYuaXNCdWZmZXIoZSl9RkJ0LmV4cG9ydHM9bmV3IGs2YSgidGFnOnlhbWwub3JnLDIwMDI6YmluYXJ5Iix7a2luZDoic2NhbGFyIixyZXNvbHZlOlM2YSxjb25zdHJ1Y3Q6ejZhLHByZWRpY2F0ZTpfNmEscmVwcmVzZW50OkM2YX0pO3ZhciBOQnR9KTt2YXIgQkJ0PVhlKChBNDEsUkJ0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgVDZhPU5pKCksTDZhPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHksRDZhPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7ZnVuY3Rpb24gQTZhKGUpe2lmKGU9PT1udWxsKXJldHVybiEwO3ZhciB0PVtdLHIsYSxpLG8sbixzPWU7Zm9yKHI9MCxhPXMubGVuZ3RoO3I8YTtyKz0xKXtpZihpPXNbcl0sbj0hMSxENmEuY2FsbChpKSE9PSJbb2JqZWN0IE9iamVjdF0iKXJldHVybiExO2ZvcihvIGluIGkpaWYoTDZhLmNhbGwoaSxvKSlpZighbiluPSEwO2Vsc2UgcmV0dXJuITE7aWYoIW4pcmV0dXJuITE7aWYodC5pbmRleE9mKG8pPT09LTEpdC5wdXNoKG8pO2Vsc2UgcmV0dXJuITF9cmV0dXJuITB9ZnVuY3Rpb24gRTZhKGUpe3JldHVybiBlIT09bnVsbD9lOltdfVJCdC5leHBvcnRzPW5ldyBUNmEoInRhZzp5YW1sLm9yZywyMDAyOm9tYXAiLHtraW5kOiJzZXF1ZW5jZSIscmVzb2x2ZTpBNmEsY29uc3RydWN0OkU2YX0pfSk7dmFyIHFCdD1YZSgoRTQxLEhCdCk9PnsidXNlIHN0cmljdCI7dmFyICQ2YT1OaSgpLFA2YT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nO2Z1bmN0aW9uIEk2YShlKXtpZihlPT09bnVsbClyZXR1cm4hMDt2YXIgdCxyLGEsaSxvLG49ZTtmb3Iobz1uZXcgQXJyYXkobi5sZW5ndGgpLHQ9MCxyPW4ubGVuZ3RoO3Q8cjt0Kz0xKXtpZihhPW5bdF0sUDZhLmNhbGwoYSkhPT0iW29iamVjdCBPYmplY3RdInx8KGk9T2JqZWN0LmtleXMoYSksaS5sZW5ndGghPT0xKSlyZXR1cm4hMTtvW3RdPVtpWzBdLGFbaVswXV1dfXJldHVybiEwfWZ1bmN0aW9uIE42YShlKXtpZihlPT09bnVsbClyZXR1cm5bXTt2YXIgdCxyLGEsaSxvLG49ZTtmb3Iobz1uZXcgQXJyYXkobi5sZW5ndGgpLHQ9MCxyPW4ubGVuZ3RoO3Q8cjt0Kz0xKWE9blt0XSxpPU9iamVjdC5rZXlzKGEpLG9bdF09W2lbMF0sYVtpWzBdXV07cmV0dXJuIG99SEJ0LmV4cG9ydHM9bmV3ICQ2YSgidGFnOnlhbWwub3JnLDIwMDI6cGFpcnMiLHtraW5kOiJzZXF1ZW5jZSIscmVzb2x2ZTpJNmEsY29uc3RydWN0Ok42YX0pfSk7dmFyIFZCdD1YZSgoJDQxLGpCdCk9PnsidXNlIHN0cmljdCI7dmFyIEY2YT1OaSgpLE82YT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O2Z1bmN0aW9uIFI2YShlKXtpZihlPT09bnVsbClyZXR1cm4hMDt2YXIgdCxyPWU7Zm9yKHQgaW4gcilpZihPNmEuY2FsbChyLHQpJiZyW3RdIT09bnVsbClyZXR1cm4hMTtyZXR1cm4hMH1mdW5jdGlvbiBCNmEoZSl7cmV0dXJuIGUhPT1udWxsP2U6e319akJ0LmV4cG9ydHM9bmV3IEY2YSgidGFnOnlhbWwub3JnLDIwMDI6c2V0Iix7a2luZDoibWFwcGluZyIscmVzb2x2ZTpSNmEsY29uc3RydWN0OkI2YX0pfSk7dmFyIFg3PVhlKChQNDEsVUJ0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgSDZhPUE2KCk7VUJ0LmV4cG9ydHM9bmV3IEg2YSh7aW5jbHVkZTpbU2JlKCldLGltcGxpY2l0OlskQnQoKSxJQnQoKV0sZXhwbGljaXQ6W09CdCgpLEJCdCgpLHFCdCgpLFZCdCgpXX0pfSk7dmFyIEdCdD1YZSgoSTQxLFdCdCk9PnsidXNlIHN0cmljdCI7dmFyIHE2YT1OaSgpO2Z1bmN0aW9uIGo2YSgpe3JldHVybiEwfWZ1bmN0aW9uIFY2YSgpe31mdW5jdGlvbiBVNmEoKXtyZXR1cm4iIn1mdW5jdGlvbiBXNmEoZSl7cmV0dXJuIHR5cGVvZiBlPiJ1In1XQnQuZXhwb3J0cz1uZXcgcTZhKCJ0YWc6eWFtbC5vcmcsMjAwMjpqcy91bmRlZmluZWQiLHtraW5kOiJzY2FsYXIiLHJlc29sdmU6ajZhLGNvbnN0cnVjdDpWNmEscHJlZGljYXRlOlc2YSxyZXByZXNlbnQ6VTZhfSl9KTt2YXIgWkJ0PVhlKChONDEsWUJ0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgRzZhPU5pKCk7ZnVuY3Rpb24gWTZhKGUpe2lmKGU9PT1udWxsfHxlLmxlbmd0aD09PTApcmV0dXJuITE7dmFyIHQ9ZSxyPS9cLyhbZ2ltXSopJC8uZXhlYyhlKSxhPSIiO3JldHVybiEodFswXT09PSIvIiYmKHImJihhPXJbMV0pLGEubGVuZ3RoPjN8fHRbdC5sZW5ndGgtYS5sZW5ndGgtMV0hPT0iLyIpKX1mdW5jdGlvbiBaNmEoZSl7dmFyIHQ9ZSxyPS9cLyhbZ2ltXSopJC8uZXhlYyhlKSxhPSIiO3JldHVybiB0WzBdPT09Ii8iJiYociYmKGE9clsxXSksdD10LnNsaWNlKDEsdC5sZW5ndGgtYS5sZW5ndGgtMSkpLG5ldyBSZWdFeHAodCxhKX1mdW5jdGlvbiBYNmEoZSl7dmFyIHQ9Ii8iK2Uuc291cmNlKyIvIjtyZXR1cm4gZS5nbG9iYWwmJih0Kz0iZyIpLGUubXVsdGlsaW5lJiYodCs9Im0iKSxlLmlnbm9yZUNhc2UmJih0Kz0iaSIpLHR9ZnVuY3Rpb24gUTZhKGUpe3JldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSk9PT0iW29iamVjdCBSZWdFeHBdIn1ZQnQuZXhwb3J0cz1uZXcgRzZhKCJ0YWc6eWFtbC5vcmcsMjAwMjpqcy9yZWdleHAiLHtraW5kOiJzY2FsYXIiLHJlc29sdmU6WTZhLGNvbnN0cnVjdDpaNmEscHJlZGljYXRlOlE2YSxyZXByZXNlbnQ6WDZhfSl9KTt2YXIgS0J0PVhlKChGNDEsUUJ0KT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgYm9lO3RyeXtYQnQ9bjAsYm9lPVhCdCgiZXNwcmltYSIpfWNhdGNoe3R5cGVvZiB3aW5kb3c8InUiJiYoYm9lPXdpbmRvdy5lc3ByaW1hKX12YXIgSzZhPU5pKCk7ZnVuY3Rpb24gSjZhKGUpe2lmKGU9PT1udWxsKXJldHVybiExO3RyeXt2YXIgdD0iKCIrZSsiKSIscj1ib2UucGFyc2UodCx7cmFuZ2U6ITB9KTtyZXR1cm4hKHIudHlwZSE9PSJQcm9ncmFtInx8ci5ib2R5Lmxlbmd0aCE9PTF8fHIuYm9keVswXS50eXBlIT09IkV4cHJlc3Npb25TdGF0ZW1lbnQifHxyLmJvZHlbMF0uZXhwcmVzc2lvbi50eXBlIT09IkFycm93RnVuY3Rpb25FeHByZXNzaW9uIiYmci5ib2R5WzBdLmV4cHJlc3Npb24udHlwZSE9PSJGdW5jdGlvbkV4cHJlc3Npb24iKX1jYXRjaHtyZXR1cm4hMX19ZnVuY3Rpb24gZXVhKGUpe3ZhciB0PSIoIitlKyIpIixyPWJvZS5wYXJzZSh0LHtyYW5nZTohMH0pLGE9W10saTtpZihyLnR5cGUhPT0iUHJvZ3JhbSJ8fHIuYm9keS5sZW5ndGghPT0xfHxyLmJvZHlbMF0udHlwZSE9PSJFeHByZXNzaW9uU3RhdGVtZW50Inx8ci5ib2R5WzBdLmV4cHJlc3Npb24udHlwZSE9PSJBcnJvd0Z1bmN0aW9uRXhwcmVzc2lvbiImJnIuYm9keVswXS5leHByZXNzaW9uLnR5cGUhPT0iRnVuY3Rpb25FeHByZXNzaW9uIil0aHJvdyBuZXcgRXJyb3IoIkZhaWxlZCB0byByZXNvbHZlIGZ1bmN0aW9uIik7cmV0dXJuIHIuYm9keVswXS5leHByZXNzaW9uLnBhcmFtcy5mb3JFYWNoKGZ1bmN0aW9uKG8pe2EucHVzaChvLm5hbWUpfSksaT1yLmJvZHlbMF0uZXhwcmVzc2lvbi5ib2R5LnJhbmdlLHIuYm9keVswXS5leHByZXNzaW9uLmJvZHkudHlwZT09PSJCbG9ja1N0YXRlbWVudCI/bmV3IEZ1bmN0aW9uKGEsdC5zbGljZShpWzBdKzEsaVsxXS0xKSk6bmV3IEZ1bmN0aW9uKGEsInJldHVybiAiK3Quc2xpY2UoaVswXSxpWzFdKSl9ZnVuY3Rpb24gdHVhKGUpe3JldHVybiBlLnRvU3RyaW5nKCl9ZnVuY3Rpb24gcnVhKGUpe3JldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSk9PT0iW29iamVjdCBGdW5jdGlvbl0ifVFCdC5leHBvcnRzPW5ldyBLNmEoInRhZzp5YW1sLm9yZywyMDAyOmpzL2Z1bmN0aW9uIix7a2luZDoic2NhbGFyIixyZXNvbHZlOko2YSxjb25zdHJ1Y3Q6ZXVhLHByZWRpY2F0ZTpydWEscmVwcmVzZW50OnR1YX0pO3ZhciBYQnR9KTt2YXIgZnk9WGUoKFI0MSxlSHQpPT57InVzZSBzdHJpY3QiO3ZhciBKQnQ9QTYoKTtlSHQuZXhwb3J0cz1KQnQuREVGQVVMVD1uZXcgSkJ0KHtpbmNsdWRlOltYNygpXSxleHBsaWNpdDpbR0J0KCksWkJ0KCksS0J0KCldfSl9KTt2YXIgeUh0PVhlKChCNDEscHkpPT57InVzZSBzdHJpY3QiO3ZhciBwYz1ENigpLHRIdD1ZNygpLGF1YT1zQnQoKSxySHQ9WDcoKSxpdWE9ZnkoKSxFND1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LHZvZT0xLGFIdD0yLGlIdD0zLHlvZT00LENiZT0xLG91YT0yLG9IdD0zLG51YT0vW1x4MDAtXHgwOFx4MEJceDBDXHgwRS1ceDFGXHg3Ri1ceDg0XHg4Ni1ceDlGXHVGRkZFXHVGRkZGXXxbXHVEODAwLVx1REJGRl0oPyFbXHVEQzAwLVx1REZGRl0pfCg/OlteXHVEODAwLVx1REJGRl18XilbXHVEQzAwLVx1REZGRl0vLHN1YT0vW1x4ODVcdTIwMjhcdTIwMjldLyxsdWE9L1ssXFtcXVx7XH1dLyxuSHQ9L14oPzohfCEhfCFbYS16XC1dKyEpJC9pLHNIdD0vXig/OiF8W14sXFtcXVx7XH1dKSg/OiVbMC05YS1mXXsyfXxbMC05YS16XC0jO1wvXD86QCY9XCtcJCxfXC4hflwqJ1woXClcW1xdXSkqJC9pO2Z1bmN0aW9uIGxIdChlKXtyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpfWZ1bmN0aW9uIFgyKGUpe3JldHVybiBlPT09MTB8fGU9PT0xM31mdW5jdGlvbiAkNihlKXtyZXR1cm4gZT09PTl8fGU9PT0zMn1mdW5jdGlvbiBQbyhlKXtyZXR1cm4gZT09PTl8fGU9PT0zMnx8ZT09PTEwfHxlPT09MTN9ZnVuY3Rpb24gUTcoZSl7cmV0dXJuIGU9PT00NHx8ZT09PTkxfHxlPT09OTN8fGU9PT0xMjN8fGU9PT0xMjV9ZnVuY3Rpb24gY3VhKGUpe3ZhciB0O3JldHVybiA0ODw9ZSYmZTw9NTc/ZS00ODoodD1lfDMyLDk3PD10JiZ0PD0xMDI/dC05NysxMDotMSl9ZnVuY3Rpb24gZHVhKGUpe3JldHVybiBlPT09MTIwPzI6ZT09PTExNz80OmU9PT04NT84OjB9ZnVuY3Rpb24gdXVhKGUpe3JldHVybiA0ODw9ZSYmZTw9NTc/ZS00ODotMX1mdW5jdGlvbiBjSHQoZSl7cmV0dXJuIGU9PT00OD8iXDAiOmU9PT05Nz8iXHgwNyI6ZT09PTk4PyJcYiI6ZT09PTExNnx8ZT09PTk/IgkiOmU9PT0xMTA/YApgOmU9PT0xMTg/Ilx2IjplPT09MTAyPyJcZiI6ZT09PTExND8iXHIiOmU9PT0xMDE/Ilx4MUIiOmU9PT0zMj8iICI6ZT09PTM0PyciJzplPT09NDc/Ii8iOmU9PT05Mj8iXFwiOmU9PT03OD8iXHg4NSI6ZT09PTk1PyJceEEwIjplPT09NzY/Ilx1MjAyOCI6ZT09PTgwPyJcdTIwMjkiOiIifWZ1bmN0aW9uIGZ1YShlKXtyZXR1cm4gZTw9NjU1MzU/U3RyaW5nLmZyb21DaGFyQ29kZShlKTpTdHJpbmcuZnJvbUNoYXJDb2RlKChlLTY1NTM2Pj4xMCkrNTUyOTYsKGUtNjU1MzYmMTAyMykrNTYzMjApfWZ1bmN0aW9uIGRIdChlLHQscil7dD09PSJfX3Byb3RvX18iP09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQse2NvbmZpZ3VyYWJsZTohMCxlbnVtZXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnJ9KTplW3RdPXJ9dmFyIHVIdD1uZXcgQXJyYXkoMjU2KSxmSHQ9bmV3IEFycmF5KDI1Nik7Zm9yKFA2PTA7UDY8MjU2O1A2KyspdUh0W1A2XT1jSHQoUDYpPzE6MCxmSHRbUDZdPWNIdChQNik7ZnVuY3Rpb24gcHVhKGUsdCl7dGhpcy5pbnB1dD1lLHRoaXMuZmlsZW5hbWU9dC5maWxlbmFtZXx8bnVsbCx0aGlzLnNjaGVtYT10LnNjaGVtYXx8aXVhLHRoaXMub25XYXJuaW5nPXQub25XYXJuaW5nfHxudWxsLHRoaXMubGVnYWN5PXQubGVnYWN5fHwhMSx0aGlzLmpzb249dC5qc29ufHwhMSx0aGlzLmxpc3RlbmVyPXQubGlzdGVuZXJ8fG51bGwsdGhpcy5pbXBsaWNpdFR5cGVzPXRoaXMuc2NoZW1hLmNvbXBpbGVkSW1wbGljaXQsdGhpcy50eXBlTWFwPXRoaXMuc2NoZW1hLmNvbXBpbGVkVHlwZU1hcCx0aGlzLmxlbmd0aD1lLmxlbmd0aCx0aGlzLnBvc2l0aW9uPTAsdGhpcy5saW5lPTAsdGhpcy5saW5lU3RhcnQ9MCx0aGlzLmxpbmVJbmRlbnQ9MCx0aGlzLmRvY3VtZW50cz1bXX1mdW5jdGlvbiBwSHQoZSx0KXtyZXR1cm4gbmV3IHRIdCh0LG5ldyBhdWEoZS5maWxlbmFtZSxlLmlucHV0LGUucG9zaXRpb24sZS5saW5lLGUucG9zaXRpb24tZS5saW5lU3RhcnQpKX1mdW5jdGlvbiBFdChlLHQpe3Rocm93IHBIdChlLHQpfWZ1bmN0aW9uIHdvZShlLHQpe2Uub25XYXJuaW5nJiZlLm9uV2FybmluZy5jYWxsKG51bGwscEh0KGUsdCkpfXZhciBoSHQ9e1lBTUw6ZnVuY3Rpb24odCxyLGEpe3ZhciBpLG8sbjt0LnZlcnNpb24hPT1udWxsJiZFdCh0LCJkdXBsaWNhdGlvbiBvZiAlWUFNTCBkaXJlY3RpdmUiKSxhLmxlbmd0aCE9PTEmJkV0KHQsIllBTUwgZGlyZWN0aXZlIGFjY2VwdHMgZXhhY3RseSBvbmUgYXJndW1lbnQiKSxpPS9eKFswLTldKylcLihbMC05XSspJC8uZXhlYyhhWzBdKSxpPT09bnVsbCYmRXQodCwiaWxsLWZvcm1lZCBhcmd1bWVudCBvZiB0aGUgWUFNTCBkaXJlY3RpdmUiKSxvPXBhcnNlSW50KGlbMV0sMTApLG49cGFyc2VJbnQoaVsyXSwxMCksbyE9PTEmJkV0KHQsInVuYWNjZXB0YWJsZSBZQU1MIHZlcnNpb24gb2YgdGhlIGRvY3VtZW50IiksdC52ZXJzaW9uPWFbMF0sdC5jaGVja0xpbmVCcmVha3M9bjwyLG4hPT0xJiZuIT09MiYmd29lKHQsInVuc3VwcG9ydGVkIFlBTUwgdmVyc2lvbiBvZiB0aGUgZG9jdW1lbnQiKX0sVEFHOmZ1bmN0aW9uKHQscixhKXt2YXIgaSxvO2EubGVuZ3RoIT09MiYmRXQodCwiVEFHIGRpcmVjdGl2ZSBhY2NlcHRzIGV4YWN0bHkgdHdvIGFyZ3VtZW50cyIpLGk9YVswXSxvPWFbMV0sbkh0LnRlc3QoaSl8fEV0KHQsImlsbC1mb3JtZWQgdGFnIGhhbmRsZSAoZmlyc3QgYXJndW1lbnQpIG9mIHRoZSBUQUcgZGlyZWN0aXZlIiksRTQuY2FsbCh0LnRhZ01hcCxpKSYmRXQodCwndGhlcmUgaXMgYSBwcmV2aW91c2x5IGRlY2xhcmVkIHN1ZmZpeCBmb3IgIicraSsnIiB0YWcgaGFuZGxlJyksc0h0LnRlc3Qobyl8fEV0KHQsImlsbC1mb3JtZWQgdGFnIHByZWZpeCAoc2Vjb25kIGFyZ3VtZW50KSBvZiB0aGUgVEFHIGRpcmVjdGl2ZSIpLHQudGFnTWFwW2ldPW99fTtmdW5jdGlvbiAkNChlLHQscixhKXt2YXIgaSxvLG4scztpZih0PHIpe2lmKHM9ZS5pbnB1dC5zbGljZSh0LHIpLGEpZm9yKGk9MCxvPXMubGVuZ3RoO2k8bztpKz0xKW49cy5jaGFyQ29kZUF0KGkpLG49PT05fHwzMjw9biYmbjw9MTExNDExMXx8RXQoZSwiZXhwZWN0ZWQgdmFsaWQgSlNPTiBjaGFyYWN0ZXIiKTtlbHNlIG51YS50ZXN0KHMpJiZFdChlLCJ0aGUgc3RyZWFtIGNvbnRhaW5zIG5vbi1wcmludGFibGUgY2hhcmFjdGVycyIpO2UucmVzdWx0Kz1zfX1mdW5jdGlvbiBtSHQoZSx0LHIsYSl7dmFyIGksbyxuLHM7Zm9yKHBjLmlzT2JqZWN0KHIpfHxFdChlLCJjYW5ub3QgbWVyZ2UgbWFwcGluZ3M7IHRoZSBwcm92aWRlZCBzb3VyY2Ugb2JqZWN0IGlzIHVuYWNjZXB0YWJsZSIpLGk9T2JqZWN0LmtleXMociksbj0wLHM9aS5sZW5ndGg7bjxzO24rPTEpbz1pW25dLEU0LmNhbGwodCxvKXx8KGRIdCh0LG8scltvXSksYVtvXT0hMCl9ZnVuY3Rpb24gSzcoZSx0LHIsYSxpLG8sbixzKXt2YXIgYyxkO2lmKEFycmF5LmlzQXJyYXkoaSkpZm9yKGk9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoaSksYz0wLGQ9aS5sZW5ndGg7YzxkO2MrPTEpQXJyYXkuaXNBcnJheShpW2NdKSYmRXQoZSwibmVzdGVkIGFycmF5cyBhcmUgbm90IHN1cHBvcnRlZCBpbnNpZGUga2V5cyIpLHR5cGVvZiBpPT0ib2JqZWN0IiYmbEh0KGlbY10pPT09IltvYmplY3QgT2JqZWN0XSImJihpW2NdPSJbb2JqZWN0IE9iamVjdF0iKTtpZih0eXBlb2YgaT09Im9iamVjdCImJmxIdChpKT09PSJbb2JqZWN0IE9iamVjdF0iJiYoaT0iW29iamVjdCBPYmplY3RdIiksaT1TdHJpbmcoaSksdD09PW51bGwmJih0PXt9KSxhPT09InRhZzp5YW1sLm9yZywyMDAyOm1lcmdlIilpZihBcnJheS5pc0FycmF5KG8pKWZvcihjPTAsZD1vLmxlbmd0aDtjPGQ7Yys9MSltSHQoZSx0LG9bY10scik7ZWxzZSBtSHQoZSx0LG8scik7ZWxzZSFlLmpzb24mJiFFNC5jYWxsKHIsaSkmJkU0LmNhbGwodCxpKSYmKGUubGluZT1ufHxlLmxpbmUsZS5wb3NpdGlvbj1zfHxlLnBvc2l0aW9uLEV0KGUsImR1cGxpY2F0ZWQgbWFwcGluZyBrZXkiKSksZEh0KHQsaSxvKSxkZWxldGUgcltpXTtyZXR1cm4gdH1mdW5jdGlvbiBfYmUoZSl7dmFyIHQ7dD1lLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbiksdD09PTEwP2UucG9zaXRpb24rKzp0PT09MTM/KGUucG9zaXRpb24rKyxlLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbik9PT0xMCYmZS5wb3NpdGlvbisrKTpFdChlLCJhIGxpbmUgYnJlYWsgaXMgZXhwZWN0ZWQiKSxlLmxpbmUrPTEsZS5saW5lU3RhcnQ9ZS5wb3NpdGlvbn1mdW5jdGlvbiBtaShlLHQscil7Zm9yKHZhciBhPTAsaT1lLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbik7aSE9PTA7KXtmb3IoOyQ2KGkpOylpPWUuaW5wdXQuY2hhckNvZGVBdCgrK2UucG9zaXRpb24pO2lmKHQmJmk9PT0zNSlkbyBpPWUuaW5wdXQuY2hhckNvZGVBdCgrK2UucG9zaXRpb24pO3doaWxlKGkhPT0xMCYmaSE9PTEzJiZpIT09MCk7aWYoWDIoaSkpZm9yKF9iZShlKSxpPWUuaW5wdXQuY2hhckNvZGVBdChlLnBvc2l0aW9uKSxhKyssZS5saW5lSW5kZW50PTA7aT09PTMyOyllLmxpbmVJbmRlbnQrKyxpPWUuaW5wdXQuY2hhckNvZGVBdCgrK2UucG9zaXRpb24pO2Vsc2UgYnJlYWt9cmV0dXJuIHIhPT0tMSYmYSE9PTAmJmUubGluZUluZGVudDxyJiZ3b2UoZSwiZGVmaWNpZW50IGluZGVudGF0aW9uIiksYX1mdW5jdGlvbiBNb2UoZSl7dmFyIHQ9ZS5wb3NpdGlvbixyO3JldHVybiByPWUuaW5wdXQuY2hhckNvZGVBdCh0KSwhISgocj09PTQ1fHxyPT09NDYpJiZyPT09ZS5pbnB1dC5jaGFyQ29kZUF0KHQrMSkmJnI9PT1lLmlucHV0LmNoYXJDb2RlQXQodCsyKSYmKHQrPTMscj1lLmlucHV0LmNoYXJDb2RlQXQodCkscj09PTB8fFBvKHIpKSl9ZnVuY3Rpb24gVGJlKGUsdCl7dD09PTE/ZS5yZXN1bHQrPSIgIjp0PjEmJihlLnJlc3VsdCs9cGMucmVwZWF0KGAKYCx0LTEpKX1mdW5jdGlvbiBodWEoZSx0LHIpe3ZhciBhLGksbyxuLHMsYyxkLGYsdT1lLmtpbmQscD1lLnJlc3VsdCxoO2lmKGg9ZS5pbnB1dC5jaGFyQ29kZUF0KGUucG9zaXRpb24pLFBvKGgpfHxRNyhoKXx8aD09PTM1fHxoPT09Mzh8fGg9PT00Mnx8aD09PTMzfHxoPT09MTI0fHxoPT09NjJ8fGg9PT0zOXx8aD09PTM0fHxoPT09Mzd8fGg9PT02NHx8aD09PTk2fHwoaD09PTYzfHxoPT09NDUpJiYoaT1lLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbisxKSxQbyhpKXx8ciYmUTcoaSkpKXJldHVybiExO2ZvcihlLmtpbmQ9InNjYWxhciIsZS5yZXN1bHQ9IiIsbz1uPWUucG9zaXRpb24scz0hMTtoIT09MDspe2lmKGg9PT01OCl7aWYoaT1lLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbisxKSxQbyhpKXx8ciYmUTcoaSkpYnJlYWt9ZWxzZSBpZihoPT09MzUpe2lmKGE9ZS5pbnB1dC5jaGFyQ29kZUF0KGUucG9zaXRpb24tMSksUG8oYSkpYnJlYWt9ZWxzZXtpZihlLnBvc2l0aW9uPT09ZS5saW5lU3RhcnQmJk1vZShlKXx8ciYmUTcoaCkpYnJlYWs7aWYoWDIoaCkpaWYoYz1lLmxpbmUsZD1lLmxpbmVTdGFydCxmPWUubGluZUluZGVudCxtaShlLCExLC0xKSxlLmxpbmVJbmRlbnQ+PXQpe3M9ITAsaD1lLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbik7Y29udGludWV9ZWxzZXtlLnBvc2l0aW9uPW4sZS5saW5lPWMsZS5saW5lU3RhcnQ9ZCxlLmxpbmVJbmRlbnQ9ZjticmVha319cyYmKCQ0KGUsbyxuLCExKSxUYmUoZSxlLmxpbmUtYyksbz1uPWUucG9zaXRpb24scz0hMSksJDYoaCl8fChuPWUucG9zaXRpb24rMSksaD1lLmlucHV0LmNoYXJDb2RlQXQoKytlLnBvc2l0aW9uKX1yZXR1cm4gJDQoZSxvLG4sITEpLGUucmVzdWx0PyEwOihlLmtpbmQ9dSxlLnJlc3VsdD1wLCExKX1mdW5jdGlvbiBtdWEoZSx0KXt2YXIgcixhLGk7aWYocj1lLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbiksciE9PTM5KXJldHVybiExO2ZvcihlLmtpbmQ9InNjYWxhciIsZS5yZXN1bHQ9IiIsZS5wb3NpdGlvbisrLGE9aT1lLnBvc2l0aW9uOyhyPWUuaW5wdXQuY2hhckNvZGVBdChlLnBvc2l0aW9uKSkhPT0wOylpZihyPT09MzkpaWYoJDQoZSxhLGUucG9zaXRpb24sITApLHI9ZS5pbnB1dC5jaGFyQ29kZUF0KCsrZS5wb3NpdGlvbikscj09PTM5KWE9ZS5wb3NpdGlvbixlLnBvc2l0aW9uKyssaT1lLnBvc2l0aW9uO2Vsc2UgcmV0dXJuITA7ZWxzZSBYMihyKT8oJDQoZSxhLGksITApLFRiZShlLG1pKGUsITEsdCkpLGE9aT1lLnBvc2l0aW9uKTplLnBvc2l0aW9uPT09ZS5saW5lU3RhcnQmJk1vZShlKT9FdChlLCJ1bmV4cGVjdGVkIGVuZCBvZiB0aGUgZG9jdW1lbnQgd2l0aGluIGEgc2luZ2xlIHF1b3RlZCBzY2FsYXIiKTooZS5wb3NpdGlvbisrLGk9ZS5wb3NpdGlvbik7RXQoZSwidW5leHBlY3RlZCBlbmQgb2YgdGhlIHN0cmVhbSB3aXRoaW4gYSBzaW5nbGUgcXVvdGVkIHNjYWxhciIpfWZ1bmN0aW9uIGd1YShlLHQpe3ZhciByLGEsaSxvLG4scztpZihzPWUuaW5wdXQuY2hhckNvZGVBdChlLnBvc2l0aW9uKSxzIT09MzQpcmV0dXJuITE7Zm9yKGUua2luZD0ic2NhbGFyIixlLnJlc3VsdD0iIixlLnBvc2l0aW9uKysscj1hPWUucG9zaXRpb247KHM9ZS5pbnB1dC5jaGFyQ29kZUF0KGUucG9zaXRpb24pKSE9PTA7KXtpZihzPT09MzQpcmV0dXJuICQ0KGUscixlLnBvc2l0aW9uLCEwKSxlLnBvc2l0aW9uKyssITA7aWYocz09PTkyKXtpZigkNChlLHIsZS5wb3NpdGlvbiwhMCkscz1lLmlucHV0LmNoYXJDb2RlQXQoKytlLnBvc2l0aW9uKSxYMihzKSltaShlLCExLHQpO2Vsc2UgaWYoczwyNTYmJnVIdFtzXSllLnJlc3VsdCs9Zkh0W3NdLGUucG9zaXRpb24rKztlbHNlIGlmKChuPWR1YShzKSk+MCl7Zm9yKGk9bixvPTA7aT4wO2ktLSlzPWUuaW5wdXQuY2hhckNvZGVBdCgrK2UucG9zaXRpb24pLChuPWN1YShzKSk+PTA/bz0obzw8NCkrbjpFdChlLCJleHBlY3RlZCBoZXhhZGVjaW1hbCBjaGFyYWN0ZXIiKTtlLnJlc3VsdCs9ZnVhKG8pLGUucG9zaXRpb24rK31lbHNlIEV0KGUsInVua25vd24gZXNjYXBlIHNlcXVlbmNlIik7cj1hPWUucG9zaXRpb259ZWxzZSBYMihzKT8oJDQoZSxyLGEsITApLFRiZShlLG1pKGUsITEsdCkpLHI9YT1lLnBvc2l0aW9uKTplLnBvc2l0aW9uPT09ZS5saW5lU3RhcnQmJk1vZShlKT9FdChlLCJ1bmV4cGVjdGVkIGVuZCBvZiB0aGUgZG9jdW1lbnQgd2l0aGluIGEgZG91YmxlIHF1b3RlZCBzY2FsYXIiKTooZS5wb3NpdGlvbisrLGE9ZS5wb3NpdGlvbil9RXQoZSwidW5leHBlY3RlZCBlbmQgb2YgdGhlIHN0cmVhbSB3aXRoaW4gYSBkb3VibGUgcXVvdGVkIHNjYWxhciIpfWZ1bmN0aW9uIHh1YShlLHQpe3ZhciByPSEwLGEsaT1lLnRhZyxvLG49ZS5hbmNob3IscyxjLGQsZix1LHA9e30saCxiLHgsZztpZihnPWUuaW5wdXQuY2hhckNvZGVBdChlLnBvc2l0aW9uKSxnPT09OTEpYz05Myx1PSExLG89W107ZWxzZSBpZihnPT09MTIzKWM9MTI1LHU9ITAsbz17fTtlbHNlIHJldHVybiExO2ZvcihlLmFuY2hvciE9PW51bGwmJihlLmFuY2hvck1hcFtlLmFuY2hvcl09byksZz1lLmlucHV0LmNoYXJDb2RlQXQoKytlLnBvc2l0aW9uKTtnIT09MDspe2lmKG1pKGUsITAsdCksZz1lLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbiksZz09PWMpcmV0dXJuIGUucG9zaXRpb24rKyxlLnRhZz1pLGUuYW5jaG9yPW4sZS5raW5kPXU/Im1hcHBpbmciOiJzZXF1ZW5jZSIsZS5yZXN1bHQ9bywhMDtyfHxFdChlLCJtaXNzZWQgY29tbWEgYmV0d2VlbiBmbG93IGNvbGxlY3Rpb24gZW50cmllcyIpLGI9aD14PW51bGwsZD1mPSExLGc9PT02MyYmKHM9ZS5pbnB1dC5jaGFyQ29kZUF0KGUucG9zaXRpb24rMSksUG8ocykmJihkPWY9ITAsZS5wb3NpdGlvbisrLG1pKGUsITAsdCkpKSxhPWUubGluZSxKNyhlLHQsdm9lLCExLCEwKSxiPWUudGFnLGg9ZS5yZXN1bHQsbWkoZSwhMCx0KSxnPWUuaW5wdXQuY2hhckNvZGVBdChlLnBvc2l0aW9uKSwoZnx8ZS5saW5lPT09YSkmJmc9PT01OCYmKGQ9ITAsZz1lLmlucHV0LmNoYXJDb2RlQXQoKytlLnBvc2l0aW9uKSxtaShlLCEwLHQpLEo3KGUsdCx2b2UsITEsITApLHg9ZS5yZXN1bHQpLHU/SzcoZSxvLHAsYixoLHgpOmQ/by5wdXNoKEs3KGUsbnVsbCxwLGIsaCx4KSk6by5wdXNoKGgpLG1pKGUsITAsdCksZz1lLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbiksZz09PTQ0PyhyPSEwLGc9ZS5pbnB1dC5jaGFyQ29kZUF0KCsrZS5wb3NpdGlvbikpOnI9ITF9RXQoZSwidW5leHBlY3RlZCBlbmQgb2YgdGhlIHN0cmVhbSB3aXRoaW4gYSBmbG93IGNvbGxlY3Rpb24iKX1mdW5jdGlvbiBidWEoZSx0KXt2YXIgcixhLGk9Q2JlLG89ITEsbj0hMSxzPXQsYz0wLGQ9ITEsZix1O2lmKHU9ZS5pbnB1dC5jaGFyQ29kZUF0KGUucG9zaXRpb24pLHU9PT0xMjQpYT0hMTtlbHNlIGlmKHU9PT02MilhPSEwO2Vsc2UgcmV0dXJuITE7Zm9yKGUua2luZD0ic2NhbGFyIixlLnJlc3VsdD0iIjt1IT09MDspaWYodT1lLmlucHV0LmNoYXJDb2RlQXQoKytlLnBvc2l0aW9uKSx1PT09NDN8fHU9PT00NSlDYmU9PT1pP2k9dT09PTQzP29IdDpvdWE6RXQoZSwicmVwZWF0IG9mIGEgY2hvbXBpbmcgbW9kZSBpZGVudGlmaWVyIik7ZWxzZSBpZigoZj11dWEodSkpPj0wKWY9PT0wP0V0KGUsImJhZCBleHBsaWNpdCBpbmRlbnRhdGlvbiB3aWR0aCBvZiBhIGJsb2NrIHNjYWxhcjsgaXQgY2Fubm90IGJlIGxlc3MgdGhhbiBvbmUiKTpuP0V0KGUsInJlcGVhdCBvZiBhbiBpbmRlbnRhdGlvbiB3aWR0aCBpZGVudGlmaWVyIik6KHM9dCtmLTEsbj0hMCk7ZWxzZSBicmVhaztpZigkNih1KSl7ZG8gdT1lLmlucHV0LmNoYXJDb2RlQXQoKytlLnBvc2l0aW9uKTt3aGlsZSgkNih1KSk7aWYodT09PTM1KWRvIHU9ZS5pbnB1dC5jaGFyQ29kZUF0KCsrZS5wb3NpdGlvbik7d2hpbGUoIVgyKHUpJiZ1IT09MCl9Zm9yKDt1IT09MDspe2ZvcihfYmUoZSksZS5saW5lSW5kZW50PTAsdT1lLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbik7KCFufHxlLmxpbmVJbmRlbnQ8cykmJnU9PT0zMjspZS5saW5lSW5kZW50KyssdT1lLmlucHV0LmNoYXJDb2RlQXQoKytlLnBvc2l0aW9uKTtpZighbiYmZS5saW5lSW5kZW50PnMmJihzPWUubGluZUluZGVudCksWDIodSkpe2MrKztjb250aW51ZX1pZihlLmxpbmVJbmRlbnQ8cyl7aT09PW9IdD9lLnJlc3VsdCs9cGMucmVwZWF0KGAKYCxvPzErYzpjKTppPT09Q2JlJiZvJiYoZS5yZXN1bHQrPWAKYCk7YnJlYWt9Zm9yKGE/JDYodSk/KGQ9ITAsZS5yZXN1bHQrPXBjLnJlcGVhdChgCmAsbz8xK2M6YykpOmQ/KGQ9ITEsZS5yZXN1bHQrPXBjLnJlcGVhdChgCmAsYysxKSk6Yz09PTA/byYmKGUucmVzdWx0Kz0iICIpOmUucmVzdWx0Kz1wYy5yZXBlYXQoYApgLGMpOmUucmVzdWx0Kz1wYy5yZXBlYXQoYApgLG8/MStjOmMpLG89ITAsbj0hMCxjPTAscj1lLnBvc2l0aW9uOyFYMih1KSYmdSE9PTA7KXU9ZS5pbnB1dC5jaGFyQ29kZUF0KCsrZS5wb3NpdGlvbik7JDQoZSxyLGUucG9zaXRpb24sITEpfXJldHVybiEwfWZ1bmN0aW9uIGdIdChlLHQpe3ZhciByLGE9ZS50YWcsaT1lLmFuY2hvcixvPVtdLG4scz0hMSxjO2ZvcihlLmFuY2hvciE9PW51bGwmJihlLmFuY2hvck1hcFtlLmFuY2hvcl09byksYz1lLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbik7YyE9PTAmJiEoYyE9PTQ1fHwobj1lLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbisxKSwhUG8obikpKTspe2lmKHM9ITAsZS5wb3NpdGlvbisrLG1pKGUsITAsLTEpJiZlLmxpbmVJbmRlbnQ8PXQpe28ucHVzaChudWxsKSxjPWUuaW5wdXQuY2hhckNvZGVBdChlLnBvc2l0aW9uKTtjb250aW51ZX1pZihyPWUubGluZSxKNyhlLHQsaUh0LCExLCEwKSxvLnB1c2goZS5yZXN1bHQpLG1pKGUsITAsLTEpLGM9ZS5pbnB1dC5jaGFyQ29kZUF0KGUucG9zaXRpb24pLChlLmxpbmU9PT1yfHxlLmxpbmVJbmRlbnQ+dCkmJmMhPT0wKUV0KGUsImJhZCBpbmRlbnRhdGlvbiBvZiBhIHNlcXVlbmNlIGVudHJ5Iik7ZWxzZSBpZihlLmxpbmVJbmRlbnQ8dClicmVha31yZXR1cm4gcz8oZS50YWc9YSxlLmFuY2hvcj1pLGUua2luZD0ic2VxdWVuY2UiLGUucmVzdWx0PW8sITApOiExfWZ1bmN0aW9uIHZ1YShlLHQscil7dmFyIGEsaSxvLG4scz1lLnRhZyxjPWUuYW5jaG9yLGQ9e30sZj17fSx1PW51bGwscD1udWxsLGg9bnVsbCxiPSExLHg9ITEsZztmb3IoZS5hbmNob3IhPT1udWxsJiYoZS5hbmNob3JNYXBbZS5hbmNob3JdPWQpLGc9ZS5pbnB1dC5jaGFyQ29kZUF0KGUucG9zaXRpb24pO2chPT0wOyl7aWYoYT1lLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbisxKSxvPWUubGluZSxuPWUucG9zaXRpb24sKGc9PT02M3x8Zz09PTU4KSYmUG8oYSkpZz09PTYzPyhiJiYoSzcoZSxkLGYsdSxwLG51bGwpLHU9cD1oPW51bGwpLHg9ITAsYj0hMCxpPSEwKTpiPyhiPSExLGk9ITApOkV0KGUsImluY29tcGxldGUgZXhwbGljaXQgbWFwcGluZyBwYWlyOyBhIGtleSBub2RlIGlzIG1pc3NlZDsgb3IgZm9sbG93ZWQgYnkgYSBub24tdGFidWxhdGVkIGVtcHR5IGxpbmUiKSxlLnBvc2l0aW9uKz0xLGc9YTtlbHNlIGlmKEo3KGUscixhSHQsITEsITApKWlmKGUubGluZT09PW8pe2ZvcihnPWUuaW5wdXQuY2hhckNvZGVBdChlLnBvc2l0aW9uKTskNihnKTspZz1lLmlucHV0LmNoYXJDb2RlQXQoKytlLnBvc2l0aW9uKTtpZihnPT09NTgpZz1lLmlucHV0LmNoYXJDb2RlQXQoKytlLnBvc2l0aW9uKSxQbyhnKXx8RXQoZSwiYSB3aGl0ZXNwYWNlIGNoYXJhY3RlciBpcyBleHBlY3RlZCBhZnRlciB0aGUga2V5LXZhbHVlIHNlcGFyYXRvciB3aXRoaW4gYSBibG9jayBtYXBwaW5nIiksYiYmKEs3KGUsZCxmLHUscCxudWxsKSx1PXA9aD1udWxsKSx4PSEwLGI9ITEsaT0hMSx1PWUudGFnLHA9ZS5yZXN1bHQ7ZWxzZSBpZih4KUV0KGUsImNhbiBub3QgcmVhZCBhbiBpbXBsaWNpdCBtYXBwaW5nIHBhaXI7IGEgY29sb24gaXMgbWlzc2VkIik7ZWxzZSByZXR1cm4gZS50YWc9cyxlLmFuY2hvcj1jLCEwfWVsc2UgaWYoeClFdChlLCJjYW4gbm90IHJlYWQgYSBibG9jayBtYXBwaW5nIGVudHJ5OyBhIG11bHRpbGluZSBrZXkgbWF5IG5vdCBiZSBhbiBpbXBsaWNpdCBrZXkiKTtlbHNlIHJldHVybiBlLnRhZz1zLGUuYW5jaG9yPWMsITA7ZWxzZSBicmVhaztpZigoZS5saW5lPT09b3x8ZS5saW5lSW5kZW50PnQpJiYoSjcoZSx0LHlvZSwhMCxpKSYmKGI/cD1lLnJlc3VsdDpoPWUucmVzdWx0KSxifHwoSzcoZSxkLGYsdSxwLGgsbyxuKSx1PXA9aD1udWxsKSxtaShlLCEwLC0xKSxnPWUuaW5wdXQuY2hhckNvZGVBdChlLnBvc2l0aW9uKSksZS5saW5lSW5kZW50PnQmJmchPT0wKUV0KGUsImJhZCBpbmRlbnRhdGlvbiBvZiBhIG1hcHBpbmcgZW50cnkiKTtlbHNlIGlmKGUubGluZUluZGVudDx0KWJyZWFrfXJldHVybiBiJiZLNyhlLGQsZix1LHAsbnVsbCkseCYmKGUudGFnPXMsZS5hbmNob3I9YyxlLmtpbmQ9Im1hcHBpbmciLGUucmVzdWx0PWQpLHh9ZnVuY3Rpb24geXVhKGUpe3ZhciB0LHI9ITEsYT0hMSxpLG8sbjtpZihuPWUuaW5wdXQuY2hhckNvZGVBdChlLnBvc2l0aW9uKSxuIT09MzMpcmV0dXJuITE7aWYoZS50YWchPT1udWxsJiZFdChlLCJkdXBsaWNhdGlvbiBvZiBhIHRhZyBwcm9wZXJ0eSIpLG49ZS5pbnB1dC5jaGFyQ29kZUF0KCsrZS5wb3NpdGlvbiksbj09PTYwPyhyPSEwLG49ZS5pbnB1dC5jaGFyQ29kZUF0KCsrZS5wb3NpdGlvbikpOm49PT0zMz8oYT0hMCxpPSIhISIsbj1lLmlucHV0LmNoYXJDb2RlQXQoKytlLnBvc2l0aW9uKSk6aT0iISIsdD1lLnBvc2l0aW9uLHIpe2RvIG49ZS5pbnB1dC5jaGFyQ29kZUF0KCsrZS5wb3NpdGlvbik7d2hpbGUobiE9PTAmJm4hPT02Mik7ZS5wb3NpdGlvbjxlLmxlbmd0aD8obz1lLmlucHV0LnNsaWNlKHQsZS5wb3NpdGlvbiksbj1lLmlucHV0LmNoYXJDb2RlQXQoKytlLnBvc2l0aW9uKSk6RXQoZSwidW5leHBlY3RlZCBlbmQgb2YgdGhlIHN0cmVhbSB3aXRoaW4gYSB2ZXJiYXRpbSB0YWciKX1lbHNle2Zvcig7biE9PTAmJiFQbyhuKTspbj09PTMzJiYoYT9FdChlLCJ0YWcgc3VmZml4IGNhbm5vdCBjb250YWluIGV4Y2xhbWF0aW9uIG1hcmtzIik6KGk9ZS5pbnB1dC5zbGljZSh0LTEsZS5wb3NpdGlvbisxKSxuSHQudGVzdChpKXx8RXQoZSwibmFtZWQgdGFnIGhhbmRsZSBjYW5ub3QgY29udGFpbiBzdWNoIGNoYXJhY3RlcnMiKSxhPSEwLHQ9ZS5wb3NpdGlvbisxKSksbj1lLmlucHV0LmNoYXJDb2RlQXQoKytlLnBvc2l0aW9uKTtvPWUuaW5wdXQuc2xpY2UodCxlLnBvc2l0aW9uKSxsdWEudGVzdChvKSYmRXQoZSwidGFnIHN1ZmZpeCBjYW5ub3QgY29udGFpbiBmbG93IGluZGljYXRvciBjaGFyYWN0ZXJzIil9cmV0dXJuIG8mJiFzSHQudGVzdChvKSYmRXQoZSwidGFnIG5hbWUgY2Fubm90IGNvbnRhaW4gc3VjaCBjaGFyYWN0ZXJzOiAiK28pLHI/ZS50YWc9bzpFNC5jYWxsKGUudGFnTWFwLGkpP2UudGFnPWUudGFnTWFwW2ldK286aT09PSIhIj9lLnRhZz0iISIrbzppPT09IiEhIj9lLnRhZz0idGFnOnlhbWwub3JnLDIwMDI6IitvOkV0KGUsJ3VuZGVjbGFyZWQgdGFnIGhhbmRsZSAiJytpKyciJyksITB9ZnVuY3Rpb24gd3VhKGUpe3ZhciB0LHI7aWYocj1lLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbiksciE9PTM4KXJldHVybiExO2ZvcihlLmFuY2hvciE9PW51bGwmJkV0KGUsImR1cGxpY2F0aW9uIG9mIGFuIGFuY2hvciBwcm9wZXJ0eSIpLHI9ZS5pbnB1dC5jaGFyQ29kZUF0KCsrZS5wb3NpdGlvbiksdD1lLnBvc2l0aW9uO3IhPT0wJiYhUG8ocikmJiFRNyhyKTspcj1lLmlucHV0LmNoYXJDb2RlQXQoKytlLnBvc2l0aW9uKTtyZXR1cm4gZS5wb3NpdGlvbj09PXQmJkV0KGUsIm5hbWUgb2YgYW4gYW5jaG9yIG5vZGUgbXVzdCBjb250YWluIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIiKSxlLmFuY2hvcj1lLmlucHV0LnNsaWNlKHQsZS5wb3NpdGlvbiksITB9ZnVuY3Rpb24gTXVhKGUpe3ZhciB0LHIsYTtpZihhPWUuaW5wdXQuY2hhckNvZGVBdChlLnBvc2l0aW9uKSxhIT09NDIpcmV0dXJuITE7Zm9yKGE9ZS5pbnB1dC5jaGFyQ29kZUF0KCsrZS5wb3NpdGlvbiksdD1lLnBvc2l0aW9uO2EhPT0wJiYhUG8oYSkmJiFRNyhhKTspYT1lLmlucHV0LmNoYXJDb2RlQXQoKytlLnBvc2l0aW9uKTtyZXR1cm4gZS5wb3NpdGlvbj09PXQmJkV0KGUsIm5hbWUgb2YgYW4gYWxpYXMgbm9kZSBtdXN0IGNvbnRhaW4gYXQgbGVhc3Qgb25lIGNoYXJhY3RlciIpLHI9ZS5pbnB1dC5zbGljZSh0LGUucG9zaXRpb24pLEU0LmNhbGwoZS5hbmNob3JNYXAscil8fEV0KGUsJ3VuaWRlbnRpZmllZCBhbGlhcyAiJytyKyciJyksZS5yZXN1bHQ9ZS5hbmNob3JNYXBbcl0sbWkoZSwhMCwtMSksITB9ZnVuY3Rpb24gSjcoZSx0LHIsYSxpKXt2YXIgbyxuLHMsYz0xLGQ9ITEsZj0hMSx1LHAsaCxiLHg7aWYoZS5saXN0ZW5lciE9PW51bGwmJmUubGlzdGVuZXIoIm9wZW4iLGUpLGUudGFnPW51bGwsZS5hbmNob3I9bnVsbCxlLmtpbmQ9bnVsbCxlLnJlc3VsdD1udWxsLG89bj1zPXlvZT09PXJ8fGlIdD09PXIsYSYmbWkoZSwhMCwtMSkmJihkPSEwLGUubGluZUluZGVudD50P2M9MTplLmxpbmVJbmRlbnQ9PT10P2M9MDplLmxpbmVJbmRlbnQ8dCYmKGM9LTEpKSxjPT09MSlmb3IoO3l1YShlKXx8d3VhKGUpOyltaShlLCEwLC0xKT8oZD0hMCxzPW8sZS5saW5lSW5kZW50PnQ/Yz0xOmUubGluZUluZGVudD09PXQ/Yz0wOmUubGluZUluZGVudDx0JiYoYz0tMSkpOnM9ITE7aWYocyYmKHM9ZHx8aSksKGM9PT0xfHx5b2U9PT1yKSYmKHZvZT09PXJ8fGFIdD09PXI/Yj10OmI9dCsxLHg9ZS5wb3NpdGlvbi1lLmxpbmVTdGFydCxjPT09MT9zJiYoZ0h0KGUseCl8fHZ1YShlLHgsYikpfHx4dWEoZSxiKT9mPSEwOihuJiZidWEoZSxiKXx8bXVhKGUsYil8fGd1YShlLGIpP2Y9ITA6TXVhKGUpPyhmPSEwLChlLnRhZyE9PW51bGx8fGUuYW5jaG9yIT09bnVsbCkmJkV0KGUsImFsaWFzIG5vZGUgc2hvdWxkIG5vdCBoYXZlIGFueSBwcm9wZXJ0aWVzIikpOmh1YShlLGIsdm9lPT09cikmJihmPSEwLGUudGFnPT09bnVsbCYmKGUudGFnPSI/IikpLGUuYW5jaG9yIT09bnVsbCYmKGUuYW5jaG9yTWFwW2UuYW5jaG9yXT1lLnJlc3VsdCkpOmM9PT0wJiYoZj1zJiZnSHQoZSx4KSkpLGUudGFnIT09bnVsbCYmZS50YWchPT0iISIpaWYoZS50YWc9PT0iPyIpe2ZvcihlLnJlc3VsdCE9PW51bGwmJmUua2luZCE9PSJzY2FsYXIiJiZFdChlLCd1bmFjY2VwdGFibGUgbm9kZSBraW5kIGZvciAhPD8+IHRhZzsgaXQgc2hvdWxkIGJlICJzY2FsYXIiLCBub3QgIicrZS5raW5kKyciJyksdT0wLHA9ZS5pbXBsaWNpdFR5cGVzLmxlbmd0aDt1PHA7dSs9MSlpZihoPWUuaW1wbGljaXRUeXBlc1t1XSxoLnJlc29sdmUoZS5yZXN1bHQpKXtlLnJlc3VsdD1oLmNvbnN0cnVjdChlLnJlc3VsdCksZS50YWc9aC50YWcsZS5hbmNob3IhPT1udWxsJiYoZS5hbmNob3JNYXBbZS5hbmNob3JdPWUucmVzdWx0KTticmVha319ZWxzZSBFNC5jYWxsKGUudHlwZU1hcFtlLmtpbmR8fCJmYWxsYmFjayJdLGUudGFnKT8oaD1lLnR5cGVNYXBbZS5raW5kfHwiZmFsbGJhY2siXVtlLnRhZ10sZS5yZXN1bHQhPT1udWxsJiZoLmtpbmQhPT1lLmtpbmQmJkV0KGUsInVuYWNjZXB0YWJsZSBub2RlIGtpbmQgZm9yICE8IitlLnRhZysnPiB0YWc7IGl0IHNob3VsZCBiZSAiJytoLmtpbmQrJyIsIG5vdCAiJytlLmtpbmQrJyInKSxoLnJlc29sdmUoZS5yZXN1bHQpPyhlLnJlc3VsdD1oLmNvbnN0cnVjdChlLnJlc3VsdCksZS5hbmNob3IhPT1udWxsJiYoZS5hbmNob3JNYXBbZS5hbmNob3JdPWUucmVzdWx0KSk6RXQoZSwiY2Fubm90IHJlc29sdmUgYSBub2RlIHdpdGggITwiK2UudGFnKyI+IGV4cGxpY2l0IHRhZyIpKTpFdChlLCJ1bmtub3duIHRhZyAhPCIrZS50YWcrIj4iKTtyZXR1cm4gZS5saXN0ZW5lciE9PW51bGwmJmUubGlzdGVuZXIoImNsb3NlIixlKSxlLnRhZyE9PW51bGx8fGUuYW5jaG9yIT09bnVsbHx8Zn1mdW5jdGlvbiBrdWEoZSl7dmFyIHQ9ZS5wb3NpdGlvbixyLGEsaSxvPSExLG47Zm9yKGUudmVyc2lvbj1udWxsLGUuY2hlY2tMaW5lQnJlYWtzPWUubGVnYWN5LGUudGFnTWFwPXt9LGUuYW5jaG9yTWFwPXt9OyhuPWUuaW5wdXQuY2hhckNvZGVBdChlLnBvc2l0aW9uKSkhPT0wJiYobWkoZSwhMCwtMSksbj1lLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbiksIShlLmxpbmVJbmRlbnQ+MHx8biE9PTM3KSk7KXtmb3Iobz0hMCxuPWUuaW5wdXQuY2hhckNvZGVBdCgrK2UucG9zaXRpb24pLHI9ZS5wb3NpdGlvbjtuIT09MCYmIVBvKG4pOyluPWUuaW5wdXQuY2hhckNvZGVBdCgrK2UucG9zaXRpb24pO2ZvcihhPWUuaW5wdXQuc2xpY2UocixlLnBvc2l0aW9uKSxpPVtdLGEubGVuZ3RoPDEmJkV0KGUsImRpcmVjdGl2ZSBuYW1lIG11c3Qgbm90IGJlIGxlc3MgdGhhbiBvbmUgY2hhcmFjdGVyIGluIGxlbmd0aCIpO24hPT0wOyl7Zm9yKDskNihuKTspbj1lLmlucHV0LmNoYXJDb2RlQXQoKytlLnBvc2l0aW9uKTtpZihuPT09MzUpe2RvIG49ZS5pbnB1dC5jaGFyQ29kZUF0KCsrZS5wb3NpdGlvbik7d2hpbGUobiE9PTAmJiFYMihuKSk7YnJlYWt9aWYoWDIobikpYnJlYWs7Zm9yKHI9ZS5wb3NpdGlvbjtuIT09MCYmIVBvKG4pOyluPWUuaW5wdXQuY2hhckNvZGVBdCgrK2UucG9zaXRpb24pO2kucHVzaChlLmlucHV0LnNsaWNlKHIsZS5wb3NpdGlvbikpfW4hPT0wJiZfYmUoZSksRTQuY2FsbChoSHQsYSk/aEh0W2FdKGUsYSxpKTp3b2UoZSwndW5rbm93biBkb2N1bWVudCBkaXJlY3RpdmUgIicrYSsnIicpfWlmKG1pKGUsITAsLTEpLGUubGluZUluZGVudD09PTAmJmUuaW5wdXQuY2hhckNvZGVBdChlLnBvc2l0aW9uKT09PTQ1JiZlLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbisxKT09PTQ1JiZlLmlucHV0LmNoYXJDb2RlQXQoZS5wb3NpdGlvbisyKT09PTQ1PyhlLnBvc2l0aW9uKz0zLG1pKGUsITAsLTEpKTpvJiZFdChlLCJkaXJlY3RpdmVzIGVuZCBtYXJrIGlzIGV4cGVjdGVkIiksSjcoZSxlLmxpbmVJbmRlbnQtMSx5b2UsITEsITApLG1pKGUsITAsLTEpLGUuY2hlY2tMaW5lQnJlYWtzJiZzdWEudGVzdChlLmlucHV0LnNsaWNlKHQsZS5wb3NpdGlvbikpJiZ3b2UoZSwibm9uLUFTQ0lJIGxpbmUgYnJlYWtzIGFyZSBpbnRlcnByZXRlZCBhcyBjb250ZW50IiksZS5kb2N1bWVudHMucHVzaChlLnJlc3VsdCksZS5wb3NpdGlvbj09PWUubGluZVN0YXJ0JiZNb2UoZSkpe2UuaW5wdXQuY2hhckNvZGVBdChlLnBvc2l0aW9uKT09PTQ2JiYoZS5wb3NpdGlvbis9MyxtaShlLCEwLC0xKSk7cmV0dXJufWlmKGUucG9zaXRpb248ZS5sZW5ndGgtMSlFdChlLCJlbmQgb2YgdGhlIHN0cmVhbSBvciBhIGRvY3VtZW50IHNlcGFyYXRvciBpcyBleHBlY3RlZCIpO2Vsc2UgcmV0dXJufWZ1bmN0aW9uIHhIdChlLHQpe2U9U3RyaW5nKGUpLHQ9dHx8e30sZS5sZW5ndGghPT0wJiYoZS5jaGFyQ29kZUF0KGUubGVuZ3RoLTEpIT09MTAmJmUuY2hhckNvZGVBdChlLmxlbmd0aC0xKSE9PTEzJiYoZSs9YApgKSxlLmNoYXJDb2RlQXQoMCk9PT02NTI3OSYmKGU9ZS5zbGljZSgxKSkpO3ZhciByPW5ldyBwdWEoZSx0KSxhPWUuaW5kZXhPZigiXDAiKTtmb3IoYSE9PS0xJiYoci5wb3NpdGlvbj1hLEV0KHIsIm51bGwgYnl0ZSBpcyBub3QgYWxsb3dlZCBpbiBpbnB1dCIpKSxyLmlucHV0Kz0iXDAiO3IuaW5wdXQuY2hhckNvZGVBdChyLnBvc2l0aW9uKT09PTMyOylyLmxpbmVJbmRlbnQrPTEsci5wb3NpdGlvbis9MTtmb3IoO3IucG9zaXRpb248ci5sZW5ndGgtMTspa3VhKHIpO3JldHVybiByLmRvY3VtZW50c31mdW5jdGlvbiBiSHQoZSx0LHIpe3QhPT1udWxsJiZ0eXBlb2YgdD09Im9iamVjdCImJnR5cGVvZiByPiJ1IiYmKHI9dCx0PW51bGwpO3ZhciBhPXhIdChlLHIpO2lmKHR5cGVvZiB0IT0iZnVuY3Rpb24iKXJldHVybiBhO2Zvcih2YXIgaT0wLG89YS5sZW5ndGg7aTxvO2krPTEpdChhW2ldKX1mdW5jdGlvbiB2SHQoZSx0KXt2YXIgcj14SHQoZSx0KTtpZihyLmxlbmd0aCE9PTApe2lmKHIubGVuZ3RoPT09MSlyZXR1cm4gclswXTt0aHJvdyBuZXcgdEh0KCJleHBlY3RlZCBhIHNpbmdsZSBkb2N1bWVudCBpbiB0aGUgc3RyZWFtLCBidXQgZm91bmQgbW9yZSIpfX1mdW5jdGlvbiBTdWEoZSx0LHIpe3JldHVybiB0eXBlb2YgdD09Im9iamVjdCImJnQhPT1udWxsJiZ0eXBlb2Ygcj4idSImJihyPXQsdD1udWxsKSxiSHQoZSx0LHBjLmV4dGVuZCh7c2NoZW1hOnJIdH0scikpfWZ1bmN0aW9uIHp1YShlLHQpe3JldHVybiB2SHQoZSxwYy5leHRlbmQoe3NjaGVtYTpySHR9LHQpKX1weS5leHBvcnRzLmxvYWRBbGw9Ykh0LHB5LmV4cG9ydHMubG9hZD12SHQscHkuZXhwb3J0cy5zYWZlTG9hZEFsbD1TdWEscHkuZXhwb3J0cy5zYWZlTG9hZD16dWE7dmFyIFA2fSk7dmFyIGpIdD1YZSgoSDQxLEViZSk9PnsidXNlIHN0cmljdCI7dmFyIGh5PUQ2KCksbXk9WTcoKSxDdWE9ZnkoKSxfdWE9WDcoKSx3SHQ9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZyxNSHQ9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSxUdWE9OSxneT0xMCxMdWE9MTMsRHVhPTMyLEF1YT0zMyxFdWE9MzQsa0h0PTM1LCR1YT0zNyxQdWE9MzgsSXVhPTM5LE51YT00MixTSHQ9NDQsRnVhPTQ1LHpIdD01OCxPdWE9NjEsUnVhPTYyLEJ1YT02MyxIdWE9NjQsQ0h0PTkxLF9IdD05MyxxdWE9OTYsVEh0PTEyMyxqdWE9MTI0LExIdD0xMjUsVTE9e307VTFbMF09IlxcMCIsVTFbN109IlxcYSIsVTFbOF09IlxcYiIsVTFbOV09IlxcdCIsVTFbMTBdPSJcXG4iLFUxWzExXT0iXFx2IixVMVsxMl09IlxcZiIsVTFbMTNdPSJcXHIiLFUxWzI3XT0iXFxlIixVMVszNF09J1xcIicsVTFbOTJdPSJcXFxcIixVMVsxMzNdPSJcXE4iLFUxWzE2MF09IlxcXyIsVTFbODIzMl09IlxcTCIsVTFbODIzM109IlxcUCI7dmFyIFZ1YT1bInkiLCJZIiwieWVzIiwiWWVzIiwiWUVTIiwib24iLCJPbiIsIk9OIiwibiIsIk4iLCJubyIsIk5vIiwiTk8iLCJvZmYiLCJPZmYiLCJPRkYiXTtmdW5jdGlvbiBVdWEoZSx0KXt2YXIgcixhLGksbyxuLHMsYztpZih0PT09bnVsbClyZXR1cm57fTtmb3Iocj17fSxhPU9iamVjdC5rZXlzKHQpLGk9MCxvPWEubGVuZ3RoO2k8bztpKz0xKW49YVtpXSxzPVN0cmluZyh0W25dKSxuLnNsaWNlKDAsMik9PT0iISEiJiYobj0idGFnOnlhbWwub3JnLDIwMDI6IituLnNsaWNlKDIpKSxjPWUuY29tcGlsZWRUeXBlTWFwLmZhbGxiYWNrW25dLGMmJk1IdC5jYWxsKGMuc3R5bGVBbGlhc2VzLHMpJiYocz1jLnN0eWxlQWxpYXNlc1tzXSkscltuXT1zO3JldHVybiByfWZ1bmN0aW9uIERIdChlKXt2YXIgdCxyLGE7aWYodD1lLnRvU3RyaW5nKDE2KS50b1VwcGVyQ2FzZSgpLGU8PTI1NSlyPSJ4IixhPTI7ZWxzZSBpZihlPD02NTUzNSlyPSJ1IixhPTQ7ZWxzZSBpZihlPD00Mjk0OTY3Mjk1KXI9IlUiLGE9ODtlbHNlIHRocm93IG5ldyBteSgiY29kZSBwb2ludCB3aXRoaW4gYSBzdHJpbmcgbWF5IG5vdCBiZSBncmVhdGVyIHRoYW4gMHhGRkZGRkZGRiIpO3JldHVybiJcXCIrcitoeS5yZXBlYXQoIjAiLGEtdC5sZW5ndGgpK3R9ZnVuY3Rpb24gV3VhKGUpe3RoaXMuc2NoZW1hPWUuc2NoZW1hfHxDdWEsdGhpcy5pbmRlbnQ9TWF0aC5tYXgoMSxlLmluZGVudHx8MiksdGhpcy5ub0FycmF5SW5kZW50PWUubm9BcnJheUluZGVudHx8ITEsdGhpcy5za2lwSW52YWxpZD1lLnNraXBJbnZhbGlkfHwhMSx0aGlzLmZsb3dMZXZlbD1oeS5pc05vdGhpbmcoZS5mbG93TGV2ZWwpPy0xOmUuZmxvd0xldmVsLHRoaXMuc3R5bGVNYXA9VXVhKHRoaXMuc2NoZW1hLGUuc3R5bGVzfHxudWxsKSx0aGlzLnNvcnRLZXlzPWUuc29ydEtleXN8fCExLHRoaXMubGluZVdpZHRoPWUubGluZVdpZHRofHw4MCx0aGlzLm5vUmVmcz1lLm5vUmVmc3x8ITEsdGhpcy5ub0NvbXBhdE1vZGU9ZS5ub0NvbXBhdE1vZGV8fCExLHRoaXMuY29uZGVuc2VGbG93PWUuY29uZGVuc2VGbG93fHwhMSx0aGlzLmltcGxpY2l0VHlwZXM9dGhpcy5zY2hlbWEuY29tcGlsZWRJbXBsaWNpdCx0aGlzLmV4cGxpY2l0VHlwZXM9dGhpcy5zY2hlbWEuY29tcGlsZWRFeHBsaWNpdCx0aGlzLnRhZz1udWxsLHRoaXMucmVzdWx0PSIiLHRoaXMuZHVwbGljYXRlcz1bXSx0aGlzLnVzZWREdXBsaWNhdGVzPW51bGx9ZnVuY3Rpb24gQUh0KGUsdCl7Zm9yKHZhciByPWh5LnJlcGVhdCgiICIsdCksYT0wLGk9LTEsbz0iIixuLHM9ZS5sZW5ndGg7YTxzOylpPWUuaW5kZXhPZihgCmAsYSksaT09PS0xPyhuPWUuc2xpY2UoYSksYT1zKToobj1lLnNsaWNlKGEsaSsxKSxhPWkrMSksbi5sZW5ndGgmJm4hPT1gCmAmJihvKz1yKSxvKz1uO3JldHVybiBvfWZ1bmN0aW9uIExiZShlLHQpe3JldHVybmAKYCtoeS5yZXBlYXQoIiAiLGUuaW5kZW50KnQpfWZ1bmN0aW9uIEd1YShlLHQpe3ZhciByLGEsaTtmb3Iocj0wLGE9ZS5pbXBsaWNpdFR5cGVzLmxlbmd0aDtyPGE7cis9MSlpZihpPWUuaW1wbGljaXRUeXBlc1tyXSxpLnJlc29sdmUodCkpcmV0dXJuITA7cmV0dXJuITF9ZnVuY3Rpb24gRGJlKGUpe3JldHVybiBlPT09RHVhfHxlPT09VHVhfWZ1bmN0aW9uIGU5KGUpe3JldHVybiAzMjw9ZSYmZTw9MTI2fHwxNjE8PWUmJmU8PTU1Mjk1JiZlIT09ODIzMiYmZSE9PTgyMzN8fDU3MzQ0PD1lJiZlPD02NTUzMyYmZSE9PTY1Mjc5fHw2NTUzNjw9ZSYmZTw9MTExNDExMX1mdW5jdGlvbiBZdWEoZSl7cmV0dXJuIGU5KGUpJiYhRGJlKGUpJiZlIT09NjUyNzkmJmUhPT1MdWEmJmUhPT1neX1mdW5jdGlvbiBFSHQoZSx0KXtyZXR1cm4gZTkoZSkmJmUhPT02NTI3OSYmZSE9PVNIdCYmZSE9PUNIdCYmZSE9PV9IdCYmZSE9PVRIdCYmZSE9PUxIdCYmZSE9PXpIdCYmKGUhPT1rSHR8fHQmJll1YSh0KSl9ZnVuY3Rpb24gWnVhKGUpe3JldHVybiBlOShlKSYmZSE9PTY1Mjc5JiYhRGJlKGUpJiZlIT09RnVhJiZlIT09QnVhJiZlIT09ekh0JiZlIT09U0h0JiZlIT09Q0h0JiZlIT09X0h0JiZlIT09VEh0JiZlIT09TEh0JiZlIT09a0h0JiZlIT09UHVhJiZlIT09TnVhJiZlIT09QXVhJiZlIT09anVhJiZlIT09T3VhJiZlIT09UnVhJiZlIT09SXVhJiZlIT09RXVhJiZlIT09JHVhJiZlIT09SHVhJiZlIT09cXVhfWZ1bmN0aW9uICRIdChlKXt2YXIgdD0vXlxuKiAvO3JldHVybiB0LnRlc3QoZSl9dmFyIFBIdD0xLElIdD0yLE5IdD0zLEZIdD00LGtvZT01O2Z1bmN0aW9uIFh1YShlLHQscixhLGkpe3ZhciBvLG4scyxjPSExLGQ9ITEsZj1hIT09LTEsdT0tMSxwPVp1YShlLmNoYXJDb2RlQXQoMCkpJiYhRGJlKGUuY2hhckNvZGVBdChlLmxlbmd0aC0xKSk7aWYodClmb3Iobz0wO288ZS5sZW5ndGg7bysrKXtpZihuPWUuY2hhckNvZGVBdChvKSwhZTkobikpcmV0dXJuIGtvZTtzPW8+MD9lLmNoYXJDb2RlQXQoby0xKTpudWxsLHA9cCYmRUh0KG4scyl9ZWxzZXtmb3Iobz0wO288ZS5sZW5ndGg7bysrKXtpZihuPWUuY2hhckNvZGVBdChvKSxuPT09Z3kpYz0hMCxmJiYoZD1kfHxvLXUtMT5hJiZlW3UrMV0hPT0iICIsdT1vKTtlbHNlIGlmKCFlOShuKSlyZXR1cm4ga29lO3M9bz4wP2UuY2hhckNvZGVBdChvLTEpOm51bGwscD1wJiZFSHQobixzKX1kPWR8fGYmJm8tdS0xPmEmJmVbdSsxXSE9PSIgIn1yZXR1cm4hYyYmIWQ/cCYmIWkoZSk/UEh0OklIdDpyPjkmJiRIdChlKT9rb2U6ZD9GSHQ6Tkh0fWZ1bmN0aW9uIFF1YShlLHQscixhKXtlLmR1bXA9KGZ1bmN0aW9uKCl7aWYodC5sZW5ndGg9PT0wKXJldHVybiInJyI7aWYoIWUubm9Db21wYXRNb2RlJiZWdWEuaW5kZXhPZih0KSE9PS0xKXJldHVybiInIit0KyInIjt2YXIgaT1lLmluZGVudCpNYXRoLm1heCgxLHIpLG89ZS5saW5lV2lkdGg9PT0tMT8tMTpNYXRoLm1heChNYXRoLm1pbihlLmxpbmVXaWR0aCw0MCksZS5saW5lV2lkdGgtaSksbj1hfHxlLmZsb3dMZXZlbD4tMSYmcj49ZS5mbG93TGV2ZWw7ZnVuY3Rpb24gcyhjKXtyZXR1cm4gR3VhKGUsYyl9c3dpdGNoKFh1YSh0LG4sZS5pbmRlbnQsbyxzKSl7Y2FzZSBQSHQ6cmV0dXJuIHQ7Y2FzZSBJSHQ6cmV0dXJuIiciK3QucmVwbGFjZSgvJy9nLCInJyIpKyInIjtjYXNlIE5IdDpyZXR1cm4ifCIrT0h0KHQsZS5pbmRlbnQpK1JIdChBSHQodCxpKSk7Y2FzZSBGSHQ6cmV0dXJuIj4iK09IdCh0LGUuaW5kZW50KStSSHQoQUh0KEt1YSh0LG8pLGkpKTtjYXNlIGtvZTpyZXR1cm4nIicrSnVhKHQsbykrJyInO2RlZmF1bHQ6dGhyb3cgbmV3IG15KCJpbXBvc3NpYmxlIGVycm9yOiBpbnZhbGlkIHNjYWxhciBzdHlsZSIpfX0pKCl9ZnVuY3Rpb24gT0h0KGUsdCl7dmFyIHI9JEh0KGUpP1N0cmluZyh0KToiIixhPWVbZS5sZW5ndGgtMV09PT1gCmAsaT1hJiYoZVtlLmxlbmd0aC0yXT09PWAKYHx8ZT09PWAKYCksbz1pPyIrIjphPyIiOiItIjtyZXR1cm4gcitvK2AKYH1mdW5jdGlvbiBSSHQoZSl7cmV0dXJuIGVbZS5sZW5ndGgtMV09PT1gCmA/ZS5zbGljZSgwLC0xKTplfWZ1bmN0aW9uIEt1YShlLHQpe2Zvcih2YXIgcj0vKFxuKykoW15cbl0qKS9nLGE9KGZ1bmN0aW9uKCl7dmFyIGQ9ZS5pbmRleE9mKGAKYCk7cmV0dXJuIGQ9ZCE9PS0xP2Q6ZS5sZW5ndGgsci5sYXN0SW5kZXg9ZCxCSHQoZS5zbGljZSgwLGQpLHQpfSkoKSxpPWVbMF09PT1gCmB8fGVbMF09PT0iICIsbyxuO249ci5leGVjKGUpOyl7dmFyIHM9blsxXSxjPW5bMl07bz1jWzBdPT09IiAiLGErPXMrKCFpJiYhbyYmYyE9PSIiP2AKYDoiIikrQkh0KGMsdCksaT1vfXJldHVybiBhfWZ1bmN0aW9uIEJIdChlLHQpe2lmKGU9PT0iInx8ZVswXT09PSIgIilyZXR1cm4gZTtmb3IodmFyIHI9LyBbXiBdL2csYSxpPTAsbyxuPTAscz0wLGM9IiI7YT1yLmV4ZWMoZSk7KXM9YS5pbmRleCxzLWk+dCYmKG89bj5pP246cyxjKz1gCmArZS5zbGljZShpLG8pLGk9bysxKSxuPXM7cmV0dXJuIGMrPWAKYCxlLmxlbmd0aC1pPnQmJm4+aT9jKz1lLnNsaWNlKGksbikrYApgK2Uuc2xpY2UobisxKTpjKz1lLnNsaWNlKGkpLGMuc2xpY2UoMSl9ZnVuY3Rpb24gSnVhKGUpe2Zvcih2YXIgdD0iIixyLGEsaSxvPTA7bzxlLmxlbmd0aDtvKyspe2lmKHI9ZS5jaGFyQ29kZUF0KG8pLHI+PTU1Mjk2JiZyPD01NjMxOSYmKGE9ZS5jaGFyQ29kZUF0KG8rMSksYT49NTYzMjAmJmE8PTU3MzQzKSl7dCs9REh0KChyLTU1Mjk2KSoxMDI0K2EtNTYzMjArNjU1MzYpLG8rKztjb250aW51ZX1pPVUxW3JdLHQrPSFpJiZlOShyKT9lW29dOml8fERIdChyKX1yZXR1cm4gdH1mdW5jdGlvbiBlZmEoZSx0LHIpe3ZhciBhPSIiLGk9ZS50YWcsbyxuO2ZvcihvPTAsbj1yLmxlbmd0aDtvPG47bys9MSlJNihlLHQscltvXSwhMSwhMSkmJihvIT09MCYmKGErPSIsIisoZS5jb25kZW5zZUZsb3c/IiI6IiAiKSksYSs9ZS5kdW1wKTtlLnRhZz1pLGUuZHVtcD0iWyIrYSsiXSJ9ZnVuY3Rpb24gdGZhKGUsdCxyLGEpe3ZhciBpPSIiLG89ZS50YWcsbixzO2ZvcihuPTAscz1yLmxlbmd0aDtuPHM7bis9MSlJNihlLHQrMSxyW25dLCEwLCEwKSYmKCghYXx8biE9PTApJiYoaSs9TGJlKGUsdCkpLGUuZHVtcCYmZ3k9PT1lLmR1bXAuY2hhckNvZGVBdCgwKT9pKz0iLSI6aSs9Ii0gIixpKz1lLmR1bXApO2UudGFnPW8sZS5kdW1wPWl8fCJbXSJ9ZnVuY3Rpb24gcmZhKGUsdCxyKXt2YXIgYT0iIixpPWUudGFnLG89T2JqZWN0LmtleXMociksbixzLGMsZCxmO2ZvcihuPTAscz1vLmxlbmd0aDtuPHM7bis9MSlmPSIiLG4hPT0wJiYoZis9IiwgIiksZS5jb25kZW5zZUZsb3cmJihmKz0nIicpLGM9b1tuXSxkPXJbY10sSTYoZSx0LGMsITEsITEpJiYoZS5kdW1wLmxlbmd0aD4xMDI0JiYoZis9Ij8gIiksZis9ZS5kdW1wKyhlLmNvbmRlbnNlRmxvdz8nIic6IiIpKyI6IisoZS5jb25kZW5zZUZsb3c/IiI6IiAiKSxJNihlLHQsZCwhMSwhMSkmJihmKz1lLmR1bXAsYSs9ZikpO2UudGFnPWksZS5kdW1wPSJ7IithKyJ9In1mdW5jdGlvbiBhZmEoZSx0LHIsYSl7dmFyIGk9IiIsbz1lLnRhZyxuPU9iamVjdC5rZXlzKHIpLHMsYyxkLGYsdSxwO2lmKGUuc29ydEtleXM9PT0hMCluLnNvcnQoKTtlbHNlIGlmKHR5cGVvZiBlLnNvcnRLZXlzPT0iZnVuY3Rpb24iKW4uc29ydChlLnNvcnRLZXlzKTtlbHNlIGlmKGUuc29ydEtleXMpdGhyb3cgbmV3IG15KCJzb3J0S2V5cyBtdXN0IGJlIGEgYm9vbGVhbiBvciBhIGZ1bmN0aW9uIik7Zm9yKHM9MCxjPW4ubGVuZ3RoO3M8YztzKz0xKXA9IiIsKCFhfHxzIT09MCkmJihwKz1MYmUoZSx0KSksZD1uW3NdLGY9cltkXSxJNihlLHQrMSxkLCEwLCEwLCEwKSYmKHU9ZS50YWchPT1udWxsJiZlLnRhZyE9PSI/Inx8ZS5kdW1wJiZlLmR1bXAubGVuZ3RoPjEwMjQsdSYmKGUuZHVtcCYmZ3k9PT1lLmR1bXAuY2hhckNvZGVBdCgwKT9wKz0iPyI6cCs9Ij8gIikscCs9ZS5kdW1wLHUmJihwKz1MYmUoZSx0KSksSTYoZSx0KzEsZiwhMCx1KSYmKGUuZHVtcCYmZ3k9PT1lLmR1bXAuY2hhckNvZGVBdCgwKT9wKz0iOiI6cCs9IjogIixwKz1lLmR1bXAsaSs9cCkpO2UudGFnPW8sZS5kdW1wPWl8fCJ7fSJ9ZnVuY3Rpb24gSEh0KGUsdCxyKXt2YXIgYSxpLG8sbixzLGM7Zm9yKGk9cj9lLmV4cGxpY2l0VHlwZXM6ZS5pbXBsaWNpdFR5cGVzLG89MCxuPWkubGVuZ3RoO288bjtvKz0xKWlmKHM9aVtvXSwocy5pbnN0YW5jZU9mfHxzLnByZWRpY2F0ZSkmJighcy5pbnN0YW5jZU9mfHx0eXBlb2YgdD09Im9iamVjdCImJnQgaW5zdGFuY2VvZiBzLmluc3RhbmNlT2YpJiYoIXMucHJlZGljYXRlfHxzLnByZWRpY2F0ZSh0KSkpe2lmKGUudGFnPXI/cy50YWc6Ij8iLHMucmVwcmVzZW50KXtpZihjPWUuc3R5bGVNYXBbcy50YWddfHxzLmRlZmF1bHRTdHlsZSx3SHQuY2FsbChzLnJlcHJlc2VudCk9PT0iW29iamVjdCBGdW5jdGlvbl0iKWE9cy5yZXByZXNlbnQodCxjKTtlbHNlIGlmKE1IdC5jYWxsKHMucmVwcmVzZW50LGMpKWE9cy5yZXByZXNlbnRbY10odCxjKTtlbHNlIHRocm93IG5ldyBteSgiITwiK3MudGFnKyc+IHRhZyByZXNvbHZlciBhY2NlcHRzIG5vdCAiJytjKyciIHN0eWxlJyk7ZS5kdW1wPWF9cmV0dXJuITB9cmV0dXJuITF9ZnVuY3Rpb24gSTYoZSx0LHIsYSxpLG8pe2UudGFnPW51bGwsZS5kdW1wPXIsSEh0KGUsciwhMSl8fEhIdChlLHIsITApO3ZhciBuPXdIdC5jYWxsKGUuZHVtcCk7YSYmKGE9ZS5mbG93TGV2ZWw8MHx8ZS5mbG93TGV2ZWw+dCk7dmFyIHM9bj09PSJbb2JqZWN0IE9iamVjdF0ifHxuPT09IltvYmplY3QgQXJyYXldIixjLGQ7aWYocyYmKGM9ZS5kdXBsaWNhdGVzLmluZGV4T2YociksZD1jIT09LTEpLChlLnRhZyE9PW51bGwmJmUudGFnIT09Ij8ifHxkfHxlLmluZGVudCE9PTImJnQ+MCkmJihpPSExKSxkJiZlLnVzZWREdXBsaWNhdGVzW2NdKWUuZHVtcD0iKnJlZl8iK2M7ZWxzZXtpZihzJiZkJiYhZS51c2VkRHVwbGljYXRlc1tjXSYmKGUudXNlZER1cGxpY2F0ZXNbY109ITApLG49PT0iW29iamVjdCBPYmplY3RdIilhJiZPYmplY3Qua2V5cyhlLmR1bXApLmxlbmd0aCE9PTA/KGFmYShlLHQsZS5kdW1wLGkpLGQmJihlLmR1bXA9IiZyZWZfIitjK2UuZHVtcCkpOihyZmEoZSx0LGUuZHVtcCksZCYmKGUuZHVtcD0iJnJlZl8iK2MrIiAiK2UuZHVtcCkpO2Vsc2UgaWYobj09PSJbb2JqZWN0IEFycmF5XSIpe3ZhciBmPWUubm9BcnJheUluZGVudCYmdD4wP3QtMTp0O2EmJmUuZHVtcC5sZW5ndGghPT0wPyh0ZmEoZSxmLGUuZHVtcCxpKSxkJiYoZS5kdW1wPSImcmVmXyIrYytlLmR1bXApKTooZWZhKGUsZixlLmR1bXApLGQmJihlLmR1bXA9IiZyZWZfIitjKyIgIitlLmR1bXApKX1lbHNlIGlmKG49PT0iW29iamVjdCBTdHJpbmddIillLnRhZyE9PSI/IiYmUXVhKGUsZS5kdW1wLHQsbyk7ZWxzZXtpZihlLnNraXBJbnZhbGlkKXJldHVybiExO3Rocm93IG5ldyBteSgidW5hY2NlcHRhYmxlIGtpbmQgb2YgYW4gb2JqZWN0IHRvIGR1bXAgIituKX1lLnRhZyE9PW51bGwmJmUudGFnIT09Ij8iJiYoZS5kdW1wPSIhPCIrZS50YWcrIj4gIitlLmR1bXApfXJldHVybiEwfWZ1bmN0aW9uIGlmYShlLHQpe3ZhciByPVtdLGE9W10saSxvO2ZvcihBYmUoZSxyLGEpLGk9MCxvPWEubGVuZ3RoO2k8bztpKz0xKXQuZHVwbGljYXRlcy5wdXNoKHJbYVtpXV0pO3QudXNlZER1cGxpY2F0ZXM9bmV3IEFycmF5KG8pfWZ1bmN0aW9uIEFiZShlLHQscil7dmFyIGEsaSxvO2lmKGUhPT1udWxsJiZ0eXBlb2YgZT09Im9iamVjdCIpaWYoaT10LmluZGV4T2YoZSksaSE9PS0xKXIuaW5kZXhPZihpKT09PS0xJiZyLnB1c2goaSk7ZWxzZSBpZih0LnB1c2goZSksQXJyYXkuaXNBcnJheShlKSlmb3IoaT0wLG89ZS5sZW5ndGg7aTxvO2krPTEpQWJlKGVbaV0sdCxyKTtlbHNlIGZvcihhPU9iamVjdC5rZXlzKGUpLGk9MCxvPWEubGVuZ3RoO2k8bztpKz0xKUFiZShlW2FbaV1dLHQscil9ZnVuY3Rpb24gcUh0KGUsdCl7dD10fHx7fTt2YXIgcj1uZXcgV3VhKHQpO3JldHVybiByLm5vUmVmc3x8aWZhKGUsciksSTYociwwLGUsITAsITApP3IuZHVtcCtgCmA6IiJ9ZnVuY3Rpb24gb2ZhKGUsdCl7cmV0dXJuIHFIdChlLGh5LmV4dGVuZCh7c2NoZW1hOl91YX0sdCkpfUViZS5leHBvcnRzLmR1bXA9cUh0LEViZS5leHBvcnRzLnNhZmVEdW1wPW9mYX0pO3ZhciBVSHQ9WGUoKHE0MSxXYSk9PnsidXNlIHN0cmljdCI7dmFyIFNvZT15SHQoKSxWSHQ9akh0KCk7ZnVuY3Rpb24gem9lKGUpe3JldHVybiBmdW5jdGlvbigpe3Rocm93IG5ldyBFcnJvcigiRnVuY3Rpb24gIitlKyIgaXMgZGVwcmVjYXRlZCBhbmQgY2Fubm90IGJlIHVzZWQuIil9fVdhLmV4cG9ydHMuVHlwZT1OaSgpLFdhLmV4cG9ydHMuU2NoZW1hPUE2KCksV2EuZXhwb3J0cy5GQUlMU0FGRV9TQ0hFTUE9eG9lKCksV2EuZXhwb3J0cy5KU09OX1NDSEVNQT1rYmUoKSxXYS5leHBvcnRzLkNPUkVfU0NIRU1BPVNiZSgpLFdhLmV4cG9ydHMuREVGQVVMVF9TQUZFX1NDSEVNQT1YNygpLFdhLmV4cG9ydHMuREVGQVVMVF9GVUxMX1NDSEVNQT1meSgpLFdhLmV4cG9ydHMubG9hZD1Tb2UubG9hZCxXYS5leHBvcnRzLmxvYWRBbGw9U29lLmxvYWRBbGwsV2EuZXhwb3J0cy5zYWZlTG9hZD1Tb2Uuc2FmZUxvYWQsV2EuZXhwb3J0cy5zYWZlTG9hZEFsbD1Tb2Uuc2FmZUxvYWRBbGwsV2EuZXhwb3J0cy5kdW1wPVZIdC5kdW1wLFdhLmV4cG9ydHMuc2FmZUR1bXA9Vkh0LnNhZmVEdW1wLFdhLmV4cG9ydHMuWUFNTEV4Y2VwdGlvbj1ZNygpLFdhLmV4cG9ydHMuTUlOSU1BTF9TQ0hFTUE9eG9lKCksV2EuZXhwb3J0cy5TQUZFX1NDSEVNQT1YNygpLFdhLmV4cG9ydHMuREVGQVVMVF9TQ0hFTUE9ZnkoKSxXYS5leHBvcnRzLnNjYW49em9lKCJzY2FuIiksV2EuZXhwb3J0cy5wYXJzZT16b2UoInBhcnNlIiksV2EuZXhwb3J0cy5jb21wb3NlPXpvZSgiY29tcG9zZSIpLFdhLmV4cG9ydHMuYWRkQ29uc3RydWN0b3I9em9lKCJhZGRDb25zdHJ1Y3RvciIpfSk7dmFyIEdIdD1YZSgoajQxLFdIdCk9PnsidXNlIHN0cmljdCI7dmFyIG5mYT1VSHQoKTtXSHQuZXhwb3J0cz1uZmF9KTt2YXIgWUh0PVhlKFEyPT57InVzZSBzdHJpY3QiO3ZhciBzZmE9UTImJlEyLl9fY3JlYXRlQmluZGluZ3x8KE9iamVjdC5jcmVhdGU/KGZ1bmN0aW9uKGUsdCxyLGEpe2E9PT12b2lkIDAmJihhPXIpLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLGEse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRbcl19fSl9KTooZnVuY3Rpb24oZSx0LHIsYSl7YT09PXZvaWQgMCYmKGE9ciksZVthXT10W3JdfSkpLGxmYT1RMiYmUTIuX19zZXRNb2R1bGVEZWZhdWx0fHwoT2JqZWN0LmNyZWF0ZT8oZnVuY3Rpb24oZSx0KXtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiZGVmYXVsdCIse2VudW1lcmFibGU6ITAsdmFsdWU6dH0pfSk6ZnVuY3Rpb24oZSx0KXtlLmRlZmF1bHQ9dH0pLGNmYT1RMiYmUTIuX19pbXBvcnRTdGFyfHxmdW5jdGlvbihlKXtpZihlJiZlLl9fZXNNb2R1bGUpcmV0dXJuIGU7dmFyIHQ9e307aWYoZSE9bnVsbClmb3IodmFyIHIgaW4gZSlyIT09ImRlZmF1bHQiJiZPYmplY3QuaGFzT3duUHJvcGVydHkuY2FsbChlLHIpJiZzZmEodCxlLHIpO3JldHVybiBsZmEodCxlKSx0fTtPYmplY3QuZGVmaW5lUHJvcGVydHkoUTIsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLFEyLmpzWWFtbD12b2lkIDA7dmFyIGRmYT1jZmEoR0h0KCkpO1EyLmpzWWFtbD1kZmF9KTt2YXIgWEh0PVhlKE5uPT57InVzZSBzdHJpY3QiO3ZhciB1ZmE9Tm4mJk5uLl9fY3JlYXRlQmluZGluZ3x8KE9iamVjdC5jcmVhdGU/KGZ1bmN0aW9uKGUsdCxyLGEpe2E9PT12b2lkIDAmJihhPXIpLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLGEse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRbcl19fSl9KTooZnVuY3Rpb24oZSx0LHIsYSl7YT09PXZvaWQgMCYmKGE9ciksZVthXT10W3JdfSkpLGZmYT1ObiYmTm4uX19zZXRNb2R1bGVEZWZhdWx0fHwoT2JqZWN0LmNyZWF0ZT8oZnVuY3Rpb24oZSx0KXtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiZGVmYXVsdCIse2VudW1lcmFibGU6ITAsdmFsdWU6dH0pfSk6ZnVuY3Rpb24oZSx0KXtlLmRlZmF1bHQ9dH0pLHBmYT1ObiYmTm4uX19pbXBvcnRTdGFyfHxmdW5jdGlvbihlKXtpZihlJiZlLl9fZXNNb2R1bGUpcmV0dXJuIGU7dmFyIHQ9e307aWYoZSE9bnVsbClmb3IodmFyIHIgaW4gZSlyIT09ImRlZmF1bHQiJiZPYmplY3QuaGFzT3duUHJvcGVydHkuY2FsbChlLHIpJiZ1ZmEodCxlLHIpO3JldHVybiBmZmEodCxlKSx0fTtPYmplY3QuZGVmaW5lUHJvcGVydHkoTm4sIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLE5uLm9iamVjdFRvWWFtbFN0cmluZz1Obi55YW1sU3RyaW5nVG9PYmplY3Q9dm9pZCAwO3ZhciBaSHQ9cGZhKFlIdCgpKTtObi55YW1sU3RyaW5nVG9PYmplY3Q9YXN5bmMoZSx0PXt9KT0+Wkh0LmpzWWFtbC5zYWZlTG9hZChlKSxObi5vYmplY3RUb1lhbWxTdHJpbmc9YXN5bmMoZSx0PXt9KT0+Wkh0LmpzWWFtbC5zYWZlRHVtcChlKX0pO2Z1bmN0aW9uICRiZShlKXtpZihlKXRocm93IGV9dmFyIFFIdD1sKCgpPT57fSk7dmFyIG5xdD1YZSgoRzQxLG9xdCk9PnsidXNlIHN0cmljdCI7dmFyIENvZT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LEtIdD1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLEpIdD1PYmplY3QuZGVmaW5lUHJvcGVydHksZXF0PU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IsdHF0PWZ1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgQXJyYXkuaXNBcnJheT09ImZ1bmN0aW9uIj9BcnJheS5pc0FycmF5KHQpOktIdC5jYWxsKHQpPT09IltvYmplY3QgQXJyYXldIn0scnF0PWZ1bmN0aW9uKHQpe2lmKCF0fHxLSHQuY2FsbCh0KSE9PSJbb2JqZWN0IE9iamVjdF0iKXJldHVybiExO3ZhciByPUNvZS5jYWxsKHQsImNvbnN0cnVjdG9yIiksYT10LmNvbnN0cnVjdG9yJiZ0LmNvbnN0cnVjdG9yLnByb3RvdHlwZSYmQ29lLmNhbGwodC5jb25zdHJ1Y3Rvci5wcm90b3R5cGUsImlzUHJvdG90eXBlT2YiKTtpZih0LmNvbnN0cnVjdG9yJiYhciYmIWEpcmV0dXJuITE7dmFyIGk7Zm9yKGkgaW4gdCk7cmV0dXJuIHR5cGVvZiBpPiJ1Inx8Q29lLmNhbGwodCxpKX0sYXF0PWZ1bmN0aW9uKHQscil7Skh0JiZyLm5hbWU9PT0iX19wcm90b19fIj9KSHQodCxyLm5hbWUse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHZhbHVlOnIubmV3VmFsdWUsd3JpdGFibGU6ITB9KTp0W3IubmFtZV09ci5uZXdWYWx1ZX0saXF0PWZ1bmN0aW9uKHQscil7aWYocj09PSJfX3Byb3RvX18iKWlmKENvZS5jYWxsKHQscikpe2lmKGVxdClyZXR1cm4gZXF0KHQscikudmFsdWV9ZWxzZSByZXR1cm47cmV0dXJuIHRbcl19O29xdC5leHBvcnRzPWZ1bmN0aW9uIGUoKXt2YXIgdCxyLGEsaSxvLG4scz1hcmd1bWVudHNbMF0sYz0xLGQ9YXJndW1lbnRzLmxlbmd0aCxmPSExO2Zvcih0eXBlb2Ygcz09ImJvb2xlYW4iJiYoZj1zLHM9YXJndW1lbnRzWzFdfHx7fSxjPTIpLChzPT1udWxsfHx0eXBlb2YgcyE9Im9iamVjdCImJnR5cGVvZiBzIT0iZnVuY3Rpb24iKSYmKHM9e30pO2M8ZDsrK2MpaWYodD1hcmd1bWVudHNbY10sdCE9bnVsbClmb3IociBpbiB0KWE9aXF0KHMsciksaT1pcXQodCxyKSxzIT09aSYmKGYmJmkmJihycXQoaSl8fChvPXRxdChpKSkpPyhvPyhvPSExLG49YSYmdHF0KGEpP2E6W10pOm49YSYmcnF0KGEpP2E6e30sYXF0KHMse25hbWU6cixuZXdWYWx1ZTplKGYsbixpKX0pKTp0eXBlb2YgaTwidSImJmFxdChzLHtuYW1lOnIsbmV3VmFsdWU6aX0pKTtyZXR1cm4gc319KTt2YXIgUDQ9bCgoKT0+e30pO2Z1bmN0aW9uIHh5KGUpe2lmKHR5cGVvZiBlIT0ib2JqZWN0Inx8ZT09PW51bGwpcmV0dXJuITE7bGV0IHQ9T2JqZWN0LmdldFByb3RvdHlwZU9mKGUpO3JldHVybih0PT09bnVsbHx8dD09PU9iamVjdC5wcm90b3R5cGV8fE9iamVjdC5nZXRQcm90b3R5cGVPZih0KT09PW51bGwpJiYhKFN5bWJvbC50b1N0cmluZ1RhZyBpbiBlKSYmIShTeW1ib2wuaXRlcmF0b3IgaW4gZSl9dmFyIHNxdD1sKCgpPT57fSk7ZnVuY3Rpb24gUGJlKCl7bGV0IGU9W10sdD17cnVuOnIsdXNlOmF9O3JldHVybiB0O2Z1bmN0aW9uIHIoLi4uaSl7bGV0IG89LTEsbj1pLnBvcCgpO2lmKHR5cGVvZiBuIT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkIGZ1bmN0aW9uIGFzIGxhc3QgYXJndW1lbnQsIG5vdCAiK24pO3MobnVsbCwuLi5pKTtmdW5jdGlvbiBzKGMsLi4uZCl7bGV0IGY9ZVsrK29dLHU9LTE7aWYoYyl7bihjKTtyZXR1cm59Zm9yKDsrK3U8aS5sZW5ndGg7KShkW3VdPT09bnVsbHx8ZFt1XT09PXZvaWQgMCkmJihkW3VdPWlbdV0pO2k9ZCxmP2xxdChmLHMpKC4uLmQpOm4obnVsbCwuLi5kKX19ZnVuY3Rpb24gYShpKXtpZih0eXBlb2YgaSE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJFeHBlY3RlZCBgbWlkZGVsd2FyZWAgdG8gYmUgYSBmdW5jdGlvbiwgbm90ICIraSk7cmV0dXJuIGUucHVzaChpKSx0fX1mdW5jdGlvbiBscXQoZSx0KXtsZXQgcjtyZXR1cm4gYTtmdW5jdGlvbiBhKC4uLm4pe2xldCBzPWUubGVuZ3RoPm4ubGVuZ3RoLGM7cyYmbi5wdXNoKGkpO3RyeXtjPWUuYXBwbHkodGhpcyxuKX1jYXRjaChkKXtsZXQgZj1kO2lmKHMmJnIpdGhyb3cgZjtyZXR1cm4gaShmKX1zfHwoYyYmYy50aGVuJiZ0eXBlb2YgYy50aGVuPT0iZnVuY3Rpb24iP2MudGhlbihvLGkpOmMgaW5zdGFuY2VvZiBFcnJvcj9pKGMpOm8oYykpfWZ1bmN0aW9uIGkobiwuLi5zKXtyfHwocj0hMCx0KG4sLi4ucykpfWZ1bmN0aW9uIG8obil7aShudWxsLG4pfX12YXIgY3F0PWwoKCk9Pnt9KTt2YXIgZHF0PWwoKCk9PntjcXQoKX0pO2Z1bmN0aW9uIEk0KGUpe3JldHVybiFlfHx0eXBlb2YgZSE9Im9iamVjdCI/IiI6InBvc2l0aW9uImluIGV8fCJ0eXBlImluIGU/dXF0KGUucG9zaXRpb24pOiJzdGFydCJpbiBlfHwiZW5kImluIGU/dXF0KGUpOiJsaW5lImluIGV8fCJjb2x1bW4iaW4gZT9JYmUoZSk6IiJ9ZnVuY3Rpb24gSWJlKGUpe3JldHVybiBmcXQoZSYmZS5saW5lKSsiOiIrZnF0KGUmJmUuY29sdW1uKX1mdW5jdGlvbiB1cXQoZSl7cmV0dXJuIEliZShlJiZlLnN0YXJ0KSsiLSIrSWJlKGUmJmUuZW5kKX1mdW5jdGlvbiBmcXQoZSl7cmV0dXJuIGUmJnR5cGVvZiBlPT0ibnVtYmVyIj9lOjF9dmFyIHBxdD1sKCgpPT57fSk7dmFyIE5iZT1sKCgpPT57cHF0KCl9KTt2YXIgSmksaHF0PWwoKCk9PntOYmUoKTtKaT1jbGFzcyBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKHQscixhKXtzdXBlcigpLHR5cGVvZiByPT0ic3RyaW5nIiYmKGE9cixyPXZvaWQgMCk7bGV0IGk9IiIsbz17fSxuPSExO2lmKHImJigibGluZSJpbiByJiYiY29sdW1uImluIHI/bz17cGxhY2U6cn06InN0YXJ0ImluIHImJiJlbmQiaW4gcj9vPXtwbGFjZTpyfToidHlwZSJpbiByP289e2FuY2VzdG9yczpbcl0scGxhY2U6ci5wb3NpdGlvbn06bz17Li4ucn0pLHR5cGVvZiB0PT0ic3RyaW5nIj9pPXQ6IW8uY2F1c2UmJnQmJihuPSEwLGk9dC5tZXNzYWdlLG8uY2F1c2U9dCksIW8ucnVsZUlkJiYhby5zb3VyY2UmJnR5cGVvZiBhPT0ic3RyaW5nIil7bGV0IGM9YS5pbmRleE9mKCI6Iik7Yz09PS0xP28ucnVsZUlkPWE6KG8uc291cmNlPWEuc2xpY2UoMCxjKSxvLnJ1bGVJZD1hLnNsaWNlKGMrMSkpfWlmKCFvLnBsYWNlJiZvLmFuY2VzdG9ycyYmby5hbmNlc3RvcnMpe2xldCBjPW8uYW5jZXN0b3JzW28uYW5jZXN0b3JzLmxlbmd0aC0xXTtjJiYoby5wbGFjZT1jLnBvc2l0aW9uKX1sZXQgcz1vLnBsYWNlJiYic3RhcnQiaW4gby5wbGFjZT9vLnBsYWNlLnN0YXJ0Om8ucGxhY2U7dGhpcy5hbmNlc3RvcnM9by5hbmNlc3RvcnN8fHZvaWQgMCx0aGlzLmNhdXNlPW8uY2F1c2V8fHZvaWQgMCx0aGlzLmNvbHVtbj1zP3MuY29sdW1uOnZvaWQgMCx0aGlzLmZhdGFsPXZvaWQgMCx0aGlzLmZpbGU9IiIsdGhpcy5tZXNzYWdlPWksdGhpcy5saW5lPXM/cy5saW5lOnZvaWQgMCx0aGlzLm5hbWU9STQoby5wbGFjZSl8fCIxOjEiLHRoaXMucGxhY2U9by5wbGFjZXx8dm9pZCAwLHRoaXMucmVhc29uPXRoaXMubWVzc2FnZSx0aGlzLnJ1bGVJZD1vLnJ1bGVJZHx8dm9pZCAwLHRoaXMuc291cmNlPW8uc291cmNlfHx2b2lkIDAsdGhpcy5zdGFjaz1uJiZvLmNhdXNlJiZ0eXBlb2Ygby5jYXVzZS5zdGFjaz09InN0cmluZyI/by5jYXVzZS5zdGFjazoiIix0aGlzLmFjdHVhbD12b2lkIDAsdGhpcy5leHBlY3RlZD12b2lkIDAsdGhpcy5ub3RlPXZvaWQgMCx0aGlzLnVybD12b2lkIDB9fTtKaS5wcm90b3R5cGUuZmlsZT0iIixKaS5wcm90b3R5cGUubmFtZT0iIixKaS5wcm90b3R5cGUucmVhc29uPSIiLEppLnByb3RvdHlwZS5tZXNzYWdlPSIiLEppLnByb3RvdHlwZS5zdGFjaz0iIixKaS5wcm90b3R5cGUuY29sdW1uPXZvaWQgMCxKaS5wcm90b3R5cGUubGluZT12b2lkIDAsSmkucHJvdG90eXBlLmFuY2VzdG9ycz12b2lkIDAsSmkucHJvdG90eXBlLmNhdXNlPXZvaWQgMCxKaS5wcm90b3R5cGUuZmF0YWw9dm9pZCAwLEppLnByb3RvdHlwZS5wbGFjZT12b2lkIDAsSmkucHJvdG90eXBlLnJ1bGVJZD12b2lkIDAsSmkucHJvdG90eXBlLnNvdXJjZT12b2lkIDB9KTt2YXIgbXF0PWwoKCk9PntocXQoKX0pO2Z1bmN0aW9uIGhmYShlLHQpe2lmKHQhPT12b2lkIDAmJnR5cGVvZiB0IT0ic3RyaW5nIil0aHJvdyBuZXcgVHlwZUVycm9yKCciZXh0IiBhcmd1bWVudCBtdXN0IGJlIGEgc3RyaW5nJyk7YnkoZSk7bGV0IHI9MCxhPS0xLGk9ZS5sZW5ndGgsbztpZih0PT09dm9pZCAwfHx0Lmxlbmd0aD09PTB8fHQubGVuZ3RoPmUubGVuZ3RoKXtmb3IoO2ktLTspaWYoZS5jb2RlUG9pbnRBdChpKT09PTQ3KXtpZihvKXtyPWkrMTticmVha319ZWxzZSBhPDAmJihvPSEwLGE9aSsxKTtyZXR1cm4gYTwwPyIiOmUuc2xpY2UocixhKX1pZih0PT09ZSlyZXR1cm4iIjtsZXQgbj0tMSxzPXQubGVuZ3RoLTE7Zm9yKDtpLS07KWlmKGUuY29kZVBvaW50QXQoaSk9PT00Nyl7aWYobyl7cj1pKzE7YnJlYWt9fWVsc2UgbjwwJiYobz0hMCxuPWkrMSkscz4tMSYmKGUuY29kZVBvaW50QXQoaSk9PT10LmNvZGVQb2ludEF0KHMtLSk/czwwJiYoYT1pKToocz0tMSxhPW4pKTtyZXR1cm4gcj09PWE/YT1uOmE8MCYmKGE9ZS5sZW5ndGgpLGUuc2xpY2UocixhKX1mdW5jdGlvbiBtZmEoZSl7aWYoYnkoZSksZS5sZW5ndGg9PT0wKXJldHVybiIuIjtsZXQgdD0tMSxyPWUubGVuZ3RoLGE7Zm9yKDstLXI7KWlmKGUuY29kZVBvaW50QXQocik9PT00Nyl7aWYoYSl7dD1yO2JyZWFrfX1lbHNlIGF8fChhPSEwKTtyZXR1cm4gdDwwP2UuY29kZVBvaW50QXQoMCk9PT00Nz8iLyI6Ii4iOnQ9PT0xJiZlLmNvZGVQb2ludEF0KDApPT09NDc/Ii8vIjplLnNsaWNlKDAsdCl9ZnVuY3Rpb24gZ2ZhKGUpe2J5KGUpO2xldCB0PWUubGVuZ3RoLHI9LTEsYT0wLGk9LTEsbz0wLG47Zm9yKDt0LS07KXtsZXQgcz1lLmNvZGVQb2ludEF0KHQpO2lmKHM9PT00Nyl7aWYobil7YT10KzE7YnJlYWt9Y29udGludWV9cjwwJiYobj0hMCxyPXQrMSkscz09PTQ2P2k8MD9pPXQ6byE9PTEmJihvPTEpOmk+LTEmJihvPS0xKX1yZXR1cm4gaTwwfHxyPDB8fG89PT0wfHxvPT09MSYmaT09PXItMSYmaT09PWErMT8iIjplLnNsaWNlKGkscil9ZnVuY3Rpb24geGZhKC4uLmUpe2xldCB0PS0xLHI7Zm9yKDsrK3Q8ZS5sZW5ndGg7KWJ5KGVbdF0pLGVbdF0mJihyPXI9PT12b2lkIDA/ZVt0XTpyKyIvIitlW3RdKTtyZXR1cm4gcj09PXZvaWQgMD8iLiI6YmZhKHIpfWZ1bmN0aW9uIGJmYShlKXtieShlKTtsZXQgdD1lLmNvZGVQb2ludEF0KDApPT09NDcscj12ZmEoZSwhdCk7cmV0dXJuIHIubGVuZ3RoPT09MCYmIXQmJihyPSIuIiksci5sZW5ndGg+MCYmZS5jb2RlUG9pbnRBdChlLmxlbmd0aC0xKT09PTQ3JiYocis9Ii8iKSx0PyIvIityOnJ9ZnVuY3Rpb24gdmZhKGUsdCl7bGV0IHI9IiIsYT0wLGk9LTEsbz0wLG49LTEscyxjO2Zvcig7KytuPD1lLmxlbmd0aDspe2lmKG48ZS5sZW5ndGgpcz1lLmNvZGVQb2ludEF0KG4pO2Vsc2V7aWYocz09PTQ3KWJyZWFrO3M9NDd9aWYocz09PTQ3KXtpZighKGk9PT1uLTF8fG89PT0xKSlpZihpIT09bi0xJiZvPT09Mil7aWYoci5sZW5ndGg8Mnx8YSE9PTJ8fHIuY29kZVBvaW50QXQoci5sZW5ndGgtMSkhPT00Nnx8ci5jb2RlUG9pbnRBdChyLmxlbmd0aC0yKSE9PTQ2KXtpZihyLmxlbmd0aD4yKXtpZihjPXIubGFzdEluZGV4T2YoIi8iKSxjIT09ci5sZW5ndGgtMSl7YzwwPyhyPSIiLGE9MCk6KHI9ci5zbGljZSgwLGMpLGE9ci5sZW5ndGgtMS1yLmxhc3RJbmRleE9mKCIvIikpLGk9bixvPTA7Y29udGludWV9fWVsc2UgaWYoci5sZW5ndGg+MCl7cj0iIixhPTAsaT1uLG89MDtjb250aW51ZX19dCYmKHI9ci5sZW5ndGg+MD9yKyIvLi4iOiIuLiIsYT0yKX1lbHNlIHIubGVuZ3RoPjA/cis9Ii8iK2Uuc2xpY2UoaSsxLG4pOnI9ZS5zbGljZShpKzEsbiksYT1uLWktMTtpPW4sbz0wfWVsc2Ugcz09PTQ2JiZvPi0xP28rKzpvPS0xfXJldHVybiByfWZ1bmN0aW9uIGJ5KGUpe2lmKHR5cGVvZiBlIT0ic3RyaW5nIil0aHJvdyBuZXcgVHlwZUVycm9yKCJQYXRoIG11c3QgYmUgYSBzdHJpbmcuIFJlY2VpdmVkICIrSlNPTi5zdHJpbmdpZnkoZSkpfXZhciBDcyxncXQ9bCgoKT0+e0NzPXtiYXNlbmFtZTpoZmEsZGlybmFtZTptZmEsZXh0bmFtZTpnZmEsam9pbjp4ZmEsc2VwOiIvIn19KTtmdW5jdGlvbiB5ZmEoKXtyZXR1cm4iLyJ9dmFyIHhxdCxicXQ9bCgoKT0+e3hxdD17Y3dkOnlmYX19KTtmdW5jdGlvbiB0OShlKXtyZXR1cm4hIShlIT09bnVsbCYmdHlwZW9mIGU9PSJvYmplY3QiJiYiaHJlZiJpbiBlJiZlLmhyZWYmJiJwcm90b2NvbCJpbiBlJiZlLnByb3RvY29sJiZlLmF1dGg9PT12b2lkIDApfXZhciBGYmU9bCgoKT0+e30pO2Z1bmN0aW9uIHZxdChlKXtpZih0eXBlb2YgZT09InN0cmluZyIpZT1uZXcgVVJMKGUpO2Vsc2UgaWYoIXQ5KGUpKXtsZXQgdD1uZXcgVHlwZUVycm9yKCdUaGUgInBhdGgiIGFyZ3VtZW50IG11c3QgYmUgb2YgdHlwZSBzdHJpbmcgb3IgYW4gaW5zdGFuY2Ugb2YgVVJMLiBSZWNlaXZlZCBgJytlKyJgIik7dGhyb3cgdC5jb2RlPSJFUlJfSU5WQUxJRF9BUkdfVFlQRSIsdH1pZihlLnByb3RvY29sIT09ImZpbGU6Iil7bGV0IHQ9bmV3IFR5cGVFcnJvcigiVGhlIFVSTCBtdXN0IGJlIG9mIHNjaGVtZSBmaWxlIik7dGhyb3cgdC5jb2RlPSJFUlJfSU5WQUxJRF9VUkxfU0NIRU1FIix0fXJldHVybiB3ZmEoZSl9ZnVuY3Rpb24gd2ZhKGUpe2lmKGUuaG9zdG5hbWUhPT0iIil7bGV0IGE9bmV3IFR5cGVFcnJvcignRmlsZSBVUkwgaG9zdCBtdXN0IGJlICJsb2NhbGhvc3QiIG9yIGVtcHR5IG9uIGRhcndpbicpO3Rocm93IGEuY29kZT0iRVJSX0lOVkFMSURfRklMRV9VUkxfSE9TVCIsYX1sZXQgdD1lLnBhdGhuYW1lLHI9LTE7Zm9yKDsrK3I8dC5sZW5ndGg7KWlmKHQuY29kZVBvaW50QXQocik9PT0zNyYmdC5jb2RlUG9pbnRBdChyKzEpPT09NTApe2xldCBhPXQuY29kZVBvaW50QXQocisyKTtpZihhPT09NzB8fGE9PT0xMDIpe2xldCBpPW5ldyBUeXBlRXJyb3IoIkZpbGUgVVJMIHBhdGggbXVzdCBub3QgaW5jbHVkZSBlbmNvZGVkIC8gY2hhcmFjdGVycyIpO3Rocm93IGkuY29kZT0iRVJSX0lOVkFMSURfRklMRV9VUkxfUEFUSCIsaX19cmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudCh0KX12YXIgeXF0PWwoKCk9PntGYmUoKTtGYmUoKX0pO2Z1bmN0aW9uIFJiZShlLHQpe2lmKGUmJmUuaW5jbHVkZXMoQ3Muc2VwKSl0aHJvdyBuZXcgRXJyb3IoImAiK3QrImAgY2Fubm90IGJlIGEgcGF0aDogZGlkIG5vdCBleHBlY3QgYCIrQ3Muc2VwKyJgIil9ZnVuY3Rpb24gQmJlKGUsdCl7aWYoIWUpdGhyb3cgbmV3IEVycm9yKCJgIit0KyJgIGNhbm5vdCBiZSBlbXB0eSIpfWZ1bmN0aW9uIHdxdChlLHQpe2lmKCFlKXRocm93IG5ldyBFcnJvcigiU2V0dGluZyBgIit0KyJgIHJlcXVpcmVzIGBwYXRoYCB0byBiZSBzZXQgdG9vIil9ZnVuY3Rpb24gTWZhKGUpe3JldHVybiEhKGUmJnR5cGVvZiBlPT0ib2JqZWN0IiYmImJ5dGVMZW5ndGgiaW4gZSYmImJ5dGVPZmZzZXQiaW4gZSl9dmFyIE9iZSx2eSxNcXQ9bCgoKT0+e21xdCgpO2dxdCgpO2JxdCgpO3lxdCgpO09iZT1bImhpc3RvcnkiLCJwYXRoIiwiYmFzZW5hbWUiLCJzdGVtIiwiZXh0bmFtZSIsImRpcm5hbWUiXSx2eT1jbGFzc3tjb25zdHJ1Y3Rvcih0KXtsZXQgcjt0P3Q5KHQpP3I9e3BhdGg6dH06dHlwZW9mIHQ9PSJzdHJpbmcifHxNZmEodCk/cj17dmFsdWU6dH06cj10OnI9e30sdGhpcy5jd2Q9ImN3ZCJpbiByPyIiOnhxdC5jd2QoKSx0aGlzLmRhdGE9e30sdGhpcy5oaXN0b3J5PVtdLHRoaXMubWVzc2FnZXM9W10sdGhpcy52YWx1ZSx0aGlzLm1hcCx0aGlzLnJlc3VsdCx0aGlzLnN0b3JlZDtsZXQgYT0tMTtmb3IoOysrYTxPYmUubGVuZ3RoOyl7bGV0IG89T2JlW2FdO28gaW4gciYmcltvXSE9PXZvaWQgMCYmcltvXSE9PW51bGwmJih0aGlzW29dPW89PT0iaGlzdG9yeSI/Wy4uLnJbb11dOnJbb10pfWxldCBpO2ZvcihpIGluIHIpT2JlLmluY2x1ZGVzKGkpfHwodGhpc1tpXT1yW2ldKX1nZXQgYmFzZW5hbWUoKXtyZXR1cm4gdHlwZW9mIHRoaXMucGF0aD09InN0cmluZyI/Q3MuYmFzZW5hbWUodGhpcy5wYXRoKTp2b2lkIDB9c2V0IGJhc2VuYW1lKHQpe0JiZSh0LCJiYXNlbmFtZSIpLFJiZSh0LCJiYXNlbmFtZSIpLHRoaXMucGF0aD1Dcy5qb2luKHRoaXMuZGlybmFtZXx8IiIsdCl9Z2V0IGRpcm5hbWUoKXtyZXR1cm4gdHlwZW9mIHRoaXMucGF0aD09InN0cmluZyI/Q3MuZGlybmFtZSh0aGlzLnBhdGgpOnZvaWQgMH1zZXQgZGlybmFtZSh0KXt3cXQodGhpcy5iYXNlbmFtZSwiZGlybmFtZSIpLHRoaXMucGF0aD1Dcy5qb2luKHR8fCIiLHRoaXMuYmFzZW5hbWUpfWdldCBleHRuYW1lKCl7cmV0dXJuIHR5cGVvZiB0aGlzLnBhdGg9PSJzdHJpbmciP0NzLmV4dG5hbWUodGhpcy5wYXRoKTp2b2lkIDB9c2V0IGV4dG5hbWUodCl7aWYoUmJlKHQsImV4dG5hbWUiKSx3cXQodGhpcy5kaXJuYW1lLCJleHRuYW1lIiksdCl7aWYodC5jb2RlUG9pbnRBdCgwKSE9PTQ2KXRocm93IG5ldyBFcnJvcigiYGV4dG5hbWVgIG11c3Qgc3RhcnQgd2l0aCBgLmAiKTtpZih0LmluY2x1ZGVzKCIuIiwxKSl0aHJvdyBuZXcgRXJyb3IoImBleHRuYW1lYCBjYW5ub3QgY29udGFpbiBtdWx0aXBsZSBkb3RzIil9dGhpcy5wYXRoPUNzLmpvaW4odGhpcy5kaXJuYW1lLHRoaXMuc3RlbSsodHx8IiIpKX1nZXQgcGF0aCgpe3JldHVybiB0aGlzLmhpc3RvcnlbdGhpcy5oaXN0b3J5Lmxlbmd0aC0xXX1zZXQgcGF0aCh0KXt0OSh0KSYmKHQ9dnF0KHQpKSxCYmUodCwicGF0aCIpLHRoaXMucGF0aCE9PXQmJnRoaXMuaGlzdG9yeS5wdXNoKHQpfWdldCBzdGVtKCl7cmV0dXJuIHR5cGVvZiB0aGlzLnBhdGg9PSJzdHJpbmciP0NzLmJhc2VuYW1lKHRoaXMucGF0aCx0aGlzLmV4dG5hbWUpOnZvaWQgMH1zZXQgc3RlbSh0KXtCYmUodCwic3RlbSIpLFJiZSh0LCJzdGVtIiksdGhpcy5wYXRoPUNzLmpvaW4odGhpcy5kaXJuYW1lfHwiIix0Kyh0aGlzLmV4dG5hbWV8fCIiKSl9ZmFpbCh0LHIsYSl7bGV0IGk9dGhpcy5tZXNzYWdlKHQscixhKTt0aHJvdyBpLmZhdGFsPSEwLGl9aW5mbyh0LHIsYSl7bGV0IGk9dGhpcy5tZXNzYWdlKHQscixhKTtyZXR1cm4gaS5mYXRhbD12b2lkIDAsaX1tZXNzYWdlKHQscixhKXtsZXQgaT1uZXcgSmkodCxyLGEpO3JldHVybiB0aGlzLnBhdGgmJihpLm5hbWU9dGhpcy5wYXRoKyI6IitpLm5hbWUsaS5maWxlPXRoaXMucGF0aCksaS5mYXRhbD0hMSx0aGlzLm1lc3NhZ2VzLnB1c2goaSksaX10b1N0cmluZyh0KXtyZXR1cm4gdGhpcy52YWx1ZT09PXZvaWQgMD8iIjp0eXBlb2YgdGhpcy52YWx1ZT09InN0cmluZyI/dGhpcy52YWx1ZTpuZXcgVGV4dERlY29kZXIodHx8dm9pZCAwKS5kZWNvZGUodGhpcy52YWx1ZSl9fX0pO3ZhciBrcXQ9bCgoKT0+e01xdCgpfSk7dmFyIFNxdCx6cXQ9bCgoKT0+e1NxdD0oZnVuY3Rpb24oZSl7bGV0IGE9dGhpcy5jb25zdHJ1Y3Rvci5wcm90b3R5cGUsaT1hW2VdLG89ZnVuY3Rpb24oKXtyZXR1cm4gaS5hcHBseShvLGFyZ3VtZW50cyl9O3JldHVybiBPYmplY3Quc2V0UHJvdG90eXBlT2YobyxhKSxvfSl9KTtmdW5jdGlvbiBxYmUoZSx0KXtpZih0eXBlb2YgdCE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYCIrZSsiYCB3aXRob3V0IGBwYXJzZXJgIil9ZnVuY3Rpb24gamJlKGUsdCl7aWYodHlwZW9mIHQhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGAiK2UrImAgd2l0aG91dCBgY29tcGlsZXJgIil9ZnVuY3Rpb24gVmJlKGUsdCl7aWYodCl0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBjYWxsIGAiK2UrImAgb24gYSBmcm96ZW4gcHJvY2Vzc29yLlxuQ3JlYXRlIGEgbmV3IHByb2Nlc3NvciBmaXJzdCwgYnkgY2FsbGluZyBpdDogdXNlIGBwcm9jZXNzb3IoKWAgaW5zdGVhZCBvZiBgcHJvY2Vzc29yYC4iKX1mdW5jdGlvbiBDcXQoZSl7aWYoIXh5KGUpfHx0eXBlb2YgZS50eXBlIT0ic3RyaW5nIil0aHJvdyBuZXcgVHlwZUVycm9yKCJFeHBlY3RlZCBub2RlLCBnb3QgYCIrZSsiYCIpfWZ1bmN0aW9uIF9xdChlLHQscil7aWYoIXIpdGhyb3cgbmV3IEVycm9yKCJgIitlKyJgIGZpbmlzaGVkIGFzeW5jLiBVc2UgYCIrdCsiYCBpbnN0ZWFkIil9ZnVuY3Rpb24gX29lKGUpe3JldHVybiBTZmEoZSk/ZTpuZXcgdnkoZSl9ZnVuY3Rpb24gU2ZhKGUpe3JldHVybiEhKGUmJnR5cGVvZiBlPT0ib2JqZWN0IiYmIm1lc3NhZ2UiaW4gZSYmIm1lc3NhZ2VzImluIGUpfWZ1bmN0aW9uIHpmYShlKXtyZXR1cm4gdHlwZW9mIGU9PSJzdHJpbmcifHxDZmEoZSl9ZnVuY3Rpb24gQ2ZhKGUpe3JldHVybiEhKGUmJnR5cGVvZiBlPT0ib2JqZWN0IiYmImJ5dGVMZW5ndGgiaW4gZSYmImJ5dGVPZmZzZXQiaW4gZSl9dmFyIFRvZSxrZmEsSGJlLHl5LFRxdD1sKCgpPT57UUh0KCk7VG9lPUFyKG5xdCgpLDEpO1A0KCk7c3F0KCk7ZHF0KCk7a3F0KCk7enF0KCk7a2ZhPXt9Lmhhc093blByb3BlcnR5LEhiZT1jbGFzcyBlIGV4dGVuZHMgU3F0e2NvbnN0cnVjdG9yKCl7c3VwZXIoImNvcHkiKSx0aGlzLkNvbXBpbGVyPXZvaWQgMCx0aGlzLlBhcnNlcj12b2lkIDAsdGhpcy5hdHRhY2hlcnM9W10sdGhpcy5jb21waWxlcj12b2lkIDAsdGhpcy5mcmVlemVJbmRleD0tMSx0aGlzLmZyb3plbj12b2lkIDAsdGhpcy5uYW1lc3BhY2U9e30sdGhpcy5wYXJzZXI9dm9pZCAwLHRoaXMudHJhbnNmb3JtZXJzPVBiZSgpfWNvcHkoKXtsZXQgdD1uZXcgZSxyPS0xO2Zvcig7KytyPHRoaXMuYXR0YWNoZXJzLmxlbmd0aDspe2xldCBhPXRoaXMuYXR0YWNoZXJzW3JdO3QudXNlKC4uLmEpfXJldHVybiB0LmRhdGEoKDAsVG9lLmRlZmF1bHQpKCEwLHt9LHRoaXMubmFtZXNwYWNlKSksdH1kYXRhKHQscil7cmV0dXJuIHR5cGVvZiB0PT0ic3RyaW5nIj9hcmd1bWVudHMubGVuZ3RoPT09Mj8oVmJlKCJkYXRhIix0aGlzLmZyb3plbiksdGhpcy5uYW1lc3BhY2VbdF09cix0aGlzKTprZmEuY2FsbCh0aGlzLm5hbWVzcGFjZSx0KSYmdGhpcy5uYW1lc3BhY2VbdF18fHZvaWQgMDp0PyhWYmUoImRhdGEiLHRoaXMuZnJvemVuKSx0aGlzLm5hbWVzcGFjZT10LHRoaXMpOnRoaXMubmFtZXNwYWNlfWZyZWV6ZSgpe2lmKHRoaXMuZnJvemVuKXJldHVybiB0aGlzO2xldCB0PXRoaXM7Zm9yKDsrK3RoaXMuZnJlZXplSW5kZXg8dGhpcy5hdHRhY2hlcnMubGVuZ3RoOyl7bGV0W3IsLi4uYV09dGhpcy5hdHRhY2hlcnNbdGhpcy5mcmVlemVJbmRleF07aWYoYVswXT09PSExKWNvbnRpbnVlO2FbMF09PT0hMCYmKGFbMF09dm9pZCAwKTtsZXQgaT1yLmNhbGwodCwuLi5hKTt0eXBlb2YgaT09ImZ1bmN0aW9uIiYmdGhpcy50cmFuc2Zvcm1lcnMudXNlKGkpfXJldHVybiB0aGlzLmZyb3plbj0hMCx0aGlzLmZyZWV6ZUluZGV4PU51bWJlci5QT1NJVElWRV9JTkZJTklUWSx0aGlzfXBhcnNlKHQpe3RoaXMuZnJlZXplKCk7bGV0IHI9X29lKHQpLGE9dGhpcy5wYXJzZXJ8fHRoaXMuUGFyc2VyO3JldHVybiBxYmUoInBhcnNlIixhKSxhKFN0cmluZyhyKSxyKX1wcm9jZXNzKHQscil7bGV0IGE9dGhpcztyZXR1cm4gdGhpcy5mcmVlemUoKSxxYmUoInByb2Nlc3MiLHRoaXMucGFyc2VyfHx0aGlzLlBhcnNlciksamJlKCJwcm9jZXNzIix0aGlzLmNvbXBpbGVyfHx0aGlzLkNvbXBpbGVyKSxyP2kodm9pZCAwLHIpOm5ldyBQcm9taXNlKGkpO2Z1bmN0aW9uIGkobyxuKXtsZXQgcz1fb2UodCksYz1hLnBhcnNlKHMpO2EucnVuKGMscyxmdW5jdGlvbihmLHUscCl7aWYoZnx8IXV8fCFwKXJldHVybiBkKGYpO2xldCBoPXUsYj1hLnN0cmluZ2lmeShoLHApO3pmYShiKT9wLnZhbHVlPWI6cC5yZXN1bHQ9YixkKGYscCl9KTtmdW5jdGlvbiBkKGYsdSl7Znx8IXU/bihmKTpvP28odSk6cih2b2lkIDAsdSl9fX1wcm9jZXNzU3luYyh0KXtsZXQgcj0hMSxhO3JldHVybiB0aGlzLmZyZWV6ZSgpLHFiZSgicHJvY2Vzc1N5bmMiLHRoaXMucGFyc2VyfHx0aGlzLlBhcnNlciksamJlKCJwcm9jZXNzU3luYyIsdGhpcy5jb21waWxlcnx8dGhpcy5Db21waWxlciksdGhpcy5wcm9jZXNzKHQsaSksX3F0KCJwcm9jZXNzU3luYyIsInByb2Nlc3MiLHIpLGE7ZnVuY3Rpb24gaShvLG4pe3I9ITAsJGJlKG8pLGE9bn19cnVuKHQscixhKXtDcXQodCksdGhpcy5mcmVlemUoKTtsZXQgaT10aGlzLnRyYW5zZm9ybWVycztyZXR1cm4hYSYmdHlwZW9mIHI9PSJmdW5jdGlvbiImJihhPXIscj12b2lkIDApLGE/byh2b2lkIDAsYSk6bmV3IFByb21pc2Uobyk7ZnVuY3Rpb24gbyhuLHMpe2xldCBjPV9vZShyKTtpLnJ1bih0LGMsZCk7ZnVuY3Rpb24gZChmLHUscCl7bGV0IGg9dXx8dDtmP3MoZik6bj9uKGgpOmEodm9pZCAwLGgscCl9fX1ydW5TeW5jKHQscil7bGV0IGE9ITEsaTtyZXR1cm4gdGhpcy5ydW4odCxyLG8pLF9xdCgicnVuU3luYyIsInJ1biIsYSksaTtmdW5jdGlvbiBvKG4scyl7JGJlKG4pLGk9cyxhPSEwfX1zdHJpbmdpZnkodCxyKXt0aGlzLmZyZWV6ZSgpO2xldCBhPV9vZShyKSxpPXRoaXMuY29tcGlsZXJ8fHRoaXMuQ29tcGlsZXI7cmV0dXJuIGpiZSgic3RyaW5naWZ5IixpKSxDcXQodCksaSh0LGEpfXVzZSh0LC4uLnIpe2xldCBhPXRoaXMuYXR0YWNoZXJzLGk9dGhpcy5uYW1lc3BhY2U7aWYoVmJlKCJ1c2UiLHRoaXMuZnJvemVuKSx0IT1udWxsKWlmKHR5cGVvZiB0PT0iZnVuY3Rpb24iKWModCxyKTtlbHNlIGlmKHR5cGVvZiB0PT0ib2JqZWN0IilBcnJheS5pc0FycmF5KHQpP3ModCk6bih0KTtlbHNlIHRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkIHVzYWJsZSB2YWx1ZSwgbm90IGAiK3QrImAiKTtyZXR1cm4gdGhpcztmdW5jdGlvbiBvKGQpe2lmKHR5cGVvZiBkPT0iZnVuY3Rpb24iKWMoZCxbXSk7ZWxzZSBpZih0eXBlb2YgZD09Im9iamVjdCIpaWYoQXJyYXkuaXNBcnJheShkKSl7bGV0W2YsLi4udV09ZDtjKGYsdSl9ZWxzZSBuKGQpO2Vsc2UgdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgdXNhYmxlIHZhbHVlLCBub3QgYCIrZCsiYCIpfWZ1bmN0aW9uIG4oZCl7aWYoISgicGx1Z2lucyJpbiBkKSYmISgic2V0dGluZ3MiaW4gZCkpdGhyb3cgbmV3IEVycm9yKCJFeHBlY3RlZCB1c2FibGUgdmFsdWUgYnV0IHJlY2VpdmVkIGFuIGVtcHR5IHByZXNldCwgd2hpY2ggaXMgcHJvYmFibHkgYSBtaXN0YWtlOiBwcmVzZXRzIHR5cGljYWxseSBjb21lIHdpdGggYHBsdWdpbnNgIGFuZCBzb21ldGltZXMgd2l0aCBgc2V0dGluZ3NgLCBidXQgdGhpcyBoYXMgbmVpdGhlciIpO3MoZC5wbHVnaW5zKSxkLnNldHRpbmdzJiYoaS5zZXR0aW5ncz0oMCxUb2UuZGVmYXVsdCkoITAsaS5zZXR0aW5ncyxkLnNldHRpbmdzKSl9ZnVuY3Rpb24gcyhkKXtsZXQgZj0tMTtpZihkIT1udWxsKWlmKEFycmF5LmlzQXJyYXkoZCkpZm9yKDsrK2Y8ZC5sZW5ndGg7KXtsZXQgdT1kW2ZdO28odSl9ZWxzZSB0aHJvdyBuZXcgVHlwZUVycm9yKCJFeHBlY3RlZCBhIGxpc3Qgb2YgcGx1Z2lucywgbm90IGAiK2QrImAiKX1mdW5jdGlvbiBjKGQsZil7bGV0IHU9LTEscD0tMTtmb3IoOysrdTxhLmxlbmd0aDspaWYoYVt1XVswXT09PWQpe3A9dTticmVha31pZihwPT09LTEpYS5wdXNoKFtkLC4uLmZdKTtlbHNlIGlmKGYubGVuZ3RoPjApe2xldFtoLC4uLmJdPWYseD1hW3BdWzFdO3h5KHgpJiZ4eShoKSYmKGg9KDAsVG9lLmRlZmF1bHQpKCEwLHgsaCkpLGFbcF09W2QsaCwuLi5iXX19fX0seXk9bmV3IEhiZSgpLmZyZWV6ZSgpfSk7dmFyIExxdD1sKCgpPT57VHF0KCl9KTtmdW5jdGlvbiBhOShlLHQpe2xldCByPVN0cmluZyhlKTtpZih0eXBlb2YgdCE9InN0cmluZyIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgY2hhcmFjdGVyIik7bGV0IGE9MCxpPXIuaW5kZXhPZih0KTtmb3IoO2khPT0tMTspYSsrLGk9ci5pbmRleE9mKHQsaSt0Lmxlbmd0aCk7cmV0dXJuIGF9dmFyIFViZT1sKCgpPT57fSk7ZnVuY3Rpb24gTjYoZSl7cmV0dXJuIGUhPT1udWxsJiYoZTwzMnx8ZT09PTEyNyl9ZnVuY3Rpb24gdHQoZSl7cmV0dXJuIGUhPT1udWxsJiZlPC0yfWZ1bmN0aW9uIGxyKGUpe3JldHVybiBlIT09bnVsbCYmKGU8MHx8ZT09PTMyKX1mdW5jdGlvbiBidChlKXtyZXR1cm4gZT09PS0yfHxlPT09LTF8fGU9PT0zMn1mdW5jdGlvbiBONChlKXtyZXR1cm4gdDtmdW5jdGlvbiB0KHIpe3JldHVybiByIT09bnVsbCYmcj4tMSYmZS50ZXN0KFN0cmluZy5mcm9tQ2hhckNvZGUocikpfX12YXIgRmksR2EsRHF0LHd5LEFxdCxFcXQsRjYsSzIscHI9bCgoKT0+e0ZpPU40KC9bQS1aYS16XS8pLEdhPU40KC9bXGRBLVphLXpdLyksRHF0PU40KC9bIy0nKitcLS05PT9BLVpeLX5dLyk7d3k9TjQoL1xkLyksQXF0PU40KC9bXGRBLUZhLWZdLyksRXF0PU40KC9bIS0vOi1AWy1gey1+XS8pO0Y2PU40KC9ccHtQfXxccHtTfS91KSxLMj1ONCgvXHMvKX0pO2Z1bmN0aW9uIF9mYShlKXtsZXQgdD1bXSxyPS0xO2Zvcig7KytyPGUubGVuZ3RoOyl0W3JdPWhjKGVbcl0pO3JldHVybiBMb2UoYSk7ZnVuY3Rpb24gYSguLi5pKXtsZXQgbz0tMTtmb3IoOysrbzx0Lmxlbmd0aDspaWYodFtvXS5hcHBseSh0aGlzLGkpKXJldHVybiEwO3JldHVybiExfX1mdW5jdGlvbiBUZmEoZSl7bGV0IHQ9ZTtyZXR1cm4gTG9lKHIpO2Z1bmN0aW9uIHIoYSl7bGV0IGk9YSxvO2ZvcihvIGluIGUpaWYoaVtvXSE9PXRbb10pcmV0dXJuITE7cmV0dXJuITB9fWZ1bmN0aW9uIExmYShlKXtyZXR1cm4gTG9lKHQpO2Z1bmN0aW9uIHQocil7cmV0dXJuIHImJnIudHlwZT09PWV9fWZ1bmN0aW9uIExvZShlKXtyZXR1cm4gdDtmdW5jdGlvbiB0KHIsYSxpKXtyZXR1cm4hISgkcXQocikmJmUuY2FsbCh0aGlzLHIsdHlwZW9mIGE9PSJudW1iZXIiP2E6dm9pZCAwLGl8fHZvaWQgMCkpfX1mdW5jdGlvbiBEZmEoKXtyZXR1cm4hMH1mdW5jdGlvbiAkcXQoZSl7cmV0dXJuIGUhPT1udWxsJiZ0eXBlb2YgZT09Im9iamVjdCImJiJ0eXBlImluIGV9dmFyIFBxdCxoYyxJcXQ9bCgoKT0+e1BxdD0oZnVuY3Rpb24oZSx0LHIsYSxpKXtsZXQgbz1oYyh0KTtpZihyIT1udWxsJiYodHlwZW9mIHIhPSJudW1iZXIifHxyPDB8fHI9PT1OdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFkpKXRocm93IG5ldyBFcnJvcigiRXhwZWN0ZWQgcG9zaXRpdmUgZmluaXRlIGluZGV4Iik7aWYoYSE9bnVsbCYmKCFQcXQoYSl8fCFhLmNoaWxkcmVuKSl0aHJvdyBuZXcgRXJyb3IoIkV4cGVjdGVkIHBhcmVudCBub2RlIik7aWYoYT09bnVsbCE9KHI9PW51bGwpKXRocm93IG5ldyBFcnJvcigiRXhwZWN0ZWQgYm90aCBwYXJlbnQgYW5kIGluZGV4Iik7cmV0dXJuICRxdChlKT9vLmNhbGwoaSxlLHIsYSk6ITF9KSxoYz0oZnVuY3Rpb24oZSl7aWYoZT09bnVsbClyZXR1cm4gRGZhO2lmKHR5cGVvZiBlPT0iZnVuY3Rpb24iKXJldHVybiBMb2UoZSk7aWYodHlwZW9mIGU9PSJvYmplY3QiKXJldHVybiBBcnJheS5pc0FycmF5KGUpP19mYShlKTpUZmEoZSk7aWYodHlwZW9mIGU9PSJzdHJpbmciKXJldHVybiBMZmEoZSk7dGhyb3cgbmV3IEVycm9yKCJFeHBlY3RlZCBmdW5jdGlvbiwgc3RyaW5nLCBvciBvYmplY3QgYXMgdGVzdCIpfSl9KTt2YXIgRG9lPWwoKCk9PntJcXQoKX0pO3ZhciBOcXQ9bCgoKT0+e30pO2Z1bmN0aW9uIE15KGUsdCxyLGEpe2xldCBpO3R5cGVvZiB0PT0iZnVuY3Rpb24iJiZ0eXBlb2YgciE9ImZ1bmN0aW9uIj8oYT1yLHI9dCk6aT10O2xldCBvPWhjKGkpLG49YT8tMToxO3MoZSx2b2lkIDAsW10pKCk7ZnVuY3Rpb24gcyhjLGQsZil7bGV0IHU9YyYmdHlwZW9mIGM9PSJvYmplY3QiP2M6e307aWYodHlwZW9mIHUudHlwZT09InN0cmluZyIpe2xldCBoPXR5cGVvZiB1LnRhZ05hbWU9PSJzdHJpbmciP3UudGFnTmFtZTp0eXBlb2YgdS5uYW1lPT0ic3RyaW5nIj91Lm5hbWU6dm9pZCAwO09iamVjdC5kZWZpbmVQcm9wZXJ0eShwLCJuYW1lIix7dmFsdWU6Im5vZGUgKCIrKGMudHlwZSsoaD8iPCIraCsiPiI6IiIpKSsiKSJ9KX1yZXR1cm4gcDtmdW5jdGlvbiBwKCl7bGV0IGg9RnF0LGIseCxnO2lmKCghdHx8byhjLGQsZltmLmxlbmd0aC0xXXx8dm9pZCAwKSkmJihoPUFmYShyKGMsZikpLGhbMF09PT1PNikpcmV0dXJuIGg7aWYoImNoaWxkcmVuImluIGMmJmMuY2hpbGRyZW4pe2xldCB2PWM7aWYodi5jaGlsZHJlbiYmaFswXSE9PUVvZSlmb3IoeD0oYT92LmNoaWxkcmVuLmxlbmd0aDotMSkrbixnPWYuY29uY2F0KHYpO3g+LTEmJng8di5jaGlsZHJlbi5sZW5ndGg7KXtsZXQgdz12LmNoaWxkcmVuW3hdO2lmKGI9cyh3LHgsZykoKSxiWzBdPT09TzYpcmV0dXJuIGI7eD10eXBlb2YgYlsxXT09Im51bWJlciI/YlsxXTp4K259fXJldHVybiBofX19ZnVuY3Rpb24gQWZhKGUpe3JldHVybiBBcnJheS5pc0FycmF5KGUpP2U6dHlwZW9mIGU9PSJudW1iZXIiP1tBb2UsZV06ZT09bnVsbD9GcXQ6W2VdfXZhciBGcXQsQW9lLE82LEVvZSxPcXQ9bCgoKT0+e0RvZSgpO05xdCgpO0ZxdD1bXSxBb2U9ITAsTzY9ITEsRW9lPSJza2lwIn0pO3ZhciAkb2U9bCgoKT0+e09xdCgpfSk7ZnVuY3Rpb24gV2JlKGUsdCxyKXtsZXQgaT1oYygocnx8e30pLmlnbm9yZXx8W10pLG89RWZhKHQpLG49LTE7Zm9yKDsrK248by5sZW5ndGg7KU15KGUsInRleHQiLHMpO2Z1bmN0aW9uIHMoZCxmKXtsZXQgdT0tMSxwO2Zvcig7Kyt1PGYubGVuZ3RoOyl7bGV0IGg9Zlt1XSxiPXA/cC5jaGlsZHJlbjp2b2lkIDA7aWYoaShoLGI/Yi5pbmRleE9mKGgpOnZvaWQgMCxwKSlyZXR1cm47cD1ofWlmKHApcmV0dXJuIGMoZCxmKX1mdW5jdGlvbiBjKGQsZil7bGV0IHU9ZltmLmxlbmd0aC0xXSxwPW9bbl1bMF0saD1vW25dWzFdLGI9MCxnPXUuY2hpbGRyZW4uaW5kZXhPZihkKSx2PSExLHc9W107cC5sYXN0SW5kZXg9MDtsZXQgTT1wLmV4ZWMoZC52YWx1ZSk7Zm9yKDtNOyl7bGV0IEY9TS5pbmRleCxDPXtpbmRleDpNLmluZGV4LGlucHV0Ok0uaW5wdXQsc3RhY2s6Wy4uLmYsZF19LGs9aCguLi5NLEMpO2lmKHR5cGVvZiBrPT0ic3RyaW5nIiYmKGs9ay5sZW5ndGg+MD97dHlwZToidGV4dCIsdmFsdWU6a306dm9pZCAwKSxrPT09ITE/cC5sYXN0SW5kZXg9RisxOihiIT09RiYmdy5wdXNoKHt0eXBlOiJ0ZXh0Iix2YWx1ZTpkLnZhbHVlLnNsaWNlKGIsRil9KSxBcnJheS5pc0FycmF5KGspP3cucHVzaCguLi5rKTprJiZ3LnB1c2goayksYj1GK01bMF0ubGVuZ3RoLHY9ITApLCFwLmdsb2JhbClicmVhaztNPXAuZXhlYyhkLnZhbHVlKX1yZXR1cm4gdj8oYjxkLnZhbHVlLmxlbmd0aCYmdy5wdXNoKHt0eXBlOiJ0ZXh0Iix2YWx1ZTpkLnZhbHVlLnNsaWNlKGIpfSksdS5jaGlsZHJlbi5zcGxpY2UoZywxLC4uLncpKTp3PVtkXSxnK3cubGVuZ3RofX1mdW5jdGlvbiBFZmEoZSl7bGV0IHQ9W107aWYoIUFycmF5LmlzQXJyYXkoZSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgZmluZCBhbmQgcmVwbGFjZSB0dXBsZSBvciBsaXN0IG9mIHR1cGxlcyIpO2xldCByPSFlWzBdfHxBcnJheS5pc0FycmF5KGVbMF0pP2U6W2VdLGE9LTE7Zm9yKDsrK2E8ci5sZW5ndGg7KXtsZXQgaT1yW2FdO3QucHVzaChbJGZhKGlbMF0pLFBmYShpWzFdKV0pfXJldHVybiB0fWZ1bmN0aW9uICRmYShlKXtyZXR1cm4gdHlwZW9mIGU9PSJzdHJpbmciP25ldyBSZWdFeHAoYTYoZSksImciKTplfWZ1bmN0aW9uIFBmYShlKXtyZXR1cm4gdHlwZW9mIGU9PSJmdW5jdGlvbiI/ZTpmdW5jdGlvbigpe3JldHVybiBlfX12YXIgUnF0PWwoKCk9PntNYWUoKTskb2UoKTtEb2UoKX0pO3ZhciBCcXQ9bCgoKT0+e1JxdCgpfSk7ZnVuY3Rpb24gWGJlKCl7cmV0dXJue3RyYW5zZm9ybXM6W0JmYV0sZW50ZXI6e2xpdGVyYWxBdXRvbGluazpJZmEsbGl0ZXJhbEF1dG9saW5rRW1haWw6WmJlLGxpdGVyYWxBdXRvbGlua0h0dHA6WmJlLGxpdGVyYWxBdXRvbGlua1d3dzpaYmV9LGV4aXQ6e2xpdGVyYWxBdXRvbGluazpSZmEsbGl0ZXJhbEF1dG9saW5rRW1haWw6T2ZhLGxpdGVyYWxBdXRvbGlua0h0dHA6TmZhLGxpdGVyYWxBdXRvbGlua1d3dzpGZmF9fX1mdW5jdGlvbiBRYmUoKXtyZXR1cm57dW5zYWZlOlt7Y2hhcmFjdGVyOiJAIixiZWZvcmU6IlsrXFwtLlxcd10iLGFmdGVyOiJbXFwtLlxcd10iLGluQ29uc3RydWN0OkdiZSxub3RJbkNvbnN0cnVjdDpZYmV9LHtjaGFyYWN0ZXI6Ii4iLGJlZm9yZToiW1d3XSIsYWZ0ZXI6IltcXC0uXFx3XSIsaW5Db25zdHJ1Y3Q6R2JlLG5vdEluQ29uc3RydWN0OlliZX0se2NoYXJhY3RlcjoiOiIsYmVmb3JlOiJbcHNdIixhZnRlcjoiXFwvIixpbkNvbnN0cnVjdDpHYmUsbm90SW5Db25zdHJ1Y3Q6WWJlfV19fWZ1bmN0aW9uIElmYShlKXt0aGlzLmVudGVyKHt0eXBlOiJsaW5rIix0aXRsZTpudWxsLHVybDoiIixjaGlsZHJlbjpbXX0sZSl9ZnVuY3Rpb24gWmJlKGUpe3RoaXMuY29uZmlnLmVudGVyLmF1dG9saW5rUHJvdG9jb2wuY2FsbCh0aGlzLGUpfWZ1bmN0aW9uIE5mYShlKXt0aGlzLmNvbmZpZy5leGl0LmF1dG9saW5rUHJvdG9jb2wuY2FsbCh0aGlzLGUpfWZ1bmN0aW9uIEZmYShlKXt0aGlzLmNvbmZpZy5leGl0LmRhdGEuY2FsbCh0aGlzLGUpO2xldCB0PXRoaXMuc3RhY2tbdGhpcy5zdGFjay5sZW5ndGgtMV07dC50eXBlLHQudXJsPSJodHRwOi8vIit0aGlzLnNsaWNlU2VyaWFsaXplKGUpfWZ1bmN0aW9uIE9mYShlKXt0aGlzLmNvbmZpZy5leGl0LmF1dG9saW5rRW1haWwuY2FsbCh0aGlzLGUpfWZ1bmN0aW9uIFJmYShlKXt0aGlzLmV4aXQoZSl9ZnVuY3Rpb24gQmZhKGUpe1diZShlLFtbLyhodHRwcz86XC9cL3x3d3coPz1cLikpKFstLlx3XSspKFteIFx0XHJcbl0qKS9naSxIZmFdLFsvKD88PV58XHN8XHB7UH18XHB7U30pKFstLlx3K10rKUAoWy1cd10rKD86XC5bLVx3XSspKykvZ3UscWZhXV0se2lnbm9yZTpbImxpbmsiLCJsaW5rUmVmZXJlbmNlIl19KX1mdW5jdGlvbiBIZmEoZSx0LHIsYSxpKXtsZXQgbz0iIjtpZighSHF0KGkpfHwoL153L2kudGVzdCh0KSYmKHI9dCtyLHQ9IiIsbz0iaHR0cDovLyIpLCFqZmEocikpKXJldHVybiExO2xldCBuPVZmYShyK2EpO2lmKCFuWzBdKXJldHVybiExO2xldCBzPXt0eXBlOiJsaW5rIix0aXRsZTpudWxsLHVybDpvK3QrblswXSxjaGlsZHJlbjpbe3R5cGU6InRleHQiLHZhbHVlOnQrblswXX1dfTtyZXR1cm4gblsxXT9bcyx7dHlwZToidGV4dCIsdmFsdWU6blsxXX1dOnN9ZnVuY3Rpb24gcWZhKGUsdCxyLGEpe3JldHVybiFIcXQoYSwhMCl8fC9bLVxkX10kLy50ZXN0KHIpPyExOnt0eXBlOiJsaW5rIix0aXRsZTpudWxsLHVybDoibWFpbHRvOiIrdCsiQCIrcixjaGlsZHJlbjpbe3R5cGU6InRleHQiLHZhbHVlOnQrIkAiK3J9XX19ZnVuY3Rpb24gamZhKGUpe2xldCB0PWUuc3BsaXQoIi4iKTtyZXR1cm4hKHQubGVuZ3RoPDJ8fHRbdC5sZW5ndGgtMV0mJigvXy8udGVzdCh0W3QubGVuZ3RoLTFdKXx8IS9bYS16QS1aXGRdLy50ZXN0KHRbdC5sZW5ndGgtMV0pKXx8dFt0Lmxlbmd0aC0yXSYmKC9fLy50ZXN0KHRbdC5sZW5ndGgtMl0pfHwhL1thLXpBLVpcZF0vLnRlc3QodFt0Lmxlbmd0aC0yXSkpKX1mdW5jdGlvbiBWZmEoZSl7bGV0IHQ9L1shIiYnKSwuOjs8Pj9cXX1dKyQvLmV4ZWMoZSk7aWYoIXQpcmV0dXJuW2Usdm9pZCAwXTtlPWUuc2xpY2UoMCx0LmluZGV4KTtsZXQgcj10WzBdLGE9ci5pbmRleE9mKCIpIiksaT1hOShlLCIoIiksbz1hOShlLCIpIik7Zm9yKDthIT09LTEmJmk+bzspZSs9ci5zbGljZSgwLGErMSkscj1yLnNsaWNlKGErMSksYT1yLmluZGV4T2YoIikiKSxvKys7cmV0dXJuW2Uscl19ZnVuY3Rpb24gSHF0KGUsdCl7bGV0IHI9ZS5pbnB1dC5jaGFyQ29kZUF0KGUuaW5kZXgtMSk7cmV0dXJuKGUuaW5kZXg9PT0wfHxLMihyKXx8RjYocikpJiYoIXR8fHIhPT00Nyl9dmFyIEdiZSxZYmUscXF0PWwoKCk9PntVYmUoKTtQNCgpO3ByKCk7QnF0KCk7R2JlPSJwaHJhc2luZyIsWWJlPVsiYXV0b2xpbmsiLCJsaW5rIiwiaW1hZ2UiLCJsYWJlbCJdfSk7dmFyIGpxdD1sKCgpPT57cXF0KCl9KTtmdW5jdGlvbiBZYShlKXtyZXR1cm4gZS5yZXBsYWNlKC9bXHRcblxyIF0rL2csIiAiKS5yZXBsYWNlKC9eIHwgJC9nLCIiKS50b0xvd2VyQ2FzZSgpLnRvVXBwZXJDYXNlKCl9dmFyIEY0PWwoKCk9Pnt9KTtmdW5jdGlvbiBVZmEoKXt0aGlzLmJ1ZmZlcigpfWZ1bmN0aW9uIFdmYShlKXt0aGlzLmVudGVyKHt0eXBlOiJmb290bm90ZVJlZmVyZW5jZSIsaWRlbnRpZmllcjoiIixsYWJlbDoiIn0sZSl9ZnVuY3Rpb24gR2ZhKCl7dGhpcy5idWZmZXIoKX1mdW5jdGlvbiBZZmEoZSl7dGhpcy5lbnRlcih7dHlwZToiZm9vdG5vdGVEZWZpbml0aW9uIixpZGVudGlmaWVyOiIiLGxhYmVsOiIiLGNoaWxkcmVuOltdfSxlKX1mdW5jdGlvbiBaZmEoZSl7bGV0IHQ9dGhpcy5yZXN1bWUoKSxyPXRoaXMuc3RhY2tbdGhpcy5zdGFjay5sZW5ndGgtMV07ci50eXBlLHIuaWRlbnRpZmllcj1ZYSh0aGlzLnNsaWNlU2VyaWFsaXplKGUpKS50b0xvd2VyQ2FzZSgpLHIubGFiZWw9dH1mdW5jdGlvbiBYZmEoZSl7dGhpcy5leGl0KGUpfWZ1bmN0aW9uIFFmYShlKXtsZXQgdD10aGlzLnJlc3VtZSgpLHI9dGhpcy5zdGFja1t0aGlzLnN0YWNrLmxlbmd0aC0xXTtyLnR5cGUsci5pZGVudGlmaWVyPVlhKHRoaXMuc2xpY2VTZXJpYWxpemUoZSkpLnRvTG93ZXJDYXNlKCksci5sYWJlbD10fWZ1bmN0aW9uIEtmYShlKXt0aGlzLmV4aXQoZSl9ZnVuY3Rpb24gSmZhKCl7cmV0dXJuIlsifWZ1bmN0aW9uIFZxdChlLHQscixhKXtsZXQgaT1yLmNyZWF0ZVRyYWNrZXIoYSksbz1pLm1vdmUoIlteIiksbj1yLmVudGVyKCJmb290bm90ZVJlZmVyZW5jZSIpLHM9ci5lbnRlcigicmVmZXJlbmNlIik7cmV0dXJuIG8rPWkubW92ZShyLnNhZmUoci5hc3NvY2lhdGlvbklkKGUpLHthZnRlcjoiXSIsYmVmb3JlOm99KSkscygpLG4oKSxvKz1pLm1vdmUoIl0iKSxvfWZ1bmN0aW9uIEtiZSgpe3JldHVybntlbnRlcjp7Z2ZtRm9vdG5vdGVDYWxsU3RyaW5nOlVmYSxnZm1Gb290bm90ZUNhbGw6V2ZhLGdmbUZvb3Rub3RlRGVmaW5pdGlvbkxhYmVsU3RyaW5nOkdmYSxnZm1Gb290bm90ZURlZmluaXRpb246WWZhfSxleGl0OntnZm1Gb290bm90ZUNhbGxTdHJpbmc6WmZhLGdmbUZvb3Rub3RlQ2FsbDpYZmEsZ2ZtRm9vdG5vdGVEZWZpbml0aW9uTGFiZWxTdHJpbmc6UWZhLGdmbUZvb3Rub3RlRGVmaW5pdGlvbjpLZmF9fX1mdW5jdGlvbiBKYmUoZSl7bGV0IHQ9ITE7cmV0dXJuIGUmJmUuZmlyc3RMaW5lQmxhbmsmJih0PSEwKSx7aGFuZGxlcnM6e2Zvb3Rub3RlRGVmaW5pdGlvbjpyLGZvb3Rub3RlUmVmZXJlbmNlOlZxdH0sdW5zYWZlOlt7Y2hhcmFjdGVyOiJbIixpbkNvbnN0cnVjdDpbImxhYmVsIiwicGhyYXNpbmciLCJyZWZlcmVuY2UiXX1dfTtmdW5jdGlvbiByKGEsaSxvLG4pe2xldCBzPW8uY3JlYXRlVHJhY2tlcihuKSxjPXMubW92ZSgiW14iKSxkPW8uZW50ZXIoImZvb3Rub3RlRGVmaW5pdGlvbiIpLGY9by5lbnRlcigibGFiZWwiKTtyZXR1cm4gYys9cy5tb3ZlKG8uc2FmZShvLmFzc29jaWF0aW9uSWQoYSkse2JlZm9yZTpjLGFmdGVyOiJdIn0pKSxmKCksYys9cy5tb3ZlKCJdOiIpLGEuY2hpbGRyZW4mJmEuY2hpbGRyZW4ubGVuZ3RoPjAmJihzLnNoaWZ0KDQpLGMrPXMubW92ZSgodD9gCmA6IiAiKStvLmluZGVudExpbmVzKG8uY29udGFpbmVyRmxvdyhhLHMuY3VycmVudCgpKSx0P1VxdDplNWEpKSksZCgpLGN9fWZ1bmN0aW9uIGU1YShlLHQscil7cmV0dXJuIHQ9PT0wP2U6VXF0KGUsdCxyKX1mdW5jdGlvbiBVcXQoZSx0LHIpe3JldHVybihyPyIiOiIgICAgIikrZX12YXIgV3F0PWwoKCk9PntQNCgpO0Y0KCk7VnF0LnBlZWs9SmZhfSk7dmFyIEdxdD1sKCgpPT57V3F0KCl9KTtmdW5jdGlvbiBldmUoKXtyZXR1cm57Y2FuQ29udGFpbkVvbHM6WyJkZWxldGUiXSxlbnRlcjp7c3RyaWtldGhyb3VnaDpyNWF9LGV4aXQ6e3N0cmlrZXRocm91Z2g6YTVhfX19ZnVuY3Rpb24gdHZlKCl7cmV0dXJue3Vuc2FmZTpbe2NoYXJhY3RlcjoifiIsaW5Db25zdHJ1Y3Q6InBocmFzaW5nIixub3RJbkNvbnN0cnVjdDp0NWF9XSxoYW5kbGVyczp7ZGVsZXRlOllxdH19fWZ1bmN0aW9uIHI1YShlKXt0aGlzLmVudGVyKHt0eXBlOiJkZWxldGUiLGNoaWxkcmVuOltdfSxlKX1mdW5jdGlvbiBhNWEoZSl7dGhpcy5leGl0KGUpfWZ1bmN0aW9uIFlxdChlLHQscixhKXtsZXQgaT1yLmNyZWF0ZVRyYWNrZXIoYSksbz1yLmVudGVyKCJzdHJpa2V0aHJvdWdoIiksbj1pLm1vdmUoIn5+Iik7cmV0dXJuIG4rPXIuY29udGFpbmVyUGhyYXNpbmcoZSx7Li4uaS5jdXJyZW50KCksYmVmb3JlOm4sYWZ0ZXI6In4ifSksbis9aS5tb3ZlKCJ+fiIpLG8oKSxufWZ1bmN0aW9uIGk1YSgpe3JldHVybiJ+In12YXIgdDVhLFpxdD1sKCgpPT57dDVhPVsiYXV0b2xpbmsiLCJkZXN0aW5hdGlvbkxpdGVyYWwiLCJkZXN0aW5hdGlvblJhdyIsInJlZmVyZW5jZSIsInRpdGxlUXVvdGUiLCJ0aXRsZUFwb3N0cm9waGUiXTtZcXQucGVlaz1pNWF9KTt2YXIgWHF0PWwoKCk9PntacXQoKX0pO2Z1bmN0aW9uIG81YShlKXtyZXR1cm4gZS5sZW5ndGh9ZnVuY3Rpb24gS3F0KGUsdCl7bGV0IHI9dHx8e30sYT0oci5hbGlnbnx8W10pLmNvbmNhdCgpLGk9ci5zdHJpbmdMZW5ndGh8fG81YSxvPVtdLG49W10scz1bXSxjPVtdLGQ9MCxmPS0xO2Zvcig7KytmPGUubGVuZ3RoOyl7bGV0IHg9W10sZz1bXSx2PS0xO2ZvcihlW2ZdLmxlbmd0aD5kJiYoZD1lW2ZdLmxlbmd0aCk7Kyt2PGVbZl0ubGVuZ3RoOyl7bGV0IHc9bjVhKGVbZl1bdl0pO2lmKHIuYWxpZ25EZWxpbWl0ZXJzIT09ITEpe2xldCBNPWkodyk7Z1t2XT1NLChjW3ZdPT09dm9pZCAwfHxNPmNbdl0pJiYoY1t2XT1NKX14LnB1c2godyl9bltmXT14LHNbZl09Z31sZXQgdT0tMTtpZih0eXBlb2YgYT09Im9iamVjdCImJiJsZW5ndGgiaW4gYSlmb3IoOysrdTxkOylvW3VdPVFxdChhW3VdKTtlbHNle2xldCB4PVFxdChhKTtmb3IoOysrdTxkOylvW3VdPXh9dT0tMTtsZXQgcD1bXSxoPVtdO2Zvcig7Kyt1PGQ7KXtsZXQgeD1vW3VdLGc9IiIsdj0iIjt4PT09OTk/KGc9IjoiLHY9IjoiKTp4PT09MTA4P2c9IjoiOng9PT0xMTQmJih2PSI6Iik7bGV0IHc9ci5hbGlnbkRlbGltaXRlcnM9PT0hMT8xOk1hdGgubWF4KDEsY1t1XS1nLmxlbmd0aC12Lmxlbmd0aCksTT1nKyItIi5yZXBlYXQodykrdjtyLmFsaWduRGVsaW1pdGVycyE9PSExJiYodz1nLmxlbmd0aCt3K3YubGVuZ3RoLHc+Y1t1XSYmKGNbdV09dyksaFt1XT13KSxwW3VdPU19bi5zcGxpY2UoMSwwLHApLHMuc3BsaWNlKDEsMCxoKSxmPS0xO2xldCBiPVtdO2Zvcig7KytmPG4ubGVuZ3RoOyl7bGV0IHg9bltmXSxnPXNbZl07dT0tMTtsZXQgdj1bXTtmb3IoOysrdTxkOyl7bGV0IHc9eFt1XXx8IiIsTT0iIixGPSIiO2lmKHIuYWxpZ25EZWxpbWl0ZXJzIT09ITEpe2xldCBDPWNbdV0tKGdbdV18fDApLGs9b1t1XTtrPT09MTE0P009IiAiLnJlcGVhdChDKTprPT09OTk/QyUyPyhNPSIgIi5yZXBlYXQoQy8yKy41KSxGPSIgIi5yZXBlYXQoQy8yLS41KSk6KE09IiAiLnJlcGVhdChDLzIpLEY9TSk6Rj0iICIucmVwZWF0KEMpfXIuZGVsaW1pdGVyU3RhcnQhPT0hMSYmIXUmJnYucHVzaCgifCIpLHIucGFkZGluZyE9PSExJiYhKHIuYWxpZ25EZWxpbWl0ZXJzPT09ITEmJnc9PT0iIikmJihyLmRlbGltaXRlclN0YXJ0IT09ITF8fHUpJiZ2LnB1c2goIiAiKSxyLmFsaWduRGVsaW1pdGVycyE9PSExJiZ2LnB1c2goTSksdi5wdXNoKHcpLHIuYWxpZ25EZWxpbWl0ZXJzIT09ITEmJnYucHVzaChGKSxyLnBhZGRpbmchPT0hMSYmdi5wdXNoKCIgIiksKHIuZGVsaW1pdGVyRW5kIT09ITF8fHUhPT1kLTEpJiZ2LnB1c2goInwiKX1iLnB1c2goci5kZWxpbWl0ZXJFbmQ9PT0hMT92LmpvaW4oIiIpLnJlcGxhY2UoLyArJC8sIiIpOnYuam9pbigiIikpfXJldHVybiBiLmpvaW4oYApgKX1mdW5jdGlvbiBuNWEoZSl7cmV0dXJuIGU9PW51bGw/IiI6U3RyaW5nKGUpfWZ1bmN0aW9uIFFxdChlKXtsZXQgdD10eXBlb2YgZT09InN0cmluZyI/ZS5jb2RlUG9pbnRBdCgwKTowO3JldHVybiB0PT09Njd8fHQ9PT05OT85OTp0PT09NzZ8fHQ9PT0xMDg/MTA4OnQ9PT04Mnx8dD09PTExND8xMTQ6MH12YXIgSnF0PWwoKCk9Pnt9KTtmdW5jdGlvbiBQb2UoZSx0KXtsZXQgcj10fHx7fTtmdW5jdGlvbiBhKGksLi4ubyl7bGV0IG49YS5pbnZhbGlkLHM9YS5oYW5kbGVycztpZihpJiZlanQuY2FsbChpLGUpKXtsZXQgYz1TdHJpbmcoaVtlXSk7bj1lanQuY2FsbChzLGMpP3NbY106YS51bmtub3dufWlmKG4pcmV0dXJuIG4uY2FsbCh0aGlzLGksLi4ubyl9cmV0dXJuIGEuaGFuZGxlcnM9ci5oYW5kbGVyc3x8e30sYS5pbnZhbGlkPXIuaW52YWxpZCxhLnVua25vd249ci51bmtub3duLGF9dmFyIGVqdCxydmU9bCgoKT0+e2VqdD17fS5oYXNPd25Qcm9wZXJ0eX0pO2Z1bmN0aW9uIGF2ZShlLHQpe2xldCByPS0xLGE7aWYodC5leHRlbnNpb25zKWZvcig7KytyPHQuZXh0ZW5zaW9ucy5sZW5ndGg7KWF2ZShlLHQuZXh0ZW5zaW9uc1tyXSk7Zm9yKGEgaW4gdClpZihzNWEuY2FsbCh0LGEpKXN3aXRjaChhKXtjYXNlImV4dGVuc2lvbnMiOmJyZWFrO2Nhc2UidW5zYWZlIjp7dGp0KGVbYV0sdFthXSk7YnJlYWt9Y2FzZSJqb2luIjp7dGp0KGVbYV0sdFthXSk7YnJlYWt9Y2FzZSJoYW5kbGVycyI6e2w1YShlW2FdLHRbYV0pO2JyZWFrfWRlZmF1bHQ6ZS5vcHRpb25zW2FdPXRbYV19cmV0dXJuIGV9ZnVuY3Rpb24gdGp0KGUsdCl7dCYmZS5wdXNoKC4uLnQpfWZ1bmN0aW9uIGw1YShlLHQpe3QmJk9iamVjdC5hc3NpZ24oZSx0KX12YXIgczVhLHJqdD1sKCgpPT57czVhPXt9Lmhhc093blByb3BlcnR5fSk7ZnVuY3Rpb24gYWp0KGUsdCxyLGEpe2xldCBpPXIuZW50ZXIoImJsb2NrcXVvdGUiKSxvPXIuY3JlYXRlVHJhY2tlcihhKTtvLm1vdmUoIj4gIiksby5zaGlmdCgyKTtsZXQgbj1yLmluZGVudExpbmVzKHIuY29udGFpbmVyRmxvdyhlLG8uY3VycmVudCgpKSxjNWEpO3JldHVybiBpKCksbn1mdW5jdGlvbiBjNWEoZSx0LHIpe3JldHVybiI+Iisocj8iIjoiICIpK2V9dmFyIGlqdD1sKCgpPT57fSk7ZnVuY3Rpb24gSW9lKGUsdCl7cmV0dXJuIG9qdChlLHQuaW5Db25zdHJ1Y3QsITApJiYhb2p0KGUsdC5ub3RJbkNvbnN0cnVjdCwhMSl9ZnVuY3Rpb24gb2p0KGUsdCxyKXtpZih0eXBlb2YgdD09InN0cmluZyImJih0PVt0XSksIXR8fHQubGVuZ3RoPT09MClyZXR1cm4gcjtsZXQgYT0tMTtmb3IoOysrYTx0Lmxlbmd0aDspaWYoZS5pbmNsdWRlcyh0W2FdKSlyZXR1cm4hMDtyZXR1cm4hMX12YXIgaXZlPWwoKCk9Pnt9KTtmdW5jdGlvbiBvdmUoZSx0LHIsYSl7bGV0IGk9LTE7Zm9yKDsrK2k8ci51bnNhZmUubGVuZ3RoOylpZihyLnVuc2FmZVtpXS5jaGFyYWN0ZXI9PT1gCmAmJklvZShyLnN0YWNrLHIudW5zYWZlW2ldKSlyZXR1cm4vWyBcdF0vLnRlc3QoYS5iZWZvcmUpPyIiOiIgIjtyZXR1cm5gXFwKYH12YXIgbmp0PWwoKCk9PntpdmUoKX0pO2Z1bmN0aW9uIHNqdChlLHQpe2xldCByPVN0cmluZyhlKSxhPXIuaW5kZXhPZih0KSxpPWEsbz0wLG49MDtpZih0eXBlb2YgdCE9InN0cmluZyIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRXhwZWN0ZWQgc3Vic3RyaW5nIik7Zm9yKDthIT09LTE7KWE9PT1pPysrbz5uJiYobj1vKTpvPTEsaT1hK3QubGVuZ3RoLGE9ci5pbmRleE9mKHQsaSk7cmV0dXJuIG59dmFyIGxqdD1sKCgpPT57fSk7ZnVuY3Rpb24ga3koZSx0KXtyZXR1cm4hISh0Lm9wdGlvbnMuZmVuY2VzPT09ITEmJmUudmFsdWUmJiFlLmxhbmcmJi9bXiBcclxuXS8udGVzdChlLnZhbHVlKSYmIS9eW1x0IF0qKD86W1xyXG5dfCQpfCg/Ol58W1xyXG5dKVtcdCBdKiQvLnRlc3QoZS52YWx1ZSkpfXZhciBudmU9bCgoKT0+e30pO2Z1bmN0aW9uIGNqdChlKXtsZXQgdD1lLm9wdGlvbnMuZmVuY2V8fCJgIjtpZih0IT09ImAiJiZ0IT09In4iKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IHNlcmlhbGl6ZSBjb2RlIHdpdGggYCIrdCsiYCBmb3IgYG9wdGlvbnMuZmVuY2VgLCBleHBlY3RlZCBgYCBgIGBgIG9yIGB+YCIpO3JldHVybiB0fXZhciBkanQ9bCgoKT0+e30pO2Z1bmN0aW9uIHVqdChlLHQscixhKXtsZXQgaT1janQociksbz1lLnZhbHVlfHwiIixuPWk9PT0iYCI/IkdyYXZlQWNjZW50IjoiVGlsZGUiO2lmKGt5KGUscikpe2xldCB1PXIuZW50ZXIoImNvZGVJbmRlbnRlZCIpLHA9ci5pbmRlbnRMaW5lcyhvLGQ1YSk7cmV0dXJuIHUoKSxwfWxldCBzPXIuY3JlYXRlVHJhY2tlcihhKSxjPWkucmVwZWF0KE1hdGgubWF4KHNqdChvLGkpKzEsMykpLGQ9ci5lbnRlcigiY29kZUZlbmNlZCIpLGY9cy5tb3ZlKGMpO2lmKGUubGFuZyl7bGV0IHU9ci5lbnRlcihgY29kZUZlbmNlZExhbmcke259YCk7Zis9cy5tb3ZlKHIuc2FmZShlLmxhbmcse2JlZm9yZTpmLGFmdGVyOiIgIixlbmNvZGU6WyJgIl0sLi4ucy5jdXJyZW50KCl9KSksdSgpfWlmKGUubGFuZyYmZS5tZXRhKXtsZXQgdT1yLmVudGVyKGBjb2RlRmVuY2VkTWV0YSR7bn1gKTtmKz1zLm1vdmUoIiAiKSxmKz1zLm1vdmUoci5zYWZlKGUubWV0YSx7YmVmb3JlOmYsYWZ0ZXI6YApgLGVuY29kZTpbImAiXSwuLi5zLmN1cnJlbnQoKX0pKSx1KCl9cmV0dXJuIGYrPXMubW92ZShgCmApLG8mJihmKz1zLm1vdmUobytgCmApKSxmKz1zLm1vdmUoYyksZCgpLGZ9ZnVuY3Rpb24gZDVhKGUsdCxyKXtyZXR1cm4ocj8iIjoiICAgICIpK2V9dmFyIGZqdD1sKCgpPT57bGp0KCk7bnZlKCk7ZGp0KCl9KTtmdW5jdGlvbiBpOShlKXtsZXQgdD1lLm9wdGlvbnMucXVvdGV8fCciJztpZih0IT09JyInJiZ0IT09IiciKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IHNlcmlhbGl6ZSB0aXRsZSB3aXRoIGAiK3QrImAgZm9yIGBvcHRpb25zLnF1b3RlYCwgZXhwZWN0ZWQgYFwiYCwgb3IgYCdgIik7cmV0dXJuIHR9dmFyIE5vZT1sKCgpPT57fSk7ZnVuY3Rpb24gcGp0KGUsdCxyLGEpe2xldCBpPWk5KHIpLG89aT09PSciJz8iUXVvdGUiOiJBcG9zdHJvcGhlIixuPXIuZW50ZXIoImRlZmluaXRpb24iKSxzPXIuZW50ZXIoImxhYmVsIiksYz1yLmNyZWF0ZVRyYWNrZXIoYSksZD1jLm1vdmUoIlsiKTtyZXR1cm4gZCs9Yy5tb3ZlKHIuc2FmZShyLmFzc29jaWF0aW9uSWQoZSkse2JlZm9yZTpkLGFmdGVyOiJdIiwuLi5jLmN1cnJlbnQoKX0pKSxkKz1jLm1vdmUoIl06ICIpLHMoKSwhZS51cmx8fC9bXDAtIFx1MDA3Rl0vLnRlc3QoZS51cmwpPyhzPXIuZW50ZXIoImRlc3RpbmF0aW9uTGl0ZXJhbCIpLGQrPWMubW92ZSgiPCIpLGQrPWMubW92ZShyLnNhZmUoZS51cmwse2JlZm9yZTpkLGFmdGVyOiI+IiwuLi5jLmN1cnJlbnQoKX0pKSxkKz1jLm1vdmUoIj4iKSk6KHM9ci5lbnRlcigiZGVzdGluYXRpb25SYXciKSxkKz1jLm1vdmUoci5zYWZlKGUudXJsLHtiZWZvcmU6ZCxhZnRlcjplLnRpdGxlPyIgIjpgCmAsLi4uYy5jdXJyZW50KCl9KSkpLHMoKSxlLnRpdGxlJiYocz1yLmVudGVyKGB0aXRsZSR7b31gKSxkKz1jLm1vdmUoIiAiK2kpLGQrPWMubW92ZShyLnNhZmUoZS50aXRsZSx7YmVmb3JlOmQsYWZ0ZXI6aSwuLi5jLmN1cnJlbnQoKX0pKSxkKz1jLm1vdmUoaSkscygpKSxuKCksZH12YXIgaGp0PWwoKCk9PntOb2UoKX0pO2Z1bmN0aW9uIG1qdChlKXtsZXQgdD1lLm9wdGlvbnMuZW1waGFzaXN8fCIqIjtpZih0IT09IioiJiZ0IT09Il8iKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IHNlcmlhbGl6ZSBlbXBoYXNpcyB3aXRoIGAiK3QrImAgZm9yIGBvcHRpb25zLmVtcGhhc2lzYCwgZXhwZWN0ZWQgYCpgLCBvciBgX2AiKTtyZXR1cm4gdH12YXIgZ2p0PWwoKCk9Pnt9KTtmdW5jdGlvbiBybihlKXtyZXR1cm4iJiN4IitlLnRvU3RyaW5nKDE2KS50b1VwcGVyQ2FzZSgpKyI7In12YXIgbzk9bCgoKT0+e30pO2Z1bmN0aW9uIG1jKGUpe2lmKGU9PT1udWxsfHxscihlKXx8SzIoZSkpcmV0dXJuIDE7aWYoRjYoZSkpcmV0dXJuIDJ9dmFyIEZvZT1sKCgpPT57cHIoKX0pO2Z1bmN0aW9uIG45KGUsdCxyKXtsZXQgYT1tYyhlKSxpPW1jKHQpO3JldHVybiBhPT09dm9pZCAwP2k9PT12b2lkIDA/cj09PSJfIj97aW5zaWRlOiEwLG91dHNpZGU6ITB9OntpbnNpZGU6ITEsb3V0c2lkZTohMX06aT09PTE/e2luc2lkZTohMCxvdXRzaWRlOiEwfTp7aW5zaWRlOiExLG91dHNpZGU6ITB9OmE9PT0xP2k9PT12b2lkIDA/e2luc2lkZTohMSxvdXRzaWRlOiExfTppPT09MT97aW5zaWRlOiEwLG91dHNpZGU6ITB9OntpbnNpZGU6ITEsb3V0c2lkZTohMX06aT09PXZvaWQgMD97aW5zaWRlOiExLG91dHNpZGU6ITF9Omk9PT0xP3tpbnNpZGU6ITAsb3V0c2lkZTohMX06e2luc2lkZTohMSxvdXRzaWRlOiExfX12YXIgc3ZlPWwoKCk9PntGb2UoKX0pO2Z1bmN0aW9uIGx2ZShlLHQscixhKXtsZXQgaT1tanQociksbz1yLmVudGVyKCJlbXBoYXNpcyIpLG49ci5jcmVhdGVUcmFja2VyKGEpLHM9bi5tb3ZlKGkpLGM9bi5tb3ZlKHIuY29udGFpbmVyUGhyYXNpbmcoZSx7YWZ0ZXI6aSxiZWZvcmU6cywuLi5uLmN1cnJlbnQoKX0pKSxkPWMuY2hhckNvZGVBdCgwKSxmPW45KGEuYmVmb3JlLmNoYXJDb2RlQXQoYS5iZWZvcmUubGVuZ3RoLTEpLGQsaSk7Zi5pbnNpZGUmJihjPXJuKGQpK2Muc2xpY2UoMSkpO2xldCB1PWMuY2hhckNvZGVBdChjLmxlbmd0aC0xKSxwPW45KGEuYWZ0ZXIuY2hhckNvZGVBdCgwKSx1LGkpO3AuaW5zaWRlJiYoYz1jLnNsaWNlKDAsLTEpK3JuKHUpKTtsZXQgaD1uLm1vdmUoaSk7cmV0dXJuIG8oKSxyLmF0dGVudGlvbkVuY29kZVN1cnJvdW5kaW5nSW5mbz17YWZ0ZXI6cC5vdXRzaWRlLGJlZm9yZTpmLm91dHNpZGV9LHMrYytofWZ1bmN0aW9uIHU1YShlLHQscil7cmV0dXJuIHIub3B0aW9ucy5lbXBoYXNpc3x8IioifXZhciB4anQ9bCgoKT0+e2dqdCgpO285KCk7c3ZlKCk7bHZlLnBlZWs9dTVhfSk7ZnVuY3Rpb24gU3koZSx0LHIsYSl7bGV0IGksbyxuO3R5cGVvZiB0PT0iZnVuY3Rpb24iJiZ0eXBlb2YgciE9ImZ1bmN0aW9uIj8obz12b2lkIDAsbj10LGk9cik6KG89dCxuPXIsaT1hKSxNeShlLG8scyxpKTtmdW5jdGlvbiBzKGMsZCl7bGV0IGY9ZFtkLmxlbmd0aC0xXSx1PWY/Zi5jaGlsZHJlbi5pbmRleE9mKGMpOnZvaWQgMDtyZXR1cm4gbihjLHUsZil9fXZhciBianQ9bCgoKT0+eyRvZSgpOyRvZSgpfSk7dmFyIGN2ZT1sKCgpPT57Ymp0KCl9KTtmdW5jdGlvbiBSNihlLHQpe2xldCByPXR8fGY1YSxhPXR5cGVvZiByLmluY2x1ZGVJbWFnZUFsdD09ImJvb2xlYW4iP3IuaW5jbHVkZUltYWdlQWx0OiEwLGk9dHlwZW9mIHIuaW5jbHVkZUh0bWw9PSJib29sZWFuIj9yLmluY2x1ZGVIdG1sOiEwO3JldHVybiB2anQoZSxhLGkpfWZ1bmN0aW9uIHZqdChlLHQscil7aWYocDVhKGUpKXtpZigidmFsdWUiaW4gZSlyZXR1cm4gZS50eXBlPT09Imh0bWwiJiYhcj8iIjplLnZhbHVlO2lmKHQmJiJhbHQiaW4gZSYmZS5hbHQpcmV0dXJuIGUuYWx0O2lmKCJjaGlsZHJlbiJpbiBlKXJldHVybiB5anQoZS5jaGlsZHJlbix0LHIpfXJldHVybiBBcnJheS5pc0FycmF5KGUpP3lqdChlLHQscik6IiJ9ZnVuY3Rpb24geWp0KGUsdCxyKXtsZXQgYT1bXSxpPS0xO2Zvcig7KytpPGUubGVuZ3RoOylhW2ldPXZqdChlW2ldLHQscik7cmV0dXJuIGEuam9pbigiIil9ZnVuY3Rpb24gcDVhKGUpe3JldHVybiEhKGUmJnR5cGVvZiBlPT0ib2JqZWN0Iil9dmFyIGY1YSx3anQ9bCgoKT0+e2Y1YT17fX0pO3ZhciBPb2U9bCgoKT0+e3dqdCgpfSk7ZnVuY3Rpb24gUm9lKGUsdCl7bGV0IHI9ITE7cmV0dXJuIFN5KGUsZnVuY3Rpb24oYSl7aWYoInZhbHVlImluIGEmJi9ccj9cbnxcci8udGVzdChhLnZhbHVlKXx8YS50eXBlPT09ImJyZWFrIilyZXR1cm4gcj0hMCxPNn0pLCEhKCghZS5kZXB0aHx8ZS5kZXB0aDwzKSYmUjYoZSkmJih0Lm9wdGlvbnMuc2V0ZXh0fHxyKSl9dmFyIGR2ZT1sKCgpPT57Y3ZlKCk7T29lKCl9KTtmdW5jdGlvbiBNanQoZSx0LHIsYSl7bGV0IGk9TWF0aC5tYXgoTWF0aC5taW4oNixlLmRlcHRofHwxKSwxKSxvPXIuY3JlYXRlVHJhY2tlcihhKTtpZihSb2UoZSxyKSl7bGV0IGY9ci5lbnRlcigiaGVhZGluZ1NldGV4dCIpLHU9ci5lbnRlcigicGhyYXNpbmciKSxwPXIuY29udGFpbmVyUGhyYXNpbmcoZSx7Li4uby5jdXJyZW50KCksYmVmb3JlOmAKYCxhZnRlcjpgCmB9KTtyZXR1cm4gdSgpLGYoKSxwK2AKYCsoaT09PTE/Ij0iOiItIikucmVwZWF0KHAubGVuZ3RoLShNYXRoLm1heChwLmxhc3RJbmRleE9mKCJcciIpLHAubGFzdEluZGV4T2YoYApgKSkrMSkpfWxldCBuPSIjIi5yZXBlYXQoaSkscz1yLmVudGVyKCJoZWFkaW5nQXR4IiksYz1yLmVudGVyKCJwaHJhc2luZyIpO28ubW92ZShuKyIgIik7bGV0IGQ9ci5jb250YWluZXJQaHJhc2luZyhlLHtiZWZvcmU6IiMgIixhZnRlcjpgCmAsLi4uby5jdXJyZW50KCl9KTtyZXR1cm4vXltcdCBdLy50ZXN0KGQpJiYoZD1ybihkLmNoYXJDb2RlQXQoMCkpK2Quc2xpY2UoMSkpLGQ9ZD9uKyIgIitkOm4sci5vcHRpb25zLmNsb3NlQXR4JiYoZCs9IiAiK24pLGMoKSxzKCksZH12YXIga2p0PWwoKCk9PntvOSgpO2R2ZSgpfSk7ZnVuY3Rpb24gdXZlKGUpe3JldHVybiBlLnZhbHVlfHwiIn1mdW5jdGlvbiBoNWEoKXtyZXR1cm4iPCJ9dmFyIFNqdD1sKCgpPT57dXZlLnBlZWs9aDVhfSk7ZnVuY3Rpb24gZnZlKGUsdCxyLGEpe2xldCBpPWk5KHIpLG89aT09PSciJz8iUXVvdGUiOiJBcG9zdHJvcGhlIixuPXIuZW50ZXIoImltYWdlIikscz1yLmVudGVyKCJsYWJlbCIpLGM9ci5jcmVhdGVUcmFja2VyKGEpLGQ9Yy5tb3ZlKCIhWyIpO3JldHVybiBkKz1jLm1vdmUoci5zYWZlKGUuYWx0LHtiZWZvcmU6ZCxhZnRlcjoiXSIsLi4uYy5jdXJyZW50KCl9KSksZCs9Yy5tb3ZlKCJdKCIpLHMoKSwhZS51cmwmJmUudGl0bGV8fC9bXDAtIFx1MDA3Rl0vLnRlc3QoZS51cmwpPyhzPXIuZW50ZXIoImRlc3RpbmF0aW9uTGl0ZXJhbCIpLGQrPWMubW92ZSgiPCIpLGQrPWMubW92ZShyLnNhZmUoZS51cmwse2JlZm9yZTpkLGFmdGVyOiI+IiwuLi5jLmN1cnJlbnQoKX0pKSxkKz1jLm1vdmUoIj4iKSk6KHM9ci5lbnRlcigiZGVzdGluYXRpb25SYXciKSxkKz1jLm1vdmUoci5zYWZlKGUudXJsLHtiZWZvcmU6ZCxhZnRlcjplLnRpdGxlPyIgIjoiKSIsLi4uYy5jdXJyZW50KCl9KSkpLHMoKSxlLnRpdGxlJiYocz1yLmVudGVyKGB0aXRsZSR7b31gKSxkKz1jLm1vdmUoIiAiK2kpLGQrPWMubW92ZShyLnNhZmUoZS50aXRsZSx7YmVmb3JlOmQsYWZ0ZXI6aSwuLi5jLmN1cnJlbnQoKX0pKSxkKz1jLm1vdmUoaSkscygpKSxkKz1jLm1vdmUoIikiKSxuKCksZH1mdW5jdGlvbiBtNWEoKXtyZXR1cm4iISJ9dmFyIHpqdD1sKCgpPT57Tm9lKCk7ZnZlLnBlZWs9bTVhfSk7ZnVuY3Rpb24gcHZlKGUsdCxyLGEpe2xldCBpPWUucmVmZXJlbmNlVHlwZSxvPXIuZW50ZXIoImltYWdlUmVmZXJlbmNlIiksbj1yLmVudGVyKCJsYWJlbCIpLHM9ci5jcmVhdGVUcmFja2VyKGEpLGM9cy5tb3ZlKCIhWyIpLGQ9ci5zYWZlKGUuYWx0LHtiZWZvcmU6YyxhZnRlcjoiXSIsLi4ucy5jdXJyZW50KCl9KTtjKz1zLm1vdmUoZCsiXVsiKSxuKCk7bGV0IGY9ci5zdGFjaztyLnN0YWNrPVtdLG49ci5lbnRlcigicmVmZXJlbmNlIik7bGV0IHU9ci5zYWZlKHIuYXNzb2NpYXRpb25JZChlKSx7YmVmb3JlOmMsYWZ0ZXI6Il0iLC4uLnMuY3VycmVudCgpfSk7cmV0dXJuIG4oKSxyLnN0YWNrPWYsbygpLGk9PT0iZnVsbCJ8fCFkfHxkIT09dT9jKz1zLm1vdmUodSsiXSIpOmk9PT0ic2hvcnRjdXQiP2M9Yy5zbGljZSgwLC0xKTpjKz1zLm1vdmUoIl0iKSxjfWZ1bmN0aW9uIGc1YSgpe3JldHVybiIhIn12YXIgQ2p0PWwoKCk9PntwdmUucGVlaz1nNWF9KTtmdW5jdGlvbiBodmUoZSx0LHIpe2xldCBhPWUudmFsdWV8fCIiLGk9ImAiLG89LTE7Zm9yKDtuZXcgUmVnRXhwKCIoXnxbXmBdKSIraSsiKFteYF18JCkiKS50ZXN0KGEpOylpKz0iYCI7Zm9yKC9bXiBcclxuXS8udGVzdChhKSYmKC9eWyBcclxuXS8udGVzdChhKSYmL1sgXHJcbl0kLy50ZXN0KGEpfHwvXmB8YCQvLnRlc3QoYSkpJiYoYT0iICIrYSsiICIpOysrbzxyLnVuc2FmZS5sZW5ndGg7KXtsZXQgbj1yLnVuc2FmZVtvXSxzPXIuY29tcGlsZVBhdHRlcm4obiksYztpZihuLmF0QnJlYWspZm9yKDtjPXMuZXhlYyhhKTspe2xldCBkPWMuaW5kZXg7YS5jaGFyQ29kZUF0KGQpPT09MTAmJmEuY2hhckNvZGVBdChkLTEpPT09MTMmJmQtLSxhPWEuc2xpY2UoMCxkKSsiICIrYS5zbGljZShjLmluZGV4KzEpfX1yZXR1cm4gaSthK2l9ZnVuY3Rpb24geDVhKCl7cmV0dXJuImAifXZhciBfanQ9bCgoKT0+e2h2ZS5wZWVrPXg1YX0pO2Z1bmN0aW9uIG12ZShlLHQpe2xldCByPVI2KGUpO3JldHVybiEhKCF0Lm9wdGlvbnMucmVzb3VyY2VMaW5rJiZlLnVybCYmIWUudGl0bGUmJmUuY2hpbGRyZW4mJmUuY2hpbGRyZW4ubGVuZ3RoPT09MSYmZS5jaGlsZHJlblswXS50eXBlPT09InRleHQiJiYocj09PWUudXJsfHwibWFpbHRvOiIrcj09PWUudXJsKSYmL15bYS16XVthLXorLi1dKzovaS50ZXN0KGUudXJsKSYmIS9bXDAtIDw+XHUwMDdGXS8udGVzdChlLnVybCkpfXZhciBUanQ9bCgoKT0+e09vZSgpfSk7ZnVuY3Rpb24gZ3ZlKGUsdCxyLGEpe2xldCBpPWk5KHIpLG89aT09PSciJz8iUXVvdGUiOiJBcG9zdHJvcGhlIixuPXIuY3JlYXRlVHJhY2tlcihhKSxzLGM7aWYobXZlKGUscikpe2xldCBmPXIuc3RhY2s7ci5zdGFjaz1bXSxzPXIuZW50ZXIoImF1dG9saW5rIik7bGV0IHU9bi5tb3ZlKCI8Iik7cmV0dXJuIHUrPW4ubW92ZShyLmNvbnRhaW5lclBocmFzaW5nKGUse2JlZm9yZTp1LGFmdGVyOiI+IiwuLi5uLmN1cnJlbnQoKX0pKSx1Kz1uLm1vdmUoIj4iKSxzKCksci5zdGFjaz1mLHV9cz1yLmVudGVyKCJsaW5rIiksYz1yLmVudGVyKCJsYWJlbCIpO2xldCBkPW4ubW92ZSgiWyIpO3JldHVybiBkKz1uLm1vdmUoci5jb250YWluZXJQaHJhc2luZyhlLHtiZWZvcmU6ZCxhZnRlcjoiXSgiLC4uLm4uY3VycmVudCgpfSkpLGQrPW4ubW92ZSgiXSgiKSxjKCksIWUudXJsJiZlLnRpdGxlfHwvW1wwLSBcdTAwN0ZdLy50ZXN0KGUudXJsKT8oYz1yLmVudGVyKCJkZXN0aW5hdGlvbkxpdGVyYWwiKSxkKz1uLm1vdmUoIjwiKSxkKz1uLm1vdmUoci5zYWZlKGUudXJsLHtiZWZvcmU6ZCxhZnRlcjoiPiIsLi4ubi5jdXJyZW50KCl9KSksZCs9bi5tb3ZlKCI+IikpOihjPXIuZW50ZXIoImRlc3RpbmF0aW9uUmF3IiksZCs9bi5tb3ZlKHIuc2FmZShlLnVybCx7YmVmb3JlOmQsYWZ0ZXI6ZS50aXRsZT8iICI6IikiLC4uLm4uY3VycmVudCgpfSkpKSxjKCksZS50aXRsZSYmKGM9ci5lbnRlcihgdGl0bGUke299YCksZCs9bi5tb3ZlKCIgIitpKSxkKz1uLm1vdmUoci5zYWZlKGUudGl0bGUse2JlZm9yZTpkLGFmdGVyOmksLi4ubi5jdXJyZW50KCl9KSksZCs9bi5tb3ZlKGkpLGMoKSksZCs9bi5tb3ZlKCIpIikscygpLGR9ZnVuY3Rpb24gYjVhKGUsdCxyKXtyZXR1cm4gbXZlKGUscik/IjwiOiJbIn12YXIgTGp0PWwoKCk9PntOb2UoKTtUanQoKTtndmUucGVlaz1iNWF9KTtmdW5jdGlvbiB4dmUoZSx0LHIsYSl7bGV0IGk9ZS5yZWZlcmVuY2VUeXBlLG89ci5lbnRlcigibGlua1JlZmVyZW5jZSIpLG49ci5lbnRlcigibGFiZWwiKSxzPXIuY3JlYXRlVHJhY2tlcihhKSxjPXMubW92ZSgiWyIpLGQ9ci5jb250YWluZXJQaHJhc2luZyhlLHtiZWZvcmU6YyxhZnRlcjoiXSIsLi4ucy5jdXJyZW50KCl9KTtjKz1zLm1vdmUoZCsiXVsiKSxuKCk7bGV0IGY9ci5zdGFjaztyLnN0YWNrPVtdLG49ci5lbnRlcigicmVmZXJlbmNlIik7bGV0IHU9ci5zYWZlKHIuYXNzb2NpYXRpb25JZChlKSx7YmVmb3JlOmMsYWZ0ZXI6Il0iLC4uLnMuY3VycmVudCgpfSk7cmV0dXJuIG4oKSxyLnN0YWNrPWYsbygpLGk9PT0iZnVsbCJ8fCFkfHxkIT09dT9jKz1zLm1vdmUodSsiXSIpOmk9PT0ic2hvcnRjdXQiP2M9Yy5zbGljZSgwLC0xKTpjKz1zLm1vdmUoIl0iKSxjfWZ1bmN0aW9uIHY1YSgpe3JldHVybiJbIn12YXIgRGp0PWwoKCk9Pnt4dmUucGVlaz12NWF9KTtmdW5jdGlvbiBzOShlKXtsZXQgdD1lLm9wdGlvbnMuYnVsbGV0fHwiKiI7aWYodCE9PSIqIiYmdCE9PSIrIiYmdCE9PSItIil0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBzZXJpYWxpemUgaXRlbXMgd2l0aCBgIit0KyJgIGZvciBgb3B0aW9ucy5idWxsZXRgLCBleHBlY3RlZCBgKmAsIGArYCwgb3IgYC1gIik7cmV0dXJuIHR9dmFyIEJvZT1sKCgpPT57fSk7ZnVuY3Rpb24gQWp0KGUpe2xldCB0PXM5KGUpLHI9ZS5vcHRpb25zLmJ1bGxldE90aGVyO2lmKCFyKXJldHVybiB0PT09IioiPyItIjoiKiI7aWYociE9PSIqIiYmciE9PSIrIiYmciE9PSItIil0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBzZXJpYWxpemUgaXRlbXMgd2l0aCBgIityKyJgIGZvciBgb3B0aW9ucy5idWxsZXRPdGhlcmAsIGV4cGVjdGVkIGAqYCwgYCtgLCBvciBgLWAiKTtpZihyPT09dCl0aHJvdyBuZXcgRXJyb3IoIkV4cGVjdGVkIGBidWxsZXRgIChgIit0KyJgKSBhbmQgYGJ1bGxldE90aGVyYCAoYCIrcisiYCkgdG8gYmUgZGlmZmVyZW50Iik7cmV0dXJuIHJ9dmFyIEVqdD1sKCgpPT57Qm9lKCl9KTtmdW5jdGlvbiAkanQoZSl7bGV0IHQ9ZS5vcHRpb25zLmJ1bGxldE9yZGVyZWR8fCIuIjtpZih0IT09Ii4iJiZ0IT09IikiKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IHNlcmlhbGl6ZSBpdGVtcyB3aXRoIGAiK3QrImAgZm9yIGBvcHRpb25zLmJ1bGxldE9yZGVyZWRgLCBleHBlY3RlZCBgLmAgb3IgYClgIik7cmV0dXJuIHR9dmFyIFBqdD1sKCgpPT57fSk7ZnVuY3Rpb24gSG9lKGUpe2xldCB0PWUub3B0aW9ucy5ydWxlfHwiKiI7aWYodCE9PSIqIiYmdCE9PSItIiYmdCE9PSJfIil0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBzZXJpYWxpemUgcnVsZXMgd2l0aCBgIit0KyJgIGZvciBgb3B0aW9ucy5ydWxlYCwgZXhwZWN0ZWQgYCpgLCBgLWAsIG9yIGBfYCIpO3JldHVybiB0fXZhciBidmU9bCgoKT0+e30pO2Z1bmN0aW9uIElqdChlLHQscixhKXtsZXQgaT1yLmVudGVyKCJsaXN0Iiksbz1yLmJ1bGxldEN1cnJlbnQsbj1lLm9yZGVyZWQ/JGp0KHIpOnM5KHIpLHM9ZS5vcmRlcmVkP249PT0iLiI/IikiOiIuIjpBanQociksYz10JiZyLmJ1bGxldExhc3RVc2VkP249PT1yLmJ1bGxldExhc3RVc2VkOiExO2lmKCFlLm9yZGVyZWQpe2xldCBmPWUuY2hpbGRyZW4/ZS5jaGlsZHJlblswXTp2b2lkIDA7aWYoKG49PT0iKiJ8fG49PT0iLSIpJiZmJiYoIWYuY2hpbGRyZW58fCFmLmNoaWxkcmVuWzBdKSYmci5zdGFja1tyLnN0YWNrLmxlbmd0aC0xXT09PSJsaXN0IiYmci5zdGFja1tyLnN0YWNrLmxlbmd0aC0yXT09PSJsaXN0SXRlbSImJnIuc3RhY2tbci5zdGFjay5sZW5ndGgtM109PT0ibGlzdCImJnIuc3RhY2tbci5zdGFjay5sZW5ndGgtNF09PT0ibGlzdEl0ZW0iJiZyLmluZGV4U3RhY2tbci5pbmRleFN0YWNrLmxlbmd0aC0xXT09PTAmJnIuaW5kZXhTdGFja1tyLmluZGV4U3RhY2subGVuZ3RoLTJdPT09MCYmci5pbmRleFN0YWNrW3IuaW5kZXhTdGFjay5sZW5ndGgtM109PT0wJiYoYz0hMCksSG9lKHIpPT09biYmZil7bGV0IHU9LTE7Zm9yKDsrK3U8ZS5jaGlsZHJlbi5sZW5ndGg7KXtsZXQgcD1lLmNoaWxkcmVuW3VdO2lmKHAmJnAudHlwZT09PSJsaXN0SXRlbSImJnAuY2hpbGRyZW4mJnAuY2hpbGRyZW5bMF0mJnAuY2hpbGRyZW5bMF0udHlwZT09PSJ0aGVtYXRpY0JyZWFrIil7Yz0hMDticmVha319fX1jJiYobj1zKSxyLmJ1bGxldEN1cnJlbnQ9bjtsZXQgZD1yLmNvbnRhaW5lckZsb3coZSxhKTtyZXR1cm4gci5idWxsZXRMYXN0VXNlZD1uLHIuYnVsbGV0Q3VycmVudD1vLGkoKSxkfXZhciBOanQ9bCgoKT0+e0JvZSgpO0VqdCgpO1BqdCgpO2J2ZSgpfSk7ZnVuY3Rpb24gRmp0KGUpe2xldCB0PWUub3B0aW9ucy5saXN0SXRlbUluZGVudHx8Im9uZSI7aWYodCE9PSJ0YWIiJiZ0IT09Im9uZSImJnQhPT0ibWl4ZWQiKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IHNlcmlhbGl6ZSBpdGVtcyB3aXRoIGAiK3QrImAgZm9yIGBvcHRpb25zLmxpc3RJdGVtSW5kZW50YCwgZXhwZWN0ZWQgYHRhYmAsIGBvbmVgLCBvciBgbWl4ZWRgIik7cmV0dXJuIHR9dmFyIE9qdD1sKCgpPT57fSk7ZnVuY3Rpb24gUmp0KGUsdCxyLGEpe2xldCBpPUZqdChyKSxvPXIuYnVsbGV0Q3VycmVudHx8czkocik7dCYmdC50eXBlPT09Imxpc3QiJiZ0Lm9yZGVyZWQmJihvPSh0eXBlb2YgdC5zdGFydD09Im51bWJlciImJnQuc3RhcnQ+LTE/dC5zdGFydDoxKSsoci5vcHRpb25zLmluY3JlbWVudExpc3RNYXJrZXI9PT0hMT8wOnQuY2hpbGRyZW4uaW5kZXhPZihlKSkrbyk7bGV0IG49by5sZW5ndGgrMTsoaT09PSJ0YWIifHxpPT09Im1peGVkIiYmKHQmJnQudHlwZT09PSJsaXN0IiYmdC5zcHJlYWR8fGUuc3ByZWFkKSkmJihuPU1hdGguY2VpbChuLzQpKjQpO2xldCBzPXIuY3JlYXRlVHJhY2tlcihhKTtzLm1vdmUobysiICIucmVwZWF0KG4tby5sZW5ndGgpKSxzLnNoaWZ0KG4pO2xldCBjPXIuZW50ZXIoImxpc3RJdGVtIiksZD1yLmluZGVudExpbmVzKHIuY29udGFpbmVyRmxvdyhlLHMuY3VycmVudCgpKSxmKTtyZXR1cm4gYygpLGQ7ZnVuY3Rpb24gZih1LHAsaCl7cmV0dXJuIHA/KGg/IiI6IiAiLnJlcGVhdChuKSkrdTooaD9vOm8rIiAiLnJlcGVhdChuLW8ubGVuZ3RoKSkrdX19dmFyIEJqdD1sKCgpPT57Qm9lKCk7T2p0KCl9KTtmdW5jdGlvbiBIanQoZSx0LHIsYSl7bGV0IGk9ci5lbnRlcigicGFyYWdyYXBoIiksbz1yLmVudGVyKCJwaHJhc2luZyIpLG49ci5jb250YWluZXJQaHJhc2luZyhlLGEpO3JldHVybiBvKCksaSgpLG59dmFyIHFqdD1sKCgpPT57fSk7dmFyIHZ2ZSxqanQ9bCgoKT0+e0RvZSgpO3Z2ZT1oYyhbImJyZWFrIiwiZGVsZXRlIiwiZW1waGFzaXMiLCJmb290bm90ZSIsImZvb3Rub3RlUmVmZXJlbmNlIiwiaW1hZ2UiLCJpbWFnZVJlZmVyZW5jZSIsImlubGluZUNvZGUiLCJpbmxpbmVNYXRoIiwibGluayIsImxpbmtSZWZlcmVuY2UiLCJtZHhKc3hUZXh0RWxlbWVudCIsIm1keFRleHRFeHByZXNzaW9uIiwic3Ryb25nIiwidGV4dCIsInRleHREaXJlY3RpdmUiXSl9KTt2YXIgVmp0PWwoKCk9PntqanQoKX0pO2Z1bmN0aW9uIFVqdChlLHQscixhKXtyZXR1cm4oZS5jaGlsZHJlbi5zb21lKGZ1bmN0aW9uKG4pe3JldHVybiB2dmUobil9KT9yLmNvbnRhaW5lclBocmFzaW5nOnIuY29udGFpbmVyRmxvdykuY2FsbChyLGUsYSl9dmFyIFdqdD1sKCgpPT57Vmp0KCl9KTtmdW5jdGlvbiBHanQoZSl7bGV0IHQ9ZS5vcHRpb25zLnN0cm9uZ3x8IioiO2lmKHQhPT0iKiImJnQhPT0iXyIpdGhyb3cgbmV3IEVycm9yKCJDYW5ub3Qgc2VyaWFsaXplIHN0cm9uZyB3aXRoIGAiK3QrImAgZm9yIGBvcHRpb25zLnN0cm9uZ2AsIGV4cGVjdGVkIGAqYCwgb3IgYF9gIik7cmV0dXJuIHR9dmFyIFlqdD1sKCgpPT57fSk7ZnVuY3Rpb24geXZlKGUsdCxyLGEpe2xldCBpPUdqdChyKSxvPXIuZW50ZXIoInN0cm9uZyIpLG49ci5jcmVhdGVUcmFja2VyKGEpLHM9bi5tb3ZlKGkraSksYz1uLm1vdmUoci5jb250YWluZXJQaHJhc2luZyhlLHthZnRlcjppLGJlZm9yZTpzLC4uLm4uY3VycmVudCgpfSkpLGQ9Yy5jaGFyQ29kZUF0KDApLGY9bjkoYS5iZWZvcmUuY2hhckNvZGVBdChhLmJlZm9yZS5sZW5ndGgtMSksZCxpKTtmLmluc2lkZSYmKGM9cm4oZCkrYy5zbGljZSgxKSk7bGV0IHU9Yy5jaGFyQ29kZUF0KGMubGVuZ3RoLTEpLHA9bjkoYS5hZnRlci5jaGFyQ29kZUF0KDApLHUsaSk7cC5pbnNpZGUmJihjPWMuc2xpY2UoMCwtMSkrcm4odSkpO2xldCBoPW4ubW92ZShpK2kpO3JldHVybiBvKCksci5hdHRlbnRpb25FbmNvZGVTdXJyb3VuZGluZ0luZm89e2FmdGVyOnAub3V0c2lkZSxiZWZvcmU6Zi5vdXRzaWRlfSxzK2MraH1mdW5jdGlvbiB5NWEoZSx0LHIpe3JldHVybiByLm9wdGlvbnMuc3Ryb25nfHwiKiJ9dmFyIFpqdD1sKCgpPT57WWp0KCk7bzkoKTtzdmUoKTt5dmUucGVlaz15NWF9KTtmdW5jdGlvbiBYanQoZSx0LHIsYSl7cmV0dXJuIHIuc2FmZShlLnZhbHVlLGEpfXZhciBRanQ9bCgoKT0+e30pO2Z1bmN0aW9uIEtqdChlKXtsZXQgdD1lLm9wdGlvbnMucnVsZVJlcGV0aXRpb258fDM7aWYodDwzKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IHNlcmlhbGl6ZSBydWxlcyB3aXRoIHJlcGV0aXRpb24gYCIrdCsiYCBmb3IgYG9wdGlvbnMucnVsZVJlcGV0aXRpb25gLCBleHBlY3RlZCBgM2Agb3IgbW9yZSIpO3JldHVybiB0fXZhciBKanQ9bCgoKT0+e30pO2Z1bmN0aW9uIGVWdChlLHQscil7bGV0IGE9KEhvZShyKSsoci5vcHRpb25zLnJ1bGVTcGFjZXM/IiAiOiIiKSkucmVwZWF0KEtqdChyKSk7cmV0dXJuIHIub3B0aW9ucy5ydWxlU3BhY2VzP2Euc2xpY2UoMCwtMSk6YX12YXIgdFZ0PWwoKCk9PntKanQoKTtidmUoKX0pO3ZhciBCNix3dmU9bCgoKT0+e2lqdCgpO25qdCgpO2ZqdCgpO2hqdCgpO3hqdCgpO2tqdCgpO1NqdCgpO3pqdCgpO0NqdCgpO19qdCgpO0xqdCgpO0RqdCgpO05qdCgpO0JqdCgpO3FqdCgpO1dqdCgpO1pqdCgpO1FqdCgpO3RWdCgpO0I2PXtibG9ja3F1b3RlOmFqdCxicmVhazpvdmUsY29kZTp1anQsZGVmaW5pdGlvbjpwanQsZW1waGFzaXM6bHZlLGhhcmRCcmVhazpvdmUsaGVhZGluZzpNanQsaHRtbDp1dmUsaW1hZ2U6ZnZlLGltYWdlUmVmZXJlbmNlOnB2ZSxpbmxpbmVDb2RlOmh2ZSxsaW5rOmd2ZSxsaW5rUmVmZXJlbmNlOnh2ZSxsaXN0OklqdCxsaXN0SXRlbTpSanQscGFyYWdyYXBoOkhqdCxyb290OlVqdCxzdHJvbmc6eXZlLHRleHQ6WGp0LHRoZW1hdGljQnJlYWs6ZVZ0fX0pO2Z1bmN0aW9uIHc1YShlLHQscixhKXtpZih0LnR5cGU9PT0iY29kZSImJmt5KHQsYSkmJihlLnR5cGU9PT0ibGlzdCJ8fGUudHlwZT09PXQudHlwZSYma3koZSxhKSkpcmV0dXJuITE7aWYoInNwcmVhZCJpbiByJiZ0eXBlb2Ygci5zcHJlYWQ9PSJib29sZWFuIilyZXR1cm4gZS50eXBlPT09InBhcmFncmFwaCImJihlLnR5cGU9PT10LnR5cGV8fHQudHlwZT09PSJkZWZpbml0aW9uInx8dC50eXBlPT09ImhlYWRpbmciJiZSb2UodCxhKSk/dm9pZCAwOnIuc3ByZWFkPzE6MH12YXIgclZ0LGFWdD1sKCgpPT57bnZlKCk7ZHZlKCk7clZ0PVt3NWFdfSk7dmFyIEg2LGlWdCxvVnQ9bCgoKT0+e0g2PVsiYXV0b2xpbmsiLCJkZXN0aW5hdGlvbkxpdGVyYWwiLCJkZXN0aW5hdGlvblJhdyIsInJlZmVyZW5jZSIsInRpdGxlUXVvdGUiLCJ0aXRsZUFwb3N0cm9waGUiXSxpVnQ9W3tjaGFyYWN0ZXI6IgkiLGFmdGVyOiJbXFxyXFxuXSIsaW5Db25zdHJ1Y3Q6InBocmFzaW5nIn0se2NoYXJhY3RlcjoiCSIsYmVmb3JlOiJbXFxyXFxuXSIsaW5Db25zdHJ1Y3Q6InBocmFzaW5nIn0se2NoYXJhY3RlcjoiCSIsaW5Db25zdHJ1Y3Q6WyJjb2RlRmVuY2VkTGFuZ0dyYXZlQWNjZW50IiwiY29kZUZlbmNlZExhbmdUaWxkZSJdfSx7Y2hhcmFjdGVyOiJcciIsaW5Db25zdHJ1Y3Q6WyJjb2RlRmVuY2VkTGFuZ0dyYXZlQWNjZW50IiwiY29kZUZlbmNlZExhbmdUaWxkZSIsImNvZGVGZW5jZWRNZXRhR3JhdmVBY2NlbnQiLCJjb2RlRmVuY2VkTWV0YVRpbGRlIiwiZGVzdGluYXRpb25MaXRlcmFsIiwiaGVhZGluZ0F0eCJdfSx7Y2hhcmFjdGVyOmAKYCxpbkNvbnN0cnVjdDpbImNvZGVGZW5jZWRMYW5nR3JhdmVBY2NlbnQiLCJjb2RlRmVuY2VkTGFuZ1RpbGRlIiwiY29kZUZlbmNlZE1ldGFHcmF2ZUFjY2VudCIsImNvZGVGZW5jZWRNZXRhVGlsZGUiLCJkZXN0aW5hdGlvbkxpdGVyYWwiLCJoZWFkaW5nQXR4Il19LHtjaGFyYWN0ZXI6IiAiLGFmdGVyOiJbXFxyXFxuXSIsaW5Db25zdHJ1Y3Q6InBocmFzaW5nIn0se2NoYXJhY3RlcjoiICIsYmVmb3JlOiJbXFxyXFxuXSIsaW5Db25zdHJ1Y3Q6InBocmFzaW5nIn0se2NoYXJhY3RlcjoiICIsaW5Db25zdHJ1Y3Q6WyJjb2RlRmVuY2VkTGFuZ0dyYXZlQWNjZW50IiwiY29kZUZlbmNlZExhbmdUaWxkZSJdfSx7Y2hhcmFjdGVyOiIhIixhZnRlcjoiXFxbIixpbkNvbnN0cnVjdDoicGhyYXNpbmciLG5vdEluQ29uc3RydWN0Okg2fSx7Y2hhcmFjdGVyOiciJyxpbkNvbnN0cnVjdDoidGl0bGVRdW90ZSJ9LHthdEJyZWFrOiEwLGNoYXJhY3RlcjoiIyJ9LHtjaGFyYWN0ZXI6IiMiLGluQ29uc3RydWN0OiJoZWFkaW5nQXR4IixhZnRlcjpgKD86W1xyCl18JClgfSx7Y2hhcmFjdGVyOiImIixhZnRlcjoiWyNBLVphLXpdIixpbkNvbnN0cnVjdDoicGhyYXNpbmcifSx7Y2hhcmFjdGVyOiInIixpbkNvbnN0cnVjdDoidGl0bGVBcG9zdHJvcGhlIn0se2NoYXJhY3RlcjoiKCIsaW5Db25zdHJ1Y3Q6ImRlc3RpbmF0aW9uUmF3In0se2JlZm9yZToiXFxdIixjaGFyYWN0ZXI6IigiLGluQ29uc3RydWN0OiJwaHJhc2luZyIsbm90SW5Db25zdHJ1Y3Q6SDZ9LHthdEJyZWFrOiEwLGJlZm9yZToiXFxkKyIsY2hhcmFjdGVyOiIpIn0se2NoYXJhY3RlcjoiKSIsaW5Db25zdHJ1Y3Q6ImRlc3RpbmF0aW9uUmF3In0se2F0QnJlYWs6ITAsY2hhcmFjdGVyOiIqIixhZnRlcjpgKD86WyAJXHIKKl0pYH0se2NoYXJhY3RlcjoiKiIsaW5Db25zdHJ1Y3Q6InBocmFzaW5nIixub3RJbkNvbnN0cnVjdDpINn0se2F0QnJlYWs6ITAsY2hhcmFjdGVyOiIrIixhZnRlcjpgKD86WyAJXHIKXSlgfSx7YXRCcmVhazohMCxjaGFyYWN0ZXI6Ii0iLGFmdGVyOmAoPzpbIAlccgotXSlgfSx7YXRCcmVhazohMCxiZWZvcmU6IlxcZCsiLGNoYXJhY3RlcjoiLiIsYWZ0ZXI6YCg/OlsgCVxyCl18JClgfSx7YXRCcmVhazohMCxjaGFyYWN0ZXI6IjwiLGFmdGVyOiJbIS8/QS1aYS16XSJ9LHtjaGFyYWN0ZXI6IjwiLGFmdGVyOiJbIS8/QS1aYS16XSIsaW5Db25zdHJ1Y3Q6InBocmFzaW5nIixub3RJbkNvbnN0cnVjdDpINn0se2NoYXJhY3RlcjoiPCIsaW5Db25zdHJ1Y3Q6ImRlc3RpbmF0aW9uTGl0ZXJhbCJ9LHthdEJyZWFrOiEwLGNoYXJhY3RlcjoiPSJ9LHthdEJyZWFrOiEwLGNoYXJhY3RlcjoiPiJ9LHtjaGFyYWN0ZXI6Ij4iLGluQ29uc3RydWN0OiJkZXN0aW5hdGlvbkxpdGVyYWwifSx7YXRCcmVhazohMCxjaGFyYWN0ZXI6IlsifSx7Y2hhcmFjdGVyOiJbIixpbkNvbnN0cnVjdDoicGhyYXNpbmciLG5vdEluQ29uc3RydWN0Okg2fSx7Y2hhcmFjdGVyOiJbIixpbkNvbnN0cnVjdDpbImxhYmVsIiwicmVmZXJlbmNlIl19LHtjaGFyYWN0ZXI6IlxcIixhZnRlcjoiW1xcclxcbl0iLGluQ29uc3RydWN0OiJwaHJhc2luZyJ9LHtjaGFyYWN0ZXI6Il0iLGluQ29uc3RydWN0OlsibGFiZWwiLCJyZWZlcmVuY2UiXX0se2F0QnJlYWs6ITAsY2hhcmFjdGVyOiJfIn0se2NoYXJhY3RlcjoiXyIsaW5Db25zdHJ1Y3Q6InBocmFzaW5nIixub3RJbkNvbnN0cnVjdDpINn0se2F0QnJlYWs6ITAsY2hhcmFjdGVyOiJgIn0se2NoYXJhY3RlcjoiYCIsaW5Db25zdHJ1Y3Q6WyJjb2RlRmVuY2VkTGFuZ0dyYXZlQWNjZW50IiwiY29kZUZlbmNlZE1ldGFHcmF2ZUFjY2VudCJdfSx7Y2hhcmFjdGVyOiJgIixpbkNvbnN0cnVjdDoicGhyYXNpbmciLG5vdEluQ29uc3RydWN0Okg2fSx7YXRCcmVhazohMCxjaGFyYWN0ZXI6In4ifV19KTtmdW5jdGlvbiBPNChlKXtsZXQgdD0iJiIrZSsiOyI7blZ0LmlubmVySFRNTD10O2xldCByPW5WdC50ZXh0Q29udGVudDtyZXR1cm4gci5jaGFyQ29kZUF0KHIubGVuZ3RoLTEpPT09NTkmJmUhPT0ic2VtaSJ8fHI9PT10PyExOnJ9dmFyIG5WdCx6eT1sKCgpPT57blZ0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImkiKX0pO2Z1bmN0aW9uIGw5KGUsdCl7bGV0IHI9TnVtYmVyLnBhcnNlSW50KGUsdCk7cmV0dXJuIHI8OXx8cj09PTExfHxyPjEzJiZyPDMyfHxyPjEyNiYmcjwxNjB8fHI+NTUyOTUmJnI8NTczNDR8fHI+NjQ5NzUmJnI8NjUwMDh8fChyJjY1NTM1KT09PTY1NTM1fHwociY2NTUzNSk9PT02NTUzNHx8cj4xMTE0MTExPyJcdUZGRkQiOlN0cmluZy5mcm9tQ29kZVBvaW50KHIpfXZhciBxb2U9bCgoKT0+e30pO2Z1bmN0aW9uIGpvZShlKXtyZXR1cm4gZS5yZXBsYWNlKE01YSxrNWEpfWZ1bmN0aW9uIGs1YShlLHQscil7aWYodClyZXR1cm4gdDtpZihyLmNoYXJDb2RlQXQoMCk9PT0zNSl7bGV0IGk9ci5jaGFyQ29kZUF0KDEpLG89aT09PTEyMHx8aT09PTg4O3JldHVybiBsOShyLnNsaWNlKG8/MjoxKSxvPzE2OjEwKX1yZXR1cm4gTzQocil8fGV9dmFyIE01YSxNdmU9bCgoKT0+e3p5KCk7cW9lKCk7TTVhPS9cXChbIS0vOi1AWy1gey1+XSl8JigjKD86XGR7MSw3fXx4W1xkYS1mXXsxLDZ9KXxbXGRhLXpdezEsMzF9KTsvZ2l9KTtmdW5jdGlvbiBzVnQoZSl7cmV0dXJuIGUubGFiZWx8fCFlLmlkZW50aWZpZXI/ZS5sYWJlbHx8IiI6am9lKGUuaWRlbnRpZmllcil9dmFyIGxWdD1sKCgpPT57TXZlKCl9KTtmdW5jdGlvbiBjVnQoZSl7aWYoIWUuX2NvbXBpbGVkKXtsZXQgdD0oZS5hdEJyZWFrPyJbXFxyXFxuXVtcXHQgXSoiOiIiKSsoZS5iZWZvcmU/Iig/OiIrZS5iZWZvcmUrIikiOiIiKTtlLl9jb21waWxlZD1uZXcgUmVnRXhwKCh0PyIoIit0KyIpIjoiIikrKC9bfFxce30oKVtcXV4kKyo/Li1dLy50ZXN0KGUuY2hhcmFjdGVyKT8iXFwiOiIiKStlLmNoYXJhY3RlcisoZS5hZnRlcj8iKD86IitlLmFmdGVyKyIpIjoiIiksImciKX1yZXR1cm4gZS5fY29tcGlsZWR9dmFyIGRWdD1sKCgpPT57fSk7ZnVuY3Rpb24gdVZ0KGUsdCxyKXtsZXQgYT10LmluZGV4U3RhY2ssaT1lLmNoaWxkcmVufHxbXSxvPVtdLG49LTEscz1yLmJlZm9yZSxjO2EucHVzaCgtMSk7bGV0IGQ9dC5jcmVhdGVUcmFja2VyKHIpO2Zvcig7KytuPGkubGVuZ3RoOyl7bGV0IGY9aVtuXSx1O2lmKGFbYS5sZW5ndGgtMV09bixuKzE8aS5sZW5ndGgpe2xldCBiPXQuaGFuZGxlLmhhbmRsZXJzW2lbbisxXS50eXBlXTtiJiZiLnBlZWsmJihiPWIucGVlayksdT1iP2IoaVtuKzFdLGUsdCx7YmVmb3JlOiIiLGFmdGVyOiIiLC4uLmQuY3VycmVudCgpfSkuY2hhckF0KDApOiIifWVsc2UgdT1yLmFmdGVyO28ubGVuZ3RoPjAmJihzPT09IlxyInx8cz09PWAKYCkmJmYudHlwZT09PSJodG1sIiYmKG9bby5sZW5ndGgtMV09b1tvLmxlbmd0aC0xXS5yZXBsYWNlKC8oXHI/XG58XHIpJC8sIiAiKSxzPSIgIixkPXQuY3JlYXRlVHJhY2tlcihyKSxkLm1vdmUoby5qb2luKCIiKSkpO2xldCBwPXQuaGFuZGxlKGYsZSx0LHsuLi5kLmN1cnJlbnQoKSxhZnRlcjp1LGJlZm9yZTpzfSk7YyYmYz09PXAuc2xpY2UoMCwxKSYmKHA9cm4oYy5jaGFyQ29kZUF0KDApKStwLnNsaWNlKDEpKTtsZXQgaD10LmF0dGVudGlvbkVuY29kZVN1cnJvdW5kaW5nSW5mbzt0LmF0dGVudGlvbkVuY29kZVN1cnJvdW5kaW5nSW5mbz12b2lkIDAsYz12b2lkIDAsaCYmKG8ubGVuZ3RoPjAmJmguYmVmb3JlJiZzPT09b1tvLmxlbmd0aC0xXS5zbGljZSgtMSkmJihvW28ubGVuZ3RoLTFdPW9bby5sZW5ndGgtMV0uc2xpY2UoMCwtMSkrcm4ocy5jaGFyQ29kZUF0KDApKSksaC5hZnRlciYmKGM9dSkpLGQubW92ZShwKSxvLnB1c2gocCkscz1wLnNsaWNlKC0xKX1yZXR1cm4gYS5wb3AoKSxvLmpvaW4oIiIpfXZhciBmVnQ9bCgoKT0+e285KCl9KTtmdW5jdGlvbiBwVnQoZSx0LHIpe2xldCBhPXQuaW5kZXhTdGFjayxpPWUuY2hpbGRyZW58fFtdLG89dC5jcmVhdGVUcmFja2VyKHIpLG49W10scz0tMTtmb3IoYS5wdXNoKC0xKTsrK3M8aS5sZW5ndGg7KXtsZXQgYz1pW3NdO2FbYS5sZW5ndGgtMV09cyxuLnB1c2goby5tb3ZlKHQuaGFuZGxlKGMsZSx0LHtiZWZvcmU6YApgLGFmdGVyOmAKYCwuLi5vLmN1cnJlbnQoKX0pKSksYy50eXBlIT09Imxpc3QiJiYodC5idWxsZXRMYXN0VXNlZD12b2lkIDApLHM8aS5sZW5ndGgtMSYmbi5wdXNoKG8ubW92ZShTNWEoYyxpW3MrMV0sZSx0KSkpfXJldHVybiBhLnBvcCgpLG4uam9pbigiIil9ZnVuY3Rpb24gUzVhKGUsdCxyLGEpe2xldCBpPWEuam9pbi5sZW5ndGg7Zm9yKDtpLS07KXtsZXQgbz1hLmpvaW5baV0oZSx0LHIsYSk7aWYobz09PSEwfHxvPT09MSlicmVhaztpZih0eXBlb2Ygbz09Im51bWJlciIpcmV0dXJuYApgLnJlcGVhdCgxK28pO2lmKG89PT0hMSlyZXR1cm5gCgo8IS0tLS0+CgpgfXJldHVybmAKCmB9dmFyIGhWdD1sKCgpPT57fSk7ZnVuY3Rpb24gbVZ0KGUsdCl7bGV0IHI9W10sYT0wLGk9MCxvO2Zvcig7bz16NWEuZXhlYyhlKTspbihlLnNsaWNlKGEsby5pbmRleCkpLHIucHVzaChvWzBdKSxhPW8uaW5kZXgrb1swXS5sZW5ndGgsaSsrO3JldHVybiBuKGUuc2xpY2UoYSkpLHIuam9pbigiIik7ZnVuY3Rpb24gbihzKXtyLnB1c2godChzLGksIXMpKX19dmFyIHo1YSxnVnQ9bCgoKT0+e3o1YT0vXHI/XG58XHIvZ30pO2Z1bmN0aW9uIGJWdChlLHQscil7bGV0IGE9KHIuYmVmb3JlfHwiIikrKHR8fCIiKSsoci5hZnRlcnx8IiIpLGk9W10sbz1bXSxuPXt9LHM9LTE7Zm9yKDsrK3M8ZS51bnNhZmUubGVuZ3RoOyl7bGV0IGY9ZS51bnNhZmVbc107aWYoIUlvZShlLnN0YWNrLGYpKWNvbnRpbnVlO2xldCB1PWUuY29tcGlsZVBhdHRlcm4oZikscDtmb3IoO3A9dS5leGVjKGEpOyl7bGV0IGg9ImJlZm9yZSJpbiBmfHwhIWYuYXRCcmVhayxiPSJhZnRlciJpbiBmLHg9cC5pbmRleCsoaD9wWzFdLmxlbmd0aDowKTtpLmluY2x1ZGVzKHgpPyhuW3hdLmJlZm9yZSYmIWgmJihuW3hdLmJlZm9yZT0hMSksblt4XS5hZnRlciYmIWImJihuW3hdLmFmdGVyPSExKSk6KGkucHVzaCh4KSxuW3hdPXtiZWZvcmU6aCxhZnRlcjpifSl9fWkuc29ydChDNWEpO2xldCBjPXIuYmVmb3JlP3IuYmVmb3JlLmxlbmd0aDowLGQ9YS5sZW5ndGgtKHIuYWZ0ZXI/ci5hZnRlci5sZW5ndGg6MCk7Zm9yKHM9LTE7KytzPGkubGVuZ3RoOyl7bGV0IGY9aVtzXTtmPGN8fGY+PWR8fGYrMTxkJiZpW3MrMV09PT1mKzEmJm5bZl0uYWZ0ZXImJiFuW2YrMV0uYmVmb3JlJiYhbltmKzFdLmFmdGVyfHxpW3MtMV09PT1mLTEmJm5bZl0uYmVmb3JlJiYhbltmLTFdLmJlZm9yZSYmIW5bZi0xXS5hZnRlcnx8KGMhPT1mJiZvLnB1c2goeFZ0KGEuc2xpY2UoYyxmKSwiXFwiKSksYz1mLC9bIS0vOi1AWy1gey1+XS8udGVzdChhLmNoYXJBdChmKSkmJighci5lbmNvZGV8fCFyLmVuY29kZS5pbmNsdWRlcyhhLmNoYXJBdChmKSkpP28ucHVzaCgiXFwiKTooby5wdXNoKHJuKGEuY2hhckNvZGVBdChmKSkpLGMrKykpfXJldHVybiBvLnB1c2goeFZ0KGEuc2xpY2UoYyxkKSxyLmFmdGVyKSksby5qb2luKCIiKX1mdW5jdGlvbiBDNWEoZSx0KXtyZXR1cm4gZS10fWZ1bmN0aW9uIHhWdChlLHQpe2xldCByPS9cXCg/PVshLS86LUBbLWB7LX5dKS9nLGE9W10saT1bXSxvPWUrdCxuPS0xLHM9MCxjO2Zvcig7Yz1yLmV4ZWMobyk7KWEucHVzaChjLmluZGV4KTtmb3IoOysrbjxhLmxlbmd0aDspcyE9PWFbbl0mJmkucHVzaChlLnNsaWNlKHMsYVtuXSkpLGkucHVzaCgiXFwiKSxzPWFbbl07cmV0dXJuIGkucHVzaChlLnNsaWNlKHMpKSxpLmpvaW4oIiIpfXZhciB2VnQ9bCgoKT0+e285KCk7aXZlKCl9KTtmdW5jdGlvbiB5VnQoZSl7bGV0IHQ9ZXx8e30scj10Lm5vd3x8e30sYT10LmxpbmVTaGlmdHx8MCxpPXIubGluZXx8MSxvPXIuY29sdW1ufHwxO3JldHVybnttb3ZlOmMsY3VycmVudDpuLHNoaWZ0OnN9O2Z1bmN0aW9uIG4oKXtyZXR1cm57bm93OntsaW5lOmksY29sdW1uOm99LGxpbmVTaGlmdDphfX1mdW5jdGlvbiBzKGQpe2ErPWR9ZnVuY3Rpb24gYyhkKXtsZXQgZj1kfHwiIix1PWYuc3BsaXQoL1xyP1xufFxyL2cpLHA9dVt1Lmxlbmd0aC0xXTtyZXR1cm4gaSs9dS5sZW5ndGgtMSxvPXUubGVuZ3RoPT09MT9vK3AubGVuZ3RoOjErcC5sZW5ndGgrYSxmfX12YXIgd1Z0PWwoKCk9Pnt9KTtmdW5jdGlvbiBrdmUoZSx0KXtsZXQgcj10fHx7fSxhPXthc3NvY2lhdGlvbklkOnNWdCxjb250YWluZXJQaHJhc2luZzpENWEsY29udGFpbmVyRmxvdzpBNWEsY3JlYXRlVHJhY2tlcjp5VnQsY29tcGlsZVBhdHRlcm46Y1Z0LGVudGVyOm8saGFuZGxlcnM6ey4uLkI2fSxoYW5kbGU6dm9pZCAwLGluZGVudExpbmVzOm1WdCxpbmRleFN0YWNrOltdLGpvaW46Wy4uLnJWdF0sb3B0aW9uczp7fSxzYWZlOkU1YSxzdGFjazpbXSx1bnNhZmU6Wy4uLmlWdF19O2F2ZShhLHIpLGEub3B0aW9ucy50aWdodERlZmluaXRpb25zJiZhLmpvaW4ucHVzaChMNWEpLGEuaGFuZGxlPVBvZSgidHlwZSIse2ludmFsaWQ6XzVhLHVua25vd246VDVhLGhhbmRsZXJzOmEuaGFuZGxlcnN9KTtsZXQgaT1hLmhhbmRsZShlLHZvaWQgMCxhLHtiZWZvcmU6YApgLGFmdGVyOmAKYCxub3c6e2xpbmU6MSxjb2x1bW46MX0sbGluZVNoaWZ0OjB9KTtyZXR1cm4gaSYmaS5jaGFyQ29kZUF0KGkubGVuZ3RoLTEpIT09MTAmJmkuY2hhckNvZGVBdChpLmxlbmd0aC0xKSE9PTEzJiYoaSs9YApgKSxpO2Z1bmN0aW9uIG8obil7cmV0dXJuIGEuc3RhY2sucHVzaChuKSxzO2Z1bmN0aW9uIHMoKXthLnN0YWNrLnBvcCgpfX19ZnVuY3Rpb24gXzVhKGUpe3Rocm93IG5ldyBFcnJvcigiQ2Fubm90IGhhbmRsZSB2YWx1ZSBgIitlKyJgLCBleHBlY3RlZCBub2RlIil9ZnVuY3Rpb24gVDVhKGUpe2xldCB0PWU7dGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgaGFuZGxlIHVua25vd24gbm9kZSBgIit0LnR5cGUrImAiKX1mdW5jdGlvbiBMNWEoZSx0KXtpZihlLnR5cGU9PT0iZGVmaW5pdGlvbiImJmUudHlwZT09PXQudHlwZSlyZXR1cm4gMH1mdW5jdGlvbiBENWEoZSx0KXtyZXR1cm4gdVZ0KGUsdGhpcyx0KX1mdW5jdGlvbiBBNWEoZSx0KXtyZXR1cm4gcFZ0KGUsdGhpcyx0KX1mdW5jdGlvbiBFNWEoZSx0KXtyZXR1cm4gYlZ0KHRoaXMsZSx0KX12YXIgTVZ0PWwoKCk9PntydmUoKTtyanQoKTt3dmUoKTthVnQoKTtvVnQoKTtsVnQoKTtkVnQoKTtmVnQoKTtoVnQoKTtnVnQoKTt2VnQoKTt3VnQoKX0pO3ZhciBWb2U9bCgoKT0+e01WdCgpO3d2ZSgpfSk7ZnVuY3Rpb24genZlKCl7cmV0dXJue2VudGVyOnt0YWJsZTokNWEsdGFibGVEYXRhOmtWdCx0YWJsZUhlYWRlcjprVnQsdGFibGVSb3c6STVhfSxleGl0Ontjb2RlVGV4dDpONWEsdGFibGU6UDVhLHRhYmxlRGF0YTpTdmUsdGFibGVIZWFkZXI6U3ZlLHRhYmxlUm93OlN2ZX19fWZ1bmN0aW9uICQ1YShlKXtsZXQgdD1lLl9hbGlnbjt0aGlzLmVudGVyKHt0eXBlOiJ0YWJsZSIsYWxpZ246dC5tYXAoZnVuY3Rpb24ocil7cmV0dXJuIHI9PT0ibm9uZSI/bnVsbDpyfSksY2hpbGRyZW46W119LGUpLHRoaXMuZGF0YS5pblRhYmxlPSEwfWZ1bmN0aW9uIFA1YShlKXt0aGlzLmV4aXQoZSksdGhpcy5kYXRhLmluVGFibGU9dm9pZCAwfWZ1bmN0aW9uIEk1YShlKXt0aGlzLmVudGVyKHt0eXBlOiJ0YWJsZVJvdyIsY2hpbGRyZW46W119LGUpfWZ1bmN0aW9uIFN2ZShlKXt0aGlzLmV4aXQoZSl9ZnVuY3Rpb24ga1Z0KGUpe3RoaXMuZW50ZXIoe3R5cGU6InRhYmxlQ2VsbCIsY2hpbGRyZW46W119LGUpfWZ1bmN0aW9uIE41YShlKXtsZXQgdD10aGlzLnJlc3VtZSgpO3RoaXMuZGF0YS5pblRhYmxlJiYodD10LnJlcGxhY2UoL1xcKFtcXHxdKS9nLEY1YSkpO2xldCByPXRoaXMuc3RhY2tbdGhpcy5zdGFjay5sZW5ndGgtMV07ci50eXBlLHIudmFsdWU9dCx0aGlzLmV4aXQoZSl9ZnVuY3Rpb24gRjVhKGUsdCl7cmV0dXJuIHQ9PT0ifCI/dDplfWZ1bmN0aW9uIEN2ZShlKXtsZXQgdD1lfHx7fSxyPXQudGFibGVDZWxsUGFkZGluZyxhPXQudGFibGVQaXBlQWxpZ24saT10LnN0cmluZ0xlbmd0aCxvPXI/IiAiOiJ8IjtyZXR1cm57dW5zYWZlOlt7Y2hhcmFjdGVyOiJcciIsaW5Db25zdHJ1Y3Q6InRhYmxlQ2VsbCJ9LHtjaGFyYWN0ZXI6YApgLGluQ29uc3RydWN0OiJ0YWJsZUNlbGwifSx7YXRCcmVhazohMCxjaGFyYWN0ZXI6InwiLGFmdGVyOiJbCSA6LV0ifSx7Y2hhcmFjdGVyOiJ8IixpbkNvbnN0cnVjdDoidGFibGVDZWxsIn0se2F0QnJlYWs6ITAsY2hhcmFjdGVyOiI6IixhZnRlcjoiLSJ9LHthdEJyZWFrOiEwLGNoYXJhY3RlcjoiLSIsYWZ0ZXI6Ils6fC1dIn1dLGhhbmRsZXJzOntpbmxpbmVDb2RlOnAsdGFibGU6bix0YWJsZUNlbGw6Yyx0YWJsZVJvdzpzfX07ZnVuY3Rpb24gbihoLGIseCxnKXtyZXR1cm4gZChmKGgseCxnKSxoLmFsaWduKX1mdW5jdGlvbiBzKGgsYix4LGcpe2xldCB2PXUoaCx4LGcpLHc9ZChbdl0pO3JldHVybiB3LnNsaWNlKDAsdy5pbmRleE9mKGAKYCkpfWZ1bmN0aW9uIGMoaCxiLHgsZyl7bGV0IHY9eC5lbnRlcigidGFibGVDZWxsIiksdz14LmVudGVyKCJwaHJhc2luZyIpLE09eC5jb250YWluZXJQaHJhc2luZyhoLHsuLi5nLGJlZm9yZTpvLGFmdGVyOm99KTtyZXR1cm4gdygpLHYoKSxNfWZ1bmN0aW9uIGQoaCxiKXtyZXR1cm4gS3F0KGgse2FsaWduOmIsYWxpZ25EZWxpbWl0ZXJzOmEscGFkZGluZzpyLHN0cmluZ0xlbmd0aDppfSl9ZnVuY3Rpb24gZihoLGIseCl7bGV0IGc9aC5jaGlsZHJlbix2PS0xLHc9W10sTT1iLmVudGVyKCJ0YWJsZSIpO2Zvcig7Kyt2PGcubGVuZ3RoOyl3W3ZdPXUoZ1t2XSxiLHgpO3JldHVybiBNKCksd31mdW5jdGlvbiB1KGgsYix4KXtsZXQgZz1oLmNoaWxkcmVuLHY9LTEsdz1bXSxNPWIuZW50ZXIoInRhYmxlUm93Iik7Zm9yKDsrK3Y8Zy5sZW5ndGg7KXdbdl09YyhnW3ZdLGgsYix4KTtyZXR1cm4gTSgpLHd9ZnVuY3Rpb24gcChoLGIseCl7bGV0IGc9QjYuaW5saW5lQ29kZShoLGIseCk7cmV0dXJuIHguc3RhY2suaW5jbHVkZXMoInRhYmxlQ2VsbCIpJiYoZz1nLnJlcGxhY2UoL1x8L2csIlxcJCYiKSksZ319dmFyIFNWdD1sKCgpPT57UDQoKTtKcXQoKTtWb2UoKX0pO3ZhciB6VnQ9bCgoKT0+e1NWdCgpfSk7ZnVuY3Rpb24gX3ZlKCl7cmV0dXJue2V4aXQ6e3Rhc2tMaXN0Q2hlY2tWYWx1ZUNoZWNrZWQ6Q1Z0LHRhc2tMaXN0Q2hlY2tWYWx1ZVVuY2hlY2tlZDpDVnQscGFyYWdyYXBoOk81YX19fWZ1bmN0aW9uIFR2ZSgpe3JldHVybnt1bnNhZmU6W3thdEJyZWFrOiEwLGNoYXJhY3RlcjoiLSIsYWZ0ZXI6Ils6fC1dIn1dLGhhbmRsZXJzOntsaXN0SXRlbTpSNWF9fX1mdW5jdGlvbiBDVnQoZSl7bGV0IHQ9dGhpcy5zdGFja1t0aGlzLnN0YWNrLmxlbmd0aC0yXTt0LnR5cGUsdC5jaGVja2VkPWUudHlwZT09PSJ0YXNrTGlzdENoZWNrVmFsdWVDaGVja2VkIn1mdW5jdGlvbiBPNWEoZSl7bGV0IHQ9dGhpcy5zdGFja1t0aGlzLnN0YWNrLmxlbmd0aC0yXTtpZih0JiZ0LnR5cGU9PT0ibGlzdEl0ZW0iJiZ0eXBlb2YgdC5jaGVja2VkPT0iYm9vbGVhbiIpe2xldCByPXRoaXMuc3RhY2tbdGhpcy5zdGFjay5sZW5ndGgtMV07ci50eXBlO2xldCBhPXIuY2hpbGRyZW5bMF07aWYoYSYmYS50eXBlPT09InRleHQiKXtsZXQgaT10LmNoaWxkcmVuLG89LTEsbjtmb3IoOysrbzxpLmxlbmd0aDspe2xldCBzPWlbb107aWYocy50eXBlPT09InBhcmFncmFwaCIpe249czticmVha319bj09PXImJihhLnZhbHVlPWEudmFsdWUuc2xpY2UoMSksYS52YWx1ZS5sZW5ndGg9PT0wP3IuY2hpbGRyZW4uc2hpZnQoKTpyLnBvc2l0aW9uJiZhLnBvc2l0aW9uJiZ0eXBlb2YgYS5wb3NpdGlvbi5zdGFydC5vZmZzZXQ9PSJudW1iZXIiJiYoYS5wb3NpdGlvbi5zdGFydC5jb2x1bW4rKyxhLnBvc2l0aW9uLnN0YXJ0Lm9mZnNldCsrLHIucG9zaXRpb24uc3RhcnQ9T2JqZWN0LmFzc2lnbih7fSxhLnBvc2l0aW9uLnN0YXJ0KSkpfX10aGlzLmV4aXQoZSl9ZnVuY3Rpb24gUjVhKGUsdCxyLGEpe2xldCBpPWUuY2hpbGRyZW5bMF0sbz10eXBlb2YgZS5jaGVja2VkPT0iYm9vbGVhbiImJmkmJmkudHlwZT09PSJwYXJhZ3JhcGgiLG49IlsiKyhlLmNoZWNrZWQ/IngiOiIgIikrIl0gIixzPXIuY3JlYXRlVHJhY2tlcihhKTtvJiZzLm1vdmUobik7bGV0IGM9QjYubGlzdEl0ZW0oZSx0LHIsey4uLmEsLi4ucy5jdXJyZW50KCl9KTtyZXR1cm4gbyYmKGM9Yy5yZXBsYWNlKC9eKD86WyorLV18XGQrXC4pKFtcclxuXXwgezEsM30pLyxkKSksYztmdW5jdGlvbiBkKGYpe3JldHVybiBmK259fXZhciBfVnQ9bCgoKT0+e1A0KCk7Vm9lKCl9KTt2YXIgVFZ0PWwoKCk9PntfVnQoKX0pO2Z1bmN0aW9uIEx2ZSgpe3JldHVybltYYmUoKSxLYmUoKSxldmUoKSx6dmUoKSxfdmUoKV19ZnVuY3Rpb24gRHZlKGUpe3JldHVybntleHRlbnNpb25zOltRYmUoKSxKYmUoZSksdHZlKCksQ3ZlKGUpLFR2ZSgpXX19dmFyIExWdD1sKCgpPT57anF0KCk7R3F0KCk7WHF0KCk7elZ0KCk7VFZ0KCl9KTt2YXIgRFZ0PWwoKCk9PntMVnQoKX0pO2Z1bmN0aW9uIHJpKGUsdCxyLGEpe2xldCBpPWUubGVuZ3RoLG89MCxuO2lmKHQ8MD90PS10Pmk/MDppK3Q6dD10Pmk/aTp0LHI9cj4wP3I6MCxhLmxlbmd0aDwxZTQpbj1BcnJheS5mcm9tKGEpLG4udW5zaGlmdCh0LHIpLGUuc3BsaWNlKC4uLm4pO2Vsc2UgZm9yKHImJmUuc3BsaWNlKHQscik7bzxhLmxlbmd0aDspbj1hLnNsaWNlKG8sbysxZTQpLG4udW5zaGlmdCh0LDApLGUuc3BsaWNlKC4uLm4pLG8rPTFlNCx0Kz0xZTR9ZnVuY3Rpb24gZ2koZSx0KXtyZXR1cm4gZS5sZW5ndGg+MD8ocmkoZSxlLmxlbmd0aCwwLHQpLGUpOnR9dmFyIEoyPWwoKCk9Pnt9KTtmdW5jdGlvbiBVb2UoZSl7bGV0IHQ9e30scj0tMTtmb3IoOysrcjxlLmxlbmd0aDspQjVhKHQsZVtyXSk7cmV0dXJuIHR9ZnVuY3Rpb24gQjVhKGUsdCl7bGV0IHI7Zm9yKHIgaW4gdCl7bGV0IGk9KEF2ZS5jYWxsKGUscik/ZVtyXTp2b2lkIDApfHwoZVtyXT17fSksbz10W3JdLG47aWYobylmb3IobiBpbiBvKXtBdmUuY2FsbChpLG4pfHwoaVtuXT1bXSk7bGV0IHM9b1tuXTtINWEoaVtuXSxBcnJheS5pc0FycmF5KHMpP3M6cz9bc106W10pfX19ZnVuY3Rpb24gSDVhKGUsdCl7bGV0IHI9LTEsYT1bXTtmb3IoOysrcjx0Lmxlbmd0aDspKHRbcl0uYWRkPT09ImFmdGVyIj9lOmEpLnB1c2godFtyXSk7cmkoZSwwLDAsYSl9ZnVuY3Rpb24gV29lKGUpe2xldCB0PXt9LHI9LTE7Zm9yKDsrK3I8ZS5sZW5ndGg7KXE1YSh0LGVbcl0pO3JldHVybiB0fWZ1bmN0aW9uIHE1YShlLHQpe2xldCByO2ZvcihyIGluIHQpe2xldCBpPShBdmUuY2FsbChlLHIpP2Vbcl06dm9pZCAwKXx8KGVbcl09e30pLG89dFtyXSxuO2lmKG8pZm9yKG4gaW4gbylpW25dPW9bbl19fXZhciBBdmUsR29lPWwoKCk9PntKMigpO0F2ZT17fS5oYXNPd25Qcm9wZXJ0eX0pO2Z1bmN0aW9uIFB2ZSgpe3JldHVybnt0ZXh0OmVsfX1mdW5jdGlvbiBVNWEoZSx0LHIpe2xldCBhPXRoaXMsaSxvO3JldHVybiBuO2Z1bmN0aW9uIG4odSl7cmV0dXJuIUV2ZSh1KXx8IU9WdC5jYWxsKGEsYS5wcmV2aW91cyl8fCR2ZShhLmV2ZW50cyk/cih1KTooZS5lbnRlcigibGl0ZXJhbEF1dG9saW5rIiksZS5lbnRlcigibGl0ZXJhbEF1dG9saW5rRW1haWwiKSxzKHUpKX1mdW5jdGlvbiBzKHUpe3JldHVybiBFdmUodSk/KGUuY29uc3VtZSh1KSxzKTp1PT09NjQ/KGUuY29uc3VtZSh1KSxjKTpyKHUpfWZ1bmN0aW9uIGModSl7cmV0dXJuIHU9PT00Nj9lLmNoZWNrKFY1YSxmLGQpKHUpOnU9PT00NXx8dT09PTk1fHxHYSh1KT8obz0hMCxlLmNvbnN1bWUodSksYyk6Zih1KX1mdW5jdGlvbiBkKHUpe3JldHVybiBlLmNvbnN1bWUodSksaT0hMCxjfWZ1bmN0aW9uIGYodSl7cmV0dXJuIG8mJmkmJkZpKGEucHJldmlvdXMpPyhlLmV4aXQoImxpdGVyYWxBdXRvbGlua0VtYWlsIiksZS5leGl0KCJsaXRlcmFsQXV0b2xpbmsiKSx0KHUpKTpyKHUpfX1mdW5jdGlvbiBXNWEoZSx0LHIpe2xldCBhPXRoaXM7cmV0dXJuIGk7ZnVuY3Rpb24gaShuKXtyZXR1cm4gbiE9PTg3JiZuIT09MTE5fHwhTlZ0LmNhbGwoYSxhLnByZXZpb3VzKXx8JHZlKGEuZXZlbnRzKT9yKG4pOihlLmVudGVyKCJsaXRlcmFsQXV0b2xpbmsiKSxlLmVudGVyKCJsaXRlcmFsQXV0b2xpbmtXd3ciKSxlLmNoZWNrKGo1YSxlLmF0dGVtcHQoQVZ0LGUuYXR0ZW1wdChFVnQsbykscikscikobikpfWZ1bmN0aW9uIG8obil7cmV0dXJuIGUuZXhpdCgibGl0ZXJhbEF1dG9saW5rV3d3IiksZS5leGl0KCJsaXRlcmFsQXV0b2xpbmsiKSx0KG4pfX1mdW5jdGlvbiBHNWEoZSx0LHIpe2xldCBhPXRoaXMsaT0iIixvPSExO3JldHVybiBuO2Z1bmN0aW9uIG4odSl7cmV0dXJuKHU9PT03Mnx8dT09PTEwNCkmJkZWdC5jYWxsKGEsYS5wcmV2aW91cykmJiEkdmUoYS5ldmVudHMpPyhlLmVudGVyKCJsaXRlcmFsQXV0b2xpbmsiKSxlLmVudGVyKCJsaXRlcmFsQXV0b2xpbmtIdHRwIiksaSs9U3RyaW5nLmZyb21Db2RlUG9pbnQodSksZS5jb25zdW1lKHUpLHMpOnIodSl9ZnVuY3Rpb24gcyh1KXtpZihGaSh1KSYmaS5sZW5ndGg8NSlyZXR1cm4gaSs9U3RyaW5nLmZyb21Db2RlUG9pbnQodSksZS5jb25zdW1lKHUpLHM7aWYodT09PTU4KXtsZXQgcD1pLnRvTG93ZXJDYXNlKCk7aWYocD09PSJodHRwInx8cD09PSJodHRwcyIpcmV0dXJuIGUuY29uc3VtZSh1KSxjfXJldHVybiByKHUpfWZ1bmN0aW9uIGModSl7cmV0dXJuIHU9PT00Nz8oZS5jb25zdW1lKHUpLG8/ZDoobz0hMCxjKSk6cih1KX1mdW5jdGlvbiBkKHUpe3JldHVybiB1PT09bnVsbHx8TjYodSl8fGxyKHUpfHxLMih1KXx8RjYodSk/cih1KTplLmF0dGVtcHQoQVZ0LGUuYXR0ZW1wdChFVnQsZikscikodSl9ZnVuY3Rpb24gZih1KXtyZXR1cm4gZS5leGl0KCJsaXRlcmFsQXV0b2xpbmtIdHRwIiksZS5leGl0KCJsaXRlcmFsQXV0b2xpbmsiKSx0KHUpfX1mdW5jdGlvbiBZNWEoZSx0LHIpe2xldCBhPTA7cmV0dXJuIGk7ZnVuY3Rpb24gaShuKXtyZXR1cm4obj09PTg3fHxuPT09MTE5KSYmYTwzPyhhKyssZS5jb25zdW1lKG4pLGkpOm49PT00NiYmYT09PTM/KGUuY29uc3VtZShuKSxvKTpyKG4pfWZ1bmN0aW9uIG8obil7cmV0dXJuIG49PT1udWxsP3Iobik6dChuKX19ZnVuY3Rpb24gWjVhKGUsdCxyKXtsZXQgYSxpLG87cmV0dXJuIG47ZnVuY3Rpb24gbihkKXtyZXR1cm4gZD09PTQ2fHxkPT09OTU/ZS5jaGVjaygkVnQsYyxzKShkKTpkPT09bnVsbHx8bHIoZCl8fEsyKGQpfHxkIT09NDUmJkY2KGQpP2MoZCk6KG89ITAsZS5jb25zdW1lKGQpLG4pfWZ1bmN0aW9uIHMoZCl7cmV0dXJuIGQ9PT05NT9hPSEwOihpPWEsYT12b2lkIDApLGUuY29uc3VtZShkKSxufWZ1bmN0aW9uIGMoZCl7cmV0dXJuIGl8fGF8fCFvP3IoZCk6dChkKX19ZnVuY3Rpb24gWDVhKGUsdCl7bGV0IHI9MCxhPTA7cmV0dXJuIGk7ZnVuY3Rpb24gaShuKXtyZXR1cm4gbj09PTQwPyhyKyssZS5jb25zdW1lKG4pLGkpOm49PT00MSYmYTxyP28obik6bj09PTMzfHxuPT09MzR8fG49PT0zOHx8bj09PTM5fHxuPT09NDF8fG49PT00Mnx8bj09PTQ0fHxuPT09NDZ8fG49PT01OHx8bj09PTU5fHxuPT09NjB8fG49PT02M3x8bj09PTkzfHxuPT09OTV8fG49PT0xMjY/ZS5jaGVjaygkVnQsdCxvKShuKTpuPT09bnVsbHx8bHIobil8fEsyKG4pP3Qobik6KGUuY29uc3VtZShuKSxpKX1mdW5jdGlvbiBvKG4pe3JldHVybiBuPT09NDEmJmErKyxlLmNvbnN1bWUobiksaX19ZnVuY3Rpb24gUTVhKGUsdCxyKXtyZXR1cm4gYTtmdW5jdGlvbiBhKHMpe3JldHVybiBzPT09MzN8fHM9PT0zNHx8cz09PTM5fHxzPT09NDF8fHM9PT00Mnx8cz09PTQ0fHxzPT09NDZ8fHM9PT01OHx8cz09PTU5fHxzPT09NjN8fHM9PT05NXx8cz09PTEyNj8oZS5jb25zdW1lKHMpLGEpOnM9PT0zOD8oZS5jb25zdW1lKHMpLG8pOnM9PT05Mz8oZS5jb25zdW1lKHMpLGkpOnM9PT02MHx8cz09PW51bGx8fGxyKHMpfHxLMihzKT90KHMpOnIocyl9ZnVuY3Rpb24gaShzKXtyZXR1cm4gcz09PW51bGx8fHM9PT00MHx8cz09PTkxfHxscihzKXx8SzIocyk/dChzKTphKHMpfWZ1bmN0aW9uIG8ocyl7cmV0dXJuIEZpKHMpP24ocyk6cihzKX1mdW5jdGlvbiBuKHMpe3JldHVybiBzPT09NTk/KGUuY29uc3VtZShzKSxhKTpGaShzKT8oZS5jb25zdW1lKHMpLG4pOnIocyl9fWZ1bmN0aW9uIEs1YShlLHQscil7cmV0dXJuIGE7ZnVuY3Rpb24gYShvKXtyZXR1cm4gZS5jb25zdW1lKG8pLGl9ZnVuY3Rpb24gaShvKXtyZXR1cm4gR2Eobyk/cihvKTp0KG8pfX1mdW5jdGlvbiBOVnQoZSl7cmV0dXJuIGU9PT1udWxsfHxlPT09NDB8fGU9PT00Mnx8ZT09PTk1fHxlPT09OTF8fGU9PT05M3x8ZT09PTEyNnx8bHIoZSl9ZnVuY3Rpb24gRlZ0KGUpe3JldHVybiFGaShlKX1mdW5jdGlvbiBPVnQoZSl7cmV0dXJuIShlPT09NDd8fEV2ZShlKSl9ZnVuY3Rpb24gRXZlKGUpe3JldHVybiBlPT09NDN8fGU9PT00NXx8ZT09PTQ2fHxlPT09OTV8fEdhKGUpfWZ1bmN0aW9uICR2ZShlKXtsZXQgdD1lLmxlbmd0aCxyPSExO2Zvcig7dC0tOyl7bGV0IGE9ZVt0XVsxXTtpZigoYS50eXBlPT09ImxhYmVsTGluayJ8fGEudHlwZT09PSJsYWJlbEltYWdlIikmJiFhLl9iYWxhbmNlZCl7cj0hMDticmVha31pZihhLl9nZm1BdXRvbGlua0xpdGVyYWxXYWxrZWRJbnRvKXtyPSExO2JyZWFrfX1yZXR1cm4gZS5sZW5ndGg+MCYmIXImJihlW2UubGVuZ3RoLTFdWzFdLl9nZm1BdXRvbGlua0xpdGVyYWxXYWxrZWRJbnRvPSEwKSxyfXZhciBqNWEsQVZ0LEVWdCwkVnQsVjVhLFBWdCxJVnQsZ2MsZWwsUlZ0PWwoKCk9PntwcigpO2o1YT17dG9rZW5pemU6WTVhLHBhcnRpYWw6ITB9LEFWdD17dG9rZW5pemU6WjVhLHBhcnRpYWw6ITB9LEVWdD17dG9rZW5pemU6WDVhLHBhcnRpYWw6ITB9LCRWdD17dG9rZW5pemU6UTVhLHBhcnRpYWw6ITB9LFY1YT17dG9rZW5pemU6SzVhLHBhcnRpYWw6ITB9LFBWdD17bmFtZToid3d3QXV0b2xpbmsiLHRva2VuaXplOlc1YSxwcmV2aW91czpOVnR9LElWdD17bmFtZToicHJvdG9jb2xBdXRvbGluayIsdG9rZW5pemU6RzVhLHByZXZpb3VzOkZWdH0sZ2M9e25hbWU6ImVtYWlsQXV0b2xpbmsiLHRva2VuaXplOlU1YSxwcmV2aW91czpPVnR9LGVsPXt9O2Zvcih2YXIgcTY9NDg7cTY8MTIzOyllbFtxNl09Z2MscTYrKyxxNj09PTU4P3E2PTY1OnE2PT09OTEmJihxNj05Nyk7ZWxbNDNdPWdjLGVsWzQ1XT1nYyxlbFs0Nl09Z2MsZWxbOTVdPWdjLGVsWzcyXT1bZ2MsSVZ0XSxlbFsxMDRdPVtnYyxJVnRdLGVsWzg3XT1bZ2MsUFZ0XSxlbFsxMTldPVtnYyxQVnRdfSk7ZnVuY3Rpb24gWW9lKGUpe3JldHVybiBlLnJlcGxhY2UoL1siJjw+XS9nLHQpO2Z1bmN0aW9uIHQocil7cmV0dXJuIiYiK0o1YVtyXSsiOyJ9fXZhciBKNWEsSXZlPWwoKCk9PntKNWE9eyciJzoicXVvdCIsIiYiOiJhbXAiLCI8IjoibHQiLCI+IjoiZ3QifX0pO2Z1bmN0aW9uIHRsKGUsdCl7bGV0IHI9WW9lKGFuKGV8fCIiKSk7aWYoIXQpcmV0dXJuIHI7bGV0IGE9ci5pbmRleE9mKCI6IiksaT1yLmluZGV4T2YoIj8iKSxvPXIuaW5kZXhPZigiIyIpLG49ci5pbmRleE9mKCIvIik7cmV0dXJuIGE8MHx8bj4tMSYmYT5ufHxpPi0xJiZhPml8fG8+LTEmJmE+b3x8dC50ZXN0KHIuc2xpY2UoMCxhKSk/cjoiIn1mdW5jdGlvbiBhbihlKXtsZXQgdD1bXSxyPS0xLGE9MCxpPTA7Zm9yKDsrK3I8ZS5sZW5ndGg7KXtsZXQgbz1lLmNoYXJDb2RlQXQociksbj0iIjtpZihvPT09MzcmJkdhKGUuY2hhckNvZGVBdChyKzEpKSYmR2EoZS5jaGFyQ29kZUF0KHIrMikpKWk9MjtlbHNlIGlmKG88MTI4KS9bISMkJi07PT8tWl9hLXp+XS8udGVzdChTdHJpbmcuZnJvbUNoYXJDb2RlKG8pKXx8KG49U3RyaW5nLmZyb21DaGFyQ29kZShvKSk7ZWxzZSBpZihvPjU1Mjk1JiZvPDU3MzQ0KXtsZXQgcz1lLmNoYXJDb2RlQXQocisxKTtvPDU2MzIwJiZzPjU2MzE5JiZzPDU3MzQ0PyhuPVN0cmluZy5mcm9tQ2hhckNvZGUobyxzKSxpPTEpOm49Ilx1RkZGRCJ9ZWxzZSBuPVN0cmluZy5mcm9tQ2hhckNvZGUobyk7biYmKHQucHVzaChlLnNsaWNlKGEsciksZW5jb2RlVVJJQ29tcG9uZW50KG4pKSxhPXIraSsxLG49IiIpLGkmJihyKz1pLGk9MCl9cmV0dXJuIHQuam9pbigiIikrZS5zbGljZShhKX12YXIgcmw9bCgoKT0+e3ByKCk7SXZlKCl9KTtmdW5jdGlvbiBGdmUoKXtyZXR1cm57ZXhpdDp7bGl0ZXJhbEF1dG9saW5rRW1haWw6dHBhLGxpdGVyYWxBdXRvbGlua0h0dHA6cnBhLGxpdGVyYWxBdXRvbGlua1d3dzplcGF9fX1mdW5jdGlvbiBlcGEoZSl7TnZlLmNhbGwodGhpcyxlLCJodHRwOi8vIil9ZnVuY3Rpb24gdHBhKGUpe052ZS5jYWxsKHRoaXMsZSwibWFpbHRvOiIpfWZ1bmN0aW9uIHJwYShlKXtOdmUuY2FsbCh0aGlzLGUpfWZ1bmN0aW9uIE52ZShlLHQpe2xldCByPXRoaXMuc2xpY2VTZXJpYWxpemUoZSk7dGhpcy50YWcoJzxhIGhyZWY9IicrdGwoKHR8fCIiKStyKSsnIj4nKSx0aGlzLnJhdyh0aGlzLmVuY29kZShyKSksdGhpcy50YWcoIjwvYT4iKX12YXIgQlZ0PWwoKCk9PntybCgpfSk7dmFyIEhWdD1sKCgpPT57UlZ0KCk7QlZ0KCl9KTtmdW5jdGlvbiBSNChlLHQscil7bGV0IGE9W10saT0tMTtmb3IoOysraTxlLmxlbmd0aDspe2xldCBvPWVbaV0ucmVzb2x2ZUFsbDtvJiYhYS5pbmNsdWRlcyhvKSYmKHQ9byh0LHIpLGEucHVzaChvKSl9cmV0dXJuIHR9dmFyIEN5PWwoKCk9Pnt9KTtmdW5jdGlvbiBhcGEoZSx0KXtsZXQgcj0tMSxhLGksbyxuLHMsYyxkLGY7Zm9yKDsrK3I8ZS5sZW5ndGg7KWlmKGVbcl1bMF09PT0iZW50ZXIiJiZlW3JdWzFdLnR5cGU9PT0iYXR0ZW50aW9uU2VxdWVuY2UiJiZlW3JdWzFdLl9jbG9zZSl7Zm9yKGE9cjthLS07KWlmKGVbYV1bMF09PT0iZXhpdCImJmVbYV1bMV0udHlwZT09PSJhdHRlbnRpb25TZXF1ZW5jZSImJmVbYV1bMV0uX29wZW4mJnQuc2xpY2VTZXJpYWxpemUoZVthXVsxXSkuY2hhckNvZGVBdCgwKT09PXQuc2xpY2VTZXJpYWxpemUoZVtyXVsxXSkuY2hhckNvZGVBdCgwKSl7aWYoKGVbYV1bMV0uX2Nsb3NlfHxlW3JdWzFdLl9vcGVuKSYmKGVbcl1bMV0uZW5kLm9mZnNldC1lW3JdWzFdLnN0YXJ0Lm9mZnNldCklMyYmISgoZVthXVsxXS5lbmQub2Zmc2V0LWVbYV1bMV0uc3RhcnQub2Zmc2V0K2Vbcl1bMV0uZW5kLm9mZnNldC1lW3JdWzFdLnN0YXJ0Lm9mZnNldCklMykpY29udGludWU7Yz1lW2FdWzFdLmVuZC5vZmZzZXQtZVthXVsxXS5zdGFydC5vZmZzZXQ+MSYmZVtyXVsxXS5lbmQub2Zmc2V0LWVbcl1bMV0uc3RhcnQub2Zmc2V0PjE/MjoxO2xldCB1PXsuLi5lW2FdWzFdLmVuZH0scD17Li4uZVtyXVsxXS5zdGFydH07cVZ0KHUsLWMpLHFWdChwLGMpLG49e3R5cGU6Yz4xPyJzdHJvbmdTZXF1ZW5jZSI6ImVtcGhhc2lzU2VxdWVuY2UiLHN0YXJ0OnUsZW5kOnsuLi5lW2FdWzFdLmVuZH19LHM9e3R5cGU6Yz4xPyJzdHJvbmdTZXF1ZW5jZSI6ImVtcGhhc2lzU2VxdWVuY2UiLHN0YXJ0OnsuLi5lW3JdWzFdLnN0YXJ0fSxlbmQ6cH0sbz17dHlwZTpjPjE/InN0cm9uZ1RleHQiOiJlbXBoYXNpc1RleHQiLHN0YXJ0OnsuLi5lW2FdWzFdLmVuZH0sZW5kOnsuLi5lW3JdWzFdLnN0YXJ0fX0saT17dHlwZTpjPjE/InN0cm9uZyI6ImVtcGhhc2lzIixzdGFydDp7Li4ubi5zdGFydH0sZW5kOnsuLi5zLmVuZH19LGVbYV1bMV0uZW5kPXsuLi5uLnN0YXJ0fSxlW3JdWzFdLnN0YXJ0PXsuLi5zLmVuZH0sZD1bXSxlW2FdWzFdLmVuZC5vZmZzZXQtZVthXVsxXS5zdGFydC5vZmZzZXQmJihkPWdpKGQsW1siZW50ZXIiLGVbYV1bMV0sdF0sWyJleGl0IixlW2FdWzFdLHRdXSkpLGQ9Z2koZCxbWyJlbnRlciIsaSx0XSxbImVudGVyIixuLHRdLFsiZXhpdCIsbix0XSxbImVudGVyIixvLHRdXSksZD1naShkLFI0KHQucGFyc2VyLmNvbnN0cnVjdHMuaW5zaWRlU3Bhbi5udWxsLGUuc2xpY2UoYSsxLHIpLHQpKSxkPWdpKGQsW1siZXhpdCIsbyx0XSxbImVudGVyIixzLHRdLFsiZXhpdCIscyx0XSxbImV4aXQiLGksdF1dKSxlW3JdWzFdLmVuZC5vZmZzZXQtZVtyXVsxXS5zdGFydC5vZmZzZXQ/KGY9MixkPWdpKGQsW1siZW50ZXIiLGVbcl1bMV0sdF0sWyJleGl0IixlW3JdWzFdLHRdXSkpOmY9MCxyaShlLGEtMSxyLWErMyxkKSxyPWErZC5sZW5ndGgtZi0yO2JyZWFrfX1mb3Iocj0tMTsrK3I8ZS5sZW5ndGg7KWVbcl1bMV0udHlwZT09PSJhdHRlbnRpb25TZXF1ZW5jZSImJihlW3JdWzFdLnR5cGU9ImRhdGEiKTtyZXR1cm4gZX1mdW5jdGlvbiBpcGEoZSx0KXtsZXQgcj10aGlzLnBhcnNlci5jb25zdHJ1Y3RzLmF0dGVudGlvbk1hcmtlcnMubnVsbCxhPXRoaXMucHJldmlvdXMsaT1tYyhhKSxvO3JldHVybiBuO2Z1bmN0aW9uIG4oYyl7cmV0dXJuIG89YyxlLmVudGVyKCJhdHRlbnRpb25TZXF1ZW5jZSIpLHMoYyl9ZnVuY3Rpb24gcyhjKXtpZihjPT09bylyZXR1cm4gZS5jb25zdW1lKGMpLHM7bGV0IGQ9ZS5leGl0KCJhdHRlbnRpb25TZXF1ZW5jZSIpLGY9bWMoYyksdT0hZnx8Zj09PTImJml8fHIuaW5jbHVkZXMoYykscD0haXx8aT09PTImJmZ8fHIuaW5jbHVkZXMoYSk7cmV0dXJuIGQuX29wZW49ISEobz09PTQyP3U6dSYmKGl8fCFwKSksZC5fY2xvc2U9ISEobz09PTQyP3A6cCYmKGZ8fCF1KSksdChjKX19ZnVuY3Rpb24gcVZ0KGUsdCl7ZS5jb2x1bW4rPXQsZS5vZmZzZXQrPXQsZS5fYnVmZmVySW5kZXgrPXR9dmFyIF95LGpWdD1sKCgpPT57SjIoKTtGb2UoKTtDeSgpO195PXtuYW1lOiJhdHRlbnRpb24iLHJlc29sdmVBbGw6YXBhLHRva2VuaXplOmlwYX19KTtmdW5jdGlvbiBvcGEoZSx0LHIpe2xldCBhPTA7cmV0dXJuIGk7ZnVuY3Rpb24gaShoKXtyZXR1cm4gZS5lbnRlcigiYXV0b2xpbmsiKSxlLmVudGVyKCJhdXRvbGlua01hcmtlciIpLGUuY29uc3VtZShoKSxlLmV4aXQoImF1dG9saW5rTWFya2VyIiksZS5lbnRlcigiYXV0b2xpbmtQcm90b2NvbCIpLG99ZnVuY3Rpb24gbyhoKXtyZXR1cm4gRmkoaCk/KGUuY29uc3VtZShoKSxuKTpoPT09NjQ/cihoKTpkKGgpfWZ1bmN0aW9uIG4oaCl7cmV0dXJuIGg9PT00M3x8aD09PTQ1fHxoPT09NDZ8fEdhKGgpPyhhPTEscyhoKSk6ZChoKX1mdW5jdGlvbiBzKGgpe3JldHVybiBoPT09NTg/KGUuY29uc3VtZShoKSxhPTAsYyk6KGg9PT00M3x8aD09PTQ1fHxoPT09NDZ8fEdhKGgpKSYmYSsrPDMyPyhlLmNvbnN1bWUoaCkscyk6KGE9MCxkKGgpKX1mdW5jdGlvbiBjKGgpe3JldHVybiBoPT09NjI/KGUuZXhpdCgiYXV0b2xpbmtQcm90b2NvbCIpLGUuZW50ZXIoImF1dG9saW5rTWFya2VyIiksZS5jb25zdW1lKGgpLGUuZXhpdCgiYXV0b2xpbmtNYXJrZXIiKSxlLmV4aXQoImF1dG9saW5rIiksdCk6aD09PW51bGx8fGg9PT0zMnx8aD09PTYwfHxONihoKT9yKGgpOihlLmNvbnN1bWUoaCksYyl9ZnVuY3Rpb24gZChoKXtyZXR1cm4gaD09PTY0PyhlLmNvbnN1bWUoaCksZik6RHF0KGgpPyhlLmNvbnN1bWUoaCksZCk6cihoKX1mdW5jdGlvbiBmKGgpe3JldHVybiBHYShoKT91KGgpOnIoaCl9ZnVuY3Rpb24gdShoKXtyZXR1cm4gaD09PTQ2PyhlLmNvbnN1bWUoaCksYT0wLGYpOmg9PT02Mj8oZS5leGl0KCJhdXRvbGlua1Byb3RvY29sIikudHlwZT0iYXV0b2xpbmtFbWFpbCIsZS5lbnRlcigiYXV0b2xpbmtNYXJrZXIiKSxlLmNvbnN1bWUoaCksZS5leGl0KCJhdXRvbGlua01hcmtlciIpLGUuZXhpdCgiYXV0b2xpbmsiKSx0KTpwKGgpfWZ1bmN0aW9uIHAoaCl7aWYoKGg9PT00NXx8R2EoaCkpJiZhKys8NjMpe2xldCBiPWg9PT00NT9wOnU7cmV0dXJuIGUuY29uc3VtZShoKSxifXJldHVybiByKGgpfX12YXIgT3ZlLFZWdD1sKCgpPT57cHIoKTtPdmU9e25hbWU6ImF1dG9saW5rIix0b2tlbml6ZTpvcGF9fSk7ZnVuY3Rpb24gVHQoZSx0LHIsYSl7bGV0IGk9YT9hLTE6TnVtYmVyLlBPU0lUSVZFX0lORklOSVRZLG89MDtyZXR1cm4gbjtmdW5jdGlvbiBuKGMpe3JldHVybiBidChjKT8oZS5lbnRlcihyKSxzKGMpKTp0KGMpfWZ1bmN0aW9uIHMoYyl7cmV0dXJuIGJ0KGMpJiZvKys8aT8oZS5jb25zdW1lKGMpLHMpOihlLmV4aXQociksdChjKSl9fXZhciBhaT1sKCgpPT57cHIoKX0pO2Z1bmN0aW9uIG5wYShlLHQscil7cmV0dXJuIGE7ZnVuY3Rpb24gYShvKXtyZXR1cm4gYnQobyk/VHQoZSxpLCJsaW5lUHJlZml4Iikobyk6aShvKX1mdW5jdGlvbiBpKG8pe3JldHVybiBvPT09bnVsbHx8dHQobyk/dChvKTpyKG8pfX12YXIgYWwsWm9lPWwoKCk9PnthaSgpO3ByKCk7YWw9e3BhcnRpYWw6ITAsdG9rZW5pemU6bnBhfX0pO2Z1bmN0aW9uIHNwYShlLHQscil7bGV0IGE9dGhpcztyZXR1cm4gaTtmdW5jdGlvbiBpKG4pe2lmKG49PT02Mil7bGV0IHM9YS5jb250YWluZXJTdGF0ZTtyZXR1cm4gcy5vcGVufHwoZS5lbnRlcigiYmxvY2tRdW90ZSIse19jb250YWluZXI6ITB9KSxzLm9wZW49ITApLGUuZW50ZXIoImJsb2NrUXVvdGVQcmVmaXgiKSxlLmVudGVyKCJibG9ja1F1b3RlTWFya2VyIiksZS5jb25zdW1lKG4pLGUuZXhpdCgiYmxvY2tRdW90ZU1hcmtlciIpLG99cmV0dXJuIHIobil9ZnVuY3Rpb24gbyhuKXtyZXR1cm4gYnQobik/KGUuZW50ZXIoImJsb2NrUXVvdGVQcmVmaXhXaGl0ZXNwYWNlIiksZS5jb25zdW1lKG4pLGUuZXhpdCgiYmxvY2tRdW90ZVByZWZpeFdoaXRlc3BhY2UiKSxlLmV4aXQoImJsb2NrUXVvdGVQcmVmaXgiKSx0KTooZS5leGl0KCJibG9ja1F1b3RlUHJlZml4IiksdChuKSl9fWZ1bmN0aW9uIGxwYShlLHQscil7bGV0IGE9dGhpcztyZXR1cm4gaTtmdW5jdGlvbiBpKG4pe3JldHVybiBidChuKT9UdChlLG8sImxpbmVQcmVmaXgiLGEucGFyc2VyLmNvbnN0cnVjdHMuZGlzYWJsZS5udWxsLmluY2x1ZGVzKCJjb2RlSW5kZW50ZWQiKT92b2lkIDA6NCkobik6byhuKX1mdW5jdGlvbiBvKG4pe3JldHVybiBlLmF0dGVtcHQoWG9lLHQscikobil9fWZ1bmN0aW9uIGNwYShlKXtlLmV4aXQoImJsb2NrUXVvdGUiKX12YXIgWG9lLFVWdD1sKCgpPT57YWkoKTtwcigpO1hvZT17Y29udGludWF0aW9uOnt0b2tlbml6ZTpscGF9LGV4aXQ6Y3BhLG5hbWU6ImJsb2NrUXVvdGUiLHRva2VuaXplOnNwYX19KTtmdW5jdGlvbiBkcGEoZSx0LHIpe3JldHVybiBhO2Z1bmN0aW9uIGEobyl7cmV0dXJuIGUuZW50ZXIoImNoYXJhY3RlckVzY2FwZSIpLGUuZW50ZXIoImVzY2FwZU1hcmtlciIpLGUuY29uc3VtZShvKSxlLmV4aXQoImVzY2FwZU1hcmtlciIpLGl9ZnVuY3Rpb24gaShvKXtyZXR1cm4gRXF0KG8pPyhlLmVudGVyKCJjaGFyYWN0ZXJFc2NhcGVWYWx1ZSIpLGUuY29uc3VtZShvKSxlLmV4aXQoImNoYXJhY3RlckVzY2FwZVZhbHVlIiksZS5leGl0KCJjaGFyYWN0ZXJFc2NhcGUiKSx0KTpyKG8pfX12YXIgUW9lLFdWdD1sKCgpPT57cHIoKTtRb2U9e25hbWU6ImNoYXJhY3RlckVzY2FwZSIsdG9rZW5pemU6ZHBhfX0pO2Z1bmN0aW9uIHVwYShlLHQscil7bGV0IGE9dGhpcyxpPTAsbyxuO3JldHVybiBzO2Z1bmN0aW9uIHModSl7cmV0dXJuIGUuZW50ZXIoImNoYXJhY3RlclJlZmVyZW5jZSIpLGUuZW50ZXIoImNoYXJhY3RlclJlZmVyZW5jZU1hcmtlciIpLGUuY29uc3VtZSh1KSxlLmV4aXQoImNoYXJhY3RlclJlZmVyZW5jZU1hcmtlciIpLGN9ZnVuY3Rpb24gYyh1KXtyZXR1cm4gdT09PTM1PyhlLmVudGVyKCJjaGFyYWN0ZXJSZWZlcmVuY2VNYXJrZXJOdW1lcmljIiksZS5jb25zdW1lKHUpLGUuZXhpdCgiY2hhcmFjdGVyUmVmZXJlbmNlTWFya2VyTnVtZXJpYyIpLGQpOihlLmVudGVyKCJjaGFyYWN0ZXJSZWZlcmVuY2VWYWx1ZSIpLG89MzEsbj1HYSxmKHUpKX1mdW5jdGlvbiBkKHUpe3JldHVybiB1PT09ODh8fHU9PT0xMjA/KGUuZW50ZXIoImNoYXJhY3RlclJlZmVyZW5jZU1hcmtlckhleGFkZWNpbWFsIiksZS5jb25zdW1lKHUpLGUuZXhpdCgiY2hhcmFjdGVyUmVmZXJlbmNlTWFya2VySGV4YWRlY2ltYWwiKSxlLmVudGVyKCJjaGFyYWN0ZXJSZWZlcmVuY2VWYWx1ZSIpLG89NixuPUFxdCxmKTooZS5lbnRlcigiY2hhcmFjdGVyUmVmZXJlbmNlVmFsdWUiKSxvPTcsbj13eSxmKHUpKX1mdW5jdGlvbiBmKHUpe2lmKHU9PT01OSYmaSl7bGV0IHA9ZS5leGl0KCJjaGFyYWN0ZXJSZWZlcmVuY2VWYWx1ZSIpO3JldHVybiBuPT09R2EmJiFPNChhLnNsaWNlU2VyaWFsaXplKHApKT9yKHUpOihlLmVudGVyKCJjaGFyYWN0ZXJSZWZlcmVuY2VNYXJrZXIiKSxlLmNvbnN1bWUodSksZS5leGl0KCJjaGFyYWN0ZXJSZWZlcmVuY2VNYXJrZXIiKSxlLmV4aXQoImNoYXJhY3RlclJlZmVyZW5jZSIpLHQpfXJldHVybiBuKHUpJiZpKys8bz8oZS5jb25zdW1lKHUpLGYpOnIodSl9fXZhciBLb2UsR1Z0PWwoKCk9Pnt6eSgpO3ByKCk7S29lPXtuYW1lOiJjaGFyYWN0ZXJSZWZlcmVuY2UiLHRva2VuaXplOnVwYX19KTtmdW5jdGlvbiBmcGEoZSx0LHIpe2xldCBhPXRoaXMsaT17cGFydGlhbDohMCx0b2tlbml6ZTpDfSxvPTAsbj0wLHM7cmV0dXJuIGM7ZnVuY3Rpb24gYyhrKXtyZXR1cm4gZChrKX1mdW5jdGlvbiBkKGspe2xldCBOPWEuZXZlbnRzW2EuZXZlbnRzLmxlbmd0aC0xXTtyZXR1cm4gbz1OJiZOWzFdLnR5cGU9PT0ibGluZVByZWZpeCI/TlsyXS5zbGljZVNlcmlhbGl6ZShOWzFdLCEwKS5sZW5ndGg6MCxzPWssZS5lbnRlcigiY29kZUZlbmNlZCIpLGUuZW50ZXIoImNvZGVGZW5jZWRGZW5jZSIpLGUuZW50ZXIoImNvZGVGZW5jZWRGZW5jZVNlcXVlbmNlIiksZihrKX1mdW5jdGlvbiBmKGspe3JldHVybiBrPT09cz8obisrLGUuY29uc3VtZShrKSxmKTpuPDM/cihrKTooZS5leGl0KCJjb2RlRmVuY2VkRmVuY2VTZXF1ZW5jZSIpLGJ0KGspP1R0KGUsdSwid2hpdGVzcGFjZSIpKGspOnUoaykpfWZ1bmN0aW9uIHUoayl7cmV0dXJuIGs9PT1udWxsfHx0dChrKT8oZS5leGl0KCJjb2RlRmVuY2VkRmVuY2UiKSxhLmludGVycnVwdD90KGspOmUuY2hlY2soWVZ0LHgsRikoaykpOihlLmVudGVyKCJjb2RlRmVuY2VkRmVuY2VJbmZvIiksZS5lbnRlcigiY2h1bmtTdHJpbmciLHtjb250ZW50VHlwZToic3RyaW5nIn0pLHAoaykpfWZ1bmN0aW9uIHAoayl7cmV0dXJuIGs9PT1udWxsfHx0dChrKT8oZS5leGl0KCJjaHVua1N0cmluZyIpLGUuZXhpdCgiY29kZUZlbmNlZEZlbmNlSW5mbyIpLHUoaykpOmJ0KGspPyhlLmV4aXQoImNodW5rU3RyaW5nIiksZS5leGl0KCJjb2RlRmVuY2VkRmVuY2VJbmZvIiksVHQoZSxoLCJ3aGl0ZXNwYWNlIikoaykpOms9PT05NiYmaz09PXM/cihrKTooZS5jb25zdW1lKGspLHApfWZ1bmN0aW9uIGgoayl7cmV0dXJuIGs9PT1udWxsfHx0dChrKT91KGspOihlLmVudGVyKCJjb2RlRmVuY2VkRmVuY2VNZXRhIiksZS5lbnRlcigiY2h1bmtTdHJpbmciLHtjb250ZW50VHlwZToic3RyaW5nIn0pLGIoaykpfWZ1bmN0aW9uIGIoayl7cmV0dXJuIGs9PT1udWxsfHx0dChrKT8oZS5leGl0KCJjaHVua1N0cmluZyIpLGUuZXhpdCgiY29kZUZlbmNlZEZlbmNlTWV0YSIpLHUoaykpOms9PT05NiYmaz09PXM/cihrKTooZS5jb25zdW1lKGspLGIpfWZ1bmN0aW9uIHgoayl7cmV0dXJuIGUuYXR0ZW1wdChpLEYsZykoayl9ZnVuY3Rpb24gZyhrKXtyZXR1cm4gZS5lbnRlcigibGluZUVuZGluZyIpLGUuY29uc3VtZShrKSxlLmV4aXQoImxpbmVFbmRpbmciKSx2fWZ1bmN0aW9uIHYoayl7cmV0dXJuIG8+MCYmYnQoayk/VHQoZSx3LCJsaW5lUHJlZml4IixvKzEpKGspOncoayl9ZnVuY3Rpb24gdyhrKXtyZXR1cm4gaz09PW51bGx8fHR0KGspP2UuY2hlY2soWVZ0LHgsRikoayk6KGUuZW50ZXIoImNvZGVGbG93VmFsdWUiKSxNKGspKX1mdW5jdGlvbiBNKGspe3JldHVybiBrPT09bnVsbHx8dHQoayk/KGUuZXhpdCgiY29kZUZsb3dWYWx1ZSIpLHcoaykpOihlLmNvbnN1bWUoayksTSl9ZnVuY3Rpb24gRihrKXtyZXR1cm4gZS5leGl0KCJjb2RlRmVuY2VkIiksdChrKX1mdW5jdGlvbiBDKGssTiwkKXtsZXQgST0wO3JldHVybiBCO2Z1bmN0aW9uIEIoUCl7cmV0dXJuIGsuZW50ZXIoImxpbmVFbmRpbmciKSxrLmNvbnN1bWUoUCksay5leGl0KCJsaW5lRW5kaW5nIiksen1mdW5jdGlvbiB6KFApe3JldHVybiBrLmVudGVyKCJjb2RlRmVuY2VkRmVuY2UiKSxidChQKT9UdChrLHksImxpbmVQcmVmaXgiLGEucGFyc2VyLmNvbnN0cnVjdHMuZGlzYWJsZS5udWxsLmluY2x1ZGVzKCJjb2RlSW5kZW50ZWQiKT92b2lkIDA6NCkoUCk6eShQKX1mdW5jdGlvbiB5KFApe3JldHVybiBQPT09cz8oay5lbnRlcigiY29kZUZlbmNlZEZlbmNlU2VxdWVuY2UiKSxFKFApKTokKFApfWZ1bmN0aW9uIEUoUCl7cmV0dXJuIFA9PT1zPyhJKyssay5jb25zdW1lKFApLEUpOkk+PW4/KGsuZXhpdCgiY29kZUZlbmNlZEZlbmNlU2VxdWVuY2UiKSxidChQKT9UdChrLF8sIndoaXRlc3BhY2UiKShQKTpfKFApKTokKFApfWZ1bmN0aW9uIF8oUCl7cmV0dXJuIFA9PT1udWxsfHx0dChQKT8oay5leGl0KCJjb2RlRmVuY2VkRmVuY2UiKSxOKFApKTokKFApfX19ZnVuY3Rpb24gcHBhKGUsdCxyKXtsZXQgYT10aGlzO3JldHVybiBpO2Z1bmN0aW9uIGkobil7cmV0dXJuIG49PT1udWxsP3Iobik6KGUuZW50ZXIoImxpbmVFbmRpbmciKSxlLmNvbnN1bWUobiksZS5leGl0KCJsaW5lRW5kaW5nIiksbyl9ZnVuY3Rpb24gbyhuKXtyZXR1cm4gYS5wYXJzZXIubGF6eVthLm5vdygpLmxpbmVdP3Iobik6dChuKX19dmFyIFlWdCxKb2UsWlZ0PWwoKCk9PnthaSgpO3ByKCk7WVZ0PXtwYXJ0aWFsOiEwLHRva2VuaXplOnBwYX0sSm9lPXtjb25jcmV0ZTohMCxuYW1lOiJjb2RlRmVuY2VkIix0b2tlbml6ZTpmcGF9fSk7ZnVuY3Rpb24gbXBhKGUsdCxyKXtsZXQgYT10aGlzO3JldHVybiBpO2Z1bmN0aW9uIGkoZCl7cmV0dXJuIGUuZW50ZXIoImNvZGVJbmRlbnRlZCIpLFR0KGUsbywibGluZVByZWZpeCIsNSkoZCl9ZnVuY3Rpb24gbyhkKXtsZXQgZj1hLmV2ZW50c1thLmV2ZW50cy5sZW5ndGgtMV07cmV0dXJuIGYmJmZbMV0udHlwZT09PSJsaW5lUHJlZml4IiYmZlsyXS5zbGljZVNlcmlhbGl6ZShmWzFdLCEwKS5sZW5ndGg+PTQ/bihkKTpyKGQpfWZ1bmN0aW9uIG4oZCl7cmV0dXJuIGQ9PT1udWxsP2MoZCk6dHQoZCk/ZS5hdHRlbXB0KGhwYSxuLGMpKGQpOihlLmVudGVyKCJjb2RlRmxvd1ZhbHVlIikscyhkKSl9ZnVuY3Rpb24gcyhkKXtyZXR1cm4gZD09PW51bGx8fHR0KGQpPyhlLmV4aXQoImNvZGVGbG93VmFsdWUiKSxuKGQpKTooZS5jb25zdW1lKGQpLHMpfWZ1bmN0aW9uIGMoZCl7cmV0dXJuIGUuZXhpdCgiY29kZUluZGVudGVkIiksdChkKX19ZnVuY3Rpb24gZ3BhKGUsdCxyKXtsZXQgYT10aGlzO3JldHVybiBpO2Z1bmN0aW9uIGkobil7cmV0dXJuIGEucGFyc2VyLmxhenlbYS5ub3coKS5saW5lXT9yKG4pOnR0KG4pPyhlLmVudGVyKCJsaW5lRW5kaW5nIiksZS5jb25zdW1lKG4pLGUuZXhpdCgibGluZUVuZGluZyIpLGkpOlR0KGUsbywibGluZVByZWZpeCIsNSkobil9ZnVuY3Rpb24gbyhuKXtsZXQgcz1hLmV2ZW50c1thLmV2ZW50cy5sZW5ndGgtMV07cmV0dXJuIHMmJnNbMV0udHlwZT09PSJsaW5lUHJlZml4IiYmc1syXS5zbGljZVNlcmlhbGl6ZShzWzFdLCEwKS5sZW5ndGg+PTQ/dChuKTp0dChuKT9pKG4pOnIobil9fXZhciBUeSxocGEsWFZ0PWwoKCk9PnthaSgpO3ByKCk7VHk9e25hbWU6ImNvZGVJbmRlbnRlZCIsdG9rZW5pemU6bXBhfSxocGE9e3BhcnRpYWw6ITAsdG9rZW5pemU6Z3BhfX0pO2Z1bmN0aW9uIHhwYShlKXtsZXQgdD1lLmxlbmd0aC00LHI9MyxhLGk7aWYoKGVbcl1bMV0udHlwZT09PSJsaW5lRW5kaW5nInx8ZVtyXVsxXS50eXBlPT09InNwYWNlIikmJihlW3RdWzFdLnR5cGU9PT0ibGluZUVuZGluZyJ8fGVbdF1bMV0udHlwZT09PSJzcGFjZSIpKXtmb3IoYT1yOysrYTx0OylpZihlW2FdWzFdLnR5cGU9PT0iY29kZVRleHREYXRhIil7ZVtyXVsxXS50eXBlPSJjb2RlVGV4dFBhZGRpbmciLGVbdF1bMV0udHlwZT0iY29kZVRleHRQYWRkaW5nIixyKz0yLHQtPTI7YnJlYWt9fWZvcihhPXItMSx0Kys7KythPD10OylpPT09dm9pZCAwP2EhPT10JiZlW2FdWzFdLnR5cGUhPT0ibGluZUVuZGluZyImJihpPWEpOihhPT09dHx8ZVthXVsxXS50eXBlPT09ImxpbmVFbmRpbmciKSYmKGVbaV1bMV0udHlwZT0iY29kZVRleHREYXRhIixhIT09aSsyJiYoZVtpXVsxXS5lbmQ9ZVthLTFdWzFdLmVuZCxlLnNwbGljZShpKzIsYS1pLTIpLHQtPWEtaS0yLGE9aSsyKSxpPXZvaWQgMCk7cmV0dXJuIGV9ZnVuY3Rpb24gYnBhKGUpe3JldHVybiBlIT09OTZ8fHRoaXMuZXZlbnRzW3RoaXMuZXZlbnRzLmxlbmd0aC0xXVsxXS50eXBlPT09ImNoYXJhY3RlckVzY2FwZSJ9ZnVuY3Rpb24gdnBhKGUsdCxyKXtsZXQgYT10aGlzLGk9MCxvLG47cmV0dXJuIHM7ZnVuY3Rpb24gcyhwKXtyZXR1cm4gZS5lbnRlcigiY29kZVRleHQiKSxlLmVudGVyKCJjb2RlVGV4dFNlcXVlbmNlIiksYyhwKX1mdW5jdGlvbiBjKHApe3JldHVybiBwPT09OTY/KGUuY29uc3VtZShwKSxpKyssYyk6KGUuZXhpdCgiY29kZVRleHRTZXF1ZW5jZSIpLGQocCkpfWZ1bmN0aW9uIGQocCl7cmV0dXJuIHA9PT1udWxsP3IocCk6cD09PTMyPyhlLmVudGVyKCJzcGFjZSIpLGUuY29uc3VtZShwKSxlLmV4aXQoInNwYWNlIiksZCk6cD09PTk2PyhuPWUuZW50ZXIoImNvZGVUZXh0U2VxdWVuY2UiKSxvPTAsdShwKSk6dHQocCk/KGUuZW50ZXIoImxpbmVFbmRpbmciKSxlLmNvbnN1bWUocCksZS5leGl0KCJsaW5lRW5kaW5nIiksZCk6KGUuZW50ZXIoImNvZGVUZXh0RGF0YSIpLGYocCkpfWZ1bmN0aW9uIGYocCl7cmV0dXJuIHA9PT1udWxsfHxwPT09MzJ8fHA9PT05Nnx8dHQocCk/KGUuZXhpdCgiY29kZVRleHREYXRhIiksZChwKSk6KGUuY29uc3VtZShwKSxmKX1mdW5jdGlvbiB1KHApe3JldHVybiBwPT09OTY/KGUuY29uc3VtZShwKSxvKyssdSk6bz09PWk/KGUuZXhpdCgiY29kZVRleHRTZXF1ZW5jZSIpLGUuZXhpdCgiY29kZVRleHQiKSx0KHApKToobi50eXBlPSJjb2RlVGV4dERhdGEiLGYocCkpfX12YXIgUnZlLFFWdD1sKCgpPT57cHIoKTtSdmU9e25hbWU6ImNvZGVUZXh0IixwcmV2aW91czpicGEscmVzb2x2ZTp4cGEsdG9rZW5pemU6dnBhfX0pO2Z1bmN0aW9uIEx5KGUsdCl7bGV0IHI9MDtpZih0Lmxlbmd0aDwxZTQpZS5wdXNoKC4uLnQpO2Vsc2UgZm9yKDtyPHQubGVuZ3RoOyllLnB1c2goLi4udC5zbGljZShyLHIrMWU0KSkscis9MWU0fXZhciBEeSxCdmU9bCgoKT0+e0R5PWNsYXNze2NvbnN0cnVjdG9yKHQpe3RoaXMubGVmdD10P1suLi50XTpbXSx0aGlzLnJpZ2h0PVtdfWdldCh0KXtpZih0PDB8fHQ+PXRoaXMubGVmdC5sZW5ndGgrdGhpcy5yaWdodC5sZW5ndGgpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkNhbm5vdCBhY2Nlc3MgaW5kZXggYCIrdCsiYCBpbiBhIHNwbGljZSBidWZmZXIgb2Ygc2l6ZSBgIisodGhpcy5sZWZ0Lmxlbmd0aCt0aGlzLnJpZ2h0Lmxlbmd0aCkrImAiKTtyZXR1cm4gdDx0aGlzLmxlZnQubGVuZ3RoP3RoaXMubGVmdFt0XTp0aGlzLnJpZ2h0W3RoaXMucmlnaHQubGVuZ3RoLXQrdGhpcy5sZWZ0Lmxlbmd0aC0xXX1nZXQgbGVuZ3RoKCl7cmV0dXJuIHRoaXMubGVmdC5sZW5ndGgrdGhpcy5yaWdodC5sZW5ndGh9c2hpZnQoKXtyZXR1cm4gdGhpcy5zZXRDdXJzb3IoMCksdGhpcy5yaWdodC5wb3AoKX1zbGljZSh0LHIpe2xldCBhPXI/P051bWJlci5QT1NJVElWRV9JTkZJTklUWTtyZXR1cm4gYTx0aGlzLmxlZnQubGVuZ3RoP3RoaXMubGVmdC5zbGljZSh0LGEpOnQ+dGhpcy5sZWZ0Lmxlbmd0aD90aGlzLnJpZ2h0LnNsaWNlKHRoaXMucmlnaHQubGVuZ3RoLWErdGhpcy5sZWZ0Lmxlbmd0aCx0aGlzLnJpZ2h0Lmxlbmd0aC10K3RoaXMubGVmdC5sZW5ndGgpLnJldmVyc2UoKTp0aGlzLmxlZnQuc2xpY2UodCkuY29uY2F0KHRoaXMucmlnaHQuc2xpY2UodGhpcy5yaWdodC5sZW5ndGgtYSt0aGlzLmxlZnQubGVuZ3RoKS5yZXZlcnNlKCkpfXNwbGljZSh0LHIsYSl7bGV0IGk9cnx8MDt0aGlzLnNldEN1cnNvcihNYXRoLnRydW5jKHQpKTtsZXQgbz10aGlzLnJpZ2h0LnNwbGljZSh0aGlzLnJpZ2h0Lmxlbmd0aC1pLE51bWJlci5QT1NJVElWRV9JTkZJTklUWSk7cmV0dXJuIGEmJkx5KHRoaXMubGVmdCxhKSxvLnJldmVyc2UoKX1wb3AoKXtyZXR1cm4gdGhpcy5zZXRDdXJzb3IoTnVtYmVyLlBPU0lUSVZFX0lORklOSVRZKSx0aGlzLmxlZnQucG9wKCl9cHVzaCh0KXt0aGlzLnNldEN1cnNvcihOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFkpLHRoaXMubGVmdC5wdXNoKHQpfXB1c2hNYW55KHQpe3RoaXMuc2V0Q3Vyc29yKE51bWJlci5QT1NJVElWRV9JTkZJTklUWSksTHkodGhpcy5sZWZ0LHQpfXVuc2hpZnQodCl7dGhpcy5zZXRDdXJzb3IoMCksdGhpcy5yaWdodC5wdXNoKHQpfXVuc2hpZnRNYW55KHQpe3RoaXMuc2V0Q3Vyc29yKDApLEx5KHRoaXMucmlnaHQsdC5yZXZlcnNlKCkpfXNldEN1cnNvcih0KXtpZighKHQ9PT10aGlzLmxlZnQubGVuZ3RofHx0PnRoaXMubGVmdC5sZW5ndGgmJnRoaXMucmlnaHQubGVuZ3RoPT09MHx8dDwwJiZ0aGlzLmxlZnQubGVuZ3RoPT09MCkpaWYodDx0aGlzLmxlZnQubGVuZ3RoKXtsZXQgcj10aGlzLmxlZnQuc3BsaWNlKHQsTnVtYmVyLlBPU0lUSVZFX0lORklOSVRZKTtMeSh0aGlzLnJpZ2h0LHIucmV2ZXJzZSgpKX1lbHNle2xldCByPXRoaXMucmlnaHQuc3BsaWNlKHRoaXMubGVmdC5sZW5ndGgrdGhpcy5yaWdodC5sZW5ndGgtdCxOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFkpO0x5KHRoaXMubGVmdCxyLnJldmVyc2UoKSl9fX19KTtmdW5jdGlvbiBlbmUoZSl7bGV0IHQ9e30scj0tMSxhLGksbyxuLHMsYyxkLGY9bmV3IER5KGUpO2Zvcig7KytyPGYubGVuZ3RoOyl7Zm9yKDtyIGluIHQ7KXI9dFtyXTtpZihhPWYuZ2V0KHIpLHImJmFbMV0udHlwZT09PSJjaHVua0Zsb3ciJiZmLmdldChyLTEpWzFdLnR5cGU9PT0ibGlzdEl0ZW1QcmVmaXgiJiYoYz1hWzFdLl90b2tlbml6ZXIuZXZlbnRzLG89MCxvPGMubGVuZ3RoJiZjW29dWzFdLnR5cGU9PT0ibGluZUVuZGluZ0JsYW5rIiYmKG8rPTIpLG88Yy5sZW5ndGgmJmNbb11bMV0udHlwZT09PSJjb250ZW50IikpZm9yKDsrK288Yy5sZW5ndGgmJmNbb11bMV0udHlwZSE9PSJjb250ZW50IjspY1tvXVsxXS50eXBlPT09ImNodW5rVGV4dCImJihjW29dWzFdLl9pc0luRmlyc3RDb250ZW50T2ZMaXN0SXRlbT0hMCxvKyspO2lmKGFbMF09PT0iZW50ZXIiKWFbMV0uY29udGVudFR5cGUmJihPYmplY3QuYXNzaWduKHQseXBhKGYscikpLHI9dFtyXSxkPSEwKTtlbHNlIGlmKGFbMV0uX2NvbnRhaW5lcil7Zm9yKG89cixpPXZvaWQgMDtvLS07KWlmKG49Zi5nZXQobyksblsxXS50eXBlPT09ImxpbmVFbmRpbmcifHxuWzFdLnR5cGU9PT0ibGluZUVuZGluZ0JsYW5rIiluWzBdPT09ImVudGVyIiYmKGkmJihmLmdldChpKVsxXS50eXBlPSJsaW5lRW5kaW5nQmxhbmsiKSxuWzFdLnR5cGU9ImxpbmVFbmRpbmciLGk9byk7ZWxzZSBpZighKG5bMV0udHlwZT09PSJsaW5lUHJlZml4Inx8blsxXS50eXBlPT09Imxpc3RJdGVtSW5kZW50IikpYnJlYWs7aSYmKGFbMV0uZW5kPXsuLi5mLmdldChpKVsxXS5zdGFydH0scz1mLnNsaWNlKGkscikscy51bnNoaWZ0KGEpLGYuc3BsaWNlKGksci1pKzEscykpfX1yZXR1cm4gcmkoZSwwLE51bWJlci5QT1NJVElWRV9JTkZJTklUWSxmLnNsaWNlKDApKSwhZH1mdW5jdGlvbiB5cGEoZSx0KXtsZXQgcj1lLmdldCh0KVsxXSxhPWUuZ2V0KHQpWzJdLGk9dC0xLG89W10sbj1yLl90b2tlbml6ZXI7bnx8KG49YS5wYXJzZXJbci5jb250ZW50VHlwZV0oci5zdGFydCksci5fY29udGVudFR5cGVUZXh0VHJhaWxpbmcmJihuLl9jb250ZW50VHlwZVRleHRUcmFpbGluZz0hMCkpO2xldCBzPW4uZXZlbnRzLGM9W10sZD17fSxmLHUscD0tMSxoPXIsYj0wLHg9MCxnPVt4XTtmb3IoO2g7KXtmb3IoO2UuZ2V0KCsraSlbMV0hPT1oOyk7by5wdXNoKGkpLGguX3Rva2VuaXplcnx8KGY9YS5zbGljZVN0cmVhbShoKSxoLm5leHR8fGYucHVzaChudWxsKSx1JiZuLmRlZmluZVNraXAoaC5zdGFydCksaC5faXNJbkZpcnN0Q29udGVudE9mTGlzdEl0ZW0mJihuLl9nZm1UYXNrbGlzdEZpcnN0Q29udGVudE9mTGlzdEl0ZW09ITApLG4ud3JpdGUoZiksaC5faXNJbkZpcnN0Q29udGVudE9mTGlzdEl0ZW0mJihuLl9nZm1UYXNrbGlzdEZpcnN0Q29udGVudE9mTGlzdEl0ZW09dm9pZCAwKSksdT1oLGg9aC5uZXh0fWZvcihoPXI7KytwPHMubGVuZ3RoOylzW3BdWzBdPT09ImV4aXQiJiZzW3AtMV1bMF09PT0iZW50ZXIiJiZzW3BdWzFdLnR5cGU9PT1zW3AtMV1bMV0udHlwZSYmc1twXVsxXS5zdGFydC5saW5lIT09c1twXVsxXS5lbmQubGluZSYmKHg9cCsxLGcucHVzaCh4KSxoLl90b2tlbml6ZXI9dm9pZCAwLGgucHJldmlvdXM9dm9pZCAwLGg9aC5uZXh0KTtmb3Iobi5ldmVudHM9W10saD8oaC5fdG9rZW5pemVyPXZvaWQgMCxoLnByZXZpb3VzPXZvaWQgMCk6Zy5wb3AoKSxwPWcubGVuZ3RoO3AtLTspe2xldCB2PXMuc2xpY2UoZ1twXSxnW3ArMV0pLHc9by5wb3AoKTtjLnB1c2goW3csdyt2Lmxlbmd0aC0xXSksZS5zcGxpY2UodywyLHYpfWZvcihjLnJldmVyc2UoKSxwPS0xOysrcDxjLmxlbmd0aDspZFtiK2NbcF1bMF1dPWIrY1twXVsxXSxiKz1jW3BdWzFdLWNbcF1bMF0tMTtyZXR1cm4gZH12YXIgSHZlPWwoKCk9PntKMigpO0J2ZSgpO0J2ZSgpfSk7ZnVuY3Rpb24gTXBhKGUpe3JldHVybiBlbmUoZSksZX1mdW5jdGlvbiBrcGEoZSx0KXtsZXQgcjtyZXR1cm4gYTtmdW5jdGlvbiBhKHMpe3JldHVybiBlLmVudGVyKCJjb250ZW50Iikscj1lLmVudGVyKCJjaHVua0NvbnRlbnQiLHtjb250ZW50VHlwZToiY29udGVudCJ9KSxpKHMpfWZ1bmN0aW9uIGkocyl7cmV0dXJuIHM9PT1udWxsP28ocyk6dHQocyk/ZS5jaGVjayh3cGEsbixvKShzKTooZS5jb25zdW1lKHMpLGkpfWZ1bmN0aW9uIG8ocyl7cmV0dXJuIGUuZXhpdCgiY2h1bmtDb250ZW50IiksZS5leGl0KCJjb250ZW50IiksdChzKX1mdW5jdGlvbiBuKHMpe3JldHVybiBlLmNvbnN1bWUocyksZS5leGl0KCJjaHVua0NvbnRlbnQiKSxyLm5leHQ9ZS5lbnRlcigiY2h1bmtDb250ZW50Iix7Y29udGVudFR5cGU6ImNvbnRlbnQiLHByZXZpb3VzOnJ9KSxyPXIubmV4dCxpfX1mdW5jdGlvbiBTcGEoZSx0LHIpe2xldCBhPXRoaXM7cmV0dXJuIGk7ZnVuY3Rpb24gaShuKXtyZXR1cm4gZS5leGl0KCJjaHVua0NvbnRlbnQiKSxlLmVudGVyKCJsaW5lRW5kaW5nIiksZS5jb25zdW1lKG4pLGUuZXhpdCgibGluZUVuZGluZyIpLFR0KGUsbywibGluZVByZWZpeCIpfWZ1bmN0aW9uIG8obil7aWYobj09PW51bGx8fHR0KG4pKXJldHVybiByKG4pO2xldCBzPWEuZXZlbnRzW2EuZXZlbnRzLmxlbmd0aC0xXTtyZXR1cm4hYS5wYXJzZXIuY29uc3RydWN0cy5kaXNhYmxlLm51bGwuaW5jbHVkZXMoImNvZGVJbmRlbnRlZCIpJiZzJiZzWzFdLnR5cGU9PT0ibGluZVByZWZpeCImJnNbMl0uc2xpY2VTZXJpYWxpemUoc1sxXSwhMCkubGVuZ3RoPj00P3Qobik6ZS5pbnRlcnJ1cHQoYS5wYXJzZXIuY29uc3RydWN0cy5mbG93LHIsdCkobil9fXZhciBxdmUsd3BhLEtWdD1sKCgpPT57YWkoKTtwcigpO0h2ZSgpO3F2ZT17cmVzb2x2ZTpNcGEsdG9rZW5pemU6a3BhfSx3cGE9e3BhcnRpYWw6ITAsdG9rZW5pemU6U3BhfX0pO2Z1bmN0aW9uIHRuZShlLHQscixhLGksbyxuLHMsYyl7bGV0IGQ9Y3x8TnVtYmVyLlBPU0lUSVZFX0lORklOSVRZLGY9MDtyZXR1cm4gdTtmdW5jdGlvbiB1KHYpe3JldHVybiB2PT09NjA/KGUuZW50ZXIoYSksZS5lbnRlcihpKSxlLmVudGVyKG8pLGUuY29uc3VtZSh2KSxlLmV4aXQobykscCk6dj09PW51bGx8fHY9PT0zMnx8dj09PTQxfHxONih2KT9yKHYpOihlLmVudGVyKGEpLGUuZW50ZXIobiksZS5lbnRlcihzKSxlLmVudGVyKCJjaHVua1N0cmluZyIse2NvbnRlbnRUeXBlOiJzdHJpbmcifSkseCh2KSl9ZnVuY3Rpb24gcCh2KXtyZXR1cm4gdj09PTYyPyhlLmVudGVyKG8pLGUuY29uc3VtZSh2KSxlLmV4aXQobyksZS5leGl0KGkpLGUuZXhpdChhKSx0KTooZS5lbnRlcihzKSxlLmVudGVyKCJjaHVua1N0cmluZyIse2NvbnRlbnRUeXBlOiJzdHJpbmcifSksaCh2KSl9ZnVuY3Rpb24gaCh2KXtyZXR1cm4gdj09PTYyPyhlLmV4aXQoImNodW5rU3RyaW5nIiksZS5leGl0KHMpLHAodikpOnY9PT1udWxsfHx2PT09NjB8fHR0KHYpP3Iodik6KGUuY29uc3VtZSh2KSx2PT09OTI/YjpoKX1mdW5jdGlvbiBiKHYpe3JldHVybiB2PT09NjB8fHY9PT02Mnx8dj09PTkyPyhlLmNvbnN1bWUodiksaCk6aCh2KX1mdW5jdGlvbiB4KHYpe3JldHVybiFmJiYodj09PW51bGx8fHY9PT00MXx8bHIodikpPyhlLmV4aXQoImNodW5rU3RyaW5nIiksZS5leGl0KHMpLGUuZXhpdChuKSxlLmV4aXQoYSksdCh2KSk6ZjxkJiZ2PT09NDA/KGUuY29uc3VtZSh2KSxmKysseCk6dj09PTQxPyhlLmNvbnN1bWUodiksZi0tLHgpOnY9PT1udWxsfHx2PT09MzJ8fHY9PT00MHx8TjYodik/cih2KTooZS5jb25zdW1lKHYpLHY9PT05Mj9nOngpfWZ1bmN0aW9uIGcodil7cmV0dXJuIHY9PT00MHx8dj09PTQxfHx2PT09OTI/KGUuY29uc3VtZSh2KSx4KTp4KHYpfX12YXIganZlPWwoKCk9PntwcigpfSk7ZnVuY3Rpb24gcm5lKGUsdCxyLGEsaSxvKXtsZXQgbj10aGlzLHM9MCxjO3JldHVybiBkO2Z1bmN0aW9uIGQoaCl7cmV0dXJuIGUuZW50ZXIoYSksZS5lbnRlcihpKSxlLmNvbnN1bWUoaCksZS5leGl0KGkpLGUuZW50ZXIobyksZn1mdW5jdGlvbiBmKGgpe3JldHVybiBzPjk5OXx8aD09PW51bGx8fGg9PT05MXx8aD09PTkzJiYhY3x8aD09PTk0JiYhcyYmIl9oaWRkZW5Gb290bm90ZVN1cHBvcnQiaW4gbi5wYXJzZXIuY29uc3RydWN0cz9yKGgpOmg9PT05Mz8oZS5leGl0KG8pLGUuZW50ZXIoaSksZS5jb25zdW1lKGgpLGUuZXhpdChpKSxlLmV4aXQoYSksdCk6dHQoaCk/KGUuZW50ZXIoImxpbmVFbmRpbmciKSxlLmNvbnN1bWUoaCksZS5leGl0KCJsaW5lRW5kaW5nIiksZik6KGUuZW50ZXIoImNodW5rU3RyaW5nIix7Y29udGVudFR5cGU6InN0cmluZyJ9KSx1KGgpKX1mdW5jdGlvbiB1KGgpe3JldHVybiBoPT09bnVsbHx8aD09PTkxfHxoPT09OTN8fHR0KGgpfHxzKys+OTk5PyhlLmV4aXQoImNodW5rU3RyaW5nIiksZihoKSk6KGUuY29uc3VtZShoKSxjfHwoYz0hYnQoaCkpLGg9PT05Mj9wOnUpfWZ1bmN0aW9uIHAoaCl7cmV0dXJuIGg9PT05MXx8aD09PTkyfHxoPT09OTM/KGUuY29uc3VtZShoKSxzKyssdSk6dShoKX19dmFyIFZ2ZT1sKCgpPT57cHIoKX0pO2Z1bmN0aW9uIGFuZShlLHQscixhLGksbyl7bGV0IG47cmV0dXJuIHM7ZnVuY3Rpb24gcyhwKXtyZXR1cm4gcD09PTM0fHxwPT09Mzl8fHA9PT00MD8oZS5lbnRlcihhKSxlLmVudGVyKGkpLGUuY29uc3VtZShwKSxlLmV4aXQoaSksbj1wPT09NDA/NDE6cCxjKTpyKHApfWZ1bmN0aW9uIGMocCl7cmV0dXJuIHA9PT1uPyhlLmVudGVyKGkpLGUuY29uc3VtZShwKSxlLmV4aXQoaSksZS5leGl0KGEpLHQpOihlLmVudGVyKG8pLGQocCkpfWZ1bmN0aW9uIGQocCl7cmV0dXJuIHA9PT1uPyhlLmV4aXQobyksYyhuKSk6cD09PW51bGw/cihwKTp0dChwKT8oZS5lbnRlcigibGluZUVuZGluZyIpLGUuY29uc3VtZShwKSxlLmV4aXQoImxpbmVFbmRpbmciKSxUdChlLGQsImxpbmVQcmVmaXgiKSk6KGUuZW50ZXIoImNodW5rU3RyaW5nIix7Y29udGVudFR5cGU6InN0cmluZyJ9KSxmKHApKX1mdW5jdGlvbiBmKHApe3JldHVybiBwPT09bnx8cD09PW51bGx8fHR0KHApPyhlLmV4aXQoImNodW5rU3RyaW5nIiksZChwKSk6KGUuY29uc3VtZShwKSxwPT09OTI/dTpmKX1mdW5jdGlvbiB1KHApe3JldHVybiBwPT09bnx8cD09PTkyPyhlLmNvbnN1bWUocCksZik6ZihwKX19dmFyIFV2ZT1sKCgpPT57YWkoKTtwcigpfSk7ZnVuY3Rpb24gajYoZSx0KXtsZXQgcjtyZXR1cm4gYTtmdW5jdGlvbiBhKGkpe3JldHVybiB0dChpKT8oZS5lbnRlcigibGluZUVuZGluZyIpLGUuY29uc3VtZShpKSxlLmV4aXQoImxpbmVFbmRpbmciKSxyPSEwLGEpOmJ0KGkpP1R0KGUsYSxyPyJsaW5lUHJlZml4IjoibGluZVN1ZmZpeCIpKGkpOnQoaSl9fXZhciBXdmU9bCgoKT0+e2FpKCk7cHIoKX0pO2Z1bmN0aW9uIENwYShlLHQscil7bGV0IGE9dGhpcyxpO3JldHVybiBvO2Z1bmN0aW9uIG8oaCl7cmV0dXJuIGUuZW50ZXIoImRlZmluaXRpb24iKSxuKGgpfWZ1bmN0aW9uIG4oaCl7cmV0dXJuIHJuZS5jYWxsKGEsZSxzLHIsImRlZmluaXRpb25MYWJlbCIsImRlZmluaXRpb25MYWJlbE1hcmtlciIsImRlZmluaXRpb25MYWJlbFN0cmluZyIpKGgpfWZ1bmN0aW9uIHMoaCl7cmV0dXJuIGk9WWEoYS5zbGljZVNlcmlhbGl6ZShhLmV2ZW50c1thLmV2ZW50cy5sZW5ndGgtMV1bMV0pLnNsaWNlKDEsLTEpKSxoPT09NTg/KGUuZW50ZXIoImRlZmluaXRpb25NYXJrZXIiKSxlLmNvbnN1bWUoaCksZS5leGl0KCJkZWZpbml0aW9uTWFya2VyIiksYyk6cihoKX1mdW5jdGlvbiBjKGgpe3JldHVybiBscihoKT9qNihlLGQpKGgpOmQoaCl9ZnVuY3Rpb24gZChoKXtyZXR1cm4gdG5lKGUsZixyLCJkZWZpbml0aW9uRGVzdGluYXRpb24iLCJkZWZpbml0aW9uRGVzdGluYXRpb25MaXRlcmFsIiwiZGVmaW5pdGlvbkRlc3RpbmF0aW9uTGl0ZXJhbE1hcmtlciIsImRlZmluaXRpb25EZXN0aW5hdGlvblJhdyIsImRlZmluaXRpb25EZXN0aW5hdGlvblN0cmluZyIpKGgpfWZ1bmN0aW9uIGYoaCl7cmV0dXJuIGUuYXR0ZW1wdCh6cGEsdSx1KShoKX1mdW5jdGlvbiB1KGgpe3JldHVybiBidChoKT9UdChlLHAsIndoaXRlc3BhY2UiKShoKTpwKGgpfWZ1bmN0aW9uIHAoaCl7cmV0dXJuIGg9PT1udWxsfHx0dChoKT8oZS5leGl0KCJkZWZpbml0aW9uIiksYS5wYXJzZXIuZGVmaW5lZC5wdXNoKGkpLHQoaCkpOnIoaCl9fWZ1bmN0aW9uIF9wYShlLHQscil7cmV0dXJuIGE7ZnVuY3Rpb24gYShzKXtyZXR1cm4gbHIocyk/ajYoZSxpKShzKTpyKHMpfWZ1bmN0aW9uIGkocyl7cmV0dXJuIGFuZShlLG8sciwiZGVmaW5pdGlvblRpdGxlIiwiZGVmaW5pdGlvblRpdGxlTWFya2VyIiwiZGVmaW5pdGlvblRpdGxlU3RyaW5nIikocyl9ZnVuY3Rpb24gbyhzKXtyZXR1cm4gYnQocyk/VHQoZSxuLCJ3aGl0ZXNwYWNlIikocyk6bihzKX1mdW5jdGlvbiBuKHMpe3JldHVybiBzPT09bnVsbHx8dHQocyk/dChzKTpyKHMpfX12YXIgR3ZlLHpwYSxKVnQ9bCgoKT0+e2p2ZSgpO1Z2ZSgpO2FpKCk7VXZlKCk7V3ZlKCk7cHIoKTtGNCgpO0d2ZT17bmFtZToiZGVmaW5pdGlvbiIsdG9rZW5pemU6Q3BhfSx6cGE9e3BhcnRpYWw6ITAsdG9rZW5pemU6X3BhfX0pO2Z1bmN0aW9uIFRwYShlLHQscil7cmV0dXJuIGE7ZnVuY3Rpb24gYShvKXtyZXR1cm4gZS5lbnRlcigiaGFyZEJyZWFrRXNjYXBlIiksZS5jb25zdW1lKG8pLGl9ZnVuY3Rpb24gaShvKXtyZXR1cm4gdHQobyk/KGUuZXhpdCgiaGFyZEJyZWFrRXNjYXBlIiksdChvKSk6cihvKX19dmFyIFl2ZSxlVXQ9bCgoKT0+e3ByKCk7WXZlPXtuYW1lOiJoYXJkQnJlYWtFc2NhcGUiLHRva2VuaXplOlRwYX19KTtmdW5jdGlvbiBMcGEoZSx0KXtsZXQgcj1lLmxlbmd0aC0yLGE9MyxpLG87cmV0dXJuIGVbYV1bMV0udHlwZT09PSJ3aGl0ZXNwYWNlIiYmKGErPTIpLHItMj5hJiZlW3JdWzFdLnR5cGU9PT0id2hpdGVzcGFjZSImJihyLT0yKSxlW3JdWzFdLnR5cGU9PT0iYXR4SGVhZGluZ1NlcXVlbmNlIiYmKGE9PT1yLTF8fHItND5hJiZlW3ItMl1bMV0udHlwZT09PSJ3aGl0ZXNwYWNlIikmJihyLT1hKzE9PT1yPzI6NCkscj5hJiYoaT17dHlwZToiYXR4SGVhZGluZ1RleHQiLHN0YXJ0OmVbYV1bMV0uc3RhcnQsZW5kOmVbcl1bMV0uZW5kfSxvPXt0eXBlOiJjaHVua1RleHQiLHN0YXJ0OmVbYV1bMV0uc3RhcnQsZW5kOmVbcl1bMV0uZW5kLGNvbnRlbnRUeXBlOiJ0ZXh0In0scmkoZSxhLHItYSsxLFtbImVudGVyIixpLHRdLFsiZW50ZXIiLG8sdF0sWyJleGl0IixvLHRdLFsiZXhpdCIsaSx0XV0pKSxlfWZ1bmN0aW9uIERwYShlLHQscil7bGV0IGE9MDtyZXR1cm4gaTtmdW5jdGlvbiBpKGYpe3JldHVybiBlLmVudGVyKCJhdHhIZWFkaW5nIiksbyhmKX1mdW5jdGlvbiBvKGYpe3JldHVybiBlLmVudGVyKCJhdHhIZWFkaW5nU2VxdWVuY2UiKSxuKGYpfWZ1bmN0aW9uIG4oZil7cmV0dXJuIGY9PT0zNSYmYSsrPDY/KGUuY29uc3VtZShmKSxuKTpmPT09bnVsbHx8bHIoZik/KGUuZXhpdCgiYXR4SGVhZGluZ1NlcXVlbmNlIikscyhmKSk6cihmKX1mdW5jdGlvbiBzKGYpe3JldHVybiBmPT09MzU/KGUuZW50ZXIoImF0eEhlYWRpbmdTZXF1ZW5jZSIpLGMoZikpOmY9PT1udWxsfHx0dChmKT8oZS5leGl0KCJhdHhIZWFkaW5nIiksdChmKSk6YnQoZik/VHQoZSxzLCJ3aGl0ZXNwYWNlIikoZik6KGUuZW50ZXIoImF0eEhlYWRpbmdUZXh0IiksZChmKSl9ZnVuY3Rpb24gYyhmKXtyZXR1cm4gZj09PTM1PyhlLmNvbnN1bWUoZiksYyk6KGUuZXhpdCgiYXR4SGVhZGluZ1NlcXVlbmNlIikscyhmKSl9ZnVuY3Rpb24gZChmKXtyZXR1cm4gZj09PW51bGx8fGY9PT0zNXx8bHIoZik/KGUuZXhpdCgiYXR4SGVhZGluZ1RleHQiKSxzKGYpKTooZS5jb25zdW1lKGYpLGQpfX12YXIgWnZlLHRVdD1sKCgpPT57YWkoKTtwcigpO0oyKCk7WnZlPXtuYW1lOiJoZWFkaW5nQXR4IixyZXNvbHZlOkxwYSx0b2tlbml6ZTpEcGF9fSk7dmFyIHJVdCxYdmUsYVV0PWwoKCk9PntyVXQ9WyJhZGRyZXNzIiwiYXJ0aWNsZSIsImFzaWRlIiwiYmFzZSIsImJhc2Vmb250IiwiYmxvY2txdW90ZSIsImJvZHkiLCJjYXB0aW9uIiwiY2VudGVyIiwiY29sIiwiY29sZ3JvdXAiLCJkZCIsImRldGFpbHMiLCJkaWFsb2ciLCJkaXIiLCJkaXYiLCJkbCIsImR0IiwiZmllbGRzZXQiLCJmaWdjYXB0aW9uIiwiZmlndXJlIiwiZm9vdGVyIiwiZm9ybSIsImZyYW1lIiwiZnJhbWVzZXQiLCJoMSIsImgyIiwiaDMiLCJoNCIsImg1IiwiaDYiLCJoZWFkIiwiaGVhZGVyIiwiaHIiLCJodG1sIiwiaWZyYW1lIiwibGVnZW5kIiwibGkiLCJsaW5rIiwibWFpbiIsIm1lbnUiLCJtZW51aXRlbSIsIm5hdiIsIm5vZnJhbWVzIiwib2wiLCJvcHRncm91cCIsIm9wdGlvbiIsInAiLCJwYXJhbSIsInNlYXJjaCIsInNlY3Rpb24iLCJzdW1tYXJ5IiwidGFibGUiLCJ0Ym9keSIsInRkIiwidGZvb3QiLCJ0aCIsInRoZWFkIiwidGl0bGUiLCJ0ciIsInRyYWNrIiwidWwiXSxYdmU9WyJwcmUiLCJzY3JpcHQiLCJzdHlsZSIsInRleHRhcmVhIl19KTtmdW5jdGlvbiAkcGEoZSl7bGV0IHQ9ZS5sZW5ndGg7Zm9yKDt0LS0mJiEoZVt0XVswXT09PSJlbnRlciImJmVbdF1bMV0udHlwZT09PSJodG1sRmxvdyIpOyk7cmV0dXJuIHQ+MSYmZVt0LTJdWzFdLnR5cGU9PT0ibGluZVByZWZpeCImJihlW3RdWzFdLnN0YXJ0PWVbdC0yXVsxXS5zdGFydCxlW3QrMV1bMV0uc3RhcnQ9ZVt0LTJdWzFdLnN0YXJ0LGUuc3BsaWNlKHQtMiwyKSksZX1mdW5jdGlvbiBQcGEoZSx0LHIpe2xldCBhPXRoaXMsaSxvLG4scyxjO3JldHVybiBkO2Z1bmN0aW9uIGQoTCl7cmV0dXJuIGYoTCl9ZnVuY3Rpb24gZihMKXtyZXR1cm4gZS5lbnRlcigiaHRtbEZsb3ciKSxlLmVudGVyKCJodG1sRmxvd0RhdGEiKSxlLmNvbnN1bWUoTCksdX1mdW5jdGlvbiB1KEwpe3JldHVybiBMPT09MzM/KGUuY29uc3VtZShMKSxwKTpMPT09NDc/KGUuY29uc3VtZShMKSxvPSEwLHgpOkw9PT02Mz8oZS5jb25zdW1lKEwpLGk9MyxhLmludGVycnVwdD90OlQpOkZpKEwpPyhlLmNvbnN1bWUoTCksbj1TdHJpbmcuZnJvbUNoYXJDb2RlKEwpLGcpOnIoTCl9ZnVuY3Rpb24gcChMKXtyZXR1cm4gTD09PTQ1PyhlLmNvbnN1bWUoTCksaT0yLGgpOkw9PT05MT8oZS5jb25zdW1lKEwpLGk9NSxzPTAsYik6RmkoTCk/KGUuY29uc3VtZShMKSxpPTQsYS5pbnRlcnJ1cHQ/dDpUKTpyKEwpfWZ1bmN0aW9uIGgoTCl7cmV0dXJuIEw9PT00NT8oZS5jb25zdW1lKEwpLGEuaW50ZXJydXB0P3Q6VCk6cihMKX1mdW5jdGlvbiBiKEwpe2xldCBRPSJDREFUQVsiO3JldHVybiBMPT09US5jaGFyQ29kZUF0KHMrKyk/KGUuY29uc3VtZShMKSxzPT09US5sZW5ndGg/YS5pbnRlcnJ1cHQ/dDp5OmIpOnIoTCl9ZnVuY3Rpb24geChMKXtyZXR1cm4gRmkoTCk/KGUuY29uc3VtZShMKSxuPVN0cmluZy5mcm9tQ2hhckNvZGUoTCksZyk6cihMKX1mdW5jdGlvbiBnKEwpe2lmKEw9PT1udWxsfHxMPT09NDd8fEw9PT02Mnx8bHIoTCkpe2xldCBRPUw9PT00NyxrZT1uLnRvTG93ZXJDYXNlKCk7cmV0dXJuIVEmJiFvJiZYdmUuaW5jbHVkZXMoa2UpPyhpPTEsYS5pbnRlcnJ1cHQ/dChMKTp5KEwpKTpyVXQuaW5jbHVkZXMobi50b0xvd2VyQ2FzZSgpKT8oaT02LFE/KGUuY29uc3VtZShMKSx2KTphLmludGVycnVwdD90KEwpOnkoTCkpOihpPTcsYS5pbnRlcnJ1cHQmJiFhLnBhcnNlci5sYXp5W2Eubm93KCkubGluZV0/cihMKTpvP3coTCk6TShMKSl9cmV0dXJuIEw9PT00NXx8R2EoTCk/KGUuY29uc3VtZShMKSxuKz1TdHJpbmcuZnJvbUNoYXJDb2RlKEwpLGcpOnIoTCl9ZnVuY3Rpb24gdihMKXtyZXR1cm4gTD09PTYyPyhlLmNvbnN1bWUoTCksYS5pbnRlcnJ1cHQ/dDp5KTpyKEwpfWZ1bmN0aW9uIHcoTCl7cmV0dXJuIGJ0KEwpPyhlLmNvbnN1bWUoTCksdyk6QihMKX1mdW5jdGlvbiBNKEwpe3JldHVybiBMPT09NDc/KGUuY29uc3VtZShMKSxCKTpMPT09NTh8fEw9PT05NXx8RmkoTCk/KGUuY29uc3VtZShMKSxGKTpidChMKT8oZS5jb25zdW1lKEwpLE0pOkIoTCl9ZnVuY3Rpb24gRihMKXtyZXR1cm4gTD09PTQ1fHxMPT09NDZ8fEw9PT01OHx8TD09PTk1fHxHYShMKT8oZS5jb25zdW1lKEwpLEYpOkMoTCl9ZnVuY3Rpb24gQyhMKXtyZXR1cm4gTD09PTYxPyhlLmNvbnN1bWUoTCksayk6YnQoTCk/KGUuY29uc3VtZShMKSxDKTpNKEwpfWZ1bmN0aW9uIGsoTCl7cmV0dXJuIEw9PT1udWxsfHxMPT09NjB8fEw9PT02MXx8TD09PTYyfHxMPT09OTY/cihMKTpMPT09MzR8fEw9PT0zOT8oZS5jb25zdW1lKEwpLGM9TCxOKTpidChMKT8oZS5jb25zdW1lKEwpLGspOiQoTCl9ZnVuY3Rpb24gTihMKXtyZXR1cm4gTD09PWM/KGUuY29uc3VtZShMKSxjPW51bGwsSSk6TD09PW51bGx8fHR0KEwpP3IoTCk6KGUuY29uc3VtZShMKSxOKX1mdW5jdGlvbiAkKEwpe3JldHVybiBMPT09bnVsbHx8TD09PTM0fHxMPT09Mzl8fEw9PT00N3x8TD09PTYwfHxMPT09NjF8fEw9PT02Mnx8TD09PTk2fHxscihMKT9DKEwpOihlLmNvbnN1bWUoTCksJCl9ZnVuY3Rpb24gSShMKXtyZXR1cm4gTD09PTQ3fHxMPT09NjJ8fGJ0KEwpP00oTCk6cihMKX1mdW5jdGlvbiBCKEwpe3JldHVybiBMPT09NjI/KGUuY29uc3VtZShMKSx6KTpyKEwpfWZ1bmN0aW9uIHooTCl7cmV0dXJuIEw9PT1udWxsfHx0dChMKT95KEwpOmJ0KEwpPyhlLmNvbnN1bWUoTCkseik6cihMKX1mdW5jdGlvbiB5KEwpe3JldHVybiBMPT09NDUmJmk9PT0yPyhlLmNvbnN1bWUoTCksVik6TD09PTYwJiZpPT09MT8oZS5jb25zdW1lKEwpLEgpOkw9PT02MiYmaT09PTQ/KGUuY29uc3VtZShMKSxKKTpMPT09NjMmJmk9PT0zPyhlLmNvbnN1bWUoTCksVCk6TD09PTkzJiZpPT09NT8oZS5jb25zdW1lKEwpLGFlKTp0dChMKSYmKGk9PT02fHxpPT09Nyk/KGUuZXhpdCgiaHRtbEZsb3dEYXRhIiksZS5jaGVjayhBcGEsZmUsRSkoTCkpOkw9PT1udWxsfHx0dChMKT8oZS5leGl0KCJodG1sRmxvd0RhdGEiKSxFKEwpKTooZS5jb25zdW1lKEwpLHkpfWZ1bmN0aW9uIEUoTCl7cmV0dXJuIGUuY2hlY2soRXBhLF8sZmUpKEwpfWZ1bmN0aW9uIF8oTCl7cmV0dXJuIGUuZW50ZXIoImxpbmVFbmRpbmciKSxlLmNvbnN1bWUoTCksZS5leGl0KCJsaW5lRW5kaW5nIiksUH1mdW5jdGlvbiBQKEwpe3JldHVybiBMPT09bnVsbHx8dHQoTCk/RShMKTooZS5lbnRlcigiaHRtbEZsb3dEYXRhIikseShMKSl9ZnVuY3Rpb24gVihMKXtyZXR1cm4gTD09PTQ1PyhlLmNvbnN1bWUoTCksVCk6eShMKX1mdW5jdGlvbiBIKEwpe3JldHVybiBMPT09NDc/KGUuY29uc3VtZShMKSxuPSIiLFcpOnkoTCl9ZnVuY3Rpb24gVyhMKXtpZihMPT09NjIpe2xldCBRPW4udG9Mb3dlckNhc2UoKTtyZXR1cm4gWHZlLmluY2x1ZGVzKFEpPyhlLmNvbnN1bWUoTCksSik6eShMKX1yZXR1cm4gRmkoTCkmJm4ubGVuZ3RoPDg/KGUuY29uc3VtZShMKSxuKz1TdHJpbmcuZnJvbUNoYXJDb2RlKEwpLFcpOnkoTCl9ZnVuY3Rpb24gYWUoTCl7cmV0dXJuIEw9PT05Mz8oZS5jb25zdW1lKEwpLFQpOnkoTCl9ZnVuY3Rpb24gVChMKXtyZXR1cm4gTD09PTYyPyhlLmNvbnN1bWUoTCksSik6TD09PTQ1JiZpPT09Mj8oZS5jb25zdW1lKEwpLFQpOnkoTCl9ZnVuY3Rpb24gSihMKXtyZXR1cm4gTD09PW51bGx8fHR0KEwpPyhlLmV4aXQoImh0bWxGbG93RGF0YSIpLGZlKEwpKTooZS5jb25zdW1lKEwpLEopfWZ1bmN0aW9uIGZlKEwpe3JldHVybiBlLmV4aXQoImh0bWxGbG93IiksdChMKX19ZnVuY3Rpb24gSXBhKGUsdCxyKXtsZXQgYT10aGlzO3JldHVybiBpO2Z1bmN0aW9uIGkobil7cmV0dXJuIHR0KG4pPyhlLmVudGVyKCJsaW5lRW5kaW5nIiksZS5jb25zdW1lKG4pLGUuZXhpdCgibGluZUVuZGluZyIpLG8pOnIobil9ZnVuY3Rpb24gbyhuKXtyZXR1cm4gYS5wYXJzZXIubGF6eVthLm5vdygpLmxpbmVdP3Iobik6dChuKX19ZnVuY3Rpb24gTnBhKGUsdCxyKXtyZXR1cm4gYTtmdW5jdGlvbiBhKGkpe3JldHVybiBlLmVudGVyKCJsaW5lRW5kaW5nIiksZS5jb25zdW1lKGkpLGUuZXhpdCgibGluZUVuZGluZyIpLGUuYXR0ZW1wdChhbCx0LHIpfX12YXIgUXZlLEFwYSxFcGEsaVV0PWwoKCk9PntwcigpO2FVdCgpO1pvZSgpO1F2ZT17Y29uY3JldGU6ITAsbmFtZToiaHRtbEZsb3ciLHJlc29sdmVUbzokcGEsdG9rZW5pemU6UHBhfSxBcGE9e3BhcnRpYWw6ITAsdG9rZW5pemU6TnBhfSxFcGE9e3BhcnRpYWw6ITAsdG9rZW5pemU6SXBhfX0pO2Z1bmN0aW9uIEZwYShlLHQscil7bGV0IGE9dGhpcyxpLG8sbjtyZXR1cm4gcztmdW5jdGlvbiBzKFQpe3JldHVybiBlLmVudGVyKCJodG1sVGV4dCIpLGUuZW50ZXIoImh0bWxUZXh0RGF0YSIpLGUuY29uc3VtZShUKSxjfWZ1bmN0aW9uIGMoVCl7cmV0dXJuIFQ9PT0zMz8oZS5jb25zdW1lKFQpLGQpOlQ9PT00Nz8oZS5jb25zdW1lKFQpLEMpOlQ9PT02Mz8oZS5jb25zdW1lKFQpLE0pOkZpKFQpPyhlLmNvbnN1bWUoVCksJCk6cihUKX1mdW5jdGlvbiBkKFQpe3JldHVybiBUPT09NDU/KGUuY29uc3VtZShUKSxmKTpUPT09OTE/KGUuY29uc3VtZShUKSxvPTAsYik6RmkoVCk/KGUuY29uc3VtZShUKSx3KTpyKFQpfWZ1bmN0aW9uIGYoVCl7cmV0dXJuIFQ9PT00NT8oZS5jb25zdW1lKFQpLGgpOnIoVCl9ZnVuY3Rpb24gdShUKXtyZXR1cm4gVD09PW51bGw/cihUKTpUPT09NDU/KGUuY29uc3VtZShUKSxwKTp0dChUKT8obj11LEgoVCkpOihlLmNvbnN1bWUoVCksdSl9ZnVuY3Rpb24gcChUKXtyZXR1cm4gVD09PTQ1PyhlLmNvbnN1bWUoVCksaCk6dShUKX1mdW5jdGlvbiBoKFQpe3JldHVybiBUPT09NjI/VihUKTpUPT09NDU/cChUKTp1KFQpfWZ1bmN0aW9uIGIoVCl7bGV0IEo9IkNEQVRBWyI7cmV0dXJuIFQ9PT1KLmNoYXJDb2RlQXQobysrKT8oZS5jb25zdW1lKFQpLG89PT1KLmxlbmd0aD94OmIpOnIoVCl9ZnVuY3Rpb24geChUKXtyZXR1cm4gVD09PW51bGw/cihUKTpUPT09OTM/KGUuY29uc3VtZShUKSxnKTp0dChUKT8obj14LEgoVCkpOihlLmNvbnN1bWUoVCkseCl9ZnVuY3Rpb24gZyhUKXtyZXR1cm4gVD09PTkzPyhlLmNvbnN1bWUoVCksdik6eChUKX1mdW5jdGlvbiB2KFQpe3JldHVybiBUPT09NjI/VihUKTpUPT09OTM/KGUuY29uc3VtZShUKSx2KTp4KFQpfWZ1bmN0aW9uIHcoVCl7cmV0dXJuIFQ9PT1udWxsfHxUPT09NjI/VihUKTp0dChUKT8obj13LEgoVCkpOihlLmNvbnN1bWUoVCksdyl9ZnVuY3Rpb24gTShUKXtyZXR1cm4gVD09PW51bGw/cihUKTpUPT09NjM/KGUuY29uc3VtZShUKSxGKTp0dChUKT8obj1NLEgoVCkpOihlLmNvbnN1bWUoVCksTSl9ZnVuY3Rpb24gRihUKXtyZXR1cm4gVD09PTYyP1YoVCk6TShUKX1mdW5jdGlvbiBDKFQpe3JldHVybiBGaShUKT8oZS5jb25zdW1lKFQpLGspOnIoVCl9ZnVuY3Rpb24gayhUKXtyZXR1cm4gVD09PTQ1fHxHYShUKT8oZS5jb25zdW1lKFQpLGspOk4oVCl9ZnVuY3Rpb24gTihUKXtyZXR1cm4gdHQoVCk/KG49TixIKFQpKTpidChUKT8oZS5jb25zdW1lKFQpLE4pOlYoVCl9ZnVuY3Rpb24gJChUKXtyZXR1cm4gVD09PTQ1fHxHYShUKT8oZS5jb25zdW1lKFQpLCQpOlQ9PT00N3x8VD09PTYyfHxscihUKT9JKFQpOnIoVCl9ZnVuY3Rpb24gSShUKXtyZXR1cm4gVD09PTQ3PyhlLmNvbnN1bWUoVCksVik6VD09PTU4fHxUPT09OTV8fEZpKFQpPyhlLmNvbnN1bWUoVCksQik6dHQoVCk/KG49SSxIKFQpKTpidChUKT8oZS5jb25zdW1lKFQpLEkpOlYoVCl9ZnVuY3Rpb24gQihUKXtyZXR1cm4gVD09PTQ1fHxUPT09NDZ8fFQ9PT01OHx8VD09PTk1fHxHYShUKT8oZS5jb25zdW1lKFQpLEIpOnooVCl9ZnVuY3Rpb24geihUKXtyZXR1cm4gVD09PTYxPyhlLmNvbnN1bWUoVCkseSk6dHQoVCk/KG49eixIKFQpKTpidChUKT8oZS5jb25zdW1lKFQpLHopOkkoVCl9ZnVuY3Rpb24geShUKXtyZXR1cm4gVD09PW51bGx8fFQ9PT02MHx8VD09PTYxfHxUPT09NjJ8fFQ9PT05Nj9yKFQpOlQ9PT0zNHx8VD09PTM5PyhlLmNvbnN1bWUoVCksaT1ULEUpOnR0KFQpPyhuPXksSChUKSk6YnQoVCk/KGUuY29uc3VtZShUKSx5KTooZS5jb25zdW1lKFQpLF8pfWZ1bmN0aW9uIEUoVCl7cmV0dXJuIFQ9PT1pPyhlLmNvbnN1bWUoVCksaT12b2lkIDAsUCk6VD09PW51bGw/cihUKTp0dChUKT8obj1FLEgoVCkpOihlLmNvbnN1bWUoVCksRSl9ZnVuY3Rpb24gXyhUKXtyZXR1cm4gVD09PW51bGx8fFQ9PT0zNHx8VD09PTM5fHxUPT09NjB8fFQ9PT02MXx8VD09PTk2P3IoVCk6VD09PTQ3fHxUPT09NjJ8fGxyKFQpP0koVCk6KGUuY29uc3VtZShUKSxfKX1mdW5jdGlvbiBQKFQpe3JldHVybiBUPT09NDd8fFQ9PT02Mnx8bHIoVCk/SShUKTpyKFQpfWZ1bmN0aW9uIFYoVCl7cmV0dXJuIFQ9PT02Mj8oZS5jb25zdW1lKFQpLGUuZXhpdCgiaHRtbFRleHREYXRhIiksZS5leGl0KCJodG1sVGV4dCIpLHQpOnIoVCl9ZnVuY3Rpb24gSChUKXtyZXR1cm4gZS5leGl0KCJodG1sVGV4dERhdGEiKSxlLmVudGVyKCJsaW5lRW5kaW5nIiksZS5jb25zdW1lKFQpLGUuZXhpdCgibGluZUVuZGluZyIpLFd9ZnVuY3Rpb24gVyhUKXtyZXR1cm4gYnQoVCk/VHQoZSxhZSwibGluZVByZWZpeCIsYS5wYXJzZXIuY29uc3RydWN0cy5kaXNhYmxlLm51bGwuaW5jbHVkZXMoImNvZGVJbmRlbnRlZCIpP3ZvaWQgMDo0KShUKTphZShUKX1mdW5jdGlvbiBhZShUKXtyZXR1cm4gZS5lbnRlcigiaHRtbFRleHREYXRhIiksbihUKX19dmFyIEt2ZSxvVXQ9bCgoKT0+e2FpKCk7cHIoKTtLdmU9e25hbWU6Imh0bWxUZXh0Iix0b2tlbml6ZTpGcGF9fSk7ZnVuY3Rpb24gSHBhKGUpe2xldCB0PS0xLHI9W107Zm9yKDsrK3Q8ZS5sZW5ndGg7KXtsZXQgYT1lW3RdWzFdO2lmKHIucHVzaChlW3RdKSxhLnR5cGU9PT0ibGFiZWxJbWFnZSJ8fGEudHlwZT09PSJsYWJlbExpbmsifHxhLnR5cGU9PT0ibGFiZWxFbmQiKXtsZXQgaT1hLnR5cGU9PT0ibGFiZWxJbWFnZSI/NDoyO2EudHlwZT0iZGF0YSIsdCs9aX19cmV0dXJuIGUubGVuZ3RoIT09ci5sZW5ndGgmJnJpKGUsMCxlLmxlbmd0aCxyKSxlfWZ1bmN0aW9uIHFwYShlLHQpe2xldCByPWUubGVuZ3RoLGE9MCxpLG8sbixzO2Zvcig7ci0tOylpZihpPWVbcl1bMV0sbyl7aWYoaS50eXBlPT09ImxpbmsifHxpLnR5cGU9PT0ibGFiZWxMaW5rIiYmaS5faW5hY3RpdmUpYnJlYWs7ZVtyXVswXT09PSJlbnRlciImJmkudHlwZT09PSJsYWJlbExpbmsiJiYoaS5faW5hY3RpdmU9ITApfWVsc2UgaWYobil7aWYoZVtyXVswXT09PSJlbnRlciImJihpLnR5cGU9PT0ibGFiZWxJbWFnZSJ8fGkudHlwZT09PSJsYWJlbExpbmsiKSYmIWkuX2JhbGFuY2VkJiYobz1yLGkudHlwZSE9PSJsYWJlbExpbmsiKSl7YT0yO2JyZWFrfX1lbHNlIGkudHlwZT09PSJsYWJlbEVuZCImJihuPXIpO2xldCBjPXt0eXBlOmVbb11bMV0udHlwZT09PSJsYWJlbExpbmsiPyJsaW5rIjoiaW1hZ2UiLHN0YXJ0OnsuLi5lW29dWzFdLnN0YXJ0fSxlbmQ6ey4uLmVbZS5sZW5ndGgtMV1bMV0uZW5kfX0sZD17dHlwZToibGFiZWwiLHN0YXJ0OnsuLi5lW29dWzFdLnN0YXJ0fSxlbmQ6ey4uLmVbbl1bMV0uZW5kfX0sZj17dHlwZToibGFiZWxUZXh0IixzdGFydDp7Li4uZVtvK2ErMl1bMV0uZW5kfSxlbmQ6ey4uLmVbbi0yXVsxXS5zdGFydH19O3JldHVybiBzPVtbImVudGVyIixjLHRdLFsiZW50ZXIiLGQsdF1dLHM9Z2kocyxlLnNsaWNlKG8rMSxvK2ErMykpLHM9Z2kocyxbWyJlbnRlciIsZix0XV0pLHM9Z2kocyxSNCh0LnBhcnNlci5jb25zdHJ1Y3RzLmluc2lkZVNwYW4ubnVsbCxlLnNsaWNlKG8rYSs0LG4tMyksdCkpLHM9Z2kocyxbWyJleGl0IixmLHRdLGVbbi0yXSxlW24tMV0sWyJleGl0IixkLHRdXSkscz1naShzLGUuc2xpY2UobisxKSkscz1naShzLFtbImV4aXQiLGMsdF1dKSxyaShlLG8sZS5sZW5ndGgscyksZX1mdW5jdGlvbiBqcGEoZSx0LHIpe2xldCBhPXRoaXMsaT1hLmV2ZW50cy5sZW5ndGgsbyxuO2Zvcig7aS0tOylpZigoYS5ldmVudHNbaV1bMV0udHlwZT09PSJsYWJlbEltYWdlInx8YS5ldmVudHNbaV1bMV0udHlwZT09PSJsYWJlbExpbmsiKSYmIWEuZXZlbnRzW2ldWzFdLl9iYWxhbmNlZCl7bz1hLmV2ZW50c1tpXVsxXTticmVha31yZXR1cm4gcztmdW5jdGlvbiBzKHApe3JldHVybiBvP28uX2luYWN0aXZlP3UocCk6KG49YS5wYXJzZXIuZGVmaW5lZC5pbmNsdWRlcyhZYShhLnNsaWNlU2VyaWFsaXplKHtzdGFydDpvLmVuZCxlbmQ6YS5ub3coKX0pKSksZS5lbnRlcigibGFiZWxFbmQiKSxlLmVudGVyKCJsYWJlbE1hcmtlciIpLGUuY29uc3VtZShwKSxlLmV4aXQoImxhYmVsTWFya2VyIiksZS5leGl0KCJsYWJlbEVuZCIpLGMpOnIocCl9ZnVuY3Rpb24gYyhwKXtyZXR1cm4gcD09PTQwP2UuYXR0ZW1wdChPcGEsZixuP2Y6dSkocCk6cD09PTkxP2UuYXR0ZW1wdChScGEsZixuP2Q6dSkocCk6bj9mKHApOnUocCl9ZnVuY3Rpb24gZChwKXtyZXR1cm4gZS5hdHRlbXB0KEJwYSxmLHUpKHApfWZ1bmN0aW9uIGYocCl7cmV0dXJuIHQocCl9ZnVuY3Rpb24gdShwKXtyZXR1cm4gby5fYmFsYW5jZWQ9ITAscihwKX19ZnVuY3Rpb24gVnBhKGUsdCxyKXtyZXR1cm4gYTtmdW5jdGlvbiBhKHUpe3JldHVybiBlLmVudGVyKCJyZXNvdXJjZSIpLGUuZW50ZXIoInJlc291cmNlTWFya2VyIiksZS5jb25zdW1lKHUpLGUuZXhpdCgicmVzb3VyY2VNYXJrZXIiKSxpfWZ1bmN0aW9uIGkodSl7cmV0dXJuIGxyKHUpP2o2KGUsbykodSk6byh1KX1mdW5jdGlvbiBvKHUpe3JldHVybiB1PT09NDE/Zih1KTp0bmUoZSxuLHMsInJlc291cmNlRGVzdGluYXRpb24iLCJyZXNvdXJjZURlc3RpbmF0aW9uTGl0ZXJhbCIsInJlc291cmNlRGVzdGluYXRpb25MaXRlcmFsTWFya2VyIiwicmVzb3VyY2VEZXN0aW5hdGlvblJhdyIsInJlc291cmNlRGVzdGluYXRpb25TdHJpbmciLDMyKSh1KX1mdW5jdGlvbiBuKHUpe3JldHVybiBscih1KT9qNihlLGMpKHUpOmYodSl9ZnVuY3Rpb24gcyh1KXtyZXR1cm4gcih1KX1mdW5jdGlvbiBjKHUpe3JldHVybiB1PT09MzR8fHU9PT0zOXx8dT09PTQwP2FuZShlLGQsciwicmVzb3VyY2VUaXRsZSIsInJlc291cmNlVGl0bGVNYXJrZXIiLCJyZXNvdXJjZVRpdGxlU3RyaW5nIikodSk6Zih1KX1mdW5jdGlvbiBkKHUpe3JldHVybiBscih1KT9qNihlLGYpKHUpOmYodSl9ZnVuY3Rpb24gZih1KXtyZXR1cm4gdT09PTQxPyhlLmVudGVyKCJyZXNvdXJjZU1hcmtlciIpLGUuY29uc3VtZSh1KSxlLmV4aXQoInJlc291cmNlTWFya2VyIiksZS5leGl0KCJyZXNvdXJjZSIpLHQpOnIodSl9fWZ1bmN0aW9uIFVwYShlLHQscil7bGV0IGE9dGhpcztyZXR1cm4gaTtmdW5jdGlvbiBpKHMpe3JldHVybiBybmUuY2FsbChhLGUsbyxuLCJyZWZlcmVuY2UiLCJyZWZlcmVuY2VNYXJrZXIiLCJyZWZlcmVuY2VTdHJpbmciKShzKX1mdW5jdGlvbiBvKHMpe3JldHVybiBhLnBhcnNlci5kZWZpbmVkLmluY2x1ZGVzKFlhKGEuc2xpY2VTZXJpYWxpemUoYS5ldmVudHNbYS5ldmVudHMubGVuZ3RoLTFdWzFdKS5zbGljZSgxLC0xKSkpP3Qocyk6cihzKX1mdW5jdGlvbiBuKHMpe3JldHVybiByKHMpfX1mdW5jdGlvbiBXcGEoZSx0LHIpe3JldHVybiBhO2Z1bmN0aW9uIGEobyl7cmV0dXJuIGUuZW50ZXIoInJlZmVyZW5jZSIpLGUuZW50ZXIoInJlZmVyZW5jZU1hcmtlciIpLGUuY29uc3VtZShvKSxlLmV4aXQoInJlZmVyZW5jZU1hcmtlciIpLGl9ZnVuY3Rpb24gaShvKXtyZXR1cm4gbz09PTkzPyhlLmVudGVyKCJyZWZlcmVuY2VNYXJrZXIiKSxlLmNvbnN1bWUobyksZS5leGl0KCJyZWZlcmVuY2VNYXJrZXIiKSxlLmV4aXQoInJlZmVyZW5jZSIpLHQpOnIobyl9fXZhciBWNixPcGEsUnBhLEJwYSxpbmU9bCgoKT0+e2p2ZSgpO1Z2ZSgpO1V2ZSgpO1d2ZSgpO3ByKCk7SjIoKTtGNCgpO0N5KCk7VjY9e25hbWU6ImxhYmVsRW5kIixyZXNvbHZlQWxsOkhwYSxyZXNvbHZlVG86cXBhLHRva2VuaXplOmpwYX0sT3BhPXt0b2tlbml6ZTpWcGF9LFJwYT17dG9rZW5pemU6VXBhfSxCcGE9e3Rva2VuaXplOldwYX19KTtmdW5jdGlvbiBHcGEoZSx0LHIpe2xldCBhPXRoaXM7cmV0dXJuIGk7ZnVuY3Rpb24gaShzKXtyZXR1cm4gZS5lbnRlcigibGFiZWxJbWFnZSIpLGUuZW50ZXIoImxhYmVsSW1hZ2VNYXJrZXIiKSxlLmNvbnN1bWUocyksZS5leGl0KCJsYWJlbEltYWdlTWFya2VyIiksb31mdW5jdGlvbiBvKHMpe3JldHVybiBzPT09OTE/KGUuZW50ZXIoImxhYmVsTWFya2VyIiksZS5jb25zdW1lKHMpLGUuZXhpdCgibGFiZWxNYXJrZXIiKSxlLmV4aXQoImxhYmVsSW1hZ2UiKSxuKTpyKHMpfWZ1bmN0aW9uIG4ocyl7cmV0dXJuIHM9PT05NCYmIl9oaWRkZW5Gb290bm90ZVN1cHBvcnQiaW4gYS5wYXJzZXIuY29uc3RydWN0cz9yKHMpOnQocyl9fXZhciBKdmUsblV0PWwoKCk9PntpbmUoKTtKdmU9e25hbWU6ImxhYmVsU3RhcnRJbWFnZSIscmVzb2x2ZUFsbDpWNi5yZXNvbHZlQWxsLHRva2VuaXplOkdwYX19KTtmdW5jdGlvbiBZcGEoZSx0LHIpe2xldCBhPXRoaXM7cmV0dXJuIGk7ZnVuY3Rpb24gaShuKXtyZXR1cm4gZS5lbnRlcigibGFiZWxMaW5rIiksZS5lbnRlcigibGFiZWxNYXJrZXIiKSxlLmNvbnN1bWUobiksZS5leGl0KCJsYWJlbE1hcmtlciIpLGUuZXhpdCgibGFiZWxMaW5rIiksb31mdW5jdGlvbiBvKG4pe3JldHVybiBuPT09OTQmJiJfaGlkZGVuRm9vdG5vdGVTdXBwb3J0ImluIGEucGFyc2VyLmNvbnN0cnVjdHM/cihuKTp0KG4pfX12YXIgZXllLHNVdD1sKCgpPT57aW5lKCk7ZXllPXtuYW1lOiJsYWJlbFN0YXJ0TGluayIscmVzb2x2ZUFsbDpWNi5yZXNvbHZlQWxsLHRva2VuaXplOllwYX19KTtmdW5jdGlvbiBacGEoZSx0KXtyZXR1cm4gcjtmdW5jdGlvbiByKGEpe3JldHVybiBlLmVudGVyKCJsaW5lRW5kaW5nIiksZS5jb25zdW1lKGEpLGUuZXhpdCgibGluZUVuZGluZyIpLFR0KGUsdCwibGluZVByZWZpeCIpfX12YXIgQXksbFV0PWwoKCk9PnthaSgpO3ByKCk7QXk9e25hbWU6ImxpbmVFbmRpbmciLHRva2VuaXplOlpwYX19KTtmdW5jdGlvbiBYcGEoZSx0LHIpe2xldCBhPTAsaTtyZXR1cm4gbztmdW5jdGlvbiBvKGQpe3JldHVybiBlLmVudGVyKCJ0aGVtYXRpY0JyZWFrIiksbihkKX1mdW5jdGlvbiBuKGQpe3JldHVybiBpPWQscyhkKX1mdW5jdGlvbiBzKGQpe3JldHVybiBkPT09aT8oZS5lbnRlcigidGhlbWF0aWNCcmVha1NlcXVlbmNlIiksYyhkKSk6YT49MyYmKGQ9PT1udWxsfHx0dChkKSk/KGUuZXhpdCgidGhlbWF0aWNCcmVhayIpLHQoZCkpOnIoZCl9ZnVuY3Rpb24gYyhkKXtyZXR1cm4gZD09PWk/KGUuY29uc3VtZShkKSxhKyssYyk6KGUuZXhpdCgidGhlbWF0aWNCcmVha1NlcXVlbmNlIiksYnQoZCk/VHQoZSxzLCJ3aGl0ZXNwYWNlIikoZCk6cyhkKSl9fXZhciBVNix0eWU9bCgoKT0+e2FpKCk7cHIoKTtVNj17bmFtZToidGhlbWF0aWNCcmVhayIsdG9rZW5pemU6WHBhfX0pO2Z1bmN0aW9uIEpwYShlLHQscil7bGV0IGE9dGhpcyxpPWEuZXZlbnRzW2EuZXZlbnRzLmxlbmd0aC0xXSxvPWkmJmlbMV0udHlwZT09PSJsaW5lUHJlZml4Ij9pWzJdLnNsaWNlU2VyaWFsaXplKGlbMV0sITApLmxlbmd0aDowLG49MDtyZXR1cm4gcztmdW5jdGlvbiBzKGgpe2xldCBiPWEuY29udGFpbmVyU3RhdGUudHlwZXx8KGg9PT00Mnx8aD09PTQzfHxoPT09NDU/Imxpc3RVbm9yZGVyZWQiOiJsaXN0T3JkZXJlZCIpO2lmKGI9PT0ibGlzdFVub3JkZXJlZCI/IWEuY29udGFpbmVyU3RhdGUubWFya2VyfHxoPT09YS5jb250YWluZXJTdGF0ZS5tYXJrZXI6d3koaCkpe2lmKGEuY29udGFpbmVyU3RhdGUudHlwZXx8KGEuY29udGFpbmVyU3RhdGUudHlwZT1iLGUuZW50ZXIoYix7X2NvbnRhaW5lcjohMH0pKSxiPT09Imxpc3RVbm9yZGVyZWQiKXJldHVybiBlLmVudGVyKCJsaXN0SXRlbVByZWZpeCIpLGg9PT00Mnx8aD09PTQ1P2UuY2hlY2soVTYscixkKShoKTpkKGgpO2lmKCFhLmludGVycnVwdHx8aD09PTQ5KXJldHVybiBlLmVudGVyKCJsaXN0SXRlbVByZWZpeCIpLGUuZW50ZXIoImxpc3RJdGVtVmFsdWUiKSxjKGgpfXJldHVybiByKGgpfWZ1bmN0aW9uIGMoaCl7cmV0dXJuIHd5KGgpJiYrK248MTA/KGUuY29uc3VtZShoKSxjKTooIWEuaW50ZXJydXB0fHxuPDIpJiYoYS5jb250YWluZXJTdGF0ZS5tYXJrZXI/aD09PWEuY29udGFpbmVyU3RhdGUubWFya2VyOmg9PT00MXx8aD09PTQ2KT8oZS5leGl0KCJsaXN0SXRlbVZhbHVlIiksZChoKSk6cihoKX1mdW5jdGlvbiBkKGgpe3JldHVybiBlLmVudGVyKCJsaXN0SXRlbU1hcmtlciIpLGUuY29uc3VtZShoKSxlLmV4aXQoImxpc3RJdGVtTWFya2VyIiksYS5jb250YWluZXJTdGF0ZS5tYXJrZXI9YS5jb250YWluZXJTdGF0ZS5tYXJrZXJ8fGgsZS5jaGVjayhhbCxhLmludGVycnVwdD9yOmYsZS5hdHRlbXB0KFFwYSxwLHUpKX1mdW5jdGlvbiBmKGgpe3JldHVybiBhLmNvbnRhaW5lclN0YXRlLmluaXRpYWxCbGFua0xpbmU9ITAsbysrLHAoaCl9ZnVuY3Rpb24gdShoKXtyZXR1cm4gYnQoaCk/KGUuZW50ZXIoImxpc3RJdGVtUHJlZml4V2hpdGVzcGFjZSIpLGUuY29uc3VtZShoKSxlLmV4aXQoImxpc3RJdGVtUHJlZml4V2hpdGVzcGFjZSIpLHApOnIoaCl9ZnVuY3Rpb24gcChoKXtyZXR1cm4gYS5jb250YWluZXJTdGF0ZS5zaXplPW8rYS5zbGljZVNlcmlhbGl6ZShlLmV4aXQoImxpc3RJdGVtUHJlZml4IiksITApLmxlbmd0aCx0KGgpfX1mdW5jdGlvbiBlOGEoZSx0LHIpe2xldCBhPXRoaXM7cmV0dXJuIGEuY29udGFpbmVyU3RhdGUuX2Nsb3NlRmxvdz12b2lkIDAsZS5jaGVjayhhbCxpLG8pO2Z1bmN0aW9uIGkocyl7cmV0dXJuIGEuY29udGFpbmVyU3RhdGUuZnVydGhlckJsYW5rTGluZXM9YS5jb250YWluZXJTdGF0ZS5mdXJ0aGVyQmxhbmtMaW5lc3x8YS5jb250YWluZXJTdGF0ZS5pbml0aWFsQmxhbmtMaW5lLFR0KGUsdCwibGlzdEl0ZW1JbmRlbnQiLGEuY29udGFpbmVyU3RhdGUuc2l6ZSsxKShzKX1mdW5jdGlvbiBvKHMpe3JldHVybiBhLmNvbnRhaW5lclN0YXRlLmZ1cnRoZXJCbGFua0xpbmVzfHwhYnQocyk/KGEuY29udGFpbmVyU3RhdGUuZnVydGhlckJsYW5rTGluZXM9dm9pZCAwLGEuY29udGFpbmVyU3RhdGUuaW5pdGlhbEJsYW5rTGluZT12b2lkIDAsbihzKSk6KGEuY29udGFpbmVyU3RhdGUuZnVydGhlckJsYW5rTGluZXM9dm9pZCAwLGEuY29udGFpbmVyU3RhdGUuaW5pdGlhbEJsYW5rTGluZT12b2lkIDAsZS5hdHRlbXB0KEtwYSx0LG4pKHMpKX1mdW5jdGlvbiBuKHMpe3JldHVybiBhLmNvbnRhaW5lclN0YXRlLl9jbG9zZUZsb3c9ITAsYS5pbnRlcnJ1cHQ9dm9pZCAwLFR0KGUsZS5hdHRlbXB0KFcxLHQsciksImxpbmVQcmVmaXgiLGEucGFyc2VyLmNvbnN0cnVjdHMuZGlzYWJsZS5udWxsLmluY2x1ZGVzKCJjb2RlSW5kZW50ZWQiKT92b2lkIDA6NCkocyl9fWZ1bmN0aW9uIHQ4YShlLHQscil7bGV0IGE9dGhpcztyZXR1cm4gVHQoZSxpLCJsaXN0SXRlbUluZGVudCIsYS5jb250YWluZXJTdGF0ZS5zaXplKzEpO2Z1bmN0aW9uIGkobyl7bGV0IG49YS5ldmVudHNbYS5ldmVudHMubGVuZ3RoLTFdO3JldHVybiBuJiZuWzFdLnR5cGU9PT0ibGlzdEl0ZW1JbmRlbnQiJiZuWzJdLnNsaWNlU2VyaWFsaXplKG5bMV0sITApLmxlbmd0aD09PWEuY29udGFpbmVyU3RhdGUuc2l6ZT90KG8pOnIobyl9fWZ1bmN0aW9uIHI4YShlKXtlLmV4aXQodGhpcy5jb250YWluZXJTdGF0ZS50eXBlKX1mdW5jdGlvbiBhOGEoZSx0LHIpe2xldCBhPXRoaXM7cmV0dXJuIFR0KGUsaSwibGlzdEl0ZW1QcmVmaXhXaGl0ZXNwYWNlIixhLnBhcnNlci5jb25zdHJ1Y3RzLmRpc2FibGUubnVsbC5pbmNsdWRlcygiY29kZUluZGVudGVkIik/dm9pZCAwOjUpO2Z1bmN0aW9uIGkobyl7bGV0IG49YS5ldmVudHNbYS5ldmVudHMubGVuZ3RoLTFdO3JldHVybiFidChvKSYmbiYmblsxXS50eXBlPT09Imxpc3RJdGVtUHJlZml4V2hpdGVzcGFjZSI/dChvKTpyKG8pfX12YXIgVzEsUXBhLEtwYSxjVXQ9bCgoKT0+e2FpKCk7cHIoKTtab2UoKTt0eWUoKTtXMT17Y29udGludWF0aW9uOnt0b2tlbml6ZTplOGF9LGV4aXQ6cjhhLG5hbWU6Imxpc3QiLHRva2VuaXplOkpwYX0sUXBhPXtwYXJ0aWFsOiEwLHRva2VuaXplOmE4YX0sS3BhPXtwYXJ0aWFsOiEwLHRva2VuaXplOnQ4YX19KTtmdW5jdGlvbiBpOGEoZSx0KXtsZXQgcj1lLmxlbmd0aCxhLGksbztmb3IoO3ItLTspaWYoZVtyXVswXT09PSJlbnRlciIpe2lmKGVbcl1bMV0udHlwZT09PSJjb250ZW50Iil7YT1yO2JyZWFrfWVbcl1bMV0udHlwZT09PSJwYXJhZ3JhcGgiJiYoaT1yKX1lbHNlIGVbcl1bMV0udHlwZT09PSJjb250ZW50IiYmZS5zcGxpY2UociwxKSwhbyYmZVtyXVsxXS50eXBlPT09ImRlZmluaXRpb24iJiYobz1yKTtsZXQgbj17dHlwZToic2V0ZXh0SGVhZGluZyIsc3RhcnQ6ey4uLmVbYV1bMV0uc3RhcnR9LGVuZDp7Li4uZVtlLmxlbmd0aC0xXVsxXS5lbmR9fTtyZXR1cm4gZVtpXVsxXS50eXBlPSJzZXRleHRIZWFkaW5nVGV4dCIsbz8oZS5zcGxpY2UoaSwwLFsiZW50ZXIiLG4sdF0pLGUuc3BsaWNlKG8rMSwwLFsiZXhpdCIsZVthXVsxXSx0XSksZVthXVsxXS5lbmQ9ey4uLmVbb11bMV0uZW5kfSk6ZVthXVsxXT1uLGUucHVzaChbImV4aXQiLG4sdF0pLGV9ZnVuY3Rpb24gbzhhKGUsdCxyKXtsZXQgYT10aGlzLGk7cmV0dXJuIG87ZnVuY3Rpb24gbyhkKXtsZXQgZj1hLmV2ZW50cy5sZW5ndGgsdTtmb3IoO2YtLTspaWYoYS5ldmVudHNbZl1bMV0udHlwZSE9PSJsaW5lRW5kaW5nIiYmYS5ldmVudHNbZl1bMV0udHlwZSE9PSJsaW5lUHJlZml4IiYmYS5ldmVudHNbZl1bMV0udHlwZSE9PSJjb250ZW50Iil7dT1hLmV2ZW50c1tmXVsxXS50eXBlPT09InBhcmFncmFwaCI7YnJlYWt9cmV0dXJuIWEucGFyc2VyLmxhenlbYS5ub3coKS5saW5lXSYmKGEuaW50ZXJydXB0fHx1KT8oZS5lbnRlcigic2V0ZXh0SGVhZGluZ0xpbmUiKSxpPWQsbihkKSk6cihkKX1mdW5jdGlvbiBuKGQpe3JldHVybiBlLmVudGVyKCJzZXRleHRIZWFkaW5nTGluZVNlcXVlbmNlIikscyhkKX1mdW5jdGlvbiBzKGQpe3JldHVybiBkPT09aT8oZS5jb25zdW1lKGQpLHMpOihlLmV4aXQoInNldGV4dEhlYWRpbmdMaW5lU2VxdWVuY2UiKSxidChkKT9UdChlLGMsImxpbmVTdWZmaXgiKShkKTpjKGQpKX1mdW5jdGlvbiBjKGQpe3JldHVybiBkPT09bnVsbHx8dHQoZCk/KGUuZXhpdCgic2V0ZXh0SGVhZGluZ0xpbmUiKSx0KGQpKTpyKGQpfX12YXIgb25lLGRVdD1sKCgpPT57YWkoKTtwcigpO29uZT17bmFtZToic2V0ZXh0VW5kZXJsaW5lIixyZXNvbHZlVG86aThhLHRva2VuaXplOm84YX19KTt2YXIgbm5lPWwoKCk9PntqVnQoKTtWVnQoKTtab2UoKTtVVnQoKTtXVnQoKTtHVnQoKTtaVnQoKTtYVnQoKTtRVnQoKTtLVnQoKTtKVnQoKTtlVXQoKTt0VXQoKTtpVXQoKTtvVXQoKTtpbmUoKTtuVXQoKTtzVXQoKTtsVXQoKTtjVXQoKTtkVXQoKTt0eWUoKX0pO2Z1bmN0aW9uIHJ5ZSgpe3JldHVybntkb2N1bWVudDp7OTE6e25hbWU6ImdmbUZvb3Rub3RlRGVmaW5pdGlvbiIsdG9rZW5pemU6ZDhhLGNvbnRpbnVhdGlvbjp7dG9rZW5pemU6dThhfSxleGl0OmY4YX19LHRleHQ6ezkxOntuYW1lOiJnZm1Gb290bm90ZUNhbGwiLHRva2VuaXplOmM4YX0sOTM6e25hbWU6ImdmbVBvdGVudGlhbEZvb3Rub3RlQ2FsbCIsYWRkOiJhZnRlciIsdG9rZW5pemU6czhhLHJlc29sdmVUbzpsOGF9fX19ZnVuY3Rpb24gczhhKGUsdCxyKXtsZXQgYT10aGlzLGk9YS5ldmVudHMubGVuZ3RoLG89YS5wYXJzZXIuZ2ZtRm9vdG5vdGVzfHwoYS5wYXJzZXIuZ2ZtRm9vdG5vdGVzPVtdKSxuO2Zvcig7aS0tOyl7bGV0IGM9YS5ldmVudHNbaV1bMV07aWYoYy50eXBlPT09ImxhYmVsSW1hZ2UiKXtuPWM7YnJlYWt9aWYoYy50eXBlPT09ImdmbUZvb3Rub3RlQ2FsbCJ8fGMudHlwZT09PSJsYWJlbExpbmsifHxjLnR5cGU9PT0ibGFiZWwifHxjLnR5cGU9PT0iaW1hZ2UifHxjLnR5cGU9PT0ibGluayIpYnJlYWt9cmV0dXJuIHM7ZnVuY3Rpb24gcyhjKXtpZighbnx8IW4uX2JhbGFuY2VkKXJldHVybiByKGMpO2xldCBkPVlhKGEuc2xpY2VTZXJpYWxpemUoe3N0YXJ0Om4uZW5kLGVuZDphLm5vdygpfSkpO3JldHVybiBkLmNvZGVQb2ludEF0KDApIT09OTR8fCFvLmluY2x1ZGVzKGQuc2xpY2UoMSkpP3IoYyk6KGUuZW50ZXIoImdmbUZvb3Rub3RlQ2FsbExhYmVsTWFya2VyIiksZS5jb25zdW1lKGMpLGUuZXhpdCgiZ2ZtRm9vdG5vdGVDYWxsTGFiZWxNYXJrZXIiKSx0KGMpKX19ZnVuY3Rpb24gbDhhKGUsdCl7bGV0IHI9ZS5sZW5ndGgsYTtmb3IoO3ItLTspaWYoZVtyXVsxXS50eXBlPT09ImxhYmVsSW1hZ2UiJiZlW3JdWzBdPT09ImVudGVyIil7YT1lW3JdWzFdO2JyZWFrfWVbcisxXVsxXS50eXBlPSJkYXRhIixlW3IrM11bMV0udHlwZT0iZ2ZtRm9vdG5vdGVDYWxsTGFiZWxNYXJrZXIiO2xldCBpPXt0eXBlOiJnZm1Gb290bm90ZUNhbGwiLHN0YXJ0Ok9iamVjdC5hc3NpZ24oe30sZVtyKzNdWzFdLnN0YXJ0KSxlbmQ6T2JqZWN0LmFzc2lnbih7fSxlW2UubGVuZ3RoLTFdWzFdLmVuZCl9LG89e3R5cGU6ImdmbUZvb3Rub3RlQ2FsbE1hcmtlciIsc3RhcnQ6T2JqZWN0LmFzc2lnbih7fSxlW3IrM11bMV0uZW5kKSxlbmQ6T2JqZWN0LmFzc2lnbih7fSxlW3IrM11bMV0uZW5kKX07by5lbmQuY29sdW1uKyssby5lbmQub2Zmc2V0Kyssby5lbmQuX2J1ZmZlckluZGV4Kys7bGV0IG49e3R5cGU6ImdmbUZvb3Rub3RlQ2FsbFN0cmluZyIsc3RhcnQ6T2JqZWN0LmFzc2lnbih7fSxvLmVuZCksZW5kOk9iamVjdC5hc3NpZ24oe30sZVtlLmxlbmd0aC0xXVsxXS5zdGFydCl9LHM9e3R5cGU6ImNodW5rU3RyaW5nIixjb250ZW50VHlwZToic3RyaW5nIixzdGFydDpPYmplY3QuYXNzaWduKHt9LG4uc3RhcnQpLGVuZDpPYmplY3QuYXNzaWduKHt9LG4uZW5kKX0sYz1bZVtyKzFdLGVbcisyXSxbImVudGVyIixpLHRdLGVbciszXSxlW3IrNF0sWyJlbnRlciIsbyx0XSxbImV4aXQiLG8sdF0sWyJlbnRlciIsbix0XSxbImVudGVyIixzLHRdLFsiZXhpdCIscyx0XSxbImV4aXQiLG4sdF0sZVtlLmxlbmd0aC0yXSxlW2UubGVuZ3RoLTFdLFsiZXhpdCIsaSx0XV07cmV0dXJuIGUuc3BsaWNlKHIsZS5sZW5ndGgtcisxLC4uLmMpLGV9ZnVuY3Rpb24gYzhhKGUsdCxyKXtsZXQgYT10aGlzLGk9YS5wYXJzZXIuZ2ZtRm9vdG5vdGVzfHwoYS5wYXJzZXIuZ2ZtRm9vdG5vdGVzPVtdKSxvPTAsbjtyZXR1cm4gcztmdW5jdGlvbiBzKHUpe3JldHVybiBlLmVudGVyKCJnZm1Gb290bm90ZUNhbGwiKSxlLmVudGVyKCJnZm1Gb290bm90ZUNhbGxMYWJlbE1hcmtlciIpLGUuY29uc3VtZSh1KSxlLmV4aXQoImdmbUZvb3Rub3RlQ2FsbExhYmVsTWFya2VyIiksY31mdW5jdGlvbiBjKHUpe3JldHVybiB1IT09OTQ/cih1KTooZS5lbnRlcigiZ2ZtRm9vdG5vdGVDYWxsTWFya2VyIiksZS5jb25zdW1lKHUpLGUuZXhpdCgiZ2ZtRm9vdG5vdGVDYWxsTWFya2VyIiksZS5lbnRlcigiZ2ZtRm9vdG5vdGVDYWxsU3RyaW5nIiksZS5lbnRlcigiY2h1bmtTdHJpbmciKS5jb250ZW50VHlwZT0ic3RyaW5nIixkKX1mdW5jdGlvbiBkKHUpe2lmKG8+OTk5fHx1PT09OTMmJiFufHx1PT09bnVsbHx8dT09PTkxfHxscih1KSlyZXR1cm4gcih1KTtpZih1PT09OTMpe2UuZXhpdCgiY2h1bmtTdHJpbmciKTtsZXQgcD1lLmV4aXQoImdmbUZvb3Rub3RlQ2FsbFN0cmluZyIpO3JldHVybiBpLmluY2x1ZGVzKFlhKGEuc2xpY2VTZXJpYWxpemUocCkpKT8oZS5lbnRlcigiZ2ZtRm9vdG5vdGVDYWxsTGFiZWxNYXJrZXIiKSxlLmNvbnN1bWUodSksZS5leGl0KCJnZm1Gb290bm90ZUNhbGxMYWJlbE1hcmtlciIpLGUuZXhpdCgiZ2ZtRm9vdG5vdGVDYWxsIiksdCk6cih1KX1yZXR1cm4gbHIodSl8fChuPSEwKSxvKyssZS5jb25zdW1lKHUpLHU9PT05Mj9mOmR9ZnVuY3Rpb24gZih1KXtyZXR1cm4gdT09PTkxfHx1PT09OTJ8fHU9PT05Mz8oZS5jb25zdW1lKHUpLG8rKyxkKTpkKHUpfX1mdW5jdGlvbiBkOGEoZSx0LHIpe2xldCBhPXRoaXMsaT1hLnBhcnNlci5nZm1Gb290bm90ZXN8fChhLnBhcnNlci5nZm1Gb290bm90ZXM9W10pLG8sbj0wLHM7cmV0dXJuIGM7ZnVuY3Rpb24gYyhiKXtyZXR1cm4gZS5lbnRlcigiZ2ZtRm9vdG5vdGVEZWZpbml0aW9uIikuX2NvbnRhaW5lcj0hMCxlLmVudGVyKCJnZm1Gb290bm90ZURlZmluaXRpb25MYWJlbCIpLGUuZW50ZXIoImdmbUZvb3Rub3RlRGVmaW5pdGlvbkxhYmVsTWFya2VyIiksZS5jb25zdW1lKGIpLGUuZXhpdCgiZ2ZtRm9vdG5vdGVEZWZpbml0aW9uTGFiZWxNYXJrZXIiKSxkfWZ1bmN0aW9uIGQoYil7cmV0dXJuIGI9PT05ND8oZS5lbnRlcigiZ2ZtRm9vdG5vdGVEZWZpbml0aW9uTWFya2VyIiksZS5jb25zdW1lKGIpLGUuZXhpdCgiZ2ZtRm9vdG5vdGVEZWZpbml0aW9uTWFya2VyIiksZS5lbnRlcigiZ2ZtRm9vdG5vdGVEZWZpbml0aW9uTGFiZWxTdHJpbmciKSxlLmVudGVyKCJjaHVua1N0cmluZyIpLmNvbnRlbnRUeXBlPSJzdHJpbmciLGYpOnIoYil9ZnVuY3Rpb24gZihiKXtpZihuPjk5OXx8Yj09PTkzJiYhc3x8Yj09PW51bGx8fGI9PT05MXx8bHIoYikpcmV0dXJuIHIoYik7aWYoYj09PTkzKXtlLmV4aXQoImNodW5rU3RyaW5nIik7bGV0IHg9ZS5leGl0KCJnZm1Gb290bm90ZURlZmluaXRpb25MYWJlbFN0cmluZyIpO3JldHVybiBvPVlhKGEuc2xpY2VTZXJpYWxpemUoeCkpLGUuZW50ZXIoImdmbUZvb3Rub3RlRGVmaW5pdGlvbkxhYmVsTWFya2VyIiksZS5jb25zdW1lKGIpLGUuZXhpdCgiZ2ZtRm9vdG5vdGVEZWZpbml0aW9uTGFiZWxNYXJrZXIiKSxlLmV4aXQoImdmbUZvb3Rub3RlRGVmaW5pdGlvbkxhYmVsIikscH1yZXR1cm4gbHIoYil8fChzPSEwKSxuKyssZS5jb25zdW1lKGIpLGI9PT05Mj91OmZ9ZnVuY3Rpb24gdShiKXtyZXR1cm4gYj09PTkxfHxiPT09OTJ8fGI9PT05Mz8oZS5jb25zdW1lKGIpLG4rKyxmKTpmKGIpfWZ1bmN0aW9uIHAoYil7cmV0dXJuIGI9PT01OD8oZS5lbnRlcigiZGVmaW5pdGlvbk1hcmtlciIpLGUuY29uc3VtZShiKSxlLmV4aXQoImRlZmluaXRpb25NYXJrZXIiKSxpLmluY2x1ZGVzKG8pfHxpLnB1c2gobyksVHQoZSxoLCJnZm1Gb290bm90ZURlZmluaXRpb25XaGl0ZXNwYWNlIikpOnIoYil9ZnVuY3Rpb24gaChiKXtyZXR1cm4gdChiKX19ZnVuY3Rpb24gdThhKGUsdCxyKXtyZXR1cm4gZS5jaGVjayhhbCx0LGUuYXR0ZW1wdChuOGEsdCxyKSl9ZnVuY3Rpb24gZjhhKGUpe2UuZXhpdCgiZ2ZtRm9vdG5vdGVEZWZpbml0aW9uIil9ZnVuY3Rpb24gcDhhKGUsdCxyKXtsZXQgYT10aGlzO3JldHVybiBUdChlLGksImdmbUZvb3Rub3RlRGVmaW5pdGlvbkluZGVudCIsNSk7ZnVuY3Rpb24gaShvKXtsZXQgbj1hLmV2ZW50c1thLmV2ZW50cy5sZW5ndGgtMV07cmV0dXJuIG4mJm5bMV0udHlwZT09PSJnZm1Gb290bm90ZURlZmluaXRpb25JbmRlbnQiJiZuWzJdLnNsaWNlU2VyaWFsaXplKG5bMV0sITApLmxlbmd0aD09PTQ/dChvKTpyKG8pfX12YXIgbjhhLHVVdD1sKCgpPT57bm5lKCk7YWkoKTtwcigpO0Y0KCk7bjhhPXt0b2tlbml6ZTpwOGEscGFydGlhbDohMH19KTtmdW5jdGlvbiBmVXQoZSx0KXtyZXR1cm4iQmFjayB0byByZWZlcmVuY2UgIisoZSsxKSsodD4xPyItIit0OiIiKX1mdW5jdGlvbiBheWUoZSl7bGV0IHQ9ZXx8bThhLHI9dC5sYWJlbHx8IkZvb3Rub3RlcyIsYT10LmxhYmVsVGFnTmFtZXx8ImgyIixpPXQubGFiZWxBdHRyaWJ1dGVzPT09bnVsbHx8dC5sYWJlbEF0dHJpYnV0ZXM9PT12b2lkIDA/J2NsYXNzPSJzci1vbmx5Iic6dC5sYWJlbEF0dHJpYnV0ZXMsbz10LmJhY2tMYWJlbHx8ZlV0LG49dC5jbG9iYmVyUHJlZml4PT09bnVsbHx8dC5jbG9iYmVyUHJlZml4PT09dm9pZCAwPyJ1c2VyLWNvbnRlbnQtIjp0LmNsb2JiZXJQcmVmaXg7cmV0dXJue2VudGVyOntnZm1Gb290bm90ZURlZmluaXRpb24oKXt0aGlzLmdldERhdGEoInRpZ2h0U3RhY2siKS5wdXNoKCExKX0sZ2ZtRm9vdG5vdGVEZWZpbml0aW9uTGFiZWxTdHJpbmcoKXt0aGlzLmJ1ZmZlcigpfSxnZm1Gb290bm90ZUNhbGxTdHJpbmcoKXt0aGlzLmJ1ZmZlcigpfX0sZXhpdDp7Z2ZtRm9vdG5vdGVEZWZpbml0aW9uKCl7bGV0IHM9dGhpcy5nZXREYXRhKCJnZm1Gb290bm90ZURlZmluaXRpb25zIiksYz10aGlzLmdldERhdGEoImdmbUZvb3Rub3RlRGVmaW5pdGlvblN0YWNrIiksZD10aGlzLmdldERhdGEoInRpZ2h0U3RhY2siKSxmPWMucG9wKCksdT10aGlzLnJlc3VtZSgpO3N8fHRoaXMuc2V0RGF0YSgiZ2ZtRm9vdG5vdGVEZWZpbml0aW9ucyIscz17fSksaDhhLmNhbGwocyxmKXx8KHNbZl09dSksZC5wb3AoKSx0aGlzLnNldERhdGEoInNsdXJwT25lTGluZUVuZGluZyIsITApLHRoaXMuc2V0RGF0YSgibGFzdFdhc1RhZyIpfSxnZm1Gb290bm90ZURlZmluaXRpb25MYWJlbFN0cmluZyhzKXtsZXQgYz10aGlzLmdldERhdGEoImdmbUZvb3Rub3RlRGVmaW5pdGlvblN0YWNrIik7Y3x8dGhpcy5zZXREYXRhKCJnZm1Gb290bm90ZURlZmluaXRpb25TdGFjayIsYz1bXSksYy5wdXNoKFlhKHRoaXMuc2xpY2VTZXJpYWxpemUocykpKSx0aGlzLnJlc3VtZSgpLHRoaXMuYnVmZmVyKCl9LGdmbUZvb3Rub3RlQ2FsbFN0cmluZyhzKXtsZXQgYz10aGlzLmdldERhdGEoImdmbUZvb3Rub3RlQ2FsbE9yZGVyIiksZD10aGlzLmdldERhdGEoImdmbUZvb3Rub3RlQ2FsbENvdW50cyIpLGY9WWEodGhpcy5zbGljZVNlcmlhbGl6ZShzKSksdTt0aGlzLnJlc3VtZSgpLGN8fHRoaXMuc2V0RGF0YSgiZ2ZtRm9vdG5vdGVDYWxsT3JkZXIiLGM9W10pLGR8fHRoaXMuc2V0RGF0YSgiZ2ZtRm9vdG5vdGVDYWxsQ291bnRzIixkPXt9KTtsZXQgcD1jLmluZGV4T2YoZiksaD10bChmLnRvTG93ZXJDYXNlKCkpO3A9PT0tMT8oYy5wdXNoKGYpLGRbZl09MSx1PWMubGVuZ3RoKTooZFtmXSsrLHU9cCsxKTtsZXQgYj1kW2ZdO3RoaXMudGFnKCc8c3VwPjxhIGhyZWY9IiMnK24rImZuLSIraCsnIiBpZD0iJytuKyJmbnJlZi0iK2grKGI+MT8iLSIrYjoiIikrJyIgZGF0YS1mb290bm90ZS1yZWY9IiIgYXJpYS1kZXNjcmliZWRieT0iZm9vdG5vdGUtbGFiZWwiPicrU3RyaW5nKHUpKyI8L2E+PC9zdXA+Iil9LG51bGwoKXtsZXQgcz10aGlzLmdldERhdGEoImdmbUZvb3Rub3RlQ2FsbE9yZGVyIil8fFtdLGM9dGhpcy5nZXREYXRhKCJnZm1Gb290bm90ZUNhbGxDb3VudHMiKXx8e30sZD10aGlzLmdldERhdGEoImdmbUZvb3Rub3RlRGVmaW5pdGlvbnMiKXx8e30sZj0tMTtmb3Iocy5sZW5ndGg+MCYmKHRoaXMubGluZUVuZGluZ0lmTmVlZGVkKCksdGhpcy50YWcoJzxzZWN0aW9uIGRhdGEtZm9vdG5vdGVzPSIiIGNsYXNzPSJmb290bm90ZXMiPjwnK2ErJyBpZD0iZm9vdG5vdGUtbGFiZWwiJysoaT8iICIraToiIikrIj4iKSx0aGlzLnJhdyh0aGlzLmVuY29kZShyKSksdGhpcy50YWcoIjwvIithKyI+IiksdGhpcy5saW5lRW5kaW5nSWZOZWVkZWQoKSx0aGlzLnRhZygiPG9sPiIpKTsrK2Y8cy5sZW5ndGg7KXtsZXQgdT1zW2ZdLHA9dGwodS50b0xvd2VyQ2FzZSgpKSxoPTAsYj1bXTtmb3IoOysraDw9Y1t1XTspYi5wdXNoKCc8YSBocmVmPSIjJytuKyJmbnJlZi0iK3ArKGg+MT8iLSIraDoiIikrJyIgZGF0YS1mb290bm90ZS1iYWNrcmVmPSIiIGFyaWEtbGFiZWw9IicrdGhpcy5lbmNvZGUodHlwZW9mIG89PSJzdHJpbmciP286byhmLGgpKSsnIiBjbGFzcz0iZGF0YS1mb290bm90ZS1iYWNrcmVmIj5cdTIxQTknKyhoPjE/IjxzdXA+IitoKyI8L3N1cD4iOiIiKSsiPC9hPiIpO2xldCB4PWIuam9pbigiICIpLGc9ITE7dGhpcy5saW5lRW5kaW5nSWZOZWVkZWQoKSx0aGlzLnRhZygnPGxpIGlkPSInK24rImZuLSIrcCsnIj4nKSx0aGlzLmxpbmVFbmRpbmdJZk5lZWRlZCgpLHRoaXMudGFnKGRbdV0ucmVwbGFjZSgvPFwvcD4oPzpccj9cbnxccik/JC8sZnVuY3Rpb24odil7cmV0dXJuIGc9ITAsIiAiK3grdn0pKSxnfHwodGhpcy5saW5lRW5kaW5nSWZOZWVkZWQoKSx0aGlzLnRhZyh4KSksdGhpcy5saW5lRW5kaW5nSWZOZWVkZWQoKSx0aGlzLnRhZygiPC9saT4iKX1zLmxlbmd0aD4wJiYodGhpcy5saW5lRW5kaW5nSWZOZWVkZWQoKSx0aGlzLnRhZygiPC9vbD4iKSx0aGlzLmxpbmVFbmRpbmdJZk5lZWRlZCgpLHRoaXMudGFnKCI8L3NlY3Rpb24+IikpfX19fXZhciBoOGEsbThhLHBVdD1sKCgpPT57RjQoKTtybCgpO2g4YT17fS5oYXNPd25Qcm9wZXJ0eSxtOGE9e319KTt2YXIgaFV0PWwoKCk9Pnt1VXQoKTtwVXQoKX0pO2Z1bmN0aW9uIGl5ZSgpe3JldHVybntlbnRlcjp7c3RyaWtldGhyb3VnaCgpe3RoaXMudGFnKCI8ZGVsPiIpfX0sZXhpdDp7c3RyaWtldGhyb3VnaCgpe3RoaXMudGFnKCI8L2RlbD4iKX19fX12YXIgbVV0PWwoKCk9Pnt9KTtmdW5jdGlvbiBveWUoZSl7bGV0IHI9KGV8fHt9KS5zaW5nbGVUaWxkZSxhPXtuYW1lOiJzdHJpa2V0aHJvdWdoIix0b2tlbml6ZTpvLHJlc29sdmVBbGw6aX07cmV0dXJuIHI9PW51bGwmJihyPSEwKSx7dGV4dDp7MTI2OmF9LGluc2lkZVNwYW46e251bGw6W2FdfSxhdHRlbnRpb25NYXJrZXJzOntudWxsOlsxMjZdfX07ZnVuY3Rpb24gaShuLHMpe2xldCBjPS0xO2Zvcig7KytjPG4ubGVuZ3RoOylpZihuW2NdWzBdPT09ImVudGVyIiYmbltjXVsxXS50eXBlPT09InN0cmlrZXRocm91Z2hTZXF1ZW5jZVRlbXBvcmFyeSImJm5bY11bMV0uX2Nsb3NlKXtsZXQgZD1jO2Zvcig7ZC0tOylpZihuW2RdWzBdPT09ImV4aXQiJiZuW2RdWzFdLnR5cGU9PT0ic3RyaWtldGhyb3VnaFNlcXVlbmNlVGVtcG9yYXJ5IiYmbltkXVsxXS5fb3BlbiYmbltjXVsxXS5lbmQub2Zmc2V0LW5bY11bMV0uc3RhcnQub2Zmc2V0PT09bltkXVsxXS5lbmQub2Zmc2V0LW5bZF1bMV0uc3RhcnQub2Zmc2V0KXtuW2NdWzFdLnR5cGU9InN0cmlrZXRocm91Z2hTZXF1ZW5jZSIsbltkXVsxXS50eXBlPSJzdHJpa2V0aHJvdWdoU2VxdWVuY2UiO2xldCBmPXt0eXBlOiJzdHJpa2V0aHJvdWdoIixzdGFydDpPYmplY3QuYXNzaWduKHt9LG5bZF1bMV0uc3RhcnQpLGVuZDpPYmplY3QuYXNzaWduKHt9LG5bY11bMV0uZW5kKX0sdT17dHlwZToic3RyaWtldGhyb3VnaFRleHQiLHN0YXJ0Ok9iamVjdC5hc3NpZ24oe30sbltkXVsxXS5lbmQpLGVuZDpPYmplY3QuYXNzaWduKHt9LG5bY11bMV0uc3RhcnQpfSxwPVtbImVudGVyIixmLHNdLFsiZW50ZXIiLG5bZF1bMV0sc10sWyJleGl0IixuW2RdWzFdLHNdLFsiZW50ZXIiLHUsc11dLGg9cy5wYXJzZXIuY29uc3RydWN0cy5pbnNpZGVTcGFuLm51bGw7aCYmcmkocCxwLmxlbmd0aCwwLFI0KGgsbi5zbGljZShkKzEsYykscykpLHJpKHAscC5sZW5ndGgsMCxbWyJleGl0Iix1LHNdLFsiZW50ZXIiLG5bY11bMV0sc10sWyJleGl0IixuW2NdWzFdLHNdLFsiZXhpdCIsZixzXV0pLHJpKG4sZC0xLGMtZCszLHApLGM9ZCtwLmxlbmd0aC0yO2JyZWFrfX1mb3IoYz0tMTsrK2M8bi5sZW5ndGg7KW5bY11bMV0udHlwZT09PSJzdHJpa2V0aHJvdWdoU2VxdWVuY2VUZW1wb3JhcnkiJiYobltjXVsxXS50eXBlPSJkYXRhIik7cmV0dXJuIG59ZnVuY3Rpb24gbyhuLHMsYyl7bGV0IGQ9dGhpcy5wcmV2aW91cyxmPXRoaXMuZXZlbnRzLHU9MDtyZXR1cm4gcDtmdW5jdGlvbiBwKGIpe3JldHVybiBkPT09MTI2JiZmW2YubGVuZ3RoLTFdWzFdLnR5cGUhPT0iY2hhcmFjdGVyRXNjYXBlIj9jKGIpOihuLmVudGVyKCJzdHJpa2V0aHJvdWdoU2VxdWVuY2VUZW1wb3JhcnkiKSxoKGIpKX1mdW5jdGlvbiBoKGIpe2xldCB4PW1jKGQpO2lmKGI9PT0xMjYpcmV0dXJuIHU+MT9jKGIpOihuLmNvbnN1bWUoYiksdSsrLGgpO2lmKHU8MiYmIXIpcmV0dXJuIGMoYik7bGV0IGc9bi5leGl0KCJzdHJpa2V0aHJvdWdoU2VxdWVuY2VUZW1wb3JhcnkiKSx2PW1jKGIpO3JldHVybiBnLl9vcGVuPSF2fHx2PT09MiYmISF4LGcuX2Nsb3NlPSF4fHx4PT09MiYmISF2LHMoYil9fX12YXIgZ1V0PWwoKCk9PntKMigpO0ZvZSgpO0N5KCl9KTt2YXIgeFV0PWwoKCk9PnttVXQoKTtnVXQoKX0pO2Z1bmN0aW9uIHN5ZSgpe3JldHVybntlbnRlcjp7dGFibGUoZSl7bGV0IHQ9ZS5fYWxpZ247dGhpcy5saW5lRW5kaW5nSWZOZWVkZWQoKSx0aGlzLnRhZygiPHRhYmxlPiIpLHRoaXMuc2V0RGF0YSgidGFibGVBbGlnbiIsdCl9LHRhYmxlQm9keSgpe3RoaXMudGFnKCI8dGJvZHk+Iil9LHRhYmxlRGF0YSgpe2xldCBlPXRoaXMuZ2V0RGF0YSgidGFibGVBbGlnbiIpLHQ9dGhpcy5nZXREYXRhKCJ0YWJsZUNvbHVtbiIpLHI9bnllW2VbdF1dO3I9PT12b2lkIDA/dGhpcy5idWZmZXIoKToodGhpcy5saW5lRW5kaW5nSWZOZWVkZWQoKSx0aGlzLnRhZygiPHRkIityKyI+IikpfSx0YWJsZUhlYWQoKXt0aGlzLmxpbmVFbmRpbmdJZk5lZWRlZCgpLHRoaXMudGFnKCI8dGhlYWQ+Iil9LHRhYmxlSGVhZGVyKCl7bGV0IGU9dGhpcy5nZXREYXRhKCJ0YWJsZUFsaWduIiksdD10aGlzLmdldERhdGEoInRhYmxlQ29sdW1uIikscj1ueWVbZVt0XV07dGhpcy5saW5lRW5kaW5nSWZOZWVkZWQoKSx0aGlzLnRhZygiPHRoIityKyI+Iil9LHRhYmxlUm93KCl7dGhpcy5zZXREYXRhKCJ0YWJsZUNvbHVtbiIsMCksdGhpcy5saW5lRW5kaW5nSWZOZWVkZWQoKSx0aGlzLnRhZygiPHRyPiIpfX0sZXhpdDp7Y29kZVRleHREYXRhKGUpe2xldCB0PXRoaXMuc2xpY2VTZXJpYWxpemUoZSk7dGhpcy5nZXREYXRhKCJ0YWJsZUFsaWduIikmJih0PXQucmVwbGFjZSgvXFwoW1xcfF0pL2csZzhhKSksdGhpcy5yYXcodGhpcy5lbmNvZGUodCkpfSx0YWJsZSgpe3RoaXMuc2V0RGF0YSgidGFibGVBbGlnbiIpLHRoaXMuc2V0RGF0YSgic2x1cnBBbGxMaW5lRW5kaW5ncyIpLHRoaXMubGluZUVuZGluZ0lmTmVlZGVkKCksdGhpcy50YWcoIjwvdGFibGU+Iil9LHRhYmxlQm9keSgpe3RoaXMubGluZUVuZGluZ0lmTmVlZGVkKCksdGhpcy50YWcoIjwvdGJvZHk+Iil9LHRhYmxlRGF0YSgpe2xldCBlPXRoaXMuZ2V0RGF0YSgidGFibGVBbGlnbiIpLHQ9dGhpcy5nZXREYXRhKCJ0YWJsZUNvbHVtbiIpO3QgaW4gZT8odGhpcy50YWcoIjwvdGQ+IiksdGhpcy5zZXREYXRhKCJ0YWJsZUNvbHVtbiIsdCsxKSk6dGhpcy5yZXN1bWUoKX0sdGFibGVIZWFkKCl7dGhpcy5saW5lRW5kaW5nSWZOZWVkZWQoKSx0aGlzLnRhZygiPC90aGVhZD4iKX0sdGFibGVIZWFkZXIoKXtsZXQgZT10aGlzLmdldERhdGEoInRhYmxlQ29sdW1uIik7dGhpcy50YWcoIjwvdGg+IiksdGhpcy5zZXREYXRhKCJ0YWJsZUNvbHVtbiIsZSsxKX0sdGFibGVSb3coKXtsZXQgZT10aGlzLmdldERhdGEoInRhYmxlQWxpZ24iKSx0PXRoaXMuZ2V0RGF0YSgidGFibGVDb2x1bW4iKTtmb3IoO3Q8ZS5sZW5ndGg7KXRoaXMubGluZUVuZGluZ0lmTmVlZGVkKCksdGhpcy50YWcoIjx0ZCIrbnllW2VbdF1dKyI+PC90ZD4iKSx0Kys7dGhpcy5zZXREYXRhKCJ0YWJsZUNvbHVtbiIsdCksdGhpcy5saW5lRW5kaW5nSWZOZWVkZWQoKSx0aGlzLnRhZygiPC90cj4iKX19fX1mdW5jdGlvbiBnOGEoZSx0KXtyZXR1cm4gdD09PSJ8Ij90OmV9dmFyIG55ZSxiVXQ9bCgoKT0+e255ZT17bm9uZToiIixsZWZ0OicgYWxpZ249ImxlZnQiJyxyaWdodDonIGFsaWduPSJyaWdodCInLGNlbnRlcjonIGFsaWduPSJjZW50ZXIiJ319KTtmdW5jdGlvbiB4OGEoZSx0LHIsYSl7bGV0IGk9MDtpZighKHI9PT0wJiZhLmxlbmd0aD09PTApKXtmb3IoO2k8ZS5tYXAubGVuZ3RoOyl7aWYoZS5tYXBbaV1bMF09PT10KXtlLm1hcFtpXVsxXSs9cixlLm1hcFtpXVsyXS5wdXNoKC4uLmEpO3JldHVybn1pKz0xfWUubWFwLnB1c2goW3QscixhXSl9fXZhciBzbmUsdlV0PWwoKCk9PntzbmU9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLm1hcD1bXX1hZGQodCxyLGEpe3g4YSh0aGlzLHQscixhKX1jb25zdW1lKHQpe2lmKHRoaXMubWFwLnNvcnQoZnVuY3Rpb24obyxuKXtyZXR1cm4gb1swXS1uWzBdfSksdGhpcy5tYXAubGVuZ3RoPT09MClyZXR1cm47bGV0IHI9dGhpcy5tYXAubGVuZ3RoLGE9W107Zm9yKDtyPjA7KXItPTEsYS5wdXNoKHQuc2xpY2UodGhpcy5tYXBbcl1bMF0rdGhpcy5tYXBbcl1bMV0pLHRoaXMubWFwW3JdWzJdKSx0Lmxlbmd0aD10aGlzLm1hcFtyXVswXTthLnB1c2godC5zbGljZSgpKSx0Lmxlbmd0aD0wO2xldCBpPWEucG9wKCk7Zm9yKDtpOyl7Zm9yKGxldCBvIG9mIGkpdC5wdXNoKG8pO2k9YS5wb3AoKX10aGlzLm1hcC5sZW5ndGg9MH19fSk7ZnVuY3Rpb24geVV0KGUsdCl7bGV0IHI9ITEsYT1bXTtmb3IoO3Q8ZS5sZW5ndGg7KXtsZXQgaT1lW3RdO2lmKHIpe2lmKGlbMF09PT0iZW50ZXIiKWlbMV0udHlwZT09PSJ0YWJsZUNvbnRlbnQiJiZhLnB1c2goZVt0KzFdWzFdLnR5cGU9PT0idGFibGVEZWxpbWl0ZXJNYXJrZXIiPyJsZWZ0Ijoibm9uZSIpO2Vsc2UgaWYoaVsxXS50eXBlPT09InRhYmxlQ29udGVudCIpe2lmKGVbdC0xXVsxXS50eXBlPT09InRhYmxlRGVsaW1pdGVyTWFya2VyIil7bGV0IG89YS5sZW5ndGgtMTthW29dPWFbb109PT0ibGVmdCI/ImNlbnRlciI6InJpZ2h0In19ZWxzZSBpZihpWzFdLnR5cGU9PT0idGFibGVEZWxpbWl0ZXJSb3ciKWJyZWFrfWVsc2UgaVswXT09PSJlbnRlciImJmlbMV0udHlwZT09PSJ0YWJsZURlbGltaXRlclJvdyImJihyPSEwKTt0Kz0xfXJldHVybiBhfXZhciB3VXQ9bCgoKT0+e30pO2Z1bmN0aW9uIGx5ZSgpe3JldHVybntmbG93OntudWxsOntuYW1lOiJ0YWJsZSIsdG9rZW5pemU6YjhhLHJlc29sdmVBbGw6djhhfX19fWZ1bmN0aW9uIGI4YShlLHQscil7bGV0IGE9dGhpcyxpPTAsbz0wLG47cmV0dXJuIHM7ZnVuY3Rpb24gcyhCKXtsZXQgej1hLmV2ZW50cy5sZW5ndGgtMTtmb3IoO3o+LTE7KXtsZXQgXz1hLmV2ZW50c1t6XVsxXS50eXBlO2lmKF89PT0ibGluZUVuZGluZyJ8fF89PT0ibGluZVByZWZpeCIpei0tO2Vsc2UgYnJlYWt9bGV0IHk9ej4tMT9hLmV2ZW50c1t6XVsxXS50eXBlOm51bGwsRT15PT09InRhYmxlSGVhZCJ8fHk9PT0idGFibGVSb3ciP2s6YztyZXR1cm4gRT09PWsmJmEucGFyc2VyLmxhenlbYS5ub3coKS5saW5lXT9yKEIpOkUoQil9ZnVuY3Rpb24gYyhCKXtyZXR1cm4gZS5lbnRlcigidGFibGVIZWFkIiksZS5lbnRlcigidGFibGVSb3ciKSxkKEIpfWZ1bmN0aW9uIGQoQil7cmV0dXJuIEI9PT0xMjR8fChuPSEwLG8rPTEpLGYoQil9ZnVuY3Rpb24gZihCKXtyZXR1cm4gQj09PW51bGw/cihCKTp0dChCKT9vPjE/KG89MCxhLmludGVycnVwdD0hMCxlLmV4aXQoInRhYmxlUm93IiksZS5lbnRlcigibGluZUVuZGluZyIpLGUuY29uc3VtZShCKSxlLmV4aXQoImxpbmVFbmRpbmciKSxoKTpyKEIpOmJ0KEIpP1R0KGUsZiwid2hpdGVzcGFjZSIpKEIpOihvKz0xLG4mJihuPSExLGkrPTEpLEI9PT0xMjQ/KGUuZW50ZXIoInRhYmxlQ2VsbERpdmlkZXIiKSxlLmNvbnN1bWUoQiksZS5leGl0KCJ0YWJsZUNlbGxEaXZpZGVyIiksbj0hMCxmKTooZS5lbnRlcigiZGF0YSIpLHUoQikpKX1mdW5jdGlvbiB1KEIpe3JldHVybiBCPT09bnVsbHx8Qj09PTEyNHx8bHIoQik/KGUuZXhpdCgiZGF0YSIpLGYoQikpOihlLmNvbnN1bWUoQiksQj09PTkyP3A6dSl9ZnVuY3Rpb24gcChCKXtyZXR1cm4gQj09PTkyfHxCPT09MTI0PyhlLmNvbnN1bWUoQiksdSk6dShCKX1mdW5jdGlvbiBoKEIpe3JldHVybiBhLmludGVycnVwdD0hMSxhLnBhcnNlci5sYXp5W2Eubm93KCkubGluZV0/cihCKTooZS5lbnRlcigidGFibGVEZWxpbWl0ZXJSb3ciKSxuPSExLGJ0KEIpP1R0KGUsYiwibGluZVByZWZpeCIsYS5wYXJzZXIuY29uc3RydWN0cy5kaXNhYmxlLm51bGwuaW5jbHVkZXMoImNvZGVJbmRlbnRlZCIpP3ZvaWQgMDo0KShCKTpiKEIpKX1mdW5jdGlvbiBiKEIpe3JldHVybiBCPT09NDV8fEI9PT01OD9nKEIpOkI9PT0xMjQ/KG49ITAsZS5lbnRlcigidGFibGVDZWxsRGl2aWRlciIpLGUuY29uc3VtZShCKSxlLmV4aXQoInRhYmxlQ2VsbERpdmlkZXIiKSx4KTpDKEIpfWZ1bmN0aW9uIHgoQil7cmV0dXJuIGJ0KEIpP1R0KGUsZywid2hpdGVzcGFjZSIpKEIpOmcoQil9ZnVuY3Rpb24gZyhCKXtyZXR1cm4gQj09PTU4PyhvKz0xLG49ITAsZS5lbnRlcigidGFibGVEZWxpbWl0ZXJNYXJrZXIiKSxlLmNvbnN1bWUoQiksZS5leGl0KCJ0YWJsZURlbGltaXRlck1hcmtlciIpLHYpOkI9PT00NT8obys9MSx2KEIpKTpCPT09bnVsbHx8dHQoQik/RihCKTpDKEIpfWZ1bmN0aW9uIHYoQil7cmV0dXJuIEI9PT00NT8oZS5lbnRlcigidGFibGVEZWxpbWl0ZXJGaWxsZXIiKSx3KEIpKTpDKEIpfWZ1bmN0aW9uIHcoQil7cmV0dXJuIEI9PT00NT8oZS5jb25zdW1lKEIpLHcpOkI9PT01OD8obj0hMCxlLmV4aXQoInRhYmxlRGVsaW1pdGVyRmlsbGVyIiksZS5lbnRlcigidGFibGVEZWxpbWl0ZXJNYXJrZXIiKSxlLmNvbnN1bWUoQiksZS5leGl0KCJ0YWJsZURlbGltaXRlck1hcmtlciIpLE0pOihlLmV4aXQoInRhYmxlRGVsaW1pdGVyRmlsbGVyIiksTShCKSl9ZnVuY3Rpb24gTShCKXtyZXR1cm4gYnQoQik/VHQoZSxGLCJ3aGl0ZXNwYWNlIikoQik6RihCKX1mdW5jdGlvbiBGKEIpe3JldHVybiBCPT09MTI0P2IoQik6Qj09PW51bGx8fHR0KEIpPyFufHxpIT09bz9DKEIpOihlLmV4aXQoInRhYmxlRGVsaW1pdGVyUm93IiksZS5leGl0KCJ0YWJsZUhlYWQiKSx0KEIpKTpDKEIpfWZ1bmN0aW9uIEMoQil7cmV0dXJuIHIoQil9ZnVuY3Rpb24gayhCKXtyZXR1cm4gZS5lbnRlcigidGFibGVSb3ciKSxOKEIpfWZ1bmN0aW9uIE4oQil7cmV0dXJuIEI9PT0xMjQ/KGUuZW50ZXIoInRhYmxlQ2VsbERpdmlkZXIiKSxlLmNvbnN1bWUoQiksZS5leGl0KCJ0YWJsZUNlbGxEaXZpZGVyIiksTik6Qj09PW51bGx8fHR0KEIpPyhlLmV4aXQoInRhYmxlUm93IiksdChCKSk6YnQoQik/VHQoZSxOLCJ3aGl0ZXNwYWNlIikoQik6KGUuZW50ZXIoImRhdGEiKSwkKEIpKX1mdW5jdGlvbiAkKEIpe3JldHVybiBCPT09bnVsbHx8Qj09PTEyNHx8bHIoQik/KGUuZXhpdCgiZGF0YSIpLE4oQikpOihlLmNvbnN1bWUoQiksQj09PTkyP0k6JCl9ZnVuY3Rpb24gSShCKXtyZXR1cm4gQj09PTkyfHxCPT09MTI0PyhlLmNvbnN1bWUoQiksJCk6JChCKX19ZnVuY3Rpb24gdjhhKGUsdCl7bGV0IHI9LTEsYT0hMCxpPTAsbz1bMCwwLDAsMF0sbj1bMCwwLDAsMF0scz0hMSxjPTAsZCxmLHUscD1uZXcgc25lO2Zvcig7KytyPGUubGVuZ3RoOyl7bGV0IGg9ZVtyXSxiPWhbMV07aFswXT09PSJlbnRlciI/Yi50eXBlPT09InRhYmxlSGVhZCI/KHM9ITEsYyE9PTAmJihNVXQocCx0LGMsZCxmKSxmPXZvaWQgMCxjPTApLGQ9e3R5cGU6InRhYmxlIixzdGFydDpPYmplY3QuYXNzaWduKHt9LGIuc3RhcnQpLGVuZDpPYmplY3QuYXNzaWduKHt9LGIuZW5kKX0scC5hZGQociwwLFtbImVudGVyIixkLHRdXSkpOmIudHlwZT09PSJ0YWJsZVJvdyJ8fGIudHlwZT09PSJ0YWJsZURlbGltaXRlclJvdyI/KGE9ITAsdT12b2lkIDAsbz1bMCwwLDAsMF0sbj1bMCxyKzEsMCwwXSxzJiYocz0hMSxmPXt0eXBlOiJ0YWJsZUJvZHkiLHN0YXJ0Ok9iamVjdC5hc3NpZ24oe30sYi5zdGFydCksZW5kOk9iamVjdC5hc3NpZ24oe30sYi5lbmQpfSxwLmFkZChyLDAsW1siZW50ZXIiLGYsdF1dKSksaT1iLnR5cGU9PT0idGFibGVEZWxpbWl0ZXJSb3ciPzI6Zj8zOjEpOmkmJihiLnR5cGU9PT0iZGF0YSJ8fGIudHlwZT09PSJ0YWJsZURlbGltaXRlck1hcmtlciJ8fGIudHlwZT09PSJ0YWJsZURlbGltaXRlckZpbGxlciIpPyhhPSExLG5bMl09PT0wJiYob1sxXSE9PTAmJihuWzBdPW5bMV0sdT1sbmUocCx0LG8saSx2b2lkIDAsdSksbz1bMCwwLDAsMF0pLG5bMl09cikpOmIudHlwZT09PSJ0YWJsZUNlbGxEaXZpZGVyIiYmKGE/YT0hMToob1sxXSE9PTAmJihuWzBdPW5bMV0sdT1sbmUocCx0LG8saSx2b2lkIDAsdSkpLG89bixuPVtvWzFdLHIsMCwwXSkpOmIudHlwZT09PSJ0YWJsZUhlYWQiPyhzPSEwLGM9cik6Yi50eXBlPT09InRhYmxlUm93Inx8Yi50eXBlPT09InRhYmxlRGVsaW1pdGVyUm93Ij8oYz1yLG9bMV0hPT0wPyhuWzBdPW5bMV0sdT1sbmUocCx0LG8saSxyLHUpKTpuWzFdIT09MCYmKHU9bG5lKHAsdCxuLGkscix1KSksaT0wKTppJiYoYi50eXBlPT09ImRhdGEifHxiLnR5cGU9PT0idGFibGVEZWxpbWl0ZXJNYXJrZXIifHxiLnR5cGU9PT0idGFibGVEZWxpbWl0ZXJGaWxsZXIiKSYmKG5bM109cil9Zm9yKGMhPT0wJiZNVXQocCx0LGMsZCxmKSxwLmNvbnN1bWUodC5ldmVudHMpLHI9LTE7KytyPHQuZXZlbnRzLmxlbmd0aDspe2xldCBoPXQuZXZlbnRzW3JdO2hbMF09PT0iZW50ZXIiJiZoWzFdLnR5cGU9PT0idGFibGUiJiYoaFsxXS5fYWxpZ249eVV0KHQuZXZlbnRzLHIpKX1yZXR1cm4gZX1mdW5jdGlvbiBsbmUoZSx0LHIsYSxpLG8pe2xldCBuPWE9PT0xPyJ0YWJsZUhlYWRlciI6YT09PTI/InRhYmxlRGVsaW1pdGVyIjoidGFibGVEYXRhIixzPSJ0YWJsZUNvbnRlbnQiO3JbMF0hPT0wJiYoby5lbmQ9T2JqZWN0LmFzc2lnbih7fSxjOSh0LmV2ZW50cyxyWzBdKSksZS5hZGQoclswXSwwLFtbImV4aXQiLG8sdF1dKSk7bGV0IGM9YzkodC5ldmVudHMsclsxXSk7aWYobz17dHlwZTpuLHN0YXJ0Ok9iamVjdC5hc3NpZ24oe30sYyksZW5kOk9iamVjdC5hc3NpZ24oe30sYyl9LGUuYWRkKHJbMV0sMCxbWyJlbnRlciIsbyx0XV0pLHJbMl0hPT0wKXtsZXQgZD1jOSh0LmV2ZW50cyxyWzJdKSxmPWM5KHQuZXZlbnRzLHJbM10pLHU9e3R5cGU6cyxzdGFydDpPYmplY3QuYXNzaWduKHt9LGQpLGVuZDpPYmplY3QuYXNzaWduKHt9LGYpfTtpZihlLmFkZChyWzJdLDAsW1siZW50ZXIiLHUsdF1dKSxhIT09Mil7bGV0IHA9dC5ldmVudHNbclsyXV0saD10LmV2ZW50c1tyWzNdXTtpZihwWzFdLmVuZD1PYmplY3QuYXNzaWduKHt9LGhbMV0uZW5kKSxwWzFdLnR5cGU9ImNodW5rVGV4dCIscFsxXS5jb250ZW50VHlwZT0idGV4dCIsclszXT5yWzJdKzEpe2xldCBiPXJbMl0rMSx4PXJbM10tclsyXS0xO2UuYWRkKGIseCxbXSl9fWUuYWRkKHJbM10rMSwwLFtbImV4aXQiLHUsdF1dKX1yZXR1cm4gaSE9PXZvaWQgMCYmKG8uZW5kPU9iamVjdC5hc3NpZ24oe30sYzkodC5ldmVudHMsaSkpLGUuYWRkKGksMCxbWyJleGl0IixvLHRdXSksbz12b2lkIDApLG99ZnVuY3Rpb24gTVV0KGUsdCxyLGEsaSl7bGV0IG89W10sbj1jOSh0LmV2ZW50cyxyKTtpJiYoaS5lbmQ9T2JqZWN0LmFzc2lnbih7fSxuKSxvLnB1c2goWyJleGl0IixpLHRdKSksYS5lbmQ9T2JqZWN0LmFzc2lnbih7fSxuKSxvLnB1c2goWyJleGl0IixhLHRdKSxlLmFkZChyKzEsMCxvKX1mdW5jdGlvbiBjOShlLHQpe2xldCByPWVbdF0sYT1yWzBdPT09ImVudGVyIj8ic3RhcnQiOiJlbmQiO3JldHVybiByWzFdW2FdfXZhciBrVXQ9bCgoKT0+e2FpKCk7cHIoKTt2VXQoKTt3VXQoKX0pO3ZhciBTVXQ9bCgoKT0+e2JVdCgpO2tVdCgpfSk7ZnVuY3Rpb24gY3llKCl7cmV0dXJue2V4aXQ6e2h0bWxGbG93RGF0YShlKXtDVXQuY2FsbCh0aGlzLGUselV0KX0saHRtbFRleHREYXRhKGUpe0NVdC5jYWxsKHRoaXMsZSx5OGEpfX19fWZ1bmN0aW9uIENVdChlLHQpe2xldCByPXRoaXMuc2xpY2VTZXJpYWxpemUoZSk7dGhpcy5vcHRpb25zLmFsbG93RGFuZ2Vyb3VzSHRtbCYmKHI9ci5yZXBsYWNlKHQsIiZsdDskMSQyIikpLHRoaXMucmF3KHRoaXMuZW5jb2RlKHIpKX12YXIgelV0LHk4YSxfVXQ9bCgoKT0+e3pVdD0vPChcLz8pKGlmcmFtZXxub2VtYmVkfG5vZnJhbWVzfHBsYWludGV4dHxzY3JpcHR8c3R5bGV8dGl0bGV8dGV4dGFyZWF8eG1wKSg/PVtcdFxuXGZcciAvPl0pL2dpLHk4YT1uZXcgUmVnRXhwKCJeIit6VXQuc291cmNlLCJpIil9KTt2YXIgVFV0PWwoKCk9PntfVXQoKX0pO2Z1bmN0aW9uIGR5ZSgpe3JldHVybntlbnRlcjp7dGFza0xpc3RDaGVjaygpe3RoaXMudGFnKCc8aW5wdXQgdHlwZT0iY2hlY2tib3giIGRpc2FibGVkPSIiICcpfX0sZXhpdDp7dGFza0xpc3RDaGVjaygpe3RoaXMudGFnKCIvPiIpfSx0YXNrTGlzdENoZWNrVmFsdWVDaGVja2VkKCl7dGhpcy50YWcoJ2NoZWNrZWQ9IiIgJyl9fX19dmFyIExVdD1sKCgpPT57fSk7ZnVuY3Rpb24gdXllKCl7cmV0dXJue3RleHQ6ezkxOnc4YX19fWZ1bmN0aW9uIE04YShlLHQscil7bGV0IGE9dGhpcztyZXR1cm4gaTtmdW5jdGlvbiBpKGMpe3JldHVybiBhLnByZXZpb3VzIT09bnVsbHx8IWEuX2dmbVRhc2tsaXN0Rmlyc3RDb250ZW50T2ZMaXN0SXRlbT9yKGMpOihlLmVudGVyKCJ0YXNrTGlzdENoZWNrIiksZS5lbnRlcigidGFza0xpc3RDaGVja01hcmtlciIpLGUuY29uc3VtZShjKSxlLmV4aXQoInRhc2tMaXN0Q2hlY2tNYXJrZXIiKSxvKX1mdW5jdGlvbiBvKGMpe3JldHVybiBscihjKT8oZS5lbnRlcigidGFza0xpc3RDaGVja1ZhbHVlVW5jaGVja2VkIiksZS5jb25zdW1lKGMpLGUuZXhpdCgidGFza0xpc3RDaGVja1ZhbHVlVW5jaGVja2VkIiksbik6Yz09PTg4fHxjPT09MTIwPyhlLmVudGVyKCJ0YXNrTGlzdENoZWNrVmFsdWVDaGVja2VkIiksZS5jb25zdW1lKGMpLGUuZXhpdCgidGFza0xpc3RDaGVja1ZhbHVlQ2hlY2tlZCIpLG4pOnIoYyl9ZnVuY3Rpb24gbihjKXtyZXR1cm4gYz09PTkzPyhlLmVudGVyKCJ0YXNrTGlzdENoZWNrTWFya2VyIiksZS5jb25zdW1lKGMpLGUuZXhpdCgidGFza0xpc3RDaGVja01hcmtlciIpLGUuZXhpdCgidGFza0xpc3RDaGVjayIpLHMpOnIoYyl9ZnVuY3Rpb24gcyhjKXtyZXR1cm4gdHQoYyk/dChjKTpidChjKT9lLmNoZWNrKHt0b2tlbml6ZTprOGF9LHQscikoYyk6cihjKX19ZnVuY3Rpb24gazhhKGUsdCxyKXtyZXR1cm4gVHQoZSxhLCJ3aGl0ZXNwYWNlIik7ZnVuY3Rpb24gYShpKXtyZXR1cm4gaT09PW51bGw/cihpKTp0KGkpfX12YXIgdzhhLERVdD1sKCgpPT57YWkoKTtwcigpO3c4YT17bmFtZToidGFza2xpc3RDaGVjayIsdG9rZW5pemU6TThhfX0pO3ZhciBBVXQ9bCgoKT0+e0xVdCgpO0RVdCgpfSk7ZnVuY3Rpb24gRVV0KGUpe3JldHVybiBVb2UoW1B2ZSgpLHJ5ZSgpLG95ZShlKSxseWUoKSx1eWUoKV0pfWZ1bmN0aW9uIHo4MShlKXtyZXR1cm4gV29lKFtGdmUoKSxheWUoZSksaXllKCksc3llKCksY3llKCksZHllKCldKX12YXIgJFV0PWwoKCk9PntHb2UoKTtIVnQoKTtoVXQoKTt4VXQoKTtTVXQoKTtUVXQoKTtBVXQoKX0pO2Z1bmN0aW9uIGQ5KGUpe2xldCB0PXRoaXMscj1lfHxTOGEsYT10LmRhdGEoKSxpPWEubWljcm9tYXJrRXh0ZW5zaW9uc3x8KGEubWljcm9tYXJrRXh0ZW5zaW9ucz1bXSksbz1hLmZyb21NYXJrZG93bkV4dGVuc2lvbnN8fChhLmZyb21NYXJrZG93bkV4dGVuc2lvbnM9W10pLG49YS50b01hcmtkb3duRXh0ZW5zaW9uc3x8KGEudG9NYXJrZG93bkV4dGVuc2lvbnM9W10pO2kucHVzaChFVXQocikpLG8ucHVzaChMdmUoKSksbi5wdXNoKER2ZShyKSl9dmFyIFM4YSxQVXQ9bCgoKT0+e0RWdCgpOyRVdCgpO1M4YT17fX0pO3ZhciBJVXQ9bCgoKT0+e1BVdCgpfSk7ZnVuY3Rpb24gZnllKGUpe2xldCB0PWV8fHt9LHI9ITAsYT17fSxpPVtbXV0sbz1bXSxuPVtdLGM9V29lKFt7ZW50ZXI6e2Jsb2NrUXVvdGU6UCxjb2RlRmVuY2VkOmFlLGNvZGVGZW5jZWRGZW5jZUluZm86Zyxjb2RlRmVuY2VkRmVuY2VNZXRhOmcsY29kZUluZGVudGVkOmZlLGNvZGVUZXh0OnNlLGNvbnRlbnQ6QWUsZGVmaW5pdGlvbjokZSxkZWZpbml0aW9uRGVzdGluYXRpb25TdHJpbmc6cSxkZWZpbml0aW9uTGFiZWxTdHJpbmc6ZyxkZWZpbml0aW9uVGl0bGVTdHJpbmc6ZyxlbXBoYXNpczpMdCxodG1sRmxvdzpLZSxodG1sVGV4dDpudCxpbWFnZTpRLGxhYmVsOmcsbGluazprZSxsaXN0SXRlbU1hcmtlcjp6LGxpc3RJdGVtVmFsdWU6QixsaXN0T3JkZXJlZDokLGxpc3RVbm9yZGVyZWQ6SSxwYXJhZ3JhcGg6SCxyZWZlcmVuY2U6ZyxyZXNvdXJjZTpSLHJlc291cmNlRGVzdGluYXRpb25TdHJpbmc6TyxyZXNvdXJjZVRpdGxlU3RyaW5nOmcsc2V0ZXh0SGVhZGluZzpuZSxzdHJvbmc6T3R9LGV4aXQ6e2F0eEhlYWRpbmc6T2UsYXR4SGVhZGluZ1NlcXVlbmNlOnhlLGF1dG9saW5rRW1haWw6aTEsYXV0b2xpbmtQcm90b2NvbDphMSxibG9ja1F1b3RlOlYsY2hhcmFjdGVyRXNjYXBlVmFsdWU6WixjaGFyYWN0ZXJSZWZlcmVuY2VNYXJrZXJIZXhhZGVjaW1hbDp5cixjaGFyYWN0ZXJSZWZlcmVuY2VNYXJrZXJOdW1lcmljOnlyLGNoYXJhY3RlclJlZmVyZW5jZVZhbHVlOmxpLGNvZGVGZW5jZWQ6TCxjb2RlRmVuY2VkRmVuY2U6Sixjb2RlRmVuY2VkRmVuY2VJbmZvOlQsY29kZUZlbmNlZEZlbmNlTWV0YTpOLGNvZGVGbG93VmFsdWU6YmUsY29kZUluZGVudGVkOkwsY29kZVRleHQ6ZGUsY29kZVRleHREYXRhOlosZGF0YTpaLGRlZmluaXRpb246Z2UsZGVmaW5pdGlvbkRlc3RpbmF0aW9uU3RyaW5nOmllLGRlZmluaXRpb25MYWJlbFN0cmluZzpVLGRlZmluaXRpb25UaXRsZVN0cmluZzp3ZSxlbXBoYXNpczpFZSxoYXJkQnJlYWtFc2NhcGU6TmUsaGFyZEJyZWFrVHJhaWxpbmc6TmUsaHRtbEZsb3c6eXQsaHRtbEZsb3dEYXRhOlosaHRtbFRleHQ6eXQsaHRtbFRleHREYXRhOlosaW1hZ2U6eWUsbGFiZWw6QSxsYWJlbFRleHQ6RyxsaW5lRW5kaW5nOmVlLGxpbms6eWUsbGlzdE9yZGVyZWQ6eSxsaXN0VW5vcmRlcmVkOkUscGFyYWdyYXBoOlcscmVmZXJlbmNlOk4scmVmZXJlbmNlU3RyaW5nOkQscmVzb3VyY2U6TixyZXNvdXJjZURlc3RpbmF0aW9uU3RyaW5nOlkscmVzb3VyY2VUaXRsZVN0cmluZzp1ZSxzZXRleHRIZWFkaW5nOnRlLHNldGV4dEhlYWRpbmdMaW5lU2VxdWVuY2U6SmUsc2V0ZXh0SGVhZGluZ1RleHQ6TGUsc3Ryb25nOmd0LHRoZW1hdGljQnJlYWs6a3R9fSwuLi50Lmh0bWxFeHRlbnNpb25zfHxbXV0pLGQ9e2RlZmluaXRpb25zOmEsdGlnaHRTdGFjazpufSxmPXtidWZmZXI6ZyxlbmNvZGU6ayxnZXREYXRhOngsbGluZUVuZGluZ0lmTmVlZGVkOkMsb3B0aW9uczp0LHJhdzpNLHJlc3VtZTp2LHNldERhdGE6Yix0YWc6d30sdT10LmRlZmF1bHRMaW5lRW5kaW5nO3JldHVybiBwO2Z1bmN0aW9uIHAoX2Upe2xldCBGZT0tMSxOdD0wLG1yPVtdLENyPVtdLE9yPVtdO2Zvcig7KytGZTxfZS5sZW5ndGg7KSF1JiYoX2VbRmVdWzFdLnR5cGU9PT0ibGluZUVuZGluZyJ8fF9lW0ZlXVsxXS50eXBlPT09ImxpbmVFbmRpbmdCbGFuayIpJiYodT1fZVtGZV1bMl0uc2xpY2VTZXJpYWxpemUoX2VbRmVdWzFdKSksKF9lW0ZlXVsxXS50eXBlPT09Imxpc3RPcmRlcmVkInx8X2VbRmVdWzFdLnR5cGU9PT0ibGlzdFVub3JkZXJlZCIpJiYoX2VbRmVdWzBdPT09ImVudGVyIj9tci5wdXNoKEZlKTpoKF9lLnNsaWNlKG1yLnBvcCgpLEZlKSkpLF9lW0ZlXVsxXS50eXBlPT09ImRlZmluaXRpb24iJiYoX2VbRmVdWzBdPT09ImVudGVyIj8oT3I9Z2koT3IsX2Uuc2xpY2UoTnQsRmUpKSxOdD1GZSk6KENyPWdpKENyLF9lLnNsaWNlKE50LEZlKzEpKSxOdD1GZSsxKSk7Q3I9Z2koQ3IsT3IpLENyPWdpKENyLF9lLnNsaWNlKE50KSksRmU9LTE7bGV0IF9yPUNyO2ZvcihjLmVudGVyLm51bGwmJmMuZW50ZXIubnVsbC5jYWxsKGYpOysrRmU8X2UubGVuZ3RoOyl7bGV0IG8xPWNbX3JbRmVdWzBdXSxuMT1fcltGZV1bMV0udHlwZSxDZT1vMVtuMV07TlV0LmNhbGwobzEsbjEpJiZDZSYmQ2UuY2FsbCh7c2xpY2VTZXJpYWxpemU6X3JbRmVdWzJdLnNsaWNlU2VyaWFsaXplLC4uLmZ9LF9yW0ZlXVsxXSl9cmV0dXJuIGMuZXhpdC5udWxsJiZjLmV4aXQubnVsbC5jYWxsKGYpLGlbMF0uam9pbigiIil9ZnVuY3Rpb24gaChfZSl7bGV0IEZlPV9lLmxlbmd0aCxOdD0wLG1yPTAsQ3I9ITEsT3I7Zm9yKDsrK050PEZlOyl7bGV0IF9yPV9lW050XTtpZihfclsxXS5fY29udGFpbmVyKU9yPXZvaWQgMCxfclswXT09PSJlbnRlciI/bXIrKzptci0tO2Vsc2Ugc3dpdGNoKF9yWzFdLnR5cGUpe2Nhc2UibGlzdEl0ZW1QcmVmaXgiOntfclswXT09PSJleGl0IiYmKE9yPSEwKTticmVha31jYXNlImxpbmVQcmVmaXgiOmJyZWFrO2Nhc2UibGluZUVuZGluZ0JsYW5rIjp7X3JbMF09PT0iZW50ZXIiJiYhbXImJihPcj9Pcj12b2lkIDA6Q3I9ITApO2JyZWFrfWRlZmF1bHQ6T3I9dm9pZCAwfX1fZVswXVsxXS5fbG9vc2U9Q3J9ZnVuY3Rpb24gYihfZSxGZSl7ZFtfZV09RmV9ZnVuY3Rpb24geChfZSl7cmV0dXJuIGRbX2VdfWZ1bmN0aW9uIGcoKXtpLnB1c2goW10pfWZ1bmN0aW9uIHYoKXtyZXR1cm4gaS5wb3AoKS5qb2luKCIiKX1mdW5jdGlvbiB3KF9lKXtyJiYoYigibGFzdFdhc1RhZyIsITApLGlbaS5sZW5ndGgtMV0ucHVzaChfZSkpfWZ1bmN0aW9uIE0oX2Upe2IoImxhc3RXYXNUYWciKSxpW2kubGVuZ3RoLTFdLnB1c2goX2UpfWZ1bmN0aW9uIEYoKXtNKHV8fGAKYCl9ZnVuY3Rpb24gQygpe2xldCBfZT1pW2kubGVuZ3RoLTFdLEZlPV9lW19lLmxlbmd0aC0xXSxOdD1GZT9GZS5jaGFyQ29kZUF0KEZlLmxlbmd0aC0xKTpudWxsO050PT09MTB8fE50PT09MTN8fE50PT09bnVsbHx8RigpfWZ1bmN0aW9uIGsoX2Upe3JldHVybiB4KCJpZ25vcmVFbmNvZGUiKT9fZTpZb2UoX2UpfWZ1bmN0aW9uIE4oKXt2KCl9ZnVuY3Rpb24gJChfZSl7bi5wdXNoKCFfZS5fbG9vc2UpLEMoKSx3KCI8b2wiKSxiKCJleHBlY3RGaXJzdEl0ZW0iLCEwKX1mdW5jdGlvbiBJKF9lKXtuLnB1c2goIV9lLl9sb29zZSksQygpLHcoIjx1bCIpLGIoImV4cGVjdEZpcnN0SXRlbSIsITApfWZ1bmN0aW9uIEIoX2Upe2lmKHgoImV4cGVjdEZpcnN0SXRlbSIpKXtsZXQgRmU9TnVtYmVyLnBhcnNlSW50KHRoaXMuc2xpY2VTZXJpYWxpemUoX2UpLDEwKTtGZSE9PTEmJncoJyBzdGFydD0iJytrKFN0cmluZyhGZSkpKyciJyl9fWZ1bmN0aW9uIHooKXt4KCJleHBlY3RGaXJzdEl0ZW0iKT93KCI+Iik6XygpLEMoKSx3KCI8bGk+IiksYigiZXhwZWN0Rmlyc3RJdGVtIiksYigibGFzdFdhc1RhZyIpfWZ1bmN0aW9uIHkoKXtfKCksbi5wb3AoKSxGKCksdygiPC9vbD4iKX1mdW5jdGlvbiBFKCl7XygpLG4ucG9wKCksRigpLHcoIjwvdWw+Iil9ZnVuY3Rpb24gXygpe3goImxhc3RXYXNUYWciKSYmIXgoInNsdXJwQWxsTGluZUVuZGluZ3MiKSYmQygpLHcoIjwvbGk+IiksYigic2x1cnBBbGxMaW5lRW5kaW5ncyIpfWZ1bmN0aW9uIFAoKXtuLnB1c2goITEpLEMoKSx3KCI8YmxvY2txdW90ZT4iKX1mdW5jdGlvbiBWKCl7bi5wb3AoKSxDKCksdygiPC9ibG9ja3F1b3RlPiIpLGIoInNsdXJwQWxsTGluZUVuZGluZ3MiKX1mdW5jdGlvbiBIKCl7bltuLmxlbmd0aC0xXXx8KEMoKSx3KCI8cD4iKSksYigic2x1cnBBbGxMaW5lRW5kaW5ncyIpfWZ1bmN0aW9uIFcoKXtuW24ubGVuZ3RoLTFdP2IoInNsdXJwQWxsTGluZUVuZGluZ3MiLCEwKTp3KCI8L3A+Iil9ZnVuY3Rpb24gYWUoKXtDKCksdygiPHByZT48Y29kZSIpLGIoImZlbmNlc0NvdW50IiwwKX1mdW5jdGlvbiBUKCl7bGV0IF9lPXYoKTt3KCcgY2xhc3M9Imxhbmd1YWdlLScrX2UrJyInKX1mdW5jdGlvbiBKKCl7bGV0IF9lPXgoImZlbmNlc0NvdW50Iil8fDA7X2V8fCh3KCI+IiksYigic2x1cnBPbmVMaW5lRW5kaW5nIiwhMCkpLGIoImZlbmNlc0NvdW50IixfZSsxKX1mdW5jdGlvbiBmZSgpe0MoKSx3KCI8cHJlPjxjb2RlPiIpfWZ1bmN0aW9uIEwoKXtsZXQgX2U9eCgiZmVuY2VzQ291bnQiKTtfZSE9PXZvaWQgMCYmX2U8MiYmZC50aWdodFN0YWNrLmxlbmd0aD4wJiYheCgibGFzdFdhc1RhZyIpJiZGKCkseCgiZmxvd0NvZGVTZWVuRGF0YSIpJiZDKCksdygiPC9jb2RlPjwvcHJlPiIpLF9lIT09dm9pZCAwJiZfZTwyJiZDKCksYigiZmxvd0NvZGVTZWVuRGF0YSIpLGIoImZlbmNlc0NvdW50IiksYigic2x1cnBPbmVMaW5lRW5kaW5nIil9ZnVuY3Rpb24gUSgpe28ucHVzaCh7aW1hZ2U6ITB9KSxyPXZvaWQgMH1mdW5jdGlvbiBrZSgpe28ucHVzaCh7fSl9ZnVuY3Rpb24gRyhfZSl7b1tvLmxlbmd0aC0xXS5sYWJlbElkPXRoaXMuc2xpY2VTZXJpYWxpemUoX2UpfWZ1bmN0aW9uIEEoKXtvW28ubGVuZ3RoLTFdLmxhYmVsPXYoKX1mdW5jdGlvbiBEKF9lKXtvW28ubGVuZ3RoLTFdLnJlZmVyZW5jZUlkPXRoaXMuc2xpY2VTZXJpYWxpemUoX2UpfWZ1bmN0aW9uIFIoKXtnKCksb1tvLmxlbmd0aC0xXS5kZXN0aW5hdGlvbj0iIn1mdW5jdGlvbiBPKCl7ZygpLGIoImlnbm9yZUVuY29kZSIsITApfWZ1bmN0aW9uIFkoKXtvW28ubGVuZ3RoLTFdLmRlc3RpbmF0aW9uPXYoKSxiKCJpZ25vcmVFbmNvZGUiKX1mdW5jdGlvbiB1ZSgpe29bby5sZW5ndGgtMV0udGl0bGU9digpfWZ1bmN0aW9uIHllKCl7bGV0IF9lPW8ubGVuZ3RoLTEsRmU9b1tfZV0sTnQ9RmUucmVmZXJlbmNlSWR8fEZlLmxhYmVsSWQsbXI9RmUuZGVzdGluYXRpb249PT12b2lkIDA/YVtZYShOdCldOkZlO2ZvcihyPSEwO19lLS07KWlmKG9bX2VdLmltYWdlKXtyPXZvaWQgMDticmVha31GZS5pbWFnZT8odygnPGltZyBzcmM9IicrdGwobXIuZGVzdGluYXRpb24sdC5hbGxvd0Rhbmdlcm91c1Byb3RvY29sP3ZvaWQgMDp6OGEpKyciIGFsdD0iJyksTShGZS5sYWJlbCksdygnIicpKTp3KCc8YSBocmVmPSInK3RsKG1yLmRlc3RpbmF0aW9uLHQuYWxsb3dEYW5nZXJvdXNQcm90b2NvbD92b2lkIDA6RlV0KSsnIicpLHcobXIudGl0bGU/JyB0aXRsZT0iJyttci50aXRsZSsnIic6IiIpLEZlLmltYWdlP3coIiAvPiIpOih3KCI+IiksTShGZS5sYWJlbCksdygiPC9hPiIpKSxvLnBvcCgpfWZ1bmN0aW9uICRlKCl7ZygpLG8ucHVzaCh7fSl9ZnVuY3Rpb24gVShfZSl7digpLG9bby5sZW5ndGgtMV0ubGFiZWxJZD10aGlzLnNsaWNlU2VyaWFsaXplKF9lKX1mdW5jdGlvbiBxKCl7ZygpLGIoImlnbm9yZUVuY29kZSIsITApfWZ1bmN0aW9uIGllKCl7b1tvLmxlbmd0aC0xXS5kZXN0aW5hdGlvbj12KCksYigiaWdub3JlRW5jb2RlIil9ZnVuY3Rpb24gd2UoKXtvW28ubGVuZ3RoLTFdLnRpdGxlPXYoKX1mdW5jdGlvbiBnZSgpe2xldCBfZT1vW28ubGVuZ3RoLTFdLEZlPVlhKF9lLmxhYmVsSWQpO3YoKSxOVXQuY2FsbChhLEZlKXx8KGFbRmVdPW9bby5sZW5ndGgtMV0pLG8ucG9wKCl9ZnVuY3Rpb24gQWUoKXtiKCJzbHVycEFsbExpbmVFbmRpbmdzIiwhMCl9ZnVuY3Rpb24geGUoX2Upe3goImhlYWRpbmdSYW5rIil8fChiKCJoZWFkaW5nUmFuayIsdGhpcy5zbGljZVNlcmlhbGl6ZShfZSkubGVuZ3RoKSxDKCksdygiPGgiK3goImhlYWRpbmdSYW5rIikrIj4iKSl9ZnVuY3Rpb24gbmUoKXtnKCksYigic2x1cnBBbGxMaW5lRW5kaW5ncyIpfWZ1bmN0aW9uIExlKCl7Yigic2x1cnBBbGxMaW5lRW5kaW5ncyIsITApfWZ1bmN0aW9uIE9lKCl7dygiPC9oIit4KCJoZWFkaW5nUmFuayIpKyI+IiksYigiaGVhZGluZ1JhbmsiKX1mdW5jdGlvbiBKZShfZSl7YigiaGVhZGluZ1JhbmsiLHRoaXMuc2xpY2VTZXJpYWxpemUoX2UpLmNoYXJDb2RlQXQoMCk9PT02MT8xOjIpfWZ1bmN0aW9uIHRlKCl7bGV0IF9lPXYoKTtDKCksdygiPGgiK3goImhlYWRpbmdSYW5rIikrIj4iKSxNKF9lKSx3KCI8L2giK3goImhlYWRpbmdSYW5rIikrIj4iKSxiKCJzbHVycEFsbExpbmVFbmRpbmdzIiksYigiaGVhZGluZ1JhbmsiKX1mdW5jdGlvbiBaKF9lKXtNKGsodGhpcy5zbGljZVNlcmlhbGl6ZShfZSkpKX1mdW5jdGlvbiBlZShfZSl7aWYoIXgoInNsdXJwQWxsTGluZUVuZGluZ3MiKSl7aWYoeCgic2x1cnBPbmVMaW5lRW5kaW5nIikpe2IoInNsdXJwT25lTGluZUVuZGluZyIpO3JldHVybn1pZih4KCJpbkNvZGVUZXh0Iikpe00oIiAiKTtyZXR1cm59TShrKHRoaXMuc2xpY2VTZXJpYWxpemUoX2UpKSl9fWZ1bmN0aW9uIGJlKF9lKXtNKGsodGhpcy5zbGljZVNlcmlhbGl6ZShfZSkpKSxiKCJmbG93Q29kZVNlZW5EYXRhIiwhMCl9ZnVuY3Rpb24gTmUoKXt3KCI8YnIgLz4iKX1mdW5jdGlvbiBLZSgpe0MoKSxudCgpfWZ1bmN0aW9uIHl0KCl7YigiaWdub3JlRW5jb2RlIil9ZnVuY3Rpb24gbnQoKXt0LmFsbG93RGFuZ2Vyb3VzSHRtbCYmYigiaWdub3JlRW5jb2RlIiwhMCl9ZnVuY3Rpb24gTHQoKXt3KCI8ZW0+Iil9ZnVuY3Rpb24gT3QoKXt3KCI8c3Ryb25nPiIpfWZ1bmN0aW9uIHNlKCl7YigiaW5Db2RlVGV4dCIsITApLHcoIjxjb2RlPiIpfWZ1bmN0aW9uIGRlKCl7YigiaW5Db2RlVGV4dCIpLHcoIjwvY29kZT4iKX1mdW5jdGlvbiBFZSgpe3coIjwvZW0+Iil9ZnVuY3Rpb24gZ3QoKXt3KCI8L3N0cm9uZz4iKX1mdW5jdGlvbiBrdCgpe0MoKSx3KCI8aHIgLz4iKX1mdW5jdGlvbiB5cihfZSl7YigiY2hhcmFjdGVyUmVmZXJlbmNlVHlwZSIsX2UudHlwZSl9ZnVuY3Rpb24gbGkoX2Upe2xldCBGZT10aGlzLnNsaWNlU2VyaWFsaXplKF9lKSxOdD14KCJjaGFyYWN0ZXJSZWZlcmVuY2VUeXBlIik/bDkoRmUseCgiY2hhcmFjdGVyUmVmZXJlbmNlVHlwZSIpPT09ImNoYXJhY3RlclJlZmVyZW5jZU1hcmtlck51bWVyaWMiPzEwOjE2KTpPNChGZSk7TShrKE50KSksYigiY2hhcmFjdGVyUmVmZXJlbmNlVHlwZSIpfWZ1bmN0aW9uIGExKF9lKXtsZXQgRmU9dGhpcy5zbGljZVNlcmlhbGl6ZShfZSk7dygnPGEgaHJlZj0iJyt0bChGZSx0LmFsbG93RGFuZ2Vyb3VzUHJvdG9jb2w/dm9pZCAwOkZVdCkrJyI+JyksTShrKEZlKSksdygiPC9hPiIpfWZ1bmN0aW9uIGkxKF9lKXtsZXQgRmU9dGhpcy5zbGljZVNlcmlhbGl6ZShfZSk7dygnPGEgaHJlZj0iJyt0bCgibWFpbHRvOiIrRmUpKyciPicpLE0oayhGZSkpLHcoIjwvYT4iKX19dmFyIE5VdCxGVXQsejhhLHB5ZT1sKCgpPT57enkoKTtKMigpO0dvZSgpO3FvZSgpO0l2ZSgpO0Y0KCk7cmwoKTtOVXQ9e30uaGFzT3duUHJvcGVydHksRlV0PS9eKGh0dHBzP3xpcmNzP3xtYWlsdG98eG1wcCkkL2ksejhhPS9eaHR0cHM/JC9pfSk7ZnVuY3Rpb24gQzhhKGUpe2xldCB0PWUuYXR0ZW1wdCh0aGlzLnBhcnNlci5jb25zdHJ1Y3RzLmNvbnRlbnRJbml0aWFsLGEsaSkscjtyZXR1cm4gdDtmdW5jdGlvbiBhKHMpe2lmKHM9PT1udWxsKXtlLmNvbnN1bWUocyk7cmV0dXJufXJldHVybiBlLmVudGVyKCJsaW5lRW5kaW5nIiksZS5jb25zdW1lKHMpLGUuZXhpdCgibGluZUVuZGluZyIpLFR0KGUsdCwibGluZVByZWZpeCIpfWZ1bmN0aW9uIGkocyl7cmV0dXJuIGUuZW50ZXIoInBhcmFncmFwaCIpLG8ocyl9ZnVuY3Rpb24gbyhzKXtsZXQgYz1lLmVudGVyKCJjaHVua1RleHQiLHtjb250ZW50VHlwZToidGV4dCIscHJldmlvdXM6cn0pO3JldHVybiByJiYoci5uZXh0PWMpLHI9YyxuKHMpfWZ1bmN0aW9uIG4ocyl7aWYocz09PW51bGwpe2UuZXhpdCgiY2h1bmtUZXh0IiksZS5leGl0KCJwYXJhZ3JhcGgiKSxlLmNvbnN1bWUocyk7cmV0dXJufXJldHVybiB0dChzKT8oZS5jb25zdW1lKHMpLGUuZXhpdCgiY2h1bmtUZXh0Iiksbyk6KGUuY29uc3VtZShzKSxuKX19dmFyIE9VdCxSVXQ9bCgoKT0+e2FpKCk7cHIoKTtPVXQ9e3Rva2VuaXplOkM4YX19KTtmdW5jdGlvbiBfOGEoZSl7bGV0IHQ9dGhpcyxyPVtdLGE9MCxpLG8sbjtyZXR1cm4gcztmdW5jdGlvbiBzKE0pe2lmKGE8ci5sZW5ndGgpe2xldCBGPXJbYV07cmV0dXJuIHQuY29udGFpbmVyU3RhdGU9RlsxXSxlLmF0dGVtcHQoRlswXS5jb250aW51YXRpb24sYyxkKShNKX1yZXR1cm4gZChNKX1mdW5jdGlvbiBjKE0pe2lmKGErKyx0LmNvbnRhaW5lclN0YXRlLl9jbG9zZUZsb3cpe3QuY29udGFpbmVyU3RhdGUuX2Nsb3NlRmxvdz12b2lkIDAsaSYmdygpO2xldCBGPXQuZXZlbnRzLmxlbmd0aCxDPUYsaztmb3IoO0MtLTspaWYodC5ldmVudHNbQ11bMF09PT0iZXhpdCImJnQuZXZlbnRzW0NdWzFdLnR5cGU9PT0iY2h1bmtGbG93Iil7az10LmV2ZW50c1tDXVsxXS5lbmQ7YnJlYWt9dihhKTtsZXQgTj1GO2Zvcig7Tjx0LmV2ZW50cy5sZW5ndGg7KXQuZXZlbnRzW05dWzFdLmVuZD17Li4ua30sTisrO3JldHVybiByaSh0LmV2ZW50cyxDKzEsMCx0LmV2ZW50cy5zbGljZShGKSksdC5ldmVudHMubGVuZ3RoPU4sZChNKX1yZXR1cm4gcyhNKX1mdW5jdGlvbiBkKE0pe2lmKGE9PT1yLmxlbmd0aCl7aWYoIWkpcmV0dXJuIHAoTSk7aWYoaS5jdXJyZW50Q29uc3RydWN0JiZpLmN1cnJlbnRDb25zdHJ1Y3QuY29uY3JldGUpcmV0dXJuIGIoTSk7dC5pbnRlcnJ1cHQ9ISEoaS5jdXJyZW50Q29uc3RydWN0JiYhaS5fZ2ZtVGFibGVEeW5hbWljSW50ZXJydXB0SGFjayl9cmV0dXJuIHQuY29udGFpbmVyU3RhdGU9e30sZS5jaGVjayhCVXQsZix1KShNKX1mdW5jdGlvbiBmKE0pe3JldHVybiBpJiZ3KCksdihhKSxwKE0pfWZ1bmN0aW9uIHUoTSl7cmV0dXJuIHQucGFyc2VyLmxhenlbdC5ub3coKS5saW5lXT1hIT09ci5sZW5ndGgsbj10Lm5vdygpLm9mZnNldCxiKE0pfWZ1bmN0aW9uIHAoTSl7cmV0dXJuIHQuY29udGFpbmVyU3RhdGU9e30sZS5hdHRlbXB0KEJVdCxoLGIpKE0pfWZ1bmN0aW9uIGgoTSl7cmV0dXJuIGErKyxyLnB1c2goW3QuY3VycmVudENvbnN0cnVjdCx0LmNvbnRhaW5lclN0YXRlXSkscChNKX1mdW5jdGlvbiBiKE0pe2lmKE09PT1udWxsKXtpJiZ3KCksdigwKSxlLmNvbnN1bWUoTSk7cmV0dXJufXJldHVybiBpPWl8fHQucGFyc2VyLmZsb3codC5ub3coKSksZS5lbnRlcigiY2h1bmtGbG93Iix7X3Rva2VuaXplcjppLGNvbnRlbnRUeXBlOiJmbG93IixwcmV2aW91czpvfSkseChNKX1mdW5jdGlvbiB4KE0pe2lmKE09PT1udWxsKXtnKGUuZXhpdCgiY2h1bmtGbG93IiksITApLHYoMCksZS5jb25zdW1lKE0pO3JldHVybn1yZXR1cm4gdHQoTSk/KGUuY29uc3VtZShNKSxnKGUuZXhpdCgiY2h1bmtGbG93IikpLGE9MCx0LmludGVycnVwdD12b2lkIDAscyk6KGUuY29uc3VtZShNKSx4KX1mdW5jdGlvbiBnKE0sRil7bGV0IEM9dC5zbGljZVN0cmVhbShNKTtpZihGJiZDLnB1c2gobnVsbCksTS5wcmV2aW91cz1vLG8mJihvLm5leHQ9TSksbz1NLGkuZGVmaW5lU2tpcChNLnN0YXJ0KSxpLndyaXRlKEMpLHQucGFyc2VyLmxhenlbTS5zdGFydC5saW5lXSl7bGV0IGs9aS5ldmVudHMubGVuZ3RoO2Zvcig7ay0tOylpZihpLmV2ZW50c1trXVsxXS5zdGFydC5vZmZzZXQ8biYmKCFpLmV2ZW50c1trXVsxXS5lbmR8fGkuZXZlbnRzW2tdWzFdLmVuZC5vZmZzZXQ+bikpcmV0dXJuO2xldCBOPXQuZXZlbnRzLmxlbmd0aCwkPU4sSSxCO2Zvcig7JC0tOylpZih0LmV2ZW50c1skXVswXT09PSJleGl0IiYmdC5ldmVudHNbJF1bMV0udHlwZT09PSJjaHVua0Zsb3ciKXtpZihJKXtCPXQuZXZlbnRzWyRdWzFdLmVuZDticmVha31JPSEwfWZvcih2KGEpLGs9TjtrPHQuZXZlbnRzLmxlbmd0aDspdC5ldmVudHNba11bMV0uZW5kPXsuLi5CfSxrKys7cmkodC5ldmVudHMsJCsxLDAsdC5ldmVudHMuc2xpY2UoTikpLHQuZXZlbnRzLmxlbmd0aD1rfX1mdW5jdGlvbiB2KE0pe2xldCBGPXIubGVuZ3RoO2Zvcig7Ri0tID5NOyl7bGV0IEM9cltGXTt0LmNvbnRhaW5lclN0YXRlPUNbMV0sQ1swXS5leGl0LmNhbGwodCxlKX1yLmxlbmd0aD1NfWZ1bmN0aW9uIHcoKXtpLndyaXRlKFtudWxsXSksbz12b2lkIDAsaT12b2lkIDAsdC5jb250YWluZXJTdGF0ZS5fY2xvc2VGbG93PXZvaWQgMH19ZnVuY3Rpb24gVDhhKGUsdCxyKXtyZXR1cm4gVHQoZSxlLmF0dGVtcHQodGhpcy5wYXJzZXIuY29uc3RydWN0cy5kb2N1bWVudCx0LHIpLCJsaW5lUHJlZml4Iix0aGlzLnBhcnNlci5jb25zdHJ1Y3RzLmRpc2FibGUubnVsbC5pbmNsdWRlcygiY29kZUluZGVudGVkIik/dm9pZCAwOjQpfXZhciBIVXQsQlV0LHFVdD1sKCgpPT57YWkoKTtwcigpO0oyKCk7SFV0PXt0b2tlbml6ZTpfOGF9LEJVdD17dG9rZW5pemU6VDhhfX0pO2Z1bmN0aW9uIEw4YShlKXtsZXQgdD10aGlzLHI9ZS5hdHRlbXB0KGFsLGEsZS5hdHRlbXB0KHRoaXMucGFyc2VyLmNvbnN0cnVjdHMuZmxvd0luaXRpYWwsaSxUdChlLGUuYXR0ZW1wdCh0aGlzLnBhcnNlci5jb25zdHJ1Y3RzLmZsb3csaSxlLmF0dGVtcHQocXZlLGkpKSwibGluZVByZWZpeCIpKSk7cmV0dXJuIHI7ZnVuY3Rpb24gYShvKXtpZihvPT09bnVsbCl7ZS5jb25zdW1lKG8pO3JldHVybn1yZXR1cm4gZS5lbnRlcigibGluZUVuZGluZ0JsYW5rIiksZS5jb25zdW1lKG8pLGUuZXhpdCgibGluZUVuZGluZ0JsYW5rIiksdC5jdXJyZW50Q29uc3RydWN0PXZvaWQgMCxyfWZ1bmN0aW9uIGkobyl7aWYobz09PW51bGwpe2UuY29uc3VtZShvKTtyZXR1cm59cmV0dXJuIGUuZW50ZXIoImxpbmVFbmRpbmciKSxlLmNvbnN1bWUobyksZS5leGl0KCJsaW5lRW5kaW5nIiksdC5jdXJyZW50Q29uc3RydWN0PXZvaWQgMCxyfX12YXIgalV0LFZVdD1sKCgpPT57bm5lKCk7YWkoKTtwcigpO2pVdD17dG9rZW5pemU6TDhhfX0pO2Z1bmN0aW9uIFVVdChlKXtyZXR1cm57cmVzb2x2ZUFsbDpXVXQoZT09PSJ0ZXh0Ij9EOGE6dm9pZCAwKSx0b2tlbml6ZTp0fTtmdW5jdGlvbiB0KHIpe2xldCBhPXRoaXMsaT10aGlzLnBhcnNlci5jb25zdHJ1Y3RzW2VdLG89ci5hdHRlbXB0KGksbixzKTtyZXR1cm4gbjtmdW5jdGlvbiBuKGYpe3JldHVybiBkKGYpP28oZik6cyhmKX1mdW5jdGlvbiBzKGYpe2lmKGY9PT1udWxsKXtyLmNvbnN1bWUoZik7cmV0dXJufXJldHVybiByLmVudGVyKCJkYXRhIiksci5jb25zdW1lKGYpLGN9ZnVuY3Rpb24gYyhmKXtyZXR1cm4gZChmKT8oci5leGl0KCJkYXRhIiksbyhmKSk6KHIuY29uc3VtZShmKSxjKX1mdW5jdGlvbiBkKGYpe2lmKGY9PT1udWxsKXJldHVybiEwO2xldCB1PWlbZl0scD0tMTtpZih1KWZvcig7KytwPHUubGVuZ3RoOyl7bGV0IGg9dVtwXTtpZighaC5wcmV2aW91c3x8aC5wcmV2aW91cy5jYWxsKGEsYS5wcmV2aW91cykpcmV0dXJuITB9cmV0dXJuITF9fX1mdW5jdGlvbiBXVXQoZSl7cmV0dXJuIHQ7ZnVuY3Rpb24gdChyLGEpe2xldCBpPS0xLG87Zm9yKDsrK2k8PXIubGVuZ3RoOylvPT09dm9pZCAwP3JbaV0mJnJbaV1bMV0udHlwZT09PSJkYXRhIiYmKG89aSxpKyspOighcltpXXx8cltpXVsxXS50eXBlIT09ImRhdGEiKSYmKGkhPT1vKzImJihyW29dWzFdLmVuZD1yW2ktMV1bMV0uZW5kLHIuc3BsaWNlKG8rMixpLW8tMiksaT1vKzIpLG89dm9pZCAwKTtyZXR1cm4gZT9lKHIsYSk6cn19ZnVuY3Rpb24gRDhhKGUsdCl7bGV0IHI9MDtmb3IoOysrcjw9ZS5sZW5ndGg7KWlmKChyPT09ZS5sZW5ndGh8fGVbcl1bMV0udHlwZT09PSJsaW5lRW5kaW5nIikmJmVbci0xXVsxXS50eXBlPT09ImRhdGEiKXtsZXQgYT1lW3ItMV1bMV0saT10LnNsaWNlU3RyZWFtKGEpLG89aS5sZW5ndGgsbj0tMSxzPTAsYztmb3IoO28tLTspe2xldCBkPWlbb107aWYodHlwZW9mIGQ9PSJzdHJpbmciKXtmb3Iobj1kLmxlbmd0aDtkLmNoYXJDb2RlQXQobi0xKT09PTMyOylzKyssbi0tO2lmKG4pYnJlYWs7bj0tMX1lbHNlIGlmKGQ9PT0tMiljPSEwLHMrKztlbHNlIGlmKGQhPT0tMSl7bysrO2JyZWFrfX1pZih0Ll9jb250ZW50VHlwZVRleHRUcmFpbGluZyYmcj09PWUubGVuZ3RoJiYocz0wKSxzKXtsZXQgZD17dHlwZTpyPT09ZS5sZW5ndGh8fGN8fHM8Mj8ibGluZVN1ZmZpeCI6ImhhcmRCcmVha1RyYWlsaW5nIixzdGFydDp7X2J1ZmZlckluZGV4Om8/bjphLnN0YXJ0Ll9idWZmZXJJbmRleCtuLF9pbmRleDphLnN0YXJ0Ll9pbmRleCtvLGxpbmU6YS5lbmQubGluZSxjb2x1bW46YS5lbmQuY29sdW1uLXMsb2Zmc2V0OmEuZW5kLm9mZnNldC1zfSxlbmQ6ey4uLmEuZW5kfX07YS5lbmQ9ey4uLmQuc3RhcnR9LGEuc3RhcnQub2Zmc2V0PT09YS5lbmQub2Zmc2V0P09iamVjdC5hc3NpZ24oYSxkKTooZS5zcGxpY2UociwwLFsiZW50ZXIiLGQsdF0sWyJleGl0IixkLHRdKSxyKz0yKX1yKyt9cmV0dXJuIGV9dmFyIEdVdCxZVXQsWlV0LGh5ZT1sKCgpPT57R1V0PXtyZXNvbHZlQWxsOldVdCgpfSxZVXQ9VVV0KCJzdHJpbmciKSxaVXQ9VVV0KCJ0ZXh0Iil9KTt2YXIgbXllPXt9O3FlKG15ZSx7YXR0ZW50aW9uTWFya2VyczooKT0+TzhhLGNvbnRlbnRJbml0aWFsOigpPT5FOGEsZGlzYWJsZTooKT0+UjhhLGRvY3VtZW50OigpPT5BOGEsZmxvdzooKT0+UDhhLGZsb3dJbml0aWFsOigpPT4kOGEsaW5zaWRlU3BhbjooKT0+RjhhLHN0cmluZzooKT0+SThhLHRleHQ6KCk9Pk44YX0pO3ZhciBBOGEsRThhLCQ4YSxQOGEsSThhLE44YSxGOGEsTzhhLFI4YSxYVXQ9bCgoKT0+e25uZSgpO2h5ZSgpO0E4YT17NDI6VzEsNDM6VzEsNDU6VzEsNDg6VzEsNDk6VzEsNTA6VzEsNTE6VzEsNTI6VzEsNTM6VzEsNTQ6VzEsNTU6VzEsNTY6VzEsNTc6VzEsNjI6WG9lfSxFOGE9ezkxOkd2ZX0sJDhhPXtbLTJdOlR5LFstMV06VHksMzI6VHl9LFA4YT17MzU6WnZlLDQyOlU2LDQ1OltvbmUsVTZdLDYwOlF2ZSw2MTpvbmUsOTU6VTYsOTY6Sm9lLDEyNjpKb2V9LEk4YT17Mzg6S29lLDkyOlFvZX0sTjhhPXtbLTVdOkF5LFstNF06QXksWy0zXTpBeSwzMzpKdmUsMzg6S29lLDQyOl95LDYwOltPdmUsS3ZlXSw5MTpleWUsOTI6W1l2ZSxRb2VdLDkzOlY2LDk1Ol95LDk2OlJ2ZX0sRjhhPXtudWxsOltfeSxHVXRdfSxPOGE9e251bGw6WzQyLDk1XX0sUjhhPXtudWxsOltdfX0pO2Z1bmN0aW9uIFFVdChlLHQscil7bGV0IGE9e19idWZmZXJJbmRleDotMSxfaW5kZXg6MCxsaW5lOnImJnIubGluZXx8MSxjb2x1bW46ciYmci5jb2x1bW58fDEsb2Zmc2V0OnImJnIub2Zmc2V0fHwwfSxpPXt9LG89W10sbj1bXSxzPVtdLGM9ITAsZD17YXR0ZW1wdDpJKE4pLGNoZWNrOkkoJCksY29uc3VtZTpGLGVudGVyOkMsZXhpdDprLGludGVycnVwdDpJKCQse2ludGVycnVwdDohMH0pfSxmPXtjb2RlOm51bGwsY29udGFpbmVyU3RhdGU6e30sZGVmaW5lU2tpcDp2LGV2ZW50czpbXSxub3c6ZyxwYXJzZXI6ZSxwcmV2aW91czpudWxsLHNsaWNlU2VyaWFsaXplOmIsc2xpY2VTdHJlYW06eCx3cml0ZTpofSx1PXQudG9rZW5pemUuY2FsbChmLGQpLHA7cmV0dXJuIHQucmVzb2x2ZUFsbCYmby5wdXNoKHQpLGY7ZnVuY3Rpb24gaChFKXtyZXR1cm4gbj1naShuLEUpLHcoKSxuW24ubGVuZ3RoLTFdIT09bnVsbD9bXTooQih0LDApLGYuZXZlbnRzPVI0KG8sZi5ldmVudHMsZiksZi5ldmVudHMpfWZ1bmN0aW9uIGIoRSxfKXtyZXR1cm4gSDhhKHgoRSksXyl9ZnVuY3Rpb24geChFKXtyZXR1cm4gQjhhKG4sRSl9ZnVuY3Rpb24gZygpe2xldHtfYnVmZmVySW5kZXg6RSxfaW5kZXg6XyxsaW5lOlAsY29sdW1uOlYsb2Zmc2V0Okh9PWE7cmV0dXJue19idWZmZXJJbmRleDpFLF9pbmRleDpfLGxpbmU6UCxjb2x1bW46VixvZmZzZXQ6SH19ZnVuY3Rpb24gdihFKXtpW0UubGluZV09RS5jb2x1bW4seSgpfWZ1bmN0aW9uIHcoKXtsZXQgRTtmb3IoO2EuX2luZGV4PG4ubGVuZ3RoOyl7bGV0IF89blthLl9pbmRleF07aWYodHlwZW9mIF89PSJzdHJpbmciKWZvcihFPWEuX2luZGV4LGEuX2J1ZmZlckluZGV4PDAmJihhLl9idWZmZXJJbmRleD0wKTthLl9pbmRleD09PUUmJmEuX2J1ZmZlckluZGV4PF8ubGVuZ3RoOylNKF8uY2hhckNvZGVBdChhLl9idWZmZXJJbmRleCkpO2Vsc2UgTShfKX19ZnVuY3Rpb24gTShFKXtjPXZvaWQgMCxwPUUsdT11KEUpfWZ1bmN0aW9uIEYoRSl7dHQoRSk/KGEubGluZSsrLGEuY29sdW1uPTEsYS5vZmZzZXQrPUU9PT0tMz8yOjEseSgpKTpFIT09LTEmJihhLmNvbHVtbisrLGEub2Zmc2V0KyspLGEuX2J1ZmZlckluZGV4PDA/YS5faW5kZXgrKzooYS5fYnVmZmVySW5kZXgrKyxhLl9idWZmZXJJbmRleD09PW5bYS5faW5kZXhdLmxlbmd0aCYmKGEuX2J1ZmZlckluZGV4PS0xLGEuX2luZGV4KyspKSxmLnByZXZpb3VzPUUsYz0hMH1mdW5jdGlvbiBDKEUsXyl7bGV0IFA9X3x8e307cmV0dXJuIFAudHlwZT1FLFAuc3RhcnQ9ZygpLGYuZXZlbnRzLnB1c2goWyJlbnRlciIsUCxmXSkscy5wdXNoKFApLFB9ZnVuY3Rpb24gayhFKXtsZXQgXz1zLnBvcCgpO3JldHVybiBfLmVuZD1nKCksZi5ldmVudHMucHVzaChbImV4aXQiLF8sZl0pLF99ZnVuY3Rpb24gTihFLF8pe0IoRSxfLmZyb20pfWZ1bmN0aW9uICQoRSxfKXtfLnJlc3RvcmUoKX1mdW5jdGlvbiBJKEUsXyl7cmV0dXJuIFA7ZnVuY3Rpb24gUChWLEgsVyl7bGV0IGFlLFQsSixmZTtyZXR1cm4gQXJyYXkuaXNBcnJheShWKT9RKFYpOiJ0b2tlbml6ZSJpbiBWP1EoW1ZdKTpMKFYpO2Z1bmN0aW9uIEwoRCl7cmV0dXJuIFI7ZnVuY3Rpb24gUihPKXtsZXQgWT1PIT09bnVsbCYmRFtPXSx1ZT1PIT09bnVsbCYmRC5udWxsLHllPVsuLi5BcnJheS5pc0FycmF5KFkpP1k6WT9bWV06W10sLi4uQXJyYXkuaXNBcnJheSh1ZSk/dWU6dWU/W3VlXTpbXV07cmV0dXJuIFEoeWUpKE8pfX1mdW5jdGlvbiBRKEQpe3JldHVybiBhZT1ELFQ9MCxELmxlbmd0aD09PTA/VzprZShEW1RdKX1mdW5jdGlvbiBrZShEKXtyZXR1cm4gUjtmdW5jdGlvbiBSKE8pe3JldHVybiBmZT16KCksSj1ELEQucGFydGlhbHx8KGYuY3VycmVudENvbnN0cnVjdD1EKSxELm5hbWUmJmYucGFyc2VyLmNvbnN0cnVjdHMuZGlzYWJsZS5udWxsLmluY2x1ZGVzKEQubmFtZSk/QShPKTpELnRva2VuaXplLmNhbGwoXz9PYmplY3QuYXNzaWduKE9iamVjdC5jcmVhdGUoZiksXyk6ZixkLEcsQSkoTyl9fWZ1bmN0aW9uIEcoRCl7cmV0dXJuIGM9ITAsRShKLGZlKSxIfWZ1bmN0aW9uIEEoRCl7cmV0dXJuIGM9ITAsZmUucmVzdG9yZSgpLCsrVDxhZS5sZW5ndGg/a2UoYWVbVF0pOld9fX1mdW5jdGlvbiBCKEUsXyl7RS5yZXNvbHZlQWxsJiYhby5pbmNsdWRlcyhFKSYmby5wdXNoKEUpLEUucmVzb2x2ZSYmcmkoZi5ldmVudHMsXyxmLmV2ZW50cy5sZW5ndGgtXyxFLnJlc29sdmUoZi5ldmVudHMuc2xpY2UoXyksZikpLEUucmVzb2x2ZVRvJiYoZi5ldmVudHM9RS5yZXNvbHZlVG8oZi5ldmVudHMsZikpfWZ1bmN0aW9uIHooKXtsZXQgRT1nKCksXz1mLnByZXZpb3VzLFA9Zi5jdXJyZW50Q29uc3RydWN0LFY9Zi5ldmVudHMubGVuZ3RoLEg9QXJyYXkuZnJvbShzKTtyZXR1cm57ZnJvbTpWLHJlc3RvcmU6V307ZnVuY3Rpb24gVygpe2E9RSxmLnByZXZpb3VzPV8sZi5jdXJyZW50Q29uc3RydWN0PVAsZi5ldmVudHMubGVuZ3RoPVYscz1ILHkoKX19ZnVuY3Rpb24geSgpe2EubGluZSBpbiBpJiZhLmNvbHVtbjwyJiYoYS5jb2x1bW49aVthLmxpbmVdLGEub2Zmc2V0Kz1pW2EubGluZV0tMSl9fWZ1bmN0aW9uIEI4YShlLHQpe2xldCByPXQuc3RhcnQuX2luZGV4LGE9dC5zdGFydC5fYnVmZmVySW5kZXgsaT10LmVuZC5faW5kZXgsbz10LmVuZC5fYnVmZmVySW5kZXgsbjtpZihyPT09aSluPVtlW3JdLnNsaWNlKGEsbyldO2Vsc2V7aWYobj1lLnNsaWNlKHIsaSksYT4tMSl7bGV0IHM9blswXTt0eXBlb2Ygcz09InN0cmluZyI/blswXT1zLnNsaWNlKGEpOm4uc2hpZnQoKX1vPjAmJm4ucHVzaChlW2ldLnNsaWNlKDAsbykpfXJldHVybiBufWZ1bmN0aW9uIEg4YShlLHQpe2xldCByPS0xLGE9W10saTtmb3IoOysrcjxlLmxlbmd0aDspe2xldCBvPWVbcl0sbjtpZih0eXBlb2Ygbz09InN0cmluZyIpbj1vO2Vsc2Ugc3dpdGNoKG8pe2Nhc2UtNTp7bj0iXHIiO2JyZWFrfWNhc2UtNDp7bj1gCmA7YnJlYWt9Y2FzZS0zOntuPWBccgpgO2JyZWFrfWNhc2UtMjp7bj10PyIgIjoiCSI7YnJlYWt9Y2FzZS0xOntpZighdCYmaSljb250aW51ZTtuPSIgIjticmVha31kZWZhdWx0Om49U3RyaW5nLmZyb21DaGFyQ29kZShvKX1pPW89PT0tMixhLnB1c2gobil9cmV0dXJuIGEuam9pbigiIil9dmFyIEtVdD1sKCgpPT57cHIoKTtKMigpO0N5KCl9KTtmdW5jdGlvbiBFeShlKXtsZXQgYT17Y29uc3RydWN0czpVb2UoW215ZSwuLi4oZXx8e30pLmV4dGVuc2lvbnN8fFtdXSksY29udGVudDppKE9VdCksZGVmaW5lZDpbXSxkb2N1bWVudDppKEhVdCksZmxvdzppKGpVdCksbGF6eTp7fSxzdHJpbmc6aShZVXQpLHRleHQ6aShaVXQpfTtyZXR1cm4gYTtmdW5jdGlvbiBpKG8pe3JldHVybiBuO2Z1bmN0aW9uIG4ocyl7cmV0dXJuIFFVdChhLG8scyl9fX12YXIgZ3llPWwoKCk9PntHb2UoKTtSVXQoKTtxVXQoKTtWVXQoKTtoeWUoKTtYVXQoKTtLVXQoKX0pO2Z1bmN0aW9uICR5KGUpe2Zvcig7IWVuZShlKTspO3JldHVybiBlfXZhciB4eWU9bCgoKT0+e0h2ZSgpfSk7ZnVuY3Rpb24gUHkoKXtsZXQgZT0xLHQ9IiIscj0hMCxhO3JldHVybiBpO2Z1bmN0aW9uIGkobyxuLHMpe2xldCBjPVtdLGQsZix1LHAsaDtmb3Iobz10Kyh0eXBlb2Ygbz09InN0cmluZyI/by50b1N0cmluZygpOm5ldyBUZXh0RGVjb2RlcihufHx2b2lkIDApLmRlY29kZShvKSksdT0wLHQ9IiIsciYmKG8uY2hhckNvZGVBdCgwKT09PTY1Mjc5JiZ1Kysscj12b2lkIDApO3U8by5sZW5ndGg7KXtpZihKVXQubGFzdEluZGV4PXUsZD1KVXQuZXhlYyhvKSxwPWQmJmQuaW5kZXghPT12b2lkIDA/ZC5pbmRleDpvLmxlbmd0aCxoPW8uY2hhckNvZGVBdChwKSwhZCl7dD1vLnNsaWNlKHUpO2JyZWFrfWlmKGg9PT0xMCYmdT09PXAmJmEpYy5wdXNoKC0zKSxhPXZvaWQgMDtlbHNlIHN3aXRjaChhJiYoYy5wdXNoKC01KSxhPXZvaWQgMCksdTxwJiYoYy5wdXNoKG8uc2xpY2UodSxwKSksZSs9cC11KSxoKXtjYXNlIDA6e2MucHVzaCg2NTUzMyksZSsrO2JyZWFrfWNhc2UgOTp7Zm9yKGY9TWF0aC5jZWlsKGUvNCkqNCxjLnB1c2goLTIpO2UrKzxmOyljLnB1c2goLTEpO2JyZWFrfWNhc2UgMTA6e2MucHVzaCgtNCksZT0xO2JyZWFrfWRlZmF1bHQ6YT0hMCxlPTF9dT1wKzF9cmV0dXJuIHMmJihhJiZjLnB1c2goLTUpLHQmJmMucHVzaCh0KSxjLnB1c2gobnVsbCkpLGN9fXZhciBKVXQsYnllPWwoKCk9PntKVXQ9L1tcMFx0XG5ccl0vZ30pO2Z1bmN0aW9uIHZoMShlLHQscil7cmV0dXJuIHR5cGVvZiB0IT0ic3RyaW5nIiYmKHI9dCx0PXZvaWQgMCksZnllKHIpKCR5KEV5KHIpLmRvY3VtZW50KCkud3JpdGUoUHkoKShlLHQsITApKSkpfXZhciBlV3Q9bCgoKT0+e3B5ZSgpO2d5ZSgpO3h5ZSgpO2J5ZSgpO3B5ZSgpO2d5ZSgpO3h5ZSgpO2J5ZSgpfSk7ZnVuY3Rpb24gdnllKGUsdCxyKXtyZXR1cm4gdCYmdHlwZW9mIHQ9PSJvYmplY3QiJiYocj10LHQ9dm9pZCAwKSxxOGEocikoJHkoRXkocikuZG9jdW1lbnQoKS53cml0ZShQeSgpKGUsdCwhMCkpKSl9ZnVuY3Rpb24gcThhKGUpe2xldCB0PXt0cmFuc2Zvcm1zOltdLGNhbkNvbnRhaW5Fb2xzOlsiZW1waGFzaXMiLCJmcmFnbWVudCIsImhlYWRpbmciLCJwYXJhZ3JhcGgiLCJzdHJvbmciXSxlbnRlcjp7YXV0b2xpbms6byhnZSksYXV0b2xpbmtQcm90b2NvbDpJLGF1dG9saW5rRW1haWw6SSxhdHhIZWFkaW5nOm8oVSksYmxvY2tRdW90ZTpvKE8pLGNoYXJhY3RlckVzY2FwZTpJLGNoYXJhY3RlclJlZmVyZW5jZTpJLGNvZGVGZW5jZWQ6byhZKSxjb2RlRmVuY2VkRmVuY2VJbmZvOm4sY29kZUZlbmNlZEZlbmNlTWV0YTpuLGNvZGVJbmRlbnRlZDpvKFksbiksY29kZVRleHQ6byh1ZSxuKSxjb2RlVGV4dERhdGE6SSxkYXRhOkksY29kZUZsb3dWYWx1ZTpJLGRlZmluaXRpb246byh5ZSksZGVmaW5pdGlvbkRlc3RpbmF0aW9uU3RyaW5nOm4sZGVmaW5pdGlvbkxhYmVsU3RyaW5nOm4sZGVmaW5pdGlvblRpdGxlU3RyaW5nOm4sZW1waGFzaXM6bygkZSksaGFyZEJyZWFrRXNjYXBlOm8ocSksaGFyZEJyZWFrVHJhaWxpbmc6byhxKSxodG1sRmxvdzpvKGllLG4pLGh0bWxGbG93RGF0YTpJLGh0bWxUZXh0Om8oaWUsbiksaHRtbFRleHREYXRhOkksaW1hZ2U6byh3ZSksbGFiZWw6bixsaW5rOm8oZ2UpLGxpc3RJdGVtOm8oeGUpLGxpc3RJdGVtVmFsdWU6cCxsaXN0T3JkZXJlZDpvKEFlLHUpLGxpc3RVbm9yZGVyZWQ6byhBZSkscGFyYWdyYXBoOm8obmUpLHJlZmVyZW5jZTpMLHJlZmVyZW5jZVN0cmluZzpuLHJlc291cmNlRGVzdGluYXRpb25TdHJpbmc6bixyZXNvdXJjZVRpdGxlU3RyaW5nOm4sc2V0ZXh0SGVhZGluZzpvKFUpLHN0cm9uZzpvKExlKSx0aGVtYXRpY0JyZWFrOm8oSmUpfSxleGl0OnthdHhIZWFkaW5nOmMoKSxhdHhIZWFkaW5nU2VxdWVuY2U6QyxhdXRvbGluazpjKCksYXV0b2xpbmtFbWFpbDpSLGF1dG9saW5rUHJvdG9jb2w6RCxibG9ja1F1b3RlOmMoKSxjaGFyYWN0ZXJFc2NhcGVWYWx1ZTpCLGNoYXJhY3RlclJlZmVyZW5jZU1hcmtlckhleGFkZWNpbWFsOmtlLGNoYXJhY3RlclJlZmVyZW5jZU1hcmtlck51bWVyaWM6a2UsY2hhcmFjdGVyUmVmZXJlbmNlVmFsdWU6RyxjaGFyYWN0ZXJSZWZlcmVuY2U6QSxjb2RlRmVuY2VkOmMoZyksY29kZUZlbmNlZEZlbmNlOngsY29kZUZlbmNlZEZlbmNlSW5mbzpoLGNvZGVGZW5jZWRGZW5jZU1ldGE6Yixjb2RlRmxvd1ZhbHVlOkIsY29kZUluZGVudGVkOmModiksY29kZVRleHQ6YyhQKSxjb2RlVGV4dERhdGE6QixkYXRhOkIsZGVmaW5pdGlvbjpjKCksZGVmaW5pdGlvbkRlc3RpbmF0aW9uU3RyaW5nOkYsZGVmaW5pdGlvbkxhYmVsU3RyaW5nOncsZGVmaW5pdGlvblRpdGxlU3RyaW5nOk0sZW1waGFzaXM6YygpLGhhcmRCcmVha0VzY2FwZTpjKHkpLGhhcmRCcmVha1RyYWlsaW5nOmMoeSksaHRtbEZsb3c6YyhFKSxodG1sRmxvd0RhdGE6QixodG1sVGV4dDpjKF8pLGh0bWxUZXh0RGF0YTpCLGltYWdlOmMoSCksbGFiZWw6YWUsbGFiZWxUZXh0OlcsbGluZUVuZGluZzp6LGxpbms6YyhWKSxsaXN0SXRlbTpjKCksbGlzdE9yZGVyZWQ6YygpLGxpc3RVbm9yZGVyZWQ6YygpLHBhcmFncmFwaDpjKCkscmVmZXJlbmNlU3RyaW5nOlEscmVzb3VyY2VEZXN0aW5hdGlvblN0cmluZzpULHJlc291cmNlVGl0bGVTdHJpbmc6SixyZXNvdXJjZTpmZSxzZXRleHRIZWFkaW5nOmMoJCksc2V0ZXh0SGVhZGluZ0xpbmVTZXF1ZW5jZTpOLHNldGV4dEhlYWRpbmdUZXh0Omssc3Ryb25nOmMoKSx0aGVtYXRpY0JyZWFrOmMoKX19O3JXdCh0LChlfHx7fSkubWRhc3RFeHRlbnNpb25zfHxbXSk7bGV0IHI9e307cmV0dXJuIGE7ZnVuY3Rpb24gYSh0ZSl7bGV0IFo9e3R5cGU6InJvb3QiLGNoaWxkcmVuOltdfSxlZT17c3RhY2s6W1pdLHRva2VuU3RhY2s6W10sY29uZmlnOnQsZW50ZXI6cyxleGl0OmQsYnVmZmVyOm4scmVzdW1lOmYsZGF0YTpyfSxiZT1bXSxOZT0tMTtmb3IoOysrTmU8dGUubGVuZ3RoOylpZih0ZVtOZV1bMV0udHlwZT09PSJsaXN0T3JkZXJlZCJ8fHRlW05lXVsxXS50eXBlPT09Imxpc3RVbm9yZGVyZWQiKWlmKHRlW05lXVswXT09PSJlbnRlciIpYmUucHVzaChOZSk7ZWxzZXtsZXQgS2U9YmUucG9wKCk7TmU9aSh0ZSxLZSxOZSl9Zm9yKE5lPS0xOysrTmU8dGUubGVuZ3RoOyl7bGV0IEtlPXRbdGVbTmVdWzBdXTt0V3QuY2FsbChLZSx0ZVtOZV1bMV0udHlwZSkmJktlW3RlW05lXVsxXS50eXBlXS5jYWxsKE9iamVjdC5hc3NpZ24oe3NsaWNlU2VyaWFsaXplOnRlW05lXVsyXS5zbGljZVNlcmlhbGl6ZX0sZWUpLHRlW05lXVsxXSl9aWYoZWUudG9rZW5TdGFjay5sZW5ndGg+MCl7bGV0IEtlPWVlLnRva2VuU3RhY2tbZWUudG9rZW5TdGFjay5sZW5ndGgtMV07KEtlWzFdfHxhV3QpLmNhbGwoZWUsdm9pZCAwLEtlWzBdKX1mb3IoWi5wb3NpdGlvbj17c3RhcnQ6QjQodGUubGVuZ3RoPjA/dGVbMF1bMV0uc3RhcnQ6e2xpbmU6MSxjb2x1bW46MSxvZmZzZXQ6MH0pLGVuZDpCNCh0ZS5sZW5ndGg+MD90ZVt0ZS5sZW5ndGgtMl1bMV0uZW5kOntsaW5lOjEsY29sdW1uOjEsb2Zmc2V0OjB9KX0sTmU9LTE7KytOZTx0LnRyYW5zZm9ybXMubGVuZ3RoOylaPXQudHJhbnNmb3Jtc1tOZV0oWil8fFo7cmV0dXJuIFp9ZnVuY3Rpb24gaSh0ZSxaLGVlKXtsZXQgYmU9Wi0xLE5lPS0xLEtlPSExLHl0LG50LEx0LE90O2Zvcig7KytiZTw9ZWU7KXtsZXQgc2U9dGVbYmVdO3N3aXRjaChzZVsxXS50eXBlKXtjYXNlImxpc3RVbm9yZGVyZWQiOmNhc2UibGlzdE9yZGVyZWQiOmNhc2UiYmxvY2tRdW90ZSI6e3NlWzBdPT09ImVudGVyIj9OZSsrOk5lLS0sT3Q9dm9pZCAwO2JyZWFrfWNhc2UibGluZUVuZGluZ0JsYW5rIjp7c2VbMF09PT0iZW50ZXIiJiYoeXQmJiFPdCYmIU5lJiYhTHQmJihMdD1iZSksT3Q9dm9pZCAwKTticmVha31jYXNlImxpbmVQcmVmaXgiOmNhc2UibGlzdEl0ZW1WYWx1ZSI6Y2FzZSJsaXN0SXRlbU1hcmtlciI6Y2FzZSJsaXN0SXRlbVByZWZpeCI6Y2FzZSJsaXN0SXRlbVByZWZpeFdoaXRlc3BhY2UiOmJyZWFrO2RlZmF1bHQ6T3Q9dm9pZCAwfWlmKCFOZSYmc2VbMF09PT0iZW50ZXIiJiZzZVsxXS50eXBlPT09Imxpc3RJdGVtUHJlZml4Inx8TmU9PT0tMSYmc2VbMF09PT0iZXhpdCImJihzZVsxXS50eXBlPT09Imxpc3RVbm9yZGVyZWQifHxzZVsxXS50eXBlPT09Imxpc3RPcmRlcmVkIikpe2lmKHl0KXtsZXQgZGU9YmU7Zm9yKG50PXZvaWQgMDtkZS0tOyl7bGV0IEVlPXRlW2RlXTtpZihFZVsxXS50eXBlPT09ImxpbmVFbmRpbmcifHxFZVsxXS50eXBlPT09ImxpbmVFbmRpbmdCbGFuayIpe2lmKEVlWzBdPT09ImV4aXQiKWNvbnRpbnVlO250JiYodGVbbnRdWzFdLnR5cGU9ImxpbmVFbmRpbmdCbGFuayIsS2U9ITApLEVlWzFdLnR5cGU9ImxpbmVFbmRpbmciLG50PWRlfWVsc2UgaWYoIShFZVsxXS50eXBlPT09ImxpbmVQcmVmaXgifHxFZVsxXS50eXBlPT09ImJsb2NrUXVvdGVQcmVmaXgifHxFZVsxXS50eXBlPT09ImJsb2NrUXVvdGVQcmVmaXhXaGl0ZXNwYWNlInx8RWVbMV0udHlwZT09PSJibG9ja1F1b3RlTWFya2VyInx8RWVbMV0udHlwZT09PSJsaXN0SXRlbUluZGVudCIpKWJyZWFrfUx0JiYoIW50fHxMdDxudCkmJih5dC5fc3ByZWFkPSEwKSx5dC5lbmQ9T2JqZWN0LmFzc2lnbih7fSxudD90ZVtudF1bMV0uc3RhcnQ6c2VbMV0uZW5kKSx0ZS5zcGxpY2UobnR8fGJlLDAsWyJleGl0Iix5dCxzZVsyXV0pLGJlKyssZWUrK31pZihzZVsxXS50eXBlPT09Imxpc3RJdGVtUHJlZml4Iil7bGV0IGRlPXt0eXBlOiJsaXN0SXRlbSIsX3NwcmVhZDohMSxzdGFydDpPYmplY3QuYXNzaWduKHt9LHNlWzFdLnN0YXJ0KSxlbmQ6dm9pZCAwfTt5dD1kZSx0ZS5zcGxpY2UoYmUsMCxbImVudGVyIixkZSxzZVsyXV0pLGJlKyssZWUrKyxMdD12b2lkIDAsT3Q9ITB9fX1yZXR1cm4gdGVbWl1bMV0uX3NwcmVhZD1LZSxlZX1mdW5jdGlvbiBvKHRlLFope3JldHVybiBlZTtmdW5jdGlvbiBlZShiZSl7cy5jYWxsKHRoaXMsdGUoYmUpLGJlKSxaJiZaLmNhbGwodGhpcyxiZSl9fWZ1bmN0aW9uIG4oKXt0aGlzLnN0YWNrLnB1c2goe3R5cGU6ImZyYWdtZW50IixjaGlsZHJlbjpbXX0pfWZ1bmN0aW9uIHModGUsWixlZSl7dGhpcy5zdGFja1t0aGlzLnN0YWNrLmxlbmd0aC0xXS5jaGlsZHJlbi5wdXNoKHRlKSx0aGlzLnN0YWNrLnB1c2godGUpLHRoaXMudG9rZW5TdGFjay5wdXNoKFtaLGVlfHx2b2lkIDBdKSx0ZS5wb3NpdGlvbj17c3RhcnQ6QjQoWi5zdGFydCksZW5kOnZvaWQgMH19ZnVuY3Rpb24gYyh0ZSl7cmV0dXJuIFo7ZnVuY3Rpb24gWihlZSl7dGUmJnRlLmNhbGwodGhpcyxlZSksZC5jYWxsKHRoaXMsZWUpfX1mdW5jdGlvbiBkKHRlLFope2xldCBlZT10aGlzLnN0YWNrLnBvcCgpLGJlPXRoaXMudG9rZW5TdGFjay5wb3AoKTtpZihiZSliZVswXS50eXBlIT09dGUudHlwZSYmKFo/Wi5jYWxsKHRoaXMsdGUsYmVbMF0pOihiZVsxXXx8YVd0KS5jYWxsKHRoaXMsdGUsYmVbMF0pKTtlbHNlIHRocm93IG5ldyBFcnJvcigiQ2Fubm90IGNsb3NlIGAiK3RlLnR5cGUrImAgKCIrSTQoe3N0YXJ0OnRlLnN0YXJ0LGVuZDp0ZS5lbmR9KSsiKTogaXRcdTIwMTlzIG5vdCBvcGVuIik7ZWUucG9zaXRpb24uZW5kPUI0KHRlLmVuZCl9ZnVuY3Rpb24gZigpe3JldHVybiBSNih0aGlzLnN0YWNrLnBvcCgpKX1mdW5jdGlvbiB1KCl7dGhpcy5kYXRhLmV4cGVjdGluZ0ZpcnN0TGlzdEl0ZW1WYWx1ZT0hMH1mdW5jdGlvbiBwKHRlKXtpZih0aGlzLmRhdGEuZXhwZWN0aW5nRmlyc3RMaXN0SXRlbVZhbHVlKXtsZXQgWj10aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoLTJdO1ouc3RhcnQ9TnVtYmVyLnBhcnNlSW50KHRoaXMuc2xpY2VTZXJpYWxpemUodGUpLDEwKSx0aGlzLmRhdGEuZXhwZWN0aW5nRmlyc3RMaXN0SXRlbVZhbHVlPXZvaWQgMH19ZnVuY3Rpb24gaCgpe2xldCB0ZT10aGlzLnJlc3VtZSgpLFo9dGhpcy5zdGFja1t0aGlzLnN0YWNrLmxlbmd0aC0xXTtaLmxhbmc9dGV9ZnVuY3Rpb24gYigpe2xldCB0ZT10aGlzLnJlc3VtZSgpLFo9dGhpcy5zdGFja1t0aGlzLnN0YWNrLmxlbmd0aC0xXTtaLm1ldGE9dGV9ZnVuY3Rpb24geCgpe3RoaXMuZGF0YS5mbG93Q29kZUluc2lkZXx8KHRoaXMuYnVmZmVyKCksdGhpcy5kYXRhLmZsb3dDb2RlSW5zaWRlPSEwKX1mdW5jdGlvbiBnKCl7bGV0IHRlPXRoaXMucmVzdW1lKCksWj10aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoLTFdO1oudmFsdWU9dGUucmVwbGFjZSgvXihccj9cbnxccil8KFxyP1xufFxyKSQvZywiIiksdGhpcy5kYXRhLmZsb3dDb2RlSW5zaWRlPXZvaWQgMH1mdW5jdGlvbiB2KCl7bGV0IHRlPXRoaXMucmVzdW1lKCksWj10aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoLTFdO1oudmFsdWU9dGUucmVwbGFjZSgvKFxyP1xufFxyKSQvZywiIil9ZnVuY3Rpb24gdyh0ZSl7bGV0IFo9dGhpcy5yZXN1bWUoKSxlZT10aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoLTFdO2VlLmxhYmVsPVosZWUuaWRlbnRpZmllcj1ZYSh0aGlzLnNsaWNlU2VyaWFsaXplKHRlKSkudG9Mb3dlckNhc2UoKX1mdW5jdGlvbiBNKCl7bGV0IHRlPXRoaXMucmVzdW1lKCksWj10aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoLTFdO1oudGl0bGU9dGV9ZnVuY3Rpb24gRigpe2xldCB0ZT10aGlzLnJlc3VtZSgpLFo9dGhpcy5zdGFja1t0aGlzLnN0YWNrLmxlbmd0aC0xXTtaLnVybD10ZX1mdW5jdGlvbiBDKHRlKXtsZXQgWj10aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoLTFdO2lmKCFaLmRlcHRoKXtsZXQgZWU9dGhpcy5zbGljZVNlcmlhbGl6ZSh0ZSkubGVuZ3RoO1ouZGVwdGg9ZWV9fWZ1bmN0aW9uIGsoKXt0aGlzLmRhdGEuc2V0ZXh0SGVhZGluZ1NsdXJwTGluZUVuZGluZz0hMH1mdW5jdGlvbiBOKHRlKXtsZXQgWj10aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoLTFdO1ouZGVwdGg9dGhpcy5zbGljZVNlcmlhbGl6ZSh0ZSkuY29kZVBvaW50QXQoMCk9PT02MT8xOjJ9ZnVuY3Rpb24gJCgpe3RoaXMuZGF0YS5zZXRleHRIZWFkaW5nU2x1cnBMaW5lRW5kaW5nPXZvaWQgMH1mdW5jdGlvbiBJKHRlKXtsZXQgZWU9dGhpcy5zdGFja1t0aGlzLnN0YWNrLmxlbmd0aC0xXS5jaGlsZHJlbixiZT1lZVtlZS5sZW5ndGgtMV07KCFiZXx8YmUudHlwZSE9PSJ0ZXh0IikmJihiZT1PZSgpLGJlLnBvc2l0aW9uPXtzdGFydDpCNCh0ZS5zdGFydCksZW5kOnZvaWQgMH0sZWUucHVzaChiZSkpLHRoaXMuc3RhY2sucHVzaChiZSl9ZnVuY3Rpb24gQih0ZSl7bGV0IFo9dGhpcy5zdGFjay5wb3AoKTtaLnZhbHVlKz10aGlzLnNsaWNlU2VyaWFsaXplKHRlKSxaLnBvc2l0aW9uLmVuZD1CNCh0ZS5lbmQpfWZ1bmN0aW9uIHoodGUpe2xldCBaPXRoaXMuc3RhY2tbdGhpcy5zdGFjay5sZW5ndGgtMV07aWYodGhpcy5kYXRhLmF0SGFyZEJyZWFrKXtsZXQgZWU9Wi5jaGlsZHJlbltaLmNoaWxkcmVuLmxlbmd0aC0xXTtlZS5wb3NpdGlvbi5lbmQ9QjQodGUuZW5kKSx0aGlzLmRhdGEuYXRIYXJkQnJlYWs9dm9pZCAwO3JldHVybn0hdGhpcy5kYXRhLnNldGV4dEhlYWRpbmdTbHVycExpbmVFbmRpbmcmJnQuY2FuQ29udGFpbkVvbHMuaW5jbHVkZXMoWi50eXBlKSYmKEkuY2FsbCh0aGlzLHRlKSxCLmNhbGwodGhpcyx0ZSkpfWZ1bmN0aW9uIHkoKXt0aGlzLmRhdGEuYXRIYXJkQnJlYWs9ITB9ZnVuY3Rpb24gRSgpe2xldCB0ZT10aGlzLnJlc3VtZSgpLFo9dGhpcy5zdGFja1t0aGlzLnN0YWNrLmxlbmd0aC0xXTtaLnZhbHVlPXRlfWZ1bmN0aW9uIF8oKXtsZXQgdGU9dGhpcy5yZXN1bWUoKSxaPXRoaXMuc3RhY2tbdGhpcy5zdGFjay5sZW5ndGgtMV07Wi52YWx1ZT10ZX1mdW5jdGlvbiBQKCl7bGV0IHRlPXRoaXMucmVzdW1lKCksWj10aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoLTFdO1oudmFsdWU9dGV9ZnVuY3Rpb24gVigpe2xldCB0ZT10aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoLTFdO2lmKHRoaXMuZGF0YS5pblJlZmVyZW5jZSl7bGV0IFo9dGhpcy5kYXRhLnJlZmVyZW5jZVR5cGV8fCJzaG9ydGN1dCI7dGUudHlwZSs9IlJlZmVyZW5jZSIsdGUucmVmZXJlbmNlVHlwZT1aLGRlbGV0ZSB0ZS51cmwsZGVsZXRlIHRlLnRpdGxlfWVsc2UgZGVsZXRlIHRlLmlkZW50aWZpZXIsZGVsZXRlIHRlLmxhYmVsO3RoaXMuZGF0YS5yZWZlcmVuY2VUeXBlPXZvaWQgMH1mdW5jdGlvbiBIKCl7bGV0IHRlPXRoaXMuc3RhY2tbdGhpcy5zdGFjay5sZW5ndGgtMV07aWYodGhpcy5kYXRhLmluUmVmZXJlbmNlKXtsZXQgWj10aGlzLmRhdGEucmVmZXJlbmNlVHlwZXx8InNob3J0Y3V0Ijt0ZS50eXBlKz0iUmVmZXJlbmNlIix0ZS5yZWZlcmVuY2VUeXBlPVosZGVsZXRlIHRlLnVybCxkZWxldGUgdGUudGl0bGV9ZWxzZSBkZWxldGUgdGUuaWRlbnRpZmllcixkZWxldGUgdGUubGFiZWw7dGhpcy5kYXRhLnJlZmVyZW5jZVR5cGU9dm9pZCAwfWZ1bmN0aW9uIFcodGUpe2xldCBaPXRoaXMuc2xpY2VTZXJpYWxpemUodGUpLGVlPXRoaXMuc3RhY2tbdGhpcy5zdGFjay5sZW5ndGgtMl07ZWUubGFiZWw9am9lKFopLGVlLmlkZW50aWZpZXI9WWEoWikudG9Mb3dlckNhc2UoKX1mdW5jdGlvbiBhZSgpe2xldCB0ZT10aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoLTFdLFo9dGhpcy5yZXN1bWUoKSxlZT10aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoLTFdO2lmKHRoaXMuZGF0YS5pblJlZmVyZW5jZT0hMCxlZS50eXBlPT09ImxpbmsiKXtsZXQgYmU9dGUuY2hpbGRyZW47ZWUuY2hpbGRyZW49YmV9ZWxzZSBlZS5hbHQ9Wn1mdW5jdGlvbiBUKCl7bGV0IHRlPXRoaXMucmVzdW1lKCksWj10aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoLTFdO1oudXJsPXRlfWZ1bmN0aW9uIEooKXtsZXQgdGU9dGhpcy5yZXN1bWUoKSxaPXRoaXMuc3RhY2tbdGhpcy5zdGFjay5sZW5ndGgtMV07Wi50aXRsZT10ZX1mdW5jdGlvbiBmZSgpe3RoaXMuZGF0YS5pblJlZmVyZW5jZT12b2lkIDB9ZnVuY3Rpb24gTCgpe3RoaXMuZGF0YS5yZWZlcmVuY2VUeXBlPSJjb2xsYXBzZWQifWZ1bmN0aW9uIFEodGUpe2xldCBaPXRoaXMucmVzdW1lKCksZWU9dGhpcy5zdGFja1t0aGlzLnN0YWNrLmxlbmd0aC0xXTtlZS5sYWJlbD1aLGVlLmlkZW50aWZpZXI9WWEodGhpcy5zbGljZVNlcmlhbGl6ZSh0ZSkpLnRvTG93ZXJDYXNlKCksdGhpcy5kYXRhLnJlZmVyZW5jZVR5cGU9ImZ1bGwifWZ1bmN0aW9uIGtlKHRlKXt0aGlzLmRhdGEuY2hhcmFjdGVyUmVmZXJlbmNlVHlwZT10ZS50eXBlfWZ1bmN0aW9uIEcodGUpe2xldCBaPXRoaXMuc2xpY2VTZXJpYWxpemUodGUpLGVlPXRoaXMuZGF0YS5jaGFyYWN0ZXJSZWZlcmVuY2VUeXBlLGJlO2VlPyhiZT1sOShaLGVlPT09ImNoYXJhY3RlclJlZmVyZW5jZU1hcmtlck51bWVyaWMiPzEwOjE2KSx0aGlzLmRhdGEuY2hhcmFjdGVyUmVmZXJlbmNlVHlwZT12b2lkIDApOmJlPU80KFopO2xldCBOZT10aGlzLnN0YWNrW3RoaXMuc3RhY2subGVuZ3RoLTFdO05lLnZhbHVlKz1iZX1mdW5jdGlvbiBBKHRlKXtsZXQgWj10aGlzLnN0YWNrLnBvcCgpO1oucG9zaXRpb24uZW5kPUI0KHRlLmVuZCl9ZnVuY3Rpb24gRCh0ZSl7Qi5jYWxsKHRoaXMsdGUpO2xldCBaPXRoaXMuc3RhY2tbdGhpcy5zdGFjay5sZW5ndGgtMV07Wi51cmw9dGhpcy5zbGljZVNlcmlhbGl6ZSh0ZSl9ZnVuY3Rpb24gUih0ZSl7Qi5jYWxsKHRoaXMsdGUpO2xldCBaPXRoaXMuc3RhY2tbdGhpcy5zdGFjay5sZW5ndGgtMV07Wi51cmw9Im1haWx0bzoiK3RoaXMuc2xpY2VTZXJpYWxpemUodGUpfWZ1bmN0aW9uIE8oKXtyZXR1cm57dHlwZToiYmxvY2txdW90ZSIsY2hpbGRyZW46W119fWZ1bmN0aW9uIFkoKXtyZXR1cm57dHlwZToiY29kZSIsbGFuZzpudWxsLG1ldGE6bnVsbCx2YWx1ZToiIn19ZnVuY3Rpb24gdWUoKXtyZXR1cm57dHlwZToiaW5saW5lQ29kZSIsdmFsdWU6IiJ9fWZ1bmN0aW9uIHllKCl7cmV0dXJue3R5cGU6ImRlZmluaXRpb24iLGlkZW50aWZpZXI6IiIsbGFiZWw6bnVsbCx0aXRsZTpudWxsLHVybDoiIn19ZnVuY3Rpb24gJGUoKXtyZXR1cm57dHlwZToiZW1waGFzaXMiLGNoaWxkcmVuOltdfX1mdW5jdGlvbiBVKCl7cmV0dXJue3R5cGU6ImhlYWRpbmciLGRlcHRoOjAsY2hpbGRyZW46W119fWZ1bmN0aW9uIHEoKXtyZXR1cm57dHlwZToiYnJlYWsifX1mdW5jdGlvbiBpZSgpe3JldHVybnt0eXBlOiJodG1sIix2YWx1ZToiIn19ZnVuY3Rpb24gd2UoKXtyZXR1cm57dHlwZToiaW1hZ2UiLHRpdGxlOm51bGwsdXJsOiIiLGFsdDpudWxsfX1mdW5jdGlvbiBnZSgpe3JldHVybnt0eXBlOiJsaW5rIix0aXRsZTpudWxsLHVybDoiIixjaGlsZHJlbjpbXX19ZnVuY3Rpb24gQWUodGUpe3JldHVybnt0eXBlOiJsaXN0IixvcmRlcmVkOnRlLnR5cGU9PT0ibGlzdE9yZGVyZWQiLHN0YXJ0Om51bGwsc3ByZWFkOnRlLl9zcHJlYWQsY2hpbGRyZW46W119fWZ1bmN0aW9uIHhlKHRlKXtyZXR1cm57dHlwZToibGlzdEl0ZW0iLHNwcmVhZDp0ZS5fc3ByZWFkLGNoZWNrZWQ6bnVsbCxjaGlsZHJlbjpbXX19ZnVuY3Rpb24gbmUoKXtyZXR1cm57dHlwZToicGFyYWdyYXBoIixjaGlsZHJlbjpbXX19ZnVuY3Rpb24gTGUoKXtyZXR1cm57dHlwZToic3Ryb25nIixjaGlsZHJlbjpbXX19ZnVuY3Rpb24gT2UoKXtyZXR1cm57dHlwZToidGV4dCIsdmFsdWU6IiJ9fWZ1bmN0aW9uIEplKCl7cmV0dXJue3R5cGU6InRoZW1hdGljQnJlYWsifX19ZnVuY3Rpb24gQjQoZSl7cmV0dXJue2xpbmU6ZS5saW5lLGNvbHVtbjplLmNvbHVtbixvZmZzZXQ6ZS5vZmZzZXR9fWZ1bmN0aW9uIHJXdChlLHQpe2xldCByPS0xO2Zvcig7KytyPHQubGVuZ3RoOyl7bGV0IGE9dFtyXTtBcnJheS5pc0FycmF5KGEpP3JXdChlLGEpOmo4YShlLGEpfX1mdW5jdGlvbiBqOGEoZSx0KXtsZXQgcjtmb3IociBpbiB0KWlmKHRXdC5jYWxsKHQscikpc3dpdGNoKHIpe2Nhc2UiY2FuQ29udGFpbkVvbHMiOntsZXQgYT10W3JdO2EmJmVbcl0ucHVzaCguLi5hKTticmVha31jYXNlInRyYW5zZm9ybXMiOntsZXQgYT10W3JdO2EmJmVbcl0ucHVzaCguLi5hKTticmVha31jYXNlImVudGVyIjpjYXNlImV4aXQiOntsZXQgYT10W3JdO2EmJk9iamVjdC5hc3NpZ24oZVtyXSxhKTticmVha319fWZ1bmN0aW9uIGFXdChlLHQpe3Rocm93IGU/bmV3IEVycm9yKCJDYW5ub3QgY2xvc2UgYCIrZS50eXBlKyJgICgiK0k0KHtzdGFydDplLnN0YXJ0LGVuZDplLmVuZH0pKyIpOiBhIGRpZmZlcmVudCB0b2tlbiAoYCIrdC50eXBlKyJgLCAiK0k0KHtzdGFydDp0LnN0YXJ0LGVuZDp0LmVuZH0pKyIpIGlzIG9wZW4iKTpuZXcgRXJyb3IoIkNhbm5vdCBjbG9zZSBkb2N1bWVudCwgYSB0b2tlbiAoYCIrdC50eXBlKyJgLCAiK0k0KHtzdGFydDp0LnN0YXJ0LGVuZDp0LmVuZH0pKyIpIGlzIHN0aWxsIG9wZW4iKX12YXIgdFd0LGlXdD1sKCgpPT57T29lKCk7ZVd0KCk7cW9lKCk7TXZlKCk7RjQoKTt6eSgpO05iZSgpO3RXdD17fS5oYXNPd25Qcm9wZXJ0eX0pO3ZhciBvV3Q9bCgoKT0+e2lXdCgpfSk7ZnVuY3Rpb24gdTkoZSl7bGV0IHQ9dGhpczt0LnBhcnNlcj1yO2Z1bmN0aW9uIHIoYSl7cmV0dXJuIHZ5ZShhLHsuLi50LmRhdGEoInNldHRpbmdzIiksLi4uZSxleHRlbnNpb25zOnQuZGF0YSgibWljcm9tYXJrRXh0ZW5zaW9ucyIpfHxbXSxtZGFzdEV4dGVuc2lvbnM6dC5kYXRhKCJmcm9tTWFya2Rvd25FeHRlbnNpb25zIil8fFtdfSl9fXZhciBuV3Q9bCgoKT0+e29XdCgpfSk7dmFyIHNXdD1sKCgpPT57bld0KCl9KTt2YXIgbFd0PVhlKChSaDEseXllKT0+eyhmdW5jdGlvbigpe3ZhciBlO3R5cGVvZiB5eWU8InUiP2U9eXllLmV4cG9ydHM9YTplPShmdW5jdGlvbigpe3JldHVybiB0aGlzfHwoMCxldmFsKSgidGhpcyIpfSkoKSxlLmZvcm1hdD1hLGUudnNwcmludGY9cix0eXBlb2YgY29uc29sZTwidSImJnR5cGVvZiBjb25zb2xlLmxvZz09ImZ1bmN0aW9uIiYmKGUucHJpbnRmPXQpO2Z1bmN0aW9uIHQoKXtjb25zb2xlLmxvZyhhLmFwcGx5KG51bGwsYXJndW1lbnRzKSl9ZnVuY3Rpb24gcihpLG8pe3JldHVybiBhLmFwcGx5KG51bGwsW2ldLmNvbmNhdChvKSl9ZnVuY3Rpb24gYShpKXtmb3IodmFyIG89MSxuPVtdLnNsaWNlLmNhbGwoYXJndW1lbnRzKSxzPTAsYz1pLmxlbmd0aCxkPSIiLGYsdT0hMSxwLGgsYj0hMSx4LGc9ZnVuY3Rpb24oKXtyZXR1cm4gbltvKytdfSx2PWZ1bmN0aW9uKCl7Zm9yKHZhciB3PSIiOy9cZC8udGVzdChpW3NdKTspdys9aVtzKytdLGY9aVtzXTtyZXR1cm4gdy5sZW5ndGg+MD9wYXJzZUludCh3KTpudWxsfTtzPGM7KytzKWlmKGY9aVtzXSx1KXN3aXRjaCh1PSExLGY9PSIuIj8oYj0hMSxmPWlbKytzXSk6Zj09IjAiJiZpW3MrMV09PSIuIj8oYj0hMCxzKz0yLGY9aVtzXSk6Yj0hMCx4PXYoKSxmKXtjYXNlImIiOmQrPXBhcnNlSW50KGcoKSwxMCkudG9TdHJpbmcoMik7YnJlYWs7Y2FzZSJjIjpwPWcoKSx0eXBlb2YgcD09InN0cmluZyJ8fHAgaW5zdGFuY2VvZiBTdHJpbmc/ZCs9cDpkKz1TdHJpbmcuZnJvbUNoYXJDb2RlKHBhcnNlSW50KHAsMTApKTticmVhaztjYXNlImQiOmQrPXBhcnNlSW50KGcoKSwxMCk7YnJlYWs7Y2FzZSJmIjpoPVN0cmluZyhwYXJzZUZsb2F0KGcoKSkudG9GaXhlZCh4fHw2KSksZCs9Yj9oOmgucmVwbGFjZSgvXjAvLCIiKTticmVhaztjYXNlImoiOmQrPUpTT04uc3RyaW5naWZ5KGcoKSk7YnJlYWs7Y2FzZSJvIjpkKz0iMCIrcGFyc2VJbnQoZygpLDEwKS50b1N0cmluZyg4KTticmVhaztjYXNlInMiOmQrPWcoKTticmVhaztjYXNlIngiOmQrPSIweCIrcGFyc2VJbnQoZygpLDEwKS50b1N0cmluZygxNik7YnJlYWs7Y2FzZSJYIjpkKz0iMHgiK3BhcnNlSW50KGcoKSwxMCkudG9TdHJpbmcoMTYpLnRvVXBwZXJDYXNlKCk7YnJlYWs7ZGVmYXVsdDpkKz1mO2JyZWFrfWVsc2UgZj09PSIlIj91PSEwOmQrPWY7cmV0dXJuIGR9fSkoKX0pO2Z1bmN0aW9uIFc2KGUpe3JldHVybiB0LmRpc3BsYXlOYW1lPWUuZGlzcGxheU5hbWV8fGUubmFtZSx0O2Z1bmN0aW9uIHQociwuLi5hKXtsZXQgaT1yJiYoMCxjV3QuZGVmYXVsdCkociwuLi5hKTtyZXR1cm4gbmV3IGUoaSl9fXZhciBjV3QsSXksZFd0PWwoKCk9PntjV3Q9QXIobFd0KCksMSksSXk9T2JqZWN0LmFzc2lnbihXNihFcnJvcikse2V2YWw6VzYoRXZhbEVycm9yKSxyYW5nZTpXNihSYW5nZUVycm9yKSxyZWZlcmVuY2U6VzYoUmVmZXJlbmNlRXJyb3IpLHN5bnRheDpXNihTeW50YXhFcnJvciksdHlwZTpXNihUeXBlRXJyb3IpLHVyaTpXNihVUklFcnJvcil9KX0pO2Z1bmN0aW9uIGY5KGUpe2xldCB0PVtdLHI9LTEsYT1BcnJheS5pc0FycmF5KGUpP2U6ZT9bZV06WyJ5YW1sIl07Zm9yKDsrK3I8YS5sZW5ndGg7KXRbcl09VjhhKGFbcl0pO3JldHVybiB0fWZ1bmN0aW9uIFY4YShlKXtsZXQgdD1lO2lmKHR5cGVvZiB0PT0ic3RyaW5nIil7aWYoIWNuZS5jYWxsKHVXdCx0KSl0aHJvdyBJeSgiTWlzc2luZyBtYXR0ZXIgZGVmaW5pdGlvbiBmb3IgYCVzYCIsdCk7dD17dHlwZTp0LG1hcmtlcjp1V3RbdF19fWVsc2UgaWYodHlwZW9mIHQhPSJvYmplY3QiKXRocm93IEl5KCJFeHBlY3RlZCBtYXR0ZXIgdG8gYmUgYW4gb2JqZWN0LCBub3QgYCVqYCIsdCk7aWYoIWNuZS5jYWxsKHQsInR5cGUiKSl0aHJvdyBJeSgiTWlzc2luZyBgdHlwZWAgaW4gbWF0dGVyIGAlamAiLHQpO2lmKCFjbmUuY2FsbCh0LCJmZW5jZSIpJiYhY25lLmNhbGwodCwibWFya2VyIikpdGhyb3cgSXkoIk1pc3NpbmcgYG1hcmtlcmAgb3IgYGZlbmNlYCBpbiBtYXR0ZXIgYCVqYCIsdCk7cmV0dXJuIHR9dmFyIGNuZSx1V3Qsd3llPWwoKCk9PntkV3QoKTtjbmU9e30uaGFzT3duUHJvcGVydHksdVd0PXt5YW1sOiItIix0b21sOiIrIn19KTtmdW5jdGlvbiBreWUoZSl7bGV0IHQ9ZjkoZSkscj17fSxhPS0xO2Zvcig7KythPHQubGVuZ3RoOyl7bGV0IGk9dFthXSxvPU15ZShpLCJvcGVuIikuY2hhckNvZGVBdCgwKSxuPVU4YShpKSxzPXJbb107QXJyYXkuaXNBcnJheShzKT9zLnB1c2gobik6cltvXT1bbl19cmV0dXJue2Zsb3c6cn19ZnVuY3Rpb24gVThhKGUpe2xldCB0PWUuYW55d2hlcmUscj1lLnR5cGUsYT1yKyJGZW5jZSIsaT1hKyJTZXF1ZW5jZSIsbz1yKyJWYWx1ZSIsbj17dG9rZW5pemU6ZixwYXJ0aWFsOiEwfSxzLGM9MDtyZXR1cm57dG9rZW5pemU6ZCxjb25jcmV0ZTohMH07ZnVuY3Rpb24gZCh1LHAsaCl7bGV0IGI9dGhpcztyZXR1cm4geDtmdW5jdGlvbiB4KE4pe2xldCAkPWIubm93KCk7cmV0dXJuICQuY29sdW1uPT09MSYmKCQubGluZT09PTF8fHQpJiYocz1NeWUoZSwib3BlbiIpLGM9MCxOPT09cy5jaGFyQ29kZUF0KGMpKT8odS5lbnRlcihyKSx1LmVudGVyKGEpLHUuZW50ZXIoaSksZyhOKSk6aChOKX1mdW5jdGlvbiBnKE4pe3JldHVybiBjPT09cy5sZW5ndGg/KHUuZXhpdChpKSxidChOKT8odS5lbnRlcigid2hpdGVzcGFjZSIpLHYoTikpOncoTikpOk49PT1zLmNoYXJDb2RlQXQoYysrKT8odS5jb25zdW1lKE4pLGcpOmgoTil9ZnVuY3Rpb24gdihOKXtyZXR1cm4gYnQoTik/KHUuY29uc3VtZShOKSx2KToodS5leGl0KCJ3aGl0ZXNwYWNlIiksdyhOKSl9ZnVuY3Rpb24gdyhOKXtyZXR1cm4gdHQoTik/KHUuZXhpdChhKSx1LmVudGVyKCJsaW5lRW5kaW5nIiksdS5jb25zdW1lKE4pLHUuZXhpdCgibGluZUVuZGluZyIpLHM9TXllKGUsImNsb3NlIiksYz0wLHUuYXR0ZW1wdChuLGssTSkpOmgoTil9ZnVuY3Rpb24gTShOKXtyZXR1cm4gTj09PW51bGx8fHR0KE4pP0MoTik6KHUuZW50ZXIobyksRihOKSl9ZnVuY3Rpb24gRihOKXtyZXR1cm4gTj09PW51bGx8fHR0KE4pPyh1LmV4aXQobyksQyhOKSk6KHUuY29uc3VtZShOKSxGKX1mdW5jdGlvbiBDKE4pe3JldHVybiBOPT09bnVsbD9oKE4pOih1LmVudGVyKCJsaW5lRW5kaW5nIiksdS5jb25zdW1lKE4pLHUuZXhpdCgibGluZUVuZGluZyIpLHUuYXR0ZW1wdChuLGssTSkpfWZ1bmN0aW9uIGsoTil7cmV0dXJuIHUuZXhpdChyKSxwKE4pfX1mdW5jdGlvbiBmKHUscCxoKXtsZXQgYj0wO3JldHVybiB4O2Z1bmN0aW9uIHgoTSl7cmV0dXJuIE09PT1zLmNoYXJDb2RlQXQoYik/KHUuZW50ZXIoYSksdS5lbnRlcihpKSxnKE0pKTpoKE0pfWZ1bmN0aW9uIGcoTSl7cmV0dXJuIGI9PT1zLmxlbmd0aD8odS5leGl0KGkpLGJ0KE0pPyh1LmVudGVyKCJ3aGl0ZXNwYWNlIiksdihNKSk6dyhNKSk6TT09PXMuY2hhckNvZGVBdChiKyspPyh1LmNvbnN1bWUoTSksZyk6aChNKX1mdW5jdGlvbiB2KE0pe3JldHVybiBidChNKT8odS5jb25zdW1lKE0pLHYpOih1LmV4aXQoIndoaXRlc3BhY2UiKSx3KE0pKX1mdW5jdGlvbiB3KE0pe3JldHVybiBNPT09bnVsbHx8dHQoTSk/KHUuZXhpdChhKSxwKE0pKTpoKE0pfX19ZnVuY3Rpb24gTXllKGUsdCl7cmV0dXJuIGUubWFya2VyP2ZXdChlLm1hcmtlcix0KS5yZXBlYXQoMyk6Zld0KGUuZmVuY2UsdCl9ZnVuY3Rpb24gZld0KGUsdCl7cmV0dXJuIHR5cGVvZiBlPT0ic3RyaW5nIj9lOmVbdF19dmFyIHBXdD1sKCgpPT57cHIoKTt3eWUoKX0pO3ZhciBoV3Q9bCgoKT0+e30pO3ZhciBTeWU9bCgoKT0+e3BXdCgpO2hXdCgpO3d5ZSgpfSk7ZnVuY3Rpb24gQ3llKGUpe2xldCB0PWY5KGUpLHI9e30sYT17fSxpPS0xO2Zvcig7KytpPHQubGVuZ3RoOyl7bGV0IG89dFtpXTtyW28udHlwZV09VzhhKG8pLGFbby50eXBlXT1HOGEsYVtvLnR5cGUrIlZhbHVlIl09WThhfXJldHVybntlbnRlcjpyLGV4aXQ6YX19ZnVuY3Rpb24gVzhhKGUpe3JldHVybiB0O2Z1bmN0aW9uIHQocil7dGhpcy5lbnRlcih7dHlwZTplLnR5cGUsdmFsdWU6IiJ9LHIpLHRoaXMuYnVmZmVyKCl9fWZ1bmN0aW9uIEc4YShlKXtsZXQgdD10aGlzLnJlc3VtZSgpLHI9dGhpcy5zdGFja1t0aGlzLnN0YWNrLmxlbmd0aC0xXTsidmFsdWUiaW4gcix0aGlzLmV4aXQoZSksci52YWx1ZT10LnJlcGxhY2UoL14oXHI/XG58XHIpfChccj9cbnxccikkL2csIiIpfWZ1bmN0aW9uIFk4YShlKXt0aGlzLmNvbmZpZy5lbnRlci5kYXRhLmNhbGwodGhpcyxlKSx0aGlzLmNvbmZpZy5leGl0LmRhdGEuY2FsbCh0aGlzLGUpfWZ1bmN0aW9uIF95ZShlKXtsZXQgdD1bXSxyPXt9LGE9ZjkoZSksaT0tMTtmb3IoOysraTxhLmxlbmd0aDspe2xldCBvPWFbaV07cltvLnR5cGVdPVo4YShvKTtsZXQgbj16eWUobywib3BlbiIpO3QucHVzaCh7YXRCcmVhazohMCxjaGFyYWN0ZXI6bi5jaGFyQXQoMCksYWZ0ZXI6YTYobi5jaGFyQXQoMSkpfSl9cmV0dXJue3Vuc2FmZTp0LGhhbmRsZXJzOnJ9fWZ1bmN0aW9uIFo4YShlKXtsZXQgdD16eWUoZSwib3BlbiIpLHI9enllKGUsImNsb3NlIik7cmV0dXJuIGE7ZnVuY3Rpb24gYShpKXtyZXR1cm4gdCsoaS52YWx1ZT9gCmAraS52YWx1ZToiIikrYApgK3J9fWZ1bmN0aW9uIHp5ZShlLHQpe3JldHVybiBlLm1hcmtlcj9tV3QoZS5tYXJrZXIsdCkucmVwZWF0KDMpOm1XdChlLmZlbmNlLHQpfWZ1bmN0aW9uIG1XdChlLHQpe3JldHVybiB0eXBlb2YgZT09InN0cmluZyI/ZTplW3RdfXZhciBnV3Q9bCgoKT0+e1A0KCk7U3llKCk7TWFlKCl9KTt2YXIgeFd0PWwoKCk9PntnV3QoKX0pO2Z1bmN0aW9uIHA5KGUpe2xldCB0PXRoaXMscj1lfHxYOGEsYT10LmRhdGEoKSxpPWEubWljcm9tYXJrRXh0ZW5zaW9uc3x8KGEubWljcm9tYXJrRXh0ZW5zaW9ucz1bXSksbz1hLmZyb21NYXJrZG93bkV4dGVuc2lvbnN8fChhLmZyb21NYXJrZG93bkV4dGVuc2lvbnM9W10pLG49YS50b01hcmtkb3duRXh0ZW5zaW9uc3x8KGEudG9NYXJrZG93bkV4dGVuc2lvbnM9W10pO2kucHVzaChreWUocikpLG8ucHVzaChDeWUocikpLG4ucHVzaChfeWUocikpfXZhciBYOGEsYld0PWwoKCk9Pnt4V3QoKTtTeWUoKTtYOGE9InlhbWwifSk7dmFyIHZXdD1sKCgpPT57Yld0KCl9KTt2YXIgVHllPWwoKCk9Pnt9KTt2YXIgeVd0LFE4YSxobmUsd1d0PWwoKCk9PntUeWUoKTt5V3Q9dHlwZW9mIHNlbGY9PSJvYmplY3QiP3NlbGY6Z2xvYmFsVGhpcyxROGE9KGUsdCk9PntsZXQgcj0oaSxvKT0+KGUuc2V0KG8saSksaSksYT1pPT57aWYoZS5oYXMoaSkpcmV0dXJuIGUuZ2V0KGkpO2xldFtvLG5dPXRbaV07c3dpdGNoKG8pe2Nhc2UgMDpjYXNlLTE6cmV0dXJuIHIobixpKTtjYXNlIDE6e2xldCBzPXIoW10saSk7Zm9yKGxldCBjIG9mIG4pcy5wdXNoKGEoYykpO3JldHVybiBzfWNhc2UgMjp7bGV0IHM9cih7fSxpKTtmb3IobGV0W2MsZF1vZiBuKXNbYShjKV09YShkKTtyZXR1cm4gc31jYXNlIDM6cmV0dXJuIHIobmV3IERhdGUobiksaSk7Y2FzZSA0OntsZXR7c291cmNlOnMsZmxhZ3M6Y309bjtyZXR1cm4gcihuZXcgUmVnRXhwKHMsYyksaSl9Y2FzZSA1OntsZXQgcz1yKG5ldyBNYXAsaSk7Zm9yKGxldFtjLGRdb2YgbilzLnNldChhKGMpLGEoZCkpO3JldHVybiBzfWNhc2UgNjp7bGV0IHM9cihuZXcgU2V0LGkpO2ZvcihsZXQgYyBvZiBuKXMuYWRkKGEoYykpO3JldHVybiBzfWNhc2UgNzp7bGV0e25hbWU6cyxtZXNzYWdlOmN9PW47cmV0dXJuIHIobmV3IHlXdFtzXShjKSxpKX1jYXNlIDg6cmV0dXJuIHIoQmlnSW50KG4pLGkpO2Nhc2UiQmlnSW50IjpyZXR1cm4gcihPYmplY3QoQmlnSW50KG4pKSxpKTtjYXNlIkFycmF5QnVmZmVyIjpyZXR1cm4gcihuZXcgVWludDhBcnJheShuKS5idWZmZXIsbik7Y2FzZSJEYXRhVmlldyI6e2xldHtidWZmZXI6c309bmV3IFVpbnQ4QXJyYXkobik7cmV0dXJuIHIobmV3IERhdGFWaWV3KHMpLG4pfX1yZXR1cm4gcihuZXcgeVd0W29dKG4pLGkpfTtyZXR1cm4gYX0saG5lPWU9PlE4YShuZXcgTWFwLGUpKDApfSk7dmFyIG05LEs4YSxKOGEsT3ksbW5lLGVoYSxnbmUsTVd0PWwoKCk9PntUeWUoKTttOT0iIix7dG9TdHJpbmc6SzhhfT17fSx7a2V5czpKOGF9PU9iamVjdCxPeT1lPT57bGV0IHQ9dHlwZW9mIGU7aWYodCE9PSJvYmplY3QifHwhZSlyZXR1cm5bMCx0XTtsZXQgcj1LOGEuY2FsbChlKS5zbGljZSg4LC0xKTtzd2l0Y2gocil7Y2FzZSJBcnJheSI6cmV0dXJuWzEsbTldO2Nhc2UiT2JqZWN0IjpyZXR1cm5bMixtOV07Y2FzZSJEYXRlIjpyZXR1cm5bMyxtOV07Y2FzZSJSZWdFeHAiOnJldHVybls0LG05XTtjYXNlIk1hcCI6cmV0dXJuWzUsbTldO2Nhc2UiU2V0IjpyZXR1cm5bNixtOV07Y2FzZSJEYXRhVmlldyI6cmV0dXJuWzEscl19cmV0dXJuIHIuaW5jbHVkZXMoIkFycmF5Iik/WzEscl06ci5pbmNsdWRlcygiRXJyb3IiKT9bNyxyXTpbMixyXX0sbW5lPShbZSx0XSk9PmU9PT0wJiYodD09PSJmdW5jdGlvbiJ8fHQ9PT0ic3ltYm9sIiksZWhhPShlLHQscixhKT0+e2xldCBpPShuLHMpPT57bGV0IGM9YS5wdXNoKG4pLTE7cmV0dXJuIHIuc2V0KHMsYyksY30sbz1uPT57aWYoci5oYXMobikpcmV0dXJuIHIuZ2V0KG4pO2xldFtzLGNdPU95KG4pO3N3aXRjaChzKXtjYXNlIDA6e2xldCBmPW47c3dpdGNoKGMpe2Nhc2UiYmlnaW50IjpzPTgsZj1uLnRvU3RyaW5nKCk7YnJlYWs7Y2FzZSJmdW5jdGlvbiI6Y2FzZSJzeW1ib2wiOmlmKGUpdGhyb3cgbmV3IFR5cGVFcnJvcigidW5hYmxlIHRvIHNlcmlhbGl6ZSAiK2MpO2Y9bnVsbDticmVhaztjYXNlInVuZGVmaW5lZCI6cmV0dXJuIGkoWy0xXSxuKX1yZXR1cm4gaShbcyxmXSxuKX1jYXNlIDE6e2lmKGMpe2xldCBwPW47cmV0dXJuIGM9PT0iRGF0YVZpZXciP3A9bmV3IFVpbnQ4QXJyYXkobi5idWZmZXIpOmM9PT0iQXJyYXlCdWZmZXIiJiYocD1uZXcgVWludDhBcnJheShuKSksaShbYyxbLi4ucF1dLG4pfWxldCBmPVtdLHU9aShbcyxmXSxuKTtmb3IobGV0IHAgb2YgbilmLnB1c2gobyhwKSk7cmV0dXJuIHV9Y2FzZSAyOntpZihjKXN3aXRjaChjKXtjYXNlIkJpZ0ludCI6cmV0dXJuIGkoW2Msbi50b1N0cmluZygpXSxuKTtjYXNlIkJvb2xlYW4iOmNhc2UiTnVtYmVyIjpjYXNlIlN0cmluZyI6cmV0dXJuIGkoW2Msbi52YWx1ZU9mKCldLG4pfWlmKHQmJiJ0b0pTT04iaW4gbilyZXR1cm4gbyhuLnRvSlNPTigpKTtsZXQgZj1bXSx1PWkoW3MsZl0sbik7Zm9yKGxldCBwIG9mIEo4YShuKSkoZXx8IW1uZShPeShuW3BdKSkpJiZmLnB1c2goW28ocCksbyhuW3BdKV0pO3JldHVybiB1fWNhc2UgMzpyZXR1cm4gaShbcyxuLnRvSVNPU3RyaW5nKCldLG4pO2Nhc2UgNDp7bGV0e3NvdXJjZTpmLGZsYWdzOnV9PW47cmV0dXJuIGkoW3Mse3NvdXJjZTpmLGZsYWdzOnV9XSxuKX1jYXNlIDU6e2xldCBmPVtdLHU9aShbcyxmXSxuKTtmb3IobGV0W3AsaF1vZiBuKShlfHwhKG1uZShPeShwKSl8fG1uZShPeShoKSkpKSYmZi5wdXNoKFtvKHApLG8oaCldKTtyZXR1cm4gdX1jYXNlIDY6e2xldCBmPVtdLHU9aShbcyxmXSxuKTtmb3IobGV0IHAgb2YgbikoZXx8IW1uZShPeShwKSkpJiZmLnB1c2gobyhwKSk7cmV0dXJuIHV9fWxldHttZXNzYWdlOmR9PW47cmV0dXJuIGkoW3Mse25hbWU6YyxtZXNzYWdlOmR9XSxuKX07cmV0dXJuIG99LGduZT0oZSx7anNvbjp0LGxvc3N5OnJ9PXt9KT0+e2xldCBhPVtdO3JldHVybiBlaGEoISh0fHxyKSwhIXQsbmV3IE1hcCxhKShlKSxhfX0pO3ZhciBINCx4bmU9bCgoKT0+e3dXdCgpO01XdCgpO0g0PXR5cGVvZiBzdHJ1Y3R1cmVkQ2xvbmU9PSJmdW5jdGlvbiI/KGUsdCk9PnQmJigianNvbiJpbiB0fHwibG9zc3kiaW4gdCk/aG5lKGduZShlLHQpKTpzdHJ1Y3R1cmVkQ2xvbmUoZSk6KGUsdCk9PmhuZShnbmUoZSx0KSl9KTtmdW5jdGlvbiBrV3QoZSl7cmV0dXJuIHQ7ZnVuY3Rpb24gdChyKXtsZXQgYT1yJiZyLnBvc2l0aW9uJiZyLnBvc2l0aW9uW2VdfHx7fTtpZih0eXBlb2YgYS5saW5lPT0ibnVtYmVyIiYmYS5saW5lPjAmJnR5cGVvZiBhLmNvbHVtbj09Im51bWJlciImJmEuY29sdW1uPjApcmV0dXJue2xpbmU6YS5saW5lLGNvbHVtbjphLmNvbHVtbixvZmZzZXQ6dHlwZW9mIGEub2Zmc2V0PT0ibnVtYmVyIiYmYS5vZmZzZXQ+LTE/YS5vZmZzZXQ6dm9pZCAwfX19ZnVuY3Rpb24gUnkoZSl7bGV0IHQ9dm5lKGUpLHI9Ym5lKGUpO2lmKHQmJnIpcmV0dXJue3N0YXJ0OnQsZW5kOnJ9fXZhciBibmUsdm5lLFNXdD1sKCgpPT57Ym5lPWtXdCgiZW5kIiksdm5lPWtXdCgic3RhcnQiKX0pO3ZhciB5bmU9bCgoKT0+e1NXdCgpfSk7dmFyIEc2LHduZSxFeWU9bCgoKT0+e0c2PVsiYXJpYURlc2NyaWJlZEJ5IiwiYXJpYUxhYmVsIiwiYXJpYUxhYmVsbGVkQnkiXSx3bmU9e2FuY2VzdG9yczp7dGJvZHk6WyJ0YWJsZSJdLHRkOlsidGFibGUiXSx0aDpbInRhYmxlIl0sdGhlYWQ6WyJ0YWJsZSJdLHRmb290OlsidGFibGUiXSx0cjpbInRhYmxlIl19LGF0dHJpYnV0ZXM6e2E6Wy4uLkc2LCJkYXRhRm9vdG5vdGVCYWNrcmVmIiwiZGF0YUZvb3Rub3RlUmVmIixbImNsYXNzTmFtZSIsImRhdGEtZm9vdG5vdGUtYmFja3JlZiJdLCJocmVmIl0sYmxvY2txdW90ZTpbImNpdGUiXSxjb2RlOltbImNsYXNzTmFtZSIsL15sYW5ndWFnZS0uL11dLGRlbDpbImNpdGUiXSxkaXY6WyJpdGVtU2NvcGUiLCJpdGVtVHlwZSJdLGRsOlsuLi5HNl0saDI6W1siY2xhc3NOYW1lIiwic3Itb25seSJdXSxpbWc6Wy4uLkc2LCJsb25nRGVzYyIsInNyYyJdLGlucHV0OltbImRpc2FibGVkIiwhMF0sWyJ0eXBlIiwiY2hlY2tib3giXV0saW5zOlsiY2l0ZSJdLGxpOltbImNsYXNzTmFtZSIsInRhc2stbGlzdC1pdGVtIl1dLG9sOlsuLi5HNixbImNsYXNzTmFtZSIsImNvbnRhaW5zLXRhc2stbGlzdCJdXSxxOlsiY2l0ZSJdLHNlY3Rpb246WyJkYXRhRm9vdG5vdGVzIixbImNsYXNzTmFtZSIsImZvb3Rub3RlcyJdXSxzb3VyY2U6WyJzcmNTZXQiXSxzdW1tYXJ5OlsuLi5HNl0sdGFibGU6Wy4uLkc2XSx1bDpbLi4uRzYsWyJjbGFzc05hbWUiLCJjb250YWlucy10YXNrLWxpc3QiXV0sIioiOlsiYWJiciIsImFjY2VwdCIsImFjY2VwdENoYXJzZXQiLCJhY2Nlc3NLZXkiLCJhY3Rpb24iLCJhbGlnbiIsImFsdCIsImF4aXMiLCJib3JkZXIiLCJjZWxsUGFkZGluZyIsImNlbGxTcGFjaW5nIiwiY2hhciIsImNoYXJPZmYiLCJjaGFyU2V0IiwiY2hlY2tlZCIsImNsZWFyIiwiY29sU3BhbiIsImNvbG9yIiwiY29scyIsImNvbXBhY3QiLCJjb29yZHMiLCJkYXRlVGltZSIsImRpciIsImVuY1R5cGUiLCJmcmFtZSIsImhTcGFjZSIsImhlYWRlcnMiLCJoZWlnaHQiLCJocmVmTGFuZyIsImh0bWxGb3IiLCJpZCIsImlzTWFwIiwiaXRlbVByb3AiLCJsYWJlbCIsImxhbmciLCJtYXhMZW5ndGgiLCJtZWRpYSIsIm1ldGhvZCIsIm11bHRpcGxlIiwibmFtZSIsIm5vSHJlZiIsIm5vU2hhZGUiLCJub1dyYXAiLCJvcGVuIiwicHJvbXB0IiwicmVhZE9ubHkiLCJyZXYiLCJyb3dTcGFuIiwicm93cyIsInJ1bGVzIiwic2NvcGUiLCJzZWxlY3RlZCIsInNoYXBlIiwic2l6ZSIsInNwYW4iLCJzdGFydCIsInN1bW1hcnkiLCJ0YWJJbmRleCIsInRpdGxlIiwidXNlTWFwIiwidkFsaWduIiwidmFsdWUiLCJ3aWR0aCJdfSxjbG9iYmVyOlsiYXJpYURlc2NyaWJlZEJ5IiwiYXJpYUxhYmVsbGVkQnkiLCJpZCIsIm5hbWUiXSxjbG9iYmVyUHJlZml4OiJ1c2VyLWNvbnRlbnQtIixwcm90b2NvbHM6e2NpdGU6WyJodHRwIiwiaHR0cHMiXSxocmVmOlsiaHR0cCIsImh0dHBzIiwiaXJjIiwiaXJjcyIsIm1haWx0byIsInhtcHAiXSxsb25nRGVzYzpbImh0dHAiLCJodHRwcyJdLHNyYzpbImh0dHAiLCJodHRwcyJdfSxyZXF1aXJlZDp7aW5wdXQ6e2Rpc2FibGVkOiEwLHR5cGU6ImNoZWNrYm94In19LHN0cmlwOlsic2NyaXB0Il0sdGFnTmFtZXM6WyJhIiwiYiIsImJsb2NrcXVvdGUiLCJiciIsImNvZGUiLCJkZCIsImRlbCIsImRldGFpbHMiLCJkaXYiLCJkbCIsImR0IiwiZW0iLCJoMSIsImgyIiwiaDMiLCJoNCIsImg1IiwiaDYiLCJociIsImkiLCJpbWciLCJpbnB1dCIsImlucyIsImtiZCIsImxpIiwib2wiLCJwIiwicGljdHVyZSIsInByZSIsInEiLCJycCIsInJ0IiwicnVieSIsInMiLCJzYW1wIiwic2VjdGlvbiIsInNvdXJjZSIsInNwYW4iLCJzdHJpa2UiLCJzdHJvbmciLCJzdWIiLCJzdW1tYXJ5Iiwic3VwIiwidGFibGUiLCJ0Ym9keSIsInRkIiwidGZvb3QiLCJ0aCIsInRoZWFkIiwidHIiLCJ0dCIsInVsIiwidmFyIl19fSk7ZnVuY3Rpb24gJHllKGUsdCl7bGV0IHI9e3R5cGU6InJvb3QiLGNoaWxkcmVuOltdfSxhPXtzY2hlbWE6dD97Li4ud25lLC4uLnR9OnduZSxzdGFjazpbXX0saT16V3QoYSxlKTtyZXR1cm4gaSYmKEFycmF5LmlzQXJyYXkoaSk/aS5sZW5ndGg9PT0xP3I9aVswXTpyLmNoaWxkcmVuPWk6cj1pKSxyfWZ1bmN0aW9uIHpXdChlLHQpe2lmKHQmJnR5cGVvZiB0PT0ib2JqZWN0Iil7bGV0IHI9dDtzd2l0Y2godHlwZW9mIHIudHlwZT09InN0cmluZyI/ci50eXBlOiIiKXtjYXNlImNvbW1lbnQiOnJldHVybiB0aGEoZSxyKTtjYXNlImRvY3R5cGUiOnJldHVybiByaGEoZSxyKTtjYXNlImVsZW1lbnQiOnJldHVybiBhaGEoZSxyKTtjYXNlInJvb3QiOnJldHVybiBpaGEoZSxyKTtjYXNlInRleHQiOnJldHVybiBvaGEoZSxyKTtkZWZhdWx0On19fWZ1bmN0aW9uIHRoYShlLHQpe2lmKGUuc2NoZW1hLmFsbG93Q29tbWVudHMpe2xldCByPXR5cGVvZiB0LnZhbHVlPT0ic3RyaW5nIj90LnZhbHVlOiIiLGE9ci5pbmRleE9mKCItLT4iKSxvPXt0eXBlOiJjb21tZW50Iix2YWx1ZTphPDA/cjpyLnNsaWNlKDAsYSl9O3JldHVybiBCeShvLHQpLG99fWZ1bmN0aW9uIHJoYShlLHQpe2lmKGUuc2NoZW1hLmFsbG93RG9jdHlwZXMpe2xldCByPXt0eXBlOiJkb2N0eXBlIn07cmV0dXJuIEJ5KHIsdCkscn19ZnVuY3Rpb24gYWhhKGUsdCl7bGV0IHI9dHlwZW9mIHQudGFnTmFtZT09InN0cmluZyI/dC50YWdOYW1lOiIiO2Uuc3RhY2sucHVzaChyKTtsZXQgYT1DV3QoZSx0LmNoaWxkcmVuKSxpPW5oYShlLHQucHJvcGVydGllcyk7ZS5zdGFjay5wb3AoKTtsZXQgbz0hMTtpZihyJiZyIT09IioiJiYoIWUuc2NoZW1hLnRhZ05hbWVzfHxlLnNjaGVtYS50YWdOYW1lcy5pbmNsdWRlcyhyKSkmJihvPSEwLGUuc2NoZW1hLmFuY2VzdG9ycyYmcTQuY2FsbChlLnNjaGVtYS5hbmNlc3RvcnMscikpKXtsZXQgcz1lLnNjaGVtYS5hbmNlc3RvcnNbcl0sYz0tMTtmb3Iobz0hMTsrK2M8cy5sZW5ndGg7KWUuc3RhY2suaW5jbHVkZXMoc1tjXSkmJihvPSEwKX1pZighbylyZXR1cm4gZS5zY2hlbWEuc3RyaXAmJiFlLnNjaGVtYS5zdHJpcC5pbmNsdWRlcyhyKT9hOnZvaWQgMDtsZXQgbj17dHlwZToiZWxlbWVudCIsdGFnTmFtZTpyLHByb3BlcnRpZXM6aSxjaGlsZHJlbjphfTtyZXR1cm4gQnkobix0KSxufWZ1bmN0aW9uIGloYShlLHQpe2xldCBhPXt0eXBlOiJyb290IixjaGlsZHJlbjpDV3QoZSx0LmNoaWxkcmVuKX07cmV0dXJuIEJ5KGEsdCksYX1mdW5jdGlvbiBvaGEoZSx0KXtsZXQgYT17dHlwZToidGV4dCIsdmFsdWU6dHlwZW9mIHQudmFsdWU9PSJzdHJpbmciP3QudmFsdWU6IiJ9O3JldHVybiBCeShhLHQpLGF9ZnVuY3Rpb24gQ1d0KGUsdCl7bGV0IHI9W107aWYoQXJyYXkuaXNBcnJheSh0KSl7bGV0IGE9dCxpPS0xO2Zvcig7KytpPGEubGVuZ3RoOyl7bGV0IG89eld0KGUsYVtpXSk7byYmKEFycmF5LmlzQXJyYXkobyk/ci5wdXNoKC4uLm8pOnIucHVzaChvKSl9fXJldHVybiByfWZ1bmN0aW9uIG5oYShlLHQpe2xldCByPWUuc3RhY2tbZS5zdGFjay5sZW5ndGgtMV0sYT1lLnNjaGVtYS5hdHRyaWJ1dGVzLGk9ZS5zY2hlbWEucmVxdWlyZWQsbz1hJiZxNC5jYWxsKGEscik/YVtyXTp2b2lkIDAsbj1hJiZxNC5jYWxsKGEsIioiKT9hWyIqIl06dm9pZCAwLHM9dCYmdHlwZW9mIHQ9PSJvYmplY3QiP3Q6e30sYz17fSxkO2ZvcihkIGluIHMpaWYocTQuY2FsbChzLGQpKXtsZXQgZj1zW2RdLHU9X1d0KGUsTFd0KG8sZCksZCxmKTt1PT1udWxsJiYodT1fV3QoZSxMV3QobixkKSxkLGYpKSx1IT1udWxsJiYoY1tkXT11KX1pZihpJiZxNC5jYWxsKGkscikpe2xldCBmPWlbcl07Zm9yKGQgaW4gZilxNC5jYWxsKGYsZCkmJiFxNC5jYWxsKGMsZCkmJihjW2RdPWZbZF0pfXJldHVybiBjfWZ1bmN0aW9uIF9XdChlLHQscixhKXtyZXR1cm4gdD9BcnJheS5pc0FycmF5KGEpP3NoYShlLHQscixhKTpUV3QoZSx0LHIsYSk6dm9pZCAwfWZ1bmN0aW9uIHNoYShlLHQscixhKXtsZXQgaT0tMSxvPVtdO2Zvcig7KytpPGEubGVuZ3RoOyl7bGV0IG49VFd0KGUsdCxyLGFbaV0pOyh0eXBlb2Ygbj09Im51bWJlciJ8fHR5cGVvZiBuPT0ic3RyaW5nIikmJm8ucHVzaChuKX1yZXR1cm4gb31mdW5jdGlvbiBUV3QoZSx0LHIsYSl7aWYoISh0eXBlb2YgYSE9ImJvb2xlYW4iJiZ0eXBlb2YgYSE9Im51bWJlciImJnR5cGVvZiBhIT0ic3RyaW5nIikmJmxoYShlLHIsYSkpe2lmKHR5cGVvZiB0PT0ib2JqZWN0IiYmdC5sZW5ndGg+MSl7bGV0IGk9ITEsbz0wO2Zvcig7KytvPHQubGVuZ3RoOyl7bGV0IG49dFtvXTtpZihuJiZ0eXBlb2Ygbj09Im9iamVjdCImJiJmbGFncyJpbiBuKXtpZihuLnRlc3QoU3RyaW5nKGEpKSl7aT0hMDticmVha319ZWxzZSBpZihuPT09YSl7aT0hMDticmVha319aWYoIWkpcmV0dXJufXJldHVybiBlLnNjaGVtYS5jbG9iYmVyJiZlLnNjaGVtYS5jbG9iYmVyUHJlZml4JiZlLnNjaGVtYS5jbG9iYmVyLmluY2x1ZGVzKHIpP2Uuc2NoZW1hLmNsb2JiZXJQcmVmaXgrYTphfX1mdW5jdGlvbiBsaGEoZSx0LHIpe2xldCBhPWUuc2NoZW1hLnByb3RvY29scyYmcTQuY2FsbChlLnNjaGVtYS5wcm90b2NvbHMsdCk/ZS5zY2hlbWEucHJvdG9jb2xzW3RdOnZvaWQgMDtpZighYXx8YS5sZW5ndGg9PT0wKXJldHVybiEwO2xldCBpPVN0cmluZyhyKSxvPWkuaW5kZXhPZigiOiIpLG49aS5pbmRleE9mKCI/Iikscz1pLmluZGV4T2YoIiMiKSxjPWkuaW5kZXhPZigiLyIpO2lmKG88MHx8Yz4tMSYmbz5jfHxuPi0xJiZvPm58fHM+LTEmJm8+cylyZXR1cm4hMDtsZXQgZD0tMTtmb3IoOysrZDxhLmxlbmd0aDspe2xldCBmPWFbZF07aWYobz09PWYubGVuZ3RoJiZpLnNsaWNlKDAsZi5sZW5ndGgpPT09ZilyZXR1cm4hMH1yZXR1cm4hMX1mdW5jdGlvbiBCeShlLHQpe2xldCByPVJ5KHQpO3QuZGF0YSYmKGUuZGF0YT1INCh0LmRhdGEpKSxyJiYoZS5wb3NpdGlvbj1yKX1mdW5jdGlvbiBMV3QoZSx0KXtsZXQgcixhPS0xO2lmKGUpZm9yKDsrK2E8ZS5sZW5ndGg7KXtsZXQgaT1lW2FdLG89dHlwZW9mIGk9PSJzdHJpbmciP2k6aVswXTtpZihvPT09dClyZXR1cm4gaTtvPT09ImRhdGEqIiYmKHI9aSl9aWYodC5sZW5ndGg+NCYmdC5zbGljZSgwLDQpLnRvTG93ZXJDYXNlKCk9PT0iZGF0YSIpcmV0dXJuIHJ9dmFyIHE0LERXdD1sKCgpPT57eG5lKCk7eW5lKCk7RXllKCk7cTQ9e30uaGFzT3duUHJvcGVydHl9KTt2YXIgQVd0PWwoKCk9PntEV3QoKTtFeWUoKX0pO2Z1bmN0aW9uIEVXdChlLHQpe2xldCByPXt0eXBlOiJlbGVtZW50Iix0YWdOYW1lOiJibG9ja3F1b3RlIixwcm9wZXJ0aWVzOnt9LGNoaWxkcmVuOmUud3JhcChlLmFsbCh0KSwhMCl9O3JldHVybiBlLnBhdGNoKHQsciksZS5hcHBseURhdGEodCxyKX12YXIgJFd0PWwoKCk9Pnt9KTtmdW5jdGlvbiBQV3QoZSx0KXtsZXQgcj17dHlwZToiZWxlbWVudCIsdGFnTmFtZToiYnIiLHByb3BlcnRpZXM6e30sY2hpbGRyZW46W119O3JldHVybiBlLnBhdGNoKHQsciksW2UuYXBwbHlEYXRhKHQscikse3R5cGU6InRleHQiLHZhbHVlOmAKYH1dfXZhciBJV3Q9bCgoKT0+e30pO2Z1bmN0aW9uIE5XdChlLHQpe2xldCByPXQudmFsdWU/dC52YWx1ZStgCmA6IiIsYT17fSxpPXQubGFuZz90Lmxhbmcuc3BsaXQoL1xzKy8pOltdO2kubGVuZ3RoPjAmJihhLmNsYXNzTmFtZT1bImxhbmd1YWdlLSIraVswXV0pO2xldCBvPXt0eXBlOiJlbGVtZW50Iix0YWdOYW1lOiJjb2RlIixwcm9wZXJ0aWVzOmEsY2hpbGRyZW46W3t0eXBlOiJ0ZXh0Iix2YWx1ZTpyfV19O3JldHVybiB0Lm1ldGEmJihvLmRhdGE9e21ldGE6dC5tZXRhfSksZS5wYXRjaCh0LG8pLG89ZS5hcHBseURhdGEodCxvKSxvPXt0eXBlOiJlbGVtZW50Iix0YWdOYW1lOiJwcmUiLHByb3BlcnRpZXM6e30sY2hpbGRyZW46W29dfSxlLnBhdGNoKHQsbyksb312YXIgRld0PWwoKCk9Pnt9KTtmdW5jdGlvbiBPV3QoZSx0KXtsZXQgcj17dHlwZToiZWxlbWVudCIsdGFnTmFtZToiZGVsIixwcm9wZXJ0aWVzOnt9LGNoaWxkcmVuOmUuYWxsKHQpfTtyZXR1cm4gZS5wYXRjaCh0LHIpLGUuYXBwbHlEYXRhKHQscil9dmFyIFJXdD1sKCgpPT57fSk7ZnVuY3Rpb24gQld0KGUsdCl7bGV0IHI9e3R5cGU6ImVsZW1lbnQiLHRhZ05hbWU6ImVtIixwcm9wZXJ0aWVzOnt9LGNoaWxkcmVuOmUuYWxsKHQpfTtyZXR1cm4gZS5wYXRjaCh0LHIpLGUuYXBwbHlEYXRhKHQscil9dmFyIEhXdD1sKCgpPT57fSk7ZnVuY3Rpb24gcVd0KGUsdCl7bGV0IHI9dHlwZW9mIGUub3B0aW9ucy5jbG9iYmVyUHJlZml4PT0ic3RyaW5nIj9lLm9wdGlvbnMuY2xvYmJlclByZWZpeDoidXNlci1jb250ZW50LSIsYT1TdHJpbmcodC5pZGVudGlmaWVyKS50b1VwcGVyQ2FzZSgpLGk9YW4oYS50b0xvd2VyQ2FzZSgpKSxvPWUuZm9vdG5vdGVPcmRlci5pbmRleE9mKGEpLG4scz1lLmZvb3Rub3RlQ291bnRzLmdldChhKTtzPT09dm9pZCAwPyhzPTAsZS5mb290bm90ZU9yZGVyLnB1c2goYSksbj1lLmZvb3Rub3RlT3JkZXIubGVuZ3RoKTpuPW8rMSxzKz0xLGUuZm9vdG5vdGVDb3VudHMuc2V0KGEscyk7bGV0IGM9e3R5cGU6ImVsZW1lbnQiLHRhZ05hbWU6ImEiLHByb3BlcnRpZXM6e2hyZWY6IiMiK3IrImZuLSIraSxpZDpyKyJmbnJlZi0iK2krKHM+MT8iLSIrczoiIiksZGF0YUZvb3Rub3RlUmVmOiEwLGFyaWFEZXNjcmliZWRCeTpbImZvb3Rub3RlLWxhYmVsIl19LGNoaWxkcmVuOlt7dHlwZToidGV4dCIsdmFsdWU6U3RyaW5nKG4pfV19O2UucGF0Y2godCxjKTtsZXQgZD17dHlwZToiZWxlbWVudCIsdGFnTmFtZToic3VwIixwcm9wZXJ0aWVzOnt9LGNoaWxkcmVuOltjXX07cmV0dXJuIGUucGF0Y2godCxkKSxlLmFwcGx5RGF0YSh0LGQpfXZhciBqV3Q9bCgoKT0+e3JsKCl9KTtmdW5jdGlvbiBWV3QoZSx0KXtsZXQgcj17dHlwZToiZWxlbWVudCIsdGFnTmFtZToiaCIrdC5kZXB0aCxwcm9wZXJ0aWVzOnt9LGNoaWxkcmVuOmUuYWxsKHQpfTtyZXR1cm4gZS5wYXRjaCh0LHIpLGUuYXBwbHlEYXRhKHQscil9dmFyIFVXdD1sKCgpPT57fSk7ZnVuY3Rpb24gV1d0KGUsdCl7aWYoZS5vcHRpb25zLmFsbG93RGFuZ2Vyb3VzSHRtbCl7bGV0IHI9e3R5cGU6InJhdyIsdmFsdWU6dC52YWx1ZX07cmV0dXJuIGUucGF0Y2godCxyKSxlLmFwcGx5RGF0YSh0LHIpfX12YXIgR1d0PWwoKCk9Pnt9KTtmdW5jdGlvbiBNbmUoZSx0KXtsZXQgcj10LnJlZmVyZW5jZVR5cGUsYT0iXSI7aWYocj09PSJjb2xsYXBzZWQiP2ErPSJbXSI6cj09PSJmdWxsIiYmKGErPSJbIisodC5sYWJlbHx8dC5pZGVudGlmaWVyKSsiXSIpLHQudHlwZT09PSJpbWFnZVJlZmVyZW5jZSIpcmV0dXJuW3t0eXBlOiJ0ZXh0Iix2YWx1ZToiIVsiK3QuYWx0K2F9XTtsZXQgaT1lLmFsbCh0KSxvPWlbMF07byYmby50eXBlPT09InRleHQiP28udmFsdWU9IlsiK28udmFsdWU6aS51bnNoaWZ0KHt0eXBlOiJ0ZXh0Iix2YWx1ZToiWyJ9KTtsZXQgbj1pW2kubGVuZ3RoLTFdO3JldHVybiBuJiZuLnR5cGU9PT0idGV4dCI/bi52YWx1ZSs9YTppLnB1c2goe3R5cGU6InRleHQiLHZhbHVlOmF9KSxpfXZhciBQeWU9bCgoKT0+e30pO2Z1bmN0aW9uIFlXdChlLHQpe2xldCByPVN0cmluZyh0LmlkZW50aWZpZXIpLnRvVXBwZXJDYXNlKCksYT1lLmRlZmluaXRpb25CeUlkLmdldChyKTtpZighYSlyZXR1cm4gTW5lKGUsdCk7bGV0IGk9e3NyYzphbihhLnVybHx8IiIpLGFsdDp0LmFsdH07YS50aXRsZSE9PW51bGwmJmEudGl0bGUhPT12b2lkIDAmJihpLnRpdGxlPWEudGl0bGUpO2xldCBvPXt0eXBlOiJlbGVtZW50Iix0YWdOYW1lOiJpbWciLHByb3BlcnRpZXM6aSxjaGlsZHJlbjpbXX07cmV0dXJuIGUucGF0Y2godCxvKSxlLmFwcGx5RGF0YSh0LG8pfXZhciBaV3Q9bCgoKT0+e3JsKCk7UHllKCl9KTtmdW5jdGlvbiBYV3QoZSx0KXtsZXQgcj17c3JjOmFuKHQudXJsKX07dC5hbHQhPT1udWxsJiZ0LmFsdCE9PXZvaWQgMCYmKHIuYWx0PXQuYWx0KSx0LnRpdGxlIT09bnVsbCYmdC50aXRsZSE9PXZvaWQgMCYmKHIudGl0bGU9dC50aXRsZSk7bGV0IGE9e3R5cGU6ImVsZW1lbnQiLHRhZ05hbWU6ImltZyIscHJvcGVydGllczpyLGNoaWxkcmVuOltdfTtyZXR1cm4gZS5wYXRjaCh0LGEpLGUuYXBwbHlEYXRhKHQsYSl9dmFyIFFXdD1sKCgpPT57cmwoKX0pO2Z1bmN0aW9uIEtXdChlLHQpe2xldCByPXt0eXBlOiJ0ZXh0Iix2YWx1ZTp0LnZhbHVlLnJlcGxhY2UoL1xyP1xufFxyL2csIiAiKX07ZS5wYXRjaCh0LHIpO2xldCBhPXt0eXBlOiJlbGVtZW50Iix0YWdOYW1lOiJjb2RlIixwcm9wZXJ0aWVzOnt9LGNoaWxkcmVuOltyXX07cmV0dXJuIGUucGF0Y2godCxhKSxlLmFwcGx5RGF0YSh0LGEpfXZhciBKV3Q9bCgoKT0+e30pO2Z1bmN0aW9uIGVHdChlLHQpe2xldCByPVN0cmluZyh0LmlkZW50aWZpZXIpLnRvVXBwZXJDYXNlKCksYT1lLmRlZmluaXRpb25CeUlkLmdldChyKTtpZighYSlyZXR1cm4gTW5lKGUsdCk7bGV0IGk9e2hyZWY6YW4oYS51cmx8fCIiKX07YS50aXRsZSE9PW51bGwmJmEudGl0bGUhPT12b2lkIDAmJihpLnRpdGxlPWEudGl0bGUpO2xldCBvPXt0eXBlOiJlbGVtZW50Iix0YWdOYW1lOiJhIixwcm9wZXJ0aWVzOmksY2hpbGRyZW46ZS5hbGwodCl9O3JldHVybiBlLnBhdGNoKHQsbyksZS5hcHBseURhdGEodCxvKX12YXIgdEd0PWwoKCk9PntybCgpO1B5ZSgpfSk7ZnVuY3Rpb24gckd0KGUsdCl7bGV0IHI9e2hyZWY6YW4odC51cmwpfTt0LnRpdGxlIT09bnVsbCYmdC50aXRsZSE9PXZvaWQgMCYmKHIudGl0bGU9dC50aXRsZSk7bGV0IGE9e3R5cGU6ImVsZW1lbnQiLHRhZ05hbWU6ImEiLHByb3BlcnRpZXM6cixjaGlsZHJlbjplLmFsbCh0KX07cmV0dXJuIGUucGF0Y2godCxhKSxlLmFwcGx5RGF0YSh0LGEpfXZhciBhR3Q9bCgoKT0+e3JsKCl9KTtmdW5jdGlvbiBvR3QoZSx0LHIpe2xldCBhPWUuYWxsKHQpLGk9cj9jaGEocik6aUd0KHQpLG89e30sbj1bXTtpZih0eXBlb2YgdC5jaGVja2VkPT0iYm9vbGVhbiIpe2xldCBmPWFbMF0sdTtmJiZmLnR5cGU9PT0iZWxlbWVudCImJmYudGFnTmFtZT09PSJwIj91PWY6KHU9e3R5cGU6ImVsZW1lbnQiLHRhZ05hbWU6InAiLHByb3BlcnRpZXM6e30sY2hpbGRyZW46W119LGEudW5zaGlmdCh1KSksdS5jaGlsZHJlbi5sZW5ndGg+MCYmdS5jaGlsZHJlbi51bnNoaWZ0KHt0eXBlOiJ0ZXh0Iix2YWx1ZToiICJ9KSx1LmNoaWxkcmVuLnVuc2hpZnQoe3R5cGU6ImVsZW1lbnQiLHRhZ05hbWU6ImlucHV0Iixwcm9wZXJ0aWVzOnt0eXBlOiJjaGVja2JveCIsY2hlY2tlZDp0LmNoZWNrZWQsZGlzYWJsZWQ6ITB9LGNoaWxkcmVuOltdfSksby5jbGFzc05hbWU9WyJ0YXNrLWxpc3QtaXRlbSJdfWxldCBzPS0xO2Zvcig7KytzPGEubGVuZ3RoOyl7bGV0IGY9YVtzXTsoaXx8cyE9PTB8fGYudHlwZSE9PSJlbGVtZW50Inx8Zi50YWdOYW1lIT09InAiKSYmbi5wdXNoKHt0eXBlOiJ0ZXh0Iix2YWx1ZTpgCmB9KSxmLnR5cGU9PT0iZWxlbWVudCImJmYudGFnTmFtZT09PSJwIiYmIWk/bi5wdXNoKC4uLmYuY2hpbGRyZW4pOm4ucHVzaChmKX1sZXQgYz1hW2EubGVuZ3RoLTFdO2MmJihpfHxjLnR5cGUhPT0iZWxlbWVudCJ8fGMudGFnTmFtZSE9PSJwIikmJm4ucHVzaCh7dHlwZToidGV4dCIsdmFsdWU6YApgfSk7bGV0IGQ9e3R5cGU6ImVsZW1lbnQiLHRhZ05hbWU6ImxpIixwcm9wZXJ0aWVzOm8sY2hpbGRyZW46bn07cmV0dXJuIGUucGF0Y2godCxkKSxlLmFwcGx5RGF0YSh0LGQpfWZ1bmN0aW9uIGNoYShlKXtsZXQgdD0hMTtpZihlLnR5cGU9PT0ibGlzdCIpe3Q9ZS5zcHJlYWR8fCExO2xldCByPWUuY2hpbGRyZW4sYT0tMTtmb3IoOyF0JiYrK2E8ci5sZW5ndGg7KXQ9aUd0KHJbYV0pfXJldHVybiB0fWZ1bmN0aW9uIGlHdChlKXtsZXQgdD1lLnNwcmVhZDtyZXR1cm4gdD8/ZS5jaGlsZHJlbi5sZW5ndGg+MX12YXIgbkd0PWwoKCk9Pnt9KTtmdW5jdGlvbiBzR3QoZSx0KXtsZXQgcj17fSxhPWUuYWxsKHQpLGk9LTE7Zm9yKHR5cGVvZiB0LnN0YXJ0PT0ibnVtYmVyIiYmdC5zdGFydCE9PTEmJihyLnN0YXJ0PXQuc3RhcnQpOysraTxhLmxlbmd0aDspe2xldCBuPWFbaV07aWYobi50eXBlPT09ImVsZW1lbnQiJiZuLnRhZ05hbWU9PT0ibGkiJiZuLnByb3BlcnRpZXMmJkFycmF5LmlzQXJyYXkobi5wcm9wZXJ0aWVzLmNsYXNzTmFtZSkmJm4ucHJvcGVydGllcy5jbGFzc05hbWUuaW5jbHVkZXMoInRhc2stbGlzdC1pdGVtIikpe3IuY2xhc3NOYW1lPVsiY29udGFpbnMtdGFzay1saXN0Il07YnJlYWt9fWxldCBvPXt0eXBlOiJlbGVtZW50Iix0YWdOYW1lOnQub3JkZXJlZD8ib2wiOiJ1bCIscHJvcGVydGllczpyLGNoaWxkcmVuOmUud3JhcChhLCEwKX07cmV0dXJuIGUucGF0Y2godCxvKSxlLmFwcGx5RGF0YSh0LG8pfXZhciBsR3Q9bCgoKT0+e30pO2Z1bmN0aW9uIGNHdChlLHQpe2xldCByPXt0eXBlOiJlbGVtZW50Iix0YWdOYW1lOiJwIixwcm9wZXJ0aWVzOnt9LGNoaWxkcmVuOmUuYWxsKHQpfTtyZXR1cm4gZS5wYXRjaCh0LHIpLGUuYXBwbHlEYXRhKHQscil9dmFyIGRHdD1sKCgpPT57fSk7ZnVuY3Rpb24gdUd0KGUsdCl7bGV0IHI9e3R5cGU6InJvb3QiLGNoaWxkcmVuOmUud3JhcChlLmFsbCh0KSl9O3JldHVybiBlLnBhdGNoKHQsciksZS5hcHBseURhdGEodCxyKX12YXIgZkd0PWwoKCk9Pnt9KTtmdW5jdGlvbiBwR3QoZSx0KXtsZXQgcj17dHlwZToiZWxlbWVudCIsdGFnTmFtZToic3Ryb25nIixwcm9wZXJ0aWVzOnt9LGNoaWxkcmVuOmUuYWxsKHQpfTtyZXR1cm4gZS5wYXRjaCh0LHIpLGUuYXBwbHlEYXRhKHQscil9dmFyIGhHdD1sKCgpPT57fSk7ZnVuY3Rpb24gbUd0KGUsdCl7bGV0IHI9ZS5hbGwodCksYT1yLnNoaWZ0KCksaT1bXTtpZihhKXtsZXQgbj17dHlwZToiZWxlbWVudCIsdGFnTmFtZToidGhlYWQiLHByb3BlcnRpZXM6e30sY2hpbGRyZW46ZS53cmFwKFthXSwhMCl9O2UucGF0Y2godC5jaGlsZHJlblswXSxuKSxpLnB1c2gobil9aWYoci5sZW5ndGg+MCl7bGV0IG49e3R5cGU6ImVsZW1lbnQiLHRhZ05hbWU6InRib2R5Iixwcm9wZXJ0aWVzOnt9LGNoaWxkcmVuOmUud3JhcChyLCEwKX0scz12bmUodC5jaGlsZHJlblsxXSksYz1ibmUodC5jaGlsZHJlblt0LmNoaWxkcmVuLmxlbmd0aC0xXSk7cyYmYyYmKG4ucG9zaXRpb249e3N0YXJ0OnMsZW5kOmN9KSxpLnB1c2gobil9bGV0IG89e3R5cGU6ImVsZW1lbnQiLHRhZ05hbWU6InRhYmxlIixwcm9wZXJ0aWVzOnt9LGNoaWxkcmVuOmUud3JhcChpLCEwKX07cmV0dXJuIGUucGF0Y2godCxvKSxlLmFwcGx5RGF0YSh0LG8pfXZhciBnR3Q9bCgoKT0+e3luZSgpfSk7ZnVuY3Rpb24geEd0KGUsdCxyKXtsZXQgYT1yP3IuY2hpbGRyZW46dm9pZCAwLG89KGE/YS5pbmRleE9mKHQpOjEpPT09MD8idGgiOiJ0ZCIsbj1yJiZyLnR5cGU9PT0idGFibGUiP3IuYWxpZ246dm9pZCAwLHM9bj9uLmxlbmd0aDp0LmNoaWxkcmVuLmxlbmd0aCxjPS0xLGQ9W107Zm9yKDsrK2M8czspe2xldCB1PXQuY2hpbGRyZW5bY10scD17fSxoPW4/bltjXTp2b2lkIDA7aCYmKHAuYWxpZ249aCk7bGV0IGI9e3R5cGU6ImVsZW1lbnQiLHRhZ05hbWU6byxwcm9wZXJ0aWVzOnAsY2hpbGRyZW46W119O3UmJihiLmNoaWxkcmVuPWUuYWxsKHUpLGUucGF0Y2godSxiKSxiPWUuYXBwbHlEYXRhKHUsYikpLGQucHVzaChiKX1sZXQgZj17dHlwZToiZWxlbWVudCIsdGFnTmFtZToidHIiLHByb3BlcnRpZXM6e30sY2hpbGRyZW46ZS53cmFwKGQsITApfTtyZXR1cm4gZS5wYXRjaCh0LGYpLGUuYXBwbHlEYXRhKHQsZil9dmFyIGJHdD1sKCgpPT57fSk7ZnVuY3Rpb24gdkd0KGUsdCl7bGV0IHI9e3R5cGU6ImVsZW1lbnQiLHRhZ05hbWU6InRkIixwcm9wZXJ0aWVzOnt9LGNoaWxkcmVuOmUuYWxsKHQpfTtyZXR1cm4gZS5wYXRjaCh0LHIpLGUuYXBwbHlEYXRhKHQscil9dmFyIHlHdD1sKCgpPT57fSk7ZnVuY3Rpb24gTUd0KGUpe2xldCB0PVN0cmluZyhlKSxyPS9ccj9cbnxcci9nLGE9ci5leGVjKHQpLGk9MCxvPVtdO2Zvcig7YTspby5wdXNoKHdHdCh0LnNsaWNlKGksYS5pbmRleCksaT4wLCEwKSxhWzBdKSxpPWEuaW5kZXgrYVswXS5sZW5ndGgsYT1yLmV4ZWModCk7cmV0dXJuIG8ucHVzaCh3R3QodC5zbGljZShpKSxpPjAsITEpKSxvLmpvaW4oIiIpfWZ1bmN0aW9uIHdHdChlLHQscil7bGV0IGE9MCxpPWUubGVuZ3RoO2lmKHQpe2xldCBvPWUuY29kZVBvaW50QXQoYSk7Zm9yKDtvPT09OXx8bz09PTMyOylhKyssbz1lLmNvZGVQb2ludEF0KGEpfWlmKHIpe2xldCBvPWUuY29kZVBvaW50QXQoaS0xKTtmb3IoO289PT05fHxvPT09MzI7KWktLSxvPWUuY29kZVBvaW50QXQoaS0xKX1yZXR1cm4gaT5hP2Uuc2xpY2UoYSxpKToiIn12YXIgaTcxLG83MSxrR3Q9bCgoKT0+e2k3MT05LG83MT0zMn0pO2Z1bmN0aW9uIFNHdChlLHQpe2xldCByPXt0eXBlOiJ0ZXh0Iix2YWx1ZTpNR3QoU3RyaW5nKHQudmFsdWUpKX07cmV0dXJuIGUucGF0Y2godCxyKSxlLmFwcGx5RGF0YSh0LHIpfXZhciB6R3Q9bCgoKT0+e2tHdCgpfSk7ZnVuY3Rpb24gQ0d0KGUsdCl7bGV0IHI9e3R5cGU6ImVsZW1lbnQiLHRhZ05hbWU6ImhyIixwcm9wZXJ0aWVzOnt9LGNoaWxkcmVuOltdfTtyZXR1cm4gZS5wYXRjaCh0LHIpLGUuYXBwbHlEYXRhKHQscil9dmFyIF9HdD1sKCgpPT57fSk7ZnVuY3Rpb24ga25lKCl7fXZhciBJeWUsTnllPWwoKCk9PnskV3QoKTtJV3QoKTtGV3QoKTtSV3QoKTtIV3QoKTtqV3QoKTtVV3QoKTtHV3QoKTtaV3QoKTtRV3QoKTtKV3QoKTt0R3QoKTthR3QoKTtuR3QoKTtsR3QoKTtkR3QoKTtmR3QoKTtoR3QoKTtnR3QoKTtiR3QoKTt5R3QoKTt6R3QoKTtfR3QoKTtJeWU9e2Jsb2NrcXVvdGU6RVd0LGJyZWFrOlBXdCxjb2RlOk5XdCxkZWxldGU6T1d0LGVtcGhhc2lzOkJXdCxmb290bm90ZVJlZmVyZW5jZTpxV3QsaGVhZGluZzpWV3QsaHRtbDpXV3QsaW1hZ2VSZWZlcmVuY2U6WVd0LGltYWdlOlhXdCxpbmxpbmVDb2RlOktXdCxsaW5rUmVmZXJlbmNlOmVHdCxsaW5rOnJHdCxsaXN0SXRlbTpvR3QsbGlzdDpzR3QscGFyYWdyYXBoOmNHdCxyb290OnVHdCxzdHJvbmc6cEd0LHRhYmxlOm1HdCx0YWJsZUNlbGw6dkd0LHRhYmxlUm93OnhHdCx0ZXh0OlNHdCx0aGVtYXRpY0JyZWFrOkNHdCx0b21sOmtuZSx5YW1sOmtuZSxkZWZpbml0aW9uOmtuZSxmb290bm90ZURlZmluaXRpb246a25lfX0pO2Z1bmN0aW9uIFRHdChlLHQpe2xldCByPVt7dHlwZToidGV4dCIsdmFsdWU6Ilx1MjFBOSJ9XTtyZXR1cm4gdD4xJiZyLnB1c2goe3R5cGU6ImVsZW1lbnQiLHRhZ05hbWU6InN1cCIscHJvcGVydGllczp7fSxjaGlsZHJlbjpbe3R5cGU6InRleHQiLHZhbHVlOlN0cmluZyh0KX1dfSkscn1mdW5jdGlvbiBMR3QoZSx0KXtyZXR1cm4iQmFjayB0byByZWZlcmVuY2UgIisoZSsxKSsodD4xPyItIit0OiIiKX1mdW5jdGlvbiBER3QoZSl7bGV0IHQ9dHlwZW9mIGUub3B0aW9ucy5jbG9iYmVyUHJlZml4PT0ic3RyaW5nIj9lLm9wdGlvbnMuY2xvYmJlclByZWZpeDoidXNlci1jb250ZW50LSIscj1lLm9wdGlvbnMuZm9vdG5vdGVCYWNrQ29udGVudHx8VEd0LGE9ZS5vcHRpb25zLmZvb3Rub3RlQmFja0xhYmVsfHxMR3QsaT1lLm9wdGlvbnMuZm9vdG5vdGVMYWJlbHx8IkZvb3Rub3RlcyIsbz1lLm9wdGlvbnMuZm9vdG5vdGVMYWJlbFRhZ05hbWV8fCJoMiIsbj1lLm9wdGlvbnMuZm9vdG5vdGVMYWJlbFByb3BlcnRpZXN8fHtjbGFzc05hbWU6WyJzci1vbmx5Il19LHM9W10sYz0tMTtmb3IoOysrYzxlLmZvb3Rub3RlT3JkZXIubGVuZ3RoOyl7bGV0IGQ9ZS5mb290bm90ZUJ5SWQuZ2V0KGUuZm9vdG5vdGVPcmRlcltjXSk7aWYoIWQpY29udGludWU7bGV0IGY9ZS5hbGwoZCksdT1TdHJpbmcoZC5pZGVudGlmaWVyKS50b1VwcGVyQ2FzZSgpLHA9YW4odS50b0xvd2VyQ2FzZSgpKSxoPTAsYj1bXSx4PWUuZm9vdG5vdGVDb3VudHMuZ2V0KHUpO2Zvcig7eCE9PXZvaWQgMCYmKytoPD14Oyl7Yi5sZW5ndGg+MCYmYi5wdXNoKHt0eXBlOiJ0ZXh0Iix2YWx1ZToiICJ9KTtsZXQgdz10eXBlb2Ygcj09InN0cmluZyI/cjpyKGMsaCk7dHlwZW9mIHc9PSJzdHJpbmciJiYodz17dHlwZToidGV4dCIsdmFsdWU6d30pLGIucHVzaCh7dHlwZToiZWxlbWVudCIsdGFnTmFtZToiYSIscHJvcGVydGllczp7aHJlZjoiIyIrdCsiZm5yZWYtIitwKyhoPjE/Ii0iK2g6IiIpLGRhdGFGb290bm90ZUJhY2tyZWY6IiIsYXJpYUxhYmVsOnR5cGVvZiBhPT0ic3RyaW5nIj9hOmEoYyxoKSxjbGFzc05hbWU6WyJkYXRhLWZvb3Rub3RlLWJhY2tyZWYiXX0sY2hpbGRyZW46QXJyYXkuaXNBcnJheSh3KT93Olt3XX0pfWxldCBnPWZbZi5sZW5ndGgtMV07aWYoZyYmZy50eXBlPT09ImVsZW1lbnQiJiZnLnRhZ05hbWU9PT0icCIpe2xldCB3PWcuY2hpbGRyZW5bZy5jaGlsZHJlbi5sZW5ndGgtMV07dyYmdy50eXBlPT09InRleHQiP3cudmFsdWUrPSIgIjpnLmNoaWxkcmVuLnB1c2goe3R5cGU6InRleHQiLHZhbHVlOiIgIn0pLGcuY2hpbGRyZW4ucHVzaCguLi5iKX1lbHNlIGYucHVzaCguLi5iKTtsZXQgdj17dHlwZToiZWxlbWVudCIsdGFnTmFtZToibGkiLHByb3BlcnRpZXM6e2lkOnQrImZuLSIrcH0sY2hpbGRyZW46ZS53cmFwKGYsITApfTtlLnBhdGNoKGQsdikscy5wdXNoKHYpfWlmKHMubGVuZ3RoIT09MClyZXR1cm57dHlwZToiZWxlbWVudCIsdGFnTmFtZToic2VjdGlvbiIscHJvcGVydGllczp7ZGF0YUZvb3Rub3RlczohMCxjbGFzc05hbWU6WyJmb290bm90ZXMiXX0sY2hpbGRyZW46W3t0eXBlOiJlbGVtZW50Iix0YWdOYW1lOm8scHJvcGVydGllczp7Li4uSDQobiksaWQ6ImZvb3Rub3RlLWxhYmVsIn0sY2hpbGRyZW46W3t0eXBlOiJ0ZXh0Iix2YWx1ZTppfV19LHt0eXBlOiJ0ZXh0Iix2YWx1ZTpgCmB9LHt0eXBlOiJlbGVtZW50Iix0YWdOYW1lOiJvbCIscHJvcGVydGllczp7fSxjaGlsZHJlbjplLndyYXAocywhMCl9LHt0eXBlOiJ0ZXh0Iix2YWx1ZTpgCmB9XX19dmFyIEZ5ZT1sKCgpPT57eG5lKCk7cmwoKX0pO2Z1bmN0aW9uIEVHdChlLHQpe2xldCByPXR8fGRoYSxhPW5ldyBNYXAsaT1uZXcgTWFwLG89bmV3IE1hcCxuPXsuLi5JeWUsLi4uci5oYW5kbGVyc30scz17YWxsOmQsYXBwbHlEYXRhOmZoYSxkZWZpbml0aW9uQnlJZDphLGZvb3Rub3RlQnlJZDppLGZvb3Rub3RlQ291bnRzOm8sZm9vdG5vdGVPcmRlcjpbXSxoYW5kbGVyczpuLG9uZTpjLG9wdGlvbnM6cixwYXRjaDp1aGEsd3JhcDpoaGF9O3JldHVybiBTeShlLGZ1bmN0aW9uKGYpe2lmKGYudHlwZT09PSJkZWZpbml0aW9uInx8Zi50eXBlPT09ImZvb3Rub3RlRGVmaW5pdGlvbiIpe2xldCB1PWYudHlwZT09PSJkZWZpbml0aW9uIj9hOmkscD1TdHJpbmcoZi5pZGVudGlmaWVyKS50b1VwcGVyQ2FzZSgpO3UuaGFzKHApfHx1LnNldChwLGYpfX0pLHM7ZnVuY3Rpb24gYyhmLHUpe2xldCBwPWYudHlwZSxoPXMuaGFuZGxlcnNbcF07aWYoT3llLmNhbGwocy5oYW5kbGVycyxwKSYmaClyZXR1cm4gaChzLGYsdSk7aWYocy5vcHRpb25zLnBhc3NUaHJvdWdoJiZzLm9wdGlvbnMucGFzc1Rocm91Z2guaW5jbHVkZXMocCkpe2lmKCJjaGlsZHJlbiJpbiBmKXtsZXR7Y2hpbGRyZW46eCwuLi5nfT1mLHY9SDQoZyk7cmV0dXJuIHYuY2hpbGRyZW49cy5hbGwoZiksdn1yZXR1cm4gSDQoZil9cmV0dXJuKHMub3B0aW9ucy51bmtub3duSGFuZGxlcnx8cGhhKShzLGYsdSl9ZnVuY3Rpb24gZChmKXtsZXQgdT1bXTtpZigiY2hpbGRyZW4iaW4gZil7bGV0IHA9Zi5jaGlsZHJlbixoPS0xO2Zvcig7KytoPHAubGVuZ3RoOyl7bGV0IGI9cy5vbmUocFtoXSxmKTtpZihiKXtpZihoJiZwW2gtMV0udHlwZT09PSJicmVhayImJighQXJyYXkuaXNBcnJheShiKSYmYi50eXBlPT09InRleHQiJiYoYi52YWx1ZT1BR3QoYi52YWx1ZSkpLCFBcnJheS5pc0FycmF5KGIpJiZiLnR5cGU9PT0iZWxlbWVudCIpKXtsZXQgeD1iLmNoaWxkcmVuWzBdO3gmJngudHlwZT09PSJ0ZXh0IiYmKHgudmFsdWU9QUd0KHgudmFsdWUpKX1BcnJheS5pc0FycmF5KGIpP3UucHVzaCguLi5iKTp1LnB1c2goYil9fX1yZXR1cm4gdX19ZnVuY3Rpb24gdWhhKGUsdCl7ZS5wb3NpdGlvbiYmKHQucG9zaXRpb249UnkoZSkpfWZ1bmN0aW9uIGZoYShlLHQpe2xldCByPXQ7aWYoZSYmZS5kYXRhKXtsZXQgYT1lLmRhdGEuaE5hbWUsaT1lLmRhdGEuaENoaWxkcmVuLG89ZS5kYXRhLmhQcm9wZXJ0aWVzO2lmKHR5cGVvZiBhPT0ic3RyaW5nIilpZihyLnR5cGU9PT0iZWxlbWVudCIpci50YWdOYW1lPWE7ZWxzZXtsZXQgbj0iY2hpbGRyZW4iaW4gcj9yLmNoaWxkcmVuOltyXTtyPXt0eXBlOiJlbGVtZW50Iix0YWdOYW1lOmEscHJvcGVydGllczp7fSxjaGlsZHJlbjpufX1yLnR5cGU9PT0iZWxlbWVudCImJm8mJk9iamVjdC5hc3NpZ24oci5wcm9wZXJ0aWVzLEg0KG8pKSwiY2hpbGRyZW4iaW4gciYmci5jaGlsZHJlbiYmaSE9PW51bGwmJmkhPT12b2lkIDAmJihyLmNoaWxkcmVuPWkpfXJldHVybiByfWZ1bmN0aW9uIHBoYShlLHQpe2xldCByPXQuZGF0YXx8e30sYT0idmFsdWUiaW4gdCYmIShPeWUuY2FsbChyLCJoUHJvcGVydGllcyIpfHxPeWUuY2FsbChyLCJoQ2hpbGRyZW4iKSk/e3R5cGU6InRleHQiLHZhbHVlOnQudmFsdWV9Ont0eXBlOiJlbGVtZW50Iix0YWdOYW1lOiJkaXYiLHByb3BlcnRpZXM6e30sY2hpbGRyZW46ZS5hbGwodCl9O3JldHVybiBlLnBhdGNoKHQsYSksZS5hcHBseURhdGEodCxhKX1mdW5jdGlvbiBoaGEoZSx0KXtsZXQgcj1bXSxhPS0xO2Zvcih0JiZyLnB1c2goe3R5cGU6InRleHQiLHZhbHVlOmAKYH0pOysrYTxlLmxlbmd0aDspYSYmci5wdXNoKHt0eXBlOiJ0ZXh0Iix2YWx1ZTpgCmB9KSxyLnB1c2goZVthXSk7cmV0dXJuIHQmJmUubGVuZ3RoPjAmJnIucHVzaCh7dHlwZToidGV4dCIsdmFsdWU6YApgfSkscn1mdW5jdGlvbiBBR3QoZSl7bGV0IHQ9MCxyPWUuY2hhckNvZGVBdCh0KTtmb3IoO3I9PT05fHxyPT09MzI7KXQrKyxyPWUuY2hhckNvZGVBdCh0KTtyZXR1cm4gZS5zbGljZSh0KX12YXIgT3llLGRoYSwkR3Q9bCgoKT0+e3huZSgpO2N2ZSgpO3luZSgpO055ZSgpO095ZT17fS5oYXNPd25Qcm9wZXJ0eSxkaGE9e319KTtmdW5jdGlvbiBSeWUoZSx0KXtsZXQgcj1FR3QoZSx0KSxhPXIub25lKGUsdm9pZCAwKSxpPURHdChyKSxvPUFycmF5LmlzQXJyYXkoYSk/e3R5cGU6InJvb3QiLGNoaWxkcmVuOmF9OmF8fHt0eXBlOiJyb290IixjaGlsZHJlbjpbXX07cmV0dXJuIGkmJigiY2hpbGRyZW4iaW4gbyxvLmNoaWxkcmVuLnB1c2goe3R5cGU6InRleHQiLHZhbHVlOmAKYH0saSkpLG99dmFyIFBHdD1sKCgpPT57UDQoKTtGeWUoKTskR3QoKX0pO3ZhciBJR3Q9bCgoKT0+e055ZSgpO1BHdCgpO0Z5ZSgpfSk7dmFyIE5HdCxGR3Q9bCgoKT0+e05HdD1bImFyZWEiLCJiYXNlIiwiYmFzZWZvbnQiLCJiZ3NvdW5kIiwiYnIiLCJjb2wiLCJjb21tYW5kIiwiZW1iZWQiLCJmcmFtZSIsImhyIiwiaW1hZ2UiLCJpbWciLCJpbnB1dCIsImtleWdlbiIsImxpbmsiLCJtZXRhIiwicGFyYW0iLCJzb3VyY2UiLCJ0cmFjayIsIndiciJdfSk7dmFyIHhjLEJ5ZT1sKCgpPT57eGM9Y2xhc3N7Y29uc3RydWN0b3IodCxyLGEpe3RoaXMubm9ybWFsPXIsdGhpcy5wcm9wZXJ0eT10LGEmJih0aGlzLnNwYWNlPWEpfX07eGMucHJvdG90eXBlLm5vcm1hbD17fSx4Yy5wcm90b3R5cGUucHJvcGVydHk9e30seGMucHJvdG90eXBlLnNwYWNlPXZvaWQgMH0pO2Z1bmN0aW9uIEh5ZShlLHQpe2xldCByPXt9LGE9e307Zm9yKGxldCBpIG9mIGUpT2JqZWN0LmFzc2lnbihyLGkucHJvcGVydHkpLE9iamVjdC5hc3NpZ24oYSxpLm5vcm1hbCk7cmV0dXJuIG5ldyB4YyhyLGEsdCl9dmFyIE9HdD1sKCgpPT57QnllKCl9KTtmdW5jdGlvbiBnOShlKXtyZXR1cm4gZS50b0xvd2VyQ2FzZSgpfXZhciBTbmU9bCgoKT0+e30pO3ZhciBlMSxxeWU9bCgoKT0+e2UxPWNsYXNze2NvbnN0cnVjdG9yKHQscil7dGhpcy5hdHRyaWJ1dGU9cix0aGlzLnByb3BlcnR5PXR9fTtlMS5wcm90b3R5cGUuYXR0cmlidXRlPSIiLGUxLnByb3RvdHlwZS5ib29sZWFuaXNoPSExLGUxLnByb3RvdHlwZS5ib29sZWFuPSExLGUxLnByb3RvdHlwZS5jb21tYU9yU3BhY2VTZXBhcmF0ZWQ9ITEsZTEucHJvdG90eXBlLmNvbW1hU2VwYXJhdGVkPSExLGUxLnByb3RvdHlwZS5kZWZpbmVkPSExLGUxLnByb3RvdHlwZS5tdXN0VXNlUHJvcGVydHk9ITEsZTEucHJvdG90eXBlLm51bWJlcj0hMSxlMS5wcm90b3R5cGUub3ZlcmxvYWRlZEJvb2xlYW49ITEsZTEucHJvdG90eXBlLnByb3BlcnR5PSIiLGUxLnByb3RvdHlwZS5zcGFjZVNlcGFyYXRlZD0hMSxlMS5wcm90b3R5cGUuc3BhY2U9dm9pZCAwfSk7dmFyIEh5PXt9O3FlKEh5LHtib29sZWFuOigpPT5xdCxib29sZWFuaXNoOigpPT5aYSxjb21tYU9yU3BhY2VTZXBhcmF0ZWQ6KCk9PklvLGNvbW1hU2VwYXJhdGVkOigpPT5qNCxudW1iZXI6KCk9PlplLG92ZXJsb2FkZWRCb29sZWFuOigpPT56bmUsc3BhY2VTZXBhcmF0ZWQ6KCk9Pm9hfSk7ZnVuY3Rpb24gWTYoKXtyZXR1cm4gMioqKyttaGF9dmFyIG1oYSxxdCxaYSx6bmUsWmUsb2EsajQsSW8scXk9bCgoKT0+e21oYT0wLHF0PVk2KCksWmE9WTYoKSx6bmU9WTYoKSxaZT1ZNigpLG9hPVk2KCksajQ9WTYoKSxJbz1ZNigpfSk7ZnVuY3Rpb24gUkd0KGUsdCxyKXtyJiYoZVt0XT1yKX12YXIganllLFo2LFZ5ZT1sKCgpPT57cXllKCk7cXkoKTtqeWU9T2JqZWN0LmtleXMoSHkpLFo2PWNsYXNzIGV4dGVuZHMgZTF7Y29uc3RydWN0b3IodCxyLGEsaSl7bGV0IG89LTE7aWYoc3VwZXIodCxyKSxSR3QodGhpcywic3BhY2UiLGkpLHR5cGVvZiBhPT0ibnVtYmVyIilmb3IoOysrbzxqeWUubGVuZ3RoOyl7bGV0IG49anllW29dO1JHdCh0aGlzLGp5ZVtvXSwoYSZIeVtuXSk9PT1IeVtuXSl9fX07WjYucHJvdG90eXBlLmRlZmluZWQ9ITB9KTtmdW5jdGlvbiBGbihlKXtsZXQgdD17fSxyPXt9O2ZvcihsZXRbYSxpXW9mIE9iamVjdC5lbnRyaWVzKGUucHJvcGVydGllcykpe2xldCBvPW5ldyBaNihhLGUudHJhbnNmb3JtKGUuYXR0cmlidXRlc3x8e30sYSksaSxlLnNwYWNlKTtlLm11c3RVc2VQcm9wZXJ0eSYmZS5tdXN0VXNlUHJvcGVydHkuaW5jbHVkZXMoYSkmJihvLm11c3RVc2VQcm9wZXJ0eT0hMCksdFthXT1vLHJbZzkoYSldPWEscltnOShvLmF0dHJpYnV0ZSldPWF9cmV0dXJuIG5ldyB4Yyh0LHIsZS5zcGFjZSl9dmFyIFg2PWwoKCk9PntTbmUoKTtWeWUoKTtCeWUoKX0pO3ZhciBVeWUsQkd0PWwoKCk9PntYNigpO3F5KCk7VXllPUZuKHtwcm9wZXJ0aWVzOnthcmlhQWN0aXZlRGVzY2VuZGFudDpudWxsLGFyaWFBdG9taWM6WmEsYXJpYUF1dG9Db21wbGV0ZTpudWxsLGFyaWFCdXN5OlphLGFyaWFDaGVja2VkOlphLGFyaWFDb2xDb3VudDpaZSxhcmlhQ29sSW5kZXg6WmUsYXJpYUNvbFNwYW46WmUsYXJpYUNvbnRyb2xzOm9hLGFyaWFDdXJyZW50Om51bGwsYXJpYURlc2NyaWJlZEJ5Om9hLGFyaWFEZXRhaWxzOm51bGwsYXJpYURpc2FibGVkOlphLGFyaWFEcm9wRWZmZWN0Om9hLGFyaWFFcnJvck1lc3NhZ2U6bnVsbCxhcmlhRXhwYW5kZWQ6WmEsYXJpYUZsb3dUbzpvYSxhcmlhR3JhYmJlZDpaYSxhcmlhSGFzUG9wdXA6bnVsbCxhcmlhSGlkZGVuOlphLGFyaWFJbnZhbGlkOm51bGwsYXJpYUtleVNob3J0Y3V0czpudWxsLGFyaWFMYWJlbDpudWxsLGFyaWFMYWJlbGxlZEJ5Om9hLGFyaWFMZXZlbDpaZSxhcmlhTGl2ZTpudWxsLGFyaWFNb2RhbDpaYSxhcmlhTXVsdGlMaW5lOlphLGFyaWFNdWx0aVNlbGVjdGFibGU6WmEsYXJpYU9yaWVudGF0aW9uOm51bGwsYXJpYU93bnM6b2EsYXJpYVBsYWNlaG9sZGVyOm51bGwsYXJpYVBvc0luU2V0OlplLGFyaWFQcmVzc2VkOlphLGFyaWFSZWFkT25seTpaYSxhcmlhUmVsZXZhbnQ6bnVsbCxhcmlhUmVxdWlyZWQ6WmEsYXJpYVJvbGVEZXNjcmlwdGlvbjpvYSxhcmlhUm93Q291bnQ6WmUsYXJpYVJvd0luZGV4OlplLGFyaWFSb3dTcGFuOlplLGFyaWFTZWxlY3RlZDpaYSxhcmlhU2V0U2l6ZTpaZSxhcmlhU29ydDpudWxsLGFyaWFWYWx1ZU1heDpaZSxhcmlhVmFsdWVNaW46WmUsYXJpYVZhbHVlTm93OlplLGFyaWFWYWx1ZVRleHQ6bnVsbCxyb2xlOm51bGx9LHRyYW5zZm9ybShlLHQpe3JldHVybiB0PT09InJvbGUiP3Q6ImFyaWEtIit0LnNsaWNlKDQpLnRvTG93ZXJDYXNlKCl9fSl9KTtmdW5jdGlvbiBDbmUoZSx0KXtyZXR1cm4gdCBpbiBlP2VbdF06dH12YXIgV3llPWwoKCk9Pnt9KTtmdW5jdGlvbiBfbmUoZSx0KXtyZXR1cm4gQ25lKGUsdC50b0xvd2VyQ2FzZSgpKX12YXIgR3llPWwoKCk9PntXeWUoKX0pO3ZhciBIR3QscUd0PWwoKCk9PntHeWUoKTtYNigpO3F5KCk7SEd0PUZuKHthdHRyaWJ1dGVzOnthY2NlcHRjaGFyc2V0OiJhY2NlcHQtY2hhcnNldCIsY2xhc3NuYW1lOiJjbGFzcyIsaHRtbGZvcjoiZm9yIixodHRwZXF1aXY6Imh0dHAtZXF1aXYifSxtdXN0VXNlUHJvcGVydHk6WyJjaGVja2VkIiwibXVsdGlwbGUiLCJtdXRlZCIsInNlbGVjdGVkIl0scHJvcGVydGllczp7YWJicjpudWxsLGFjY2VwdDpqNCxhY2NlcHRDaGFyc2V0Om9hLGFjY2Vzc0tleTpvYSxhY3Rpb246bnVsbCxhbGxvdzpudWxsLGFsbG93RnVsbFNjcmVlbjpxdCxhbGxvd1BheW1lbnRSZXF1ZXN0OnF0LGFsbG93VXNlck1lZGlhOnF0LGFsdDpudWxsLGFzOm51bGwsYXN5bmM6cXQsYXV0b0NhcGl0YWxpemU6bnVsbCxhdXRvQ29tcGxldGU6b2EsYXV0b0ZvY3VzOnF0LGF1dG9QbGF5OnF0LGJsb2NraW5nOm9hLGNhcHR1cmU6bnVsbCxjaGFyU2V0Om51bGwsY2hlY2tlZDpxdCxjaXRlOm51bGwsY2xhc3NOYW1lOm9hLGNvbHM6WmUsY29sU3BhbjpudWxsLGNvbnRlbnQ6bnVsbCxjb250ZW50RWRpdGFibGU6WmEsY29udHJvbHM6cXQsY29udHJvbHNMaXN0Om9hLGNvb3JkczpaZXxqNCxjcm9zc09yaWdpbjpudWxsLGRhdGE6bnVsbCxkYXRlVGltZTpudWxsLGRlY29kaW5nOm51bGwsZGVmYXVsdDpxdCxkZWZlcjpxdCxkaXI6bnVsbCxkaXJOYW1lOm51bGwsZGlzYWJsZWQ6cXQsZG93bmxvYWQ6em5lLGRyYWdnYWJsZTpaYSxlbmNUeXBlOm51bGwsZW50ZXJLZXlIaW50Om51bGwsZmV0Y2hQcmlvcml0eTpudWxsLGZvcm06bnVsbCxmb3JtQWN0aW9uOm51bGwsZm9ybUVuY1R5cGU6bnVsbCxmb3JtTWV0aG9kOm51bGwsZm9ybU5vVmFsaWRhdGU6cXQsZm9ybVRhcmdldDpudWxsLGhlYWRlcnM6b2EsaGVpZ2h0OlplLGhpZGRlbjp6bmUsaGlnaDpaZSxocmVmOm51bGwsaHJlZkxhbmc6bnVsbCxodG1sRm9yOm9hLGh0dHBFcXVpdjpvYSxpZDpudWxsLGltYWdlU2l6ZXM6bnVsbCxpbWFnZVNyY1NldDpudWxsLGluZXJ0OnF0LGlucHV0TW9kZTpudWxsLGludGVncml0eTpudWxsLGlzOm51bGwsaXNNYXA6cXQsaXRlbUlkOm51bGwsaXRlbVByb3A6b2EsaXRlbVJlZjpvYSxpdGVtU2NvcGU6cXQsaXRlbVR5cGU6b2Esa2luZDpudWxsLGxhYmVsOm51bGwsbGFuZzpudWxsLGxhbmd1YWdlOm51bGwsbGlzdDpudWxsLGxvYWRpbmc6bnVsbCxsb29wOnF0LGxvdzpaZSxtYW5pZmVzdDpudWxsLG1heDpudWxsLG1heExlbmd0aDpaZSxtZWRpYTpudWxsLG1ldGhvZDpudWxsLG1pbjpudWxsLG1pbkxlbmd0aDpaZSxtdWx0aXBsZTpxdCxtdXRlZDpxdCxuYW1lOm51bGwsbm9uY2U6bnVsbCxub01vZHVsZTpxdCxub1ZhbGlkYXRlOnF0LG9uQWJvcnQ6bnVsbCxvbkFmdGVyUHJpbnQ6bnVsbCxvbkF1eENsaWNrOm51bGwsb25CZWZvcmVNYXRjaDpudWxsLG9uQmVmb3JlUHJpbnQ6bnVsbCxvbkJlZm9yZVRvZ2dsZTpudWxsLG9uQmVmb3JlVW5sb2FkOm51bGwsb25CbHVyOm51bGwsb25DYW5jZWw6bnVsbCxvbkNhblBsYXk6bnVsbCxvbkNhblBsYXlUaHJvdWdoOm51bGwsb25DaGFuZ2U6bnVsbCxvbkNsaWNrOm51bGwsb25DbG9zZTpudWxsLG9uQ29udGV4dExvc3Q6bnVsbCxvbkNvbnRleHRNZW51Om51bGwsb25Db250ZXh0UmVzdG9yZWQ6bnVsbCxvbkNvcHk6bnVsbCxvbkN1ZUNoYW5nZTpudWxsLG9uQ3V0Om51bGwsb25EYmxDbGljazpudWxsLG9uRHJhZzpudWxsLG9uRHJhZ0VuZDpudWxsLG9uRHJhZ0VudGVyOm51bGwsb25EcmFnRXhpdDpudWxsLG9uRHJhZ0xlYXZlOm51bGwsb25EcmFnT3ZlcjpudWxsLG9uRHJhZ1N0YXJ0Om51bGwsb25Ecm9wOm51bGwsb25EdXJhdGlvbkNoYW5nZTpudWxsLG9uRW1wdGllZDpudWxsLG9uRW5kZWQ6bnVsbCxvbkVycm9yOm51bGwsb25Gb2N1czpudWxsLG9uRm9ybURhdGE6bnVsbCxvbkhhc2hDaGFuZ2U6bnVsbCxvbklucHV0Om51bGwsb25JbnZhbGlkOm51bGwsb25LZXlEb3duOm51bGwsb25LZXlQcmVzczpudWxsLG9uS2V5VXA6bnVsbCxvbkxhbmd1YWdlQ2hhbmdlOm51bGwsb25Mb2FkOm51bGwsb25Mb2FkZWREYXRhOm51bGwsb25Mb2FkZWRNZXRhZGF0YTpudWxsLG9uTG9hZEVuZDpudWxsLG9uTG9hZFN0YXJ0Om51bGwsb25NZXNzYWdlOm51bGwsb25NZXNzYWdlRXJyb3I6bnVsbCxvbk1vdXNlRG93bjpudWxsLG9uTW91c2VFbnRlcjpudWxsLG9uTW91c2VMZWF2ZTpudWxsLG9uTW91c2VNb3ZlOm51bGwsb25Nb3VzZU91dDpudWxsLG9uTW91c2VPdmVyOm51bGwsb25Nb3VzZVVwOm51bGwsb25PZmZsaW5lOm51bGwsb25PbmxpbmU6bnVsbCxvblBhZ2VIaWRlOm51bGwsb25QYWdlU2hvdzpudWxsLG9uUGFzdGU6bnVsbCxvblBhdXNlOm51bGwsb25QbGF5Om51bGwsb25QbGF5aW5nOm51bGwsb25Qb3BTdGF0ZTpudWxsLG9uUHJvZ3Jlc3M6bnVsbCxvblJhdGVDaGFuZ2U6bnVsbCxvblJlamVjdGlvbkhhbmRsZWQ6bnVsbCxvblJlc2V0Om51bGwsb25SZXNpemU6bnVsbCxvblNjcm9sbDpudWxsLG9uU2Nyb2xsRW5kOm51bGwsb25TZWN1cml0eVBvbGljeVZpb2xhdGlvbjpudWxsLG9uU2Vla2VkOm51bGwsb25TZWVraW5nOm51bGwsb25TZWxlY3Q6bnVsbCxvblNsb3RDaGFuZ2U6bnVsbCxvblN0YWxsZWQ6bnVsbCxvblN0b3JhZ2U6bnVsbCxvblN1Ym1pdDpudWxsLG9uU3VzcGVuZDpudWxsLG9uVGltZVVwZGF0ZTpudWxsLG9uVG9nZ2xlOm51bGwsb25VbmhhbmRsZWRSZWplY3Rpb246bnVsbCxvblVubG9hZDpudWxsLG9uVm9sdW1lQ2hhbmdlOm51bGwsb25XYWl0aW5nOm51bGwsb25XaGVlbDpudWxsLG9wZW46cXQsb3B0aW11bTpaZSxwYXR0ZXJuOm51bGwscGluZzpvYSxwbGFjZWhvbGRlcjpudWxsLHBsYXlzSW5saW5lOnF0LHBvcG92ZXI6bnVsbCxwb3BvdmVyVGFyZ2V0Om51bGwscG9wb3ZlclRhcmdldEFjdGlvbjpudWxsLHBvc3RlcjpudWxsLHByZWxvYWQ6bnVsbCxyZWFkT25seTpxdCxyZWZlcnJlclBvbGljeTpudWxsLHJlbDpvYSxyZXF1aXJlZDpxdCxyZXZlcnNlZDpxdCxyb3dzOlplLHJvd1NwYW46WmUsc2FuZGJveDpvYSxzY29wZTpudWxsLHNjb3BlZDpxdCxzZWFtbGVzczpxdCxzZWxlY3RlZDpxdCxzaGFkb3dSb290Q2xvbmFibGU6cXQsc2hhZG93Um9vdERlbGVnYXRlc0ZvY3VzOnF0LHNoYWRvd1Jvb3RNb2RlOm51bGwsc2hhcGU6bnVsbCxzaXplOlplLHNpemVzOm51bGwsc2xvdDpudWxsLHNwYW46WmUsc3BlbGxDaGVjazpaYSxzcmM6bnVsbCxzcmNEb2M6bnVsbCxzcmNMYW5nOm51bGwsc3JjU2V0Om51bGwsc3RhcnQ6WmUsc3RlcDpudWxsLHN0eWxlOm51bGwsdGFiSW5kZXg6WmUsdGFyZ2V0Om51bGwsdGl0bGU6bnVsbCx0cmFuc2xhdGU6bnVsbCx0eXBlOm51bGwsdHlwZU11c3RNYXRjaDpxdCx1c2VNYXA6bnVsbCx2YWx1ZTpaYSx3aWR0aDpaZSx3cmFwOm51bGwsd3JpdGluZ1N1Z2dlc3Rpb25zOm51bGwsYWxpZ246bnVsbCxhTGluazpudWxsLGFyY2hpdmU6b2EsYXhpczpudWxsLGJhY2tncm91bmQ6bnVsbCxiZ0NvbG9yOm51bGwsYm9yZGVyOlplLGJvcmRlckNvbG9yOm51bGwsYm90dG9tTWFyZ2luOlplLGNlbGxQYWRkaW5nOm51bGwsY2VsbFNwYWNpbmc6bnVsbCxjaGFyOm51bGwsY2hhck9mZjpudWxsLGNsYXNzSWQ6bnVsbCxjbGVhcjpudWxsLGNvZGU6bnVsbCxjb2RlQmFzZTpudWxsLGNvZGVUeXBlOm51bGwsY29sb3I6bnVsbCxjb21wYWN0OnF0LGRlY2xhcmU6cXQsZXZlbnQ6bnVsbCxmYWNlOm51bGwsZnJhbWU6bnVsbCxmcmFtZUJvcmRlcjpudWxsLGhTcGFjZTpaZSxsZWZ0TWFyZ2luOlplLGxpbms6bnVsbCxsb25nRGVzYzpudWxsLGxvd1NyYzpudWxsLG1hcmdpbkhlaWdodDpaZSxtYXJnaW5XaWR0aDpaZSxub1Jlc2l6ZTpxdCxub0hyZWY6cXQsbm9TaGFkZTpxdCxub1dyYXA6cXQsb2JqZWN0Om51bGwscHJvZmlsZTpudWxsLHByb21wdDpudWxsLHJldjpudWxsLHJpZ2h0TWFyZ2luOlplLHJ1bGVzOm51bGwsc2NoZW1lOm51bGwsc2Nyb2xsaW5nOlphLHN0YW5kYnk6bnVsbCxzdW1tYXJ5Om51bGwsdGV4dDpudWxsLHRvcE1hcmdpbjpaZSx2YWx1ZVR5cGU6bnVsbCx2ZXJzaW9uOm51bGwsdkFsaWduOm51bGwsdkxpbms6bnVsbCx2U3BhY2U6WmUsYWxsb3dUcmFuc3BhcmVuY3k6bnVsbCxhdXRvQ29ycmVjdDpudWxsLGF1dG9TYXZlOm51bGwsZGlzYWJsZVBpY3R1cmVJblBpY3R1cmU6cXQsZGlzYWJsZVJlbW90ZVBsYXliYWNrOnF0LHByZWZpeDpudWxsLHByb3BlcnR5Om51bGwscmVzdWx0czpaZSxzZWN1cml0eTpudWxsLHVuc2VsZWN0YWJsZTpudWxsfSxzcGFjZToiaHRtbCIsdHJhbnNmb3JtOl9uZX0pfSk7dmFyIGpHdCxWR3Q9bCgoKT0+e1d5ZSgpO1g2KCk7cXkoKTtqR3Q9Rm4oe2F0dHJpYnV0ZXM6e2FjY2VudEhlaWdodDoiYWNjZW50LWhlaWdodCIsYWxpZ25tZW50QmFzZWxpbmU6ImFsaWdubWVudC1iYXNlbGluZSIsYXJhYmljRm9ybToiYXJhYmljLWZvcm0iLGJhc2VsaW5lU2hpZnQ6ImJhc2VsaW5lLXNoaWZ0IixjYXBIZWlnaHQ6ImNhcC1oZWlnaHQiLGNsYXNzTmFtZToiY2xhc3MiLGNsaXBQYXRoOiJjbGlwLXBhdGgiLGNsaXBSdWxlOiJjbGlwLXJ1bGUiLGNvbG9ySW50ZXJwb2xhdGlvbjoiY29sb3ItaW50ZXJwb2xhdGlvbiIsY29sb3JJbnRlcnBvbGF0aW9uRmlsdGVyczoiY29sb3ItaW50ZXJwb2xhdGlvbi1maWx0ZXJzIixjb2xvclByb2ZpbGU6ImNvbG9yLXByb2ZpbGUiLGNvbG9yUmVuZGVyaW5nOiJjb2xvci1yZW5kZXJpbmciLGNyb3NzT3JpZ2luOiJjcm9zc29yaWdpbiIsZGF0YVR5cGU6ImRhdGF0eXBlIixkb21pbmFudEJhc2VsaW5lOiJkb21pbmFudC1iYXNlbGluZSIsZW5hYmxlQmFja2dyb3VuZDoiZW5hYmxlLWJhY2tncm91bmQiLGZpbGxPcGFjaXR5OiJmaWxsLW9wYWNpdHkiLGZpbGxSdWxlOiJmaWxsLXJ1bGUiLGZsb29kQ29sb3I6ImZsb29kLWNvbG9yIixmbG9vZE9wYWNpdHk6ImZsb29kLW9wYWNpdHkiLGZvbnRGYW1pbHk6ImZvbnQtZmFtaWx5Iixmb250U2l6ZToiZm9udC1zaXplIixmb250U2l6ZUFkanVzdDoiZm9udC1zaXplLWFkanVzdCIsZm9udFN0cmV0Y2g6ImZvbnQtc3RyZXRjaCIsZm9udFN0eWxlOiJmb250LXN0eWxlIixmb250VmFyaWFudDoiZm9udC12YXJpYW50Iixmb250V2VpZ2h0OiJmb250LXdlaWdodCIsZ2x5cGhOYW1lOiJnbHlwaC1uYW1lIixnbHlwaE9yaWVudGF0aW9uSG9yaXpvbnRhbDoiZ2x5cGgtb3JpZW50YXRpb24taG9yaXpvbnRhbCIsZ2x5cGhPcmllbnRhdGlvblZlcnRpY2FsOiJnbHlwaC1vcmllbnRhdGlvbi12ZXJ0aWNhbCIsaHJlZkxhbmc6ImhyZWZsYW5nIixob3JpekFkdlg6Imhvcml6LWFkdi14Iixob3Jpek9yaWdpblg6Imhvcml6LW9yaWdpbi14Iixob3Jpek9yaWdpblk6Imhvcml6LW9yaWdpbi15IixpbWFnZVJlbmRlcmluZzoiaW1hZ2UtcmVuZGVyaW5nIixsZXR0ZXJTcGFjaW5nOiJsZXR0ZXItc3BhY2luZyIsbGlnaHRpbmdDb2xvcjoibGlnaHRpbmctY29sb3IiLG1hcmtlckVuZDoibWFya2VyLWVuZCIsbWFya2VyTWlkOiJtYXJrZXItbWlkIixtYXJrZXJTdGFydDoibWFya2VyLXN0YXJ0IixuYXZEb3duOiJuYXYtZG93biIsbmF2RG93bkxlZnQ6Im5hdi1kb3duLWxlZnQiLG5hdkRvd25SaWdodDoibmF2LWRvd24tcmlnaHQiLG5hdkxlZnQ6Im5hdi1sZWZ0IixuYXZOZXh0OiJuYXYtbmV4dCIsbmF2UHJldjoibmF2LXByZXYiLG5hdlJpZ2h0OiJuYXYtcmlnaHQiLG5hdlVwOiJuYXYtdXAiLG5hdlVwTGVmdDoibmF2LXVwLWxlZnQiLG5hdlVwUmlnaHQ6Im5hdi11cC1yaWdodCIsb25BYm9ydDoib25hYm9ydCIsb25BY3RpdmF0ZToib25hY3RpdmF0ZSIsb25BZnRlclByaW50OiJvbmFmdGVycHJpbnQiLG9uQmVmb3JlUHJpbnQ6Im9uYmVmb3JlcHJpbnQiLG9uQmVnaW46Im9uYmVnaW4iLG9uQ2FuY2VsOiJvbmNhbmNlbCIsb25DYW5QbGF5OiJvbmNhbnBsYXkiLG9uQ2FuUGxheVRocm91Z2g6Im9uY2FucGxheXRocm91Z2giLG9uQ2hhbmdlOiJvbmNoYW5nZSIsb25DbGljazoib25jbGljayIsb25DbG9zZToib25jbG9zZSIsb25Db3B5OiJvbmNvcHkiLG9uQ3VlQ2hhbmdlOiJvbmN1ZWNoYW5nZSIsb25DdXQ6Im9uY3V0IixvbkRibENsaWNrOiJvbmRibGNsaWNrIixvbkRyYWc6Im9uZHJhZyIsb25EcmFnRW5kOiJvbmRyYWdlbmQiLG9uRHJhZ0VudGVyOiJvbmRyYWdlbnRlciIsb25EcmFnRXhpdDoib25kcmFnZXhpdCIsb25EcmFnTGVhdmU6Im9uZHJhZ2xlYXZlIixvbkRyYWdPdmVyOiJvbmRyYWdvdmVyIixvbkRyYWdTdGFydDoib25kcmFnc3RhcnQiLG9uRHJvcDoib25kcm9wIixvbkR1cmF0aW9uQ2hhbmdlOiJvbmR1cmF0aW9uY2hhbmdlIixvbkVtcHRpZWQ6Im9uZW1wdGllZCIsb25FbmQ6Im9uZW5kIixvbkVuZGVkOiJvbmVuZGVkIixvbkVycm9yOiJvbmVycm9yIixvbkZvY3VzOiJvbmZvY3VzIixvbkZvY3VzSW46Im9uZm9jdXNpbiIsb25Gb2N1c091dDoib25mb2N1c291dCIsb25IYXNoQ2hhbmdlOiJvbmhhc2hjaGFuZ2UiLG9uSW5wdXQ6Im9uaW5wdXQiLG9uSW52YWxpZDoib25pbnZhbGlkIixvbktleURvd246Im9ua2V5ZG93biIsb25LZXlQcmVzczoib25rZXlwcmVzcyIsb25LZXlVcDoib25rZXl1cCIsb25Mb2FkOiJvbmxvYWQiLG9uTG9hZGVkRGF0YToib25sb2FkZWRkYXRhIixvbkxvYWRlZE1ldGFkYXRhOiJvbmxvYWRlZG1ldGFkYXRhIixvbkxvYWRTdGFydDoib25sb2Fkc3RhcnQiLG9uTWVzc2FnZToib25tZXNzYWdlIixvbk1vdXNlRG93bjoib25tb3VzZWRvd24iLG9uTW91c2VFbnRlcjoib25tb3VzZWVudGVyIixvbk1vdXNlTGVhdmU6Im9ubW91c2VsZWF2ZSIsb25Nb3VzZU1vdmU6Im9ubW91c2Vtb3ZlIixvbk1vdXNlT3V0OiJvbm1vdXNlb3V0Iixvbk1vdXNlT3Zlcjoib25tb3VzZW92ZXIiLG9uTW91c2VVcDoib25tb3VzZXVwIixvbk1vdXNlV2hlZWw6Im9ubW91c2V3aGVlbCIsb25PZmZsaW5lOiJvbm9mZmxpbmUiLG9uT25saW5lOiJvbm9ubGluZSIsb25QYWdlSGlkZToib25wYWdlaGlkZSIsb25QYWdlU2hvdzoib25wYWdlc2hvdyIsb25QYXN0ZToib25wYXN0ZSIsb25QYXVzZToib25wYXVzZSIsb25QbGF5OiJvbnBsYXkiLG9uUGxheWluZzoib25wbGF5aW5nIixvblBvcFN0YXRlOiJvbnBvcHN0YXRlIixvblByb2dyZXNzOiJvbnByb2dyZXNzIixvblJhdGVDaGFuZ2U6Im9ucmF0ZWNoYW5nZSIsb25SZXBlYXQ6Im9ucmVwZWF0IixvblJlc2V0OiJvbnJlc2V0IixvblJlc2l6ZToib25yZXNpemUiLG9uU2Nyb2xsOiJvbnNjcm9sbCIsb25TZWVrZWQ6Im9uc2Vla2VkIixvblNlZWtpbmc6Im9uc2Vla2luZyIsb25TZWxlY3Q6Im9uc2VsZWN0IixvblNob3c6Im9uc2hvdyIsb25TdGFsbGVkOiJvbnN0YWxsZWQiLG9uU3RvcmFnZToib25zdG9yYWdlIixvblN1Ym1pdDoib25zdWJtaXQiLG9uU3VzcGVuZDoib25zdXNwZW5kIixvblRpbWVVcGRhdGU6Im9udGltZXVwZGF0ZSIsb25Ub2dnbGU6Im9udG9nZ2xlIixvblVubG9hZDoib251bmxvYWQiLG9uVm9sdW1lQ2hhbmdlOiJvbnZvbHVtZWNoYW5nZSIsb25XYWl0aW5nOiJvbndhaXRpbmciLG9uWm9vbToib256b29tIixvdmVybGluZVBvc2l0aW9uOiJvdmVybGluZS1wb3NpdGlvbiIsb3ZlcmxpbmVUaGlja25lc3M6Im92ZXJsaW5lLXRoaWNrbmVzcyIscGFpbnRPcmRlcjoicGFpbnQtb3JkZXIiLHBhbm9zZTE6InBhbm9zZS0xIixwb2ludGVyRXZlbnRzOiJwb2ludGVyLWV2ZW50cyIscmVmZXJyZXJQb2xpY3k6InJlZmVycmVycG9saWN5IixyZW5kZXJpbmdJbnRlbnQ6InJlbmRlcmluZy1pbnRlbnQiLHNoYXBlUmVuZGVyaW5nOiJzaGFwZS1yZW5kZXJpbmciLHN0b3BDb2xvcjoic3RvcC1jb2xvciIsc3RvcE9wYWNpdHk6InN0b3Atb3BhY2l0eSIsc3RyaWtldGhyb3VnaFBvc2l0aW9uOiJzdHJpa2V0aHJvdWdoLXBvc2l0aW9uIixzdHJpa2V0aHJvdWdoVGhpY2tuZXNzOiJzdHJpa2V0aHJvdWdoLXRoaWNrbmVzcyIsc3Ryb2tlRGFzaEFycmF5OiJzdHJva2UtZGFzaGFycmF5IixzdHJva2VEYXNoT2Zmc2V0OiJzdHJva2UtZGFzaG9mZnNldCIsc3Ryb2tlTGluZUNhcDoic3Ryb2tlLWxpbmVjYXAiLHN0cm9rZUxpbmVKb2luOiJzdHJva2UtbGluZWpvaW4iLHN0cm9rZU1pdGVyTGltaXQ6InN0cm9rZS1taXRlcmxpbWl0IixzdHJva2VPcGFjaXR5OiJzdHJva2Utb3BhY2l0eSIsc3Ryb2tlV2lkdGg6InN0cm9rZS13aWR0aCIsdGFiSW5kZXg6InRhYmluZGV4Iix0ZXh0QW5jaG9yOiJ0ZXh0LWFuY2hvciIsdGV4dERlY29yYXRpb246InRleHQtZGVjb3JhdGlvbiIsdGV4dFJlbmRlcmluZzoidGV4dC1yZW5kZXJpbmciLHRyYW5zZm9ybU9yaWdpbjoidHJhbnNmb3JtLW9yaWdpbiIsdHlwZU9mOiJ0eXBlb2YiLHVuZGVybGluZVBvc2l0aW9uOiJ1bmRlcmxpbmUtcG9zaXRpb24iLHVuZGVybGluZVRoaWNrbmVzczoidW5kZXJsaW5lLXRoaWNrbmVzcyIsdW5pY29kZUJpZGk6InVuaWNvZGUtYmlkaSIsdW5pY29kZVJhbmdlOiJ1bmljb2RlLXJhbmdlIix1bml0c1BlckVtOiJ1bml0cy1wZXItZW0iLHZBbHBoYWJldGljOiJ2LWFscGhhYmV0aWMiLHZIYW5naW5nOiJ2LWhhbmdpbmciLHZJZGVvZ3JhcGhpYzoidi1pZGVvZ3JhcGhpYyIsdk1hdGhlbWF0aWNhbDoidi1tYXRoZW1hdGljYWwiLHZlY3RvckVmZmVjdDoidmVjdG9yLWVmZmVjdCIsdmVydEFkdlk6InZlcnQtYWR2LXkiLHZlcnRPcmlnaW5YOiJ2ZXJ0LW9yaWdpbi14Iix2ZXJ0T3JpZ2luWToidmVydC1vcmlnaW4teSIsd29yZFNwYWNpbmc6IndvcmQtc3BhY2luZyIsd3JpdGluZ01vZGU6IndyaXRpbmctbW9kZSIseEhlaWdodDoieC1oZWlnaHQiLHBsYXliYWNrT3JkZXI6InBsYXliYWNrb3JkZXIiLHRpbWVsaW5lQmVnaW46InRpbWVsaW5lYmVnaW4ifSxwcm9wZXJ0aWVzOnthYm91dDpJbyxhY2NlbnRIZWlnaHQ6WmUsYWNjdW11bGF0ZTpudWxsLGFkZGl0aXZlOm51bGwsYWxpZ25tZW50QmFzZWxpbmU6bnVsbCxhbHBoYWJldGljOlplLGFtcGxpdHVkZTpaZSxhcmFiaWNGb3JtOm51bGwsYXNjZW50OlplLGF0dHJpYnV0ZU5hbWU6bnVsbCxhdHRyaWJ1dGVUeXBlOm51bGwsYXppbXV0aDpaZSxiYW5kd2lkdGg6bnVsbCxiYXNlbGluZVNoaWZ0Om51bGwsYmFzZUZyZXF1ZW5jeTpudWxsLGJhc2VQcm9maWxlOm51bGwsYmJveDpudWxsLGJlZ2luOm51bGwsYmlhczpaZSxieTpudWxsLGNhbGNNb2RlOm51bGwsY2FwSGVpZ2h0OlplLGNsYXNzTmFtZTpvYSxjbGlwOm51bGwsY2xpcFBhdGg6bnVsbCxjbGlwUGF0aFVuaXRzOm51bGwsY2xpcFJ1bGU6bnVsbCxjb2xvcjpudWxsLGNvbG9ySW50ZXJwb2xhdGlvbjpudWxsLGNvbG9ySW50ZXJwb2xhdGlvbkZpbHRlcnM6bnVsbCxjb2xvclByb2ZpbGU6bnVsbCxjb2xvclJlbmRlcmluZzpudWxsLGNvbnRlbnQ6bnVsbCxjb250ZW50U2NyaXB0VHlwZTpudWxsLGNvbnRlbnRTdHlsZVR5cGU6bnVsbCxjcm9zc09yaWdpbjpudWxsLGN1cnNvcjpudWxsLGN4Om51bGwsY3k6bnVsbCxkOm51bGwsZGF0YVR5cGU6bnVsbCxkZWZhdWx0QWN0aW9uOm51bGwsZGVzY2VudDpaZSxkaWZmdXNlQ29uc3RhbnQ6WmUsZGlyZWN0aW9uOm51bGwsZGlzcGxheTpudWxsLGR1cjpudWxsLGRpdmlzb3I6WmUsZG9taW5hbnRCYXNlbGluZTpudWxsLGRvd25sb2FkOnF0LGR4Om51bGwsZHk6bnVsbCxlZGdlTW9kZTpudWxsLGVkaXRhYmxlOm51bGwsZWxldmF0aW9uOlplLGVuYWJsZUJhY2tncm91bmQ6bnVsbCxlbmQ6bnVsbCxldmVudDpudWxsLGV4cG9uZW50OlplLGV4dGVybmFsUmVzb3VyY2VzUmVxdWlyZWQ6bnVsbCxmaWxsOm51bGwsZmlsbE9wYWNpdHk6WmUsZmlsbFJ1bGU6bnVsbCxmaWx0ZXI6bnVsbCxmaWx0ZXJSZXM6bnVsbCxmaWx0ZXJVbml0czpudWxsLGZsb29kQ29sb3I6bnVsbCxmbG9vZE9wYWNpdHk6bnVsbCxmb2N1c2FibGU6bnVsbCxmb2N1c0hpZ2hsaWdodDpudWxsLGZvbnRGYW1pbHk6bnVsbCxmb250U2l6ZTpudWxsLGZvbnRTaXplQWRqdXN0Om51bGwsZm9udFN0cmV0Y2g6bnVsbCxmb250U3R5bGU6bnVsbCxmb250VmFyaWFudDpudWxsLGZvbnRXZWlnaHQ6bnVsbCxmb3JtYXQ6bnVsbCxmcjpudWxsLGZyb206bnVsbCxmeDpudWxsLGZ5Om51bGwsZzE6ajQsZzI6ajQsZ2x5cGhOYW1lOmo0LGdseXBoT3JpZW50YXRpb25Ib3Jpem9udGFsOm51bGwsZ2x5cGhPcmllbnRhdGlvblZlcnRpY2FsOm51bGwsZ2x5cGhSZWY6bnVsbCxncmFkaWVudFRyYW5zZm9ybTpudWxsLGdyYWRpZW50VW5pdHM6bnVsbCxoYW5kbGVyOm51bGwsaGFuZ2luZzpaZSxoYXRjaENvbnRlbnRVbml0czpudWxsLGhhdGNoVW5pdHM6bnVsbCxoZWlnaHQ6bnVsbCxocmVmOm51bGwsaHJlZkxhbmc6bnVsbCxob3JpekFkdlg6WmUsaG9yaXpPcmlnaW5YOlplLGhvcml6T3JpZ2luWTpaZSxpZDpudWxsLGlkZW9ncmFwaGljOlplLGltYWdlUmVuZGVyaW5nOm51bGwsaW5pdGlhbFZpc2liaWxpdHk6bnVsbCxpbjpudWxsLGluMjpudWxsLGludGVyY2VwdDpaZSxrOlplLGsxOlplLGsyOlplLGszOlplLGs0OlplLGtlcm5lbE1hdHJpeDpJbyxrZXJuZWxVbml0TGVuZ3RoOm51bGwsa2V5UG9pbnRzOm51bGwsa2V5U3BsaW5lczpudWxsLGtleVRpbWVzOm51bGwsa2VybmluZzpudWxsLGxhbmc6bnVsbCxsZW5ndGhBZGp1c3Q6bnVsbCxsZXR0ZXJTcGFjaW5nOm51bGwsbGlnaHRpbmdDb2xvcjpudWxsLGxpbWl0aW5nQ29uZUFuZ2xlOlplLGxvY2FsOm51bGwsbWFya2VyRW5kOm51bGwsbWFya2VyTWlkOm51bGwsbWFya2VyU3RhcnQ6bnVsbCxtYXJrZXJIZWlnaHQ6bnVsbCxtYXJrZXJVbml0czpudWxsLG1hcmtlcldpZHRoOm51bGwsbWFzazpudWxsLG1hc2tDb250ZW50VW5pdHM6bnVsbCxtYXNrVW5pdHM6bnVsbCxtYXRoZW1hdGljYWw6bnVsbCxtYXg6bnVsbCxtZWRpYTpudWxsLG1lZGlhQ2hhcmFjdGVyRW5jb2Rpbmc6bnVsbCxtZWRpYUNvbnRlbnRFbmNvZGluZ3M6bnVsbCxtZWRpYVNpemU6WmUsbWVkaWFUaW1lOm51bGwsbWV0aG9kOm51bGwsbWluOm51bGwsbW9kZTpudWxsLG5hbWU6bnVsbCxuYXZEb3duOm51bGwsbmF2RG93bkxlZnQ6bnVsbCxuYXZEb3duUmlnaHQ6bnVsbCxuYXZMZWZ0Om51bGwsbmF2TmV4dDpudWxsLG5hdlByZXY6bnVsbCxuYXZSaWdodDpudWxsLG5hdlVwOm51bGwsbmF2VXBMZWZ0Om51bGwsbmF2VXBSaWdodDpudWxsLG51bU9jdGF2ZXM6bnVsbCxvYnNlcnZlcjpudWxsLG9mZnNldDpudWxsLG9uQWJvcnQ6bnVsbCxvbkFjdGl2YXRlOm51bGwsb25BZnRlclByaW50Om51bGwsb25CZWZvcmVQcmludDpudWxsLG9uQmVnaW46bnVsbCxvbkNhbmNlbDpudWxsLG9uQ2FuUGxheTpudWxsLG9uQ2FuUGxheVRocm91Z2g6bnVsbCxvbkNoYW5nZTpudWxsLG9uQ2xpY2s6bnVsbCxvbkNsb3NlOm51bGwsb25Db3B5Om51bGwsb25DdWVDaGFuZ2U6bnVsbCxvbkN1dDpudWxsLG9uRGJsQ2xpY2s6bnVsbCxvbkRyYWc6bnVsbCxvbkRyYWdFbmQ6bnVsbCxvbkRyYWdFbnRlcjpudWxsLG9uRHJhZ0V4aXQ6bnVsbCxvbkRyYWdMZWF2ZTpudWxsLG9uRHJhZ092ZXI6bnVsbCxvbkRyYWdTdGFydDpudWxsLG9uRHJvcDpudWxsLG9uRHVyYXRpb25DaGFuZ2U6bnVsbCxvbkVtcHRpZWQ6bnVsbCxvbkVuZDpudWxsLG9uRW5kZWQ6bnVsbCxvbkVycm9yOm51bGwsb25Gb2N1czpudWxsLG9uRm9jdXNJbjpudWxsLG9uRm9jdXNPdXQ6bnVsbCxvbkhhc2hDaGFuZ2U6bnVsbCxvbklucHV0Om51bGwsb25JbnZhbGlkOm51bGwsb25LZXlEb3duOm51bGwsb25LZXlQcmVzczpudWxsLG9uS2V5VXA6bnVsbCxvbkxvYWQ6bnVsbCxvbkxvYWRlZERhdGE6bnVsbCxvbkxvYWRlZE1ldGFkYXRhOm51bGwsb25Mb2FkU3RhcnQ6bnVsbCxvbk1lc3NhZ2U6bnVsbCxvbk1vdXNlRG93bjpudWxsLG9uTW91c2VFbnRlcjpudWxsLG9uTW91c2VMZWF2ZTpudWxsLG9uTW91c2VNb3ZlOm51bGwsb25Nb3VzZU91dDpudWxsLG9uTW91c2VPdmVyOm51bGwsb25Nb3VzZVVwOm51bGwsb25Nb3VzZVdoZWVsOm51bGwsb25PZmZsaW5lOm51bGwsb25PbmxpbmU6bnVsbCxvblBhZ2VIaWRlOm51bGwsb25QYWdlU2hvdzpudWxsLG9uUGFzdGU6bnVsbCxvblBhdXNlOm51bGwsb25QbGF5Om51bGwsb25QbGF5aW5nOm51bGwsb25Qb3BTdGF0ZTpudWxsLG9uUHJvZ3Jlc3M6bnVsbCxvblJhdGVDaGFuZ2U6bnVsbCxvblJlcGVhdDpudWxsLG9uUmVzZXQ6bnVsbCxvblJlc2l6ZTpudWxsLG9uU2Nyb2xsOm51bGwsb25TZWVrZWQ6bnVsbCxvblNlZWtpbmc6bnVsbCxvblNlbGVjdDpudWxsLG9uU2hvdzpudWxsLG9uU3RhbGxlZDpudWxsLG9uU3RvcmFnZTpudWxsLG9uU3VibWl0Om51bGwsb25TdXNwZW5kOm51bGwsb25UaW1lVXBkYXRlOm51bGwsb25Ub2dnbGU6bnVsbCxvblVubG9hZDpudWxsLG9uVm9sdW1lQ2hhbmdlOm51bGwsb25XYWl0aW5nOm51bGwsb25ab29tOm51bGwsb3BhY2l0eTpudWxsLG9wZXJhdG9yOm51bGwsb3JkZXI6bnVsbCxvcmllbnQ6bnVsbCxvcmllbnRhdGlvbjpudWxsLG9yaWdpbjpudWxsLG92ZXJmbG93Om51bGwsb3ZlcmxheTpudWxsLG92ZXJsaW5lUG9zaXRpb246WmUsb3ZlcmxpbmVUaGlja25lc3M6WmUscGFpbnRPcmRlcjpudWxsLHBhbm9zZTE6bnVsbCxwYXRoOm51bGwscGF0aExlbmd0aDpaZSxwYXR0ZXJuQ29udGVudFVuaXRzOm51bGwscGF0dGVyblRyYW5zZm9ybTpudWxsLHBhdHRlcm5Vbml0czpudWxsLHBoYXNlOm51bGwscGluZzpvYSxwaXRjaDpudWxsLHBsYXliYWNrT3JkZXI6bnVsbCxwb2ludGVyRXZlbnRzOm51bGwscG9pbnRzOm51bGwscG9pbnRzQXRYOlplLHBvaW50c0F0WTpaZSxwb2ludHNBdFo6WmUscHJlc2VydmVBbHBoYTpudWxsLHByZXNlcnZlQXNwZWN0UmF0aW86bnVsbCxwcmltaXRpdmVVbml0czpudWxsLHByb3BhZ2F0ZTpudWxsLHByb3BlcnR5OklvLHI6bnVsbCxyYWRpdXM6bnVsbCxyZWZlcnJlclBvbGljeTpudWxsLHJlZlg6bnVsbCxyZWZZOm51bGwscmVsOklvLHJldjpJbyxyZW5kZXJpbmdJbnRlbnQ6bnVsbCxyZXBlYXRDb3VudDpudWxsLHJlcGVhdER1cjpudWxsLHJlcXVpcmVkRXh0ZW5zaW9uczpJbyxyZXF1aXJlZEZlYXR1cmVzOklvLHJlcXVpcmVkRm9udHM6SW8scmVxdWlyZWRGb3JtYXRzOklvLHJlc291cmNlOm51bGwscmVzdGFydDpudWxsLHJlc3VsdDpudWxsLHJvdGF0ZTpudWxsLHJ4Om51bGwscnk6bnVsbCxzY2FsZTpudWxsLHNlZWQ6bnVsbCxzaGFwZVJlbmRlcmluZzpudWxsLHNpZGU6bnVsbCxzbG9wZTpudWxsLHNuYXBzaG90VGltZTpudWxsLHNwZWN1bGFyQ29uc3RhbnQ6WmUsc3BlY3VsYXJFeHBvbmVudDpaZSxzcHJlYWRNZXRob2Q6bnVsbCxzcGFjaW5nOm51bGwsc3RhcnRPZmZzZXQ6bnVsbCxzdGREZXZpYXRpb246bnVsbCxzdGVtaDpudWxsLHN0ZW12Om51bGwsc3RpdGNoVGlsZXM6bnVsbCxzdG9wQ29sb3I6bnVsbCxzdG9wT3BhY2l0eTpudWxsLHN0cmlrZXRocm91Z2hQb3NpdGlvbjpaZSxzdHJpa2V0aHJvdWdoVGhpY2tuZXNzOlplLHN0cmluZzpudWxsLHN0cm9rZTpudWxsLHN0cm9rZURhc2hBcnJheTpJbyxzdHJva2VEYXNoT2Zmc2V0Om51bGwsc3Ryb2tlTGluZUNhcDpudWxsLHN0cm9rZUxpbmVKb2luOm51bGwsc3Ryb2tlTWl0ZXJMaW1pdDpaZSxzdHJva2VPcGFjaXR5OlplLHN0cm9rZVdpZHRoOm51bGwsc3R5bGU6bnVsbCxzdXJmYWNlU2NhbGU6WmUsc3luY0JlaGF2aW9yOm51bGwsc3luY0JlaGF2aW9yRGVmYXVsdDpudWxsLHN5bmNNYXN0ZXI6bnVsbCxzeW5jVG9sZXJhbmNlOm51bGwsc3luY1RvbGVyYW5jZURlZmF1bHQ6bnVsbCxzeXN0ZW1MYW5ndWFnZTpJbyx0YWJJbmRleDpaZSx0YWJsZVZhbHVlczpudWxsLHRhcmdldDpudWxsLHRhcmdldFg6WmUsdGFyZ2V0WTpaZSx0ZXh0QW5jaG9yOm51bGwsdGV4dERlY29yYXRpb246bnVsbCx0ZXh0UmVuZGVyaW5nOm51bGwsdGV4dExlbmd0aDpudWxsLHRpbWVsaW5lQmVnaW46bnVsbCx0aXRsZTpudWxsLHRyYW5zZm9ybUJlaGF2aW9yOm51bGwsdHlwZTpudWxsLHR5cGVPZjpJbyx0bzpudWxsLHRyYW5zZm9ybTpudWxsLHRyYW5zZm9ybU9yaWdpbjpudWxsLHUxOm51bGwsdTI6bnVsbCx1bmRlcmxpbmVQb3NpdGlvbjpaZSx1bmRlcmxpbmVUaGlja25lc3M6WmUsdW5pY29kZTpudWxsLHVuaWNvZGVCaWRpOm51bGwsdW5pY29kZVJhbmdlOm51bGwsdW5pdHNQZXJFbTpaZSx2YWx1ZXM6bnVsbCx2QWxwaGFiZXRpYzpaZSx2TWF0aGVtYXRpY2FsOlplLHZlY3RvckVmZmVjdDpudWxsLHZIYW5naW5nOlplLHZJZGVvZ3JhcGhpYzpaZSx2ZXJzaW9uOm51bGwsdmVydEFkdlk6WmUsdmVydE9yaWdpblg6WmUsdmVydE9yaWdpblk6WmUsdmlld0JveDpudWxsLHZpZXdUYXJnZXQ6bnVsbCx2aXNpYmlsaXR5Om51bGwsd2lkdGg6bnVsbCx3aWR0aHM6bnVsbCx3b3JkU3BhY2luZzpudWxsLHdyaXRpbmdNb2RlOm51bGwseDpudWxsLHgxOm51bGwseDI6bnVsbCx4Q2hhbm5lbFNlbGVjdG9yOm51bGwseEhlaWdodDpaZSx5Om51bGwseTE6bnVsbCx5MjpudWxsLHlDaGFubmVsU2VsZWN0b3I6bnVsbCx6Om51bGwsem9vbUFuZFBhbjpudWxsfSxzcGFjZToic3ZnIix0cmFuc2Zvcm06Q25lfSl9KTt2YXIgWXllLFVHdD1sKCgpPT57WDYoKTtZeWU9Rm4oe3Byb3BlcnRpZXM6e3hMaW5rQWN0dWF0ZTpudWxsLHhMaW5rQXJjUm9sZTpudWxsLHhMaW5rSHJlZjpudWxsLHhMaW5rUm9sZTpudWxsLHhMaW5rU2hvdzpudWxsLHhMaW5rVGl0bGU6bnVsbCx4TGlua1R5cGU6bnVsbH0sc3BhY2U6InhsaW5rIix0cmFuc2Zvcm0oZSx0KXtyZXR1cm4ieGxpbms6Iit0LnNsaWNlKDUpLnRvTG93ZXJDYXNlKCl9fSl9KTt2YXIgWnllLFdHdD1sKCgpPT57WDYoKTtHeWUoKTtaeWU9Rm4oe2F0dHJpYnV0ZXM6e3htbG5zeGxpbms6InhtbG5zOnhsaW5rIn0scHJvcGVydGllczp7eG1sbnNYTGluazpudWxsLHhtbG5zOm51bGx9LHNwYWNlOiJ4bWxucyIsdHJhbnNmb3JtOl9uZX0pfSk7dmFyIFh5ZSxHR3Q9bCgoKT0+e1g2KCk7WHllPUZuKHtwcm9wZXJ0aWVzOnt4bWxCYXNlOm51bGwseG1sTGFuZzpudWxsLHhtbFNwYWNlOm51bGx9LHNwYWNlOiJ4bWwiLHRyYW5zZm9ybShlLHQpe3JldHVybiJ4bWw6Iit0LnNsaWNlKDMpLnRvTG93ZXJDYXNlKCl9fSl9KTt2YXIgWUd0PWwoKCk9Pnt9KTtmdW5jdGlvbiBReWUoZSx0KXtsZXQgcj1nOSh0KSxhPXQsaT1lMTtpZihyIGluIGUubm9ybWFsKXJldHVybiBlLnByb3BlcnR5W2Uubm9ybWFsW3JdXTtpZihyLmxlbmd0aD40JiZyLnNsaWNlKDAsNCk9PT0iZGF0YSImJnhoYS50ZXN0KHQpKXtpZih0LmNoYXJBdCg0KT09PSItIil7bGV0IG89dC5zbGljZSg1KS5yZXBsYWNlKFpHdCx2aGEpO2E9ImRhdGEiK28uY2hhckF0KDApLnRvVXBwZXJDYXNlKCkrby5zbGljZSgxKX1lbHNle2xldCBvPXQuc2xpY2UoNCk7aWYoIVpHdC50ZXN0KG8pKXtsZXQgbj1vLnJlcGxhY2UoZ2hhLGJoYSk7bi5jaGFyQXQoMCkhPT0iLSImJihuPSItIituKSx0PSJkYXRhIitufX1pPVo2fXJldHVybiBuZXcgaShhLHQpfWZ1bmN0aW9uIGJoYShlKXtyZXR1cm4iLSIrZS50b0xvd2VyQ2FzZSgpfWZ1bmN0aW9uIHZoYShlKXtyZXR1cm4gZS5jaGFyQXQoMSkudG9VcHBlckNhc2UoKX12YXIgZ2hhLFpHdCx4aGEsWEd0PWwoKCk9PntWeWUoKTtxeWUoKTtTbmUoKTtnaGE9L1tBLVpdL2csWkd0PS8tW2Etel0vZyx4aGE9L15kYXRhWy1cdy46XSskL2l9KTt2YXIgUUd0LFRuZSxLeWU9bCgoKT0+e09HdCgpO0JHdCgpO3FHdCgpO1ZHdCgpO1VHdCgpO1dHdCgpO0dHdCgpO1lHdCgpO1hHdCgpO1NuZSgpO1FHdD1IeWUoW1V5ZSxIR3QsWXllLFp5ZSxYeWVdLCJodG1sIiksVG5lPUh5ZShbVXllLGpHdCxZeWUsWnllLFh5ZV0sInN2ZyIpfSk7ZnVuY3Rpb24gSnllKGUsdCl7aWYoZT1lLnJlcGxhY2UodC5zdWJzZXQ/U2hhKHQuc3Vic2V0KTp5aGEsYSksdC5zdWJzZXR8fHQuZXNjYXBlT25seSlyZXR1cm4gZTtyZXR1cm4gZS5yZXBsYWNlKHdoYSxyKS5yZXBsYWNlKE1oYSxhKTtmdW5jdGlvbiByKGksbyxuKXtyZXR1cm4gdC5mb3JtYXQoKGkuY2hhckNvZGVBdCgwKS01NTI5NikqMTAyNCtpLmNoYXJDb2RlQXQoMSktNTYzMjArNjU1MzYsbi5jaGFyQ29kZUF0KG8rMiksdCl9ZnVuY3Rpb24gYShpLG8sbil7cmV0dXJuIHQuZm9ybWF0KGkuY2hhckNvZGVBdCgwKSxuLmNoYXJDb2RlQXQobysxKSx0KX19ZnVuY3Rpb24gU2hhKGUpe2xldCB0PUtHdC5nZXQoZSk7cmV0dXJuIHR8fCh0PXpoYShlKSxLR3Quc2V0KGUsdCkpLHR9ZnVuY3Rpb24gemhhKGUpe2xldCB0PVtdLHI9LTE7Zm9yKDsrK3I8ZS5sZW5ndGg7KXQucHVzaChlW3JdLnJlcGxhY2Uoa2hhLCJcXCQmIikpO3JldHVybiBuZXcgUmVnRXhwKCIoPzoiK3Quam9pbigifCIpKyIpIiwiZyIpfXZhciB5aGEsd2hhLE1oYSxraGEsS0d0LEpHdD1sKCgpPT57eWhhPS9bIiYnPD5gXS9nLHdoYT0vW1x1RDgwMC1cdURCRkZdW1x1REMwMC1cdURGRkZdL2csTWhhPS9bXHgwMS1cdFx2XGZceDBFLVx4MUZceDdGXHg4MVx4OERceDhGXHg5MFx4OURceEEwLVx1RkZGRl0vZyxraGE9L1t8XFx7fSgpW1xdXiQrKj8uXS9nLEtHdD1uZXcgV2Vha01hcH0pO2Z1bmN0aW9uIGVZdChlLHQscil7bGV0IGE9IiYjeCIrZS50b1N0cmluZygxNikudG9VcHBlckNhc2UoKTtyZXR1cm4gciYmdCYmIUNoYS50ZXN0KFN0cmluZy5mcm9tQ2hhckNvZGUodCkpP2E6YSsiOyJ9dmFyIENoYSx0WXQ9bCgoKT0+e0NoYT0vW1xkQS1GYS1mXS99KTtmdW5jdGlvbiByWXQoZSx0LHIpe2xldCBhPSImIyIrU3RyaW5nKGUpO3JldHVybiByJiZ0JiYhX2hhLnRlc3QoU3RyaW5nLmZyb21DaGFyQ29kZSh0KSk/YTphKyI7In12YXIgX2hhLGFZdD1sKCgpPT57X2hhPS9cZC99KTt2YXIgaVl0LG9ZdD1sKCgpPT57aVl0PVsiQUVsaWciLCJBTVAiLCJBYWN1dGUiLCJBY2lyYyIsIkFncmF2ZSIsIkFyaW5nIiwiQXRpbGRlIiwiQXVtbCIsIkNPUFkiLCJDY2VkaWwiLCJFVEgiLCJFYWN1dGUiLCJFY2lyYyIsIkVncmF2ZSIsIkV1bWwiLCJHVCIsIklhY3V0ZSIsIkljaXJjIiwiSWdyYXZlIiwiSXVtbCIsIkxUIiwiTnRpbGRlIiwiT2FjdXRlIiwiT2NpcmMiLCJPZ3JhdmUiLCJPc2xhc2giLCJPdGlsZGUiLCJPdW1sIiwiUVVPVCIsIlJFRyIsIlRIT1JOIiwiVWFjdXRlIiwiVWNpcmMiLCJVZ3JhdmUiLCJVdW1sIiwiWWFjdXRlIiwiYWFjdXRlIiwiYWNpcmMiLCJhY3V0ZSIsImFlbGlnIiwiYWdyYXZlIiwiYW1wIiwiYXJpbmciLCJhdGlsZGUiLCJhdW1sIiwiYnJ2YmFyIiwiY2NlZGlsIiwiY2VkaWwiLCJjZW50IiwiY29weSIsImN1cnJlbiIsImRlZyIsImRpdmlkZSIsImVhY3V0ZSIsImVjaXJjIiwiZWdyYXZlIiwiZXRoIiwiZXVtbCIsImZyYWMxMiIsImZyYWMxNCIsImZyYWMzNCIsImd0IiwiaWFjdXRlIiwiaWNpcmMiLCJpZXhjbCIsImlncmF2ZSIsImlxdWVzdCIsIml1bWwiLCJsYXF1byIsImx0IiwibWFjciIsIm1pY3JvIiwibWlkZG90IiwibmJzcCIsIm5vdCIsIm50aWxkZSIsIm9hY3V0ZSIsIm9jaXJjIiwib2dyYXZlIiwib3JkZiIsIm9yZG0iLCJvc2xhc2giLCJvdGlsZGUiLCJvdW1sIiwicGFyYSIsInBsdXNtbiIsInBvdW5kIiwicXVvdCIsInJhcXVvIiwicmVnIiwic2VjdCIsInNoeSIsInN1cDEiLCJzdXAyIiwic3VwMyIsInN6bGlnIiwidGhvcm4iLCJ0aW1lcyIsInVhY3V0ZSIsInVjaXJjIiwidWdyYXZlIiwidW1sIiwidXVtbCIsInlhY3V0ZSIsInllbiIsInl1bWwiXX0pO3ZhciBMbmUsbll0PWwoKCk9PntMbmU9e25ic3A6Ilx4QTAiLGlleGNsOiJceEExIixjZW50OiJceEEyIixwb3VuZDoiXHhBMyIsY3VycmVuOiJceEE0Iix5ZW46Ilx4QTUiLGJydmJhcjoiXHhBNiIsc2VjdDoiXHhBNyIsdW1sOiJceEE4Iixjb3B5OiJceEE5IixvcmRmOiJceEFBIixsYXF1bzoiXHhBQiIsbm90OiJceEFDIixzaHk6Ilx4QUQiLHJlZzoiXHhBRSIsbWFjcjoiXHhBRiIsZGVnOiJceEIwIixwbHVzbW46Ilx4QjEiLHN1cDI6Ilx4QjIiLHN1cDM6Ilx4QjMiLGFjdXRlOiJceEI0IixtaWNybzoiXHhCNSIscGFyYToiXHhCNiIsbWlkZG90OiJceEI3IixjZWRpbDoiXHhCOCIsc3VwMToiXHhCOSIsb3JkbToiXHhCQSIscmFxdW86Ilx4QkIiLGZyYWMxNDoiXHhCQyIsZnJhYzEyOiJceEJEIixmcmFjMzQ6Ilx4QkUiLGlxdWVzdDoiXHhCRiIsQWdyYXZlOiJceEMwIixBYWN1dGU6Ilx4QzEiLEFjaXJjOiJceEMyIixBdGlsZGU6Ilx4QzMiLEF1bWw6Ilx4QzQiLEFyaW5nOiJceEM1IixBRWxpZzoiXHhDNiIsQ2NlZGlsOiJceEM3IixFZ3JhdmU6Ilx4QzgiLEVhY3V0ZToiXHhDOSIsRWNpcmM6Ilx4Q0EiLEV1bWw6Ilx4Q0IiLElncmF2ZToiXHhDQyIsSWFjdXRlOiJceENEIixJY2lyYzoiXHhDRSIsSXVtbDoiXHhDRiIsRVRIOiJceEQwIixOdGlsZGU6Ilx4RDEiLE9ncmF2ZToiXHhEMiIsT2FjdXRlOiJceEQzIixPY2lyYzoiXHhENCIsT3RpbGRlOiJceEQ1IixPdW1sOiJceEQ2Iix0aW1lczoiXHhENyIsT3NsYXNoOiJceEQ4IixVZ3JhdmU6Ilx4RDkiLFVhY3V0ZToiXHhEQSIsVWNpcmM6Ilx4REIiLFV1bWw6Ilx4REMiLFlhY3V0ZToiXHhERCIsVEhPUk46Ilx4REUiLHN6bGlnOiJceERGIixhZ3JhdmU6Ilx4RTAiLGFhY3V0ZToiXHhFMSIsYWNpcmM6Ilx4RTIiLGF0aWxkZToiXHhFMyIsYXVtbDoiXHhFNCIsYXJpbmc6Ilx4RTUiLGFlbGlnOiJceEU2IixjY2VkaWw6Ilx4RTciLGVncmF2ZToiXHhFOCIsZWFjdXRlOiJceEU5IixlY2lyYzoiXHhFQSIsZXVtbDoiXHhFQiIsaWdyYXZlOiJceEVDIixpYWN1dGU6Ilx4RUQiLGljaXJjOiJceEVFIixpdW1sOiJceEVGIixldGg6Ilx4RjAiLG50aWxkZToiXHhGMSIsb2dyYXZlOiJceEYyIixvYWN1dGU6Ilx4RjMiLG9jaXJjOiJceEY0IixvdGlsZGU6Ilx4RjUiLG91bWw6Ilx4RjYiLGRpdmlkZToiXHhGNyIsb3NsYXNoOiJceEY4Iix1Z3JhdmU6Ilx4RjkiLHVhY3V0ZToiXHhGQSIsdWNpcmM6Ilx4RkIiLHV1bWw6Ilx4RkMiLHlhY3V0ZToiXHhGRCIsdGhvcm46Ilx4RkUiLHl1bWw6Ilx4RkYiLGZub2Y6Ilx1MDE5MiIsQWxwaGE6Ilx1MDM5MSIsQmV0YToiXHUwMzkyIixHYW1tYToiXHUwMzkzIixEZWx0YToiXHUwMzk0IixFcHNpbG9uOiJcdTAzOTUiLFpldGE6Ilx1MDM5NiIsRXRhOiJcdTAzOTciLFRoZXRhOiJcdTAzOTgiLElvdGE6Ilx1MDM5OSIsS2FwcGE6Ilx1MDM5QSIsTGFtYmRhOiJcdTAzOUIiLE11OiJcdTAzOUMiLE51OiJcdTAzOUQiLFhpOiJcdTAzOUUiLE9taWNyb246Ilx1MDM5RiIsUGk6Ilx1MDNBMCIsUmhvOiJcdTAzQTEiLFNpZ21hOiJcdTAzQTMiLFRhdToiXHUwM0E0IixVcHNpbG9uOiJcdTAzQTUiLFBoaToiXHUwM0E2IixDaGk6Ilx1MDNBNyIsUHNpOiJcdTAzQTgiLE9tZWdhOiJcdTAzQTkiLGFscGhhOiJcdTAzQjEiLGJldGE6Ilx1MDNCMiIsZ2FtbWE6Ilx1MDNCMyIsZGVsdGE6Ilx1MDNCNCIsZXBzaWxvbjoiXHUwM0I1Iix6ZXRhOiJcdTAzQjYiLGV0YToiXHUwM0I3Iix0aGV0YToiXHUwM0I4Iixpb3RhOiJcdTAzQjkiLGthcHBhOiJcdTAzQkEiLGxhbWJkYToiXHUwM0JCIixtdToiXHUwM0JDIixudToiXHUwM0JEIix4aToiXHUwM0JFIixvbWljcm9uOiJcdTAzQkYiLHBpOiJcdTAzQzAiLHJobzoiXHUwM0MxIixzaWdtYWY6Ilx1MDNDMiIsc2lnbWE6Ilx1MDNDMyIsdGF1OiJcdTAzQzQiLHVwc2lsb246Ilx1MDNDNSIscGhpOiJcdTAzQzYiLGNoaToiXHUwM0M3Iixwc2k6Ilx1MDNDOCIsb21lZ2E6Ilx1MDNDOSIsdGhldGFzeW06Ilx1MDNEMSIsdXBzaWg6Ilx1MDNEMiIscGl2OiJcdTAzRDYiLGJ1bGw6Ilx1MjAyMiIsaGVsbGlwOiJcdTIwMjYiLHByaW1lOiJcdTIwMzIiLFByaW1lOiJcdTIwMzMiLG9saW5lOiJcdTIwM0UiLGZyYXNsOiJcdTIwNDQiLHdlaWVycDoiXHUyMTE4IixpbWFnZToiXHUyMTExIixyZWFsOiJcdTIxMUMiLHRyYWRlOiJcdTIxMjIiLGFsZWZzeW06Ilx1MjEzNSIsbGFycjoiXHUyMTkwIix1YXJyOiJcdTIxOTEiLHJhcnI6Ilx1MjE5MiIsZGFycjoiXHUyMTkzIixoYXJyOiJcdTIxOTQiLGNyYXJyOiJcdTIxQjUiLGxBcnI6Ilx1MjFEMCIsdUFycjoiXHUyMUQxIixyQXJyOiJcdTIxRDIiLGRBcnI6Ilx1MjFEMyIsaEFycjoiXHUyMUQ0Iixmb3JhbGw6Ilx1MjIwMCIscGFydDoiXHUyMjAyIixleGlzdDoiXHUyMjAzIixlbXB0eToiXHUyMjA1IixuYWJsYToiXHUyMjA3Iixpc2luOiJcdTIyMDgiLG5vdGluOiJcdTIyMDkiLG5pOiJcdTIyMEIiLHByb2Q6Ilx1MjIwRiIsc3VtOiJcdTIyMTEiLG1pbnVzOiJcdTIyMTIiLGxvd2FzdDoiXHUyMjE3IixyYWRpYzoiXHUyMjFBIixwcm9wOiJcdTIyMUQiLGluZmluOiJcdTIyMUUiLGFuZzoiXHUyMjIwIixhbmQ6Ilx1MjIyNyIsb3I6Ilx1MjIyOCIsY2FwOiJcdTIyMjkiLGN1cDoiXHUyMjJBIixpbnQ6Ilx1MjIyQiIsdGhlcmU0OiJcdTIyMzQiLHNpbToiXHUyMjNDIixjb25nOiJcdTIyNDUiLGFzeW1wOiJcdTIyNDgiLG5lOiJcdTIyNjAiLGVxdWl2OiJcdTIyNjEiLGxlOiJcdTIyNjQiLGdlOiJcdTIyNjUiLHN1YjoiXHUyMjgyIixzdXA6Ilx1MjI4MyIsbnN1YjoiXHUyMjg0IixzdWJlOiJcdTIyODYiLHN1cGU6Ilx1MjI4NyIsb3BsdXM6Ilx1MjI5NSIsb3RpbWVzOiJcdTIyOTciLHBlcnA6Ilx1MjJBNSIsc2RvdDoiXHUyMkM1IixsY2VpbDoiXHUyMzA4IixyY2VpbDoiXHUyMzA5IixsZmxvb3I6Ilx1MjMwQSIscmZsb29yOiJcdTIzMEIiLGxhbmc6Ilx1MjMyOSIscmFuZzoiXHUyMzJBIixsb3o6Ilx1MjVDQSIsc3BhZGVzOiJcdTI2NjAiLGNsdWJzOiJcdTI2NjMiLGhlYXJ0czoiXHUyNjY1IixkaWFtczoiXHUyNjY2IixxdW90OiciJyxhbXA6IiYiLGx0OiI8IixndDoiPiIsT0VsaWc6Ilx1MDE1MiIsb2VsaWc6Ilx1MDE1MyIsU2Nhcm9uOiJcdTAxNjAiLHNjYXJvbjoiXHUwMTYxIixZdW1sOiJcdTAxNzgiLGNpcmM6Ilx1MDJDNiIsdGlsZGU6Ilx1MDJEQyIsZW5zcDoiXHUyMDAyIixlbXNwOiJcdTIwMDMiLHRoaW5zcDoiXHUyMDA5Iix6d25qOiJcdTIwMEMiLHp3ajoiXHUyMDBEIixscm06Ilx1MjAwRSIscmxtOiJcdTIwMEYiLG5kYXNoOiJcdTIwMTMiLG1kYXNoOiJcdTIwMTQiLGxzcXVvOiJcdTIwMTgiLHJzcXVvOiJcdTIwMTkiLHNicXVvOiJcdTIwMUEiLGxkcXVvOiJcdTIwMUMiLHJkcXVvOiJcdTIwMUQiLGJkcXVvOiJcdTIwMUUiLGRhZ2dlcjoiXHUyMDIwIixEYWdnZXI6Ilx1MjAyMSIscGVybWlsOiJcdTIwMzAiLGxzYXF1bzoiXHUyMDM5Iixyc2FxdW86Ilx1MjAzQSIsZXVybzoiXHUyMEFDIn19KTt2YXIgc1l0LGxZdD1sKCgpPT57c1l0PVsiY2VudCIsImNvcHkiLCJkaXZpZGUiLCJndCIsImx0Iiwibm90IiwicGFyYSIsInRpbWVzIl19KTtmdW5jdGlvbiBkWXQoZSx0LHIsYSl7bGV0IGk9U3RyaW5nLmZyb21DaGFyQ29kZShlKTtpZihjWXQuY2FsbChld2UsaSkpe2xldCBvPWV3ZVtpXSxuPSImIitvO3JldHVybiByJiZpWXQuaW5jbHVkZXMobykmJiFzWXQuaW5jbHVkZXMobykmJighYXx8dCYmdCE9PTYxJiZUaGEudGVzdChTdHJpbmcuZnJvbUNoYXJDb2RlKHQpKSk/bjpuKyI7In1yZXR1cm4iIn12YXIgY1l0LGV3ZSxEbmUsVGhhLHVZdD1sKCgpPT57b1l0KCk7bll0KCk7bFl0KCk7Y1l0PXt9Lmhhc093blByb3BlcnR5LGV3ZT17fTtmb3IoRG5lIGluIExuZSljWXQuY2FsbChMbmUsRG5lKSYmKGV3ZVtMbmVbRG5lXV09RG5lKTtUaGE9L1teXGRBLVphLXpdL30pO2Z1bmN0aW9uIGZZdChlLHQscil7bGV0IGE9ZVl0KGUsdCxyLm9taXRPcHRpb25hbFNlbWljb2xvbnMpLGk7aWYoKHIudXNlTmFtZWRSZWZlcmVuY2VzfHxyLnVzZVNob3J0ZXN0UmVmZXJlbmNlcykmJihpPWRZdChlLHQsci5vbWl0T3B0aW9uYWxTZW1pY29sb25zLHIuYXR0cmlidXRlKSksKHIudXNlU2hvcnRlc3RSZWZlcmVuY2VzfHwhaSkmJnIudXNlU2hvcnRlc3RSZWZlcmVuY2VzKXtsZXQgbz1yWXQoZSx0LHIub21pdE9wdGlvbmFsU2VtaWNvbG9ucyk7by5sZW5ndGg8YS5sZW5ndGgmJihhPW8pfXJldHVybiBpJiYoIXIudXNlU2hvcnRlc3RSZWZlcmVuY2VzfHxpLmxlbmd0aDxhLmxlbmd0aCk/aTphfXZhciBwWXQ9bCgoKT0+e3RZdCgpO2FZdCgpO3VZdCgpfSk7ZnVuY3Rpb24gaFl0KGUpe3JldHVybiImI3giK2UudG9TdHJpbmcoMTYpLnRvVXBwZXJDYXNlKCkrIjsifXZhciBtWXQ9bCgoKT0+e30pO2Z1bmN0aW9uIGJjKGUsdCl7cmV0dXJuIEp5ZShlLE9iamVjdC5hc3NpZ24oe2Zvcm1hdDpmWXR9LHQpKX1mdW5jdGlvbiBkZzEoZSx0KXtyZXR1cm4gSnllKGUsT2JqZWN0LmFzc2lnbih7Zm9ybWF0OmhZdH0sdCkpfXZhciBnWXQ9bCgoKT0+e0pHdCgpO3BZdCgpO21ZdCgpfSk7dmFyIEFuZT1sKCgpPT57Z1l0KCl9KTtmdW5jdGlvbiB4WXQoZSx0LHIsYSl7cmV0dXJuIGEuc2V0dGluZ3MuYm9ndXNDb21tZW50cz8iPD8iK2JjKGUudmFsdWUsT2JqZWN0LmFzc2lnbih7fSxhLnNldHRpbmdzLmNoYXJhY3RlclJlZmVyZW5jZXMse3N1YnNldDpEaGF9KSkrIj4iOiI8IS0tIitlLnZhbHVlLnJlcGxhY2UoTGhhLGkpKyItLT4iO2Z1bmN0aW9uIGkobyl7cmV0dXJuIGJjKG8sT2JqZWN0LmFzc2lnbih7fSxhLnNldHRpbmdzLmNoYXJhY3RlclJlZmVyZW5jZXMse3N1YnNldDpBaGF9KSl9fXZhciBMaGEsRGhhLEFoYSxiWXQ9bCgoKT0+e0FuZSgpO0xoYT0vXj58Xi0+fDwhLS18LS0+fC0tIT58PCEtJC9nLERoYT1bIj4iXSxBaGE9WyI8IiwiPiJdfSk7ZnVuY3Rpb24gdll0KGUsdCxyLGEpe3JldHVybiI8ISIrKGEuc2V0dGluZ3MudXBwZXJEb2N0eXBlPyJET0NUWVBFIjoiZG9jdHlwZSIpKyhhLnNldHRpbmdzLnRpZ2h0RG9jdHlwZT8iIjoiICIpKyJodG1sPiJ9dmFyIHlZdD1sKCgpPT57fSk7ZnVuY3Rpb24geGcxKGUpe2xldCB0PVtdLHI9U3RyaW5nKGV8fCIiKSxhPXIuaW5kZXhPZigiLCIpLGk9MCxvPSExO2Zvcig7IW87KXthPT09LTEmJihhPXIubGVuZ3RoLG89ITApO2xldCBuPXIuc2xpY2UoaSxhKS50cmltKCk7KG58fCFvKSYmdC5wdXNoKG4pLGk9YSsxLGE9ci5pbmRleE9mKCIsIixpKX1yZXR1cm4gdH1mdW5jdGlvbiB3WXQoZSx0KXtsZXQgcj10fHx7fTtyZXR1cm4oZVtlLmxlbmd0aC0xXT09PSIiP1suLi5lLCIiXTplKS5qb2luKChyLnBhZFJpZ2h0PyIgIjoiIikrIiwiKyhyLnBhZExlZnQ9PT0hMT8iIjoiICIpKS50cmltKCl9dmFyIE1ZdD1sKCgpPT57fSk7ZnVuY3Rpb24gdmcxKGUpe2xldCB0PVN0cmluZyhlfHwiIikudHJpbSgpO3JldHVybiB0P3Quc3BsaXQoL1sgXHRcblxyXGZdKy9nKTpbXX1mdW5jdGlvbiBrWXQoZSl7cmV0dXJuIGUuam9pbigiICIpLnRyaW0oKX12YXIgU1l0PWwoKCk9Pnt9KTtmdW5jdGlvbiBRNihlKXtyZXR1cm4gdHlwZW9mIGU9PSJvYmplY3QiP2UudHlwZT09PSJ0ZXh0Ij96WXQoZS52YWx1ZSk6ITE6ell0KGUpfWZ1bmN0aW9uIHpZdChlKXtyZXR1cm4gZS5yZXBsYWNlKEVoYSwiIik9PT0iIn12YXIgRWhhLENZdD1sKCgpPT57RWhhPS9bIFx0XG5cZlxyXS9nfSk7dmFyIEVuZT1sKCgpPT57Q1l0KCl9KTtmdW5jdGlvbiBfWXQoZSl7cmV0dXJuIHQ7ZnVuY3Rpb24gdChyLGEsaSl7bGV0IG89cj9yLmNoaWxkcmVuOiRoYSxuPShhfHwwKStlLHM9b1tuXTtpZighaSlmb3IoO3MmJlE2KHMpOyluKz1lLHM9b1tuXTtyZXR1cm4gc319dmFyIGlpLHR3ZSwkaGEscndlPWwoKCk9PntFbmUoKTtpaT1fWXQoMSksdHdlPV9ZdCgtMSksJGhhPVtdfSk7ZnVuY3Rpb24gJG5lKGUpe3JldHVybiB0O2Z1bmN0aW9uIHQocixhLGkpe3JldHVybiBQaGEuY2FsbChlLHIudGFnTmFtZSkmJmVbci50YWdOYW1lXShyLGEsaSl9fXZhciBQaGEsYXdlPWwoKCk9PntQaGE9e30uaGFzT3duUHJvcGVydHl9KTtmdW5jdGlvbiBpd2UoZSx0LHIpe2xldCBhPWlpKHIsdCwhMCk7cmV0dXJuIWF8fGEudHlwZSE9PSJjb21tZW50IiYmIShhLnR5cGU9PT0idGV4dCImJlE2KGEudmFsdWUuY2hhckF0KDApKSl9ZnVuY3Rpb24gSWhhKGUsdCxyKXtsZXQgYT1paShyLHQpO3JldHVybiFhfHxhLnR5cGUhPT0iY29tbWVudCJ9ZnVuY3Rpb24gTmhhKGUsdCxyKXtsZXQgYT1paShyLHQpO3JldHVybiFhfHxhLnR5cGUhPT0iY29tbWVudCJ9ZnVuY3Rpb24gRmhhKGUsdCxyKXtsZXQgYT1paShyLHQpO3JldHVybiBhP2EudHlwZT09PSJlbGVtZW50IiYmKGEudGFnTmFtZT09PSJhZGRyZXNzInx8YS50YWdOYW1lPT09ImFydGljbGUifHxhLnRhZ05hbWU9PT0iYXNpZGUifHxhLnRhZ05hbWU9PT0iYmxvY2txdW90ZSJ8fGEudGFnTmFtZT09PSJkZXRhaWxzInx8YS50YWdOYW1lPT09ImRpdiJ8fGEudGFnTmFtZT09PSJkbCJ8fGEudGFnTmFtZT09PSJmaWVsZHNldCJ8fGEudGFnTmFtZT09PSJmaWdjYXB0aW9uInx8YS50YWdOYW1lPT09ImZpZ3VyZSJ8fGEudGFnTmFtZT09PSJmb290ZXIifHxhLnRhZ05hbWU9PT0iZm9ybSJ8fGEudGFnTmFtZT09PSJoMSJ8fGEudGFnTmFtZT09PSJoMiJ8fGEudGFnTmFtZT09PSJoMyJ8fGEudGFnTmFtZT09PSJoNCJ8fGEudGFnTmFtZT09PSJoNSJ8fGEudGFnTmFtZT09PSJoNiJ8fGEudGFnTmFtZT09PSJoZWFkZXIifHxhLnRhZ05hbWU9PT0iaGdyb3VwInx8YS50YWdOYW1lPT09ImhyInx8YS50YWdOYW1lPT09Im1haW4ifHxhLnRhZ05hbWU9PT0ibWVudSJ8fGEudGFnTmFtZT09PSJuYXYifHxhLnRhZ05hbWU9PT0ib2wifHxhLnRhZ05hbWU9PT0icCJ8fGEudGFnTmFtZT09PSJwcmUifHxhLnRhZ05hbWU9PT0ic2VjdGlvbiJ8fGEudGFnTmFtZT09PSJ0YWJsZSJ8fGEudGFnTmFtZT09PSJ1bCIpOiFyfHwhKHIudHlwZT09PSJlbGVtZW50IiYmKHIudGFnTmFtZT09PSJhInx8ci50YWdOYW1lPT09ImF1ZGlvInx8ci50YWdOYW1lPT09ImRlbCJ8fHIudGFnTmFtZT09PSJpbnMifHxyLnRhZ05hbWU9PT0ibWFwInx8ci50YWdOYW1lPT09Im5vc2NyaXB0Inx8ci50YWdOYW1lPT09InZpZGVvIikpfWZ1bmN0aW9uIE9oYShlLHQscil7bGV0IGE9aWkocix0KTtyZXR1cm4hYXx8YS50eXBlPT09ImVsZW1lbnQiJiZhLnRhZ05hbWU9PT0ibGkifWZ1bmN0aW9uIFJoYShlLHQscil7bGV0IGE9aWkocix0KTtyZXR1cm4hIShhJiZhLnR5cGU9PT0iZWxlbWVudCImJihhLnRhZ05hbWU9PT0iZHQifHxhLnRhZ05hbWU9PT0iZGQiKSl9ZnVuY3Rpb24gQmhhKGUsdCxyKXtsZXQgYT1paShyLHQpO3JldHVybiFhfHxhLnR5cGU9PT0iZWxlbWVudCImJihhLnRhZ05hbWU9PT0iZHQifHxhLnRhZ05hbWU9PT0iZGQiKX1mdW5jdGlvbiBUWXQoZSx0LHIpe2xldCBhPWlpKHIsdCk7cmV0dXJuIWF8fGEudHlwZT09PSJlbGVtZW50IiYmKGEudGFnTmFtZT09PSJycCJ8fGEudGFnTmFtZT09PSJydCIpfWZ1bmN0aW9uIEhoYShlLHQscil7bGV0IGE9aWkocix0KTtyZXR1cm4hYXx8YS50eXBlPT09ImVsZW1lbnQiJiZhLnRhZ05hbWU9PT0ib3B0Z3JvdXAifWZ1bmN0aW9uIHFoYShlLHQscil7bGV0IGE9aWkocix0KTtyZXR1cm4hYXx8YS50eXBlPT09ImVsZW1lbnQiJiYoYS50YWdOYW1lPT09Im9wdGlvbiJ8fGEudGFnTmFtZT09PSJvcHRncm91cCIpfWZ1bmN0aW9uIGpoYShlLHQscil7bGV0IGE9aWkocix0KTtyZXR1cm4hIShhJiZhLnR5cGU9PT0iZWxlbWVudCImJihhLnRhZ05hbWU9PT0idGJvZHkifHxhLnRhZ05hbWU9PT0idGZvb3QiKSl9ZnVuY3Rpb24gVmhhKGUsdCxyKXtsZXQgYT1paShyLHQpO3JldHVybiFhfHxhLnR5cGU9PT0iZWxlbWVudCImJihhLnRhZ05hbWU9PT0idGJvZHkifHxhLnRhZ05hbWU9PT0idGZvb3QiKX1mdW5jdGlvbiBVaGEoZSx0LHIpe3JldHVybiFpaShyLHQpfWZ1bmN0aW9uIFdoYShlLHQscil7bGV0IGE9aWkocix0KTtyZXR1cm4hYXx8YS50eXBlPT09ImVsZW1lbnQiJiZhLnRhZ05hbWU9PT0idHIifWZ1bmN0aW9uIExZdChlLHQscil7bGV0IGE9aWkocix0KTtyZXR1cm4hYXx8YS50eXBlPT09ImVsZW1lbnQiJiYoYS50YWdOYW1lPT09InRkInx8YS50YWdOYW1lPT09InRoIil9dmFyIGp5LG93ZT1sKCgpPT57RW5lKCk7cndlKCk7YXdlKCk7ank9JG5lKHtib2R5Ok5oYSxjYXB0aW9uOml3ZSxjb2xncm91cDppd2UsZGQ6QmhhLGR0OlJoYSxoZWFkOml3ZSxodG1sOkloYSxsaTpPaGEsb3B0Z3JvdXA6SGhhLG9wdGlvbjpxaGEscDpGaGEscnA6VFl0LHJ0OlRZdCx0Ym9keTpWaGEsdGQ6TFl0LHRmb290OlVoYSx0aDpMWXQsdGhlYWQ6amhhLHRyOldoYX0pfSk7ZnVuY3Rpb24gR2hhKGUpe2xldCB0PWlpKGUsLTEpO3JldHVybiF0fHx0LnR5cGUhPT0iY29tbWVudCJ9ZnVuY3Rpb24gWWhhKGUpe2xldCB0PW5ldyBTZXQ7Zm9yKGxldCBhIG9mIGUuY2hpbGRyZW4paWYoYS50eXBlPT09ImVsZW1lbnQiJiYoYS50YWdOYW1lPT09ImJhc2UifHxhLnRhZ05hbWU9PT0idGl0bGUiKSl7aWYodC5oYXMoYS50YWdOYW1lKSlyZXR1cm4hMTt0LmFkZChhLnRhZ05hbWUpfWxldCByPWUuY2hpbGRyZW5bMF07cmV0dXJuIXJ8fHIudHlwZT09PSJlbGVtZW50In1mdW5jdGlvbiBaaGEoZSl7bGV0IHQ9aWkoZSwtMSwhMCk7cmV0dXJuIXR8fHQudHlwZSE9PSJjb21tZW50IiYmISh0LnR5cGU9PT0idGV4dCImJlE2KHQudmFsdWUuY2hhckF0KDApKSkmJiEodC50eXBlPT09ImVsZW1lbnQiJiYodC50YWdOYW1lPT09Im1ldGEifHx0LnRhZ05hbWU9PT0ibGluayJ8fHQudGFnTmFtZT09PSJzY3JpcHQifHx0LnRhZ05hbWU9PT0ic3R5bGUifHx0LnRhZ05hbWU9PT0idGVtcGxhdGUiKSl9ZnVuY3Rpb24gWGhhKGUsdCxyKXtsZXQgYT10d2Uocix0KSxpPWlpKGUsLTEsITApO3JldHVybiByJiZhJiZhLnR5cGU9PT0iZWxlbWVudCImJmEudGFnTmFtZT09PSJjb2xncm91cCImJmp5KGEsci5jaGlsZHJlbi5pbmRleE9mKGEpLHIpPyExOiEhKGkmJmkudHlwZT09PSJlbGVtZW50IiYmaS50YWdOYW1lPT09ImNvbCIpfWZ1bmN0aW9uIFFoYShlLHQscil7bGV0IGE9dHdlKHIsdCksaT1paShlLC0xKTtyZXR1cm4gciYmYSYmYS50eXBlPT09ImVsZW1lbnQiJiYoYS50YWdOYW1lPT09InRoZWFkInx8YS50YWdOYW1lPT09InRib2R5IikmJmp5KGEsci5jaGlsZHJlbi5pbmRleE9mKGEpLHIpPyExOiEhKGkmJmkudHlwZT09PSJlbGVtZW50IiYmaS50YWdOYW1lPT09InRyIil9dmFyIERZdCxBWXQ9bCgoKT0+e0VuZSgpO3J3ZSgpO293ZSgpO2F3ZSgpO0RZdD0kbmUoe2JvZHk6WmhhLGNvbGdyb3VwOlhoYSxoZWFkOlloYSxodG1sOkdoYSx0Ym9keTpRaGF9KX0pO2Z1bmN0aW9uIEVZdChlLHQscixhKXtsZXQgaT1hLnNjaGVtYSxvPWkuc3BhY2U9PT0ic3ZnIj8hMTphLnNldHRpbmdzLm9taXRPcHRpb25hbFRhZ3Msbj1pLnNwYWNlPT09InN2ZyI/YS5zZXR0aW5ncy5jbG9zZUVtcHR5RWxlbWVudHM6YS5zZXR0aW5ncy52b2lkcy5pbmNsdWRlcyhlLnRhZ05hbWUudG9Mb3dlckNhc2UoKSkscz1bXSxjO2kuc3BhY2U9PT0iaHRtbCImJmUudGFnTmFtZT09PSJzdmciJiYoYS5zY2hlbWE9VG5lKTtsZXQgZD1LaGEoYSxlLnByb3BlcnRpZXMpLGY9YS5hbGwoaS5zcGFjZT09PSJodG1sIiYmZS50YWdOYW1lPT09InRlbXBsYXRlIj9lLmNvbnRlbnQ6ZSk7cmV0dXJuIGEuc2NoZW1hPWksZiYmKG49ITEpLChkfHwhb3x8IURZdChlLHQscikpJiYocy5wdXNoKCI8IixlLnRhZ05hbWUsZD8iICIrZDoiIiksbiYmKGkuc3BhY2U9PT0ic3ZnInx8YS5zZXR0aW5ncy5jbG9zZVNlbGZDbG9zaW5nKSYmKGM9ZC5jaGFyQXQoZC5sZW5ndGgtMSksKCFhLnNldHRpbmdzLnRpZ2h0U2VsZkNsb3Npbmd8fGM9PT0iLyJ8fGMmJmMhPT0nIicmJmMhPT0iJyIpJiZzLnB1c2goIiAiKSxzLnB1c2goIi8iKSkscy5wdXNoKCI+IikpLHMucHVzaChmKSwhbiYmKCFvfHwhankoZSx0LHIpKSYmcy5wdXNoKCI8LyIrZS50YWdOYW1lKyI+Iikscy5qb2luKCIiKX1mdW5jdGlvbiBLaGEoZSx0KXtsZXQgcj1bXSxhPS0xLGk7aWYodCl7Zm9yKGkgaW4gdClpZih0W2ldIT09bnVsbCYmdFtpXSE9PXZvaWQgMCl7bGV0IG89SmhhKGUsaSx0W2ldKTtvJiZyLnB1c2gobyl9fWZvcig7KythPHIubGVuZ3RoOyl7bGV0IG89ZS5zZXR0aW5ncy50aWdodEF0dHJpYnV0ZXM/clthXS5jaGFyQXQoclthXS5sZW5ndGgtMSk6dm9pZCAwO2EhPT1yLmxlbmd0aC0xJiZvIT09JyInJiZvIT09IiciJiYoclthXSs9IiAiKX1yZXR1cm4gci5qb2luKCIiKX1mdW5jdGlvbiBKaGEoZSx0LHIpe2xldCBhPVF5ZShlLnNjaGVtYSx0KSxpPWUuc2V0dGluZ3MuYWxsb3dQYXJzZUVycm9ycyYmZS5zY2hlbWEuc3BhY2U9PT0iaHRtbCI/MDoxLG89ZS5zZXR0aW5ncy5hbGxvd0Rhbmdlcm91c0NoYXJhY3RlcnM/MDoxLG49ZS5xdW90ZSxzO2lmKGEub3ZlcmxvYWRlZEJvb2xlYW4mJihyPT09YS5hdHRyaWJ1dGV8fHI9PT0iIik/cj0hMDooYS5ib29sZWFufHxhLm92ZXJsb2FkZWRCb29sZWFuKSYmKHR5cGVvZiByIT0ic3RyaW5nInx8cj09PWEuYXR0cmlidXRlfHxyPT09IiIpJiYocj0hIXIpLHI9PW51bGx8fHI9PT0hMXx8dHlwZW9mIHI9PSJudW1iZXIiJiZOdW1iZXIuaXNOYU4ocikpcmV0dXJuIiI7bGV0IGM9YmMoYS5hdHRyaWJ1dGUsT2JqZWN0LmFzc2lnbih7fSxlLnNldHRpbmdzLmNoYXJhY3RlclJlZmVyZW5jZXMse3N1YnNldDpQbmUubmFtZVtpXVtvXX0pKTtyZXR1cm4gcj09PSEwfHwocj1BcnJheS5pc0FycmF5KHIpPyhhLmNvbW1hU2VwYXJhdGVkP3dZdDprWXQpKHIse3BhZExlZnQ6IWUuc2V0dGluZ3MudGlnaHRDb21tYVNlcGFyYXRlZExpc3RzfSk6U3RyaW5nKHIpLGUuc2V0dGluZ3MuY29sbGFwc2VFbXB0eUF0dHJpYnV0ZXMmJiFyKT9jOihlLnNldHRpbmdzLnByZWZlclVucXVvdGVkJiYocz1iYyhyLE9iamVjdC5hc3NpZ24oe30sZS5zZXR0aW5ncy5jaGFyYWN0ZXJSZWZlcmVuY2VzLHthdHRyaWJ1dGU6ITAsc3Vic2V0OlBuZS51bnF1b3RlZFtpXVtvXX0pKSkscyE9PXImJihlLnNldHRpbmdzLnF1b3RlU21hcnQmJmE5KHIsbik+YTkocixlLmFsdGVybmF0aXZlKSYmKG49ZS5hbHRlcm5hdGl2ZSkscz1uK2JjKHIsT2JqZWN0LmFzc2lnbih7fSxlLnNldHRpbmdzLmNoYXJhY3RlclJlZmVyZW5jZXMse3N1YnNldDoobj09PSInIj9QbmUuc2luZ2xlOlBuZS5kb3VibGUpW2ldW29dLGF0dHJpYnV0ZTohMH0pKStuKSxjKyhzJiYiPSIrcykpfXZhciBQbmUsJFl0PWwoKCk9PntVYmUoKTtNWXQoKTtLeWUoKTtTWXQoKTtBbmUoKTtvd2UoKTtBWXQoKTtQbmU9e25hbWU6W1tgCQpcZlxyICYvPT5gLnNwbGl0KCIiKSxgCQpcZlxyICImJy89PlxgYC5zcGxpdCgiIildLFtgXDAJClxmXHIgIiYnLzw9PmAuc3BsaXQoIiIpLGBcMAkKXGZcciAiJicvPD0+XGBgLnNwbGl0KCIiKV1dLHVucXVvdGVkOltbYAkKXGZcciAmPmAuc3BsaXQoIiIpLGBcMAkKXGZcciAiJic8PT5cYGAuc3BsaXQoIiIpXSxbYFwwCQpcZlxyICImJzw9PlxgYC5zcGxpdCgiIiksYFwwCQpcZlxyICImJzw9PlxgYC5zcGxpdCgiIildXSxzaW5nbGU6W1siJiciLnNwbGl0KCIiKSwiXCImJ2AiLnNwbGl0KCIiKV0sWyJcMCYnIi5zcGxpdCgiIiksIlwwXCImJ2AiLnNwbGl0KCIiKV1dLGRvdWJsZTpbWyciJicuc3BsaXQoIiIpLCJcIiYnYCIuc3BsaXQoIiIpXSxbJ1wwIiYnLnNwbGl0KCIiKSwiXDBcIiYnYCIuc3BsaXQoIiIpXV19fSk7ZnVuY3Rpb24gSW5lKGUsdCxyLGEpe3JldHVybiByJiZyLnR5cGU9PT0iZWxlbWVudCImJihyLnRhZ05hbWU9PT0ic2NyaXB0Inx8ci50YWdOYW1lPT09InN0eWxlIik/ZS52YWx1ZTpiYyhlLnZhbHVlLE9iamVjdC5hc3NpZ24oe30sYS5zZXR0aW5ncy5jaGFyYWN0ZXJSZWZlcmVuY2VzLHtzdWJzZXQ6ZW1hfSkpfXZhciBlbWEsbndlPWwoKCk9PntBbmUoKTtlbWE9WyI8IiwiJiJdfSk7ZnVuY3Rpb24gUFl0KGUsdCxyLGEpe3JldHVybiBhLnNldHRpbmdzLmFsbG93RGFuZ2Vyb3VzSHRtbD9lLnZhbHVlOkluZShlLHQscixhKX12YXIgSVl0PWwoKCk9Pntud2UoKX0pO2Z1bmN0aW9uIE5ZdChlLHQscixhKXtyZXR1cm4gYS5hbGwoZSl9dmFyIEZZdD1sKCgpPT57fSk7ZnVuY3Rpb24gdG1hKGUpe3Rocm93IG5ldyBFcnJvcigiRXhwZWN0ZWQgbm9kZSwgbm90IGAiK2UrImAiKX1mdW5jdGlvbiBybWEoZSl7bGV0IHQ9ZTt0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBjb21waWxlIHVua25vd24gbm9kZSBgIit0LnR5cGUrImAiKX12YXIgT1l0LFJZdD1sKCgpPT57cnZlKCk7Yll0KCk7eVl0KCk7JFl0KCk7SVl0KCk7Rll0KCk7bndlKCk7T1l0PVBvZSgidHlwZSIse2ludmFsaWQ6dG1hLHVua25vd246cm1hLGhhbmRsZXJzOntjb21tZW50OnhZdCxkb2N0eXBlOnZZdCxlbGVtZW50OkVZdCxyYXc6UFl0LHJvb3Q6Tll0LHRleHQ6SW5lfX0pfSk7ZnVuY3Rpb24gc3dlKGUsdCl7bGV0IHI9dHx8YW1hLGE9ci5xdW90ZXx8JyInLGk9YT09PSciJz8iJyI6JyInO2lmKGEhPT0nIicmJmEhPT0iJyIpdGhyb3cgbmV3IEVycm9yKCJJbnZhbGlkIHF1b3RlIGAiK2ErImAsIGV4cGVjdGVkIGAnYCBvciBgXCJgIik7cmV0dXJue29uZTpubWEsYWxsOnNtYSxzZXR0aW5nczp7b21pdE9wdGlvbmFsVGFnczpyLm9taXRPcHRpb25hbFRhZ3N8fCExLGFsbG93UGFyc2VFcnJvcnM6ci5hbGxvd1BhcnNlRXJyb3JzfHwhMSxhbGxvd0Rhbmdlcm91c0NoYXJhY3RlcnM6ci5hbGxvd0Rhbmdlcm91c0NoYXJhY3RlcnN8fCExLHF1b3RlU21hcnQ6ci5xdW90ZVNtYXJ0fHwhMSxwcmVmZXJVbnF1b3RlZDpyLnByZWZlclVucXVvdGVkfHwhMSx0aWdodEF0dHJpYnV0ZXM6ci50aWdodEF0dHJpYnV0ZXN8fCExLHVwcGVyRG9jdHlwZTpyLnVwcGVyRG9jdHlwZXx8ITEsdGlnaHREb2N0eXBlOnIudGlnaHREb2N0eXBlfHwhMSxib2d1c0NvbW1lbnRzOnIuYm9ndXNDb21tZW50c3x8ITEsdGlnaHRDb21tYVNlcGFyYXRlZExpc3RzOnIudGlnaHRDb21tYVNlcGFyYXRlZExpc3RzfHwhMSx0aWdodFNlbGZDbG9zaW5nOnIudGlnaHRTZWxmQ2xvc2luZ3x8ITEsY29sbGFwc2VFbXB0eUF0dHJpYnV0ZXM6ci5jb2xsYXBzZUVtcHR5QXR0cmlidXRlc3x8ITEsYWxsb3dEYW5nZXJvdXNIdG1sOnIuYWxsb3dEYW5nZXJvdXNIdG1sfHwhMSx2b2lkczpyLnZvaWRzfHxOR3QsY2hhcmFjdGVyUmVmZXJlbmNlczpyLmNoYXJhY3RlclJlZmVyZW5jZXN8fGltYSxjbG9zZVNlbGZDbG9zaW5nOnIuY2xvc2VTZWxmQ2xvc2luZ3x8ITEsY2xvc2VFbXB0eUVsZW1lbnRzOnIuY2xvc2VFbXB0eUVsZW1lbnRzfHwhMX0sc2NoZW1hOnIuc3BhY2U9PT0ic3ZnIj9UbmU6UUd0LHF1b3RlOmEsYWx0ZXJuYXRpdmU6aX0ub25lKEFycmF5LmlzQXJyYXkoZSk/e3R5cGU6InJvb3QiLGNoaWxkcmVuOmV9OmUsdm9pZCAwLHZvaWQgMCl9ZnVuY3Rpb24gbm1hKGUsdCxyKXtyZXR1cm4gT1l0KGUsdCxyLHRoaXMpfWZ1bmN0aW9uIHNtYShlKXtsZXQgdD1bXSxyPWUmJmUuY2hpbGRyZW58fG9tYSxhPS0xO2Zvcig7KythPHIubGVuZ3RoOyl0W2FdPXRoaXMub25lKHJbYV0sYSxlKTtyZXR1cm4gdC5qb2luKCIiKX12YXIgYW1hLGltYSxvbWEsQll0PWwoKCk9PntGR3QoKTtLeWUoKTtSWXQoKTthbWE9e30saW1hPXt9LG9tYT1bXX0pO3ZhciBIWXQ9bCgoKT0+e0JZdCgpfSk7ZnVuY3Rpb24geDkoZSl7bGV0IHQ9dGhpcyx7aGFuZGxlcnM6cixzYW5pdGl6ZTphLC4uLml9PWV8fGxtYSxvPSExLG47dHlwZW9mIGE9PSJib29sZWFuIj9vPSFhOmEmJihuPWEpLHQuY29tcGlsZXI9cztmdW5jdGlvbiBzKGMsZCl7bGV0IGY9UnllKGMse2hhbmRsZXJzOnIsYWxsb3dEYW5nZXJvdXNIdG1sOm99KSx1PW8/ZjokeWUoZixuKSxwPXN3ZSh1LHsuLi5pLGFsbG93RGFuZ2Vyb3VzSHRtbDpvfSk7cmV0dXJuIGQuZXh0bmFtZSYmKGQuZXh0bmFtZT0iLmh0bWwiKSxjJiZjLnR5cGU9PT0icm9vdCImJnAmJi9bXlxyXG5dLy50ZXN0KHAuY2hhckF0KHAubGVuZ3RoLTEpKT9wK2AKYDpwfX12YXIgbG1hLHFZdD1sKCgpPT57QVd0KCk7SUd0KCk7SFl0KCk7bG1hPXt9fSk7dmFyIGpZdD1sKCgpPT57cVl0KCl9KTtmdW5jdGlvbiBiOShlKXtsZXQgdD10aGlzO3QuY29tcGlsZXI9cjtmdW5jdGlvbiByKGEpe3JldHVybiBrdmUoYSx7Li4udC5kYXRhKCJzZXR0aW5ncyIpLC4uLmUsZXh0ZW5zaW9uczp0LmRhdGEoInRvTWFya2Rvd25FeHRlbnNpb25zIil8fFtdfSl9fXZhciBWWXQ9bCgoKT0+e1ZvZSgpfSk7dmFyIFVZdD1sKCgpPT57Vll0KCl9KTtmdW5jdGlvbiBjbWEoZSl7Zm9yKHZhciB0PTE7dDxhcmd1bWVudHMubGVuZ3RoO3QrKyl7dmFyIHI9YXJndW1lbnRzW3RdO2Zvcih2YXIgYSBpbiByKXIuaGFzT3duUHJvcGVydHkoYSkmJihlW2FdPXJbYV0pfXJldHVybiBlfWZ1bmN0aW9uIGx3ZShlLHQpe3JldHVybiBBcnJheSh0KzEpLmpvaW4oZSl9ZnVuY3Rpb24gV1l0KGUpe3JldHVybiBlLnJlcGxhY2UoL15cbiovLCIiKX1mdW5jdGlvbiBHWXQoZSl7Zm9yKHZhciB0PWUubGVuZ3RoO3Q+MCYmZVt0LTFdPT09YApgOyl0LS07cmV0dXJuIGUuc3Vic3RyaW5nKDAsdCl9ZnVuY3Rpb24gWVl0KGUpe3JldHVybiBHWXQoV1l0KGUpKX1mdW5jdGlvbiBjd2UoZSl7cmV0dXJuIGR3ZShlLGRtYSl9ZnVuY3Rpb24gWFl0KGUpe3JldHVybiBkd2UoZSxaWXQpfWZ1bmN0aW9uIHVtYShlKXtyZXR1cm4gS1l0KGUsWll0KX1mdW5jdGlvbiBmbWEoZSl7cmV0dXJuIGR3ZShlLFFZdCl9ZnVuY3Rpb24gcG1hKGUpe3JldHVybiBLWXQoZSxRWXQpfWZ1bmN0aW9uIGR3ZShlLHQpe3JldHVybiB0LmluZGV4T2YoZS5ub2RlTmFtZSk+PTB9ZnVuY3Rpb24gS1l0KGUsdCl7cmV0dXJuIGUuZ2V0RWxlbWVudHNCeVRhZ05hbWUmJnQuc29tZShmdW5jdGlvbihyKXtyZXR1cm4gZS5nZXRFbGVtZW50c0J5VGFnTmFtZShyKS5sZW5ndGh9KX1mdW5jdGlvbiBObmUoZSl7cmV0dXJuIGU/ZS5yZXBsYWNlKC8oXG4rXHMqKSsvZyxgCmApOiIifWZ1bmN0aW9uIEpZdChlKXt0aGlzLm9wdGlvbnM9ZSx0aGlzLl9rZWVwPVtdLHRoaXMuX3JlbW92ZT1bXSx0aGlzLmJsYW5rUnVsZT17cmVwbGFjZW1lbnQ6ZS5ibGFua1JlcGxhY2VtZW50fSx0aGlzLmtlZXBSZXBsYWNlbWVudD1lLmtlZXBSZXBsYWNlbWVudCx0aGlzLmRlZmF1bHRSdWxlPXtyZXBsYWNlbWVudDplLmRlZmF1bHRSZXBsYWNlbWVudH0sdGhpcy5hcnJheT1bXTtmb3IodmFyIHQgaW4gZS5ydWxlcyl0aGlzLmFycmF5LnB1c2goZS5ydWxlc1t0XSl9ZnVuY3Rpb24gdXdlKGUsdCxyKXtmb3IodmFyIGE9MDthPGUubGVuZ3RoO2ErKyl7dmFyIGk9ZVthXTtpZihobWEoaSx0LHIpKXJldHVybiBpfX1mdW5jdGlvbiBobWEoZSx0LHIpe3ZhciBhPWUuZmlsdGVyO2lmKHR5cGVvZiBhPT0ic3RyaW5nIil7aWYoYT09PXQubm9kZU5hbWUudG9Mb3dlckNhc2UoKSlyZXR1cm4hMH1lbHNlIGlmKEFycmF5LmlzQXJyYXkoYSkpe2lmKGEuaW5kZXhPZih0Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkpPi0xKXJldHVybiEwfWVsc2UgaWYodHlwZW9mIGE9PSJmdW5jdGlvbiIpe2lmKGEuY2FsbChlLHQscikpcmV0dXJuITB9ZWxzZSB0aHJvdyBuZXcgVHlwZUVycm9yKCJgZmlsdGVyYCBuZWVkcyB0byBiZSBhIHN0cmluZywgYXJyYXksIG9yIGZ1bmN0aW9uIil9ZnVuY3Rpb24gbW1hKGUpe3ZhciB0PWUuZWxlbWVudCxyPWUuaXNCbG9jayxhPWUuaXNWb2lkLGk9ZS5pc1ByZXx8ZnVuY3Rpb24odSl7cmV0dXJuIHUubm9kZU5hbWU9PT0iUFJFIn07aWYoISghdC5maXJzdENoaWxkfHxpKHQpKSl7Zm9yKHZhciBvPW51bGwsbj0hMSxzPW51bGwsYz1lWnQocyx0LGkpO2MhPT10Oyl7aWYoYy5ub2RlVHlwZT09PTN8fGMubm9kZVR5cGU9PT00KXt2YXIgZD1jLmRhdGEucmVwbGFjZSgvWyBcclxuXHRdKy9nLCIgIik7aWYoKCFvfHwvICQvLnRlc3Qoby5kYXRhKSkmJiFuJiZkWzBdPT09IiAiJiYoZD1kLnN1YnN0cigxKSksIWQpe2M9ZndlKGMpO2NvbnRpbnVlfWMuZGF0YT1kLG89Y31lbHNlIGlmKGMubm9kZVR5cGU9PT0xKXIoYyl8fGMubm9kZU5hbWU9PT0iQlIiPyhvJiYoby5kYXRhPW8uZGF0YS5yZXBsYWNlKC8gJC8sIiIpKSxvPW51bGwsbj0hMSk6YShjKXx8aShjKT8obz1udWxsLG49ITApOm8mJihuPSExKTtlbHNle2M9ZndlKGMpO2NvbnRpbnVlfXZhciBmPWVadChzLGMsaSk7cz1jLGM9Zn1vJiYoby5kYXRhPW8uZGF0YS5yZXBsYWNlKC8gJC8sIiIpLG8uZGF0YXx8ZndlKG8pKX19ZnVuY3Rpb24gZndlKGUpe3ZhciB0PWUubmV4dFNpYmxpbmd8fGUucGFyZW50Tm9kZTtyZXR1cm4gZS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGUpLHR9ZnVuY3Rpb24gZVp0KGUsdCxyKXtyZXR1cm4gZSYmZS5wYXJlbnROb2RlPT09dHx8cih0KT90Lm5leHRTaWJsaW5nfHx0LnBhcmVudE5vZGU6dC5maXJzdENoaWxkfHx0Lm5leHRTaWJsaW5nfHx0LnBhcmVudE5vZGV9ZnVuY3Rpb24gZ21hKCl7dmFyIGU9cHdlLkRPTVBhcnNlcix0PSExO3RyeXtuZXcgZSgpLnBhcnNlRnJvbVN0cmluZygiIiwidGV4dC9odG1sIikmJih0PSEwKX1jYXRjaHt9cmV0dXJuIHR9ZnVuY3Rpb24geG1hKCl7dmFyIGU9ZnVuY3Rpb24oKXt9O3JldHVybiBibWEoKT9lLnByb3RvdHlwZS5wYXJzZUZyb21TdHJpbmc9ZnVuY3Rpb24odCl7dmFyIHI9bmV3IHdpbmRvdy5BY3RpdmVYT2JqZWN0KCJodG1sZmlsZSIpO3JldHVybiByLmRlc2lnbk1vZGU9Im9uIixyLm9wZW4oKSxyLndyaXRlKHQpLHIuY2xvc2UoKSxyfTplLnByb3RvdHlwZS5wYXJzZUZyb21TdHJpbmc9ZnVuY3Rpb24odCl7dmFyIHI9ZG9jdW1lbnQuaW1wbGVtZW50YXRpb24uY3JlYXRlSFRNTERvY3VtZW50KCIiKTtyZXR1cm4gci5vcGVuKCksci53cml0ZSh0KSxyLmNsb3NlKCkscn0sZX1mdW5jdGlvbiBibWEoKXt2YXIgZT0hMTt0cnl7ZG9jdW1lbnQuaW1wbGVtZW50YXRpb24uY3JlYXRlSFRNTERvY3VtZW50KCIiKS5vcGVuKCl9Y2F0Y2h7cHdlLkFjdGl2ZVhPYmplY3QmJihlPSEwKX1yZXR1cm4gZX1mdW5jdGlvbiB5bWEoZSx0KXt2YXIgcjtpZih0eXBlb2YgZT09InN0cmluZyIpe3ZhciBhPXdtYSgpLnBhcnNlRnJvbVN0cmluZygnPHgtdHVybmRvd24gaWQ9InR1cm5kb3duLXJvb3QiPicrZSsiPC94LXR1cm5kb3duPiIsInRleHQvaHRtbCIpO3I9YS5nZXRFbGVtZW50QnlJZCgidHVybmRvd24tcm9vdCIpfWVsc2Ugcj1lLmNsb25lTm9kZSghMCk7cmV0dXJuIG1tYSh7ZWxlbWVudDpyLGlzQmxvY2s6Y3dlLGlzVm9pZDpYWXQsaXNQcmU6dC5wcmVmb3JtYXR0ZWRDb2RlP01tYTpudWxsfSkscn1mdW5jdGlvbiB3bWEoKXtyZXR1cm4gaHdlPWh3ZXx8bmV3IHZtYSxod2V9ZnVuY3Rpb24gTW1hKGUpe3JldHVybiBlLm5vZGVOYW1lPT09IlBSRSJ8fGUubm9kZU5hbWU9PT0iQ09ERSJ9ZnVuY3Rpb24ga21hKGUsdCl7cmV0dXJuIGUuaXNCbG9jaz1jd2UoZSksZS5pc0NvZGU9ZS5ub2RlTmFtZT09PSJDT0RFInx8ZS5wYXJlbnROb2RlLmlzQ29kZSxlLmlzQmxhbms9U21hKGUpLGUuZmxhbmtpbmdXaGl0ZXNwYWNlPXptYShlLHQpLGV9ZnVuY3Rpb24gU21hKGUpe3JldHVybiFYWXQoZSkmJiFmbWEoZSkmJi9eXHMqJC9pLnRlc3QoZS50ZXh0Q29udGVudCkmJiF1bWEoZSkmJiFwbWEoZSl9ZnVuY3Rpb24gem1hKGUsdCl7aWYoZS5pc0Jsb2NrfHx0LnByZWZvcm1hdHRlZENvZGUmJmUuaXNDb2RlKXJldHVybntsZWFkaW5nOiIiLHRyYWlsaW5nOiIifTt2YXIgcj1DbWEoZS50ZXh0Q29udGVudCk7cmV0dXJuIHIubGVhZGluZ0FzY2lpJiZ0WnQoImxlZnQiLGUsdCkmJihyLmxlYWRpbmc9ci5sZWFkaW5nTm9uQXNjaWkpLHIudHJhaWxpbmdBc2NpaSYmdFp0KCJyaWdodCIsZSx0KSYmKHIudHJhaWxpbmc9ci50cmFpbGluZ05vbkFzY2lpKSx7bGVhZGluZzpyLmxlYWRpbmcsdHJhaWxpbmc6ci50cmFpbGluZ319ZnVuY3Rpb24gQ21hKGUpe3ZhciB0PWUubWF0Y2goL14oKFsgXHRcclxuXSopKFxzKikpKD86KD89XFMpW1xzXFNdKlxTKT8oKFxzKj8pKFsgXHRcclxuXSopKSQvKTtyZXR1cm57bGVhZGluZzp0WzFdLGxlYWRpbmdBc2NpaTp0WzJdLGxlYWRpbmdOb25Bc2NpaTp0WzNdLHRyYWlsaW5nOnRbNF0sdHJhaWxpbmdOb25Bc2NpaTp0WzVdLHRyYWlsaW5nQXNjaWk6dFs2XX19ZnVuY3Rpb24gdFp0KGUsdCxyKXt2YXIgYSxpLG87cmV0dXJuIGU9PT0ibGVmdCI/KGE9dC5wcmV2aW91c1NpYmxpbmcsaT0vICQvKTooYT10Lm5leHRTaWJsaW5nLGk9L14gLyksYSYmKGEubm9kZVR5cGU9PT0zP289aS50ZXN0KGEubm9kZVZhbHVlKTpyLnByZWZvcm1hdHRlZENvZGUmJmEubm9kZU5hbWU9PT0iQ09ERSI/bz0hMTphLm5vZGVUeXBlPT09MSYmIWN3ZShhKSYmKG89aS50ZXN0KGEudGV4dENvbnRlbnQpKSksb31mdW5jdGlvbiBGbmUoZSl7aWYoISh0aGlzIGluc3RhbmNlb2YgRm5lKSlyZXR1cm4gbmV3IEZuZShlKTt2YXIgdD17cnVsZXM6RzEsaGVhZGluZ1N0eWxlOiJzZXRleHQiLGhyOiIqICogKiIsYnVsbGV0TGlzdE1hcmtlcjoiKiIsY29kZUJsb2NrU3R5bGU6ImluZGVudGVkIixmZW5jZToiYGBgIixlbURlbGltaXRlcjoiXyIsc3Ryb25nRGVsaW1pdGVyOiIqKiIsbGlua1N0eWxlOiJpbmxpbmVkIixsaW5rUmVmZXJlbmNlU3R5bGU6ImZ1bGwiLGJyOiIgICIscHJlZm9ybWF0dGVkQ29kZTohMSxibGFua1JlcGxhY2VtZW50OmZ1bmN0aW9uKHIsYSl7cmV0dXJuIGEuaXNCbG9jaz9gCgpgOiIifSxrZWVwUmVwbGFjZW1lbnQ6ZnVuY3Rpb24ocixhKXtyZXR1cm4gYS5pc0Jsb2NrP2AKCmArYS5vdXRlckhUTUwrYAoKYDphLm91dGVySFRNTH0sZGVmYXVsdFJlcGxhY2VtZW50OmZ1bmN0aW9uKHIsYSl7cmV0dXJuIGEuaXNCbG9jaz9gCgpgK3IrYAoKYDpyfX07dGhpcy5vcHRpb25zPWNtYSh7fSx0LGUpLHRoaXMucnVsZXM9bmV3IEpZdCh0aGlzLm9wdGlvbnMpfWZ1bmN0aW9uIHJadChlKXt2YXIgdD10aGlzO3JldHVybiBfbWEuY2FsbChlLmNoaWxkTm9kZXMsZnVuY3Rpb24ocixhKXthPW5ldyBrbWEoYSx0Lm9wdGlvbnMpO3ZhciBpPSIiO3JldHVybiBhLm5vZGVUeXBlPT09Mz9pPWEuaXNDb2RlP2Eubm9kZVZhbHVlOnQuZXNjYXBlKGEubm9kZVZhbHVlKTphLm5vZGVUeXBlPT09MSYmKGk9RG1hLmNhbGwodCxhKSksYVp0KHIsaSl9LCIiKX1mdW5jdGlvbiBMbWEoZSl7dmFyIHQ9dGhpcztyZXR1cm4gdGhpcy5ydWxlcy5mb3JFYWNoKGZ1bmN0aW9uKHIpe3R5cGVvZiByLmFwcGVuZD09ImZ1bmN0aW9uIiYmKGU9YVp0KGUsci5hcHBlbmQodC5vcHRpb25zKSkpfSksZS5yZXBsYWNlKC9eW1x0XHJcbl0rLywiIikucmVwbGFjZSgvW1x0XHJcblxzXSskLywiIil9ZnVuY3Rpb24gRG1hKGUpe3ZhciB0PXRoaXMucnVsZXMuZm9yTm9kZShlKSxyPXJadC5jYWxsKHRoaXMsZSksYT1lLmZsYW5raW5nV2hpdGVzcGFjZTtyZXR1cm4oYS5sZWFkaW5nfHxhLnRyYWlsaW5nKSYmKHI9ci50cmltKCkpLGEubGVhZGluZyt0LnJlcGxhY2VtZW50KHIsZSx0aGlzLm9wdGlvbnMpK2EudHJhaWxpbmd9ZnVuY3Rpb24gYVp0KGUsdCl7dmFyIHI9R1l0KGUpLGE9V1l0KHQpLGk9TWF0aC5tYXgoZS5sZW5ndGgtci5sZW5ndGgsdC5sZW5ndGgtYS5sZW5ndGgpLG89YAoKYC5zdWJzdHJpbmcoMCxpKTtyZXR1cm4gcitvK2F9ZnVuY3Rpb24gQW1hKGUpe3JldHVybiBlIT1udWxsJiYodHlwZW9mIGU9PSJzdHJpbmcifHxlLm5vZGVUeXBlJiYoZS5ub2RlVHlwZT09PTF8fGUubm9kZVR5cGU9PT05fHxlLm5vZGVUeXBlPT09MTEpKX12YXIgZG1hLFpZdCxRWXQsRzEscHdlLHZtYSxod2UsX21hLFRtYSxPbmUsaVp0PWwoKCk9PntkbWE9WyJBRERSRVNTIiwiQVJUSUNMRSIsIkFTSURFIiwiQVVESU8iLCJCTE9DS1FVT1RFIiwiQk9EWSIsIkNBTlZBUyIsIkNFTlRFUiIsIkREIiwiRElSIiwiRElWIiwiREwiLCJEVCIsIkZJRUxEU0VUIiwiRklHQ0FQVElPTiIsIkZJR1VSRSIsIkZPT1RFUiIsIkZPUk0iLCJGUkFNRVNFVCIsIkgxIiwiSDIiLCJIMyIsIkg0IiwiSDUiLCJINiIsIkhFQURFUiIsIkhHUk9VUCIsIkhSIiwiSFRNTCIsIklTSU5ERVgiLCJMSSIsIk1BSU4iLCJNRU5VIiwiTkFWIiwiTk9GUkFNRVMiLCJOT1NDUklQVCIsIk9MIiwiT1VUUFVUIiwiUCIsIlBSRSIsIlNFQ1RJT04iLCJUQUJMRSIsIlRCT0RZIiwiVEQiLCJURk9PVCIsIlRIIiwiVEhFQUQiLCJUUiIsIlVMIl07Wll0PVsiQVJFQSIsIkJBU0UiLCJCUiIsIkNPTCIsIkNPTU1BTkQiLCJFTUJFRCIsIkhSIiwiSU1HIiwiSU5QVVQiLCJLRVlHRU4iLCJMSU5LIiwiTUVUQSIsIlBBUkFNIiwiU09VUkNFIiwiVFJBQ0siLCJXQlIiXTtRWXQ9WyJBIiwiVEFCTEUiLCJUSEVBRCIsIlRCT0RZIiwiVEZPT1QiLCJUSCIsIlREIiwiSUZSQU1FIiwiU0NSSVBUIiwiQVVESU8iLCJWSURFTyJdO0cxPXt9O0cxLnBhcmFncmFwaD17ZmlsdGVyOiJwIixyZXBsYWNlbWVudDpmdW5jdGlvbihlKXtyZXR1cm5gCgpgK2UrYAoKYH19LEcxLmxpbmVCcmVhaz17ZmlsdGVyOiJiciIscmVwbGFjZW1lbnQ6ZnVuY3Rpb24oZSx0LHIpe3JldHVybiByLmJyK2AKYH19LEcxLmhlYWRpbmc9e2ZpbHRlcjpbImgxIiwiaDIiLCJoMyIsImg0IiwiaDUiLCJoNiJdLHJlcGxhY2VtZW50OmZ1bmN0aW9uKGUsdCxyKXt2YXIgYT1OdW1iZXIodC5ub2RlTmFtZS5jaGFyQXQoMSkpO2lmKHIuaGVhZGluZ1N0eWxlPT09InNldGV4dCImJmE8Myl7dmFyIGk9bHdlKGE9PT0xPyI9IjoiLSIsZS5sZW5ndGgpO3JldHVybmAKCmArZStgCmAraStgCgpgfWVsc2UgcmV0dXJuYAoKYCtsd2UoIiMiLGEpKyIgIitlK2AKCmB9fSxHMS5ibG9ja3F1b3RlPXtmaWx0ZXI6ImJsb2NrcXVvdGUiLHJlcGxhY2VtZW50OmZ1bmN0aW9uKGUpe3JldHVybiBlPVlZdChlKS5yZXBsYWNlKC9eL2dtLCI+ICIpLGAKCmArZStgCgpgfX0sRzEubGlzdD17ZmlsdGVyOlsidWwiLCJvbCJdLHJlcGxhY2VtZW50OmZ1bmN0aW9uKGUsdCl7dmFyIHI9dC5wYXJlbnROb2RlO3JldHVybiByLm5vZGVOYW1lPT09IkxJIiYmci5sYXN0RWxlbWVudENoaWxkPT09dD9gCmArZTpgCgpgK2UrYAoKYH19LEcxLmxpc3RJdGVtPXtmaWx0ZXI6ImxpIixyZXBsYWNlbWVudDpmdW5jdGlvbihlLHQscil7dmFyIGE9ci5idWxsZXRMaXN0TWFya2VyKyIgICAiLGk9dC5wYXJlbnROb2RlO2lmKGkubm9kZU5hbWU9PT0iT0wiKXt2YXIgbz1pLmdldEF0dHJpYnV0ZSgic3RhcnQiKSxuPUFycmF5LnByb3RvdHlwZS5pbmRleE9mLmNhbGwoaS5jaGlsZHJlbix0KTthPShvP051bWJlcihvKStuOm4rMSkrIi4gICJ9dmFyIHM9L1xuJC8udGVzdChlKTtyZXR1cm4gZT1ZWXQoZSkrKHM/YApgOiIiKSxlPWUucmVwbGFjZSgvXG4vZ20sYApgKyIgIi5yZXBlYXQoYS5sZW5ndGgpKSxhK2UrKHQubmV4dFNpYmxpbmc/YApgOiIiKX19LEcxLmluZGVudGVkQ29kZUJsb2NrPXtmaWx0ZXI6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdC5jb2RlQmxvY2tTdHlsZT09PSJpbmRlbnRlZCImJmUubm9kZU5hbWU9PT0iUFJFIiYmZS5maXJzdENoaWxkJiZlLmZpcnN0Q2hpbGQubm9kZU5hbWU9PT0iQ09ERSJ9LHJlcGxhY2VtZW50OmZ1bmN0aW9uKGUsdCxyKXtyZXR1cm5gCgogICAgYCt0LmZpcnN0Q2hpbGQudGV4dENvbnRlbnQucmVwbGFjZSgvXG4vZyxgCiAgICBgKStgCgpgfX0sRzEuZmVuY2VkQ29kZUJsb2NrPXtmaWx0ZXI6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdC5jb2RlQmxvY2tTdHlsZT09PSJmZW5jZWQiJiZlLm5vZGVOYW1lPT09IlBSRSImJmUuZmlyc3RDaGlsZCYmZS5maXJzdENoaWxkLm5vZGVOYW1lPT09IkNPREUifSxyZXBsYWNlbWVudDpmdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPXQuZmlyc3RDaGlsZC5nZXRBdHRyaWJ1dGUoImNsYXNzIil8fCIiLGk9KGEubWF0Y2goL2xhbmd1YWdlLShcUyspLyl8fFtudWxsLCIiXSlbMV0sbz10LmZpcnN0Q2hpbGQudGV4dENvbnRlbnQsbj1yLmZlbmNlLmNoYXJBdCgwKSxzPTMsYz1uZXcgUmVnRXhwKCJeIituKyJ7Myx9IiwiZ20iKSxkO2Q9Yy5leGVjKG8pOylkWzBdLmxlbmd0aD49cyYmKHM9ZFswXS5sZW5ndGgrMSk7dmFyIGY9bHdlKG4scyk7cmV0dXJuYAoKYCtmK2krYApgK28ucmVwbGFjZSgvXG4kLywiIikrYApgK2YrYAoKYH19LEcxLmhvcml6b250YWxSdWxlPXtmaWx0ZXI6ImhyIixyZXBsYWNlbWVudDpmdW5jdGlvbihlLHQscil7cmV0dXJuYAoKYCtyLmhyK2AKCmB9fSxHMS5pbmxpbmVMaW5rPXtmaWx0ZXI6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdC5saW5rU3R5bGU9PT0iaW5saW5lZCImJmUubm9kZU5hbWU9PT0iQSImJmUuZ2V0QXR0cmlidXRlKCJocmVmIil9LHJlcGxhY2VtZW50OmZ1bmN0aW9uKGUsdCl7dmFyIHI9dC5nZXRBdHRyaWJ1dGUoImhyZWYiKTtyJiYocj1yLnJlcGxhY2UoLyhbKCldKS9nLCJcXCQxIikpO3ZhciBhPU5uZSh0LmdldEF0dHJpYnV0ZSgidGl0bGUiKSk7cmV0dXJuIGEmJihhPScgIicrYS5yZXBsYWNlKC8iL2csJ1xcIicpKyciJyksIlsiK2UrIl0oIityK2ErIikifX0sRzEucmVmZXJlbmNlTGluaz17ZmlsdGVyOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQubGlua1N0eWxlPT09InJlZmVyZW5jZWQiJiZlLm5vZGVOYW1lPT09IkEiJiZlLmdldEF0dHJpYnV0ZSgiaHJlZiIpfSxyZXBsYWNlbWVudDpmdW5jdGlvbihlLHQscil7dmFyIGE9dC5nZXRBdHRyaWJ1dGUoImhyZWYiKSxpPU5uZSh0LmdldEF0dHJpYnV0ZSgidGl0bGUiKSk7aSYmKGk9JyAiJytpKyciJyk7dmFyIG8sbjtzd2l0Y2goci5saW5rUmVmZXJlbmNlU3R5bGUpe2Nhc2UiY29sbGFwc2VkIjpvPSJbIitlKyJdW10iLG49IlsiK2UrIl06ICIrYStpO2JyZWFrO2Nhc2Uic2hvcnRjdXQiOm89IlsiK2UrIl0iLG49IlsiK2UrIl06ICIrYStpO2JyZWFrO2RlZmF1bHQ6dmFyIHM9dGhpcy5yZWZlcmVuY2VzLmxlbmd0aCsxO289IlsiK2UrIl1bIitzKyJdIixuPSJbIitzKyJdOiAiK2EraX1yZXR1cm4gdGhpcy5yZWZlcmVuY2VzLnB1c2gobiksb30scmVmZXJlbmNlczpbXSxhcHBlbmQ6ZnVuY3Rpb24oZSl7dmFyIHQ9IiI7cmV0dXJuIHRoaXMucmVmZXJlbmNlcy5sZW5ndGgmJih0PWAKCmArdGhpcy5yZWZlcmVuY2VzLmpvaW4oYApgKStgCgpgLHRoaXMucmVmZXJlbmNlcz1bXSksdH19LEcxLmVtcGhhc2lzPXtmaWx0ZXI6WyJlbSIsImkiXSxyZXBsYWNlbWVudDpmdW5jdGlvbihlLHQscil7cmV0dXJuIGUudHJpbSgpP3IuZW1EZWxpbWl0ZXIrZStyLmVtRGVsaW1pdGVyOiIifX0sRzEuc3Ryb25nPXtmaWx0ZXI6WyJzdHJvbmciLCJiIl0scmVwbGFjZW1lbnQ6ZnVuY3Rpb24oZSx0LHIpe3JldHVybiBlLnRyaW0oKT9yLnN0cm9uZ0RlbGltaXRlcitlK3Iuc3Ryb25nRGVsaW1pdGVyOiIifX0sRzEuY29kZT17ZmlsdGVyOmZ1bmN0aW9uKGUpe3ZhciB0PWUucHJldmlvdXNTaWJsaW5nfHxlLm5leHRTaWJsaW5nLHI9ZS5wYXJlbnROb2RlLm5vZGVOYW1lPT09IlBSRSImJiF0O3JldHVybiBlLm5vZGVOYW1lPT09IkNPREUiJiYhcn0scmVwbGFjZW1lbnQ6ZnVuY3Rpb24oZSl7aWYoIWUpcmV0dXJuIiI7ZT1lLnJlcGxhY2UoL1xyP1xufFxyL2csIiAiKTtmb3IodmFyIHQ9L15gfF4gLio/W14gXS4qICR8YCQvLnRlc3QoZSk/IiAiOiIiLHI9ImAiLGE9ZS5tYXRjaCgvYCsvZ20pfHxbXTthLmluZGV4T2YocikhPT0tMTspcj1yKyJgIjtyZXR1cm4gcit0K2UrdCtyfX0sRzEuaW1hZ2U9e2ZpbHRlcjoiaW1nIixyZXBsYWNlbWVudDpmdW5jdGlvbihlLHQpe3ZhciByPU5uZSh0LmdldEF0dHJpYnV0ZSgiYWx0IikpLGE9dC5nZXRBdHRyaWJ1dGUoInNyYyIpfHwiIixpPU5uZSh0LmdldEF0dHJpYnV0ZSgidGl0bGUiKSksbz1pPycgIicraSsnIic6IiI7cmV0dXJuIGE/IiFbIityKyJdKCIrYStvKyIpIjoiIn19O0pZdC5wcm90b3R5cGU9e2FkZDpmdW5jdGlvbihlLHQpe3RoaXMuYXJyYXkudW5zaGlmdCh0KX0sa2VlcDpmdW5jdGlvbihlKXt0aGlzLl9rZWVwLnVuc2hpZnQoe2ZpbHRlcjplLHJlcGxhY2VtZW50OnRoaXMua2VlcFJlcGxhY2VtZW50fSl9LHJlbW92ZTpmdW5jdGlvbihlKXt0aGlzLl9yZW1vdmUudW5zaGlmdCh7ZmlsdGVyOmUscmVwbGFjZW1lbnQ6ZnVuY3Rpb24oKXtyZXR1cm4iIn19KX0sZm9yTm9kZTpmdW5jdGlvbihlKXtpZihlLmlzQmxhbmspcmV0dXJuIHRoaXMuYmxhbmtSdWxlO3ZhciB0O3JldHVybih0PXV3ZSh0aGlzLmFycmF5LGUsdGhpcy5vcHRpb25zKSl8fCh0PXV3ZSh0aGlzLl9rZWVwLGUsdGhpcy5vcHRpb25zKSl8fCh0PXV3ZSh0aGlzLl9yZW1vdmUsZSx0aGlzLm9wdGlvbnMpKT90OnRoaXMuZGVmYXVsdFJ1bGV9LGZvckVhY2g6ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PTA7dDx0aGlzLmFycmF5Lmxlbmd0aDt0KyspZSh0aGlzLmFycmF5W3RdLHQpfX07cHdlPXR5cGVvZiB3aW5kb3c8InUiP3dpbmRvdzp7fTt2bWE9Z21hKCk/cHdlLkRPTVBhcnNlcjp4bWEoKTtfbWE9QXJyYXkucHJvdG90eXBlLnJlZHVjZSxUbWE9W1svXFwvZywiXFxcXCJdLFsvXCovZywiXFwqIl0sWy9eLS9nLCJcXC0iXSxbL15cKyAvZywiXFwrICJdLFsvXig9KykvZywiXFwkMSJdLFsvXigjezEsNn0pIC9nLCJcXCQxICJdLFsvYC9nLCJcXGAiXSxbL15+fn4vZywiXFx+fn4iXSxbL1xbL2csIlxcWyJdLFsvXF0vZywiXFxdIl0sWy9ePi9nLCJcXD4iXSxbL18vZywiXFxfIl0sWy9eKFxkKylcLiAvZywiJDFcXC4gIl1dO0ZuZS5wcm90b3R5cGU9e3R1cm5kb3duOmZ1bmN0aW9uKGUpe2lmKCFBbWEoZSkpdGhyb3cgbmV3IFR5cGVFcnJvcihlKyIgaXMgbm90IGEgc3RyaW5nLCBvciBhbiBlbGVtZW50L2RvY3VtZW50L2ZyYWdtZW50IG5vZGUuIik7aWYoZT09PSIiKXJldHVybiIiO3ZhciB0PXJadC5jYWxsKHRoaXMsbmV3IHltYShlLHRoaXMub3B0aW9ucykpO3JldHVybiBMbWEuY2FsbCh0aGlzLHQpfSx1c2U6ZnVuY3Rpb24oZSl7aWYoQXJyYXkuaXNBcnJheShlKSlmb3IodmFyIHQ9MDt0PGUubGVuZ3RoO3QrKyl0aGlzLnVzZShlW3RdKTtlbHNlIGlmKHR5cGVvZiBlPT0iZnVuY3Rpb24iKWUodGhpcyk7ZWxzZSB0aHJvdyBuZXcgVHlwZUVycm9yKCJwbHVnaW4gbXVzdCBiZSBhIEZ1bmN0aW9uIG9yIGFuIEFycmF5IG9mIEZ1bmN0aW9ucyIpO3JldHVybiB0aGlzfSxhZGRSdWxlOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMucnVsZXMuYWRkKGUsdCksdGhpc30sa2VlcDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5ydWxlcy5rZWVwKGUpLHRoaXN9LHJlbW92ZTpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5ydWxlcy5yZW1vdmUoZSksdGhpc30sZXNjYXBlOmZ1bmN0aW9uKGUpe3JldHVybiBUbWEucmVkdWNlKGZ1bmN0aW9uKHQscil7cmV0dXJuIHQucmVwbGFjZShyWzBdLHJbMV0pfSxlKX19O09uZT1GbmV9KTt2YXIgVnk9e307cWUoVnkse2dmbTooKT0+c1p0LGhpZ2hsaWdodGVkQ29kZUJsb2NrOigpPT5nd2Usc3RyaWtldGhyb3VnaDooKT0+eHdlLHRhYmxlczooKT0+YndlLHRhc2tMaXN0SXRlbXM6KCk9PnZ3ZX0pO2Z1bmN0aW9uIGd3ZShlKXtlLmFkZFJ1bGUoImhpZ2hsaWdodGVkQ29kZUJsb2NrIix7ZmlsdGVyOmZ1bmN0aW9uKHQpe3ZhciByPXQuZmlyc3RDaGlsZDtyZXR1cm4gdC5ub2RlTmFtZT09PSJESVYiJiZvWnQudGVzdCh0LmNsYXNzTmFtZSkmJnImJnIubm9kZU5hbWU9PT0iUFJFIn0scmVwbGFjZW1lbnQ6ZnVuY3Rpb24odCxyLGEpe3ZhciBpPXIuY2xhc3NOYW1lfHwiIixvPShpLm1hdGNoKG9adCl8fFtudWxsLCIiXSlbMV07cmV0dXJuYAoKYCthLmZlbmNlK28rYApgK3IuZmlyc3RDaGlsZC50ZXh0Q29udGVudCtgCmArYS5mZW5jZStgCgpgfX0pfWZ1bmN0aW9uIHh3ZShlKXtlLmFkZFJ1bGUoInN0cmlrZXRocm91Z2giLHtmaWx0ZXI6WyJkZWwiLCJzIiwic3RyaWtlIl0scmVwbGFjZW1lbnQ6ZnVuY3Rpb24odCl7cmV0dXJuIn4iK3QrIn4ifX0pfWZ1bmN0aW9uIG13ZShlKXt2YXIgdD1lLnBhcmVudE5vZGU7cmV0dXJuIHQubm9kZU5hbWU9PT0iVEhFQUQifHx0LmZpcnN0Q2hpbGQ9PT1lJiYodC5ub2RlTmFtZT09PSJUQUJMRSJ8fFBtYSh0KSkmJiRtYS5jYWxsKGUuY2hpbGROb2RlcyxmdW5jdGlvbihyKXtyZXR1cm4gci5ub2RlTmFtZT09PSJUSCJ9KX1mdW5jdGlvbiBQbWEoZSl7dmFyIHQ9ZS5wcmV2aW91c1NpYmxpbmc7cmV0dXJuIGUubm9kZU5hbWU9PT0iVEJPRFkiJiYoIXR8fHQubm9kZU5hbWU9PT0iVEhFQUQiJiYvXlxzKiQvaS50ZXN0KHQudGV4dENvbnRlbnQpKX1mdW5jdGlvbiBuWnQoZSx0KXt2YXIgcj1FbWEuY2FsbCh0LnBhcmVudE5vZGUuY2hpbGROb2Rlcyx0KSxhPSIgIjtyZXR1cm4gcj09PTAmJihhPSJ8ICIpLGErZSsiIHwifWZ1bmN0aW9uIGJ3ZShlKXtlLmtlZXAoZnVuY3Rpb24ocil7cmV0dXJuIHIubm9kZU5hbWU9PT0iVEFCTEUiJiYhbXdlKHIucm93c1swXSl9KTtmb3IodmFyIHQgaW4gdjkpZS5hZGRSdWxlKHQsdjlbdF0pfWZ1bmN0aW9uIHZ3ZShlKXtlLmFkZFJ1bGUoInRhc2tMaXN0SXRlbXMiLHtmaWx0ZXI6ZnVuY3Rpb24odCl7cmV0dXJuIHQudHlwZT09PSJjaGVja2JveCImJnQucGFyZW50Tm9kZS5ub2RlTmFtZT09PSJMSSJ9LHJlcGxhY2VtZW50OmZ1bmN0aW9uKHQscil7cmV0dXJuKHIuY2hlY2tlZD8iW3hdIjoiWyBdIikrIiAifX0pfWZ1bmN0aW9uIHNadChlKXtlLnVzZShbZ3dlLHh3ZSxid2UsdndlXSl9dmFyIG9adCxFbWEsJG1hLHY5LGxadD1sKCgpPT57b1p0PS9oaWdobGlnaHQtKD86dGV4dHxzb3VyY2UpLShbYS16MC05XSspLztFbWE9QXJyYXkucHJvdG90eXBlLmluZGV4T2YsJG1hPUFycmF5LnByb3RvdHlwZS5ldmVyeSx2OT17fTt2OS50YWJsZUNlbGw9e2ZpbHRlcjpbInRoIiwidGQiXSxyZXBsYWNlbWVudDpmdW5jdGlvbihlLHQpe3JldHVybiBuWnQoZSx0KX19LHY5LnRhYmxlUm93PXtmaWx0ZXI6InRyIixyZXBsYWNlbWVudDpmdW5jdGlvbihlLHQpe3ZhciByPSIiLGE9e2xlZnQ6IjotLSIscmlnaHQ6Ii0tOiIsY2VudGVyOiI6LToifTtpZihtd2UodCkpZm9yKHZhciBpPTA7aTx0LmNoaWxkTm9kZXMubGVuZ3RoO2krKyl7dmFyIG89Ii0tLSIsbj0odC5jaGlsZE5vZGVzW2ldLmdldEF0dHJpYnV0ZSgiYWxpZ24iKXx8IiIpLnRvTG93ZXJDYXNlKCk7biYmKG89YVtuXXx8bykscis9blp0KG8sdC5jaGlsZE5vZGVzW2ldKX1yZXR1cm5gCmArZSsocj9gCmArcjoiIil9fSx2OS50YWJsZT17ZmlsdGVyOmZ1bmN0aW9uKGUpe3JldHVybiBlLm5vZGVOYW1lPT09IlRBQkxFIiYmbXdlKGUucm93c1swXSl9LHJlcGxhY2VtZW50OmZ1bmN0aW9uKGUpe3JldHVybiBlPWUucmVwbGFjZShgCgpgLGAKYCksYAoKYCtlK2AKCmB9fSx2OS50YWJsZVNlY3Rpb249e2ZpbHRlcjpbInRoZWFkIiwidGJvZHkiLCJ0Zm9vdCJdLHJlcGxhY2VtZW50OmZ1bmN0aW9uKGUpe3JldHVybiBlfX19KTt2YXIgeXdlLHd3ZT1sKCgpPT57eXdlPUFyKFhIdCgpLDEpO0xxdCgpO0lVdCgpO3NXdCgpO3ZXdCgpO2pZdCgpO1VZdCgpO2ladCgpO2xadCgpfSk7dmFyIFJuZSxkWnQ9bCgoKT0+e3d3ZSgpO1JuZT1jbGFzcyBle3N0YXRpYyBhc3luYyBjcmVhdGVGcm9tTWFya2Rvd25TdHJpbmcodCl7bGV0IHI9bmV3IGU7cmV0dXJuIGF3YWl0IHIudXBkYXRlRnJvbU1hcmtkb3duU3RyaW5nKHQpLHJ9YXN5bmMgdXBkYXRlRnJvbU1hcmtkb3duU3RyaW5nKHQpe2xldCByLGE9YXdhaXQgeXkoKS51c2UodTkpLnVzZShkOSkudXNlKHA5LFsieWFtbCIsInRvbWwiXSkudXNlKGI5KS51c2UoeDkpLnVzZSgoKT0+aT0+e2NvbnNvbGUuZGlyKGkpO2xldCBvPWkuY2hpbGRyZW4uZmluZChuPT5uLnR5cGU9PT0ieWFtbCIpO28mJihyPW8udmFsdWUpfSkucHJvY2Vzcyh0KTt0aGlzLmh0bWw9YS50b1N0cmluZygpLHI/dGhpcy5mcm9udG1hdHRlckRhdGE9YXdhaXQgeXdlLnlhbWxTdHJpbmdUb09iamVjdChyKTp0aGlzLmZyb250bWF0dGVyRGF0YT17fX19fSk7dmFyIHk5PXt9O3FlKHk5LHtTbWFydE1hcmtkb3duOigpPT5Nd2V9KTt2YXIgTXdlLGt3ZT1sKCgpPT57d3dlKCk7ZFp0KCk7TXdlPWNsYXNzIGV7c3RhdGljIGFzeW5jIGVhc3lNYXJrZG93blRvSHRtbCh0KXtyZXR1cm4oYXdhaXQgbmV3IGUoKS5nZXRNZFBhcnNlZFJlc3VsdEZyb21NYXJrZG93bih0KSkuaHRtbH1jb25zdHJ1Y3Rvcigpe31hc3luYyBnZXRNZFBhcnNlZFJlc3VsdEZyb21NYXJrZG93bih0KXtyZXR1cm4gYXdhaXQgUm5lLmNyZWF0ZUZyb21NYXJrZG93blN0cmluZyh0KX1odG1sVG9NYXJrZG93bih0KXtsZXQgcj1uZXcgT25lKHtoZWFkaW5nU3R5bGU6ImF0eCIsY29kZUJsb2NrU3R5bGU6ImZlbmNlZCJ9KTtyZXR1cm4gci51c2UoVnkuZ2ZtKSxyLnR1cm5kb3duKHQpfX19KTt2YXIgZ1p0PVhlKF9zPT57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShfcywiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksX3MuUGF0aEVycm9yPV9zLlRva2VuRGF0YT12b2lkIDAsX3MucGFyc2U9X3dlLF9zLmNvbXBpbGU9Rm1hLF9zLm1hdGNoPVJtYSxfcy5wYXRoVG9SZWdleHA9cFp0LF9zLnN0cmluZ2lmeT1xbWE7dmFyIFN3ZT0iLyIsendlPWU9PmUsdVp0PS9eWyRfXHB7SURfU3RhcnR9XSQvdSxDd2U9L15bJFx1MjAwY1x1MjAwZFxwe0lEX0NvbnRpbnVlfV0kL3UsSW1hPXsieyI6InsiLCJ9IjoifSIsIigiOiIoIiwiKSI6IikiLCJbIjoiWyIsIl0iOiJdIiwiKyI6IisiLCI/IjoiPyIsIiEiOiIhIn07ZnVuY3Rpb24gTm1hKGUpe3JldHVybiBlLnJlcGxhY2UoL1t7fSgpXFtcXSs/IToqXFxdL2csIlxcJCYiKX1mdW5jdGlvbiBpbChlKXtyZXR1cm4gZS5yZXBsYWNlKC9bLisqP14ke30oKVtcXXwvXFxdL2csIlxcJCYiKX12YXIgQm5lPWNsYXNze2NvbnN0cnVjdG9yKHQscil7dGhpcy50b2tlbnM9dCx0aGlzLm9yaWdpbmFsUGF0aD1yfX07X3MuVG9rZW5EYXRhPUJuZTt2YXIgSzY9Y2xhc3MgZXh0ZW5kcyBUeXBlRXJyb3J7Y29uc3RydWN0b3IodCxyKXtsZXQgYT10O3ImJihhKz1gOiAke3J9YCksYSs9IjsgdmlzaXQgaHR0cHM6Ly9naXQubmV3L3BhdGhUb1JlZ2V4cEVycm9yIGZvciBpbmZvIixzdXBlcihhKSx0aGlzLm9yaWdpbmFsUGF0aD1yfX07X3MuUGF0aEVycm9yPUs2O2Z1bmN0aW9uIF93ZShlLHQ9e30pe2xldHtlbmNvZGVQYXRoOnI9endlfT10LGE9Wy4uLmVdLGk9W10sbz0wLG49MDtmdW5jdGlvbiBzKCl7bGV0IGQ9IiI7aWYodVp0LnRlc3QoYVtvXSkpZG8gZCs9YVtvKytdO3doaWxlKEN3ZS50ZXN0KGFbb10pKTtlbHNlIGlmKGFbb109PT0nIicpe2xldCBmPW87Zm9yKDtvKys8YS5sZW5ndGg7KXtpZihhW29dPT09JyInKXtvKyssZj0wO2JyZWFrfWFbb109PT0iXFwiJiZvKyssZCs9YVtvXX1pZihmKXRocm93IG5ldyBLNihgVW50ZXJtaW5hdGVkIHF1b3RlIGF0IGluZGV4ICR7Zn1gLGUpfWlmKCFkKXRocm93IG5ldyBLNihgTWlzc2luZyBwYXJhbWV0ZXIgbmFtZSBhdCBpbmRleCAke299YCxlKTtyZXR1cm4gZH1mb3IoO288YS5sZW5ndGg7KXtsZXQgZD1hW29dLGY9SW1hW2RdO2Y/aS5wdXNoKHt0eXBlOmYsaW5kZXg6bysrLHZhbHVlOmR9KTpkPT09IlxcIj9pLnB1c2goe3R5cGU6ImVzY2FwZSIsaW5kZXg6bysrLHZhbHVlOmFbbysrXX0pOmQ9PT0iOiI/aS5wdXNoKHt0eXBlOiJwYXJhbSIsaW5kZXg6bysrLHZhbHVlOnMoKX0pOmQ9PT0iKiI/aS5wdXNoKHt0eXBlOiJ3aWxkY2FyZCIsaW5kZXg6bysrLHZhbHVlOnMoKX0pOmkucHVzaCh7dHlwZToiY2hhciIsaW5kZXg6bysrLHZhbHVlOmR9KX1pLnB1c2goe3R5cGU6ImVuZCIsaW5kZXg6byx2YWx1ZToiIn0pO2Z1bmN0aW9uIGMoZCl7bGV0IGY9W107Zm9yKDs7KXtsZXQgdT1pW24rK107aWYodS50eXBlPT09ZClicmVhaztpZih1LnR5cGU9PT0iY2hhciJ8fHUudHlwZT09PSJlc2NhcGUiKXtsZXQgcD11LnZhbHVlLGg9aVtuXTtmb3IoO2gudHlwZT09PSJjaGFyInx8aC50eXBlPT09ImVzY2FwZSI7KXArPWgudmFsdWUsaD1pWysrbl07Zi5wdXNoKHt0eXBlOiJ0ZXh0Iix2YWx1ZTpyKHApfSk7Y29udGludWV9aWYodS50eXBlPT09InBhcmFtInx8dS50eXBlPT09IndpbGRjYXJkIil7Zi5wdXNoKHt0eXBlOnUudHlwZSxuYW1lOnUudmFsdWV9KTtjb250aW51ZX1pZih1LnR5cGU9PT0ieyIpe2YucHVzaCh7dHlwZToiZ3JvdXAiLHRva2VuczpjKCJ9Iil9KTtjb250aW51ZX10aHJvdyBuZXcgSzYoYFVuZXhwZWN0ZWQgJHt1LnR5cGV9IGF0IGluZGV4ICR7dS5pbmRleH0sIGV4cGVjdGVkICR7ZH1gLGUpfXJldHVybiBmfXJldHVybiBuZXcgQm5lKGMoImVuZCIpLGUpfWZ1bmN0aW9uIEZtYShlLHQ9e30pe2xldHtlbmNvZGU6cj1lbmNvZGVVUklDb21wb25lbnQsZGVsaW1pdGVyOmE9U3dlfT10LGk9dHlwZW9mIGU9PSJvYmplY3QiP2U6X3dlKGUsdCksbz1mWnQoaS50b2tlbnMsYSxyKTtyZXR1cm4gZnVuY3Rpb24ocz17fSl7bGV0W2MsLi4uZF09byhzKTtpZihkLmxlbmd0aCl0aHJvdyBuZXcgVHlwZUVycm9yKGBNaXNzaW5nIHBhcmFtZXRlcnM6ICR7ZC5qb2luKCIsICIpfWApO3JldHVybiBjfX1mdW5jdGlvbiBmWnQoZSx0LHIpe2xldCBhPWUubWFwKGk9Pk9tYShpLHQscikpO3JldHVybiBpPT57bGV0IG89WyIiXTtmb3IobGV0IG4gb2YgYSl7bGV0W3MsLi4uY109bihpKTtvWzBdKz1zLG8ucHVzaCguLi5jKX1yZXR1cm4gb319ZnVuY3Rpb24gT21hKGUsdCxyKXtpZihlLnR5cGU9PT0idGV4dCIpcmV0dXJuKCk9PltlLnZhbHVlXTtpZihlLnR5cGU9PT0iZ3JvdXAiKXtsZXQgaT1mWnQoZS50b2tlbnMsdCxyKTtyZXR1cm4gbz0+e2xldFtuLC4uLnNdPWkobyk7cmV0dXJuIHMubGVuZ3RoP1siIl06W25dfX1sZXQgYT1yfHx6d2U7cmV0dXJuIGUudHlwZT09PSJ3aWxkY2FyZCImJnIhPT0hMT9pPT57bGV0IG89aVtlLm5hbWVdO2lmKG89PW51bGwpcmV0dXJuWyIiLGUubmFtZV07aWYoIUFycmF5LmlzQXJyYXkobyl8fG8ubGVuZ3RoPT09MCl0aHJvdyBuZXcgVHlwZUVycm9yKGBFeHBlY3RlZCAiJHtlLm5hbWV9IiB0byBiZSBhIG5vbi1lbXB0eSBhcnJheWApO3JldHVybltvLm1hcCgobixzKT0+e2lmKHR5cGVvZiBuIT0ic3RyaW5nIil0aHJvdyBuZXcgVHlwZUVycm9yKGBFeHBlY3RlZCAiJHtlLm5hbWV9LyR7c30iIHRvIGJlIGEgc3RyaW5nYCk7cmV0dXJuIGEobil9KS5qb2luKHQpXX06aT0+e2xldCBvPWlbZS5uYW1lXTtpZihvPT1udWxsKXJldHVyblsiIixlLm5hbWVdO2lmKHR5cGVvZiBvIT0ic3RyaW5nIil0aHJvdyBuZXcgVHlwZUVycm9yKGBFeHBlY3RlZCAiJHtlLm5hbWV9IiB0byBiZSBhIHN0cmluZ2ApO3JldHVyblthKG8pXX19ZnVuY3Rpb24gUm1hKGUsdD17fSl7bGV0e2RlY29kZTpyPWRlY29kZVVSSUNvbXBvbmVudCxkZWxpbWl0ZXI6YT1Td2V9PXQse3JlZ2V4cDppLGtleXM6b309cFp0KGUsdCksbj1vLm1hcChzPT5yPT09ITE/endlOnMudHlwZT09PSJwYXJhbSI/cjpjPT5jLnNwbGl0KGEpLm1hcChyKSk7cmV0dXJuIGZ1bmN0aW9uKGMpe2xldCBkPWkuZXhlYyhjKTtpZighZClyZXR1cm4hMTtsZXQgZj1kWzBdLHU9T2JqZWN0LmNyZWF0ZShudWxsKTtmb3IobGV0IHA9MTtwPGQubGVuZ3RoO3ArKyl7aWYoZFtwXT09PXZvaWQgMCljb250aW51ZTtsZXQgaD1vW3AtMV0sYj1uW3AtMV07dVtoLm5hbWVdPWIoZFtwXSl9cmV0dXJue3BhdGg6ZixwYXJhbXM6dX19fWZ1bmN0aW9uIHBadChlLHQ9e30pe2xldHtkZWxpbWl0ZXI6cj1Td2UsZW5kOmE9ITAsc2Vuc2l0aXZlOmk9ITEsdHJhaWxpbmc6bz0hMH09dCxuPVtdLHM9aT8iIjoiaSIsYz1bXTtmb3IobGV0IHUgb2YgaFp0KGUsW10pKXtsZXQgcD10eXBlb2YgdT09Im9iamVjdCI/dTpfd2UodSx0KTtmb3IobGV0IGggb2YgSG5lKHAudG9rZW5zLDAsW10pKWMucHVzaChCbWEoaCxyLG4scC5vcmlnaW5hbFBhdGgpKX1sZXQgZD1gXig/OiR7Yy5qb2luKCJ8Iil9KWA7cmV0dXJuIG8mJihkKz1gKD86JHtpbChyKX0kKT9gKSxkKz1hPyIkIjpgKD89JHtpbChyKX18JClgLHtyZWdleHA6bmV3IFJlZ0V4cChkLHMpLGtleXM6bn19ZnVuY3Rpb24gaFp0KGUsdCl7aWYoQXJyYXkuaXNBcnJheShlKSlmb3IobGV0IHIgb2YgZSloWnQocix0KTtlbHNlIHQucHVzaChlKTtyZXR1cm4gdH1mdW5jdGlvbipIbmUoZSx0LHIpe2lmKHQ9PT1lLmxlbmd0aClyZXR1cm4geWllbGQgcjtsZXQgYT1lW3RdO2lmKGEudHlwZT09PSJncm91cCIpZm9yKGxldCBpIG9mIEhuZShhLnRva2VucywwLHIuc2xpY2UoKSkpeWllbGQqSG5lKGUsdCsxLGkpO2Vsc2Ugci5wdXNoKGEpO3lpZWxkKkhuZShlLHQrMSxyKX1mdW5jdGlvbiBCbWEoZSx0LHIsYSl7bGV0IGk9IiIsbz0iIixuPSEwO2ZvcihsZXQgcyBvZiBlKXtpZihzLnR5cGU9PT0idGV4dCIpe2krPWlsKHMudmFsdWUpLG8rPXMudmFsdWUsbnx8KG49cy52YWx1ZS5pbmNsdWRlcyh0KSk7Y29udGludWV9aWYocy50eXBlPT09InBhcmFtInx8cy50eXBlPT09IndpbGRjYXJkIil7aWYoIW4mJiFvKXRocm93IG5ldyBLNihgTWlzc2luZyB0ZXh0IGJlZm9yZSAiJHtzLm5hbWV9IiAke3MudHlwZX1gLGEpO3MudHlwZT09PSJwYXJhbSI/aSs9YCgke0htYSh0LG4/IiI6byl9KylgOmkrPSIoW1xcc1xcU10rKSIsci5wdXNoKHMpLG89IiIsbj0hMTtjb250aW51ZX19cmV0dXJuIGl9ZnVuY3Rpb24gSG1hKGUsdCl7cmV0dXJuIHQubGVuZ3RoPDI/ZS5sZW5ndGg8Mj9gW14ke2lsKGUrdCl9XWA6YCg/Oig/ISR7aWwoZSl9KVteJHtpbCh0KX1dKWA6ZS5sZW5ndGg8Mj9gKD86KD8hJHtpbCh0KX0pW14ke2lsKGUpfV0pYDpgKD86KD8hJHtpbCh0KX18JHtpbChlKX0pW1xcc1xcU10pYH1mdW5jdGlvbiBtWnQoZSl7bGV0IHQ9IiIscj0wO2Z1bmN0aW9uIGEoaSl7cmV0dXJuIGptYShpKSYmVm1hKGVbcl0pP2k6SlNPTi5zdHJpbmdpZnkoaSl9Zm9yKDtyPGUubGVuZ3RoOyl7bGV0IGk9ZVtyKytdO2lmKGkudHlwZT09PSJ0ZXh0Iil7dCs9Tm1hKGkudmFsdWUpO2NvbnRpbnVlfWlmKGkudHlwZT09PSJncm91cCIpe3QrPWB7JHttWnQoaS50b2tlbnMpfX1gO2NvbnRpbnVlfWlmKGkudHlwZT09PSJwYXJhbSIpe3QrPWA6JHthKGkubmFtZSl9YDtjb250aW51ZX1pZihpLnR5cGU9PT0id2lsZGNhcmQiKXt0Kz1gKiR7YShpLm5hbWUpfWA7Y29udGludWV9dGhyb3cgbmV3IFR5cGVFcnJvcihgVW5rbm93biB0b2tlbiB0eXBlOiAke2kudHlwZX1gKX1yZXR1cm4gdH1mdW5jdGlvbiBxbWEoZSl7cmV0dXJuIG1adChlLnRva2Vucyl9ZnVuY3Rpb24gam1hKGUpe2xldFt0LC4uLnJdPWU7cmV0dXJuIHVadC50ZXN0KHQpJiZyLmV2ZXJ5KGE9PkN3ZS50ZXN0KGEpKX1mdW5jdGlvbiBWbWEoZSl7cmV0dXJuIGUmJmUudHlwZT09PSJ0ZXh0Ij8hQ3dlLnRlc3QoZS52YWx1ZVswXSk6ITB9fSk7dmFyIFR3ZSxMd2U9bCgoKT0+e0Z2KCk7TjIoKTtUd2U9QXIoZ1p0KCksMSl9KTt2YXIgcW5lLHhadD1sKCgpPT57THdlKCk7cW5lPWNsYXNze2NvbnN0cnVjdG9yKCl7fWdldEFsbEFzT2JqZWN0KCl7bGV0IHQ9bmV3IFVSTFNlYXJjaFBhcmFtcyh3aW5kb3cubG9jYXRpb24uc2VhcmNoKTtyZXR1cm4gT2JqZWN0LmZyb21FbnRyaWVzKHQuZW50cmllcygpKX1zZXRRdWVyeVBhcmFtKHQscixhPSJyZXBsYWNlIil7dmFyIGk9bmV3IFVSTFNlYXJjaFBhcmFtcyh3aW5kb3cubG9jYXRpb24uc2VhcmNoKTtpLnNldCh0LHIpLGE9PT0icHVzaCI/aGlzdG9yeS5wdXNoU3RhdGUobnVsbCxudWxsLCI/IitpLnRvU3RyaW5nKCkpOmhpc3RvcnkucmVwbGFjZVN0YXRlKG51bGwsbnVsbCwiPyIraS50b1N0cmluZygpKX1kZWxldGVRdWVyeVBhcmFtKHQscj0icmVwbGFjZSIpe3ZhciBhPW5ldyBVUkxTZWFyY2hQYXJhbXMod2luZG93LmxvY2F0aW9uLnNlYXJjaCk7YS5kZWxldGUodCkscj09PSJwdXNoIj9oaXN0b3J5LnB1c2hTdGF0ZShudWxsLG51bGwsIj8iK2EudG9TdHJpbmcoKSk6aGlzdG9yeS5yZXBsYWNlU3RhdGUobnVsbCxudWxsLCI/IithLnRvU3RyaW5nKCkpfWdldFF1ZXJ5UGFyYW0odCl7cmV0dXJuIHRoaXMuZ2V0QWxsQXNPYmplY3QoKVt0XX19fSk7dmFyICR4MSxEd2UsYlp0PWwoKCk9PntMd2UoKTt4WnQoKTskeDE9ZT0+e2NvbnNvbGUubG9nKGAlY1tSb3V0ZXJdJWMgJHtlfWAsImNvbG9yOiByZ2IoMjU1LCAxMDUsIDEwMCk7IiwiY29sb3I6IGluaGVyaXQiKX0sRHdlPWNsYXNzIGV7Y29uc3RydWN0b3IodCxyPSIiKXt0aGlzLm9wdGlvbnM9e2RlYnVnOiExfSx0aGlzLnF1ZXJ5UGFyYW1zPW5ldyBxbmUsdGhpcy5yb3V0ZXM9W10sdGhpcy5vcHRpb25zPXsuLi50aGlzLm9wdGlvbnMsLi4udH0sdGhpcy5iYXNlUGF0aD1yLHRoaXMucG9wc3RhdGVMaXN0ZW5lcj1hPT57YS5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuX2hhbmRsZVJvdXRlU3RhdGUoKX0sd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInBvcHN0YXRlIix0aGlzLnBvcHN0YXRlTGlzdGVuZXIpfWNyZWF0ZVN1YlJvdXRlcih0LHIpe2xldCBhPWAke3RoaXMuYmFzZVBhdGh9JHt0fWA7cmV0dXJuIG5ldyBlKHsuLi50aGlzLm9wdGlvbnMsLi4ucn0sYSl9YXN5bmMgcHVzaFVybCh0PSIvIixyPXt9KXtsZXQgYT1gJHt0aGlzLmJhc2VQYXRofSR7dH1gO2EhPT13aW5kb3cubG9jYXRpb24ucGF0aG5hbWU/d2luZG93Lmhpc3RvcnkucHVzaFN0YXRlKHIsd2luZG93LmRvY3VtZW50LnRpdGxlLGEpOndpbmRvdy5oaXN0b3J5LnJlcGxhY2VTdGF0ZShyLHdpbmRvdy5kb2N1bWVudC50aXRsZSxhKSxhd2FpdCB0aGlzLl9oYW5kbGVSb3V0ZVN0YXRlKCl9b24odCxyKXtsZXQgYT1gJHt0aGlzLmJhc2VQYXRofSR7dH1gLGk9e21hdGNoRnVuY3Rpb246VHdlLm1hdGNoKGEpLGhhbmRsZXI6cn07cmV0dXJuIHRoaXMucm91dGVzLnB1c2goaSksKCk9Pnt0aGlzLnJvdXRlcy5zcGxpY2UodGhpcy5yb3V0ZXMuaW5kZXhPZihpKSwxKX19YXN5bmMgX2hhbmRsZVJvdXRlU3RhdGUoKXtsZXQgdD13aW5kb3cubG9jYXRpb24ucGF0aG5hbWUscj10aGlzLnJvdXRlcy5maWx0ZXIoYT0+ISFhLm1hdGNoRnVuY3Rpb24odCkpO2ZvcihsZXQgYSBvZiByKXtsZXQgaT1hLm1hdGNoRnVuY3Rpb24odCk7YS5oYW5kbGVyKHsuLi5pLnZhbHVlT2YoKSxxdWVyeVBhcmFtczp0aGlzLnF1ZXJ5UGFyYW1zLmdldEFsbEFzT2JqZWN0KCl9KX19ZGVzdHJveSgpe3dpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJwb3BzdGF0ZSIsdGhpcy5wb3BzdGF0ZUxpc3RlbmVyKSx0aGlzLnJvdXRlcz1bXX19fSk7dmFyIFY0PXt9O3FlKFY0LHtTbWFydFJvdXRlcjooKT0+RHdlfSk7dmFyIEF3ZT1sKCgpPT57Ylp0KCl9KTt2YXIgdlp0PWwoKCk9PntYMWUoKTtPeGUoKX0pO2Z1bmN0aW9uIG9sKGUsdCl7cmV0dXJuIGU+Pj50fGU8PDMyLXR9ZnVuY3Rpb24gWm1hKGUsdCl7bGV0IHI9dFswXSxhPXRbMV0saT10WzJdLG89dFszXSxuPXRbNF0scz10WzVdLGM9dFs2XSxkPXRbN107Zm9yKGxldCBmPTA7Zjw2NDtmKyspe2lmKGY+PTE2KXtsZXQgdj1vbChlW2YtMTVdLDcpXm9sKGVbZi0xNV0sMTgpXmVbZi0xNV0+Pj4zLHc9b2woZVtmLTJdLDE3KV5vbChlW2YtMl0sMTkpXmVbZi0yXT4+PjEwO2VbZl09ZVtmLTE2XSt2K2VbZi03XSt3Pj4+MH1sZXQgdT1vbChuLDYpXm9sKG4sMTEpXm9sKG4sMjUpLHA9biZzXn5uJmMsaD1kK3UrcCtHbWFbZl0rZVtmXT4+PjAsYj1vbChyLDIpXm9sKHIsMTMpXm9sKHIsMjIpLHg9ciZhXnImaV5hJmksZz1iK3g+Pj4wO2Q9YyxjPXMscz1uLG49bytoPj4+MCxvPWksaT1hLGE9cixyPWgrZz4+PjB9dFswXT10WzBdK3I+Pj4wLHRbMV09dFsxXSthPj4+MCx0WzJdPXRbMl0raT4+PjAsdFszXT10WzNdK28+Pj4wLHRbNF09dFs0XStuPj4+MCx0WzVdPXRbNV0rcz4+PjAsdFs2XT10WzZdK2M+Pj4wLHRbN109dFs3XStkPj4+MH1mdW5jdGlvbiBFd2UoZSl7bGV0IHQ9Wy4uLlltYV0scj1lLmxlbmd0aCxhPXIqOCxpPXIlNjQ8NTY/NTYtciU2NDoxMjAtciU2NCxvPW5ldyBVaW50OEFycmF5KHIraSs4KTtvLnNldChlKSxvW3JdPTEyODtsZXQgbj1uZXcgRGF0YVZpZXcoby5idWZmZXIpO24uc2V0VWludDMyKG8ubGVuZ3RoLTgsMCwhMSksbi5zZXRVaW50MzIoby5sZW5ndGgtNCxhPj4+MCwhMSk7Zm9yKGxldCBjPTA7YzxvLmxlbmd0aDtjKz02NCl7bGV0IGQ9bmV3IEFycmF5KDY0KTtmb3IobGV0IGY9MDtmPDE2O2YrKylkW2ZdPW4uZ2V0VWludDMyKGMrZio0LCExKTtabWEoZCx0KX1sZXQgcz0iIjtmb3IobGV0IGM9MDtjPDg7YysrKXMrPXRbY10udG9TdHJpbmcoMTYpLnBhZFN0YXJ0KDgsIjAiKTtyZXR1cm4gc312YXIgR21hLFltYSx5WnQ9bCgoKT0+e0dtYT1bMTExNjM1MjQwOCwxODk5NDQ3NDQxLDMwNDkzMjM0NzEsMzkyMTAwOTU3Myw5NjE5ODcxNjMsMTUwODk3MDk5MywyNDUzNjM1NzQ4LDI4NzA3NjMyMjEsMzYyNDM4MTA4MCwzMTA1OTg0MDEsNjA3MjI1Mjc4LDE0MjY4ODE5ODcsMTkyNTA3ODM4OCwyMTYyMDc4MjA2LDI2MTQ4ODgxMDMsMzI0ODIyMjU4MCwzODM1MzkwNDAxLDQwMjIyMjQ3NzQsMjY0MzQ3MDc4LDYwNDgwNzYyOCw3NzAyNTU5ODMsMTI0OTE1MDEyMiwxNTU1MDgxNjkyLDE5OTYwNjQ5ODYsMjU1NDIyMDg4MiwyODIxODM0MzQ5LDI5NTI5OTY4MDgsMzIxMDMxMzY3MSwzMzM2NTcxODkxLDM1ODQ1Mjg3MTEsMTEzOTI2OTkzLDMzODI0MTg5NSw2NjYzMDcyMDUsNzczNTI5OTEyLDEyOTQ3NTczNzIsMTM5NjE4MjI5MSwxNjk1MTgzNzAwLDE5ODY2NjEwNTEsMjE3NzAyNjM1MCwyNDU2OTU2MDM3LDI3MzA0ODU5MjEsMjgyMDMwMjQxMSwzMjU5NzMwODAwLDMzNDU3NjQ3NzEsMzUxNjA2NTgxNywzNjAwMzUyODA0LDQwOTQ1NzE5MDksMjc1NDIzMzQ0LDQzMDIyNzczNCw1MDY5NDg2MTYsNjU5MDYwNTU2LDg4Mzk5Nzg3Nyw5NTgxMzk1NzEsMTMyMjgyMjIxOCwxNTM3MDAyMDYzLDE3NDc4NzM3NzksMTk1NTU2MjIyMiwyMDI0MTA0ODE1LDIyMjc3MzA0NTIsMjM2MTg1MjQyNCwyNDI4NDM2NDc0LDI3NTY3MzQxODcsMzIwNDAzMTQ3OSwzMzI5MzI1Mjk4XSxZbWE9WzE3NzkwMzM3MDMsMzE0NDEzNDI3NywxMDEzOTA0MjQyLDI3NzM0ODA3NjIsMTM1OTg5MzExOSwyNjAwODIyOTI0LDUyODczNDYzNSwxNTQxNDU5MjI1XX0pO3ZhciBVeT17fTtxZShVeSx7bWQ1RnJvbVN0cmluZzooKT0+dDdhLHNoYTI1NkZyb21CdWZmZXI6KCk9PlFtYSxzaGEyNTZGcm9tRmlsZTooKT0+ZTdhLHNoYTI1NkZyb21TdHJlYW06KCk9PkptYSxzaGEyNTZGcm9tU3RyaW5nOigpPT5rWnQsc2hhMjU2RnJvbVN0cmluZ1N5bmM6KCk9PlhtYSxzaGEyNjVGcm9tT2JqZWN0OigpPT5LbWF9KTt2YXIgd1p0LE1adCxrWnQsWG1hLFFtYSxLbWEsSm1hLGU3YSx0N2EsU1p0PWwoKCk9Pnt2WnQoKTt5WnQoKTt3WnQ9ZT0+e2xldCB0PVtdLHI9bmV3IERhdGFWaWV3KGUpO2ZvcihsZXQgYT0wO2E8ci5ieXRlTGVuZ3RoO2ErPTQpe2xldCBvPXIuZ2V0VWludDMyKGEpLnRvU3RyaW5nKDE2KSxuPSIwMDAwMDAwMCIscz0obitvKS5zbGljZSgtbi5sZW5ndGgpO3QucHVzaChzKX1yZXR1cm4gdC5qb2luKCIiKX0sTVp0PSgpPT50eXBlb2YgY3J5cHRvPCJ1IiYmY3J5cHRvLnN1YnRsZSE9PXZvaWQgMCxrWnQ9YXN5bmMgZT0+e2xldCB0PW5ldyBUZXh0RW5jb2RlcigpLmVuY29kZShlKTtpZihNWnQoKSl7bGV0IHI9YXdhaXQgY3J5cHRvLnN1YnRsZS5kaWdlc3QoIlNIQS0yNTYiLHQpO3JldHVybiB3WnQocil9ZWxzZSByZXR1cm4gRXdlKHQpfSxYbWE9ZT0+e3Rocm93IGNvbnNvbGUud2Fybigic2hhMjU2RnJvbVN0cmluZ1N5bmMgaXMgbm90IHRydWx5IHN5bmNocm9ub3VzIGluIGJyb3dzZXIgZW52aXJvbm1lbnQiKSxuZXcgRXJyb3IoInNoYTI1NkZyb21TdHJpbmdTeW5jIGlzIG5vdCBzdXBwb3J0ZWQgaW4gYnJvd3NlciBlbnZpcm9ubWVudC4gVXNlIHNoYTI1NkZyb21TdHJpbmcgaW5zdGVhZC4iKX0sUW1hPWFzeW5jIGU9PntpZihNWnQoKSl7bGV0IHQ7aWYoZSBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkpe2xldCBpPWU7dD1pLmJ1ZmZlci5zbGljZShpLmJ5dGVPZmZzZXQsaS5ieXRlT2Zmc2V0K2kuYnl0ZUxlbmd0aCl9ZWxzZSB0PWU7bGV0IHI9YXdhaXQgY3J5cHRvLnN1YnRsZS5kaWdlc3QoIlNIQS0yNTYiLHQpO3JldHVybiB3WnQocil9ZWxzZXtsZXQgdD1lIGluc3RhbmNlb2YgVWludDhBcnJheT9lOm5ldyBVaW50OEFycmF5KGUpO3JldHVybiBFd2UodCl9fSxLbWE9YXN5bmMgZT0+e2xldCB0PWNjLnN0cmluZ2lmeShlKTtyZXR1cm4gYXdhaXQga1p0KHQpfSxKbWE9ZT0+e3Rocm93IG5ldyBFcnJvcigic2hhMjU2RnJvbVN0cmVhbSBpcyBub3Qgc3VwcG9ydGVkIGluIGJyb3dzZXIgZW52aXJvbm1lbnQiKX0sZTdhPWFzeW5jIGU9Pnt0aHJvdyBuZXcgRXJyb3IoInNoYTI1NkZyb21GaWxlIGlzIG5vdCBzdXBwb3J0ZWQgaW4gYnJvd3NlciBlbnZpcm9ubWVudCIpfSx0N2E9YXN5bmMgZT0+e3Rocm93IG5ldyBFcnJvcigibWQ1RnJvbVN0cmluZyBpcyBub3Qgc3VwcG9ydGVkIGluIGJyb3dzZXIgZW52aXJvbm1lbnQuIFdlYiBDcnlwdG8gQVBJIGRvZXMgbm90IHN1cHBvcnQgTUQ1LiIpfX0pO3ZhciBqbmU9bCgoKT0+e1NadCgpO1oxZSgpO29vKCk7TjIoKTtyb2UoKX0pO3ZhciBXeSwkd2U9bCgoKT0+e1ZuZSgpO1d5PWNsYXNze2NvbnN0cnVjdG9yKHQscil7dGhpcy5zdGF0ZVBhcnRSZWY9dCx0aGlzLmFjdGlvbkRlZj1yfXRyaWdnZXIodCl7cmV0dXJuIHRoaXMuc3RhdGVQYXJ0UmVmLmRpc3BhdGNoQWN0aW9uKHRoaXMsdCl9fX0pO2Z1bmN0aW9uIGE3YShlKXtyZXR1cm4gbmV3IEh0KHQ9PntpZihlLmFib3J0ZWQpe3QubmV4dCgpLHQuY29tcGxldGUoKTtyZXR1cm59bGV0IHI9KCk9Pnt0Lm5leHQoKSx0LmNvbXBsZXRlKCl9O3JldHVybiBlLmFkZEV2ZW50TGlzdGVuZXIoImFib3J0IixyKSwoKT0+ZS5yZW1vdmVFdmVudExpc3RlbmVyKCJhYm9ydCIscil9KX12YXIgR3ksVm5lPWwoKCk9PntqbmUoKTtsdigpOyR3ZSgpO0d5PWNsYXNzIGV7c3RhdGlje3RoaXMuTUFYX05FU1RFRF9ESVNQQVRDSF9ERVBUSD0xMH1jb25zdHJ1Y3Rvcih0LHIpe3RoaXMuc3RhdGU9bmV3IE5yLnJ4anMuU3ViamVjdCx0aGlzLmN1bXVsYXRpdmVEZWZlcnJlZD1sdC5jdW11bGF0aXZlRGVmZXIoKSx0aGlzLm11dGF0aW9uUXVldWU9UHJvbWlzZS5yZXNvbHZlKCksdGhpcy5wZW5kaW5nQ3VtdWxhdGl2ZU5vdGlmaWNhdGlvbj1udWxsLHRoaXMud2ViU3RvcmU9bnVsbCx0aGlzLm1pZGRsZXdhcmVzPVtdLHRoaXMuc2VsZWN0b3JDYWNoZT1uZXcgV2Vha01hcCx0aGlzLmRlZmF1bHRTZWxlY3RPYnNlcnZhYmxlPW51bGwsdGhpcy5uYW1lPXQsciYmKHRoaXMud2ViU3RvcmVPcHRpb25zPXIpfWFzeW5jIGluaXQoKXtpZih0aGlzLndlYlN0b3JlT3B0aW9ucyl7dGhpcy53ZWJTdG9yZT1uZXcgd3MuV2ViU3RvcmUodGhpcy53ZWJTdG9yZU9wdGlvbnMpLGF3YWl0IHRoaXMud2ViU3RvcmUuaW5pdCgpO2xldCB0PWF3YWl0IHRoaXMud2ViU3RvcmUuZ2V0KFN0cmluZyh0aGlzLm5hbWUpKTt0JiZ0aGlzLnZhbGlkYXRlU3RhdGUodCkmJih0aGlzLnN0YXRlU3RvcmU9dCxhd2FpdCB0aGlzLm5vdGlmeUNoYW5nZSgpKX19Z2V0U3RhdGUoKXtyZXR1cm4gdGhpcy5zdGF0ZVN0b3JlfWFkZE1pZGRsZXdhcmUodCl7cmV0dXJuIHRoaXMubWlkZGxld2FyZXMucHVzaCh0KSwoKT0+e2xldCByPXRoaXMubWlkZGxld2FyZXMuaW5kZXhPZih0KTtyIT09LTEmJnRoaXMubWlkZGxld2FyZXMuc3BsaWNlKHIsMSl9fWFzeW5jIHNldFN0YXRlKHQpe3JldHVybiB0aGlzLm11dGF0aW9uUXVldWU9dGhpcy5tdXRhdGlvblF1ZXVlLnRoZW4oKCk9PnRoaXMuYXBwbHlTdGF0ZSh0KSwoKT0+dGhpcy5hcHBseVN0YXRlKHQpKX1hc3luYyBhcHBseVN0YXRlKHQpe2xldCByPXQ7Zm9yKGxldCBhIG9mIHRoaXMubWlkZGxld2FyZXMpcj1hd2FpdCBhKHIsdGhpcy5zdGF0ZVN0b3JlKTtpZighdGhpcy52YWxpZGF0ZVN0YXRlKHIpKXRocm93IG5ldyBFcnJvcihgSW52YWxpZCBzdGF0ZSBzdHJ1Y3R1cmUgZm9yIHN0YXRlIHBhcnQgJyR7dGhpcy5uYW1lfSdgKTtyZXR1cm4gdGhpcy53ZWJTdG9yZSYmYXdhaXQgdGhpcy53ZWJTdG9yZS5zZXQoU3RyaW5nKHRoaXMubmFtZSksciksdGhpcy5zdGF0ZVN0b3JlPXIsYXdhaXQgdGhpcy5ub3RpZnlDaGFuZ2UoKSx0aGlzLnN0YXRlU3RvcmV9dmFsaWRhdGVTdGF0ZSh0KXtyZXR1cm4gdCE9bnVsbH1hc3luYyBub3RpZnlDaGFuZ2UoKXtsZXQgdD10aGlzLnN0YXRlU3RvcmU7aWYodD09PXZvaWQgMClyZXR1cm47aWYodGhpcy5zbWFydHN0YXRlUmVmPy5pc0JhdGNoaW5nKXt0aGlzLnNtYXJ0c3RhdGVSZWYucmVnaXN0ZXJQZW5kaW5nTm90aWZpY2F0aW9uKHRoaXMpO3JldHVybn1sZXQgcj1hc3luYyBhPT5hd2FpdCBVeS5zaGEyNTZGcm9tU3RyaW5nKHlzLnN0YWJsZU9uZVdheVN0cmluZ2lmeShhKSk7dHJ5e2xldCBhPWF3YWl0IHIodCk7aWYodGhpcy5sYXN0U3RhdGVOb3RpZmljYXRpb25QYXlsb2FkSGFzaCYmYT09PXRoaXMubGFzdFN0YXRlTm90aWZpY2F0aW9uUGF5bG9hZEhhc2gpcmV0dXJuO3RoaXMubGFzdFN0YXRlTm90aWZpY2F0aW9uUGF5bG9hZEhhc2g9YX1jYXRjaChhKXtjb25zb2xlLmVycm9yKGBTdGF0ZSBoYXNoIGNvbXB1dGF0aW9uIGZhaWxlZCBmb3IgJyR7dGhpcy5uYW1lfSc6YCxhKX10aGlzLnN0YXRlLm5leHQodCl9bm90aWZ5Q2hhbmdlQ3VtdWxhdGl2ZSgpe3RoaXMucGVuZGluZ0N1bXVsYXRpdmVOb3RpZmljYXRpb24mJmNsZWFyVGltZW91dCh0aGlzLnBlbmRpbmdDdW11bGF0aXZlTm90aWZpY2F0aW9uKSx0aGlzLnBlbmRpbmdDdW11bGF0aXZlTm90aWZpY2F0aW9uPXNldFRpbWVvdXQoKCk9Pnt0aGlzLnBlbmRpbmdDdW11bGF0aXZlTm90aWZpY2F0aW9uPW51bGwsdGhpcy5zdGF0ZVN0b3JlIT09dm9pZCAwJiZ0aGlzLm5vdGlmeUNoYW5nZSgpLmNhdGNoKHQ9Pntjb25zb2xlLmVycm9yKGBub3RpZnlDaGFuZ2VDdW11bGF0aXZlIGZhaWxlZCBmb3IgJyR7dGhpcy5uYW1lfSc6YCx0KX0pfSwwKX1zZWxlY3QodCxyKXtsZXQgYT1yPy5zaWduYWwhPW51bGw7aWYoIWEpe2lmKHQpe2lmKHRoaXMuc2VsZWN0b3JDYWNoZS5oYXModCkpcmV0dXJuIHRoaXMuc2VsZWN0b3JDYWNoZS5nZXQodCl9ZWxzZSBpZih0aGlzLmRlZmF1bHRTZWxlY3RPYnNlcnZhYmxlKXJldHVybiB0aGlzLmRlZmF1bHRTZWxlY3RPYnNlcnZhYmxlfWxldCBpPXR8fChzPT5zKSxvPXRoaXMuc3RhdGUucGlwZShOci5yeGpzLm9wcy5zdGFydFdpdGgodGhpcy5nZXRTdGF0ZSgpKSxOci5yeGpzLm9wcy5maWx0ZXIocz0+cyE9PXZvaWQgMCksTnIucnhqcy5vcHMubWFwKHM9Pnt0cnl7cmV0dXJuIGkocyl9Y2F0Y2goYyl7Y29uc29sZS5lcnJvcihgU2VsZWN0b3IgZXJyb3IgaW4gc3RhdGUgcGFydCAnJHt0aGlzLm5hbWV9JzpgLGMpO3JldHVybn19KSk7aWYoYSlyZXR1cm4gbz1vLnBpcGUocjcoYTdhKHIuc2lnbmFsKSkpLG87bGV0IG49by5waXBlKHBhZSh7YnVmZmVyU2l6ZToxLHJlZkNvdW50OiEwfSkpO3JldHVybiB0P3RoaXMuc2VsZWN0b3JDYWNoZS5zZXQodCxuKTp0aGlzLmRlZmF1bHRTZWxlY3RPYnNlcnZhYmxlPW4sbn1jcmVhdGVBY3Rpb24odCl7cmV0dXJuIG5ldyBXeSh0aGlzLHQpfWNyZWF0ZUFjdGlvbkNvbnRleHQodCl7bGV0IHI9dGhpcztyZXR1cm57ZGlzcGF0Y2g6YXN5bmMoYSxpKT0+e2lmKHQ+PWUuTUFYX05FU1RFRF9ESVNQQVRDSF9ERVBUSCl0aHJvdyBuZXcgRXJyb3IoYE1heGltdW0gbmVzdGVkIGFjdGlvbiBkaXNwYXRjaCBkZXB0aCAoJHtlLk1BWF9ORVNURURfRElTUEFUQ0hfREVQVEh9KSBleGNlZWRlZC4gQ2hlY2sgZm9yIGNpcmN1bGFyIGFjdGlvbiBkaXNwYXRjaGVzLmApO2xldCBvPXIuY3JlYXRlQWN0aW9uQ29udGV4dCh0KzEpLG49YXdhaXQgYS5hY3Rpb25EZWYocixpLG8pO3JldHVybiByLmFwcGx5U3RhdGUobil9fX1hc3luYyBkaXNwYXRjaEFjdGlvbih0LHIpe3JldHVybiBhd2FpdCB0aGlzLmN1bXVsYXRpdmVEZWZlcnJlZC5wcm9taXNlLHRoaXMubXV0YXRpb25RdWV1ZT10aGlzLm11dGF0aW9uUXVldWUudGhlbihhc3luYygpPT57bGV0IGE9dGhpcy5jcmVhdGVBY3Rpb25Db250ZXh0KDApLGk9YXdhaXQgdC5hY3Rpb25EZWYodGhpcyxyLGEpO3JldHVybiB0aGlzLmFwcGx5U3RhdGUoaSl9LGFzeW5jKCk9PntsZXQgYT10aGlzLmNyZWF0ZUFjdGlvbkNvbnRleHQoMCksaT1hd2FpdCB0LmFjdGlvbkRlZih0aGlzLHIsYSk7cmV0dXJuIHRoaXMuYXBwbHlTdGF0ZShpKX0pfWFzeW5jIHdhaXRVbnRpbFByZXNlbnQodCxyKXtsZXQgYSxpO3R5cGVvZiByPT0ibnVtYmVyIj9hPXI6ciYmKGE9ci50aW1lb3V0TXMsaT1yLnNpZ25hbCk7bGV0IG89bHQuZGVmZXIoKSxuPXRoaXMuc2VsZWN0KHQpLHM9ITE7aWYoaT8uYWJvcnRlZCl0aHJvdyBuZXcgRXJyb3IoIkFib3J0ZWQiKTtsZXQgYz1uLnN1YnNjcmliZSh1PT57dSE9bnVsbCYmIXMmJihzPSEwLG8ucmVzb2x2ZSh1KSl9KSxkO2EmJihkPXNldFRpbWVvdXQoKCk9PntzfHwocz0hMCxjLnVuc3Vic2NyaWJlKCksby5yZWplY3QobmV3IEVycm9yKGB3YWl0VW50aWxQcmVzZW50IHRpbWVkIG91dCBhZnRlciAke2F9bXNgKSkpfSxhKSk7bGV0IGY9aT8oKT0+e3N8fChzPSEwLGMudW5zdWJzY3JpYmUoKSxkJiZjbGVhclRpbWVvdXQoZCksby5yZWplY3QobmV3IEVycm9yKCJBYm9ydGVkIikpKX06dm9pZCAwO2kmJmYmJmkuYWRkRXZlbnRMaXN0ZW5lcigiYWJvcnQiLGYpO3RyeXtyZXR1cm4gYXdhaXQgby5wcm9taXNlfWZpbmFsbHl7Yy51bnN1YnNjcmliZSgpLGQmJmNsZWFyVGltZW91dChkKSxpJiZmJiZpLnJlbW92ZUV2ZW50TGlzdGVuZXIoImFib3J0IixmKX19YXN5bmMgc3RhdGVTZXR1cCh0KXtsZXQgcj10KHRoaXMpO3RoaXMuY3VtdWxhdGl2ZURlZmVycmVkLmFkZFByb21pc2UociksYXdhaXQgdGhpcy5zZXRTdGF0ZShhd2FpdCByKX1kaXNwb3NlKCl7dGhpcy5zdGF0ZS5jb21wbGV0ZSgpLHRoaXMucGVuZGluZ0N1bXVsYXRpdmVOb3RpZmljYXRpb24mJihjbGVhclRpbWVvdXQodGhpcy5wZW5kaW5nQ3VtdWxhdGl2ZU5vdGlmaWNhdGlvbiksdGhpcy5wZW5kaW5nQ3VtdWxhdGl2ZU5vdGlmaWNhdGlvbj1udWxsKSx0aGlzLm1pZGRsZXdhcmVzLmxlbmd0aD0wLHRoaXMuc2VsZWN0b3JDYWNoZT1uZXcgV2Vha01hcCx0aGlzLmRlZmF1bHRTZWxlY3RPYnNlcnZhYmxlPW51bGwsdGhpcy53ZWJTdG9yZT1udWxsLHRoaXMuc21hcnRzdGF0ZVJlZj12b2lkIDB9fX0pO2Z1bmN0aW9uIFB3ZShlLHQpe3JldHVybiB5bWUoZS5tYXAocj0+ci5zZWxlY3QoKSkpLnBpcGUoSTIocj0+dCguLi5yKSkpfXZhciBJd2U9bCgoKT0+e2puZSgpO2x2KCl9KTt2YXIgTndlLHpadD1sKCgpPT57am5lKCk7Vm5lKCk7SXdlKCk7TndlPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5zdGF0ZVBhcnRNYXA9e30sdGhpcy5wZW5kaW5nU3RhdGVQYXJ0Q3JlYXRpb249bmV3IE1hcCx0aGlzLmJhdGNoRGVwdGg9MCx0aGlzLmlzRmx1c2hpbmc9ITEsdGhpcy5wZW5kaW5nTm90aWZpY2F0aW9ucz1uZXcgU2V0fWdldCBpc0JhdGNoaW5nKCl7cmV0dXJuIHRoaXMuYmF0Y2hEZXB0aD4wfXJlZ2lzdGVyUGVuZGluZ05vdGlmaWNhdGlvbih0KXt0aGlzLnBlbmRpbmdOb3RpZmljYXRpb25zLmFkZCh0KX1hc3luYyBiYXRjaCh0KXt0aGlzLmJhdGNoRGVwdGgrKzt0cnl7YXdhaXQgdCgpfWZpbmFsbHl7aWYodGhpcy5iYXRjaERlcHRoLS0sdGhpcy5iYXRjaERlcHRoPT09MCYmIXRoaXMuaXNGbHVzaGluZyl7dGhpcy5pc0ZsdXNoaW5nPSEwO3RyeXtmb3IoO3RoaXMucGVuZGluZ05vdGlmaWNhdGlvbnMuc2l6ZT4wOyl7bGV0IHI9Wy4uLnRoaXMucGVuZGluZ05vdGlmaWNhdGlvbnNdO3RoaXMucGVuZGluZ05vdGlmaWNhdGlvbnMuY2xlYXIoKTtmb3IobGV0IGEgb2Ygcilhd2FpdCBhLm5vdGlmeUNoYW5nZSgpfX1maW5hbGx5e3RoaXMuaXNGbHVzaGluZz0hMX19fX1jb21wdXRlZCh0LHIpe3JldHVybiBQd2UodCxyKX1hc3luYyBnZXRTdGF0ZVBhcnQodCxyLGE9InNvZnQiKXtsZXQgaT10aGlzLnBlbmRpbmdTdGF0ZVBhcnRDcmVhdGlvbi5nZXQodCk7aWYoaSlyZXR1cm4gaTtsZXQgbz10aGlzLnN0YXRlUGFydE1hcFt0XTtpZihvKXN3aXRjaChhKXtjYXNlIm1hbmRhdG9yeSI6dGhyb3cgbmV3IEVycm9yKGBTdGF0ZSBwYXJ0ICcke3R9JyBhbHJlYWR5IGV4aXN0cywgYnV0IGluaXRNb2RlIGlzICdtYW5kYXRvcnknYCk7Y2FzZSJmb3JjZSI6by5kaXNwb3NlKCk7YnJlYWs7ZGVmYXVsdDpyZXR1cm4gb31lbHNlIGlmKHI9PT12b2lkIDApdGhyb3cgbmV3IEVycm9yKGBTdGF0ZSBwYXJ0ICcke3R9JyBkb2VzIG5vdCBleGlzdCBhbmQgbm8gaW5pdGlhbCBzdGF0ZSBwcm92aWRlZGApO2xldCBuPXRoaXMuY3JlYXRlU3RhdGVQYXJ0KHQscixhKTt0aGlzLnBlbmRpbmdTdGF0ZVBhcnRDcmVhdGlvbi5zZXQodCxuKTt0cnl7cmV0dXJuIGF3YWl0IG59ZmluYWxseXt0aGlzLnBlbmRpbmdTdGF0ZVBhcnRDcmVhdGlvbi5kZWxldGUodCl9fWFzeW5jIGNyZWF0ZVN0YXRlUGFydCh0LHIsYT0ic29mdCIpe2xldCBpPW5ldyBHeSh0LGE9PT0icGVyc2lzdGVudCI/e2RiTmFtZToic21hcnRzdGF0ZSIsc3RvcmVOYW1lOnR9Om51bGwpO2kuc21hcnRzdGF0ZVJlZj10aGlzLGF3YWl0IGkuaW5pdCgpO2xldCBvPWkuZ2V0U3RhdGUoKTtyZXR1cm4gYT09PSJwZXJzaXN0ZW50IiYmbyE9PXZvaWQgMD9hd2FpdCBpLnNldFN0YXRlKHsuLi5yLC4uLm99KTphd2FpdCBpLnNldFN0YXRlKHIpLHRoaXMuc3RhdGVQYXJ0TWFwW3RdPWksaX19fSk7ZnVuY3Rpb24gaTdhKGUsdCl7bGV0e2NvbnRleHQ6cixzdGF0ZVBhcnQ6YSxzZWxlY3RvckZuOml9PXQsbz1uZXcgU2V0LG49YS5zZWxlY3QoaSkuc3Vic2NyaWJlKGQ9Pntmb3IobGV0IGYgb2YgbylmKGQpfSkscz0oKT0+e2xldCBkPWEuZ2V0U3RhdGUoKTtpZihkIT09dm9pZCAwKXJldHVybiBpP2koZCk6ZH0sYz1kPT57bGV0IGY9ZCx1PWYuZGV0YWlsO2lmKCEoIXV8fHUuY29udGV4dCE9PXIpKWlmKGYuc3RvcFByb3BhZ2F0aW9uKCksdS5zdWJzY3JpYmUpe2xldCBwPXUuY2FsbGJhY2s7by5hZGQocCk7bGV0IGg9KCk9Pm8uZGVsZXRlKHApO3AocygpLGgpfWVsc2UgdS5jYWxsYmFjayhzKCkpfTtyZXR1cm4gZS5hZGRFdmVudExpc3RlbmVyKCJjb250ZXh0LXJlcXVlc3QiLGMpLCgpPT57ZS5yZW1vdmVFdmVudExpc3RlbmVyKCJjb250ZXh0LXJlcXVlc3QiLGMpLG4udW5zdWJzY3JpYmUoKSxvLmNsZWFyKCl9fXZhciBDWnQ9bCgoKT0+e30pO3ZhciBVND17fTtxZShVNCx7U21hcnRzdGF0ZTooKT0+TndlLFN0YXRlQWN0aW9uOigpPT5XeSxTdGF0ZVBhcnQ6KCk9Pkd5LGF0dGFjaENvbnRleHRQcm92aWRlcjooKT0+aTdhLGNvbXB1dGVkOigpPT5Qd2V9KTt2YXIgRndlPWwoKCk9Pnt6WnQoKTtWbmUoKTskd2UoKTtJd2UoKTtDWnQoKX0pO3ZhciBfWnQ9bCgoKT0+e30pO3ZhciBPd2UsVFp0PWwoKCk9PntfWnQoKTtPd2U9Y2xhc3MgZXtzdGF0aWMgY3JlYXRlRnJvbVVybCh0LHIpe2xldCBhPW5ldyBVUkwodCksaT17fSxvPVtdO2Euc2VhcmNoJiZhLnNlYXJjaC5yZXBsYWNlKCI/IiwiIikuc3BsaXQoIiYiKS5tYXAoZD0+e28ucHVzaCh7a2V5OmQuc3BsaXQoIj0iKVswXSx2YWx1ZTpkLnNwbGl0KCI9IilbMV19KX0pO2ZvcihsZXQgZCBvZiBvKWlbZC5rZXldPWQudmFsdWU7aWYocj8uc2VhcmNoUGFyYW1zKWZvcihsZXQgZCBvZiBPYmplY3Qua2V5cyhyLnNlYXJjaFBhcmFtcykpaVtkXT1yLnNlYXJjaFBhcmFtc1tkXTtsZXQgbj1hLnBhdGhuYW1lfHwiIjtpZihPYmplY3Qua2V5cyhpKS5sZW5ndGg+MCl7bis9Ij8iO2xldCBkPSEwO2ZvcihsZXQgZiBvZiBPYmplY3Qua2V5cyhpKSlkP2Q9ITE6bis9IiYiLG4rPWAke2Z9PSR7aVtmXX1gfWxldCBzPXsuLi5hLGhyZWY6YS5ocmVmLG9yaWdpbjphLm9yaWdpbixwcm90b2NvbDphLnByb3RvY29sLHVzZXJuYW1lOmEudXNlcm5hbWUscGFzc3dvcmQ6YS5wYXNzd29yZCxob3N0OmEuaG9zdCxob3N0bmFtZTphLmhvc3RuYW1lLHBvcnQ6YS5wb3J0LHBhdGg6bixwYXRobmFtZTphLnBhdGhuYW1lLHNlYXJjaDphLnNlYXJjaCxzZWFyY2hQYXJhbXM6aSxoYXNoOmEuaGFzaH07IXMucG9ydCYmcy5wcm90b2NvbD09PSJodHRwczoiJiYocy5wb3J0PSI0NDMiKSwhcy5wb3J0JiZzLnByb3RvY29sPT09Imh0dHA6IiYmKHMucG9ydD0iODAiKTtsZXQgYz1uZXcgZTtyZXR1cm4gT2JqZWN0LmFzc2lnbihjLHMpLGN9c3RhdGljIGNyZWF0ZUZyb21QYXJzZWRVcmwodCl7bGV0IHI9bmV3IGU7cmV0dXJuIE9iamVjdC5hc3NpZ24ocix0KSxyfWNvbnN0cnVjdG9yKCl7dGhpcy5zZWFyY2hQYXJhbXM9e319Y2xvbmUoKXtsZXQgdD1uZXcgZTtyZXR1cm4gT2JqZWN0LmFzc2lnbih0LHRoaXMpLHQuc2VhcmNoUGFyYW1zPXsuLi50aGlzLnNlYXJjaFBhcmFtc30sdH1zZXQodCxyKXtyZXR1cm4gdGhpc1t0XT1yLHRoaXN9dG9TdHJpbmcoKXtsZXQgdD0iIjtyZXR1cm4gdGhpcy51c2VybmFtZSYmIXRoaXMucGFzc3dvcmQmJih0PWAke3RoaXMudXNlcm5hbWV9QGApLHRoaXMudXNlcm5hbWUmJnRoaXMucGFzc3dvcmQmJih0PWAke3RoaXMudXNlcm5hbWV9OiR7dGhpcy5wYXNzd29yZH1AYCksYCR7dGhpcy5wcm90b2NvbH0vLyR7dH0ke3RoaXMuaG9zdG5hbWV9OiR7dGhpcy5wb3J0fSR7dGhpcy5wYXRofWB9fX0pO3ZhciBXND17fTtxZShXNCx7U21hcnR1cmw6KCk9Pk93ZX0pO3ZhciBSd2U9bCgoKT0+e1RadCgpfSk7dmFyIFVuZSxKNixXbmU9bCgoKT0+e1VuZT1jbGFzc3tjbGFpbSgpe2lmKHRoaXMuY2xhaW1lZCl0aHJvdyBuZXcgRXJyb3IoIkRlZmVycmVkIGFscmVhZHkgY2xhaW1lZCIpO3RoaXMuY2xhaW1lZD0hMH1nZXQgZHVyYXRpb24oKXtyZXR1cm4gdGhpcy5zdG9wcGVkQXQ/dGhpcy5zdG9wcGVkQXQtdGhpcy5zdGFydGVkQXQ6RGF0ZS5ub3coKS10aGlzLnN0YXJ0ZWRBdH1jb25zdHJ1Y3Rvcigpe3RoaXMuY2xhaW1lZD0hMSx0aGlzLnByb21pc2U9bmV3IFByb21pc2UoKHQscik9Pnt0aGlzLnJlc29sdmU9YT0+e3RoaXMuc3RhdHVzPSJmdWxmaWxsZWQiLHRoaXMuc3RvcHBlZEF0PURhdGUubm93KCksdChhKX0sdGhpcy5yZWplY3Q9YT0+e3RoaXMuc3RhdHVzPSJyZWplY3RlZCIsdGhpcy5zdG9wcGVkQXQ9RGF0ZS5ub3coKSxyKGEpfSx0aGlzLnN0YXJ0ZWRBdD1EYXRlLm5vdygpLHRoaXMuc3RhdHVzPSJwZW5kaW5nIn0pfX0sSjY9KCk9Pm5ldyBVbmV9KTt2YXIgR25lLG83YSxMWnQ9bCgoKT0+e1duZSgpO0duZT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuYWNjdW11bGF0ZWRQcm9taXNlcz1bXSx0aGlzLmRlZmVycmVkPUo2KCksdGhpcy5wcm9taXNlPXRoaXMuZGVmZXJyZWQucHJvbWlzZSxzZXRUaW1lb3V0KGFzeW5jKCk9Pntmb3IoO3RoaXMuYWNjdW11bGF0ZWRQcm9taXNlcy5sZW5ndGg+MDspYXdhaXQgdGhpcy5hY2N1bXVsYXRlZFByb21pc2VzLnNoaWZ0KCk7dGhpcy5kZWZlcnJlZC5yZXNvbHZlKCl9LDApfWFkZFByb21pc2UodCl7dGhpcy5hY2N1bXVsYXRlZFByb21pc2VzLnB1c2godCl9fSxvN2E9KCk9Pm5ldyBHbmV9KTt2YXIgZXU9e307cWUoZXUse0N1bXVsYXRpdmVEZWZlcnJlZDooKT0+R25lLERlZmVycmVkOigpPT5VbmUsY3VtdWxhdGl2ZURlZmVyOigpPT5vN2EsZGVmZXI6KCk9Pko2LGdldEZpcnN0VHJ1ZU9yRmFsc2U6KCk9PmQ3YSxtYXA6KCk9Pmw3YSxyZWplY3RlZFByb21pc2U6KCk9PnM3YSxyZXNvbHZlZFByb21pc2U6KCk9Pm43YSx0aW1lb3V0QW5kQ29udGludWU6KCk9PmM3YSx0aW1lb3V0V3JhcDooKT0+RFp0fSk7dmFyIG43YSxzN2EsbDdhLERadCxjN2EsZDdhLEJ3ZT1sKCgpPT57V25lKCk7TFp0KCk7V25lKCk7bjdhPWU9PlByb21pc2UucmVzb2x2ZShlKSxzN2E9ZT0+UHJvbWlzZS5yZWplY3QoZSksbDdhPWFzeW5jKGUsdCk9PntsZXQgcj1bXSxhPVtdO2ZvcihsZXQgaSBvZiBlKXtsZXQgbz10KGkpO3IucHVzaChvKSxvLnRoZW4obj0+e2EucHVzaChuKX0pfXJldHVybiBhd2FpdCBQcm9taXNlLmFsbChyKSxhfSxEWnQ9YXN5bmMoZSx0LHI9ITApPT5uZXcgUHJvbWlzZSgoYSxpKT0+e3NldFRpbWVvdXQoKCk9PntyP2kobmV3IEVycm9yKCJ0aW1lb3V0IikpOmEobnVsbCl9LHQpLGUudGhlbihhLGkpfSksYzdhPWFzeW5jKGUsdD02ZTQpPT5EWnQoZSx0LCExKSxkN2E9YXN5bmMgZT0+e2xldCB0PUo2KCk7Zm9yKGxldCByIG9mIGUpci50aGVuKGE9PnthPT09ITAmJnQucmVzb2x2ZSghMCl9KTtyZXR1cm4gUHJvbWlzZS5hbGwoZSkudGhlbigoKT0+e3QucmVzb2x2ZSghMSl9KSx0LnByb21pc2V9fSk7dmFyIEh3ZT17fTtxZShId2Use1RpbWVvdXQ6KCk9PlluZSxkZWxheUZvcjooKT0+QVp0LGRlbGF5Rm9yUmFuZG9tOigpPT51N2F9KTt2YXIgQVp0LHU3YSxZbmUsRVp0PWwoKCk9PntCd2UoKTtBWnQ9YXN5bmMoZSx0LHI9ITEpPT4oYXdhaXQgbmV3IFluZShlLG51bGwscikucHJvbWlzZSx0KSx1N2E9YXN5bmMoZSx0LHIsYT0hMSk9Pihhd2FpdCBBWnQoTWF0aC5yYW5kb20oKSoodC1lKStlLG51bGwsYSksciksWW5lPWNsYXNze2NvbnN0cnVjdG9yKHQscixhPSExKXt0aGlzLl9jYW5jZWxsZWQ9ITEsdGhpcy50aW1lb3V0SW5NaWxsaXM9dCx0aGlzLl9kZWZlcnJlZD1KNigpLHRoaXMucHJvbWlzZT10aGlzLl9kZWZlcnJlZC5wcm9taXNlLHRoaXMuX3RpbWVvdXQ9c2V0VGltZW91dCgoKT0+e3RoaXMuX2NhbmNlbGxlZHx8dGhpcy5fZGVmZXJyZWQucmVzb2x2ZShyKX0sdCksdGhpcy5zdGFydGVkPURhdGUubm93KCksYSYmdGhpcy5tYWtlVW5yZWZlZCgpfW1ha2VVbnJlZmVkKCl7dGhpcy5fdGltZW91dC51bnJlZigpfWNhbmNlbCgpe3RoaXMuX2NhbmNlbGxlZD0hMCxjbGVhclRpbWVvdXQodGhpcy5fdGltZW91dCl9Z2V0VGltZUxlZnQoKXtsZXQgdD10aGlzLnN0YXJ0ZWQrdGhpcy50aW1lb3V0SW5NaWxsaXMtRGF0ZS5ub3coKTtyZXR1cm4gdD4wP3Q6MH19fSk7dmFyICRadD1sKCgpPT57fSk7dmFyIFpuZT1sKCgpPT57bmwoKX0pO3ZhciBYbmU9bCgoKT0+e25sKCk7bmwoKX0pO3ZhciBQWnQ9bCgoKT0+e25sKCl9KTt2YXIgSVp0PWwoKCk9Pnt9KTt2YXIgTlp0PWwoKCk9PntubCgpfSk7dmFyIEZadD1sKCgpPT57bmwoKX0pO3ZhciBPWnQ9bCgoKT0+e30pO3ZhciBSWnQ9bCgoKT0+e30pO3ZhciBxd2U9e307dmFyIFFuZT1sKCgpPT57UFp0KCk7SVp0KCk7Tlp0KCk7Rlp0KCk7T1p0KCk7Ulp0KCl9KTt2YXIgandlLEJadD1sKCgpPT57UW5lKCk7Wm5lKCk7WG5lKCk7andlPWNsYXNze319KTt2YXIgSFp0PWwoKCk9Pnt9KTt2YXIgcVp0PWwoKCk9Pnt9KTt2YXIgalp0PWwoKCk9Pnt9KTt2YXIgVlp0PWwoKCk9Pnt9KTt2YXIgVndlPXt9O3ZhciBVd2U9bCgoKT0+e0hadCgpO3FadCgpO2padCgpO1ZadCgpfSk7dmFyIFVadD1sKCgpPT57V3dlKCk7UW5lKCk7VXdlKCl9KTt2YXIgV1p0PWwoKCk9Pnt9KTt2YXIgR1p0PWwoKCk9PntYbmUoKX0pO3ZhciBZWnQ9bCgoKT0+e30pO3ZhciBLbmU9e307cWUoS25lLHtJSm9iOigpPT5qd2V9KTt2YXIgV3dlPWwoKCk9PnskWnQoKTtabmUoKTtYbmUoKTtCWnQoKTtVWnQoKTtXWnQoKTtHWnQoKTtZWnQoKX0pO3ZhciBaWnQ9bCgoKT0+e30pO3ZhciBYWnQ9bCgoKT0+e30pO3ZhciBHd2U9e307dmFyIFFadD1sKCgpPT57Wlp0KCk7WFp0KCl9KTt2YXIgS1p0PWwoKCk9Pnt9KTt2YXIgSlp0PWwoKCk9Pnt9KTt2YXIgWXdlPXt9O3ZhciBlWHQ9bCgoKT0+e0tadCgpO0padCgpfSk7dmFyIFp3ZT1sKCgpPT57bmwoKX0pO3ZhciB0WHQ9bCgoKT0+e25sKCl9KTt2YXIgclh0PWwoKCk9Pntad2UoKX0pO3ZhciBYd2U9e307dmFyIGFYdD1sKCgpPT57WndlKCk7dFh0KCk7clh0KCl9KTt2YXIgaVh0PWwoKCk9Pnt9KTt2YXIgb1h0PWwoKCk9Pnt9KTt2YXIgUXdlPXt9O3ZhciBuWHQ9bCgoKT0+e2lYdCgpO29YdCgpfSk7dmFyIEt3ZT1sKCgpPT57fSk7dmFyIEp3ZSxzWHQ9bCgoKT0+e0t3ZSgpO0p3ZT1jbGFzc3t9fSk7dmFyIGxYdD1sKCgpPT57fSk7dmFyIGNYdD1sKCgpPT57fSk7dmFyIGRYdD1sKCgpPT57fSk7dmFyIHVYdD1sKCgpPT57fSk7dmFyIGZYdD1sKCgpPT57fSk7dmFyIHBYdD1sKCgpPT57fSk7dmFyIGhYdD1sKCgpPT57fSk7dmFyIG1YdD1sKCgpPT57fSk7dmFyIGdYdD1sKCgpPT57fSk7dmFyIEpuZT17fTtxZShKbmUse0lDbmFtZURlc2NyaXB0b3I6KCk9Pkp3ZX0pO3ZhciB4WHQ9bCgoKT0+e0t3ZSgpO3NYdCgpO2xYdCgpO2NYdCgpO2RYdCgpO3VYdCgpO2ZYdCgpO3BYdCgpO2hYdCgpO21YdCgpO2dYdCgpfSk7dmFyIGVNZT1sKCgpPT57Wm5lKCl9KTt2YXIgYlh0PWwoKCk9PntlTWUoKX0pO3ZhciB0TWU9e307dmFyIHZYdD1sKCgpPT57Ylh0KCk7ZU1lKCl9KTt2YXIgck1lPXt9O3ZhciB5WHQ9bCgoKT0+e30pO3ZhciB3WHQ9bCgoKT0+e30pO3ZhciBNWHQ9bCgoKT0+e30pO3ZhciBrWHQ9bCgoKT0+e30pO3ZhciBhTWU9e307dmFyIFNYdD1sKCgpPT57d1h0KCk7TVh0KCk7a1h0KCl9KTt2YXIgelh0PWwoKCk9Pnt9KTt2YXIgaU1lPXt9O3FlKGlNZSx7YnVzaW5lc3M6KCk9PktuZSxjb2RlOigpPT5Hd2UsY29udGFpbmVyOigpPT5Zd2UsY29udGVudDooKT0+WHdlLGRhdGFiYXNlOigpPT5Wd2UsZmluYW5jZTooKT0+cXdlLGdlbmVyYWw6KCk9PlF3ZSxuZXR3b3JrOigpPT5KbmUsc2FhczooKT0+dE1lLHN0b3JhZ2U6KCk9PnJNZSx3ZWJzaXRlOigpPT5hTWV9KTt2YXIgbmw9bCgoKT0+e1d3ZSgpO1FadCgpO2VYdCgpO1V3ZSgpO1FuZSgpO2FYdCgpO25YdCgpO3hYdCgpO3ZYdCgpO3lYdCgpO1NYdCgpO3pYdCgpfSk7dmFyIHZjPWwoKCk9PntFWnQoKTtCd2UoKTtubCgpfSk7dmFyIGVzZT1sKCgpPT57dmMoKX0pO3ZhciBHNCxZeT1sKCgpPT57dmMoKTtHND1jbGFzc3thcHBlbmRUb0RvbSgpeyF0aGlzLmVsZW1lbnRSZWYucGFyZW50RWxlbWVudCYmIXRoaXMuZWxlbWVudFJlZi5wYXJlbnROb2RlJiZkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLmFwcGVuZENoaWxkKHRoaXMuZWxlbWVudFJlZil9cmVtb3ZlRnJvbURvbSgpe3RoaXMuZWxlbWVudFJlZi5wYXJlbnRFbGVtZW50P3RoaXMuZWxlbWVudFJlZi5wYXJlbnRFbGVtZW50LnJlbW92ZUNoaWxkKHRoaXMuZWxlbWVudFJlZik6dGhpcy5lbGVtZW50UmVmLnBhcmVudE5vZGUmJnRoaXMuZWxlbWVudFJlZi5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHRoaXMuZWxlbWVudFJlZil9fX0pO3ZhciB0dSx0c2U9bCgoKT0+e3ZjKCk7ZXNlKCk7WXkoKTt0dT1jbGFzcyBlIGV4dGVuZHMgRzR7c3RhdGljIGNyZWF0ZUNvbXBhbnlKc29uTGQodCl7bGV0IHI9eyJAY29udGV4dCI6Imh0dHBzOi8vc2NoZW1hLm9yZyIsIkB0eXBlIjoiQ29ycG9yYXRpb24iLG5hbWU6dC5uYW1lLGFsdGVybmF0ZU5hbWU6dC5uYW1lLnJlcGxhY2UoIiBHbWJIIiwiIiksdXJsOnQuY29udGFjdC53ZWJzaXRlLGxvZ286dC5jb250YWN0LmxvZ29VcmwsY29udGFjdFBvaW50OnsiQHR5cGUiOiJDb250YWN0UG9pbnQiLHRlbGVwaG9uZTp0LmNvbnRhY3QucGhvbmUsY29udGFjdFR5cGU6ImN1c3RvbWVyIHNlcnZpY2UiLGFyZWFTZXJ2ZWQ6IkRFIixhdmFpbGFibGVMYW5ndWFnZTpbImVuIiwiR2VybWFuIl19LHNhbWVBczpbXX07cmV0dXJuIHQuY29udGFjdC5mYWNlYm9va1VybCYmci5zYW1lQXMucHVzaCh0LmNvbnRhY3QuZmFjZWJvb2tVcmwpLHQuY29udGFjdC50d2l0dGVyVXJsJiZyLnNhbWVBcy5wdXNoKHQuY29udGFjdC50d2l0dGVyVXJsKSxuZXcgZShyKX1zdGF0aWMgY3JlYXRlTmV3c0FydGljbGVKc29uTGQodCl7bGV0IHI9eyJAY29udGV4dCI6Imh0dHBzOi8vc2NoZW1hLm9yZyIsIkB0eXBlIjoiTmV3c0FydGljbGUiLG1haW5FbnRpdHlPZlBhZ2U6eyJAdHlwZSI6IldlYlBhZ2UiLCJAaWQiOndpbmRvdy5sb2NhdGlvbi5ocmVmfSxoZWFkbGluZToiQXJ0aWNsZSBoZWFkbGluZSIsaW1hZ2U6W3QuZmVhdHVyZWRJbWFnZVVybF0sZGF0ZVB1Ymxpc2hlZDpuZXcgRGF0ZSh0LnRpbWVzdGFtcCkudG9JU09TdHJpbmcoKSxkYXRlTW9kaWZpZWQ6bmV3IERhdGUodC50aW1lc3RhbXApLnRvSVNPU3RyaW5nKCksYXV0aG9yOnsiQHR5cGUiOiJQZXJzb24iLG5hbWU6YCR7dC5hdXRob3IuZmlyc3ROYW1lfSAke3QuYXV0aG9yLnN1ck5hbWV9YH0scHVibGlzaGVyOnsiQHR5cGUiOiJPcmdhbml6YXRpb24iLG5hbWU6dC5hdXRob3Iuc3VyTmFtZSxsb2dvOnsiQHR5cGUiOiJJbWFnZU9iamVjdCIsdXJsOnQuYXV0aG9yLnN1ck5hbWV9fSxkZXNjcmlwdGlvbjp0LmF1dGhvci5maXJzdE5hbWV9O3JldHVybiBuZXcgZShyKX1zdGF0aWMgY3JlYXRlUHJvZHVjdEpzb25MZCh0LHIpe2xldCBhPXsiQGNvbnRleHQiOiJodHRwczovL3NjaGVtYS5vcmciLCJAdHlwZSI6IlNvZnR3YXJlQXBwbGljYXRpb24iLG5hbWU6dC5uYW1lLGRlc2NyaXB0aW9uOnQuZGVzY3JpcHRpb24sb3BlcmF0aW5nU3lzdGVtOnQub3MsYXBwbGljYXRpb25DYXRlZ29yeTp0LmNhdGVnb3J5LG9mZmVyczp7IkB0eXBlIjoiT2ZmZXIiLG5hbWU6IlVzZXItYmFzZWQgUGxhbiIscHJpY2VTcGVjaWZpY2F0aW9uOnsiQHR5cGUiOiJQcm9wZXJ0eVZhbHVlU3BlY2lmaWNhdGlvbiIsdmFsdWVOYW1lOiJOdW1iZXIgb2YgVXNlcnMiLHZhbHVlUmVxdWlyZWQ6ITAscHJpY2U6IjQuOTkiLHByaWNlQ3VycmVuY3k6IkVVUiJ9fSxwdWJsaXNoZXI6dGhpcy5jcmVhdGVDb21wYW55SnNvbkxkKHIpLmVsZW1lbnRSZWYudGV4dENvbnRlbnQsc2NyZWVuc2hvdDoiaHR0cHM6Ly93d3cuc29jaWFsLmlvL3NjcmVlbnNob3QucG5nIix1cmw6Imh0dHBzOi8vd3d3LnNvY2lhbC5pby8ifTtyZXR1cm4gbmV3IGUoYSl9Y29uc3RydWN0b3IodCl7c3VwZXIoKTtsZXQgcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtyLnR5cGU9ImFwcGxpY2F0aW9uL2xkK2pzb24iLHIudGV4dD1KU09OLnN0cmluZ2lmeSh0KSx0aGlzLmVsZW1lbnRSZWY9cn19fSk7dmFyIGNvLHJzZT1sKCgpPT57dmMoKTtZeSgpO2NvPWNsYXNzIGUgZXh0ZW5kcyBHNHtzdGF0aWMgY3JlYXRlTmV3c0FydGljbGVPZ1RhZ3ModCl7bGV0IHI9W107cmV0dXJuIHIucHVzaChuZXcgZSgib2c6dXJsIix0LnVybCkpLHIucHVzaChuZXcgZSgib2c6dGl0bGUiLHQudGl0bGUpKSxyLnB1c2gobmV3IGUoIm9nOmRlc2NyaXB0aW9uIix0LmNvbnRlbnQpKSxyLnB1c2gobmV3IGUoIm9nOmltYWdlIix0LmZlYXR1cmVkSW1hZ2VVcmwpKSxyfXN0YXRpYyBjcmVhdGVQcm9kdWN0T2dUYWdzKHQpe2xldCByPVtdO3JldHVybiByLnB1c2gobmV3IGUoIm9nOnVybCIsZ2xvYmFsVGhpcy5sb2NhdGlvbi5ocmVmKSksci5wdXNoKG5ldyBlKCJvZzp0aXRsZSIsYCR7dC5uYW1lfSAtICR7dC5zbG9nYW59YCkpLHIucHVzaChuZXcgZSgib2c6c2l0ZV9uYW1lIix0Lm5hbWUpKSxyLnB1c2gobmV3IGUoIm9nOmRlc2NyaXB0aW9uIix0LmRlc2NyaXB0aW9uKSksci5wdXNoKG5ldyBlKCJvZzppbWFnZSIsdC5sb2dvTGluaykpLHJ9Y29uc3RydWN0b3IodCxyKXtzdXBlcigpO2xldCBhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIm1ldGEiKTthLnNldEF0dHJpYnV0ZSgicHJvcGVydHkiLHQpLGEuY29udGVudD1yLHRoaXMuZWxlbWVudFJlZj1hfX19KTt2YXIgdzksb01lPWwoKCk9PntZeSgpO3RzZSgpO3JzZSgpO25NZSgpO3ZjKCk7dzk9Y2xhc3N7c2V0IHRpdGxlKHQpe3RoaXMudGl0bGVTdG9yZT10LHRoaXMuc3RhdGU9PT0iZW5hYmxlZCImJihkb2N1bWVudC50aXRsZT10aGlzLnRpdGxlU3RvcmUpfWdldCB0aXRsZSgpe3JldHVybiB0aGlzLnRpdGxlU3RvcmV9Y29uc3RydWN0b3IodCxyKXt0aGlzLnRhZ3M9W10sdGhpcy5zdGF0ZT0iZGlzYWJsZWQiLHRoaXMudGFnTWFuYWdlclJlZj10fWFkZFRhZyh0KXtpZih0IGluc3RhbmNlb2YgQXJyYXkpZm9yKGxldCByIG9mIHQpdGhpcy5hZGRUYWcocik7ZWxzZSB0aGlzLnRhZ3MucHVzaCh0KSx0aGlzLnN0YXRlPT09ImVuYWJsZWQiJiZ0LmFwcGVuZFRvRG9tKCl9YXN5bmMgYWRkQ29tcGFueUluZm8odCl7dGhpcy5hZGRUYWcodHUuY3JlYXRlQ29tcGFueUpzb25MZCh0KSksdGhpcy5hZGRUYWcobmV3IGNvKCJvZzp0eXBlIiwiYnVzaW5lc3MuYnVzaW5lc3MiKSksdGhpcy5hZGRUYWcobmV3IGNvKCJvZzp0aXRsZSIsdC5uYW1lKSksdGhpcy5hZGRUYWcobmV3IGNvKCJvZzp1cmwiLHQuY29udGFjdC53ZWJzaXRlKSksdGhpcy5hZGRUYWcobmV3IGNvKCJvZzppbWFnZSIsdC5jb250YWN0LmxvZ29VcmwpKSx0aGlzLmFkZFRhZyhuZXcgY28oImJ1c2luZXNzOmNvbnRhY3RfZGF0YTpzdHJlZXRfYWRkcmVzcyIsYCR7dC5jb250YWN0LmFkZHJlc3Muc3RyZWV0TmFtZX0gJHt0LmNvbnRhY3QuYWRkcmVzcy5ob3VzZU51bWJlcn1gKSksdGhpcy5hZGRUYWcobmV3IGNvKCJidXNpbmVzczpjb250YWN0X2RhdGE6bG9jYWxpdHkiLHQuY29udGFjdC5hZGRyZXNzLnBvc3RhbENvZGUpKSx0aGlzLmFkZFRhZyhuZXcgY28oImJ1c2luZXNzOmNvbnRhY3RfZGF0YTpyZWdpb24iLHQuY29udGFjdC5hZGRyZXNzLmNpdHkpKSx0aGlzLmFkZFRhZyhuZXcgY28oImJ1c2luZXNzOmNvbnRhY3RfZGF0YTpwb3N0YWxfY29kZSIsdC5jb250YWN0LmFkZHJlc3MucG9zdGFsQ29kZSkpLHRoaXMuYWRkVGFnKG5ldyBjbygiYnVzaW5lc3M6Y29udGFjdF9kYXRhOmNvdW50cnlfbmFtZSIsdC5jb250YWN0LmFkZHJlc3MuY291bnRyeSkpfWFkZE5ld3NBcnRpY2xlSW5mbyh0KXt0aGlzLmFkZFRhZyh0dS5jcmVhdGVOZXdzQXJ0aWNsZUpzb25MZCh0KSksdGhpcy5hZGRUYWcoY28uY3JlYXRlTmV3c0FydGljbGVPZ1RhZ3ModCkpfWFkZFByb2R1Y3RJbmZvKHQscil7dGhpcy5hZGRUYWcodHUuY3JlYXRlUHJvZHVjdEpzb25MZCh0LHIpKSx0aGlzLmFkZFRhZyhjby5jcmVhdGVQcm9kdWN0T2dUYWdzKHQpKX1hc3luYyBlbmFibGUoKXt0aGlzLnRpdGxlJiYoZG9jdW1lbnQudGl0bGU9dGhpcy50aXRsZSk7Zm9yKGxldCB0IG9mIHRoaXMudGFncyl0LmFwcGVuZFRvRG9tKCk7dGhpcy5zdGF0ZT0iZW5hYmxlZCJ9YXN5bmMgZGlzYWJsZSgpe2ZvcihsZXQgdCBvZiB0aGlzLnRhZ3MpdC5yZW1vdmVGcm9tRG9tKCk7dGhpcy5zdGF0ZT0iZGlzYWJsZWQifX19KTt2YXIgT24sc01lPWwoKCk9PntZeSgpO09uPWNsYXNzIGV4dGVuZHMgRzR7Y29uc3RydWN0b3IodCxyKXtzdXBlcigpO2xldCBhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIm1ldGEiKTthLm5hbWU9dCxhLmNvbnRlbnQ9cix0aGlzLmVsZW1lbnRSZWY9YX19fSk7dmFyIGFzZSxuTWU9bCgoKT0+e29NZSgpO3ZjKCk7ZXNlKCk7c01lKCk7dHNlKCk7cnNlKCk7YXNlPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5nbG9iYWxMZXZlbD1uZXcgdzkodGhpcywiZ2xvYmFsIiksdGhpcy5iYXNlTGV2ZWw9bmV3IHc5KHRoaXMsImJhc2UiKX1hc3luYyBzZXR1cCh0KXtzd2l0Y2godGhpcy5nbG9iYWxMZXZlbC5hZGRUYWcobmV3IE9uKCJnb29nbGUiLCJub3RyYW5zbGF0ZSIpKSx0aGlzLmdsb2JhbExldmVsLmFkZFRhZyhuZXcgT24oInJldmlzaXQtYWZ0ZXIiLCIxIGRheXMiKSksdC50d2l0dGVySGFuZGxlJiYodGhpcy5nbG9iYWxMZXZlbC5hZGRUYWcobmV3IE9uKCJ0d2l0dGVyOmNhcmQiLCJzdW1tYXJ5X2xhcmdlX2ltYWdlIikpLHRoaXMuZ2xvYmFsTGV2ZWwuYWRkVGFnKG5ldyBPbigidHdpdHRlcjpzaXRlIix0LnR3aXR0ZXJIYW5kbGUpKSx0aGlzLmdsb2JhbExldmVsLmFkZFRhZyhuZXcgT24oInR3aXR0ZXI6Y3JlYXRvciIsdC50d2l0dGVySGFuZGxlKSkpLHRoaXMuYmFzZUxldmVsLnRpdGxlPXQudGl0bGUsdC5kZXNjcmlwdGlvbiYmdGhpcy5iYXNlTGV2ZWwuYWRkVGFnKG5ldyBPbigiZGVzY3JpcHRpb24iLHQuZGVzY3JpcHRpb24pKSx0LmNhbm9uaWNhbERvbWFpbiYmdGhpcy5iYXNlTGV2ZWwuYWRkVGFnKG5ldyBPbigiY2Fub25pY2FsIix0LmNhbm9uaWNhbERvbWFpbikpLCEwKXtjYXNlKHQubGRDb21wYW55JiYhdC5sZFByb2R1Y3QpOnRoaXMuYmFzZUxldmVsLmFkZENvbXBhbnlJbmZvKHQubGRDb21wYW55KTticmVhaztjYXNlISF0LmxkUHJvZHVjdDp0aGlzLmJhc2VMZXZlbC5hZGRQcm9kdWN0SW5mbyh0LmxkUHJvZHVjdCx0LmxkQ29tcGFueSk7YnJlYWt9YXdhaXQgdGhpcy5nbG9iYWxMZXZlbC5lbmFibGUoKSx0aGlzLmFjdGl2ZUxldmVsPXRoaXMuYmFzZUxldmVsLGF3YWl0IHRoaXMuYWN0aXZlTGV2ZWwuZW5hYmxlKCl9YXN5bmMgc2V0U3ViUGFnZUxldmVsKHQpe2xldCByPW5ldyB3OSh0aGlzLCJzdWJwYWdlIik7cmV0dXJuIHIudGl0bGU9dC50aXRsZSx0LmRlc2NyaXB0aW9uJiZyLmFkZFRhZyhuZXcgT24oImRlc2NyaXB0aW9uIix0LmRlc2NyaXB0aW9uKSksYXdhaXQgdGhpcy5hY3RpdmVMZXZlbC5kaXNhYmxlKCksdGhpcy5hY3RpdmVMZXZlbD1yLGF3YWl0IHRoaXMuYWN0aXZlTGV2ZWwuZW5hYmxlKCkscn1hc3luYyByZXZlcnRUb0Jhc2VMZXZlbCgpe3RoaXMuYWN0aXZlTGV2ZWwhPT10aGlzLmJhc2VMZXZlbCYmKGF3YWl0IHRoaXMuYWN0aXZlTGV2ZWwuZGlzYWJsZSgpLHRoaXMuYWN0aXZlTGV2ZWw9dGhpcy5iYXNlTGV2ZWwsYXdhaXQgdGhpcy5hY3RpdmVMZXZlbC5lbmFibGUoKSl9fX0pO3ZhciBaeSxDWHQ9bCgoKT0+e3ZjKCk7ZXNlKCk7bk1lKCk7b01lKCk7Wnk9Y2xhc3N7Y29uc3RydWN0b3IodCl7dGhpcy50YWdNYW5hZ2VyPW5ldyBhc2UsdGhpcy5yZWFkeURlZmVycmVkPWV1LmRlZmVyKCksdGhpcy5yZWFkeUZvclNtYXJ0c3NyRGVmZXJyZWQ9ZXUuZGVmZXIoKSx0aGlzLnJlYWR5UHJvbWlzZT10aGlzLnJlYWR5RGVmZXJyZWQucHJvbWlzZSx0aGlzLnJlYWR5Rm9yU21hcnRzc3JQcm9taXNlPXRoaXMucmVhZHlGb3JTbWFydHNzckRlZmVycmVkLnByb21pc2UsdGhpcy5vcHRpb25zPXQsdGhpcy5zZXR1cCgpLnRoZW4oKCk9Pnt0aGlzLnJlYWR5RGVmZXJyZWQucmVzb2x2ZSgpLHRoaXMub3B0aW9ucy5zbWFydHNzcldhaXRGb3JSZWFkeVNpZ25hbHx8dGhpcy5yZWFkeUZvclNtYXJ0c3NyRGVmZXJyZWQucmVzb2x2ZSgpfSl9YXN5bmMgc2V0dXAodCl7dCYmKHRoaXMub3B0aW9ucz10KSxhd2FpdCB0aGlzLnRhZ01hbmFnZXIuc2V0dXAodGhpcy5vcHRpb25zLm1ldGFPYmplY3QpfXJldmVydFRvQmFzZUxldmVsKCl7dGhpcy50YWdNYW5hZ2VyLnJldmVydFRvQmFzZUxldmVsKCl9YXN5bmMgc2V0U3ViTGV2ZWwodCl7cmV0dXJuIGF3YWl0IHRoaXMudGFnTWFuYWdlci5zZXRTdWJQYWdlTGV2ZWwodCl9Zmxhc2hUaXRsZSh0KXt9aW5mb3JtUmVhZHlGb3JTbWFydHNzcigpe3RoaXMub3B0aW9ucy5zbWFydHNzcldhaXRGb3JSZWFkeVNpZ25hbHx8Y29uc29sZS5lcnJvcigiWW91IGhhdmUgbm90IGluZGljYXRlZCB0aGF0IHlvdSBpbmZvcm0gc21hcnRzc3IgYnkgYSBkZWRpY2F0ZWQgc2lnbmFsISBQbGVhc2UgY29uc2lkZXIgZG9pbmcgc28hIiksdGhpcy5yZWFkeUZvclNtYXJ0c3NyRGVmZXJyZWQucmVzb2x2ZSgpfX19KTt2YXIgbE1lLF9YdD1sKCgpPT57dmMoKTtsTWU9Y2xhc3N7fX0pO3ZhciBjTWU9e307cWUoY01lLHtKc29uTGRUYWc6KCk9PnR1LE1ldGFUYWc6KCk9Pk9uLE9wZW5ncmFwaFRhZzooKT0+Y28sVGl0bGU6KCk9PmxNZSxXZWJTZXR1cDooKT0+Wnl9KTt2YXIgaXNlPWwoKCk9PntDWHQoKTtzTWUoKTtyc2UoKTt0c2UoKTtfWHQoKX0pO2Z1bmN0aW9uIFRYdChlLHQscil7cmV0dXJuIE1hdGgubWF4KGUsTWF0aC5taW4odCxyKSl9ZnVuY3Rpb24gaDdhKGUsdCxyKXtyZXR1cm4oMS1yKSplK3IqdH1mdW5jdGlvbiBtN2EoZSx0LHIsYSl7cmV0dXJuIGg3YShlLHQsMS1NYXRoLmV4cCgtciphKSl9ZnVuY3Rpb24gZzdhKGUsdCl7cmV0dXJuKGUldCt0KSV0fWZ1bmN0aW9uIGI3YShlLHQpe2xldCByO3JldHVybiBmdW5jdGlvbiguLi5hKXtsZXQgaT10aGlzO2NsZWFyVGltZW91dChyKSxyPXNldFRpbWVvdXQoKCk9PntyPXZvaWQgMCxlLmFwcGx5KGksYSl9LHQpfX12YXIgcDdhLHg3YSx2N2EsTFh0LERYdCxZNCx5N2EsQVh0LFh5LEVYdD1sKCgpPT57cDdhPSIxLjMuMTciO3g3YT1jbGFzc3tpc1J1bm5pbmc9ITE7dmFsdWU9MDtmcm9tPTA7dG89MDtjdXJyZW50VGltZT0wO2xlcnA7ZHVyYXRpb247ZWFzaW5nO29uVXBkYXRlO2FkdmFuY2UoZSl7aWYoIXRoaXMuaXNSdW5uaW5nKXJldHVybjtsZXQgdD0hMTtpZih0aGlzLmR1cmF0aW9uJiZ0aGlzLmVhc2luZyl7dGhpcy5jdXJyZW50VGltZSs9ZTtsZXQgcj1UWHQoMCx0aGlzLmN1cnJlbnRUaW1lL3RoaXMuZHVyYXRpb24sMSk7dD1yPj0xO2xldCBhPXQ/MTp0aGlzLmVhc2luZyhyKTt0aGlzLnZhbHVlPXRoaXMuZnJvbSsodGhpcy50by10aGlzLmZyb20pKmF9ZWxzZSB0aGlzLmxlcnA/KHRoaXMudmFsdWU9bTdhKHRoaXMudmFsdWUsdGhpcy50byx0aGlzLmxlcnAqNjAsZSksTWF0aC5yb3VuZCh0aGlzLnZhbHVlKT09PXRoaXMudG8mJih0aGlzLnZhbHVlPXRoaXMudG8sdD0hMCkpOih0aGlzLnZhbHVlPXRoaXMudG8sdD0hMCk7dCYmdGhpcy5zdG9wKCksdGhpcy5vblVwZGF0ZT8uKHRoaXMudmFsdWUsdCl9c3RvcCgpe3RoaXMuaXNSdW5uaW5nPSExfWZyb21UbyhlLHQse2xlcnA6cixkdXJhdGlvbjphLGVhc2luZzppLG9uU3RhcnQ6byxvblVwZGF0ZTpufSl7dGhpcy5mcm9tPXRoaXMudmFsdWU9ZSx0aGlzLnRvPXQsdGhpcy5sZXJwPXIsdGhpcy5kdXJhdGlvbj1hLHRoaXMuZWFzaW5nPWksdGhpcy5jdXJyZW50VGltZT0wLHRoaXMuaXNSdW5uaW5nPSEwLG8/LigpLHRoaXMub25VcGRhdGU9bn19O3Y3YT1jbGFzc3tjb25zdHJ1Y3RvcihlLHQse2F1dG9SZXNpemU6cj0hMCxkZWJvdW5jZTphPTI1MH09e30pe3RoaXMud3JhcHBlcj1lLHRoaXMuY29udGVudD10LHImJih0aGlzLmRlYm91bmNlZFJlc2l6ZT1iN2EodGhpcy5yZXNpemUsYSksdGhpcy53cmFwcGVyIGluc3RhbmNlb2YgV2luZG93P3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLHRoaXMuZGVib3VuY2VkUmVzaXplLCExKToodGhpcy53cmFwcGVyUmVzaXplT2JzZXJ2ZXI9bmV3IFJlc2l6ZU9ic2VydmVyKHRoaXMuZGVib3VuY2VkUmVzaXplKSx0aGlzLndyYXBwZXJSZXNpemVPYnNlcnZlci5vYnNlcnZlKHRoaXMud3JhcHBlcikpLHRoaXMuY29udGVudFJlc2l6ZU9ic2VydmVyPW5ldyBSZXNpemVPYnNlcnZlcih0aGlzLmRlYm91bmNlZFJlc2l6ZSksdGhpcy5jb250ZW50UmVzaXplT2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzLmNvbnRlbnQpKSx0aGlzLnJlc2l6ZSgpfXdpZHRoPTA7aGVpZ2h0PTA7c2Nyb2xsSGVpZ2h0PTA7c2Nyb2xsV2lkdGg9MDtkZWJvdW5jZWRSZXNpemU7d3JhcHBlclJlc2l6ZU9ic2VydmVyO2NvbnRlbnRSZXNpemVPYnNlcnZlcjtkZXN0cm95KCl7dGhpcy53cmFwcGVyUmVzaXplT2JzZXJ2ZXI/LmRpc2Nvbm5lY3QoKSx0aGlzLmNvbnRlbnRSZXNpemVPYnNlcnZlcj8uZGlzY29ubmVjdCgpLHRoaXMud3JhcHBlcj09PXdpbmRvdyYmdGhpcy5kZWJvdW5jZWRSZXNpemUmJndpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJyZXNpemUiLHRoaXMuZGVib3VuY2VkUmVzaXplLCExKX1yZXNpemU9KCk9Pnt0aGlzLm9uV3JhcHBlclJlc2l6ZSgpLHRoaXMub25Db250ZW50UmVzaXplKCl9O29uV3JhcHBlclJlc2l6ZT0oKT0+e3RoaXMud3JhcHBlciBpbnN0YW5jZW9mIFdpbmRvdz8odGhpcy53aWR0aD13aW5kb3cuaW5uZXJXaWR0aCx0aGlzLmhlaWdodD13aW5kb3cuaW5uZXJIZWlnaHQpOih0aGlzLndpZHRoPXRoaXMud3JhcHBlci5jbGllbnRXaWR0aCx0aGlzLmhlaWdodD10aGlzLndyYXBwZXIuY2xpZW50SGVpZ2h0KX07b25Db250ZW50UmVzaXplPSgpPT57dGhpcy53cmFwcGVyIGluc3RhbmNlb2YgV2luZG93Pyh0aGlzLnNjcm9sbEhlaWdodD10aGlzLmNvbnRlbnQuc2Nyb2xsSGVpZ2h0LHRoaXMuc2Nyb2xsV2lkdGg9dGhpcy5jb250ZW50LnNjcm9sbFdpZHRoKToodGhpcy5zY3JvbGxIZWlnaHQ9dGhpcy53cmFwcGVyLnNjcm9sbEhlaWdodCx0aGlzLnNjcm9sbFdpZHRoPXRoaXMud3JhcHBlci5zY3JvbGxXaWR0aCl9O2dldCBsaW1pdCgpe3JldHVybnt4OnRoaXMuc2Nyb2xsV2lkdGgtdGhpcy53aWR0aCx5OnRoaXMuc2Nyb2xsSGVpZ2h0LXRoaXMuaGVpZ2h0fX19LExYdD1jbGFzc3tldmVudHM9e307ZW1pdChlLC4uLnQpe2xldCByPXRoaXMuZXZlbnRzW2VdfHxbXTtmb3IobGV0IGE9MCxpPXIubGVuZ3RoO2E8aTthKyspclthXT8uKC4uLnQpfW9uKGUsdCl7cmV0dXJuIHRoaXMuZXZlbnRzW2VdPy5wdXNoKHQpfHwodGhpcy5ldmVudHNbZV09W3RdKSwoKT0+e3RoaXMuZXZlbnRzW2VdPXRoaXMuZXZlbnRzW2VdPy5maWx0ZXIocj0+dCE9PXIpfX1vZmYoZSx0KXt0aGlzLmV2ZW50c1tlXT10aGlzLmV2ZW50c1tlXT8uZmlsdGVyKHI9PnQhPT1yKX1kZXN0cm95KCl7dGhpcy5ldmVudHM9e319fSxEWHQ9MTAwLzYsWTQ9e3Bhc3NpdmU6ITF9LHk3YT1jbGFzc3tjb25zdHJ1Y3RvcihlLHQ9e3doZWVsTXVsdGlwbGllcjoxLHRvdWNoTXVsdGlwbGllcjoxfSl7dGhpcy5lbGVtZW50PWUsdGhpcy5vcHRpb25zPXQsd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsdGhpcy5vbldpbmRvd1Jlc2l6ZSwhMSksdGhpcy5vbldpbmRvd1Jlc2l6ZSgpLHRoaXMuZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCJ3aGVlbCIsdGhpcy5vbldoZWVsLFk0KSx0aGlzLmVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hzdGFydCIsdGhpcy5vblRvdWNoU3RhcnQsWTQpLHRoaXMuZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaG1vdmUiLHRoaXMub25Ub3VjaE1vdmUsWTQpLHRoaXMuZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaGVuZCIsdGhpcy5vblRvdWNoRW5kLFk0KX10b3VjaFN0YXJ0PXt4OjAseTowfTtsYXN0RGVsdGE9e3g6MCx5OjB9O3dpbmRvdz17d2lkdGg6MCxoZWlnaHQ6MH07ZW1pdHRlcj1uZXcgTFh0O29uKGUsdCl7cmV0dXJuIHRoaXMuZW1pdHRlci5vbihlLHQpfWRlc3Ryb3koKXt0aGlzLmVtaXR0ZXIuZGVzdHJveSgpLHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJyZXNpemUiLHRoaXMub25XaW5kb3dSZXNpemUsITEpLHRoaXMuZWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ3aGVlbCIsdGhpcy5vbldoZWVsLFk0KSx0aGlzLmVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigidG91Y2hzdGFydCIsdGhpcy5vblRvdWNoU3RhcnQsWTQpLHRoaXMuZWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaG1vdmUiLHRoaXMub25Ub3VjaE1vdmUsWTQpLHRoaXMuZWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaGVuZCIsdGhpcy5vblRvdWNoRW5kLFk0KX1vblRvdWNoU3RhcnQ9ZT0+e2xldHtjbGllbnRYOnQsY2xpZW50WTpyfT1lLnRhcmdldFRvdWNoZXM/ZS50YXJnZXRUb3VjaGVzWzBdOmU7dGhpcy50b3VjaFN0YXJ0Lng9dCx0aGlzLnRvdWNoU3RhcnQueT1yLHRoaXMubGFzdERlbHRhPXt4OjAseTowfSx0aGlzLmVtaXR0ZXIuZW1pdCgic2Nyb2xsIix7ZGVsdGFYOjAsZGVsdGFZOjAsZXZlbnQ6ZX0pfTtvblRvdWNoTW92ZT1lPT57bGV0e2NsaWVudFg6dCxjbGllbnRZOnJ9PWUudGFyZ2V0VG91Y2hlcz9lLnRhcmdldFRvdWNoZXNbMF06ZSxhPS0odC10aGlzLnRvdWNoU3RhcnQueCkqdGhpcy5vcHRpb25zLnRvdWNoTXVsdGlwbGllcixpPS0oci10aGlzLnRvdWNoU3RhcnQueSkqdGhpcy5vcHRpb25zLnRvdWNoTXVsdGlwbGllcjt0aGlzLnRvdWNoU3RhcnQueD10LHRoaXMudG91Y2hTdGFydC55PXIsdGhpcy5sYXN0RGVsdGE9e3g6YSx5Oml9LHRoaXMuZW1pdHRlci5lbWl0KCJzY3JvbGwiLHtkZWx0YVg6YSxkZWx0YVk6aSxldmVudDplfSl9O29uVG91Y2hFbmQ9ZT0+e3RoaXMuZW1pdHRlci5lbWl0KCJzY3JvbGwiLHtkZWx0YVg6dGhpcy5sYXN0RGVsdGEueCxkZWx0YVk6dGhpcy5sYXN0RGVsdGEueSxldmVudDplfSl9O29uV2hlZWw9ZT0+e2xldHtkZWx0YVg6dCxkZWx0YVk6cixkZWx0YU1vZGU6YX09ZSxpPWE9PT0xP0RYdDphPT09Mj90aGlzLndpbmRvdy53aWR0aDoxLG89YT09PTE/RFh0OmE9PT0yP3RoaXMud2luZG93LmhlaWdodDoxO3QqPWkscio9byx0Kj10aGlzLm9wdGlvbnMud2hlZWxNdWx0aXBsaWVyLHIqPXRoaXMub3B0aW9ucy53aGVlbE11bHRpcGxpZXIsdGhpcy5lbWl0dGVyLmVtaXQoInNjcm9sbCIse2RlbHRhWDp0LGRlbHRhWTpyLGV2ZW50OmV9KX07b25XaW5kb3dSZXNpemU9KCk9Pnt0aGlzLndpbmRvdz17d2lkdGg6d2luZG93LmlubmVyV2lkdGgsaGVpZ2h0OndpbmRvdy5pbm5lckhlaWdodH19fSxBWHQ9ZT0+TWF0aC5taW4oMSwxLjAwMS1NYXRoLnBvdygyLC0xMCplKSksWHk9Y2xhc3N7X2lzU2Nyb2xsaW5nPSExO19pc1N0b3BwZWQ9ITE7X2lzTG9ja2VkPSExO19wcmV2ZW50TmV4dE5hdGl2ZVNjcm9sbEV2ZW50PSExO19yZXNldFZlbG9jaXR5VGltZW91dD1udWxsO19yYWZJZD1udWxsO2lzVG91Y2hpbmc7dGltZT0wO3VzZXJEYXRhPXt9O2xhc3RWZWxvY2l0eT0wO3ZlbG9jaXR5PTA7ZGlyZWN0aW9uPTA7b3B0aW9uczt0YXJnZXRTY3JvbGw7YW5pbWF0ZWRTY3JvbGw7YW5pbWF0ZT1uZXcgeDdhO2VtaXR0ZXI9bmV3IExYdDtkaW1lbnNpb25zO3ZpcnR1YWxTY3JvbGw7Y29uc3RydWN0b3Ioe3dyYXBwZXI6ZT13aW5kb3csY29udGVudDp0PWRvY3VtZW50LmRvY3VtZW50RWxlbWVudCxldmVudHNUYXJnZXQ6cj1lLHNtb290aFdoZWVsOmE9ITAsc3luY1RvdWNoOmk9ITEsc3luY1RvdWNoTGVycDpvPS4wNzUsdG91Y2hJbmVydGlhRXhwb25lbnQ6bj0xLjcsZHVyYXRpb246cyxlYXNpbmc6YyxsZXJwOmQ9LjEsaW5maW5pdGU6Zj0hMSxvcmllbnRhdGlvbjp1PSJ2ZXJ0aWNhbCIsZ2VzdHVyZU9yaWVudGF0aW9uOnA9dT09PSJob3Jpem9udGFsIj8iYm90aCI6InZlcnRpY2FsIix0b3VjaE11bHRpcGxpZXI6aD0xLHdoZWVsTXVsdGlwbGllcjpiPTEsYXV0b1Jlc2l6ZTp4PSEwLHByZXZlbnQ6Zyx2aXJ0dWFsU2Nyb2xsOnYsb3ZlcnNjcm9sbDp3PSEwLGF1dG9SYWY6TT0hMSxhbmNob3JzOkY9ITEsYXV0b1RvZ2dsZTpDPSExLGFsbG93TmVzdGVkU2Nyb2xsOms9ITEsX19leHBlcmltZW50YWxfX25haXZlRGltZW5zaW9uczpOPSExLG5haXZlRGltZW5zaW9uczokPU4sc3RvcEluZXJ0aWFPbk5hdmlnYXRlOkk9ITF9PXt9KXt3aW5kb3cubGVuaXNWZXJzaW9uPXA3YSwoIWV8fGU9PT1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpJiYoZT13aW5kb3cpLHR5cGVvZiBzPT0ibnVtYmVyIiYmdHlwZW9mIGMhPSJmdW5jdGlvbiI/Yz1BWHQ6dHlwZW9mIGM9PSJmdW5jdGlvbiImJnR5cGVvZiBzIT0ibnVtYmVyIiYmKHM9MSksdGhpcy5vcHRpb25zPXt3cmFwcGVyOmUsY29udGVudDp0LGV2ZW50c1RhcmdldDpyLHNtb290aFdoZWVsOmEsc3luY1RvdWNoOmksc3luY1RvdWNoTGVycDpvLHRvdWNoSW5lcnRpYUV4cG9uZW50Om4sZHVyYXRpb246cyxlYXNpbmc6YyxsZXJwOmQsaW5maW5pdGU6ZixnZXN0dXJlT3JpZW50YXRpb246cCxvcmllbnRhdGlvbjp1LHRvdWNoTXVsdGlwbGllcjpoLHdoZWVsTXVsdGlwbGllcjpiLGF1dG9SZXNpemU6eCxwcmV2ZW50OmcsdmlydHVhbFNjcm9sbDp2LG92ZXJzY3JvbGw6dyxhdXRvUmFmOk0sYW5jaG9yczpGLGF1dG9Ub2dnbGU6QyxhbGxvd05lc3RlZFNjcm9sbDprLG5haXZlRGltZW5zaW9uczokLHN0b3BJbmVydGlhT25OYXZpZ2F0ZTpJfSx0aGlzLmRpbWVuc2lvbnM9bmV3IHY3YShlLHQse2F1dG9SZXNpemU6eH0pLHRoaXMudXBkYXRlQ2xhc3NOYW1lKCksdGhpcy50YXJnZXRTY3JvbGw9dGhpcy5hbmltYXRlZFNjcm9sbD10aGlzLmFjdHVhbFNjcm9sbCx0aGlzLm9wdGlvbnMud3JhcHBlci5hZGRFdmVudExpc3RlbmVyKCJzY3JvbGwiLHRoaXMub25OYXRpdmVTY3JvbGwsITEpLHRoaXMub3B0aW9ucy53cmFwcGVyLmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbGVuZCIsdGhpcy5vblNjcm9sbEVuZCx7Y2FwdHVyZTohMH0pLCh0aGlzLm9wdGlvbnMuYW5jaG9yc3x8dGhpcy5vcHRpb25zLnN0b3BJbmVydGlhT25OYXZpZ2F0ZSkmJnRoaXMub3B0aW9ucy53cmFwcGVyLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIix0aGlzLm9uQ2xpY2ssITEpLHRoaXMub3B0aW9ucy53cmFwcGVyLmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJkb3duIix0aGlzLm9uUG9pbnRlckRvd24sITEpLHRoaXMudmlydHVhbFNjcm9sbD1uZXcgeTdhKHIse3RvdWNoTXVsdGlwbGllcjpoLHdoZWVsTXVsdGlwbGllcjpifSksdGhpcy52aXJ0dWFsU2Nyb2xsLm9uKCJzY3JvbGwiLHRoaXMub25WaXJ0dWFsU2Nyb2xsKSx0aGlzLm9wdGlvbnMuYXV0b1RvZ2dsZSYmKHRoaXMuY2hlY2tPdmVyZmxvdygpLHRoaXMucm9vdEVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidHJhbnNpdGlvbmVuZCIsdGhpcy5vblRyYW5zaXRpb25FbmQse3Bhc3NpdmU6ITB9KSksdGhpcy5vcHRpb25zLmF1dG9SYWYmJih0aGlzLl9yYWZJZD1yZXF1ZXN0QW5pbWF0aW9uRnJhbWUodGhpcy5yYWYpKX1kZXN0cm95KCl7dGhpcy5lbWl0dGVyLmRlc3Ryb3koKSx0aGlzLm9wdGlvbnMud3JhcHBlci5yZW1vdmVFdmVudExpc3RlbmVyKCJzY3JvbGwiLHRoaXMub25OYXRpdmVTY3JvbGwsITEpLHRoaXMub3B0aW9ucy53cmFwcGVyLnJlbW92ZUV2ZW50TGlzdGVuZXIoInNjcm9sbGVuZCIsdGhpcy5vblNjcm9sbEVuZCx7Y2FwdHVyZTohMH0pLHRoaXMub3B0aW9ucy53cmFwcGVyLnJlbW92ZUV2ZW50TGlzdGVuZXIoInBvaW50ZXJkb3duIix0aGlzLm9uUG9pbnRlckRvd24sITEpLCh0aGlzLm9wdGlvbnMuYW5jaG9yc3x8dGhpcy5vcHRpb25zLnN0b3BJbmVydGlhT25OYXZpZ2F0ZSkmJnRoaXMub3B0aW9ucy53cmFwcGVyLnJlbW92ZUV2ZW50TGlzdGVuZXIoImNsaWNrIix0aGlzLm9uQ2xpY2ssITEpLHRoaXMudmlydHVhbFNjcm9sbC5kZXN0cm95KCksdGhpcy5kaW1lbnNpb25zLmRlc3Ryb3koKSx0aGlzLmNsZWFuVXBDbGFzc05hbWUoKSx0aGlzLl9yYWZJZCYmY2FuY2VsQW5pbWF0aW9uRnJhbWUodGhpcy5fcmFmSWQpfW9uKGUsdCl7cmV0dXJuIHRoaXMuZW1pdHRlci5vbihlLHQpfW9mZihlLHQpe3JldHVybiB0aGlzLmVtaXR0ZXIub2ZmKGUsdCl9b25TY3JvbGxFbmQ9ZT0+e2UgaW5zdGFuY2VvZiBDdXN0b21FdmVudHx8KHRoaXMuaXNTY3JvbGxpbmc9PT0ic21vb3RoInx8dGhpcy5pc1Njcm9sbGluZz09PSExKSYmZS5zdG9wUHJvcGFnYXRpb24oKX07ZGlzcGF0Y2hTY3JvbGxlbmRFdmVudD0oKT0+e3RoaXMub3B0aW9ucy53cmFwcGVyLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJzY3JvbGxlbmQiLHtidWJibGVzOnRoaXMub3B0aW9ucy53cmFwcGVyPT09d2luZG93LGRldGFpbDp7bGVuaXNTY3JvbGxFbmQ6ITB9fSkpfTtnZXQgb3ZlcmZsb3coKXtsZXQgZT10aGlzLmlzSG9yaXpvbnRhbD8ib3ZlcmZsb3cteCI6Im92ZXJmbG93LXkiO3JldHVybiBnZXRDb21wdXRlZFN0eWxlKHRoaXMucm9vdEVsZW1lbnQpW2VdfWNoZWNrT3ZlcmZsb3coKXtbImhpZGRlbiIsImNsaXAiXS5pbmNsdWRlcyh0aGlzLm92ZXJmbG93KT90aGlzLmludGVybmFsU3RvcCgpOnRoaXMuaW50ZXJuYWxTdGFydCgpfW9uVHJhbnNpdGlvbkVuZD1lPT57ZS5wcm9wZXJ0eU5hbWUuaW5jbHVkZXMoIm92ZXJmbG93IikmJnRoaXMuY2hlY2tPdmVyZmxvdygpfTtzZXRTY3JvbGwoZSl7dGhpcy5pc0hvcml6b250YWw/dGhpcy5vcHRpb25zLndyYXBwZXIuc2Nyb2xsVG8oe2xlZnQ6ZSxiZWhhdmlvcjoiaW5zdGFudCJ9KTp0aGlzLm9wdGlvbnMud3JhcHBlci5zY3JvbGxUbyh7dG9wOmUsYmVoYXZpb3I6Imluc3RhbnQifSl9b25DbGljaz1lPT57bGV0IHI9ZS5jb21wb3NlZFBhdGgoKS5maWx0ZXIoYT0+YSBpbnN0YW5jZW9mIEhUTUxBbmNob3JFbGVtZW50JiZhLmdldEF0dHJpYnV0ZSgiaHJlZiIpKTtpZih0aGlzLm9wdGlvbnMuYW5jaG9ycyl7bGV0IGE9ci5maW5kKGk9PmkuZ2V0QXR0cmlidXRlKCJocmVmIik/LmluY2x1ZGVzKCIjIikpO2lmKGEpe2xldCBpPWEuZ2V0QXR0cmlidXRlKCJocmVmIik7aWYoaSl7bGV0IG89dHlwZW9mIHRoaXMub3B0aW9ucy5hbmNob3JzPT0ib2JqZWN0IiYmdGhpcy5vcHRpb25zLmFuY2hvcnM/dGhpcy5vcHRpb25zLmFuY2hvcnM6dm9pZCAwLG49YCMke2kuc3BsaXQoIiMiKVsxXX1gO3RoaXMuc2Nyb2xsVG8obixvKX19fXRoaXMub3B0aW9ucy5zdG9wSW5lcnRpYU9uTmF2aWdhdGUmJnIuZmluZChpPT5pLmhvc3Q9PT13aW5kb3cubG9jYXRpb24uaG9zdCkmJnRoaXMucmVzZXQoKX07b25Qb2ludGVyRG93bj1lPT57ZS5idXR0b249PT0xJiZ0aGlzLnJlc2V0KCl9O29uVmlydHVhbFNjcm9sbD1lPT57aWYodHlwZW9mIHRoaXMub3B0aW9ucy52aXJ0dWFsU2Nyb2xsPT0iZnVuY3Rpb24iJiZ0aGlzLm9wdGlvbnMudmlydHVhbFNjcm9sbChlKT09PSExKXJldHVybjtsZXR7ZGVsdGFYOnQsZGVsdGFZOnIsZXZlbnQ6YX09ZTtpZih0aGlzLmVtaXR0ZXIuZW1pdCgidmlydHVhbC1zY3JvbGwiLHtkZWx0YVg6dCxkZWx0YVk6cixldmVudDphfSksYS5jdHJsS2V5fHxhLmxlbmlzU3RvcFByb3BhZ2F0aW9uKXJldHVybjtsZXQgaT1hLnR5cGUuaW5jbHVkZXMoInRvdWNoIiksbz1hLnR5cGUuaW5jbHVkZXMoIndoZWVsIik7dGhpcy5pc1RvdWNoaW5nPWEudHlwZT09PSJ0b3VjaHN0YXJ0Inx8YS50eXBlPT09InRvdWNobW92ZSI7bGV0IG49dD09PTAmJnI9PT0wO2lmKHRoaXMub3B0aW9ucy5zeW5jVG91Y2gmJmkmJmEudHlwZT09PSJ0b3VjaHN0YXJ0IiYmbiYmIXRoaXMuaXNTdG9wcGVkJiYhdGhpcy5pc0xvY2tlZCl7dGhpcy5yZXNldCgpO3JldHVybn1sZXQgYz10aGlzLm9wdGlvbnMuZ2VzdHVyZU9yaWVudGF0aW9uPT09InZlcnRpY2FsIiYmcj09PTB8fHRoaXMub3B0aW9ucy5nZXN0dXJlT3JpZW50YXRpb249PT0iaG9yaXpvbnRhbCImJnQ9PT0wO2lmKG58fGMpcmV0dXJuO2xldCBkPWEuY29tcG9zZWRQYXRoKCk7ZD1kLnNsaWNlKDAsZC5pbmRleE9mKHRoaXMucm9vdEVsZW1lbnQpKTtsZXQgZj10aGlzLm9wdGlvbnMucHJldmVudDtpZihkLmZpbmQoZz0+ZyBpbnN0YW5jZW9mIEhUTUxFbGVtZW50JiYodHlwZW9mIGY9PSJmdW5jdGlvbiImJmY/LihnKXx8Zy5oYXNBdHRyaWJ1dGU/LigiZGF0YS1sZW5pcy1wcmV2ZW50Iil8fGkmJmcuaGFzQXR0cmlidXRlPy4oImRhdGEtbGVuaXMtcHJldmVudC10b3VjaCIpfHxvJiZnLmhhc0F0dHJpYnV0ZT8uKCJkYXRhLWxlbmlzLXByZXZlbnQtd2hlZWwiKXx8dGhpcy5vcHRpb25zLmFsbG93TmVzdGVkU2Nyb2xsJiZ0aGlzLmNoZWNrTmVzdGVkU2Nyb2xsKGcse2RlbHRhWDp0LGRlbHRhWTpyfSkpKSlyZXR1cm47aWYodGhpcy5pc1N0b3BwZWR8fHRoaXMuaXNMb2NrZWQpe2EuY2FuY2VsYWJsZSYmYS5wcmV2ZW50RGVmYXVsdCgpO3JldHVybn1pZighKHRoaXMub3B0aW9ucy5zeW5jVG91Y2gmJml8fHRoaXMub3B0aW9ucy5zbW9vdGhXaGVlbCYmbykpe3RoaXMuaXNTY3JvbGxpbmc9Im5hdGl2ZSIsdGhpcy5hbmltYXRlLnN0b3AoKSxhLmxlbmlzU3RvcFByb3BhZ2F0aW9uPSEwO3JldHVybn1sZXQgcD1yO3RoaXMub3B0aW9ucy5nZXN0dXJlT3JpZW50YXRpb249PT0iYm90aCI/cD1NYXRoLmFicyhyKT5NYXRoLmFicyh0KT9yOnQ6dGhpcy5vcHRpb25zLmdlc3R1cmVPcmllbnRhdGlvbj09PSJob3Jpem9udGFsIiYmKHA9dCksKCF0aGlzLm9wdGlvbnMub3ZlcnNjcm9sbHx8dGhpcy5vcHRpb25zLmluZmluaXRlfHx0aGlzLm9wdGlvbnMud3JhcHBlciE9PXdpbmRvdyYmdGhpcy5saW1pdD4wJiYodGhpcy5hbmltYXRlZFNjcm9sbD4wJiZ0aGlzLmFuaW1hdGVkU2Nyb2xsPHRoaXMubGltaXR8fHRoaXMuYW5pbWF0ZWRTY3JvbGw9PT0wJiZyPjB8fHRoaXMuYW5pbWF0ZWRTY3JvbGw9PT10aGlzLmxpbWl0JiZyPDApKSYmKGEubGVuaXNTdG9wUHJvcGFnYXRpb249ITApLGEuY2FuY2VsYWJsZSYmYS5wcmV2ZW50RGVmYXVsdCgpO2xldCBoPWkmJnRoaXMub3B0aW9ucy5zeW5jVG91Y2gseD1pJiZhLnR5cGU9PT0idG91Y2hlbmQiO3gmJihwPU1hdGguc2lnbih0aGlzLnZlbG9jaXR5KSpNYXRoLnBvdyhNYXRoLmFicyh0aGlzLnZlbG9jaXR5KSx0aGlzLm9wdGlvbnMudG91Y2hJbmVydGlhRXhwb25lbnQpKSx0aGlzLnNjcm9sbFRvKHRoaXMudGFyZ2V0U2Nyb2xsK3Ase3Byb2dyYW1tYXRpYzohMSwuLi5oP3tsZXJwOng/dGhpcy5vcHRpb25zLnN5bmNUb3VjaExlcnA6MX06e2xlcnA6dGhpcy5vcHRpb25zLmxlcnAsZHVyYXRpb246dGhpcy5vcHRpb25zLmR1cmF0aW9uLGVhc2luZzp0aGlzLm9wdGlvbnMuZWFzaW5nfX0pfTtyZXNpemUoKXt0aGlzLmRpbWVuc2lvbnMucmVzaXplKCksdGhpcy5hbmltYXRlZFNjcm9sbD10aGlzLnRhcmdldFNjcm9sbD10aGlzLmFjdHVhbFNjcm9sbCx0aGlzLmVtaXQoKX1lbWl0KCl7dGhpcy5lbWl0dGVyLmVtaXQoInNjcm9sbCIsdGhpcyl9b25OYXRpdmVTY3JvbGw9KCk9PntpZih0aGlzLl9yZXNldFZlbG9jaXR5VGltZW91dCE9PW51bGwmJihjbGVhclRpbWVvdXQodGhpcy5fcmVzZXRWZWxvY2l0eVRpbWVvdXQpLHRoaXMuX3Jlc2V0VmVsb2NpdHlUaW1lb3V0PW51bGwpLHRoaXMuX3ByZXZlbnROZXh0TmF0aXZlU2Nyb2xsRXZlbnQpe3RoaXMuX3ByZXZlbnROZXh0TmF0aXZlU2Nyb2xsRXZlbnQ9ITE7cmV0dXJufWlmKHRoaXMuaXNTY3JvbGxpbmc9PT0hMXx8dGhpcy5pc1Njcm9sbGluZz09PSJuYXRpdmUiKXtsZXQgZT10aGlzLmFuaW1hdGVkU2Nyb2xsO3RoaXMuYW5pbWF0ZWRTY3JvbGw9dGhpcy50YXJnZXRTY3JvbGw9dGhpcy5hY3R1YWxTY3JvbGwsdGhpcy5sYXN0VmVsb2NpdHk9dGhpcy52ZWxvY2l0eSx0aGlzLnZlbG9jaXR5PXRoaXMuYW5pbWF0ZWRTY3JvbGwtZSx0aGlzLmRpcmVjdGlvbj1NYXRoLnNpZ24odGhpcy5hbmltYXRlZFNjcm9sbC1lKSx0aGlzLmlzU3RvcHBlZHx8KHRoaXMuaXNTY3JvbGxpbmc9Im5hdGl2ZSIpLHRoaXMuZW1pdCgpLHRoaXMudmVsb2NpdHkhPT0wJiYodGhpcy5fcmVzZXRWZWxvY2l0eVRpbWVvdXQ9c2V0VGltZW91dCgoKT0+e3RoaXMubGFzdFZlbG9jaXR5PXRoaXMudmVsb2NpdHksdGhpcy52ZWxvY2l0eT0wLHRoaXMuaXNTY3JvbGxpbmc9ITEsdGhpcy5lbWl0KCl9LDQwMCkpfX07cmVzZXQoKXt0aGlzLmlzTG9ja2VkPSExLHRoaXMuaXNTY3JvbGxpbmc9ITEsdGhpcy5hbmltYXRlZFNjcm9sbD10aGlzLnRhcmdldFNjcm9sbD10aGlzLmFjdHVhbFNjcm9sbCx0aGlzLmxhc3RWZWxvY2l0eT10aGlzLnZlbG9jaXR5PTAsdGhpcy5hbmltYXRlLnN0b3AoKX1zdGFydCgpe2lmKHRoaXMuaXNTdG9wcGVkKXtpZih0aGlzLm9wdGlvbnMuYXV0b1RvZ2dsZSl7dGhpcy5yb290RWxlbWVudC5zdHlsZS5yZW1vdmVQcm9wZXJ0eSgib3ZlcmZsb3ciKTtyZXR1cm59dGhpcy5pbnRlcm5hbFN0YXJ0KCl9fWludGVybmFsU3RhcnQoKXt0aGlzLmlzU3RvcHBlZCYmKHRoaXMucmVzZXQoKSx0aGlzLmlzU3RvcHBlZD0hMSx0aGlzLmVtaXQoKSl9c3RvcCgpe2lmKCF0aGlzLmlzU3RvcHBlZCl7aWYodGhpcy5vcHRpb25zLmF1dG9Ub2dnbGUpe3RoaXMucm9vdEVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoIm92ZXJmbG93IiwiY2xpcCIpO3JldHVybn10aGlzLmludGVybmFsU3RvcCgpfX1pbnRlcm5hbFN0b3AoKXt0aGlzLmlzU3RvcHBlZHx8KHRoaXMucmVzZXQoKSx0aGlzLmlzU3RvcHBlZD0hMCx0aGlzLmVtaXQoKSl9cmFmPWU9PntsZXQgdD1lLSh0aGlzLnRpbWV8fGUpO3RoaXMudGltZT1lLHRoaXMuYW5pbWF0ZS5hZHZhbmNlKHQqLjAwMSksdGhpcy5vcHRpb25zLmF1dG9SYWYmJih0aGlzLl9yYWZJZD1yZXF1ZXN0QW5pbWF0aW9uRnJhbWUodGhpcy5yYWYpKX07c2Nyb2xsVG8oZSx7b2Zmc2V0OnQ9MCxpbW1lZGlhdGU6cj0hMSxsb2NrOmE9ITEscHJvZ3JhbW1hdGljOmk9ITAsbGVycDpvPWk/dGhpcy5vcHRpb25zLmxlcnA6dm9pZCAwLGR1cmF0aW9uOm49aT90aGlzLm9wdGlvbnMuZHVyYXRpb246dm9pZCAwLGVhc2luZzpzPWk/dGhpcy5vcHRpb25zLmVhc2luZzp2b2lkIDAsb25TdGFydDpjLG9uQ29tcGxldGU6ZCxmb3JjZTpmPSExLHVzZXJEYXRhOnV9PXt9KXtpZighKCh0aGlzLmlzU3RvcHBlZHx8dGhpcy5pc0xvY2tlZCkmJiFmKSl7aWYodHlwZW9mIGU9PSJzdHJpbmciJiZbInRvcCIsImxlZnQiLCJzdGFydCIsIiMiXS5pbmNsdWRlcyhlKSllPTA7ZWxzZSBpZih0eXBlb2YgZT09InN0cmluZyImJlsiYm90dG9tIiwicmlnaHQiLCJlbmQiXS5pbmNsdWRlcyhlKSllPXRoaXMubGltaXQ7ZWxzZXtsZXQgcDtpZih0eXBlb2YgZT09InN0cmluZyI/KHA9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcihlKSxwfHwoZT09PSIjdG9wIj9lPTA6Y29uc29sZS53YXJuKCJMZW5pczogVGFyZ2V0IG5vdCBmb3VuZCIsZSkpKTplIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQmJmU/Lm5vZGVUeXBlJiYocD1lKSxwKXtpZih0aGlzLm9wdGlvbnMud3JhcHBlciE9PXdpbmRvdyl7bGV0IGI9dGhpcy5yb290RWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTt0LT10aGlzLmlzSG9yaXpvbnRhbD9iLmxlZnQ6Yi50b3B9bGV0IGg9cC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtlPSh0aGlzLmlzSG9yaXpvbnRhbD9oLmxlZnQ6aC50b3ApK3RoaXMuYW5pbWF0ZWRTY3JvbGx9fWlmKHR5cGVvZiBlPT0ibnVtYmVyIil7aWYoZSs9dCxlPU1hdGgucm91bmQoZSksdGhpcy5vcHRpb25zLmluZmluaXRlKXtpZihpKXt0aGlzLnRhcmdldFNjcm9sbD10aGlzLmFuaW1hdGVkU2Nyb2xsPXRoaXMuc2Nyb2xsO2xldCBwPWUtdGhpcy5hbmltYXRlZFNjcm9sbDtwPnRoaXMubGltaXQvMj9lPWUtdGhpcy5saW1pdDpwPC10aGlzLmxpbWl0LzImJihlPWUrdGhpcy5saW1pdCl9fWVsc2UgZT1UWHQoMCxlLHRoaXMubGltaXQpO2lmKGU9PT10aGlzLnRhcmdldFNjcm9sbCl7Yz8uKHRoaXMpLGQ/Lih0aGlzKTtyZXR1cm59aWYodGhpcy51c2VyRGF0YT11Pz97fSxyKXt0aGlzLmFuaW1hdGVkU2Nyb2xsPXRoaXMudGFyZ2V0U2Nyb2xsPWUsdGhpcy5zZXRTY3JvbGwodGhpcy5zY3JvbGwpLHRoaXMucmVzZXQoKSx0aGlzLnByZXZlbnROZXh0TmF0aXZlU2Nyb2xsRXZlbnQoKSx0aGlzLmVtaXQoKSxkPy4odGhpcyksdGhpcy51c2VyRGF0YT17fSxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCk9Pnt0aGlzLmRpc3BhdGNoU2Nyb2xsZW5kRXZlbnQoKX0pO3JldHVybn1pfHwodGhpcy50YXJnZXRTY3JvbGw9ZSksdHlwZW9mIG49PSJudW1iZXIiJiZ0eXBlb2YgcyE9ImZ1bmN0aW9uIj9zPUFYdDp0eXBlb2Ygcz09ImZ1bmN0aW9uIiYmdHlwZW9mIG4hPSJudW1iZXIiJiYobj0xKSx0aGlzLmFuaW1hdGUuZnJvbVRvKHRoaXMuYW5pbWF0ZWRTY3JvbGwsZSx7ZHVyYXRpb246bixlYXNpbmc6cyxsZXJwOm8sb25TdGFydDooKT0+e2EmJih0aGlzLmlzTG9ja2VkPSEwKSx0aGlzLmlzU2Nyb2xsaW5nPSJzbW9vdGgiLGM/Lih0aGlzKX0sb25VcGRhdGU6KHAsaCk9Pnt0aGlzLmlzU2Nyb2xsaW5nPSJzbW9vdGgiLHRoaXMubGFzdFZlbG9jaXR5PXRoaXMudmVsb2NpdHksdGhpcy52ZWxvY2l0eT1wLXRoaXMuYW5pbWF0ZWRTY3JvbGwsdGhpcy5kaXJlY3Rpb249TWF0aC5zaWduKHRoaXMudmVsb2NpdHkpLHRoaXMuYW5pbWF0ZWRTY3JvbGw9cCx0aGlzLnNldFNjcm9sbCh0aGlzLnNjcm9sbCksaSYmKHRoaXMudGFyZ2V0U2Nyb2xsPXApLGh8fHRoaXMuZW1pdCgpLGgmJih0aGlzLnJlc2V0KCksdGhpcy5lbWl0KCksZD8uKHRoaXMpLHRoaXMudXNlckRhdGE9e30scmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57dGhpcy5kaXNwYXRjaFNjcm9sbGVuZEV2ZW50KCl9KSx0aGlzLnByZXZlbnROZXh0TmF0aXZlU2Nyb2xsRXZlbnQoKSl9fSl9fX1wcmV2ZW50TmV4dE5hdGl2ZVNjcm9sbEV2ZW50KCl7dGhpcy5fcHJldmVudE5leHROYXRpdmVTY3JvbGxFdmVudD0hMCxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCk9Pnt0aGlzLl9wcmV2ZW50TmV4dE5hdGl2ZVNjcm9sbEV2ZW50PSExfSl9Y2hlY2tOZXN0ZWRTY3JvbGwoZSx7ZGVsdGFYOnQsZGVsdGFZOnJ9KXtsZXQgYT1EYXRlLm5vdygpLGk9ZS5fbGVuaXM/Pz17fSxvLG4scyxjLGQsZix1LHAsaD10aGlzLm9wdGlvbnMuZ2VzdHVyZU9yaWVudGF0aW9uO2lmKGEtKGkudGltZT8/MCk+MmUzKXtpLnRpbWU9RGF0ZS5ub3coKTtsZXQgQz13aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShlKTtpLmNvbXB1dGVkU3R5bGU9QztsZXQgaz1DLm92ZXJmbG93WCxOPUMub3ZlcmZsb3dZO2lmKG89WyJhdXRvIiwib3ZlcmxheSIsInNjcm9sbCJdLmluY2x1ZGVzKGspLG49WyJhdXRvIiwib3ZlcmxheSIsInNjcm9sbCJdLmluY2x1ZGVzKE4pLGkuaGFzT3ZlcmZsb3dYPW8saS5oYXNPdmVyZmxvd1k9biwhbyYmIW58fGg9PT0idmVydGljYWwiJiYhbnx8aD09PSJob3Jpem9udGFsIiYmIW8pcmV0dXJuITE7ZD1lLnNjcm9sbFdpZHRoLGY9ZS5zY3JvbGxIZWlnaHQsdT1lLmNsaWVudFdpZHRoLHA9ZS5jbGllbnRIZWlnaHQscz1kPnUsYz1mPnAsaS5pc1Njcm9sbGFibGVYPXMsaS5pc1Njcm9sbGFibGVZPWMsaS5zY3JvbGxXaWR0aD1kLGkuc2Nyb2xsSGVpZ2h0PWYsaS5jbGllbnRXaWR0aD11LGkuY2xpZW50SGVpZ2h0PXB9ZWxzZSBzPWkuaXNTY3JvbGxhYmxlWCxjPWkuaXNTY3JvbGxhYmxlWSxvPWkuaGFzT3ZlcmZsb3dYLG49aS5oYXNPdmVyZmxvd1ksZD1pLnNjcm9sbFdpZHRoLGY9aS5zY3JvbGxIZWlnaHQsdT1pLmNsaWVudFdpZHRoLHA9aS5jbGllbnRIZWlnaHQ7aWYoIW8mJiFufHwhcyYmIWN8fGg9PT0idmVydGljYWwiJiYoIW58fCFjKXx8aD09PSJob3Jpem9udGFsIiYmKCFvfHwhcykpcmV0dXJuITE7bGV0IGI7aWYoaD09PSJob3Jpem9udGFsIiliPSJ4IjtlbHNlIGlmKGg9PT0idmVydGljYWwiKWI9InkiO2Vsc2V7bGV0IEM9dCE9PTAsaz1yIT09MDtDJiZvJiZzJiYoYj0ieCIpLGsmJm4mJmMmJihiPSJ5Iil9aWYoIWIpcmV0dXJuITE7bGV0IHgsZyx2LHcsTTtpZihiPT09IngiKXg9ZS5zY3JvbGxMZWZ0LGc9ZC11LHY9dCx3PW8sTT1zO2Vsc2UgaWYoYj09PSJ5Iil4PWUuc2Nyb2xsVG9wLGc9Zi1wLHY9cix3PW4sTT1jO2Vsc2UgcmV0dXJuITE7cmV0dXJuKHY+MD94PGc6eD4wKSYmdyYmTX1nZXQgcm9vdEVsZW1lbnQoKXtyZXR1cm4gdGhpcy5vcHRpb25zLndyYXBwZXI9PT13aW5kb3c/ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50OnRoaXMub3B0aW9ucy53cmFwcGVyfWdldCBsaW1pdCgpe3JldHVybiB0aGlzLm9wdGlvbnMubmFpdmVEaW1lbnNpb25zP3RoaXMuaXNIb3Jpem9udGFsP3RoaXMucm9vdEVsZW1lbnQuc2Nyb2xsV2lkdGgtdGhpcy5yb290RWxlbWVudC5jbGllbnRXaWR0aDp0aGlzLnJvb3RFbGVtZW50LnNjcm9sbEhlaWdodC10aGlzLnJvb3RFbGVtZW50LmNsaWVudEhlaWdodDp0aGlzLmRpbWVuc2lvbnMubGltaXRbdGhpcy5pc0hvcml6b250YWw/IngiOiJ5Il19Z2V0IGlzSG9yaXpvbnRhbCgpe3JldHVybiB0aGlzLm9wdGlvbnMub3JpZW50YXRpb249PT0iaG9yaXpvbnRhbCJ9Z2V0IGFjdHVhbFNjcm9sbCgpe2xldCBlPXRoaXMub3B0aW9ucy53cmFwcGVyO3JldHVybiB0aGlzLmlzSG9yaXpvbnRhbD9lLnNjcm9sbFg/P2Uuc2Nyb2xsTGVmdDplLnNjcm9sbFk/P2Uuc2Nyb2xsVG9wfWdldCBzY3JvbGwoKXtyZXR1cm4gdGhpcy5vcHRpb25zLmluZmluaXRlP2c3YSh0aGlzLmFuaW1hdGVkU2Nyb2xsLHRoaXMubGltaXQpOnRoaXMuYW5pbWF0ZWRTY3JvbGx9Z2V0IHByb2dyZXNzKCl7cmV0dXJuIHRoaXMubGltaXQ9PT0wPzE6dGhpcy5zY3JvbGwvdGhpcy5saW1pdH1nZXQgaXNTY3JvbGxpbmcoKXtyZXR1cm4gdGhpcy5faXNTY3JvbGxpbmd9c2V0IGlzU2Nyb2xsaW5nKGUpe3RoaXMuX2lzU2Nyb2xsaW5nIT09ZSYmKHRoaXMuX2lzU2Nyb2xsaW5nPWUsdGhpcy51cGRhdGVDbGFzc05hbWUoKSl9Z2V0IGlzU3RvcHBlZCgpe3JldHVybiB0aGlzLl9pc1N0b3BwZWR9c2V0IGlzU3RvcHBlZChlKXt0aGlzLl9pc1N0b3BwZWQhPT1lJiYodGhpcy5faXNTdG9wcGVkPWUsdGhpcy51cGRhdGVDbGFzc05hbWUoKSl9Z2V0IGlzTG9ja2VkKCl7cmV0dXJuIHRoaXMuX2lzTG9ja2VkfXNldCBpc0xvY2tlZChlKXt0aGlzLl9pc0xvY2tlZCE9PWUmJih0aGlzLl9pc0xvY2tlZD1lLHRoaXMudXBkYXRlQ2xhc3NOYW1lKCkpfWdldCBpc1Ntb290aCgpe3JldHVybiB0aGlzLmlzU2Nyb2xsaW5nPT09InNtb290aCJ9Z2V0IGNsYXNzTmFtZSgpe2xldCBlPSJsZW5pcyI7cmV0dXJuIHRoaXMub3B0aW9ucy5hdXRvVG9nZ2xlJiYoZSs9IiBsZW5pcy1hdXRvVG9nZ2xlIiksdGhpcy5pc1N0b3BwZWQmJihlKz0iIGxlbmlzLXN0b3BwZWQiKSx0aGlzLmlzTG9ja2VkJiYoZSs9IiBsZW5pcy1sb2NrZWQiKSx0aGlzLmlzU2Nyb2xsaW5nJiYoZSs9IiBsZW5pcy1zY3JvbGxpbmciKSx0aGlzLmlzU2Nyb2xsaW5nPT09InNtb290aCImJihlKz0iIGxlbmlzLXNtb290aCIpLGV9dXBkYXRlQ2xhc3NOYW1lKCl7dGhpcy5jbGVhblVwQ2xhc3NOYW1lKCksdGhpcy5yb290RWxlbWVudC5jbGFzc05hbWU9YCR7dGhpcy5yb290RWxlbWVudC5jbGFzc05hbWV9ICR7dGhpcy5jbGFzc05hbWV9YC50cmltKCl9Y2xlYW5VcENsYXNzTmFtZSgpe3RoaXMucm9vdEVsZW1lbnQuY2xhc3NOYW1lPXRoaXMucm9vdEVsZW1lbnQuY2xhc3NOYW1lLnJlcGxhY2UoL2xlbmlzKC1cdyspPy9nLCIiKS50cmltKCl9fX0pO3ZhciBmTWU9WGUoKGRNZSx1TWUpPT57KGZ1bmN0aW9uKGUsdCl7dHlwZW9mIGRNZT09Im9iamVjdCImJnR5cGVvZiB1TWU8InUiP3VNZS5leHBvcnRzPXQoKTp0eXBlb2YgZGVmaW5lPT0iZnVuY3Rpb24iJiZkZWZpbmUuYW1kP2RlZmluZSh0KTooZT1lfHxzZWxmLGUuU3dlZXRTY3JvbGw9dCgpKX0pKGRNZSxmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0Ijt2YXIgZT1mdW5jdGlvbigpe3JldHVybiBlPU9iamVjdC5hc3NpZ258fGZ1bmN0aW9uKEQpe2Zvcih2YXIgUixPPTEsWT1hcmd1bWVudHMubGVuZ3RoO088WTtPKyspe1I9YXJndW1lbnRzW09dO2Zvcih2YXIgdWUgaW4gUilPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoUix1ZSkmJihEW3VlXT1SW3VlXSl9cmV0dXJuIER9LGUuYXBwbHkodGhpcyxhcmd1bWVudHMpfSx0PSEhKHR5cGVvZiB3aW5kb3c8InUiJiZ3aW5kb3cuZG9jdW1lbnQmJndpbmRvdy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KSxyPXQ/d2luZG93Lmhpc3RvcnkmJiJwdXNoU3RhdGUiaW4gd2luZG93Lmhpc3RvcnkmJndpbmRvdy5sb2NhdGlvbi5wcm90b2NvbCE9PSJmaWxlOiI6ITEsYT0oZnVuY3Rpb24oKXt2YXIgQT0hMTtpZighdClyZXR1cm4gQTt0cnl7dmFyIEQ9d2luZG93LFI9T2JqZWN0LmRlZmluZVByb3BlcnR5KHt9LCJwYXNzaXZlIix7Z2V0OmZ1bmN0aW9uKCl7QT0hMH19KTtELmFkZEV2ZW50TGlzdGVuZXIoInRlc3QiLG51bGwsUiksRC5yZW1vdmVFdmVudExpc3RlbmVyKCJ0ZXN0IixudWxsLFIpfWNhdGNoe31yZXR1cm4gQX0pKCksaT1mdW5jdGlvbihBKXtyZXR1cm4gdHlwZW9mIEE9PSJzdHJpbmcifSxvPWZ1bmN0aW9uKEEpe3JldHVybiB0eXBlb2YgQT09ImZ1bmN0aW9uIn0sbj1mdW5jdGlvbihBKXtyZXR1cm4gQXJyYXkuaXNBcnJheShBKX0scz1mdW5jdGlvbihBKXtyZXR1cm4hbihBKSYmQS1wYXJzZUZsb2F0KEEpKzE+PTB9LGM9ZnVuY3Rpb24oQSxEKXtyZXR1cm4gQSYmQS5oYXNPd25Qcm9wZXJ0eShEKX0sZD10P3dpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUuYmluZCh3aW5kb3cpOm51bGwsZj10P3dpbmRvdy5jYW5jZWxBbmltYXRpb25GcmFtZS5iaW5kKHdpbmRvdyk6bnVsbCx1PU1hdGguY29zLHA9TWF0aC5zaW4saD1NYXRoLnBvdyxiPU1hdGguc3FydCx4PU1hdGguUEksZz17bGluZWFyOmZ1bmN0aW9uKEEpe3JldHVybiBBfSxlYXNlSW5RdWFkOmZ1bmN0aW9uKEEsRCxSLE8sWSl7cmV0dXJuIE8qKEQvPVkpKkQrUn0sZWFzZU91dFF1YWQ6ZnVuY3Rpb24oQSxELFIsTyxZKXtyZXR1cm4tTyooRC89WSkqKEQtMikrUn0sZWFzZUluT3V0UXVhZDpmdW5jdGlvbihBLEQsUixPLFkpe3JldHVybihELz1ZLzIpPDE/Ty8yKkQqRCtSOi1PLzIqKC0tRCooRC0yKS0xKStSfSxlYXNlSW5DdWJpYzpmdW5jdGlvbihBLEQsUixPLFkpe3JldHVybiBPKihELz1ZKSpEKkQrUn0sZWFzZU91dEN1YmljOmZ1bmN0aW9uKEEsRCxSLE8sWSl7cmV0dXJuIE8qKChEPUQvWS0xKSpEKkQrMSkrUn0sZWFzZUluT3V0Q3ViaWM6ZnVuY3Rpb24oQSxELFIsTyxZKXtyZXR1cm4oRC89WS8yKTwxP08vMipEKkQqRCtSOk8vMiooKEQtPTIpKkQqRCsyKStSfSxlYXNlSW5RdWFydDpmdW5jdGlvbihBLEQsUixPLFkpe3JldHVybiBPKihELz1ZKSpEKkQqRCtSfSxlYXNlT3V0UXVhcnQ6ZnVuY3Rpb24oQSxELFIsTyxZKXtyZXR1cm4tTyooKEQ9RC9ZLTEpKkQqRCpELTEpK1J9LGVhc2VJbk91dFF1YXJ0OmZ1bmN0aW9uKEEsRCxSLE8sWSl7cmV0dXJuKEQvPVkvMik8MT9PLzIqRCpEKkQqRCtSOi1PLzIqKChELT0yKSpEKkQqRC0yKStSfSxlYXNlSW5RdWludDpmdW5jdGlvbihBLEQsUixPLFkpe3JldHVybiBPKihELz1ZKSpEKkQqRCpEK1J9LGVhc2VPdXRRdWludDpmdW5jdGlvbihBLEQsUixPLFkpe3JldHVybiBPKigoRD1EL1ktMSkqRCpEKkQqRCsxKStSfSxlYXNlSW5PdXRRdWludDpmdW5jdGlvbihBLEQsUixPLFkpe3JldHVybihELz1ZLzIpPDE/Ty8yKkQqRCpEKkQqRCtSOk8vMiooKEQtPTIpKkQqRCpEKkQrMikrUn0sZWFzZUluU2luZTpmdW5jdGlvbihBLEQsUixPLFkpe3JldHVybi1PKnUoRC9ZKih4LzIpKStPK1J9LGVhc2VPdXRTaW5lOmZ1bmN0aW9uKEEsRCxSLE8sWSl7cmV0dXJuIE8qcChEL1kqKHgvMikpK1J9LGVhc2VJbk91dFNpbmU6ZnVuY3Rpb24oQSxELFIsTyxZKXtyZXR1cm4tTy8yKih1KHgqRC9ZKS0xKStSfSxlYXNlSW5FeHBvOmZ1bmN0aW9uKEEsRCxSLE8sWSl7cmV0dXJuIEQ9PT0wP1I6TypoKDIsMTAqKEQvWS0xKSkrUn0sZWFzZU91dEV4cG86ZnVuY3Rpb24oQSxELFIsTyxZKXtyZXR1cm4gRD09PVk/UitPOk8qKC1oKDIsLTEwKkQvWSkrMSkrUn0sZWFzZUluT3V0RXhwbzpmdW5jdGlvbihBLEQsUixPLFkpe3JldHVybiBEPT09MD9SOkQ9PT1ZP1IrTzooRC89WS8yKTwxP08vMipoKDIsMTAqKEQtMSkpK1I6Ty8yKigtaCgyLC0xMCotLUQpKzIpK1J9LGVhc2VJbkNpcmM6ZnVuY3Rpb24oQSxELFIsTyxZKXtyZXR1cm4tTyooYigxLShELz1ZKSpEKS0xKStSfSxlYXNlT3V0Q2lyYzpmdW5jdGlvbihBLEQsUixPLFkpe3JldHVybiBPKmIoMS0oRD1EL1ktMSkqRCkrUn0sZWFzZUluT3V0Q2lyYzpmdW5jdGlvbihBLEQsUixPLFkpe3JldHVybihELz1ZLzIpPDE/LU8vMiooYigxLUQqRCktMSkrUjpPLzIqKGIoMS0oRC09MikqRCkrMSkrUn19LHY9ZnVuY3Rpb24oQSl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKEE/ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChBKTpbXSl9LHc9ZnVuY3Rpb24oQSl7cmV0dXJuIHYoQSkuc2hpZnQoKXx8bnVsbH0sTT1mdW5jdGlvbihBKXtyZXR1cm4gQSBpbnN0YW5jZW9mIEVsZW1lbnR9LEY9ZnVuY3Rpb24oQSl7cmV0dXJuIEE9PT13aW5kb3d9LEM9ZnVuY3Rpb24oQSl7cmV0dXJuIEE9PT1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnR8fEE9PT1kb2N1bWVudC5ib2R5fSxrPWZ1bmN0aW9uKEEsRCl7aWYoTShEKSlyZXR1cm4gQT09PUQ7Zm9yKHZhciBSPXYoRCksTz1SLmxlbmd0aDstLU8+PTAmJlJbT10hPT1BOyk7cmV0dXJuIE8+LTF9LE49ZnVuY3Rpb24oQSl7cmV0dXJuIE1hdGgubWF4KEEuc2Nyb2xsSGVpZ2h0LEEuY2xpZW50SGVpZ2h0LEEub2Zmc2V0SGVpZ2h0KX0sJD1mdW5jdGlvbihBKXtyZXR1cm4gTWF0aC5tYXgoQS5zY3JvbGxXaWR0aCxBLmNsaWVudFdpZHRoLEEub2Zmc2V0V2lkdGgpfSxJPWZ1bmN0aW9uKEEpe3JldHVybnt3aWR0aDokKEEpLGhlaWdodDpOKEEpfX0sQj1mdW5jdGlvbihBKXt2YXIgRD1GKEEpfHxDKEEpO3JldHVybnt2aWV3cG9ydDp7d2lkdGg6RD9NYXRoLm1pbih3aW5kb3cuaW5uZXJXaWR0aCxkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50V2lkdGgpOkEuY2xpZW50V2lkdGgsaGVpZ2h0OkQ/d2luZG93LmlubmVySGVpZ2h0OkEuY2xpZW50SGVpZ2h0fSxzaXplOkQ/e3dpZHRoOk1hdGgubWF4KCQoZG9jdW1lbnQuYm9keSksJChkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpKSxoZWlnaHQ6TWF0aC5tYXgoTihkb2N1bWVudC5ib2R5KSxOKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCkpfTpJKEEpfX0sej17eToic2Nyb2xsVG9wIix4OiJzY3JvbGxMZWZ0In0seT17eToicGFnZVlPZmZzZXQiLHg6InBhZ2VYT2Zmc2V0In0sRT1mdW5jdGlvbihBLEQpe3JldHVybiBGKEEpP0FbeVtEXV06QVt6W0RdXX0sXz1mdW5jdGlvbihBLEQsUil7aWYoRihBKSl7dmFyIE89Uj09PSJ5IjtBLnNjcm9sbFRvKE8/QS5wYWdlWE9mZnNldDpELE8/RDpBLnBhZ2VZT2Zmc2V0KX1lbHNlIEFbeltSXV09RH0sUD1mdW5jdGlvbihBLEQpe3ZhciBSPUEuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7aWYoUi53aWR0aHx8Ui5oZWlnaHQpe3ZhciBPPXt0b3A6MCxsZWZ0OjB9LFk9dm9pZCAwO2lmKEYoRCl8fEMoRCkpWT1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsTy50b3A9d2luZG93W3kueV0sTy5sZWZ0PXdpbmRvd1t5LnhdO2Vsc2V7WT1EO3ZhciB1ZT1ZLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO08udG9wPXVlLnRvcCotMStZW3oueV0sTy5sZWZ0PXVlLmxlZnQqLTErWVt6LnhdfXJldHVybnt0b3A6Ui50b3ArTy50b3AtWS5jbGllbnRUb3AsbGVmdDpSLmxlZnQrTy5sZWZ0LVkuY2xpZW50TGVmdH19cmV0dXJuIFJ9LFY9KGZ1bmN0aW9uKCl7cmV0dXJuIHQ/Im9ud2hlZWwiaW4gZG9jdW1lbnQ/IndoZWVsIjoibW91c2V3aGVlbCI6IndoZWVsIn0pKCksSD1mdW5jdGlvbihBKXtyZXR1cm4gQT09PSJ3aGVlbCI/VjpBfSxXPWZ1bmN0aW9uKEEsRCxSLE8sWSl7Ui5zcGxpdCgiICIpLmZvckVhY2goZnVuY3Rpb24odWUpe0FbRF0oSCh1ZSksTyxhP3twYXNzaXZlOll9OiExKX0pfSxhZT1mdW5jdGlvbihBLEQsUixPKXtyZXR1cm4gVyhBLCJhZGRFdmVudExpc3RlbmVyIixELFIsTyl9LFQ9ZnVuY3Rpb24oQSxELFIsTyl7cmV0dXJuIFcoQSwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsRCxSLE8pfSxKPS9eKFwrfC0pPShcZCsoPzpcLlxkKyk/KSQvLGZlPWZ1bmN0aW9uKEEsRCl7dmFyIFI9e3RvcDowLGxlZnQ6MCxyZWxhdGl2ZTohMX07aWYoYyhBLCJ0b3AiKXx8YyhBLCJsZWZ0IikpUj1lKHt9LFIsQSk7ZWxzZSBpZihuKEEpKWlmKEEubGVuZ3RoPjEpUi50b3A9QVswXSxSLmxlZnQ9QVsxXTtlbHNlIGlmKEEubGVuZ3RoPT09MSlSLnRvcD1EP0FbMF06MCxSLmxlZnQ9RD8wOkFbMF07ZWxzZSByZXR1cm4gbnVsbDtlbHNlIGlmKHMoQSkpRD9SLnRvcD1BOlIubGVmdD1BO2Vsc2UgaWYoaShBKSl7dmFyIE89QS50cmltKCkubWF0Y2goSik7aWYoIU8pcmV0dXJuIG51bGw7dmFyIFk9T1sxXSx1ZT1wYXJzZUludChPWzJdLDEwKTtZPT09IisiPyhSLnRvcD1EP3VlOjAsUi5sZWZ0PUQ/MDp1ZSk6KFIudG9wPUQ/LXVlOjAsUi5sZWZ0PUQ/MDotdWUpLFIucmVsYXRpdmU9ITB9ZWxzZSByZXR1cm4gbnVsbDtyZXR1cm4gUn0sTD17dHJpZ2dlcjoiW2RhdGEtc2Nyb2xsXSIsaGVhZGVyOiJbZGF0YS1zY3JvbGwtaGVhZGVyXSIsZHVyYXRpb246MWUzLGVhc2luZzoiZWFzZU91dFF1aW50IixvZmZzZXQ6MCx2ZXJ0aWNhbDohMCxob3Jpem9udGFsOiExLGNhbmNlbGxhYmxlOiEwLHVwZGF0ZVVSTDohMSxwcmV2ZW50RGVmYXVsdDohMCxzdG9wUHJvcGFnYXRpb246ITAsYmVmb3JlOm51bGwsYWZ0ZXI6bnVsbCxjYW5jZWw6bnVsbCxjb21wbGV0ZTpudWxsLHN0ZXA6bnVsbH0sUT0iY2xpY2siLGtlPSJ3aGVlbCB0b3VjaHN0YXJ0IHRvdWNobW92ZSIsRz0oZnVuY3Rpb24oKXtmdW5jdGlvbiBBKEQsUil7dmFyIE89dGhpczt0aGlzLiRlbD1udWxsLHRoaXMuY3R4PXskdHJpZ2dlcjpudWxsLG9wdHM6bnVsbCxwcm9ncmVzczohMSxwb3M6bnVsbCxzdGFydFBvczpudWxsLGVhc2luZzpudWxsLHN0YXJ0OjAsaWQ6MCxjYW5jZWw6ITEsaGFzaDpudWxsfSx0aGlzLmxvb3A9ZnVuY3Rpb24odWUpe3ZhciB5ZT1PLCRlPXllLiRlbCxVPXllLmN0eDtpZihVLnN0YXJ0fHwoVS5zdGFydD11ZSksIVUucHJvZ3Jlc3N8fCEkZSl7Ty5zdG9wKCk7cmV0dXJufXZhciBxPVUub3B0cyxpZT1VLnBvcyx3ZT1VLnN0YXJ0LGdlPVUuc3RhcnRQb3MsQWU9VS5lYXNpbmcseGU9cS5kdXJhdGlvbixuZT17dG9wOiJ5IixsZWZ0OiJ4In0sTGU9dWUtd2UsT2U9TWF0aC5taW4oMSxNYXRoLm1heChMZS94ZSwwKSk7T2JqZWN0LmtleXMoaWUpLmZvckVhY2goZnVuY3Rpb24oSmUpe3ZhciB0ZT1pZVtKZV0sWj1nZVtKZV0sZWU9dGUtWjtpZihlZSE9PTApe3ZhciBiZT1BZShPZSx4ZSpPZSwwLDEseGUpO18oJGUsTWF0aC5yb3VuZChaK2VlKmJlKSxuZVtKZV0pfX0pLExlPD14ZT8oTy5ob29rKHEsInN0ZXAiLE9lKSxVLmlkPUEucmFmKE8ubG9vcCkpOk8uc3RvcCghMCl9LHRoaXMuaGFuZGxlQ2xpY2s9ZnVuY3Rpb24odWUpe2Zvcih2YXIgeWU9Ty5vcHRzLCRlPXVlLnRhcmdldDskZSYmJGUhPT1kb2N1bWVudDskZT0kZS5wYXJlbnROb2RlKWlmKGsoJGUseWUudHJpZ2dlcikpe3ZhciBVPUpTT04ucGFyc2UoJGUuZ2V0QXR0cmlidXRlKCJkYXRhLXNjcm9sbC1vcHRpb25zIil8fCJ7fSIpLHE9JGUuZ2V0QXR0cmlidXRlKCJkYXRhLXNjcm9sbCIpLGllPXF8fCRlLmdldEF0dHJpYnV0ZSgiaHJlZiIpLHdlPWUoe30seWUsVSksZ2U9d2UucHJldmVudERlZmF1bHQsQWU9d2Uuc3RvcFByb3BhZ2F0aW9uLHhlPXdlLnZlcnRpY2FsLG5lPXdlLmhvcml6b250YWw7Z2UmJnVlLnByZXZlbnREZWZhdWx0KCksQWUmJnVlLnN0b3BQcm9wYWdhdGlvbigpLE8uY3R4LiR0cmlnZ2VyPSRlLG5lJiZ4ZT9PLnRvKGllLHdlKTp4ZT9PLnRvVG9wKGllLHdlKTpuZSYmTy50b0xlZnQoaWUsd2UpO2JyZWFrfX0sdGhpcy5oYW5kbGVTdG9wPWZ1bmN0aW9uKHVlKXt2YXIgeWU9Ty5jdHgsJGU9eWUub3B0czskZSYmJGUuY2FuY2VsbGFibGU/KHllLmNhbmNlbD0hMCxPLnN0b3AoKSk6dWUucHJldmVudERlZmF1bHQoKX0sdGhpcy5vcHRzPWUoe30sTCxEfHx7fSk7dmFyIFk9bnVsbDt0JiYodHlwZW9mIFI9PSJzdHJpbmciP1k9dyhSKTpSIT1udWxsP1k9UjpZPXdpbmRvdyksdGhpcy4kZWw9WSxZJiZ0aGlzLmJpbmQoITAsITEpfXJldHVybiBBLmNyZWF0ZT1mdW5jdGlvbihELFIpe3JldHVybiBuZXcgQShELFIpfSxBLnByb3RvdHlwZS50bz1mdW5jdGlvbihELFIpe2lmKHQpe3ZhciBPPXRoaXMsWT1PLiRlbCx1ZT1PLmN0eCx5ZT1PLm9wdHMsJGU9dWUuJHRyaWdnZXIsVT1lKHt9LHllLFJ8fHt9KSxxPVUub2Zmc2V0LGllPVUudmVydGljYWwsd2U9VS5ob3Jpem9udGFsLGdlPU0oVS5oZWFkZXIpP1UuaGVhZGVyOncoVS5oZWFkZXIpLEFlPS9eIy8seGU9aShEKSYmQWUudGVzdChEKT9EOm51bGw7aWYodWUub3B0cz1VLHVlLmNhbmNlbD0hMSx1ZS5oYXNoPXhlLHRoaXMuc3RvcCgpLCEhWSl7dmFyIG5lPWZlKHEsaWUpLExlPWZlKEQsaWUpLE9lPXt0b3A6MCxsZWZ0OjB9O2lmKExlKWlmKExlLnJlbGF0aXZlKXt2YXIgSmU9RShZLGllPyJ5IjoieCIpO09lLnRvcD1pZT9KZStMZS50b3A6TGUudG9wLE9lLmxlZnQ9aWU/TGUubGVmdDpKZStMZS5sZWZ0fWVsc2UgT2U9TGU7ZWxzZSBpZihpKEQpJiZEIT09IiMiKXt2YXIgdGU9dyhEKTtpZighdGUpcmV0dXJuO09lPVAodGUsWSl9bmUmJihPZS50b3ArPW5lLnRvcCxPZS5sZWZ0Kz1uZS5sZWZ0KSxnZSYmKE9lLnRvcD1NYXRoLm1heCgwLE9lLnRvcC1JKGdlKS5oZWlnaHQpKTt2YXIgWj1CKFkpLGVlPVoudmlld3BvcnQsYmU9Wi5zaXplO2lmKE9lLnRvcD1pZT9NYXRoLm1heCgwLE1hdGgubWluKGJlLmhlaWdodC1lZS5oZWlnaHQsT2UudG9wKSk6RShZLCJ5IiksT2UubGVmdD13ZT9NYXRoLm1heCgwLE1hdGgubWluKGJlLndpZHRoLWVlLndpZHRoLE9lLmxlZnQpKTpFKFksIngiKSx0aGlzLmhvb2soVSwiYmVmb3JlIixPZSwkZSk9PT0hMSl7dWUub3B0cz1udWxsO3JldHVybn11ZS5wb3M9T2UsdGhpcy5zdGFydChVKSx0aGlzLmJpbmQoITEsITApfX19LEEucHJvdG90eXBlLnRvVG9wPWZ1bmN0aW9uKEQsUil7dGhpcy50byhELGUoe30sUnx8e30se3ZlcnRpY2FsOiEwLGhvcml6b250YWw6ITF9KSl9LEEucHJvdG90eXBlLnRvTGVmdD1mdW5jdGlvbihELFIpe3RoaXMudG8oRCxlKHt9LFJ8fHt9LHt2ZXJ0aWNhbDohMSxob3Jpem9udGFsOiEwfSkpfSxBLnByb3RvdHlwZS50b0VsZW1lbnQ9ZnVuY3Rpb24oRCxSKXt2YXIgTz10aGlzLiRlbDshdHx8IU98fHRoaXMudG8oUChELE8pLFJ8fHt9KX0sQS5wcm90b3R5cGUuc3RvcD1mdW5jdGlvbihEKXtEPT09dm9pZCAwJiYoRD0hMSk7dmFyIFI9dGhpcyxPPVIuJGVsLFk9Ui5jdHgsdWU9WS5wb3M7IU98fCFZLnByb2dyZXNzfHwoQS5jYWYoWS5pZCksWS5wcm9ncmVzcz0hMSxZLnN0YXJ0PTAsWS5pZD0wLEQmJnVlJiYoXyhPLHVlLmxlZnQsIngiKSxfKE8sdWUudG9wLCJ5IikpLHRoaXMuY29tcGxldGUoKSl9LEEucHJvdG90eXBlLnVwZGF0ZT1mdW5jdGlvbihEKXtpZih0aGlzLiRlbCl7dmFyIFI9ZSh7fSx0aGlzLm9wdHMsRCk7dGhpcy5zdG9wKCksdGhpcy51bmJpbmQoITAsITApLHRoaXMub3B0cz1SLHRoaXMuYmluZCghMCwhMSl9fSxBLnByb3RvdHlwZS5kZXN0cm95PWZ1bmN0aW9uKCl7dGhpcy4kZWwmJih0aGlzLnN0b3AoKSx0aGlzLnVuYmluZCghMCwhMCksdGhpcy4kZWw9bnVsbCl9LEEucHJvdG90eXBlLm9uQmVmb3JlPWZ1bmN0aW9uKEQsUil7cmV0dXJuITB9LEEucHJvdG90eXBlLm9uU3RlcD1mdW5jdGlvbihEKXt9LEEucHJvdG90eXBlLm9uQWZ0ZXI9ZnVuY3Rpb24oRCxSKXt9LEEucHJvdG90eXBlLm9uQ2FuY2VsPWZ1bmN0aW9uKCl7fSxBLnByb3RvdHlwZS5vbkNvbXBsZXRlPWZ1bmN0aW9uKEQpe30sQS5wcm90b3R5cGUuc3RhcnQ9ZnVuY3Rpb24oRCl7dmFyIFI9dGhpcy5jdHg7Ui5vcHRzPUQsUi5wcm9ncmVzcz0hMCxSLmVhc2luZz1vKEQuZWFzaW5nKT9ELmVhc2luZzpnW0QuZWFzaW5nXTt2YXIgTz10aGlzLiRlbCxZPXt0b3A6RShPLCJ5IiksbGVmdDpFKE8sIngiKX07Ui5zdGFydFBvcz1ZLFIuaWQ9QS5yYWYodGhpcy5sb29wKX0sQS5wcm90b3R5cGUuY29tcGxldGU9ZnVuY3Rpb24oKXt2YXIgRD10aGlzLFI9RC4kZWwsTz1ELmN0eCxZPU8uaGFzaCx1ZT1PLmNhbmNlbCx5ZT1PLm9wdHMsJGU9Ty5wb3MsVT1PLiR0cmlnZ2VyO2lmKCEoIVJ8fCF5ZSkpe2lmKFkhPW51bGwmJlkhPT13aW5kb3cubG9jYXRpb24uaGFzaCl7dmFyIHE9eWUudXBkYXRlVVJMO3QmJnImJnEhPT0hMSYmd2luZG93Lmhpc3RvcnlbcT09PSJyZXBsYWNlIj8icmVwbGFjZVN0YXRlIjoicHVzaFN0YXRlIl0obnVsbCwiIixZKX10aGlzLnVuYmluZCghMSwhMCksTy5vcHRzPW51bGwsTy4kdHJpZ2dlcj1udWxsLHVlP3RoaXMuaG9vayh5ZSwiY2FuY2VsIik6dGhpcy5ob29rKHllLCJhZnRlciIsJGUsVSksdGhpcy5ob29rKHllLCJjb21wbGV0ZSIsdWUpfX0sQS5wcm90b3R5cGUuaG9vaz1mdW5jdGlvbihELFIpe2Zvcih2YXIgTz1bXSxZPTI7WTxhcmd1bWVudHMubGVuZ3RoO1krKylPW1ktMl09YXJndW1lbnRzW1ldO3ZhciB1ZSx5ZT1EW1JdLCRlLFU7cmV0dXJuIG8oeWUpJiYoJGU9eWUuYXBwbHkodGhpcyxPLmNvbmNhdChbdGhpc10pKSksVT0odWU9dGhpcylbIm9uIisoUlswXS50b1VwcGVyQ2FzZSgpK1Iuc2xpY2UoMSkpXS5hcHBseSh1ZSxPKSwkZSE9PXZvaWQgMD8kZTpVfSxBLnByb3RvdHlwZS5iaW5kPWZ1bmN0aW9uKEQsUil7dmFyIE89dGhpcyxZPU8uJGVsLHVlPU8uY3R4Lm9wdHM7WSYmKEQmJmFlKFksUSx0aGlzLmhhbmRsZUNsaWNrLCExKSxSJiZhZShZLGtlLHRoaXMuaGFuZGxlU3RvcCx1ZT91ZS5jYW5jZWxsYWJsZTohMCkpfSxBLnByb3RvdHlwZS51bmJpbmQ9ZnVuY3Rpb24oRCxSKXt2YXIgTz10aGlzLFk9Ty4kZWwsdWU9Ty5jdHgub3B0cztZJiYoRCYmVChZLFEsdGhpcy5oYW5kbGVDbGljaywhMSksUiYmVChZLGtlLHRoaXMuaGFuZGxlU3RvcCx1ZT91ZS5jYW5jZWxsYWJsZTohMCkpfSxBLnJhZj1kLEEuY2FmPWYsQX0pKCk7cmV0dXJuIEd9KX0pO3ZhciBvc2UsUXksTTk9bCgoKT0+e3JCdCgpO3N5KCk7czQoKTtaMWUoKTtrd2UoKTtvbygpO0F3ZSgpO04yKCk7RndlKCk7RjcoKTtSd2UoKTtvYmUoKTtpc2UoKTtyb2UoKTtSdigpO1pnZSgpO1QxZSgpO0VYdCgpO29zZT1BcihmTWUoKSwxKSxReT17T2JqZWN0TWFwOm9jLFN0cmluZ21hcDpIdixGYXN0TWFwOmc2fX0pO3ZhciAkYT17fTtxZSgkYSx7Y29udGFpbmVyQ29udGV4dFN0eWxlczooKT0+azdhLGNzc0ZvckNvbnN0cmFpbnQ6KCk9Pnc3YSxjc3NGb3JDb25zdHJhaW50Q29udGFpbmVyOigpPT5NN2EsY3NzRm9yQ29udGFpbmVyOigpPT5SWHQsY3NzRm9yRGVza3RvcDooKT0+UzdhLGNzc0Zvck5vdGVib29rOigpPT56N2EsY3NzRm9yUGhhYmxldDooKT0+XzdhLGNzc0ZvclBob25lOigpPT5UN2EsY3NzRm9yVGFibGV0OigpPT5DN2EsY3NzRm9yVmlld3BvcnQ6KCk9PnJ1LGRlc2t0b3A6KCk9PlBYdCxub3RlYm9vazooKT0+SVh0LHBoYWJsZXQ6KCk9PkZYdCxwaG9uZTooKT0+T1h0LHRhYmxldDooKT0+Tlh0fSk7dmFyIFBYdCxJWHQsTlh0LEZYdCxPWHQsJFh0LHJ1LFJYdCx3N2EsTTdhLGs3YSxTN2EsejdhLEM3YSxfN2EsVDdhLHBNZT1sKCgpPT57azkoKTtMbigpO1BYdD0xNjAwLElYdD0xMjQwLE5YdD0xMDI0LEZYdD02MDAsT1h0PTQwMCwkWHQ9ZT0+e2xldCB0PVtdO3JldHVybiBlLm1pbldpZHRoJiZ0LnB1c2goYChtaW4td2lkdGg6ICR7ZS5taW5XaWR0aH1weClgKSxlLm1heFdpZHRoJiZ0LnB1c2goYChtYXgtd2lkdGg6ICR7ZS5tYXhXaWR0aH1weClgKSx0LmpvaW4oIiBhbmQgIil9LHJ1PShlLHQpPT5mcihgCiAgICBAY29udGFpbmVyIHdjY1Rvb2xzVmlld3BvcnQgJHt0fSB7CiAgICAgICR7ZS5jc3NUZXh0fQogICAgfQogICAgQG1lZGlhICR7dH0gewogICAgICAke2UuY3NzVGV4dH0KICAgIH0KICBgKSxSWHQ9KGUsdCxyKT0+ZnIoYAogICAgQGNvbnRhaW5lciAke3J9ICR7dH0gewogICAgICAke2UuY3NzVGV4dH0KICAgIH0KICBgKSx3N2E9ZT0+dD0+cnUodCwkWHQoZSkpLE03YT0oZSx0KT0+cj0+Ulh0KHIsJFh0KGUpLHQpLGs3YT1lPT5sZWAKICA6aG9zdCB7CiAgICBjb250YWluZXItdHlwZTogaW5saW5lLXNpemU7CiAgICBjb250YWluZXItbmFtZTogJHtmcihlKX07CiAgfQpgLFM3YT1lPT5ydShlLGAobWluLXdpZHRoOiAke1BYdH1weClgKSx6N2E9ZT0+cnUoZSxgKG1heC13aWR0aDogJHtJWHR9cHgpYCksQzdhPWU9PnJ1KGUsYChtYXgtd2lkdGg6ICR7Tlh0fXB4KWApLF83YT1lPT5ydShlLGAobWF4LXdpZHRoOiAke0ZYdH1weClgKSxUN2E9ZT0+cnUoZSxgKG1heC13aWR0aDogJHtPWHR9cHgpYCl9KTt2YXIgc3NlLEJYdD1sKCgpPT57TTkoKTtzc2U9Y2xhc3N7ZG9tdG9vbHNJbnN0YW5jZTtzY3JvbGxDYWxsYmFja3M9W107bGVuaXNJbnN0YW5jZT1udWxsO2hhbmRsZU5hdGl2ZVNjcm9sbD10PT57dGhpcy5leGVjdXRlU2Nyb2xsQ2FsbGJhY2tzKCl9O2hhbmRsZUxlbmlzU2Nyb2xsPXQ9Pnt0aGlzLmV4ZWN1dGVTY3JvbGxDYWxsYmFja3MoKX07Y29uc3RydWN0b3IodCl7dGhpcy5kb210b29sc0luc3RhbmNlPXQsdGhpcy5hdHRhY2hOYXRpdmVTY3JvbGxMaXN0ZW5lcigpfXN3ZWV0U2Nyb2xsZXI9bmV3IG9zZS5kZWZhdWx0KHt9KTthc3luYyB0b0VsZW1lbnQodCxyKXt0aGlzLnN3ZWV0U2Nyb2xsZXIudG9FbGVtZW50KHQsciksYXdhaXQgUXQuZGVsYXlGb3Ioci5kdXJhdGlvbil9YXN5bmMgZGV0ZWN0TmF0aXZlU21vb3RoU2Nyb2xsKCl7bGV0IHQ9bHQuZGVmZXIoKSxyPTEwMCxhPTMsaT0uNzUsbz1bXTtmdW5jdGlvbiBuKGMpe28ucHVzaChjLmRlbHRhWSksby5sZW5ndGg+PXImJih3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigid2hlZWwiLG4pLHMoKSl9ZnVuY3Rpb24gcygpe2xldCBjPW8ubGVuZ3RoLTEsZD0wO2ZvcihsZXQgdT0wO3U8Yzt1KyspTWF0aC5hYnMob1t1KzFdLW9bdV0pPD1hJiZkKys7ZC9jPj1pPyhjb25zb2xlLmxvZygiU21vb3RoIHNjcm9sbGluZyBkZXRlY3RlZC4iKSx0LnJlc29sdmUoITApKTooY29uc29sZS5sb2coIlNtb290aCBzY3JvbGxpbmcgTk9UIGRldGVjdGVkLiIpLHQucmVzb2x2ZSghMSkpfXJldHVybiB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigid2hlZWwiLG4pLHQucHJvbWlzZX1hc3luYyBlbmFibGVMZW5pc1Njcm9sbCh0KXtsZXQgcj1uZXcgWHkoe2F1dG9SYWY6ITB9KTtpZih0Py5kaXNhYmxlT25OYXRpdmVTbW9vdGhTY3JvbGwmJmF3YWl0IHRoaXMuZGV0ZWN0TmF0aXZlU21vb3RoU2Nyb2xsKCkpe3IuZGVzdHJveSgpO3JldHVybn10aGlzLmxlbmlzSW5zdGFuY2U9cix0aGlzLmRldGFjaE5hdGl2ZVNjcm9sbExpc3RlbmVyKCksdGhpcy5hdHRhY2hMZW5pc1Njcm9sbExpc3RlbmVyKCk7bGV0IGE9ci5kZXN0cm95LmJpbmQocik7ci5kZXN0cm95PSgpPT57YSgpLHRoaXMuZGV0YWNoTGVuaXNTY3JvbGxMaXN0ZW5lcigpLHRoaXMuYXR0YWNoTmF0aXZlU2Nyb2xsTGlzdGVuZXIoKSx0aGlzLmxlbmlzSW5zdGFuY2U9bnVsbH19b25TY3JvbGwodCl7dGhpcy5zY3JvbGxDYWxsYmFja3MucHVzaCh0KX1leGVjdXRlU2Nyb2xsQ2FsbGJhY2tzKCl7dGhpcy5zY3JvbGxDYWxsYmFja3MuZm9yRWFjaCh0PT57dHJ5e3QoKX1jYXRjaChyKXtjb25zb2xlLmVycm9yKCJFcnJvciBpbiBzY3JvbGwgY2FsbGJhY2s6IixyKX19KX1hdHRhY2hOYXRpdmVTY3JvbGxMaXN0ZW5lcigpe3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJzY3JvbGwiLHRoaXMuaGFuZGxlTmF0aXZlU2Nyb2xsKX1kZXRhY2hOYXRpdmVTY3JvbGxMaXN0ZW5lcigpe3dpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJzY3JvbGwiLHRoaXMuaGFuZGxlTmF0aXZlU2Nyb2xsKX1hdHRhY2hMZW5pc1Njcm9sbExpc3RlbmVyKCl7dGhpcy5sZW5pc0luc3RhbmNlJiZ0aGlzLmxlbmlzSW5zdGFuY2Uub24oInNjcm9sbCIsdGhpcy5oYW5kbGVMZW5pc1Njcm9sbCl9ZGV0YWNoTGVuaXNTY3JvbGxMaXN0ZW5lcigpe3RoaXMubGVuaXNJbnN0YW5jZSYmdGhpcy5sZW5pc0luc3RhbmNlLm9mZigic2Nyb2xsIix0aGlzLmhhbmRsZUxlbmlzU2Nyb2xsKX19fSk7dmFyIGxzZSxIWHQ9bCgoKT0+e2s5KCk7TTkoKTtsc2U9Y2xhc3N7ZG9tdG9vbHNSZWY7Z29CcmlnaHRCb29sZWFuPSExO3ByZWZlcnJlZENvbG9yU2NoZW1lTWVkaWFNYXRjaD13aW5kb3cubWF0Y2hNZWRpYSgiKHByZWZlcnMtY29sb3Itc2NoZW1lOiBsaWdodCkiKTt0aGVtZU9ic2VydmFibGU9bmV3IE5yLnJ4anMuUmVwbGF5U3ViamVjdCgxKTtjb25zdHJ1Y3Rvcih0KXt0aGlzLmRvbXRvb2xzUmVmPXQsdGhpcy5nb0JyaWdodEJvb2xlYW49dGhpcy5wcmVmZXJyZWRDb2xvclNjaGVtZU1lZGlhTWF0Y2gubWF0Y2hlcyx0aGlzLnByZWZlcnJlZENvbG9yU2NoZW1lTWVkaWFNYXRjaC5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLHI9Pnt0aGlzLmdvQnJpZ2h0Qm9vbGVhbj1yLm1hdGNoZXMsdGhpcy51cGRhdGVBbGxDb25uZWN0ZWRFbGVtZW50cygpfSksdGhpcy51cGRhdGVBbGxDb25uZWN0ZWRFbGVtZW50cygpfWFzeW5jIGVuYWJsZUF1dG9tYXRpY0dsb2JhbFRoZW1lQ2hhbmdlKCl7ZG9jdW1lbnQuYm9keSYmZG9jdW1lbnQuYm9keS5zdHlsZSYmdGhpcy50aGVtZU9ic2VydmFibGUuc3Vic2NyaWJlKHtuZXh0OnQ9Pntkb2N1bWVudC5ib2R5LnN0eWxlLmJhY2tncm91bmQ9dD8iI2ZmZiI6IiMwMDAifX0pfWFzeW5jIHVwZGF0ZUFsbENvbm5lY3RlZEVsZW1lbnRzKCl7dGhpcy50aGVtZU9ic2VydmFibGUubmV4dCh0aGlzLmdvQnJpZ2h0Qm9vbGVhbil9Z29CcmlnaHQoKXt0aGlzLmdvQnJpZ2h0Qm9vbGVhbj0hMCx0aGlzLnVwZGF0ZUFsbENvbm5lY3RlZEVsZW1lbnRzKCl9Z29EYXJrKCl7dGhpcy5nb0JyaWdodEJvb2xlYW49ITEsdGhpcy51cGRhdGVBbGxDb25uZWN0ZWRFbGVtZW50cygpfXRvZ2dsZURhcmtCcmlnaHQoKXt0aGlzLmdvQnJpZ2h0Qm9vbGVhbj0hdGhpcy5nb0JyaWdodEJvb2xlYW4sdGhpcy51cGRhdGVBbGxDb25uZWN0ZWRFbGVtZW50cygpfX19KTt2YXIgaE1lLGNzZSxxWHQ9bCgoKT0+e005KCk7KGZ1bmN0aW9uKGUpe2VbZS5CYWNrc3BhY2U9OF09IkJhY2tzcGFjZSIsZVtlLlRhYj05XT0iVGFiIixlW2UuRW50ZXI9MTNdPSJFbnRlciIsZVtlLlNoaWZ0PTE2XT0iU2hpZnQiLGVbZS5DdHJsPTE3XT0iQ3RybCIsZVtlLkFsdD0xOF09IkFsdCIsZVtlLlBhdXNlQnJlYWs9MTldPSJQYXVzZUJyZWFrIixlW2UuQ2Fwc0xvY2s9MjBdPSJDYXBzTG9jayIsZVtlLkVzY2FwZT0yN109IkVzY2FwZSIsZVtlLlNwYWNlPTMyXT0iU3BhY2UiLGVbZS5QYWdlVXA9MzNdPSJQYWdlVXAiLGVbZS5QYWdlRG93bj0zNF09IlBhZ2VEb3duIixlW2UuRW5kPTM1XT0iRW5kIixlW2UuSG9tZT0zNl09IkhvbWUiLGVbZS5MZWZ0QXJyb3c9MzddPSJMZWZ0QXJyb3ciLGVbZS5VcEFycm93PTM4XT0iVXBBcnJvdyIsZVtlLlJpZ2h0QXJyb3c9MzldPSJSaWdodEFycm93IixlW2UuRG93bkFycm93PTQwXT0iRG93bkFycm93IixlW2UuSW5zZXJ0PTQ1XT0iSW5zZXJ0IixlW2UuRGVsZXRlPTQ2XT0iRGVsZXRlIixlW2UuWmVybz00OF09Ilplcm8iLGVbZS5DbG9zZWRQYXJlbj00OF09IkNsb3NlZFBhcmVuIixlW2UuT25lPTQ5XT0iT25lIixlW2UuRXhjbGFtYXRpb25NYXJrPTQ5XT0iRXhjbGFtYXRpb25NYXJrIixlW2UuVHdvPTUwXT0iVHdvIixlW2UuQXRTaWduPTUwXT0iQXRTaWduIixlW2UuVGhyZWU9NTFdPSJUaHJlZSIsZVtlLlBvdW5kU2lnbj01MV09IlBvdW5kU2lnbiIsZVtlLkhhc2g9NTFdPSJIYXNoIixlW2UuRm91cj01Ml09IkZvdXIiLGVbZS5Eb2xsYXJTaWduPTUyXT0iRG9sbGFyU2lnbiIsZVtlLkZpdmU9NTNdPSJGaXZlIixlW2UuUGVyY2VudFNpZ249NTNdPSJQZXJjZW50U2lnbiIsZVtlLlNpeD01NF09IlNpeCIsZVtlLkNhcmV0PTU0XT0iQ2FyZXQiLGVbZS5IYXQ9NTRdPSJIYXQiLGVbZS5TZXZlbj01NV09IlNldmVuIixlW2UuQW1wZXJzYW5kPTU1XT0iQW1wZXJzYW5kIixlW2UuRWlnaHQ9NTZdPSJFaWdodCIsZVtlLlN0YXI9NTZdPSJTdGFyIixlW2UuQXN0ZXJpaz01Nl09IkFzdGVyaWsiLGVbZS5OaW5lPTU3XT0iTmluZSIsZVtlLk9wZW5QYXJlbj01N109Ik9wZW5QYXJlbiIsZVtlLkE9NjVdPSJBIixlW2UuQj02Nl09IkIiLGVbZS5DPTY3XT0iQyIsZVtlLkQ9NjhdPSJEIixlW2UuRT02OV09IkUiLGVbZS5GPTcwXT0iRiIsZVtlLkc9NzFdPSJHIixlW2UuSD03Ml09IkgiLGVbZS5JPTczXT0iSSIsZVtlLko9NzRdPSJKIixlW2UuSz03NV09IksiLGVbZS5MPTc2XT0iTCIsZVtlLk09NzddPSJNIixlW2UuTj03OF09Ik4iLGVbZS5PPTc5XT0iTyIsZVtlLlA9ODBdPSJQIixlW2UuUT04MV09IlEiLGVbZS5SPTgyXT0iUiIsZVtlLlM9ODNdPSJTIixlW2UuVD04NF09IlQiLGVbZS5VPTg1XT0iVSIsZVtlLlY9ODZdPSJWIixlW2UuVz04N109IlciLGVbZS5YPTg4XT0iWCIsZVtlLlk9ODldPSJZIixlW2UuWj05MF09IloiLGVbZS5MZWZ0V2luZG93S2V5PTkxXT0iTGVmdFdpbmRvd0tleSIsZVtlLlJpZ2h0V2luZG93S2V5PTkyXT0iUmlnaHRXaW5kb3dLZXkiLGVbZS5TZWxlY3RLZXk9OTNdPSJTZWxlY3RLZXkiLGVbZS5OdW1wYWQwPTk2XT0iTnVtcGFkMCIsZVtlLk51bXBhZDE9OTddPSJOdW1wYWQxIixlW2UuTnVtcGFkMj05OF09Ik51bXBhZDIiLGVbZS5OdW1wYWQzPTk5XT0iTnVtcGFkMyIsZVtlLk51bXBhZDQ9MTAwXT0iTnVtcGFkNCIsZVtlLk51bXBhZDU9MTAxXT0iTnVtcGFkNSIsZVtlLk51bXBhZDY9MTAyXT0iTnVtcGFkNiIsZVtlLk51bXBhZDc9MTAzXT0iTnVtcGFkNyIsZVtlLk51bXBhZDg9MTA0XT0iTnVtcGFkOCIsZVtlLk51bXBhZDk9MTA1XT0iTnVtcGFkOSIsZVtlLk11bHRpcGx5PTEwNl09Ik11bHRpcGx5IixlW2UuQWRkPTEwN109IkFkZCIsZVtlLlN1YnRyYWN0PTEwOV09IlN1YnRyYWN0IixlW2UuRGVjaW1hbFBvaW50PTExMF09IkRlY2ltYWxQb2ludCIsZVtlLkRpdmlkZT0xMTFdPSJEaXZpZGUiLGVbZS5GMT0xMTJdPSJGMSIsZVtlLkYyPTExM109IkYyIixlW2UuRjM9MTE0XT0iRjMiLGVbZS5GND0xMTVdPSJGNCIsZVtlLkY1PTExNl09IkY1IixlW2UuRjY9MTE3XT0iRjYiLGVbZS5GNz0xMThdPSJGNyIsZVtlLkY4PTExOV09IkY4IixlW2UuRjk9MTIwXT0iRjkiLGVbZS5GMTA9MTIxXT0iRjEwIixlW2UuRjExPTEyMl09IkYxMSIsZVtlLkYxMj0xMjNdPSJGMTIiLGVbZS5OdW1Mb2NrPTE0NF09Ik51bUxvY2siLGVbZS5TY3JvbGxMb2NrPTE0NV09IlNjcm9sbExvY2siLGVbZS5TZW1pQ29sb249MTg2XT0iU2VtaUNvbG9uIixlW2UuRXF1YWxzPTE4N109IkVxdWFscyIsZVtlLkNvbW1hPTE4OF09IkNvbW1hIixlW2UuRGFzaD0xODldPSJEYXNoIixlW2UuUGVyaW9kPTE5MF09IlBlcmlvZCIsZVtlLlVuZGVyU2NvcmU9MTg5XT0iVW5kZXJTY29yZSIsZVtlLlBsdXNTaWduPTE4N109IlBsdXNTaWduIixlW2UuRm9yd2FyZFNsYXNoPTE5MV09IkZvcndhcmRTbGFzaCIsZVtlLlRpbGRlPTE5Ml09IlRpbGRlIixlW2UuR3JhdmVBY2NlbnQ9MTkyXT0iR3JhdmVBY2NlbnQiLGVbZS5PcGVuQnJhY2tldD0yMTldPSJPcGVuQnJhY2tldCIsZVtlLkNsb3NlZEJyYWNrZXQ9MjIxXT0iQ2xvc2VkQnJhY2tldCIsZVtlLlF1b3RlPTIyMl09IlF1b3RlIn0pKGhNZXx8KGhNZT17fSkpO2NzZT1jbGFzc3tkb21Ob2RlO21hcENvbWJvc1RvSGFuZGxlcnM9bmV3IE1hcDtwcmVzc2VkS2V5cz1uZXcgU2V0O2NvbnN0cnVjdG9yKHQpe3RoaXMuZG9tTm9kZT10LHRoaXMuc3RhcnRMaXN0ZW5pbmcoKX1rZXlFbnVtPWhNZTtvbih0KXtsZXQgcj1uZXcgTnIucnhqcy5TdWJqZWN0O3JldHVybiB0aGlzLnJlZ2lzdGVyS2V5cyh0LHIpLHJ9dHJpZ2dlcktleVByZXNzKHQpe2ZvcihsZXQgciBvZiB0KXRoaXMucHJlc3NlZEtleXMuYWRkKHIpO3RoaXMuY2hlY2tNYXRjaGluZ0tleWJvYXJkU3ViamVjdHMoKTtmb3IobGV0IHIgb2YgdCl0aGlzLnByZXNzZWRLZXlzLmRlbGV0ZShyKX1zdGFydExpc3RlbmluZygpe3RoaXMuZG9tTm9kZS5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIix0aGlzLmhhbmRsZUtleURvd24pLHRoaXMuZG9tTm9kZS5hZGRFdmVudExpc3RlbmVyKCJrZXl1cCIsdGhpcy5oYW5kbGVLZXlVcCl9c3RvcExpc3RlbmluZygpe3RoaXMuZG9tTm9kZS5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXlkb3duIix0aGlzLmhhbmRsZUtleURvd24pLHRoaXMuZG9tTm9kZS5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXl1cCIsdGhpcy5oYW5kbGVLZXlVcCl9Y2xlYXIoKXt0aGlzLnN0b3BMaXN0ZW5pbmcoKSx0aGlzLm1hcENvbWJvc1RvSGFuZGxlcnMuY2xlYXIoKSx0aGlzLnByZXNzZWRLZXlzLmNsZWFyKCl9aGFuZGxlS2V5RG93bj10PT57dGhpcy5wcmVzc2VkS2V5cy5hZGQodC5rZXlDb2RlKSx0aGlzLmNoZWNrTWF0Y2hpbmdLZXlib2FyZFN1YmplY3RzKHQpfTtjaGVja01hdGNoaW5nS2V5Ym9hcmRTdWJqZWN0cyh0KXt0aGlzLm1hcENvbWJvc1RvSGFuZGxlcnMuZm9yRWFjaCgocixhKT0+e3RoaXMuYXJlQWxsS2V5c1ByZXNzZWQoYSkmJnIubmV4dCh0KX0pfWhhbmRsZUtleVVwPXQ9Pnt0aGlzLnByZXNzZWRLZXlzLmRlbGV0ZSh0LmtleUNvZGUpfTthcmVBbGxLZXlzUHJlc3NlZCh0KXtsZXQgcj0hMDtyZXR1cm4gdC5mb3JFYWNoKGE9Pnt0aGlzLnByZXNzZWRLZXlzLmhhcyhhKXx8KHI9ITEpfSkscn1yZWdpc3RlcktleXModCxyKXtpZighdGhpcy5tYXBDb21ib3NUb0hhbmRsZXJzLmhhcyh0KSl0aGlzLm1hcENvbWJvc1RvSGFuZGxlcnMuc2V0KHQscik7ZWxzZSByZXR1cm4gdGhpcy5tYXBDb21ib3NUb0hhbmRsZXJzLmdldCh0KX19fSk7dmFyIFkxLGs5PWwoKCk9PntNOSgpO3BNZSgpO0JYdCgpO2lzZSgpO0hYdCgpO3FYdCgpO1kxPWNsYXNzIGV7c3RhdGljIGluaXRpYWxpemF0aW9uUHJvbWlzZT1udWxsO3N0YXRpYyBhc3luYyBzZXR1cERvbVRvb2xzKHQ9e30pe3JldHVybiF0Lmlnbm9yZUdsb2JhbCYmZS5pbml0aWFsaXphdGlvblByb21pc2U/YXdhaXQgZS5pbml0aWFsaXphdGlvblByb21pc2U6dC5pZ25vcmVHbG9iYWw/bmV3IGUodCk6KGUuaW5pdGlhbGl6YXRpb25Qcm9taXNlPShhc3luYygpPT57bGV0IHI7aWYoZ2xvYmFsVGhpcy5kZWVzRG9tVG9vbHMpcj1nbG9iYWxUaGlzLmRlZXNEb21Ub29scztlbHNle2dsb2JhbFRoaXMuZGVlc0RvbVRvb2xzPW5ldyBlKHQpLHI9Z2xvYmFsVGhpcy5kZWVzRG9tVG9vbHM7bGV0IGE9KCk9PnsoZG9jdW1lbnQucmVhZHlTdGF0ZT09PSJpbnRlcmFjdGl2ZSJ8fGRvY3VtZW50LnJlYWR5U3RhdGU9PT0iY29tcGxldGUiKSYmKHIuZWxlbWVudHMuaGVhZEVsZW1lbnQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaGVhZCIpLHIuZWxlbWVudHMuYm9keUVsZW1lbnQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiYm9keSIpLHIua2V5Ym9hcmQ9bmV3IGNzZShkb2N1bWVudC5ib2R5KSxyLmRvbVJlYWR5LnJlc29sdmUoKSl9O2RvY3VtZW50LnJlYWR5U3RhdGU9PT0iaW50ZXJhY3RpdmUifHxkb2N1bWVudC5yZWFkeVN0YXRlPT09ImNvbXBsZXRlIj9hKCk6ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigicmVhZHlzdGF0ZWNoYW5nZSIsYSksci5kb21Ub29sc1JlYWR5LnJlc29sdmUoKX1yZXR1cm4gYXdhaXQgci5kb21Ub29sc1JlYWR5LnByb21pc2Uscn0pKCksYXdhaXQgZS5pbml0aWFsaXphdGlvblByb21pc2UpfXN0YXRpYyBnZXRHbG9iYWxEb21Ub29sc1N5bmMoKXtpZighZ2xvYmFsVGhpcy5kZWVzRG9tVG9vbHMpdGhyb3cgbmV3IEVycm9yKCJZb3UgdHJpZWQgdG8gYWNjZXNzIGRvbXRvb2xzIHN5bmNocm9ub3VzbHkgdG9vIGVhcmx5Iik7cmV0dXJuIGdsb2JhbFRoaXMuZGVlc0RvbVRvb2xzfWVsZW1lbnRzPXtoZWFkRWxlbWVudDpudWxsLGJvZHlFbGVtZW50Om51bGx9O3dlYnNldHVwPW5ldyBaeSh7bWV0YU9iamVjdDp7dGl0bGU6IiJ9fSk7c21hcnRzdGF0ZT1uZXcgVTQuU21hcnRzdGF0ZTtkb21Ub29sc1N0YXRlUGFydD10aGlzLnNtYXJ0c3RhdGUuZ2V0U3RhdGVQYXJ0KCJkb210b29scyIse3ZpcnR1YWxWaWV3cG9ydDoibmF0aXZlIixqd3Q6bnVsbH0pO3JvdXRlcj1uZXcgVjQuU21hcnRSb3V0ZXIoe2RlYnVnOiExfSk7Y29udmVuaWVuY2U9e3R5cGVkcmVxdWVzdDpsbyxzbWFydGRlbGF5OlF0LHNtYXJ0anNvbjp5cyxzbWFydHVybDpXNH07ZGVlc0NvbW1zPW5ldyBkeS5EZWVzQ29tbXM7c2Nyb2xsZXI9bmV3IHNzZSh0aGlzKTt0aGVtZU1hbmFnZXI9bmV3IGxzZSh0aGlzKTtrZXlib2FyZD1udWxsO2RvbVRvb2xzUmVhZHk9bHQuZGVmZXIoKTtkb21SZWFkeT1sdC5kZWZlcigpO2dsb2JhbFN0eWxlc1JlYWR5PWx0LmRlZmVyKCk7Y29uc3RydWN0b3IodCl7fXJ1bk9uY2VUcmFja2VyU3RyaW5nTWFwPW5ldyBReS5TdHJpbmdtYXA7cnVuT25jZVJlc3VsdE1hcD1uZXcgUXkuRmFzdE1hcDtydW5PbmNlRXJyb3JNYXA9bmV3IFF5LkZhc3RNYXA7YXN5bmMgcnVuT25jZSh0LHIpe2xldCBhPWAke3R9K3J1bm5pbmdDaGVja2A7aWYoIXRoaXMucnVuT25jZVRyYWNrZXJTdHJpbmdNYXAuY2hlY2tTdHJpbmcodCkpe3RoaXMucnVuT25jZVRyYWNrZXJTdHJpbmdNYXAuYWRkU3RyaW5nKHQpLHRoaXMucnVuT25jZVRyYWNrZXJTdHJpbmdNYXAuYWRkU3RyaW5nKGEpO3RyeXtsZXQgaT1hd2FpdCByKCk7dGhpcy5ydW5PbmNlUmVzdWx0TWFwLmFkZFRvTWFwKHQsaSl9Y2F0Y2goaSl7dGhpcy5ydW5PbmNlRXJyb3JNYXAuYWRkVG9NYXAodCxpKX1maW5hbGx5e3RoaXMucnVuT25jZVRyYWNrZXJTdHJpbmdNYXAucmVtb3ZlU3RyaW5nKGEpfX1yZXR1cm4gYXdhaXQgdGhpcy5ydW5PbmNlVHJhY2tlclN0cmluZ01hcC5yZWdpc3RlclVudGlsVHJ1ZShpPT4haS5pbmNsdWRlcyhhKSwoKT0+e2xldCBpPXRoaXMucnVuT25jZUVycm9yTWFwLmdldEJ5S2V5KHQpO2lmKGkpdGhyb3cgaTtyZXR1cm4gdGhpcy5ydW5PbmNlUmVzdWx0TWFwLmdldEJ5S2V5KHQpfSl9YXN5bmMgc2V0R2xvYmFsU3R5bGVzKHQpe2F3YWl0IHRoaXMuZG9tUmVhZHkucHJvbWlzZTtsZXQgcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpO3IudHlwZT0idGV4dC9jc3MiLHIuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUodCkpLHRoaXMuZWxlbWVudHMuaGVhZEVsZW1lbnQuYXBwZW5kQ2hpbGQocil9YXN5bmMgc2V0RXh0ZXJuYWxTY3JpcHQodCl7YXdhaXQgdGhpcy5kb21SZWFkeS5wcm9taXNlO2xldCByPWx0LmRlZmVyKCksYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTthLnNyYz10LGEuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsZnVuY3Rpb24oKXtyLnJlc29sdmUoKX0pLChkb2N1bWVudC5oZWFkfHxkb2N1bWVudC5ib2R5KS5hcHBlbmQoYSksYXdhaXQgci5wcm9taXNlfWFzeW5jIHNldEV4dGVybmFsQ3NzKHQpe2xldCByPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImxpbmsiKTtyLnJlbD0ic3R5bGVzaGVldCIsci5jcm9zc09yaWdpbj0iYW5vbnltb3VzIixyLmhyZWY9dCxkb2N1bWVudC5oZWFkLmFwcGVuZChyKX1hc3luYyBzZXRXZWJzaXRlSW5mbyh0KXthd2FpdCB0aGlzLndlYnNldHVwLnNldHVwKHQpLGF3YWl0IHRoaXMud2Vic2V0dXAucmVhZHlQcm9taXNlfX19KTt2YXIgZHNlLGpYdCxWWHQ9bCgoKT0+e2s5KCk7TG4oKTtkc2U9KCgpPT57bGV0IGU9bmF2aWdhdG9yLnVzZXJBZ2VudC5pbmRleE9mKCJNYWMgT1MgWCIpPT09LTE/bGVgYC5jc3NUZXh0OiIiO3JldHVybiBsZWAKICAgIC8qIHdpZHRoICovCiAgICA6Oi13ZWJraXQtc2Nyb2xsYmFyIHsKICAgICAgd2lkdGg6IDBweDsKICAgIH0KICAgIGJvZHkgewogICAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7CiAgICB9CiAgYC5jc3NUZXh0fSkoKSxqWHQ9bGVgCiAgLyoKICBAZm9udC1mYWNlIHsKICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnOwogICAgZm9udC1zdHlsZTogbm9ybWFsOwogICAgZm9udC13ZWlnaHQ6IDQwMDsKICAgIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9tYXRlcmlhbGljb25zL3Y0Mi9mbFVoUnE2dHpaY2xRRUotVmRnLUl1aWFEc05jSWhROHRRLndvZmYyKQogICAgICBmb3JtYXQoJ3dvZmYyJyk7CiAgfSAqLwoKICAvKiBnbG9iYWwgYm9keSBzdHlsZXMgKi8KICBib2R5IHsKICAgIG1hcmdpbjogMHB4OwogICAgZm9udC1mYW1pbHk6ICdHZWlzdCBTYW5zJywgJ0ludGVyJywgc2Fucy1zZXJpZjsKICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgfQoKICAvKiBzY3JvbGwgYmFyIHN0eWxlcyAqLwogICR7ZnIoZHNlKX0KYC5jc3NUZXh0fSk7dmFyIGthPXt9O3FlKGthLHtzZXR1cDooKT0+QTdhLHN0YXRpY1N0eWxlczooKT0+TDdhLHN0eWxlczooKT0+RDdhfSk7dmFyIEw3YSxEN2EsQTdhLFVYdD1sKCgpPT57TTkoKTtrOSgpO1ZYdCgpO0xuKCk7TDdhPWxlYAogICogewogICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjFzLCBjb2xvciAwLjFzOwogICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICB9CgogIDpob3N0IHsKICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICBmb250LWZhbWlseTogJ0dlaXN0IFNhbnMnLCAnSW50ZXInLCBzYW5zLXNlcmlmOwogIH0KCiAgJHtmcihkc2UpfQpgLEQ3YT1TYAogIDxzdHlsZT4KICAgICogewogICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMXMsIGNvbG9yIDAuMXM7CiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICB9CgogICAgOmhvc3QgewogICAgICBmb250LWZhbWlseTogJ0dlaXN0IFNhbnMnLCAnSW50ZXInLCBzYW5zLXNlcmlmOwogICAgfQoKICAgICR7ZHNlfQogIDwvc3R5bGU+CmAsQTdhPWFzeW5jKGUsdD17fSk9PntsZXQgcj1hd2FpdCBZMS5zZXR1cERvbVRvb2xzKHQpO3JldHVybiByLnJ1bk9uY2UoImVsZW1lbnRCYXNpY1NldHVwIixhc3luYygpPT57ci5zZXRHbG9iYWxTdHlsZXMoalh0KX0pLHJ9fSk7dmFyIHVzZT17fTtxZSh1c2Use2Nzc0dyaWRDb2x1bW5zOigpPT5FN2F9KTt2YXIgRTdhLFdYdD1sKCgpPT57RTdhPShlLHQpPT57bGV0IHI9IiI7Zm9yKGxldCBhPTA7YTxlO2ErKylyKz1gIGNhbGMoKDEwMCUvJHtlfSkgLSAoJHt0KihlLTEpfXB4LyR7ZX0pKWA7cmV0dXJuIHJ9fSk7dmFyIEp0PXt9O3FlKEp0LHtTd2VldFNjcm9sbDooKT0+bU1lLmRlZmF1bHQsc21hcnRkZWxheTooKT0+UXQsc21hcnRtYXJrZG93bjooKT0+eTksc21hcnRwcm9taXNlOigpPT5sdCxzbWFydHJvdXRlcjooKT0+VjQsc21hcnRyeDooKT0+TnIsc21hcnRzdGF0ZTooKT0+VTQsc21hcnRzdHJpbmc6KCk9PmYxLHNtYXJ0dXJsOigpPT5XNCx0eXBlZHJlcXVlc3Q6KCk9PmxvfSk7dmFyIG1NZSxHWHQ9bCgoKT0+e3M0KCk7a3dlKCk7b28oKTttTWU9QXIoZk1lKCksMSk7RndlKCk7QXdlKCk7TjIoKTtGNygpO1J3ZSgpO3N5KCl9KTt2YXIgJHQ9e307cWUoJHQse0RvbVRvb2xzOigpPT5ZMSxUeXBlZFJlcXVlc3Q6KCk9Pm55LGJyZWFrcG9pbnRzOigpPT4kYSxjc3M6KCk9PnVzZSxlbGVtZW50QmFzaWM6KCk9PmthLHBsdWdpbnM6KCk9Pkp0fSk7dmFyIGVyPWwoKCk9PntWTHQoKTtVWHQoKTtwTWUoKTtXWHQoKTtrOSgpO3N5KCk7aXNlKCk7R1h0KCl9KTt2YXIgZ01lLFo0LHhNZT1sKCgpPT57Z01lPUFyKHpyZSgpLDEpO04yKCk7TG4oKTtqTHQoKTtlcigpO1o0PXtjc3M6bGUsdW5zYWZlQ1NTOmZyLExpdEVsZW1lbnQ6WGwscHJvcGVydHk6an19KTt2YXIgZnNlLFpYdD1sKCgpPT57TG4oKTt4TWUoKTtlcigpO2ZzZT1jbGFzcyBle3N0YXRpYyBpbnN0YW5jZT1udWxsO3N0YXRpYyBnZXRTaW5nbGV0b24oKXtyZXR1cm4gZS5pbnN0YW5jZXx8KGUuaW5zdGFuY2U9bmV3IGUpLGUuaW5zdGFuY2V9ZG9tdG9vbHNQcm9taXNlPVkxLnNldHVwRG9tVG9vbHMoKTtnb0JyaWdodD0hMTtiZFZhclRyaXBsZXRTdG9yZT1bXTtjb25zdHJ1Y3Rvcigpe3RoaXMuZG9tdG9vbHNQcm9taXNlLnRoZW4oYXN5bmMgdD0+e3QudGhlbWVNYW5hZ2VyLnRoZW1lT2JzZXJ2YWJsZS5zdWJzY3JpYmUoYXN5bmMgcj0+e3RoaXMuZ29CcmlnaHQ9cixhd2FpdCB0LmRvbVJlYWR5LnByb21pc2U7Zm9yKGxldCBhIG9mIHRoaXMuYmRWYXJUcmlwbGV0U3RvcmUpZG9jdW1lbnQuYm9keS5zdHlsZS5zZXRQcm9wZXJ0eShhLmNzc1Zhck5hbWUsdGhpcy5nb0JyaWdodD9hLmJyaWdodFZhbHVlOmEuZGFya1ZhbHVlKX0pfSl9Z2V0IGRlZmF1bHRTdHlsZXMoKXtyZXR1cm4ga2Euc3RhdGljU3R5bGVzfWdldENvbnRhaW5lck5hbWVGcm9tQ2xhc3ModCl7cmV0dXJuIHQuaXN8fHQubmFtZS5yZXBsYWNlKC8oW2Etel0pKFtBLVpdKS9nLCIkMS0kMiIpLnRvTG93ZXJDYXNlKCl9Y3NzRm9yRGVza3RvcCh0LHIpe3JldHVybiByP2ZyKCRhLmNzc0ZvckNvbnRhaW5lcih0LGAobWluLXdpZHRoOiAkeyRhLmRlc2t0b3B9cHgpYCx0aGlzLmdldENvbnRhaW5lck5hbWVGcm9tQ2xhc3MocikpKTpmcigkYS5jc3NGb3JEZXNrdG9wKHQpKX1jc3NGb3JOb3RlYm9vayh0LHIpe3JldHVybiByP2ZyKCRhLmNzc0ZvckNvbnRhaW5lcih0LGAobWF4LXdpZHRoOiAkeyRhLm5vdGVib29rfXB4KWAsdGhpcy5nZXRDb250YWluZXJOYW1lRnJvbUNsYXNzKHIpKSk6ZnIoJGEuY3NzRm9yTm90ZWJvb2sodCkpfWNzc0ZvclRhYmxldCh0LHIpe3JldHVybiByP2ZyKCRhLmNzc0ZvckNvbnRhaW5lcih0LGAobWF4LXdpZHRoOiAkeyRhLnRhYmxldH1weClgLHRoaXMuZ2V0Q29udGFpbmVyTmFtZUZyb21DbGFzcyhyKSkpOmZyKCRhLmNzc0ZvclRhYmxldCh0KSl9Y3NzRm9yUGhhYmxldCh0LHIpe3JldHVybiByP2ZyKCRhLmNzc0ZvckNvbnRhaW5lcih0LGAobWF4LXdpZHRoOiAkeyRhLnBoYWJsZXR9cHgpYCx0aGlzLmdldENvbnRhaW5lck5hbWVGcm9tQ2xhc3MocikpKTpmcigkYS5jc3NGb3JQaGFibGV0KHQpKX1jc3NGb3JQaG9uZSh0LHIpe3JldHVybiByP2ZyKCRhLmNzc0ZvckNvbnRhaW5lcih0LGAobWF4LXdpZHRoOiAkeyRhLnBob25lfXB4KWAsdGhpcy5nZXRDb250YWluZXJOYW1lRnJvbUNsYXNzKHIpKSk6ZnIoJGEuY3NzRm9yUGhvbmUodCkpfWNzc0ZvckNvbnN0cmFpbnQodCl7cmV0dXJuIHI9PmZyKCRhLmNzc0ZvckNvbnN0cmFpbnQodCkocikpfWJkVGhlbWUodCxyKXtsZXQgYSxpO1kxLmdldEdsb2JhbERvbVRvb2xzU3luYygpP2k9WTEuZ2V0R2xvYmFsRG9tVG9vbHNTeW5jKCkudGhlbWVNYW5hZ2VyLmdvQnJpZ2h0Qm9vbGVhbj90OnI6aT1yO2xldCBvPXRoaXMuYmRWYXJUcmlwbGV0U3RvcmUuZmluZChuPT5uLmRhcmtWYWx1ZT09PXImJm4uYnJpZ2h0VmFsdWU9PT10KTtpZihvKWE9by5jc3NWYXJOYW1lO2Vsc2V7bGV0IG49e2Nzc1Zhck5hbWU6YC0tJHtnTWUudW5pKCl9YCxicmlnaHRWYWx1ZTp0LGRhcmtWYWx1ZTpyfTt0aGlzLmJkVmFyVHJpcGxldFN0b3JlLnB1c2gobiksdGhpcy5kb210b29sc1Byb21pc2UudGhlbihhc3luYyBzPT57YXdhaXQgcy5kb21SZWFkeS5wcm9taXNlLGRvY3VtZW50LmJvZHkuc3R5bGUuc2V0UHJvcGVydHkobi5jc3NWYXJOYW1lLGkpfSksYT1uLmNzc1Zhck5hbWV9cmV0dXJuIFo0LnVuc2FmZUNTUyhgdmFyKCR7YX0sICR7aX0pYCl9Y3NzR3JpZENvbHVtbnM9KHQscik9PntsZXQgYT0iIjtmb3IobGV0IGk9MDtpPHQ7aSsrKWErPWAgY2FsYygoMTAwJS8ke3R9KSAtICgke3IqKHQtMSl9cHgvJHt0fSkpYDtyZXR1cm4gWjQudW5zYWZlQ1NTKGEpfX19KTt2YXIgYk1lLCQ3YSxRWHQsUDdhLFhYdCxwc2UsWDQsSTdhLE43YSxLWHQ9bCgoKT0+e2hzKCk7Yk1lPVN5bWJvbC5mb3IoIiIpLCQ3YT1lPT57aWYoZT8ucj09PWJNZSlyZXR1cm4gZT8uXyRsaXRTdGF0aWMkfSxRWHQ9ZT0+KHtfJGxpdFN0YXRpYyQ6ZSxyOmJNZX0pLFA3YT0oZSwuLi50KT0+KHtfJGxpdFN0YXRpYyQ6dC5yZWR1Y2UoKHIsYSxpKT0+cisobz0+e2lmKG8uXyRsaXRTdGF0aWMkIT09dm9pZCAwKXJldHVybiBvLl8kbGl0U3RhdGljJDt0aHJvdyBFcnJvcihgVmFsdWUgcGFzc2VkIHRvICdsaXRlcmFsJyBmdW5jdGlvbiBtdXN0IGJlIGEgJ2xpdGVyYWwnIHJlc3VsdDogJHtvfS4gVXNlICd1bnNhZmVTdGF0aWMnIHRvIHBhc3Mgbm9uLWxpdGVyYWwgdmFsdWVzLCBidXQKICAgICAgICAgICAgdGFrZSBjYXJlIHRvIGVuc3VyZSBwYWdlIHNlY3VyaXR5LmApfSkoYSkrZVtpKzFdLGVbMF0pLHI6Yk1lfSksWFh0PW5ldyBNYXAscHNlPWU9Pih0LC4uLnIpPT57bGV0IGE9ci5sZW5ndGgsaSxvLG49W10scz1bXSxjLGQ9MCxmPSExO2Zvcig7ZDxhOyl7Zm9yKGM9dFtkXTtkPGEmJihvPXJbZF0sKGk9JDdhKG8pKSE9PXZvaWQgMCk7KWMrPWkrdFsrK2RdLGY9ITA7ZCE9PWEmJnMucHVzaChvKSxuLnB1c2goYyksZCsrfWlmKGQ9PT1hJiZuLnB1c2godFthXSksZil7bGV0IHU9bi5qb2luKCIkJGxpdCQkIik7KHQ9WFh0LmdldCh1KSk9PT12b2lkIDAmJihuLnJhdz1uLFhYdC5zZXQodSx0PW4pKSxyPXN9cmV0dXJuIGUodCwuLi5yKX0sWDQ9cHNlKFMpLEk3YT1wc2UoeGhlKSxON2E9cHNlKGJoZSl9KTt2YXIgSlh0PWwoKCk9PntLWHQoKX0pO3ZhciBzbCx4aSxSbix5Yz1sKCgpPT57c2w9e0FUVFJJQlVURToxLENISUxEOjIsUFJPUEVSVFk6MyxCT09MRUFOX0FUVFJJQlVURTo0LEVWRU5UOjUsRUxFTUVOVDo2fSx4aT1lPT4oLi4udCk9Pih7XyRsaXREaXJlY3RpdmUkOmUsdmFsdWVzOnR9KSxSbj1jbGFzc3tjb25zdHJ1Y3Rvcih0KXt9Z2V0IF8kQVUoKXtyZXR1cm4gdGhpcy5fJEFNLl8kQVV9XyRBVCh0LHIsYSl7dGhpcy5fJEN0PXQsdGhpcy5fJEFNPXIsdGhpcy5fJENpPWF9XyRBUyh0LHIpe3JldHVybiB0aGlzLnVwZGF0ZSh0LHIpfXVwZGF0ZSh0LHIpe3JldHVybiB0aGlzLnJlbmRlciguLi5yKX19fSk7dmFyIFM5LGhzZSxlUXQ9bCgoKT0+e2hzKCk7eWMoKTtTOT1jbGFzcyBleHRlbmRzIFJue2NvbnN0cnVjdG9yKHQpe2lmKHN1cGVyKHQpLHRoaXMuaXQ9QWEsdC50eXBlIT09c2wuQ0hJTEQpdGhyb3cgRXJyb3IodGhpcy5jb25zdHJ1Y3Rvci5kaXJlY3RpdmVOYW1lKyIoKSBjYW4gb25seSBiZSB1c2VkIGluIGNoaWxkIGJpbmRpbmdzIil9cmVuZGVyKHQpe2lmKHQ9PT1BYXx8dD09bnVsbClyZXR1cm4gdGhpcy5fdD12b2lkIDAsdGhpcy5pdD10O2lmKHQ9PT15YSlyZXR1cm4gdDtpZih0eXBlb2YgdCE9InN0cmluZyIpdGhyb3cgRXJyb3IodGhpcy5jb25zdHJ1Y3Rvci5kaXJlY3RpdmVOYW1lKyIoKSBjYWxsZWQgd2l0aCBhIG5vbi1zdHJpbmcgdmFsdWUiKTtpZih0PT09dGhpcy5pdClyZXR1cm4gdGhpcy5fdDt0aGlzLml0PXQ7bGV0IHI9W3RdO3JldHVybiByLnJhdz1yLHRoaXMuX3Q9e18kbGl0VHlwZSQ6dGhpcy5jb25zdHJ1Y3Rvci5yZXN1bHRUeXBlLHN0cmluZ3M6cix2YWx1ZXM6W119fX07UzkuZGlyZWN0aXZlTmFtZT0idW5zYWZlSFRNTCIsUzkucmVzdWx0VHlwZT0xO2hzZT14aShTOSl9KTt2YXIgdFF0PWwoKCk9PntlUXQoKX0pO3ZhciB2TWUseU1lPWwoKCk9Pnt2TWU9ZT0+KHQscik9PntyIT09dm9pZCAwP3IuYWRkSW5pdGlhbGl6ZXIoKCk9PntjdXN0b21FbGVtZW50cy5kZWZpbmUoZSx0KX0pOmN1c3RvbUVsZW1lbnRzLmRlZmluZShlLHQpfX0pO3ZhciByUXQ9bCgoKT0+e3lNZSgpfSk7ZnVuY3Rpb24gemUoZSl7cmV0dXJuKHQscik9PntpZih0LmlzPWUsdC5uYW1lKXtsZXQgYT1GN2EodC5uYW1lKTthIT09ZSYmY29uc29sZS53YXJuKGBbZGVlcy1lbGVtZW50XSBDbGFzcyAiJHt0Lm5hbWV9IiBrZWJhYi1jYXNlcyB0byAiJHthfSIgYnV0IHRhZyBpcyAiJHtlfSIuIENvbnRhaW5lciBxdWVyaWVzIHVzZSAuaXMgKCIke2V9IikuYCl9cmV0dXJuIHZNZShlKSh0LHIpfX12YXIgRjdhLGFRdD1sKCgpPT57clF0KCk7RjdhPWU9PmUucmVwbGFjZSgvKFthLXpdKShbQS1aXSkvZywiJDEtJDIiKS50b0xvd2VyQ2FzZSgpfSk7ZnVuY3Rpb24gcmUoZSl7cmV0dXJuIGooey4uLmUsc3RhdGU6ITAsYXR0cmlidXRlOiExfSl9dmFyIGlRdD1sKCgpPT57dmFlKCk7fSk7ZnVuY3Rpb24gTzdhKGUpe3JldHVybih0LHIpPT57bGV0IGE9dHlwZW9mIHQ9PSJmdW5jdGlvbiI/dDp0W3JdO09iamVjdC5hc3NpZ24oYSxlKX19dmFyIG9RdD1sKCgpPT57fSk7dmFyIEJuLHo5PWwoKCk9PntCbj0oZSx0LHIpPT4oci5jb25maWd1cmFibGU9ITAsci5lbnVtZXJhYmxlPSEwLFJlZmxlY3QuZGVjb3JhdGUmJnR5cGVvZiB0IT0ib2JqZWN0IiYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsdCxyKSxyKX0pO2Z1bmN0aW9uIG5RdChlLHQpe3JldHVybihyLGEsaSk9PntsZXQgbz1uPT5uLnJlbmRlclJvb3Q/LnF1ZXJ5U2VsZWN0b3IoZSk/P251bGw7aWYodCl7bGV0e2dldDpuLHNldDpzfT10eXBlb2YgYT09Im9iamVjdCI/cjppPz8oKCk9PntsZXQgYz1TeW1ib2woKTtyZXR1cm57Z2V0KCl7cmV0dXJuIHRoaXNbY119LHNldChkKXt0aGlzW2NdPWR9fX0pKCk7cmV0dXJuIEJuKHIsYSx7Z2V0KCl7bGV0IGM9bi5jYWxsKHRoaXMpO3JldHVybiBjPT09dm9pZCAwJiYoYz1vKHRoaXMpLChjIT09bnVsbHx8dGhpcy5oYXNVcGRhdGVkKSYmcy5jYWxsKHRoaXMsYykpLGN9fSl9cmV0dXJuIEJuKHIsYSx7Z2V0KCl7cmV0dXJuIG8odGhpcyl9fSl9fXZhciBzUXQ9bCgoKT0+e3o5KCk7fSk7ZnVuY3Rpb24gbFF0KGUpe3JldHVybih0LHIpPT5Cbih0LHIse2dldCgpe3JldHVybih0aGlzLnJlbmRlclJvb3Q/PyhSN2E/Pz1kb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCkpKS5xdWVyeVNlbGVjdG9yQWxsKGUpfX0pfXZhciBSN2EsY1F0PWwoKCk9Pnt6OSgpO30pO2Z1bmN0aW9uIGRRdChlKXtyZXR1cm4odCxyKT0+Qm4odCxyLHthc3luYyBnZXQoKXtyZXR1cm4gYXdhaXQgdGhpcy51cGRhdGVDb21wbGV0ZSx0aGlzLnJlbmRlclJvb3Q/LnF1ZXJ5U2VsZWN0b3IoZSk/P251bGx9fSl9dmFyIHVRdD1sKCgpPT57ejkoKTt9KTtmdW5jdGlvbiBCN2EoZSl7cmV0dXJuKHQscik9PntsZXR7c2xvdDphLHNlbGVjdG9yOml9PWU/P3t9LG89InNsb3QiKyhhP2BbbmFtZT0ke2F9XWA6Ijpub3QoW25hbWVdKSIpO3JldHVybiBCbih0LHIse2dldCgpe2xldCBuPXRoaXMucmVuZGVyUm9vdD8ucXVlcnlTZWxlY3RvcihvKSxzPW4/LmFzc2lnbmVkRWxlbWVudHMoZSk/P1tdO3JldHVybiBpPT09dm9pZCAwP3M6cy5maWx0ZXIoYz0+Yy5tYXRjaGVzKGkpKX19KX19dmFyIGZRdD1sKCgpPT57ejkoKTt9KTtmdW5jdGlvbiBIN2EoZSl7cmV0dXJuKHQscik9PntsZXR7c2xvdDphfT1lPz97fSxpPSJzbG90IisoYT9gW25hbWU9JHthfV1gOiI6bm90KFtuYW1lXSkiKTtyZXR1cm4gQm4odCxyLHtnZXQoKXtyZXR1cm4gdGhpcy5yZW5kZXJSb290Py5xdWVyeVNlbGVjdG9yKGkpPy5hc3NpZ25lZE5vZGVzKGUpPz9bXX19KX19dmFyIHBRdD1sKCgpPT57ejkoKTt9KTt2YXIgaFF0PWwoKCk9Pnt5TWUoKTt2YWUoKTtpUXQoKTtvUXQoKTtzUXQoKTtjUXQoKTt1UXQoKTtmUXQoKTtwUXQoKX0pO3ZhciBtUXQsbXNlLERlLGdRdD1sKCgpPT57eE1lKCk7TG4oKTttUXQ9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxtc2U9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LERlPSgoKT0+e2xldCBlPVo0LkxpdEVsZW1lbnQsdCxyPVtdLGE9W10saSxvPVtdLG49W107cmV0dXJuIGNsYXNzIGV4dGVuZHMgZXtzdGF0aWN7bGV0IGM9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoZVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7dD1bWjQucHJvcGVydHkoe3R5cGU6Qm9vbGVhbn0pXSxpPVtaNC5wcm9wZXJ0eSgpXSxtUXQodGhpcyxudWxsLHQse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJnb0JyaWdodCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ZD0+ImdvQnJpZ2h0ImluIGQsZ2V0OmQ9PmQuZ29CcmlnaHQsc2V0OihkLGYpPT57ZC5nb0JyaWdodD1mfX0sbWV0YWRhdGE6Y30scixhKSxtUXQodGhpcyxudWxsLGkse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJkb210b29scyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ZD0+ImRvbXRvb2xzImluIGQsZ2V0OmQ9PmQuZG9tdG9vbHMsc2V0OihkLGYpPT57ZC5kb210b29scz1mfX0sbWV0YWRhdGE6Y30sbyxuKSxjJiZPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcyxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOmN9KX1zdGF0aWMgZ2V0Q29udGFpbmVyTmFtZSgpe3JldHVybiB0aGlzLmlzfHx0aGlzLm5hbWUucmVwbGFjZSgvKFthLXpdKShbQS1aXSkvZywiJDEtJDIiKS50b0xvd2VyQ2FzZSgpfXN0YXRpYyBjc3NGb3JDb25zdHJhaW50KGMpe3JldHVybiBkPT4kdC5icmVha3BvaW50cy5jc3NGb3JDb25zdHJhaW50Q29udGFpbmVyKGMsdGhpcy5nZXRDb250YWluZXJOYW1lKCkpKGQpfSNlPW1zZSh0aGlzLHIsITEpO2dldCBnb0JyaWdodCgpe3JldHVybiB0aGlzLiNlfXNldCBnb0JyaWdodChjKXt0aGlzLiNlPWN9ZG9tdG9vbHNQcm9taXNlPW1zZSh0aGlzLGEpOyN0PW1zZSh0aGlzLG8sdm9pZCAwKTtnZXQgZG9tdG9vbHMoKXtyZXR1cm4gdGhpcy4jdH1zZXQgZG9tdG9vbHMoYyl7dGhpcy4jdD1jfXJ4U3Vic2NyaXB0aW9ucz0obXNlKHRoaXMsbiksW10pO3RoZW1lU3Vic2NyaXB0aW9uO2VsZW1lbnREb21SZWFkeURlZmVycmVkPSR0LnBsdWdpbnMuc21hcnRwcm9taXNlLmRlZmVyKCk7ZWxlbWVudERvbVJlYWR5PXRoaXMuZWxlbWVudERvbVJlYWR5RGVmZXJyZWQucHJvbWlzZTtjb25zdHJ1Y3RvcihjPXt9KXtzdXBlcigpLHRoaXMuZG9tdG9vbHNQcm9taXNlPSR0LmVsZW1lbnRCYXNpYy5zZXR1cCh0aGlzLGMpLHRoaXMuZG9tdG9vbHNQcm9taXNlLnRoZW4oZD0+e3RoaXMuZG9tdG9vbHM9ZH0pfWFzeW5jIGNvbm5lY3RlZENhbGxiYWNrKCl7c3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTtsZXQgYz1hd2FpdCB0aGlzLmRvbXRvb2xzUHJvbWlzZTt0aGlzLnRoZW1lU3Vic2NyaXB0aW9uPWMudGhlbWVNYW5hZ2VyLnRoZW1lT2JzZXJ2YWJsZS5zdWJzY3JpYmUoZD0+e3RoaXMuZ29CcmlnaHQ9ZCx0aGlzLnRoZW1lQ2hhbmdlZCYmdGhpcy50aGVtZUNoYW5nZWQoZCl9KSx0aGlzLnJ4U3Vic2NyaXB0aW9ucy5wdXNoKHRoaXMudGhlbWVTdWJzY3JpcHRpb24pO2ZvcihsZXQgZCBvZiB0aGlzLnN0YXJ0dXBGdW5jdGlvbnMpYXdhaXQgZCgpO3RoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoImRlZXNFbGVtZW50Q29ubmVjdGVkIikpfWZpcnN0VXBkYXRlZChjKXtzdXBlci5maXJzdFVwZGF0ZWQoYyksdGhpcy5lbGVtZW50RG9tUmVhZHlEZWZlcnJlZC5yZXNvbHZlKCl9c3RhcnR1cEZ1bmN0aW9ucz1bXTtyZWdpc3RlclN0YXJ0dXBGdW5jdGlvbihjKXt0aGlzLnN0YXJ0dXBGdW5jdGlvbnMucHVzaChjKX1nYXJiYWdlRnVuY3Rpb25zPVtdO3JlZ2lzdGVyR2FyYmFnZUZ1bmN0aW9uKGMpe3RoaXMuZ2FyYmFnZUZ1bmN0aW9ucy5wdXNoKGMpfWFzeW5jIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCl7YXdhaXQgdGhpcy5kb210b29sc1Byb21pc2Usc3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKTtmb3IobGV0IGMgb2YgdGhpcy5yeFN1YnNjcmlwdGlvbnMpYy51bnN1YnNjcmliZSgpO2ZvcihsZXQgYyBvZiB0aGlzLmdhcmJhZ2VGdW5jdGlvbnMpYXdhaXQgYygpO3RoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoImRlZXNFbGVtZW50RGlzY29ubmVjdGVkIikpfX19KSgpfSk7ZnVuY3Rpb24gd01lKCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2xldCB0PWUuaXN8fGUubmFtZS5yZXBsYWNlKC8oW2Etel0pKFtBLVpdKS9nLCIkMS0kMiIpLnRvTG93ZXJDYXNlKCkscj1lLm5hbWU/cTdhKGUubmFtZSk6bnVsbDtpZihyJiZyIT09dCl7bGV0IG89cz0+cyYmcy5jc3NUZXh0JiZzLmNzc1RleHQuaW5jbHVkZXMoYEBjb250YWluZXIgJHtyfWApP2ZyKHMuY3NzVGV4dC5yZXBsYWNlQWxsKGBAY29udGFpbmVyICR7cn1gLGBAY29udGFpbmVyICR7dH1gKSk6cyxuPWUuc3R5bGVzO0FycmF5LmlzQXJyYXkobik/ZS5zdHlsZXM9bi5tYXAobyk6biYmKGUuc3R5bGVzPW8obikpfWxldCBhPSRhLmNvbnRhaW5lckNvbnRleHRTdHlsZXModCksaT1lLnN0eWxlcztyZXR1cm4gQXJyYXkuaXNBcnJheShpKT9lLnN0eWxlcz1bLi4uaSxhXTppP2Uuc3R5bGVzPVtpLGFdOmUuc3R5bGVzPVthXSxlfX12YXIgcTdhLHhRdD1sKCgpPT57TG4oKTtlcigpO3E3YT1lPT5lLnJlcGxhY2UoLyhbYS16XSkoW0EtWl0pL2csIiQxLSQyIikudG9Mb3dlckNhc2UoKX0pO3ZhciBqN2EsYlF0LE1NZSxWN2EsVTdhLFc3YSxHN2EsWTdhLGtNZSx2UXQsd2MsVHMsWjdhLEt5LFNNZSxKeSx6TWUsQzk9bCgoKT0+e2hzKCk7KHtJOmo3YX09dmhlKSxiUXQ9ZT0+ZSxNTWU9ZT0+ZT09PW51bGx8fHR5cGVvZiBlIT0ib2JqZWN0IiYmdHlwZW9mIGUhPSJmdW5jdGlvbiIsVjdhPXtIVE1MOjEsU1ZHOjIsTUFUSE1MOjN9LFU3YT0oZSx0KT0+dD09PXZvaWQgMD9lPy5fJGxpdFR5cGUkIT09dm9pZCAwOmU/Ll8kbGl0VHlwZSQ9PT10LFc3YT1lPT5lPy5fJGxpdFR5cGUkPy5oIT1udWxsLEc3YT1lPT5lPy5fJGxpdERpcmVjdGl2ZSQhPT12b2lkIDAsWTdhPWU9PmU/Ll8kbGl0RGlyZWN0aXZlJCxrTWU9ZT0+ZS5zdHJpbmdzPT09dm9pZCAwLHZRdD0oKT0+ZG9jdW1lbnQuY3JlYXRlQ29tbWVudCgiIiksd2M9KGUsdCxyKT0+e2xldCBhPWUuXyRBQS5wYXJlbnROb2RlLGk9dD09PXZvaWQgMD9lLl8kQUI6dC5fJEFBO2lmKHI9PT12b2lkIDApe2xldCBvPWEuaW5zZXJ0QmVmb3JlKHZRdCgpLGkpLG49YS5pbnNlcnRCZWZvcmUodlF0KCksaSk7cj1uZXcgajdhKG8sbixlLGUub3B0aW9ucyl9ZWxzZXtsZXQgbz1yLl8kQUIubmV4dFNpYmxpbmcsbj1yLl8kQU0scz1uIT09ZTtpZihzKXtsZXQgYztyLl8kQVE/LihlKSxyLl8kQU09ZSxyLl8kQVAhPT12b2lkIDAmJihjPWUuXyRBVSkhPT1uLl8kQVUmJnIuXyRBUChjKX1pZihvIT09aXx8cyl7bGV0IGM9ci5fJEFBO2Zvcig7YyE9PW87KXtsZXQgZD1iUXQoYykubmV4dFNpYmxpbmc7YlF0KGEpLmluc2VydEJlZm9yZShjLGkpLGM9ZH19fXJldHVybiByfSxUcz0oZSx0LHI9ZSk9PihlLl8kQUkodCxyKSxlKSxaN2E9e30sS3k9KGUsdD1aN2EpPT5lLl8kQUg9dCxTTWU9ZT0+ZS5fJEFILEp5PWU9PntlLl8kQVIoKSxlLl8kQUEucmVtb3ZlKCl9LHpNZT1lPT57ZS5fJEFSKCl9fSk7ZnVuY3Rpb24gWDdhKGUpe3RoaXMuXyRBTiE9PXZvaWQgMD8oZ3NlKHRoaXMpLHRoaXMuXyRBTT1lLHlRdCh0aGlzKSk6dGhpcy5fJEFNPWV9ZnVuY3Rpb24gUTdhKGUsdD0hMSxyPTApe2xldCBhPXRoaXMuXyRBSCxpPXRoaXMuXyRBTjtpZihpIT09dm9pZCAwJiZpLnNpemUhPT0wKWlmKHQpaWYoQXJyYXkuaXNBcnJheShhKSlmb3IobGV0IG89cjtvPGEubGVuZ3RoO28rKylldyhhW29dLCExKSxnc2UoYVtvXSk7ZWxzZSBhIT1udWxsJiYoZXcoYSwhMSksZ3NlKGEpKTtlbHNlIGV3KHRoaXMsZSl9dmFyIGV3LGdzZSx5UXQsSzdhLG9uLHhzZT1sKCgpPT57QzkoKTt5YygpO3ljKCk7ZXc9KGUsdCk9PntsZXQgcj1lLl8kQU47aWYocj09PXZvaWQgMClyZXR1cm4hMTtmb3IobGV0IGEgb2YgcilhLl8kQU8/Lih0LCExKSxldyhhLHQpO3JldHVybiEwfSxnc2U9ZT0+e2xldCB0LHI7ZG97aWYoKHQ9ZS5fJEFNKT09PXZvaWQgMClicmVhaztyPXQuXyRBTixyLmRlbGV0ZShlKSxlPXR9d2hpbGUocj8uc2l6ZT09PTApfSx5UXQ9ZT0+e2ZvcihsZXQgdDt0PWUuXyRBTTtlPXQpe2xldCByPXQuXyRBTjtpZihyPT09dm9pZCAwKXQuXyRBTj1yPW5ldyBTZXQ7ZWxzZSBpZihyLmhhcyhlKSlicmVhaztyLmFkZChlKSxLN2EodCl9fTtLN2E9ZT0+e2UudHlwZT09c2wuQ0hJTEQmJihlLl8kQVA/Pz1RN2EsZS5fJEFRPz89WDdhKX0sb249Y2xhc3MgZXh0ZW5kcyBSbntjb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyksdGhpcy5fJEFOPXZvaWQgMH1fJEFUKHQscixhKXtzdXBlci5fJEFUKHQscixhKSx5UXQodGhpcyksdGhpcy5pc0Nvbm5lY3RlZD10Ll8kQVV9XyRBTyh0LHI9ITApe3QhPT10aGlzLmlzQ29ubmVjdGVkJiYodGhpcy5pc0Nvbm5lY3RlZD10LHQ/dGhpcy5yZWNvbm5lY3RlZD8uKCk6dGhpcy5kaXNjb25uZWN0ZWQ/LigpKSxyJiYoZXcodGhpcyx0KSxnc2UodGhpcykpfXNldFZhbHVlKHQpe2lmKGtNZSh0aGlzLl8kQ3QpKXRoaXMuXyRDdC5fJEFJKHQsdGhpcyk7ZWxzZXtsZXQgcj1bLi4udGhpcy5fJEN0Ll8kQUhdO3JbdGhpcy5fJENpXT10LHRoaXMuXyRDdC5fJEFJKHIsdGhpcywwKX19ZGlzY29ubmVjdGVkKCl7fXJlY29ubmVjdGVkKCl7fX19KTt2YXIgYnNlPWwoKCk9Pnt4c2UoKX0pO3ZhciBDTWUsd1F0LEo3YSxNUXQ9bCgoKT0+e0xuKCk7YnNlKCk7Q01lPWNsYXNzIGV4dGVuZHMgb257cHJvbWlzZTtoYXNQcm9taXNlU2V0dGxlZD0hMTtyZW5kZXIodCl7cmV0dXJuIHRoaXMucHJvbWlzZSE9PXQmJih0aGlzLnByb21pc2U9dCx0aGlzLmlzQ29ubmVjdGVkJiZ0aGlzLmhhbmRsZVByb21pc2UodCkpLHlhfWhhbmRsZVByb21pc2UodCl7dGhpcy5oYXNQcm9taXNlU2V0dGxlZD0hMSx0LnRoZW4ocj0+e3RoaXMucHJvbWlzZT09PXQmJiF0aGlzLmhhc1Byb21pc2VTZXR0bGVkJiYodGhpcy5zZXRWYWx1ZShyKSx0aGlzLmhhc1Byb21pc2VTZXR0bGVkPSEwKX0pLmNhdGNoKHI9Pnt0aGlzLnByb21pc2U9PT10JiYhdGhpcy5oYXNQcm9taXNlU2V0dGxlZCYmKHRoaXMuc2V0VmFsdWUociksdGhpcy5oYXNQcm9taXNlU2V0dGxlZD0hMCl9KX1kaXNjb25uZWN0ZWQoKXt0aGlzLmhhc1Byb21pc2VTZXR0bGVkPSEwfXJlY29ubmVjdGVkKCl7dGhpcy5oYXNQcm9taXNlU2V0dGxlZHx8dGhpcy5oYW5kbGVQcm9taXNlKHRoaXMucHJvbWlzZSl9fSx3UXQ9eGkoQ01lKSxKN2E9ZT0+d1F0KGUoKSl9KTt2YXIgX01lLGU5YSxrUXQ9bCgoKT0+e0xuKCk7YnNlKCk7TjIoKTtfTWU9Y2xhc3MgZXh0ZW5kcyBvbntvYnNlcnZhYmxlO3N1Yj1udWxsO3JlbmRlcih0KXtyZXR1cm4gdGhpcy5vYnNlcnZhYmxlIT09dCYmKHRoaXMuc3ViPy51bnN1YnNjcmliZSgpLHRoaXMub2JzZXJ2YWJsZT10LHRoaXMuaXNDb25uZWN0ZWQmJnRoaXMuc3Vic2NyaWJlKHQpKSx5YX1zdWJzY3JpYmUodCl7dGhpcy5zdWI9dC5zdWJzY3JpYmUocj0+e3RoaXMuc2V0VmFsdWUocil9KX1kaXNjb25uZWN0ZWQoKXt0aGlzLnN1Yj8udW5zdWJzY3JpYmUoKX1yZWNvbm5lY3RlZCgpe3RoaXMuc3Vic2NyaWJlKHRoaXMub2JzZXJ2YWJsZSl9fSxlOWE9eGkoX01lKX0pO3ZhciBUTWUsU1F0LHpRdD1sKCgpPT57TG4oKTtic2UoKTtOMigpO1RNZT1jbGFzcyBleHRlbmRzIG9ue29ic2VydmFibGU7dGVtcGxhdGVGbjtzdWI9bnVsbDtyZW5kZXIodCxyKXtyZXR1cm4odGhpcy5vYnNlcnZhYmxlIT09dHx8dGhpcy50ZW1wbGF0ZUZuIT09cikmJih0aGlzLnN1Yj8udW5zdWJzY3JpYmUoKSx0aGlzLm9ic2VydmFibGU9dCx0aGlzLnRlbXBsYXRlRm49cix0aGlzLmlzQ29ubmVjdGVkJiZ0aGlzLnN0YXJ0U3Vic2NyaXB0aW9uKCkpLHlhfXN0YXJ0U3Vic2NyaXB0aW9uKCl7dGhpcy5zdWI9dGhpcy5vYnNlcnZhYmxlLnN1YnNjcmliZSh0PT57bGV0IHI9dGhpcy50ZW1wbGF0ZUZuKHQpO3RoaXMuc2V0VmFsdWUocil9KX1kaXNjb25uZWN0ZWQoKXt0aGlzLnN1Yj8udW5zdWJzY3JpYmUoKX1yZWNvbm5lY3RlZCgpe3RoaXMuc3RhcnRTdWJzY3JpcHRpb24oKX19LFNRdD14aShUTWUpfSk7dmFyIExNZSxhdSxpdSxETWU9bCgoKT0+e0xNZT1hc3luYyhlLHQpPT57Zm9yIGF3YWl0KGxldCByIG9mIGUpaWYoYXdhaXQgdChyKT09PSExKXJldHVybn0sYXU9Y2xhc3N7Y29uc3RydWN0b3IodCl7dGhpcy5HPXR9ZGlzY29ubmVjdCgpe3RoaXMuRz12b2lkIDB9cmVjb25uZWN0KHQpe3RoaXMuRz10fWRlcmVmKCl7cmV0dXJuIHRoaXMuR319LGl1PWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5ZPXZvaWQgMCx0aGlzLlo9dm9pZCAwfWdldCgpe3JldHVybiB0aGlzLll9cGF1c2UoKXt0aGlzLlk/Pz1uZXcgUHJvbWlzZSh0PT50aGlzLlo9dCl9cmVzdW1lKCl7dGhpcy5aPy4oKSx0aGlzLlk9dGhpcy5aPXZvaWQgMH19fSk7dmFyIENRdCxfUXQsdnNlLEFNZSxUUXQ9bCgoKT0+e2hzKCk7QzkoKTt4c2UoKTtETWUoKTt5YygpO0NRdD1lPT4hTU1lKGUpJiZ0eXBlb2YgZS50aGVuPT0iZnVuY3Rpb24iLF9RdD0xMDczNzQxODIzLHZzZT1jbGFzcyBleHRlbmRzIG9ue2NvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKSx0aGlzLl8kQ3d0PV9RdCx0aGlzLl8kQ2J0PVtdLHRoaXMuXyRDSz1uZXcgYXUodGhpcyksdGhpcy5fJENYPW5ldyBpdX1yZW5kZXIoLi4udCl7cmV0dXJuIHQuZmluZChyPT4hQ1F0KHIpKT8/eWF9dXBkYXRlKHQscil7bGV0IGE9dGhpcy5fJENidCxpPWEubGVuZ3RoO3RoaXMuXyRDYnQ9cjtsZXQgbz10aGlzLl8kQ0ssbj10aGlzLl8kQ1g7dGhpcy5pc0Nvbm5lY3RlZHx8dGhpcy5kaXNjb25uZWN0ZWQoKTtmb3IobGV0IHM9MDtzPHIubGVuZ3RoJiYhKHM+dGhpcy5fJEN3dCk7cysrKXtsZXQgYz1yW3NdO2lmKCFDUXQoYykpcmV0dXJuIHRoaXMuXyRDd3Q9cyxjO3M8aSYmYz09PWFbc118fCh0aGlzLl8kQ3d0PV9RdCxpPTAsUHJvbWlzZS5yZXNvbHZlKGMpLnRoZW4oYXN5bmMgZD0+e2Zvcig7bi5nZXQoKTspYXdhaXQgbi5nZXQoKTtsZXQgZj1vLmRlcmVmKCk7aWYoZiE9PXZvaWQgMCl7bGV0IHU9Zi5fJENidC5pbmRleE9mKGMpO3U+LTEmJnU8Zi5fJEN3dCYmKGYuXyRDd3Q9dSxmLnNldFZhbHVlKGQpKX19KSl9cmV0dXJuIHlhfWRpc2Nvbm5lY3RlZCgpe3RoaXMuXyRDSy5kaXNjb25uZWN0KCksdGhpcy5fJENYLnBhdXNlKCl9cmVjb25uZWN0ZWQoKXt0aGlzLl8kQ0sucmVjb25uZWN0KHRoaXMpLHRoaXMuXyRDWC5yZXN1bWUoKX19LEFNZT14aSh2c2UpfSk7dmFyIExRdD1sKCgpPT57VFF0KCl9KTt2YXIgXzksdDlhLERRdD1sKCgpPT57aHMoKTt4c2UoKTtETWUoKTt5YygpO185PWNsYXNzIGV4dGVuZHMgb257Y29uc3RydWN0b3IoKXtzdXBlciguLi5hcmd1bWVudHMpLHRoaXMuXyRDSz1uZXcgYXUodGhpcyksdGhpcy5fJENYPW5ldyBpdX1yZW5kZXIodCxyKXtyZXR1cm4geWF9dXBkYXRlKHQsW3IsYV0pe2lmKHRoaXMuaXNDb25uZWN0ZWR8fHRoaXMuZGlzY29ubmVjdGVkKCkscj09PXRoaXMuXyRDSilyZXR1cm4geWE7dGhpcy5fJENKPXI7bGV0IGk9MCx7XyRDSzpvLF8kQ1g6bn09dGhpcztyZXR1cm4gTE1lKHIsYXN5bmMgcz0+e2Zvcig7bi5nZXQoKTspYXdhaXQgbi5nZXQoKTtsZXQgYz1vLmRlcmVmKCk7aWYoYyE9PXZvaWQgMCl7aWYoYy5fJENKIT09cilyZXR1cm4hMTthIT09dm9pZCAwJiYocz1hKHMsaSkpLGMuY29tbWl0VmFsdWUocyxpKSxpKyt9cmV0dXJuITB9KSx5YX1jb21taXRWYWx1ZSh0LHIpe3RoaXMuc2V0VmFsdWUodCl9ZGlzY29ubmVjdGVkKCl7dGhpcy5fJENLLmRpc2Nvbm5lY3QoKSx0aGlzLl8kQ1gucGF1c2UoKX1yZWNvbm5lY3RlZCgpe3RoaXMuXyRDSy5yZWNvbm5lY3QodGhpcyksdGhpcy5fJENYLnJlc3VtZSgpfX0sdDlhPXhpKF85KX0pO3ZhciBFTWUsQVF0PWwoKCk9Pnt5YygpO0RRdCgpO0M5KCk7RU1lPXhpKGNsYXNzIGV4dGVuZHMgXzl7Y29uc3RydWN0b3IoZSl7aWYoc3VwZXIoZSksZS50eXBlIT09c2wuQ0hJTEQpdGhyb3cgRXJyb3IoImFzeW5jQXBwZW5kIGNhbiBvbmx5IGJlIHVzZWQgaW4gY2hpbGQgZXhwcmVzc2lvbnMiKX11cGRhdGUoZSx0KXtyZXR1cm4gdGhpcy5fJEN0dD1lLHN1cGVyLnVwZGF0ZShlLHQpfWNvbW1pdFZhbHVlKGUsdCl7dD09PTAmJnpNZSh0aGlzLl8kQ3R0KTtsZXQgcj13Yyh0aGlzLl8kQ3R0KTtUcyhyLGUpfX0pfSk7dmFyIEVRdD1sKCgpPT57QVF0KCl9KTt2YXIgJE1lLCRRdD1sKCgpPT57aHMoKTt5YygpO0M5KCk7JE1lPXhpKGNsYXNzIGV4dGVuZHMgUm57Y29uc3RydWN0b3IoKXtzdXBlciguLi5hcmd1bWVudHMpLHRoaXMua2V5PUFhfXJlbmRlcihlLHQpe3JldHVybiB0aGlzLmtleT1lLHR9dXBkYXRlKGUsW3Qscl0pe3JldHVybiB0IT09dGhpcy5rZXkmJihLeShlKSx0aGlzLmtleT10KSxyfX0pfSk7dmFyIFBRdD1sKCgpPT57JFF0KCl9KTt2YXIgSVF0LFBNZSxOUXQ9bCgoKT0+e2hzKCk7eWMoKTtDOSgpO0lRdD0oZSx0LHIpPT57bGV0IGE9bmV3IE1hcDtmb3IobGV0IGk9dDtpPD1yO2krKylhLnNldChlW2ldLGkpO3JldHVybiBhfSxQTWU9eGkoY2xhc3MgZXh0ZW5kcyBSbntjb25zdHJ1Y3RvcihlKXtpZihzdXBlcihlKSxlLnR5cGUhPT1zbC5DSElMRCl0aHJvdyBFcnJvcigicmVwZWF0KCkgY2FuIG9ubHkgYmUgdXNlZCBpbiB0ZXh0IGV4cHJlc3Npb25zIil9ZHQoZSx0LHIpe2xldCBhO3I9PT12b2lkIDA/cj10OnQhPT12b2lkIDAmJihhPXQpO2xldCBpPVtdLG89W10sbj0wO2ZvcihsZXQgcyBvZiBlKWlbbl09YT9hKHMsbik6bixvW25dPXIocyxuKSxuKys7cmV0dXJue3ZhbHVlczpvLGtleXM6aX19cmVuZGVyKGUsdCxyKXtyZXR1cm4gdGhpcy5kdChlLHQscikudmFsdWVzfXVwZGF0ZShlLFt0LHIsYV0pe2xldCBpPVNNZShlKSx7dmFsdWVzOm8sa2V5czpufT10aGlzLmR0KHQscixhKTtpZighQXJyYXkuaXNBcnJheShpKSlyZXR1cm4gdGhpcy51dD1uLG87bGV0IHM9dGhpcy51dD8/PVtdLGM9W10sZCxmLHU9MCxwPWkubGVuZ3RoLTEsaD0wLGI9by5sZW5ndGgtMTtmb3IoO3U8PXAmJmg8PWI7KWlmKGlbdV09PT1udWxsKXUrKztlbHNlIGlmKGlbcF09PT1udWxsKXAtLTtlbHNlIGlmKHNbdV09PT1uW2hdKWNbaF09VHMoaVt1XSxvW2hdKSx1KyssaCsrO2Vsc2UgaWYoc1twXT09PW5bYl0pY1tiXT1UcyhpW3BdLG9bYl0pLHAtLSxiLS07ZWxzZSBpZihzW3VdPT09bltiXSljW2JdPVRzKGlbdV0sb1tiXSksd2MoZSxjW2IrMV0saVt1XSksdSsrLGItLTtlbHNlIGlmKHNbcF09PT1uW2hdKWNbaF09VHMoaVtwXSxvW2hdKSx3YyhlLGlbdV0saVtwXSkscC0tLGgrKztlbHNlIGlmKGQ9PT12b2lkIDAmJihkPUlRdChuLGgsYiksZj1JUXQocyx1LHApKSxkLmhhcyhzW3VdKSlpZihkLmhhcyhzW3BdKSl7bGV0IHg9Zi5nZXQobltoXSksZz14IT09dm9pZCAwP2lbeF06bnVsbDtpZihnPT09bnVsbCl7bGV0IHY9d2MoZSxpW3VdKTtUcyh2LG9baF0pLGNbaF09dn1lbHNlIGNbaF09VHMoZyxvW2hdKSx3YyhlLGlbdV0sZyksaVt4XT1udWxsO2grK31lbHNlIEp5KGlbcF0pLHAtLTtlbHNlIEp5KGlbdV0pLHUrKztmb3IoO2g8PWI7KXtsZXQgeD13YyhlLGNbYisxXSk7VHMoeCxvW2hdKSxjW2grK109eH1mb3IoO3U8PXA7KXtsZXQgeD1pW3UrK107eCE9PW51bGwmJkp5KHgpfXJldHVybiB0aGlzLnV0PW4sS3koZSxjKSx5YX19KX0pO3ZhciBGUXQ9bCgoKT0+e05RdCgpfSk7dmFyIEhuPXt9O3FlKEhuLHthc3luY0FwcGVuZDooKT0+RU1lLGtleWVkOigpPT4kTWUscmVwZWF0OigpPT5QTWUscmVzb2x2ZTooKT0+d1F0LHJlc29sdmVFeGVjOigpPT5KN2Esc3Vic2NyaWJlOigpPT5lOWEsc3Vic2NyaWJlV2l0aFRlbXBsYXRlOigpPT5TUXQsdW50aWw6KCk9PkFNZX0pO3ZhciBPUXQ9bCgoKT0+e01RdCgpO2tRdCgpO3pRdCgpO0xRdCgpO0VRdCgpO1BRdCgpO0ZRdCgpfSk7dmFyIG0sU2U9bCgoKT0+e1pYdCgpO0xuKCk7Slh0KCk7dFF0KCk7YVF0KCk7aFF0KCk7ZXIoKTtnUXQoKTt4UXQoKTtPUXQoKTttPWZzZS5nZXRTaW5nbGV0b24oKX0pO3ZhciBRNCxQZSxvdD1sKCgpPT57U2UoKTtRND17Y29sb3JzOntsaWdodDp7YmdQcmltYXJ5OiIjZmZmZmZmIixiZ1NlY29uZGFyeToiI2ZhZmFmYSIsYmdUZXJ0aWFyeToiI2Y0ZjRmNSIsdGV4dFByaW1hcnk6IiMwOTA5MGIiLHRleHRTZWNvbmRhcnk6IiMzNzQxNTEiLHRleHRNdXRlZDoiIzcxNzE3YSIsYm9yZGVyRGVmYXVsdDoiI2U1ZTdlYiIsYm9yZGVyU3VidGxlOiIjZjRmNGY1Iixib3JkZXJTdHJvbmc6IiNkMWQ1ZGIiLGFjY2VudFByaW1hcnk6IiMzYjgyZjYiLGFjY2VudFN1Y2Nlc3M6IiMyMmM1NWUiLGFjY2VudFdhcm5pbmc6IiNmNTllMGIiLGFjY2VudEVycm9yOiIjZWY0NDQ0In0sZGFyazp7YmdQcmltYXJ5OiIjMDkwOTBiIixiZ1NlY29uZGFyeToiIzBhMGEwYSIsYmdUZXJ0aWFyeToiIzE4MTgxYiIsdGV4dFByaW1hcnk6IiNmYWZhZmEiLHRleHRTZWNvbmRhcnk6IiNkNGQ0ZDgiLHRleHRNdXRlZDoiI2ExYTFhYSIsYm9yZGVyRGVmYXVsdDoiIzI3MjcyYSIsYm9yZGVyU3VidGxlOiIjMWExYTFhIixib3JkZXJTdHJvbmc6IiMzZjNmNDYiLGFjY2VudFByaW1hcnk6IiMzYjgyZjYiLGFjY2VudFN1Y2Nlc3M6IiMyMmM1NWUiLGFjY2VudFdhcm5pbmc6IiNmNTllMGIiLGFjY2VudEVycm9yOiIjZWY0NDQ0In19LHNwYWNpbmc6e3hzOiI0cHgiLHNtOiI4cHgiLG1kOiIxMnB4IixsZzoiMTZweCIseGw6IjI0cHgiLCIyeGwiOiIzMnB4IiwiM3hsIjoiNDhweCJ9LHJhZGl1czp7eHM6IjJweCIsc206IjRweCIsbWQ6IjZweCIsbGc6IjhweCIseGw6IjEycHgiLGZ1bGw6Ijk5OXB4In0sc2hhZG93czp7eHM6IjAgMXB4IDJweCAwIHJnYigwIDAgMCAvIDAuMDUpIixzbToiMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xKSIsbWQ6IjAgMnB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMTUpIixsZzoiMCA0cHggMTJweCByZ2JhKDAsIDAsIDAsIDAuMTUpIn0sdHJhbnNpdGlvbnM6e2Zhc3Q6IjAuMXMiLGRlZmF1bHQ6IjAuMTVzIixzbG93OiIwLjJzIixzbG93ZXI6IjAuM3MifSxjb250cm9sSGVpZ2h0czp7c206IjMycHgiLG1kOiIzNnB4IixsZzoiNDBweCIseGw6IjQ4cHgifX0sUGU9bGVgCiAgOmhvc3QgewogICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogICAgICogU3BhY2luZyBTY2FsZQogICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLwogICAgLS1kZWVzLXNwYWNpbmcteHM6IDRweDsKICAgIC0tZGVlcy1zcGFjaW5nLXNtOiA4cHg7CiAgICAtLWRlZXMtc3BhY2luZy1tZDogMTJweDsKICAgIC0tZGVlcy1zcGFjaW5nLWxnOiAxNnB4OwogICAgLS1kZWVzLXNwYWNpbmcteGw6IDI0cHg7CiAgICAtLWRlZXMtc3BhY2luZy0yeGw6IDMycHg7CiAgICAtLWRlZXMtc3BhY2luZy0zeGw6IDQ4cHg7CgogICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogICAgICogQm9yZGVyIFJhZGl1cyBTY2FsZQogICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLwogICAgLS1kZWVzLXJhZGl1cy14czogMnB4OwogICAgLS1kZWVzLXJhZGl1cy1zbTogNHB4OwogICAgLS1kZWVzLXJhZGl1cy1tZDogNnB4OwogICAgLS1kZWVzLXJhZGl1cy1sZzogOHB4OwogICAgLS1kZWVzLXJhZGl1cy14bDogMTJweDsKICAgIC0tZGVlcy1yYWRpdXMtZnVsbDogOTk5cHg7CgogICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogICAgICogU2hhZG93IEVsZXZhdGlvbiBTY2FsZQogICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLwogICAgLS1kZWVzLXNoYWRvdy14czogMCAxcHggMnB4IDAgcmdiKDAgMCAwIC8gMC4wNSk7CiAgICAtLWRlZXMtc2hhZG93LXNtOiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjEpOwogICAgLS1kZWVzLXNoYWRvdy1tZDogMCAycHggOHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7CiAgICAtLWRlZXMtc2hhZG93LWxnOiAwIDRweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7CgogICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogICAgICogVHJhbnNpdGlvbiBEdXJhdGlvbiBTY2FsZQogICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLwogICAgLS1kZWVzLXRyYW5zaXRpb24tZmFzdDogMC4xczsKICAgIC0tZGVlcy10cmFuc2l0aW9uLWRlZmF1bHQ6IDAuMTVzOwogICAgLS1kZWVzLXRyYW5zaXRpb24tc2xvdzogMC4yczsKICAgIC0tZGVlcy10cmFuc2l0aW9uLXNsb3dlcjogMC4zczsKCiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAgICAgKiBDb250cm9sIEhlaWdodCBTY2FsZQogICAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLwogICAgLS1kZWVzLWNvbnRyb2wtaGVpZ2h0LXNtOiAzMnB4OwogICAgLS1kZWVzLWNvbnRyb2wtaGVpZ2h0LW1kOiAzNnB4OwogICAgLS1kZWVzLWNvbnRyb2wtaGVpZ2h0LWxnOiA0MHB4OwogICAgLS1kZWVzLWNvbnRyb2wtaGVpZ2h0LXhsOiA0OHB4OwogIH0KYH0pO3ZhciBSUXQ9bCgoKT0+e30pO3ZhciBJTWU9bCgoKT0+e0xzKCk7THMoKX0pO3ZhciBCUXQ9bCgoKT0+e30pO3ZhciBIUXQ9bCgoKT0+e30pO3ZhciBxUXQ9bCgoKT0+e30pO3ZhciBqUXQ9bCgoKT0+e30pO3ZhciBOTWU9e307dmFyIEZNZT1sKCgpPT57QlF0KCk7SFF0KCk7cVF0KCk7alF0KCl9KTt2YXIgVlF0PWwoKCk9PntGTWUoKTt5c2UoKX0pO3ZhciBVUXQ9bCgoKT0+e0xzKCl9KTt2YXIgV1F0PWwoKCk9Pnt9KTt2YXIgR1F0PWwoKCk9PntMcygpfSk7dmFyIFlRdD1sKCgpPT57THMoKX0pO3ZhciBaUXQ9bCgoKT0+e30pO3ZhciBYUXQ9bCgoKT0+e30pO3ZhciBRUXQ9bCgoKT0+e30pO3ZhciBPTWU9e307dmFyIHdzZT1sKCgpPT57VVF0KCk7V1F0KCk7R1F0KCk7WVF0KCk7WlF0KCk7WFF0KCk7UVF0KCl9KTt2YXIgS1F0PWwoKCk9Pnt3c2UoKTtJTWUoKX0pO3ZhciBKUXQ9bCgoKT0+e3lzZSgpO3dzZSgpfSk7dmFyIGVLdD1sKCgpPT57fSk7dmFyIHRLdD1sKCgpPT57fSk7dmFyIFJNZT17fTt2YXIgeXNlPWwoKCk9PntSUXQoKTtJTWUoKTtWUXQoKTtLUXQoKTtKUXQoKTtlS3QoKTt0S3QoKX0pO3ZhciByS3Q9bCgoKT0+e30pO3ZhciBhS3Q9bCgoKT0+e30pO3ZhciBCTWU9e307dmFyIGlLdD1sKCgpPT57ckt0KCk7YUt0KCl9KTt2YXIgb0t0PWwoKCk9Pnt9KTt2YXIgbkt0PWwoKCk9Pnt9KTt2YXIgSE1lPXt9O3ZhciBzS3Q9bCgoKT0+e29LdCgpO25LdCgpfSk7dmFyIHFNZT17fTt2YXIgbEt0PWwoKCk9Pnt9KTt2YXIgak1lPWwoKCk9PntMcygpfSk7dmFyIGNLdD1sKCgpPT57THMoKX0pO3ZhciBkS3Q9bCgoKT0+e2pNZSgpfSk7dmFyIFZNZT17fTt2YXIgdUt0PWwoKCk9PntqTWUoKTtjS3QoKTtkS3QoKX0pO3ZhciBmS3Q9bCgoKT0+e30pO3ZhciBwS3Q9bCgoKT0+e30pO3ZhciBVTWU9e307dmFyIGhLdD1sKCgpPT57Zkt0KCk7cEt0KCl9KTt2YXIgV01lPWwoKCk9Pnt9KTt2YXIgR01lLG1LdD1sKCgpPT57V01lKCk7R01lPWNsYXNze319KTt2YXIgZ0t0PWwoKCk9Pnt9KTt2YXIgeEt0PWwoKCk9Pnt9KTt2YXIgYkt0PWwoKCk9Pnt9KTt2YXIgdkt0PWwoKCk9Pnt9KTt2YXIgeUt0PWwoKCk9Pnt9KTt2YXIgd0t0PWwoKCk9Pnt9KTt2YXIgTUt0PWwoKCk9Pnt9KTt2YXIga0t0PWwoKCk9Pnt9KTt2YXIgU0t0PWwoKCk9Pnt9KTt2YXIgekt0PWwoKCk9Pnt9KTt2YXIgTXNlPXt9O3FlKE1zZSx7SUNuYW1lRGVzY3JpcHRvcjooKT0+R01lfSk7dmFyIENLdD1sKCgpPT57V01lKCk7bUt0KCk7Z0t0KCk7eEt0KCk7Ykt0KCk7dkt0KCk7eUt0KCk7d0t0KCk7TUt0KCk7a0t0KCk7U0t0KCk7ekt0KCl9KTt2YXIgWU1lPWwoKCk9Pnt9KTt2YXIgX0t0PWwoKCk9PntZTWUoKX0pO3ZhciBaTWU9e307dmFyIFRLdD1sKCgpPT57X0t0KCk7WU1lKCl9KTt2YXIgWE1lPXt9O3ZhciBMS3Q9bCgoKT0+e30pO3ZhciBES3Q9bCgoKT0+e30pO3ZhciBBS3Q9bCgoKT0+e30pO3ZhciBFS3Q9bCgoKT0+e30pO3ZhciBRTWU9e307dmFyICRLdD1sKCgpPT57REt0KCk7QUt0KCk7RUt0KCl9KTt2YXIgUEt0PWwoKCk9Pnt9KTt2YXIgS01lPXt9O3FlKEtNZSx7YnVzaW5lc3M6KCk9PlJNZSxjb2RlOigpPT5CTWUsY29udGFpbmVyOigpPT5ITWUsY29udGVudDooKT0+Vk1lLGRhdGFiYXNlOigpPT5OTWUsZGVzY3JpcHRvcnM6KCk9PnFNZSxmaW5hbmNlOigpPT5PTWUsZ2VuZXJhbDooKT0+VU1lLG5ldHdvcms6KCk9Pk1zZSxzYWFzOigpPT5aTWUsc3RvcmFnZTooKT0+WE1lLHdlYnNpdGU6KCk9PlFNZX0pO3ZhciBMcz1sKCgpPT57eXNlKCk7aUt0KCk7c0t0KCk7Rk1lKCk7bEt0KCk7d3NlKCk7dUt0KCk7aEt0KCk7Q0t0KCk7VEt0KCk7TEt0KCk7JEt0KCk7UEt0KCl9KTt2YXIgT2k9bCgoKT0+e29vKCk7THMoKX0pO3ZhciBJS3QsTkt0PWwoKCk9PntTZSgpO09pKCk7YmkoKTtJS3Q9KCk9PlNgCjxzdHlsZT4KICAud2l0aE1hcmdpbiB7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIG1hcmdpbjogMjBweDsKICB9CiAgLmRlbW8tY29udGFpbmVyIHsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgZ2FwOiAyMHB4OwogICAgcGFkZGluZzogMjBweDsKICAgIG1pbi1oZWlnaHQ6IDQwMHB4OwogIH0KICAuZGVtby1hcmVhIHsKICAgIHBhZGRpbmc6IDQwcHg7CiAgICBib3JkZXItcmFkaXVzOiA4cHg7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICBjdXJzb3I6IGNvbnRleHQtbWVudTsKICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4yczsKICB9CiAgLmRlbW8tYXJlYTpob3ZlciB7CiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDIpOwogIH0KPC9zdHlsZT4KPGRpdiBjbGFzcz0iZGVtby1jb250YWluZXIiPgogIDxkZWVzLXBhbmVsIGhlYWRpbmc9IkJhc2ljIENvbnRleHQgTWVudSB3aXRoIE5lc3RlZCBTdWJtZW51cyI+CiAgICA8ZGl2IGNsYXNzPSJkZW1vLWFyZWEiIEBjb250ZXh0bWVudT0ke2U9Pnt0ci5vcGVuQ29udGV4dE1lbnVXaXRoT3B0aW9ucyhlLFt7bmFtZToiRmlsZSIsaWNvbk5hbWU6ImZpbGVUZXh0IixhY3Rpb246YXN5bmMoKT0+e30sc3VibWVudTpbe25hbWU6Ik5ldyIsaWNvbk5hbWU6ImZpbGVQbHVzIixzaG9ydGN1dDoiQ21kK04iLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiTmV3IGZpbGUiKX0se25hbWU6Ik9wZW4iLGljb25OYW1lOiJmb2xkZXJPcGVuIixzaG9ydGN1dDoiQ21kK08iLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiT3BlbiBmaWxlIil9LHtuYW1lOiJTYXZlIixpY29uTmFtZToic2F2ZSIsc2hvcnRjdXQ6IkNtZCtTIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIlNhdmUiKX0se2RpdmlkZXI6ITB9LHtuYW1lOiJFeHBvcnQgYXMgUERGIixpY29uTmFtZToiZG93bmxvYWQiLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiRXhwb3J0IFBERiIpfSx7bmFtZToiRXhwb3J0IGFzIEhUTUwiLGljb25OYW1lOiJjb2RlIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIkV4cG9ydCBIVE1MIil9XX0se25hbWU6IkVkaXQiLGljb25OYW1lOiJlZGl0MyIsYWN0aW9uOmFzeW5jKCk9Pnt9LHN1Ym1lbnU6W3tuYW1lOiJDdXQiLGljb25OYW1lOiJzY2lzc29ycyIsc2hvcnRjdXQ6IkNtZCtYIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIkN1dCIpfSx7bmFtZToiQ29weSIsaWNvbk5hbWU6ImNvcHkiLHNob3J0Y3V0OiJDbWQrQyIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJDb3B5Iil9LHtuYW1lOiJQYXN0ZSIsaWNvbk5hbWU6ImNsaXBib2FyZCIsc2hvcnRjdXQ6IkNtZCtWIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIlBhc3RlIil9LHtkaXZpZGVyOiEwfSx7bmFtZToiRmluZCIsaWNvbk5hbWU6InNlYXJjaCIsc2hvcnRjdXQ6IkNtZCtGIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIkZpbmQiKX0se25hbWU6IlJlcGxhY2UiLGljb25OYW1lOiJyZXBlYXQiLHNob3J0Y3V0OiJDbWQrSCIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJSZXBsYWNlIil9XX0se25hbWU6IlZpZXciLGljb25OYW1lOiJleWUiLGFjdGlvbjphc3luYygpPT57fSxzdWJtZW51Olt7bmFtZToiWm9vbSBJbiIsaWNvbk5hbWU6Inpvb21JbiIsc2hvcnRjdXQ6IkNtZCsrIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIlpvb20gaW4iKX0se25hbWU6Ilpvb20gT3V0IixpY29uTmFtZToiem9vbU91dCIsc2hvcnRjdXQ6IkNtZCstIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIlpvb20gb3V0Iil9LHtuYW1lOiJSZXNldCBab29tIixpY29uTmFtZToibWF4aW1pemUyIixzaG9ydGN1dDoiQ21kKzAiLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiUmVzZXQgem9vbSIpfSx7ZGl2aWRlcjohMH0se25hbWU6IkZ1bGwgU2NyZWVuIixpY29uTmFtZToibWF4aW1pemUiLHNob3J0Y3V0OiJGMTEiLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiRnVsbCBzY3JlZW4iKX1dfSx7ZGl2aWRlcjohMH0se25hbWU6IlNldHRpbmdzIixpY29uTmFtZToic2V0dGluZ3MiLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiU2V0dGluZ3MiKX0se25hbWU6IkhlbHAiLGljb25OYW1lOiJoZWxwQ2lyY2xlIixhY3Rpb246YXN5bmMoKT0+e30sc3VibWVudTpbe25hbWU6IkRvY3VtZW50YXRpb24iLGljb25OYW1lOiJib29rIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIkRvY3VtZW50YXRpb24iKX0se25hbWU6IktleWJvYXJkIFNob3J0Y3V0cyIsaWNvbk5hbWU6ImtleWJvYXJkIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIlNob3J0Y3V0cyIpfSx7ZGl2aWRlcjohMH0se25hbWU6IkFib3V0IixpY29uTmFtZToiaW5mbyIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJBYm91dCIpfV19XSl9fT4KICAgICAgPGgzPlJpZ2h0LWNsaWNrIGFueXdoZXJlIGluIHRoaXMgYXJlYTwvaDM+CiAgICAgIDxwPkEgY29udGV4dCBtZW51IHdpdGggbmVzdGVkIHN1Ym1lbnVzIHdpbGwgYXBwZWFyPC9wPgogICAgPC9kaXY+CiAgPC9kZWVzLXBhbmVsPgogIDxkZWVzLXBhbmVsIGhlYWRpbmc9IkNvbXBvbmVudC1TcGVjaWZpYyBDb250ZXh0IE1lbnUiPgogICAgPGRlZXMtYnV0dG9uIHN0eWxlPSJtYXJnaW46IDIwcHg7IiBAY29udGV4dG1lbnU9JHtlPT57dHIub3BlbkNvbnRleHRNZW51V2l0aE9wdGlvbnMoZSxbe25hbWU6IkJ1dHRvbiBBY3Rpb25zIixpY29uTmFtZToibW91c2VQb2ludGVyIixhY3Rpb246YXN5bmMoKT0+e30sc3VibWVudTpbe25hbWU6IkNsaWNrIixpY29uTmFtZToibW91c2UiLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiQ2xpY2sgYWN0aW9uIil9LHtuYW1lOiJEb3VibGUgQ2xpY2siLGljb25OYW1lOiJ6YXAiLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiRG91YmxlIGNsaWNrIil9LHtuYW1lOiJMb25nIFByZXNzIixpY29uTmFtZToiY2xvY2siLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiTG9uZyBwcmVzcyIpfV19LHtuYW1lOiJCdXR0b24gU3RhdGUiLGljb25OYW1lOiJ0b2dnbGVMZWZ0IixhY3Rpb246YXN5bmMoKT0+e30sc3VibWVudTpbe25hbWU6IkVuYWJsZSIsaWNvbk5hbWU6ImNoZWNrQ2lyY2xlIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIkVuYWJsZSIpfSx7bmFtZToiRGlzYWJsZSIsaWNvbk5hbWU6InhDaXJjbGUiLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiRGlzYWJsZSIpfSx7ZGl2aWRlcjohMH0se25hbWU6IlNob3ciLGljb25OYW1lOiJleWUiLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiU2hvdyIpfSx7bmFtZToiSGlkZSIsaWNvbk5hbWU6ImV5ZU9mZiIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJIaWRlIil9XX0se2RpdmlkZXI6ITB9LHtuYW1lOiJEaXNhYmxlZCBBY3Rpb24iLGljb25OYW1lOiJiYW4iLGRpc2FibGVkOiEwLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiVGhpcyBzaG91bGQgbm90IHJ1biIpfSx7bmFtZToiUHJvcGVydGllcyIsaWNvbk5hbWU6InNldHRpbmdzIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIkJ1dHRvbiBwcm9wZXJ0aWVzIil9XSl9fT5SaWdodC1jbGljayBvbiB0aGlzIGJ1dHRvbjwvZGVlcy1idXR0b24+CiAgPC9kZWVzLXBhbmVsPgoKICA8ZGVlcy1wYW5lbCBoZWFkaW5nPSJBZHZhbmNlZCBDb250ZXh0IE1lbnUgRXhhbXBsZSI+CiAgICA8ZGl2IGNsYXNzPSJkZW1vLWFyZWEiIEBjb250ZXh0bWVudT0ke2U9Pnt0ci5vcGVuQ29udGV4dE1lbnVXaXRoT3B0aW9ucyhlLFt7bmFtZToiRm9ybWF0IixpY29uTmFtZToidHlwZSIsYWN0aW9uOmFzeW5jKCk9Pnt9LHN1Ym1lbnU6W3tuYW1lOiJCb2xkIixpY29uTmFtZToiYm9sZCIsc2hvcnRjdXQ6IkNtZCtCIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIkJvbGQiKX0se25hbWU6Ikl0YWxpYyIsaWNvbk5hbWU6Iml0YWxpYyIsc2hvcnRjdXQ6IkNtZCtJIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIkl0YWxpYyIpfSx7bmFtZToiVW5kZXJsaW5lIixpY29uTmFtZToidW5kZXJsaW5lIixzaG9ydGN1dDoiQ21kK1UiLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiVW5kZXJsaW5lIil9LHtkaXZpZGVyOiEwfSx7bmFtZToiRm9udCBTaXplIixpY29uTmFtZToidHlwZSIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJGb250IHNpemUgbWVudSIpfSx7bmFtZToiRm9udCBDb2xvciIsaWNvbk5hbWU6InBhbGV0dGUiLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiRm9udCBjb2xvciBtZW51Iil9XX0se25hbWU6IlRyYW5zZm9ybSIsaWNvbk5hbWU6InNodWZmbGUiLGFjdGlvbjphc3luYygpPT57fSxzdWJtZW51Olt7bmFtZToiVG8gVXBwZXJjYXNlIixpY29uTmFtZToiYXJyb3dVcCIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJVcHBlcmNhc2UiKX0se25hbWU6IlRvIExvd2VyY2FzZSIsaWNvbk5hbWU6ImFycm93RG93biIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJMb3dlcmNhc2UiKX0se25hbWU6IkNhcGl0YWxpemUiLGljb25OYW1lOiJ0eXBlIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIkNhcGl0YWxpemUiKX1dfSx7ZGl2aWRlcjohMH0se25hbWU6IkRlbGV0ZSIsaWNvbk5hbWU6InRyYXNoMiIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJEZWxldGUiKX1dKX19PgogICAgICA8aDM+QWR2YW5jZWQgTmVzdGVkIE1lbnUgRXhhbXBsZTwvaDM+CiAgICAgIDxwPlRoaXMgc2hvd3MgZGVlcGx5IG5lc3RlZCBzdWJtZW51cyBhbmQgdmFyaW91cyBmb3JtYXR0aW5nIG9wdGlvbnM8L3A+CiAgICA8L2Rpdj4KICA8L2RlZXMtcGFuZWw+CiAgCiAgPGRlZXMtcGFuZWwgaGVhZGluZz0iU3RhdGljIENvbnRleHQgTWVudSAoQWx3YXlzIFZpc2libGUpIj4KICAgIDxkZWVzLWNvbnRleHRtZW51CiAgICAgIGNsYXNzPSJ3aXRoTWFyZ2luIgogICAgICAubWVudUl0ZW1zPSR7W3tuYW1lOiJQcm9qZWN0IixpY29uTmFtZToiZm9sZGVyIixhY3Rpb246YXN5bmMoKT0+e30sc3VibWVudTpbe25hbWU6Ik5ldyBQcm9qZWN0IixpY29uTmFtZToiZm9sZGVyUGx1cyIsc2hvcnRjdXQ6IkNtZCtTaGlmdCtOIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIk5ldyBwcm9qZWN0Iil9LHtuYW1lOiJPcGVuIFByb2plY3QiLGljb25OYW1lOiJmb2xkZXJPcGVuIixzaG9ydGN1dDoiQ21kK1NoaWZ0K08iLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiT3BlbiBwcm9qZWN0Iil9LHtkaXZpZGVyOiEwfSx7bmFtZToiUmVjZW50IFByb2plY3RzIixpY29uTmFtZToiY2xvY2siLGFjdGlvbjphc3luYygpPT57fSxzdWJtZW51Olt7bmFtZToiUHJvamVjdCBBbHBoYSIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJPcGVuIEFscGhhIil9LHtuYW1lOiJQcm9qZWN0IEJldGEiLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiT3BlbiBCZXRhIil9LHtuYW1lOiJQcm9qZWN0IEdhbW1hIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIk9wZW4gR2FtbWEiKX1dfV19LHtuYW1lOiJUb29scyIsaWNvbk5hbWU6InRvb2wiLGFjdGlvbjphc3luYygpPT57fSxzdWJtZW51Olt7bmFtZToiVGVybWluYWwiLGljb25OYW1lOiJ0ZXJtaW5hbCIsc2hvcnRjdXQ6IkNtZCtUIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIlRlcm1pbmFsIil9LHtuYW1lOiJDb25zb2xlIixpY29uTmFtZToibW9uaXRvciIsc2hvcnRjdXQ6IkNtZCtLIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIkNvbnNvbGUiKX0se2RpdmlkZXI6ITB9LHtuYW1lOiJFeHRlbnNpb25zIixpY29uTmFtZToicGFja2FnZSIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJFeHRlbnNpb25zIil9XX0se2RpdmlkZXI6ITB9LHtuYW1lOiJQcmVmZXJlbmNlcyIsaWNvbk5hbWU6InNsaWRlcnMiLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiUHJlZmVyZW5jZXMiKX1dfQogICAgPjwvZGVlcy1jb250ZXh0bWVudT4KICA8L2RlZXMtcGFuZWw+CjwvZGl2PgpgfSk7dmFyIHR3LE1jLHFuLGtjPWwoKCk9PntTZSgpO1RuKCk7dHc9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxNYz1mdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MixpPTA7aTx0Lmxlbmd0aDtpKyspcj1hP3RbaV0uY2FsbChlLHIpOnRbaV0uY2FsbChlKTtyZXR1cm4gYT9yOnZvaWQgMH0scW49KCgpPT57bGV0IGU9W3plKCJkZWVzLXdpbmRvd2xheWVyIildLHQscj1bXSxhLGk9RGUsbyxuPVtdLHM9W10sYyxkPVtdLGY9W10sdSxwPVtdLGg9W10sYix4PVtdLGc9W107dmFyIHY9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCB3PXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO289W3JlKCldLGM9W3JlKCldLHU9W3JlKCldLGI9W2ooe3R5cGU6Qm9vbGVhbn0pXSx0dyh0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im9wdGlvbnMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOk09PiJvcHRpb25zImluIE0sZ2V0Ok09Pk0ub3B0aW9ucyxzZXQ6KE0sRik9PntNLm9wdGlvbnM9Rn19LG1ldGFkYXRhOnd9LG4scyksdHcodGhpcyxudWxsLGMse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJiYWNrZHJvcFpJbmRleCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6TT0+ImJhY2tkcm9wWkluZGV4ImluIE0sZ2V0Ok09Pk0uYmFja2Ryb3BaSW5kZXgsc2V0OihNLEYpPT57TS5iYWNrZHJvcFpJbmRleD1GfX0sbWV0YWRhdGE6d30sZCxmKSx0dyh0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImNvbnRlbnRaSW5kZXgiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOk09PiJjb250ZW50WkluZGV4ImluIE0sZ2V0Ok09Pk0uY29udGVudFpJbmRleCxzZXQ6KE0sRik9PntNLmNvbnRlbnRaSW5kZXg9Rn19LG1ldGFkYXRhOnd9LHAsaCksdHcodGhpcyxudWxsLGIse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ2aXNpYmxlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpNPT4idmlzaWJsZSJpbiBNLGdldDpNPT5NLnZpc2libGUsc2V0OihNLEYpPT57TS52aXNpYmxlPUZ9fSxtZXRhZGF0YTp3fSx4LGcpLHR3KG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOnd9LG51bGwsciksdj1hPXQudmFsdWUsdyYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTp3fSl9c3RhdGljIGRlbW89KCk9PlNgPGRlZXMtd2luZG93bGF5ZXI+PC9kZWVzLXdpbmRvd2xheWVyPmA7c3RhdGljIGRlbW9Hcm91cHM9WyJPdmVybGF5Il07c3RhdGljIGFzeW5jIGNyZWF0ZUFuZFNob3codyl7bGV0IE09JHQuRG9tVG9vbHMuZ2V0R2xvYmFsRG9tVG9vbHNTeW5jKCksRj1uZXcgdjtyZXR1cm4gRi5vcHRpb25zPXsuLi5GLm9wdGlvbnMsLi4ud30sZG9jdW1lbnQuYm9keS5hcHBlbmQoRiksYXdhaXQgTS5jb252ZW5pZW5jZS5zbWFydGRlbGF5LmRlbGF5Rm9yKDApLEYuc2hvdygpLEZ9I2U9TWModGhpcyxuLHtibHVyOiExfSk7Z2V0IG9wdGlvbnMoKXtyZXR1cm4gdGhpcy4jZX1zZXQgb3B0aW9ucyh3KXt0aGlzLiNlPXd9I3Q9KE1jKHRoaXMscyksTWModGhpcyxkLDFlMykpO2dldCBiYWNrZHJvcFpJbmRleCgpe3JldHVybiB0aGlzLiN0fXNldCBiYWNrZHJvcFpJbmRleCh3KXt0aGlzLiN0PXd9I3I9KE1jKHRoaXMsZiksTWModGhpcyxwLDEwMDEpKTtnZXQgY29udGVudFpJbmRleCgpe3JldHVybiB0aGlzLiNyfXNldCBjb250ZW50WkluZGV4KHcpe3RoaXMuI3I9d30jYT0oTWModGhpcyxoKSxNYyh0aGlzLHgsITEpKTtnZXQgdmlzaWJsZSgpe3JldHVybiB0aGlzLiNhfXNldCB2aXNpYmxlKHcpe3RoaXMuI2E9d31jb25zdHJ1Y3Rvcigpe3N1cGVyKCksTWModGhpcyxnKSwkdC5lbGVtZW50QmFzaWMuc2V0dXAoKX1yZW5kZXIoKXtyZXR1cm4gU2AKICAgICAgJHskdC5lbGVtZW50QmFzaWMuc3R5bGVzfQogICAgICA8c3R5bGU+CiAgICAgICAgLndpbmRvd092ZXJsYXkgewogICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnM7CiAgICAgICAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtOwogICAgICAgICAgcG9zaXRpb246IGZpeGVkOwogICAgICAgICAgdG9wOiAwcHg7CiAgICAgICAgICBsZWZ0OiAwcHg7CiAgICAgICAgICBoZWlnaHQ6IDEwMHZoOwogICAgICAgICAgd2lkdGg6IDEwMHZ3OwogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wKTsKICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYnJpZ2h0bmVzcygxKSAke3RoaXMub3B0aW9ucy5ibHVyPyJibHVyKDBweCkiOiIifTsKICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgICAgICAgei1pbmRleDogJHt0aGlzLmJhY2tkcm9wWkluZGV4fTsKICAgICAgICB9CiAgICAgICAgLnNsb3RDb250ZW50IHsKICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDsKICAgICAgICAgIGhlaWdodDogMTAwdmg7CiAgICAgICAgICB3aWR0aDogMTAwdnc7CiAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgICAgei1pbmRleDogJHt0aGlzLmNvbnRlbnRaSW5kZXh9OwogICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5zbG90Q29udGVudCA+ICogewogICAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC52aXNpYmxlIHsKICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4yKTsKICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYnJpZ2h0bmVzcygwLjkpICR7dGhpcy5vcHRpb25zLmJsdXI/ImJsdXIoMnB4KSI6IiJ9OwogICAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDsKICAgICAgICB9CiAgICAgIDwvc3R5bGU+CiAgICAgIDxkaXYgQGNsaWNrPSR7dGhpcy5kaXNwYXRjaENsaWNrZWR9IGNsYXNzPSJ3aW5kb3dPdmVybGF5ICR7dGhpcy52aXNpYmxlPyJ2aXNpYmxlIjpudWxsfSI+CiAgICAgIDwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJzbG90Q29udGVudCI+CiAgICAgICAgPHNsb3Q+PC9zbG90PgogICAgICA8L2Rpdj4KICAgIGB9Zmlyc3RVcGRhdGVkKCl7c2V0VGltZW91dCgoKT0+e3RoaXMudmlzaWJsZT0hMH0sMTAwKX1kaXNwYXRjaENsaWNrZWQoKXt0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJjbGlja2VkIikpfXRvZ2dsZVZpc2liaWxpdHkoKXt0aGlzLnZpc2libGU9IXRoaXMudmlzaWJsZX1nZXRDb250ZW50WkluZGV4KCl7cmV0dXJuIHRoaXMuY29udGVudFpJbmRleH1hc3luYyBzaG93KCl7bGV0IHc9YXdhaXQgdGhpcy5kb210b29sc1Byb21pc2U7dGhpcy5iYWNrZHJvcFpJbmRleD1jYS5nZXROZXh0WkluZGV4KCksdGhpcy5jb250ZW50WkluZGV4PWNhLmdldE5leHRaSW5kZXgoKSxjYS5yZWdpc3Rlcih0aGlzLHRoaXMuYmFja2Ryb3BaSW5kZXgpLGF3YWl0IHcuY29udmVuaWVuY2Uuc21hcnRkZWxheS5kZWxheUZvcigwKSx0aGlzLnZpc2libGU9ITB9YXN5bmMgaGlkZSgpe2F3YWl0KGF3YWl0IHRoaXMuZG9tdG9vbHNQcm9taXNlKS5jb252ZW5pZW5jZS5zbWFydGRlbGF5LmRlbGF5Rm9yKDApLHRoaXMudmlzaWJsZT0hMX1hc3luYyBkZXN0cm95KCl7bGV0IHc9YXdhaXQgdGhpcy5kb210b29sc1Byb21pc2U7YXdhaXQgdGhpcy5oaWRlKCksYXdhaXQgdy5jb252ZW5pZW5jZS5zbWFydGRlbGF5LmRlbGF5Rm9yKDMwMCksY2EudW5yZWdpc3Rlcih0aGlzKSx0aGlzLnJlbW92ZSgpfXN0YXRpY3tNYyhhLHIpfX07cmV0dXJuIHY9YX0pKCl9KTtmdW5jdGlvbiBKTWUoZSx0KXsodD09bnVsbHx8dD5lLmxlbmd0aCkmJih0PWUubGVuZ3RoKTtmb3IodmFyIHI9MCxhPUFycmF5KHQpO3I8dDtyKyspYVtyXT1lW3JdO3JldHVybiBhfWZ1bmN0aW9uIGE5YShlKXtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBlfWZ1bmN0aW9uIGk5YShlKXtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBKTWUoZSl9ZnVuY3Rpb24gbzlhKGUsdCl7aWYoIShlIGluc3RhbmNlb2YgdCkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uIil9ZnVuY3Rpb24gRkt0KGUsdCl7Zm9yKHZhciByPTA7cjx0Lmxlbmd0aDtyKyspe3ZhciBhPXRbcl07YS5lbnVtZXJhYmxlPWEuZW51bWVyYWJsZXx8ITEsYS5jb25maWd1cmFibGU9ITAsInZhbHVlImluIGEmJihhLndyaXRhYmxlPSEwKSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxSS3QoYS5rZXkpLGEpfX1mdW5jdGlvbiBuOWEoZSx0LHIpe3JldHVybiB0JiZGS3QoZS5wcm90b3R5cGUsdCksciYmRkt0KGUsciksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsInByb3RvdHlwZSIse3dyaXRhYmxlOiExfSksZX1mdW5jdGlvbiBrc2UoZSx0KXt2YXIgcj10eXBlb2YgU3ltYm9sPCJ1IiYmZVtTeW1ib2wuaXRlcmF0b3JdfHxlWyJAQGl0ZXJhdG9yIl07aWYoIXIpe2lmKEFycmF5LmlzQXJyYXkoZSl8fChyPWVrZShlKSl8fHQmJmUmJnR5cGVvZiBlLmxlbmd0aD09Im51bWJlciIpe3ImJihlPXIpO3ZhciBhPTAsaT1mdW5jdGlvbigpe307cmV0dXJue3M6aSxuOmZ1bmN0aW9uKCl7cmV0dXJuIGE+PWUubGVuZ3RoP3tkb25lOiEwfTp7ZG9uZTohMSx2YWx1ZTplW2ErK119fSxlOmZ1bmN0aW9uKGMpe3Rocm93IGN9LGY6aX19dGhyb3cgbmV3IFR5cGVFcnJvcihgSW52YWxpZCBhdHRlbXB0IHRvIGl0ZXJhdGUgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLgpJbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuYCl9dmFyIG8sbj0hMCxzPSExO3JldHVybntzOmZ1bmN0aW9uKCl7cj1yLmNhbGwoZSl9LG46ZnVuY3Rpb24oKXt2YXIgYz1yLm5leHQoKTtyZXR1cm4gbj1jLmRvbmUsY30sZTpmdW5jdGlvbihjKXtzPSEwLG89Y30sZjpmdW5jdGlvbigpe3RyeXtufHxyLnJldHVybj09bnVsbHx8ci5yZXR1cm4oKX1maW5hbGx5e2lmKHMpdGhyb3cgb319fX1mdW5jdGlvbiBqdChlLHQscil7cmV0dXJuKHQ9Ukt0KHQpKWluIGU/T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsdCx7dmFsdWU6cixlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMH0pOmVbdF09cixlfWZ1bmN0aW9uIHM5YShlLHQpe2lmKHR5cGVvZiB0IT0iZnVuY3Rpb24iJiZ0IT09bnVsbCl0aHJvdyBuZXcgVHlwZUVycm9yKCJTdXBlciBleHByZXNzaW9uIG11c3QgZWl0aGVyIGJlIG51bGwgb3IgYSBmdW5jdGlvbiIpO2UucHJvdG90eXBlPU9iamVjdC5jcmVhdGUodCYmdC5wcm90b3R5cGUse2NvbnN0cnVjdG9yOnt2YWx1ZTplLHdyaXRhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMH19KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwicHJvdG90eXBlIix7d3JpdGFibGU6ITF9KSx0JiZTc2UoZSx0KX1mdW5jdGlvbiBsOWEoZSl7aWYodHlwZW9mIFN5bWJvbDwidSImJmVbU3ltYm9sLml0ZXJhdG9yXSE9bnVsbHx8ZVsiQEBpdGVyYXRvciJdIT1udWxsKXJldHVybiBBcnJheS5mcm9tKGUpfWZ1bmN0aW9uIGM5YShlLHQpe3ZhciByPWU9PW51bGw/bnVsbDp0eXBlb2YgU3ltYm9sPCJ1IiYmZVtTeW1ib2wuaXRlcmF0b3JdfHxlWyJAQGl0ZXJhdG9yIl07aWYociE9bnVsbCl7dmFyIGEsaSxvLG4scz1bXSxjPSEwLGQ9ITE7dHJ5e2lmKG89KHI9ci5jYWxsKGUpKS5uZXh0LHQ9PT0wKXtpZihPYmplY3QocikhPT1yKXJldHVybjtjPSExfWVsc2UgZm9yKDshKGM9KGE9by5jYWxsKHIpKS5kb25lKSYmKHMucHVzaChhLnZhbHVlKSxzLmxlbmd0aCE9PXQpO2M9ITApO31jYXRjaChmKXtkPSEwLGk9Zn1maW5hbGx5e3RyeXtpZighYyYmci5yZXR1cm4hPW51bGwmJihuPXIucmV0dXJuKCksT2JqZWN0KG4pIT09bikpcmV0dXJufWZpbmFsbHl7aWYoZCl0aHJvdyBpfX1yZXR1cm4gc319ZnVuY3Rpb24gZDlhKCl7dGhyb3cgbmV3IFR5cGVFcnJvcihgSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS4KSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLmApfWZ1bmN0aW9uIHU5YSgpe3Rocm93IG5ldyBUeXBlRXJyb3IoYEludmFsaWQgYXR0ZW1wdCB0byBzcHJlYWQgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLgpJbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuYCl9ZnVuY3Rpb24gT0t0KGUsdCl7dmFyIHI9T2JqZWN0LmtleXMoZSk7aWYoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyl7dmFyIGE9T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhlKTt0JiYoYT1hLmZpbHRlcihmdW5jdGlvbihpKXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihlLGkpLmVudW1lcmFibGV9KSksci5wdXNoLmFwcGx5KHIsYSl9cmV0dXJuIHJ9ZnVuY3Rpb24gUWUoZSl7Zm9yKHZhciB0PTE7dDxhcmd1bWVudHMubGVuZ3RoO3QrKyl7dmFyIHI9YXJndW1lbnRzW3RdIT1udWxsP2FyZ3VtZW50c1t0XTp7fTt0JTI/T0t0KE9iamVjdChyKSwhMCkuZm9yRWFjaChmdW5jdGlvbihhKXtqdChlLGEsclthXSl9KTpPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycz9PYmplY3QuZGVmaW5lUHJvcGVydGllcyhlLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKHIpKTpPS3QoT2JqZWN0KHIpKS5mb3JFYWNoKGZ1bmN0aW9uKGEpe09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLGEsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihyLGEpKX0pfXJldHVybiBlfWZ1bmN0aW9uIFNzZShlLHQpe3JldHVybiBTc2U9T2JqZWN0LnNldFByb3RvdHlwZU9mP09iamVjdC5zZXRQcm90b3R5cGVPZi5iaW5kKCk6ZnVuY3Rpb24ocixhKXtyZXR1cm4gci5fX3Byb3RvX189YSxyfSxTc2UoZSx0KX1mdW5jdGlvbiB6c2UoZSx0KXtyZXR1cm4gYTlhKGUpfHxjOWEoZSx0KXx8ZWtlKGUsdCl8fGQ5YSgpfWZ1bmN0aW9uIERzKGUpe3JldHVybiBpOWEoZSl8fGw5YShlKXx8ZWtlKGUpfHx1OWEoKX1mdW5jdGlvbiBmOWEoZSx0KXtpZih0eXBlb2YgZSE9Im9iamVjdCJ8fCFlKXJldHVybiBlO3ZhciByPWVbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZihyIT09dm9pZCAwKXt2YXIgYT1yLmNhbGwoZSx0fHwiZGVmYXVsdCIpO2lmKHR5cGVvZiBhIT0ib2JqZWN0IilyZXR1cm4gYTt0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpfXJldHVybih0PT09InN0cmluZyI/U3RyaW5nOk51bWJlcikoZSl9ZnVuY3Rpb24gUkt0KGUpe3ZhciB0PWY5YShlLCJzdHJpbmciKTtyZXR1cm4gdHlwZW9mIHQ9PSJzeW1ib2wiP3Q6dCsiIn1mdW5jdGlvbiBDc2UoZSl7IkBiYWJlbC9oZWxwZXJzIC0gdHlwZW9mIjtyZXR1cm4gQ3NlPXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJnR5cGVvZiBTeW1ib2wuaXRlcmF0b3I9PSJzeW1ib2wiP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJnR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJnQuY29uc3RydWN0b3I9PT1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSxDc2UoZSl9ZnVuY3Rpb24gZWtlKGUsdCl7aWYoZSl7aWYodHlwZW9mIGU9PSJzdHJpbmciKXJldHVybiBKTWUoZSx0KTt2YXIgcj17fS50b1N0cmluZy5jYWxsKGUpLnNsaWNlKDgsLTEpO3JldHVybiByPT09Ik9iamVjdCImJmUuY29uc3RydWN0b3ImJihyPWUuY29uc3RydWN0b3IubmFtZSkscj09PSJNYXAifHxyPT09IlNldCI/QXJyYXkuZnJvbShlKTpyPT09IkFyZ3VtZW50cyJ8fC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KHIpP0pNZShlLHQpOnZvaWQgMH19ZnVuY3Rpb24gWjEoKXtaMT1mdW5jdGlvbihpLG8pe3JldHVybiBuZXcgcihpLHZvaWQgMCxvKX07dmFyIGU9UmVnRXhwLnByb3RvdHlwZSx0PW5ldyBXZWFrTWFwO2Z1bmN0aW9uIHIoaSxvLG4pe3ZhciBzPVJlZ0V4cChpLG8pO3JldHVybiB0LnNldChzLG58fHQuZ2V0KGkpKSxTc2UocyxyLnByb3RvdHlwZSl9ZnVuY3Rpb24gYShpLG8pe3ZhciBuPXQuZ2V0KG8pO3JldHVybiBPYmplY3Qua2V5cyhuKS5yZWR1Y2UoZnVuY3Rpb24ocyxjKXt2YXIgZD1uW2NdO2lmKHR5cGVvZiBkPT0ibnVtYmVyIilzW2NdPWlbZF07ZWxzZXtmb3IodmFyIGY9MDtpW2RbZl1dPT09dm9pZCAwJiZmKzE8ZC5sZW5ndGg7KWYrKztzW2NdPWlbZFtmXV19cmV0dXJuIHN9LE9iamVjdC5jcmVhdGUobnVsbCkpfXJldHVybiBzOWEocixSZWdFeHApLHIucHJvdG90eXBlLmV4ZWM9ZnVuY3Rpb24oaSl7dmFyIG89ZS5leGVjLmNhbGwodGhpcyxpKTtpZihvKXtvLmdyb3Vwcz1hKG8sdGhpcyk7dmFyIG49by5pbmRpY2VzO24mJihuLmdyb3Vwcz1hKG4sdGhpcykpfXJldHVybiBvfSxyLnByb3RvdHlwZVtTeW1ib2wucmVwbGFjZV09ZnVuY3Rpb24oaSxvKXtpZih0eXBlb2Ygbz09InN0cmluZyIpe3ZhciBuPXQuZ2V0KHRoaXMpO3JldHVybiBlW1N5bWJvbC5yZXBsYWNlXS5jYWxsKHRoaXMsaSxvLnJlcGxhY2UoL1wkPChbXj5dKykoPnwkKS9nLGZ1bmN0aW9uKGMsZCxmKXtpZihmPT09IiIpcmV0dXJuIGM7dmFyIHU9bltkXTtyZXR1cm4gQXJyYXkuaXNBcnJheSh1KT8iJCIrdS5qb2luKCIkIik6dHlwZW9mIHU9PSJudW1iZXIiPyIkIit1OiIifSkpfWlmKHR5cGVvZiBvPT0iZnVuY3Rpb24iKXt2YXIgcz10aGlzO3JldHVybiBlW1N5bWJvbC5yZXBsYWNlXS5jYWxsKHRoaXMsaSxmdW5jdGlvbigpe3ZhciBjPWFyZ3VtZW50cztyZXR1cm4gdHlwZW9mIGNbYy5sZW5ndGgtMV0hPSJvYmplY3QiJiYoYz1bXS5zbGljZS5jYWxsKGMpKS5wdXNoKGEoYyxzKSksby5hcHBseSh0aGlzLGMpfSl9cmV0dXJuIGVbU3ltYm9sLnJlcGxhY2VdLmNhbGwodGhpcyxpLG8pfSxaMS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9ZnVuY3Rpb24gYXcoZSl7cmV0dXJuIG5ldyBQcm94eShlLHtnZXQ6ZnVuY3Rpb24ocixhKXtyZXR1cm4gYSBpbiByP3JbYV06cltwMV19fSl9ZnVuY3Rpb24gZXhhKGUpe3ZhciB0PVNhLnF1ZXJ5U2VsZWN0b3IoInNjcmlwdFsiK2UrIl0iKTtpZih0KXJldHVybiB0LmdldEF0dHJpYnV0ZShlKX1mdW5jdGlvbiB0eGEoZSl7cmV0dXJuIGU9PT0iIj8hMDplPT09ImZhbHNlIj8hMTplPT09InRydWUiPyEwOmV9ZnVuY3Rpb24gcnhhKGUpe3JldHVybiBvdy5wdXNoKGUpLGZ1bmN0aW9uKCl7b3cuc3BsaWNlKG93LmluZGV4T2YoZSksMSl9fWZ1bmN0aW9uIGF4YShlKXtpZighKCFlfHwhU2MpKXt2YXIgdD1TYS5jcmVhdGVFbGVtZW50KCJzdHlsZSIpO3Quc2V0QXR0cmlidXRlKCJ0eXBlIiwidGV4dC9jc3MiKSx0LmlubmVySFRNTD1lO2Zvcih2YXIgcj1TYS5oZWFkLmNoaWxkTm9kZXMsYT1udWxsLGk9ci5sZW5ndGgtMTtpPi0xO2ktLSl7dmFyIG89cltpXSxuPShvLnRhZ05hbWV8fCIiKS50b1VwcGVyQ2FzZSgpO1siU1RZTEUiLCJMSU5LIl0uaW5kZXhPZihuKT4tMSYmKGE9byl9cmV0dXJuIFNhLmhlYWQuaW5zZXJ0QmVmb3JlKHQsYSksZX19ZnVuY3Rpb24gTEp0KCl7Zm9yKHZhciBlPTEyLHQ9IiI7ZS0tID4wOyl0Kz1peGFbTWF0aC5yYW5kb20oKSo2MnwwXTtyZXR1cm4gdH1mdW5jdGlvbiBMOShlKXtmb3IodmFyIHQ9W10scj0oZXx8W10pLmxlbmd0aD4+PjA7ci0tOyl0W3JdPWVbcl07cmV0dXJuIHR9ZnVuY3Rpb24gaGtlKGUpe3JldHVybiBlLmNsYXNzTGlzdD9MOShlLmNsYXNzTGlzdCk6KGUuZ2V0QXR0cmlidXRlKCJjbGFzcyIpfHwiIikuc3BsaXQoIiAiKS5maWx0ZXIoZnVuY3Rpb24odCl7cmV0dXJuIHR9KX1mdW5jdGlvbiBESnQoZSl7cmV0dXJuIiIuY29uY2F0KGUpLnJlcGxhY2UoLyYvZywiJmFtcDsiKS5yZXBsYWNlKC8iL2csIiZxdW90OyIpLnJlcGxhY2UoLycvZywiJiMzOTsiKS5yZXBsYWNlKC88L2csIiZsdDsiKS5yZXBsYWNlKC8+L2csIiZndDsiKX1mdW5jdGlvbiBveGEoZSl7cmV0dXJuIE9iamVjdC5rZXlzKGV8fHt9KS5yZWR1Y2UoZnVuY3Rpb24odCxyKXtyZXR1cm4gdCsiIi5jb25jYXQociwnPSInKS5jb25jYXQoREp0KGVbcl0pLCciICcpfSwiIikudHJpbSgpfWZ1bmN0aW9uIExzZShlKXtyZXR1cm4gT2JqZWN0LmtleXMoZXx8e30pLnJlZHVjZShmdW5jdGlvbih0LHIpe3JldHVybiB0KyIiLmNvbmNhdChyLCI6ICIpLmNvbmNhdChlW3JdLnRyaW0oKSwiOyIpfSwiIil9ZnVuY3Rpb24gbWtlKGUpe3JldHVybiBlLnNpemUhPT1sbC5zaXplfHxlLnghPT1sbC54fHxlLnkhPT1sbC55fHxlLnJvdGF0ZSE9PWxsLnJvdGF0ZXx8ZS5mbGlwWHx8ZS5mbGlwWX1mdW5jdGlvbiBueGEoZSl7dmFyIHQ9ZS50cmFuc2Zvcm0scj1lLmNvbnRhaW5lcldpZHRoLGE9ZS5pY29uV2lkdGgsaT17dHJhbnNmb3JtOiJ0cmFuc2xhdGUoIi5jb25jYXQoci8yLCIgMjU2KSIpfSxvPSJ0cmFuc2xhdGUoIi5jb25jYXQodC54KjMyLCIsICIpLmNvbmNhdCh0LnkqMzIsIikgIiksbj0ic2NhbGUoIi5jb25jYXQodC5zaXplLzE2Kih0LmZsaXBYPy0xOjEpLCIsICIpLmNvbmNhdCh0LnNpemUvMTYqKHQuZmxpcFk/LTE6MSksIikgIikscz0icm90YXRlKCIuY29uY2F0KHQucm90YXRlLCIgMCAwKSIpLGM9e3RyYW5zZm9ybToiIi5jb25jYXQobywiICIpLmNvbmNhdChuLCIgIikuY29uY2F0KHMpfSxkPXt0cmFuc2Zvcm06InRyYW5zbGF0ZSgiLmNvbmNhdChhLzIqLTEsIiAtMjU2KSIpfTtyZXR1cm57b3V0ZXI6aSxpbm5lcjpjLHBhdGg6ZH19ZnVuY3Rpb24gc3hhKGUpe3ZhciB0PWUudHJhbnNmb3JtLHI9ZS53aWR0aCxhPXI9PT12b2lkIDA/b2tlOnIsaT1lLmhlaWdodCxvPWk9PT12b2lkIDA/b2tlOmksbj1lLnN0YXJ0Q2VudGVyZWQscz1uPT09dm9pZCAwPyExOm4sYz0iIjtyZXR1cm4gcyYmR0t0P2MrPSJ0cmFuc2xhdGUoIi5jb25jYXQodC54L0o0LWEvMiwiZW0sICIpLmNvbmNhdCh0LnkvSjQtby8yLCJlbSkgIik6cz9jKz0idHJhbnNsYXRlKGNhbGMoLTUwJSArICIuY29uY2F0KHQueC9KNCwiZW0pLCBjYWxjKC01MCUgKyAiKS5jb25jYXQodC55L0o0LCJlbSkpICIpOmMrPSJ0cmFuc2xhdGUoIi5jb25jYXQodC54L0o0LCJlbSwgIikuY29uY2F0KHQueS9KNCwiZW0pICIpLGMrPSJzY2FsZSgiLmNvbmNhdCh0LnNpemUvSjQqKHQuZmxpcFg/LTE6MSksIiwgIikuY29uY2F0KHQuc2l6ZS9KNCoodC5mbGlwWT8tMToxKSwiKSAiKSxjKz0icm90YXRlKCIuY29uY2F0KHQucm90YXRlLCJkZWcpICIpLGN9ZnVuY3Rpb24gQUp0KCl7dmFyIGU9dkp0LHQ9eUp0LHI9U3QuY3NzUHJlZml4LGE9U3QucmVwbGFjZW1lbnRDbGFzcyxpPWx4YTtpZihyIT09ZXx8YSE9PXQpe3ZhciBvPW5ldyBSZWdFeHAoIlxcLiIuY29uY2F0KGUsIlxcLSIpLCJnIiksbj1uZXcgUmVnRXhwKCJcXC0tIi5jb25jYXQoZSwiXFwtIiksImciKSxzPW5ldyBSZWdFeHAoIlxcLiIuY29uY2F0KHQpLCJnIik7aT1pLnJlcGxhY2UobywiLiIuY29uY2F0KHIsIi0iKSkucmVwbGFjZShuLCItLSIuY29uY2F0KHIsIi0iKSkucmVwbGFjZShzLCIuIi5jb25jYXQoYSkpfXJldHVybiBpfWZ1bmN0aW9uIGdrZSgpe1N0LmF1dG9BZGRDc3MmJiFFSnQmJihheGEoQUp0KCkpLEVKdD0hMCl9ZnVuY3Rpb24gZHhhKGUpe1NjJiYoRHNlP3NldFRpbWVvdXQoZSwwKTokSnQucHVzaChlKSl9ZnVuY3Rpb24gbncoZSl7dmFyIHQ9ZS50YWcscj1lLmF0dHJpYnV0ZXMsYT1yPT09dm9pZCAwP3t9OnIsaT1lLmNoaWxkcmVuLG89aT09PXZvaWQgMD9bXTppO3JldHVybiB0eXBlb2YgZT09InN0cmluZyI/REp0KGUpOiI8Ii5jb25jYXQodCwiICIpLmNvbmNhdChveGEoYSksIj4iKS5jb25jYXQoby5tYXAobncpLmpvaW4oIiIpLCI8LyIpLmNvbmNhdCh0LCI+Iil9ZnVuY3Rpb24gSUp0KGUsdCxyKXtpZihlJiZlW3RdJiZlW3RdW3JdKXJldHVybntwcmVmaXg6dCxpY29uTmFtZTpyLGljb246ZVt0XVtyXX19ZnVuY3Rpb24gTkp0KGUpe3JldHVybiBEcyhlKS5sZW5ndGghPT0xP251bGw6ZS5jb2RlUG9pbnRBdCgwKS50b1N0cmluZygxNil9ZnVuY3Rpb24gRkp0KGUpe3JldHVybiBPYmplY3Qua2V5cyhlKS5yZWR1Y2UoZnVuY3Rpb24odCxyKXt2YXIgYT1lW3JdLGk9ISFhLmljb247cmV0dXJuIGk/dFthLmljb25OYW1lXT1hLmljb246dFtyXT1hLHR9LHt9KX1mdW5jdGlvbiBia2UoZSx0KXt2YXIgcj1hcmd1bWVudHMubGVuZ3RoPjImJmFyZ3VtZW50c1syXSE9PXZvaWQgMD9hcmd1bWVudHNbMl06e30sYT1yLnNraXBIb29rcyxpPWE9PT12b2lkIDA/ITE6YSxvPUZKdCh0KTt0eXBlb2YgQXMuaG9va3MuYWRkUGFjaz09ImZ1bmN0aW9uIiYmIWk/QXMuaG9va3MuYWRkUGFjayhlLEZKdCh0KSk6QXMuc3R5bGVzW2VdPVFlKFFlKHt9LEFzLnN0eWxlc1tlXXx8e30pLG8pLGU9PT0iZmFzIiYmYmtlKCJmYSIsdCl9ZnVuY3Rpb24gaHhhKGUpe3JldHVybn5KZ2EuaW5kZXhPZihlKX1mdW5jdGlvbiBteGEoZSx0KXt2YXIgcj10LnNwbGl0KCItIiksYT1yWzBdLGk9ci5zbGljZSgxKS5qb2luKCItIik7cmV0dXJuIGE9PT1lJiZpIT09IiImJiFoeGEoaSk/aTpudWxsfWZ1bmN0aW9uIHdrZShlLHQpe3JldHVybihSSnRbZV18fHt9KVt0XX1mdW5jdGlvbiBneGEoZSx0KXtyZXR1cm4oQkp0W2VdfHx7fSlbdF19ZnVuY3Rpb24gbnUoZSx0KXtyZXR1cm4oakp0W2VdfHx7fSlbdF19ZnVuY3Rpb24gVUp0KGUpe3JldHVybiBISnRbZV18fHtwcmVmaXg6bnVsbCxpY29uTmFtZTpudWxsfX1mdW5jdGlvbiB4eGEoZSl7dmFyIHQ9cUp0W2VdLHI9d2tlKCJmYXMiLGUpO3JldHVybiB0fHwocj97cHJlZml4OiJmYXMiLGljb25OYW1lOnJ9Om51bGwpfHx7cHJlZml4Om51bGwsaWNvbk5hbWU6bnVsbH19ZnVuY3Rpb24gZTMoKXtyZXR1cm4geWtlfWZ1bmN0aW9uIGJ4YShlKXt2YXIgdD1wMSxyPU9KdC5yZWR1Y2UoZnVuY3Rpb24oYSxpKXtyZXR1cm4gYVtpXT0iIi5jb25jYXQoU3QuY3NzUHJlZml4LCItIikuY29uY2F0KGkpLGF9LHt9KTtyZXR1cm4gcEp0LmZvckVhY2goZnVuY3Rpb24oYSl7KGUuaW5jbHVkZXMoclthXSl8fGUuc29tZShmdW5jdGlvbihpKXtyZXR1cm4gcHhhW2FdLmluY2x1ZGVzKGkpfSkpJiYodD1hKX0pLHR9ZnVuY3Rpb24gQXNlKGUpe3ZhciB0PWFyZ3VtZW50cy5sZW5ndGg+MSYmYXJndW1lbnRzWzFdIT09dm9pZCAwP2FyZ3VtZW50c1sxXTp7fSxyPXQuZmFtaWx5LGE9cj09PXZvaWQgMD9wMTpyLGk9WWdhW2FdW2VdO2lmKGE9PT1ydyYmIWUpcmV0dXJuImZhZCI7dmFyIG89ekp0W2FdW2VdfHx6SnRbYV1baV0sbj1lIGluIEFzLnN0eWxlcz9lOm51bGwscz1vfHxufHxudWxsO3JldHVybiBzfWZ1bmN0aW9uIHZ4YShlKXt2YXIgdD1bXSxyPW51bGw7cmV0dXJuIGUuZm9yRWFjaChmdW5jdGlvbihhKXt2YXIgaT1teGEoU3QuY3NzUHJlZml4LGEpO2k/cj1pOmEmJnQucHVzaChhKX0pLHtpY29uTmFtZTpyLHJlc3Q6dH19ZnVuY3Rpb24gR0p0KGUpe3JldHVybiBlLnNvcnQoKS5maWx0ZXIoZnVuY3Rpb24odCxyLGEpe3JldHVybiBhLmluZGV4T2YodCk9PT1yfSl9ZnVuY3Rpb24gRXNlKGUpe3ZhciB0PWFyZ3VtZW50cy5sZW5ndGg+MSYmYXJndW1lbnRzWzFdIT09dm9pZCAwP2FyZ3VtZW50c1sxXTp7fSxyPXQuc2tpcExvb2t1cHMsYT1yPT09dm9pZCAwPyExOnIsaT1udWxsLG89R0p0KGUuZmlsdGVyKGZ1bmN0aW9uKGgpe3JldHVybiBZSnQuaW5jbHVkZXMoaCl9KSksbj1HSnQoZS5maWx0ZXIoZnVuY3Rpb24oaCl7cmV0dXJuIVlKdC5pbmNsdWRlcyhoKX0pKSxzPW8uZmlsdGVyKGZ1bmN0aW9uKGgpe3JldHVybiBpPWgsIVpLdC5pbmNsdWRlcyhoKX0pLGM9enNlKHMsMSksZD1jWzBdLGY9ZD09PXZvaWQgMD9udWxsOmQsdT1ieGEobykscD1RZShRZSh7fSx2eGEobikpLHt9LHtwcmVmaXg6QXNlKGYse2ZhbWlseTp1fSl9KTtyZXR1cm4gUWUoUWUoUWUoe30scCksa3hhKHt2YWx1ZXM6ZSxmYW1pbHk6dSxzdHlsZXM6c3csY29uZmlnOlN0LGNhbm9uaWNhbDpwLGdpdmVuUHJlZml4Oml9KSkseXhhKGEsaSxwKSl9ZnVuY3Rpb24geXhhKGUsdCxyKXt2YXIgYT1yLnByZWZpeCxpPXIuaWNvbk5hbWU7aWYoZXx8IWF8fCFpKXJldHVybntwcmVmaXg6YSxpY29uTmFtZTppfTt2YXIgbz10PT09ImZhIj9VSnQoaSk6e30sbj1udShhLGkpO3JldHVybiBpPW8uaWNvbk5hbWV8fG58fGksYT1vLnByZWZpeHx8YSxhPT09ImZhciImJiFzdy5mYXImJnN3LmZhcyYmIVN0LmF1dG9GZXRjaFN2ZyYmKGE9ImZhcyIpLHtwcmVmaXg6YSxpY29uTmFtZTppfX1mdW5jdGlvbiBreGEoZSl7dmFyIHQ9ZS52YWx1ZXMscj1lLmZhbWlseSxhPWUuY2Fub25pY2FsLGk9ZS5naXZlblByZWZpeCxvPWk9PT12b2lkIDA/IiI6aSxuPWUuc3R5bGVzLHM9bj09PXZvaWQgMD97fTpuLGM9ZS5jb25maWcsZD1jPT09dm9pZCAwP3t9OmMsZj1yPT09cncsdT10LmluY2x1ZGVzKCJmYS1kdW90b25lIil8fHQuaW5jbHVkZXMoImZhZCIpLHA9ZC5mYW1pbHlEZWZhdWx0PT09ImR1b3RvbmUiLGg9YS5wcmVmaXg9PT0iZmFkInx8YS5wcmVmaXg9PT0iZmEtZHVvdG9uZSI7aWYoIWYmJih1fHxwfHxoKSYmKGEucHJlZml4PSJmYWQiKSwodC5pbmNsdWRlcygiZmEtYnJhbmRzIil8fHQuaW5jbHVkZXMoImZhYiIpKSYmKGEucHJlZml4PSJmYWIiKSwhYS5wcmVmaXgmJnd4YS5pbmNsdWRlcyhyKSl7dmFyIGI9T2JqZWN0LmtleXMocykuZmluZChmdW5jdGlvbihnKXtyZXR1cm4gTXhhLmluY2x1ZGVzKGcpfSk7aWYoYnx8ZC5hdXRvRmV0Y2hTdmcpe3ZhciB4PU85YS5nZXQocikuZGVmYXVsdFNob3J0UHJlZml4SWQ7YS5wcmVmaXg9eCxhLmljb25OYW1lPW51KGEucHJlZml4LGEuaWNvbk5hbWUpfHxhLmljb25OYW1lfX1yZXR1cm4oYS5wcmVmaXg9PT0iZmEifHxvPT09ImZhIikmJihhLnByZWZpeD1lMygpfHwiZmFzIiksYX1mdW5jdGlvbiBDeGEoZSx0KXt2YXIgcj10Lm1peG91dHNUbztyZXR1cm4gWkp0PWUsRDk9e30sT2JqZWN0LmtleXMoQTkpLmZvckVhY2goZnVuY3Rpb24oYSl7enhhLmluZGV4T2YoYSk9PT0tMSYmZGVsZXRlIEE5W2FdfSksWkp0LmZvckVhY2goZnVuY3Rpb24oYSl7dmFyIGk9YS5taXhvdXQ/YS5taXhvdXQoKTp7fTtpZihPYmplY3Qua2V5cyhpKS5mb3JFYWNoKGZ1bmN0aW9uKG4pe3R5cGVvZiBpW25dPT0iZnVuY3Rpb24iJiYocltuXT1pW25dKSxDc2UoaVtuXSk9PT0ib2JqZWN0IiYmT2JqZWN0LmtleXMoaVtuXSkuZm9yRWFjaChmdW5jdGlvbihzKXtyW25dfHwocltuXT17fSkscltuXVtzXT1pW25dW3NdfSl9KSxhLmhvb2tzKXt2YXIgbz1hLmhvb2tzKCk7T2JqZWN0LmtleXMobykuZm9yRWFjaChmdW5jdGlvbihuKXtEOVtuXXx8KEQ5W25dPVtdKSxEOVtuXS5wdXNoKG9bbl0pfSl9YS5wcm92aWRlcyYmYS5wcm92aWRlcyhBOSl9KSxyfWZ1bmN0aW9uIE1rZShlLHQpe2Zvcih2YXIgcj1hcmd1bWVudHMubGVuZ3RoLGE9bmV3IEFycmF5KHI+Mj9yLTI6MCksaT0yO2k8cjtpKyspYVtpLTJdPWFyZ3VtZW50c1tpXTt2YXIgbz1EOVtlXXx8W107cmV0dXJuIG8uZm9yRWFjaChmdW5jdGlvbihuKXt0PW4uYXBwbHkobnVsbCxbdF0uY29uY2F0KGEpKX0pLHR9ZnVuY3Rpb24gc3UoZSl7Zm9yKHZhciB0PWFyZ3VtZW50cy5sZW5ndGgscj1uZXcgQXJyYXkodD4xP3QtMTowKSxhPTE7YTx0O2ErKylyW2EtMV09YXJndW1lbnRzW2FdO3ZhciBpPUQ5W2VdfHxbXTtpLmZvckVhY2goZnVuY3Rpb24obyl7by5hcHBseShudWxsLHIpfSl9ZnVuY3Rpb24gdDMoKXt2YXIgZT1hcmd1bWVudHNbMF0sdD1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMSk7cmV0dXJuIEE5W2VdP0E5W2VdLmFwcGx5KG51bGwsdCk6dm9pZCAwfWZ1bmN0aW9uIGtrZShlKXtlLnByZWZpeD09PSJmYSImJihlLnByZWZpeD0iZmFzIik7dmFyIHQ9ZS5pY29uTmFtZSxyPWUucHJlZml4fHxlMygpO2lmKHQpcmV0dXJuIHQ9bnUocix0KXx8dCxJSnQoWEp0LmRlZmluaXRpb25zLHIsdCl8fElKdChBcy5zdHlsZXMscix0KX1mdW5jdGlvbiAkc2UoZSx0KXtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsImFic3RyYWN0Iix7Z2V0OnR9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiaHRtbCIse2dldDpmdW5jdGlvbigpe3JldHVybiBlLmFic3RyYWN0Lm1hcChmdW5jdGlvbihhKXtyZXR1cm4gbncoYSl9KX19KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwibm9kZSIse2dldDpmdW5jdGlvbigpe2lmKFNjKXt2YXIgYT1TYS5jcmVhdGVFbGVtZW50KCJkaXYiKTtyZXR1cm4gYS5pbm5lckhUTUw9ZS5odG1sLGEuY2hpbGRyZW59fX0pLGV9ZnVuY3Rpb24gQXhhKGUpe3ZhciB0PWUuY2hpbGRyZW4scj1lLm1haW4sYT1lLm1hc2ssaT1lLmF0dHJpYnV0ZXMsbz1lLnN0eWxlcyxuPWUudHJhbnNmb3JtO2lmKG1rZShuKSYmci5mb3VuZCYmIWEuZm91bmQpe3ZhciBzPXIud2lkdGgsYz1yLmhlaWdodCxkPXt4OnMvYy8yLHk6LjV9O2kuc3R5bGU9THNlKFFlKFFlKHt9LG8pLHt9LHsidHJhbnNmb3JtLW9yaWdpbiI6IiIuY29uY2F0KGQueCtuLngvMTYsImVtICIpLmNvbmNhdChkLnkrbi55LzE2LCJlbSIpfSkpfXJldHVyblt7dGFnOiJzdmciLGF0dHJpYnV0ZXM6aSxjaGlsZHJlbjp0fV19ZnVuY3Rpb24gRXhhKGUpe3ZhciB0PWUucHJlZml4LHI9ZS5pY29uTmFtZSxhPWUuY2hpbGRyZW4saT1lLmF0dHJpYnV0ZXMsbz1lLnN5bWJvbCxuPW89PT0hMD8iIi5jb25jYXQodCwiLSIpLmNvbmNhdChTdC5jc3NQcmVmaXgsIi0iKS5jb25jYXQocik6bztyZXR1cm5be3RhZzoic3ZnIixhdHRyaWJ1dGVzOntzdHlsZToiZGlzcGxheTogbm9uZTsifSxjaGlsZHJlbjpbe3RhZzoic3ltYm9sIixhdHRyaWJ1dGVzOlFlKFFlKHt9LGkpLHt9LHtpZDpufSksY2hpbGRyZW46YX1dfV19ZnVuY3Rpb24gJHhhKGUpe3ZhciB0PVsiYXJpYS1sYWJlbCIsImFyaWEtbGFiZWxsZWRieSIsInRpdGxlIiwicm9sZSJdO3JldHVybiB0LnNvbWUoZnVuY3Rpb24ocil7cmV0dXJuIHIgaW4gZX0pfWZ1bmN0aW9uIFNrZShlKXt2YXIgdD1lLmljb25zLHI9dC5tYWluLGE9dC5tYXNrLGk9ZS5wcmVmaXgsbz1lLmljb25OYW1lLG49ZS50cmFuc2Zvcm0scz1lLnN5bWJvbCxjPWUubWFza0lkLGQ9ZS5leHRyYSxmPWUud2F0Y2hhYmxlLHU9Zj09PXZvaWQgMD8hMTpmLHA9YS5mb3VuZD9hOnIsaD1wLndpZHRoLGI9cC5oZWlnaHQseD1bU3QucmVwbGFjZW1lbnRDbGFzcyxvPyIiLmNvbmNhdChTdC5jc3NQcmVmaXgsIi0iKS5jb25jYXQobyk6IiJdLmZpbHRlcihmdW5jdGlvbihDKXtyZXR1cm4gZC5jbGFzc2VzLmluZGV4T2YoQyk9PT0tMX0pLmZpbHRlcihmdW5jdGlvbihDKXtyZXR1cm4gQyE9PSIifHwhIUN9KS5jb25jYXQoZC5jbGFzc2VzKS5qb2luKCIgIiksZz17Y2hpbGRyZW46W10sYXR0cmlidXRlczpRZShRZSh7fSxkLmF0dHJpYnV0ZXMpLHt9LHsiZGF0YS1wcmVmaXgiOmksImRhdGEtaWNvbiI6byxjbGFzczp4LHJvbGU6ZC5hdHRyaWJ1dGVzLnJvbGV8fCJpbWciLHZpZXdCb3g6IjAgMCAiLmNvbmNhdChoLCIgIikuY29uY2F0KGIpfSl9OyEkeGEoZC5hdHRyaWJ1dGVzKSYmIWQuYXR0cmlidXRlc1siYXJpYS1oaWRkZW4iXSYmKGcuYXR0cmlidXRlc1siYXJpYS1oaWRkZW4iXT0idHJ1ZSIpLHUmJihnLmF0dHJpYnV0ZXNbb3VdPSIiKTt2YXIgdj1RZShRZSh7fSxnKSx7fSx7cHJlZml4OmksaWNvbk5hbWU6byxtYWluOnIsbWFzazphLG1hc2tJZDpjLHRyYW5zZm9ybTpuLHN5bWJvbDpzLHN0eWxlczpRZSh7fSxkLnN0eWxlcyl9KSx3PWEuZm91bmQmJnIuZm91bmQ/dDMoImdlbmVyYXRlQWJzdHJhY3RNYXNrIix2KXx8e2NoaWxkcmVuOltdLGF0dHJpYnV0ZXM6e319OnQzKCJnZW5lcmF0ZUFic3RyYWN0SWNvbiIsdil8fHtjaGlsZHJlbjpbXSxhdHRyaWJ1dGVzOnt9fSxNPXcuY2hpbGRyZW4sRj13LmF0dHJpYnV0ZXM7cmV0dXJuIHYuY2hpbGRyZW49TSx2LmF0dHJpYnV0ZXM9RixzP0V4YSh2KTpBeGEodil9ZnVuY3Rpb24gUUp0KGUpe3ZhciB0PWUuY29udGVudCxyPWUud2lkdGgsYT1lLmhlaWdodCxpPWUudHJhbnNmb3JtLG89ZS5leHRyYSxuPWUud2F0Y2hhYmxlLHM9bj09PXZvaWQgMD8hMTpuLGM9UWUoUWUoe30sby5hdHRyaWJ1dGVzKSx7fSx7Y2xhc3M6by5jbGFzc2VzLmpvaW4oIiAiKX0pO3MmJihjW291XT0iIik7dmFyIGQ9UWUoe30sby5zdHlsZXMpO21rZShpKSYmKGQudHJhbnNmb3JtPXN4YSh7dHJhbnNmb3JtOmksc3RhcnRDZW50ZXJlZDohMCx3aWR0aDpyLGhlaWdodDphfSksZFsiLXdlYmtpdC10cmFuc2Zvcm0iXT1kLnRyYW5zZm9ybSk7dmFyIGY9THNlKGQpO2YubGVuZ3RoPjAmJihjLnN0eWxlPWYpO3ZhciB1PVtdO3JldHVybiB1LnB1c2goe3RhZzoic3BhbiIsYXR0cmlidXRlczpjLGNoaWxkcmVuOlt0XX0pLHV9ZnVuY3Rpb24gUHhhKGUpe3ZhciB0PWUuY29udGVudCxyPWUuZXh0cmEsYT1RZShRZSh7fSxyLmF0dHJpYnV0ZXMpLHt9LHtjbGFzczpyLmNsYXNzZXMuam9pbigiICIpfSksaT1Mc2Uoci5zdHlsZXMpO2kubGVuZ3RoPjAmJihhLnN0eWxlPWkpO3ZhciBvPVtdO3JldHVybiBvLnB1c2goe3RhZzoic3BhbiIsYXR0cmlidXRlczphLGNoaWxkcmVuOlt0XX0pLG99ZnVuY3Rpb24gQ2tlKGUpe3ZhciB0PWVbMF0scj1lWzFdLGE9ZS5zbGljZSg0KSxpPXpzZShhLDEpLG89aVswXSxuPW51bGw7cmV0dXJuIEFycmF5LmlzQXJyYXkobyk/bj17dGFnOiJnIixhdHRyaWJ1dGVzOntjbGFzczoiIi5jb25jYXQoU3QuY3NzUHJlZml4LCItIikuY29uY2F0KHBrZS5HUk9VUCl9LGNoaWxkcmVuOlt7dGFnOiJwYXRoIixhdHRyaWJ1dGVzOntjbGFzczoiIi5jb25jYXQoU3QuY3NzUHJlZml4LCItIikuY29uY2F0KHBrZS5TRUNPTkRBUlkpLGZpbGw6ImN1cnJlbnRDb2xvciIsZDpvWzBdfX0se3RhZzoicGF0aCIsYXR0cmlidXRlczp7Y2xhc3M6IiIuY29uY2F0KFN0LmNzc1ByZWZpeCwiLSIpLmNvbmNhdChwa2UuUFJJTUFSWSksZmlsbDoiY3VycmVudENvbG9yIixkOm9bMV19fV19Om49e3RhZzoicGF0aCIsYXR0cmlidXRlczp7ZmlsbDoiY3VycmVudENvbG9yIixkOm99fSx7Zm91bmQ6ITAsd2lkdGg6dCxoZWlnaHQ6cixpY29uOm59fWZ1bmN0aW9uIE54YShlLHQpeyFrSnQmJiFTdC5zaG93TWlzc2luZ0ljb25zJiZlJiZjb25zb2xlLmVycm9yKCdJY29uIHdpdGggbmFtZSAiJy5jb25jYXQoZSwnIiBhbmQgcHJlZml4ICInKS5jb25jYXQodCwnIiBpcyBtaXNzaW5nLicpKX1mdW5jdGlvbiBfa2UoZSx0KXt2YXIgcj10O3JldHVybiB0PT09ImZhIiYmU3Quc3R5bGVEZWZhdWx0IT09bnVsbCYmKHQ9ZTMoKSksbmV3IFByb21pc2UoZnVuY3Rpb24oYSxpKXtpZihyPT09ImZhIil7dmFyIG89VUp0KGUpfHx7fTtlPW8uaWNvbk5hbWV8fGUsdD1vLnByZWZpeHx8dH1pZihlJiZ0JiZ6a2VbdF0mJnprZVt0XVtlXSl7dmFyIG49emtlW3RdW2VdO3JldHVybiBhKENrZShuKSl9TnhhKGUsdCksYShRZShRZSh7fSxJeGEpLHt9LHtpY29uOlN0LnNob3dNaXNzaW5nSWNvbnMmJmU/dDMoIm1pc3NpbmdJY29uQWJzdHJhY3QiKXx8e306e319KSl9KX1mdW5jdGlvbiBlZXIoZSl7dmFyIHQ9ZS5nZXRBdHRyaWJ1dGU/ZS5nZXRBdHRyaWJ1dGUob3UpOm51bGw7cmV0dXJuIHR5cGVvZiB0PT0ic3RyaW5nIn1mdW5jdGlvbiBPeGEoZSl7dmFyIHQ9ZS5nZXRBdHRyaWJ1dGU/ZS5nZXRBdHRyaWJ1dGUoc2tlKTpudWxsLHI9ZS5nZXRBdHRyaWJ1dGU/ZS5nZXRBdHRyaWJ1dGUobGtlKTpudWxsO3JldHVybiB0JiZyfWZ1bmN0aW9uIFJ4YShlKXtyZXR1cm4gZSYmZS5jbGFzc0xpc3QmJmUuY2xhc3NMaXN0LmNvbnRhaW5zJiZlLmNsYXNzTGlzdC5jb250YWlucyhTdC5yZXBsYWNlbWVudENsYXNzKX1mdW5jdGlvbiBCeGEoKXtpZihTdC5hdXRvUmVwbGFjZVN2Zz09PSEwKXJldHVybiBJc2UucmVwbGFjZTt2YXIgZT1Jc2VbU3QuYXV0b1JlcGxhY2VTdmddO3JldHVybiBlfHxJc2UucmVwbGFjZX1mdW5jdGlvbiBIeGEoZSl7cmV0dXJuIFNhLmNyZWF0ZUVsZW1lbnROUygiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLGUpfWZ1bmN0aW9uIHF4YShlKXtyZXR1cm4gU2EuY3JlYXRlRWxlbWVudChlKX1mdW5jdGlvbiB0ZXIoZSl7dmFyIHQ9YXJndW1lbnRzLmxlbmd0aD4xJiZhcmd1bWVudHNbMV0hPT12b2lkIDA/YXJndW1lbnRzWzFdOnt9LHI9dC5jZUZuLGE9cj09PXZvaWQgMD9lLnRhZz09PSJzdmciP0h4YTpxeGE6cjtpZih0eXBlb2YgZT09InN0cmluZyIpcmV0dXJuIFNhLmNyZWF0ZVRleHROb2RlKGUpO3ZhciBpPWEoZS50YWcpO09iamVjdC5rZXlzKGUuYXR0cmlidXRlc3x8W10pLmZvckVhY2goZnVuY3Rpb24obil7aS5zZXRBdHRyaWJ1dGUobixlLmF0dHJpYnV0ZXNbbl0pfSk7dmFyIG89ZS5jaGlsZHJlbnx8W107cmV0dXJuIG8uZm9yRWFjaChmdW5jdGlvbihuKXtpLmFwcGVuZENoaWxkKHRlcihuLHtjZUZuOmF9KSl9KSxpfWZ1bmN0aW9uIGp4YShlKXt2YXIgdD0iICIuY29uY2F0KGUub3V0ZXJIVE1MLCIgIik7cmV0dXJuIHQ9IiIuY29uY2F0KHQsIkZvbnQgQXdlc29tZSBmb250YXdlc29tZS5jb20gIiksdH1mdW5jdGlvbiByZXIoZSl7ZSgpfWZ1bmN0aW9uIGFlcihlLHQpe3ZhciByPXR5cGVvZiB0PT0iZnVuY3Rpb24iP3Q6UHNlO2lmKGUubGVuZ3RoPT09MClyKCk7ZWxzZXt2YXIgYT1yZXI7U3QubXV0YXRlQXBwcm9hY2g9PT1XZ2EmJihhPUs0LnJlcXVlc3RBbmltYXRpb25GcmFtZXx8cmVyKSxhKGZ1bmN0aW9uKCl7dmFyIGk9QnhhKCksbz1Ma2UuYmVnaW4oIm11dGF0ZSIpO2UubWFwKGkpLG8oKSxyKCl9KX19ZnVuY3Rpb24gaWVyKCl7RGtlPSEwfWZ1bmN0aW9uIEFrZSgpe0RrZT0hMX1mdW5jdGlvbiBvZXIoZSl7aWYoV0t0JiZTdC5vYnNlcnZlTXV0YXRpb25zKXt2YXIgdD1lLnRyZWVDYWxsYmFjayxyPXQ9PT12b2lkIDA/UHNlOnQsYT1lLm5vZGVDYWxsYmFjayxpPWE9PT12b2lkIDA/UHNlOmEsbz1lLnBzZXVkb0VsZW1lbnRzQ2FsbGJhY2ssbj1vPT09dm9pZCAwP1BzZTpvLHM9ZS5vYnNlcnZlTXV0YXRpb25zUm9vdCxjPXM9PT12b2lkIDA/U2E6cztOc2U9bmV3IFdLdChmdW5jdGlvbihkKXtpZighRGtlKXt2YXIgZj1lMygpO0w5KGQpLmZvckVhY2goZnVuY3Rpb24odSl7aWYodS50eXBlPT09ImNoaWxkTGlzdCImJnUuYWRkZWROb2Rlcy5sZW5ndGg+MCYmIWVlcih1LmFkZGVkTm9kZXNbMF0pJiYoU3Quc2VhcmNoUHNldWRvRWxlbWVudHMmJm4odS50YXJnZXQpLHIodS50YXJnZXQpKSx1LnR5cGU9PT0iYXR0cmlidXRlcyImJnUudGFyZ2V0LnBhcmVudE5vZGUmJlN0LnNlYXJjaFBzZXVkb0VsZW1lbnRzJiZuKFt1LnRhcmdldF0sITApLHUudHlwZT09PSJhdHRyaWJ1dGVzIiYmZWVyKHUudGFyZ2V0KSYmfktnYS5pbmRleE9mKHUuYXR0cmlidXRlTmFtZSkpaWYodS5hdHRyaWJ1dGVOYW1lPT09ImNsYXNzIiYmT3hhKHUudGFyZ2V0KSl7dmFyIHA9RXNlKGhrZSh1LnRhcmdldCkpLGg9cC5wcmVmaXgsYj1wLmljb25OYW1lO3UudGFyZ2V0LnNldEF0dHJpYnV0ZShza2UsaHx8ZiksYiYmdS50YXJnZXQuc2V0QXR0cmlidXRlKGxrZSxiKX1lbHNlIFJ4YSh1LnRhcmdldCkmJmkodS50YXJnZXQpfSl9fSksU2MmJk5zZS5vYnNlcnZlKGMse2NoaWxkTGlzdDohMCxhdHRyaWJ1dGVzOiEwLGNoYXJhY3RlckRhdGE6ITAsc3VidHJlZTohMH0pfX1mdW5jdGlvbiBWeGEoKXtOc2UmJk5zZS5kaXNjb25uZWN0KCl9ZnVuY3Rpb24gVXhhKGUpe3ZhciB0PWUuZ2V0QXR0cmlidXRlKCJzdHlsZSIpLHI9W107cmV0dXJuIHQmJihyPXQuc3BsaXQoIjsiKS5yZWR1Y2UoZnVuY3Rpb24oYSxpKXt2YXIgbz1pLnNwbGl0KCI6Iiksbj1vWzBdLHM9by5zbGljZSgxKTtyZXR1cm4gbiYmcy5sZW5ndGg+MCYmKGFbbl09cy5qb2luKCI6IikudHJpbSgpKSxhfSx7fSkpLHJ9ZnVuY3Rpb24gV3hhKGUpe3ZhciB0PWUuZ2V0QXR0cmlidXRlKCJkYXRhLXByZWZpeCIpLHI9ZS5nZXRBdHRyaWJ1dGUoImRhdGEtaWNvbiIpLGE9ZS5pbm5lclRleHQhPT12b2lkIDA/ZS5pbm5lclRleHQudHJpbSgpOiIiLGk9RXNlKGhrZShlKSk7cmV0dXJuIGkucHJlZml4fHwoaS5wcmVmaXg9ZTMoKSksdCYmciYmKGkucHJlZml4PXQsaS5pY29uTmFtZT1yKSxpLmljb25OYW1lJiZpLnByZWZpeHx8KGkucHJlZml4JiZhLmxlbmd0aD4wJiYoaS5pY29uTmFtZT1neGEoaS5wcmVmaXgsZS5pbm5lclRleHQpfHx3a2UoaS5wcmVmaXgsTkp0KGUuaW5uZXJUZXh0KSkpLCFpLmljb25OYW1lJiZTdC5hdXRvRmV0Y2hTdmcmJmUuZmlyc3RDaGlsZCYmZS5maXJzdENoaWxkLm5vZGVUeXBlPT09Tm9kZS5URVhUX05PREUmJihpLmljb25OYW1lPWUuZmlyc3RDaGlsZC5kYXRhKSksaX1mdW5jdGlvbiBHeGEoZSl7dmFyIHQ9TDkoZS5hdHRyaWJ1dGVzKS5yZWR1Y2UoZnVuY3Rpb24ocixhKXtyZXR1cm4gci5uYW1lIT09ImNsYXNzIiYmci5uYW1lIT09InN0eWxlIiYmKHJbYS5uYW1lXT1hLnZhbHVlKSxyfSx7fSk7cmV0dXJuIHR9ZnVuY3Rpb24gWXhhKCl7cmV0dXJue2ljb25OYW1lOm51bGwscHJlZml4Om51bGwsdHJhbnNmb3JtOmxsLHN5bWJvbDohMSxtYXNrOntpY29uTmFtZTpudWxsLHByZWZpeDpudWxsLHJlc3Q6W119LG1hc2tJZDpudWxsLGV4dHJhOntjbGFzc2VzOltdLHN0eWxlczp7fSxhdHRyaWJ1dGVzOnt9fX19ZnVuY3Rpb24gbmVyKGUpe3ZhciB0PWFyZ3VtZW50cy5sZW5ndGg+MSYmYXJndW1lbnRzWzFdIT09dm9pZCAwP2FyZ3VtZW50c1sxXTp7c3R5bGVQYXJzZXI6ITB9LHI9V3hhKGUpLGE9ci5pY29uTmFtZSxpPXIucHJlZml4LG89ci5yZXN0LG49R3hhKGUpLHM9TWtlKCJwYXJzZU5vZGVBdHRyaWJ1dGVzIix7fSxlKSxjPXQuc3R5bGVQYXJzZXI/VXhhKGUpOltdO3JldHVybiBRZSh7aWNvbk5hbWU6YSxwcmVmaXg6aSx0cmFuc2Zvcm06bGwsbWFzazp7aWNvbk5hbWU6bnVsbCxwcmVmaXg6bnVsbCxyZXN0OltdfSxtYXNrSWQ6bnVsbCxzeW1ib2w6ITEsZXh0cmE6e2NsYXNzZXM6byxzdHlsZXM6YyxhdHRyaWJ1dGVzOm59fSxzKX1mdW5jdGlvbiBzZXIoZSl7dmFyIHQ9U3QuYXV0b1JlcGxhY2VTdmc9PT0ibmVzdCI/bmVyKGUse3N0eWxlUGFyc2VyOiExfSk6bmVyKGUpO3JldHVybn50LmV4dHJhLmNsYXNzZXMuaW5kZXhPZihDSnQpP3QzKCJnZW5lcmF0ZUxheWVyc1RleHQiLGUsdCk6dDMoImdlbmVyYXRlU3ZnUmVwbGFjZW1lbnRNdXRhdGlvbiIsZSx0KX1mdW5jdGlvbiBYeGEoKXtyZXR1cm5bXS5jb25jYXQoRHMoaEp0KSxEcyh4SnQpKX1mdW5jdGlvbiBsZXIoZSl7dmFyIHQ9YXJndW1lbnRzLmxlbmd0aD4xJiZhcmd1bWVudHNbMV0hPT12b2lkIDA/YXJndW1lbnRzWzFdOm51bGw7aWYoIVNjKXJldHVybiBQcm9taXNlLnJlc29sdmUoKTt2YXIgcj1TYS5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LGE9ZnVuY3Rpb24odSl7cmV0dXJuIHIuYWRkKCIiLmNvbmNhdCh3SnQsIi0iKS5jb25jYXQodSkpfSxpPWZ1bmN0aW9uKHUpe3JldHVybiByLnJlbW92ZSgiIi5jb25jYXQod0p0LCItIikuY29uY2F0KHUpKX0sbz1TdC5hdXRvRmV0Y2hTdmc/WHhhKCk6Wkt0LmNvbmNhdChPYmplY3Qua2V5cyhaeGEpKTtvLmluY2x1ZGVzKCJmYSIpfHxvLnB1c2goImZhIik7dmFyIG49WyIuIi5jb25jYXQoQ0p0LCI6bm90KFsiKS5jb25jYXQob3UsIl0pIildLmNvbmNhdChvLm1hcChmdW5jdGlvbihmKXtyZXR1cm4iLiIuY29uY2F0KGYsIjpub3QoWyIpLmNvbmNhdChvdSwiXSkiKX0pKS5qb2luKCIsICIpO2lmKG4ubGVuZ3RoPT09MClyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7dmFyIHM9W107dHJ5e3M9TDkoZS5xdWVyeVNlbGVjdG9yQWxsKG4pKX1jYXRjaHt9aWYocy5sZW5ndGg+MClhKCJwZW5kaW5nIiksaSgiY29tcGxldGUiKTtlbHNlIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTt2YXIgYz1Ma2UuYmVnaW4oIm9uVHJlZSIpLGQ9cy5yZWR1Y2UoZnVuY3Rpb24oZix1KXt0cnl7dmFyIHA9c2VyKHUpO3AmJmYucHVzaChwKX1jYXRjaChoKXtrSnR8fGgubmFtZT09PSJNaXNzaW5nSWNvbiImJmNvbnNvbGUuZXJyb3IoaCl9cmV0dXJuIGZ9LFtdKTtyZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24oZix1KXtQcm9taXNlLmFsbChkKS50aGVuKGZ1bmN0aW9uKHApe2FlcihwLGZ1bmN0aW9uKCl7YSgiYWN0aXZlIiksYSgiY29tcGxldGUiKSxpKCJwZW5kaW5nIiksdHlwZW9mIHQ9PSJmdW5jdGlvbiImJnQoKSxjKCksZigpfSl9KS5jYXRjaChmdW5jdGlvbihwKXtjKCksdShwKX0pfSl9ZnVuY3Rpb24gUXhhKGUpe3ZhciB0PWFyZ3VtZW50cy5sZW5ndGg+MSYmYXJndW1lbnRzWzFdIT09dm9pZCAwP2FyZ3VtZW50c1sxXTpudWxsO3NlcihlKS50aGVuKGZ1bmN0aW9uKHIpe3ImJmFlcihbcl0sdCl9KX1mdW5jdGlvbiBLeGEoZSl7cmV0dXJuIGZ1bmN0aW9uKHQpe3ZhciByPWFyZ3VtZW50cy5sZW5ndGg+MSYmYXJndW1lbnRzWzFdIT09dm9pZCAwP2FyZ3VtZW50c1sxXTp7fSxhPSh0fHx7fSkuaWNvbj90OmtrZSh0fHx7fSksaT1yLm1hc2s7cmV0dXJuIGkmJihpPShpfHx7fSkuaWNvbj9pOmtrZShpfHx7fSkpLGUoYSxRZShRZSh7fSxyKSx7fSx7bWFzazppfSkpfX1mdW5jdGlvbiBvYmEoZSl7dmFyIHQ9ZS5yZXBsYWNlKGNlciwiIik7cmV0dXJuIE5KdChEcyh0KVswXXx8IiIpfWZ1bmN0aW9uIG5iYShlKXt2YXIgdD1lLmdldFByb3BlcnR5VmFsdWUoImZvbnQtZmVhdHVyZS1zZXR0aW5ncyIpLmluY2x1ZGVzKCJzczAxIikscj1lLmdldFByb3BlcnR5VmFsdWUoImNvbnRlbnQiKSxhPXIucmVwbGFjZShjZXIsIiIpLGk9YS5jb2RlUG9pbnRBdCgwKSxvPWk+PWRlclswXSYmaTw9ZGVyWzFdLG49YS5sZW5ndGg9PT0yP2FbMF09PT1hWzFdOiExO3JldHVybiBvfHxufHx0fWZ1bmN0aW9uIHNiYShlLHQpe3ZhciByPWUucmVwbGFjZSgvXlsnIl18WyciXSQvZywiIikudG9Mb3dlckNhc2UoKSxhPXBhcnNlSW50KHQpLGk9aXNOYU4oYSk/Im5vcm1hbCI6YTtyZXR1cm4oRWtlW3JdfHx7fSlbaV18fGliYVtyXX1mdW5jdGlvbiBmZXIoZSx0KXt2YXIgcj0iIi5jb25jYXQoVWdhKS5jb25jYXQodC5yZXBsYWNlKCI6IiwiLSIpKTtyZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24oYSxpKXtpZihlLmdldEF0dHJpYnV0ZShyKSE9PW51bGwpcmV0dXJuIGEoKTt2YXIgbz1MOShlLmNoaWxkcmVuKSxuPW8uZmlsdGVyKGZ1bmN0aW9uKGspe3JldHVybiBrLmdldEF0dHJpYnV0ZShua2UpPT09dH0pWzBdLHM9SzQuZ2V0Q29tcHV0ZWRTdHlsZShlLHQpLGM9cy5nZXRQcm9wZXJ0eVZhbHVlKCJmb250LWZhbWlseSIpLGQ9Yy5tYXRjaChYZ2EpLGY9cy5nZXRQcm9wZXJ0eVZhbHVlKCJmb250LXdlaWdodCIpLHU9cy5nZXRQcm9wZXJ0eVZhbHVlKCJjb250ZW50Iik7aWYobiYmIWQpcmV0dXJuIGUucmVtb3ZlQ2hpbGQobiksYSgpO2lmKGQmJnUhPT0ibm9uZSImJnUhPT0iIil7dmFyIHA9cy5nZXRQcm9wZXJ0eVZhbHVlKCJjb250ZW50IiksaD1zYmEoYyxmKSxiPW9iYShwKSx4PWRbMF0uc3RhcnRzV2l0aCgiRm9udEF3ZXNvbWUiKSxnPW5iYShzKSx2PXdrZShoLGIpLHc9djtpZih4KXt2YXIgTT14eGEoYik7TS5pY29uTmFtZSYmTS5wcmVmaXgmJih2PU0uaWNvbk5hbWUsaD1NLnByZWZpeCl9aWYodiYmIWcmJighbnx8bi5nZXRBdHRyaWJ1dGUoc2tlKSE9PWh8fG4uZ2V0QXR0cmlidXRlKGxrZSkhPT13KSl7ZS5zZXRBdHRyaWJ1dGUocix3KSxuJiZlLnJlbW92ZUNoaWxkKG4pO3ZhciBGPVl4YSgpLEM9Ri5leHRyYTtDLmF0dHJpYnV0ZXNbbmtlXT10LF9rZSh2LGgpLnRoZW4oZnVuY3Rpb24oayl7dmFyIE49U2tlKFFlKFFlKHt9LEYpLHt9LHtpY29uczp7bWFpbjprLG1hc2s6V0p0KCl9LHByZWZpeDpoLGljb25OYW1lOncsZXh0cmE6Qyx3YXRjaGFibGU6ITB9KSksJD1TYS5jcmVhdGVFbGVtZW50TlMoImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiwic3ZnIik7dD09PSI6OmJlZm9yZSI/ZS5pbnNlcnRCZWZvcmUoJCxlLmZpcnN0Q2hpbGQpOmUuYXBwZW5kQ2hpbGQoJCksJC5vdXRlckhUTUw9Ti5tYXAoZnVuY3Rpb24oSSl7cmV0dXJuIG53KEkpfSkuam9pbihgCmApLGUucmVtb3ZlQXR0cmlidXRlKHIpLGEoKX0pLmNhdGNoKGkpfWVsc2UgYSgpfWVsc2UgYSgpfSl9ZnVuY3Rpb24gbGJhKGUpe3JldHVybiBQcm9taXNlLmFsbChbZmVyKGUsIjo6YmVmb3JlIiksZmVyKGUsIjo6YWZ0ZXIiKV0pfWZ1bmN0aW9uIGNiYShlKXtyZXR1cm4gZS5wYXJlbnROb2RlIT09ZG9jdW1lbnQuaGVhZCYmIX5HZ2EuaW5kZXhPZihlLnRhZ05hbWUudG9VcHBlckNhc2UoKSkmJiFlLmdldEF0dHJpYnV0ZShua2UpJiYoIWUucGFyZW50Tm9kZXx8ZS5wYXJlbnROb2RlLnRhZ05hbWUhPT0ic3ZnIil9ZnVuY3Rpb24gcGVyKGUpe3ZhciB0PWFyZ3VtZW50cy5sZW5ndGg+MSYmYXJndW1lbnRzWzFdIT09dm9pZCAwP2FyZ3VtZW50c1sxXTohMTtpZihTYyl7dmFyIHI7aWYodClyPWU7ZWxzZSBpZihTdC5zZWFyY2hQc2V1ZG9FbGVtZW50c0Z1bGxTY2FuKXI9ZS5xdWVyeVNlbGVjdG9yQWxsKCIqIik7ZWxzZXt2YXIgYT1uZXcgU2V0LGk9a3NlKGRvY3VtZW50LnN0eWxlU2hlZXRzKSxvO3RyeXtmb3IoaS5zKCk7IShvPWkubigpKS5kb25lOyl7dmFyIG49by52YWx1ZTt0cnl7dmFyIHM9a3NlKG4uY3NzUnVsZXMpLGM7dHJ5e2ZvcihzLnMoKTshKGM9cy5uKCkpLmRvbmU7KXt2YXIgZD1jLnZhbHVlLGY9dWJhKGQuc2VsZWN0b3JUZXh0KSx1PWtzZShmKSxwO3RyeXtmb3IodS5zKCk7IShwPXUubigpKS5kb25lOyl7dmFyIGg9cC52YWx1ZTthLmFkZChoKX19Y2F0Y2goeCl7dS5lKHgpfWZpbmFsbHl7dS5mKCl9fX1jYXRjaCh4KXtzLmUoeCl9ZmluYWxseXtzLmYoKX19Y2F0Y2goeCl7U3Quc2VhcmNoUHNldWRvRWxlbWVudHNXYXJuaW5ncyYmY29uc29sZS53YXJuKCJGb250IEF3ZXNvbWU6IGNhbm5vdCBwYXJzZSBzdHlsZXNoZWV0OiAiLmNvbmNhdChuLmhyZWYsIiAoIikuY29uY2F0KHgubWVzc2FnZSxgKQpJZiBpdCBkZWNsYXJlcyBhbnkgRm9udCBBd2Vzb21lIENTUyBwc2V1ZG8tZWxlbWVudHMsIHRoZXkgd2lsbCBub3QgYmUgcmVuZGVyZWQgYXMgU1ZHIGljb25zLiBBZGQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgdG8gdGhlIDxsaW5rPiwgZW5hYmxlIHNlYXJjaFBzZXVkb0VsZW1lbnRzRnVsbFNjYW4gZm9yIHNsb3dlciBidXQgbW9yZSB0aG9yb3VnaCBET00gcGFyc2luZywgb3Igc3VwcHJlc3MgdGhpcyB3YXJuaW5nIGJ5IHNldHRpbmcgc2VhcmNoUHNldWRvRWxlbWVudHNXYXJuaW5ncyB0byBmYWxzZS5gKSl9fX1jYXRjaCh4KXtpLmUoeCl9ZmluYWxseXtpLmYoKX1pZighYS5zaXplKXJldHVybjt2YXIgYj1BcnJheS5mcm9tKGEpLmpvaW4oIiwgIik7dHJ5e3I9ZS5xdWVyeVNlbGVjdG9yQWxsKGIpfWNhdGNoe319cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHgsZyl7dmFyIHY9TDkocikuZmlsdGVyKGNiYSkubWFwKGxiYSksdz1Ma2UuYmVnaW4oInNlYXJjaFBzZXVkb0VsZW1lbnRzIik7aWVyKCksUHJvbWlzZS5hbGwodikudGhlbihmdW5jdGlvbigpe3coKSxBa2UoKSx4KCl9KS5jYXRjaChmdW5jdGlvbigpe3coKSxBa2UoKSxnKCl9KX0pfX1mdW5jdGlvbiBnZXIoZSl7dmFyIHQ9YXJndW1lbnRzLmxlbmd0aD4xJiZhcmd1bWVudHNbMV0hPT12b2lkIDA/YXJndW1lbnRzWzFdOiEwO3JldHVybiBlLmF0dHJpYnV0ZXMmJihlLmF0dHJpYnV0ZXMuZmlsbHx8dCkmJihlLmF0dHJpYnV0ZXMuZmlsbD0iYmxhY2siKSxlfWZ1bmN0aW9uIG1iYShlKXtyZXR1cm4gZS50YWc9PT0iZyI/ZS5jaGlsZHJlbjpbZV19dmFyIEJLdCx0a2UsSEt0LHFLdCxqS3QscDlhLFZLdCxVS3QsSzQsU2EsV0t0LF9zZSxxUzEsU2MsR0t0LHJrZSxoOWEsbTlhLFlLdCxnOWEsWkt0LHAxLHJ3LFhLdCxRS3QsS0t0LEpLdCxlSnQsdEp0LHJKdCxhSnQsaUp0LG9KdCxuSnQsc0p0LGxKdCxjSnQsZEp0LHVKdCxmSnQseDlhLGI5YSx2OWEseTlhLHc5YSxNOWEsazlhLFM5YSx6OWEsQzlhLF85YSxUOWEsTDlhLEQ5YSxBOWEsRTlhLCQ5YSxQOWEsSTlhLHBKdCxqUzEsTjlhLEY5YSxPOWEsUjlhLGhKdCxtSnQsQjlhLEg5YSxxOWEsajlhLFY5YSxWUzEsVTlhLFc5YSxHOWEsZ0p0LGFrZSxUc2UsWTlhLFo5YSxYOWEsUTlhLEs5YSxKOWEsZWdhLHRnYSxyZ2EsYWdhLGlnYSxvZ2EsbmdhLHNnYSxsZ2EsY2dhLGRnYSx1Z2EsZmdhLHBnYSxoZ2EsbWdhLGdnYSx4Z2EsYmdhLHZnYSx5Z2Esd2dhLE1nYSxrZ2EsU2dhLHpnYSxDZ2EsX2dhLFRnYSxMZ2EsRGdhLEFnYSxFZ2EsVVMxLCRnYSxQZ2EsSWdhLE5nYSxXUzEsRmdhLE9nYSxpa2UsUmdhLHhKdCxCZ2EsYkp0LEhnYSxxZ2EsamdhLFZnYSx6Yyxva2Usdkp0LHlKdCxvdSxua2UsVWdhLHNrZSxsa2Usd0p0LFdnYSxHZ2EsTUp0LGtKdCxTSnQsWWdhLGNrZSx6SnQsZGtlLHVrZSxma2UsR1MxLFpnYSxDSnQsWGdhLFFnYSxZUzEsS2dhLHBrZSxKZ2EsaXcsVEp0LFQ5LFN0LG93LEo0LGxsLGl4YSxseGEsRUp0LGN4YSxDYyxBcywkSnQsUEp0LERzZSx1eGEseGtlLHZrZSxFcyxaUzEsWFMxLHN3LGZ4YSxPSnQscHhhLHlrZSxSSnQsQkp0LEhKdCxxSnQsakp0LFZKdCxXSnQsWUp0LHd4YSxNeGEsU3hhLFpKdCxEOSxBOSx6eGEsWEp0LF94YSxUeGEsTHhhLE5vLER4YSx6a2UsSXhhLEtKdCxUa2UsbHcsRnhhLEpKdCxMa2UsUHNlLElzZSxEa2UsTnNlLFp4YSxKeGEsZWJhLHRiYSxyYmEsYWJhLGNlcixkZXIsdWVyLEVrZSxpYmEsZGJhLHViYSxmYmEsaGVyLHBiYSxtZXIsaGJhLCRrZSxnYmEseGJhLGJiYSx2YmEseWJhLHdiYSxNYmEsa2JhLFNiYSx6YmEsQ2JhLFBrZSxfYmEsVGJhLExiYSxfSnQseGVyPWwoKCk9PntCS3Q9ZnVuY3Rpb24oKXt9LHRrZT17fSxIS3Q9e30scUt0PW51bGwsakt0PXttYXJrOkJLdCxtZWFzdXJlOkJLdH07dHJ5e3R5cGVvZiB3aW5kb3c8InUiJiYodGtlPXdpbmRvdyksdHlwZW9mIGRvY3VtZW50PCJ1IiYmKEhLdD1kb2N1bWVudCksdHlwZW9mIE11dGF0aW9uT2JzZXJ2ZXI8InUiJiYocUt0PU11dGF0aW9uT2JzZXJ2ZXIpLHR5cGVvZiBwZXJmb3JtYW5jZTwidSImJihqS3Q9cGVyZm9ybWFuY2UpfWNhdGNoe31wOWE9dGtlLm5hdmlnYXRvcnx8e30sVkt0PXA5YS51c2VyQWdlbnQsVUt0PVZLdD09PXZvaWQgMD8iIjpWS3QsSzQ9dGtlLFNhPUhLdCxXS3Q9cUt0LF9zZT1qS3QscVMxPSEhSzQuZG9jdW1lbnQsU2M9ISFTYS5kb2N1bWVudEVsZW1lbnQmJiEhU2EuaGVhZCYmdHlwZW9mIFNhLmFkZEV2ZW50TGlzdGVuZXI9PSJmdW5jdGlvbiImJnR5cGVvZiBTYS5jcmVhdGVFbGVtZW50PT0iZnVuY3Rpb24iLEdLdD1+VUt0LmluZGV4T2YoIk1TSUUiKXx8flVLdC5pbmRleE9mKCJUcmlkZW50LyIpLGg5YT0vZmEoa3xrZHxzfHJ8bHx0fGR8ZHJ8ZGx8ZHR8YnxzbHJ8c2xwcnx3c2J8dGx8bnN8bmRzfGVzfGd0fGpyfGpmcnxqZHJ8dXNifHVmc2J8dWRzYnxjcnxzc3xzcnxzbHxzdHxzZHN8c2RyfHNkbHxzZHQpP1tcLVwgXS8sbTlhPS9Gb250ID9Bd2Vzb21lID8oWzU2NyBdKikoU29saWR8UmVndWxhcnxMaWdodHxUaGlufER1b3RvbmV8QnJhbmRzfEZyZWV8UHJvfFNoYXJwIER1b3RvbmV8U2hhcnB8S2l0fE5vdGRvZyBEdW98Tm90ZG9nfENoaXNlbHxFdGNofEdyYXBoaXRlfFRodW1icHJpbnR8SmVsbHkgRmlsbHxKZWxseSBEdW98SmVsbHl8VXRpbGl0eXxVdGlsaXR5IEZpbGx8VXRpbGl0eSBEdW98U2xhYiBQcmVzc3xTbGFifFdoaXRlYm9hcmQpPy4qL2ksWUt0PXtjbGFzc2ljOntmYToic29saWQiLGZhczoic29saWQiLCJmYS1zb2xpZCI6InNvbGlkIixmYXI6InJlZ3VsYXIiLCJmYS1yZWd1bGFyIjoicmVndWxhciIsZmFsOiJsaWdodCIsImZhLWxpZ2h0IjoibGlnaHQiLGZhdDoidGhpbiIsImZhLXRoaW4iOiJ0aGluIixmYWI6ImJyYW5kcyIsImZhLWJyYW5kcyI6ImJyYW5kcyJ9LGR1b3RvbmU6e2ZhOiJzb2xpZCIsZmFkOiJzb2xpZCIsImZhLXNvbGlkIjoic29saWQiLCJmYS1kdW90b25lIjoic29saWQiLGZhZHI6InJlZ3VsYXIiLCJmYS1yZWd1bGFyIjoicmVndWxhciIsZmFkbDoibGlnaHQiLCJmYS1saWdodCI6ImxpZ2h0IixmYWR0OiJ0aGluIiwiZmEtdGhpbiI6InRoaW4ifSxzaGFycDp7ZmE6InNvbGlkIixmYXNzOiJzb2xpZCIsImZhLXNvbGlkIjoic29saWQiLGZhc3I6InJlZ3VsYXIiLCJmYS1yZWd1bGFyIjoicmVndWxhciIsZmFzbDoibGlnaHQiLCJmYS1saWdodCI6ImxpZ2h0IixmYXN0OiJ0aGluIiwiZmEtdGhpbiI6InRoaW4ifSwic2hhcnAtZHVvdG9uZSI6e2ZhOiJzb2xpZCIsZmFzZHM6InNvbGlkIiwiZmEtc29saWQiOiJzb2xpZCIsZmFzZHI6InJlZ3VsYXIiLCJmYS1yZWd1bGFyIjoicmVndWxhciIsZmFzZGw6ImxpZ2h0IiwiZmEtbGlnaHQiOiJsaWdodCIsZmFzZHQ6InRoaW4iLCJmYS10aGluIjoidGhpbiJ9LHNsYWI6eyJmYS1yZWd1bGFyIjoicmVndWxhciIsZmFzbHI6InJlZ3VsYXIifSwic2xhYi1wcmVzcyI6eyJmYS1yZWd1bGFyIjoicmVndWxhciIsZmFzbHByOiJyZWd1bGFyIn0sdGh1bWJwcmludDp7ImZhLWxpZ2h0IjoibGlnaHQiLGZhdGw6ImxpZ2h0In0sd2hpdGVib2FyZDp7ImZhLXNlbWlib2xkIjoic2VtaWJvbGQiLGZhd3NiOiJzZW1pYm9sZCJ9LG5vdGRvZzp7ImZhLXNvbGlkIjoic29saWQiLGZhbnM6InNvbGlkIn0sIm5vdGRvZy1kdW8iOnsiZmEtc29saWQiOiJzb2xpZCIsZmFuZHM6InNvbGlkIn0sZXRjaDp7ImZhLXNvbGlkIjoic29saWQiLGZhZXM6InNvbGlkIn0sZ3JhcGhpdGU6eyJmYS10aGluIjoidGhpbiIsZmFndDoidGhpbiJ9LGplbGx5OnsiZmEtcmVndWxhciI6InJlZ3VsYXIiLGZhanI6InJlZ3VsYXIifSwiamVsbHktZmlsbCI6eyJmYS1yZWd1bGFyIjoicmVndWxhciIsZmFqZnI6InJlZ3VsYXIifSwiamVsbHktZHVvIjp7ImZhLXJlZ3VsYXIiOiJyZWd1bGFyIixmYWpkcjoicmVndWxhciJ9LGNoaXNlbDp7ImZhLXJlZ3VsYXIiOiJyZWd1bGFyIixmYWNyOiJyZWd1bGFyIn0sdXRpbGl0eTp7ImZhLXNlbWlib2xkIjoic2VtaWJvbGQiLGZhdXNiOiJzZW1pYm9sZCJ9LCJ1dGlsaXR5LWR1byI6eyJmYS1zZW1pYm9sZCI6InNlbWlib2xkIixmYXVkc2I6InNlbWlib2xkIn0sInV0aWxpdHktZmlsbCI6eyJmYS1zZW1pYm9sZCI6InNlbWlib2xkIixmYXVmc2I6InNlbWlib2xkIn19LGc5YT17R1JPVVA6ImR1b3RvbmUtZ3JvdXAiLFNXQVBfT1BBQ0lUWToic3dhcC1vcGFjaXR5IixQUklNQVJZOiJwcmltYXJ5IixTRUNPTkRBUlk6InNlY29uZGFyeSJ9LFpLdD1bImZhLWNsYXNzaWMiLCJmYS1kdW90b25lIiwiZmEtc2hhcnAiLCJmYS1zaGFycC1kdW90b25lIiwiZmEtdGh1bWJwcmludCIsImZhLXdoaXRlYm9hcmQiLCJmYS1ub3Rkb2ciLCJmYS1ub3Rkb2ctZHVvIiwiZmEtY2hpc2VsIiwiZmEtZXRjaCIsImZhLWdyYXBoaXRlIiwiZmEtamVsbHkiLCJmYS1qZWxseS1maWxsIiwiZmEtamVsbHktZHVvIiwiZmEtc2xhYiIsImZhLXNsYWItcHJlc3MiLCJmYS11dGlsaXR5IiwiZmEtdXRpbGl0eS1kdW8iLCJmYS11dGlsaXR5LWZpbGwiXSxwMT0iY2xhc3NpYyIscnc9ImR1b3RvbmUiLFhLdD0ic2hhcnAiLFFLdD0ic2hhcnAtZHVvdG9uZSIsS0t0PSJjaGlzZWwiLEpLdD0iZXRjaCIsZUp0PSJncmFwaGl0ZSIsdEp0PSJqZWxseSIsckp0PSJqZWxseS1kdW8iLGFKdD0iamVsbHktZmlsbCIsaUp0PSJub3Rkb2ciLG9KdD0ibm90ZG9nLWR1byIsbkp0PSJzbGFiIixzSnQ9InNsYWItcHJlc3MiLGxKdD0idGh1bWJwcmludCIsY0p0PSJ1dGlsaXR5IixkSnQ9InV0aWxpdHktZHVvIix1SnQ9InV0aWxpdHktZmlsbCIsZkp0PSJ3aGl0ZWJvYXJkIix4OWE9IkNsYXNzaWMiLGI5YT0iRHVvdG9uZSIsdjlhPSJTaGFycCIseTlhPSJTaGFycCBEdW90b25lIix3OWE9IkNoaXNlbCIsTTlhPSJFdGNoIixrOWE9IkdyYXBoaXRlIixTOWE9IkplbGx5Iix6OWE9IkplbGx5IER1byIsQzlhPSJKZWxseSBGaWxsIixfOWE9Ik5vdGRvZyIsVDlhPSJOb3Rkb2cgRHVvIixMOWE9IlNsYWIiLEQ5YT0iU2xhYiBQcmVzcyIsQTlhPSJUaHVtYnByaW50IixFOWE9IlV0aWxpdHkiLCQ5YT0iVXRpbGl0eSBEdW8iLFA5YT0iVXRpbGl0eSBGaWxsIixJOWE9IldoaXRlYm9hcmQiLHBKdD1bcDEscncsWEt0LFFLdCxLS3QsSkt0LGVKdCx0SnQsckp0LGFKdCxpSnQsb0p0LG5KdCxzSnQsbEp0LGNKdCxkSnQsdUp0LGZKdF0salMxPShya2U9e30sanQoanQoanQoanQoanQoanQoanQoanQoanQoanQocmtlLHAxLHg5YSkscncsYjlhKSxYS3QsdjlhKSxRS3QseTlhKSxLS3QsdzlhKSxKS3QsTTlhKSxlSnQsazlhKSx0SnQsUzlhKSxySnQsejlhKSxhSnQsQzlhKSxqdChqdChqdChqdChqdChqdChqdChqdChqdChya2UsaUp0LF85YSksb0p0LFQ5YSksbkp0LEw5YSksc0p0LEQ5YSksbEp0LEE5YSksY0p0LEU5YSksZEp0LCQ5YSksdUp0LFA5YSksZkp0LEk5YSkpLE45YT17Y2xhc3NpYzp7OTAwOiJmYXMiLDQwMDoiZmFyIixub3JtYWw6ImZhciIsMzAwOiJmYWwiLDEwMDoiZmF0In0sZHVvdG9uZTp7OTAwOiJmYWQiLDQwMDoiZmFkciIsMzAwOiJmYWRsIiwxMDA6ImZhZHQifSxzaGFycDp7OTAwOiJmYXNzIiw0MDA6ImZhc3IiLDMwMDoiZmFzbCIsMTAwOiJmYXN0In0sInNoYXJwLWR1b3RvbmUiOns5MDA6ImZhc2RzIiw0MDA6ImZhc2RyIiwzMDA6ImZhc2RsIiwxMDA6ImZhc2R0In0sc2xhYjp7NDAwOiJmYXNsciJ9LCJzbGFiLXByZXNzIjp7NDAwOiJmYXNscHIifSx3aGl0ZWJvYXJkOns2MDA6ImZhd3NiIn0sdGh1bWJwcmludDp7MzAwOiJmYXRsIn0sbm90ZG9nOns5MDA6ImZhbnMifSwibm90ZG9nLWR1byI6ezkwMDoiZmFuZHMifSxldGNoOns5MDA6ImZhZXMifSxncmFwaGl0ZTp7MTAwOiJmYWd0In0sY2hpc2VsOns0MDA6ImZhY3IifSxqZWxseTp7NDAwOiJmYWpyIn0sImplbGx5LWZpbGwiOns0MDA6ImZhamZyIn0sImplbGx5LWR1byI6ezQwMDoiZmFqZHIifSx1dGlsaXR5Ons2MDA6ImZhdXNiIn0sInV0aWxpdHktZHVvIjp7NjAwOiJmYXVkc2IifSwidXRpbGl0eS1maWxsIjp7NjAwOiJmYXVmc2IifX0sRjlhPXsiRm9udCBBd2Vzb21lIDcgRnJlZSI6ezkwMDoiZmFzIiw0MDA6ImZhciJ9LCJGb250IEF3ZXNvbWUgNyBQcm8iOns5MDA6ImZhcyIsNDAwOiJmYXIiLG5vcm1hbDoiZmFyIiwzMDA6ImZhbCIsMTAwOiJmYXQifSwiRm9udCBBd2Vzb21lIDcgQnJhbmRzIjp7NDAwOiJmYWIiLG5vcm1hbDoiZmFiIn0sIkZvbnQgQXdlc29tZSA3IER1b3RvbmUiOns5MDA6ImZhZCIsNDAwOiJmYWRyIixub3JtYWw6ImZhZHIiLDMwMDoiZmFkbCIsMTAwOiJmYWR0In0sIkZvbnQgQXdlc29tZSA3IFNoYXJwIjp7OTAwOiJmYXNzIiw0MDA6ImZhc3IiLG5vcm1hbDoiZmFzciIsMzAwOiJmYXNsIiwxMDA6ImZhc3QifSwiRm9udCBBd2Vzb21lIDcgU2hhcnAgRHVvdG9uZSI6ezkwMDoiZmFzZHMiLDQwMDoiZmFzZHIiLG5vcm1hbDoiZmFzZHIiLDMwMDoiZmFzZGwiLDEwMDoiZmFzZHQifSwiRm9udCBBd2Vzb21lIDcgSmVsbHkiOns0MDA6ImZhanIiLG5vcm1hbDoiZmFqciJ9LCJGb250IEF3ZXNvbWUgNyBKZWxseSBGaWxsIjp7NDAwOiJmYWpmciIsbm9ybWFsOiJmYWpmciJ9LCJGb250IEF3ZXNvbWUgNyBKZWxseSBEdW8iOns0MDA6ImZhamRyIixub3JtYWw6ImZhamRyIn0sIkZvbnQgQXdlc29tZSA3IFNsYWIiOns0MDA6ImZhc2xyIixub3JtYWw6ImZhc2xyIn0sIkZvbnQgQXdlc29tZSA3IFNsYWIgUHJlc3MiOns0MDA6ImZhc2xwciIsbm9ybWFsOiJmYXNscHIifSwiRm9udCBBd2Vzb21lIDcgVGh1bWJwcmludCI6ezMwMDoiZmF0bCIsbm9ybWFsOiJmYXRsIn0sIkZvbnQgQXdlc29tZSA3IE5vdGRvZyI6ezkwMDoiZmFucyIsbm9ybWFsOiJmYW5zIn0sIkZvbnQgQXdlc29tZSA3IE5vdGRvZyBEdW8iOns5MDA6ImZhbmRzIixub3JtYWw6ImZhbmRzIn0sIkZvbnQgQXdlc29tZSA3IEV0Y2giOns5MDA6ImZhZXMiLG5vcm1hbDoiZmFlcyJ9LCJGb250IEF3ZXNvbWUgNyBHcmFwaGl0ZSI6ezEwMDoiZmFndCIsbm9ybWFsOiJmYWd0In0sIkZvbnQgQXdlc29tZSA3IENoaXNlbCI6ezQwMDoiZmFjciIsbm9ybWFsOiJmYWNyIn0sIkZvbnQgQXdlc29tZSA3IFdoaXRlYm9hcmQiOns2MDA6ImZhd3NiIixub3JtYWw6ImZhd3NiIn0sIkZvbnQgQXdlc29tZSA3IFV0aWxpdHkiOns2MDA6ImZhdXNiIixub3JtYWw6ImZhdXNiIn0sIkZvbnQgQXdlc29tZSA3IFV0aWxpdHkgRHVvIjp7NjAwOiJmYXVkc2IiLG5vcm1hbDoiZmF1ZHNiIn0sIkZvbnQgQXdlc29tZSA3IFV0aWxpdHkgRmlsbCI6ezYwMDoiZmF1ZnNiIixub3JtYWw6ImZhdWZzYiJ9fSxPOWE9bmV3IE1hcChbWyJjbGFzc2ljIix7ZGVmYXVsdFNob3J0UHJlZml4SWQ6ImZhcyIsZGVmYXVsdFN0eWxlSWQ6InNvbGlkIixzdHlsZUlkczpbInNvbGlkIiwicmVndWxhciIsImxpZ2h0IiwidGhpbiIsImJyYW5kcyJdLGZ1dHVyZVN0eWxlSWRzOltdLGRlZmF1bHRGb250V2VpZ2h0OjkwMH1dLFsiZHVvdG9uZSIse2RlZmF1bHRTaG9ydFByZWZpeElkOiJmYWQiLGRlZmF1bHRTdHlsZUlkOiJzb2xpZCIsc3R5bGVJZHM6WyJzb2xpZCIsInJlZ3VsYXIiLCJsaWdodCIsInRoaW4iXSxmdXR1cmVTdHlsZUlkczpbXSxkZWZhdWx0Rm9udFdlaWdodDo5MDB9XSxbInNoYXJwIix7ZGVmYXVsdFNob3J0UHJlZml4SWQ6ImZhc3MiLGRlZmF1bHRTdHlsZUlkOiJzb2xpZCIsc3R5bGVJZHM6WyJzb2xpZCIsInJlZ3VsYXIiLCJsaWdodCIsInRoaW4iXSxmdXR1cmVTdHlsZUlkczpbXSxkZWZhdWx0Rm9udFdlaWdodDo5MDB9XSxbInNoYXJwLWR1b3RvbmUiLHtkZWZhdWx0U2hvcnRQcmVmaXhJZDoiZmFzZHMiLGRlZmF1bHRTdHlsZUlkOiJzb2xpZCIsc3R5bGVJZHM6WyJzb2xpZCIsInJlZ3VsYXIiLCJsaWdodCIsInRoaW4iXSxmdXR1cmVTdHlsZUlkczpbXSxkZWZhdWx0Rm9udFdlaWdodDo5MDB9XSxbImNoaXNlbCIse2RlZmF1bHRTaG9ydFByZWZpeElkOiJmYWNyIixkZWZhdWx0U3R5bGVJZDoicmVndWxhciIsc3R5bGVJZHM6WyJyZWd1bGFyIl0sZnV0dXJlU3R5bGVJZHM6W10sZGVmYXVsdEZvbnRXZWlnaHQ6NDAwfV0sWyJldGNoIix7ZGVmYXVsdFNob3J0UHJlZml4SWQ6ImZhZXMiLGRlZmF1bHRTdHlsZUlkOiJzb2xpZCIsc3R5bGVJZHM6WyJzb2xpZCJdLGZ1dHVyZVN0eWxlSWRzOltdLGRlZmF1bHRGb250V2VpZ2h0OjkwMH1dLFsiZ3JhcGhpdGUiLHtkZWZhdWx0U2hvcnRQcmVmaXhJZDoiZmFndCIsZGVmYXVsdFN0eWxlSWQ6InRoaW4iLHN0eWxlSWRzOlsidGhpbiJdLGZ1dHVyZVN0eWxlSWRzOltdLGRlZmF1bHRGb250V2VpZ2h0OjEwMH1dLFsiamVsbHkiLHtkZWZhdWx0U2hvcnRQcmVmaXhJZDoiZmFqciIsZGVmYXVsdFN0eWxlSWQ6InJlZ3VsYXIiLHN0eWxlSWRzOlsicmVndWxhciJdLGZ1dHVyZVN0eWxlSWRzOltdLGRlZmF1bHRGb250V2VpZ2h0OjQwMH1dLFsiamVsbHktZHVvIix7ZGVmYXVsdFNob3J0UHJlZml4SWQ6ImZhamRyIixkZWZhdWx0U3R5bGVJZDoicmVndWxhciIsc3R5bGVJZHM6WyJyZWd1bGFyIl0sZnV0dXJlU3R5bGVJZHM6W10sZGVmYXVsdEZvbnRXZWlnaHQ6NDAwfV0sWyJqZWxseS1maWxsIix7ZGVmYXVsdFNob3J0UHJlZml4SWQ6ImZhamZyIixkZWZhdWx0U3R5bGVJZDoicmVndWxhciIsc3R5bGVJZHM6WyJyZWd1bGFyIl0sZnV0dXJlU3R5bGVJZHM6W10sZGVmYXVsdEZvbnRXZWlnaHQ6NDAwfV0sWyJub3Rkb2ciLHtkZWZhdWx0U2hvcnRQcmVmaXhJZDoiZmFucyIsZGVmYXVsdFN0eWxlSWQ6InNvbGlkIixzdHlsZUlkczpbInNvbGlkIl0sZnV0dXJlU3R5bGVJZHM6W10sZGVmYXVsdEZvbnRXZWlnaHQ6OTAwfV0sWyJub3Rkb2ctZHVvIix7ZGVmYXVsdFNob3J0UHJlZml4SWQ6ImZhbmRzIixkZWZhdWx0U3R5bGVJZDoic29saWQiLHN0eWxlSWRzOlsic29saWQiXSxmdXR1cmVTdHlsZUlkczpbXSxkZWZhdWx0Rm9udFdlaWdodDo5MDB9XSxbInNsYWIiLHtkZWZhdWx0U2hvcnRQcmVmaXhJZDoiZmFzbHIiLGRlZmF1bHRTdHlsZUlkOiJyZWd1bGFyIixzdHlsZUlkczpbInJlZ3VsYXIiXSxmdXR1cmVTdHlsZUlkczpbXSxkZWZhdWx0Rm9udFdlaWdodDo0MDB9XSxbInNsYWItcHJlc3MiLHtkZWZhdWx0U2hvcnRQcmVmaXhJZDoiZmFzbHByIixkZWZhdWx0U3R5bGVJZDoicmVndWxhciIsc3R5bGVJZHM6WyJyZWd1bGFyIl0sZnV0dXJlU3R5bGVJZHM6W10sZGVmYXVsdEZvbnRXZWlnaHQ6NDAwfV0sWyJ0aHVtYnByaW50Iix7ZGVmYXVsdFNob3J0UHJlZml4SWQ6ImZhdGwiLGRlZmF1bHRTdHlsZUlkOiJsaWdodCIsc3R5bGVJZHM6WyJsaWdodCJdLGZ1dHVyZVN0eWxlSWRzOltdLGRlZmF1bHRGb250V2VpZ2h0OjMwMH1dLFsidXRpbGl0eSIse2RlZmF1bHRTaG9ydFByZWZpeElkOiJmYXVzYiIsZGVmYXVsdFN0eWxlSWQ6InNlbWlib2xkIixzdHlsZUlkczpbInNlbWlib2xkIl0sZnV0dXJlU3R5bGVJZHM6W10sZGVmYXVsdEZvbnRXZWlnaHQ6NjAwfV0sWyJ1dGlsaXR5LWR1byIse2RlZmF1bHRTaG9ydFByZWZpeElkOiJmYXVkc2IiLGRlZmF1bHRTdHlsZUlkOiJzZW1pYm9sZCIsc3R5bGVJZHM6WyJzZW1pYm9sZCJdLGZ1dHVyZVN0eWxlSWRzOltdLGRlZmF1bHRGb250V2VpZ2h0OjYwMH1dLFsidXRpbGl0eS1maWxsIix7ZGVmYXVsdFNob3J0UHJlZml4SWQ6ImZhdWZzYiIsZGVmYXVsdFN0eWxlSWQ6InNlbWlib2xkIixzdHlsZUlkczpbInNlbWlib2xkIl0sZnV0dXJlU3R5bGVJZHM6W10sZGVmYXVsdEZvbnRXZWlnaHQ6NjAwfV0sWyJ3aGl0ZWJvYXJkIix7ZGVmYXVsdFNob3J0UHJlZml4SWQ6ImZhd3NiIixkZWZhdWx0U3R5bGVJZDoic2VtaWJvbGQiLHN0eWxlSWRzOlsic2VtaWJvbGQiXSxmdXR1cmVTdHlsZUlkczpbXSxkZWZhdWx0Rm9udFdlaWdodDo2MDB9XV0pLFI5YT17Y2hpc2VsOntyZWd1bGFyOiJmYWNyIn0sY2xhc3NpYzp7YnJhbmRzOiJmYWIiLGxpZ2h0OiJmYWwiLHJlZ3VsYXI6ImZhciIsc29saWQ6ImZhcyIsdGhpbjoiZmF0In0sZHVvdG9uZTp7bGlnaHQ6ImZhZGwiLHJlZ3VsYXI6ImZhZHIiLHNvbGlkOiJmYWQiLHRoaW46ImZhZHQifSxldGNoOntzb2xpZDoiZmFlcyJ9LGdyYXBoaXRlOnt0aGluOiJmYWd0In0samVsbHk6e3JlZ3VsYXI6ImZhanIifSwiamVsbHktZHVvIjp7cmVndWxhcjoiZmFqZHIifSwiamVsbHktZmlsbCI6e3JlZ3VsYXI6ImZhamZyIn0sbm90ZG9nOntzb2xpZDoiZmFucyJ9LCJub3Rkb2ctZHVvIjp7c29saWQ6ImZhbmRzIn0sc2hhcnA6e2xpZ2h0OiJmYXNsIixyZWd1bGFyOiJmYXNyIixzb2xpZDoiZmFzcyIsdGhpbjoiZmFzdCJ9LCJzaGFycC1kdW90b25lIjp7bGlnaHQ6ImZhc2RsIixyZWd1bGFyOiJmYXNkciIsc29saWQ6ImZhc2RzIix0aGluOiJmYXNkdCJ9LHNsYWI6e3JlZ3VsYXI6ImZhc2xyIn0sInNsYWItcHJlc3MiOntyZWd1bGFyOiJmYXNscHIifSx0aHVtYnByaW50OntsaWdodDoiZmF0bCJ9LHV0aWxpdHk6e3NlbWlib2xkOiJmYXVzYiJ9LCJ1dGlsaXR5LWR1byI6e3NlbWlib2xkOiJmYXVkc2IifSwidXRpbGl0eS1maWxsIjp7c2VtaWJvbGQ6ImZhdWZzYiJ9LHdoaXRlYm9hcmQ6e3NlbWlib2xkOiJmYXdzYiJ9fSxoSnQ9WyJmYWsiLCJmYS1raXQiLCJmYWtkIiwiZmEta2l0LWR1b3RvbmUiXSxtSnQ9e2tpdDp7ZmFrOiJraXQiLCJmYS1raXQiOiJraXQifSwia2l0LWR1b3RvbmUiOntmYWtkOiJraXQtZHVvdG9uZSIsImZhLWtpdC1kdW90b25lIjoia2l0LWR1b3RvbmUifX0sQjlhPVsia2l0Il0sSDlhPSJraXQiLHE5YT0ia2l0LWR1b3RvbmUiLGo5YT0iS2l0IixWOWE9IktpdCBEdW90b25lIixWUzE9anQoanQoe30sSDlhLGo5YSkscTlhLFY5YSksVTlhPXtraXQ6eyJmYS1raXQiOiJmYWsifSwia2l0LWR1b3RvbmUiOnsiZmEta2l0LWR1b3RvbmUiOiJmYWtkIn19LFc5YT17IkZvbnQgQXdlc29tZSBLaXQiOns0MDA6ImZhayIsbm9ybWFsOiJmYWsifSwiRm9udCBBd2Vzb21lIEtpdCBEdW90b25lIjp7NDAwOiJmYWtkIixub3JtYWw6ImZha2QifX0sRzlhPXtraXQ6e2ZhazoiZmEta2l0In0sImtpdC1kdW90b25lIjp7ZmFrZDoiZmEta2l0LWR1b3RvbmUifX0sZ0p0PXtraXQ6e2tpdDoiZmFrIn0sImtpdC1kdW90b25lIjp7ImtpdC1kdW90b25lIjoiZmFrZCJ9fSxUc2U9e0dST1VQOiJkdW90b25lLWdyb3VwIixTV0FQX09QQUNJVFk6InN3YXAtb3BhY2l0eSIsUFJJTUFSWToicHJpbWFyeSIsU0VDT05EQVJZOiJzZWNvbmRhcnkifSxZOWE9WyJmYS1jbGFzc2ljIiwiZmEtZHVvdG9uZSIsImZhLXNoYXJwIiwiZmEtc2hhcnAtZHVvdG9uZSIsImZhLXRodW1icHJpbnQiLCJmYS13aGl0ZWJvYXJkIiwiZmEtbm90ZG9nIiwiZmEtbm90ZG9nLWR1byIsImZhLWNoaXNlbCIsImZhLWV0Y2giLCJmYS1ncmFwaGl0ZSIsImZhLWplbGx5IiwiZmEtamVsbHktZmlsbCIsImZhLWplbGx5LWR1byIsImZhLXNsYWIiLCJmYS1zbGFiLXByZXNzIiwiZmEtdXRpbGl0eSIsImZhLXV0aWxpdHktZHVvIiwiZmEtdXRpbGl0eS1maWxsIl0sWjlhPSJjbGFzc2ljIixYOWE9ImR1b3RvbmUiLFE5YT0ic2hhcnAiLEs5YT0ic2hhcnAtZHVvdG9uZSIsSjlhPSJjaGlzZWwiLGVnYT0iZXRjaCIsdGdhPSJncmFwaGl0ZSIscmdhPSJqZWxseSIsYWdhPSJqZWxseS1kdW8iLGlnYT0iamVsbHktZmlsbCIsb2dhPSJub3Rkb2ciLG5nYT0ibm90ZG9nLWR1byIsc2dhPSJzbGFiIixsZ2E9InNsYWItcHJlc3MiLGNnYT0idGh1bWJwcmludCIsZGdhPSJ1dGlsaXR5Iix1Z2E9InV0aWxpdHktZHVvIixmZ2E9InV0aWxpdHktZmlsbCIscGdhPSJ3aGl0ZWJvYXJkIixoZ2E9IkNsYXNzaWMiLG1nYT0iRHVvdG9uZSIsZ2dhPSJTaGFycCIseGdhPSJTaGFycCBEdW90b25lIixiZ2E9IkNoaXNlbCIsdmdhPSJFdGNoIix5Z2E9IkdyYXBoaXRlIix3Z2E9IkplbGx5IixNZ2E9IkplbGx5IER1byIsa2dhPSJKZWxseSBGaWxsIixTZ2E9Ik5vdGRvZyIsemdhPSJOb3Rkb2cgRHVvIixDZ2E9IlNsYWIiLF9nYT0iU2xhYiBQcmVzcyIsVGdhPSJUaHVtYnByaW50IixMZ2E9IlV0aWxpdHkiLERnYT0iVXRpbGl0eSBEdW8iLEFnYT0iVXRpbGl0eSBGaWxsIixFZ2E9IldoaXRlYm9hcmQiLFVTMT0oYWtlPXt9LGp0KGp0KGp0KGp0KGp0KGp0KGp0KGp0KGp0KGp0KGFrZSxaOWEsaGdhKSxYOWEsbWdhKSxROWEsZ2dhKSxLOWEseGdhKSxKOWEsYmdhKSxlZ2EsdmdhKSx0Z2EseWdhKSxyZ2Esd2dhKSxhZ2EsTWdhKSxpZ2Esa2dhKSxqdChqdChqdChqdChqdChqdChqdChqdChqdChha2Usb2dhLFNnYSksbmdhLHpnYSksc2dhLENnYSksbGdhLF9nYSksY2dhLFRnYSksZGdhLExnYSksdWdhLERnYSksZmdhLEFnYSkscGdhLEVnYSkpLCRnYT0ia2l0IixQZ2E9ImtpdC1kdW90b25lIixJZ2E9IktpdCIsTmdhPSJLaXQgRHVvdG9uZSIsV1MxPWp0KGp0KHt9LCRnYSxJZ2EpLFBnYSxOZ2EpLEZnYT17Y2xhc3NpYzp7ImZhLWJyYW5kcyI6ImZhYiIsImZhLWR1b3RvbmUiOiJmYWQiLCJmYS1saWdodCI6ImZhbCIsImZhLXJlZ3VsYXIiOiJmYXIiLCJmYS1zb2xpZCI6ImZhcyIsImZhLXRoaW4iOiJmYXQifSxkdW90b25lOnsiZmEtcmVndWxhciI6ImZhZHIiLCJmYS1saWdodCI6ImZhZGwiLCJmYS10aGluIjoiZmFkdCJ9LHNoYXJwOnsiZmEtc29saWQiOiJmYXNzIiwiZmEtcmVndWxhciI6ImZhc3IiLCJmYS1saWdodCI6ImZhc2wiLCJmYS10aGluIjoiZmFzdCJ9LCJzaGFycC1kdW90b25lIjp7ImZhLXNvbGlkIjoiZmFzZHMiLCJmYS1yZWd1bGFyIjoiZmFzZHIiLCJmYS1saWdodCI6ImZhc2RsIiwiZmEtdGhpbiI6ImZhc2R0In0sc2xhYjp7ImZhLXJlZ3VsYXIiOiJmYXNsciJ9LCJzbGFiLXByZXNzIjp7ImZhLXJlZ3VsYXIiOiJmYXNscHIifSx3aGl0ZWJvYXJkOnsiZmEtc2VtaWJvbGQiOiJmYXdzYiJ9LHRodW1icHJpbnQ6eyJmYS1saWdodCI6ImZhdGwifSxub3Rkb2c6eyJmYS1zb2xpZCI6ImZhbnMifSwibm90ZG9nLWR1byI6eyJmYS1zb2xpZCI6ImZhbmRzIn0sZXRjaDp7ImZhLXNvbGlkIjoiZmFlcyJ9LGdyYXBoaXRlOnsiZmEtdGhpbiI6ImZhZ3QifSxqZWxseTp7ImZhLXJlZ3VsYXIiOiJmYWpyIn0sImplbGx5LWZpbGwiOnsiZmEtcmVndWxhciI6ImZhamZyIn0sImplbGx5LWR1byI6eyJmYS1yZWd1bGFyIjoiZmFqZHIifSxjaGlzZWw6eyJmYS1yZWd1bGFyIjoiZmFjciJ9LHV0aWxpdHk6eyJmYS1zZW1pYm9sZCI6ImZhdXNiIn0sInV0aWxpdHktZHVvIjp7ImZhLXNlbWlib2xkIjoiZmF1ZHNiIn0sInV0aWxpdHktZmlsbCI6eyJmYS1zZW1pYm9sZCI6ImZhdWZzYiJ9fSxPZ2E9e2NsYXNzaWM6WyJmYXMiLCJmYXIiLCJmYWwiLCJmYXQiLCJmYWQiXSxkdW90b25lOlsiZmFkciIsImZhZGwiLCJmYWR0Il0sc2hhcnA6WyJmYXNzIiwiZmFzciIsImZhc2wiLCJmYXN0Il0sInNoYXJwLWR1b3RvbmUiOlsiZmFzZHMiLCJmYXNkciIsImZhc2RsIiwiZmFzZHQiXSxzbGFiOlsiZmFzbHIiXSwic2xhYi1wcmVzcyI6WyJmYXNscHIiXSx3aGl0ZWJvYXJkOlsiZmF3c2IiXSx0aHVtYnByaW50OlsiZmF0bCJdLG5vdGRvZzpbImZhbnMiXSwibm90ZG9nLWR1byI6WyJmYW5kcyJdLGV0Y2g6WyJmYWVzIl0sZ3JhcGhpdGU6WyJmYWd0Il0samVsbHk6WyJmYWpyIl0sImplbGx5LWZpbGwiOlsiZmFqZnIiXSwiamVsbHktZHVvIjpbImZhamRyIl0sY2hpc2VsOlsiZmFjciJdLHV0aWxpdHk6WyJmYXVzYiJdLCJ1dGlsaXR5LWR1byI6WyJmYXVkc2IiXSwidXRpbGl0eS1maWxsIjpbImZhdWZzYiJdfSxpa2U9e2NsYXNzaWM6e2ZhYjoiZmEtYnJhbmRzIixmYWQ6ImZhLWR1b3RvbmUiLGZhbDoiZmEtbGlnaHQiLGZhcjoiZmEtcmVndWxhciIsZmFzOiJmYS1zb2xpZCIsZmF0OiJmYS10aGluIn0sZHVvdG9uZTp7ZmFkcjoiZmEtcmVndWxhciIsZmFkbDoiZmEtbGlnaHQiLGZhZHQ6ImZhLXRoaW4ifSxzaGFycDp7ZmFzczoiZmEtc29saWQiLGZhc3I6ImZhLXJlZ3VsYXIiLGZhc2w6ImZhLWxpZ2h0IixmYXN0OiJmYS10aGluIn0sInNoYXJwLWR1b3RvbmUiOntmYXNkczoiZmEtc29saWQiLGZhc2RyOiJmYS1yZWd1bGFyIixmYXNkbDoiZmEtbGlnaHQiLGZhc2R0OiJmYS10aGluIn0sc2xhYjp7ZmFzbHI6ImZhLXJlZ3VsYXIifSwic2xhYi1wcmVzcyI6e2Zhc2xwcjoiZmEtcmVndWxhciJ9LHdoaXRlYm9hcmQ6e2Zhd3NiOiJmYS1zZW1pYm9sZCJ9LHRodW1icHJpbnQ6e2ZhdGw6ImZhLWxpZ2h0In0sbm90ZG9nOntmYW5zOiJmYS1zb2xpZCJ9LCJub3Rkb2ctZHVvIjp7ZmFuZHM6ImZhLXNvbGlkIn0sZXRjaDp7ZmFlczoiZmEtc29saWQifSxncmFwaGl0ZTp7ZmFndDoiZmEtdGhpbiJ9LGplbGx5OntmYWpyOiJmYS1yZWd1bGFyIn0sImplbGx5LWZpbGwiOntmYWpmcjoiZmEtcmVndWxhciJ9LCJqZWxseS1kdW8iOntmYWpkcjoiZmEtcmVndWxhciJ9LGNoaXNlbDp7ZmFjcjoiZmEtcmVndWxhciJ9LHV0aWxpdHk6e2ZhdXNiOiJmYS1zZW1pYm9sZCJ9LCJ1dGlsaXR5LWR1byI6e2ZhdWRzYjoiZmEtc2VtaWJvbGQifSwidXRpbGl0eS1maWxsIjp7ZmF1ZnNiOiJmYS1zZW1pYm9sZCJ9fSxSZ2E9WyJmYS1zb2xpZCIsImZhLXJlZ3VsYXIiLCJmYS1saWdodCIsImZhLXRoaW4iLCJmYS1kdW90b25lIiwiZmEtYnJhbmRzIiwiZmEtc2VtaWJvbGQiXSx4SnQ9WyJmYSIsImZhcyIsImZhciIsImZhbCIsImZhdCIsImZhZCIsImZhZHIiLCJmYWRsIiwiZmFkdCIsImZhYiIsImZhc3MiLCJmYXNyIiwiZmFzbCIsImZhc3QiLCJmYXNkcyIsImZhc2RyIiwiZmFzZGwiLCJmYXNkdCIsImZhc2xyIiwiZmFzbHByIiwiZmF3c2IiLCJmYXRsIiwiZmFucyIsImZhbmRzIiwiZmFlcyIsImZhZ3QiLCJmYWpyIiwiZmFqZnIiLCJmYWpkciIsImZhY3IiLCJmYXVzYiIsImZhdWRzYiIsImZhdWZzYiJdLmNvbmNhdChZOWEsUmdhKSxCZ2E9WyJzb2xpZCIsInJlZ3VsYXIiLCJsaWdodCIsInRoaW4iLCJkdW90b25lIiwiYnJhbmRzIiwic2VtaWJvbGQiXSxiSnQ9WzEsMiwzLDQsNSw2LDcsOCw5LDEwXSxIZ2E9Ykp0LmNvbmNhdChbMTEsMTIsMTMsMTQsMTUsMTYsMTcsMTgsMTksMjBdKSxxZ2E9WyJhdyIsImZ3IiwicHVsbC1sZWZ0IiwicHVsbC1yaWdodCJdLGpnYT1bXS5jb25jYXQoRHMoT2JqZWN0LmtleXMoT2dhKSksQmdhLHFnYSxbIjJ4cyIsInhzIiwic20iLCJsZyIsInhsIiwiMnhsIiwiYmVhdCIsImJvcmRlciIsImZhZGUiLCJiZWF0LWZhZGUiLCJib3VuY2UiLCJmbGlwLWJvdGgiLCJmbGlwLWhvcml6b250YWwiLCJmbGlwLXZlcnRpY2FsIiwiZmxpcCIsImludmVyc2UiLCJsYXllcnMiLCJsYXllcnMtYm90dG9tLWxlZnQiLCJsYXllcnMtYm90dG9tLXJpZ2h0IiwibGF5ZXJzLWNvdW50ZXIiLCJsYXllcnMtdGV4dCIsImxheWVycy10b3AtbGVmdCIsImxheWVycy10b3AtcmlnaHQiLCJsaSIsInB1bGwtZW5kIiwicHVsbC1zdGFydCIsInB1bHNlIiwicm90YXRlLTE4MCIsInJvdGF0ZS0yNzAiLCJyb3RhdGUtOTAiLCJyb3RhdGUtYnkiLCJzaGFrZSIsInNwaW4tcHVsc2UiLCJzcGluLXJldmVyc2UiLCJzcGluIiwic3RhY2stMXgiLCJzdGFjay0yeCIsInN0YWNrIiwidWwiLCJ3aWR0aC1hdXRvIiwid2lkdGgtZml4ZWQiLFRzZS5HUk9VUCxUc2UuU1dBUF9PUEFDSVRZLFRzZS5QUklNQVJZLFRzZS5TRUNPTkRBUlldKS5jb25jYXQoYkp0Lm1hcChmdW5jdGlvbihlKXtyZXR1cm4iIi5jb25jYXQoZSwieCIpfSkpLmNvbmNhdChIZ2EubWFwKGZ1bmN0aW9uKGUpe3JldHVybiJ3LSIuY29uY2F0KGUpfSkpLFZnYT17IkZvbnQgQXdlc29tZSA1IEZyZWUiOns5MDA6ImZhcyIsNDAwOiJmYXIifSwiRm9udCBBd2Vzb21lIDUgUHJvIjp7OTAwOiJmYXMiLDQwMDoiZmFyIixub3JtYWw6ImZhciIsMzAwOiJmYWwifSwiRm9udCBBd2Vzb21lIDUgQnJhbmRzIjp7NDAwOiJmYWIiLG5vcm1hbDoiZmFiIn0sIkZvbnQgQXdlc29tZSA1IER1b3RvbmUiOns5MDA6ImZhZCJ9fSx6Yz0iX19fRk9OVF9BV0VTT01FX19fIixva2U9MTYsdkp0PSJmYSIseUp0PSJzdmctaW5saW5lLS1mYSIsb3U9ImRhdGEtZmEtaTJzdmciLG5rZT0iZGF0YS1mYS1wc2V1ZG8tZWxlbWVudCIsVWdhPSJkYXRhLWZhLXBzZXVkby1lbGVtZW50LXBlbmRpbmciLHNrZT0iZGF0YS1wcmVmaXgiLGxrZT0iZGF0YS1pY29uIix3SnQ9ImZvbnRhd2Vzb21lLWkyc3ZnIixXZ2E9ImFzeW5jIixHZ2E9WyJIVE1MIiwiSEVBRCIsIlNUWUxFIiwiU0NSSVBUIl0sTUp0PVsiOjpiZWZvcmUiLCI6OmFmdGVyIiwiOmJlZm9yZSIsIjphZnRlciJdLGtKdD0oZnVuY3Rpb24oKXt0cnl7cmV0dXJuITB9Y2F0Y2h7cmV0dXJuITF9fSkoKTtTSnQ9UWUoe30sWUt0KTtTSnRbcDFdPVFlKFFlKFFlKFFlKHt9LHsiZmEtZHVvdG9uZSI6ImR1b3RvbmUifSksWUt0W3AxXSksbUp0LmtpdCksbUp0WyJraXQtZHVvdG9uZSJdKTtZZ2E9YXcoU0p0KSxja2U9UWUoe30sUjlhKTtja2VbcDFdPVFlKFFlKFFlKFFlKHt9LHtkdW90b25lOiJmYWQifSksY2tlW3AxXSksZ0p0LmtpdCksZ0p0WyJraXQtZHVvdG9uZSJdKTt6SnQ9YXcoY2tlKSxka2U9UWUoe30saWtlKTtka2VbcDFdPVFlKFFlKHt9LGRrZVtwMV0pLEc5YS5raXQpO3VrZT1hdyhka2UpLGZrZT1RZSh7fSxGZ2EpO2ZrZVtwMV09UWUoUWUoe30sZmtlW3AxXSksVTlhLmtpdCk7R1MxPWF3KGZrZSksWmdhPWg5YSxDSnQ9ImZhLWxheWVycy10ZXh0IixYZ2E9bTlhLFFnYT1RZSh7fSxOOWEpLFlTMT1hdyhRZ2EpLEtnYT1bImNsYXNzIiwiZGF0YS1wcmVmaXgiLCJkYXRhLWljb24iLCJkYXRhLWZhLXRyYW5zZm9ybSIsImRhdGEtZmEtbWFzayJdLHBrZT1nOWEsSmdhPVtdLmNvbmNhdChEcyhCOWEpLERzKGpnYSkpLGl3PUs0LkZvbnRBd2Vzb21lQ29uZmlnfHx7fTtTYSYmdHlwZW9mIFNhLnF1ZXJ5U2VsZWN0b3I9PSJmdW5jdGlvbiImJihfSnQ9W1siZGF0YS1mYW1pbHktcHJlZml4IiwiZmFtaWx5UHJlZml4Il0sWyJkYXRhLWNzcy1wcmVmaXgiLCJjc3NQcmVmaXgiXSxbImRhdGEtZmFtaWx5LWRlZmF1bHQiLCJmYW1pbHlEZWZhdWx0Il0sWyJkYXRhLXN0eWxlLWRlZmF1bHQiLCJzdHlsZURlZmF1bHQiXSxbImRhdGEtcmVwbGFjZW1lbnQtY2xhc3MiLCJyZXBsYWNlbWVudENsYXNzIl0sWyJkYXRhLWF1dG8tcmVwbGFjZS1zdmciLCJhdXRvUmVwbGFjZVN2ZyJdLFsiZGF0YS1hdXRvLWFkZC1jc3MiLCJhdXRvQWRkQ3NzIl0sWyJkYXRhLXNlYXJjaC1wc2V1ZG8tZWxlbWVudHMiLCJzZWFyY2hQc2V1ZG9FbGVtZW50cyJdLFsiZGF0YS1zZWFyY2gtcHNldWRvLWVsZW1lbnRzLXdhcm5pbmdzIiwic2VhcmNoUHNldWRvRWxlbWVudHNXYXJuaW5ncyJdLFsiZGF0YS1zZWFyY2gtcHNldWRvLWVsZW1lbnRzLWZ1bGwtc2NhbiIsInNlYXJjaFBzZXVkb0VsZW1lbnRzRnVsbFNjYW4iXSxbImRhdGEtb2JzZXJ2ZS1tdXRhdGlvbnMiLCJvYnNlcnZlTXV0YXRpb25zIl0sWyJkYXRhLW11dGF0ZS1hcHByb2FjaCIsIm11dGF0ZUFwcHJvYWNoIl0sWyJkYXRhLWtlZXAtb3JpZ2luYWwtc291cmNlIiwia2VlcE9yaWdpbmFsU291cmNlIl0sWyJkYXRhLW1lYXN1cmUtcGVyZm9ybWFuY2UiLCJtZWFzdXJlUGVyZm9ybWFuY2UiXSxbImRhdGEtc2hvdy1taXNzaW5nLWljb25zIiwic2hvd01pc3NpbmdJY29ucyJdXSxfSnQuZm9yRWFjaChmdW5jdGlvbihlKXt2YXIgdD16c2UoZSwyKSxyPXRbMF0sYT10WzFdLGk9dHhhKGV4YShyKSk7aSE9bnVsbCYmKGl3W2FdPWkpfSkpO1RKdD17c3R5bGVEZWZhdWx0OiJzb2xpZCIsZmFtaWx5RGVmYXVsdDpwMSxjc3NQcmVmaXg6dkp0LHJlcGxhY2VtZW50Q2xhc3M6eUp0LGF1dG9SZXBsYWNlU3ZnOiEwLGF1dG9BZGRDc3M6ITAsc2VhcmNoUHNldWRvRWxlbWVudHM6ITEsc2VhcmNoUHNldWRvRWxlbWVudHNXYXJuaW5nczohMCxzZWFyY2hQc2V1ZG9FbGVtZW50c0Z1bGxTY2FuOiExLG9ic2VydmVNdXRhdGlvbnM6ITAsbXV0YXRlQXBwcm9hY2g6ImFzeW5jIixrZWVwT3JpZ2luYWxTb3VyY2U6ITAsbWVhc3VyZVBlcmZvcm1hbmNlOiExLHNob3dNaXNzaW5nSWNvbnM6ITB9O2l3LmZhbWlseVByZWZpeCYmKGl3LmNzc1ByZWZpeD1pdy5mYW1pbHlQcmVmaXgpO1Q5PVFlKFFlKHt9LFRKdCksaXcpO1Q5LmF1dG9SZXBsYWNlU3ZnfHwoVDkub2JzZXJ2ZU11dGF0aW9ucz0hMSk7U3Q9e307T2JqZWN0LmtleXMoVEp0KS5mb3JFYWNoKGZ1bmN0aW9uKGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eShTdCxlLHtlbnVtZXJhYmxlOiEwLHNldDpmdW5jdGlvbihyKXtUOVtlXT1yLG93LmZvckVhY2goZnVuY3Rpb24oYSl7cmV0dXJuIGEoU3QpfSl9LGdldDpmdW5jdGlvbigpe3JldHVybiBUOVtlXX19KX0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShTdCwiZmFtaWx5UHJlZml4Iix7ZW51bWVyYWJsZTohMCxzZXQ6ZnVuY3Rpb24odCl7VDkuY3NzUHJlZml4PXQsb3cuZm9yRWFjaChmdW5jdGlvbihyKXtyZXR1cm4gcihTdCl9KX0sZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIFQ5LmNzc1ByZWZpeH19KSxLNC5Gb250QXdlc29tZUNvbmZpZz1TdDtvdz1bXTtKND1va2UsbGw9e3NpemU6MTYseDowLHk6MCxyb3RhdGU6MCxmbGlwWDohMSxmbGlwWTohMX07aXhhPSIwMTIzNDU2Nzg5YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWiI7bHhhPWA6cm9vdCwgOmhvc3QgewogIC0tZmEtZm9udC1zb2xpZDogbm9ybWFsIDkwMCAxZW0vMSAnRm9udCBBd2Vzb21lIDcgRnJlZSc7CiAgLS1mYS1mb250LXJlZ3VsYXI6IG5vcm1hbCA0MDAgMWVtLzEgJ0ZvbnQgQXdlc29tZSA3IEZyZWUnOwogIC0tZmEtZm9udC1saWdodDogbm9ybWFsIDMwMCAxZW0vMSAnRm9udCBBd2Vzb21lIDcgUHJvJzsKICAtLWZhLWZvbnQtdGhpbjogbm9ybWFsIDEwMCAxZW0vMSAnRm9udCBBd2Vzb21lIDcgUHJvJzsKICAtLWZhLWZvbnQtZHVvdG9uZTogbm9ybWFsIDkwMCAxZW0vMSAnRm9udCBBd2Vzb21lIDcgRHVvdG9uZSc7CiAgLS1mYS1mb250LWR1b3RvbmUtcmVndWxhcjogbm9ybWFsIDQwMCAxZW0vMSAnRm9udCBBd2Vzb21lIDcgRHVvdG9uZSc7CiAgLS1mYS1mb250LWR1b3RvbmUtbGlnaHQ6IG5vcm1hbCAzMDAgMWVtLzEgJ0ZvbnQgQXdlc29tZSA3IER1b3RvbmUnOwogIC0tZmEtZm9udC1kdW90b25lLXRoaW46IG5vcm1hbCAxMDAgMWVtLzEgJ0ZvbnQgQXdlc29tZSA3IER1b3RvbmUnOwogIC0tZmEtZm9udC1icmFuZHM6IG5vcm1hbCA0MDAgMWVtLzEgJ0ZvbnQgQXdlc29tZSA3IEJyYW5kcyc7CiAgLS1mYS1mb250LXNoYXJwLXNvbGlkOiBub3JtYWwgOTAwIDFlbS8xICdGb250IEF3ZXNvbWUgNyBTaGFycCc7CiAgLS1mYS1mb250LXNoYXJwLXJlZ3VsYXI6IG5vcm1hbCA0MDAgMWVtLzEgJ0ZvbnQgQXdlc29tZSA3IFNoYXJwJzsKICAtLWZhLWZvbnQtc2hhcnAtbGlnaHQ6IG5vcm1hbCAzMDAgMWVtLzEgJ0ZvbnQgQXdlc29tZSA3IFNoYXJwJzsKICAtLWZhLWZvbnQtc2hhcnAtdGhpbjogbm9ybWFsIDEwMCAxZW0vMSAnRm9udCBBd2Vzb21lIDcgU2hhcnAnOwogIC0tZmEtZm9udC1zaGFycC1kdW90b25lLXNvbGlkOiBub3JtYWwgOTAwIDFlbS8xICdGb250IEF3ZXNvbWUgNyBTaGFycCBEdW90b25lJzsKICAtLWZhLWZvbnQtc2hhcnAtZHVvdG9uZS1yZWd1bGFyOiBub3JtYWwgNDAwIDFlbS8xICdGb250IEF3ZXNvbWUgNyBTaGFycCBEdW90b25lJzsKICAtLWZhLWZvbnQtc2hhcnAtZHVvdG9uZS1saWdodDogbm9ybWFsIDMwMCAxZW0vMSAnRm9udCBBd2Vzb21lIDcgU2hhcnAgRHVvdG9uZSc7CiAgLS1mYS1mb250LXNoYXJwLWR1b3RvbmUtdGhpbjogbm9ybWFsIDEwMCAxZW0vMSAnRm9udCBBd2Vzb21lIDcgU2hhcnAgRHVvdG9uZSc7CiAgLS1mYS1mb250LXNsYWItcmVndWxhcjogbm9ybWFsIDQwMCAxZW0vMSAnRm9udCBBd2Vzb21lIDcgU2xhYic7CiAgLS1mYS1mb250LXNsYWItcHJlc3MtcmVndWxhcjogbm9ybWFsIDQwMCAxZW0vMSAnRm9udCBBd2Vzb21lIDcgU2xhYiBQcmVzcyc7CiAgLS1mYS1mb250LXdoaXRlYm9hcmQtc2VtaWJvbGQ6IG5vcm1hbCA2MDAgMWVtLzEgJ0ZvbnQgQXdlc29tZSA3IFdoaXRlYm9hcmQnOwogIC0tZmEtZm9udC10aHVtYnByaW50LWxpZ2h0OiBub3JtYWwgMzAwIDFlbS8xICdGb250IEF3ZXNvbWUgNyBUaHVtYnByaW50JzsKICAtLWZhLWZvbnQtbm90ZG9nLXNvbGlkOiBub3JtYWwgOTAwIDFlbS8xICdGb250IEF3ZXNvbWUgNyBOb3Rkb2cnOwogIC0tZmEtZm9udC1ub3Rkb2ctZHVvLXNvbGlkOiBub3JtYWwgOTAwIDFlbS8xICdGb250IEF3ZXNvbWUgNyBOb3Rkb2cgRHVvJzsKICAtLWZhLWZvbnQtZXRjaC1zb2xpZDogbm9ybWFsIDkwMCAxZW0vMSAnRm9udCBBd2Vzb21lIDcgRXRjaCc7CiAgLS1mYS1mb250LWdyYXBoaXRlLXRoaW46IG5vcm1hbCAxMDAgMWVtLzEgJ0ZvbnQgQXdlc29tZSA3IEdyYXBoaXRlJzsKICAtLWZhLWZvbnQtamVsbHktcmVndWxhcjogbm9ybWFsIDQwMCAxZW0vMSAnRm9udCBBd2Vzb21lIDcgSmVsbHknOwogIC0tZmEtZm9udC1qZWxseS1maWxsLXJlZ3VsYXI6IG5vcm1hbCA0MDAgMWVtLzEgJ0ZvbnQgQXdlc29tZSA3IEplbGx5IEZpbGwnOwogIC0tZmEtZm9udC1qZWxseS1kdW8tcmVndWxhcjogbm9ybWFsIDQwMCAxZW0vMSAnRm9udCBBd2Vzb21lIDcgSmVsbHkgRHVvJzsKICAtLWZhLWZvbnQtY2hpc2VsLXJlZ3VsYXI6IG5vcm1hbCA0MDAgMWVtLzEgJ0ZvbnQgQXdlc29tZSA3IENoaXNlbCc7CiAgLS1mYS1mb250LXV0aWxpdHktc2VtaWJvbGQ6IG5vcm1hbCA2MDAgMWVtLzEgJ0ZvbnQgQXdlc29tZSA3IFV0aWxpdHknOwogIC0tZmEtZm9udC11dGlsaXR5LWR1by1zZW1pYm9sZDogbm9ybWFsIDYwMCAxZW0vMSAnRm9udCBBd2Vzb21lIDcgVXRpbGl0eSBEdW8nOwogIC0tZmEtZm9udC11dGlsaXR5LWZpbGwtc2VtaWJvbGQ6IG5vcm1hbCA2MDAgMWVtLzEgJ0ZvbnQgQXdlc29tZSA3IFV0aWxpdHkgRmlsbCc7Cn0KCi5zdmctaW5saW5lLS1mYSB7CiAgYm94LXNpemluZzogY29udGVudC1ib3g7CiAgZGlzcGxheTogdmFyKC0tZmEtZGlzcGxheSwgaW5saW5lLWJsb2NrKTsKICBoZWlnaHQ6IDFlbTsKICBvdmVyZmxvdzogdmlzaWJsZTsKICB2ZXJ0aWNhbC1hbGlnbjogLTAuMTI1ZW07CiAgd2lkdGg6IHZhcigtLWZhLXdpZHRoLCAxLjI1ZW0pOwp9Ci5zdmctaW5saW5lLS1mYS5mYS0yeHMgewogIHZlcnRpY2FsLWFsaWduOiAwLjFlbTsKfQouc3ZnLWlubGluZS0tZmEuZmEteHMgewogIHZlcnRpY2FsLWFsaWduOiAwZW07Cn0KLnN2Zy1pbmxpbmUtLWZhLmZhLXNtIHsKICB2ZXJ0aWNhbC1hbGlnbjogLTAuMDcxNDI4NTcxNGVtOwp9Ci5zdmctaW5saW5lLS1mYS5mYS1sZyB7CiAgdmVydGljYWwtYWxpZ246IC0wLjJlbTsKfQouc3ZnLWlubGluZS0tZmEuZmEteGwgewogIHZlcnRpY2FsLWFsaWduOiAtMC4yNWVtOwp9Ci5zdmctaW5saW5lLS1mYS5mYS0yeGwgewogIHZlcnRpY2FsLWFsaWduOiAtMC4zMTI1ZW07Cn0KLnN2Zy1pbmxpbmUtLWZhLmZhLXB1bGwtbGVmdCwKLnN2Zy1pbmxpbmUtLWZhIC5mYS1wdWxsLXN0YXJ0IHsKICBmbG9hdDogaW5saW5lLXN0YXJ0OwogIG1hcmdpbi1pbmxpbmUtZW5kOiB2YXIoLS1mYS1wdWxsLW1hcmdpbiwgMC4zZW0pOwp9Ci5zdmctaW5saW5lLS1mYS5mYS1wdWxsLXJpZ2h0LAouc3ZnLWlubGluZS0tZmEgLmZhLXB1bGwtZW5kIHsKICBmbG9hdDogaW5saW5lLWVuZDsKICBtYXJnaW4taW5saW5lLXN0YXJ0OiB2YXIoLS1mYS1wdWxsLW1hcmdpbiwgMC4zZW0pOwp9Ci5zdmctaW5saW5lLS1mYS5mYS1saSB7CiAgd2lkdGg6IHZhcigtLWZhLWxpLXdpZHRoLCAyZW0pOwogIGluc2V0LWlubGluZS1zdGFydDogY2FsYygtMSAqIHZhcigtLWZhLWxpLXdpZHRoLCAyZW0pKTsKICBpbnNldC1ibG9jay1zdGFydDogMC4yNWVtOyAvKiBzeW5jaW5nIHZlcnRpY2FsIGFsaWdubWVudCB3aXRoIFdlYiBGb250IHJlbmRlcmluZyAqLwp9CgouZmEtbGF5ZXJzLWNvdW50ZXIsIC5mYS1sYXllcnMtdGV4dCB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB0ZXh0LWFsaWduOiBjZW50ZXI7Cn0KCi5mYS1sYXllcnMgewogIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICBoZWlnaHQ6IDFlbTsKICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgdGV4dC1hbGlnbjogY2VudGVyOwogIHZlcnRpY2FsLWFsaWduOiAtMC4xMjVlbTsKICB3aWR0aDogdmFyKC0tZmEtd2lkdGgsIDEuMjVlbSk7Cn0KLmZhLWxheWVycyAuc3ZnLWlubGluZS0tZmEgewogIGluc2V0OiAwOwogIG1hcmdpbjogYXV0bzsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjsKfQoKLmZhLWxheWVycy10ZXh0IHsKICBsZWZ0OiA1MCU7CiAgdG9wOiA1MCU7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7CiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjsKfQoKLmZhLWxheWVycy1jb3VudGVyIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1mYS1jb3VudGVyLWJhY2tncm91bmQtY29sb3IsICNmZjI1M2EpOwogIGJvcmRlci1yYWRpdXM6IHZhcigtLWZhLWNvdW50ZXItYm9yZGVyLXJhZGl1cywgMWVtKTsKICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogIGNvbG9yOiB2YXIoLS1mYS1pbnZlcnNlLCAjZmZmKTsKICBsaW5lLWhlaWdodDogdmFyKC0tZmEtY291bnRlci1saW5lLWhlaWdodCwgMSk7CiAgbWF4LXdpZHRoOiB2YXIoLS1mYS1jb3VudGVyLW1heC13aWR0aCwgNWVtKTsKICBtaW4td2lkdGg6IHZhcigtLWZhLWNvdW50ZXItbWluLXdpZHRoLCAxLjVlbSk7CiAgb3ZlcmZsb3c6IGhpZGRlbjsKICBwYWRkaW5nOiB2YXIoLS1mYS1jb3VudGVyLXBhZGRpbmcsIDAuMjVlbSAwLjVlbSk7CiAgcmlnaHQ6IHZhcigtLWZhLXJpZ2h0LCAwKTsKICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsKICB0b3A6IHZhcigtLWZhLXRvcCwgMCk7CiAgdHJhbnNmb3JtOiBzY2FsZSh2YXIoLS1mYS1jb3VudGVyLXNjYWxlLCAwLjI1KSk7CiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIHJpZ2h0Owp9CgouZmEtbGF5ZXJzLWJvdHRvbS1yaWdodCB7CiAgYm90dG9tOiB2YXIoLS1mYS1ib3R0b20sIDApOwogIHJpZ2h0OiB2YXIoLS1mYS1yaWdodCwgMCk7CiAgdG9wOiBhdXRvOwogIHRyYW5zZm9ybTogc2NhbGUodmFyKC0tZmEtbGF5ZXJzLXNjYWxlLCAwLjI1KSk7CiAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIHJpZ2h0Owp9CgouZmEtbGF5ZXJzLWJvdHRvbS1sZWZ0IHsKICBib3R0b206IHZhcigtLWZhLWJvdHRvbSwgMCk7CiAgbGVmdDogdmFyKC0tZmEtbGVmdCwgMCk7CiAgcmlnaHQ6IGF1dG87CiAgdG9wOiBhdXRvOwogIHRyYW5zZm9ybTogc2NhbGUodmFyKC0tZmEtbGF5ZXJzLXNjYWxlLCAwLjI1KSk7CiAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIGxlZnQ7Cn0KCi5mYS1sYXllcnMtdG9wLXJpZ2h0IHsKICB0b3A6IHZhcigtLWZhLXRvcCwgMCk7CiAgcmlnaHQ6IHZhcigtLWZhLXJpZ2h0LCAwKTsKICB0cmFuc2Zvcm06IHNjYWxlKHZhcigtLWZhLWxheWVycy1zY2FsZSwgMC4yNSkpOwogIHRyYW5zZm9ybS1vcmlnaW46IHRvcCByaWdodDsKfQoKLmZhLWxheWVycy10b3AtbGVmdCB7CiAgbGVmdDogdmFyKC0tZmEtbGVmdCwgMCk7CiAgcmlnaHQ6IGF1dG87CiAgdG9wOiB2YXIoLS1mYS10b3AsIDApOwogIHRyYW5zZm9ybTogc2NhbGUodmFyKC0tZmEtbGF5ZXJzLXNjYWxlLCAwLjI1KSk7CiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7Cn0KCi5mYS0xeCB7CiAgZm9udC1zaXplOiAxZW07Cn0KCi5mYS0yeCB7CiAgZm9udC1zaXplOiAyZW07Cn0KCi5mYS0zeCB7CiAgZm9udC1zaXplOiAzZW07Cn0KCi5mYS00eCB7CiAgZm9udC1zaXplOiA0ZW07Cn0KCi5mYS01eCB7CiAgZm9udC1zaXplOiA1ZW07Cn0KCi5mYS02eCB7CiAgZm9udC1zaXplOiA2ZW07Cn0KCi5mYS03eCB7CiAgZm9udC1zaXplOiA3ZW07Cn0KCi5mYS04eCB7CiAgZm9udC1zaXplOiA4ZW07Cn0KCi5mYS05eCB7CiAgZm9udC1zaXplOiA5ZW07Cn0KCi5mYS0xMHggewogIGZvbnQtc2l6ZTogMTBlbTsKfQoKLmZhLTJ4cyB7CiAgZm9udC1zaXplOiBjYWxjKDEwIC8gMTYgKiAxZW0pOyAvKiBjb252ZXJ0cyBhIDEwcHggc2l6ZSBpbnRvIGFuIGVtLWJhc2VkIHZhbHVlIHRoYXQncyByZWxhdGl2ZSB0byB0aGUgc2NhbGUncyAxNnB4IGJhc2UgKi8KICBsaW5lLWhlaWdodDogY2FsYygxIC8gMTAgKiAxZW0pOyAvKiBzZXRzIHRoZSBsaW5lLWhlaWdodCBvZiB0aGUgaWNvbiBiYWNrIHRvIHRoYXQgb2YgaXQncyBwYXJlbnQgKi8KICB2ZXJ0aWNhbC1hbGlnbjogY2FsYygoNiAvIDEwIC0gMC4zNzUpICogMWVtKTsgLyogdmVydGljYWxseSBjZW50ZXJzIHRoZSBpY29uIHRha2luZyBpbnRvIGFjY291bnQgdGhlIHN1cnJvdW5kaW5nIHRleHQncyBkZXNjZW5kZXIgKi8KfQoKLmZhLXhzIHsKICBmb250LXNpemU6IGNhbGMoMTIgLyAxNiAqIDFlbSk7IC8qIGNvbnZlcnRzIGEgMTJweCBzaXplIGludG8gYW4gZW0tYmFzZWQgdmFsdWUgdGhhdCdzIHJlbGF0aXZlIHRvIHRoZSBzY2FsZSdzIDE2cHggYmFzZSAqLwogIGxpbmUtaGVpZ2h0OiBjYWxjKDEgLyAxMiAqIDFlbSk7IC8qIHNldHMgdGhlIGxpbmUtaGVpZ2h0IG9mIHRoZSBpY29uIGJhY2sgdG8gdGhhdCBvZiBpdCdzIHBhcmVudCAqLwogIHZlcnRpY2FsLWFsaWduOiBjYWxjKCg2IC8gMTIgLSAwLjM3NSkgKiAxZW0pOyAvKiB2ZXJ0aWNhbGx5IGNlbnRlcnMgdGhlIGljb24gdGFraW5nIGludG8gYWNjb3VudCB0aGUgc3Vycm91bmRpbmcgdGV4dCdzIGRlc2NlbmRlciAqLwp9CgouZmEtc20gewogIGZvbnQtc2l6ZTogY2FsYygxNCAvIDE2ICogMWVtKTsgLyogY29udmVydHMgYSAxNHB4IHNpemUgaW50byBhbiBlbS1iYXNlZCB2YWx1ZSB0aGF0J3MgcmVsYXRpdmUgdG8gdGhlIHNjYWxlJ3MgMTZweCBiYXNlICovCiAgbGluZS1oZWlnaHQ6IGNhbGMoMSAvIDE0ICogMWVtKTsgLyogc2V0cyB0aGUgbGluZS1oZWlnaHQgb2YgdGhlIGljb24gYmFjayB0byB0aGF0IG9mIGl0J3MgcGFyZW50ICovCiAgdmVydGljYWwtYWxpZ246IGNhbGMoKDYgLyAxNCAtIDAuMzc1KSAqIDFlbSk7IC8qIHZlcnRpY2FsbHkgY2VudGVycyB0aGUgaWNvbiB0YWtpbmcgaW50byBhY2NvdW50IHRoZSBzdXJyb3VuZGluZyB0ZXh0J3MgZGVzY2VuZGVyICovCn0KCi5mYS1sZyB7CiAgZm9udC1zaXplOiBjYWxjKDIwIC8gMTYgKiAxZW0pOyAvKiBjb252ZXJ0cyBhIDIwcHggc2l6ZSBpbnRvIGFuIGVtLWJhc2VkIHZhbHVlIHRoYXQncyByZWxhdGl2ZSB0byB0aGUgc2NhbGUncyAxNnB4IGJhc2UgKi8KICBsaW5lLWhlaWdodDogY2FsYygxIC8gMjAgKiAxZW0pOyAvKiBzZXRzIHRoZSBsaW5lLWhlaWdodCBvZiB0aGUgaWNvbiBiYWNrIHRvIHRoYXQgb2YgaXQncyBwYXJlbnQgKi8KICB2ZXJ0aWNhbC1hbGlnbjogY2FsYygoNiAvIDIwIC0gMC4zNzUpICogMWVtKTsgLyogdmVydGljYWxseSBjZW50ZXJzIHRoZSBpY29uIHRha2luZyBpbnRvIGFjY291bnQgdGhlIHN1cnJvdW5kaW5nIHRleHQncyBkZXNjZW5kZXIgKi8KfQoKLmZhLXhsIHsKICBmb250LXNpemU6IGNhbGMoMjQgLyAxNiAqIDFlbSk7IC8qIGNvbnZlcnRzIGEgMjRweCBzaXplIGludG8gYW4gZW0tYmFzZWQgdmFsdWUgdGhhdCdzIHJlbGF0aXZlIHRvIHRoZSBzY2FsZSdzIDE2cHggYmFzZSAqLwogIGxpbmUtaGVpZ2h0OiBjYWxjKDEgLyAyNCAqIDFlbSk7IC8qIHNldHMgdGhlIGxpbmUtaGVpZ2h0IG9mIHRoZSBpY29uIGJhY2sgdG8gdGhhdCBvZiBpdCdzIHBhcmVudCAqLwogIHZlcnRpY2FsLWFsaWduOiBjYWxjKCg2IC8gMjQgLSAwLjM3NSkgKiAxZW0pOyAvKiB2ZXJ0aWNhbGx5IGNlbnRlcnMgdGhlIGljb24gdGFraW5nIGludG8gYWNjb3VudCB0aGUgc3Vycm91bmRpbmcgdGV4dCdzIGRlc2NlbmRlciAqLwp9CgouZmEtMnhsIHsKICBmb250LXNpemU6IGNhbGMoMzIgLyAxNiAqIDFlbSk7IC8qIGNvbnZlcnRzIGEgMzJweCBzaXplIGludG8gYW4gZW0tYmFzZWQgdmFsdWUgdGhhdCdzIHJlbGF0aXZlIHRvIHRoZSBzY2FsZSdzIDE2cHggYmFzZSAqLwogIGxpbmUtaGVpZ2h0OiBjYWxjKDEgLyAzMiAqIDFlbSk7IC8qIHNldHMgdGhlIGxpbmUtaGVpZ2h0IG9mIHRoZSBpY29uIGJhY2sgdG8gdGhhdCBvZiBpdCdzIHBhcmVudCAqLwogIHZlcnRpY2FsLWFsaWduOiBjYWxjKCg2IC8gMzIgLSAwLjM3NSkgKiAxZW0pOyAvKiB2ZXJ0aWNhbGx5IGNlbnRlcnMgdGhlIGljb24gdGFraW5nIGludG8gYWNjb3VudCB0aGUgc3Vycm91bmRpbmcgdGV4dCdzIGRlc2NlbmRlciAqLwp9CgouZmEtd2lkdGgtYXV0byB7CiAgLS1mYS13aWR0aDogYXV0bzsKfQoKLmZhLWZ3LAouZmEtd2lkdGgtZml4ZWQgewogIC0tZmEtd2lkdGg6IDEuMjVlbTsKfQoKLmZhLXVsIHsKICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7CiAgbWFyZ2luLWlubGluZS1zdGFydDogdmFyKC0tZmEtbGktbWFyZ2luLCAyLjVlbSk7CiAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IDA7Cn0KLmZhLXVsID4gbGkgewogIHBvc2l0aW9uOiByZWxhdGl2ZTsKfQoKLmZhLWxpIHsKICBpbnNldC1pbmxpbmUtc3RhcnQ6IGNhbGMoLTEgKiB2YXIoLS1mYS1saS13aWR0aCwgMmVtKSk7CiAgcG9zaXRpb246IGFic29sdXRlOwogIHRleHQtYWxpZ246IGNlbnRlcjsKICB3aWR0aDogdmFyKC0tZmEtbGktd2lkdGgsIDJlbSk7CiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7Cn0KCi8qIEhlYWRzIFVwOiBCb3JkZXJlZCBJY29ucyB3aWxsIG5vdCBiZSBzdXBwb3J0ZWQgaW4gdGhlIGZ1dHVyZSEKICAtIFRoaXMgZmVhdHVyZSB3aWxsIGJlIGRlcHJlY2F0ZWQgaW4gdGhlIG5leHQgbWFqb3IgcmVsZWFzZSBvZiBGb250IEF3ZXNvbWUgKHY4KSEKICAtIFlvdSBtYXkgY29udGludWUgdG8gdXNlIGl0IGluIHRoaXMgdmVyc2lvbiAqdjcpLCBidXQgaXQgd2lsbCBub3QgYmUgc3VwcG9ydGVkIGluIEZvbnQgQXdlc29tZSB2OC4KKi8KLyogTm90ZXM6CiogLS1Ae3YuJGNzcy1wcmVmaXh9LWJvcmRlci13aWR0aCA9IDEvMTYgYnkgZGVmYXVsdCAodG8gcmVuZGVyIGFzIH4xcHggYmFzZWQgb24gYSAxNnB4IGRlZmF1bHQgZm9udC1zaXplKQoqIC0tQHt2LiRjc3MtcHJlZml4fS1ib3JkZXItcGFkZGluZyA9CiAgKiogMy8xNiBmb3IgdmVydGljYWwgcGFkZGluZyAodG8gZ2l2ZSB+MnB4IG9mIHZlcnRpY2FsIHdoaXRlc3BhY2UgYXJvdW5kIGFuIGljb24gY29uc2lkZXJpbmcgaXQncyB2ZXJ0aWNhbCBhbGlnbm1lbnQpCiAgKiogNC8xNiBmb3IgaG9yaXpvbnRhbCBwYWRkaW5nICh0byBnaXZlIH40cHggb2YgaG9yaXpvbnRhbCB3aGl0ZXNwYWNlIGFyb3VuZCBhbiBpY29uKQoqLwouZmEtYm9yZGVyIHsKICBib3JkZXItY29sb3I6IHZhcigtLWZhLWJvcmRlci1jb2xvciwgI2VlZSk7CiAgYm9yZGVyLXJhZGl1czogdmFyKC0tZmEtYm9yZGVyLXJhZGl1cywgMC4xZW0pOwogIGJvcmRlci1zdHlsZTogdmFyKC0tZmEtYm9yZGVyLXN0eWxlLCBzb2xpZCk7CiAgYm9yZGVyLXdpZHRoOiB2YXIoLS1mYS1ib3JkZXItd2lkdGgsIDAuMDYyNWVtKTsKICBib3gtc2l6aW5nOiB2YXIoLS1mYS1ib3JkZXItYm94LXNpemluZywgY29udGVudC1ib3gpOwogIHBhZGRpbmc6IHZhcigtLWZhLWJvcmRlci1wYWRkaW5nLCAwLjE4NzVlbSAwLjI1ZW0pOwp9CgouZmEtcHVsbC1sZWZ0LAouZmEtcHVsbC1zdGFydCB7CiAgZmxvYXQ6IGlubGluZS1zdGFydDsKICBtYXJnaW4taW5saW5lLWVuZDogdmFyKC0tZmEtcHVsbC1tYXJnaW4sIDAuM2VtKTsKfQoKLmZhLXB1bGwtcmlnaHQsCi5mYS1wdWxsLWVuZCB7CiAgZmxvYXQ6IGlubGluZS1lbmQ7CiAgbWFyZ2luLWlubGluZS1zdGFydDogdmFyKC0tZmEtcHVsbC1tYXJnaW4sIDAuM2VtKTsKfQoKLmZhLWJlYXQgewogIGFuaW1hdGlvbi1uYW1lOiBmYS1iZWF0OwogIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZmEtYW5pbWF0aW9uLWRlbGF5LCAwcyk7CiAgYW5pbWF0aW9uLWRpcmVjdGlvbjogdmFyKC0tZmEtYW5pbWF0aW9uLWRpcmVjdGlvbiwgbm9ybWFsKTsKICBhbmltYXRpb24tZHVyYXRpb246IHZhcigtLWZhLWFuaW1hdGlvbi1kdXJhdGlvbiwgMXMpOwogIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IHZhcigtLWZhLWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsIGluZmluaXRlKTsKICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiB2YXIoLS1mYS1hbmltYXRpb24tdGltaW5nLCBlYXNlLWluLW91dCk7Cn0KCi5mYS1ib3VuY2UgewogIGFuaW1hdGlvbi1uYW1lOiBmYS1ib3VuY2U7CiAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1mYS1hbmltYXRpb24tZGVsYXksIDBzKTsKICBhbmltYXRpb24tZGlyZWN0aW9uOiB2YXIoLS1mYS1hbmltYXRpb24tZGlyZWN0aW9uLCBub3JtYWwpOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogdmFyKC0tZmEtYW5pbWF0aW9uLWR1cmF0aW9uLCAxcyk7CiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogdmFyKC0tZmEtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCwgaW5maW5pdGUpOwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IHZhcigtLWZhLWFuaW1hdGlvbi10aW1pbmcsIGN1YmljLWJlemllcigwLjI4LCAwLjg0LCAwLjQyLCAxKSk7Cn0KCi5mYS1mYWRlIHsKICBhbmltYXRpb24tbmFtZTogZmEtZmFkZTsKICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWZhLWFuaW1hdGlvbi1kZWxheSwgMHMpOwogIGFuaW1hdGlvbi1kaXJlY3Rpb246IHZhcigtLWZhLWFuaW1hdGlvbi1kaXJlY3Rpb24sIG5vcm1hbCk7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiB2YXIoLS1mYS1hbmltYXRpb24tZHVyYXRpb24sIDFzKTsKICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiB2YXIoLS1mYS1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCBpbmZpbml0ZSk7CiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogdmFyKC0tZmEtYW5pbWF0aW9uLXRpbWluZywgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC42LCAxKSk7Cn0KCi5mYS1iZWF0LWZhZGUgewogIGFuaW1hdGlvbi1uYW1lOiBmYS1iZWF0LWZhZGU7CiAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1mYS1hbmltYXRpb24tZGVsYXksIDBzKTsKICBhbmltYXRpb24tZGlyZWN0aW9uOiB2YXIoLS1mYS1hbmltYXRpb24tZGlyZWN0aW9uLCBub3JtYWwpOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogdmFyKC0tZmEtYW5pbWF0aW9uLWR1cmF0aW9uLCAxcyk7CiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogdmFyKC0tZmEtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCwgaW5maW5pdGUpOwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IHZhcigtLWZhLWFuaW1hdGlvbi10aW1pbmcsIGN1YmljLWJlemllcigwLjQsIDAsIDAuNiwgMSkpOwp9CgouZmEtZmxpcCB7CiAgYW5pbWF0aW9uLW5hbWU6IGZhLWZsaXA7CiAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1mYS1hbmltYXRpb24tZGVsYXksIDBzKTsKICBhbmltYXRpb24tZGlyZWN0aW9uOiB2YXIoLS1mYS1hbmltYXRpb24tZGlyZWN0aW9uLCBub3JtYWwpOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogdmFyKC0tZmEtYW5pbWF0aW9uLWR1cmF0aW9uLCAxcyk7CiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogdmFyKC0tZmEtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCwgaW5maW5pdGUpOwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IHZhcigtLWZhLWFuaW1hdGlvbi10aW1pbmcsIGVhc2UtaW4tb3V0KTsKfQoKLmZhLXNoYWtlIHsKICBhbmltYXRpb24tbmFtZTogZmEtc2hha2U7CiAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1mYS1hbmltYXRpb24tZGVsYXksIDBzKTsKICBhbmltYXRpb24tZGlyZWN0aW9uOiB2YXIoLS1mYS1hbmltYXRpb24tZGlyZWN0aW9uLCBub3JtYWwpOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogdmFyKC0tZmEtYW5pbWF0aW9uLWR1cmF0aW9uLCAxcyk7CiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogdmFyKC0tZmEtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCwgaW5maW5pdGUpOwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IHZhcigtLWZhLWFuaW1hdGlvbi10aW1pbmcsIGxpbmVhcik7Cn0KCi5mYS1zcGluIHsKICBhbmltYXRpb24tbmFtZTogZmEtc3BpbjsKICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWZhLWFuaW1hdGlvbi1kZWxheSwgMHMpOwogIGFuaW1hdGlvbi1kaXJlY3Rpb246IHZhcigtLWZhLWFuaW1hdGlvbi1kaXJlY3Rpb24sIG5vcm1hbCk7CiAgYW5pbWF0aW9uLWR1cmF0aW9uOiB2YXIoLS1mYS1hbmltYXRpb24tZHVyYXRpb24sIDJzKTsKICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiB2YXIoLS1mYS1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCBpbmZpbml0ZSk7CiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogdmFyKC0tZmEtYW5pbWF0aW9uLXRpbWluZywgbGluZWFyKTsKfQoKLmZhLXNwaW4tcmV2ZXJzZSB7CiAgLS1mYS1hbmltYXRpb24tZGlyZWN0aW9uOiByZXZlcnNlOwp9CgouZmEtcHVsc2UsCi5mYS1zcGluLXB1bHNlIHsKICBhbmltYXRpb24tbmFtZTogZmEtc3BpbjsKICBhbmltYXRpb24tZGlyZWN0aW9uOiB2YXIoLS1mYS1hbmltYXRpb24tZGlyZWN0aW9uLCBub3JtYWwpOwogIGFuaW1hdGlvbi1kdXJhdGlvbjogdmFyKC0tZmEtYW5pbWF0aW9uLWR1cmF0aW9uLCAxcyk7CiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogdmFyKC0tZmEtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCwgaW5maW5pdGUpOwogIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IHZhcigtLWZhLWFuaW1hdGlvbi10aW1pbmcsIHN0ZXBzKDgpKTsKfQoKQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHsKICAuZmEtYmVhdCwKICAuZmEtYm91bmNlLAogIC5mYS1mYWRlLAogIC5mYS1iZWF0LWZhZGUsCiAgLmZhLWZsaXAsCiAgLmZhLXB1bHNlLAogIC5mYS1zaGFrZSwKICAuZmEtc3BpbiwKICAuZmEtc3Bpbi1wdWxzZSB7CiAgICBhbmltYXRpb246IG5vbmUgIWltcG9ydGFudDsKICAgIHRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDsKICB9Cn0KQGtleWZyYW1lcyBmYS1iZWF0IHsKICAwJSwgOTAlIHsKICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7CiAgfQogIDQ1JSB7CiAgICB0cmFuc2Zvcm06IHNjYWxlKHZhcigtLWZhLWJlYXQtc2NhbGUsIDEuMjUpKTsKICB9Cn0KQGtleWZyYW1lcyBmYS1ib3VuY2UgewogIDAlIHsKICAgIHRyYW5zZm9ybTogc2NhbGUoMSwgMSkgdHJhbnNsYXRlWSgwKTsKICB9CiAgMTAlIHsKICAgIHRyYW5zZm9ybTogc2NhbGUodmFyKC0tZmEtYm91bmNlLXN0YXJ0LXNjYWxlLXgsIDEuMSksIHZhcigtLWZhLWJvdW5jZS1zdGFydC1zY2FsZS15LCAwLjkpKSB0cmFuc2xhdGVZKDApOwogIH0KICAzMCUgewogICAgdHJhbnNmb3JtOiBzY2FsZSh2YXIoLS1mYS1ib3VuY2UtanVtcC1zY2FsZS14LCAwLjkpLCB2YXIoLS1mYS1ib3VuY2UtanVtcC1zY2FsZS15LCAxLjEpKSB0cmFuc2xhdGVZKHZhcigtLWZhLWJvdW5jZS1oZWlnaHQsIC0wLjVlbSkpOwogIH0KICA1MCUgewogICAgdHJhbnNmb3JtOiBzY2FsZSh2YXIoLS1mYS1ib3VuY2UtbGFuZC1zY2FsZS14LCAxLjA1KSwgdmFyKC0tZmEtYm91bmNlLWxhbmQtc2NhbGUteSwgMC45NSkpIHRyYW5zbGF0ZVkoMCk7CiAgfQogIDU3JSB7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDEsIDEpIHRyYW5zbGF0ZVkodmFyKC0tZmEtYm91bmNlLXJlYm91bmQsIC0wLjEyNWVtKSk7CiAgfQogIDY0JSB7CiAgICB0cmFuc2Zvcm06IHNjYWxlKDEsIDEpIHRyYW5zbGF0ZVkoMCk7CiAgfQogIDEwMCUgewogICAgdHJhbnNmb3JtOiBzY2FsZSgxLCAxKSB0cmFuc2xhdGVZKDApOwogIH0KfQpAa2V5ZnJhbWVzIGZhLWZhZGUgewogIDUwJSB7CiAgICBvcGFjaXR5OiB2YXIoLS1mYS1mYWRlLW9wYWNpdHksIDAuNCk7CiAgfQp9CkBrZXlmcmFtZXMgZmEtYmVhdC1mYWRlIHsKICAwJSwgMTAwJSB7CiAgICBvcGFjaXR5OiB2YXIoLS1mYS1iZWF0LWZhZGUtb3BhY2l0eSwgMC40KTsKICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7CiAgfQogIDUwJSB7CiAgICBvcGFjaXR5OiAxOwogICAgdHJhbnNmb3JtOiBzY2FsZSh2YXIoLS1mYS1iZWF0LWZhZGUtc2NhbGUsIDEuMTI1KSk7CiAgfQp9CkBrZXlmcmFtZXMgZmEtZmxpcCB7CiAgNTAlIHsKICAgIHRyYW5zZm9ybTogcm90YXRlM2QodmFyKC0tZmEtZmxpcC14LCAwKSwgdmFyKC0tZmEtZmxpcC15LCAxKSwgdmFyKC0tZmEtZmxpcC16LCAwKSwgdmFyKC0tZmEtZmxpcC1hbmdsZSwgLTE4MGRlZykpOwogIH0KfQpAa2V5ZnJhbWVzIGZhLXNoYWtlIHsKICAwJSB7CiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTVkZWcpOwogIH0KICA0JSB7CiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxNWRlZyk7CiAgfQogIDglLCAyNCUgewogICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4ZGVnKTsKICB9CiAgMTIlLCAyOCUgewogICAgdHJhbnNmb3JtOiByb3RhdGUoMThkZWcpOwogIH0KICAxNiUgewogICAgdHJhbnNmb3JtOiByb3RhdGUoLTIyZGVnKTsKICB9CiAgMjAlIHsKICAgIHRyYW5zZm9ybTogcm90YXRlKDIyZGVnKTsKICB9CiAgMzIlIHsKICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMmRlZyk7CiAgfQogIDM2JSB7CiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMmRlZyk7CiAgfQogIDQwJSwgMTAwJSB7CiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsKICB9Cn0KQGtleWZyYW1lcyBmYS1zcGluIHsKICAwJSB7CiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsKICB9CiAgMTAwJSB7CiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOwogIH0KfQouZmEtcm90YXRlLTkwIHsKICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7Cn0KCi5mYS1yb3RhdGUtMTgwIHsKICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOwp9CgouZmEtcm90YXRlLTI3MCB7CiAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTsKfQoKLmZhLWZsaXAtaG9yaXpvbnRhbCB7CiAgdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSk7Cn0KCi5mYS1mbGlwLXZlcnRpY2FsIHsKICB0cmFuc2Zvcm06IHNjYWxlKDEsIC0xKTsKfQoKLmZhLWZsaXAtYm90aCwKLmZhLWZsaXAtaG9yaXpvbnRhbC5mYS1mbGlwLXZlcnRpY2FsIHsKICB0cmFuc2Zvcm06IHNjYWxlKC0xLCAtMSk7Cn0KCi5mYS1yb3RhdGUtYnkgewogIHRyYW5zZm9ybTogcm90YXRlKHZhcigtLWZhLXJvdGF0ZS1hbmdsZSwgMCkpOwp9Cgouc3ZnLWlubGluZS0tZmEgLmZhLXByaW1hcnkgewogIGZpbGw6IHZhcigtLWZhLXByaW1hcnktY29sb3IsIGN1cnJlbnRDb2xvcik7CiAgb3BhY2l0eTogdmFyKC0tZmEtcHJpbWFyeS1vcGFjaXR5LCAxKTsKfQoKLnN2Zy1pbmxpbmUtLWZhIC5mYS1zZWNvbmRhcnkgewogIGZpbGw6IHZhcigtLWZhLXNlY29uZGFyeS1jb2xvciwgY3VycmVudENvbG9yKTsKICBvcGFjaXR5OiB2YXIoLS1mYS1zZWNvbmRhcnktb3BhY2l0eSwgMC40KTsKfQoKLnN2Zy1pbmxpbmUtLWZhLmZhLXN3YXAtb3BhY2l0eSAuZmEtcHJpbWFyeSB7CiAgb3BhY2l0eTogdmFyKC0tZmEtc2Vjb25kYXJ5LW9wYWNpdHksIDAuNCk7Cn0KCi5zdmctaW5saW5lLS1mYS5mYS1zd2FwLW9wYWNpdHkgLmZhLXNlY29uZGFyeSB7CiAgb3BhY2l0eTogdmFyKC0tZmEtcHJpbWFyeS1vcGFjaXR5LCAxKTsKfQoKLnN2Zy1pbmxpbmUtLWZhIG1hc2sgLmZhLXByaW1hcnksCi5zdmctaW5saW5lLS1mYSBtYXNrIC5mYS1zZWNvbmRhcnkgewogIGZpbGw6IGJsYWNrOwp9Cgouc3ZnLWlubGluZS0tZmEuZmEtaW52ZXJzZSB7CiAgZmlsbDogdmFyKC0tZmEtaW52ZXJzZSwgI2ZmZik7Cn0KCi5mYS1zdGFjayB7CiAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogIGhlaWdodDogMmVtOwogIGxpbmUtaGVpZ2h0OiAyZW07CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CiAgd2lkdGg6IDIuNWVtOwp9CgouZmEtaW52ZXJzZSB7CiAgY29sb3I6IHZhcigtLWZhLWludmVyc2UsICNmZmYpOwp9Cgouc3ZnLWlubGluZS0tZmEuZmEtc3RhY2stMXggewogIC0tZmEtd2lkdGg6IDEuMjVlbTsKICBoZWlnaHQ6IDFlbTsKICB3aWR0aDogdmFyKC0tZmEtd2lkdGgpOwp9Ci5zdmctaW5saW5lLS1mYS5mYS1zdGFjay0yeCB7CiAgLS1mYS13aWR0aDogMi41ZW07CiAgaGVpZ2h0OiAyZW07CiAgd2lkdGg6IHZhcigtLWZhLXdpZHRoKTsKfQoKLmZhLXN0YWNrLTF4LAouZmEtc3RhY2stMnggewogIGluc2V0OiAwOwogIG1hcmdpbjogYXV0bzsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgei1pbmRleDogdmFyKC0tZmEtc3RhY2stei1pbmRleCwgYXV0byk7Cn1gO0VKdD0hMTtjeGE9e21peG91dDpmdW5jdGlvbigpe3JldHVybntkb206e2NzczpBSnQsaW5zZXJ0Q3NzOmdrZX19fSxob29rczpmdW5jdGlvbigpe3JldHVybntiZWZvcmVET01FbGVtZW50Q3JlYXRpb246ZnVuY3Rpb24oKXtna2UoKX0sYmVmb3JlSTJzdmc6ZnVuY3Rpb24oKXtna2UoKX19fX0sQ2M9SzR8fHt9O0NjW3pjXXx8KENjW3pjXT17fSksQ2NbemNdLnN0eWxlc3x8KENjW3pjXS5zdHlsZXM9e30pLENjW3pjXS5ob29rc3x8KENjW3pjXS5ob29rcz17fSksQ2NbemNdLnNoaW1zfHwoQ2NbemNdLnNoaW1zPVtdKTtBcz1DY1t6Y10sJEp0PVtdLFBKdD1mdW5jdGlvbigpe1NhLnJlbW92ZUV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLFBKdCksRHNlPTEsJEp0Lm1hcChmdW5jdGlvbih0KXtyZXR1cm4gdCgpfSl9LERzZT0hMTtTYyYmKERzZT0oU2EuZG9jdW1lbnRFbGVtZW50LmRvU2Nyb2xsPy9ebG9hZGVkfF5jLzovXmxvYWRlZHxeaXxeYy8pLnRlc3QoU2EucmVhZHlTdGF0ZSksRHNlfHxTYS5hZGRFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIixQSnQpKTt1eGE9ZnVuY3Rpb24odCxyKXtyZXR1cm4gZnVuY3Rpb24oYSxpLG8sbil7cmV0dXJuIHQuY2FsbChyLGEsaSxvLG4pfX0seGtlPWZ1bmN0aW9uKHQscixhLGkpe3ZhciBvPU9iamVjdC5rZXlzKHQpLG49by5sZW5ndGgscz1pIT09dm9pZCAwP3V4YShyLGkpOnIsYyxkLGY7Zm9yKGE9PT12b2lkIDA/KGM9MSxmPXRbb1swXV0pOihjPTAsZj1hKTtjPG47YysrKWQ9b1tjXSxmPXMoZix0W2RdLGQsdCk7cmV0dXJuIGZ9O3ZrZT0xLEVzPTIsWlMxPVtbRXMsWjEoL3BhdGggb3BhY2l0eT0iKFteIl0qKSIuKmQ9IihbXiJdKikiLipwYXRoLipkPSIoW14iXSopIi8se2QyOjIsZDE6M30pXSxbRXMsWjEoL3BhdGggb3BhY2l0eT0iKFteIl0qKSIuKmQ9IihbXiJdKikiLyx7ZDI6Mn0pXSxbdmtlLFoxKC9wYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIuKmQ9IihbXiJdKykiLyx7ZDE6MX0pXV0sWFMxPVtbRXMsWjEoL3BhdGggY2xhc3M9IihbXiJdKnNlY29uZGFyeVteIl0qKSIuKmQ9IihbXiJdKykiLipwYXRoIGNsYXNzPSIoW14iXSpwcmltYXJ5W14iXSopIi4qZD0iKFteIl0rKSIvLHthdHRyMjoxLGQyOjIsYXR0cjE6MyxkMTo0fSldLFtFcyxaMSgvcGF0aCBjbGFzcz0iKFteIl0qcHJpbWFyeVteIl0qKSIuKmQ9IihbXiJdKykiLipwYXRoIGNsYXNzPSIoW14iXSpzZWNvbmRhcnlbXiJdKikiLipkPSIoW14iXSspIi8se2F0dHIxOjEsZDE6MixhdHRyMjozLGQyOjR9KV0sW0VzLFoxKC9wYXRoIGNsYXNzPSIoW14iXSpwcmltYXJ5W14iXSopIi4qZD0iKFteIl0rKSIvLHthdHRyMToxLGQxOjJ9KV0sW0VzLFoxKC9wYXRoIGNsYXNzPSIoW14iXSpzZWNvbmRhcnlbXiJdKikiLipkPSIoW14iXSspIi8se2F0dHIyOjEsZDI6Mn0pXSxbRXMsWjEoL3BhdGggZD0iKFteIl0rKSIuKmNsYXNzPSIoW14iXSpzZWNvbmRhcnlbXiJdKikiLipwYXRoIGQ9IihbXiJdKykiLipjbGFzcz0iKFteIl0qcHJpbWFyeVteIl0qKSIvLHtkMjoxLGF0dHIyOjIsZDE6MyxhdHRyMTo0fSldLFtFcyxaMSgvcGF0aCBkPSIoW14iXSspIi4qY2xhc3M9IihbXiJdKnByaW1hcnlbXiJdKikiLipwYXRoIGQ9IihbXiJdKykiLipjbGFzcz0iKFteIl0qc2Vjb25kYXJ5W14iXSopIi8se2QxOjEsYXR0cjE6MixkMjozLGF0dHIyOjR9KV0sW0VzLFoxKC9wYXRoIGQ9IihbXiJdKykiLipjbGFzcz0iKFteIl0qcHJpbWFyeVteIl0qKSIvLHtkMToxLGF0dHIxOjJ9KV0sW0VzLFoxKC9wYXRoIGQ9IihbXiJdKykiLipjbGFzcz0iKFteIl0qc2Vjb25kYXJ5W14iXSopIi8se2QyOjEsYXR0cjI6Mn0pXSxbRXMsWjEoL3BhdGggZD0iKFteIl0rKSIuKnBhdGggZD0iKFteIl0rKSIvLHtkMToxLGQyOjJ9KV0sW3ZrZSxaMSgvcGF0aCBkPSIoW14iXSspIi8se2QxOjF9KV0sW3ZrZSxaMSgvcGF0aCBzdHlsZT0iKFteIl0rKSIuKmQ9IihbXiJdKykiLyx7YXR0cjE6MSxkMToyfSldXSxzdz1Bcy5zdHlsZXMsZnhhPUFzLnNoaW1zLE9KdD1PYmplY3Qua2V5cyh1a2UpLHB4YT1PSnQucmVkdWNlKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGVbdF09T2JqZWN0LmtleXModWtlW3RdKSxlfSx7fSkseWtlPW51bGwsUkp0PXt9LEJKdD17fSxISnQ9e30scUp0PXt9LGpKdD17fTtWSnQ9ZnVuY3Rpb24oKXt2YXIgdD1mdW5jdGlvbihvKXtyZXR1cm4geGtlKHN3LGZ1bmN0aW9uKG4scyxjKXtyZXR1cm4gbltjXT14a2UocyxvLHt9KSxufSx7fSl9O1JKdD10KGZ1bmN0aW9uKGksbyxuKXtpZihvWzNdJiYoaVtvWzNdXT1uKSxvWzJdKXt2YXIgcz1vWzJdLmZpbHRlcihmdW5jdGlvbihjKXtyZXR1cm4gdHlwZW9mIGM9PSJudW1iZXIifSk7cy5mb3JFYWNoKGZ1bmN0aW9uKGMpe2lbYy50b1N0cmluZygxNildPW59KX1yZXR1cm4gaX0pLEJKdD10KGZ1bmN0aW9uKGksbyxuKXtpZihpW25dPW4sb1syXSl7dmFyIHM9b1syXS5maWx0ZXIoZnVuY3Rpb24oYyl7cmV0dXJuIHR5cGVvZiBjPT0ic3RyaW5nIn0pO3MuZm9yRWFjaChmdW5jdGlvbihjKXtpW2NdPW59KX1yZXR1cm4gaX0pLGpKdD10KGZ1bmN0aW9uKGksbyxuKXt2YXIgcz1vWzJdO3JldHVybiBpW25dPW4scy5mb3JFYWNoKGZ1bmN0aW9uKGMpe2lbY109bn0pLGl9KTt2YXIgcj0iZmFyImluIHN3fHxTdC5hdXRvRmV0Y2hTdmcsYT14a2UoZnhhLGZ1bmN0aW9uKGksbyl7dmFyIG49b1swXSxzPW9bMV0sYz1vWzJdO3JldHVybiBzPT09ImZhciImJiFyJiYocz0iZmFzIiksdHlwZW9mIG49PSJzdHJpbmciJiYoaS5uYW1lc1tuXT17cHJlZml4OnMsaWNvbk5hbWU6Y30pLHR5cGVvZiBuPT0ibnVtYmVyIiYmKGkudW5pY29kZXNbbi50b1N0cmluZygxNildPXtwcmVmaXg6cyxpY29uTmFtZTpjfSksaX0se25hbWVzOnt9LHVuaWNvZGVzOnt9fSk7SEp0PWEubmFtZXMscUp0PWEudW5pY29kZXMseWtlPUFzZShTdC5zdHlsZURlZmF1bHQse2ZhbWlseTpTdC5mYW1pbHlEZWZhdWx0fSl9O3J4YShmdW5jdGlvbihlKXt5a2U9QXNlKGUuc3R5bGVEZWZhdWx0LHtmYW1pbHk6U3QuZmFtaWx5RGVmYXVsdH0pfSksVkp0KCk7V0p0PWZ1bmN0aW9uKCl7cmV0dXJue3ByZWZpeDpudWxsLGljb25OYW1lOm51bGwscmVzdDpbXX19O1lKdD14SnQuY29uY2F0KGhKdCk7d3hhPXBKdC5maWx0ZXIoZnVuY3Rpb24oZSl7cmV0dXJuIGUhPT1wMXx8ZSE9PXJ3fSksTXhhPU9iamVjdC5rZXlzKGlrZSkuZmlsdGVyKGZ1bmN0aW9uKGUpe3JldHVybiBlIT09cDF9KS5tYXAoZnVuY3Rpb24oZSl7cmV0dXJuIE9iamVjdC5rZXlzKGlrZVtlXSl9KS5mbGF0KCk7U3hhPShmdW5jdGlvbigpe2Z1bmN0aW9uIGUoKXtvOWEodGhpcyxlKSx0aGlzLmRlZmluaXRpb25zPXt9fXJldHVybiBuOWEoZSxbe2tleToiYWRkIix2YWx1ZTpmdW5jdGlvbigpe2Zvcih2YXIgcj10aGlzLGE9YXJndW1lbnRzLmxlbmd0aCxpPW5ldyBBcnJheShhKSxvPTA7bzxhO28rKylpW29dPWFyZ3VtZW50c1tvXTt2YXIgbj1pLnJlZHVjZSh0aGlzLl9wdWxsRGVmaW5pdGlvbnMse30pO09iamVjdC5rZXlzKG4pLmZvckVhY2goZnVuY3Rpb24ocyl7ci5kZWZpbml0aW9uc1tzXT1RZShRZSh7fSxyLmRlZmluaXRpb25zW3NdfHx7fSksbltzXSksYmtlKHMsbltzXSk7dmFyIGM9dWtlW3AxXVtzXTtjJiZia2UoYyxuW3NdKSxWSnQoKX0pfX0se2tleToicmVzZXQiLHZhbHVlOmZ1bmN0aW9uKCl7dGhpcy5kZWZpbml0aW9ucz17fX19LHtrZXk6Il9wdWxsRGVmaW5pdGlvbnMiLHZhbHVlOmZ1bmN0aW9uKHIsYSl7dmFyIGk9YS5wcmVmaXgmJmEuaWNvbk5hbWUmJmEuaWNvbj97MDphfTphO3JldHVybiBPYmplY3Qua2V5cyhpKS5tYXAoZnVuY3Rpb24obyl7dmFyIG49aVtvXSxzPW4ucHJlZml4LGM9bi5pY29uTmFtZSxkPW4uaWNvbixmPWRbMl07cltzXXx8KHJbc109e30pLGYubGVuZ3RoPjAmJmYuZm9yRWFjaChmdW5jdGlvbih1KXt0eXBlb2YgdT09InN0cmluZyImJihyW3NdW3VdPWQpfSkscltzXVtjXT1kfSkscn19XSl9KSgpLFpKdD1bXSxEOT17fSxBOT17fSx6eGE9T2JqZWN0LmtleXMoQTkpO1hKdD1uZXcgU3hhLF94YT1mdW5jdGlvbigpe1N0LmF1dG9SZXBsYWNlU3ZnPSExLFN0Lm9ic2VydmVNdXRhdGlvbnM9ITEsc3UoIm5vQXV0byIpfSxUeGE9e2kyc3ZnOmZ1bmN0aW9uKCl7dmFyIHQ9YXJndW1lbnRzLmxlbmd0aD4wJiZhcmd1bWVudHNbMF0hPT12b2lkIDA/YXJndW1lbnRzWzBdOnt9O3JldHVybiBTYz8oc3UoImJlZm9yZUkyc3ZnIix0KSx0MygicHNldWRvRWxlbWVudHMyc3ZnIix0KSx0MygiaTJzdmciLHQpKTpQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoIk9wZXJhdGlvbiByZXF1aXJlcyBhIERPTSBvZiBzb21lIGtpbmQuIikpfSx3YXRjaDpmdW5jdGlvbigpe3ZhciB0PWFyZ3VtZW50cy5sZW5ndGg+MCYmYXJndW1lbnRzWzBdIT09dm9pZCAwP2FyZ3VtZW50c1swXTp7fSxyPXQuYXV0b1JlcGxhY2VTdmdSb290O1N0LmF1dG9SZXBsYWNlU3ZnPT09ITEmJihTdC5hdXRvUmVwbGFjZVN2Zz0hMCksU3Qub2JzZXJ2ZU11dGF0aW9ucz0hMCxkeGEoZnVuY3Rpb24oKXtEeGEoe2F1dG9SZXBsYWNlU3ZnUm9vdDpyfSksc3UoIndhdGNoIix0KX0pfX0sTHhhPXtpY29uOmZ1bmN0aW9uKHQpe2lmKHQ9PT1udWxsKXJldHVybiBudWxsO2lmKENzZSh0KT09PSJvYmplY3QiJiZ0LnByZWZpeCYmdC5pY29uTmFtZSlyZXR1cm57cHJlZml4OnQucHJlZml4LGljb25OYW1lOm51KHQucHJlZml4LHQuaWNvbk5hbWUpfHx0Lmljb25OYW1lfTtpZihBcnJheS5pc0FycmF5KHQpJiZ0Lmxlbmd0aD09PTIpe3ZhciByPXRbMV0uaW5kZXhPZigiZmEtIik9PT0wP3RbMV0uc2xpY2UoMyk6dFsxXSxhPUFzZSh0WzBdKTtyZXR1cm57cHJlZml4OmEsaWNvbk5hbWU6bnUoYSxyKXx8cn19aWYodHlwZW9mIHQ9PSJzdHJpbmciJiYodC5pbmRleE9mKCIiLmNvbmNhdChTdC5jc3NQcmVmaXgsIi0iKSk+LTF8fHQubWF0Y2goWmdhKSkpe3ZhciBpPUVzZSh0LnNwbGl0KCIgIikse3NraXBMb29rdXBzOiEwfSk7cmV0dXJue3ByZWZpeDppLnByZWZpeHx8ZTMoKSxpY29uTmFtZTpudShpLnByZWZpeCxpLmljb25OYW1lKXx8aS5pY29uTmFtZX19aWYodHlwZW9mIHQ9PSJzdHJpbmciKXt2YXIgbz1lMygpO3JldHVybntwcmVmaXg6byxpY29uTmFtZTpudShvLHQpfHx0fX19fSxObz17bm9BdXRvOl94YSxjb25maWc6U3QsZG9tOlR4YSxwYXJzZTpMeGEsbGlicmFyeTpYSnQsZmluZEljb25EZWZpbml0aW9uOmtrZSx0b0h0bWw6bnd9LER4YT1mdW5jdGlvbigpe3ZhciB0PWFyZ3VtZW50cy5sZW5ndGg+MCYmYXJndW1lbnRzWzBdIT09dm9pZCAwP2FyZ3VtZW50c1swXTp7fSxyPXQuYXV0b1JlcGxhY2VTdmdSb290LGE9cj09PXZvaWQgMD9TYTpyOyhPYmplY3Qua2V5cyhBcy5zdHlsZXMpLmxlbmd0aD4wfHxTdC5hdXRvRmV0Y2hTdmcpJiZTYyYmU3QuYXV0b1JlcGxhY2VTdmcmJk5vLmRvbS5pMnN2Zyh7bm9kZTphfSl9O3prZT1Bcy5zdHlsZXM7SXhhPXtmb3VuZDohMSx3aWR0aDo1MTIsaGVpZ2h0OjUxMn07S0p0PWZ1bmN0aW9uKCl7fSxUa2U9U3QubWVhc3VyZVBlcmZvcm1hbmNlJiZfc2UmJl9zZS5tYXJrJiZfc2UubWVhc3VyZT9fc2U6e21hcms6S0p0LG1lYXN1cmU6S0p0fSxsdz0nRkEgIjcuMi4wIicsRnhhPWZ1bmN0aW9uKHQpe3JldHVybiBUa2UubWFyaygiIi5jb25jYXQobHcsIiAiKS5jb25jYXQodCwiIGJlZ2lucyIpKSxmdW5jdGlvbigpe3JldHVybiBKSnQodCl9fSxKSnQ9ZnVuY3Rpb24odCl7VGtlLm1hcmsoIiIuY29uY2F0KGx3LCIgIikuY29uY2F0KHQsIiBlbmRzIikpLFRrZS5tZWFzdXJlKCIiLmNvbmNhdChsdywiICIpLmNvbmNhdCh0KSwiIi5jb25jYXQobHcsIiAiKS5jb25jYXQodCwiIGJlZ2lucyIpLCIiLmNvbmNhdChsdywiICIpLmNvbmNhdCh0LCIgZW5kcyIpKX0sTGtlPXtiZWdpbjpGeGEsZW5kOkpKdH0sUHNlPWZ1bmN0aW9uKCl7fTtJc2U9e3JlcGxhY2U6ZnVuY3Rpb24odCl7dmFyIHI9dFswXTtpZihyLnBhcmVudE5vZGUpaWYodFsxXS5mb3JFYWNoKGZ1bmN0aW9uKGkpe3IucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUodGVyKGkpLHIpfSksci5nZXRBdHRyaWJ1dGUob3UpPT09bnVsbCYmU3Qua2VlcE9yaWdpbmFsU291cmNlKXt2YXIgYT1TYS5jcmVhdGVDb21tZW50KGp4YShyKSk7ci5wYXJlbnROb2RlLnJlcGxhY2VDaGlsZChhLHIpfWVsc2Ugci5yZW1vdmUoKX0sbmVzdDpmdW5jdGlvbih0KXt2YXIgcj10WzBdLGE9dFsxXTtpZih+aGtlKHIpLmluZGV4T2YoU3QucmVwbGFjZW1lbnRDbGFzcykpcmV0dXJuIElzZS5yZXBsYWNlKHQpO3ZhciBpPW5ldyBSZWdFeHAoIiIuY29uY2F0KFN0LmNzc1ByZWZpeCwiLS4qIikpO2lmKGRlbGV0ZSBhWzBdLmF0dHJpYnV0ZXMuaWQsYVswXS5hdHRyaWJ1dGVzLmNsYXNzKXt2YXIgbz1hWzBdLmF0dHJpYnV0ZXMuY2xhc3Muc3BsaXQoIiAiKS5yZWR1Y2UoZnVuY3Rpb24ocyxjKXtyZXR1cm4gYz09PVN0LnJlcGxhY2VtZW50Q2xhc3N8fGMubWF0Y2goaSk/cy50b1N2Zy5wdXNoKGMpOnMudG9Ob2RlLnB1c2goYyksc30se3RvTm9kZTpbXSx0b1N2ZzpbXX0pO2FbMF0uYXR0cmlidXRlcy5jbGFzcz1vLnRvU3ZnLmpvaW4oIiAiKSxvLnRvTm9kZS5sZW5ndGg9PT0wP3IucmVtb3ZlQXR0cmlidXRlKCJjbGFzcyIpOnIuc2V0QXR0cmlidXRlKCJjbGFzcyIsby50b05vZGUuam9pbigiICIpKX12YXIgbj1hLm1hcChmdW5jdGlvbihzKXtyZXR1cm4gbncocyl9KS5qb2luKGAKYCk7ci5zZXRBdHRyaWJ1dGUob3UsIiIpLHIuaW5uZXJIVE1MPW59fTtEa2U9ITE7TnNlPW51bGw7WnhhPUFzLnN0eWxlcztKeGE9ZnVuY3Rpb24odCl7dmFyIHI9YXJndW1lbnRzLmxlbmd0aD4xJiZhcmd1bWVudHNbMV0hPT12b2lkIDA/YXJndW1lbnRzWzFdOnt9LGE9ci50cmFuc2Zvcm0saT1hPT09dm9pZCAwP2xsOmEsbz1yLnN5bWJvbCxuPW89PT12b2lkIDA/ITE6byxzPXIubWFzayxjPXM9PT12b2lkIDA/bnVsbDpzLGQ9ci5tYXNrSWQsZj1kPT09dm9pZCAwP251bGw6ZCx1PXIuY2xhc3NlcyxwPXU9PT12b2lkIDA/W106dSxoPXIuYXR0cmlidXRlcyxiPWg9PT12b2lkIDA/e306aCx4PXIuc3R5bGVzLGc9eD09PXZvaWQgMD97fTp4O2lmKHQpe3ZhciB2PXQucHJlZml4LHc9dC5pY29uTmFtZSxNPXQuaWNvbjtyZXR1cm4gJHNlKFFlKHt0eXBlOiJpY29uIn0sdCksZnVuY3Rpb24oKXtyZXR1cm4gc3UoImJlZm9yZURPTUVsZW1lbnRDcmVhdGlvbiIse2ljb25EZWZpbml0aW9uOnQscGFyYW1zOnJ9KSxTa2Uoe2ljb25zOnttYWluOkNrZShNKSxtYXNrOmM/Q2tlKGMuaWNvbik6e2ZvdW5kOiExLHdpZHRoOm51bGwsaGVpZ2h0Om51bGwsaWNvbjp7fX19LHByZWZpeDp2LGljb25OYW1lOncsdHJhbnNmb3JtOlFlKFFlKHt9LGxsKSxpKSxzeW1ib2w6bixtYXNrSWQ6ZixleHRyYTp7YXR0cmlidXRlczpiLHN0eWxlczpnLGNsYXNzZXM6cH19KX0pfX0sZWJhPXttaXhvdXQ6ZnVuY3Rpb24oKXtyZXR1cm57aWNvbjpLeGEoSnhhKX19LGhvb2tzOmZ1bmN0aW9uKCl7cmV0dXJue211dGF0aW9uT2JzZXJ2ZXJDYWxsYmFja3M6ZnVuY3Rpb24ocil7cmV0dXJuIHIudHJlZUNhbGxiYWNrPWxlcixyLm5vZGVDYWxsYmFjaz1ReGEscn19fSxwcm92aWRlczpmdW5jdGlvbih0KXt0Lmkyc3ZnPWZ1bmN0aW9uKHIpe3ZhciBhPXIubm9kZSxpPWE9PT12b2lkIDA/U2E6YSxvPXIuY2FsbGJhY2ssbj1vPT09dm9pZCAwP2Z1bmN0aW9uKCl7fTpvO3JldHVybiBsZXIoaSxuKX0sdC5nZW5lcmF0ZVN2Z1JlcGxhY2VtZW50TXV0YXRpb249ZnVuY3Rpb24ocixhKXt2YXIgaT1hLmljb25OYW1lLG89YS5wcmVmaXgsbj1hLnRyYW5zZm9ybSxzPWEuc3ltYm9sLGM9YS5tYXNrLGQ9YS5tYXNrSWQsZj1hLmV4dHJhO3JldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbih1LHApe1Byb21pc2UuYWxsKFtfa2UoaSxvKSxjLmljb25OYW1lP19rZShjLmljb25OYW1lLGMucHJlZml4KTpQcm9taXNlLnJlc29sdmUoe2ZvdW5kOiExLHdpZHRoOjUxMixoZWlnaHQ6NTEyLGljb246e319KV0pLnRoZW4oZnVuY3Rpb24oaCl7dmFyIGI9enNlKGgsMikseD1iWzBdLGc9YlsxXTt1KFtyLFNrZSh7aWNvbnM6e21haW46eCxtYXNrOmd9LHByZWZpeDpvLGljb25OYW1lOmksdHJhbnNmb3JtOm4sc3ltYm9sOnMsbWFza0lkOmQsZXh0cmE6Zix3YXRjaGFibGU6ITB9KV0pfSkuY2F0Y2gocCl9KX0sdC5nZW5lcmF0ZUFic3RyYWN0SWNvbj1mdW5jdGlvbihyKXt2YXIgYT1yLmNoaWxkcmVuLGk9ci5hdHRyaWJ1dGVzLG89ci5tYWluLG49ci50cmFuc2Zvcm0scz1yLnN0eWxlcyxjPUxzZShzKTtjLmxlbmd0aD4wJiYoaS5zdHlsZT1jKTt2YXIgZDtyZXR1cm4gbWtlKG4pJiYoZD10MygiZ2VuZXJhdGVBYnN0cmFjdFRyYW5zZm9ybUdyb3VwaW5nIix7bWFpbjpvLHRyYW5zZm9ybTpuLGNvbnRhaW5lcldpZHRoOm8ud2lkdGgsaWNvbldpZHRoOm8ud2lkdGh9KSksYS5wdXNoKGR8fG8uaWNvbikse2NoaWxkcmVuOmEsYXR0cmlidXRlczppfX19fSx0YmE9e21peG91dDpmdW5jdGlvbigpe3JldHVybntsYXllcjpmdW5jdGlvbihyKXt2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjEmJmFyZ3VtZW50c1sxXSE9PXZvaWQgMD9hcmd1bWVudHNbMV06e30saT1hLmNsYXNzZXMsbz1pPT09dm9pZCAwP1tdOmk7cmV0dXJuICRzZSh7dHlwZToibGF5ZXIifSxmdW5jdGlvbigpe3N1KCJiZWZvcmVET01FbGVtZW50Q3JlYXRpb24iLHthc3NlbWJsZXI6cixwYXJhbXM6YX0pO3ZhciBuPVtdO3JldHVybiByKGZ1bmN0aW9uKHMpe0FycmF5LmlzQXJyYXkocyk/cy5tYXAoZnVuY3Rpb24oYyl7bj1uLmNvbmNhdChjLmFic3RyYWN0KX0pOm49bi5jb25jYXQocy5hYnN0cmFjdCl9KSxbe3RhZzoic3BhbiIsYXR0cmlidXRlczp7Y2xhc3M6WyIiLmNvbmNhdChTdC5jc3NQcmVmaXgsIi1sYXllcnMiKV0uY29uY2F0KERzKG8pKS5qb2luKCIgIil9LGNoaWxkcmVuOm59XX0pfX19fSxyYmE9e21peG91dDpmdW5jdGlvbigpe3JldHVybntjb3VudGVyOmZ1bmN0aW9uKHIpe3ZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MSYmYXJndW1lbnRzWzFdIT09dm9pZCAwP2FyZ3VtZW50c1sxXTp7fSxpPWEudGl0bGUsbz1pPT09dm9pZCAwP251bGw6aSxuPWEuY2xhc3NlcyxzPW49PT12b2lkIDA/W106bixjPWEuYXR0cmlidXRlcyxkPWM9PT12b2lkIDA/e306YyxmPWEuc3R5bGVzLHU9Zj09PXZvaWQgMD97fTpmO3JldHVybiAkc2Uoe3R5cGU6ImNvdW50ZXIiLGNvbnRlbnQ6cn0sZnVuY3Rpb24oKXtyZXR1cm4gc3UoImJlZm9yZURPTUVsZW1lbnRDcmVhdGlvbiIse2NvbnRlbnQ6cixwYXJhbXM6YX0pLFB4YSh7Y29udGVudDpyLnRvU3RyaW5nKCksdGl0bGU6byxleHRyYTp7YXR0cmlidXRlczpkLHN0eWxlczp1LGNsYXNzZXM6WyIiLmNvbmNhdChTdC5jc3NQcmVmaXgsIi1sYXllcnMtY291bnRlciIpXS5jb25jYXQoRHMocykpfX0pfSl9fX19LGFiYT17bWl4b3V0OmZ1bmN0aW9uKCl7cmV0dXJue3RleHQ6ZnVuY3Rpb24ocil7dmFyIGE9YXJndW1lbnRzLmxlbmd0aD4xJiZhcmd1bWVudHNbMV0hPT12b2lkIDA/YXJndW1lbnRzWzFdOnt9LGk9YS50cmFuc2Zvcm0sbz1pPT09dm9pZCAwP2xsOmksbj1hLmNsYXNzZXMscz1uPT09dm9pZCAwP1tdOm4sYz1hLmF0dHJpYnV0ZXMsZD1jPT09dm9pZCAwP3t9OmMsZj1hLnN0eWxlcyx1PWY9PT12b2lkIDA/e306ZjtyZXR1cm4gJHNlKHt0eXBlOiJ0ZXh0Iixjb250ZW50OnJ9LGZ1bmN0aW9uKCl7cmV0dXJuIHN1KCJiZWZvcmVET01FbGVtZW50Q3JlYXRpb24iLHtjb250ZW50OnIscGFyYW1zOmF9KSxRSnQoe2NvbnRlbnQ6cix0cmFuc2Zvcm06UWUoUWUoe30sbGwpLG8pLGV4dHJhOnthdHRyaWJ1dGVzOmQsc3R5bGVzOnUsY2xhc3NlczpbIiIuY29uY2F0KFN0LmNzc1ByZWZpeCwiLWxheWVycy10ZXh0IildLmNvbmNhdChEcyhzKSl9fSl9KX19fSxwcm92aWRlczpmdW5jdGlvbih0KXt0LmdlbmVyYXRlTGF5ZXJzVGV4dD1mdW5jdGlvbihyLGEpe3ZhciBpPWEudHJhbnNmb3JtLG89YS5leHRyYSxuPW51bGwscz1udWxsO2lmKEdLdCl7dmFyIGM9cGFyc2VJbnQoZ2V0Q29tcHV0ZWRTdHlsZShyKS5mb250U2l6ZSwxMCksZD1yLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO249ZC53aWR0aC9jLHM9ZC5oZWlnaHQvY31yZXR1cm4gUHJvbWlzZS5yZXNvbHZlKFtyLFFKdCh7Y29udGVudDpyLmlubmVySFRNTCx3aWR0aDpuLGhlaWdodDpzLHRyYW5zZm9ybTppLGV4dHJhOm8sd2F0Y2hhYmxlOiEwfSldKX19fSxjZXI9bmV3IFJlZ0V4cCgnIicsInVnIiksZGVyPVsxMTA1OTIwLDExMTIzMTldLHVlcj1RZShRZShRZShRZSh7fSx7Rm9udEF3ZXNvbWU6e25vcm1hbDoiZmFzIiw0MDA6ImZhcyJ9fSksRjlhKSxWZ2EpLFc5YSksRWtlPU9iamVjdC5rZXlzKHVlcikucmVkdWNlKGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGVbdC50b0xvd2VyQ2FzZSgpXT11ZXJbdF0sZX0se30pLGliYT1PYmplY3Qua2V5cyhFa2UpLnJlZHVjZShmdW5jdGlvbihlLHQpe3ZhciByPUVrZVt0XTtyZXR1cm4gZVt0XT1yWzkwMF18fERzKE9iamVjdC5lbnRyaWVzKHIpKVswXVsxXSxlfSx7fSk7ZGJhPWZ1bmN0aW9uKHQpe3JldHVybiEhdCYmTUp0LnNvbWUoZnVuY3Rpb24ocil7cmV0dXJuIHQuaW5jbHVkZXMocil9KX0sdWJhPWZ1bmN0aW9uKHQpe2lmKCF0KXJldHVybltdO3ZhciByPW5ldyBTZXQsYT10LnNwbGl0KC8sKD8hW14oKV0qXCkpLykubWFwKGZ1bmN0aW9uKGMpe3JldHVybiBjLnRyaW0oKX0pO2E9YS5mbGF0TWFwKGZ1bmN0aW9uKGMpe3JldHVybiBjLmluY2x1ZGVzKCIoIik/YzpjLnNwbGl0KCIsIikubWFwKGZ1bmN0aW9uKGQpe3JldHVybiBkLnRyaW0oKX0pfSk7dmFyIGk9a3NlKGEpLG87dHJ5e2ZvcihpLnMoKTshKG89aS5uKCkpLmRvbmU7KXt2YXIgbj1vLnZhbHVlO2lmKGRiYShuKSl7dmFyIHM9TUp0LnJlZHVjZShmdW5jdGlvbihjLGQpe3JldHVybiBjLnJlcGxhY2UoZCwiIil9LG4pO3MhPT0iIiYmcyE9PSIqIiYmci5hZGQocyl9fX1jYXRjaChjKXtpLmUoYyl9ZmluYWxseXtpLmYoKX1yZXR1cm4gcn07ZmJhPXtob29rczpmdW5jdGlvbigpe3JldHVybnttdXRhdGlvbk9ic2VydmVyQ2FsbGJhY2tzOmZ1bmN0aW9uKHIpe3JldHVybiByLnBzZXVkb0VsZW1lbnRzQ2FsbGJhY2s9cGVyLHJ9fX0scHJvdmlkZXM6ZnVuY3Rpb24odCl7dC5wc2V1ZG9FbGVtZW50czJzdmc9ZnVuY3Rpb24ocil7dmFyIGE9ci5ub2RlLGk9YT09PXZvaWQgMD9TYTphO1N0LnNlYXJjaFBzZXVkb0VsZW1lbnRzJiZwZXIoaSl9fX0saGVyPSExLHBiYT17bWl4b3V0OmZ1bmN0aW9uKCl7cmV0dXJue2RvbTp7dW53YXRjaDpmdW5jdGlvbigpe2llcigpLGhlcj0hMH19fX0saG9va3M6ZnVuY3Rpb24oKXtyZXR1cm57Ym9vdHN0cmFwOmZ1bmN0aW9uKCl7b2VyKE1rZSgibXV0YXRpb25PYnNlcnZlckNhbGxiYWNrcyIse30pKX0sbm9BdXRvOmZ1bmN0aW9uKCl7VnhhKCl9LHdhdGNoOmZ1bmN0aW9uKHIpe3ZhciBhPXIub2JzZXJ2ZU11dGF0aW9uc1Jvb3Q7aGVyP0FrZSgpOm9lcihNa2UoIm11dGF0aW9uT2JzZXJ2ZXJDYWxsYmFja3MiLHtvYnNlcnZlTXV0YXRpb25zUm9vdDphfSkpfX19fSxtZXI9ZnVuY3Rpb24odCl7dmFyIHI9e3NpemU6MTYseDowLHk6MCxmbGlwWDohMSxmbGlwWTohMSxyb3RhdGU6MH07cmV0dXJuIHQudG9Mb3dlckNhc2UoKS5zcGxpdCgiICIpLnJlZHVjZShmdW5jdGlvbihhLGkpe3ZhciBvPWkudG9Mb3dlckNhc2UoKS5zcGxpdCgiLSIpLG49b1swXSxzPW8uc2xpY2UoMSkuam9pbigiLSIpO2lmKG4mJnM9PT0iaCIpcmV0dXJuIGEuZmxpcFg9ITAsYTtpZihuJiZzPT09InYiKXJldHVybiBhLmZsaXBZPSEwLGE7aWYocz1wYXJzZUZsb2F0KHMpLGlzTmFOKHMpKXJldHVybiBhO3N3aXRjaChuKXtjYXNlImdyb3ciOmEuc2l6ZT1hLnNpemUrczticmVhaztjYXNlInNocmluayI6YS5zaXplPWEuc2l6ZS1zO2JyZWFrO2Nhc2UibGVmdCI6YS54PWEueC1zO2JyZWFrO2Nhc2UicmlnaHQiOmEueD1hLngrczticmVhaztjYXNlInVwIjphLnk9YS55LXM7YnJlYWs7Y2FzZSJkb3duIjphLnk9YS55K3M7YnJlYWs7Y2FzZSJyb3RhdGUiOmEucm90YXRlPWEucm90YXRlK3M7YnJlYWt9cmV0dXJuIGF9LHIpfSxoYmE9e21peG91dDpmdW5jdGlvbigpe3JldHVybntwYXJzZTp7dHJhbnNmb3JtOmZ1bmN0aW9uKHIpe3JldHVybiBtZXIocil9fX19LGhvb2tzOmZ1bmN0aW9uKCl7cmV0dXJue3BhcnNlTm9kZUF0dHJpYnV0ZXM6ZnVuY3Rpb24ocixhKXt2YXIgaT1hLmdldEF0dHJpYnV0ZSgiZGF0YS1mYS10cmFuc2Zvcm0iKTtyZXR1cm4gaSYmKHIudHJhbnNmb3JtPW1lcihpKSkscn19fSxwcm92aWRlczpmdW5jdGlvbih0KXt0LmdlbmVyYXRlQWJzdHJhY3RUcmFuc2Zvcm1Hcm91cGluZz1mdW5jdGlvbihyKXt2YXIgYT1yLm1haW4saT1yLnRyYW5zZm9ybSxvPXIuY29udGFpbmVyV2lkdGgsbj1yLmljb25XaWR0aCxzPXt0cmFuc2Zvcm06InRyYW5zbGF0ZSgiLmNvbmNhdChvLzIsIiAyNTYpIil9LGM9InRyYW5zbGF0ZSgiLmNvbmNhdChpLngqMzIsIiwgIikuY29uY2F0KGkueSozMiwiKSAiKSxkPSJzY2FsZSgiLmNvbmNhdChpLnNpemUvMTYqKGkuZmxpcFg/LTE6MSksIiwgIikuY29uY2F0KGkuc2l6ZS8xNiooaS5mbGlwWT8tMToxKSwiKSAiKSxmPSJyb3RhdGUoIi5jb25jYXQoaS5yb3RhdGUsIiAwIDApIiksdT17dHJhbnNmb3JtOiIiLmNvbmNhdChjLCIgIikuY29uY2F0KGQsIiAiKS5jb25jYXQoZil9LHA9e3RyYW5zZm9ybToidHJhbnNsYXRlKCIuY29uY2F0KG4vMiotMSwiIC0yNTYpIil9LGg9e291dGVyOnMsaW5uZXI6dSxwYXRoOnB9O3JldHVybnt0YWc6ImciLGF0dHJpYnV0ZXM6UWUoe30saC5vdXRlciksY2hpbGRyZW46W3t0YWc6ImciLGF0dHJpYnV0ZXM6UWUoe30saC5pbm5lciksY2hpbGRyZW46W3t0YWc6YS5pY29uLnRhZyxjaGlsZHJlbjphLmljb24uY2hpbGRyZW4sYXR0cmlidXRlczpRZShRZSh7fSxhLmljb24uYXR0cmlidXRlcyksaC5wYXRoKX1dfV19fX19LCRrZT17eDowLHk6MCx3aWR0aDoiMTAwJSIsaGVpZ2h0OiIxMDAlIn07Z2JhPXtob29rczpmdW5jdGlvbigpe3JldHVybntwYXJzZU5vZGVBdHRyaWJ1dGVzOmZ1bmN0aW9uKHIsYSl7dmFyIGk9YS5nZXRBdHRyaWJ1dGUoImRhdGEtZmEtbWFzayIpLG89aT9Fc2UoaS5zcGxpdCgiICIpLm1hcChmdW5jdGlvbihuKXtyZXR1cm4gbi50cmltKCl9KSk6V0p0KCk7cmV0dXJuIG8ucHJlZml4fHwoby5wcmVmaXg9ZTMoKSksci5tYXNrPW8sci5tYXNrSWQ9YS5nZXRBdHRyaWJ1dGUoImRhdGEtZmEtbWFzay1pZCIpLHJ9fX0scHJvdmlkZXM6ZnVuY3Rpb24odCl7dC5nZW5lcmF0ZUFic3RyYWN0TWFzaz1mdW5jdGlvbihyKXt2YXIgYT1yLmNoaWxkcmVuLGk9ci5hdHRyaWJ1dGVzLG89ci5tYWluLG49ci5tYXNrLHM9ci5tYXNrSWQsYz1yLnRyYW5zZm9ybSxkPW8ud2lkdGgsZj1vLmljb24sdT1uLndpZHRoLHA9bi5pY29uLGg9bnhhKHt0cmFuc2Zvcm06Yyxjb250YWluZXJXaWR0aDp1LGljb25XaWR0aDpkfSksYj17dGFnOiJyZWN0IixhdHRyaWJ1dGVzOlFlKFFlKHt9LCRrZSkse30se2ZpbGw6IndoaXRlIn0pfSx4PWYuY2hpbGRyZW4/e2NoaWxkcmVuOmYuY2hpbGRyZW4ubWFwKGdlcil9Ont9LGc9e3RhZzoiZyIsYXR0cmlidXRlczpRZSh7fSxoLmlubmVyKSxjaGlsZHJlbjpbZ2VyKFFlKHt0YWc6Zi50YWcsYXR0cmlidXRlczpRZShRZSh7fSxmLmF0dHJpYnV0ZXMpLGgucGF0aCl9LHgpKV19LHY9e3RhZzoiZyIsYXR0cmlidXRlczpRZSh7fSxoLm91dGVyKSxjaGlsZHJlbjpbZ119LHc9Im1hc2stIi5jb25jYXQoc3x8TEp0KCkpLE09ImNsaXAtIi5jb25jYXQoc3x8TEp0KCkpLEY9e3RhZzoibWFzayIsYXR0cmlidXRlczpRZShRZSh7fSwka2UpLHt9LHtpZDp3LG1hc2tVbml0czoidXNlclNwYWNlT25Vc2UiLG1hc2tDb250ZW50VW5pdHM6InVzZXJTcGFjZU9uVXNlIn0pLGNoaWxkcmVuOltiLHZdfSxDPXt0YWc6ImRlZnMiLGNoaWxkcmVuOlt7dGFnOiJjbGlwUGF0aCIsYXR0cmlidXRlczp7aWQ6TX0sY2hpbGRyZW46bWJhKHApfSxGXX07cmV0dXJuIGEucHVzaChDLHt0YWc6InJlY3QiLGF0dHJpYnV0ZXM6UWUoe2ZpbGw6ImN1cnJlbnRDb2xvciIsImNsaXAtcGF0aCI6InVybCgjIi5jb25jYXQoTSwiKSIpLG1hc2s6InVybCgjIi5jb25jYXQodywiKSIpfSwka2UpfSkse2NoaWxkcmVuOmEsYXR0cmlidXRlczppfX19fSx4YmE9e3Byb3ZpZGVzOmZ1bmN0aW9uKHQpe3ZhciByPSExO0s0Lm1hdGNoTWVkaWEmJihyPUs0Lm1hdGNoTWVkaWEoIihwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIikubWF0Y2hlcyksdC5taXNzaW5nSWNvbkFic3RyYWN0PWZ1bmN0aW9uKCl7dmFyIGE9W10saT17ZmlsbDoiY3VycmVudENvbG9yIn0sbz17YXR0cmlidXRlVHlwZToiWE1MIixyZXBlYXRDb3VudDoiaW5kZWZpbml0ZSIsZHVyOiIycyJ9O2EucHVzaCh7dGFnOiJwYXRoIixhdHRyaWJ1dGVzOlFlKFFlKHt9LGkpLHt9LHtkOiJNMTU2LjUsNDQ3LjdsLTEyLjYsMjkuNWMtMTguNy05LjUtMzUuOS0yMS4yLTUxLjUtMzQuOWwyMi43LTIyLjdDMTI3LjYsNDMwLjUsMTQxLjUsNDQwLDE1Ni41LDQ0Ny43eiBNNDAuNiwyNzJIOC41IGMxLjQsMjEuMiw1LjQsNDEuNywxMS43LDYxLjFMNTAsMzIxLjJDNDUuMSwzMDUuNSw0MS44LDI4OSw0MC42LDI3MnogTTQwLjYsMjQwYzEuNC0xOC44LDUuMi0zNywxMS4xLTU0LjFsLTI5LjUtMTIuNiBDMTQuNywxOTQuMywxMCwyMTYuNyw4LjUsMjQwSDQwLjZ6IE02NC4zLDE1Ni41YzcuOC0xNC45LDE3LjItMjguOCwyOC4xLTQxLjVMNjkuNyw5Mi4zYy0xMy43LDE1LjYtMjUuNSwzMi44LTM0LjksNTEuNSBMNjQuMywxNTYuNXogTTM5Nyw0MTkuNmMtMTMuOSwxMi0yOS40LDIyLjMtNDYuMSwzMC40bDExLjksMjkuOGMyMC43LTkuOSwzOS44LTIyLjYsNTYuOS0zNy42TDM5Nyw0MTkuNnogTTExNSw5Mi40IGMxMy45LTEyLDI5LjQtMjIuMyw0Ni4xLTMwLjRsLTExLjktMjkuOGMtMjAuNyw5LjktMzkuOCwyMi42LTU2LjgsMzcuNkwxMTUsOTIuNHogTTQ0Ny43LDM1NS41Yy03LjgsMTQuOS0xNy4yLDI4LjgtMjguMSw0MS41IGwyMi43LDIyLjdjMTMuNy0xNS42LDI1LjUtMzIuOSwzNC45LTUxLjVMNDQ3LjcsMzU1LjV6IE00NzEuNCwyNzJjLTEuNCwxOC44LTUuMiwzNy0xMS4xLDU0LjFsMjkuNSwxMi42IGM3LjUtMjEuMSwxMi4yLTQzLjUsMTMuNi02Ni44SDQ3MS40eiBNMzIxLjIsNDYyYy0xNS43LDUtMzIuMiw4LjItNDkuMiw5LjR2MzIuMWMyMS4yLTEuNCw0MS43LTUuNCw2MS4xLTExLjdMMzIxLjIsNDYyeiBNMjQwLDQ3MS40Yy0xOC44LTEuNC0zNy01LjItNTQuMS0xMS4xbC0xMi42LDI5LjVjMjEuMSw3LjUsNDMuNSwxMi4yLDY2LjgsMTMuNlY0NzEuNHogTTQ2MiwxOTAuOGM1LDE1LjcsOC4yLDMyLjIsOS40LDQ5LjJoMzIuMSBjLTEuNC0yMS4yLTUuNC00MS43LTExLjctNjEuMUw0NjIsMTkwLjh6IE05Mi40LDM5N2MtMTItMTMuOS0yMi4zLTI5LjQtMzAuNC00Ni4xbC0yOS44LDExLjljOS45LDIwLjcsMjIuNiwzOS44LDM3LjYsNTYuOSBMOTIuNCwzOTd6IE0yNzIsNDAuNmMxOC44LDEuNCwzNi45LDUuMiw1NC4xLDExLjFsMTIuNi0yOS41QzMxNy43LDE0LjcsMjk1LjMsMTAsMjcyLDguNVY0MC42eiBNMTkwLjgsNTAgYzE1LjctNSwzMi4yLTguMiw0OS4yLTkuNFY4LjVjLTIxLjIsMS40LTQxLjcsNS40LTYxLjEsMTEuN0wxOTAuOCw1MHogTTQ0Mi4zLDkyLjNMNDE5LjYsMTE1YzEyLDEzLjksMjIuMywyOS40LDMwLjUsNDYuMSBsMjkuOC0xMS45QzQ3MCwxMjguNSw0NTcuMywxMDkuNCw0NDIuMyw5Mi4zeiBNMzk3LDkyLjRsMjIuNy0yMi43Yy0xNS42LTEzLjctMzIuOC0yNS41LTUxLjUtMzQuOWwtMTIuNiwyOS41IEMzNzAuNCw3Mi4xLDM4NC40LDgxLjUsMzk3LDkyLjR6In0pfSk7dmFyIG49UWUoUWUoe30sbykse30se2F0dHJpYnV0ZU5hbWU6Im9wYWNpdHkifSkscz17dGFnOiJjaXJjbGUiLGF0dHJpYnV0ZXM6UWUoUWUoe30saSkse30se2N4OiIyNTYiLGN5OiIzNjQiLHI6IjI4In0pLGNoaWxkcmVuOltdfTtyZXR1cm4gcnx8cy5jaGlsZHJlbi5wdXNoKHt0YWc6ImFuaW1hdGUiLGF0dHJpYnV0ZXM6UWUoUWUoe30sbykse30se2F0dHJpYnV0ZU5hbWU6InIiLHZhbHVlczoiMjg7MTQ7Mjg7Mjg7MTQ7Mjg7In0pfSx7dGFnOiJhbmltYXRlIixhdHRyaWJ1dGVzOlFlKFFlKHt9LG4pLHt9LHt2YWx1ZXM6IjE7MDsxOzE7MDsxOyJ9KX0pLGEucHVzaChzKSxhLnB1c2goe3RhZzoicGF0aCIsYXR0cmlidXRlczpRZShRZSh7fSxpKSx7fSx7b3BhY2l0eToiMSIsZDoiTTI2My43LDMxMmgtMTZjLTYuNiwwLTEyLTUuNC0xMi0xMmMwLTcxLDc3LjQtNjMuOSw3Ny40LTEwNy44YzAtMjAtMTcuOC00MC4yLTU3LjQtNDAuMmMtMjkuMSwwLTQ0LjMsOS42LTU5LjIsMjguNyBjLTMuOSw1LTExLjEsNi0xNi4yLDIuNGwtMTMuMS05LjJjLTUuNi0zLjktNi45LTExLjgtMi42LTE3LjJjMjEuMi0yNy4yLDQ2LjQtNDQuNyw5MS4yLTQ0LjdjNTIuMywwLDk3LjQsMjkuOCw5Ny40LDgwLjIgYzAsNjcuNi03Ny40LDYzLjUtNzcuNCwxMDcuOEMyNzUuNywzMDYuNiwyNzAuMywzMTIsMjYzLjcsMzEyeiJ9KSxjaGlsZHJlbjpyP1tdOlt7dGFnOiJhbmltYXRlIixhdHRyaWJ1dGVzOlFlKFFlKHt9LG4pLHt9LHt2YWx1ZXM6IjE7MDswOzA7MDsxOyJ9KX1dfSkscnx8YS5wdXNoKHt0YWc6InBhdGgiLGF0dHJpYnV0ZXM6UWUoUWUoe30saSkse30se29wYWNpdHk6IjAiLGQ6Ik0yMzIuNSwxMzQuNWw3LDE2OGMwLjMsNi40LDUuNiwxMS41LDEyLDExLjVoOWM2LjQsMCwxMS43LTUuMSwxMi0xMS41bDctMTY4YzAuMy02LjgtNS4yLTEyLjUtMTItMTIuNWgtMjMgQzIzNy43LDEyMiwyMzIuMiwxMjcuNywyMzIuNSwxMzQuNXoifSksY2hpbGRyZW46W3t0YWc6ImFuaW1hdGUiLGF0dHJpYnV0ZXM6UWUoUWUoe30sbikse30se3ZhbHVlczoiMDswOzE7MTswOzA7In0pfV19KSx7dGFnOiJnIixhdHRyaWJ1dGVzOntjbGFzczoibWlzc2luZyJ9LGNoaWxkcmVuOmF9fX19LGJiYT17aG9va3M6ZnVuY3Rpb24oKXtyZXR1cm57cGFyc2VOb2RlQXR0cmlidXRlczpmdW5jdGlvbihyLGEpe3ZhciBpPWEuZ2V0QXR0cmlidXRlKCJkYXRhLWZhLXN5bWJvbCIpLG89aT09PW51bGw/ITE6aT09PSIiPyEwOmk7cmV0dXJuIHIuc3ltYm9sPW8scn19fX0sdmJhPVtjeGEsZWJhLHRiYSxyYmEsYWJhLGZiYSxwYmEsaGJhLGdiYSx4YmEsYmJhXTtDeGEodmJhLHttaXhvdXRzVG86Tm99KTt5YmE9Tm8ubm9BdXRvLHdiYT1Oby5jb25maWcsTWJhPU5vLmxpYnJhcnksa2JhPU5vLmRvbSxTYmE9Tm8ucGFyc2UsemJhPU5vLmZpbmRJY29uRGVmaW5pdGlvbixDYmE9Tm8udG9IdG1sLFBrZT1Oby5pY29uLF9iYT1Oby5sYXllcixUYmE9Tm8udGV4dCxMYmE9Tm8uY291bnRlcn0pO3ZhciBEYmEsSWtlLGJlcix2ZXIseWVyLHdlcixOa2UsTWVyLGtlcixTZXIsemVyLENlcixfZXIsVGVyLExlcixEZXIsQWVyLEVlciwkZXIsUGVyLEllcixOZXIsRmVyLE9lcixSZXIsQmVyLEhlcixxZXIsamVyLEZrZSxWZXIsVWVyLFdlcixHZXIsWWVyLFplcixYZXIsUWVyLEtlcixKZXIsZXRyLHR0cixydHIsYXRyLGl0cixvdHIsbnRyLHN0cixsdHIsT2tlLGN0cixkdHIsdXRyLGZ0cixwdHIsaHRyLG10cixndHIseHRyLGJ0cix2dHIseXRyLHd0cixNdHIsa3RyLFN0cix6dHIsQ3RyLF90cixUdHIsTHRyLFJrZSxEdHIsQXRyLEV0ciwkdHIsUHRyLEl0cixOdHIsRnRyLE90cixSdHIsQnRyLEh0cixxdHIsanRyLFZ0cixVdHIsV3RyLEd0cixZdHIsWnRyLFh0cixRdHIsS3RyLEp0cixlcnIsdHJyLHJycixhcnIsaXJyLG9ycixucnIsc3JyLGxycixjcnIsZHJyLHVycixmcnIscHJyLGhycixtcnIsZ3JyLE9zZSx4cnIsYnJyLEJrZSx2cnIseXJyLHdycixIa2UsTXJyLGtycixGc2UsU3JyLHpycixxa2UsQ3JyLF9ycixUcnIsTHJyLERycixqa2UsQXJyLEVyciwkcnIsUHJyLElycixOcnIsRnJyLE9ycixScnIsQnJyLFZrZSxIcnIscXJyLGpycixWcnIsVXJyLFdycixHcnIsWXJyLFpycixVa2UsWHJyLFFycixLcnIsSnJyLGVhcix0YXIscmFyLGFhcixXa2UsaWFyLG9hcixuYXIsR2tlLHNhcixsYXIsY2FyLGRhcix1YXIsZmFyLHBhcixoYXIsbWFyLGdhcix4YXIsYmFyLHlhcix3YXIsTWFyLGthcixTYXIsemFyLENhcixfYXIsVGFyLExhcixEYXIsQWFyLEVhciwkYXIsUGFyLFlrZSxJYXIsTmFyLEZhcixPYXIsUmFyLEJhcixIYXIsWmtlLHFhcixqYXIsVmFyLFVhcixXYXIsR2FyLFlhcixaYXIsWGFyLFFhcixLYXIsSmFyLGVpcix0aXIscmlyLGFpcixpaXIsb2lyLG5pcixzaXIsbGlyLGNpcixkaXIsdWlyLGZpcixwaXIsaGlyLG1pcixnaXIseGlyLGJpcix2aXIseWlyLHdpcixNaXIsa2lyLFNpcix6aXIsQ2lyLF9pcixUaXIsTGlyLFJzZSxEaXIsQWlyLEVpciwkaXIsUGlyLFhrZSxJaXIsTmlyLEZpcixCc2UsT2lyLFJpcixCaXIsSGlyLHFpcixqaXIsUWtlLFZpcixVaXIsV2lyLEdpcixZaXIsWmlyLFhpcixRaXIsS2lyLEppcixlMXIsdDFyLHIxcixhMXIsaTFyLG8xcixjdyxuMXIsczFyLGwxcixjMXIsZDFyLHUxcixmMXIscDFyLGgxcixtMXIsZzFyLHgxcixiMXIsdjFyLHkxcix3MXIsTTFyLGsxcixTMXIsejFyLEMxcixfMXIsVDFyLEwxcixEMXIsQTFyLEUxciwkMXIsUDFyLEkxcixOMXIsRjFyLE8xcixSMXIsQjFyLEgxcixxMXIsajFyLFYxcixLa2UsVTFyLFcxcixHMXIsWTFyLFoxcixYMXIsUTFyLEsxcixKMXIsZW9yLHRvcixyb3IsYW9yLGlvcixvb3IsSmtlLG5vcixzb3IsbG9yLGNvcixkb3IsdW9yLGVTZSxwb3IsaG9yLG1vcixnb3IseG9yLGJvcix2b3IseW9yLHdvcixNb3Isa29yLFNvcix6b3IsQ29yLF9vcixUb3IsTG9yLERvcixBb3IsRW9yLCRvcixQb3IsSW9yLE5vcixGb3IsT29yLFJvcixCb3IsdFNlLEhzZSxIb3IscW9yLGpvcixWb3IsVW9yLFdvcixHb3IsWW9yLFpvcixYb3IsUW9yLEtvcixyU2UsSm9yLGVucix0bnIscm5yLGFucixpbnIsb25yLG5ucixxc2Usc25yLGxucixjbnIsZG5yLHVucixmbnIscG5yLGhucixtbnIsZ25yLHhucixibnIsdm5yLGFTZSx5bnIsd25yLE1ucixrbnIsU25yLHpucixDbnIsX25yLFRucixMbnIsRG5yLEFucixFbnIsJG5yLFBucixJbnIsTm5yLGlTZSxGbnIsT25yLFJucixvU2UsQm5yLEhucixxbnIsam5yLGpzZSxWbnIsblNlLFVucixXbnIsR25yLFlucixabnIsWG5yLHNTZSxRbnIsS25yLEpucixlc3IsdHNyLHJzcixhc3IsaXNyLG9zcixuc3Isc3NyLGxzcixjc3IsZHNyLHVzcixmc3IscHNyLGhzcixtc3IsZ3NyLHhzcixic3IsdnNyLHlzcix3c3IsbFNlLE1zcixrc3IsU3NyLHpzcixDc3IsX3NyLFRzcixMc3IsY1NlLERzcixBc3IsRXNyLCRzcixQc3IsSXNyLE5zcixGc3IsT3NyLFJzcixCc3IsSHNyLHFzcixqc3IsZFNlLFZzcixVc3IsV3NyLEdzcixZc3IsWnNyLFhzcixRc3IsS3NyLEpzcixlMnIsdDJyLHIycixhMnIsaTJyLHVTZSxvMnIsbjJyLHMycixsMnIsYzJyLGQycix1MnIsZjJyLHAycixoMnIsbTJyLGcycix4MnIsYjJyLFZzZSx2MnIseTJyLHcycixNMnIsazJyLFMycix6MnIsQzJyLF8ycixUMnIsZlNlLEwycixEMnIsQTJyLEUyciwkMnIsUDJyLEkycixOMnIsRjJyLE8ycixSMnIsQjJyLEgycixxMnIsajJyLFYycixVMnIsVzJyLEcycixZMnIsWjJyLFgycixRMnIsSzJyLEoycixlbHIsdGxyLHJscixhbHIsaWxyLG9scixubHIsc2xyLGxscixjbHIsZGxyLHVscixmbHIscFNlLHBscixobHIsbWxyLGdscix4bHIsaFNlLGJscix2bHIseWxyLHdscixNbHIsa2xyLEFiYSxTbHI9bCgoKT0+e0RiYT0iZmFiIixJa2U9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic3F1YXJlLWdpdGh1YiIsaWNvbjpbNDQ4LDUxMixbImdpdGh1Yi1zcXVhcmUiXSwiZjA5MiIsIk00NDggOTZjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzJDMjguNyAzMiAwIDYwLjcgMCA5NkwwIDQxNmMwIDM1LjMgMjguNyA2NCA2NCA2NGwzMjAgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTMyMHpNMjY1LjggNDA3LjdjMC0xLjggMC02IC4xLTExLjYgLjEtMTEuNCAuMS0yOC44IC4xLTQzLjcgMC0xNS42LTUuMi0yNS41LTExLjMtMzAuNyAzNy00LjEgNzYtOS4yIDc2LTczLjEgMC0xOC4yLTYuNS0yNy4zLTE3LjEtMzkgMS43LTQuMyA3LjQtMjItMS43LTQ1LTEzLjktNC4zLTQ1LjcgMTcuOS00NS43IDE3LjktMjYuNi03LjUtNTYuNi03LjUtODMuMiAwIDAgMC0zMS44LTIyLjItNDUuNy0xNy45LTkuMSAyMi45LTMuNSA0MC42LTEuNyA0NS0xMC42IDExLjctMTUuNiAyMC44LTE1LjYgMzkgMCA2My42IDM3LjMgNjkgNzQuMyA3My4xLTQuOCA0LjMtOS4xIDExLjctMTAuNiAyMi4zLTkuNSA0LjMtMzMuOCAxMS43LTQ4LjMtMTMuOS05LjEtMTUuOC0yNS41LTE3LjEtMjUuNS0xNy4xLTE2LjItLjItMS4xIDEwLjItMS4xIDEwLjIgMTAuOCA1IDE4LjQgMjQuMiAxOC40IDI0LjIgOS43IDI5LjcgNTYuMSAxOS43IDU2LjEgMTkuNyAwIDkgLjEgMjEuNyAuMSAzMC42IDAgNC44IC4xIDguNiAuMSAxMCAwIDQuMy0zIDkuNS0xMS41IDgtNjYtMjIuMS0xMTIuMi04NC45LTExMi4yLTE1OC4zIDAtOTEuOCA3MC4yLTE2MS41IDE2Mi0xNjEuNVMzODggMTY1LjYgMzg4IDI1Ny40Yy4xIDczLjQtNDQuNyAxMzYuMy0xMTAuNyAxNTguMy04LjQgMS41LTExLjUtMy43LTExLjUtOHptLTkwLjUtNTQuOGMtLjItMS41IDEuMS0yLjggMy0zLjIgMS45LS4yIDMuNyAuNiAzLjkgMS45IC4zIDEuMy0xIDIuNi0zIDMtMS45IC40LTMuNy0uNC0zLjktMS43em0tOS4xIDMuMmMtMi4yIC4yLTMuNy0uOS0zLjctMi40IDAtMS4zIDEuNS0yLjQgMy41LTIuNCAxLjktLjIgMy43IC45IDMuNyAyLjQgMCAxLjMtMS41IDIuNC0zLjUgMi40em0tMTQuMy0yLjJjLTEuOS0uNC0zLjItMS45LTIuOC0zLjJzMi40LTEuOSA0LjEtMS41YzIgLjYgMy4zIDIuMSAyLjggMy40LS40IDEuMy0yLjQgMS45LTQuMSAxLjN6bS0xMi41LTcuM2MtMS41LTEuMy0xLjktMy4yLS45LTQuMSAuOS0xLjEgMi44LS45IDQuMyAuNiAxLjMgMS4zIDEuOCAzLjMgLjkgNC4xLS45IDEuMS0yLjggLjktNC4zLS42em0tOC41LTEwYy0xLjEtMS41LTEuMS0zLjIgMC0zLjkgMS4xLS45IDIuOC0uMiAzLjcgMS4zIDEuMSAxLjUgMS4xIDMuMyAwIDQuMS0uOSAuNi0yLjYgMC0zLjctMS41em0tNi4zLTguOGMtMS4xLTEuMy0xLjMtMi44LS40LTMuNSAuOS0uOSAyLjQtLjQgMy41IC42IDEuMSAxLjMgMS4zIDIuOCAuNCAzLjUtLjkgLjktMi40IC40LTMuNS0uNnptLTYtNi40Yy0xLjMtLjYtMS45LTEuNy0xLjUtMi42IC40LS42IDEuNS0uOSAyLjgtLjQgMS4zIC43IDEuOSAxLjggMS41IDIuNi0uNCAuOS0xLjcgMS4xLTIuOCAuNHoiXX0sYmVyPUlrZSx2ZXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidGhpbmstcGVha3MiLGljb246WzU3Niw1MTIsW10sImY3MzEiLCJNNDY1LjQgNDA5LjRsODcuMS0xNTAuMi0zMi0uMy01NS4xIDk1LTIwNi4yLTM1My45LTIzNi4yIDQwNy40IDMyIC4zIDIwNC4yLTM1Mi4xIDIwNi4yIDM1My44ek0xMTAuMSAzNjUuM2wzMi4xIDAgMTE3LjQtMjAyLjUgMjAzLjQgMzQ5LjEgMzIuNSAuMS0yMzUuOC00MDQuNi0xNDkuNiAyNTcuOXoiXX0seWVyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Imdvb2dsZS1kcml2ZSIsaWNvbjpbNTEyLDUxMixbXSwiZjNhYSIsIk0zMzkgMzE0LjlMMTc1LjQgMzIgMzM2LjYgMzIgNTAwLjIgMzE0LjkgMzM5IDMxNC45ek0yMDEuNSAzMzguNWwtODAuNiAxNDEuNSAzMTAuNSAwIDgwLjYtMTQxLjUtMzEwLjUgMHpNMTU0LjEgNjcuNEwwIDMzOC41IDgwLjYgNDgwIDIzNyAyMDguOCAxNTQuMSA2Ny40eiJdfSx3ZXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiYXV0b3ByZWZpeGVyIixpY29uOls2NDAsNTEyLFtdLCJmNDFjIiwiTTMxOC40IDE2bC0xNjEgNDgwIDc3LjUgMCAyNS40LTgxLjQgMTE5LjUgMCAyNS4yIDgxLjQgNzcuNSAwLTE2NC4xLTQ4MHpNMjc4LjEgMzU3LjlsNDEuMi0xMzAuNCAxLjUgMCA0MC45IDEzMC40LTgzLjYgMHpNNjQwIDQwNUw2MzAgMzczLjYgNDYyLjEgMzU4IDQ4MS41IDQxNC41IDY0MCA0MDV6TTE3Ny45IDM1OEwxMCAzNzMuNyAwIDQwNSAxNTguNSA0MTQuNCAxNzcuOSAzNTh6Il19LE5rZT17cHJlZml4OiJmYWIiLGljb25OYW1lOiJzcXVhcmUtdmlhZGVvIixpY29uOls0NDgsNTEyLFsidmlhZGVvLXNxdWFyZSJdLCJmMmFhIiwiTTQ0OCA5NmMwLTM1LjMtMjguNy02NC02NC02NEw2NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgNDE2YzAgMzUuMyAyOC43IDY0IDY0IDY0bDMyMCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMzIwek0xMTguMyAzODEuMmMtNjgtNzMuNi0xOS44LTE5Ni4xIDgxLjItMTk2LjEgMTMuMyAwIDI2LjYgMi4xIDM5LjEgNi43LTQuMyA4LjQtNy4zIDE3LjYtOC40IDI3LjEtOS43LTQuMS0yMC4yLTYtMzAuNy02LTQ4LjggMC04NC42IDQxLjctODQuNiA4OC45IDAgNDMgMjguNSA3OC43IDY5LjUgODUuOSA2MS41LTI0IDcyLjktMTE3LjYgNzIuOS0xNzUgMC03LjMgMC0xNC44LS42LTIyLjEtMTEuMi0zMi45LTI2LjYtNjQuNi00NC4yLTk0LjUgMjcuMSAxOC4zIDQxLjkgNjIuNSA0NC4yIDk0LjFsMCAuNGM3LjcgMjIuNSAxMS44IDQ2LjIgMTEuOCA3MCAwIDU0LjEtMjEuOSA5OS02OC4zIDEyOC4ybC0yLjQgLjJjNTAgMSA4Ni4yLTM4LjYgODYuMi04Ny4yIDAtMTIuMi0yLjEtMjQuMy02LjktMzUuNyA5LjUtMS45IDE4LjUtNS42IDI2LjQtMTAuNSAxNS4zIDM2LjYgMTIuNiA4Ny4zLTIyLjggMTI1LjYtNDIuNCA0Ni4yLTEyMCA0Ni42LTE2Mi40IDB6TTI3NC42IDIxNy42YzIxLjktMTIgNDkuNi0zMC43IDYyLjMtNTMgMS41LTMgNC4xLTguNiA0LjUtMTItMTIuNSAyNy45LTQ0LjIgNDkuOC03My45IDU2LjctNC43LTcuMy03LjUtMTUuNS03LjUtMjQuMyAwLTEwLjMgNS4yLTI0LjEgMTIuOS0zMS42IDguMy03LjkgMTgtMTAuOSAyNy45LTE0LjEgMTYtNS4xIDMyLjUtMTAuMyA0NC41LTM1LjkgMzIuNSA0Ni4yIDEzLjEgMTMwLjMtMzYuMyAxMzAuMy0xMy4zIDAtMjUuMS03LjEtMzQuNC0xNi4xeiJdfSxNZXI9TmtlLGtlcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJjcGFuZWwiLGljb246WzY0MCw1MTIsW10sImYzODgiLCJNMjEwLjMgMjIwLjJjLTUuNi0yNC44LTI2LjktNDEuMi01MS00MS4ybC0zNyAwYy03LjEgMC0xMi41IDQuNS0xNC4zIDEwLjlMNzMuMSAzMjAgOTcuOCAzMTkuOWM2LjggMCAxMi4zLTQuNSAxNC4yLTEwLjdsMjUuOC05NS43IDE5LjggMGM4LjQgMCAxNi4yIDUuNiAxOC4zIDE0LjggMi41IDEwLjktNS45IDIyLjYtMTguMyAyMi42bC0xMC4zIDBjLTcgMC0xMi41IDQuNi0xNC4zIDEwLjhsLTYuNCAyMy44IDMyIDBjMzcuMiAwIDU4LjMtMzYuMiA1MS43LTY1LjN6bS0xNTYuNSAyOGwxOC42IDBjNi45IDAgMTIuNC00LjQgMTQuMy0xMC45bDYuMi0yMy42LTQwIDBDMzAgMjEzLjcgOSAyMjcuOCAxLjcgMjU0LjgtNyAyODguNiAxOC41IDMyMCA1MiAzMjBsMTIuNCAwIDcuMS0yNi4xYzEuMi00LjQtMi4yLTguMy02LjQtOC4zbC0xMS4zIDBjLTI0LjcgMC0yNC45LTM3LjQgMC0zNy40em0yNDcuNS0zNC44bC03Ny45IDAtMy41IDEzLjRjLTIuNCA5LjYgNC41IDE4LjUgMTQuMiAxOC41bDU3LjUgMGM0IDAgMi40IDQuMyAyLjEgNS4zbC04LjYgMzEuOGMtLjQgMS40LS45IDUuMy01LjUgNS4zbC0zNC45IDBjLTUuMyAwLTUuMy03LjkgMC03LjlsMjEuNiAwYzYuOCAwIDEyLjMtNC42IDE0LjItMTAuOGwzLjUtMTMuMi00OC40IDBjLTM5LjIgMC00My42IDYzLjgtLjcgNjMuOGw1Ny41IC4yYzExLjIgMCAyMC42LTcuMiAyMy40LTE3LjhsMTQtNTEuOGM0LjgtMTkuMi05LjctMzYuOC0yOC41LTM2Ljh6TTYzMy4xIDE3OWwtMTguOSAwYy00LjkgMC05LjIgMy4yLTEwLjQgNy45TDU2OC4yIDMyMGMyMC43IDAgMzkuOC0xMy44IDQ0LjktMzQuNWwyNi41LTk4LjJjMS4yLTQuMy0yLTguMy02LjUtOC4zek0zOTYuOCAyMTMuN2wwIC4xLTQ4LjMgMC0yNi4yIDk4Yy0xLjIgNC40IDIuMiA4LjMgNi40IDguM2wxOC45IDBjNC44IDAgOS4yLTMgMTAuNC03LjhsMTcuMi02NCAxOS44IDBjMTIuNSAwIDIxLjQgMTEuOCAxOC4xIDIzLjRsLTEwLjYgNDBjLTEuMiA0LjMgMS45IDguMyA2LjQgOC4zbDE5LjEgMGM0LjYgMCA5LjEtMi45IDEwLjMtNy44bDguOC0zMy4xYzktMzMuMS0xNS45LTY1LjQtNTAuMy02NS40em05OC4zIDc0LjZjLTMuNiAwLTYtMy40LTUuMS02LjdsOC0zMGMuOS0zLjkgMy43LTYgNy44LTZsMzIuOSAwYzIuNiAwIDQuNiAyLjQgMy45IDUuMWwtLjcgMi42Yy0uNiAyLTEuOSAzLTMuOSAzbC0yMS42IDBjLTcgMC0xMi42IDQuNi0xNC4yIDEwLjhsLTMuNSAxMyA1My40IDBjMTAuNSAwIDIwLjMtNi42IDIzLjItMTcuNmwzLjItMTJjNC45LTE5LjEtOS4zLTM2LjgtMjguMy0zNi44bC00Ny4zIDBjLTE3LjkgMC0zMy44IDEyLTM4LjYgMjkuNmwtMTAuOCA0MGMtNSAxNy43IDguMyAzNi43IDI4LjMgMzYuN2w2Ni43IDBjNi44IDAgMTIuMy00LjUgMTQuMi0xMC43bDUuNy0yMS03My4zIDB6Il19LFNlcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJtZW5kZWxleSIsaWNvbjpbNjQwLDUxMixbXSwiZjdiMyIsIk02MjQuNiAzMjUuMmMtMTIuMy0xMi40LTI5LjctMTkuMi00OC40LTE3LjItNDMuMy0xLTQ5LjctMzQuOS0zNy41LTk4LjggMjIuOC01Ny41LTE0LjktMTMxLjUtODcuNC0xMzAuOC03Ny40IC43LTgxLjcgODItMTMwLjkgODItNDguMSAwLTU0LTgxLjMtMTMwLjktODItNzIuOS0uOC0xMTAuMSA3My4zLTg3LjQgMTMwLjggMTIuMiA2My45IDUuOCA5Ny44LTM3LjUgOTguOC0yMS4yLTIuMy0zNyA2LjUtNTMgMjIuNS0xOS45IDE5LjctMTkuMyA5NC44IDQyLjYgMTAyLjYgNDcuMSA1LjkgODEuNi00Mi45IDYxLjItODcuOC00Ny4zLTEwMy43IDE4NS45LTEwNi4xIDE0Ni41LTguMi0uMSAuMS0uMiAuMi0uMyAuNC0yNi44IDQyLjggNi44IDk3LjQgNTguOCA5NS4yIDUyLjEgMi4xIDg1LjQtNTIuNiA1OC44LTk1LjItLjEtLjItLjItLjMtLjMtLjQtMzkuNC05Ny45IDE5My44LTk1LjUgMTQ2LjUgOC4yLTQuNiAxMC02LjcgMjEuMy01LjcgMzMgNC45IDUzLjQgNjguNyA3NC4xIDEwNC45IDM1LjIgMTcuOC0xNC44IDIzLjEtNjUuNiAwLTg4LjN6TTMyMC43IDMwNi4xbC0uNiAwYy00My40IDAtNjIuOC0zNy41LTYyLjgtNjIuOCAwLTM0LjcgMjguMi02Mi44IDYyLjgtNjIuOGwuNiAwYzM0LjcgMCA2Mi44IDI4LjEgNjIuOCA2Mi44IDAgMjUtMTkuMiA2Mi44LTYyLjggNjIuOHoiXX0semVyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImRyYWZ0MmRpZ2l0YWwiLGljb246WzUxMiw1MTIsW10sImYzOTYiLCJNNDk2IDM5OC4xbC0xNDQtODIuMiAwIDY0LjctOTEuMyAwYzMwLjgtMzUgODEuOC05NS45IDExMS44LTE0OS4zIDM1LjItNjIuNiAxNi4xLTEyMy40LTEyLjgtMTUzLjMtNC40LTQuNi02Mi4yLTYyLjktMTY2LTQxLjItNTkuMSAxMi40LTg5LjQgNDMuNC0xMDQuMyA2Ny4zLTEzLjEgMjAuOS0xNyAzOS44LTE4LjIgNDcuNy01LjUgMzMgMTkuNCA2Ny4xIDU2LjcgNjcuMSAzMS43IDAgNTcuMy0yNS43IDU3LjMtNTcuNCAwLTI3LjEtMTkuNy01Mi4xLTQ4LTU2LjggMS44LTcuMyAxNy43LTIxLjEgMjYuMy0yNC43IDQxLjEtMTcuMyA3OCA1LjIgODMuMyAzMy41IDguMyA0NC4zLTM3LjEgOTAuNC02OS43IDEyNy42LTc2LjYgODctMTQyLjggMTU1LjctMTYxLjEgMTc0LjhsMzM2LS4xIDAgNjQuMiAxNDQtODEuOXpNMzg1LjkgMzcxbDQ3LjEgMjcuMi00Ny4xIDI3LjIgMC01NC40ek0xMDUuNCAxNjEuNGEyMi40IDIyLjQgMCAxIDEgNDQuOCAwIDIyLjQgMjIuNCAwIDEgMSAtNDQuOCAwek05OC41IDM4MC41YzI1LjYtMjcuNCA5Ny43LTEwNC43IDE1MC44LTE2OS45IDM1LjEtNDMuMSA0MC4zLTgyLjQgMjguNC0xMTIuNy03LjQtMTguOC0xNy41LTMwLjItMjQuMy0zNS43IDQ1LjMgMi4xIDY4IDIzLjQgODIuMiAzOC4zIDAgMCA0Mi40IDQ4LjIgNS44IDExMy4zLTM3IDY1LjktMTEwLjkgMTQ3LjUtMTI4LjUgMTY2LjdsLTExNC40IDB6Il19LENlcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJyZXBseWQiLGljb246WzQ0OCw1MTIsW10sImYzZTYiLCJNMzIwIDQ4MGwtMTkyIDBDNTcuNiA0ODAgMCA0MjIuNCAwIDM1MkwwIDE2MEMwIDg5LjYgNTcuNiAzMiAxMjggMzJsMTkyIDBjNzAuNCAwIDEyOCA1Ny42IDEyOCAxMjhsMCAxOTJjMCA3MC40LTU3LjYgMTI4LTEyOCAxMjh6TTE5My40IDI3My4yYy02LjEtMi0xMS42LTMuMS0xNi40LTMuMS03LjIgMC0xMy41IDEuOS0xOC45IDUuNnMtOS42IDktMTIuOCAxNS44bC0xLjEgMC00LjItMTguMy0yOCAwIDAgMTM4LjkgMzYuMSAwIDAtODkuN2MxLjUtNS40IDQuNC05LjggOC43LTEzLjJzOS44LTUuMSAxNi4yLTUuMWM0LjYgMCA5LjggMSAxNS42IDMuMWw0LjgtMzR6TTMwOC42IDM3Ni42Yy0zLjIgMi40LTcuNyA0LjgtMTMuNyA3LjFzLTEyLjggMy41LTIwLjQgMy41Yy0xMi4yIDAtMjEuMS0zLTI2LjUtOC45LTUuNS01LjktOC41LTE0LjctOS0yNi40bDgzLjMgMGMuOS00LjggMS42LTkuNCAyLjEtMTMuOSAuNS00LjQgLjctOC42IC43LTEyLjUgMC0xMC43LTEuNi0xOS43LTQuNy0yNi45LTMuMi03LjItNy4zLTEzLTEyLjUtMTcuMi01LjItNC4zLTExLjEtNy4zLTE3LjgtOS4yLTYuNy0xLjgtMTMuNS0yLjgtMjAuNi0yLjgtMjEuMSAwLTM3LjUgNi4xLTQ5LjIgMTguM3MtMTcuNSAzMC41LTE3LjUgNTVjMCAyMi44IDUuMiA0MC43IDE1LjYgNTMuNyAxMC40IDEzLjEgMjYuOCAxOS42IDQ5LjIgMTkuNiAxMC43IDAgMjAuOS0xLjUgMzAuNC00LjZzMTcuMS02LjggMjIuNi0xMS4ybC0xMi0yMy42em0tMjEuOC03MC4zYzMuOCA1LjQgNS4zIDEzLjEgNC42IDIzLjFsLTUxLjcgMGMuOS05LjQgMy43LTE3IDguMi0yMi42czExLjUtOC41IDIxLTguNWM4LjItLjEgMTQuMSAyLjYgMTcuOSA4em03OS45IDIuNWM0LjEgMy45IDkuNCA1LjggMTYuMSA1LjggNyAwIDEyLjYtMS45IDE2LjctNS44czYuMS05LjEgNi4xLTE1LjYtMi0xMS42LTYuMS0xNS40LTkuNi01LjctMTYuNy01LjdjLTYuNyAwLTEyIDEuOS0xNi4xIDUuN3MtNi4xIDguOS02LjEgMTUuNCAyIDExLjcgNi4xIDE1LjZ6bTAgMTAwLjVjNC4xIDMuOSA5LjQgNS44IDE2LjEgNS44IDcgMCAxMi42LTEuOSAxNi43LTUuOHM2LjEtOS4xIDYuMS0xNS42LTItMTEuNi02LjEtMTUuNC05LjYtNS43LTE2LjctNS43Yy02LjcgMC0xMiAxLjktMTYuMSA1LjdzLTYuMSA4LjktNi4xIDE1LjRjMCA2LjYgMiAxMS43IDYuMSAxNS42eiJdfSxfZXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZW1waXJlIixpY29uOls1MTIsNTEyLFtdLCJmMWQxIiwiTTI5NS42IDU0LjJjLTEwLjgtMi4yLTIyLjEtMy4zLTMzLjUtMy42bDAtMTguMmM3OC4xIDIuMiAxNDYuMSA0NCAxODQuNiAxMDYuNmwtMTUuOCA5LjFjLTYuMS05LjctMTIuNy0xOC44LTIwLjItMjcuMWwtMTggMTUuNWMtMjYtMjkuNi02MS40LTUwLjctMTAxLjktNTguNGw0LjgtMjMuOXpNNjEuNCAzMjIuNGwyMy03LjdjLTYuNC0xOC4zLTEwLTM4LjItMTAtNTguN3MzLjMtNDAuNCA5LjctNTguN2wtMjIuNy03LjdjMy42LTEwLjggOC4zLTIxLjMgMTMuNi0zMWwtMTUuOC05LjFDNDIgMTgxIDMyLjEgMjE3LjUgMzIuMSAyNTZzMTAgNzUgMjcuMSAxMDYuNkw3NSAzNTMuNWMtNS4zLTEwLTkuNy0yMC4zLTEzLjYtMzEuMXpNMjIxLjEgNDM0Yy00MC40LTgtNzUuOC0yOS4xLTEwMS45LTU4LjdsLTE4IDE1LjhjLTcuNS04LjYtMTQuNC0xNy43LTIwLjItMjcuNGwtMTYgOS40YzM4LjUgNjIuMyAxMDYuOCAxMDQuMyAxODQuOSAxMDYuNmwwLTE4LjNjLTExLjMtLjMtMjIuNy0xLjctMzMuNS0zLjZsNC43LTIzLjh6TTEwMS4zIDEyMC45bDE4IDE1LjVjMjYtMjkuNiA2MS40LTUwLjcgMTAxLjktNTguNGwtNC43LTIzLjhjMTAuOC0yLjIgMjIuMS0zLjMgMzMuNS0zLjZsMC0xOC4yQzE3MS45IDM0LjYgMTAzLjkgNzYuNCA2NS40IDEzOWwxNS44IDkuMWM2LTkuNyAxMi42LTE4LjkgMjAuMS0yNy4yek00MTAuNyAzOTEuMWwtMTgtMTUuOGMtMjYgMjkuNi02MS40IDUwLjctMTAxLjkgNTguN2w0LjcgMjMuOGMtMTAuOCAxLjktMjIuMSAzLjMtMzMuNSAzLjZsMCAxOC4zYzc4LjEtMi4yIDE0Ni40LTQ0LjMgMTg0LjktMTA2LjZsLTE2LjEtOS40Yy01LjcgOS43LTEyLjYgMTguOC0yMC4xIDI3LjR6TTggMjU2YTI0OCAyNDggMCAxIDEgNDk2IDAgMjQ4IDI0OCAwIDEgMSAtNDk2IDB6bTQ4My44IDBhMjM1LjggMjM1LjggMCAxIDAgLTQ3MS42IDAgMjM1LjggMjM1LjggMCAxIDAgNDcxLjYgMHptLTM5LTEwNi42TDQzNyAxNTguNWM1LjMgOS43IDEwIDIwLjIgMTMuNiAzMWwtMjIuNyA3LjdjNi40IDE4LjMgOS43IDM4LjIgOS43IDU4LjdzLTMuNiA0MC40LTEwIDU4LjdsMjMgNy43Yy0zLjkgMTAuOC04LjMgMjEtMTMuNiAzMWwxNS44IDkuMUM0NzAgMzMxIDQ3OS45IDI5NC41IDQ3OS45IDI1NnMtOS45LTc1LTI3LjEtMTA2LjZ6bS0xODMgMTc3LjdjMTYuMy0zLjMgMzAuNC0xMS42IDQwLjctMjMuNWw1MS4yIDQ0LjhjMTEuOS0xMy42IDIxLjMtMjkuMyAyNy4xLTQ2LjhsLTY0LjItMjIuMWMyLjUtNy41IDMuOS0xNS4yIDMuOS0yMy41cy0xLjQtMTYuMS0zLjktMjMuNWw2NC41LTIyLjFjLTYuMS0xNy40LTE1LjUtMzMuMi0yNy40LTQ2LjhsLTUxLjIgNDQuOGMtMTAuMi0xMS45LTI0LjQtMjAuNS00MC43LTIzLjhsMTMuMy02Ni40Yy04LjYtMS45LTE3LjctMi44LTI3LjEtMi44cy0xOC41IC44LTI3LjEgMi44bDEzLjMgNjYuNGMtMTYuMyAzLjMtMzAuNCAxMS45LTQwLjcgMjMuOGwtNTEuMi00NC44Yy0xMS45IDEzLjYtMjEuMyAyOS4zLTI3LjQgNDYuOGw2NC41IDIyLjFjLTIuNSA3LjUtMy45IDE1LjItMy45IDIzLjVzMS40IDE2LjEgMy45IDIzLjVsLTY0LjIgMjIuMWM1LjggMTcuNCAxNS4yIDMzLjIgMjcuMSA0Ni44bDUxLjItNDQuOGMxMC4yIDExLjkgMjQuNCAyMC4yIDQwLjcgMjMuNWwtMTMuMyA2Ni43YzguNiAxLjcgMTcuNyAyLjggMjcuMSAyLjhzMTguNS0xLjEgMjcuMS0yLjhsLTEzLjMtNjYuN3oiXX0sVGVyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImFjY2Vzc2libGUtaWNvbiIsaWNvbjpbNDQ4LDUxMixbNjIxMDddLCJmMzY4IiwiTTQyMy45IDI1NS44TDQxMSA0MTMuMWMtMy4zIDQwLjctNjMuOSAzNS4xLTYwLjYtNC45bDEwLTEyMi41LTQxLjEgMi4zYzEwLjEgMjAuNyAxNS44IDQzLjkgMTUuOCA2OC41IDAgNDEuMi0xNi4xIDc4LjctNDIuMyAxMDYuNWwtMzkuMy0zOS4zYzU3LjktNjMuNyAxMy4xLTE2Ny4yLTc0LTE2Ny4yLTI1LjkgMC00OS41IDkuOS02Ny4yIDI2TDczIDI0My4yYzIyLTIwLjcgNTAuMS0zNS4xIDgxLjQtNDAuMmw3NS4zLTg1LjctNDIuNi0yNC44LTUxLjYgNDZDMTA1LjUgMTY1LjMgNjQuOSAxMjAgOTUgOTMuMWw2OC02MC43YzkuOC04LjggMjQuMS0xMC4yIDM1LjUtMy42IDAgMCAxMzkuMyA4MC45IDEzOS41IDgxLjEgMTYuMiAxMC4xIDIwLjcgMzYgNi4xIDUyLjZsLTU4LjQgNjYuNSAxMDYuMS01LjljMTguNS0xLjEgMzMuNiAxNC40IDMyLjEgMzIuN3pNMzU5IDEwMS44QTUwLjkgNTAuOSAwIDEgMCAzNTkgMCA1MC45IDUwLjkgMCAxIDAgMzU5IDEwMS44ek0xNzkuNiA0NTYuNWMtODAuNiAwLTEyNy40LTkwLjYtODIuNy0xNTYuMUw1Ny4yIDI2MC43QzM2LjQgMjg3IDI0IDMyMC4zIDI0IDM1Ni40IDI0IDQ4Ny4xIDE3NC43IDU1Ny44IDI3NS40IDQ3OC45bC0zOS43LTM5LjdjLTE2IDEwLjktMzUuMyAxNy4zLTU2LjEgMTcuM3oiXX0sTGVyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InF1b3JhIixpY29uOls0NDgsNTEyLFtdLCJmMmM0IiwiTTQ0MC43IDM4Ni43bC0yOS4zIDBjLTEuNSAxMy41LTEwLjUgMzAuOC0zMyAzMC44LTIwLjUgMC0zNS4zLTE0LjItNDkuNS0zNS44IDQ0LjItMzQuMiA3NC43LTg3LjUgNzQuNy0xNTMgLjEtMTE3LjUtOTYuNi0xOTYuNy0xOTguNC0xOTYuNy05OS43IDAtMTk3LjcgNzkuNy0xOTcuNyAxOTYuNyAwIDEzNC4xIDEzMS4zIDIyMS42IDI0OSAxODkgMTkuNyAzMy42IDQ1LjcgNjIuMyA5NS4yIDYyLjMgODEuOCAwIDkwLjgtNzUuMyA4OS05My4zek0yOTcuMiAzMjkuMmMtMTkuNS0yOS4yLTQzLjctNTIuMi05MS41LTUyLjItMzAuNSAwLTU0LjMgMTAtNjkgMjIuOGwxMi4yIDI0LjNjNi4yLTMgMTMtNCAxOS44LTQgMzUuNSAwIDUzLjcgMzAuOCA2OS4yIDYxLjMtMTAgMy0yMC43IDQuMi0zMi43IDQuMi03NSAwLTEwNy41LTUzLTEwNy41LTE1Ni43IDAtMTA0LjQgMzIuNS0xNTcuOSAxMDcuNS0xNTcuOSA3Ni4yIDAgMTA4LjcgNTMuNSAxMDguNyAxNTcuNyAuMSA0MS44LTUuNCA3NS42LTE2LjcgMTAwLjV6Il19LERlcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJjYy1qY2IiLGljb246WzU3Niw1MTIsW10sImYyNGIiLCJNNDMxLjUgMjQ0LjNsMC0zMi4zYzQxLjIgMCAzOC41IC4yIDM4LjUgLjIgNy4zIDEuMyAxMy4zIDcuMyAxMy4zIDE2IDAgOC44LTYgMTQuNS0xMy4zIDE1LjgtMS4yIC40LTMuMyAuMy0zOC41IC4zem00Mi44IDIwLjJjLTIuOC0uNy0zLjMtLjUtNDIuOC0uNWwwIDM1YzM5LjYgMCA0MCAuMiA0Mi44LS41IDcuNS0xLjUgMTMuNS04IDEzLjUtMTcgMC04LjctNi0xNS41LTEzLjUtMTd6TTU3NiA4MGwwIDM1MmMwIDI2LjUtMjEuNSA0OC00OCA0OEw0OCA0ODBjLTI2LjUgMC00OC0yMS41LTQ4LTQ4TDAgODBDMCA1My41IDIxLjUgMzIgNDggMzJsNDgwIDBjMjYuNSAwIDQ4IDIxLjUgNDggNDh6TTE4MiAxOTIuM2wtNTcgMGMwIDY3LjEgMTAuNyAxMDkuNy0zNS44IDEwOS43LTE5LjUgMC0zOC44LTUuNy01Ny4yLTE0LjhsMCAyOGMzMCA4LjMgNjggOC4zIDY4IDguMyA5Ny45IDAgODItNDcuNyA4Mi0xMzEuMnptMTc4LjUgNC41Yy02My40LTE2LTE2NS0xNC45LTE2NSA1OS4zIDAgNzcuMSAxMDguMiA3My42IDE2NSA1OS4ybDAtMjguM0MzMTIuOSAzMTEuNyAyNTMgMzA5IDI1MyAyNTZzNTkuOC01NS42IDEwNy41LTMxLjJsMC0yOHpNNTQ0IDI4Ni41YzAtMTguNS0xNi41LTMwLjUtMzgtMzJsMC0uOGMxOS41LTIuNyAzMC4zLTE1LjUgMzAuMy0zMC4yIDAtMTktMTUuNy0zMC0zNy0zMSAwIDAgNi4zLS4zLTEyMC4zLS4zbDAgMTI3LjUgMTIyLjcgMGMyNC4zIC4xIDQyLjMtMTIuOSA0Mi4zLTMzLjJ6Il19LEFlcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJmZWRvcmEiLGljb246WzQ0OCw1MTIsW10sImY3OTgiLCJNMCAyNTUuOEMuMSAxMzIuMiAxMDAuMyAzMiAyMjQgMzJTNDQ4IDEzMi4zIDQ0OCAyNTYgMzQ3LjggNDc5LjkgMjI0LjEgNDgwTDUwLjkgNDgwQzIyLjggNDgwIC4xIDQ1Ny4zIDAgNDI5LjJsMCAwIDAtMTczLjQgMCAwem0zNDIuNi02My4xYzAtMzkuNy0zNS42LTY4LjUtNzMuMi02OC41LTM0LjkgMC02NS44IDI2LjMtNzAuMSA1OS45LS4yIDMuOC0uNCA1LS40IDguNS0uMSAyMS4xIDAgNDIuOC0uOCA2NC40IC45IDI2LjEgMSA1Mi4xIDAgNzYuNiAwIDI3LjEtMTkuNCA0NS41LTQ0LjcgNDUuNXMtNDUuOC0yMC4yLTQ1LjgtNDUuNWMuNS0yNy43IDIyLjYtNDUuMyA0OC41LTQ2LjFsLjIgMCAyNi4zLS4yIDAtMzcuMy0yNi4zIC4yYy00Ny4xLS40LTg0LjYgMzYuNS04NS45IDgzLjQgMCA0NS42IDM3LjUgODIuOSA4MyA4Mi45IDQzIDAgNzguNy0zMy42IDgyLjYtNzUuNmwuMi01My41IDMyLjYtLjNjMjUuMyAuMiAyNS0zNy44LS4yLTM3LjNsLTMyLjQgLjNjMC02LjQgLjEtMTIuOCAuMS0xOS4yIC4xLTEyLjcgLjEtMjUuNC0uMS0zOC4yIC4xLTE2LjUgMTUuOC0zMS4yIDMzLjItMzEuMiAxNy41IDAgMzUuOSA4LjcgMzUuOSAzMS4yIDAgMy4yLS4xIDUuMS0uMyA2LjMtMS45IDEwLjUgNS4yIDIwLjQgMTUuNyAyMS45IDEwLjYgMS41IDIwLjItNi4xIDIxLjItMTYuNiAuNi00LjIgLjctNy45IC43LTExLjZ6Il19LEVlcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJkdW9saW5nbyIsaWNvbjpbNTc2LDUxMixbXSwiZTgxMiIsIk01MDQuMyAyMzAuNWMxMC40IDg4LjUtNDMuNCAxNzIuMS0xMjguMiAxOTlzLTE3Ni42LTEwLjMtMjE4LjktODguN2MtNzIgMy0xMzcuNC0zOS44LTE2My4yLTEwNS41LTIuNi02LjYtMS45LTE0IDEuOS0xOS45czEwLjItOS43IDE3LjItMTAuMWw5Ni4xLTYtMjMuOC03NS45Yy02LjMtMjAtMi4yLTQxLjkgMTEtNTguM3MzMy43LTI1IDU0LjUtMjNjNTIuMiA1IDg2LjggNC44IDEwNC0uNlMzMDAgMTYuNyAzMzktMTYuOWMxNS45LTEzLjcgMzcuNy0xOC41IDU3LjgtMTIuN3MzNi4xIDIxLjMgNDIuNCA0MS40TDQ2Mi44IDg3IDU0My42IDM3LjNjNi0zLjcgMTMuNC00LjMgMTkuOS0xLjZzMTEuMyA4LjMgMTIuOSAxNS4yYzE2LjIgNjguMi0xMi40IDE0MC4zLTcyLjEgMTc5LjV6TTI1OC41IDQ3NS45bDAgMGMxNS4xIDcuNSAyMS41IDI1LjggMTQuMiA0MXMtMjUuNCAyMS45LTQwLjcgMTQuOWwtNDMuOS0yMWMtMTUuMS03LjUtMjEuNS0yNS44LTE0LjItNDFzMjUuNC0yMS45IDQwLjctMTQuOWw0My44IDIxek01NjQuNiAzNDUuN2MxNC44IDguNCAyMCAyNy4zIDExLjYgNDIuMmwtMjMuOSA0Mi40Yy04LjcgMTQuMy0yNy4xIDE5LjItNDEuNiAxMC45cy0xOS45LTI2LjYtMTItNDEuNGwyMy45LTQyLjRjNC03LjEgMTAuNy0xMi40IDE4LjYtMTQuNnMxNi4zLTEuMiAyMy40IDIuOXoiXX0sJGVyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImZpcnN0ZHJhZnQiLGljb246WzM4NCw1MTIsW10sImYzYTEiLCJNMzg0IDE5MmwtNjQgMCAwIDEyOC0xMjggMCAwIDEyOC0xOTIgMCAwLTI1LjYgMTY2LjQgMCAwLTEyOCAxMjggMCAwLTEyOCA4OS42IDAgMCAyNS42em0tMjUuNiAzOC40bDAgMTI4LTEyOCAwIDAgMTI4LTE2Ni40IDAgMCAyNS42IDE5MiAwIDAtMTI4IDEyOCAwIDAtMTUzLjYtMjUuNiAwem0yNS42IDE5MmwtODkuNiAwIDAgODkuNiAyNS42IDAgMC02NCA2NCAwIDAtMjUuNnpNMCAwbDAgMzg0IDEyOCAwIDAtMTI4IDEyOCAwIDAtMTI4IDEyOCAwIDAtMTI4LTM4NCAweiJdfSxQZXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZnJlZWJzZCIsaWNvbjpbNDQ4LDUxMixbXSwiZjNhNCIsIk0zMDMuNyA5Ni4yYzExLjEtMTEuMSAxMTUuNS03NyAxMzkuMi01My4yIDIzLjcgMjMuNy00Mi4xIDEyOC4xLTUzLjIgMTM5LjJzLTM5LjQgLjktNjMuMS0yMi45Yy0yMy44LTIzLjctMzQuMS01Mi0yMi45LTYzLjF6TTEwOS45IDY4LjFDNzMuNiA0Ny41IDIyIDI0LjYgNS42IDQxLjEtMTEgNTcuNyAxMi43IDExMC41IDMzLjUgMTQ2LjggNTIgMTE0LjYgNzguMyA4Ny41IDEwOS45IDY4LjF6TTQwNi43IDE3NGMzLjMgMTEuMyAyLjcgMjAuNy0yLjcgMjYuMS0yMC4zIDIwLjMtODcuNS0yNy0xMDkuMy03MC4xLTE4LTMyLjMtMTEuMS01My40IDE0LjktNDguNyA1LjctMy42IDEyLjMtNy42IDE5LjYtMTEuNi0yOS44LTE1LjUtNjMuNi0yNC4zLTk5LjUtMjQuMy0xMTkuMSAwLTIxNS42IDk2LjUtMjE1LjYgMjE1LjYgMCAxMTkgOTYuNSAyMTUuNiAyMTUuNiAyMTUuNlM0NDUuMyAzODAuMSA0NDUuMyAyNjFjMC0zOC40LTEwLjEtNzQuNS0yNy43LTEwNS44LTMuOSA3LTcuNiAxMy4zLTEwLjkgMTguOHoiXX0sSWVyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Im9keXNlZSIsaWNvbjpbNTEyLDUxMixbXSwiZTVjNiIsIk00MDYuNyA0NjNjLTQyLjMgMzAuOC05NC40IDQ5LTE1MC43IDQ5LTExMS4xIDAtMjA1LjctNzAuOC0yNDEuMS0xNjkuOCAyLjQgMS43IDUuOSAzLjYgNy45IDQuNCAxNi4zIDcuNCA0MC4xLTUuNCA2Mi45LTI4LjcgNi45LTYuOSAxNC40LTEyLjQgMjIuOC0xNy4zIDE4LjMtMTEuOSAzNy42LTIwLjggNTguNC0yNy4yIDAgMCAyMi4zIDM0LjIgNDMuMSA3NC44cy0yMi4zIDU0LTI3LjIgNTRjLS4zIDAtLjggMC0xLjUtLjEtMTEtLjUtNzAtMy01NiA1MS4xIDE0LjkgNTcuNCA5Ny41IDM2LjYgMTM5LjYgOC45czMxLjctMTE4LjMgMzEuNy0xMTguM2M0MS4xLTYuNCA1NCAzNy4xIDU3LjkgNTkuNCAuOCA0LjYgMS4xIDkuOSAxLjQgMTUuNSAxLjEgMjEuMiAyLjMgNDUuNiAzNS4zIDQ2LjQgNS4zIDAgMTAuNi0uOCAxNS41LTJsMC0uMXptLTk1LjMtMjMuN2MtMi0uNS0zLjUtMi41LTMtNSAxLTIuNSAzLTMuNSA1LTNzMy41IDMgMyA1LTIuNSAzLjUtNSAzem0tMjA3LTk1LjZjMS41LS41IDMuNSAxIDQgMyAwIDItMSA0LTMgNC0xLjUgLjUtMy41LTEtNC0zLS41LTEuNSAxLTMuNSAzLTR6TTQ1MS44IDQyMWMzNy41LTQ0LjYgNjAuMi0xMDIuMiA2MC4yLTE2NSAwLTY3LjUtMjYuMS0xMjguOS02OC44LTE3NC43LS4xIDIzLjUtNi4xIDQ4LjItMTYuOCA2OS4yLTExLjkgMjAuMy00OSA1OC45LTY5LjggNzguNy0uNyAuMy0xLjEgLjktMS41IDEuNC0uMiAuMi0uMyAuNC0uNSAuNi01IDYuOS00IDE2LjggMyAyMS44IDIxLjMgMTUuOCA1Ni40IDQ1LjYgNTkuNCA3Mi44IDMuNSAzNC45IDI3LjkgNzUuNiAzNC4yIDg2LjIgLjggMS4zIDEuMyAyLjEgMS40IDIuNCAwIDIuMi0uNCA0LjMtLjggNi41bDAgLjF6TTM5MC43IDI1MWMtLjUgMyAxIDUuOSA0IDYuNHM1LjktMSA2LjQtNC0xLTUuOS00LTYuNGMtMy0xLTUuOSAxLTYuNCA0em02MS40LTYwLjlsLTExLjQgNS40LTMgMTIuOS01LjQtMTEuNC0xMi45LTMgMTEuNC01LjQgMy0xMi45IDUuNCAxMS40IDEyLjkgM3pNMzk1LjUgNDEuM2MtMTYuMiA4LjItMjIuMSAzMi44LTI5IDYxLjQtLjMgMS40LS43IDIuOC0xIDQuMi05LjUgMzguNS0zMC42IDM3LjYtNDEuNyAzNy4yLTEuMSAwLTItLjEtMi45LS4xLTUuMSAwLTYtNC04LjktMTcuMS0yLjYtMTIuMS02LjktMzItMTcuOS02My42LTIyLjctNjUuOC04Mi43LTQ5LjQtMTI4LjItMjIuMi01NS4zIDMzLjEtMzQuNCAxMDEuOS0xOS44IDE0OS40IC43IDIuMiAxLjQgNC40IDIgNi42LTQgNC0xMy44IDcuNS0yNiAxMS45LTEyLjEgNC4zLTI2LjYgOS41LTQwLjMgMTYuOS0zMy45IDE4LTcwLjMgNDktNzkuOCA2Mi42LTEuMy0xMC43LTItMjEuNS0yLTMyLjUgMC0xNDEuNCAxMTQuNi0yNTYgMjU2LTI1NiA1MS40IDAgOTkuNCAxNS4yIDEzOS41IDQxLjN6TTU4LjkgMTg5LjZjLTEuNS0yLTQuNS0zLTYuNC0xLjVzLTMgNC41LTEuNSA2LjQgNC41IDMgNi40IDEuNWMyLjUtMS41IDMtNC41IDEuNS02LjR6TTMyNy4zIDY0LjljMi0xLjUgNS0uNSA2LjQgMS41IDEuNSAyLjUgMSA1LjQtMS41IDYuNC0yIDEuNS01IC41LTYuNC0xLjVzLS41LTUgMS41LTYuNHpNOTUuMSAxMDVjLS41IDEuNSAuNSAzIDIgMyAxLjUgLjUgMy0uNSAzLTIgLjUtMS41LS41LTMtMi0zcy0zIC41LTMgMnptODQuNy0uNWMtMy41LTQzLjEgMzcuMS01NCAzNy4xLTU0IDQ0LjEtMTUuNCA1NiA1LjkgNjYuNCAzNy42czMgNDIuNi0zOC42IDU4LjktNjEuOS00LjUtNjQuOS00Mi42bDAgLjF6bTg5LjYgMTQuOWwxIDBjMi41IDAgNS0yIDUtNSAyLTYuOSAxLTE0LjQtMi0yMC44LTEuNS0yLTQtMy41LTYuNC0yLjUtMyAxLTQuNSA0LTMuNSA2LjkgMiA0LjUgMyA5LjkgMS41IDE0LjktLjUgMyAxLjUgNS45IDQuNSA2LjRsLS4xIC4xem0tOS45LTQxLjZjLTIgMC00LTEtNS0zcy0yLTMuNS0zLTVjLTItMi0yLTUuNCAwLTcuNHM1LjQtMiA3LjQgMGMyIDIuNSAzLjUgNSA1IDcuNHMuNSA1LjktMi41IDcuNGMtLjYgMC0xIC4yLTEuMyAuMy0uMiAuMS0uNCAuMi0uNiAuMmwwIC4xeiJdfSxOZXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZ2ctY2lyY2xlIixpY29uOls1MTIsNTEyLFtdLCJmMjYxIiwiTTI1Ny41IDhhMjQ4IDI0OCAwIDEgMCAwIDQ5NiAyNDggMjQ4IDAgMSAwIDAtNDk2ek0yMDggMzgyLjhsLTEyNS43LTEyNS43IDEyNS43LTEyNS43IDM1LjIgMzUuNC0yNC4yIDI0LjItMTEuMS0xMS4xLTc3LjIgNzcuMiA3Ny4yIDc3LjIgMjYuNi0yNi42LTUzLjEtNTIuOSAyNC40LTI0LjQgNzcuMiA3Ny4yLTc1IDc1LjJ6bTk5LTIuMmwtMzUuMi0zNS4yIDI0LjEtMjQuNCAxMS4xIDExLjEgNzcuMi03Ny4yLTc3LjItNzcuMi0yNi41IDI2LjUgNTMuMSA1Mi45LTI0LjQgMjQuNC03Ny4yLTc3LjIgNzUtNzUgMTI1LjcgMTI1LjctMTI1LjcgMTI1LjZ6Il19LEZlcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJjbG91ZGZsYXJlIixpY29uOls2NDAsNTEyLFtdLCJlMDdkIiwiTTQwNy45IDMxOS45TDE3Ny4xIDMxN2MtLjcgMC0xLjQtLjItMi0uNXMtMS4yLS44LTEuNi0xLjRjLS40LS42LS43LTEuMy0uNy0yczAtMS40IC4yLTIuMWMuNC0xLjEgMS4xLTIuMSAyLjEtMi44czIuMS0xLjIgMy4zLTEuMmwyMzIuOS0yLjljMjcuNi0xLjMgNTcuNS0yMy42IDY4LTUwLjhsMTMuMy0zNC41Yy40LS45IC41LTEuOSAuNS0yLjkgMC0uNS0uMS0xLjEtLjItMS42LTcuNC0zMi4yLTI1LTYxLjEtNTAuMy04Mi4zcy01Ni43LTMzLjctODkuNy0zNS41LTY1LjYgNy4zLTkzIDI1LjctNDggNDUuMy01OC44IDc2LjVjLTExLjMtOC41LTI0LjktMTMuMy0zOS0xMy43cy0yOCAzLjUtMzkuOCAxMS40LTIwLjggMTkuMS0yNS45IDMyLjMtNS45IDI3LjYtMi40IDQxLjNjLTUyLjMgMS41LTk0LjIgNDQuMS05NC4yIDk2LjUgMCA0LjcgLjMgOS4zIDEgMTQgLjIgMS4xIC43IDIuMSAxLjUgMi44czEuOSAxLjEgMi45IDEuMWw0MjYuMSAuMWMwIDAgLjEgMCAuMSAwIDEuMiAwIDIuMy0uNCAzLjMtMS4xczEuNi0xLjcgMi0yLjlsMy4zLTExLjNjMy45LTEzLjQgMi40LTI1LjgtNC4xLTM0LjktNi04LjQtMTYuMS0xMy4zLTI4LjItMTMuOXptMTA1LjktOTguOGMtMi4xIDAtNC4zIC4xLTYuNCAuMi0uOCAuMS0xLjUgLjMtMi4xIC44cy0xIDEuMS0xLjMgMS44bC05LjEgMzEuMmMtMy45IDEzLjQtMi40IDI1LjggNC4xIDM0LjkgNiA4LjQgMTYuMSAxMy4zIDI4LjIgMTMuOWw0OS4yIDIuOWMuNyAwIDEuNCAuMiAyIC41czEuMSAuOCAxLjUgMS40Yy40IC42IC43IDEuMyAuOCAyczAgMS41LS4yIDIuMWMtLjQgMS4xLTEuMSAyLjEtMi4xIDIuOHMtMi4xIDEuMi0zLjMgMS4ybC01MS4xIDIuOWMtMjcuOCAxLjMtNTcuNyAyMy42LTY4LjEgNTAuOGwtMy43IDkuNmMtLjIgLjQtLjIgLjgtLjIgMS4zcy4yIC44IC40IDEuMiAuNiAuNyAuOSAuOSAuOCAuMyAxLjIgLjNjMCAwIC4xIDAgLjEgMGwxNzUuOSAwYzEgMCAyLS4zIDIuOC0uOXMxLjQtMS41IDEuNy0yLjRjMy4xLTExLjEgNC43LTIyLjUgNC43LTM0IDAtNjkuMy01Ni41LTEyNS41LTEyNi4xLTEyNS41eiJdfSxPZXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiaGFja2VycmFuayIsaWNvbjpbNTEyLDUxMixbXSwiZjVmNyIsIk00NzcuOSAxMjhDNDYzLjQgMTAzIDI4NS41IDAgMjU2LjUgMHMtMjA2LjkgMTAyLjgtMjIxLjMgMTI4LTE0LjUgMjMwLjggMCAyNTYgMTkyLjQgMTI4IDIyMS4zIDEyOCAyMDYuOC0xMDIuOSAyMjEuMy0xMjggMTQuNS0yMzEgMC0yNTZ6TTMxNi41IDQxNC4yYy00IDAtNDAuOS0zNS44LTM4LTM4LjcgLjktLjkgNi4zLTEuNSAxNy41LTEuOCAwLTI2LjIgLjYtNjguNiAuOS04Ni4zIDAtMi0uNC0zLjQtLjQtNS44bC03OS45IDBjMCA3LjEtLjUgMzYuMiAxLjQgNzIuOSAuMiA0LjUtMS42IDYtNS43IDUuOS0xMC4xIDAtMjAuMy0uMS0zMC40LS4xLTQuMSAwLTUuOS0xLjUtNS43LTYuMSAuOS0zMy40IDMtODQtLjItMjEyLjdsMC0zLjJjLTkuNy0uNC0xNi40LTEtMTcuMy0xLjgtMi45LTIuOSAzNC41LTM4LjcgMzguNS0zOC43czQxLjIgMzUuOCAzOC4zIDM4LjdjLS45IC45LTcuOSAxLjUtMTYuOCAxLjhsMCAzLjJjLTIuNCAyNS44LTIgNzkuNi0yLjYgMTA1LjRsODAuMyAwYzAtNC42IC40LTM0LjctMS4yLTgzLjYtLjEtMy40IDEtNS4yIDQuMi01LjIgMTEuMS0uMSAyMi4yLS4xIDMzLjItLjEgMy41IDAgNC42IDEuNyA0LjUgNS40LTMuNyAxOTEuMy0uNyAxNzcuOS0uNyAyMTAuMyA4LjkgLjQgMTYuOCAxIDE3LjcgMS44IDIuOSAyLjktMzMuNiAzOC43LTM3LjYgMzguN2wwIDB6Il19LFJlcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJza3lhdGxhcyIsaWNvbjpbNjQwLDUxMixbXSwiZjIxNiIsIk02NDAgMzI5LjNjMCA2NS45LTUyLjUgMTE0LjQtMTE3LjUgMTE0LjQtMTY1LjkgMC0xOTYuNi0yNDkuNy0zNTkuNy0yNDkuNy0xNDYuOSAwLTE0Ny4xIDIxMi4yIDUuNiAyMTIuMiA0Mi41IDAgOTAuOS0xNy44IDEyNS4zLTQyLjUgNS42LTQuMSAxNi45LTE2LjMgMjIuOC0xNi4zczEwLjkgNSAxMC45IDEwLjljMCA3LjgtMTMuMSAxOS4xLTE4LjcgMjQuMS00MC45IDM1LjYtMTAwLjMgNjEuMi0xNTQuNyA2MS4yLTgzLjQgLjEtMTU0LTU5LTE1NC0xNDQuOVM2Ny41IDE0OS42IDE1Mi44IDE0OS42YzE4NS4zIDAgMjIyLjUgMjQ1LjkgMzYxLjkgMjQ1LjkgOTkuOSAwIDk0LjgtMTM5LjcgMy40LTEzOS43LTE3LjUgMC0zNSAxMS42LTQ2LjkgMTEuNi04LjQgMC0xNS45LTcuMi0xNS45LTE1LjYgMC0xMS42IDUuMy0yMy43IDUuMy0zNi4zIDAtNjYuNi01MC45LTExNC43LTExNi45LTExNC43LTUzLjEgMC04MCAzNi45LTg4LjggMzYuOS02LjIgMC0xMS4yLTUtMTEuMi0xMS4yIDAtNS42IDQuMS0xMC4zIDcuOC0xNC40IDI1LjMtMjguOCA2NC43LTQzLjcgMTAyLjgtNDMuNyA3OS40IDAgMTM5LjEgNTguNCAxMzkuMSAxMzcuOCAwIDYuOS0uMyAxMy43LTEuMiAyMC42IDExLjktMy4xIDI0LjEtNC43IDM1LjktNC43IDYwLjcgMCAxMTEuOSA0NS4zIDExMS45IDEwNy4yeiJdfSxCZXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZGVza3BybyIsaWNvbjpbNDQ4LDUxMixbXSwiZjM4ZiIsIk0xMjIgNDA2LjJsODQgMGMyMy4xIDAgNDMuOS0zLjUgNjIuNi0xMC43IDE4LjctNy4xIDM0LjctMTcuMSA0OC0zMC4xIDEzLjMtMTMuNCAyMy42LTI5LjIgMzAuNy00Ny41IDMuOS05LjYgNi44LTE5LjggOC42LTMwLjZsNzMuNyAwYy0yLjUgMjEuMy03LjcgNDEuMy0xNS41IDYwLTExLjEgMjcuMi0yNi45IDUwLjgtNDcuMyA3MC45LTIwIDE5LjYtNDQuMiAzNC44LTcyLjYgNDUuNHMtNjAgMTYtOTQuNyAxNmwtMTQ5LjggLjIgMC0xOTIuNCA3Mi4zLS4yIDAgMTE4Ljh6TTE5OS40IDMyYzM0LjcgMCA2Ni4yIDUuNCA5NC43IDE2IDI4LjUgMTAuNyA1Mi45IDI2LjEgNzMuMyA0Ni4yIDIwLjQgMTkuNiAzNi4yIDQzLjIgNDcuMyA3MC45IDcuNSAxOC4zIDEyLjQgMzguMSAxNC45IDU5LjNsLTczLjctLjFjLTEuOS0xMC41LTQuNy0yMC41LTguNi0yOS45LTcuMS0xOC43LTE3LjMtMzQuNS0zMC43LTQ3LjUtMTMuMy0xMy40LTI5LjMtMjMuNi00OC0zMC44LTE4LjYtNy4xLTM5LjUtMTAuNy02Mi43LTEwLjdsLTg0IDAgMCAxMTguOC03Mi4yIC4yIDAtMTkyLjMgMTQ5LjctLjF6Il19LEhlcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJyZXNvbHZpbmciLGljb246WzUxMiw1MTIsW10sImYzZTciLCJNMjg5LjIgMjc4LjJjNDYtMTMuMyA0OS42LTIzLjUgNDQtNDMuNEwzMjIgMTk1LjVjLTYuMS0yMC45LTE4LjQtMjguMS03MS4xLTEyLjhsLTE4OC4yIDU0LjEgMjguNiA5OC42IDE5Ny45LTU3LjJ6TTI1Ni41IDhDMTM5LjQgOCA0MS4yIDg4LjcgMTUuMiAxOTcuNWwyMjEuOS02My45YzM0LjgtMTAuMiA1NC4yLTExLjcgNzkuMy04LjIgMzYuMyA2LjEgNTIuNyAyNSA2MS40IDU1LjJsMTAuNyAzNy44YzguMiAyOC4xIDEgNTAuNi0yMy41IDczLjYtMTkuNCAxNy40LTMxLjIgMjQuNS02MS40IDMzLjJsLTkyLjYgMjYuNiAyMjAuNCAyNy4xIDkuNyAzNC4yLTQ4LjEgMTMuMy0yODYuOC0zNy4zIDIzIDgwLjJDMTY2IDQ5MS4zIDIwOS41IDUwNCAyNTUuNSA1MDQgMzkyLjUgNTA0IDUwNCAzOTIuNiA1MDQgMjU1LjcgNTA1IDExOS40IDM5My41IDggMjU2LjUgOHpNNDYuMyAzODguNkw4IDI1Ni44YzAgNDguNSAxNC4zIDkzLjQgMzguMyAxMzEuOHoiXX0scWVyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImJsYWNrYmVycnkiLGljb246WzUxMiw1MTIsW10sImYzN2IiLCJNMTY2IDExNi45YzAgMjMuNC0xNi40IDQ5LjEtNzIuNSA0OS4xbC03MC4xIDAgMjEtODguOCA2Ny44IDBjNDIuMSAwIDUzLjggMjMuMyA1My44IDM5Ljd6TTI5Mi4yIDc3LjJsLTY3LjggMC0xOC43IDg4LjggNzAuMSAwYzUzLjggMCA3MC4xLTI1LjcgNzAuMS00OS4xIC4xLTE2LjQtMTEuNi0zOS43LTUzLjctMzkuN3pNODguOCAyMDguMWwtNjcuOCAwLTIxIDg4LjggNzAuMSAwYzU2LjEgMCA3Mi41LTIzLjQgNzIuNS00OS4xIDAtMTYuMy0xMS43LTM5LjctNTMuOC0zOS43em0xODAuMSAwbC02Ny44IDAtMTguNyA4OC44IDcwLjEgMGM1My44IDAgNzAuMS0yMy40IDcwLjEtNDkuMSAwLTE2LjMtMTEuNy0zOS43LTUzLjctMzkuN3ptMTg5LjMtNTMuOGwtNjcuOCAwLTE4LjcgODguOCA3MC4xIDBjNTMuOCAwIDcwLjEtMjMuNCA3MC4xLTQ5LjEgLjEtMTYuMy0xMS42LTM5LjctNTMuNy0zOS43em0tMjggMTM3LjlsLTY3LjggMC0xOC43IDg4LjggNzAuMSAwYzU2LjEgMCA3MC4xLTIzLjQgNzAuMS00OS4xIDAtMTYuMy0xMS42LTM5LjctNTMuNy0zOS43ek0yNDAuOCAzNDZsLTY3LjggMC0xOC43IDg4LjggNzAuMSAwYzU2LjEgMCA3MC4xLTI1LjcgNzAuMS00OS4xIC4xLTE2LjMtMTEuNi0zOS43LTUzLjctMzkuN3oiXX0samVyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InN0cmlwZS1zIixpY29uOlszODQsNTEyLFtdLCJmNDJhIiwiTTE1NS42IDE1NC42YzAtMjIuMyAxOC42LTMwLjkgNDguNC0zMC45IDQzLjQgMCA5OC41IDEzLjMgMTQxLjkgMzYuN2wwLTEzNC4zYy00Ny4zLTE4LjktOTQuNS0yNi4xLTE0MS44LTI2LjEtMTE1LjcgMC0xOTIuOCA2MC40LTE5Mi44IDE2MS40IDAgMTU3LjkgMjE2LjggMTMyLjMgMjE2LjggMjAwLjQgMCAyNi40LTIyLjkgMzQuOS01NC43IDM0LjktNDcuMiAwLTEwOC4yLTE5LjUtMTU2LjEtNDUuNWwwIDEyOC41YzQ5LjMgMjEuMyAxMDIuMyAzMi4zIDE1NiAzMi40IDExOC42IDAgMjAwLjMtNTEgMjAwLjMtMTUzLjYgMC0xNzAuMi0yMTgtMTM5LjctMjE4LTIwMy45eiJdfSxGa2U9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic3F1YXJlLWJlaGFuY2UiLGljb246WzQ0OCw1MTIsWyJiZWhhbmNlLXNxdWFyZSJdLCJmMWI1IiwiTTE1NS4zIDMxOC40YzE3LjIgMCAzMS4yLTYuMSAzMS4yLTI1LjQgMC0xOS43LTExLjctMjcuNC0zMC4zLTI3LjVsLTQ2IDAgMCA1Mi45IDQ1LjEgMHptLTUuNC0xMjkuNmwtMzkuNiAwIDAgNDQuOCA0Mi43IDBjMTUuMSAwIDI1LjgtNi42IDI1LjgtMjIuOSAwLTE3LjctMTMuNy0yMS45LTI4LjktMjEuOXptMTI5LjUgNzQuOGw2Mi4yIDBjLTEuNy0xOC41LTExLjMtMjkuNy0zMC41LTI5LjctMTguMyAwLTMwLjUgMTEuNC0zMS43IDI5Ljd6TTM4NCAzMkw2NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgNDE2YzAgMzUuMyAyOC43IDY0IDY0IDY0bDMyMCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMzIwYzAtMzUuMy0yOC43LTY0LTY0LTY0ek0zNDkuNSAxODVsLTc3LjggMCAwLTE4LjkgNzcuOCAwIDAgMTguOXpNMTkzLjcgMjQzLjdjMjMuNiA2LjcgMzUgMjcuNSAzNSA1MS42IDAgMzktMzIuNyA1NS43LTY3LjYgNTUuOWwtOTMuMSAwIDAtMTkyIDkwLjUgMGMzMi45IDAgNjEuNCA5LjMgNjEuNCA0Ny41IDAgMTkuMy05IDI4LjgtMjYuMiAzN3ptMTE4LjctMzguNmM0My41IDAgNjcuNiAzNC4zIDY3LjYgNzUuNCAwIDEuNi0uMSAzLjMtLjIgNSAwIC44LS4xIDEuNS0uMSAyLjJsLTEwMC4yIDBjMCAyMi4yIDExLjcgMzUuMyAzNC4xIDM1LjMgMTEuNiAwIDI2LjUtNi4yIDMwLjItMTguMWwzMy43IDBjLTEwLjQgMzEuOS0zMS45IDQ2LjgtNjUuMSA0Ni44LTQzLjggMC03MS4xLTI5LjctNzEuMS03MyAwLTQxLjggMjguNy03My42IDcxLjEtNzMuNnoiXX0sVmVyPUZrZSxVZXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic2VydmljZXN0YWNrIixpY29uOls1MTIsNTEyLFtdLCJmM2VjIiwiTTk2IDIxNmM4MS43IDEwLjIgMjczLjcgMTAyLjMgMzA0IDIzMkw4IDQ0OGM5OS41LTguMSAxODQuNS0xMzcgODgtMjMyek0xMjggNjRjMzIuMyAzNS42IDQ3LjcgODMuOSA0Ni40IDEzMy42IDgyLjkgMzMuNyAyMDcuMyAxMjMuNyAyMzMuNiAyNTAuNGw5NiAwQzQ2My4zIDIzMS45IDIzMC44IDc5LjUgMTI4IDY0eiJdfSxXZXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToicm9ja2V0Y2hhdCIsaWNvbjpbNTc2LDUxMixbXSwiZjNlOCIsIk0yODQuNSAyMjQuOGMtNi43IDAtMTMuMyAyLjEtMTguOSA1LjhzLTkuOSA5LjEtMTIuNSAxNS40LTMuMiAxMy4xLTEuOSAxOS43IDQuNiAxMi43IDkuNCAxNy40IDEwLjkgOCAxNy41IDkuMyAxMy41IC42IDE5LjctMiAxMS41LTcgMTUuMy0xMi42IDUuNy0xMi4yIDUuNy0xOC45YzAtOS4xLTMuNy0xNy44LTEwLjEtMjQuMnMtMTUuMS0xMC0yNC4yLTkuOXptLTExMC40IDBjLTYuNyAwLTEzLjMgMi4xLTE4LjkgNS44cy05LjkgOS4xLTEyLjUgMTUuNC0zLjIgMTMuMS0xLjkgMTkuNyA0LjYgMTIuNyA5LjQgMTcuNCAxMC45IDggMTcuNSA5LjMgMTMuNSAuNiAxOS43LTIgMTEuNS03IDE1LjMtMTIuNiA1LjctMTIuMiA1LjctMTguOWMwLTkuMS0zLjctMTcuOC0xMC4xLTI0LjJzLTE1LjEtMTAtMjQuMi0xMGwwIDB6bTIyMC45IDBhMzQuMSAzNC4xIDAgMSAwIC40IDY4LjIgMzQuMSAzNC4xIDAgMSAwIC0uNC02OC4yem0xNTMuOC01NS4zYy0xNS41LTI0LjItMzcuMy00NS42LTY0LjctNjMuNi01Mi45LTM0LjgtMTIyLjQtNTQtMTk1LjctNTQtMjQuMiAwLTQ4LjMgMi4xLTcyIDYuNC0xNC45LTE0LjMtMzEuNS0yNi42LTQ5LjUtMzYuNi02Ni44LTMzLjMtMTI1LjYtMjAuOS0xNTUuMy0xMC4yLTIuMyAuOC00LjMgMi4xLTUuOSAzLjlzLTIuNyAzLjktMy4zIDYuMi0uNSA0LjcgLjEgNy4xIDEuOCA0LjQgMy41IDYuMUMyNyA1Ni41IDYxLjYgOTkuMyA1My4xIDEzOC4zIDIwIDE3Mi4yIDIgMjEzIDIgMjU1LjYgMiAyOTkgMjAgMzM5LjggNTMuMSAzNzMuNyA2MS42IDQxMi43IDI3IDQ1NS42IDYgNDc3LjIgNC4zIDQ3OSAzLjIgNDgxLjEgMi41IDQ4My40cy0uNyA0LjctLjEgNyAxLjcgNC41IDMuMyA2LjIgMy42IDMuMSA1LjkgMy45YzI5LjcgMTAuNyA4OC41IDIzLjEgMTU1LjMtMTAuMiAxOC0xMCAzNC43LTIyLjMgNDkuNS0zNi42IDIzLjggNC4zIDQ3LjkgNi40IDcyIDYuNCA3My4zIDAgMTQyLjgtMTkuMiAxOTUuNy01NCAyNy40LTE4IDQ5LjEtMzkuNCA2NC43LTYzLjYgMTcuMy0yNi45IDI2LjEtNTUuOSAyNi4xLTg2LjEgMC0zMS04LjgtNjAtMjYuMS04Ni45bDAgMHpNMjg1LjQgNDA5LjljLTMwLjIgLjEtNjAuMy0zLjgtODkuNC0xMS41bC0yMC4xIDE5LjRjLTExLjIgMTAuNy0yMy42IDIwLTM3LjEgMjcuNi0xNi40IDguMi0zNC4yIDEzLjMtNTIuNSAxNC45IDEtMS44IDEuOS0zLjYgMi44LTUuNCAyMC4yLTM3LjEgMjUuNi03MC41IDE2LjMtMTAwLjEtMzMtMjYtNTIuOC01OS4yLTUyLjgtOTUuNCAwLTgzLjEgMTA0LjMtMTUwLjUgMjMyLjgtMTUwLjVzMjMyLjkgNjcuNCAyMzIuOSAxNTAuNWMwIDgzLjEtMTA0LjMgMTUwLjUtMjMyLjkgMTUwLjV6Il19LEdlcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJyZWJlbCIsaWNvbjpbNTEyLDUxMixbXSwiZjFkMCIsIk0yNTYuOSA1MDRjLTEzOS4zIDAtMjQ3LjUtMTE2LjItMjQzLjMtMjU0LjEgMi44LTc5LjIgNDMuMi0xNTIuMiAxMTYuNS0yMDAuNCAuMyAwIDEuOS0uNiAxLjEgLjgtNS44IDUuNS0xMTEuMyAxMjkuOC0xNC4xIDIyNi40IDQ5LjggNDkuNSA5MCAyLjUgOTAgMi41IDM4LjUtNTAuMS0uNi0xMjUuOS0uNi0xMjUuOS0xMC0yNC45LTQ1LjctNDAuMS00NS43LTQwLjFsMjguOC0zMS44YzI0LjQgMTAuNSA0My4yIDM4LjcgNDMuMiAzOC43IC44LTI5LjYtMjEuOS02MS40LTIxLjktNjEuNEwyNTUuNSA4IDI5OS44IDU4LjFjLTIwLjUgMjguOC0yMS45IDYyLjYtMjEuOSA2Mi42IDEzLjgtMjMgNDMuNS0zOS4zIDQzLjUtMzkuM2wyOC41IDMxLjhjLTI3LjQgOC45LTQ1LjQgMzkuOS00NS40IDM5LjktMTUuOCAyOC41LTI3LjEgODkuNCAuNiAxMjcuMyAzMi40IDQ0LjYgODcuNy0yLjggODcuNy0yLjggMTAyLjctOTEuOS0xMC41LTIyNS0xMC41LTIyNS02LjEtNS41IC44LTIuOCAuOC0yLjggNTAuMSAzNi41IDExNC42IDg0LjQgMTE2LjIgMjA0LjggMiAxNDUuNi05OS45IDI0OS40LTI0Mi40IDI0OS40eiJdfSxZZXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic3F1YXJlLXdlYi1hd2Vzb21lIixpY29uOls0NDgsNTEyLFtdLCJlNjgzIiwiTTY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzIwIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zMjBjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzJ6TTIzNSAxNzcuNmw1MyA0Ni40IDUyLjItMTAuNGMtMi42LTMuOS00LjItOC41LTQuMi0xMy42IDAtMTMuMyAxMC43LTI0IDI0LTI0czI0IDEwLjcgMjQgMjRjMCAxMy0xMC4zIDIzLjYtMjMuMiAyNEwzMDQuNSAzNDkuMWMtNS4yIDExLjUtMTYuNiAxOC45LTI5LjIgMTguOWwtMTAyLjYgMGMtMTIuNiAwLTI0LTcuNC0yOS4yLTE4LjlMODcuMiAyMjRjLTEyLjktLjQtMjMuMi0xMS0yMy4yLTI0IDAtMTMuMyAxMC43LTI0IDI0LTI0czI0IDEwLjcgMjQgMjRjMCA1LTEuNSA5LjctNC4yIDEzLjZMMTYwIDIyNCAyMTMuMSAxNzcuNmMtOC45LTQuMS0xNS0xMy4xLTE1LTIzLjYgMC0xNC40IDExLjYtMjYgMjYtMjZzMjYgMTEuNiAyNiAyNmMwIDEwLjUtNi4yIDE5LjUtMTUuMSAyMy42eiJdfSxaZXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToibGlua3RyZWUiLGljb246WzQ0OCw1MTIsW10sImU3ZDgiLCJNMTYgMTczLjRsMTI1LjggMC04OS40LTg1LjQgNDkuNS01MSA4NS4yIDg3LjggMC0xMjQuOCA3My45IDAgMCAxMjQuOCA4NS4yLTg3LjYgNDkuNCA1MC44LTg5LjQgODUuMiAxMjUuNyAwIDAgNzAuNS0xMjYuNCAwIDkwIDg3LjYtNDkuMyA0OS44LTEyMi4yLTEyMy0xMjIuMiAxMjMtNDkuNS00OS42IDkwLTg3LjYtMTI2LjQgMCAwLTcwLjV6TTE4Ni45IDM0NC44bDczLjkgMCAwIDE2Ny4yLTczLjkgMCAwLTE2Ny4yeiJdfSxYZXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic2ltcGx5YnVpbHQiLGljb246WzUxMiw1MTIsW10sImYyMTUiLCJNNDgxLjYgNjRsLTEwNiAwQzM2MS4xIDY0IDM0OSA3NS44IDM0OSA5MC4zbDAgMzkuNi0xODUuMyAwIDAtMzkuNmMwLTE0LjUtMTItMjYuMy0yNi42LTI2LjNsLTEwNiAwQzE2LjUgNjQgNC43IDc1LjggNC43IDkwLjNsMCAzMzEuNGMwIDE0LjUgMTEuOCAyNi4zIDI2LjYgMjYuM2w0NTAuNCAwYzE0LjggMCAyNi42LTExLjggMjYuNi0yNi4zbDAtMzMxLjRjLS4yLTE0LjUtMTItMjYuMy0yNi43LTI2LjN6TTE1MC41IDIyMi43YTY2LjUgNjYuNSAwIDEgMSAtLjMgMTMzLjEgNjYuNSA2Ni41IDAgMSAxIC4zLTEzMy4xem0yMTEuOSAuMWE2Ni41IDY2LjUgMCAxIDEgLjMgMTMyLjkgNjYuNSA2Ni41IDAgMSAxIC0uMy0xMzIuOXoiXX0sUWVyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InN0dWJiZXIiLGljb246WzQ0OCw1MTIsW10sImU1YzciLCJNMTM2LjUgMjk0LjJsNTguOCAyMi45YzkuMS0zNi44IDI1LjQtNjEuMSA1NS02MS4xIDQ5LjQgMCA3MS40IDYzLjYgMTQyLjQgNjMuNiAxNS42IDAgMzUuOS0yLjggNTUuMy0xMy4zbDAgNjEuN2MwIDYxLjgtNTAuNCAxMTItMTEyLjMgMTEyTDAgNDgwIDQxLjggNDI0IDAgMzY4IDQxLjcgMzEyIDAgMjU2LjEgNDEuOCAyMDAuMSAwIDE0NC4xIDQxLjggODggMCAzMiAzMzUuNyAzMkMzOTcuNiAzMiA0NDggODIuMyA0NDggMTQ0LjFsMCA1MS4zYy05LjIgMzYuMy0yNS45IDYwLjYtNTUgNjAuNi00OS42IDAtNzEuNi02My41LTE0Mi40LTYzLjUtMzUuOSAwLTk1LjIgMTQuNi0xMTQuMSAxMDEuNmwwIC4xeiJdfSxLZXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiYXBwZXIiLGljb246WzY0MCw1MTIsW10sImYzNzEiLCJNNDIuMSAyMzkuMWMyMi4yIDAgMjkgMi44IDMzLjUgMTQuNmwuOCAwIDAtMjIuOWMwLTExLjMtNC44LTE1LjQtMTcuOS0xNS40LTExLjMgMC0xNC40IDIuNS0xNS4xIDEyLjhsLTM4LjYgMGMuMy0xMy45IDEuNS0xOS4xIDUuOC0yNC40IDcuMy04LjggMTguOS0xMS44IDQ2LjEtMTEuOCAzMyAwIDQ3LjEgNSA1My45IDE4LjkgMiA0LjMgNCAxNS42IDQgMjMuN2wwIDc2LjMtMzguMyAwIDEuMy0xOS4xLTEgMGMtNS4zIDE1LjYtMTMuNiAyMC40LTM1LjUgMjAuNC0zMC4zIDAtNDEuMS0xMC4xLTQxLjEtMzcuMyAwLTI1LjIgMTIuMy0zNS44IDQyLjEtMzUuOHptMTcuMSA0OC4xYzEzLjEgMCAxNi45LTMgMTYuOS0xMy40IDAtOS4xLTQuMy0xMS42LTE5LjYtMTEuNi0xMy4xIDAtMTcuOSAzLTE3LjkgMTIuMS0uMSAxMC40IDMuNyAxMi45IDIwLjYgMTIuOXpNMTM3IDE5Mi4zbDM4LjMgMC0xLjUgMjAuNiAuOCAwYzkuMS0xNy4xIDE1LjktMjAuOSAzNy41LTIwLjkgMTQuNCAwIDI0LjcgMyAzMS41IDkuMSA5LjggOC42IDEyLjggMjAuNCAxMi44IDQ4LjEgMCAzMC0zIDQzLjEtMTIuMSA1Mi45LTYuOCA3LjMtMTYuNCAxMC4xLTMzLjIgMTAuMS0yMC40IDAtMjkuMi01LjUtMzMuOC0yMS4ybC0uOCAwIDAgNzAuMy0zOS41IDAgMC0xNjl6TTIxNy45IDI1M2MwLTI3LjUtMy4zLTMyLjUtMjAuNy0zMi41LTE2LjkgMC0yMC43IDUtMjAuNyAyOC43IDAgMjggMy41IDMzLjUgMjEuMiAzMy41IDE2LjQgMCAyMC4yLTUuNiAyMC4yLTI5Ljd6bTU3LjktNjAuN2wzOC4zIDAtMS41IDIwLjYgLjggMGM5LjEtMTcuMSAxNS45LTIwLjkgMzcuNS0yMC45IDE0LjQgMCAyNC43IDMgMzEuNSA5LjEgOS44IDguNiAxMi44IDIwLjQgMTIuOCA0OC4xIDAgMzAtMyA0My4xLTEyLjEgNTIuOS02LjggNy4zLTE2LjQgMTAuMS0zMy4zIDEwLjEtMjAuNCAwLTI5LjItNS41LTMzLjgtMjEuMmwtLjggMCAwIDcwLjMtMzkuNSAwIDAtMTY5IC4xIDB6TTM1Ni43IDI1M2MwLTI3LjUtMy4zLTMyLjUtMjAuNy0zMi41LTE2LjkgMC0yMC43IDUtMjAuNyAyOC43IDAgMjggMy41IDMzLjUgMjEuMiAzMy41IDE2LjQgMCAyMC4yLTUuNiAyMC4yLTI5Ljd6bTUzLjgtMy44YzAtMjUuNCAzLjMtMzcuOCAxMi4zLTQ1LjggOC44LTguMSAyMi4yLTExLjMgNDUuMS0xMS4zIDQyLjggMCA1NS43IDEyLjggNTUuNyA1NS43bDAgMTEuMS03NS4zIDBjLS4zIDItLjMgNC0uMyA0LjggMCAxNi45IDQuNSAyMS45IDIwLjEgMjEuOSAxMy45IDAgMTcuOS0zIDE3LjktMTMuOWwzNy41IDAgMCAyLjNjMCA5LjgtMi41IDE4LjktNi44IDI0LjctNy4zIDkuOC0xOS42IDEzLjYtNDQuMyAxMy42LTI3LjUgMC00MS42LTMuMy01MC42LTEyLjMtOC41LTguNS0xMS4zLTIxLjMtMTEuMy01MC44em03Ni40LTExLjZjLS4zLTEuOC0uMy0zLjMtLjMtMy44IDAtMTIuMy0zLjMtMTQuNi0xOS42LTE0LjYtMTQuNCAwLTE3LjEgMy0xOC4xIDE1LjFsLS4zIDMuMyAzOC4zIDB6bTU1LjYtNDUuM2wzOC4zIDAtMS44IDE5LjkgLjcgMGM2LjgtMTQuOSAxNC40LTIwLjIgMjkuNy0yMC4yIDEwLjggMCAxOS4xIDMuMyAyMy40IDkuMyA1LjMgNy4zIDYuOCAxNC40IDYuOCAzNCAwIDEuNSAwIDUgLjIgOS4zbC0zNSAwYy4zLTEuOCAuMy0zLjMgLjMtNCAwLTE1LjQtMi0xOS40LTEwLjMtMTkuNC02LjMgMC0xMC44IDMuMy0xMy4xIDkuMy0xIDMtMSA0LjMtMSAxMi4zbDAgNjgtMzguMyAwIDAtMTE4LjUgLjEgMHoiXX0sSmVyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Imdvb2dsZS1zY2hvbGFyIixpY29uOls1MTIsNTEyLFtdLCJlNjNiIiwiTTM5MC45IDI5OC41czAgLjEgLjEgLjFjOS4yIDE5LjQgMTQuNCA0MS4xIDE0LjQgNjQtLjEgODIuNS02Ni45IDE0OS40LTE0OS40IDE0OS40UzEwNi43IDQ0NS4xIDEwNi43IDM2Mi43YzAtMjIuOSA1LjItNDQuNiAxNC40LTY0IDEuNy0zLjYgMy42LTcuMiA1LjYtMTAuNyA0LjQtNy42IDkuNC0xNC43IDE1LTIxLjMgMjcuNC0zMi42IDY4LjUtNTMuMyAxMTQuNC01My4zIDMzLjYgMCA2NC42IDExLjEgODkuNiAyOS45IDkuMSA2LjkgMTcuNCAxNC43IDI0LjggMjMuNSA1LjYgNi42IDEwLjYgMTMuOCAxNSAyMS4zIDIgMy40IDMuOCA3IDUuNSAxMC41bC0uMS0uMXptMjYuNC0xOC44Yy0zMC4xLTU4LjQtOTEtOTguNC0xNjEuMy05OC40cy0xMzEuMiA0MC0xNjEuMyA5OC40bC05NC43LTc3IDI1Ni0yMDIuNyAyNTYgMjAyLjctOTQuNyA3Ny4xIDAtLjF6Il19LGV0cj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJ5YXJuIixpY29uOls1MTIsNTEyLFtdLCJmN2UzIiwiTTQwMS45IDM0NS4yYy0zOSA5LjMtNDguNCAzMi4xLTEwNCA0Ny40IDAgMC0yLjcgNC0xMC40IDUuOC0xMy40IDMuMy02My45IDYtNjguNSA2LjEtMTIuNCAuMS0xOS45LTMuMi0yMi04LjItNi40LTE1LjMgOS4yLTIyIDkuMi0yMi04LjEtNS05LTkuOS05LjgtOC4xLTIuNCA1LjgtMy42IDIwLjEtMTAuMSAyNi41LTguOCA4LjktMjUuNSA1LjktMzUuMyAuOC0xMC44LTUuNyAuOC0xOS4yIC44LTE5LjJzLTUuOCAzLjQtMTAuNS0zLjZjLTYtOS4zLTE3LjEtMzcuMyAxMS41LTYyLTEuMy0xMC4xLTQuNi01My43IDQwLjYtODUuNiAwIDAtMjAuNi0yMi44LTEyLjktNDMuMyA1LTEzLjQgNy0xMy4zIDguNi0xMy45IDUuNy0yLjIgMTEuMy00LjYgMTUuNC05LjEgMjAuNi0yMi4yIDQ2LjgtMTggNDYuOC0xOHMxMi40LTM3LjggMjMuOS0zMC40YzMuNSAyLjMgMTYuMyAzMC42IDE2LjMgMzAuNnMxMy42LTcuOSAxNS4xLTVjOC4yIDE2IDkuMiA0Ni41IDUuNiA2NS4xLTYuMSAzMC42LTIxLjQgNDcuMS0yNy42IDU3LjUtMS40IDIuNCAxNi41IDEwIDI3LjggNDEuMyAxMC40IDI4LjYgMS4xIDUyLjcgMi44IDU1LjMgLjggMS40IDEzLjcgLjggMzYuNC0xMy4yIDEyLjgtNy45IDI4LjEtMTYuOSA0NS40LTE3IDE2LjctLjUgMTcuNiAxOS4yIDQuOSAyMi4yek04IDI1NmEyNDggMjQ4IDAgMSAxIDQ5NiAwIDI0OCAyNDggMCAxIDEgLTQ5NiAwem00MTYuNyA3NS4yYy0xLjctMTMuNi0xMy4yLTIzLTI4LTIyLjgtMjIgLjMtNDAuNSAxMS43LTUyLjggMTkuMi00LjggMy04LjkgNS4yLTEyLjQgNi44IDMuMS00NC41LTIyLjUtNzMuMS0yOC43LTc5LjQgNy44LTExLjMgMTguNC0yNy44IDIzLjQtNTMuMiA0LjMtMjEuNyAzLTU1LjUtNi45LTc0LjUtMS42LTMuMS03LjQtMTEuMi0yMS03LjQtOS43LTIwLTEzLTIyLjEtMTUuNi0yMy44LTEuMS0uNy0yMy42LTE2LjQtNDEuNCAyOC0xMi4yIC45LTMxLjMgNS4zLTQ3LjUgMjIuOC0yIDIuMi01LjkgMy44LTEwLjEgNS40bC4xIDBjLTguNCAzLTEyLjMgOS45LTE2LjkgMjIuMy02LjUgMTcuNCAuMiAzNC42IDYuOCA0NS43LTE3LjggMTUuOS0zNyAzOS44LTM1LjcgODIuNS0zNCAzNi0xMS44IDczLTUuNiA3OS42LTEuNiAxMS4xIDMuNyAxOS40IDEyIDIzLjggMTIuNiA2LjcgMzAuMyA5LjYgNDMuOSAyLjggNC45IDUuMiAxMy44IDEwLjEgMzAgMTAuMSA2LjggMCA1OC0yLjkgNzIuNi02LjUgNi44LTEuNiAxMS41LTQuNSAxNC42LTcuMSA5LjgtMy4xIDM2LjgtMTIuMyA2Mi4yLTI4LjcgMTgtMTEuNyAyNC4yLTE0LjIgMzcuNi0xNy40IDEyLjktMy4yIDIxLTE1LjEgMTkuNC0yOC4yeiJdfSx0dHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic3RhY2stb3ZlcmZsb3ciLGljb246WzM4NCw1MTIsW10sImYxNmMiLCJNMjkxIDMxMWwtMTk1LjctNDEuMy04LjIgMzkuMyAxOTUuNyA0MSA4LjItMzl6bTUxLTg3TDE4OC41IDk1LjcgMTYzIDEyNi41IDMxNi41IDI1NC44IDM0MiAyMjR6bS0zMS4yIDM5LjdMMTI5LjUgMTc5IDExMi44IDIxNS41IDI5NCAzMDAgMzEwLjggMjYzLjd6TTI2Mi4zIDMybC0zMiAyNCAxMTkuMyAxNjAuMyAzMi0yNC0xMTkuMy0xNjAuM3ptMjAuNSAzMjhsLTIwMCAwIDAgMzkuNyAyMDAgMCAwLTM5Ljd6bTM5LjcgODBsLTI3OS41IDAgMC0xMjAtNDAgMCAwIDE2MCAzNTkuNSAwIDAtMTYwLTQwIDAgMCAxMjB6Il19LHJ0cj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJibHVldG9vdGgiLGljb246WzM4NCw1MTIsW10sImYyOTMiLCJNMjYwLjYgMTcxLjFsLTQyLjkgNDIuOS0uMy04NiA0My4yIDQzLjF6TTIxNy40IDM5MC45bDQzLjEtNDMuMS00Mi45LTQyLjktLjIgODZ6TTM4NCAyNTkuNEMzODQgNDY1IDMxMi4xIDUxMiAxOTguOSA1MTJTMCA0NjUgMCAyNTkuNCA4My40IDAgMTk2LjYgMCAzODQgNTMuOSAzODQgMjU5LjR6bS0xNTguNSAwbDc5LjQtODguNi0xMjUuMS0xMzQuMyAwIDE3Ni45LTczLjgtNzMuOC0yNyAyNi45IDkyLjcgOTMtOTIuNyA5MyAyNi45IDI2LjkgNzMuOC03My44IDIuMyAxNzAgMTI3LjQtMTI3LjUtODMuOS04OC43eiJdfSxhdHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiY3JlYXRpdmUtY29tbW9ucy1uYy1qcCIsaWNvbjpbNTEyLDUxMixbXSwiZjRlYSIsIk0yNTUuNyA4QzExMS42IDggOCAxMjQuOCA4IDI1NiA4IDM5Mi40IDExOS44IDUwNCAyNTUuNyA1MDQgMzg1LjkgNTA0IDUwNCA0MDMuMiA1MDQgMjU2IDUwNCAxMTcuMiAzOTYuNSA4IDI1NS43IDh6bS42IDQ1MC43Yy0xMTIgMC0yMDMuNi05Mi41LTIwMy42LTIwMi43IDAtMjEuMSAzLTQxLjIgOS02MC4zbDEyNyA1Ni41LTI3LjkgMCAwIDM4LjYgNTguMSAwIDUuNyAxMS44IDAgMTguNy02My44IDAgMCAzOC43IDYzLjggMCAwIDU2IDYxLjcgMCAwLTU2IDY0LjIgMCAwLTM1LjcgODEgMzYuMWMtMS41IDIuMi01Ny4xIDk4LjMtMTc1LjIgOTguM3ptODcuNi0xMzcuM2wtNTcuNiAwIDAtMTguNyAyLjktNS42IDU0LjcgMjQuM3ptNi41LTUxLjRsMC0xNy44LTM4LjYgMCA2My0xMTYtNjUuOCAwLTQzLjQgOTYtMjMtMTAuMi0zOS42LTg1LjctNjUuOCAwIDI3LjMgNTEtODEuOS0zNi41YzI3LjgtNDQuMSA4Mi42LTk4LjEgMTczLjctOTguMSAxMTIuOCAwIDIwMyA5MCAyMDMgMjAzLjQgMCAyMS0yLjcgNDAuNi03LjkgNTlMMzUwLjQgMjcweiJdfSxpdHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToicmVkZGl0IixpY29uOls1MTIsNTEyLFtdLCJmMWExIiwiTTAgMjU2QzAgMTE0LjYgMTE0LjYgMCAyNTYgMFM1MTIgMTE0LjYgNTEyIDI1NiAzOTcuNCA1MTIgMjU2IDUxMkwzNy4xIDUxMmMtMTMuNyAwLTIwLjUtMTYuNS0xMC45LTI2LjJMNzUgNDM3QzI4LjcgMzkwLjcgMCAzMjYuNyAwIDI1NnpNMzQ5LjYgMTUzLjZjMjMuNiAwIDQyLjctMTkuMSA0Mi43LTQyLjdzLTE5LjEtNDIuNy00Mi43LTQyLjdjLTIwLjYgMC0zNy44IDE0LjYtNDEuOCAzNC0zNC41IDMuNy02MS40IDMzLTYxLjQgNjguNGwwIC4yYy0zNy41IDEuNi03MS44IDEyLjMtOTkgMjkuMS0xMC4xLTcuOC0yMi44LTEyLjUtMzYuNS0xMi41LTMzIDAtNTkuOCAyNi44LTU5LjggNTkuOCAwIDI0IDE0LjEgNDQuNiAzNC40IDU0LjEgMiA2OS40IDc3LjYgMTI1LjIgMTcwLjYgMTI1LjJzMTY4LjctNTUuOSAxNzAuNi0xMjUuM2MyMC4yLTkuNiAzNC4xLTMwLjIgMzQuMS01NCAwLTMzLTI2LjgtNTkuOC01OS44LTU5LjgtMTMuNyAwLTI2LjMgNC42LTM2LjQgMTIuNC0yNy40LTE3LTYyLjEtMjcuNy0xMDAtMjkuMWwwLS4yYzAtMjUuNCAxOC45LTQ2LjUgNDMuNC00OS45IDQuNCAxOC44IDIxLjMgMzIuOCA0MS41IDMyLjhsLjEgLjJ6TTE3Ny4xIDI0Ni45YzE2LjcgMCAyOS41IDE3LjYgMjguNSAzOS4zcy0xMy41IDI5LjYtMzAuMyAyOS42LTMxLjQtOC44LTMwLjQtMzAuNSAxNS40LTM4LjMgMzIuMS0zOC4zbC4xLS4xem0xOTAuMSAzOC4zYzEgMjEuNy0xMy43IDMwLjUtMzAuNCAzMC41cy0yOS4zLTcuOS0zMC4zLTI5LjYgMTEuOC0zOS4zIDI4LjUtMzkuMyAzMS4yIDE2LjYgMzIuMSAzOC4zbC4xIC4xem0tNDguMSA1Ni43Yy0xMC4zIDI0LjYtMzQuNiA0MS45LTYzIDQxLjlzLTUyLjctMTcuMy02My00MS45Yy0xLjItMi45IC44LTYuMiAzLjktNi41IDE4LjQtMS45IDM4LjMtMi45IDU5LjEtMi45czQwLjcgMSA1OS4xIDIuOWMzLjEgLjMgNS4xIDMuNiAzLjkgNi41eiJdfSxvdHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiY29ubmVjdGRldmVsb3AiLGljb246WzU3Niw1MTIsW10sImYyMGUiLCJNNTUwLjggMjQxbC01MC4xLTg2LjhjMS4xLTIuMSAxLjktNC42IDEuOS03LjIgMC04LTYuNy0xNC43LTE0LjctMTVMNDMyLjQgMzYuMWMuNS0xLjYgMS4xLTMuMiAxLjEtNC44IDAtOC42LTctMTUuMy0xNS4zLTE1LjMtNC44IDAtOC44IDIuMS0xMS44IDUuNmwtMTA2LjYgMGMtMi43LTMuNS02LjctNS42LTExLjUtNS42cy04LjggMi4xLTExLjUgNS42bC0xMDYuMSAwYy0yLjktMy41LTctNS42LTExLjgtNS42LTguMyAwLTE1LjMgNi43LTE1LjMgMTUuMyAwIDEuNiAuNSAzLjUgMS4xIDQuOGwtNTYgOTcuMmMtNS40IDIuNC05LjEgNy41LTkuMSAxMy43IDAgLjUgLjMgMS4xIC4zIDEuNkwyNi42IDI0MC43Yy03LjIgMS4zLTEyLjYgNy41LTEyLjYgMTUgMCA3LjIgNS4xIDEzLjQgMTIuMSAxNWw1NS4yIDk1LjRjLS41IDEuNi0uOCAyLjktLjggNC44IDAgNy4yIDUuMSAxMy40IDEyLjEgMTQuN2w1MS43IDg5LjdjLS41IDEuNi0xLjEgMy41LTEuMSA1LjQgMCA4LjYgNyAxNS4zIDE1LjMgMTUuMyA0LjggMCA4LjgtMi4xIDExLjUtNS40bDEwNi45IDBjMi43IDMuMiA3IDUuNCAxMS41IDUuNHM4LjgtMi4xIDExLjUtNS40bDEwNy4xIDBjMi43IDIuOSA2LjcgNC44IDExIDQuOCA4LjYgMCAxNS4zLTcgMTUuMy0xNS4zIDAtMS42LS4zLTIuOS0uOC00LjNsNTEuNy05MC4zYzctMS4zIDEyLjEtNy41IDEyLjEtMTQuNyAwLTEuNi0uMy0zLjItLjgtNC44bDU0LjktOTUuNGM3LTEuMyAxMi4zLTcuNSAxMi4zLTE1IDAtNy4yLTUuMS0xMy40LTExLjgtMTQuN3ptLTM5NyAyMDkuN2wtNDMuNy03NS44IDQzLjcgMCAwIDc1Ljh6bTAtODMuOGwtNDMuNyAwYy0uMy0xLjEtLjgtMi4xLTEuMy0zLjJsNDUtNDcuNCAwIDUwLjZ6bTAtNjIuNGwtNTAuNCA1My4zYy0xLjMtLjUtMi43LTEuMy00LTEuNkw0My43IDI1OS44Yy41LTEuMyAuNS0yLjcgLjUtNHMwLTIuNC0uMy0zLjVsNTItOTBjMi43LS4zIDUuNC0xLjEgNy44LTIuN2w1MC4xIDUyIDAgOTIuOXptMC0xMDIuM0wxMDggMTU0LjhjMS4zLTIuMSAyLjEtNC44IDIuMS03LjggMC0uMy0uMy0uOC0uMy0xLjFsNDMuOS0xNS44IDAgNzIuMXptMC04MC42bC00My43IDE1LjggNDMuNy03NS41IDAgNTkuN3ptMzI2LjUgMzkuMWwuOCAxLjMtMzUuNCAxNjcuMS02My44LTY3LjIgOTgtMTAxLjUgLjMgLjN6TTI5Mi4xIDM1NS4xbDExLjUgMTEuOC0yMi44IDAgMTEuMy0xMS44em0tLjMtMTEuM2wtODMuMy04NS40IDc5LjYtODQuNCA4MyA4Ny42LTc5LjMgODIuMnptNS40IDUuOWw3OS4zLTgyLjIgNjcuNSA3MS4zLTUuOSAyOC4xLTEyNCAwLTE2LjktMTcuMXpNNDEwLjcgNDQuNGMxLjEgLjUgMi4xIDEuMSAzLjUgMS4zbDU3LjkgMTAwLjcgMCAuNWMwIDIuOSAuOCA1LjYgMi4xIDcuOGwtOTcuNSAxMDEuMi04My04Ny42IDExNy4xLTEyNHptLTkuMS0yLjFsLTExMy42IDEyMC4zLTU3LjEtNjAuMyAxNjYuMy02MCA0LjMgMHptLTEyMy41IDBjMi43IDIuNyA2LjIgNC4zIDEwLjIgNC4zczcuNS0xLjYgMTAuMi00LjNsNzUgMC0xNDguNCA1My42LTUwLjktNTMuNiAxMDMuOSAwek0xNjEuOSA0Ny45bDEuMS0yLjFjLjktLjIgMS44LS41IDIuNy0uOGw1MS4yIDUzLjgtNTQuOSAxOS44IDAtNzAuN3ptMCA3OS4zbDYwLjgtMjIgNTkuNyA2My4yLTc5LjYgODQuMS00MS00Mi4xIDAtODMuM3ptMCA5Mi43bDM2LjQgMzcuOC0zNi40IDM4LjMgMC03Ni4xem0wIDg3LjlsNDIuMS00NC41IDgyLjggODYtMTcuMSAxNy43LTEwNy43IDAgMC01OS4yem03IDE2Mi4xYy0xLjYtMS42LTMuNS0yLjctNS45LTMuNWwtMS4xLTEuNiAwLTg5LjcgOTkuOSAwLTkxLjYgOTQuOC0xLjMgMHptMTI5LjkgMGMtMi43LTIuNC02LjQtNC4zLTEwLjQtNC4zcy03LjggMS45LTEwLjQgNC4zbC05Ni40IDAgOTEuNi05NC44IDM4LjMgMCA5MS42IDk0LjgtMTA0LjIgMHptMTIwLTExLjhsLTQuMyA3LjVjLTEuMyAuMy0yLjQgLjgtMy41IDEuM2wtODkuMi05MS45IDExNC40IDAtMTcuNCA4M3ptMTIuOS0yMi4ybDEyLjktNjAuOCAyMiAwLTM0LjggNjAuOHptMzQuOC02OC44bC0yMC40IDAgNC42LTIxLjIgMTcuMSAxOC4yYy0uNSAuOC0xLjEgMS45LTEuMyAyLjl6bTY2LjItMTA3LjRsLTU1LjQgOTYuN2MtMS4zIC41LTIuNyAxLjEtNCAxLjlsLTIwLjYtMjIgMzQuNi0xNjMuOSA0NS44IDc5LjNjLS4zIDEuMy0uOCAyLjctLjggNC4zIDAgMS4zIC4zIDIuNCAuNSAzLjd6Il19LG50cj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJyZXNlYXJjaGdhdGUiLGljb246WzQ0OCw1MTIsW10sImY0ZjgiLCJNMCAzMmwwIDQ0OCA0NDggMCAwLTQ0OC00NDggMHpNMjYyLjIgMzY2LjRjLTYuNiAzLTMzLjIgNi01MC0xNC4yLTkuMi0xMC42LTI1LjMtMzMuMy00Mi4yLTYzLjYtOC45IDAtMTQuNyAwLTIxLjQtLjZsMCA0Ni40YzAgMjMuNSA2IDIxLjIgMjUuOCAyMy45bDAgOC4xYy02LjktLjMtMjMuMS0uOC0zNS42LS44LTEzLjEgMC0yNi4xIC42LTMzLjYgLjhsMC04LjFjMTUuNS0yLjkgMjItMS4zIDIyLTIzLjlsMC0xMDkuNGMwLTIyLjYtNi40LTIxLTIyLTIzLjlsMC04LjFjMjUuOCAxIDUzLjEtLjYgNzAuOS0uNiAzMS43IDAgNTUuOSAxNC40IDU1LjkgNDUuNiAwIDIxLjEtMTYuNyA0Mi4yLTM5LjIgNDcuNSAxMy42IDI0LjIgMzAgNDUuNiA0Mi4yIDU4LjkgNy4yIDcuOCAxNy4yIDE0LjcgMjcuMiAxNC43bDAgNy4zem0yMi45LTEzNWMtMjMuMyAwLTMyLjItMTUuNy0zMi4yLTMyLjJsMC0zMi4yYzAtMTIuMiA4LjgtMzAuNCAzNC0zMC40czMwLjQgMTcuOSAzMC40IDE3LjlsLTEwLjcgNy4ycy01LjUtMTIuNS0xOS43LTEyLjVjLTcuOSAwLTE5LjcgNy4zLTE5LjcgMTkuN2wwIDI2LjhjMCAxMy40IDYuNiAyMy4zIDE3LjkgMjMuMyAxNC4xIDAgMjEuNS0xMC45IDIxLjUtMjYuOGwtMTcuOSAwIDAtMTAuNyAzMC40IDBjMCAyMC41IDQuNyA0OS45LTM0IDQ5Ljl6TTE2OC42IDI3Ni4xYy05LjQgMC0xMy42LS4zLTIwLS44bDAtNjkuN2M2LjQtLjYgMTUtLjYgMjIuNS0uNiAyMy4zIDAgMzcuMiAxMi4yIDM3LjIgMzQuNSAwIDIxLjktMTUgMzYuNi0zOS43IDM2LjZ6Il19LHN0cj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJzaWduYWwtbWVzc2VuZ2VyIixpY29uOls1MTIsNTEyLFtdLCJlNjYzIiwiTTI1NiAwYy0xMy4zIDAtMjYuMyAxLTM5LjEgM2wzLjcgMjMuN0MyMzIuMSAyNC45IDI0NCAyNCAyNTYgMjRzMjMuOSAuOSAzNS40IDIuN0wyOTUuMSAzQzI4Mi4zIDEgMjY5LjMgMCAyNTYgMHptNjAuOCA3LjNsLTUuNyAyMy4zYzIzLjQgNS43IDQ1LjQgMTQuOSA2NS40IDI3LjFsMTIuNS0yMC41Yy0yMi4xLTEzLjQtNDYuNC0yMy42LTcyLjItMjkuOXptNzYuNCA2MS42YzE5LjEgMTQgMzYgMzAuOSA1MC4xIDUwLjFsMTkuNC0xNC4yQzQ0NyA4My42IDQyOC40IDY1IDQwNy4zIDQ5LjVMMzkzLjEgNjguOHptODEuNyA1NC4ybC0yMC41IDEyLjVjMTIuMiAyMCAyMS40IDQyIDI3LjEgNjUuNGwyMy4zLTUuN2MtNi4zLTI1LjgtMTYuNS01MC4xLTI5LjktNzIuMnptMTAuNSA5Ny41YzEuOCAxMS41IDIuNyAyMy40IDIuNyAzNS40cy0uOSAyMy45LTIuNyAzNS40bDIzLjcgMy43YzEuOS0xMi43IDMtMjUuOCAzLTM5LjFzLTEtMjYuMy0zLTM5LjFsLTIzLjcgMy43em0tMzEgMTU1LjlsMjAuNSAxMi41YzEzLjQtMjIuMSAyMy42LTQ2LjQgMjkuOS03Mi4ybC0yMy4zLTUuN2MtNS43IDIzLjQtMTQuOSA0NS40LTI3LjEgNjUuNHptOC4yIDMwLjhsLTE5LjQtMTQuMmMtMTQgMTkuMS0zMC45IDM2LTUwLjEgNTAuMWwxNC4yIDE5LjRjMjEuMS0xNS41IDM5LjgtMzQuMSA1NS4yLTU1LjJ6bS04Ni4xIDQ3Yy0yMCAxMi4yLTQyIDIxLjQtNjUuNCAyNy4xbDUuNyAyMy4zYzI1LjgtNi4zIDUwLjEtMTYuNSA3Mi4yLTI5LjlsLTEyLjUtMjAuNXpNMjk1LjEgNTA5bC0zLjctMjMuN0MyNzkuOSA0ODcuMSAyNjggNDg4IDI1NiA0ODhzLTIzLjktLjktMzUuNC0yLjdMMjE2LjkgNTA5YzEyLjcgMS45IDI1LjggMyAzOS4xIDNzMjYuMy0xIDM5LjEtM3ptLTk0LjEtMjcuNmMtMTcuNi00LjMtMzQuNC0xMC42LTUwLjEtMTguNmwtNy44LTQtMzIuOCA3LjcgNS41IDIzLjQgMjQuMy01LjdjMTcuNCA4LjkgMzUuOSAxNS44IDU1LjMgMjAuNWw1LjctMjMuM3pNOTUuNCA0OTQuNkw5MCA0NzEuMyA0OC4zIDQ4MWMtMTAuNCAyLjQtMTkuNy02LjktMTcuMy0xNy4zbDkuNy00MS42LTIzLjQtNS41LTkuNyA0MS42QzEuMiA0ODYgMjYgNTEwLjggNTMuOCA1MDQuNGw0MS42LTkuN3ptLTUwLTkyLjlsNy43LTMyLjgtNC03LjhjLTgtMTUuNy0xNC4zLTMyLjUtMTguNi01MC4xTDcuMyAzMTYuN0MxMiAzMzYuMSAxOC45IDM1NC43IDI3LjcgMzcybC01LjcgMjQuMyAyMy40IDUuNXpNMyAyOTUuMWwyMy43LTMuN0MyNC45IDI3OS45IDI0IDI2OCAyNCAyNTZzLjktMjMuOSAyLjctMzUuNEwzIDIxNi45QzEgMjI5LjcgMCAyNDIuNyAwIDI1NnMxIDI2LjMgMyAzOS4xem0yNy42LTk0LjFjNS43LTIzLjQgMTQuOS00NS40IDI3LjEtNjUuNEwzNy4yIDEyMy4xYy0xMy40IDIyLjEtMjMuNiA0Ni40LTI5LjkgNzIuMmwyMy4zIDUuN3ptMTguOS05Ni4ybDE5LjQgMTQuMmMxNC0xOS4xIDMwLjktMzYgNTAuMS01MC4xTDEwNC43IDQ5LjVDODMuNiA2NSA2NSA4My42IDQ5LjUgMTA0Ljd6bTg2LjEtNDdjMjAtMTIuMiA0Mi0yMS40IDY1LjQtMjcuMUwxOTUuMiA3LjNjLTI1LjggNi4zLTUwLjEgMTYuNS03Mi4yIDI5LjlsMTIuNSAyMC41ek0yNTYgNDY0YzExNC45IDAgMjA4LTkzLjEgMjA4LTIwOFMzNzAuOSA0OCAyNTYgNDggNDggMTQxLjEgNDggMjU2YzAgMzYuNCA5LjQgNzAuNyAyNS44IDEwMC41IDEuNiAyLjkgMi4xIDYuMiAxLjQgOS40bC0yMS42IDkyLjUgOTIuNS0yMS42YzMuMi0uNyA2LjUtLjIgOS40IDEuNCAyOS44IDE2LjUgNjQgMjUuOCAxMDAuNSAyNS44eiJdfSxsdHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToieGluZyIsaWNvbjpbMzg0LDUxMixbXSwiZjE2OCIsIk0xNjIuNyAyMTBjLTEuOCAzLjMtMjUuMiA0NC40LTcwLjEgMTIzLjUtNC45IDguMy0xMC44IDEyLjUtMTcuNyAxMi41TDkuOCAzNDZjLTcuNyAwLTEyLjEtNy41LTguNS0xNC40bDY5LTEyMS4zYy4yIDAgLjItLjEgMC0uM0wyNi40IDEzNC40Yy00LjMtNy44IC4zLTE0LjEgOC41LTE0LjFsNjUuMSAwYzcuMyAwIDEzLjMgNC4xIDE4IDEyLjJMMTYyLjcgMjEwek0zODIuNiA0Ni4xbC0xNDQgMjUzIDAgLjMgOTEuNiAxNjYuNmMzLjkgNy4xIC4yIDE0LjEtOC41IDE0LjFsLTY1LjIgMGMtNy42IDAtMTMuNi00LTE4LTEyLjJMMTQ2LjEgMjk5LjRjMy4zLTUuOCA1MS41LTkwLjggMTQ0LjgtMjU1LjIgNC42LTguMSAxMC40LTEyLjIgMTcuNS0xMi4ybDY1LjcgMGM4IDAgMTIuMyA2LjcgOC41IDE0LjF6Il19LE9rZT17cHJlZml4OiJmYWIiLGljb25OYW1lOiJzcXVhcmUtanMiLGljb246WzQ0OCw1MTIsWyJqcy1zcXVhcmUiXSwiZjNiOSIsIk00NDggOTZjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzJDMjguNyAzMiAwIDYwLjcgMCA5NkwwIDQxNmMwIDM1LjMgMjguNyA2NCA2NCA2NGwzMjAgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTMyMHpNMTgwLjkgNDQ0LjljLTMzLjcgMC01My4yLTE3LjQtNjMuMi0zOC41TDE1MiAzODUuN2M2LjYgMTEuNyAxMi42IDIxLjYgMjcuMSAyMS42IDEzLjggMCAyMi42LTUuNCAyMi42LTI2LjVsMC0xNDMuMSA0Mi4xIDAgMCAxNDMuN2MwIDQzLjYtMjUuNiA2My41LTYyLjkgNjMuNXptODUuOC00M0wzMDEgMzgyLjFjOSAxNC43IDIwLjggMjUuNiA0MS41IDI1LjYgMTcuNCAwIDI4LjYtOC43IDI4LjYtMjAuOCAwLTE0LjQtMTEuNC0xOS41LTMwLjctMjhsLTEwLjUtNC41Yy0zMC40LTEyLjktNTAuNS0yOS4yLTUwLjUtNjMuNSAwLTMxLjYgMjQuMS01NS42IDYxLjYtNTUuNiAyNi44IDAgNDYgOS4zIDU5LjggMzMuN0wzNjggMjkwYy03LjItMTIuOS0xNS0xOC0yNy4xLTE4LTEyLjMgMC0yMC4xIDcuOC0yMC4xIDE4IDAgMTIuNiA3LjggMTcuNyAyNS45IDI1LjZsMTAuNSA0LjVjMzUuOCAxNS4zIDU1LjkgMzEgNTUuOSA2Ni4yIDAgMzcuOC0yOS44IDU4LjYtNjkuNyA1OC42LTM5LjEgMC02NC40LTE4LjYtNzYuNy00M3oiXX0sY3RyPU9rZSxkdHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZm9udGljb25zIixpY29uOls0NDgsNTEyLFtdLCJmMjgwIiwiTTAgMzJsMCA0NDggNDQ4IDAgMC00NDgtNDQ4IDB6TTE4NyAxNzIuOWMtMTguNCAwLTE5IDkuOS0xOSAyNy40bDAgMjMuM2MwIDIuNC0zLjUgNC40LS42IDQuNGw2Ny40IDAtMTEuMSAzNy4zLTU1LjcgMCAwIDExMi45YzAgNS44LTIgNi43IDMuMiA3LjNsNDMuNSA0LjEgMCAyNS4xLTEzMC43IDAgMC0yNS43IDIxLjMtMmM1LjItLjYgNi43LTIuMyA2LjctNy45bDAtMTExLjRjMC0yLjMtMi45LTIuMy01LjgtMi4zbC0yMi4yIDAgMC0zNy40IDI4IDAgMC0yMWMwLTQ5LjYgMjYuNS03MCA3Ny4zLTcwIDM0LjEgMCA2NC43IDguMiA2NC43IDUyLjhsLTUwLjcgNi4xYy4zLTE4LjctNC40LTIzLTE2LjMtMjN6bTc0LjMgMjQxLjhsMC0yNS4xIDIwLjQtMi42YzUuMi0uNiA3LjYtMS43IDcuNi03LjNsMC0xMDcuOWMwLTQuMS0yLjktNi43LTYuNy03LjlsLTI0LjItNi40IDYuNy0yOS41IDgwLjIgMCAwIDE1MS43YzAgNS44LTIuNiA2LjQgMi45IDcuM2wxNS43IDIuNiAwIDI1LjEtMTAyLjYgMHptODAuOC0yNTUuNWw5IDMzLjItNy4zIDcuMy0zMS4yLTE2LjYtMzEuMiAxNi42LTcuMy03LjMgOS0zMy4yLTIxLjgtMjQuMiAzLjUtOS42IDI3LjcgMCAxNS41LTI4IDkuMyAwIDE1LjUgMjggMjcuNyAwIDMuNSA5LjYtMjEuOSAyNC4yeiJdfSx1dHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidXBzIixpY29uOlszODQsNTEyLFtdLCJmN2UwIiwiTTEwMy4yIDMwM2MtNS4yIDMuNi0zMi42IDEzLjEtMzIuNi0xOWwwLTEwNC0zMi43IDAgMCAxMDIuNmMwIDc0LjkgODAuMiA1MS4xIDk3LjkgMzlsMC0xNDEuNi0zMi42IDAgMCAxMjN6TTQgNzQuOEw0IDI5NS43YzAgMTAzLjcgNzQuOSAxMzUuMiAxODcuNyAxODQuMSAxMTIuNC00OC45IDE4Ny43LTgwLjIgMTg3LjctMTg0LjFsMC0yMjAuOUMyNjMuMSAxMy4yIDk3LjYgMjUuMiA0IDc0Ljh6TTM2Mi4xIDI5NS43YzAgODYuNi01My4yIDExMy42LTE3MC40IDE2NS4zLTExNy41LTUxLjgtMTcwLjUtNzguNy0xNzAuNS0xNjUuM2wwLTEyNi40YzEwMi4zLTkzLjggMjMxLjYtMTAwIDM0MC45LTg5LjhsMCAyMTYuMnpNMTUyLjUgMTg4LjNsMCAyMTIuOCAzMi43IDAgMC02OC43YzI0LjQgNy4zIDcxLjctMi42IDcxLjctNzguNSAwLTk3LjQtODAuNy04MC45LTEwNC40LTY1LjZ6bTMyLjcgMTE3LjNsMC0xMDAuM2M4LjQtNC4yIDM4LjQtMTIuNyAzOC40IDQ5LjMgMCA2Ny45LTM2LjQgNTEuOC0zOC40IDUxem03OS4xLTg2LjRjLjEgNDcuMyA1MS42IDQyLjUgNTIuMiA3MC40IC42IDIzLjUtMzAuNCAyMy01MC44IDQuOWwwIDMwLjFjMzYuMiAyMS41IDgxLjkgOC4xIDgzLjItMzMuNSAxLjctNTEuNS01NC4xLTQ2LjYtNTMuNC03My4yIC42LTIwLjMgMzAuNi0yMC41IDQ4LjUtMi4ybDAtMjguNGMtMjguNS0yMi03OS45LTkuMi03OS43IDMxLjl6Il19LGZ0cj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJhbWF6b24tcGF5IixpY29uOls2NDAsNTEyLFtdLCJmNDJjIiwiTTE0IDMyNS4zYzIuMy00LjIgNS4yLTQuOSA5LjctMi41IDEwLjQgNS42IDIwLjYgMTEuNCAzMS4yIDE2LjcgNDAuNiAyMC4yIDgzLjMgMzUuOCAxMjcuNCA0Ni4zIDIwLjggNSA0MS45IDkgNjMuMiAxMS44IDMxLjUgNC4yIDYzLjIgNiA5NSA1LjIgMTcuNC0uNCAzNC44LTEuOCA1Mi4xLTMuOCA1Ni4yLTYuNiAxMTEuMS0yMSAxNjMuMy00Mi44IDIuOS0xLjIgNS45LTIgOS4xLTEuMiA2LjcgMS44IDkgOSA0LjEgMTMuOS0zIDIuNy02LjIgNS4yLTkuNiA3LjQtMzAuNyAyMS4xLTY0LjIgMzYuNC05OS42IDQ3LjktMjQuNSA3LjktNDkuNiAxMy44LTc1LjEgMTcuNi0xNy42IDIuNy0zNS40IDQuMy01My4yIDQuOC0uOCAwLTEuNyAuMi0yLjUgLjNsLTIxLjEgMGMtLjgtLjEtMS43LS4yLTIuNS0uMy0zLjYtLjItNy4yLS4zLTEwLjctLjQtMTYuOS0uOC0zMy43LTIuNS01MC40LTUuMy0yNy40LTQuNS01NC4zLTExLjUtODAuNC0yMC45LTUzLjctMTkuNC0xMDMuMS00OC45LTE0NS42LTg3LTEuOC0xLjYtMy0zLjgtNC40LTUuN2wwLTJ6TTE3MiA2NS4xbC00LjMgLjZjLTEzLjggMS43LTI2LjggNi45LTM4IDE1LjEtMi40IDEuNy00LjYgMy41LTcuMSA1LjQtLjItLjQtLjMtLjktLjQtMS40LS40LTIuNy0uOC01LjUtMS4zLTguMi0uNy00LjYtMy02LjYtNy42LTYuNmwtMTEuNSAwYy02LjkgMC04LjIgMS4zLTguMiA4LjJsMCAyMDkuM2MwIDEgMCAyIC4xIDMgLjIgMyAyIDQuOSA0LjkgNSA3IC4xIDE0LjEgLjEgMjEuMSAwIDIuOSAwIDQuNy0yIDUtNSAuMS0xIC4xLTIgLjEtM2wwLTcyLjRjMS4xIC45IDEuNyAxLjQgMi4yIDEuOSAxNy45IDE0LjkgMzguNSAxOS44IDYxIDE1LjQgMjAuNC00IDM0LjYtMTYuNSA0My44LTM0LjkgNy0xMy45IDkuOS0yOC43IDEwLjMtNDQuMSAuNS0xNy4xLTEuMi0zMy45LTguMS00OS44LTguNS0xOS42LTIyLjYtMzIuNS00My45LTM2LjktMy4yLS43LTYuNS0xLTkuOC0xLjUtMi44LS4xLTUuNS0uMS04LjMtLjF6TTEyNC42IDEwN2MtLjEtLjcgLjEtMS4zIC40LTEuOXMuOC0xLjEgMS4zLTEuNGMxMy43LTkuNSAyOC44LTE0LjUgNDUuNi0xMy4yIDE0LjkgMS4xIDI3LjEgOC40IDMzLjUgMjUuOSAzLjkgMTAuNyA0LjkgMjEuOCA0LjkgMzMgMCAxMC40LS44IDIwLjYtNCAzMC42LTYuOCAyMS4zLTIyLjQgMjkuNC00Mi42IDI4LjUtMTQtLjYtMjYuMi02LTM3LjQtMTMuOS0uNi0uMy0xLS44LTEuMy0xLjRzLS40LTEuMi0uNC0xLjljLjEtMTQuMSAwLTI4LjEgMC00Mi4ycy4xLTI4IDAtNDIuMXpNMzMwLjMgNjUuMWMtMSAuMS0yIC4zLTIuOSAuNC05LjcgLjQtMTkuNCAxLjgtMjguOSA0LjEtNi4xIDEuNi0xMiAzLjgtMTcuOSA1LjgtMy42IDEuMi01LjQgMy44LTUuMyA3LjcgLjEgMy4zLS4xIDYuNiAwIDkuOSAuMSA0LjggMi4xIDYuMSA2LjggNC45IDcuOC0yIDE1LjYtNC4yIDIzLjUtNS43IDEyLjMtMi4zIDI0LjctMy4zIDM3LjItMS40IDYuNSAxIDEyLjYgMi45IDE2LjggOC40IDMuNyA0LjggNS4xIDEwLjUgNS4zIDE2LjQgLjMgOC4zIC4yIDE2LjYgLjMgMjQuOSAwIC41LS4xIC45LS4yIDEuNC0uNS0uMS0uOSAwLTEuMy0uMS0xMC41LTIuNi0yMS4yLTQuMi0zMi00LjktMTEuMy0uNi0yMi41IC4xLTMzLjMgMy45LTEyLjkgNC41LTIzLjMgMTIuMy0yOS40IDI0LjktNC43IDkuOC01LjQgMjAuMi0zLjkgMzAuNyAyIDE0IDkgMjQuOCAyMS40IDMxLjcgMTEuOSA2LjYgMjQuOCA3LjQgMzcuOSA1LjQgMTUuMS0yLjMgMjguNS04LjcgNDAuMy0xOC40IC41LS40IDEtLjggMS42LTEuMSAuNiAzLjggMS4xIDcuNCAxLjggMTEgLjYgMy4xIDIuNSA1LjEgNS40IDUuMiA1LjQgLjEgMTAuOSAuMSAxNi4zIDAgMS4zIDAgMi41LS41IDMuNC0xLjRzMS40LTIuMSAxLjUtMy4zYy4xLS45IC4xLTEuOSAuMS0yLjhsMC0xMDZjMC00LjMtLjMtOC42LS45LTEyLjktMS45LTEyLjktNy40LTIzLjUtMTktMzAuNC02LjctNC0xNC4xLTYtMjEuOC03LjEtMy42LS41LTcuMi0uOC0xMC44LTEuMy0zLjkgLjEtNy45IC4xLTExLjkgLjF6bTM1IDEyNy43YzAgLjYtLjEgMS4yLS4zIDEuN3MtLjcgMS0xLjIgMS4zYy0xMS4yIDguMS0yMy41IDEzLjUtMzcuNCAxNC45LTUuNyAuNi0xMS40IC40LTE2LjgtMS44LTMtMS4xLTUuNi0yLjktNy44LTUuMnMtMy43LTUuMS00LjYtOC4xYy0yLTYuMy0yLTEzLjEtLjEtMTkuNCAyLjUtOC4zIDguNC0xMyAxNi40LTE1LjYgOC0yLjQgMTYuNS0zLjIgMjQuOC0yLjIgOC40IC43IDE2LjYgMi4zIDI1IDMuNCAxLjYgLjIgMi4xIDEgMi4xIDIuNi0uMSA0LjggMCA5LjUgMCAxNC4zcy0uMiA5LjQtLjEgMTQuMXpNNjI1LjIgMzIyLjJjLTEtNS00LjgtNi45LTkuMS04LjMtNi44LTIuMS0xMy45LTMuNS0yMS0zLjktMTMuMS0xLjEtMjYuMy0uNS0zOS4yIDEuOS0xNC4zIDIuNy0yNy45IDcuMy00MCAxNS42LTEuNCAuOS0yLjcgMi4xLTMuNyAzLjUtLjQgLjYtLjYgMS4zLS43IDEuOXMwIDEuNCAuMiAyLjFjLjQgMS41IDIuMSAxLjkgMy42IDEuOCAuNyAwIDEuNSAwIDIuMi0uMSA3LjgtLjggMTUuNS0xLjcgMjMuMy0yLjUgMTEuNC0xLjEgMjIuOS0xLjggMzQuMy0uOSA0LjkgLjQgOS43IDEuMyAxNC40IDIuNyA1LjEgMS40IDcuNCA1LjIgNy42IDEwLjQgLjQgOC0xLjQgMTUuNy0zLjUgMjMuMy00LjEgMTUuNC0xMCAzMC4zLTE1LjggNDUuMS0uNCAxLS44IDItMSAzLS41IDIuOSAxLjIgNC44IDQuMSA0LjEgMS44LS40IDMuNC0xLjMgNC44LTIuNSA0LjUtNC4yIDguOC04LjcgMTIuNy0xMy40IDEyLjgtMTYuNCAyMC4zLTM1LjMgMjQuNy01NS42IC44LTMuNiAxLjQtNy4zIDIuMS0xMC45bDAtMTcuM3pNNDkzLjEgMTk5Yy0xMi45LTM1LjctMjUuOC03MS40LTM4LjctMTA3LjItMi01LjctNC4yLTExLjMtNi4zLTE2LjktMS4xLTIuOS0zLjItNC44LTYuNC00LjgtNy42LS4xLTE1LjItLjItMjIuOS0uMS0yLjUgMC0zLjcgMi0zLjIgNC41IC41IDIuMSAxLjEgNC4xIDEuOSA2LjEgMTkuNiA0OC41IDM5LjMgOTcgNTkuMSAxNDUuNSAxLjcgNC4xIDIuMSA3LjYgLjIgMTEuOC0zLjMgNy4zLTUuOSAxNS05LjMgMjIuMy0zIDYuNS04IDExLjQtMTUuMiAxMy4zLTUgMS4zLTEwLjIgMS43LTE1LjQgMS4xLTIuNS0uMi01LS44LTcuNS0xLTMuNC0uMi01LjEgMS4zLTUuMiA0LjgtLjEgMy4zLS4xIDYuNiAwIDkuOSAuMSA1LjUgMiA4IDcuNCA4LjkgNS42IDEuMSAxMS4yIDEuOCAxNi45IDIgMTcuMSAuNCAzMC43LTYuNSAzOS41LTIxLjQgMy41LTUuOSA2LjYtMTIgOS4yLTE4LjQgMjMuNy01OS44IDQ3LjItMTE5LjcgNzAuNi0xNzkuNiAuNy0xLjggMS4zLTMuNiAxLjYtNS41IC40LTIuOC0uOS00LjQtMy43LTQuNC02LjYtLjEtMTMuMyAwLTE5LjkgMC0xLjctLjEtMy40IC4zLTQuNyAxLjNzLTIuNCAyLjMtMyAzLjljLS41IDEuNC0xLjEgMi43LTEuNiA0LjFsLTM0LjggMTAwYy0yLjUgNy4yLTUuMSAxNC41LTcuNyAyMi4yLS40LTEuMS0uNi0xLjctLjktMi40eiJdfSxwdHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToicGFuZG9yYSIsaWNvbjpbMzg0LDUxMixbXSwiZTdkYSIsIk0yMDEuMyAzMkwwIDMyIDAgNDgwIDEyMC4yIDQ4MGMxMS4yIDAgMjAuMy05LjEgMjAuMy0yMC4zbDAtODYuMSAzMC4xIDBjMTQ3LjEgMCAyMDcuMy04Mi45IDIwNy4zLTE3OS45IDAtMTE5LjctOTAuOS0xNjEuOC0xNzYuNS0xNjEuOHoiXX0saHRyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Im9wZW5pZCIsaWNvbjpbNDQ4LDUxMixbXSwiZjE5YiIsIk0yNzEuNSA0MzJsLTY4IDMyQzg4LjUgNDUzLjcgMCAzOTIuNSAwIDMxOC4yIDAgMjQ2LjcgODIuNSAxODcuMiAxOTEuNyAxNzMuOWwwIDQzYy03MS41IDEyLjUtMTI0IDUzLTEyNCAxMDEuMyAwIDUxIDU4LjUgOTMuMyAxMzUuNyAxMDNsMC0zNDAgNjgtMzMuMiAwIDM4NCAuMSAwek00NDggMjkxbC0xMzEuMy0yOC41IDM2LjgtMjAuN2MtMTkuNS0xMS41LTQzLjUtMjAtNzAtMjQuOGwwLTQzYzQ2LjIgNS41IDg3LjcgMTkuNSAxMjAuMyAzOS4zbDM1LTE5LjggOS4yIDk3LjV6Il19LG10cj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJ2c2NvIixpY29uOls1MTIsNTEyLFtdLCJlN2RkIiwiTTM1Ny42IDI1NmMwLTI3LjEtMTAuNi01Mi41LTI5LjctNzEuN3MtNDQuNi0yOS43LTcxLjctMjkuN2wtLjEgMGMtMjcuMSAwLTUyLjYgMTAuNi03MS43IDI5LjdzLTI5LjcgNDQuNi0yOS43IDcxLjdjMCAyNy4xIDEwLjYgNTIuNSAyOS43IDcxLjcgMTkuMiAxOS4yIDQ0LjYgMjkuNyA3MS43IDI5LjdsLjEgMGMyNy4xIDAgNTIuNi0xMC42IDcxLjctMjkuNyAxOS4yLTE5LjIgMjkuNy00NC42IDI5LjctNzEuN3pNMTc2LjMgNDgyLjFjMjMgOC4xIDQ3IDEyLjYgNzEuNiAxMy40bDAtNTkuMWMtMTcuMS0uNy0zMy41LTMuOC00OS04LjlsLTIyLjYgNTQuNnptMTM3LTU0LjZjLTE1LjUgNS4xLTMyIDguMi00OSA4LjlsMCA1OS4xYzI0LjYtLjggNDguNi01LjMgNzEuNi0xMy40bC0yMi42LTU0LjZ6TTkyLjUgNDMxLjJjMjAuMiAxOC45IDQzLjMgMzQgNjguNyA0NWwyMi41LTU0LjVjLTE4LjMtNy45LTM1LjEtMTguOC00OS44LTMxLjlMOTIuNSA0MzEuMnptMjg1LjktNDEuNGMtMTQuNiAxMy4yLTMxLjQgMjQtNDkuOCAzMS45bDIyLjUgNTQuNWMyNS40LTExIDQ4LjQtMjYuMSA2OC43LTQ1bC00MS40LTQxLjR6TTE0NS40IDM3OC4yYzEzLjYgMTIuMSAyOSAyMS45IDQ1LjggMjkgMTggNy42IDM3LjEgMTIgNTYuNyAxMi45bDAtNDYuOGMtMjYuNC0xLjgtNTAuMy0xMi4zLTY5LjEtMjguNmwtMzMuNCAzMy40em0xODgtMzMuNGMtMTguOCAxNi4zLTQyLjcgMjYuOC02OS4xIDI4LjZsMCA0Ni44YzE5LjYtLjkgMzguNy01LjMgNTYuNy0xMi45IDE2LjgtNy4xIDMyLjItMTYuOSA0NS44LTI5bC0zMy40LTMzLjR6TTM4LjUgMzU2LjZjMTAuNyAyMy4yIDI1IDQ0LjMgNDIuNSA2My4xbDQxLjMtNDEuM2MtMTIuNC0xMy40LTIyLjktMjguNi0zMC45LTQ1LjJMMzguNSAzNTYuNnptMzgyLjQtMjMuNWMtOCAxNi42LTE4LjUgMzEuOS0zMC45IDQ1LjJsNDEuMyA0MS4zYzE3LjUtMTguNyAzMS44LTM5LjkgNDIuNS02My4xbC01Mi45LTIzLjV6bS0zMzEtNjljMS4xIDE4LjggNS40IDM3LjIgMTIuOCA1NC41IDcuNSAxNy44IDE4IDM0IDMxLjIgNDguMmwzMy41LTMzLjVjLTE2LjQtMTguOC0yNi45LTQyLjgtMjguNy02OS4ybC00OC44IDB6bTI4My43IDBjLTEuOCAyNi40LTEyLjMgNTAuNC0yOC43IDY5LjJsMzMuNSAzMy41YzEzLjEtMTQuMiAyMy42LTMwLjQgMzEuMi00OC4yIDcuMy0xNy40IDExLjYtMzUuNyAxMi43LTU0LjVsLTQ4LjcgMHptLTM1Ny4xIDBjLjkgMjYuNyA2LjEgNTIuNyAxNS42IDc3LjVMODUgMzE4LjJjLTYuNC0xNy0xMC4zLTM1LjEtMTEuMy01NGwtNTcuMSAwem00MjIuMSAwYy0xIDE4LjktNSAzNy4xLTExLjMgNTRsNTIuOCAyMy41YzkuNS0yNC44IDE0LjctNTAuOCAxNS42LTc3LjVsLTU3LjEgMHpNMzIuMSAxNzAuNGMtOS41IDI0LjgtMTQuNyA1MC44LTE1LjYgNzcuNWw1Ny4xIDBjMS0xOC45IDUtMzcuMSAxMS4zLTU0TDMyLjEgMTcwLjR6bTEwMS43LTI1LjJjLTEzLjEgMTQuMi0yMy42IDMwLjQtMzEuMiA0OC4yLTcuMyAxNy40LTExLjYgMzUuNy0xMi44IDU0LjVsNDguOCAwYzEuOC0yNi40IDEyLjMtNTAuNCAyOC43LTY5LjJsLTMzLjUtMzMuNXptMjExLjEgMzMuNWMxNi40IDE4LjggMjYuOSA0Mi44IDI4LjcgNjkuMmw0OC43IDBjLTEuMS0xOC44LTUuNC0zNy4yLTEyLjctNTQuNS03LjUtMTcuOC0xOC0zNC0zMS4yLTQ4LjJsLTMzLjUgMzMuNXptODIuNCAxNS4yYzYuNCAxNyAxMC4zIDM1LjEgMTEuMyA1NGw1Ny4xIDBjLS45LTI2LjctNi4xLTUyLjctMTUuNi03Ny41bC01Mi44IDIzLjV6TTgxIDkyLjNDNjMuNCAxMTEgNDkuMiAxMzIuMiAzOC41IDE1NS40bDUyLjkgMjMuNWM4LTE2LjYgMTguNS0zMS45IDMwLjktNDUuMkw4MSA5Mi4zem0zMDkgNDEuM2MxMi40IDEzLjQgMjIuOSAyOC42IDMwLjkgNDUuMmw1Mi45LTIzLjVjLTEwLjctMjMuMi0yNS00NC4zLTQyLjUtNjMuMUwzOTAgMTMzLjd6TTI0OCA5MS44Yy0xOS42IC45LTM4LjcgNS4zLTU2LjcgMTIuOS0xNi44IDcuMS0zMi4yIDE2LjktNDUuOCAyOWwzMy40IDMzLjRjMTguOC0xNi4zIDQyLjctMjYuOCA2OS4xLTI4LjZsMC00Ni43em0xNi4zIDQ2LjdjMjYuNCAxLjggNTAuMyAxMi4zIDY5LjEgMjguNmwzMy40LTMzLjRjLTEzLjYtMTIuMS0yOS0yMS45LTQ1LjgtMjktMTgtNy42LTM3LjEtMTItNTYuNy0xMi45bDAgNDYuN3pNMTYxLjIgMzUuOGMtMjUuNCAxMS00OC40IDI2LjEtNjguNyA0NWw0MS40IDQxLjRjMTQuNy0xMy4yIDMxLjQtMjQgNDkuOC0zMS45TDE2MS4yIDM1Ljh6TTMyOC42IDkwLjNjMTguMyA3LjkgMzUuMSAxOC44IDQ5LjggMzEuOWw0MS40LTQxLjRjLTIwLjItMTguOS00My4zLTM0LTY4LjctNDVMMzI4LjYgOTAuM3pNMjQ4IDE2LjRjLTI0LjYgLjgtNDguNiA1LjMtNzEuNiAxMy40bDIyLjYgNTQuNmMxNS41LTUuMSAzMi04LjIgNDktOC45bDAtNTkuMXptMTYuMyA1OS4xYzE3LjEgLjcgMzMuNSAzLjggNDkgOC45bDIyLjYtNTQuNmMtMjMtOC4xLTQ3LTEyLjYtNzEuNi0xMy40bDAgNTkuMXpNNTEyLjIgMjY0LjJsLS4yIDBDNTA3LjggMzk5IDM5OS4yIDUwNy43IDI2NC4zIDUxMS45bDAgLjEtMTYuMyAwIDAtLjFDMTEzLjEgNTA3LjcgNC41IDM5OSAuMiAyNjQuMWwtLjIgMCAwLTE2LjMgLjIgMEM0LjUgMTEzIDExMy4xIDQuMyAyNDggLjFsMC0uMSAxNi4zIDAgMCAuMUMzOTkuMiA0LjMgNTA3LjggMTEzIDUxMiAyNDcuOWwuMiAwIDAgMTYuM3oiXX0sZ3RyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Imdsb2JhbGVha3MiLGljb246WzQ0OCw1MTIsW10sImU4NWQiLCJNNDExLjIgMzIuMmMyMC4yIDAgMzYuOCAxNi42IDM2LjggMzYuOWwwIDM3My44YzAgMjAuMi0xNi42IDM2LjktMzYuOCAzNi45bC05NC40IDAgMjgtNzkuNGMzLjEtOC44LTEuNi0xOC43LTEwLjQtMjEuOC0xLjYtLjUtMi42LTEtNC4yLTFzLTMuNiAwLTUuMiAuNWMtNS4yIDEtOS45IDUuMi0xMS45IDEwLjlsLTYuMiAxNi42IDAtNjcuNWMwLTEwLjktNy44LTE5LjctMTguMi0yMS44bC03LjIgMGMtLjUgMC0xIDAtMS42IC41LS41IDAtMSAuNS0xLjYgLjUtMi42IDEtNS4yIDIuNi03LjIgNC4xbDAtNC4xYzAtNS43LTIuNi0xMC40LTUuNy0xNGwtMS0xYy0xLTEtMi42LTIuMS00LjItMi42bDAtMjYuNWMwLTUuMi00LjEtOS4zLTkuMy05LjNsLTM5LjkgMGMtNi43IDAtMTEuNC03LjMtOC4zLTEzLjVMMjgzLjEgODQuMWMxNC41LTMxLjEgNDUuNi01MS40IDgwLjQtNTEuOWw0Ny43IDB6bS0xNjYgMGMxNy42IDAgMzAuMSAxNi4xIDI4IDMyLjItMi42IDMuNi00LjcgNy44LTYuMiAxMC45TDE4Ni42IDI0MS41Yy04LjggMTguNyA0LjIgNDAgMjQuNCA0MGwzMC42IDAgMCAxNi4xYy03LjggMy4xLTEzIDEwLjktMTMgMTkuN2wwIDMuNmMtMy42LTMuNi04LjgtNS43LTE0LjUtNS43LTExLjkgMC0yMS44IDkuOS0yMS44IDIxLjhsMCAxOS4yLTMuMSAwYy05LjMgMC0xNy4xIDcuOC0xNy4xIDE3LjFsMCAxMDUuOS05NS40IDBjLTQyIDAtNzIuNi00MC41LTYxLjItODEuNSAxLTMuMSA0LjItNS4yIDcuMy00LjdsMjEuMiAwYzI0LjQgMCA0NC42LTIwLjIgNDQuNi00NS4ybDAtNC4yYzAtMjQuOS0xOS43LTQ1LjItNDQuNi00NS4yLS41IDAtMS0uNS0xLTFsOC44LTMyLjdjMi4xLTYuMi0yLjYtMTEuOS04LjgtMTEuOWwtMzMuMiAwYy02LjcgMC0xMS40LTcuMy04LjMtMTMuNUw3Ni43IDg0LjdjMTYuMS0zMi4yIDQ4LjItNTIuNCA4NC01Mi40bDg0LjUgMHpNMTMzLjcgMTQ0LjRjLTEwLjQgMC0xOC43IDguMy0xOC43IDE4LjcgMCA5LjkgOC4zIDE4LjcgMTguNyAxOC43IDEwLjQgMCAxOC43LTguMyAxOC43LTE4LjdzLTguMy0xOC43LTE4LjctMTguN3ptMjAyLjggMGExOC42IDE4LjYgMCAxIDAgLS4yIDM3LjIgMTguNiAxOC42IDAgMSAwIC4yLTM3LjJ6Il19LHh0cj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJ2ZW5tbyIsaWNvbjpbNjQwLDUxMixbXSwiZTg1YSIsIk02Ny44IDIwMi43YzIuNCA1IDMuOSAxMSAzLjkgMTkuOCAwIDE2LjItMTEuNSAzOS44LTIwLjcgNTQuOWwtOS45LTc5LjctNDEgMy45IDE4LjggMTEyIDQ2LjkgMGMyMC41LTI2LjkgNDUuOC02NS4zIDQ1LjgtOTQuOCAwLTkuMy0xLjktMTYuNi02LjMtMjMuN2wtMzcuNCA3LjV6bTExMy03LjFjLTQyLjggMC02My41IDM3LTYzLjUgNzEuOSAwIDI2LjkgMTIuOCA0OC41IDQ4LjQgNDguNSAxNCAwIDI4LjUtMyAzNy44LTcuNWw1LTMzLjZjLTEzLjIgNi43LTIzLjMgOS4zLTMzLjkgOS4zLTkuNyAwLTE3LjEtNS4yLTE3LjEtMTguMyAyMi0uMiA2MC05LjMgNjAtMzguOCAwLTE4LjMtMTMuMi0zMS41LTM2LjctMzEuNWwwIDB6bS0yMi41IDQ4LjljMS4xLTEyLjkgMTEtMjIgMTguNi0yMiA0LjMgMCA4IDIuNiA4IDcuNyAwIDEwLjgtMTkgMTQuMi0yNi42IDE0LjJsMCAwem0xNTAuMi00OC45Yy0xNS4zIDAtMjYuMSA1LjgtMzQuMyAxMS4ybC0uNC05LjMtMzQuOCAwLTE4LjQgMTE2LjEgNDAuMiAwIDEyLjctODEuNGMzLjUtMS43IDguNi00LjEgMTMuOC00LjEgMy45IDAgNy4xIDEuMyA3LjEgNi41IDAgMi4yLS43IDYtLjkgOGwtMTEuMiA3MS4xIDQwIDAgMTIuMy03Ny41Yy43LTQuMSAxLjMtMTAuMyAxLjMtMTQuNiAwLTE1LjUtNy4xLTI1LjktMjcuNC0yNS45em0xODMuMiAwYy0xNC45IDAtMjUuNyA0LjUtMzcuMiAxMi43LTQuMS03LjMtMTIuMy0xMi43LTI0LjgtMTIuNy0xNC41IDAtMjUuMyA1LjgtMzMuMyAxMS42bC0xLjEtOS43LTM0LjQgMC0xOC40IDExNi4xIDQwLjIgMCAxMi44LTgxLjRjMy41LTEuNyA4LjYtNC4xIDEzLjgtNC4xIDMuOSAwIDcuMSAxLjMgNy4xIDcuMSAwIDEuNS0uNCAzLjktLjYgNS44bC0xMS40IDcyLjYgNDAgMCAxMi43LTgxLjRjMy43LTEuOSA4LjYtNC4xIDEzLjYtNC4xIDMuOSAwIDcuMSAxLjMgNy4xIDcuMSAwIDEuNS0uNCAzLjktLjcgNS44bC0xMS40IDcyLjYgNDAgMCAxMi4zLTc3LjVjLjctNC4xIDEuMy0xMC4zIDEuMy0xNC42IDAtMTUuNS03LjEtMjUuOS0yNy43LTI1LjlsMCAwem0xMDIuMiAwYy00NC43IDAtNjQuMiAzNC4zLTY0LjIgNzAuOSAwIDI3LjggMTEuMiA1MCA0NS4xIDUwIDQ1LjggMCA2NS0zNy41IDY1LTczLjcgMC0yNy40LTEyLjMtNDcuMi00Ni00Ny4yem0tMTMuNCA5MGMtNy4xIDAtMTAuMS02LjctMTAuMS0xNy41IDAtMTQuMiAzLjItNDIgMTktNDIgNy4xIDAgOS41IDYuNSA5LjUgMTUuOSAwIDE0LjItMy41IDQzLjUtMTguNCA0My41eiJdfSxidHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidWJ1bnR1IixpY29uOls1NzYsNTEyLFtdLCJmN2RmIiwiTTQ2OS4yIDc1YzAtMjAuMS04LTM5LjMtMjIuMi01My41cy0zMy40LTIyLjItNTMuNS0yMi4yLTM5LjMgOC01My41IDIyLjItMjIuMiAzMy40LTIyLjIgNTMuNWMwIDIwLjEgOCAzOS4zIDIyLjEgNTMuNXMzMy40IDIyLjEgNTMuNSAyMi4xIDM5LjMtOCA1My41LTIyLjEgMjIuMS0zMy40IDIyLjEtNTMuNWwuMSAwem0tMzE1IDE2NS43YTc1LjYgNzUuNiAwIDEgMCAtMTUxLjIgMCA3NS42IDc1LjYgMCAxIDAgMTUxLjIgMHpNNTcgMzQ2YzE4LjYgNDYuOSA1MSA4NyA5MyAxMTUuMXM5MS41IDQyLjYgMTQyIDQxLjdjLTE0LjctMTguNi0yMi45LTQxLjUtMjMuMi02NS4yLTYuOC0uOS0xMy4zLTIuMS0xOS41LTMuNC0yNi44LTUuNy01MS45LTE3LjMtNzMuNi0zNHMtMzkuMy0zOC4xLTUxLjctNjIuNWMtMjAuOSA5LjktNDQuNSAxMi44LTY3LjEgOC4ybC4xIC4xem0zOTUuMSA4OS44YTc1LjYgNzUuNiAwIDEgMCAtMTUxLjIgMCA3NS42IDc1LjYgMCAxIDAgMTUxLjIgMHpNNDQ0IDM1MS42YzE4LjUgMTQuOCAzMS42IDM1LjIgMzcuMiA1OC4yIDMzLjMtNDEuMyA1Mi42LTkyLjIgNTQuOC0xNDUuMnMtMTIuNS0xMDUuNC00Mi4yLTE0OS40Yy04LjYgMjEuNS0yNCAzOS42LTQzLjggNTEuNiAxNS40IDI4LjYgMjIuOSA2MC44IDIxLjkgOTMuMnMtMTAuNyA2NC0yOCA5MS42bC4xIDB6TTEwMS4xIDEzNS40YzEyLjQgMi43IDI0LjMgNy41IDM1LjEgMTQuMyAxNi42LTI0LjIgMzguOS00NC4xIDY0LjgtNThTMjU1LjggNzAuNCAyODUuMiA3MGMuMi01LjkgLjktMTEuOSAyLTE3LjcgMy42LTE2LjcgMTEuMS0zMi4zIDIxLjgtNDUuNS00Ny43LTMuOC05NS40IDYtMTM3LjYgMjguNVM5NC4zIDkxLjcgNzAuOCAxMzMuNGMyLjctLjIgNS4zLS4zIDgtLjMgNy41IDAgMTUgLjggMjIuNCAyLjNsLS4xIDB6Il19LHZ0cj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJ2aWFjb2luIixpY29uOlszODQsNTEyLFtdLCJmMjM3IiwiTTM4NCAzMmwtNjQgMC04MC43IDE5Mi05NC41IDAtODAuOC0xOTItNjQgMCA0OCAxMTItNDggMCAwIDQ4IDY4LjUgMCAxMy44IDMyLTgyLjMgMCAwIDQ4IDEwMi44IDAgODkuMiAyMDggODkuMi0yMDggMTAyLjggMCAwLTQ4LTgyLjMgMCAxMy44LTMyIDY4LjUgMCAwLTQ4LTQ4IDAgNDgtMTEyek0xOTIgMzM2bC0yNy02NCA1NCAwLTI3IDY0eiJdfSx5dHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiemhpaHUiLGljb246WzY0MCw1MTIsW10sImY2M2YiLCJNMTcwLjUgMTQ4LjFsMCAyMTcuNSAyMy40IDAgNy43IDI2LjQgNDItMjYuNCA0OS41IDAgMC0yMTcuNS0xMjIuNyAwem05Ny44IDE5My45bC0yNy45IDAtMjcuOSAxNy41LTUuMS0xNy41LTExLjkgMCAwLTE3MC4zIDcyLjggMCAwIDE3MC4zek0xNDkuOCAyNDcuN2wtNTIuMyAwYzEuNy0yNy4xIDIuMi01MS42IDIuMi03My41bDUxLjIgMHMyLTIyLjYtOC42LTIyLjNsLTg4LjUgMGMzLjUtMTMuMSA3LjktMjYuNyAxMy4xLTQwLjcgMCAwLTI0LjEgMC0zMi4zIDIxLjYtMy40IDguOS0xMy4yIDQzLjEtMzAuNyA3OC4xIDUuOS0uNiAyNS40LTEuMiAzNi44LTIyLjIgMi4xLTUuOSAyLjUtNi43IDUuMS0xNC41bDI4LjkgMGMwIDEwLjUtMS4yIDY2LjktMS43IDczLjRsLTUyLjMgMGMtMTEuNyAwLTE1LjYgMjMuNi0xNS42IDIzLjZsNjUuNiAwYy00LjQgNDkuOS0yOCA5MS45LTcwLjggMTI1LjEgMjAuNSA1LjkgNDAuOS0uOSA1MS05LjkgMCAwIDIzLTIwLjkgMzUuNi02OS4zbDU0IDY0LjlzNy45LTI2LjktMS4yLTQwYy03LjYtOC45LTI4LjEtMzMuMS0zNi44LTQxLjhMODcuOSAzMTJjNC40LTE0IDctMjcuNiA3LjktNDAuN2w2MS42IDBzLS4xLTIzLjYtNy42LTIzLjZsMCAwem00MTItMS42YzIwLjgtMjUuNiA0NS01OC42IDQ1LTU4LjZzLTE4LjYtMTQuOC0yNy40LTQuMWMtNiA4LjItMzYuOCA0OC4yLTM2LjggNDguMmwxOS4yIDE0LjR6TTQxMS44IDE4N2MtOS04LjItMjUuOSAyLjEtMjUuOSAyLjFzMzkuNSA1NSA0MS4xIDU3LjRsMTkuNS0xMy43cy0yNS43LTM3LjYtMzQuNy00NS45bDAgMCAwIDB6TTY0MCAyNTguNGMtMTkuOCAwLTEzMC45IC45LTEzMS4xIC45bDAtMTAxYzQuOCAwIDEyLjQtLjQgMjIuOC0xLjIgNDAuOS0yLjQgNzAuMS00IDg3LjgtNC44IDAgMCAxMi4yLTI3LjItLjYtMzMuNC0zLjEtMS4yLTIzLjIgNC42LTIzLjIgNC42cy0xNjUuMiAxNi41LTIzMi40IDE4YzEuNiA4LjggNy42IDE3LjEgMTUuOCAxOS42IDEzLjMgMy41IDIyLjcgMS43IDQ5LjIgLjkgMjQuOC0xLjYgNDMuNy0yLjQgNTYuNS0yLjRsMCA5OS44LTEzMy41IDBzMi44IDIyLjMgMjUuNSAyMi45bDEwNy45IDAgMCA3MC45YzAgMTQtMTEuMiAyMi0yNC41IDIxLjEtMTQuMSAuMS0yNi4xLTEuMS00MS43LTEuOCAyIDQgNi4zIDE0LjQgMTkuMyAyMS44IDkuOSA0LjggMTYuMiA2LjYgMjYgNi42IDI5LjYgMCA0NS43LTE3LjMgNDQuOS00NS4zbDAtNzMuMyAxMjIuNCAwYzkuNyAwIDguNy0yMy44IDguNy0yMy44bDAgMHoiXX0sd3RyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InlhbmRleCIsaWNvbjpbMjU2LDUxMixbXSwiZjQxMyIsIk0xNTMuMSAzMTUuOEw2NS43IDUxMiAyIDUxMiA5OCAzMDIuMkM1Mi45IDI3OS4zIDIyLjggMjM3LjggMjIuOCAxNjEuMSAyMi43IDUzLjcgOTAuOCAwIDE3MS43IDBsODIuMyAwIDAgNTEyLTU1LjEgMCAwLTE5Ni4yLTQ1LjggMHpNMTk4LjkgNDYuNWwtMjkuNCAwYy00NC40IDAtODcuNCAyOS40LTg3LjQgMTE0LjYgMCA4Mi4zIDM5LjQgMTA4LjggODcuNCAxMDguOGwyOS40IDAgMC0yMjMuNHoiXX0sTXRyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InBpeGl2IixpY29uOls0NDgsNTEyLFtdLCJlNjQwIiwiTTk2IDMyQzQzIDMyIDAgNzUgMCAxMjhMMCAzODRjMCA1MyA0MyA5NiA5NiA5NmwyNTYgMGM1MyAwIDk2LTQzIDk2LTk2bDAtMjU2YzAtNTMtNDMtOTYtOTYtOTZMOTYgMzJ6bTc3LjcgMjE3LjNhNjAuMSA2MC4xIDAgMSAwIDEyMC4zIDAgNjAuMSA2MC4xIDAgMSAwIC0xMjAuMyAwek0xMTkuMSAzODcuOGMtLjMtLjgtLjUtMS43LS41LTIuNmwwLTI0NC4zYzAtMS44IC43LTMuNiAyLTQuOXMzLTIgNC45LTJsMTYuOSAwYzEuMiAwIDIuMyAuMyAzLjMgLjhzMS45IDEuMyAyLjUgMi4zbDE0IDIxLjhjMTkuNy0xNS42IDQ0LjUtMjUgNzEuNi0yNSA2My42IDAgMTE1LjIgNTEuNiAxMTUuMiAxMTUuMlMyOTcuNSAzNjQuNSAyMzMuOCAzNjQuNWMtMjIgMC00Mi42LTYuMi02MC4xLTE2LjlsMCAzNy42YzAgLjktLjIgMS44LS41IDIuNnMtLjkgMS42LTEuNSAyLjItMS40IDEuMS0yLjIgMS41LTEuNyAuNS0yLjYgLjVsLTQxLjMgMGMtLjkgMC0xLjgtLjItMi42LS41cy0xLjYtLjktMi4yLTEuNS0xLjEtMS40LTEuNS0yLjJ6Il19LGt0cj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJvcGVuYWkiLGljb246WzUxMiw1MTIsW10sImU3Y2YiLCJNMTk2LjQgMTg1LjhsMC00OC42YzAtNC4xIDEuNS03LjIgNS4xLTkuMmw5Ny44LTU2LjNjMTMuMy03LjcgMjkuMi0xMS4zIDQ1LjYtMTEuMyA2MS40IDAgMTAwLjQgNDcuNiAxMDAuNCA5OC4zIDAgMy42IDAgNy43LS41IDExLjhMMzQzLjMgMTExLjFjLTYuMS0zLjYtMTIuMy0zLjYtMTguNCAwTDE5Ni40IDE4NS44ek00MjQuNyAzNzUuMmwwLTExNi4yYzAtNy4yLTMuMS0xMi4zLTkuMi0xNS45TDI4NyAxNjguNCAzMjkgMTQ0LjNjMy42LTIgNi43LTIgMTAuMiAwTDQzNyAyMDAuN2MyOC4yIDE2LjQgNDcuMSA1MS4yIDQ3LjEgODUgMCAzOC45LTIzIDc0LjgtNTkuNCA4OS42bDAgMHpNMTY2LjIgMjcyLjhsLTQyLTI0LjZjLTMuNi0yLTUuMS01LjEtNS4xLTkuMmwwLTExMi42YzAtNTQuOCA0Mi05Ni4zIDk4LjgtOTYuMyAyMS41IDAgNDEuNSA3LjIgNTguNCAyMEwxNzUuNCAxMDguNWMtNi4xIDMuNi05LjIgOC43LTkuMiAxNS45bDAgMTQ4LjUgMCAwem05MC40IDUyLjJsLTYwLjItMzMuOCAwLTcxLjcgNjAuMi0zMy44IDYwLjIgMzMuOCAwIDcxLjctNjAuMiAzMy44em0zOC43IDE1NS43Yy0yMS41IDAtNDEuNS03LjItNTguNC0yMGwxMDAuOS01OC40YzYuMS0zLjYgOS4yLTguNyA5LjItMTUuOWwwLTE0OC41IDQyLjUgMjQuNmMzLjYgMiA1LjEgNS4xIDUuMSA5LjJsMCAxMTIuNmMwIDU0LjgtNDIuNSA5Ni4zLTk5LjMgOTYuM2wwIDB6TTE3My44IDM2Ni41TDc2LjEgMzEwLjJjLTI4LjItMTYuNC00Ny4xLTUxLjItNDcuMS04NSAwLTM5LjQgMjMuNi03NC44IDU5LjktODkuNmwwIDExNi43YzAgNy4yIDMuMSAxMi4zIDkuMiAxNS45bDEyOCA3NC4yLTQyIDI0LjFjLTMuNiAyLTYuNyAyLTEwLjIgMHptLTUuNiA4NGMtNTcuOSAwLTEwMC40LTQzLjUtMTAwLjQtOTcuMyAwLTQuMSAuNS04LjIgMS0xMi4zbDEwMC45IDU4LjRjNi4xIDMuNiAxMi4zIDMuNiAxOC40IDBsMTI4LjUtNzQuMiAwIDQ4LjZjMCA0LjEtMS41IDcuMi01LjEgOS4ybC05Ny44IDU2LjNjLTEzLjMgNy43LTI5LjIgMTEuMy00NS42IDExLjNsMCAwem0xMjcgNjAuOWM2MiAwIDExMy43LTQ0IDEyNS40LTEwMi40IDU3LjMtMTQuOSA5NC4yLTY4LjYgOTQuMi0xMjMuNCAwLTM1LjgtMTUuNC03MC43LTQzLTk1LjcgMi42LTEwLjggNC4xLTIxLjUgNC4xLTMyLjMgMC03My4yLTU5LjQtMTI4LTEyOC0xMjgtMTMuOCAwLTI3LjEgMi00MC40IDYuNy0yMy0yMi41LTU0LjgtMzYuOS04OS42LTM2LjktNjIgMC0xMTMuNyA0NC0xMjUuNCAxMDIuNC01Ny4zIDE0LjgtOTQuMiA2OC42LTk0LjIgMTIzLjQgMCAzNS44IDE1LjQgNzAuNyA0MyA5NS43LTIuNiAxMC44LTQuMSAyMS41LTQuMSAzMi4zIDAgNzMuMiA1OS40IDEyOCAxMjggMTI4IDEzLjggMCAyNy4xLTIgNDAuNC02LjcgMjMgMjIuNSA1NC44IDM2LjkgODkuNiAzNi45eiJdfSxTdHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic2l0aCIsaWNvbjpbNDQ4LDUxMixbXSwiZjUxMiIsIk0wIDMybDY5LjcgMTE4LjgtNTguOS0xMS41IDY5LjggOTFjLTMgMTctMyAzNC40IDAgNTEuNGwtNjkuOCA5MSA1OC45LTExLjUtNjkuNyAxMTguOCAxMTguOC02OS43LTExLjUgNTguOSA5MS02OS44YzE3IDMgMzQuNSAzIDUxLjUgMGw5MSA2OS44LTExLjUtNTguOSAxMTguNyA2OS43LTY5LjctMTE4LjggNTguOSAxMS41LTY5LjgtOTFjMy0xNyAzLTM0LjQgMC01MS40bDY5LjgtOTEtNTguOSAxMS41IDY5LjctMTE4LjgtMTE4LjcgNjkuNyAxMS41LTU4LjktOTEuMSA2OS45Yy04LjUtMS41LTE3LjEtMi4zLTI1LjctMi4zcy0xNy4yIC44LTI1LjcgMi4zTDEwNy4yIDQyLjggMTE4LjggMTAxLjcgMCAzMnpNMjI0IDM4MC4yYTEyNC4yIDEyNC4yIDAgMSAxIDAtMjQ4LjQgMTI0LjIgMTI0LjIgMCAxIDEgMCAyNDguNHptMC0yMTEuOGE4Ny42IDg3LjYgMCAxIDAgMCAxNzUuMSA4Ny42IDg3LjYgMCAxIDAgMC0xNzUuMXoiXX0senRyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Imp1bGlhIixpY29uOls2NDAsNTEyLFtdLCJlODUyIiwiTTEyNCA0MDYuNWMwIDE2LjEtMS44IDI5LjEtNS40IDM5cy04LjggMTcuNi0xNS41IDIzLjEtMTQuNyA5LjEtMjQuMSAxMS0xOS44IDIuOC0zMS4yIDIuOGMtMTUuNSAwLTI3LjMtMi40LTM1LjUtNy4zUzAgNDY0LjUgMCA0NTcuN2MwLTUuNiAyLjMtMTAuNCA2LjktMTQuM3MxMC44LTUuOCAxOC41LTUuOGM1LjggMCAxMC40IDEuNiAxMy45IDQuN3M2LjMgNi4yIDguNiA5LjNjMi42IDMuNCA0LjggNS42IDYuNSA2LjhzMy40IDEuNyA0LjggMS43YzMuMSAwIDUuNC0xLjggNy01LjRzMi40LTEwLjcgMi40LTIxLjJsMC0xOTguNyA1NS40LTE1LjIgMCAxODYuOXptNzguOS0xODEuNmwwIDEyNy45YzAgMy42IC43IDYuOSAyLjEgMTBzMy4zIDUuOCA1LjcgOC4xIDUuMiA0LjEgOC41IDUuNCA2LjcgMi4xIDEwLjQgMi4xYzQuMiAwIDguOS0yLjMgMTQuNy02LjQgOS4yLTYuNCAxNC43LTEwLjkgMTQuNy0xNi4xbDAtMTMxIDU1LjEgMCAwIDE4MS42LTU1LjEgMCAwLTE2LjljLTcuMyA2LjEtMTUgMTEtMjMuMiAxNC43cy0xNi4yIDUuNi0yMy45IDUuNmMtOSAwLTE3LjQtMS41LTI1LjEtNC41cy0xNC41LTctMjAuMy0xMi4yLTEwLjQtMTEuMi0xMy43LTE4LjFjLTMuMy02LjktNS0xNC4zLTUtMjIuMmwwLTEyNy45IDU1LjEgMHpNMzkxLjQgNDA2LjVsLTU0LjkgMCAwLTI1NC42IDU0LjktMTUuMiAwIDI2OS44em0yMi45LTE3MS43bDU1LjEtMTUuMiAwIDE4Ni45LTU1LjEgMCAwLTE3MS43em0xNzAuMyA3Ny45Yy01LjMgMi4zLTEwLjcgNC45LTE2LjEgNy45cy0xMC4zIDYuMi0xNC43IDkuOC04IDcuMy0xMC44IDExLjQtNC4xIDguMi00LjEgMTIuNmMwIDMuNCAuNCA2LjYgMS4zIDkuOHMyLjEgNS44IDMuOCA4LjEgMy40IDQuMSA1LjMgNS40IDQgMi4xIDYuMyAyLjFjNC41IDAgOS4xLTEuNCAxMy43LTQuMXM5LjctNi4yIDE1LjQtMTAuNGwwLTUyLjV6TTY0MCA0MDYuNWwtNTUuNCAwIDAtMTQuNWMtMy4xIDIuNi02IDUtOC45IDcuMXMtNi4yIDQuMS05LjggNS43LTcuNyAyLjktMTIuMiAzLjhjLTQuNSAuOS05LjggMS4zLTE1LjkgMS4zLTguNCAwLTE1LjktMS4yLTIyLjYtMy42LTYuNy0yLjQtMTIuNC01LjctMTctOS45cy04LjMtOS4xLTEwLjgtMTQuOWMtMi41LTUuNy0zLjgtMTItMy44LTE4LjcgMC02LjkgMS4zLTEzLjIgNC0xOC45IDIuNy01LjYgNi4zLTEwLjcgMTAuOS0xNS4yIDQuNi00LjUgOS45LTguNSAxNi4xLTEyLjFzMTIuNy02LjggMTkuNy05LjggMTQuMy01LjcgMjEuOS04LjIgMTUuMS00LjkgMjIuNS03LjFsNi0xLjUgMC0xNy45YzAtMTEuNi0yLjItMTkuOC02LjYtMjQuN3MtMTAuNC03LjMtMTcuOC03LjNjLTguNyAwLTE0LjggMi4xLTE4LjEgNi4zcy01LjEgOS4zLTUuMSAxNS4yYzAgMy40LS40IDYuNy0xLjEgOS45LS43IDMuMi0yIDYtMy43IDguNXMtNC4zIDQuNC03LjYgNS44Yy0zLjMgMS41LTcuNSAyLjItMTIuNSAyLjItNy43IDAtMTQtMi4yLTE4LjktNi42LTQuOC00LjQtNy4zLTEwLTcuMy0xNi44IDAtNi4zIDIuMS0xMi4xIDYuNC0xNy41IDQuMy01LjQgMTAtMTAgMTcuMy0xMy45IDcuMy0zLjkgMTUuNi02LjkgMjUuMS05LjJzMTkuNi0zLjQgMzAuMi0zLjRjMTMuMSAwIDI0LjMgMS4yIDMzLjcgMy41czE3LjIgNS43IDIzLjMgMTAgMTAuNiA5LjYgMTMuNSAxNS43IDQuNCAxMyA0LjQgMjAuNmwwIDEzNi4xek02MCAxNzIuOWEzNy40IDM3LjQgMCAxIDEgNzQuOSAwIDM3LjQgMzcuNCAwIDEgMSAtNzQuOSAwek00NTIuMiA5NWEzNy40IDM3LjQgMCAxIDEgNzQuOSAwIDM3LjQgMzcuNCAwIDEgMSAtNzQuOSAwem00NSA3Ny45YTM3LjQgMzcuNCAwIDEgMSA3NC45IDAgMzcuNCAzNy40IDAgMSAxIC03NC45IDB6bS04OS45IDBhMzcuNCAzNy40IDAgMSAxIDc0LjkgMCAzNy40IDM3LjQgMCAxIDEgLTc0LjkgMHoiXX0sQ3RyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Im5mYy1kaXJlY3Rpb25hbCIsaWNvbjpbNTEyLDUxMixbXSwiZTUzMCIsIk0yMTEuOCA0ODguNmMxLjYgMi41IDIuMSA1LjYgMS40IDguNS0uNiAyLjktMi40IDUuNS00LjkgNy4xLTIuNiAxLjYtNS42IDIuMS04LjYgMS41LTYxLjQtMTMuOS0xMTUuNi00OS45LTE1Mi4yLTEwMS4yUy01LjQgMjkwLjMgMS42IDIyNy43YzctNjIuNyAzNi44LTEyMC41IDgzLjctMTYyLjUgNDYuOS00MiAxMDcuNy02NS4yIDE3MC43LTY1LjIgMS41IDAgMi4xIC4zIDQuMyAuOSAxLjQgLjYgMS44IDEuNCAzLjcgMi41IDEuMSAxLjEgMS45IDIuMyAyLjUgMy43IC41IDEuNCAuOCAyLjggLjggNC4zbDAgMTAxIDI0LjUtMjUuOWMxLTEuMSAyLjItMiAzLjYtMi42IDEuMy0uNiAyLjgtLjkgNC4zLTEgMS41LS4xIDIuOSAuMiA0LjMgLjdzMi43IDEuMyAzLjggMi40YzEgMSAxLjkgMi4yIDIuNSAzLjYgLjYgMS4zIDEgMi44IDEgNC4zcy0uMiAzLS43IDQuM2MtLjYgMS40LTEuNCAyLjYtMi40IDMuN2wtNDQgNDYuNmMtMS4xIDEuMS0yLjMgMi0zLjcgMi42LTEuNSAuNi0zIC45LTUuNCAuOS0uNiAwLTIuMi0uMy0zLjYtLjlzLTIuNy0xLjUtMy43LTIuNmwtNDQuMS00Ni42Yy0yLTIuMi0zLjEtNS4xLTMtOC4xIDAtMyAxLjMtNi43IDMuNS03LjkgMi4yLTIuMSA1LjEtMy4yIDguMS0zLjEgMyAuMSA1LjggMS4zIDcuOSAzLjVsMjQuNSAyNiAwLTg5LjVjLTU2LjQgMi44LTEwOS44IDI1LjgtMTUwLjUgNjUtNDAuNiAzOS4xLTY1LjcgOTEuNy03MC42IDE0Ny45UzM0LjQgMzQ4LjEgNjcuNyAzOTMuN2MzMi40IDQ1LjUgODIgNzcuNSAxMzcgODkuOSAyLjkgLjcgNS41IDIuNSA3LjEgNXpNMTcxLjQgMTI2LjFjLS44IDEuMy0xLjkgMi40LTMuMSAzLjItMjAuNSAxMy45LTM3LjIgMzIuNi00OC44IDU0LjVzLTE3LjcgNDYuMy0xNy43IDcxLjEgNi4xIDQ5LjIgMTcuNyA3MC4yYzExLjYgMjIuOCAyOC4zIDQxLjUgNDguOCA1NS40IDIuNSAxLjcgNC4yIDQuMyA0LjcgNy4zIC42IDIuOS0uOSA2LTEuNyA4LjQtMS43IDIuNS01LjIgNC4yLTcuMyAzLjktMi45IDEuNC02IC44LTguNC0uOS0yMy42LTE2LTQyLjgtMzcuNS01Ni4xLTYyLjctMTMuMy0yNS4xLTIwLjMtNTMuMS0yMC4zLTgxLjYgMC0yOC40IDctNTYuNSAyMC4zLTgxLjYgMTMuMy0yNS4yIDMyLjUtNDYuNyA1Ni4xLTYyLjcgMS4yLS44IDIuNi0xLjQgNC0xLjggMS41LS4zIDMtLjMgNC41IDAgMS40IC4yIDIuOCAuOCA0LjEgMS42czIuMyAxLjkgMy4yIDMuMWMuOCAxLjIgMS40IDIuNiAxLjcgNC4xcy4zIDMgMCA0LjRjLS4zIDEuNS0uOCAyLjktMS43IDQuMXpNMzQwLjkgMzgzLjVjLjgtMS4yIDEuOS0yLjMgMi4yLTMuMWwwLS4xYzIxLjMtMTQgMzgtMzIuNyA0OS42LTU0LjYgMTEuNS0yMS44IDE3LjUtNDYuMiAxNy41LTcwLjlzLTYtNDkuMS0xNy41LTcxYy0xMS42LTIyLjctMjguMy00MC41LTQ5LjYtNTQuNS0uMy0uOC0xLjQtMS45LTIuMi0zLjEtLjgtMS4zLTEuNC0yLjctMS42LTQuMS0xLjItMS41LS4zLTMgMC00LjQgLjMtMS41IC45LTIuOSAxLjctNC4xIC45LTEuMiAxLjEtMi4zIDMuMi0zLjEgMS4yLS44IDIuNi0xLjMgNC4xLTEuNnMyLjktLjMgNC40IDAgMi44IC45IDQuMSAxLjhjMjMuNCAxNiA0Mi43IDM3LjUgNTUuOSA2Mi42IDEzLjMgMjUuMSAxOS40IDUzLjEgMTkuNCA4MS41IDAgMjguNS02LjEgNTYuNS0xOS40IDgxLjYtMTMuMiAyNS4xLTMyLjUgNDYuNi01NS45IDYyLjYtMS4zIC45LTIuNiAxLjUtNC4xIDEuOHMtMi45IC4zLTQuNCAwLTIuOS0xLjctNC4xLTEuNmMtMi4xLS44LTIuMy0xLjktMy4yLTMuMS0uOC0xLjItMS40LTIuNi0xLjctNC4xLS4zLTEuNC0xLjItMi45IDAtNC40IC4yLTEuNCAuOC0yLjggMS42LTQuMXpNMzEyLjMgNi4zYzU2LjIgMTIuNyAxMDYuNCA0NCAxNDIuNyA4OC43IDMwLjQgMzcuNiA0OS42IDgzIDU1LjMgMTMxIDUuNiA0OC0yLjQgOTYuNy0yMy4yIDE0MC4zLTIwLjkgNDMuNi01My42IDgwLjUtOTQuNSAxMDYuMy00MC45IDI1LjctODguMiAzOS40LTEzNi42IDM5LjQtMS41IDAtMi45LS4zLTQuMy0uOS0xLjQtLjUtMi42LTEuNC0zLjctMi40LTEuOS0xLjEtMS45LTIuMy0yLjQtMy43LS42LTEuNC0uOS0yLjgtLjktNC4zbDAtOTkuMi0yNC41IDI2Yy0yLjEgMi4yLTQuOSAyLjYtNy45IDMuNi0zIC4xLTUuOS0xLjEtOC4xLTQtMi4yLTEuMi0zLjUtNC0zLjUtNy0uMS0zIDEtNS45IDMtOC4xbDQ0LjEtNDYuNmMxLjMtMi4yIDUuMS0zLjQgNy4zLTMuNCA0IDAgNi45IDEuMiA5LjEgMy40bDQ0IDQ2LjZjMi4xIDIuMiAzLjIgNS4xIDMuMSA4LjFzLTEuNCA1LjgtMy41IDdjLTIuMiAyLjktNS4xIDQuMS04LjEgNC0zLTEtNS45LTEuNC03LjktMy42bC0yNC41LTI1LjkgMCA4Ny41YzU2LjQtMi44IDEwOS44LTI1LjggMTUwLjUtNjUgNDAuNy00MCA2NS44LTkxLjcgNzAuNy0xNDcuOSA0LjgtNTcuMS0xMC44LTExMi4zLTQ0LjEtMTU3LjktMzMuMy00NS42LTgyLTc3LjUtMTM3LTg5LjktMS41LS4zLTIuOC0uOS00LjEtMS44LTEuMi0uOS0yLjItMS45LTMtMy4yLS44LTEuMi0yLjItMi42LTEuNi00LjEtLjItMS41LS4yLTMgLjEtNC40IC40LTEuNCAxLTIuOCAxLjgtNCAuOS0xLjIgMi0yLjIgMy4yLTMgMS4zLS44IDIuNy0xLjMgNC4xLTEuNiAxLjUtLjMgMy0uMiA0LjQgLjF6bTQwLjggMjQ5LjhjMCAzMS40LTE3LjUgNjEuMS00OS4zIDgzLjUtMi4xIDEuNS00LjggMi4zLTcuNCAyLTIuNy0uMi01LjItMS4zLTctMy4ybC03MC4xLTY5LjhjLTIuMi0yLjEtNC4yLTUtMy40LTggMC0zIDEuMi01LjkgMy4zLTggMi4yLTIuMSA1LTMuMyA4LTMuM3M1LjkgMS4yIDggMy4zbDYzLjEgNjIuOGMyMC44LTE3LjEgMzIuMi0zNy45IDMyLjItNTkuMyAwLTIzLjktMTQuMS00Ny0zOS43LTY1LjEtMi41LTEuNy00LjEtNC4zLTQuNi03LjMtLjUtMi45IC4xLTYgMS45LTguNCAxLjctMi41IDQuMy00LjEgNy4zLTQuNiAyLjktLjUgNiAuMSA4LjQgMS45IDMxLjggMjIuNCA0OS4zIDUyLjEgNDkuMyA4My41ek0yMTYuNyAzNDEuNWMtMyAuNS02LS4yLTguNS0xLjktMzEuNy0yMi40LTUwLjEtNTIuMS01MC4xLTgzLjVzMTguNC02MS4xIDUwLjEtODMuNWMyLjItMS42IDQuOS0yLjMgNy41LTIuMSAyLjcgLjMgNS4xIDEuNCA3IDMuM2w3MC4xIDY5LjhjMi4xIDIuMSAzLjMgNSAzLjMgOHMtMiA1LjgtMy4zIDhjLTIuMSAyLjEtNSAzLjMtNy45IDMuMy0zIDAtNi44LTEuMi04LTMuM2wtNjMuMS02Mi45Yy0yMC45IDE3LjMtMzIuMiAzOC0zMi4yIDU5LjQgMCAyMyAxNC4xIDQ3IDM5LjcgNjUgMi40IDEuOCA0LjEgNC40IDQuNiA3LjQgLjUgMi45LS4yIDUuOS0xLjkgOC40LTEuNyAyLjQtNC40IDQuMS03LjMgNC42eiJdfSxfdHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiY3JlYXRpdmUtY29tbW9ucy1ieSIsaWNvbjpbNTEyLDUxMixbXSwiZjRlNyIsIk0zMjIuOSAxOTQuNGwwIDEwMS40LTI4LjMgMCAwIDEyMC41LTc3LjEgMCAwLTEyMC40LTI4LjMgMCAwLTEwMS41YzAtNC40IDEuNi04LjIgNC42LTExLjMgMy4xLTMuMSA2LjktNC43IDExLjMtNC43bDEwMS45IDBjNC4xIDAgNy44IDEuNiAxMS4xIDQuNyAzLjEgMy4yIDQuOCA2LjkgNC44IDExLjN6bS0zMi41LTY0LjVhMzQuNSAzNC41IDAgMSAxIC02OSAuOCAzNC41IDM0LjUgMCAxIDEgNjktLjh6TTI1NS42IDhDMzk3LjQgOCA1MDQgMTE4LjEgNTA0IDI1NiA1MDQgNDAzLjEgMzg1LjUgNTA0IDI1NS42IDUwNCAxMjEuNiA1MDQgOCAzOTQuNSA4IDI1NiA4IDEyMy4xIDExMi43IDggMjU1LjYgOHptLjggNDQuN2MtMTE4LjIgMC0yMDMuNyA5Ny45LTIwMy43IDIwMy4zIDAgMTA5LjggOTEuMiAyMDIuOCAyMDMuNyAyMDIuOCAxMDMuMiAwIDIwMi44LTgxLjEgMjAyLjgtMjAyLjggLjEtMTEzLjgtOTAuMi0yMDMuMy0yMDIuOC0yMDMuM3oiXX0sVHRyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InVtYnJhY28iLGljb246WzUxMiw1MTIsW10sImY4ZTgiLCJNMjU2LjMgOGEyNDggMjQ4IDAgMSAwIC0uNyA0OTYgMjQ4IDI0OCAwIDEgMCAuNy00OTZ6bTE0NSAyNjZjLS44IDI3LjEtNS40IDQ4LjgtMTQgNjVzLTIzLjEgMjcuOS00My41IDM1Yy0yMC40IDcuMS00OC45IDEwLjYtODUuNCAxMC41bC00LjYgMGMtMzYuNSAuMS02NS0zLjMtODUuNC0xMC41cy0zNC45LTE4LjgtNDMuNS0zNWMtOC42LTE2LjItMTMuMi0zNy45LTE0LTY1LS43LTEwLjItLjctMjAuNSAwLTMwLjcgLjQtMTQuNyAxLjYtMjkuMyAzLjYtNDMuOSAxLjktMTMuNCAzLjYtMjIuNiA1LjQtMzIgMS00LjkgMS4zLTYuNCAxLjgtOC40IC4zLTEuMSAuOS0yLjEgMS44LTIuOHMyLTEuMSAzLjEtMS4xbC43IDAgMzIgNWMxLjIgLjIgMi4yIC44IDMgMS43czEuMiAyLjEgMS4yIDMuM2MwIC4zIDAgLjUgMCAuOGwtMS43IDguOGMtMS42IDguOC0zLjIgMjAuMS00LjggMzMuNy0xLjcgMTQtMi41IDI4LjEtMi42IDQyLjItLjIgMjcgMi41IDQ2LjkgOC4xIDU5LjggMi44IDYuNCA3LjIgMTIgMTIuNiAxNi40czExLjkgNy40IDE4LjcgOC44YzE4LjggNCAzOC4xIDUuNyA1Ny4zIDUuMWwxMC4zIDBjMTkuMiAuNiAzOC41LTEuMiA1Ny4zLTUuMiA2LjgtMS40IDEzLjItNC41IDE4LjYtOC44czkuNy0xMCAxMi41LTE2LjRjNS43LTEyLjkgOC40LTMyLjkgOC4xLTU5LjgtLjEtMTQuMS0xLTI4LjItMi42LTQyLjEtMS43LTEzLjYtMy4zLTI0LjgtNC45LTMzLjdsLTEuNy04LjhjMC0uMyAwLS41IDAtLjggMC0xLjIgLjQtMi40IDEuMi0zLjNzMS44LTEuNSAzLTEuN2wzMi01IC44IDBjMS4xIDAgMi4yIC40IDMuMSAxLjFzMS41IDEuNyAxLjggMi44Yy42IDIgLjggMy42IDEuOCA4LjQgMS44IDkuNiAzLjUgMTguOCA1LjQgMzIgMiAxNC42IDMuMiAyOS4yIDMuNiA0My45IC43IDEwLjIgLjcgMjAuNSAwIDMwLjdsMCAweiJdfSxMdHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiaG9vbGkiLGljb246WzY0MCw1MTIsW10sImY0MjciLCJNMTQ0LjUgMzUybDM4LjMgLjhjLTEzLjItNC42LTI2LTEwLjItMzguMy0xNi44bDAgMTZ6bTU3LjctNS4zbDAgNS4zLTE5LjQgLjhjMzYuNSAxMi41IDY5LjkgMTQuMiA5NC43IDcuMi0xOS45IC4yLTQ1LjgtMi42LTc1LjMtMTMuM3pNNjExLjEgMjMxLjVjMTUuOSAwIDI4LjktMTIuOSAyOC45LTI4LjlzLTEyLjktMjQuNS0yOC45LTI0LjVjLTE1LjkgMC0yOC45IDguNi0yOC45IDI0LjVzMTIuOSAyOC45IDI4LjkgMjguOXpNNTgyLjEgMzUybDU3LjkgMCAwLTExMC41LTU3LjkgMCAwIDExMC41em0tNzMuNyAwbDU3LjkgMCAwLTE5NS4zLTU3LjkgMjcuMyAwIDE2OHptLTMxLTExOS40Yy0xOC4yLTE4LjItNTAuNC0xNy4xLTUwLjQtMTcuMXMtMzIuMy0xLjEtNTAuNCAxNy4xYy0xOC4yIDE4LjItMTYuOCAzMy45LTE2LjggNTIuNnMtMS40IDM0LjMgMTYuOCA1Mi41IDUwLjQgMTcuMSA1MC40IDE3LjEgMzIuMyAxLjEgNTAuNC0xNy4xYzE4LjItMTguMiAxNi44LTMzLjggMTYuOC01Mi41LS4xLTE4LjggMS4zLTM0LjUtMTYuOC01Mi42em0tMzkuOCA3MS45YzAgMy42LTEuOCAxMi41LTEwLjcgMTIuNXMtMTAuNy04LjktMTAuNy0xMi41bDAtNDAuNGMwLTguNyA3LjMtMTAuOSAxMC43LTEwLjlzMTAuNyAyLjEgMTAuNyAxMC45bDAgNDAuNHpNMzMxLjQgMjMyLjZjLTE4LjItMTguMi01MC40LTE3LjEtNTAuNC0xNy4xcy0zMi4yLTEuMS01MC40IDE3LjFjLTEuOSAxLjktMy43IDMuOS01LjMgNi0zOC4yLTI5LjYtNzIuNS00Ni41LTEwMi4xLTYxLjFsMC0yMC43LTIyLjUgMTAuNmMtNTQuNC0yMi4xLTg5LTE4LjItOTcuMyAuMSAwIDAtMjQuOSAzMi44IDYxLjggMTEwLjhsMCA3My43IDU3LjkgMCAwLTI4LjZjLTYuNS00LjItMTMtOC43LTE5LjQtMTMuNi0xNC44LTExLjItMjcuNC0yMS42LTM4LjQtMzEuNGwwLTMxYzEzLjEgMTQuNyAzMC41IDMxLjQgNTMuNCA1MC4zbDQuNSAzLjYgMC0yOS44YzAtNi45IDEuNy0xOC4yIDEwLjgtMTguMnMxMC42IDYuOSAxMC42IDE1bDAgNDguN2MxOCAxMi4yIDM3LjMgMjIuMSA1Ny43IDI5LjZsMC05My45YzAtMTguNy0xMy40LTM3LjQtNDAuNi0zNy40LTE1LjgtLjEtMzAuNSA4LjItMzguNSAyMS45bDAtNTQuM2M0MS45IDIwLjkgODMuOSA0Ni41IDk5LjkgNTguMy0xMC4yIDE0LjYtOS4zIDI4LjEtOS4zIDQzLjcgMCAxOC43LTEuNCAzNC4zIDE2LjggNTIuNXM1MC40IDE3LjEgNTAuNCAxNy4xIDMyLjMgMS4xIDUwLjQtMTcuMWMxOC4yLTE4LjIgMTYuNy0zMy44IDE2LjctNTIuNSAwLTE4LjUgMS41LTM0LjItMTYuNy01Mi4zek02NS4yIDE4NGwwIDYzLjNjLTQ4LjctNTQuNS0zOC45LTc2LTM1LjItNzkuMSAxMy41LTExLjQgMzcuNS04IDY0LjQgMi4xTDY1LjIgMTg0ek0yOTEuNyAzMDQuNWMwIDMuNi0xLjggMTIuNS0xMC43IDEyLjVzLTEwLjctOC45LTEwLjctMTIuNWwwLTQwLjRjMC04LjcgNy4zLTEwLjkgMTAuNy0xMC45czEwLjcgMi4xIDEwLjcgMTAuOWwwIDQwLjR6Il19LFJrZT17cHJlZml4OiJmYWIiLGljb25OYW1lOiJzcXVhcmUtZ2l0IixpY29uOls0NDgsNTEyLFsiZ2l0LXNxdWFyZSJdLCJmMWQyIiwiTTEyMC44IDMzNS41Yy01LjktLjQtMTIuNi0uOC0yMC4yLTEuMy0zLjMgNC4xLTYuNiA4LjQtNi42IDEzLjUgMCAxOC41IDY1LjUgMTguNSA2NS41LTEuNSAwLTguMy03LjQtOC43LTM4LjgtMTAuN2wuMSAwem03LjgtMTE3LjljLTMyLjMgMC0zMy43IDQ0LjUtLjcgNDQuNSAzMi41IDAgMzEuNy00NC41IC43LTQ0LjV6TTM4NCAzMkw2NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgNDE2YzAgMzUuMyAyOC43IDY0IDY0IDY0bDMyMCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMzIwYzAtMzUuMy0yOC43LTY0LTY0LTY0ek0yNDMuOSAxNzIuMmMtMTQuNSAwLTIyLjktOC40LTIyLjktMjIuOXM4LjQtMjIuMyAyMi45LTIyLjNjMTQuNyAwIDIzLjEgNy44IDIzLjEgMjIuM3MtOC40IDIyLjktMjMuMSAyMi45ek0xNDkuNiAxOTVsNDkuNSAwIDAgMjEuNi0yMy40IDEuOGM0LjYgNS44IDkuNCAxNCA5LjQgMjUuNyAwIDQ4LjctNTcuMiA0Ny4yLTc0LjIgNDIuNGwtOC40IDEzLjRjNSAuMyA5LjggLjYgMTQuMyAuOCA1Ni4zIDMuMiA4MC41IDQuNiA4MC41IDM4LjUgMCAyOS4yLTI1LjcgNDUuNy02OS45IDQ1LjctNDYgMC02My41LTExLjYtNjMuNS0zMS43IDAtMTEuNCA1LjEtMTcuNSAxNC0yNS45LTguNC0zLjUtMTEuMi05LjktMTEuMi0xNi44IDAtOS42IDcuNC0xNi4zIDIzLTMwLjZsLjItLjJjLTEyLjQtNi4xLTIxLjgtMTkuMy0yMS44LTM4LjEgMC01MS42IDU2LjYtNTMuMyA4MS42LTQ2LjhsLS4xIC4yek0yNzAuNSAzMDMuMWwxMyAxLjggMCAyMC4xLTcyLjQgMCAwLTIwLjFjMi43LS40IDUtLjcgNi45LS45IDkuOS0xLjIgMTAuMS0xLjMgMTAuMS02bDAtNzQuN2MwLTQuNC0uOS00LjctMTAuMS03LjgtMS45LS43LTQuMi0xLjQtNi45LTIuNGwyLjgtMjAuNiA1Mi42IDAgMCAxMDUuNWMwIDQuMSAuMiA0LjYgNC4xIDUuMWwtLjEgMHptMTA2LjYtMTAuNEwzODQgMzE1Yy0xMC45IDUuNC0yNi45IDEwLjItNDEuNCAxMC4yLTMwLjIgMC00MS43LTEyLjItNDEuNy00MC45bDAtNjYuNmMwLS44IDAtMS40LS4yLTEuOC0uOC0xLjItNC4yLS43LTE5LjYtLjdsMC0yMi42YzIyLjMtMi41IDMxLjItMTMuNyAzNC00MS40bDI0LjIgMGMwIDMzLjMtLjYgMzggLjcgMzguNiAuMyAuMSAuNyAwIDEuMyAwbDM1LjggMCAwIDI1LjQtMzcuOCAwIDAgNjEuNmMtLjIgNi4zLS45IDMwLjQgMzcuOSAxNS45bC0uMSAweiJdfSxEdHI9UmtlLEF0cj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJvZG5va2xhc3NuaWtpIixpY29uOlszMjAsNTEyLFtdLCJmMjYzIiwiTTI3NS4xIDMzNGMtMjcuNCAxNy40LTY1LjEgMjQuMy05MCAyNi45bDIwLjkgMjAuNiA3Ni4zIDc2LjNjMjcuOSAyOC42LTE3LjUgNzMuMy00NS43IDQ1LjctMTkuMS0xOS40LTQ3LjEtNDcuNC03Ni4zLTc2LjZMODQgNTAzLjRjLTI4LjIgMjcuNS03My42LTE3LjYtNDUuNC00NS43IDE5LjQtMTkuNCA0Ny4xLTQ3LjQgNzYuMy03Ni4zbDIwLjYtMjAuNmMtMjQuNi0yLjYtNjIuOS05LjEtOTAuNi0yNi45LTMyLjYtMjEtNDYuOS0zMy4zLTM0LjMtNTkgNy40LTE0LjYgMjcuNy0yNi45IDU0LjYtNS43IDAgMCAzNi4zIDI4LjkgOTQuOSAyOC45UzI1NSAyNjkuMiAyNTUgMjY5LjJjMjYuOS0yMS4xIDQ3LjEtOC45IDU0LjYgNS43IDEyLjQgMjUuNy0xLjkgMzgtMzQuNSA1OS4xem0xNC42LTIwNC43YTEyOS43IDEyOS43IDAgMSAxIC0yNTkuNCAuNCAxMjkuNyAxMjkuNyAwIDEgMSAyNTkuNC0uNHptLTE5My40IC40YTYzLjcgNjMuNyAwIDEgMCAxMjcuNC0uNCA2My43IDYzLjcgMCAxIDAgLTEyNy40IC40eiJdfSxFdHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZHJ1cGFsIixpY29uOlszODQsNTEyLFtdLCJmMWE5IiwiTTI3Mi4zIDEwOC4xQzIzNi41IDcyLjUgMjAyLjUgMzguNCAxOTIuNCAwIDE4Mi40IDM4LjQgMTQ4LjEgNzIuNSAxMTIuNCAxMDguMSA1OC44IDE2MS43LTEuOSAyMjIuNC0xLjkgMzEzLjQtNC4zIDQyMC43IDgwLjggNTA5LjYgMTg4LjEgNTEyczE5Ni4yLTgyLjggMTk4LjUtMTkwLjFjLjEtMi44IC4xLTUuNiAwLTguNSAwLTkxLjEtNjAuOC0xNTEuNy0xMTQuMy0yMDUuM3pNOTggMzMxLjFjLTUuOSA3LjUtMTEgMTUuNi0xNS4yIDI0LjItLjMgLjctLjggMS4zLTEuMyAxLjhzLTEuMiAuOC0yIDFsLTEuNyAwYy00LjMgMC05LjItOC41LTkuMi04LjUtMS4zLTItMi41LTQuMi0zLjctNi40bC0uOC0xLjhjLTExLjItMjUuNy0xLjUtNjIuMy0xLjUtNjIuMyA0LjgtMTcuOCAxMi43LTM0LjcgMjMuMi00OS45IDYuNC05LjYgMTMuNS0xOC45IDIxLTI3LjdsOS4yIDkuMiA0My41IDQ0LjRjLjggLjkgMS4zIDIuMSAxLjMgMy4zcy0uNSAyLjQtMS4zIDMuM0wxMTQuMSAzMTIuMyA5OCAzMzEuMXptOTYuNiAxMjcuM2MtMTIuOS0uMS0yNS42LTMuOS0zNi40LTExcy0xOS40LTE3LjEtMjQuNi0yOC45LTctMjQuOS01LTM3LjcgNy42LTI0LjcgMTYuMi0zNC40YzE0LjItMTYuOSAzMS41LTMzLjUgNTAuMy01NS4zIDIyLjMgMjMuOCAzNi45IDQwLjEgNTEuMiA1OCAxLjEgMS40IDIuMSAyLjkgMyA0LjQgNy44IDExLjEgMTIgMjQuNCAxMiAzOCAwIDguOC0xLjcgMTcuNC01IDI1LjVzLTguMiAxNS41LTE0LjQgMjEuNy0xMy41IDExLjEtMjEuNiAxNC41LTE2LjcgNS4xLTI1LjUgNS4xbC0uMiAwek0zMjAuNyAzNTEuNmMtLjQgMS40LTEuMiAyLjYtMi4zIDMuNnMtMi40IDEuNi0zLjggMS44bC0xLjMgMGMtMi42LS45LTQuOS0yLjctNi4zLTUuMS0xMS42LTE3LjUtMjQuOS0zMy45LTM5LjUtNDlsLTE3LjgtMTguNC01OS4xLTYxLjNjLTEyLjQtMTEuNS0yNC4yLTIzLjYtMzUuNC0zNi4zLS4zLS41LS42LS45LS45LTEuNC0yLTIuOC0zLjYtNS45LTQuNy05LjJsMC0xLjhjLS44LTUtLjQtMTAuMSAxLjItMTVzNC40LTkuMiA4LTEyLjdjMTEuNC0xMS40IDIzLTIzIDMzLjgtMzQuOSAxMiAxMy4zIDI0LjggMjYgMzcuNCAzOC42IDI1LjggMjQgNDkuMSA1MC41IDY5LjYgNzkuMSAxNy4zIDI0LjUgMjYuNyA1My44IDI3IDgzLjgtLjEgMTIuOS0yLjIgMjUuOC02IDM4LjJ6Il19LCR0cj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJibG9nZ2VyLWIiLGljb246WzQ0OCw1MTIsW10sImYzN2QiLCJNNDQ2LjYgMjIyLjdjLTEuOC04LTYuOC0xNS40LTEyLjUtMTguNS0xLjgtMS0xMy0yLjItMjUtMi43LTIwLjEtLjktMjIuMy0xLjMtMjguNy01LTEwLjEtNS45LTEyLjgtMTIuMy0xMi45LTI5LjUtLjEtMzMtMTMuOC02My43LTQwLjktOTEuMy0xOS4zLTE5LjctNDAuOS0zMy02NS41LTQwLjUtNS45LTEuOC0xOS4xLTIuNC02My4zLTIuOS02OS40LS44LTg0LjggLjYtMTA4LjQgMTAtNDMuNSAxNy4yLTc0LjcgNTMuOC04Ni4xIDEwMC42LTIuMSA4LjgtMi42IDIyLjktMy4xIDEwMy45LS42IDEwMS41IC4xIDExNi40IDYuNCAxMzYuNSAxNS42IDQ5LjYgNTkuOSA4Ni4zIDEwNC40IDk0LjMgMTQuOCAyLjcgMTk3LjMgMy4zIDIxNiAuOCAzMi41LTQuNCA1OC0xNy41IDgxLjktNDEuOSAxNy4zLTE3LjcgMjguMS0zNi44IDM1LjItNjIuMSA0LjktMTcuNiA0LjUtMTQyLjggMi41LTE1MS43ek0xMjQuNSAxNTkuMWM3LjgtNy45IDEwLTguMiA1OC44LTguMiA0My45IDAgNDUuNCAuMSA1MS44IDMuNCA5LjMgNC43IDEzLjQgMTEuMyAxMy40IDIxLjkgMCA5LjUtMy44IDE2LjItMTIuMyAyMS42LTQuNiAyLjktNy4zIDMuMS01MC4zIDMuMy0yNi41IC4yLTQ3LjctLjQtNTAuOC0xLjItMTYuNi00LjctMjIuOC0yOC41LTEwLjYtNDAuOHpNMzE2LjMgMzU4LjlsLTE0LjkgMi40LTc3LjUgLjljLTY4LjEgLjgtODcuMy0uNC05MC45LTItNy4xLTMuMS0xMy44LTExLjctMTQuOS0xOS40LTEuMS03LjMgMi42LTE3LjMgOC4yLTIyLjQgNy4xLTYuNCAxMC4yLTYuNiA5Ny4zLTYuNyA4OS42LS4xIDg5LjEtLjEgOTcuNiA3LjggMTIuMSAxMS4zIDkuNSAzMS4yLTQuOSAzOS40eiJdfSxQdHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiaW52aXNpb24iLGljb246WzQ0OCw1MTIsW10sImY3YjAiLCJNNDA3LjQgMzJMNDAuNiAzMkMxOC4yIDMyIDAgNTAuMiAwIDcyLjZMMCA0MzkuNEMwIDQ2MS44IDE4LjIgNDgwIDQwLjYgNDgwbDM2Ni44IDBjMjIuNCAwIDQwLjYtMTguMiA0MC42LTQwLjZsMC0zNjYuOEM0NDggNTAuMiA0MjkuOCAzMiA0MDcuNCAzMnpNMTc2LjEgMTQ1LjZjLjQgMjMuNC0yMi40IDI3LjMtMjYuNiAyNy40LTE0LjkgMC0yNy4xLTEyLTI3LjEtMjcgLjEtMzUuMiA1My4xLTM1LjUgNTMuNy0uNHpNMzMyLjggMzc3Yy02NS42IDAtMzQuMS03NC0yNS0xMDYuNiAxNC4xLTQ2LjQtNDUuMi01OS01OS45IC43bC0yNS44IDEwMy4zLTQ1LjEgMCA4LjEtMzIuNWMtMzEuNSA1MS44LTk0LjYgNDQuNC05NC42LTQuMyAuMS0xNC4zIC45LTE0IDIzLTEwNC4xbC0zMS44IDAgOS43LTM1LjYgNzYuNCAwYy0zMy42IDEzMy43LTMyLjYgMTI2LjktMzIuOSAxMzguMiAwIDIwLjkgNDAuOSAxMy41IDU3LjQtMjMuMmwxOS44LTc5LjQtMzIuMyAwIDkuNy0zNS42IDY4LjggMC04LjkgNDAuNWM0MC41LTc1LjUgMTI3LjktNDcuOCAxMDEuOCAzOC0xNC4yIDUxLjEtMTQuNiA1MC43LTE0LjkgNTguOCAwIDE1LjUgMTcuNSAyMi42IDMxLjgtMTYuOUwzODYgMzI1Yy0xMC41IDM2LjctMjkuNCA1Mi01My4yIDUyeiJdfSxJdHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZmFjZWJvb2stZiIsaWNvbjpbMzIwLDUxMixbXSwiZjM5ZSIsIk04MCAyOTkuM2wwIDIxMi43IDExNiAwIDAtMjEyLjcgODYuNSAwIDE4LTk3LjgtMTA0LjUgMCAwLTM0LjZjMC01MS43IDIwLjMtNzEuNSA3Mi43LTcxLjUgMTYuMyAwIDI5LjQgLjQgMzcgMS4ybDAtODguN0MyOTEuNCA0IDI1Ni40IDAgMjM2LjIgMCAxMjkuMyAwIDgwIDUwLjUgODAgMTU5LjRsMCA0Mi4xLTY2IDAgMCA5Ny44IDY2IDB6Il19LE50cj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJjZW50b3MiLGljb246WzQ0OCw1MTIsW10sImY3ODkiLCJNMjg5LjYgOTcuNWwzMS42IDMxLjctNzYuMyA3Ni41IDAtMTA4LjIgNDQuNyAwek0xMjcuMiAxMjkuMmw3Ni4zIDc2LjUgMC0xMDguMi00NC43IDAtMzEuNiAzMS43em00MS41LTQxLjZsNDQuNyAwIDAgMTI3LjkgMTAuOCAxMC44IDEwLjgtMTAuOCAwLTEyNy45IDQ0LjcgMC01NS41LTU1LjYtNTUuNSA1NS42em0yNi4yIDE2OC4xbC0xMC44LTEwLjgtMTI4LjYgMCAwLTQ0LjgtNTUuNSA1NS42IDU1LjUgNTUuNiAwLTQ0LjggMTI4LjYgMCAxMC44LTEwLjh6TTI3NC4yIDIzNWwxMDcuOSAwIDAtNDQuOC0zMS42LTMxLjctNzYuMyA3Ni41em0xNzMuMyAyMC43bC01NS41LTU1LjYgMCA0NC44LTEyNy43IDAtMTAuOCAxMC44IDEwLjggMTAuOCAxMjcuNyAwIDAgNDQuOCA1NS41LTU1LjZ6TTY1LjQgMTc2LjJsMzIuNS0zMS43IDkwLjMgOTAuNSAxNS4zIDAgMC0xNS4zLTkwLjMtOTAuNSAzMS42LTMxLjctNzkuNCAwIDAgNzguN3pNMzgyLjEgOTcuNWwtNzguNSAwIDMxLjYgMzEuNy05MC4zIDkwLjUgMCAxNS4zIDE1LjMgMCA5MC4zLTkwLjUgMzEuNiAzMS43IDAtNzguN3pNMjAzLjUgNDEzLjlsMC0xMDguMS03Ni4zIDc2LjUgMzEuNiAzMS43IDQ0LjcgMCAwLS4xek02NS40IDIzNWwxMDguOCAwLTc2LjMtNzYuNS0zMi41IDMxLjcgMCA0NC44ek0zODIuMSAzMzUuMmwtMzEuNiAzMS43LTkwLjMtOTAuNS0xNS4zIDAgMCAxNS4zIDkwLjMgOTAuNS0zMS42IDMxLjcgNzguNSAwIDAtNzguN3ptMC01OC44bC0xMDcuOSAwIDc2LjMgNzYuNSAzMS42LTMxLjcgMC00NC44ek0zMjEuMiAzODIuMmwtNzYuMy03Ni41IDAgMTA4LjEgNDQuNyAwIDMxLjYtMzEuNnpNOTcuOSAzNTIuOWw3Ni4zLTc2LjUtMTA4LjggMCAwIDQ0LjggMzIuNSAzMS43em0xODEuOCA3MC45bC00NC43IDAgMC0xMjcuOS0xMC44LTEwLjgtMTAuOCAxMC44IDAgMTI3LjktNDQuNyAwIDU1LjUgNTUuNiA1NS41LTU1LjZ6TTExMy4yIDM4Mi4ybDkwLjMtOTAuNSAwLTE1LjMtMTUuMyAwLTkwLjMgOTAuNS0zMi41LTMxLjcgMCA3OC43IDc5LjQgMC0zMS42LTMxLjd6Il19LEZ0cj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJzY2FsZXdheSIsaWNvbjpbNDQ4LDUxMixbXSwiZTg1OSIsIk0yNDMuNCAxMTcuM2wtODQuMyAwYy0xOC41IDIuMS0zMi43IDE3LjUtMzMuNCAzNmwwIDEyMS45YzAgOC4yIDMuMiAxNS4zIDguNSAyMC43czEyLjUgOC42IDIwLjYgOC42YzE2IDAgMjkuMi0xMy4yIDI5LjItMjkuMmwwLTc3LjRjMC0xMi4xIDEwLTIyLjEgMjIuMS0yMi4xbDM4LjEgMGM4LjIgMCAxNS4zLTMuMiAyMC42LTguNnM4LjUtMTIuOCA4LjUtMjFjMC0xNi0xMy45LTI4LjktMjkuOS0yOC45ek0yMDUuMyAzOTUuNGw4NC4zIDBjMTguNS0yLjEgMzIuNy0xNy41IDMzLjQtMzZsMC0xMjEuOWMwLTguMi0zLjItMTUuMy04LjUtMjAuN3MtMTIuNS04LjYtMjAuNi04LjZjLTE2IDAtMjkuMiAxMy4yLTI5LjIgMjkuMmwwIDc3LjRjMCAxMi4xLTEwIDIyLjEtMjIuMSAyMi4xbC0zOC4xIDBjLTguMiAwLTE1LjMgMy4yLTIwLjYgOC42cy04LjUgMTIuOC04LjUgMjFjLjQgMTYgMTMuOSAyOC45IDI5LjkgMjguOXpNMTA0LjMgMEwyNTcuNiAwYzEwMSAwIDE4Mi41IDgxLjYgMTgyLjEgMTgyLjlsMCAyNDIuOGMtNC42IDQ2LTQyIDgyLjQtODguMiA4Ni4zTDE5MCA1MTJDODkuMyA1MTIgNy41IDQzMCA3LjUgMzI5LjFMNy41IDk3YzAtNTMuNSA0My40LTk3IDk2LjgtOTd6TTM4MS43IDE4Mi45YzAtNjguNS01NS45LTEyNC40LTEyNC4yLTEyNC40bC0xNTMgMEM4My4zIDU4LjUgNjYuMiA3NS42IDY2LjIgOTdsMCAyMzIuMWMwIDY4LjggNTUuNSAxMjQuNCAxMjQuMiAxMjQuNGwxNTguNyAwYzE2LjctMi4xIDI5LjktMTUgMzIuNy0zMS40bDAtMjM5LjJ6Il19LE90cj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJjYy1hbWF6b24tcGF5IixpY29uOls1NzYsNTEyLFtdLCJmNDJkIiwiTTEyNC43IDIwMS44Yy4xLTExLjggMC0yMy41IDAtMzUuM2wwLTM1LjNjMC0xLjMgLjQtMiAxLjQtMi43IDExLjUtOCAyNC4xLTEyLjEgMzguMi0xMS4xIDEyLjUgLjkgMjIuNyA3IDI4LjEgMjEuNyAzLjMgOC45IDQuMSAxOC4yIDQuMSAyNy43IDAgOC43LS43IDE3LjMtMy40IDI1LjYtNS43IDE3LjgtMTguNyAyNC43LTM1LjcgMjMuOS0xMS43LS41LTIxLjktNS0zMS40LTExLjctLjktLjgtMS40LTEuNi0xLjMtMi44em0xNTQuOSAxNC42YzQuNiAxLjggOS4zIDIgMTQuMSAxLjUgMTEuNi0xLjIgMjEuOS01LjcgMzEuMy0xMi41IC45LS42IDEuMy0xLjMgMS4zLTIuNS0uMS0zLjkgMC03LjkgMC0xMS44IDAtNC0uMS04IDAtMTIgMC0xLjQtLjQtMi0xLjgtMi4yLTctLjktMTMuOS0yLjItMjAuOS0yLjktNy0uNi0xNC0uMy0yMC44IDEuOS02LjcgMi4yLTExLjcgNi4yLTEzLjcgMTMuMS0xLjYgNS40LTEuNiAxMC44IC4xIDE2LjIgMS42IDUuNSA1LjIgOS4yIDEwLjQgMTEuMnpNNTc2IDgwbDAgMzUyYzAgMjYuNS0yMS41IDQ4LTQ4IDQ4TDQ4IDQ4MGMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhMMCA4MEMwIDUzLjUgMjEuNSAzMiA0OCAzMmw0ODAgMGMyNi41IDAgNDggMjEuNSA0OCA0OHpNMzY4LjUgMTAzLjljLjQgMS43IC45IDMuNCAxLjYgNS4xIDE2LjUgNDAuNiAzMi45IDgxLjMgNDkuNSAxMjEuOSAxLjQgMy41IDEuNyA2LjQgLjIgOS45LTIuOCA2LjItNC45IDEyLjYtNy44IDE4LjctMi42IDUuNS02LjcgOS41LTEyLjcgMTEuMi00LjIgMS4xLTguNSAxLjMtMTIuOSAuOS0yLjEtLjItNC4yLS43LTYuMy0uOC0yLjgtLjItNC4yIDEuMS00LjMgNC0uMSAyLjgtLjEgNS42IDAgOC4zIC4xIDQuNiAxLjYgNi43IDYuMiA3LjUgNC43IC44IDkuNCAxLjYgMTQuMiAxLjcgMTQuMyAuMyAyNS43LTUuNCAzMy4xLTE3LjkgMi45LTQuOSA1LjYtMTAuMSA3LjctMTUuNCAxOS44LTUwLjEgMzkuNS0xMDAuMyA1OS4yLTE1MC41IC42LTEuNSAxLjEtMyAxLjMtNC42IC40LTIuNC0uNy0zLjYtMy4xLTMuNy01LjYtLjEtMTEuMSAwLTE2LjcgMC0zLjEgMC01LjMgMS40LTYuNCA0LjMtLjQgMS4xLS45IDIuMy0xLjMgMy40bC0yOS4xIDgzLjdjLTIuMSA2LjEtNC4yIDEyLjEtNi41IDE4LjYtLjQtLjktLjYtMS40LS44LTEuOS0xMC44LTI5LjktMjEuNi01OS45LTMyLjQtODkuOC0xLjctNC43LTMuNS05LjUtNS4zLTE0LjItLjktMi41LTIuNy00LTUuNC00LTYuNC0uMS0xMi44LS4yLTE5LjItLjEtMi4yIDAtMy4zIDEuNi0yLjggMy43ek0yNDIuNCAyMDZjMS43IDExLjcgNy42IDIwLjggMTggMjYuNiA5LjkgNS41IDIwLjcgNi4yIDMxLjcgNC42IDEyLjctMS45IDIzLjktNy4zIDMzLjgtMTUuNSAuNC0uMyAuOC0uNiAxLjQtMSAuNSAzLjIgLjkgNi4yIDEuNSA5LjIgLjUgMi42IDIuMSA0LjMgNC41IDQuNCA0LjYgLjEgOS4xIC4xIDEzLjcgMCAyLjMtLjEgMy44LTEuNiA0LTMuOSAuMS0uOCAuMS0xLjYgLjEtMi4zbDAtODguOGMwLTMuNi0uMi03LjItLjctMTAuOC0xLjYtMTAuOC02LjItMTkuNy0xNS45LTI1LjQtNS42LTMuMy0xMS44LTUtMTguMi01LjktMy0uNC02LS43LTkuMS0xLjFsLTEwIDBjLS44IC4xLTEuNiAuMy0yLjUgLjMtOC4yIC40LTE2LjMgMS40LTI0LjIgMy41LTUuMSAxLjMtMTAgMy4yLTE1IDQuOS0zIDEtNC41IDMuMi00LjQgNi41IC4xIDIuOC0uMSA1LjYgMCA4LjMgLjEgNC4xIDEuOCA1LjIgNS43IDQuMSA2LjUtMS43IDEzLjEtMy41IDE5LjctNC44IDEwLjMtMS45IDIwLjctMi43IDMxLjEtMS4yIDUuNCAuOCAxMC41IDIuNCAxNC4xIDcgMy4xIDQgNC4yIDguOCA0LjQgMTMuNyAuMyA2LjkgLjIgMTMuOSAuMyAyMC44IDAgLjQtLjEgLjctLjIgMS4yLS40IDAtLjggMC0xLjEtLjEtOC44LTIuMS0xNy43LTMuNi0yNi44LTQuMS05LjUtLjUtMTguOSAuMS0yNy45IDMuMi0xMC44IDMuOC0xOS41IDEwLjMtMjQuNiAyMC44LTQuMSA4LjMtNC42IDE3LTMuNCAyNS44ek05OC43IDEwNi45bDAgMTc1LjNjMCAuOCAwIDEuNyAuMSAyLjUgLjIgMi41IDEuNyA0LjEgNC4xIDQuMiA1LjkgLjEgMTEuOCAuMSAxNy43IDAgMi41IDAgNC0xLjcgNC4xLTQuMSAuMS0uOCAuMS0xLjcgLjEtMi41bDAtNjAuN2MuOSAuNyAxLjQgMS4yIDEuOSAxLjYgMTUgMTIuNSAzMi4yIDE2LjYgNTEuMSAxMi45IDE3LjEtMy40IDI4LjktMTMuOSAzNi43LTI5LjIgNS44LTExLjYgOC4zLTI0LjEgOC43LTM3IC41LTE0LjMtMS0yOC40LTYuOC00MS43LTcuMS0xNi40LTE4LjktMjcuMy0zNi43LTMwLjktMi43LS42LTUuNS0uOC04LjItMS4ybC03IDBjLTEuMiAuMi0yLjQgLjMtMy42IC41LTExLjcgMS40LTIyLjMgNS44LTMxLjggMTIuNy0yIDEuNC0zLjkgMy01LjkgNC41LS4xLS41LS4zLS44LS40LTEuMi0uNC0yLjMtLjctNC42LTEuMS02LjktLjYtMy45LTIuNS01LjUtNi40LTUuNmwtOS43IDBjLTUuOS0uMS02LjkgMS02LjkgNi44ek00OTMuNiAzMzljLTIuNy0uNy01LjEgMC03LjYgMS00My45IDE4LjQtODkuNSAzMC4yLTEzNi44IDM1LjgtMTQuNSAxLjctMjkuMSAyLjgtNDMuNyAzLjItMjYuNiAuNy01My4yLS44LTc5LjYtNC4zLTE3LjgtMi40LTM1LjUtNS43LTUzLTkuOS0zNy04LjktNzIuNy0yMS43LTEwNi43LTM4LjgtOC44LTQuNC0xNy40LTkuMy0yNi4xLTE0LTMuOC0yLjEtNi4yLTEuNS04LjIgMi4xbDAgMS43YzEuMiAxLjYgMi4yIDMuNCAzLjcgNC44IDM2IDMyLjIgNzYuNiA1Ni41IDEyMiA3Mi45IDIxLjkgNy45IDQ0LjQgMTMuNyA2Ny4zIDE3LjUgMTQgMi4zIDI4IDMuOCA0Mi4yIDQuNSAzIC4xIDYgLjIgOSAuNCAuNyAwIDEuNCAuMiAyLjEgLjNsMTcuNyAwYy43LS4xIDEuNC0uMyAyLjEtLjMgMTQuOS0uNCAyOS44LTEuOCA0NC42LTQgMjEuNC0zLjIgNDIuNC04LjEgNjIuOS0xNC43IDI5LjYtOS42IDU3LjctMjIuNCA4My40LTQwLjEgMi44LTEuOSA1LjctMy44IDgtNi4yIDQuMy00LjQgMi4zLTEwLjQtMy4zLTExLjl6TTU0NCAzMTEuM2MtLjgtNC4yLTQtNS44LTcuNi03LTUuNy0xLjktMTEuNi0yLjgtMTcuNi0zLjMtMTEtLjktMjItLjQtMzIuOCAxLjYtMTIgMi4yLTIzLjQgNi4xLTMzLjUgMTMuMS0xLjIgLjgtMi40IDEuOC0zLjEgMy0uNiAuOS0uNyAyLjMtLjUgMy40IC4zIDEuMyAxLjcgMS42IDMgMS41IC42IDAgMS4yIDAgMS44LS4xbDE5LjUtMi4xYzkuNi0uOSAxOS4yLTEuNSAyOC44LS44IDQuMSAuMyA4LjEgMS4yIDEyIDIuMiA0LjMgMS4xIDYuMiA0LjQgNi40IDguNyAuMyA2LjctMS4yIDEzLjEtMi45IDE5LjUtMy41IDEyLjktOC4zIDI1LjQtMTMuMyAzNy44LS4zIC44LS43IDEuNy0uOCAyLjUtLjQgMi41IDEgNCAzLjQgMy41IDEuNC0uMyAzLTEuMSA0LTIuMSAzLjctMy42IDcuNS03LjIgMTAuNi0xMS4yIDEwLjctMTMuOCAxNy0yOS42IDIwLjctNDYuNiAuNy0zIDEuMi02LjEgMS43LTkuMSAuMi00LjcgLjItOS42IC4yLTE0LjV6Il19LFJ0cj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJlYmF5IixpY29uOls2NDAsNTEyLFtdLCJmNGY0IiwiTTYwNi41IDE4OS41bC01NC44IDEwOS45LTU0LjktMTA5LjktMzcuNSAwIDEwLjkgMjAuNmMtMTEuNS0xOS0zNS45LTI2LTYzLjMtMjYtMzEuOCAwLTY3LjkgOC43LTcxLjUgNDMuMWwzMy43IDBjMS40LTEzLjggMTUuNy0yMS44IDM1LTIxLjggMjYgMCA0MSA5LjYgNDEgMzNsMCAzLjRjLTEyLjcgMC0yOCAuMS00MS43IC40LTQyLjQgLjktNjkuNiAxMC03Ni43IDM0LjQgMS01LjIgMS41LTEwLjYgMS41LTE2LjIgMC01Mi4xLTM5LjctNzYuMi03NS40LTc2LjItMjEuMyAwLTQzIDUuNS01OC43IDI0LjJsMC04MC42LTMyLjEgMCAwIDE2OS41YzAgMTAuMy0uNiAyMi45LTEuMSAzMy4xbDMxLjUgMGMuNy02LjMgMS4xLTEyLjkgMS4xLTE5LjUgMTMuNiAxNi42IDM1LjQgMjQuOSA1OC43IDI0LjkgMzYuOSAwIDY0LjktMjEuOSA3My4zLTU0LjItLjUgMi44LS43IDUuOC0uNyA5IDAgMjQuMSAyMS4xIDQ1IDYwLjYgNDUgMjYuNiAwIDQ1LjgtNS43IDYxLjktMjUuNSAwIDYuNiAuMyAxMy4zIDEuMSAyMC4ybDI5LjggMGMtLjctOC4yLTEtMTcuNS0xLTI2LjhsMC02NS42YzAtOS4zLTEuNy0xNy4yLTQuOC0yMy44bDYxLjUgMTE2LjEtMjguNSA1NC4xIDM1LjkgMCA5OS4yLTE5NC44LTM0IDB6TTI0NC4yIDMxMy44Yy0yOS42IDAtNTAuMi0yMS41LTUwLjItNTMuOCAwLTMyLjQgMjAuNi01My44IDUwLjItNTMuOCAyOS44IDAgNTAuMiAyMS40IDUwLjIgNTMuOCAwIDMyLjMtMjAuNCA1My44LTUwLjIgNTMuOHptMjAwLjktNDcuM2MwIDMwLTE3LjkgNDguNC01MS42IDQ4LjQtMjUuMSAwLTM1LTEzLjQtMzUtMjUuOCAwLTE5LjEgMTguMS0yNC40IDQ3LjItMjUuMyAxMy4xLS41IDI3LjYtLjYgMzkuNC0uNmwwIDMuM3pNMzMuMiAyNjguMWwxMjguOCAwIDAtOC41YzAtNTEuNy0zMy4xLTc1LjQtNzguNC03NS40LTU2LjggMC04MyAzMC44LTgzIDc3LjYgMCA0Mi41IDI1LjMgNzQgODIuNSA3NCAzMS40IDAgNjgtMTEuNyA3NC40LTQ2LjFsLTMzLjEgMGMtMTIgMzUuOC04Ny43IDM2LjctOTEuMi0yMS42em05NS0yMS40bC05NC40IDBjNi45LTU2LjYgOTIuMS01NC43IDk0LjQgMHoiXX0sQnRyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImNvbnRhbyIsaWNvbjpbNTEyLDUxMixbXSwiZjI2ZCIsIk00NS40IDMwNWMxNC40IDY3LjEgMjYuNCAxMjkgNjguMiAxNzVMMzQgNDgwYy0xOC43IDAtMzQtMTUuMi0zNC0zNEwwIDY2QzAgNDcuMyAxNS4yIDMyIDM0IDMybDU3LjcgMGMtMTMuOCAxMi42LTI2LjEgMjcuMi0zNi45IDQzLjYtNDUuNCA3MC0yNyAxNDYuOC05LjQgMjI5LjR6TTQ3OCAzMmwtOTAuMiAwYzIxLjQgMjEuNCAzOS4yIDQ5LjUgNTIuNyA4NC4xTDMwMy40IDE0NS40Yy0xNC45LTI5LTM3LjgtNTMuMy04Mi42LTQzLjktMjQuNiA1LjMtNDEgMTkuMy00OC4zIDM0LjYtOC44IDE4LjctMTMuMiAzOS44IDguMiAxNDAuMyAyMS4xIDEwMC4yIDMzLjcgMTE3LjcgNDkuNSAxMzEuMiAxMi45IDExLjEgMzMuNCAxNyA1OC4zIDExLjcgNDQuNS05LjQgNTUuNy00MC43IDU3LjQtNzMuMmwxMzcuNC0yOS42YzMuMiA3MS41LTE4LjcgMTI1LjItNTcuNCAxNjMuNmw1Mi4xIDBjMTguNyAwIDM0LTE1LjIgMzQtMzRMNTEyIDY2YzAtMTguOC0xNS4yLTM0LTM0LTM0eiJdfSxIdHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZWxsbyIsaWNvbjpbNTEyLDUxMixbXSwiZjVmMSIsIk0yNTYgOGEyNDggMjQ4IDAgMSAwIDAgNDk2IDI0OCAyNDggMCAxIDAgMC00OTZ6TTM5OS44IDI5My4yQzM4My4zIDM1OC41IDMyMy44IDQwNC44IDI1NiA0MDQuOFMxMjguNyAzNTguNSAxMTIuMiAyOTMuMmMtMS42LTcuNCAyLjUtMTUuNyA5LjktMTcuNHMxNS43IDIuNSAxNy40IDkuOWMxNCA1Mi45IDYyIDkwLjEgMTE2LjYgOTAuMXMxMDIuNS0zNy4yIDExNi42LTkwLjFjMS43LTcuNCA5LjktMTIuNCAxNy40LTkuOSA3LjQgMS43IDEyLjQgOS45IDkuOSAxNy40eiJdfSxxdHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic2lzdHJpeCIsaWNvbjpbNDQ4LDUxMixbXSwiZjNlZSIsIk00NDggNDQ5TDMwMS4yIDMwMC4yYzIwLTI3LjkgMzEuOS02Mi4yIDMxLjktOTkuMiAwLTkzLjEtNzQuNy0xNjguOS0xNjYuNS0xNjguOS05MS45LS4xLTE2Ni42IDc1LjctMTY2LjYgMTY4LjhTNzQuNyAzNjkuOCAxNjYuNSAzNjkuOGMzOS44IDAgNzYuMy0xNC4yIDEwNS0zNy45TDQxNy41IDQ4MCA0NDggNDQ5ek0xNjYuNSAzMzAuOGMtNzAuNiAwLTEyOC4xLTU4LjMtMTI4LjEtMTI5LjlTOTUuOSA3MSAxNjYuNSA3MSAyOTQuNiAxMjkuMyAyOTQuNiAyMDAuOSAyMzcuMiAzMzAuOCAxNjYuNSAzMzAuOHoiXX0sanRyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InBlcmlzY29wZSIsaWNvbjpbNDQ4LDUxMixbXSwiZjNkYSIsIk0zNzAgNjMuNmMtMzguNi00MS04OS41LTYzLjYtMTQzLjQtNjMuNi0xMTQuNyAwLTIwOC4xIDk2LjItMjA4LjEgMjE0LjQgMCA3NS4xIDU3LjggMTU5LjggODIuNyAxOTIuNyAzNi42IDQ4LjQgOTEuNCAxMDQuOSAxMjUuNCAxMDQuOSA0MS42IDAgMTEyLjktOTQuMiAxMjAuOS0xMDUgMjQuNi0zMy4xIDgyLTExOC4zIDgyLTE5Mi42IDAtNTYuNS0yMS4xLTExMC4xLTU5LjUtMTUwLjh6TTIyNi42IDQ5My45Yy00Mi41IDAtMTkwLTE2Ny4zLTE5MC0yNzkuNCAwLTEwNy40IDgzLjktMTk2LjMgMTkwLTE5Ni4zIDEwMC44IDAgMTg0LjcgODkgMTg0LjcgMTk2LjMgLjEgMTEyLjEtMTQ3LjQgMjc5LjQtMTg0LjcgMjc5LjR6TTMzOCAyMDYuOGMwIDU5LjEtNTEuMSAxMDkuNy0xMTAuOCAxMDkuNy0xMDAuNiAwLTE1MC43LTEwOC4yLTkyLjktMTgxLjhsMCAuNGMwIDI0LjUgMjAuMSA0NC40IDQ0LjggNDQuNHM0NC44LTE5LjkgNDQuOC00NC40YzAtMTguMi0xMS4xLTMzLjgtMjYuOS00MC43IDc2LjYtMTkuMiAxNDEgMzkuMyAxNDEgMTEyLjR6Il19LFZ0cj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJleHBlZGl0ZWRzc2wiLGljb246WzUxMiw1MTIsW10sImYyM2UiLCJNMjU2IDQzLjRhMjEyLjYgMjEyLjYgMCAxIDAgMCA0MjUuMiAyMTIuNiAyMTIuNiAwIDEgMCAwLTQyNS4yek0xNTguNiAxNzYuM2MwLTUzLjcgNDMuNy05Ny40IDk3LjQtOTcuNHM5Ny40IDQzLjcgOTcuNCA5Ny40bDAgMjYuNmMwIDUtMy45IDguOS04LjkgOC45bC0xNy43IDBjLTUgMC04LjktMy45LTguOS04LjlsMC0yNi42YzAtODIuMS0xMjQtODIuMS0xMjQgMGwwIDI2LjZjMCA1LTMuOSA4LjktOC45IDguOWwtMTcuNyAwYy01IDAtOC45LTMuOS04LjktOC45bDAtMjYuNiAuMiAwek0zOTcuNyAzODBjMCA5LjctOCAxNy43LTE3LjcgMTcuN2wtMjQ4IDBjLTkuNyAwLTE3LjctOC0xNy43LTE3LjdsMC0xNDEuN2MwLTkuNyA4LTE3LjcgMTcuNy0xNy43bDI0OCAwYzkuNyAwIDE3LjcgOCAxNy43IDE3LjdsMCAxNDEuN3ptLTI0OC0xMzcuM2wwIDEzMi45YzAgMi41LTEuOSA0LjQtNC40IDQuNGwtOC45IDBjLTIuNSAwLTQuNC0xLjktNC40LTQuNGwwLTEzMi45YzAtMi41IDEuOS00LjQgNC40LTQuNGw4LjkgMGMyLjUgMCA0LjQgMS45IDQuNCA0LjR6bTE0MS43IDQ4LjdjMCAxMy03LjIgMjQuNC0xNy43IDMwLjRsMCAzMS42YzAgNS0zLjkgOC45LTguOSA4LjlsLTE3LjcgMGMtNSAwLTguOS0zLjktOC45LTguOWwwLTMxLjZjLTEwLjUtNi4xLTE3LjctMTcuNC0xNy43LTMwLjQgMC0xOS43IDE1LjgtMzUuNCAzNS40LTM1LjRzMzUuNSAxNS44IDM1LjUgMzUuNHpNMjU2IDhhMjQ4IDI0OCAwIDEgMCAwIDQ5NiAyNDggMjQ4IDAgMSAwIDAtNDk2em0wIDE3LjdhMjMwLjMgMjMwLjMgMCAxIDEgMCA0NjAuNiAyMzAuMyAyMzAuMyAwIDEgMSAwLTQ2MC42eiJdfSxVdHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToibmFwc3RlciIsaWNvbjpbNTEyLDUxMixbXSwiZjNkMiIsIk0zMDYuMyAzNzMuNmMtMTQuMiAxMy42LTMxLjMgMjQuMS01MC40IDMwLjUtMTktNi40LTM2LjItMTYuOS01MC4zLTMwLjVsMTAwLjcgMHptNDQtMTk5LjZjMjAtMTYuOSA0My42LTI5LjIgNjkuNi0zNi4ybDAgMTYxLjJjMCAyMTkuNC0zMjggMjE3LjYtMzI4IC4zbDAtMTYxLjZjMjUuOSA2LjkgNDkuNiAxOS42IDY5LjUgMzYuNCA1Ni44LTQwIDEzMi41LTM5LjkgMTg4LjktLjF6TTE0MS41IDExNS41YzY0LjQtNjAgMTY0LjMtNjAuMSAyMjguOS0uMi03LjEgMy41LTEzLjkgNy4zLTIwLjYgMTEuNS01OC43LTMwLjUtMTI5LjItMzAuNC0xODcuOSAuMS02LjMtNC0xMy45LTguMi0yMC40LTExLjR6TTUxLjggOTMuMmwwIDY5LjNjLTU4LjQgMzYuNS01OC40IDEyMS4xIC4xIDE1OC4zIDI2LjQgMjQ1LjEgMzgxLjcgMjQwLjMgNDA3LjYgMS41bC4zLTEuN2M1OC43LTM2LjMgNTguOS0xMjEuNyAuMi0xNTguMmwwLTY5LjJjLTE3LjMgLjUtMzQgMy01MC4xIDcuNC04Mi05MS41LTIyNS41LTkxLjUtMzA3LjUgLjEtMTYuMy00LjQtMzMuMS03LTUwLjYtNy41ek0yNjcuMiAzNTJzMzYtLjMgNjEuMy0xLjVjMTAuMi0uNSAyMS4xLTQgMjUuNS02LjUgMjYuMy0xNS4xIDI1LjQtMzkuMiAyNi4yLTQ3LjQtNzkuNS0uNi05OS45LTMuOS0xMTMgNTUuNHpNMTMxLjcgMjk2LjdjLjggOC4yLS4xIDMyLjMgMjYuMiA0Ny40IDQuNCAyLjUgMTUuMiA2IDI1LjUgNi41IDI1LjMgMS4xIDYxLjMgMS41IDYxLjMgMS41LTEzLjItNTkuNC0zMy43LTU2LjEtMTEzLTU1LjR6TTMwMC44IDQyMC4xYy0zLjItNS4zLTYuOS03LjMtNi45LTcuMy0yNC44IDcuMy01Mi4yIDYuOS03NS45IDAgMCAwLTIuOSAxLjUtNi40IDYuNi0yLjggNC4xLTMuNyA5LjYtMy43IDkuNiAyOS4xIDE3LjYgNjcuMSAxNy42IDk2LjIgMC0uMS0uMS0uMy00LTMuMy04Ljl6Il19LFd0cj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJkZWxpY2lvdXMiLGljb246WzQ0OCw1MTIsW10sImYxYTUiLCJNNDQ2LjYgNjhjLS40LTEuNS0uOS0zLTEuNC00LjUtLjktMi41LTItNC44LTMuMy03LjEtMS40LTIuNC0zLTQuOC00LjctNi45LTIuMS0yLjUtNC40LTQuOC02LjktNi44LTEuMS0uOS0yLjItMS43LTMuMy0yLjUtMS4zLS45LTIuNi0xLjctNC0yLjQtMS44LTEtMy42LTEuOC01LjUtMi41LTEuNy0uNy0zLjUtMS4zLTUuNC0xLjctMy44LTEtNy45LTEuNS0xMi0xLjVsLTM1MiAwQzIxLjYgMzIgLjEgNTMuNSAuMSA4MGwwIDM1MmMwIDQuMSAuNSA4LjIgMS41IDEyIDIgNy43IDUuOCAxNC42IDExIDIwLjMgMSAxLjEgMi4xIDIuMiAzLjMgMy4zIDUuNyA1LjIgMTIuNiA5IDIwLjMgMTEgMy44IDEgNy45IDEuNSAxMiAxLjVsMzUyIDBjMjYuNSAwIDQ4LTIxLjUgNDgtNDhsMC0zNTIuMWMtLjEtNC4xLS42LTguMi0xLjYtMTJ6TTQxNi4xIDQzMmMwIDguOC03LjIgMTYtMTYgMTZsLTE3NiAwIDAtMTkyLTE5MiAwIDAtMTc2YzAtOC44IDcuMi0xNiAxNi0xNmwxNzYgMCAwIDE5MiAxOTIgMCAwIDE3NnoiXX0sR3RyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Imd1aWxkZWQiLGljb246WzQ0OCw1MTIsW10sImUwN2UiLCJNNDQzLjkgNjRMNSA2NGMwIDEwMy4zIDIyLjIgMTgwLjEgNDMuNCAyMjIuNCA2NC4xIDEyNy44IDE3NiAxNjEuNiAxNzcuMyAxNjEuNiA1NS43LTIwLjUgMTA0LjUtNTYuMyAxNDAuNi0xMDMuNSAyNS45LTMzLjkgNTMuMS04Ny4yIDY1LjktMTQ1LjhsLTI1OS45IDBjNC4xIDM2LjQgMjIuMiA2Ny45IDQ1LjEgODYuOWw4OC42IDBjLTE3IDI4LjItNDguMiA1NC40LTgwLjUgNjkuNS0zMS4yLTEzLjMtNjkuMS00Ni41LTk2LjUtOTguNC0yNi43LTUzLjgtMjcuMS0xMDUuOS0yNy4xLTEwNS45bDMzNi4xIDBjNC0yOC44IDUuOS01Ny45IDUuOS04Ni45eiJdfSxZdHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToib2JzaWRpYW4iLGljb246WzM4NCw1MTIsW10sImU4NzkiLCJNMTQyLjMgMzIwLjNjMzYuMS04LjIgNzAuMy0xMSAxMDEuMyAuNyAzMS44IDExLjkgNjEuNyAzOS42IDg2LjcgOTYtOC4xIDE3LjctMTIuNCAzNi45LTE0LjcgNTMuOC0zLjEgMjIuOS0yNS40IDQwLjctNDcuNyAzNC42LTMxLjctOC43LTY4LjMtMjIuMy0xMDEuMy0yNC45LTQuNC0uMy01MC42LTMuOC01MC42LTMuOC0xLjctLjEtMy40LS40LTUuMS0uOCAzMS41LTY0LjIgMzguMi0xMTUuMSAzMS4zLTE1NS40ek01NSAyMTkuNWMyMi4zIDE0LjggNDkuNSAzNy44IDY0LjEgNzMuNiAxNi4xIDM5LjQgMTcuOCA5NS43LTIxLjYgMTc2LjEtMS0uOC0yLjEtMS43LTMtMi43TDcuNCAzNzYuOGMtOS41LTkuOC0xMi4xLTI0LjQtNi41LTM2LjkgLjYtMS4zIDQ0LjYtOTguMyA1NC4xLTEyMC40em0yNjQuMy05MS4zYzQuOSA2LjIgNy40IDE0IDcuNCAyMS45IC4xIDIwLjggMS44IDYzLjYgMTMuMyA5MS4yIDExLjIgMjYuOCAzMS44IDU1LjggNDIuNSA3MCA0LjEgNS41IDQuOCAxMi45IDEuMyAxOC43LTcuNiAxMi44LTIyLjYgMzcuNS00My44IDY5LjItLjMgLjQtLjYgLjktLjggMS4zLTI1LjItNTIuMi01NS45LTgwLjctOTAuNC05My42LTkuNi0zLjYtMTkuNS02LTI5LjQtNy4zLTE3LjgtNDUuOC0yMy4yLTc5LjctMjItMTA2LjQgMS4yLTI3LjQgOS4yLTQ3LjggMTguMi02Ni4zIDguOS0xOC4xIDE5LjgtMzUuOSAyNC45LTU1LjcgMy4yLTEyLjUgNC4yLTI1LjggMS43LTQwLjlsNzcuMSA5OHpNMTg0LjIgMTQuMWMxMC4zLTkuMiAyNC42LTEwLjggMzYuMy01LjUgOS42IDI0LjYgOS43IDQyLjggNS42IDU4LjgtNC42IDE3LjgtMTQuMSAzMy0yMy45IDUyLjgtOS42IDE5LjUtMTguNCA0Mi0xOS43IDcyLjMtMS4yIDI3LjkgNC4xIDYxLjkgMjAuNCAxMDUuOC0yMS0uNi00Mi41IDIuNi02My43IDcuNC0xLjctNi40LTMuOC0xMi40LTYuMS0xOC4yLTE3LjMtNDIuMi00OS45LTY3LjktNzQuMS04My4zIDMuMS0xOC43IDguMi01NS40IDExLjYtNzcuNSAxLjItNy42IDQuOS0xNC42IDEwLjctMTkuOEwxODQuMiAxNC4xeiJdfSxadHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToieGJveCIsaWNvbjpbNTEyLDUxMixbXSwiZjQxMiIsIk0zNjkuOSAzMTguMmM0NC4zIDU0LjMgNjQuNyA5OC44IDU0LjQgMTE4LjctNy45IDE1LjEtNTYuNyA0NC42LTkyLjYgNTUuOS0yOS42IDkuMy02OC40IDEzLjMtMTAwLjQgMTAuMi0zOC4yLTMuNy03Ni45LTE3LjQtMTEwLjEtMzktMjcuOS0xOC4yLTM0LjItMjUuNy0zNC4yLTQwLjYgMC0yOS45IDMyLjktODIuMyA4OS4yLTE0Mi4xIDMyLTMzLjkgNzYuNS03My43IDgxLjQtNzIuNiA5LjQgMi4xIDg0LjMgNzUuMSAxMTIuMyAxMDkuNXpNMTg4LjYgMTQzLjhjLTI5LjctMjYuOS01OC4xLTUzLjktODYuNC02My40LTE1LjItNS4xLTE2LjMtNC44LTI4LjcgOC4xLTI5LjIgMzAuNC01My41IDc5LjctNjAuMyAxMjIuNC01LjQgMzQuMi02LjEgNDMuOC00LjIgNjAuNSA1LjYgNTAuNSAxNy4zIDg1LjQgNDAuNSAxMjAuOSA5LjUgMTQuNiAxMi4xIDE3LjMgOS4zIDkuOS00LjItMTEtLjMtMzcuNSA5LjUtNjQgMTQuMy0zOSA1My45LTExMi45IDEyMC4zLTE5NC40em0zMTEuNiA2My41Yy0xNi45LTgwLTY3LjUtMTMwLjMtNzQuNi0xMzAuMy03LjMgMC0yNC4yIDYuNS0zNiAxMy45LTIzLjMgMTQuNS00MSAzMS40LTY0LjMgNTIuOCA0Mi40IDUzLjMgMTAyLjIgMTM5LjQgMTIyLjkgMjAyLjMgNi44IDIwLjcgOS43IDQxLjEgNy40IDUyLjMtMS43IDguNS0xLjcgOC41IDEuNCA0LjYgNi4xLTcuNyAxOS45LTMxLjMgMjUuNC00My41IDcuNC0xNi4yIDE1LTQwLjIgMTguNi01OC43IDQuMy0yMi41IDMuOS03MC44LS44LTkzLjR6TTE0MS4zIDQzYzQ3LjctMi41IDEwOS43IDM0LjUgMTE0LjMgMzUuNCAuNyAuMSAxMC40LTQuMiAyMS42LTkuNyA2My45LTMxLjEgOTQtMjUuOCAxMDcuNC0yNS4yLTYzLjktMzkuMy0xNTIuNy01MC0yMzMuOS0xMS43LTIzLjQgMTEuMS0yNCAxMS45LTkuNCAxMS4yeiJdfSxYdHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidW50YXBwZCIsaWNvbjpbNjQwLDUxMixbXSwiZjQwNSIsIk00MDEuNSA0OS45QzMyMS43IDIxMCAzMTYuOSAyMDIuNCAzMTMuNiAyMjMuMWwtNS4yIDMyLjhjLTEuOSAxMi02LjYgMjMuNS0xMy43IDMzLjRMMTQ1LjggNDk3LjFjLTcuNiAxMC42LTIwLjQgMTYuMi0zMy40IDE0LjYtNDAuMy01LTc3LjgtMzIuMi05NS4zLTY4LjUtNS43LTExLjgtNC41LTI1LjggMy4xLTM2LjRMMTY5LjEgMTk4LjljNy4xLTkuOSAxNi40LTE4IDI3LjItMjMuN2wyOS4zLTE1LjVjMTguNS05LjggOS43LTExLjkgMTM1LjYtMTM4LjkgMS00LjggMS03LjMgMy42LTggMy0uNyA2LjYtMSA2LjMtNC42bC0uNC00LjZjLS4yLTEuOSAxLjMtMy42IDMuMi0zLjYgNC41LS4xIDEzLjIgMS4yIDI1LjYgMTAgMTIuMyA4LjkgMTYuNCAxNi44IDE3LjcgMjEuMSAuNiAxLjgtLjYgMy43LTIuNCA0LjJsLTQuNSAxLjFjLTMuNCAuOS0yLjUgNC40LTIuMyA3LjQgLjEgMi44LTIuMyAzLjYtNi41IDYuMXpNMjMwLjMgMzYuNGMzLjQgLjkgMi41IDQuNCAyLjMgNy40LS4yIDIuNyAyLjEgMy41IDYuNCA2IDcuOSAxNS45IDE1LjMgMzAuNSAyMi4yIDQ0IC43IDEuMyAyLjMgMS41IDMuMyAuNSAxMS4yLTEyIDI0LjYtMjYuMiA0MC41LTQyLjYgMS4zLTEuNCAxLjQtMy41IC4xLTQuOS04LTguMi0xNi41LTE2LjktMjUuNi0yNi4xLTEtNC43LTEtNy4zLTMuNi04LTMtLjgtNi42LTEtNi4zLTQuNiAuMy0zLjMgMS40LTguMS0yLjgtOC4yLTQuNS0uMS0xMy4yIDEuMS0yNS42IDEwLTEyLjMgOC45LTE2LjQgMTYuOC0xNy43IDIxLjEtMS40IDQuMiAzLjYgNC42IDYuOCA1LjR6TTYyMC4yIDQwNi43TDQ3MS40IDE5OC44Yy0xMy4yLTE4LjUtMjYuNi0yMy40LTU2LjQtMzkuMS0xMS4yLTUuOS0xNC4yLTEwLjktMzAuNS0yOC45LTEtMS4xLTIuOS0uOS0zLjYgLjUtNDYuMyA4OC44LTQ3LjEgODIuOC00OSA5NC44LTEuNyAxMC43LTEuMyAyMCAuMyAyOS44IDEuOSAxMiA2LjYgMjMuNSAxMy43IDMzLjRMNDk0LjggNDk3LjJjNy42IDEwLjYgMjAuMiAxNi4yIDMzLjEgMTQuNyA0MC4zLTQuOSA3OC0zMiA5NS43LTY4LjYgNS40LTExLjkgNC4zLTI1LjktMy40LTM2LjZ6Il19LFF0cj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJnb29nbGUtcGx1cy1nIixpY29uOls2NDAsNTEyLFtdLCJmMGQ1IiwiTTM4Ni4zIDIyOC41YzEuOCA5LjcgMy4xIDE5LjQgMy4xIDMyIDAgMTA5LjgtNzMuNiAxODcuNS0xODQuNCAxODcuNS0xMDYuMSAwLTE5Mi04NS45LTE5Mi0xOTJTOTguOSA2NCAyMDUgNjRjNTEuOSAwIDk1LjEgMTguOSAxMjguNiA1MC4zbC01Mi4xIDUwYy0xNC4xLTEzLjYtMzktMjkuNi03Ni41LTI5LjYtNjUuNSAwLTExOC45IDU0LjItMTE4LjkgMTIxLjNTMTM5LjUgMzc3LjMgMjA1IDM3Ny4zYzc2IDAgMTA0LjUtNTQuNyAxMDktODIuOGwtMTA5IDAgMC02NiAxODEuMyAwIDAgMHptMTg1LjQgNi40bDAtNTUuNy01NiAwIDAgNTUuNy01NS43IDAgMCA1NiA1NS43IDAgMCA1NS43IDU2IDAgMC01NS43IDU1LjcgMCAwLTU2LTU1LjcgMHoiXX0sS3RyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImdpdGh1Yi1hbHQiLGljb246WzUxMiw1MTIsW10sImYxMTMiLCJNMjAyLjEgMzI4LjdjMCAyMC45LTEwLjkgNTUuMS0zNi43IDU1LjFzLTM2LjctMzQuMi0zNi43LTU1LjEgMTAuOS01NS4xIDM2LjctNTUuMSAzNi43IDM0LjIgMzYuNyA1NS4xek00OTYgMjc4LjJjMCAzMS45LTMuMiA2NS43LTE3LjUgOTUtMzcuOSA3Ni42LTE0Mi4xIDc0LjgtMjE2LjcgNzQuOC03NS44IDAtMTg2LjIgMi43LTIyNS42LTc0LjgtMTQuNi0yOS0yMC4yLTYzLjEtMjAuMi05NSAwLTQxLjkgMTMuOS04MS41IDQxLjUtMTEzLjYtNS4yLTE1LjgtNy43LTMyLjQtNy43LTQ4LjggMC0yMS41IDQuOS0zMi4zIDE0LjYtNTEuOCA0NS4zIDAgNzQuMyA5IDEwOC44IDM2IDI5LTYuOSA1OC44LTEwIDg4LjctMTAgMjcgMCA1NC4yIDIuOSA4MC40IDkuMiAzNC0yNi43IDYzLTM1LjIgMTA3LjgtMzUuMiA5LjggMTkuNSAxNC42IDMwLjMgMTQuNiA1MS44IDAgMTYuNC0yLjYgMzIuNy03LjcgNDguMiAyNy41IDMyLjQgMzkgNzIuMyAzOSAxMTQuMnptLTY0LjMgNTAuNWMwLTQzLjktMjYuNy04Mi42LTczLjUtODIuNi0xOC45IDAtMzcgMy40LTU2IDYtMTQuOSAyLjMtMjkuOCAzLjItNDUuMSAzLjItMTUuMiAwLTMwLjEtLjktNDUuMS0zLjItMTguNy0yLjYtMzctNi01Ni02LTQ2LjggMC03My41IDM4LjctNzMuNSA4Mi42IDAgODcuOCA4MC40IDEwMS4zIDE1MC40IDEwMS4zbDQ4LjIgMGM3MC4zIDAgMTUwLjYtMTMuNCAxNTAuNi0xMDEuM3ptLTgyLjYtNTUuMWMtMjUuOCAwLTM2LjcgMzQuMi0zNi43IDU1LjFzMTAuOSA1NS4xIDM2LjcgNTUuMSAzNi43LTM0LjIgMzYuNy01NS4xLTEwLjktNTUuMS0zNi43LTU1LjF6Il19LEp0cj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJnZXQtcG9ja2V0IixpY29uOls0NDgsNTEyLFtdLCJmMjY1IiwiTTQwNy42IDY0bC0zNjcgMEMxOC41IDY0IDAgODIuNSAwIDEwNC42TDAgMjM5LjhDMCAzNjQuNSA5OS43IDQ2NCAyMjQuMiA0NjQgMzQ4LjIgNDY0IDQ0OCAzNjQuNSA0NDggMjM5LjhsMC0xMzUuMkM0NDggODIuMiA0MzAuMyA2NCA0MDcuNiA2NHptLTE2MiAyNjguNWMtMTIuNCAxMS44LTMxLjQgMTEuMS00Mi40IDAtMTEzLjctMTA4LjktMTE0LjktMTA1LjEtMTE0LjktMTIzLjIgMC0xNi45IDEzLjgtMzAuNyAzMC43LTMwLjcgMTcgMCAxNi4xIDMuOCAxMDUuMiA4OS4zIDkwLjYtODYuOSA4OC42LTg5LjMgMTA1LjUtODkuM3MzMC43IDEzLjggMzAuNyAzMC43YzAgMTcuOC0yLjkgMTUuNy0xMTQuOCAxMjMuMnoiXX0sZXJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImdsaWRlIixpY29uOls0NDgsNTEyLFtdLCJmMmE1IiwiTTI1Mi44IDE0OC42YzAgOC44LTEuNiAxNy43LTMuNCAyNi40LTUuOCAyNy44LTExLjYgNTUuOC0xNy4zIDgzLjYtMS40IDYuMy04LjMgNC45LTEzLjcgNC45LTIzLjggMC0zMC41LTI2LTMwLjUtNDUuNSAwLTI5LjMgMTEuMi02OC4xIDM4LjUtODMuMSA0LjMtMi41IDkuMi00LjIgMTQuMS00LjIgMTEuNCAwIDEyLjMgOC4zIDEyLjMgMTcuOXpNNDQ4IDgwbDAgMzUyYzAgMjYuNS0yMS41IDQ4LTQ4IDQ4TDQ4IDQ4MGMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhMMCA4MEMwIDUzLjUgMjEuNSAzMiA0OCAzMmwzNTIgMGMyNi41IDAgNDggMjEuNSA0OCA0OHpNMzg0IDI2N2MwLTUuMS0yMC44LTM3LjctMjUuNS0zOS41LTIuMi0uOS03LjItMi4zLTkuNi0yLjMtMjMuMSAwLTM4LjcgMTAuNS01OC4yIDIxLjVsLS41LS41YzQuMy0yOS40IDE0LjYtNTcuMiAxNC42LTg3LjQgMC00NC42LTIzLjgtNjIuNy02Ny41LTYyLjctNzEuNyAwLTEwOCA3MC44LTEwOCAxMjMuNSAwIDU0LjcgMzIgODUgODYuMyA4NSA3LjUgMCA2LjktLjYgNi45IDIuMy0xMC41IDgwLjMtNTYuNSA4Mi45LTU2LjUgNTguOSAwLTI0LjQgMjgtMzYuNSAyOC4zLTM4LS4yLTcuNi0yOS4zLTE3LjItMzYuNy0xNy4yLTIxLjEgMC0zMi43IDMzLTMyLjcgNTAuNiAwIDMyLjMgMjAuNCA1NC43IDUzLjMgNTQuNyA0OC4yIDAgODMuNC00OS43IDk0LjMtOTEuNyA5LjQtMzcuNyA3LTM5LjQgMTIuMy00Mi4xIDIwLTEwLjEgMzUuOC0xNi44IDU4LjQtMTYuOCAxMS4xIDAgMTkgMi4zIDM2LjcgNS4yIDEuOCAuMSA0LjEtMS43IDQuMS0zLjV6Il19LHRycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJiaXR5IixpY29uOls1MTIsNTEyLFtdLCJmMzdhIiwiTTg2LjUgNjcuMmM5NS40LTg5LjIgMjQ2LjEtOTEuMiAzNDMuMSAzLjggMTQuMyAxNC4xLTYuNCAzNy4xLTIyLjQgMjEuNS04NC44LTgyLjQtMjE1LjgtODAuMy0yOTguOS0zLjItMTYuMyAxNS4xLTM2LjUtOC4zLTIxLjgtMjIuMXptOTguOSA0MTguNmMxOS4zIDUuNyAyOS4zLTIzLjYgNy45LTMwLTExMi4yLTMzLjktMTc1LjgtMTQ5LjctMTQ3LjUtMjYxIDUtMTkuNi0yNC45LTI4LjEtMzAuMi03LjEtMzIuMSAxMjcuNCA0MS4xIDI1OS44IDE2OS44IDI5OC4xem0xNDguMS0yYzEyMS45LTQwLjIgMTkyLjktMTY2LjkgMTY0LjQtMjkxLTQuNS0xOS43LTM0LjktMTMuOC0zMCA3LjkgMjQuMiAxMDcuNy0zNy4xIDIxNy45LTE0My4yIDI1My40LTIxLjIgNy0xMC40IDM2IDguOCAyOS43em0tNjIuOS03OWwuMi03MS44YzAtOC4yLTYuNi0xNC44LTE0LjgtMTQuOHMtMTQuOCA2LjctMTQuOCAxNC44bC0uMiA3MS44YzAgOC4yIDYuNiAxNC44IDE0LjggMTQuOHMxNC44LTYuNiAxNC44LTE0Ljh6bTcxLTI2OWMyLjEgOTAuOSA0LjcgMTMxLjktODUuNSAxMzIuNS05Mi41LS43LTg2LjktNDQuMy04NS41LTEzMi41IDAtMjEuOC0zMi41LTE5LjYtMzIuNSAwbDAgNzEuNmMwIDY5LjMgNjAuNyA5MC45IDExOCA5MC4xIDU3LjMgLjggMTE4LTIwLjggMTE4LTkwLjFsMC03MS42YzAtMTkuNi0zMi41LTIxLjgtMzIuNSAweiJdfSxycnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToid3BleHBsb3JlciIsaWNvbjpbNTEyLDUxMixbXSwiZjJkZSIsIk0wIDI1NmEyNTYgMjU2IDAgMSAxIDUxMiAwIDI1NiAyNTYgMCAxIDEgLTUxMiAwem00ODAgMGEyMjQgMjI0IDAgMSAwIC00NDggMCAyMjQgMjI0IDAgMSAwIDQ0OCAwek0xNjAuOSAxMjQuNmw4Ni45IDM3LjEtMzcuMSA4Ni45LTg2LjktMzcuMSAzNy4xLTg2Ljl6bTExMCAxNjkuMWw0Ni42IDk0LTE0LjYgMC01MC0xMDAtNDguOSAxMDAtMTQgMCA1MS4xLTEwNi45LTIyLjMtOS40IDYtMTQgNjguNiAyOS4xLTYgMTQuMy0xNi41LTcuMXpNMjU5LjEgMTc3LjRsNjguNiAyOS40LTI5LjQgNjguMy02OC4zLTI5LjEgMjkuMS02OC42em04MC4zIDQyLjlsNTQuNiAyMy4xLTIzLjQgNTQuMy01NC4zLTIzLjEgMjMuMS01NC4zeiJdfSxhcnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToibWVnYXBvcnQiLGljb246WzUxMiw1MTIsW10sImY1YTMiLCJNMjIyLjUgMjA5LjZsMCA2Ni4yIDMzLjUgMzMuNSAzMy4zLTMzLjMgMC02Ni40LTMzLjQtMzMuNC0zMy40IDMzLjR6TTI1NiA4YTI0OCAyNDggMCAxIDAgMCA0OTYgMjQ4IDI0OCAwIDEgMCAwLTQ5NnpNNDAxLjEgNDIyLjRsLTI2LjEgMTkuMi0yNi0xOS4yIDAtNjUuNS0zMy40LTMzLjQtMzMuNCAzMy40IDAgNjUuNS0yNi4yIDE5LjItMjYuMS0xOS4yIDAtNjUuNS0zMy40LTMzLjQtMzMuNSAzMy40IDAgNjUuNS0yNi4xIDE5LjItMjYuMS0xOS4yIDAtODcgNTkuNS01OS41IDAtODcuOSA1OS41LTU5LjUgMC03NS42IDI2LjEtMTkuMiAyNi4xIDE5LjIgMCA3NS42IDU5LjUgNTkuNSAwIDg3LjYgNTkuNyA1OS43IDAgODcuMS0uMSAweiJdfSxpcnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToibGVldGNvZGUiLGljb246WzQ0OCw1MTIsW10sImU4NmEiLCJNMjM1LjQgOS4zQzI0Ni41LTIuNSAyNjUuMS0zLjIgMjc3IDcuOXMxMi41IDI5LjggMS40IDQxLjZsLTQzIDQ2YzIxLjUgMy4zIDQyLjEgMTEuOCA1OS4xIDI1LjZsNzQuNiA2MC4zYzEyLjYgMTAuMiAxNC42IDI4LjggNC40IDQxLjRzLTI4LjcgMTQuNi00MS40IDQuNGwtNzQuNi02MC4zYy0yNi4yLTIxLjEtNzEuOS0xOC4yLTk0LjUgNS45TDgxIDI2MWMtMjEuNSAyMy0xOS4xIDYwIDUuNiA4NC4ybDkxLjIgODkuNGMyNC45IDI0IDY1LjYgMjQgOTAuMS0uNGw1MS4xLTUxYzExLjUtMTEuNSAzMC4xLTExLjUgNDEuNiAuMXMxMS40IDMwLjItLjEgNDEuN2wtNTEuMSA1MWMtNDcuMSA0Ny4xLTEyNCA0Ny43LTE3MS45IDEuNmwtOTItOTAuMkMtMS40IDM0MS4zLTYgMjY3LjkgMzggMjIwLjdMMjM1LjQgOS4zek00MTEuNyAyNzMuMmMxNi4yIDAgMjkuNCAxMy4yIDI5LjQgMjkuNXMtMTMuMiAyOS41LTI5LjQgMjkuNWwtMjE2LjkgMGMtMTYuMiAwLTI5LjQtMTMuMi0yOS40LTI5LjVzMTMuMi0yOS41IDI5LjQtMjkuNWwyMTYuOSAweiJdfSxvcnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToibWRiIixpY29uOls1NzYsNTEyLFtdLCJmOGNhIiwiTTE3LjQgMTYwLjRsLTEwLjQgMTkxLjYgNDMuOSAwIDUuNi03OS44IDI3LjkgNzkuOCA0NC43IDAgMjUuNS03Ny40IDQuOCA3Ny40IDQ1LjUgMC0xMi44LTE5MS42LTQ1LjUgMC00MC43IDExNy4zLTQyLjMtMTE3LjMtNDYuMyAwem0yODEgMGwtNDcuOSAwIDAgMTkxLjYgNDcuOSAwczk1IC44IDk0LjItOTUuOGMtLjgtOTQuMi05NC4yLTk1LjgtOTQuMi05NS44bDAgMHptLTEuMiAxNDYuNWwwLTEwMi4xczQ2IDQuMyA0Ni44IDUwLjYtNDYuOCA1MS41LTQ2LjggNTEuNWwwIDB6bTIzOC4zLTc0LjJjNy4yLTExLjQgMTAtMjUgOC0zOC4zLTUuMy0zNS44LTU1LjEtMzQuMy01NS4xLTM0LjNsLTUxLjkgMCAwIDE5MS42IDQ1LjUgMHM4NyA0LjggODctNjMuOGMwLTQzLjEtMzMuNS01NS4xLTMzLjUtNTUuMWwwIDB6bS01MS45LTMxLjlzMTMuNi0xLjYgMTYgOS42YzEuNCA2LjctNCAxMi00IDEybC0xMiAwIDAtMjEuNnptLS4xIDEwOS41bC4xLTI0LjkgMC0xOC4yIC4xIDBzNDEuNi00LjcgNDEuMiAyMi40Yy0uMyAyNS43LTQxLjMgMjAuNy00MS4zIDIwLjdsMCAweiJdfSxucnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToicGFnZTQiLGljb246WzUxMiw1MTIsW10sImYzZDciLCJNMjU2IDUwNEMxMTkgNTA0IDggMzkzIDggMjU2UzExOSA4IDI1NiA4YzIwLjkgMCA0MS4zIDIuNiA2MC43IDcuNUw1MC4zIDM5MiAyNTYgMzkyIDI1NiA1MDR6bTAtMTQzLjZsMC0yMTMuNi0xNDkuNCAyMTMuNiAxNDkuNCAwek0zNTIgMzkybDAgOTIuN2M0NS43LTE5LjIgODQuNS01MS43IDExMS40LTkyLjdMMzUyIDM5MnptNTcuNC0xMzguMmwtMjEuMiA4LjQgMjEuMiA4LjMgMC0xNi43em0tMjAuMyA1NC41Yy02LjcgMC04IDYuMy04IDEyLjlsMCA3LjcgMTYuMiAwIDAtMTBjMC01LjktMi4zLTEwLjYtOC4yLTEwLjZ6TTUwNCAyNTZjMCAzNy4zLTguMiA3Mi43LTIzIDEwNC40bC0xMjkgMCAwLTMzMy4xQzQ0MS4zIDY0LjggNTA0IDE1My4xIDUwNCAyNTZ6TTM2OC40IDE0My42bDY4LjIgMCAwLTQ3LjYtMTMuOSAwIDAgMzIuNi0xMy45IDAgMC0yOS42LTEzLjkgMCAwIDI5LjYtMTIuNyAwIDAtMzIuNi0xMy45IDAgMCA0Ny42IC4xIDB6bTY4LjEgMTg1LjNsLTI2LjUgMCAwLTExYzAtMTUuNC01LjYtMjUuMi0yMC45LTI1LjItMTUuNCAwLTIwLjcgMTAuNi0yMC43IDI1LjlsMCAyNS4zIDY4LjIgMCAwLTE1LS4xIDB6bTAtMTAzbC02OC4yIDI5LjcgMCAxMi40IDY4LjIgMjkuNSAwLTE2LjYtMTQuNC01LjcgMC0yNi41IDE0LjQtNS45IDAtMTYuOXptLTQuOC02OC41bC0zNS42IDAgMCAyNi42IDEzLjkgMCAwLTEyLjIgMTEgMGM4LjYgMTUuOCAxLjMgMzUuMy0xOC42IDM1LjMtMjIuNSAwLTI4LjMtMjUuMy0xNS41LTM3LjdsLTExLjYtMTAuNmMtMTYuMiAxNy41LTEyLjIgNjMuOSAyNy4xIDYzLjkgMzQgMCA0NC43LTM1LjkgMjkuMy02NS4zeiJdfSxzcnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidGhlLXJlZC15ZXRpIixpY29uOls1MTIsNTEyLFtdLCJmNjlkIiwiTTQ4OC43IDI0MS43bDIwLjcgNy4xYy05LjYtMjMuOS0yMy45LTM3LTMxLjctNDQuOGw3LjEtMTguMmMuMiAwIDEyLjMtMjcuOC0yLjUtMzAuNy0uNi0xMS4zLTYuNi0yNy0xOC40LTI3LTcuNi0xMC42LTE3LjctMTIuMy0zMC43LTUuOS05LjEgNC40LTE3LjYgMTAtMjUuMyAxNi41LTUuMy02LjQtMyAuNC0zLTI5LjgtMzcuMS0yNC4zLTQ1LjQtMTEuNy03NC44IDNsLjUgLjVjLTIyLTcuNy00NS4xLTEyLjItNjguNC0xMy4zLTUuNS04LjctMTguNi0xOS4xLTI1LjEtMjUuMWwyNC44IDcuMWMtNS41LTUuNS0yNi44LTEyLjktMzQuMi0xNS4yIDE4LjItNC4xIDI5LjgtMjAuOCA0Mi41LTMzLTM0LjktMTAuMS02Ny45LTUuOS05Ny45IDExLjhsMTItNDQuMi0xLjgtLjVjLTMxLjYgMjQuMi0zMyA0MS45LTMzLjcgNDUuNS0uOS0yLjQtNi4zLTE5LjYtMTUuMi0yNy0zLjMgOC4xLTMuNSAxNy4xLS41IDI1LjMgMyA4LjQgNS45IDE0LjggOC40IDE4LjktMTYtMy4zLTI4LjMtNC45LTQ5LjIgMGwtMy43IDAgMzMgMTQuM2MtMjAuMiAxOC45LTM2LjEgNDEuOS00Ni43IDY3LjRsLTEuNyA4LjQgMS43IDEuNyA3LjYtNC43Yy0zLjMgMTEuNi01LjMgMTkuNC02LjYgMjUuOC0xMC45IDEyLjItMjAuMiAyNS44LTI3LjggNDAuMy0xNSAxLTMxLjggMTAuOC00MC4zIDE0LjNsMyAzLjQgMjguOCAxYy0uNSAxLS43IDIuMi0xLjIgMy4yLTcuMyA2LjQtMzkuOCAzNy43LTMzIDgwLjdsMjAuMi0yMi40Yy41IDEuNyAuNyAzLjQgMS4yIDUuMiAwIDI1LjUgLjQgODkuNiA2NC45IDE1MC41IDQzLjYgNDAgOTYgNjAuMiAxNTcuNSA2MC4yIDEyMS43IDAgMjIzLTg3LjMgMjIzLTIxMS41IDYuOC05LjctMS4yIDMgMTYuNy0yNS4xbDEzIDE0LjMgMi41LS41Yy0xLjgtMTEuNy00LjgtMjMuMS04LjktMzQuMi0xLjUtNC44LTMuOC05LjMtNi44LTEzLjNsMCAwek0zOTguNSAxMTEuMmwtLjUgMjEuOWM1LjUgMTguMSAxNi45IDE3LjIgMjIuNCAxNy4ybC0zLjQtNC43IDIyLjQtNS40Yy05IC41LTE4IC41LTI3IDAgMTIuOC0yLjEgMzMuMy0yOSA0My0xMS4zIDMuNCA3LjYgNi40IDE3LjIgOS4zIDI3LjhsMS43LTUuOWMtMS4zLTUtMS44LTEwLjEtMS43LTE1LjIgNS40IC41IDguOCAzLjQgOS4zIDEwLjEgLjUgNi40IDEuNyAxNC44IDMuNCAyNS4zbDQuNy0xMS4zYzQuNiAwIDQuNS0zLjYtMi41IDIwLjctMjAuOS04LjctMzUuMS04LjQtNDYuNS04LjRsMTguMi0xNmMtMjUuMyA4LjItMzMgMTAuOC01NC44IDIwLjktMS4xLTUuNC01LTEzLjUtMTYtMTkuOS0zLjIgMy44LTIuOCAuOS0uNyAxNC44bC0yLjUgMGMtMS4yLTguMi00LjEtMTYtOC40LTIzLjFsNC4yLTMuNGM4LjQtNy4xIDExLjgtMTQuMyAxMC42LTIxLjktLjUtNi40LTUuNC0xMy41LTEzLjUtMjAuNyA1LjYtMy40IDE1LjItLjQgMjguMyA4LjV6bS0zOS42LTEwLjFjMi43IDEuOSAxMS40IDUuNCAxOC45IDE3LjIgNC4yIDguNCA0IDkuOCAzLjQgMTEuMS0uNSAyLjQtLjUgNC4zLTMgNy4xLTEuNyAyLjUtNS40IDQuNy0xMS44IDcuNi03LjYtMTMtMTYuNS0yMy42LTI3LjgtMzEuMmwyMC4zLTExLjh6bS0yNjcuNCA0MmwxLjItMS43YzEuMi0yLjkgNC4yLTcuNiA5LjMtMTUuMmwyLjUtMy40LTEzIDEyLjMgNS40LTQuNy0xMC4xIDkuMy00LjIgMS4yYzEyLjMtMjQuMSAyMy4xLTQxLjMgMzIuNS01MC4yIDkuMy05LjMgMTYtMTYgMjAuMi0xOS40bC02LjQgMS4yYy0xMS4zLTQuMi0xOS40LTcuMS0yNC44LTguNCAyLjUtLjUgMy43LS41IDMuMi0uNSAxMC4zIDAgMTcuNSAuNSAyMC45IDEuMiA1LjIgMS43IDEwLjYgMi41IDE2IDIuNWwuNS0xLjctOC40LTM1LjggMTMuNSAyOWMyLjgtNC40IDQuOC05LjIgNS45LTE0LjMgMS43LTYuNCA1LjQtMTMgMTAuMS0xOS40czcuNi0xMC42IDkuMy0xMS4zYy0yLjYgOC4zLTQuNyAxNi44LTYuNCAyNS4zbC0xLjcgNy4xLS41IDQuNyAyLjUgMi41YzIxLjktMTMuNSA0NS41LTE5LjQgNzEuMy0xOC45bDIxLjEgLjVjLTExLjggMTMuNS0yNy44IDIxLjktNDguNSAyNC44LTcuNyAxLjQtMTUuNiAyLjQtMjMuNCAyLjlsLS4yLS41LTIuNS0xLjJjLTQuOC0xLTkuNy0uMy0xNCAyLTIuNS0uMi00LjktLjUtNy4xLS43bC0yLjUgMS43IC41IDEuMmMyIC4yIDMuOSAuNSA2LjIgLjdsLTIgMy40IDMuNC0uNS0xMC42IDExLjNjLTQuMiAzLTUuNCA2LjQtNC4yIDkuM2w1LjQtMy40IDEuMiAwYzYuMS04LjIgMTUuMi0xMy42IDI1LjMtMTUuMmwwLTNjNi40IC41IDEzIDEgMTkuNCAxLjIgNi40IDAgOC40IC41IDUuNCAxLjIgNy4yIDQgMTQuMSA4LjYgMjAuNyAxMy41IDEzLjUgMTAuMSAyMy42IDIxLjkgMzAgMzUuNCA4LjggMTguMiAxMy41IDM3LjEgMTMuNSA1Ni42IDAgOS41LTEgMTktMyAyOC4zLTMuNSAxNS45LTguOSAzMS4zLTE2IDQ2bDIuNSAuNWMxOC4yLTE5LjcgNDEuOS0xNiA0OS4yLTE2bC02LjQgNS45IDIyLjQgMTcuNy0xLjcgMzAuN2MtNS40LTEyLjMtMTYuNS0yMS4xLTMzLTI3LjggMTYuNSAxNC44IDIzLjYgMjEuMSAyMS45IDIwLjItNC44LTIuOC0zLjUtMS45LTEwLjgtMy43IDQuMSA0LjEgMTcuNSAxOC44IDE4LjIgMjAuN2wuMiAuMi0uMiAuMmMwIDEuOCAxLjYtMS4yLTE0IDIyLjktNzUuMi0xNS4zLTEwNi4zLTQyLjctMTQxLjItNjMuMmwxMS44IDEuMmMtMTEuOC0xOC41LTE1LjYtMTcuNy0zOC40LTI2LjFsMTAuNi04LjRjLTguOC0zLTE4LjItMy0yOC4zIC41bDcuNi0xMC42LTEuMi0xLjdjLTE0LjkgNC4zLTE5LjggOS4yLTIyLjYgMTEuMy0xLjEtNS41LTIuOC0xMi40LTEyLjMtMjguOGwtMS4yIDI3LTEzLjItNWMxLjUtMjUuMiA1LjQtNTAuNSAxMy4yLTc0LjZ6TTM2OCA0NzMuMWMtNDkuOSAyNS01Ni4xIDIyLjQtNTkgMjMuOS0yOS44LTExLjgtNTAuOS0zMS43LTYzLjUtNTguOGwzMCAxNi41Yy05LjgtOS4zLTE4LjMtMTYuNS0zOC40LTQ0LjNsMTEuOCAyMy4xLTE3LjctNy42YzE0LjIgMjEuMSAyMy41IDUxLjcgNjYuNiA3My41LTEyMC44IDI0LjItMTk5LTcyLjEtMjAwLjktNzQuMyAxMS4xIDkuMiAyMi45IDE3LjUgMzUuNCAyNC44IDMuNCAxLjcgNy4xIDIuNSAxMC4xIDEuMmwtMTYtMjAuN2M5LjIgNC4yIDkuNSA0LjUgNjkuMSAyOS00Mi41LTIwLjctNzMuOC00MC44LTkzLjItNjAuMi0uNSA2LjQtMS4yIDEwLjEtMS4yIDEwLjEgOC43IDcuMyAxNS44IDE2LjQgMjAuNyAyNi42LTM5LTE4LjktNTcuNi00Ny42LTcxLjMtODIuNiA0OS45IDU1LjEgMTE4LjkgMzcuNSAxMjAuNSAzNy4xIDM0LjggMTYuNCA2OS45IDIzLjYgMTEzLjkgMTAuNiAzLjMgMCAyMC4zIDE3IDI1LjMgMzkuMWw0LjItMy0yLjUtMjMuNmM5IDkgMjQuOSAyMi42IDM0LjQgMTMtMTUuNi01LjMtMjMuNS05LjUtMjkuNS0zMS43IDQuNiA0LjIgNy42IDkgMjcuOCAxNWwxLjItMS4yLTEwLjUtMTQuMmMxMS43LTQuOC0zLjUgMSAzMi0xMC44IDQuMyAzNC4zIDkgNDkuMiAuNyA4OS41ek00ODMuMyAyNTguN2wtMi41IC41IDMgOS4zYy0zLjUgNS45LTIzLjcgNDQuMy03MS42IDc5LjctMzkuNSAyOS44LTc2LjYgMzkuMS04MC45IDQwLjNsLTcuNi03LjEtMS4yIDMgMTQuMyAxNi03LjEtNC43IDMuNCA0LjItMS4yIDAtMjEuOS0xMy41IDkuMyAyNi42LTE5LTI3LjktMS4yIDIuNSA3LjYgMjljLTYuMS04LjItMjEtMzIuNi01Ni44LTM5LjZsMzIuNSAyMS4yYy0zMS4yIDQuNy02MyAyLjUtOTMuMi02LjQtNC4yLTEuMi04LjktMi41LTEzLjUtNC4ybDEuMi0zLTQ0LjgtMjIuNCAyNi4xIDIyLjRjLTU3LjcgOS4xLTExMy0yNS40LTEyNi40LTgzLjRMMjkuMyAyODQuOCA3IDMwNy4xYzE5LjUtNTcuNSAyNS42LTU3LjkgNTEuNC03MC4xLTkuMS01LjMtMS42LTMuMy0zOC40LTkuMyAxNS44LTUuOCAzMy0xNS40IDczIDUuMiAxLjItLjcgMi40LTEuMyAzLjctMS43IC42LTMuMiAuNC0uOCAxLTExLjggMy45IDEwIDMuNiA4LjcgMyA5LjNsMS43IC41YzEyLjctNi41IDguOS00LjUgMTctOC45bC01LjQgMTMuNSAyMi4zLTUuOC04LjQgOC40IDIuNSAyLjVjNC41LTEuOCAzMC4zIDMuNCA0MC44IDE2bC0yMy42LTIuNWMzOS40IDIzIDUxLjUgNTQgNTUuOCA2OS42bDEuNy0xLjJjLTIuOC0yMi4zLTEyLjQtMzMuOS0xNi00MC4xIDQuMiA1IDM5LjIgMzQuNiAxMTAuNCA0Ni0xMS4zLS41LTIzLjEgNS40LTM0LjkgMTguOWw0Ni43LTIwLjItOS4zIDIxLjljNy42LTEwLjEgMTQuOC0yMy42IDIxLjItMzkuNmwwLS41IDEuMi0zLTEuMiAxNmMxMy41LTQxLjggMjUuMy03OC41IDM1LjQtMTA5LjdsMTMuNS0yNy44IDAtMi01LjQtNC4yIDEwLjEgMCA1LjkgNC4yIDIuNS0xLjItMy40LTE2IDEyLjMgMTguOSA0MS44LTIwLjItMTQuOCAxMyAuNSAyLjkgMTcuNy0uNWMxMS4xIC40IDIyLjEgMS44IDMzIDQuMmwtMjMuNiAyLjUtMS4yIDMgMjYuNiAyMy4xYzkuOSA5LjkgMTguOSAyMC42IDI3IDMyLTExLjItMy4zLTEwLjMtMy40LTIxLjItMy40bDEyLjMgMzIuNS04LjktMTIuOHptLTYuMS03MS4zbC0zLjkgMTMtMTQuMy0xMS44IDE4LjItMS4yem0tMjU0LjggNy4xYzEuNyAxMC42IDQuNyAxNy43IDguOCAyMS45LTkuMyA2LjYtMjcuNSAxMy45LTQ2LjUgMTZsLjUgMS4yYzguMyAxLjMgMTYuOSAuNCAyNC44LTIuNWwtNy4xIDEzYzQuMi0xLjcgMTAuMS03LjEgMTcuNy0xNC44IDExLjktNS41IDEyLjctNS4xIDIwLjItMTYtMTIuNy02LjQtMTUuNy0xMy43LTE4LjQtMTguOHptMy43LTEwMi4zYy02LjQtMy40LTEwLjYgMy0xMi4zIDE4LjlzMi41IDI5LjUgMTEuOCAzOS42IDE4LjIgMTAuNiAyNi4xIDMgMy40LTIzLjYtMTEuMy00Ny43Yy0zLjUtNS43LTguNC0xMC41LTE0LjMtMTMuOGwwIDB6bS00LjcgNDYuM2M1LjQgMi4yIDEwLjUgMS45IDEyLjMtMTAuNmwwLTQuNy0xLjIgLjVjLTQuMy0zLjEtMi41LTQuNS0xLjctNi4ybC41LS41Yy0uOS0xLjItNS04LjEtMTIuNSA0LjctLjUtMTMuNSAuNS0yMS45IDMtMjQuOCAxLjItMi41IDQuNy0xLjIgMTEuMyA0LjIgNi40IDUuNCAxMS4zIDE2IDE1LjIgMzIuNSA2LjUgMjgtMTkuOCAyNi4yLTI2LjkgNC45em0tNDUtNS41YzEuNiAuMyA5LjMtMS4xIDkuMy0xNC44bC0uNSAwYy01LjQtMS4xLTIuMi01LjUtLjctNS45LTEuNy0zLTMuNC00LjItNS40LTQuNy04LjEgMC0xMS42IDEyLjctOC4xIDIxLjIgLjUgMS4xIDEuMyAyIDIuMiAyLjhzMiAxLjIgMy4yIDEuNGwwIDB6bTQwLjEtNTAuMWwtMi41IC41IC41IDNjOS4xLS41IDE4LjEgMS41IDI2LjEgNS45LTIuNS01LjUtMTAtMTQuMy0yOC4zLTE0LjNsLjUgMi41IDMuNyAyLjR6bS03MS44IDQ5LjRjMjEuNyAxNi44IDE2LjUgMjEuNCA0Ni41IDIzLjZsLTIuOS00LjdjOC40LTcuMiAxMy43LTE3LjMgMTQuOC0yOC4zIDEuNy0xNi0xLjItMjkuNS04LjgtNDEuM2wxMy03LjZjMC0uMyAwLS42LS4xLS45cy0uMi0uNi0uNC0uOGMtMi4yLS45LTQuNi0xLjItNy0uOXMtNC42IDEuMi02LjUgMi42Yy0xMi43IDYuNy0yOCAyMC45LTI5IDIyLjQtMS43IDEuNy0zLjQgNS45LTUuNCAxMy41LTEuOSA3LjctMi45IDE1LjYtMi45IDIzLjYtNC43LTgtMTAuNS02LjQtMTkuOS01LjlsNy4xIDcuNmMtMTYuNSAwLTIzLjMgMTUuNC0yMy42IDE2IDYuOCAwIDQuNi03LjYgMzAtMTIuMy00LjMtNi4zLTMuMy01LTQuOS02LjZ6bTE4LjctMTguN2MxLjItNy42IDMuNC0xMyA2LjQtMTcuMiA1LjQtNi40IDEwLjYtMTAuMSAxNi0xMS44IDQuMi0xLjcgNy4xIDEuMiAxMC4xIDkuMyAyLjUgOC4yIDMuNSAxNi44IDMgMjUuMy0uNSA5LjMtMy40IDE3LjItOC40IDIzLjEtMi45IDMuNC01LjQgNS45LTYuNCA3LjYtMy44IC40LTcuNiAuMi0xMS4zLS41bC03LjEtMy40LTUuNC02LjRjLjgtMTAgMS4zLTE4LjggMy4xLTI2em00MiA1Ni4xYy0zNC44IDE0LjQtMzQuNyAxNC0zNi4xIDE0LjMtMjAuOCA0LjctMTktMjQuNC0xOC45LTI0LjhsNS45LTEuMi0uNS0yLjVjLTIwLjItMi42LTMxIDQuMi0zMi41IDQuOSAuNSAuNSAzIDMuNCA1LjkgOS4zIDQuMi02LjQgOC44LTEwLjEgMTUuMi0xMC42LTEuNyAxMS4yLTEuMiAyMi43IDEuNyAzMy43IC4xIC41IDIuNiAxNy40IDI3LjUgMjQuMSAxMS4zIDMgMjcgMS4yIDQ4LjktNS40bC05LjIgLjVjLTQuMi0xNC44LTYuNC0yNC44LTUuOS0yOS41IDExLjMtOC44IDIxLjktMTEuMyAzMC43LTcuNmwyLjUgMC0xMS44LTcuNi03LjEgLjVjLTUuOSAxLjItMTIuMyA0LjItMTkuNCA4LjRsMy4xLTYuNXoiXX0sbHJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImppcmEiLGljb246WzUxMiw1MTIsW10sImY3YjEiLCJNNDk4LjUgMjQxLjdjLTcyLjktNzIuNy0xNjkuNC0xNjkuOS0yNDEuNS0yNDEuNy0xNjUuNSAxNjQuOS0yNDIuNSAyNDEuNy0yNDIuNSAyNDEuNy03LjkgNy45LTcuOSAyMC43IDAgMjguNyAxMzIuOCAxMzIuMyA2MS44IDYxLjUgMjQyLjUgMjQxLjYgMzc5LjQtMzc4IDE1LjctMTYuNyAyNDEuNS0yNDEuNyA4LTcuOSA4LTIwLjcgMC0yOC42ek0yNTcgMzMxLjdsLTc2LTc1LjcgNzYtNzUuNyA3NiA3NS43LTc2IDc1Ljd6Il19LGNycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJmZWRleCIsaWNvbjpbNjQwLDUxMixbXSwiZjc5NyIsIk01ODYgMjg0LjVsNTMuMy01OS45LTYyLjQgMC0yMS43IDI0LjgtMjIuNS0yNC44LTExOC43IDAgMC0xNiA1Ni4xIDAgMC00OC4xLTE1MS4yIDAgMCA3NS41LS41IDBjLTkuNi0xMS0yMS41LTE0LjgtMzUuNC0xNC44LTI4LjQgMC00OS44IDE5LjQtNTcuMyA0NC45LTE4LTU5LjQtOTcuNC01Ny42LTEyMS45LTE0bDAtMjQuMi01NC44IDAgMC0yNi4yIDYwIDAgMC00MS4xLTEwOSAwIDAgMTg0LjQgNDkgMCAwLTc3LjUgNDguOSAwYy0xLjUgNS43LTIuMyAxMS44LTIuMyAxOC4yIDAgNzMuMSAxMDIuNiA5MS40IDEzMC4yIDIzLjdsLTQyIDBjLTE0LjcgMjAuOS00NS44IDguOS00NS44LTE0LjZsODUuNSAwYzMuNyAzMC41IDI3LjQgNTYuOSA2MC4xIDU2LjkgMTQuMSAwIDI3LTYuOSAzNC45LTE4LjZsLjUgMCAwIDExLjkgMjEyLjIgMCAyMi4xLTI1IDIyLjMgMjUgNjQuNCAwLTU0LTYwLjV6TTEzOS4zIDI2Ny45YzYuMS0yNi4zIDQxLjctMjUuNiA0Ni41IDBsLTQ2LjUgMHptMTUzLjQgNDguOWMtMzQuNiAwLTM0LTYyLjggMC02Mi44IDMyLjYgMCAzNC41IDYyLjggMCA2Mi44em0xNjcuOCAxOS4xbC05NC40IDAgMC0xNjYuNSA5NSAwIDAgMzAuMi01Ni4xIDAgMCAzMy45IDU1LjUgMCAwIDI4LjEtNTYuMSAwIDAgNDQuNyA1Ni4xIDAgMCAyOS42em0tNDUuOS0zOS44bDAtMjQuNCA1Ni4xIDAgMC00NCA1MC43IDU3LTUwLjcgNTcgMC00NS42LTU2LjEgMHptMTM4LjYgMTAuM2wtMjYuMSAyOS41LTM4LjEgMCA0NS42LTUxLjItNDUuNi01MS4yIDM5LjcgMCAyNi42IDI5LjMgMjUuNi0yOS4zIDM4LjUgMC00NS40IDUxIDQ2IDUxLjQtNDAuNSAwLTI2LjMtMjkuNXoiXX0sZHJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImV2ZXJub3RlIixpY29uOlszODQsNTEyLFtdLCJmODM5IiwiTTEyMS4xIDEzMi4yYzEuNiAyMi4zLTE3LjYgMjEuNi0yMS42IDIxLjYtNjguOSAwLTczLjYtMS04My42IDMuMy0uNiAuMi0uNyAwLS40LS40TDEyNC4xIDQ2LjRjLjQtLjQgLjYtLjIgLjQgLjQtNC40IDEwLTMuNCAxNS4xLTMuNCA4NS40em03OSAzMDhjLTE0LjctMzcuMSAxMy03Ni45IDUyLjUtNzYuNiAxNy41IDAgMjIuNiAyMy4yIDcuOSAzMS40LTYuMiAzLjMtMjQuOSAxLjctMjUuMSAxOS4yIDAgMTcuMSAxOS43IDI1IDMxLjIgMjQuOSA2IDAgMTEuOS0xLjIgMTcuNS0zLjVzMTAuNi01LjcgMTQuOC05LjkgNy42LTkuMyA5LjktMTQuOCAzLjUtMTEuNSAzLjUtMTcuNWwwLS4xYzAtMTEuNi03LjgtNDcuMi00Ny41LTU1LjMtNy43LTEuNS02NS02LjMtNjguNC01MC41LTMuNyAxNi45LTE3LjQgNjMuNS00My4xIDY5LjEtOC43IDEuOS02OS43IDcuNi0xMTIuOS0zNi44IDAgMC0xOC42LTE1LjItMjguMi01OC0zLjQtMTUuNy05LjMtMzkuNy0xMS4xLTYyIDAtMTggMTEuMS0zMC40IDI1LjEtMzIuMiA4MSAwIDkwIDIuMyAxMDEtNy44IDkuOC05LjIgNy44LTE1LjUgNy44LTEwMi44IDEtOC4zIDcuOC0zMC44IDUzLjQtMjQuMSA2IC45IDMxLjkgNC4yIDM3LjUgMzAuNkwyOTAgNzQuOGMyMC40IDMuNyA3MC45IDcgODAuNiA1Ny45IDIyLjcgMTIxLjEgOC45IDIzOC41IDcuOCAyMzguNS0xNiAxMTQuNC0xMTEuMSAxMDguOS0xMTEuMSAxMDguOS0xOS0uMi01NC4yLTkuNC02Ny4zLTM5LjhsMCAwek0yODEgMjM1LjRjLTEgMS45LTIuMiA2IC45IDcgMTQuMSA0LjkgMzkuOCA2LjggNDUuOSA1LjUgMy4xLS4yIDMuMS00LjQgMi41LTYuNi0zLjUtMjEuOC00MC44LTI2LjUtNDkuMi01LjlsMCAweiJdfSx1cnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidXNiIixpY29uOls2NDAsNTEyLFtdLCJmMjg3IiwiTTYzMy41IDI1NmMwIDMuMS0xLjcgNi4xLTQuNSA3LjVMNTM5LjkgMzE3Yy0xLjQgLjgtMi44IDEuNC00LjUgMS40LTEuNCAwLTMuMS0uMy00LjUtMS4xLTIuOC0xLjctNC41LTQuNS00LjUtNy44bDAtMzUuNi0yMzAuNyAwYzI1LjMgMzkuNiA0MC41IDEwNi45IDY5LjYgMTA2LjlsMjYuNyAwIDAtMjYuOGMwLTUgMy45LTguOSA4LjktOC45bDg5LjEgMGM1IDAgOC45IDMuOSA4LjkgOC45bDAgODkuMWMwIDUtMy45IDguOS04LjkgOC45bC04OS4xIDBjLTUgMC04LjktMy45LTguOS04LjlsMC0yNi43LTI2LjcgMGMtNzUuNCAwLTgxLjEtMTQyLjUtMTI0LjctMTQyLjVsLTEwMC4zIDBjLTguMSAzMC42LTM1LjkgNTMuNS02OSA1My41LTM5LjMtLjEtNzEuMy0zMi4xLTcxLjMtNzEuNHMzMi03MS4zIDcxLjMtNzEuM2MzMy4xIDAgNjEgMjIuOCA2OSA1My41IDM5LjEgMCA0My45IDkuNSA3NC42LTYwLjQgNDAuMS04OS4xIDU4LjEtODIuMSAxMDguOS04Mi4xIDcuNS0yMC45IDI3LTM1LjYgNTAuNC0zNS42IDI5LjUgMCA1My41IDIzLjkgNTMuNSA1My41cy0yMy45IDUzLjUtNTMuNSA1My41Yy0yMy40IDAtNDIuOS0xNC44LTUwLjQtMzUuNmwtMjkuOCAwYy0yOS4xIDAtNDQuMyA2Ny40LTY5LjYgMTA2LjlsMzAyLjEgMCAwLTM1LjZjMC0zLjMgMS43LTYuMSA0LjUtNy44czYuNC0xLjQgOC45IC4zTDYyOSAyNDguOGMyLjggMS4xIDQuNSA0LjEgNC41IDcuMnoiXX0sZnJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImFuZ3J5Y3JlYXRpdmUiLGljb246WzY0MCw1MTIsW10sImYzNmUiLCJNNjQwIDIzOC4ybC0zLjIgMjguMi0zNC41IDIuMy0yIDE4LjEgMzQuNS0yLjMtMy4yIDI4LjItMzQuNCAyLjItMi4zIDIwLjEgMzQuNC0yLjItMyAyNi4xLTY0LjcgNC4xIDEyLjctMTEzLjItNDcuMyAxMTUuNC0zMS45IDItMjMuOC0xMTcuOCAzMC4zLTIgMTMuNiA3OS40IDMxLjctODIuNCA5My4xLTYuMnpNNDI2LjggMzcxLjVsMjguMy0xLjggMTIuOS0xMjAuMS0yOC40IDEuOS0xMi44IDEyMHpNMTYyIDM4OC4xbC0xOS40LTM2LTMuNSAzNy40LTI4LjIgMS43IDIuNy0yOS4xYy0xMSAxOC0zMiAzNC4zLTU2LjkgMzUuOC0zMi44IDItNTkuNy0yMC45LTU2LjQtNTguMiAyLjYtMjkuMyAyNi43LTYyLjggNjcuNS02NS40IDM3LjctMi40IDQ3LjYgMjMuMiA1MS4zIDI4LjhsMi44LTMwLjggMzguOS0yLjVjMjAuMS0xLjMgMzguNyAzLjcgNDIuNSAyMy43bDIuNi0yNi42IDY0LjgtNC4yLTIuNyAyNy45LTM2LjQgMi40LTEuNyAxNy45IDM2LjQtMi4zLTIuNyAyNy45LTM2LjQgMi4zLTEuOSAxOS45IDM2LjMtMi4zLTIuMSAyMC44IDU1LTExNy4yIDIzLjgtMS42IDMyLjEgMTEwLjYgOC45LTg1LjYtMjIuMyAxLjQgMi45LTI3LjkgNzUtNC45LTMgMjgtMjQuMyAxLjYtOS43IDkxLjktNTggMy43LTQuMy0xNS42LTM5LjQgMi41LTggMTYuMy0xMjYuMiA3Ljd6bS00NC4zLTcwLjJsLTI2LjQgMS43Yy02LjctMTIuNC0xNC40LTE2LjYtMjYuMy0xNS44LTE5IDEuMi0zMy4zIDE3LjUtMzQuNiAzMy4zLTEuNCAxNiA3LjMgMzIuNSAyOC43IDMxLjIgMTIuOC0uOCAyMS4zLTguNiAyOC45LTE4LjlsMjctMS43IDIuNy0yOS44em01Ni4xLTcuN2MxLjItMTIuOS03LjYtMTMuNi0yNi4xLTEyLjRMMTQ1IDMyNi4zYzE0LjItLjkgMjcuNS0yLjEgMjguOC0xNi4xek0xOTQuOSAzODFsNS44LTYwYy01IDEzLjUtMTQuNyAyMS4xLTI3LjkgMjYuNkwxOTQuOSAzODF6bTEzNS40LTQ1bC03LjktMzcuOC0xNS44IDM5LjMgMjMuNy0xLjV6TTE2MC4yIDI2MS40bC00LjMtMTcuNS0zOS42IDIuNi04LjEgMTguMi0zMS45IDIuMSA1Ny0xMjEuOSAyMy45LTEuNiAzMC43IDEwMiA5LjktMTA0LjcgMjctMS44IDM3LjggNjMuNiA2LjUtNjYuNiAyOC41LTEuOS00IDQxLjJjNy40LTEzLjUgMjIuOS00NC43IDYzLjYtNDcuNSA0MC41LTIuOCA1Mi40IDI5LjMgNTMuNCAzMC4zbDMuMy0zMiAzOS4zLTIuN2MxMi43LS45IDI3LjggLjMgMzYuMyA5LjdsLTQuNC0xMS45IDMyLjItMi4yIDEyLjkgNDMuMiAyMy00NS43IDMxLTIuMi00My42IDc4LjQtNC44IDQ0LjMtMjguNCAxLjkgNC44LTQ0LjMtMTUuOC00M2MxIDIyLjMtOS4yIDQwLjEtMzIgNDkuNmwyNS4yIDM4LjgtMzYuNCAyLjQtMTkuMi0zNi44LTQgMzguMy0yOC40IDEuOSAzLjMtMzEuNWMtNi43IDkuMy0xOS43IDM1LjQtNTkuNiAzOC0yNi4yIDEuNy00NS42LTEwLjMtNTUuNC0zOS4ybC00IDQwLjMtMjUgMS42LTM3LjYtNjMuMy02LjMgNjYuMi01Ni44IDMuN3ptMjc2LjYtODIuMWMxMC4yLS43IDE3LjUtMi4xIDIxLjYtNC4zIDQuNS0yLjQgNy02LjQgNy42LTEyLjEgLjYtNS4zLS42LTguOC0zLjQtMTAuNC0zLjYtMi4xLTEwLjYtMi44LTIyLjktMmwtMi45IDI4Ljh6TTMyNy43IDIxNGM1LjYgNS45IDEyLjcgOC41IDIxLjMgNy45IDQuNy0uMyA5LjEtMS44IDEzLjMtNC4xIDUuNS0zIDEwLjYtOCAxNS4xLTE0LjNsLTM0LjIgMi4zIDIuNC0yMy45IDYzLjEtNC4zIDEuMi0xMi0zMS4yIDIuMWMtNC4xLTMuNy03LjgtNi42LTExLjEtOC4xLTQtMS43LTguMS0yLjgtMTIuMi0yLjUtOCAuNS0xNS4zIDMuNi0yMiA5LjItNy43IDYuNC0xMiAxNC41LTEyLjkgMjQuNC0xLjEgOS42IDEuNCAxNy4zIDcuMiAyMy4zem0tMjAxLjMgOC4ybDIzLjgtMS42LTguMy0zNy42LTE1LjUgMzkuMnoiXX0scHJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Im1penVuaSIsaWNvbjpbNTEyLDUxMixbXSwiZjNjYyIsIk0yNTYgOGEyNDggMjQ4IDAgMSAwIDAgNDk2IDI0OCAyNDggMCAxIDAgMC00OTZ6TTE3NiAzNTkuOWMtMzEuNCAxMC42LTU4LjggMjcuMy04MCA0OC4yTDk2IDEzNmMwLTIyLjEgMTcuOS00MCA0MC00MHM0MCAxNy45IDQwIDQwbDAgMjIzLjl6TTI5NiAzNTBjLTEyLjktMi0yNi4yLTMuMS0zOS44LTMuMS0xMy44IDAtMjcuMiAxLjEtNDAuMiAzLjFsMC0yMTRjMC0yMi4xIDE3LjktNDAgNDAtNDBzNDAgMTcuOSA0MCA0MGwwIDIxNHptMTIwIDU3LjdjLTIxLjItMjAuOC00OC42LTM3LjQtODAtNDhMMzM2IDEzNmMwLTIyLjEgMTcuOS00MCA0MC00MHM0MCAxNy45IDQwIDQwbDAgMjcxLjd6Il19LGhycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJpdGNoLWlvIixpY29uOls1MTIsNTEyLFtdLCJmODNhIiwiTTcxLjkgMzQuOEM1MC4yIDQ3LjcgNy40IDk2LjggNyAxMDkuN2wwIDIxLjNjMCAyNy4xIDI1LjMgNTAuOCA0OC4yIDUwLjggMjcuNiAwIDUwLjUtMjIuOCA1MC41LTUwIDAgMjcuMSAyMi4yIDUwIDQ5LjggNTBzNDktMjIuOCA0OS01MGMwIDI3LjEgMjMuNiA1MCA1MS4yIDUwbC41IDBjMjcuNiAwIDUxLjItMjIuOCA1MS4yLTUwIDAgMjcuMSAyMS41IDUwIDQ5IDUwczQ5LjgtMjIuOCA0OS44LTUwYzAgMjcuMSAyMyA1MCA1MC41IDUwIDIzIDAgNDguMy0yMy44IDQ4LjMtNTAuOGwwLTIxLjNjLS40LTEyLjktNDMuMi02Mi4xLTY0LjktNzUtNjcuNC0yLjMtMTE0LjItMi43LTE4NC0yLjdTOTEuMSAzMy4xIDcxLjkgMzQuOHpNMjA0LjIgMTY5LjJjLTIyIDM4LjQtNzcuOSAzOC43LTk5LjggLjItMTMuMiAyMy4xLTQzLjIgMzIuMS01NiAyNy43LTMuOSA0MC4yLTEzLjcgMjM3LjEgMTcuNyAyNjkuMiA4MCAxOC43IDMwMi4xIDE4LjEgMzc5LjggMCAzMS42LTMyLjMgMjEuMy0yMzIgMTcuNy0yNjkuMi0xMi45IDQuNC00Mi45LTQuNi01Ni0yNy43LTIyIDM4LjUtNzcuOCAzOC4xLTk5LjgtLjItNy4xIDEyLjUtMjMgMjguOS01MS44IDI4LjktMTAuNCAuMy0yMC44LTIuMi0yOS45LTcuM3MtMTYuNy0xMi42LTIxLjktMjEuNmwwIDB6bS00MS42IDUzLjhjMTYuNSAwIDMxLjEgMCA0OS4yIDE5LjggMjkuMy0zIDU4LjktMyA4OC4yIDAgMTguMi0xOS43IDMyLjgtMTkuNyA0OS4yLTE5LjcgNTIuMyAwIDY1LjIgNzcuNSA4My45IDE0NC40IDE3LjMgNjIuMi01LjUgNjMuNy0zNCA2My43LTQyLjEtMS42LTY1LjUtMzIuMi02NS41LTYyLjgtMzkuMyA2LjQtMTAxLjkgOC44LTE1NS42IDAgMCAzMC42LTIzLjMgNjEuMi02NS41IDYyLjgtMjguNC0uMS01MS4yLTEuNi0zMy45LTYzLjcgMTguNy02NyAzMS42LTE0NC40IDgzLjktMTQ0LjRsMC0uMXpNMjU2IDI3MC44cy00NC40IDQwLjgtNTIuNCA1NS4ybDI5LTEuMiAwIDI1LjNjMCAxLjUgMjEuMyAuMiAyMy4zIC4yIDExLjYgLjUgMjMuMyAxIDIzLjMtLjJsMC0yNS4zIDI5IDEuMmMtOC0xNC41LTUyLjQtNTUuMi01Mi40LTU1LjJsLjEgMHoiXX0sbXJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6IndpbmRvd3MiLGljb246WzQ0OCw1MTIsW10sImYxN2EiLCJNMCA5My43bDE4My42LTI1LjMgMCAxNzcuNC0xODMuNiAwIDAtMTUyLjF6TTAgNDE4LjNsMTgzLjYgMjUuMyAwLTE3NS4yLTE4My42IDAgMCAxNDkuOXptMjAzLjggMjhsMjQ0LjIgMzMuNyAwLTIxMS42LTI0NC4yIDAgMCAxNzcuOXptMC0zODAuNmwwIDE4MC4xIDI0NC4yIDAgMC0yMTMuOC0yNDQuMiAzMy43eiJdfSxncnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic3R1bWJsZXVwb24iLGljb246WzUxMiw1MTIsW10sImYxYTQiLCJNNTAyLjkgMjY2bDAgNjkuN2MwIDYyLjEtNTAuMyAxMTIuNC0xMTIuNCAxMTIuNC02MS44IDAtMTEyLjQtNDkuOC0xMTIuNC0xMTEuM2wwLTcwLjIgMzQuMyAxNiA1MS4xLTE1LjIgMCA3MC42YzAgMTQuNyAxMiAyNi41IDI2LjcgMjYuNVM0MTcgMzUyLjcgNDE3IDMzOGwwLTcyIDg1LjkgMHpNMjc4LjIgMjA3LjhsMzQuMyAxNiA1MS4xLTE1LjIgMC0zNS42YzAtNjAuNS01MS4xLTEwOS0xMTIuMS0xMDktNjAuOCAwLTExMi4xIDQ4LjItMTEyLjEgMTA4LjJsMCAxNjIuNGMwIDE0LjktMTIgMjYuNy0yNi43IDI2LjdTODYgMzQ5LjUgODYgMzM0LjZsMC02OC42LTg2IDAgMCA2OS43YzAgNjIgNTAuMyAxMTIuMyAxMTIuNCAxMTIuMyA2MS42IDAgMTEyLjQtNDkuNSAxMTIuNC0xMTAuOGwwLTE2MC4zYzAtMTQuNyAxMi0yNi43IDI2LjctMjYuN3MyNi43IDEyIDI2LjcgMjYuN2wwIDMwLjl6Il19LE9zZT17cHJlZml4OiJmYWIiLGljb25OYW1lOiJnb29nbGUiLGljb246WzUxMiw1MTIsW10sImYxYTAiLCJNNTAwIDI2MS44QzUwMCA0MDMuMyA0MDMuMSA1MDQgMjYwIDUwNCAxMjIuOCA1MDQgMTIgMzkzLjIgMTIgMjU2UzEyMi44IDggMjYwIDhjNjYuOCAwIDEyMyAyNC41IDE2Ni4zIDY0LjlsLTY3LjUgNjQuOWMtODguMy04NS4yLTI1Mi41LTIxLjItMjUyLjUgMTE4LjIgMCA4Ni41IDY5LjEgMTU2LjYgMTUzLjcgMTU2LjYgOTguMiAwIDEzNS03MC40IDE0MC44LTEwNi45bC0xNDAuOCAwIDAtODUuMyAyMzYuMSAwYzIuMyAxMi43IDMuOSAyNC45IDMuOSA0MS40eiJdfSx4cnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZGlzY29yZCIsaWNvbjpbNTc2LDUxMixbXSwiZjM5MiIsIk00OTIuNSA2OS44Yy0uMi0uMy0uNC0uNi0uOC0uNy0zOC4xLTE3LjUtNzguNC0zMC0xMTkuNy0zNy4xLS40LS4xLS44IDAtMS4xIC4xcy0uNiAuNC0uOCAuOGMtNS41IDkuOS0xMC41IDIwLjItMTQuOSAzMC42LTQ0LjYtNi44LTg5LjktNi44LTEzNC40IDAtNC41LTEwLjUtOS41LTIwLjctMTUuMS0zMC42LS4yLS4zLS41LS42LS44LS44cy0uNy0uMi0xLjEtLjJjLTQxLjMgNy4xLTgxLjYgMTkuNi0xMTkuNyAzNy4xLS4zIC4xLS42IC40LS44IC43LTc2LjIgMTEzLjgtOTcuMSAyMjQuOS04Ni45IDMzNC41IDAgLjMgLjEgLjUgLjIgLjhzLjMgLjQgLjUgLjZjNDQuNCAzMi45IDk0IDU4IDE0Ni44IDc0LjIgLjQgLjEgLjggLjEgMS4xIDBzLjctLjQgLjktLjdjMTEuMy0xNS40IDIxLjQtMzEuOCAzMC00OC44IC4xLS4yIC4yLS41IC4yLS44czAtLjUtLjEtLjgtLjItLjUtLjQtLjYtLjQtLjMtLjctLjRjLTE1LjgtNi4xLTMxLjItMTMuNC00NS45LTIxLjktLjMtLjItLjUtLjQtLjctLjZzLS4zLS42LS4zLS45IDAtLjYgLjItLjkgLjMtLjUgLjYtLjdjMy4xLTIuMyA2LjItNC43IDkuMS03LjEgLjMtLjIgLjYtLjQgLjktLjRzLjcgMCAxIC4xYzk2LjIgNDMuOSAyMDAuNCA0My45IDI5NS41IDAgLjMtLjEgLjctLjIgMS0uMnMuNyAuMiAuOSAuNGMyLjkgMi40IDYgNC45IDkuMSA3LjIgLjIgLjIgLjQgLjQgLjYgLjdzLjIgLjYgLjIgLjktLjEgLjYtLjMgLjktLjQgLjUtLjYgLjZjLTE0LjcgOC42LTMwIDE1LjktNDUuOSAyMS44LS4yIC4xLS41IC4yLS43IC40cy0uMyAuNC0uNCAuNy0uMSAuNS0uMSAuOCAuMSAuNSAuMiAuOGM4LjggMTcgMTguOCAzMy4zIDMwIDQ4LjggLjIgLjMgLjYgLjYgLjkgLjdzLjggLjEgMS4xIDBjNTIuOS0xNi4yIDEwMi42LTQxLjMgMTQ3LjEtNzQuMiAuMi0uMiAuNC0uNCAuNS0uNnMuMi0uNSAuMi0uOGMxMi4zLTEyNi44LTIwLjUtMjM2LjktODYuOS0zMzQuNXptLTMwMiAyNjcuN2MtMjkgMC01Mi44LTI2LjYtNTIuOC01OS4yczIzLjQtNTkuMiA1Mi44LTU5LjJjMjkuNyAwIDUzLjMgMjYuOCA1Mi44IDU5LjIgMCAzMi43LTIzLjQgNTkuMi01Mi44IDU5LjJ6bTE5NS40IDBjLTI5IDAtNTIuOC0yNi42LTUyLjgtNTkuMnMyMy40LTU5LjIgNTIuOC01OS4yYzI5LjcgMCA1My4zIDI2LjggNTIuOCA1OS4yIDAgMzIuNy0yMy4yIDU5LjItNTIuOCA1OS4yeiJdfSxicnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiaGFja2VyLW5ld3MiLGljb246WzQ0OCw1MTIsW10sImYxZDQiLCJNMCAzMmwwIDQ0OCA0NDggMCAwLTQ0OC00NDggMHpNMjEuMiAyMjkuMmwtLjIgMGMuMS0uMSAuMi0uMyAuMy0uNCAwIC4xIDAgLjMtLjEgLjR6bTIxOCA1My45bDAgMTAwLjktMzEuNCAwIDAtMTAyLjctNzkuOC0xNTMuMyAzNy4zIDBjNTIuNSA5OC4zIDQ5LjIgMTAxLjIgNTkuMyAxMjUuNiAxMi4zLTI3IDUuOC0yNC40IDYwLjYtMTI1LjZsMzQuOCAwLTgwLjggMTU1LjF6Il19LEJrZT17cHJlZml4OiJmYWIiLGljb25OYW1lOiJlbGV2ZW50eSIsaWNvbjpbNjQwLDUxMixbIjExdHkiXSwiZTdkNiIsIk02MTUuMyAxNjguNWMyLjMgMCA0LjYgLjcgNi42IDIuMiAxLjkgMS40IDMuMSAzLjMgMy44IDUgMS40IDMuMyAxLjggNy4zIDEuOCAxMS4zIDAgMi4yLS4zIDQuOS0uNyA3LjZsMCAuNC01MC45IDI2NC45IDAgMGMtNCAyMi4xLTguNSAzOS40LTEzLjYgNTEuNy01IDEyLjEtMTAuOSAyMS42LTE4LjYgMjdsMCAwYy03LjUgNS4zLTE2LjkgNy43LTI3LjYgOGwtMyAwYy0xNiAwLTI5LjMtNC4yLTM2LjktMTQuOC0uMS0uMS0uMS0uMS0uMi0uMi0uMS0uMi0uMy0uNC0uNS0uNmwwIDBjLTEuOC0yLjQtMi41LTUuMi0yLjktNy40LS41LTIuOC0uNy02LjEtLjctOS44IDAtNy4zIC42LTEzLjUgMi4xLTE4LjIgMS40LTQuNCA0LjgtMTAuNCAxMi4yLTEwLjRsMS4zIC4xYy4yIDAgLjQgLjEgLjUgLjEgLjMgLjEgLjYgLjEgLjggLjIgLjYgLjEgMS4zIC4zIDIuMiAuNmw3LjYgMi4yIC4xIDAgNy42IDIuMWMuOSAuMiAxLjcgLjQgMi4yIC41IC40IC4xIC42IC4xIC43IC4xIDAgMCAuMSAwIC4yLS4xIC4xLS4xIC40LS4yIC44LS42IC45LS45IDIuMi0yLjYgMy42LTUuNyAyLjYtNS44IDQuMi0xNC43IDQuMi0yNy40IDAtLjctLjMtMy40LTEuMy04LjktLjktNS4xLTIuMy0xMi4yLTQuMi0yMS4xbC01Ni0yMzIuOS0uMS0uNCAwLS4zYy0uNC0yLjctLjctNS4zLS43LTcuMyAwLTMuNyAuNC03LjUgMS43LTEwLjYgLjctMS42IDEuOC0zLjQgMy41LTQuOSAxLjktMS41IDQuMi0yLjMgNi41LTIuM2wzNC42IDBjNC42IDAgOC43IDEuNyAxMS45IDVsMS4zIDEuNWMxLjIgMS42IDIgMy40IDIuNyA1LjIgLjkgMi40IDEuNSA1LjEgMiA4LjFsMzAuNCAxNjEuMiAyMy44LTE2MGMuOC01LjggMi4yLTExLjQgNS4xLTE1LjEgMy0zLjggNy4yLTUuOCAxMi01LjhsMjQgMHpNMzc1LjEgMzQuNmMyLjYgMCA1LjEgLjcgNy40IDIuMyAyLjIgMS41IDMuNyAzLjYgNC43IDUuNyAxLjkgNCAyLjUgOS4xIDIuNSAxNC41bDAgMTExLjJjMCAuMSAwIC4yIDAgLjNsMzIuNCAwYzIuNSAwIDUgLjYgNy4yIDIuMSAyLjIgMS40IDMuNyAzLjQgNC44IDUuNSAyIDMuOSAyLjYgOC44IDIuNiAxMy45bDAgMTUuNGMwIDUtLjYgOS44LTIuNiAxMy43LTEuMSAyLTIuNiA0LTQuOCA1LjQtMi4yIDEuNC00LjcgMi03LjEgMmwtMzIuNSAwIDAgMTQ1LjhjMCAxMC44IC43IDE5LjUgMiAyNi4yIDEuNCA2LjkgMy4xIDEwLjkgNC43IDEyLjkgMS4yIDEuNSAyLjIgMi41IDMuMSAzLjJsMi4yIDEuNCAuMSAuMSAyLjkgLjhjMS4yIC4yIDIuNiAuMyA0LjMgLjNsMjAuMyAwYzQuNSAwIDguOSAxLjcgMTEuOCA1LjggMi42IDMuNiAzLjMgOC4xIDMuMyAxMi4ybDAgMTcuMmMwIDQuNS0uOCA5LjMtMy40IDEzLjEtMyA0LjItNy41IDYtMTIuMyA2bDAgMC0yOS4xIC4xYy04IDAtMTUtLjYtMjEuMi0xLjctNi43LTEuMy0xMy40LTQuMS0yMC4xLTguMS03LjItNC40LTEzLTEwLjMtMTcuNS0xNy44LTQuNS03LjUtNy45LTE3LjUtMTAuNS0yOS41LTIuNi0xMi4yLTMuOS0yNi42LTMuOS00M2wwLTE0NC45LTEzLjQgMGMtMi40IDAtNC45LS42LTcuMS0yLTIuMi0xLjQtMy43LTMuNC00LjgtNS40LTItMy45LTIuNi04LjctMi42LTEzLjdsMC0xNS40YzAtNS4xIC42LTEwIDIuNi0xMy45IDEuMS0yLjEgMi42LTQgNC44LTUuNSAyLjItMS41IDQuNy0yLjEgNy4yLTIuMWwxMy40IDAgMC0uNiA1LjItMTExLjIgMC0uMSAuMy0zLjljLjUtMy44IDEuMy03LjQgMi43LTEwLjMgMi4xLTQuMiA2LTcuOSAxMS44LTcuOWwyOC42IDB6bS0yNjggMTEuN2MxLjggLjMgMy42IC45IDUuMyAyLjEgMi4xIDEuNSAzLjUgMy41IDQuNCA1LjQgMS43IDMuNyAyLjMgOC40IDIuMyAxMy4ybDAgMzc3LjhjMCA2LjctLjYgMTIuNi0yLjQgMTcuMS0uOSAyLjMtMi4zIDQuNy00LjQgNi41LTIuMyAyLTUuMSAzLTguMSAzbC00My43IDBjLTMgMC01LjgtMS4xLTguMS0zLjEtMi4xLTEuOS0zLjQtNC4zLTQuMi02LjUtMS43LTQuNS0yLjMtMTAuMy0yLjMtMTdsMC0zMTUuOGMtNC44IDEuMi04LjcgMi4yLTExLjUgMi45LTEuOSAuNS0zLjQgLjgtNC40IDEuMS0uNSAuMS0uOSAuMi0xLjIgLjMtLjEgMC0uMyAuMS0uNSAuMS0uMSAwLS4yIDAtLjMgLjEgMCAwLS4yIDAtLjMgMCAwIDAtLjIgMC0uNCAwbDAgMGMtLjEgMC0uMyAwLS40IDAtLjEgMC0uMiAwLS4yIDAtMi4yIC4xLTQuNS0uNC02LjYtMS43LTIuMy0xLjQtMy44LTMuNC00LjctNS4zLTEuOC0zLjctMi4zLTguNC0yLjMtMTNsMC0yNy40YzAtNC40IC43LTguOCAyLjYtMTIuNCAyLjEtMy45IDUuNS02LjYgOS44LTcuNmw3NS41LTE5LjVjMS40LS40IDIuOS0uNSA0LjQtLjVsMS44IC4xem0xNDMuOC0uNWMxLjggLjMgMy42IC45IDUuMiAyLjEgMi4xIDEuNSAzLjUgMy41IDQuNCA1LjQgMS43IDMuNyAyLjIgOC40IDIuMiAxMy4ybDAgMzc3LjhjMCA2LjctLjYgMTIuNi0yLjQgMTcuMS0uOSAyLjMtMi4zIDQuNy00LjQgNi41LTIuMyAyLTUuMSAzLTguMSAzbC00My43IDBjLTMgMC01LjgtMS4xLTguMS0zLjEtMi4xLTEuOS0zLjQtNC4zLTQuMi02LjUtMS43LTQuNS0yLjMtMTAuMy0yLjMtMTdsMC0zMTUuOGMtNC44IDEuMi04LjcgMi4yLTExLjUgMi45LTEuOSAuNS0zLjQgLjgtNC40IDEuMS0uNSAuMS0uOSAuMi0xLjIgLjMtLjEgMC0uMyAuMS0uNSAuMS0uMSAwLS4yIDAtLjMgLjEtLjEgMC0uMiAwLS4zIDAgMCAwLS4yIDAtLjQgMGwwIDBjLS4xIDAtLjIgMC0uMyAwLS4xIDAtLjIgMC0uMyAwLTIuMiAuMS00LjUtLjQtNi42LTEuNy0yLjMtMS40LTMuOC0zLjQtNC43LTUuMy0xLjgtMy43LTIuMy04LjMtMi4zLTEzbDAtMjcuNGMwLTQuNCAuNy04LjcgMi42LTEyLjQgMi4xLTMuOSA1LjUtNi42IDkuOC03LjZsNzUuNC0xOS40YzEuNC0uNCAyLjktLjUgNC40LS41bDEuOCAuMXoiXX0sdnJyPUJrZSx5cnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidGVhbXNwZWFrIixpY29uOls1NzYsNTEyLFtdLCJmNGY5IiwiTTE1Mi44IDM3LjJjLTMyLjIgMzguMS01Ni4xIDgyLjYtNjkuOSAxMzAuNSAwIC4yLS4xIC4zLS4xIC41LTM5LjMgMTYuMi02Ni44IDU0LjgtNjYuOCA5OS44IDAgNTkuNiA0OC40IDEwOCAxMDggMTA4czEwOC00OC40IDEwOC0xMDhjMC01My41LTM4LjktOTcuOS05MC0xMDYuNSAxNS43LTQxLjggNDAuNC03OS42IDcyLjMtMTEwLjcgMS44LTEuNiA0LTIuNiA2LjMtMy4xIDM3LjItMTEuNSA3Ni43LTEzLjMgMTE0LjgtNS4yIDExOS4zIDI1LjEgMTk4LjYgMTM4LjIgMTgxLjcgMjU4LjgtOC40IDYyLjYtMzguNiAxMTIuNy04Ny43IDE1MS40LTUwLjEgMzkuNy0xMDcuNSA1NC4zLTE3MC4yIDUyLjJsLTI0LTFjMTIuNCAyLjggMjUgNC45IDM3LjYgNi4zIDQwLjcgNC4yIDgxLjQgMi4xIDEyMC4xLTEyLjUgOTQtMzUuNSAxNDkuMy0xMDIuMyAxNjIuOS0yMDIuNSA0LjgtNTIuNi01LjgtMTA1LjQtMzAuOC0xNTItNzAuNC0xMzEuOS0yMzQuMi0xODEuNi0zNjYtMTExLjItMi40IDEuNC00LjUgMy4xLTYuMyA1LjJsLjEgMHpNMzA5LjQgNDMzLjljLTIuMSAxMS41LTQuMiAyMS45LTE0LjYgMzEuMyA1My4yLTEgMTIzLjItMjkuMiAxNjEuOC05Ny4xIDM5LjctNjkuOSAzNy42LTEzOS45LTYuMy0yMDcuOC0zNi41LTU1LjMtODkuOC04Mi40LTE1Ni42LTg2LjYgMS41IDIuMyAzLjIgNC40IDUuMiA2LjNsNS4yIDYuM2MyNS4xIDMxLjMgMzcuNiA2Ny45IDQyLjggMTA3LjUgMi4xIDE1LjctMSAzMC4zLTEzLjYgNDEuOC00LjIgMy4xLTUuMiA2LjMtNC4yIDEwLjRsNy4zIDE3LjcgMjkuMyA1NC4zYzUuMiAxMS41IDQuMiAxOS44LTYuMyAyOC4yLTMuMiAyLjUtNi43IDQuNi0xMC40IDYuM2wtMTguOCA4LjQgMy4xIDEzLjZjMy4xIDYuMyAxIDEyLjUtMy4xIDE3LjctMi41IDIuNC0zLjggNS45LTMuMSA5LjQgMi4xIDExLjUtMi4xIDE5LjgtMTIuNSAyNS4xLTIuMSAxLTQuMiA1LjItNS4yIDcuM2wwLS4xem0tMTMzLjYtMy4xYzE2LjcgMTEuNSAzNC41IDIwLjkgNTMuMiAyNi4xIDI0IDUuMiA0MS44LTYuMyA0NC45LTMwLjMgMS04LjQgNS4yLTE0LjYgMTIuNS0xNy43IDcuMy00LjIgOC40LTcuMyAyLjEtMTMuNmwtOS40LTguNCAxMy42LTQuMmM2LjMtMi4xIDcuMy01LjIgNS4yLTExLjUtMS40LTMtMi40LTYuMi0zLjEtOS40LTMuMS0xNC42LTIuMS0xNS43IDExLjUtMTguOCA4LjQtMy4xIDE1LjctNi4zIDIxLjktMTIuNSAzLjEtMi4xIDMuMS00LjIgMS04LjRsLTE2LjctMzAuM2MtMS0xLjktMi4xLTMuOC0zLjEtNS43LTYuNC0xMS43LTEzLTIzLjYtMTUuNy0zNy4xLTIuMS05LjQtMS0xNy43IDguNC0yNCA1LjItNC4yIDguNC05LjQgOC40LTE2LjctLjQtMTAuMS0xLjUtMjAuMy0zLjEtMzAuMy02LjMtMzcuNi0yMy02OC45LTUxLjItOTUtNS4yLTQuMi05LjQtNi4zLTE2LjctNC4ybC0zNS42IDEyLjcgNiAzLjZjNi4zIDMuNyAxMi4yIDcuMyAxNyAxMi4xIDMwLjMgMjYuMSA0MS44IDYxLjYgNDUuOSAxMDAuMiAxIDguNCAwIDE2LjctNy4zIDIxLjktOC40IDUuMi0xMC40IDEyLjUtNy4zIDIwLjkgNC45IDEzLjIgMTAuNCAyNiAxNi43IDM4LjZMMjkxLjYgMzE4Yy02LjMgOC40LTEzLjYgMTEuNS0yMS45IDE0LjYtMTIuNSAzLjEtMTQuNiA3LjMtMTAuNCAyMC45IC42IDEuNSAxLjQgMi44IDIuMSA0LjIgMi4xIDUuMiAxIDguNC00LjIgMTAuNGwtMTIuNSAzLjEgNS4yIDQuMiA0LjIgNC4yYzQuMiA1LjIgNC4yIDguNC0yLjEgMTAuNC03LjMgNC4yLTExLjUgOS40LTExLjUgMTcuNyAwIDEyLjUtNy4zIDE5LjgtMTguOCAyNC0zLjggMS03LjYgMS41LTExLjUgMWwtMzQuNS0yLjEgLjEgLjJ6Il19LHdycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJzdXBwbGUiLGljb246WzY0MCw1MTIsW10sImYzZjkiLCJNNjQwIDI2Mi41YzAgNjQuMS0xMDkgMTE2LjEtMjQzLjUgMTE2LjEtMjQuOCAwLTQ4LjYtMS44LTcxLjEtNSA3LjcgLjQgMTUuNSAuNiAyMy40IC42IDEzNC41IDAgMjQzLjUtNTYuOSAyNDMuNS0xMjcuMSAwLTI5LjQtMTkuMS01Ni40LTUxLjItNzggNjAgMjEuMSA5OC45IDU1LjEgOTguOSA5My40ek00Ny43IDIyNy45Yy0uMS03MC4yIDEwOC44LTEyNy4zIDI0My4zLTEyNy42IDcuOSAwIDE1LjYgLjIgMjMuMyAuNS0yMi41LTMuMi00Ni4zLTQuOS03MS00LjktMTM0LjUgLjQtMjQzLjQgNTIuNi0yNDMuMyAxMTYuNyAuMSAzOC4zIDM5LjEgNzIuMyA5OS4zIDkzLjMtMzIuMy0yMS41LTUxLjUtNDguNi01MS42LTc4em02MC4yIDM5LjlTMTE4LjQgMjgxIDEzNy4yIDI4MWMxNy45IDAgMjguNC0xMS41IDI4LjQtMjUuMSAwLTI4LTQwLjItMjUuMS00MC4yLTM5LjcgMC01LjQgNS4zLTkuMSAxMi41LTkuMSA1LjcgMCAxMS4zIDIuNiAxMS4zIDYuNmwwIDMuOSAxNC4yIDAgMC03LjljMC0xMi4xLTE1LjQtMTYuOC0yNS40LTE2LjgtMTYuNSAwLTI4LjUgMTAuMi0yOC41IDI0LjEgMCAyNi42IDQwLjIgMjUuNCA0MC4yIDM5LjkgMCA2LjYtNS44IDEwLjEtMTIuMyAxMC4xLTExLjkgMC0yMC43LTEwLjEtMjAuNy0xMC4xbC04LjggMTAuOXptMTIwLjgtNzMuNmwwIDU0LjRjMCAxMS4zLTcuMSAxNy44LTE3LjggMTcuOHMtMTcuOC02LjUtMTcuOC0xNy43bDAtNTQuNS0xNS44IDAgMCA1NWMwIDE4LjkgMTMuNCAzMS45IDMzLjcgMzEuOSAyMC4xIDAgMzMuNC0xMyAzMy40LTMxLjlsMC01NS0xNS43IDB6bTM0LjQgODUuNGwxNS44IDAgMC0yOS41IDE1LjUgMGMxNiAwIDI3LjItMTEuNSAyNy4yLTI4LjFzLTExLjItMjcuOC0yNy4yLTI3LjhsLTM5LjEgMCAwIDEzLjQgNy44IDAgMCA3MnptMTUuOC00M2wwLTI5LjEgMTIuOSAwYzguNyAwIDEzLjcgNS43IDEzLjcgMTQuNCAwIDguOS01LjEgMTQuNy0xNCAxNC43bC0xMi42IDB6bTU3IDQzbDE1LjggMCAwLTI5LjUgMTUuNSAwYzE2IDAgMjcuMi0xMS41IDI3LjItMjguMXMtMTEuMi0yNy44LTI3LjItMjcuOGwtMzkuMSAwIDAgMTMuNCA3LjggMCAwIDcyem0xNS43LTQzbDAtMjkuMSAxMi45IDBjOC43IDAgMTMuNyA1LjcgMTMuNyAxNC40IDAgOC45LTUgMTQuNy0xNCAxNC43bC0xMi42IDB6bTU3LjEgMzQuOGMwIDUuOCAyLjQgOC4yIDguMiA4LjJsMzcuNiAwYzUuOCAwIDguMi0yLjQgOC4yLTguMmwwLTEzLTE0LjMgMCAwIDUuMmMwIDEuNy0xIDIuNi0yLjYgMi42bC0xOC42IDBjLTEuNyAwLTIuNi0xLTIuNi0yLjZsMC02MS4yYzAtNS43LTIuNC04LjItOC4yLTguMmwtMTUuNCAwIDAgMTMuNCA1LjIgMGMxLjcgMCAyLjYgMSAyLjYgMi42bDAgNjEuMi0uMSAwem02My40IDBjMCA1LjggMi40IDguMiA4LjIgOC4ybDM4LjcgMGM1LjcgMCA4LjItMi40IDguMi04LjJsMC0xMy0xNC4zIDAgMCA1LjJjMCAxLjctMSAyLjYtMi42IDIuNmwtMTkuNyAwYy0xLjcgMC0yLjYtMS0yLjYtMi42bDAtMjAuMyAyNy43IDAgMC0xMy40LTI3LjcgMCAwLTIyLjQgMTkuMiAwYzEuNyAwIDIuNiAxIDIuNiAyLjZsMCA1LjIgMTQuMiAwIDAtMTNjMC01LjctMi41LTguMi04LjItOC4ybC01MS42IDAgMCAxMy40IDcuOCAwIDAgNjMuOSAuMSAwem01OC45LTc2bDAgNS45IDEuNiAwIDAtNS45IDIuNyAwIDAtMS4yLTcgMCAwIDEuMiAyLjcgMHptNS43LTEuMmwwIDcuMSAxLjUgMCAwLTUuNyAyLjMgNS43IDEuMyAwIDIuMy01LjcgMCA1LjcgMS41IDAgMC03LjEtMi4zIDAtMi4xIDUuMS0yLjEtNS4xLTIuNCAweiJdfSxIa2U9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic3F1YXJlLXR3aXR0ZXIiLGljb246WzQ0OCw1MTIsWyJ0d2l0dGVyLXNxdWFyZSJdLCJmMDgxIiwiTTY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzIwIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zMjBjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzJ6TTM1MS4zIDE5OS4zYzAgODYuNy02NiAxODYuNi0xODYuNiAxODYuNi0zNy4yIDAtNzEuNy0xMC44LTEwMC43LTI5LjQgNS4zIC42IDEwLjQgLjggMTUuOCAuOCAzMC43IDAgNTguOS0xMC40IDgxLjQtMjgtMjguOC0uNi01My0xOS41LTYxLjMtNDUuNSAxMC4xIDEuNSAxOS4yIDEuNSAyOS42LTEuMi0zMC02LjEtNTIuNS0zMi41LTUyLjUtNjQuNGwwLS44YzguNyA0LjkgMTguOSA3LjkgMjkuNiA4LjMtOS02LTE2LjQtMTQuMS0yMS41LTIzLjZzLTcuOC0yMC4yLTcuNy0zMWMwLTEyLjIgMy4yLTIzLjQgOC45LTMzLjEgMzIuMyAzOS44IDgwLjggNjUuOCAxMzUuMiA2OC42LTkuMy00NC41IDI0LTgwLjYgNjQtODAuNiAxOC45IDAgMzUuOSA3LjkgNDcuOSAyMC43IDE0LjgtMi44IDI5LTguMyA0MS42LTE1LjgtNC45IDE1LjItMTUuMiAyOC0yOC44IDM2LjEgMTMuMi0xLjQgMjYtNS4xIDM3LjgtMTAuMi04LjkgMTMuMS0yMC4xIDI0LjctMzIuOSAzNCAuMiAyLjggLjIgNS43IC4yIDguNXoiXX0sTXJyPUhrZSxrcnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidmltIixpY29uOls1MTIsNTEyLFtdLCJlODhhIiwiTTMwMy4zIDU0LjVsMC0xMi4zIDQtMy43IDcuOS03LjIgMy41LTMuMiAxNjggMCAxNS4xIDE1LjEgMCAzOC45LTMuNSAzLjYtODAuOSA4Mi45IDg2LjkgODYuOS05MS4yIDkxLjIgOC45IDAgNy42LTguMyAxLS45YzEuMS0uOCAyLjUtMS4yIDMuOS0xLjJsMjguOSAwIDEuNSAuMmMxLjUgLjQgMi44IDEuMiAzLjggMi41bDcuNiAxMC4yYzEuMyAxLjcgMS42IDMuOSAxIDUuOWwtMjIuMyA3Mi41IDEuMiAwYzIuMiAwIDQuMiAxLjEgNS41IDIuOXMxLjUgNC4xIC43IDYuMUw0NTkgNDQ1Yy0xIDIuNi0zLjQgNC4yLTYuMiA0LjJsLTQwLjQgMGMtMi4xIDAtNC4xLTEtNS4zLTIuN3MtMS42LTMuOS0xLTUuOWwyMC02My4yLTIyLjIgMC0xNi4yIDUwLjdjMi4xIC4xIDQuMSAxLjEgNS4zIDIuOSAxLjIgMS44IDEuNCA0LjIgLjYgNi4ybC0zLjMgNy45Yy0xIDIuNS0zLjUgNC4xLTYuMSA0LjFsLTM2LjggMGMtMi4xIDAtNC4xLTEtNS40LTIuN3MtMS42LTMuOS0xLTUuOWwxMC0zMi4xLTIzLjkgMjMuOGMuMyAxLjIgLjMgMi41LS4xIDMuOGwtMi45IDguNmMtLjkgMi43LTMuNCA0LjUtNi4zIDQuNWwtNy40IDAtNTQuNiA1NC42LTgzLjgtODMuOC0zMS42IDMyLjUtMy42IDMuNy00OS4yIDAtMi44LTEuN2MtOC44LTUuMS0xNC44LTguNS0xNy45LTEwLjNsMC0xMjkuMy01OC41LTU4LjUgMi42LTIuNiA1NS45LTU2IDAtOTkuNC0xMi42IDAtMTAuOC0xMC44LTMuNi0zLjYgMC00MC43IDMuMi0zLjUgNy45LTguNSAzLjctMy45IDE2Ni42IDAgOCA4IDI3LjQtMjcuNCA0Ni40IDQ2LjR6bS0yNTEtNS42bDAgMzAuMyA5LjQgNy44IDE4LjkgMCAwIDM0Ny45IDExLjQgMTAuMyAzOC4yIDAgOTEtOTNjMC0uNCAuMS0uOCAuMi0xLjFsMi42LTEwLjVjLjctMi45IDMuNC01IDYuNC01bDcuMSAwIDE1LjUtMTUuOS0yLTJjLTEuOC0xLjgtMi40LTQuNS0xLjUtNi45bDYuOS0xOS4zYy40LTEuMSAxLjEtMiAxLjktMi44bDYuOS01LjljMS4yLTEgMi44LTEuNiA0LjMtMS42bDE5LjcgMCAxLjMgLjJjLjEgMCAuMSAuMSAuMiAuMWwxOTkuMi0yMDMuNSAwLTI4LjctOC4yLTcuNC0xNTYuMiAwLTcuOCA3LjggMCAzMC41IDguMiA3LjQgMjEgMC0xNDcgMTQ2LjQgMC0xNDYuNiAxNi45IDAgOC43LTguNyAwLTI3LjctNy40LTkuOS0xNTcuNiAwLTggOHpNMjI3LjYgMzUyLjdsMTQuOCAwLTMxLjggOTAuOSA0NS4zIDAgMy05LjYtMTIuNSAwIDMxLjUtOTEuOS00Ny42IDAtMi42IDEwLjV6bTEzNi45IDFsLTE2LjQgMC0xMC41LTEwLjgtMzUuOCAwLTMuMyA5LjggMTEuOCAwLTMwLjUgODkuOSAzOC4xIDAgMi45LTguNi04LjggMCAyMC02MyAzNy44IDAtMjIuMyA3MS42IDM2LjggMCAzLjMtNy45LTguOCAwIDIwLjMtNjQgMzYuMSAwLTIyLjcgNzEuOSA0MC40IDAgMy4zLTguNi0xMC4yIDAgMjUtODEuMS03LjUtMTAuMi0yOC45IDAtOS41IDEwLjUtMTcuNCAwLTkuOS0xMC44LTIzLjMgMC05LjggMTEuMnpNMjYyLjUgMjkzLjZsLTYuOSAxOS4zIDUuMyA1LjMgMjEuMyAwIDUuNi01LjYgNS45LTIwLjMtNC42LTQuNi0xOS43IDAtNi45IDUuOXoiXX0sRnNlPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImZvbnQtYXdlc29tZSIsaWNvbjpbNTEyLDUxMixbNjI1MDEsNjI2OTQsImZvbnQtYXdlc29tZS1mbGFnIiwiZm9udC1hd2Vzb21lLWxvZ28tZnVsbCJdLCJmMmI0IiwiTTkxLjcgOTZDMTA2LjMgODYuOCAxMTYgNzAuNSAxMTYgNTIgMTE2IDIzLjMgOTIuNyAwIDY0IDBTMTIgMjMuMyAxMiA1MmMwIDE2LjcgNy44IDMxLjUgMjAgNDFsMCA0MTkgNjQgMCAwLTY0IDM3My42IDBjMTQuNiAwIDI2LjQtMTEuOCAyNi40LTI2LjQgMC0zLjctLjgtNy4zLTIuMy0xMC43TDQzMiAyNzIgNDkzLjcgMTMzLjFjMS41LTMuNCAyLjMtNyAyLjMtMTAuNyAwLTE0LjYtMTEuOC0yNi40LTI2LjQtMjYuNEw5MS43IDk2eiJdfSxTcnI9RnNlLHpycj1Gc2UscWtlPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6IndpcnNpbmRoYW5kd2VyayIsaWNvbjpbNDQ4LDUxMixbIndzaCJdLCJlMmQwIiwiTTE4LjkgNDc5LjhsODMuNCAwIDAtMTEyLTgzLjQgNDcgMCA2NXptMzI5IDBsODIuNCAwIDAtNjUtODIuNC00NyAwIDExMnptMC00NDhsMCAyMTkuOC0xMjMuNi03Mi40LTEyMS43IDcyLjQgMC0yMTkuOC04My43IDAgMCAzNjAuOCAyMDUuNC0xMjIuMyAyMDYgMTIyLjMgMC0zNjAuOC04Mi4zIDB6Il19LENycj1xa2UsX3JyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Inpvb20iLGljb246WzY0MCw1MTIsW10sImU4N2IiLCJNMTM0LjIgMzI2LjZsLTExNC40IDBjLTggMC0xNS4yLTQuOC0xOC4zLTEyLjJTLjEgMjk4LjYgNS44IDI5Mi45bDc5LjMtNzkuMy01Ni44IDBDMTIuNyAyMTMuNiAwIDIwMSAwIDE4NS40bDEwNS41IDBjOCAwIDE1LjIgNC44IDE4LjMgMTIuMnMxLjQgMTUuOS00LjMgMjEuNmwtNzkuMyA3OS4zIDY1LjcgMGMxNS42IDAgMjguMyAxMi42IDI4LjMgMjguM3pNNjQwIDIzOC4zYzAtMzAuNC0yNC43LTU1LjEtNTUuMS01NS4xLTE2LjIgMC0zMC45IDcuMS00MSAxOC4zLTEwLjEtMTEuMi0yNC43LTE4LjMtNDEtMTguMy0zMC40IDAtNTUuMSAyNC43LTU1LjEgNTUuMWwwIDg4LjNjMTUuNiAwIDI4LjMtMTIuNyAyOC4zLTI4LjNsMC02MGMwLTE0LjggMTItMjYuOCAyNi44LTI2LjhzMjYuOCAxMiAyNi44IDI2LjhsMCA2MGMwIDE1LjYgMTIuNiAyOC4zIDI4LjMgMjguM2wwLTg4LjNjMC0xNC44IDEyLTI2LjggMjYuOC0yNi44czI2LjggMTIgMjYuOCAyNi44bDAgNjBjMCAxNS42IDEyLjYgMjguMyAyOC4zIDI4LjNsMC04OC4zek0yODguMiAyNTZhNzIuOCA3Mi44IDAgMSAxIDE0NS41IDAgNzIuOCA3Mi44IDAgMSAxIC0xNDUuNSAwem0xMTcuMyAwYTQ0LjUgNDQuNSAwIDEgMCAtODkgMCA0NC41IDQ0LjUgMCAxIDAgODkgMHptLTI3NC4xIDBhNzIuOCA3Mi44IDAgMSAxIDE0NS41IDAgNzIuOCA3Mi44IDAgMSAxIC0xNDUuNSAwem0xMTcuMyAwYTQ0LjUgNDQuNSAwIDEgMCAtODkgMCA0NC41IDQ0LjUgMCAxIDAgODkgMHoiXX0sVHJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImNvbmZsdWVuY2UiLGljb246WzUxMiw1MTIsW10sImY3OGQiLCJNMi44IDQxMi4yYy00LjUgNy42LTIuMSAxNy41IDUuNSAyMi4ybDEwNS45IDY1LjJjNy43IDQuNyAxNy43IDIuNCAyMi40LTUuMyAwLS4xIC4xLS4yIC4xLS4yIDY3LjEtMTEyLjIgODAuNS05NS45IDI4MC45LS43IDguMSAzLjkgMTcuOCAuNCAyMS43LTcuNyAuMS0uMSAuMS0uMyAuMi0uNGw1MC40LTExNC4xYzMuNi04LjEtLjEtMTcuNi04LjEtMjEuMy0yMi4yLTEwLjQtNjYuMi0zMS4yLTEwNS45LTUwLjMtMjQ3LjktMTIwLjYtMzMwLjggNDUuNy0zNzMuMSAxMTIuNnpNNTEwLjIgMTAwLjFjNC41LTcuNiAyLjEtMTcuNS01LjUtMjIuMkwzOTguOSAxMi44Yy03LjUtNS0xNy42LTMuMS0yMi42IDQuNC0uMiAuMy0uNCAuNi0uNiAxLTY3LjMgMTEyLjYtODEuMSA5NS42LTI4MC42IC45LTguMS0zLjktMTcuOC0uNC0yMS43IDcuNy0uMSAuMS0uMSAuMy0uMiAuNEwyMi43IDE0MS4zYy0zLjYgOC4xIC4xIDE3LjYgOC4xIDIxLjMgMjIuMiAxMC40IDY2LjMgMzEuMiAxMDYgNTAuNCAyNDggMTIwIDMzMC44LTQ1LjQgMzczLjQtMTEyLjl6Il19LExycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJkaWdnIixpY29uOls1MTIsNTEyLFtdLCJmMWE2IiwiTTgxLjcgMTcyLjNsLTgxLjcgMCAwIDE3NC40IDEzMi43IDAgMC0yNTAuNy01MSAwIDAgNzYuM3ptMCAxMzMuNGwtMzAuOCAwIDAtOTIuMyAzMC44IDAgMCA5Mi4zek0zNzguOSAxNzIuM2wwIDE3NC40IDgxLjggMCAwIDI4LjUtODEuOCAwIDAgNDAuOCAxMzMuMSAwIDAtMjQzLjctMTMzLjEgMHptODEuOCAxMzMuNGwtMzAuOCAwIDAtOTIuMyAzMC44IDAgMCA5Mi4zem0tMjM1LjYgNDFsODIuMSAwIDAgMjguNS04Mi4xIDAgMCA0MC44IDEzMy4zIDAgMC0yNDMuNy0xMzMuMyAwIDAgMTc0LjR6bTUxLjItMTMzLjNsMzAuOCAwIDAgOTIuMy0zMC44IDAgMC05Mi4zek0xNTMuMyA5Nmw1MS4zIDAgMCA1MS01MS4zIDAgMC01MXptMCA3Ni4zbDUxLjMgMCAwIDE3NC40LTUxLjMgMCAwLTE3NC40eiJdfSxEcnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidGhyZWFkcyIsaWNvbjpbNDQ4LDUxMixbXSwiZTYxOCIsIk0zMzEuNSAyMzUuN2MyLjIgLjkgNC4yIDEuOSA2LjMgMi44IDI5LjIgMTQuMSA1MC42IDM1LjIgNjEuOCA2MS40IDE1LjcgMzYuNSAxNy4yIDk1LjgtMzAuMyAxNDMuMi0zNi4yIDM2LjItODAuMyA1Mi41LTE0Mi42IDUzbC0uMyAwYy03MC4yLS41LTEyNC4xLTI0LjEtMTYwLjQtNzAuMi0zMi4zLTQxLTQ4LjktOTguMS00OS41LTE2OS42bDAtLjVDMTcgMTg0LjMgMzMuNiAxMjcuMiA2NS45IDg2LjIgMTAyLjIgNDAuMSAxNTYuMiAxNi41IDIyNi40IDE2bC4zIDBjNzAuMyAuNSAxMjQuOSAyNCAxNjIuMyA2OS45IDE4LjQgMjIuNyAzMiA1MCA0MC42IDgxLjdsLTQwLjQgMTAuOGMtNy4xLTI1LjgtMTcuOC00Ny44LTMyLjItNjUuNC0yOS4yLTM1LjgtNzMtNTQuMi0xMzAuNS01NC42LTU3IC41LTEwMC4xIDE4LjgtMTI4LjIgNTQuNC0yNi4yIDMzLjMtMzkuOCA4MS41LTQwLjMgMTQzLjIgLjUgNjEuNyAxNC4xIDEwOS45IDQwLjMgMTQzLjMgMjggMzUuNiA3MS4yIDUzLjkgMTI4LjIgNTQuNCA1MS40LS40IDg1LjQtMTIuNiAxMTMuNy00MC45IDMyLjMtMzIuMiAzMS43LTcxLjggMjEuNC05NS45LTYuMS0xNC4yLTE3LjEtMjYtMzEuOS0zNC45LTMuNyAyNi45LTExLjggNDguMy0yNC43IDY0LjgtMTcuMSAyMS44LTQxLjQgMzMuNi03Mi43IDM1LjMtMjMuNiAxLjMtNDYuMy00LjQtNjMuOS0xNi0yMC44LTEzLjgtMzMtMzQuOC0zNC4zLTU5LjMtMi41LTQ4LjMgMzUuNy04MyA5NS4yLTg2LjQgMjEuMS0xLjIgNDAuOS0uMyA1OS4yIDIuOC0yLjQtMTQuOC03LjMtMjYuNi0xNC42LTM1LjItMTAtMTEuNy0yNS42LTE3LjctNDYuMi0xNy44bC0uNyAwYy0xNi42IDAtMzkgNC42LTUzLjMgMjYuM2wtMzQuNC0yMy42YzE5LjItMjkuMSA1MC4zLTQ1LjEgODcuOC00NS4xbC44IDBjNjIuNiAuNCA5OS45IDM5LjUgMTAzLjcgMTA3LjdsLS4yIC4yIC4xIDB6bS0xNTYgNjguOGMxLjMgMjUuMSAyOC40IDM2LjggNTQuNiAzNS4zIDI1LjYtMS40IDU0LjYtMTEuNCA1OS41LTczLjItMTMuMi0yLjktMjcuOC00LjQtNDMuNC00LjQtNC44IDAtOS42IC4xLTE0LjQgLjQtNDIuOSAyLjQtNTcuMiAyMy4yLTU2LjIgNDEuOGwtLjEgLjF6Il19LGprZT17cHJlZml4OiJmYWIiLGljb25OYW1lOiJ3cHJlc3NyIixpY29uOls1MTIsNTEyLFsicmVuZGFjdCJdLCJmM2U0IiwiTTI1NiA4YTI0OCAyNDggMCAxIDAgMCA0OTYgMjQ4IDI0OCAwIDEgMCAwLTQ5NnpNNDI3LjMgMTY2LjZjLTE1LjIgMzQuNS0zMC40IDY5LTQ1LjYgMTAzLjUtMi40IDUuNS02LjkgOC4yLTEzIDguMi0yMyAwLTQ2IC4xLTY5IDAtNS4xIDAtOC4yIDEuOS0xMC4zIDYuNy0xMC4yIDIzLjYtMjAuNiA0Ny0zMSA3MC41LTEuNSAzLjUtNC4xIDUuMy03LjkgNS4zLTQ1LjkgMC05MS45IDAtMTM3LjggMC0zLjEgMC01LjYtMS4xLTcuNy0zLjQtMTEuMi0xMi4zLTIyLjUtMjQuNi0zMy43LTM2LjktMi43LTMtMi44LTYuMi0xLjItOS43IDguNy0xOS41IDE3LjMtMzkuMSAyNS45LTU4LjcgMTIuOS0yOS40IDI1LjktNTguNyAzOC43LTg4LjEgMS43LTMuOSA0LjMtNS43IDguNS01LjcgMTQuMiAuMSAyOC41IDAgNDIuNyAwIDYuMiAwIDkuMiA0LjggNi43IDEwLjYtMTMuNiAzMC44LTI3LjIgNjEuNi00MC43IDkyLjMtNS43IDEzLTExLjQgMjYtMTcuMSAzOS0zLjkgOSA3LjEgMTIgMTEgNS42IC4yLS40LTEuNCA0LjIgMzAtNjcuNyAxLjQtMy4xIDMuNC00LjQgNi44LTQuNCAxNS4yIC4xIDMwLjQgMCA0NS42IDAgNS42IDAgNy45IDMuNiA1LjcgOC43LTguMyAxOS0xNi43IDM3LjktMjUgNTYuOS01IDExLjQgOC4xIDEyLjUgMTEuMyA1LjMgMC0uMSAyNy45LTYzLjMgMzIuMi03My4yIDItNC42IDUuNC02LjUgMTAuMy02LjUgMjYuNCAuMSA1Mi45IDAgNzkuMyAwIDEyLjQgMCAxMy45LTEzLjYgMy45LTEzLjYtMjUuMyAwLTUwLjUgMC03NS44IDAtNi4zIDAtNy44LTIuNS01LjMtOC4zIDUuOC0xMy4xIDExLjYtMjYuMSAxNy4zLTM5LjIgMS43LTQgNC41LTUuOCA4LjgtNS44IDIzLjEgLjEgMjYgMCAxMzAuOCAwIDYuMSAwIDggMi44IDUuNiA4LjN6Il19LEFycj1qa2UsRXJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InlvYXN0IixpY29uOls0NDgsNTEyLFtdLCJmMmIxIiwiTTkxLjMgNzZsMTg2IDAtNyAxOC45LTE3OSAwYy0zOS43IDAtNzEuOSAzMS42LTcxLjkgNzAuM2wwIDIwNS40YzAgMzUuNCAyNC45IDcwLjMgODQgNzAuM2wwIDE5LjEtMTIuMSAwQzQxLjIgNDYwIDAgNDE5LjggMCAzNzAuNUwwIDE2NS4yQzAgMTE1LjkgNDAuNyA3NiA5MS4zIDc2ek0zMjAuNCAyMGw2Ni41IDBjLTE0My44IDM3OC4xLTE0NS43IDM5OC45LTE4NC43IDQzOS4zLTIwLjggMjEuNi00OS4zIDMxLjctNzguMyAzMi43bDAtNTEuMWM0OS4yLTcuNyA2NC42LTQ5LjkgNjQuNi03NS4zIDAtMjAuMSAuNi0xMi42LTgyLjEtMjIzLjJsNjEuNCAwIDUwLjQgMTU2LjYgMTAyLjItMjc5ek00NDggMTYxLjVsMCAyOTguNS0yMTQgMGM2LjYtOS42IDEwLjctMTYuMyAxMi4xLTE5LjRsMTgyLjUgMCAwLTI3OS4xYzAtMzIuNS0xNy4xLTUxLjktNDguMi02Mi45TDM4Ny4xIDgxYzQxLjcgMTMuNiA2MC45IDQzLjEgNjAuOSA4MC41eiJdfSwkcnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToibmltYmxyIixpY29uOlszODQsNTEyLFtdLCJmNWE4IiwiTTI0Ni42IDM1My4zYTI3IDI3IDAgMSAxIDAtNTQgMjcgMjcgMCAxIDEgMCA1NHptLTc5LjQtMjdhMjcuMSAyNy4xIDAgMSAxIC01NC4zIDAgMjcuMSAyNy4xIDAgMSAxIDU0LjMgMHpNMTkxLjggMTU5QzE1NyAxNTkgODkuNCAxNzguOCA1OS4yIDIyN0wxNCAwIDE0IDMzNS41QzE0IDQzMy4xIDkzLjYgNTEyIDE5MS44IDUxMlMzNjkuNSA0MzMgMzY5LjUgMzM1LjUgMjkwLjEgMTU5IDE5MS44IDE1OXptMCAzMDguMWMtNzMuMyAwLTEzMi41LTU4LjktMTMyLjUtMTMxLjZzNTkuMi0xMzEuNiAxMzIuNS0xMzEuNiAxMzIuNSA1OC45IDEzMi41IDEzMS41LTU5LjMgMTMxLjYtMTMyLjUgMTMxLjZsMCAuMXoiXX0sUHJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InBpeGVsZmVkIixpY29uOls1MTIsNTEyLFtdLCJlN2RiIiwiTTI1NiAwYTI1NiAyNTYgMCAxIDEgMCA1MTIgMjU2IDI1NiAwIDEgMSAwLTUxMnpNMjM1LjcgMzExLjlsNDcgMGM0NC4yIDAgODAuMS0zNC45IDgwLjEtNzhzLTM1LjktNzgtODAuMS03OGwtNjcuOCAwYy0yNS41IDAtNDYuMiAyMC4xLTQ2LjIgNDVsMCAxNzUuMSA2Ny02NC4xeiJdfSxJcnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToieWFob28iLGljb246WzUxMiw1MTIsW10sImYxOWUiLCJNMjIzLjggMTQxLjFsLTU2LjcgMTQzLjItNTYtMTQzLjItOTYuMSAwIDEwNS44IDI0OS4xLTM4LjYgODkuOCA5NC4yIDAgMTQwLjktMzM4LjktOTMuNiAwek0zMjkuMiAyNzYuOWE1OC4yIDU4LjIgMCAxIDAgMCAxMTYuNCA1OC4yIDU4LjIgMCAxIDAgMC0xMTYuNHpNMzk0LjcgMzJsLTkzIDIyMy41IDEwNC44IDAgOTIuNi0yMjMuNS0xMDQuNCAweiJdfSxOcnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiYmx1ZXNreSIsaWNvbjpbNTc2LDUxMixbXSwiZTY3MSIsIk00MDcuOCAyOTQuN2MtMy4zLS40LTYuNy0uOC0xMC0xLjMgMy40IC40IDYuNyAuOSAxMCAxLjN6TTI4OCAyMjcuMUMyNjEuOSAxNzYuNCAxOTAuOSA4MS45IDEyNC45IDM1LjMgNjEuNi05LjQgMzcuNS0xLjcgMjEuNiA1LjUgMy4zIDEzLjggMCA0MS45IDAgNTguNFM5LjEgMTk0IDE1IDIxMy45YzE5LjUgNjUuNyA4OS4xIDg3LjkgMTUzLjIgODAuNyAzLjMtLjUgNi42LS45IDEwLTEuNC0zLjMgLjUtNi42IDEtMTAgMS40LTkzLjkgMTQtMTc3LjMgNDguMi02Ny45IDE2OS45IDEyMC4zIDEyNC42IDE2NC44LTI2LjcgMTg3LjctMTAzLjQgMjIuOSA3Ni43IDQ5LjIgMjIyLjUgMTg1LjYgMTAzLjQgMTAyLjQtMTAzLjQgMjguMS0xNTYtNjUuOC0xNjkuOS0zLjMtLjQtNi43LS44LTEwLTEuMyAzLjQgLjQgNi43IC45IDEwIDEuMyA2NC4xIDcuMSAxMzMuNi0xNS4xIDE1My4yLTgwLjcgNS45LTE5LjkgMTUtMTM4LjkgMTUtMTU1LjVzLTMuMy00NC43LTIxLjYtNTIuOWMtMTUuOC03LjEtNDAtMTQuOS0xMDMuMiAyOS44LTY2LjEgNDYuNi0xMzcuMSAxNDEuMS0xNjMuMiAxOTEuOHoiXX0sRnJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InNjcmliZCIsaWNvbjpbMzg0LDUxMixbXSwiZjI4YSIsIk00Mi42IDI1Mi43Yy0xNi4xLTE5LTI0LjctNDUuOS0yNC44LTc5LjkgMC0xMDAuNCA3NS4yLTE1My4xIDE2Ny4yLTE1My4xIDk4LjYtMS42IDE1Ni44IDQ5IDE4NC4zIDcwLjZsLTUwLjUgNzIuMS0zNy4zLTI0LjYgMjYuOS0zOC42Yy0zNi41LTI0LTc5LjQtMzYuNS0xMjMtMzUuOC01MC43LS44LTExMS43IDI3LjItMTExLjcgNzYuMiAwIDE4LjcgMTEuMiAyMC43IDI4LjYgMTUuNiAyMy4zLTUuMyA0MS45IC42IDU1LjggMTQgMjYuNCAyNC4zIDIzLjIgNjcuNi0uNyA5MS45LTI5LjIgMjkuNS04NS4yIDI3LjMtMTE0LjgtOC40em0zMTcuNyA1LjljLTE1LjUtMTguOC0zOC45LTI5LjQtNjMuMi0yOC42LTM4LjEtMi03MS4xIDI4LTcwLjUgNjcuMi0uNyAxNi44IDYgMzMgMTguNCA0NC4zIDE0LjEgMTMuOSAzMyAxOS43IDU2LjMgMTQuNCAxNy40LTUuMSAyOC42LTMuMSAyOC42IDE1LjYgMCA0LjMtLjUgOC41LTEuNCAxMi43LTE2LjcgNDAuOS01OS41IDY0LjQtMTIxLjQgNjQuNC01MS45IC4yLTEwMi40LTE2LjQtMTQ0LjEtNDcuM2wzMy43LTM5LjQtMzUuNi0yNy40LTYwLjggNzEuOCAxNS40IDEzLjhjNTIuNSA0Ni44IDEyMC40IDcyLjUgMTkwLjcgNzIuMiA1MS40IDAgOTQuNC0xMC41IDEzMy42LTQ0LjEgNTcuMS01MS40IDU0LjItMTQ5LjIgMjAuMy0xODkuNnoiXX0sT3JyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImNyZWF0aXZlLWNvbW1vbnMtcGQiLGljb246WzUxMiw1MTIsW10sImY0ZWMiLCJNMjU2IDhhMjQ4IDI0OCAwIDEgMCAwIDQ5NiAyNDggMjQ4IDAgMSAwIDAtNDk2em0wIDQ0OS41Yy0xMzkuMiAwLTIzNS44LTEzOC0xOTAuMi0yNjcuOWw3OC44IDM1LjFjLTIuMSAxMC41LTMuMyAyMS41LTMuMyAzMi45IDAgOTkgNzMuOSAxMjYuOSAxMjAuNCAxMjYuOSAyMi45IDAgNTMuNS02LjcgNzkuNC0yOS41TDMwNSAzMTEuMWMtNS41IDYuMy0xNy42IDE2LjctMzYuMyAxNi43LTM3LjggMC01My43LTM5LjktNTMuOS03MS45IDIzMC40IDEwMi42IDIxNi41IDk2LjUgMjE3LjkgOTYuOC0zNC4zIDYyLjQtMTAwLjYgMTA0LjgtMTc2LjcgMTA0Ljh6bTE5NC4yLTE1MGwtMjI0LTEwMGMxOC44LTM0IDU0LjktMzAuNyA3NC43LTExbDQwLjQtNDEuNmMtMjcuMS0yMy4zLTU4LTI3LjUtNzguMS0yNy41LTQ3LjQgMC04MC45IDIwLjUtMTAwLjcgNTEuNkw4Ny42IDE0NS42YzM2LjEtNTQuOSA5OC4xLTkxLjIgMTY4LjUtOTEuMiAxMTEuMSAwIDIwMS41IDkwLjQgMjAxLjUgMjAxLjUgMCAxOC0yLjQgMzUuNC02LjggNTItLjMtLjEtLjQtLjItLjYtLjR6Il19LFJycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJlYXJseWJpcmRzIixpY29uOls1MTIsNTEyLFtdLCJmMzlhIiwiTTMyOS4zIDQ3LjVjMS4yLTEzIDIxLjMtMTQgMzYuNi04LjcgLjkgLjMgMjYuMiA5LjcgMTkgMTUuMi0yNy45LTcuNC01Ni40IDE4LjItNTUuNi02LjV6bS0yMDEgNi45YzMwLjctOC4xIDYyIDIwIDYxLjEtNy4xLTEuMy0xNC4yLTIzLjQtMTUuMy00MC4yLTkuNi0xIC4zLTI4LjcgMTAuNS0yMC45IDE2Ljd6TTMzNS41IDE2MGExNiAxNiAwIDEgMCAwIDMyIDE2IDE2IDAgMSAwIDAtMzJ6bS0xNTkuNyAwYTE2IDE2IDAgMSAwIDAgMzIgMTYgMTYgMCAxIDAgMC0zMnpNNDk0LjMgMzIzLjJjLTkuOSAyNC00MC43IDExLTYzLjktMS4yLTEzLjUgNjkuMS01OC4xIDExMS40LTEyNi4zIDEyNC4yIC4zIC45LTItLjEgMjQgMSAzMy42IDEuNCA2My44LTMuMSA5Ny40LTgtMTkuOC0xMy44LTExLjQtMzcuMS05LjgtMzguMSAxLjQtLjkgMTQuNyAxLjcgMjEuNiAxMS41IDguNi0xMi41IDI4LjQtMTQuOCAzMC4yLTEzLjYgMS42IDEuMSA2LjYgMjAuOS02LjkgMzQuNiA0LjctLjkgOC4yLTEuNiA5LjgtMi4xIDIuNi0uOCAxNy43IDExLjMgMy4xIDEzLjMtMTQuMyAyLjMtMjIuNiA1LjEtNDcuMSAxMC44LTQ1LjkgMTAuNy04NS45IDExLjgtMTE3LjcgMTIuOGwxIDExLjZjMy44IDE4LjEtMjMuNCAyNC4zLTI3LjYgNi4yIC44IDE3LjktMjcuMSAyMS44LTI4LjQtMWwtLjUgNS4zYy0uNyAxOC40LTI4LjQgMTcuOS0yOC4zLS42LTcuNSAxMy41LTI4LjEgNi44LTI2LjQtOC41bDEuMi0xMi40Yy0zNi43IC45LTU5LjcgMy4xLTYxLjggMy4xLTIwLjkgMC0yMC45LTMxLjYgMC0zMS42IDIuNCAwIDI3LjcgMS4zIDYzLjIgMi44LTYxLjEtMTUuNS0xMDMuNy01NS0xMTQuOS0xMTguMi0yNSAxMi44LTU3LjUgMjYuOC02OC4yIC44LTEwLjUtMjUuNCAyMS41LTQyLjYgNjYuOC03My40IC43LTYuNiAxLjYtMTMuMyAyLjctMTkuOC0xNC40LTE5LjYtMTEuNi0zNi4zLTE2LjEtNjAuNC0xNi44IDIuNC0yMy4yLTkuMS0yMy42LTIzLjEgLjMtNy4zIDIuMS0xNC45IDIuNC0xNS40IDEuMS0xLjggMTAuMS0yIDEyLjctMi42IDYtMzEuNyA1MC42LTMzLjIgOTAuOS0zNC41IDE5LjctMjEuOCA0NS4yLTQxLjUgODAuOS00OC4zLTE1LjMtMTkuNC0zLjQtMzkuOS0yLjQtNDAuNCAxLjctLjggMjEuMiA0LjMgMjYuMyAyMy4yIDUuMi04LjggMTguMy0xMS40IDE5LjYtMTAuNyAxLjEgLjYgNi40IDE1LTQuOSAyNS45IDQwLjMgMy41IDcyLjIgMjQuNyA5NiA1MC43IDM2LjEgMS41IDcxLjggNS45IDc3LjEgMzQgMi43IC42IDExLjYgLjggMTIuNyAyLjYgLjMgLjUgMi4xIDguMSAyLjQgMTUuNC0uNSAxMy45LTYuOCAyNS40LTIzLjYgMjMuMS0zLjIgMTcuMy0yLjcgMzIuOS04LjcgNDcuNyAyLjQgMTEuNyA0IDIzLjggNC44IDM2LjQgMzcgMjUuNCA3MC4zIDQyLjUgNjAuMyA2Ni45ek0yMjMuNSAxNTkuOWMuOS00NC0zNy45LTQyLjItNzguNi00MC4zLTIxLjcgMS0zOC45IDEuOS00NS41IDEzLjktMTEuNCAyMC45IDUuOSA5Mi45IDIzLjIgMTAxLjIgOS44IDQuNyA3My40IDcuOSA4Ni4zLTcuMSA4LjItOS40IDE1LTQ5LjQgMTQuNi02Ny43em01MiA1OC4zYy00LjMtMTIuNC02LTMwLjEtMTUuMy0zMi43LTItLjUtOS0uNS0xMSAwLTEwIDIuOC0xMC44IDIyLjEtMTcgMzcuMiAxNS40IDAgMTkuMyA5LjcgMjMuNyA5LjcgNC4zIDAgNi4zLTExLjMgMTkuNi0xNC4yem0xMzUuNy04NC43Yy02LjYtMTIuMS0yNC44LTEyLjktNDYuNS0xMy45LTQwLjItMS45LTc4LjItMy44LTc3LjMgNDAuMy0uNSAxOC4zIDUgNTguMyAxMy4yIDY3LjggMTMgMTQuOSA3Ni42IDExLjggODYuMyA3LjEgMTUuOC03LjYgMzYuNS03OC45IDI0LjMtMTAxLjN6Il19LEJycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJzeW1mb255Y2FzdHMiLGljb246WzU3Niw1MTIsW10sImU4YWIiLCJNMjkzLjggMzQyLjVjMy40LTEuNSA2LjgtMS41IDEwLjIgMGw1NC4yIDIyLjZjMi42IC45IDQuNyAyLjYgNi4yIDQuOHMyLjMgNC44IDIuMyA3LjZjMCAxOS40LTMuNiAzNy4yLTEwLjcgNTMuNC02LjIgMTMuNi0xNC41IDI1LjQtMjQuOCAzNS42LTguNyA4LjUtMTcuNyAxNC42LTI3LjEgMTguNC0zLjQgMS41LTYuOCAxLjUtMTAuMiAwLTEwLjctNC4zLTIwLjYtMTEuMy0yOS43LTIwLjktMTAtMTAuNC0xNy44LTIyLjUtMjMuNS0zNi40LTYuNC0xNS42LTkuNi0zMi4zLTkuNi01MCAwLTIuOCAuNy01LjQgMi4yLTcuNiAxLjUtMi4zIDMuNi0zLjkgNi4yLTQuOGw1NC4yLTIyLjZ6TTQ3OS43IDQ4My44YTcwLjEgNzAuMSAwIDEgMSAwLTE0MC4yIDcwLjEgNzAuMSAwIDEgMSAwIDE0MC4yek0yNDQuNiAzNzcuNmMwIDE1LjMgMi42IDI5LjcgNy45IDQzLjIgNC45IDEyLjQgMTEuNiAyMy4zIDIwLjEgMzIuNSA4LjEgOC45IDE2LjkgMTUuMyAyNi4zIDE5LjIgOS4yLTMuOCAxNy44LTEwIDI1LjctMTguNyA4LjctOS4yIDE1LjQtMTkuOSAyMC4zLTMyLjIgNS41LTEzLjcgOC4yLTI4LjQgOC4yLTQ0LjFsLTU0LjItMjIuNi01NC4yIDIyLjZ6bTIzNS4xLTIwLjNhNTYuNSA1Ni41IDAgMSAwIDAgMTEzIDU2LjUgNTYuNSAwIDEgMCAwLTExM3ptLTM1Mi44IDIuM2M0LjEgMCA3LjYgMS4zIDEwLjQgMy45IDIuOCAyLjYgNC4yIDUuOSA0LjIgOS42bDAgMTYuNCAzMS4xLTE5LjJjMS41LTEuMSAzLjItMS43IDUuMS0xLjcgMi40IDAgNC42IC44IDYuMyAyLjVzMi43IDMuOCAyLjcgNi4ybDAgNzIuNmMwIDIuNi0uOSA0LjgtMi43IDYuNXMtMy45IDIuNS02LjMgMi41Yy0xLjkgMC0zLjYtLjYtNS4xLTEuN2wtMzEuMS0xOS4yIDAgMTYuNGMwIDMuOC0xLjQgNy00LjIgOS42cy02LjMgNC0xMC40IDRsLTg4LjIgMGMtNC4xIDAtNy42LTEuMy0xMC41LTRzLTQuMi01LjgtNC4yLTkuNmwwLTgxLjNjMC0zLjggMS40LTcgNC4yLTkuNnM2LjMtMy45IDEwLjUtMy45bDg4LjIgMHptMTcyIDk3LjhjLTExLjMtNy0yMC40LTE2LjQtMjcuNC0yOC4zLTcuNS0xMi40LTExLjktMjYuNi0xMy00Mi40bDQwLjQtMTcgMCA4Ny42ek0zNy41IDM3My40bDAgODAuOGMuMiAuMiAuNiAuMyAxLjIgLjNsODguMiAwYy40IDAgLjctLjEgMS4xLS4zbDAtODAuOGMtLjItLjItLjYtLjMtMS4yLS4zbC04OC4xIDBjLS40IDAtLjggLjEtMS4yIC4zem00MTguNCA1LjFjMi4zLTEuMyA0LjUtMS4zIDYuOCAwbDQ5LjggMzAuMmMyLjMgMS4zIDMuNCAzLjMgMy40IDUuOXMtMS4xIDQuNi0zLjQgNS45bC00OS44IDI4LjZjLTIuMyAxLjMtNC41IDEuMy02LjggMHMtMy40LTMuMy0zLjQtNS45bDAtNTguOGMwLTIuNiAxLjEtNC42IDMuNC01Ljl6TTE0MS41IDQwNS41bDAgMTYuNCAzMS43IDE5LjggMC01Ni0zMS43IDE5Ljh6TTQ1MS4xIDUuMmMzNS44LTEuMiA2Mi45IDE1LjEgNjMuOCA0MC44IC40IDEwLjktNS45IDMyLjItMjcuOCAzMy0xNi4zIC42LTI3LjYtOS4yLTI4LjEtMjQuMS0uMi01LjQgMS4yLTEwLjIgNC45LTE1LjggMy42LTcuMSA0LjQtNy45IDQuMy0xMS0uMy05LjQtMTQuNS05LjctMTguMy05LjUtNTMgMS44LTY2LjkgNzMuMy03OC4yIDEzMS41bC01LjYgMzAuN2MzMC41IDQuNSA1Mi4yLTEgNjQuMi04LjggMTctMTEtNC44LTIyLjQtMi0zNSAyLjgtMTIuOCAxNC40LTE5IDIzLjctMTkuMiAxMi45LS4zIDIyLjIgMTMuMSAyMS45IDI2LjctLjUgMjIuNi0zMC40IDUzLjYtOTAuMiA1Mi4zLTcuMy0uMi0xNC0uNy0yMC4yLTEuNGwtMTEuMyA2Mi4zYy0zIDE0LTYuMyAyOS41LTEwLjcgNDUuOGwyMDQgMCAuOSAuMWMuMyAuMSAuNiAuMSAuOCAuMiAyLjIgLjYgNCAyLjUgNC41IDQuOCAuNiAyLjgtMSA2LTMuNyA3LjItLjUgLjItMS4xIC40LTEuNyAuNS0uMyAwLS42IDAtLjkgLjFsLTUxNS4zIDBjLS43LS4xLS45IDAtMS43LS4yLTIuNS0uNy00LjQtMy4xLTQuNi01LjctLjItMi4zIDEtNC42IDMtNS44IC43LS41IDEuNi0uOCAyLjQtLjkgLjMgMCAuNiAwIC44LS4xbDQ4LjQgMGMtMTcuMi0xNi44LTIwLTM3LjItMTYtNTAuNSA1LjQtMTcuNiAxOS40LTIwLjkgMzMtMTYuNyAxNC42IDQuNSAyMC4zIDIyLjMgMTYuMiAzNi0uNSAxLjUtMS4yIDMuOS0yLjggNy4yLTEuNyAzLjgtNC44IDcuMS02LjIgMTEuNS0xLjUgNC45IC43IDkuMSA0LjUgMTIuNmw1OC45IDBjNC4yLTQgNy40LTkgOS4xLTE0LjYgNS4zLTE3LTUuNS0yOC45LTEwLTMzLjVsLTIxLjctMjMuMmMtOS45LTExLjEtMzEuNy00MS45LTIxLjEtNzYuNSA0LjEtMTMuNCAxMi44LTI3LjUgMjUuMy0zNi45IDI2LjUtMTkuNyA1NS4zLTIzIDgyLjctMTUuMSAzNS41IDEwLjIgNTIuNSAzMy43IDc0LjYgNTEuOCAxMi40LTM2LjMgMjkuNS03MS45IDU1LjMtMTAxLjkgMjMuMy0yNy4zIDU0LjYtNDcuMSA5MC40LTQ4LjN6TTIyOS42IDEyMS4zYy0yMi4yLTYtMzUuNy0uOS00NS4yIDExLjItMTEuMyAxNC4zLTcuNSAzMi44IDMuMyA0My43bDE4IDE5LjljMjIgMjUuNSAzNC4xIDQ1LjMgMjkuNiA3Mi0yLjIgMTMuMS04LjUgMjUuMi0xNy45IDM1LjNsNTQuMiAwYzEtNS4xIDItMTAuNCAzLjEtMTUuOGwzLjYtMjEuOWM1LjktMjkuNCAxMi40LTYyLjIgMjIuMy05NC44LTI0LjEtMTguMS0zOC41LTQwLjctNzAuOS00OS41eiJdfSxWa2U9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic3F1YXJlLW9kbm9rbGFzc25pa2kiLGljb246WzQ0OCw1MTIsWyJvZG5va2xhc3NuaWtpLXNxdWFyZSJdLCJmMjY0IiwiTTIyNCAxMzcuMWMtNS40LS4zLTEwLjggLjYtMTUuOSAyLjRzLTkuNyA0LjgtMTMuNiA4LjUtNyA4LjItOS4yIDEzLjItMy4yIDEwLjMtMy4yIDE1LjcgMS4xIDEwLjggMy4yIDE1LjcgNS4zIDkuNSA5LjIgMTMuMiA4LjYgNi42IDEzLjYgOC41IDEwLjUgMi43IDE1LjkgMi40YzUuNCAuMyAxMC44LS42IDE1LjktMi40czkuNy00LjggMTMuNi04LjUgNy04LjIgOS4yLTEzLjIgMy4yLTEwLjMgMy4yLTE1LjctMS4xLTEwLjgtMy4yLTE1LjctNS4zLTkuNS05LjItMTMuMi04LjYtNi42LTEzLjYtOC41LTEwLjUtMi43LTE1LjktMi40ek0zODQgMzJMNjQgMzJDMjguNyAzMiAwIDYwLjcgMCA5NkwwIDQxNmMwIDM1LjMgMjguNyA2NCA2NCA2NGwzMjAgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTMyMGMwLTM1LjMtMjguNy02NC02NC02NHpNMjI0IDI1OGE4MSA4MSAwIDEgMSAwLTE2Mi4xIDgxIDgxIDAgMSAxIDAgMTYyLjF6bTU5LjMgNi4yYzE2LjgtMTMuMiAyOS41LTUuNSAzNC4xIDMuNiA3LjggMTYtMS4xIDIzLjctMjEuNSAzNy0xNy4xIDEwLjktNDAuNyAxNS4yLTU2LjIgMTYuOGwxMyAxMi45IDQ3LjcgNDcuN2MxNy40IDE3LjktMTEgNDUuOC0yOC42IDI4LjYtMTItMTIuMi0yOS41LTI5LjctNDcuNy00Ny45bC00Ny43IDQ3LjljLTE3LjcgMTcuMi00Ni0xMS0yOC40LTI4LjYgMy43LTMuNyA3LjktNy45IDEyLjUtMTIuNSAxMC40LTEwLjQgMjIuNi0yMi43IDM1LjItMzUuMmwxMi45LTEyLjljLTE1LjQtMS42LTM5LjMtNS43LTU2LjYtMTYuOC0yMC4zLTEzLjMtMjkuMy0yMC45LTIxLjQtMzcgNC42LTkuMSAxNy4zLTE2LjggMzQuMS0zLjYgMCAwIDIyLjcgMTggNTkuMyAxOHM1OS4zLTE4IDU5LjMtMTh6Il19LEhycj1Wa2UscXJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Im1hcmtkb3duIixpY29uOls2NDAsNTEyLFtdLCJmNjBmIiwiTTU5My44IDU5LjFsLTU0Ny42IDBDMjAuNyA1OS4xIDAgNzkuOCAwIDEwNS4yTDAgNDA2LjdjMCAyNS41IDIwLjcgNDYuMiA0Ni4yIDQ2LjJsNTQ3LjcgMGMyNS41IDAgNDYuMi0yMC43IDQ2LjEtNDYuMWwwLTMwMS42YzAtMjUuNC0yMC43LTQ2LjEtNDYuMi00Ni4xek0zMzguNSAzNjAuNmwtNjEuNSAwIDAtMTIwLTYxLjUgNzYuOS02MS41LTc2LjkgMCAxMjAtNjEuNyAwIDAtMjA5LjIgNjEuNSAwIDYxLjUgNzYuOSA2MS41LTc2LjkgNjEuNSAwIDAgMjA5LjIgLjIgMHptMTM1LjMgMy4xbC05Mi4zLTEwNy43IDYxLjUgMCAwLTEwNC42IDYxLjUgMCAwIDEwNC42IDYxLjUgMC05Mi4yIDEwNy43eiJdfSxqcnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidHlwbzMiLGljb246WzQ0OCw1MTIsW10sImY0MmIiLCJNMTc4LjcgNzguNGMwLTI0LjcgNS40LTMyLjQgMTMuOS0zOS40LTY5LjUgOC41LTE0OS4zIDM0LTE3Ni4zIDY2LjQtNS40IDcuNy05LjMgMjAuOC05LjMgMzcuMSAwIDEwMy41IDEwNi44IDMzNy41IDE4NC4xIDMzNy41IDM2LjMgMCA5Ny4zLTU5LjUgMTQ2LjctMTM5LTcgMi4zLTExLjYgMi4zLTE4LjUgMi4zLTU3LjIgMC0xNDAuNi0xOTguNS0xNDAuNi0yNjQuOXpNMzAxLjUgMzJjLTMwLjEgMC00MS43IDUuNC00MS43IDM2LjMgMCA2Ni40IDUzLjggMTk4LjUgMTAxLjcgMTk4LjUgMjYuMyAwIDc4LjgtOTkuNyA3OC44LTE4Mi4zIDAtNDAuOS02Ny01Mi41LTEzOC44LTUyLjV6Il19LFZycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJqb29tbGEiLGljb246WzQ0OCw1MTIsW10sImYxYWEiLCJNLjYgOTIuMWMwLTMzLjMgMjYuOC02MC4xIDU5LjgtNjAuMSAzMCAwIDU0LjUgMjEuOSA1OS4yIDUwLjIgMzIuNi03LjYgNjcuMSAuNiA5Ni41IDMwbC00NC4zIDQ0LjNjLTIwLjUtMjAuNS00Mi42LTE2LjMtNTUuNC0zLjUtMTQuMyAxNC4zLTE0LjMgMzcuOSAwIDUyLjJsOTkuNSA5OS41LTQ0IDQ0LjNjLTg3LjctODcuMi00OS43LTQ5LjctOTkuOC05OS43LTI2LjgtMjYuNS0zNS02NC44LTI0LjgtOTguOS0yNi45LTUuOC00Ni43LTI5LjctNDYuNy01OC4zek0xMzAuMSAyMDguNWw0NC4zIDQ0LjNjMTAtMTAgODkuNy04OS43IDk5LjctOTkuOCAxNC4zLTE0LjMgMzcuNi0xNC4zIDUxLjkgMCAxMi44IDEyLjggMTcgMzUtMy41IDU1LjRsNDQgNDQuM2MzMS4yLTMxLjIgMzguNS02Ny42IDI4LjktMTAxLjIgMjkuMi00LjEgNTEuOS0yOS4yIDUxLjktNTkuNSAwLTMzLjItMjYuOC02MC4xLTU5LjgtNjAuMS0zMC4zIDAtNTUuNCAyMi41LTU5LjUgNTEuNi0zMy44LTkuOS03MS43LTEuNS05OC4zIDI1LjEtMTguMyAxOS4xLTcxLjEgNzEuNS05OS42IDk5Ljl6TTM5Ni40IDM2MC43YzguMi0zMi43LS45LTY4LjUtMjYuMy05My45LTExLjgtMTIuMiA1IDQuNy05OS41LTk5LjdsLTQ0LjMgNDQuMyA5OS43IDk5LjdjMTQuMyAxNC4zIDE0LjMgMzcuNiAwIDUxLjktMTIuOCAxMi44LTM1IDE3LTU1LjQtMy41bC00NCA0NC4zYzI3LjYgMzAuMiA2OCAzOC44IDEwMi43IDI4IDUuNSAyNy40IDI5LjcgNDguMSA1OC45IDQ4LjEgMzMgMCA1OS44LTI2LjggNTkuOC02MC4xIDAtMzAuMi0yMi41LTU1LTUxLjYtNTkuMXptLTg0LjMtNTMuMWwtNDQtNDQuM2MtODcgODYuNC01MC40IDUwLjQtOTkuNyA5OS44LTE0LjMgMTQuMy0zNy42IDE0LjMtNTEuOSAwLTEzLjEtMTMuNC0xNi45LTM1LjMgMy4yLTU1LjRsLTQ0LTQ0LjNjLTMwLjIgMzAuMi0zOCA2NS4yLTI5LjUgOTguMy0yNi43IDYtNDYuMiAyOS45LTQ2LjIgNTguMiAwIDMzLjMgMjYuOCA2MC4xIDU5LjggNjAuMSAyOC42IDAgNTIuNS0xOS44IDU4LjYtNDYuNyAzMi43IDguMiA2OC41LS42IDk0LjItMjYgMzIuMS0zMiAxMi4yLTEyLjQgOTkuNS05OS43eiJdfSxVcnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToid2VpeGluIixpY29uOls1NzYsNTEyLFtdLCJmMWQ3IiwiTTM4NS4yIDE2Ny42YzYuNCAwIDEyLjYgLjMgMTguOCAxLjEtMTYuNi03OC40LTEwMC43LTEzNi43LTE5Ni4zLTEzNi43LTEwNy4yIDAtMTk0LjcgNzIuOC0xOTQuNyAxNjUuNCAwIDUzLjQgMjkuMyA5Ny41IDc3LjkgMTMxLjZsLTE5LjMgNTguNiA2OC0zNC4xYzI0LjQgNC44IDQzLjggOS43IDY4LjIgOS43IDYuMiAwIDEyLjEtLjMgMTguMy0uOC00LTEyLjktNi4yLTI2LjYtNi4yLTQwLjgtLjEtODQuOSA3Mi45LTE1NCAxNjUuMy0xNTR6TTI4MC43IDExNC43YzE0LjUgMCAyNC4yIDkuNyAyNC4yIDI0LjQgMCAxNC41LTkuNyAyNC4yLTI0LjIgMjQuMi0xNC44IDAtMjkuMy05LjctMjkuMy0yNC4yIC4xLTE0LjcgMTQuNi0yNC40IDI5LjMtMjQuNHpNMTQ0LjMgMTYzLjNjLTE0LjUgMC0yOS4zLTkuNy0yOS4zLTI0LjIgMC0xNC44IDE0LjgtMjQuNCAyOS4zLTI0LjQgMTQuOCAwIDI0LjQgOS43IDI0LjQgMjQuNCAwIDE0LjYtOS42IDI0LjItMjQuNCAyNC4yek01NjMgMzE5LjRjMC03Ny45LTc3LjktMTQxLjMtMTY1LjQtMTQxLjMtOTIuNyAwLTE2NS40IDYzLjQtMTY1LjQgMTQxLjNTMzA1IDQ2MC43IDM5Ny42IDQ2MC43YzE5LjMgMCAzOC45LTUuMSA1OC42LTkuOWw1My40IDI5LjMtMTQuOC00OC42QzUzNCA0MDIuMSA1NjMgMzYzLjIgNTYzIDMxOS40ek0zNDMuOSAyOTQuOWMtOS43IDAtMTkuMy05LjctMTkuMy0xOS42IDAtOS43IDkuNy0xOS4zIDE5LjMtMTkuMyAxNC44IDAgMjQuNCA5LjcgMjQuNCAxOS4zIDAgMTAtOS43IDE5LjYtMjQuNCAxOS42em0xMDcuMSAwYy05LjcgMC0xOS4zLTkuNy0xOS4zLTE5LjYgMC05LjcgOS43LTE5LjMgMTkuMy0xOS4zIDE0LjUgMCAyNC40IDkuNyAyNC40IDE5LjMgLjEgMTAtOS45IDE5LjYtMjQuNCAxOS42eiJdfSxXcnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZ3J1bnQiLGljb246WzM4NCw1MTIsW10sImYzYWQiLCJNNjEuNiAxODkuM2MtMS4xIDEwIDUuMiAxOS4xIDUuMiAxOS4xIC43LTcuNSAyLjItMTIuOCA0LTE2LjYgLjQgMTAuMyAzLjIgMjMuNSAxMi44IDM0LjEgNi45IDcuNiAzNS42IDIzLjMgNTQuOSA2LjEgMSAyLjQgMi4xIDUuMyAzIDguNSAyLjkgMTAuMy0yLjcgMjUuMy0yLjcgMjUuM3MxNS4xLTE3LjEgMTMuOS0zMi41YzEwLjgtLjUgMjEuNC04LjQgMjEuMS0xOS41IDAgMC0xOC45IDEwLjQtMzUuNS04LjgtOS43LTExLjItNDAuOS00Mi04My4xLTMxLjggNC4zIDEgOC45IDIuNCAxMy41IDQuMWwtLjEgMGMtNC4yIDItNi41IDcuMS03IDEyem0yOC4zLTEuOGMxOS41IDExIDM3LjQgMjUuNyA0NC45IDM3LTUuNyAzLjMtMjEuNyAxMC40LTM4LTEuNy0xMC4zLTcuNi05LjgtMjYuMi02LjktMzUuM3pNMjMyIDIzMy4zYy0xLjIgMTUuNSAxMy45IDMyLjUgMTMuOSAzMi41cy01LjYtMTUtMi43LTI1LjNjLjktMy4yIDItNiAzLTguNSAxOS4zIDE3LjMgNDggMS41IDU0LjgtNi4xIDkuNi0xMC42IDEyLjMtMjMuOCAxMi44LTM0LjEgMS44IDMuOCAzLjQgOS4xIDQgMTYuNiAwIDAgNi40LTkuMSA1LjItMTkuMS0uNi01LTIuOS0xMC03LTExLjhsLS4xIDBjNC42LTEuOCA5LjItMy4yIDEzLjUtNC4xLTQyLjMtMTAuMi03My40IDIwLjYtODMuMSAzMS44LTE2LjcgMTkuMi0zNS41IDguOC0zNS41IDguOC0uMiAxMC45IDEwLjQgMTguOSAyMS4yIDE5LjN6bTYyLjctNDUuOGMzIDkuMSAzLjQgMjcuNy03IDM1LjQtMTYuMyAxMi4xLTMyLjIgNS0zNy45IDEuNiA3LjUtMTEuNCAyNS40LTI2IDQ0LjktMzd6bS0xMzQuNCAyMzFsLTI5LjQgMGMtNS41IDAtOC4yIDEuNi05LjUgMi45LTEuOSAyLTIuMiA0LjctLjkgOC4xIDMuNSA5LjEgMTEuNCAxNi41IDEzLjcgMTguNiAzLjEgMi43IDcuNSA0LjMgMTEuOCA0LjMgNC40IDAgOC4zLTEuNyAxMS00LjYgNy41LTguMiAxMS45LTE3LjEgMTMtMTkuOCAuNi0xLjUgMS4zLTQuNS0uOS02LjgtMS44LTEuOC00LjctMi43LTguOC0yLjd6TTM0OS41IDMxNy4zYy0yLjQgMTcuOS0xMyAzMy44LTI0LjYgNDMuNy0zLjEtMjIuNy0zLjctNTUuNS0zLjctNjIuNCAwLTE0LjcgOS41LTI0LjUgMTIuMi0yNi4xIDIuNS0xLjUgNS40LTMgOC4zLTQuNiAxOC05LjYgNDAuNC0yMS42IDQwLjQtNDMuNyAwLTE2LjItOS4zLTIzLjItMTUuNC0yNy44LS44LS42LTEuNS0xLjEtMi4yLTEuNy0yLjEtMS43LTMuNy0zLTQuMy00LjQtNC40LTkuOC0zLjYtMzQuMi0xLjctMzcuNiAuNi0uNiAxNi43LTIwLjkgMTEuOC0zOS4yLTItNy40LTYuOS0xMy4zLTE0LjEtMTctNS4zLTIuNy0xMS45LTQuMi0xOS41LTQuNS0uMS0yLS41LTMuOS0uOS01LjktLjYtMi42LTEuMS01LjMtLjktOC4xIC40LTQuNyAuOC05IDIuMi0xMS4zIDguNC0xMy4zIDI4LjgtMTcuNiAyOS0xNy42bDEyLjMtMi40LTguMS05LjVjLS4xLS4yLTE3LjMtMTcuNS00Ni4zLTE3LjUtNy45IDAtMTYgMS4zLTI0LjEgMy45LTI0LjIgNy44LTQyLjkgMzAuNS00OS40IDM5LjMtMy4xLTEtNi4zLTEuOS05LjYtMi43LTQuMi0xNS44IDktMzguNSA5LTM4LjVzLTEzLjYtMy0zMy43IDE1LjJjLTIuNi02LjUtOC4xLTIwLjUtMS44LTM3LjItMjkuNSAxMC40LTM2LjkgMjYuMy0zOS4xIDQwLjctNy42LTUuNC02LjctMjMuMS03LjItMjcuNi03LjUgLjktMjkuMiAyMS45LTI4LjIgNDguMy0yIC41LTMuOSAxLjEtNS45IDEuNy02LjUtOC44LTI1LjEtMzEuNS00OS40LTM5LjMtNy45LTIuMi0xNi0zLjUtMjMuOS0zLjUtMjkgMC00Ni4xIDE3LjMtNDYuMyAxNy41bC04LjEgOS40IDEyLjMgMi40Yy4yIDAgMjAuNiA0LjMgMjkgMTcuNiAxLjQgMi4yIDEuOCA2LjYgMi4yIDExLjMgLjIgMi44LS40IDUuNS0uOSA4LjEtLjQgMS45LS44IDMuOS0uOSA1LjktNy43IC4zLTE0LjIgMS44LTE5LjUgNC41LTcuMiAzLjctMTIuMSA5LjYtMTQuMSAxNy01IDE4LjIgMTEuMiAzOC41IDExLjggMzkuMiAxLjkgMy40IDIuNyAyNy44LTEuNyAzNy42LS42IDEuNC0yLjIgMi43LTQuMyA0LjQtLjcgLjUtMS40IDEuMS0yLjIgMS43LTYuMSA0LjYtMTUuNCAxMS43LTE1LjQgMjcuOCAwIDIyLjEgMjIuNCAzNC4xIDQwLjQgNDMuNyAzIDEuNiA1LjggMy4xIDguMyA0LjYgMi43IDEuNiAxMi4yIDExLjQgMTIuMiAyNi4xIDAgNi45LS42IDM5LjctMy43IDYyLjQtMTEuNi05LjktMjIuMi0yNS45LTI0LjYtNDMuOCAwIDAtMjkuMiAyMi42LTIwLjYgNzAuOCA1LjIgMjkuNSAyMy4yIDQ2LjEgNDcgNTQuNyA4LjggMTkuMSAyOS40IDQ1LjcgNjcuMyA0OS42IDE0LjQgMTEuOCAzNC40IDE5LjUgNjMuNiAxOS41bC4yIDBjMjkuMSAwIDQ5LjEtNy43IDYzLjYtMTkuNSAzNy45LTMuOSA1OC41LTMwLjUgNjcuMy00OS42IDIzLjgtOC43IDQxLjctMjUuMiA0Ny01NC43IDguMi00OC40LTIxLjEtNzAuOS0yMS4xLTcwLjl6TTMwNiAzNy43YzUuNi0xLjggMTEuNi0yLjcgMTcuNy0yLjcgMTEgMCAxOS45IDMgMjQuNyA1LTMuMSAxLjQtNi40IDMuMi05LjcgNS4zLTIuNC0uNC01LjYtLjgtOS4yLS44LTEwLjUgMC0yMC41IDMuMS0yOC43IDguOS0xMi4zIDguNy0xOCAxNi45LTIwLjcgMjIuNC0yLjItMS4zLTQuNS0yLjUtNy4xLTMuNy0xLjYtLjgtMy4xLTEuNS00LjctMi4yIDYuMS05LjEgMTkuOS0yNi41IDM3LjctMzIuMnptMjEgMTguMmMtLjggMS0xLjYgMi4xLTIuMyAzLjItMy4zIDUuMi0zLjkgMTEuNi00LjQgMTcuOC0uNSA2LjQtMS4xIDEyLjUtNC40IDE3LTQuMiAuOC04LjEgMS43LTExLjUgMi43LTIuMy0zLjEtNS42LTctMTAuNS0xMS4yIDEuNC00LjggNS41LTE2LjEgMTMuNS0yMi41IDUuNi00LjMgMTIuMi02LjcgMTkuNi03ek00NS45IDQ1LjNjLTMuMy0yLjItNi42LTQtOS43LTUuMyA0LjgtMiAxMy43LTUgMjQuNy01IDYuMSAwIDEyIC45IDE3LjcgMi43IDE3LjggNS44IDMxLjYgMjMuMiAzNy43IDMyLjEtMS42IC43LTMuMiAxLjQtNC44IDIuMi0yLjUgMS4yLTQuOSAyLjUtNy4xIDMuNy0yLjYtNS40LTguMy0xMy43LTIwLjctMjIuNC04LjMtNS44LTE4LjItOC45LTI4LjgtOC45LTMuNCAuMS02LjYgLjUtOSAuOXpNOTAuNiA4NS40Yy00LjkgNC4yLTguMyA4LTEwLjUgMTEuMi0zLjQtLjktNy4zLTEuOS0xMS41LTIuNy0zLjMtNC40LTMuOC0xMC41LTQuMy0xNi45LS41LTYuMi0xLjEtMTIuNi00LjQtMTcuOC0uNy0xLjEtMS41LTIuMi0yLjMtMy4yIDcuNCAuMyAxNCAyLjYgMTkuNSA3IDggNi4zIDEyLjEgMTcuNiAxMy41IDIyLjR6TTU4LjQgMjU5LjljLTIuNy0xLjYtNS42LTMuMS04LjQtNC42LTE0LjktOC0zMC4yLTE2LjMtMzAuMi0zMC41IDAtMTEuMSA0LjMtMTQuNiA4LjktMTguMmwuNS0uNGMuNy0uNiAxLjQtMS4yIDIuMi0xLjgtLjkgNy4yLTEuOSAxMy4zLTIuNyAxNC45IDAgMCAxMi4xLTE1IDE1LjctNDQuMyAxLjQtMTEuNS0xLjEtMzQuMy01LjEtNDMgLjIgNC45IDAgOS44LS4zIDE0LjQtLjQtLjgtLjgtMS42LTEuMy0yLjItMy4yLTQtMTEuOC0xNy41LTkuNC0yNi42IC45LTMuNSAzLjEtNiA2LjctNy44IDMuOC0xLjkgOC44LTIuOSAxNS4xLTIuOSAxMi4zIDAgMjUuOSAzLjcgMzIuOSA2IDI1LjEgOCA1NS40IDMwLjkgNjQuMSAzNy43IC4yIC4yIC40IC4zIC40IC4zbDUuNiAzLjktMy41LTUuOGMtLjItLjMtMTkuMS0zMS40LTUzLjItNDYuNSAyLTIuOSA3LjQtOC4xIDIxLjYtMTUuMSAyMS40LTEwLjUgNDYuNS0xNS44IDc0LjMtMTUuOCAyNy45IDAgNTIuOSA1LjMgNzQuMyAxNS44IDE0LjIgNi45IDE5LjYgMTIuMiAyMS42IDE1LjEtMzQgMTUuMS01Mi45IDQ2LjItNTMuMSA0Ni41bC0zLjUgNS44IDUuNi0zLjlzLjItLjEgLjQtLjNjOC43LTYuOCAzOS0yOS44IDY0LjEtMzcuNyA3LTIuMiAyMC42LTYgMzIuOS02IDYuMyAwIDExLjMgMSAxNS4xIDIuOSAzLjUgMS44IDUuNyA0LjQgNi43IDcuOCAyLjUgOS4xLTYuMSAyMi42LTkuNCAyNi42LS41IC42LS45IDEuMy0xLjMgMi4yLS4zLTQuNi0uNS05LjUtLjMtMTQuNC00IDguOC02LjUgMzEuNS01LjEgNDMgMy42IDI5LjMgMTUuNyA0NC4zIDE1LjcgNDQuMy0uOC0xLjYtMS44LTcuNy0yLjctMTQuOSAuNyAuNiAxLjUgMS4yIDIuMiAxLjhsLjUgLjRjNC42IDMuNyA4LjkgNy4xIDguOSAxOC4yIDAgMTQuMi0xNS40IDIyLjUtMzAuMiAzMC41LTIuOSAxLjUtNS43IDMuMS04LjQgNC42LTguNyA1LTE4IDE2LjctMTkuMSAzNC4yLS45IDE0LjYgLjkgNDkuOSAzLjQgNzUuOS0xMi40IDQuOC0yNi43IDYuNC0zOS43IDYuOC0yLTQuMS0zLjktOC41LTUuNS0xMy4xLS43LTItMTkuNi01MS4xLTI2LjQtNjIuMiA1LjUgMzkgMTcuNSA3My43IDIzLjUgODkuNi0zLjUtLjUtNy4zLS43LTExLjctLjdsLTExNyAwYy00LjQgMC04LjMgLjMtMTEuNyAuNyA2LTE1LjkgMTguMS01MC42IDIzLjUtODkuNi02LjggMTEuMi0yNS43IDYwLjMtMjYuNCA2Mi4yLTEuNiA0LjYtMy41IDktNS41IDEzLjEtMTMtLjQtMjcuMi0yLTM5LjctNi44IDIuNS0yNiA0LjMtNjEuMiAzLjQtNzUuOS0uOS0xNy40LTEwLjMtMjkuMi0xOS0zNC4yek0zNS4xIDQwNC42Yy0xMi4xLTIwLTguNy01NC4xLTMuNy01OS4xIDEwLjkgMzQuNCA0Ny4yIDQ0LjMgNzQuNCA0NS40LTIuNyA0LjItNS4yIDcuNi03IDEwbC0xLjQgMS40Yy03LjIgNy44LTguNiAxOC41LTQuMSAzMS44LTIyLjctLjEtNDYuMy05LjgtNTguMi0yOS41em00NS43IDQzLjVjNiAxLjEgMTIuMiAxLjkgMTguNiAyLjQgMy41IDggNy40IDE1LjkgMTIuMyAyMy4xLTE0LjQtNS45LTI0LjQtMTYtMzAuOS0yNS41em0xMTEuNSA1MC4xYy02MC42LS4xLTc4LjMtNDUuOC04NC45LTY0LjctMy43LTEwLjUtMy40LTE4LjIgLjktMjMuMSAyLjktMy4zIDkuNS03LjIgMjQuNi03LjJsMTE4LjggMGMxNS4xIDAgMjEuOCAzLjkgMjQuNiA3LjIgNC4yIDQuOCA0LjUgMTIuNiAuOSAyMy4xLTYuNiAxOC44LTI0LjMgNjQuNi04NC45IDY0Ljd6bTgwLjYtMjQuNmM0LjktNy4yIDguOC0xNS4xIDEyLjMtMjMuMSA2LjQtLjUgMTIuNi0xLjMgMTguNi0yLjQtNi41IDkuNS0xNi41IDE5LjYtMzAuOSAyNS41em03Ni42LTY5Yy0xMiAxOS43LTM1LjYgMjkuMy01OC4xIDI5LjcgNC41LTEzLjMgMy4xLTI0LjEtNC4xLTMxLjgtLjQtLjUtLjktMS0xLjQtMS41LTEuOC0yLjQtNC4zLTUuOC03LTEwIDI3LjItMS4yIDYzLjUtMTEgNzQuNC00NS40IDUgNSA4LjQgMzkuMS0zLjggNTl6TTE5Mi4yIDE4Ny43bC4yIDBjMTIuNy0uMSAyNy4yLTE3LjggMjcuMi0xNy44LTkuOSA2LTE4LjggOC4xLTI3LjMgOC4zLTguNS0uMi0xNy40LTIuMy0yNy4zLTguMyAwIDAgMTQuNSAxNy42IDI3LjIgMTcuOHptNjEuNyAyMzAuN2wtMjkuNCAwYy00LjIgMC03LjIgLjktOC45IDIuNy0yLjIgMi4zLTEuNSA1LjItLjkgNi43IDEgMi42IDUuNSAxMS4zIDEzIDE5LjMgMi43IDIuOSA2LjYgNC41IDExIDQuNXM4LjctMS42IDExLjgtNC4yYzIuMy0yIDEwLjItOS4yIDEzLjctMTguMSAxLjMtMy4zIDEtNi0uOS03LjktMS4zLTEuMy00LTIuOS05LjQtM3oiXX0sR3JyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InN1cHBvcnRub3ciLGljb246WzY0MCw1MTIsW10sImU4MzMiLCJNMCAxOTEuOWwyMDMuOS0uMWMxLjgtLjYgMi41LTkuNSAzLjItMTIuMiAzLjMtMTMuNSA4LjQtMjYuNCAxNC44LTM4LjdsLTE2MC4yIDAgMC00OC4yIDIzNC41IDAgMCAzOWMtNTEuMiAzNi4xLTU2LjQgOTIuNi0yMy42IDE0My45IDMzLjEgNTEuNyA5My40IDg4LjEgMTQ5LjUgMTEwLjUgNjcuOC0yNS4yIDE2NC45LTg5LjkgMTY5LjQtMTY5LjYgMy4xLTU1LjMtNDIuMi0xMDEuOC05OC43LTkxLjgtNDEuNSA3LjQtNjIuMSA0Ni43LTU0LjggODYuNGwtNDguMiAwYy03LjMtNTYuNiAyMi44LTExMi42IDc4LjQtMTMwLjMgNzguNy0yNS4xIDE1OS41IDI4IDE3MC40IDEwOC44IDE1LjIgMTEyLjMtOTUuNSAxOTkuOS0xODguMSAyMzcuOC00LjQgMS44LTI0LjQgMTAuMS0yNy41IDEwLjFsLTI4MC4zIDAgMC00OC4yIDE3OC41IDAtMzguMS0yOC45LTIzLjItMjIuMS0xOTguMyAwIDAtNDguMiAxNjMuMSAwYy03LjEtMTEuNi0xMi4zLTI0LjMtMTYuMS0zNy40LS43LTIuNS0yLjEtMTItMy44LTEyLjZsLTIwNC45LS4xIDAtNDguMiAwIDB6Il19LFlycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJyb2Nrcm1zIixpY29uOls1MTIsNTEyLFtdLCJmM2U5IiwiTTI1NiA4YTI0OCAyNDggMCAxIDAgMCA0OTYgMjQ4IDI0OCAwIDEgMCAwLTQ5NnpNNDEzLjQgNDI3LjVsLTkwIDAtMTEyLTEzMS4zYy0xNy45LTIwLjQtMy45LTU2LjEgMjYuNi01Ni4xbDc1LjMgMC04NC42LTk5LjMtODQuMyA5OC45LTkwIDAgMTQ3LjEtMTcyLjVjMTQuNC0xOC40IDQxLjMtMTcuMyA1NC41IDBMNDEzLjcgMjUyLjNjMTkgMjIuOCAyIDU3LjItMjcuNiA1Ni4xLS42IDAtNzQuMiAuMi03NC4yIC4yTDQxMy40IDQyNy41eiJdfSxacnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidW5zcGxhc2giLGljb246WzQ0OCw1MTIsW10sImUwN2MiLCJNNDQ4IDIzMC4ybDAgMjQ5LjgtNDQ4IDAgMC0yNDkuOCAxNDEuMSAwIDAgMTI0LjkgMTY1LjcgMCAwLTEyNC45IDE0MS4xIDB6TTMwNi45IDMybC0xNjUuNyAwIDAgMTI0LjkgMTY1LjcgMCAwLTEyNC45eiJdfSxVa2U9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic3F1YXJlLWluc3RhZ3JhbSIsaWNvbjpbNDQ4LDUxMixbImluc3RhZ3JhbS1zcXVhcmUiXSwiZTA1NSIsIk0xOTQuNCAyMTEuN2E1My4zIDUzLjMgMCAxIDAgNTkuMiA4OC42IDUzLjMgNTMuMyAwIDEgMCAtNTkuMi04OC42em0xNDIuMy02OC40Yy01LjItNS4yLTExLjUtOS4zLTE4LjQtMTItMTguMS03LjEtNTcuNi02LjgtODMuMS02LjUtNC4xIDAtNy45IC4xLTExLjIgLjFzLTcuMiAwLTExLjQtLjFjLTI1LjUtLjMtNjQuOC0uNy04Mi45IDYuNS02LjkgMi43LTEzLjEgNi44LTE4LjQgMTJzLTkuMyAxMS41LTEyIDE4LjRjLTcuMSAxOC4xLTYuNyA1Ny43LTYuNSA4My4yIDAgNC4xIC4xIDcuOSAuMSAxMS4xczAgNy0uMSAxMS4xYy0uMiAyNS41LS42IDY1LjEgNi41IDgzLjIgMi43IDYuOSA2LjggMTMuMSAxMiAxOC40czExLjUgOS4zIDE4LjQgMTJjMTguMSA3LjEgNTcuNiA2LjggODMuMSA2LjUgNC4xIDAgNy45LS4xIDExLjItLjFzNy4yIDAgMTEuNCAuMWMyNS41IC4zIDY0LjggLjcgODIuOS02LjUgNi45LTIuNyAxMy4xLTYuOCAxOC40LTEyczkuMy0xMS41IDEyLTE4LjRjNy4yLTE4IDYuOC01Ny40IDYuNS04MyAwLTQuMi0uMS04LjEtLjEtMTEuNHMwLTcuMSAuMS0xMS40Yy4zLTI1LjUgLjctNjQuOS02LjUtODMtMi43LTYuOS02LjgtMTMuMS0xMi0xOC40bDAgLjJ6bS02Ny4xIDQ0LjVjMTguMSAxMi4xIDMwLjYgMzAuOSAzNC45IDUyLjJzLS4yIDQzLjUtMTIuMyA2MS42Yy02IDktMTMuNyAxNi42LTIyLjYgMjIuNnMtMTkgMTAuMS0yOS42IDEyLjJjLTIxLjMgNC4yLTQzLjUtLjItNjEuNi0xMi4zcy0zMC42LTMwLjktMzQuOS01Mi4yIC4yLTQzLjUgMTIuMi02MS42IDMwLjktMzAuNiA1Mi4yLTM0LjkgNDMuNSAuMiA2MS42IDEyLjJsLjEgMHptMjkuMi0xLjNjLTMuMS0yLjEtNS42LTUuMS03LjEtOC42cy0xLjgtNy4zLTEuMS0xMS4xIDIuNi03LjEgNS4yLTkuOCA2LjEtNC41IDkuOC01LjIgNy42LS40IDExLjEgMS4xIDYuNSAzLjkgOC42IDcgMy4yIDYuOCAzLjIgMTAuNmMwIDIuNS0uNSA1LTEuNCA3LjNzLTIuNCA0LjQtNC4xIDYuMi0zLjkgMy4yLTYuMiA0LjItNC44IDEuNS03LjMgMS41Yy0zLjggMC03LjUtMS4xLTEwLjYtMy4ybC0uMSAwek00NDggOTZjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzJDMjguNyAzMiAwIDYwLjcgMCA5NkwwIDQxNmMwIDM1LjMgMjguNyA2NCA2NCA2NGwzMjAgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTMyMHpNMzU3IDM4OWMtMTguNyAxOC43LTQxLjQgMjQuNi02NyAyNS45LTI2LjQgMS41LTEwNS42IDEuNS0xMzIgMC0yNS42LTEuMy00OC4zLTcuMi02Ny0yNS45cy0yNC42LTQxLjQtMjUuOC02N2MtMS41LTI2LjQtMS41LTEwNS42IDAtMTMyIDEuMy0yNS42IDcuMS00OC4zIDI1LjgtNjdzNDEuNS0yNC42IDY3LTI1LjhjMjYuNC0xLjUgMTA1LjYtMS41IDEzMiAwIDI1LjYgMS4zIDQ4LjMgNy4xIDY3IDI1LjhzMjQuNiA0MS40IDI1LjggNjdjMS41IDI2LjMgMS41IDEwNS40IDAgMTMxLjktMS4zIDI1LjYtNy4xIDQ4LjMtMjUuOCA2N2wwIC4xeiJdfSxYcnI9VWtlLFFycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJmaXJzdC1vcmRlci1hbHQiLGljb246WzUxMiw1MTIsW10sImY1MGEiLCJNMjU2IDhhMjQ4IDI0OCAwIDEgMCAwIDQ5NiAyNDggMjQ4IDAgMSAwIDAtNDk2em0wIDcuOGEyNDAuMiAyNDAuMiAwIDEgMSAwIDQ4MC40IDI0MC4yIDI0MC4yIDAgMSAxIDAtNDgwLjR6bTAgMjAuNWEyMTkuNyAyMTkuNyAwIDEgMCAwIDQzOS40IDIxOS43IDIxOS43IDAgMSAwIDAtNDM5LjR6bTAgOC4yYTIxMS41IDIxMS41IDAgMSAxIDAgNDIzIDIxMS41IDIxMS41IDAgMSAxIDAtNDIzem0xODYuMiAyNjBjLTQuNCAxNy4xLTExLjIgMzMuNS0yMC4xIDQ4LjdsLTc0LjEtMzUuOSA2MS41IDU0LjhjLTEwLjYgMTQuMS0yMy4yIDI2LjYtMzcuMiAzNy4zbC01NC44LTYxLjYgMzUuOSA3NC4zYy0xNS4yIDktMzEuNiAxNS44LTQ4LjYgMjAuMmwtMjcuMy03OC41IDQuOCA4Mi45Yy04LjYgMS4yLTE3LjQgMS44LTI2LjMgMS44cy0xNy43LS42LTI2LjMtMS44bDQuOC04Mi41LTI3LjIgNzhjLTE3LjEtNC41LTMzLjQtMTEuMy00OC43LTIwLjJsMzUuOS03NC4zLTU0LjkgNjEuNmMtMTQtMTAuNy0yNi42LTIzLjItMzcuMi0zNy4zbDYxLjYtNTQuOS03NC4zIDM1LjlDODAuNyAzMzggNzQgMzIxLjcgNjkuNSAzMDQuNmw3Ny44LTI3LjEtODIuMiA0LjhjLTEuMi04LjYtMS44LTE3LjMtMS44LTI2LjIgMC05IC42LTE3LjggMS44LTI2LjVsODIuNCA0LjgtNzcuOS0yNy4yYzQuNS0xNy4xIDExLjMtMzMuNSAyMC4yLTQ4LjdsNzQuMiAzNS45LTYxLjUtNTQuOWMxMC43LTE0IDIzLjItMjYuNiAzNy4zLTM3LjJsNTQuOCA2MS41LTM1LjgtNzQuMmMxNS4yLTguOSAzMS42LTE1LjcgNDguNi0yMC4xbDI2LjkgNzcuMi00LjctODEuNmM4LjYtMS4yIDE3LjQtMS44IDI2LjMtMS44czE3LjcgLjYgMjYuMyAxLjhsLTQuNyA4Mi4yIDI3LTc3LjhjMTcuMyA0LjUgMzMuNiAxMS40IDQ4LjYgMjAuMmwtMzUuOCA3NC4xIDU0LjctNjEuNWMxNC4xIDEwLjcgMjYuNiAyMy4yIDM3LjIgMzcuMmwtNjEuNCA1NC44IDc0LjEtMzUuOWM4LjkgMTUuMiAxNS43IDMxLjYgMjAuMiA0OC42bC03Ny44IDI3LjEgODIuMi00LjdjMS4yIDguNyAxLjggMTcuNSAxLjggMjYuNSAwIDguOS0uNiAxNy42LTEuOCAyNi4ybC04Mi4xLTQuNyA3Ny43IDI3LjF6Il19LEtycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJmdWxjcnVtIixpY29uOlsyNTYsNTEyLFtdLCJmNTBiIiwiTTYzLjggMTY0LjFMMjguNCAyMDcuNy03IDE2NC4xIDI4LjQgMTIwLjYgNjMuOCAxNjQuMXpNMTEyLjIgMGwtMjAuNSAxOTguMi01MSA1Ny44IDUxIDU3LjggMjAuNSAxOTguMiAwLTIxMS4xLTQxLjEtNDQuOSA0MS4xLTQ0LjkgMC0yMTEuMXptNzkuNyAxNjQuMWwzNS40IDQzLjYgMzUuNC00My42LTM1LjQtNDMuNS0zNS40IDQzLjV6bS00OC41IDQ3bDQxLjEgNDQuOS00MS4xIDQ0LjkgMCAyMTEuMSAyMC42LTE5OC4yIDUxLTU3LjgtNTEtNTcuOC0yMC42LTE5OC4yIDAgMjExLjF6Il19LEpycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJhcmNoLWxpbnV4IixpY29uOls1NzYsNTEyLFtdLCJlODY3IiwiTTI4OC43LTcuOGMtMjQuMSA1OS0zOC42IDk3LjctNjUuNCAxNTUgMTYuNCAxNy40IDM2LjYgMzcuNiA2OS40IDYwLjUtMzUuMi0xNC41LTU5LjItMjguOS03Ny4yLTQ0LTM0LjMgNzEuNi04OC4xIDE3My41LTE5Ny4yIDM2OS40IDg1LjctNDkuNSAxNTIuMi04MCAyMTQuMS05MS42LTIuNy0xMS40LTQuMS0yMy44LTQtMzYuN2wuMS0yLjdjMS40LTU0LjkgMjkuOS05Ny4yIDYzLjgtOTQuNHM2MC4yIDQ5LjggNTguOCAxMDQuN2MtLjMgMTAuMy0xLjQgMjAuMi0zLjQgMjkuNCA2MS4yIDEyIDEyNyA0Mi40IDIxMS42IDkxLjItMTYuNy0zMC43LTMxLjYtNTguMy00NS44LTg0LjctMjIuNC0xNy40LTQ1LjctMzkuOS05My4zLTY0LjQgMzIuNyA4LjUgNTYuMyAxOC4zIDc0LjUgMjkuMy0xNDQuNS0yNjkuMS0xNTYuMi0zMDQuOC0yMDUuOC00MjEuMXoiXX0sZWFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImZlZGl2ZXJzZSIsaWNvbjpbNTc2LDUxMixbXSwiZTg2NSIsIk0zOTQuOCA1MjYuOWE1NCA1NCAwIDEgMSA1LjgtMTA3LjggNTQgNTQgMCAxIDEgLTUuOCAxMDcuOHptLTUwLjEtODAuNmMtNS41IDEwLjktNy40IDIzLjMtNS42IDM1LjRMMTY4LjcgNDU0LjRjNS41LTEwLjkgNy41LTIzLjMgNS43LTM1LjRsMTcwLjMgMjcuM3pNMTEyLjcgNDgxLjZhNTQgNTQgMCAxIDEgNS45LTEwNy44IDU0IDU0IDAgMSAxIC01LjkgMTA3Ljh6bTI1Ny43LTYxLjRjLTEwLjkgNS42LTE5LjcgMTQuNC0yNS40IDI1LjNsLTcwLjYtNzAuOSAzMy42LTE3IDYyLjQgNjIuN3pNNDg2LjEgMjYxYzguNyA4LjYgMTkuOCAxNC4zIDMxLjkgMTYuNEw0MzkuNCA0MzAuOGMtOC43LTguNi0xOS44LTE0LjMtMzEuOS0xNi40TDQ4Ni4xIDI2MXpNMzc2LjcgMjE5LjNsMzAuNSAxOTUuMWMtMTIuMS0xLjktMjQuNS0uMS0zNS40IDUuM2wtMzIuMi0yMDYuMyAzNy4yIDZ6TTM1MC40IDMyOC45TDE3NC4yIDQxOC4yYy0yLTEyLjEtNy42LTIzLjItMTYuMi0zMmwxODYuNi05NC42IDUuOCAzNy4yem0tMTUyLjctMjJsLTQwLjMgNzguN2MtOC43LTguNi0xOS44LTE0LjMtMzEuOS0xNi4zbDQ1LjYtODkgMjYuNiAyNi43ek0xMjQuNyAzNjljLTEyLjEtMS44LTI0LjQgLjItMzUuNCA1LjZMNjIuNyAyMDQuM2MxMi4xIDEuOCAyNC41LS4xIDM1LjQtNS42TDEyNC43IDM2OXptMTQ3LjEtNDcuOGwtMzMuNiAxNy0xMzkuNC0xMzkuOWMxMC45LTUuNiAxOS43LTE0LjQgMjUuNC0yNS4zTDI3MS44IDMyMS4yem0xOTcuNS05Mi44YzIgMTIuMSA3LjYgMjMuMiAxNi4yIDMxLjlsLTg5LjMgNDUuMi01LjgtMzcuMiA3OC45LTQwem01NS42IDQ0LjNhNTQgNTQgMCAxIDEgNS45LTEwNy44IDU0IDU0IDAgMSAxIC01LjkgMTA3Ljh6TTI4NC42IDU4LjdjOC43IDguNiAxOS44IDE0LjMgMzEuOCAxNi4zbC05NS4zIDE4Ni4xLTI2LjYtMjYuNyA5MC0xNzUuOHpNNDc0LjkgMTkyLjFjLTUuNSAxMC45LTcuNSAyMy4zLTUuNyAzNS4zbC0yMDYuNC0zMy4xIDE3LjItMzMuNSAxOTUgMzEuM3pNNjguNyAxOTkuNkE1NCA1NCAwIDEgMSA3NC42IDkxLjggNTQgNTQgMCAxIDEgNjguNyAxOTkuNnptNDMyLTMzLjRjLTEwLjkgNS42LTE5LjcgMTQuNC0yNS40IDI1LjNMMzUzLjUgNjkuM2MxMC45LTUuNiAxOS43LTE0LjQgMjUuNC0yNS4zTDUwMC42IDE2Ni4yek0yMjkuMyAxNTIuNmwtMTcuMiAzMy41LTg3LjQtMTRjNS40LTEwLjkgNy40LTIzLjMgNS41LTM1LjRsOTkgMTUuOXptMTM5LjUgMTUuOWwtMzcuMi02LTEzLjYtODcuMmMxMi4xIDEuNyAyNC41LS4zIDM1LjMtNS45bDE1LjUgOTkuMXpNMjY3LjggMjYuMmMyIDEyLjEgNy42IDIzLjIgMTYuMiAzMS45bC0xNTMuOSA3OGMtMi0xMi4xLTcuNi0yMy4yLTE2LjItMzEuOWwxNTMuOS03OHptNTUuNiA0NC4zYTU0IDU0IDAgMSAxIDUuOC0xMDcuOCA1NCA1NCAwIDEgMSAtNS44IDEwNy44eiJdfSx0YXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiYnJhdmUtcmV2ZXJzZSIsaWNvbjpbNDQ4LDUxMixbXSwiZTYzZCIsIk0yOTguNSAwYzMgMCA1LjggMS4zIDcuOCAzLjZsMzguMSA0NGMuNS0uMSAxLS4yIDEuNS0uMyA5LjItMS42IDE4LjYtMi4yIDI3LjctMS4yIDExLjYgMS40IDIxLjUgNS40IDI4LjkgMTIuOSA3LjcgNy44IDE1LjQgMTUuOCAyMi42IDIzLjYgMi41IDIuNyA0LjkgNS4yIDYuOSA3LjQgLjcgLjggMS40IDEuNSAxLjkgMiAzLjQgMy43IDQuMiA4LjEgMi43IDExLjlsLTkuOCAyNC42IDEzLjEgMzguMWMuNyAyIC44IDQuMSAuMiA2LjItLjEgLjQtLjEgLjQtLjUgMi4xbC0xLjUgNS44Yy0xLjYgNi4zLTMuNSAxMy4zLTUuNCAyMC45LTUuNiAyMS42LTExLjIgNDMuMi0xNi40IDYzLjQtMTIuOSA0OS45LTIxLjQgODIuNy0yMy40IDkwLjktMTEuMSA0NC41LTE5LjkgNjAtNDguMyA4MC4zLTI0LjkgMTcuOC03Ni44IDUzLjYtODYuOCA2MC0xIC42LTIgMS4zLTMuNCAyLjMtLjUgLjQtMy4yIDIuMi0zLjkgMi43LTQuOSAzLjMtOC4zIDUuNS0xMi4xIDcuMy00LjcgMi4yLTkuMyAzLjUtMTMuOSAzLjVzLTkuMS0xLjItMTMuOS0zLjVjLTMuNy0xLjgtNy4yLTMuOS0xMi4xLTcuMy0uOC0uNS0zLjQtMi40LTMuOS0yLjctMS40LTEtMi41LTEuNy0zLjQtMi4zLTEwLTYuNC02MS45LTQyLjEtODYuOC02MC0yOC40LTIwLjQtMzcuMi0zNS44LTQ4LjMtODAuMy0yLTguMi0xMC41LTQxLTIzLjMtOTAuNS01LjMtMjAuNi0xMC45LTQyLjItMTYuNS02My44LTItNy42LTMuOC0xNC42LTUuNC0yMC45bC0xLjUtNS44LS41LTIuMWMtLjUtMi0uNC00LjIgLjItNi4ybDEzLjEtMzguMS05LjktMjQuNWMtMS41LTMuOC0uNy04LjIgMi0xMS4yIDEuMi0xLjMgMS44LTIgMi42LTIuOCAyLTIuMiA0LjQtNC43IDYuOS03LjQgNy4zLTcuNyAxNS0xNS43IDIyLjctMjMuNSA3LjQtNy41IDE3LjMtMTEuNiAyOC45LTEyLjkgOS4xLTEuMSAxOC41LS41IDI3LjcgMS4yIC41IC4xIDEgLjIgMS41IC4zbDM4LjEtNDRjMi0yLjQgNC44LTMuNyA3LjgtMy43bDE0OCAwem0tNC43IDIxLjFsLTEzOC42IDAtMzkuMSA0NS4xYy0yLjYgMy02LjcgNC4zLTEwLjYgMy4yLS4yLS4xLS43LS4yLTEuNS0uNC0xLjMtLjMtMi45LS42LTQuNS0uOS03LjQtMS4zLTE0LjktMS44LTIxLjctMS03LjMgLjktMTMgMy4yLTE2LjYgNi45LTcuNiA3LjctMTUuMiAxNS42LTIyLjMgMjMuMy0xLjcgMS44LTMuMyAzLjUtNC44IDUuMWw4LjggMjJjMSAyLjQgMSA1IC4yIDcuNUwyOS43IDE3MC42Yy40IDEuNCAuNSAxLjkgMS4yIDQuOCAxLjYgNi4zIDMuNSAxMy4zIDUuNCAyMC45IDUuNiAyMS42IDExLjIgNDMuMiAxNi40IDYzLjQgMTIuOSA1MCAyMS40IDgyLjggMjMuNCA5MSAxMC4xIDQwLjEgMTYuNCA1MS4zIDQwLjIgNjguMyAyNC42IDE3LjYgNzYuMyA1My4yIDg1LjkgNTkuMyAxLjIgLjggMi41IDEuNiA0IDIuNyAuNiAuNCAzLjIgMi4yIDMuOSAyLjcgNCAyLjggNi43IDQuNCA5LjIgNS42IDIuMiAxIDMuOSAxLjUgNS4xIDEuNXMyLjktLjUgNS4xLTEuNWMyLjUtMS4yIDUuMi0yLjggOS4yLTUuNiAuNy0uNSAzLjMtMi4zIDMuOS0yLjcgMS42LTEuMSAyLjgtMS45IDQtMi43IDkuNi02LjEgNjEuMy00MS43IDg1LjktNTkuMyAyMy44LTE3LjEgMzAuMi0yOC4yIDQwLjEtNjguMyAyLjEtOC4zIDEwLjUtNDEuMSAyMy4zLTkwLjcgNS4zLTIwLjYgMTAuOS00Mi4yIDE2LjUtNjMuOCAyLTcuNiAzLjgtMTQuNiA1LjQtMjAuOSAuNy0yLjkgLjktMy40IDEuMi00LjhsLTEzLjMtMzguOGMtLjgtMi40LS44LTUuMSAuMi03LjVsOC44LTIyYy0xLjUtMS42LTMuMS0zLjMtNC44LTUuMS03LjItNy42LTE0LjctMTUuNS0yMi4zLTIzLjMtMy43LTMuNy05LjMtNi0xNi42LTYuOS02LjgtLjgtMTQuNC0uMy0yMS43IDEtMS43IC4zLTMuMiAuNi00LjUgLjktLjggLjItMS4zIC4zLTEuNSAuNC0zLjggMS4xLTcuOS0uMi0xMC42LTMuMkwyOTMuOCAyMS4xek0yMjQuNSAzMTZjMi44IDAgMjAuOSA2LjUgMzUuNCAxNC4xczI1IDEzIDI4LjMgMTUuMiAxLjMgNi4yLTEuNyA4LjQtNDQuMSAzNC42LTQ4LjEgMzguMi05LjggOS41LTEzLjggOS41LTkuOC01LjktMTMuOC05LjUtNDUuMS0zNi00OC4xLTM4LjItNS4xLTYuMi0xLjctOC40IDEzLjktNy41IDI4LjMtMTUuMiAzMi41LTE0LjEgMzUuNC0xNC4xbC0uMiAwem0uMS0yMzAuN2MuNyAwIDguOCAuMiAyMC41IDQuMiAxMi4zIDQuMiAyNS43IDkuNCAzMS45IDkuNHM1MS45LTguOSA1MS45LTguOSA1NC4yIDY2LjcgNTQuMiA4MS02LjggMTgtMTMuNyAyNS40LTM2LjggMzkuOC00MC43IDQzLjktMTEuOSAxMC41LTcuMSAyMS44IDExLjcgMjUuOCAzLjkgNDAuNC0yMSAyNC40LTI5LjQgMjIuOC0yOC40LTEyLjItMzUuNy0xNy4xLTMwLjUtMjQuMy0zMC41LTMxLjggMjQtMjAuOCAyOC40LTIzLjkgMjQuNy0xNC44IDI1LjEtMTkuNCAuMy02LTUuNy0xNy40LTE2LjctMjYuNy0xNC45LTM2LjggMTkuMS0xNS40IDMxLjUtMjAuMiAzNi4yLTEzLjcgMzkuMi0xNS4xIDIuMi0yLjctNi44LTMuNi0zNC42LTQuMy00Ni4xLTEuMS0zMS4yIDguMi0zMi44IDEwLjktMyAyLjctMS40IDExLjggMTAuMSA1Mi44IDEwLjkgNjAuNiAyLjQgMTIuOS01LjggMTQuOC0yMi4xIDUuMi0yNi44IDUuMi0xOC42LTMuMy0yNi44LTUuMi02LjYtNy01LjgtMTQuOCA5LjMtNTEuNSAxMC45LTYwLjYgLjItOS4yLTEuNC0xMS44LTIxLjMtNy42LTMyLjgtMTAuOS0zNy4xIC4yLTQ2LjEgMS4xLTkuOCAyLjItNi44IDMuNiAyNi44IDEwLjQgMzkuMiAxNS4xIDI5LjcgMTAgMzEuNSAyMC4yLTkgMjUuNC0xNC45IDM2LjgtNi4xIDEyLjgtNS43IDE3LjQgMjAuNiAxNi40IDI1LjEgMTkuNCAyOC40IDE2LjQgMjguNCAyMy45LTIzLjIgMjctMzAuNSAzMS44LTI3LjIgMTUuNC0zNS43IDE3LjEtMjEuNy04LjItMjkuNC0yMi44LS44LTI5LjEgMy45LTQwLjQtMy4zLTE3LjctNy4xLTIxLjgtMzMuOC0zNi41LTQwLjctNDMuOS0xMy43LTExLjItMTMuNy0yNS40IDU0LjItODEgNTQuMi04MSA0NS44IDguOSA1MS45IDguOSAxOS41LTUuMiAzMS45LTkuNCAyMC42LTQuMiAyMC42LTQuMmwtLjMgMHoiXX0scmFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImF2aWFuZXgiLGljb246WzUxMiw1MTIsW10sImYzNzQiLCJNNDUzLjIgMzJsLTMxMiAwQzEwMi4zIDMyIDY1IDYzLjIgNTcuOSAxMDEuN0wxLjMgNDEwLjNDLTUuOCA0NDguOCAyMCA0ODAgNTkgNDgwbDMxMiAwYzM4LjkgMCA3Ni4yLTMxLjIgODMuMy02OS43TDUxMSAxMDEuOEM1MTggNjMuMiA0OTIuMiAzMiA0NTMuMiAzMnpNMzk1IDM3OS4zbC0zMiAxMy41LTExNS40LTExMGMtMTQuNyAxMC0yOS4yIDE5LjUtNDEuNyAyNy4xbDIyLjEgNjQuMi0xNy45IDEyLjctNDAuNi02MS01Mi40LTQ4LjEgMTUuNy0xNS40IDU4IDMxLjFjOS4zLTEwLjUgMjAuOC0yMi42IDMyLjgtMzQuOWwtMjAuNS0yOS42LTY4LjgtOTkuOCAxOC44LTI4LjkgOC45LTQuOCAxMDMuMSAxMTIuNCA0LjkgNC41YzE5LjQtMTguOCAzMy44LTMyLjQgMzMuOC0zMi40IDcuNy02LjUgMjEuNS0yLjkgMzAuNyA3LjkgOSAxMC41IDEwLjYgMjQuNyAyLjcgMzEuMy0xLjggMS4zLTE1LjUgMTEuNC0zNS4zIDI1LjZsNC41IDcuMyA5NC45IDExOS40LTYuMyA3Ljl6Il19LGFhcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJuczgiLGljb246WzY0MCw1MTIsW10sImYzZDUiLCJNMTA0LjMgMjY5LjJsMjYuMSAwIDAtMjYuMi0yNi4xIDAgMCAyNi4yek0xNTYuOCAyNDNsLS4xLTI2LjIgMC0uOWMtLjItMTAuNC00LjQtMjAuMy0xMS45LTI3LjZzLTE3LjUtMTEuMy0yNy45LTExLjEtMjAuMyA0LjQtMjcuNiAxMS44LTExLjMgMTcuNS0xMS4yIDI3LjlsMCAuMiAyNi40IDAgMC0uMmMuMS0zLjQgMS41LTYuNiAzLjktOXM1LjctMy43IDkuMS0zLjcgNi43IDEuMyA5LjEgMy43IDMuOCA1LjYgMy45IDlsMCAyNi4yIDI2LjMgMHptNTIuNCAyNS44YzAgMTItMi40IDIzLjgtNi45IDM0LjlzLTExLjMgMjEuMS0xOS43IDI5LjYtMTguNSAxNS4yLTI5LjYgMTkuNy0yMi45IDYuOS0zNC45IDYuOWwtLjYgMGMtMjQuMiAwLTQ3LjMtOS42LTY0LjQtMjYuN1MyNi4zIDI5MyAyNi4zIDI2OC44bC0yNi4zIDAgMCAuMmMwIDE1LjQgMy4xIDMwLjcgOSA0NC45czE0LjYgMjcuMiAyNS41IDM4LjEgMjMuOSAxOS41IDM4LjEgMjUuNCAyOS41IDguOSA0NC45IDguOWwuOCAwYzE1LjQgMCAzMC43LTMgNDQuOS05czI3LjItMTQuNiAzOC4xLTI1LjUgMTkuNS0yMy44IDI1LjQtMzguMSA4LjktMjkuNSA4LjktNDQuOWwwLTI2LTI2LjMgMCAwIDI2em0tMTU3LjIgMGMuMSAxNy4zIDcgMzMuOSAxOS4yIDQ2LjFzMjguOCAxOS4xIDQ2LjEgMTkuMSAzMy45LTYuOSA0Ni4xLTE5LjEgMTkuMi0yOC44IDE5LjItNDYuMWwtMjYuMyAwYy0uMiAxMC4yLTQuNCAyMC0xMS43IDI3LjJzLTE3LjEgMTEuMi0yNy40IDExLjItMjAuMS00LTI3LjQtMTEuMi0xMS41LTE2LjktMTEuNy0yNy4ybDAtMjYtMjYuMyAwIDAtMjYuNmMuMy0xNy4zIDcuNC0zMy44IDE5LjctNDUuOHMyOS0xOC44IDQ2LjMtMTguNiAzMy44IDcuMiA0NS45IDE5LjUgMTguOSAyOC45IDE4LjkgNDYuMmwwIDI1LjMgMjYuMyAwIDAtMjUuM2MwLTI0LjMtOS43LTQ3LjctMjYuOS02NC45cy00MC41LTI2LjktNjQuOS0yNi45LTQ3LjcgOS43LTY0LjkgMjYuOS0yNi45IDQwLjUtMjYuOSA2NC45bDAgMjUuNCAyNi4zIDAgMCAyNnptNDE4LjQtNzEuMmMxMy43IDAgMjQuNiA2LjYgMzAuMSAxOC4zbC43IDEuNSAyMy4yLTExLjUtLjYtMS40Yy04LTE5LjMtMjguNS0zMS4zLTUzLjQtMzEuMy0yMy4xIDAtNDMuNiAxMS40LTUxIDI4LjQtLjEgMjYuOS0uMiAyMy45IDAgMjQuOCA0LjcgMTEgMTQuNiAxOS40IDI4LjcgMjQuMiA2LjUgMiAxMy4xIDMuMyAxOS44IDQgNS41IC43IDEwLjYgMS40IDE1LjggMy4xIDYuNCAyLjEgMTAuNSA1LjMgMTIuOCA5LjhsMCA5LjljLTMuNyA3LjUtMTMuOCAxMi4zLTI1LjggMTIuMy0xNC4zIDAtMjYtNi45LTMxLjktMTlsLS43LTEuNS0yMyAxMS41IC42IDEuNGM3LjkgMTkuNCAyOS42IDMyIDU1LjMgMzIgMjMuNiAwIDQ0LjYtMTEuNCA1Mi4zLTI4LjRsLjItMjUuOS0uMi0uN2MtNC45LTExLTE1LjItMTkuNi0yOC45LTI0LjItNy43LTIuNy0xNC4zLTMuNi0yMC43LTQuNC01LS41LTEwLTEuNS0xNC44LTIuOS02LjMtMS45LTEwLjQtNS4xLTEyLjYtOS42bDAtOC40YzMuNC03LjQgMTIuOS0xMi4xIDI0LjItMTIuMWwwIDB6TTI4Ny42IDMxMS4zbDI2LjEgMCAwLTY4LjQtMjYuMSAwIDAgNjguNHpNNjM5LjggMjU4Yy0yLjktNi4zLTguMy0xMi0xNS40LTE2LjcgNS42LTMuOCAxMC4xLTkuMSAxMy0xNS4zbC4yLTI1LjMtLjItLjdjLTcuNC0xNi0yNi43LTI2LjctNDguMi0yNi43UzU0OC41IDE4NCA1NDEuMSAyMDBsLS4yIDI1LjMgLjIgLjdjMi45IDYuMSA3LjQgMTEuNCAxMyAxNS4zLTcuMiA0LjctMTIuNSAxMC41LTE1LjQgMTYuN2wtLjIgMjguOSAuMiAuN2M3LjYgMTYgMjcuOSAyNi43IDUwLjYgMjYuN3M0My4xLTEwLjcgNTAuNi0yNi43bC4yLTI4LjktLjItLjd6bS03My4yLTUwLjhjMy42LTYuMyAxMi42LTEwLjUgMjIuNi0xMC41czE5IDQuMiAyMi42IDEwLjVsMCAxMy43Yy0zLjUgNi4yLTEyLjYgMTAuMy0yMi42IDEwLjNzLTE5LjEtNC4yLTIyLjYtMTAuM2wwLTEzLjd6bTQ3LjMgNzIuMmMtMy44IDYuNi0xMy4zIDEwLjktMjQuNyAxMC45LTExLjEgMC0yMS00LjQtMjQuNy0xMC45bDAtMTYuMmMzLjctNi4zIDEzLjUtMTAuNSAyNC43LTEwLjUgMTEuMyAwIDIwLjkgNC4xIDI0LjcgMTAuNWwwIDE2LjJ6TTM3Ni40IDI2NmwtNTkuOC04OS43LTI5IDAgMCA0MC42IDI2LjUgMCAwIC40IDYyLjUgOTQuMSAyNS43IDAgMC0xMzUuMS0yNS45IDAgMCA4OS43eiJdfSxXa2U9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic3F1YXJlLXBpbnRlcmVzdCIsaWNvbjpbNDQ4LDUxMixbInBpbnRlcmVzdC1zcXVhcmUiXSwiZjBkMyIsIk0zODQgMzJMNjQgMzJDMjguNyAzMiAwIDYwLjcgMCA5NkwwIDQxNmMwIDM1LjMgMjguNyA2NCA2NCA2NGw3Mi42IDAtMi4yLS44Yy01LjQtNDguMS0zLjEtNTcuNSAxNS43LTEzNC43IDMuOS0xNiA4LjUtMzUgMTMuOS01Ny45IDAgMC03LjMtMTQuOC03LjMtMzYuNSAwLTcwLjcgNzUuNS03OCA3NS41LTI1IDAgMTMuNS01LjQgMzEuMS0xMS4yIDQ5LjgtMy4zIDEwLjYtNi42IDIxLjUtOS4xIDMyLTUuNyAyNC41IDEyLjMgNDQuNCAzNi40IDQ0LjQgNDMuNyAwIDc3LjItNDYgNzcuMi0xMTIuNCAwLTU4LjgtNDIuMy05OS45LTEwMi42LTk5LjktNjkuOSAwLTExMC45IDUyLjQtMTEwLjkgMTA2LjYgMCAyMS4xIDguMiA0My43IDE4LjMgNTYgMiAyLjQgMi4zIDQuNSAxLjcgNy0xLjEgNC43LTMuMSAxMi45LTQuNyAxOS4yLTEgNC0xLjggNy4zLTIuMSA4LjYtMS4xIDQuNS0zLjUgNS41LTguMiAzLjMtMzAuNi0xNC4zLTQ5LjgtNTkuMS00OS44LTk1LjEgMC03Ny41IDU2LjItMTQ4LjYgMTYyLjItMTQ4LjYgODUuMiAwIDE1MS40IDYwLjcgMTUxLjQgMTQxLjggMCA4NC42LTUzLjMgMTUyLjctMTI3LjQgMTUyLjctMjQuOSAwLTQ4LjMtMTIuOS01Ni4zLTI4LjIgMCAwLTEyLjMgNDYuOS0xNS4zIDU4LjQtNSAxOS4zLTE3LjYgNDIuOS0yNy40IDU5LjNMMzg0IDQ4MGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTMyMGMwLTM1LjMtMjguNy02NC02NC02NHoiXX0saWFyPVdrZSxvYXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiYmx1ZXRvb3RoLWIiLGljb246WzI1Niw1MTIsW10sImYyOTQiLCJNMTY0LjkgMjYwTDI1Ny41IDE1Ni43IDExMS42IDAgMTExLjYgMjA2LjMgMjUuNCAxMjAuMi02IDE1MS42IDEwMi4xIDI2MC02IDM2OC40IDI1LjQgMzk5LjggMTExLjYgMzEzLjcgMTE0LjMgNTEyIDI2Mi44IDM2My40IDE2NC45IDI2MHptNDAuOS0xMDNsLTUwIDUwLS4zLTEwMC4zIDUwLjMgNTAuM3ptLTUwIDE1Nmw1MCA1MC01MC4zIDUwLjMgLjMtMTAwLjN6Il19LG5hcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJncmlwZmlyZSIsaWNvbjpbMzIwLDUxMixbXSwiZjNhYyIsIk04MC41IDMwMS40YzAtNzMuOCAxMDUuMS0xMjIuNSAxMDUuMS0yMDMgMC00Ny4xLTM0LTg4LTM5LjEtOTAuNCAuNCAzLjMgLjYgNi43IC42IDEwIDAgOTIuMS0xNDcuMSAxNTMuOS0xNDcuMSAyNjguNiAwIDQ5LjggMzIuMiA3OS4yIDY2LjUgMTA4LjMgNjUuMSA0Ni43IDc4LjEgNzEuNCA3OC4xIDg2LjYgMCAxMC4xLTQuOCAxNy00LjggMjIuMyAxMy4xLTE2LjcgMTcuNC0zMS45IDE3LjUtNDYuNCAwLTI5LjYtMjEuNy01Ni4zLTQ0LjItODYuNS0xNi0yMi4zLTMyLjYtNDIuNi0zMi42LTY5LjV6bTIwNS4zLTM5Yy0xMi4xLTY2LjgtNzgtMTI0LjQtOTQuNy0xMzAuOWw0IDcuMmMyLjQgNS4xIDMuNCAxMC45IDMuNCAxNy4xIDAgNDQuNy01NC4yIDExMS4yLTU2LjYgMTE2LjctMi4yIDUuMS0zLjIgMTAuNS0zLjIgMTUuOCAwIDIwLjEgMTUuMiA0Mi4xIDE3LjkgNDIuMSAyLjQgMCA1Ni42LTU1LjQgNTguMS04Ny43IDYuNCAxMS43IDkuMSAyMi42IDkuMSAzMy40IDAgNDEuMi00MS44IDk2LjktNDEuOCA5Ni45IDAgMTEuNiAzMS45IDUzLjIgMzUuNSA1My4yIDEgMCAyLjItMS40IDMuMi0yLjQgMzcuOS0zOS4zIDY3LjMtODUgNjcuMy0xMzYuOCAwLTgtLjctMTYuMi0yLjItMjQuNnoiXX0sR2tlPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InNxdWFyZS1nb29nbGUtcGx1cyIsaWNvbjpbNDQ4LDUxMixbImdvb2dsZS1wbHVzLXNxdWFyZSJdLCJmMGQ0IiwiTTQ0OCA5NmMwLTM1LjMtMjguNy02NC02NC02NEw2NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgNDE2YzAgMzUuMyAyOC43IDY0IDY0IDY0bDMyMCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMzIwek02NCAyNTZjMC01NS4zIDQ0LjctMTAwIDEwMC0xMDAgMjcgMCA0OS41IDkuOCA2NyAyNi4ybC0yNy4xIDI2LjFjLTcuNC03LjEtMjAuMy0xNS40LTM5LjgtMTUuNC0zNC4xIDAtNjEuOSAyOC4yLTYxLjkgNjMuMiAwIDM0LjkgMjcuOCA2My4yIDYxLjkgNjMuMiAzOS42IDAgNTQuNC0yOC41IDU2LjgtNDMuMWwtNTYuOSAwIDAtMzQuNCA5NC40IDBjMSA1IDEuNiAxMC4xIDEuNiAxNi42IDAgNTcuMS0zOC4zIDk3LjYtOTYgOTcuNi01NS4zIDAtMTAwLTQ0LjctMTAwLTEwMHptMjkxIDE4LjJsMCAyOS0yOS4yIDAgMC0yOS0yOSAwIDAtMjkuMiAyOSAwIDAtMjkgMjkuMiAwIDAgMjkgMjkgMCAwIDI5LjItMjkgMHoiXX0sc2FyPUdrZSxsYXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZ2l0ZWUiLGljb246WzUxMiw1MTIsW10sImU4NjMiLCJNMjU2IDUxMmEyNTYgMjU2IDAgMSAxIDAtNTEyIDI1NiAyNTYgMCAxIDEgMCA1MTJ6TTM4NS42IDExMy44bDAgMC0xNzcgMGMtNTIuNCAwLTk0LjggNDIuNC05NC44IDk0LjhsMCAxNzdjMCA3IDUuNyAxMi42IDEyLjYgMTIuNmwxODYuNSAwYzQ3LjEgMCA4NS4zLTM4LjIgODUuMy04NS4zbDAtNzIuN2MwLTctNS43LTEyLjYtMTIuNi0xMi42bC0xNDUuNCAwYy03IDAtMTIuNiA1LjctMTIuNiAxMi42bDAgMzEuNmMwIDYuNiA1LjEgMTIuMSAxMS42IDEyLjZsMSAwIDg4LjUgMGM2LjYgMCAxMi4xIDUuMSAxMi42IDExLjZsMCAxIDAgNi4zYzAgMjAuOS0xNyAzNy45LTM3LjkgMzcuOWwtMTIwLjEgMGMtNyAwLTEyLjYtNS43LTEyLjYtMTIuNmwwLTEyMC4xYzAtMjAuNCAxNi4xLTM3LjEgMzYuNC0zNy45bDEuNiAwIDE3NyAwYzcgMCAxMi42LTUuNyAxMi42LTEyLjZsMC0zMS42YzAtNy01LjYtMTIuNi0xMi42LTEyLjZ6Il19LGNhcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJ4bXBwIixpY29uOls1NzYsNTEyLFtdLCJlODY0IiwiTTAgNDcuMmMzLjUgMTM3LjEgMTE3LjEgMjc4LjYgMjUyLjkgMzU2LjctMzEuNSAyNS02Ny4yIDQ0LjEtMTA2LjIgNTMuOWwwIDUuNGM1Ni40LTIuMyA5OC4xLTIwLjEgMTQxLjMtNDAuNyA2NS43IDM0LjYgMTIyLjIgMzkuOSAxNDEuNCA0MC43bDAtNS40Yy0zOS05LjgtNzQuNy0yOC44LTEwNi4yLTUzLjggMTM1LjctNzguMiAyNDkuMy0yMTkuOCAyNTIuOC0zNTYuOC01OC40IDI1LjctMTE5LjEgNDQuMi0xODAuMSA2Mi4zbDAgMGMzLjQgNTktMjAuMiAxNzAuNC0xMDcuOSAyNjIuMy04OC40LTkyLjMtMTExLjItMjA0LjEtMTA3LjgtMjYyLjNsMCAwQzExNy43IDkyLjYgNTkuMyA3MC4yIDAgNDcuMnpNOTMuOSA5N2w3My42IDIxLjhDMTY1LjQgMjE2IDIyNi44IDM1OCAzNDEuMyA0MzIuMiAxOTAuNSAzNzYuOSA4OS45IDIxNS43IDkzLjkgOTd6bTM4OC4zIDBjMy4zIDk5LTY1LjYgMjI0LjctMTcxLjcgMjk2LjQtNC43LTQuMS05LjMtOC40LTEzLjgtMTIuNyA3Ny04MC4yIDExMy4yLTE4Ni4zIDExMS45LTI2MS45TDQ4Mi4xIDk3ek0yNjQuNSA0MTAuNWMzIDEuNiA1LjkgMy4yIDguOSA0LjctMTIuNSA2LjQtMjUuNCAxMi4xLTM4LjYgMTcgMTAuMy02LjcgMjAuMi0xMy45IDI5LjctMjEuN3oiXX0sZGFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImFwcC1zdG9yZSIsaWNvbjpbNTEyLDUxMixbXSwiZjM2ZiIsIk0yNTUuOSAxMjAuOWw5LjEtMTUuN2M1LjYtOS44IDE4LjEtMTMuMSAyNy45LTcuNXMxMy4xIDE4LjEgNy41IDI3LjlsLTg3LjUgMTUxLjUgNjMuMyAwYzIwLjUgMCAzMiAyNC4xIDIzLjEgNDAuOGwtMTg1LjUgMGMtMTEuMyAwLTIwLjQtOS4xLTIwLjQtMjAuNHM5LjEtMjAuNCAyMC40LTIwLjRsNTIgMCA2Ni42LTExNS40LTIwLjgtMzYuMWMtNS42LTkuOC0yLjMtMjIuMiA3LjUtMjcuOSA5LjgtNS42IDIyLjItMi4zIDI3LjkgNy41bDguOSAxNS43em0tNzguNyAyMThsLTE5LjYgMzRjLTUuNiA5LjgtMTguMSAxMy4xLTI3LjkgNy41cy0xMy4xLTE4LjEtNy41LTI3LjlsMTQuNi0yNS4yYzE2LjQtNS4xIDI5LjgtMS4yIDQwLjQgMTEuNnptMTY4LjktNjEuN2w1My4xIDBjMTEuMyAwIDIwLjQgOS4xIDIwLjQgMjAuNFM0MTAuNSAzMTggMzk5LjIgMzE4bC0yOS41IDAgMTkuOSAzNC41YzUuNiA5LjggMi4zIDIyLjItNy41IDI3LjktOS44IDUuNi0yMi4yIDIuMy0yNy45LTcuNS0zMy41LTU4LjEtNTguNy0xMDEuNi03NS40LTEzMC42LTE3LjEtMjkuNS00LjktNTkuMSA3LjItNjkuMSAxMy40IDIzIDMzLjQgNTcuNyA2MC4xIDEwNHpNMjU2IDhhMjQ4IDI0OCAwIDEgMCAwIDQ5NiAyNDggMjQ4IDAgMSAwIDAtNDk2ek00MCAyNTZhMjE2IDIxNiAwIDEgMSA0MzIgMCAyMTYgMjE2IDAgMSAxIC00MzIgMHoiXX0sdWFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6IndpeCIsaWNvbjpbNjQwLDUxMixbXSwiZjVjZiIsIk0zOTMuNCAxMzEuN2MwIDEzIDIuMSAzMi43LTI4LjcgNDMuOC05LjUgMy40LTE2IDkuNy0xNiA5LjcgMC0zMSA0LjctNDIuMiAxNy40LTQ4LjkgOS44LTUuMSAyNy4yLTQuNiAyNy4yLTQuNnpNMjc3LjYgMTY3LjJsLTM0LjIgMTMyLjctMjguNS0xMDguNmMtNy43LTMyLTIwLjgtNDguNS00OC40LTQ4LjUtMjcuNCAwLTQwLjcgMTYuMi00OC40IDQ4LjVMODkuNSAyOTkuOSA1NS4zIDE2Ny4yQzQ5LjcgMTQwLjUgMjMuOSAxMjkgMCAxMzJMNjUuNiAzNzkuOXMyMS42IDEuNiAzMi41LTRjMTQuMi03LjIgMjEtMTIuOCAyOS42LTQ2LjYgNy43LTMwLjEgMjkuMS0xMTguNCAzMS4xLTEyNC43IDQuOC0xNC45IDExLjEtMTMuOCAxNS40IDAgMiA2LjMgMjMuNSA5NC42IDMxLjEgMTI0LjcgOC42IDMzLjcgMTUuNCAzOS4zIDI5LjYgNDYuNiAxMC44IDUuNSAzMi41IDQgMzIuNSA0TDMzMi45IDEzMmMtMjQuNC0zLjEtNDkuOCA4LjktNTUuMyAzNS4zem0xMTUuOCA1LjJzLTQuMSA2LjMtMTMuNSAxMS42Yy02IDMuNC0xMS44IDUuNi0xOCA4LjYtMTUuMSA3LjMtMTMuMiAxMy45LTEzLjIgMzUuMmwwIDE1Mi4xczE2LjYgMi4xIDI3LjQtMy40YzEzLjktNy4xIDE3LjEtMTQgMTcuMy00NC44bDAtMTUwLjMgMCAwIDAtOXptMTYzLjQgODQuMUw2NDAgMTMyLjhzLTM1LjEtNi01Mi41IDkuOGMtMTMuMyAxMi4xLTI0LjQgMjkuNi01NC4yIDcyLjUtLjUgLjctNi4zIDEwLjUtMTMuMSAwLTI5LjMtNDIuMi00MC44LTYwLjMtNTQuMi03Mi41LTE3LjQtMTUuOC01Mi41LTkuOC01Mi41LTkuOGw4My4yIDEyMy43LTgzIDEyMy40czM2LjYgNC42IDU0LTExLjJjMTEuNS0xMC41IDE3LjYtMjAuNCA1Mi41LTcwLjcgNi44LTEwLjUgMTIuNi0uOCAxMy4xIDAgMjkuNCA0Mi40IDM5LjIgNTguMSA1My4xIDcwLjcgMTcuNCAxNS44IDUzLjMgMTEuMiA1My4zIDExLjJsLTgzLTEyMy40eiJdfSxmYXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiaW50ZXJjb20iLGljb246WzQ0OCw1MTIsW10sImY3YWYiLCJNMzkyIDMyTDU2IDMyQzI1LjEgMzIgMCA1Ny4xIDAgODhMMCA0MjRjMCAzMC45IDI1LjEgNTYgNTYgNTZsMzM2IDBjMzAuOSAwIDU2LTI1LjEgNTYtNTZsMC0zMzZjMC0zMC45LTI1LjEtNTYtNTYtNTZ6TTI4My43IDExNC4xYzAtMTkuOCAyOS45LTE5LjggMjkuOSAwbDAgMTk5LjVjMCAxOS44LTI5LjkgMTkuOC0yOS45IDBsMC0xOTkuNXptLTc0LjYtNy41YzAtMTkuOCAyOS45LTE5LjggMjkuOSAwbDAgMjE2LjVjMCAxOS44LTI5LjkgMTkuOC0yOS45IDBsMC0yMTYuNXptLTc0LjcgNy41YzAtMTkuOCAyOS45LTE5LjggMjkuOSAwbDAgMTk5LjVjMCAxOS44LTI5LjkgMTkuOC0yOS45IDBsMC0xOTkuNXpNNTkuNyAxNDRjMC0xOS44IDI5LjktMTkuOCAyOS45IDBsMCAxMzQuM2MwIDE5LjgtMjkuOSAxOS44LTI5LjkgMGwwLTEzNC4zek0zODMuMSAzNzEuOGMtNzIuOCA2My0yNDEuNyA2NS40LTMxOC4xIDAtMTUtMTIuOCA0LjQtMzUuNSAxOS40LTIyLjcgNjUuOSA1NS4zIDIxNi4xIDUzLjkgMjc5LjMgMCAxNC45LTEyLjkgMzQuMyA5LjggMTkuNCAyMi43em01LjItOTMuNWMwIDE5LjgtMjkuOSAxOS44LTI5LjkgMGwwLTEzNC4zYzAtMTkuOCAyOS45LTE5LjggMjkuOSAwbDAgMTM0LjN6Il19LHBhcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJyZWFjdGV1cm9wZSIsaWNvbjpbNTc2LDUxMixbXSwiZjc1ZCIsIk0yNTAuNyAyMTEuN2w1LjgtNC4xIDUuOCA0LjEtMi4xLTYuOCA1LjctNC4zLTcuMS0uMS0yLjMtNi44LTIuMyA2LjgtNy4yIC4xIDUuNyA0LjMtMiA2Ljh6bTYzLjcgMGw1LjgtNC4xIDUuOCA0LjEtMi4xLTYuOCA1LjctNC4zLTcuMi0uMS0yLjMtNi44LTIuMyA2LjgtNy4yIC4xIDUuNyA0LjMtMS45IDYuOHptLTkxLjMgNTAuNWwtMy40IDBjLTQuOCAwLTMuOCA0LTMuOCAxMi4xIDAgNC43LTIuMyA2LjEtNS44IDYuMXMtNS44LTEuNC01LjgtNi4xbDAtMzYuNmMwLTQuNyAyLjMtNi4xIDUuOC02LjFzNS44IDEuNCA1LjggNi4xYzAgNy4yLS43IDEwLjUgMy44IDEwLjVsMy40IDBjNC43LS4xIDMuOC0zLjkgMy44LTEyLjMgMC05LjktNi43LTE0LjEtMTYuOC0xNC4xbC0uMiAwYy0xMC4xIDAtMTYuOCA0LjItMTYuOCAxNC4xbDAgNDAuMWMwIDEwLjQgNi43IDE0LjEgMTYuOCAxNC4xbC4yIDBjMTAuMSAwIDE2LjgtMy44IDE2LjgtMTQuMSAwLTkuOSAxLjEtMTMuOC0zLjgtMTMuOHptLTgwLjcgMTcuNGwtMTQuNyAwIDAtMTkuMyAxMS40IDBjMi41IDAgMy44LTEuMyAzLjgtMy44bDAtMi4xYzAtMi41LTEuMy0zLjgtMy44LTMuOGwtMTEuNCAwIDAtMTguMyAxNC40IDBjMi41IDAgMy44LTEuMyAzLjgtMy44bDAtMi4xYzAtMi41LTEuMy0zLjgtMy44LTMuOGwtMjEuNyAwYy0yLjQtLjEtMy43IDEuMy0zLjcgMy44bDAgNTkuMWMwIDIuNSAxLjMgMy44IDMuOCAzLjhsMjEuOSAwYzIuNSAwIDMuOC0xLjMgMy44LTMuOGwwLTIuMWMwLTIuNS0xLjMtMy44LTMuOC0zLjh6bS00Mi0xOC41YzQuNi0yIDcuMy02IDcuMy0xMi40bDAtMTEuOWMwLTEwLjEtNi43LTE0LjEtMTYuOC0xNC4xbC0xMy40IDBjLTIuNSAwLTMuOCAxLjMtMy44IDMuOGwwIDU5LjFjMCAyLjUgMS4zIDMuOCAzLjggMy44bDMuNCAwYzIuNSAwIDMuOC0xLjMgMy44LTMuOGwwLTIyLjkgNS42IDAgNy40IDIzLjVjLjIgMSAuOCAxLjggMS42IDIuNHMxLjggLjkgMi43IC44bDMuMyAwYzIuOCAwIDQtMS44IDMuMi00LjRsLTguMS0yMy45em0tMy44LTE0YzAgNC44LTIuNSA2LjEtNi4xIDYuMWwtNS44IDAgMC0yMC45IDUuOCAwYzMuNiAwIDYuMSAxLjMgNi4xIDYuMWwwIDguN3pNMTc2LjEgMjI2Yy0uMS0uNS0uMi0xLS40LTEuNHMtLjYtLjgtMS0xLjEtLjgtLjYtMS4zLS43LTEtLjItMS41LS4xbC02LjkgMGMtLjUgMC0xIDAtMS40IC4ycy0uOSAuNC0xLjMgLjctLjcgLjctLjkgMS4xLS40IC45LS40IDEuNGwtMTEgNTkuMmMtLjUgMi43IC45IDQuMSAzLjQgNC4xbDMgMGMuNSAuMSAxIDAgMS41LS4ycy45LS40IDEuMy0uNyAuNy0uNyAuOS0xLjIgLjQtLjkgLjQtMS40bDEuOC0xMS4zIDEyLjIgMCAxLjggMTEuM2MwIC41IC4yIDEgLjQgMS40cy41IC45IC45IDEuMiAuOCAuNiAxLjMgLjcgMSAuMiAxLjUgLjJsMy41IDBjMi42IDAgMy45LTEuNCAzLjQtNC4xTDE3Ni4xIDIyNnptLTEyLjMgMzkuM2w0LjctMjkuNyA0LjcgMjkuNy05LjQgMHptODkuMyAyMC4ybDAtNTMuMiA3LjUgMGMyLjUgMCAzLjgtMS4zIDMuOC0zLjhsMC0yLjFjMC0yLjUtMS4zLTMuOC0zLjgtMy44bC0yNS44IDBjLTIuNSAwLTMuOCAxLjMtMy44IDMuOGwwIDIuMWMwIDIuNSAxLjMgMy44IDMuOCAzLjhsNy4zIDAgMCA1My4yYzAgMi41IDEuMyAzLjggMy44IDMuOGwzLjQgMGMyLjUgMCAzLjgtMS4zIDMuOC0zLjhsMCAwem0yNDgtLjhsLTE5LjQgMCAwLTI2LjcgMTYuMSAwYy4zIDAgLjUgMCAuOC0uMXMuNS0uMiAuNy0uNCAuMy0uNCAuNC0uNyAuMS0uNSAuMS0uOGwwLS44YzAtLjMgMC0uNS0uMS0uOHMtLjItLjUtLjQtLjctLjQtLjMtLjctLjQtLjUtLjEtLjgtLjFsLTE2LjEgMCAwLTI1LjggMTkuMSAwYy4zIDAgLjUgMCAuOC0uMXMuNS0uMiAuNy0uNCAuMy0uNCAuNC0uNyAuMS0uNSAuMS0uOGwwLS44YzAtLjMgMC0uNS0uMS0uOHMtLjItLjUtLjQtLjctLjQtLjMtLjctLjQtLjUtLjEtLjgtLjFsLTIyLjIgMGMtLjMtLjEtLjUtLjEtLjggMHMtLjUgLjItLjcgLjQtLjMgLjQtLjQgLjctLjEgLjUtLjEgLjhsMCA2M2MwIC4zIDAgLjUgLjEgLjhzLjIgLjUgLjQgLjYgLjQgLjMgLjcgLjQgLjUgLjEgLjggLjFsMjIuNSAwYy4zIDAgLjUgMCAuOC0uMXMuNS0uMiAuNy0uNCAuMy0uNCAuNC0uNiAuMS0uNSAuMS0uOGwwLS44YzAtLjMgMC0uNS0uMS0uOHMtLjItLjUtLjQtLjctLjQtLjMtLjctLjQtLjUtLjEtLjgtLjFsMCAwek00MDggMjIxLjhsLS44IDBjLTEwLjEgMC0xNS4zIDQuNy0xNS4zIDE0LjFsMCA0MC4xYzAgOS4zIDUuMiAxNC4xIDE1LjMgMTQuMWwuOCAwYzEwLjEgMCAxNS4zLTQuOCAxNS4zLTE0LjFsMC00MC4xYzAtOS40LTUuMi0xNC4xLTE1LjMtMTQuMWwwIDB6bTEwLjIgNTIuNGMtLjEgOC0zIDExLjEtMTAuNSAxMS4xcy0xMC41LTMuMS0xMC41LTExLjFsMC0zNi42YzAtNy45IDMtMTEuMSAxMC41LTExLjFzMTAuNSAzLjIgMTAuNSAxMS4xbDAgMzYuNnptLTQ2LjUtMTQuNWM2LjEtMS42IDkuMi02LjEgOS4yLTEzLjNsMC05LjdjMC05LjQtNS4yLTE0LjEtMTUuMy0xNC4xbC0xMy43IDBjLS4zIDAtLjUgMC0uOCAuMXMtLjUgLjItLjcgLjQtLjMgLjQtLjQgLjYtLjEgLjUtLjEgLjhsMCA2M2MwIC4zIDAgLjUgLjEgLjhzLjIgLjUgLjQgLjYgLjQgLjMgLjcgLjQgLjUgLjEgLjggLjFsMS4yIDBjLjMgMCAuNSAwIC44LS4xcy41LS4yIC42LS40IC4zLS40IC40LS42IC4xLS41IC4xLS44bDAtMjYuOSAxMS42IDAgMTAuNCAyNy4yYy4yIC41IC41IC45IC45IDEuMXMuOSAuNCAxLjQgLjRsMS41IDBjMS40IDAgMi0xIDEuNS0yLjNsLTEwLjYtMjcuM3ptLTYuNC0zLjlsLTEwLjIgMCAwLTI4LjUgMTAuMiAwYzcuNSAwIDEwLjUgMy4xIDEwLjUgMTEuMWwwIDYuNGMwIDcuOC0zIDExLTEwLjUgMTFsMCAwem04NS45LTMzLjFsLTEzLjcgMGMtLjMtLjEtLjUtLjEtLjggMHMtLjUgLjItLjcgLjQtLjMgLjQtLjQgLjctLjEgLjUtLjEgLjhsMCA2M2MwIC4zIDAgLjUgLjEgLjhzLjIgLjUgLjQgLjYgLjQgLjMgLjcgLjQgLjUgLjEgLjggLjFsMS4yIDBjLjMgMCAuNSAwIC44LS4xcy41LS4yIC42LS40IC4zLS40IC40LS42IC4xLS41IC4xLS44bDAtMjYuMSAxMC42IDBjMTAuMSAwIDE1LjMtNC44IDE1LjMtMTQuMWwwLTEwLjVjMC05LjQtNS4yLTE0LjEtMTUuMy0xNC4xem0xMC4yIDIyLjhjMCA3LjktMyAxMS4xLTEwLjUgMTEuMWwtMTAuMiAwIDAtMjkuMiAxMC4yIDBjNy41LS4xIDEwLjUgMy4xIDEwLjUgMTFsMCA3LjF6TTI1OS42IDMwOGwtMi4zLTYuOC0yLjMgNi44LTcuMSAuMSA1LjcgNC4zLTIuMSA2LjggNS44LTQuMSA1LjggNC4xLTIuMS02LjggNS43LTQuMy03LjEtLjF6TTQ4Ny4yIDE3MS45Yy0xMS43LTQuNC0yMy41LTguMS0zNS42LTExLjMgMTkuNi03OCAxMS42LTEzNC43LTIyLjMtMTUzLjktMzQuNS0xOS40LTg1LjkgNC4zLTEzOC4yIDU1LjIgMy40IDMuMyA2LjggNi43IDEwLjIgMTAuMiA4Mi41LTgwIDExOS42LTUzLjUgMTIwLjktNTIuOCAyMi40IDEyLjcgMzYgNTUuOCAxNS41IDEzNy44LTI3LjgtNi40LTU2LjEtMTAuNy04NC42LTEzLTcxLjktMTAwLjUtMTQwLjYtMTQyLjEtMTgyLjItMTQyLjEtMzAuOCAwLTQzLjggMjEtNDcuNiAyNy43LTE4LjEgMzItMTMuMyA4NC4yIC4xIDEzMy44LTcwLjUgMjAuMy0xMjAuNyA1NC4xLTEyMC4zIDk1IC41IDU5LjYgMTAzLjIgODcuOCAxMjIuMSA5Mi44LTIwLjUgODEuOS0xMC4xIDEzNS42IDIyLjMgMTUzLjkgMjggMTUuOCA3NS4xIDYgMTM4LjItNTUuMi0zLjQtMy4zLTYuOC02LjctMTAuMi0xMC4yLTgyLjUgODAtMTE5LjcgNTMuNS0xMjAuOSA1Mi44LTIyLjMtMTIuNi0zNi01NS42LTE1LjUtMTM3LjkgMTIuNCAyLjkgNDEuOCA5LjUgODQuNiAxMyA3MS45IDEwMC40IDE0MC42IDE0MiAxODIuMSAxNDIgMzAuOCAwIDQzLjgtMjEgNDcuNi0yNy43IDE4LTMxLjkgMTMuMy04NC4xLS4xLTEzMy44IDE1Mi4zLTQzLjggMTU2LjItMTMwLjIgMzMuOS0xNzYuM2wwIDB6TTEzNiAzNi44YzIuOS01LjEgMTEuOS0yMC4zIDM0LjktMjAuMyAzNi44IDAgOTguOCAzOS42IDE2My4zIDEyNi4yLTMxLjMtMS44LTYyLjctMS41LTkzLjkgLjkgMTMtMTguMyAyNy4xLTM1LjggNDIuMi01Mi40LTMuNC0zLjUtNi44LTYuOS0xMC4yLTEwLjItMTguMyAyMC4yLTM1LjMgNDEuNy01MC43IDY0LjItMjguNSAyLjctNTYuNyA3LjYtODQuNCAxNC42LS4yLTEuNC0yNC4zLTgyLjItMS4yLTEyM2wwIDB6TTQ0MC44IDQ3NS4xYy0yLjkgNS4xLTExLjggMjAuMy0zNC45IDIwLjMtMzYuNyAwLTk4LjctMzkuNC0xNjMuMy0xMjYuMiAzMS4zIDEuOCA2Mi43IDEuNSA5My45LS45LTEzIDE4LjMtMjcuMSAzNS44LTQyLjIgNTIuNCAzLjQgMy41IDYuOCA2LjkgMTAuMiAxMC4yIDE4LjQtMjAuMiAzNS4zLTQxLjcgNTAuNy02NC4yIDQ3LjMtNC43IDgwLjMtMTMuNSA4NC40LTE0LjYgMjIuNyA4NC40IDQuNSAxMTcgMS4yIDEyM3ptOS4xLTEzOC42Yy0zLjYtMTEuOS03LjctMjQuMS0xMi40LTM2LjQtMi4xIDAtNC4yLS41LTYuMS0xLjVzLTMuNS0yLjQtNC42LTQuMmwtLjEgLjFjLTEuNiAxLjUtMy40IDIuNy01LjQgMy42IDUuNyAxNC4zIDEwLjYgMjguNCAxNC43IDQyLjItMjMuNyA2LTQ3LjcgMTAuMy03MiAxMyAzLjUtNS4zIDE3LjItMjYuMiAzMi4yLTU0LjItMi4xLS44LTQuMi0xLjktNi0zLjItMS4xIDEuMi0zLjYgNC4yLTEwLjkgNC4yLTYuMiAxMS4yLTE3LjQgMzAuOS0zMy45IDU1LjItMzcuNCAzLjMtNzUgMy42LTExMi40IDEtNy45LTExLjItMjEuNS0zMS4xLTM2LjgtNTcuOC0xLS40LTItLjktMy0xLjUtMS45IDEuNi0zLjkgMy4yLTEyLjYgMy4yIDYuMyAxMS4yIDE3LjUgMzAuNyAzMy44IDU0LjYtMjQuMy0yLjMtNDguNC02LjItNzIuMi0xMS43IDMuOS0xNCA4LjYtMjguMyAxNC4xLTQyLjktMy4yIDAtNS40IC4yLTguNC0xLTIuMiAuOC00LjYgMS4xLTYuOSAxLTQuOSAxMy40LTkuMSAyNi41LTEyLjcgMzkuNC0xNTkuOS00Mi42LTE0MC4zLTEyMy42LTEuNS0xNjQgMy42IDExLjkgNy43IDI0LjEgMTIuNCAzNi40IDEwLjQgMCAxMi45IDMuNCAxNC40IDUuMyAuNy0uOCAxLjQtMS42IDIuMy0yLjItNS44LTE0LjctMTAuOS0yOS4yLTE1LjItNDMuMyA3LTEuOCAzMi40LTguNCA3Mi0xMy0xNS45IDI0LjMtMjYuNyA0My45LTMyLjggNTUuMyAzLjEgMS44IDUuMyA0LjYgNi40IDggMi41LTMuNyA2LjEtNi42IDEwLjItOC40IDYuNS0xMS43IDE3LjktMzEuOSAzNC44LTU2LjkgMzcuNC0zLjMgNzUtMy42IDExMi40LTEgMzEuNSA0NC42IDI4LjkgNDguMSA0Mi41IDY0LjUgMi42LTMuNSA2LjMtNiAxMC40LTcuNC02LjQtMTEuNC0xNy42LTMxLTM0LjMtNTUuNSA0MC40IDQuMSA2NSAxMCA3Mi4yIDExLjctNCAxNC40LTguOSAyOS4yLTE0LjYgNDQuMiAyLjUgMSA0LjggMi40IDYuOCA0LjNsLjEgLjFjMS0xLjUgMi4zLTIuOCAzLjgtMy44czMuMy0xLjYgNS4xLTEuOGM0LjktMTMuNCA5LjItMjYuNiAxMi44LTM5LjUgMTEuNyAzLjEgMjMuMiA2LjggMzQuNSAxMSAxMDYuMSAzOS45IDc0IDg3LjkgNzIuNiA5MC40LTE5LjggMzUuMS04MC4xIDU1LjItMTA1LjcgNjIuNXptLTExNC40LTExNGwtMS4yIDBjLS4zIDAtLjUgMC0uOCAuMXMtLjUgLjItLjYgLjQtLjMgLjQtLjQgLjYtLjEgLjUtLjEgLjhsMCA0OS44YzAgNy45LTIuNiAxMS4xLTEwLjEgMTEuMXMtMTAuMS0zLjEtMTAuMS0xMS4xbDAtNDkuOGMwLS4zIDAtLjUtLjEtLjhzLS4yLS41LS40LS43LS40LS4zLS43LS40LS41LS4xLS44LS4xbC0xLjIgMGMtLjMgMC0uNSAwLS44IC4xcy0uNSAuMi0uNyAuNC0uMyAuNC0uNCAuNi0uMSAuNS0uMSAuOGwwIDUxLjVjMCA5LjYgNSAxNC4xIDE1LjEgMTQuMWwuNCAwYzEwLjEgMCAxNS4xLTQuNiAxNS4xLTE0LjFsMC01MS41YzAtLjMtLjEtLjUtLjItLjhzLS4zLS41LS41LS42LS40LS4zLS43LS40LS41LS4xLS44LS4xek0zMjEuOCAzMDhsLTIuMy02LjgtMi4zIDYuOC03LjEgLjEgNS43IDQuMy0yLjEgNi44IDUuOC00LjEgNS44IDQuMS0yLjEtNi44IDUuNy00LjMtNy4xLS4xem0tMzEuMSA3LjRsLTIuMy02LjgtMi4zIDYuOC03LjEgLjEgNS43IDQuMy0yLjEgNi44IDUuOC00LjEgNS44IDQuMS0yLjEtNi44IDUuNy00LjMtNy4xLS4xem01LjEtMzAuOGwtMTkuNCAwIDAtMjYuNyAxNi4xIDBjLjMgMCAuNSAwIC44LS4xcy41LS4yIC43LS40IC4zLS40IC40LS43IC4xLS41IC4xLS44bDAtLjhjMC0uMyAwLS41LS4xLS44cy0uMi0uNS0uNC0uNy0uNC0uMy0uNy0uNC0uNS0uMS0uOC0uMWwtMTYuMSAwIDAtMjUuOCAxOS4xIDBjLjMgMCAuNSAwIC44LS4xcy41LS4yIC43LS40IC4zLS40IC40LS43IC4xLS41IC4xLS44bDAtLjhjMC0uMyAwLS41LS4xLS44cy0uMi0uNS0uNC0uNy0uNC0uMy0uNy0uNC0uNS0uMS0uOC0uMWwtMjIuMiAwYy0uMyAwLS41IDAtLjggLjFzLS41IC4yLS43IC40LS4zIC40LS40IC42LS4xIC41LS4xIC44bDAgNjNjMCAuMyAwIC41IC4xIC44cy4yIC41IC40IC42IC40IC4zIC43IC40IC41IC4xIC44IC4xbDIyLjUgMGMuMyAwIC41IDAgLjgtLjFzLjUtLjIgLjctLjQgLjMtLjQgLjQtLjcgLjEtLjUgLjEtLjhsMC0uOGMwLS4zIDAtLjYtLjEtLjhzLS4yLS41LS40LS43LS40LS40LS43LS40LS41LS4xLS44LS4xbDAgMHptLTcuNC05OS40bC0yLjMgNi44LTcuMSAuMSA1LjcgNC4zLTIuMSA2LjggNS44LTQuMSA1LjggNC4xLTIuMS02LjggNS43LTQuMy03LjEtLjEtMi4zLTYuOHoiXX0saGFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6IndhemUiLGljb246WzUxMiw1MTIsW10sImY4M2YiLCJNNTAyLjYgMjAxLjdjMTQuNSA4NS45LTMwLjkgMTY3LjktMTEzLjIgMjA4LjEgMTMgMzQuMS0xMi40IDcwLjItNDguMyA3MC4yLTEzLjIgMC0yNi01LjEtMzUuNi0xNC4ycy0xNS4zLTIxLjYtMTYtMzQuOGMtNi40IC4yLTY0LjIgMC03Ni4zLS42LS4zIDYuOC0xLjkgMTMuNS00LjcgMTkuNnMtNi45IDExLjctMTEuOSAxNi4zLTEwLjggOC4yLTE3LjIgMTAuNS0xMy4yIDMuNC0xOS45IDMuMWMtMzMuOS0xLjQtNTgtMzQuOC00Ny02Ny45LTM3LjItMTMuMS03Mi41LTM0LjktOTkuNi03MC44LTEzLTE3LjMtLjUtNDEuOCAyMC44LTQxLjggNDYuMyAwIDMyLjItNTQuMiA0My4yLTExMC4zIDE4LjQtOTMuOSAxMTYuOC0xNTcuMSAyMTEuNy0xNTcuMSAxMDIuNSAwIDE5Ny4yIDcwLjcgMjE0LjEgMTY5Ljd6TTM3My45IDM4OC4zYzQyLTE5LjIgODEuMy01Ni43IDk2LjMtMTAyLjEgNDAuNS0xMjMuMS02NC4yLTIyOC0xODEuNy0yMjgtODMuNCAwLTE3MC4zIDU1LjQtMTg2LjEgMTM2LTkuNSA0OC45IDUgMTMxLjQtNjguNyAxMzEuNCAyNC45IDMzLjEgNTguMyA1Mi42IDkzLjcgNjQgMjQuNy0yMS44IDYzLjktMTUuNSA3OS44IDE0LjMgMTQuMiAxIDc5LjIgMS4yIDg3LjkgLjggMy41LTYuOSA4LjUtMTIuOSAxNC43LTE3LjVzMTMuMi03LjkgMjAuOC05LjUgMTUuNC0xLjQgMjIuOSAuNCAxNC41IDUuMyAyMC41IDEwLjJ6TTIwNS41IDE4Ny4xYzAtMzQuNyA1MC44LTM0LjcgNTAuOCAwcy01MC44IDM0LjctNTAuOCAwem0xMTYuNiAwYzAtMzQuNyA1MC45LTM0LjcgNTAuOSAwcy01MC45IDM0LjgtNTAuOSAwek0xOTkuNSAyNTcuOGMtMy40LTE2LjkgMjIuMi0yMi4yIDI1LjYtNS4ybC4xIC4zYzQuMSAyMS40IDI5LjggNDQgNjQuMSA0My4xIDM1LjctLjkgNTkuMy0yMi4yIDY0LjEtNDIuOCA0LjUtMTYuMSAyOC42LTEwLjQgMjUuNSA2LTUuMiAyMi4yLTMxLjIgNjItOTEuNSA2Mi45LTQyLjYgMC04MC45LTI3LjgtODcuOS02NC4ybDAgMHoiXX0sbWFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImNyZWF0aXZlLWNvbW1vbnMtcmVtaXgiLGljb246WzUxMiw1MTIsW10sImY0ZWUiLCJNMjU1LjYgOEMzOTcuNCA4IDUwNCAxMTguMSA1MDQgMjU2IDUwNCA0MDMuMSAzODUuNSA1MDQgMjU1LjYgNTA0IDEyMS42IDUwNCA4IDM5NC41IDggMjU2IDggMTIzLjEgMTEyLjcgOCAyNTUuNiA4em0uOCA0NC43Yy0xMTguMiAwLTIwMy43IDk3LjktMjAzLjcgMjAzLjMgMCAxMDkuOCA5MS4yIDIwMi44IDIwMy43IDIwMi44IDEwMy4yIDAgMjAyLjgtODEuMSAyMDIuOC0yMDIuOCAuMS0xMTMuOC05MC4yLTIwMy4zLTIwMi44LTIwMy4zek00MTguMSAyNjAuNGw0LjkgMi4yIDAgNzBjLTcuMiAzLjYtNjMuNCAyNy41LTY3LjMgMjguOC02LjUtMS44LTExMy43LTQ2LjgtMTM3LjMtNTYuMmwtNjQuMiAyNi42LTYzLjMtMjcuNSAwLTYzLjggNTkuMy0yNC44Yy0uNy0uNy0uNCA1LS40LTcwLjRsNjcuMy0yOS43IDE1MS45IDYyLjkgMCA2MS42IDQ5LjEgMjAuM3ptLTcwLjQgODEuNWwwLTQzLjgtLjQgMCAwLTEuOC0xMTMuOC00Ni41IDAgNDUuMiAxMTMuOCA0Ni45IDAtLjQgLjQgLjR6bTcuNS01Ny42bDM5LjktMTYuNC0zNi44LTE1LjUtMzkgMTYuNCAzNS45IDE1LjV6bTUyLjMgMzguMWwwLTQzLTQ0LjMgMTguNiAwIDQzLjQgNDQuMy0xOXoiXX0sZ2FyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImJhbmRjYW1wIixpY29uOls1MTIsNTEyLFtdLCJmMmQ1IiwiTTI1NiA4YTI0OCAyNDggMCAxIDAgMCA0OTYgMjQ4IDI0OCAwIDEgMCAwLTQ5NnptNDguMiAzMjYuMWwtMTgxIDAgODQuNy0xNTYuMSAxODEgMC04NC43IDE1Ni4xeiJdfSx4YXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic3F1YXJlLXdlYi1hd2Vzb21lLXN0cm9rZSIsaWNvbjpbNDQ4LDUxMixbXSwiZTY4NCIsIk02NCA2NEM0Ni4zIDY0IDMyIDc4LjMgMzIgOTZsMCAzMjBjMCAxNy43IDE0LjMgMzIgMzIgMzJsMzIwIDBjMTcuNyAwIDMyLTE0LjMgMzItMzJsMC0zMjBjMC0xNy43LTE0LjMtMzItMzItMzJMNjQgNjR6TTAgOTZDMCA2MC43IDI4LjcgMzIgNjQgMzJsMzIwIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAzMjBjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDk2em0yMzUgODEuNmw1MyA0Ni40IDUyLjItMTAuNGMtMi42LTMuOS00LjItOC41LTQuMi0xMy42IDAtMTMuMyAxMC43LTI0IDI0LTI0czI0IDEwLjcgMjQgMjRjMCAxMy0xMC4zIDIzLjYtMjMuMiAyNEwzMDQuNSAzNDkuMWMtNS4yIDExLjUtMTYuNiAxOC45LTI5LjIgMTguOWwtMTAyLjYgMGMtMTIuNiAwLTI0LTcuNC0yOS4yLTE4LjlMODcuMiAyMjRjLTEyLjktLjQtMjMuMi0xMS0yMy4yLTI0IDAtMTMuMyAxMC43LTI0IDI0LTI0czI0IDEwLjcgMjQgMjRjMCA1LTEuNSA5LjctNC4yIDEzLjZMMTYwIDIyNCAyMTMuMSAxNzcuNmMtOC45LTQuMS0xNS0xMy4xLTE1LTIzLjYgMC0xNC40IDExLjYtMjYgMjYtMjZzMjYgMTEuNiAyNiAyNmMwIDEwLjUtNi4yIDE5LjUtMTUuMSAyMy42eiJdfSxiYXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidmltZW8tdiIsaWNvbjpbNDQ4LDUxMixbXSwiZjI3ZCIsIk00NDcuOCAxNTMuNmMtMiA0My42LTMyLjQgMTAzLjMtOTEuNCAxNzkuMS02MC45IDc5LjItMTEyLjQgMTE4LjgtMTU0LjYgMTE4LjgtMjYuMSAwLTQ4LjItMjQuMS02Ni4zLTcyLjMtMzUuMi0xMjkuMi01MC4yLTIwNC45LTc5LjMtMjA0LjktMy40IDAtMTUuMSA3LjEtMzUuMiAyMS4xTDAgMTY4LjJjNTEuNi00NS4zIDEwMC45LTk1LjcgMTMxLjgtOTguNSAzNC45LTMuNCA1Ni4zIDIwLjUgNjQuNCA3MS41IDI4LjcgMTgxLjUgNDEuNCAyMDguOSA5My42IDEyNi43IDE4LjctMjkuNiAyOC44LTUyLjEgMzAuMi02Ny42IDQuOC00NS45LTM1LjgtNDIuOC02My4zLTMxIDIyLTcyLjEgNjQuMS0xMDcuMSAxMjYuMi0xMDUuMSA0NS44IDEuMiA2Ny41IDMxLjEgNjQuOSA4OS40eiJdfSx5YXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic3RyYXZhIixpY29uOlszODQsNTEyLFtdLCJmNDI4IiwiTTE1OC40IDBMNyAyOTIgOTYuMiAyOTIgMTU4LjQgMTc1LjkgMjIwLjEgMjkyIDMwOC42IDI5MiAxNTguNCAwek0zMDguNiAyOTJsLTQzLjkgODguMi00NC42LTg4LjItNjcuNiAwIDExMi4yIDIyMCAxMTEuNS0yMjAtNjcuNiAweiJdfSx3YXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidW5pcmVnaXN0cnkiLGljb246WzM4NCw1MTIsW10sImY0MDQiLCJNMTkyIDQ4MGMzOS41IDAgNzYuMi0xMS44IDEwNi44LTMyLjJsLTIxMy41IDBDMTE1LjggNDY4LjIgMTUyLjUgNDgwIDE5MiA0ODB6TTEwMi45IDI4Ni45bDAtMTIuNC0xMDIuOSAwIDAgMTIuNGMwIDIuNSAwIDUgLjEgNy40bDEwMy4xIDBjLS4yLTIuNC0uMy00LjktLjMtNy40em0yMC41IDU3bC0xMTQuOSAwYzIuNiA4LjUgNS44IDE2LjggOS42IDI0LjhsMTM4LjMgMGMtMTIuOS01LjctMjQuMS0xNC4yLTMzLTI0Ljh6bS0xNy43LTM0LjdsLTEwNC40IDBjLjkgNy42IDIuMiAxNSAzLjkgMjIuM2wxMDkuNyAwYy00LTYuOS03LjItMTQuNC05LjItMjIuM3ptLTIuOC02OS4zbC0xMDIuOSAwIDAgMTcuMyAxMDIuOSAwIDAtMTcuM3ptMC0xNzMuMmwtMTAyLjkgMCAwIDQuOSAxMDIuOSAwIDAtNC45em0wLTM0LjdsLTEwMi45IDAgMCAyLjUgMTAyLjkgMCAwLTIuNXptMCA2OS4zbC0xMDIuOSAwIDAgNy40IDEwMi45IDAgMC03LjR6bTAgMTA0bC0xMDIuOSAwIDAgMTQuOCAxMDIuOSAwIDAtMTQuOHptMC02OS4zbC0xMDIuOSAwIDAgOS45IDEwMi45IDAgMC05Ljl6bTAgMzQuNmwtMTAyLjkgMCAwIDEyLjQgMTAyLjkgMCAwLTEyLjR6TTI2OS4xIDMzMS41bDEwOS43IDBjMS44LTcuMyAzLjEtMTQuNyAzLjktMjIuM2wtMTA0LjQgMGMtMi4xIDcuOS01LjIgMTUuNC05LjIgMjIuM3ptMTItMTg1LjdsMTAyLjkgMCAwLTkuOC0xMDIuOSAwIDAgOS44em0wIDM3LjJsMTAyLjkgMCAwLTEyLjQtMTAyLjkgMCAwIDEyLjR6bTAtNzQuM2wxMDIuOSAwIDAtNy40LTEwMi45IDAgMCA3LjR6bTAtNzYuN2wwIDIuNSAxMDIuOSAwIDAtMi41LTEwMi45IDB6TTc4LjEgNDQyLjlsMjI3LjcgMGMxMS44LTguNyAyMi43LTE4LjYgMzIuMi0yOS43bC0yOTMuMSAwYzkuNiAxMSAyMS40IDIxIDMzLjIgMjkuN3ptMjAzLTM3MS4zbDEwMi45IDAgMC00LjktMTAyLjkgMCAwIDQuOXptMCAxNDguNWwxMDIuOSAwIDAtMTQuOC0xMDIuOSAwIDAgMTQuOHpNMzguOCA0MDUuN2wzMDUuMyAwYzYuNy04LjUgMTIuNi0xNy42IDE3LjgtMjcuMkwyMyAzNzguNWM1LjIgOS42IDkuMiAxOC43IDE1LjggMjcuMnptMTg4LjgtMzcuMWwxMzkuNCAwYzMuNy04IDUuOC0xNi4yIDguNS0yNC44bC0xMTUgMGMtOC44IDEwLjctMjAuMSAxOS4yLTMyLjkgMjQuOHptNTMuNS04MS43YzAgMi41LS4xIDUtLjQgNy40bDEwMy4xIDBjLjEtMi41IC4yLTQuOSAuMi03LjRsMC0xMi40LTEwMi45IDAgMCAxMi40em0wLTI5LjdsMTAyLjkgMCAwLTE3LjMtMTAyLjkgMCAwIDE3LjN6Il19LE1hcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJjYy1kaW5lcnMtY2x1YiIsaWNvbjpbNTc2LDUxMixbXSwiZjI0YyIsIk0yMzkuNyA3OS45YTE3NS44IDE3NS44IDAgMSAwIDAgMzUxLjYgMTc1LjggMTc1LjggMCAxIDAgMC0zNTEuNnpNMTk5LjggMzU5LjVjLTQxLjctMTUuOS03MS40LTU2LjQtNzEuNC0xMDMuOHMyOS43LTg3LjkgNzEuNC0xMDQuMWwwIDIwNy45em03OS44IC4zbDAtMjA4LjJjNDEuNyAxNi4yIDcxLjQgNTYuNyA3MS40IDEwNC4xcy0yOS43IDg3LjktNzEuNCAxMDQuMXpNNTI4IDMyTDQ4IDMyQzIxLjUgMzIgMCA1My41IDAgODBMMCA0MzJjMCAyNi41IDIxLjUgNDggNDggNDhsNDgwIDBjMjYuNSAwIDQ4LTIxLjUgNDgtNDhsMC0zNTJjMC0yNi41LTIxLjUtNDgtNDgtNDh6TTMyOS43IDQ0OGwtOTAuMyAwQzEzMy4yIDQ0OCA0NS42IDM2Mi41IDQ1LjYgMjU3LjggNDUuNiAxNDMuMiAxMzMuMiA2NCAyMzkuNCA2NGw5MC4zIDBjMTA1IDAgMjAwLjcgNzkuMiAyMDAuNyAxOTMuOCAwIDEwNC43LTk1LjcgMTkwLjItMjAwLjcgMTkwLjJ6Il19LGthcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJrdWJlcm5ldGVzIixpY29uOls1MTIsNTEyLFtdLCJlODU3IiwiTTI1NiAzMTYuMWMzLjUtLjEgNy4yIDIgOC45IDUuMUwyOTMgMzcxLjdjLTMuNiAxLjItNy4zIDIuMy0xMS4yIDMuMS0yMS40IDQuOS00Mi43IDMuNC02Mi0zLjJsMjcuOS01MC40YzEuNy0zLjEgNC45LTUgOC4yLTUuMXptNTAuNS0yMy40bDU3LjIgOS43Yy04LjQgMjMuNS0yNC40IDQzLjktNDUuOCA1Ny41bC0yMi4yLTUzLjZjLTItNC43IC4xLTEwLjQgNC44LTEyLjYgMS45LS45IDQuMS0xLjMgNi0uOXptLTg5LjEgNy43Yy41IDIuMSAuMyA0LjItLjUgNmwtMjEuOCA1My4zYy0yMC41LTEzLjItMzYuOS0zMi45LTQ1LjctNTcuMWw1Ni43LTkuNmM1LjEtLjkgMTAuMSAyLjQgMTEuMyA3LjV6bTU4LjgtNDFsLTMuOSAxNy4xLTE1LjggNy42LTE1LjktNy43LTQtMTcuMSAxMS0xMy43IDE3LjcgMCAxMSAxMy43em0tNzMuNy0xNi43YzMuOSAzLjQgNC40IDkuNSAxLjIgMTMuNi0xLjMgMS43LTMuMSAyLjgtNSAzLjNsLTU1LjMgMTYuMmMtMi44LTI1LjcgMy4zLTUwLjcgMTYuMS03MS42bDQzLjEgMzguNnptMTUwLjctMzguNWM2LjQgMTAuNCAxMS4yIDIyIDE0LjEgMzQuNiAyLjkgMTIuNCAzLjYgMjQuOCAyLjQgMzYuOGwtNTUuNi0xNmMtNS0xLjQtOC4xLTYuNy02LjktMTEuNyAuNS0yLjEgMS42LTMuOCAzLjEtNS4xbDQyLjktMzguNXptLTExMy44IDQuNGMtLjIgNS4yLTQuNyA5LjQtOS45IDkuNC0yLjEgMC00LjEtLjctNS43LTEuOGwtNDcuMy0zMy40YzE0LjUtMTQuMyAzMy4xLTI0LjggNTQuNS0yOS43IDMuOS0uOSA3LjgtMS42IDExLjctMmwtMy4zIDU3LjZ6bTMwLjgtNTcuNmMyNSAzLjEgNDguMSAxNC40IDY1LjggMzEuN2wtNDcuMSAzMy4yYy00LjIgMy0xMCAyLjMtMTMuMy0xLjgtMS4zLTEuNy0yLTMuNi0yLjEtNS42bC0zLjMtNTcuNXpNMjU0LjUtMS4zYzUuOS0uMyAxMS43IC45IDE3IDMuNEw0NTUgODkuN2M0LjcgMi4zIDguOSA1LjYgMTIuMiA5LjdzNS42IDguOCA2LjggMTMuOWw0NS4zIDE5Ni45YzEuMiA1LjEgMS4yIDEwLjQgMCAxNS41cy0zLjUgOS45LTYuOCAxMy45TDM4NS42IDQ5Ny42Yy0zLjMgNC4xLTcuNSA3LjQtMTIuMiA5LjZzLTEwIDMuNC0xNS4yIDMuNGwtMjAzLjYgMGMtNS4zIDAtMTAuNS0xLjItMTUuMi0zLjRzLTguOS01LjUtMTIuMi05LjZMLjIgMzM5LjdjLS43LS45LTEuNC0xLjgtMi0yLjgtMi42LTMuOS00LjMtOC4zLTUuMS0xMi45cy0uNy05LjMgLjMtMTMuOEwzOC43IDExMy40YzEuMi01LjEgMy41LTkuOSA2LjgtMTMuOXM3LjUtNy40IDEyLjItOS43TDI0MS4xIDIuMWM0LjItMiA4LjgtMy4yIDEzLjQtMy40em0xLjggNjdjLTYuMSAwLTExIDUuNS0xMSAxMi4yIDAgLjEgMCAuMiAwIC4zIDAgLjktLjEgMiAwIDIuOCAuMSAzLjkgMSA2LjkgMS41IDEwLjQgLjkgNy43IDEuNyAxNCAxLjIgMTkuOS0uNSAyLjItMi4xIDQuMy0zLjYgNS43bC0uMiA0LjZjLTYuNiAuNS0xMy4yIDEuNi0xOS44IDMuMS0yOC41IDYuNS01My4xIDIxLjEtNzEuOCA0MS0xLjItLjgtMy4zLTIuMy00LTIuOC0yIC4zLTQgLjktNi41LS42LTQuOS0zLjMtOS40LTcuOS0xNC44LTEzLjQtMi41LTIuNi00LjMtNS4xLTcuMi03LjctLjctLjYtMS43LTEuNC0yLjQtMi0yLjMtMS44LTUtMi44LTcuNy0yLjktMy40LS4xLTYuNiAxLjItOC44IDMuOS0zLjggNC43LTIuNSAxMiAyLjcgMTYuMiAuMSAwIC4xIC4xIC4yIC4xIC43IC42IDEuNiAxLjMgMi4zIDEuOCAzLjEgMi4zIDYgMy41IDkuMSA1LjMgNi42IDQuMSAxMiA3LjQgMTYuMyAxMS41IDEuNyAxLjggMiA0LjkgMi4yIDYuM2wzLjUgMy4yYy0xOC44IDI4LjQtMjcuNiA2My40LTIyLjQgOTkuMWwtNC42IDEuM2MtMS4yIDEuNi0yLjkgNC00LjcgNC43LTUuNiAxLjgtMTIgMi40LTE5LjcgMy4zLTMuNiAuMy02LjcgLjEtMTAuNSAuOC0uOCAuMi0yIC40LTIuOSAuN2wtLjEgMC0uMiAuMWMtNi41IDEuNi0xMC43IDcuNS05LjMgMTMuNCAxLjMgNS45IDcuNyA5LjQgMTQuMiA4bC4yIDBjLjEgMCAuMS0uMSAuMi0uMSAuOS0uMiAyLjEtLjQgMi44LS42IDMuOC0xIDYuNS0yLjUgOS44LTMuOCA3LjMtMi42IDEzLjMtNC44IDE5LjItNS42IDIuNC0uMiA1IDEuNSA2LjMgMi4ybDQuOC0uOGMxMSAzNC4xIDM0LjEgNjEuNyA2My4zIDc5LjFsLTIgNC44Yy43IDEuOSAxLjUgNC40IDEgNi4yLTIuMSA1LjUtNS44IDExLjQtOS45IDE3LjktMiAzLTQuMSA1LjMtNS45IDguOC0uNCAuOC0xIDIuMS0xLjQgMy0yLjggNi0uOCAxMyA0LjcgMTUuNiA1LjUgMi42IDEyLjItLjEgMTUuMi02LjJsMCAwYy40LS45IDEtMiAxLjQtMi44IDEuNi0zLjYgMi4xLTYuNiAzLjItMTAuMSAyLjktNy4zIDQuNS0xNC45IDguNS0xOS43IDEuMS0xLjMgMi45LTEuOCA0LjgtMi4zbDIuNS00LjVjMjUuNSA5LjggNTQgMTIuNCA4Mi41IDUuOSA2LjUtMS41IDEyLjgtMy40IDE4LjgtNS43IC43IDEuMiAyIDMuNiAyLjMgNC4yIDEuOSAuNiAzLjkgLjkgNS42IDMuNCAzIDUuMSA1IDExLjIgNy41IDE4LjUgMS4xIDMuNCAxLjYgNi41IDMuMiAxMC4xIC40IC44IDEgMiAxLjQgMi44IDIuOSA2LjEgOS43IDguOCAxNS4yIDYuMiA1LjQtMi42IDcuNS05LjYgNC43LTE1LjYtLjQtLjktMS0yLjEtMS40LTMtMS44LTMuNC0zLjktNS43LTUuOS04LjctNC4yLTYuNS03LjYtMTEuOS05LjgtMTcuNC0uOS0yLjggLjItNC42IC44LTYuNS0uNC0uNS0xLjMtMy4yLTEuOC00LjQgMzAuNC0xNy45IDUyLjgtNDYuNiA2My4zLTc5LjYgMS40IC4yIDMuOSAuNyA0LjcgLjggMS43LTEuMSAzLjItMi41IDYuMi0yLjMgNS45IC44IDExLjkgMyAxOS4yIDUuNiAzLjQgMS4zIDYuMSAyLjggOS44IDMuOCAuOCAuMiAxLjkgLjQgMi44IC42IC4xIDAgLjEgMCAuMiAuMWwuMiAwYzYuNSAxLjQgMTIuOC0yLjIgMTQuMi04cy0yLjgtMTEuOC05LjMtMTMuNGMtLjktLjItMi4zLS42LTMuMi0uNy0zLjgtLjctNi45LS41LTEwLjUtLjgtNy43LS44LTE0LTEuNC0xOS43LTMuMi0yLjMtLjktNC0zLjctNC44LTQuOGwtNC40LTEuM2MyLjMtMTYuNiAxLjctMzMuOS0yLjMtNTEuMy00LTE3LjUtMTEuMS0zMy41LTIwLjYtNDcuNiAxLjEtMSAzLjMtMi45IDMuOS0zLjUgLjItMiAwLTQgMi4xLTYuMiA0LjMtNC4xIDkuOC03LjQgMTYuMy0xMS41IDMuMS0xLjggNi0zIDkuMS01LjMgLjctLjUgMS43LTEuMyAyLjQtMS45IDUuMy00LjIgNi41LTExLjQgMi43LTE2LjJzLTExLjEtNS4yLTE2LjQtMWMtLjcgLjYtMS44IDEuNC0yLjQgMi0yLjkgMi41LTQuOCA1LTcuMiA3LjctNS40IDUuNS05LjkgMTAuMS0xNC44IDEzLjQtMi4xIDEuMi01LjMgLjgtNi43IC43bC00LjIgM2MtMjMuOC0yNS01Ni4yLTQxLTkxLjItNDQuMS0uMS0xLjUtLjItNC4xLS4yLTQuOS0xLjQtMS40LTMuMi0yLjUtMy42LTUuNS0uNS01LjkgLjMtMTIuMyAxLjMtMTkuOSAuNS0zLjYgMS40LTYuNiAxLjUtMTAuNCAwLS45IDAtMi4yIDAtMy4xIDAtNi43LTQuOS0xMi4yLTExLTEyLjJ6Il19LFNhcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJwaW50ZXJlc3QiLGljb246WzUxMiw1MTIsW10sImYwZDIiLCJNNTA0IDI1NmMwIDEzNy0xMTEgMjQ4LTI0OCAyNDgtMjUuNiAwLTUwLjItMy45LTczLjQtMTEuMSAxMC4xLTE2LjUgMjUuMi00My41IDMwLjgtNjUgMy0xMS42IDE1LjQtNTkgMTUuNC01OSA4LjEgMTUuNCAzMS43IDI4LjUgNTYuOCAyOC41IDc0LjggMCAxMjguNy02OC44IDEyOC43LTE1NC4zIDAtODEuOS02Ni45LTE0My4yLTE1Mi45LTE0My4yLTEwNyAwLTE2My45IDcxLjgtMTYzLjkgMTUwLjEgMCAzNi40IDE5LjQgODEuNyA1MC4zIDk2LjEgNC43IDIuMiA3LjIgMS4yIDguMy0zLjMgLjgtMy40IDUtMjAuMyA2LjktMjguMSAuNi0yLjUgLjMtNC43LTEuNy03LjEtMTAuMS0xMi41LTE4LjMtMzUuMy0xOC4zLTU2LjYgMC01NC43IDQxLjQtMTA3LjYgMTEyLTEwNy42IDYwLjkgMCAxMDMuNiA0MS41IDEwMy42IDEwMC45IDAgNjcuMS0zMy45IDExMy42LTc4IDExMy42LTI0LjMgMC00Mi42LTIwLjEtMzYuNy00NC44IDctMjkuNSAyMC41LTYxLjMgMjAuNS04Mi42IDAtMTktMTAuMi0zNC45LTMxLjQtMzQuOS0yNC45IDAtNDQuOSAyNS43LTQ0LjkgNjAuMiAwIDIyIDcuNCAzNi44IDcuNCAzNi44cy0yNC41IDEwMy44LTI5IDEyMy4yQzE2MS41IDQzNy4yIDE2My41IDQ2Ny40IDE2NS42IDQ4NyA3My40IDQ1MC45IDggMzYxLjEgOCAyNTYgOCAxMTkgMTE5IDggMjU2IDhTNTA0IDExOSA1MDQgMjU2eiJdfSx6YXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiYWxnb2xpYSIsaWNvbjpbNTEyLDUxMixbXSwiZjM2YyIsIk0yNTYgMGMtMTM5LjkgMC0yNTQgMTEyLjctMjU2IDI1Mi4xLTIgMTQxLjUgMTEyLjkgMjU4LjcgMjU0LjUgMjU5LjUgNDMuNyAuMyA4NS45LTEwLjQgMTIzLjMtMzAuNyAzLjYtMiA0LjItNyAxLjEtOS43bC0yNC0yMS4yYy00LjktNC4zLTExLjgtNS41LTE3LjgtMy0yNi4xIDExLjEtNTQuNSAxNi44LTgzLjcgMTYuNC0xMTQuNC0xLjUtMjA2LjktOTYuNi0yMDUuMS0yMTEgMS44LTExMi45IDk0LjMtMjA0LjIgMjA3LjctMjA0LjJsMjA3LjcgMCAwIDM2OS0xMTcuOC0xMDQuN2MtMy44LTMuNC05LjctMi43LTEyLjcgMS4zLTE4LjkgMjUtNDkuNyA0MC42LTgzLjkgMzguMi00Ny41LTMuMy04NS45LTQxLjUtODkuNS04OC45LTQuMi01Ni42IDQwLjYtMTAzLjkgOTYuMy0xMDMuOSA1MC40IDAgOTEuOSAzOC44IDk2LjIgODggLjQgNC40IDIuNCA4LjUgNS43IDExLjRsMzAuNyAyNy4yYzMuNSAzLjEgOSAxLjIgOS45LTMuNCAyLjItMTEuOCAzLTI0LjIgMi4xLTM2LjgtNC45LTcyLTYzLjMtMTMwLTEzNS40LTEzNC40LTgyLjctNS4xLTE1MS44IDU5LjUtMTU0IDE0MC42LTIuMSA3OC45IDYyLjYgMTQ3IDE0MS42IDE0OC43IDMzIC43IDYzLjYtOS42IDg4LjMtMjcuNkw0OTUgNTA5LjRjNi42IDUuOCAxNyAxLjIgMTctNy43bDAtNDkyYzAtNS40LTQuNC05LjctOS43LTkuN0wyNTYgMHoiXX0sQ2FyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InN0YWNrcGF0aCIsaWNvbjpbNDQ4LDUxMixbXSwiZjg0MiIsIk0yNDQuNiAyMzIuNGMwIDguNS00LjMgMjAuNS0yMS4zIDIwLjVsLTE5LjYgMCAwLTQxLjUgMTkuNiAwYzE3LjEgMCAyMS4zIDEyLjQgMjEuMyAyMXpNNDQ4IDMybDAgNDQ4LTQ0OCAwIDAtNDQ4IDQ0OCAwek0xNTEuMyAyODcuOGMwLTIxLjItMTIuMS0zNC41LTQ2LjctNDQuOC0yMC42LTcuNC0yNi0xMC45LTI2LTE4LjZzNy0xNC42IDIwLjQtMTQuNmMxNC4xIDAgMjAuOCA4LjQgMjAuOCAxOC40bDMwLjcgMCAuMi0uNmMuNS0xOS42LTE1LjEtNDEuNi01MS4xLTQxLjYtMjMuNCAwLTUyLjYgMTAuOC01Mi42IDM4LjMgMCAxOS40IDkuMiAzMS4zIDUwLjcgNDQuNCAxNy4zIDYuMiAyMS45IDEwLjQgMjEuOSAxOS41IDAgMTUuMi0xOS4xIDE0LjItMTkuNSAxNC4yLTIwLjQgMC0yNS43LTkuMS0yNS43LTIxLjlsLTMwLjggMC0uMiAuNmMtLjcgMzEuMyAyOC40IDQ1LjIgNTYuNiA0NS4yIDMwIDAgNTEuMS0xMy42IDUxLjEtMzguM3ptMTI1LjQtNTUuNmMwLTI1LjMtMTguNC00NS41LTUzLjQtNDUuNWwtNTEuOCAwIDAgMTM4LjIgMzIuMiAwIDAtNDcuNCAxOS42IDBjMzAuMyAwIDUzLjQtMTYgNTMuNC00NS40ek0yOTcuOSAzMjVsNDkuMS0xMzguMi0zMS4xIDAtNDcuOSAxMzguMiAyOS45IDB6TTQwNC41IDE4Ni44bC0zMS4xIDAtNDcuOSAxMzguMiAyOS45IDAgNDkuMS0xMzguMnoiXX0sX2FyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Im9jdG9wdXMtZGVwbG95IixpY29uOls1MTIsNTEyLFtdLCJlMDgyIiwiTTQ1NS43IDM0OS4yYy00NS45LTM5LjEtMzYuNy03Ny45LTE2LjEtMTI4LjEgMzUuNy04Ny0yMy41LTE4Ni45LTEwOS42LTIxMi44LTkyLjktMjcuOS0xOTUuNyAxNi0yMzAuMyAxMDguOC04LjcgMjMuNS0xMi41IDQ4LjUtMTEgNzMuNSAxLjcgMjkuNSAxNC43IDUzIDI0LjEgODAuMyAxNy4yIDUwLjItMjguMSA5Mi43LTY2LjcgMTE3LjYtNDYuOCAzMC4yLTM2LjMgMzkuOS04LjQgNDEuOSAyMy40IDEuNyA0NC41LTQuNSA2NS4zLTE1IDkuMi00LjYgNDAuNy0xOC45IDQ1LjEtMjguNi0xMi4yIDI2LjYtMzcgNzIuNy0yMS41IDEwMi4xIDE5LjEgMzYuMiA2Ny4xLTMxLjggNzYuNy00NS44IDguNi0xMi42IDQzLTgxLjMgNjMuNi00Ni45IDE4LjkgMzEuNCA4LjYgNzYuNCAzNS43IDEwNC42IDMyLjkgMzQuMiA1MS4yLTE4LjMgNTEuNC00NC4yIC4yLTE2LjQtNi4xLTk1LjkgMjkuOS01OS45IDIxLjQgMjEuNCA1Mi45IDcxLjIgODguNiA2NyAzOC43LTQuNS0yMi4xLTY4LTI4LjMtNzguNyA1LjQgNC4zIDUzLjcgMzQuMSA1My44IDkuNSAuMS0xOC44LTMwLjEtMzQuNy00Mi41LTQ1LjN6Il19LFRhcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJ5YW1tZXIiLGljb246WzUxMiw1MTIsW10sImY4NDAiLCJNNTAwLjcgMTU5LjVjLS40LTEuOC0xLjItMy40LTIuMy00LjhzLTIuNS0yLjYtNC4xLTMuNWMtMy4xLTEuNi02LjctMi0xMC4xLTEuMWwtMjYuNCA2LjYgMC0uMi0yMi4zIDUuOC0xLjIgLjMtLjYtMi4yYy0xNS41LTU4LjMtNDUtMTExLjktODYuMS0xNTYuMi0yLjYtMi43LTYuMS00LjItOS44LTQuM3MtNy4zIDEuMy0xMCAzLjhsLTEwMi45IDEwMi43LTE5OS45IDBjLTYuNiAwLTEyLjkgMi42LTE3LjYgNy4zUzAgMTI0LjggMCAxMzEuNGwwIDI0OUMwIDM4NyAyLjYgMzkzLjMgNy4zIDM5OHMxMSA3LjMgMTcuNiA3LjNMMjI1IDQwNS4zIDMyOC4xIDUwOGMyLjYgMi42IDYgNCA5LjcgNHM3LjEtMS40IDkuNy00Yy4xLS4xIC4yLS4zIC40LS40IDI5LjMtMzEuNSA1Mi44LTY3LjggNjkuNi0xMDcuNCA2LjktMTYuNSAxMi43LTMzLjUgMTcuMy01MC44bDAgMCAyMC40IDUuMyAwLS4xIDI4LjMgNy4zYy45IC4yIDEuNyAuNCAyLjYgLjUgMS40IC4yIDIuOCAuMiA0LjEtLjEgMi41LS41IDQuOC0xLjcgNi43LTMuNHMzLjItNCAzLjgtNi41YzE1LjItNjMuNCAxNS4yLTEyOS42IC4xLTE5M2wwIDB6TTMzNy4xIDI0LjdsMCAwIDAgMCAwIDB6TTIyNi45IDE4OS44bC01Mi42IDkxLjNjLTEgMS43LTEuNSAzLjctMS41IDUuN2wwIDQ2LjJjMCA1LjgtMi4zIDExLjQtNi41IDE1LjZzLTkuNyA2LjQtMTUuNiA2LjRsLTMuNCAwYy01LjggMC0xMS40LTIuMy0xNS42LTYuNHMtNi41LTkuNy02LjUtMTUuNmwwLTQ1LjdjMC0xLjktLjUtMy44LTEuNC01LjVMNzIuMyAxODkuNmMtMS45LTMuNC0yLjgtNy4xLTIuOC0xMXMxLjEtNy42IDMtMTAuOSA0LjctNi4xIDguMS04IDcuMS0yLjkgMTEtMi45bDMuMyAwYzQgMCA4IDEuMSAxMS41IDMuMnM2LjMgNS4xIDguMSA4LjdsMzYuNCA3MC4zIDM3LjUtNzAuNWMxLjgtMy41IDQuNi02LjQgNy45LTguNHM3LjItMy4yIDExLjEtMy4yIDcuOCAuOSAxMS4yIDIuOCA2LjMgNC43IDguMiA4LjFjMiAzLjMgMyA3LjEgMyAxMXMtMSA3LjctMyAxMWwwIDB6TTMzNy4xIDI0LjdjMzUuOSA0MC42IDYxLjkgODkgNzUuOCAxNDEuM2wuNiAyLTExNC4xIDI5LjYgMC02Ni4xYzAtNi42LTIuNy0xMi45LTcuMy0xNy42cy0xMS03LjMtMTcuNi03LjNsLTE5LjQgMCA4Mi4xLTgxLjh6TTM5Ny42IDM5MmwwIDAgMCAwYy0xNC43IDM0LjgtMzUuMSA2Ny02MC4yIDk1LjJsLTgyLjItODEuOSAxOS4yIDBjNi42IDAgMTIuOS0yLjYgMTcuNi03LjNzNy4zLTExIDcuMy0xNy42bDAtNjYuMiAxMTQuNiAyOS45Yy00LjQgMTYuMy05LjggMzIuMy0xNi4zIDQ3LjlsMCAwem04NC01Mi40bDAgMC01MC42LTEzLjEtMTMxLjctMzQuMyAwLTcyLjUgMTE5LjctMzEgNC41LTEuMmMyOS45LTcuNyA0OS4yLTEyLjggNTguMS0xNS4xIDEyIDU1LjEgMTIgMTEyLjEgMCAxNjcuMnoiXX0sTGFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Im1vZHgiLGljb246WzQ0OCw1MTIsW10sImYyODUiLCJNMzU2IDI0MS44bDM2LjcgMjMuNyAwIDIxNC41LTEzMy04My44IDk2LjMtMTU0LjR6TTQ0MCA3NWwtMjEzLjcgMC0yMyAzNy44IDE1My41IDk2LjUgODMuMi0xMzQuM3pNMzUxIDIxNy44bC0yOTUuOC0xODUuOCAwIDIxNC41IDQ2IDI5IDI0OS44LTU3Ljd6TTk3IDI5NC4yTDggNDM3IDIyMS43IDQzNyAzNDYuNyAyMzYuNSA5NyAyOTQuMnoiXX0sRGFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InNxdWFyZS10aHJlYWRzIixpY29uOls0NDgsNTEyLFtdLCJlNjE5IiwiTTY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzIwIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zMjBjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzJ6TTI5NC4yIDI0NC4zYzE5LjUgOS4zIDMzLjcgMjMuNSA0MS4yIDQwLjkgMTAuNCAyNC4zIDExLjQgNjMuOS0yMC4yIDk1LjQtMjQuMiAyNC4xLTUzLjUgMzUtOTUuMSAzNS4zbC0uMiAwYy00Ni44LS4zLTgyLjgtMTYuMS0xMDYuOS00Ni44LTIxLjUtMjcuMy0zMi42LTY1LjQtMzMtMTEzLjFsMC0uMmMuNC00Ny43IDExLjUtODUuNyAzMy0xMTMuMSAyNC4yLTMwLjcgNjAuMi00Ni41IDEwNi45LTQ2LjhsLjIgMGM0Ni45IC4zIDgzLjMgMTYgMTA4LjIgNDYuNiAxMi4zIDE1LjEgMjEuMyAzMy4zIDI3IDU0LjRsLTI2LjkgNy4yYy00LjctMTcuMi0xMS45LTMxLjktMjEuNC00My42LTE5LjQtMjMuOS00OC43LTM2LjEtODctMzYuNC0zOCAuMy02Ni44IDEyLjUtODUuNSAzNi4yLTE3LjUgMjIuMy0yNi42IDU0LjQtMjYuOSA5NS41IC4zIDQxLjEgOS40IDczLjMgMjYuOSA5NS41IDE4LjcgMjMuOCA0Ny40IDM2IDg1LjUgMzYuMiAzNC4zLS4zIDU2LjktOC40IDc1LjgtMjcuMyAyMS41LTIxLjUgMjEuMS00Ny45IDE0LjItNjQtNC05LjQtMTEuNC0xNy4zLTIxLjMtMjMuMy0yLjQgMTgtNy45IDMyLjItMTYuNSA0My4yLTExLjQgMTQuNS0yNy43IDIyLjQtNDguNCAyMy41LTE1LjcgLjktMzAuOC0yLjktNDIuNi0xMC43LTEzLjktOS4yLTIyLTIzLjItMjIuOS0zOS41LTEuNy0zMi4yIDIzLjgtNTUuMyA2My41LTU3LjYgMTQuMS0uOCAyNy4zLS4yIDM5LjUgMS45LTEuNi05LjktNC45LTE3LjctOS44LTIzLjQtNi43LTcuOC0xNy4xLTExLjgtMzAuOC0xMS45bC0uNCAwYy0xMSAwLTI2IDMuMS0zNS42IDE3LjZsLTIzLTE1LjhjMTIuOC0xOS40IDMzLjYtMzAuMSA1OC41LTMwLjFsLjYgMGM0MS44IC4zIDY2LjYgMjYuMyA2OS4xIDcxLjggMS40IC42IDIuOCAxLjIgNC4yIDEuOWwuMSAuNXptLTcxLjggNjcuNWMxNy0uOSAzNi40LTcuNiAzOS43LTQ4LjgtOC44LTEuOS0xOC42LTIuOS0yOS0yLjktMy4yIDAtNi40IC4xLTkuNiAuMy0yOC42IDEuNi0zOC4xIDE1LjUtMzcuNCAyNy45IC45IDE2LjcgMTkgMjQuNSAzNi40IDIzLjZsLS4xLS4xeiJdfSxBYXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToib2xkLXJlcHVibGljIixpY29uOls1MTIsNTEyLFtdLCJmNTEwIiwiTTI0My44IDEwLjJjNy41LS4zIDE1LS4zIDIyLjUtLjEgMy42IC4xIDcuMiAuNCAxMC44IC43IDQuOSAuMyA5LjggMSAxNC43IDEuNiAyLjkgLjQgNS44IDEgOC43IDEuNSA3LjkgMS4zIDE1LjcgMy4zIDIzLjQgNS40IDEyLjIgMy41IDI0LjIgNy45IDM1LjggMTMuMiAyNi42IDEyLjIgNTAuOSAyOS4yIDcxLjYgNDkuOSAyMCAyMC4xIDM2LjcgNDMuNSA0OC45IDY5LjIgMS4xIDIuNiAyLjQgNS4xIDMuNSA3LjcgMi44IDYuNCA1LjQgMTMgNy42IDE5LjYgNC4xIDEyLjMgNy4zIDI1IDkuNCAzNy44IC42IDMuMSAxIDYuMyAxLjQgOS41IC41IDMuOCAuOSA3LjcgMS4yIDExLjYgLjggOC4zIC44IDE2LjcgLjggMjUuMS0uMSA1LS4zIDkuOS0uNyAxNC45LS4yIDMuNC0uNSA2LjgtMSAxMC4xLS40IDIuNy0uNiA1LjUtMS4xIDguMi0uOSA1LjEtMS43IDEwLjMtMi45IDE1LjQtNC4xIDE4LjUtMTAuMyAzNi42LTE4LjUgNTMuNi0xNS44IDMyLjgtMzguOCA2Mi4yLTY3LjEgODUuMS0xNy4zIDE0LjEtMzYuNCAyNS45LTU2LjkgMzQuOS02LjIgMi43LTEyLjUgNS4zLTE4LjkgNy40LTMuNSAxLjItNyAyLjQtMTAuNiAzLjQtNi42IDEuOS0xMy4zIDMuNi0yMCA1LTQuNyAuOS05LjMgMS43LTE0IDIuNS01LjMgLjctMTAuNSAxLjQtMTUuOCAxLjctNi43IC43LTEzLjQgLjgtMjAuMSAuOC02LjggMC0xMy42LS4xLTIwLjQtLjgtMy4zLS4yLTYuNi0uNS05LjgtMS0yLjctLjQtNS41LS42LTguMi0xLjEtNC4xLS43LTguMi0xLjQtMTIuNC0yLjItNC4yLS45LTguNS0xLjktMTIuNy0zLTguNi0yLjItMTcuMS01LTI1LjQtOC4xLTEwLjUtNC4xLTIwLjgtOC43LTMwLjYtMTQuMi0yLjEtMS4yLTQuMy0yLjMtNi40LTMuNi0xMS4yLTYuNi0yMS45LTE0LjEtMzEuOS0yMi4zLTM0LjctMjguNC02MS40LTY2LjQtNzYuNC0xMDguNy0zLjEtOC43LTUuNy0xNy42LTcuOC0yNi43LTEuNS02LjItMi41LTEyLjQtMy42LTE4LjctLjQtMi4zLS42LTQuNy0xLTcuMS0uNi00LS44LTgtMS4yLTExLjktLjgtOS41LS43LTE5LS41LTI4LjUgLjEtMy41IC4zLTcgLjctMTAuNSAuMy0zLjIgLjUtNi40IC45LTkuNSAuNC0yLjggLjctNS42IDEuMi04LjQgLjctMy45IDEuMy03LjkgMi4xLTExLjggMy40LTE2LjUgOC41LTMyLjcgMTUuMy00OC4yIDEuMi0yLjkgMi42LTUuNyAzLjktOC42IDguMS0xNi43IDE3LjktMzIuNiAyOS41LTQ3LjEgMjAtMjUuNCA0NS4xLTQ2LjcgNzMuMy02Mi41IDcuNS00LjIgMTUuMi04IDIzLjEtMTEuNCAxNS44LTYuOSAzMi40LTEyIDQ5LjMtMTUuNCAzLjUtLjcgNy0xLjIgMTAuNi0xLjggMi42LS41IDUuMy0uNyA3LjktMS4xIDMuNS0uNSA3LjEtLjcgMTAuNi0xIDIuNS0uMiA0LjktLjQgNy40LS41em04LjYgMjQuNGMtOS4yIC4xLTE4LjQgMS0yNy42IDIuMi03LjMgMS4xLTE0LjUgMi42LTIxLjcgNC4zLTEzLjkgMy41LTI3LjUgOC4zLTQwLjUgMTQuNC0xMC41IDUtMjAuNiAxMC43LTMwLjIgMTcuMi00LjIgMi45LTguNCA1LjgtMTIuMyA5LTUuMSA0LTEwIDguMi0xNC43IDEyLjYtMi41IDIuMi00LjggNC43LTcuMiA3LjEtMjguMiAyOC44LTQ4LjQgNjUuNC01Ny41IDEwNC43LTIgOC40LTMuNSAxNy00LjQgMjUuNi0xLjEgOC45LTEuNCAxNy45LTEuNCAyNi44IC4xIDcuMSAuNCAxNC4zIDEuMiAyMS40IC42IDcuMSAxLjkgMTQuMiAzLjIgMjEuMiAxLjEgNC42IDIgOS4zIDMuMyAxMy45IDYuMyAyMy40IDE2LjUgNDUuNyAzMC4xIDY1LjggOC42IDEzIDE4LjggMjQuOSAzMCAzNS44IDE2LjMgMTUuOCAzNSAyOSA1NS4zIDM5LjIgNy4zIDMuNSAxNC43IDYuOSAyMi4zIDkuNiA1IDEuOCAxMC4xIDMuNiAxNS4yIDUgMTEuMyAzLjIgMjIuOCA1LjYgMzQuNCA3LjEgMi45IC4zIDUuOCAuNiA4LjcgLjkgMTMuOCAxLjEgMjcuNyAxIDQxLjUtLjQgNC40LS42IDguOS0xIDEzLjMtMS44IDMuNi0uNyA3LjMtMS4yIDEwLjktMi4xIDQuMS0xIDguMy0xLjkgMTIuNC0zLjEgMjYuNS03LjMgNTEuNi0xOS43IDczLjYtMzYuMiAxNS44LTExLjggMzAtMjUuOCA0Mi4xLTQxLjMgMy4zLTQgNi4yLTguMyA5LjEtMTIuNiAzLjQtNS4xIDYuNi0xMC4yIDkuNi0xNS41IDIuNC00LjQgNC43LTguOSA3LTEzLjQgNS43LTEyLjEgMTAuMy0yNC42IDEzLjgtMzcuNSAyLjYtMTAgNC43LTIwLjIgNS45LTMwLjQgMS44LTEzLjUgMS45LTI3LjEgMS4zLTQwLjctLjMtMy45LS43LTcuOC0xLTExLjctMi4yLTE5LjEtNi44LTM3LjktMTMuOC01NS44LTYtMTUuMS0xMy41LTI5LjYtMjIuNi00My4xLTEyLjctMTguOC0yOC4yLTM1LjctNDYtNDkuOC0yNS0yMC01NC41LTM0LjUtODUuNi00Mi4xLTcuOC0xLjktMTUuNy0zLjMtMjMuNi00LjQtMy45LS42LTcuOC0uOC0xMS44LTEuMi03LjQtLjYtMTQuOC0uNy0yMi4yLS42ek0xNDcuMyA4My41YzEzLjMtOC45IDI4LjEtMTUuNCA0My4zLTIwLjItMy4yIDEuOC02LjQgMy40LTkuNSA1LjMtMTEuMiA2LjctMjEuNSAxNC45LTMwLjQgMjQuNS02LjggNy40LTEyLjggMTUuNy0xNyAyNC45LTMuMyA2LjktNS42IDE0LjItNi45IDIxLjctLjkgNC44LTEuMyA5LjgtMS4yIDE0LjggLjEgMTMuNyA0LjQgMjcuMSAxMS4zIDM4LjggNS45IDEwLjIgMTMuNiAxOS4zIDIyLjQgMjcuMyA0LjkgNC40IDEwLjIgOC4xIDE1IDEyLjYgMi4zIDIuMiA0LjUgNC40IDYuNCA2LjkgMi42IDMuMyA0LjkgNyA2IDExLjEgLjkgMyAuNyA2LjIgLjcgOS4zIDAgNC4xIDAgOC4yIDAgMTIuMyAuMSAzLjUgMCA3LjEgLjEgMTAuNiAuMSAyLjQgMCA0LjggLjEgNy4xIC4yIDUuOCAuMSAxMS41IC4xIDE3LjMgLjEgMi45IDAgNS44IC4xIDguNyAwIDEuNiAuMSAzLjMgMCA0LjktLjkgLjEtMS44IC4yLTIuNyAuMi0xMSAwLTIxLjktMi42LTMyLTYuOS02LTIuNy0xMS44LTUuOS0xNy4xLTkuOC01LjgtNC4yLTExLjEtOS0xNS44LTE0LjMtNi41LTcuMi0xMi0xNS40LTE2LjYtMjMuOS0xLjEtMi0yLjItNC0zLjItNi4xLTEuMi0yLjYtMi42LTUuMS0zLjctNy44LTQtOS43LTYuNi0xOS45LTguMS0zMC4zLS41LTQuNC0xLjEtOC45LTEuMi0xMy4zLS43LTE1LjcgLjgtMzEuNiA0LjctNDYuOCAyLjEtOC4yIDQuOC0xNi4yIDguMy0yMy44IDYuMy0xNC4yIDE1LjMtMjcuMiAyNi4zLTM4LjIgNi4zLTYuMiAxMy4xLTExLjggMjAuNS0xNi43ek0zMjIuNyA2My40YzIuNyAuNyA1LjQgMS43IDguMSAyLjcgNi40IDIuMyAxMi43IDQuOCAxOC43IDggMTMuMSA2LjQgMjUuMyAxNC44IDM1LjggMjUgMTAuMiAxMCAxOC43IDIxLjYgMjUuMSAzNC4zIDEuMyAyLjcgMi42IDUuNSAzLjggOC4zIDYuMyAxNS4xIDEwIDMxLjMgMTEuMiA0Ny42IC40IDQuNSAuNCA5LjEgLjUgMTMuNiAuMSAxMS42LTEuNSAyMy4zLTQuMyAzNC41LTIgNy4zLTQuMyAxNC41LTcuOSAyMS4yLTMuMiA2LjYtNi43IDEzLjItMTAuOCAxOS4yLTYuOSAxMC41LTE1LjYgMTkuOS0yNS44IDI3LjItMTAuNSA3LjYtMjIuNiAxMy0zNS40IDE1LjQtMy41IC43LTcuMSAxLjEtMTAuNyAxLjItMS44IC4xLTMuNyAuMi01LjYtLjEtLjMtMi4xIDAtNC4zIDAtNi41IDAtMy43IC4xLTcuNCAuMS0xMS4yIC4yLTcgMC0xNC4xIC4yLTIxLjEgMC0yLjQgMC00LjggMC03LjEgLjItNS4xIDAtMTAuMSAuMS0xNS4yIC4xLTMtLjItNiAuNS05IC43LTIuNSAxLjgtNC45IDMuMS03LjEgNC41LTcuMyAxMS4xLTEzIDE3LjctMTguMyA1LjQtNC4yIDEwLjUtOC44IDE1LTEzLjggNy43LTguNCAxNC4yLTE3LjkgMTguOC0yOC4zIDIuNS01LjkgNC41LTEyLjEgNS41LTE4LjUgLjktNC40IDEuMS04LjggMS0xMy4zIDAtNy44LTEuNC0xNS42LTMuNi0yMy4yLTEuOC01LjctNC4zLTExLjItNy4xLTE2LjQtMy45LTYuOS04LjYtMTMuMy0xNC0xOS4yLTkuOS0xMC44LTIxLjgtMTkuOS0zNC42LTI3LjEtMS44LTEtMy44LTEuOC01LjYtM3pNMjIxLjkgMTIxLjljMS0xLjIgMi0yLjMgMy4xLTMuNC0uNiAuOS0xLjMgMS44LTIgMi43LTMuMSAzLjktNS41IDguMy03IDEzLjEtLjkgMy4zLTEuNyA2LjYtMS43IDEwLS4xIDIuNS0uMSA1LjEgLjMgNy42IDEuMSA3LjYgNC4zIDE0LjkgOC44IDIxLjEgMiAyLjcgNC4yIDUuMyA2LjkgNy4zIDEuNiAxLjMgMy41IDIuMSA1LjMgMyAzLjEgMS43IDYuMyAzLjIgOS4xIDUuNSAyLjcgMi4xIDQuNiA1LjMgNC40IDguOCAwIDczLjcgMCAxNDcuMyAwIDIyMSAwIDEuNC0uMSAyLjcgMCA0IC4xIDEuNSAuOCAyLjggMS41IDQuMSAuOSAxLjcgMS44IDMuMyAzLjIgNC42IC45IC44IDIgMS40IDMuMiAxLjIgMS41LS4yIDIuNy0xLjQgMy40LTIuNiAxLTEuNSAxLjctMy4yIDIuMy00LjkgLjgtMi4xIC40LTQuNCAuNS02LjYgLjEtNCAwLTguMSAuMS0xMi4xIDAtNS45IDAtMTEuOCAuMS0xNy43IC4xLTMuNiAwLTcuMiAuMS0xMC45IC4yLTQgMC04LjEgLjEtMTIuMSAwLTYgMC0xMiAuMS0xOCAuMS0zLjYgMC03LjIgLjEtMTAuOSAuMS0zLjkgMC03LjkgLjEtMTEuOCAwLTYgMC0xMiAuMS0xOCAuMi0zLjkgMC03LjkgLjItMTEuOCAuMyAxLjQgLjEgMi45IC4yIDQuNCAuMiAzLjYgLjQgNy4yIC44IDEwLjggLjMgMy40IC40IDYuOSAuOSAxMC4zIC40IDMuMSAuNSA2LjIgMSA5LjMgLjYgNC4xIC45IDguMiAxLjUgMTIuMyAxLjUgOSAyLjggMTguMSA1LjEgMjcgMS4xIDQuOCAyLjQgOS42IDQgMTQuMyAyLjUgNy45IDUuNyAxNS43IDEwLjMgMjIuNiAxLjcgMi42IDMuOSA1IDYuMSA3LjIgLjMgLjIgLjYgLjUgLjkgLjcgLjYgLjMgMS4zLS4xIDEuNy0uNiAuNy0uOSAxLjItMS45IDEuNy0yLjkgNC4xLTcuOCA4LjItMTUuNiAxMi4zLTIzLjMgLjctMS4zIDEuNC0yLjYgMi42LTMuNiAxLjgtMS42IDMuOC0yLjcgNi0zLjYgMi45LTEuMiA1LjktMi4yIDktMi40IDYuNi0uNiAxMy4xIC43IDE5LjYgMS44IDMuNyAuNiA3LjQgMS4yIDExLjEgMS40IDMuNyAuMSA3LjUgLjEgMTEuMi0uMyA4LjYtLjkgMTctMyAyNC45LTYuMiA1LjMtMi4yIDEwLjUtNC44IDE1LjMtNy45IDExLjUtNy4yIDIxLjUtMTYuNiAzMC0yNyAxLjItMS40IDIuMi0yLjkgMy41LTQuMy0xLjIgMy4yLTIuNyA2LjQtNC4yIDkuNS0xLjMgMi45LTIuOCA1LjYtNC4zIDguNC01LjIgOS42LTExIDE4LjktMTcuOCAyNy41LTQgNS4yLTguNSAxMC4xLTEzLjMgMTQuNi02LjYgNi4xLTE0LjEgMTEuNC0yMi40IDE0LjgtOC4yIDMuNC0xNy4zIDQuNi0yNi4xIDMuMy0zLjYtLjYtNy0xLjctMTAuNC0yLjktMi44LTEtNS40LTIuNC04LTMuNy0zLjQtMS43LTYuNi0zLjgtOS43LTYuMSAyLjcgMy4xIDUuNyA1LjkgOC43IDguNiA0LjMgMy44IDguNyA3LjMgMTMuNiAxMC4yIDQgMi41IDguMyA0LjQgMTIuOCA1LjUgMS41IC40IDMgLjUgNC41IC42LTEuMyAxLjEtMi42IDItNCAzLTkuNiA2LjUtMjAgMTEuOS0zMC43IDE2LjQtMjAuOSA4LjctNDMuMiAxNC02NS43IDE1LjMtNC43IC4yLTkuMyAuNC0xNCAuNC01LS4xLTEwLS4xLTE0LjktLjctMTEuMi0uOC0yMi4zLTIuNy0zMy4yLTUuNC0xMC40LTIuNy0yMC42LTYuMS0zMC4zLTEwLjYtOC43LTMuOS0xNy4xLTguNC0yNS0xMy44LTEuOC0xLjMtMy43LTIuNS01LjQtNC4xIDYuNi0xLjIgMTMtMy40IDE5LTYuNSA1LjctMi45IDExLTYuNyAxNS42LTExLjEgMi4yLTIuMiA0LjMtNC42IDYuMi03LjEtMy40IDIuMS02LjkgNC4yLTEwLjYgNS44LTQuNCAyLjItOS4xIDMuOC0xMy44IDUtNS43IDEuNS0xMS43IDEuNy0xNy42IDEuMS04LjEtMS0xNS45LTQuMy0yMi41LTktNC4zLTIuOS04LjItNi40LTEyLTEwLjEtOS45LTEwLjItMTguMi0yMS44LTI1LjctMzMuOS0zLjktNi4zLTcuNS0xMi43LTExLjEtMTkuMi0xLTItMi4xLTQuMS0zLjItNi4xIDIuOCAyLjkgNS42IDYgOC40IDguOSAxOS4yIDE5LjIgMzcuNiAzMi4zIDUzLjcgMzUuNSAzLjEgLjcgNi4zIC41IDkuNSAuOCAyLjggLjMgNS42IC4yIDguMyAuMyA1IC4xIDEwLjEgMCAxNS4yLS4yIDMuNi0uMiA3LjMtLjcgMTAuOS0xLjEgMi4xLS4yIDQuMS0uNyA2LjEtMS4yIDMuOS0xIDguMS0xIDExLjggLjYgNC44IDEuOCA4LjQgNS42IDExLjQgOS43IDIuMiAzIDQuMSA2LjIgNS43IDkuNiAxLjIgMi40IDIuNSA0LjggMy42IDcuMyAxIDIuMiAyLjIgNC40IDMuNCA2LjUgLjcgMSAxLjQgMi4yIDIuNiAyLjYgMS4xLS44IDEuNy0xLjkgMi4zLTMgMi4xLTQuMiAzLjQtOC42IDQuOS0xMyAyLTYuNiAzLjgtMTMuMyA1LjItMjAgMi4yLTkuMyAzLjItMTguNyA0LjUtMjguMSAuNi00IC44LTggMS4zLTEyIC45LTEwLjYgMS45LTIxLjMgMi4yLTMxLjkgLjEtMS45IC4yLTMuNyAuMy01LjYgMC00LjMgLjItOC43IC4yLTEzIDAtMi40IDAtNC44IDAtNy4xIDAtNS4xLS4yLTEwLjEtLjItMTUuMi0uMi02LjYtLjctMTMuMi0xLjMtMTkuOC0uNy01LjktMS41LTExLjgtMy4xLTE3LjUtMi03LjctNS42LTE1LTkuOC0yMS44LTMuMi01LjEtNi44LTkuOS0xMS4xLTE0LTMuOS0zLjktOC42LTcuMS0xMy45LTguNC0xLjUtLjQtMy4xLS40LTQuNi0uNiAuMS0zIC43LTUuOSAxLjMtOC44IDEuNi03LjcgMy44LTE1LjMgNi44LTIyLjYgMS41LTQgMy40LTcuOSA1LjQtMTEuNyAzLjQtNi42IDcuNi0xMi44IDEyLjUtMTguNXptMzEuMyAxLjdjLjQtLjEgLjctLjEgMS4xLS4yIC4yIDEuOCAuMSAzLjYgLjEgNS40bDAgMzguMWMwIDEuNyAuMSAzLjUtLjIgNS4yLS40IDAtLjcgMC0xLjEgMC0uOS0zLjgtMS43LTcuNi0yLjYtMTEuMy0uNC0xLjUtLjYtMy4xLTEuMS00LjYtMS43LS4yLTMuNC0uMi01LjItLjItNS4xIDAtMTAuMSAwLTE1LjIgMC0xLjcgMC0zLjMgLjEtNSAwIDAtLjQtLjMtLjkgLjItMS4yIDEuMy0uNyAyLjctLjkgNC4xLTEuNCAzLjQtMS4xIDYuOS0yLjIgMTAuMy0zLjMgMS40LS41IDIuOS0uNyA0LjItMS41IDAtLjYgMC0xLjEgMC0xLjctMS4yLS42LTIuNS0uOS0zLjgtMS4zLTMuMS0xLTYuMy0yLTkuNC0zLTEuOC0uNi0zLjctMS01LjQtMS44IDAtLjQtLjEtLjctLjEtMS4xIDUuMS0uMiAxMC4yIC4xIDE1LjMtLjEgMy40LS4xIDYuNyAuMSAxMC4xLS4xIC4xLS40IC4zLS44IC40LTEuMiAxLjEtNC45IDIuMy05LjggMy40LTE0Ljd6bTYtLjJjLjQgMCAuNyAuMSAxLjEgLjIgMSAzLjggMS43IDcuOCAyLjcgMTEuNiAuNCAxLjQgLjYgMi45IDEgNC4zIDIuNSAuMiA1LjEgMCA3LjYgMCA1LjIgLjEgMTAuMyAuMSAxNS41IC4xIC44IDAgMS41IDAgMi4zIC4xIDAgLjQtLjEgLjctLjEgMS4xLTEuOCAuOC0zLjggMS4yLTUuNyAxLjktMy43IDEuMi03LjUgMi40LTExLjIgMy42LS42IC4yLTEuMSAuNC0xLjcgLjYtLjIgLjYtLjIgMS4xLS4xIDEuNyAuOSAuNSAxLjggLjggMi44IDEuMSA0LjkgMS41IDkuNyAzLjEgMTQuNiA0LjYgLjQgLjEgLjggLjMgMS4xIC41IC40IC4zIC4yIC44IC4yIDEuMi0xLjcgLjEtMy4zIDAtNSAwLTUuMiAwLTEwLjMgMC0xNS41IDAtMS42IDAtMy4yIDAtNC44IC4yLS41IDEuNy0uNyAzLjQtMS4yIDUuMS0uOSAzLjYtMS41IDcuMi0yLjUgMTAuOC0uNCAwLS43IDAtMS4xIC4xLS4zLTEuNy0uMi0zLjUtLjItNS4ybDAtMzguMWMwLTEuOC0uMS0zLjYgLjEtNS40em0tMTg2IDQ1YzEuMS0yLjIgMi4xLTQuNCAzLjQtNi41LTEuOCA3LjYtMi45IDE1LjMtMy42IDIzLS44IDcuNy0uOCAxNS41LS41IDIzLjIgMS4xIDE5LjkgNS41IDM5LjggMTQuMiA1Ny45IDMgNiA2LjQgMTEuOCAxMC41IDE3LjEgNi4xIDcuNSAxMi41IDE0LjggMTkuOCAyMS4xIDQuOCA0LjEgMTAgNy44IDE1LjUgMTAuOCAzLjMgMS43IDYuNSAzLjQgOS45IDQuNyA1IDIgMTAuMiAzLjYgMTUuNCA0LjkgMy44IDEgNy44IDEuNCAxMS41IDIuNyA1IDEuNiA5LjUgNC42IDEzIDguNCA0LjkgNS4yIDguMSAxMS45IDEwLjIgMTguNyAxIDIuOSAxLjYgNS45IDIuMiA4LjkgLjIgLjggLjIgMS41IC4yIDIuMy02LjUgMi44LTEzLjMgNS4xLTIwLjMgNi4yLTQuMSAuOC04LjMgMS0xMi41IDEuMS0xMC4yIC4yLTIwLjUtMS44LTMwLjEtNS4xLTMuNy0xLjQtNy41LTIuOS0xMS00LjctOC4xLTMuOC0xNS42LTguNy0yMi41LTE0LjUtMi45LTIuNi01LjgtNS4xLTguNC04LTkuMi05LjgtMTYuMy0yMS40LTIxLjgtMzMuNy0yLjQtNS41LTQuNi0xMS4yLTYuNC0xNy0xLjItMy45LTIuNC03LjktMy4zLTExLjktLjctMi45LTEuMi01LjktMS45LTguOS0uNS0yLjEtLjctNC4zLTEtNi41LS44LTUuNC0xLjMtMTAuOS0xLjMtMTYuNCAuMS02LjIgLjItMTIuNCAxLjEtMTguNSAuNC0yLjkgLjctNS43IDEuMi04LjYgMS01LjcgMi4xLTExLjQgMy43LTE2LjkgMy4xLTExLjYgNy41LTIzIDEyLjctMzMuOHptMzYzLjctNi40YzEuMSAxLjcgMS45IDMuNSAyLjggNS4zIDIuMSA0LjUgNC4yIDguOSA2IDEzLjUgNy42IDE4LjggMTIuMyAzOC44IDEzIDU5IDAgMS44IC4xIDMuNSAuMSA1LjMgLjEgOS42LTEuMyAxOS4xLTMuMiAyOC41LS43IDMuNi0xLjUgNy4yLTIuNiAxMC43LTQgMTQuNy0xMCAyOS0xOC40IDQxLjgtOC4yIDEyLjYtMTkgMjMuNS0zMS44IDMxLjQtNS43IDMuNi0xMS44IDYuNi0xOCA5LjItNS44IDIuMi0xMS43IDQtMTcuOCA1LjEtNi40IDEtMTIuOSAxLjUtMTkuNCAxLjItNy45LS41LTE1LjgtMi4xLTIzLjItNC44LTEuOS0uOC0zLjktMS41LTUuOC0yLjMtLjItMS41IC4yLTMgLjUtNC41IDEuMi01LjcgMy0xMS40IDUuNy0xNi42IDIuNC00LjUgNS41LTguNyA5LjUtMTEuOSAyLjQtMi4xIDUuMi0zLjYgOC4yLTQuOCAzLjYtMS41IDcuNS0yIDExLjItMi44IDcuMi0xLjcgMTQuNC0zLjkgMjEuMi03IDEwLjMtNC43IDE5LjctMTEuNCAyNy42LTE5LjUgMS42LTEuNiAzLjItMy4yIDQuNy00LjkgMy40LTMuOCA2LjctNy42IDkuOC0xMS41IDcuNS0xMC4xIDEyLjgtMjEuNiAxNi43LTMzLjUgMS42LTUuMyAzLjItMTAuNiA0LjItMTYuMSAuNi0yLjkgMS01LjggMS41LTguNyAuOS02LjEgMS42LTEyLjIgMS43LTE4LjQgLjEtNi42IC4xLTEzLjMtLjUtMTkuOS0uNy04LTEuOS0xNi0zLjctMjMuOHoiXX0sRWFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InN1c2UiLGljb246WzY0MCw1MTIsW10sImY3ZDYiLCJNNjA0LjUgMjEwYTEwLjQgMTAuNCAwIDEgMSAtMTEuNC0xNy40IDEwLjQgMTAuNCAwIDEgMSAxMS40IDE3LjR6TTYyMSAxODcuMmEzOC41IDM4LjUgMCAxIDEgLTc1IDE3LjYgMzguNSAzOC41IDAgMSAxIDc1LTE3LjZ6TTQzMy43IDMzNi43YzMuMiA0LjYgNS44IDkgNy4zIDEzLjQgMSAzLjEgMi40IDcuMyA1LjUgOC45IC4yIC4xIC4zIC4yIC41IC4yIDUuNyAyLjEgMjAuMyAxLjcgMjAuMyAxLjdsMjYuOCAwYzIuMyAwIDIyLjQgMCAyMS45LTIuMy0yLjQtMTAuOC0xNC45LTEyLjctMjQuNC0xOC4zLTguNy01LjItMTctMTEuMS0yMC44LTIxLjMtMi01LjItLjgtMTcuNCAyLjYtMjEuOCAyLjUtMy4yIDYuMS01LjMgMTAtNi4yIDQuMy0uOSA4LjgtLjEgMTMuMSAuMyA1LjMgLjUgMTAuNiAxLjUgMTUuOSAyLjIgMTAuMyAxLjMgMjAuNiAxLjkgMzEgMS42IDE3LjEtLjUgMzQuMi0zLjIgNTAuNC04LjcgMTEuMy0zLjggMjIuNC04LjkgMzItMTYuMSAxMC45LTguMSA4LjEtNy40LTMtNi4yLTEzLjMgMS40LTI2LjYgMS42LTM5LjkgLjgtMTIuNC0uNy0yNC43LTIuMi0zNS45LTcuOS04LjgtNC42LTE2LjQtOS4xLTIzLjQtMTYuMi0xLTEuMS0xLjctNC4yIC4yLTYuMiAxLjktMS45IDUuOC0uOCA3IC4yIDEyLjIgMTAuMiAzMC41IDE4LjYgNDkuMyAxOS41IDEwLjIgLjUgMjAuMSAuNyAzMC40IC4zIDUuMS0uMiAxMi44LS4yIDE3LjktLjMgMi42IDAgOS44IC43IDExLjItMi4xIC40LS44IC40LTEuOCAuMy0yLjctMS41LTQwLjktNC41LTg2LjktNDcuMy0xMDYuNS0zMS45LTE0LjYtNzkuNy0zNy4yLTk5LjktNDYuNi00LjctMi4yLTEwLjIgMS4zLTEwLjIgNi41IDAgMTMuNiAuNyAzMy4zIC43IDUxLjEtOS43LTkuOS0yNi0xNi4xLTM4LjQtMjEuOC0xNC4xLTYuNS0yOC43LTEyLTQzLjUtMTYuNi0yOS44LTkuMi02MC43LTE0LjktOTEuNy0xOC0zNS4yLTMuNS03MS0xLjgtMTA1LjcgNS4zLTU2LjkgMTIuMi0xMTMuMSAzOS43LTE1NS43IDc5LjgtMjYuMSAyNC42LTQ2LjYgNTkuNy00OCA5NS4yLTIgNTAuMyAxMi4xIDc3LjMgMzggMTA1LjIgNDEuMyA0NC40IDEzMC4yIDUwLjYgMTY2LjItMiAxNi4yLTIzLjcgMTkuNy01NS44IDgtODItMTEuOC0yNi4yLTM4LjgtNDUuMS02Ny40LTQ2LTIyLjItLjctNDUuOSAxMC42LTU0LjUgMzEuMS02LjUgMTUuNy0yLjggMzUuMSA5IDQ3LjMgNC42IDQuOCAxMC45IDguNyAxNy43IDcuMSA0LS45IDcuNC0zLjkgOC04IC45LTYtNC40LTkuOS03LjYtMTQuNS01LjgtOC4zLTQuNy0yMC45IDIuNy0yNy45IDYuMi02IDE1LjMtNy44IDIzLjktNy43IDggMCAxNi4yIDEuNCAyMy4xIDUuNSA5LjcgNS43IDE2LjIgMTYuMiAxOC40IDI3LjIgNi43IDMzLTIwLjIgNTkuOS01Ni42IDYyLTE4LjYgMS4xLTM3LjYtMy44LTUyLjEtMTUuNS0zNi45LTI5LjgtNDUuOS05MC4zLTMuOC0xMjIuNyA0MC0zMC43IDkwLjQtMjIuOCAxMjAuMi02LjggMjMuOCAxMi44IDQxLjUgMzMuNiA1NSA1Ni43IDYuNyAxMS42IDEyLjUgMjMuNyAxNy44IDM2LjEgNS4xIDExLjggOS45IDIzLjggMjAuMiAzMi41IDYuOCA1LjggMTUuMiA1LjYgMjQuMSA1LjZsNTAuOCAwYzYuOSAwIDUuMi00LjYgMi4yLTcuNy02LjctNi45LTE2LjQtOC40LTI1LjQtMTAuOS0yMC41LTUuNi0xOC40LTMyLjgtMTIuNy0zMi44IDE4LjMgMCAxOC45IC42IDM0LjkgLjMgMjMuMi0uMyAzMC4yLTEuNyA0OC4zIDUgOS43IDMuNiAxOSAxMy4xIDI1LjEgMjEuN3oiXX0sJGFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImFwcC1zdG9yZS1pb3MiLGljb246WzQ0OCw1MTIsW10sImYzNzAiLCJNNDAwIDMyTDQ4IDMyQzIxLjUgMzIgMCA1My41IDAgODBMMCA0MzJjMCAyNi41IDIxLjUgNDggNDggNDhsMzUyIDBjMjYuNSAwIDQ4LTIxLjUgNDgtNDhsMC0zNTJjMC0yNi41LTIxLjUtNDgtNDgtNDh6TTEyNyAzODQuNWMtNS41IDkuNi0xNy44IDEyLjgtMjcuMyA3LjMtOS42LTUuNS0xMi44LTE3LjgtNy4zLTI3LjNsMTQuMy0yNC43YzE2LjEtNC45IDI5LjMtMS4xIDM5LjYgMTEuNEwxMjcgMzg0LjV6bTEzOC45LTUzLjlMODQgMzMwLjZjLTExIDAtMjAtOS0yMC0yMHM5LTIwIDIwLTIwbDUxIDAgNjUuNC0xMTMuMi0yMC41LTM1LjRjLTUuNS05LjYtMi4yLTIxLjggNy4zLTI3LjMgOS42LTUuNSAyMS44LTIuMiAyNy4zIDcuM2w4LjkgMTUuNCA4LjktMTUuNGM1LjUtOS42IDE3LjgtMTIuOCAyNy4zLTcuMyA5LjYgNS41IDEyLjggMTcuOCA3LjMgMjcuM2wtODUuOCAxNDguNiA2Mi4xIDBjMjAuMiAwIDMxLjUgMjMuNyAyMi43IDQwem05OC4xIDBsLTI5IDAgMTkuNiAzMy45YzUuNSA5LjYgMi4yIDIxLjgtNy4zIDI3LjMtOS42IDUuNS0yMS44IDIuMi0yNy4zLTcuMy0zMi45LTU2LjktNTcuNS05OS43LTc0LTEyOC4xLTE2LjctMjktNC44LTU4IDcuMS02Ny44IDEzLjEgMjIuNyAzMi43IDU2LjcgNTguOSAxMDJsNTIgMGMxMSAwIDIwIDkgMjAgMjAgMCAxMS4xLTkgMjAtMjAgMjB6Il19LFBhcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJ1bHRyYWx5dGljcy15b2xvIixpY29uOls1MTIsNTEyLFtdLCJlODZmIiwiTTM4My41IDEwLjhjNjEuOC0uMiAxMTIuMyA1MC42IDExMi4zIDExMi45LS4yIDIuNyAwIDAtLjEgMy4zbC4zIC4zYy0xLjUgODkuOS01MyAxNjguNC0xMjcuNCAyMDguNWwwIDUyLjhjMCA2Mi42LTUxLjEgMTEzLjUtMTEzLjcgMTEyLjktNjItLjYtMTExLjQtNTIuMi0xMTEuNC0xMTQuM2wwLTUxLjJjLTQwLjctMjEuOS03NC41LTU1LjItOTctOTUuNiAyMy4yIDE2LjUgNTEuNyAyNiA4MiAyNS45IDc4LjYtLjIgMTQyLjItNjQgMTQyLjMtMTQyLjUgLjEtNjIuMyA1MC41LTExMi43IDExMi45LTExMi45em0tMjU1IDIyNS44YTExMi45IDExMi45IDAgMSAxIDAtMjI1LjggMTEyLjkgMTEyLjkgMCAxIDEgMCAyMjUuOHoiXX0sWWtlPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InNxdWFyZS1kcmliYmJsZSIsaWNvbjpbNDQ4LDUxMixbImRyaWJiYmxlLXNxdWFyZSJdLCJmMzk3IiwiTTE2NS45IDEzMi41Yy0zOC4zIDE4LTY2LjggNTMuMy03NS43IDk1LjcgNi4xIC4xIDYyLjQgLjMgMTI2LjQtMTYuNy0yMi43LTQwLjItNDcuMS03NC4xLTUwLjctNzl6bTI2LjEtOS4xYzMuOCA1LjEgMjguNiAzOC45IDUxIDgwIDQ4LjYtMTguMyA2OS4xLTQ1LjkgNzEuNi00OS40LTMzLjYtMjkuOC03OS4zLTQxLjEtMTIyLjYtMzAuNnpNMjc3LjQgMzgyYy0yLTEyLTEwLTUzLjgtMjkuMi0xMDMuNi01NS4xIDE4LjgtOTMuOCA1Ni40LTEwOC4xIDg1LjYgNDAuNSAzMS42IDkzLjMgMzYuNyAxMzcuMyAxOHpNMjI3LjggMjMyLjZDMTU5LjYgMjUzIDkzLjQgMjUyLjIgODcuNCAyNTJsMCA0LjJjMCAzNS4xIDEzLjMgNjcuMSAzNS4xIDkxLjQgMjIuMi0zNy45IDY3LjEtNzcuOSAxMTYuNS05MS44LTMuNC03LjgtNy4yLTE1LjUtMTEuMS0yMy4ybC0uMSAwem03Mi41IDEzNi45YzMwLjctMjAuNyA1Mi41LTUzLjYgNTguNi05MS42LTQuNi0xLjUtNDIuMy0xMi43LTg1LjEtNS44IDE3LjkgNDkuMSAyNS4xIDg5LjEgMjYuNSA5Ny40em0tMzQuOC0xMTljNDUuNS01LjcgOTAuNyAzLjQgOTUuMiA0LjQtLjMtMzIuMy0xMS44LTYxLjktMzAuOS04NS4xLTIuOSAzLjktMjUuOCAzMy4yLTc2LjMgNTMuOSA0LjggOS44IDguMyAxNy44IDEyIDI2Ljh6TTM4NCAzMkw2NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgNDE2YzAgMzUuMyAyOC43IDY0IDY0IDY0bDMyMCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMzIwYzAtMzUuMy0yOC43LTY0LTY0LTY0ek0yMjQgOTZhMTYwIDE2MCAwIDEgMSAwIDMyMCAxNjAgMTYwIDAgMSAxIDAtMzIweiJdfSxJYXI9WWtlLE5hcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJ1aWtpdCIsaWNvbjpbNDQ4LDUxMixbXSwiZjQwMyIsIk00NDMuOSAxMjhsMCAyNTYtMjI1LjkgMTI4LTIxOC0xMjggMC0yMTQuMyA4Ny42IDQ1LjEgMCAxMTcgMTMzLjUgNzUuNSAxMzUuOC03NS41IDAtMTUxLTEwMS4xLTU3LjYgODcuNi01My4xIDEwMC41IDU3Ljl6TTMwOC42IDQ5LjFsLTg0LjgtNDkuMS04OC42IDU0LjggODYgNDcuMyA4Ny40LTUzeiJdfSxGYXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic3VwZXJwb3dlcnMiLGljb246WzQ0OCw1MTIsW10sImYyZGQiLCJNNDQ4IDMyYy04My4zIDExLTE2Ni44IDIyLTI1MCAzMy05MiAxMi41LTE2My4zIDg2LjctMTY5IDE4MC0zLjMgNTUuNSAxOCAxMDkuNSA1Ny44IDE0OC4yTDAgNDgwYzgzLjMtMTEgMTY2LjUtMjIgMjQ5LjgtMzMgOTEuOC0xMi41IDE2My4zLTg2LjggMTY4LjctMTc5LjggMy41LTU1LjUtMTgtMTA5LjUtNTcuNy0xNDguMkw0NDggMzJ6TTM2OC4zIDI2NC4zYy00LjIgNzkuNS03NCAxMzkuMi0xNTIuOCAxMzQuNS03OS41LTQuNy0xNDAuNy03MS0xMzYuMy0xNTEgNC41LTc5LjIgNzQuMy0xMzkuMyAxNTMtMTM0LjUgNzkuMyA0LjcgMTQwLjUgNzEgMTM2LjEgMTUxeiJdfSxPYXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToieW91dHViZSIsaWNvbjpbNTc2LDUxMixbNjE4MDJdLCJmMTY3IiwiTTU0OS43IDEyNC4xQzU0My41IDEwMC40IDUyNC45IDgxLjggNTAxLjQgNzUuNSA0NTguOSA2NCAyODguMSA2NCAyODguMSA2NFMxMTcuMyA2NCA3NC43IDc1LjVDNTEuMiA4MS44IDMyLjcgMTAwLjQgMjYuNCAxMjQuMSAxNSAxNjcgMTUgMjU2LjQgMTUgMjU2LjRzMCA4OS40IDExLjQgMTMyLjNjNi4zIDIzLjYgMjQuOCA0MS41IDQ4LjMgNDcuOCA0Mi42IDExLjUgMjEzLjQgMTEuNSAyMTMuNCAxMS41czE3MC44IDAgMjEzLjQtMTEuNWMyMy41LTYuMyA0Mi0yNC4yIDQ4LjMtNDcuOCAxMS40LTQyLjkgMTEuNC0xMzIuMyAxMS40LTEzMi4zczAtODkuNC0xMS40LTEzMi4zek0yMzIuMiAzMzcuNmwwLTE2Mi40IDE0Mi43IDgxLjItMTQyLjcgODEuMnoiXX0sUmFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImVtYmVyIixpY29uOls2NDAsNTEyLFtdLCJmNDIzIiwiTTYzOS45IDI1NC42Yy0xLjEtMTAuNy0xMC43LTYuOC0xMC43LTYuOHMtMTUuNiAxMi4xLTI5LjMgMTAuN2MtMTMuNy0xLjMtOS40LTMyLTkuNC0zMnMzLTI4LjEtNS4xLTMwLjRjLTguMS0yLjQtMTggNy4zLTE4IDcuM3MtMTIuNCAxMy43LTE4LjMgMzEuMmwtMS42IC41czEuOS0zMC42LS4zLTM3LjZjLTEuNi0zLjUtMTYuNC0zLjItMTguOCAzcy0xNC4yIDQ5LjItMTUgNjcuMmMwIDAtMjMuMSAxOS42LTQzLjMgMjIuOHMtMjUtOS40LTI1LTkuNCA1NC44LTE1LjMgNTIuOS01OS4xLTQ0LjItMjcuNi00OS0yNGMtNC42IDMuNS0yOS40IDE4LjQtMzYuNiA1OS43LS4yIDEuNC0uNyA3LjUtLjcgNy41cy0yMS4yIDE0LjItMzMgMThjMCAwIDMzLTU1LjYtNy4zLTgwLjktMTEuNC02LjgtMjEuMy0uNS0yNy4yIDUuMyAxMy42LTE3LjMgNDYuNC02NC4yIDM2LjktMTA1LjItNS44LTI0LjQtMTgtMjcuMS0yOS4yLTIzLjEtMTcgNi43LTIzLjUgMTYuNy0yMy41IDE2LjdzLTIyIDMyLTI3LjEgNzkuNS0xMi42IDEwNS4xLTEyLjYgMTA1LjEtMTAuNSAxMC4yLTIwLjIgMTAuNy01LjQtMjguNy01LjQtMjguNyA3LjUtNDQuNiA3LTUyLjEtMS4xLTExLjYtOS45LTE0LjJjLTguOS0yLjctMTguNSA4LjYtMTguNSA4LjZzLTI1LjUgMzguNy0yNy43IDQ0LjZsLTEuMyAyLjQtMS4zLTEuNnMxOC01Mi43IC44LTUzLjUtMjguNSAxOC44LTI4LjUgMTguOC0xOS42IDMyLjgtMjAuNCAzNi41bC0xLjMtMS42czguMS0zOC4yIDYuNC00Ny42Yy0xLjYtOS40LTEwLjUtNy41LTEwLjUtNy41cy0xMS4zLTEuMy0xNC4yIDUuOS0xMy43IDU1LjMtMTUgNzAuN2MwIDAtMjguMiAyMC4yLTQ2LjggMjAuNC0xOC41IC4zLTE2LjctMTEuOC0xNi43LTExLjhzNjgtMjMuMyA0OS40LTY5LjJjLTguMy0xMS44LTE4LTE1LjUtMzEuNy0xNS4zLTEzLjcgLjMtMzAuMyA4LjYtNDEuMyAzMy4zLTUuMyAxMS44LTYuOCAyMy03LjggMzEuNSAwIDAtMTIuMyAyLjQtMTguOC0yLjlzLTEwIDAtMTAgMC0xMS4yIDE0LS4xIDE4LjMgMjguMSA2LjEgMjguMSA2LjFjMS42IDcuNSA2LjIgMTkuNSAxOS42IDI5LjcgMjAuMiAxNS4zIDU4LjgtMS4zIDU4LjgtMS4zbDE1LjktOC44cy41IDE0LjYgMTIuMSAxNi43IDE2LjQgMSAzNi41LTQ3LjljMTEuOC0yNSAxMi42LTIzLjYgMTIuNi0yMy42bDEuMy0uM3MtOS4xIDQ2LjgtNS42IDU5LjdDMTg3LjcgMzE5LjQgMjAzIDMxOCAyMDMgMzE4czguMyAyLjQgMTUtMjEuMiAxOS42LTQ5LjkgMTkuNi00OS45bDEuNiAwcy01LjYgNDguMSAzIDYzLjcgMzAuOSA1LjMgMzAuOSA1LjMgMTUuNi03LjggMTgtMTAuMmMwIDAgMTguNSAxNS44IDQ0LjYgMTIuOSA1OC4zLTExLjUgNzkuMS0yNS45IDc5LjEtMjUuOXMxMCAyNC40IDQxLjEgMjYuN2MzNS41IDIuNyA1NC44LTE4LjYgNTQuOC0xOC42cy0uMyAxMy41IDEyLjEgMTguNiAyMC43LTIyLjggMjAuNy0yMi44bDIwLjctNTcuMiAxLjkgMHMxLjEgMzcuMyAyMS41IDQzLjIgNDctMTMuNyA0Ny0xMy43IDYuNC0zLjUgNS4zLTE0LjN6bS01NzggNS4zYy44LTMyIDIxLjgtNDUuOSAyOS0zOSA3LjMgNyA0LjYgMjItOS4xIDMxLjQtMTMuNyA5LjUtMTkuOSA3LjYtMTkuOSA3LjZ6TTMzNC43IDEzNi4xczE5LjEtNDkuNyAyMy42LTI1LjUtNDAgOTYuMi00MCA5Ni4yYy41LTE2LjIgMTYuNC03MC43IDE2LjQtNzAuN3ptMjIuOCAxMzguNGMtMTIuNiAzMy00My4zIDE5LjYtNDMuMyAxOS42cy0zLjUtMTEuOCA2LjQtNDQuOSAzMy4zLTIwLjIgMzMuMy0yMC4yIDE2LjIgMTIuNCAzLjYgNDUuNXptODQuNi0xNC42cy0zLTEwLjUgOC4xLTMwLjZjMTEtMjAuMiAxOS42LTkuMSAxOS42LTkuMXM5LjQgMTAuMi0xLjMgMjUuNS0yNi40IDE0LjItMjYuNCAxNC4yeiJdfSxCYXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiYm9vdHN0cmFwIixpY29uOls1NzYsNTEyLFtdLCJmODM2IiwiTTMzMy41IDIwMS40YzAtMjIuMS0xNS42LTM0LjMtNDMtMzQuM2wtNTAuNCAwIDAgNzEuMiA0Mi41IDBjMzIuOC0uMSA1MC45LTEzLjMgNTAuOS0zNi45ek01MTcgMTg4LjZjLTkuNS0zMC45LTEwLjktNjguOC05LjgtOTguMSAxLjEtMzAuNS0yMi43LTU4LjUtNTQuNy01OC41TDEyMy43IDMyYy0zMi4xIDAtNTUuOCAyOC4xLTU0LjcgNTguNSAxIDI5LjMtLjMgNjcuMi05LjggOTguMS05LjYgMzEtMjUuNyA1MC42LTUyLjIgNTMuMWwwIDI4LjVjMjYuNCAyLjUgNDIuNiAyMi4xIDUyLjIgNTMuMSA5LjUgMzAuOSAxMC45IDY4LjggOS44IDk4LjEtMS4xIDMwLjUgMjIuNyA1OC41IDU0LjcgNTguNWwzMjguNyAwYzMyLjEgMCA1NS44LTI4LjEgNTQuNy01OC41LTEtMjkuMyAuMy02Ny4yIDkuOC05OC4xIDkuNi0zMSAyNS43LTUwLjYgNTIuMS01My4xbDAtMjguNWMtMjYuMy0yLjUtNDIuNS0yMi4xLTUyLTUzLjF6TTMwMC4yIDM3NS4xbC05Ny45IDAgMC0yMzguMyA5Ny40IDBjNDMuMyAwIDcxLjcgMjMuNCA3MS43IDU5LjQgMCAyNS4zLTE5LjEgNDcuOS00My41IDUxLjhsMCAxLjNjMzMuMiAzLjYgNTUuNSAyNi42IDU1LjUgNTguMyAwIDQyLjEtMzEuMyA2Ny41LTgzLjIgNjcuNXptLTEwLTEwOC43bC01MC4xIDAgMCA3OC40IDUyLjMgMGMzNC4yIDAgNTIuMy0xMy43IDUyLjMtMzkuNSAwLTI1LjctMTguNi0zOC45LTU0LjUtMzguOXoiXX0sSGFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Iml0dW5lcyIsaWNvbjpbNDQ4LDUxMixbXSwiZjNiNCIsIk0yMjMuNiA4MC4zYTE3MS4zIDE3MS4zIDAgMSAwIC4yIDM0Mi41IDE3MS4zIDE3MS4zIDAgMSAwIC0uMi0zNDIuNXptNzkuNCAyNDBjLTMuMiAxMy42LTEzLjUgMjEuMi0yNy4zIDIzLjgtMTIuMSAyLjItMjIuMiAyLjgtMzEuOS01LTExLjgtMTAtMTItMjYuNC0xLjQtMzYuOCA4LjQtOCAyMC4zLTkuNiAzOC0xMi44IDMtLjUgNS42LTEuMiA3LjctMy43IDMuMi0zLjYgMi4yLTIgMi4yLTgwLjggMC01LjYtMi43LTcuMS04LjQtNi4xLTQgLjctOTEuOSAxNy4xLTkxLjkgMTcuMS01IDEuMS02LjcgMi42LTYuNyA4LjMgMCAxMTYuMSAuNSAxMTAuOC0xLjIgMTE4LjUtMi4xIDktNy42IDE1LjgtMTQuOSAxOS42LTguMyA0LjYtMjMuNCA2LjYtMzEuNCA1LjItMjEuNC00LTI4LjktMjguNy0xNC40LTQyLjkgOC40LTggMjAuMy05LjYgMzgtMTIuOCAzLS41IDUuNi0xLjIgNy43LTMuNyA1LTUuNyAuOS0xMjcgMi42LTEzMy43IC40LTIuNiAxLjUtNC44IDMuNS02LjQgMi4xLTEuNyA1LjgtMi43IDYuNy0yLjcgMTAxLTE5IDExMy4zLTIxLjQgMTE1LjEtMjEuNCA1LjctLjQgOSAzIDkgOC43LS4xIDE3MC42IC40IDE2MS40LTEgMTY3LjZ6TTM0NS4yIDMyTDEwMi44IDMyQzQ1LjkgMzIgMCA3Ny45IDAgMTM0LjhMMCAzNzcuMkMwIDQzNC4xIDQ1LjkgNDgwIDEwMi44IDQ4MGwyNDIuNCAwYzU3IDAgMTAyLjgtNDUuOSAxMDIuOC0xMDIuOGwwLTI0Mi40QzQ0OCA3Ny45IDQwMi4xIDMyIDM0NS4yIDMyek0yMjMuNiA1OWExOTIuNSAxOTIuNSAwIDEgMSAwIDM4NSAxOTIuNSAxOTIuNSAwIDEgMSAwLTM4NXoiXX0sWmtlPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InNxdWFyZS14aW5nIixpY29uOls0NDgsNTEyLFsieGluZy1zcXVhcmUiXSwiZjE2OSIsIk00NDggOTZjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzJDMjguNyAzMiAwIDYwLjcgMCA5NkwwIDQxNmMwIDM1LjMgMjguNyA2NCA2NCA2NGwzMjAgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTMyMHpNOTMuOCAzMjAuMmMtNS41IDAtOC43LTUuMy02LTEwLjNsNDkuMy04Ni43Yy4xIDAgLjEtLjEgMC0uMmwtMzEuNC01NGMtMy01LjYgLjItMTAuMSA2LTEwLjFsNDYuNiAwYzUuMiAwIDkuNSAyLjkgMTIuOSA4LjdsMzEuOSA1NS4zYy0xLjMgMi4zLTE4IDMxLjctNTAuMSA4OC4yLTMuNSA2LjItNy43IDkuMS0xMi42IDkuMWwtNDYuNiAwem0xNjMuNS0zMy40bDAgLjIgNjUuNSAxMTljMi44IDUuMSAuMSAxMC4xLTYgMTAuMWwtNDYuNiAwYy01LjUgMC05LjctMi45LTEyLjktOC43bC02Ni0xMjAuM2MxLjgtMy4yIDIyLjktNDAuNCA2My4zLTExMS42IDExLjctMjAuNyAyNS4xLTQ0LjMgNDAuMS03MC44IDMuMy01LjggNy40LTguNyAxMi41LTguN2w0Ni45IDBjNS43LS4xIDguOCA0LjcgNiAxMEwyNTcuMyAyODYuOHoiXX0scWFyPVprZSxqYXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiY3NzMy1hbHQiLGljb246WzM4NCw1MTIsW10sImYzOGIiLCJNMCAzMkwzNC45IDQyNy44IDE5MiA0ODAgMzQ5LjEgNDI3LjggMzg0IDMyIDAgMzJ6bTMxMy4xIDgwbC00LjggNDcuMy0xMTUuMyA0OS4zLS4zIC4xIDExMS41IDAtMTIuOCAxNDYuNi05OC4yIDI4LjctOTguOC0yOS4yLTYuNC03My45IDQ4LjkgMCAzLjIgMzguMyA1Mi42IDEzLjMgNTQuNy0xNS40IDMuNy02MS42LTE2Ni4zLS41IDAtLjEtLjIgLjEtMy42LTQ2LjMgMTEyLjEtNDYuNyA2LjUtMi43LTEyMi45IDAtNS44LTQ3LjMgMjQyLjIgMHoiXX0sVmFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InNxdWFyZXNwYWNlIixpY29uOls1MTIsNTEyLFtdLCJmNWJlIiwiTTE4Ni4xIDM0My4zYy05LjcgOS43LTkuNyAyNS4zIDAgMzQuOXMyNS4zIDkuNiAzNC45IDBMMzc4LjMgMjIxLjFjMTkuMy0xOS4zIDUwLjYtMTkuMyA2OS45IDBzMTkuMyA1MC42IDAgNjkuOUwyOTQgNDQ1LjFjMTkuMyAxOS4zIDUwLjUgMTkuMyA2OS44IDBsMCAwIDExOS4zLTExOS4yYzM4LjYtMzguNiAzOC42LTEwMS4xIDAtMTM5LjctMzguNi0zOC42LTEwMS4yLTM4LjYtMTM5LjcgMEwxODYuMSAzNDMuM3pNNDMwLjcgMjM4LjVjLTkuNy05LjctMjUuMy05LjctMzQuOSAwTDIzOC41IDM5NS43Yy0xOS4zIDE5LjMtNTAuNSAxOS4zLTY5LjggMGwwIDBjLTkuNi05LjYtMjUuMy05LjctMzQuOSAwbDAgMGMtOS43IDkuNi05LjcgMjUuMyAwIDM0LjlsMCAwYzM4LjYgMzguNiAxMDEuMSAzOC42IDEzOS43IDBMNDMwLjcgMjczLjVjOS42LTkuNyA5LjYtMjUuMyAwLTM0Ljl6bS0yNjIgODcuM0wzMjUuOSAxNjguN2M5LjYtOS42IDkuNi0yNS4zIDAtMzQuOS05LjYtOS42LTI1LjMtOS42LTM0LjkgMEwxMzMuNyAyOTAuOWMtMTkuMyAxOS4zLTUwLjYgMTkuMy02OS45IDBsMCAwYy0xOS4zLTE5LjMtMTkuMy01MC41IDAtNjkuOGwwIDAgMTU0LjItMTU0LjJjLTE5LjMtMTkuMy01MC41LTE5LjMtNjkuOCAwbDAgMC0xMTkuMiAxMTkuM2MtMzguNiAzOC42LTM4LjYgMTAxLjEgMCAxMzkuNyAzOC42IDM4LjYgMTAxLjEgMzguNiAxMzkuNyAwek04MS4zIDI3My41YzkuNiA5LjYgMjUuMyA5LjYgMzQuOSAwTDI3My41IDExNi4zYzE5LjMtMTkuMyA1MC42LTE5LjMgNjkuOCAwbDAgMGM5LjcgOS42IDI1LjMgOS42IDM0LjkgMHM5LjYtMjUuMyAwLTM0LjljLTM4LjYtMzguNi0xMDEuMS0zOC42LTEzOS43IDBMODEuMyAyMzguNWMtOS42IDkuNi05LjYgMjUuMyAwIDM0LjlsMCAweiJdfSxVYXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidHJlbGxvIixpY29uOls0NDgsNTEyLFtdLCJmMTgxIiwiTTM5Mi4zIDMyTDU2LjEgMzJjLTMxIDAtNTYuMSAyNS4xLTU2LjEgNTYtLjEgMCAwLTQgMCAzMzYgMCAzMC45IDI1LjEgNTYgNTYgNTZsMzM2LjIgMGMzMC44LS4yIDU1LjctMjUuMiA1NS43LTU2bDAtMzM2Yy4xLTMwLjgtMjQuOC01NS44LTU1LjYtNTZ6TTE5NyAzNzEuM2MtLjIgMTQuNy0xMi4xIDI2LjYtMjYuOSAyNi42bC04Mi43IDBjLTE0LjggLjEtMjYuOS0xMS44LTI3LTI2LjZsMC0yNTQuMmMwLTE0LjggMTItMjYuOSAyNi45LTI2LjlsODIuOSAwYzE0LjggMCAyNi45IDEyIDI2LjkgMjYuOWwwIDI1NC4yLS4xIDB6bTE5My4xLTExMmMwIDE0LjgtMTIgMjYuOS0yNi45IDI2LjlsLTgxIDBjLTE0LjggMC0yNi45LTEyLTI2LjktMjYuOWwwLTE0Mi4xYzAtMTQuOCAxMi0yNi45IDI2LjgtMjYuOWw4MS4xIDBjMTQuOCAwIDI2LjkgMTIgMjYuOSAyNi45bDAgMTQyLjF6Il19LFdhcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJ2aWFkZW8iLGljb246WzQ0OCw1MTIsW10sImYyYTkiLCJNMjc2LjQgMTUwLjVsMCAuN2MtMTcuOS01Mi42LTQyLjYtMTAzLjQtNzAuOC0xNTEuMiA0My4zIDI5LjIgNjcgMTAwIDcwLjggMTUwLjV6bTMyLjcgMTIxLjdjNy42IDE4LjIgMTEgMzcuNSAxMSA1NyAwIDc3LjctNTcuOCAxNDEtMTM3LjggMTM5LjRsMy44LS4zYzc0LjItNDYuNyAxMDkuMy0xMTguNiAxMDkuMy0yMDUuMSAwLTM4LjEtNi41LTc1LjktMTguOS0xMTIgMSAxMS43IDEgMjMuNyAxIDM1LjQgMCA5MS44LTE4LjEgMjQxLjYtMTE2LjYgMjgwLTY1LjctMTEuNC0xMTEuMy02OC42LTExMS4zLTEzNy40IDAtNzUuNiA1Ny40LTE0Mi4zIDEzNS40LTE0Mi4zIDE2LjggMCAzMy43IDMuMSA0OS4xIDkuNiAxLjctMTUuMSA2LjUtMjkuOSAxMy40LTQzLjMtMTkuOS03LjItNDEuMi0xMC43LTYyLjUtMTAuNy0xNjEuNSAwLTIzOC43IDE5NS45LTEyOS45IDMxMy43IDY3LjkgNzQuNiAxOTIgNzMuOSAyNTkuOCAwIDU2LjYtNjEuMyA2MC45LTE0Mi40IDM2LjQtMjAxLTEyLjcgOC0yNy4xIDEzLjktNDIuMiAxN3pNNDE4LjMgMTEuN2MtMzEgNjYuNS04MS4zIDQ3LjItMTE1LjggODAuMS0xMi40IDEyLTIwLjYgMzQtMjAuNiA1MC41IDAgMTQuMSA0LjUgMjcuMSAxMiAzOC44IDQ3LjQtMTEgOTguMy00NiAxMTguMi05MC43LS43IDUuNS00LjggMTQuNC03LjIgMTkuMi0yMC4zIDM1LjctNjQuNiA2NS42LTk5LjcgODQuOSAxNC44IDE0LjQgMzMuNyAyNS44IDU1IDI1LjggNzkgMCAxMTAuMS0xMzQuNiA1OC4xLTIwOC42eiJdfSxHYXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic2VhcmNoZW5naW4iLGljb246WzQ0OCw1MTIsW10sImYzZWIiLCJNMjE0LjYgMTMwLjNsLTY3LjIgMjguMiAwLTExNS4zLTU0LjcgMTkwLjMgNTQuNy0yNC4yIDAgMTMwLjMgNjcuMi0yMDkuM3pNMTMxLjQgMzMuNmwtMS4zIDQuNy0xNS4yIDUyLjlDNzQuNiAxMDYuNyA0NiAxNDUuOCA0NiAxOTEuNSA0NiAyNDMuOCA4MC4zIDI4Ny40IDEyOS40IDI5N2wwIDUzLjZDNTEuNSAzNDAuMS02IDI3Mi40LTYgMTkxLjYtNiAxMTEuMSA1My44IDQ0LjQgMTMxLjQgMzMuNnpNNDQyLjggNDgwLjhjLTExLjIgMTEuMi0yMy4xIDEyLjMtMjguNiAxMC41LTUuNC0xLjgtMjcuMS0xOS45LTYwLjQtNDQuNC0zMy4zLTI0LjYtMzMuNi0zNS43LTQzLTU2LjctOS40LTIwLjktMzAuNC00Mi42LTU3LjUtNTIuNGwtOS43LTE0LjdjLTI0LjcgMTYuOS01MyAyNi45LTgxLjMgMjguN2wyLjEtNi42IDE1LjktNDkuNWM0Ni41LTExLjkgODAuOS01NCA4MC45LTEwNC4yIDAtNTQuNS0zOC40LTEwMi4xLTk2LTEwNy4xbDAtNTIuMWM4My4yIDUuMSAxNDguOCA3NC41IDE0OC44IDE1OS4zIDAgMzMuNi0xMS4yIDY0LjctMjkgOTAuNGwxNC42IDkuNmM5LjggMjcuMSAzMS41IDQ4IDUyLjQgNTcuNHMzMi4yIDkuNyA1Ni44IDQzYzI0LjYgMzMuMiA0Mi43IDU0LjkgNDQuNSA2MC4zcy43IDE3LjMtMTAuNSAyOC41em0tOS45LTE3LjljMC00LjQtMy42LTgtOC04cy04IDMuNi04IDggMy42IDggOCA4IDgtMy42IDgtOHoiXX0sWWFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InVucmVhbC1lbmdpbmUiLGljb246WzUxMiw1MTIsW10sImU4NWMiLCJNMjU2IDUxMmEyNTYgMjU2IDAgMSAwIDAtNTEyIDI1NiAyNTYgMCAxIDAgMCA1MTJ6bTY1LjUtMTEzLjdsLTI1LjEtMjguMy00Mi40IDQyLjZjLTI0LjEtLjMtNDcuOS02LjItNjkuMy0xNy4ycy00MC4xLTI2LjktNTQuNS00Ni4zYzQuNSAxLjQgOS4yIDIuMyAxMy45IDIuNiA2LjkgLjEgMTQuNS0yLjQgMTQuNS0xNC4xbDAtMTE1LjFjLjEtMy0uNS01LjktMS43LTguNnMtMy4xLTUtNS40LTYuOS01LTMuMS03LjktMy43LTUuOS0uNS04LjggLjJjLTE5LjYgNC41LTM1LjMgNTMuNS0zNS4zIDUzLjUtLjItMjIuNiA0LjUtNDUgMTMuOC02NS42czIzLTM5IDQwLjEtNTMuOGMyMi41LTE5LjUgNTAuMS0zMi4yIDc5LjYtMzYuNy0yMS40IDEyLjItMzMuNSAzMi4xLTMzLjUgNDguOSAwIDI2LjkgMTYuMiAyMy42IDIxIDE5LjdsMCAxNTUuM2MuOCAxLjkgMS45IDMuOCAzLjIgNS41IDIuMSAzIDUgNS40IDguMiA3czYuOSAyLjUgMTAuNSAyLjVjMTYuMiAwIDM3LjMtMTguNSAzNy4zLTE4LjVsMC0xMjUuN2MwLTEyLjgtOS42LTI4LjItMTkuMy0zMy41IDAgMCAxNy45LTMuMiAzMS43IDcuNCAyLjYtMy4yIDUuMy02LjIgOC4yLTkuMSAzMi4yLTMxLjYgNjIuNS00MC42IDg3LjctNDUuMSAwIDAtNDUuOSAzNi4xLTQ1LjkgODQuNSAwIDM2IC45IDEyMy44IC45IDEyMy44IDE3IDE2LjQgNDIuNC03LjMgNjUuMi0zMC44LTQuNCAyMS4zLTI0IDc1LjktODYuNiAxMDUuNHoiXX0sWmFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InBheXBhbCIsaWNvbjpbMzg0LDUxMixbXSwiZjFlZCIsIk0xMTEuOSAyOTUuOWMtMy41IDE5LjItMTcuNCAxMDguNy0yMS41IDEzNC0uMyAxLjgtMSAyLjUtMyAyLjVsLTc0LjYgMGMtNy42IDAtMTMuMS02LjYtMTIuMS0xMy45TDU5LjMgNDYuNmMxLjUtOS42IDEwLjEtMTYuOSAyMC0xNi45IDE1Mi4zIDAgMTY1LjEtMy43IDIwNCAxMS40IDYwLjEgMjMuMyA2NS42IDc5LjUgNDQgMTQwLjMtMjEuNSA2Mi42LTcyLjUgODkuNS0xNDAuMSA5MC4zLTQzLjQgLjctNjkuNS03LTc1LjMgMjQuMnpNMzU3LjYgMTUyYy0xLjgtMS4zLTIuNS0xLjgtMyAxLjMtMiAxMS40LTUuMSAyMi41LTguOCAzMy42LTM5LjkgMTEzLjgtMTUwLjUgMTAzLjktMjA0LjUgMTAzLjktNi4xIDAtMTAuMSAzLjMtMTAuOSA5LjQtMjIuNiAxNDAuNC0yNy4xIDE2OS43LTI3LjEgMTY5LjctMSA3LjEgMy41IDEyLjkgMTAuNiAxMi45bDYzLjUgMGM4LjYgMCAxNS43LTYuMyAxNy40LTE0LjkgLjctNS40LTEuMSA2LjEgMTQuNC05MS4zIDQuNi0yMiAxNC4zLTE5LjcgMjkuMy0xOS43IDcxIDAgMTI2LjQtMjguOCAxNDIuOS0xMTIuMyA2LjUtMzQuOCA0LjYtNzEuNC0yMy44LTkyLjZ6Il19LFhhcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJzcXVhcmUtYmx1ZXNreSIsaWNvbjpbNDQ4LDUxMixbXSwiZTZhMyIsIk02NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgNDE2YzAgMzUuMyAyOC43IDY0IDY0IDY0bDMyMCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMzIwYzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDMyek0yMjQgMjQ3LjRjMTQuNS0zMCA1NC04NS44IDkwLjctMTEzLjMgMjYuNS0xOS45IDY5LjMtMzUuMiA2OS4zIDEzLjcgMCA5LjgtNS42IDgyLjEtOC45IDkzLjgtMTEuNCA0MC44LTUzIDUxLjItOTAgNDQuOSA2NC43IDExIDgxLjIgNDcuNSA0NS42IDg0LTY3LjUgNjkuMy05Ny0xNy40LTEwNC42LTM5LjZsLS4zLS45Yy0uOS0yLjYtMS40LTQuMS0xLjgtNC4xcy0uOSAxLjUtMS44IDQuMWMtLjEgLjMtLjIgLjYtLjMgLjktNy42IDIyLjItMzcuMSAxMDguOC0xMDQuNiAzOS42LTM1LjUtMzYuNS0xOS4xLTczIDQ1LjYtODQtMzcgNi4zLTc4LjYtNC4xLTkwLTQ0LjktMy4zLTExLjctOC45LTg0LTguOS05My44IDAtNDguOSA0Mi45LTMzLjUgNjkuMy0xMy43IDM2LjcgMjcuNSA3Ni4yIDgzLjQgOTAuNyAxMTMuM3oiXX0sUWFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImQtYW5kLWQtYmV5b25kIixpY29uOls2NDAsNTEyLFtdLCJmNmNhIiwiTTMxMy44IDI0MS41YzEzLjggMCAyMS0xMC4xIDI0LjgtMTcuOS0xLTEuMS01LTQuMi03LjQtNi42LTIuNCA0LjMtOC4yIDEwLjctMTMuOSAxMC43LTEwLjIgMC0xNS40LTE0LjctMy4yLTI2LjYtLjUtLjItNC4zLTEuOC04IDIuNCAwLTMgMS01LjEgMi4xLTYuNi0zLjUgMS4zLTkuOCA1LjYtMTEuNCA3LjkgLjItNS44IDEuNi03LjUgLjYtOWwtLjItLjJzLTguNSA1LjYtOS4zIDE0LjdjMCAwIDEuMS0xLjYgMi4xLTEuOSAuNi0uMyAxLjMgMCAuNiAxLjktLjIgLjYtNS44IDE1LjcgNS4xIDI2LS42LTEuNi0xLjktNy42IDIuNC0xLjktLjMgLjEgNS44IDcuMSAxNS43IDcuMXptNTIuNC0yMS4xYzAtNC00LjktNC40LTUuNi00LjUgMiAzLjkgLjkgNy41IC4yIDkgMi41LS40IDUuNC0xLjYgNS40LTQuNXptMTAuMyA1LjJjMC02LjQtNi4yLTExLjQtMTMuNS0xMC43IDggMS4zIDUuNiAxMy44LTUgMTEuNCAzLjctMi42IDMuMi05LjktMS4zLTEyLjUgMS40IDQuMi0zIDguMi03LjQgNC42LTIuNC0xLjktOC02LjYtMTAuNi04LjYtMi40LTIuMS01LjUtMS02LjYtMS44LTEuMy0xLjEtLjUtMy44LTIuMi01LTEuNi0uOC0zLS4zLTQuOC0xLTEuNi0uNi0yLjctMS45LTIuNi0zLjUtMi41IDQuNCAzLjQgNi4zIDQuNSA4LjUgMSAxLjktLjggNC44IDQgOC41IDE0LjggMTEuNiA5LjEgOCAxMC40IDE4LjEgLjYgNC4zIDQuMiA2LjcgNi40IDcuNC0yLjEtMS45LTIuOS02LjQgMC05LjMgMCAxMy45IDE5LjIgMTMuMyAyMy4xIDYuNC0yLjQgMS4xLTctLjItOS0xLjkgNy43IDEgMTQuMi00LjEgMTQuNi0xMC42em0tMzkuNC0xOC40YzIgLjggMS42IC43IDYuNCA0LjUgMTAuMi0yNC41IDIxLjctMTUuNyAyMi0xNS41IDIuMi0xLjkgOS44LTMuOCAxMy44LTIuNy0yLjQtMi43LTcuNS02LjItMTMuMy02LjItNC43IDAtNy40IDIuMi04IDEuMy0uOC0xLjQgMy4yLTMuNCAzLjItMy40LTUuNCAuMi05LjYgNi43LTExLjIgNS45LTEuMS0uNSAxLjQtMy43IDEuNC0zLjctNS4xIDIuOS05LjMgOS4xLTEwLjIgMTMgNC42LTUuOCAxMy44LTkuOCAxOS43LTktMTAuNSAuNS0xOS41IDkuNy0yMy44IDE1Ljh6bTI0Mi41IDUxLjljLTIwLjcgMC00MCAxLjMtNTAuMyAyLjFsNy40IDguMiAwIDc3LjItNy40IDguMmMxMC40IC44IDMwLjkgMi4xIDUxLjYgMi4xIDQyLjEgMCA1OS4xLTIwLjcgNTkuMS00OC45IDAtMjkuMy0yMy4yLTQ4LjktNjAuNC00OC45em0tMTUuMSA3NS42bDAtNTMuM2MzMC4xLTMuMyA0Ni44IDMuOCA0Ni44IDI2LjMgMCAyNS42LTIxLjQgMzAuMi00Ni44IDI3ek0zMDEuNiAxODFjLTEtMy40LS4yLTYuOSAxLjEtOS40IDEgMyAyLjYgNi40IDcuNSA5LS41LTIuNC0uMi01LjYgLjUtOC0xLjQtNS40IDIuMS05LjkgNi40LTkuOSA2LjkgMCA4LjUgOC44IDQuNyAxNC40IDIuMSAzLjIgNS41IDUuNiA3LjcgNy44IDMuMi0zLjcgNS41LTkuNSA1LjUtMTMuOCAwLTguMi01LjUtMTUuOS0xNi43LTE2LjUtMjAtLjktMjAuMiAxNi42LTIwIDE4LjkgLjUgNS4yIDMuNCA3LjggMy4zIDcuNXptLS40IDZjLS41IDEuOC03IDMuNy0xMC4yIDYuOSA0LjgtMSA3LS4yIDcuOCAxLjggLjUgMS40LS4yIDMuNC0uNSA1LjYgMS42LTEuOCA3LTUuNSAxMS02LjItMS0uMy0zLjQtLjgtNC4zLS44IDIuOS0zLjQgOS4zLTQuNSAxMi44LTMuNy0yLjItLjItNi43IDEuMS04LjUgMi42IDEuNiAuMyAzIC42IDQuMyAxLjEtMi4xIC44LTQuOCAzLjQtNS44IDYuMSA3LTUgMTMuMSA1LjIgNyA4LjIgLjggLjIgMi43IDAgMy41LS41LS4zIDEuMS0xLjkgMy0zIDMuNCAyLjkgMCA3LTEuOSA4LjItNC42IDAgMC0xLjggLjYtMi42LS4ycy4zLTQuMyAuMy00LjNjLTIuMyAyLjktMy40LTEuMy0xLjMtNC4yLTEtLjMtMy41LS42LTQuNi0uNSAzLjItMS4xIDEwLjQtMS44IDExLjItLjMgLjYgMS4xLTEgMy40LTEgMy40IDQtLjUgOC4zIDEuMSA2LjcgNS4xIDIuOS0xLjQgNS41LTUuOSA0LjgtMTAuNC0uMyAxLTEuNiAyLjQtMi45IDIuNyAuMi0xLjQtMS0yLjItMS45LTIuNiAxLjctOS42LTE0LjYtMTQuMi0xNC4xLTIzLjktMSAxLjMtMS44IDUtLjggNy4xIDIuNyAzLjIgOC43IDYuNyAxMC4xIDEyLjItMi42LTYuNC0xNS4xLTExLjQtMTQuNi0yMC4yLTEuNiAxLjYtMi42IDcuOC0xLjMgMTEgMi40IDEuNCA0LjUgMy44IDQuOCA2LjEtMi4yLTUuMS0xMS40LTYuMS0xMy45LTEyLjItLjYgMi4yLS4zIDUgMSA2LjcgMCAwLTIuMi0uOC03LS42IDEuNyAuNiA1LjEgMy41IDQuOCA1LjJ6bTI1LjkgNy40Yy0yLjcgMC0zLjUtMi4xLTQuMi00LjMgMy4zIDEuMyA0LjIgNC4zIDQuMiA0LjN6bTM4LjkgMy43bC0xLS42Yy0xLjEtMS0yLjktMS40LTQuNy0xLjQtMi45IDAtNS44IDEuMy03LjUgMy40LS44IC44LTEuNCAxLjgtMi4xIDIuNmwwIDE1LjdjMy41IDIuNiA3LjEtMi45IDMtNy4yIDEuNSAuMyA0LjYgMi43IDUuMSAzLjIgMCAwIDIuNi0uNSA1LS41IDIuMSAwIDMuOSAuMyA1LjYgMS4xbDAtMTguNGMtMS4xIC41LTIuMiAxLTIuNyAxLjRsLS43IC43ek03OS45IDMwNS45YzE3LjItNC42IDE2LjItMTggMTYuMi0xOS45IDAtMjAuNi0yNC4xLTI1LTM3LTI1bC01Ni4xIDAgOC4zIDguNiAwIDI5LjUtMTEuMyAwIDExLjQgMTQuNiAwIDMyLjMtOC40IDguNmM2MS43IDAgNzMuOCAxLjUgODYuNC01LjkgNi43LTQgOS45LTkuOCA5LjktMTcuNiAwLTUuMSAyLjYtMTguOC0xOS40LTI1LjJ6TTM4LjYgMjc4LjRjMjAgMCAyOS42LS44IDI5LjYgOS4xbDAgM2MwIDEyLjEtMTkgOC44LTI5LjYgOC44bDAtMjAuOXptMCA1OS4ybDAtMjIuNmMxMi4yIDAgMzIuNy0yLjMgMzIuNyA4LjhsMCA0LjUgLjIgMGMwIDExLjItMTIuNSA5LjMtMzIuOSA5LjN6bTEwMS4yLTE5LjNsMjMuMSAuMiAwLS4yIDE0LjEtMjEuMi0zNy4yIDAgMC0xNC45IDUyLjQgMC0xNC4xLTIxIDAtLjItNzMuNSAuMiA3LjQgOC4yIDAgNzcuMS03LjQgOC4yIDgxLjIgMCAxNC4xLTIxLjItNjAuMSAuMiAwLTE1LjR6bTIxNC43LTYwLjFjLTczLjkgMC03Ny41IDk5LjMtLjMgOTkuMyA3Ny45IDAgNzQuMS05OS4zIC4zLTk5LjN6bS0uMyA3Ny41Yy0zNy40IDAtMzYuOS01NS4zIC4yLTU1LjMgMzYuOCAuMSAzOC44IDU1LjMtLjIgNTUuM3ptLTkxLjMtOC4zbDQ0LjEtNjYuMi00MS43IDAgNi4xIDcuMi0yMC41IDM3LjItLjMgMC0yMS0zNy4yIDYuNC03LjItNDQuOSAwIDQ0LjEgNjUuOCAuMiAxOS40LTcuNyA4LjIgNDIuNiAwLTcuMi04LjItLjItMTl6TTIzNC41IDE3Ni4xYzEuNiAxLjMgMi45IDIuNCAyLjkgNi42bDAgMzguOGMwIDQuMi0uOCA1LjMtMi43IDYuNC0uMSAuMS03LjUgNC41LTcuOSA0LjZsMzUuMSAwYzEwIDAgMTcuNC0xLjUgMjYtOC42LS42LTUgLjItOS41IC44LTEyIDAtLjItMS44IDEuNC0yLjcgMy41IDAtNS43IDEuNi0xNS40IDkuNi0yMC41LS4xIDAtMy43LS44LTkgMS4xIDItMy4xIDEwLTcuOSAxMC40LTcuOS04LjItMjYtMzgtMjIuOS0zMi4yLTIyLjktMzAuOSAwLTMyLjYgLjMtMzkuOS00IC4xIC44IC41IDguMiA5LjYgMTQuOXptMjEuNSA1LjVjNC42IDAgMjMuMS0zLjMgMjMuMSAxNy4zIDAgMjAuNy0xOC40IDE3LjMtMjMuMSAxNy4zbDAtMzQuNnptMjI4LjkgNzkuNmw3IDguMyAwIDQyLjUtLjMgMGMtNS40LTE0LjQtNDIuMy00MS41LTQ1LjItNTAuOWwtMzEuNiAwIDcuNCA4LjUgMCA3Ni45LTcuMiA4LjMgMzkgMC03LjQtOC4yIDAtNDcuNCAuMyAwYzMuNyAxMC42IDQ0LjUgNDIuOSA0OC41IDU1LjZsMjEuMyAwIDAtODUuMiA3LjQtOC4zLTM5LjItLjF6TTM3OC4yIDE2NS4xYy0zMi4yIDAtMzIuOCAuMi0zOS45LTQgLjEgLjcgLjUgOC4zIDkuNiAxNC45IDMuMSAyIDIuOSA0LjMgMi45IDkuNSAxLjgtMS4xIDMuOC0yLjIgNi4xLTMtMS4xIDEuMS0yLjcgMi43LTMuNSA0LjUgMS0xLjEgNy41LTUuMSAxNC42LTMuNS0xLjYgLjMtNCAxLjEtNi4xIDIuOSAuMSAwIDIuMS0xLjEgNy41LS4zbDAtNC4zYzQuNyAwIDIzLjEtMy40IDIzLjEgMTcuMyAwIDIwLjUtMTguNSAxNy4zLTE5LjcgMTcuMyA1LjcgNC40IDUuOCAxMiAyLjIgMTYuM2wuMyAwYzMzLjQgMCAzNi43LTI3LjMgMzYuNy0zNCAwLTMuOC0xLjEtMzItMzMuOC0zMy42eiJdfSxLYXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToibWljcm9zb2Z0IixpY29uOls0NDgsNTEyLFtdLCJmM2NhIiwiTTAgMzJsMjE0LjYgMCAwIDIxNC42LTIxNC42IDAgMC0yMTQuNnptMjMzLjQgMGwyMTQuNiAwIDAgMjE0LjYtMjE0LjYgMCAwLTIxNC42ek0wIDI2NS40bDIxNC42IDAgMCAyMTQuNi0yMTQuNiAwIDAtMjE0LjZ6bTIzMy40IDBsMjE0LjYgMCAwIDIxNC42LTIxNC42IDAgMC0yMTQuNnoiXX0sSmFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImZseSIsaWNvbjpbMzIwLDUxMixbXSwiZjQxNyIsIk0xNjUuOSA0MjcuOGMxMi45IDExLjcgMzMuNyAzMy4zIDMzLjIgNTAuNyAwIC44LS4xIDEuNi0uMSAyLjUtMS44IDE5LjgtMTguOCAzMS4xLTM5LjEgMzEtMjUtLjEtMzkuOS0xNi44LTM4LjctMzUuOCAxLTE2LjIgMjAuNS0zNi43IDMyLjQtNDcuNiAyLjMtMi4xIDIuNy0yLjcgNS42LTMuNiAzLjQgMCAzLjkgLjMgNi43IDIuOHpNMzAwIDY3LjNjLTE2LjMtMjUuNy0zOC42LTQwLjYtNjMuMy01Mi4xLTI1LjUtMTAuNy01NC42LTE1LjQtNzYuNi0xNS4yLTQ0LjEgMC03MS4yIDEzLjItODEuMSAxNy4zLTUzLjYgMjcuOS04NC40IDY5LjktODIuOSAxNDEuMyA3LjEgODIuMiA5NyAxNzYgMTU1LjggMjMzLjggMS43IDEuNiA0LjUgNC41IDYuMiA1LjFsMy4zIC4xYzIuMS0uNyAxLjgtLjUgMy41LTIuMSA1Mi4zLTQ5LjIgMTQwLjctMTQ1LjggMTU1LjktMjE1LjcgNy0zOS4yIDMuMS03Mi41LTIwLjgtMTEyLjV6TTE1NC45IDM1MS45Yy0yOC01MS4xLTY1LjItMTMwLjctNjkuMy0xODktMy40LTQ3LjUgMTEuNC0xMzEuMiA2OS4zLTEzNi43bDAgMzI1Ljd6TTI5Ni44IDE4MGMtMTYuNCA1Ni44LTc3LjMgMTI4LTExOC45IDE3MC4zIDI3LjgtNTEuOSA2NS4yLTEzMy4zIDY3LjItMTkxLjkgMS42LTQ1LjktOS44LTEwNS44LTQ4LTEzMS40IDg4LjggMTguMyAxMTUuNSA5OC4xIDk5LjcgMTUzeiJdfSxlaXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiY2Mtc3RyaXBlIixpY29uOls1NzYsNTEyLFtdLCJmMWY1IiwiTTQ5Mi40IDIyMC44Yy04LjkgMC0xOC43IDYuNy0xOC43IDIyLjdsMzYuNyAwYzAtMTYtOS4zLTIyLjctMTgtMjIuN3pNMzc1IDIyMy40Yy04LjIgMC0xMy4zIDIuOS0xNyA3bC4yIDUyLjhjMy41IDMuNyA4LjUgNi43IDE2LjggNi43IDEzLjEgMCAyMS45LTE0LjMgMjEuOS0zMy40IDAtMTguNi05LTMzLjItMjEuOS0zMy4xek01MjggMzJMNDggMzJDMjEuNSAzMiAwIDUzLjUgMCA4MEwwIDQzMmMwIDI2LjUgMjEuNSA0OCA0OCA0OGw0ODAgMGMyNi41IDAgNDgtMjEuNSA0OC00OGwwLTM1MmMwLTI2LjUtMjEuNS00OC00OC00OHpNMTIyLjIgMjgxLjFjMCAyNS42LTIwLjMgNDAuMS00OS45IDQwLjMtMTIuMiAwLTI1LjYtMi40LTM4LjgtOC4xbDAtMzMuOWMxMiA2LjQgMjcuMSAxMS4zIDM4LjkgMTEuMyA3LjkgMCAxMy42LTIuMSAxMy42LTguNyAwLTE3LTU0LTEwLjYtNTQtNDkuOSAwLTI1LjIgMTkuMi00MC4yIDQ4LTQwLjIgMTEuOCAwIDIzLjUgMS44IDM1LjMgNi41bDAgMzMuNGMtMTAuOC01LjgtMjQuNS05LjEtMzUuMy05LjEtNy41IDAtMTIuMSAyLjItMTIuMSA3LjcgMCAxNiA1NC4zIDguNCA1NC4zIDUwLjd6TTE5MSAyMjQuNWwtMjcgMCAwIDUwLjVjMCAyMC45IDIyLjUgMTQuNCAyNyAxMi42bDAgMjguOWMtNC43IDIuNi0xMy4zIDQuNy0yNC45IDQuNy0yMS4xIDAtMzYuOS0xNS41LTM2LjktMzYuNWwuMi0xMTMuOSAzNC43LTcuNCAwIDMwLjggMjYuOSAwIDAgMzAuM3ptNzQgMi40Yy00LjUtMS41LTE4LjctMy42LTI3LjEgNy40bDAgODQuNC0zNS41IDAgMC0xMjQuNSAzMC43IDAgMi4yIDEwLjVjOC4zLTE1LjMgMjQuOS0xMi4yIDI5LjYtMTAuNWwuMSAwIDAgMzIuN3ptNDQuMSA5MS44bC0zNS43IDAgMC0xMjQuNSAzNS43IDAgMCAxMjQuNXptMC0xNDIuOWwtMzUuNyA3LjYgMC0yOC45IDM1LjctNy42IDAgMjguOXptNzQuMSAxNDUuNWMtMTIuNCAwLTIwLTUuMy0yNS4xLTlsLS4xIDQwLjItMzUuNSA3LjUgMC0xNjUuOCAzMS4zIDAgMS44IDguOGM0LjktNC41IDEzLjktMTEuMSAyNy44LTExLjEgMjQuOSAwIDQ4LjQgMjIuNSA0OC40IDYzLjggMCA0NS4xLTIzLjIgNjUuNS00OC42IDY1LjZ6bTE2MC40LTUxLjVsLTY5LjUgMGMxLjYgMTYuNiAxMy44IDIxLjUgMjcuNiAyMS41IDE0LjEgMCAyNS4yLTMgMzQuOS03LjlsMCAyOC42Yy05LjcgNS4zLTIyLjQgOS4yLTM5LjQgOS4yLTM0LjYgMC01OC44LTIxLjctNTguOC02NC41IDAtMzYuMiAyMC41LTY0LjkgNTQuMy02NC45IDMzLjcgMCA1MS4zIDI4LjcgNTEuMyA2NS4xIDAgMy41LS4zIDEwLjktLjQgMTIuOXoiXX0sdGlyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6IndvcmRwcmVzcy1zaW1wbGUiLGljb246WzUxMiw1MTIsW10sImY0MTEiLCJNMjU2IDhhMjQ4IDI0OCAwIDEgMCAwIDQ5NiAyNDggMjQ4IDAgMSAwIDAtNDk2ek0zMyAyNTZjMC0zMi4zIDYuOS02MyAxOS4zLTkwLjdMMTU4LjcgNDU2LjdDODQuMyA0MjAuNSAzMyAzNDQuMiAzMyAyNTZ6TTI1NiA0NzljLTIxLjkgMC00My0zLjItNjMtOS4xbDY2LjktMTk0LjQgNjguNSAxODcuOGMuNSAxLjEgMSAyLjEgMS42IDMuMS0yMy4xIDguMS00OCAxMi42LTc0IDEyLjZ6bTMwLjctMzI3LjVjMTMuNC0uNyAyNS41LTIuMSAyNS41LTIuMSAxMi0xLjQgMTAuNi0xOS4xLTEuNC0xOC40IDAgMC0zNi4xIDIuOC01OS40IDIuOC0yMS45IDAtNTguNy0yLjgtNTguNy0yLjgtMTItLjctMTMuNCAxNy43LTEuNCAxOC40IDAgMCAxMS40IDEuNCAyMy40IDIuMWwzNC43IDk1LjItNDguOCAxNDYuMy04MS4yLTI0MS41YzEzLjQtLjcgMjUuNS0yLjEgMjUuNS0yLjEgMTItMS40IDEwLjYtMTkuMS0xLjQtMTguNCAwIDAtMzYuMSAyLjgtNTkuNCAyLjgtNC4yIDAtOS4xLS4xLTE0LjQtLjMgMzkuOS02MC41IDEwOC40LTEwMC41IDE4Ni4zLTEwMC41IDU4IDAgMTEwLjkgMjIuMiAxNTAuNiA1OC41LTEtLjEtMS45LS4yLTIuOS0uMi0yMS45IDAtMzcuNCAxOS4xLTM3LjQgMzkuNiAwIDE4LjQgMTAuNiAzMy45IDIxLjkgNTIuMyA4LjUgMTQuOCAxOC40IDMzLjkgMTguNCA2MS41IDAgMTkuMS03LjMgNDEuMi0xNyA3Mi4xbC0yMi4yIDc0LjMtODAuNy0yMzkuNnptODEuNCAyOTcuMmw2OC4xLTE5Ni45YzEyLjctMzEuOCAxNy01Ny4yIDE3LTc5LjkgMC04LjItLjUtMTUuOC0xLjUtMjIuOSAxNy40IDMxLjggMjcuMyA2OC4yIDI3LjMgMTA3IDAgODIuMy00NC42IDE1NC4xLTExMC45IDE5Mi43eiJdfSxyaXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic2VsbHN5IixpY29uOls2NDAsNTEyLFtdLCJmMjEzIiwiTTU0MCAyMzcuM2MzLjEtMTIuMyA0LjMtMjQuOCA0LjMtMzcuNCAwLTkyLjUtNzUuNC0xNjcuOS0xNjcuOS0xNjcuOS03Ny4yIDAtMTQ0LjYgNTMtMTYzIDEyNy44LTE1LjMtMTMuMi0zNC45LTIwLjUtNTUuMi0yMC41LTQ2LjMgMC04NCAzNy43LTg0IDg0IDAgNy40IC45IDE1IDMuMSAyMi40LTQyLjkgMjAuMi03MC44IDYzLjctNzAuOCAxMTEuMiAwIDY4IDU1LjUgMTIzLjIgMTIzLjIgMTIzLjJsMzgxLjIgMGM2Ny43IDAgMTIzLjItNTUuMiAxMjMuMi0xMjMuMiAwLTU2LjQtMzguOS0xMDYtOTQuMS0xMTkuNXpNMjAwLjIgNDAxLjZjMCA4LjMtNyAxNS4zLTE1LjMgMTUuM2wtMzAuOSAwYy04LjMgMC0xNS4zLTctMTUuMy0xNS4zbDAtMTEwLjljMC04LjMgNy0xNS4zIDE1LjMtMTUuM2wzMC45IDBjOC4zIDAgMTUuMyA3IDE1LjMgMTUuM2wwIDExMC45em04OS41IDBjMCA4LjMtNyAxNS4zLTE1LjMgMTUuM2wtMzAuOSAwYy04LjMgMC0xNS4zLTctMTUuMy0xNS4zbDAtMTMxLjVjMC04LjMgNy0xNS4zIDE1LjMtMTUuM2wzMC45IDBjOC4zIDAgMTUuMyA3IDE1LjMgMTUuM2wwIDEzMS41em04OS41IDBjMCA4LjMtNyAxNS4zLTE1LjMgMTUuM2wtMzEgMGMtOC4zIDAtMTUuMy03LTE1LjMtMTUuM2wwLTE2Mi43YzAtOC4zIDctMTUuMyAxNS4zLTE1LjNsMzEgMGM4LjMgMCAxNS4zIDcgMTUuMyAxNS4zbDAgMTYyLjd6bTg3IDBjMCA4LjMtNyAxNS4zLTE1LjMgMTUuM2wtMjguNSAwYy04LjMgMC0xNS4zLTctMTUuMy0xNS4zbDAtMjI0LjZjMC04LjYgNy0xNS42IDE1LjMtMTUuNmwyOC41IDBjOC4zIDAgMTUuMyA3IDE1LjMgMTUuNmwwIDIyNC42eiJdfSxhaXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZGFzaGN1YmUiLGljb246WzQ0OCw1MTIsW10sImYyMTAiLCJNMzI2LjkgMTA0bC0yMTYuMiAwYy01MS4xIDAtOTEuMiA0My4zLTkxLjIgOTMuNWwwIDIyOS41YzAgNTAuNSA0MC4xIDg1IDkxLjIgODVsMjI3LjIgMGM1MS4xIDAgOTEuMi0zNC41IDkxLjItODVsMC00MjctMTAyLjIgMTA0ek0xNTQuMiA0MTYuNWMtMTcuNyAwLTMyLjQtMTUuMS0zMi40LTMyLjhsMC0xNDIuOWMwLTE3LjcgMTQuNy0zMi41IDMyLjQtMzIuNWwxNDAuNyAwYzE3LjcgMCAzMiAxNC44IDMyIDMyLjVsMCAxMjMuNSA1MS4xIDUyLjMtMjIzLjggMCAwLS4xeiJdfSxpaXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZ2l0dGVyIixpY29uOlszODQsNTEyLFtdLCJmNDI2IiwiTTY2LjQgMzIyLjVsLTUwLjQgMCAwLTMyMi41IDUwLjQgMCAwIDMyMi41ek0xNjYuOSA3Ni4xbC01MC40IDAgMCA0MzUuOSA1MC40IDAgMC00MzUuOXptMTAwLjYgMGwtNTAuNCAwIDAgNDM1LjkgNTAuNCAwIDAtNDM1Ljl6TTM2OCA3NmwtNTAuNCAwIDAgMjQ3IDUwLjQgMCAwLTI0N3oiXX0sb2lyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6IndvbGYtcGFjay1iYXR0YWxpb24iLGljb246WzQ0OCw1MTIsW10sImY1MTQiLCJNMjM2LjIgNDcxLjVsMTAuNiAxNS44IDUuMy0xMi4zIDUuMyA3IDAgMjkuOWMyMS4xLTcuOSAyMS4xLTY2LjkgMjUuNS05Ny4yIDQuNi0zMS45LS45LTkyLjggODEuNC0xNDkuMS04LjktMjMuNi0xMi00OS40LTIuNi04MCAyNy45IDMuNCA1My45IDEwLjYgNjMuMyA1NC4xbC0zMC4zIDguNGMxMS4xIDIzIDE3IDQ2LjggMTMuMiA3Mi4xbC0yNy4zLTctNi4yIDMzLjQtMTguNS03LTguOCAzMy40LTE5LjQtNyAyNi40IDIxLjEgOC44LTI4LjIgMjQuNiA1LjIgNy0zNS42IDI2LjQgMTQuNWMuMi0yMCA3LTU4LjEtOC44LTg0LjVsMjYuNCA1LjNjNC0yMi4xLTIuNC0zOS4yLTcuOS01Ni43bDIyLjQgOS43Yy0uNC0yNS4xLTI5LjktNTYuOC02MS42LTU4LjUtMjAuMi0xLjEtNTYuNy0yNS4yLTU0LjEtNTEuOSAyLTE5LjkgMTcuNC00Mi42IDQzLjEtNDkuNy00NCAzNi41LTkuNyA2Ny4zIDUuMyA3My41IDQuNC0xMS40IDE3LjUtNjkuMSAwLTEzMC4yLTQwLjQgMjIuOS04OS43IDY1LjEtOTMuMiAxNDcuOGwtNTggMzguNy0zLjUgOTMuMiAxMDcuMy01OS44IDcgNy0xNy42IDMuNS00NCAzOC43LTE1LjgtNS4zLTI4LjEgNDkuMy0zLjUgMTE5LjYgMjEuMSAxNS44LTMyLjUgMTUuOC0zMi42LTE1LjggMjEuMS0xNS44LTMuNS0xMTkuNi0yOC4yLTQ5LjMtMTUuOCA1LjMtNDQtMzguNy0xNy42LTMuNSA3LTcgMTA3LjMgNTkuOC0zLjUtOTMuMy01OC4xLTM4LjdjLTMuNS04Mi44LTUyLjctMTI1LTkzLjItMTQ3LjktMTcuNSA2MS4xLTQuNCAxMTguOCAwIDEzMC4yIDE1LTYuMiA0OS4zLTM3IDUuMy03My41IDI1LjcgNy4xIDQxLjEgMjkuOCA0My4xIDQ5LjcgMi42IDI2LjctMzMuOSA1MC44LTU0LjEgNTEuOS0zMS43IDEuNy02MS4yIDMzLjQtNjEuNiA1OC41bDIyLjQtOS43QzEzLjQgMjI0LjcgNyAyNDEuOCAxMSAyNjMuOWwyNi40LTUuM2MtMTUuOCAyNi40LTkuMSA2NC40LTguOCA4NC40bDI2LjQtMTQuNSA3IDM1LjYgMjQuNi01LjMgOC44IDI4LjIgMjYuNC0yMS4xLTE5LjQgNy04LjgtMzMuNC0xOC41IDctNi4yLTMzLjQtMjcuMyA3QzM4IDI5NC44IDQzLjggMjcxIDU1IDI0OGwtMzAuMy04LjRjOS40LTQzLjUgMzUuNS01MC44IDYzLjMtNTQuMSA5LjQgMzAuNiA2LjIgNTYuNS0yLjYgODAuMSA4Mi4zIDU2LjMgNzYuOCAxMTcuMiA4MS40IDE0OS4xIDQuNCAzMC4zIDQuNCA4OS4zIDI1LjUgOTcuMmwwLTI5LjggNS4zLTcgNS4zIDEyLjMgMTAuNi0xNS44IDExLjQgMjEuMSAxMS40LTIxLjEgMCAwem03OS4yLTk1TDI5OS41IDM2NmM3LjUtNC40IDEzLjgtOC40IDE5LjQtMTIuMy0uNiA3LjItLjMgMTMuOC0zLjUgMjIuOGwwIDB6bTI4LjItNDkuM2MtLjQgMTAuOS0uOSAyMS43LTEuOCAzMS43LTcuOC0xLjktMTUuNi0zLjgtMjEuMS03IDguMi03LjkgMTUuNi0xNi4zIDIyLjktMjQuN2wwIDB6bTI0LjYgNS4zYzAtMTMuNC0yLjEtMjQuMi01LjMtMzMuNC01LjUgOS41LTExLjcgMTguNi0xOC41IDI3LjNsMjMuOCA2LjJ6bTMuNS04MC45YzE5LjQgMTIuOCAyNy44IDMzLjcgMjkuOSA1Ni4zLTEyLjMtNC41LTI0LjYtOS4zLTM3LTEwLjYgNS4xLTEyIDYuNi0yOC4xIDctNDUuN2wwIDB6bS0xLjgtNDUuN2MuOCAxNC4zIDEuOCAyOC44IDEuOCA0Mi4yIDE5LjItOC4xIDI5LjgtOS43IDQ0LTE0LjEtMTAuNi0xOS0yNy4yLTI1LjUtNDUuOC0yOC4ybDAgMHpNMTM0LjIgMzc2LjVMMTUwIDM2NmMtNy41LTQuNC0xMy44LTguNC0xOS40LTEyLjMgLjYgNy4zIC4zIDEzLjkgMy41IDIyLjlsMCAwek0xMDYgMzI3LjNjLjQgMTAuOSAuOSAyMS43IDEuOCAzMS43IDcuOC0xLjkgMTUuNi0zLjggMjEuMS03LTguMi03LjktMTUuNi0xNi4zLTIyLjktMjQuN3ptLTI0LjYgNS4zYzAtMTMuNCAyLTI0LjIgNS4zLTMzLjQgNS41IDkuNSAxMS43IDE4LjYgMTguNSAyNy4zbC0yMy44IDYuMnptLTMuNS04MC45Yy0xOS40IDEyLjgtMjcuOCAzMy43LTI5LjkgNTYuMyAxMi4zLTQuNSAyNC42LTkuMyAzNy0xMC42LTUtMTItNi42LTI4LjEtNy00NS43bC0uMSAwem0xLjgtNDUuN2MtLjggMTQuMy0xLjggMjguOC0xLjggNDIuMi0xOS4yLTguMS0yOS44LTkuNy00NC0xNC4xIDEwLjYtMTkgMjcuMi0yNS41IDQ1LjgtMjguMXoiXX0sbmlyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Imxhc3RmbSIsaWNvbjpbNTEyLDUxMixbXSwiZjIwMiIsIk0yMjUuOCAzNjcuMWwtMTguOC01MXMtMzAuNSAzNC03Ni4yIDM0Yy00MC41IDAtNjkuMi0zNS4yLTY5LjItOTEuNSAwLTcyLjEgMzYuNC05Ny45IDcyLjEtOTcuOSA2Ni41IDAgNzQuOCA1My4zIDEwMC45IDEzNC45IDE4LjggNTYuOSA1NCAxMDIuNiAxNTUuNCAxMDIuNiA3Mi43IDAgMTIyLTIyLjMgMTIyLTgwLjkgMC03Mi45LTYyLjctODAuNi0xMTUtOTIuMS0yNS44LTUuOS0zMy40LTE2LjQtMzMuNC0zNCAwLTE5LjkgMTUuOC0zMS43IDQxLjYtMzEuNyAyOC4yIDAgNDMuNCAxMC42IDQ1LjcgMzUuOGw1OC42LTdjLTQuNy01Mi44LTQxLjEtNzQuNS0xMDAuOS03NC41LTUyLjggMC0xMDQuNCAxOS45LTEwNC40IDgzLjkgMCAzOS45IDE5LjQgNjUuMSA2OCA3Ni44IDQ0LjkgMTAuNiA3OS44IDEzLjggNzkuOCA0NS43IDAgMjEuNy0yMS4xIDMwLjUtNjEgMzAuNS01OS4yIDAtODMuOS0zMS4xLTk3LjktNzMuOS0zMi05Ni44LTQzLjYtMTYzLTE2MS4zLTE2My04Ni4xIDAtMTMxLjggNTQuNS0xMzEuOCAxNDcuMiAwIDg5LjEgNDUuNyAxMzcuMiAxMjcuOSAxMzcuMiA2Ni4yIDAgOTcuOS0zMS4xIDk3LjktMzEuMXoiXX0sc2lyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InNob3B3YXJlIixpY29uOls1MTIsNTEyLFtdLCJmNWI1IiwiTTQwMy41IDQ1NS40Yy00Mi42IDMxLjctOTQuNCA0OC43LTE0Ny41IDQ4LjYtMTM3LjIgMC0yNDgtMTExLTI0OC0yNDggMC0xMzcuMiAxMTEtMjQ4IDI0OC0yNDggNjEuMi0uMSAxMjAuMiAyMi42IDE2NS43IDYzLjUgLjYgLjUgLjkgMS4yIDEuMSAxLjlzLjEgMS41LS4zIDIuMi0uOCAxLjMtMS41IDEuNi0xLjQgLjUtMi4yIC40Yy0xOC44LTIuNS0zNy43LTMuNy01Ni43LTMuNy0xMjkuNCAwLTIyMi40IDUzLjUtMjIyLjQgMTU1LjQgMCAxMDkgOTIuMSAxNDUuOSAxNzYuOCAxNzguNyAzMy42IDEzIDY1LjQgMjUuNCA4NyA0MS42IC40IC4zIC44IC44IDEuMSAxLjNzLjQgMSAuNCAxLjYtLjEgMS4xLS40IDEuNi0uNiAuOS0xLjEgMS4zbC0uMSAwek01MDMgMjMzLjFjLS4xLS45LS41LTEuOC0xLjMtMi40LTUxLjgtNDMtOTMuNi02MC41LTE0NC41LTYwLjUtODQuMSAwLTgwLjMgNTIuMi04MC4zIDUzLjYgMCA0Mi42IDUyLjEgNjIgMTEyLjMgODQuNSAzMS4xIDExLjYgNjMuMiAyMy42IDkyLjcgMzkuOSAuNCAuMiAuOSAuNCAxLjQgLjRzMSAwIDEuNS0uMiAuOS0uNCAxLjMtLjggLjYtLjggLjgtMS4yYzE0LjEtMzYgMTkuNS03NC44IDE2LTExMy4zeiJdfSxsaXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiYmxvZ2dlciIsaWNvbjpbNDQ4LDUxMixbXSwiZjM3YyIsIk0xNjIuNCAxOTZjNC44LTQuOSA2LjItNS4xIDM2LjQtNS4xIDI3LjIgMCAyOC4xIC4xIDMyLjEgMi4xIDUuOCAyLjkgOC4zIDcgOC4zIDEzLjYgMCA1LjktMi40IDEwLTcuNiAxMy40LTIuOCAxLjgtNC41IDEuOS0zMS4xIDIuMS0xNi40IC4xLTI5LjUtLjItMzEuNS0uOC0xMC4zLTIuOS0xNC4xLTE3LjctNi42LTI1LjN6bTYxLjQgOTQuNWMtNTMuOSAwLTU1LjggLjItNjAuMiA0LjEtMy41IDMuMS01LjcgOS40LTUuMSAxMy45IC43IDQuNyA0LjggMTAuMSA5LjIgMTIgMi4yIDEgMTQuMSAxLjcgNTYuMyAxLjJsNDcuOS0uNiA5LjItMS41YzktNS4xIDEwLjUtMTcuNCAzLjEtMjQuNC01LjMtNC43LTUtNC43LTYwLjQtNC43ek00NDcuMiA0MjAuNmMtMy41IDI4LjQtMjMgNTAuNC01MS4xIDU3LjUtNy4yIDEuOC05LjcgMS45LTE3Mi45IDEuOC0xNTcuOCAwLTE2NS45LS4xLTE3Mi0xLjgtOC40LTIuMi0xNS42LTUuNS0yMi4zLTEwLTUuNi0zLjgtMTMuOS0xMS44LTE3LTE2LjQtMy44LTUuNi04LjItMTUuMy0xMC0yMlMwIDQyMC4zIDAgMjU2LjNjMC0xNjMuMSAwLTE2Ni42IDEuOC0xNzMuNyA2LjMtMjQuNyAyNS45LTQzLjYgNTEuMi00OS4yIDcuMy0xLjYgMzMyLjEtMS45IDM0MC0uMyAyMS4yIDQuMyAzNy45IDE3LjEgNDcuNiAzNi40IDcuNyAxNS4zIDctMS41IDcuMyAxODAuNiAuMiAxMTUuOCAwIDE2NC41LS43IDE3MC41ek0zNjEuOCAyMzUuNGMtMS4xLTUtNC4yLTkuNi03LjctMTEuNS0xLjEtLjYtOC0xLjMtMTUuNS0xLjctMTIuNC0uNi0xMy44LS44LTE3LjgtMy4xLTYuMi0zLjYtNy45LTcuNi04LTE4LjMgMC0yMC40LTguNS0zOS40LTI1LjMtNTYuNS0xMi0xMi4yLTI1LjMtMjAuNS00MC42LTI1LjEtMy42LTEuMS0xMS44LTEuNS0zOS4yLTEuOC00Mi45LS41LTUyLjUgLjQtNjcuMSA2LjItMjcgMTAuNy00Ni4zIDMzLjQtNTMuNCA2Mi40LTEuMyA1LjQtMS42IDE0LjItMS45IDY0LjMtLjQgNjIuOCAwIDcyLjEgNCA4NC41IDkuNyAzMC43IDM3LjEgNTMuNCA2NC42IDU4LjQgOS4yIDEuNyAxMjIuMiAyLjEgMTMzLjcgLjUgMjAuMS0yLjcgMzUuOS0xMC44IDUwLjctMjUuOSAxMC43LTEwLjkgMTcuNC0yMi44IDIxLjgtMzguNSAzLjItMTAuOSAyLjktODguNCAxLjctOTMuOXoiXX0sY2lyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImVkZ2UiLGljb246WzUxMiw1MTIsW10sImYyODIiLCJNMTIwLjEgMzcuNGM0MS0yNS4yIDg3LjYtMzguMiAxMzQuOS0zNy40IDE2OCAwIDI1NyAxMjMuOCAyNTcgMjE5LjUtLjEgMzIuNy0xMyA2My45LTM1LjkgODcuMi0yMi45IDIzLjItNTQgMzYuNS04Ni43IDM3LTc1LjIgMC05MS41LTIzLjEtOTEuNS0zMiAwLTMuOCAxLjItNi4yIDQuOC05LjRsMS0xLjIgLjQtMS42YzEwLjUtMTEuNSAxNS45LTI2LjIgMTUuOS00MS42IDAtNzguNy04Mi4yLTE0Mi43LTE4NC0xNDIuNy0zNy41LS4zLTc0LjUgOC45LTEwNy41IDI2LjkgMjctNTcuNSA4Mi43LTk3LjYgOTEuMy0xMDMuOCAuOC0uNiAuMy0uOCAuMy0uOHptMTUuNiAzMTguMWMtMS40IDMwIDQuNiA2MCAxNi40IDg3LjIgMTMuNiAyNi40IDMyLjcgNTEgNTYuNSA2OS4zLTU5LjUtMTEuNS0xMTEuNS00My45LTE0OS40LTg5LjMtMzguMS00Ni40LTU5LjItMTA0LjMtNTkuMi0xNjQuOCAwLTUxLjIgNjIuNC05NC40IDEzNi05NC40IDM2LjYtLjYgNzIuNCAxMC45IDEwMS44IDMyLjdsLTMuNiAxLjJjLTUxLjUgMTcuNi05OC41IDkwLjctOTguNSAxNTguMXpNNDY5LjggNDAwbC0uNyAuMWMtMTEuOCAxOC44LTI1LjkgMzUuMS00Mi4yIDQ5LjUtMzAuOCAyOC02OC4xIDQ1LjUtMTA4LjggNDkuOS0xOC42IC4zLTM2LjgtMy4yLTUzLjgtMTEuNC0yNS42LTEwLjMtNDcuMS0zMC02MS42LTUzLTE0LjQtMjMuOS0yMS4xLTUxLjctMTktNzkuNi0uNi0yMC4xIDUuNC00MC4zIDE1LTU4LjIgMTMuOSAzMy4xIDM3LjUgNjEuMyA2Ny42IDgwLjhzNjUuNSAyOS41IDEwMS40IDI4LjZjMzEgLjMgNjIuMS02LjcgOTAuMi0yMC41bDEuOS0uOWMzLjktMi4zIDcuNy0zLjkgMTEuNiAwIDQuNSA0LjkgMS44IDkuMi0xLjIgMTQtLjIgLjItLjMgLjUtLjQgLjd6Il19LGRpcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJpb3hob3N0IixpY29uOls2NDAsNTEyLFtdLCJmMjA4IiwiTTYxNiAxNjBsLTY3LjMgMEM1MTEuMiA3MC43IDQyMi45IDggMzIwIDggMTgzIDggNzIgMTE5IDcyIDI1NiA3MiAyNzIuNCA3My42IDI4OC41IDc2LjcgMzA0TDI0IDMwNGMtMTMuMyAwLTI0IDEwLjgtMjQgMjQgMCAxMy4zIDEwLjcgMjQgMjQgMjRsNjcuMyAwYzM3LjUgODkuMyAxMjUuOCAxNTIgMjI4LjcgMTUyIDEzNyAwIDI0OC0xMTEgMjQ4LTI0OCAwLTE2LjQtMS42LTMyLjUtNC43LTQ4bDUyLjcgMGMxMy4zIDAgMjQtMTAuOCAyNC0yNCAwLTEzLjMtMTAuNy0yNC0yNC0yNHptLTk2IDk2YzAgMTEwLjUtODkuNSAyMDAtMjAwIDIwMC03NS43IDAtMTQxLjYtNDItMTc1LjUtMTA0TDQyNCAzNTJjMTMuMyAwIDI0LTEwLjggMjQtMjQgMC0xMy4zLTEwLjctMjQtMjQtMjRsLTI5OC4yIDBjLTMuOC0xNS40LTUuOC0zMS40LTUuOC00OCAwLTExMC41IDg5LjUtMjAwIDIwMC0yMDAgNzUuNyAwIDE0MS42IDQyIDE3NS41IDEwNEwyMTYgMTYwYy0xMy4zIDAtMjQgMTAuOC0yNCAyNCAwIDEzLjMgMTAuNyAyNCAyNCAyNGwyOTguMiAwYzMuOCAxNS40IDUuOCAzMS40IDUuOCA0OHpNMjE2IDIzMmwyMDggMGMxMy4zIDAgMjQgMTAuNyAyNCAyNCAwIDEzLjItMTAuNyAyNC0yNCAyNGwtMjA4IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0IDAtMTMuMiAxMC43LTI0IDI0LTI0eiJdfSx1aXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic2NobGl4IixpY29uOls0NDgsNTEyLFtdLCJmM2VhIiwiTTM1MC41IDE1Ny43bC01NC4yLTQ2LjEgNzMuNC0zOSA3OC4zIDQ0LjItOTcuNSA0MC45ek0xOTIgMTIyLjFsNDUuNy0yOC4yIDM0LjcgMzQuNi01NS40IDI5LTI1LTM1LjR6bS02NS4xIDYuNmwzMS45LTIyLjEgMTcuMiAyOC40LTM2LjcgMjIuNS0xMi40LTI4Ljh6bS0yMy4zIDg4LjJsLTguOC0zNC44IDI5LjYtMTguMyAxMy4xIDM1LjMtMzMuOSAxNy44ek04Mi40IDEzMy4ybDIzLjktMTguMSA4LjkgMjQtMjYuNyAxOC4zLTYuMS0yNC4yek01OSAyMDYuNWwtMy42LTI4LjQgMjIuMy0xNS41IDYuMSAyOC43LTI0LjggMTUuMnpNMjguNCAyMjMuMWwyMC44LTEyLjggMy4zIDMzLjQtMjIuOSAxMi0xLjItMzIuNnpNMS40IDI2OEwyMC42IDI1Ny44IDIxIDI5NiAwIDMwNC44IDEuNCAyNjh6bTU5LjEgNTkuM2wtMjguMyA4LjMtMS42LTQ2LjggMjUuMS0xMC43IDQuOCA0OS4yek05OSAyNjMuMmwtMzEuMSAxMy01LjItNDAuOCAyNy40LTE0LjQgOC45IDQyLjJ6TTEyMy4yIDM3N2wtNDEuNiA1LjktOC4xLTYzLjUgMzUuMi0xMC44IDE0LjUgNjguNHptMjguNS0xMzkuOWwyMS4yIDU3LjEtNDYuMiAxMy42LTEzLjctNTQuMSAzOC43LTE2LjZ6bTg1LjcgMjMwLjVsLTcwLjktMy4zLTI0LjMtOTUuOCA1NS4yLTguNiA0MCAxMDcuN3pNMTUyLjUgMTg3LjlsNDIuMi0yMi40IDI4IDQ1LjktNTAuOCAyMS4zLTE5LjQtNDQuOHptNDEgOTQuOWw2MS4zLTE4LjcgNTIuOCA4Ni42LTc5LjggMTEuMy0zNC4zLTc5LjJ6bTUxLjQtODUuNmw2Ny4zLTI4LjggNjUuNSA2NS40LTg4LjYgMjYuMi00NC4yLTYyLjh6Il19LGZpcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJkLWFuZC1kIixpY29uOls1NzYsNTEyLFtdLCJmMzhkIiwiTTgyLjkgOTguOWMtLjYtMTcuMiAyLTMzLjggMTIuNy00OC4yIC4zIDcuNCAxLjIgMTQuNSA0LjIgMjEuNiA1LjktMjcuNSAxOS43LTQ5LjMgNDIuMy02NS41LTEuOSA1LjktMy41IDExLjgtMyAxNy43IDguNy03LjQgMTguOC0xNy44IDQ0LjQtMjIuNyAxNC43LTIuOCAyOS43LTIgNDIuMSAxIDM4LjUgOS4zIDYxIDM0LjMgNjkuNyA3Mi4zIDUuMyAyMy4xIC43IDQ1LTguMyA2Ni40LTUuMiAxMi40LTEyIDI0LjQtMjAuNyAzNS4xLTItMS45LTMuOS0zLjgtNS44LTUuNi00Mi44LTQwLjgtMjYuOC0yNS4yLTM3LjQtMzcuNC0xLjEtMS4yLTEtMi4yLS4xLTMuNiA4LjMtMTMuNSAxMS44LTI4LjIgMTAtNDQtMS4xLTkuOC00LjMtMTguOS0xMS4zLTI2LjItMTQuNS0xNS4zLTM5LjItMTUtNTMuNSAuNi0xMS40IDEyLjUtMTQuMSAyNy40LTEwLjkgNDMuNiAuMiAxLjMgLjQgMi43IDAgMy45LTMuNCAxMy43LTQuNiAyNy42LTIuNSA0MS42IC4xIC41IC4xIDEuMSAuMSAxLjYgMCAuMy0uMSAuNS0uMiAxLjEtMjEuOC0xMS0zNi0yOC4zLTQzLjItNTIuMi04LjMgMTcuOC0xMS4xIDM1LjUtNi42IDU0LjEtMTUuNi0xNS4yLTIxLjMtMzQuMy0yMi01NS4yek01NTIuNSAyMjIuMWMtMTEuNi0xMS42LTI1LTIwLjQtNDAuMS0yNi42LTEyLjgtNS4yLTI2LTcuOS0zOS45LTcuMS0xMCAuNi0xOS42IDMuMS0yOSA2LjQtMi41IC45LTUuMSAxLjYtNy43IDIuMi00LjkgMS4yLTcuMy0zLjEtNC43LTYuOCAzLjItNC42IDMuNC00LjIgMTUtMTIgLjYtLjQgMS4yLS44IDIuMi0xLjVsLTIuNSAwYy0uNiAwLTEuMiAuMi0xLjkgLjMtMTkuMyAzLjMtMzAuNyAxNS41LTQ4LjkgMjkuNi0xMC40IDguMS0xMy44IDMuOC0xMi0uNSAxLjQtMy41IDMuMy02LjcgNS4xLTEwIDEtMS44IDIuMy0zLjQgMy41LTUuMS0uMi0uMi0uNS0uMy0uNy0uNS0yNyAxOC4zLTQ2LjcgNDIuNC01Ny43IDczLjMgLjMgLjMgLjcgLjYgMSAuOSAuMy0uNiAuNS0xLjIgLjktMS43IDEwLjQtMTIuMSAyMi44LTIxLjggMzYuNi0yOS44IDE4LjItMTAuNiAzNy41LTE4LjMgNTguNy0yMC4yIDQuMy0uNCA4LjctLjEgMTMuMS0uMS0xLjggLjctMy41IC45LTUuMyAxLjEtMTguNSAyLjQtMzUuNSA5LTUxLjUgMTguNS0zMC4yIDE3LjktNTQuNSA0Mi4yLTc1LjEgNzAuNC0uMyAuNC0uNCAuOS0uNyAxLjMgMTQuNSA1LjMgMjQgMTcuMyAzNi4xIDI1LjYgLjItLjEgLjMtLjIgLjQtLjRsMS4yLTIuN2MxMi4yLTI2LjkgMjctNTIuMyA0Ni43LTc0LjUgMTYuNy0xOC44IDM4LTI1LjMgNjIuNS0yMCA1LjkgMS4zIDExLjQgNC40IDE3LjIgNi44IDIuMy0xLjQgNS4xLTMuMiA4LTQuNyA4LjQtNC4zIDE3LjQtNyAyNi43LTkgMTQuNy0zLjEgMjkuNS00LjkgNDQuNS0xLjNsMC0uNWMtLjUtLjQtMS4yLS44LTEuNy0xLjR6TTMxNy4xIDM5Ny42Yy0zOS40LTMzLTIyLjgtMTkuNS00Mi43LTM1LjYtLjggLjkgMC0uMi0xLjkgMy0xMS4yIDE5LjEtMjUuNSAzNS4zLTQ0IDQ3LjYtMTAuMyA2LjgtMjEuNSAxMS44LTM0LjEgMTEuOC0yMS42IDAtMzguMi05LjUtNDkuNC0yNy44LTEyLTE5LjUtMTMuMy00MC43LTguMi02Mi42IDcuOC0zMy44IDMwLjEtNTUuMiAzOC42LTY0LjMtMTguNy02LjItMzMgMS43LTQ2LjQgMTMuOSAuOC0xMy45IDQuMy0yNi4yIDExLjgtMzcuMy0yNC4zIDEwLjYtNDUuOSAyNS02NC44IDQzLjktLjMtNS44IDUuNC00My43IDUuNi00NC43IC4zLTIuNy0uNi01LjMtMy03LjQtMjQuMiAyNC43LTQ0LjUgNTEuOC01Ni4xIDg0LjYgNy40LTUuOSAxNC45LTExLjQgMjMuNi0xNi4yLTguMyAyMi4zLTE5LjYgNTIuOC03LjggMTAxLjEgNC42IDE5IDExLjkgMzYuOCAyNC4xIDUyLjMgMi45IDMuNyA2LjMgNi45IDkuNSAxMC4zIC4yLS4yIC40LS4zIC42LS41LTEuNC03LTIuMi0xNC4xLTEuNS0yMS45IDIuMiAzLjIgMy45IDYgNS45IDguNiAxMi42IDE2IDI4LjcgMjcuNCA0Ny4yIDM1LjYgMjUgMTEuMyA1MS4xIDEzLjMgNzcuOSA4LjYgNTQuOS05LjcgOTAuNy00OC42IDExNi05OC44IDEtMS44IC42LTIuOS0uOS00LjJ6bTE3Mi00Ni40Yy05LjUtMy4xLTIyLjItNC4yLTI4LjctMi45IDkuOSA0IDE0LjEgNi42IDE4LjggMTIgMTIuNiAxNC40IDEwLjQgMzQuNy01LjQgNDUuNi0xMS43IDguMS0yNC45IDEwLjUtMzguOSA5LjEtMS4yLS4xLTIuMy0uNC0zLS42IDIuOC0zLjcgNi03IDguMS0xMC44IDkuNC0xNi44IDUuNC00Mi4xLTguNy01Ni4xLTIuMS0yLjEtNC42LTMuOS03LTUuOS0uMyAxLjMtLjEgMi4xIC4xIDIuOCA0LjIgMTYuNi04LjEgMzIuNC0yNC44IDMxLjgtNy42LS4zLTEzLjktMy44LTE5LjYtOC41LTE5LjUtMTYuMS0zOS4xLTMyLjEtNTguNS00OC4zLTUuOS00LjktMTIuNS04LjEtMjAuMS04LjctNC42LS40LTkuMy0uNi0xMy45LS45LTUuOS0uNC04LjgtMi44LTEwLjQtOC40LS45LTMuNC0xLjUtNi44LTIuMi0xMC4yLTEuNS04LjEtNi4yLTEzLTE0LjMtMTQuMi00LjQtLjctOC45LTEtMTMuMy0xLjUtMTMtMS40LTE5LjgtNy40LTIyLjYtMjAuMy01IDExLTEuNiAyMi40IDcuMyAyOS45IDQuNSAzLjggOS4zIDcuMyAxMy44IDExLjIgNC42IDMuOCA3LjQgOC43IDcuOSAxNC44IC40IDQuNyAuOCA5LjUgMS44IDE0LjEgMi4yIDEwLjYgOC45IDE4LjQgMTcgMjUuMSAxNi41IDEzLjcgMzMgMjcuMyA0OS41IDQxLjEgMTcuOSAxNSAxMy45IDMyLjggMTMgNTYtLjkgMjIuOSAxMi4yIDQyLjkgMzMuNSA1MS4yIDEgLjQgMiAuNiAzLjYgMS4xLTE1LjctMTguMi0xMC4xLTQ0LjEgLjctNTIuMyAuMyAyLjIgLjQgNC4zIC45IDYuNCA5LjQgNDQuMSA0NS40IDY0LjIgODUgNTYuOSAxNi0yLjkgMzAuNi04LjkgNDIuOS0xOS44IDItMS44IDMuNy00LjEgNS45LTYuNS0xOS4zIDQuNi0zNS44IC4xLTUwLjktMTAuNiAuNy0uMyAxLjMtLjMgMS45LS4zIDIxLjMgMS44IDQwLjYtMy40IDU3LTE3LjQgMTkuNS0xNi42IDI2LjYtNDIuOSAxNy40LTY2LTguMy0yMC4xLTIzLjYtMzIuMy00My44LTM4Ljl6TTk5LjggMTc5LjNjLTUuMy05LjItMTMuMi0xNS42LTIyLjEtMjEuMyAxMy43LS41IDI2LjYgLjIgMzkuNiAzLjctNy0xMi4yLTguNS0yNC43LTUtMzguNyA1LjMgMTEuOSAxMy43IDIwLjEgMjMuNiAyNi44IDE5LjcgMTMuMiAzNS43IDE5LjYgNDYuNyAzMC4yIDMuNCAzLjMgNi4zIDcuMSA5LjYgMTAuOS0uOC0yLjEtMS40LTQuMS0yLjItNi01LTEwLjYtMTMtMTguNi0yMi42LTI1LTEuOC0xLjItMi44LTIuNS0zLjQtNC41LTMuMy0xMi41LTMtMjUuMS0uNy0zNy42IDEtNS41IDIuOC0xMC45IDQuNS0xNi4zIC44LTIuNCAyLjMtNC42IDQtNi42IC42IDYuOSAwIDI1LjUgMTkuNiA0NiAxMC44IDExLjMgMjIuNCAyMS45IDMzLjkgMzIuNyA5IDguNSAxOC4zIDE2LjcgMjUuNSAyNi44IDEuMSAxLjYgMi4yIDMuMyAzLjggNC43LTUtMTMtMTQuMi0yNC4xLTI0LjItMzMuOC05LjYtOS4zLTE5LjQtMTguNC0yOS4yLTI3LjQtMy4zLTMtNC42LTYuNy01LjEtMTAuOS0xLjItMTAuNCAwLTIwLjYgNC4zLTMwLjIgLjUtMSAxLjEtMiAxLjktMy4zIC41IDQuMiAuNiA3LjkgMS40IDExLjYgNC44IDIzLjEgMjAuNCAzNi4zIDQ5LjMgNjMuNSAxMCA5LjQgMTkuMyAxOS4yIDI1LjYgMzEuNiA0LjggOS4zIDcuMyAxOSA1LjcgMjkuNi0uMSAuNiAuNSAxLjcgMS4xIDIgNi4yIDIuNiAxMCA2LjkgOS43IDE0LjMgNy43LTIuNiAxMi41LTggMTYuNC0xNC41IDQuMiAyMC4yLTkuMSA1MC4zLTI3LjIgNTguNyAuNC00LjUgNS0yMy40LTE2LjUtMjcuNy02LjgtMS4zLTEyLjgtMS4zLTIyLjktMi4xIDQuNy05IDEwLjQtMjAuNiAuNS0yMi40LTI0LjktNC42LTUyLjggMS45LTU3LjggNC42IDguMiAuNCAxNi4zIDEgMjMuNSAzLjMtMiA2LjUtNCAxMi43LTUuOCAxOC45LTEuOSA2LjUgMi4xIDE0LjYgOS4zIDkuNiAxLjItLjkgMi4zLTEuOSAzLjMtMi43LTMuMSAxNy45LTIuOSAxNS45LTIuOCAxOC4zIC4zIDEwLjIgOS41IDcuOCAxNS43IDcuMy0yLjUgMTEuOC0yOS41IDI3LjMtNDUuNCAyNS44IDctNC43IDEyLjctMTAuMyAxNS45LTE3LjktNi41IC44LTEyLjkgMS42LTE5LjIgMi40bC0uMy0uOWM0LjctMy40IDgtNy44IDEwLjItMTMuMSA4LjctMjEuMS0zLjYtMzgtMjUtMzkuOS05LjEtLjgtMTcuOCAuOC0yNS45IDUuNSA2LjItMTUuNiAxNy4yLTI2LjYgMzIuNi0zNC41LTE1LjItNC4zLTguOS0yLjctMjQuNi02LjMgMTQuNi05LjMgMzAuMi0xMy4yIDQ2LjUtMTQuNi01LjItMy4yLTQ4LjEtMy42LTcwLjIgMjAuOSA3LjkgMS40IDE1LjUgMi44IDIzLjIgNC4yLTIzLjggNy00NCAxOS43LTYyLjQgMzUuNiAxLjEtNC44IDIuNy05LjUgMy4zLTE0LjMgLjYtNC41IC44LTkuMiAuMS0xMy42LTEuNS05LjQtOC45LTE1LjEtMTkuNy0xNi4zLTcuOS0uOS0xNS42IC4xLTIzLjMgMS4zLS45IC4xLTEuNyAuMy0yLjkgMCAxNS44LTE0LjggMzYtMjEuNyA1My4xLTMzLjUgNi00LjUgNi44LTguMiAzLTE0Ljl6bTEyOC40IDI2LjhjMy4zIDE2IDEyLjYgMjUuNSAyMy44IDI0LjMtNC42LTExLjMtMTIuMS0xOS41LTIzLjgtMjQuM3oiXX0scGlyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InZ1ZWpzIixpY29uOls0NDgsNTEyLFtdLCJmNDFmIiwiTTM1Ni45IDY0LjNsLTc2LjkgMC01NiA4OC42LTQ4LTg4LjYtMTc2IDAgMjI0IDM4My43IDIyNC0zODMuNy05MS4xIDB6TTU1LjcgOTYuM2w1My44IDAgMTE0LjUgMTk4LjIgMTE0LjQtMTk4LjIgNTMuOCAwLTE2OC4yIDI4OC4yLTE2OC4zLTI4OC4yeiJdfSxoaXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToibWV0YSIsaWNvbjpbNjQwLDUxMixbXSwiZTQ5YiIsIk02NDAgMzE3LjljMCA5MS4zLTM5LjQgMTQ4LjUtMTEwLjMgMTQ4LjUtNjIuNiAwLTk1LjgtMzQuNi0xNTYuOS0xMzYuNmwtMzEuNC01Mi42Yy04LjMtMTIuNS0xNC41LTI0LjItMjEuMi0zNS0yMC4xIDMzLjgtNDcuMSA4My00Ny4xIDgzLTY3IDExNi42LTEwNC42IDE0MS4yLTE1Ni45IDE0MS4yLTcyLjggMC0xMTYuMi01Ny4zLTExNi4yLTE0NS45IDAtMTQzIDc5LjgtMjc4LjEgMTgzLjktMjc4LjEgNTAuMiAwIDkzLjggMjQuNyAxNDQuOCA4OS41IDM3LjEtNTAuMSA3OC4xLTg5LjUgMTMwLjYtODkuNSA5OS4xIDAgMTgwLjcgMTI1LjcgMTgwLjcgMjc1LjV6TTI4Ny40IDE5Mi4yYy00Mi45LTYyLjEtNzAuOS04MC41LTEwNC40LTgwLjUtNjEuOSAwLTExMy44IDEwNi4xLTExMy44IDIxMCAwIDQ4LjUgMTguNSA3NS43IDQ5LjYgNzUuNyAzMC4yIDAgNDktMTkgMTAzLjItMTAzLjggMCAwIDI0LjctMzkuMSA2NS40LTEwMS40ek01MzEuMiAzOTcuNGMzMi4yIDAgNDYuOS0yNy41IDQ2LjktNzQuOSAwLTEyNC4yLTU0LjMtMjI1LjQtMTIzLjItMjI1LjQtMzMuMiAwLTYxLjEgMjUuOS05NC45IDc4IDkuNCAxMy44IDE5LjEgMjkgMjkuMyA0NS40bDM3LjUgNjIuNGM1OC43IDk0LjEgNzMuNSAxMTQuNSAxMDQuNCAxMTQuNXoiXX0sbWlyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImNyZWF0aXZlLWNvbW1vbnMtc2hhcmUiLGljb246WzUxMiw1MTIsW10sImY0ZjIiLCJNMjU1LjYgOEMzOTcuNCA4IDUwNCAxMTguMSA1MDQgMjU2IDUwNCA0MDMuMSAzODUuNSA1MDQgMjU1LjYgNTA0IDEyMS42IDUwNCA4IDM5NC41IDggMjU2IDggMTIzLjEgMTEyLjcgOCAyNTUuNiA4em0uOCA0NC43Yy0xMTguMiAwLTIwMy43IDk3LjktMjAzLjcgMjAzLjMgMCAxMDkuOCA5MS4yIDIwMi44IDIwMy43IDIwMi44IDEwMy4yIDAgMjAyLjgtODEuMSAyMDIuOC0yMDIuOCAuMS0xMTMuOC05MC4yLTIwMy4zLTIwMi44LTIwMy4zem0xMDEgMTMyLjRjNy44IDAgMTMuNyA2LjEgMTMuNyAxMy43bDAgMTgyLjVjMCA3LjctNi4xIDEzLjctMTMuNyAxMy43bC0xMzUuMSAwYy03LjcgMC0xMy43LTYtMTMuNy0xMy43bDAtNTQtNTQgMGMtNy44IDAtMTMuNy02LTEzLjctMTMuN2wwLTE4Mi41YzAtOC4yIDYuNi0xMi43IDEyLjQtMTMuN2wxMzYuNCAwYzcuNyAwIDEzLjcgNiAxMy43IDEzLjdsMCA1NCA1NCAwek0xNjcuOSAzMDAuM2w0MC43IDAgMC0xMDEuNGMwLTcuNCA1LjgtMTIuNiAxMi0xMy43bDU1LjggMCAwLTQwLjMtMTA4LjUgMCAwIDE1NS40em0xNzYuMi04OC4xbC0xMDguNSAwIDAgMTU1LjQgMTA4LjUgMCAwLTE1NS40eiJdfSxnaXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic3R1ZGlvdmluYXJpIixpY29uOls1MTIsNTEyLFtdLCJmM2Y4IiwiTTQ4MC43IDE4Ny43bDQuMiAyOCAwIDI4LTI1LjEgNDQuMS0zOS44IDc4LjQtNTYuMSA2Ny41LTc5LjEgMzcuOC0xNy43IDI0LjUtNy43IDEyLTkuNiA0czE3LjMtNjMuNiAxOS40LTYzLjYgMjAuMyAuNyAyMC4zIC43bDY2LjctMzguNi05Mi41IDI2LjEtNTUuOSAzNi44LTIyLjggMjgtNi42IDEuNCAyMC44LTczLjYgNi45LTUuNSAyMC43IDEyLjkgODguMy00NS4yIDU2LjgtNTEuNSAxNC44LTY4LjQtMTI1LjQgMjMuMyAxNS4yLTE4LjItMTczLjQtNTMuMyA4MS45LTEwLjUtMTY2LTEyMi45IDExNC45IDE4LjEtMTAxLjMtMTA4IDI1Mi45IDEyNi42LTMxLjUtMzggMTI0LjQgNzQuNC0xNDMuMy05OSAxOC43IDM4LjQtNDkuNi0xOC4xLTQ1LjUtODQuMyAxOTQuNiAxMjItNDIuOS01NS44IDEwOCA5Ni40IDEyLTguOS0yMS0xNi40IDQuMi0zNy44IDM3LjgtMTAuNCAyOS4yIDI0LjcgMTEuNSA0LjItNyA2LjIgOC41IDEyLTEzLjEgNy40LTEwLjMgMjAuMiAxMC41IDIzLjl6Il19LHhpcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJiaXRidWNrZXQiLGljb246WzUxMiw1MTIsWzYxODEwXSwiZjE3MSIsIk0yMi4yIDMyYy0yLjEgMC00LjIgLjQtNi4xIDEuMXMtMy43IDEuOS01LjIgMy40LTIuNyAzLjItMy41IDUuMS0xLjMgNC0xLjMgNi4xYzAgLjkgLjEgMS45IC4yIDIuOEw3NC4xIDQ2Mi43Yy44IDUuMSAzLjQgOS43IDcuMyAxM3M4LjggNS4yIDE0IDUuMmwzMjUuNyAwYzMuOCAuMSA3LjUtMS4zIDEwLjUtMy43czQuOS01LjkgNS41LTkuN0w1MDUgNTAuN2MuNy00LjItLjMtOC40LTIuOC0xMS45cy02LjItNS43LTEwLjQtNi40Yy0uOS0uMS0xLjktLjItMi44LS4yTDIyLjIgMzJ6TTMwOC4xIDMyOS44bC0xMDQgMC0yOC4xLTE0NyAxNTcuMyAwLTI1LjIgMTQ3eiJdfSxiaXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidmsiLGljb246WzQ0OCw1MTIsW10sImYxODkiLCJNMzEuNSA2My41QzAgOTUgMCAxNDUuNyAwIDI0N0wwIDI2NUMwIDM2Ni4zIDAgNDE3IDMxLjUgNDQ4LjVTMTEzLjcgNDgwIDIxNSA0ODBsMTcuOSAwYzEwMS40IDAgMTUyLjEgMCAxODMuNS0zMS41UzQ0OCAzNjYuMyA0NDggMjY1bDAtMTcuOWMwLTEwMS40IDAtMTUyLjEtMzEuNS0xODMuNVMzMzQuMyAzMiAyMzMgMzJMMjE1IDMyQzExMy43IDMyIDYzIDMyIDMxLjUgNjMuNXpNNzUuNiAxNjguM2w1MS4xIDBjMS43IDg1LjUgMzkuNCAxMjEuNyA2OS4zIDEyOS4ybDAtMTI5LjIgNDguMiAwIDAgNzMuN2MyOS41LTMuMiA2MC41LTM2LjggNzAuOS03My43bDQ4LjIgMGMtMy45IDE5LjItMTEuOCAzNy4zLTIzLjEgNTMuM3MtMjUuNyAyOS41LTQyLjUgMzkuNmMxOC43IDkuMyAzNS4yIDIyLjQgNDguNCAzOC41czIyLjkgMzQuOSAyOC4zIDU1bC01MyAwYy00LjktMTcuNS0xNC44LTMzLjEtMjguNi00NXMtMzAuNy0xOS40LTQ4LjctMjEuNmwwIDY2LjYtNS44IDBjLTEwMi4xIDAtMTYwLjMtNzAtMTYyLjgtMTg2LjV6Il19LHZpcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJnaXRodWIiLGljb246WzUxMiw1MTIsW10sImYwOWIiLCJNMTczLjkgMzk3LjRjMCAyLTIuMyAzLjYtNS4yIDMuNi0zLjMgLjMtNS42LTEuMy01LjYtMy42IDAtMiAyLjMtMy42IDUuMi0zLjYgMy0uMyA1LjYgMS4zIDUuNiAzLjZ6bS0zMS4xLTQuNWMtLjcgMiAxLjMgNC4zIDQuMyA0LjkgMi42IDEgNS42IDAgNi4yLTJzLTEuMy00LjMtNC4zLTUuMmMtMi42LS43LTUuNSAuMy02LjIgMi4zem00NC4yLTEuN2MtMi45IC43LTQuOSAyLjYtNC42IDQuOSAuMyAyIDIuOSAzLjMgNS45IDIuNiAyLjktLjcgNC45LTIuNiA0LjYtNC42LS4zLTEuOS0zLTMuMi01LjktMi45ek0yNTIuOCA4Yy0xMzguNyAwLTI0NC44IDEwNS4zLTI0NC44IDI0NCAwIDExMC45IDY5LjggMjA1LjggMTY5LjUgMjM5LjIgMTIuOCAyLjMgMTcuMy01LjYgMTcuMy0xMi4xIDAtNi4yLS4zLTQwLjQtLjMtNjEuNCAwIDAtNzAgMTUtODQuNy0yOS44IDAgMC0xMS40LTI5LjEtMjcuOC0zNi42IDAgMC0yMi45LTE1LjcgMS42LTE1LjQgMCAwIDI0LjkgMiAzOC42IDI1LjggMjEuOSAzOC42IDU4LjYgMjcuNSA3Mi45IDIwLjkgMi4zLTE2IDguOC0yNy4xIDE2LTMzLjctNTUuOS02LjItMTEyLjMtMTQuMy0xMTIuMy0xMTAuNSAwLTI3LjUgNy42LTQxLjMgMjMuNi01OC45LTIuNi02LjUtMTEuMS0zMy4zIDIuNi02Ny45IDIwLjktNi41IDY5IDI3IDY5IDI3IDIwLTUuNiA0MS41LTguNSA2Mi44LTguNXM0Mi44IDIuOSA2Mi44IDguNWMwIDAgNDguMS0zMy42IDY5LTI3IDEzLjcgMzQuNyA1LjIgNjEuNCAyLjYgNjcuOSAxNiAxNy43IDI1LjggMzEuNSAyNS44IDU4LjkgMCA5Ni41LTU4LjkgMTA0LjItMTE0LjggMTEwLjUgOS4yIDcuOSAxNyAyMi45IDE3IDQ2LjQgMCAzMy43LS4zIDc1LjQtLjMgODMuNiAwIDYuNSA0LjYgMTQuNCAxNy4zIDEyLjEgMTAwLTMzLjIgMTY3LjgtMTI4LjEgMTY3LjgtMjM5IDAtMTM4LjctMTEyLjUtMjQ0LTI1MS4yLTI0NHpNMTA1LjIgMzUyLjljLTEuMyAxLTEgMy4zIC43IDUuMiAxLjYgMS42IDMuOSAyLjMgNS4yIDEgMS4zLTEgMS0zLjMtLjctNS4yLTEuNi0xLjYtMy45LTIuMy01LjItMXptLTEwLjgtOC4xYy0uNyAxLjMgLjMgMi45IDIuMyAzLjkgMS42IDEgMy42IC43IDQuMy0uNyAuNy0xLjMtLjMtMi45LTIuMy0zLjktMi0uNi0zLjYtLjMtNC4zIC43em0zMi40IDM1LjZjLTEuNiAxLjMtMSA0LjMgMS4zIDYuMiAyLjMgMi4zIDUuMiAyLjYgNi41IDEgMS4zLTEuMyAuNy00LjMtMS4zLTYuMi0yLjItMi4zLTUuMi0yLjYtNi41LTF6bS0xMS40LTE0LjdjLTEuNiAxLTEuNiAzLjYgMCA1LjlzNC4zIDMuMyA1LjYgMi4zYzEuNi0xLjMgMS42LTMuOSAwLTYuMi0xLjQtMi4zLTQtMy4zLTUuNi0yeiJdfSx5aXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiY29kaWVwaWUiLGljb246WzUxMiw1MTIsW10sImYyODQiLCJNNDQyLjUgMjAyLjljMzAuNyAwIDMzLjUgNTMuMS0uMyA1My4xbC0xMC44IDAgMCA0NC4zLTI2LjYgMCAwLTk3LjQgMzcuNyAwek00OTIgMzUyLjZDNDQ5LjkgNDQ0LjUgMzcwLjQgNTA0IDI2OCA1MDQgMTMxIDUwNCAyMCAzOTMgMjAgMjU2UzEzMSA4IDI2OCA4Yzk3LjQgMCAxNzIuOCA1My43IDIxOC4yIDEzOC40TDMwMC4yIDI1NS4yIDQ5MiAzNTIuNnptLTM4LjUgMTIuNWwtNjAuMy0zMC43Yy0yNy4xIDQ0LjMtNzAuNCA3MS40LTEyMi40IDcxLjQtODIuNSAwLTE0OS4yLTY2LjctMTQ5LjItMTQ4LjkgMC04Mi41IDY2LjctMTQ5LjIgMTQ5LjItMTQ5LjIgNDguNCAwIDg4LjkgMjMuNSAxMTYuOSA2My40bDU5LjUtMzQuNkM0MDYuNSA3My45IDM0Mi41IDM2LjUgMjY4IDM2LjUgMTQ2LjggMzYuNSA0OC41IDEzNC44IDQ4LjUgMjU2UzE0Ni44IDQ3NS41IDI2OCA0NzUuNWM3OC42IDAgMTQ2LjUtNDIuMSAxODUuNS0xMTAuNHoiXX0sd2lyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InBpZWQtcGlwZXIiLGljb246WzQ0OCw1MTIsW10sImYyYWUiLCJNNDQwLjIgMjMuMmMtMjYuNyA2LjgtNjguMSAyOC41LTExNC42IDY3LjUtMzAuOS0xNy41LTY1LjgtMjYuNy0xMDEuNC0yNi43LTExNC45IDAtMjA4IDkzLjEtMjA4IDIwOHM5My4xIDIwOCAyMDggMjA4IDIwOC05My4xIDIwOC0yMDhjLjEtNTQuMS0yMS0xMDYuMS01OC43LTE0NC44LTYuNiA4LjUtMTIuMyAxNy43LTE3IDI3LjQgMjguOSAzMi4zIDQ0LjggNzQuMSA0NC45IDExNy40IDAgOTcuNy03OS40IDE3Ny4xLTE3Ny4xIDE3Ny4xLTMwLjggMC02MS04LjEtODcuNi0yMy40IDgyLjktMTA3LjMgMTUwLjgtMzcuOCAxODQuMy0yMjYuNiA1LjgtMzIuNiAyOC05NC4zIDEyNi4yLTE2MC4yIDguMS01LjQgMi40LTE4LjEtNy0xNS43ek0xMDkuMyA0MDYuNEM4OS44IDM4OS44IDc0LjIgMzY5LjIgNjMuNSAzNDZzLTE2LjMtNDguNS0xNi4zLTc0YzAtOTcuNyA3OS40LTE3Ny4xIDE3Ny4xLTE3Ny4xIDI2LjYgMCA1Mi44IDYuMSA3Ni42IDE3LjgtNjYgNjIuMS0xMjYuOSAxNTIuOS0xOTEuNiAyOTMuOHoiXX0sTWlyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InJhc3BiZXJyeS1waSIsaWNvbjpbNDQ4LDUxMixbXSwiZjdiYiIsIk0zOTIuNSAyMzIuNWwtMy43LTYuNWMuMS00Ni40LTIxLjQtNjUuMy00Ni41LTc5LjcgNy42LTIgMTUuNC0zLjYgMTcuNi0xMy4yIDEzLjEtMy4zIDE1LjgtOS40IDE3LjEtMTUuOCAzLjQtMi4zIDE0LjgtOC43IDEzLjYtMTkuNyA2LjQtNC40IDEwLTEwLjEgOC4xLTE4LjEgNi45LTcuNSA4LjctMTMuNyA1LjgtMTkuNCA4LjMtMTAuMyA0LjYtMTUuNiAxLjEtMjAuOSA2LjItMTEuMiAuNy0yMy4yLTE2LjYtMjEuMi02LjktMTAuMS0yMS45LTcuOC0yNC4yLTcuOC0yLjYtMy4yLTYtNi0xNi41LTQuNy02LjgtNi4xLTE0LjQtNS0yMi4zLTIuMS05LjMtNy4zLTE1LjUtMS40LTIyLjYgLjgtMTEuMy0zLjYtMTMuOSAxLjMtMTkuNCAzLjQtMTIuMy0yLjYtMTYuMSAzLTIyIDguOWwtNi45LS4xYy0xOC42IDEwLjgtMjcuOCAzMi44LTMxLjEgNDQuMS0zLjMtMTEuMy0xMi41LTMzLjMtMzEuMS00NC4xbC02LjkgLjFjLTUuOS01LjktOS43LTExLjUtMjItOC45LTUuNi0yLTguMS03LTE5LjQtMy40LTQuNi0xLjQtOC45LTQuNC0xMy45LTQuMy0yLjYgLjEtNS41IDEtOC43IDMuNS03LjktMy0xNS41LTQtMjIuMyAyLjEtMTAuNS0xLjMtMTQgMS40LTE2LjUgNC43LTIuMyAwLTE3LjMtMi4zLTI0LjIgNy44LTE3LjMtMi0yMi43IDEwLTE2LjUgMjEuMi0zLjUgNS40LTcuMiAxMC43IDEuMSAyMC45LTIuOSA1LjctMS4xIDExLjkgNS44IDE5LjQtMS44IDggMS44IDEzLjcgOC4xIDE4LjEtMS4yIDExIDEwLjIgMTcuNCAxMy42IDE5LjcgMS4zIDYuNCA0IDEyLjQgMTcuMSAxNS44IDIuMiA5LjUgMTAgMTEuMiAxNy42IDEzLjItMjUuMSAxNC40LTQ2LjYgMzMuMy00Ni41IDc5LjdsLTMuNyA2LjVjLTI4LjggMTcuMi01NC43IDcyLjctMTQuMiAxMTcuNyAyLjYgMTQuMSA3LjEgMjQuMiAxMSAzNS40IDUuOSA0NS4yIDQ0LjUgNjYuMyA1NC42IDY4LjggMTQuOSAxMS4yIDMwLjggMjEuOCA1Mi4yIDI5LjIgMjAuMyAyMC42IDQyLjMgMjguNCA2NC4zIDI4LjRsMSAwYzIyLjEgMCA0NC03LjggNjQuMi0yOC40IDIxLjUtNy40IDM3LjMtMTggNTIuMi0yOS4yIDEwLjItMi41IDQ4LjctMjMuNiA1NC42LTY4LjggMy45LTExLjIgOC40LTIxLjMgMTEtMzUuNCA0MC42LTQ1LjEgMTQuNy0xMDAuNS0xNC0xMTcuN3ptLTIyLjItOGMtMS41IDE4LjctOTguOS02NS4xLTgyLjEtNjcuOSA0NS43LTcuNSA4My42IDE5LjIgODIuMSA2Ny45em0tNDMgOTMuMWMtMjQuNSAxNS44LTU5LjggNS42LTc4LjgtMjIuOHMtMTQuNi02NC4yIDkuOS04MCA1OS44LTUuNiA3OC44IDIyLjggMTQuNiA2NC4yLTkuOSA4MHpNMjU5LjQgMjkuM2MuOCA0LjIgMS44IDYuOCAyLjkgNy42IDUuNC01LjggOS44LTExLjcgMTYuOC0xNy4zIDAgMy4zLTEuNyA2LjggMi41IDkuNCAzLjctNSA4LjgtOS41IDE1LjUtMTMuMy0zLjIgNS42LS42IDcuMyAxLjIgOS42IDUuMS00LjQgMTAtOC44IDE5LjQtMTIuMy0yLjYgMy4xLTYuMiA2LjItMi40IDkuOCA1LjMtMy4zIDEwLjYtNi42IDIzLjEtOC45LTIuOCAzLjEtOC43IDYuMy01LjEgOS40IDYuNi0yLjUgMTQtNC40IDIyLjEtNS40LTMuOSAzLjItNy4xIDYuMy0zLjkgOC44IDcuMS0yLjIgMTYuOS01LjEgMjYuNC0yLjZsLTYgNi4xYy0uNyAuOCAxNC4xIC42IDIzLjkgLjgtMy42IDUtNy4yIDkuNy05LjMgMTguMiAxIDEgNS44IC40IDEwLjQgMC00LjcgOS45LTEyLjggMTIuMy0xNC43IDE2LjYgMi45IDIuMiA2LjggMS42IDExLjIgLjEtMy40IDYuOS0xMC40IDExLjctMTYgMTcuMyAxLjQgMSAzLjkgMS42IDkuNyAuOS01LjIgNS41LTExLjQgMTAuNS0xOC44IDE1IDEuMyAxLjUgNS44IDEuNSAxMCAxLjYtNi43IDYuNS0xNS4zIDkuOS0yMy40IDE0LjIgNCAyLjcgNi45IDIuMSAxMCAyLjEtNS43IDQuNy0xNS40IDcuMS0yNC40IDEwIDEuNyAyLjcgMy40IDMuNCA3LjEgNC4xLTkuNSA1LjMtMjMuMiAyLjktMjcgNS42IC45IDIuNyAzLjYgNC40IDYuNyA1LjgtMTUuNCAuOS01Ny4zLS42LTY1LjQtMzIuMyAxNS43LTE3LjMgNDQuNC0zNy41IDkzLjctNjIuNi0zOC40IDEyLjgtNzMgMzAtMTAyIDUzLjUtMzQuMy0xNS45LTEwLjgtNTUuOSA1LjgtNzEuOHpNMjI1IDE0My45YzI0LjItLjMgNTQuMSAxNy44IDU0IDM0LjctLjEgMTUtMjEgMjcuMS01My44IDI2LjktMzIuMS0uNC01My43LTE1LjItNTMuNi0yOS44IDAtMTEuOSAyNi4yLTMyLjUgNTMuNC0zMS44ek0xMDIgMTMxLjFjMy43LS43IDUuNC0xLjUgNy4xLTQuMS05LTIuOC0xOC43LTUuMy0yNC40LTEwIDMuMSAwIDYgLjcgMTAtMi4xLTguMS00LjMtMTYuNy03LjctMjMuNC0xNC4yIDQuMi0uMSA4LjcgMCAxMC0xLjYtNy40LTQuNS0xMy42LTkuNS0xOC44LTE1IDUuOCAuNyA4LjMgLjEgOS43LS45LTUuNi01LjYtMTIuNy0xMC40LTE2LTE3LjMgNC4zIDEuNSA4LjMgMiAxMS4yLS4xLTEuOS00LjItMTAtNi43LTE0LjctMTYuNiA0LjYgLjQgOS40IDEgMTAuNCAwLTIuMS04LjUtNS44LTEzLjMtOS4zLTE4LjIgOS44LS4xIDI0LjYgMCAyMy45LS44bC02LTYuMWM5LjUtMi41IDE5LjMgLjQgMjYuNCAyLjYgMy4yLTIuNS0uMS01LjYtMy45LTguOCA4LjEgMS4xIDE1LjQgMi45IDIyLjEgNS40IDMuNS0zLjEtMi4zLTYuMy01LjEtOS40IDEyLjUgMi4zIDE3LjggNS42IDIzLjEgOC45IDMuOC0zLjYgLjItNi43LTIuNC05LjggOS40IDMuNCAxNC4zIDcuOSAxOS40IDEyLjMgMS43LTIuMyA0LjQtNCAxLjItOS42IDYuNyAzLjggMTEuOCA4LjMgMTUuNSAxMy4zIDQuMS0yLjYgMi41LTYuMiAyLjUtOS40IDcgNS42IDExLjQgMTEuNSAxNi44IDE3LjMgMS4xLS44IDItMy40IDIuOS03LjYgMTYuNiAxNS45IDQwLjEgNTUuOSA2IDcxLjgtMjktMjMuNS02My42LTQwLjctMTAyLTUzLjUgNDkuMyAyNSA3OCA0NS4zIDkzLjcgNjIuNi04IDMxLjgtNTAgMzMuMi02NS40IDMyLjMgMy4xLTEuNCA1LjgtMy4yIDYuNy01LjgtNC0yLjgtMTcuNi0uNC0yNy4yLTUuNnptNjAuMSAyNC4xYzE2LjggMi44LTgwLjYgODYuNS04Mi4xIDY3LjktMS41LTQ4LjcgMzYuNS03NS41IDgyLjEtNjcuOXpNNTguNyAzNDJjLTIzLjctMTguOC0zMS4zLTczLjcgMTIuNi05OC4zIDI2LjUtNyA5IDEwNy44LTEyLjYgOTguM3ptOTEgOTguMmMtMTMuMyA3LjktNDUuOCA0LjctNjguOC0yNy45LTE1LjUtMjcuNC0xMy41LTU1LjItMi42LTYzLjQgMTYuMy05LjggNDEuNSAzLjQgNjAuOSAyNS42IDE2LjkgMjAgMjQuNiA1NS4zIDEwLjUgNjUuN3pNMTIzLjMgMzIwLjVjLTI0LjUtMTUuOC0yOC45LTUxLjYtOS45LTgwczU0LjMtMzguNiA3OC44LTIyLjggMjguOSA1MS42IDkuOSA4MGMtMTkuMSAyOC40LTU0LjQgMzguNi03OC44IDIyLjh6TTIyNS41IDQ5NmMtMjkuNCAxLjItNTguMi0yMy43LTU3LjgtMzIuMy0uNC0xMi43IDM1LjgtMjIuNiA1OS4zLTIyIDIzLjctMSA1NS42IDcuNSA1NS43IDE4LjkgLjUgMTEtMjguOCAzNS45LTU3LjIgMzUuNHptNTguOS0xMjQuOWMuMiAyOS43LTI2LjIgNTMuOC01OC44IDU0cy01OS4yLTIzLjgtNTkuNC01My40bDAtLjZjLS4yLTI5LjcgMjYuMi01My44IDU4LjgtNTRzNTkuMiAyMy44IDU5LjQgNTMuNGwwIC42em04Mi4yIDQyLjdjLTI1LjMgMzQuNi01OS42IDM1LjktNzIuMyAyNi4zLTEzLjMtMTIuNC0zLjItNTAuOSAxNS4xLTcyIDIwLjktMjMuMyA0My4zLTM4LjUgNTguOS0yNi42IDEwLjUgMTAuMyAxNi43IDQ5LjEtMS43IDcyLjN6bTIyLjktNzMuMmMtMjEuNSA5LjQtMzktMTA1LjMtMTIuNi05OC4zIDQzLjkgMjQuNyAzNi4zIDc5LjYgMTIuNiA5OC4zeiJdfSxraXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiY3NzMyIsaWNvbjpbNTEyLDUxMixbXSwiZjEzYyIsIk00ODAgMzJsLTY0IDM2OC0yMjMuMyA4MC0xOTIuNy04MCAxOS42LTk0LjggODIgMC04IDQwLjYgMTE2LjQgNDQuNCAxMzQuMS00NC40IDE4LjgtOTcuMS0zMzMuNCAwIDE2LTgyIDMzMy43IDAgMTAuNS01Mi43LTMzMy40IDAgMTYuMy04MiA0MDcuNCAweiJdfSxTaXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiaHVic3BvdCIsaWNvbjpbNDQ4LDUxMixbXSwiZjNiMiIsIk0yMzUuOCAyMTEuNmMtMjUuMSAyMy43LTQwLjggNTcuMy00MC44IDk0LjYgMCAyOS4zIDkuNyA1Ni4zIDI2IDc4TDE3MS41IDQzNGMtNC40LTEuNi05LjEtMi41LTE0LTIuNS0xMC44IDAtMjAuOSA0LjItMjguNSAxMS44cy0xMS44IDE3LjgtMTEuOCAyOC42IDQuMiAyMC45IDExLjggMjguNSAxNy44IDExLjYgMjguNSAxMS42YzEwLjggMCAyMC45LTMuOSAyOC42LTExLjYgNy42LTcuNiAxMS44LTE3LjggMTEuOC0yOC41IDAtNC4yLS42LTguMi0xLjktMTIuMWw1MC01MC4yYzIyIDE2LjkgNDkuNCAyNi45IDc5LjMgMjYuOSA3MS45IDAgMTMwLTU4LjMgMTMwLTEzMC4yIDAtNjUuMi00Ny43LTExOS4yLTExMC4yLTEyOC43bDAtNjEuNmMxNy41LTcuNCAyOC4yLTIzLjggMjguMi00Mi45IDAtMjYuMS0yMC45LTQ3LjktNDctNDcuOVMyNzkuNiA0NyAyNzkuNiA3My4xYzAgMTkuMSAxMC43IDM1LjUgMjguMiA0Mi45bDAgNjEuMmMtMTUuMiAyLjEtMjkuNiA2LjctNDIuNyAxMy42LTI3LjYtMjAuOS0xMTcuNS04NS43LTE2OC45LTEyNC44IDEuMi00LjQgMi05IDItMTMuOCAwLTI4LjgtMjMuNS01Mi4yLTUyLjQtNTIuMi0yOC44IDAtNTIuMiAyMy40LTUyLjIgNTIuMiAwIDI4LjkgMjMuNCA1Mi4zIDUyLjIgNTIuMyA5LjggMCAxOC45LTIuOSAyNi44LTcuNkwyMzUuOCAyMTEuNnptODkuNSAyNS42YTY5IDY5IDAgMSAxIDAgMTM4IDY5IDY5IDAgMSAxIDAtMTM4eiJdfSx6aXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiY21wbGlkIixpY29uOls2NDAsNTEyLFtdLCJlMzYwIiwiTTIyNi4xIDM4OC4yYzAtLjctLjItMS41LS42LTIuMXMtMS0xLjEtMS43LTEuNGMtLjUtLjItMS4xLS40LTEuNi0uNGwtMTQ5LjYgMGMtMy4xIDAtNi4yLS44LTguOS0yLjJzLTUuMS0zLjUtNi45LTYuMS0yLjktNS41LTMuMy04LjYgMC02LjIgMS4xLTkuMUw4MS42IDI1NS43YzItNy4yIDYuMi0xMy41IDEyLTE4LjJzMTIuOS03LjQgMjAuNC03LjhsMTQ4LjYgMGMxLjUtLjEgMi45LS42IDQtMS42czItMi4yIDIuNC0zLjZsMTAuOC00MS4xYy40LTEgLjMtMi0uMS0yLjlzLTEuMi0xLjYtMi4xLTJjLS40LS4yLS45LS4zLTEuNC0uMy0uMSAwLS4xIDAtLjIgMGwtMTQ4LjUgMGMtMjIuMiAxLjItNDMuNCA5LjItNjAuOCAyM3MtMzAgMzIuNy0zNi4yIDU0LjFMMy41IDM1OC44Yy0zLjIgOC43LTQuMiAxOC0zIDI3LjFzNC42IDE3LjkgOS45IDI1LjUgMTIuMyAxMy44IDIwLjUgMTggMTcuMyA2LjUgMjYuNSA2LjZjMSAwIDEuOSAwIDIuOS0uMWwxNDguNiAwYzEuNS0uMSAyLjktLjcgNC0xLjZzMi0yLjIgMi40LTMuNmwxMC43LTQxLjFjLjItLjUgLjMtLjkgLjMtMS40em04MC41LTMwN2MuMi0uNCAuMy0uOSAuMy0xLjQgMC0uNS0uMS0xLS4zLTEuNXMtLjUtLjktLjgtMS4yLS44LS42LTEuMi0uOC0xLS4zLTEuNS0uM2wtNDEuMiAwYy0xLjUgLjEtMi45IC42LTQgMS42cy0yIDIuMi0yLjQgMy42bC0yMS4zIDgwLjkgNTEuMSAwIDIxLjQtODAuOXptLTEyNi4zIDI4N2w1MS4xIDAgMzItMTIyLjYtNTEuMSAwLTMyIDEyMi42ek01MTEuOSA3OS43YzAtMS0uNS0xLjktMS4yLTIuNnMtMS43LTEuMS0yLjYtMS4xYy0uMSAwLS4xIDAtLjIgMGwtNDEgMGMtMS41IC4xLTIuOSAuNi00LjEgMS41cy0yIDIuMi0yLjUgMy42TDM2OC45IDQzMC42Yy0uMiAuNC0uMyAuOS0uMyAxLjMgMCAxIC40IDIgMS4xIDIuN3MxLjcgMS4xIDIuNyAxLjFsNDEuMiAwYzEuNS0uMSAyLjktLjYgNC0xLjZzMi0yLjIgMi40LTMuNkw1MTEuNSA4MS4yYy4yLS41IC4zLTEgLjMtMS41ek0zMjQuNiAzODQuNWwtNDEgMGMtMS41IC4xLTIuOSAuNy00IDEuNnMtMiAyLjItMi40IDMuNmwtMTAuNyA0MS4xYy0uMiAuNC0uMyAuOS0uMyAxLjQgMCAuNSAuMSAxIC4zIDEuNXMuNSAuOSAuOCAxLjIgLjggLjYgMS4yIC44IDEgLjMgMS41IC4zYy4xIDAgLjIgMCAuMyAwbDQwLjkgMGMxLjUtLjEgMi45LS42IDQtMS42czItMi4yIDIuNC0zLjZsMTAuOC00MS4xYy4yLS42IC4zLTEuMiAuMy0xLjhzLS4zLTEuMi0uNi0xLjctLjgtLjktMS4zLTEuMi0xLjItLjQtMS44LS40Yy0uMSAwLS4yIDAtLjMgMGwwIDB6TTYzNiA3Ni4xbC00MSAwYy0xLjUgLjEtMi45IC42LTQgMS41cy0yIDIuMi0yLjQgMy42TDQ5Ny4xIDQzMC42Yy0uMiAuNC0uMiAuOS0uMiAxLjMgMCAxIC40IDIgMS4xIDIuN3MxLjcgMS4xIDIuNyAxLjFsNDEuMSAwYzEuNS0uMSAyLjktLjYgNC0xLjZzMi0yLjIgMi40LTMuNkw2MzkuNyA4MS4yYy4yLS41IC4zLTEgLjMtMS41LS4xLTEtLjUtMS45LTEuMi0yLjVzLTEuNi0xLTIuNi0xYy0uMSAwLS4xIDAtLjIgMGwwLS4xek0zNzEuNiAyMjUuMmwxMC44LTQxLjFjLjItLjQgLjItLjkgLjItMS40IDAtMS0uNC0yLTEuMS0yLjdzLTEuNy0xLjEtMi43LTEuMWwtNDEuMyAwYy0xLjUgLjEtMi45IC43LTQgMS42cy0yIDIuMi0yLjQgMy42bC0xMC44IDQxLjFjLS4yIC41LS4zIDEtLjMgMS41bDAgLjJjLjEgMSAuNSAxLjggMS4yIDIuNXMxLjYgMSAyLjYgMWMuMSAwIC4yIDAgLjMgMGw0MS4xIDBjMS41LS4xIDIuOS0uNiA0LTEuNnMyLTIuMiAyLjQtMy42eiJdfSxDaXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZHlhbG9nIixpY29uOls0NDgsNTEyLFtdLCJmMzk5IiwiTTE2IDMybDAgMTE5LjIgNjQgMCAwLTU1LjIgMTA3LjIgMEMzMDAuNiA5NiAzNjggMTc2LjIgMzY4IDI1NS45IDM2OCAzMzIgMzA5LjQgNDE2IDE4Ny4yIDQxNmwtMTcxLjIgMCAwIDY0IDE3MS4yIDBDMzQ3LjkgNDgwIDQzMiAzNjcuMyA0MzIgMjU1LjkgNDMyIDE5Ny4yIDQwOS45IDE0Mi41IDM2OS43IDEwMS42IDMyNC45IDU2IDI2MS43IDMyIDE4Ny4yIDMyTDE2IDMyeiJdfSxfaXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZWxlbWVudG9yIixpY29uOls1MTIsNTEyLFtdLCJmNDMwIiwiTS41IDI1NmMwIDE0MSAxMTMuNiAyNTUgMjU0LjYgMjU1IDE0MiAwIDI1Ni0xMTQgMjU2LTI1NSAwLTE0MC0xMTQtMjUzLjktMjU2LTI1My45LTE0MSAwLTI1NC42IDExMy45LTI1NC42IDI1My45ek0xOTIuMSAxNTBsMCAyMTMtNDMgMCAwLTIxMyA0MyAwem00MiAwbDEyOCAwIDAgNDMtMTI4IDAgMC00M3ptMTI4IDg1bDAgNDMtMTI4IDAgMC00MyAxMjggMHptLTEyOCA4NWwxMjggMCAwIDQzLTEyOCAwIDAtNDN6Il19LFRpcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJmaXJzdC1vcmRlciIsaWNvbjpbNDQ4LDUxMixbXSwiZjJiMCIsIk0xMy4zIDIyOS4yYy4xLS4xIC4yLS4zIC4zLS40IDAgLjEgMCAuMy0uMSAuNGwtLjIgMHpNMjI0LjQgOTYuNmMtNy4xIDAtMTQuNiAuNi0yMS40IDEuN2wzLjcgNjcuNC0yMi02NGMtMTQuMyAzLjctMjcuNyA5LjQtNDAgMTYuNmwyOS40IDYxLjQtNDUuMS01MC45Yy0xMS40IDguOS0yMS43IDE5LjEtMzAuNiAzMC45bDUwLjYgNDUuNC02MS4xLTI5LjdjLTcuMSAxMi4zLTEyLjkgMjUuNy0xNi42IDQwbDY0LjMgMjIuNi02OC00Yy0uOSA3LjEtMS40IDE0LjYtMS40IDIycy42IDE0LjYgMS40IDIxLjdsNjcuNy00LTY0IDIyLjZjMy43IDE0LjMgOS40IDI3LjcgMTYuNiA0MC4zTDE0OSAzMDYuOSA5OC4xIDM1MmM4LjkgMTEuNyAxOS4xIDIyLjMgMzAuOSAzMC45bDQ0LjktNTAuOS0yOS41IDYxLjRjMTIuMyA3LjQgMjUuNyAxMy4xIDQwIDE2LjlsMjIuMy02NC42LTQgNjhjNy4xIDEuMSAxNC42IDEuNyAyMS43IDEuNyA3LjQgMCAxNC42LS42IDIxLjctMS43bC00LTY4LjYgMjIuNiA2NS4xYzE0LjMtNCAyNy43LTkuNCA0MC0xNi45bC0yOS40LTYxLjMgNDQuOSA1MC45YzExLjctOC45IDIyLTE5LjEgMzAuNi0zMC45bC01MC42LTQ1LjEgNjEuMSAyOS40YzcuMS0xMi4zIDEyLjktMjUuNyAxNi42LTQwLjNsLTY0LTIyLjMgNjcuNCA0YzEuMS03LjEgMS40LTE0LjMgMS40LTIxLjdzLS4zLTE0LjktMS40LTIybC02Ny43IDQgNjQtMjIuM2MtMy43LTE0LjMtOS4xLTI4LTE2LjYtNDAuM2wtNjAuOSAyOS43IDUwLjYtNDUuNGMtOC45LTExLjctMTkuMS0yMi0zMC42LTMwLjlsLTQ1LjEgNTAuOSAyOS40LTYxLjFjLTEyLjMtNy40LTI1LjctMTMuMS00MC0xNi45bC0yMi4zIDY0LjMgNC02Ny43Yy03LjEtMS4yLTE0LjMtMS43LTIxLjctMS43ek00NDMuOCAxMjhMNDQzLjggMzg0IDIyNC40IDUxMiA1IDM4NCA1IDEyOCAyMjQuNCAwIDQ0My44IDEyOHptLTE3LjEgMTAuM2wtMjAyLjMtMTE3LjQtMjAyLjMgMTE3LjQgMCAyMzUuMSAyMDIuMyAxMTcuNyAyMDIuMy0xMTcuNyAwLTIzNS4xek0yMjQuNCAzNy4xbDE4Ny43IDEwOS40IDAgMjE4LjktMTg3LjcgMTA5LjUtMTg3LjctMTA5LjUgMC0yMTguOCAxODcuNy0xMDkuNXptMCA1MC45Yy05Mi4zIDAtMTY2LjkgNzUuMS0xNjYuOSAxNjggMCA5Mi42IDc0LjYgMTY3LjcgMTY2LjkgMTY3LjcgOTIgMCAxNjYuOS03NS4xIDE2Ni45LTE2Ny43IDAtOTIuOS03NC45LTE2OC0xNjYuOS0xNjh6Il19LExpcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJkcmliYmJsZSIsaWNvbjpbNTEyLDUxMixbXSwiZjE3ZCIsIk0yNTYgOGEyNDggMjQ4IDAgMSAwIDAgNDk2IDI0OCAyNDggMCAxIDAgMC00OTZ6TTQyMCAxMjIuNGMyOS41IDM2IDQ3LjQgODIgNDcuOCAxMzItNy0xLjUtNzctMTUuNy0xNDcuNS02LjgtNS44LTE0LTExLjItMjYuNC0xOC42LTQxLjYgNzguMy0zMiAxMTMuOC03Ny41IDExOC4zLTgzLjV6TTM5Ni40IDk3LjljLTMuOCA1LjQtMzUuNyA0OC4zLTExMSA3Ni41LTM0LjctNjMuOC03My4yLTExNi4yLTc5LTEyNCA2Ny4yLTE2LjIgMTM4IDEuMyAxOTAuMSA0Ny41ek0xNjUuOSA2NC42YzUuNiA3LjcgNDMuNCA2MC4xIDc4LjUgMTIyLjUtOTkuMSAyNi4zLTE4Ni40IDI1LjktMTk1LjggMjUuOCAxMy43LTY1LjcgNTgtMTIwLjQgMTE3LjMtMTQ4LjN6TTQ0LjIgMjU2LjNjMC0yLjIgMC00LjMgLjEtNi41IDkuMyAuMiAxMTEuOSAxLjUgMjE3LjctMzAuMSA2LjEgMTEuOSAxMS45IDIzLjkgMTcuMiAzNS45LTc2LjYgMjEuNi0xNDYuMiA4My41LTE4MC41IDE0Mi4zLTMzLjgtMzcuNi01NC41LTg3LjItNTQuNS0xNDEuNnpNMTI2IDQyMy40YzIyLjEtNDUuMiA4Mi4yLTEwMy42IDE2Ny42LTEzMi44IDI5LjcgNzcuMyA0MiAxNDIuMSA0NS4yIDE2MC42LTY4LjEgMjktMTUwIDIxLjEtMjEyLjgtMjcuOXptMjQ4LjQgOC41Yy0yLjItMTIuOS0xMy40LTc0LjktNDEuMi0xNTEgNjYuNC0xMC42IDEyNC43IDYuOCAxMzEuOSA5LjEtOS40IDU4LjktNDMuMyAxMDkuOC05MC44IDE0MnoiXX0sUnNlPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImxpbmtlZGluIixpY29uOls0NDgsNTEyLFtdLCJmMDhjIiwiTTQxNiAzMkwzMS45IDMyQzE0LjMgMzIgMCA0Ni41IDAgNjQuM0wwIDQ0Ny43QzAgNDY1LjUgMTQuMyA0ODAgMzEuOSA0ODBMNDE2IDQ4MGMxNy42IDAgMzItMTQuNSAzMi0zMi4zbDAtMzgzLjRDNDQ4IDQ2LjUgNDMzLjYgMzIgNDE2IDMyek0xMzUuNCA0MTZsLTY2LjQgMCAwLTIxMy44IDY2LjUgMCAwIDIxMy44LS4xIDB6TTEwMi4yIDk2YTM4LjUgMzguNSAwIDEgMSAwIDc3IDM4LjUgMzguNSAwIDEgMSAwLTc3ek0zODQuMyA0MTZsLTY2LjQgMCAwLTEwNGMwLTI0LjgtLjUtNTYuNy0zNC41LTU2LjctMzQuNiAwLTM5LjkgMjctMzkuOSA1NC45bDAgMTA1LjgtNjYuNCAwIDAtMjEzLjggNjMuNyAwIDAgMjkuMiAuOSAwYzguOS0xNi44IDMwLjYtMzQuNSA2Mi45LTM0LjUgNjcuMiAwIDc5LjcgNDQuMyA3OS43IDEwMS45bDAgMTE3LjJ6Il19LERpcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJjYy1wYXlwYWwiLGljb246WzU3Niw1MTIsW10sImYxZjQiLCJNMTg2LjMgMjU4LjJjMCAxMi4yLTkuNyAyMS41LTIyIDIxLjUtOS4yIDAtMTYtNS4yLTE2LTE1IDAtMTIuMiA5LjUtMjIgMjEuNy0yMiA5LjMgMCAxNi4zIDUuNyAxNi4zIDE1LjV6TTgwLjUgMjA5LjdsLTQuNyAwYy0xLjUgMC0zIDEtMy4yIDIuN2wtNC4zIDI2LjcgOC4yLS4zYzExIDAgMTkuNS0xLjUgMjEuNS0xNC4yIDIuMy0xMy40LTYuMi0xNC45LTE3LjUtMTQuOXptMjg0IDBsLTQuNSAwYy0xLjggMC0zIDEtMy4yIDIuN2wtNC4yIDI2LjcgOC0uM2MxMyAwIDIyLTMgMjItMTgtLjEtMTAuNi05LjYtMTEuMS0xOC4xLTExLjF6TTU3NiA4MGwwIDM1MmMwIDI2LjUtMjEuNSA0OC00OCA0OEw0OCA0ODBjLTI2LjUgMC00OC0yMS41LTQ4LTQ4TDAgODBDMCA1My41IDIxLjUgMzIgNDggMzJsNDgwIDBjMjYuNSAwIDQ4IDIxLjUgNDggNDh6TTEyOC4zIDIxNS40YzAtMjEtMTYuMi0yOC0zNC43LTI4bC00MCAwYy0yLjUgMC01IDItNS4yIDQuN0wzMiAyOTQuMmMtLjMgMiAxLjIgNCAzLjIgNGwxOSAwYzIuNyAwIDUuMi0yLjkgNS41LTUuN2w0LjUtMjYuNmMxLTcuMiAxMy4yLTQuNyAxOC00LjcgMjguNiAwIDQ2LjEtMTcgNDYuMS00NS44em04NC4yIDguOGwtMTkgMGMtMy44IDAtNCA1LjUtNC4yIDguMi01LjgtOC41LTE0LjItMTAtMjMuNy0xMC0yNC41IDAtNDMuMiAyMS41LTQzLjIgNDUuMiAwIDE5LjUgMTIuMiAzMi4yIDMxLjcgMzIuMiA5IDAgMjAuMi00LjkgMjYuNS0xMS45LS41IDEuNS0xIDQuNy0xIDYuMiAwIDIuMyAxIDQgMy4yIDRsMTcuMiAwYzIuNyAwIDUtMi45IDUuNS01LjdsMTAuMi02NC4zYy4zLTEuOS0xLjItMy45LTMuMi0zLjl6TTI1MyAzMjIuMWw2My43LTkyLjZjLjUtLjUgLjUtMSAuNS0xLjcgMC0xLjctMS41LTMuNS0zLjItMy41bC0xOS4yIDBjLTEuNyAwLTMuNSAxLTQuNSAyLjVsLTI2LjUgMzktMTEtMzcuNWMtLjgtMi4yLTMtNC01LjUtNGwtMTguNyAwYy0xLjcgMC0zLjIgMS44LTMuMiAzLjUgMCAxLjIgMTkuNSA1Ni44IDIxLjIgNjIuMS0yLjcgMy44LTIwLjUgMjguNi0yMC41IDMxLjYgMCAxLjggMS41IDMuMiAzLjIgMy4ybDE5LjIgMGMxLjgtLjEgMy41LTEuMSA0LjUtMi42ek00MTIuMyAyMTUuNGMwLTIxLTE2LjItMjgtMzQuNy0yOGwtMzkuNyAwYy0yLjcgMC01LjIgMi01LjUgNC43bC0xNi4yIDEwMmMtLjIgMiAxLjMgNCAzLjIgNGwyMC41IDBjMiAwIDMuNS0xLjUgNC0zLjJsNC41LTI5YzEtNy4yIDEzLjItNC43IDE4LTQuNyAyOC40IDAgNDUuOS0xNyA0NS45LTQ1Ljh6bTg0LjIgOC44bC0xOSAwYy0zLjggMC00IDUuNS00LjMgOC4yLTUuNS04LjUtMTQtMTAtMjMuNy0xMC0yNC41IDAtNDMuMiAyMS41LTQzLjIgNDUuMiAwIDE5LjUgMTIuMiAzMi4yIDMxLjcgMzIuMiA5LjMgMCAyMC41LTQuOSAyNi41LTExLjktLjMgMS41LTEgNC43LTEgNi4yIDAgMi4zIDEgNCAzLjIgNGwxNy4zIDBjMi43IDAgNS0yLjkgNS41LTUuN2wxMC4yLTY0LjNjLjMtMS45LTEuMi0zLjktMy4yLTMuOXpNNTQ0IDE5MC45YzAtMi0xLjUtMy41LTMuMi0zLjVsLTE4LjUgMGMtMS41IDAtMyAxLjItMy4yIDIuN2wtMTYuMiAxMDQtLjMgLjVjMCAxLjggMS41IDMuNSAzLjUgMy41bDE2LjUgMGMyLjUgMCA1LTIuOSA1LjItNS43bDE2LjItMTAxLjIgMC0uM3ptLTkwIDUxLjhjLTEyLjIgMC0yMS43IDkuNy0yMS43IDIyIDAgOS43IDcgMTUgMTYuMiAxNSAxMiAwIDIxLjctOS4yIDIxLjctMjEuNSAuMS05LjgtNi45LTE1LjUtMTYuMi0xNS41eiJdfSxBaXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZGhsIixpY29uOls2NDAsNTEyLFtdLCJmNzkwIiwiTTIzOCAzMDEuMmw1OC43IDAgMjIuMy0zMC4yLTU4LjcgMC0yMi4zIDMwLjJ6TTAgMjgyLjlsMCA2LjQgODEuOCAwIDQuNy02LjQtODYuNSAwek0xNzIuOSAyNzFjLTguNyAwLTYtMy42LTQuNi01LjUgMi44LTMuOCA3LjYtMTAuNCAxMC40LTE0LjFzMi44LTUuOS0yLjgtNS45bC01MSAwLTQxLjEgNTUuOCAxMDAuMSAwYzMzLjEgMCA1MS41LTIyLjUgNTcuMi0zMC4zbC02OC4yIDB6bTMxNy41LTYuOWwzOS4zLTUzLjQtNjIuMiAwLTM5LjMgNTMuNCA2Mi4yIDB6TTk1LjMgMjcxbC05NS4zIDAgMCA2LjQgOTAuNiAwIDQuNy02LjR6bTExMS0yNi42Yy0yLjggMy44LTcuNSAxMC40LTEwLjMgMTQuMi0xLjQgMi00LjEgNS41IDQuNiA1LjVsNDUuNiAwczcuMy0xMCAxMy41LTE4LjRjOC40LTExLjQgLjctMzUtMjkuMi0zNWwtMTE3LjkgMC0yMC40IDI3LjggMTExLjQgMGM1LjYgMCA1LjUgMi4yIDIuNyA1Ljl6TTAgMzAxLjJsNzMuMSAwIDQuNy02LjQtNzcuOCAwIDAgNi40em0zMjMgMGw1OC43IDAgMjIuMy0zMC4yLTU4LjcgMGMtLjEgMC0yMi4zIDMwLjItMjIuMyAzMC4yem0yMjIgLjFsOTUgMCAwLTYuNC05MC4zIDAtNC43IDYuNHpNNTY3LjMgMjcxbC00LjcgNi40IDc3LjQgMCAwLTYuNC03Mi43IDB6bS0xMy41IDE4LjNsODYuMiAwIDAtNi40LTgxLjUgMC00LjcgNi40ek0zODkuNiAyMTAuN2wtMjIuNSAzMC42LTI2LjIgMCAyMi41LTMwLjYtNTguNyAwLTM5LjMgNTMuNCAxNDMuNiAwIDM5LjMtNTMuNC01OC43IDB6TTQyMy4xIDI3MXMtNC4zIDUuOS02LjQgOC43Yy03LjQgMTAtLjkgMjEuNiAyMy4yIDIxLjZsOTQuMyAwIDIyLjMtMzAuMy0xMzMuNCAweiJdfSxFaXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidGV4IixpY29uOls2NDAsNTEyLFtdLCJlN2ZmIiwiTTYyMC44IDk1LjRjLTMwLjggLjQtNDIuMSAxNi42LTQ3LjcgMjQuNWwtLjEgLjEtNTUuNyA4MC41IDgyLjggMTIxLjFjNy41IDEwLjYgMTEuMyAxMi41IDM1LjQgMTIuNWwwIDkuMWMtOS4xLS43LTI4LS43LTM3LjctLjctMTIuNCAwLTMwLjggMC00Mi45IC43bDAtOS4xYzEzLjItLjggMTYuNi03LjMgMTYuNi0xMC4yIDAtMS4xIDAtMi4zLTMtNi40bC02NS41LTk2LjMtNjAuMiA4Ny45Yy0xLjkgMi43LTMuOCA1LjQtMy44IDEwLjIgMCA2LjEgMy40IDEzLjYgMTUgMTQuN2wwIDkuMWMtOS40LS43LTI3LjEtLjctMzcuMi0uN2wtMi44IDAtMTEuNyA4Mi42LTE5NS45IDAgMC05LjFjMjYuNyAwIDMwLjkgMCAzMC45LTE2LjlsMC0yMDMuMmMwLTE2LjktNC4zLTE2LjktMzAuOS0xNi45bDAtMTAuMyAxOS44IDBjLTQuOC02MS4xLTEwLjgtNzEuNy02OC03MS44bC0yMC43IDBjLTYuOCAxLjUtNi44IDYuMS02LjggMTQuNGwwIDIwNWMwIDEzLjYgMS4xIDE3LjggMzIuNCAxNy44bDEwLjUgMCAwIDkuMS0uNCAwYy0xNy45LS4zLTM2LjctLjctNTQuOS0uN3MtMzYuOSAuMy01NC44IC43bC0uNiAwIDAtOS4xIDEwLjcgMGMzMS43IDAgMzIuOC00LjEgMzIuOC0xNy44bDAtMjA1YzAtOC43IDAtMTMuMi03LjItMTQuM2wtMjAuOCAwYy01OC40IDAtNjMuNyAxMC45LTY4LjYgNzMuM2wtNi44IDAgNi4zLTgzLjMgMjE3LjUgMCA2LjEgODEuOCAxNjQuMSAwIDkgODMuMy02LjggMGMtNS4zLTQ5LjgtMTIuMS03My03MC4zLTczbC01MS41IDBjLTE1IDAtMTUuOCAxLjktMTUuOCAxNC42bDAgOTMuMyAzNS41IDBjMzUuNSAwIDM4LjktMTIuOCAzOC45LTQ0bDYgMCAwIDk3LjktNiAwYzAtMzEuOC0zLjQtNDQuOC0zOC45LTQ0LjhsLTM1LjUgMCAwIDEwNS4yYzAgMTMgLjcgMTQuOCAxNS44IDE0LjhsNTIuMiAwYzYxLjEgMCA2OS45LTI1LjggNzcuNC03My42LTcuNyAwLTE2LjMgLjItMjIuMiAuN2wwLTkuMWM3LjIgMCAzMS43LS40IDQ3LjgtMjMuOGw2NS41LTk1LjctNzIuNy0xMDYuN2MtOC4zLTExLjctMTUuMS0xMi41LTM1LjgtMTIuNWwwLTkuMWM5LjEgLjcgMjcuOSAuNyAzNy43IC43IDEyLjQgMCAzMC44IDAgNDIuOS0uN2wwIDkuMWMtMTIuNSAuNC0xNi42IDYuOC0xNi42IDEwLjIgMCAxLjEgLjQgMi4zIDMgNi40bDU1LjcgODEuNiA0OS43LTcyLjFjMi43LTMuNyA0LjUtNi44IDQuNS0xMS4zIDAtNi4xLTMtMTMuNi0xNS0xNC44bDAtOS4xYzkuNCAuNyAyNC44IC43IDM3LjIgLjcgOSAwIDIzLjMgMCAzMi0uN2wwIDkuMXoiXX0sJGlyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImNsYXVkZSIsaWNvbjpbNTEyLDUxMixbXSwiZTg2MSIsIk0xMDAuNCAzNDAuNWwxMDAuNy01Ni41IDEuNy00LjktMS43LTIuNy00LjkgMC0xNi44LTEtNTcuNS0xLjYtNDkuOS0yLjEtNDguMy0yLjYtMTIuMi0yLjYtMTEuNC0xNSAxLjItNy41IDEwLjItNi45IDE0LjcgMS4zYzE4LjkgMS4zIDQ1LjkgMy4xIDgxIDUuNmwzNS4yIDIuMSA1Mi4yIDUuNCA4LjMgMCAxLjItMy40LTIuOC0yLjEtMi4yLTIuMS01MC4zLTM0LjEtNTQuNC0zNi0yOC41LTIwLjctMTUuNC0xMC41LTcuOC05LjgtMy40LTIxLjUgMTQtMTUuNCAxOC44IDEuMyA0LjggMS4zIDE5IDE0LjcgNDAuNyAzMS41IDUzLjEgMzkuMSA3LjggNi41IDMuMS0yLjIgLjQtMS42LTMuNS01LjgtMjguOS01Mi4yLTMwLjgtNTMuMS0xMy43LTIyLTMuNi0xMy4yYy0xLjMtNS40LTIuMi0xMC0yLjItMTUuNWwxNS45LTIxLjYgOC44LTIuOCAyMS4yIDIuOCA4LjkgNy44IDEzLjIgMzAuMiAyMS40IDQ3LjUgMzMuMiA2NC42IDkuNyAxOS4yIDUuMiAxNy44IDEuOSA1LjQgMy40IDAgMC0zLjEgMi43LTM2LjQgNS00NC43IDQuOS01Ny41IDEuNy0xNi4yIDgtMTkuNCAxNS45LTEwLjUgMTIuNCA1LjkgMTAuMiAxNC43LTEuNCA5LjUtNi4xIDM5LjUtMTEuOSA2MS45LTcuOCA0MS41IDQuNSAwIDUuMi01LjIgMjEtMjcuOCAzNS4yLTQ0LjEgMTUuNS0xNy41IDE4LjEtMTkuMyAxMS42LTkuMiAyMiAwIDE2LjIgMjQuMS03LjMgMjQuOS0yMi43IDI4LjctMTguOCAyNC40LTI3IDM2LjMtMTYuOCAyOSAxLjYgMi4zIDQtLjQgNjAuOS0xMyAzMi45LTUuOSAzOS4zLTYuNyAxNy44IDguMyAxLjkgOC40LTcgMTcuMi00MiAxMC40LTQ5LjIgOS44LTczLjMgMTcuMy0uOSAuNyAxIDEuMyAzMyAzLjEgMTQuMSAuOCAzNC42IDAgNjQuNCA0LjggMTYuOCAxMS4xIDEwLjEgMTMuNi0xLjcgMTAuNC0yNS45IDEzLjJjLTE1LjUtMy43LTU0LjQtMTIuOS0xMTYuNi0yNy43bC0yOC03LTMuOSAwIDAgMi4zIDIzLjMgMjIuOCA0Mi43IDM4LjYgNTMuNSA0OS44IDIuNyAxMi4zLTYuOSA5LjctNy4zLTEtNDctMzUuNC0xOC4xLTE1LjktNDEuMS0zNC42LTIuNyAwIDAgMy42IDkuNSAxMy45IDUwIDc1LjIgMi42IDIzLTMuNiA3LjUtMTMgNC41LTE0LjItMi42LTI5LjMtNDEuMS0zMC4yLTQ2LjMtMjQuNC00MS41LTMgMS43LTE0LjQgMTU0LjgtNi43IDcuOS0xNS41IDUuOS0xMy05LjgtNi45LTE1LjkgNi45LTMxLjUgOC4zLTQxLjEgNi43LTMyLjcgNi4xLTQwLjYgMy42LTEzLjUtLjItLjktMyAuNC0zMC42IDQyLTQ2LjUgNjIuOS0zNi44IDM5LjQtOC44IDMuNS0xNS4zLTcuOSAxLjQtMTQuMSA4LjUtMTIuNiA1MC45LTY0LjggMzAuNy00MC4yIDE5LjgtMjMuMi0uMS0zLjQtMS4yIDAtMTM1LjMgODcuOC0yNC4xIDMuMS0xMC40LTkuNyAxLjMtMTUuOSA0LjktNS4yIDQwLjctMjgtLjEgLjEgMCAuMXoiXX0sUGlyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InNob3BpZnkiLGljb246WzQ0OCw1MTIsW10sImUwNTciLCJNMzg4LjUgMTA0LjFjLS4yLTEuMS0uNy0yLjEtMS41LTIuOHMtMS44LTEuMi0yLjktMS4yYy0yIDAtMzcuMi0uOC0zNy4yLS44cy0yMS42LTIwLjgtMjkuNi0yOC44bDAgNDMyLjcgMTI1LjctMzEuMnMtNTQtMzY1LjUtNTQuNC0zNjcuOXpNMjg4LjkgNzAuNWMtMS45LTYuMS00LjMtMTEuOS03LjItMTcuNi0xMC40LTIwLTI2LTMwLjktNDQuNC0zMC45LTEuMyAwLTIuNyAuMS00IC40LS40LS44LTEuMi0xLjItMS42LTItOC04LjgtMTguNC0xMi44LTMwLjgtMTIuNC0yNCAuOC00OCAxOC02Ny4yIDQ4LjgtMTMuNiAyMS42LTI0IDQ4LjgtMjYuOCA3MC4xLTI3LjYgOC40LTQ2LjggMTQuNC00Ny4yIDE0LjgtMTQgNC40LTE0LjQgNC44LTE2IDE4LTEuMiAxMC0zOCAyOTEuOC0zOCAyOTEuOGwzMDIuNiA1Mi41IDAtNDM4LjNjLTEuNSAuMS0yLjkgLjItNC40IC40IDAgMC01LjYgMS42LTE0LjggNC40ek0yMzMuNiA4Ny43Yy0xNiA0LjgtMzMuNiAxMC40LTUwLjggMTUuNiA0LjgtMTguOCAxNC40LTM3LjYgMjUuNi01MCA0LjQtNC40IDEwLjQtOS42IDE3LjItMTIuOCA2LjggMTQuNCA4LjQgMzQgOCA0Ny4yek0yMDAuOCAyNC40YzUtLjIgMTAgMS4xIDE0LjQgMy42LTYuNCAzLjItMTIuOCA4LjQtMTguOCAxNC40LTE1LjIgMTYuNC0yNi44IDQyLTMxLjYgNjYuNS0xNC40IDQuNC0yOC44IDguOC00MiAxMi44IDguOC0zOC40IDQxLjItOTYuNCA3OC05Ny4yek0xNTQuNCAyNDQuNmMxLjYgMjUuNiA2OS4yIDMxLjIgNzMuMiA5MS43IDIuOCA0Ny42LTI1LjIgODAuMS02NS42IDgyLjUtNDguOCAzLjItNzUuNi0yNS42LTc1LjYtMjUuNmwxMC40LTQ0czI2LjggMjAuNCA0OC40IDE4LjhjMTQtLjggMTkuMi0xMi40IDE4LjgtMjAuNC0yLTMzLjYtNTcuMi0zMS42LTYwLjgtODYuOS0zLjItNDYuNCAyNy4yLTkzLjMgOTQuNS05Ny43IDI2LTEuNiAzOS4yIDQuOCAzOS4yIDQuOGwtMTUuMiA1Ny42cy0xNy4yLTgtMzcuNi02LjRjLTI5LjYgMi0zMCAyMC44LTI5LjYgMjUuNnpNMjQ5LjYgODIuOWMwLTEyLTEuNi0yOS4yLTcuMi00My42IDE4LjQgMy42IDI3LjIgMjQgMzEuMiAzNi40LTcuMiAyLTE1LjIgNC40LTI0IDcuMnoiXX0sWGtlPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InNxdWFyZS1yZWRkaXQiLGljb246WzQ0OCw1MTIsWyJyZWRkaXQtc3F1YXJlIl0sImYxYTIiLCJNNjQgMzJsMzIwIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAzMjBjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDk2QzAgNjAuNyAyOC43IDMyIDY0IDMyek0zMDUuOSAxNjYuNGMyMC42IDAgMzcuMy0xNi43IDM3LjMtMzcuM3MtMTYuNy0zNy4zLTM3LjMtMzcuM2MtMTggMC0zMy4xIDEyLjgtMzYuNiAyOS44LTMwLjIgMy4yLTUzLjggMjguOC01My44IDU5LjlsMCAuMmMtMzIuOCAxLjQtNjIuOCAxMC43LTg2LjYgMjUuNS04LjgtNi44LTE5LjktMTAuOS0zMi0xMC45LTI4LjkgMC01Mi4zIDIzLjQtNTIuMyA1Mi4zIDAgMjEgMTIuMyAzOSAzMC4xIDQ3LjQgMS43IDYwLjcgNjcuOSAxMDkuNiAxNDkuMyAxMDkuNnMxNDcuNi00OC45IDE0OS4zLTEwOS43YzE3LjctOC40IDI5LjktMjYuNCAyOS45LTQ3LjMgMC0yOC45LTIzLjQtNTIuMy01Mi4zLTUyLjMtMTIgMC0yMyA0LTMxLjkgMTAuOC0yNC0xNC45LTU0LjMtMjQuMi04Ny41LTI1LjRsMC0uMWMwLTIyLjIgMTYuNS00MC43IDM3LjktNDMuNyAzLjkgMTYuNSAxOC43IDI4LjcgMzYuMyAyOC43bC4yLS4yek0xNTUgMjQ4LjFjMTQuNiAwIDI1LjggMTUuNCAyNSAzNC40cy0xMS44IDI1LjktMjYuNSAyNS45LTI3LjUtNy43LTI2LjYtMjYuNyAxMy41LTMzLjUgMjguMS0zMy41bDAtLjF6bTE2Ni40IDMzLjVjLjkgMTktMTIgMjYuNy0yNi42IDI2LjdzLTI1LjYtNi45LTI2LjUtMjUuOSAxMC4zLTM0LjQgMjUtMzQuNCAyNy4zIDE0LjYgMjguMSAzMy41bDAgLjF6bS00Mi4xIDQ5LjZjLTkgMjEuNS0zMC4zIDM2LjctNTUuMSAzNi43cy00Ni4xLTE1LjEtNTUuMS0zNi43Yy0xLjEtMi42IC43LTUuNCAzLjQtNS43IDE2LjEtMS42IDMzLjUtMi41IDUxLjctMi41czM1LjYgLjkgNTEuNyAyLjVjMi43IC4zIDQuNSAzLjEgMy40IDUuN3oiXX0sSWlyPVhrZSxOaXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiY3JlYXRpdmUtY29tbW9ucy1uYyIsaWNvbjpbNTEyLDUxMixbXSwiZjRlOCIsIk0yNTUuNiA4QzM5NS40IDggNTA0IDExNS45IDUwNCAyNTYgNTA0IDQwMy4yIDM4NS41IDUwNCAyNTUuNiA1MDQgMTIxLjEgNTA0IDggMzkzLjIgOCAyNTYgOCAxMjMuMSAxMTIuNyA4IDI1NS42IDh6TTYzLjggMTg5LjFjLTcuNCAyMC40LTExLjEgNDIuNy0xMS4xIDY2LjkgMCAxMTAuOSA5Mi4xIDIwMi40IDIwMy43IDIwMi40IDEyMi40IDAgMTc3LjItMTAxLjggMTc4LjUtMTA0LjFsLTkzLjQtNDEuNmMtNy43IDM3LjEtNDEuMiA1My02OC4yIDU1LjRsMCAzOC4xLTI4LjggMCAwLTM4LjJjLTI3LjUtLjMtNTIuNi0xMC4yLTc1LjMtMjkuN2wzNC4xLTM0LjVjMzEuNyAyOS40IDg2LjQgMzEuOCA4Ni40LTIuMiAwLTYuMi0yLjItMTEuMi02LjYtMTUuMS0xNC4yLTYtMS44LS4xLTIxOS4zLTk3LjR6TTI1Ni40IDUyLjNDMjE4IDUyLjMgMTQ0IDYxIDg1LjkgMTQ1LjNsOTQuOCA0Mi41YzEwLTMxLjMgNDAuNC00Mi45IDYzLjgtNDQuM2wwLTM4LjEgMjguOCAwIDAgMzguMWMyMi43IDEuMiA0My40IDguOSA2MiAyM0wzMDMgMTk5LjdjLTQyLjctMjkuOS04My41LTgtNzAgMTEuMSA1My40IDI0LjEgNDMuOCAxOS44IDkzIDQxLjZsMTI3LjEgNTYuN2M0LjEtMTcuNCA2LjItMzUuMSA2LjItNTMuMSAwLTU3LTE5LjgtMTA1LTU5LjMtMTQzLjktMzkuMy0zOS45LTg3LjItNTkuOC0xNDMuNi01OS44eiJdfSxGaXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZ2FsYWN0aWMtcmVwdWJsaWMiLGljb246WzUxMiw1MTIsW10sImY1MGMiLCJNMjU2IDhhMjQ4IDI0OCAwIDEgMSAwIDQ5NiAyNDggMjQ4IDAgMSAxIDAtNDk2em0wIDE2LjVhMjMxLjUgMjMxLjUgMCAxIDAgMCA0NjIuOSAyMzEuNSAyMzEuNSAwIDEgMCAwLTQ2Mi45em0yNy42IDIxLjhsMCAyNC42YzMwLjMgNC41IDU5IDE2LjMgODMuNiAzNC41bDE3LjQtMTcuNGMtMjguNy0yMi4xLTYzLjMtMzYuOS0xMDEtNDEuOHptLTU1LjQgLjFjLTM3LjYgNC45LTcyLjIgMTkuOC0xMDAuOSA0MS45bDE3LjMgMTcuNCAuMSAwYzI0LjEtMTcuOCA1Mi42LTMwLjEgODMuNS0zNC43bDAtMjQuNXptMTIuMiA1MC4ybDAgODIuOWMtMTAgMi0xOS40IDUuOS0yNy43IDExLjRsLTU4LjYtNTguNi0yMS45IDIxLjkgNTguNyA1OC43Yy01LjUgOC4yLTkuNCAxNy42LTExLjUgMjcuNmwtODIuOSAwIDAgMzEgODIuOSAwYzIgMTAgNiAxOS4zIDExLjUgMjcuNWwtNTguNyA1OC43IDIxLjkgMjEuOSA1OC42LTU4LjZjOC40IDUuNiAxNy44IDkuNSAyNy43IDExLjVsMCA4Mi45IDMxIDAgMC04Mi45YzEwLTIgMTkuNC02LjEgMjcuNi0xMS41bDU4LjcgNTguNyAyMS45LTIxLjktNTguNy01OC43YzUuNS04LjIgOS41LTE3LjUgMTEuNS0yNy41bDgyLjkgMCAwLTMxLTgyLjkgMGMtMi0xMC02LTE5LjQtMTEuNS0yNy42bDU4LjctNTguNy0yMS45LTIxLjktNTguNyA1OC43Yy04LjItNS41LTE3LjYtOS41LTI3LjYtMTEuNWwwLTgyLjktMzEgMHptMTgzLjIgMzAuN2wtMTcuNCAxNy40YzE4LjMgMjQuNiAzMC4yIDUzLjQgMzQuNyA4My43bDI0LjYgMGMtNS0zNy43LTE5LjgtNzIuMy00MS45LTEwMXptLTMzNS42IC4xYy0yMi4xIDI4LjctMzYuOSA2My4zLTQxLjggMTAwLjlsMjQuNiAwYzQuNi0zMSAxNi44LTU5LjQgMzQuNi04My41TDg4LjIgMTI3LjR6TTQ2LjMgMjgzLjdjNC45IDM3LjYgMTkuNyA3Mi4yIDQxLjggMTAwLjlsMTcuNC0xNy40Qzg3LjcgMzQzLjEgNzUuNiAzMTQuNiA3MSAyODMuN2wtMjQuNiAwIDAgMHptMzk0LjcgMGMtNC42IDMxLTE2LjggNTkuNS0zNC43IDgzLjZsMTcuNCAxNy40YzIyLjEtMjguNyAzNy02My4zIDQxLjktMTAxbC0yNC42IDB6TTE0NC43IDQwNi40bC0xNy40IDE3LjRjMjguNyAyMi4xIDYzLjMgMzcgMTAxIDQxLjlsMC0yNC42Yy0zMS00LjYtNTkuNS0xNi44LTgzLjYtMzQuNnptMjIyLjUgMGMtMjQuMSAxNy44LTUyLjYgMzAuMS04My42IDM0LjdsMCAyNC42YzM3LjctNC45IDcyLjItMTkuOCAxMDEtNDEuOGwtMTcuMy0xNy40LS4xIDB6Il19LEJzZT17cHJlZml4OiJmYWIiLGljb25OYW1lOiJmYWNlYm9vayIsaWNvbjpbNTEyLDUxMixbNjJlM10sImYwOWEiLCJNNTEyIDI1NkM1MTIgMTE0LjYgMzk3LjQgMCAyNTYgMFMwIDExNC42IDAgMjU2QzAgMzc2IDgyLjcgNDc2LjggMTk0LjIgNTA0LjVsMC0xNzAuMy01Mi44IDAgMC03OC4yIDUyLjggMCAwLTMzLjdjMC04Ny4xIDM5LjQtMTI3LjUgMTI1LTEyNy41IDE2LjIgMCA0NC4yIDMuMiA1NS43IDYuNGwwIDcwLjhjLTYtLjYtMTYuNS0xLTI5LjYtMS00MiAwLTU4LjIgMTUuOS01OC4yIDU3LjJsMCAyNy44IDgzLjYgMC0xNC40IDc4LjItNjkuMyAwIDAgMTc1LjlDNDEzLjggNDk0LjggNTEyIDM4Ni45IDUxMiAyNTZ6Il19LE9pcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJnaXRsYWIiLGljb246WzUxMiw1MTIsW10sImYyOTYiLCJNNTA0IDIwNC42bC0uNy0xLjgtNjkuNy0xODEuOGMtMS40LTMuNi0zLjktNi42LTcuMi04LjYtMi40LTEuNi01LjEtMi41LTgtMi44cy01LjcgLjEtOC40IDEuMS01LjEgMi43LTcuMSA0LjhjLTEuOSAyLjEtMy4zIDQuNy00LjEgNy40bC00NyAxNDQtMTkwLjUgMC00Ny4xLTE0NGMtLjgtMi44LTIuMi01LjMtNC4xLTcuNC0yLTIuMS00LjQtMy43LTcuMS00LjgtMi42LTEtNS41LTEuNC04LjQtMS4xcy01LjYgMS4yLTggMi44Yy0zLjIgMi01LjggNS4xLTcuMiA4LjZMOS44IDIwMi44IDkgMjA0LjZjLTEwIDI2LjItMTEuMyA1NS0zLjUgODIgNy43IDI2LjkgMjQgNTAuNyA0Ni40IDY3LjZsLjMgLjIgLjYgLjQgMTA2IDc5LjVjMzguNSAyOS4xIDY2LjcgNTAuMyA4NC42IDYzLjkgMy43IDEuOSA4LjMgNC4zIDEzIDQuM3M5LjMtMi40IDEzLTQuM2MxNy45LTEzLjUgNDYuMS0zNC45IDg0LjYtNjMuOWwxMDYuNy03OS45IC4zLS4zYzIyLjQtMTYuOSAzOC43LTQwLjYgNDUuNi02Ny41IDguNi0yNyA3LjQtNTUuOC0yLjYtODJ6Il19LFJpcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJxcSIsaWNvbjpbNDQ4LDUxMixbXSwiZjFkNiIsIk00MzQuMSA0MjAuNGMtMTEuNSAxLjQtNDQuOS01Mi43LTQ0LjktNTIuNyAwIDMxLjMtMTYuMSA3Mi4yLTUxIDEwMS44IDE2LjggNS4yIDU0LjggMTkuMiA0NS44IDM0LjQtNy4zIDEyLjMtMTI1LjUgNy45LTE1OS42IDQtMzQuMSAzLjgtMTUyLjMgOC4zLTE1OS42LTQtOS0xNS4yIDI4LjktMjkuMiA0NS44LTM0LjQtMzQuOS0yOS41LTUxLjEtNzAuNC01MS4xLTEwMS44IDAgMC0zMy4zIDU0LjEtNDQuOSA1Mi43LTUuNC0uNi0xMi40LTI5LjYgOS4zLTk5LjcgMTAuMy0zMyAyMi02MC41IDQwLjEtMTA1LjgtMy4xLTExNi45IDQ1LjItMjE1IDE2MC4zLTIxNSAxMTMuNyAwIDE2My4yIDk2LjEgMTYwLjMgMjE1IDE4LjEgNDUuMiAyOS45IDcyLjkgNDAuMSAxMDUuOCAyMS44IDcwLjEgMTQuNyA5OS4xIDkuMyA5OS43eiJdfSxCaXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic3RyaXBlIixpY29uOls2NDAsNTEyLFtdLCJmNDI5IiwiTTE2NSAxNDQuN2wtNDMuMyA5LjItLjIgMTQyLjRjMCAyNi4zIDE5LjggNDMuMyA0Ni4xIDQzLjMgMTQuNiAwIDI1LjMtMi43IDMxLjItNS45bDAtMzMuOGMtNS43IDIuMy0zMy43IDEwLjUtMzMuNy0xNS43bDAtNjMuMiAzMy43IDAgMC0zNy44LTMzLjcgMC0uMS0zOC41em04OS4xIDUxLjZsLTIuNy0xMy4xLTM4LjQgMCAwIDE1My4yIDQ0LjMgMCAwLTEwMy4xYzEwLjUtMTMuOCAyOC4yLTExLjEgMzMuOS05LjNsMC00MC44Yy02LTIuMS0yNi43LTYtMzcuMSAxMy4xek0zNDYuNCAxMjRsLTQ0LjYgOS41IDAgMzYuMiA0NC42LTkuNSAwLTM2LjJ6TTQ0LjkgMjI4LjNjMC02LjkgNS44LTkuNiAxNS4xLTkuNyAxMy41IDAgMzAuNyA0LjEgNDQuMiAxMS40bDAtNDEuOGMtMTQuNy01LjgtMjkuNC04LjEtNDQuMS04LjEtMzYgMC02MCAxOC44LTYwIDUwLjIgMCA0OS4yIDY3LjUgNDEuMiA2Ny41IDYyLjQgMCA4LjItNy4xIDEwLjktMTcgMTAuOS0xNC43IDAtMzMuNy02LjEtNDguNi0xNC4ybDAgNDBjMTYuNSA3LjEgMzMuMiAxMC4xIDQ4LjUgMTAuMSAzNi45IDAgNjIuMy0xNS44IDYyLjMtNDcuOCAwLTUyLjktNjcuOS00My40LTY3LjktNjMuNHpNNjQwIDI2MS42YzAtNDUuNS0yMi04MS40LTY0LjItODEuNHMtNjcuOSAzNS45LTY3LjkgODEuMWMwIDUzLjUgMzAuMyA3OC4yIDczLjUgNzguMiAyMS4yIDAgMzcuMS00LjggNDkuMi0xMS41bDAtMzMuNGMtMTIuMSA2LjEtMjYgOS44LTQzLjYgOS44LTE3LjMgMC0zMi41LTYuMS0zNC41LTI2LjlsODYuOSAwYy4yLTIuMyAuNi0xMS42IC42LTE1Ljl6bS04Ny45LTE2LjhjMC0yMCAxMi4zLTI4LjQgMjMuNC0yOC40IDEwLjkgMCAyMi41IDguNCAyMi41IDI4LjRsLTQ1LjkgMHpNNDM5LjIgMTgwLjJjLTE3LjQgMC0yOC42IDguMi0zNC44IDEzLjlsLTIuMy0xMS0zOS4xIDAgMCAyMDQuOCA0NC40LTkuNCAuMS01MC4yYzYuNCA0LjcgMTUuOSAxMS4yIDMxLjQgMTEuMiAzMS44IDAgNjAuOC0yMy4yIDYwLjgtNzkuNiAuMS01MS42LTI5LjMtNzkuNy02MC41LTc5Ljd6TTQyOC42IDMwMi43Yy0xMC40IDAtMTYuNi0zLjgtMjAuOS04LjRsLS4zLTY2YzQuNi01LjEgMTEtOC44IDIxLjItOC44IDE2LjIgMCAyNy40IDE4LjIgMjcuNCA0MS40IC4xIDIzLjktMTAuOSA0MS44LTI3LjQgNDEuOHpNMzAxLjkgMzM2LjRsNDQuNiAwIDAtMTUzLjItNDQuNiAwIDAgMTUzLjJ6Il19LEhpcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJkYWlseW1vdGlvbiIsaWNvbjpbNDQ4LDUxMixbXSwiZTA1MiIsIk0yOTguOSAyNjdjLTcuNC00LjItMTUuOC02LjMtMjQuNC02LjItMTMuMiAwLTI0LjQgNC40LTMzLjQgMTMuM3MtMTMuNiAyMC0xMy42IDMzLjRjMCAxNC4xIDQuNCAyNS42IDEzLjMgMzQuNnMyMCAxMy40IDMzLjQgMTMuNGMxMy43IDAgMjUtNC42IDM0LjEtMTMuOFMzMjIgMzIxLjEgMzIyIDMwNy41YzAtOC4yLTIuMS0xNi4zLTYuMS0yMy41LTQtNy4xLTkuOC0xMy0xNy0xN3pNMCAzMmwwIDQ0OCA0NDggMCAwLTQ0OC00NDggMHpNMzc0LjcgNDA1LjNsLTUzLjEgMCAwLTIzLjktLjcgMGMtMTAuNSAxNy41LTI5LjEgMjYuMi01NS44IDI2LjItMTguNCAwLTM0LjctNC40LTQ4LjktMTMuMS0xNC4xLTguNi0yNS41LTIxLTMyLjktMzUuOC03LjctMTUuMS0xMS42LTMyLjEtMTEuNi01MC45IDAtMTguNCAzLjktMzUuMSAxMS44LTUwLjIgNy41LTE0LjcgMTguOS0yNy4xIDMyLjktMzUuOCAxNC4xLTguNyAzMC0xMy4xIDQ3LjctMTMuMSAxMC4yLS4xIDIwLjIgMS42IDI5LjcgNS4yIDguOSAzLjUgMTcuMiA5LjEgMjUgMTdsMC03Ny45IDU1LjgtMTIuMSAwIDI2NC40eiJdfSxxaXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic3RlYW0iLGljb246WzUxMiw1MTIsW10sImYxYjYiLCJNNTA0IDI1NmMwIDEzNy0xMTEuMiAyNDgtMjQ4LjQgMjQ4LTExMy44IDAtMjA5LjYtNzYuMy0yMzktMTgwLjRsOTUuMiAzOS4zYzYuNCAzMi4xIDM0LjkgNTYuNCA2OC45IDU2LjQgMzkuMiAwIDcxLjktMzIuNCA3MC4yLTczLjVsODQuNS02MC4yYzUyLjEgMS4zIDk1LjgtNDAuOSA5NS44LTkzLjUgMC01MS42LTQyLTkzLjUtOTMuNy05My41cy05My43IDQyLTkzLjcgOTMuNWwwIDEuMi01OS4yIDg1LjdjLTE1LjUtLjktMzAuNyAzLjQtNDMuNSAxMi4xTDggMjM2LjFDMTguMiAxMDguNCAxMjUuMSA4IDI1NS42IDggMzkyLjggOCA1MDQgMTE5IDUwNCAyNTZ6TTE2My43IDM4NC4zbC0zMC41LTEyLjZjNS42IDExLjYgMTUuMyAyMC44IDI3LjIgMjUuOCAyNi45IDExLjIgNTcuOC0xLjYgNjktMjguNCA1LjQtMTMgNS41LTI3LjMgLjEtNDAuM1MyMTQgMzA1LjYgMjAxIDMwMC4yYy0xMi45LTUuNC0yNi43LTUuMi0zOC45LS42bDMxLjUgMTNjMTkuOCA4LjIgMjkuMiAzMC45IDIwLjkgNTAuNy04LjMgMTkuOS0zMSAyOS4yLTUwLjggMjF6TTMzNy41IDEyOS44YTYyLjMgNjIuMyAwIDEgMSAwIDEyNC42IDYyLjMgNjIuMyAwIDEgMSAwLTEyNC42em0uMSAxMDlhNDYuOCA0Ni44IDAgMSAwIDAtOTMuNiA0Ni44IDQ2LjggMCAxIDAgMCA5My42eiJdfSxqaXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidmVubW8tdiIsaWNvbjpbNTEyLDUxMixbXSwiZTg1YiIsIk00NjYuNSAxNC44YzE3LjQgMjguNyAyNS4zIDU4LjIgMjUuMyA5NS41IDAgMTE5LTEwMS45IDI3My41LTE4NC43IDM4Mi4xbC0xODguOSAwLTc1LjgtNDUxLjUgMTY1LjQtMTUuNyA0MC4xIDMyMS4zYzM3LjQtNjAuOCA4My42LTE1Ni4zIDgzLjYtMjIxLjQgMC0zNS42LTYuMS01OS45LTE1LjctNzkuOUw0NjYuNSAxNC44eiJdfSxRa2U9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic25hcGNoYXQiLGljb246WzUxMiw1MTIsWzYyMTI0LCJzbmFwY2hhdC1naG9zdCJdLCJmMmFiIiwiTTQ5Ny4xIDM2Ni42Yy0zLjQtOS4yLTkuOC0xNC4xLTE3LjEtMTguMi0xLjQtLjgtMi42LTEuNS0zLjctMS45LTIuMi0xLjEtNC40LTIuMi02LjYtMy40LTIyLjgtMTIuMS00MC42LTI3LjMtNTMtNDUuNC0zLjUtNS4xLTYuNi0xMC41LTkuMS0xNi4xLTEuMS0zLTEtNC43LS4yLTYuMyAuOC0xLjIgMS43LTIuMiAyLjktMyAzLjktMi42IDgtNS4yIDEwLjctNyA0LjktMy4yIDguOC01LjcgMTEuMi03LjQgOS40LTYuNSAxNS45LTEzLjUgMjAtMjEuMyAyLjktNS40IDQuNS0xMS4zIDQuOS0xNy40cy0uNi0xMi4yLTIuOC0xNy44Yy02LjItMTYuMy0yMS42LTI2LjQtNDAuMy0yNi40LTMuOSAwLTcuOSAuNC0xMS43IDEuMi0xIC4yLTIuMSAuNS0zLjEgLjcgLjItMTEuMi0uMS0yMi45LTEuMS0zNC41LTMuNS00MC44LTE3LjgtNjIuMS0zMi43LTc5LjItOS41LTEwLjctMjAuNy0xOS43LTMzLjItMjYuNy0yMi42LTEyLjktNDguMi0xOS40LTc2LjEtMTkuNHMtNTMuNCA2LjUtNzYgMTkuNGMtMTIuNSA3LTIzLjcgMTYuMS0zMy4zIDI2LjgtMTQuOSAxNy0yOS4yIDM4LjQtMzIuNyA3OS4yLTEgMTEuNi0xLjIgMjMuNC0xLjEgMzQuNS0xLS4zLTItLjUtMy4xLS43LTMuOS0uOC03LjgtMS4yLTExLjctMS4yLTE4LjcgMC0zNC4xIDEwLjEtNDAuMyAyNi40LTIuMiA1LjctMy4yIDExLjgtMi44IDE3LjhzMiAxMiA0LjkgMTcuNGM0LjEgNy44IDEwLjcgMTQuNyAyMCAyMS4zIDIuNSAxLjcgNi40IDQuMiAxMS4yIDcuNCAyLjYgMS43IDYuNSA0LjIgMTAuMyA2LjcgMS4zIC45IDIuNCAyIDMuMyAzLjMgLjggMS42IC44IDMuNC0uNCA2LjYtMi41IDUuNS01LjUgMTAuOC04LjkgMTUuOC0xMi4xIDE3LjctMjkuNCAzMi42LTUxLjQgNDQuNi0xMS43IDYuMi0yMy45IDEwLjMtMjkgMjQuMy0zLjkgMTAuNS0xLjMgMjIuNSA4LjUgMzIuNiAzLjYgMy44IDcuOCA2LjkgMTIuNCA5LjQgOS42IDUuMyAxOS44IDkuMyAzMC4zIDEyLjEgMi4yIC42IDQuMyAxLjUgNi4xIDIuNyAzLjYgMy4xIDMuMSA3LjkgNy44IDE0LjggMi40IDMuNiA1LjQgNi43IDkgOS4xIDEwIDYuOSAyMS4zIDcuNCAzMy4yIDcuOCAxMC44IC40IDIzIC45IDM2LjkgNS41IDUuOCAxLjkgMTEuOCA1LjYgMTguNyA5LjkgMTYuNyAxMC4zIDM5LjYgMjQuMyA3Ny44IDI0LjNzNjEuMy0xNC4xIDc4LjEtMjQuNGM2LjktNC4yIDEyLjktNy45IDE4LjUtOS44IDEzLjktNC42IDI2LjItNS4xIDM2LjktNS41IDExLjktLjUgMjMuMi0uOSAzMy4yLTcuOCA0LjItMi45IDcuNy02LjcgMTAuMi0xMS4yIDMuNC01LjggMy40LTkuOSA2LjYtMTIuOCAxLjgtMS4yIDMuNy0yLjEgNS44LTIuNiAxMC43LTIuOCAyMS02LjkgMzAuOC0xMi4yIDQuOS0yLjYgOS4zLTYuMSAxMy0xMC4ybC4xLS4yYzkuMi05LjkgMTEuNS0yMS41IDcuOC0zMS44em0tMzQgMTguM2MtMjAuNyAxMS41LTM0LjUgMTAuMi00NS4zIDE3LjEtOS4xIDUuOS0zLjcgMTguNS0xMC4zIDIzLjEtOC4xIDUuNi0zMi4yLS40LTYzLjIgOS45LTI1LjYgOC41LTQyIDMyLjgtODggMzIuOHMtNjItMjQuMy04OC4xLTMyLjljLTMxLTEwLjMtNTUuMS00LjItNjMuMi05LjktNi42LTQuNi0xLjItMTcuMi0xMC4zLTIzLjEtMTAuNy02LjktMjQuNS01LjctNDUuMy0xNy4xLTEzLjItNy4zLTUuNy0xMS44LTEuMy0xMy45IDc1LjEtMzYuNCA4Ny4xLTkyLjYgODcuNy05Ni43IC42LTUgMS40LTktNC4yLTE0LjEtNS40LTUtMjkuMi0xOS43LTM1LjgtMjQuMy0xMC45LTcuNi0xNS43LTE1LjMtMTIuMi0yNC42IDIuNS02LjUgOC41LTguOSAxNC45LTguOSAyIDAgNCAuMiA2IC43IDEyIDIuNiAyMy43IDguNiAzMC40IDEwLjIgLjggLjIgMS42IC4zIDIuNSAuMyAzLjYgMCA0LjktMS44IDQuNi01LjktLjgtMTMuMS0yLjYtMzguNy0uNi02Mi42IDIuOC0zMi45IDEzLjQtNDkuMiAyNi02My42IDYuMS02LjkgMzQuNS0zNyA4OC45LTM3UzMzOSA3NC4yIDM0NSA4MS4xYzEyLjYgMTQuNCAyMy4yIDMwLjcgMjYgNjMuNiAyLjEgMjMuOSAuMyA0OS41LS42IDYyLjYtLjMgNC4zIDEgNS45IDQuNiA1LjkgLjggMCAxLjctLjEgMi41LS4zIDYuNy0xLjYgMTguNC03LjYgMzAuNC0xMC4yIDItLjQgNC0uNyA2LS43IDYuNCAwIDEyLjQgMi41IDE0LjkgOC45IDMuNSA5LjQtMS4yIDE3LTEyLjIgMjQuNi02LjYgNC42LTMwLjQgMTkuMy0zNS44IDI0LjMtNS42IDUuMS00LjggOS4xLTQuMiAxNC4yIC41IDQuMiAxMi41IDYwLjQgODcuNyA5Ni43IDQuNCAyLjIgMTEuOSA2LjctMS4zIDE0LjF6Il19LFZpcj1Ra2UsVWlyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImdhbGFjdGljLXNlbmF0ZSIsaWNvbjpbNTEyLDUxMixbXSwiZjUwZCIsIk0yNDkuOSAzMy41bDAgMjYuMWMtMTMuNiAyMC42LTIzLjkgMTA4LjYtMjQuNSAyMTUuMyAxMS43LTE1LjYgMTkuMS0zMy4zIDE5LjEtNDguMmwwLTE2LjljMC01LjMgLjgtMTAuNSAyLjItMTUuNiAuNi0yLjEgMS40LTQuMSAyLjYtNS44czMuNC0zLjggNi43LTMuOCA1LjQgMi4xIDYuNyAzLjhjMS4yIDEuOCAyIDMuNyAyLjYgNS44IDEuNCA1LjEgMi4yIDEwLjMgMi4yIDE1LjZsMCAxNi45YzAgMTQuOSA3LjQgMzIuNiAxOS4xIDQ4LjItLjYtMTA2LjgtMTAuOS0xOTQuNy0yNC41LTIxNS4zbDAtMjYuMS0xMi4zIDB6TTIyMy41IDE4MS4zYy05LjUgMi4xLTE4LjcgNS4yLTI3LjUgOS4xIDguOSAxNi4xIDkuOCAzMi42IDEuNyAzNy4zLTggNC42LTIxLjgtNC4yLTMxLjQtMTkuOC0xMS42IDguOC0yMS45IDE5LjMtMzAuNiAzMS4xIDE0LjcgOS42IDIyLjkgMjIuOSAxOC4zIDMwLjctNC41IDcuNy0yMCA3LjEtMzUuNS0xLTUuOCAxMy4yLTkuNyAyNy41LTExLjYgNDIuNCA5LjcgLjIgMTguNyAyLjQgMjYuMiA2IDE3LjgtLjMgMzIuOC0yIDQwLjUtNC4yIDUuNi0yNi40IDIzLTQ4LjIgNDYuMy01OS41IC43LTI1LjYgMS45LTQ5LjcgMy41LTcyLjF6bTY1IDBjMS42IDIyLjQgMi43IDQ2LjUgMy41IDcyLjEgMjMuMyAxMS4zIDQwLjggMzMuMiA0Ni4zIDU5LjUgNy43IDIuMyAyMi43IDMuOSA0MC41IDQuMiA3LjUtMy43IDE2LjUtNS44IDI2LjItNi0xLjktMTQuOS01LjktMjkuMi0xMS43LTQyLjQtMTUuNCA4LjEtMzAuOSA4LjctMzUuNSAxLTQuNi03LjcgMy42LTIxLjEgMTguMy0zMC43LTguNy0xMS44LTE5LTIyLjMtMzAuNi0zMS4xLTkuNSAxNS42LTIzLjQgMjQuNC0zMS40IDE5LjgtOC4xLTQuNi03LjItMjEuMiAxLjctMzcuMy04LjgtMy45LTE4LTctMjcuNC05LjF6TTI1NiAxODkuOWMtMy4yIDAtNS45IDguOC02LjEgMTkuOWwwIDAgMCAxNi45YzAgNDEuNC00OSA5NS05My41IDk1LTUyIDAtMTIyLjgtMS40LTE1Ni40IDI5LjJsMCAyLjVjOS40IDE3LjEgMjAuNiAzMy4yIDMzLjIgNDggMTIuNS0yMS4xIDUxLjYtNDEgMTA4LTQxLjQgNDUuNyAxIDc5IDIwLjMgOTAuOCA0MC45IDAgMCAwIDAgMCAuMSA3LjcgMi4xIDE1LjggMy4yIDI0IDMuMiA4LjIgMCAxNi40LTEuMSAyNC0zLjIgMCAwIDAgMCAwLS4xIDExLjctMjAuNSA0NS4xLTM5LjggOTAuOC00MC45IDU2LjQgLjQgOTUuNSAyMC4zIDEwOCA0MS40IDEyLjYtMTQuOCAyMy44LTMwLjkgMzMuMi00OGwwLTIuNWMtMzMuNi0zMC42LTEwNC40LTI5LjItMTU2LjQtMjkuMi00NC41IDAtOTMuNS01My42LTkzLjUtOTVsMC0xNi45LS4xIDBjLS4yLTExLjEtMi45LTE5LjktNi4xLTE5Ljl6bTAgMTc3LjlhNDAuNiA0MC42IDAgMSAxIDAtODEuMyA0MC42IDQwLjYgMCAxIDEgMCA4MS4zem0wLTczLjZhMzMgMzMgMCAxIDAgMCA2NS45IDMzIDMzIDAgMSAwIDAtNjUuOXptMCA1OS44YTI2LjggMjYuOCAwIDEgMSAwLTUzLjYgMjYuOCAyNi44IDAgMSAxIDAgNTMuNnptLTExNC44IDEzYy0xMC4yIC4xLTIxLjYgLjQtMzAuNSAxLjcgLjQgNC40IDEuNSAxOC42IDcuMSAyOS44IDkuMS0yLjYgMTguNC0zLjkgMjcuNi0zLjkgNDEuMyAuOSA3MS41IDM0LjQgNzguMyA3NC41bC4xIDQuN2MxMC40IDEuOSAyMS4yIDIuOSAzMi4yIDIuOSAxMSAwIDIxLjgtMSAzMi4yLTIuOWwuMS00LjdjNi44LTQwLjEgMzctNzMuNSA3OC4zLTc0LjUgOS4zIDAgMTguNSAxLjMgMjcuNiAzLjkgNS42LTExLjEgNi43LTI1LjMgNy4xLTI5LjgtOC45LTEuMy0yMC4zLTEuNi0zMC41LTEuNy0xOC44IC40LTM1LjIgNC4yLTQ4LjYgOS43LTEyLjUgMTYtMjkuMiAzMC00OS42IDMzLjEtLjEgMC0uMiAwLS4zIDAgMCAwLS4xIDAtLjIgLjEtNS4yIDEuMS0xMC42IDEuNi0xNi4yIDEuNi01LjUgMC0xMC45LS41LTE2LjItMS42LS4xIDAtLjEgMC0uMi0uMS0uMSAwLS4yIDAtLjMgMC0yMC40LTMtMzctMTctNDkuNi0zMy4xLTEzLjQtNS41LTI5LjktOS4yLTQ4LjYtOS43eiJdfSxXaXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToicGhvZW5peC1mcmFtZXdvcmsiLGljb246WzY0MCw1MTIsW10sImYzZGMiLCJNMjEyLjkgMzQ0LjNjMy44LS4xIDIyLjgtMS40IDI1LjYtMi4yLTIuNC0yLjYtNDMuNi0xLTY4LTQ5LjYtNC4zLTguNi03LjUtMTcuNi02LjQtMjcuNiAyLjktMjUuNSAzMi45LTMwIDUyLTE4LjUgMzYgMjEuNiA2My4zIDkxLjMgMTEzLjcgOTcuNSAzNyA0LjUgODQuNi0xNyAxMDguMi00NS40LS42LS4xLS44LS4yLTEtLjEtLjQgLjEtLjggLjItMS4xIC4zLTMzLjMgMTIuMS05NC4zIDkuNy0xMzQuNy0xNC44LTM3LjYtMjIuOC01My4xLTU4LjctNTEuOC03NC42IDEuOC0yMS4zIDIyLjktMjMuMiAzNS45LTE5LjYgMTQuNCAzLjkgMjQuNCAxNy42IDM4LjkgMjcuNCAxNS42IDEwLjQgMzIuOSAxMy43IDUxLjMgMTAuMyAxNC45LTIuNyAzNC40LTEyLjMgMzYuNS0xNC41LTEuMS0uMS0xLjgtLjEtMi41LS4yLTYuMi0uNi0xMi40LS44LTE4LjUtMS43LTExMS4yLTE2LjUtMTI4LjktMTYzLjYtMjUyLjUtMTczLjEtNDQuMy0zLjQtOTkuNCA4LjEtMTM2LjMgMzUtLjggLjYtMS41IDEuMi0yLjIgMS44IC4xIC4yIC4xIC4zIC4yIC41IC44IDAgMS42LS4xIDIuNC0uMiA2LjMtMSAxMi41LS44IDE4LjcgLjMgMjMuOCA0LjMgNDcuNyAyMy4xIDU1LjkgNzYuNSA1LjMgMzQuMy0uNyA1MC44IDggODYuMSAxOSA3Ny4xIDkxIDEwNy42IDEyNy43IDEwNi40ek03NS4zIDY0LjljLS45LTEtLjktMS4yLTEuMy0yIDEyLjEtMi42IDI0LjItNC4xIDM2LjYtNC44LTEuMSAxNC43LTIyLjIgMjEuMy0zNS4zIDYuOHpNMjcyLjIgNDE1LjRjLTQyLjggMS4yLTkyLTI2LjctMTIzLjUtNjEuNC00LjYtNS0xNi44LTIwLjItMTguNi0yMy40bC40LS40YzYuNiA0LjEgMjUuNyAxOC42IDU0LjggMjcgMjQuMiA3IDQ4LjEgNi4zIDcxLjYtMy4zIDIyLjctOS4zIDQxLS41IDQzLjEgMi45LTE4LjUgMy44LTIwLjEgNC40LTI0IDcuOS01LjEgNC40LTQuNiAxMS43IDcgMTcuMiAyNi4yIDEyLjQgNjMtMi44IDk3LjIgMjUuNCAyLjQgMiA4LjEgNy44IDEwLjEgMTAuNy0uMSAuMi0uMyAuMy0uNCAuNS00LjgtMS41LTE2LjQtNy41LTQwLjItOS4zLTI0LjctMi00Ni4zIDUuMy03Ny41IDYuMnpNNDQ3IDE2My40YzE2LjQtNS4yIDQxLjMtMTMuNCA2Ni41LTMuMyAxNi4xIDYuNSAyNi4yIDE4LjcgMzIuMSAzNC42IDMuNSA5LjQgNS4xIDE5LjcgNS4xIDI4LjctLjIgMC0uNCAwLS42IC4xLS4yLS40LS40LS45LS41LTEuMy01LTIyLTI5LjktNDMuOC02Ny42LTI5LjktNTAuMiAxOC42LTEzMC40IDkuNy0xNzYuOS00OC0uNy0uOS0yLjQtMS43LTEuMy0zLjIgLjEtLjIgMi4xIC42IDMgMS4zIDE4LjEgMTMuNCAzOC4zIDIxLjkgNjAuMyAyNi4yIDMwLjUgNi4xIDU0LjYgMi45IDc5LjktNS4yek01NDkuNyAyODAuOWMtMzIuNCAuMi0zMy44IDUwLjEtMTAzLjYgNjQuNC0xOC4yIDMuNy0zOC43IDQuNi00NC45IDQuMmwwLS40YzIuOC0xLjUgMTQuNy0yLjYgMjkuNy0xNi42IDcuOS03LjMgMTUuMy0xNS4xIDIyLjgtMjIuOSAxOS41LTIwLjIgNDEuNC00Mi4yIDgxLjktMzkgMjMuMSAxLjggMjkuMyA4LjIgMzYuMSAxMi43IC4zIC4yIC40IC41IC43IC45LS41IDAtLjcgLjEtLjkgMC03LTIuNy0xNC4zLTMuMy0yMS44LTMuM3ptLTEyLjMtMjQuMWMtLjEgLjItLjEgLjQtLjIgLjYtMjguOS00LjQtNDgtNy45LTY4LjUgNC0xNyA5LjktMzEuNCAyMC41LTYyIDI0LjQtMjcuMSAzLjQtNDUuMSAyLjQtNjYuMS04LS4zLS4yLS42LS40LTEtLjYgMC0uMiAuMS0uMyAuMS0uNSAyNC45IDMuOCAzNi40IDUuMSA1NS41LTUuOCAyMi4zLTEyLjkgNDAuMS0yNi42IDcxLjMtMzEgMjkuNi00LjEgNTEuMyAyLjUgNzAuOSAxNi45ek0yNjguNiA5Ny4zYy0uNi0uNi0xLjEtMS4yLTIuMS0yLjMgNy42IDAgMjkuNy0xLjIgNTMuNCA4LjQgMTkuNyA4IDMyLjIgMjEgNTAuMiAzMi45IDExLjEgNy4zIDIzLjQgOS4zIDM2LjQgOC4xIDQuMy0uNCA4LjUtMS4yIDEyLjgtMS43IC40LS4xIC45IDAgMS41IC4zLS42IC40LTEuMiAuOS0xLjggMS4yLTguMSA0LTE2LjcgNi4zLTI1LjYgNy4xLTI2LjEgMi42LTUwLjMtMy43LTczLjQtMTUuNC0xOS4zLTkuOS0zNi40LTIyLjktNTEuNC0zOC42ek02NDAgMzM1LjdjLTMuNSAzLjEtMjIuNyAxMS42LTQyLjcgNS4zLTEyLjMtMy45LTE5LjUtMTQuOS0zMS42LTI0LjEtMTAtNy42LTIwLjktNy45LTI4LjEtOC40IC42LS44IC45LTEuMiAxLjItMS40IDE0LjgtOS4yIDMwLjUtMTIuMiA0Ny4zLTYuNSAxMi41IDQuMiAxOS4yIDEzLjUgMzAuNCAyNC4yIDEwLjggMTAuNCAyMSA5LjkgMjMuMSAxMC41IC4xLS4xIC4yIDAgLjQgLjR6bS0yMTIuNSAxMzdjMi4yIDEuMiAxLjYgMS41IDEuNSAyLTE4LjUtMS40LTMzLjktNy42LTQ2LjgtMjIuMi0yMS44LTI0LjctNDEuNy0yNy45LTQ4LjYtMjkuNyAuNS0uMiAuOC0uNCAxLjEtLjQgMTMuMSAuMSAyNi4xIC43IDM4LjkgMy45IDI1LjMgNi40IDM1IDI1LjQgNDEuNiAzNS4zIDMuMiA0LjggNy4zIDguMyAxMi4zIDExLjF6Il19LEdpcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJnaXQiLGljb246WzUxMiw1MTIsW10sImYxZDMiLCJNMjE2LjMgMTU4LjRsLTc5LjMgMGMtNDAtMTAuNS0xMzAuNS03LjgtMTMwLjUgNzQuOCAwIDMwLjEgMTUgNTEuMiAzNSA2MS0yNS4xIDIzLTM3IDMzLjgtMzcgNDkuMiAwIDExIDQuNSAyMS4xIDE3LjkgMjYuOC0xNC4zIDEzLjQtMjIuNCAyMy4xLTIyLjQgNDEuNCAwIDMyLjEgMjggNTAuOCAxMDEuNiA1MC44IDcwLjggMCAxMTEuOC0yNi40IDExMS44LTczLjIgMC01OC43LTQ1LjItNTYuNS0xNTEuNi02M2wxMy40LTIxLjZjMjcuMyA3LjYgMTE4LjcgMTAgMTE4LjctNjcuOSAwLTE4LjctNy43LTMxLjctMTUtNDEuMWwzNy40LTIuOCAwLTM0LjV6TTE1Mi45IDQwMC4zYzAgMzIuMS0xMDQuOSAzMi4xLTEwNC45IDIuNCAwLTguMSA1LjMtMTUgMTAuNi0yMS41IDc3LjcgNS4zIDk0LjMgMy40IDk0LjMgMTkuMXpNMTAyLjEgMjY1LjdjLTUyLjggMC01MC41LTcxLjIgMS4yLTcxLjIgNDkuNSAwIDUwLjggNzEuMi0xLjIgNzEuMnpNMjM1LjQgMzY2LjJsMC0zMi4xYzI2LjctMy43IDI3LjItMiAyNy4yLTExbDAtMTE5LjVjMC04LjUtMi4xLTcuNC0yNy4yLTE2LjNsNC41LTMyLjkgODQuMiAwIDAgMTY4LjdjMCA2LjUgLjQgNy4zIDYuNSA4LjFsMjAuNyAyLjggMCAzMi4xLTExNS45IDB6bTUyLjUtMjQ0LjNjLTIzLjIgMC0zNi42LTEzLjQtMzYuNi0zNi42czEzLjQtMzUuOCAzNi42LTM1LjhjMjMuNiAwIDM3IDEyLjYgMzcgMzUuOHMtMTMuNCAzNi42LTM3IDM2LjZ6TTUxMiAzNTAuNWMtMTcuNSA4LjUtNDMuMSAxNi4zLTY2LjMgMTYuMy00OC40IDAtNjYuNy0xOS41LTY2LjctNjUuNWwwLTEwNi41YzAtNS40IDEtNC4xLTMxLjctNC4xbDAtMzYuMmMzNS44LTQuMSA1MC0yMiA1NC41LTY2LjNsMzguNiAwYzAgNjUuOC0xLjMgNjEuOCAzLjMgNjEuOGw1Ny4zIDAgMCA0MC42LTYwLjYgMCAwIDk3LjFjMCA2LjktNC45IDUxLjQgNjAuNiAyNi44bDExIDM1Ljh6Il19LFlpcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJvcHRpbi1tb25zdGVyIixpY29uOls1NzYsNTEyLFtdLCJmMjNjIiwiTTU3Mi44IDQyMS40YzUuNi05LjUgNC43LTE1LjItNS40LTExLjYtMy00LjktNy05LjUtMTEuMS0xMy44IDIuOS05LjctLjctMTQuMi0xMC44LTkuMi00LjYtMy4yLTEwLjMtNi41LTE1LjktOS4yIDAtMTUuMS0xMS42LTExLjYtMTcuNi01LjctMTAuNC0xLjUtMTguNy0uMy0yNi44IDUuNyAuMy02LjUgLjMtMTMgLjMtMTkuNyAxMi42IDAgNDAuMi0xMSA0NS45LTM2LjIgMS40LTYuOCAxLjYtMTMuOC0uMy0yMS45LTMtMTMuNS0xNC4zLTIxLjMtMjUuMS0yNS43LS44LTUuOS03LjYtMTQuMy0xNC45LTE1LjlzLTEyLjQgNC45LTE0LjEgMTAuM2MtOC41IDAtMTkuMiAyLjgtMjEuMSA4LjQtNS40LS41LTExLjEtMS40LTE2LjgtMS45IDIuNy0xLjkgNS40LTMuNSA4LjQtNC42IDUuNC05LjIgMTQuNi0xMS40IDI1LjctMTEuNmwwLTIuOGMxOS41LS41IDQzLTUuOSA1My44LTE4LjEgMTIuNy0xMy44IDE0LjYtMzcuMyAxMi40LTU1LjEtMi40LTE3LjMtOS43LTM3LjYtMjQuNi00OC4xLTguNC01LjktMjEuNi0uOC0yMi43IDkuNS0yLjIgMTkuNiAxLjIgMzAtMzguNiAyNS4xLTEwLjMtMjMuOC0yNC42LTQ0LjYtNDIuNy02MC02OS42LTU5LjctMTY3LjctNTMuOC0yNDQuMi0zNy42IDE5LjcgNC42IDQxLjEgOC42IDU5LjcgMTYuNS0yNi4yIDIuNC01Mi43IDExLjMtNzYuMiAyMy4yLTMyLjggMTctNDQgMjkuOS01Ni43IDQyLjQgMTQuOS0yLjIgMjguOS01LjEgNDMuOC0zLjgtOS43IDUuNC0xOC40IDEyLjItMjYuNSAyMC0yNS44IC45LTIzLjgtNS4zLTI2LjItMjUuOS0xLjEtMTAuNS0xNC4zLTE1LjQtMjIuNy05LjctMjguMSAxOS45LTMzLjUgNzkuOS0xMi4yIDEwMy41IDEwLjggMTIuMiAzNS4xIDE3LjMgNTQuOSAxNy44LS4zIDEuMS0uMyAxLjktLjMgMi43IDEwLjggLjUgMTkuNSAyLjcgMjQuNiAxMS42IDMgMS4xIDUuNyAyLjcgOC4xIDQuNi01LjQgLjUtMTEuMSAxLjQtMTYuNSAxLjktMy4zLTYuNi0xMy43LTguMS0yMS4xLTguMS0xLjYtNS43LTYuNS0xMi4yLTE0LjEtMTAuMy02LjggMS45LTE0LjEgMTAtMTQuOSAxNS45LTIyLjUgOS41LTMwLjEgMjYuOC0yNS4xIDQ3LjYgNS4zIDI0LjggMzMgMzYuMiA0NS45IDM2LjJsMCAxOS43Yy02LjYtNS0xNC4zLTcuNS0yNi44LTUuNy01LjUtNS41LTE3LjMtMTAuMS0xNy4zIDUuNy01LjkgMi43LTExLjQgNS45LTE1LjkgOS4yLTkuOC00LjktMTMuNi0xLjctMTEuMSA5LjItNC4xIDQuMy03LjggOC42LTExLjEgMTMuOC0xMC4yLTMuNy0xMSAyLjItNS40IDExLjYtMS4xIDMuNS0xLjYgNy0xLjkgMTAuOC0uNSAzMS42IDQ0LjYgNjQgNzMuNSA2NS4xIDE3LjMgLjUgMzQuNi04LjQgNDMtMjMuNSAxMTMuMiA0LjkgMjI2LjcgNC4xIDM0MC4yIDAgOC4xIDE1LjEgMjUuNCAyNC4zIDQyLjcgMjMuNSAyOS4yLTEuMSA3NC4zLTMzLjUgNzMuNS02NS4xIC4yLTMuNy0uNy03LjItMS43LTEwLjd6TTQ5OSAxNjcuNGMxLjEtMyAyLjQtOC40IDIuNC0xNC42IDAtNS45IDYuOC04LjEgMTQuMS0uOCAxMS4xIDExLjYgMTQuOSA0MC41IDEzLjggNTEuMS00LjEtMTMuNi0xMy0yOS0zMC4zLTM1Ljd6bS00LjYgNi43YzE5LjUgNi4yIDI4LjYgMjcuNiAyOS43IDQ4LjktMS4xIDIuNy0zIDUuNC00LjkgNy42LTUuNyA1LjktMTUuNCAxMC0yNi4yIDEyLjIgNC4zLTIxLjMgLjMtNDcuMy0xMi43LTYzIDQuOS0uOCAxMC45LTIuNCAxNC4xLTUuN3ptLTI0LjEgNi44YzEzLjggMTEuOSAyMCAzOS4yIDE0LjEgNjMuNS00LjEgLjUtOC4xIC44LTExLjYgLjgtMS45LTIxLjktNi44LTQ0LTE0LjMtNjQuNiAzLjcgLjMgOC4xIC4zIDExLjggLjN6TTQ3LjcgMjAzYy0xLjEtMTAuNSAyLjQtMzkuNSAxMy44LTUxLjEgNy03LjMgMTQuMS01LjEgMTQuMSAuOCAwIDYuMiAxLjQgMTEuNiAyLjQgMTQuNi0xNy4zIDYuOC0yNi4yIDIyLjItMzAuMyAzNS43em05LjcgMjcuNmMtMS45LTIuMi0zLjUtNC45LTQuOS03LjYgMS40LTIxLjMgMTAuMy00Mi43IDI5LjctNDguOSAzLjIgMy4yIDkuMiA0LjkgMTQuMSA1LjctMTMgMTUuNy0xNyA0MS42LTEyLjcgNjMtMTAuOC0yLjItMjAuNS02LTI2LjItMTIuMnptNDcuOSAxNC42Yy00LjEgMC04LjEtLjMtMTIuNy0uOC00LjYtMTguNi0xLjktMzguOSA1LjQtNTNsMCAuMyAxMi4yLTUuMWM0LjktMS45IDkuNy0zLjggMTQuOS00LjktMTAuNyAxOS43LTE3LjQgNDEuMy0xOS44IDYzLjV6bTE4NC0xMC41YTc2LjEgNzYuMSAwIDEgMSAwLTE1Mi4yIDc2LjEgNzYuMSAwIDEgMSAwIDE1Mi4yem0xMTUuNiAyMi4xYy0uMyAxNy44LTcgNDguOS0yMyA1Ny0xMy4yIDYuNi02LjUtNy41LTE2LjUtNTguMSAxMy4zIC4zIDI2LjYgLjMgMzkuNSAxLjF6bS01NC0xLjZjLjggNC45IDMuOCA0MC4zLTEuNiA0MS45LTExLjYgMy41LTQwIDQuMy01MS4xLTEuMS00LjEtMy00LjYtMzUuOS00LjMtNDEuMWwwIC4zYzE4LjktLjMgMzguMS0uMyA1NyAwek0yNzguNSAzMDljLTEzIDMuNS00MS42IDQuMS01NC42LTEuNi02LjUtMi43LTMuOC00Mi40LTEuOS01MS42IDE5LjItLjUgMzguNC0uNSA1Ny44LS44bDAgLjNjMS4xIDguMyAzLjMgNTEuMi0xLjMgNTMuN3pNMTcyIDI1Ny45YzEyLjItLjggMjQuNi0xLjQgMzYuOC0xLjYtMi40IDE1LjQtMyA0My41LTQuOSA1Mi4yLTEuMSA2LjgtNC4zIDYuOC05LjcgNC4zLTIxLjktOS44LTI3LjYtMzUuMi0yMi4yLTU0Ljl6bS0zNS40IDMxLjNjNy44LTEuMSAxNS43LTEuOSAyMy41LTIuNyAxLjYgNi4yIDMuOCAxMS45IDcgMTcuNiAxMCAxNyA0NCAzNS43IDQ1LjEgNyA2LjIgMTQuOSA0MC44IDEyLjIgNTQuOSAxMC44IDE1LjctMS40IDIzLjgtMS40IDI2LjgtMTQuMyAxMi40IDQuMyAzMC44IDQuMSA0NCAzIDExLjMtLjggMjAuOC0uNSAyNC42LTguOSAxLjEgNS4xIDEuOSAxMS42IDQuNiAxNi44IDEwLjggMjEuMyAzNy4zIDEuNCA0Ni44LTMxLjYgOC42IC44IDE3LjYgMS45IDI2LjUgMi43LS40IDEuMy0zLjggNy4zIDcuMyAxMS42LTQ3LjYgNDctOTUuNyA4Ny44LTE2My4yIDEwNy02My4yLTIwLjgtMTEyLjEtNTkuNS0xNTUuOS0xMDYuNSA5LjYtMy40IDEwLjQtOC44IDgtMTIuNXpNMTE1IDQ2MS43Yy0zLjggMTcuOC0yMS45IDI5LjctMzkuNyAyOC45LTE5LjItLjgtNDYuNS0xNy01OS4yLTM2LjUtMi43LTMxLjEgNDMuOC02MS4zIDY2LjItNTQuNiAxNC45IDQuMyAyNy44IDMwLjggMzMuNSA1NCAwIDMtLjMgNS43LS44IDguMnptLTguNy02NmMtLjUtMTMuNS0uNS0yNy0uMy00MC41bC4zIDBjMi43LTEuNiA1LjctMy44IDcuOC02LjUgNi41LTEuNiAxMy01LjEgMTUuMS05LjIgMy4zLTcuMS03LTcuNS01LjQtMTIuNCAyLjctMS4xIDUuNy0yLjIgNy44LTMuNSAyOS4yIDI5LjIgNTguNiA1Ni41IDk3LjMgNzctMzYuOCAxMS4zLTcyLjQgMjcuNi0xMDUuOSA0Ny0xLjItMTguNi03LjctMzUuOS0xNi43LTUxLjl6bTMzNy42IDY0LjZjLTEwMyAzLjUtMjA2LjIgNC4xLTMwOS40IDAgMCAuMyAwIC4zLS4zIC4zbDAtLjMgLjMgMGMzNS4xLTIxLjYgNzIuMi0zOS4yIDExMi40LTUwLjggMTEuNiA1LjEgMjMgOS41IDM0LjkgMTMuMiAyLjIgLjggMi4yIC44IDQuMyAwIDE0LjMtNC4xIDI4LjQtOS4yIDQyLjItMTUuNCA0MS41IDExLjcgNzguOCAzMS43IDExNS42IDUzem0xMC41LTEyLjRjLTM1LjktMTkuNS03My0zNS45LTExMS45LTQ3LjYgMzguMS0yMCA3MS45LTQ3LjMgMTAzLjUtNzYuNyAyLjIgMS40IDQuNiAyLjQgNy42IDMuMiAwIC44IC4zIDEuOSAuNSAyLjQtNC42IDIuNy03LjggNi4yLTUuOSAxMC4zIDIuMiAzLjggOC42IDcuNiAxNS4xIDguOSAyLjQgMi43IDUuMSA1LjEgOC4xIDYuOCAwIDEzLjgtLjMgMjcuNi0uOCA0MS4zbC4zLS4zYy05LjMgMTUuOS0xNS41IDM3LTE2LjUgNTEuN3ptMTA1LjkgNi4yYy0xMi43IDE5LjUtNDAgMzUuNy01OS4yIDM2LjUtMTkuMyAuOS00MC41LTEzLjItNDAuNS0zNyA1LjctMjMuMiAxOC45LTQ5LjcgMzMuNS01NCAyMi43LTYuOSA2OS4yIDIzLjQgNjYuMiA1NC41ek0zNzMuMSA3NS4yYy0zLjgtNzIuMS0xMDAuOC03OS43LTEyNi0yMy41IDQ0LjYtMjQuMyA5MC4zLTE1LjcgMTI2IDIzLjV6TTc1IDQwNy4xYy0xNS43IDEuNi00OS41IDI1LjQtNDkuNSA0My4yIDAgMTEuNiAxNS43IDE5LjUgMzIuMiAxNC45IDEyLjItMy4yIDMxLjEtMTcuNiAzNS45LTI3LjMgNi0xMS42LTMuNy0zMi43LTE4LjYtMzAuOHpNMjkwLjkgMjMwLjljMjguNiAwIDUxLjktMjEuNiA1MS45LTQ4LjQgMC0zNi4xLTQwLjUtNTguMS03Mi4yLTQ0LjMgOS41IDMgMTYuNSAxMS42IDE2LjUgMjEuNiAwIDIzLjMtMzMuMyAzMi00Ni41IDExLjMtNy4zIDM0LjEgMTkuNCA1OS44IDUwLjMgNTkuOHpNNjguMiA0NzQuMWMuNSA2LjUgMTIuMiAxMi43IDIxLjYgOS41IDYuOC0yLjcgMTQuNi0xMC41IDE3LjMtMTYuMiAzLTctMS4xLTIwLTkuNy0xOC40LTguOSAxLjYtMjkuNyAxNi43LTI5LjIgMjUuMXptNDMzLjItNjdjLTE0LjktMS45LTI0LjYgMTkuMi0xOC45IDMwLjggNC45IDkuNyAyNC4xIDI0LjEgMzYuMiAyNy4zIDE2LjUgNC42IDMyLjItMy4yIDMyLjItMTQuOSAwLTE3LjgtMzMuOC00MS42LTQ5LjUtNDMuMnpNNDc5IDQ0OWMtOC40LTEuNi0xMi40IDExLjMtOS41IDE4LjQgMi40IDUuNyAxMC4zIDEzLjUgMTcuMyAxNi4yIDkuMiAzLjIgMjEuMS0zIDIxLjMtOS41IC45LTguNC0yMC4yLTIzLjUtMjkuMS0yNS4xeiJdfSxaaXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiamVua2lucyIsaWNvbjpbNDQ4LDUxMixbXSwiZjNiNiIsIk00NTUuNCA0MjVjLTEuNC0xMS4yLTE5LTIzLjEtMjguMi0zMS45LTUuMS01LTI5LTIzLjEtMzAuNC0yOS45LTEuNC02LjYgOS43LTIxLjUgMTMuMy0yOC45IDUuMS0xMC43IDguOC0yMy43IDExLjMtMzIuNiAxOC44LTY2LjEgMjAuNy0xNTYuOS02LjItMjExLjItMTAuMi0yMC42LTM4LjYtNDktNTYuNC02Mi41LTQyLTMxLjctMTE5LjYtMzUuMy0xNzAuMS0xNi42LTE0LjEgNS4yLTI3LjggOS44LTQwLjEgMTcuMS0zMy4xIDE5LjQtNjguMyAzMi41LTc4LjEgNzEuNi0yNC4yIDEwLjgtMzEuNSA0MS44LTMwLjMgNzcuOCAuMiA3IDQuMSAxNS44IDIuNyAyMi40LS43IDMuMy01LjIgNy42LTYuMSA5LjgtMTEuNiAyNy43LTIuMyA2NCAxMS4xIDgzLjcgOC4xIDExLjkgMjEuNSAyMi40IDM5LjIgMjUuMiAuNyAxMC42IDMuMyAxOS43IDguMiAzMC40IDMuMSA2LjggMTQuNyAxOSAxMC40IDI3LjctMi4yIDQuNC0yMSAxMy44LTI3LjMgMTcuNi0yMS4xIDEyLjUtMzYuNCAyMC4zLTU1LjkgMzQuMy0xMi42IDktMzIuMyAxMC4yLTI5LjIgMzEuMSAyLjEgMTQuMSAxMC4xIDMxLjYgMTQuNyA0NS44IC43IDIgMS40IDQuMSAyLjEgNmw0MjIgMGM0LjktMTUuMyA5LjctMzAuOSAxNC42LTQ3LjIgMy40LTExLjQgMTAuMi0yNy44IDguNy0zOS43ek0xNzQuMiAzMy43YzEuOC0uNSAzLjQgLjcgNC45IDIuNC0uMiA1LjItNS40IDUuMS04LjkgNi44LTUuNCA2LjctMTMuNCA5LjgtMjAgMTcuMi02LjggNy41LTE0LjQgMjcuNy0yMy40IDMwLTQuNSAxLjEtOS43LS44LTEzLjYtLjUtMTAuNCAuNy0xNy43IDYtMjguMyA3LjUgMTMuNi0yOS45IDU2LjEtNTQgODkuMy02My40ek02OS40IDEyNy4zYzEzLjUtMTQuOSAzMi4xLTI0LjEgNTQuOC0yNS45IDExLjcgMjkuNy04LjQgNjUtLjkgOTcuNiAyLjMgOS45IDEwLjIgMjUuNC0yLjQgMjUuNyAuMy0yOC4zLTM0LjgtNDYuMy02MS4zLTI5LjYtMS44LTIxLjUtNC45LTUxLjcgOS44LTY3Ljh6bTM2LjcgMjAwLjJjLTEtNC4xLTIuNy0xMi45LTIuMy0xNS4xIDEuNi04LjcgMTcuMS0xMi41IDExLTI0LjctMTEuMy0uMS0xMy44IDEwLjItMjQuMSAxMS4zLTI2LjcgMi42LTQ1LjYtMzUuNC00NC40LTU4LjQgMS0xOS41IDE3LjYtMzguMiA0MC4xLTM1LjggMTYgMS44IDIxLjQgMTkuMiAyNC41IDM0LjcgOS4yIC41IDIyLjUtLjQgMjYuOS03LjYtLjYtMTcuNS04LjgtMzEuNi04LjItNDcuNyAxLTMwLjMgMTcuNS01Ny42IDQuOC04Ny40IDEzLjYtMzAuOSA1My41LTU1LjMgODMuMS03MCAzNi42LTE4LjMgOTQuOS0zLjcgMTI5LjMgMTUuOCAxOS43IDExLjEgMzQuNCAzMi43IDQ4LjMgNTAuNy0xOS41LTUuOC0zNi4xIDQuMi0zMy4xIDIwLjMgMTYuMy0xNC45IDQ0LjItLjIgNTIuNSAxNi40IDcuOSAxNS44IDcuOCAzOS4zIDkgNjIuOCAyLjkgNTctMTAuNCAxMTUuOS0zOS4xIDE1Ny4xLTcuNyAxMS0xNC4xIDIzLTI0LjkgMzAuNi0yNiAxOC4yLTY1LjQgMzQuNy05OS4yIDIzLjQtNDQuNy0xNS02NS00NC44LTg5LjUtNzguOCAuNyAxOC43IDEzLjggMzQuMSAyNi44IDQ4LjQgMTEuMyAxMi41IDI1IDI2LjYgMzkuNyAzMi40LTEyLjMtMi45LTMxLjEtMy44LTM2LjIgNy4yLTI4LjYtMS45LTU1LjEtNC44LTY4LjctMjQuMi0xMC42LTE1LjQtMjEuNC00MS40LTI2LjMtNjEuNHptMjIyIDEyNC4xYzQuMS0zIDExLjEtMi45IDE3LjQtMy42LTUuNC0yLjctMTMtMy43LTE5LjMtMi4yLS4xLTQuMi0yLTYuOC0zLjItMTAuMiAxMC42LTMuOCAzNS41LTI4LjUgNDkuNi0yMC4zIDYuNyAzLjkgOS41IDI2LjIgMTAuMSAzNyAuNCA5LS44IDE4LTQuNSAyMi44LTE4LjgtLjYtMzUuOC0yLjgtNTAuNy03IC45LTYuMS0xLTEyLjEgLjYtMTYuNXptLTE3LjItMjBjLTE2LjggLjgtMjYtMS4yLTM4LjMtMTAuOCAuMi0uOCAxLjQtLjUgMS41LTEuNCAxOCA4IDQwLjgtMy4zIDU5LTQuOS03LjkgNS4xLTE0LjYgMTEuNi0yMi4yIDE3LjF6bS0xMi4xIDMzLjJjLTEuNi05LjQtMy41LTEyLTIuOC0yMC4yIDI1LTE2LjYgMjkuNyAyOC42IDIuOCAyMC4yek0xOTQuMyA0MzguNmMtMTEuNi0uNy00OC4xLTE0LTM4LjUtMjMuNyA5LjQgNi41IDI3LjUgNC45IDQxLjMgNy4zIC44IDQuNC0yLjggMTAuMi0yLjggMTYuNHpNMjYgNDk3LjFjLTQuMy0xMi43LTkuMi0yNS4xLTE0LjgtMzYuOSAzMC44LTIzLjggNjUuMy00OC45IDEwMi4yLTYzLjUgMi44LTEuMSAyMy4yIDI1LjQgMjYuMiAyNy42IDE2LjUgMTEuNyAzNyAyMSA1Ni4yIDMwLjIgMS4yIDguOCAzLjkgMjAuMiA4LjcgMzUuNSAuNyAyLjMgMS40IDQuNyAyLjIgNy4ybC0xODAuNyAwIDAtLjF6bTI0MC42IDUuN2wtLjggMGMuMy0uMiAuNS0uNCAuOC0uNWwwIC41em03LjUtNS43YzIuMS0xLjQgNC4zLTIuOCA2LjQtNC4zIDEuMSAxLjQgMi4yIDIuOCAzLjIgNC4zbC05LjYgMHptMTUuMS0yNC43Yy0xMC44IDcuMy0yMC42IDE4LjMtMzMuMyAyNS4yLTYgMy4zLTI3IDExLjctMzMuNCAxMC4yLTMuNi0uOC0zLjktNS4zLTUuNC05LjUtMy4xLTktMTAuMS0yMy40LTEwLjgtMzctLjgtMTcuMi0yLjUtNDYgMTYtNDIuNCAxNC45IDIuOSAzMi4zIDkuNyA0My45IDE2LjEgNy4xIDMuOSAxMS4xIDguNiAyMS45IDkuNS0uMSAxLjQtLjEgMi44LS4yIDQuMy01LjkgMy45LTE1LjMgMy44LTIxLjggNy4xIDkuNSAuNCAxNyAyLjcgMjMuNSA1LjktLjEgMy40LS4zIDctLjQgMTAuNnptNTMuNCAyNC43bC0xNCAwYy0uMS0zLjItMi44LTUuOC02LjEtNS44cy01LjkgMi42LTYuMSA1LjhsLTE3LjQgMGMtMi44LTQuNC01LjctOC42LTguOS0xMi41IDIuMS0yLjIgNC00LjcgNi02LjkgOSAzLjcgMTQuOC00LjkgMjEuNy00LjIgNy45IC44IDE0LjIgMTEuNyAyNS40IDExbC0uNiAxMi42em04LjcgMGMuMi00IC40LTcuOCAuNi0xMS41IDE1LjYtNy4zIDI5IDEuMyAzNS43IDExLjVsLTM2LjMgMHptODMuNC0zN2MtMi4zIDExLjItNS44IDI0LTkuOSAzNy4xLS4yLS4xLS40LS4xLS42LS4xbC0yNy45IDBjLjYtMS4xIDEuMi0yLjIgMS45LTMuMy0yLjYtNi4xLTktOC43LTEwLjktMTUuNSAxMi4xLTIyLjcgNi41LTkzLjQtMjQuMi03OC41IDQuMy02LjMgMTUuNi0xMS41IDIwLjgtMTkuMyAxMyAxMC40IDIwLjggMjAuMyAzMy4yIDMxLjQgNi44IDYgMjAgMTMuMyAyMS40IDIzLjEgLjggNS41LTIuNiAxOC45LTMuOCAyNS4xek0xOTAuNSAxMzAuNWM1LjQtMTQuOSAyNy4yLTM0LjcgNDUtMzIgNy43IDEuMiAxOCA4LjIgMTIuMiAxNy43LTMwLjItNy00NS4yIDEyLjYtNTQuNCAzMy4xLTguMS0yLTQuOS0xMy4xLTIuOC0xOC44em0xODQuMSA2My4xYzguMi0zLjYgMjIuNC0uNyAyOS42LTUuMy00LjItMTEuNS0xMC4zLTIxLjQtOS4zLTM3LjcgLjUgMCAxIDAgMS40IC4xIDYuOCAxNC4yIDEyLjcgMjkuMiAyMS40IDQxLjctNS43IDEzLjUtNDMuNiAyNS40LTQzLjEgMS4yem0tOTYuOCAyLjdjLTYuOC0xMC45LTE5LTMyLjUtMTQuNS00NS4zIDYuNSAxMS45IDguNiAyNC40IDE3LjggMzMuMyA0LjEgNCAxMi4yIDkgOC4yIDIwLjItLjkgMi43LTcuOCA4LjYtMTEuNyA5LjctMTQuNCA0LjMtNDcuOSAuOS0zNi42LTE3LjEgMTEuOSAuNyAyNy45IDcuOCAzNi44LS44em0yNy4zIDcwYzMuOCA2LjYgMS40IDE4LjcgMTIuMSAyMC42IDIwLjIgMy40IDQzLjYtMTIuMyA1OC4xLTE3LjggOS0xNS4yLS44LTIwLjctOC45LTMwLjUtMTYuNi0yMC0zOC44LTQ0LjgtMzgtNzQuNyA2LjctNC45IDcuMyA3LjQgOC4yIDkuNyA4LjcgMjAuMyAzMC40IDQ2LjIgNDYuMyA2My41IDMuOSA0LjMgMTAuMyA4LjQgMTEgMTEuMiAyLjEgOC4yLTUuNCAxOC00LjUgMjMuNS0yMS43IDEzLjktNDUuOCAyOS4xLTgxLjQgMjUuNi03LjQtNi43LTEwLjMtMjEuNC0yLjktMzEuMXptLTIwMS4zLTkuMmMtNi44LTMuOS04LjQtMjEtMTYuNC0yMS40LTExLjQtLjctOS4zIDIyLjItOS4zIDM1LjUtNy44LTcuMS05LjItMjkuMS0zLjUtNDAuMy02LjYtMy4yLTkuNSAzLjYtMTMuMSA1LjkgNC43LTM0LjEgNDkuOC0xNS44IDQyLjMgMjAuM3ptMjk5LjYgMjguOGMtMTAuMSAxOS4yLTI0LjQgNDAuNC01NCA0MS0uNi02LjItMS4xLTE1LjYgMC0xOS40IDIyLjctMi4yIDM2LjYtMTMuNyA1NC0yMS42ek0yNjEuNSAyOTguM2MxOC45IDkuOSA1My42IDExIDc5LjMgMTAuMiAxLjQgNS42IDEuMyAxMi42IDEuNCAxOS40LTMzIDEuOC03Mi02LjQtODAuNy0yOS42ek0zNTMuNyAzNDVjLTEuNyA0LjMtNS4zIDkuMy05LjggMTEuMS0xMi4xIDQuOS00NS42IDguNy02Mi40LS4zLTEwLjctNS43LTE3LjUtMTguNS0yMy40LTI2LTIuOC0zLjYtMTYuOS0xMi45LS4yLTEyLjkgMTMuMSAzMi43IDU4IDI5IDk1LjggMjguMXoiXX0sWGlyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InNsaWRlc2hhcmUiLGljb246WzUxMiw1MTIsW10sImYxZTciLCJNMTg3LjkgMTUzLjdjLTM0IDAtNjEuNyAyNS43LTYxLjcgNTcuNyAwIDMxLjcgMjcuNyA1Ny43IDYxLjcgNTcuN3M2MS43LTI2IDYxLjctNTcuN2MwLTMyLTI3LjctNTcuNy02MS43LTU3Ljd6bTE0My40IDBjLTM0IDAtNjEuNyAyNS43LTYxLjcgNTcuNyAwIDMxLjcgMjcuNyA1Ny43IDYxLjcgNTcuNyAzNC4zIDAgNjEuNy0yNiA2MS43LTU3LjcgLjEtMzItMjcuNC01Ny43LTYxLjctNTcuN3ptMTU2LjYgOTBsLTYgNC4zIDAtMTk4LjNjMC0yNy40LTIwLjYtNDkuNy00Ni00OS43TDc2LjggMGMtMjUuNCAwLTQ2IDIyLjMtNDYgNDkuN2wwIDE5OC4zYy0yLTEuNC00LjMtMi45LTYuMy00LjMtMTUuMS0xMC42LTI1LjEgNC0xNiAxNy43IDE4LjMgMjIuNiA1My4xIDUwLjMgMTA2LjMgNzItNTYuMyAxOTEuNyAxMzcuNCAyMjIuMyAxMzQuMyAxMjQuMSAwLS43IC4zLTU2LjYgLjMtOTYuNiA1LjEgMS4xIDkuNCAyLjMgMTMuNyAzLjEgMCAzOS43IC4zIDkyLjggLjMgOTMuNS0zLjEgOTguMyAxOTAuNiA2Ny43IDEzNC4zLTEyNCA1My4xLTIxLjcgODgtNDkuNCAxMDYuMy03MiA5LjEtMTMuOC0uOS0yOC4zLTE2LjEtMTcuOHptLTMwLjUgMTkuMmMtNjguOSAzNy40LTEyOC4zIDMxLjEtMTYwLjYgMjkuNy0yMy43LS45LTMyLjYgOS4xLTMzLjcgMjQuOS0xMC4zLTcuNy0xOC42LTE1LjUtMjAuMy0xNy4xLTUuMS01LjQtMTMuNy04LTI3LjEtNy43LTMxLjcgMS4xLTg5LjcgNy40LTE1Ny40LTI4bDAtMTkyLjRjMC0zNC45IDguOS00NS43IDQwLjYtNDUuN2wzMTcuNyAwYzMwLjMgMCA0MC45IDEyLjkgNDAuOSA0NS43bDAgMTkwLjYtLjEgMHoiXX0sUWlyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InViZXIiLGljb246WzQ0OCw1MTIsW10sImY0MDIiLCJNNDE0LjEgMzJMMzMuOSAzMkMxNS4yIDMyIDAgNDcuMiAwIDY1LjlMMCA0NDZjMCAxOC44IDE1LjIgMzQgMzMuOSAzNEw0MTQgNDgwYzE4LjcgMCAzMy45LTE1LjIgMzMuOS0zMy45bDAtMzgwLjJDNDQ4IDQ3LjIgNDMyLjggMzIgNDE0LjEgMzJ6TTIzNy42IDM5MS4xQzE2MyAzOTguNiA5Ni40IDM0NC4yIDg4LjkgMjY5LjZsOTQuNCAwIDAgMjAuNGMwIDMuNyAzIDYuOCA2LjggNi44bDY3LjkgMGMzLjcgMCA2LjgtMyA2LjgtNi44bDAtNjcuOWMwLTMuNy0zLTYuOC02LjgtNi44bC02Ny45IDBjLTMuNyAwLTYuOCAzLTYuOCA2LjhsMCAyMC40LTk0LjQgMGM3LTY5LjQgNjUuNC0xMjIuMiAxMzUuMS0xMjIuMnMxMjguMSA1Mi44IDEzNS4xIDEyMi4yYzcuNSA3NC41LTQ2LjkgMTQxLjEtMTIxLjUgMTQ4LjZ6Il19LEtpcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJkaWdpdGFsLW9jZWFuIixpY29uOls1MTIsNTEyLFtdLCJmMzkxIiwiTTg3IDQ4MS44bDczLjcgMCAwLTczLjYtNzMuNyAwIDAgNzMuNnpNMjUuNCAzNDYuNmwwIDYxLjYgNjEuNiAwIDAtNjEuNi02MS42IDB6TTQ5MS42IDE3Ni45QzQ2OC42IDEwMi43IDQwOS4yIDQzLjYgMzM1IDIwLjMgMTY0LjktMzIuOCA4IDkzLjcgOCAyNTUuOWw5NS44IDBjMC0xMDEuOCAxMDEtMTgwLjUgMjA4LjEtMTQxLjcgMzkuNyAxNC4zIDcxLjUgNDYuMSA4NS44IDg1LjcgMzkuMSAxMDctMzkuNyAyMDcuOC0xNDEuNCAyMDhsMCAuMy0uMyAwIDAgOTUuOGMxNjIuNiAwIDI4OC44LTE1Ni44IDIzNS42LTMyNy4xem0tMjM1LjMgMjMxbDAtOTUuMy05NS42IDAgMCA5NS42IDk1LjMgMCAwLS4zIC4zIDB6Il19LEppcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJzb3VuZGNsb3VkIixpY29uOls2NDAsNTEyLFtdLCJmMWJlIiwiTTY0MC4yIDI5OC42Yy0xLjMgMjMuMS0xMS41IDQ0LjgtMjguNCA2MC41cy0zOS4yIDI0LjQtNjIuMyAyNC4xbC0yMTggMGMtNC44IDAtOS40LTItMTIuOC01LjRzLTUuMy04LTUuMy0xMi44bDAtMjM0LjhjLS4yLTQgLjktOCAzLjEtMTEuNHM1LjMtNi4xIDktNy43YzAgMCAyMC4xLTEzLjkgNjIuMy0xMy45IDI1LjggMCA1MS4xIDYuOSA3My4zIDIwLjEgMTcuMyAxMC4yIDMyLjMgMjMuOCA0NC4xIDQwLjFzMjAgMzQuOCAyNC4yIDU0LjRjNy41LTIuMSAxNS4zLTMuMiAyMy4xLTMuMiAxMS43LS4xIDIzLjMgMi4yIDM0LjIgNi43czIwLjUgMTEuMyAyOC43IDE5LjcgMTQuNiAxOC4zIDE4LjkgMjkuMyA2LjMgMjIuNiA1LjkgMzQuM3ptLTM1NC0xNTMuNWMuMS0xIDAtMi0uMy0yLjlzLS44LTEuOC0xLjUtMi42LTEuNS0xLjMtMi40LTEuN2MtMS44LS44LTQtLjgtNS44IDAtLjkgLjQtMS43IDEtMi40IDEuN3MtMS4yIDEuNi0xLjUgMi42LS40IDEuOS0uMyAyLjljLTYgNzguOS0xMC42IDE1Mi45IDAgMjMxLjYgLjIgMS43IDEgMy4zIDIuMyA0LjUgMi42IDIuNCA2LjggMi40IDkuNCAwIDEuMy0xLjIgMi4xLTIuOCAyLjMtNC41IDExLjMtNzkuNCA2LjYtMTUyIDAtMjMxLjZsLjIgMHptLTQ0IDI3LjNjLS4yLTEuOC0xLjEtMy41LTIuNC00LjdzLTMuMS0xLjktNS0xLjktMy42IC43LTUgMS45LTIuMiAyLjktMi40IDQuN2MtNy45IDY3LjktNy45IDEzNi41IDAgMjA0LjQgLjMgMS44IDEuMiAzLjQgMi41IDQuNXMzLjEgMS44IDQuOCAxLjggMy41LS42IDQuOC0xLjggMi4yLTIuOCAyLjUtNC41YzguOC02Ny44IDguOC0xMzYuNSAuMS0yMDQuNGwuMSAwem0tNDQuMy02LjljLS4yLTEuOC0xLTMuNC0yLjMtNC42cy0zLTEuOC00LjgtMS44LTMuNSAuNy00LjggMS44LTIuMSAyLjgtMi4zIDQuNmMtNi43IDcyLTEwLjIgMTM5LjMgMCAyMTEuMSAwIDEuOSAuNyAzLjcgMi4xIDVzMy4xIDIuMSA1IDIuMSAzLjctLjcgNS0yLjEgMi4xLTMuMSAyLjEtNWMxMC41LTcyLjggNy4zLTEzOC4yIC4xLTIxMS4xbC0uMSAwem0tNDQgMjAuNmMwLTEuOS0uOC0zLjgtMi4xLTUuMnMtMy4yLTIuMS01LjItMi4xLTMuOCAuOC01LjIgMi4xLTIuMSAzLjItMi4xIDUuMmMtOC4xIDYzLjMtOC4xIDEyNy41IDAgMTkwLjggLjIgMS44IDEgMy40IDIuNCA0LjZzMy4xIDEuOSA0LjggMS45IDMuNS0uNyA0LjgtMS45IDIuMi0yLjggMi40LTQuNmM4LjgtNjMuMyA4LjktMTI3LjUgLjMtMTkwLjhsLS4xIDB6bS00NC41IDQ3LjZjMC0xLjktLjgtMy44LTIuMS01LjFzLTMuMi0yLjEtNS4xLTIuMS0zLjggLjgtNS4xIDIuMS0yLjEgMy4yLTIuMSA1LjFjLTEwLjUgNDkuMi01LjUgOTMuOSAuNCAxNDMuNiAuMyAxLjYgMS4xIDMuMSAyLjMgNC4yczIuOCAxLjcgNC41IDEuNyAzLjItLjYgNC41LTEuNyAyLjEtMi41IDIuMy00LjJjNi42LTUwLjQgMTEuNi05NC4xIC40LTE0My42em0tNDQuMS03LjVjLS4yLTEuOC0xLjEtMy41LTIuNC00LjhzLTMuMi0xLjktNS0xLjktMy42IC43LTUgMS45LTIuMiAyLjktMi40IDQuOGMtOS4zIDUwLjItNi4yIDk0LjQgLjMgMTQ0LjUgLjcgNy42IDEzLjYgNy41IDE0LjQgMCA3LjItNTAuOSAxMC41LTkzLjggLjMtMTQ0LjVsLS4yIDB6TTIwLjcgMjUwLjhjLS4yLTEuOC0xLjEtMy41LTIuNC00LjhzLTMuMi0xLjktNS0xLjktMy42IC43LTUgMS45LTIuMyAyLjktMi40IDQuOGMtOC41IDMzLjctNS45IDYxLjYgLjYgOTUuNCAuMiAxLjcgMSAzLjMgMi4zIDQuNHMyLjkgMS44IDQuNyAxLjggMy40LS42IDQuNy0xLjggMi4xLTIuNyAyLjMtNC40YzcuNS0zNC41IDExLjItNjEuOCAuNC05NS40bC0uMiAweiJdfSxlMXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic3F1YXJlLWZpZ21hIixpY29uOls0NDgsNTEyLFtdLCJlN2U0IiwiTTM4NCAzMmMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDMyMGMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA0ODBjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgOTZDMCA2MC43IDI4LjcgMzIgNjQgMzJsMzIwIDB6TTE3My43IDk2Yy0zMyAwLTU5LjggMjYuOC01OS44IDU5LjggMCAyMSAxMC44IDM5LjQgMjcuMiA1MC4xLTE2LjQgMTAuNy0yNy4yIDI5LjEtMjcuMiA1MC4xczEwLjggMzkuNSAyNy4yIDUwLjFjLTE2LjQgMTAuNy0yNy4yIDI5LjEtMjcuMiA1MC4xIDAgMzMuMSAyNy4xIDU5LjggNjAuMSA1OS44IDMzLjIgMCA2MC42LTI2LjkgNjAuNi02MC4zbDAtNTUuN2MxMC42IDkuOCAyNC44IDE1LjggNDAuNCAxNS44bDEuMSAwYzMzIDAgNTkuOC0yNi44IDU5LjgtNTkuOCAwLTIxLTEwLjgtMzkuNS0yNy4yLTUwLjEgMTYuNC0xMC43IDI3LjItMjkuMSAyNy4yLTUwLjEgMC0zMy0yNi44LTU5LjgtNTkuOC01OS44TDE3My43IDk2em00MS42IDIxOS44bDAgMzkuOWMwIDIyLjYtMTguNiA0MS00MS4zIDQxLTIyLjQgMC00MC43LTE4LjItNDAuNy00MC41IDAtMjIuMyAxOC4xLTQwLjQgNDAuMy00MC40bDQxLjcgMHptMC0xMDAuM2wwIDgwLjktNDEuNyAwYy0yMi4zLS4xLTQwLjMtMTguMi00MC4zLTQwLjUgMC0yMi4zIDE4LjEtNDAuNSA0MC41LTQwLjVsNDEuNiAwem02MC44IDBjMjIuMyAwIDQwLjUgMTguMSA0MC41IDQwLjVzLTE4LjEgNDAuNS00MC41IDQwLjVsLTEuMSAwYy0yMi4zIDAtNDAuNC0xOC4xLTQwLjQtNDAuNXMxOC4xLTQwLjUgNDAuNC00MC41bDEuMSAwem0tNjAuOC0xOS4zbC00MS42IDBjLTIyLjMgMC00MC41LTE4LjEtNDAuNS00MC40czE4LjEtNDAuNSA0MC41LTQwLjVsNDEuNiAwIDAgODAuOXptNjAuOC04MC45YzIyLjMgMCA0MC41IDE4LjEgNDAuNSA0MC41cy0xOC4xIDQwLjQtNDAuNSA0MC40bC00MS41IDAgMC04MC45IDQxLjUgMHoiXX0sdDFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImNyZWF0aXZlLWNvbW1vbnMtc2EiLGljb246WzUxMiw1MTIsW10sImY0ZWYiLCJNMjU1LjYgOEMzOTcuNCA4IDUwNCAxMTguMSA1MDQgMjU2IDUwNCA0MDMuMSAzODUuNSA1MDQgMjU1LjYgNTA0IDEyMS42IDUwNCA4IDM5NC41IDggMjU2IDggMTIzLjEgMTEyLjcgOCAyNTUuNiA4em0uOCA0NC43Yy0xMTguMiAwLTIwMy43IDk3LjktMjAzLjcgMjAzLjMgMCAxMDkuOCA5MS4yIDIwMi44IDIwMy43IDIwMi44IDEwMy4yIDAgMjAyLjgtODEuMSAyMDIuOC0yMDIuOCAuMS0xMTMuOC05MC4yLTIwMy4zLTIwMi44LTIwMy4zek0xNDUuNyAyMjFjMTMtODMuOSA4MC41LTk1LjcgMTA4LjktOTUuNyA5OS44IDAgMTI3LjUgODIuNSAxMjcuNSAxMzQuMiAwIDYzLjYtNDEgMTMyLjktMTI4LjkgMTMyLjktMzguOSAwLTk5LjEtMjAtMTA5LjQtOTdsNjIuNSAwYzEuNSAzMC4xIDE5LjYgNDUuMiA1NC41IDQ1LjIgMjMuMyAwIDU4LTE4LjIgNTgtODIuOCAwLTgyLjUtNDkuMS04MC42LTU2LjctODAuNi0zMy4xIDAtNTEuNyAxNC42LTU1LjggNDMuOGwxOC4yIDAtNDkuMiA0OS4yLTQ5LTQ5LjIgMTkuNCAweiJdfSxyMXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiY2hyb21lIixpY29uOls1MTIsNTEyLFtdLCJmMjY4IiwiTTAgMjU2YzAtNDYuNiAxMi41LTkwLjQgMzQuMy0xMjguOUwxNDQuMSAzMTguM2MyMS45IDM5LjIgNjMuOCA2NS43IDExMS45IDY1LjcgMTQuMyAwIDI3LjEtMi4zIDQwLjgtNi42TDIyMC41IDUwOS42Qzk1LjkgNDkyLjMgMCAzODUuMyAwIDI1NnptMzY1LjEgNjUuNmMxMi4zLTE5LjIgMTguOS00Mi41IDE4LjktNjUuNiAwLTM4LjItMTYuOC03Mi41LTQzLjMtOTZsMTUyLjcgMGMxMiAyOS42IDE4LjYgNjIuMSAxOC42IDk2IDAgMTQxLjQtMTE0LjYgMjU1LjEtMjU2IDI1NkwzNjUuMSAzMjEuNnpNNDc3LjggMTI4TDI1NiAxMjhjLTYyLjkgMC0xMTMuNyA0NC4xLTEyNS41IDEwMi43TDU0LjIgOTguNUMxMDEgMzguNSAxNzQgMCAyNTYgMCAzNTAuOCAwIDQzMy41IDUxLjUgNDc3LjggMTI4ek0zNDQgMjU2YTg4IDg4IDAgMSAxIC0xNzYgMCA4OCA4OCAwIDEgMSAxNzYgMHoiXX0sYTFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InRyYWRlLWZlZGVyYXRpb24iLGljb246WzUxMiw1MTIsW10sImY1MTMiLCJNMjU2IDguOGEyNDcuMiAyNDcuMiAwIDEgMCAwIDQ5NC40IDI0Ny4yIDI0Ny4yIDAgMSAwIDAtNDk0LjR6bTAgMTEuNmEyMzUuNiAyMzUuNiAwIDEgMSAwIDQ3MS4yIDIzNS42IDIzNS42IDAgMSAxIDAtNDcxLjJ6TTQxMS4xIDE2My4xbDAtNDYuOC0xOTMuOCAwIDAgODEuNy0xNTUuMSAwIDM2LjcgNDYgMTE3LjcgMCAwIDE5Ni44IDQ4LjggMCAwLTE5NS44IDgzLjMgMCAwLTQ3LTgzLjMgMCAwLTM0LjggMTQ1LjcgMCAwLS4xem0tNzMuMyA0NS4xbDAgMjMuOS04Mi45IDAgMCAxOTcuNC0yNi44IDAgMC0xOTcuNC0xMjMuOCAwLTIwLjEtMjMuOSAxNDMuOSAwIDAtODAuNiAxNzEuOCAwIDAgMjQuNC0xNDUgMCAwIDU2LjIgODIuOSAwem0tMTYxLjMtNjlsLTEyLjQtMjAuNyAyLjEgMjMuOC0yMy41IDUuNCAyMy4zIDUuNC0yLjEgMjQgMTIuMy0yMC41IDIyLjIgOS41LTE1LjctMTguMSAxNS44LTE4LjEtMjIgOS4zem0tMjkuNi0xOS43bDkuMy0xMS41LTEyLjcgNS45LTgtMTIuNCAxLjcgMTMuOS0xNC4zIDMuOCAxMy43IDIuNy0uOCAxNC43IDYuOC0xMi4yIDEzLjggNS4zLTkuNS0xMC4yek0zMTIuMyAyNjQuN2wtMTMuMSA1LjYtNy4zLTEyLjIgMS4zIDE0LjItMTMuOSAzLjIgMTMuOSAzLjItMS4yIDE0LjIgNy4zLTEyLjIgMTMuMSA1LjUtOS40LTEwLjcgOS4zLTEwLjh6bTEwNi45LTc3LjJsLTIwLjkgOS4xLTEyLTE5LjYgMi4yIDIyLjctMjIuMyA1LjQgMjIuMiA0LjktMS44IDIyLjkgMTEuNS0xOS42IDIxLjIgOC44LTE1LjEtMTcgMTUtMTcuNnpNMjU2IDI5LjlhMjI2LjEgMjI2LjEgMCAxIDAgMCA0NTIuMiAyMjYuMSAyMjYuMSAwIDEgMCAwLTQ1Mi4yek0zNTAuNiAxOTZsMCA1MS04My4zIDAgMCAxOTUuNy01Mi43IDAgMC0xOTYuOC0xMTYuNyAwLTQwLTQ5LjkgMTU3LjQgMCAwLTgxLjYgMTk3LjggMCAwIDUwLjctMTQ1LjcgMCAwIDMwLjkgODMuMiAwek0yNTYgNDMuMmM2MC4zIDAgMTE0LjggMjUgMTUzLjYgNjUuMmwtMTk5LjEgMCAwIDgxLjYtMTU3LjQgMEM4MS4xIDEwNC44IDE2MS40IDQzLjIgMjU2IDQzLjJ6bTAgNDI3LjFjLTExNy45IDAtMjEzLjYtOTUuNi0yMTMuNi0yMTMuNSAwLTIxLjIgMy4xLTQxLjggOC45LTYxLjFsNDMuOCA1Ni4zIDExNC43IDAgMCAxOTYuOCA2NC42IDAgMC0xOTUuOCA4My4zIDAgMC02Mi43LTgzLjIgMCAwLTE5LjIgMTQ1LjYgMCAwLTUwLjhjMzAuOCAzNyA0OS4zIDg0LjYgNDkuMyAxMzYuNSAuMSAxMTcuOS05NS41IDIxMy41LTIxMy40IDIxMy41ek0xODYuOCAyNzVsLTExLTIxLjQgMS43IDI0LjUtMjMuNyAzLjkgMjMuOCA1LjktMy43IDIzLjggMTMtMjAuOSAyMS41IDEwLjgtMTUuOC0xOC44IDE2LjktMTcuMS0yMi43IDkuM3oiXX0saTFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InZhYWRpbiIsaWNvbjpbNDQ4LDUxMixbXSwiZjQwOCIsIk0yMjQuNSAxNDAuN0MyMjYgMTIzLjEgMjI5LjQgODggMjc0LjMgODhsOTguNiAwYzIwLjcgMCAzMi4xLTcuOCAzMi4xLTIxLjZsMC0xMi4zYzAtMTIuMiA5LjMtMjIuMSAyMS41LTIyLjFTNDQ4IDQxLjkgNDQ4IDU0LjFsMCAzNi41YzAgNDIuOS0yMS41IDYyLTY2LjggNjJsLTEwMC41IDBjLTMwLjEgMC0zMyAxNC43LTMzIDI3LjEgMCAxLjMtLjEgMi41LS4yIDMuNy0uNyAxMi4zLTEwLjkgMjIuMi0yMy40IDIyLjJzLTIyLjctOS44LTIzLjQtMjIuMmMtLjEtMS4yLS4yLTIuNC0uMi0zLjcgMC0xMi4zLTMtMjcuMS0zMy0yNy4xbC0xMDAuNyAwQzIxLjUgMTUyLjYgMCAxMzMuNSAwIDkwLjZMMCA1NC4xQzAgNDEuOSA5LjQgMzIgMjEuNiAzMnMyMS41IDkuOSAyMS41IDIyLjFsMCAxMi4zQzQzLjEgODAuMiA1NC41IDg4IDc1LjIgODhsOTguNiAwYzQ0LjggMCA0OC4zIDM1LjEgNDkuOCA1Mi43bC45IDB6TTIyNCA0NTZjMTEuNSAwIDIxLjQtNyAyNS43LTE2LjMgMS4xLTEuOCA5Ny4xLTE2OS42IDk4LjItMTcxLjQgMTEuOS0xOS42LTMuMi00NC4zLTI3LjItNDQuMy0xMy45IDAtMjMuMyA2LjQtMjkuOCAyMC4zTDIyNCAzNjIgMTU3LjEgMjQ0LjNjLTYuNC0xMy45LTE1LjktMjAuMy0yOS44LTIwLjMtMjQgMC0zOS4xIDI0LjYtMjcuMiA0NC4zIDEuMSAxLjkgOTcuMSAxNjkuNiA5OC4yIDE3MS40IDQuMyA5LjMgMTQuMiAxNi4zIDI1LjcgMTYuM3oiXX0sbzFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImRldmlhbnRhcnQiLGljb246WzMyMCw1MTIsW10sImYxYmQiLCJNMzIwIDkzLjJsLTk4LjIgMTc5LjEgNy40IDkuNSA5MC44IDAgMCAxMjcuNy0xNjAuOSAwLTEzLjUgOS4yLTQzLjcgODRjLS4zIDAtOC42IDguNi05LjIgOS4ybC05Mi43IDAgMC05My4yIDkzLjItMTc5LjQtNy40LTkuMi04NS44IDAgMC0xMjcuNiAxNTYgMCAxMy41LTkuMiA0My43LTg0Yy4zIDAgOC42LTguNiA5LjItOS4ybDk3LjYgMCAwIDkzLjF6Il19LGN3PXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Im1lZGl1bSIsaWNvbjpbNDQ4LDUxMixbNjI0MDcsIm1lZGl1bS1tIl0sImYyM2EiLCJNMzY5LjQgMzJjNDMuNCAwIDc4LjYgMzUuMiA3OC42IDc4LjZsMCA4My44Yy0xLjktLjEtMy44LS4yLTUuNy0uMmwtLjQgMGMtMTAgMC0yMi4zIDIuNC0zMS4xIDYuOC0xMCA0LjYtMTguNyAxMS41LTI2IDIwLjYtMTEuOCAxNC42LTE4LjkgMzQuMy0yMC42IDU2LjQtLjEgLjctLjEgMS4zLS4yIDJzLS4xIDEuMi0uMSAxLjljLS4xIDEuMi0uMSAyLjQtLjEgMy42IDAgMS45LS4xIDMuOCAwIDUuOCAxLjIgNTAuMSAyOC4yIDkwLjIgNzYuMyA5MC4yIDIuNyAwIDUuMy0uMSA3LjktLjRsMCAyMC40YzAgNDMuNC0zNS4yIDc4LjYtNzguNiA3OC42TDc4LjYgNDgwQzM1LjIgNDgwIDAgNDQ0LjggMCA0MDEuNEwwIDExMC42QzAgNjcuMiAzNS4yIDMyIDc4LjYgMzJsMjkwLjggMHpNODIuMyAxMzguOWwuMyAuMWMxMy4yIDMgMTkuOCA3LjQgMTkuOCAyMy40bDAgMTg3LjJjMCAxNi02LjcgMjAuNC0xOS45IDIzLjRsLS4zIC4xIDAgMi44IDUyLjggMCAwLTIuOC0uMy0uMWMtMTMuMi0zLTE5LjktNy40LTE5LjktMjMuNGwwLTE3Ni4zIDg2LjEgMjAyLjUgNC45IDAgODguNi0yMDguMiAwIDE4Ni42Yy0xLjEgMTIuNi03LjggMTYuNS0xOS43IDE5LjJsLS4zIC4xIDAgMi43IDkxLjkgMCAwLTIuNy0uMy0uMWMtMTEuOS0yLjctMTguNy02LjYtMTkuOS0xOS4ybC0uMS0xOTEuOCAuMSAwYzAtMTYgNi43LTIwLjQgMTkuOS0yMy40bC4zLS4xIDAtMi43LTcyLjIgMC02NyAxNTcuNC02Ny0xNTcuNC03Ny44IDAgMCAyLjd6TTQ0OCAzNDAuM2MtMjUuMS03LjQtNDMtMzUuMS00MS4yLTY3LjhsMCAwIDQxLjEgMCAwIDY3Ljh6bS02LjQtMTM1LjZjMi4zIDAgNC40IC4zIDYuNCAuOWwwIDU3LjQtNDAuMiAwYzEuNS0zMy42IDEzLjYtNTcuOSAzMy44LTU4LjN6Il19LG4xcj1jdyxzMXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToib3BlbmNhcnQiLGljb246WzY0MCw1MTIsW10sImYyM2QiLCJNMzMxLjggNDQwLjRhNDUuOCA0NS44IDAgMSAxIDkxLjUgLjMgNDUuOCA0NS44IDAgMSAxIC05MS41LS4zek0xNjkuNCAzOTQuOWE0NS43IDQ1LjcgMCAxIDAgLjMgOTEuMyA0NS43IDQ1LjcgMCAxIDAgLS4zLTkxLjN6bTI5MS43LTI3MGMtMzAyLjIgMC0zNzkuMi0xMi44LTQ2MS4xLTk5LjIgMzQuNCA1MS43IDUzLjMgMTQ4LjkgMzczLjEgMTQ0LjIgMzMzLjMtNSAxMzAgODYuMSA3MC44IDE4OC45IDE4Ni43LTE2Ni43IDMxOS40LTIzMy45IDE3LjItMjMzLjl6Il19LGwxcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJ5LWNvbWJpbmF0b3IiLGljb246WzQ0OCw1MTIsW10sImYyM2IiLCJNNDQ4IDMybDAgNDQ4LTQ0OCAwIDAtNDQ4IDQ0OCAwek0yMzYgMjg3LjVsNzcuNS0xNDUuNS0zMi43IDAtNDUuOCA5MWMtNC43IDkuMy05IDE4LjMtMTIuOCAyNi44bC0xMi4yLTI2LjgtNDUuMi05MS0zNSAwIDc2LjcgMTQzLjggMCA5NC41IDI5LjUgMCAwLTkyLjh6Il19LGMxcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJsaW5lIixpY29uOls1MTIsNTEyLFtdLCJmM2MwIiwiTTMxMSAxOTYuOGwwIDgxLjNjMCAyLjEtMS42IDMuNy0zLjcgMy43bC0xMyAwYy0xLjMgMC0yLjQtLjctMy0xLjVMMjU0IDIzMCAyNTQgMjc4LjJjMCAyLjEtMS42IDMuNy0zLjcgMy43bC0xMyAwYy0yLjEgMC0zLjctMS42LTMuNy0zLjdsMC04MS4zYzAtMi4xIDEuNi0zLjcgMy43LTMuN2wxMi45IDBjMS4xIDAgMi40IC42IDMgMS42bDM3LjMgNTAuMyAwLTQ4LjJjMC0yLjEgMS42LTMuNyAzLjctMy43bDEzIDBjMi4xLS4xIDMuOCAxLjYgMy44IDMuNWwwIC4xem0tOTMuNy0zLjdsLTEzIDBjLTIuMSAwLTMuNyAxLjYtMy43IDMuN2wwIDgxLjNjMCAyLjEgMS42IDMuNyAzLjcgMy43bDEzIDBjMi4xIDAgMy43LTEuNiAzLjctMy43bDAtODEuM2MwLTEuOS0xLjYtMy43LTMuNy0zLjd6bS0zMS40IDY4LjFsLTM1LjYgMCAwLTY0LjRjMC0yLjEtMS42LTMuNy0zLjctMy43bC0xMyAwYy0yLjEgMC0zLjcgMS42LTMuNyAzLjdsMCA4MS4zYzAgMSAuMyAxLjggMSAyLjUgLjcgLjYgMS41IDEgMi41IDFsNTIuMiAwYzIuMSAwIDMuNy0xLjYgMy43LTMuN2wwLTEzYzAtMS45LTEuNi0zLjctMy41LTMuN2wuMSAwem0xOTMuNy02OC4xbC01Mi4zIDBjLTEuOSAwLTMuNyAxLjYtMy43IDMuN2wwIDgxLjNjMCAxLjkgMS42IDMuNyAzLjcgMy43bDUyLjIgMGMyLjEgMCAzLjctMS42IDMuNy0zLjdsMC0xMy4xYzAtMi4xLTEuNi0zLjctMy43LTMuN2wtMzUuNSAwIDAtMTMuNiAzNS41IDBjMi4xIDAgMy43LTEuNiAzLjctMy43bDAtMTMuMWMwLTIuMS0xLjYtMy43LTMuNy0zLjdsLTM1LjUgMCAwLTEzLjcgMzUuNSAwYzIuMSAwIDMuNy0xLjYgMy43LTMuN2wwLTEzYy0uMS0xLjktMS43LTMuNy0zLjctMy43bC4xIDB6TTUxMiA5My40bDAgMzI2Yy0uMSA1MS4yLTQyLjEgOTIuNy05My40IDkyLjZsLTMyNiAwQzQxLjQgNTExLjktLjEgNDY5LjggMCA0MTguNmwwLTMyNkMuMSA0MS40IDQyLjItLjEgOTMuNCAwbDMyNiAwYzUxLjIgLjEgOTIuNyA0Mi4xIDkyLjYgOTMuNHpNNDQxLjYgMjMzLjVjMC04My40LTgzLjctMTUxLjMtMTg2LjQtMTUxLjNTNjguOCAxNTAuMSA2OC44IDIzMy41YzAgNzQuNyA2Ni4zIDEzNy40IDE1NS45IDE0OS4zIDIxLjggNC43IDE5LjMgMTIuNyAxNC40IDQyLjEtLjggNC43LTMuOCAxOC40IDE2LjEgMTAuMXMxMDcuMy02My4yIDE0Ni41LTEwOC4yYzI3LTI5LjcgMzkuOS01OS44IDM5LjktOTMuMWwwLS4yeiJdfSxkMXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiYW1pbGlhIixpY29uOls0NDgsNTEyLFtdLCJmMzZkIiwiTTI0MC4yIDMyYy02MS45IDAtMTMxLjUgMTYuOS0xODQuMiA1NS40LTUuMSAzLjEtOS4xIDkuMi03LjIgMTkuNCAxLjEgNS4xIDUuMSAyNy40IDEwLjIgMzkuNiA0LjEgMTAuMiAxNC4yIDEwLjIgMjAuMyA2LjEgMzIuNS0yMi4zIDk2LjUtNDcuNyAxNTIuMy00Ny43IDU3LjkgMCA1OC45IDI4LjQgNTguOSA3My4xbDAgMzguNUMyMDMuMSAyMjcuNyA3OC4zIDI1MSA0Ni44IDI2NC4yIDExLjMgMjgwLjUgMTYuNCAzNTcuNyAxNi40IDM3NlMzMS42IDQ4MCAxNDEuMyA0ODBjNDcuOCAwIDExMy43LTIwLjcgMTUzLjMtNDIuMWwwIDI1LjRjMCAzIDIuMSA4LjIgNi4xIDkuMSAzLjEgMSA1MC43IDIgNTkuOSAyczYyLjUgLjMgNjYuNS0uN2M0LjEtMSA1LjEtNi4xIDUuMS05LjFsMC0yOTYuNmMtLjEtODAuMy01Ny45LTEzNi0xOTItMTM2em01MC4yIDM0OGMtMjEuNCAxMy4yLTQ4LjcgMjQuNC03OS4xIDI0LjQtNTIuOCAwLTU4LjktMzMuNS01OS00NC43IDAtMTIuMi0zLTQyLjcgMTguMy01Mi45IDI0LjMtMTMuMiA3NS4xLTI5LjQgMTE5LjgtMzMuNWwwIDEwNi43eiJdfSx1MXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiYXN5bW1ldHJpayIsaWNvbjpbNTc2LDUxMixbXSwiZjM3MiIsIk01MTcuNSAzMDkuMmMzOC44LTQwIDU4LjEtODAgNTguNS0xMTYuMSAuOC02NS41LTU5LjQtMTE4LjItMTY5LjQtMTM1LTEyOC43LTE5LjctMjg4LjUgMTUuNS00MDYuNiA4Mi40IDUyLTI2LjUgMTEwLjYtNDguMiAxNzAuNy01OC4yIDc0LjUtMjAuNSAxNTMtMjUuNCAyMjEuMy0xNC44IDE1Mi41IDIzLjggMTk2LjggMTI3LjUgOTguOCAyMzEuNy0xMC4yIDEwLjgtMjIgMjEuMS0zNSAzMC42TDMwNC45IDEwMy40IDExNC43IDM4OC45Yy02NS42LTI5LjQtNzYuNS05MC4yLTE5LjEtMTUxLjIgMjAuOC0yMi4yIDQ4LjMtNDEuOSA3OS41LTU4LjEgMjAtMTIuMiAzOS43LTIyLjYgNjItMzAuNy02NS4xIDIwLjMtMTIyLjcgNTIuOS0xNjEuNiA5Mi45LTI3LjcgMjguNi00MS40IDU3LjEtNDEuNyA4Mi45LS41IDM1LjEgMjMuNCA2NS4xIDY4LjQgODNsLTM0LjUgNTEuNyAxMDEuNiAwIDIyLTM0LjRjMjIuMiAxIDQ1LjMgMCA2OC42LTIuN2wtMjIuOCAzNy4xIDEzNS41IDAtMzIuNi01My4xYzE4LjYtNS4zIDM2LjktMTEuNSA1NC41LTE4LjdsNDUuOSA3MS44IDEwMS42IDAtNzMuNC0xMTAuNGMxOC41LTEyLjEgMzUtMjUuNSA0OC45LTM5Ljh6TTMyOS45IDM4OS43bC0yNS00MC42LTMyLjcgNTMuM2MtMjMuNCAzLjUtNDYuNyA1LjEtNjkuMiA0LjRsMTAxLjktMTU5LjMgNzguNyAxMjNjLTE3LjIgNy40LTM1LjMgMTMuOS01My43IDE5LjJ6Il19LGYxcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJwaGFicmljYXRvciIsaWNvbjpbNTEyLDUxMixbXSwiZjNkYiIsIk0zMzEuMSAyNjIuMWwtLjEtMTNzMjEuNy0xOS44IDIxLjEtMjEuMmwtOS41LTIwYy0uNi0xLjQtMjkuNS0uNS0yOS41LS41bC05LjQtOS4zcy4yLTI4LjUtMS4yLTI5LjFsLTIwLjEtOS4yYy0xLjQtLjYtMjAuNyAyMS0yMC43IDIxbC0xMy4xLS4ycy0yMC41LTIxLjQtMjEuOS0yMC44bC0yMCA4LjNjLTEuNCAuNSAuMiAyOC45IC4yIDI4LjlsLTkuMSA5LjFzLTI5LjItLjktMjkuNyAuNEwxNjAgMjI2LjNjLS42IDEuNCAyMSAyMSAyMSAyMWwuMSAxMi45UzE1OS40IDI4MCAxNjAgMjgxLjRsOS41IDIwYy42IDEuNCAyOS41IC41IDI5LjUgLjVsOS40IDkuM3MtLjIgMzEuOCAxLjIgMzIuM2wyMC4xIDguM2MxLjQgLjYgMjAuNy0yMy41IDIwLjctMjMuNWwxMy4xIC4yczIwLjUgMjMuOCAyMS44IDIzLjNsMjAtNy41YzEuNC0uNi0uMi0zMi4xLS4yLTMyLjFsOS4xLTkuMXMyOS4yIC45IDI5LjctLjVsOC4xLTE5LjhjLjctMS4xLTIwLjktMjAuNy0yMC45LTIwLjd6bS00NC45LTguN2MuNyAxNy4xLTEyLjggMzEuNi0zMC4xIDMyLjRzLTMyLjEtMTIuNS0zMi44LTI5LjYgMTIuOC0zMS42IDMwLjEtMzIuM2MxNy4zLS44IDMyLjEgMTIuNSAzMi44IDI5LjV6bTIwMS4yLTM3LjlsLTk3LTk3LS4xIC4xYy03NS4xLTczLjMtMTk1LjQtNzIuOC0yNjkuOCAxLjYtNTAuOSA1MS0yNy44IDI3LjktOTUuNyA5NS4zLTIyLjMgMjIuMy0yMi4zIDU4LjcgMCA4MSA2OS45IDY5LjQgNDYuNCA0NiA5Ny40IDk3bC4xLS4xYzc1LjEgNzMuMyAxOTUuNCA3Mi45IDI2OS44LTEuNiA1MS01MC45IDI3LjktMjcuOSA5NS4zLTk1LjMgMjIuMy0yMi4zIDIyLjMtNTguNyAwLTgxek0zNjMuNSAxNDguMmExNTIuMyAxNTIuMyAwIDEgMSAtMjE1IDIxNS42IDE1Mi4zIDE1Mi4zIDAgMSAxIDIxNS0yMTUuNnoiXX0scDFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImJvdHMiLGljb246WzY0MCw1MTIsW10sImUzNDAiLCJNODYuMyAxOTcuOGMtOC0uMS0xNS45IDEuNy0yMy4xIDUuMXMtMTMuNSA4LjYtMTguNCAxNC45bDAtNjEuOWMwLTIuMi0uOS00LjMtMi40LTUuOHMtMy42LTIuNC01LjgtMi40bC0yOC40IDBjLTIuMiAwLTQuMyAuOS01LjggMi40UzAgMTUzLjggMCAxNTZMMCAzMzMuNmMwIDEuMSAuMiAyLjEgLjYgMy4xczEgMS45IDEuOCAyLjcgMS43IDEuNCAyLjcgMS44IDIuMSAuNiAzLjEgLjZsMjguNCAwYzEuMSAwIDIuMS0uMiAzLjEtLjZzMS45LTEgMi43LTEuOCAxLjQtMS43IDEuOC0yLjcgLjYtMi4xIC42LTMuMWwwLTguMWMxMS42IDEzLjQgMjUuOSAxOS44IDQxLjYgMTkuOCAzNC42IDAgNjEuOS0yNi4yIDYxLjktNzMuOCAwLTQ1LjktMjctNzMuNi02MS45LTczLjZ6TTcxLjUgMzA1LjdjLTkuNiAwLTIxLjItNC45LTI2LjctMTIuNWwwLTQzYzUuNS03LjYgMTcuMi0xMi44IDI2LjctMTIuOCAxNy43IDAgMzEuMSAxMy4xIDMxLjEgMzQgMCAyMS4yLTEzLjQgMzQuMy0zMS4xIDM0LjN6bTE1Ni40LTU5YTE3LjQgMTcuNCAwIDEgMCAwIDM0LjggMTcuNCAxNy40IDAgMSAwIDAtMzQuOHptNDYuMS05MGwwLTQ0LjdjMi44LTEuMiA1LjItMy4zIDYuNi02czEuOS01LjggMS4zLTguOS0yLjItNS43LTQuNi03LjctNS40LTMtOC40LTMtNi4xIDEuMS04LjQgMy00IDQuNy00LjYgNy43LS4xIDYuMSAxLjMgOC45IDMuOCA0LjggNi42IDZsMCA0NC43Yy0yOCAxLjMtNTQuNCAxMy42LTczLjYgMzQuMXMtMjkuNSA0Ny43LTI4LjggNzUuOCAxMi4zIDU0LjcgMzIuNCA3NC4zIDQ3IDMwLjYgNzUuMSAzMC42IDU1LTExIDc1LjEtMzAuNiAzMS43LTQ2LjMgMzIuNC03NC4zLTkuNy01NS4zLTI4LjgtNzUuOC00NS41LTMyLjgtNzMuNi0zNC4xem04NiAxMDcuNGMwIDMwLjUtNDAuOCA1NS4zLTkxLjEgNTUuM3MtOTEuMS0yNC43LTkxLjEtNTUuMyA0MC44LTU1LjMgOTEuMS01NS4zIDkxLjEgMjQuNyA5MS4xIDU1LjNsMCAwem0tNTAuMiAxNy40YzMuNCAwIDYuOC0xIDkuNy0yLjlzNS4xLTQuNiA2LjQtNy44IDEuNy02LjcgMS0xMC4xLTIuMy02LjUtNC44LTguOS01LjUtNC4xLTguOS00LjgtNi45LS4zLTEwLjEgMS01LjkgMy41LTcuOCA2LjQtMi45IDYuMi0yLjkgOS43YzAgNC42IDEuOCA5IDUuMSAxMi4zczcuNyA1LjEgMTIuMyA1LjFsMCAwem0yNzAuOS0zMWMtMTQuOC0yLjYtMjIuNC0zLjgtMjIuNC05LjkgMC01LjUgNy4zLTkuOSAxNy43LTkuOSAxMi4yIC4xIDI0LjIgMy42IDM0LjUgMTAuMSAxLjggMS4yIDQgMS42IDYuMiAxLjFzNC0xLjcgNS4xLTMuNmMuMS0uMSAuMS0uMiAuMi0uM2w4LjYtMTQuOWMxLjEtMS45IDEuNC00LjEgLjgtNi4xcy0xLjktMy45LTMuNy01Yy0xNS43LTkuNC0zMy43LTE0LjMtNTItMTQuMS0zOSAwLTYwLjIgMjEuNS02MC4yIDQ2LjIgMCAzNi4zIDMzLjcgNDEuOSA1Ny42IDQ1LjYgMTMuNCAyLjMgMjQuMSA0LjQgMjQuMSAxMSAwIDYuNC01LjUgMTAuOC0xOC45IDEwLjgtMTMuNiAwLTMxLTYuMi00Mi42LTEzLjYtLjktLjYtMS45LTEtMy0xLjJzLTIuMS0uMi0zLjIgLjEtMi4xIC43LTIuOSAxLjMtMS42IDEuNC0yLjIgMi4zYzAgLjEtLjEgLjEtLjEgLjJsLTEwLjIgMTYuOWMtMS4xIDEuOC0xLjQgNC0xIDZzMS43IDMuOSAzLjUgNWMxNS4yIDEwLjMgMzcuNyAxNi43IDU5LjQgMTYuNyA0MC40IDAgNjQtMTkuOCA2NC00Ni41IDAtMzguMS0zNS41LTQzLjktNTkuMy00OC4zem0tOTUuOSA2MC44Yy0uNS0yLTEuOC0zLjctMy42LTQuOHMtMy45LTEuNS01LjktMS4xYy0xLjQgLjMtMi44IC40LTQuMiAuNC03LjggMC0xMi41LTYuMS0xMi41LTE0LjJsMC01MS4yIDIwLjMgMGMyLjIgMCA0LjItLjkgNS44LTIuNHMyLjQtMy42IDIuNC01LjhsMC0yMi43YzAtMi4yLS45LTQuMi0yLjQtNS44cy0zLjYtMi40LTUuOC0yLjRsLTIwLjMgMCAwLTMwLjJjMC0yLjItLjktNC4yLTIuNC01LjhzLTMuNi0yLjQtNS44LTIuNGwtMjguMiAwYy0yLjIgMC00LjIgLjktNS44IDIuNHMtMi40IDMuNi0yLjQgNS44bDAgMzAuMi0xNS4xIDBjLTEuMSAwLTIuMSAuMi0zLjEgLjZzLTEuOSAxLTIuNiAxLjgtMS40IDEuNy0xLjggMi42LS42IDItLjYgMy4xbDAgMjIuN2MwIDEuMSAuMiAyLjEgLjYgMy4xczEgMS45IDEuOCAyLjYgMS43IDEuNCAyLjYgMS44IDIgLjYgMy4xIC42bDE1LjEgMCAwIDYzLjdjMCAyNyAxNS40IDQxLjMgNDMuOSA0MS4zIDEyLjIgMCAyMS40LTIuMiAyNy42LTUuNCAxLjYtLjggMi45LTIuMiAzLjctMy45cy45LTMuNiAuNS01LjRsLTUtMTkuM3oiXX0saDFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InZpbmUiLGljb246WzM4NCw1MTIsW10sImYxY2EiLCJNMzg0IDI1NC43bDAgNTIuMWMtMTguNCA0LjItMzYuOSA2LjEtNTIuMSA2LjEtMzYuOSA3Ny40LTEwMyAxNDMuOC0xMjUuMSAxNTYuMi0xNCA3LjktMjcuMSA4LjQtNDIuNy0uOC0yNy4xLTE2LjMtMTI5LjktMTAwLjYtMTY0LjEtMzY1LjZsNzQuNSAwYzE4LjcgMTU5LjEgNjQuNSAyNDAuNyAxMTQuOCAzMDEuOCAyNy45LTI3LjkgNTQuOC02NS4xIDc1LjYtMTA2LjktNDkuOC0yNS4zLTgwLjEtODAuOS04MC4xLTE0NS42IDAtNjUuNiAzNy43LTExNS4xIDEwMi4yLTExNS4xIDExNC45IDAgMTA2LjIgMTI3LjkgODEuNiAxODEuNSAwIDAtNDYuNCA5LjItNjMuNS0yMC41IDMuNC0xMS4zIDguMi0zMC44IDguMi00OC41IDAtMzEuMy0xMS4zLTQ2LjYtMjguNC00Ni42LTE4LjIgMC0zMC44IDE3LjEtMzAuOCA1MCAuMSA3OS4yIDU5LjQgMTE4LjcgMTI5LjkgMTAxLjl6Il19LG0xcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJtZWRydCIsaWNvbjpbNTc2LDUxMixbXSwiZjNjOCIsIk0xMjkuNyAyNTZjMCAxMjEuOCA4My45IDIyMi44IDE5My41IDI0MS4xLTE4LjcgNC41LTM4LjIgNi45LTU4LjIgNi45LTEzNy42IDAtMjQ5LTExMS0yNDktMjQ4UzEyNy40IDggMjY0LjkgOGMyMC4xIDAgMzkuNiAyLjQgNTguMiA2LjktMTA5LjYgMTguMy0xOTMuNCAxMTkuMy0xOTMuNCAyNDEuMXpNNDI3LjEgMzU2LjNjLTc3LjcgNTUuNC0xNzkuNiA0Ny41LTI0MC40LTE0LjYgNS41IDE0LjEgMTIuNyAyNy43IDIxLjcgNDAuNSA2MS42IDg4LjIgMTgyLjQgMTA5LjMgMjY5LjcgNDdzMTA4LjEtMTg0LjMgNDYuNS0yNzIuNmMtOS0xMi45LTE5LjMtMjQuMy0zMC41LTM0LjIgMzcuNCA3OC44IDEwLjcgMTc4LjUtNjcgMjMzLjl6bS0yMTguOC0yNDRjLTEuNCAxLTIuNyAyLjEtNCAzLjEgNjQuMy0xNy44IDEzNS45IDQgMTc4LjkgNjAuNSAzNS43IDQ3IDQyLjkgMTA2LjYgMjQuNCAxNTggNTYuNy01Ni4yIDY3LjYtMTQyLjEgMjIuMy0yMDEuOC01MC02NS41LTE0OS4xLTc0LjQtMjIxLjYtMTkuOHpNMzEyIDIyNGMtNC40IDAtOC0zLjYtOC04bDAtNDBjMC00LjQtMy42LTgtOC04bC00OCAwYy00LjQgMC04IDMuNi04IDhsMCA0MGMwIDQuNC0zLjYgOC04IDhsLTQwIDBjLTQuNCAwLTggMy42LTggOGwwIDQ4YzAgNC40IDMuNiA4IDggOGw0MCAwYzQuNCAwIDggMy42IDggOGwwIDQwYzAgNC40IDMuNiA4IDggOGw0OCAwYzQuNCAwIDgtMy42IDgtOGwwLTQwYzAtNC40IDMuNi04IDgtOGw0MCAwYzQuNCAwIDgtMy42IDgtOGwwLTQ4YzAtNC40LTMuNi04LTgtOGwtNDAgMHoiXX0sZzFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Im9zaSIsaWNvbjpbNTEyLDUxMixbXSwiZjQxYSIsIk04IDI2Ni40YzIuMy0xMzUuOCA5Ny40LTIzMi40IDIxMy44LTI0OC4xIDEzOC44LTE4LjYgMjU1LjYgNzUuOCAyNzggMjAxLjEgMjEuMyAxMTguOC00NCAyMzAtMTUxLjYgMjc0LTkuMyAzLjgtMTQuNCAxLjctMTgtNy43LTE3LjgtNDYuMy0zNS42LTkyLjYtNTMuNC0xMzktMy4xLTguMS0xLTEzLjIgNy0xNi44IDI0LjItMTEgMzkuMy0yOS40IDQzLjMtNTUuOCAxLjUtOS43IDEtMTkuNi0xLjUtMjkuMXMtNi45LTE4LjQtMTIuOS0yNi4xLTEzLjYtMTQuMS0yMi4yLTE4LjgtMTguMS03LjUtMjcuOS04LjNjLTM5LTMuNC03MS44IDIzLjctNzcuNSA1OS43LTUuMiAzMyAxMS4xIDYzLjcgNDEuOSA3Ny43IDkuNiA0LjQgMTEuNSA4LjYgNy44IDE4LjQtMTcuOSA0Ni42LTM1LjggOTMuMi01My43IDEzOS45LTIuNiA2LjktOC4zIDkuMy0xNS41IDYuNS01Mi42LTIwLjMtMTAxLjQtNjEtMTMwLjgtMTE5LTI0LjktNDkuMi0yNS4yLTg3LjctMjYuOC0xMDguN3ptMjAuOS0xLjljLjQgNi42IC42IDE0LjMgMS4zIDIyLjEgNi4zIDcxLjkgNDkuNiAxNDMuNSAxMzEgMTgzLjEgMy4yIDEuNSA0LjQgLjggNS42LTIuMyAxNC45LTM5LjEgMjkuOS03OC4yIDQ1LTExNy4zIDEuMy0zLjMgLjYtNC44LTIuNC02LjctMzEuNi0xOS45LTQ3LjMtNDguNS00NS42LTg2IDEtMjEuNiA5LjMtNDAuNSAyMy44LTU2LjMgMzAtMzIuNyA3Ny0zOS44IDExNS41LTE3LjYgMTUuNiA5IDI4LjIgMjIuMyAzNi4yIDM4LjRzMTEuMiAzNC4yIDkgNTJjLTMuNiAzMC42LTE5LjMgNTMuOS00NS43IDY5LjgtMi43IDEuNi0zLjUgMi45LTIuMyA2IDE1LjIgMzkuMiAzMC4zIDc4LjQgNDUuMiAxMTcuNyAxLjIgMy4xIDIuNCAzLjggNS42IDIuMyAzNS41LTE2LjYgNjUuMi00MC4zIDg4LjEtNzIgMzQuOC00OC4yIDQ5LjEtMTAxLjkgNDIuMy0xNjEtMTMuNy0xMTcuNS0xMTkuNC0yMTQuOC0yNTUuNS0xOTgtMTA2LjEgMTMtMTk1LjMgMTAyLjUtMTk3LjEgMjI1Ljh6Il19LHgxcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJnZyIsaWNvbjpbNTEyLDUxMixbXSwiZjI2MCIsIk0xNzkuMiAyMzAuNGwxMDIuNCAxMDIuNC0xMDIuNCAxMDIuNC0xNzkuMi0xNzkuMiAxNzkuMi0xNzkuMiA0NC44IDQ0LjgtMjUuNiAyNS42LTE5LjItMTkuMi0xMjggMTI4IDEyOCAxMjggNTEuNS01MS41LTc3LjEtNzYuNSAyNS42LTI1LjZ6TTMzMi44IDc2LjhsLTEwMi40IDEwMi40IDEwMi40IDEwMi40IDI1LjYtMjUuNi03Ny4xLTc2LjUgNTEuNS01MS41IDEyOCAxMjgtMTI4IDEyOC0xOS4yLTE5LjItMjUuNiAyNS42IDQ0LjggNDQuOCAxNzkuMi0xNzkuMi0xNzkuMi0xNzkuMnoiXX0sYjFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImJ1eXNlbGxhZHMiLGljb246WzQ0OCw1MTIsW10sImYyMGQiLCJNMjI0IDE1MC43bDQyLjkgMTYwLjctODUuOCAwIDQyLjktMTYwLjd6TTQ0OCA4MGwwIDM1MmMwIDI2LjUtMjEuNSA0OC00OCA0OEw0OCA0ODBjLTI2LjUgMC00OC0yMS41LTQ4LTQ4TDAgODBDMCA1My41IDIxLjUgMzIgNDggMzJsMzUyIDBjMjYuNSAwIDQ4IDIxLjUgNDggNDh6TTM4Mi43IDQwNS4zbC05NC41LTI5OC43LTEyOC40IDAtOTQuNSAyOTguNyA5MC43IDAgMTExLjctOTEuNiAyNC4yIDkxLjYgOTAuOCAweiJdfSx2MXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZ29vZ2xlLXBsdXMiLGljb246WzUxMiw1MTIsW10sImYyYjMiLCJNMjU2IDhhMjQ4IDI0OCAwIDEgMCAwIDQ5NiAyNDggMjQ4IDAgMSAwIDAtNDk2ek0xODUuMyAzODBjLTMyLjkgMC02NC40LTEzLjEtODcuNy0zNi4zcy0zNi4zLTU0LjgtMzYuMy04Ny43IDEzLjEtNjQuNCAzNi4zLTg3LjcgNTQuOC0zNi4zIDg3LjctMzYuM2MzMS4zIDAgNjAuMSAxMSA4MyAzMi4zbC0zMy42IDMyLjZjLTEzLjItMTIuOS0zMS4zLTE5LjEtNDkuNC0xOS4xLTQyLjkgMC03Ny4yIDM1LjUtNzcuMiA3OC4xUzE0Mi4zIDMzNCAxODUuMyAzMzRjMzIuNiAwIDY0LjktMTkuMSA3MC4xLTUzLjNsLTcwLjEgMCAwLTQyLjYgMTE2LjkgMGMxLjMgNi44IDEuOSAxMy44IDEuOSAyMC43IDAgNzAuOC00Ny41IDEyMS4yLTExOC44IDEyMS4yek00MTUuNSAyNzMuOGwwIDM1LjUtMzUuNSAwIDAtMzUuNS0zNS41IDAgMC0zNS41IDM1LjUgMCAwLTM1LjUgMzUuNSAwIDAgMzUuNSAzNS4yIDAgMCAzNS41LTM1LjIgMHoiXX0seTFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InNjcmVlbnBhbCIsaWNvbjpbNTEyLDUxMixbXSwiZTU3MCIsIk0yNzguNiAyMi41YTIyLjUgMjIuNSAwIDEgMSAtNDUgMCAyMi41IDIyLjUgMCAxIDEgNDUgMHpNMTk4LjcgMjU5YTU3LjQgNTcuNCAwIDEgMSAxMTQuOCAwIDU3LjQgNTcuNCAwIDEgMSAtMTE0LjggMHptMTM4LjYgOTFjMjIuMy0xOS45IDM2LjUtNDcuMyAzOS45LTc3bDExOS41IDBjLTMuNSA2MS40LTMwLjQgMTE5LjItNzUuMiAxNjEuNC00NC43IDQyLjItMTAzLjkgNjUuOC0xNjUuNCA2NS44UzEzNS40IDQ3Ni42IDkwLjcgNDM0LjRDNDUuOSAzOTIuMiAxOS4xIDMzNC40IDE1LjUgMjczbDExOS43IDBjMy40IDI5LjcgMTcuNiA1Ny4xIDM5LjkgNzdzNTEuMiAzMC45IDgxLjEgMzAuOWMyOSAwIDU4LjctMTEgODEuMS0zMC45ek0yOC4zIDE0MS43YTIyLjUgMjIuNSAwIDEgMSA0NS0xLjQgMjIuNSAyMi41IDAgMSAxIC00NSAxLjR6bTQ1NS42LS43YTIyLjQgMjIuNCAwIDEgMSAtNDQuOSAwIDIyLjQgMjIuNCAwIDEgMSA0NC45IDB6TTMxOCA5NS4zYy0xNy4zIDEzLjgtMzkuMiAyMi44LTYxLjkgMjIuOHMtNDQuNi05LTYxLjktMjIuOGMtMTcuMy0xNC43LTI4LjgtMzUuMS0zMi40LTU3LjUgMTUuMS02LjQgMzAuOC0xMS4zIDQ2LjktMTQuNSAwIDEyLjYgNSAyNC42IDEzLjkgMzMuNXMyMC45IDEzLjkgMzMuNSAxMy45IDI0LjYtNSAzMy41LTEzLjkgMTMuOS0yMC45IDEzLjktMzMuNWMxNi4xIDMuMiAzMS44IDguMSA0Ni45IDE0LjUtMy42IDIyLjQtMTUuMSA0Mi44LTMyLjQgNTcuNXpNODIuOSAyMzFjLTIxLjQgNy42LTQ0LjcgNy40LTY1LjktLjYgMi0xNi4zIDUuNi0zMi4zIDEwLjgtNDcuOSA1LjQgMy4xIDExLjMgNS4xIDE3LjUgNiA2LjIgLjggMTIuNCAuNCAxOC41LTEuMiA2LTEuNyAxMS42LTQuNCAxNi42LTguMnM5LjEtOC41IDEyLjItMTMuOSA1LjEtMTEuNCA2LTE3LjVjLjgtNi4yIC40LTEyLjUtMS4yLTE4LjVzLTQuNC0xMS42LTguMi0xNi42Yy0zLjgtNC45LTguNS05LjEtMTMuOS0xMi4yIDEwLjgtMTIuMyAyMi45LTIzLjUgMzYtMzMuMyAxNy42IDE0LjMgMjkuNSAzNC41IDMzLjYgNTYuOHMuMSA0NS40LTExLjIgNjVjLTExLjQgMTkuNi0yOS40IDM0LjUtNTAuNyA0Mi4xem0zNDYuNCAuMWMtMjEuMy03LjYtMzkuMy0yMi42LTUwLjctNDIuMi0xMS4zLTE5LjYtMTUuMi00Mi43LTExLjEtNjUgNC4xLTIyLjIgMTYtNDIuNCAzMy41LTU2LjcgMTMuMSA5LjggMjUuMiAyMSAzNiAzMy4zLTEwLjcgNi40LTE4LjQgMTYuNy0yMS41IDI4LjgtMy4yIDEyLTIuMyAyNC44IDQuOCAzNS42IDYuMiAxMC44IDE2LjQgMTguNyAyOC40IDIyczI0LjkgMS43IDM1LjctNC4zYzUuMyAxNS41IDguOSAzMS42IDEwLjkgNDcuOC0yMi4xIDguMS00NC42IDguMy02NiAuN3oiXX0sdzFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImJpdGNvaW4iLGljb246WzUxMiw1MTIsW10sImYzNzkiLCJNOCAyNTZhMjQ4IDI0OCAwIDEgMSA0OTYgMCAyNDggMjQ4IDAgMSAxIC00OTYgMHptMzU0LjMtMzUuM2M0LjktMzMtMjAuMi01MC43LTU0LjYtNjIuNmwxMS4xLTQ0LjctMjcuMi02LjgtMTAuOSA0My41Yy03LjItMS44LTE0LjUtMy41LTIxLjgtNS4xbDEwLjktNDMuOC0yNy4yLTYuOC0xMS4yIDQ0LjdjLTUuOS0xLjMtMTEuNy0yLjctMTcuNC00LjFsMC0uMS0zNy41LTkuNC03LjIgMjkuMXMyMC4yIDQuNiAxOS44IDQuOWMxMSAyLjggMTMgMTAgMTIuNyAxNS44bC0xMi43IDUwLjljLjggLjIgMS43IC41IDIuOCAuOS0uOS0uMi0xLjktLjUtMi45LS43bC0xNy44IDcxLjNjLTEuMyAzLjMtNC44IDguNC0xMi41IDYuNSAuMyAuNC0xOS44LTQuOS0xOS44LTQuOWwtMTMuNSAzMS4xIDM1LjQgOC44YzYuNiAxLjcgMTMgMy40IDE5LjQgNWwtMTEuMyA0NS4yIDI3LjIgNi44IDExLjItNDQuN2M3LjIgMiAxNC40IDMuOCAyMS43IDUuNmwtMTEuMSA0NC41IDI3LjIgNi44IDExLjMtNDUuMWM0Ni40IDguOCA4MS4zIDUuMiA5Ni0zNi43IDExLjgtMzMuOC0uNi01My4zLTI1LTY2IDE3LjgtNC4xIDMxLjItMTUuOCAzNC43LTM5Ljl6bS02Mi4yIDg3LjJjLTguNCAzMy44LTY1LjMgMTUuNS04My44IDEwLjlsMTQuOS01OS45YzE4LjQgNC42IDc3LjYgMTMuNyA2OC44IDQ5em04LjQtODcuN2MtNy43IDMwLjctNTUgMTUuMS03MC40IDExLjNsMTMuNS01NC4zYzE1LjQgMy44IDY0LjggMTEgNTYuOCA0M3oiXX0sTTFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InN3aWZ0IixpY29uOls0NDgsNTEyLFtdLCJmOGUxIiwiTTQ0OCAxNTYuMWMwLTQuNS0uMS05LS4yLTEzLjUtLjEtOS45LTEtMTkuNy0yLjYtMjkuNC0xLjctOS43LTQuOC0xOS4yLTkuMi0yOC05LTE3LjctMjMuNC0zMi4xLTQxLjItNDEuMS04LjgtNC41LTE4LjMtNy42LTI4LTkuMi05LjctMS42LTE5LjYtMi41LTI5LjQtMi42LTQuNS0uMS05LS4yLTEzLjUtLjJMMTI0LjEgMzJjLTQuNSAwLTkgLjEtMTMuNSAuMi0yLjQgLjEtNC45IC4yLTcuNCAuMy03LjQgLjMtMTQuOCAxLjEtMjIuMSAyLjMtNy4zIDEuMy0xNC40IDMuMy0yMS4yIDYuMS0yLjMgMS00LjYgMi02LjggMy4xLTYuNiAzLjQtMTIuOCA3LjUtMTguNCAxMi4zLTEuOSAxLjYtMy43IDMuMy01LjQgNS03IDctMTIuOSAxNS0xNy40IDIzLjgtNC40IDguOC03LjYgMTguMy05LjIgMjgtMS42IDkuNy0yLjQgMTkuNi0yLjUgMjkuNC0uMSA0LjUtLjIgOS0uMiAxMy41TDAgMzU1LjljMCA0LjUgLjEgOSAuMiAxMy41IC4xIDkuOSAxIDE5LjcgMi42IDI5LjQgMS43IDkuNyA0LjggMTkuMiA5LjIgMjggOSAxNy43IDIzLjQgMzIuMSA0MS4xIDQxLjEgOC44IDQuNCAxOC4zIDcuNSAyOCA5LjIgOS43IDEuNiAxOS42IDIuNSAyOS40IDIuNiA0LjUgLjEgOSAuMiAxMy41IC4ybDE5OS44IDBjNC41IDAgOS0uMSAxMy41LS4yIDkuOS0uMSAxOS43LTEgMjkuNC0yLjYgOS43LTEuNyAxOS4yLTQuOCAyOC05LjIgMTcuNy05IDMyLjEtMjMuNCA0MS4xLTQxLjIgNC40LTguOCA3LjYtMTguMyA5LjItMjggMS42LTkuNyAyLjUtMTkuNiAyLjYtMjkuNCAuMS00LjUgLjItOSAuMi0xMy41bDAtMTgzLjhjMC01LjQgMC0xMC43IDAtMTZ6bS02OS45IDI0MWMtMjAtMzguOS01Ny4yLTI5LjMtNzYuMy0xOS41LTEuNyAxLTMuNSAyLTUuMiAzbC0uNCAuMmMtMzkuNSAyMS05Mi41IDIyLjUtMTQ1LjgtLjQtNDMuNC0xOC44LTgwLjEtNTAuMy0xMDUuMy05MC40IDEyLjMgOS4xIDI1LjQgMTYuOSAzOS4yIDIzLjQgNTYuNCAyNi40IDExMyAyNC41IDE1MyAwLTU3LTQzLjgtMTA0LjYtMTAxLTE0MS4xLTE0Ny4yLTctOC4xLTEzLjItMTYuOC0xOC44LTI1LjkgNDMuNyA0MCAxMTIuNyA5MC4yIDEzNy41IDEwNC4xLTUyLjYtNTUuNS05OC45LTEyMy45LTk2LjctMTIxLjcgODIuOCA4My40IDE1OS4yIDEzMC42IDE1OS4yIDEzMC42IDIuOSAxLjYgNSAyLjggNi43IDQgMS42LTQuMSAzLTguMiA0LjItMTIuNSAxMy4yLTQ4LjMtMS43LTEwMy42LTM1LjMtMTQ5LjIgNzYuOCA0Ni4xIDEyMi4yIDEzMy43IDEwMy42IDIwNy44LS40IDEuNy0xIDMuNC0xLjQgNS4xIDM4LjUgNDcuNCAyOCA5OC4yIDIzLjEgODguNmwwIDB6Il19LGsxcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJmaWxlcy1waW53aGVlbCIsaWNvbjpbNTEyLDUxMixbXSwiZTY5ZiIsIk0yNTMuNSAyNDYuNEwxMzcuMiAxMzAuMmMtLjYtLjYtMS0xLjMtMS40LTJzLS41LTEuNi0uNS0yLjQgLjItMS42IC41LTIuNCAuOC0xLjQgMS40LTJMMjUzLjYgNS4xYy45LS45IDItMS41IDMuMi0xLjdzMi41LS4xIDMuNiAuMyAyLjEgMS4zIDIuOCAyLjMgMS4xIDIuMiAxLjEgMy41bDAgMjMyLjVjMCAxLjMtLjMgMi41LTEgMy42cy0xLjcgMS45LTIuOSAyLjQtMi41IC42LTMuNyAuMy0yLjQtLjktMy4yLTEuOXptNDAuMy00LjRsMC0xMzQuNGMwLS44IC4xLTEuNiAuNS0yLjRzLjgtMS41IDEuMy0yLjEgMS4zLTEuMSAyLTEuNCAxLjYtLjUgMi40LS41bDEzNC40IDBjMS4yIDAgMi41IC40IDMuNSAxLjFzMS44IDEuNyAyLjMgMi44IC42IDIuNCAuMyAzLjYtLjkgMi4zLTEuNyAzLjJMMzA0LjMgMjQ2LjRjLS45IC44LTIgMS40LTMuMiAxLjZzLTIuNCAuMS0zLjUtLjQtMi4xLTEuMy0yLjgtMi4zLTEuMS0yLjItMS4xLTMuNGwuMSAuMXptMzAuNiAzNWMtMS4yIDAtMi41LS4zLTMuNS0xcy0xLjktMS42LTIuNC0yLjgtLjYtMi40LS40LTMuNiAuOC0yLjMgMS43LTMuMkw0MDQgMTgyLjJjLjYtLjYgMS4zLTEgMi0xLjRzMS42LS41IDIuNC0uNSAxLjYgLjIgMi40IC41IDEuNCAuOCAyIDEuNGw4NC40IDg0LjJjLjkgLjkgMS41IDIgMS43IDMuMnMuMSAyLjUtLjMgMy42LTEuMyAyLjEtMi4zIDIuOC0yLjIgMS4xLTMuNSAxLjFsLTE2OC41IDAgLjEtLjF6bTkwLjcgMTMxbC05NS4zLTk1LjJjLS45LS45LTEuNS0yLTEuNy0zLjJzLS4xLTIuNSAuNC0zLjcgMS4zLTIuMSAyLjQtMi44IDIuMy0xIDMuNS0xbDk1LjIgMGMxLjcgMCAzLjIgLjcgNC40IDEuOHMxLjggMi44IDEuOCA0LjRsMCA5NS4zYzAgMS4yLS40IDIuNS0xLjEgMy41cy0xLjcgMS44LTIuOCAyLjMtMi40IC42LTMuNiAuMy0yLjMtLjktMy4yLTEuN3pNMTYuOCAzMDIuMWwyMTYuOSAwYzEuMiAwIDIuNSAuNCAzLjUgMS4xczEuOCAxLjcgMi4zIDIuOCAuNiAyLjQgLjMgMy42LS44IDIuMy0xLjcgMy4yTDEyOS43IDQyMS4yYy0uNiAuNi0xLjMgMS0yIDEuNHMtMS42IC41LTIuNCAuNS0xLjYtLjItMi40LS41LTEuNC0uOC0yLTEuNEwxMi4zIDMxMi44Yy0uOS0uOS0xLjUtMi0xLjctMy4ycy0uMS0yLjUgLjQtMy42IDEuMy0yLjEgMi4zLTIuOCAyLjMtMSAzLjUtMWwwLS4xek0yNjQuMyA0NjUuM2MwIC44LS4yIDEuNi0uNSAyLjRzLS44IDEuNS0xLjQgMi0xLjMgMS0yIDEuNC0xLjYgLjUtMi40IC41bC0xMjggMGMtMS4yIDAtMi41LS40LTMuNS0xLjFzLTEuOC0xLjctMi4zLTIuOC0uNi0yLjQtLjMtMy42IC44LTIuMyAxLjctMy4ybDEyOC0xMjhjLjktLjkgMi0xLjUgMy4yLTEuN3MyLjUtLjEgMy42IC4zIDIuMSAxLjMgMi44IDIuMyAxLjEgMi4yIDEuMSAzLjVsMCAxMjh6bTQwLTEzMi41bDgyLjggODIuN2MuNiAuNiAxIDEuMyAxLjQgMnMuNSAxLjYgLjUgMi40LS4yIDEuNi0uNSAyLjQtLjggMS40LTEuNCAyTDMwNC4zIDUwN2MtLjkgLjktMiAxLjUtMy4yIDEuN3MtMi41IC4xLTMuNi0uMy0yLjEtMS4zLTIuOC0yLjMtMS4xLTIuMi0xLjEtMy41bDAtMTY1LjRjMC0xLjIgLjQtMi41IDEuMS0zLjVzMS43LTEuOCAyLjgtMi4zIDIuNC0uNiAzLjYtLjMgMi4zIC44IDMuMiAxLjd6TTc5IDEyMi40YzAtMS4yIC4zLTIuNSAxLTMuNXMxLjctMS44IDIuOC0yLjMgMi40LS42IDMuNi0uNCAyLjMgLjggMy4yIDEuN0wyMzguMSAyNjYuNGMuOSAuOSAxLjUgMiAxLjcgMy4ycy4xIDIuNS0uMyAzLjYtMS4zIDIuMS0yLjMgMi44LTIuMiAxLjEtMy41IDEuMWwtMTQ4LjQgMGMtMS43IDAtMy4yLS43LTQuNC0xLjhzLTEuOC0yLjgtMS44LTQuNGwwLTE0OC40LS4xLS4xeiJdfSxTMXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToibGFyYXZlbCIsaWNvbjpbNTEyLDUxMixbXSwiZjNiZCIsIk01MDQuNiAxMTUuOGMtLjEtLjItLjItLjUtLjMtLjctLjEtLjQtLjMtLjgtLjUtMS4yLS4yLS4yLS4zLS41LS41LS43LS4yLS4zLS41LS42LS43LS45LS4yLS4yLS41LS40LS44LS42LS4zLS4yLS42LS41LS45LS43TDQwNC42IDU1LjVjLTEuMi0uNy0yLjYtMS4xLTQtMS4xcy0yLjggLjQtNCAxLjFMMzAwLjMgMTExYy0uMyAuMi0uNiAuNC0uOSAuNy0uMyAuMi0uNSAuNC0uOCAuNi0uMyAuMy0uNSAuNi0uNyAuOS0uMiAuMi0uNCAuNC0uNSAuNy0uMiAuNC0uNCAuOC0uNSAxLjItLjEgLjItLjIgLjQtLjMgLjctLjIgLjctLjMgMS40LS4zIDIuMWwwIDEwNS4yLTgwLjIgNDYuMiAwLTIwNS45YzAtLjctLjEtMS40LS4zLTIuMS0uMS0uMi0uMi0uNC0uMy0uNy0uMS0uNC0uMy0uOC0uNS0xLjItLjEtLjMtLjQtLjUtLjUtLjctLjItLjMtLjUtLjYtLjctLjktLjItLjItLjUtLjQtLjgtLjYtLjMtLjItLjYtLjUtLjktLjdMMTE1LjggMS4xYy0xLjItLjctMi42LTEuMS00LTEuMXMtMi44IC40LTQgMS4xTDExLjUgNTYuNWMtLjMgLjItLjYgLjQtLjkgLjctLjMgLjItLjUgLjQtLjggLjYtLjMgLjMtLjUgLjYtLjcgLjktLjIgLjMtLjQgLjUtLjYgLjctLjIgLjQtLjQgLjgtLjUgMS4yLS4xIC4yLS4yIC40LS4zIC43LS4yIC43LS4zIDEuNC0uMyAyLjFsMCAzMjkuN2MwIDEuNCAuNCAyLjggMS4xIDRzMS43IDIuMiAyLjkgMi45TDIwNCA1MTAuOWMuNCAuMiAuOSAuNCAxLjMgLjUgLjIgLjEgLjQgLjIgLjYgLjMgMS4zIC40IDIuOCAuNCA0LjEgMCAuMi0uMSAuNC0uMiAuNi0uMiAuNS0uMiAxLS4zIDEuNC0uNkw0MDQuNiA0MDAuMWMxLjItLjcgMi4yLTEuNyAyLjktMi45czEuMS0yLjYgMS4xLTRsMC0xMDUuMyA5Mi4yLTUzLjFjMS4yLS43IDIuMi0xLjcgMi45LTNzMS4xLTIuNiAxLjEtNGwwLTEwOS44YzAtLjctLjEtMS40LS4yLTIuMXpNMTExLjggMTcuM2w4MC4yIDQ2LjEtODAuMiA0Ni4yLTgwLjItNDYuMiA4MC4yLTQ2LjJ6bTg4LjIgNjBsMCAyMDEuM2MtMzMuMiAxOS4xLTU5LjkgMzQuNS04MC4yIDQ2LjJsMC0yMDEuM0MxNTMgMTA0LjQgMTc5LjcgODkgMjAwIDc3LjN6bTAgNDEyLjhMMjMuNSAzODguNSAyMy41IDc3LjNjMjAuMyAxMS43IDQ3LjEgMjcuMSA4MC4yIDQ2LjJsMCAyMTUuMmMwIC4zIC4xIC42IC4xIC45IDAgLjQgLjEgLjggLjIgMS4yIC4xIC4zIC4yIC42IC40IC45IC4xIC4zIC4zIC43IC40IDEgLjIgLjMgLjQgLjUgLjYgLjggLjIgLjMgLjQgLjYgLjcgLjggLjIgLjIgLjUgLjQgLjggLjYgLjMgLjIgLjYgLjUgLjkgLjdsOTIuMiA1Mi4yIC4xIDkyLjR6bTgtMTA2LjJMMTI4IDMzOC42YzU0LjctMzEuNSAxMTMuNS02NS4zIDE3Ni4zLTEwMS41bDgwLjEgNDYuMUMzNTUgMzAwIDI5Ni4yIDMzMy41IDIwOCAzODMuOXptMTg0LjUgNC42bC0xNzYuNSAxMDEuNiAwLTkyLjNDMzE3LjQgMzQwIDM3Ni4yIDMwNi40IDM5Mi41IDI5N2wwIDkxLjR6bTAtMTE5LjFjLTIwLjMtMTEuNi00Ny4xLTI3LTgwLjItNDYuMWwwLTkxLjRjMjAuMyAxMS43IDQ3LjEgMjcuMSA4MC4yIDQ2LjJsMCA5MS4zem04LTEwNS4zbC04MC4yLTQ2LjIgODAuMi00Ni4yIDgwLjIgNDYuMS04MC4yIDQ2LjJ6bTggMTA1LjNsMC05MS4zYzMzLjItMTkuMSA2MC0zNC41IDgwLjMtNDYuMmwwIDkxLjQtODAuMyA0Ni4yeiJdfSx6MXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToid3Bmb3JtcyIsaWNvbjpbNDQ4LDUxMixbXSwiZjI5OCIsIk00NDggNzUuMmwwIDM2MS43YzAgMjQuMy0xOSA0My4yLTQzLjIgNDMuMmwtMzYxLjYgMEMxOS4zIDQ4MCAwIDQ2MS40IDAgNDM2LjhMMCA3NS4yQzAgNTEuMSAxOC44IDMyIDQzLjIgMzJsMzYxLjcgMGMyNCAwIDQzLjEgMTguOCA0My4xIDQzLjJ6TTQxMC43IDQzNi44bDAtMzYxLjZjMC0zLTIuNi01LjgtNS44LTUuOGwtOS4zIDAtMTEwLjMgNzQuNi02MS4zLTQ5LjktNjEuMiA0OS45LTExMC4zLTc0LjctOS4zIDBjLTMuMiAwLTUuOCAyLjgtNS44IDUuOGwwIDM2MS43YzAgMyAyLjYgNS44IDUuOCA1LjhsMzYxLjcgMGMzLjIgLjEgNS44LTIuNyA1LjgtNS44ek0xNTAuMiAxODZsMCAzNy03My41IDAgMC0zNyA3My41IDB6bTAgNzQuNGwwIDM3LjMtNzMuNSAwIDAtMzcuMyA3My41IDB6bTExLjEtMTQ3LjNsNTQtNDMuNy0xMTguNSAwIDY0LjUgNDMuN3ptMjEwIDcyLjlsMCAzNy0xOTYgMCAwLTM3IDE5NiAwem0wIDc0LjRsMCAzNy4zLTE5NiAwIDAtMzcuMyAxOTYgMHpNMjg2LjcgMTEzLjFsNjQuNS00My43LTExOC40IDAgNTMuOSA0My43ek0zNzEuMyAzMzVsMCAzNy4zLTk5LjQgMCAwLTM3LjMgOTkuNCAweiJdfSxDMXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic3BlYWtlci1kZWNrIixpY29uOls1MTIsNTEyLFtdLCJmODNjIiwiTTIxMy45IDI5NkwxMDAgMjk2Yy0yNi41IDAtNTItMTAuNS03MC43LTI5LjNTMCAyMjIuNSAwIDE5NiAxMC41IDE0NCAyOS4zIDEyNS4zIDczLjUgOTYgMTAwIDk2bDEzMi44IDBjMTAuNiAwIDIwLjggNC4yIDI4LjMgMTEuN3MxMS43IDE3LjcgMTEuNyAyOC4zLTQuMiAyMC44LTExLjcgMjguMy0xNy43IDExLjctMjguMyAxMS43TDk4IDE3NmMtMjYuNSAwLTI2LjQgNDAgMCA0MGwxMTMuOCAwYzI2LjUgMCA1MiAxMC41IDcwLjcgMjkuM3MyOS4zIDQ0LjIgMjkuMyA3MC43LTEwLjUgNTItMjkuMyA3MC43LTQ0LjIgMjkuMy03MC43IDI5LjNMNDAgNDE2Yy0xMC42IDAtMjAuOC00LjItMjguMy0xMS43UzAgMzg2LjYgMCAzNzYgNC4yIDM1NS4yIDExLjcgMzQ3LjcgMjkuNCAzMzYgNDAgMzM2bDE3My45IDBjMjYuNSAwIDI2LjUtNDAgMC00MHpNMjk4IDQxNmMxMy41LTkuMiAyNS0yMSAzMy44LTM0LjdzMTQuNy0yOS4yIDE3LjMtNDUuM2w2NC42IDBjMi42IDAgNS4yLS42IDcuNi0xLjZzNC42LTIuNSA2LjQtNC40IDMuMy00LjEgNC4yLTYuNSAxLjUtNSAxLjQtNy42bDAtMTIwYzAtMi42LS41LTUuMi0xLjQtNy42cy0yLjQtNC42LTQuMi02LjUtNC0zLjMtNi40LTQuNC01LTEuNi03LjYtMS42bC0xMTcuMiAwYzkuNy0xMS4xIDE1LTI1LjMgMTUtNDBzLTUuMy0yOC45LTE1LTQwbDEzNi45IDBjNDMuNCAwIDc4LjYgMzUuOCA3OC42IDgwbDAgMTYwYzAgNDQuMi0zNS4yIDgwLTc4LjYgODBMMjk4IDQxNnoiXX0sXzFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImZsaWNrciIsaWNvbjpbNDQ4LDUxMixbXSwiZjE2ZSIsIk00MDAgMzJMNDggMzJDMjEuNSAzMiAwIDUzLjUgMCA4MEwwIDQzMmMwIDI2LjUgMjEuNSA0OCA0OCA0OGwzNTIgMGMyNi41IDAgNDgtMjEuNSA0OC00OGwwLTM1MmMwLTI2LjUtMjEuNS00OC00OC00OHpNMTQ0LjUgMTkyYTYzLjUgNjMuNSAwIDEgMSAwIDEyNyA2My41IDYzLjUgMCAxIDEgMC0xMjd6bTE1OSAwYTYzLjUgNjMuNSAwIDEgMSAwIDEyNyA2My41IDYzLjUgMCAxIDEgMC0xMjd6Il19LFQxcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJjYy12aXNhIixpY29uOls1NzYsNTEyLFtdLCJmMWYwIiwiTTQ3MC4xIDIzMS4zczcuNiAzNy4yIDkuMyA0NWwtMzMuNCAwYzMuMy04LjkgMTYtNDMuNSAxNi00My41LS4yIC4zIDMuMy05LjEgNS4zLTE0LjlsMi44IDEzLjR6TTU3NiA4MGwwIDM1MmMwIDI2LjUtMjEuNSA0OC00OCA0OEw0OCA0ODBjLTI2LjUgMC00OC0yMS41LTQ4LTQ4TDAgODBDMCA1My41IDIxLjUgMzIgNDggMzJsNDgwIDBjMjYuNSAwIDQ4IDIxLjUgNDggNDh6TTE1Mi41IDMzMS4ybDYzLjItMTU1LjItNDIuNSAwLTM5LjMgMTA2LTQuMy0yMS41LTE0LTcxLjRjLTIuMy05LjktOS40LTEyLjctMTguMi0xMy4xbC02NC43IDAtLjcgMy4xYzE1LjggNCAyOS45IDkuOCA0Mi4yIDE3LjFsMzUuOCAxMzUgNDIuNSAwem05NC40IC4ybDI1LjItMTU1LjQtNDAuMiAwLTI1LjEgMTU1LjQgNDAuMSAwem0xMzkuOS01MC44Yy4yLTE3LjctMTAuNi0zMS4yLTMzLjctNDIuMy0xNC4xLTcuMS0yMi43LTExLjktMjIuNy0xOS4yIC4yLTYuNiA3LjMtMTMuNCAyMy4xLTEzLjQgMTMuMS0uMyAyMi43IDIuOCAyOS45IDUuOWwzLjYgMS43IDUuNS0zMy42Yy03LjktMy4xLTIwLjUtNi42LTM2LTYuNi0zOS43IDAtNjcuNiAyMS4yLTY3LjggNTEuNC0uMyAyMi4zIDIwIDM0LjcgMzUuMiA0Mi4yIDE1LjUgNy42IDIwLjggMTIuNiAyMC44IDE5LjMtLjIgMTAuNC0xMi42IDE1LjItMjQuMSAxNS4yLTE2IDAtMjQuNi0yLjUtMzcuNy04LjNsLTUuMy0yLjUtNS42IDM0LjljOS40IDQuMyAyNi44IDguMSA0NC44IDguMyA0Mi4yIC4xIDY5LjctMjAuOCA3MC01M3pNNTI4IDMzMS40bC0zMi40LTE1NS40LTMxLjEgMGMtOS42IDAtMTYuOSAyLjgtMjEgMTIuOWwtNTkuNyAxNDIuNSA0Mi4yIDBzNi45LTE5LjIgOC40LTIzLjNsNTEuNiAwYzEuMiA1LjUgNC44IDIzLjMgNC44IDIzLjNsMzcuMiAweiJdfSxMMXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidXB3b3JrIixpY29uOls2NDAsNTEyLFtdLCJlNjQxIiwiTTQ5My45IDI5NS42Yy01MC4zIDAtODMuNS0zOC45LTkyLjgtNTMuOSAxMS45LTk1LjMgNDYuOC0xMjUuNCA5Mi44LTEyNS40IDQ1LjUgMCA4MC45IDM2LjQgODAuOSA4OS43cy0zNS40IDg5LjctODAuOSA4OS43bDAtLjF6bTAtMjM3LjhjLTgxLjkgMC0xMjcuOCA1My40LTE0MSAxMDguNC0xNC45LTI4LTI1LjktNjUuNS0zNC41LTEwMC4zbC0xMTMuMiAwIDAgMTQxYzAgNTEuMS0yMy4zIDg5LTY4LjggODlzLTcxLjYtMzcuOC03MS42LTg5bC41LTE0MS02NS4zIDAgMCAxNDFjMCA0MS4xIDEzLjMgNzguNCAzNy42IDEwNS4xIDI1IDI3LjUgNTkuMiA0MS44IDk4LjggNDEuOCA3OC44IDAgMTMzLjgtNjAuNCAxMzMuOC0xNDYuOWwwLTk0LjhjOC4yIDMxLjIgMjcuOCA5MS4xIDY1LjMgMTQzLjZsLTM1IDE5OS40IDY2LjQgMCAyMy4xLTE0MS4zYzcuNiA2LjMgMTUuNyAxMiAyNC4yIDE3IDIyLjIgMTQgNDcuNyAyMS45IDczLjkgMjIuOCAwIDAgNCAuMiA2LjEgLjIgODEuMiAwIDE0NS45LTYyLjkgMTQ1LjktMTQ3LjhTNTc1LjMgNTcuOSA0OTQuMSA1Ny45bC0uMi0uMXoiXX0sRDFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Imtha2FvLXRhbGsiLGljb246WzU3Niw1MTIsW10sImU3ZDciLCJNMjg4IDIuNWMxNTkuMSAwIDI4OCAxMDEuNyAyODggMjI3LjEgMCAxMjUuNC0xMjguOSAyMjcuMS0yODggMjI3LjEtMTcuNSAwLTM0LjYtMS4yLTUxLjItMy42LTE2LjYgMTEuNy0xMTIuNiA3OS4xLTEyMS43IDgwLjQgMCAwLTMuNyAxLjQtNi45LS40cy0yLjYtNi43LTIuNi02LjdDMTA2LjYgNTE5LjggMTMwLjYgNDM3LjIgMTM1IDQyMS45IDUzLjkgMzgxLjggMCAzMTAuNiAwIDIyOS41IDAgMTA0LjEgMTI4LjkgMi41IDI4OCAyLjV6TTg2LjIgMTYxLjdjLTkgMC0xNi4zIDcuMy0xNi4zIDE2LjNzNy4zIDE2LjMgMTYuMyAxNi4zbDI1LjkgMCAwIDk4LjdjMCA4LjggNy41IDE1LjkgMTYuNiAxNS45czE2LjYtNy4xIDE2LjYtMTUuOWwwLTk4LjcgMjUuOSAwYzkgMCAxNi4zLTcuMyAxNi4zLTE2LjNzLTcuMy0xNi4zLTE2LjMtMTYuM2wtODUuMSAwem0xNDAuOCAwYy0xMC44IC4yLTE5LjMgOC40LTIyLjEgMTYuNEwxNjUuMiAyODIuN2MtNSAxNS43LS42IDIxLjUgMy45IDIzLjYgMy4yIDEuNSA2LjkgMi4zIDEwLjYgMi4zIDYuOSAwIDEyLjItMi44IDEzLjgtNy4zbDguMi0yMS42IDUwLjcgMCA4LjIgMjEuNWMxLjYgNC41IDYuOSA3LjMgMTMuOCA3LjMgMy43IDAgNy4zLS44IDEwLjYtMi4zIDQuNi0yLjEgOS03LjkgMy45LTIzLjZMMjQ5LjIgMTc4LjFjLTIuOC04LTExLjMtMTYuMi0yMi4yLTE2LjR6bTE4MC45IDBjLTkuMiAwLTE2LjYgNy41LTE2LjYgMTYuNmwwIDExMy43YzAgOS4yIDcuNSAxNi42IDE2LjYgMTYuNnMxNi42LTcuNSAxNi42LTE2LjZsMC0zNi4yIDUuOC01LjggMzguOSA1MS42YzMuMiA0LjIgOCA2LjYgMTMuMyA2LjYgMy42IDAgNy4xLTEuMSAxMC0zLjMgMy41LTIuNyA1LjgtNi42IDYuNC0xMXMtLjUtOC44LTMuMi0xMi4zbC00MC45LTU0LjIgMzcuOS0zNy44YzIuNi0yLjYgMy45LTYuMiAzLjctMTAuMS0uMi0zLjktMi03LjYtNC45LTEwLjUtMy4xLTMuMS03LjMtNC45LTExLjQtNC45LTMuNiAwLTYuOCAxLjMtOS4yIDMuN2wtNDYuMyA0Ni40IDAtMzUuN2MwLTkuMi03LjUtMTYuNi0xNi42LTE2LjZ6bS05MS4zIDBjLTkuMyAwLTE2LjkgNy41LTE2LjkgMTYuNmwwIDExMi44YzAgOC40IDcuMSAxNS4yIDE1LjkgMTUuM2w1My4zIDBjOC44IDAgMTUuOS02LjkgMTUuOS0xNS4zcy03LjItMTUuMi0xNS45LTE1LjJsLTM1LjMgMCAwLTk3LjZjMC05LjItNy42LTE2LjYtMTctMTYuNnptLTczIDg4LjZsLTMzLjIgMCAxNi42LTQ3LjEgMTYuNiA0Ny4xeiJdfSxBMXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZmx1dHRlciIsaWNvbjpbNDQ4LDUxMixbXSwiZTY5NCIsIk00MjkuNSAyMzYuM0wyOTEuNyAzNzQuMSA0MjkuNSA1MTIgMjcyIDUxMmMtMzYuMS0zNi4xLTgyLjEtODIuMS0xMzcuOS0xMzcuOWwxMzcuOS0xMzcuOCAxNTcuNSAwek0yNzIgMEwxNiAyNTYgOTQuOCAzMzQuOCA0MjkuNSAwIDI3MiAweiJdfSxFMXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiYnVmZmVyIixpY29uOls0NDgsNTEyLFtdLCJmODM3IiwiTTQyOC4yIDM4MC43TDIzMS43IDQ3OC41Yy0yLjMgMS00LjggMS41LTcuMyAxLjVzLTUtLjUtNy4zLTEuNUwyMC41IDM4MC43Yy00LTItNC01LjMgMC03LjNMNjcuNiAzNTBjMi4zLTEgNC44LTEuNSA3LjMtMS41czUgLjUgNy4zIDEuNWwxMzQuOCA2N2MyLjMgMSA0LjggMS41IDcuMyAxLjVzNS0uNSA3LjMtMS41bDEzNC44LTY3YzIuMy0xIDQuOC0xLjUgNy4zLTEuNXM1IC41IDcuMyAxLjVsNDcuMSAyMy40YzQgMiA0IDUuMiAwIDcuMnptMC0xMzYuNWwtNDcuMS0yMy40Yy0yLjMtMS00LjgtMS41LTcuMy0xLjVzLTUgLjUtNy4zIDEuNUwyMzEuNyAyODcuOGMtMi4zIDEtNC44IDEuNS03LjMgMS41cy01LS41LTcuMy0xLjVMODIuMyAyMjAuN2MtMi4zLTEtNC44LTEuNS03LjMtMS41cy01IC41LTcuMyAxLjVMMjAuNSAyNDQuMWMtNCAyLTQgNS4zIDAgNy4zbDE5Ni41IDk3LjhjMi4zIDEgNC44IDEuNSA3LjMgMS41czUtLjUgNy4zLTEuNWwxOTYuNS05Ny44YzQtMiA0LTUuMyAwLTcuM3pNMjAuNSAxMzAuNEwyMTcgMjIwLjdjNC43IDEuOSAxMCAxLjkgMTQuNyAwbDE5Ni41LTkwLjNjNC0xLjkgNC00LjkgMC02LjdMMjMxLjcgMzMuNGMtNC43LTEuOS0xMC0xLjktMTQuNyAwTDIwLjUgMTIzLjdjLTQgMS44LTQgNC45IDAgNi43eiJdfSwkMXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZ3JhdGlwYXkiLGljb246WzUxMiw1MTIsW10sImYxODQiLCJNMjU2IDBhMjU2IDI1NiAwIDEgMCAwIDUxMiAyNTYgMjU2IDAgMSAwIDAtNTEyek0zNzQuMyAyMzMuN0wyNTcuNyAzOTEuMyAxNDEuMyAyMzMuN2MtOS0xMi4zLTE5LjctNTIgMTQtNzQuMyAyOS0xOC43IDU2LjQtNC4zIDcwLjcgMTIuMyAxNi40IDE4LjUgNDguMSAxNy40IDYzLjcgMCAxNC4zLTE2LjYgNDEuNy0zMSA3MC4zLTEyLjMgMzQgMjIuMyAyMy4zIDYxLjkgMTQuMiA3NC4zeiJdfSxQMXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZ29vZ2xlLXBheSIsaWNvbjpbNjQwLDUxMixbXSwiZTA3OSIsIk0xMDUuNyAyMTVsMCA0MS4yIDU3LjEgMGMtMS4yIDYuNi0zLjYgMTIuOS03LjIgMTguNXMtOC40IDEwLjQtMTMuOSAxNC4xYy05LjUgNi42LTIxLjcgMTAuMy0zNiAxMC4zLTI3LjYgMC01MC45LTE4LjktNTkuMy00NC4yLTQuNC0xMy4zLTQuNC0yNy43IDAtNDEgOC40LTI1LjUgMzEuNy00NC40IDU5LjMtNDQuNCA3LjUtLjEgMTQuOSAxLjIgMjEuOSA0czEzLjMgNi45IDE4LjYgMTIuMUwxNzYuNSAxNTVjLTE5LjEtMTguMS00NC40LTI4LjEtNzAuNy0yNy44LTE5LjcgLjEtMzguOSA1LjctNTUuNiAxNi4xcy0zMC4xIDI1LjMtMzguOCA0M0MzLjkgMjAxLjIgMCAyMTcuNyAwIDIzNC40czMuOSAzMy4yIDExLjMgNDguMWwwIC4yYzguNyAxNy43IDIyLjEgMzIuNSAzOC44IDQzczM1LjkgMTYgNTUuNiAxNmMyOC41IDAgNTIuNS05LjUgNzAtMjUuOSAyMC0xOC42IDMxLjQtNDYuMiAzMS40LTc4LjkgMC03LjMtLjYtMTQuNi0xLjgtMjEuOGwtOTkuNyAwem0zODkuNC00Yy0xMC4xLTkuNC0yMy45LTE0LjEtNDEuNC0xNC4xLTIyLjUgMC0zOS4zIDguMy01MC41IDI0LjlMNDI0LjEgMjM1YzcuNi0xMS4zIDE4LjEtMTcgMzEuMy0xNyA4LjQgMCAxNi41IDMuMiAyMi43IDguOCAzIDIuNiA1LjUgNS45IDcuMSA5LjZzMi41IDcuNiAyLjUgMTEuN2wwIDUuNWMtOS4xLTUuMS0yMC42LTcuOC0zNC42LTcuOC0xNi40IDAtMjkuNiAzLjktMzkuNSAxMS44cy0xNC44IDE4LjMtMTQuOCAzMS42Yy0uMiA1LjkgMSAxMS44IDMuNCAxNy4yczYgMTAuMiAxMC41IDE0LjFjOS4yIDguMyAyMSAxMi41IDM0LjggMTIuNSAxNi4zIDAgMjkuMi03LjMgMzktMjEuOWwxIDAgMCAxNy43IDIyLjYgMCAwLTc4LjdjLjEtMTYuNi00LjktMjkuNy0xNS0zOXptLTE5LjIgODkuM2MtMy41IDMuNS03LjYgNi4zLTEyLjIgOC4ycy05LjUgMi45LTE0LjQgMi45Yy02LjcgLjEtMTMuMS0yLjEtMTguMy02LjItMi40LTEuOC00LjQtNC4yLTUuNy02LjlzLTItNS43LTItOC43YzAtNyAzLjItMTIuOCA5LjUtMTcuNHMxNC41LTcgMjQuMS03YzEzLjItLjIgMjMuNSAyLjggMzAuOCA4LjggMCAxMC4xLTQgMTguOS0xMS43IDI2LjR6bS05My43LTE0MmMtNS4zLTUuMy0xMS42LTkuNS0xOC42LTEyLjNzLTE0LjQtNC4yLTIxLjktNGwtNjIuNyAwIDAgMTg2LjcgMjMuNiAwIDAtNzUuNiAzOSAwYzE2IDAgMjkuNS01LjQgNDAuNS0xNS45IC45LS45IDEuOC0xLjggMi42LTIuNyA5LjYtMTAuNSAxNC44LTI0LjQgMTQuMy0zOC42cy02LjYtMjcuNy0xNi45LTM3LjZsMCAwem0tMTYuNiA2Mi4yYy0zIDMuMi02LjYgNS43LTEwLjYgNy40cy04LjQgMi41LTEyLjcgMi4zbC0zOS42IDAgMC02NS4yIDM5LjYgMGM4LjUgMCAxNi42IDMuMyAyMi42IDkuMiA2LjEgNi4xIDkuNiAxNC4zIDkuOCAyM3MtMy4xIDE3LTkgMjMuM2wwIDB6TTYxNC4zIDIwMWwtMzYuNSA5MS43LS41IDAtMzcuNC05MS43LTI1LjcgMCA1MS44IDExOS42LTI5LjQgNjQuMyAyNC4zIDAgNzktMTgzLjktMjUuNyAweiJdfSxJMXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiYXBwbGUiLGljb246WzM4NCw1MTIsW10sImYxNzkiLCJNMzE5LjEgMjY4LjdjLS4yLTM2LjcgMTYuNC02NC40IDUwLTg0LjgtMTguOC0yNi45LTQ3LjItNDEuNy04NC43LTQ0LjYtMzUuNS0yLjgtNzQuMyAyMC43LTg4LjUgMjAuNy0xNSAwLTQ5LjQtMTkuNy03Ni40LTE5LjctNTUuOCAuOS0xMTUuMSA0NC41LTExNS4xIDEzMy4yIDAgMjYuMiA0LjggNTMuMyAxNC40IDgxLjIgMTIuOCAzNi43IDU5IDEyNi43IDEwNy4yIDEyNS4yIDI1LjItLjYgNDMtMTcuOSA3NS44LTE3LjkgMzEuOCAwIDQ4LjMgMTcuOSA3Ni40IDE3LjkgNDguNi0uNyA5MC40LTgyLjUgMTAyLjYtMTE5LjMtNjUuMi0zMC43LTYxLjctOTAtNjEuNy05MS45ek0yNjIuNSAxMDQuNWMyNy4zLTMyLjQgMjQuOC02MS45IDI0LTcyLjUtMjQuMSAxLjQtNTIgMTYuNC02Ny45IDM0LjktMTcuNSAxOS44LTI3LjggNDQuMy0yNS42IDcxLjkgMjYuMSAyIDQ5LjktMTEuNCA2OS41LTM0LjN6Il19LE4xcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJ0dW1ibHIiLGljb246WzMyMCw1MTIsW10sImYxNzMiLCJNMzA5LjkgNDgwLjNjLTEzLjYgMTQuNS01MCAzMS43LTk3LjQgMzEuNy0xMjAuOCAwLTE0Ny04OC44LTE0Ny0xNDAuNmwwLTE0NC00Ny41IDBjLTUuNSAwLTEwLTQuNS0xMC0xMGwwLTY4YzAtNy4yIDQuNS0xMy42IDExLjMtMTYgNjItMjEuOCA4MS41LTc2IDg0LjMtMTE3LjEgLjgtMTEgNi41LTE2LjMgMTYuMS0xNi4zbDcwLjkgMGM1LjUgMCAxMCA0LjUgMTAgMTBsMCAxMTUuMiA4MyAwYzUuNSAwIDEwIDQuNCAxMCA5LjlsMCA4MS43YzAgNS41LTQuNSAxMC0xMCAxMGwtODMuNCAwIDAgMTMzLjJjMCAzNC4yIDIzLjcgNTMuNiA2OCAzNS44IDQuOC0xLjkgOS0zLjIgMTIuNy0yLjIgMy41IC45IDUuOCAzLjQgNy40IDcuOWwyMiA2NC4zYzEuOCA1IDMuMyAxMC42LS40IDE0LjV6Il19LEYxcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJwaG9lbml4LXNxdWFkcm9uIixpY29uOls1MTIsNTEyLFtdLCJmNTExIiwiTTk2IDYzLjRjNDYuNS0zNi4xIDEwNS42LTU2LjEgMTY0LjUtNTQuNiAyOS42LS40IDU5LjEgNS40IDg2LjkgMTUuMy0yNC4xLTQuNi00OS02LjMtNzMuNC0yLjUtNDIuOSA1LjMtODMgMjcuMi0xMTEuOCA1OS4yIDUuNy0xIDEwLjgtMy43IDE2LTUuOSAxOC4xLTcuOSAzNy41LTEzLjMgNTcuMi0xNC44IDE5LjctMi4xIDM5LjYtLjQgNTkuMyAxLjktMTQuNCAyLjgtMjkuMSA0LjYtNDMgOS42LTM0LjQgMTEuMS02NS4zIDMzLjItODYuMyA2Mi42LTEzLjggMTkuNy0yMy42IDQyLjktMjQuNyA2Ny4xLS40IDE2LjUgNS4yIDM0LjggMTkuOCA0NCAxMS4yIDYuOCAyNC42IDkuMiAzNy41IDYuNyAxNS40LTIuNSAzMC4xLTguNiA0My42LTE2LjMgMTEuNS02LjggMjIuNy0xNC42IDMyLTI0LjMgMy44LTMuMiAyLjUtOC40IDIuNi0xMi44LTIuMS0uMy00LjQtMS4xLTYuMyAuMy0xMS40IDYuMy0yMy40IDExLjQtMzUuOCAxNS40LTIwIDYuMi00Mi4yIDguNS02Mi4xIC44IDEyLjggMS43IDI2LjEgLjMgMzcuNy01LjQgMjAuMi05LjcgMzYuOC0yNS4yIDU0LjQtMzguOCAyNy43LTIxLjMgNTcuNS0zOS45IDg4LjktNTUuMyAyNS43LTEyIDUyLjktMjIuOCA4MS42LTI0LjEtMTUuNiAxMy43LTMyLjEgMjYuNS00Ni44IDQxLjQtMTQuNSAxNC0yNy41IDI5LjUtNDAuMSA0NS4yLTMuNSA0LjYtOSA2LjktMTMuNiAxMC4yLTIyLjQgMTUtNDAuMyAzNS44LTUxLjkgNjAuMS05LjMgMTkuNy0xNC41IDQxLjktMTEuOCA2My42IDEuOSAxMy43IDguNyAyNy42IDIwLjkgMzQuOSAxMi45IDggMjkgOC4xIDQzLjUgNS4xIDMyLjgtNy40IDYxLjQtMjguOSA4MS01NS44IDIwLjQtMjcuNSAzMC41LTYyLjIgMjkuMi05Ni4zLS41LTcuNS0xLjYtMTUtMS43LTIyLjUgOCAxOS41IDE0LjggMzkuNyAxNi42IDYwLjggMiAxNC4zIC43IDI4LjgtMS42IDQyLjktMS45IDExLTUuNyAyMS41LTcuOCAzMi40IDIwLjQtMjIuOSAzNC01MC45IDM5LjMtODEuMSA1LjYtMzUuNSAuNy03MS45LTE0LjItMTA0LjYgMjAuOCAzMiAzMi4zIDY5LjYgMzUuNyAxMDcuNSAuNSAxMi43IC41IDI1LjUgMCAzOC4yLTIuOCAzNC4zLTEyLjkgNjcuNi0yOS42IDk3LjgtMjYuMSA0Ny4zLTY4IDg1LjYtMTE3LjIgMTA4LTc4LjMgMzYuMi0xNzQuNyAzMS4zLTI0OC0xNC43LTM5LTIzLjgtNzAuNi01OC05MS40LTk4LjctMTQuNy0yOC45LTIzLjMtNjAuNS0yNS40LTkyLjlsMC0zMS4zQzMuOSAxNzIgNDAuOSAxMDUuOCA5NiA2My40em0yMjIgODAuM2M1LjUtLjkgMTAuOC0yLjQgMTYtNC41IDUtMS44IDkuMi01LjkgMTAuMy0xMS4yLTkgNS0xOCA5LjktMjYuMyAxNS43eiJdfSxPMXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiY2VudGVyY29kZSIsaWNvbjpbNTEyLDUxMixbXSwiZjM4MCIsIk0yMDEuOCAyNTQuOGE2NC4xIDY0LjEgMCAxIDEgMTI3LjQgMTMuOCA2NC4xIDY0LjEgMCAxIDEgLTEyNy40LTEzLjh6bTQxLjYgMjQ4LjlDOTYuNyA0OTYtOC4yIDM2NS41IDEwLjEgMjI0LjMgMjEuMyAxMzcuNyA3NS45IDY3LjQgMTQ5LjIgMzIuMyAzMTAuMi00NC44IDQ5OC45IDY5LjcgNTAzLjkgMjQ4LjkgNTA4IDM5NS45IDM4NS41IDUxMS4xIDI0My40IDUwMy43em0xNzkuOS0xODBjMjcuOS0xMTgtMTYwLjUtMjA1LjktMjM3LjItMjM0LjItNTcuNSA1Ni4zLTY5LjEgMTg4LjYtMzMuOCAzNDQuNCA2OC44IDE1LjggMTY5LjEtMjYuNCAyNzEtMTEwLjJ6Il19LFIxcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJkZWJpYW4iLGljb246WzQ0OCw1MTIsW10sImU2MGIiLCJNMzgwLjQgMjQ1LjZjMy03LjYgNS41LTE0IDUuMi0yNC40bC00LjMgOWM0LjQtMTMuMiA0LTI3LjEgMy42LTQwLjQtLjItNi0uMy0xMS44IDAtMTcuNGwtMS44LS41Yy0xLjUtNDUuMi00MC42LTkzLjEtNzUuMy0xMDkuNC0zMC0xMy44LTc2LjEtMTYuMi05Ny4zLTUuOCAxLjMtMS4xIDQuMi0yIDYuOC0yLjdsLjMtLjFjMy4zLTEgNi0xLjcgNC0yLjktMTkuMiAxLjktMjQuOSA1LjUtMzEuMSA5LjRsLS4xIDBjLTQuNiAyLjktOS41IDYtMjAuMyA4LjctMy41IDMuNCAxLjcgMiA1LjggLjlzNy4yLTEuOS0uMSAyLjRjLTMuNSAxLTYuNiAxLjMtOS42IDEuNmwtLjEgMGMtOC4zIC44LTE1LjggMS42LTMwLjcgMTcgLjggMS4zIDMuNC0uMiA1LjMtMS4zbC4xLS4xYzIuMy0xLjQgMy40LTItMS43IDQuNC0xOS4xLTIuNC02MC4zIDQzLjctNjkuMSA1OWw0LjYgLjhjLTMuMiA4LTYuOCAxNC44LTEwIDIwLjgtNC4zIDguMS03LjkgMTQuOS04LjcgMjEuMy0uMyA1LjEtMSAxMS0xLjcgMTcuMy0uMSAxLS4yIDItLjMgM2wtLjEgLjZjLTMgMjcuMy02LjcgNjAuOCAzLjkgNzNsLTEuMyAxM2MuNiAxLjIgMS4xIDIuMyAxLjYgMy41IC4yIC40IC40IC44IC41IDEuMSAxIDIuMSAyIDQuMiAzLjMgNi4ybC0zIC4yYzcgMjIuMSAxMC44IDIyLjUgMTUuMSAyMi45IDQuNCAuNCA5LjMgLjkgMTguNyAyNC4yLTIuNy0uOS01LjUtMS45LTkuNC03LjItLjUgNC4xIDUuOCAxNi4zIDEzLjEgMjUuOGwtMy4xIDMuNmMyLjEgMy43IDQuOCA2LjIgNy42IDguOCAxIC45IDIuMSAxLjkgMy4xIDIuOS0xMS45LTYuNSAzLjIgMTMuNyAxMS45IDI1LjIgLjggMS4xIDEuNSAyIDIuMiAyLjkgMS40IDEuOSAyLjUgMy40IDIuOSA0LjFsMi40LTQuMmMtLjMgNi4xIDQuMyAxMy45IDEzLjEgMjQuN2w3LjMtLjNjMyA2IDE0IDE2LjcgMjAuNyAxNy4ybC00LjQgNS44YzguMSAyLjYgMTAuMyA0LjMgMTIuNyA2LjIgMi42IDIuMSA1LjQgNC4zIDE2LjEgOC4xbC00LjItNy40YzMuNSAzIDYuMiA1LjkgOC44IDguN2wuMSAuMWM1LjIgNS42IDkuOSAxMC42IDE5LjcgMTUuMyAxMC43IDMuNyAxNi42IDQuNyAyMi43IDUuOCAuMyAwIC42IC4xIC45IC4xIDUuNCAuOCAxMS4yIDEuOCAyMC44IDQuNS0xLjEtLjEtMi4yLS4xLTMuMy0uMS0yLjMtLjEtNC43LS4xLTctLjEtMTQuNC0uMi0yOS4yLS40LTQyLjctNS4yLTk2LjYtMjUuNy0xODQuOS0xMzktMTc4LjQtMjU1LjYtLjYtOS45LS4zLTIwLjkgMC0zMC43IC40LTEzLjUgLjctMjQuOC0xLjYtMjguM2wxLTMuMWM1LjMtMTcuNCAxMS43LTM4LjIgMjMuOC02Mi44bC0uMS0uMiAwLS4xYy40IC40IDMuNCAzLjQgOC44LTUuOCAuOC0xLjggMS42LTMuNyAyLjQtNS42IC41LTEuMSAuOS0yLjIgMS40LTMuMiAyLjUtNi4xIDUuMS0xMi4zIDguNC0xNy45bDIuNi0uNmMxLjctMTAuMSAxNy0yMy44IDI5LjgtMzUuMmwxLjEtMWM1LjctNS4xIDEwLjctOS43IDEzLjYtMTMuMWwuNyA0LjRjMTctMTUuOSA0NC42LTI3LjUgNjUuNi0zNi40bC41LS4yYzQuOC0yIDkuMy0zLjkgMTMuMy01LjctMy40IDMuOCAyLjIgMi43IDEwIDEgNC44LTEgMTAuNC0yLjEgMTUuMy0yLjRsLTMuOSAyLjFjLTIuNyAxLjQtNS40IDIuOC04IDQuNiA4LjEtMiAxMS43LTEuNCAxNS43LS44bC4zIDBjMy41IC42IDcuMyAxLjIgMTQuNiAuMi01LjYgLjgtMTIuMyAzLTExLjIgMy44IDcuOSAuOSAxMi44LS4xIDE3LjItMWwuMiAwYzUuNS0xLjEgMTAuMy0yIDE5LjMgLjlsLTEtNC44YzcuMyAyLjYgMTIuNyA0LjMgMTcuNSA1LjhsLjUgLjFjMTAgMyAxNy42IDUuMyAzNC4yIDE0LjEgMy4yIC4yIDUuMy0uNSA3LjQtMS4ybC4xIDBjMy42LTEuMSA3LTIuMSAxNS4yIDEuMiAuMyAuNSAuNSAxIC43IDEuNCAuMSAuMiAuMiAuNSAuMyAuN2wwIC4xYzEgMi42IDEuOCA0LjYgMTQuNiAxMi4xIDEuNy0uNy0yLjctNC43LTYuNC04LjJsLS4xLS4xYy0uMi0uMS0uMy0uMy0uNS0uNCAzMi4yIDE3LjMgNjcuMyA1NC4xIDc4IDkzLjUtNi0xMS4xLTUuMi01LjUtNC4zIC41IC42IDQgMS4yIDguMS0uMiA3LjUgNC41IDEyLjEgOC4xIDI0LjUgMTAuNCAzNy40bC0uOC0yLjktLjEtLjNjLTMuMy0xMS45LTkuNi0zNC4zLTE5LjktNDkuMy0uNCA0LjMtMi44IDMuOS01LjIgMy41bC0uMSAwYy0zLjMtLjYtNi4yLTEuMS0xLjkgMTIuNiAyLjYgMy44IDMuMSAyLjQgMy41IDEuMSAuNS0xLjUgLjktMi43IDQuNyA1LjIgLjEgNC4xIDEgOC4yIDIuMSAxMi43bC4xIC42Yy4xIC4zIC4xIC41IC4yIC44bC4xIC42Yy42IDIuNiAxLjMgNS40IDEuOCA4LjQtMS4xLS4yLTIuMy0yLjItMy40LTQuMi0xLjQtMi40LTIuOC00LjctMy43LTMuMiAyLjQgMTEuNSA2LjUgMTcuNCA4IDE4LjMtLjMgLjYtLjYgLjctMS4xIC43LS44IDAtMS44IC4xLTEuOSA1LjMgLjcgMTMuNyAzLjMgMTIuNSA1LjMgMTEuNiAuNi0uMyAxLjItLjYgMS43LS40LS42IDIuNS0xLjYgNS4xLTIuNyA3LjktMi44IDcuMS02IDE1LjQtMy40IDI2LjEtLjgtMy0yLTYtMy4xLTguOWwtLjEtLjRjLS4yLS41LS40LTEtLjYtMS41LS4zLS44LS42LTEuNi0uOS0yLjMtLjYgNC40LS4zIDcuNy0uMSAxMC42bDAgLjdjLjQgNS4zIC43IDEwLTMgMTkuOSA0LjMtMTQuMiAzLjgtMjYuOS0uMi0yMC44IDEgMTAuOS0zLjcgMjAuNC04IDI4LjlsLS4xIC4yYy0zLjYgNy4xLTYuOCAxMy41LTUuOSAxOS4zbC01LjItNy4xYy03LjUgMTAuOS03IDEzLjMtNi41IDE1LjVsMCAuMWMuNSAxLjkgMSAzLjgtMy40IDEwLjggMS43LTIuOSAxLjMtMy42IDEtNC4yLS40LS44LS43LTEuNSAxLjctNS4xLTEuNiAuMS01LjUgMy45LTEwLjEgOC41LTMuOSAzLjktOC41IDguNC0xMi44IDExLjgtMzcuNSAzMC4xLTgyLjMgMzQtMTI1LjYgMTcuOCAuMi0xLS4yLTIuMS0zLjEtNC4xLTM2LjgtMjguMi01OC41LTUyLjEtNTAuOS0xMDcuNSAyLjEtMS42IDMuNi01LjggNS4zLTEwLjhsLjItLjQgLjEtLjMgMC0uMWMyLjktOC40IDYuNS0xOC44IDE0LjMtMjMuOCA3LjgtMTcuMyAzMS4zLTMzLjMgNTYuNC0zMy43IDI1LjYtMS40IDQ3LjIgMTMuNyA1OC4xIDI3LjktMTkuOC0xOC40LTUyLjEtMjQtNzkuNy0xMC40LTI4LjIgMTIuNy00NSA0My44LTQyLjUgNzQuNyAuMy0uNCAuNi0uNiAuOS0uOGwuMi0uMmMuNi0uNSAxLjEtLjkgMS40LTMuMy0uOSA2MC4yIDY0LjggMTA0LjMgMTEyLjEgODJsLjYgMS4zYzEyLjctMy41IDE1LjktNi41IDIwLjMtMTAuN2wuMS0uMWMyLjItMi4xIDQuNy00LjUgOC45LTcuMy0uMyAuNy0xLjMgMS43LTIuNCAyLjctMi4yIDIuMS00LjYgNC41LTEuNiA0LjYgNS0xLjMgMTguNS0xMy40IDI4LjUtMjIuMyAuNi0uNSAxLjItMSAxLjctMS41IDEuNS0xLjMgMi44LTIuNSA0LTMuNmwuMy0uM2MxLjktNC4yIDEuNi01LjYgMS4zLTdsMC0uMWMtLjQtMS42LS44LTMuMyAyLjQtOS42bDcuMy0zLjdjLjgtMi4xIDEuNS00LjEgMi4yLTYgLjItLjYgLjUtMS4yIC43LTEuOGwtLjQtLjItLjEtLjF6TTI0OCAzMzQuMWMtNi0zLTEzLjctOC45LTE0LjgtMTEuNGwtLjQgLjNjLS4zIC42LS41IDEuMy0uMiAyLjItMTIuMi01LjctMjMuNC0xNC4zLTMyLjYtMjQuOSA0LjkgNy4xIDEwLjEgMTQuMSAxNyAxOS41LTYuOS0yLjMtMTUuMS0xMS44LTIxLjYtMTkuM2wtLjEtLjFjLTQuMy01LTcuOS05LjEtOS43LTkuNSAxOS44IDM1LjUgODAuNSA2Mi4zIDExMi4zIDQ5LTE0LjcgLjUtMzMuNCAuMy00OS45LTUuOHptNzkuMy0xMTkuN2wtLjEtLjJjLS41LTEuNS0xLjEtMy4xLTEuNy0zLjQgMS40LTUuOCA1LjQtMTAuNyA0LjQgNC42LTEgMy44LTEuOCAxLjUtMi42LTF6bS00LjIgMjIuMmMtMS4zIDcuOS01IDE1LjUtMTAuMSAyMi41IC4yLTItMS4yLTIuNC0yLjYtMi44LTIuOS0uOC01LjktMS42IDUuNi0xNi4xLS41IDEuOS0yLjEgNC42LTMuNyA3LjNsLS4zIC40Yy0zLjYgNS45LTYuNyAxMSA0IDQuM2wxLTEuOGMyLjYtNC41IDUtOC44IDYtMTMuOGwuMSAwem0tNTUuNiAzMy45YzcuMSAuNiAxNC4xIC42IDIxLTEuMS0yLjUgMi40LTUuMiA0LjgtOC4zIDcuMi0xMS4xLTEuNy0yMS4yLTYtMTIuNy02LjF6bS05Mi42IDExLjZjMy42IDcuMSA2LjQgMTEuNSA5IDE1LjdsLjEgLjJjMi4zIDMuNyA0LjQgNy4xIDYuOCAxMS43LTUuMS00LjItOC43LTkuNS0xMi41LTE1bC0uMy0uNWMtMS40LTIuMS0yLjgtNC4yLTQuNC02LjJsMS4yLTUuOSAuMSAwem03LjUtOS42YzEuNiAzLjMgMy4yIDYuNCA1LjcgOS4xbDIuNiA3LjctMS4zLTIuMWMtMy4yLTUuMy02LjMtMTAuNi04LTE2LjdsMSAyem0yMzguOS00MS42Yy0yLjMgMTcuNC03LjcgMzQuNi0xNiA1MC4zIDcuNi0xNC45IDEyLjUtMzAuOSAxNC44LTQ3LjJsMS4yLTMuMXpNMzUuOCAxMTAuNmMuNCAuOCAxLjQgLjUgMi4zIC4zIDEuOS0uNSAzLjYtLjktLjEgNy42LS41IC4zLTEgLjctMS41IDEtMS40IC45LTIuOCAxLjktMy45IDMgMS45LTMuOCAzLjUtNy40IDMuMi0xMS45ek0yNS41IDE1Mi4zYy0uNyAzLjctMS41IDcuOS0zLjQgMTMuOSAuMi0xLjkgMC0zLjUtLjItNC45bDAtLjFjLS40LTMuNC0uNy02LjMgNC4zLTEyLjgtLjMgMS4yLS41IDIuNS0uNyAzLjhsMCAuMXoiXX0sQjFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Im1hc3RvZG9uIixpY29uOls0NDgsNTEyLFtdLCJmNGY2IiwiTTQzMyAxNzkuMWMwLTk3LjItNjMuNy0xMjUuNy02My43LTEyNS43LTYyLjUtMjguNy0yMjguNi0yOC40LTI5MC41IDAgMCAwLTYzLjcgMjguNS02My43IDEyNS43IDAgMTE1LjctNi42IDI1OS40IDEwNS42IDI4OS4xIDQwLjUgMTAuNyA3NS4zIDEzIDEwMy4zIDExLjQgNTAuOC0yLjggNzkuMy0xOC4xIDc5LjMtMTguMWwtMS43LTM2LjlzLTM2LjMgMTEuNC03Ny4xIDEwLjFjLTQwLjQtMS40LTgzLTQuNC04OS42LTU0LS42LTQuNi0uOS05LjMtLjktMTMuOSA4NS42IDIwLjkgMTU4LjcgOS4xIDE3OC43IDYuNyA1Ni4xLTYuNyAxMDUtNDEuMyAxMTEuMi03Mi45IDkuOC00OS44IDktMTIxLjUgOS0xMjEuNXpNMzU3LjkgMzA0LjNsLTQ2LjYgMCAwLTExNC4yYzAtNDkuNy02NC01MS42LTY0IDYuOWwwIDYyLjUtNDYuMyAwIDAtNjIuNWMwLTU4LjUtNjQtNTYuNi02NC02LjlsMCAxMTQuMi00Ni43IDBjMC0xMjIuMS01LjItMTQ3LjkgMTguNC0xNzUgMjUuOS0yOC45IDc5LjgtMzAuOCAxMDMuOCA2LjFsMTEuNiAxOS41IDExLjYtMTkuNWMyNC4xLTM3LjEgNzguMS0zNC44IDEwMy44LTYuMSAyMy43IDI3LjMgMTguNCA1MyAxOC40IDE3NWwwIDB6Il19LEgxcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJza2V0Y2giLGljb246WzUxMiw1MTIsW10sImY3YzYiLCJNMjcuOCAxNjIuMmwtMTguNSAyNC45IDkwLjUgMCA2LjktMTMwLjctNzguOSAxMDUuOHpNMzk2LjYgNDUuN0wyNjggMzIgNDAzLjcgMTc5LjIgMzk2LjYgNDUuN3pNMTEyLjUgMjE4LjNsLTExLjItMjItOTEuMSAwIDIyNC45IDI2MS43LTEyMi42LTIzOS43em0yLTMxLjJsMjg0IDBDMzQwLjYgMTI0LjMgMjkzLjMgNzIuOSAyNTYuNiAzM0wxMTQuNSAxODcuMXptMjk3LjMgOS4xbC0xMzMuOSAyNjEuOCAyMjQuOC0yNjEuNy05MC45IDAgMC0uMXpNNDE1LjcgNjlsLTkuNC0xMi42IC45IDE3LjMgNi4xIDExMy40IDkwLjMgMC04Ny45LTExOC4xek0xMTMuOCA5My41TDEwOS4yIDE3OS4xIDI0NSAzMiAxMTYuNCA0NS43IDExMy44IDkzLjV6TTQwMS41IDE5Ni4ybC0yOTAgMGMxOC4yIDM1LjYgNjYuNiAxMzAuMiAxNDUuMSAyODMuOEw0MDEuNSAxOTYuMnoiXX0scTFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6IndlYi1hd2Vzb21lIixpY29uOls2NDAsNTEyLFtdLCJlNjgyIiwiTTM3Mi4yIDUyYzAgMjAuOS0xMi40IDM5LTMwLjIgNDcuMkw0NDggMTkyIDU1Mi40IDE3MS4xYy01LjMtNy43LTguNC0xNy4xLTguNC0yNy4xIDAtMjYuNSAyMS41LTQ4IDQ4LTQ4czQ4IDIxLjUgNDggNDhjMCAyNi0yMC42IDQ3LjEtNDYuNCA0OEw0ODEgNDQyLjNjLTEwLjMgMjMtMzMuMiAzNy43LTU4LjQgMzcuN2wtMjA1LjIgMGMtMjUuMiAwLTQ4LTE0LjgtNTguNC0zNy43TDQ2LjQgMTkyQzIwLjYgMTkxLjEgMCAxNzAgMCAxNDQgMCAxMTcuNSAyMS41IDk2IDQ4IDk2czQ4IDIxLjUgNDggNDhjMCAxMC4xLTMuMSAxOS40LTguNCAyNy4xTDE5MiAxOTIgMjk4LjEgOTkuMWMtMTcuNy04LjMtMzAtMjYuMy0zMC00Ny4xIDAtMjguNyAyMy4zLTUyIDUyLTUyczUyIDIzLjMgNTIgNTJsLjEgMHoiXX0sajFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InNhc3MiLGljb246WzY0MCw1MTIsW10sImY0MWUiLCJNMzAxLjggMzc4LjlsMCAwem0yNDkuMS04N2MtMjAuMSAwLTQwIDQuNi01OCAxMy41LTUuOS0xMS45LTEyLTIyLjMtMTMtMzAuMS0xLjItOS4xLTIuNS0xNC41LTEuMS0yNS4zczcuNy0yNi4xIDcuNi0yNy4yLTEuNC02LjYtMTQuMy02LjctMjQgMi41LTI1LjMgNS45Yy0yLjMgNi4yLTQuMSAxMi42LTUuMyAxOS4xLTIuMyAxMS43LTI1LjggNTMuNS0zOS4xIDc1LjMtNC40LTguNS04LjEtMTYtOC45LTIyLTEuMi05LjEtMi41LTE0LjUtMS4xLTI1LjNzNy43LTI2LjEgNy42LTI3LjItMS40LTYuNi0xNC4zLTYuNy0yNCAyLjUtMjUuMyA1LjktMi43IDExLjQtNS4zIDE5LjEtMzMuOSA3Ny4zLTQyLjEgOTUuNGMtNC4yIDkuMi03LjggMTYuNi0xMC40IDIxLjYtLjQgLjgtLjcgMS4zLS45IDEuNyAuMy0uNSAuNS0xIC41LS44LTIuMiA0LjMtMy41IDYuNy0zLjUgNi43bDAgLjFjLTEuNyAzLjItMy42IDYuMS00LjUgNi4xLS42IDAtMS45LTguNCAuMy0xOS45IDQuNy0yNC4yIDE1LjgtNjEuOCAxNS43LTYzLjEtLjEtLjcgMi4xLTcuMi03LjMtMTAuNy05LjEtMy4zLTEyLjQgMi4yLTEzLjIgMi4ycy0xLjQgMi0xLjQgMiAxMC4xLTQyLjQtMTkuNC00Mi40Yy0xOC40IDAtNDQgMjAuMi01Ni42IDM4LjUtNy45IDQuMy0yNSAxMy42LTQzIDIzLjUtNi45IDMuOC0xNCA3LjctMjAuNyAxMS40LS41LS41LS45LTEtMS40LTEuNS0zNS44LTM4LjItMTAxLjktNjUuMi05OS4xLTExNi41IDEtMTguNyA3LjUtNjcuOCAxMjcuMS0xMjcuNCA5OC00OC44IDE3Ni4zLTM1LjQgMTg5LjgtNS42IDE5LjQgNDIuNS00MS45IDEyMS42LTE0My43IDEzMy0zOC44IDQuMy01OS4yLTEwLjctNjQuMy0xNi4zLTUuMy01LjktNi4xLTYuMi04LjEtNS4xLTMuMyAxLjgtMS4yIDcgMCAxMC4xIDMgNy45IDE1LjUgMjEuOSAzNi44IDI4LjkgMTguNyA2LjEgNjQuMiA5LjUgMTE5LjItMTEuOCA2MS44LTIzLjggMTA5LjktOTAuMSA5NS44LTE0NS42LTE0LjQtNTYuNC0xMDcuOS03NC45LTE5Ni4zLTQzLjUtNTIuNyAxOC43LTEwOS43IDQ4LjEtMTUwLjcgODYuNC00OC43IDQ1LjYtNTYuNSA4NS4zLTUzLjMgMTAxLjkgMTEuNCA1OC45IDkyLjYgOTcuMyAxMjUuMSAxMjUuNy0xLjYgLjktMy4xIDEuNy00LjUgMi41LTE2LjMgOC4xLTc4LjIgNDAuNS05My43IDc0LjctMTcuNSAzOC44IDIuOSA2Ni42IDE2LjMgNzAuNCA0MS44IDExLjYgODQuNi05LjMgMTA3LjYtNDMuNnMyMC4yLTc5LjEgOS42LTk5LjVjLS4xLS4zLS4zLS41LS40LS44IDQuMi0yLjUgOC41LTUgMTIuOC03LjUgOC4zLTQuOSAxNi40LTkuNCAyMy41LTEzLjMtNCAxMC44LTYuOSAyMy44LTguNCA0Mi42LTEuOCAyMiA3LjMgNTAuNSAxOS4xIDYxLjcgNS4yIDQuOSAxMS41IDUgMTUuNCA1IDEzLjggMCAyMC0xMS40IDI2LjktMjUgOC41LTE2LjYgMTYtMzUuOSAxNi0zNS45cy05LjQgNTIuMiAxNi4zIDUyLjJjOS40IDAgMTguOC0xMi4xIDIzLTE4LjNsMCAuMXMuMi0uNCAuNy0xLjJjMS0xLjUgMS41LTIuNCAxLjUtMi40bDAtLjNjMy44LTYuNSAxMi4xLTIxLjQgMjQuNi00NiAxNi4yLTMxLjggMzEuNy03MS41IDMxLjctNzEuNSAxLjUgOC43IDMuNiAxNy4zIDYuMiAyNS44IDIuOCA5LjUgOC43IDE5LjkgMTMuNCAzMC0zLjggNS4yLTYuMSA4LjItNi4xIDguMiAwIC4xIDAgLjEgLjEgLjItMyA0LTYuNCA4LjMtOS45IDEyLjUtMTIuOCAxNS4yLTI4IDMyLjYtMzAgMzcuNi0yLjQgNS45LTEuOCAxMC4zIDIuOCAxMy43IDMuNCAyLjYgOS40IDMgMTUuNyAyLjUgMTEuNS0uOCAxOS42LTMuNiAyMy41LTUuNCA3LjItMi42IDE0LTYuMSAyMC4yLTEwLjYgMTIuNS05LjIgMjAuMS0yMi40IDE5LjQtMzkuOC0uNC05LjYtMy41LTE5LjItNy4zLTI4LjIgMS4xLTEuNiAyLjMtMy4zIDMuNC01IDE5LjgtMjguOSAzNS4xLTYwLjYgMzUuMS02MC42IDEuNSA4LjcgMy42IDE3LjMgNi4yIDI1LjggMi40IDguMSA3LjEgMTcgMTEuNCAyNS43LTE4LjYgMTUuMS0zMC4xIDMyLjYtMzQuMSA0NC4xLTcuNCAyMS4zLTEuNiAzMC45IDkuMyAzMy4xIDQuOSAxIDExLjktMS4zIDE3LjEtMy41IDcuNy0yLjYgMTUtNi4zIDIxLjYtMTEuMSAxMi41LTkuMiAyNC42LTIyLjEgMjMuOC0zOS42LS4zLTcuOS0yLjUtMTUuOC01LjQtMjMuNCAxNS43LTYuNiAzNi4xLTEwLjIgNjIuMS03LjIgNTUuNyA2LjUgNjYuNiA0MS4zIDY0LjUgNTUuOHMtMTMuOCAyMi42LTE3LjcgMjUtNS4xIDMuMy00LjggNS4xYy41IDIuNiAyLjMgMi41IDUuNiAxLjkgNC42LS44IDI5LjItMTEuOCAzMC4zLTM4LjcgMS42LTM0LTMxLjEtNzEuNC04OS03MS4xbDAgMHpNMTIxLjggNDM2LjZjLTE4LjQgMjAuMS00NC4yIDI3LjctNTUuMyAyMS4zLTExLjktNi45LTcuMi0zNi41IDE1LjUtNTcuOSAxMy44LTEzIDMxLjYtMjUgNDMuNC0zMi40IDIuNy0xLjYgNi42LTQgMTEuNC02LjkgLjgtLjUgMS4yLS43IDEuMi0uNyAuOS0uNiAxLjktMS4xIDIuOS0xLjcgOC4zIDMwLjQgLjMgNTcuMi0xOS4xIDc4LjNsMCAwem0xMzQuNC05MS40Yy02LjQgMTUuNy0xOS45IDU1LjctMjguMSA1My42LTctMS44LTExLjMtMzIuMy0xLjQtNjIuMyA1LTE1LjEgMTUuNi0zMy4xIDIxLjktNDAuMSAxMC4xLTExLjMgMjEuMi0xNC45IDIzLjgtMTAuNCAzLjUgNS45LTEyLjIgNDkuNC0xNi4yIDU5LjJ6bTExMSA1M2MtMi43IDEuNC01LjIgMi4zLTYuNCAxLjYtLjktLjUgMS4xLTIuNCAxLjEtMi40czEzLjktMTQuOSAxOS40LTIxLjdjMy4yLTQgNi45LTguNyAxMC45LTEzLjkgMCAuNSAuMSAxIC4xIDEuNi0uMSAxNy45LTE3LjMgMzAtMjUuMSAzNC44bDAgMHptODUuNi0xOS41Yy0yLTEuNC0xLjctNi4xIDUtMjAuNyAyLjYtNS43IDguNi0xNS4zIDE5LTI0LjUgMS4yIDMuNSAxLjggNy4xIDEuOSAxMC44LS4xIDIyLjUtMTYuMiAzMC45LTI1LjkgMzQuNGwwIDB6Il19LFYxcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJ0aHJlZW1hIixpY29uOlszODQsNTEyLFtdLCJlODVmIiwiTTg3LjQgNDQ1LjFjMTguNSAwIDMzLjUgMTUgMzMuNSAzMy40UzEwNS45IDUxMiA4Ny40IDUxMiA1NCA0OTcgNTQgNDc4LjUgNjkgNDQ1LjEgODcuNCA0NDUuMXptMTA5LjIgMGMxOC41IDAgMzMuNSAxNSAzMy41IDMzLjRzLTE1IDMzLjUtMzMuNSAzMy41LTMzLjQtMTUtMzMuNC0zMy41IDE1LTMzLjQgMzMuNC0zMy40em0xMDkuMyAwYzE4LjUgMCAzMy41IDE1IDMzLjUgMzMuNHMtMTUgMzMuNS0zMy41IDMzLjUtMzMuNS0xNS0zMy41LTMzLjUgMTUtMzMuNCAzMy41LTMzLjR6TTE5Mi4zIC4zYzEwOS44IDAgMTk5LjIgODkuMyAxOTkuMiAxOTkuMVMzMDIuMiAzOTguNSAxOTIuNCAzOTguNWMtNDAuNSAwLTc4LjEtMTIuMS0xMDkuNi0zMi45bC03Ni41IDI0LjUgMjQuOC03NEM3LjMgMjgzLjQtNi44IDI0My02LjggMTk5LjQtNi44IDg5LjcgODIuNSAuMyAxOTIuMyAuM3ptLjEgOTMuN2MtMzEuNiAwLTU3LjMgMjUuOC01Ny4zIDU3LjNsMCAyNi43LTEuOCAwYy0xMCAwLTE4IDgtMTggMThsMCA3Mi4zYzAgMTAgOCAxOCAxOCAxOGwxMTguMSAwYzEwIDAgMTgtOCAxOC0xOGwuMSAwIDAtNzIuM2MwLTEwLTguMS0xOC0xOC0xOGwtMS44IDAgMC0yNi43YzAtMzEuNi0yNS44LTU3LjMtNTcuMy01Ny4zem0tLjEgMjMuNWMxOC42IDAgMzMuOCAxNS4xIDMzLjggMzMuOGwwIDI2LjctNjcuNiAwIDAtMjYuN2MwLTE4LjYgMTUuMS0zMy44IDMzLjgtMzMuOHoiXX0sS2tlPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InNxdWFyZS13aGF0c2FwcCIsaWNvbjpbNDQ4LDUxMixbIndoYXRzYXBwLXNxdWFyZSJdLCJmNDBjIiwiTTkyLjEgMjU0LjZjMCAyNC45IDcgNDkuMiAyMC4yIDcwLjFsMy4xIDUtMTMuMyA0OC42IDQ5LjktMTMuMSA0LjggMi45YzIwLjIgMTIgNDMuNCAxOC40IDY3LjEgMTguNGwuMSAwYzcyLjYgMCAxMzMuMy01OS4xIDEzMy4zLTEzMS44IDAtMzUuMi0xNS4yLTY4LjMtNDAuMS05My4yLTI1LTI1LTU4LTM4LjctOTMuMi0zOC43LTcyLjcgMC0xMzEuOCA1OS4xLTEzMS45IDEzMS44ek0yNzQuOCAzMzBjLTEyLjYgMS45LTIyLjQgLjktNDcuNS05LjktMzYuOC0xNS45LTYxLjgtNTEuNS02Ni45LTU4LjctLjQtLjYtLjctLjktLjgtMS4xLTItMi42LTE2LjItMjEuNS0xNi4yLTQxIDAtMTguNCA5LTI3LjkgMTMuMi0zMi4zIC4zLS4zIC41LS41IC43LS44IDMuNi00IDcuOS01IDEwLjYtNSAyLjYgMCA1LjMgMCA3LjYgLjFsLjggMGMyLjMgMCA1LjIgMCA4LjEgNi44IDEuMiAyLjkgMyA3LjMgNC45IDExLjggMy4zIDggNi43IDE2LjMgNy4zIDE3LjYgMSAyIDEuNyA0LjMgLjMgNi45LTMuNCA2LjgtNi45IDEwLjQtOS4zIDEzLTMuMSAzLjItNC41IDQuNy0yLjMgOC42IDE1LjMgMjYuMyAzMC42IDM1LjQgNTMuOSA0Ny4xIDQgMiA2LjMgMS43IDguNi0xIDIuMy0yLjYgOS45LTExLjYgMTIuNS0xNS41IDIuNi00IDUuMy0zLjMgOC45LTJzMjMuMSAxMC45IDI3LjEgMTIuOWMuOCAuNCAxLjUgLjcgMi4xIDEgMi44IDEuNCA0LjcgMi4zIDUuNSAzLjYgLjkgMS45IC45IDkuOS0yLjQgMTkuMS0zLjMgOS4zLTE5LjEgMTcuNy0yNi43IDE4Ljh6TTQ0OCA5NmMwLTM1LjMtMjguNy02NC02NC02NEw2NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgNDE2YzAgMzUuMyAyOC43IDY0IDY0IDY0bDMyMCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMzIwek0xNDguMSAzOTMuOUw2NCA0MTYgODYuNSAzMzMuOGMtMTMuOS0yNC0yMS4yLTUxLjMtMjEuMi03OS4zIC4xLTg3LjQgNzEuMi0xNTguNSAxNTguNi0xNTguNSA0Mi40IDAgODIuMiAxNi41IDExMi4yIDQ2LjUgMjkuOSAzMCA0Ny45IDY5LjggNDcuOSAxMTIuMiAwIDg3LjQtNzIuNyAxNTguNS0xNjAuMSAxNTguNS0yNi42IDAtNTIuNy02LjctNzUuOC0xOS4zeiJdfSxVMXI9S2tlLFcxcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJza3lwZSIsaWNvbjpbNDQ4LDUxMixbXSwiZjE3ZSIsIk00MjQuNyAyOTkuOGMyLjktMTQgNC43LTI4LjkgNC43LTQzLjggMC0xMTMuNS05MS45LTIwNS4zLTIwNS4zLTIwNS4zLTE0LjkgMC0yOS43IDEuNy00My44IDQuNy0xOS0xNC43LTQyLjYtMjMuNC02OC4zLTIzLjQtNjEuOCAwLTExMiA1MC4yLTExMiAxMTIgMCAyNS43IDguNyA0OS4zIDIzLjMgNjguMi0yLjkgMTQtNC43IDI4LjktNC43IDQzLjggMCAxMTMuNSA5MS45IDIwNS4zIDIwNS4zIDIwNS4zIDE0LjkgMCAyOS43LTEuNyA0My44LTQuNyAxOSAxNC42IDQyLjYgMjMuMyA2OC4yIDIzLjMgNjEuOCAwIDExMi01MC4yIDExMi0xMTIgLjEtMjUuNi04LjYtNDkuMi0yMy4yLTY4LjF6TTIzMC4xIDM5MS4zYy02NS42IDAtMTIwLjUtMjkuMi0xMjAuNS02NSAwLTE2IDktMzAuNiAyOS41LTMwLjYgMzEuMiAwIDM0LjEgNDQuOSA4OC4xIDQ0LjkgMjUuNyAwIDQyLjMtMTEuNCA0Mi4zLTI2LjMgMC0xOC43LTE2LTIxLjYtNDItMjgtNjIuNS0xNS40LTExNy44LTIyLTExNy44LTg3LjIgMC01OS4yIDU4LjYtODEuMSAxMDkuMS04MS4xIDU1LjEgMCAxMTAuOCAyMS45IDExMC44IDU1LjQgMCAxNi45LTExLjQgMzEuOC0zMC4zIDMxLjgtMjguMyAwLTI5LjItMzMuNS03NS0zMy41LTI1LjcgMC00MiA3LTQyIDIyLjUgMCAxOS44IDIwLjggMjEuOCA2OS4xIDMzIDQxLjQgOS4zIDkwLjcgMjYuOCA5MC43IDc3LjYgMCA1OS4xLTU3LjEgODYuNS0xMTIgODYuNXoiXX0sRzFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImFuZ3VsYXIiLGljb246WzQ0OCw1MTIsW10sImY0MjAiLCJNMTg1LjcgMjY4LjFsNzYuMiAwLTM4LjEtOTEuNi0zOC4xIDkxLjZ6TTIyMy44IDMyTDE2IDEwNi40IDQ3LjggMzgyLjEgMjIzLjggNDgwIDM5OS44IDM4Mi4xIDQzMS42IDEwNi40IDIyMy44IDMyek0zNTQgMzczLjhsLTQ4LjYgMC0yNi4yLTY1LjQtMTEwLjYgMC0yNi4yIDY1LjQtNDguNyAwIDEzMC4xLTI5Mi4zIDEzMC4yIDI5Mi4zeiJdfSxZMXI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiY2lyY2xlLXp1bGlwIixpY29uOls1MTIsNTEyLFtdLCJlODUxIiwiTTI1NiA1MTJhMjU2IDI1NiAwIDEgMSAwLTUxMiAyNTYgMjU2IDAgMSAxIDAgNTEyek0yNDMuNSAyNDBjMS4yLTEuOS0uOS00LjItMi42LTIuOGwtODkgNzkuNWMtOS4yIDcuMi0xNS4yIDE5LjEtMTUuMiAzMi41IDAgMjEuOSAxNiAzOS44IDM1LjcgMzkuOGwxNjcuMyAwYzE5LjYgMCAzNS43LTE3LjkgMzUuNy0zOS44IDAtMjEuOS0xNi4xLTM5LjctMzUuNy0zOS44bC0xMjYuNiAwYy0xLjkgMC0zLTIuMy0yLjEtNC4xTDI0My41IDI0MHpNMTcyLjQgMTIzLjFjLTE5LjYgMC0zNS43IDE3LjktMzUuNyAzOS44czE2IDM5LjggMzUuNyAzOS44bDEyNi42IDBjMS45IDAgMy4xIDIuMiAyLjIgNC4xTDI2OC41IDI3MmMtMS4yIDEuOSAuOSA0LjIgMi42IDIuOGw4OS03OS41YzkuMi03LjIgMTUuMi0xOS4xIDE1LjItMzIuNSAwLTIxLjktMTYtMzkuNy0zNS43LTM5LjhsLTE2Ny4zIDB6Il19LFoxcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJvcGVuc3VzZSIsaWNvbjpbNjQwLDUxMixbXSwiZTYyYiIsIk00NzEuMSAxMDIuN3MtLjMgMTguMy0uMyAyMC4zYy05LjEtMy03NC40LTI0LjEtMTM1LjctMjYuMy01MS45LTEuOC0xMjIuOC00LjMtMjIzIDU3LjMtMTkuNCAxMi40LTczLjkgNDYuMS05OS42IDEwOS43LTUuNSAxMy4zLTEyLjYgNDMuMy01LjUgNzEuNCAzLjMgMTIuOCA4LjkgMjQuOSAxNi41IDM1LjcgMTcuNCAyNSA0Ni42IDQxLjYgNzguMSA0NC40IDQ0LjQgMy45IDc4LjEtMTYgOTAtNTMuMyA4LjItMjUuOCAwLTYzLjYtMzEuNS04Mi45LTI1LjYtMTUuNy01My4zLTEyLjEtNjkuMi0xLjYtMTMuOSA5LjItMjEuOCAyMy41LTIxLjYgMzkuMiAuMyAyNy44IDI0LjMgNDIuNiA0MS41IDQyLjYgNS40IDAgMTAuNy0uOSAxNS44LTIuNyA2LjUtMS44IDEzLjMtNi41IDEzLjMtMTQuOSAwLTEyLjEtMTEuNi0xNC44LTE2LjgtMTMuOS0yLjkgLjUtNC41IDItMTEuOCAyLjQtMi0uMi0xMi0zLjEtMTItMTRsMC0uMWMuMi0xMi4zIDEzLjItMTggMjUuNS0xNi45IDMyLjMgMi44IDQ3LjcgNDAuNyAyOC41IDY1LjctMTguMyAyMy43LTc2LjYgMjMuMi05OS43LTIwLjQtMjYtNDkuMiAxMi43LTExMS4yIDg3LTk4LjQgMzMuMiA1LjcgODMuNiAzNS41IDEwMi40IDEwNC4zbDQ1LjkgMGMtNS43LTE3LjYtOC45LTY4LjMgNDIuNy02OC4zIDU2LjcgMCA2My45IDM5LjkgNzkuOCA2OC4zbDQ4LjYgMGMtMTIuOC0xOC4zLTIxLjctMzguNy0xOC45LTU1LjggNS42LTMzLjggMzkuNy0xOC40IDgyLjQtMTcuNCA2Ni41IC40IDEwMi4xLTI3IDEwMy4xLTI4IDMuNy0zLjEgNi41LTE1LjggNy0xNy43IDEuMy01LjEtMy4yLTIuNC0zLjItMi40LTguNyA1LjItMzAuNSAxNS4yLTUwLjkgMTUuNi0yNS4zIC41LTc2LjItMjUuNC04MS42LTI4LjItLjMtLjQgLjEgMS4yLTExLTI1LjUgODguNCA1OC4zIDExOC4zIDQwLjUgMTQ1LjIgMjEuNyAuOC0uNiA0LjMtMi45IDMuNi01LjctMTMuOC00OC4xLTIyLjQtNjIuNy0zNC41LTY5LjYtMzctMjEuNi0xMjUtMzQuNy0xMjkuMi0zNS4zIC4xLS4xLS45LS4zLS45IC43em02MC40IDcyLjhhMzcuNiAzNy42IDAgMSAxIDc1LjIgMi42IDM3LjYgMzcuNiAwIDEgMSAtNzUuMi0yLjZ6bTM4LjYtMjUuM2MtMy42LS4zLTcuMSAuMS0xMC41IDEuMnMtNi41IDIuOS05LjIgNS4zLTQuOCA1LjMtNi4zIDguNS0yLjQgNi43LTIuNSAxMC4zIC41IDcuMSAxLjggMTAuNCAzLjMgNi4zIDUuOCA4LjkgNS41IDQuNSA4LjggNS45IDYuOSAyIDEwLjQgMS45YzMuNiAuMyA3LjEtLjEgMTAuNS0xLjJzNi41LTIuOSA5LjItNS4zIDQuOC01LjMgNi4zLTguNSAyLjQtNi43IDIuNS0xMC4zLS41LTcuMS0xLjgtMTAuNC0zLjMtNi4zLTUuOC04LjktNS41LTQuNS04LjgtNS45LTYuOS0yLTEwLjQtMS45em00LjMgMjguOGMtMTUuNCAwLTE1LjQtMTUuNiAwLTE1LjZzMTUuNCAxNS42IDAgMTUuNnoiXX0sWDFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImRyb3Bib3giLGljb246WzU3Niw1MTIsW10sImYxNmIiLCJNMjg4LjQgMTE2LjNsLTEzMiA4NC4zIDEzMiA4NC4zLTEzMiA4NC4zLTEzMi40LTg1LjEgMTMyLjMtODQuMy0xMzIuMy04My41IDEzMi4zLTg0LjMgMTMyLjEgODQuM3pNMTU1LjYgMzk1LjdsMTMyLTg0LjMgMTMyIDg0LjMtMTMyIDg0LjMtMTMyLTg0LjN6TTI4OC40IDI4NC4xbDEzMi04NC4zLTEzMi04My42IDEzMS4zLTg0LjIgMTMyLjMgODQuMy0xMzIuMyA4NC4zIDEzMi4zIDg0LjItMTMyLjMgODQuMy0xMzEuMy04NXoiXX0sUTFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImRlZXplciIsaWNvbjpbNTEyLDUxMixbXSwiZTA3NyIsIk0xNC44IDEwMS4xQzYuNiAxMDEuMSAwIDEyNy42IDAgMTYwLjNzNi42IDU5LjIgMTQuOCA1OS4yIDE0LjgtMjYuNSAxNC44LTU5LjItNi42LTU5LjItMTQuOC01OS4yek00NDguNyA0MC45Yy03LjcgMC0xNC41IDE3LjEtMTkuNCA0NC4xLTcuNy00Ni43LTIwLjItNzctMzQuMi03Ny0xNi44IDAtMzEuMSA0Mi45LTM4IDEwNS40LTYuNi00NS40LTE2LjgtNzQuMi0yOC4zLTc0LjItMTYuMSAwLTI5LjYgNTYuOS0zNC43IDEzNi4yLTkuNC00MC44LTIzLjItNjYuMy0zOC4zLTY2LjNzLTI4LjggMjUuNS0zOC4zIDY2LjNjLTUuMS03OS4zLTE4LjYtMTM2LjItMzQuNy0xMzYuMi0xMS41IDAtMjEuNyAyOC44LTI4LjMgNzQuMi02LjYtNjIuNS0yMS4yLTEwNS40LTM3LjgtMTA1LjQtMTQgMC0yNi41IDMwLjQtMzQuMiA3Ny00LjgtMjctMTEuNy00NC4xLTE5LjQtNDQuMS0xNC4zIDAtMjYgNTkuMi0yNiAxMzIuMVM0OSAzMDUuMiA2My4zIDMwNS4yYzUuOSAwIDExLjUtOS45IDE1LjgtMjYuOCA2LjkgNjEuNyAyMS4yIDEwNC4xIDM4IDEwNC4xIDEzIDAgMjQuNS0yNS41IDMyLjEtNjUuNiA1LjQgNzYuMyAxOC42IDEzMC40IDM0LjIgMTMwLjQgOS43IDAgMTguNi0yMS40IDI1LjMtNTYuNCA3LjkgNzIuMiAyNi4zIDEyMi43IDQ3LjcgMTIyLjdzMzkuNS01MC41IDQ3LjctMTIyLjdjNi42IDM1IDE1LjYgNTYuNCAyNS4zIDU2LjQgMTUuNiAwIDI4LjgtNTQuMSAzNC4yLTEzMC40IDcuNyA0MC4xIDE5LjQgNjUuNiAzMi4xIDY1LjYgMTYuNiAwIDMwLjktNDIuMyAzOC0xMDQuMSA0LjMgMTYuOCA5LjcgMjYuOCAxNS44IDI2LjggMTQuMyAwIDI2LTU5LjIgMjYtMTMyLjFTNDYzIDQwLjkgNDQ4LjcgNDAuOXptNDguNSA2MC4yYy04LjIgMC0xNC44IDI2LjUtMTQuOCA1OS4yczYuNiA1OS4yIDE0LjggNTkuMiAxNC44LTI2LjUgMTQuOC01OS4yLTYuNi01OS4yLTE0LjgtNTkuMnoiXX0sSzFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImNyZWF0aXZlLWNvbW1vbnMtc2FtcGxpbmciLGljb246WzUxMiw1MTIsW10sImY0ZjAiLCJNMjU1LjYgOEMzOTcuNCA4IDUwNCAxMTguMSA1MDQgMjU2IDUwNCA0MDMuMSAzODUuNSA1MDQgMjU1LjYgNTA0IDEyMS42IDUwNCA4IDM5NC41IDggMjU2IDggMTIzLjEgMTEyLjcgOCAyNTUuNiA4em0uOCA0NC43Yy0xMTguMiAwLTIwMy43IDk3LjktMjAzLjcgMjAzLjMgMCAxMDkuOCA5MS4yIDIwMi44IDIwMy43IDIwMi44IDEwMy4yIDAgMjAyLjgtODEuMSAyMDIuOC0yMDIuOCAuMS0xMTMuOC05MC4yLTIwMy4zLTIwMi44LTIwMy4zem0zLjYgNTMuMmMyLjgtLjMgMTEuNSAxIDExLjUgMTEuNWw2LjYgMTA3LjIgNC45LTU5LjNjMC02IDQuNy0xMC42IDEwLjYtMTAuNnMxMC42IDQuNyAxMC42IDEwLjZjMCAyLjUtLjUtNS43IDUuNyA4MS41bDUuOC02NC4yYy4zLTIuOSAyLjktOS4zIDEwLjItOS4zIDMuOCAwIDkuOSAyLjMgMTAuNiA4LjlsMTEuNSA5Ni41IDUuMy0xMi44YzEuOC00LjQgNS4yLTYuNiAxMC4yLTYuNmw1OCAwIDAgMjEuMy01MC45IDAtMTguMiA0NC4zYy0zLjkgOS45LTE5LjUgOS4xLTIwLjgtMy4xbC00LTMxLjktNy41IDkyLjZjLS4zIDMtMyA5LjMtMTAuMiA5LjMtMyAwLTkuOC0yLjEtMTAuNi05LjMgMC0xLjkgLjYgNS44LTYuMi03Ny45bC01LjMgNzIuMmMtMS4xIDQuOC00LjggOS4zLTEwLjYgOS4zLTIuOSAwLTkuOC0yLTEwLjYtOS4zIDAtMS45IC41IDYuNy01LjgtODcuN0wyNTUgMzgzLjljMCA2LjMtMy42IDEyLjQtMTAuNiAxMi40LTUuMiAwLTEwLjYtNC4xLTEwLjYtMTJMMjI4IDI5Ni42Yy01LjggOTIuNS01LjMgODQtNS4zIDg1LjktMS4xIDQuOC00LjggOS4zLTEwLjYgOS4zLTMgMC05LjgtMi4xLTEwLjYtOS4zIDAtLjctLjQtMS4xLS40LTIuNmwtNi4yLTg4LjYtNC45IDU2LjdjLS43IDYuNS02LjcgOS4zLTEwLjYgOS4zLTUuOCAwLTkuNi00LjEtMTAuNi04LjlMMTU3LjcgMjcyYy0yIDQtMy41IDguNC0xMS4xIDguNGwtNTEuNCAwIDAtMjEuMyA0NC44IDAgMTMuNy0yNy45YzQuNC05LjkgMTguMi03LjIgMTkuOSAyLjdsMy4xIDIwLjQgOC40LTk3LjljMC02IDQuOC0xMC42IDEwLjYtMTAuNiAuNSAwIDEwLjYtLjIgMTAuNiAxMi40bDQuOSA2OS4xIDYuNi05Mi42YzAtMTAuMSA5LjUtMTAuNiAxMC4yLTEwLjYgLjYgMCAxMC42IC43IDEwLjYgMTAuNmw1LjMgODAuNiA2LjItOTcuOWMuMS0xLjEtLjYtMTAuMyA5LjktMTEuNXoiXX0sSjFyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImplZGktb3JkZXIiLGljb246WzQ0OCw1MTIsW10sImY1MGUiLCJNMzk4LjkgMzczLjZjOTUuOS0xMjIuMSAxNy4yLTIzMy4xIDE3LjItMjMzLjEgNDUuNCA4NS44LTQxLjQgMTcwLjUtNDEuNCAxNzAuNSAxMDUtMTcxLjUtNjAuNS0yNzEuNS02MC41LTI3MS41IDk2LjkgNzIuNy0xMC4xIDE5MC43LTEwLjEgMTkwLjcgODUuOCAxNTguNC02OC42IDIzMC4xLTY4LjYgMjMwLjFzLS40LTE2LjktMi4yLTg1LjdjNC4zIDQuNSAzNC41IDM2LjIgMzQuNSAzNi4ybC0yNC4yLTQ3LjQgNjIuNi05LjEtNjIuNi05LjEgMjAuMi01NS41LTMxLjQgNDUuOWMtMi4yLTg3LjctNy44LTMwNS4xLTcuOS0zMDYuOSAwIDEtNS42IDIxOS03LjkgMzA2LjlsLTMxLjQtNDUuOSAyMC4yIDU1LjUtNjIuNiA5LjEgNjIuNiA5LjEtMjQuMiA0Ny40IDM0LjUtMzYuMmMtMS44IDY4LjgtMi4yIDg1LjctMi4yIDg1LjdTNTkuMSAzODguNiAxNDQuOSAyMzAuMmMwIDAtMTA3LTExOC4xLTEwLjEtMTkwLjcgMCAwLTE2NS41IDk5LjktNjAuNSAyNzEuNSAwIDAtODYuOC04NC44LTQxLjQtMTcwLjUgMCAwLTc4LjcgMTExIDE3LjIgMjMzLjEgMCAwLTI2LjItMTYuMS00OS40LTc3LjcgMCAwIDE2LjkgMTgzLjMgMjIyIDE4NS43bDQuMSAwYzIwNS0yLjQgMjIyLTE4NS43IDIyMi0xODUuNy0yMy42IDYxLjUtNDkuOSA3Ny43LTQ5LjkgNzcuN3oiXX0sZW9yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InItcHJvamVjdCIsaWNvbjpbNTc2LDUxMixbXSwiZjRmNyIsIk01NzguNSAyMjYuNkM1NzguNSAxMTkuMSA0NDguNCAzMiAyODggMzJTLTIuNSAxMTkuMS0yLjUgMjI2LjZjMCA5NS44IDEwMy4zIDE3NS40IDIzOS40IDE5MS41bDAgNjEuOSA5OS4xIDAgMC02MS41YzI0LjMtMi43IDQ3LjYtNy40IDY5LjQtMTMuOWw0MC4xIDc1LjQgMTEyIDAtNjcuNC0xMTMuN2M1NC41LTM1LjQgODguNC04NC45IDg4LjQtMTM5Ljd6TTExMS43IDI0MS4xYzAtNzMuNSA5OC45LTEzMyAyMjAuOC0xMzNzMjExLjkgNDAuNyAyMTEuOSAxMzNjMCA1MC4xLTI2LjUgODUtNzAuMyAxMDYuNC0yLjQtMS42LTQuNy0yLjktNi40LTMuNy0xMC4yLTUuMi0yNy44LTEwLjUtMjcuOC0xMC41czg2LjYtNi40IDg2LjYtOTIuNy05MC42LTg3LjktOTAuNi04Ny45bC0xOTkgMCAwIDIwOC4zYy03NC4xLTIxLjUtMTI1LjItNjcuMS0xMjUuMi0xMTkuOXptMjI1LjEgMzguM2wwLTU1LjZjNTcuOCAwIDg3LjgtNi44IDg3LjggMjcuMyAwIDM2LjUtMzguMiAyOC4zLTg3LjggMjguM3ptLS45IDcyLjVsMjYuNiAwYzEwLjggMCAxOC45IDExLjcgMjQgMTkuMi0xNi4xIDEuOS0zMyAyLjgtNTAuNiAyLjlsMC0yMi4xeiJdfSx0b3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiaW5zdGFsb2QiLGljb246WzUxMiw1MTIsW10sImUwODEiLCJNMTUzLjYgNDgwbDIzMy43IDAgMTE1LjQtMjA0LjItMjk4LjMgNTcuNC01MC44IDE0Ni44ek01MDUgMjQwLjFMMzg3LjQgMzIgMTU1LjkgMzIgMzYwLjUgMjY3LjkgNTA1IDI0MC4xek0xMjQuNiA0OC44TDcuNSAyNTYgMTIzLjUgNDYxLjIgMjI1LjkgMTY1LjYgMTI0LjYgNDguOHoiXX0scm9yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImNhbmFkaWFuLW1hcGxlLWxlYWYiLGljb246WzUxMiw1MTIsW10sImY3ODUiLCJNMzgzLjggMzUxLjdjMi41LTIuNSAxMDUuMi05Mi40IDEwNS4yLTkyLjRsLTE3LjUtNy41Yy0xMC00LjktNy40LTExLjUtNS0xNy40IDIuNC03LjYgMjAuMS02Ny4zIDIwLjEtNjcuM3MtNDcuNyAxMC01Ny43IDEyLjVjLTcuNSAyLjQtMTAtMi41LTEyLjUtNy41cy0xNS0zMi40LTE1LTMyLjQtNTIuNiA1OS45LTU1LjEgNjIuM2MtMTAgNy41LTIwLjEgMC0xNy42LTEwIDAtMTAgMjcuNi0xMjkuNiAyNy42LTEyOS42cy0zMC4xIDE3LjQtNDAuMSAyMi40Yy03LjUgNS0xMi42IDUtMTcuNi01LTUuMS03LjUtNDIuNy03OS44LTQyLjctNzkuOHMtMzcuNSA3Mi4zLTQyLjUgNzkuOGMtNSAxMC0xMCAxMC0xNy42IDUtMTAtNS00MC4xLTIyLjQtNDAuMS0yMi40UzE4My4zIDE4MiAxODMuMyAxOTJjMi41IDEwLTcuNSAxNy41LTE3LjYgMTAtMi41LTIuNS01NS4xLTYyLjMtNTUuMS02Mi4zcy0xMi41IDI3LjMtMTUgMzIuMy01IDkuOS0xMi41IDcuNUM3MyAxNzcgMjUuNCAxNjcgMjUuNCAxNjdTNDMgMjI2LjcgNDUuNSAyMzQuM2MyLjQgNiA1IDEyLjUtNSAxNy40TDIzIDI1OS4zczEwMi42IDg5LjkgMTA1LjIgOTIuNGM1LjEgNSAxMCA3LjUgNS4xIDIyLjUtNS4xIDE1LTEwLjEgMzUuMS0xMC4xIDM1LjFzOTUuMi0yMC4xIDEwNS4zLTIyLjZjOC43LS45IDE4LjMgMi41IDE4LjMgMTIuNVMyNDEgNTEyIDI0MSA1MTJsMzAgMHMtNS44LTEwMi43LTUuOC0xMTIuOCA5LjUtMTMuNCAxOC40LTEyLjVjMTAgMi41IDEwNS4yIDIyLjYgMTA1LjIgMjIuNnMtNS0yMC4xLTEwLTM1LjEgMC0xNy41IDUtMjIuNXoiXX0sYW9yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImV0aGVyZXVtIixpY29uOlszMjAsNTEyLFtdLCJmNDJlIiwiTTMxMS45IDI2MC44TDE2MCAzNTMuNiA4IDI2MC44IDE2MCAwIDMxMS45IDI2MC44ek0xNjAgMzgzLjRMOCAyOTAuNiAxNjAgNTEyIDMxMiAyOTAuNiAxNjAgMzgzLjR6Il19LGlvcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJob3V6eiIsaWNvbjpbNDQ4LDUxMixbXSwiZjI3YyIsIk0yNzYgMzMwLjdsLTEwNC42IDAgMCAxNDkuMy0xNTQuMyAwIDAtNDQ4IDEwOS41IDAgMCAxMDQuNSAzMDUuMSA4NS42IDAgMjU3LjktMTU1LjcgMCAwLTE0OS4zeiJdfSxvb3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidmliZXIiLGljb246WzUxMiw1MTIsW10sImY0MDkiLCJNNDQ0LjMgNDkuOWMtMTIuNy0xMS43LTY0LjEtNDktMTc4LjctNDkuNSAwIDAtMTM1LjEtOC4xLTIwMC45IDUyLjMtMzYuNiAzNi42LTQ5LjUgOTAuMy01MC45IDE1Ni44cy0zLjEgMTkxLjEgMTE3IDIyNC45bC4xIDAtLjEgNTEuNnMtLjggMjAuOSAxMyAyNS4xYzE2LjYgNS4yIDI2LjQtMTAuNyA0Mi4zLTI3LjggOC43LTkuNCAyMC43LTIzLjIgMjkuOC0zMy43IDgyLjIgNi45IDE0NS4zLTguOSAxNTIuNS0xMS4yIDE2LjYtNS40IDExMC41LTE3LjQgMTI1LjctMTQyIDE1LjgtMTI4LjYtNy42LTIwOS44LTQ5LjgtMjQ2LjV6TTQ1OC4yIDI4N2MtMTIuOSAxMDQtODkgMTEwLjYtMTAzIDExNS4xLTYgMS45LTYxLjUgMTUuNy0xMzEuMiAxMS4yIDAgMC01MiA2Mi43LTY4LjIgNzktNS4zIDUuMy0xMS4xIDQuOC0xMS01LjcgMC02LjkgLjQtODUuNyAuNC04NS43bDAgMEM0My40IDM3Mi43IDQ5LjQgMjY2LjYgNTAuNSAyMTEuMXMxMS42LTEwMSA0Mi42LTEzMS42YzU1LjctNTAuNSAxNzAuNC00MyAxNzAuNC00MyA5Ni45IC40IDE0My4zIDI5LjYgMTU0LjEgMzkuNCAzNS43IDMwLjYgNTMuOSAxMDMuOCA0MC42IDIxMS4xem0tMTM5LTgwLjhjLjQgOC42LTEyLjUgOS4yLTEyLjkgLjYtMS4xLTIyLTExLjQtMzIuNy0zMi42LTMzLjktOC42LS41LTcuOC0xMy40IC43LTEyLjkgMjcuOSAxLjUgNDMuNCAxNy41IDQ0LjggNDYuMnptMjAuMyAxMS4zYzEtNDIuNC0yNS41LTc1LjYtNzUuOC03OS4zLTguNS0uNi03LjYtMTMuNSAuOS0xMi45IDU4IDQuMiA4OC45IDQ0LjEgODcuOCA5Mi41LS4xIDguNi0xMy4xIDguMi0xMi45LS4zem00NyAxMy40Yy4xIDguNi0xMi45IDguNy0xMi45IC4xLS42LTgxLjUtNTQuOS0xMjUuOS0xMjAuOC0xMjYuNC04LjUtLjEtOC41LTEyLjkgMC0xMi45IDczLjcgLjUgMTMzIDUxLjQgMTMzLjcgMTM5LjJ6TTM3NS4yIDMyOWwwIC4yYy0xMC44IDE5LTMxIDQwLTUxLjggMzMuM2wtLjItLjNjLTIxLjEtNS45LTcwLjgtMzEuNS0xMDIuMi01Ni41LTE2LjItMTIuOC0zMS0yNy45LTQyLjQtNDIuNC0xMC4zLTEyLjktMjAuNy0yOC4yLTMwLjgtNDYuNi0yMS4zLTM4LjUtMjYtNTUuNy0yNi01NS43LTYuNy0yMC44IDE0LjItNDEgMzMuMy01MS44bC4yIDBjOS4yLTQuOCAxOC0zLjIgMjMuOSAzLjkgMCAwIDEyLjQgMTQuOCAxNy43IDIyLjEgNSA2LjggMTEuNyAxNy43IDE1LjIgMjMuOCA2LjEgMTAuOSAyLjMgMjItMy43IDI2LjZsLTEyIDkuNmMtNi4xIDQuOS01LjMgMTQtNS4zIDE0czE3LjggNjcuMyA4NC4zIDg0LjNjMCAwIDkuMSAuOCAxNC01LjNsOS42LTEyYzQuNi02IDE1LjctOS44IDI2LjYtMy43IDE0LjcgOC4zIDMzLjQgMjEuMiA0NS44IDMyLjkgNyA1LjcgOC42IDE0LjQgMy44IDIzLjZ6Il19LEprZT17cHJlZml4OiJmYWIiLGljb25OYW1lOiJraWNrc3RhcnRlciIsaWNvbjpbNDQ4LDUxMixbInNxdWFyZS1raWNrc3RhcnRlciJdLCJmM2JiIiwiTTY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzIwIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zMjBjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzJ6TTMyMC44IDIzM2wtMjMuMyAyMy4xIDIzLjMgMjIuOWMyNC4xIDIzLjkgMjQuMSA2MyAwIDg2LjlzLTYzLjQgMjMuOS04Ny42IDBsLTguNS04LjRjLTExLjMgMTYtMjkuNyAyNi41LTUwLjkgMjYuNS0zNC4xIDAtNjEuOS0yNy41LTYxLjktNjEuNGwwLTEzMy4yYzAtMzMuOCAyNy43LTYxLjQgNjEuOS02MS40IDIxLjEgMCAzOS42IDEwLjUgNTAuOSAyNi41bDguNS04LjRjMjQuMS0yMy45IDYzLjQtMjMuOSA4Ny42IDBzMjQuMSA2MyAwIDg2Ljl6Il19LG5vcj1Ka2Usc29yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InNwb3RpZnkiLGljb246WzUxMiw1MTIsW10sImYxYmMiLCJNMjU2IDhhMjQ4IDI0OCAwIDEgMCAwIDQ5NiAyNDggMjQ4IDAgMSAwIDAtNDk2ek0zNTYuNyAzNzIuOWMtNC4yIDAtNi44LTEuMy0xMC43LTMuNi02Mi40LTM3LjYtMTM1LTM5LjItMjA2LjctMjQuNS0zLjkgMS05IDIuNi0xMS45IDIuNi05LjcgMC0xNS44LTcuNy0xNS44LTE1LjggMC0xMC4zIDYuMS0xNS4yIDEzLjYtMTYuOCA4MS45LTE4LjEgMTY1LjYtMTYuNSAyMzcgMjYuMiA2LjEgMy45IDkuNyA3LjQgOS43IDE2LjVzLTcuMSAxNS40LTE1LjIgMTUuNHptMjYuOS02NS42Yy01LjIgMC04LjctMi4zLTEyLjMtNC4yLTYyLjUtMzctMTU1LjctNTEuOS0yMzguNi0yOS40LTQuOCAxLjMtNy40IDIuNi0xMS45IDIuNi0xMC43IDAtMTkuNC04LjctMTkuNC0xOS40czUuMi0xNy44IDE1LjUtMjAuN2MyNy44LTcuOCA1Ni4yLTEzLjYgOTcuOC0xMy42IDY0LjkgMCAxMjcuNiAxNi4xIDE3NyA0NS41IDguMSA0LjggMTEuMyAxMSAxMS4zIDE5LjctLjEgMTAuOC04LjUgMTkuNS0xOS40IDE5LjV6bTMxLTc2LjJjLTUuMiAwLTguNC0xLjMtMTIuOS0zLjktNzEuMi00Mi41LTE5OC41LTUyLjctMjgwLjktMjkuNy0zLjYgMS04LjEgMi42LTEyLjkgMi42LTEzLjIgMC0yMy4zLTEwLjMtMjMuMy0yMy42IDAtMTMuNiA4LjQtMjEuMyAxNy40LTIzLjkgMzUuMi0xMC4zIDc0LjYtMTUuMiAxMTcuNS0xNS4yIDczIDAgMTQ5LjUgMTUuMiAyMDUuNCA0Ny44IDcuOCA0LjUgMTIuOSAxMC43IDEyLjkgMjIuNiAwIDEzLjYtMTEgMjMuMy0yMy4yIDIzLjN6Il19LGxvcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJsZWFucHViIixpY29uOls1NzYsNTEyLFtdLCJmMjEyIiwiTTM4Ni42IDExMS41bDE1LjEgMjQ5LTExLS4zYy0zNi4yLS44LTcxLjYgOC44LTEwMi43IDI4LTMxLTE5LjItNjYuNC0yOC0xMDIuNy0yOC00NS42IDAtODIuMSAxMC43LTEyMy41IDI3LjdMOTMuMiAxMjkuNmMyOC41LTExLjggNjEuNS0xOC4xIDkyLjItMTguMSA0MS4yIDAgNzMuOCAxMy4yIDEwMi43IDQyLjUgMjcuNy0yOC4zIDU5LTQxLjcgOTguNS00Mi41ek01NjkuMiA0NDhjLTI1LjUgMC00Ny41LTUuMi03MC41LTE1LjYtMzQuMy0xNS42LTcwLTI1LTEwNy45LTI1LTM5IDAtNzQuOSAxMi45LTEwMi43IDQwLjYtMjcuNy0yNy43LTYzLjctNDAuNi0xMDIuNy00MC42LTM3LjkgMC03My42IDkuMy0xMDcuOSAyNS0yMi4yIDkuOS00NC43IDE1LjYtNjkuMiAxNS42TDcgNDQ4IDQ5LjYgOTguOWMzOS4zLTIyLjIgODctMzQuOSAxMzIuMy0zNC45IDM3LjEgMCA3NS4yIDcuNyAxMDYuMiAyOS4xIDMxLTIxLjQgNjkuMi0yOS4xIDEwNi4yLTI5LjEgNDUuMyAwIDkzIDEyLjYgMTMyLjMgMzQuOUw1NjkuMiA0NDh6bS00My40LTQ0LjdMNDkxLjggMTIzYy0zMC43LTE0LTY3LjItMjEuNC0xMDEtMjEuNC0zOC40IDAtNzQuNCAxMi4xLTEwMi43IDM4LjctMjguMy0yNi42LTY0LjItMzguNy0xMDIuNy0zOC43LTMzLjggMC03MC4zIDcuNC0xMDEgMjEuNGwtMzQgMjgwLjJjNDcuMi0xOS41IDgyLjktMzMuNSAxMzUtMzMuNSAzNy42IDAgNzAuOCA5LjYgMTAyLjcgMjkuNiAzMS44LTIwIDY1LjEtMjkuNiAxMDIuNy0yOS42IDUyLjIgMCA4Ny44IDE0IDEzNSAzMy41eiJdfSxjb3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiamF2YSIsaWNvbjpbMzg0LDUxMixbXSwiZjRlNCIsIk0yNzcuOCAzMTIuOWM5LjgtNi43IDIzLjQtMTIuNSAyMy40LTEyLjVzLTM4LjcgNy03Ny4yIDEwLjJjLTQ3LjEgMy45LTk3LjcgNC43LTEyMy4xIDEuMy02MC4xLTggMzMtMzAuMSAzMy0zMC4xcy0zNi4xLTIuNC04MC42IDE5Yy01Mi41IDI1LjQgMTMwIDM3IDIyNC41IDEyLjF6bS04NS40LTMyLjFjLTE5LTQyLjctODMuMS04MC4yIDAtMTQ1LjggMTAzLjctODEuOCA1MC41LTEzNSA1MC41LTEzNSAyMS41IDg0LjUtNzUuNiAxMTAuMS0xMTAuNyAxNjIuNi0yMy45IDM1LjkgMTEuNyA3NC40IDYwLjIgMTE4LjJ6TTMwNyAxMDQuNmMuMSAwLTE3NS4yIDQzLjgtOTEuNSAxNDAuMiAyNC43IDI4LjQtNi41IDU0LTYuNSA1NHM2Mi43LTMyLjQgMzMuOS03Mi45QzIxNiAxODguMSAxOTUuNCAxNjkuMyAzMDcgMTA0LjZ6bS02LjEgMjcwLjVjLS41IDEtMS4yIDEuOC0yIDIuNiAxMjguMy0zMy43IDgxLjEtMTE4LjkgMTkuOC05Ny4zLTMuMyAxLjItNi4yIDMuNC04LjIgNi4zIDMuNi0xLjMgNy4zLTIuMyAxMS0zIDMxLTYuNSA3NS41IDQxLjUtMjAuNiA5MS40ek0zNDggNDM3LjRzMTQuNSAxMS45LTE1LjkgMjEuMmMtNTcuOSAxNy41LTI0MC44IDIyLjgtMjkxLjYgLjctMTguMy03LjkgMTYtMTkgMjYuOC0yMS4zIDExLjItMi40IDE3LjctMiAxNy43LTItMjAuMy0xNC4zLTEzMS4zIDI4LjEtNTYuNCA0MC4yIDIwNC4yIDMzLjIgMzcyLjQtMTQuOSAzMTkuNC0zOC44ek0xMjQuNSAzOTZjLTc4LjcgMjIgNDcuOSA2Ny40IDE0OC4xIDI0LjUtOS44LTMuOC0xOS4yLTguNC0yOC4yLTEzLjgtNDQuNyA4LjUtNjUuNCA5LjEtMTA2IDQuNS0zMy41LTMuOC0xMy45LTE1LjItMTMuOS0xNS4yem0xNzkuOCA5Ny4yYy03OC43IDE0LjgtMTc1LjggMTMuMS0yMzMuMyAzLjYgMC0uMSAxMS44IDkuNyA3Mi40IDEzLjYgOTIuMiA1LjkgMjMzLjgtMy4zIDIzNy4xLTQ2LjkgMCAwLTYuNCAxNi41LTc2LjIgMjkuN3pNMjYwLjcgMzUzYy01OS4yIDExLjQtOTMuNSAxMS4xLTEzNi44IDYuNi0zMy41LTMuNS0xMS42LTE5LjctMTEuNi0xOS43LTg2LjggMjguOCA0OC4yIDYxLjQgMTY5LjUgMjUuOS03LjgtMi44LTE1LTcuMS0yMS4xLTEyLjh6Il19LGRvcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJuZmMtc3ltYm9sIixpY29uOls1MTIsNTEyLFtdLCJlNTMxIiwiTTM2MC45IDMyLjRjNy43LTEuMyAxNS43IC41IDIxLjIgNSA4NC4xIDU4LjcgMTI5LjkgMTM2LjMgMTI5LjkgMjE3LjcgMCA4My4xLTQ1LjggMTYwLjgtMTI5LjkgMjE5LjUtNC44IDQtMTEuNyA1LjktMTguNiA1LjMtNy0uNi0xMy41LTMuNi0xOC40LTguNUwxNjEuNyAyODguN2MtNS42LTUuNS04LjctMTMtOS42LTIwLjkgMC03LjggNC0xNS4zIDkuNS0yMC45IDUuNi01LjUgMTMuMS04LjcgMjAuOS04LjcgNy45IDAgMTUuNCAzLjEgMjAuOSA4LjZMMzY4LjUgNDExLjJjNTQuNi00NC43IDg0LjMtOTkuMiA4NC4zLTE1Ni4xIDAtNjEuNi0zNi45LTEyMi4yLTEwMy45LTE2OS4zLTYuNC00LjUtMTAuOC0xMS40LTEyLjEtMTkuMS0xLjQtNy43IC40LTE1LjcgNS0yMi4xIDQuNS02LjQgMTEuNC0xMC44IDE5LjEtMTIuMXptLTIwNiA0NDcuMmMtNy43IDEuMy0xNS42LS41LTIyLjEtNS04My4xLTU4LjctMTI5LTEzNi40LTEyOS0yMTkuNSAwLTgxLjQgNDUuOC0xNTkgMTI5LTIxNy43IDUuNy00IDEyLjYtNS45IDE5LjYtNS4zIDYuOSAuNiAxMy40IDMuNiAxOC4zIDguNUwzNTQuMSAyMjMuM2M1LjYgNS41IDguNyAxMyA4LjcgMjAuOSAuMSA2LjktMyAxNS4zLTguNiAyMC45LTUuNSA1LjUtMTMgOC43LTIwLjkgOC43LTcuOCAwLTE2LjItMy4xLTIwLjktOC42TDE0Ny4zIDEwMC43Yy01NC42IDQ1LjItODQuMyA5OS4yLTg0LjMgMTU0LjQgMCA2My40IDM2LjkgMTI0IDEwMy4xIDE3MS4xIDcuMyA0LjYgMTEuNiAxMS40IDEzIDE5LjIgMS4zIDcuNy0uNSAxNS43LTUgMjIuMXMtMTEuNCAxMC43LTE5LjIgMTIuMXoiXX0sdW9yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6IndvZHUiLGljb246WzY0MCw1MTIsW10sImUwODgiLCJNMTc4LjQgMzM5LjdsLTM3LjMgMC0yOC45LTExNi4yLS41IDAtMjguNSAxMTYuMi0zOCAwLTQ1LjItMTcwLjggMzcuNSAwIDI3IDExNi4yIC41IDAgMjkuNy0xMTYuMiAzNS4yIDAgMjkuMiAxMTcuNyAuNSAwIDI4LTExNy43IDM2LjggMC00NS45IDE3MC44em05My0xMjdjMzkgMCA2NC4xIDI1LjggNjQuMSA2NS4zIDAgMzkuMi0yNS4xIDY1LTY0LjEgNjUtMzguNyAwLTYzLjktMjUuOC02My45LTY1IDAtMzkuNSAyNS4xLTY1LjMgNjMuOS02NS4zem0wIDEwNC44YzIzLjIgMCAzMC4xLTE5LjkgMzAuMS0zOS41IDAtMTkuOS02LjktMzkuNy0zMC4xLTM5LjctMjcuNyAwLTI5LjkgMTkuOS0yOS45IDM5LjcgMCAxOS42IDYuOSAzOS41IDI5LjkgMzkuNXptMTYzLjcgNi41bC0uNSAwYy03LjkgMTMuNC0yMS44IDE5LjEtMzcuNSAxOS4xLTM3LjMgMC01NS41LTMyLTU1LjUtNjYuMiAwLTMzLjIgMTguNC02NC4xIDU0LjgtNjQuMSAxNC42IDAgMjguOSA2LjIgMzYuOCAxOC40bC4yIDAgMC02Mi4yIDM0IDAgMCAxNzAuOC0zMi4zIDAgMC0xNS44em0tMjkuNy04NS42Yy0yMi4yIDAtMjkuOSAxOS4xLTI5LjkgMzkuNSAwIDE5LjQgOC44IDM5LjcgMjkuOSAzOS43IDIyLjUgMCAyOS4yLTE5LjYgMjkuMi0zOS45IDAtMjAuMS03LjItMzkuMi0yOS4yLTM5LjJ6TTU5MyAzMzkuN2wtMzIuMyAwIDAtMTcuMi0uNyAwYy04LjYgMTMuOS0yMy40IDIwLjYtMzcuOCAyMC42LTM2LjEgMC00NS4yLTIwLjMtNDUuMi01MC45bDAtNzYuMSAzNCAwIDAgNjkuOGMwIDIwLjMgNiAzMC40IDIxLjggMzAuNCAxOC40IDAgMjYuMy0xMC4zIDI2LjMtMzUuNGwwLTY0LjggMzQgMCAwIDEyMy42em05LjUtMzYuOGwzNy41IDAgMCAzNi44LTM3LjUgMCAwLTM2Ljh6Il19LGVTZT17cHJlZml4OiJmYWIiLGljb25OYW1lOiJzcXVhcmUtc3RlYW0iLGljb246WzQ0OCw1MTIsWyJzdGVhbS1zcXVhcmUiXSwiZjFiNyIsIk0xNjUuNiAzMDkuMWMxOC42IDcuNyAyNy4zIDI4LjkgMTkuNiA0Ny40cy0yOSAyNy4yLTQ3LjYgMTkuNGwtMjguNS0xMS44YzUgMTAuNiAxMy44IDE5LjQgMjUuNCAyNC4yIDI1LjIgMTAuNSA1NC4xLTEuNCA2NC42LTI2LjUgNS4xLTEyLjEgNS4xLTI1LjUgLjEtMzcuNy01LjEtMTIuMS0xNC41LTIxLjYtMjYuNy0yNi43LTEyLjEtNS0yNS00LjgtMzYuNC0uNWwyOS41IDEyLjJ6TTQ0OCA5NmMwLTM1LjMtMjguNy02NC02NC02NEw2NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2bDAgMTQ0LjcgMTE2LjYgNDguMWMxMi04LjIgMjYuMi0xMi4xIDQwLjctMTEuM2w1NS40LTgwLjIgMC0xLjFjMC00OC4yIDM5LjMtODcuNSA4Ny42LTg3LjVzODcuNiAzOS4zIDg3LjYgODcuNWMwIDQ5LjItNDAuOSA4OC43LTg5LjYgODcuNWwtNzkgNTYuM2MxLjYgMzguNS0yOS4xIDY4LjgtNjUuNyA2OC44LTMxLjggMC01OC41LTIyLjctNjQuNS01Mi43TDAgMzE5LjIgMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzIwIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zMjB6TTI0MS45IDE5Ni4yYTU4LjQgNTguNCAwIDEgMCAxMTYuOCAwIDU4LjQgNTguNCAwIDEgMCAtMTE2LjggMHptMTAyLjQtLjFhNDMuOSA0My45IDAgMSAxIC04Ny44IDAgNDMuOSA0My45IDAgMSAxIDg3LjggMHoiXX0scG9yPWVTZSxob3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiY3JlYXRpdmUtY29tbW9ucy1uYy1ldSIsaWNvbjpbNTEyLDUxMixbXSwiZjRlOSIsIk0yNTUuNyA4QzExMS42IDggOCAxMjQuOCA4IDI1NiA4IDM5Mi4zIDExOS43IDUwNCAyNTUuNyA1MDQgMzg1LjkgNTA0IDUwNCA0MDMuMSA1MDQgMjU2IDUwNCAxMTcgMzk2LjQgOCAyNTUuNyA4em0uNiA0NTAuN2MtMTEyIDAtMjAzLjYtOTIuNS0yMDMuNi0yMDIuNyAwLTIzLjIgMy43LTQ1LjIgMTAuOS02Nmw2NS43IDI5LjEtNC43IDAgMCAyOS41IDIzLjMgMGMwIDYuMi0uNCAzLjItLjQgMTkuNWwtMjIuOCAwIDAgMjkuNSAyNyAwYzExLjQgNjcgNjcuMiAxMDEuMyAxMjQuNiAxMDEuMyAyNi42IDAgNTAuNi03LjkgNjQuOC0xNS44bC0xMC00Ni4xYy04LjcgNC42LTI4LjIgMTAuOC00Ny4zIDEwLjgtMjguMiAwLTU4LjEtMTAuOS02Ny4zLTUwLjJsOTAuMyAwIDEyOC4zIDU2LjhjLTEuNSAyLjEtNTYuMiAxMDQuMy0xNzguOCAxMDQuM3pNMjM5LjYgMjY4LjFsLS41LS40IC45IC40LS40IDB6bTc3LjItMTkuNWwzLjcgMCAwLTI5LjUtNzAuMyAwLTI4LjYtMTIuNmMyLjUtNS41IDUuNC0xMC41IDguOC0xNC4zIDEyLjktMTUuOCAzMS4xLTIyLjQgNTEuMS0yMi40IDE4LjMgMCAzNS4zIDUuNCA0Ni4xIDEwbDExLjYtNDcuM2MtMTUtNi42LTM3LTEyLjQtNjIuMy0xMi40LTM5IDAtNzIuMiAxNS44LTk1LjkgNDIuMy01LjMgNi4xLTkuOCAxMi45LTEzLjkgMjAuMUw4NS41IDE0Ni40YzY0LjYtOTYuOCAxNTcuNy05My42IDE3MC43LTkzLjYgMTEzIDAgMjAzIDkwLjIgMjAzIDIwMy40IDAgMTguNy0yLjEgMzYuMy02LjMgNTIuOUwzMTYuOCAyNDguNnoiXX0sbW9yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Im5wbSIsaWNvbjpbNTc2LDUxMixbXSwiZjNkNCIsIk0yODggMjg4bC0zMiAwIDAtNjQgMzIgMCAwIDY0ek01NzYgMTYwbDAgMTkyLTI4OCAwIDAgMzItMTI4IDAgMC0zMi0xNjAgMCAwLTE5MiA1NzYgMHpNMTYwIDE5MmwtMTI4IDAgMCAxMjggNjQgMCAwLTk2IDMyIDAgMCA5NiAzMiAwIDAtMTI4em0xNjAgMGwtMTI4IDAgMCAxNjAgNjQgMCAwLTMyIDY0IDAgMC0xMjh6bTIyNCAwbC0xOTIgMCAwIDEyOCA2NCAwIDAtOTYgMzIgMCAwIDk2IDMyIDAgMC05NiAzMiAwIDAgOTYgMzIgMCAwLTEyOHoiXX0sZ29yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImNsb3Vkc2NhbGUiLGljb246WzQ0OCw1MTIsW10sImYzODMiLCJNMzE4LjEgMTU0bC05LjQgNy42Yy0yMi41LTE5LjMtNTEuNS0zMy42LTgzLjMtMzMuNi03MS42IDAtMTI5LjQgNjAuOC0xMjkuNCAxMzIuMyAwIDYuNiAuNCAxMy4xIDEuNCAxOS40LTItNTYgNDEuOC05Ny40IDkyLjYtOTcuNCAyNC4yIDAgNDYuMiA5LjQgNjIuNiAyNC43bC0yNS4yIDIwLjRjLTguMy0uOS0xNi44IDEuOC0yMy4xIDguMS0xMS4xIDExLTExLjEgMjguOSAwIDQwIDExLjEgMTEgMjguOSAxMSA0MCAwIDYuMy02LjMgOS0xNC45IDguMS0yMy4xbDc1LjItODguOGM2LjMtNi41LTMuMy0xNS45LTkuNS05LjZ6TTIxMy43IDI0Ni41YTE0IDE0IDAgMSAxIDIwLjYgMTkgMTQgMTQgMCAxIDEgLTIwLjYtMTl6TTIyNCAzMmEyMjQgMjI0IDAgMSAwIDAgNDQ4IDIyNCAyMjQgMCAxIDAgMC00NDh6bTAgNjRhMTYwIDE2MCAwIDEgMSAwIDMyMCAxNjAgMTYwIDAgMSAxIDAtMzIweiJdfSx4b3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidGhlbWVjbyIsaWNvbjpbNDQ4LDUxMixbXSwiZjVjNiIsIk0yMDIuOSA4LjRjOS45LTUuNyAyNi01LjggMzYtLjJMNDMwIDExNS45YzEwIDUuNiAxOCAxOS40IDE4IDMwLjlMNDQ4IDM2NGMwIDExLjQtOC4xIDI1LjMtMTggMzFMMjM4LjggNTAzLjdjLTkuOSA1LjctMjYgNS42LTM1LjgtLjJMMTcuOSAzOTUuMUM4IDM4OS4zIDAgMzc1LjQgMCAzNjRMMCAxNDYuN2MwLTExLjQgOC0yNS40IDE3LjktMzEuMUwyMDIuOSA4LjR6TTEyNS41IDIwOC4zYy0xNS45IDAtMzEuOSAuMS00Ny44IC4xbDAgMTAxLjQgMTkuMSAwIDAtMjkuOCAyOC43IDBjNDkuNyAwIDQ5LjYtNzEuNyAwLTcxLjd6TTI2NS42IDMwOC42bC0zMC43LTM0LjZjMzctNy41IDM0LjgtNjUuMi0xMC45LTY1LjUtMTYuMSAwLTMyLjItLjEtNDguMy0uMWwwIDEwMS42IDE5LjEgMCAwLTMzLjkgMTguNCAwIDI5LjYgMzMuOSAyMi44IDAgMC0xLjN6bS00MS42LTgyLjNjMjMuMyAwIDIzLjMgMzIuNSAwIDMyLjVsLTI5LjEgMCAwLTMyLjUgMjkuMSAwem0tOTUuNi0xLjZjMjEuMiAwIDIxLjEgMzguOSAwIDM4LjlsLTMyLjMgMCAwLTM4LjggMzIuMyAwem0xOTIuNi0xOC4yYy02OC41IDAtNzEgMTA1LjggMCAxMDUuOCA2OS41IDAgNjkuNC0xMDUuOCAwLTEwNS44em0wIDE3LjRjNDQuMSAwIDQ0LjggNzAuOSAwIDcwLjlzLTQ0LjQtNzAuOSAwLTcwLjl6Il19LGJvcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJnb29nbGUtcGxheSIsaWNvbjpbNDQ4LDUxMixbXSwiZjNhYiIsIk0yOTMuNiAyMzQuM0w3Mi45IDEzIDM1My43IDE3NC4yIDI5My42IDIzNC4zek0xNS4zIDBDMi4zIDYuOC02LjQgMTkuMi02LjQgMzUuM2wwIDQ0MS4zYzAgMTYuMSA4LjcgMjguNSAyMS43IDM1LjNMMjcxLjkgMjU1LjkgMTUuMyAwek00NDAuNSAyMjUuNmwtNTguOS0zNC4xLTY1LjcgNjQuNSA2NS43IDY0LjUgNjAuMS0zNC4xYzE4LTE0LjMgMTgtNDYuNS0xLjItNjAuOHpNNzIuOSA0OTlMMzUzLjcgMzM3LjggMjkzLjYgMjc3LjcgNzIuOSA0OTl6Il19LHZvcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJrb3J2dWUiLGljb246WzQ0OCw1MTIsW10sImY0MmYiLCJNMzg3LjYgMzRsLTMyNyAwQzI3LjkgMzQgMS4xIDYwLjggMS4xIDkzLjVsMCAzMjcuMWMwIDMyLjYgMjYuOCA1OS40IDU5LjUgNTkuNGwzMjcuMSAwYzMzIDAgNTkuNS0yNi44IDU5LjUtNTkuNWwwLTMyN0M0NDcuMSA2MC44IDQyMC4zIDM0IDM4Ny42IDM0ek04OC4yIDEyMC44bDk2IDAgMCAxMTYgNjEuOC0xMTYgMTEwLjkgMC04MS4yIDEzMi0xODcuNSAwIDAtMTMyek0yNTAgMzkyLjlsLTY1LjctMTEzLjYgMCAxMTMuNi05NiAwIDAtMTMwLjggMTkxLjUgMCA4OC42IDEzMC44LTExOC40IDB6Il19LHlvcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJ3M2MiLGljb246WzY0MCw1MTIsW10sImU3ZGUiLCJNMTA1LjIgMzA1LjNsMzAuOS0xMDQuN2M3LjktMjYuNyA4LjYtNDAuNiAuMi02OC44bC0xMC4xLTMzLjkgNDQuMSAwIDYxIDIwNy40IDQ1LjctMTU1LjVjMTMuMy00NS4zIDIxLjEtNTEuOSA1OS40LTUxLjlsMTMyLjggMGMtMjQuMiA0Mi45LTQ5LjMgODUuMi03My45IDEyNy45IDIuNiAuOCA1LjIgMS44IDcuNyAyLjggMTcuMyA3LjEgMzIuMiAxOS40IDQyIDM1LjUgMTEuMiAxOC41IDE2LjggNDAuMiAxNi44IDY1LjIgMCAzMC44LTguMiA1Ni44LTI0LjYgNzcuOC0xNC41IDE4LjYtMzUgMjkuNS01OC4yIDMxLjIgMCAuMy01LjIgLjQtNS44IC40LTM5LjctLjEtNzAuOC0zMi4xLTgzLjEtNjguN2w0Mi45IDBjMy41IDUuMyA2LjggMTAuNyAxMS4yIDE1LjUgOC4xIDcuMyAxOC41IDEwLjkgMjkuMyAxMS4xIDEzLjEgMCAyMy4zLTkuMSAyOS45LTE5LjggOC4xLTEzLjIgMTIuMi0yOSAxMi4yLTQ3LjUgMC0xMy4xLTEuOC0yNC4zLTUuMy0zMy42LS45LTIuMy0xLjktNC41LTMtNi42LTEuNC0yLjYtMi45LTUuMS00LjctNy40LTEwLjEtMTMuMi0yOS4zLTE5LjctNDcuNS0xOS44bC0yOC4yIDAgNzAuMy0xMjItMzUuNiAwYy00My4xIDAtMzUuOS01LjQtNTAuNCA0My4zbC03NS43IDI1NS4zLTQuMiAwLTYzLjEtMjExLjEtNjMuMSAyMTEuMS00LjIgMC0xMDEtMzQwLjcgNDQuMiAwIDYxIDIwNy40ek00NjcgMzM1LjdjLjMgLjYgMTEuMyAyMC4zIDE4LjMgMzAuMyA3LjEgMTAuMSAxOS44IDIwLjkgMjQuOCAyNC42czE5LjEgMTIuNSAzNC4zIDEzLjljMTUuMiAxLjUgMjMuMyAuMiAzOC43LTYuNiAxNS40LTYuOCAyNy45LTIwLjQgMzQuOS0yOC4xIDYuOS03LjYgMTcuOS0yNy4zIDE4LjItMjcuN2wzLjMgMTYuOGMxLjcgOS0xIDIzLjctNC4xIDMwLTQuMyA4LjYtNy42IDEzLjUtMTQgMjAuMy02LjEgNi41LTE2LjcgMTMuNS0yMS4zIDE2LjQtNC42IDIuOS0yMy4xIDE1LjEtNTAuMSAxMC4zcy00NC43LTI1LjktNTMuOS0zOC4yYy05LjgtMTMuMi0xNi43LTI4LjMtMTktMzMuMi0zLjgtOC40LTkuOS0yOC4yLTEwLjEtMjguOHptMTY5LjctMjE4YzMuMyAyMC4zLS4xIDI4LjctOS4xIDQ2bC0xMi43IDI0LjJjLS4zLS42LTEwLTIwLjctMjUuOS0zMS45LTEzLjYtOS42LTIyLjUtMTEuNy0zNi4zLTguOC0xNy44IDMuNy0zOCAyNS00Ni44IDUxLjItMTAuNSAzMS40LTEwLjcgNDYuNi0xMSA2MC42LS42IDIyLjQgMi45IDM1LjYgMi45IDM1LjZzLTE1LjQtMjguNS0xNS4yLTcwLjFjLjEtMjkuNyA0LjgtNTYuNyAxOC41LTgzLjMgMTIuMS0yMy40IDMwLjEtMzcuNCA0Ni4xLTM5LjEgMTYuNS0xLjcgMjkuNiA2LjMgMzkuNyAxNC45IDEwLjYgOSAyMS4zIDI4LjggMjEuMyAyOC44bDI0LjktNDkuOCAzLjYgMjEuOHoiXX0sd29yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImdyYXYiLGljb246WzUxMiw1MTIsW10sImYyZDYiLCJNMzAyLjYgMjEwLjZjNC41IDQuNSA0LjUgMTIuMyAwIDE2LjhsLTEwIDEwYy00LjUgNC45LTEyLjMgNC45LTE3LjEgMGwtMTAuOC0xMC44Yy00LjUtNC45LTQuNS0xMi4zIDAtMTcuMWwxMC0xMGM0LjUtNC41IDEyLjMtNC41IDE3LjEgMGwxMC44IDExLjF6bS0zMS4yLTIwLjNhNy43IDcuNyAwIDEgMCAtMTAuNi0xMSA3LjcgNy43IDAgMSAwIDEwLjYgMTF6bS0yNi44IDUuNWE3LjUgNy41IDAgMSAwIDEwLjcgMTAuNSA3LjUgNy41IDAgMSAwIC0xMC43LTEwLjV6TTMxOS40IDE4MmMtMjAuNS0xNC45LTM0LjktNDQuNi0xMi4zLTcwLjMgMjIuMy0yNS43IDQyLTE3LjggNjEuNyAuOCAxMi4zIDExLjcgMzAuMiAyNS43IDE3LjggNDkuOC0xMi45IDI0LjMtNDYuNiAzNC4zLTY3LjIgMTkuN3ptNDkuMi00NS45Yy05LjItMTAuMy0yNC4xIDcuMS0xNiAxNi42IDcuNiA5LjMgMzMuMSAyLjUgMTYtMTYuNnpNMCAyNTZhMjU2IDI1NiAwIDEgMSA1MTIgMCAyNTYgMjU2IDAgMSAxIC01MTIgMHptNDQzLjcgNDRjMi42LTE2LjYtMjAuOS0xNy4xLTI2LTI2LjUtMTQtMjQuOS0yOC42LTM4LTU2LjMtMzEuNCAxMi04LjMgMjQuMy02LjMgMjQuMy02LjMgLjMtNi42IDAtMTMuNC05LjctMjUuNyA0LTEyLjkgLjMtMjMuMSAuMy0yMy4xIDE2LTguOSAyNy43LTI1LjIgMzAtNDQuNiAzLjctMzItMTkuNC02MS4xLTUxLjQtNjQuOC0yMi44LTIuNi00NS4xIDcuOS01Ni4xIDI2LjUtMjMuOSA0MS40IDEuNCA3My4yIDIzLjEgODQtMTQuOS0xLjQtMzUuNC0xMi4zLTQxLjQtMzUuNC02LjgtMjYuNSAyLjktNTEuNCA5LjItNjMuNCAwIDAtNC41LTYtOC4zLTkuMiAwIDAtMTQuMiAwLTI1LjQgNS41IDEyLjMtMTUuNyAyNi0xNC45IDI2LTE0LjkgMC02LjYtLjYtMTUuNC0zLjctMjIuMy01LjYtMTEuNC0yNC42LTEzLjMtMzIuNyAyLjkgLjEtLjIgLjMtLjQgLjQtLjUtNS4yIDEyLjMtMS4xIDU3LjcgMTcuNCA5MC0yLjYgMS40LTkuNCA2LjMtMTMuNCAxMC4zLTIyLjMgMTAtNTggNjIuMi01OCA2Mi4yLTI5LjEgMTEuMS03OS43IDUyLjUtNzIuOSA4Mi4zIC4zIDMuMSAxLjQgNS43IDMuMSA3LjctMi45IDIuMy01LjcgNS4yLTguNiA4LjYtMTIuMyAxNC4yLTUuNSAzNi4zIDE4LjMgMjUuMiAxNi4zLTcuNCAzMC42LTIwLjkgMzcuNS0zMS40IDAgMC01LjctNS4yLTE2LjgtNC41IDI4LjYtNi44IDM1LjQtOS43IDQ3LjctOS40IDguMyA0IDguMy0zNS40IDguMy0zNS40IDAtMTUuMi0yLjMtMzItMTEuNS00Mi44IDEyLjkgMTIuNiAzMCAzMy44IDI4LjkgNjIuNi0uOCAxOC45LTE1LjcgMjMuNy0xNS43IDIzLjctOS40IDE3LjEtNDQuNiA2OC0zMS40IDEwOS40IDAgMC0xMC0xNS40LTEwLjUtMjIuOC0xOCAyMC00OCA1NC0yNS40IDY2LjYgMjcuNSAxNS4yIDExMi4zLTkxLjUgMTMwLjMtMTQ2LjkgMzUuNy0yMS41IDU3LjItNDguOCA2Ni02Ny4xIDIyLjcgNDQuOSA5OC40IDk3LjUgMTA0LjQgNjAuOXoiXX0sTW9yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImF3cyIsaWNvbjpbNjQwLDUxMixbXSwiZjM3NSIsIk0xODAuNCAyMDNjLS43IDIyLjYgMTAuNiAzMi43IDEwLjkgMzktLjEgMS4zLS42IDIuNS0xLjMgMy42cy0xLjcgMi0yLjggMi42bC0xMi44IDljLTEuNyAxLjItMy42IDEuOC01LjYgMS45LS40IDAtOC4yIDEuOC0yMC41LTI1LjYtNy41IDkuNC0xNyAxNi45LTI3LjkgMjJzLTIyLjcgNy43LTM0LjcgNy41Yy0xNi4zIC45LTYwLjQtOS4yLTU4LjEtNTYuMi0xLjYtMzguMyAzNC4xLTYyLjEgNzAuOS02MCA3LjEgMCAyMS42IC40IDQ3IDYuM2wwLTE1LjZjMi43LTI2LjUtMTQuNy00Ny00NC44LTQzLjktMi40IDAtMTkuNC0uNS00NS44IDEwLjEtNy40IDMuNC04LjMgMi44LTEwLjggMi44LTcuNCAwLTQuNC0yMS41LTIuOS0yNC4yIDUuMi02LjQgMzUuOS0xOC40IDY1LjktMTguMiAyMC4xLTEuOCA0MC4xIDQuNCA1NS43IDE3LjMgNi4zIDcuMSAxMS4yIDE1LjQgMTQuMiAyNC40czQuMiAxOC41IDMuNSAyOGwwIDY5LjN6TTk0IDIzNS40YzMyLjQtLjUgNDYuMi0yMCA0OS4zLTMwLjUgMi41LTEwLjEgMi4xLTE2LjQgMi4xLTI3LjQtOS43LTIuMy0yMy42LTQuOS0zOS42LTQuOS0xNS4yLTEuMS00Mi44IDUuNi00MS43IDMyLjMtMS4yIDE2LjggMTEuMSAzMS40IDMwIDMwLjV6bTE3MC45IDIzLjFjLTcuOSAuNy0xMS41LTQuOS0xMi43LTEwLjRMMjAyLjQgODMuNGMtMS0yLjgtMS42LTUuNi0xLjktOC42LS4yLTEuMiAuMS0yLjQgLjgtMy40czEuOC0xLjYgMy0xLjhjLjIgMC0yLjEgMCAyMi4yIDAgOC44LS45IDExLjYgNiAxMi42IDEwLjRMMjc0LjkgMjIwLjggMzA4LjEgODBjLjUtMy4yIDIuOS0xMS4xIDEyLjgtMTAuMmwxNy4yIDBjMi4yLS4yIDExLjEtLjUgMTIuNyAxMC40TDM4NC4xIDIyMi43IDQyMSA4MC4xYy41LTIuMiAyLjctMTEuNCAxMi43LTEwLjRsMTkuNyAwYy45LS4xIDYuMi0uOCA1LjMgOC42LS40IDEuOCAzLjQtMTAuNy01Mi44IDE2OS45LTEuMSA1LjUtNC44IDExLjEtMTIuNyAxMC40bC0xOC43IDBjLTEwLjkgMS4yLTEyLjUtOS43LTEyLjctMTAuN2wtMzMuMi0xMzcuMS0zMi44IDEzN2MtLjIgMS4xLTEuNyAxMS45LTEyLjcgMTAuN2wtMTguMyAwIDAgMHptMjczLjUgNS42Yy01LjkgMC0zMy45LS4zLTU3LjQtMTIuMy0yLjMtMS00LjMtMi42LTUuNy00LjhzLTIuMS00LjYtMi4xLTcuMWwwLTEwLjdjMC04LjUgNi4yLTYuOSA4LjgtNS45IDEwIDQuMSAxNi41IDcuMSAyOC44IDkuNiAzNi43IDcuNSA1Mi44LTIuMyA1Ni43LTQuNSAxMy4yLTcuOCAxNC4yLTI1LjcgNS4zLTM0LjktMTAuNS04LjgtMTUuNS05LjEtNTMuMS0yMS00LjYtMS4zLTQzLjctMTMuNi00My44LTUyLjQtLjYtMjguMiAyNS01Ni4yIDY5LjUtNTYgMTIuNyAwIDQ2LjQgNC4xIDU1LjYgMTUuNiAxLjQgMi4xIDIgNC42IDEuOSA3bDAgMTAuMWMwIDQuNC0xLjYgNi43LTQuOSA2LjctNy43LS45LTIxLjQtMTEuMi00OS4yLTEwLjgtNi45LS40LTM5LjkgLjktMzguNCAyNS0uNCAxOSAyNi42IDI2LjEgMjkuNyAyNi45IDM2LjUgMTEgNDguNiAxMi44IDYzLjEgMjkuNiAxNy4xIDIyLjIgNy45IDQ4LjMgNC4zIDU1LjQtMTkuMSAzNy41LTY4LjQgMzQuNC02OS4zIDM0LjR6bTQwLjIgMTA0LjljLTcwIDUxLjctMTcxLjcgNzkuMi0yNTguNSA3OS4yLTExNy4xIC44LTIzMC4zLTQyLjMtMzE3LjMtMTIwLjctNi41LTUuOS0uOC0xNCA3LjItOS41IDk2LjUgNTUuMiAyMDUuNyA4NC4yIDMxNi45IDg0LjEgODMtLjQgMTY1LjEtMTcuMyAyNDEuNi00OS41IDExLjgtNSAyMS44IDcuOCAxMC4xIDE2LjR6bTI5LjItMzMuM2MtOS0xMS41LTU5LjMtNS40LTgxLjgtMi43LTYuOCAuOC03LjktNS4xLTEuOC05LjUgNDAuMS0yOC4yIDEwNS45LTIwLjEgMTEzLjQtMTAuNiA3LjUgOS41LTIuMSA3NS40LTM5LjYgMTA2LjktNS44IDQuOS0xMS4zIDIuMy04LjctNC4xIDguNC0yMS4zIDI3LjQtNjguNSAxOC40LTgweiJdfSxrb3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZ2xpZGUtZyIsaWNvbjpbNDQ4LDUxMixbXSwiZjJhNiIsIk00MDcuMSAyMTEuMmMtMy41LTEuNC0xMS42LTMuOC0xNS40LTMuOC0zNy4xIDAtNjIuMiAxNi44LTkzLjUgMzQuNWwtLjktLjljNy00Ny4zIDIzLjUtOTEuOSAyMy41LTE0MC40IDAtNzEuNS0zOC4yLTEwMC42LTEwOC40LTEwMC42LTExNS4xIDAtMTczLjQgMTEzLjctMTczLjQgMTk4LjQgMCA4Ny45IDUxLjMgMTM2LjYgMTM4LjYgMTM2LjYgMTIgMCAxMS0xIDExIDMuOC0xNi45IDEyOC45LTkwLjggMTMzLjEtOTAuOCA5NC42IDAtMzkuMiA0NS01OC42IDQ1LjUtNjEtLjMtMTIuMi00Ny0yNy42LTU4LjktMjcuNi0zMy45IC4xLTUyLjQgNTEuMi01Mi40IDc5LjMgMCA1MS45IDMyLjggODcuOSA4NS41IDg3LjkgNzcuNCAwIDEzNC03Ny44IDE1MS40LTE0NS40IDE1LjEtNjAuNSAxMS4yLTYzLjMgMTkuNy02Ny42IDMyLjItMTYuMiA1Ny41LTI3IDkzLjgtMjcgMTcuOCAwIDMwLjUgMy43IDU4LjkgOC40IDIuOSAwIDYuNy0yLjkgNi43LTUuOCAwLTgtMzMuNC02MC41LTQwLjktNjMuNHpNMjMxLjggMTI2LjhjLTkuMyA0NC43LTE4LjYgODkuNi0yNy44IDEzNC4zLTIuMyAxMC4yLTEzLjMgNy44LTIyIDcuOC0zOC4zIDAtNDktNDEuOC00OS03My4xIDAtNDcgMTgtMTA5LjMgNjEuOC0xMzMuNCA3LTQuMSAxNC44LTYuNyAyMi42LTYuNyAxOC42IDAgMjAgMTMuMyAyMCAyOC43LS4xIDE0LjMtMi43IDI4LjUtNS42IDQyLjR6Il19LFNvcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJqc2ZpZGRsZSIsaWNvbjpbNTc2LDUxMixbXSwiZjFjYyIsIk01MTEuMSAyMzcuNWMtNC43LTIuNi01LjctNS43LTYuNC0xMC44LTIuNC0xNi41LTMuNS0zMy42LTkuMS00OS4xLTM1LjktMTAwLTE1NC0xNDMuNC0yNDYuOC05MS42LTI3LjQgMTUuMi00OSAzNi40LTY1LjUgNjMuOS0zLjItMS41LTUuNS0yLjctNy44LTMuNy0zMC4xLTEyLjQtNTktMTAuMS04NS4zIDkuMi0yNS41IDE4LjctMzYuNCA0NC41LTMyLjcgNzYuNCAuNCAzLTIgNy42LTQuNSA5LjUtMzkuNyAzMC01NiA3OC4xLTQxLjkgMTI0LjYgMTMuOCA0NS42IDU3LjUgNzkuOCAxMDUuNiA4MS40IDMwLjMgMSA2MC42IC41IDkxIC41IDg0IDAgMTY4LjEgLjUgMjUyLjEtLjUgNTIuNy0uNiA5Ni4xLTM2LjkgMTA4LjItODcuMyAxMS41LTQ4LjEtMTEuMS05Ny4zLTU2LjgtMTIyLjZ6bTIxLjEgMTU2LjljLTE4LjIgMjIuNC00Mi4zIDM1LjMtNzEuMyAzNS43LTU2LjkgLjgtMTEzLjggLjItMTcwLjcgLjIgMCAuNy0xNjMgLjItMTYzLjcgLjItNDMuOS0uMy03Ni43LTE5LjgtOTUuMi02MC0xOC45LTQxLjItNC05MC44IDM0LjItMTE2LjEgOS4yLTYuMSAxMi41LTExLjYgMTAuMS0yMy4xLTUuNS0yNi40IDQuNS00OCAyNi40LTYzIDIzLTE1LjcgNDcuNC0xNi4xIDcyLTMuMSAxMC4zIDUuNCAxNC42IDExLjYgMjIuMi0yLjUgMTQuMi0yNi40IDM0LjYtNDYuNyA2MC43LTYxLjMgOTcuNS01NC40IDIyOC40IDcuNiAyMzAuMiAxMzIuNyAuMSA4LjIgMi40IDEyLjQgOS44IDE1LjkgNTcuNiAyNi44IDc0LjUgOTYuMSAzNS4xIDE0NC41em0tODcuOC04MC41Yy01LjggMzEuMi0zNC42IDU1LjEtNjYuNyA1NS4xLTE3IDAtMzIuMS02LjUtNDQuMS0xNy43LTI3LjctMjUuNy03MS4xLTc1LTk1LjktOTMuNC0yMC4xLTE0LjktNDItMTIuMy02MC4zIDMuOC01MCA0NC4xIDE1LjkgMTIxLjggNjcuMSA3Ny4yIDQuNS00IDcuOC05LjUgMTIuNy0xMi44IDguMi01LjUgMjAuOC0uOSAxMy4yIDEwLjYtMTcuNCAyNi4zLTQ5LjMgMzguMi03OC45IDI5LjMtMjguOS04LjctNDguOC0zNi00OC42LTcwLjIgMS4yLTIyLjUgMTIuNC00My4xIDM1LjQtNTYgMjIuNi0xMi42IDQ2LjQtMTMuMSA2NyAyLjUgNTAuOCAzOC41IDc1LjYgODEuNyAxMDcuMyAxMDEuMiAyNC42IDE1LjEgNTQuMyA3LjQgNjguOC0xNy41IDI4LjgtNDkuMi0zNC42LTEwNS03OC45LTYzLjUtNCAzLjctNi45IDguOS0xMS40IDExLjctMTEgNi44LTE3LjMtNC4xLTEyLjgtMTAuNCAyMC43LTI4LjYgNTAuNS00MC40IDgzLjMtMjguMiAzMS40IDExLjcgNDkuMSA0NC40IDQyLjggNzguMnoiXX0sem9yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImtleWJhc2UiLGljb246WzQ0OCw1MTIsW10sImY0ZjUiLCJNMjg2LjIgNDE5YTE4IDE4IDAgMSAwIDAgMzYgMTggMTggMCAxIDAgMC0zNnpNMzk4LjEgMjcxLjRjLTkuNS0xNC42LTM5LjQtNTIuNC04Ny4zLTczLjctNi4xLTIuNy0xMi4yLTUuMS0xOC40LTcuMyA0LjEtOS45IDYtMjAuNiA1LjgtMzEuNHMtMi43LTIxLjMtNy4yLTMxLjEtMTAuOS0xOC41LTE4LjktMjUuNy0xNy40LTEyLjYtMjcuNi0xNmMtMTIuNC00LjEtMjMuMy02LTMyLjQtNS44LS42LTItMS45LTExIDkuNC0zNWwtMjIuOS0xMy41LTUuNSA3LjZjLTguNyAxMi4xLTE2LjkgMjMuNi0yNC4zIDM0LjktMi43LS42LTUuNS0xLjEtOC4zLTEuMi00MS41LTIuNC0zOS0yLjMtNDEuMS0yLjMtNTAuNiAwLTUwLjggNTIuMS01MC44IDQ1LjlsLTIuNCAzNi43Yy0xLjYgMjcgMTkuOCA1MC4yIDQ3LjYgNTEuOGw4LjkgLjVDMTA2IDIxNS41IDkwLjQgMjI3LjUgNzYuNiAyNDEuNCAxNCAzMDQuNyAxNCAzNzQgMTQgNDI5LjhsMCAzMy42IDIzLjMtMjkuOGMzLjEgMTMuMSA4IDI1LjggMTQuNiAzNy42IDUuOCAxMC4xIDE0LjkgOS40IDE5LjYgNy4zIDQuMi0xLjkgMTAtNi45IDMuOC0yMC4xLTgtMTYuOC0xMy4zLTM0LjctMTUuOC01My4xbDQ2LjgtNTkuOC0yNC43IDc0LjFjNTguMi00Mi40IDE1Ny40LTYxLjggMjM2LjItMzguNiAzNC4yIDEwLjEgNjcuNCAuNyA4NC43LTIzLjggLjctMSAxLjItMi4yIDEuOC0zLjIgMS44IDkuNCAyLjcgMTguOSAyLjggMjguNCAwIDIzLjMtMy43IDUyLjktMTQuOSA4MS42LTIuNSA2LjUgMS44IDE0LjUgOC42IDE1LjcgNy40IDEuNiAxNS4zLTMuMSAxOC40LTExLjEgOS42LTI1LjUgMTQuNi01NC42IDE0LjYtODYuMiAwLTM4LjYtMTMtNzcuNS0zNS45LTExMC45ek0xNDIuNCAxMjguNmwtMTUuNy0uOS0xLjQgMjEuOCAxMy4xIC44Yy0uNiA2LjUtLjUgMTMuMSAuMyAxOS42bC0yMi40LTEuM2MtMS42LS4xLTMuMi0uNS00LjctMS4xcy0yLjgtMS42LTMuOS0yLjgtMS45LTIuNi0yLjUtNC4xLS44LTMuMS0uNy00LjdMMTA3IDExOWMxLTEyLjIgMTMuOS0xMS4zIDEzLjMtMTEuM2wyOS4xIDEuN2MtMi44IDYuMi01LjEgMTIuNi03IDE5LjJ6TTI5MC44IDMwMC44Yy0yLjEgMS42LTQuOCAyLjQtNy41IDIuMnMtNS4xLTEuNS02LjktMy41bC05LjctMTEuNS0zNC40IDI3Yy0xLjYgMS4zLTMuNyAxLjktNS44IDEuN3MtNC0xLjItNS4zLTIuOGwtMTUuOC0xOC42Yy0xLjItMS42LTEuNy0zLjUtMS41LTUuNHMxLjMtMy43IDIuOC00LjlsMzQuNi0yNy4yLTE0LjEtMTYuNy0xNy4xIDEzLjVjLTEuNiAxLjItMy41IDEuOC01LjUgMS42cy0zLjgtMS4xLTUuMS0yLjZjMCAwLTMuNy00LjQtMy44LTQuNS0xLjItMS42LTEuNy0zLjUtMS41LTUuNXMxLjMtMy43IDIuOC00LjlMMjE0IDIyNS4ycy0xOC41LTIyLTE4LjYtMjIuMWMtLjgtMS0xLjMtMi4xLTEuNy0zLjNzLS40LTIuNS0uMy0zLjcgLjYtMi40IDEuMi0zLjUgMS41LTIgMi41LTIuOGMyLjEtMS43IDQuOC0yLjQgNy40LTIuMnM1LjEgMS41IDYuOSAzLjZsODEuMSA5Ni4zYy44IDEgMS4zIDIuMSAxLjcgMy4zcy40IDIuNSAuMyAzLjctLjYgMi41LTEuMiAzLjUtMS41IDIuMS0yLjUgMi44ek0xODcuNCA0MTlhMTggMTggMCAxIDAgMCAzNiAxOCAxOCAwIDEgMCAwLTM2eiJdfSxDb3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToibHVtb24tZHJvcCIsaWNvbjpbNTc2LDUxMixbXSwiZTdlMyIsIk00ODAgMzJjNTMgMCA5NiA0MyA5NiA5NmwwIDIyNGMwIDUzLTQzIDk2LTk2IDk2TDk2IDQ0OGMtNTMgMC05Ni00My05Ni05NkwwIDEyOEMwIDc1IDQzIDMyIDk2IDMybDM4NCAwek0zMDIuNCAxMTQuN2MtOS44LTE2LjQtMjAuNS0xNi40LTI5LjYgMGwtNjguOSAxMTRjLTEwLjcgMTUuNi0xNi40IDMyLjgtMTYuNCA1Mi41IDAgNTAuOSA0NC4zIDk0LjMgMTAwLjEgOTQuMyA1NSAwIDEwMC45LTQzLjUgMTAwLjktOTQuMyAwLTE5LjctNi42LTM3LjgtMTcuMi01Mi41bC02OC45LTExNHoiXX0sX29yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImZvcmdlam8iLGljb246WzMyMCw1MTIsW10sImU4NjAiLCJNMjYxLjUgMS4yYzM0IDAgNjEuNiAyNy42IDYxLjYgNjEuNnMtMjcuNiA2MS42LTYxLjYgNjEuNmMtMjMgMC00My4xLTEyLjctNTMuNy0zMS40bC0yOC41IDBjLTI0IDAtNDcgOS41LTY0IDI2LjVzLTI2LjUgNDAtMjYuNSA2NGwwIDQzLjVjMjYtMTkuNSA1Ny43LTMwLjIgOTAuNi0zMC4ybDI4LjUgMGMxMC42LTE4LjcgMzAuNi0zMS40IDUzLjctMzEuNCAzNCAwIDYxLjYgMjcuNiA2MS42IDYxLjZzLTI3LjYgNjEuNi02MS42IDYxLjZjLTIzIDAtNDMuMS0xMi43LTUzLjctMzEuNGwtMjguNSAwYy0yNCAwLTQ3IDkuNS02NCAyNi41cy0yNi41IDQwLTI2LjUgNjRsMCA0Ny44YzE4LjcgMTAuNiAzMS40IDMwLjYgMzEuNCA1My42IDAgMzQtMjcuNiA2MS42LTYxLjYgNjEuNlMtMyA0ODMuMi0zIDQ0OS4yYzAtMjMgMTIuNy00My4xIDMxLjQtNTMuNmwwLTIxMmMwLTQwIDE1LjktNzguNCA0NC4yLTEwNi43czY2LjctNDQuMiAxMDYuNy00NC4ybDI4LjUgMGMxMC42LTE4LjcgMzAuNi0zMS40IDUzLjctMzEuNHpNNTguNiA0MjMuOWMtMTQgMC0yNS4zIDExLjMtMjUuMyAyNS4zczExLjMgMjUuNCAyNS4zIDI1LjQgMjUuNC0xMS40IDI1LjQtMjUuNC0xMS40LTI1LjMtMjUuNC0yNS4zek0yNjEuNSAyMDEuN2EyNS40IDI1LjQgMCAxIDAgMCA1MC43IDI1LjQgMjUuNCAwIDEgMCAwLTUwLjd6bTAtMTY0LjJhMjUuNCAyNS40IDAgMSAwIDAgNTAuNyAyNS40IDI1LjQgMCAxIDAgMC01MC43eiJdfSxUb3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToicG9zdGdyZXNxbCIsaWNvbjpbNTEyLDUxMixbXSwiZTg1OCIsIk0yMTkuOCAxNzEuM2MzLjkgLjUgMTMuMSAyLjcgMTIuMyA4LjUtLjggNS45LTkuMiA5LjEtMTQuMiA4LjQtNC43LS43LTEzLjItNi4xLTEyLjMtMTIuMWwuMy0yLjFjNC4yIDAgOC4zLTMuNSAxMy45LTIuN3ptMTY4LjEtMy40YzEwLjggMi42LTEuMSAxMy41LTYuOCAxNC4zLTQuMyAuNi0xMi4xLTIuMi0xMi44LTcuNC0xLTcuNCAxNS43LTcuOSAxOS43LTYuOXptLTIyLTE0MC44YzM1LjctLjMgODEuMyA5LjQgMTE0LjMgNTEuNyA3LjIgOS4yIDEwIDI0IDkuNyA0MC45LS44IDQ5LjYtMjYgMTI5LjQtNzAuNyAxOTcuNCA0LjUgMi45IDE3LjYgNy40IDUxLjEgLjUgNS42LTEuMiAxMi43LTIuMiAxNy42IDEuNiAxOC4yIDEzLjktMTkuNiAzNS4xLTI4LjQgMzkuMi0xMy4yIDYuMi0zNC44IDkuNS01MS4yIDguNy0yLjEtLjItNC4zLS4yLTYuMy0uNi01LjEtMS4xLTcuNC0xLTguMy0uNy0xLjEgLjMtMS40IDIuOS0xLjYgMy44LTIuOCAyNC45LTcuNyA2NC43LTEwLjcgODItMi44IDE2LjMtNy43IDI5LjMtMTcuMiAzOS4yLTkuNSA5LjktMjIuOCAxNS43LTQwLjYgMTkuNS0yMi4zIDQuOC0zNy45LS4xLTQ4LjctOS4xLTEwLjMtOC43LTE1LjItMjAuNC0xOC0yNy40LTEuOC00LjUtMy0xMS41LTQtMTkuOC0yLjMtMTkuOC0zLjMtNTAuNC0zLTgzLjMtMjQuNiAyMi4xLTU1IDE3LjItNjguMiAxMy45LTEwLjUtMi42LTMzLTE2LjEtMTcuNS0yOC43IDExLjktOS43IDMwLjMtNS41IDQyLjItMTUgMi40LTEuOSAxMS40LTEwLjYgMTEuNC0xMy41LTEwLS4zLTE5LjYtMi45LTI4LjEtNy41LTEzLjUgMTQuNS0yNi40IDI5LjUtMzkuMyA0NC42LTguMyA5LjktMTcuNCAxNS44LTI3LjQgMTYuMi05LjkgLjQtMTguNy00LjYtMjYuMS0xMS44LTcuMy03LjEtMTQuMS0xNy4yLTIwLjQtMjktMTktMzUuNS0zMy4yLTg2LjEtNDIuMy0xMjYuNC02LTI2LjctOS42LTQ5LjEtMTAuMS01OS0yLjItNDQuMyA4LTc0LjEgMjYtOTMuMiAxNy45LTE5IDQyLjQtMjYgNjYuMS0yNy40IDM1LjYtMiA3MSA4LjUgODYuNiAxMy44bDUgMS44YzE1LjktMTAuOCAzNi4xLTE3LjQgNjEuNy0xNyAxMy4yIC4yIDI1LjUgMi4yIDM2LjcgNC4yIDE4LjYtNy4xIDM5LjgtOS41IDU5LjQtOS43em0tOTYgMjAuNWMtMjQuNy0uNC00Mi45IDYuNS01Ni42IDE2LjgtLjggLjYtMS44IDEtMi44IDEuMi0xNC40IDExLjgtMjMuOSAyOC0zMC4zIDQ0LjgtNy4yIDE5LjEtMTAgMzguNS0xMS4xIDUxLjUgNy42LTQuMyAxNy45LTguNyAyOC43LTExLjIgMTAuNS0yLjQgMjIuNC0zLjIgMzIuNyAuOCAxMC45IDQuMiAxOSAxMy4zIDIyLjIgMjguMSA3LjUgMzQuNyA2LjcgNTguMiAyLjcgNzUuOS00LjggMjEtMTYuOCAzOS41LTIxLjkgNjAuNCAzLjUtLjkgNy4xLS42IDkuOCAuMWw3LjIgMi45YzcuNyA0LjQgMTIuOCAxMyAxNCAyMS43IDIgNiAuMSAxNC4zIDAgMjAuNiA2LjcgMTYuMyA3LjIgMzYuMSA2LjcgNTMuMy0uNyAyNS0xIDQwLjIgMy4yIDUxLjcgMi45IDcuOSA0LjcgMTYuNCAxMC40IDIyLjggMi42IDMgNi4xIDUuNSAxMC45IDYuOCAxOC41IDUuMSA0NC00LjcgNTYuNi0xOC4yIDcuNy04LjIgMTIuMy0xOS4zIDEzLjQtMzMuOSAxLjEtMTMuNiA0LjItMjcuNiA2LjMtNDEuMWwyLjktOC44YzEuNy0xNC44IDMuNC0yOS42IDUtNDQuNC0uNC05LjEgLjktMTYuMSAzLjktMjEuNSAzLjEtNS43IDcuNi04LjkgMTEuOC0xMC44IDEuOC0uOCAzLjktMS4yIDUuNi0yLTEuNi0yLjQtMy42LTQuNi01LjMtNi44LTguMi0xMC40LTEzLjMtMjIuMy0xOS43LTMzLjgtOC41LTE1LjItMjMuOC00Mi4yLTMwLjEtNjcuNS00LjEtMTYuNC00LjktMzQuNSA2LTQ3IDkuOC0xMS4yIDI2LjktMTUuNSA1MS45LTEzLTMuNC0xMC0xMS40LTI3LjUtMjQuOC00NC43LTE4LTIzLTQ1LjctNDUuOS04NS43LTUzLjEtNy4zLS45LTE1LjItMS41LTIzLjYtMS43em0tMzIuMiAyODJjLTggLjctMTUuNSAxOC4yLTIxLjcgMjMuMS02LjIgNC45LTE0LjUgNy42LTMwIDEwLjctNC41IC45LTcuNyAxLjktOS43IDIuOCAyMi4zIDE1LjggNTguMyAzLjIgNzIuNi0xNi44IDEuNy0yLjQgMi4xLTYgLjUtMTAuMi0xLjctNC41LTYuNC0xMC4xLTExLjktOS42ek0xMTcuNiA0OS4yYy0yMS42IDEuMi00MiA3LjUtNTYuNCAyMi44LTE0LjQgMTUuMi0yNC4yIDQwLjYtMjIuMSA4Mi41IC40IDguNSAzLjggMzAgOS44IDU2LjYgOC45IDM5LjggMjMuNyA5MC4zIDQwLjYgMTIyLjIgNiAxMS4xIDE3LjQgMzMgMzIuOCAzMi4zIDQuNC0uMiAxMC4xLTIuOCAxNy0xMSAxMi42LTE0LjggMjUuMi0yOS41IDM4LjUtNDMuNy0xNy45LTE1LjQtMjguNS00MC4zLTI0LjgtNjcuMiAzLjQtMjQuMyAuNS00OC4yIDEuMi03Mi41IC40LTExLjkgMi4zLTM4LjcgMTIuNi02NS44IDUuOS0xNS41IDE0LjUtMzEuMyAyNy40LTQ0LjItMTYuNC01LjQtNDcuMS0xMy41LTc2LjYtMTEuOXpNNDA1LjEgMzI4LjljLTMuOCAxLjEtNi43IDIuMi04LjcgNS44LTEuMyAyLjQtMi41IDYuNy0yLjIgMTQuMiA0LjggMy45IDE0LjEgMy4zIDE5LjggMy4yIDEzLjktLjIgMjkuOS0zLjEgMzkuMy03LjUgNy45LTMuNyAxNC43LTguMyAxOS0xMi4yLTM4LjIgNy43LTU1LjQgMi4xLTYzLjItNC44LTEuMyAuNC0yLjkgLjktMy45IDEuMnpNMjI1LjMgMTY0LjljLTE1LjQtNS45LTM1LjQgMS44LTQ4LjkgOS40LTMuNiAyLTYuNSA0LTcuOSA1LjIgLjQgOC44IDIuOCAzNi4xLTEuNCA2Ni4zLTUuMSAzNi42IDIxLjcgNjYuNiA1Mi41IDY2LjcgNS4xLTIwLjggMTctMzkuMiAyMS44LTYwLjEgMy41LTE1LjMgNC41LTM2LjYtMi43LTY5LjctMi4zLTEwLjUtNy40LTE1LjQtMTMuNC0xNy43ek0zNzAuMSA0Mi4yYy0xNS4yLS4yLTI4LjggMS43LTM5LjIgMy44IDI2IDExLjggNDUuNiAyOS43IDU5LjYgNDcuNiAxNy40IDIyLjIgMjYuMyA0NC4xIDI5IDU1IC43IDIuNyAxLjMgNS43IC41IDguNCAuNiAxOC45LTQgMzEuMy00LjYgNDkuMi0uNCAxMi45IDIuOSAyOC4xIDMuNyA0NC43IC44IDE1LjctMSAzMi41LTExLjIgNDkuNSAuOCAxIDEuNiAyLjEgMi40IDMuMSAyNi44LTQyLjIgNDYtODguNiA1Ni4zLTEyOC41IDUuNS0yMS40IDguNC00MC43IDguNy01Ni4xIC4yLTE1LjItMi0yNS40LTUuOC0zMC40LTI4LjMtMzYuMS02Ni44LTQ1LjgtOTkuMy00Ni4yem0zNS42IDExOS41Yy0yNS4zLTMuMi0zNy4zIDEuNS00Mi44IDcuNy02IDYuOC02LjggMTguNS0yLjkgMzQuMSA1LjcgMjIuNiAyMC4xIDQ4LjYgMjguNyA2NCAzLjYgNi40IDYuNCAxMy4xIDEwIDE5LjQgNS41LTExLjcgNi42LTIzLjUgNi0zNS41LS43LTE1LTQuMi0zMC4zLTMuNy00NS44bC40LTcuNGMxLjItMTQuMyA0LjEtMjQuNiA0LjItMzYuNXoiXX0sTG9yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6IndlZWJseSIsaWNvbjpbNTEyLDUxMixbXSwiZjVjYyIsIk00MjUuMSA2NS44Yy0zOS45IDAtNzMuMyAyNS43LTgzLjcgNjQuMy0xOC4yLTU4LjEtNjUuNS02NC4zLTg1LTY0LjMtMTkuOCAwLTY2LjggNi4zLTg1LjMgNjQuMy0xMC40LTM4LjYtNDMuNC02NC4zLTgzLjctNjQuMy00OSAwLTg3LjUgMzMuOS04Ny41IDc3LjIgMCAyOSA0LjIgMzMuMyA3Ny4yIDIzMy41IDIyLjQgNjAuNiA2Ny44IDY5LjQgOTIuNyA2OS40IDM5LjIgMCA3MC0xOS41IDg1LjktNTQgMTUuOSAzNC44IDQ2LjcgNTQuMyA4NS45IDU0LjMgMjUgMCA3MC40LTkuMSA5Mi43LTY5LjcgNzYuNi0yMDguNiA3Ny41LTIwNS42IDc3LjUtMjI3LjIgLjYtNDguMy0zNi04My41LTg2LjktODMuNXptMjYuMyAxMTQuOEwzODUuOSAzNTcuMWMtNy45IDIxLjUtMjEuMiAzNy4yLTQ2LjIgMzcuMi0yMy40IDAtMzcuNC0xMi40LTQ0LTMzLjlsLTM5LjMtMTE3LjQtMSAwLTM5LjMgMTE3LjRjLTcgMjEuNS0yMC45IDMzLjYtNDQgMzMuNi0yNSAwLTM4LjMtMTUuNy00Ni4yLTM3LjJMNjAuOSAxODEuNmMtNS40LTE0LjgtNy45LTIzLjktNy45LTM0LjUgMC0xNi4zIDE1LjgtMjkuNCAzOC4zLTI5LjQgMTguNyAwIDMyIDExLjggMzYuMSAyOS4xbDQ0IDEzOS44IDEgMCA0NC43LTEzNi44YzYtMTkuNyAxNi41LTMyLjEgMzktMzIuMXMzMi45IDEyLjEgMzkgMzIuMWw0NC43IDEzNi44IDEgMCA0NC0xMzkuOGM0LjEtMTcuMiAxNy40LTI5LjEgMzYuMS0yOS4xIDIyLjIgMCAzOC4zIDEzLjMgMzguMyAzNS43LS4zIDcuOS00LjEgMTYtNy42IDI3LjJ6Il19LERvcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJkb2NrZXIiLGljb246WzY0MCw1MTIsW10sImYzOTUiLCJNMzQ5LjkgMjM2LjNsLTY2LjEgMCAwLTU5LjQgNjYuMSAwIDAgNTkuNHptMC0yMDQuM2wtNjYuMSAwIDAgNjAuNyA2Ni4xIDAgMC02MC43em03OC4yIDE0NC44bC02Ni4xIDAgMCA1OS40IDY2LjEgMCAwLTU5LjR6TTI3MS44IDEwNC43bC02Ni4xIDAgMCA2MC4xIDY2LjEgMCAwLTYwLjF6bTc4LjEgMGwtNjYuMSAwIDAgNjAuMSA2Ni4xIDAgMC02MC4xem0yNzYuOCAxMDBjLTE0LjQtOS43LTQ3LjYtMTMuMi03My4xLTguNC0zLjMtMjQtMTYuNy00NC45LTQxLjEtNjMuN2wtMTQtOS4zLTkuMyAxNGMtMTguNCAyNy44LTIzLjQgNzMuNi0zLjcgMTAzLjgtOC43IDQuNy0yNS44IDExLjEtNDguNCAxMC43bC00MzQuNyAwYy04LjcgNTAuOCA1LjggMTE2LjggNDQgMTYyLjEgMzcuMSA0My45IDkyLjcgNjYuMiAxNjUuNCA2Ni4yIDE1Ny40IDAgMjczLjktNzIuNSAzMjguNC0yMDQuMiAyMS40IC40IDY3LjYgLjEgOTEuMy00NS4yIDEuNS0yLjUgNi42LTEzLjIgOC41LTE3LjFsLTEzLjMtOC45ek0xMTUuNiAxNzYuOGwtNjYgMCAwIDU5LjQgNjYuMSAwIDAtNTkuNC0uMSAwem03OC4xIDBsLTY2LjEgMCAwIDU5LjQgNjYuMSAwIDAtNTkuNHptNzguMSAwbC02Ni4xIDAgMCA1OS40IDY2LjEgMCAwLTU5LjR6bS03OC4xLTcyLjFsLTY2LjEgMCAwIDYwLjEgNjYuMSAwIDAtNjAuMXoiXX0sQW9yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Im1hZ2VudG8iLGljb246WzQ0OCw1MTIsW10sImYzYzQiLCJNNDQ1LjkgMTI3LjlsMCAyNTYuMS02My40IDM2LjUgMC0yNTUuOC0xNTguNS05MS42LTE1OC42IDkxLjYgLjQgMjU1LjktNjMuMy0zNi42IDAtMjU1LjkgMjIxLjktMTI4LjEgMjIxLjUgMTI3Ljl6TTI1NS44IDQyMC41bC0zMS42IDE4LjQtMzEuOC0xOC4yIDAtMjU2LTYzLjMgMzYuNiAuMSAyNTUuOSA5NC45IDU0LjkgOTUuMS01NC45IDAtMjU2LTYzLjQtMzYuNiAwIDI1NS45eiJdfSxFb3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidG9yLWJyb3dzZXIiLGljb246WzUxMiw1MTIsW10sImU4MzgiLCJNMjU2LjUgNDY1LjRsMC0zMWM5OC4zLS4zIDE3Ny45LTgwIDE3Ny45LTE3OC40UzM1NC44IDc3LjkgMjU2LjUgNzcuNmwwLTMxQzM3MiA0Ni44IDQ2NS40IDE0MC41IDQ2NS40IDI1NlMzNzIgNDY1LjIgMjU2LjUgNDY1LjR6bTAtMTA4LjZjNTUuNC0uMyAxMDAuMy00NS4zIDEwMC4zLTEwMC44UzMxMiAxNTUuNSAyNTYuNSAxNTUuMmwwLTMxYzcyLjYgLjMgMTMxLjQgNTkuMiAxMzEuNCAxMzEuOFMzMjkuMSAzODcuNiAyNTYuNSAzODcuOGwwLTMxem0wLTE1NS4xYzI5LjcgLjMgNTMuOCAyNC41IDUzLjggNTQuM3MtMjQgNTQtNTMuOCA1NC4zbDAtMTA4LjZ6TTAgMjU2YTI1NiAyNTYgMCAxIDAgNTEyIDAgMjU2IDI1NiAwIDEgMCAtNTEyIDB6Il19LCRvcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJnaXQtYWx0IixpY29uOls0NDgsNTEyLFtdLCJmODQxIiwiTTQzOS42IDIzNi4xTDI0NCA0MC41QzIzOC42IDM1IDIzMS4yIDMyIDIyMy42IDMycy0xNSAzLTIwLjQgOC40bC00MC43IDQwLjYgNTEuNSA1MS41YzI3LjEtOS4xIDUyLjcgMTYuOCA0My40IDQzLjdsNDkuNyA0OS43YzM0LjItMTEuOCA2MS4yIDMxIDM1LjUgNTYuNy0yNi41IDI2LjUtNzAuMi0yLjktNTYtMzcuM2wtNDYuMy00Ni4zIDAgMTIxLjljMjUuMyAxMi41IDIyLjMgNDEuOCA5LjEgNTUtNi40IDYuNC0xNS4yIDEwLjEtMjQuMyAxMC4xcy0xNy44LTMuNi0yNC4zLTEwLjFjLTE3LjYtMTcuNi0xMS4xLTQ2LjkgMTEuMi01NmwwLTEyM2MtMjAuOC04LjUtMjQuNi0zMC43LTE4LjYtNDVMMTQyLjYgMTAxIDguNSAyMzUuMUMzIDI0MC42IDAgMjQ3LjkgMCAyNTUuNXMzIDE1IDguNSAyMC40TDIwNC4xIDQ3MS42YzUuNCA1LjQgMTIuNyA4LjQgMjAuNCA4LjRzMTUtMyAyMC40LTguNEw0MzkuNiAyNzYuOWM1LjQtNS40IDguNC0xMi44IDguNC0yMC40cy0zLTE1LTguNC0yMC40eiJdfSxQb3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZmlyZWZveC1icm93c2VyIixpY29uOls1MTIsNTEyLFtdLCJlMDA3IiwiTTEzMC4yIDEyNy41bDAgMHptMzUxLjQgNDUuNGMtMTAuNi0yNS41LTMyLjEtNTMtNDguOS02MS43IDEzLjcgMjYuOSAyMS43IDUzLjkgMjQuNyA3NCAwIC4xIDAgLjMgLjEgLjQtMjcuNi02OC44LTc0LjQtOTYuNS0xMTIuNi0xNTYuOC0xNS0yMy43LTEwLjktMjUuMi0xMy4xLTI0LjdsLS4xIC4xYy00Ni43IDI2LTc1LjMgNzguNC04Mi42IDEyMi43LTE2LjYgLjktMzIuOSA1LTQ3LjkgMTIuMS0xLjQgLjYtMi41IDEuNy0zLjEgM3MtLjkgMi44LS42IDQuM2MuMiAuOCAuNiAxLjYgMS4xIDIuM3MxLjIgMS4zIDEuOSAxLjcgMS42IC43IDIuNCAuOCAxLjcgMCAyLjUtLjNsLjUtLjJjMTUuNS03LjMgMzIuNC0xMS4yIDQ5LjUtMTEuMyA2Mi44LS42IDk3LjIgNDQgMTA3LjYgNjIuMy0xMy05LjItMzYuNC0xOC4yLTU4LjgtMTQuMyA4Ny43IDQzLjkgNjQuMiAxOTQuNS01Ny40IDE4OS4yLTU5LjUtMi42LTk3LjEtNTEtMTAwLjUtOTAuOCAwIDAgMTEuMi00MS45IDgwLjYtNDEuOSA3LjUgMCAyOC45LTIwLjkgMjkuMy0yNy0uMS0yLTQyLjUtMTguOS01OS4xLTM1LjItOC44LTguNy0xMy4xLTEyLjktMTYuOC0xNi4xLTItMS43LTQuMS0zLjMtNi4zLTQuOC01LjYtMTkuNS01LjgtNDAtLjctNTkuNi0yNS4xIDExLjQtNDQuNiAyOS40LTU4LjcgNDUuNGwtLjEgMGMtOS43LTEyLjItOS01Mi42LTguNC02MS4xLS4xLS41LTcuMiAzLjctOC4yIDQuMy04LjYgNi4xLTE2LjUgMTIuOS0yMy44IDIwLjQtMTYuMyAxNi42LTQ0LjEgNTAuMi01NS41IDEwMS4yLTQuNSAyMC40LTYuOCA0NC40LTYuOCA1Mi4zIDAgMTM0LjcgMTA5LjIgMjQzLjkgMjQzLjkgMjQzLjkgMTIwLjYgMCAyMjMtODcuMiAyNDAuNC0yMDIuNiAxMS42LTc2LjctMTQuNy0xMzEuMS0xNC43LTEzMnoiXX0sSW9yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImNsb3Vkc21pdGgiLGljb246WzUxMiw1MTIsW10sImYzODQiLCJNNTEyIDIyNy42TDUxMiAyODQuNSAyODQuNCA1MTIgMjI3LjYgNTEyIDAgMjg0LjQgMCAyMjcuNiAyMjcuNiAwIDI4NC41IDAgNTEyIDIyNy42em0tMjU2IDE2MmMxNy44IC41IDM1LjYtMi42IDUyLjItOS4xczMxLjgtMTYuMiA0NC42LTI4LjcgMjMtMjcuMyAyOS45LTQzLjggMTAuNS0zNC4xIDEwLjUtNTItMy42LTM1LjUtMTAuNS01Mi0xNy4xLTMxLjMtMjkuOS00My44LTI4LTIyLjItNDQuNi0yOC43LTM0LjQtOS42LTUyLjItOS4xYy0xNy44LS41LTM1LjYgMi42LTUyLjIgOS4xcy0zMS44IDE2LjMtNDQuNiAyOC43LTIzIDI3LjMtMjkuOSA0My44LTEwLjUgMzQuMS0xMC41IDUyIDMuNiAzNS41IDEwLjUgNTIgMTcuMSAzMS4zIDI5LjkgNDMuOCAyOCAyMi4yIDQ0LjYgMjguNyAzNC40IDkuNiA1Mi4yIDkuMXoiXX0sTm9yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6IndpemFyZHMtb2YtdGhlLWNvYXN0IixpY29uOls2NDAsNTEyLFtdLCJmNzMwIiwiTTIxOS4yIDM0NS43Yy0xLjkgMS40LTExLjEgOC40LS4zIDIzLjYgNC42IDYuNCAxNC4xIDEyLjggMjEuNyA2LjYgNi41LTQuOSA3LjQtMTIuOSAuMy0yMy01LjUtNy44LTE0LjMtMTIuOS0yMS43LTcuMXptMzM2LjggNzUuOWMtLjMgMS43LS42IDEuNyAuOCAwIDIuMS00LjIgNC4yLTEwLjIgNS0xOS45IDMuMS0zOC41LTQwLjMtNzEuNS0xMDEuMy03OC01NC43LTYtMTI0LjQgOS4yLTE4OC44IDYwLjVsLS4zIDEuNmMyLjYgNSA1IDEwLjcgMy40IDIxLjJsLjggLjNjNjMuOS01OC40IDEzMS4yLTc3LjIgMTg0LjQtNzMuOCA1OC40IDMuNyAxMDAgMzQgMTAwIDY4LjEgMCAxMC0yLjYgMTUuNy0zLjkgMjAuMnpNMzkyLjMgMjQwLjRjLjggNy4xIDQuMiAxMC4yIDkuMiAxMC41IDUuNSAuMyA5LjQtMi42IDEwLjUtNi42IC44LTMuNCAyLjEtMjkuOCAyLjEtMjkuOFM0MDIuOCAyMjEgMzk5LjEgMjI1Yy0zLjcgMy43LTcuMyA4LjQtNi44IDE1LjV6bS01MC0xNTEuMWMtMjA0LjUgMC0zMjkuMiAxMzcuNS0zNDEuNSAxNTEuOS0xIC41LTEuMyAuOCAuOCAxLjMgNjAuNSAxNi41IDE1NS44IDgxLjIgMTk2LjEgMjAyLjJsMSAuM2M1NS4yLTY5LjkgMTQwLjktMTI4LjEgMjM3LTEyOC4xIDgwLjkgMCAxMzAuMiA0Mi4yIDEzMC4yIDgwLjQgMCAxOC4zLTYuNiAzMy41LTIyLjMgNDYuMyAwIDEtLjIgLjggLjggLjggMTQuNy0xMC43IDI3LjUtMjguOCAyNy41LTQ4LjIgMC0yMi44LTEyLjEtMzguMi0xMi4xLTM4LjIgNy4xIDcuMSAxMC43IDE2LjIgMTAuNyAxNi4yIDUuOC00MC45IDI3LTYyLjMgMjctNjIuMy0yLjQtOS43LTYuOC0xNy44LTYuOC0xNy44IDcuNiA4LjEgMTQuNCAyNy41IDE0LjQgNDEuNCAwIDEwLjUtMy40IDIyLjgtMTIuNiAzMS45bC4zIC41YzguMS01IDE2LjUtMTYuOCAxNi41LTM4IDAtMTUuNy00LjctMjUuOS00LjctMjUuOSA1LjgtNS4yIDExLjMtOS4yIDE2LTExLjggLjggMy40IDIuMSA5LjcgMi40IDE0LjkgMCAxIC44IDEuOCAxIDAgLjgtNS44LS4zLTE2LjItLjMtMTYuNSA2LTMuMSA5LjctNC41IDkuNy00LjUtMTUuNy0xMTAuMy0xNDQtMTk2LjktMjkxLjItMTk2Ljl6TTI0MyAzNzguOWMtMTEuMSA5LTI0LjIgNC4xLTMwLjYtNC4yLTcuNC05LjYtNi44LTI0LjEgNC4yLTMyLjUgMTQuOC0xMS40IDI3LjEtLjUgMzEuMiA1LjUgLjMgLjQgMTIuMSAxNi42LTQuNyAzMS4yem0yLjEtMTM2LjRsOS40LTE3LjggMTEuOCA3MS0xMi42IDYtMjQuNi0yOC44IDE0LjEtMjYuNyAzLjcgNC40LTEuOC04LjF6bTE4LjYgMTE3LjZsLS4zLS4zYzItNC4xLTIuNS02LjYtMTcuNS0zMS43LTEuMy0yLjQtMy4xLTIuOS00LjQtMi42bC0uMy0uNWM3LjktNS44IDE1LjQtMTAuMiAyNS40LTE1LjdsLjUgLjNjMS4zIDEuOCAyLjEgMi45IDMuNCA0LjdsLS4zIC41Yy0xLS4zLTIuNC0uOC01LjIgLjMtMi4xIC44LTcuOSAzLjctMTIuMyA3LjZsMCAxLjNjMS42IDIuNCAzLjkgNi42IDUuOCA5LjdsLjMgMGMxMC02LjMgNy42LTQuNSAxMS41LTcuOWwuMyAwYy41IDEuOCAuNSAxLjggMS44IDUuNWwtLjMgLjNjLTMuMSAuNi00LjcgLjMtMTEuNSA1LjVsMCAuM2M5LjUgMTcgMTEgMTYuOCAxMi42IDE2bC4zIC4zYy0yLjMgMS42LTYuMyA0LjItOS43IDYuNnpNMzE5IDMyNy42Yy0zLjEgMS42LTYgMi45LTEwIDVsLS4zLS4zYzEuMy0yLjYgMS4yLTIuNy0xMS44LTMyLjVsLS4zLS4zYy0uMiAwLTguOSAzLjctMTAgNy4zbC0uNSAwLTEtNS44IC4zLS41YzcuMy00LjYgMjUuNS0xMS42IDI3LjgtMTIuNmwuNSAuMyAzLjEgNS0uMyAuNWMtMy41LTEuOC03LjQgLjgtMTIuMyAyLjZsMCAuM2MxMi4zIDMyIDEyLjcgMzAuNiAxNC43IDMwLjZsMCAuMnptNDQuOC0xNi41Yy00LjIgMS01LjIgMS4zLTkuNyAyLjlsLS4zLS4zIC41LTQuNWMtMS0zLjQtMy4xLTExLjUtMy43LTEzLjZsLS4zLS4zYy0zLjQgLjgtOC45IDIuNi0xMi44IDMuOWwtLjMgLjNjLjggMi42IDMuMSA5LjkgNC4yIDEzLjkgLjggMi40IDEuOCAyLjkgMi45IDMuMWwwIC41Yy0zLjcgMS03LjEgMi42LTEwLjIgMy45bC0uMy0uM2MxLTEuMyAxLTIuOSAuMy01LTEtMy4xLTguMS0yMy44LTkuMi0yNy4yLS41LTEuOC0xLjYtMy4xLTIuNi0zLjFsMC0uNWMzLjEtMSA2LTIuMSAxMC43LTMuNGwuMyAuMy0uMyA0LjdjMS4zIDMuOSAyLjQgNy42IDMuMSA5LjdsLjMgMGMzLjktMS4zIDkuNC0yLjkgMTIuOC0zLjlsLjMtLjMtMi42LTkuNGMtLjUtMS44LTEtMy40LTIuNi0zLjlsMC0uM2M0LjQtMSA3LjMtMS44IDEwLjctMi40bC4zIC4zYy0xIDEuMy0xIDIuOS0uNSA0LjQgMS42IDYuMyA0LjcgMjAuNCA2LjMgMjYuNSAuNSAyLjYgMS44IDMuNCAyLjYgMy45em0zMi4yLTYuOGwtLjMgLjNjLTQuNyAuNS0xNC4xIDIuNC0yMi41IDQuMmwtLjMtLjMgLjgtNC4yYy0xLjYtNy45LTMuNC0xOC42LTUtMjYuMi0uMy0xLjgtLjgtMi45LTIuNi0zLjdsLjgtLjVjOS4yLTEuNiAyMC4yLTIuNCAyNC45LTIuNmwuMyAuM2MuNSAyLjQgLjggMy4xIDEuNiA1LjVsLS4zIC4zYy0xLjEtMS4xLTMuMy0zLjItMTYuMi0uOGwtLjMgLjNjLjMgMS42IDEgNi42IDEuNiA5LjlsLjMgLjNjOS41LTEuNyA0LjgtLjEgMTAuNy0yLjRsLjMgMGMwIDEuNi0uMyAxLjgtLjMgNS4ybC0uMyAwYy00LjgtMS0yLjItLjktMTAuMiAwbC0uMyAuM2MuMyAyLjEgMS42IDkuNCAyLjEgMTIuNmwuMyAuM2MxLjIgLjQgMTQuMi0uNiAxNi4yLTQuN2wuMyAwYy0uNSAyLjQtMSA0LjItMS42IDZ6bTEwLjctNDQuNWMtNC41IDIuNC04LjEgMi45LTExIDIuOS0uMiAwLTExLjQgMS4xLTE3LjUtMTAtNi43LTEwLjgtMS0yNS4yIDUuNS0zMS43IDguOC04LjEgMjMuNC0xMC4xIDI4LjUtMTcgOC0xMC4zLTEzLTIyLjMtMjkuNi01LjhsLTIuNi0yLjkgNS4yLTE2LjJjMjUuNi0xLjYgNDUuMi0zIDUwIDE2LjIgLjggMy4xIDAgOS40LS4zIDEyLjEgMCAyLjYtMS44IDE4LjgtMi4xIDIzLS41IDQuMi0uOCAxOC4zLS44IDIwLjcgLjMgMi40IC41IDQuMiAxLjYgNS41IDEuNiAxLjggNS44IDEuOCA1LjggMS44bC0uOCA0LjdjLTExLjgtMS4xLTEwLjMtLjYtMjAuNC0xLTMuMi01LjEtMi4yLTMuMy00LjItNy45IDAgMC00LjIgMy45LTcuMyA1LjV6TTQ0My45IDI4MWMtNi40LTEwLjYtMTkuOC03LjItMjEuNyA1LjUtMi42IDE3LjEgMTQuMyAxOS44IDIwLjcgMTAuMmwuMyAuM2MtLjUgMS44LTEuOCA2LTEuOCA2LjNsLS41IC41Yy0xMC4zIDYuOS0yOC41LTIuNS0yNS43LTE4LjYgMS45LTEwLjkgMTQuNC0xOC45IDI4LjgtOS45bC4zIC41YzAgMS4xLS4zIDMuNC0uMyA1LjN6bTUuOC04Ny43bDAtNi42Yy43IDAgMTkuNiAzLjMgMjcuOCA3LjNsLTEuNiAxNy41czEwLjItOS40IDE1LjQtMTAuN2M1LjItMS42IDE0LjkgNy4zIDE0LjkgNy4zbC0xMS4zIDExLjNjLTEyLjEtNi40LTE5LjYtLjEtMjAuNyAuOC01LjMgMzguNy04LjYgNDIuMiA0LjQgNDYuMWwtLjUgNC43Yy0xNy42LTQuMy0xOC41LTQuNS0zNi45LTcuM2wuOC00LjdjNy4zIDAgNy41LTUuMyA3LjYtNi44IDAgMCA1LTUzLjIgNS01NS4zIDAtMi45LTUtMy43LTUtMy43em0xMSAxMTQuNGMtOC4xLTIuMS0xNC4xLTExLTEwLjctMjAuNyAzLjEtOS40IDEyLjMtMTIuMyAxOC45LTEwLjIgOS4yIDIuNiAxMi44IDExLjggMTAuNyAxOS40LTIuNiA4LjktOS40IDEzLjktMTguOSAxMS41em00Mi4yIDkuN2MtMi40LS41LTcuMS0yLjQtOC42LTIuOWwwLS4zIDEuNi0xLjhjLjYtOC4yIC42LTcuMyAuMy03LjYtNC44LTEuOC02LjctMi40LTcuMS0yLjQtMS4zIDEuOC0yLjkgNC41LTMuNyA1LjVsLS44IDMuNCAwIC4zYy0xLjMtLjMtMy45LTEuMy02LTEuNmwwLS4zIDIuNi0xLjhjMy40LTQuNyAxMC0xNC4xIDEzLjktMjAuMmwwLTIuMSAuNS0uM2MyLjEgLjggNS41IDIuMSA3LjYgMi45IC41IC41IC4yLTEuOS0xIDI1LjEtLjIgMS44IDAgMi42IC44IDMuOXptLTQuNy04OS44YzExLjMtMTguMyAzMC44LTE2LjIgMzQtMy40bDcuNi0yNi4yYzIuMy02LjItMi44LTkuOS00LjUtMTEuM2wxLjgtMy43YzEyLjIgMTAuNCAxNi40IDE0IDIyLjUgMjAuNC0yNS45IDczLjEtMzAuOCA4MC44LTI0LjYgODQuM2wtMS44IDQuNGMtNi40LTMuMy04LjktNC40LTE3LjgtOC42bDIuMS02LjhjLS4zLS4zLTMuOSAzLjktOS43IDMuNy0xOS4xLTEuMy0yMi45LTMxLjctOS43LTUyLjl6bTI5LjMgNzkuM2MwLTUuNy02LjMtNy45LTcuOS01LjItMS4zIDIuMSAxIDUgMi45IDguNCAxLjYgMi42IDIuNiA2LjMgMSA5LjQtMi42IDYuMy0xMi40IDUuMy0xNS40LS44IDAtLjctLjMgLjEgMS44LTQuN2wuOC0uM2MtLjYgNS43IDYuMSA5LjYgOC40IDUgMS0yLjEtLjUtNS41LTIuMS04LjQtMS42LTIuNi0zLjctNi4zLTEuOC05LjcgMi43LTUuMSAxMS4zLTQuNSAxNC43IDIuNGwwIC41LTIuNCAzLjR6bTIxLjIgMTMuNGMtMi0zLjMtLjktMi4xLTQuNS00LjdsLS4zIDBjLTIuNCA0LjItNS44IDEwLjUtOC42IDE2LjItMS4zIDIuNC0xIDMuNC0uOCAzLjlsLS4zIC4zLTUuOC00LjQgLjMtLjMgMi4xLTEuM2MzLjEtNS44IDYuNi0xMi4xIDkuMi0xN2wwLS4zYy0yLjYtMi0xLjItMS41LTYtMS44bDAtLjMgMy4xLTMuNCAuMyAwYzMuNyAyLjQgMTAgNi44IDEyLjMgOC45bC4zIC4zLTEuMyAzLjl6TTU3NS44IDI3NmwtMi45LTIuOWMuOC0yLjQgMS44LTUgMi4xLTcuNiAuNy05LjctMTEuNS0xMS44LTExLjUtNSAwIDUgNy45IDE5LjQgNy45IDI3LjggMCAxMC4yLTUuOCAxNS43LTEzLjkgMTYuNS04LjQgLjgtMjAuMi0xMC41LTIwLjItMTAuNWw1LTE0LjQgMi45IDIuMWMtMyAxNy44IDE3LjcgMjAuNCAxMy4zIDUuMi0xLjEtNC0xOC43LTM0LjIgMi4xLTM4LjIgMTMuNi0yLjQgMjMgMTYuNSAyMyAxNi41TDU3NS44IDI3NnptMzUuNi0xMC4yYy0xMS0zMC40LTYwLjUtMTI3LjUtMTkyLTEyOS42LTUzLjQtMS05NC4zIDE1LjQtMTMyLjggMzhsODUuNi05LjItOTEuNCAyMC43IDI1LjEgMTkuNi0zLjktMTYuNWM3LjUtMS43IDM5LjEtOC41IDY2LjgtOC45bC0yMi4zIDgwLjRjMTMuNi0uNyAxOS05IDE5LjYtMjIuOGw1LTEgLjMgMjYuN2MtMjIuNSAzLjItMzcuMyA2LjctNDkuNSA5LjlsMTMuMS00My4yLTYxLjUtMzYuNyAyLjQgOC4xIDEwLjIgNWM2LjMgMTguNiAxOS40IDU2LjYgMjAuNCA1OC43IDIgNC4zIDMuMiA1LjggMTIgNC41bDEuMSA1Yy0xNi4xIDQuOS0yMy43IDcuNi0zOSAxNC40bC0yLjQtNC43YzQuNC0yLjkgOC43LTMuOSA1LjUtMTIuOC0yMy43LTYyLjUtMjEuNS01OC4xLTIyLjgtNTkuNGwyLjQtNC40IDMzLjUgNjcuM2MtMy44LTExLjkgMS43IDEuNy0zMy03OC44bC00MS45IDg4LjUgNC43LTEzLjktMzUuOS00Mi4yIDI3LjggOTMuNS0xMS44IDguNGMtMTExLjktMTAxLjctMTA1LjgtOTguNC0xMTMuNy05OC43LTUuNS0uMy0xMy42IDUuNS0xMy42IDUuNWwtNS02YzMwLjYtMjMuNSAzMS42LTI0LjMgNTguNC00Mi43bDQuMiA3LjFzLTUuOCA0LjItNy45IDcuMWMtNS45IDkuMyAxLjcgMTMuMyA2MS44IDc1LjdsLTE4LjgtNTguOSAzOS44LTEwLjIgMjUuNyAzMC42IDQuNC0xMi4zLTUtMjQuNiAxMy4xLTMuNCAuNSAzLjEgMy43LTEwLjUtOTQuMyAyOS4zIDExLjMtNS0xMy42LTQyLjQgMTcuMy05LjIgMzAuMSAzNi4xIDI4LjUtMTMuMWMtMS40LTcuNS0yLjUtMTQuNS00LjctMTkuNmwxNy4zIDEzLjkgNC43LTIuMS01OS4yLTQyLjcgMjMuMSAxMS41YzE5LTYuMSAyNS4yLTcuNSAzMi4yLTkuN2wyLjYgMTFjLTEyLjYgMTIuNiAxLjQgMTYuOCA2LjUgMTkuNGwtMTMuNi02MSAxMiAyOC4zYzQuMi0xLjMgNy4zLTIuMSA3LjMtMi4xbDIuNiA4LjZzLTMuMSAxLTYuMyAyLjFsOC45IDIxIDMzLjgtNjUuNy0yMC43IDYxYzQyLjQtMjQuMSA4MS40LTM2LjcgMTMyLTM1LjkgNjcgMSAxNjcuMyA0MC44IDE5OS44IDEzOS44IC44IDIuMSAwIDIuNi0uOCAuM3ptLTQwOC0xMTMuNHMxLjgtLjUgNC4yLTEuM2w5LjQgNy42Yy0uNCAwLTMuNC0uMy0xMS4zIDIuNGwtMi40LTguNnptMTQzLjggMzguNWMtMS42LS42LTI2LjUtNC44LTMzLjMgMjAuN2wyMS43IDE3IDExLjUtMzcuN3pNMzE4LjQgNjcuMWMtNTguNCAwLTEwNi4xIDEyLTExNSAxNC40bDAgLjhjOC40IDIuMSAxNC40IDQuMiAyMS4yIDExLjhsMS42IC4zYzYuNi0xLjggNDktMTMuOSAxMTAuMi0xMy45IDE4MC4yIDAgMzAxLjcgMTE2LjggMzAxLjcgMjIzLjRsMCAxMGMwIDEuMyAuOCAyLjYgMS4xIC41IC41LTIuMSAuOC04LjYgLjgtMTkuNiAuMy04My44LTk2LjYtMjI3LjYtMzIxLjYtMjI3LjZ6TTUyOS41IDIzNi44YzEuMy01LjggMC0xMi4zLTcuMy0xMy4xLTkuNi0xLjEtMTYuMSAyMy44LTE3IDMzLjUtLjggNS41LTEuMyAxNC45IDYgMTQuOSA0LjcgMCA5LjctLjkgMTguMy0zNS40ek00NjggMjc5LjdjLTIuNi0uOC05LjQtLjgtMTIuNiAxMC41LTEuOCA2LjggLjUgMTMuNCA2IDE0LjcgMy43IDEuMSA4LjkgLjUgMTEuOC0xMC43IDIuNi05LjktMS44LTEzLjYtNS4yLTE0LjR6bTIzIDIxYzEuOCAuNSAzLjEgMSA1LjggMS44IDAtMS44IC41LTguNCAuOC0xMi4xLTEgMS4zLTUuNSA4LjEtNi42IDEwbDAgLjN6Il19LEZvcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJjcmVhdGl2ZS1jb21tb25zLW5kIixpY29uOls1MTIsNTEyLFtdLCJmNGViIiwiTTI1NS42IDhDMzk3LjQgOCA1MDQgMTE4LjEgNTA0IDI1NiA1MDQgNDAzLjEgMzg1LjUgNTA0IDI1NS42IDUwNCAxMjEuNiA1MDQgOCAzOTQuNSA4IDI1NiA4IDEyMy4xIDExMi43IDggMjU1LjYgOHptLjggNDQuN2MtMTE4LjIgMC0yMDMuNyA5Ny45LTIwMy43IDIwMy4zIDAgMTA5LjggOTEuMiAyMDIuOCAyMDMuNyAyMDIuOCAxMDMuMiAwIDIwMi44LTgxLjEgMjAyLjgtMjAyLjggLjEtMTEzLjgtOTAuMi0yMDMuMy0yMDIuOC0yMDMuM3ptOTQgMTQ0LjNsMCA0Mi41LTE4MC4zIDAgMC00Mi41IDE4MC4zIDB6bTAgNzkuOGwwIDQyLjUtMTgwLjMgMCAwLTQyLjUgMTgwLjMgMHoiXX0sT29yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InVzcHMiLGljb246WzUxMiw1MTIsW10sImY3ZTEiLCJNNDI4LjMgMjQxLjdjMjUuOC00MS4zIDE1LjItNDguOC0xMS43LTQ4LjhsLTI3IDBjLS4xIDAtMS41LTEuNC0xMC45IDgtMTEuMiA1LjYtMzcuOSA2LjMtMzcuOSA4LjcgMCA0LjUgNzAuMy0zLjEgODguMSAwIDkuNSAxLjUtMS41IDIwLjQtNC40IDMyLS41IDQuNSAyLjQgMi4zIDMuOCAuMXpNMzE2LjIgMjY0LjNjNjQtMjEuMyA5Ny4zLTIzLjkgMTAyLTI2LjIgNC40LTIuOS00LjQtNi42LTI2LjItNS44LTUxLjcgMi4yLTEzNy42IDM3LjEtMTcyLjYgNTMuOWwtMzAuNy05My4zIDE5Ni42IDBjLTIuNy0yOC4yLTE1Mi45LTIyLjYtMzM3LjktMjIuNkwtNSA0MTUuOGMxOTYuNC05Ny4zIDI1OC45LTEzMC4zIDMyMS4yLTE1MS41ek02Mi43IDk2YzI1My4zIDUzLjcgMzMwIDY1LjcgMzMyLjEgODUuMiAzNi40IDAgNDUuOSAwIDUyLjQgNi42IDIxLjEgMTkuNy0xNC42IDY3LjctMTQuNiA2Ny43LTQuNCAyLjktNDA2LjQgMTYwLjItNDA2LjQgMTYwLjJMNDQ5LjMgNDE1LjcgNTE3IDk2IDYyLjcgOTZ6Il19LFJvcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJzcXVhcmUtbGV0dGVyYm94ZCIsaWNvbjpbNDQ4LDUxMixbXSwiZTYyZSIsIk0zODQgMzJjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAzMjBjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDk2QzAgNjAuNyAyOC43IDMyIDY0IDMybDMyMCAwek0xMDUuMSAxODdDNjYuNCAxODcgMzUgMjE4LjMgMzUgMjU3czMxLjQgNzAgNzAuMSA3MGMyNC44IDAgNDYuNS0xMi44IDU5LTMyLjJsLjUtLjctLjQtLjZjLTYuNS0xMC42LTEwLjItMjMuMS0xMC4yLTM2LjUgMC0xMy42IDMuOS0yNi4zIDEwLjYtMzcuMS0xMi40LTE5LjgtMzQuNC0zMi45LTU5LjUtMzIuOXpNMjI0IDE4N2MtMjQuOCAwLTQ2LjUgMTIuOC01OSAzMi4ybC0uNSAuNyAuNCAuNmM2LjUgMTAuNiAxMC4yIDIzLjEgMTAuMiAzNi41IDAgMTMuNi0zLjkgMjYuMy0xMC42IDM3LjEgMTIuNCAxOS43IDM0LjQgMzIuOSA1OS41IDMyLjkgMjQuOCAwIDQ2LjUtMTIuOCA1OS0zMi4ybC41LS43LS40LS42Yy02LjUtMTAuNi0xMC4yLTIzLjEtMTAuMi0zNi41IDAtMTMuNiAzLjktMjYuMyAxMC42LTM3LjEtMTIuNC0xOS43LTM0LjQtMzIuOS01OS41LTMyLjl6bTExOC45IDBjLTI0LjggMC00Ni41IDEyLjgtNTkgMzIuMmwtLjUgLjcgLjQgLjZjNi41IDEwLjYgMTAuMiAyMy4xIDEwLjIgMzYuNSAwIDEzLjYtMy45IDI2LjMtMTAuNiAzNy4xIDEyLjQgMTkuOCAzNC40IDMyLjkgNTkuNSAzMi45IDM4LjcgMCA3MC4xLTMxLjMgNzAuMS03MHMtMzEuNC03MC03MC4xLTcweiJdfSxCb3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToibWFuZGFsb3JpYW4iLGljb246WzM4NCw1MTIsW10sImY1MGYiLCJNMjAwLjYgNTExLjljLTEtMy4zLTEuNy0xNS44LTEuNC0yNC42IC42LTE1LjkgMS0yNC43IDEuNC0yOC44IC42LTYuMiAyLjktMjAuNyAzLjMtMjEuNCAuNi0xIC40LTI3LjktLjItMzMuMS0uMy0yLjYtLjYtMTEuOS0uNy0yMC43LS4xLTE2LjUtLjUtMjAuMS0yLjctMjQuOC0xLjEtMi4zLTEuMi0zLjgtMS0xMS40IC4yLTQuMiAuMS04LjUtLjMtMTIuNy0yLTEzLTMuNS0yNy43LTMuMi0zMy45cy40LTcuMSAyLjEtOS43YzMuMS00LjcgNi41LTE0IDguNi0yMy4zIDIuMy05LjkgMy45LTE3LjIgNC42LTIwLjcgMS4xLTUuMSAyLjYtMTAuMSA0LjQtMTUuMSAyLjMtNi4yIDIuNS0xNS40IC40LTE1LjQtLjMgMC0xLjQgMS4yLTIuNCAyLjdzLTQuOCA0LjgtOC4zIDcuNGMtOC40IDYuMS0xMS43IDkuNC0xMi43IDEyLjZzLTEgNy4yLS4yIDcuOGMuMyAuMiAxLjMgMi40IDIuMSA0LjkgMS42IDUgMS45IDEwLjMgLjcgMTUuNC0uNCAxLjgtMSA1LjUtMS41IDguMnMtMSA2LjUtMS4zIDguMmMtLjIgMS41LS43IDMtMS41IDQuMy0xIDEtMS4xIC45LTIuMS0uNS0uNy0xLjUtMS4yLTMuMS0xLjQtNC43LS4yLTEuNy0xLjYtNy4xLTMuMS0xMS45LTMuMy0xMC45LTMuNS0xNi4yLTEtMjEgLjgtMS40IDEuNC0zIDEuNy00LjYgMC0yLjQtMi4yLTUuMy03LjQtOS45LTctNi4yLTguNi03LjktMTAuMi0xMS4zLTEuNy0zLjYtMy4xLTQuMS00LjUtMS41LTEuOCAzLTIuNiA5LjEtMyAyMmwtLjMgMTIuMiAyIDIuMmMzLjIgMy43IDEyLjEgMTYuNSAxMy44IDE5LjggMy40IDYuNyA0LjMgMTEuNyA0LjQgMjMuNnMxIDIyLjggMiAyNC43Yy40IC43IC41IDEuNCAuMyAxLjVzLjQgMi4xIDEuMyA0LjNjMSAyLjkgMS43IDUuOSAyLjEgOSAuNCAzLjUgLjkgNyAxLjcgMTAuNCAyLjIgOS42IDIuOCAxNC4xIDIuNCAyMC4xLS4yIDMuMy0uNSAxMS4xLS43IDE3LjMtMS4zIDQxLjgtMS44IDU4LTIgNjEuMi0uMSAyLS40IDExLjUtLjYgMjEuMS0uNCAxNi4zLTEuMyAyNy40LTIuNCAyOC42LS42IC43LTguMS00LjktMTIuNS05LjUtMy44LTMuOS00LTQuOC0yLjgtOS45IC43LTMgMi4zLTE4LjMgMy4zLTMyLjYgLjQtNC44IC44LTEwLjUgMS0xMi43IC44LTkuNCAxLjctMjAuMyAyLjYtMzQuOCAuNi04LjUgMS4zLTE2LjQgMS43LTE3LjdzLjktOS45IDEuMS0xOS4xbC40LTE2LjgtMi4zLTQuM2MtMS43LTMuMy00LjktNi45LTEzLjItMTUuMy02LTYuMS0xMS44LTEyLjMtMTIuOS0xMy44bC0yLTIuOCAuOC0xMC45YzEuMS0xNS43IDEuMS00OC42IDAtNTkuMWwtLjktOC43LTMuMy00LjVjLTUuOS04LjEtNS44LTcuNy02LjItMzMuMy0uMS02LjEtLjQtMTEuNS0uNi0xMi4xLS44LTEuOS0zLTIuNy04LjUtMy04LjktLjYtMTEtMS45LTIzLjgtMTQuNi02LjItNi0xMi4zLTEyLTEzLjgtMTMuMi0yLjgtMi40LTIuOC0yLS42LTkuNmwxLjQtNC42LTEuNy0zYy0uOC0xLjQtMS42LTIuOC0yLjYtNC4xLTEuMy0xLjUtNS41LTEwLjktNi0xMy41LS4yLS43LS4yLTEuNC0uMS0yLjFzLjUtMS4zIC45LTEuOGMyLjItMi45IDMuNC01LjcgNC41LTEwLjcgMi4zLTExLjIgNy43LTI2LjEgMTAuNi0yOS4yIDMuMi0zLjUgNy43LTEgOS40IDUgMS4zIDQuOCAxLjQgOS44IC4xIDE4LjYtLjUgMy43LS45IDcuNC0xIDExLjEgMCA0IC4yIDQuNyAyLjMgNy40IDMuMyA0LjQgNy43IDcuNCAxNS4yIDEwLjUgMS43IC43IDMuMyAxLjcgNC43IDIuOCAxMS4yIDEwLjcgMTguNiAxNi4yIDIyLjkgMTYuOSA1LjIgLjggOCA0LjUgMTAgMTMuNCAxLjMgNS43IDQgMTEuMSA1LjUgMTEuMSAxLjItLjIgMi4zLS43IDMuMy0xLjQgMi0xLjIgMi4yLTEuNyAyLjItNC4yLS4zLTYtLjktMTEuOS0yLTE3LjgtLjQtMS43LS44LTQuMS0uOS01LjRzLS42LTMuOC0xLTUuN2MtMi42LTExLjItMy42LTE1LjUtNC4xLTE2LTEuNi0yLTQuMS0xMC4yLTQuOS0xNS45LTEuNi0xMS4xLTQtMTQuMi0xMi45LTE3LjQtNC45LTEuOC05LjQtNC41LTEzLjMtNy45LTEuMi0xLTQtMy4yLTYuNC01LjFzLTQuNC0zLjUtNC42LTMuOGMtLjgtLjctMS43LTEuNC0yLjctMi02LjItNC4yLTguOC03LTExLjMtMTJsLTIuNC01Yy0uMS04LjctLjMtMTcuMy0uNC0yNmw2LjktNi42YzQtMy44IDguNS03LjQgMTAuNi04LjQgMy4zLTEuNyA0LjQtMS45IDExLjQtMiA4LjUtLjIgMTAuMSAwIDExLjcgMS42czEuNCA2LjQtLjMgOC41Yy0uNiAuNy0xLjEgMS41LTEuMyAyLjMgMCAuNi0yLjYgNC45LTUuNCA5LTEuMSAyLjItMS45IDQuNS0yLjQgNi44IDIwLjQgMTMuNCAyMS42IDMuOCAxNC4xIDI5bDExLjQgMi41YzMuMS04LjcgNi41LTE3LjMgOC42LTI2LjIgLjMtNy42LTEyLTQuMi0xNS40LTguNy0yLjMtNS45IDMuMS0xNC4yIDYuMS0xOS4yIDEuNi0yLjMgNi42LTQuNyA4LjgtNC4xIC45IC4yIDQuMi0uNCA3LjQtMS4zIDIuNS0uOCA1LTEuMyA3LjUtMS43IDItLjIgNC4xLS43IDYtMS4zIDMuNy0xLjEgNC41LTEuMiA2LjMtLjQgMS45IC42IDMuOCAxLjEgNS44IDEuNCAyLjEgLjMgNC4xIC45IDYgMS45IDEuNiAuOSAzLjMgMS43IDUgMi4yIDIuNSAuNyAzIC42IDctMS43TDIyNiA1LjQgMjM2LjcgNWMxMC40LS40IDEwLjgtLjUgMTUuMy0yLjdMMjU2LjUgMCAyNTkgMS40YzEuOCAxIDMuMSAyLjcgNC45IDYgMi40IDQuNSAyLjQgNC42IDEuNCA3LjQtLjkgMi40LS45IDMuMy0uMSA2LjQgLjUgMiAxLjIgNCAyLjEgNS45IC42IDEuMyAxLjEgMi42IDEuMyA0IC4zIDQuMyAwIDUuMy0yLjQgNi45LTIuMiAxLjUtNyA3LjktNyA5LjMtLjIgMS0uNiAyLTEuMSAzLTUgMTEuNS02LjggMTMuNi0xNC4zIDE3LTkuMiA0LjItMTIuMyA1LjItMTYuMiA1LjItMy4xIDAtNCAuMi00LjUgMS4zLTEuMiAxLjQtMi41IDIuNy00LjEgMy43LTEuOCAxLjItMy4zIDIuOS00LjQgNC44LS41IDEuMi0xLjQgMi4yLTIuNSAyLjktLjkgLjQtMS44IDEtMi41IDEuNy0yLjIgMS45LTQuNiAzLjctNyA1LjQtMy4zIDIuMy02LjkgNS03LjkgNi0uNyAuNy0xLjUgMS4zLTIuNCAxLjctLjggLjQtMS42IC45LTIuMSAxLjYtMS4zIDEuNC0xLjUgMi4xLTEuMSA0LjYgLjMgMiAuOCA0IDEuNCA1LjkgMS4zIDMuOCAxLjMgNy45IDAgMTAuNnMtLjkgNi43IDEuNCA5LjZjMiAyLjYgMi4yIDQuNiAuNyA4LjgtLjggMi45LTEuMSA1LjktMS4xIDguOSAwIDQuOSAuMiA2LjMgMS41IDguNHMxLjggMi41IDMuMiAyLjNjMi0uMiAyLjMtMS4xIDQuNy0xMi4xIDIuMi0xMCAzLjctMTEuOSAxMy44LTE3LjEgMi45LTEuNSA3LjUtNCAxMC01LjRzNi44LTMuNyA5LjQtNC45YzUuOS0yLjYgMTEuMi02LjYgMTUuMi0xMS43IDcuMS04LjggMTAtMTYuMiAxMi44LTMzLjMgLjQtMi44IDEuMy01LjQgMi45LTcuNyAxLjQtMi4yIDIuNC00LjcgMi45LTcuMyAxLTUuMyAyLjktOS4xIDUuNi0xMS41IDQuNy00LjIgNi0xLjEgNC42IDEwLjktLjUgMy45LTEuMSAxMC4zLTEuNCAxNC40bC0uNiA3LjRjMyAyLjcgNS45IDUuNSA4LjkgOC4ybC4xIDguNGMuMSA0LjYgLjUgOS41IC45IDEwLjlsLjggMi41LTYuNCA2LjNjLTguNSA4LjMtMTIuOSAxMy45LTE2LjggMjEuNi0xLjggMy41LTMuNyA3LjEtNC40IDgtMi4yIDMuMS02LjUgMTMtOC44IDIwLjNsLTIuMyA3LjItNyA2LjVjLTMuOCAzLjYtOCA3LjItOS4yIDguMi0zIDIuMy00LjMgNS4xLTQuMyAxMC0uMSAyLjUgLjQgNSAxLjYgNy4zIC44IDEuNiAxLjUgMy4yIDIuMSA0LjggLjMgMSAuOSAyIDEuNiAyLjkgMS40IDEuNiAxLjkgMTYuMSAuOCAyMy4yLS43IDQuNS0zLjYgMTItNC43IDEyLTEuOCAwLTQuMSA5LjMtNS4xIDIwLjctLjIgMi0uNiA1LjktMSA4LjdzLTEgMTAtMS40IDE2Yy0uOCAxMi4yLS4yIDE4LjggMiAyMy4yIDMuNCA2LjcgLjUgMTIuNy0xMSAyMi44bC00IDMuNSAuMSA1LjJjLjEgMyAuNCA2IDEuMSA4LjkgNC42IDE2IDQuNyAxNi45IDQuNCAzNy4xLS41IDI2LjQtLjMgNDAuMyAuNiA0NC4yIC41IDIuMyAuOSA0LjYgMS4xIDcgLjIgMiAuNyA1LjMgMS4xIDcuNCAuNSAyLjMgLjggMTEgLjggMjIuN2wwIDE5LjEtMS44IDIuNmMtMi43IDMuOS0xNS4xIDEzLjUtMTUuNSAxMi4zbC4xIDB6bTI5LjUtNDUuMWMtLjItLjMtLjMtNi45LS4zLTE0LjYgMC0xNC4xLS45LTI3LjUtMi4zLTM0LjQtLjQtMi0uOC05LjctLjktMTcuMS0uMi0xMS45LTEuNC0yNC40LTIuNi0yNi40LS43LTEuMS0zLTE3LjctMy0yMS4zIDAtNC4yIDEtNiA1LjMtOS4xczQuOS0zLjEgNS41LS43Yy4zIDEuMSAxLjQgNS42IDIuNiAxMCAzLjkgMTUuMSA0LjEgMTYuMyA0IDIxLjctLjEgNS44LS4xIDYuMS0xLjcgMTcuNy0xIDcuMS0xLjIgMTIuNC0xIDI4LjQgLjIgMTkuNC0uNiAzNS43LTIgNDEuMy0uNyAyLjgtMi44IDUuNS0zLjQgNC40bC0uMSAwem0tNzEtMzcuNmMtLjgtMy42LTEuMy03LjItMS43LTEwLjhzLTEtNy4yLTEuNy0xMC44Yy0uNS0yLjEtLjktNC4zLTEtNi41LS4zLTMuMi0uOS03LjUtMS4zLTkuNS0xLTQuOC0zLjMtMTkuNC0zLjQtMjEuMSAwLS43LS4zLTQtLjctNy40LS43LTYuMi0uOC0yNy43LS4yLTI4LjMgMS0xIDYuNiAyLjggMTEuMyA3LjRsNS4zIDUuMy0uNCA2LjVjLS4yIDMuNi0uNiAxMC4yLS44IDE0LjgtLjUgMTMuMy0uNyA4LjctMS42IDI4LjQtLjggMTcuNC0xLjkgMzEuMy0yLjYgMzItLjEgLjEtLjIgLjEtLjIgLjJzLS4yIDAtLjMgMC0uMiAwLS4zLS4xLS4xLS4xLS4yLS4ybDAgMHpNNzIgMTYyLjZjMjEuMSAxMi44IDE3LjggMTQuMiAyOC41IDE3LjcgMTMgNC4zIDE4LjkgNy4xIDIzLjIgMTYuOS00My43IDM2LjEtNjkgNTcuOS03Ni43IDcwLjktMzEgNTItNiAxMDEuNiA2Mi44IDg3LjItMTQuMiAyOS4yLTc4IDI4LjYtOTguNy00LjktMjQuNy00MC0yMi4xLTExOC4zIDYxLTE4Ny43bDAgMHptMjEwLjggMTc5YzU2LjcgNi45IDgyLjMtMzcuNyA0Ni41LTg5LjIgMCAwLTI2LjktMjkuMy02NC4zLTY4IDMtMTUuNSA5LjUtMzIuMSAzMC42LTUzLjggODkuMiA2My41IDkyIDE0MS42IDkyLjUgMTQ5LjQgNC4zIDcwLjYtNzguNyA5MS4yLTEwNS4zIDYxLjdsMCAweiJdfSx0U2U9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic2xhY2siLGljb246WzQ0OCw1MTIsWzYyNDQ3LCJzbGFjay1oYXNoIl0sImYxOTgiLCJNOTQuMSAzMTUuMWMwIDI1LjktMjEuMiA0Ny4xLTQ3LjEgNDcuMVMwIDM0MSAwIDMxNS4xIDIxLjIgMjY4IDQ3LjEgMjY4bDQ3LjEgMCAwIDQ3LjF6bTIzLjcgMGMwLTI1LjkgMjEuMi00Ny4xIDQ3LjEtNDcuMVMyMTIgMjg5LjIgMjEyIDMxNS4xbDAgMTE3LjhjMCAyNS45LTIxLjIgNDcuMS00Ny4xIDQ3LjFzLTQ3LjEtMjEuMi00Ny4xLTQ3LjFsMC0xMTcuOHptNDcuMS0xODljLTI1LjkgMC00Ny4xLTIxLjItNDcuMS00Ny4xUzEzOSAzMiAxNjQuOSAzMiAyMTIgNTMuMiAyMTIgNzkuMWwwIDQ3LjEtNDcuMSAwem0wIDIzLjdjMjUuOSAwIDQ3LjEgMjEuMiA0Ny4xIDQ3LjFTMTkwLjggMjQ0IDE2NC45IDI0NEw0Ny4xIDI0NEMyMS4yIDI0NCAwIDIyMi44IDAgMTk2LjlzMjEuMi00Ny4xIDQ3LjEtNDcuMWwxMTcuOCAwem0xODkgNDcuMWMwLTI1LjkgMjEuMi00Ny4xIDQ3LjEtNDcuMVM0NDggMTcxIDQ0OCAxOTYuOSA0MjYuOCAyNDQgNDAwLjkgMjQ0bC00Ny4xIDAgMC00Ny4xem0tMjMuNyAwYzAgMjUuOS0yMS4yIDQ3LjEtNDcuMSA0Ny4xUzIzNiAyMjIuOCAyMzYgMTk2LjlsMC0xMTcuOEMyMzYgNTMuMiAyNTcuMiAzMiAyODMuMSAzMnM0Ny4xIDIxLjIgNDcuMSA0Ny4xbDAgMTE3Ljh6bS00Ny4xIDE4OWMyNS45IDAgNDcuMSAyMS4yIDQ3LjEgNDcuMVMzMDkgNDgwIDI4My4xIDQ4MCAyMzYgNDU4LjggMjM2IDQzMi45bDAtNDcuMSA0Ny4xIDB6bTAtMjMuN2MtMjUuOSAwLTQ3LjEtMjEuMi00Ny4xLTQ3LjFTMjU3LjIgMjY4IDI4My4xIDI2OGwxMTcuOCAwYzI1LjkgMCA0Ny4xIDIxLjIgNDcuMSA0Ny4xcy0yMS4yIDQ3LjEtNDcuMSA0Ny4xbC0xMTcuOCAweiJdfSxIc2U9dFNlLEhvcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJhbmdlbGxpc3QiLGljb246WzM4NCw1MTIsW10sImYyMDkiLCJNMzE1LjYgMjE1LjRjMTEuNy0zMi42IDQ1LjQtMTI2LjkgNDUuNC0xNTcuMSAwLTI2LjYtMTUuNy00OC45LTQzLjctNDguOS00NC42IDAtODQuNiAxMzEuNy05Ny4xIDE2My4xLTkuNy0yOC41LTU1LjEtMTcyLjUtOTUuMS0xNzIuNS0zMS4xIDAtNDUuNyAyMi45LTQ1LjcgNTEuNyAwIDM1LjMgMzQuMiAxMjYuOCA0Ni42IDE2Mi02LjMtMi4zLTEzLjEtNC4zLTIwLTQuMy0yMy40IDAtNDguMyAyOS4xLTQ4LjMgNTIuNiAwIDguOSA0LjkgMjEuNCA4IDI5LjctMzYuOSAxMC01MS4xIDM0LjYtNTEuMSA3MS43LS4xIDcyLjIgNjguMyAxNDguNiAxNjQuNSAxNDguNiAxMTggMCAxOTEuNC04OC42IDE5MS40LTIwMi45IDAtNDMuMS02LjktODItNTQuOS05My43ek0yODAuMiAxMDhjNC0xMi4zIDIxLjEtNjQuMyAzNy4xLTY0LjMgOC42IDAgMTAuOSA4LjkgMTAuOSAxNiAwIDE5LjEtMzguNiAxMjQuNi00Ny4xIDE0OGwtMzQtNiAzMy4xLTkzLjd6TTExMC44IDQ4LjNjMC0xMS45IDE0LjUtNDUuNyA0Ni4zIDQ3LjFsMzQuNiAxMDAuM2MtMTUuNi0xLjMtMjcuNy0zLTM1LjQgMS40LTEwLjktMjguOC00NS41LTExOS43LTQ1LjUtMTQ4Ljh6TTEwOC41IDI0NGMyOS4zIDAgNjcuMSA5NC42IDY3LjEgMTA3LjQgMCA1LjEtNC45IDExLjQtMTAuNiAxMS40LTIwLjkgMC03Ni45LTc2LjktNzYuOS05Ny43IC4xLTcuNyAxMi43LTIxLjEgMjAuNC0yMS4xek0yOTIuOCA0MzAuM2MtMjkuMSAzMi02Ni4zIDQ4LjYtMTA5LjcgNDguNi01OS40IDAtMTA2LjMtMzIuNi0xMjguOS04OC4zLTE3LjEtNDMuNCAzLjgtNjguMyAyMC42LTY4LjMgMTEuNCAwIDU0LjMgNjAuMyA1NC4zIDczLjEgMCA0LjktNy43IDguMy0xMS43IDguMy0xNi4xIDAtMjIuNC0xNS41LTUxLjEtNTEuNC0yOS43IDI5LjcgMjAuNSA4Ni45IDU4LjMgODYuOSAyNi4xIDAgNDMuMS0yNC4yIDM4LTQyIDMuNyAwIDguMyAuMyAxMS43LS42IDEuMSAyNy4xIDkuMSA1OS40IDQxLjcgNjEuNyAwLS45IDItNy4xIDItNy40IDAtMTcuNC0xMC42LTMyLjYtMTAuNi01MC4zIDAtMjguMyAyMS43LTU1LjcgNDMuNy03MS43IDgtNiAxNy43LTkuNyAyNy4xLTEzLjEgOS43LTMuNyAyMC04IDI3LjQtMTUuNC0xLjEtMTEuMi01LjctMjEuMS0xNi45LTIxLjEtMjcuNyAwLTEyMC42IDQtMTIwLjYtMzkuNyAwLTYuNyAuMS0xMy4xIDE3LjQtMTMuMSAzMi4zIDAgMTE0LjMgOCAxMzguMyAyOS4xIDE4LjEgMTYuMSAyNC4zIDExMy4yLTMxIDE3NC43em0tOTguNi0xMjZjOS43IDMuMSAxOS43IDQgMjkuNyA2LTcuNCA1LjQtMTQgMTItMjAuMyAxOS4xLTIuOC04LjUtNi4yLTE2LjgtOS40LTI1LjF6Il19LHFvcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJhbmRyb2lkIixpY29uOls1NzYsNTEyLFtdLCJmMTdiIiwiTTQyMC41IDI1My45YTI0IDI0IDAgMSAxIDAgNDggMjQgMjQgMCAxIDEgMC00OHptLTI2NS4xIDBhMjQgMjQgMCAxIDEgMCA0OCAyNCAyNCAwIDEgMSAwLTQ4em0yNzMuNy05Ni41bDQ3LjktODNjLjgtMS4xIDEuMy0yLjQgMS41LTMuOHMuMi0yLjctLjEtNC4xLS45LTIuNi0xLjctMy43LTEuOC0yLTMtMi43LTIuNS0xLjEtMy45LTEuMy0yLjcgMC00IC40LTIuNSAxLjEtMy42IDEuOS0xLjkgMi0yLjUgMy4ybC00OC41IDg0LjFjLTM4LjgtMTcuNC04MC44LTI2LjQtMTIzLjMtMjYuNHMtODQuNSA5LTEyMy4zIDI2LjRMMTE2LjIgNjQuNGMtLjYtMS4yLTEuNS0yLjMtMi41LTMuMnMtMi4zLTEuNS0zLjYtMS45LTIuNy0uNS00LS40LTIuNyAuNi0zLjkgMS4zLTIuMiAxLjYtMyAyLjctMS40IDIuNC0xLjcgMy43LS4zIDIuNy0uMSA0LjEgLjggMi42IDEuNSAzLjhsNDcuOSA4M0M2NC41IDIwMi4yIDguMiAyODUuNSAwIDM4NGw1NzYgMGMtOC4yLTk4LjUtNjQuNS0xODEuOC0xNDYuOS0yMjYuNnoiXX0sam9yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Im1lZXR1cCIsaWNvbjpbNTc2LDUxMixbXSwiZjJlMCIsIk0xMzEuMSA0MTQuM2MxLjEgNS43LTIuMyAxMS4xLTggMTIuMy01LjQgMS4xLTEwLjktMi4zLTEyLTgtMS4xLTUuNCAyLjMtMTEuMSA3LjctMTIuM3MxMS4xIDIuMyAxMi4zIDh6bTE0My4xIDcxLjRjLTYuMyA0LjYtOCAxMy40LTMuNyAyMCA0LjYgNi42IDEzLjQgOC4zIDIwIDMuNyA2LjMtNC42IDgtMTMuNCAzLjQtMjAtNC4yLTYuNS0xMy4xLTguMy0xOS43LTMuN3ptLTg2LTQ2Mi4zYTExLjggMTEuOCAwIDEgMCAtNC45LTIzIDExLjggMTEuOCAwIDEgMCA0LjkgMjN6TTY2LjUgMjI2LjNhMjIuMiAyMi4yIDAgMSAwIC0yNC43IDM2LjkgMjIuMiAyMi4yIDAgMSAwIDI0LjctMzYuOXptMjcyLTE3MC45YTIyLjEgMjIuMSAwIDEgMCAtMjIuNC0zOCAyMi4xIDIyLjEgMCAxIDAgMjIuNCAzOHptLTE5MS4xIDU4YTE2LjkgMTYuOSAwIDEgMCAtMTguOC0yOCAxNi45IDE2LjkgMCAxIDAgMTguOCAyOHptMzcyLjMgMTU2Yy03LjQgMS43LTEyLjMgOS4xLTEwLjYgMTYuOSAxLjQgNy40IDguOSAxMi4zIDE2LjMgMTAuNiA3LjQtMS40IDEyLjMtOC45IDEwLjYtMTYuNi0xLjUtNy40LTguOS0xMi4zLTE2LjMtMTAuOXptMzkuNy01Ni44YTEwLjEgMTAuMSAwIDEgMCAtMTkuOCA0LjMgMTAuMSAxMC4xIDAgMSAwIDE5LjgtNC4zem0tODAuMy03My43YTE4LjggMTguOCAwIDEgMCAyMC43IDMxLjMgMTguOCAxOC44IDAgMSAwIC0yMC43LTMxLjN6bS02LjMgMTM5LjRjMjYuMyA0My4xIDE1LjEgMTAwLTI2LjMgMTI5LjEtMTcuNCAxMi4zLTM3LjEgMTcuNy01Ni45IDE3LjEtMTIgNDcuMS02OS40IDY0LjYtMTA1LjEgMzIuNi0xLjEgLjktMi42IDEuNy0zLjcgMi45LTM5LjEgMjcuMS05Mi4zIDE3LjQtMTE5LjQtMjIuMy05LjctMTQuMy0xNC42LTMwLjYtMTUuMS00Ni45LTY1LjQtMTAuOS05MC05NC00MS4xLTEzOS43LTI4LjMtNDYuOSAuNi0xMDcuNCA1My40LTExNC45IDI1LjEtNjYuMiAxMDcuNi05Ny42IDE2My42LTU0LjIgNjcuNC0yMi4zIDEzNi4zIDI5LjQgMTMwLjkgMTAxLjEgNDEuMSAxMi42IDUyLjggNjYuOSAxOS43IDk1LjJ6bS03MCA3NC4zYy0zLjEtMjAuNi00MC45LTQuNi00My4xLTI3LjEtMy4xLTMyIDQzLjctMTAxLjEgNDAtMTI4LTMuNC0yNC0xOS40LTI5LjEtMzMuNC0yOS40LTEzLjQtLjMtMTYuOSAyLTIxLjQgNC42LTIuOSAxLjctNi42IDQuOS0xMS43LS4zLTYuMy02LTExLjEtMTEuNy0xOS40LTEyLjktMTIuMy0yLTE3LjcgMi0yNi42IDkuNy0zLjQgMi45LTEyIDEyLjktMjAgOS4xLTMuNC0xLjctMTUuNC03LjctMjQtMTEuNC0xNi4zLTcuMS00MCA0LjYtNDguNiAyMC0xMi45IDIyLjktMzggMTEzLjEtNDEuNyAxMjUuMS04LjYgMjYuNiAxMC45IDQ4LjYgMzYuOSA0Ny4xIDExLjEtLjYgMTguMy00LjYgMjUuNC0xNy40IDQtNy40IDQxLjctMTA3LjcgNDQuNi0xMTIuNiAyLTMuNCA4LjktOCAxNC42LTUuMSA1LjcgMy4xIDYuOSA5LjQgNiAxNS4xLTEuMSA5LjctMjggNzAuOS0yOC45IDc3LjctMy40IDIyLjkgMjYuOSAyNi42IDM4LjYgNCAzLjctNy4xIDQ1LjctOTIuNiA0OS40LTk4LjMgNC4zLTYuMyA3LjQtOC4zIDExLjctOCAzLjEgMCA4LjMgLjkgNy4xIDEwLjktMS40IDkuNC0zNS4xIDcyLjMtMzguOSA4Ny43LTQuNiAyMC42IDYuNiA0MS40IDI0LjkgNTAuNiAxMS40IDUuNyA2Mi41IDE1LjcgNTguNS0xMS4xem01LjcgOTIuM2EyMy4zIDIzLjMgMCAxIDAgMjYuMiAzOC40IDIzLjMgMjMuMyAwIDEgMCAtMjYuMi0zOC40eiJdfSxWb3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZm9udGljb25zLWZpIixpY29uOlszODQsNTEyLFtdLCJmM2EyIiwiTTExNC40IDIyNGw5Mi40IDAtMTUuMiA1MS4yLTc2LjQgMCAwIDE1Ny44YzAgOC0yLjggOS4yIDQuNCAxMGw1OS42IDUuNiAwIDM0LjQtMTc5LjIgMCAwLTM1LjIgMjkuMi0yLjhjNy4yLS44IDkuMi0zLjIgOS4yLTEwLjhsMC0xNTUuOGMwLTMuMi00LTMuMi04LTMuMmwtMzAuNCAwIDAtNTEuMiAzOC40IDAgMC0yOC44YzAtNjggMzYuNC05NiAxMDYtOTYgNDYuOCAwIDg4LjggMTEuMiA4OC44IDcyLjRMMTYzLjYgMTgwYy40LTI1LjYtNi0zMS42LTIyLjQtMzEuNi0yNS4yIDAtMjYgMTMuNi0yNiAzNy42bDAgMzJjMCAzLjItNC44IDYtLjggNnpNMzg0IDQ4M2wtMTQwLjggMCAwLTM0LjQgMjgtMy42YzcuMi0uOCAxMC40LTIuNCAxMC40LTEwbDAtMTQ4YzAtNS42LTQtOS4yLTkuMi0xMC44bC0zMy4yLTguOCA5LjItNDAuNCAxMTAgMCAwIDIwOGMwIDgtMy42IDguOCA0IDEwbDIxLjYgMy42IDAgMzQuNHpNMzU0IDEzNS44bDEyLjQgNDUuNi0xMCAxMC00Mi44LTIyLjgtNDIuOCAyMi44LTEwLTEwIDEyLjQtNDUuNi0zMC0zNi40IDQuOC0xMCAzOCAwIDIxLjItMzguNCAxMi44IDAgMjEuMiAzOC40IDM4IDAgNC44IDEzLjItMzAgMzMuMnoiXX0sVW9yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InBhbGZlZCIsaWNvbjpbNTc2LDUxMixbXSwiZjNkOCIsIk0zODQuOSAxOTMuOWMwLTQ3LjQtNTUuMi00NC4yLTk1LjQtMjkuOC0xLjMgMzkuNC0yLjUgODAuNy0zIDExOS44IC43IDIuOCAyLjYgNi4yIDE1LjEgNi4yIDM2LjggMCA4My40LTQyLjggODMuMy05Ni4yek0xOTAuNCAyNjYuMWMuMiAwIDYuNS0yLjcgMTEuMi0yLjcgMjYuNiAwIDIwLjcgNDQuMS0xNC40IDQ0LjEtMjEuNSAwLTM3LjEtMTguMS0zNy4xLTQzIDAtNDIgNDIuOS05NS42IDEwMC43LTEyNi41IDEtMTIuNCAzLTIyIDEwLjUtMjguMiAxMS4yLTkgMjYuNi0zLjUgMjkuNSAxMS4xIDcyLjItMjIuMiAxMzUuMiAxIDEzNS4yIDcyIDAgNzcuOS03OS4zIDE1Mi42LTE0MC4xIDEzOC4yLS4xIDM5LjQgLjkgNzQuNCAyLjcgMTAwbDAgLjJjLjIgMy40IC42IDEyLjUtNS4zIDE5LjEtOS42IDEwLjYtMzMuNCAxMC0zNi40LTIyLjMtNC4xLTQ0LjQgLjItMjA2LjEgMS40LTI0Mi41LTIxLjUgMTUtNTguNSA1MC4zLTU4LjUgNzUuOSAuMiAyLjUgLjQgNCAuNiA0LjZ6TTggMTgxLjFzLS4xIDM3LjQgMzguNCAzNy40bDMwIDAgMjIuNCAyMTcuMnMwIDQ0LjMgNDQuNyA0NC4zbDI4OC45IDBzNDQuNy0uNCA0NC43LTQ0LjNsMjIuNC0yMTcuMiAzMCAwczM4LjQgMS4yIDM4LjQtMzcuNGMwIDAgLjEtMzcuNC0zOC40LTM3LjRsLTMwLjEgMGMtNy4zLTI1LjYtMzAuMi03NC4zLTExOS40LTc0LjNsLTI4IDAgMC0xOS4xcy0yLjctMTguNC0yMS4xLTE4LjRsLTg1LjggMFMyMjQgMzEuOSAyMjQgNTAuM2wwIDE5LjEtMjguMSAwcy0xMDUgNC4yLTEyMC41IDc0LjNsLTI5IDBTOCAxNDIuNSA4IDE4MS4xeiJdfSxXb3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToid3BiZWdpbm5lciIsaWNvbjpbNTEyLDUxMixbXSwiZjI5NyIsIk00NjMuMiAzMjIuNGM1Ni4yIDY0LjMgNC4yIDE1Ny42LTkxLjkgMTU3LjYtMzkuNiAwLTc4LjgtMTcuNy0xMDAuMS01MC02LjkgLjQtMjIuNyAuNC0yOS42IDAtMjEuNCAzMi40LTYwLjYgNTAtMTAwLjEgNTAtOTUuNSAwLTE0OC4zLTkzLTkxLjktMTU3LjYtNzkuMS0xMzEuOSAzMS4zLTI5MC40IDIwNi44LTI5MC40IDE3NS42IDAgMjg1LjkgMTU4LjYgMjA2LjggMjkwLjR6bS0zMzkuNi04M2w0MS41IDAgMC01OC4xLTQxLjUgMCAwIDU4LjF6bTIxNy4yIDg2LjFsMC0yMy44Yy02MC41IDIwLjktMTMyLjQgOS4yLTE4Ny42LTM0bC4yIDI0LjljNTEuMSA0Ni40IDEzMS43IDU3LjkgMTg3LjMgMzIuOXpNMTkwIDIzOS40bDE2Ni4xIDAgMC01OC4xLTE2Ni4xIDAgMCA1OC4xeiJdfSxHb3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZGlhc3BvcmEiLGljb246WzQ0OCw1MTIsW10sImY3OTEiLCJNMjE5LjcgMzU0LjZjLTEuNCAwLTg4IDExOS45LTg4LjcgMTE5LjlTNDQuNCA0MTQgNDQgNDEzLjMgMTMwLjYgMjg3LjUgMTMwLjYgMjg1LjhjMC0yLjItMTI5LjYtNDQtMTM3LjYtNDcuMS0xLjMtLjUgMzEuNC0xMDEuOCAzMS43LTEwMi4xIC42LS43IDE0NC40IDQ3IDE0NS41IDQ3IC40IDAgLjktLjYgMS0xLjMgLjQtMiAxLTE0OC42IDEuNy0xNDkuNiAuOC0xLjIgMTA0LjUtLjcgMTA1LjEtLjMgMS41IDEgMy41IDE1Ni4xIDYuMSAxNTYuMSAxLjQgMCAxMzguNy00NyAxMzkuMy00Ni4zIC44IC45IDMxLjkgMTAyLjIgMzEuNSAxMDIuNi0uOSAuOS0xNDAuMiA0Ny4xLTE0MC42IDQ4LjgtLjMgMS40IDgyLjggMTIyLjEgODIuNSAxMjIuOXMtODUuNSA2My41LTg2LjMgNjMuNWMtMS0uMi04OS0xMjUuNS05MC45LTEyNS41bDAgMHoiXX0sWW9yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InByb2R1Y3QtaHVudCIsaWNvbjpbNTEyLDUxMixbXSwiZjI4OCIsIk0zMjYuMyAyMTguOGMwIDIwLjUtMTYuNyAzNy4yLTM3LjIgMzcuMmwtNzAuMyAwIDAtNzQuNCA3MC4zIDBjMjAuNSAwIDM3LjIgMTYuNyAzNy4yIDM3LjJ6TTggMjU2YTI0OCAyNDggMCAxIDEgNDk2IDAgMjQ4IDI0OCAwIDEgMSAtNDk2IDB6bTM2Ny45LTM3LjJjMC00Ny45LTM4LjktODYuOC04Ni44LTg2LjhsLTExOS45IDAgMCAyNDggNDkuNiAwIDAtNzQuNCA3MC4zIDBjNDcuOSAwIDg2LjgtMzguOSA4Ni44LTg2Ljh6Il19LFpvcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJzcXVhcmUtdXB3b3JrIixpY29uOls0NDgsNTEyLFtdLCJlNjdjIiwiTTU2IDMybDMzNiAwYzMwLjkgMCA1NiAyNS4xIDU2IDU2bDAgMzM2YzAgMzAuOS0yNS4xIDU2LTU2IDU2TDU2IDQ4MGMtMzAuOSAwLTU2LTI1LjEtNTYtNTZMMCA4OEMwIDU3LjEgMjUuMSAzMiA1NiAzMnpNMjcwLjkgMjc0LjJjNi42LTUyLjkgMjUuOS02OS41IDUxLjQtNjkuNSAyNS4zIDAgNDQuOSAyMC4yIDQ0LjkgNDkuN3MtMTkuNyA0OS43LTQ0LjkgNDkuN2MtMjcuOSAwLTQ2LjMtMjEuNS01MS40LTI5Ljl6bS0yNi43LTQxLjhjLTguMi0xNS41LTE0LjMtMzYuMy0xOS4yLTU1LjZsLTYyLjkgMCAwIDc4LjFjMCAyOC40LTEyLjkgNDkuNC0zOC4yIDQ5LjRTODQuMSAyODMuNCA4NC4xIDI1NWwuMy03OC4xLTM2LjIgMCAwIDc4LjFjMCAyMi44IDcuNCA0My41IDIwLjkgNTguMiAxMy45IDE1LjIgMzIuOCAyMy4yIDU0LjggMjMuMiA0My43IDAgNzQuMi0zMy41IDc0LjItODEuNWwwLTUyLjVjNC42IDE3LjMgMTUuNCA1MC41IDM2LjIgNzkuN2wtMTkuMyAxMTAuNSAzNi44IDAgMTIuOC03OC40YzQuMiAzLjUgOC43IDYuNiAxMy40IDkuNCAxMi4zIDcuOCAyNi40IDEyLjIgNDAuOSAxMi42bDMuNCAwYzQ1LjEgMCA4MC45LTM0LjkgODAuOS04MS45cy0zNS45LTgyLjItODAuOS04Mi4yYy00NS40IDAtNzAuOSAyOS43LTc4LjEgNjAuMWwwIC4yeiJdfSxYb3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiY3V0dGxlZmlzaCIsaWNvbjpbNDQ4LDUxMixbXSwiZjM4YyIsIk0zNDggMzA1LjVjLTE3LjUgMzEuNi01Ny40IDU0LjUtOTYgNTQuNS01Ni42IDAtMTA0LTQ3LjQtMTA0LTEwNHM0Ny40LTEwNCAxMDQtMTA0YzM4LjYgMCA3OC41IDIyLjkgOTYgNTQuNSAxMy43LTUwLjkgNDEuNy05My4zIDg3LTExNy44LTQ1LjMtNDkuNi0xMTAuNS04MC43LTE4My04MC43LTEzNyAwLTI0OCAxMTEtMjQ4IDI0OFMxMTUgNTA0IDI1MiA1MDRjNzIuNSAwIDEzNy43LTMxLjEgMTgzLTgwLjctNDUuMy0yNC41LTczLjMtNjYuOS04Ny0xMTcuOHoiXX0sUW9yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Im1lZGFwcHMiLGljb246WzMyMCw1MTIsW10sImYzYzYiLCJNMTE4LjMgMjM4LjRjMy41LTEyLjUgNi45LTMzLjYgMTMuMi0zMy42IDguMyAxLjggOS42IDIzLjQgMTguNiAzNi42IDQuNi0yMy41IDUuMy04NS4xIDE0LjEtODYuNyA5LS43IDE5LjcgNjYuNSAyMiA3Ny41IDkuOSA0LjEgNDguOSA2LjYgNDguOSA2LjYgMS45IDcuMy0yNCA3LjYtNDAgNy44LTQuNiAxNC44LTUuNCAyNy43LTExLjQgMjgtNC43IC4yLTguMi0yOC44LTE3LjUtNDkuNmwtOS40IDY1LjVjLTQuNCAxMy0xNS41LTIyLjUtMjEuOS0zOS4zLTMuMy0uMS02Mi40LTEuNi00Ny42LTcuOGwzMS01ek0yMjggNDQ4YzIxLjIgMCAyMS4yLTMyIDAtMzJMOTIgNDE2Yy0yMS4yIDAtMjEuMiAzMiAwIDMybDEzNiAwem0tMjQgNjRjMjEuMiAwIDIxLjItMzIgMC0zMmwtODggMGMtMjEuMiAwLTIxLjIgMzIgMCAzMmw4OCAwem0zNC4yLTE0MS41YzMuMi0xOC45IDUuMi0zNi40IDExLjktNDguOCA3LjktMTQuNyAxNi4xLTI4LjEgMjQtNDEgMjQuNi00MC40IDQ1LjktNzUuMiA0NS45LTEyNS41IDAtODUuNi03MS44LTE1NS4yLTE2MC0xNTUuMlMwIDY5LjYgMCAxNTUuMmMwIDUwLjIgMjEuMyA4NS4xIDQ1LjkgMTI1LjUgNy45IDEyLjkgMTYgMjYuMyAyNCA0MSA2LjcgMTIuNSA4LjcgMjkuOCAxMS45IDQ4LjkgMy41IDIxIDM2LjEgMTUuNyAzMi42LTUuMS0zLjYtMjEuNy01LjYtNDAuNy0xNS4zLTU4LjYtMzIuNi02MC40LTY2LjEtOTUuNi02Ni4xLTE1MS43IDAtNjcuOSA1Ny0xMjMuMiAxMjctMTIzLjJTMjg3IDg3LjMgMjg3IDE1NS4yYzAgNTYuMS0zMy41IDkxLjMtNjYuMSAxNTEuNi05LjcgMTgtMTEuNyAzNy40LTE1LjMgNTguNi0zLjQgMjAuNiAyOSAyNi40IDMyLjYgNS4xeiJdfSxLb3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToicGl4IixpY29uOls1MTIsNTEyLFtdLCJlNDNhIiwiTTI0Mi40IDI5Mi41YzUuNC01LjQgMTQuNy01LjQgMjAuMSAwbDc3IDc3YzE0LjIgMTQuMiAzMy4xIDIyIDUzLjEgMjJsMTUuMSAwLTk3LjEgOTcuMWMtMzAuMyAyOS41LTc5LjUgMjkuNS0xMDkuOCAwbC05Ny41LTk3LjQgOS4zIDBjMjAgMCAzOC45LTcuOCA1My4xLTIybDc2LjctNzYuN3ptMjAuMS03My42Yy02LjQgNS41LTE0LjYgNS42LTIwLjEgMGwtNzYuNy03Ni43Yy0xNC4yLTE1LjEtMzMuMS0yMi01My4xLTIybC05LjMgMCA5Ny40LTk3LjRjMzAuNC0zMC4zIDc5LjYtMzAuMyAxMDkuOSAwbDk3LjIgOTcuMS0xNS4yIDBjLTIwIDAtMzguOSA3LjgtNTMuMSAyMmwtNzcgNzd6TTExMi42IDE0Mi43YzEzLjggMCAyNi41IDUuNiAzNy4xIDE1LjRsNzYuNyA3Ni43YzcuMiA2LjMgMTYuNiAxMC44IDI2LjEgMTAuOCA5LjQgMCAxOC44LTQuNSAyNi0xMC44bDc3LTc3YzkuOC05LjcgMjMuMy0xNS4zIDM3LjEtMTUuM2wzNy43IDAgNTguMyA1OC4zYzMwLjMgMzAuMyAzMC4zIDc5LjUgMCAxMDkuOGwtNTguMyA1OC4zLTM3LjcgMGMtMTMuOCAwLTI3LjMtNS42LTM3LjEtMTUuNGwtNzctNzdjLTEzLjktMTMuOS0zOC4yLTEzLjktNTIuMSAuMWwtNzYuNyA3Ni42Yy0xMC42IDkuOC0yMy4zIDE1LjQtMzcuMSAxNS40bC0zMS44IDAtNTgtNThjLTMwLjMtMzAuMy0zMC4zLTc5LjUgMC0xMDkuOGw1OC01OC4xIDMxLjggMHoiXX0sclNlPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InNxdWFyZS10dW1ibHIiLGljb246WzQ0OCw1MTIsWyJ0dW1ibHItc3F1YXJlIl0sImYxNzQiLCJNNDQ4IDk2YzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzIwIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zMjB6TTI1Ni44IDQxNmMtNzUuNSAwLTkxLjktNTUuNS05MS45LTg3LjlsMC05MC0yOS43IDBjLTMuNCAwLTYuMi0yLjgtNi4yLTYuMmwwLTQyLjVjMC00LjUgMi44LTguNSA3LjEtMTAgMzguOC0xMy43IDUwLjktNDcuNSA1Mi43LTczLjIgLjUtNi45IDQuMS0xMC4yIDEwLTEwLjJsNDQuMyAwYzMuNCAwIDYuMiAyLjggNi4yIDYuMmwwIDcyIDUxLjkgMGMzLjQgMCA2LjIgMi44IDYuMiA2LjJsMCA1MS4xYzAgMy40LTIuOCA2LjItNi4yIDYuMmwtNTIuMSAwIDAgODMuM2MwIDIxLjQgMTQuOCAzMy41IDQyLjUgMjIuNCAzLTEuMiA1LjYtMiA4LTEuNCAyLjIgLjUgMy42IDIuMSA0LjYgNC45TDMxOCAzODcuMWMxIDMuMiAyIDYuNy0uMyA5LjEtOC41IDkuMS0zMS4yIDE5LjgtNjAuOSAxOS44eiJdfSxKb3I9clNlLGVucj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJyZWFjdCIsaWNvbjpbNTEyLDUxMixbXSwiZjQxYiIsIk00MTguMiAxNzcuMmMtNS40LTEuOC0xMC44LTMuNS0xNi4yLTUuMSAuOS0zLjcgMS43LTcuNCAyLjUtMTEuMSAxMi4zLTU5LjYgNC4yLTEwNy41LTIzLjEtMTIzLjMtMjYuMy0xNS4xLTY5LjIgLjYtMTEyLjYgMzguNC00LjMgMy43LTguNSA3LjYtMTIuNSAxMS41LTIuNy0yLjYtNS41LTUuMi04LjMtNy43LTQ1LjUtNDAuNC05MS4xLTU3LjQtMTE4LjQtNDEuNS0yNi4yIDE1LjItMzQgNjAuMy0yMyAxMTYuNyAxLjEgNS42IDIuMyAxMS4xIDMuNyAxNi43LTYuNCAxLjgtMTIuNyAzLjgtMTguNiA1LjktNTMuNCAxOC41LTkxLjcgNDcuNy05MS43IDc3LjkgMCAzMS4yIDQwLjggNjIuNSA5Ni4zIDgxLjUgNC41IDEuNSA5IDMgMTMuNiA0LjMtMS41IDYtMi44IDExLjktNCAxOC0xMC41IDU1LjUtMi4zIDk5LjUgMjMuOSAxMTQuNiAyNyAxNS42IDcyLjQtLjQgMTE2LjYtMzkuMSAzLjUtMy4xIDctNi4zIDEwLjUtOS43IDQuNCA0LjMgOSA4LjQgMTMuNiAxMi40IDQyLjggMzYuOCA4NS4xIDUxLjcgMTExLjIgMzYuNiAyNy0xNS42IDM1LjgtNjIuOSAyNC40LTEyMC41LS45LTQuNC0xLjktOC45LTMtMTMuNSAzLjItLjkgNi4zLTEuOSA5LjQtMi45IDU3LjctMTkuMSA5OS41LTUwIDk5LjUtODEuNyAwLTMwLjMtMzkuNC01OS43LTkzLjgtNzguNHpNMjgyLjkgOTIuM2MzNy4yLTMyLjQgNzEuOS00NS4xIDg3LjctMzYgMTYuOSA5LjcgMjMuNCA0OC45IDEyLjggMTAwLjQtLjcgMy40LTEuNCA2LjctMi4zIDEwLTIyLjItNS00NC43LTguNi02Ny4zLTEwLjYtMTMtMTguNi0yNy4yLTM2LjQtNDIuNi01My4xIDMuOS0zLjcgNy43LTcuMiAxMS43LTEwLjd6TTE2Ny4yIDMwNy41YzUuMSA4LjcgMTAuMyAxNy40IDE1LjggMjUuOS0xNS42LTEuNy0zMS4xLTQuMi00Ni40LTcuNSA0LjQtMTQuNCA5LjktMjkuMyAxNi4zLTQ0LjUgNC42IDguOCA5LjMgMTcuNSAxNC4zIDI2LjF6TTEzNi45IDE4Ny4yYzE0LjQtMy4yIDI5LjctNS44IDQ1LjYtNy44LTUuMyA4LjMtMTAuNSAxNi44LTE1LjQgMjUuNC00LjkgOC41LTkuNyAxNy4yLTE0LjIgMjYtNi4zLTE0LjktMTEuNi0yOS41LTE2LTQzLjZ6bTI3LjQgNjguOWM2LjYtMTMuOCAxMy44LTI3LjMgMjEuNC00MC42czE1LjgtMjYuMiAyNC40LTM4LjljMTUtMS4xIDMwLjMtMS43IDQ1LjktMS43czMxIC42IDQ1LjkgMS43YzguNSAxMi42IDE2LjYgMjUuNSAyNC4zIDM4LjdzMTQuOSAyNi43IDIxLjcgNDAuNGMtNi43IDEzLjgtMTMuOSAyNy40LTIxLjYgNDAuOC03LjYgMTMuMy0xNS43IDI2LjItMjQuMiAzOS0xNC45IDEuMS0zMC40IDEuNi00Ni4xIDEuNnMtMzAuOS0uNS00NS42LTEuNGMtOC43LTEyLjctMTYuOS0yNS43LTI0LjYtMzlzLTE0LjgtMjYuOC0yMS41LTQwLjZ6bTE4MC42IDUxLjJjNS4xLTguOCA5LjktMTcuNyAxNC42LTI2LjcgNi40IDE0LjUgMTIgMjkuMiAxNi45IDQ0LjMtMTUuNSAzLjUtMzEuMiA2LjItNDcgOCA1LjQtOC40IDEwLjUtMTcgMTUuNS0yNS42em0xNC40LTc2LjVjLTQuNy04LjgtOS41LTE3LjYtMTQuNS0yNi4yLTQuOS04LjUtMTAtMTYuOS0xNS4zLTI1LjIgMTYuMSAyIDMxLjUgNC43IDQ1LjkgOC00LjYgMTQuOC0xMCAyOS4yLTE2LjEgNDMuNHpNMjU2LjIgMTE4LjNjMTAuNSAxMS40IDIwLjQgMjMuNCAyOS42IDM1LjgtMTkuOC0uOS0zOS43LS45LTU5LjUgMCA5LjgtMTIuOSAxOS45LTI0LjkgMjkuOS0zNS44ek0xNDAuMiA1N2MxNi44LTkuOCA1NC4xIDQuMiA5My40IDM5IDIuNSAyLjIgNSA0LjYgNy42IDctMTUuNSAxNi43LTI5LjggMzQuNS00Mi45IDUzLjEtMjIuNiAyLTQ1IDUuNS02Ny4yIDEwLjQtMS4zLTUuMS0yLjQtMTAuMy0zLjUtMTUuNS05LjQtNDguNC0zLjItODQuOSAxMi42LTk0ek0xMTUuNyAzMjAuNmMtNC4yLTEuMi04LjMtMi41LTEyLjQtMy45LTIxLjMtNi43LTQ1LjUtMTcuMy02My0zMS4yLTEwLjEtNy0xNi45LTE3LjgtMTguOC0yOS45IDAtMTguMyAzMS42LTQxLjcgNzcuMi01Ny42IDUuNy0yIDExLjUtMy44IDE3LjMtNS41IDYuOCAyMS43IDE1IDQzIDI0LjUgNjMuNi05LjYgMjAuOS0xNy45IDQyLjUtMjQuOCA2NC41em0xMTYuNiA5OGMtMTYuNSAxNS4xLTM1LjYgMjcuMS01Ni40IDM1LjMtMTEuMSA1LjMtMjMuOSA1LjgtMzUuMyAxLjMtMTUuOS05LjItMjIuNS00NC41LTEzLjUtOTIgMS4xLTUuNiAyLjMtMTEuMiAzLjctMTYuNyAyMi40IDQuOCA0NSA4LjEgNjcuOSA5LjggMTMuMiAxOC43IDI3LjcgMzYuNiA0My4yIDUzLjQtMy4yIDMuMS02LjQgNi4xLTkuNiA4Ljl6bTI0LjUtMjQuM2MtMTAuMi0xMS0yMC40LTIzLjItMzAuMy0zNi4zIDkuNiAuNCAxOS41IC42IDI5LjUgLjYgMTAuMyAwIDIwLjQtLjIgMzAuNC0uNy05LjIgMTIuNy0xOS4xIDI0LjgtMjkuNiAzNi40em0xMzAuNyAzMGMtLjkgMTIuMi02LjkgMjMuNi0xNi41IDMxLjMtMTUuOSA5LjItNDkuOC0yLjgtODYuNC0zNC4yLTQuMi0zLjYtOC40LTcuNS0xMi43LTExLjUgMTUuMy0xNi45IDI5LjQtMzQuOCA0Mi4yLTUzLjYgMjIuOS0xLjkgNDUuNy01LjQgNjguMi0xMC41IDEgNC4xIDEuOSA4LjIgMi43IDEyLjIgNC45IDIxLjYgNS43IDQ0LjEgMi41IDY2LjN6bTE4LjItMTA3LjVjLTIuOCAuOS01LjYgMS44LTguNSAyLjYtNy0yMS44LTE1LjYtNDMuMS0yNS41LTYzLjggOS42LTIwLjQgMTcuNy00MS40IDI0LjUtNjIuOSA1LjIgMS41IDEwLjIgMy4xIDE1IDQuNyA0Ni42IDE2IDc5LjMgMzkuOCA3OS4zIDU4IDAgMTkuNi0zNC45IDQ0LjktODQuOCA2MS40ek0yNTYgMzAxLjhhNDUuOCA0NS44IDAgMSAwIDAtOTEuNiA0NS44IDQ1LjggMCAxIDAgMCA5MS42eiJdfSx0bnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiaHVnZ2luZy1mYWNlIixpY29uOls1NzYsNTEyLFtdLCJlODY5IiwiTTI4Ni44IDguMmMxMzAgMCAyMzUuNCAxMDUuOCAyMzUuNCAyMzYuMyAwIDE3LjctMS45IDM1LTUuNiA1MS43LTEuNCA2LjUtMy4xIDEyLjgtNS4xIDE5LjEgNi41LS42IDEzIC42IDE4LjcgMy41IDEyLjYgNi41IDIwLjIgMjEuNyAxOC4yIDM1LjctLjcgNC45LTIuNCA5LjQtNC44IDEzLjUgNS4yIDQuMiA5IDEwLjEgMTAuOCAxNy4xIDEuNCA1LjUgMi45IDE3LjEtNC44IDI4LjkgNS44IDkuMiA2LjYgMjAuNiAyLjIgMzAuNi02LjIgMTQuMS0yMS43IDI1LjMtNTEuNyAzNy4zLTMyLjUgMTMtNjcuMSAyMS45LTEwMi4zIDIxLjktMzIgMC01NS45LTguOS03MS0yNi40LTEzIDIuMi0yNi4zIDMuNC00MCAzLjQtMTIuNyAwLTI1LjItMS0zNy4zLTIuOS0xNS4xIDE3LjItMzguOCAyNS45LTcwLjYgMjUuOS0zNS4xIDAtNzAtOS0xMDIuNC0yMS45LTMwLTEyLTQ1LjUtMjMuMS01MS43LTM3LjMtNC40LTkuOS0zLjYtMjEuNCAyLjItMzAuNi03LjctMTEuOS02LjMtMjMuNC00LjgtMjguOSAxLjgtNyA1LjctMTIuOSAxMC44LTE3LjEtMi41LTQuMS00LjEtOC42LTQuOC0xMy41LTEuNS0xMC40IDItMjAuNyA5LjctMjkuMiA2LjEtNi43IDE1LjEtMTAuMyAyNC4yLTEwLjItMS45LTYuMS0zLjYtMTIuNC01LTE4LjctMy43LTE2LjctNS43LTM0LTUuNy01MS44IDAtMTMwLjUgMTA1LjQtMjM2LjMgMjM1LjQtMjM2LjN6TTExNy41IDMxMWMtMTMtOC4yLTIyLjEtMy42LTE5IDEzLjRzNTcuMiA1OC4yIDUyIDY3LjJjLTUuMiA4LjgtMjMuNS0xMC4xLTIzLjgtMTAuNSAwIDAtNTguMi01My4xLTcwLjgtMzkuMy0xMi42IDEzLjggOS42IDI1LjQgNDEuMyA0NC43czM0LjIgMjQuNCAyOS43IDMxLjctNzQuNS01Mi04MS4xLTI2LjhjLTYuNSAyNS4xIDcxLjQgMzIuNCA2Ni43IDQ5LjgtNC44IDE3LjQtNTQuOS0zMi44LTY1LjItMTMuMy0xMC4zIDE5LjYgNzAuOCA0Mi42IDcxLjQgNDIuNyAyNi4yIDYuOCA5Mi42IDIxLjMgMTE1LjktMTIuOSAxNi43LTI0LjYgMTUuNi00My4xLTcuNC02Ni4xcy0zNi4zLTU2LjctMzYuMy01Ni43YzAtLjItNS0xOS41LTE2LjMtMTcuOC0xMS40IDEuOC0xOS43IDMxIDQuMSA0OC45IDIzLjggMTcuOS00LjcgMzAtMTMuOSAxMy4zLTkuMi0xNi44LTM0LjItNTkuOS00Ny4xLTY4LjJ6bTM2MC42IDEzLjRjMy4xLTE3LTYuMS0yMS42LTE5LTEzLjQtMTMgOC4zLTM3LjkgNTEuNC00Ny4xIDY4LjJzLTM3LjcgNC42LTEzLjktMTMuMyAxNS40LTQ3LjEgNC4xLTQ4LjktMTYuMyAxNy44LTE2LjMgMTcuOGMtLjEgLjItMTMuNCAzMy43LTM2LjMgNTYuNy0yMi45IDIzLTI0LjEgNDEuNS03LjQgNjYuMSAyMy4yIDM0LjIgODkuNyAxOS43IDExNS45IDEyLjkgMS41LS40IDgxLjYtMjMuMyA3MS40LTQyLjctMTAuMy0xOS41LTYwLjQgMzAuNi02NS4zIDEzLjMtNC44LTE3LjMgNzMuMi0yNC42IDY2LjctNDkuOC02LjYtMjUuMS03Ni42IDM0LjEtODEuMSAyNi44LTQuNS03LjMtMi0xMi40IDI5LjctMzEuNyAzMS43LTE5LjMgNTQtMzAuOSA0MS4zLTQ0LjctMTIuNy0xMy44LTcwLjggMzkuMy03MC44IDM5LjMtLjQgLjQtMTguNiAxOS4zLTIzLjggMTAuNS01LjMtOC45IDQ4LjktNTAuMSA1Mi02Ny4yek0yODYuOCAzMi42Yy0xMTYuNiAwLTIxMS4xIDk0LjktMjExLjEgMjExLjkgMCAxNy4xIDIgMzMuOCA1LjggNDkuNyAwLS4xIC4xLS4xIC4yLS4yIDYuMS03LjQgMTQuOS0xMS40IDI0LjctMTEuNCAxNy43IDAgMzEuMSAxMS45IDQxLjUgMjQuOSA2LjgtOS40IDE3LjEtMTUgMjcuOS0xNSAyMC43IDAgMzMuMiAxOC4xIDM3LjkgMzQuMyAyLjMgNS41IDEzLjYgMzAuNSAzMC40IDQ3LjQgMjUuNyAyNS44IDMyLjIgNTIuNCAxOS40IDgwLjkgMTYgMS44IDMyLjggMS43IDQ5LjItLjMtMTIuNS0yOC40LTYtNTQuOSAxOS42LTgwLjYgMTYuOS0xNi45IDI4LjEtNDEuOSAzMC41LTQ3LjQgNC43LTE2LjIgMTcuMi0zNC4zIDM3LjktMzQuMyAxMC45IDAgMjEuMiA1LjYgMjcuOSAxNSAxMC40LTEzIDIzLjgtMjQuOSA0MS41LTI0LjkgOC43IDAgMTYuNiAzLjEgMjIuNSA4LjkgNS0yMiA2LjQtNDUuOCA0LjEtNjguNy0xMC44LTEwNi45LTEwMC43LTE5MC4zLTIxMC0xOTAuM3ptMS41IDIzNC4yYzQzLjYgMCA3OS00MiA3OS0xNC41IDAgMjcuNC0xOS4yIDgwLjktNzguOCA4MC45LTE5LjIgMC0zNC4yLTUuNS00NS44LTEzLjktMjMuMi0xOS40LTMzLjQtNDguMi0zMy40LTY2LjkgMC0yNy40IDM1LjQgMTQuNSA3OSAxNC41em0tMTMuMyAyNWMtOC4yIDIuNC0xNS41IDYuOC0yMS41IDEyLjYgMjIgMTIuOCA1MC40IDEyLjkgNzEuNy0xLjMtNS41LTQuOS0xMi04LjctMTkuMS0xMS01LjEtMS42LTEwLjQgMTUuOC0xNiAxNS44LTUuMiAwLTEwLjMtMTcuNi0xNS4xLTE2LjJ6TTE0Ny4xIDIxNS41YTE5LjggMTkuOCAwIDEgMSAwLTM5LjYgMTkuOCAxOS44IDAgMSAxIDAgMzkuNnptMjgyLjQgMGExOS44IDE5LjggMCAxIDEgMC0zOS42IDE5LjggMTkuOCAwIDEgMSAwIDM5LjZ6bS0yNDQtNTUuNGM3LjktMTQuOSAyNi4zLTIwLjUgNDEuMS0xMi42czIwLjQgMjYuNCAxMi42IDQxLjJjLTMuNyA3LTE1LjUtNC40LTIyLjQtMS45LTcuNyAyLjctMTAuOCAxOC43LTE4LjYgMTQuNi0xNC44LTcuOS0yMC40LTI2LjQtMTIuNi00MS4yem0xNjQuNC0xMi42YzE0LjgtNy45IDMzLjItMi4zIDQxLjEgMTIuNnMyLjIgMzMuMy0xMi42IDQxLjJjLTcuOCA0LjItMTAuOS0xMS44LTE4LjctMTQuNi02LjktMi40LTE4LjcgOS0yMi40IDEuOS03LjktMTQuOS0yLjItMzMuMyAxMi42LTQxLjJ6Il19LHJucj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJqeGwiLGljb246WzQ0OCw1MTIsW10sImU2N2IiLCJNNDEyLjIgMzJMMzUuOCAzMkMxNiAzMiAwIDQ4IDAgNjcuOEwwIDQ0NC4yQzAgNDY0IDE2IDQ4MCAzNS44IDQ4MGwzNzYuNCAwYzE5LjggMCAzNS44LTE2IDM1LjgtMzUuOGwwLTM3Ni40QzQ0OCA0OCA0MzIgMzIgNDEyLjIgMzJ6TTM3OC42IDMzMy43YzAgNDAuMi0zMi42IDcyLjgtNzIuOCA3Mi44bC0yMzUuNiAwYzAtNDAuMiAzMi42LTcyLjggNzIuOC03Mi44bDIzNS42IDB6bTAtMTEzLjljMCA0MC4yLTMyLjYgNzIuOC03Mi44IDcyLjhsLTIzNS42IDBjMC00MC4yIDMyLjYtNzIuOCA3Mi44LTcyLjhsMjM1LjYgMHptMC0xMTMuOWMwIDQwLjItMzIuNiA3Mi44LTcyLjggNzIuOGwtMjM1LjYgMGMwLTQwLjIgMzIuNi03Mi44IDcyLjgtNzIuOGwyMzUuNiAweiJdfSxhbnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic3F1YXJlLWxpbmtlZGluIixpY29uOls0NDgsNTEyLFtdLCJlN2QwIiwiTTY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzIwIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zMjBjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzJ6bTUgMTcwLjJsNjYuNSAwIDAgMjEzLjgtNjYuNSAwIDAtMjEzLjh6bTcxLjctNjcuN2EzOC41IDM4LjUgMCAxIDEgLTc3IDAgMzguNSAzOC41IDAgMSAxIDc3IDB6TTMxNy45IDQxNmwwLTEwNGMwLTI0LjgtLjUtNTYuNy0zNC41LTU2LjctMzQuNiAwLTM5LjkgMjctMzkuOSA1NC45bDAgMTA1LjgtNjYuNCAwIDAtMjEzLjggNjMuNyAwIDAgMjkuMiAuOSAwYzguOS0xNi44IDMwLjYtMzQuNSA2Mi45LTM0LjUgNjcuMiAwIDc5LjcgNDQuMyA3OS43IDEwMS45bDAgMTE3LjItNjYuNCAweiJdfSxpbnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiY3NzIixpY29uOls0NDgsNTEyLFtdLCJlNmEyIiwiTTM3Ni4zIDMyTDAgMzIgMCA0MDguM2MwIDE5IDcuNiAzNy4yIDIxIDUwLjdzMzEuNyAyMSA1MC43IDIxbDMwNC42IDBjMTkgMCAzNy4yLTcuNiA1MC43LTIxczIxLTMxLjcgMjEtNTAuN2wwLTMwNC42YzAtMTktNy42LTM3LjItMjEtNTAuN3MtMzEuNy0yMS01MC43LTIxek0zMzIuNCA0MzEuNGMtNy43LTguNS0xMS43LTIwLjctMTItMzYuNmwzMS4zIDBjLjIgMTQuMSA1LjEgMjEuMSAxNC44IDIxLjFjNC45IDAgOC40LTEuNiAxMC41LTQuN2MyLTMuMSAzLTggMy0xNC44YzAtNS40LTEuMy05LjktNC0xMy40Yy0zLjUtNC4yLTguMS03LjUtMTMuMi05LjVMMzUxLjIgMzY4Yy0xMC4zLTQuOS0xNy44LTEwLjgtMjIuNS0xNy42Yy00LjUtNi44LTYuNy0xNi4zLTYuNy0yOC40YzAtMTMuNiA0LTI0LjYgMTEuOC0zMy4xYzguMS04LjUgMTkuMS0xMi43IDMzLjItMTIuN2MxMy42IDAgMjQuMSA0LjIgMzEuNSAxMi41YzcuNSA4LjQgMTEuNSAyMC4zIDExLjggMzUuOWwtMzAuMSAwYy4yLTUuMS0uOS0xMC4yLTMtMTQuOGMtMS43LTMuNC01LTUuMS0xMC01LjFjLTguOCAwLTEzLjIgNS4yLTEzLjIgMTUuN2MwIDUuMyAxLjEgOS40IDMuMiAxMi42YzMuMSAzLjUgNyA2LjIgMTEuNCA3LjhsMTEuMSA0LjljMTEuNSA1LjMgMTkuNyAxMS43IDI0LjggMTkuNGM1LjEgNy43IDcuNiAxOCA3LjYgMzFjMCAxNS41LTQgMjcuNC0xMi4zIDM1LjdjLTguMiA4LjMtMTkuNSAxMi41LTM0LjEgMTIuNXMtMjUuNi00LjItMzMuNC0xMi43em0tMTAxIDBjLTcuNy04LjUtMTEuNy0yMC43LTEyLTM2LjZsMzEuMyAwYy4yIDE0LjEgNS4xIDIxLjEgMTQuOCAyMS4xYzQuOSAwIDguNC0xLjYgMTAuNC00LjdjMi0zLjEgMy04IDMtMTQuOGMwLTUuNC0xLjMtOS45LTMuOS0xMy40Yy0zLjUtNC4yLTguMS03LjUtMTMuMi05LjVMMjUwLjIgMzY4Yy0xMC4zLTQuOS0xNy44LTEwLjgtMjIuNS0xNy42Yy00LjUtNi44LTYuNy0xNi4zLTYuNy0yOC40YzAtMTMuNiA0LTI0LjYgMTEuOC0zMy4xYzguMS04LjUgMTkuMS0xMi43IDMzLjItMTIuN2MxMy42IDAgMjQuMSA0LjIgMzEuNCAxMi41YzcuNiA4LjQgMTEuNSAyMC4zIDExLjkgMzUuOWwtMzAuMSAwYy4yLTUuMS0uOS0xMC4yLTMtMTQuOGMtMS43LTMuNC01LTUuMS0xMC01LjFjLTguOCAwLTEzLjIgNS4yLTEzLjIgMTUuN2MwIDUuMyAxLjEgOS40IDMuMiAxMi42YzMuMSAzLjUgNyA2LjIgMTEuNCA3LjhsMTEuMSA0LjljMTEuNSA1LjMgMTkuNyAxMS43IDI0LjggMTkuNGM1LjEgNy43IDcuNiAxOCA3LjYgMzFjMCAxNS41LTQuMSAyNy40LTEyLjMgMzUuN3MtMTkuNSAxMi41LTM0LjEgMTIuNXMtMjUuNi00LjItMzMuNC0xMi43em0tMTA1LjYgMS4xYy04LjQtNy43LTEyLjUtMTkuMi0xMi41LTM0LjVsMC03NS40YzAtMTUuMiA0LjQtMjYuNyAxMy4yLTM0LjZjOC45LTcuOCAyMC43LTExLjggMzUuMi0xMS44YzE0LjEgMCAyNS4yIDQgMzMuNCAxMmM4LjMgOCAxMi41IDIwIDEyLjUgMzUuOWwwIDYtMzMuMSAwIDAtNS44YzAtNi4xLTEuMy0xMC43LTQtMTMuNmMtMS4xLTEuNS0yLjYtMi43LTQuMy0zLjVzLTMuNS0xLjItNS40LTEuMWMtNS40IDAtOS4yIDEuOC0xMS40IDUuNmMtMi4zIDUuMi0zLjMgMTAuOC0zIDE2LjRsMCA2NS41YzAgMTMuNyA0LjggMjAuNiAxNC40IDIwLjhjNC41IDAgNy45LTEuNiAxMC4yLTQuOGMyLjUtNC4xIDMuNy04LjggMy41LTEzLjZsMC00LjkgMzMuMSAwIDAgNS4xYzAgMTAuNi0yLjEgMTkuNS02LjIgMjYuNmMtNCA2LjktOS45IDEyLjUtMTcuMSAxNmMtNy43IDMuNy0xNi4xIDUuNS0yNC42IDUuM2MtMTQuMiAwLTI1LjUtMy45LTMzLjgtMTEuNnoiXX0sb25yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Imhhc2hub2RlIixpY29uOls1MTIsNTEyLFtdLCJlNDk5IiwiTTM1LjcgMTcxLjFjLTQ2LjkgNDYtNDYuOSAxMjIuOSAwIDE2OS44TDE3MS42IDQ3Ni44YzQ2IDQ2LjkgMTIyLjkgNDYuOSAxNjkuOCAwTDQ3Ny4zIDM0MC45YzQ2LjktNDYuOSA0Ni45LTEyMy44IDAtMTY5LjhMMzQxLjQgMzUuMmMtNDYuOS00Ni45LTEyMy44LTQ2LjktMTY5LjggMEwzNS43IDE3MS4xek0xOTYgMTk2LjVhODQuNSA4NC41IDAgMSAxIDEyMCAxMTkgODQuNSA4NC41IDAgMSAxIC0xMjAtMTE5eiJdfSxubnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToicmVkZGl0LWFsaWVuIixpY29uOls1MTIsNTEyLFtdLCJmMjgxIiwiTTM3MyAxMzguNmMtMjUuMiAwLTQ2LjMtMTcuNS01MS45LTQxLTMwLjYgNC4zLTU0LjIgMzAuNy01NC4yIDYyLjRsMCAuMmM0Ny40IDEuOCA5MC42IDE1LjEgMTI0LjkgMzYuMyAxMi42LTkuNyAyOC40LTE1LjUgNDUuNS0xNS41IDQxLjMgMCA3NC43IDMzLjQgNzQuNyA3NC43IDAgMjkuOC0xNy40IDU1LjUtNDIuNyA2Ny41LTIuNCA4Ni44LTk3IDE1Ni42LTIxMy4yIDE1Ni42UzQ1LjUgNDEwLjEgNDMgMzIzLjRjLTI1LjQtMTEuOS00My0zNy43LTQzLTY3LjcgMC00MS4zIDMzLjQtNzQuNyA3NC43LTc0LjcgMTcuMiAwIDMzIDUuOCA0NS43IDE1LjYgMzQtMjEuMSA3Ni44LTM0LjQgMTIzLjctMzYuNGwwLS4zYzAtNDQuMyAzMy43LTgwLjkgNzYuOC04NS41IDQuOS0yNC4yIDI2LjMtNDIuNCA1Mi4xLTQyLjQgMjkuNCAwIDUzLjMgMjMuOSA1My4zIDUzLjNzLTIzLjkgNTMuMy01My4zIDUzLjN6TTE1Ny41IDI1NS4zYy0yMC45IDAtMzguOSAyMC44LTQwLjIgNDcuOXMxNy4xIDM4LjEgMzggMzguMSAzNi42LTkuOCAzNy44LTM2LjktMTQuNy00OS4xLTM1LjctNDkuMWwuMSAwek0zOTUgMzAzLjFjLTEuMi0yNy4xLTE5LjItNDcuOS00MC4yLTQ3LjlzLTM2LjkgMjItMzUuNyA0OS4xIDE2LjkgMzYuOSAzNy44IDM2LjkgMzkuMy0xMSAzOC0zOC4xbC4xIDB6bS02MC4xIDcwLjhjMS41LTMuNi0xLTcuNy00LjktOC4xLTIzLTIuMy00Ny45LTMuNi03My44LTMuNnMtNTAuOCAxLjMtNzMuOCAzLjZjLTMuOSAuNC02LjQgNC41LTQuOSA4LjEgMTIuOSAzMC44IDQzLjMgNTIuNCA3OC43IDUyLjRzNjUuOC0yMS42IDc4LjctNTIuNHoiXX0scXNlPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InRpa3RvayIsaWNvbjpbNDQ4LDUxMixbXSwiZTA3YiIsIk00NDguNSAyMDkuOWMtNDQgLjEtODctMTMuNi0xMjIuOC0zOS4ybDAgMTc4LjdjMCAzMy4xLTEwLjEgNjUuNC0yOSA5Mi42cy00NS42IDQ4LTc2LjYgNTkuNi02NC44IDEzLjUtOTYuOSA1LjMtNjAuOS0yNS45LTgyLjctNTAuOC0zNS4zLTU2LTM5LTg4LjkgMi45LTY2LjEgMTguNi05NS4yIDQwLTUyLjcgNjkuNi02Ny43IDYyLjktMjAuNSA5NS43LTE2bDAgODkuOWMtMTUtNC43LTMxLjEtNC42LTQ2IC40cy0yNy45IDE0LjYtMzcgMjcuMy0xNCAyOC4xLTEzLjkgNDMuOSA1LjIgMzEgMTQuNSA0My43IDIyLjQgMjIuMSAzNy40IDI2LjkgMzEuMSA0LjggNDYtLjEgMjgtMTQuNCAzNy4yLTI3LjEgMTQuMi0yOC4xIDE0LjItNDMuOGwwLTM0OS40IDg4IDBjLS4xIDcuNCAuNiAxNC45IDEuOSAyMi4yIDMuMSAxNi4zIDkuNCAzMS45IDE4LjcgNDUuN3MyMS4zIDI1LjYgMzUuMiAzNC42YzE5LjkgMTMuMSA0My4yIDIwLjEgNjcgMjAuMWwwIDg3LjR6Il19LHNucj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJ3b3JkcHJlc3MiLGljb246WzUxMiw1MTIsW10sImYxOWEiLCJNNjEuNyAxNjkuNGwxMDEuNSAyNzhjLTcxLTM0LjQtMTE5LjktMTA3LjItMTE5LjktMTkxLjQgMC0zMC45IDYuNi02MC4xIDE4LjQtODYuNnptMzM3LjkgNzUuOWMwLTI2LjMtOS40LTQ0LjUtMTcuNS01OC43LTEwLjgtMTcuNS0yMC45LTMyLjQtMjAuOS00OS45IDAtMTkuNiAxNC44LTM3LjggMzUuNy0zNy44IC45IDAgMS44IC4xIDIuOCAuMi0zNy45LTM0LjctODguMy01NS45LTE0My43LTU1LjktNzQuMyAwLTEzOS43IDM4LjEtMTc3LjggOTUuOSA1IC4yIDkuNyAuMyAxMy43IC4zIDIyLjIgMCA1Ni43LTIuNyA1Ni43LTIuNyAxMS41LS43IDEyLjggMTYuMiAxLjQgMTcuNSAwIDAtMTEuNSAxLjMtMjQuMyAybDc3LjUgMjMwLjQgNDYuNi0xMzkuNi0zMy4xLTkwLjhjLTExLjUtLjctMjIuMy0yLTIyLjMtMi0xMS41LS43LTEwLjEtMTguMiAxLjMtMTcuNSAwIDAgMzUuMSAyLjcgNTYgMi43IDIyLjIgMCA1Ni43LTIuNyA1Ni43LTIuNyAxMS41LS43IDEyLjggMTYuMiAxLjQgMTcuNSAwIDAtMTEuNSAxLjMtMjQuMyAybDc2LjkgMjI4LjcgMjEuMi03MC45YzktMjkuNCAxNi01MC41IDE2LTY4Ljd6TTI1OS43IDI3NC42TDE5NS45IDQ2MC4xYzE5LjEgNS42IDM5LjIgOC43IDYwLjEgOC43IDI0LjggMCA0OC41LTQuMyA3MC42LTEyLjEtLjYtLjktMS4xLTEuOS0xLjUtMi45TDI1OS43IDI3NC42em0xODMtMTIwLjdjLjkgNi44IDEuNCAxNCAxLjQgMjEuOSAwIDIxLjYtNCA0NS44LTE2LjIgNzYuMmwtNjUgMTg3LjljNjMuMy0zNi45IDEwNS44LTEwNS40IDEwNS44LTE4My45IDAtMzctOS40LTcxLjgtMjYtMTAyLjF6TTggMjU2YTI0OCAyNDggMCAxIDEgNDk2IDAgMjQ4IDI0OCAwIDEgMSAtNDk2IDB6bTQ4NC42IDBhMjM2LjYgMjM2LjYgMCAxIDAgLTQ3My4yIDAgMjM2LjYgMjM2LjYgMCAxIDAgNDczLjIgMHoiXX0sbG5yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImlkZWFsIixpY29uOls1MTIsNTEyLFtdLCJlMDEzIiwiTTkzLjggMTY1LjVhNDkuMSA0OS4xIDAgMSAwIDAgOTguMSA0OS4xIDQ5LjEgMCAxIDAgMC05OC4xek01NC4zIDQyNS44bDc4LjkgMCAwLTE0MC41LTc4LjkgMCAwIDE0MC41ek0yMDUuOCAyMTQuMmMwLTIwLTEwLTIyLjUtMTguNy0yMi41bC0xNCAwIDAgNDUuOCAxNCAwYzkuNyAwIDE4LjctMi44IDE4LjctMjMuM3ptMjAxLjcgNDZsMC05MS4zIDIyLjggMCAwIDY4LjYgMzMuNyAwQzQ1NC42IDExMy4xIDM1Ni44IDg2LjIgMjY3LjggODYuMmwtOTQuOCAwIDAgODIuOCAxNCAwYzI1LjYgMCA0MS41IDE3LjQgNDEuNSA0NS4zIDAgMjguOC0xNS41IDQ2LTQxLjUgNDZsLTE0IDAgMCAxNjUuNiA5NC44IDBjMTQ0LjYgMCAxOTQuOS02Ny4yIDE5Ni43LTE2NS42bC01Ny4xIDB6bS0xMDkuOCAwbC01Ni4yIDAgMC05MS4yIDU0LjQgMCAwIDIyLjctMzEuNyAwIDAgMTAuNiAzMCAwIDAgMjIuNy0zMCAwIDAgMTIuNSAzMy41IDAgMCAyMi43em03NC43IDBsLTUuMi0xNy43LTI5LjcgMC01LjIgMTcuNy0yMy43IDAgMjcuNS05MS4zIDMyLjMgMCAyNy41IDkxLjMtMjMuNyAwek0yNjcuOCAzMkwuMSAzMiAuMSA0ODAgMjY3LjggNDgwYzE2MS44IDAgMjUxLTc5LjcgMjUxLTIyNC41IDAtODMuNS0zMi42LTIyMy41LTI1MS0yMjMuNXptMCA0MjYuOWwtMjQ2LjYgMCAwLTQwNS45IDI0Ni42IDBjMTQyLjEgMCAyMjkuOSA2NC42IDIyOS45IDIwMi40IDAgMTM0LjEtODEgMjAzLjQtMjI5LjkgMjAzLjR6bTgzLjktMjY0LjlsLTcuNSAyNS44IDE2LjQgMC03LjUtMjUuOC0xLjQgMHoiXX0sY25yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InBpZWQtcGlwZXItcHAiLGljb246WzQ0OCw1MTIsW10sImYxYTciLCJNMjA1LjMgMTc0LjZjMCAyMS4xLTE0LjIgMzguMS0zMS43IDM4LjEtNy4xIDAtMTIuOC0xLjItMTcuMi0zLjdsMC02OGM0LjQtMi43IDEwLjEtNC4yIDE3LjItNC4yIDE3LjUgMCAzMS43IDE2LjkgMzEuNyAzNy44em01Mi42IDY3Yy03LjEgMC0xMi44IDEuNS0xNy4yIDQuMmwwIDY4YzQuNCAyLjUgMTAuMSAzLjcgMTcuMiAzLjcgMTcuNCAwIDMxLjctMTYuOSAzMS43LTM3LjggMC0yMS4xLTE0LjMtMzguMS0zMS43LTM4LjF6TTQ0OCA4MGwwIDM1MmMwIDI2LjUtMjEuNSA0OC00OCA0OEw0OCA0ODBjLTI2LjUgMC00OC0yMS41LTQ4LTQ4TDAgODBDMCA1My41IDIxLjUgMzIgNDggMzJsMzUyIDBjMjYuNSAwIDQ4IDIxLjUgNDggNDh6TTE4NSAyNTUuMWM0MSAwIDc0LjItMzUuNiA3NC4yLTc5LjZTMjI2IDk1LjkgMTg1IDk1LjljLTEyIDAtMjQuMSAzLjItMzQuNiA4LjhsLTQ1LjcgMCAwIDIwNi4zIDUxLjgtMTAuMSAwLTUwLjZjOC42IDMuMSAxOC4xIDQuOCAyOC41IDQuOHptMTU4LjQgMjUuM2MwLTQ0LTMzLjItNzkuNi03My45LTc5LjYtMy4yIDAtNi40IC4yLTkuNiAuNy0zLjcgMTIuNS0xMC4xIDIzLjgtMTkuMiAzMy40LTEzLjggMTUtMzIuMiAyMy44LTUxLjggMjQuOGwwIDE1Ni4zIDUxLjgtMTAuMSAwLTUwLjZjOC42IDMuMiAxOC4yIDQuNyAyOC43IDQuNyA0MC44IDAgNzQtMzUuNiA3NC03OS42eiJdfSxkbnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidXNzdW5uYWgiLGljb246WzUxMiw1MTIsW10sImY0MDciLCJNNDk2LjkgMjY4LjFjMCA2My45LTI1LjQgMTI1LjItNzAuNiAxNzAuM1MzMTkuOSA1MDkgMjU2IDUwOSAxMzAuOCA0ODMuNSA4NS43IDQzOC40IDE1LjEgMzMxLjkgMTUuMSAyNjhjMC02My45IDI1LjQtMTI1LjIgNzAuNi0xNzAuNFMxOTIuMiAyNy4xIDI1Ni4xIDI3LjEgMzgxLjMgNTIuNCA0MjYuNSA5Ny42IDQ5NyAyMDQuMSA0OTcgMjY4bC0uMSAuMXpNMzkuNSAyNjhjLS42IDI4LjggNC41IDU3LjUgMTUuMSA4NC4zczI2LjQgNTEuMiA0Ni42IDcxLjggNDQuMiAzNyA3MC44IDQ4LjEgNTUuMSAxNi45IDgzLjkgMTYuOSA1Ny40LTUuOCA4My45LTE2LjkgNTAuNi0yNy41IDcwLjgtNDguMSAzNi00NSA0Ni42LTcxLjggMTUuNy01NS41IDE1LjEtODQuM2MuNi0yOC44LTQuNS01Ny41LTE1LjEtODQuM3MtMjYuNC01MS4yLTQ2LjYtNzEuOC00NC4yLTM3LTcwLjgtNDguMS01NS4xLTE2LjktODMuOS0xNi45LTU3LjQgNS44LTgzLjkgMTYuOS01MC42IDI3LjUtNzAuOCA0OC4xLTM2IDQ1LTQ2LjYgNzEuOC0xNS43IDU1LjUtMTUuMSA4NC4zem0zODUuOSA2My4zYy0xMi43IDAtMjEuNi0xLjktMjYuNy01LjktNS41LTQuMy04LjItMTIuMy04LjItMjMuOGwwLTk2LjVjMC02LjUtNS4yLTIwLjItMTUuNy00MS4yIDcgMCAxNy05LjEgMzAtMjcuMmwwIDE0Ny44YzAgMTEgMi40IDE5LjQgNyAyNS4zIDMuNyA0LjcgMTAuMSA4LjkgMTkgMTIuNiAxLjIgLjQgMi42IC45IDQuMSAxLjQgMi45IC45IDYuMyAyLjEgMTAuMyAzLjUtMS44IDIuNy04LjMgNC0xOS45IDRsLjEgMHptLTIxOSAwYy0xLjMgMi40LTMuNiA1LjUtNi44IDkuNGwtMTguNSAyMi41Yy0xLTYuMS00LTEzLTkuMy0yMC42cy05LjctMTEuNC0xMy40LTExLjRsLTg5LjggMGMzLjMtNS4zIDQuOS04LjggNC45LTEwLjhzLS44LTUuMy0yLjQtOS43Yy0xLjUtNC40LTIuNC04LjUtMi40LTEyLjQgMC03LjQgMi4xLTEzLjkgNi4zLTE5LjNsMjAtMjUuNi03LjEtMTcuNyAxNi4xLTE5LjggNi43IDE2LjggOC0xMC4zYy0xLjggNi40LTIuNiAxMi4zLTIuNiAxNy43IDAgNC4yIDIuOCAxMy4zIDguMyAyNy4zbDE2LjIgNDAuNyAxNy43IDBjMi44IC40IDcuNyA1IDE0LjYgMTMuOSAxLjggMi40IDQuMyA1LjggNy43IDEwLjIgMS40IDEuOSAyLjkgMy45IDQuNiA2LjEgMS4zLTIuMyAyLTQuNiAyLTcuMSAwLTItMS4zLTYuNi00LTEzLjRMMTc4IDMwNC4xYy00LTEwLjYtNi4xLTE3LjctNi4xLTIxLjMgMC02LjMgMS45LTEyLjMgNS44LTE3LjkgLjUtLjYgMS0xLjMgMS41LTEuOSA0LjQtNS42IDguOC0xMS4xIDEzLjMtMTYuNS0xLjEgNC42LTEuNyA4LjctMS43IDEyIDAgMy43IDEuNyA5LjkgNS4xIDE4LjhsNy45IDIwLjRjMS45IDQuNyAzIDguMiAzLjcgMTAuM2wyNS45IDAtLjktMi42Yy0xLjQtMy45LTQtNy03LjctOS4zbDE1LjYtMjAuMSAxMi4zIDMyIDEzLjQgMC02LjEtMTUuOGMtMS41LTMuOS00LTctNy43LTkuM2wxNS43LTIwLjEgMTcuMyA0NS4yIDEzLjQgMC0xMS40LTI5LjRjLTEuNS0zLjktNC03LTcuNy05LjNsMTUuNi0yMCAyMi40IDU4LjcgMjYuMiAwYzEuNSAwIDMtMS4xIDQuNS0zLjFzMi4yLTQuMSAyLjItNi4zbDAtOTMuNWMwLTYuNS00LjUtMjAuMy0xMy43LTQxLjIgNS40IDAgMTQuMS05LjEgMjYuMi0yNy4ybDAgMTYzLjVjMCA3LjIgLjYgMTIgMS43IDE0LjYgMS42IDMuNCA1LjMgNi4yIDExLjEgOC4yLTMuOSA1LjYtOC43IDguNS0xNC41IDguNWwtMTU0LjggMC0uMS0uMnptLTk4LTQ0Yy0yLjctNi43LTQtMTEuNy00LTE1LS42IDEuMi0yLjQgMy43LTUuNCA3LjYtMS40IDEuOS0yLjIgMy43LTIuMiA1LjMgMCAyLjYgLjggNS43IDIuMiA5LjNsNS42IDEzLjljNSAwIDkgMCAxMS45LS4xbC04LjItMjAuOSAuMS0uMXptMTMuNS03Mi40Yy0zLTUuMi03LTkuMy0xMS45LTExLjktMy41LTEuOS01LjMtNC4zLTUuMy03LjQgMC0yLjQgNC42LTguNiAxNC0xOC4zIC4yIDMuOCAxLjkgNy42IDQuOSAxMS4yIDMuMSAzLjYgNC42IDcgNC42IDEwLjEgMCAyLjYtMi4xIDgtNi4yIDE2LjNsLS4xIDB6bS0yNy42IDBjLTMtNS4yLTctOS4zLTExLjktMTEuOS0zLjUtMS45LTUuMy00LjMtNS4zLTcuNCAwLTIuNCA0LjYtOC42IDE0LTE4LjMgLjIgMy44IDEuOSA3LjYgNC45IDExLjIgMy4xIDMuNiA0LjYgNyA0LjYgMTAuMSAwIDIuNi0yLjEgOC02LjIgMTYuM2wtLjEgMHptODcgMjcuNWMtMy01LjItNy05LjMtMTEuOS0xMS45LTMuNS0xLjktNS4zLTQuMy01LjMtNy40IDAtMi40IDQuNi04LjYgMTQtMTguMyAuMiAzLjggMS45IDcuNiA0LjkgMTEuMiAzLjEgMy42IDQuNiA3IDQuNiAxMC4xIDAgMi42LTIuMSA4LTYuMiAxNi4zbC0uMSAweiJdfSx1bnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZm9ydC1hd2Vzb21lLWFsdCIsaWNvbjpbNTEyLDUxMixbXSwiZjNhMyIsIk0yMDggMjM3LjRsLTIyLjIgMGMtMi4xIDAtMy43IDEuNi0zLjcgMy43bDAgNTEuN2MwIDIuMSAxLjYgMy43IDMuNyAzLjdsMjIuMiAwYzIuMSAwIDMuNy0xLjYgMy43LTMuN2wwLTUxLjdjMC0yLjEtMS42LTMuNy0zLjctMy43em0xMTguMiAwbC0yMi4yIDBjLTIuMSAwLTMuNyAxLjYtMy43IDMuN2wwIDUxLjdjMCAyLjEgMS42IDMuNyAzLjcgMy43bDIyLjIgMGMyLjEgMCAzLjctMS42IDMuNy0zLjdsMC01MS43Yy0uMS0yLjEtMS43LTMuNy0zLjctMy43em0xMzItMTI1LjFjLTIuMy0zLjItNC42LTYuNC03LjEtOS41LTkuOC0xMi41LTIwLjgtMjQtMzIuOC0zNC40LTQuNS0zLjktOS4xLTcuNi0xMy45LTExLjItMS42LTEuMi0zLjItMi4zLTQuOC0zLjUtMjcuNi0xOS42LTU5LjMtMzMuNy05My42LTQwLjctMTYuMi0zLjMtMzIuOS01LTUwLTVzLTMzLjkgMS43LTUwIDVjLTM0LjMgNy4xLTY2IDIxLjItOTMuMyA0MC44LTEuNiAxLjEtMy4yIDIuMy00LjggMy41LTQuOCAzLjYtOS40IDcuMy0xMy45IDExLjItMyAyLjYtNS45IDUuMy04LjggOHMtNS43IDUuNS04LjQgOC40Yy01LjUgNS43LTEwLjcgMTEuOC0xNS42IDE4LTIuNCAzLjEtNC44IDYuMy03LjEgOS41LTI4LjkgNDAuNi00NS44IDkwLjEtNDUuOCAxNDMuNiAwIDIgLjEgNCAuMSA2IC4xIC43IC4xIDEuMyAuMSAyIC4xIDEuMyAuMSAyLjcgLjIgNCAwIC44IC4xIDEuNSAuMSAyLjMgMCAxLjMgLjEgMi41IC4yIDMuNyAuMSAuOCAuMSAxLjYgLjIgMi40IC4xIDEuMSAuMiAyLjMgLjMgMy41IDAgLjggLjEgMS42IC4yIDIuNCAuMSAxLjIgLjMgMi40IC40IDMuNiAuMSAuOCAuMiAxLjUgLjMgMi4zIC4xIDEuMyAuMyAyLjYgLjUgMy45IC4xIC42IC4yIDEuMyAuMyAxLjlsLjkgNS43Yy4xIC42IC4yIDEuMSAuMyAxLjcgLjMgMS4zIC41IDIuNyAuOCA0IC4yIC44IC4zIDEuNiAuNSAyLjQgLjIgMSAuNSAyLjEgLjcgMy4yIC4yIC45IC40IDEuNyAuNiAyLjYgLjIgMSAuNCAyIC43IDMgLjIgLjkgLjUgMS44IC43IDIuNyAuMyAxIC41IDEuOSAuOCAyLjkgLjMgLjkgLjUgMS44IC44IDIuNyAuMiAuOSAuNSAxLjkgLjggMi44cy41IDEuOCAuOCAyLjdjLjMgMSAuNiAxLjkgLjkgMi44IC42IDEuNiAxLjEgMy4zIDEuNyA0LjkgLjQgMSAuNyAxLjkgMSAyLjggLjMgMSAuNyAyIDEuMSAzIC4zIC44IC42IDEuNSAuOSAyLjNsMS4yIDNjLjMgLjcgLjYgMS41IC45IDIuMiAuNCAxIC45IDIgMS4zIDNsLjkgMi4xYy41IDEgLjkgMiAxLjQgMyAuMyAuNyAuNiAxLjMgLjkgMiAuNSAxIDEgMi4xIDEuNSAzLjEgLjIgLjYgLjUgMS4xIC44IDEuNyAuNiAxLjEgMS4xIDIuMiAxLjcgMy4zIC4xIC4yIC4yIC4zIC4zIC41IDIuMiA0LjEgNC40IDguMiA2LjggMTIuMiAuMiAuNCAuNSAuOCAuNyAxLjIgLjcgMS4xIDEuMyAyLjIgMiAzLjMgLjMgLjUgLjYgLjkgLjkgMS40IC42IDEuMSAxLjMgMi4xIDIgMy4yIC4zIC41IC42IC45IC45IDEuNCAuNyAxLjEgMS40IDIuMSAyLjEgMy4yIC4yIC40IC41IC44IC44IDEuMiAuNyAxLjEgMS41IDIuMiAyLjMgMy4zIC4yIC4yIC4zIC41IC41IC43IDM3LjUgNTEuNyA5NC40IDg4LjUgMTYwIDk5LjQgLjkgLjEgMS43IC4zIDIuNiAuNCAxIC4yIDIuMSAuNCAzLjEgLjVzMS45IC4zIDIuOCAuNGMxIC4yIDIgLjMgMyAuNCAuOSAuMSAxLjkgLjIgMi45IC4zczEuOSAuMiAyLjkgLjMgMi4xIC4yIDMuMSAuM2MuOSAuMSAxLjggLjEgMi43IC4yIDEuMSAuMSAyLjMgLjEgMy40IC4yIC44IDAgMS43IC4xIDIuNSAuMSAxLjMgMCAyLjYgLjEgMy45IC4xIC43IC4xIDEuNCAuMSAyLjEgLjEgMiAuMSA0IC4xIDYgLjFzNC0uMSA2LS4xYy43IDAgMS40LS4xIDIuMS0uMSAxLjMgMCAyLjYgMCAzLjktLjEgLjggMCAxLjctLjEgMi41LS4xIDEuMS0uMSAyLjMtLjEgMy40LS4yIC45IDAgMS44LS4xIDIuNy0uMiAxLS4xIDIuMS0uMiAzLjEtLjNzMS45LS4yIDIuOS0uM2MuOS0uMSAxLjktLjIgMi45LS4zczItLjMgMy0uNCAxLjktLjMgMi44LS40YzEtLjIgMi4xLS4zIDMuMS0uNSAuOS0uMSAxLjctLjMgMi42LS40IDY1LjYtMTEgMTIyLjUtNDcuNyAxNjAuMS0xMDIuNCAuMi0uMiAuMy0uNSAuNS0uNyAuOC0xLjEgMS41LTIuMiAyLjMtMy4zIC4yLS40IC41LS44IC44LTEuMiAuNy0xLjEgMS40LTIuMSAyLjEtMy4yIC4zLS41IC42LS45IC45LTEuNCAuNi0xLjEgMS4zLTIuMSAyLTMuMiAuMy0uNSAuNi0uOSAuOS0xLjQgLjctMS4xIDEuMy0yLjIgMi0zLjMgLjItLjQgLjUtLjggLjctMS4yIDIuNC00IDQuNi04LjEgNi44LTEyLjIgLjEtLjIgLjItLjMgLjMtLjUgLjYtMS4xIDEuMS0yLjIgMS43LTMuMyAuMi0uNiAuNS0xLjEgLjgtMS43IC41LTEgMS0yLjEgMS41LTMuMSAuMy0uNyAuNi0xLjMgLjktMiAuNS0xIDEtMiAxLjQtM2wuOS0yLjFjLjUtMSAuOS0yIDEuMy0zIC4zLS43IC42LTEuNSAuOS0yLjJsMS4yLTNjLjMtLjggLjYtMS41IC45LTIuMyAuNC0xIC43LTIgMS4xLTNzLjctMS45IDEtMi44Yy42LTEuNiAxLjItMy4zIDEuNy00LjkgLjMtMSAuNi0xLjkgLjktMi44cy41LTEuOCAuOC0yLjdjLjItLjkgLjUtMS45IC44LTIuOHMuNi0xLjggLjgtMi43Yy4zLTEgLjUtMS45IC44LTIuOSAuMi0uOSAuNS0xLjggLjctMi43IC4yLTEgLjUtMiAuNy0zIC4yLS45IC40LTEuNyAuNi0yLjYgLjItMSAuNS0yLjEgLjctMy4yIC4yLS44IC4zLTEuNiAuNS0yLjQgLjMtMS4zIC42LTIuNyAuOC00IC4xLS42IC4yLTEuMSAuMy0xLjdsLjktNS43Yy4xLS42IC4yLTEuMyAuMy0xLjkgLjEtMS4zIC4zLTIuNiAuNS0zLjkgLjEtLjggLjItMS41IC4zLTIuMyAuMS0xLjIgLjMtMi40IC40LTMuNiAwLS44IC4xLTEuNiAuMi0yLjQgLjEtMS4xIC4yLTIuMyAuMy0zLjUgLjEtLjggLjEtMS42IC4yLTIuNCAuMSAxLjcgLjEgLjUgLjItLjcgMC0uOCAuMS0xLjUgLjEtMi4zIC4xLTEuMyAuMi0yLjcgLjItNCAuMS0uNyAuMS0xLjMgLjEtMiAuMS0yIC4xLTQgLjEtNiAwLTUzLjUtMTYuOS0xMDMtNDUuOC0xNDMuN3pNNDQ4IDM3MS41Yy05LjQgMTUuNS0yMC42IDI5LjktMzMuNiA0Mi45LTIwLjYgMjAuNi00NC41IDM2LjctNzEuMiA0OC0xMy45IDUuOC0yOC4yIDEwLjMtNDIuOSAxMy4ybDAtNzUuOGMwLTU4LjYtODguNi01OC42LTg4LjYgMGwwIDc1LjhjLTE0LjctMi45LTI5LTcuMy00Mi45LTEzLjItMjYuNy0xMS4zLTUwLjYtMjcuNC03MS4yLTQ4LTEzLTEzLTI0LjItMjcuNC0zMy42LTQyLjlsMC03MS4zYzAtMi4xIDEuNi0zLjcgMy43LTMuN2wyMi4xIDBjMi4xIDAgMy43IDEuNiAzLjcgMy43bDAgMjUuOCAyOS42IDAgMC0xNDRjMC0yLjEgMS42LTMuNyAzLjctMy43bDIyLjEgMGMyLjEgMCAzLjcgMS42IDMuNyAzLjdsMCAyNS45IDI5LjUgMCAwLTI1LjljMC0yLjEgMS42LTMuNyAzLjctMy43bDIyLjIgMGMyLjEgMCAzLjcgMS42IDMuNyAzLjdsMCAyNS45IDI5LjUgMCAwLTI1LjljMC00LjggNi41LTMuNyA5LjUtMy43bDAtOTAuMmMtNC40LTItNy40LTYuNy03LjQtMTEuNSAwLTE2LjggMjUuNC0xNi44IDI1LjQgMCAwIDQuOC0zIDkuNC03LjQgMTEuNWwwIDMuOWM2LjMtMS40IDEyLjctMi4zIDE5LjItMi4zIDkuNCAwIDE4LjQgMy41IDI2LjMgMy41IDcuMiAwIDE1LjItMy41IDE5LjQtMy41IDIuMSAwIDMuNyAxLjYgMy43IDMuN2wwIDQ4LjRjMCA1LjYtMTguNyA2LjUtMjIuNCA2LjUtOC42IDAtMTYuNi0zLjUtMjUuNC0zLjUtNyAwLTE0LjEgMS4yLTIwLjggMi44bDAgMzAuN2MzIDAgOS41LTEuMSA5LjUgMy43bDAgMjUuOSAyOS41IDAgMC0yNS45YzAtMi4xIDEuNi0zLjcgMy43LTMuN2wyMi4yIDBjMi4xIDAgMy43IDEuNiAzLjcgMy43bDAgMjUuOSAyOS41IDAgMC0yNS45YzAtMi4xIDEuNi0zLjcgMy43LTMuN2wyMi4xIDBjMi4xIDAgMy43IDEuNiAzLjcgMy43bDAgMTQ0IDI5LjUgMCAwLTI1LjhjMC0yLjEgMS42LTMuNyAzLjctMy43bDIyLjIgMGMyLjEgMCAzLjcgMS42IDMuNyAzLjdsMCA3MS4zeiJdfSxmbnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiYnVyb21vYmVsZXhwZXJ0ZSIsaWNvbjpbNDQ4LDUxMixbXSwiZjM3ZiIsIk0wIDMybDAgMTI4IDEyOCAwIDAtMTI4LTEyOCAwek0xMjAgMTUybC0xMTIgMCAwLTExMiAxMTIgMCAwIDExMnpNMTYwIDMybDAgMTI4IDEyOCAwIDAtMTI4LTEyOCAwek0yODAgMTUybC0xMTIgMCAwLTExMiAxMTIgMCAwIDExMnpNMzIwIDMybDAgMTI4IDEyOCAwIDAtMTI4LTEyOCAwek00NDAgMTUybC0xMTIgMCAwLTExMiAxMTIgMCAwIDExMnpNMCAxOTJsMCAxMjggMTI4IDAgMC0xMjgtMTI4IDB6TTEyMCAzMTJsLTExMiAwIDAtMTEyIDExMiAwIDAgMTEyem00MC0xMjBsMCAxMjggMTI4IDAgMC0xMjgtMTI4IDB6TTI4MCAzMTJsLTExMiAwIDAtMTEyIDExMiAwIDAgMTEyem00MC0xMjBsMCAxMjggMTI4IDAgMC0xMjgtMTI4IDB6TTQ0MCAzMTJsLTExMiAwIDAtMTEyIDExMiAwIDAgMTEyek0wIDM1MmwwIDEyOCAxMjggMCAwLTEyOC0xMjggMHpNMTIwIDQ3MmwtMTEyIDAgMC0xMTIgMTEyIDAgMCAxMTJ6bTQwLTEyMGwwIDEyOCAxMjggMCAwLTEyOC0xMjggMHpNMjgwIDQ3MmwtMTEyIDAgMC0xMTIgMTEyIDAgMCAxMTJ6bTQwLTEyMGwwIDEyOCAxMjggMCAwLTEyOC0xMjggMHoiXX0scG5yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImJpbGliaWxpIixpY29uOls1MTIsNTEyLFtdLCJlM2Q5IiwiTTQ4OC42IDEwNC4xYzE2LjcgMTguMSAyNC40IDM5LjcgMjMuMyA2NS43bDAgMjAyLjRjLS40IDI2LjQtOS4yIDQ4LjEtMjYuNSA2NS4xLTE3LjIgMTctMzkuMSAyNS45LTY1LjUgMjYuN0w5MiA0NjRjLTI2LjQtLjgtNDguMi05LjgtNjUuMy0yNy4yLTE3LjEtMTcuNC0yNi00MC4zLTI2LjctNjguNkwwIDE2OS44Yy44LTI2IDkuNy00Ny42IDI2LjctNjUuNyAxNy4xLTE2LjMgMzguOC0yNS4zIDY1LjMtMjYuMWwyOS40IDAtMjUuNC0yNS44Yy01LjctNS43LTguNi0xMy04LjYtMjEuOHMyLjktMTYuMSA4LjYtMjEuOCAxMy04LjYgMjEuOS04LjYgMTYuMSAyLjkgMjEuOSA4LjZsNzMuMyA2OS40IDg4IDAgNzQuNS02OS40QzM4MS43IDIuOSAzODkuMiAwIDM5OCAwczE2LjEgMi45IDIxLjkgOC42YzUuNyA1LjcgOC42IDEzIDguNiAyMS44cy0yLjkgMTYuMS04LjYgMjEuOEwzOTQuNiA3OCA0MjMuOSA3OGMyNi40IC44IDQ4IDkuOCA2NC43IDI2LjF6bS0zOC44IDY5LjdjLS40LTkuNi0zLjctMTcuNC0xMC43LTIzLjUtNS4yLTYuMS0xNC05LjQtMjIuNy05LjhsLTMyMC40IDBjLTkuNiAuNC0xNy40IDMuNy0yMy42IDkuOC02LjEgNi4xLTkuNCAxMy45LTkuOCAyMy41bDAgMTk0LjRjMCA5LjIgMy4zIDE3IDkuOCAyMy41czE0LjQgOS44IDIzLjYgOS44bDMyMC40IDBjOS4yIDAgMTctMy4zIDIzLjMtOS44czkuNy0xNC4zIDEwLjEtMjMuNWwwLTE5NC40ek0xODUuNSAyMTYuNWM2LjMgNi4zIDkuNyAxNC4xIDEwLjEgMjMuMmwwIDMzLjNjLS40IDkuMi0zLjcgMTYuOS05LjggMjMuMi02LjIgNi4zLTE0IDkuNS0yMy42IDkuNXMtMTcuNS0zLjItMjMuNi05LjUtOS40LTE0LTkuOC0yMy4ybDAtMzMuM2MuNC05LjEgMy44LTE2LjkgMTAuMS0yMy4yczEzLjItOS42IDIzLjMtMTBjOS4yIC40IDE3IDMuNyAyMy4zIDEwem0xOTEuNSAwYzYuMyA2LjMgOS43IDE0LjEgMTAuMSAyMy4ybDAgMzMuM2MtLjQgOS4yLTMuNyAxNi45LTkuOCAyMy4ycy0xNCA5LjUtMjMuNiA5LjUtMTcuNC0zLjItMjMuNi05LjVjLTctNi4zLTkuNC0xNC05LjctMjMuMmwwLTMzLjNjLjMtOS4xIDMuNy0xNi45IDEwLTIzLjJzMTQuMS05LjYgMjMuMy0xMGM5LjIgLjQgMTcgMy43IDIzLjMgMTB6Il19LGhucj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJuZW9zIixpY29uOls0NDgsNTEyLFtdLCJmNjEyIiwiTTM4My44IDUxMmwtOTUuMSAwLTEwOC4yLTE1NC41IDAgOTEuMS04Ni40IDYzLjQtOTcuNyAwIDAtNDgyLjIgNDAuNS0yOS44IDEwOCAwIDEyMy43IDE3Ni4xIDAtMTEyLjcgODYuNC02My40IDk3LjcgMCAwIDQ2MS41LTY4LjkgNTAuNXpNNy4yIDM1LjNsMCA0NjAuNyA3Mi01Mi45IDAtMjQ5LjEgMjE1LjUgMzA3LjYgODQuOCAwIDUyLjQtMzguMi03OC4zIDAtMzE2LjEtNDUwLjUtMzAuMiAyMi4zek04OS43IDUwMS45bDgwLTU4LjggMC0xMDEtNzkuOC0xMTQuNCAwIDIyMC45LTcyLjYgNTMuMyA3Mi4zIDAgMCAwek00OSAxMC44bDMxMC42IDQ0Mi42IDgyLjQgMCAwLTQ0Mi42LTc5LjggMCAwIDMxNy42LTIyMi45LTMxNy42LTkwLjMgMHpNMjc5LjQgMTkxLjZsNzIgMTAyLjggMC0yNzguNS03MiA1MyAwIDEyMi43eiJdfSxtbnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZGV2IixpY29uOls0NDgsNTEyLFtdLCJmNmNjIiwiTTEyMC4xIDIwOC4zYy0zLjktMi45LTcuOC00LjMtMTEuNi00LjNsLTE3LjQgMCAwIDEwNC41IDE3LjQgMGMzLjkgMCA3LjgtMS40IDExLjYtNC4zczUuOC03LjMgNS44LTEzLjFsMC02OS43YzAtNS44LTItMTAuMi01LjgtMTMuMXpNNDA0LjEgMzJMNDMuOSAzMkMxOS43IDMyIC4xIDUxLjYgMCA3NS44TDAgNDM2LjJDLjEgNDYwLjQgMTkuNyA0ODAgNDMuOSA0ODBsMzYwLjIgMGMyNC4yIDAgNDMuOC0xOS42IDQzLjktNDMuOGwwLTM2MC40QzQ0Ny45IDUxLjYgNDI4LjMgMzIgNDA0LjEgMzJ6TTE1NC4yIDI5MS4yYzAgMTguOC0xMS42IDQ3LjMtNDguNCA0Ny4zbC00Ni40IDAgMC0xNjUuNSA0Ny40IDBjMzUuNCAwIDQ3LjQgMjguNSA0Ny40IDQ3LjNsMCA3MC45em0xMDAuNy04OC43bC01My4zIDAgMCAzOC40IDMyLjYgMCAwIDI5LjYtMzIuNiAwIDAgMzguNCA1My4zIDAgMCAyOS42LTYyLjIgMGMtMTEuMiAuMy0yMC40LTguNS0yMC43LTE5LjdsMC0xMjUuMWMtLjMtMTEuMSA4LjYtMjAuNCAxOS43LTIwLjdsNjMuMiAwIDAgMjkuNXpNMzU4LjUgMzE3LjhjLTEzLjIgMzAuNy0zNi44IDI0LjYtNDcuNCAwbC0zOC41LTE0NC44IDMyLjYgMCAyOS43IDExMy43IDI5LjYtMTEzLjcgMzIuNiAwLTM4LjUgMTQ0Ljh6Il19LGducj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJob3RqYXIiLGljb246WzUxMiw1MTIsW10sImYzYjEiLCJNMzYxLjggMGMwIDEzMS42LTgwLjcgMTc2LjgtMTQwLjIgMjA5LjQtLjYgLjMtMS4xIC42LTEuNiAuOS01My44IDMwLjItODguNyA0OS44LTg5LjYgMTIybC05OC4xIDBjMC0xMzEuNSA4MC43LTE3Ni43IDE0MC4yLTIwOS4zIDU0LjgtMjkuOCA5MC4zLTUwIDkwLjMtMTIzbDk5IDB6TTMwMS4zIDMwMi42YzU0LjgtMjkuOCA5MC4zLTUwIDkwLjMtMTIzbDk4IDBjMCAxMzEuNi04MC43IDE3Ni43LTE0MC4yIDIwOS40LTU0LjggMjkuOC05MC4zIDUwLTkwLjMgMTIzbC05OCAwYzAtMTMxLjYgODAuNy0xNzYuOCAxNDAuMi0yMDkuNHoiXX0seG5yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImRvY2h1YiIsaWNvbjpbNDQ4LDUxMixbXSwiZjM5NCIsIk00MTMuOSAxNjBMMjcyIDE2MCAyNzIgMTkuNiA0MTMuOSAxNjB6TTMyMCAxOTJsMCAxMzBjMCA2Ni44LTM2LjUgMTAwLjEtMTEzLjMgMTAwLjFsLTk0LjcgMCAwLTMzNy4zIDk0LjcgMGMxMiAwIDIzLjEgLjggMzMuMSAyLjVsMC04NEMyMjguOSAxLjEgMjE3LjQgMCAyMDUuMiAwTDE2IDAgMTYgNTEyIDIwNS4yIDUxMkMzNDUuNyA1MTIgNDE2IDQ0Ny40IDQxNiAzMTguMWwwLTEyNi4xLTk2IDB6Il19LGJucj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJ2aW1lbyIsaWNvbjpbNDQ4LDUxMixbXSwiZjQwYSIsIk00MDMuMiAzMkw0NC44IDMyQzIwLjEgMzIgMCA1Mi4xIDAgNzYuOEwwIDQzNS4yQzAgNDU5LjkgMjAuMSA0ODAgNDQuOCA0ODBsMzU4LjQgMGMyNC43IDAgNDQuOC0yMC4xIDQ0LjgtNDQuOGwwLTM1OC40QzQ0OCA1Mi4xIDQyNy45IDMyIDQwMy4yIDMyek0zNzcgMTgwLjhjLTEuNCAzMS41LTIzLjQgNzQuNy02NiAxMjkuNC00NCA1Ny4yLTgxLjMgODUuOC0xMTEuNyA4NS44LTE4LjkgMC0zNC44LTE3LjQtNDcuOS01Mi4zLTI1LjUtOTMuMy0zNi40LTE0OC01Ny40LTE0OC0yLjQgMC0xMC45IDUuMS0yNS40IDE1LjJMNTMuNCAxOTEuM2MzNy4zLTMyLjggNzIuOS02OS4yIDk1LjItNzEuMiAyNS4yLTIuNCA0MC43IDE0LjggNDYuNSA1MS43IDIwLjcgMTMxLjIgMjkuOSAxNTEgNjcuNiA5MS42IDEzLjUtMjEuNCAyMC44LTM3LjcgMjEuOC00OC45IDMuNS0zMy4yLTI1LjktMzAuOS00NS44LTIyLjQgMTUuOS01Mi4xIDQ2LjMtNzcuNCA5MS4yLTc2IDMzLjMgLjkgNDkgMjIuNSA0Ny4xIDY0Ljd6Il19LHZucj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJtYXhjZG4iLGljb246WzUxMiw1MTIsW10sImYxMzYiLCJNNDYxLjEgNDQyLjdsLTk3LjQgMCA1MS45LTI0Mi43YzIuMy0xMC4yIC45LTE5LjUtNC40LTI1LjctNS02LjEtMTMuNy05LjYtMjQuMi05LjZsLTQ5LjMgMC01OS41IDI3OC05Ny40IDAgNTkuNS0yNzgtODMuNCAwLTU5LjUgMjc4LTk3LjQgMCA1OS41LTI3OC00NC42LTk1LjQgMzcyLjEgMGMzOS40IDAgNzUuMyAxNi4zIDk4LjMgNDQuOSAyMy4zIDI4LjYgMzEuOCA2Ny40IDIzLjYgMTA1LjlMNDYxLjEgNDQyLjd6Il19LGFTZT17cHJlZml4OiJmYWIiLGljb25OYW1lOiJzcXVhcmUtZm9udC1hd2Vzb21lLXN0cm9rZSIsaWNvbjpbNDQ4LDUxMixbImZvbnQtYXdlc29tZS1hbHQiXSwiZjM1YyIsIk02NCA2NEM0Ni4zIDY0IDMyIDc4LjMgMzIgOTZsMCAzMjBjMCAxNy43IDE0LjMgMzIgMzIgMzJsMzIwIDBjMTcuNyAwIDMyLTE0LjMgMzItMzJsMC0zMjBjMC0xNy43LTE0LjMtMzItMzItMzJMNjQgNjR6TTAgOTZDMCA2MC43IDI4LjcgMzIgNjQgMzJsMzIwIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAzMjBjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDk2em0xNTQgNThjMCA5LjMtNC44IDE3LjQtMTIuMSAyMmwxODguOSAwYzcuMyAwIDEzLjIgNS45IDEzLjIgMTMuMiAwIDEuOC0uNCAzLjctMS4xIDUuNEwzMTIgMjY0IDM0Mi45IDMzMy40Yy44IDEuNyAxLjEgMy41IDEuMSA1LjQgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ybC0xODYuOCAwIDAgMzItMzIgMCAwLTIwOS41Yy02LjEtNC44LTEwLTEyLjItMTAtMjAuNSAwLTE0LjQgMTEuNi0yNiAyNi0yNnMyNiAxMS42IDI2IDI2eiJdfSx5bnI9YVNlLHducj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJzcGVha2FwIixpY29uOls0NDgsNTEyLFtdLCJmM2YzIiwiTTY0LjQgMzkxLjhDLTE1IDMwMy42LTcuNiAxNjcuNCA4MS4xIDg3LjZzMjI0LjgtNzMgMzA0LjIgMTUuMiA3MiAyMjQuNC0xNi42IDMwNC4xYy0xOC43IDE2LjkgNjQgNDMuMSA0MiA1Mi4zLTgyLjEgMzQuMi0yNTMuOSAzNS0zNDYuMi02Ny41bDAgMHpNMjc3LjcgMTgwLjJsMzguNS00MC45Yy05LjYtOC45LTMyLTI2LjgtNzYuMi0yNy42LTUyLjMtLjktOTUuOSAyOC4zLTk2LjggODAtLjIgMTEuMyAuMyAzNi43IDI5LjQgNTQuOCAzNC41IDIxLjQgODYuNSAyMS41IDg2IDUyLjMtLjQgMjEuMy0yNi40IDI1LjgtMzguNiAyNS42LTMgMC0zMC4yLS41LTQ3LjYtMjQuNmwtNDAgNDIuNmMyOC4yIDI3IDU5IDMyLjYgODMuNSAzMyAxMC4yIC4yIDk2LjQgLjMgOTcuOC04MSAuMy0xNS44LTIuMS0zOS43LTI4LjktNTYuNi0zNC40LTIxLjYtODUtMTkuNC04NC40LTQ5LjcgLjQtMjMuMyAzMS0yNS40IDM3LjUtMjUuMyAuNCAwIDI2LjYgLjMgMzkuNiAxNy40bDAgMHoiXX0sTW5yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImZhbnRhc3ktZmxpZ2h0LWdhbWVzIixpY29uOls1MTIsNTEyLFtdLCJmNmRjIiwiTTI1NiAzMi45TDMyLjkgMjU2IDI1NiA0NzkuMSA0NzkuMSAyNTYgMjU2IDMyLjl6TTg4LjMgMjU1LjhjMi0yIDExLjktMTIuMyA5Ni41LTk3LjUgNDEuNC00MS44IDg2LjItNDMuOCAxMTkuOC0xOC43IDI0LjYgMTguNCA2Mi4xIDU4LjkgNjIuMSA1OSAuNyAuNyAxLjEgMi45IC42IDMuNC0xMS4zIDExLjgtMjIuNyAyMy41LTMzLjUgMzQuNy0zNC4yLTMyLjMtNDAuNS0zOC4yLTQ4LjUtNDQtMTcuOC0xMi43LTQxLjQtMTAuMS01NyA1LjEtMi4yIDIuMS0xLjggMy40IC4xIDUuNCAyLjkgMi45IDI4LjEgMjguMyAzNS4xIDM1LjgtMTEuOSAxMS42LTIzLjcgMjMtMzUuNyAzNC43LTEyLTEyLjUtMjQuNS0yNS41LTM2LjUtMzguMS0yMS40IDIxLjEtNDEuNyA0MS4xLTYxLjggNjFMODguMyAyNTUuOHpNMzIzLjIgMzU3LjRjLTM1LjUgMzUuNC03OC4xIDM4LjEtMTA3IDIwLjUtMjIuMS0xMy41LTM5LjQtMzIuMS03Mi45LTY2LjggMTItMTIuNCAyMy44LTI0LjQgMzUuNC0zNi4zIDMzIDMxLjkgMzcuMSAzNiA0NC43IDQyLjEgMTguNSAxNC43IDQyLjUgMTMuNyA1OS4zLTEuOCAzLjctMy40IDMuNy0zLjYgLjEtNy4yLTEwLjYtMTAuNy0yMS4yLTIxLjQtMzEuOC0zMi4yLTEuMy0xLjMtMy0yLjUtLjgtNC43IDEwLjgtMTAuNyAyMS41LTIxLjUgMzIuMi0zMi4zIC4zLS4zIC42LS40IDEuOS0xLjEgMTIuNCAxMi45IDI0LjkgMjUuOSAzNy4yIDM4LjggMjEtMjAuNyA0MS4yLTQwLjcgNjEuMy02MC40IDEzLjcgMTMuNCAyNy4xIDI2LjYgNDAuOSA0MC0yMC4yIDIwLjktODEuNyA4Mi43LTEwMC41IDEwMS41ek0yNTYgMEwwIDI1NiAyNTYgNTEyIDUxMiAyNTYgMjU2IDB6TTE2IDI1NkwyNTYgMTYgNDk2IDI1NiAyNTYgNDk2IDE2IDI1NnoiXX0sa25yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImxpbnV4IixpY29uOls0NDgsNTEyLFtdLCJmMTdjIiwiTTIyMC45IDEyMy4zYzEgLjUgMS44IDEuNyAzIDEuNyAxLjEgMCAyLjgtLjQgMi45LTEuNSAuMi0xLjQtMS45LTIuMy0zLjItMi45LTEuNy0uNy0zLjktMS01LjUtLjEtLjQgLjItLjggLjctLjYgMS4xIC4zIDEuMyAyLjMgMS4xIDMuNCAxLjd6TTE5OSAxMjVjMS4yIDAgMi0xLjIgMy0xLjcgMS4xLS42IDMuMS0uNCAzLjUtMS42IC4yLS40LS4yLS45LS42LTEuMS0xLjYtLjktMy44LS42LTUuNSAuMS0xLjMgLjYtMy40IDEuNS0zLjIgMi45IC4xIDEgMS44IDEuNSAyLjggMS40ek00MjAgNDAzLjhjLTMuNi00LTUuMy0xMS42LTcuMi0xOS43LTEuOC04LjEtMy45LTE2LjgtMTAuNS0yMi40LTEuMy0xLjEtMi42LTIuMS00LTIuOS0xLjMtLjgtMi43LTEuNS00LjEtMiA5LjItMjcuMyA1LjYtNTQuNS0zLjctNzkuMS0xMS40LTMwLjEtMzEuMy01Ni40LTQ2LjUtNzQuNC0xNy4xLTIxLjUtMzMuNy00MS45LTMzLjQtNzIgLjUtNDUuOSA1LjEtMTMxLjItNzUuOC0xMzEuMy0xMDIuNC0uMi03Ni44IDEwMy40LTc3LjkgMTM1LjItMS43IDIzLjQtNi40IDQxLjgtMjIuNSA2NC43LTE4LjkgMjIuNS00NS41IDU4LjgtNTguMSA5Ni43LTYgMTcuOS04LjggMzYuMS02LjIgNTMuMy02LjUgNS44LTExLjQgMTQuNy0xNi42IDIwLjItNC4yIDQuMy0xMC4zIDUuOS0xNyA4LjNzLTE0IDYtMTguNSAxNC41Yy0yLjEgMy45LTIuOCA4LjEtMi44IDEyLjQgMCAzLjkgLjYgNy45IDEuMiAxMS44IDEuMiA4LjEgMi41IDE1LjcgLjggMjAuOC01LjIgMTQuNC01LjkgMjQuNC0yLjIgMzEuNyAzLjggNy4zIDExLjQgMTAuNSAyMC4xIDEyLjMgMTcuMyAzLjYgNDAuOCAyLjcgNTkuMyAxMi41IDE5LjggMTAuNCAzOS45IDE0LjEgNTUuOSAxMC40IDExLjYtMi42IDIxLjEtOS42IDI1LjktMjAuMiAxMi41LS4xIDI2LjMtNS40IDQ4LjMtNi42IDE0LjktMS4yIDMzLjYgNS4zIDU1LjEgNC4xIC42IDIuMyAxLjQgNC42IDIuNSA2LjdsMCAuMWM4LjMgMTYuNyAyMy44IDI0LjMgNDAuMyAyMyAxNi42LTEuMyAzNC4xLTExIDQ4LjMtMjcuOSAxMy42LTE2LjQgMzYtMjMuMiA1MC45LTMyLjIgNy40LTQuNSAxMy40LTEwLjEgMTMuOS0xOC4zIC40LTguMi00LjQtMTcuMy0xNS41LTI5Ljd6TTIyMy44IDg3LjNjOS44LTIyLjIgMzQuMi0yMS44IDQ0LS40IDYuNSAxNC4yIDMuNiAzMC45LTQuMyA0MC40LTEuNi0uOC01LjktMi42LTEyLjYtNC45IDEuMS0xLjIgMy4xLTIuNyAzLjktNC42IDQuOC0xMS44LS4yLTI3LTkuMS0yNy4zLTcuMy0uNS0xMy45IDEwLjgtMTEuOCAyMy00LjEtMi05LjQtMy41LTEzLTQuNC0xLTYuOS0uMy0xNC42IDIuOS0yMS44ek0xODMuMSA3NS44YzEwLjEgMCAyMC44IDE0LjIgMTkuMSAzMy41LTMuNSAxLTcuMSAyLjUtMTAuMiA0LjYgMS4yLTguOS0zLjMtMjAuMS05LjYtMTkuNi04LjQgLjctOS44IDIxLjItMS44IDI4LjEgMSAuOCAxLjktLjItNS45IDUuNS0xNS42LTE0LjYtMTAuNS01Mi4xIDguNC01Mi4xem0tMTMuNiA2MC43YzYuMi00LjYgMTMuNi0xMCAxNC4xLTEwLjUgNC43LTQuNCAxMy41LTE0LjIgMjcuOS0xNC4yIDcuMSAwIDE1LjYgMi4zIDI1LjkgOC45IDYuMyA0LjEgMTEuMyA0LjQgMjIuNiA5LjMgOC40IDMuNSAxMy43IDkuNyAxMC41IDE4LjItMi42IDcuMS0xMSAxNC40LTIyLjcgMTguMS0xMS4xIDMuNi0xOS44IDE2LTM4LjIgMTQuOS0zLjktLjItNy0xLTkuNi0yLjEtOC0zLjUtMTIuMi0xMC40LTIwLTE1LTguNi00LjgtMTMuMi0xMC40LTE0LjctMTUuMy0xLjQtNC45IDAtOSA0LjItMTIuM3ptMy4zIDMzNGMtMi43IDM1LjEtNDMuOSAzNC40LTc1LjMgMTgtMjkuOS0xNS44LTY4LjYtNi41LTc2LjUtMjEuOS0yLjQtNC43LTIuNC0xMi43IDIuNi0yNi40bDAtLjJjMi40LTcuNiAuNi0xNi0uNi0yMy45LTEuMi03LjgtMS44LTE1IC45LTIwIDMuNS02LjcgOC41LTkuMSAxNC44LTExLjMgMTAuMy0zLjcgMTEuOC0zLjQgMTkuNi05LjkgNS41LTUuNyA5LjUtMTIuOSAxNC4zLTE4IDUuMS01LjUgMTAtOC4xIDE3LjctNi45IDguMSAxLjIgMTUuMSA2LjggMjEuOSAxNmwxOS42IDM1LjZjOS41IDE5LjkgNDMuMSA0OC40IDQxIDY4Ljl6bS0xLjQtMjUuOWMtNC4xLTYuNi05LjYtMTMuNi0xNC40LTE5LjYgNy4xIDAgMTQuMi0yLjIgMTYuNy04LjkgMi4zLTYuMiAwLTE0LjktNy40LTI0LjktMTMuNS0xOC4yLTM4LjMtMzIuNS0zOC4zLTMyLjUtMTMuNS04LjQtMjEuMS0xOC43LTI0LjYtMjkuOXMtMy0yMy4zLS4zLTM1LjJjNS4yLTIyLjkgMTguNi00NS4yIDI3LjItNTkuMiAyLjMtMS43IC44IDMuMi04LjcgMjAuOC04LjUgMTYuMS0yNC40IDUzLjMtMi42IDgyLjQgLjYtMjAuNyA1LjUtNDEuOCAxMy44LTYxLjUgMTItMjcuNCAzNy4zLTc0LjkgMzkuMy0xMTIuNyAxLjEgLjggNC42IDMuMiA2LjIgNC4xIDQuNiAyLjcgOC4xIDYuNyAxMi42IDEwLjMgMTIuNCAxMCAyOC41IDkuMiA0Mi40IDEuMiA2LjItMy41IDExLjItNy41IDE1LjktOSA5LjktMy4xIDE3LjgtOC42IDIyLjMtMTUgNy43IDMwLjQgMjUuNyA3NC4zIDM3LjIgOTUuNyA2LjEgMTEuNCAxOC4zIDM1LjUgMjMuNiA2NC42IDMuMy0uMSA3IC40IDEwLjkgMS40IDEzLjgtMzUuNy0xMS43LTc0LjItMjMuMy04NC45LTQuNy00LjYtNC45LTYuNi0yLjYtNi41IDEyLjYgMTEuMiAyOS4yIDMzLjcgMzUuMiA1OSAyLjggMTEuNiAzLjMgMjMuNyAuNCAzNS43IDE2LjQgNi44IDM1LjkgMTcuOSAzMC43IDM0LjgtMi4yLS4xLTMuMiAwLTQuMiAwIDMuMi0xMC4xLTMuOS0xNy42LTIyLjgtMjYuMS0xOS42LTguNi0zNi04LjYtMzguMyAxMi41LTEyLjEgNC4yLTE4LjMgMTQuNy0yMS40IDI3LjMtMi44IDExLjItMy42IDI0LjctNC40IDM5LjktLjUgNy43LTMuNiAxOC02LjggMjktMzIuMSAyMi45LTc2LjcgMzIuOS0xMTQuMyA3LjJ6bTI1Ny40LTExLjVjLS45IDE2LjgtNDEuMiAxOS45LTYzLjIgNDYuNS0xMy4yIDE1LjctMjkuNCAyNC40LTQzLjYgMjUuNXMtMjYuNS00LjgtMzMuNy0xOS4zYy00LjctMTEuMS0yLjQtMjMuMSAxLjEtMzYuMyAzLjctMTQuMiA5LjItMjguOCA5LjktNDAuNiAuOC0xNS4yIDEuNy0yOC41IDQuMi0zOC43IDIuNi0xMC4zIDYuNi0xNy4yIDEzLjctMjEuMSAuMy0uMiAuNy0uMyAxLS41IC44IDEzLjIgNy4zIDI2LjYgMTguOCAyOS41IDEyLjYgMy4zIDMwLjctNy41IDM4LjQtMTYuMyA5LS4zIDE1LjctLjkgMjIuNiA1LjEgOS45IDguNSA3LjEgMzAuMyAxNy4xIDQxLjYgMTAuNiAxMS42IDE0IDE5LjUgMTMuNyAyNC42ek0xNzMuNCAxNDguN2MyIDEuOSA0LjcgNC41IDggNy4xIDYuNiA1LjIgMTUuOCAxMC42IDI3LjMgMTAuNiAxMS42IDAgMjIuNS01LjkgMzEuOC0xMC44IDQuOS0yLjYgMTAuOS03IDE0LjgtMTAuNHM1LjktNi4zIDMuMS02LjYtMi42IDIuNi02IDUuMWMtNC40IDMuMi05LjcgNy40LTEzLjkgOS44LTcuNCA0LjItMTkuNSAxMC4yLTI5LjkgMTAuMnMtMTguNy00LjgtMjQuOS05LjdjLTMuMS0yLjUtNS43LTUtNy43LTYuOS0xLjUtMS40LTEuOS00LjYtNC4zLTQuOS0xLjQtLjEtMS44IDMuNyAxLjcgNi41eiJdfSxTbnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiY290dG9uLWJ1cmVhdSIsaWNvbjpbNTEyLDUxMixbXSwiZjg5ZSIsIk00NzQuMyAzMzAuNEM0NTAuNiA0MjIuMyAzODAuMSA0NzUgMjcyLjQgNDc4LjhsMC00OS4yYzAtNDggMjYuNC03NC40IDc0LjQtNzQuNCA2MiAwIDk5LjItMzcuMiA5OS4yLTk5LjIgMC02MS40LTM2LjUtOTguMy05Ny40LTk5LjEtMzMtNjkuMy0xNDYuNS02NC43LTE3Ny4yIDAtNjAuOSAuOC05Ny40IDM3LjctOTcuNCA5OS4xIDAgNjIuMSAzNy4zIDk5LjQgOTkuNCA5OS40IDQ4IDAgNzQuNiAyNi4yIDc0LjYgNzQuNGwwIDQ5LjJjLTEzNC40LTUtMjExLjEtODUuMS0yMTEuMS0yMjMgMC0xNDEuOCA4MS40LTIyMy4yIDIyMy4yLTIyMy4yIDExNC44IDAgMTg5LjggNTMuMiAyMTQuNyAxNDguOGwyNS4zIDBDNDczLjkgNzEuNSAzODguMiA4IDI1OS44IDggMTA1IDggMTIgMTAxLjIgMTIgMjU1LjggMTIgNDExLjEgMTA1LjIgNTA0LjMgMjU5LjggNTA0IDM4OC4xIDUwNCA0NzMuNyA0NDAuMiA0OTkuNSAzMzAuNGwtMjUuMiAwek0zNTcgMTgyLjNjNDEuNCAzLjQgNjQuMiAyOSA2NC4yIDczLjcgMCA0OC0yNi40IDc0LjQtNzQuNCA3NC40LTI4LjYgMC00OS4zLTkuNi02MS42LTI3LjMgODMuMS0xNi41IDc1LjYtOTkuNyA3MS44LTEyMC43em0tODEuNyA5Ny40Yy0yLjUtMTAuMy0xNi4zLTg3IDU2LjItOTcgMi4zIDEwLjEgMTYuNSA4Ny4xLTU2LjMgOTdsMCAwek0yNjAgMTMyYzI4LjYgMCA0OSA5LjcgNjEuNCAyNy42LTI4LjQgNS41LTQ5LjQgMjAuNi02MS42IDQzLjQtMTIuMi0yMi45LTMzLjItMzgtNjEuNi00My40IDEyLjQtMTcuNyAzMy4zLTI3LjQgNjEuNi0yNy40bC4yLS4zem0tNzEuNSA1MC43YzczLjIgMTAuNiA1OC45IDg2LjggNTYuNSA5Ny03Mi40LTkuOC01OS04Ny01Ni4yLTk3bC0uMiAwek0xNzMuMiAzMzAuNGMtNDggMC03NC40LTI2LjQtNzQuNC03NC40IDAtNDQuNCAyMi45LTcwIDY0LjItNzMuNy02LjggMzcuMi0xLjQgMTA2LjUgNzEuNiAxMjAuNy0xMi4xIDE3LjYtMzIuOCAyNy4zLTYxLjEgMjcuM2wtLjMgMHptNTMuMiAxMi40YzE0LjMtNy42IDI2LTE5LjMgMzMuNi0zMy41IDcuOCAxNC41IDE5LjMgMjUuNSAzMy44IDMzLjUtMTQuNCA3LjYtMjYuMSAxOS40LTMzLjYgMzMuOC04LTE0LjUtMTkuMS0yNi4yLTMzLjYtMzMuOGwtLjMgMHoiXX0sem5yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Imdvb2dsZS13YWxsZXQiLGljb246WzQ0OCw1MTIsW10sImYxZWUiLCJNMTU2LjggMTI2LjhjMzcuNiA2MC42IDY0LjIgMTEzLjEgODQuMyAxNjIuNS04LjMgMzMuOC0xOC44IDY2LjUtMzEuMyA5OC4zLTEzLjItNTIuMy0yNi41LTEwMS4zLTU2LTE0OC41IDYuNS0zNi40IDIuMy03My42IDMtMTEyLjN6TTEwOS4zIDIwMGwtOTMuMiAwYy02LjUgMC0xMC41IDcuNS02LjUgMTIuNyA0Mi4yIDU0LjMgNzEuNyAxMTcuOCA5MS43IDE4Ny4zbDEwMy41IDBjLTE2LjItNjkuNy0zOC43LTEzMy43LTgyLjUtMTkzLjUtMy00LTgtNi41LTEzLTYuNXptNDcuOC04OGM2OC41IDEwOCAxMzAgMjM0LjUgMTM4LjIgMzY4TDQwOSA0ODBjLTEyLTEzOC02OC40LTI2NS0xNDMuMi0zNjhsLTEwOC43IDB6TTQwOC45IDQzLjVjLTEuOC02LjgtOC4yLTExLjUtMTUuMi0xMS41bC04OC4zIDBjLTUuMyAwLTkgNS03LjggMTAuMyAxMy4yIDQ2LjUgMjIuMyA5NS41IDI2LjUgMTQ2IDQ4LjIgODYuMiA3OS43IDE3OC4zIDkwLjYgMjcwLjggMTUuOC02MC41IDI1LjMtMTMzLjUgMjUuMy0yMDMgMC03My42LTEyLjEtMTQ1LjEtMzEuMS0yMTIuNnoiXX0sQ25yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImZvdXJzcXVhcmUiLGljb246WzM4NCw1MTIsW10sImYxODAiLCJNMzMxLjEgM0w1Ny45IDNDMjAuNCAzIDggMzEuMyA4IDQ5LjFMOCA0ODIuOWMwIDIwLjMgMTIuMSAyNy43IDE4LjIgMzAuMSA2LjIgMi41IDIyLjggNC42IDMyLjktNy4xIDEyOC45LTE0OS40IDEzMS4xLTE1MS45IDEzMS4xLTE1MS45IDMuMS0zLjQgMy40LTMuMSA2LjgtMy4xbDgzLjQgMGMzNS4xIDAgNDAuNi0yNS4yIDQ0LjMtMzkuN2w0OC42LTI0M0MzODEuOCAyNS44IDM3MS4xIDMgMzMxLjEgM3pNMzE0LjggNzYuOGwtMTEuNCA1OS43Yy0xLjIgNi41LTkuNSAxMy4yLTE2LjkgMTMuMmwtMTA2LjQgMGMtMTIgMC0yMC42IDguMy0yMC42IDIwLjNsMCAxM2MwIDEyIDguNiAyMC42IDIwLjYgMjAuNmw5MC40IDBjOC4zIDAgMTYuNiA5LjIgMTQuOCAxOC4yLTEuOCA4LjktMTAuNSA1My44LTExLjQgNTguOC0uOSA0LjktNi44IDEzLjUtMTYuOSAxMy41bC03My41IDBjLTEzLjUgMC0xNy4yIDEuOC0yNi41IDEyLjYgMCAwLTguOSAxMS40LTg5LjUgMTA4LjMtLjkgLjktMS44IC42LTEuOC0uM2wwLTMzOC44YzAtNy43IDYuOC0xNi42IDE2LjYtMTYuNmwyMTkgMGM4LjIgMCAxNS42IDcuNyAxMy41IDE3LjV6Il19LF9ucj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJzaGlydHNpbmJ1bGsiLGljb246WzQ0OCw1MTIsW10sImYyMTQiLCJNMTAwIDQxMC4zbDMwLjYgMTMuNCA0LjQtOS45LTMwLjYtMTMuNC00LjQgOS45em0zOS40IDE3LjVsMzAuNiAxMy40IDQuNC05LjktMzAuNi0xMy40LTQuNCA5Ljl6bTE3Mi4xLTE0bDQuNCA5LjkgMzAuNi0xMy40LTQuNC05LjktMzAuNiAxMy40ek0xNzkuMSA0NDVsMzAuMyAxMy43IDQuNC05LjktMzAuMy0xMy40LTQuNCA5LjZ6TTYwLjQgMzkyLjhsMzAuNiAxMy40IDQuNC05LjYtMzAuNi0xMy43LTQuNCA5Ljl6bTIxMS40IDM4LjVsNC40IDkuOSAzMC42LTEzLjQtNC40LTkuOS0zMC42IDEzLjR6bS0zOS4zIDE3LjVsNC40IDkuOSAzMC42LTEzLjctNC40LTkuNi0zMC42IDEzLjR6bTExOC40LTUyLjJsNC40IDkuNiAzMC42LTEzLjQtNC40LTkuOS0zMC42IDEzLjd6TTE3MCA0Ni42bC0zMy41IDAgMCAxMC41IDMzLjUgMCAwLTEwLjV6bS00Ny4yIDBsLTMzLjYgMCAwIDEwLjUgMzMuNSAwIC4xLTEwLjV6bS00Ny4zIDBsLTMzLjIgMCAwIDEwLjUgMzMuMyAwLS4xLTEwLjV6bTE0MS41IDBsLTMzLjIgMCAwIDEwLjUgMzMuMiAwIDAtMTAuNXptOTQuNSAwbC0zMy41IDAgMCAxMC41IDMzLjUgMCAwLTEwLjV6bTQ3LjMgMGwtMzMuNSAwIDAgMTAuNSAzMy41IDAgMC0xMC41em0tOTQuNiAwbC0zMy4yIDAgMCAxMC41IDMzLjIgMCAwLTEwLjV6bTE0MS41IDBsLTMzLjMgMCAwIDEwLjUgMzMuMyAwIDAtMTAuNXpNNTIuOCAzNTEuMWwtMTAuOCAwIDAgMzMuNSAxMC44IDAgMC0zMy41em03MC0yMTUuOWwtMzMuNiAwIDAgMTAuNSAzMy41IDAgLjEtMTAuNXptLTcwIDEwLjZsMjIuOCAwIDAtMTAuNS0zMy42IDAgMCAzMy41IDEwLjggMCAwLTIzek0yMjEuNyAzNzQuNGE5MS4zIDkxLjMgMCAxIDAgMC0xODIuNiA5MS4zIDkxLjMgMCAxIDAgMCAxODIuNnpNMTczLjUgMjYzLjNjMC0yNS40IDI5LjUtMzEuOCA0OS42LTMxLjggMTYuOSAwIDI5LjIgNS44IDQ0LjMgMTJsLTguOCAxNi45LS45IDBjLTYuNC05LjktMjQuOC0xMy4xLTM1LjYtMTMuMS05IDAtMjkuOCAxLjgtMjkuOCAxNC45IDAgMjEuNiA3OC41LTEwLjIgNzguNSAzNy45IDAgMjUuNC0zMS41IDMxLjItNTEgMzEuMi0xOC4xIDAtMzIuNC0yLjktNDcuMi0xMi4ybDktMTguNCAuOSAwYzYuMSAxMi4yIDIzLjYgMTQuOSAzNS45IDE0LjkgOC43IDAgMzIuNy0xLjIgMzIuNy0xNC4zIDAtMjYuMS03Ny42IDYuMy03Ny42LTM4ek01Mi44IDE3OC40bC0xMC44IDAgMCAzMy42IDEwLjggMCAwLTMzLjZ6TTM5NS4yIDM4NC42bDEwLjggMCAwLTMzLjUtMTAuOCAwIDAgMzMuNXpNNTIuOCAzMDcuOWwtMTAuOCAwIDAgMzMuNSAxMC44IDAgMC0zMy41ek0wIDMuN2wwIDQwNiAyMjEuNyA5OC42IDIyNi4zLTk4LjYgMC00MDYtNDQ4IDB6TTQxOC44IDM5MC44bC0xOTYuOCA4NS43LTE5Mi44LTg1LjcgMC0yNzAuMSAzODkuNyAwIDAgMjcwLjEtLjEgMHptMC0yOTkuM2wtMzg5LjYgMCAwLTU4LjYgMzg5LjcgMCAwIDU4LjYtLjEgMHpNNTIuOCAyMjEuNmwtMTAuOCAwIDAgMzMuNSAxMC44IDAgMC0zMy41em0wIDQzLjJsLTEwLjggMCAwIDMzLjUgMTAuOCAwIDAtMzMuNXpNMTcwIDEzNS4ybC0zMy41IDAgMCAxMC41IDMzLjUgMCAwLTEwLjV6TTM5NS4yIDI5OC4zbDEwLjggMCAwLTMzLjUtMTAuOCAwIDAgMzMuNXptMC00My4ybDEwLjggMCAwLTMzLjUtMTAuOCAwIDAgMzMuNXpNMjE3IDEzNS4ybC0zMy4yIDAgMCAxMC41IDMzLjIgMCAwLTEwLjV6TTM5NS4yIDIxMmwxMC44IDAgMC0zMy41LTEwLjggMCAwIDMzLjV6bTAgMTI5LjVsMTAuOCAwIDAtMzMuNS0xMC44IDAgMCAzMy41em0tMTMxLTIwNi4zbC0zMy4yIDAgMCAxMC41IDMzLjIgMCAwLTEwLjV6bTQ3LjMgMGwtMzMuNSAwIDAgMTAuNSAzMy41IDAgMC0xMC41em04My43IDMzLjZsMTAuOCAwIDAtMzMuNS0zMy41IDAgMCAxMC41IDIyLjggMC0uMSAyM3ptLTM2LjQtMzMuNmwtMzMuNSAwIDAgMTAuNSAzMy41IDAgMC0xMC41eiJdfSxUbnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToibWludGJpdCIsaWNvbjpbNTEyLDUxMixbXSwiZTYyZiIsIk03My4yIDUxMmwwLTczLjEgMjkyLjUgMCAwLTczLjIgNzMuMiAwIDAtMTQ2LjMgNzMuMSAwIDAtMjE5LjQtMjE5LjQgMCAwIDczLjEtMTQ2LjMgMCAwIDczLjItNzMuMSAwIDAgMjkyLjYtNzMuMiAwIDAgNzMuMSA3My4yIDB6bTczLjEtMjE5LjRsNzMuMiAwIDAgNzMuMS03My4yIDAgMC03My4xem03My4yLTczLjFsNzMuMSAwIDAgNzMuMS03My4yIDAgMC03My4yIC4xIC4xem03My4xIDBsMC03My4yIDczLjIgMCAwIDczLjEtNzMuMiAwIDAgLjF6TTM2NS43IDczLjFsNzMuMiAwIDAgNzMuMi03My4yIDAgMC03My4yeiJdfSxMbnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToienVsaXAiLGljb246WzQ0OCw1MTIsW10sImU4NTMiLCJNNDI0IDk5YzAgMjIuNi0xMC4xIDQyLjYtMjUuNSA1NC44TDI0OS4zIDI4Ny43Yy0yLjggMi40LTYuNC0xLjUtNC40LTQuN2w1NC43LTExMC4xYzEuNS0zLjEtLjUtNi45LTMuNi02LjlMODMuOCAxNjZDNTAuOSAxNjYgMjQgMTM1LjkgMjQgOTkgMjQgNjIuMSA1MC45IDMyIDgzLjggMzJsMjgwLjQgMEMzOTcuMSAzMiA0MjQgNjIuMSA0MjQgOTl6TTgzLjggNDgwbDI4MC40IDBjMzIuOSAwIDU5LjgtMzAuMiA1OS44LTY3cy0yNi45LTY3LTU5LjgtNjdsLTIxMi4zIDBjLTMuMSAwLTUuMS0zLjgtMy42LTYuOUwyMDMuMSAyMjljMi0zLjItMS42LTcuMS00LjQtNC43TDQ5LjUgMzU4LjJDMzQuMSAzNzAuNCAyNCAzOTAuNCAyNCA0MTMgMjQgNDQ5LjggNTAuOSA0ODAgODMuOCA0ODB6Il19LERucj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJzdGF5bGlua2VkIixpY29uOls0NDgsNTEyLFtdLCJmM2Y1IiwiTTM4Ni43IDI5Mi41bDIuNyAyLjctMTcwLTE2Ny4zYy0zLjUtMy41LTkuNy0zLjctMTMuOC0uNUwxNDguMyAxNzFjLTQuMiAzLjItNC42IDguNy0xLjEgMTIuMmw2OC4xIDY0LjNjMy42IDMuNSA5LjkgMy43IDE0IC41bC4xLS4xYzQuMS0zLjIgMTAuNC0zIDE0IC41bDg0IDgxLjNjMy42IDMuNSAzLjIgOS0uOSAxMi4ybC05My4yIDc0Yy00LjIgMy4zLTEwLjUgMy4xLTE0LjItLjRMNjcuMiAyNjhjLTMuNS0zLjUtOS43LTMuNy0xMy45LS41TDcuNSAzMDIuNGMtNC4yIDMuMi00LjcgOC43LTEuMiAxMi4yTDIxNSA1MTAuN3M3LjQgNi44IDE3LjMtLjhMNDMwLjMgMzQ2YzQtMy4yIDQuNC04LjcgLjctMTIuMmwtNDQuMy00MS4zem01NC41LTgzLjRMMjMwLjcgMi41Yy0xLjUtMS4yLTgtNS41LTE2LjMgMS4xTDcuNiAxNjUuN2MtNC4yIDMuMi00LjggOC43LTEuMiAxMi4ybDQyLjMgNDEuNyAxNzEuNyAxNjUuMWMzLjcgMy41IDEwLjEgMy43IDE0LjMgLjRsNTAuMi0zOC44LS4zLS4zIDcuNy02YzQuMi0zLjIgNC42LTguNyAuOS0xMi4ybC01Ny4xLTU0LjRjLTMuNi0zLjUtMTAtMy43LTE0LjItLjVsLS4xIC4xYy00LjIgMy4yLTEwLjUgMy4xLTE0LjItLjRMMTEzIDE4MC44Yy0zLjYtMy41LTMuMS04LjkgMS4xLTEyLjJsOTIuMi03MS41YzQuMS0zLjIgMTAuMy0zIDEzLjkgLjVsMTYwLjQgMTU5YzMuNyAzLjUgMTAgMy43IDE0LjEgLjVsNDUuOC0zNS44YzQuMS0zLjIgNC40LTguNyAuNy0xMi4yeiJdfSxBbnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToid2ViZmxvdyIsaWNvbjpbNjQwLDUxMixbXSwiZTY1YyIsIk02NDAgNjRsLTIwNC4yIDM5OS4yLTE5MS44IDAgODUuNS0xNjUuNS0zLjggMEMyNTUuMSAzODkuMyAxNDkuOSA0NDkuNSAwIDQ2My4yTDAgMzAwLjFzOTUuOS01LjcgMTUyLjMtNjQuOWwtMTUyLjMgMCAwLTE3MS4yIDE3MS4xIDAgMCAxNDAuOCAzLjggMCA3MC0xNDAuOCAxMjkuNCAwIDAgMTM5LjkgMy44IDAgNzIuNi0xMzkuOSAxODkuMyAweiJdfSxFbnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToicmVucmVuIixpY29uOls1MTIsNTEyLFtdLCJmMThiIiwiTTIxNCAxNjkuMUMyMTQgMjc5LjUgMTUzIDM3NC41IDY2LjQgNDE2LjUgMzAgMzczLjIgOCAzMTcuNyA4IDI1Ni42IDggMTMzLjkgOTcuMSAzMi4yIDIxNCAxMi41bDAgMTU2LjZ6TTI1NSA1MDRjLTQyLjkgMC04My4zLTExLTExOC41LTMwLjQgNTcuMi0zNi4xIDEwMy40LTkwLjcgMTE4LjUtMTU0LjYgMTUuNSA2My45IDYxLjcgMTE4LjUgMTE4LjggMTU0LjctMzUuMSAxOS4zLTc1LjUgMzAuMy0xMTguOCAzMC4zem0xOTAuNi04Ny41QzM1OSAzNzQuNSAyOTggMjc5LjYgMjk4IDE2OS4xbDAtMTU2LjZjMTE2LjkgMTkuNyAyMDYgMTIxLjQgMjA2IDI0NC4xIDAgNjEuMS0yMiAxMTYuNi01OC40IDE1OS45eiJdfSwkbnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToia28tZmkiLGljb246WzUxMiw1MTIsW10sImU4NTYiLCJNMjQ5LjggNzVjODkuOCAwIDExMyAxLjEgMTQ2LjMgNC40IDc4LjEgNy44IDEyMy42IDU2IDEyMy42IDEyNS4ybDAgOC45YzAgNjQuMy00Ny4xIDExNi45LTExMC44IDEyMi40LTUgMTYuNi0xMi44IDMzLjItMjMuMyA0OS45LTI0LjQgMzcuNy03My4xIDg1LjMtMTYyLjkgODUuM2wtMTcuNyAwYy03My4xIDAtMTI5LjctMzEuNi0xNjMuNS04OS4yLTI5LjktNTAuNC0zMy44LTEwNi40LTMzLjgtMTgxLjIgMC03My43IDQ0LjQtMTEzLjYgOTYuNC0xMjAuMiAzOS4zLTUgODguMS01LjUgMTQ1LjctNS41em0wIDQxLjZjLTYwLjQgMC0xMDMuNiAuNS0xMzYuMyA1LjUtNDYgNi43LTY0LjMgMzIuNy02NC4zIDc5LjJsLjIgMjUuN2MxLjIgNTcuMyA3LjEgOTcuMSAyNy41IDEzNC41IDI2LjYgNDkuMyA3NC44IDY4LjIgMTI5LjcgNjguMmwxNy4yIDBjNzIgMCAxMDctMzQuOSAxMjYuMy02NS40IDkuNC0xNS41IDE3LjctMzIuNyAyMi4yLTU0LjNsMy4zLTEzLjggMTkuOSAwYzQ0LjMgMCA4Mi42LTM2IDgyLjYtODJsMC04LjNjMC01MS41LTMyLjItNzguNy04OC4xLTg1LjMtMzEuNi0yLjgtNTAuNC0zLjktMTQwLjItMy45ek0yNjcgMTY5LjJjMzguMiAwIDY0LjggMzEuNiA2NC44IDY3IDAgMzIuNy0xOC4zIDYxLTQyLjEgODMuMS0xNSAxNS0zOS4zIDMwLjUtNTUuOSA0MC41LTQuNCAyLjgtMTAgNC40LTE2LjcgNC40LTUuNSAwLTEwLjUtMS43LTE1LjUtNC40LTE2LjYtMTAtNDEtMjUuNS01Ni41LTQwLjUtMjEuOC0yMC44LTM5LjItNDYuOS00MS4zLTc3bC0uMi02LjFjMC0zNS41IDI1LjUtNjcgNjQuMy02NyAyMi43IDAgMzguOCAxMS42IDQ5LjMgMjcuNyAxMS42LTE2LjEgMjcuMi0yNy43IDQ5LjktMjcuN3ptMTIyLjUtMy45YzI4LjMgMCA0My44IDE2LjYgNDMuOCA0My4ycy0xNS41IDQyLjctNDMuOCA0Mi43Yy04LjkgMC0xMy44LTUtMTMuOC0xMS43bDAtNjIuNmMwLTYuNyA1LTExLjYgMTMuOC0xMS42eiJdfSxQbnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToicmV2IixpY29uOls0NDgsNTEyLFtdLCJmNWIyIiwiTTE1OC43IDI3NC45YTY1LjYgNjUuNiAwIDEgMSAxMzEuMiAwIDY1LjYgNjUuNiAwIDEgMSAtMTMxLjIgMHptMjcwLjctNS4xbC0uMSAwYy0uNy0yOS4zLTcuNy01OC4yLTIwLjUtODQuNnMtMzEuMi00OS43LTUzLjgtNjguNEwzMDkuNiAxNDNjMjIgMTQuMiA0MC4xIDMzLjggNTIuNyA1Ni44czE5LjEgNDguOCAxOS4xIDc1LjFjMCA4Ni42LTcwLjUgMTU3LjEtMTU3LjEgMTU3LjFTNjcuMiAzNjEuNSA2Ny4yIDI3NC45YzAtODEuOSA2My0xNDkuMyAxNDMtMTU2LjRsMCAzOS4xIDEwOC44LTYyLjgtMTA4LjgtNjIuOCAwIDM4LjNjLTEwNi43IDcuMi0xOTEgOTYtMTkxIDIwNC42IDAgMTExLjYgODkuMSAyMDIuMyAyMDAuMSAyMDVsMCAuMSAyMTAuMiAwIDAtMjEwLjJ6Il19LElucj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJrZXljZG4iLGljb246WzUxMiw1MTIsW10sImYzYmEiLCJNNjMuOCA0MDkuM2w2MC41LTU5YzMyLjEgNDIuOCA3MS4xIDY2IDEyNi42IDY3LjQgMzAuNSAuNyA2MC4zLTcgODYuNC0yMi40IDUuMSA1LjMgMTguNSAxOS41IDIwLjkgMjItMzIuMiAyMC43LTY5LjYgMzEuMS0xMDguMSAzMC4yLTQzLjMtMS4xLTg0LjYtMTYuNy0xMTcuNy00NC40IC4zLS42LTM4LjIgMzcuNS0zOC42IDM3LjkgOS41IDI5LjgtMTMuMSA2Mi40LTQ2LjMgNjIuNC0yNi44LS4xLTQ3LjUtMjEuNy00Ny41LTQ4LjUgMC0zNC4zIDMzLjEtNTYuNiA2My44LTQ1LjZ6TTQxOC43IDE1Ni45YzE5LjEgMzEuMyAyOS42IDY3LjQgMjguNyAxMDQtMS4xIDQ0LjgtMTkgODcuNS00OC42IDEyMSAuMyAuMyAyMy44IDI1LjIgMjQuMSAyNS41IDkuNi0xLjMgMTkuMiAyIDI1LjkgOS4xIDExLjMgMTIgMTAuOSAzMC45LTEuMSA0Mi40LTEyIDExLjMtMzAuOSAxMC45LTQyLjQtMS4xLTYuNy03LTkuNC0xNi44LTcuNi0yNi4zLTI0LjktMjYuNi00NC40LTQ3LjItNDQuNC00Ny4yIDQyLjctMzQuMSA2My4zLTc5LjYgNjQuNC0xMjQuMiAuNy0yOC45LTcuMi01Ny4yLTIxLjEtODIuMmwyMi4xLTIxek0xMDQgNTMuMWM2LjcgNyA5LjQgMTYuOCA3LjYgMjYuM2w0NS45IDQ4LjFjLTQuNyAzLjgtMTMuMyAxMC40LTIyLjggMjEuMy0yNS40IDI4LjUtMzkuNiA2NC44LTQwLjcgMTAyLjktLjcgMjguOSA2LjEgNTcuMiAyMCA4Mi40TDkyIDM1NS42Yy0xOS4zLTMxLjYtMjguOS02Ny43LTI3LjgtMTA0LjcgMS00NC42IDE4LjMtODcuNiA0Ny41LTEyMS4xTDg2LjQgMTAzLjRjLTkuNiAxLjMtMTkuMi0yLTI1LjktOS4xLTExLjMtMTItMTAuOS0zMC45IDEuMS00Mi40IDExLjktMTEuMiAzMC42LTEwLjkgNDIuNCAxLjJ6TTQ2NC45IDhjMjYgMCA0Ny4xIDIyLjQgNDcuMSA0OC4zUzQ5MC45IDEwNCA0NjQuOSAxMDRjLTYuMyAuMS0xNC0xLjEtMTUuOS0xLjhsLTYyLjkgNTkuN2MtMzIuNy00My42LTc2LjctNjUuOS0xMjYuOS02Ny4yLTMwLjUtLjctNjAuMyA2LjgtODYuMiAyMi40bC0yMS4xLTIyQzE4NC4xIDc0LjMgMjIxLjUgNjQgMjYwIDY0LjkgMzAzLjMgNjYgMzQ0LjYgODEuNiAzNzcuNyAxMDkuNWw0MS4xLTM4LjZjLTEuNS00LjctMi4yLTkuNi0yLjItMTQuNS0uMS0yNi43IDIyLjMtNDguNCA0OC4zLTQ4LjR6TTI1Ni43IDExMy40YzUuNSAwIDEwLjkgLjQgMTYuNCAxLjEgNzguMSA5LjggMTMzLjQgODEuMSAxMjMuOCAxNTkuMS05LjggNzguMS04MS4xIDEzMy40LTE1OS4xIDEyMy44LTc4LjEtOS44LTEzMy40LTgxLjEtMTIzLjgtMTU5LjIgOS4zLTcyLjQgNzAuMS0xMjQuNiAxNDIuNy0xMjQuOHptLTU5IDExOS40Yy42IDIyLjcgMTIuMiA0MS44IDMyLjQgNTIuMmwtMTEgNTEuNyA3My43IDAtMTEtNTEuN2MyMC4xLTEwLjkgMzIuMS0yOSAzMi40LTUyLjItLjQtMzIuOC0yNS44LTU3LjUtNTguMy01OC4zLTMyLjEgLjgtNTcuMyAyNC44LTU4LjIgNTguM3oiXX0sTm5yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImhpcmUtYS1oZWxwZXIiLGljb246WzUxMiw1MTIsW10sImYzYjAiLCJNNDQzLjEgMEw3MS45IDBDNjcuOSAzNy4zIDM3LjQgNjcuOCAwIDcxLjdMMCA0NDMuMmMzNy40IDQuOSA2NiAzMi40IDcxLjkgNjguOGwzNzIuMiAwYzMtMzYuNCAzMi41LTY1LjggNjcuOS02OS44bDAtMzcwLjVDNDc1LjYgNjUuOCA0NDcgMzYuNCA0NDMuMSAwem0tMzcgNDA0LjljLTM2LjMgMC0xOC44LTItNTUuMS0yLTM1LjggMC0yMSAyLTU2LjEgMi01LjkgMC00LjktOC4yIDAtOS44IDIyLjgtNy42IDIyLjktMTAuMiAyNC42LTEyLjggMTAuNC0xNS42IDUuOS04MyA1LjktMTEzIDAtNS4zLTYuNC0xMi44LTEzLjgtMTIuOGwtMTExLjIgMGMtNy40IDAtMTMuOCA3LjUtMTMuOCAxMi44IDAgMzAtNC41IDk3LjQgNS45IDExMyAxLjcgMi41IDEuOCA1LjIgMjQuNiAxMi44IDQuOSAxLjYgNiA5LjggMCA5LjgtMzUuMSAwLTIwLjMtMi01Ni4xLTItMzYuMyAwLTE4LjggMi01NS4xIDItNy45IDAtNS44LTEwLjggMC0xMC44IDEwLjItMy40IDEzLjUtMy41IDIxLjctMTMuOCA3LjctMTIuOSA3LjktNDQuNCA3LjktMTI3LjhsMC0xMDEuMmMwLTIyLjItMTIuMi0yOC4zLTI4LjYtMzIuNC04LjgtMi4yLTQtMTEuOCAxLTExLjggMzYuNSAwIDIwLjYgMiA1Ny4xIDIgMzIuNyAwIDE2LjUtMiA0OS4yLTIgMy4zIDAgOC41IDguMyAxIDEwLjgtNC45IDEuNi0yNy42IDMuNy0yNy42IDM5LjMgMCA0NS42LS4yIDU1LjggMSA2OC44IDAgMS4zIDIuMyAxMi44IDEyLjggMTIuOGwxMDkuMiAwYzEwLjUgMCAxMi44LTExLjUgMTIuOC0xMi44IDEuMi0xMyAxLTIzLjIgMS02OC44IDAtMzUuNi0yMi43LTM3LjctMjcuNi0zOS4zLTcuNS0yLjUtMi4zLTEwLjggMS0xMC44IDMyLjcgMCAxNi41IDIgNDkuMiAyIDM2LjUgMCAyMC42LTIgNTcuMS0yIDQuOSAwIDkuOSA5LjYgMSAxMS44LTE2LjQgNC4xLTI4LjYgMTAuMy0yOC42IDMyLjRsMCAxMDEuMmMwIDgzLjQgLjEgMTE0LjkgNy45IDEyNy44IDguMiAxMC4yIDExLjQgMTAuNCAyMS43IDEzLjggNS44IDAgNy44IDEwLjggMCAxMC44eiJdfSxpU2U9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic3F1YXJlLWhhY2tlci1uZXdzIixpY29uOls0NDgsNTEyLFsiaGFja2VyLW5ld3Mtc3F1YXJlIl0sImYzYWYiLCJNNDQ4IDk2YzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzIwIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zMjB6TTIxIDIyOS4ycy4xLS4xIC4xLS4yIC4xLS4yIC4yLS4yYzAgLjEgMCAuMy0uMSAuNGwtLjIgMHpNMjM5LjIgMzg0bC0zMS40IDAgMC0xMDIuNy03OS44LTE1My4zIDM3LjMgMGM0MS41IDc3LjcgNDguMSA5NS44IDU0LjEgMTEyIDEuNiA0LjMgMy4xIDguNSA1LjIgMTMuNiAzLjItNyA1LjEtMTEuOSA3LjEtMTcuMyA1LjktMTUuMyAxMi44LTMzLjIgNTMuNS0xMDguM2wzNC44IDAtODAuOCAxNTUuMSAwIDEwMC45eiJdfSxGbnI9aVNlLE9ucj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJjcmVhdGl2ZS1jb21tb25zLXBkLWFsdCIsaWNvbjpbNTEyLDUxMixbXSwiZjRlZCIsIk0yNTUuNiA4QzExMi43IDggOCAxMjMuMSA4IDI1NiA4IDM5NC41IDEyMS42IDUwNCAyNTUuNiA1MDQgMzg1LjUgNTA0IDUwNCA0MDMuMSA1MDQgMjU2IDUwNCAxMTguMSAzOTcuNCA4IDI1NS42IDh6bS44IDQ1MC44Yy0xMTIuNSAwLTIwMy43LTkzLTIwMy43LTIwMi44IDAtMTA1LjQgODUuNS0yMDMuMyAyMDMuNy0yMDMuMyAxMTIuNiAwIDIwMi45IDg5LjUgMjAyLjggMjAzLjMgMCAxMjEuNy05OS42IDIwMi44LTIwMi44IDIwMi44ek0zMjQuNyAxODZsLTUzLjIgMCAwIDEzNy4yIDUzLjIgMGMyMS40IDAgNzAtNS4xIDcwLTY4LjYgMC02My40LTQ4LjYtNjguNi03MC02OC42em0uOCAxMDguNWwtMTkuOSAwIDAtNzkuNyAxOS40LS4xYzMuOCAwIDM1LTIuMSAzNSAzOS45IDAgMjQuNi0xMC41IDM5LjktMzQuNSAzOS45ek0yMTEuNyAxODZsLTY4LjIgMCAwIDEzNy4zIDM0LjYgMCAwLTQ0LjMgMjcgMGM1NC4xIDAgNTcuMS0zNy41IDU3LjEtNDYuNSAwLTMxLTE2LjgtNDYuNS01MC41LTQ2LjV6bS00LjkgNjcuM2wtMjkuMiAwIDAtNDEuNiAyOC4zIDBjMzAuOSAwIDI4LjggNDEuNiAuOSA0MS42eiJdfSxSbnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToib3JjaWQiLGljb246WzUxMiw1MTIsW10sImY4ZDIiLCJNMjk0LjcgMTg4LjJsLTQ1LjkgMCAwIDE1My44IDQ3LjUgMGM2Ny42IDAgODMuMS01MS4zIDgzLjEtNzYuOSAwLTQxLjYtMjYuNS03Ni45LTg0LjctNzYuOXpNMjU2IDhhMjQ4IDI0OCAwIDEgMCAwIDQ5NiAyNDggMjQ4IDAgMSAwIDAtNDk2ek0xNzUuMiAzNjguOGwtMjkuOCAwIDAtMjA3LjUgMjkuOCAwIDAgMjA3LjV6TTE2MC4zIDk4LjVhMTkuNiAxOS42IDAgMSAxIDAgMzkuMiAxOS42IDE5LjYgMCAxIDEgMC0zOS4yek0zMDAgMzY5bC04MSAwIDAtMjA3LjcgODAuNiAwYzc2LjcgMCAxMTAuNCA1NC44IDExMC40IDEwMy45IDAgNTMuMy00MS43IDEwMy45LTExMCAxMDMuOXoiXX0sb1NlPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImJvYXJkLWdhbWUtZ2VlayIsaWNvbjpbNjQwLDUxMixbImJnZyJdLCJlODU1IiwiTTE2OC44IDE2OC4zbDMwLjEtOC4yLTEyLjMgOTguOCAxNi43IDE2LjEtMzguOSA5MS4yLTExMS44IDQxLjItNTIuNi0xMzEuOCAxNy43LTE3LTEwLjUtODQuMyAxOTEuMi03MC4zLTI5LjUgNjQuM3ptMTgwLjYgMTYuNWMxMS42IDAgMTkgNy40IDE5IDE3LjlsMCAzMS41YzAgOS43LTYuMyAxOC45LTE5LjUgMjIuMSAxMy4xIDMuMSAyMC41IDEyIDIwLjUgMjEuNGwwIDMwLjljMCAxMS4xLTcuNCAxOC4xLTE5IDE4LjFsLTg5LjEgMCAwLTE0MS44IDg4IDB6TTI5OCAyOTkuOGwzMyAwYzEuNSAwIDIuMS0xIDIuMS0yLjFsMC0yNi45YzAtMS0uNi0yLjMtMi4xLTIuM2wtMzMgMCAwIDMxLjN6bTAtNTcuM2wzMyAwYzEuNSAwIDIuMS0xLjEgMi4xLTIuM2wwLTI0LjhjMC0xLS42LTIuMy0yLjEtMi4zbC0zMyAwIDAgMjkuNHptMjA0LjEtMjcuMmwtNjUuNiAwYy0xIDAtMi4xIDEuMS0yLjEgMi4zbDAgNzYuMWMwIDEuMyAxIDIuMSAyLjEgMi4xbDI5LjcgMGMxLjUgMCAyLjMtLjggMi4zLTIuMWwwLTI0LTE5LjMgMCAxMi44LTMwIDQwLjEgMCAwIDcwLjhjMCA5LjItNy4yIDE2LjItMTYuMyAxNi4ybC03MS41IDBjLTkuMSAwLTE2LjUtNy0xNi41LTE2LjJsMC0xMDkuN2MwLTguNiA3LjQtMTYgMTYuNS0xNmw4Ny44IDAgMCAzMC41em0xMzIuNiAwbC02NS42IDBjLTEuMSAwLTIuMSAxLjEtMi4xIDIuM2wwIDc2LjFjMCAxLjMgMSAyLjEgMi4xIDIuMWwyOS42IDBjMS41IDAgMi4zLS44IDIuMy0yLjFsMC0yNC0xOS4yIDAgMTIuOC0zMCA0MC4xIDAgMCA3MC44YzAgOS4yLTcuMiAxNi4yLTE2LjMgMTYuMmwtNzEuNSAwYy05LjEgMC0xNi41LTYuOS0xNi41LTE2LjJsMC0xMDkuN2MwLTguNiA3LjQtMTYgMTYuNS0xNmw4Ny44IDAgMCAzMC41eiJdfSxCbnI9b1NlLEhucj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJiZWhhbmNlIixpY29uOls1NzYsNTEyLFtdLCJmMWI0IiwiTTIzMiAyMzcuMmMzMS44LTE1LjIgNDguNC0zOC4yIDQ4LjQtNzQgMC03MC42LTUyLjYtODcuOC0xMTMuMy04Ny44bC0xNjcuMSAwIDAgMzU0LjQgMTcxLjggMGM2NC40IDAgMTI0LjktMzAuOSAxMjQuOS0xMDIuOSAwLTQ0LjUtMjEuMS03Ny40LTY0LjctODkuN3pNNzcuOSAxMzUuOWw3My4xIDBjMjguMSAwIDUzLjQgNy45IDUzLjQgNDAuNSAwIDMwLjEtMTkuNyA0Mi4yLTQ3LjUgNDIuMmwtNzkgMCAwLTgyLjd6bTgzLjMgMjMzLjdsLTgzLjMgMCAwLTk3LjYgODQuOSAwYzM0LjMgMCA1NiAxNC4zIDU2IDUwLjYgMCAzNS44LTI1LjkgNDctNTcuNiA0N3pNNTE5LjcgMTI4LjlsLTE0My43IDAgMC0zNC45IDE0My43IDAgMCAzNC45ek01NzYgMzA1LjJjMC03NS45LTQ0LjQtMTM5LjItMTI0LjktMTM5LjItNzguMiAwLTEzMS4zIDU4LjgtMTMxLjMgMTM1LjggMCA3OS45IDUwLjMgMTM0LjcgMTMxLjMgMTM0LjcgNjEuMyAwIDEwMS0yNy42IDEyMC4xLTg2LjNsLTYyLjIgMGMtNi43IDIxLjktMzQuMyAzMy41LTU1LjcgMzMuNS00MS4zIDAtNjMtMjQuMi02My02NS4zbDE4NS4xIDBjLjMtNC4yIC42LTguNyAuNi0xMy4yek0zOTAuNCAyNzRjMi4zLTMzLjcgMjQuNy01NC44IDU4LjUtNTQuOCAzNS40IDAgNTMuMiAyMC44IDU2LjIgNTQuOGwtMTE0LjcgMHoiXX0scW5yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Im1vbmVybyIsaWNvbjpbNTEyLDUxMixbXSwiZjNkMCIsIk0zNjAgMzg0bDEwOC40IDBDNDI1IDQ1NS45IDM0Ni4xIDUwNCAyNTYgNTA0Uzg3IDQ1NS45IDQzLjYgMzg0bDEwOC40IDAgMC0xMjcuOCAxMDQgMTA0LjggMTA0LTEwNSAwIDEyOHpNOTYgMzM2bDAtMjA4IDE1OS40IDE1OS40IDE2MC42LTE1OS40IDAgMjA4IDc0LjggMGM4LjUtMjUuMSAxMy4yLTUyIDEzLjItODAgMC0xMzctMTExLTI0OC0yNDgtMjQ4UzggMTE5IDggMjU2YzAgMjggNC42IDU0LjkgMTMuMiA4MEw5NiAzMzZ6Il19LGpucj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJmaWdtYSIsaWNvbjpbMzg0LDUxMixbXSwiZjc5OSIsIk0xNCA5NS44QzE0IDQyLjkgNTYuOSAwIDEwOS44IDBMMjc0LjIgMGM1Mi45IDAgOTUuOCA0Mi45IDk1LjggOTUuOCAwIDMzLjUtMTcuMiA2My00My4yIDgwLjEgMjYgMTcuMSA0My4yIDQ2LjYgNDMuMiA4MC4xIDAgNTIuOS00Mi45IDk1LjgtOTUuOCA5NS44bC0yLjEgMGMtMjQuOCAwLTQ3LjQtOS40LTY0LjQtMjQuOWwwIDg4LjNjMCA1My42LTQ0IDk2LjgtOTcuNCA5Ni44LTUyLjggMC05Ni4zLTQyLjgtOTYuMy05NS44IDAtMzMuNSAxNy4yLTYzIDQzLjItODAuMS0yNi0xNy4xLTQzLjItNDYuNi00My4yLTgwLjFzMTcuMi02MyA0My4yLTgwLjFDMzEuMiAxNTguOCAxNCAxMjkuMyAxNCA5NS44em0xNjIuMyA5NS44bC02Ni41IDBjLTM1LjYgMC02NC40IDI4LjgtNjQuNCA2NC40IDAgMzUuNCAyOC42IDY0LjIgNjQgNjQuNGw2Ni45IDAgMC0xMjguOHpNMjA3LjcgMjU2YzAgMzUuNiAyOC44IDY0LjQgNjQuNCA2NC40bDIuMSAwYzM1LjYgMCA2NC40LTI4LjggNjQuNC02NC40cy0yOC44LTY0LjQtNjQuNC02NC40bC0yLjEgMGMtMzUuNiAwLTY0LjQgMjguOC02NC40IDY0LjR6bS05Ny45IDk1LjhsLS40IDBjLTM1LjQgLjItNjQgMjktNjQgNjQuNHMyOS4yIDY0LjQgNjQuOSA2NC40YzM2LjMgMCA2Ni0yOS40IDY2LTY1LjVsMC02My40LTY2LjUgMHptMC0zMjAuNGMtMzUuNiAwLTY0LjQgMjguOC02NC40IDY0LjRzMjguOCA2NC40IDY0LjQgNjQuNGw2Ni41IDAgMC0xMjguOC02Ni41IDB6bTk3LjkgMTI4LjhsNjYuNSAwYzM1LjYgMCA2NC40LTI4LjggNjQuNC02NC40cy0yOC44LTY0LjQtNjQuNC02NC40bC02Ni41IDAgMCAxMjguOHoiXX0sanNlPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Imluc3RhZ3JhbSIsaWNvbjpbNDQ4LDUxMixbXSwiZjE2ZCIsIk0yMjQuMyAxNDFhMTE1IDExNSAwIDEgMCAtLjYgMjMwIDExNSAxMTUgMCAxIDAgLjYtMjMwem0tLjYgNDAuNGE3NC42IDc0LjYgMCAxIDEgLjYgMTQ5LjIgNzQuNiA3NC42IDAgMSAxIC0uNi0xNDkuMnptOTMuNC00NS4xYTI2LjggMjYuOCAwIDEgMSA1My42IDAgMjYuOCAyNi44IDAgMSAxIC01My42IDB6bTEyOS43IDI3LjJjLTEuNy0zNS45LTkuOS02Ny43LTM2LjItOTMuOS0yNi4yLTI2LjItNTgtMzQuNC05My45LTM2LjItMzctMi4xLTE0Ny45LTIuMS0xODQuOSAwLTM1LjggMS43LTY3LjYgOS45LTkzLjkgMzYuMXMtMzQuNCA1OC0zNi4yIDkzLjljLTIuMSAzNy0yLjEgMTQ3LjkgMCAxODQuOSAxLjcgMzUuOSA5LjkgNjcuNyAzNi4yIDkzLjlzNTggMzQuNCA5My45IDM2LjJjMzcgMi4xIDE0Ny45IDIuMSAxODQuOSAwIDM1LjktMS43IDY3LjctOS45IDkzLjktMzYuMiAyNi4yLTI2LjIgMzQuNC01OCAzNi4yLTkzLjkgMi4xLTM3IDIuMS0xNDcuOCAwLTE4NC44ek0zOTkgMzg4Yy03LjggMTkuNi0yMi45IDM0LjctNDIuNiA0Mi42LTI5LjUgMTEuNy05OS41IDktMTMyLjEgOXMtMTAyLjcgMi42LTEzMi4xLTljLTE5LjYtNy44LTM0LjctMjIuOS00Mi42LTQyLjYtMTEuNy0yOS41LTktOTkuNS05LTEzMi4xcy0yLjYtMTAyLjcgOS0xMzIuMWM3LjgtMTkuNiAyMi45LTM0LjcgNDIuNi00Mi42IDI5LjUtMTEuNyA5OS41LTkgMTMyLjEtOXMxMDIuNy0yLjYgMTMyLjEgOWMxOS42IDcuOCAzNC43IDIyLjkgNDIuNiA0Mi42IDExLjcgMjkuNSA5IDk5LjUgOSAxMzIuMXMyLjcgMTAyLjctOSAxMzIuMXoiXX0sVm5yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InBlcmJ5dGUiLGljb246WzQ0OCw1MTIsW10sImUwODMiLCJNMzA1LjMgMjg0LjZsLTU4LjcgMCAwIDk4LjcgNTguNyAwYzE2LjMgMCAyOS00LjYgMzguMi0xMy44czEzLjgtMjEuMiAxMy44LTM2LjFjMC0xNC42LTQuNy0yNi4zLTE0LTM1LjNzLTIyLTEzLjUtMzcuOS0xMy41ek0xNDkuNCAxMjguN2wtNTguNyAwIDAgOTguNyA1OC43IDBjMTYuMyAwIDI5LTQuNiAzOC4yLTEzLjhzMTMuOC0yMS4yIDEzLjgtMzYuMWMwLTE0LjYtNC43LTI2LjMtMTQtMzUuM3MtMjItMTMuNS0zNy45LTEzLjV6TTM2Ni42IDMyTDgxLjQgMzJjLTIxLjYgMC00Mi4yIDguNi01Ny41IDIzLjlTMCA5MS44IDAgMTEzLjRMMCAzOTguNmMwIDIxLjYgOC42IDQyLjIgMjMuOSA1Ny41UzU5LjggNDgwIDgxLjQgNDgwbDI4NS4zIDBjMjEuNiAwIDQyLjItOC42IDU3LjUtMjMuOVM0NDggNDIwLjIgNDQ4IDM5OC42bDAtMjg1LjNjMC0yMS42LTguNi00Mi4yLTIzLjktNTcuNVMzODguMiAzMiAzNjYuNiAzMnptNjMuNiAzNjYuNmMwIDE2LjktNi43IDMzLTE4LjcgNDVzLTI4LjEgMTguNi00NSAxOC43bC0yODUuMyAwYy0xNi45IDAtMzMtNi43LTQ1LTE4LjdzLTE4LjYtMjguMS0xOC43LTQ1bDAtMjg1LjNjMC0xNi45IDYuNy0zMyAxOC43LTQ1czI4LjEtMTguNiA0NS0xOC43bDI4NS4zIDBjMTYuOSAwIDMzIDYuNyA0NSAxOC43czE4LjYgMjguMSAxOC43IDQ1bDAgMjg1LjN6bS0xMjUtMjY5LjlsLTU4LjcgMCAwIDk4LjcgNTguNyAwYzE2LjMgMCAyOS00LjYgMzguMi0xMy44czEzLjgtMjEuMiAxMy44LTM2LjFjMC0xNC42LTQuNy0yNi4zLTE0LTM1LjNzLTIyLTEzLjUtMzcuOS0xMy41eiJdfSxuU2U9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic3F1YXJlLXZpbWVvIixpY29uOls0NDgsNTEyLFsidmltZW8tc3F1YXJlIl0sImYxOTQiLCJNNDQ4IDk2YzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzIwIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zMjB6TTMxOC41IDMwOS41Yy00My41IDU2LjUtODAuMyA4NC44LTExMC40IDg0LjgtMTguNyAwLTM0LjQtMTcuMi00Ny4zLTUxLjYtMy44LTEzLjktNy4zLTI2LjktMTAuNS0zOS0xOC4yLTY4LjMtMjguNi0xMDcuNC00Ni4yLTEwNy40LTIuNCAwLTEwLjggNS0yNS4xIDE1LjFMNjQgMTkyYzctNi4xIDEzLjktMTIuNCAyMC42LTE4LjUgMjkuMS0yNi4zIDU1LjYtNTAuMyA3My41LTUxLjkgMjQuOS0yLjQgNDAuMiAxNC42IDQ2IDUxLjEgMjAuNSAxMjkuNiAyOS42IDE0OS4yIDY2LjggOTAuNSAxMy40LTIxLjIgMjAuNi0zNy4yIDIxLjUtNDguMyAzLjQtMzIuOC0yNS42LTMwLjYtNDUuMi0yMi4yIDE1LjctNTEuNSA0NS44LTc2LjUgOTAuMS03NS4xIDMyLjkgMSA0OC40IDIyLjQgNDYuNSA2NC0xLjQgMzEuMS0yMy4yIDczLjgtNjUuMyAxMjcuOXoiXX0sVW5yPW5TZSxXbnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToicHVzaGVkIixpY29uOls0NDgsNTEyLFtdLCJmM2UxIiwiTTQxNS4xIDExMS45bC05OC41LTkgMTQtMzMuNGMxMC40LTIzLjUtMTAuOC00MC40LTI4LjctMzdMMzAuNiA3Ni45Yy0xNS4xIDIuNy0yNiAxOC4zLTIxLjQgMzYuNkwxMTQuMyA0NjEuOGM2LjUgMjEuMyAzNi43IDI0LjIgNDcuNyA3TDE5Ny4zIDM4OCA0MzIuNSAxNTYuN2MxNi40LTE2LjggNC4zLTQyLjktMTcuNC00NC44ek0zMDUuNyA1My42YzUuMS0uNyA3LjUgMi41IDUuMiA3LjRsLTE2LjggMzkuOS0xNzcuNC0xNi4zIDE4OS0zMXpNMzAuOCAxMDcuOWMtMy4xLTUuMSAxLTEwIDYuMS05LjFsMjQ4LjcgMjIuNy05Ni45IDIzMC43LTE1Ny45LTI0NC4zek0xNDQuMSA0NTYuNGMtMi42IDQtNy45IDMuMS05LjQtMS4yTDUxLjYgMTc5LjcgMTc5LjMgMzc3LjNjLTcgMTUtMzUuMiA3OS4xLTM1LjIgNzkuMXpNNDE2LjkgMTQxLjlsLTE5OC43IDE5NS40IDg5LjctMjEzLjcgMTA2LjQgOS43YzQgMS4xIDUuNyA1LjMgMi42IDguNnoiXX0sR25yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Im1peGNsb3VkIixpY29uOls2NDAsNTEyLFtdLCJmMjg5IiwiTTIxMyAzNDYuNmwtMzMuMiAwIDAtMTUxLjUgNi4yLTIxLjYtMTAuNyAwLTM4LjEgMTczLjEtNjEgMC0zOC40LTE3My4xLTEwLjUgMCA1LjkgMjEuNiAwIDE1MS41LTMzLjIgMCAwLTE4MS42IDY1LjcgMCAzNi42IDE3My4xIDguNSAwIDM2LjYtMTczLjEgNjUuNyAwIDAgMTgxLjZ6bTMzMS41LTYzbC04NiA2Mi4xIDAtMzguMSA3Mi45LTUxLjgtNzIuOS01MS44IDAtMzguMSA4NiA2Mi4zIDkuMyAwIDg2LjMtNjIuMyAwIDM4LjEtNzMuMSA1MS44IDczLjEgNTEuOCAwIDM4LjEtODYuMy02Mi4xLTkuMyAwek00MzAuMiAyNzIuM2wtMTgyIDAgMC0zMy4xIDE4MiAwIDAgMzMuMXoiXX0sWW5yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InlhbmRleC1pbnRlcm5hdGlvbmFsIixpY29uOlszMjAsNTEyLFtdLCJmNDE0IiwiTTEyOS41IDUxMmwwLTE2Ni4xLTExMS0yOTcuOSA1NS44IDAgODEuOCAyMjkuNyA5NC4xLTI3Ny43IDUxLjMgMC0xMjAuNyAzNDcuOCAwIDE2NC4yLTUxLjMgMHoiXX0sWm5yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImhpdmUiLGljb246WzUxMiw1MTIsW10sImUwN2YiLCJNMjYwLjQgMjU0LjlMMTMxLjUgMzMuMWMtLjItLjMtLjUtLjYtLjgtLjhzLS43LS4zLTEuMS0uMy0uOCAuMS0xLjEgLjMtLjYgLjUtLjggLjhMLjMgMjU0LjljLS4yIC4zLS4zIC43LS4zIDEuMXMuMSAuOCAuMyAxLjFMMTI5LjEgNDc4LjljLjIgLjMgLjUgLjYgLjggLjhzLjcgLjMgMS4xIC4zIC44LS4xIDEuMS0uMyAuNi0uNSAuOC0uOEwyNjAuNCAyNTcuMWMuMi0uMyAuMy0uNyAuMy0xLjFzLS4xLS44LS4zLTEuMXptMzkuMS0yNS43Yy4yIC4zIC41IC42IC44IC44cy43IC4zIDEuMSAuM2w2Ni41IDBjLjQgMCAuOC0uMSAxLjEtLjNzLjYtLjUgLjgtLjggLjMtLjcgLjMtMS4xLS4xLS44LS4zLTEuMUwyNTkuMSAzMy4xYy0uMi0uMy0uNS0uNi0uOC0uOHMtLjctLjMtMS4xLS4zbC02Ni41IDBjLS40IDAtLjggLjEtMS4xIC4zcy0uNiAuNS0uOCAuOC0uMyAuNy0uMyAxLjEgLjEgLjggLjMgMS4xTDI5OS40IDIyOS4yem0yMTIuMyAyNS43TDM4NC45IDMzLjFjLS4yLS4zLS41LS42LS44LS44cy0uNy0uMy0xLjEtLjNsLTY2LjYgMGMtLjQgMC0uOCAuMS0xLjEgLjNzLS42IC41LS44IC44LS4zIC43LS4zIDEuMSAuMSAuOCAuMyAxLjFMNDQwLjcgMjU2IDMxNC41IDQ3Ni43Yy0uMiAuMy0uMyAuNy0uMyAxLjFzLjEgLjggLjMgMS4xIC41IC42IC44IC44IC43IC4zIDEuMSAuM2w2Ni42IDBjLjQgMCAuOC0uMSAxLjEtLjNzLjYtLjUgLjgtLjhMNTExLjcgMjU3LjFjLjItLjMgLjMtLjcgLjMtMS4xcy0uMS0uOC0uMy0xLjF6TTM2NiAyODQuOWwtNjYuNSAwYy0uNCAwLS44IC4xLTEuMSAuM3MtLjYgLjUtLjggLjhMMTg4LjggNDc2LjdjLS4yIC4zLS4zIC43LS4zIDEuMXMuMSAuOCAuMyAxLjEgLjUgLjYgLjggLjggLjcgLjMgMS4xIC4zbDY2LjUgMGMuNCAwIC44LS4xIDEuMS0uM3MuNi0uNSAuOC0uOEwzNjcuOSAyODguM2MuMi0uMyAuMy0uNyAuMy0xLjFzLS4xLS44LS4zLTEuMS0uNS0uNi0uOC0uOC0uNy0uMy0xLjEtLjN6Il19LFhucj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJjcmVhdGl2ZS1jb21tb25zLXplcm8iLGljb246WzUxMiw1MTIsW10sImY0ZjMiLCJNMjU1LjYgOEMzOTcuNCA4IDUwNCAxMTguMSA1MDQgMjU2IDUwNCA0MDMuMSAzODUuNSA1MDQgMjU1LjYgNTA0IDEyMS42IDUwNCA4IDM5NC41IDggMjU2IDggMTIzLjEgMTEyLjcgOCAyNTUuNiA4em0uOCA0NC43Yy0xMTguMiAwLTIwMy43IDk3LjktMjAzLjcgMjAzLjMgMCAxMDkuOCA5MS4yIDIwMi44IDIwMy43IDIwMi44IDEwMy4yIDAgMjAyLjgtODEuMSAyMDIuOC0yMDIuOCAuMS0xMTMuOC05MC4yLTIwMy4zLTIwMi44LTIwMy4zem0tLjQgNjAuNWMtODEuOSAwLTEwMi41IDc3LjMtMTAyLjUgMTQyLjhTMTc0LjEgMzk4LjggMjU2IDM5OC44IDM1OC41IDMyMS41IDM1OC41IDI1NiAzMzcuOSAxMTMuMiAyNTYgMTEzLjJ6bTAgNTMuOWMzLjMgMCA2LjQgLjUgOS4yIDEuMiA1LjkgNS4xIDguOCAxMi4xIDMuMSAyMS45TDIxMy44IDI5MC40Yy0xLjctMTIuNy0xLjktMjUuMS0xLjktMzQuNCAwLTI4LjggMi04OC45IDQ0LjEtODguOXptNDAuOCA0Ni4yYzIuOSAxNS40IDMuMyAzMS40IDMuMyA0Mi43IDAgMjguOS0yIDg4LjktNDQuMSA4OC45LTEzLjUgMC0zMi42LTcuNy0yMC4xLTI2LjRsNjAuOS0xMDUuMnoiXX0sc1NlPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InNxdWFyZS1zbmFwY2hhdCIsaWNvbjpbNDQ4LDUxMixbInNuYXBjaGF0LXNxdWFyZSJdLCJmMmFkIiwiTTM4NCAzMkw2NCAzMmMtMTcgMC0zMy4zIDYuNy00NS4zIDE4LjdTMCA3OSAwIDk2TDAgNDE2YzAgMTcgNi43IDMzLjMgMTguNyA0NS4zUzQ3IDQ4MCA2NCA0ODBsMzIwIDBjMTcgMCAzMy4zLTYuNyA0NS4zLTE4LjdTNDQ4IDQzMyA0NDggNDE2bDAtMzIwYzAtMTctNi43LTMzLjMtMTguNy00NS4zUzQwMSAzMiAzODQgMzJ6bS0zLjkgMzE5LjNsLS4xIC4xYy0yLjUgMi44LTUuNCA1LjEtOC43IDYuOC02LjUgMy42LTEzLjQgNi4zLTIwLjYgOC4yLTEuNCAuNC0yLjcgMS0zLjkgMS44LTIuMiAxLjktMi4xIDQuNi00LjQgOC42LTEuNyAzLTQgNS41LTYuOCA3LjUtNi43IDQuNi0xNC4yIDQuOS0yMi4yIDUuMi03LjIgLjMtMTUuNCAuNi0yNC43IDMuNy0zLjggMS4yLTcuOCAzLjctMTIuNCA2LjUtMTEuMyA2LjktMjYuNyAxNi40LTUyLjMgMTYuNHMtNDAuOS05LjQtNTIuMS0xNi4zYy00LjctMi45LTguNy01LjQtMTIuNS02LjYtOS4zLTMuMS0xNy41LTMuNC0yNC43LTMuNy04LS4zLTE1LjUtLjYtMjIuMi01LjItMi40LTEuNi00LjQtMy43LTYtNi4xLTMuMi00LjYtMi45LTcuOC01LjMtOS45LTEuMy0uOC0yLjYtMS41LTQuMS0xLjgtNy4xLTEuOS0xMy45LTQuNi0yMC4zLTguMS0zLjEtMS42LTUuOS0zLjgtOC4zLTYuMy02LjYtNi44LTguMy0xNC44LTUuNy0yMS44IDMuNC05LjMgMTEuNi0xMi4xIDE5LjQtMTYuMyAxNC44LTggMjYuMy0xOC4xIDM0LjQtMjkuOSAyLjMtMy4zIDQuMy02LjkgNi0xMC42IC44LTIuMiAuOC0zLjMgLjItNC40LS42LS45LTEuMy0xLjYtMi4yLTIuMi0yLjUtMS43LTUuMS0zLjQtNi45LTQuNS0zLjMtMi4xLTUuOS0zLjgtNy41LTUtNi4zLTQuNC0xMC42LTktMTMuNC0xNC4yLTEuOS0zLjYtMy03LjYtMy4zLTExLjZzLjQtOC4xIDEuOS0xMS45YzQuMS0xMC45IDE0LjUtMTcuNyAyNy0xNy43IDIuNiAwIDUuMyAuMyA3LjggLjggLjcgLjIgMS40IC4zIDIgLjUtLjEtNy40IC4xLTE1LjQgLjctMjMuMSAyLjQtMjcuMyAxMS45LTQxLjYgMjEuOS01MyA2LjQtNy4yIDEzLjktMTMuMiAyMi4zLTE3LjkgMTUuMS04LjYgMzIuMi0xMyA1MC45LTEzczM1LjggNC40IDUwLjkgMTNjOC4zIDQuNyAxNS45IDEwLjggMjIuMiAxNy45IDEwIDExLjQgMTkuNSAyNS43IDIxLjkgNTMgLjYgNy43IC45IDE1LjQgLjcgMjMuMSAuNy0uMiAxLjQtLjMgMi4xLS41IDIuNi0uNiA1LjItLjggNy44LS44IDEyLjUgMCAyMi44IDYuOCAyNyAxNy43IDEuNSAzLjggMi4xIDcuOSAxLjkgMTEuOXMtMS40IDgtMy4zIDExLjZjLTIuNyA1LjItNy4xIDkuOS0xMy40IDE0LjItMS43IDEuMi00LjMgMi45LTcuNSA1LTEuOCAxLjItNC41IDIuOS03LjIgNC43LS44IC41LTEuNCAxLjItMS45IDItLjUgMS0uNSAyLjIgLjIgNC4yIDEuNyAzLjggMy43IDcuNCA2LjEgMTAuOCA4LjMgMTIuMSAyMC4yIDIyLjMgMzUuNSAzMC40IDEuNSAuOCAzIDEuNSA0LjQgMi4zIC43IC4zIDEuNiAuOCAyLjUgMS4zIDQuOSAyLjcgOS4yIDYgMTEuNSAxMi4yIDIuNSA2LjkgMSAxNC43LTUuMiAyMS4zem0tMTYuNy0xOC41Yy01MC4zLTI0LjMtNTguMy02MS45LTU4LjctNjQuNy0uNC0zLjQtLjktNiAyLjgtOS41IDMuNi0zLjMgMTkuNS0xMy4yIDI0LTE2LjMgNy4zLTUuMSAxMC41LTEwLjIgOC4yLTE2LjUtMS43LTQuMy01LjctNi0xMC02LTEuMyAwLTIuNyAuMi00IC40LTggMS43LTE1LjggNS44LTIwLjQgNi45LS41IC4xLTEuMSAuMi0xLjcgLjItMi40IDAtMy4zLTEuMS0zLjEtNCAuNi04LjggMS44LTI1LjkgLjQtNDEuOS0xLjktMjItOS0zMi45LTE3LjQtNDIuNi00LjEtNC42LTIzLjEtMjQuNy01OS41LTI0LjdzLTU1LjQgMjAuMS01OS41IDI0LjhjLTguNCA5LjctMTUuNSAyMC42LTE3LjQgNDIuNi0xLjQgMTYtLjEgMzMuMSAuNCA0MS45IC4yIDIuOC0uNyA0LTMuMSA0LS42IDAtMS4xLS4xLTEuNy0uMi00LjUtMS4xLTEyLjMtNS4xLTIwLjMtNi45LTEuMy0uMy0yLjYtLjQtNC0uNC00LjMgMC04LjMgMS42LTEwIDYtMi40IDYuMyAuOCAxMS40IDguMiAxNi41IDQuNCAzLjEgMjAuNCAxMyAyNCAxNi4zIDMuNyAzLjQgMy4yIDYuMSAyLjggOS41LS40IDIuOC04LjQgNDAuNC01OC43IDY0LjctMi45IDEuNC04IDQuNCAuOSA5LjMgMTMuOSA3LjYgMjMuMSA2LjggMzAuMyAxMS40IDYuMSAzLjkgMi41IDEyLjQgNi45IDE1LjQgNS41IDMuOCAyMS42LS4zIDQyLjMgNi42IDE3LjQgNS43IDI4LjEgMjIgNTkgMjJzNDEuOC0xNi4zIDU4LjktMjJjMjAuOC02LjkgMzYuOS0yLjggNDIuMy02LjYgNC40LTMuMSAuOC0xMS41IDYuOS0xNS40IDcuMi00LjYgMTYuNC0zLjggMzAuMy0xMS41IDguOC00LjkgMy44LTcuOSAuOS05LjR6Il19LFFucj1zU2UsS25yPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InRoZW1laXNsZSIsaWNvbjpbNTEyLDUxMixbXSwiZjJiMiIsIk0yMDggODguM2MwLTEwIDYuMy0yMS43IDE3LjctMjEuNyAxMS4xIDAgMTcuNyAxMS43IDE3LjcgMjEuNyAwIDEwLjMtNi42IDIxLjctMTcuNyAyMS43LTExLjQgMC0xNy43LTExLjQtMTcuNy0yMS43em0zMDQgMTYwYzAgMzYtMTEuNCAxMDIuMy0zNi4zIDEyOS43LTIyLjkgMjQuOS04Ny40IDYxLjEtMTIwLjkgNzAuNmwtMS4xIC4zIDAgMzIuNmMwIDE2LjMtMTIuNiAzMC42LTI5LjEgMzAuNi0xMCAwLTE5LjQtNS43LTI0LjYtMTQuMy01LjQgOC42LTE0LjkgMTQuMy0yNC45IDE0LjNzLTE5LjQtNS43LTI0LjktMTQuM2MtNS4xIDguNi0xNC42IDE0LjMtMjQuNiAxNC4zLTEwLjMgMC0xOS40LTUuNy0yNC45LTE0LjMtNS4xIDguNi0xNC42IDE0LjMtMjQuNiAxNC4zLTE4LjkgMC0yOS40LTE1LjctMjkuNC0zMi45LTE2LjMgMTIuMy0zNS43IDE5LjQtNTYuNiAxOS40LTIyIDAtNDMuNC04LjMtNjAuMy0yMi45IDEwLjMtLjMgMjAuNi0yLjMgMzAuMy01LjctMjAuOS01LjctMzkuNC0xOC45LTUyLTM2LjMgMjEuNCA0LjYgNDYuMiAxLjcgNjcuMS0xMS4xLTIyLTIyLTU2LjYtNTguOS02OC42LTg3LjQtNS43LTEzLjQtNi45LTMxLjQtNi45LTQ1LjcgMC00OS43IDIwLjMtMTYwIDg2LjMtMTYwIDEwLjYgMCAxOC45IDQuOSAyMy4xIDE0LjkgMy43LTUuNCA3LjctMTAuNSAxMi0xNS40IDItMi42IDUuNy01LjQgNy4xLTguMyA4LTEyLjYgMTEuNy0yMS4xIDIxLjctMzQgMzIuMy00MS4xIDgxLjctNjkuNCAxMzQuOS02OS40IDYgMCAxMiAuMyAxNy43IDEuMSAxMC45LTExLjcgMjYtMTguMyA0MS43LTE4LjMgMTQuNiAwIDI5LjcgNiA0MCAxNi4zIC45IC45IDEuNCAyLjMgMS40IDMuNCAwIDMuNy0xMC4zIDEzLjQtMTIuOSAxNi4zIDQuMyAxLjQgMTUuNyA2LjkgMTUuNyAxMiAwIDIuOS0yLjkgNS4xLTQuNiA3LjEgMzEuNCAyNy43IDQ5LjQgNjcuMSA1Ni4zIDEwOCA0LjMtNS4xIDEwLjMtOC42IDE3LjEtOC42IDEwLjYgMCAyMC45IDcuMSAyOC42IDE0IDIwLjkgMTguNiAyNS43IDUzLjEgMjUuNyA3OS43ek0xODggODkuNGMwIDE4LjMgMTIuNiAzNy4xIDMyLjMgMzcuMXMzMi4zLTE4LjkgMzIuMy0zNy4xYzAtMTgtMTIuNi0zNi45LTMyLjMtMzYuOVMxODggNzEuNCAxODggODkuNHpNMjM3LjcgMTk0YzAtMTkuNyAzLjctMzkuMSA4LjYtNTguMy01MiA3OS41LTEzLjUgMTg0LjYgNjguOSAxODQuNiAyMS40IDAgNDIuNi03LjcgNjAtMjAgMi03LjQgMy43LTE0LjkgMy43LTIyLjYgMC0xNC4zLTYuMy0yMS40LTIwLjYtMjEuNC00LjYgMC05LjEgLjktMTMuNCAxLjctNjMuMyAxMi43LTEwNy4xIDMuNy0xMDcuMS02NHpNMTk2LjYgNDQ4LjljMC0xMS4xLTguOS0yMC45LTIwLjMtMjAuOXMtMjAgOS43LTIwIDIwLjlsMCAzMi42YzAgMTEuMSA4LjYgMjEuMSAyMCAyMS4xczIwLjMtOS43IDIwLjMtMjEuMWwwLTMyLjZ6bTQ5LjEgMGMwLTExLjEtOC42LTIwLjktMjAtMjAuOXMtMjAuMyA5LjctMjAuMyAyMC45bDAgMzIuNmMwIDExLjEgOC45IDIxLjEgMjAuMyAyMS4xczIwLTEwIDIwLTIxLjFsMC0zMi42em00OS43IDBjMC0xMS4xLTguOS0yMC45LTIwLjMtMjAuOXMtMjAuMyA5LjctMjAuMyAyMC45bDAgMzIuNmMwIDExLjEgOC45IDIxLjEgMjAuMyAyMS4xczIwLjMtOS43IDIwLjMtMjEuMWwwLTMyLjZ6bTQ5LjcgMGMwLTExLjEtOC45LTIwLjktMjAuMy0yMC45cy0yMC4zIDkuNy0yMC4zIDIwLjlsMCAzMi42YzAgMTEuMSA4LjkgMjEuMSAyMC4zIDIxLjFzMjAuMy0xMCAyMC4zLTIxLjFsMC0zMi42ek00MjEuNyAyODZjLTMwLjkgNTkuMS05MC4zIDEwMi42LTE1OC42IDEwMi42LTk2LjYgMC0xNjAuNi04NC42LTE2MC42LTE3Ni42IDAtMTYuOSAyLTMzLjQgNi00OS43LTIwIDMzLjctMjkuNyA3Mi42LTI5LjcgMTExLjQgMCA2MC4zIDI0LjkgMTIxLjcgNzEuNCAxNjAuOSA1LjEtOS43IDE0LjktMTYuMyAyNi0xNi4zIDEwIDAgMTkuNCA1LjcgMjQuNiAxNC4zIDUuNC04LjYgMTQuNi0xNC4zIDI0LjktMTQuMyAxMCAwIDE5LjQgNS43IDI0LjYgMTQuMyA1LjQtOC42IDE0LjktMTQuMyAyNC45LTE0LjNzMTkuNCA1LjcgMjQuOSAxNC4zYzUuMS04LjYgMTQuNi0xNC4zIDI0LjYtMTQuMyAxMC45IDAgMjAuOSA2LjYgMjUuNyAxNiA0My40LTM2LjMgNjguNi05MiA3MS40LTE0OC4zem0xMC42LTk5LjdjMC01My43LTM0LjYtMTA1LjctOTIuNi0xMDUuNy0zMC4zIDAtNTguNiAxNS4xLTc4LjkgMzYuOS0yMCA2Ni40LTI3LjQgMTM2LjYgNDEuNCAxMzYuNiAyOC44IDAgOTcuNC0yOC41IDg0LjMgMzYuOSAyOC45LTI2IDQ1LjctNjUuNyA0NS43LTEwNC42eiJdfSxKbnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZGFydC1sYW5nIixpY29uOls1MTIsNTEyLFtdLCJlNjkzIiwiTTM3OC42IDc4LjljLTIuOC0uMS01LjYtLjItOC41LS4ybC0yNjQuMSAwIDE0My4yLTcyYzcuNC00LjQgMTguOC02LjcgMzAuNC02LjcgMTMuNSAwIDI5LjQgOS4yIDM3IDE2LjhsNjIgNjIgMCAuMXpNMTA3LjMgOTYuNWwyNjIuOCAwYzE2IDAgMjUuNCAxLjQgMzUuNCA5LjNsMTA2LjUgMTA2LjQgMCAyMDguOC03OS4zIC43LTMyNS40LTMyNS4yek05Ni41IDM3M2wwLTI2Mi4yIDMyMy44IDMyMy44IC43IDc3LjQtMjEyLjIgMC05OC4xLTk4LjJDOTkuNCA0MDIuNSA5Ni41IDM5OC41IDk2LjUgMzczek03OC43IDEwNS4zbDAgMjY3LjdjMCAzLjMgLjEgNi4zIC4yIDkuMWwtNjItNjJDNi41IDMwOS4zIDAgMjk0LjMgMCAyNzkuNiAwIDI3Mi44IDMuOSAyNjIuMSA2LjcgMjU2bDcyLTE1MC43eiJdfSxlc3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZGVwbG95ZG9nIixpY29uOls1MTIsNTEyLFtdLCJmMzhlIiwiTTM4Mi4yIDEzNmw1MS43IDAgMCAyMzkuNi01MS43IDAgMC0yMC43Yy0xOS44IDI0LjgtNTIuOCAyNC4xLTczLjggMTQuNy0yNi4yLTExLjctNDQuMy0zOC4xLTQ0LjMtNzEuOCAwLTI5LjggMTQuOC01Ny45IDQzLjMtNzAuOCAyMC4yLTkuMSA1Mi43LTEwLjYgNzQuOCAxMi45bDAtMTAzLjl6TTMxNy41IDI5Ny44YTMzLjIgMzMuMiAwIDEgMCA2Ni40IDEgMzMuMiAzMy4yIDAgMSAwIC02Ni40LTF6TTE4OC41IDEzNmw1MS43IDAgMCAyMzkuNi01MS43IDAgMC0yMC43Yy0xOS44IDI0LjgtNTIuOCAyNC4xLTczLjggMTQuNy0yNi4yLTExLjctNDQuMy0zOC4xLTQ0LjMtNzEuOCAwLTI5LjggMTQuOC01Ny45IDQzLjMtNzAuOCAyMC4yLTkuMSA1Mi43LTEwLjYgNzQuOCAxMi45bDAtMTAzLjl6TTEyMy44IDI5Ny44YTMzLjIgMzMuMiAwIDEgMCA2Ni40IDEgMzMuMiAzMy4yIDAgMSAwIC02Ni40LTF6TTQ0OCA5NmMxNy41IDAgMzIgMTQuNCAzMiAzMmwwIDI1NmMwIDE3LjUtMTQuNCAzMi0zMiAzMkw2NCA0MTZjLTE3LjUgMC0zMi0xNC40LTMyLTMybDAtMjU2YzAtMTcuNSAxNC40LTMyIDMyLTMybDM4NCAwem0wLTMyTDY0IDY0QzI4LjggNjQgMCA5Mi44IDAgMTI4TDAgMzg0YzAgMzUuMiAyOC44IDY0IDY0IDY0bDM4NCAwYzM1LjIgMCA2NC0yOC44IDY0LTY0bDAtMjU2YzAtMzUuMi0yOC44LTY0LTY0LTY0eiJdfSx0c3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZmxpcGJvYXJkIixpY29uOls0NDgsNTEyLFtdLCJmNDRkIiwiTTAgMzJsMCA0NDggNDQ4IDAgMC00NDgtNDQ4IDB6TTM1OC40IDIxMS4ybC04OS42IDAgMCA4OS42LTg5LjYgMCAwIDg5LjYtODkuNiAwIDAtMjY4LjggMjY4LjggMCAwIDg5LjZ6Il19LHJzcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJidXktbi1sYXJnZSIsaWNvbjpbNTc2LDUxMixbXSwiZjhhNiIsIk0yODguMiAzMkMxMzMuNSAzMiA4IDEzMi4zIDggMjU2UzEzMy41IDQ4MCAyODguMiA0ODAgNTY4LjQgMzc5LjcgNTY4LjQgMjU2IDQ0Mi45IDMyIDI4OC4yIDMyek0yMDIuOCAzODkuMmwtMTM4LjUgMS40IDc3LjItMjkwLjcgMTMzLjQgMGM2My4yIDAgODQuOSAyOC42IDc4IDcyLjgtLjQgMi4zLS45IDQuNi0xLjUgNi45LTUuNi0xLjMtMTEuNC0xLjktMTcuMi0xLjktNDIuMyAwLTc2LjcgMzMuOS03Ni43IDc1LjcgMCAzNy4xIDI3LjEgNjggNjIuOSA3NC41LTE4LjIgMzcuMi01Ni4yIDYwLjktMTE3LjcgNjEuNXpNMzU4LjIgMjA3LjFsMzIgMC0yMi4yIDkwLjMtMzUuNCAwLTExLjItMzUuNi03LjggMzUuNi0zNy44IDAgMjYuNi05MC4zIDMxLjMgMCAxNSAzNi44IDkuNC0zNi44ek01MDQuMSAzODkuMmwtMTk3LjEgMCAxNS44LTYxLjJjMy44IC42IDcuNiAuOCAxMS41IC44IDQyLjMgMCA3Ni43LTMzLjkgNzYuNy03NS42IDAtMzIuNi0yMS02MC41LTUwLjQtNzEuMWwyMS4zLTgyLjQgOTIuNSAwLTUzIDIwNS40IDEwMy45IDAtMjEuMiA4NC4xek0yMTEuOSAyNjkuNGwtMjQuNyAwLTEzLjggNTYuNSAyNC43IDBjMTYuMSAwIDMyLjEtMy4yIDM3LjktMjYuNiA1LjYtMjIuMy04LTI5LjgtMjQuMS0yOS44ek0yMzMuMiAxNzBsLTIxLjMgMC0xMS43IDQ3LjcgMjEuNCAwYzE4IDAgMzUuNC0xNC42IDM5LjItMzAuMSA0LjYtMTguOS05LjUtMTcuNi0yNy42LTE3LjZ6Il19LGFzcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJ3YXRjaG1hbi1tb25pdG9yaW5nIixpY29uOls1MTIsNTEyLFtdLCJlMDg3IiwiTTI1NiAxNmEyNDAgMjQwIDAgMSAwIDAgNDgwIDI0MCAyNDAgMCAxIDAgMC00ODB6TTEyMS43IDQyOS4xYy01MS42LTQwLjItODQuOS0xMDIuOC04NC45LTE3My4xIDAtMjEuNyAzLjItNDMuMyA5LjYtNjQuMWwxMDIuOS0xNy45LS4xIDExLTEzLjkgMnMtLjEgMTIuNS0uMSAxOS41YzAgMiAuNCA0IDEuMiA1LjhzMi4xIDMuNCAzLjcgNC42bDkuNSA3LjQtMjcuNyAyMDQuOXpNMjI3LjQgMTQ1LjlsOC41LTcuNnM2LjktNS40LS4xLTkuM2MtNy4yLTQtMzkuNS0zNC41LTM5LjUtMzQuNS01LjMtNS41LTguMy03LjMtMTUuNSAwIDAgMC0zMi4zIDMwLjUtMzkuNSAzNC41LTcuMSA0LS4xIDkuMy0uMSA5LjNsOC41IDcuNiAwIDQuNC03My41LTE5LjJjMzkuNi01Ni45IDEwNS41LTk0LjMgMTgwLTk0LjMgMzEuMyAwIDYyLjIgNi43IDkwLjYgMTkuNnM1My44IDMxLjggNzQuMyA1NS40bC0xOTMuNSAzNy43IDAtMy42em0zNC4xIDMyOS4zbC0zMy45LTI1MC45IDkuNS03LjRjMS42LTEuMiAyLjgtMi44IDMuNy00LjZzMS4zLTMuOCAxLjItNS44YzAtNy0uMS0xOS41LS4xLTE5LjVsLTEzLjktMi0uMS0xMC41IDI0MS43IDMxLjRjMy45IDE2LjQgNS44IDMzLjMgNS44IDUwLjEgMCAxMTkuMS05NS40IDIxNi4yLTIxMy44IDIxOS4xeiJdfSxpc3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiaGlwcyIsaWNvbjpbNjQwLDUxMixbXSwiZjQ1MiIsIk0yNTEuNiAxNTcuNmMwLTEuOS0uOS0yLjgtMi44LTIuOGwtNDAuOSAwYy0xLjYgMC0yLjcgMS40LTIuNyAyLjhsMCAyMDEuOGMwIDEuNCAxLjEgMi44IDIuNyAyLjhsNDAuOSAwYzEuOSAwIDIuOC0uOSAyLjgtMi44bDAtMjAxLjh6TTE1Ni41IDE2OGMtMTYuMS0xMS44LTM2LjMtMTcuOS02MC4zLTE4LTE4LjEtLjEtMzQuNiAzLjctNDkuOCAxMS40bDAtODEuMmMwLTEuOC0uOS0yLjctMi44LTIuN2wtNDAuOSAwQy45IDc3LjUgMCA3OC40IDAgODAuMkwwIDM1OS40YzAgMS45IC45IDIuOCAyLjcgMi44bDQxIDBjMS45IDAgMi44LS45IDIuOC0yLjhsMC0xMzYuMWMwLS44LTIuOC0yNyA0NS44LTI3IDQ4LjUgMCA0NS44IDI2LjEgNDUuOCAyN2wwIDEyMi42YzAgOSA3LjMgMTYuMyAxNi40IDE2LjNsMjcuMyAwYzEuOCAwIDIuNy0uOSAyLjctMi44bDAtMTM2LjFjMC0yMy40LTkuMy00MS44LTI4LTU1LjN6TTYzNC45IDI3OC4xYy02LjgtMTUuNy0xOC40LTI3LTM0LjktMzQuMWwtNTcuNi0yNS4zYy04LjYtMy42LTkuMi0xMS4yLTIuNi0xNi4xIDcuNC01LjUgNDQuMy0xMy45IDg0IDYuOCAxLjcgMSA0LS4zIDQtMi40bDAtNDQuN2MwLTEuMy0uNi0yLjEtMS45LTIuNi0xNy43LTYuNi0zNi4xLTkuOS01NS4xLTkuOS0yNi41IDAtNDUuMyA1LjgtNTguNSAxNS40LS41IC40LTI4LjQgMjAtMjIuNyA1My43IDMuNCAxOS42IDE1LjggMzQuMiAzNy4yIDQzLjZMNTgwLjQgMjg2YzExLjYgNS4xIDE1LjIgMTMuMyAxMi4yIDIxLjItMy43IDkuMS0xMy4yIDEzLjYtMzYuNSAxMy42LTI0LjMgMC00NC43LTguOS01OC40LTE5LjEtMi4xLTEuNC00LjQgLjItNC40IDIuM2wwIDM0LjRjMCAxMC40IDQuOSAxNy4zIDE0LjYgMjAuNyAxNS42IDUuNSAzMS42IDguMiA0OC4yIDguMiAxMi43IDAgMjUuOC0xLjIgMzYuMy00LjMgLjctLjMgMzYtOC45IDQ1LjYtNDUuOCAzLjUtMTMuNSAyLjQtMjYuNS0zLjEtMzkuMXpNMzc2LjIgMTQ5LjhjLTMxLjcgMC0xMDQuMiAyMC4xLTEwNC4yIDEwMy41bDAgMTgzLjVjMCAuOCAuNiAyLjcgMi43IDIuN2w0MC45IDBjMS45IDAgMi44LS45IDIuOC0yLjdsMC04OC44YzE2LjUgMTIuNyAzNS44IDE5LjEgNTcuNyAxOS4xIDYwLjUgMCAxMDguNy00OC41IDEwOC43LTEwOC43IC4xLTYwLjMtNDguMi0xMDguNi0xMDguNi0xMDguNnptMCA0Ni42YTYyLjIgNjIuMiAwIDEgMSAwIDEyNC4zIDYyLjIgNjIuMiAwIDEgMSAwLTEyNC4zek0yMjguMyA3Mi41Yy0xNS45IDAtMjguOCAxMi45LTI4LjkgMjguOSAwIDE1LjYgMTIuNyAyOC45IDI4LjkgMjguOXMyOC45LTEzLjEgMjguOS0yOC45YzAtMTYuMi0xMy0yOC45LTI4LjktMjguOXoiXX0sb3NyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImNsb3VkdmVyc2lmeSIsaWNvbjpbNjQwLDUxMixbXSwiZjM4NSIsIk0xNjAuNiAzMDRjOC4yIDY4LjUgNjcuNCAxMTUuNSAxNDYgMTExLjMgNTEuMiA0My4zIDEzNi44IDQ1LjggMTg2LjQtNS42IDY5LjIgMS4xIDExOC41LTQ0LjYgMTMxLjUtOTkuNSAxNC44LTYyLjUtMTguMi0xMzIuNS05Mi4xLTE1NS4xLTMzLTg4LjEtMTMxLjQtMTAxLjUtMTg2LjUtODUtNTcuMyAxNy4zLTg0LjMgNTMuMi05OS4zIDEwOS43LTcuOCAyLjctMjYuNSA4LjktNDUgMjQuMSAxMS43IDAgMTUuMiA4LjkgMTUuMiAxOS41bDAgMjAuNGMwIDEwLjctOC43IDE5LjUtMTkuNSAxOS41bC0yMC4yIDBjLTEwLjcgMC0xOS41LTYtMTkuNS0xNi43bDAtNi42LTQ2LjggMGMtMy44IDAtMTAuOCA0LjMtMTAuOCAxMS45bDAgNDAuNGMwIDYuNCA1LjMgMTEuOCAxMS43IDExLjhsNDguOSAwIDAtLjF6TTM4OCAzMTJjLTEwLjcgNDYuMyAyMS43IDcyLjQgNTUuMyA4Ni44LTEwNy4yIDMzLjgtMTcxLjYtNTAuOC0xMzUuMy0xMTAuOC0zMy4yIDIxLjYtMzMuNyA3MS4yLTI5LjIgOTIuOS0xNy45LTEyLjQtNTMuOC0zMi40LTU3LjQtNzkuOC0zLTM5LjkgMjEuNS03NS43IDU3LTkzLjkgMzAuNi0xNS44IDEwMy41LTguNSAxMzMuNiA0MC44LTE0LjEtNDgtNTMuOC03MC4xLTEwMS44LTc0LjggMzAuOS0zMC43IDY0LjQtNTAuMyAxMTQuMi00My43IDY5LjggOS4zIDEzMy4yIDgyLjggNjcuNyAxNTAuNSAzNS0xNi4zIDQ4LjctNTQuNCA0Ny41LTc2LjlsMTAuNSAxOS42YzExLjggMjIgMTUuMiA0Ny42IDkuNCA3Mi05LjIgMzktNDAuNiA2OC44LTc5LjcgNzYuNS0zMi4xIDYuMy04My4xLTUuMS05MS44LTU5LjJ6TTE0MCAyMDhsLTM5LjggMGMtOC45IDAtMTYuMi03LjMtMTYuMi0xNi4ybDAtMzkuNmMwLTguOSA3LjMtMTYuMiAxNi4yLTE2LjJsMzkuOCAwYzguOSAwIDE2LjIgNy4zIDE2LjIgMTYuMmwwIDM5LjZjMCA4LjktNy4zIDE2LjItMTYuMiAxNi4yek0yMi4xIDE2OGMtNS42IDAtMTAuMS00LjUtMTAuMS0xMC4xbDAtMjcuOGMwLTUuNiA0LjUtMTAuMSAxMC4xLTEwLjFsMjcuNyAwYzUuNSAwIDEwLjEgNC41IDEwLjEgMTAuMWwwIDI3LjhjMCA1LjYtNC41IDEwLjEtMTAuMSAxMC4xbC0yNy43IDB6TTE4MCAxNDIuN2wwLTIxLjRjMC01LjEgNC4yLTkuMyA5LjMtOS4zbDIxLjQgMGM1LjEgMCA5LjMgNC4yIDkuMyA5LjNsMCAyMS40YzAgNS4xLTQuMiA5LjMtOS4zIDkuM2wtMjEuNCAwYy01LjEgMC05LjMtNC4yLTkuMy05LjN6TTY4IDIzNS41bDAgMjVjMCA2LjMtNS4xIDExLjUtMTEuNCAxMS41bC0yNS4yIDBjLTYuMyAwLTExLjQtNS4yLTExLjQtMTEuNWwwLTI1YzAtNi4zIDUuMS0xMS41IDExLjQtMTEuNWwyNS4xIDBjNi40IDAgMTEuNSA1LjIgMTEuNSAxMS41eiJdfSxuc3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZ29vZHJlYWRzIixpY29uOls0NDgsNTEyLFtdLCJmM2E4IiwiTTI5OS45IDE5MS4yYzUuMSAzNy4zLTQuNyA3OS0zNS45IDEwMC43LTIyLjMgMTUuNS01Mi44IDE0LjEtNzAuOCA1LjctMzcuMS0xNy4zLTQ5LjUtNTguNi00Ni44LTk3LjIgNC4zLTYwLjkgNDAuOS04Ny45IDc1LjMtODcuNSA0Ni45LS4yIDcxLjggMzEuOCA3OC4yIDc4LjN6TTQ0OCA4OGwwIDMzNmMwIDMwLjktMjUuMSA1Ni01NiA1Nkw1NiA0ODBjLTMwLjkgMC01Ni0yNS4xLTU2LTU2TDAgODhDMCA1Ny4xIDI1LjEgMzIgNTYgMzJsMzM2IDBjMzAuOSAwIDU2IDI1LjEgNTYgNTZ6TTMzMCAzMTMuMnMtLjEtMzQtLjEtMjE3LjNsLTI5IDAgMCA0MC4zYy0uOCAuMy0xLjItLjUtMS42LTEuMi05LjYtMjAuNy0zNS45LTQ2LjMtNzYtNDYtNTEuOSAuNC04Ny4yIDMxLjItMTAwLjYgNzcuOC00LjMgMTQuOS01LjggMzAuMS01LjUgNDUuNiAxLjcgNzcuOSA0NS4xIDExNy44IDExMi40IDExNS4yIDI4LjktMS4xIDU0LjUtMTcgNjktNDUuMiAuNS0xIDEuMS0xLjkgMS43LTIuOSAuMiAuMSAuNCAuMSAuNiAuMiAuMyAzLjggLjIgMzAuNyAuMSAzNC41LS4yIDE0LjgtMiAyOS41LTcuMiA0My41LTcuOCAyMS0yMi4zIDM0LjctNDQuNSAzOS41LTE3LjggMy45LTM1LjYgMy44LTUzLjItMS4yLTIxLjUtNi4xLTM2LjUtMTktNDEuMS00MS44LS4zLTEuNi0xLjMtMS4zLTIuMy0xLjNsLTI2LjggMGMuOCAxMC42IDMuMiAyMC4zIDguNSAyOS4yIDI0LjIgNDAuNSA4Mi43IDQ4LjUgMTI4LjIgMzcuNCA0OS45LTEyLjMgNjcuMy01NC45IDY3LjQtMTA2LjN6Il19LHNzcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJ0aWRhbCIsaWNvbjpbNjQwLDUxMixbXSwiZTdkYyIsIk0xMDcuMiA0OGwtMS4zIDBjLTMyLjMgMzMuMS02NS40IDY1LjUtOTggOTguNS0yLjYgMi44LTYuMSA1LjEtNy45IDguNiAzNS42IDM1LjQgNzEgNzEgMTA2LjYgMTA2LjQgMzUuNC0zNS4zIDcwLjctNzAuOCAxMDYuMS0xMDYuMWwwLTEuMy03My4yLTczLjJDMTI4LjggNjkuOCAxMTcuMyA1OS42IDEwNy4yIDQ4em0yMTMuNSAwbC0xLjMgMGMtMzQuOSAzNi4xLTcxLjUgNzEtMTA2LjMgMTA3LjIgMzUuOSAzNS4xIDcxIDcxIDEwNi43IDEwNi4zIDM0LjMtMzQuMSA2OC40LTY4LjQgMTAyLjYtMTAyLjQgMS41LTEuNSAzLjMtMi44IDQuMS00LjgtMzQuNi0zMy44LTY4LjQtNjguMi0xMDIuNi0xMDIuMS0xLjMtMS4zLTIuMy0yLjYtMy4zLTQuMXptMjEzLjUgMGwtMS4zIDBjLTE3LjIgMTgtMzUuMSAzNS4zLTUyLjYgNTMtMTcuOSAxNy43LTM1LjQgMzUuNy01My41IDUzLjMgLjggMi4zIDMgMy42IDQuNiA1LjVMNTMzLjMgMjYxLjVjMzYuMS0zNC45IDcwLjgtNzEuMiAxMDYuNy0xMDYuMS0uNS0yLjItMi42LTMuNS00LTVMNTU1LjggNzAuMmMtNy4xLTcuNC0xNC45LTE0LjItMjEuNS0yMi4yek0zMTkuNiAyNjEuN2MtMzQuOSAzNS4xLTcwIDcwLTEwNC45IDEwNC45LS4zIC43LS43IDEuNy0xIDIuMyAyNCAyMy43IDQ3LjcgNDcuNSA3MS41IDcxLjMgMTEuOCAxMS4zIDIyLjggMjMuNSAzNC45IDM0LjQgOC40LTcuNCAxNi40LTE2LjQgMjQuNy0yNC4zIDI1LjUtMjUuMyA1MS01MSA3Ni41LTc2LjMgMS44LTIuMiA0LjMtMy42IDUuNS02LjMtMzUuNC0zNC45LTcwLjUtNzAuMi0xMDUuNi0xMDUuNGwtMS41LS43eiJdfSxsc3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidW5pdHkiLGljb246WzQ0OCw1MTIsW10sImUwNDkiLCJNMjQzLjYgOTEuNmw4MC4xIDQ2LjhjMi45IDEuNiAzIDYuMiAwIDcuOGwtOTUuMiA1NS42Yy0yLjkgMS43LTYuMyAxLjYtOSAwbC05NS4yLTU1LjZjLTIuOS0xLjYtMy02LjMgMC03LjhsODAuMS00Ni44IDAtOTEuNi0yMDQuNCAxMTkuNCAwIDIzOC44IDc4LjQtNDUuOCAwLTkzLjZjLS4xLTMuMyAzLjgtNS43IDYuNy0zLjlsOTUuMiA1NS42YzIuOSAxLjcgNC41IDQuNyA0LjUgNy44bDAgMTExLjJjLjEgMy4zLTMuOCA1LjctNi43IDMuOUw5OCAzNDYuOCAxOS42IDM5Mi42IDIyNCA1MTIgNDI4LjQgMzkyLjYgMzUwIDM0Ni44IDI2OS45IDM5My42Yy0yLjggMS43LTYuOC0uNS02LjctMy45bDAtMTExLjJjMC0zLjMgMS44LTYuMyA0LjUtNy44TDM2Mi45IDIxNWMyLjgtMS43IDYuOCAuNSA2LjcgMy45bDAgOTMuNiA3OC40IDQ1LjggMC0yMzguOC0yMDQuNC0xMTkuNCAwIDkxLjZ6Il19LGNzcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJ0ZW5jZW50LXdlaWJvIixpY29uOlszMjAsNTEyLFtdLCJmMWQ1IiwiTTQwLjUgNDk1LjhjMS40IDE5LjktMjcuNiAyMi4yLTI5LjcgMi45LTExLjYtMTI5LjkgMzEuMS0yMzkuNSAxMDEuNC0zMTMuMi0xNS42LTM0IDkuMi03Ny4xIDUwLjYtNzcuMSAzMC4zIDAgNTUuMSAyNC42IDU1LjEgNTUuMSAwIDQ0LTQ5LjUgNzAuOC04Ni45IDQ1LjEtNjUuNyA3MS4zLTEwMS40IDE2OS44LTkwLjUgMjg3LjJ6TTE2MC4yIC4xYy0xMjUuOSAwLTIwNC4zIDEzNC4yLTE0OC4zIDI0Mi4zIDguNyAxNy40IDM1LjMgNC41IDI2LjMtMTMuNC00Ni4zLTkyLjYgMjEtMTk5LjIgMTIyLTE5OS4yIDc1LjQgMCAxMzYuOSA2MS40IDEzNi45IDEzNi45IDAgOTAuOC04Ni45IDE1My45LTE2Ny43IDEzMy4xLTE5LjEtNC4xLTI1LjYgMjQuNC02LjYgMjkuMSAxMTAuNyAyMy4yIDIwNC02MCAyMDQtMTYyLjMgMC05MS45LTc0LjYtMTY2LjUtMTY2LjYtMTY2LjV6Il19LGRzcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJmcmVlLWNvZGUtY2FtcCIsaWNvbjpbNTc2LDUxMixbXSwiZjJjNSIsIk05Ny40IDk2LjJjMTAuNC0xMC42IDE2LTE3LjEgMTYtMjEuOSAwLTIuOC0xLjktNS41LTMuOC03LjQtMi40LTEuOC01LjQtMi44LTguNC0yLjgtOC41IDAtMjAuOSA4LjgtMzUuOCAyNS43LTQxLjUgNDcuMy02Mi43IDkzLjEtNjEuOCAxNjAuNlMyMSAzNjcuMyA1Ny42IDQxMi4yYzE4LjggMjMuNiAzMy4yIDM1LjggNDMuNSAzNS44IDMuMi0uMyA2LjEtMS42IDguNC0zLjggMS45LTIuOCAzLjgtNS42IDMuOC04LjQgMC01LjYtMy45LTEyLjItMTMuMi0yMC42LTQ0LjUtNDIuMy02Ny4zLTk3LTY3LjUtMTY1LS4yLTYxLjQgMjEuNi0xMTIuNCA2NC44LTE1NHpNMjM5LjYgNDIwLjFjLjYgLjQgLjkgLjYgLjkgLjZsLS45LS42em05My44IC42bC4yLS4xYy0uMiAuMS0uMyAuMi0uMiAuMXptMy4xLTE1OC4yYy0xNi4yLTQuMiA1MC40LTgyLjktNjguMS0xNzcuMiAwIDAgMTUuNSA0OS40LTYyLjggMTU5LjYtNzQuMyAxMDQuNCAyMy41IDE2OC43IDM0IDE3NS4yLTYuNy00LjMtNDcuNC0zNS43IDkuNi0xMjguNiAxMS0xOC4zIDI1LjUtMzQuOSA0My41LTcyLjIgMCAwIDE1LjkgMjIuNCA3LjYgNzEuMS0xMi41IDczLjYgNTMuOCA1Mi41IDU0LjggNTMuNSAyMi44IDI2LjgtMTcuNyA3My41LTIxLjYgNzYuNiA1LjUtMy43IDExNy43LTc4IDMzLTE4OC4xLTYgNi0xMy44IDM0LjItMzAgMzAuMXpNNTExIDg5LjdjLTE0LjktMTYuOS0yNy40LTI1LjctMzUuOS0yNS43LTMgLjEtNS45IDEuMS04LjQgMi44LTEuOSAxLjktMy44IDQuNy0zLjggNy40IDAgNC44IDUuNiAxMS4zIDE2IDIxLjkgNDMuMiA0MS42IDY1IDkyLjYgNjQuOCAxNTQuMS0uMiA2OC0yMyAxMjIuNi02Ny41IDE2NS05LjMgOC40LTEzLjIgMTQuOS0xMy4yIDIwLjYgMCAyLjcgMS45IDUuNiAzLjggOC40IDIuMyAyLjIgNS4yIDMuNiA4LjQgMy44IDEwLjMgMCAyNC43LTEyLjEgNDMuNS0zNS44IDM2LjYtNDQuOSA1My4xLTk0LjQgNTQuMS0xNjEuOVM1NTIuNSAxMzcgNTExIDg5Ljd6Il19LHVzcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJ4LXR3aXR0ZXIiLGljb246WzQ0OCw1MTIsW10sImU2MWIiLCJNMzU3LjIgNDhMNDI3LjggNDggMjczLjYgMjI0LjIgNDU1IDQ2NCAzMTMgNDY0IDIwMS43IDMxOC42IDc0LjUgNDY0IDMuOCA0NjQgMTY4LjcgMjc1LjUtNS4yIDQ4IDE0MC40IDQ4IDI0MC45IDE4MC45IDM1Ny4yIDQ4ek0zMzIuNCA0MjEuOGwzOS4xIDAtMjUyLjQtMzMzLjgtNDIgMCAyNTUuMyAzMzMuOHoiXX0sZnNyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InN0aWNrZXItbXVsZSIsaWNvbjpbNTc2LDUxMixbXSwiZjNmNyIsIk01NjEuNyAxOTkuNmwwIDB6bS02LjItNzcuNGMtNy43LTIyLjMtNS4xLTcuMi0xMy40LTM2LjktMS42LTYuNS0zLjYtMTQuNS02LjItMjAtNC40LTguNy00LjYtNy41LTQuNi05LjUgMC01LjMgMzAuNy00NS4zIDE5LTQ2LjktNS43LS42LTEyLjIgMTEuNi0yMC42IDE3LTguNiA0LjItOCA1LTEwLjMgNS0yLjYgMC01LjctMy02LjItNS0yLTUuNyAxLjktMjUuOS0zLjYtMjUuOS0zLjYgMC0xMi4zIDI0LjgtMTcgMjUuOC01LjIgMS4zLTI3LjktMTEuNC03NS4xIDE4LTI1LjMgMTMuMi04Ni45IDY1LjItODcgNjUuMy02LjcgNC43LTIwIDQuNy0zNS41IDE2LTQ0LjQgMzAuMS0xMDkuNiA5LjQtMTEwLjcgOS0xMTAuNi0yNi44LTEyOC0xNS4yLTE1OSAxMS41LTIwLjggMTcuOS0yMy43IDM2LjUtMjQuMiAzOC45LTQuMiAyMC40IDUuMiA0OC4zIDYuNyA2NC4zIDEuOCAxOS4zLTIuNyAxNy43IDcuNyA5OC4zIC41IDEgNC4xIDAgNS4xIDEuNSAwIDguNC0zLjggMTIuMS00LjEgMTMtMS41IDQuNS0xLjUgMTAuNSAwIDE2IDIuMyA4LjIgOC4yIDM3LjIgOC4yIDQ2LjkgMCA0MS44IC40IDQ0IDIuNiA0OS40IDMuOSAxMCAxMi41IDkuMSAxNyAxMiAzLjEgMy41LS41IDguNSAxIDEyLjUgLjUgMiAzLjYgNCA2LjIgNSA5LjIgMy42IDI3IC4zIDI5LjktMi41IDEuNi0xLjUgLjUtNC41IDMuMS01IDUuMSAwIDEwLjgtLjUgMTQuNC0yLjUgNS4xLTIuNSA0LjEtNiAxLjUtMTAuNS0uNC0uOC03LTEzLjMtOS44LTE2LTIuMS0yLTUuMS0zLTcuMi00LjUtNS44LTQuOS0xMC4zLTE5LjQtMTAuMy0xOS41LTQuNi0xOS40LTEwLjMtNDYuMy00LjEtNjYuOCA0LjYtMTcuMiAzOS41LTg3LjcgMzkuNi04Ny44IDQuMS02LjUgMTctMTEuNSAyNy4zLTcgNiAxLjkgMTkuMyAyMiA2NS40IDMwLjkgNDcuOSA4LjcgOTcuNC0yIDExMi4yLTIgMi44IDItMS45IDEzLS41IDM4LjkgMCAyNi40LS40IDEzLjctNC4xIDI5LjktMi4yIDkuNyAzLjQgMjMuMi0xLjUgNDYuOS0xLjQgOS44LTkuOSAzMi43LTguMiA0My40IC41IDEgMSAyIDEuNSAzLjUgLjUgNC41IDEuNSA4LjUgNC42IDEwIDcuMyAzLjYgMTItMy41IDkuOCAxMS41LS43IDMuMS0yLjYgMTIgMS41IDE1IDQuNCAzLjcgMzAuNiAzLjQgMzYuNSAuNSAyLjYtMS41IDEuNi00LjUgNi40LTcuNCAxLjktLjkgMTEuMy0uNCAxMS4zLTYuNSAuMy0xLjgtOS4yLTE5LjktOS4zLTIwLTIuNi0zLjUtOS4yLTQuNS0xMS4zLTgtNi45LTEwLjEtMS43LTUyLjYgLjUtNTkuNCAzLTExIDUuNi0yMi40IDguNy0zMi40IDExLTQyLjUgMTAuMy01MC42IDE2LjUtNjguMyAuOC0xLjggNi40LTIzLjEgMTAuMy0yOS45IDkuMy0xNyAyMS43LTMyLjQgMzMuNS00Ny40IDE4LTIyLjkgMzQtNDYuOSA1Mi02OS44IDYuMS03IDguMi0xMy43IDE4LTggMTAuOCA1LjcgMjEuNiA3IDMxLjkgMTcgMTQuNiAxMi44IDEwLjIgMTguMiAxMS44IDIyLjkgMS41IDUgNy43IDEwLjUgMTQuOSA5LjUgMTAuNC0yIDEzLTIuNSAxMy40LTIuNSAyLjYtLjUgNS43LTUgNy4yLTggMy4xLTUuNSA3LjItOSA3LjItMTYuNSAwLTcuNy0uNC0yLjgtMjAuNi01Mi45eiJdfSxwc3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidHdpdGNoIixpY29uOls0NDgsNTEyLFtdLCJmMWU4IiwiTTM1OS40IDEwMy41bC0zOC42IDAgMCAxMDkuNyAzOC42IDAgMC0xMDkuN3pNMjUzLjIgMTAzbC0zOC42IDAgMCAxMDkuOCAzOC42IDAgMC0xMDkuOHpNODkgMGwtOTYuNSA5MS40IDAgMzI5LjIgMTE1LjggMCAwIDkxLjQgOTYuNS05MS40IDc3LjMgMCAxNzMuOC0xNjQuNiAwLTI1Ni0zNjYuOSAwek00MTcuMyAyMzcuOGwtNzcuMiA3My4xLTc3LjIgMC02Ny42IDY0IDAtNjQtODYuOSAwIDAtMjc0LjMgMzA4LjkgMCAwIDIwMS4yeiJdfSxoc3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToia2lja3N0YXJ0ZXItayIsaWNvbjpbNDQ4LDUxMixbXSwiZjNiYyIsIk0zNTYuNyAyNTYuMmw0MC44LTQwLjVjNDIuMi00MS45IDQyLjItMTEwLjMgMC0xNTIuMXMtMTExLTQxLjktMTUzLjIgMEwyMjkuMyA3OC40QzIwOS42IDUwLjMgMTc3LjEgMzIgMTQwLjIgMzIgODAuNSAzMiAzMiA4MC4yIDMyIDEzOS41bDAgMjMzYzAgNTkuNCA0OC41IDEwNy41IDEwOC4yIDEwNy41IDM3LjEgMCA2OS4zLTE4LjMgODktNDYuNGwxNC45IDE0LjdjNDIuMiA0MS45IDExMSA0MS45IDE1My4yIDBzNDIuMi0xMTAuMyAwLTE1Mi4xbC00MC44LTQwIC4xIDB6Il19LG1zcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJjcml0aWNhbC1yb2xlIixpY29uOls0NDgsNTEyLFtdLCJmNmM5IiwiTTIyNS44IDBjLjMgLjIgMjE2LjYgMTI0LjUgMjE3LjEgMTI0LjcgMyAxLjIgMy43IDMuNSAzLjcgNi42LS4xIDgzLjQtLjEgMTY2LjkgMCAyNTAuNCAuMSAxLjItLjIgMi40LS44IDMuNHMtMS41IDEuOS0yLjYgMi40Yy0yMS40IDEyLTIwNy45IDExOC4zLTIxOC45IDEyNC42bC0zIDBjLTc5LjMtNDUuNy0yMTguMy0xMjUuNC0yMTguNC0xMjUuNS0uNi0uMy0xLjEtLjctMS40LTEuM3MtLjUtMS4yLS40LTEuOWMwLS45IDAtMjI1LjktLjEtMjUzLjEtLjEtMSAuMi0yIC43LTIuOXMxLjMtMS42IDIuMi0yQzI3LjIgMTEyLjEgMjEzLjIgNiAyMjQuMSAwbDEuOCAwek0yMTUuNCAyMC40bC0uMi0uMmMtNjQuNyAzNi45LTEyOS41IDczLjctMTk0LjIgMTEwLjYgMCAuMSAuMSAuMiAuMSAuNEw1MiAxNDIuOWMtNy43IDYtOC4zIDYtMTAuNiA1LjEtLjEgMC0yNC4yLTkuMy0yNi44LTEwbDAgMjMwLjRjLjktMS40IDY0LjEtMTEwLjkgNjQuMS0xMTEgMS42LTIuOCAzLTEuOSA5LjEtMS41IDEuNCAuMSAxLjUgLjIgLjggMS40LTQxLjIgNzEuMy0zNi40IDYzLTY3LjUgMTE2LjktLjggMS40LS42IDEuMSAxLjIgMS4xbDE4Ni41IDBjMS40IDAgMS43LS4yIDEuNy0xLjZsMC04LjljMC0xLjMgMi40LS44LTE4LjQtMS03LjUtLjEtMTQuMS0zLjItMjEuNC0xMi43LTcuNC05LjctMTQuNi0xOS40LTIxLjgtMjkuMi0yLjMtMy4xLTMuNC0yLjQtMTYuOC0yLjQtMS44IDAtMS44IDAtMS44IDEuOCAuMyAyNi4yIC4yIDI1LjMgMSAzMi43IC41IDQuNCAyLjIgNC4yIDkuNyA0LjggMy4xIC4zIDMuOSA0LjEgLjUgNC45LTEuNiAuNC0zMS42IC41LTMzLjctLjEtLjUtLjEtMS0uNS0xLjMtLjlzLS41LTEtLjQtMS42IC4zLTEuMSAuNi0xLjUgLjktLjcgMS40LS44YzMuMy0uOCA2LjIgLjggNi43LTQuNCAxLjMtMTMuNyAxLjItOSAxLjEtNzkuNCAwLTEwLjgtLjQtMTIuNi01LjQtMTMuNi0xLjItLjItMy41LS4yLTQuNy0uNi0yLjktMS0yLTQuOCAxLjgtNC44IDMzLjcgMCA0Ni4xLTEuMSA1Ni4xIDQuOSA3LjcgNC42IDEyIDExLjUgMTIuNSAyMC40IC45IDE0LjYtNi41IDIyLjMtMTUgMzIuNi0uMiAuMS0uMyAuMy0uNCAuNXMtLjEgLjQtLjEgLjYgMCAuNCAuMSAuNiAuMiAuNCAuNCAuNWMyLjYgMy4yIDUgNi42IDcuNyA5LjggMjcuNiAzMy4yIDI0LjEgMzAuNSA0MS4zIDMzLjEgLjkgLjEgMS0uNCAxLTEuMmwwLTExYzAtMSAuMy0xLjQgMS40LTEuMyA3LjggMS4yIDE1LjggMS4xIDIzLjYtLjMgMS4xLS4xIDEuNSAuMiAxLjUgMS4zIDAgLjEgLjkgMjYuNyAuOSAyNi44IDAgMS41IC43IDEuNiAxLjkgMS42bDE4Ni43IDBjLTI3LjItNDctNTQuMi05NC04MS4yLTE0MC44IDIuMy0uNy0uNCAwIDYuNy0xLjQgMi0uNCAyLjEtLjQgMy4xIDEuNCA3LjMgMTIuNiA3Ny4zIDEzNCA3Ny40IDEzNC4xbDAtMjMwLjRjLTEuNyAuNS0xMDMuMyAzOC43LTEwNS44IDM5LjctMS4xIC40LTEuNSAuMi0xLjktLjktLjYtMS45LTEuMy0zLjgtMi4xLTUuNi0uMy0uOC0uMS0xLjEgLjYtMS40IC4xIDAgOTUuNS0zNS44IDEwMy0zOC44LTY1LjQtMzcuNi0xMzAuNi03NS0xOTYtMTEyLjZsODYuOCAxNTAuNC0uMyAuM2MtOS42LS45LTEwLjUtMS42LTExLjgtMy45LTEtMS43LTczLjUtMTI3LjctODItMTQyLjItOS4xIDE0LjctODMuNiAxNDYuMi04NS40IDE0Ni4zLTIuOSAuMi01LjkgLjEtOS4yIC4xIDI4LjgtNDkuOCA1Ny42LTk5LjUgODYuMi0xNDlsMCAwem01MS45IDEyOS45YzEuOS0uMSAzLjctLjQgNS41LS44IDEuNy0uMyAyLjUgLjIgMi42IDEuOSAwIC4xIC4xIDE5LjEtLjkgMjAuNXMtMS45IDEuMi0yLjYtLjJjLTUtOS43IDYuMi05LjctMzkuMS0xMi0uNyAwLTEgLjItMSAuOSAwIC4xIDMuNyAxMjIgMy43IDEyMi4xIDAgLjkgLjUgMS4yIDEuMiAxLjUgMyAxLjIgNS45IDIuNSA4LjcgNCA3LjMgNC4zIDExLjQgMTAuOCAxMi40IDE5LjMgMS40IDExLjgtMi44IDM1LjgtMzIuMiAzNy4xLTIuOCAuMS0yOC4zIDEuMS0zNC4xLTIzLjMtNC43LTE5LjMgOC4zLTMyLjcgMTkuOS0zNi40IC42LS4xIDEuMi0uNCAxLjUtLjlzLjUtMS4xIC41LTEuN2MuMS01LjYgMy0xMDcuMSAzLjctMTIxLjMgMC0xLjEtLjYtMS4yLTEuNC0xLjEtMzIuMyAuNS0zNi43LS4zLTQwLjIgOC41LTIuNCA2LjItNC4xIDEuMy00IC4yIDEuMS02IDIuMi0xMiAzLjMtMTggLjQtMi4xIDEuNC0yLjYgMy40LTEuOSA1LjYgMi4xIDYuNyAxLjcgMzcuMiAxLjkgMS43IDAgMS44LS4xIDEuOC0xLjggLjctMjcuNSAuNi0yMi42IDEtMjkuNiAuMS0uNi0uMS0xLjItLjMtMS43cy0uNy0uOS0xLjMtMS4xYy01LjYtMi45LTguOC03LjYtOC45LTEzLjktLjQtMTQuOCAxNy43LTIxLjcgMjcuNC0xMS41IDYuOCA3LjIgNS44IDE4LjktMi41IDI0LjItLjggLjQtMS40IDEuMS0xLjggMS44cy0uNiAxLjYtLjQgMi41YzAgLjYtLjEtNC4zIDEgMzAgMCAuOSAuNCAxLjEgMS4yIDEuMSAuMSAwIDIzLS4xIDM0LjUtLjRsMC0uMXpNNjguMyAxNDEuN2MxOS44LTQuNSAzMi43LS42IDUyLjUgMS43IDIuOCAuMyAzLjcgMS4yIDMuNiA0LS4yIDUtMS4yIDIyLjMtMS4yIDIzLjEgMCAuNS0uMiAxLS41IDEuNHMtLjcgLjctMS4yIC45Yy00LjEgMS43LTMuNi00LjQtNC03LjMtMy4xLTIyLjQtNzMuOS0zMi43LTc0LjYgMjUuNC0uMyAyMy45IDE3IDUzLjYgNTQuMSA1MC45IDI3LjItMiAxOS0yMC4yIDI0LjgtMjAuNSAuNC0uMSAuOSAwIDEuMyAuMXMuOCAuNCAxLjEgLjcgLjUgLjcgLjYgMS4yIC4xIC45IDAgMS4zYy0xLjggMTAuOC0zLjQgMTktMy40IDE5LjItMS41IDkuMi04Ni43IDIyLjEtOTMuNC00Mi4xLTIuNy0yNS44IDEwLjQtNTMuNCA0MC4zLTYwLjJ6bTgwIDg3LjdsLTE5LjUgMGMtLjYgMC0xLjItLjEtMS42LS40cy0uOC0uOC0xLTEuNGMyLjQtMy44IDUuOSAuOSA1LjktNi4xLS4xLTI1LjggLjItMzggLjItNDAuMSAwLTMuNC0uNS00LjYtMy4zLTQuOS03LS43LTMuMS0zLjQtMS4xLTMuNCAxMS44LS4xIDIyLjYtLjIgMzAgLjcgOC44IDEuMSAxNi43IDEyLjYgNy45IDIyLjYtMiAyLjItNCA0LjQtNi4xIDYuNyAxIDEuMiA2LjkgOC44IDE3LjMgMTkuNyAyLjcgMi44IDYuMiAzLjUgOS45IDMuMSAuNiAwIDEuMS0uMiAxLjUtLjZzLjctLjkgLjctMS41Yy4zLTMuNCAuMyA0LjcgLjQtNDAuNiAwLTUuNi0uMy02LjYtMy4yLTYuOC00LS40LTQtMi4zLS43LTMuNGwxOS4xLS4xYy4zIDAgNC41IC41IDEgMy40IDAgMC0uMiAwLS4yIDAtMy42IC4zLTMuOSAxLTQgNC42LS4zIDQzLjkgLjEgNDAuMiAuNCA0Mi44IC4xIC44IC4zIDIuMiA1LjEgMi4xIDIuNSAwIDMuOSAzLjQgMCAzLjQtMTAuNCAuMS0yMC43IDAtMzEuMSAuMS0xMC43IDAtMTMuNS02LjItMjQuMi0yMC44LTEuNi0yLjItOC4zLTIuNC04LjItLjQgLjkgMTYuNSAwIDE3LjggNCAxNy43IDQuOC0uMSA0LjcgMy42IC44IDMuNWwuMSAwem0yNzUtMTAuMWMtMS4yIDcuMSAuMiAxMC40LTUuMyAxMC4zLTYxLjUtLjQtNDcuOC0uMi01MC43LS4zLTEuMi0uMS0yLjQtLjQtMy42LS43LTIuNS0uNiAxLjUtMS4yLS40LTUuNi0xLjQtMy40LTIuOC02LjgtNC4xLTEwLjItLjEtLjQtLjQtLjgtLjctMS4xcy0uOC0uNC0xLjMtLjRjLTQuOS0uMi05LjctLjItMTQuNiAuMS0uMyAwLS42IC4yLS45IC4zcy0uNSAuNC0uNyAuN2MtMS42IDMuNi0zLjEgNy4zLTQuNSAxMS0xLjMgMy4yIDcuOSAxLjMgMTIuMiAyLjIgMyAuNiA0LjUgMy43IC43IDMuN2wtMjYuNCAwYy0yLjkgMC0zLjEtMy4yLS43LTMuMiAxLjIgLjEgMi40LS4yIDMuNS0uOXMxLjktMS41IDIuNC0yLjZjMS41LTMgMi44LTYgNC4xLTkuMSAxOC4yLTQyLjEgMTcuMS00MC4yIDE4LjQtNDEuNiAuMi0uMiAuNC0uNCAuNy0uNnMuNi0uMiAuOC0uMiAuNiAuMSAuOCAuMiAuNSAuMyAuNyAuNmMyLjkgMy4zIDE4LjQgNDQuNyAyMy42IDUxLjkgMiAyLjcgNS43IDIgNi40IDIgMy42IC4xIDQtMS4xIDQuMS00LjMgLjEtMS45IC4xIDEuMiAuMS00MS4yIDAtNC41LTIuNC0zLjctNS42LTQuMy0uMyAwLTIuNi0uNi0uMS0zLjEgLjItLjItLjktLjIgMjEuNy0uMiAyLjMgMCA1LjMgMi44LTEuMiAzLjQtLjQgMC0uNyAwLTEuMSAuMnMtLjYgLjMtLjkgLjYtLjQgLjYtLjYgLjktLjIgLjctLjEgMS4xYy0uMSAxLjYtLjIgMzguOSAuMyA0MS4yIC4yIC43IC42IDEuNCAxLjIgMS44czEuMyAuNyAyLjEgLjZjMTMuMyAuNCAxNC45IC40IDE2LTMuNCAxLjctNS44IDQuMS0yLjUgMy43LS4ybDAgLjF6TTMxOC42IDI4My42Yy00LjIgMC00LjQtMy40LS42LTMuNCAzNS45LS4yIDI4LjEgLjQgMzcuMi0uNiAxLjctLjIgMi40IC4yIDIuMyAxLjktLjMgMy40LS42IDYuOC0xIDEwLjItLjIgMi4yLTMuMiAyLjYtMy40LS4yLS40LTUuMy0yLjItNC41LTE1LjYtNS4xLTEuNi0uMS0xLjYgMC0xLjYgMS41bDAgMTYuMWMwIDEuNyAwIDEuNiAxLjYgMS41IDMuMS0uMiAxMC4zIC4zIDE1LjctMS41IC41LS4yIDMuMy0xLjggMy4xIDEuOCAwIC4yLS44IDEwLjQtMS4yIDExLjQtLjUgMS4zLTEuOSAxLjUtMi42IC4zLTEuMi0yIDAtNS4xLTMuNy01LjMtMTUuNC0uOS0xMi45LTIuNS0xMi45IDYgMCAxMi4zLS44IDE2LjEgMy45IDE2LjIgMTYuNiAuNSAxNC40IDAgMTYuNC01LjcgLjgtMi40IDMuNS0xLjggMy4yIC42LS40IDMuMi0uOCA2LjQtMS4yIDkuNiAwIC40LS4yIDIuNC00LjcgMi40LTM3LjItLjEtMzQuNS0uMi0zNS4yLS4zLTIuNy0uNS0yLjItMyAuMi0zLjQgMS4xLS4yIDQgLjUgNC4yLTIuNiAyLjQtNTYuMi0uMS01MS4zLTMuOS01MS4zbDAgMHptLS40LTEwOS41YzIuNSAuNiAzLjEgMS44IDMgNC42LS4zIDUuMy0uMyA5LS42IDkuNy0uNyAyLjItMy4xIDIuMS0zLjMtLjMtLjQtNC44LTMtNy44LTcuNi05LjEtMjYuMy03LjctMzIuOCAxNS41LTI3LjIgMzAuMiA1LjkgMTUuNCAyMiAxNS45IDI4LjkgMTMuOCA1LjktMS45IDUuOS02LjUgNi45LTcuNiAxLjItMS4zIDIuMi0xLjggMy4xIDEuMSAwIC4xIC42IDExLjktNiAxMi43LTEuNiAuMi0xOS40IDMuNy0zMi43LTMuNC0yMS0xMS4yLTE2LjctMzUuNS02LjktNDUuMyAxNC0xNC4xIDM5LjktNy4xIDQyLjMtNi41bDAgMHpNMjg5LjggMjgwLjFjMy4zIDAgMy43IDMgLjIgMy40LTIuNiAuMy01LS40LTUgNS41IDAgMi0uMiAyOSAuNCA0MS40IC4xIDIuMyAxLjIgMy41IDMuNCAzLjcgMjIgMS4yIDE1LTEuNyAxOC44LTYuMyAxLjgtMi4yIDIuOCAuOCAyLjggMS4xIC4zIDEzLjYtNCAxMi40LTUuMiAxMi40bC0zOC4yLS4yYy0xLjktLjItMi4xLTMtLjQtMy40IDItLjUgNC45IC40IDUuMS0yLjggMS0xNS45IC42LTQ0LjYgLjMtNDcuOC0uMy0zLjgtMi44LTMuMy01LjctMy43LTIuNS0uNC0yLTMuMiAuMy0zLjIgMS40IDAgMTggMCAyMy4xIDB6bS0zMS42LTU3LjhjLjEgNC4xIDIuOSAzLjUgNiAzLjYgMi42IC4xIDIuNSAzLjQtLjEgMy40LTYuNSAwLTEzLjcgMC0yMS42LS4xLTMuOCAwLTMuNC0zLjQgMC0zLjQgNC41IDAgMy4yIDEuNiAzLjQtNDUuNSAwLTUuMS0zLjMtMy41LTQuNy00LjItMi42LTEuMi0xLjQtMy4xIC40LTMuMiAxLjMgMCAyMC4yLS40IDIxLjIgLjJzMS45IDEuNi0uNCAyLjljLTEgLjUtMy45LS4zLTQuMiAyLjUgMCAuMi0uOCAxLjYtLjEgNDMuOGwwIDB6TTIyMS4zIDQ5Ni42Yy41IC4zIDEgLjUgMS42IC41czEuMS0uMiAxLjYtLjVjMTctOS44IDE4Mi0xMDMuNiAxOTcuNC0xMTIuNS0uMS0uNCAxMS4zLS4yLTE4MS41LS4zLTEuMiAwLTEuNiAuNC0xLjUgMS42IDAgLjEgMS4zIDQ0LjUgMS4yIDUwLjQtLjEgMi42LS42IDUuMi0xLjQgNy43LS42IDEuOCAuNC0uNS0xMy41IDMyLjItLjcgMS43LTEgMi4yLTItLjEtNC4yLTEwLjMtOC4zLTIwLjctMTIuNi0zMS0xLjUtMy40LTIuMi03LjEtMi0xMC44IC4yLTIuNSAuOC0xNi4xIDEuNS00OCAwLTEuOSAwLTItMi0ybC0xODMgMGMyLjYgMS42IDE3OC4zIDEwMi42IDE5NiAxMTIuOGwuMSAwek0xMzAuNCAzMDcuOWMwIDIuNCAuNCAyLjggMi44IDMgMTEuNSAxLjIgMjEgMy43IDI1LjYtNy4zIDYtMTQuNSAyLjctMzQuNC0xMi41LTM4LjgtMi0uNi0xNi0yLjgtMTUuOSAxLjUgMCA4IDAgMTEuNiAwIDQxLjZ6bTEwNS44LTE1YzAgMi4xIDEuMSAzOC43IDEuMSAzOS4xIC4zIDkuOS0yNS42IDUuOC0yNS4yLTIuNiAuMS0yIDEuNC0zNy40IDEuMS0zOS40LTE0LjEgNy40LTE0LjQgNDAuMiA2LjQgNDguOCA0IDEuNyA4LjQgMS45IDEyLjUgLjZzNy42LTQgOS45LTcuN2M0LjktNy44IDYuOC0yOS41LTUuNC0zOS0uMSAuMS0uMiAuMS0uNCAuMWwwIDB6bS0xMi4zLTE5OGMtOS44IDAtOS43IDE0LjgtLjEgMTQuOXMxMC4xLTE0LjkgLjEtMTQuOWwwIDB6TTE0My43IDE5OC42YzAgMS44IC40IDIuNCAyLjIgMi42IDEzLjYgMS40IDEyLjUtMTEgMTIuMi0xMy40LTEuNy0xMS4yLTE0LjQtMTAuMi0xNC40LTcuOCAwIDQuNSAwIDEzLjcgMCAxOC42ek0zNTYgMjA1bC02LjEtMTUuOGMtMi4yIDUuNS00LjIgMTAuNi02LjIgMTUuOGwxMi4zIDB6Il19LGdzcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJzdGVhbS1zeW1ib2wiLGljb246WzQ0OCw1MTIsW10sImYzZjYiLCJNMjczLjUgMTc3LjVhNjEgNjEgMCAxIDEgMTIyIDAgNjEgNjEgMCAxIDEgLTEyMiAwem0xNzQuNSAuMmMwIDYzLTUxIDExMy44LTExMy43IDExMy44TDIyNSAzNzEuM2MtNCA0My00MC41IDc2LjgtODQuNSA3Ni44LTQwLjUgMC03NC43LTI4LjgtODMtNjdMMCAzNTggMCAyNTAuNyA5Ny4yIDI5MGMxNS4xLTkuMiAzMi4yLTEzLjMgNTItMTEuNWw3MS0xMDEuN0MyMjAuNyAxMTQuNSAyNzEuNyA2NCAzMzQuMiA2NCAzOTcgNjQgNDQ4IDExNSA0NDggMTc3Ljd6TTIwMyAzNjNjMC0zNC43LTI3LjgtNjIuNS02Mi41LTYyLjUtNC41IDAtOSAuNS0xMy41IDEuNWwyNiAxMC41YzI1LjUgMTAuMiAzOCAzOSAyNy43IDY0LjUtMTAuMiAyNS41LTM5LjIgMzgtNjQuNyAyNy41LTEwLjItNC0yMC41LTguMy0zMC43LTEyLjIgMTAuNSAxOS43IDMxLjIgMzMuMiA1NS4yIDMzLjIgMzQuNyAwIDYyLjUtMjcuOCA2Mi41LTYyLjV6TTQxMC41IDE3Ny43YTc2LjQgNzYuNCAwIDEgMCAtMTUyLjggMCA3Ni40IDc2LjQgMCAxIDAgMTUyLjggMHoiXX0seHNyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Im1haWxjaGltcCIsaWNvbjpbNDQ4LDUxMixbXSwiZjU5ZSIsIk0zMzEgMjQzLjVjMy4xLS40IDYuMi0uNCA5LjMgMCAxLjctMy44IDItMTAuNCAuNS0xNy42LTIuMi0xMC43LTUuMy0xNy4xLTExLjUtMTYuMXMtNi41IDguNy00LjIgMTkuNGMxLjMgNiAzLjUgMTEuMSA2IDE0LjNsMCAwek0yNzcuNCAyNTJjNC41IDIgNy4yIDMuMyA4LjMgMi4xIDEuOS0xLjktMy41LTkuNC0xMi4xLTEzLjEtNS0yLjEtMTAuNC0yLjgtMTUuOC0yLjJzLTEwLjUgMi43LTE0LjggNS44Yy0zIDIuMi01LjggNS4yLTUuNCA3LjEgLjkgMy43IDEwLTIuNyAyMi42LTMuNSA3LS40IDEyLjggMS44IDE3LjMgMy43bDAgMHptLTkgNS4xYy05LjEgMS40LTE1IDYuNS0xMy41IDEwLjEgLjkgLjMgMS4yIC44IDUuMi0uOCA2LTIuMyAxMi40LTIuOSAxOC43LTEuOSAyLjkgLjMgNC4zIC41IDQuOS0uNSAxLjUtMi4yLTUuNy04LTE1LjQtNi45bDAgMHptNTQuMiAxNy4xYzMuNC02LjktMTAuOS0xMy45LTE0LjMtN3MxMC45IDEzLjkgMTQuMyA3bDAgMHptMTUuNy0yMC41Yy03LjctLjEtOCAxNS44LS4zIDE1LjlzOC0xNS44IC4zLTE2bDAgMHpNMTE5LjUgMzMyLjdjLTEuMyAuMy02IDEuNS04LjUtMi4zLTUuMi04IDExLjEtMjAuNCAzLTM1LjgtOS4xLTE3LjUtMjcuOC0xMy41LTM1LTUuNS04LjcgOS42LTguNyAyMy41LTUgMjQuMSA0LjMgLjYgNC4xLTYuNSA3LjQtMTEuNiAuOS0xLjQgMi4xLTIuNiAzLjUtMy42czMtMS42IDQuNi0yIDMuNC0uNCA1IDAgMy4zIDEgNC43IDEuOWMxMS42IDcuNiAxLjQgMTcuOCAyLjMgMjguNiAxLjQgMTYuNyAxOC40IDE2LjQgMjEuNiA5IC4yLS40IC4zLS44IC4zLTEuMnMtLjItLjgtLjUtMS4xYzAgLjkgLjctMS4zLTMuNC0uNGwwIDB6bTI5OS43LTE3LjFjLTMuMy0xMS43LTIuNi05LjItNi44LTIwLjUgMi40LTMuNyAxNS4zLTI0LTMuMS00My4zLTEwLjQtMTAuOS0zMy45LTE2LjUtNDEuMS0xOC41LTEuNS0xMS40IDQuNi01OC43LTIxLjUtODMgMjAuOC0yMS42IDMzLjgtNDUuMyAzMy43LTY1LjctLjEtMzkuMi00OC4yLTUxLTEwNy40LTI2LjVsLTEyLjUgNS4zYy0uMSAwLTIyLjctMjIuMy0yMy4xLTIyLjYtNjcuNS01OC45LTI3OC44IDE3NS45LTIxMS4zIDIzMi45bDE0LjggMTIuNWMtNCAxMC43LTUuNCAyMi4yLTQuMSAzMy41IDMuNCAzMy40IDM2IDYwLjQgNjcuNSA2MC40IDU3LjcgMTMzLjEgMjY3LjkgMTMzLjMgMzIyLjMgMyAxLjctNC41IDkuMS0yNC42IDkuMS00Mi40cy0xMC4xLTI1LjMtMTYuNS0yNS4zbDAgMHptLTMxNiA0OC4yYy0yMi44LS42LTQ3LjUtMjEuMS00OS45LTQ1LjUtNi4yLTYxLjMgNzQuMy03NS4zIDg0LTEyLjMgNC41IDI5LjYtNC43IDU4LjUtMzQuMSA1Ny44bDAgMHpNODQuNyAyNDkuNmMtMTUuMiAzLTI4LjUgMTEuNS0zNi43IDIzLjUtNC45LTQuMS0xNC0xMi0xNS42LTE1LTEzLTI0LjggMTQuMi03MyAzMy4zLTEwMC4yIDQ3LjEtNjcuMiAxMjAuOS0xMTguMSAxNTUtMTA4LjkgNS41IDEuNiAyMy45IDIyLjkgMjMuOSAyMi45cy0zNC4xIDE4LjktNjUuOCA0NS4zQzEzNi4yIDE1MCAxMDQgMTk3LjcgODQuNyAyNDkuNnpNMzIzLjYgMzUwLjdzLTM1LjcgNS4zLTY5LjUtNy4xYzYuMi0yMC4yIDI3IDYuMSA5Ni40LTEzLjggMTUuMy00LjQgMzUuNC0xMyA1MS0yNS40IDMuNCA3LjggNS44IDE1LjkgNy4xIDI0LjMgMy43LS43IDE0LjItLjUgMTEuNCAxOC4xLTMuMyAxOS45LTExLjcgMzYtMjUuOSA1MC44LTguOSA5LjYtMTkuNCAxNy41LTMxLjIgMjMuMy02LjUgMy40LTEzLjMgNi4zLTIwLjMgOC42LTUzLjUgMTcuNS0xMDguMy0xLjctMTI2LTQzLTEuNC0zLjEtMi42LTYuNC0zLjYtOS43LTcuNS0yNy4yLTEuMS01OS44IDE4LjgtODAuNCAxLjItMS4zIDIuNS0yLjkgMi41LTQuOC0uMi0xLjctLjgtMy4zLTEuOS00LjUtNy0xMC4xLTMxLjItMjcuNC0yNi4zLTYwLjggMy41LTI0IDI0LjUtNDAuOSA0NC4xLTM5LjlsNSAuM2M4LjUgLjUgMTUuOSAxLjYgMjIuOSAxLjkgMTEuNyAuNSAyMi4yLTEuMiAzNC42LTExLjYgNC4yLTMuNSA3LjYtNi41IDEzLjMtNy41IDIuMy0uNiA0LjctLjcgNy0uM3M0LjYgMS4yIDYuNiAyLjVjMTAgNi42IDExLjQgMjIuNyAxMS45IDM0LjUgLjMgNi43IDEuMSAyMyAxLjQgMjcuNiAuNiAxMC43IDMuNCAxMi4yIDkuMSAxNCAzLjIgMSA2LjIgMS44IDEwLjUgMy4xIDEzLjIgMy43IDIxIDcuNSAyNiAxMi4zIDIuNSAyLjUgNC4yIDUuOCA0LjcgOS4zIDEuNiAxMS40LTguOCAyNS40LTM2LjMgMzguMi00Ni43IDIxLjctOTMuNyAxNC40LTEwMC41IDEzLjctMjAuMi0yLjctMzEuNiAyMy4zLTE5LjUgNDEuMSAyMi42IDMzLjQgMTIyLjQgMjAgMTUxLjQtMjEuNCAuNy0xIC4xLTEuNi0uNy0xLTQxLjggMjguNi05Ny4xIDM4LjItMTI4LjUgMjYtNC44LTEuOC0xNC43LTYuNC0xNS45LTE2LjcgNDMuNiAxMy41IDcxIC43IDcxIC43czItMi44LS42LTIuNXpNMTcxLjcgMTU3LjVjMTYuNy0xOS40IDM3LjQtMzYuMiA1NS44LTQ1LjYgLjEtLjEgLjMtLjEgLjUtLjFzLjMgLjEgLjQgLjIgLjIgLjMgLjIgLjQgMCAuMy0uMSAuNWMtMS41IDIuNy00LjMgOC4zLTUuMiAxMi43IDAgLjEgMCAuMyAwIC40cy4yIC4zIC4zIC40IC4zIC4xIC40IC4xIC4zIDAgLjQtLjFjMTEuNS03LjggMzEuNS0xNi4yIDQ5LTE3LjMgLjIgMCAuMyAwIC41IC4xcy4yIC4yIC4zIC40IC4xIC4zIDAgLjUtLjEgLjMtLjMgLjRjLTIuOSAyLjItNS41IDQuOC03LjcgNy43LS4xIC4xLS4xIC4yLS4xIC40czAgLjMgLjEgLjQgLjIgLjIgLjMgLjMgLjIgLjEgLjQgLjFjMTIuMyAuMSAyOS43IDQuNCA0MSAxMC43IC44IC40IC4yIDEuOS0uNiAxLjctNjkuNS0xNS45LTEyMy4xIDE4LjUtMTM0LjUgMjYuOC0uMiAuMS0uMyAuMS0uNSAuMXMtLjMtLjEtLjUtLjItLjItLjMtLjItLjUgLjEtLjQgLjItLjVsLS4xIDB6Il19LGJzcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJsdW1vbiIsaWNvbjpbNjQwLDUxMixbXSwiZTdlMiIsIk00NTIuNSAyMjMuNWM5LjggMCAxNi41IDYuMyAxNi41IDE2LjZsMCAzMS44YzAgMTAuMy02LjYgMTYuNi0xNi42IDE2LjZsLTU2LjIgMGMtOS44IDAtMTYuNS02LjMtMTYuNS0xNi42bDAtMzEuOGMwLTEwLjMgNi43LTE2LjYgMTYuNS0xNi42bDU2LjMgMHptLTI1LjcgMTMuMWMtMS41LTIuNi0zLjItMi42LTQuNiAwbC0xMC43IDE3LjZjLTEuNyAyLjQtMi42IDUuMS0yLjYgOC4yIDAgNy45IDYuOSAxNC42IDE1LjYgMTQuNiA4LjUgMCAxNS42LTYuNyAxNS42LTE0LjYgMC0zLTEtNS44LTIuNy04LjJsLTEwLjctMTcuNnpNODUuOCAyMjMuOGMxIDAgMS41IC42IDEuNSAxLjVsMCA1MC4zIDY0LjYgMGMxIDAgMS42IC42IDEuNiAxLjVsMCA5LjdjMCAuOS0uNiAxLjUtMS42IDEuNWwtNzguNCAwYy0xIDAtMS42LS42LTEuNi0xLjVsMC02MS40YzAtLjkgLjYtMS41IDEuNi0xLjVsMTIuMyAwem04OC4zIDBjMSAwIDEuNSAuNiAxLjUgMS41bDAgNDVjMCA0IDIgNS4yIDUuNyA1LjJsNDYuOSAwYzMuOCAwIDUuNy0xLjMgNS43LTUuMmwwLTQ1YzAtLjkgLjUtMS41IDEuNS0xLjVsMTIuMyAwYzEgMCAxLjYgLjYgMS42IDEuNWwwIDQ2YzAgMTAuNS01LjMgMTYuOC0xNy42IDE2LjhsLTU0IDBjLTEyLjMgMC0xNy42LTYuMy0xNy42LTE2LjhsMC00NmMwLS45IC42LTEuNSAxLjYtMS41bDEyLjMgMHptMTA4LjIgMGMxIDAgMS42IC41IDIuMiAxLjRsMzAuNSA0Ni40IDEuNCAwIDMwLjUtNDYuNGMuNi0uOSAxLjItMS40IDIuMi0xLjRsMTggMGMxIDAgMS41IC42IDEuNSAxLjVsMCA2MS40YzAgLjktLjUgMS41LTEuNSAxLjVsLTEyLjMgMGMtMSAwLTEuNi0uNi0xLjYtMS41bDAtNDMuOC0xLjEgMC0yOC43IDQzLjhjLS42IC45LTEuMyAxLjUtMi40IDEuNWwtMTAuNyAwYy0xIDAtMS43LS42LTIuMy0xLjVsLTI4LjctNDMuOC0xLjEgMCAwIDQzLjhjMCAuOS0uNSAxLjUtMS41IDEuNWwtMTIuMyAwYy0xIDAtMS42LS42LTEuNi0xLjVsMC02MS40YzAtLjkgLjYtMS41IDEuNi0xLjVsMTcuOSAwem0yMTQuNCAwYy45IDAgMS4zIC40IDIuMiAxLjFsNTIuNyA0Ni4zIDEuMyAwIDAtNDZjMC0uOSAuNi0xLjUgMS42LTEuNWwxMi4zIDBjMSAwIDEuNiAuNiAxLjYgMS41bDAgNjEuNGMwIC45LS42IDEuNS0xLjYgMS41bC0xNC40IDBjLTEgMC0xLjQtLjQtMi4zLTEuMWwtNTIuNi00Ni4zLTEuNCAwIDAgNDZjMCAuOS0uNSAxLjUtMS41IDEuNWwtMTIuMyAwYy0xIDAtMS42LS42LTEuNi0xLjVsMC02MS40YzAtLjkgLjYtMS41IDEuNi0xLjVsMTQuNCAwek0zMjAgMTE0LjFjODcuOSAwIDE2Ny43IDE1LjcgMjI1LjUgNDFsMi43IDEuMkM1ODcuMSAxNzMuOCA2NDAgMjA2LjUgNjQwIDI1NnMtNTIuOSA4Mi4yLTkxLjggOTkuNmwtMi43IDEuMmMtNTcuOCAyNS40LTEzNy42IDQxLTIyNS41IDQxLTc2LjIgMC0xNTUuMS0xMC41LTIyNS41LTQxLTM5LjYtMTcuNC05NC41LTUwLjMtOTQuNS0xMDAuOHM1NC45LTgzLjUgOTQuNS0xMDAuOGM3MC40LTMwLjUgMTQ5LjMtNDEgMjI1LjUtNDF6bS04OC45IDIyOWMyMC4zIDI5IDUyLjggNDkuNiA4OC45IDQ5LjYgMzYuMiAwIDY4LjctMjAuNiA4OS00OS43bC0xNzcuOSAuMXptLTk2LjEgMGM0My4zIDI5LjcgOTYuNyA0My41IDE0OC40IDQ4LTI0LjItOS4xLTQ0LjQtMjYuNy01OC42LTQ4LjFsLTg5LjkgMHptMjgwLjMtLjFjLTE0LjIgMjEuNC0zNC40IDM5LjEtNTguNiA0OC4xIDUxLjgtNC41IDEwNS4zLTE4LjMgMTQ4LjYtNDguMmwtOTAgMHptLTMzNy40IC4xYzQ0LjEgMjMuMSA5My43IDM1LjQgMTQyLjcgNDIuNi0zMy40LTguNi02Ni41LTIxLjktOTQuNC00Mi42bC00OC4zIDB6bTQzNi4yLS4yYy0yNy45IDIwLjgtNjEuMSAzNC4yLTk0LjYgNDIuOCA0Ny4zLTYuOSA4OS42LTE4LjUgMTIzLjktMzMuNmwxLjctLjhjNi4xLTIuNyAxMS45LTUuNSAxNy40LTguNGwtNDguNSAwek01MjAgMTczLjZjMTAuNyA4LjcgMTkuOCAxOC4xIDI3IDI4LjIgLjQgLjYgLjUgMS4zIC4xIDJzLTEgMS0xLjcgMWwtMS42IDBjLS42IDAtMS4yLS4zLTEuNS0uOC03LjktMTAuOS0xOC4yLTIxLjEtMzAuNi0zMC40bC05My41IDBjNS40IDguOCA5LjkgMTguNSAxMy40IDI4LjYgLjIgLjYgLjEgMS4yLS4yIDEuN3MtLjkgLjgtMS42IC44bC0xLjQgMGMtLjggMC0xLjUtLjUtMS44LTEuMy0zLjgtMTAuNy04LjctMjAuOC0xNC41LTI5LjlsLTE4NC4zIC4xYy01LjggOS4xLTEwLjcgMTkuMS0xNC40IDI5LjgtLjMgLjgtMSAxLjMtMS44IDEuM2wtMS40IDBjLS42IDAtMS4yLS4zLTEuNi0uOHMtLjUtMS4xLS4yLTEuN2MzLjUtMTAuMiA4LTE5LjcgMTMuNC0yOC42bC05My42IDBjLTEyLjMgOS4zLTIyLjYgMTkuNC0zMC40IDMwLjMtLjQgLjUtLjkgLjgtMS41IC44bC0xLjYgMGMtLjcgMC0xLjQtLjQtMS43LTFzLS4zLTEuNCAuMS0yYzcuNi0xMC41IDE2LjctMTkuOSAyNi44LTI4bC01MSAwYy0yOC45IDE2LjYtNjIgNDMuMy02My41IDc5LjdsNDQuNyAwYy41IDAgMSAuMiAxLjMgLjZzLjYgLjggLjYgMS4zbDAgMS4zYzAgMS4xLS45IDEuOS0xLjkgMS45bC00NC43IDBDNi44IDI5NSA0MCAzMjEuNyA2OSAzMzguM2w1MC45IDBjLTEwLjMtOC40LTE5LjEtMTcuNC0yNi4xLTI3bC0uOC0xLjFjLS40LS42LS41LTEuMy0uMS0yczEtMSAxLjctMWwxLjYgMCAuMiAwYy41IC4xIDEgLjMgMS4zIC44IDcuOSAxMC45IDE4LjEgMjEgMzAuNSAzMC4zbDkzLjYgMGMtNS4zLTguOC05LjgtMTguNC0xMy40LTI4LjUtLjItLjYtLjEtMS4yIC4yLTEuN3MuOS0uOCAxLjYtLjhsMS40IDAgLjIgMGMuNyAuMSAxLjQgLjYgMS43IDEuMyAzLjggMTAuNyA4LjYgMjAuNyAxNC40IDI5LjhsMTg0LjUtLjFjNS44LTkuMSAxMC42LTE5LjEgMTQuNC0yOS43bC4xLS4xYy4zLS43IDEtMS4xIDEuNy0xLjFsMS40IDBjLjYgMCAxLjIgLjMgMS42IC44cy41IDEuMiAuMiAxLjdjLTMuNSAxMC4xLTggMTkuNy0xMy4zIDI4LjVsOTMuNyAwYzEyLjMtOS4zIDIyLjUtMTkuNCAzMC4zLTMwLjJsLjEtLjJjLjQtLjQgLjktLjYgMS40LS42bDEuNiAwYy43IDAgMS40IC40IDEuNyAxcy4zIDEuNC0uMSAyYy03LjEgMTAtMTYuMSAxOS4zLTI2LjcgMjcuOWw1MS4xIDBjMjguOC0xNi42IDYxLjgtNDMuMyA2My40LTc5LjZsLTQ0LjcgMGMtMSAwLTEuOS0uOS0xLjktMS45bDAtMS4zYzAtMS4xIC45LTEuOSAxLjktMS45bDQ0LjcgMGMtMS42LTM2LjUtMzQuOS02My4zLTYzLjktNzkuOWwtNTAuOSAwek0yMjAuNSAxMjYuMmMtNDkuMSA3LjEtOTguNyAxOS41LTE0MyA0Mi43bDQ4LjQgMGMyNy45LTIwLjggNjEtMzQuMSA5NC41LTQyLjd6bTYyLjgtNS40Yy01MS44IDQuNS0xMDUuMiAxOC4zLTE0OC42IDQ4LjFsOTAgMGMxNC4yLTIxLjQgMzQuNC0zOSA1OC42LTQ4LjF6bTM2LjYtMS42Yy0zNi4yIDAtNjguNyAyMC42LTg5IDQ5LjdsMTc3LjktLjFjLTIwLjMtMjkuMS01Mi43LTQ5LjYtODguOS00OS42em0zNi42IDEuNmMyNC4yIDkuMSA0NC40IDI2LjYgNTguNSA0OGw4OS44IDBjLTQzLjMtMjkuNy05Ni42LTQzLjUtMTQ4LjMtNDh6bTYyLjggNS40YzMzLjQgOC41IDY2LjQgMjEuOSA5NC4zIDQyLjVsNDguMyAwYy00NC4xLTIzLjEtOTMuNi0zNS40LTE0Mi42LTQyLjV6Il19LHZzcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJudXRyaXRpb25peCIsaWNvbjpbNDQ4LDUxMixbXSwiZjNkNiIsIk0xMTIgOC4xUzI0NS40LS4xIDIzMyAxMTIuNWMwIDAgMTkuMS03NC45IDEwMy00MC42IDAgMC0xNy43IDc0LTg4IDU2IDAgMCAxNC42LTU0LjYgNjYuMS01Ni42IDAgMC0zOS45LTEwLjMtODIuMSA0OC44IDAgMC0xOS44LTk0LjUtOTMuNi05OS43IDAgMCA3NS4yIDE5LjQgNzcuNiAxMDcuNSAwIC4xLTEwNi40IDctMTA0LTExOS44ek00MjQgMzIzLjdjMCA0OC41LTkuNyA5NS4zLTMyIDEzMi4zLTQyLjIgMzAuOS0xMDUgNDgtMTY4IDQ4LTYyLjkgMC0xMjUuOC0xNy4xLTE2OC00OC0yMi4zLTM3LTMyLTgzLjgtMzItMTMyLjMgMC00OC40IDE3LjctOTQuNyA0MC0xMzEuNyA0Mi4yLTMwLjkgOTcuMS00OC42IDE2MC00OC42IDYzIDAgMTE3LjggMTcuNiAxNjAgNDguNiAyMi4zIDM3IDQwIDgzLjMgNDAgMTMxLjd6TTE0NCA0MjhhMjggMjggMCAxIDAgLTU2IDAgMjggMjggMCAxIDAgNTYgMHptMC02Ni4yYTI4IDI4IDAgMSAwIC01NiAwIDI4IDI4IDAgMSAwIDU2IDB6bTAtNjYuMmEyOCAyOCAwIDEgMCAtNTYgMCAyOCAyOCAwIDEgMCA1NiAwek0yMTYgNDI4YTI4IDI4IDAgMSAwIC01NiAwIDI4IDI4IDAgMSAwIDU2IDB6bTAtNjYuMmEyOCAyOCAwIDEgMCAtNTYgMCAyOCAyOCAwIDEgMCA1NiAwem0wLTY2LjJhMjggMjggMCAxIDAgLTU2IDAgMjggMjggMCAxIDAgNTYgMHpNMjg4IDQyOGEyOCAyOCAwIDEgMCAtNTYgMCAyOCAyOCAwIDEgMCA1NiAwem0wLTY2LjJhMjggMjggMCAxIDAgLTU2IDAgMjggMjggMCAxIDAgNTYgMHptMC02Ni4yYTI4IDI4IDAgMSAwIC01NiAwIDI4IDI4IDAgMSAwIDU2IDB6TTM2MCA0MjhhMjggMjggMCAxIDAgLTU2IDAgMjggMjggMCAxIDAgNTYgMHptMC02Ni4yYTI4IDI4IDAgMSAwIC01NiAwIDI4IDI4IDAgMSAwIDU2IDB6bTAtNjYuMmEyOCAyOCAwIDEgMCAtNTYgMCAyOCAyOCAwIDEgMCA1NiAwek0zODQgMjU2Yy00LjgtMjIuMy03LjQtMzYuOS0xNi01Ni0zOC44LTE5LjktOTAuNS0zMi0xNDQtMzJTMTE4LjggMTgwLjEgODAgMjAwYy04LjggMTkuNS0xMS4yIDMzLjktMTYgNTYgNDIuMi03LjkgOTguNy0xNC44IDE2MC0xNC44czExNy44IDYuOSAxNjAgMTQuOHoiXX0seXNyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImNyZWF0aXZlLWNvbW1vbnMtc2FtcGxpbmctcGx1cyIsaWNvbjpbNTEyLDUxMixbXSwiZjRmMSIsIk0yNTUuNiA4QzM5Ny40IDggNTA0IDExOC4xIDUwNCAyNTYgNTA0IDQwMy4xIDM4NS41IDUwNCAyNTUuNiA1MDQgMTIxLjYgNTA0IDggMzk0LjUgOCAyNTYgOCAxMjMuMSAxMTIuNyA4IDI1NS42IDh6bS44IDQ0LjdjLTExOC4yIDAtMjAzLjcgOTcuOS0yMDMuNyAyMDMuMyAwIDEwOS44IDkxLjIgMjAyLjggMjAzLjcgMjAyLjggMTAzLjIgMCAyMDIuOC04MS4xIDIwMi44LTIwMi44IC4xLTExMy44LTkwLjItMjAzLjMtMjAyLjgtMjAzLjN6bTEwNyAyMDUuNmMtNC43IDAtOSAyLjgtMTAuNyA3LjJsLTQgOS41LTExLTkyLjhjLTEuNy0xMy45LTIyLTEzLjQtMjMuMSAuNGwtNC4zIDUxLjQtNS4yLTY4LjhjLTEuMS0xNC4zLTIyLjEtMTQuMi0yMy4yIDBsLTMuNSA0NC45LTUuOS05NC4zYy0uOS0xNC41LTIyLjMtMTQuNC0yMy4yIDBsLTUuMSA4My43LTQuMy02Ni4zYy0uOS0xNC40LTIyLjItMTQuNC0yMy4yIDBsLTUuMyA4MC4yLTQuMS01N2MtMS4xLTE0LjMtMjItMTQuMy0yMy4yLS4ybC03LjcgODkuOC0xLjgtMTIuMmMtMS43LTExLjQtMTcuMS0xMy42LTIyLTMuM2wtMTMuMiAyNy43LTQzLjkgMCAwIDIzLjIgNTEuMyAwYzQuNCAwIDguNC0yLjUgMTAuNC02LjRsMTAuNyA3My4xYzIgMTMuNSAyMS45IDEzIDIzLjEtLjdsMy44LTQzLjYgNS43IDc4LjNjMS4xIDE0LjQgMjIuMyAxNC4yIDIzLjItLjFsNC42LTcwLjQgNC44IDczLjNjLjkgMTQuNCAyMi4zIDE0LjQgMjMuMi0uMWw0LjktODAuNSA0LjUgNzEuOGMuOSAxNC4zIDIyLjEgMTQuNSAyMy4yIC4ybDQuNi01OC42IDQuOSA2NC40YzEuMSAxNC4zIDIyIDE0LjIgMjMuMSAuMWw2LjgtODMgMi43IDIyLjNjMS40IDExLjggMTcuNyAxNC4xIDIyLjMgMy4xbDE4LTQzLjQgNTAuNSAwIDAtMjMuMi01OC40IC4zem0tNzggNS4ybC0yMS45IDAgMCAyMS45YzAgNC4xLTMuMyA3LjUtNy41IDcuNS00LjEgMC03LjUtMy4zLTcuNS03LjVsMC0yMS45LTIxLjkgMGMtNC4xIDAtNy41LTMuMy03LjUtNy41IDAtNC4xIDMuNC03LjUgNy41LTcuNWwyMS45IDAgMC0yMS45YzAtNC4xIDMuNC03LjUgNy41LTcuNXM3LjUgMy4zIDcuNSA3LjVsMCAyMS45IDIxLjkgMGM0LjEgMCA3LjUgMy4zIDcuNSA3LjUgMCA0LjEtMy40IDcuNS03LjUgNy41eiJdfSx3c3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToicmVkaGF0IixpY29uOls1MTIsNTEyLFtdLCJmN2JjIiwiTTM0MS41IDI4NS42YzMzLjcgMCA4Mi4zLTYuOSA4Mi4zLTQ3IC4yLTYuNyAuOS0xLjgtMjAuOS05Ni4yLTQuNi0xOS4xLTguNy0yNy44LTQyLjMtNDQuNi0yNi4xLTEzLjMtODIuOS0zNS40LTk5LjctMzUuNC0xNS43IDAtMjAuMiAyMC4yLTM4LjkgMjAuMi0xOCAwLTMxLjMtMTUuMS00OC4xLTE1LjEtMTYuMSAwLTI2LjcgMTEtMzQuOCAzMy42LTI3LjUgNzcuNi0yNi4zIDc0LjMtMjYuMSA3OC4zIDAgMjQuOCA5Ny42IDEwNi4xIDIyOC41IDEwNi4xek00MjkgMjU0LjhjNC43IDIyIDQuNyAyNC4zIDQuNyAyNy4yIDAgMzcuNy00Mi4zIDU4LjYtOTggNTguNi0xMjUuNyAuMS0yMzUuOS03My42LTIzNS45LTEyMi4zIDAtNi44IDEuNC0xMy41IDQuMS0xOS43LTQ1LjIgMi4zLTEwMy44IDEwLjMtMTAzLjggNjIgMCA4NC43IDIwMC42IDE4OSAzNTkuNSAxODkgMTIxLjggMCAxNTIuNS01NS4xIDE1Mi41LTk4LjYgMC0zNC4yLTI5LjYtNzMtODIuOS05Ni4yeiJdfSxsU2U9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic3F1YXJlLXBpZWQtcGlwZXIiLGljb246WzQ0OCw1MTIsWyJwaWVkLXBpcGVyLXNxdWFyZSJdLCJlMDFlIiwiTTMyLjEgNDE5bC0zMiA2MC4yIC44LTMyOEMuOSA4NS4zIDU0LjEgMzIgMTIwLjEgMzJsMzI3LjIgMEMzNTQuMyA2MC45IDI1Ny40IDEyNi4yIDE5My40IDIwMC42IDEyMi44IDI4MiA4Mi43IDMzOCAzMi4xIDQxOXptNDE2LTM4N1MzMDUuMyA5OC44IDI2MS43IDE5OS4xYy0yMy4yIDUzLjYtMjguOSAxMTguMS03MSAxNTguNi0yOC45IDI3LjgtNjkuOCAzOC4yLTEwNS4zIDU2LjMtMjMuMiAxMi02Ni40IDQwLjUtODQuOSA2NmwzMjguNCAwYzY2IDAgMTE5LjMtNTMuMyAxMTkuMy0xMTkuMi0uMSAwLS4xLTMyOC44LS4xLTMyOC44eiJdfSxNc3I9bFNlLGtzcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJ3aGF0c2FwcCIsaWNvbjpbNDQ4LDUxMixbXSwiZjIzMiIsIk0zODAuOSA5Ny4xYy00MS45LTQyLTk3LjctNjUuMS0xNTctNjUuMS0xMjIuNCAwLTIyMiA5OS42LTIyMiAyMjIgMCAzOS4xIDEwLjIgNzcuMyAyOS42IDExMUwwIDQ4MCAxMTcuNyA0NDkuMWMzMi40IDE3LjcgNjguOSAyNyAxMDYuMSAyN2wuMSAwYzEyMi4zIDAgMjI0LjEtOTkuNiAyMjQuMS0yMjIgMC01OS4zLTI1LjItMTE1LTY3LjEtMTU3em0tMTU3IDM0MS42Yy0zMy4yIDAtNjUuNy04LjktOTQtMjUuN2wtNi43LTQtNjkuOCAxOC4zIDE4LjYtNjguMS00LjQtN2MtMTguNS0yOS40LTI4LjItNjMuMy0yOC4yLTk4LjIgMC0xMDEuNyA4Mi44LTE4NC41IDE4NC42LTE4NC41IDQ5LjMgMCA5NS42IDE5LjIgMTMwLjQgNTQuMXM1Ni4yIDgxLjIgNTYuMSAxMzAuNWMwIDEwMS44LTg0LjkgMTg0LjYtMTg2LjYgMTg0LjZ6TTMyNS4xIDMwMC41Yy01LjUtMi44LTMyLjgtMTYuMi0zNy45LTE4LTUuMS0xLjktOC44LTIuOC0xMi41IDIuOHMtMTQuMyAxOC0xNy42IDIxLjhjLTMuMiAzLjctNi41IDQuMi0xMiAxLjQtMzIuNi0xNi4zLTU0LTI5LjEtNzUuNS02Ni01LjctOS44IDUuNy05LjEgMTYuMy0zMC4zIDEuOC0zLjcgLjktNi45LS41LTkuN3MtMTIuNS0zMC4xLTE3LjEtNDEuMmMtNC41LTEwLjgtOS4xLTkuMy0xMi41LTkuNS0zLjItLjItNi45LS4yLTEwLjYtLjJzLTkuNyAxLjQtMTQuOCA2LjljLTUuMSA1LjYtMTkuNCAxOS0xOS40IDQ2LjNzMTkuOSA1My43IDIyLjYgNTcuNGMyLjggMy43IDM5LjEgNTkuNyA5NC44IDgzLjggMzUuMiAxNS4yIDQ5IDE2LjUgNjYuNiAxMy45IDEwLjctMS42IDMyLjgtMTMuNCAzNy40LTI2LjRzNC42LTI0LjEgMy4yLTI2LjRjLTEuMy0yLjUtNS0zLjktMTAuNS02LjZ6Il19LFNzcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJpbWRiIixpY29uOls0NDgsNTEyLFtdLCJmMmQ4IiwiTTg5LjUgMzIzLjZsLTM1LjYgMCAwLTEzNy40IDM1LjYgMCAwIDEzNy40em02Ni42LTczLjFsOS4xLTY0LjMgNDYuMyAwIDAgMTM3LjQtMzEgMCAwLTkyLjctMTMuNCA5Mi43LTIxLjMgMC0xMy05MC43LS4xIDkwLjctMzEuMiAwIDAtMTM3LjQgNDYuMSAwYy41IDguMyAyLjggMTguMSA0LjMgMjkuNGw0LjIgMzQuOXptNjcuNiA3My4xbDAtMTM3LjQgMjYuNiAwYzE3IDAgMjcgLjkgMzMgMi40IDYuMSAxLjcgMTAuNyA0LjIgMTMuOSA3LjkgMy4xIDMuMyA1LjEgNi42IDUuOCAxMiAuOSA0LjQgMS40IDEzLjEgMS40IDI2LjJsMCA0OC4yYzAgMTIuMy0uNyAyMC41LTEuOSAyNC43LTEuMSA0LjEtMy4xIDcuNC02IDkuNy0yLjggMi40LTYuNCA0LjEtMTAuNyA1LTQuMiAuOC0xMC42IDEuMy0xOS4xIDEuM2wtNDMgMHptMzUuNS0xMTMuOWwwIDg5LjRjNS4xIDAgOC4zLTEgOS40LTIuMyAxLjEtMiAxLjgtNy42IDEuOC0xNi43bDAtNTMuM2MwLTYuMi0uMS0xMC4yLS43LTEyLS4zLTEuOC0xLjItMy0yLjYtNC43LTEuNCAwLTQuMS0uNC03LjktLjR6bTU3LjMgMTEzLjlsMC0xMzcuNCAzNC4xIDAgMCA0My45YzIuOS0yLjQgNi4xLTQuOSA5LjUtNi42IDMuNi0xLjUgOC44LTIuNCAxMi44LTIuNCA0LjggMCA4LjkgLjggMTIuMyAyLjIgMy40IDEuNSA2IDMuNSA4IDYuMiAxLjcgMi42IDIuNyA1LjMgMy4xIDcuOCAuNCAyLjYtLjIgOC0uMiAxNi4ybDAgMzguNmMwIDguMiAuMiAxNC4zLS44IDE4LjQtMS4xIDQtMy44IDcuNi03LjggOS42LTQuMSAzLjktOC45IDUuMy0xNC42IDUuMy00IDAtOS4yLS45LTEyLjctMi41LTMuNS0xLjgtNi43LTQuNS05LjYtOGwtMi4xIDguNy0zMiAwem00NS4xLTIwLjdjLjctMS44IDEtNiAxLTEyLjVsMC0zNS40YzAtNS42LS4zLTkuNS0xLjEtMTEuMi0uNy0xLjktMy43LTIuNy01LjgtMi43LTIgMC0zLjQgLjgtNC4xIDIuMy0uNiAxLjUtMSA1LjQtMSAxMS42bDAgMzYuNGMwIDYuMSAuNCAxMCAxLjIgMTEuNiAuNiAxLjcgMi4xIDIuNSA0LjEgMi41IDIuMiAwIDQuMi0uOCA1LjctMi42ek00MTguNCAzMmMxNS43IDEuMiAyOC43IDE1LjIgMjguNyAzMS45bDAgMzg0LjJjMCAxNi40LTExLjkgMzAuNC0yOC4yIDMxLS4zIDAtLjUgLjktLjggLjlMMjkuOSA0ODBjLS4zIDAtLjYtLjktLjgtLjEtMTUuNy0xLjQtMjcuOS0xMy44LTI5LTMwLjJMMCA2MS44QzEuMSA0NS45IDEzLjggMzMuMSAzMC4zIDMxLjFsMzg3LjQgMGMuMiAwIC41IC45IC43IC45ek0zMC4zIDQxLjNDMTkgNDIgMTAgNTEgOS4zIDYyLjRsMCAzODcuM2MuNCA1LjQgMi43IDEwLjUgNi40IDE0LjMgMy44IDMuOSA4LjggNi4zIDE0LjIgNi43bDM4OC4yIDBjMTEuNS0xIDIwLjYtMTEuNiAyMC42LTIyLjZsMC0zODQuMmMwLTUuNy0yLjEtMTEuMy02LTE1LjVzLTkuMy02LjgtMTUtNy4ybC0zODcuNCAweiJdfSx6c3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToicHl0aG9uIixpY29uOls0NDgsNTEyLFtdLCJmM2UyIiwiTTQzOS44IDIwMC41Yy03LjctMzAuOS0yMi4zLTU0LjItNTMuNC01NC4ybC00MC4xIDAgMCA0Ny40YzAgMzYuOC0zMS4yIDY3LjgtNjYuOCA2Ny44bC0xMDYuOCAwYy0yOS4yIDAtNTMuNCAyNS01My40IDU0LjNsMCAxMDEuOGMwIDI5IDI1LjIgNDYgNTMuNCA1NC4zIDMzLjggOS45IDY2LjMgMTEuNyAxMDYuOCAwIDI2LjktNy44IDUzLjQtMjMuNSA1My40LTU0LjNsMC00MC43LTEwNi43IDAgMC0xMy42IDE2MC4yIDBjMzEuMSAwIDQyLjYtMjEuNyA1My40LTU0LjIgMTEuMi0zMy41IDEwLjctNjUuNyAwLTEwOC42ek0yODYuMiA0NDQuN2EyMC40IDIwLjQgMCAxIDEgMC00MC43IDIwLjQgMjAuNCAwIDEgMSAwIDQwLjd6TTE2Ny44IDI0OC4xbDEwNi44IDBjMjkuNyAwIDUzLjQtMjQuNSA1My40LTU0LjNsMC0xMDEuOWMwLTI5LTI0LjQtNTAuNy01My40LTU1LjYtMzUuOC01LjktNzQuNy01LjYtMTA2LjggLjEtNDUuMiA4LTUzLjQgMjQuNy01My40IDU1LjZsMCA0MC43IDEwNi45IDAgMCAxMy42LTE0NyAwYy0zMS4xIDAtNTguMyAxOC43LTY2LjggNTQuMi05LjggNDAuNy0xMC4yIDY2LjEgMCAxMDguNiA3LjYgMzEuNiAyNS43IDU0LjIgNTYuOCA1NC4ybDM2LjcgMCAwLTQ4LjhjMC0zNS4zIDMwLjUtNjYuNCA2Ni44LTY2LjR6TTE2MS4yIDY0LjdhMjAuNCAyMC40IDAgMSAxIDAgNDAuOCAyMC40IDIwLjQgMCAxIDEgMC00MC44eiJdfSxDc3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiY2FzaC1hcHAiLGljb246WzQ0OCw1MTIsW10sImU3ZDQiLCJNNDQwLjMgOTYuOWMtOS40LTI2LjUtMzAuMy00Ny40LTU2LjgtNTctMjQuMS03LjktNDYuMy03LjktOTEuNi03LjlMMTU2IDMyYy00NC44IDAtNjcuMiAwLTkxLjMgNy41LTI2LjUgOS42LTQ3LjQgMzAuNS01NyA1Ny03LjcgMjQuMy03LjcgNDYuNy03LjcgOTEuN0wwIDMyMy44YzAgNDUuMiAwIDY3LjQgNy41IDkxLjUgOS42IDI2LjUgMzAuNSA0Ny40IDU3IDU3IDI0LjMgNy43IDQ2LjcgNy43IDkxLjYgNy43bDEzNS43IDBjNDUgMCA2Ny40IDAgOTEuNi03LjcgMjYuNS05LjYgNDcuNC0zMC41IDU3LTU3IDcuNy0yNC4zIDcuNy00Ni43IDcuNy05MS41bDAtMTM1LjVjMC00NSAwLTY3LjQtNy43LTkxLjV6TTMyMy4xIDE4NS40bC0yNS44IDIxLjFjLTIuMyAxLjktNS41IDEuNS03LjMtLjktMTMuMi0xNi4yLTMzLjctMjUuNC01Ni4xLTI1LjQtMjUgMC00MC42IDEwLjktNDAuNiAyNi4yLS40IDEyLjggMTEuNyAxOS42IDQ5LjEgMjcuNyA0Ny4yIDEwIDY4LjcgMjkuNyA2OC43IDYyLjcgMCA0MS40LTMzLjcgNzEuOS04Ni40IDc1LjNsLTUuMSAyNC41Yy0uNCAyLjMtMi42IDQuMS01LjEgNC4xbC00MC42IDBjLTMuNCAwLTUuOC0zLjItNS4xLTYuNGw2LjQtMjcuM2MtMjYtNy41LTQ3LjItMjItNTkuMy0zOS43LTEuNS0yLjMtMS4xLTUuMyAxLjEtN2wyOC4yLTIyYzIuMy0xLjkgNS44LTEuMyA3LjUgMS4xIDE0LjkgMjAuOSAzOCAzMy4zIDY1LjcgMzMuMyAyNSAwIDQzLjgtMTIuMiA0My44LTI5LjcgMC0xMy40LTkuNC0xOS42LTQxLjItMjYuMi01NC4yLTExLjctNzUuOC0zMS44LTc1LjgtNjQuOSAwLTM4LjQgMzIuMi02Ny4yIDgwLjktNzFsNS4zLTI1LjRjLjQtMi4zIDIuNi00LjEgNS4xLTQuMWwzOS45IDBjMy4yIDAgNS44IDMgNS4xIDYuMmwtNi4yIDI4LjRjMjAuOSA2LjQgMzggMTcuOSA0OC43IDMyLjIgMS43IDIuMSAxLjMgNS4zLS45IDd6Il19LF9zcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJwaW50ZXJlc3QtcCIsaWNvbjpbMzg0LDUxMixbXSwiZjIzMSIsIk0yMDQgNi41Yy0xMDIuNiAwLTIwNCA2OC40LTIwNCAxNzkuMSAwIDcwLjQgMzkuNiAxMTAuNCA2My42IDExMC40IDkuOSAwIDE1LjYtMjcuNiAxNS42LTM1LjQgMC05LjMtMjMuNy0yOS4xLTIzLjctNjcuOCAwLTgwLjQgNjEuMi0xMzcuNCAxNDAuNC0xMzcuNCA2OC4xIDAgMTE4LjUgMzguNyAxMTguNSAxMDkuOCAwIDUzLjEtMjEuMyAxNTIuNy05MC4zIDE1Mi43LTI0LjkgMC00Ni4yLTE4LTQ2LjItNDMuOCAwLTM3LjggMjYuNC03NC40IDI2LjQtMTEzLjQgMC02Ni4yLTkzLjktNTQuMi05My45IDI1LjggMCAxNi44IDIuMSAzNS40IDkuNiA1MC43LTEzLjggNTkuNC00MiAxNDcuOS00MiAyMDkuMSAwIDE4LjkgMi43IDM3LjUgNC41IDU2LjQgMy40IDMuOCAxLjcgMy40IDYuOSAxLjUgNTAuNC02OSA0OC42LTgyLjUgNzEuNC0xNzIuOCAxMi4zIDIzLjQgNDQuMSAzNiA2OS4zIDM2IDEwNi4yIDAgMTUzLjktMTAzLjUgMTUzLjktMTk2LjggMC05OS4zLTg1LjgtMTY0LjEtMTgwLTE2NC4xeiJdfSxUc3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToid2htY3MiLGljb246WzQ0OCw1MTIsW10sImY0MGQiLCJNNDQ4IDE2MWwwLTIxLjMtMjguNS04LjgtMi4yLTEwLjQgMjAuMS0yMC43LTEwLjQtMTkuNC0yOSA3LjUtNy4yLTcuNSA3LjUtMjguMi0xOS4xLTExLjYtMjEuMyAyMS0xMC43LTMuMi03LTI2LjQtMjIuNiAwLTYuMiAyNi40LTEyLjEgMy4yLTE5LjctMjEtMTkuNCAxMSA4LjEgMjcuNy04LjEgOC40LTI4LjUtNy41LTExIDE5LjEgMjAuNyAyMS0yLjkgMTAuNC0yOC41IDcuOC0uMyAyMS43IDI4LjggNy41IDIuNCAxMi4xLTIwLjEgMTkuOSAxMC40IDE4LjUgMjkuNi03LjUgNy4yIDguNi04LjEgMjYuOSAxOS45IDExLjYgMTkuNC0yMC40IDExLjYgMi45IDYuNyAyOC41IDIyLjYgLjMgNi43LTI4LjggMTEuNi0zLjUgMjAuNyAyMS42IDIwLjQtMTIuMS04LjgtMjggNy44LTguMSAyOC44IDguOCAxMC4zLTIwLjEtMjAuOS0xOC44IDIuMi0xMi4xIDI5LjEtN3pNMzI4LjggOTIuNmE1Ni44IDU2LjggMCAxIDEgMCAxMTMuNiA1Ni44IDU2LjggMCAxIDEgMC0xMTMuNnptNzIuMyAxMzBsNDYuOSAxNC41IDAgMzkuOS01NS4xIDEzLjQtNC4xIDIyLjcgMzguOSAzNS4zLTE5LjIgMzcuOS01NC0xNi43LTE0LjYgMTUuMiAxNi43IDUyLjUtMzguMyAyMi43LTM4LjktNDAuNS0yMS43IDYuNi0xMi42IDU0LTQyLjQtLjUtMTIuNi01My42LTIxLjctNS42LTM2LjQgMzguNC0zNy40LTIxLjcgMTUuMi01MC41LTEzLjctMTYuMS01NS41IDE0LjEtMTkuNy0zNC44IDM3LjktMzcuNC00LjgtMjIuOC01NC0xNC4xIC41LTQwLjkgNTMuNS0xNC43IDUuNy0xOS43LTM4LjktMzkuNCAyMC43LTM1LjggNTMuNiAxNC4xIDE1LjItMTUuNy0xNS4yLTUyIDM2LjQtMjAuNyAzNi44IDM5LjQgMjIuNy02LjEgMTEuNi01MiA0Mi40IDAgMTEuNiA0NS45LTIyLjYtNS45LTYuMy0xLjctMy4zIDUuNy0xMSAxOS4xLTMuMyA1LjYgNC42IDQuNiAxNy4yIDE3LjQtLjMgMS0yMy44IDYuNS02LjIgMS43YzAgMy4yLS4xIDkuNi0uMyAxOS4zLTQ3LjUgMTAuNC04My4zIDUyLjgtODMuMyAxMDMuNSAwIDU4LjMgNDcuMyAxMDUuNyAxMDUuNyAxMDUuNyA1MC41IDAgOTIuNy0zNS40IDEwMy4yLTgyLjggOS45IC4xIDE2LjYgLjIgMjAuMSAuM2wxLjYtNi43IDUuNi0yNCAxLjktLjYgMTcuMSAxNy44IDQuNyA0LjkgNS44LTMuNCAyMC40LTEyLjEgNS44LTMuNS0yLTYuNS02LjgtMjEuMnoiXX0sTHNyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImpvZ2V0IixpY29uOls1MTIsNTEyLFtdLCJmM2I3IiwiTTM4Ni4xIDQ1QzM0NS42IDE5LjkgMzAwLjYgOCAyNTYuMiA4IDE3MyA4IDkxLjggNDkuOSA0NC45IDEyNS45LTI3IDI0Mi41IDkuMyAzOTUuMiAxMjUuOSA0NjcuMXMyNjkuMyAzNS42IDM0MS4yLTgwLjlDNTM5IDI2OS42IDUwMi43IDExNi44IDM4Ni4xIDQ1em01MS44IDMyMy4yYy00MC40IDY1LjUtMTEwLjQgMTAxLjUtMTgyIDEwMS41LTYuOCAwLTEzLjYtLjQtMjAuNC0xLTktMTMuNi0xOS45LTMzLjMtMjMuNy00Mi40LTUuNy0xMy43LTI3LjItNDUuNiAzMS4yLTY3LjEgNTEuNy0xOS4xIDE3Ni43LTE2LjUgMjA4LjgtMTcuNi00IDktOC42IDE3LjktMTMuOSAyNi42ek0yMzcuMSAyODEuOWMtNTUuNS0xLjQtODEuNy0yMC44LTU4LjUtNDguMnM1MS4xLTQwLjcgNjguOS01MS4yYzE3LjktMTAuNSAyNy4zLTMzLjctMjMuNi0yOS43LTEyOC42IDguNy0xNjcuMyA5OS4zLTE3OC4zIDE0MC4yLTguOC00OS43LS4xLTEwMi43IDI4LjUtMTQ5LjEgNjEuOS0xMDAuNSAxOTMuNS0xMzEuNyAyOTQtNjkuOCA3NC44IDQ2LjEgMTExLjIgMTMwLjkgOTkuMyAyMTIuNy0yNC45LS41LTE3OS4zLTMuNi0yMzAuMy00Ljl6bTE4My44LTU0LjhjLTIyLjctNi01NyAxMS4zLTg2LjcgMjcuMi0yOS43IDE1LjgtMzEuMSA4LjItMzEuMSA4LjJzNDAuMi0yOC4xIDUwLjctMzQuNSAzMS45LTE0IDEzLjQtMjQuNmMtMy4yLTEuOC02LjctMi43LTEwLjQtMi43LTE3LjggMC00MS41IDE4LjctNjcuNSAzNS42LTMxLjUgMjAuNS02NS4zIDMxLjMtNjUuMyAzMS4zTDM5My41IDI2NiA0NDAgMjQyLjZzMy42LTkuNS0xOS4xLTE1LjV6Il19LGNTZT17cHJlZml4OiJmYWIiLGljb25OYW1lOiJzcXVhcmUteW91dHViZSIsaWNvbjpbNDQ4LDUxMixbNjE3OTgsInlvdXR1YmUtc3F1YXJlIl0sImY0MzEiLCJNMjgyIDI1Ni4ybC05NS4yLTU0LjEgMCAxMDguMiA5NS4yLTU0LjF6TTM4NCAzMkw2NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgNDE2YzAgMzUuMyAyOC43IDY0IDY0IDY0bDMyMCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMzIwYzAtMzUuMy0yOC43LTY0LTY0LTY0em0xNC40IDEzNi4xYzcuNiAyOC42IDcuNiA4OC4yIDcuNiA4OC4yczAgNTkuNi03LjYgODguMWMtNC4yIDE1LjgtMTYuNSAyNy43LTMyLjIgMzEuOS0yOC4zIDcuNy0xNDIuMiA3LjctMTQyLjIgNy43cy0xMTMuOSAwLTE0Mi4yLTcuNmMtMTUuNy00LjItMjgtMTYuMS0zMi4yLTMxLjktNy42LTI4LjYtNy42LTg4LjItNy42LTg4LjJzMC01OS43IDcuNi04OC4yYzQuMi0xNS44IDE2LjUtMjguMiAzMi4yLTMyLjQgMjguMy03LjcgMTQyLjItNy43IDE0Mi4yLTcuN3MxMTMuOSAwIDE0Mi4yIDcuN2MxNS43IDQuMiAyOCAxNi42IDMyLjIgMzIuNHoiXX0sRHNyPWNTZSxBc3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiYXRsYXNzaWFuIixpY29uOls1MTIsNTEyLFtdLCJmNzdiIiwiTTE1Mi4yIDIzNi40Yy03LjctOC4yLTE5LjctNy43LTI0LjggMi44TDEuNiA0OTAuMmMtNSAxMCAyLjQgMjEuNyAxMy40IDIxLjdsMTc1IDBjNS44IC4xIDExLTMuMiAxMy40LTguNCAzNy45LTc3LjggMTUuMS0xOTYuMy01MS4yLTI2Ny4xek0yNDQuNCA4LjFjLTEyMi4zIDE5My40LTguNSAzNDguNiA2NSA0OTUuNSAyLjUgNS4xIDcuNyA4LjQgMTMuNCA4LjRMNDk3IDUxMmMxMS4yIDAgMTguNC0xMS44IDEzLjQtMjEuNyAwIDAtMjM0LjUtNDcwLjYtMjQwLjQtNDgyLjMtNS4zLTEwLjYtMTguOC0xMC44LTI1LjYgLjF6Il19LEVzcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJwaWVkLXBpcGVyLWhhdCIsaWNvbjpbNjQwLDUxMixbXSwiZjRlNSIsIk02NDAgMjQuOWMtODAuOCA1My42LTg5LjQgOTIuNS05Ni40IDEwNC40LTYuNyAxMi4yLTExLjcgNjAuMy0yMy4zIDgzLjYtMTEuNyAyMy42LTU0LjIgNDIuMi02Ni4xIDUwLTExLjcgNy44LTI4LjMgMzguMS00MS45IDY0LjItMTA4LjEtNC40LTE2Ny40IDM4LjgtMjU5LjIgOTMuNiAyOS40LTkuNyA0My4zLTE2LjcgNDMuMy0xNi43IDk0LjItMzYgMTM5LjMtNjguMyAyODEuMS00OS4yIDEuMSAwIDEuOSAuNiAyLjggLjggMy45IDIuMiA1LjMgNi45IDMuMSAxMC44bC01My45IDk1LjhjLTIuNSA0LjctNy44IDcuMi0xMy4xIDYuMS0xMjYuOC0yMy44LTIyNi45IDE3LjMtMzE4LjkgMTguNi03My40IDEuMS05Ny41LTMzLjUtOTcuNS0zNS4xIDAtMS4xIC42LTEuNyAxLjctMS43IDAgMCAzOC4zIDAgMTAzLjEtMTUuMyA3My42LTE0MC4zIDEzOS4yLTE4OS40IDIxMC42LTE4OS40IDAgMCA3MS43IDAgOTAuNiA2MS45IDIyLjgtMzkuNyAyOC4zLTQ5LjIgMjguMy00OS4yIDUuMy05LjQgMzUtNzcuMiA4Ni40LTE0MS40IDUxLjUtNjQgOTAuNC03OS45IDExOS4zLTkxLjh6Il19LCRzcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJpbnRlcm5ldC1leHBsb3JlciIsaWNvbjpbNTEyLDUxMixbXSwiZjI2YiIsIk00ODMuMSAxNTkuN2MxMC45LTI0LjYgMjEuNC02MC40IDIxLjQtODcuOSAwLTcyLjctNzkuNi05OC40LTIwOS43LTM4LjYtMTA3LjYtNy4yLTIxMS4yIDczLjctMjM3LjEgMTg2LjUgMzAuOS0zNC45IDc4LjMtODIuMyAxMjItMTAxLjItNTQuMyA0OC4zLTEwMC42IDEwOS40LTEzNS43IDE3My4yLTIwLjcgMzcuOS00NCA5OS4yLTQ0IDE0NSAwIDk4LjYgOTIuOSA4Ni41IDE4MC4zIDQyIDMxLjQgMTUuNCA2Ni42IDE1LjYgMTAxLjcgMTUuNiA5Ny4xIDAgMTg0LjItNTQuMyAyMTYuOC0xNDZsLTEyMC44IDBjLTUyLjUgODguNi0xOTYuOCA1My0xOTYuOC00Ny40bDMyOC44IDBjNi40LTQzLjYtMS43LTk1LjctMjYuOS0xNDEuMnpNNjQuNiAzNDYuOUM4Mi4zIDM5OCAxMTguMyA0NDIuNyAxNjQuOCA0NzAuMiA3Ni4xIDUxOS4xLTguNCA0OTkuMyA2NC42IDM0Ni45ek0xODAuNSAyMzhjMi01NS4yIDUwLjMtOTQuOSAxMDQtOTQuOSA1My40IDAgMTAyIDM5LjcgMTA0IDk0LjlsLTIwOCAwek0zNjUuMSA1MC40YzIxLjQtMTAuMyA0OC42LTIyIDcyLjYtMjIgMzEuNCAwIDU0LjMgMjEuNyA1NC4zIDUzLjcgMCAyMC03LjQgNDktMTQuNiA2Ny45LTI2LjMtNDIuMy02Ni04MS42LTExMi4zLTk5LjZ6Il19LFBzcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJhaXJibmIiLGljb246WzQ0OCw1MTIsW10sImY4MzQiLCJNMjI0LjUgMzczLjFjLTI1LjItMzEuNy00MC4xLTU5LjQtNDUtODMuMi0yMi41LTg4IDExMi42LTg4IDkwLjEgMC01LjQgMjQuMi0yMC4zIDUyLTQ1IDgzLjJsLS4xIDB6bTEzOC4yIDczLjJjLTQyLjEgMTguMy04My43LTEwLjktMTE5LjMtNTAuNSAxMDMuOS0xMzAuMSA0Ni4xLTIwMC0xOC44LTIwMC01NC45IDAtODUuMiA0Ni41LTczLjMgMTAwLjUgNi45IDI5LjIgMjUuMiA2Mi40IDU0LjQgOTkuNS0zMi41IDM2LTYwLjUgNTIuNy04NS4yIDU0LjktNTAgNy40LTg5LjEtNDEuMS03MS4zLTkxLjEgMTUuMS0zOS4yIDExMS43LTIzMS4yIDExNS45LTI0MS42IDE1LjgtMzAuMSAyNS42LTU3LjQgNTkuNC01Ny40IDMyLjMgMCA0My40IDI1LjkgNjAuNCA1OS45IDM2IDcwLjYgODkuNCAxNzcuNSAxMTQuOCAyMzkuMSAxMy4yIDMzLjEtMS40IDcxLjMtMzcgODYuNnptNDctMTM2LjFjLTEyOC45LTI3NC4zLTEzNi0yNzguMi0xODUuMS0yNzguMi00NS41IDAtNjQuOSAzMS43LTg0LjcgNzIuOC0xMDYuMiAyMTIuMy0xMTYuNCAyNDIuNC0xMTcuMyAyNDUtMjUuMiA2OS4zIDI2LjcgMTMwLjIgODkuNiAxMzAuMiAyMS43IDAgNjAuNi02LjEgMTEyLjQtNjIuNCA1OC43IDYzLjggMTAxLjMgNjIuNCAxMTIuNCA2Mi40IDYyLjkgLjEgMTE0LjktNjAuOSA4OS42LTEzMC4yIDAtMy45LTE2LjgtMzguOS0xNi44LTM5LjZsMCAweiJdfSxJc3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToianMiLGljb246WzQ0OCw1MTIsW10sImYzYjgiLCJNMCAzMmwwIDQ0OCA0NDggMCAwLTQ0OC00NDggMHpNMjQzLjggMzgxLjRjMCA0My42LTI1LjYgNjMuNS02Mi45IDYzLjUtMzMuNyAwLTUzLjItMTcuNC02My4yLTM4LjVMMTUyIDM4NS43YzYuNiAxMS43IDEyLjYgMjEuNiAyNy4xIDIxLjYgMTMuOCAwIDIyLjYtNS40IDIyLjYtMjYuNWwwLTE0My4xIDQyLjEgMCAwIDE0My43em05OS42IDYzLjVjLTM5LjEgMC02NC40LTE4LjYtNzYuNy00M0wzMDEgMzgyLjFjOSAxNC43IDIwLjggMjUuNiA0MS41IDI1LjYgMTcuNCAwIDI4LjYtOC43IDI4LjYtMjAuOCAwLTE0LjQtMTEuNC0xOS41LTMwLjctMjhsLTEwLjUtNC41Yy0zMC40LTEyLjktNTAuNS0yOS4yLTUwLjUtNjMuNSAwLTMxLjYgMjQuMS01NS42IDYxLjYtNTUuNiAyNi44IDAgNDYgOS4zIDU5LjggMzMuN0wzNjggMjkwYy03LjItMTIuOS0xNS0xOC0yNy4xLTE4LTEyLjMgMC0yMC4xIDcuOC0yMC4xIDE4IDAgMTIuNiA3LjggMTcuNyAyNS45IDI1LjZsMTAuNSA0LjVjMzUuOCAxNS4zIDU1LjkgMzEgNTUuOSA2Ni4yIDAgMzcuOC0yOS44IDU4LjYtNjkuNyA1OC42eiJdfSxOc3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToicXVpbnNjYXBlIixpY29uOls1MTIsNTEyLFtdLCJmNDU5IiwiTTMxMy43IDQ3NC42bC0xIDBjLTQxLjkgMC04Mi4xLTE2LjctMTExLjgtNDYuM3MtNDYuMy02OS45LTQ2LjMtMTExLjggMTYuNy04Mi4xIDQ2LjMtMTExLjggNjkuOS00Ni4zIDExMS44LTQ2LjNjOTQuOSAwIDE2OC4yIDgzLjEgMTU3IDE3Ni42IDQgNS4xIDguMiA5LjYgMTEuMiAxNS4zIDEzLjQtMzAuMyAyMC4zLTYyLjQgMjAuMy05Ny43IDAtMTM1LjEtMTA5LjUtMjQ0LjYtMjQ0LjYtMjQ0LjZTMTIuMSAxMTcuNSAxMi4xIDI1Mi42IDEyMS42IDQ5Ny4yIDI1Ni42IDQ5Ny4yYzIzLjggLjIgNDcuNi0zLjIgNzAuNC0xMC4xLTUuMi0zLjUtOC45LTguMS0xMy4zLTEyLjV6bTc4LjMtMTY5YTk5LjIgOTkuMiAwIDEgMCAwIDE5OC40IDk5LjIgOTkuMiAwIDEgMCAwLTE5OC40eiJdfSxGc3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiYWR2ZXJzYWwiLGljb246WzUxMiw1MTIsW10sImYzNmEiLCJNNDgyLjEgMzJMMjguNyAzMkM1LjggMzIgMCAzNy45IDAgNjAuOUwwIDQ1MS4xQzAgNDc0LjQgNS44IDQ4MCAyOC43IDQ4MGw0NTMuNCAwYzI0LjQgMCAyOS45LTUuMiAyOS45LTI5LjdsMC0zODguMWMwLTI0LjYtNS40LTMwLjItMjkuOS0zMC4yek0xNzguNCAyMjAuM2MtMjcuNS0yMC4yLTcyLjEtOC43LTg0LjIgMjMuNC00LjMgMTEuMS05LjMgOS41LTE3LjUgOC4zLTkuNy0xLjUtMTcuMi0zLjItMjIuNS01LjUtMjguOC0xMS40IDguNi01NS4zIDI0LjktNjQuMyA0MS4xLTIxLjQgODMuNC0yMi4yIDEyNS4zLTQuOCA0MC45IDE2LjggMzQuNSA1OS4yIDM0LjUgMTI4LjUgMi43IDI1LjgtNC4zIDU4LjMgOS4zIDg4LjggMS45IDQuNCAuNCA3LjktMi43IDEwLjctOC40IDYuNy0zOS4zIDIuMi00Ni42LTcuNC0xLjktMi4yLTEuOC0zLjYtMy45LTYuMi0zLjYtMy45LTcuMy0yLjItMTEuOSAxLTU3LjQgMzYuNC0xNDAuMyAyMS40LTE0Ny00My4zLTMuMS0yOS4zIDEyLjQtNTcuMSAzOS42LTcxIDM4LjItMTkuNSAxMTIuMi0xMS44IDExNC0zMC45IDEuMS0xMC4yLTEuOS0yMC4xLTExLjMtMjcuM3ptMjg2LjcgMjIyYzAgMTUuMS0xMS4xIDkuOS0xNy44IDkuOWwtMzk0LjkgMGMtNy40IDAtMTguMiA0LjgtMTcuOC0xMC43IC40LTEzLjkgMTAuNS05LjEgMTcuMS05LjEgMTMyLjMtLjQgMjY0LjUtLjQgMzk2LjggMCA2LjggMCAxNi42LTQuNCAxNi42IDkuOXptMy44LTM0MC41bDAgMjkxYzAgNS43LS43IDEzLjktOC4xIDEzLjktMTIuNC0uNC0yNy41IDcuMS0zNi4xLTUuNi01LjgtOC43LTcuOC00LTEyLjQtMS4yLTUzLjQgMjkuNy0xMjguMSA3LjEtMTQ0LjQtODUuMi02LjEtMzMuNC0uNy02Ny4xIDE1LjctMTAwIDExLjgtMjMuOSA1Ni45LTc2LjEgMTM2LjEtMzAuNWwwLTcxYzAtMjYuMi0uMS0yNi4yIDI2LTI2LjIgMy4xIDAgNi42IC40IDkuNyAwIDEwLjEtLjggMTMuNiA0LjQgMTMuNiAxNC4zLS4xIC4yLS4xIC4zLS4xIC41ek00MTcuNCAzMzQuMWMtMTkuNSA0Ny42LTcyLjkgNDMuMy05MCA1LjItMTUuMS0zMy4zLTE1LjUtNjguMiAuNC0xMDEuNSAxNi4zLTM0LjEgNTkuNy0zNS43IDgxLjUtNC44IDIwLjYgMjguOCAxNC45IDg0LjYgOC4xIDEwMS4xek0xMjIuNiAzNjkuNGMtNy41LTEuMy0zMy0zLjMtMzMuNy0yNy44LS40LTEzLjkgNy44LTIzIDE5LjgtMjUuOCAyNC40LTUuOSA0OS4zLTkuOSA3My43LTE0LjcgOC45LTIgNy40IDQuNCA3LjggOS41IDEuNCAzMy0yNi4xIDU5LjItNjcuNiA1OC44eiJdfSxPc3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiY3JlYXRpdmUtY29tbW9ucyIsaWNvbjpbNTEyLDUxMixbXSwiZjI1ZSIsIk0yNTMuOCAyMTQuOWwtMzMuMiAxNy4zYy05LjQtMTkuNi0yNS4yLTE5LjktMjcuNS0xOS45LTIyLjEgMC0zMy4yIDE0LjYtMzMuMiA0My44IDAgMjMuNiA5LjIgNDMuOCAzMy4yIDQzLjggMTQuNSAwIDI0LjYtNy4xIDMwLjYtMjEuM2wzMC42IDE1LjVjLTYuMiAxMS41LTI1LjcgMzktNjUuMSAzOS0yMi42IDAtNzQtMTAuMy03NC03NyAwLTU4LjcgNDMtNzcuMSA3Mi42LTc3LjEgMzAuNyAwIDUyLjcgMTEuOSA2NiAzNS45em0xNDMgMGwtMzIuOCAxNy4zYy05LjUtMTkuOC0yNS43LTE5LjktMjcuOS0xOS45LTIyLjEgMC0zMy4yIDE0LjYtMzMuMiA0My44IDAgMjMuNSA5LjIgNDMuOCAzMy4yIDQzLjggMTQuNCAwIDI0LjYtNy4xIDMwLjUtMjEuM2wzMSAxNS41Yy0yLjEgMy44LTIxLjQgMzktNjUuMSAzOS0yMi43IDAtNzQtOS45LTc0LTc3IDAtNTguNyA0My03Ny4xIDcyLjYtNzcuMSAzMC43IDAgNTIuNiAxMS45IDY1LjYgMzUuOXpNMjU1LjYgOEMxMTIuNyA4IDggMTIzLjEgOCAyNTYuMSA4IDM5NC41IDEyMS42IDUwNC4xIDI1NS42IDUwNC4xIDM4NS41IDUwNC4xIDUwNCA0MDMuMiA1MDQgMjU2LjEgNTA0IDExOC4yIDM5Ny40IDggMjU1LjYgOHptLjkgNDUwLjhjLTExMi41IDAtMjAzLjctOTMtMjAzLjctMjAyLjggMC0xMDUuNCA4NS40LTIwMy4zIDIwMy43LTIwMy4zIDExMi41IDAgMjAyLjggODkuNSAyMDIuOCAyMDMuMyAwIDEyMS43LTk5LjcgMjAyLjgtMjAyLjggMjAyLjh6Il19LFJzcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJub3Rpb24iLGljb246WzUxMiw1MTIsW10sImU3ZDkiLCJNOTQuOSAxMDAuMmMxNC45IDEyLjEgMjAuNSAxMS4yIDQ4LjYgOS4zTDQwNy44IDkzLjZjNS42IDAgLjktNS42LS45LTYuNUwzNjIuOSA1NS40Yy04LjQtNi41LTE5LjYtMTQtNDEuMS0xMi4xTDY1LjkgNjEuOWMtOS4zIC45LTExLjIgNS42LTcuNSA5LjNsMzYuNCAyOC45em0xNS45IDYxLjZsMCAyNzguMWMwIDE0LjkgNy41IDIwLjUgMjQuMyAxOS42bDI5MC41LTE2LjhjMTYuOC0uOSAxOC43LTExLjIgMTguNy0yMy4zbDAtMjc2LjJjMC0xMi4xLTQuNy0xOC43LTE1LTE3LjdMMTI1LjcgMTQzLjFjLTExLjIgLjktMTQuOSA2LjUtMTQuOSAxOC43em0yODYuNyAxNC45YzEuOSA4LjQgMCAxNi44LTguNCAxNy44bC0xNCAyLjggMCAyMDUuM2MtMTIuMiA2LjUtMjMuNCAxMC4zLTMyLjcgMTAuMy0xNSAwLTE4LjctNC43LTI5LjktMTguN2wtOTEuNS0xNDMuNyAwIDEzOSAyOSA2LjVzMCAxNi44LTIzLjQgMTYuOGwtNjQuNCAzLjdjLTEuOS0zLjcgMC0xMy4xIDYuNS0xNC45bDE2LjgtNC43IDAtMTgzLjgtMjMuMy0xLjljLTEuOS04LjQgMi44LTIwLjUgMTUuOS0yMS41bDY5LjEtNC43IDk1LjMgMTQ1LjYgMC0xMjguOC0yNC4zLTIuOGMtMS45LTEwLjMgNS42LTE3LjcgMTQuOS0xOC43bDY0LjUtMy44ek00NC40IDM2LjdMMzEwLjYgMTcuMWMzMi43LTIuOCA0MS4xLS45IDYxLjYgMTRsODUgNTkuN2MxNCAxMC4zIDE4LjcgMTMuMSAxOC43IDI0LjNsMCAzMjcuNmMwIDIwLjUtNy41IDMyLjctMzMuNiAzNC41TDEzMy4yIDQ5NS44Yy0xOS42IC45LTI5LTEuOS0zOS4yLTE0LjlMMzEuNCAzOTkuN2MtMTEuMi0xNC45LTE1LjktMjYuMS0xNS45LTM5LjJsMC0yOTEuMmMwLTE2LjggNy41LTMwLjggMjguOS0zMi43eiJdfSxCc3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiY2hyb21lY2FzdCIsaWNvbjpbNTEyLDUxMixbXSwiZjgzOCIsIk00NDggNjRMNjQuMiA2NGMtMjMuNiAwLTQyLjcgMTkuMS00Mi43IDQyLjdsMCA2My45IDQyLjcgMCAwLTYzLjkgMzgzLjggMCAwIDI5OC42LTE0OS4yIDAgMCA0Mi43IDE0OS40IDBjMjMuNiAwIDQyLjctMTkuMSA0Mi43LTQyLjdsMC0yOTguNkM0OTAuOSA4My4xIDQ3MS42IDY0IDQ0OCA2NHpNMjEuNSAzODMuNmwwIDYzLjkgNjMuOSAwYzAtMzUuMy0yOC42LTYzLjktNjMuOS02My45em0wLTg1bDAgNDIuNGM1OC45IDAgMTA2LjYgNDguMSAxMDYuNiAxMDdsNDIuNyAwYy4xLTgyLjQtNjYuOS0xNDkuMy0xNDkuMy0xNDkuNHpNMjEzLjYgNDQ4bDQyLjcgMEMyNTUuOCAzMTguNSAxNTEgMjEzLjcgMjEuNSAyMTMuNGwwIDQyLjRjMTA2LS4yIDE5MiA4Ni4yIDE5Mi4xIDE5Mi4yeiJdfSxIc3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidWx0cmFseXRpY3MtaHViIixpY29uOls1MTIsNTEyLFtdLCJlODZlIiwiTTEzMC40IDE2YzYwLjkgMCAxMTAuNCA0OS41IDExMC40IDExMC40bDAgMjQuOWM0LjgtLjcgOS43LTEgMTQuNi0xIDg4LjEtLjIgMTY1LjEgNDkgMjA1LjQgMTIxLjItMjIuOC0xNi4yLTUwLjctMjUuNC04MC40LTI1LjMtNzcuMSAuMi0xMzkuNSA2Mi42LTEzOS42IDEzOS40LS4xIDYwLjktNDkuNSAxMTAuMy0xMTAuNyAxMTAuNS02MC42IC4yLTExMC4yLTQ5LjUtMTEwLjItMTEwLjUgLjItMi42IDAgMCAuMS0zLjJsMC0yNTZDMjAuMSA2NS41IDY5LjUgMTYgMTMwLjQgMTZ6TTM4MC4zIDQ5NmExMTAuNCAxMTAuNCAwIDEgMSAwLTIyMC45IDExMC40IDExMC40IDAgMSAxIDAgMjIwLjl6Il19LHFzcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJ3aWtpcGVkaWEtdyIsaWNvbjpbNjQwLDUxMixbXSwiZjI2NiIsIk02NDAgNTEuMmwtLjMgMTIuMmMtMjguMSAuOC00NSAxNS44LTU1LjggNDAuMy0yNSA1Ny44LTEwMy4zIDI0MC0xNTUuMyAzNTguNmwtMTMuNiAwLTgxLjktMTkzLjFjLTMyLjUgNjMuNi02OC4zIDEzMC05OS4yIDE5My4xLS4zIC4zLTE1IDAtMTUtLjMtNDYuOS0xMDkuNy05Ni4xLTIxOC42LTE0My4xLTMyOC42LTExLjQtMjYuNy00OS40LTcwLTc1LjYtNjkuNyAwLTMuMS0uMy0xMC0uMy0xNC4ybDE2MS45IDAgMCAxMy45Yy0xOS4yIDEuMS01Mi44IDEzLjMtNDMuMyAzNC4yIDIxLjkgNDkuNyAxMDMuNiAyNDAuMyAxMjUuNiAyODguNiAxNS0yOS43IDU3LjgtMTA5LjIgNzUuMy0xNDIuOC0xMy45LTI4LjMtNTguNi0xMzMuOS03Mi44LTE2MC05LjctMTcuOC0zNi4xLTE5LjQtNTUuOC0xOS43bDAtMTMuOSAxNDIuNSAuMyAwIDEzLjFjLTE5LjQgLjYtMzguMSA3LjgtMjkuNCAyNi4xIDE4LjkgNDAgMzAuNiA2OC4xIDQ4LjEgMTA0LjcgNS42LTEwLjggMzQuNy02OS40IDQ4LjEtMTAwLjggOC45LTIwLjYtMy45LTI4LjYtMzguNi0yOS40IC4zLTMuNiAwLTEwLjMgLjMtMTMuNiA0NC40LS4zIDExMS4xLS4zIDEyMy4xLS42bDAgMTMuNkM0NjIuNCA2NCA0MzkuMSA3NiA0MjYuOCA5NC45TDM2Ny42IDIxNy43YzYuNCAxNi4xIDYzLjMgMTQyLjggNjkuMiAxNTYuN0w1NTkuMiA5MS44Yy04LjYtMjMuMS0zNi40LTI4LjEtNDcuMi0yOC4zbDAtMTMuOSAxMjcuOCAxLjEgLjIgLjV6Il19LGpzcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJzaXRyb3giLGljb246WzQ0OCw1MTIsW10sImU0NGEiLCJNMjEyLjQgMGwwIDAgMjM1LjYgMCAwIDEyOC0zODQgMEM2NCA1Ny42IDE0MS44IC41IDIxMi40IDB6bTI0LjggMTkybDAgMGM2OS45IC41IDE0Ni43IDU3LjYgMTQ2LjcgMTI4bC0xNzMuMiAwIDAgMEMxNDAuOSAzMTkuNiA2NCAyNjIuNCA2NCAxOTJsMTczLjMgMHptLTEuNyAzMjBjNzAuNy0uNSAxNDguNC01Ny42IDE0OC40LTEyOGwtMzg0IDAgMCAxMjggMjM1LjYgMCAwIDB6Il19LGRTZT17cHJlZml4OiJmYWIiLGljb25OYW1lOiJzcXVhcmUtZ2l0bGFiIixpY29uOls0NDgsNTEyLFsiZ2l0bGFiLXNxdWFyZSJdLCJlNWFlIiwiTTAgOTZMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzIwIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zMjBjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzJDMjguNyAzMiAwIDYwLjcgMCA5NnptMzM3LjUgMTIuNWw0NC42IDExNi40IC40IDEuMmM1LjYgMTYuOCA3LjIgMzUuMiAyLjMgNTIuNS01IDE3LjItMTUuNCAzMi40LTI5LjggNDMuM2wtLjIgLjEtNjguNCA1MS4yLTU0LjEgNDAuOWMtLjUgLjItMS4xIC41LTEuNyAuOC0yIDEtNC40IDItNi43IDItMyAwLTYuOC0xLjgtOC4zLTIuOGwtNTQuMi00MC45LTY3LjktNTAuOS0uNC0uMy0uMi0uMWMtMTQuMy0xMC44LTI0LjgtMjYtMjkuNy00My4zcy00LjItMzUuNyAyLjItNTIuNWwuNS0xLjIgNDQuNy0xMTYuNGMuOS0yLjMgMi41LTQuMyA0LjUtNS42IDEuNi0xIDMuNC0xLjYgNS4yLTEuOCAxLjMtLjcgMi4xLS40IDMuNCAuMSAuNiAuMiAxLjIgLjUgMiAuNyAxIC40IDEuNiAuOSAyLjQgMS41IC42IC40IDEuMiAxIDIuMSAxLjUgMS4yIDEuNCAyLjIgMyAyLjcgNC44bDI5LjIgOTIuMiAxMjIuOSAwIDMwLjItOTIuMmMuNS0xLjggMS40LTMuNCAyLjYtNC44czIuOC0yLjQgNC41LTMuMWMxLjctLjYgMy42LS45IDUuNC0uN3MzLjYgLjggNS4yIDEuOGMyIDEuMyAzLjcgMy4zIDQuNiA1LjZ6Il19LFZzcj1kU2UsVXNyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InNob2VsYWNlIixpY29uOls1MTIsNTEyLFtdLCJlNjBjIiwiTTQwNS4yIDMzMWMyLjItMS4xIDQuNC0yLjMgNi41LTMuN2w4LjMtNC44YzEuNS0xLjEgNC40LTMuNCA4LjctNi43bC41LS41YzMuNC0zLjQgNy4yLTUgMTEuMy00LjkgMS44IDAgMy45IC41IDYuNCAxLjVsMzEtMjcuNWMuOS0uNyAxLjctMS4zIDIuNi0xLjhsLjIgMGMzLjMtMS45IDYtMS44IDguMiAuNCAzLjkgMi4xIDQuMiA1LjYgLjkgMTAuNkw0NTcuMiAzMjJjLjIgLjUgLjQgMSAuNCAxLjUgLjUgMi4yIC4zIDQuNC0uNSA2LjYtLjcgMS41LTEuOCAyLjktMy4xIDQuMi0xLjQgMS40LTIuNyAyLjgtNC4yIDQuMkw0MzEgMzUyLjJjLTEuNyAxLjItMy40IDIuMy01LjEgMy4zLTIuMSAxLjMtNC4zIDIuNS02LjYgMy42LTEgLjQtMS45IC45LTIuOSAxLjMtNS45IDIuNS0xMS45IDQuMi0xOC4yIDUtMi45IDI0LjUtMTEuMyA0Ny4xLTI1LjEgNjcuOC0xNy41IDI1LjctNDEuNCA0NS40LTcxLjggNTguOC0zMC4yIDEzLjUtNjMgMjAuMi05OC4yIDIwLjItNDguNi0uNS04OC0xMS40LTExOC4yLTMyLjgtMzUuMS0yNS01Mi42LTU3LjktNTIuNi05OS4xbDAtNS42YzEuMi0yOC4xIDkuNS01NC42IDI0LjgtNzkuOCAxNS4xLTI0LjkgMzcuMS00MS43IDY2LjEtNTAuNSAxNC45LTQuNCAyOS45LTYuNiA0NS02LjYgMTUuNSAwIDMxLjYgMi45IDQ4LjEgOC42czM1LjIgMTUuNSA1NS45IDI5LjVsNTQuMSAzNi4zYzE1LjEgOS44IDI4LjggMTYuNSA0MS4yIDIwLTIuNi0yNS4xLTExLjctNDYuNi0yNy4zLTY0LjUtMTUuNy0xOC4xLTM1LjYtMzEuMy01OS45LTM5LjdMMjU3IDIyMGMtMjEuNC03LjUtMzcuMy0xNC45LTQ3LjctMjIuMi0yOC4yLTE5LjEtNDMuOC00NS4yLTQ3LTc4LjVsLS41LTkuOGMwLTMyLjEgMTMtNTguOSAzOS04MC41IDIzLTE5LjMgNTAuNi0yOSA4Mi41LTI5IDI0IDAgNDUuNiA2LjkgNjQuNyAyMC44IDE5LjIgMTQgMzAuMSAzMy44IDMyLjYgNTkuNGwuNSAxMGMwIDE4LjYtNC44IDM0LjUtMTQuNCA0Ny43LTkuOCAxMy4yLTE4LjUgMTkuOS0yNiAxOS45LTEuNi0uMS0zLjEtLjMtNC41LS42bC0zNCAzMmMtNS41IDMtOS4yIDIuNS0xMS4xLTEuNi0xLjktMi4yLTEuOC00LjkgLjUtOC4ybC4yLS4yYy41LS43IDEuMi0xLjUgMi0yLjRsMzEuNi0zMGMtLjQtMS41LS42LTMuMS0uNi00LjggMC00LjEgMS42LTcuNiA0LjktMTAuNCAxMy44LTEyLjQgMjAuOC0yNi43IDIwLjgtNDIuOCAwLTE2LTYuMS0yOS41LTE4LjItNDAuNHMtMjguNy0xNi41LTQ5LjctMTYuOGMtMjYuMiAwLTQ3LjggNy45LTY0LjcgMjMuN1MxOTIuNiA4OS45IDE5Mi42IDExMmMwIDE3LjggNi45IDMzLjkgMjAuNiA0OC4zIDEzLjYgMTQuMiAzNC42IDI1LjQgNjMgMzMuNSAzOS44IDExLjUgNzAuMiAzMSA5MS4zIDU4LjMgMTguNyAyNC4yIDI5LjEgNTEuMyAzMS4zIDgxLjQgMi4yLS43IDQuMy0xLjUgNi41LTIuNmwtLjEgLjF6TTI5NC40IDE3OC43YzAgMS4xIC42IDEuNiAxLjggMS42IC4xIDAgOS43LTguOSAyOC44LTI2LjYgMC0yLjQtNS4xIC45LTE1LjMgMTAtMTAuMiA5LjItMTUuMyAxNC4yLTE1LjMgMTQuOWwwIC4xem04IDYuNGMwLTEtLjUtMS41LTEuNS0xLjUtMS4xIDAtMi4xIC41LTIuOSAxLjYtMS45LS4xLTMuMyAuMS00LjIgLjctLjQgLjItLjUgLjUtLjUgLjcgMCAuNyAuNSAxLjMgMS41IDEuNmwzLjMgMGMyLjktMS4xIDQuNC0yLjIgNC40LTMuM2wtLjEgLjJ6TTMyNSAxNjUuMmMwLTIuOC0xLjYtMi44LTQuOSAwLTEuNiAxLjUtMy42IDMuNS02IDYuMi0uOCAuNi0yLjYgMi4yLTUuMyA0LjktMi44IDIuOS00LjIgNC43LTQuMiA1LjNsLjIgMS4zYy43IC4yIDEuMiAuNCAxLjUgLjQgLjEgMCAzLjMtMi45IDkuNS04LjdzOS4zLTguOSA5LjMtOS4zbC0uMS0uMXptMTU5LjcgMTIwbC0zMC42IDI3YzEuOCAxIDMuMiAyLjQgNCA0LjJsMzAuMi0yN2MuMi0xLjIgLjEtMi4yLS41LTIuOS0uNi0uNS0xLjYtLjktMy4xLTEuM3ptLTEuNi0uOWwtLjctLjctMjcgMjEuOSAxLjYgMiAyNi0yMy4xIC4xLS4xek0zNjYuOSAzNjMuOWMtOC0yLjEtMTUuNC00LjYtMjIuMi03LjUtMTUuMy02LjItMzQuMy0xNy01Ny0zMi40bC0zNy40LTI1LjNjLTE1LjgtMTAuMS0zMC4yLTE3LjYtNDMuMi0yMi42LTEzLjEtNC45LTI2LTcuMy0zOC42LTcuM2wtNS41IDBjLTMyLjIgMS43LTU3LjIgMTMuOC03NSAzNi4yLTE2LjYgMjAuOC0yNSA0NS4zLTI1IDczLjYgMCAzMS44IDEyLjggNTYuNyAzOC4yIDc0LjcgMjUuNCAxOC4xIDYwLjIgMjcuMSAxMDQuNCAyNy4xIDM0LjcgMCA2NC02LjIgODcuOC0xOC42IDIzLjctMTIuNCA0Mi4xLTI4LjggNTUuMi00OS4yIDkuOC0xNS41IDE1LjktMzEuOCAxOC4yLTQ4LjhsLjEgLjF6Il19LFdzcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJvcGVuc3RyZWV0bWFwIixpY29uOls1MTIsNTEyLFtdLCJlODZiIiwiTTYxIDQ5OC43Yy03LjEtMS44LTEwLjgtNC43LTI5LjYtMjMuNi0yMi41LTIyLjQtMjMuOS0yNC42LTIzLjktMzYuMyAwLTEzLTMuOS04LjQgNjcuOS04MC4zIDcyLjUtNzIuNyA2OC43LTY5LjUgODEuOS02OS41IDYuMSAwIDcuNiAuNCAxMi41IDIuOGw1LjYgMi44YzExLjctMTEuNyAyMy40LTIzLjQgMzUuMS0zNS4xbC00LjQtNi45Yy04LjYtMTMuMy0xNi42LTMyLjgtMjAuMy00OC45LTEwLjItNDUuNCAuOC05My4zIDI5LjgtMTI5LjcgNTAuMS02Mi44IDE0MC4xLTc2LjcgMjA2LjYtMzIgMzYuNSAyNC41IDYwLjMgNjIuNSA2NyAxMDcgMS40IDkuNCAxLjQgMzEuOCAwIDQxLjgtNC45IDM0LjYtMTkuNyA2NC00NC40IDg4LjctMTIuNyAxMi43LTIzIDIwLjEtMzkuMiAyOC4yLTE5LjMgOS43LTM1LjcgMTQuMy01OCAxNi4xLTMxLjcgMi42LTY2LjktNi4xLTkzLjgtMjMuNGwtNi45LTQuNGMtMTEuNyAxMS43LTIzLjQgMjMuNC0zNS4xIDM1LjFsMi44IDUuNmMyLjUgNC45IDIuOCA2LjQgMi44IDEyLjUgMCAxMy4xIDMuMSA5LjQtNjkgODEuNS01NS42IDU1LjUtNjQuMSA2My43LTY4LjQgNjUuNy01LjUgMi41LTEzLjkgMy40LTE5IDIuMXpNMzU5LjQgMjk2LjljNDAuMS03LjMgNzUuMS0zNCA5Mi43LTcwLjcgMjgtNTguNCA5LjItMTI3LTQ0LjgtMTYzLjMtMTIuOS04LjctMzAuOC0xNi00Ny43LTE5LjQtMTEuNy0yLjQtMzYuNC0yLjEtNDguNiAuNS0xOC4yIDMuOS0zNC45IDExLjEtNDkuNCAyMS40LTguOSA2LjQtMjMuNyAyMS4xLTI5LjkgMjkuOS0zNC42IDQ5LTMxLjUgMTE0LjEgNy43IDE1OS4zIDIwLjEgMjMuMiA0Ny44IDM4LjQgNzguNiA0MyAxMC4yIDEuNSAzMSAxLjIgNDEuNS0uOHptLTM1LjUtMTcuNGMtMTMuOC0yLjItMjUuNi01LjctMzUuMS0xMC41bC01LjQtMi43IDAtNDkuOS05LjUgMGMtOC4yIDAtMTkuNSAxLjYtMjcuNyA0LTEuMSAuMy0xLjUgMS42LTEuNyA0LjhsLS4zIDQuNC00LjEtNy44Yy05LTE3LjItMTIuMi0zMC43LTEyLjItNTEuNCAwLTE2IDEuMS0yMy40IDUuNi0zNi4zIDIuNC02LjggOC4yLTE4LjkgMTAuOC0yMi4zIDEuMS0xLjUgMS4yLTEuMSAxLjMgMy4zbDAgNWMxOC44LS4yIDM3LjYtLjMgNTYuNC0uNSAuMi00LjcgLjMtOS41IC41LTE0LjJsLTE5IDAgMC0zMSAzLjQtMS43YzUuNi0yLjggMTUuOS02LjcgMjEuNy04LjIgMy0uOCA2LjEtMS42IDYuOS0xLjggMS4yLS40IDEuMyAuMSAuNyAzLjMtMS4yIDYuMS0uOSAyMyAuNSAyOSAyLjggMTEuOSA5LjggMjAuNyAxOS4yIDI0LjMgNS42IDIuMSAxNi4zIDIuNiAyMi41IC45IDUuOS0xLjYgMTIuNS02LjQgMTUuOS0xMS41IDUtNy41IDYuNy0xNC4xIDcuMi0yNy4xbC40LTExLjQgNyAzLjZjOCA0LjIgMTcuOCAxMS4yIDI0LjkgMTggNC44IDQuNiA1IDQuOCA1IDkuMmwwIDQuNS0xOC45IDAgMCAxNC42IDM1IDBjMS4zIDIuNiAyLjUgNS4yIDMuOCA3LjdsLTkuNyAwYy02LjcgMC0xMi43IC42LTE5LjQgMS45bC05LjcgMS45IDAgNy4xYzAgMy45IC4yIDcuMSAuMyA3LjFzNC4xLS44IDguNy0xLjcgOC43LTEuNyA5LjEtMS43Yy40IDAgLjggMTEuMyAuOCAyNS44bDAgMjUuOGMtNi4yIC4yLTEyLjMgLjMtMTguNSAuNS0uMiA0LjctLjMgOS40LS41IDE0LjIgMTMuNSAuMiAyNyAuMyA0MC40IC41LTEgMi4zLTIgNC41LTMgNi44bC0xMC43IC4xYy05LjkgLjEtMTEuMSAuMi0xNS42IDIuNS0xMS44IDUuOC0xOC4xIDE4LjktMTguMyAzNy45bC0uMSA5LjMtNS44IDNjLTUgMi42LTIyLjYgOS0yNC45IDktLjUgMC0uOC0xMi0uOC0zMC42bDAtMzAuNi05LjQgMGMtNiAwLTEyLjQgLjYtMTcuOSAxLjctMTIuNiAyLjYtMTEuNSAxLjctMTEuNSA5LjUgMCA1IC4zIDYuOCAxLjEgNi44IC42IDAgNC42LS44IDguOC0xLjdzOC0xLjcgOC4zLTEuNyAuNiAxMSAuNiAyNC41bDAgMjQuNS03LjUtLjFjLTQuMS0uMS04LjUtLjMtOS43LS41em0tMzkuNC03MS42YzguOS0zLjkgMTUuNi0xMi45IDE4LjMtMjQuNCAxLjYtNi45IDEuNy0yMi42IDAtMzAuMi0yLjUtMTItOS42LTIxLjEtMTkuMy0yNC44LTYuOS0yLjYtMTguNC0yLjYtMjUuMyAwLTkuNyAzLjctMTYuNCAxMi44LTE5LjIgMjUuNi0xLjYgNy41LTEuNiAyMS40IDAgMjguOSAyLjYgMTIuNSAxMC41IDIyLjMgMjAuNiAyNS42IDcgMi4zIDE4LjkgMiAyNC45LS43em0tMTkuOS0xNC41Yy0zLjUtMy01LjItOC45LTUuOC0yMC42LS42LTEwLjUgLjYtMjEuMyAyLjktMjYgMi00LjMgNS44LTYuNCAxMC40LTYgNy40IC44IDEwLjMgNi41IDExLjEgMjIuNSAuOSAxNi43LTEuOSAyOC45LTcgMzEuMy0zLjkgMS44LTguNiAxLjMtMTEuNi0xLjJ6bTk0LjkgMTUuMWMxNS00LjYgMjIuOC0yMC4xIDIxLjktNDMuNS0uOC0xOS45LTcuOS0zMi4xLTIxLjUtMzcuMi01LjctMi4xLTE4LTEuOC0yNCAuNS05LjYgMy43LTE2LjQgMTIuNC0xOS4zIDI0LjctMiA4LjYtMS4zIDI4IDEuMyAzNS4yIDQgMTEuMyAxMS42IDE4LjcgMjEuNCAyMSA1LjggMS40IDE0LjQgMSAyMC4zLS44em0tMTYuNy0xNC4yYy01LTIuNy03LjMtMTMuMi02LjUtMzAuMSAuNi0xMi44IDEuNS0xNi43IDQuOC0yMC40IDQuNy01LjMgMTMuNi0zLjggMTYuNyAyLjggMy40IDcuMyA0IDMwLjEgMSA0MC4yLTEuNyA1LjctNS4yIDguOC0xMC4xIDguNy0yIDAtNC42LS42LTUuOC0xLjN6bS04NS4yIDUxLjVjLTcuMy03LjYtOS45LTExLjQtOC40LTExLjkgMi45LS45IDEzLjktMy4xIDE0LjItMi44IC4yIC4yIC4yIDQuOSAuMSAxMC40bC0uMiAxMC4xLTUuNi01Ljl6bTE1Ni40LTEuMmMuNy02IDMuMS0xMS41IDUuNy0xMy4yIDIuOS0xLjggNi40LTIuNiA4LTEuNyAxLjIgLjcgLjkgMS41LTIuNCA1LjktMi4xIDIuOC01LjYgNy03LjggOS40bC00IDQuMyAuNS00Ljd6TTQzOC40IDE2MWwuMS0zMi45IDIuNiA3LjdjNS4xIDE1LjMgNi45IDMxLjggNS4xIDQ2LjYtMS40IDExLjYtMS40IDExLjUtNC45IDExLjVsLTMgMCAuMS0zMi45ek0zNDQgMTA2LjJjLTIuNi0xLTUuMy00LjgtNi41LTktMS4yLTQtMS41LTI4LjUtLjQtMzMuNSAuNi0zIC45LTMuMiAzLjgtMy4yIDYuMiAwIDE4LjMgMiAxOC43IDMuMSAuMiAuNiAuNyA0LjkgMSA5LjUgLjcgOS43LS43IDIzLjItMi44IDI3LjYtMi40IDUuMS04LjUgNy41LTEzLjcgNS4zem0tOTQuMy0yLjRjLjQtLjggMy43LTQuNiA3LjMtOC40bDYuNS02LjljMCA1LjYgMCAxMS4yIC4xIDE2LjhsLTcuMyAwYy02LjcgMC03LjMtLjEtNi41LTEuNXptMzQuNCAzNDEuN2MtMjQtNi45LTQzLjktMTIuOS00NC4yLTEzLjEtLjUtLjYgMjQuMy04OC41IDI1LjMtODkuNiAuNS0uNSA4NS40IDIzLjMgODguOSAyNC45IDEuMiAuNi0uMSA1LjgtMTAuNiA0Mi40LTYuNiAyMy0xMi40IDQzLjItMTIuOCA0NXMtMS40IDMuMi0xLjkgMy4xLTIwLjctNS44LTQ0LjctMTIuN3pNMzQyLjggNDU2YzAtMS4xIDI0LjctODcuMyAyNS4xLTg3LjYgLjktLjcgODcuMS0yNC43IDg3LjQtMjQuNCAuNCAuNC0yNC4xIDg3LjMtMjQuNyA4Ny45LS40IC4zLTgzLjIgMjQtODUuOCAyNC41LTEuMSAuMi0xLjkgLjEtMS45LS40ek0xOTkuNiA0MTcuNWMxNy0xNy4xIDMyLjItMzIuNyAzMy43LTM0LjcgMy40LTQuNSA4LjItMTQuOCA5LjUtMjAuNSAuNS0yLjQgMS4xLTcuMSAxLjItMTAuNWwuMi02LjIgMy43LTFjMi0uNiAzLjgtLjkgNC0uNyAuNSAuNS0yNC4zIDg3LTI1LjEgODcuOC0uNCAuMy0xMy42IDQuMy0yOS40IDguOGwtMjguNyA4LjIgMzEtMzEuMXptMTY2LjktNjEuNmMtLjItLjMtLjctMi0xLjItMy43bC0uOS0zLjIgMy4yLS41YzI3LTQuNiA1NS45LTE3LjMgNzguNy0zNC41IDMuMy0yLjUgNS4xLTMuNCA1LjMtMi43IDEuMSAzLjMgNS41IDE5LjEgNS40IDE5LjMtLjcgLjctOTAuMiAyNS44LTkwLjUgMjUuNHpNNjIuOSAzMjkuOGMtMS0uOC0yMy44LTc3LjktMjUuNS04Ni40LS4zLTEuNyAzLS45IDQzLjggMTAuOCA0Mi43IDEyLjIgNDQuMiAxMi43IDQ0LjggMTQuOSAuNSAyIC4yIDIuNi0yLjUgNC41LTEuNyAxLjItMTUuNSAxNC42LTMwLjcgMjkuOHMtMjcuOCAyNy42LTI4IDI3LjYtMS4xLS41LTEuOC0xLjF6bTE2LjUtODguMmMtMjMuOS02LjktNDMuNS0xMi42LTQzLjYtMTIuNi0uMy0uMiAyNS4zLTg5LjMgMjUuOS04OS44IC40LS40IDg5LjEgMjQuNCA5MCAyNS4yIC4yIC4yLTUuNCAyMC41LTEyLjQgNDUuMS0xMS42IDQwLjctMTIuOSA0NC44LTE0LjUgNDQuNy0xIDAtMjEuMy01LjctNDUuMi0xMi42em01OS42IDEwLjhjLjItLjYgNC4zLTE0LjUgOC45LTMwLjlsOC41LTI5LjcgMS4xIDYuNWMxLjkgMTEuMiA1LjMgMjMuOSA5LjMgMzUuMSAyLjEgNS45IDMuOCAxMC45IDMuNiAxMXMtNi43IDItMTQuNSA0LjMtMTQuOSA0LjItMTUuOCA0LjVjLTEuMSAuMy0xLjUgLjEtMS4yLS43ek0xMDYgMTM5LjFjLTIzLjktNi45LTQzLjctMTIuOC00My45LTEzLjItLjgtMS4zLTI1LjEtODctMjQuNy04Ny40IC41LS41IDg2LjggMjQuMyA4Ny42IDI1LjEgLjkgMSAyNS44IDg4LjIgMjUuMSA4OC0uMyAwLTIwLjEtNS43LTQ0LTEyLjZ6bTQzLjItMzQuNUMxMzYuNSA2MCAxMzkgNjguOCAxMzcuMiA2Mi41bDM0LjEtOS43YzE4LjgtNS40IDM0LjctOS45IDM1LjQtMTAuMnMtMS42IDIuOC01LjIgNi44Yy0xOS4xIDIxLjMtMzEuNSA0NC0zOS40IDcxLjktMS41IDUuMi0yLjcgMTAuMy0yLjcgMTEuMyAwIDUuOS0yLjMtLjUtMTAuMi0yOHoiXX0sR3NyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InNlbGxjYXN0IixpY29uOls0NDgsNTEyLFtdLCJmMmRhIiwiTTM1My41IDMyTDk0LjggMzJDNDIuNyAzMiAuMSA3NC42IC4xIDEyNi42bDAgMjU4LjdDLjEgNDM3LjQgNDIuNyA0ODAgOTQuOCA0ODBsMjU4LjcgMGM1Mi4xIDAgOTQuNy00Mi42IDk0LjctOTQuNmwwLTI1OC44YzAtNTItNDIuNi05NC42LTk0LjctOTQuNnptLTUwIDMxNi40Yy0yNy45IDQ4LjItODkuOSA2NC45LTEzOC4yIDM3LjItMjIuOSAzOS44LTU0LjkgOC42LTQyLjMtMTMuMmwxNS43LTI3LjJjNS45LTEwLjMgMTkuMi0xMy45IDI5LjUtNy45IDE4LjYgMTAuOC0uMS0uMSAxOC41IDEwLjcgMjcuNiAxNS45IDYzLjQgNi4zIDc5LjQtMjEuMyAxNS45LTI3LjYgNi4zLTYzLjQtMjEuMy03OS40LTE3LjgtMTAuMi0uNi0uNC0xOC42LTEwLjYtMjQuNi0xNC4yLTMuNC01MS45IDIxLjYtMzcuNSAxOC42IDEwLjgtLjEtLjEgMTguNSAxMC43IDQ4LjQgMjggNjUuMSA5MC4zIDM3LjIgMTM4LjV6bTIxLjgtMjA4LjhjLTE3IDI5LjUtMTYuMyAyOC44LTE5IDMxLjUtNi41IDYuNS0xNi4zIDguNy0yNi41IDMuNi0xOC42LTEwLjggLjEgLjEtMTguNS0xMC43LTI3LjYtMTUuOS02My40LTYuMy03OS40IDIxLjNzLTYuMyA2My40IDIxLjMgNzkuNGMwIDAgMTguNSAxMC42IDE4LjYgMTAuNiAyNC42IDE0LjIgMy40IDUxLjktMjEuNiAzNy41LTE4LjYtMTAuOCAuMSAuMS0xOC41LTEwLjctNDguMi0yNy44LTY0LjktOTAuMS0zNy4xLTEzOC40IDI3LjktNDguMiA4OS45LTY0LjkgMTM4LjItMzcuMmw0LjgtOC40YzE0LjMtMjQuOSA1Mi0zLjMgMzcuNyAyMS41eiJdfSxZc3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToibWl4IixpY29uOls0NDgsNTEyLFtdLCJmM2NiIiwiTTAgNjRMMCA0MTIuOWMwIDU2LjIgODggNTguMSA4OCAwbDAtMjM4LjZjNy45LTUyLjkgODgtNTAuNCA4OCA2LjVsMCAxNzUuM2MwIDU3LjkgOTYgNTggOTYgMEwyNzIgMjQwYzUuMy01NC43IDg4LTUyLjUgODggNC4zbDAgMjMuOGMwIDU5LjkgODggNTYuNiA4OCAwTDQ0OCA2NCAwIDY0eiJdfSxac3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiY2MtYXBwbGUtcGF5IixpY29uOls1NzYsNTEyLFtdLCJmNDE2IiwiTTMwMi4yIDIxOC40YzAgMTcuMi0xMC41IDI3LjEtMjkgMjcuMWwtMjQuMyAwIDAtNTQuMiAyNC40IDBjMTguNCAwIDI4LjkgOS44IDI4LjkgMjcuMXpNMzQ5LjcgMjgxYzAgOC4zIDcuMiAxMy43IDE4LjUgMTMuNyAxNC40IDAgMjUuMi05LjEgMjUuMi0yMS45bDAtNy43LTIzLjUgMS41Yy0xMy4zIC45LTIwLjIgNS44LTIwLjIgMTQuNHpNNTc2IDc5bDAgMzUyYzAgMjYuNS0yMS41IDQ4LTQ4IDQ4TDQ4IDQ3OWMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhMMCA3OUMwIDUyLjUgMjEuNSAzMSA0OCAzMWw0ODAgMGMyNi41IDAgNDggMjEuNSA0OCA0OHpNMTI3LjggMTk3LjJjOC40IC43IDE2LjgtNC4yIDIyLjEtMTAuNCA1LjItNi40IDguNi0xNSA3LjctMjMuNy03LjQgLjMtMTYuNiA0LjktMjEuOSAxMS4zLTQuOCA1LjUtOC45IDE0LjQtNy45IDIyLjh6bTYwLjYgNzQuNWMtLjItLjItMTkuNi03LjYtMTkuOC0zMC0uMi0xOC43IDE1LjMtMjcuNyAxNi0yOC4yLTguOC0xMy0yMi40LTE0LjQtMjcuMS0xNC43LTEyLjItLjctMjIuNiA2LjktMjguNCA2LjktNS45IDAtMTQuNy02LjYtMjQuMy02LjQtMTIuNSAuMi0yNC4yIDcuMy0zMC41IDE4LjYtMTMuMSAyMi42LTMuNCA1NiA5LjMgNzQuNCA2LjIgOS4xIDEzLjcgMTkuMSAyMy41IDE4LjcgOS4zLS40IDEzLTYgMjQuMi02IDExLjMgMCAxNC41IDYgMjQuMyA1LjkgMTAuMi0uMiAxNi41LTkuMSAyMi44LTE4LjIgNi45LTEwLjQgOS44LTIwLjQgMTAtMjF6bTEzNS40LTUzLjRjMC0yNi42LTE4LjUtNDQuOC00NC45LTQ0LjhsLTUxLjIgMCAwIDEzNi40IDIxLjIgMCAwLTQ2LjYgMjkuMyAwYzI2LjggMCA0NS42LTE4LjQgNDUuNi00NXptOTAgMjMuN2MwLTE5LjctMTUuOC0zMi40LTQwLTMyLjQtMjIuNSAwLTM5LjEgMTIuOS0zOS43IDMwLjVsMTkuMSAwYzEuNi04LjQgOS40LTEzLjkgMjAtMTMuOSAxMyAwIDIwLjIgNiAyMC4yIDE3LjJsMCA3LjUtMjYuNCAxLjZjLTI0LjYgMS41LTM3LjkgMTEuNi0zNy45IDI5LjEgMCAxNy43IDEzLjcgMjkuNCAzMy40IDI5LjQgMTMuMyAwIDI1LjYtNi43IDMxLjItMTcuNGwuNCAwIDAgMTYuNCAxOS42IDAgMC02OCAuMSAwek01MTYgMjEwLjlsLTIxLjUgMC0yNC45IDgwLjYtLjQgMC0yNC45LTgwLjYtMjIuMyAwIDM1LjkgOTkuMy0xLjkgNmMtMy4yIDEwLjItOC41IDE0LjItMTcuOSAxNC4yLTEuNyAwLTQuOS0uMi02LjItLjNsMCAxNi40YzEuMiAuNCA2LjUgLjUgOC4xIC41IDIwLjcgMCAzMC40LTcuOSAzOC45LTMxLjhMNTE2IDIxMC45eiJdfSxYc3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic29sYW5hIixpY29uOls1MTIsNTEyLFtdLCJlODVlIiwiTTUxMC41IDM4NS4ybC04NC45IDg4LjdjLTEuOCAxLjktNC4xIDMuNS02LjYgNC41cy01LjIgMS42LTcuOSAxLjZMOC45IDQ4MGMtMS45IDAtMy44LS41LTUuNC0xLjZzLTIuOS0yLjUtMy42LTQuMi0xLTMuNi0uNy01LjUgMS4yLTMuNiAyLjUtNC45bDg0LjktODguN2MxLjgtMS45IDQuMS0zLjUgNi41LTQuNXM1LjEtMS42IDcuOC0xLjZsNDAyLjQgMGMxLjkgMCAzLjggLjUgNS40IDEuNnMyLjkgMi41IDMuNiA0LjIgMSAzLjYgLjcgNS41LTEuMiAzLjYtMi41IDQuOXpNNDI1LjcgMjA2LjZjLTEuOC0xLjktNC4xLTMuNS02LjYtNC41cy01LjItMS42LTcuOS0xLjZsLTQwMi40IDBjLTEuOSAwLTMuOCAuNS01LjQgMS42cy0yLjkgMi41LTMuNiA0LjItMSAzLjYtLjcgNS41IDEuMiAzLjYgMi41IDQuOWw4NC45IDg4LjdjMS44IDEuOSA0LjEgMy41IDYuNSA0LjVzNS4xIDEuNiA3LjggMS42bDQwMi40IDBjMS45IDAgMy44LS41IDUuNC0xLjZzMi45LTIuNSAzLjYtNC4yIDEtMy42IC43LTUuNS0xLjItMy42LTIuNS00LjlsLTg0LjktODguN3pNOC45IDE0Mi45bDQwMi40IDBjMi43IDAgNS40LS41IDcuOS0xLjZzNC43LTIuNiA2LjYtNC41bDg0LjktODguN2MxLjMtMS40IDIuMi0zLjEgMi41LTQuOXMuMS0zLjctLjctNS41LTItMy4yLTMuNi00LjItMy41LTEuNi01LjQtMS42TDEwMSAzMmMtMi43IDAtNS40IC41LTcuOCAxLjZzLTQuNyAyLjYtNi41IDQuNUwxLjcgMTI2LjhjLTEuMyAxLjQtMi4yIDMuMS0yLjUgNC45cy0uMSAzLjcgLjcgNS41IDIgMy4yIDMuNiA0LjIgMy41IDEuNiA1LjQgMS42eiJdfSxRc3I9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidHlwZXNjcmlwdCIsaWNvbjpbNDQ4LDUxMixbXSwiZTg0MCIsIk0xNi44IDMybDQxNC40IDBjOS4zIDAgMTYuOCA3LjUgMTYuOCAxNi44bDAgNDE0LjRjMCA5LjMtNy41IDE2LjgtMTYuOCAxNi44TDE2LjggNDgwQzcuNSA0ODAgMCA0NzIuNSAwIDQ2My4yTDAgNDguOEMwIDM5LjUgNy41IDMyIDE2LjggMzJ6TTI0OSAyNzAuM2wwLTM2LjctMTU5LjQgMCAwIDM2LjcgNTYuOSAwIDAgMTYzLjYgNDUuMyAwIDAtMTYzLjYgNTcuMiAwem0xOC4xIDE1OS4zYzcuMyAzLjcgMTUuOSA2LjUgMjUuOSA4LjRzMjAuNSAyLjggMzEuNSAyLjhjMTAuOCAwIDIxLTEgMzAuNy0zLjFzMTguMi01LjQgMjUuNS0xMC4xIDEzLjEtMTAuOSAxNy40LTE4LjQgNi40LTE3IDYuNC0yOC4yYzAtOC4xLTEuMi0xNS4yLTMuNy0yMS4zcy01LjktMTEuNS0xMC41LTE2LjMtMTAuMS05LTE2LjUtMTIuOC0xMy43LTcuMy0yMS43LTEwLjdjLTUuOS0yLjQtMTEuMi00LjgtMTUuOS03LjFzLTguNy00LjYtMTEuOS03LTUuOC00LjktNy42LTcuNS0yLjctNS43LTIuNy05YzAtMy4xIC44LTUuOCAyLjQtOC4zczMuOC00LjYgNi43LTYuNCA2LjUtMy4xIDEwLjctNC4xIDguOS0xLjUgMTQuMS0xLjVjMy43IDAgNy43IC4zIDExLjkgLjhzOC40IDEuNCAxMi42IDIuNiA4LjMgMi42IDEyLjMgNC40IDcuNyAzLjggMTEgNi4xbDAtNDEuOGMtNi44LTIuNi0xNC4zLTQuNS0yMi40LTUuOHMtMTcuNC0xLjktMjcuOS0xLjljLTEwLjcgMC0yMC44IDEuMS0zMC40IDMuNHMtMTggNS44LTI1LjIgMTAuNy0xMyAxMS0xNy4yIDE4LjUtNi4zIDE2LjUtNi4zIDI2LjljMCAxMy4zIDMuOSAyNC43IDExLjYgMzQuMXMxOS41IDE3LjQgMzUuMiAyMy45YzYuMiAyLjUgMTEuOSA1IDE3LjMgNy40czEwIDQuOSAxMy44IDcuNSA3IDUuNCA5LjIgOC41IDMuNCA2LjYgMy40IDEwLjVjMCAyLjktLjcgNS42LTIuMSA4cy0zLjUgNC42LTYuNCA2LjQtNi40IDMuMi0xMC43IDQuMy05LjMgMS41LTE1IDEuNWMtOS43IDAtMTkuNC0xLjctMjguOS01LjFzLTE4LjQtOC41LTI2LjYtMTUuM2wwIDQ0Ljd6Il19LEtzcj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJicmF2ZSIsaWNvbjpbNDQ4LDUxMixbXSwiZTYzYyIsIk0xNDUuNiAwbDE1NyAwIDQ0LjcgNTAuOHMzOS4zLTEwLjkgNTcuOCA3LjYgMzMuOCAzNC45IDMzLjggMzQuOWwtMTIgMjkuNSAxNS4zIDQzLjdzLTQ0LjkgMTcwLjItNTAuMSAxOTFjLTEwLjQgNDAuOS0xNy40IDU2LjgtNDYuOSA3Ny41cy04Mi45IDU2LjgtOTEuNiA2Mi4yYy0xLjkgMS4yLTMuOSAyLjUtNS45IDMuOS03LjUgNS4xLTE1LjggMTAuOC0yMy41IDEwLjhzLTE2LjEtNS43LTIzLjUtMTAuOGMtMi0xLjQtNC0yLjgtNS45LTMuOS04LjctNS41LTYyLjEtNDEuNS05MS42LTYyLjJzLTM2LjUtMzYuNi00Ni45LTc3LjVjLTUuMy0yMC44LTUwLjEtMTkxLTUwLjEtMTkxTDIxLjUgMTIyLjggOS4zIDkzLjNzMTUuMy0xNi40IDMzLjgtMzQuOSA1Ny44LTcuNiA1Ny44LTcuNkwxNDUuNiAwem03OC41IDQwNy42YzMuNyAwIDguOS00LjcgMTMtOC40IC42LS41IDEuMi0xLjEgMS43LTEuNSA0LjItMy43IDQ3LjgtMzcuNSA1MS0zOS44czUuNC02LjUgMS45LTguN2MtMi44LTEuNy0xMC01LjUtMjAuMy0xMC44LTMtMS42LTYuMy0zLjItOS43LTUtMTUuNC04LTM0LjUtMTQuNy0zNy41LTE0LjdzLTIyLjEgNi44LTM3LjUgMTQuN2MtMy41IDEuOC02LjcgMy41LTkuNyA1LTEwLjMgNS4zLTE3LjYgOS4xLTIwLjMgMTAuOC0zLjYgMi4yLTEuNCA2LjQgMS45IDguN3M0Ni44IDM2LjEgNTEgMzkuOGMuNSAuNSAxLjEgMSAxLjcgMS41IDQuMSAzLjcgOS4zIDguNCAxMyA4LjRsLS4yIDB6bTAtMTY1LjdjNC43IDAgMTcuNi0zIDI2LjQtNWwyLS41YzcuOC0xLjggNy4zLTYuMyA2LjQtMTMtLjEtLjgtLjItMS42LS4zLTIuNC0uNi02LjEtNS44LTMzLjEtOS4xLTUwLjMtMS4xLTUuOC0yLTEwLjUtMi40LTEyLjktMS41LTguMS0uNi05LjQgLjctMTEuMyAuMi0uMyAuNS0uNyAuNy0xLjEgMS40LTIuMyAxNi02LjIgMjcuOS05LjUgMi41LS43IDQuOC0xLjMgNi45LTEuOSAxMC42LTMgMzIuNC0uNiA0NC4yIC42IDEuOCAuMiAzLjQgLjQgNC43IC41IDkuNiAuOSAxMC40IDIuMyA3LjIgMy44LTIuMyAxLjEtMTYuMiA2LjMtMjguNyAxMC45LTQuNyAxLjgtOS4yIDMuNS0xMi44IDQuOC0xLjUgLjUtMyAxLjEtNC41IDEuNy0xMi41IDQuNi0yNy4yIDEwLTI4LjkgMTkuNC0xLjUgOC4zIDUuMiAxOS45IDExLjMgMzAuMyAxLjYgMi44IDMuMiA1LjUgNC42IDguMSA2LjMgMTEuOSA2LjUgMTMuMyA2LjEgMTguMS0uNCAzLjktMTQuNSAxMi43LTIyLjQgMTcuNi0xLjggMS4xLTMuMyAyLjEtNC4yIDIuNy0uOCAuNS0yLjEgMS40LTMuOCAyLjQtOC42IDUuMi0yNi4zIDE2LTI2LjMgMjIuNSAwIDcuOCAyNC42IDI4LjEgMzIuNCAzMy4yczI4LjkgMTYuMSAzNy45IDE3LjggMjMtOC41IDMxLjItMjMuOGM3LjctMTQuNCAxLjctMjguNS0zLjItNDBsLS45LTIuMmMtNC41LTEwLjYgMS45LTE3IDYuMi0yMS4zIC41LS41IDEtMSAxLjQtMS40bDQzLTQ1LjdjMS4zLTEuMyAyLjUtMi42IDMuNy0zLjggNS44LTUuNyAxMC44LTEwLjUgMTAuOC0yMi44IDAtMTQuOS01Ny41LTg0LjUtNTcuNS04NC41cy00OC41IDkuMy01NS4xIDkuM2MtNS4yIDAtMTUuMy0zLjUtMjUuOC03LjEtMi43LS45LTUuNC0xLjktOC0yLjctMTMtNC4zLTIxLjgtNC40LTIxLjgtNC40cy04LjcgMC0yMS44IDQuNGMtMi43IC45LTUuNCAxLjgtOCAyLjctMTAuNSAzLjYtMjAuNiA3LjEtMjUuOCA3LjEtNi41IDAtNTUuMS05LjMtNTUuMS05LjNzLTU3LjUgNjkuNi01Ny41IDg0LjVjMCAxMi4zIDQuOSAxNy4xIDEwLjggMjIuOCAxLjIgMS4yIDIuNSAyLjQgMy43IDMuOGw0My4xIDQ1LjhjLjQgLjUgLjkgLjkgMS40IDEuNCA0LjMgNC4zIDEwLjYgMTAuNyA2LjIgMjEuM2wtLjkgMi4yYy00LjkgMTEuNS0xMSAyNS42LTMuMiA0MCA4LjIgMTUuMyAyMi4yIDI1LjUgMzEuMiAyMy44czMwLjEtMTIuNyAzNy45LTE3LjggMzIuNC0yNS40IDMyLjQtMzMuMmMwLTYuNS0xNy43LTE3LjMtMjYuMy0yMi41LTEuNy0xLTMuMS0xLjktMy44LTIuNC0uOS0uNi0yLjQtMS41LTQuMi0yLjctNy45LTQuOS0yMi0xMy43LTIyLjQtMTcuNi0uNC00LjgtLjMtNi4yIDYuMS0xOC4xIDEuMy0yLjUgMi45LTUuMyA0LjYtOC4xIDYtMTAuNCAxMi44LTIyIDExLjMtMzAuMy0xLjctOS40LTE2LjQtMTQuOC0yOC45LTE5LjQtMS42LS42LTMuMS0xLjEtNC41LTEuNy0zLjYtMS40LTguMS0zLjEtMTIuOC00LjhsLS4xIDBjLTEyLjUtNC43LTI2LjQtOS45LTI4LjctMTAuOS0zLjItMS41LTIuMy0yLjggNy4yLTMuOCAxLjMtLjEgMi45LS4zIDQuNy0uNSAxMS44LTEuMyAzMy42LTMuNiA0NC4yLS42IDIuMSAuNiA0LjQgMS4yIDYuOSAxLjkgMTEuOSAzLjIgMjYuNSA3LjIgMjcuOSA5LjUgLjIgLjQgLjUgLjcgLjcgMS4xIDEuMyAxLjkgMi4yIDMuMiAuNyAxMS4zLS40IDIuNC0xLjMgNy4xLTIuNCAxMi45LTMuMyAxNy4yLTguNSA0NC4yLTkuMSA1MC4zLS4xIC44LS4yIDEuNy0uMyAyLjQtLjggNi43LTEuNCAxMS4yIDYuNCAxM2wyIC41YzguOCAyIDIxLjggNSAyNi40IDVsMC0uMXoiXX0sSnNyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImV0c3kiLGljb246WzM4NCw1MTIsW10sImYyZDciLCJNMzg0IDM0OGMtMS44IDEwLjctMTMuOCAxMTAtMTUuNSAxMzItMTE3LjktNC4zLTIxOS45LTQuNy0zNjguNSAwbDAtMjUuNWM0NS41LTguOSA2MC42LTggNjEtMzUuMiAxLjgtNzIuMyAzLjUtMjQ0LjEgMC0zMjItMS0yOC41LTEyLjEtMjYuOC02MS0zNkwwIDM1LjhjNzMuOSAyLjQgMjU1LjkgOC42IDM2My0zLjgtMy41IDM4LjItNy44IDEyNi41LTcuOCAxMjYuNWwtMjMuMiAwQzMyMC45IDExNS43IDMxMy4yIDY4IDI3Ny4zIDY4bC0xMzcgMGMtMTAuMiAwLTEwLjcgMy41LTEwLjcgOS44bDAgMTYzLjhjNTggLjUgODguNS0yLjUgODguNS0yLjUgMjkuOC0xIDI3LjYtOC41IDQwLjctNjUuM2wyNS44IDBjLTQuNCAxMDEuNC0zLjkgNjEuOC0xLjggMTYwLjNMMjU3IDMzNGMtOS4yLTQwLjEtOS4xLTYxLTM5LjUtNjEuNSAwIDAtMjEuNS0yLTg4LTJsMCAxMzljMCAyNiAxNC4zIDM4LjMgNDQuMyAzOC4zbDg5LjMgMGM2My42IDAgNjYuNi0yNSA5OC43LTk5LjhsMjIuMiAweiJdfSxlMnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiYnRjIixpY29uOlszODQsNTEyLFtdLCJmMTVhIiwiTTMxMC40IDI0Mi42YzI3LjctMTQuMiA0NS40LTM5LjQgNDEuMy04MS4zLTUuNC01Ny40LTUyLjUtNzYuNi0xMTQuOC04MS45bDAtNzkuNC00OC41IDAgMCA3Ny4yYy0xMi42IDAtMjUuNSAuMy0zOC40IC42bDAtNzcuOC00OC41IDAgMCA3OS40Yy0xNy44IC41LTM4LjYgLjMtOTcuNCAwbDAgNTEuN2MzOC4zLS43IDU4LjQtMy4xIDYzIDIxLjRsMCAyMTcuNGMtMi45IDE5LjUtMTguNSAxNi43LTUzLjMgMTYuMUw0IDQ0My43Yzg4LjUgMCA5Ny40IC4zIDk3LjQgLjNsMCA2OCA0OC41IDAgMC02Ny4xYzEzLjIgLjMgMjYuMiAuMyAzOC40IC4zbDAgNjYuNyA0OC41IDAgMC02OGM4MS4zLTQuNCAxMzUuNi0yNC45IDE0Mi45LTEwMS41IDUuNy02MS40LTIzLjMtODguOS02OS4zLTk5Ljl6TTE1MC44IDEzNC42YzI3LjQgMCAxMTMuMS04LjUgMTEzLjEgNDguNSAwIDU0LjUtODUuNyA0OC4yLTExMy4xIDQ4LjJsMC05Ni43em0wIDI1MS44bDAtMTA2LjVjMzIuOCAwIDEzMy4xLTkuMSAxMzMuMSA1My4zIDAgNjAuMi0xMDAuNCA1My4zLTEzMy4xIDUzLjN6Il19LHQycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJhZG4iLGljb246WzUxMiw1MTIsW10sImYxNzAiLCJNMjU2IDE2Ny41bDY0LjkgOTguOC0xMjkuOCAwIDY0LjktOTguOHpNOCAyNTZhMjQ4IDI0OCAwIDEgMSA0OTYgMCAyNDggMjQ4IDAgMSAxIC00OTYgMHptMzk2LjIgODIuN2wtMTQ4LjItMjIzLjItMTQ4LjIgMjIzLjIgMzAuNCAwIDMzLjYtNTEuNyAxNjguNiAwIDMzLjYgNTEuNyAzMC4yIDB6Il19LHIycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJzcXVhcmUteC10d2l0dGVyIixpY29uOls0NDgsNTEyLFtdLCJlNjFhIiwiTTY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzIwIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zMjBjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzJ6bTI5Ny4xIDg0bC0xMDMuOCAxMTguNiAxMjIuMSAxNjEuNC05NS42IDAtNzQuOC05Ny45LTg1LjcgOTcuOS00Ny41IDAgMTExLTEyNi45LTExNy4xLTE1My4xIDk4IDAgNjcuNyA4OS41IDc4LjItODkuNSA0Ny41IDB6TTMyMy4zIDM2Ny42bC0xNjkuOS0yMjQuNy0yOC4zIDAgMTcxLjggMjI0LjcgMjYuNCAweiJdfSxhMnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic3F1YXJlLWZvbnQtYXdlc29tZSIsaWNvbjpbNDQ4LDUxMixbXSwiZTVhZCIsIk02NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgNDE2YzAgMzUuMyAyOC43IDY0IDY0IDY0bDMyMCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMzIwYzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDMyem05MCAxMjJjMCA5LjMtNC44IDE3LjQtMTIuMSAyMmwxODguOSAwYzcuMyAwIDEzLjIgNS45IDEzLjIgMTMuMiAwIDEuOC0uNCAzLjctMS4xIDUuNEwzMTIgMjY0IDM0Mi45IDMzMy40Yy43IDEuNyAxLjEgMy41IDEuMSA1LjQgMCA3LjMtNS45IDEzLjItMTMuMiAxMy4ybC0xODYuOCAwIDAgMzItMzIgMCAwLTIwOS41Yy02LjEtNC44LTEwLTEyLjItMTAtMjAuNSAwLTE0LjQgMTEuNi0yNiAyNi0yNnMyNiAxMS42IDI2IDI2eiJdfSxpMnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZm9ydW1iZWUiLGljb246WzQ0OCw1MTIsW10sImYyMTEiLCJNNS44IDMwOS43QzIgMjkyLjcgMCAyNzUuNSAwIDI1OC4zIDAgMTM1IDk5LjggMzUgMjIzLjEgMzUgMjM5LjcgMzUgMjU2LjQgMzcgMjcyLjQgNDAuNSAxNDkgODcuNSA1MS45IDE4NiA1LjggMzA5Ljd6TTM5OC43IDEyMC41Yy0xMy43LTE3LjUtMjkuNy0zMi43LTQ3LjgtNDUuMy0xNDkuNiA0NC4zLTI2Ni4zIDE2Mi4xLTMwOS43IDMxMiAxMi41IDE4LjEgMjggMzUuNiA0NS4yIDQ5IDQzLjEtMTUxLjMgMTYxLjItMjcxLjcgMzEyLjMtMzE1Ljd6bTE1LjggMjUyLjdjMTUuMi0yNS4xIDI1LjQtNTMuNyAyOS41LTgyLjgtNzkuNCA0Mi45LTE0NSAxMTAuNi0xODcuNiAxOTAuMyAzMC00LjQgNTguOS0xNS4zIDg0LjYtMzEuMyAzNSAxMy4xIDcwLjkgMjQuMyAxMDcgMzMuNi05LjMtMzYuNS0yMC40LTc0LjUtMzMuNS0xMDkuOHptMjkuNy0xNDUuNWMtMi42LTE5LjUtNy45LTM4LjctMTUuOC01Ni44LTEzNy45IDQ1LjgtMjQ2LjQgMTU2LjYtMjkxLjMgMjk1LjEgMTguMSA3LjYgMzcgMTIuNSA1Ni42IDE1LjIgNDYuMy0xMTQuMSAxMzYuOC0yMDYuOCAyNTAuNS0yNTMuNXoiXX0sdVNlPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6IjQyLWdyb3VwIixpY29uOls2NDAsNTEyLFsiaW5ub3NvZnQiXSwiZTA4MCIsIk0zMjAgOTZsMCAzMjBjMjEgMCA0MS44LTQuMSA2MS4yLTEyLjJzMzctMTkuOCA1MS45LTM0LjcgMjYuNi0zMi41IDM0LjctNTEuOSAxMi4yLTQwLjIgMTIuMi02MS4yLTQuMS00MS44LTEyLjItNjEuMi0xOS44LTM3LjEtMzQuNy01MS45LTMyLjUtMjYuNi01MS45LTM0LjctNDAuMi0xMi4yLTYxLjItMTIuMnpNMCAyNTZMMTYwIDQxNiAzMjAgMjU2IDE2MCA5NiAwIDI1NnptNDgwIDBjMCAyMSA0LjEgNDEuOCAxMi4yIDYxLjJzMTkuOCAzNyAzNC43IDUxLjkgMzIuNSAyNi42IDUxLjkgMzQuNyA0MC4yIDEyLjIgNjEuMiAxMi4ybDAtMzIwYy00Mi40IDAtODMuMSAxNi45LTExMy4xIDQ2LjlTNDgwIDIxMy42IDQ4MCAyNTZ6Il19LG8ycj11U2UsbjJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InN0dW1ibGV1cG9uLWNpcmNsZSIsaWNvbjpbNTEyLDUxMixbXSwiZjFhMyIsIk0yNjQgOGEyNDggMjQ4IDAgMSAwIDAgNDk2IDI0OCAyNDggMCAxIDAgMC00OTZ6bTAgMTc3LjVjLTkuOCAwLTE3LjggOC0xNy44IDE3LjhsMCAxMDYuOWMwIDQwLjktMzMuOSA3My45LTc0LjkgNzMuOS00MS40IDAtNzQuOS0zMy41LTc0LjktNzQuOWwwLTQ2LjUgNTcuMyAwIDAgNDUuOGMwIDEwIDggMTcuOCAxNy44IDE3LjhzMTcuOC03LjkgMTcuOC0xNy44bDAtMTA4LjRjMC00MCAzNC4yLTcyLjEgNzQuNy03Mi4xIDQwLjcgMCA3NC43IDMyLjMgNzQuNyA3Mi42bDAgMjMuNy0zNC4xIDEwLjEtMjIuOS0xMC43IDAtMjAuNmMuMS05LjYtNy45LTE3LjYtMTcuNy0xNy42ek00MzEuNiAzMDkuMWMwIDQxLjQtMzMuNSA3NC45LTc0LjkgNzQuOS00MS4yIDAtNzQuOS0zMy4yLTc0LjktNzQuMmwwLTQ2LjggMjIuOSAxMC43IDM0LjEtMTAuMSAwIDQ3LjFjMCA5LjggOCAxNy42IDE3LjggMTcuNnMxNy44LTcuOSAxNy44LTE3LjZsMC00OCA1Ny4zIDBjLS4xIDQ1LjktLjEgNDYuNC0uMSA0Ni40eiJdfSxzMnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic3ltZm9ueSIsaWNvbjpbNTEyLDUxMixbXSwiZjgzZCIsIk0yNTYgOGEyNDggMjQ4IDAgMSAwIDAgNDk2IDI0OCAyNDggMCAxIDAgMC00OTZ6TTM4OS43IDE1MS41Yy0xMS41IC40LTE5LjQtNi40LTE5LjgtMTYuOS0uMy05LjIgNi43LTEzLjQgNi41LTE4LjktLjItNi41LTEwLjItNi44LTEyLjktNi43LTM5LjggMS4zLTQ4LjYgNTctNTguOSAxMTMuOCAyMS40IDMuMiAzNi42LS43IDQ1LjEtNi4yIDEyLTcuNy0zLjMtMTUuNy0xLjQtMjQuNiA0LTE4LjIgMzIuNi0xOSAzMiA1LjMtLjQgMTcuOS0yNS45IDQxLjgtNzcuNiAzNS43LTEwLjggNTkuNS0xOC40IDExNS01OC4yIDE2MS43LTI5IDM0LjUtNTguNCAzOS44LTcxLjYgNDAuMy0yNC42IC45LTQxLTEyLjMtNDEuNi0yOS44LS42LTE3IDE0LjQtMjYuMyAyNC4zLTI2LjYgMjEuOS0uOCAzMC4xIDI1LjcgMTQuOSAzNC0xMi4xIDkuNyAuMSAxMi42IDIuMSAxMi42IDEwLjQtLjQgMTcuMy01LjUgMjIuMi05IDI0LTIwIDMzLjItNTQuOSA0NS40LTExOC4zIDguMi00OS43IDE3LTc4IDE4LjItODItMTYuOS0xMi43LTI3LjEtMjguNi00OS44LTM0LjctMTUuNi00LjItMjUuMS0uNi0zMS44IDcuOC03LjkgMTAtNS4zIDIzIDIuNCAzMC43bDEyLjYgMTRjMTUuNSAxNy45IDI0IDMxLjkgMjAuOCA1MC42LTUuMSAyOS45LTQwLjcgNTIuOS04Mi45IDM5LjktMzYtMTEuMS00Mi43LTM2LjYtMzguNC01MC42IDcuNS0yNC4yIDQyLjQtMTEuNyAzNC42IDEzLjYtMi44IDguNi00LjkgOC43LTYuMyAxMy4xLTQuNiAxNC44IDQxLjggMjguNCA1MS0xLjQgNC41LTE0LjUtNS4zLTIxLjctMjIuMi0zOS45LTI4LjUtMzEuNy0xNi02NS41IDIuOS03OS43IDUyLjgtMzkuNCAxMDAuNSAxNy41IDExMC42IDI1LjggMzcuMi0xMDkgMTAwLjUtMTA1LjUgMTAyLjQtMTA1LjUgMjUuMi0uOCA0NC4yIDEwLjYgNDQuOCAyOC42IC4yIDcuNy00LjIgMjIuNi0xOS41IDIzLjF6Il19LGwycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJzYWxlc2ZvcmNlIixpY29uOls2NDAsNTEyLFtdLCJmODNiIiwiTTI0OS40IDI0NS42bC0yNi40IDBjLjctNS4yIDMuMy0xNC4xIDEzLjYtMTQuMSA2LjggMCAxMiAzLjggMTIuNyAxNC4xek0zODYgMjMxLjhjLS41IDAtMTQuMS0xLjgtMTQuMSAyMHMxMy42IDIwIDE0LjEgMjBjMTMgMCAxNC4xLTEzLjUgMTQuMS0yMCAwLTIxLjgtMTMuNy0yMC0xNC4xLTIwek0xNDIuOCAyNTUuNWMtMS4xIC45LTIgMi0yLjUgMy4ycy0uOCAyLjctLjcgNGMwIDQuOCAyLjEgNi4xIDMuMyA3IDQuNyAzLjcgMTUuMSAyLjEgMjAuOSAxbDAtMTYuOWMtNS4zLTEuMS0xNi43LTItMjAuOSAxLjZ6TTY0MC41IDIzMmMwIDg3LjYtODAgMTU0LjQtMTY1LjQgMTM2LjQtMTguNCAzMy03MC43IDcwLjgtMTMyLjIgNDEuNi00MS4yIDk2LTE3Ny45IDkyLjItMjEzLjgtNS4yLTExOS43IDIzLjktMTc4LjgtMTM4LjQtNzUuMy0xOTkuMy0zNC44LTc5LjQgMjIuNi0xNzMuNiAxMTQuMy0xNzMuNiAxOS4xIDAgMzcuOSA0LjQgNTUgMTIuOXMzMiAyMC43IDQzLjYgMzUuOGMyMC43LTIxLjQgNDkuNC0zNC44IDgxLjEtMzQuOCA0Mi4zIDAgNzkgMjMuNSA5OC44IDU4LjYgOTIuOC00MC43IDE5My44IDI4LjIgMTkzLjggMTI3LjV6TTEyMC45IDI2My44YzAtMTEuOC0xMS43LTE1LjItMTcuOS0xNy4yLTUuMy0yLjEtMTMuNC0zLjUtMTMuNC04LjkgMC05LjUgMTctNi43IDI1LjItMi4xIDAgMCAxLjIgLjcgMS42LS41IC4yLS43IDIuNC02LjYgMi42LTcuMyAuMS0uMyAuMS0uNi0uMS0uOHMtLjQtLjUtLjYtLjZjLTEyLjMtNy42LTQwLjctOC41LTQwLjcgMTIuNyAwIDEyLjUgMTEuNSAxNS40IDE3LjkgMTcuMiA0LjcgMS42IDEzLjIgMyAxMy4yIDguNyAwIDQtMy41IDcuMS05LjIgNy4xLTYuOSAwLTEzLjUtMi4yLTE5LTYuMy0uNS0uMi0xLjQtLjctMS42IC43bC0yLjQgNy41Yy0uNSAuOSAuMiAxLjIgLjIgMS40IDEuOCAxLjQgMTAuMyA2LjYgMjIuOCA2LjYgMTMuMiAwIDIxLjQtNy4xIDIxLjQtMTguMWwwIDB6bTMyLTQyLjZjLTEwLjEgMC0xOC43IDMuMi0yMS40IDUuMi0uMSAuMS0uMiAuMi0uMyAuM3MtLjEgLjItLjEgLjQgMCAuMyAwIC40IC4xIC4zIC4yIC40bDIuNiA3LjFjLjEgLjIgLjIgLjUgLjUgLjZzLjUgLjIgLjcgLjFjLjYgMCA2LjgtNCAxNi45LTQgNCAwIDcuMSAuNyA5LjIgMi40IDMuNiAyLjggMy4xIDguMyAzLjEgMTAuNi00LjgtLjMtMTkuMS0zLjQtMjkuNCAzLjgtMi4zIDEuNi00LjMgMy44LTUuNSA2LjNzLTEuOSA1LjQtMS44IDguMmMwIDUuOSAxLjUgMTAuNCA2LjYgMTQuNCAxMi4yIDguMiAzNi4zIDIgMzguMSAxLjQgMS42LS4zIDMuNS0uNyAzLjUtMS45bDAtMzMuOWMwLTQuNiAuMy0yMS42LTIyLjgtMjEuNmwwIC4xem00Ni42LTIxYzAtLjIgMC0uMy0uMS0uNXMtLjEtLjMtLjMtLjQtLjItLjItLjQtLjMtLjMtLjEtLjUtLjFsLTkuOCAwYy0uMiAwLS4zIDAtLjUgLjFzLS4zIC4xLS40IC4zLS4yIC4yLS4zIC40LS4xIC4zLS4xIC41bDAgNzljMCAuMiAwIC4zIC4xIC41cy4xIC4zIC4zIC40IC4yIC4yIC40IC4zIC4zIC4xIC41IC4xbDkuOSAwYy4yIDAgLjMgMCAuNS0uMXMuMy0uMSAuNC0uMyAuMi0uMiAuMy0uNCAuMS0uMyAuMS0uNWwtLjEtNzl6bTU1LjcgMjguOWMtMi4xLTIuMy02LjgtNy41LTE3LjYtNy41LTMuNSAwLTE0LjIgLjItMjAuNyA4LjktNi40IDcuNi02LjYgMTguMS02LjYgMjEuNCAwIDMuMSAuMiAxNC4zIDcuMSAyMS4yIDIuNiAyLjkgOS4xIDguMiAyMi44IDguMiAxMC44IDAgMTYuNS0yLjMgMTguNi0zLjggLjUtLjIgLjctLjcgLjItMS45bC0yLjMtNi44Yy0uMS0uMy0uMy0uNS0uNi0uNnMtLjUtLjItLjgtLjFjLTIuNiAuOS02LjMgMi44LTE1LjMgMi44LTE3LjQgMC0xNi44LTE0LjctMTYuOS0xNi43bDM3LjIgMGMuMyAwIC41LS4xIC43LS4zcy40LS40IC40LS43Yy0uMyAwIDIuMS0xNC43LTYuMS0yNC4ybDAgMHptMzYuNyA1Mi43YzEzLjIgMCAyMS40LTcuMSAyMS40LTE4LjEgMC0xMS44LTExLjctMTUuMi0xNy45LTE3LjItNC4xLTEuNy0xMy40LTMuNC0xMy40LTguOSAwLTMuOCAzLjMtNi40IDguNS02LjQgNS44IC4xIDExLjUgMS42IDE2LjcgNC4yIDAgMCAxLjIgLjcgMS42LS41IC4yLS43IDIuNC02LjYgMi42LTcuMyAuMS0uMyAuMS0uNi0uMS0uOHMtLjQtLjUtLjYtLjZjLTcuOS00LjktMTYuNy00LjktMjAuMi00LjktMTIgMC0yMC41IDcuMy0yMC41IDE3LjYgMCAxMi41IDExLjUgMTUuNCAxNy45IDE3LjIgNi4xIDIgMTMuMiAzLjMgMTMuMiA4LjcgMCA0LTMuNSA3LjEtOS4yIDcuMS02LjkgMC0xMy41LTIuMi0xOS02LjQtLjEtLjEtLjMtLjItLjUtLjJzLS40IDAtLjUgLjEtLjMgLjItLjQgLjMtLjIgLjMtLjIgLjVsLTIuMyA3LjVjLS41IC45IC4yIDEuMiAuMiAxLjQgMS43IDEuNCAxMC4zIDYuNiAyMi44IDYuNmwwIDB6TTM1Ny42IDIyNGMwLS43LS4yLTEuMi0xLjItMS4ybC0xMS44IDBjMC0uMSAuOS04LjkgNC41LTEyLjUgNC4yLTQuMiAxMS44LTEuNiAxMi0xLjYgMS4yIC41IDEuNCAwIDEuNi0uNWwyLjgtNy44Yy43LS45IDAtMS4yLS4yLTEuNC01LjEtMi0xNy40LTIuOS0yNC41IDQuMi01LjUgNS41LTcgMTMuOS04IDE5LjVsLTguNSAwYy0uMyAwLS42IC4yLS44IC40cy0uMyAuNS0uNCAuOGwtMS40IDcuOGMwIC43IC4yIDEuMiAxLjIgMS4ybDguMiAwYy04LjUgNDcuOS04LjcgNTAuMi0xMC4zIDU1LjUtMS4xIDMuNi0zLjMgNi45LTUuOSA3LjgtLjEgMC0zLjkgMS43LTkuNi0uMiAwIDAtLjktLjUtMS40IC43LS4yIC43LTIuNiA2LjgtMi44IDcuNXMwIDEuNCAuNSAxLjRjNS4xIDIgMTMgMS44IDE3LjkgMCA2LjMtMi4zIDkuNy03LjkgMTEuNS0xMi45IDIuOC03LjcgMi44LTkuOCAxMS44LTU5LjdsMTIuMiAwYy4zIDAgLjYtLjIgLjgtLjRzLjMtLjUgLjQtLjhsMS40LTcuOHpNNDExIDI0MGMtLjYtMS43LTUuMS0xOC4xLTI1LjItMTguMS0xNS4yIDAtMjMgMTAtMjUuMiAxOC4xLTEgMy0zLjIgMTQgMCAyMy41IC4xIC4zIDQuNCAxOC4xIDI1LjIgMTguMSAxNSAwIDIyLjktOS42IDI1LjItMTguMSAzLjItOS42IDEtMjAuNSAwLTIzLjV6bTQ1LjQtMTYuN2MtNS0xLjctMTYuNi0xLjktMjIuMSA1LjRsMC00LjVjMC0uMiAwLS4zLS4xLS41cy0uMS0uMy0uMy0uNC0uMi0uMi0uNC0uMy0uMy0uMS0uNS0uMWwtOS40IDBjLS4yIDAtLjMgMC0uNSAuMXMtLjMgLjEtLjQgLjMtLjIgLjItLjMgLjQtLjEgLjMtLjEgLjVsMCA1NS4zYzAgLjIgMCAuMyAuMSAuNXMuMSAuMyAuMyAuNCAuMiAuMiAuNCAuMyAuMyAuMSAuNSAuMWw5LjYgMGMuMiAwIC4zIDAgLjUtLjFzLjMtLjEgLjQtLjMgLjItLjIgLjMtLjQgLjEtLjMgLjEtLjVsMC0yNy44YzAtMi45IC4xLTExLjQgNC41LTE1LjEgNC45LTQuOSAxMi0zLjQgMTMuNC0zLjEgLjMgMCAuNi0uMSAuOC0uM3MuNC0uNCAuNi0uN2MxLjItMi42IDIuMi01LjMgMy4xLTggLjEtLjMgLjEtLjUgMC0uOHMtLjMtLjUtLjUtLjZsMCAwem00Ni44IDU0LjFsLTIuMS03LjNjLS41LTEuMi0xLjQtLjctMS40LS43LTQuMiAxLjgtMTAuMSAxLjktMTEuMyAxLjktNC42IDAtMTcuMi0xLjEtMTcuMi0xOS44IDAtNi4yIDEuOC0xOS44IDE2LjUtMTkuOCAzLjktLjEgNy44IC41IDExLjUgMS42IDAgMCAuOSAuNSAxLjItLjcgLjktMi42IDEuNi00LjUgMi42LTcuNSAuMi0uOS0uNS0xLjItLjctMS4yLTExLjYtMy45LTIyLjMtMi41LTI3LjggMC0xLjYgLjctMTYuMiA2LjUtMTYuMiAyNy41IDAgMi45LS42IDMwLjEgMjguOSAzMC4xIDUuMyAwIDEwLjYtMSAxNS41LTIuOCAuMi0uMiAuNC0uNCAuNS0uNnMuMS0uNSAwLS44bDAgMHptNTMuOS0zOS41Yy0uOC0zLTUuNC0xNi4yLTIyLjMtMTYuMi0xNiAwLTIzLjUgMTAuMS0yNS42IDE4LjYtMS4yIDMuOC0xLjcgNy44LTEuNyAxMS44IDAgMjUuOSAxOC44IDI5LjQgMjkuOSAyOS40IDEwLjggMCAxNi41LTIuMyAxOC42LTMuOCAuNS0uMiAuNy0uNyAuMi0xLjlsLTIuNC02LjhjLS4xLS4zLS4zLS41LS42LS42cy0uNi0uMi0uOC0uMWMtMi42IC45LTYuMyAyLjgtMTUuMyAyLjgtMTcuNCAwLTE2LjktMTQuNy0xNi45LTE2LjdsMzcuMiAwYy4zIDAgLjUtLjEgLjctLjNzLjQtLjQgLjQtLjdjLS4yIDAgLjktNy4xLTEuNC0xNS41bDAgMHptLTIzLjMtNi40Yy0xMC4zIDAtMTMgOS0xMy42IDE0LjFsMjYuNCAwYy0uOS0xMS45LTcuNi0xNC4xLTEyLjctMTQuMWwwIDB6Il19LGMycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJzb3VyY2V0cmVlIixpY29uOls0NDgsNTEyLFtdLCJmN2QzIiwiTTQyNy40IDIwM2MwLTExMi4xLTkwLjktMjAzLTIwMy0yMDMtMTEyLjEtLjItMjAzIDkwLjYtMjAzLjIgMjAyLjYtLjEgNDMgMTMuNSA4NC44IDM4LjcgMTE5LjZzNjAuOSA2MC42IDEwMS44IDczLjhsMCAxMDEuN2MwIDMuOCAxLjUgNy40IDQuMiAxMC4xczYuMyA0LjIgMTAuMSA0LjJsOTYuNCAwYzMuOCAwIDcuNC0xLjUgMTAuMS00LjJzNC4yLTYuMyA0LjItMTAuMWwwLTEwMS42YzQwLjgtMTMuMiA3Ni41LTM5IDEwMS43LTczLjdzMzguOS03Ni41IDM5LTExOS40em0tMjcxLjYgMGMwLTkwLjggMTM3LjMtOTAuOCAxMzcuMyAwLS4xIDg5LjktMTM3LjMgOTEtMTM3LjMgMHoiXX0sZDJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImxpbmtlZGluLWluIixpY29uOls0NDgsNTEyLFtdLCJmMGUxIiwiTTEwMC4zIDQ0OGwtOTIuOSAwIDAtMjk5LjEgOTIuOSAwIDAgMjk5LjF6TTUzLjggMTA4LjFDMjQuMSAxMDguMSAwIDgzLjUgMCA1My44IDAgMzkuNSA1LjcgMjUuOSAxNS44IDE1LjhzMjMuOC0xNS44IDM4LTE1LjggMjcuOSA1LjcgMzggMTUuOCAxNS44IDIzLjggMTUuOCAzOGMwIDI5LjctMjQuMSA1NC4zLTUzLjggNTQuM3pNNDQ3LjkgNDQ4bC05Mi43IDAgMC0xNDUuNmMwLTM0LjctLjctNzkuMi00OC4zLTc5LjItNDguMyAwLTU1LjcgMzcuNy01NS43IDc2LjdsMCAxNDguMS05Mi44IDAgMC0yOTkuMSA4OS4xIDAgMCA0MC44IDEuMyAwYzEyLjQtMjMuNSA0Mi43LTQ4LjMgODcuOS00OC4zIDk0IDAgMTExLjMgNjEuOSAxMTEuMyAxNDIuM2wwIDE2NC4zLS4xIDB6Il19LHUycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJodG1sNSIsaWNvbjpbMzg0LDUxMixbXSwiZjEzYiIsIk0wIDMyTDM0LjkgNDI3LjggMTkxLjUgNDgwIDM0OS4xIDQyNy44IDM4NCAzMiAwIDMyek0zMDguMiAxNTkuOWwtMTgzLjggMCA0LjEgNDkuNCAxNzUuNiAwLTEzLjYgMTQ4LjQtOTcuOSAyNyAwIC4zLTEuMSAwLTk4LjctMjcuMy02LTc1LjggNDcuNyAwIDMuNSAzOC4xIDUzLjUgMTQuNSA1My43LTE0LjUgNi02Mi4yLTE2Ni45IDAtMTIuOC0xNDUuNiAyNDEuMSAwLTQuNCA0Ny43eiJdfSxmMnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToicnVzdCIsaWNvbjpbNTEyLDUxMixbXSwiZTA3YSIsIk01MDguNSAyNDkuOGwtMjEuOC0xMy41Yy0uMi0yLS4zLTMuOS0uNS01LjlsMTguNy0xNy41Yy45LS45IDEuNi0xLjkgMi0zLjFzLjUtMi41IC4yLTMuNy0uOC0yLjQtMS42LTMuMy0xLjgtMS43LTMtMi4xbC0yNC05Yy0uNS0xLjktMS4xLTMuOC0xLjctNS42bDE1LTIwLjhjLjctMSAxLjItMi4yIDEuMy0zLjRzMC0yLjUtLjUtMy43LTEuMi0yLjItMi4yLTIuOS0yLjEtMS4zLTMuNC0xLjVsLTI1LjQtNC4yYy0uOS0xLjctMS44LTMuNC0yLjctNS4ybDEwLjctMjMuNGMuNS0xLjEgLjctMi40IC42LTMuNnMtLjUtMi40LTEuMi0zLjUtMS42LTEuOS0yLjgtMi41LTIuNC0uOC0zLjYtLjhsLTI1LjggLjljLTEuMi0xLjUtMi40LTIuOS0zLjYtNC40TDQzOSA4MS44Yy4zLTEuMiAuMy0yLjUtLjEtMy43cy0xLTIuMy0xLjktMy4yLTItMS41LTMuMi0xLjktMi41LS40LTMuNy0uMUw0MDUgNzguOWMtMS40LTEuMi0yLjktMi40LTQuNC0zLjZsLjktMjUuOGMuMS0xLjMtLjItMi41LS44LTMuNnMtMS40LTIuMS0yLjUtMi44LTIuMi0xLjEtMy41LTEuMi0yLjUgLjEtMy43IC42TDM2Ny43IDUzLjJjLTEuNy0uOS0zLjQtMS44LTUuMS0yLjdsLTQuMi0yNS40Yy0uMi0xLjItLjctMi40LTEuNS0zLjRzLTEuOC0xLjctMi45LTIuMi0yLjQtLjctMy43LS41LTIuNCAuNi0zLjQgMS4zTDMyNiAzNS4zYy0xLjktLjYtMy44LTEuMS01LjYtMS43bC05LTI0Yy0uNC0xLjItMS4yLTIuMi0yLjEtM3MtMi4xLTEuNC0zLjMtMS42LTIuNS0uMi0zLjcgLjItMi4zIDEuMS0zLjEgMkwyODEuNiAyNS45Yy0yLS4yLTMuOS0uNC01LjktLjVMMjYyLjMgMy41Yy0uNy0xLjEtMS42LTEuOS0yLjctMi42cy0yLjMtLjktMy42LS45LTIuNSAuMy0zLjYgLjktMiAxLjUtMi43IDIuNkwyMzYuMiAyNS4zYy0yIC4yLTMuOSAuMy01LjkgLjZMMjEyLjkgNy4xYy0uOS0uOS0xLjktMS42LTMuMS0ycy0yLjUtLjUtMy43LS4yLTIuNCAuOC0zLjMgMS42LTEuNyAxLjgtMi4xIDNsLTkgMjRjLTEuOSAuNi0zLjggMS4xLTUuNyAxLjdsLTIwLjgtMTVjLTEtLjctMi4yLTEuMi0zLjQtMS4zcy0yLjUgMC0zLjcgLjUtMi4yIDEuMi0yLjkgMi4yLTEuMyAyLjEtMS41IDMuNGwtNC4yIDI1LjRjLTEuNyAuOS0zLjQgMS44LTUuMiAyLjdMMTIwLjkgNDIuNmMtMS4xLS41LTIuNC0uNy0zLjctLjZzLTIuNSAuNS0zLjUgMS4yLTEuOSAxLjctMi41IDIuOC0uOCAyLjQtLjggMy42bC45IDI1LjhjLTEuNSAxLjItMyAyLjQtNC40IDMuNkw4MS44IDczYy0xLjItLjMtMi41LS4zLTMuNyAuMXMtMi4zIDEtMy4yIDEuOS0xLjUgMi0xLjkgMy4yLS40IDIuNS0uMSAzLjdMNzguOSAxMDdjLTEuMiAxLjQtMi40IDIuOS0zLjYgNC40bC0yNS44LS45Yy0xLjMgMC0yLjUgLjItMy42IC44cy0yLjEgMS40LTIuOCAyLjQtMS4xIDIuMi0xLjIgMy41IC4xIDIuNSAuNiAzLjZsMTAuNyAyMy40Yy0uOSAxLjctMS44IDMuNC0yLjcgNS4ybC0yNS40IDQuMWMtMS4yIC4yLTIuNCAuNy0zLjQgMS41cy0xLjcgMS44LTIuMiAyLjktLjcgMi40LS41IDMuNyAuNiAyLjQgMS4zIDMuNGwxNSAyMC44Yy0uNiAxLjktMS4xIDMuOC0xLjcgNS43bC0yNCA5Yy0xLjIgLjQtMi4yIDEuMi0zIDIuMXMtMS40IDIuMS0xLjYgMy4zLS4yIDIuNSAuMiAzLjcgMS4xIDIuMyAyIDMuMWwxOC43IDE3LjVjLS4yIDItLjQgMy45LS42IDUuOUwzLjUgMjQ5LjhjLTEuMSAuNy0xLjkgMS42LTIuNiAyLjdzLS45IDIuMy0uOSAzLjYgLjMgMi41IC45IDMuNiAxLjUgMiAyLjYgMi43bDIxLjggMTMuNWMuMiAyIC4zIDMuOSAuNiA1LjlMNy4xIDI5OS4xYy0uOSAuOS0xLjYgMS45LTIgMy4xcy0uNSAyLjUtLjIgMy43IC44IDIuNCAxLjYgMy4zIDEuOCAxLjcgMyAyLjFsMjQgOWMuNiAxLjkgMS4xIDMuOCAxLjcgNS42bC0xNSAyMC44Yy0uNyAxLTEuMiAyLjItMS4zIDMuNHMwIDIuNSAuNSAzLjcgMS4yIDIuMiAyLjIgMi45IDIuMSAxLjMgMy40IDEuNWwyNS40IDQuMmMuOSAxLjcgMS44IDMuNCAyLjcgNS4xTDQyLjYgMzkxLjFjLS41IDEuMS0uNyAyLjQtLjYgMy42cy41IDIuNSAxLjIgMy41Yy43IDEuMSAxLjYgMS45IDIuNyAyLjVzMi40IC44IDMuNiAuOGwyNS44LS45YzEuMiAxLjUgMi40IDIuOSAzLjYgNC40TDczIDQzMC4yYy0uMyAxLjItLjMgMi41IC4xIDMuN3MxIDIuMyAxLjkgMy4yIDIgMS41IDMuMiAxLjkgMi41IC40IDMuNyAuMWwyNS4yLTUuOWMxLjUgMS4yIDIuOSAyLjQgNC40IDMuNmwtLjkgMjUuOGMwIDEuMyAuMiAyLjUgLjggMy42czEuNCAyLjEgMi41IDIuOCAyLjIgMS4xIDMuNSAxLjIgMi41LS4xIDMuNi0uNmwyMy40LTEwLjdjMS43IC45IDMuNCAxLjggNS4xIDIuN2w0LjIgMjUuNGMuMiAxLjIgLjcgMi40IDEuNSAzLjRzMS44IDEuOCAyLjkgMi4yIDIuNCAuNyAzLjcgLjUgMi40LS42IDMuNC0xLjNsMjAuOC0xNWMxLjkgLjYgMy44IDEuMSA1LjYgMS43bDkgMjRjLjQgMS4yIDEuMiAyLjIgMi4xIDNzMi4xIDEuNCAzLjMgMS42IDIuNSAuMiAzLjctLjIgMi4zLTEuMSAzLjEtMmwxNy41LTE4LjdjMiAuMiAzLjkgLjQgNS45IC42bDEzLjUgMjEuOGMuNyAxLjEgMS42IDEuOSAyLjcgMi42czIuMyAuOSAzLjYgLjkgMi41LS4zIDMuNi0uOSAyLTEuNSAyLjctMi42bDEzLjUtMjEuOGMyLS4yIDMuOS0uMyA1LjktLjZsMTcuNSAxOC43Yy45IC45IDEuOSAxLjYgMy4xIDJzMi41IC41IDMuNyAuMiAyLjQtLjggMy4zLTEuNiAxLjctMS44IDIuMS0zbDktMjRjMS45LS42IDMuOC0xLjEgNS42LTEuN2wyMC44IDE1YzEgLjcgMi4yIDEuMiAzLjQgMS4zczIuNSAwIDMuNy0uNSAyLjItMS4yIDIuOS0yLjIgMS4zLTIuMSAxLjUtMy40bDQuMi0yNS40YzEuNy0uOSAzLjQtMS44IDUuMS0yLjdsMjMuNCAxMC43YzEuMSAuNSAyLjQgLjcgMy42IC42czIuNC0uNSAzLjUtMS4yIDEuOS0xLjYgMi41LTIuOCAuOC0yLjQgLjgtMy42bC0uOS0yNS44YzEuNS0xLjIgMi45LTIuNCA0LjQtMy42bDI1LjIgNS45YzEuMiAuMyAyLjUgLjMgMy43LS4xczIuMy0xIDMuMi0xLjkgMS41LTIgMS45LTMuMiAuNC0yLjUgLjEtMy43TDQzMy4xIDQwNWMxLjItMS40IDIuNC0yLjkgMy42LTQuNGwyNS44IC45YzEuMyAuMSAyLjUtLjIgMy42LS44czIuMS0xLjQgMi44LTIuNWMuNy0xIDEuMS0yLjIgMS4yLTMuNXMtLjEtMi41LS42LTMuNmwtMTAuNy0yMy40Yy45LTEuNyAxLjgtMy40IDIuNy01LjFsMjUuNC00LjJjMS4yLS4yIDIuNC0uNyAzLjQtMS41czEuOC0xLjggMi4yLTIuOSAuNy0yLjQgLjUtMy43LS42LTIuNC0xLjMtMy40bC0xNS0yMC44Yy42LTEuOSAxLjEtMy44IDEuNy01LjZsMjQtOWMxLjItLjQgMi4yLTEuMiAzLTIuMXMxLjQtMi4xIDEuNi0zLjMgLjItMi41LS4yLTMuNy0xLjEtMi4zLTItMy4xbC0xOC43LTE3LjVjLjItMS45IC40LTMuOSAuNi01LjlsMjEuOC0xMy41YzEuMS0uNyAxLjktMS42IDIuNi0yLjdzLjktMi4zIC45LTMuNi0uMy0yLjUtLjktMy42LTEuNS0yLTIuNi0yLjdsMCAwem0tMTUxIDEyOS4xYy0zLjYtLjgtNy40LS4xLTEwLjUgMS45cy01LjMgNS4yLTYgOC44bC03LjYgMzUuN2MtMjQuNiAxMS4xLTUxLjMgMTYuOC03OC4zIDE2LjdzLTUzLjYtNi4xLTc4LjEtMTcuNGwtNy42LTM1LjdjLS40LTEuOC0xLjEtMy41LTIuMS01cy0yLjQtMi44LTMuOS0zLjgtMy4yLTEuNy01LTItMy42LS4zLTUuNCAuMWwtMzEuNSA2LjhjLTUuOC02LTExLjMtMTIuNS0xNi4zLTE5LjJsMTUzLjIgMGMxLjcgMCAyLjktLjMgMi45LTEuOWwwLTU0LjJjMC0xLjYtMS4yLTEuOS0yLjktMS45bC00NC44IDAgMC0zNC40IDQ4LjUgMGM0LjQgMCAyMy43IDEuMyAyOS44IDI1LjkgMS45IDcuNSA2LjIgMzIuMSA5LjEgNDAgMi45IDguOCAxNC42IDI2LjUgMjcuMSAyNi41bDc5IDBjLTUuMyA3LjEtMTEuMSAxMy44LTE3LjMgMjAuMWwtMzIuMS02Ljl6bTI1LjggMzQuNWMwIDMtLjkgNi0yLjYgOC41cy00IDQuNS02LjggNS42LTUuOCAxLjUtOC44IC45LTUuNy0yLTcuOC00LjItMy42LTQuOC00LjItNy44LS4zLTYgLjgtOC44IDMuMS01LjIgNS42LTYuOSA1LjQtMi42IDguNS0yLjZsLjQgMGM0IC4xIDcuNyAxLjggMTAuNSA0LjZzNC4zIDYuNyA0LjMgMTAuNmwuMSAwem0tMjI1LjYtLjdjMCAzLS45IDYtMi42IDguNXMtNC4xIDQuNS02LjggNS42LTUuOCAxLjUtOC44IC45LTUuNy0yLTcuOC00LjItMy42LTQuOC00LjItNy44LS4zLTYgLjktOC44IDMuMS01LjIgNS42LTYuOCA1LjQtMi42IDguNS0yLjZsLjUgMGM0IC4xIDcuNyAxLjggMTAuNSA0LjZzNC4zIDYuNyA0LjMgMTAuNmwuMSAwek02OS42IDIzNC4ybDMyLjgtMTQuNmMxLjctLjcgMy4yLTEuOCA0LjQtMy4xczIuMi0yLjkgMi45LTQuNiAxLTMuNSAuOS01LjMtLjUtMy42LTEuMi01LjNsLTYuOC0xNS4yIDI2LjYgMCAwIDExOS43LTUzLjYgMGMtNi42LTIzLjItOC43LTQ3LjYtNi4xLTcxLjZ6TTU4LjMgMTk4LjFjMC0yIC40LTQgMS4yLTUuOHMxLjktMy41IDMuMy00LjkgMy4xLTIuNSA0LjktMy4zIDMuOC0xLjIgNS44LTEuMmwuNSAwYzMgLjEgNS45IDEgOC4zIDIuOHM0LjMgNC4xIDUuNCA2LjkgMS4zIDUuOCAuNyA4LjgtMi4xIDUuNi00LjMgNy43LTQuOSAzLjUtNy44IDQuMS02IC4yLTguNy0uOS01LjEtMy4xLTYuOC01LjYtMi41LTUuNC0yLjUtOC40bDAgMHptMTU1LjIgMjQuNWwwLTM1LjMgNjMuMyAwYzMuMyAwIDIzLjEgMy44IDIzLjEgMTguNiAwIDEyLjMtMTUuMiAxNi43LTI3LjcgMTYuN2wtNTguNyAwek0zOTkgMzA2LjdjLTkuOCAxLjEtMjAuNi00LjEtMjItMTAuMS01LjgtMzIuNS0xNS40LTM5LjQtMzAuNi01MS40IDE4LjktMTIgMzguNS0yOS42IDM4LjUtNTMuMyAwLTI1LjUtMTcuNS00MS42LTI5LjQtNDkuNS0xNi44LTExLTM1LjMtMTMuMi00MC4zLTEzLjJsLTE5OC45IDBjMjcuNS0zMC43IDY0LjQtNTEuNSAxMDQuOS01OS4ybDIzLjUgMjQuNmMxLjMgMS4zIDIuOCAyLjQgNC40IDMuMXMzLjUgMS4xIDUuMyAxLjIgMy42LS4zIDUuMy0uOSAzLjItMS43IDQuNi0yLjlsMjYuMy0yNWMyNi44IDUgNTIuMSAxNS44IDc0LjMgMzEuNnM0MC42IDM2LjIgNTQuMSA1OS45bC0xOCA0MC42Yy0xLjUgMy40LTEuNSA3LjItLjIgMTAuNnMzLjkgNi4yIDcuMyA3LjdsMzQuNiAxNS4zYzEuMSAxMC44IDEuMiAyMS43IC40IDMyLjVsLTE5LjMgMGMtMS45IDAtMi43IDEuMy0yLjcgMy4xbDAgOC44YzAgMjAuOC0xMS43IDI1LjMtMjIgMjYuNXpNMjQwIDYwLjJjMC00IDEuNi03LjkgNC41LTEwLjdzNi43LTQuNSAxMC43LTQuNWwuNCAwYzMgLjEgNS45IDEgOC40IDIuOHM0LjMgNC4xIDUuNCA2LjkgMS4zIDUuOCAuNyA4LjgtMi4xIDUuNi00LjMgNy43LTQuOSAzLjUtNy44IDQtNiAuMi04LjctLjktNS4xLTMuMS02LjgtNS42LTIuNS01LjQtMi41LTguNHpNNDM2LjggMjE0Yy0yIDAtNC0uNC01LjgtMS4ycy0zLjUtMS45LTQuOS0zLjMtMi41LTMuMS0zLjMtNC45LTEuMi0zLjgtMS4yLTUuOCAuNC00IDEuMi01LjggMS45LTMuNSAzLjMtNC45IDMuMS0yLjUgNC45LTMuMyAzLjgtMS4yIDUuOC0xLjJsLjQgMGM0IC4xIDcuOSAxLjcgMTAuNyA0LjZzNC40IDYuOCA0LjMgMTAuOC0xLjcgNy45LTQuNiAxMC43LTYuOCA0LjQtMTAuOCA0LjN6Il19LHAycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJob3JuYmlsbCIsaWNvbjpbNTEyLDUxMixbXSwiZjU5MiIsIk03Ni44IDM3MC4zYzEgNy44LS40IDE1LjgtNC4xIDIyLjhzLTkuNiAxMi42LTE2LjcgMTYuMS0xNS4xIDQuNy0yMi45IDMuMy0xNS01LjEtMjAuNi0xMC43LTkuMi0xMi45LTEwLjUtMjAuNyAwLTE1LjggMy42LTIyLjkgOS4zLTEyLjggMTYuMy0xNi41IDE1LTUgMjIuOS0zLjljLTc4LjMtMTExLjMgNTItMTkwLjUgNTItMTkwLjUtNS45IDQzLTguMiA5MS4yLTguMiA5MS4yLTY3LjMgNDEuNSAuOSA2NC4xIDM5LjggNzIuOSA5LjkgMjcgMjcuOCA1MC4yIDUxLjQgNjYuN3M1MS42IDI1LjMgODAuMyAyNS4zYzEuOSAwIDMuOC0uMiA1LjctLjNsLjEgMTguOWMtOTkuMiAxLjQtMTU4LjctMjkuMS0xODguOS01MS42em0xMDgtMzI3LjdjLjktNy4yLS4yLTE0LjYtMy40LTIxLjItMy02LjItNy42LTExLjUtMTMuNC0xNS4zcy0xMi41LTUuOS0xOS40LTYuMi0xMy44IDEuNC0xOS44IDQuNy0xMS4xIDguMy0xNC41IDE0LjMtNS4yIDEyLjgtNSAxOS43IDIuMiAxMy43IDUuOSAxOS41IDguOSAxMC42IDE1LjEgMTMuNiAxMy4xIDQuNCAyMCAzLjljLTIyLjYgMjkuOS01My44IDg5LjYtNTIuNCAxOTBsMjEuOC0uMmMwLS45LS4xLTEuOC0uMS0yLjcgMC0yOCA4LjQtNTUuMyAyNC4xLTc4LjVzMzcuOS00MS4yIDYzLjgtNTEuNmM4LTM3LjcgMzAuNy0xMTQuMyA3My44LTQ0LjMgMCAwIDQ4LjEgMi40IDkxLjIgOC4yIDAgMC03Ny44LTEyOC0xODcuNi01NC4xbDAgMHpNNDg5IDE3Ni44YzYuMy0zIDExLjctNy43IDE1LjUtMTMuNnM1LjktMTIuNyA2LjEtMTkuOC0xLjYtMTQtNS4yLTIwLTguNy0xMS0xNC45LTE0LjMtMTMuMi00LjgtMjAuMi00LjQtMTMuOCAyLjgtMTkuNSA2LjktMTAuMiA5LjYtMTMgMTYuMS0zLjcgMTMuNi0yLjcgMjAuNWMtMzEuNy0yMS45LTg5LjgtNDkuMS0xODMuNC00Ny43bC4xIDIyLjVjMi43LS4yIDUuNC0uNCA4LjEtLjQgMjguMSAwIDU1LjYgOC41IDc4LjkgMjQuM3M0MS4yIDM4LjMgNTEuNiA2NC41YzM5LjEgOSAxMDUuMSAzMS42IDM4LjUgNzIuNSAwIDAtMi4zIDQ4LjEtOC4yIDkxLjIgMCAwIDEzMy40LTgxLjIgNDktMTk0LjYgNi42IC42IDEzLjMtLjYgMTkuMy0zLjVsMCAwek0zNzQuNCA0MzYuMmMyMS40LTMyLjUgNDYuNC04OS43IDQ1LjEtMTc5LjdsLTE5LjUgLjFjLjEgMi4xIC4zIDQuMSAuMyA2LjIgMCAyOC42LTguOCA1Ni41LTI1LjEgODBzLTM5LjUgNDEuNC02Ni4zIDUxLjRjLTguOSAzOS0zMS40IDEwNi43LTcyLjggMzkuNSAwIDAtNDguMS0yLjMtOTEuMi04LjIgMCAwIDc5LjkgMTMxLjMgMTkxLjkgNTEgLjMgNC45IDEuNSA5LjYgMy42IDE0IDIuOSA2LjEgNy41IDExLjQgMTMuMSAxNS4xczEyLjIgNiAxOSA2LjQgMTMuNi0xLjEgMTkuNi00LjIgMTEuMS03LjggMTQuNy0xMy42IDUuNi0xMi40IDUuNy0xOS4yLTEuNS0xMy41LTQuOC0xOS40LTguMi0xMC45LTE0LjEtMTQuMy0xMi42LTUuMi0xOS40LTUuMWwwLS4xeiJdfSxoMnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToicGhwIixpY29uOls2NDAsNTEyLFtdLCJmNDU3IiwiTTMyMCAxMDQuNWMxNzEuNCAwIDMwMy4yIDcyLjIgMzAzLjIgMTUxLjVTNDkxLjMgNDA3LjUgMzIwIDQwNy41QzE0OC42IDQwNy41IDE2LjggMzM1LjMgMTYuOCAyNTZTMTQ4LjcgMTA0LjUgMzIwIDEwNC41em0wLTE2LjhDMTQzLjMgODcuNyAwIDE2MyAwIDI1NlMxNDMuMyA0MjQuMyAzMjAgNDI0LjMgNjQwIDM0OSA2NDAgMjU2IDQ5Ni43IDg3LjcgMzIwIDg3Ljd6TTIxOC4yIDI0Mi41Yy03LjkgNDAuNS0zNS44IDM2LjMtNzAuMSAzNi4zbDEzLjctNzAuNmMzOCAwIDYzLjgtNC4xIDU2LjQgMzQuM3pNOTcuNCAzNTAuM2wzNi43IDAgOC43LTQ0LjhjNDEuMSAwIDY2LjYgMyA5MC4yLTE5LjEgMjYuMS0yNCAzMi45LTY2LjcgMTQuMy04OC4xLTkuNy0xMS4yLTI1LjMtMTYuNy00Ni41LTE2LjdsLTcwLjcgMC0zMi43IDE2OC43ek0yODMuMSAxMzYuN2wzNi41IDAtOC43IDQ0LjhjMzEuNSAwIDYwLjctMi4zIDc0LjggMTAuNyAxNC44IDEzLjYgNy43IDMxLTguMyAxMTMuMWwtMzcgMGMxNS40LTc5LjQgMTguMy04NiAxMi43LTkyLTUuNC01LjgtMTcuNy00LjYtNDcuNC00LjZsLTE4LjggOTYuNi0zNi41IDAgMzIuNy0xNjguNnpNNTA1IDI0Mi41Yy04IDQxLjEtMzYuNyAzNi4zLTcwLjEgMzYuM2wxMy43LTcwLjZjMzguMiAwIDYzLjgtNC4xIDU2LjQgMzQuM3pNMzg0LjIgMzUwLjNsMzYuOCAwIDguNy00NC44YzQzLjIgMCA2Ny4xIDIuNSA5MC4yLTE5LjEgMjYuMS0yNCAzMi45LTY2LjcgMTQuMy04OC4xLTkuNy0xMS4yLTI1LjMtMTYuNy00Ni41LTE2LjdsLTcwLjcgMC0zMi44IDE2OC43eiJdfSxtMnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZGlzcXVzIixpY29uOls1NzYsNTEyLFtdLCJlN2Q1IiwiTTI5MC4yIDUxMmMtNjIuNiAwLTExOS45LTIyLjktMTY0LjItNjAuOEwxNyA0NjYuMSA1OS4xIDM2Mi4yYy0xNC43LTMyLjQtMjIuOS02OC4zLTIyLjktMTA2LjIgMC0xNDEuNCAxMTMuNy0yNTYgMjU0LTI1NiAxNDAuMyAwIDI1NCAxMTQuNiAyNTQgMjU2IDAgMTQxLjQtMTEzLjcgMjU2LTI1NCAyNTZ6TTQyOC45IDI1NS4zbDAtLjdDNDI4LjkgMTgwLjcgMzc2LjggMTI4IDI4NyAxMjhsLTk3IDAgMCAyNTYgOTUuNiAwYzkwLjUgMCAxNDMuNC01NC45IDE0My40LTEyOC43ek0yODggMzIxLjFsLTI4LjQgMCAwLTEzMC4yIDI4LjQgMGM0MS43IDAgNjkuMyAyMy44IDY5LjMgNjQuN2wwIC43YzAgNDEuMy0yNy43IDY0LjctNjkuMyA2NC43eiJdfSxnMnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiNTAwcHgiLGljb246WzM4NCw1MTIsW10sImYyNmUiLCJNNzEuOCAzNDQuM2MtNi41LTE0LjItNi45LTE4LjMgNy40LTIzLjEgMjUuNi04IDggOS4yIDQzLjIgNDkuMmwuMyAwIDAtOTMuOWMxLjItNTAuMiA0NC05Mi4yIDk3LjctOTIuMiA1My45IDAgOTcuNyA0My41IDk3LjcgOTYuOCAwIDYzLjQtNjAuOCAxMTMuMi0xMjguNSA5My4zLTEwLjUtNC4yLTIuMS0zMS43IDguNS0yOC42IDUzIDAgODkuNC0xMC4xIDg5LjQtNjQuNCAwLTYxLTc3LjEtODkuNi0xMTYuOS00NC42LTIzLjUgMjYuNC0xNy42IDQyLjEtMTcuNiAxNTcuNiA1MC43IDMxIDExOC4zIDIyIDE2MC40LTIwLjEgMjQuOC0yNC44IDM4LjUtNTggMzguNS05MyAwLTM1LjItMTMuOC02OC4yLTM4LjgtOTMuMy0yNC44LTI0LjgtNTcuOC0zOC41LTkzLjMtMzguNVMxNTEgMTYzLjMgMTI2LjMgMTg4Yy0uMyAuMy0xNiAxNi41LTIxLjIgMjMuOWwtLjUgLjZjLTMuMyA0LjctNi4zIDkuMS0yMC4xIDYuMS02LjktMS43LTE0LjMtNS44LTE0LjMtMTEuOEw3MC4yIDIwYzAtNSAzLjktMTAuNSAxMC41LTEwLjVMMzIyIDkuNWM4LjMgMCA4LjMgMTEuNiA4LjMgMTUuMSAwIDMuOSAwIDE1LjEtOC4zIDE1LjFsLTIyMy4yIDAgMCAxMzIuOSAuMyAwYzEwNC4yLTEwOS44IDI4Mi44LTM2IDI4Mi44IDEwOC45IDAgMTc4LjEtMjQ0LjggMjIwLjMtMzEwLjEgNjIuOHpNMTM1LjEgODMuNWMtLjUgNC4yIDQuNiAyNC41IDE0LjYgMjAuNiAxMjQuOC00Ny41IDIwMi44IDQwLjQgMjA5LjQgNDAuNCA0LjggMCAyMi44LTE1LjMgMTQuMy0yMi44LTkzLjItODktMjM0LjUtNTctMjM4LjMtMzguMnpNMzYxLjUgNDE0LjdjLTExMCAxMDkuOS0yOTkgNjAuOC0zMzItMTA0LjIgMC0xMi4yLTMwLjQtNy40LTI4LjkgMy4zIDI0IDE3My40IDI0NiAyNTYuOSAzODEuNiAxMjEuMyA2LjktNy44LTEyLjYtMjguNC0yMC43LTIwLjR6TTE4Mi4xIDMwNi42YzAgNCA0LjMgNy4zIDUuNSA4LjUgMyAzIDYuMSA0LjQgOC41IDQuNCAzLjggMCAyLjYgLjIgMjIuMy0xOS41IDE5LjYgMTkuMyAxOS4xIDE5LjUgMjIuMyAxOS41IDUuNCAwIDE4LjUtMTAuNCAxMC43LTE4LjJsLTE3LjMtMTcuMyAxOC4yLTE4LjJjNi4zLTYuOC0xMC4xLTIxLjgtMTYuMi0xNS43TDIxOC4yIDI2OGMtMTguNi0xOC44LTE4LjQtMTkuNS0yMS41LTE5LjUtNSAwLTE4IDExLjctMTIuNCAxNy4zTDIwMi41IDI4NGMtMTguMSAxNy45LTIwLjQgMTkuMi0yMC40IDIyLjZ6Il19LHgycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJhZmZpbGlhdGV0aGVtZSIsaWNvbjpbNTEyLDUxMixbXSwiZjM2YiIsIk0xNTkuNyAyMzcuNEMxMDguNCAzMDguMyA0My4xIDM0OC4yIDE0IDMyNi42LTE1LjIgMzA0LjkgMi44IDIzMCA1NC4yIDE1OS4xIDEwNS41IDg4LjIgMTcwLjggNDguMyAxOTkuOSA2OS45czExLjEgOTYuNi00MC4yIDE2Ny41em0zNTEuMi01Ny4zYy03My44IDEyMy40LTE5MS45IDE4Ny43LTI2NC41IDE0My42LTI1LTE1LjItNDEuMy00MS4yLTQ5LTczLjgtMzMuNiA2NC44LTkyLjggMTEzLjgtMTY0LjEgMTMzLjIgNDkuOCA1OS4zIDEyNC4xIDk2LjkgMjA3IDk2LjkgMTUwIDAgMjcxLjYtMTIzLjEgMjcxLjYtMjc0LjkgLjEtOC41LS4zLTE2LjgtMS0yNXoiXX0sYjJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InJlZC1yaXZlciIsaWNvbjpbNDQ4LDUxMixbXSwiZjNlMyIsIk0zNTMuMiAzMkw5NC44IDMyQzQyLjQgMzIgMCA3NC40IDAgMTI2LjhMMCAzODUuMkMwIDQzNy42IDQyLjQgNDgwIDk0LjggNDgwbDI1OC40IDBjNTIuNCAwIDk0LjgtNDIuNCA5NC44LTk0LjhsMC0yNTguNEM0NDggNzQuNCA0MDUuNiAzMiAzNTMuMiAzMnpNMTQ0LjkgMjAwLjlsMCA1Ni4zYzAgMjctMjEuOSA0OC45LTQ4LjkgNDguOWwwLTE1NC4yYzAtMTMuMiAxMC43LTIzLjkgMjMuOS0yMy45bDE1NC4yIDBjMCAyNy0yMS45IDQ4LjktNDguOSA0OC45bC01Ni4zIDBjLTEyLjMtLjYtMjQuNiAxMS42LTI0IDI0em0xNzYuMyA3MmwtNTYuMyAwYy0xMi4zLS42LTI0LjYgMTEuNi0yNCAyNGwwIDU2LjNjMCAyNy0yMS45IDQ4LjktNDguOSA0OC45bDAtMTU0LjJjMC0xMy4yIDEwLjctMjMuOSAyMy45LTIzLjlsMTU0LjIgMGMwIDI3LTIxLjkgNDguOS00OC45IDQ4Ljl6Il19LFZzZT17cHJlZml4OiJmYWIiLGljb25OYW1lOiJ0d2l0dGVyIixpY29uOls1MTIsNTEyLFtdLCJmMDk5IiwiTTQ1OS40IDE1MS43Yy4zIDQuNSAuMyA5LjEgLjMgMTMuNiAwIDEzOC43LTEwNS42IDI5OC42LTI5OC42IDI5OC42LTU5LjUgMC0xMTQuNy0xNy4yLTE2MS4xLTQ3LjEgOC40IDEgMTYuNiAxLjMgMjUuMyAxLjMgNDkuMSAwIDk0LjItMTYuNiAxMzAuMy00NC44LTQ2LjEtMS04NC44LTMxLjItOTguMS03Mi44IDYuNSAxIDEzIDEuNiAxOS44IDEuNiA5LjQgMCAxOC44LTEuMyAyNy42LTMuNi00OC4xLTkuNy04NC4xLTUyLTg0LjEtMTAzbDAtMS4zYzE0IDcuOCAzMC4yIDEyLjcgNDcuNCAxMy4zLTI4LjMtMTguOC00Ni44LTUxLTQ2LjgtODcuNCAwLTE5LjUgNS4yLTM3LjQgMTQuMy01MyA1MS43IDYzLjcgMTI5LjMgMTA1LjMgMjE2LjQgMTA5LjgtMS42LTcuOC0yLjYtMTUuOS0yLjYtMjQgMC01Ny44IDQ2LjgtMTA0LjkgMTA0LjktMTA0LjkgMzAuMiAwIDU3LjUgMTIuNyA3Ni43IDMzLjEgMjMuNy00LjUgNDYuNS0xMy4zIDY2LjYtMjUuMy03LjggMjQuNC0yNC40IDQ0LjgtNDYuMSA1Ny44IDIxLjEtMi4zIDQxLjYtOC4xIDYwLjQtMTYuMi0xNC4zIDIwLjgtMzIuMiAzOS4zLTUyLjYgNTQuM3oiXX0sdjJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImZvcnQtYXdlc29tZSIsaWNvbjpbNTEyLDUxMixbXSwiZjI4NiIsIk00ODkuNSAyODcuOWwtMjcuNCAwYy0yLjYgMC00LjYgMi00LjYgNC42bDAgMzItMzYuNiAwIDAtMTc4LjNjMC0yLjYtMi00LjYtNC42LTQuNmwtMjcuNCAwYy0yLjYgMC00LjYgMi00LjYgNC42bDAgMzItMzYuNiAwIDAtMzJjMC0yLjYtMi00LjYtNC42LTQuNmwtMjcuNCAwYy0yLjYgMC00LjYgMi00LjYgNC42bDAgMzItMzYuNiAwIDAtMzJjMC02LTgtNC42LTExLjctNC42bDAtMzhjOC4zLTIgMTcuMS0zLjQgMjUuNy0zLjQgMTAuOSAwIDIwLjkgNC4zIDMxLjQgNC4zIDQuNiAwIDI3LjctMS4xIDI3LjctOGwwLTYwYzAtMi42LTItNC42LTQuNi00LjYtNS4xIDAtMTUuMSA0LjMtMjQgNC4zLTkuNyAwLTIwLjktNC4zLTMyLjYtNC4zLTggMC0xNiAxLjEtMjMuNyAyLjlsMC00LjljNS40LTIuNiA5LjEtOC4zIDkuMS0xNC4zIDAtMjAuNy0zMS40LTIwLjgtMzEuNCAwIDAgNiAzLjcgMTEuNyA5LjEgMTQuM2wwIDExMS43Yy0zLjcgMC0xMS43LTEuNC0xMS43IDQuNmwwIDMyLTM2LjYgMCAwLTMyYzAtMi42LTItNC42LTQuNi00LjZsLTI3LjQgMGMtMi42IDAtNC42IDItNC42IDQuNmwwIDMyLTM2LjMgMCAwLTMyYzAtMi42LTItNC42LTQuNi00LjZsLTI3LjQgMGMtMi42IDAtNC42IDItNC42IDQuNmwwIDE3OC4zLTM2LjYgMCAwLTMyYzAtMi42LTItNC42LTQuNi00LjZsLTI3LjQgMGMtMi42IDAtNC42IDItNC42IDQuNmwwIDIxOS41IDE4Mi45IDAgMC05NmMwLTcyLjYgMTA5LjctNzIuNiAxMDkuNyAwbDAgOTYgMTgyLjkgMCAwLTIxOS41Yy4xLTIuNi0xLjktNC42LTQuNS00LjZ6bS0yODguMS00LjVjMCAyLjYtMiA0LjYtNC42IDQuNmwtMjcuNCAwYy0yLjYgMC00LjYtMi00LjYtNC42bDAtNjRjMC0yLjYgMi00LjYgNC42LTQuNmwyNy40IDBjMi42IDAgNC42IDIgNC42IDQuNmwwIDY0em0xNDYuNCAwYzAgMi42LTIgNC42LTQuNiA0LjZsLTI3LjQgMGMtMi42IDAtNC42LTItNC42LTQuNmwwLTY0YzAtMi42IDItNC42IDQuNi00LjZsMjcuNCAwYzIuNiAwIDQuNiAyIDQuNiA0LjZsMCA2NHoiXX0seTJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Im1peGVyIixpY29uOls0NDgsNTEyLFtdLCJlMDU2IiwiTTgyLjYgNzYuMWMtMy44LTUuMS04LjctOS40LTE0LjItMTIuNXMtMTEuNy01LjEtMTguMS01LjctMTIuOCAuMS0xOC44IDIuMi0xMS42IDUuMy0xNi4zIDkuNmMtMTcuNiAxNi4yLTE5IDQzLjUtNC44IDYyLjhsOTEuOCAxMjMtOTIuMyAxMjQuMWMtMTQuMiAxOS4zLTEzLjEgNDYuNiA0LjcgNjIuOCA0LjcgNC4zIDEwLjMgNy42IDE2LjMgOS42czEyLjUgMi44IDE4LjggMi4yIDEyLjUtMi41IDE4LjEtNS43IDEwLjQtNy40IDE0LjItMTIuNUwyMTAuOSAyNjIuN2MxLjUtMi4xIDIuMy00LjYgMi4zLTcuMXMtLjgtNS0yLjMtNy4xTDgyLjYgNzYuMXpNNDM4LjIgMzc5LjZsLTkyLjMtMTI0LjEgOTEuOC0xMjNjMTQuMi0xOS4yIDEyLjgtNDYuNi00LjctNjIuOC00LjctNC4zLTEwLjMtNy42LTE2LjMtOS42cy0xMi41LTIuOC0xOC44LTIuMi0xMi41IDIuNS0xOC4xIDUuNy0xMC40IDcuNC0xNC4yIDEyLjVsLTEyOCAxNzIuMWMtMS41IDIuMS0yLjMgNC42LTIuMyA3LjFzLjggNSAyLjMgNy4xTDM2NiA0MzUuOWMzLjggNS4xIDguNyA5LjQgMTQuMiAxMi41czExLjcgNS4xIDE4LjEgNS43IDEyLjgtLjEgMTguOC0yLjIgMTEuNi01LjMgMTYuMy05LjZjMTcuOC0xNi4yIDE5LTQzLjUgNC43LTYyLjh6Il19LHcycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJseWZ0IixpY29uOls1MTIsNTEyLFtdLCJmM2MzIiwiTTAgODEuMWw3Ny44IDAgMCAyMDguN2MwIDMzLjEgMTUgNTIuOCAyNy4yIDYxLTEyLjcgMTEuMS01MS4yIDIwLjktODAuMi0yLjgtMTctMTQtMjQuOC0zNy4zLTI0LjgtNTlMMCA4MS4xek00ODUuOSAyNTQuNmwwLTIyIDIzLjggMCAwLTc2LjgtMjYuMSAwYy0xMC4xLTQ2LjMtNTEuMi04MC43LTEwMC4zLTgwLjctNTYuNiAwLTEwMi43IDQ2LTEwMi43IDEwMi43bDAgMTc5LjJjMTYgMi4zIDM1LjQtLjMgNTEuNy0xNCAxNy4xLTE0IDI0LjgtMzcuMiAyNC44LTU5bDAtNi43IDM4LjggMCAwLTc2LjgtMzguOCAwIDAtMjMuM2MwLTM0LjYgNTIuMi0zNC42IDUyLjIgMGwwIDc3LjFjMCA1Ni42IDQ2IDEwMi43IDEwMi43IDEwMi43bDAtNzYuNWMtMTQuNSAwLTI2LjEtMTEuNy0yNi4xLTI1Ljl6bS0yOTQuMy05OWwwIDExM2MwIDE1LjQtMjMuOCAxNS40LTIzLjggMGwwLTExMy03Ni44IDAgMCAxMzIuN2MwIDIzLjggOCA1NCA0NSA2My45IDM3IDkuOCA1OC4yLTEwLjYgNTguMi0xMC42LTIuMSAxMy40LTE0LjUgMjMuMy0zNC45IDI1LjMtMTUuNSAxLjYtMzUuMi0zLjYtNDUtNy44bDAgNzAuM2MyNS4xIDcuNSA1MS41IDkuOCA3Ny42IDQuNyA0Ny4xLTkuMSA3Ni44LTQ4LjQgNzYuOC0xMDAuOGwwLTE3OC4yLTc3LjEgMCAwIC41eiJdfSxNMnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiYXBwbGUtcGF5IixpY29uOls2NDAsNTEyLFtdLCJmNDE1IiwiTTExNi45IDE1OC41Yy03LjUgOC45LTE5LjUgMTUuOS0zMS41IDE0LjktMS41LTEyIDQuNC0yNC44IDExLjMtMzIuNiA3LjUtOS4xIDIwLjYtMTUuNiAzMS4zLTE2LjEgMS4yIDEyLjQtMy43IDI0LjctMTEuMSAzMy44em0xMC45IDE3LjJjLTE3LjQtMS0zMi4zIDkuOS00MC41IDkuOS04LjQgMC0yMS05LjQtMzQuOC05LjEtMTcuOSAuMy0zNC41IDEwLjQtNDMuNiAyNi41LTE4LjggMzIuMy00LjkgODAgMTMuMyAxMDYuMyA4LjkgMTMgMTkuNSAyNy4zIDMzLjUgMjYuOCAxMy4zLS41IDE4LjUtOC42IDM0LjUtOC42IDE2LjEgMCAyMC44IDguNiAzNC44IDguNCAxNC41LS4zIDIzLjYtMTMgMzIuNS0yNiAxMC4xLTE0LjggMTQuMy0yOS4xIDE0LjUtMjkuOS0uMy0uMy0yOC0xMC45LTI4LjMtNDIuOS0uMy0yNi44IDIxLjktMzkuNSAyMi45LTQwLjMtMTIuNS0xOC42LTMyLTIwLjYtMzguOC0yMS4xem0xMDAuNC0zNi4ybDAgMTk0LjkgMzAuMyAwIDAtNjYuNiA0MS45IDBjMzguMyAwIDY1LjEtMjYuMyA2NS4xLTY0LjNzLTI2LjQtNjQtNjQuMS02NGwtNzMuMiAwek0yNTguNSAxNjVsMzQuOSAwYzI2LjMgMCA0MS4zIDE0IDQxLjMgMzguNnMtMTUgMzguOC00MS40IDM4LjhsLTM0LjggMCAwLTc3LjR6TTQyMC43IDMzNS45YzE5IDAgMzYuNi05LjYgNDQuNi0yNC45bC42IDAgMCAyMy40IDI4IDAgMC05N2MwLTI4LjEtMjIuNS00Ni4zLTU3LjEtNDYuMy0zMi4xIDAtNTUuOSAxOC40LTU2LjggNDMuNmwyNy4zIDBjMi4zLTEyIDEzLjQtMTkuOSAyOC42LTE5LjkgMTguNSAwIDI4LjkgOC42IDI4LjkgMjQuNWwwIDEwLjgtMzcuOCAyLjNjLTM1LjEgMi4xLTU0LjEgMTYuNS01NC4xIDQxLjUgLjEgMjUuMiAxOS43IDQyIDQ3LjggNDJ6bTguMi0yMy4xYy0xNi4xIDAtMjYuNC03LjgtMjYuNC0xOS42IDAtMTIuMyA5LjktMTkuNCAyOC44LTIwLjVsMzMuNi0yLjEgMCAxMWMwIDE4LjItMTUuNSAzMS4yLTM2IDMxLjJ6bTEwMi41IDc0LjZjMjkuNSAwIDQzLjQtMTEuMyA1NS41LTQ1LjRsNTMuMS0xNDktMzAuOCAwLTM1LjYgMTE1LjEtLjYgMC0zNS42LTExNS4xLTMxLjYgMCA1MS4yIDE0MS45LTIuOCA4LjZjLTQuNiAxNC42LTEyLjEgMjAuMy0yNS41IDIwLjMtMi40IDAtNy0uMy04LjktLjVsMCAyMy40YzEuOCAuNCA5LjMgLjcgMTEuNiAuN3oiXX0sazJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImFydHN0YXRpb24iLGljb246WzUxMiw1MTIsW10sImY3N2EiLCJNMi4xIDM3Ny40bDQzIDc0LjNjNC4zIDguNSAxMC44IDE1LjcgMTguOSAyMC43czE3LjQgNy42IDI3IDcuNmwyODUuNCAwLTU5LjItMTAyLjYtMzE1LjEgMHpNNTAxLjkgMzUwTDMzNS43IDU5LjNjLTQuNC04LjItMTAuOS0xNS4xLTE4LjktMjBTMjk5LjcgMzIgMjkwLjQgMzJsLTg4LjQgMCAyNTcuMyA0NDcuNiA0MC43LTcwLjVjMS45LTMuMiAyMS0yOS43IDItNTkuMXpNMjc1LjIgMzA0LjVsLTExNS41LTIwMC0xMTUuNSAyMDAgMjMxIDB6Il19LFMycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJub2RlLWpzIixpY29uOls0NDgsNTEyLFtdLCJmM2QzIiwiTTIyNC41IDUwOGMtNi43IDAtMTMuNS0xLjgtMTkuNC01LjJsLTYxLjctMzYuNWMtOS4yLTUuMi00LjctNy0xLjctOCAxMi4zLTQuMyAxNC44LTUuMiAyNy45LTEyLjcgMS40LS44IDMuMi0uNSA0LjYgLjRsNDcuNCAyOC4xYzEuNyAxIDQuMSAxIDUuNyAwTDQxMiAzNjcuNWMxLjctMSAyLjgtMyAyLjgtNWwwLTIxMy4yYzAtMi4xLTEuMS00LTIuOS01LjFMMjI3LjMgMzcuN2MtMS43LTEtNC0xLTUuNyAwTDM3LjEgMTQ0LjNjLTEuOCAxLTIuOSAzLTIuOSA1LjFsMCAyMTMuMWMwIDIgMS4xIDQgMi45IDQuOWw1MC42IDI5LjJjMjcuNSAxMy43IDQ0LjMtMi40IDQ0LjMtMTguN2wwLTIxMC40YzAtMyAyLjQtNS4zIDUuNC01LjNsMjMuNCAwYzIuOSAwIDUuNCAyLjMgNS40IDUuM2wwIDIxMC41YzAgMzYuNi0yMCA1Ny42LTU0LjcgNTcuNi0xMC43IDAtMTkuMSAwLTQyLjUtMTEuNkwyMC42IDM5Ni4xYy0xMi02LjktMTkuNC0xOS44LTE5LjQtMzMuN2wwLTIxMy4xYzAtMTMuOCA3LjQtMjYuOCAxOS40LTMzLjdMMjA1LjEgOWMxMS43LTYuNiAyNy4yLTYuNiAzOC44IDBMNDI4LjYgMTE1LjdjMTIgNi45IDE5LjQgMTkuOCAxOS40IDMzLjdsMCAyMTMuMWMwIDEzLjgtNy40IDI2LjctMTkuNCAzMy43TDI0My45IDUwMi44Yy01LjkgMy40LTEyLjYgNS4yLTE5LjQgNS4yek0zNzMuNiAyOTcuOWMwLTM5LjktMjctNTAuNS04My43LTU4LTU3LjQtNy42LTYzLjItMTEuNS02My4yLTI0LjkgMC0xMS4xIDQuOS0yNS45IDQ3LjQtMjUuOSAzNy45IDAgNTEuOSA4LjIgNTcuNyAzMy44IC41IDIuNCAyLjcgNC4yIDUuMiA0LjJsMjQgMGMxLjUgMCAyLjktLjYgMy45LTEuN3MxLjUtMi42IDEuNC00LjFjLTMuNy00NC4xLTMzLTY0LjYtOTIuMi02NC42LTUyLjcgMC04NC4xIDIyLjItODQuMSA1OS41IDAgNDAuNCAzMS4zIDUxLjYgODEuOCA1Ni42IDYwLjUgNS45IDY1LjIgMTQuOCA2NS4yIDI2LjcgMCAyMC42LTE2LjYgMjkuNC01NS41IDI5LjQtNDguOSAwLTU5LjYtMTIuMy02My4yLTM2LjYtLjQtMi42LTIuNi00LjUtNS4zLTQuNWwtMjMuOSAwYy0zIDAtNS4zIDIuNC01LjMgNS4zIDAgMzEuMSAxNi45IDY4LjIgOTcuOCA2OC4yIDU4LjQtLjEgOTItMjMuMiA5Mi02My40eiJdfSx6MnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidW5jaGFydGVkIixpY29uOls0NDgsNTEyLFtdLCJlMDg0IiwiTTE3MS44IDIzMi44YzEuMSAwIDIuMS0uMyAzLS45czEuNi0xLjQgMi0yLjRjMi4yLTkuOCA3LjQtMTguNiAxNC45LTI1LjMgMS4yLS44IDEuNy0yLjUgMS43LTQuMS0uMS0uNy0uMy0xLjMtLjYtMS45cy0uOS0xLjEtMS40LTEuNEw3NC41IDEyOC41IDE0OS4xIDg1YzEuNS0uOCAyLjctMiAzLjYtMy41czEuNC0zLjEgMS40LTQuOGMwLTEuNy0uNC0zLjQtMS4zLTQuOXMtMi4yLTIuNy0zLjctMy40TDEyNi43IDU1LjZjLTEuNS0uOC0zLjEtMS4yLTQuOC0xLjJzLTMuMyAuNC00LjggMS4yTDE3IDExMy42Yy0xLjUgLjgtMi43IDItMy42IDMuNXMtMS40IDMuMS0xLjQgNC44TDEyIDIzN2MwIDEuNyAuNCAzLjQgMS4zIDQuOXMyLjIgMi43IDMuNyAzLjRsMjIuNCAxMi44YzEuNSAuOSAzLjIgMS4zIDUgMS4yIDIuNCAuMSA0LjgtLjggNi42LTIuNSAxLjgtMS45IDIuOC00LjQgMi45LTdsMC04NS4zIDExNS45IDY3LjljLjYgLjMgMS40IC40IDIuMSAuNHpNMzIzLjQgMzc3LjdjLTEuNyAuMS0zLjQgLjUtNSAxLjJsLTc0LjUgNDMuMSAwLTEzNC4yYzAtMi45LTIuOS01LjgtNi4yLTQuNi05LjQgMi44LTE5LjUgMy0yOSAuNC0uNy0uMi0xLjUtLjItMi4yLS4xcy0xLjQgLjQtMiAuOS0xLjEgMS0xLjQgMS43LS41IDEuNC0uNSAyLjFsMCAxMzMuMy03NC41LTQzLjFjLTEuNS0uOS0zLjItMS4zLTUtMS4yLTIuNSAwLTQuOSAxLTYuNyAyLjhzLTIuOCA0LjItMi44IDYuN2wwIDI2LjFjMCAxLjcgLjQgMy40IDEuMyA0LjlzMi4yIDIuNyAzLjcgMy40bDEwMC4yIDU3LjZjMS41IC45IDMuMiAxLjMgNSAxLjIgMS43IDAgMy40LS40IDUtMS4ybDEwMC4yLTU3LjZjMS41LS44IDIuNy0yIDMuNi0zLjVzMS40LTMuMSAxLjQtNC44bDAtMjYuMWMtLjgtNC42LTUuNC05LjEtMTAuNC05LjF6TTI4Ni4xIDc4YTIzIDIzIDAgMSAwIDAtNDYgMjMgMjMgMCAxIDAgMCA0NnptNjMuNi0xMC4xYTIzIDIzIDAgMSAwIDAgNDYgMjMgMjMgMCAxIDAgMC00NnptNjMuMiA4My43YTIzIDIzIDAgMSAwIDAtNDYgMjMgMjMgMCAxIDAgMCA0NnptLTYzLjItOS4yYTIzIDIzIDAgMSAwIDAgNDYgMjMgMjMgMCAxIDAgMC00NnptLTYzLjYgODMuMmM0LjUgMCA5LTEuMyAxMi44LTMuOXM2LjctNi4xIDguNS0xMC4zIDIuMi04LjggMS4zLTEzLjMtMy4xLTguNi02LjMtMTEuOC03LjMtNS40LTExLjgtNi4zLTkuMS0uNC0xMy4zIDEuMy03LjggNC43LTEwLjMgOC41LTMuOSA4LjItMy45IDEyLjhjMCAzIC42IDYgMS44IDguOHMyLjkgNS4zIDUgNy41IDQuNyAzLjggNy41IDUgNS44IDEuOCA4LjggMS44bDAgMHpNMjI0IDI2MmM0LjUgMCA5LTEuNCAxMi44LTMuOXM2LjctNi4xIDguNS0xMC4zIDIuMi04LjggMS4zLTEzLjMtMy4xLTguNi02LjMtMTEuOC03LjMtNS40LTExLjgtNi4zLTkuMS0uNC0xMy4zIDEuMy03LjggNC43LTEwLjMgOC41LTMuOSA4LjItMy45IDEyLjhjMCAzIC42IDYgMS43IDguOHMyLjggNS4zIDUgNy41IDQuNyAzLjggNy41IDUgNS44IDEuOCA4LjggMS44bDAgMHptMTg4LjktODIuNGMtNC42IDAtOSAxLjMtMTIuOCAzLjlzLTYuNyA2LjEtOC41IDEwLjMtMi4yIDguOC0xLjMgMTMuMyAzLjEgOC42IDYuMyAxMS44IDcuMyA1LjQgMTEuOCA2LjMgOS4xIC40IDEzLjMtMS4zIDcuOC00LjcgMTAuMy04LjUgMy45LTguMiAzLjktMTIuOGMwLTYuMS0yLjQtMTEuOS02LjctMTYuM3MtMTAuMi02LjctMTYuMy02LjdsMCAwem0wIDcyLjNjLTQuNiAwLTkgMS4zLTEyLjggMy45cy02LjcgNi4xLTguNSAxMC4zLTIuMiA4LjgtMS4zIDEzLjMgMy4xIDguNiA2LjMgMTEuOCA3LjMgNS40IDExLjggNi4zIDkuMSAuNCAxMy4zLTEuMyA3LjgtNC43IDEwLjMtOC41IDMuOS04LjIgMy45LTEyLjhjMC02LjEtMi40LTExLjktNi43LTE2LjNzLTEwLjItNi43LTE2LjMtNi43bDAgMHoiXX0sQzJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InBsYXlzdGF0aW9uIixpY29uOls1NzYsNTEyLFtdLCJmM2RmIiwiTTU3MSAzNzIuM2MtMTEuMyAxNC4yLTM4LjggMjQuMy0zOC44IDI0LjNsLTIwNS4xIDczLjYgMC01NC4zIDE1MC45LTUzLjhjMTcuMS02LjEgMTkuOC0xNC44IDUuOC0xOS40LTEzLjktNC42LTM5LjEtMy4zLTU2LjIgMi45bC0xMDAuNSAzNS41IDAtNTYuNGMyMy4yLTcuOCA0Ny4xLTEzLjYgNzUuNy0xNi44IDQwLjktNC41IDkwLjkgLjYgMTMwLjIgMTUuNSA0NC4yIDE0IDQ5LjIgMzQuNyAzOCA0OC45ek0zNDYuNiAyNzkuOGwwLTEzOWMwLTE2LjMtMy0zMS4zLTE4LjMtMzUuNi0xMS43LTMuOC0xOSA3LjEtMTkgMjMuNGwwIDM0Ny45LTkzLjgtMjkuOCAwLTQxNC43YzM5LjkgNy40IDk4IDI0LjkgMTI5LjIgMzUuNCA3OS41IDI3LjMgMTA2LjQgNjEuMyAxMDYuNCAxMzcuOCAwIDc0LjUtNDYgMTAyLjgtMTA0LjUgNzQuNnpNNDMuMyA0MTAuMmMtNDUuNC0xMi44LTUzLTM5LjUtMzIuMy01NC44IDE5LjEtMTQuMiA1MS43LTI0LjkgNTEuNy0yNC45bDEzNC41LTQ3LjggMCA1NC41LTk2LjggMzQuNmMtMTcuMSA2LjEtMTkuNyAxNC44LTUuOCAxOS40czM5LjEgMy4zIDU2LjItMi45bDQ2LjQtMTYuOSAwIDQ4LjhjLTUxLjYgOS4zLTEwMS40IDcuMy0xNTMuOS0xMHoiXX0sXzJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Im1pY3JvYmxvZyIsaWNvbjpbNDQ4LDUxMixbXSwiZTAxYSIsIk0zOTkuOCAzNjIuMmMyOS41LTM0LjcgNDcuMS03OC4zIDQ3LjEtMTI1LjggMC0xMTMtOTkuNi0yMDQuNC0yMjIuNS0yMDQuNFMyIDEyMy41IDIgMjM2LjQgMTAxLjYgNDQwLjkgMjI0LjUgNDQwLjljMjcgMCA1My45LTQuNSA3OS40LTEzLjQgMS40LS41IDMtLjUgNC41LS4xczIuNyAxLjQgMy42IDIuNmMxOC42IDI1LjEgNDcuNiA0Mi43IDc5LjkgNDkuOSAxLjEgLjIgMi4zIDAgMy4zLS42czEuNy0xLjYgMS45LTIuOGMuMS0uNiAuMS0xLjMgMC0xLjlzLS40LTEuMi0uOC0xLjdjLTEyLjMtMTYtMTguNy0zNS44LTE4LTU2czguNC0zOS41IDIxLjctNTQuN2wtLjIgLjF6TTMzMCAyMTIuNGwtNTcuMyA0My41IDIwLjggNjguOWMuNCAxLjMgLjQgMi43LS4xIDRzLTEuMiAyLjQtMi4zIDMuMi0yLjQgMS4yLTMuOCAxLjItMi43LS40LTMuOC0xLjJsLTU5LjEtNDEtNTkuMSA0MS4xYy0xLjEgLjgtMi40IDEuMi0zLjggMS4ycy0yLjctLjQtMy44LTEuMi0xLjktMS45LTIuMy0zLjItLjUtMi43LS4xLTRsMjAuOC02OC45LTU3LjMtNDMuNWMtMS4xLS44LTEuOS0xLjktMi4zLTMuMnMtLjQtMi43IDAtNCAxLjItMi40IDIuMy0zLjIgMi40LTEuMyAzLjctMS4zbDcxLjktMS41IDIzLjctNjcuOWMuNC0xLjMgMS4zLTIuNCAyLjQtMy4yczIuNC0xLjIgMy44LTEuMiAyLjcgLjQgMy44IDEuMiAxLjkgMS45IDIuNCAzLjJsMjMuNyA2Ny45IDcxLjkgMS41YzEuNCAwIDIuNyAuNCAzLjggMS4yczEuOSAxLjkgMi4zIDMuMiAuNCAyLjcgMCA0LTEuMiAyLjQtMi4zIDMuM2wwIDB6Il19LFQycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJnaXRrcmFrZW4iLGljb246WzU3Niw1MTIsW10sImYzYTYiLCJNNTU3LjcgMTE4LjFjLTIuMy02LjEtOS4zLTkuMi0xNS4zLTYuNi01LjcgMi40LTguNSA4LjktNi4zIDE0LjYgMTAuOSAyOSAxNi45IDYwLjUgMTYuOSA5My4zIDAgMTM0LjYtMTAwLjMgMjQ1LjctMjMwLjIgMjYyLjdsMC0xMjMuN2M3LjktMS41IDE1LjUtMy42IDIzLTYuMmwwIDEwNGMxMDYuNy0yNS45IDE4NS45LTEyMi4xIDE4NS45LTIzNi44IDAtOTEuOC01MC44LTE3MS44LTEyNS44LTIxMy4zLTUuNy0zLjItMTMtLjktMTUuOSA1LTIuNyA1LjUtLjYgMTIuMiA0LjcgMTUuMSA2Ny45IDM3LjYgMTEzLjkgMTEwIDExMy45IDE5My4yIDAgOTMuMy01Ny45IDE3My4xLTEzOS44IDIwNS40bDAtOTIuMmMxNC4yLTQuNSAyNC45LTE3LjcgMjQuOS0zMy41IDAtMTMuMS02LjgtMjQuNC0xNy4zLTMwLjUgOC4zLTc5LjUgNDQuNS01OC42IDQ0LjUtODMuOWwwLTE0LjdjMC0zOC04Ny45LTE2MS44LTEyOS0xNjQuNy0yLjUtLjItNS0uMi03LjYgMC00MS4yIDMtMTI5LjEgMTI2LjctMTI5LjEgMTY0LjdsMCAxNC44YzAgMjUuMyAzNi4zIDQuMyA0NC41IDgzLjktMTAuNiA2LjEtMTcuMyAxNy40LTE3LjMgMzAuNSAwIDE1LjggMTAuNiAyOSAyNC44IDMzLjVsMCA5Mi4yYy04MS45LTMyLjItMTM5LjgtMTEyLTEzOS44LTIwNS40IDAtODMuMSA0Ni0xNTUuNSAxMTMuOS0xOTMuMiA1LjQtMyA3LjQtOS42IDQuNy0xNS4xLTIuOS01LjktMTAuMS04LjItMTUuOS01LTc1IDQxLjUtMTI1LjggMTIxLjUtMTI1LjggMjEzLjMgMCAxMTQuNyA3OS4yIDIxMC44IDE4NS45IDIzNi44bDAtMTA0YzcuNiAyLjUgMTUuMSA0LjYgMjMgNi4ybDAgMTIzLjdjLTEyOS44LTE3LTIzMC4yLTEyOC4xLTIzMC4yLTI2Mi43IDAtMzIuOCA2LTY0LjMgMTYuOS05My4zIDIuMi01LjgtLjYtMTIuMi02LjMtMTQuNi02LTIuNi0xMyAuNC0xNS4zIDYuNi0xMS44IDMxLjUtMTguMyA2NS42LTE4LjMgMTAxLjMgMCAxNTUuMSAxMjIuNiAyODEuNiAyNzYuMyAyODcuOGwwLTE0NS45YzYuOCAuNCAxNSAuNSAyMy40IDBsMCAxNDUuOGMxNTMuNy02LjEgMjc2LjMtMTMyLjYgMjc2LjMtMjg3LjcgMC0zNS43LTYuNS02OS44LTE4LjMtMTAxLjR6TTM1Ny45IDMyMi45YTIzLjcgMjMuNyAwIDEgMSAwLTQ3LjQgMjMuNyAyMy43IDAgMSAxIDAgNDcuNHpNMjE4LjEgMjc1LjRhMjMuNyAyMy43IDAgMSAxIDAgNDcuNCAyMy43IDIzLjcgMCAxIDEgMC00Ny40eiJdfSxmU2U9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidGVsZWdyYW0iLGljb246WzUxMiw1MTIsWzYyNDYyLCJ0ZWxlZ3JhbS1wbGFuZSJdLCJmMmM2IiwiTTI1NiA4YTI0OCAyNDggMCAxIDAgMCA0OTYgMjQ4IDI0OCAwIDEgMCAwLTQ5NnpNMzcxIDE3Ni43Yy0zLjcgMzkuMi0xOS45IDEzNC40LTI4LjEgMTc4LjMtMy41IDE4LjYtMTAuMyAyNC44LTE2LjkgMjUuNC0xNC40IDEuMy0yNS4zLTkuNS0zOS4zLTE4LjctMjEuOC0xNC4zLTM0LjItMjMuMi01NS4zLTM3LjItMjQuNS0xNi4xLTguNi0yNSA1LjMtMzkuNSAzLjctMy44IDY3LjEtNjEuNSA2OC4zLTY2LjcgLjItLjcgLjMtMy4xLTEuMi00LjRzLTMuNi0uOC01LjEtLjVjLTIuMiAuNS0zNy4xIDIzLjUtMTA0LjYgNjkuMS05LjkgNi44LTE4LjkgMTAuMS0yNi45IDkuOS04LjktLjItMjUuOS01LTM4LjYtOS4xLTE1LjUtNS0yNy45LTcuNy0yNi44LTE2LjMgLjYtNC41IDYuNy05IDE4LjQtMTMuNyA3Mi4zLTMxLjUgMTIwLjUtNTIuMyAxNDQuNi02Mi4zIDY4LjktMjguNiA4My4yLTMzLjYgOTIuNS0zMy44IDIuMSAwIDYuNiAuNSA5LjYgMi45IDIgMS43IDMuMiA0LjEgMy41IDYuNyAuNSAzLjIgLjYgNi41IC40IDkuOHoiXX0sTDJyPWZTZSxEMnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidWx0cmFseXRpY3MiLGljb246WzUxMiw1MTIsW10sImU4NmQiLCJNMzkxLjQgMzkuN2M2NS44LS4yIDExOC42IDUxLjggMTIwLjQgMTE2LjYgLjcgMjYuNC0xLjUgNTQuMS0zLjggNzQuMS0xNy4yIDE0OC42LTEyMi40IDI0Mi0yNTIuNCAyNDItOTUuNC0uMS0xNzkuNC01Mi43LTIyMy4yLTEzMC42IDI0LjQgMTcuNCA1NC41IDI3LjQgODcuNiAyNy40IDgzLjIgLjEgMTUxLjQtNjcuNCAxNTEuMi0xNTBsLjEtNjAuNmMtLjItNjUuNyA1My45LTExOSAxMjAuMS0xMTguOXpNMTE5LjkgMTAwLjJjNjYuMiAwIDExOS45IDUzLjMgMTE5LjkgMTE5UzE4Ni4xIDMzOC4zIDExOS45IDMzOC4zIDAgMjg1IDAgMjE5LjNjMC02NS43IDUzLjctMTE5IDExOS45LTExOXoiXX0sQTJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Iml0dW5lcy1ub3RlIixpY29uOlszODQsNTEyLFtdLCJmM2I1IiwiTTM4MS45IDM4OC4yYy02LjQgMjcuNC0yNy4yIDQyLjgtNTUuMSA0OC0yNC41IDQuNS00NC45IDUuNi02NC41LTEwLjItMjMuOS0yMC4xLTI0LjItNTMuNC0yLjctNzQuNCAxNy0xNi4yIDQwLjktMTkuNSA3Ni44LTI1LjggNi0xLjEgMTEuMi0yLjUgMTUuNi03LjQgNi40LTcuMiA0LjQtNC4xIDQuNC0xNjMuMiAwLTExLjItNS41LTE0LjMtMTctMTIuMy04LjIgMS40LTE4NS43IDM0LjYtMTg1LjcgMzQuNi0xMC4yIDIuMi0xMy40IDUuMi0xMy40IDE2LjcgMCAyMzQuNyAxLjEgMjIzLjktMi41IDIzOS41LTQuMiAxOC4yLTE1LjQgMzEuOS0zMC4yIDM5LjUtMTYuOCA5LjMtNDcuMiAxMy40LTYzLjQgMTAuNC00My4yLTguMS01OC40LTU4LTI5LjEtODYuNiAxNy0xNi4yIDQwLjktMTkuNSA3Ni44LTI1LjggNi0xLjEgMTEuMi0yLjUgMTUuNi03LjQgMTAuMS0xMS41IDEuOC0yNTYuNiA1LjItMjcwLjIgLjgtNS4yIDMtOS42IDcuMS0xMi45IDQuMi0zLjUgMTEuOC01LjUgMTMuNC01LjUgMjA0LTM4LjIgMjI4LjktNDMuMSAyMzIuNC00My4xIDExLjUtLjggMTguMSA2IDE4LjEgMTcuNiAuMiAzNDQuNSAxLjEgMzI2LTEuOCAzMzguNXoiXX0sRTJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Imxlc3MiLGljb246WzY0MCw1MTIsW10sImY0MWQiLCJNNjEzLjIgMjE5YzAtMjAuNSAzLjItMzIuNiAzLjItNTQuNiAwLTM0LjItMTIuNi00NS4yLTQwLjUtNDUuMmwtMjAuNSAwIDAgMjQuMiA2LjMgMGMxNC4yIDAgMTcuMyA0LjcgMTcuMyAyMi4xIDAgMTYuMy0xLjYgMzIuNi0xLjYgNTEuNSAwIDI0LjIgNy45IDMzLjYgMjMuNiAzNy4zbDAgMS42Yy0xNS44IDMuNy0yMy42IDEzLjEtMjMuNiAzNy4zIDAgMTguOSAxLjYgMzQuMiAxLjYgNTEuNSAwIDE3LjktMy43IDIyLjYtMTcuMyAyMi42bDAgLjUtNi4zIDAgMCAyNS4yIDIwLjUgMGMyNy44IDAgNDAuNS0xMSA0MC41LTQ1LjIgMC0yMi42LTMuMi0zNC4yLTMuMi01NC42IDAtMTEgNi44LTIyLjYgMjcuMy0yMy42bDAtMjcuM2MtMjAuNS0uNy0yNy4zLTEyLjMtMjcuMy0yMy4zek01MDcuNiAyNTFjLTE1LjgtNi4zLTMwLjUtMTAtMzAuNS0yMC41IDAtNy45IDYuMy0xMi42IDE3LjktMTIuNnMyMi4xIDQuNyAzMy42IDEzLjFsMjEtMjcuOGMtMTMuMS0xMC0zMS0yMC41LTU1LjItMjAuNS0zNS43IDAtNTkuOSAyMC41LTU5LjkgNDkuNCAwIDI1LjcgMjIuNiAzOC45IDQxLjUgNDYuMiAxNi4zIDYuMyAzMi4xIDExLjYgMzIuMSAyMi4xIDAgNy45LTYuMyAxMy4xLTIwLjUgMTMuMS0xMy4xIDAtMjYuMy01LjMtNDAuNS0xNi4zbC0yMSAzMC41YzE1LjggMTMuMSAzOS45IDIyLjEgNTkuOSAyMi4xIDQyIDAgNjQuNi0yMi4xIDY0LjYtNTFzLTIyLjUtNDEtNDMtNDcuOHpNMTQ4LjcgMzEwLjRjLTMuNyAwLTguNC0zLjItOC40LTEzLjFsMC0xNzguMi03NC42IDBjLTI4LjQgMC00MSAxMS00MSA0NS4yIDAgMjIuNiAzLjIgMzUuMiAzLjIgNTQuNiAwIDExLTYuOCAyMi42LTI3LjMgMjMuNmwwIDI3LjNjMjAuNSAuNSAyNy4zIDEyLjEgMjcuMyAyMy4xIDAgMTkuNC0zLjIgMzEtMy4yIDUzLjYgMCAzNC4yIDEyLjYgNDUuMiA0MC41IDQ1LjJsMjAuNSAwIDAtMjQuMi02LjMgMGMtMTMuMSAwLTE3LjMtNS4zLTE3LjMtMjIuNnMxLjYtMzIuMSAxLjYtNTEuNWMwLTI0LjItNy45LTMzLjYtMjMuNi0zNy4zbDAtMS42YzE1LjgtMy43IDIzLjYtMTMuMSAyMy42LTM3LjMgMC0xOC45LTEuNi0zNC4yLTEuNi01MS41czMuNy0yMi4xIDE3LjMtMjIuMWwxNC4xIDAgMCAxNTAuOGMwIDMyLjEgMTEgNTMuMSA0My4xIDUzLjEgMTAgMCAxNy45LTEuNiAyMy42LTMuN2wtNS4zLTM0LjJjLTMuMSAuOC00LjYgLjgtNi4yIC44ek0zODAuNCAyNTFjLTE2LjMtNi4zLTMxLTEwLTMxLTIwLjUgMC03LjkgNi4zLTEyLjYgMTcuOS0xMi42czIyLjEgNC43IDMzLjYgMTMuMWwyMS0yNy44Yy0xMy4xLTEwLTMxLTIwLjUtNTUuMi0yMC41LTM1LjcgMC01OS45IDIwLjUtNTkuOSA0OS40IDAgMjUuNyAyMi42IDM4LjkgNDEuNSA0Ni4yIDE2LjMgNi4zIDMyLjEgMTEuNiAzMi4xIDIyLjEgMCA3LjktNi4zIDEzLjEtMjAuNSAxMy4xLTEzLjEgMC0yNi4zLTUuMy00MC41LTE2LjNsLTIwLjUgMzAuNWMxNS44IDEzLjEgMzkuOSAyMi4xIDU5LjkgMjIuMSA0MiAwIDY0LjYtMjIuMSA2NC42LTUxIC4xLTI4LjktMjIuNS00MS00My00Ny44em0tMTU1LTY4LjhjLTM4LjQgMC03NS4xIDMyLjEtNzQuMSA4Mi41IDAgNTIgMzQuMiA4Mi41IDc5LjMgODIuNSAxOC45IDAgMzkuOS02LjggNTYuMi0xNy45TDI3MSAzMDEuNWMtMTEuNiA2LjgtMjIuNiAxMC0zNC4yIDEwLTIxIDAtMzcuMy0xMC00MS41LTM0LjJsOTUuMiAwYy41LTMuNyAxLjYtMTEgMS42LTE5LjQgLjYtNDIuNi0yMi42LTc1LjctNjYuNy03NS43em0tMzAgNjYuMmMzLjItMjEgMTUuOC0zMSAzMC41LTMxIDE4LjkgMCAyNi4zIDEzLjEgMjYuMyAzMWwtNTYuOCAweiJdfSwkMnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZmlyZWZveCIsaWNvbjpbNTEyLDUxMixbXSwiZjI2OSIsIk01MDMuNSAyNDEuNWMtLjEtMS42LS4yLTMuMS0uMi00LjdsMC0uMS0uNC00LjcgMC0uMWMtMS4zLTEzLjktMy43LTI3LjctNy4zLTQxLjIgMC0uMSAwLS4xLS4xLS4ybC0xLjEtNGMtLjEtLjItLjEtLjUtLjItLjYtLjQtMS4yLS43LTIuNS0xLjEtMy43LS4xLS4yLS4xLS42LS4yLS44LS40LTEuMi0uNy0yLjQtMS4xLTMuNS0uMS0uNC0uMi0uNi0uNC0xLS40LTEuMi0uNy0yLjMtMS4yLTMuNWwtLjQtMS4xYy0uNC0xLjEtLjgtMi4zLTEuMi0zLjQtLjEtLjMtLjItLjctLjQtMS0uNS0xLjEtLjgtMi4zLTEuMy0zLjQtLjEtLjItLjItLjYtLjQtLjgtLjUtMS4yLTEtMi4zLTEuNC0zLjUgMC0uMS0uMS0uMi0uMS0uNC0xLjYtMy44LTMuMi03LjctNS0xMS40bC0uNC0uN2MtLjUtMS0uOC0xLjgtMS4zLTIuNi0uMi0uNS0uNS0xLjEtLjctMS42LS40LS44LS44LTEuNi0xLjItMi40LS40LS42LS42LTEuMi0xLTEuOHMtLjgtMS40LTEuMi0yLjNjLS40LS42LS43LTEuMy0xLjEtMS45cy0uOC0xLjQtMS4yLTIuMmMtLjQtLjctLjgtMS40LTEuMi0yLS40LS43LS44LTEuMy0xLjItMnMtLjgtMS4zLTEuMi0yLS44LTEuMy0xLjItMS45LS44LTEuNC0xLjMtMi4yYy0uNC0uNi0uOC0xLjItMS4yLTEuOGwtMS40LTIuMWMtLjQtLjYtLjgtMS4yLTEuMi0xLjgtLjUtLjctMS4xLTEuNi0xLjYtMi4zLS40LS41LS43LTEuMS0xLjEtMS42bC0xLjgtMi41Yy0uNC0uNS0uNi0uOC0xLTEuMy0xLTEuMy0xLjgtMi41LTIuOC0zLjctNy4yLTkuNC0xNS0xOC4zLTIzLjUtMjYuNi01LjctNi0xMS44LTExLjUtMTguMy0xNi43LTQtMy41LTguMi02LjctMTIuNS05LjgtNy43LTUuOC0xNi0xMC44LTI0LjYtMTUuMS0yLjQtMS4zLTQuOC0yLjUtNy4yLTMuNy0xNy43LTguNi0zNi4zLTE1LjItNTUuNC0xOS42LTEuOS0uNC0zLjgtLjgtNS42LTEuMmwtLjEgMGMtMS0uMS0xLjgtLjQtMi44LS41LTEyLjUtMi40LTI1LjItMy43LTM4LTRsLTEwLjYgMGMtMTUuMyAuMi0zMC41IDEuOS00NS41IDUtMzMuNiA3LjEtNjMuMiAyMS4yLTgyLjkgMzktMS4xIDEtMS45IDEuNy0yLjQgMi4ybC0uNSAuNSAuMSAwYzAgMCAuMSAwIC4xIDBzMC0uMSAwLS4xbC0uMSAuMWMuMS0uMSAuMS0uMSAuMi0uMSAxNC42LTguOCAzNC45LTE2IDQ5LjQtMTkuNmw1LjktMS40Yy40LS4xIC44LS4xIDEuMi0uMiAxLjctLjQgMy40LS43IDUuMi0xLjEgLjIgMCAuNi0uMSAuOC0uMSA2NC4yLTExLjcgMTMyLjYgNy41IDE4MC4yIDUzIDEwLjMgOS44IDE5LjMgMjAuOCAyNi45IDMyLjggMzAuNCA0OS4yIDI3LjUgMTExLjEgMy44IDE0Ny42LTM0LjQgNTMtMTExLjQgNzEuMy0xNTkgMjQuOC0xNi0xNS41LTI1LjItMzYuNy0yNS42LTU5LS4yLTEwLjcgMi0yMS4yIDYuMi0zMSAxLjctMy44IDEzLjEtMjUuNyAxOC4yLTI0LjYtMTMuMS0yLjgtMzcuNSAyLjYtNTQuNyAyOC4yLTE1LjQgMjIuOS0xNC41IDU4LjItNSA4My4zLTYtMTIuNC0xMC4xLTI1LjYtMTIuMS0zOS4yLTEyLjItODIuNiA0My4zLTE1MyA5NC4zLTE3MC41LTI3LjUtMjQtOTYuNS0yMi4zLTE0Ny43IDE1LjQtMjkuOSAyMi01MS4yIDUzLjItNjIuNSA5MC40IDEuNy0yMC45IDkuNi01Mi4xIDI1LjgtODMuOS0xNy4yIDguOS0zOSAzNy00OS44IDYyLjktMTUuNiAzNy40LTIxIDgyLjItMTYuMSAxMjQuOCAuNCAzLjIgLjcgNi40IDEuMSA5LjYgMTkuOSAxMTcuMSAxMjIgMjA2LjQgMjQ0LjggMjA2LjQgMTM3LjEgMCAyNDguMy0xMTEuMiAyNDguMy0yNDguNC0uMS00LjUtLjItOS4xLS41LTEzLjV6Il19LFAycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJrYWdnbGUiLGljb246WzMyMCw1MTIsW10sImY1ZmEiLCJNMzA0LjIgNTAxLjVMMTU4LjQgMzIwLjMgMjk4LjIgMTg1YzIuNi0yLjcgMS43LTEwLjUtNS4zLTEwLjVsLTY5LjIgMGMtMy41IDAtNyAxLjgtMTAuNSA1LjNsLTEzMi4zIDEzMy43IDAtMzA2YzAtNS0yLjUtNy41LTcuNS03LjVMMjEuNSAwQzE2LjUgMCAxNCAyLjUgMTQgNy41bDAgNDk3YzAgNSAyLjUgNy41IDcuNSA3LjVsNTEuOSAwYzUgMCA3LjUtMi41IDcuNS03LjVsMC0xMDkgMzAuOC0yOS4zIDExMC41IDE0MC42YzMgMy41IDYuNSA1LjMgMTAuNSA1LjNsNjYuOSAwYzMuNSAwIDUuNS0xIDYtM2wtMS40LTcuNnoiXX0sSTJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImZhY2Vib29rLW1lc3NlbmdlciIsaWNvbjpbNTEyLDUxMixbXSwiZjM5ZiIsIk0yNTYuNiA4Yy0xNDAgMC0yNDguNiAxMDIuMy0yNDguNiAyNDAuNiAwIDcyLjMgMjkuNyAxMzQuOCA3OC4xIDE3Ny45IDguMyA3LjUgNi42IDExLjkgOCA1OC4yIC4xIDMuMiAxIDYuNCAyLjYgOS4yczMuOSA1LjIgNi43IDYuOSA1LjkgMi44IDkuMSAzIDYuNS0uMyA5LjUtMS42QzE3NC45IDQ3OSAxNzUuNiA0NzcuMiAxODQuNiA0NzkuNiAzMzcuOCA1MjEuOCA1MDQgNDIzLjcgNTA0IDI0OC42IDUwNCAxMTAuMyAzOTYuNiA4IDI1Ni42IDh6TTQwNS44IDE5My4xbC03MyAxMTUuNmMtMi44IDQuMy02LjQgOC4xLTEwLjYgMTFzLTkuMSA0LjgtMTQuMSA1LjgtMTAuMyAuOC0xNS4zLS40LTkuNy0zLjQtMTMuOC02LjRsLTU4LjEtNDMuNWMtMi42LTEuOS01LjgtMy05LTNzLTYuNCAxLjEtOSAzbC03OC40IDU5LjRjLTEwLjUgNy45LTI0LjItNC42LTE3LjEtMTUuN2w3My0xMTUuNmMyLjgtNC4zIDYuNC04LjEgMTAuNi0xMXM5LjEtNC44IDE0LjEtNS44IDEwLjMtLjggMTUuMyAuNCA5LjcgMy40IDEzLjkgNi40bDU4LjEgNDMuNWMyLjYgMS45IDUuOCAzIDkgM3M2LjQtMS4xIDktM2w3OC40LTU5LjRjMTAuNC04IDI0LjEgNC41IDE3LjEgMTUuNnoiXX0sTjJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImF1ZGlibGUiLGljb246WzY0MCw1MTIsW10sImYzNzMiLCJNNjQwIDE5OS45bDAgNTQtMzIwIDIwMC0zMjAtMTk5LjkgMC01NCAzMjAgMjAwIDMyMC0yMDAuMXptLTE5NC41IDcybDQ3LjEtMjkuNGMtMzcuMi01NS44LTEwMC43LTkyLjYtMTcyLjctOTIuNnMtMTM1LjUgMzYuNy0xNzIuNiA5Mi40bC4zIDBjMi41LTIuMyA1LjEtNC41IDcuNy02LjcgODkuNy03NC40IDIxOS40LTU4LjEgMjkwLjIgMzYuM3pNMjI1LjQgMjkwLjdjMTYuOS0xMS45IDM2LjUtMTguNyA1Ny40LTE4LjcgMzQuNCAwIDY1LjIgMTguNCA4Ni40IDQ3LjZsNDUuNC0yOC40Yy0yMC45LTI5LjktNTUuNi00OS41LTk0LjgtNDkuNS0zOC45IDAtNzMuNCAxOS40LTk0LjQgNDl6TTEwMy42IDE2MS4xQzIzNS40IDU2LjggNDIxLjggODQuNyA1MjEuMSAyMjMuMmwuNyAxIDQ4LjgtMzAuNGMtNTMuNS04MS43LTE0NS44LTEzNS43LTI1MC43LTEzNS43LTEwMy41IDAtMTk2LjYgNTMuNS0yNTAuNSAxMzUuNiA5LjktMTAuNSAyMi43LTIzLjUgMzQuMi0zMi42eiJdfSxGMnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToicGF0cmVvbiIsaWNvbjpbNTEyLDUxMixbXSwiZjNkOSIsIk00OTAgMTUzLjhjLS4xLTY1LjQtNTEtMTE5LTExMC43LTEzOC4zLTc0LjItMjQtMTcyLTIwLjUtMjQyLjkgMTIuOS04NS44IDQwLjUtMTEyLjggMTI5LjMtMTEzLjggMjE3LjgtLjggNzIuOCA2LjQgMjY0LjQgMTE0LjYgMjY1LjggODAuMyAxIDkyLjMtMTAyLjUgMTI5LjUtMTUyLjMgMjYuNC0zNS41IDYwLjUtNDUuNSAxMDIuNC01NS45IDcyLTE3LjggMTIxLjEtNzQuNyAxMjEtMTUwbC0uMSAweiJdfSxPMnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToidm52IixpY29uOls2NDAsNTEyLFtdLCJmNDBiIiwiTTEwNC45IDM1MmMtMzQuMSAwLTQ2LjQtMzAuNC00Ni40LTMwLjRMMi42IDIxMC4xUy03LjggMTkyIDEzIDE5MmwzMi44IDBjMTAuNCAwIDEzLjIgOC43IDE4LjggMTguMWwzNi43IDc0LjVzNS4yIDEzLjEgMjEuMSAxMy4xIDIxLjEtMTMuMSAyMS4xLTEzLjFsMzYuNy03NC41YzUuNi05LjUgOC40LTE4LjEgMTguOC0xOC4xbDMyLjggMGMyMC44IDAgMTAuNCAxOC4xIDEwLjQgMTguMUwxODYuNCAzMjEuNlMxNzQuMiAzNTIgMTQwIDM1MmwtMzUuMSAwem0zOTUgMGMtMzQuMSAwLTQ2LjQtMzAuNC00Ni40LTMwLjRMMzk3LjYgMjEwLjFTMzg3LjIgMTkyIDQwOCAxOTJsMzIuOCAwYzEwLjQgMCAxMy4yIDguNyAxOC44IDE4LjFsMzYuNyA3NC41czUuMiAxMy4xIDIxLjEgMTMuMSAyMS4xLTEzLjEgMjEuMS0xMy4xbDM2LjgtNzQuNWM1LjYtOS41IDguNC0xOC4xIDE4LjgtMTguMWwzMi45IDBjMjAuOCAwIDEwLjQgMTguMSAxMC40IDE4LjFMNTgxLjUgMzIxLjZTNTY5LjMgMzUyIDUzNS4xIDM1MmwtMzUuMiAwek0zMzcuNiAxOTJjMzQuMSAwIDQ2LjQgMzAuNCA0Ni40IDMwLjRsNTUuOSAxMTEuNVM0NTAuMyAzNTIgNDI5LjUgMzUybC0zMi44IDBjLTEwLjQgMC0xMy4yLTguNy0xOC44LTE4LjFsLTM2LjctNzQuNXMtNS4yLTEzLjEtMjEuMS0xMy4xLTIxLjEgMTMuMS0yMS4xIDEzLjFsLTM2LjcgNzQuNWMtNS42IDkuNC04LjQgMTguMS0xOC44IDE4LjFsLTMyLjkgMGMtMjAuOCAwLTEwLjQtMTguMS0xMC40LTE4LjFsNTUuOS0xMTEuNVMyNjguMyAxOTIgMzAyLjUgMTkybDM1LjEgMHoiXX0sUjJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InBhZ2VsaW5lcyIsaWNvbjpbMzg0LDUxMixbXSwiZjE4YyIsIk0zODQuMSAzMTIuN2MtNTUuMSAxMzYuNy0xODcuMSA1NC0xODcuMSA1NC00MC41IDgxLjgtMTA3LjQgMTM0LjQtMTg0LjYgMTM0LjctMTYuMSAwLTE2LjYtMjQuNCAwLTI0LjQgNjQuNC0uMyAxMjAuNS00Mi43IDE1Ny4yLTExMC4xLTQxLjEgMTUuOS0xMTguNiAyNy45LTE2MS42LTgyLjIgMTA5LTQ0LjkgMTU5LjEgMTEuMiAxNzguMyA0NS41IDkuOS0yNC40IDE3LTUwLjkgMjEuNi03OS43IDAgMC0xMzkuNyAyMS45LTE0OS41LTk4LjEgMTE5LjEtNDcuOSAxNTIuNiA3Ni43IDE1Mi42IDc2LjcgMS42LTE2LjcgMy4zLTUyLjYgMy4zLTUzLjQgMCAwLTEwNi4zLTczLjctMzguMS0xNjUuMiAxMjQuNiA0MyA2MS40IDE2Mi40IDYxLjQgMTYyLjQgLjUgMS42IC41IDIzLjggMCAzMy40IDAgMCA0NS4yLTg5IDEzNi40LTU3LjUtNC4yIDEzNC0xNDEuOSAxMDYuNC0xNDEuOSAxMDYuNC00LjQgMjcuNC0xMS4yIDUzLjQtMjAgNzcuNSAwIDAgODMtOTEuOCAxNzItMjB6Il19LEIycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJhbWF6b24iLGljb246WzQ0OCw1MTIsW10sImYyNzAiLCJNMjU3LjcgMTYyLjdjLTQ4LjcgMS44LTE2OS41IDE1LjUtMTY5LjUgMTE3LjUgMCAxMDkuNSAxMzguMyAxMTQgMTgzLjUgNDMuMiA2LjUgMTAuMiAzNS40IDM3LjUgNDUuMyA0Ni44bDU2LjgtNTZzLTMyLjMtMjUuMy0zMi4zLTUyLjhsMC0xNDcuMUMzNDEuNSA4OSAzMTcgMzIgMjI5LjIgMzIgMTQxLjIgMzIgOTQuNSA4NyA5NC41IDEzNi4zbDczLjUgNi44YzE2LjMtNDkuNSA1NC4yLTQ5LjUgNTQuMi00OS41IDQwLjctLjEgMzUuNSAyOS44IDM1LjUgNjkuMXptMCA4Ni44YzAgODAtODQuMiA2OC04NC4yIDE3LjIgMC00Ny4yIDUwLjUtNTYuNyA4NC4yLTU3LjhsMCA0MC42ek0zOTMuNyA0MTNjLTcuNyAxMC03MCA2Ny0xNzQuNSA2N1MzNC43IDQwOC41IDEwLjIgMzc5Yy02LjgtNy43IDEtMTEuMyA1LjUtOC4zIDczLjMgNDQuNSAxODcuOCAxMTcuOCAzNzIuNSAzMC4zIDcuNS0zLjcgMTMuMyAyIDUuNSAxMnptMzkuOCAyLjJjLTYuNSAxNS44LTE2IDI2LjgtMjEuMiAzMS01LjUgNC41LTkuNSAyLjctNi41LTMuOHMxOS4zLTQ2LjUgMTIuNy01NWMtNi41LTguMy0zNy00LjMtNDgtMy4yLTEwLjggMS0xMyAyLTE0LS4zLTIuMy01LjcgMjEuNy0xNS41IDM3LjUtMTcuNSAxNS43LTEuOCA0MS0uOCA0NiA1LjcgMy43IDUuMSAwIDI3LjEtNi41IDQzLjF6Il19LEgycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJlbnZpcmEiLGljb246WzQ0OCw1MTIsW10sImYyOTkiLCJNMCAzMmM0NzcuNiAwIDM2Ni42IDMxNy4zIDM2Ny4xIDM2Ni4zbDgwLjkgODEuNy0yNiAwLTcwLjQtNzEuMkMzMTIuNiA0MTMgMjI3LjIgNDQzLjMgMTM3LjIgMzcxLjggNDcgMzAwLjMgNTIgMjE0LjcgMCAzMnpNNzkuNyA3OGMtNDkuNy0yMy41LTUuMiA5LjItNS4yIDkuMiA0NS4yIDMxLjIgNjYgNzMuNyA5MC4yIDExOS45IDMxLjUgNjAuMiA3OSAxMzkuNyAxNDQuMiAxNjcuNyA2NSAyOCAzNC4yIDEyLjUgNi04LjUtMjguMi0yMS4yLTY4LjItODctOTEtMTMwLjItMzEuNy02MC02MS0xMTguNi0xNDQuMi0xNTguMXoiXX0scTJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6Imxpbm9kZSIsaWNvbjpbNDQ4LDUxMixbXSwiZjJiOCIsIk0zNjYuMyAxODYuOWwtNTkuNSAzNi45LS44IDM2LjktMjkuMy0xOS4zLTM5LjQgMjQuM2MyLjIgNTUuMiAyLjUgNTkuMyAyLjUgNTkuNWwtOTcuMiA2NS40LTE1LjEtMTA0LjcgMTA4LjEtNjItNDAuMi0yNi03NS40IDM4LjUtMjEtMTQzLjMgMTI5LTQ5LjQtOTEuMy00My42LTEyNS43IDM5LjQgMjcuNyAxMzQuOSA0MS45IDMyLjctMzEuOCAxNS4xIDIwLjkgMTAxLjQgMjkuMyAyNy43LTIwLjkgMTIuNiAxNi44IDc4LjggNjYuMiA2OS42Yy0xMC44LTc0LjgtMTEuNy03OC42LTExLjctNzguOGw3Ny45LTU1LjNDMjQ0IDM2NS40IDI0Mi4zIDM2NyAyNDIuMyAzNjdsLjggMjQuMyAzMy41IDI4LjUtLjgtNzcuMSA0Ni45LTMzLjUgMjYuOC0xOC40LTIuNSAzNiAyNS4xIDE3LjYgNi43LTc0LjYgNTguNy00My42LTcxLjItMzkuNHoiXX0sajJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImFjY3Vzb2Z0IixpY29uOls2NDAsNTEyLFtdLCJmMzY5IiwiTTMyMi4xIDI1MmwwLTEtNTEuMi02NS44cy0xMiAxLjYtMjUgMTUuMWMtOSA5LjMtMjQyLjEgMjM5LjEtMjQzLjQgMjQwLjktNyAxMCAxLjYgNi44IDE1LjcgMS43IC44IDAgMTE0LjUtMzYuNiAxMTQuNS0zNi42IC41LS42LS4xLS4xIC42LS42LS40LTUuMS0uOC0yNi4yLTEtMjcuNy0uNi01LjIgMi4yLTYuOSA3LTguOWw5Mi42LTMzLjhjLjYtLjggODguNS04MS43IDkwLjItODMuM3pNNDgyLjIgMzcyLjFjMTMuMyAxNi4xIDIwLjcgMTMuMyAzMC44IDkuMyAzLjItMS4yIDExNS40LTQ3LjYgMTE3LjgtNDguOSA4LTQuMy0xLjctMTYuNy03LjItMjMuNC0yLjEtMi41LTIwNS4xLTI0NS42LTIwNy4yLTI0OC4zLTkuNy0xMi4yLTE0LjMtMTIuOS0zOC40LTEyLjgtMTAuMiAwLTEwNi44IC41LTExNi41IC42LTE5LjIgLjEtMzIuOS0uMy0xOS4yIDE2LjkgNy43IDkuNSAyMzQuMiAyOTkuNyAyMzkuOSAzMDYuNnptMTUyLjcgMS42Yy0yLjMtLjMtMjQuNi00LjctMzgtNy4yIDAgMC0xMTUgNTAuNC0xMTcuNSA1MS42LTE2IDcuMy0yNi45LTMuMi0zNi43LTE0LjZsLTU3LjEtNzRjLTUuNC0uOS02MC40LTkuNi02NS4zLTkuMy0zLjEgLjItOS42IC44LTE0LjQgMi45LTQuOSAyLjEtMTQ1LjIgNTIuOC0xNTAuMiA1NC43LTUuMSAyLTExLjQgMy42LTExLjEgNy42IC4yIDIuNSAyIDIuNiA0LjYgMy41IDIuNyAuOCAzMDAuOSA2Ny42IDMwOCA2OS4xIDE1LjYgMy4zIDM4LjUgMTAuNSA1My42IDEuNyAyLjEtMS4yIDEyMy44LTc2LjQgMTI1LjgtNzcuOCA1LjQtNCA0LjMtNi44LTEuNy04LjJ6Il19LFYycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJlcmxhbmciLGljb246WzY0MCw1MTIsW10sImYzOWQiLCJNODcuMiA1My41bC04Ny4yIDAgMCA0MDUgMTAwLjQgMGMtNDkuNy01Mi42LTc4LjgtMTI1LjMtNzguNy0yMTIuMS0uMS03Ni43IDI0LTE0Mi43IDY1LjUtMTkyLjl6bTIzOC4yIDkuN2MtNDUuOSAuMS04NS4xIDMzLjUtODkuMiA4My4ybDE2OS45IDBjLTEuMS00OS43LTM0LjUtODMuMS04MC43LTgzLjJ6bTIzMC43LTkuNmwuMyAwLS4xLS4xLS4yIC4xem0uMyAwYzMxLjQgNDIuNyA0OC43IDk3LjUgNDYuMiAxNjIuNyAuNSA2IC41IDExLjcgMCAyNC4xbC0zNzIuNCAwYy0uMiAxMDkuNyAzOC45IDE5NC45IDEzOC42IDE5NS4zIDY4LjUtLjMgMTE4LTUxIDE1MS45LTEwNi4xbDk2LjQgNDguMmMtMTcuNCAzMC45LTM2LjUgNTcuOC01Ny45IDgwLjhsODAuOCAwIDAtNDA1LTgzLjYgMHoiXX0sVTJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InVuaXNvbiIsaWNvbjpbNTEyLDUxMixbXSwiZTg1NCIsIk00MzUuMSAxNjEuN2ExMy45IDEzLjkgMCAxIDEgMTkuNi0xOS43IDEzLjkgMTMuOSAwIDEgMSAtMTkuNiAxOS43ek0zNjkuNyA5Ny44YzEwLjQgMi4xIDIwLjYgNS4yIDMwLjQgOS4yIDYuOCAyLjggMTAuMSAxMC44IDcuMyAxNy43LTIuOCA2LjctMTAuOSAxMC4xLTE3LjYgNy4zLTguMy0zLjQtMTYuOC01LjgtMjUuNy03LjgtOC42LTEuNy0xNy4zLTIuNS0yNi0yLjUtMTkuMyAwLTM3LjEtMTAuMy00Ni43LTI3LTguNy0xNS4xLTIwLjYtMjguOS0zNC43LTM5LjctNTkuMS00NS41LTE0My44LTM0LjMtMTg5LjIgMjUtMi42IDMuMy02LjUgNS4zLTEwLjcgNS4zLTcuNCAwLTEzLjUtNi4xLTEzLjUtMTMuNSAwLTMuMiAxLjItNi4zIDMuMi04LjggMTIuOS0xNi43IDI4LjktMzAuNyA0Ny4xLTQxLjIgNzcuNC00NC44IDE3Ni40LTE4LjIgMjIxLjEgNTkuNCA0LjMgOC4yIDEzLjcgMTMuMyAyMi44IDEzLjUgMTAuOCAwIDIxLjYgMSAzMi4yIDMuMXpNMzUgMjcwYzQuNi04LjIgNC42LTE4LjIgMC0yNi40LTIxLjktMzYuNS0yNy4zLTgyLjMtMTYuMy0xMjMuMiAxLjYtNS45IDYuOS0xMCAxMy0xMCA4LjcgMCAxNS4zIDguNyAxMyAxNy05LjUgMzUuNC0zLjQgNzEgMTMuNyAxMDIuOSA5LjMgMTYuNSA5LjMgMzYuNyAwIDUzLjEtOC43IDE1LjctMTQuOCAzMi40LTE3LjIgNTAuMy05LjcgNzMuOSA0Mi4zIDE0MS43IDExNi4yIDE1MS40IDcuMyAxIDEyLjYgNy45IDExLjYgMTUuMi0xIDcuMy03LjggMTIuNi0xNS4xIDExLjYtMjEuMS0yLjgtNDEuNC05LjctNTkuOC0yMC4zLTc1LjYtNDMuNi0xMDQuOS0xNDUuOC01OS4yLTIyMS41ek0yMTYuOSA1MDljLTcuNCAyLTE1LjEtMi40LTE3LjEtOS44czIuNS0xNSA5LjktMTYuOWM4LjUtMi4yIDE3LjQgNC41IDE3LjQgMTMuNCAwIDYuMi00LjIgMTEuNi0xMC4yIDEzLjN6bTEyMi4zLTkxYy05LjUgMC0xOC40IDUtMjMuMiAxMy4yLTQuOSA5LjQtMTEuNyAxOC4yLTE4LjcgMjYuMmwwIDBjLTcuMSA4LTE0LjggMTUuMi0yMy4yIDIxLjctNS45IDQuNS0xNC40IDMuNC0xOS0yLjVzLTMuNC0xNC40IDIuNS0xOC45YzctNS40IDEzLjUtMTEuNSAxOS40LTE4LjFsMCAwYzUuOS02LjYgMTEuMS0xMy44IDE1LjUtMjEuNiA5LjctMTYuNyAyNy41LTI3IDQ2LjgtMjcgMTcuOCAwIDM1LjQtMy41IDUxLjgtMTAuMyA2OC4zLTI4LjMgMTAxLjEtMTA4LjMgNzMuMi0xNzYuNS0uNi0xLjYtMS0zLjMtMS01IDAtNy40IDYuMS0xMy41IDEzLjUtMTMuNSA1LjQgMCAxMC4zIDMuMiAxMi40IDguMiA4LjIgMTkuNyAxMi40IDQwLjggMTIuNCA2Mi4xIDAgODkuNS03Mi43IDE2Mi4xLTE2Mi40IDE2Mi4xbDAgMHptLTEzLjEtMjY4YzMuOS0uNCA3LjktLjYgMTEuOS0uNiA1OS4zIDAgMTA4LjIgNDguNyAxMDguMiAxMDcuOFMzOTcuMyAzNjUgMzM4IDM2NWMtNCAwLTcuOS0uMi0xMS44LS42LTIyLjItMS43LTQzLjMgMTAuNC01Mi45IDMwLjQtMTcuMiAzOS4xLTU2LjIgNjQuNS05OS4xIDY0LjUtNTkuMyAwLTEwOC4yLTQ4LjctMTA4LjItMTA3LjggMC0yMy4yIDcuNS00NS43IDIxLjQtNjQuMyAxMi4yLTE4LjMgMTIuMS00Mi4zLS40LTYwLjUtMTMuNi0xOC41LTIwLjktNDAuOC0yMC45LTYzLjcgMC01OS4xIDQ4LjgtMTA3LjggMTA4LjItMTA3LjggNDIuOCAwIDgxLjggMjUuNCA5OSA2NC40IDkuNiAyMCAzMC43IDMyLjEgNTIuOSAzMC40ek0xMDYuOCAzOTMuNGMxNC40IDI1LjIgNDEuMSA0MC44IDY5LjggNDAuOCA0NC4yIDAgODAuNi0zNi44IDgwLjYtODEuNnMtMzYuNC04MS42LTgwLjYtODEuNmMtMTQuMiAwLTI4LjEgMy44LTQwLjMgMTAuOS0zOC4zIDIyLjQtNTEuNiA3Mi43LTI5LjUgMTExLjR6TTI2OCAyOThjMTQuNCAyNS4yIDQxLjEgNDAuOCA2OS44IDQwLjggNDQuMiAwIDgwLjYtMzYuOCA4MC42LTgxLjZzLTM2LjQtODEuNi04MC42LTgxLjZjLTE0LjIgMC0yOC4xIDMuOC00MC4zIDEwLjktMzguMyAyMi40LTUxLjYgNzIuNy0yOS41IDExMS40em0tOTEuMi01NC42YzQ0LjIgMCA4MC41LTM2LjggODAuNS04MS42cy0zNi40LTgxLjYtODAuNi04MS42LTgwLjYgMzYuOC04MC42IDgxLjZjMCA0NC43IDM2LjQgODEuNiA4MC42IDgxLjZ6Il19LFcycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJjYy1kaXNjb3ZlciIsaWNvbjpbNTc2LDUxMixbXSwiZjFmMiIsIk01MjAuNCAxOTYuMWMwLTcuOS01LjUtMTIuMS0xNS42LTEyLjFsLTQuOSAwIDAgMjQuOSA0LjcgMGMxMC4zIDAgMTUuOC00LjQgMTUuOC0xMi44ek01MjggMzJMNDggMzJDMjEuNSAzMiAwIDUzLjUgMCA4MEwwIDQzMmMwIDI2LjUgMjEuNSA0OCA0OCA0OGw0ODAgMGMyNi41IDAgNDgtMjEuNSA0OC00OGwwLTM1MmMwLTI2LjUtMjEuNS00OC00OC00OHpNNDgzLjkgMTcwLjljMjIuNiAwIDUyLjktNC4xIDUyLjkgMjQuNCAwIDEyLjYtNi42IDIwLjctMTguNyAyMy4ybDI1LjggMzQuNC0xOS42IDAtMjIuMi0zMi44LTIuMiAwIDAgMzIuOC0xNiAwIDAtODJ6TTQyOCAxNzFsNDUuMyAwIDAgMTQtMjkuMyAwIDAgMTguMiAyOC4zIDAgMCAxMy44LTI4LjMgMCAwIDIyLjIgMjkuMyAwIDAgMTMuOC00NS4zIDAgMC04MnptLTY4LjcgMGwyMS45IDU1LjIgMjIuMi01NS4yIDE3LjUgMC0zNS41IDg0LjItOC42IDAtMzUtODQuMiAxNy41IDB6bS01NS45IDg2LjJhNDQuNiA0NC42IDAgMSAxIDAtODkuMiA0NC42IDQ0LjYgMCAxIDEgMCA4OS4yem0tNDkuMy04My4xbDAgMTljLTIwLjEtMjAuMS00Ni44LTQuNy00Ni44IDE5IDAgMjUgMjcuNSAzOC41IDQ2LjggMTkuMmwwIDE5Yy0yOS43IDE0LjMtNjMuMy01LjctNjMuMy0zOC4yIDAtMzEuMiAzMy4xLTUzIDYzLjMtMzh6bS05Ny4yIDY2LjNjMTEuNCAwIDIyLjQtMTUuMy0zLjMtMjQuNC0xNS01LjUtMjAuMi0xMS40LTIwLjItMjIuNyAwLTIzLjIgMzAuNi0zMS40IDQ5LjctMTQuM2wtOC40IDEwLjhjLTEwLjQtMTEuNi0yNC45LTYuMi0yNC45IDIuNSAwIDQuNCAyLjcgNi45IDEyLjMgMTAuMyAxOC4yIDYuNiAyMy42IDEyLjUgMjMuNiAyNS42IDAgMjkuNS0zOC44IDM3LjQtNTYuNiAxMS4zbDEwLjMtOS45YzMuNyA3LjEgOS45IDEwLjggMTcuNSAxMC44ek01NS40IDI1M2wtMjMuNCAwIDAtODIgMjMuNCAwYzI2LjEgMCA0NC4xIDE3IDQ0LjEgNDEuMSAwIDE4LjUtMTMuMiA0MC45LTQ0LjEgNDAuOXptNjcuNSAwbC0xNiAwIDAtODIgMTYgMCAwIDgyek01NDQgNDMzYzAgOC4yLTYuOCAxNS0xNSAxNWwtNDAxIDBjMTg5LjYtMzUuNiAzODIuNy0xMzkuMiA0MTYtMTYwbDAgMTQ1ek03NC4xIDE5MS42Yy01LjItNC45LTExLjYtNi42LTIxLjktNi42bC00LjIgMCAwIDU0LjIgNC4yIDBjMTAuMyAwIDE3LTIgMjEuOS02LjQgNS43LTUuMiA4LjktMTIuOCA4LjktMjAuN3MtMy4yLTE1LjUtOC45LTIwLjV6Il19LEcycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJzYWZhcmkiLGljb246WzUxMiw1MTIsW10sImYyNjciLCJNMjc0LjcgMjc0LjdMMjM3LjMgMjM3LjMgMTY2IDM0NiAyNzQuNyAyNzQuN3pNMjU2IDhhMjQ4IDI0OCAwIDEgMCAwIDQ5NiAyNDggMjQ4IDAgMSAwIDAtNDk2ek00MTEuOCAxODIuOGwxNC44LTYuMWMxLS40IDItLjYgMy4xLS42czIuMSAuMiAzLjEgLjYgMS44IDEgMi42IDEuNyAxLjMgMS42IDEuNyAyLjYgLjYgMiAuNiAzLjEtLjIgMi4xLS42IDMuMS0xIDEuOS0xLjcgMi42LTEuNiAxLjMtMi42IDEuN0w0MTggMTk3LjZjLTIgLjgtNC4yIC44LTYuMSAwcy0zLjUtMi40LTQuMy00LjMtLjgtNC4yIDAtNi4xIDIuNC0zLjUgNC4zLTQuM3pNMzE0LjQgOTRsNi4xLTE0LjhjLjgtMiAyLjQtMy41IDQuMy00LjNzNC4yLS44IDYuMSAwIDMuNSAyLjQgNC4zIDQuMyAuOCA0LjIgMCA2LjFsLTYuMSAxNC44Yy0uOCAyLTIuNCAzLjUtNC4zIDQuM3MtNC4yIC44LTYuMSAwYy0xLS40LTEuOS0xLTIuNi0xLjdzLTEuMy0xLjYtMS43LTIuNi0uNi0yLS42LTMuMSAuMi0yLjEgLjYtMy4xek0yNTYgNjBjMi4xIDAgNC4yIC44IDUuNyAyLjNTMjY0IDY1LjkgMjY0IDY4bDAgMTZjMCAyLjEtLjggNC4yLTIuMyA1LjdzLTMuNSAyLjMtNS43IDIuMy00LjItLjgtNS43LTIuMy0yLjMtMy41LTIuMy01LjdsMC0xNmMwLTIuMSAuOC00LjIgMi4zLTUuN1MyNTMuOSA2MCAyNTYgNjB6TTE4MSA3NC45YzEtLjQgMi0uNiAzLjEtLjZzMi4xIC4yIDMuMSAuNiAxLjkgMSAyLjYgMS43IDEuMyAxLjYgMS43IDIuNkwxOTcuNiA5NGMuNCAxIC43IDIgLjcgMy4xcy0uMiAyLjEtLjYgMy4xLTEgMS45LTEuNyAyLjYtMS42IDEuNC0yLjYgMS44LTIgLjYtMy4xIC42LTIuMS0uMi0zLjEtLjYtMS45LTEtMi42LTEuOC0xLjMtMS43LTEuNy0yLjdsLTYuMS0xNC44Yy0uOC0yLS44LTQuMiAwLTYuMXMyLjQtMy41IDQuMy00LjN6bS02My42IDQyLjVjMS41LTEuNSAzLjUtMi4zIDUuNy0yLjNzNC4yIC44IDUuNyAyLjNMMTQwIDEyOC43YzEuNSAxLjUgMi4zIDMuNSAyLjMgNS42cy0uOCA0LjEtMi4zIDUuNmMtMS41IDEuNS0zLjUgMi4zLTUuNyAyLjNzLTQuMi0uOC01LjctMi4zbC0xMS4zLTExLjNjLTEuNS0xLjUtMi4zLTMuNS0yLjMtNS42cy44LTQuMSAyLjMtNS42bDAgMHpNNjAgMjU2YzAtMi4xIC44LTQuMiAyLjMtNS43UzY1LjkgMjQ4IDY4IDI0OGwxNiAwYzIuMSAwIDQuMiAuOCA1LjcgMi4zczIuMyAzLjUgMi4zIDUuNy0uOCA0LjItMi4zIDUuNy0zLjUgMi4zLTUuNyAyLjNsLTE2IDBjLTIuMSAwLTQuMi0uOC01LjctMi4zUzYwIDI1OC4xIDYwIDI1NnptNDAuMiA3My4ybC0xNC44IDYuMWMtMSAuNC0yIC42LTMuMSAuNnMtMi4xLS4yLTMuMS0uNi0xLjktMS0yLjYtMS43LTEuMy0xLjYtMS43LTIuNi0uNi0yLS42LTMuMSAuMi0yLjEgLjYtMy4xIDEtMS45IDEuNy0yLjYgMS42LTEuMyAyLjYtMS43TDk0IDMxNC40YzItLjggNC4yLS44IDYuMSAwczMuNSAyLjQgNC4zIDQuMyAuOCA0LjIgMCA2LjEtMi40IDMuNS00LjMgNC4zem00LjMtMTM2Yy0uNCAxLTEgMS45LTEuNyAyLjZzLTEuNiAxLjMtMi42IDEuNy0yIC42LTMuMSAuNi0yLjEtLjItMy4xLS42bC0xNC44LTYuMWMtMi0uOC0zLjUtMi40LTQuMy00LjNzLS44LTQuMiAwLTYuMSAyLjQtMy41IDQuMy00LjMgNC4yLS44IDYuMSAwbDE0LjggNi4xYzIgLjggMy41IDIuNCA0LjMgNC4zcy44IDQuMiAwIDYuMWwwIDB6TTE5Ny42IDQxOGwtNi4xIDE0LjhjLS40IDEtMSAxLjktMS43IDIuNnMtMS42IDEuMy0yLjYgMS43LTIgLjYtMy4xIC42LTIuMS0uMi0zLjEtLjYtMS45LTEtMi42LTEuNy0xLjMtMS42LTEuNy0yLjYtLjYtMi0uNi0zLjEgLjItMi4xIC42LTMuMWw2LjEtMTQuOGMuNC0xIDEtMS45IDEuNy0yLjdzMS42LTEuNCAyLjYtMS44IDItLjYgMy4xLS42IDIuMSAuMiAzLjEgLjYgMS45IDEgMi42IDEuOCAxLjMgMS43IDEuNyAyLjYgLjYgMiAuNiAzLjEtLjIgMi4xLS43IDMuMXpNMjY0IDQ0NGMwIDIuMS0uOCA0LjItMi4zIDUuN3MtMy41IDIuMy01LjcgMi4zLTQuMi0uOC01LjctMi4zLTIuMy0zLjUtMi4zLTUuN2wwLTE2YzAtMi4xIC44LTQuMiAyLjMtNS43czMuNS0yLjMgNS43LTIuMyA0LjIgLjggNS43IDIuMyAyLjMgMy41IDIuMyA1LjdsMCAxNnptNjctNi45Yy0xIC40LTIgLjYtMy4xIC42cy0yLjEtLjItMy4xLS42LTEuOS0xLTIuNi0xLjctMS4zLTEuNi0xLjctMi42TDMxNC40IDQxOGMtLjgtMi0uOC00LjIgMC02LjFzMi40LTMuNSA0LjMtNC4zIDQuMi0uOCA2LjEgMCAzLjUgMi40IDQuMyA0LjNsNi4xIDE0LjhjLjggMiAuOCA0LjIgMCA2LjFzLTIuNCAzLjUtNC4zIDQuM3ptNjMuNi00Mi41Yy0xLjUgMS41LTMuNSAyLjMtNS43IDIuM3MtNC4yLS44LTUuNy0yLjNMMzcyIDM4My4zYy0xLjUtMS41LTIuMy0zLjUtMi4zLTUuNnMuOC00LjEgMi4zLTUuNiAzLjUtMi4zIDUuNy0yLjMgNC4yIC44IDUuNyAyLjNsMTEuMyAxMS4zYzEuNSAxLjUgMi4zIDMuNSAyLjMgNS42cy0uOCA0LjEtMi4zIDUuNmwwIDB6TTI4Ni4yIDI4Ni4yTDExMC4zIDQwMS43IDIyNS44IDIyNS44IDQwMS43IDExMC4zIDI4Ni4yIDI4Ni4yek00MzcuMSAzMzFjLS44IDItMi40IDMuNS00LjMgNC4zcy00LjIgLjgtNi4xIDBsLTE0LjgtNi4xYy0yLS44LTMuNS0yLjQtNC4zLTQuM3MtLjgtNC4yIDAtNi4xYy40LTEgMS0xLjkgMS43LTIuNnMxLjYtMS4zIDIuNi0xLjcgMi0uNiAzLjEtLjYgMi4xIC4yIDMuMSAuNmwxNC44IDYuMWMyIC44IDMuNSAyLjQgNC4zIDQuM3MuOCA0LjIgMCA2LjF6bTYuOS02N2wtMTYgMGMtMi4xIDAtNC4yLS44LTUuNy0yLjNzLTIuMy0zLjUtMi4zLTUuNyAuOC00LjIgMi4zLTUuNyAzLjUtMi4zIDUuNy0yLjNsMTYgMGMyLjEgMCA0LjIgLjggNS43IDIuM3MyLjMgMy41IDIuMyA1LjctLjggNC4yLTIuMyA1LjctMy41IDIuMy01LjcgMi4zeiJdfSxZMnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic3BhY2UtYXdlc29tZSIsaWNvbjpbNTEyLDUxMixbXSwiZTVhYyIsIk05NiAyNTZsMzIgMCAwIDI1Ni0xMjggMCAwLTE2MCAzMiAwIDAtMzIgMzIgMCAwLTMyIDMyIDAgMC0zMnptNDE2IDk2bDAgMTYwLTEyOCAwIDAtMjU2IDMyIDAgMCAzMiAzMiAwIDAgMzIgMzIgMCAwIDMyIDMyIDB6TTMyMCA2NGwzMiAwIDAgMzg0LTMyIDAgMC0zMi0xMjggMCAwIDMyLTMyIDAgMC0zODQgMzIgMCAwLTMyIDMyIDAgMC0zMiA2NCAwIDAgMzIgMzIgMCAwIDMyem0tMzIgNjRsLTY0IDAgMCA2NCA2NCAwIDAtNjR6Il19LFoycj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJub2RlIixpY29uOls2NDAsNTEyLFtdLCJmNDE5IiwiTTMxNi4zIDQ1MmMtMi4xIDAtNC4yLS42LTYuMS0xLjZMMjkxIDQzOWMtMi45LTEuNi0xLjUtMi4yLS41LTIuNSAzLjgtMS4zIDQuNi0xLjYgOC43LTQgLjQtLjIgMS0uMSAxLjQgLjFsMTQuOCA4LjhjLjUgLjMgMS4zIC4zIDEuOCAwTDM3NSA0MDhjLjUtLjMgLjktLjkgLjktMS42bDAtNjYuN2MwLS43LS4zLTEuMy0uOS0xLjZsLTU3LjgtMzMuM2MtLjUtLjMtMS4yLS4zLTEuOCAwbC01Ny44IDMzLjNjLS42IC4zLS45IDEtLjkgMS42bDAgNjYuN2MwIC42IC40IDEuMiAuOSAxLjVsMTUuOCA5LjFjOC42IDQuMyAxMy45LS44IDEzLjktNS44bDAtNjUuOWMwLS45IC43LTEuNyAxLjctMS43bDcuMyAwYy45IDAgMS43IC43IDEuNyAxLjdsMCA2NS45YzAgMTEuNS02LjIgMTgtMTcuMSAxOC0zLjMgMC02IDAtMTMuMy0zLjZsLTE1LjItOC43Yy0zLjctMi4yLTYuMS02LjItNi4xLTEwLjVsMC02Ni43YzAtNC4zIDIuMy04LjQgNi4xLTEwLjVsNTcuOC0zMy40YzMuNy0yLjEgOC41LTIuMSAxMi4xIDBsNTcuOCAzMy40YzMuNyAyLjIgNi4xIDYuMiA2LjEgMTAuNWwwIDY2LjdjMCA0LjMtMi4zIDguNC02LjEgMTAuNWwtNTcuOCAzMy40Yy0xLjcgMS4xLTMuOCAxLjctNiAxLjd6TTM2MyAzODYuMmMwLTEyLjUtOC40LTE1LjgtMjYuMi0xOC4yLTE4LTIuNC0xOS44LTMuNi0xOS44LTcuOCAwLTMuNSAxLjUtOC4xIDE0LjgtOC4xIDExLjkgMCAxNi4zIDIuNiAxOC4xIDEwLjYgLjIgLjggLjggMS4zIDEuNiAxLjNsNy41IDBjLjUgMCAuOS0uMiAxLjItLjUgLjMtLjQgLjUtLjggLjQtMS4zLTEuMi0xMy44LTEwLjMtMjAuMi0yOC44LTIwLjItMTYuNSAwLTI2LjMgNy0yNi4zIDE4LjYgMCAxMi43IDkuOCAxNi4xIDI1LjYgMTcuNyAxOC45IDEuOSAyMC40IDQuNiAyMC40IDguMyAwIDYuNS01LjIgOS4yLTE3LjQgOS4yLTE1LjMgMC0xOC43LTMuOC0xOS44LTExLjQtLjEtLjgtLjgtMS40LTEuNy0xLjRsLTcuNSAwYy0uOSAwLTEuNyAuNy0xLjcgMS43IDAgOS43IDUuMyAyMS4zIDMwLjYgMjEuMyAxOC41IDAgMjktNy4yIDI5LTE5Ljh6bTU0LjUtNTAuMWMwIDYuMS01IDExLjEtMTEuMSAxMS4xcy0xMS4xLTUtMTEuMS0xMS4xYzAtNi4zIDUuMi0xMS4xIDExLjEtMTEuMSA2LS4xIDExLjEgNC44IDExLjEgMTEuMXptLTEuOCAwYzAtNS4yLTQuMi05LjMtOS40LTkuMy01LjEgMC05LjMgNC4xLTkuMyA5LjNzNC4yIDkuNCA5LjMgOS40YzUuMi0uMSA5LjQtNC4zIDkuNC05LjR6bS00LjUgNi4ybC0yLjYgMGMtLjEtLjYtLjUtMy44LS41LTMuOS0uMi0uNy0uNC0xLjEtMS4zLTEuMWwtMi4yIDAgMCA1LTIuNCAwIDAtMTIuNSA0LjMgMGMxLjUgMCA0LjQgMCA0LjQgMy4zIDAgMi4zLTEuNSAyLjgtMi40IDMuMSAxLjcgLjEgMS44IDEuMiAyLjEgMi44IC4xIDEgLjMgMi43IC42IDMuM3ptLTIuOC04LjhjMC0xLjctMS4yLTEuNy0xLjgtMS43bC0yIDAgMCAzLjUgMS45IDBjMS42IDAgMS45LTEuMSAxLjktMS44ek0xMzcuMyAxOTFjMC0yLjctMS40LTUuMS0zLjctNi40TDcyLjMgMTQ5LjNjLTEtLjYtMi4yLS45LTMuNC0xbC0uNiAwYy0xLjIgMC0yLjMgLjQtMy40IDFMMy43IDE4NC42QzEuNCAxODUuOSAwIDE4OC40IDAgMTkxbC4xIDk1YzAgMS4zIC43IDIuNSAxLjggMy4yczIuNSAuNyAzLjcgMEw0MiAyNjguM2MyLjMtMS40IDMuNy0zLjggMy43LTYuNGwwLTQ0LjRjMC0yLjYgMS40LTUuMSAzLjctNi40bDE1LjUtOC45YzEuMi0uNyAyLjQtMSAzLjctMXMyLjYgLjMgMy43IDFsMTUuNSA4LjljMi4zIDEuMyAzLjcgMy44IDMuNyA2LjRsMCA0NC40YzAgMi42IDEuNCA1LjEgMy43IDYuNGwzNi40IDIwLjljMS4xIC43IDIuNiAuNyAzLjcgMCAxLjEtLjYgMS44LTEuOSAxLjgtMy4ybC4yLTk1ek00NzIuNSA4Ny4zbDAgMTc2LjRjMCAyLjYtMS40IDUuMS0zLjcgNi40bC02MS4zIDM1LjRjLTIuMyAxLjMtNS4xIDEuMy03LjQgMGwtNjEuMy0zNS40Yy0yLjMtMS4zLTMuNy0zLjgtMy43LTYuNGwwLTcwLjhjMC0yLjYgMS40LTUuMSAzLjctNi40bDYxLjMtMzUuNGMyLjMtMS4zIDUuMS0xLjMgNy40IDBsMTUuMyA4LjhjMS43IDEgMy45LS4zIDMuOS0yLjJsMC05NGMwLTIuOCAzLTQuNiA1LjUtMy4ybDM2LjUgMjAuNGMyLjMgMS4yIDMuOCAzLjcgMy44IDYuNHptLTQ2IDEyOC45YzAtLjctLjQtMS4zLS45LTEuNmwtMjEtMTIuMmMtLjYtLjMtMS4zLS4zLTEuOSAwbC0yMSAxMi4yYy0uNiAuMy0uOSAuOS0uOSAxLjZsMCAyNC4zYzAgLjcgLjQgMS4zIC45IDEuNmwyMSAxMi4xYy42IC4zIDEuMyAuMyAxLjggMGwyMS0xMi4xYy42LS4zIC45LS45IC45LTEuNmwwLTI0LjMgLjEgMHptMjA5LjgtLjdjMi4zLTEuMyAzLjctMy44IDMuNy02LjRsMC0xNy4xYzAtMi42LTEuNC01LjEtMy43LTYuNGwtNjAuOS0zNS40Yy0yLjMtMS4zLTUuMS0xLjMtNy40IDBsLTYxLjMgMzUuNGMtMi4zIDEuMy0zLjcgMy44LTMuNyA2LjRsMCA3MC44YzAgMi43IDEuNCA1LjEgMy43IDYuNGw2MC45IDM0LjdjMi4yIDEuMyA1IDEuMyA3LjMgMGwzNi44LTIwLjVjMi41LTEuNCAyLjUtNSAwLTYuNEw1NTAgMjQxLjZjLTEuMi0uNy0xLjktMS45LTEuOS0zLjJsMC0yMi4yYzAtMS4zIC43LTIuNSAxLjktMy4ybDE5LjItMTEuMWMxLjEtLjcgMi42LS43IDMuNyAwTDU5Mi4xIDIxM2MxLjEgLjcgMS45IDEuOSAxLjkgMy4ybDAgMTcuNGMwIDIuOCAzLjEgNC42IDUuNiAzLjJsMzYuNy0yMS4zek01NTkgMjE5Yy0uNCAuMy0uNyAuNy0uNyAxLjJsMCAxMy42YzAgLjUgLjMgMSAuNyAxLjJsMTEuOCA2LjhjLjQgLjMgMSAuMyAxLjQgMEw1ODQgMjM1Yy40LS4zIC43LS43IC43LTEuMmwwLTEzLjZjMC0uNS0uMy0xLS43LTEuMmwtMTEuOC02LjhjLS40LS4zLTEtLjMtMS40IDBMNTU5IDIxOXpNMzA0LjggMjYyLjVsMC03MC40YzAtMi42LTEuNi01LjEtMy45LTYuNGwtNjEuMS0zNS4yYy0yLjEtMS4yLTUtMS40LTcuNCAwbC02MS4xIDM1LjJjLTIuMyAxLjMtMy45IDMuNy0zLjkgNi40bDAgNzAuNGMwIDIuOCAxLjkgNS4yIDQgNi40bDYxLjIgMzUuMmMyLjQgMS40IDUuMiAxLjMgNy40IDBsNjEtMzUuMmMxLjgtMSAzLjEtMi43IDMuNi00LjcgLjEtLjUgLjItMS4xIC4yLTEuN3pNMjMwLjUgMTM3LjZsLS44IC41IDEuMSAwLS4zLS41em03Ni4yIDEzMC4ybC0uNC0uNyAwIC45IC40LS4yeiJdfSxYMnI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiY29kZXBlbiIsaWNvbjpbNTEyLDUxMixbXSwiZjFjYiIsIk01MDIuMyAxNTkuN2wtMjM0LTE1NmMtOC00LjktMTYuNS01LTI0LjYgMGwtMjM0IDE1NmMtNiA0LTkuNyAxMS4xLTkuNyAxOC4zTDAgMzM0YzAgNy4xIDMuNyAxNC4zIDkuNyAxOC4zbDIzNCAxNTZjOCA0LjkgMTYuNSA1IDI0LjYgMGwyMzQtMTU2YzYtNCA5LjctMTEuMSA5LjctMTguM2wwLTE1NmMwLTcuMS0zLjctMTQuMy05LjctMTguM3pNMjc4IDYzLjFsMTcyLjMgMTE0LjktNzYuOSA1MS40LTk1LjQtNjMuNyAwLTEwMi42em0tNDQgMEwyMzQgMTY1LjcgMTM4LjYgMjI5LjQgNjEuNyAxNzggMjM0IDYzLjF6TTQ0IDIxOS4xTDk5LjEgMjU2IDQ0IDI5Mi44IDQ0IDIxOS4xek0yMzQgNDQ4LjhMNjEuNyAzMzQgMTM4LjYgMjgyLjYgMjM0IDM0Ni4zIDIzNCA0NDguOHpNMjU2IDMwOGwtNzcuNy01MiA3Ny43LTUyIDc3LjcgNTItNzcuNyA1MnptMjIgMTQwLjlsMC0xMDIuNiA5NS40LTYzLjcgNzYuOSA1MS40LTE3Mi4zIDExNC45em0xOTAtMTU2bC01NS4xLTM2LjkgNTUuMS0zNi45IDAgNzMuN3oiXX0sUTJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InJhdmVscnkiLGljb246WzUxMiw1MTIsW10sImYyZDkiLCJNNDk4LjYgMjM0LjJjLTEuMi0xMC4zLTEuNy0yMC44LTMuNy0zMS0yLjUtMTIuNC01LjctMjQuNi05LjYtMzYuNi02LjgtMjAuOS0xNy4yLTQwLjMtMzAuOS01Ny41LTUuOS03LjYtMTIuMS0xNC44LTE4LjgtMjEuNy0xNC4xLTE0LTMwLTI2LjEtNDcuMS0zNi4xLTE3LjgtMTAuNi0zNi44LTE4LjktNTYuNy0yNC43LTExLTMuMS0yMi4zLTUuNC0zMy41LTcuNi02LjgtMS4zLTEzLjctMS43LTIwLjYtMi41LS4zIDAtLjYtLjQtLjktLjYtMTAuOCAwLTIxLjUgMC0zMi4zIDAtMi40IC40LTQuOCAuOS03LjIgMS4yLTExLjYgMS4yLTIzLjEgMy42LTM0LjMgNy4xLTEzLjggNC4xLTI3LjEgOS42LTM5LjggMTYuNC0xMy4zIDctMjYuMSAxNS4xLTM4LjEgMjQuMi02LjIgNC42LTEyLjMgOS40LTE4IDE0LjUtMTAuMiA5LjItMjAuNCAxOC40LTI5LjkgMjguMy0xMi44IDEzLjMtMjQuMSAyOC4xLTMzLjYgNDQtOC42IDE0LTE1LjUgMjktMjAuNSA0NC42LTcuMiAyMi43LTEwLjMgNDYuNi05LjIgNzAuMyAuNiAxMy41IDIgMjYuOSA0LjQgNDAuMiAzLjQgMTguNCA5IDM2LjMgMTYuNyA1My4zIDEzLjYgMjkuMiAzMi4xIDUxLjUgNTAuNCA2Ny45IDEyLjggMTEuNiAyNi44IDIxLjkgNDEuOCAzMC42IDE3LjcgMTAuNCAzNi40IDE4LjkgNTUuOSAyNS4zIDEzLjMgNC4zIDI2LjkgNy42IDQwLjYgOS44IDYuMSAxIDEyLjMgMS4zIDE4LjQgMS45IC40IC4xIC44IC4zIDEuMiAuNmwzMi4zIDBjMi41LS40IDUtLjkgNy41LTEuMSAxNi4zLTEuMyAzMi4xLTUuMyA0Ny41LTEwLjcgMTcuMi01LjkgMzMuNy0xMy45IDQ5LTIzLjggOS43LTYuNCAxOS40LTEzLjEgMjguNy0yMC4xIDUuOC00LjMgMTEtOS41IDE2LjMtMTQuNSA0LTMuNyA3LjgtNy42IDExLjUtMTEuNSAxMi0xMi43IDIyLjYtMjYuNiAzMS40LTQxLjYgOS41LTE2IDE3LjQtMzIuOSAyMi4zLTUwLjkgMi45LTEwLjQgNC45LTIxIDctMzEuNyAxLTUuMyAxLjMtMTAuNyAxLjktMTYuMSAwLS4zIC40LS42IC42LS45bDAtMzcuMWMtLjItLjYtLjQtMS4yLS42LTEuOHptLTE2MS4xLTEuMnMtMTYuNi0zLTI4LjUtM2MtMjcuMiAwLTMzLjYgMTQuOS0zMy42IDM3bDAgOTMuNy03My41IDAgMC0xOTAuNyA3My41IDAgMCAzMS45YzguOS0yNi44IDI2LjgtMzYuMiA2Mi0zNi4ybDAgNjcuM3oiXX0sSzJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImFsaXBheSIsaWNvbjpbNDQ4LDUxMixbXSwiZjY0MiIsIk0zNzcuNyAzMkw3MC4zIDMyQzMxLjQgMzIgMCA2My40IDAgMTAyLjNMMCA0MDkuN0MwIDQ0OC42IDMxLjQgNDgwIDcwLjMgNDgwbDMwNy41IDBjMzguNSAwIDY5LjgtMzEuMSA3MC4zLTY5LjYtNDYtMjUuNi0xMTAuNi02MC4zLTE3MS42LTg4LjQtMzIuMSA0NC04NC4xIDgxLTE0OC42IDgxLTcwLjYgMC05My43LTQ1LjMtOTctNzYuNC00LTM5IDE0LjktODEuNSA5OS41LTgxLjUgMzUuNCAwIDc5LjQgMTAuMiAxMjcuMSAyNSAxNi41LTMwLjEgMjYuNS02MC4zIDI2LjUtNjAuM2wtMTc4LjIgMCAwLTE2LjcgOTIuMSAwIDAtMzEuMi0xMDkuNCAwIDAtMTkgMTA5LjQgMCAwLTUwLjQgNTAuOSAwIDAgNTAuNCAxMDkuNCAwIDAgMTktMTA5LjQgMCAwIDMxLjIgODguOCAwcy0xNS4yIDQ2LjYtMzguMyA5MC45YzQ4LjkgMTYuNyAxMDAgMzYgMTQ4LjYgNTIuN2wwLTIzNC40Yy4yLTM4LjctMzEuMi03MC4zLTY5LjktNzAuM3pNNDcuMyAzMjNjMSAyMC4yIDEwLjIgNTMuNyA2OS45IDUzLjcgNTIuMSAwIDkyLjYtMzkuNyAxMTcuOS03Mi45LTQ0LjYtMTguNy04NC41LTMxLjQtMTA5LjQtMzEuNC02Ny40IDAtNzkuNCAzMy4xLTc4LjQgNTAuNnoiXX0sSjJyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImNjLWFtZXgiLGljb246WzU3Niw1MTIsW10sImYxZjMiLCJNMCA0MzJjMCAyNi41IDIxLjUgNDggNDggNDhsNDgwIDBjMjYuNSAwIDQ4LTIxLjUgNDgtNDhsMC0xLjEtNjEuNyAwLTMxLjktMzUuMS0zMS45IDM1LjEtMjAzLjcgMCAwLTE2My44LTY1LjggMCA4MS43LTE4NC43IDc4LjYgMCAyOC4xIDYzLjIgMC02My4yIDk3LjIgMCAxNi45IDQ3LjYgMTctNDcuNiA3NS41IDAgMC0yLjRjMC0yNi41LTIxLjUtNDgtNDgtNDhMNDggMzJDMjEuNSAzMiAwIDUzLjUgMCA4MEwwIDQzMnptNDQwLjQtMjEuN2w0Mi4yLTQ2LjMgNDIgNDYuMyA1MS40IDAtNjgtNzIuMSA2OC03Mi4xLTUwLjYgMC00MiA0Ni43LTQxLjUtNDYuNy01MS40IDAgNjcuNSA3Mi41LTY3LjQgNzEuNiAwLTMzLjEtODMgMCAwLTIyLjIgODAuOSAwIDAtMzIuMy04MC45IDAgMC0yMi40IDgzIDAgMC0zMy4xLTEyMiAwIDAgMTQzLjIgMTcxLjggMHptOTYuMy03MmwzOS4zIDQxLjkgMC04My4zLTM5LjMgNDEuNHptLTM2LjMtOTJsMzYuOS0xMDAuNiAwIDEwMC42IDM4LjcgMCAwLTE0My4zLTYwLjIgMC0zMi4yIDg5LjMtMzEuOS04OS4zLTYxLjIgMCAwIDE0My4xLTYzLjItMTQzLjEtNTEuMiAwLTYyLjQgMTQzLjMgNDMgMCAxMS45LTI4LjcgNjUuOSAwIDEyIDI4LjcgODIuNyAwIDAtMTAwLjMgMzYuOCAxMDAuMyAzNC40IDB6TTI4MiAxODUuNGwxOS41LTQ2LjkgMTkuNCA0Ni45LTM4LjkgMHoiXX0sZWxyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InBpZWQtcGlwZXItYWx0IixpY29uOls1NzYsNTEyLFtdLCJmMWE4IiwiTTI0NCAyNDZjLTMuMi0yLTYuMy0yLjktMTAuMS0yLjktNi42IDAtMTIuNiAzLjItMTkuMyAzLjdsMS43IDQuOSAyNy43LTUuN3pNMzc5LjkgNDQzLjljLTE5IDAtNjQuMSA5LjUtNzkuOSAxOS44bDYuOSA0NS4xYzM1LjcgNi4xIDcwLjEgMy42IDEwNi05LjgtNC44LTEwLTIzLjUtNTUuMS0zMy01NS4xek0zNDAuOCAxNzdjNi42IDIuOCAxMS41IDkuMiAyMi43IDIyLjEgMi0xLjQgNy41LTUuMiA3LjUtOC42IDAtNC45LTExLjgtMTMuMi0xMy4yLTIzIDExLjItNS43IDI1LjItNiAzNy42LTguOSA2OC4xLTE2LjQgMTE2LjMtNTIuOSAxNDYuOC0xMTYuNyA2LjEtMTIuNiAxMS44LTI1LjggMTIuNC0zOS45bC0yIDIuNmMtMjguNCA1MC0zMyA2My4yLTgxLjMgMTAwLTMxLjkgMjQuNC02OS4yIDQwLjItMTA2LjYgNTQuNmwtNi4zLS4zIDAtMjEuOGMtMTkuNiAxLjYtMTkuNy0xNC42LTMxLjYtMjMtMTguNyAyMC42LTMxLjYgNDAuOC01OC45IDUxLjEtMTIuNyA0LjgtMTkuNiAxMC0yNS45IDIxLjggMzQuOS0xNi40IDkxLjItMTMuNSA5OC44LTEwek01NTUuNSAwbC0uNiAxLjEtLjMgLjkgLjYtLjYgLjMtMS40ek00OTYuMyAzODIuMWMtMzMuOS01Ni45LTc1LjMtMTE4LjQtMTUwLTExNS41bC0uMy02Yy0xLjEtMTMuNSAzMi44IDMuMiAzNS4xLTMxbC0xNC40IDcuMmMtMTkuOC00NS43LTguNi01NC4zLTY1LjUtNTQuMy0xNC43IDAtMjYuNyAxLjctNDEuNCA0LjYgMi45IDE4LjYgMi4yIDM2LjctMTAuOSA1MC4zbDE5LjUgNS41Yy0xLjcgMy4yLTIuOSA2LjMtMi45IDkuOCAwIDIxIDQyLjggMi45IDQyLjggMzMuNiAwIDE4LjQtMzYuOCA2MC4xLTU0LjkgNjAuMS04IDAtNTMuNy01MC01My40LTYwLjFsLjMtNC42IDUyLjMtMTEuNWMxMy0yLjYgMTIuMy0yMi43LTIuOS0yMi43LTMuNyAwLTQzLjEgOS4yLTQ5LjQgMTAuNi0yLTUuMi03LjUtMTQuMS0xMy44LTE0LjEtMy4yIDAtNi4zIDMuMi05LjUgNC05LjIgMi42LTMxIDIuOS0yMS41IDIwLjFMMTUuOSAyOTguNWMtNS41IDEuMS04LjkgNi4zLTguOSAxMS44IDAgNiA1LjUgMTAuOSAxMS41IDEwLjkgOCAwIDEzMS4zLTI4LjQgMTQ3LjQtMzIuMiAyLjYgMy4yIDQuNiA2LjMgNy44IDguNiAyMC4xIDE0LjQgNTkuOCA4NS45IDc2LjQgODUuOSAyNC4xIDAgNTgtMjIuNCA3MS4zLTQxLjkgMy4yLTQuMyA2LjktNy41IDEyLjQtNi45IC42IDEzLjgtMzEuNiAzNC4yLTMzIDQzLjctMS40IDEwLjItMSAzNS4yLS4zIDQxLjEgMjYuNyA4LjEgNTItMy42IDc3LjktMi45IDQuMy0yMSAxMC42LTQxLjkgOS44LTYzLjVsLS4zLTkuNWMtMS40LTM0LjItMTAuOS0zOC41LTM0LjgtNTguNi0xLjEtMS4xLTIuNi0yLjYtMy43LTQgMi4yLTEuNCAxLjEtMSA0LjYtMS43IDg4LjUgMCA1Ni4zIDE4My42IDExMS41IDIyOS45IDMzLjEtMTUgNzIuNS0yNy45IDEwMy41LTQ3LjItMjktMjUuNi01Mi42LTQ1LjctNzIuNy03OS45ek0zMDAuMSA0MjguMmwwIDI3LjIgMTEuOC0zLjQtMi45LTIzLjgtOC45IDB6TTIzMS40IDI3Ny44bDI0LjEgNjEuMiAyMS0xMy44LTMxLjMtNTAuOS0xMy44IDMuNXptODQuNCAxNTQuOWwyIDEyLjRjOS0xLjUgNTguNC02LjYgNTguNC0xNC4xIDAtMS40LS42LTMuMi0uOS00LjYtMjYuOCAwLTM2LjkgMy44LTU5LjUgNi4zeiJdfSx0bHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToibGV0dGVyYm94ZCIsaWNvbjpbNjQwLDUxMixbXSwiZTYyZCIsIk01MjEuMyAxMjhDNTg2LjkgMTI4IDY0MCAxODEuMSA2NDAgMjQ2LjZTNTg2LjkgMzY1LjIgNTIxLjMgMzY1LjJjLTQyLjUgMC03OS43LTIyLjMtMTAwLjctNTUuOCAxMS40LTE4LjIgMTgtMzkuNyAxOC02Mi44cy02LjYtNDQuNi0xOC02Mi44bC44LTEuMmMyMC44LTMyLjMgNTYuOC01My45IDk3LjktNTQuNmwyIDB6TTMyMCAxMjhjNDIuNSAwIDc5LjcgMjIuMyAxMDAuNyA1NS44LTExLjQgMTguMi0xOCAzOS43LTE4IDYyLjhzNi42IDQ0LjYgMTggNjIuOGwtLjggMS4yYy0yMC44IDMyLjMtNTYuOCA1My45LTk3LjkgNTQuNmwtMiAwYy00Mi41IDAtNzkuNy0yMi4zLTEwMC43LTU1LjggMTEuNC0xOC4yIDE4LTM5LjcgMTgtNjIuOHMtNi42LTQ0LjYtMTgtNjIuOGwuOC0xLjJjMjAuOC0zMi4zIDU2LjgtNTMuOSA5Ny45LTU0LjZsMiAwem0tMjAxLjMgMGM0Mi41IDAgNzkuNyAyMi4zIDEwMC43IDU1LjgtMTEuNCAxOC4yLTE4IDM5LjctMTggNjIuOHM2LjYgNDQuNiAxOCA2Mi44bC0uOCAxLjJjLTIwLjggMzIuMy01Ni44IDUzLjktOTcuOSA1NC42bC0yIDBDNTMuMSAzNjUuMSAwIDMxMi4xIDAgMjQ2LjZTNTMuMSAxMjggMTE4LjcgMTI4eiJdfSxybHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToib3BlcmEiLGljb246WzUxMiw1MTIsW10sImYyNmEiLCJNMzIxLjkgMzIuN2MtMTcwLjIgMC0yNTIuNiAyMjMuOC0xNDcuNSAzNTUuMSAzNi41IDQ1LjQgODguNiA3NS42IDE0Ny41IDc1LjYgMzYuMyAwIDcwLjMtMTEuMSA5OS40LTMwLjQtNDMuOCAzOS4yLTEwMS45IDYzLTE2NS4zIDYzLTMuOSAwLTggMC0xMS45LS4zLTEzMS41LTYuMS0yMzYuMS0xMTQuNi0yMzYuMS0yNDcuNyAwLTEzNyAxMTEtMjQ4IDI0OC0yNDhsLjggMGM2My4xIC4zIDEyMC43IDI0LjEgMTY0LjQgNjMuMS0yOS0xOS40LTYzLjEtMzAuNC05OS4zLTMwLjR6TTQyMy43IDQzMC40Yy00MC45IDI0LjctOTAuNyAyMy42LTEzMi01LjggNTYuMi0yMC41IDk3LjctOTEuNiA5Ny43LTE3Ni42IDAtODQuNy00MS4yLTE1NS44LTk3LjQtMTc2LjYgNDEuOC0yOS4yIDkxLjItMzAuMyAxMzIuOS01IDEwNS45IDk4LjcgMTA1LjUgMjY1LjctMS4yIDM2NHoiXX0sYWxyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6IndlaWJvIixpY29uOls1MTIsNTEyLFtdLCJmMThhIiwiTTQwNyAxNzcuNmM3LjYtMjQtMTMuNC00Ni44LTM3LjQtNDEuNy0yMiA0LjgtMjguOC0yOC4xLTcuMS0zMi44IDUwLjEtMTAuOSA5Mi4zIDM3LjEgNzYuNSA4NC44LTYuOCAyMS4yLTM4LjggMTAuOC0zMi0xMC4zek0yMTQuOCA0NDYuN2MtMTA2LjMgMC0yMTQuOC01MS40LTIxNC44LTEzNi4zIDAtNDQuMyAyOC05NS40IDc2LjMtMTQzLjcgOTkuNy05OS43IDIwMy4yLTEwMC45IDE3My42LTUuNy00IDEzLjEgMTIuMyA1LjcgMTIuMyA2IDc5LjUtMzMuNiAxNDAuNS0xNi44IDExNCA1MS40LTMuNyA5LjQgMS4xIDEwLjkgOC4zIDEzLjEgMTM1LjcgNDIuMyAzNC44IDIxNS4yLTE2OS43IDIxNS4yek0zNTguNSAzMDAuNGMtNS40LTU1LjctNzguNS05NC0xNjMuNC04NS43LTg0LjggOC42LTE0OC44IDYwLjMtMTQzLjQgMTE2czc4LjUgOTQgMTYzLjQgODUuN2M4NC44LTguNiAxNDguOC02MC4zIDE0My40LTExNnpNMzQ3LjkgMzUuMWMtMjUuOSA1LjYtMTYuOCA0My43IDguMyAzOC4zIDcyLjMtMTUuMiAxMzQuOCA1Mi44IDExMS43IDEyNC03LjQgMjQuMiAyOS4xIDM3IDM3LjQgMTIgMzEuOS05OS44LTU1LjEtMTk1LjktMTU3LjQtMTc0LjN6bS03OC41IDMxMWMtMTcuMSAzOC44LTY2LjggNjAtMTA5LjEgNDYuMy00MC44LTEzLjEtNTgtNTMuNC00MC4zLTg5LjcgMTcuNy0zNS40IDYzLjEtNTUuNCAxMDMuNC00NS4xIDQyIDEwLjggNjMuMSA1MC4yIDQ2IDg4LjV6bS04Ni4zLTMwYy0xMi45LTUuNC0zMCAuMy0zOCAxMi45LTguMyAxMi45LTQuMyAyOCA4LjYgMzQgMTMuMSA2IDMwLjggLjMgMzkuMS0xMi45IDgtMTMuMSAzLjctMjguMy05LjctMzR6bTMyLjYtMTMuNGMtNS4xLTEuNy0xMS40IC42LTE0LjMgNS40LTIuOSA1LjEtMS40IDEwLjYgMy43IDEyLjkgNS4xIDIgMTEuNy0uMyAxNC42LTUuNCAyLjgtNS4yIDEuMS0xMC45LTQtMTIuOXoiXX0saWxyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InJlYWRtZSIsaWNvbjpbNTc2LDUxMixbXSwiZjRkNSIsIk01MjguMyA0Ni41bC0xMzkuOCAwYy00OC4xIDAtODkuOSAzMy4zLTEwMC40IDgwLjMtMTAuNi00Ny01Mi4zLTgwLjMtMTAwLjQtODAuM0w0OCA0Ni41QzIxLjUgNDYuNSAwIDY4IDAgOTQuNUwwIDM0MC4zYzAgMjYuNSAyMS41IDQ4IDQ4IDQ4bDg5LjcgMGMxMDIuMiAwIDEzMi43IDI0LjQgMTQ3LjMgNzUgLjcgMi44IDUuMiAyLjggNiAwIDE0LjctNTAuNiA0NS4yLTc1IDE0Ny4zLTc1bDg5LjcgMGMyNi41IDAgNDgtMjEuNSA0OC00OGwwLTI0NS43YzAtMjYuNC0yMS4zLTQ3LjktNDcuNy00OC4xek0yNDIgMzExLjljMCAxLjktMS41IDMuNS0zLjUgMy41bC0xNjAuMyAwYy0xLjkgMC0zLjUtMS41LTMuNS0zLjVsMC0yMi45YzAtMS45IDEuNS0zLjUgMy41LTMuNWwxNjAuNCAwYzEuOSAwIDMuNSAxLjUgMy41IDMuNWwwIDIyLjktLjEgMHptMC02MC45YzAgMS45LTEuNSAzLjUtMy41IDMuNWwtMTYwLjMgMGMtMS45IDAtMy41LTEuNS0zLjUtMy41bDAtMjIuOWMwLTEuOSAxLjUtMy41IDMuNS0zLjVsMTYwLjQgMGMxLjkgMCAzLjUgMS41IDMuNSAzLjVsMCAyMi45LS4xIDB6bTAtNjAuOWMwIDEuOS0xLjUgMy41LTMuNSAzLjVsLTE2MC4zIDBjLTEuOSAwLTMuNS0xLjUtMy41LTMuNWwwLTIyLjljMC0xLjkgMS41LTMuNSAzLjUtMy41bDE2MC40IDBjMS45IDAgMy41IDEuNSAzLjUgMy41bDAgMjIuOS0uMSAwek01MDEuMyAzMTEuOGMwIDEuOS0xLjUgMy41LTMuNSAzLjVsLTE2MC4zIDBjLTEuOSAwLTMuNS0xLjUtMy41LTMuNWwwLTIyLjljMC0xLjkgMS41LTMuNSAzLjUtMy41bDE2MC40IDBjMS45IDAgMy41IDEuNSAzLjUgMy41bDAgMjIuOS0uMSAwem0wLTYwLjljMCAxLjktMS41IDMuNS0zLjUgMy41bC0xNjAuMyAwYy0xLjkgMC0zLjUtMS41LTMuNS0zLjVsMC0yMi45YzAtMS45IDEuNS0zLjUgMy41LTMuNWwxNjAuNCAwYzEuOSAwIDMuNSAxLjUgMy41IDMuNWwwIDIyLjktLjEgMHptMC02MC45YzAgMS45LTEuNSAzLjUtMy41IDMuNWwtMTYwLjMgMGMtMS45IDAtMy41LTEuNS0zLjUtMy41bDAtMjIuOGMwLTEuOSAxLjUtMy41IDMuNS0zLjVsMTYwLjQgMGMxLjkgMCAzLjUgMS41IDMuNSAzLjVsMCAyMi44LS4xIDB6Il19LG9scj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJnb2xhbmciLGljb246WzY0MCw1MTIsW10sImU0MGYiLCJNNDAwLjEgMTk0LjhjLTEwLjkgMi44LTE5LjkgNC4zLTI5LjEgNy42LTcuMyAxLjktMTQuNyAzLjktMjMuMiA2LjFsLS42IC4xYy00LjIgMS4yLTQuNiAxLjMtOC41LTMuMi00LjctNS4zLTguMS04LjctMTQuNi0xMS45LTE5LjctOS42LTM4LjctNi44LTU2LjQgNC43LTIxLjIgMTMuNy0zMi4xIDM0LTMxLjggNTkuMiAuMyAyNSAxNy40IDQ1LjUgNDEuMiA0OC45IDIyIDIuOCAzOS44LTQuNiA1My44LTIwLjUgMi4xLTIuNiA0LTUuMyA2LjEtOC4zIC44LTEgMS41LTIuMSAyLjMtMy4zbC02MC4xIDBjLTYuNSAwLTguMS00LTUuOS05LjMgNC05LjcgMTEuNS0yNS45IDE1LjktMzQgLjktMS44IDMuMS01LjggNi45LTUuOGwxMDEuMSAwYzQuNS0xMy40IDExLjgtMjYuOSAyMS42LTM5LjcgMjIuNy0yOS45IDQ5LjMtNDUuNSA4Ny4yLTUyIDMxLjgtNS42IDYxLjctMi41IDg4LjkgMTUuOSAyNC42IDE2LjggMzkuOCAzOS42IDQzLjkgNjkuNSA1LjMgNDIuMS02LjkgNzYuMy0zNi43IDEwNS42LTE5LjcgMjAuOS00NC45IDM0LTczLjkgMzkuOS01LjYgMS0xMS4xIDEuNS0xNi41IDItMi45IC4yLTUuNyAuNS04LjUgLjgtMjguMy0uNi01NC4yLTguNy03Ni0yNy40LTE1LjMtMTMuMy0yNS45LTI5LjYtMzEuMS00OC41LTMuNyA3LjMtOCAxNC40LTE0IDIxLjEtMjEuNiAyOS42LTUwLjkgNDgtODcuOSA1Mi45LTMwLjYgNC4xLTU4LjktMS44LTgzLjktMjAuNS0yMy0xNy41LTM2LjEtNDAuNS0zOS41LTY5LjItNC4xLTM0IDUuOS02NS40IDI2LjQtOTEuMyAyMi4yLTI5IDUxLjUtNDcuNCA4Ny4zLTUzLjkgMjkuMy02LjIgNTcuMy0xLjkgODIuNiAxNS4zIDE2LjUgMTAuOSAyOC4zIDI1LjggMzYuMSA0My45IDEuOSAyLjggLjYgNC40LTMuMSA1LjN6TTQ4LjMgMjAwLjRjLTEuMyAwLTEuNi0uNi0uOS0xLjZsNi42LTguNGMuNi0uOSAyLjItMS41IDMuNC0xLjVsMTExLjMgMGMxLjIgMCAxLjUgLjkgLjkgMS44bC01LjMgOC4xYy0uNiAxLTIuMiAxLjktMy4xIDEuOWwtMTEyLjgtLjN6TTEuMiAyMjkuMWMtMS4yIDAtMS42LS43LS45LTEuNmw2LjUtOC40Yy42LS45IDIuMi0xLjYgMy40LTEuNmwxNDIuMSAwYzEuMiAwIDEuOCAxIDEuNSAxLjlsLTIuNSA3LjVjLS4zIDEuMi0xLjUgMS45LTIuOCAxLjlMMS4yIDIyOS4xem03NC41IDI2LjhjLS42IC45LS4zIDEuOCAuOSAxLjhsNjggLjNjLjkgMCAyLjItLjkgMi4yLTIuMWwuNi03LjVjMC0xLjMtLjYtMi4yLTEuOS0yLjJsLTYyLjMgMGMtMS4yIDAtMi41IC45LTMuMSAxLjlsLTQuNCA3Ljh6bTUwMS41LTE4Yy0uMi0yLjYtLjMtNC44LS43LTctNS42LTMwLjgtMzQtNDguMy02My42LTQxLjQtMjkgNi41LTQ3LjcgMjQuOS01NC41IDU0LjItNS42IDI0LjMgNi4yIDQ4LjkgMjguNiA1OC45IDE3LjIgNy41IDM0LjMgNi42IDUwLjgtMS45IDI0LjYtMTMuNiAzOC0zMi43IDM5LjYtNTkuNS0uMS0xLjItLjEtMi4zLS4yLTMuM3oiXX0sbmxyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InN0YWNrLWV4Y2hhbmdlIixpY29uOls0NDgsNTEyLFtdLCJmMThkIiwiTTE4LjEgMzMyLjNsNDEyLjcgMCAwIDIyYzAgMzcuNy0yOS4zIDY4LTY1LjMgNjhsLTE5IDAtODYuOCA4OS43IDAtODkuNy0xNzYuMyAwYy0zNiAwLTY1LjMtMzAuMy02NS4zLTY4bDAtMjJ6bTAtMjMuNmw0MTIuNyAwIDAtODUtNDEyLjcgMCAwIDg1em0wLTEwOS40bDQxMi43IDAgMC04NS00MTIuNyAwIDAgODV6TTM2NS40IDBMODMuNCAwYy0zNiAwLTY1LjMgMzAuMy02NS4zIDY3LjdsMCAyMi4zIDQxMi43IDAgMC0yMi4zQzQzMC43IDMwLjMgNDAxLjQgMCAzNjUuNCAweiJdfSxzbHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZ3VscCIsaWNvbjpbMjU2LDUxMixbXSwiZjNhZSIsIk0yMTAgMzkxLjFsLTE0LjEgMjQuNi00LjYgODAuMmMwIDguOS0yOC4zIDE2LjEtNjMuMSAxNi4xcy02My4xLTcuMi02My4xLTE2LjFsLTUuOC03OS40LTE0LjktMjUuNGM0MS4yIDE3LjMgMTI2IDE2LjcgMTY1LjYgMHpNMTQgMTM3LjhMMjcuNiAyNjMuM2M1LjktMjAgMjAuOC00NyA0MC01NS4yIDYuMy0yLjcgMTIuNy0yLjcgMTguNyAuOSA1LjIgMyA5LjYgOS4zIDEwLjEgMTEuOCAxLjIgNi41LTIgOS4xLTQuNSA5LjEtMyAwLTUuMy00LjYtNi44LTcuMy00LjEtNy4zLTEwLjMtNy42LTE2LjktMi44LTYuOSA1LTEyLjkgMTMuNC0xNy4xIDIwLjctNS4xIDguOC05LjQgMTguNS0xMiAyOC4yLTEuNSA1LjYtMi45IDE0LjYtLjYgMTkuOSAxIDIuMiAyLjUgMy42IDQuOSAzLjYgNSAwIDEyLjMtNi42IDE1LjgtMTAuMSA0LjUtNC41IDEwLjMtMTEuNSAxMi41LTE2bDUuMi0xNS41YzIuNi02LjggOS45LTUuNiA5LjkgMCAwIDEwLjItMy43IDEzLjYtMTAgMzQuNy01LjggMTkuNS03LjYgMjUuOC03LjYgMjUuOC0uNyAyLjgtMy40IDcuNS02LjMgNy41LTEuMiAwLTIuMS0uNC0yLjYtMS4yLTEtMS40LS45LTUuMy0uOC02LjMgLjItMy4yIDYuMy0yMi4yIDcuMy0yNS4yLTIgMi4yLTQuMSA0LjQtNi40IDYuNi01LjQgNS4xLTE0LjEgMTEuOC0yMS41IDExLjgtMy40IDAtNS42LS45LTcuNy0yLjRsNy42IDc5LjZjMiA1IDM5LjIgMTcuMSA4OC4yIDE3LjEgNDkuMSAwIDg2LjMtMTIuMiA4OC4yLTE3LjFsMTAuOS05NC42Yy01LjcgNS4yLTEyLjMgMTEuNi0xOS42IDE0LjgtNS40IDIuMy0xNy40IDMuOC0xNy40LTUuNyAwLTUuMiA5LjEtMTQuOCAxNC40LTIxLjUgMS40LTEuNyA0LjctNS45IDQuNy04LjEgMC0yLjktNi0yLjItMTEuNyAyLjUtMy4yIDIuNy02LjIgNi4zLTguNyA5LjctNC4zIDYtNi42IDExLjItOC41IDE1LjUtNi4yIDE0LjItNC4xIDguNi05LjEgMjItNSAxMy4zLTQuMiAxMS44LTUuMiAxNC0uOSAxLjktMi4yIDMuNS00IDQuNS0xLjkgMS00LjUgLjktNi4xLS4zLS45LS42LTEuMy0xLjktMS4zLTMuNyAwLS45IC4xLTEuOCAuMy0yLjcgMS41LTYuMSA3LjgtMTguMSAxNS0zNC4zIDEuNi0zLjcgMS0yLjYgLjgtMi4zLTYuMiA2LTEwLjkgOC45LTE0LjQgMTAuNS01LjggMi42LTEzIDIuNi0xNC41LTQuMS0uMS0uNC0uMS0uOC0uMi0xLjItMTEuOCA5LjItMjQuMyAxMS43LTIwLTguMS00LjYgOC4yLTEyLjYgMTQuOS0yMi40IDE0LjktNC4xIDAtNy4xLTEuNC04LjYtNS4xLTIuMy01LjUgMS4zLTE0LjkgNC42LTIzLjggMS43LTQuNSA0LTkuOSA3LjEtMTYuMiAxLjYtMy40IDQuMi01LjQgNy42LTQuNSAuNiAuMiAxLjEgLjQgMS42IC43IDIuNiAxLjggMS42IDQuNSAuMyA3LjItMy44IDcuNS03LjEgMTMtOS4zIDIwLjgtLjkgMy4zLTIgOSAxLjUgOSAyLjQgMCA0LjctLjggNi45LTIuNCA0LjYtMy40IDguMy04LjUgMTEuMS0xMy41IDItMy42IDQuNC04LjMgNS42LTEyLjMgLjUtMS43IDEuMS0zLjMgMS44LTQuOCAxLjEtMi41IDIuNi01LjEgNS4yLTUuMSAxLjMgMCAyLjQgLjUgMy4yIDEuNSAxLjcgMi4yIDEuMyA0LjUgLjQgNi45LTIgNS42LTQuNyAxMC42LTYuOSAxNi43LTEuMyAzLjUtMi43IDgtMi43IDExLjcgMCAzLjQgMy43IDIuNiA2LjggMS4yIDIuNC0xLjEgNC44LTIuOCA2LjgtNC41IDEuMi00LjkgLjktMy44IDI2LjQtNjguMiAxLjMtMy4zIDMuNy00LjcgNi4xLTQuNyAxLjIgMCAyLjIgLjQgMy4yIDEuMSAxLjcgMS4zIDEuNyA0LjEgMSA2LjItLjcgMS45LS42IDEuMy00LjUgMTAuNS01LjIgMTIuMS04LjYgMjAuOC0xMy4yIDMxLjktMS45IDQuNi03LjcgMTguOS04LjcgMjIuMy0uNiAyLjItMS4zIDUuOCAxIDUuOCA1LjQgMCAxOS4zLTEzLjEgMjMuMS0xNyAuMi0uMyAuNS0uNCAuOS0uNiAuNi0xLjkgMS4yLTMuNyAxLjctNS41IDEuNC0zLjggMi43LTguMiA1LjMtMTEuMyAuOC0xIDEuNy0xLjYgMi43LTEuNiAyLjggMCA0LjIgMS4yIDQuMiA0IDAgMS4xLS43IDUuMS0xLjEgNi4yIDEuNC0xLjUgMi45LTMgNC41LTQuNSAxNS0xMy45IDI1LjctNi44IDI1LjcgLjIgMCA3LjQtOC45IDE3LjctMTMuOCAyMy40LTEuNiAxLjktNC45IDUuNC01IDYuNCAwIDEuMyAuOSAxLjggMi4yIDEuOCAyIDAgNi40LTMuNSA4LTQuNyA1LTMuOSAxMS44LTkuOSAxNi42LTE0LjFsMTQuOC0xMzYuOGMtMzAuNSAxNy4xLTE5Ny42IDE3LjItMjI4LjMgLjJ6bTIyOS43LTguNWMwIDIxLTIzMS4yIDIxLTIzMS4yIDAgMC04LjggNTEuOC0xNS45IDExNS42LTE1LjkgOSAwIDE3LjggLjEgMjYuMyAuNEwxNjcgNjUuMSAyMjguMyAuNmMxLjQtMS40IDUuOC0uMiA5LjkgMy41czYuNiA3LjkgNS4zIDkuM2wtLjEgLjEtNTcuMyA2MC41LTEwIDQwLjdjMzkuOSAyLjYgNjcuNiA4LjEgNjcuNiAxNC42em0tNjkuNCA0LjZjMC0uOC0uOS0xLjUtMi41LTIuMWwtLjIgLjhjMCAxLjMtNSAyLjQtMTEuMSAyLjRzLTExLjEtMS4xLTExLjEtMi40YzAtLjEgMC0uMiAuMS0uM2wuMi0uN2MtMS44IC42LTMgMS40LTMgMi4zIDAgMi4xIDYuMiAzLjcgMTMuNyAzLjcgNy43IC4xIDEzLjktMS42IDEzLjktMy43eiJdfSxsbHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToieWVscCIsaWNvbjpbMzg0LDUxMixbXSwiZjFlOSIsIk00Mi45IDI0MC4zbDk5LjYgNDguNmMxOS4yIDkuNCAxNi4yIDM3LjUtNC41IDQyLjdMMzAuNSAzNTguNWMtMy4yIC44LTYuNCAuOS05LjYgLjNzLTYuMi0xLjgtOC45LTMuNy00LjktNC4zLTYuNi03LjEtMi43LTUuOS0zLjEtOS4yYy0zLjMtMjguOC0uMi01Ny45IDktODUuMyAxLTMuMSAyLjctNS45IDQuOS04LjNzNC45LTQuMiA3LjktNS41IDYuMi0xLjggOS41LTEuOCA2LjQgLjkgOS4zIDIuM3ptNDQgMjM5LjNjMjMuOCAxNi4zIDUwLjkgMjcuMyA3OS40IDMyLjEgMy4yIC42IDYuNSAuNCA5LjYtLjRzNi4xLTIuMyA4LjYtNC40IDQuNi00LjYgNi03LjUgMi4zLTYuMSAyLjQtOS40bDMuOS0xMTAuOGMuNy0yMS4zLTI1LjUtMzEuOS0zOS44LTE2LjFMODIuOCA0NDUuNWMtMi4yIDIuNC0zLjggNS4zLTQuOCA4LjRzLTEuMyA2LjQtLjkgOS42IDEuNSA2LjMgMy4xIDkuMSAzLjkgNS4yIDYuNiA3bDAgMHpNMjMyLjIgMzY5LjdsNTguOCA5NGMxLjcgMi44IDQgNS4xIDYuOCA2LjlzNS44IDMgOSAzLjUgNi41IC4zIDkuNy0uNSA2LjEtMi40IDguNi00LjRjMjIuMy0xOC40IDQwLjMtNDEuNSA1Mi43LTY3LjYgMS40LTIuOSAyLjEtNi4xIDIuMi05LjRzLS42LTYuNS0xLjktOS40LTMuMi01LjctNS42LTcuOC01LjItMy45LTguMy00LjlMMjU4LjcgMzM1LjdjLTIwLjMtNi41LTM3LjggMTUuOC0yNi41IDMzLjl6TTM4MC42IDIzNy40Yy0xMS41LTI2LjUtMjguNy01MC4yLTUwLjQtNjkuMy0yLjQtMi4xLTUuMy0zLjctOC40LTQuN3MtNi40LTEuMi05LjYtLjgtNi4zIDEuNS05LjEgMy4yLTUuMSA0LTYuOSA2LjdsLTYyIDkxLjljLTExLjkgMTcuNyA0LjcgNDAuNiAyNS4yIDM0LjdMMzY2IDI2OC42YzMuMS0uOSA2LTIuNSA4LjUtNC42czQuNS00LjcgNS44LTcuNyAyLjEtNi4yIDIuMi05LjQtLjYtNi41LTEuOS05LjVsMCAwek02Mi4xIDMwLjJjLTIuOCAxLjQtNS40IDMuMy03LjQgNS43cy0zLjYgNS4yLTQuNSA4LjItMS4yIDYuMi0uOSA5LjMgMS4zIDYuMSAyLjkgOC45TDE1Ni4zIDI0Mi42YzExLjcgMjAuMiA0Mi42IDExLjkgNDIuNi0xMS40bDAtMjA4LjNjMC0zLjEtLjYtNi4zLTEuOC05LjJzLTMuMS01LjUtNS40LTcuNi01LTMuOC04LTQuOC02LjEtMS40LTkuMy0xLjJjLTM5IDMuMS03NyAxMy4zLTExMi4zIDMwLjF6Il19LGNscj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJnb2ZvcmUiLGljb246WzQ0OCw1MTIsW10sImYzYTciLCJNMzQ4IDMxOS44bC0xMy4yIDAgMCAzNC43Yy0yNC41IDIzLjEtNTYuMyAzNS44LTg5LjkgMzUuOC03My4yIDAtMTMyLjQtNjAuMi0xMzIuNC0xMzQuNCAwLTc0LjEgNTkuMi0xMzQuNCAxMzIuNC0xMzQuNCAzNS4zIDAgNjguNiAxNCA5My42IDM5LjRsNjIuMy02My4zYy00MS44LTQyLjMtOTcuMS02NS42LTE1Ni4xLTY1LjYtMTIyLjcgMC0yMjAuNyAxMDAuNi0yMjAuNyAyMjQgMCAxMjIuNSA5NyAyMjQgMjIwLjcgMjI0IDYzLjIgMCAxMjQuNS0yNi4yIDE3MS04Mi41LTItMjcuNi0xMy40LTc3LjctNjcuNy03Ny43ek0zMzUuOSAyMDcuM2wtMTA2LjMgMCAwIDg5IDExOC40IDBjMzMuNSAwIDYwLjUgMTUuMSA3NiA0MS44bDAtMzAuNmMwLTY1LjItNDAuNC0xMDAuMi04OC4xLTEwMC4yeiJdfSxkbHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiYXZpYXRvIixpY29uOls2NDAsNTEyLFtdLCJmNDIxIiwiTTEwNy4yIDI4My41bC0xOS00MS44LTUyLjEgMC0xOSA0MS44LTE3LjEgMCA2Mi4yLTEzMS40IDYyLjIgMTMxLjQtMTcuMiAwem0tNDUtOTguMWwtMTkuNiA0Mi41IDM5LjIgMC0xOS42LTQyLjV6TTE3NC45IDI4Ny44bC02Mi4yLTEzMS40IDE3LjEgMCA0NS4xIDk2IDQ1LjEtOTYgMTcgMC02Mi4xIDEzMS40em04MC42LTQuM2wwLTEyNy4xIDE1LjUgMCAwIDEyNy4xLTE1LjUgMHpNNDY0LjYgMTY3LjlsMCAxMTUuNi0xNy4zIDAgMC0xMTUuNi00MS4yIDAgMC0xMS41IDk5LjYgMCAwIDExLjUtNDEuMSAwek02NDAgMjE4LjhjMCA5LjItMS43IDE3LjgtNS4xIDI1LjhzLTguMiAxNS4xLTE0LjIgMjEuMS0xMy4xIDEwLjgtMjEuMSAxNC4yLTE2LjYgNS4xLTI1LjggNS4xLTE3LjgtMS43LTI1LjgtNS4xLTE1LjEtOC4yLTIxLjEtMTQuMi0xMC44LTEzLTE0LjItMjEuMWMtMy40LTgtNS4xLTE2LjYtNS4xLTI1LjhzMS43LTE3LjggNS4xLTI1LjggOC4yLTE1LjEgMTQuMi0yMS4xIDEzLTguNCAyMS4xLTExLjljOC0zLjQgMTYuNi01LjEgMjUuOC01LjFzMTcuOCAxLjcgMjUuOCA1LjEgMTUuMSA1LjggMjEuMSAxMS45YzYgNiAxMC43IDEzLjEgMTQuMiAyMS4xIDMuNCA4IDUuMSAxNi42IDUuMSAyNS44em0tMTUuNSAwYzAtNy4zLTEuMy0xNC0zLjktMjAuM3MtNi4yLTExLjctMTAuOC0xNi4zLTEwLTguMi0xNi4yLTEwLjktMTIuOC00LTE5LjgtNC0xMy42IDEuMy0xOS44IDQtMTEuNiA2LjMtMTYuMiAxMC45LTguMiAxMC0xMC44IDE2LjMtMy45IDEzLjEtMy45IDIwLjNjMCA3LjMgMS4zIDE0IDMuOSAyMC4zczYuMiAxMS43IDEwLjggMTYuMyAxMCA4LjIgMTYuMiAxMC45IDEyLjggNCAxOS44IDQgMTMuNi0xLjMgMTkuOC00IDExLjYtNi4zIDE2LjItMTAuOSA4LjItMTAgMTAuOC0xNi4zIDMuOS0xMy4xIDMuOS0yMC4zem0tOTQuOCA5Ni43bDAtNi4zIDg4LjktMTAtMjQyLjkgMTMuNGMuNi0yLjIgMS4xLTQuNiAxLjQtNy4yIC4zLTIgLjUtNC4yIC42LTYuNWw2NC44LTguMS02NC45IDEuOWMwLS40LS4xLS43LS4xLTEuMS0yLjgtMTcuMi0yNS41LTIzLjctMjUuNS0yMy43bC0xLjEtMjYuMyAyMy44IDAgMTkgNDEuOCAxNy4xIDAtNjIuMi0xMzEuNC02Mi4yIDEzMS40IDE3LjEgMCAxOS00MS44IDIzLjYgMC0xLjEgMjYuNHMtMjIuNyA2LjUtMjUuNSAyMy43Yy0uMSAuMy0uMSAuNy0uMSAxLjFsLTY0LjktMS45IDY0LjggOC4xYy4xIDIuMyAuMyA0LjQgLjYgNi41IC4zIDIuNiAuOCA1IDEuNCA3LjJsLTI0Mi45LTEzLjUgODguOSAxMCAwIDYuM2MtNS45IC45LTEwLjUgNi0xMC41IDEyLjIgMCA2LjggNS42IDEyLjQgMTIuNCAxMi40czEyLjQtNS42IDEyLjQtMTIuNGMwLTYuMi00LjYtMTEuMy0xMC41LTEyLjJsMC01LjggODAuMyA5IDAgNS40Yy01LjcgMS4xLTkuOSA2LjItOS45IDEyLjEgMCA2LjggNS42IDEwLjIgMTIuNCAxMC4yczEyLjQtMy40IDEyLjQtMTAuMmMwLTYtNC4zLTExLTkuOS0xMi4xbDAtNC45IDI4LjQgMy4yIDAgMjMuNy01LjkgMCAwIDEzLjkgNS45IDAgMC02LjYgNSAwIDAgNi42IDUuOSAwIDAtMTMuOC01LjkgMCAwLTIzLjIgMzguMyA0LjNjOC4xIDExLjQgMTkgMTMuNiAxOSAxMy42bC0uMSA2LjctNS4xIC4yLS4xIDEyLjEgNC4xIDAgLjEtNSA1LjIgMCAuMSA1IDQuMSAwLS4xLTEyLjEtNS4xLS4yLS4xLTYuN3MxMC45LTIuMSAxOS0xMy42bDM4LjMtNC4zIDAgMjMuMi01LjkgMCAwIDEzLjggNS45IDAgMC02LjYgNSAwIDAgNi42IDUuOSAwIDAtMTMuOC01LjkgMCAwLTIzLjcgMjguNC0zLjIgMCA0LjljLTUuNyAxLjEtOS45IDYuMi05LjkgMTIuMSAwIDYuOCA1LjYgMTAuMiAxMi40IDEwLjJzMTIuNC0zLjQgMTIuNC0xMC4yYzAtNi00LjMtMTEtOS45LTEyLjFsMC01LjQgODAuMy05IDAgNS44Yy01LjkgLjktMTAuNSA2LTEwLjUgMTIuMiAwIDYuOCA1LjYgMTIuNCAxMi40IDEyLjRzMTIuNC01LjYgMTIuNC0xMi40Yy0uMi02LjMtNC43LTExLjQtMTAuNy0xMi4zek0zMjguOSAyMjcuOWwxOS42LTQyLjUgMTkuNiA0Mi41LTE3LjkgMC0xLjctNDAuMy0xLjcgNDAuMy0xNy45IDB6Il19LHVscj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJwYWRsZXQiLGljb246WzY0MCw1MTIsW10sImU0YTAiLCJNMjk3LjkgMGwuMSAwYzcuNiAuMSAxNC40IDQuNyAxNy41IDExLjhsMTMyIDMwOC41IC4zLS4xIC4yIC40LTIuOCAxMC00Mi45IDE1OGMtMy43IDE2LjItMTkuNyAyNi4zLTM1LjggMjIuNmwtNjguNC0xNS42LTY4LjUgMTUuNmMtMTYuMSAzLjctMzIuMS02LjQtMzUuOC0yMi42bC00Mi45LTE1OC0yLjctMTAgLjEtLjQgMTMyLjEtMzA4LjRjMy03IDkuOS0xMS42IDE3LjUtMTEuOHpNMTYwLjEgMzIyLjFsMTMxIDM5LjEgNi45IDEyMi41IDcuOS0xMjEuNSAxMzAuNi0zOS4zIC4yLS4xLTEzMSAyNS4xLTguNi0zMjAuMi01LjIgMzIwLjItMTMxLjgtMjUuOHpNNDI2IDIyMi42bDk0LjQtNDEgNzMuOCAwLTE1NyAyNDcuNiAzMS42LTEwOS00Mi44LTk3LjZ6bTE3MS41LTQxLjJsNDEuNCA3Ni4yYzQgNy41LTMuOSAxNS45LTExLjYgMTIuMmwtNDcuNi0yMi43IDE3LjgtNjUuN3pNMTI3LjMgMzE4LjVMMTU4LjcgNDMwIDEuNiAxNTQuNWMtNS45LTEwLjQgNS41LTIyIDE1LjktMTYuMmwxNTEuOCA4NC4yLTQyLjEgOTZ6Il19LGZscj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJlZGdlLWxlZ2FjeSIsaWNvbjpbNDQ4LDUxMixbXSwiZTA3OCIsIk0tNiAyMjguMmwuNC0uNWMwIC4yIDAgLjMtLjEgLjVsLS4zIDB6bTQ2MC42IDE1LjVjMC00NC03LjgtODQuNS0yOC44LTEyMi40LTQxLTczLjQtMTEzLjYtMTEzLjMtMTk4LjYtMTEzLjMtMTM5LjktLjMtMjE4LjMgMTA1LjItMjMyLjggMjE5LjcgNDIuNC02MS4zIDExNy4xLTEyMS40IDIyMC40LTEyNSAwIDAgMTA5LjcgMCA5OS40IDEwNWwtMTc1LjggMGM2LjQtMzcuNCAxOC41LTU5IDM0LjMtNzguOS03NSAzNC45LTEyMS44IDk2LjEtMTIwLjggMTg4LjMgLjggNzEuNSA1MC4xIDE0NC44IDEyMC44IDE3MiA4My40IDMxLjggMTkyLjggNy4yIDI0MC4xLTIxLjNsMC0xMDQuNGMtODAuOSA1Ni41LTI3MC45IDYwLjktMjcyLjMtNjcuNmwzMTQuMSAwIDAtNTIuMXoiXX0scFNlPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InNxdWFyZS1sYXN0Zm0iLGljb246WzQ0OCw1MTIsWyJsYXN0Zm0tc3F1YXJlIl0sImYyMDMiLCJNNDQ4IDk2YzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzIwIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zMjB6TTIxMC43IDI4MC44Yy0xLjgtNS41LTMuNC0xMC44LTUtMTUuOS0xMi45LTQxLjktMjEtNjguNC01OC02OC40LTIyLjQgMC00NS4xIDE2LjEtNDUuMSA2MS4yIDAgMzUuMiAxOCA1Ny4yIDQzLjMgNTcuMiAyOC42IDAgNDcuNi0yMS4zIDQ3LjYtMjEuM2wxMS43IDMxLjlzLTE5LjggMTkuNC02MS4yIDE5LjRjLTUxLjMgMC03OS45LTMwLjEtNzkuOS04NS44IDAtNTcuOSAyOC42LTkyIDgyLjUtOTIgNjcuOSAwIDc5LjMgMzUuMyA5Ni40IDg4LjQgMS40IDQuNCAyLjkgOC45IDQuNCAxMy41IDguOCAyNi44IDI0LjIgNDYuMiA2MS4yIDQ2LjIgMjQuOSAwIDM4LjEtNS41IDM4LjEtMTkuMSAwLTE3LjUtMTYuOS0yMS4yLTQwLTI2LjQtMy4yLS43LTYuNS0xLjQtOS45LTIuMi0zMC40LTcuMy00Mi41LTIzLjEtNDIuNS00OCAwLTQwIDMyLjMtNTIuNCA2NS4yLTUyLjQgMzcuNCAwIDYwLjEgMTMuNiA2MyA0Ni42bC0zNi43IDQuNGMtMS41LTE1LjgtMTEtMjIuNC0yOC42LTIyLjQtMTYuMSAwLTI2IDcuMy0yNiAxOS44IDAgMTEgNC44IDE3LjYgMjAuOSAyMS4zIDIuMiAuNSA0LjUgMSA2LjcgMS40IDMxLjEgNi41IDY1LjEgMTMuNyA2NS4xIDU2LjEgLjEgMzYuNy0zMC43IDUwLjYtNzYuMSA1MC42LTYzLjQgMC04NS40LTI4LjYtOTcuMS02NC4xeiJdfSxwbHI9cFNlLGhscj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJnb29kcmVhZHMtZyIsaWNvbjpbMzIwLDUxMixbXSwiZjNhOSIsIk0xMC44IDQwMy4zbDIuOCAwYzEyLjcgMCAyNS41IDAgMzguMiAuMSAxLjYgMCAzLjEtLjQgMy42IDIuMSA3LjEgMzQuOSAzMCA1NC42IDYyLjkgNjMuOSAyNi45IDcuNiA1NC4xIDcuOCA4MS4zIDEuOCAzMy44LTcuNCA1Ni0yOC4zIDY4LTYwLjQgOC0yMS41IDEwLjctNDMuOCAxMS02Ni41IC4xLTUuOCAuMy00Ny0uMi01Mi44bC0uOS0uM2MtLjggMS41LTEuNyAyLjktMi41IDQuNC0yMi4xIDQzLjEtNjEuMyA2Ny40LTEwNS40IDY5LjEtMTAzIDQtMTY5LjQtNTctMTcyLTE3Ni4yLS41LTIzLjcgMS44LTQ2LjkgOC4zLTY5LjcgMjAuNi03MS4xIDc0LjYtMTE4LjIgMTUzLjktMTE4LjggNjEuMy0uNCAxMDEuNSAzOC43IDExNi4yIDcwLjMgLjUgMS4xIDEuMyAyLjMgMi40IDEuOWwwLTYxLjYgNDQuMyAwYzAgMjgwLjMgLjEgMzMyLjIgLjEgMzMyLjItLjEgNzguNS0yNi43IDE0My43LTEwMyAxNjIuMi02OS41IDE2LjktMTU5IDQuOC0xOTYtNTcuMi04LTEzLjUtMTEuOC0yOC4zLTEzLTQ0LjV6TTE1Ny4xIDM2LjVjLTUyLjUtLjUtMTA4LjUgNDAuNy0xMTUgMTMzLjgtNC4xIDU5IDE0LjggMTIyLjIgNzEuNSAxNDguNiAyNy42IDEyLjkgNzQuMyAxNSAxMDguMy04LjcgNDcuNi0zMy4yIDYyLjctOTcgNTQuOC0xNTQtOS43LTcxLjEtNDcuOC0xMjAtMTE5LjYtMTE5Ljd6Il19LG1scj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJjYy1tYXN0ZXJjYXJkIixpY29uOls1NzYsNTEyLFtdLCJmMWYxIiwiTTQ4Mi45IDQxMC4zYzAgNi44LTQuNiAxMS43LTExLjIgMTEuNy02LjggMC0xMS4yLTUuMi0xMS4yLTExLjdzNC40LTExLjcgMTEuMi0xMS43YzYuNiAwIDExLjIgNS4yIDExLjIgMTEuN3pNMTcyLjEgMzk4LjZjLTcuMSAwLTExLjIgNS4yLTExLjIgMTEuN1MxNjUgNDIyIDE3Mi4xIDQyMmM2LjUgMCAxMC45LTQuOSAxMC45LTExLjctLjEtNi41LTQuNC0xMS43LTEwLjktMTEuN3ptMTE3LjUtLjNjLTUuNCAwLTguNyAzLjUtOS41IDguN2wxOS4xIDBjLS45LTUuNy00LjQtOC43LTkuNi04Ljd6bTEwNy44IC4zYy02LjggMC0xMC45IDUuMi0xMC45IDExLjdzNC4xIDExLjcgMTAuOSAxMS43IDExLjItNC45IDExLjItMTEuN2MwLTYuNS00LjQtMTEuNy0xMS4yLTExLjd6bTEwNS45IDI2LjFjMCAuMyAuMyAuNSAuMyAxLjEgMCAuMy0uMyAuNS0uMyAxLjEtLjMgLjMtLjMgLjUtLjUgLjgtLjMgLjMtLjUgLjUtMS4xIC41LS4zIC4zLS41IC4zLTEuMSAuMy0uMyAwLS41IDAtMS4xLS4zLS4zIDAtLjUtLjMtLjgtLjUtLjMtLjMtLjUtLjUtLjUtLjgtLjMtLjUtLjMtLjgtLjMtMS4xIDAtLjUgMC0uOCAuMy0xLjEgMC0uNSAuMy0uOCAuNS0xLjEgLjMtLjMgLjUtLjMgLjgtLjUgLjUtLjMgLjgtLjMgMS4xLS4zIC41IDAgLjggMCAxLjEgLjMgLjUgLjMgLjggLjMgMS4xIC41cy4yIC42IC41IDEuMXptLTIuMiAxLjRjLjUgMCAuNS0uMyAuOC0uMyAuMy0uMyAuMy0uNSAuMy0uOHMwLS41LS4zLS44Yy0uMyAwLS41LS4zLTEuMS0uM2wtMS42IDAgMCAzLjUgLjggMCAwLTEuNCAuMyAwIDEuMSAxLjQgLjggMC0xLjEtMS4zek01NzYgODFsMCAzNTJjMCAyNi41LTIxLjUgNDgtNDggNDhMNDggNDgxYy0yNi41IDAtNDgtMjEuNS00OC00OEwwIDgxQzAgNTQuNSAyMS41IDMzIDQ4IDMzbDQ4MCAwYzI2LjUgMCA0OCAyMS41IDQ4IDQ4ek02NCAyMjAuNmMwIDc2LjUgNjIuMSAxMzguNSAxMzguNSAxMzguNSAyNy4yIDAgNTMuOS04LjIgNzYuNS0yMy4xLTcyLjktNTkuMy03Mi40LTE3MS4yIDAtMjMwLjUtMjIuNi0xNS00OS4zLTIzLjEtNzYuNS0yMy4xLTc2LjQtLjEtMTM4LjUgNjItMTM4LjUgMTM4LjJ6TTI4OCAzMjkuNGM3MC41LTU1IDcwLjItMTYyLjIgMC0yMTcuNS03MC4yIDU1LjMtNzAuNSAxNjIuNiAwIDIxNy41ek0xNDUuNyA0MDUuN2MwLTguNy01LjctMTQuNC0xNC43LTE0LjctNC42IDAtOS41IDEuNC0xMi44IDYuNS0yLjQtNC4xLTYuNS02LjUtMTIuMi02LjUtMy44IDAtNy42IDEuNC0xMC42IDUuNGwwLTQuNC04LjIgMCAwIDM2LjcgOC4yIDBjMC0xOC45LTIuNS0zMC4yIDktMzAuMiAxMC4yIDAgOC4yIDEwLjIgOC4yIDMwLjJsNy45IDBjMC0xOC4zLTIuNS0zMC4yIDktMzAuMiAxMC4yIDAgOC4yIDEwIDguMiAzMC4ybDguMiAwIDAtMjMtLjIgMHpNMTkwLjYgMzkybC03LjkgMCAwIDQuNGMtMi43LTMuMy02LjUtNS40LTExLjctNS40LTEwLjMgMC0xOC4yIDguMi0xOC4yIDE5LjMgMCAxMS4yIDcuOSAxOS4zIDE4LjIgMTkuMyA1LjIgMCA5LTEuOSAxMS43LTUuNGwwIDQuNiA3LjkgMCAwLTM2Ljh6bTQwLjUgMjUuNmMwLTE1LTIyLjktOC4yLTIyLjktMTUuMiAwLTUuNyAxMS45LTQuOCAxOC41LTEuMWwzLjMtNi41Yy05LjQtNi4xLTMwLjItNi0zMC4yIDguMiAwIDE0LjMgMjIuOSA4LjMgMjIuOSAxNSAwIDYuMy0xMy41IDUuOC0yMC43IC44bC0zLjUgNi4zYzExLjIgNy42IDMyLjYgNiAzMi42LTcuNXptMzUuNCA5LjNsLTIuMi02LjhjLTMuOCAyLjEtMTIuMiA0LjQtMTIuMi00LjFsMC0xNi42IDEzLjEgMCAwLTcuNC0xMy4xIDAgMC0xMS4yLTguMiAwIDAgMTEuMi03LjYgMCAwIDcuMyA3LjYgMCAwIDE2LjdjMCAxNy42IDE3LjMgMTQuNCAyMi42IDEwLjl6bTEzLjMtMTMuNGwyNy41IDBjMC0xNi4yLTcuNC0yMi42LTE3LjQtMjIuNi0xMC42IDAtMTguMiA3LjktMTguMiAxOS4zIDAgMjAuNSAyMi42IDIzLjkgMzMuOCAxNC4ybC0zLjgtNmMtNy44IDYuNC0xOS42IDUuOC0yMS45LTQuOXpNMzM4LjkgMzkyYy00LjYtMi0xMS42LTEuOC0xNS4yIDQuNGwwLTQuNC04LjIgMCAwIDM2LjcgOC4yIDAgMC0yMC43YzAtMTEuNiA5LjUtMTAuMSAxMi44LTguNGwyLjQtNy42em0xMC42IDE4LjNjMC0xMS40IDExLjYtMTUuMSAyMC43LTguNGwzLjgtNi41Yy0xMS42LTkuMS0zMi43LTQuMS0zMi43IDE1IDAgMTkuOCAyMi40IDIzLjggMzIuNyAxNWwtMy44LTYuNWMtOS4yIDYuNS0yMC43IDIuNi0yMC43LTguNnpNNDE2LjIgMzkybC04LjIgMCAwIDQuNGMtOC4zLTExLTI5LjktNC44LTI5LjkgMTMuOSAwIDE5LjIgMjIuNCAyNC43IDI5LjkgMTMuOWwwIDQuNiA4LjIgMCAwLTM2Ljh6bTMzLjcgMGMtMi40LTEuMi0xMS0yLjktMTUuMiA0LjRsMC00LjQtNy45IDAgMCAzNi43IDcuOSAwIDAtMjAuN2MwLTExIDktMTAuMyAxMi44LTguNGwyLjQtNy42em00MC4zLTE0LjlsLTcuOSAwIDAgMTkuM2MtOC4yLTEwLjktMjkuOS01LjEtMjkuOSAxMy45IDAgMTkuNCAyMi41IDI0LjYgMjkuOSAxMy45bDAgNC42IDcuOSAwIDAtNTEuN3ptNy42LTc1LjFsMCA0LjYgLjggMCAwLTQuNiAxLjkgMCAwLS44LTQuNiAwIDAgLjggMS45IDB6bTYuNiAxMjMuOGMwLS41IDAtMS4xLS4zLTEuNi0uMy0uMy0uNS0uOC0uOC0xLjFzLS44LS41LTEuMS0uOGMtLjUgMC0xLjEtLjMtMS42LS4zLS4zIDAtLjggLjMtMS40IC4zLS41IC4zLS44IC41LTEuMSAuOC0uNSAuMy0uOCAuOC0uOCAxLjEtLjMgLjUtLjMgMS4xLS4zIDEuNiAwIC4zIDAgLjggLjMgMS40IDAgLjMgLjMgLjggLjggMS4xIC4zIC4zIC41IC41IDEuMSAuOCAuNSAuMyAxLjEgLjMgMS40IC4zIC41IDAgMS4xIDAgMS42LS4zIC4zLS4zIC44LS41IDEuMS0uOHMuNS0uOCAuOC0xLjFjLjMtLjYgLjMtMS4xIC4zLTEuNHptMy4yLTEyNC43bC0xLjQgMC0xLjYgMy41LTEuNi0zLjUtMS40IDAgMCA1LjQgLjggMCAwLTQuMSAxLjYgMy41IDEuMSAwIDEuNC0zLjUgMCA0LjEgMS4xIDAgMC01LjR6bTQuNC04MC41YzAtNzYuMi02Mi4xLTEzOC4zLTEzOC41LTEzOC4zLTI3LjIgMC01My45IDguMi03Ni41IDIzLjEgNzIuMSA1OS4zIDczLjIgMTcxLjUgMCAyMzAuNSAyMi42IDE1IDQ5LjUgMjMuMSA3Ni41IDIzLjEgNzYuNCAuMSAxMzguNS02MS45IDEzOC41LTEzOC40eiJdfSxnbHI9e3ByZWZpeDoiZmFiIixpY29uTmFtZToiZGlzY291cnNlIixpY29uOls0NDgsNTEyLFtdLCJmMzkzIiwiTTIyNS45IDMyQzEwMy4zIDMyIDAgMTMwLjUgMCAyNTIuMSAwIDI1NiAuMSA0ODAgLjEgNDgwbDIyNS44LS4yQzM0OC42IDQ3OS44IDQ0OCAzNzcuNSA0NDggMjU1LjlTMzQ4LjYgMzIgMjI1LjkgMzJ6TTIyNCAzODRjLTE5LjQgMC0zNy45LTQuMy01NC40LTEyLjFMODguNSAzOTIgMTExLjQgMzE3Yy05LjgtMTguMS0xNS40LTM4LjktMTUuNC02MSAwLTcwLjcgNTcuMy0xMjggMTI4LTEyOHMxMjggNTcuMyAxMjggMTI4LTU3LjMgMTI4LTEyOCAxMjh6Il19LHhscj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJibGFjay10aWUiLGljb246WzQ0OCw1MTIsW10sImYyN2UiLCJNMCAzMmwwIDQ0OCA0NDggMCAwLTQ0OC00NDggMHpNMzE2LjUgMzU3LjJsLTkyLjUgODguNy05Mi41LTg4LjcgNjQuNS0xODQtNjQuNS04Ni42IDE4NC45IDAtNjQuNCA4Ni42IDY0LjUgMTg0eiJdfSxoU2U9e3ByZWZpeDoiZmFiIixpY29uTmFtZToic3F1YXJlLWZhY2Vib29rIixpY29uOls0NDgsNTEyLFsiZmFjZWJvb2stc3F1YXJlIl0sImYwODIiLCJNNjQgMzJDMjguNyAzMiAwIDYwLjcgMCA5NkwwIDQxNmMwIDM1LjMgMjguNyA2NCA2NCA2NGw5OC4yIDAgMC0xNDUuOC01Mi44IDAgMC03OC4yIDUyLjggMCAwLTMzLjdjMC04Ny4xIDM5LjQtMTI3LjUgMTI1LTEyNy41IDE2LjIgMCA0NC4yIDMuMiA1NS43IDYuNGwwIDcwLjhjLTYtLjYtMTYuNS0xLTI5LjYtMS00MiAwLTU4LjIgMTUuOS01OC4yIDU3LjJsMCAyNy44IDgzLjYgMC0xNC40IDc4LjItNjkuMyAwIDAgMTQ1LjggMTI5IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zMjBjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzJ6Il19LGJscj1oU2UsdmxyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6ImJhdHRsZS1uZXQiLGljb246WzUxMiw1MTIsW10sImY4MzUiLCJNNDQ4LjggMjI1LjZjMjYuOSAuMiAzNS42LTcuNCAzOC45LTEyLjQgMTIuNS0xNi4zLTcuMS00Ny42LTUyLjgtNzEuMyAxNy44LTMzLjYgMzAuMS02My43IDM2LjMtODUuMyAzLjQtMTEuOCAxLjEtMTkgLjUtMjAuMy0xLjcgMTAuNS0xNS44IDQ4LjUtNDguMiAxMDAtMjUtMTEuMi01Ni41LTIwLjEtOTMuOC0yMy44LTguOS0xNi45LTM0LjktNjMuOS02MC41LTg4LjktMTYuOC0xNi41LTMwLjMtMjIuNi00MC44LTIzLjVsMCAwYy0xMy44LTEuNi0yMi43IDUuOC0yNy40IDExLTE3LjIgMTguNS0yNC4zIDQ4LjktMjUgODQuMS03LjItMTIuMy0xNy4yLTI0LjYtMjguNS0yNS45bC0uMiAwYy0yMC43LTMuNS0zOC40IDI5LjItMzYgODEuMy0zOC40IDEuNC03MSA1LjgtOTMgMTEuMi05LjkgMi40LTE2LjIgNy4zLTE3LjggOS43IDEtLjQgMjIuNC05LjIgMTExLjYtOS4yIDUuMiA1MyAyOS44IDEwMS44IDI2IDkzLjItOS43IDE1LjQtMzguMiA2Mi40LTQ3LjMgOTcuNy01LjkgMjIuOS00LjQgMzcuNiAuMiA0Ny4xIDUuNiAxMi44IDE2LjQgMTYuNyAyMy4yIDE4LjMgMjUgNS43IDU1LjQtMy42IDg2LjctMjEuMS03LjUgMTIuOC0xMy45IDI4LjUtOS4xIDM5LjMgNy4zIDE5LjYgNDQuNSAxOC43IDg4LjQtOS40IDIwLjIgMzIuMiA0MC4xIDU3LjkgNTUuNyA3NC4xIDIuNiAyLjggNS41IDUuMiA4LjggNy4xIDUuMSAzLjIgOC42IDMuNCA4LjYgMy40LTguMi02LjctMzQtMzgtNjIuNS05MS44IDIyLjItMTYgNDUuNy0zOC45IDY3LjUtNjkuMyAxMjIuOCA0LjYgMTQzLjMtMjQuOCAxNDgtMzEuNiAxNC43LTE5LjkgMy40LTU3LjQtNTcuMy05My43ek0zNzEgMzMxLjhjMjMuOC0zNy43IDMwLjMtNjcuOCAyOS40LTkyLjMgMjcuOSAxNy42IDQ3LjIgMzcuNiA0OS4xIDU4LjggMS4xIDEyLjktOC4xIDI5LjEtNzguNSAzMy41ek0yMTcuMSAzODcuN2M5LjgtNi4yIDE5LjUtMTMuMSAyOS4yLTIwLjUgNi43IDEzLjMgMTMuNiAyNi4xIDIwLjYgMzguMi00MC42IDIxLjktNjguOCAxMi44LTQ5LjgtMTcuN3ptMjE1LTE3MS4zYy0xMC4zLTUuMy0yMS4yLTEwLjMtMzIuNC0xNSA3LjktMTIuMSAxNS41LTI0LjQgMjIuNy0zNi45IDM5LjEgMjQuMSA0NS45IDUzLjIgOS42IDUxLjl6TTI3OS40IDM5OGMtNS41LTExLjQtMTEtMjMuNS0xNi41LTM2LjQgNDMuMiAxLjMgNjIuNC0xOC43IDYzLjMtMjAuNCAwIC4xLTI1IDE1LjYtNjIuNSAxMi4yIDMwLjYtMjUuNiA1OS4xLTUzLjcgODUuMS04NCA4LjctMTAuMiAxNy0yMC42IDI0LjktMzEuMS0uNC0uMy0xLjUtMy0xNi41LTEyLTUxLjcgNjAuMy0xMDIuMyA5OC0xMzIuOCAxMTUuOS0yMC42LTExLjItNDAuOC0zMS44LTU1LjctNjEuNS0yMC0zOS45LTMwLTgyLjQtMzEuNi0xMTYuMSAxMi4zIC45IDI1LjMgMi4yIDM4LjggMy45LTIyLjMgMzYuOC0xNC40IDYzLTEzLjUgNjQuMiAwLS4xLTEtMjkuMiAyMC4xLTU5LjYgOSA1Mi41IDI0IDEwMy44IDQ0LjcgMTUyLjggLjktLjQgMS44IC45IDE4LjctOC4yLTI2LjMtNzQuNS0zMy44LTEzOC4yLTM0LTE3My40IDIwLTEyLjQgNDguMi0xOS44IDgxLjYtMTcuOCA0NC42IDIuNyA4Ni40IDE1LjIgMTE2LjMgMzAuNy03LjEgMTAuNC0xNC45IDIxLjMtMjMuMyAzMi41LTIwLjctMzcuNy00Ny4zLTQzLjktNDguOS00My43IC4xIDAgMjUuOSAxNC4xIDQxLjUgNDcuMi0zNy41LTEzLjgtNzYuMS0yNC40LTExNS4zLTMxLjctMTMuMS0yLjQtMjYuMi00LjQtMzkuNC02LS4xIC40LTEuOCAxLjgtMi4yIDIwLjMgNzcuOSAxNC41IDEzNi42IDM5LjkgMTY3LjIgNTcuMiAuNyAyMy42LTcgNTEuNi0yNS40IDc5LjYtMjQuNiAzNy4zLTU2LjQgNjcuMi04NC44IDg1LjR6bTI3LjQtMjg3Yy00NC42LTEuNy03My42IDcuNC05NC43IDIwLjcgMi01Mi4zIDIxLjMtNzYuNCAzOC4yLTc1LjMgMTYuOS00LjIgNTQuOSA1Mi4yIDU2LjUgNTQuNnptLTEzMC43IDMuMWMuNSAxMi4xIDEuNiAyNC42IDMuMiAzNy4zLTE0LjYtLjktMjguNy0xLjMtNDIuNC0xLjMtLjEgMy4yLS4xLTUxIDI0LjctNDkuNmwuMSAwYzUuOCAxLjEgMTAuNiA2LjkgMTQuNCAxMy42em0tMjguMSAxNjJjMjAuOCAzOS43IDQzLjMgNjAuNiA2NS4zIDcyLjMtNDYuOCAyNC44LTc3LjUgMjAtODQuOSA0LjUtLjItLjItMTEuMS0xNS4zIDE5LjctNzYuOGwwIDB6Il19LHlscj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJiaW1vYmplY3QiLGljb246WzQ0OCw1MTIsW10sImYzNzgiLCJNNDE2IDMyTDMyIDMyQzE0LjQgMzIgMCA0Ni40IDAgNjRMMCA0NDhjMCAxNy42IDE0LjQgMzIgMzIgMzJsMzg0IDBjMTcuNiAwIDMyLTE0LjQgMzItMzJsMC0zODRjMC0xNy42LTE0LjQtMzItMzItMzJ6TTM1MiAyODkuNGMwIDQ5LjQtMTEuNCA4Mi42LTEwMy44IDgyLjZsLTE2LjkgMGMtNDQuMSAwLTYyLjQtMTQuOS03MC40LTM4LjhsLS45IDAgMCAzNC44LTY0IDAgMC0yMzIgNjQgMCAwIDc0LjcgMS4xIDBjNC42LTMwLjUgMzkuNy0zOC44IDY5LjctMzguOGwxNy4zIDBjOTIuNCAwIDEwMy44IDMzLjEgMTAzLjggODIuNWwwIDM1IC4xIDB6bS02NC0yOC45bDAgMjIuOWMwIDIxLjctMy40IDMzLjgtMzguNCAzMy44bC00NS4zIDBjLTI4LjkgMC00NC4xLTYuNS00NC4xLTM1LjdsMC0xOWMwLTI5LjMgMTUuMi0zNS43IDQ0LjEtMzUuN2w0NS4zIDBjMzUtLjIgMzguNCAxMiAzOC40IDMzLjd6Il19LHdscj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJzdmVsdGUiLGljb246WzQ0OCw1MTIsW10sImU4NjgiLCJNMjAyLjEgMjYuNGM2Ni44LTQyLjYgMTU5LjMtMjIuNyAyMDYuMSA0NC4zIDExLjEgMTUuNSAxOSAzMy4xIDIzLjIgNTEuOHM0LjcgMzcuOSAxLjMgNTYuN2MtMy4yIDE4LTEwLjEgMzUuMS0yMC4xIDUwLjMgMTQuNiAyNy45IDE5LjYgNjAgMTQgOTEtMy4zIDE4LjQtMTAuNCAzNi0yMC45IDUxLjVzLTI0LjEgMjguNy0zOS45IDM4LjdMMjQ4LjMgNDg1LjZjLTY2LjggNDIuNi0xNTkuMyAyMi43LTIwNi4xLTQ0LjItMTEuMS0xNS41LTE5LTMzLjItMjMuMi01MS44cy00LjctMzcuOS0xLjMtNTYuN2MzLjItMTggMTAuMS0zNS4xIDIwLjEtNTAuMy0xNC43LTI3LjktMTkuNi02MC0xNC05MS4xIDMuMy0xOC40IDEwLjQtMzYgMjAuOS01MS41czI0LjEtMjguNyAzOS45LTM4LjdMMjAyLjEgMjYuNHpNMzE1LjYgNjcuMmMtMTcuOS02LjYtMzcuNC03LjYtNTUuOS0yLjgtOC40IDIuMy0xNi41IDUuOC0yMy44IDEwLjVMMTE4LjUgMTQ5LjdjLTkuNSA2LTE3LjcgMTMuOS0yNCAyMy4zUzg0IDE5Mi44IDgyIDIwMy45Yy0yIDExLjMtMS43IDIyLjkgLjggMzQuMXM3LjMgMjEuOCAxMy45IDMxLjJjMTAuOSAxNS43IDI2LjMgMjcuNiA0NC4yIDM0LjNzMzcuNCA3LjYgNTUuOSAyLjhjOC40LTIuMyAxNi41LTUuOCAyMy44LTEwLjVsNDQuOC0yOC42YzIuMi0xLjQgNC43LTIuNSA3LjItMy4yIDUuNi0xLjQgMTEuNC0xLjIgMTYuOCAuOHMxMCA1LjYgMTMuMyAxMC4zYzIgMi44IDMuNSA2IDQuMiA5LjRzLjkgNi45IC4zIDEwLjNjLS42IDMuMy0xLjkgNi41LTMuOCA5LjMtMS45IDIuOC00LjQgNS4yLTcuMiA3TDE3OC44IDM4Ni4xYy0yLjIgMS40LTQuNyAyLjUtNy4yIDMuMi01LjYgMS40LTExLjQgMS4yLTE2LjgtLjhzLTEwLTUuNi0xMy4zLTEwLjNjLTMuNi01LjEtNS4zLTExLjItNC43LTE3LjRsLjQtNC40LTQuMy0xLjNjLTE2LjUtNS0zMi4xLTEyLjctNDUuOS0yMi45bC02LTQuNC0yLjIgNi43Yy0xLjIgMy42LTIuMSA3LjMtMi44IDExLTIgMTEuMy0xLjcgMjIuOSAuOCAzNC4xczcuMyAyMS44IDEzLjkgMzEuMWMxMC45IDE1LjcgMjYuMyAyNy42IDQ0LjIgMzQuM3MzNy40IDcuNiA1NS44IDIuOGM4LjQtMi4zIDE2LjUtNS44IDIzLjktMTAuNWwxMTcuMy03NC44YzkuNS02IDE3LjctMTMuOSAyNC0yMy4zczEwLjYtMTkuOSAxMi42LTMxYzItMTEuMyAxLjgtMjIuOS0uOC0zNC4xcy03LjMtMjEuOC0xNC0zMS4xYy0xMC45LTE1LjctMjYuMy0yNy42LTQ0LjItMzQuM3MtMzcuNC03LjYtNTUuOS0yLjhjLTguNCAyLjMtMTYuNSA1LjgtMjMuOCAxMC41TDE4NSAyNDQuOGMtMi4yIDEuNC00LjYgMi41LTcuMiAzLjItNS42IDEuNC0xMS41IDEuMi0xNi44LS44cy0xMC01LjYtMTMuMy0xMC4zYy0yLTIuOC0zLjQtNi00LjItOS40cy0uOS02LjktLjItMTAuM2MuNi0zLjMgMS45LTYuNSAzLjgtOS4zczQuNC01LjIgNy4yLTdsMTE3LjQtNzQuOGMyLjItMS40IDQuNy0yLjUgNy4yLTMuMiA1LjYtMS40IDExLjQtMS4xIDE2LjggLjlzMTAgNS42IDEzLjMgMTAuM2MzLjYgNS4xIDUuMiAxMS4zIDQuNyAxNy40bC0uNCA0LjQgNC40IDEuM2MxNi41IDUgMzIgMTIuOCA0NS45IDIzbDYgNC40IDIuMi02LjhjMS4yLTMuNiAyLjEtNy4zIDIuOC0xMSAyLTExLjMgMS44LTIyLjktLjgtMzQuMXMtNy4zLTIxLjgtMTQtMzEuMWMtMTAuOS0xNS43LTI2LjMtMjcuNi00NC4yLTM0LjN6Il19LE1scj17cHJlZml4OiJmYWIiLGljb25OYW1lOiJzcXVhcmUtZGVza3BybyIsaWNvbjpbNDQ4LDUxMixbXSwiZTg0NCIsIk00MDguOCAzMkM0MzAuNCAzMiA0NDggNDkuNiA0NDggNzEuMmwwIDM2OS42YzAgMjEuNi0xNy42IDM5LjItMzkuMiAzOS4yTDM5LjIgNDgwQzE3LjYgNDgwIDAgNDYyLjQgMCA0NDAuOEwwIDcxLjJDMCA0OS42IDE3LjYgMzIgMzkuMiAzMmwzNjkuNiAwek0xMTAuOSAyNzQuMWwwIDExNC40IDg5LjEtLjFjMjAuNiAwIDM5LjQtMy4yIDU2LjMtOS41czMxLjMtMTUuNCA0My4yLTI3YzEyLjItMTEuOSAyMS42LTI2IDI4LjItNDIuMSA0LjYtMTEuMSA3LjctMjMgOS4yLTM1LjdsLTQzLjggMGMtMS4xIDYuNC0yLjggMTIuNC01LjEgMTguMi00LjIgMTAuOS0xMC4zIDIwLjMtMTguMiAyOC4yLTcuOSA3LjctMTcuNCAxMy43LTI4LjYgMTcuOS0xMS4xIDQuMy0yMy41IDYuNC0zNy4zIDYuNGwtNTAgMCAwLTcwLjYtNDMgLjF6bTAtMTUxLjRsMCAxMTQuNCA0My0uMSAwLTcwLjcgNTAgMGMxMy43IDAgMjYuMiAyLjEgMzcuMyA2LjQgMTEuMSA0LjMgMjAuNiAxMC4zIDI4LjYgMTguMyA3LjkgNy43IDE0IDE3LjEgMTguMiAyOC4yIDIuMyA1LjYgNCAxMS41IDUuMSAxNy44bDQzLjkgLjFjLTEuNC0xMi42LTQuNC0yNC40LTguOS0zNS4zLTYuNi0xNi40LTE2LTMwLjUtMjguMS00Mi4yLTEyLjEtMTEuOS0yNi43LTIxLjEtNDMuNi0yNy41LTE2LjktNi40LTM1LjctOS41LTU2LjMtOS41bC04OSAuMXoiXX0sa2xyPXtwcmVmaXg6ImZhYiIsaWNvbk5hbWU6InRhaWx3aW5kLWNzcyIsaWNvbjpbNjQwLDUxMixbXSwiZTg2NiIsIk0zMjAgNjRjLTg1LjMgMC0xMzguNyA0Mi43LTE2MCAxMjggMzItNDIuNyA2OS4zLTU4LjcgMTEyLTQ4IDI0LjMgNi4xIDQxLjcgMjMuOCA2MSA0My4zIDMxLjQgMzEuOCA2Ny43IDY4LjcgMTQ3IDY4LjcgODUuMyAwIDEzOC43LTQyLjcgMTYwLTEyOC0zMiA0Mi43LTY5LjMgNTguNy0xMTIgNDgtMjQuMy02LjEtNDEuNy0yMy44LTYxLTQzLjMtMzEuNC0zMS44LTY3LjctNjguNy0xNDctNjguN3pNMTYwIDI1NmMtODUuMyAwLTEzOC43IDQyLjctMTYwIDEyOCAzMi00Mi43IDY5LjMtNTguNyAxMTItNDggMjQuMyA2LjEgNDEuNyAyMy44IDYxIDQzLjMgMzEuNCAzMS44IDY3LjcgNjguNyAxNDcgNjguNyA4NS4zIDAgMTM4LjctNDIuNyAxNjAtMTI4LTMyIDQyLjctNjkuMyA1OC43LTExMiA0OC0yNC4zLTYuMS00MS43LTIzLjgtNjEtNDMuMy0zMS40LTMxLjgtNjcuNy02OC43LTE0Ny02OC43eiJdfSxBYmE9e2ZhU3F1YXJlR2l0aHViOklrZSxmYUdpdGh1YlNxdWFyZTpiZXIsZmFUaGlua1BlYWtzOnZlcixmYUdvb2dsZURyaXZlOnllcixmYUF1dG9wcmVmaXhlcjp3ZXIsZmFTcXVhcmVWaWFkZW86TmtlLGZhVmlhZGVvU3F1YXJlOk1lcixmYUNwYW5lbDprZXIsZmFNZW5kZWxleTpTZXIsZmFEcmFmdDJkaWdpdGFsOnplcixmYVJlcGx5ZDpDZXIsZmFFbXBpcmU6X2VyLGZhQWNjZXNzaWJsZUljb246VGVyLGZhUXVvcmE6TGVyLGZhQ2NKY2I6RGVyLGZhRmVkb3JhOkFlcixmYUR1b2xpbmdvOkVlcixmYUZpcnN0ZHJhZnQ6JGVyLGZhRnJlZWJzZDpQZXIsZmFPZHlzZWU6SWVyLGZhR2dDaXJjbGU6TmVyLGZhQ2xvdWRmbGFyZTpGZXIsZmFIYWNrZXJyYW5rOk9lcixmYVNreWF0bGFzOlJlcixmYURlc2twcm86QmVyLGZhUmVzb2x2aW5nOkhlcixmYUJsYWNrYmVycnk6cWVyLGZhU3RyaXBlUzpqZXIsZmFTcXVhcmVCZWhhbmNlOkZrZSxmYUJlaGFuY2VTcXVhcmU6VmVyLGZhU2VydmljZXN0YWNrOlVlcixmYVJvY2tldGNoYXQ6V2VyLGZhUmViZWw6R2VyLGZhU3F1YXJlV2ViQXdlc29tZTpZZXIsZmFMaW5rdHJlZTpaZXIsZmFTaW1wbHlidWlsdDpYZXIsZmFTdHViYmVyOlFlcixmYUFwcGVyOktlcixmYUdvb2dsZVNjaG9sYXI6SmVyLGZhWWFybjpldHIsZmFTdGFja092ZXJmbG93OnR0cixmYUJsdWV0b290aDpydHIsZmFDcmVhdGl2ZUNvbW1vbnNOY0pwOmF0cixmYVJlZGRpdDppdHIsZmFDb25uZWN0ZGV2ZWxvcDpvdHIsZmFSZXNlYXJjaGdhdGU6bnRyLGZhU2lnbmFsTWVzc2VuZ2VyOnN0cixmYVhpbmc6bHRyLGZhU3F1YXJlSnM6T2tlLGZhSnNTcXVhcmU6Y3RyLGZhRm9udGljb25zOmR0cixmYVVwczp1dHIsZmFBbWF6b25QYXk6ZnRyLGZhUGFuZG9yYTpwdHIsZmFPcGVuaWQ6aHRyLGZhVnNjbzptdHIsZmFHbG9iYWxlYWtzOmd0cixmYVZlbm1vOnh0cixmYVVidW50dTpidHIsZmFWaWFjb2luOnZ0cixmYVpoaWh1Onl0cixmYVlhbmRleDp3dHIsZmFQaXhpdjpNdHIsZmFPcGVuYWk6a3RyLGZhU2l0aDpTdHIsZmFKdWxpYTp6dHIsZmFOZmNEaXJlY3Rpb25hbDpDdHIsZmFDcmVhdGl2ZUNvbW1vbnNCeTpfdHIsZmFVbWJyYWNvOlR0cixmYUhvb2xpOkx0cixmYVNxdWFyZUdpdDpSa2UsZmFHaXRTcXVhcmU6RHRyLGZhT2Rub2tsYXNzbmlraTpBdHIsZmFEcnVwYWw6RXRyLGZhQmxvZ2dlckI6JHRyLGZhSW52aXNpb246UHRyLGZhRmFjZWJvb2tGOkl0cixmYUNlbnRvczpOdHIsZmFTY2FsZXdheTpGdHIsZmFDY0FtYXpvblBheTpPdHIsZmFFYmF5OlJ0cixmYUNvbnRhbzpCdHIsZmFFbGxvOkh0cixmYVNpc3RyaXg6cXRyLGZhUGVyaXNjb3BlOmp0cixmYUV4cGVkaXRlZHNzbDpWdHIsZmFOYXBzdGVyOlV0cixmYURlbGljaW91czpXdHIsZmFHdWlsZGVkOkd0cixmYU9ic2lkaWFuOll0cixmYVhib3g6WnRyLGZhVW50YXBwZDpYdHIsZmFHb29nbGVQbHVzRzpRdHIsZmFHaXRodWJBbHQ6S3RyLGZhR2V0UG9ja2V0Okp0cixmYUdsaWRlOmVycixmYUJpdHk6dHJyLGZhV3BleHBsb3JlcjpycnIsZmFNZWdhcG9ydDphcnIsZmFMZWV0Y29kZTppcnIsZmFNZGI6b3JyLGZhUGFnZTQ6bnJyLGZhVGhlUmVkWWV0aTpzcnIsZmFKaXJhOmxycixmYUZlZGV4OmNycixmYUV2ZXJub3RlOmRycixmYVVzYjp1cnIsZmFBbmdyeWNyZWF0aXZlOmZycixmYU1penVuaTpwcnIsZmFJdGNoSW86aHJyLGZhV2luZG93czptcnIsZmFTdHVtYmxldXBvbjpncnIsZmFHb29nbGU6T3NlLGZhRGlzY29yZDp4cnIsZmFIYWNrZXJOZXdzOmJycixmYUVsZXZlbnR5OkJrZSxmYTExdHk6dnJyLGZhVGVhbXNwZWFrOnlycixmYVN1cHBsZTp3cnIsZmFTcXVhcmVUd2l0dGVyOkhrZSxmYVR3aXR0ZXJTcXVhcmU6TXJyLGZhVmltOmtycixmYUZvbnRBd2Vzb21lOkZzZSxmYUZvbnRBd2Vzb21lRmxhZzpTcnIsZmFGb250QXdlc29tZUxvZ29GdWxsOnpycixmYVdpcnNpbmRoYW5kd2Vyazpxa2UsZmFXc2g6Q3JyLGZhWm9vbTpfcnIsZmFDb25mbHVlbmNlOlRycixmYURpZ2c6THJyLGZhVGhyZWFkczpEcnIsZmFXcHJlc3NyOmprZSxmYVJlbmRhY3Q6QXJyLGZhWW9hc3Q6RXJyLGZhTmltYmxyOiRycixmYVBpeGVsZmVkOlBycixmYVlhaG9vOklycixmYUJsdWVza3k6TnJyLGZhU2NyaWJkOkZycixmYUNyZWF0aXZlQ29tbW9uc1BkOk9ycixmYUVhcmx5YmlyZHM6UnJyLGZhU3ltZm9ueWNhc3RzOkJycixmYVNxdWFyZU9kbm9rbGFzc25pa2k6VmtlLGZhT2Rub2tsYXNzbmlraVNxdWFyZTpIcnIsZmFNYXJrZG93bjpxcnIsZmFUeXBvMzpqcnIsZmFKb29tbGE6VnJyLGZhV2VpeGluOlVycixmYUdydW50OldycixmYVN1cHBvcnRub3c6R3JyLGZhUm9ja3JtczpZcnIsZmFVbnNwbGFzaDpacnIsZmFTcXVhcmVJbnN0YWdyYW06VWtlLGZhSW5zdGFncmFtU3F1YXJlOlhycixmYUZpcnN0T3JkZXJBbHQ6UXJyLGZhRnVsY3J1bTpLcnIsZmFBcmNoTGludXg6SnJyLGZhRmVkaXZlcnNlOmVhcixmYUJyYXZlUmV2ZXJzZTp0YXIsZmFBdmlhbmV4OnJhcixmYU5zODphYXIsZmFTcXVhcmVQaW50ZXJlc3Q6V2tlLGZhUGludGVyZXN0U3F1YXJlOmlhcixmYUJsdWV0b290aEI6b2FyLGZhR3JpcGZpcmU6bmFyLGZhU3F1YXJlR29vZ2xlUGx1czpHa2UsZmFHb29nbGVQbHVzU3F1YXJlOnNhcixmYUdpdGVlOmxhcixmYVhtcHA6Y2FyLGZhQXBwU3RvcmU6ZGFyLGZhV2l4OnVhcixmYUludGVyY29tOmZhcixmYVJlYWN0ZXVyb3BlOnBhcixmYVdhemU6aGFyLGZhQ3JlYXRpdmVDb21tb25zUmVtaXg6bWFyLGZhQmFuZGNhbXA6Z2FyLGZhU3F1YXJlV2ViQXdlc29tZVN0cm9rZTp4YXIsZmFWaW1lb1Y6YmFyLGZhU3RyYXZhOnlhcixmYVVuaXJlZ2lzdHJ5OndhcixmYUNjRGluZXJzQ2x1YjpNYXIsZmFLdWJlcm5ldGVzOmthcixmYVBpbnRlcmVzdDpTYXIsZmFBbGdvbGlhOnphcixmYVN0YWNrcGF0aDpDYXIsZmFPY3RvcHVzRGVwbG95Ol9hcixmYVlhbW1lcjpUYXIsZmFNb2R4OkxhcixmYVNxdWFyZVRocmVhZHM6RGFyLGZhT2xkUmVwdWJsaWM6QWFyLGZhU3VzZTpFYXIsZmFBcHBTdG9yZUlvczokYXIsZmFVbHRyYWx5dGljc1lvbG86UGFyLGZhU3F1YXJlRHJpYmJibGU6WWtlLGZhRHJpYmJibGVTcXVhcmU6SWFyLGZhVWlraXQ6TmFyLGZhU3VwZXJwb3dlcnM6RmFyLGZhWW91dHViZTpPYXIsZmFFbWJlcjpSYXIsZmFCb290c3RyYXA6QmFyLGZhSXR1bmVzOkhhcixmYVNxdWFyZVhpbmc6WmtlLGZhWGluZ1NxdWFyZTpxYXIsZmFDc3MzQWx0OmphcixmYVNxdWFyZXNwYWNlOlZhcixmYVRyZWxsbzpVYXIsZmFWaWFkZW86V2FyLGZhU2VhcmNoZW5naW46R2FyLGZhVW5yZWFsRW5naW5lOllhcixmYVBheXBhbDpaYXIsZmFTcXVhcmVCbHVlc2t5OlhhcixmYURBbmREQmV5b25kOlFhcixmYU1pY3Jvc29mdDpLYXIsZmFGbHk6SmFyLGZhQ2NTdHJpcGU6ZWlyLGZhV29yZHByZXNzU2ltcGxlOnRpcixmYVNlbGxzeTpyaXIsZmFEYXNoY3ViZTphaXIsZmFHaXR0ZXI6aWlyLGZhV29sZlBhY2tCYXR0YWxpb246b2lyLGZhTGFzdGZtOm5pcixmYVNob3B3YXJlOnNpcixmYUJsb2dnZXI6bGlyLGZhRWRnZTpjaXIsZmFJb3hob3N0OmRpcixmYVNjaGxpeDp1aXIsZmFEQW5kRDpmaXIsZmFWdWVqczpwaXIsZmFNZXRhOmhpcixmYUNyZWF0aXZlQ29tbW9uc1NoYXJlOm1pcixmYVN0dWRpb3ZpbmFyaTpnaXIsZmFCaXRidWNrZXQ6eGlyLGZhVms6YmlyLGZhR2l0aHViOnZpcixmYUNvZGllcGllOnlpcixmYVBpZWRQaXBlcjp3aXIsZmFSYXNwYmVycnlQaTpNaXIsZmFDc3MzOmtpcixmYUh1YnNwb3Q6U2lyLGZhQ21wbGlkOnppcixmYUR5YWxvZzpDaXIsZmFFbGVtZW50b3I6X2lyLGZhRmlyc3RPcmRlcjpUaXIsZmFEcmliYmJsZTpMaXIsZmFMaW5rZWRpbjpSc2UsZmFDY1BheXBhbDpEaXIsZmFEaGw6QWlyLGZhVGV4OkVpcixmYUNsYXVkZTokaXIsZmFTaG9waWZ5OlBpcixmYVNxdWFyZVJlZGRpdDpYa2UsZmFSZWRkaXRTcXVhcmU6SWlyLGZhQ3JlYXRpdmVDb21tb25zTmM6TmlyLGZhR2FsYWN0aWNSZXB1YmxpYzpGaXIsZmFGYWNlYm9vazpCc2UsZmFHaXRsYWI6T2lyLGZhUXE6UmlyLGZhU3RyaXBlOkJpcixmYURhaWx5bW90aW9uOkhpcixmYVN0ZWFtOnFpcixmYVZlbm1vVjpqaXIsZmFTbmFwY2hhdDpRa2UsZmFTbmFwY2hhdEdob3N0OlZpcixmYUdhbGFjdGljU2VuYXRlOlVpcixmYVBob2VuaXhGcmFtZXdvcms6V2lyLGZhR2l0OkdpcixmYU9wdGluTW9uc3RlcjpZaXIsZmFKZW5raW5zOlppcixmYVNsaWRlc2hhcmU6WGlyLGZhVWJlcjpRaXIsZmFEaWdpdGFsT2NlYW46S2lyLGZhU291bmRjbG91ZDpKaXIsZmFTcXVhcmVGaWdtYTplMXIsZmFDcmVhdGl2ZUNvbW1vbnNTYTp0MXIsZmFDaHJvbWU6cjFyLGZhVHJhZGVGZWRlcmF0aW9uOmExcixmYVZhYWRpbjppMXIsZmFEZXZpYW50YXJ0Om8xcixmYU1lZGl1bTpjdyxmYU1lZGl1bU06bjFyLGZhT3BlbmNhcnQ6czFyLGZhWUNvbWJpbmF0b3I6bDFyLGZhTGluZTpjMXIsZmFBbWlsaWE6ZDFyLGZhQXN5bW1ldHJpazp1MXIsZmFQaGFicmljYXRvcjpmMXIsZmFCb3RzOnAxcixmYVZpbmU6aDFyLGZhTWVkcnQ6bTFyLGZhT3NpOmcxcixmYUdnOngxcixmYUJ1eXNlbGxhZHM6YjFyLGZhR29vZ2xlUGx1czp2MXIsZmFTY3JlZW5wYWw6eTFyLGZhQml0Y29pbjp3MXIsZmFTd2lmdDpNMXIsZmFGaWxlc1BpbndoZWVsOmsxcixmYUxhcmF2ZWw6UzFyLGZhV3Bmb3Jtczp6MXIsZmFTcGVha2VyRGVjazpDMXIsZmFGbGlja3I6XzFyLGZhQ2NWaXNhOlQxcixmYVVwd29yazpMMXIsZmFLYWthb1RhbGs6RDFyLGZhRmx1dHRlcjpBMXIsZmFCdWZmZXI6RTFyLGZhR3JhdGlwYXk6JDFyLGZhR29vZ2xlUGF5OlAxcixmYUFwcGxlOkkxcixmYVR1bWJscjpOMXIsZmFQaG9lbml4U3F1YWRyb246RjFyLGZhQ2VudGVyY29kZTpPMXIsZmFEZWJpYW46UjFyLGZhTWFzdG9kb246QjFyLGZhU2tldGNoOkgxcixmYVdlYkF3ZXNvbWU6cTFyLGZhU2FzczpqMXIsZmFUaHJlZW1hOlYxcixmYVNxdWFyZVdoYXRzYXBwOktrZSxmYVdoYXRzYXBwU3F1YXJlOlUxcixmYVNreXBlOlcxcixmYUFuZ3VsYXI6RzFyLGZhQ2lyY2xlWnVsaXA6WTFyLGZhT3BlbnN1c2U6WjFyLGZhRHJvcGJveDpYMXIsZmFEZWV6ZXI6UTFyLGZhQ3JlYXRpdmVDb21tb25zU2FtcGxpbmc6SzFyLGZhSmVkaU9yZGVyOkoxcixmYVJQcm9qZWN0OmVvcixmYUluc3RhbG9kOnRvcixmYUNhbmFkaWFuTWFwbGVMZWFmOnJvcixmYUV0aGVyZXVtOmFvcixmYUhvdXp6OmlvcixmYVZpYmVyOm9vcixmYUtpY2tzdGFydGVyOkprZSxmYVNxdWFyZUtpY2tzdGFydGVyOm5vcixmYVNwb3RpZnk6c29yLGZhTGVhbnB1Yjpsb3IsZmFKYXZhOmNvcixmYU5mY1N5bWJvbDpkb3IsZmFXb2R1OnVvcixmYVNxdWFyZVN0ZWFtOmVTZSxmYVN0ZWFtU3F1YXJlOnBvcixmYUNyZWF0aXZlQ29tbW9uc05jRXU6aG9yLGZhTnBtOm1vcixmYUNsb3Vkc2NhbGU6Z29yLGZhVGhlbWVjbzp4b3IsZmFHb29nbGVQbGF5OmJvcixmYUtvcnZ1ZTp2b3IsZmFXM2M6eW9yLGZhR3Jhdjp3b3IsZmFBd3M6TW9yLGZhR2xpZGVHOmtvcixmYUpzZmlkZGxlOlNvcixmYUtleWJhc2U6em9yLGZhTHVtb25Ecm9wOkNvcixmYUZvcmdlam86X29yLGZhUG9zdGdyZXNxbDpUb3IsZmFXZWVibHk6TG9yLGZhRG9ja2VyOkRvcixmYU1hZ2VudG86QW9yLGZhVG9yQnJvd3NlcjpFb3IsZmFHaXRBbHQ6JG9yLGZhRmlyZWZveEJyb3dzZXI6UG9yLGZhQ2xvdWRzbWl0aDpJb3IsZmFXaXphcmRzT2ZUaGVDb2FzdDpOb3IsZmFDcmVhdGl2ZUNvbW1vbnNOZDpGb3IsZmFVc3BzOk9vcixmYVNxdWFyZUxldHRlcmJveGQ6Um9yLGZhTWFuZGFsb3JpYW46Qm9yLGZhU2xhY2s6dFNlLGZhU2xhY2tIYXNoOkhzZSxmYUFuZ2VsbGlzdDpIb3IsZmFBbmRyb2lkOnFvcixmYU1lZXR1cDpqb3IsZmFGb250aWNvbnNGaTpWb3IsZmFQYWxmZWQ6VW9yLGZhV3BiZWdpbm5lcjpXb3IsZmFEaWFzcG9yYTpHb3IsZmFQcm9kdWN0SHVudDpZb3IsZmFTcXVhcmVVcHdvcms6Wm9yLGZhQ3V0dGxlZmlzaDpYb3IsZmFNZWRhcHBzOlFvcixmYVBpeDpLb3IsZmFTcXVhcmVUdW1ibHI6clNlLGZhVHVtYmxyU3F1YXJlOkpvcixmYVJlYWN0OmVucixmYUh1Z2dpbmdGYWNlOnRucixmYUp4bDpybnIsZmFTcXVhcmVMaW5rZWRpbjphbnIsZmFDc3M6aW5yLGZhSGFzaG5vZGU6b25yLGZhUmVkZGl0QWxpZW46bm5yLGZhVGlrdG9rOnFzZSxmYVdvcmRwcmVzczpzbnIsZmFJZGVhbDpsbnIsZmFQaWVkUGlwZXJQcDpjbnIsZmFVc3N1bm5haDpkbnIsZmFGb3J0QXdlc29tZUFsdDp1bnIsZmFCdXJvbW9iZWxleHBlcnRlOmZucixmYUJpbGliaWxpOnBucixmYU5lb3M6aG5yLGZhRGV2Om1ucixmYUhvdGphcjpnbnIsZmFEb2NodWI6eG5yLGZhVmltZW86Ym5yLGZhTWF4Y2RuOnZucixmYVNxdWFyZUZvbnRBd2Vzb21lU3Ryb2tlOmFTZSxmYUZvbnRBd2Vzb21lQWx0OnlucixmYVNwZWFrYXA6d25yLGZhRmFudGFzeUZsaWdodEdhbWVzOk1ucixmYUxpbnV4OmtucixmYUNvdHRvbkJ1cmVhdTpTbnIsZmFHb29nbGVXYWxsZXQ6em5yLGZhRm91cnNxdWFyZTpDbnIsZmFTaGlydHNpbmJ1bGs6X25yLGZhTWludGJpdDpUbnIsZmFadWxpcDpMbnIsZmFTdGF5bGlua2VkOkRucixmYVdlYmZsb3c6QW5yLGZhUmVucmVuOkVucixmYUtvRmk6JG5yLGZhUmV2OlBucixmYUtleWNkbjpJbnIsZmFIaXJlQUhlbHBlcjpObnIsZmFTcXVhcmVIYWNrZXJOZXdzOmlTZSxmYUhhY2tlck5ld3NTcXVhcmU6Rm5yLGZhQ3JlYXRpdmVDb21tb25zUGRBbHQ6T25yLGZhT3JjaWQ6Um5yLGZhQm9hcmRHYW1lR2VlazpvU2UsZmFCZ2c6Qm5yLGZhQmVoYW5jZTpIbnIsZmFNb25lcm86cW5yLGZhRmlnbWE6am5yLGZhSW5zdGFncmFtOmpzZSxmYVBlcmJ5dGU6Vm5yLGZhU3F1YXJlVmltZW86blNlLGZhVmltZW9TcXVhcmU6VW5yLGZhUHVzaGVkOlducixmYU1peGNsb3VkOkducixmYVlhbmRleEludGVybmF0aW9uYWw6WW5yLGZhSGl2ZTpabnIsZmFDcmVhdGl2ZUNvbW1vbnNaZXJvOlhucixmYVNxdWFyZVNuYXBjaGF0OnNTZSxmYVNuYXBjaGF0U3F1YXJlOlFucixmYVRoZW1laXNsZTpLbnIsZmFEYXJ0TGFuZzpKbnIsZmFEZXBsb3lkb2c6ZXNyLGZhRmxpcGJvYXJkOnRzcixmYUJ1eU5MYXJnZTpyc3IsZmFXYXRjaG1hbk1vbml0b3Jpbmc6YXNyLGZhSGlwczppc3IsZmFDbG91ZHZlcnNpZnk6b3NyLGZhR29vZHJlYWRzOm5zcixmYVRpZGFsOnNzcixmYVVuaXR5OmxzcixmYVRlbmNlbnRXZWlibzpjc3IsZmFGcmVlQ29kZUNhbXA6ZHNyLGZhWFR3aXR0ZXI6dXNyLGZhU3RpY2tlck11bGU6ZnNyLGZhVHdpdGNoOnBzcixmYUtpY2tzdGFydGVySzpoc3IsZmFDcml0aWNhbFJvbGU6bXNyLGZhU3RlYW1TeW1ib2w6Z3NyLGZhTWFpbGNoaW1wOnhzcixmYUx1bW9uOmJzcixmYU51dHJpdGlvbml4OnZzcixmYUNyZWF0aXZlQ29tbW9uc1NhbXBsaW5nUGx1czp5c3IsZmFSZWRoYXQ6d3NyLGZhU3F1YXJlUGllZFBpcGVyOmxTZSxmYVBpZWRQaXBlclNxdWFyZTpNc3IsZmFXaGF0c2FwcDprc3IsZmFJbWRiOlNzcixmYVB5dGhvbjp6c3IsZmFDYXNoQXBwOkNzcixmYVBpbnRlcmVzdFA6X3NyLGZhV2htY3M6VHNyLGZhSm9nZXQ6THNyLGZhU3F1YXJlWW91dHViZTpjU2UsZmFZb3V0dWJlU3F1YXJlOkRzcixmYUF0bGFzc2lhbjpBc3IsZmFQaWVkUGlwZXJIYXQ6RXNyLGZhSW50ZXJuZXRFeHBsb3Jlcjokc3IsZmFBaXJibmI6UHNyLGZhSnM6SXNyLGZhUXVpbnNjYXBlOk5zcixmYUFkdmVyc2FsOkZzcixmYUNyZWF0aXZlQ29tbW9uczpPc3IsZmFOb3Rpb246UnNyLGZhQ2hyb21lY2FzdDpCc3IsZmFVbHRyYWx5dGljc0h1YjpIc3IsZmFXaWtpcGVkaWFXOnFzcixmYVNpdHJveDpqc3IsZmFTcXVhcmVHaXRsYWI6ZFNlLGZhR2l0bGFiU3F1YXJlOlZzcixmYVNob2VsYWNlOlVzcixmYU9wZW5zdHJlZXRtYXA6V3NyLGZhU2VsbGNhc3Q6R3NyLGZhTWl4OllzcixmYUNjQXBwbGVQYXk6WnNyLGZhU29sYW5hOlhzcixmYVR5cGVzY3JpcHQ6UXNyLGZhQnJhdmU6S3NyLGZhRXRzeTpKc3IsZmFCdGM6ZTJyLGZhQWRuOnQycixmYVNxdWFyZVhUd2l0dGVyOnIycixmYVNxdWFyZUZvbnRBd2Vzb21lOmEycixmYUZvcnVtYmVlOmkycixmYTQyR3JvdXA6dVNlLGZhSW5ub3NvZnQ6bzJyLGZhU3R1bWJsZXVwb25DaXJjbGU6bjJyLGZhU3ltZm9ueTpzMnIsZmFTYWxlc2ZvcmNlOmwycixmYVNvdXJjZXRyZWU6YzJyLGZhTGlua2VkaW5JbjpkMnIsZmFIdG1sNTp1MnIsZmFSdXN0OmYycixmYUhvcm5iaWxsOnAycixmYVBocDpoMnIsZmFEaXNxdXM6bTJyLGZhNTAwcHg6ZzJyLGZhQWZmaWxpYXRldGhlbWU6eDJyLGZhUmVkUml2ZXI6YjJyLGZhVHdpdHRlcjpWc2UsZmFGb3J0QXdlc29tZTp2MnIsZmFNaXhlcjp5MnIsZmFMeWZ0OncycixmYUFwcGxlUGF5Ok0ycixmYUFydHN0YXRpb246azJyLGZhTm9kZUpzOlMycixmYVVuY2hhcnRlZDp6MnIsZmFQbGF5c3RhdGlvbjpDMnIsZmFNaWNyb2Jsb2c6XzJyLGZhR2l0a3Jha2VuOlQycixmYVRlbGVncmFtOmZTZSxmYVRlbGVncmFtUGxhbmU6TDJyLGZhVWx0cmFseXRpY3M6RDJyLGZhSXR1bmVzTm90ZTpBMnIsZmFMZXNzOkUycixmYUZpcmVmb3g6JDJyLGZhS2FnZ2xlOlAycixmYUZhY2Vib29rTWVzc2VuZ2VyOkkycixmYUF1ZGlibGU6TjJyLGZhUGF0cmVvbjpGMnIsZmFWbnY6TzJyLGZhUGFnZWxpbmVzOlIycixmYUFtYXpvbjpCMnIsZmFFbnZpcmE6SDJyLGZhTGlub2RlOnEycixmYUFjY3Vzb2Z0OmoycixmYUVybGFuZzpWMnIsZmFVbmlzb246VTJyLGZhQ2NEaXNjb3ZlcjpXMnIsZmFTYWZhcmk6RzJyLGZhU3BhY2VBd2Vzb21lOlkycixmYU5vZGU6WjJyLGZhQ29kZXBlbjpYMnIsZmFSYXZlbHJ5OlEycixmYUFsaXBheTpLMnIsZmFDY0FtZXg6SjJyLGZhUGllZFBpcGVyQWx0OmVscixmYUxldHRlcmJveGQ6dGxyLGZhT3BlcmE6cmxyLGZhV2VpYm86YWxyLGZhUmVhZG1lOmlscixmYUdvbGFuZzpvbHIsZmFTdGFja0V4Y2hhbmdlOm5scixmYUd1bHA6c2xyLGZhWWVscDpsbHIsZmFHb2ZvcmU6Y2xyLGZhQXZpYXRvOmRscixmYVBhZGxldDp1bHIsZmFFZGdlTGVnYWN5OmZscixmYVNxdWFyZUxhc3RmbTpwU2UsZmFMYXN0Zm1TcXVhcmU6cGxyLGZhR29vZHJlYWRzRzpobHIsZmFDY01hc3RlcmNhcmQ6bWxyLGZhRGlzY291cnNlOmdscixmYUJsYWNrVGllOnhscixmYVNxdWFyZUZhY2Vib29rOmhTZSxmYUZhY2Vib29rU3F1YXJlOmJscixmYUJhdHRsZU5ldDp2bHIsZmFCaW1vYmplY3Q6eWxyLGZhU3ZlbHRlOndscixmYVNxdWFyZURlc2twcm86TWxyLGZhVGFpbHdpbmRDc3M6a2xyfX0pO3ZhciBFYmEsbVNlLHpscixDbHIsZ1NlLF9scixmdyxUbHIsTGxyLERscixBbHIseFNlLEVsciwkbHIsUGxyLHB3LElscixiU2UsTmxyLHZTZSxGbHIsT2xyLFJscixCbHIseVNlLEhscix3U2UscWxyLE1TZSxqbHIsa1NlLFZscixTU2UsVWxyLHpTZSxXbHIsQ1NlLEdscixZbHIsX1NlLFpscixUU2UsWGxyLExTZSxRbHIsRFNlLEtscixKbHIsQVNlLGVjcixFU2UsdGNyLCRTZSxyY3IsUFNlLGFjcixJU2UsaWNyLG9jcixuY3IsVXNlLHNjcixsY3IsY2NyLGRjcix1Y3IsZmNyLHBjcixoY3IsV3NlLG1jcixnY3IsTlNlLHhjcixiY3IsdmNyLHljcix3Y3IsTWNyLGtjcixTY3IsRlNlLHpjcixDY3IsX2NyLEU5LFRjcixMY3IsT1NlLERjcixBY3IsUlNlLEVjcixKc2UsJGNyLFBjcixHc2UsSWNyLE5jcixCU2UsRmNyLE9jcixSY3IsSFNlLEJjcixxU2UsSGNyLFlzZSxxY3IsamNyLGpTZSxWY3IsVlNlLFVjcixXY3IsR2NyLFVTZSxZY3IsV1NlLFpjcixHU2UsWGNyLFlTZSxRY3IsS2NyLEpjcixlMHIsWlNlLHQwcixyMHIsWFNlLGEwcixpMHIsUVNlLG8wcixuMHIsS1NlLHMwcixsMHIsYzByLGR3LGQwcix1MHIsZjByLGh3LHAwcixoMHIsbTByLEpTZSxnMHIseDByLGV6ZSxiMHIsdHplLHYwcix1dyx5MHIsdzByLE0wcixyemUsazByLFpzZSxTMHIsejByLEMwcixfMHIsYXplLFQwcixYc2UsTDByLEQwcixpemUsQTByLG96ZSxFMHIsJDByLG56ZSxQMHIsc3plLEkwcixRc2UsTjByLEYwcixPMHIsbXcsUjByLEIwcixIMHIscTByLGx6ZSxqMHIsY3plLFYwcixkemUsVTByLHV6ZSxXMHIsZnplLEcwcixwemUsWTByLEtzZSxaMHIsWDByLFEwcixLMHIsaHplLEowcixtemUsZTRyLGd6ZSx0NHIseHplLHI0cixhNHIsaTRyLG80cixuNHIsczRyLGw0cixiemUsYzRyLHZ6ZSxkNHIsdTRyLHl6ZSxmNHIsd3plLHA0cixNemUsaDRyLGUyZSxtNHIsa3plLGc0cix4NHIsU3plLGI0cix6emUsdjRyLHk0cix3NHIsQ3plLE00cixrNHIsX3plLFM0cix6NHIsQzRyLF80cixUemUsVDRyLEx6ZSxMNHIsRHplLEQ0cixBNHIsRTRyLEF6ZSwkNHIsRXplLFA0ciwkemUsSTRyLE40cixQemUsRjRyLEl6ZSxPNHIsUjRyLE56ZSxCNHIsSDRyLHE0ciwkYmEsajRyPWwoKCk9PntFYmE9ImZhciIsbVNlPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6InNxdWFyZS1taW51cyIsaWNvbjpbNDQ4LDUxMixbNjE3NjcsIm1pbnVzLXNxdWFyZSJdLCJmMTQ2IiwiTTY0IDgwYy04LjggMC0xNiA3LjItMTYgMTZsMCAzMjBjMCA4LjggNy4yIDE2IDE2IDE2bDMyMCAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyMGMwLTguOC03LjItMTYtMTYtMTZMNjQgODB6TTAgOTZDMCA2MC43IDI4LjcgMzIgNjQgMzJsMzIwIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAzMjBjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDk2ek0xMzYgMjMybDE3NiAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC0xNzYgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNHoiXX0semxyPW1TZSxDbHI9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiY2FsZW5kYXItY2hlY2siLGljb246WzQ0OCw1MTIsW10sImYyNzQiLCJNMzI4IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRsMCA0MCAzMiAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMjg4YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDQ4MGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCAxMjhDMCA5Mi43IDI4LjcgNjQgNjQgNjRsMzIgMCAwLTQwYzAtMTMuMyAxMC43LTI0IDI0LTI0czI0IDEwLjcgMjQgMjRsMCA0MCAxNjAgMCAwLTQwYzAtMTMuMyAxMC43LTI0IDI0LTI0ek02NCAxMTJjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDI4OGMwIDguOCA3LjIgMTYgMTYgMTZsMzIwIDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMjg4YzAtOC44LTcuMi0xNi0xNi0xNkw2NCAxMTJ6bTIzMC43IDY1LjljNy44LTEwLjcgMjIuOC0xMy4xIDMzLjUtNS4zIDEwLjcgNy44IDEzLjEgMjIuOCA1LjMgMzMuNUwyMTEuNCAzNzQuMWMtNC4xIDUuNy0xMC41IDkuMy0xNy41IDkuOC03IC41LTEzLjktMi0xOC44LTYuOWwtNTUuOS01NS45Yy05LjQtOS40LTkuNC0yNC42IDAtMzMuOXMyNC42LTkuNCAzMy45IDBsMzYgMzYgMTA1LjYtMTQ1LjJ6Il19LGdTZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJmYWNlLWtpc3MiLGljb246WzUxMiw1MTIsWzEyODUzNSwia2lzcyJdLCJmNTk2IiwiTTQ2NCAyNTZhMjA4IDIwOCAwIDEgMCAtNDE2IDAgMjA4IDIwOCAwIDEgMCA0MTYgMHpNMCAyNTZhMjU2IDI1NiAwIDEgMSA1MTIgMCAyNTYgMjU2IDAgMSAxIC01MTIgMHptMjQwIDBsMzIgMGMyNi41IDAgNDggMjEuNSA0OCA0OCAwIDEyLjMtNC42IDIzLjUtMTIuMiAzMiA3LjYgOC41IDEyLjIgMTkuNyAxMi4yIDMyIDAgMjYuNS0yMS41IDQ4LTQ4IDQ4bC0zMiAwYy04LjggMC0xNi03LjItMTYtMTZzNy4yLTE2IDE2LTE2bDE2IDBjOC44IDAgMTYtNy4yIDE2LTE2cy03LjItMTYtMTYtMTZsLTE2IDBjLTguOCAwLTE2LTcuMi0xNi0xNnM3LjItMTYgMTYtMTZsMTYgMGM4LjggMCAxNi03LjIgMTYtMTZzLTcuMi0xNi0xNi0xNmwtMTYgMGMtOC44IDAtMTYtNy4yLTE2LTE2czcuMi0xNiAxNi0xNnptLTk2LTQ4YTMyIDMyIDAgMSAxIDY0IDAgMzIgMzIgMCAxIDEgLTY0IDB6bTE5Mi0zMmEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6Il19LF9scj1nU2UsZnc9e3ByZWZpeDoiZmFyIixpY29uTmFtZToicGFzdGUiLGljb246WzUxMiw1MTIsWyJmaWxlLWNsaXBib2FyZCJdLCJmMGVhIiwiTTY0IDQ4bDIyNCAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDQ4IDQ4IDAgMC00OGMwLTM1LjMtMjguNy02NC02NC02NEw2NCAwQzI4LjcgMCAwIDI4LjcgMCA2NEwwIDM4NGMwIDM1LjMgMjguNyA2NCA2NCA2NGwxMTIgMCAwLTQ4LTExMiAwYy04LjggMC0xNi03LjItMTYtMTZMNDggNjRjMC04LjggNy4yLTE2IDE2LTE2em0xNzYgNzJjMC0xMy4zLTEwLjctMjQtMjQtMjRMMTA0IDk2Yy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDEwNS42IDBjOC44LTguNiAxOS0xNS44IDMwLjItMjEuMSAuMS0uOSAuMi0xLjkgLjItMi45ek00NDggNDY0bC0xNjAgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMjI0YzAtOC44IDcuMi0xNiAxNi0xNmwxMDEuNSAwYzQuMiAwIDguMyAxLjcgMTEuMyA0LjdsNTguNSA1OC41YzMgMyA0LjcgNy4xIDQuNyAxMS4zTDQ2NCA0NDhjMCA4LjgtNy4yIDE2LTE2IDE2ek0yMjQgMjI0bDAgMjI0YzAgMzUuMyAyOC43IDY0IDY0IDY0bDE2MCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMTY1LjVjMC0xNy02LjctMzMuMy0xOC43LTQ1LjNsLTU4LjUtNTguNWMtMTItMTItMjguMy0xOC43LTQ1LjMtMTguN0wyODggMTYwYy0zNS4zIDAtNjQgMjguNy02NCA2NHoiXX0sVGxyPWZ3LExscj17cHJlZml4OiJmYXIiLGljb25OYW1lOiJoYW5kLXBvaW50LWxlZnQiLGljb246WzUxMiw1MTIsW10sImYwYTUiLCJNNjQgMTI4bDE3Ny42IDBjLTEgNS4yLTEuNiAxMC41LTEuNiAxNmwwIDE2LTE3NiAwYy04LjggMC0xNi03LjItMTYtMTZzNy4yLTE2IDE2LTE2em0yMjQgMTZjMC0xNy43IDE0LjMtMzIgMzItMzJsMjQgMGM2Ni4zIDAgMTIwIDUzLjcgMTIwIDEyMGwwIDQ4YzAgNTIuNS0zMy43IDk3LjEtODAuNyAxMTMuNCAuNS0zLjEgLjctNi4yIC43LTkuNCAwLTIwLTkuMi0zNy45LTIzLjYtNDkuNyA0LjktOSA3LjYtMTkuNCA3LjYtMzAuMyAwLTE1LjEtNS4zLTI5LTE0LTQwIDguOC0xMSAxNC0yNC45IDE0LTQwbDAtNDBjMC0xMy4zLTEwLjctMjQtMjQtMjRzLTI0IDEwLjctMjQgMjRsMCA0MGMwIDguOC03LjIgMTYtMTYgMTZzLTE2LTcuMi0xNi0xNmwwLTgwem0zMi04MGwwIDBjLTE4IDAtMzQuNiA2LTQ4IDE2TDY0IDgwQzI4LjcgODAgMCAxMDguNyAwIDE0NHMyOC43IDY0IDY0IDY0bDgyIDBjLTEuMyA1LjEtMiAxMC41LTIgMTYgMCAyNS4zIDE0LjcgNDcuMiAzNiA1Ny42LTIuNiA3LTQgMTQuNS00IDIyLjQgMCAyMCA5LjIgMzcuOSAyMy42IDQ5LjctNC45IDktNy42IDE5LjQtNy42IDMwLjMgMCAzNS4zIDI4LjcgNjQgNjQgNjRsODggMGM5Mi44IDAgMTY4LTc1LjIgMTY4LTE2OGwwLTQ4YzAtOTIuOC03NS4yLTE2OC0xNjgtMTY4bC0yNCAwek0yNTYgNDAwYy04LjggMC0xNi03LjItMTYtMTZzNy4yLTE2IDE2LTE2bDY0IDBjOC44IDAgMTYgNy4yIDE2IDE2cy03LjIgMTYtMTYgMTZsLTY0IDB6TTI0MCAyMjRjMCA1LjUgLjcgMTAuOSAyIDE2bC0zNCAwYy04LjggMC0xNi03LjItMTYtMTZzNy4yLTE2IDE2LTE2bDMyIDAgMCAxNnptMjQgNjRsNDAgMGM4LjggMCAxNiA3LjIgMTYgMTZzLTcuMiAxNi0xNiAxNmwtNjQgMGMtOC44IDAtMTYtNy4yLTE2LTE2czcuMi0xNiAxNi0xNmwyNCAweiJdfSxEbHI9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiZmlsZS1leGNlbCIsaWNvbjpbMzg0LDUxMixbXSwiZjFjMyIsIk02NCA0OGwxMTIgMCAwIDg4YzAgMzkuOCAzMi4yIDcyIDcyIDcybDg4IDAgMCAyNDBjMCA4LjgtNy4yIDE2LTE2IDE2TDY0IDQ2NGMtOC44IDAtMTYtNy4yLTE2LTE2TDQ4IDY0YzAtOC44IDcuMi0xNiAxNi0xNnpNMjI0IDY3LjlsOTIuMSA5Mi4xLTY4LjEgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRsMC02OC4xek02NCAwQzI4LjcgMCAwIDI4LjcgMCA2NEwwIDQ0OGMwIDM1LjMgMjguNyA2NCA2NCA2NGwyNTYgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTI2MS41YzAtMTctNi43LTMzLjMtMTguNy00NS4zTDI0Mi43IDE4LjdDMjMwLjcgNi43IDIxNC41IDAgMTk3LjUgMEw2NCAwem05OS4yIDI2NS42Yy04LTEwLjYtMjMtMTIuOC0zMy42LTQuOHMtMTIuOCAyMy00LjggMzMuNkwxNjIgMzQ0IDEyNC44IDM5My42Yy04IDEwLjYtNS44IDI1LjYgNC44IDMzLjZzMjUuNiA1LjggMzMuNi00LjhMMTkyIDM4NCAyMjAuOCA0MjIuNGM4IDEwLjYgMjMgMTIuOCAzMy42IDQuOHMxMi44LTIzIDQuOC0zMy42TDIyMiAzNDQgMjU5LjIgMjk0LjRjOC0xMC42IDUuOC0yNS42LTQuOC0zMy42cy0yNS42LTUuOC0zMy42IDQuOEwxOTIgMzA0IDE2My4yIDI2NS42eiJdfSxBbHI9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiZW52ZWxvcGUiLGljb246WzUxMiw1MTIsWzEyODM4Niw5OTkzLDYxNDQzXSwiZjBlMCIsIk02MS40IDY0QzI3LjUgNjQgMCA5MS41IDAgMTI1LjQgMCAxMjYuMyAwIDEyNy4xIC4xIDEyOEwwIDEyOCAwIDM4NGMwIDM1LjMgMjguNyA2NCA2NCA2NGwzODQgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTI1Ni0uMSAwYzAtLjkgLjEtMS43IC4xLTIuNiAwLTMzLjktMjcuNS02MS40LTYxLjQtNjEuNEw2MS40IDY0ek00NjQgMTkyLjNMNDY0IDM4NGMwIDguOC03LjIgMTYtMTYgMTZMNjQgNDAwYy04LjggMC0xNi03LjItMTYtMTZsMC0xOTEuNyAxNTQuOCAxMTcuNGMzMS40IDIzLjkgNzQuOSAyMy45IDEwNi40IDBMNDY0IDE5Mi4zek00OCAxMjUuNEM0OCAxMTggNTQgMTEyIDYxLjQgMTEybDM4OS4yIDBjNy40IDAgMTMuNCA2IDEzLjQgMTMuNCAwIDQuMi0yIDguMi01LjMgMTAuN0wyODAuMiAyNzEuNWMtMTQuMyAxMC44LTM0LjEgMTAuOC00OC40IDBMNTMuMyAxMzYuMWMtMy4zLTIuNS01LjMtNi41LTUuMy0xMC43eiJdfSx4U2U9e3ByZWZpeDoiZmFyIixpY29uTmFtZToic3F1YXJlLWNhcmV0LWRvd24iLGljb246WzQ0OCw1MTIsWyJjYXJldC1zcXVhcmUtZG93biJdLCJmMTUwIiwiTTM4NCA0MzJjOC44IDAgMTYtNy4yIDE2LTE2bDAtMzIwYzAtOC44LTcuMi0xNi0xNi0xNkw2NCA4MGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMzIwYzAgOC44IDcuMiAxNiAxNiAxNmwzMjAgMHptNjQtMTZjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDk2QzAgNjAuNyAyOC43IDMyIDY0IDMybDMyMCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMzIwek0yMjQgMzUyYy02LjcgMC0xMy0yLjgtMTcuNi03LjdsLTEwNC0xMTJjLTYuNS03LTguMi0xNy4yLTQuNC0yNS45UzExMC41IDE5MiAxMjAgMTkybDIwOCAwYzkuNSAwIDE4LjIgNS43IDIyIDE0LjRzMi4xIDE4LjktNC40IDI1LjlsLTEwNCAxMTJjLTQuNSA0LjktMTAuOSA3LjctMTcuNiA3Ljd6Il19LEVscj14U2UsJGxyPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6InRydWNrIixpY29uOls1NzYsNTEyLFsxMjg2NjYsOTk1MV0sImYwZDEiLCJNNjQgODBjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDI4OGMwIDguOCA3LjIgMTYgMTYgMTZsMy4zIDBjMTAuNC0zNi45IDQ0LjQtNjQgODQuNy02NHM3NC4yIDI3LjEgODQuNyA2NGwxMDIuNiAwYzQuOS0xNy40IDE1LjEtMzIuNyAyOC43LTQzLjlMMzY4IDk2YzAtOC44LTcuMi0xNi0xNi0xNkw2NCA4MHptMy4zIDM2OEw2NCA0NDhjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgOTZDMCA2MC43IDI4LjcgMzIgNjQgMzJsMjg4IDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAzMiA1NS40IDBjMTcgMCAzMy4zIDYuNyA0NS4zIDE4LjdsNDAuNiA0MC42YzEyIDEyIDE4LjcgMjguMyAxOC43IDQ1LjNMNTc2IDM4NGMwIDM1LjMtMjguNyA2NC02NCA2NGwtMy4zIDBjLTEwLjQgMzYuOS00NC40IDY0LTg0LjcgNjRzLTc0LjItMjcuMS04NC43LTY0bC0xMDIuNiAwYy0xMC40IDM2LjktNDQuNCA2NC04NC43IDY0cy03NC4yLTI3LjEtODQuNy02NHpNNDE2IDI1NmwxMTIgMCAwLTIzLjRjMC00LjItMS43LTguMy00LjctMTEuM2wtNDAuNi00MC42Yy0zLTMtNy4xLTQuNy0xMS4zLTQuN2wtNTUuNCAwIDAgODB6bTAgNDhsMCAzMi40YzIuNi0uMiA1LjMtLjQgOC0uNCA0MC4zIDAgNzQuMiAyNy4xIDg0LjcgNjRsMy4zIDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtODAtMTEyIDB6TTE1MiA0NjRhNDAgNDAgMCAxIDAgMC04MCA0MCA0MCAwIDEgMCAwIDgwem0yNzIgMGE0MCA0MCAwIDEgMCAwLTgwIDQwIDQwIDAgMSAwIDAgODB6Il19LFBscj17cHJlZml4OiJmYXIiLGljb25OYW1lOiJiZWxsIixpY29uOls0NDgsNTEyLFsxMjgyNzYsNjE2MDJdLCJmMGYzIiwiTTIyNCAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNGwwIDkuN0MxMTguNiA0NS4zIDU2IDExNS40IDU2IDIwMGwwIDE0LjVjMCAzNy43LTEwIDc0LjctMjkgMTA3LjNMNS4xIDM1OS4yQzEuOCAzNjUgMCAzNzEuNSAwIDM3OC4yIDAgMzk5LjEgMTYuOSA0MTYgMzcuOCA0MTZsMzcyLjQgMGMyMC45IDAgMzcuOC0xNi45IDM3LjgtMzcuOCAwLTYuNy0xLjgtMTMuMy01LjEtMTlMNDIxIDMyMS43Yy0xOS0zMi42LTI5LTY5LjYtMjktMTA3LjNsMC0xNC41YzAtODQuNi02Mi42LTE1NC43LTE0NC0xNjYuM2wwLTkuN2MwLTEzLjMtMTAuNy0yNC0yNC0yNHpNMzkyLjQgMzY4bC0zMzYuOSAwIDEyLjktMjIuMUM5MS43IDMwNiAxMDQgMjYwLjYgMTA0IDIxNC41bDAtMTQuNWMwLTY2LjMgNTMuNy0xMjAgMTIwLTEyMHMxMjAgNTMuNyAxMjAgMTIwbDAgMTQuNWMwIDQ2LjIgMTIuMyA5MS41IDM1LjUgMTMxLjRMMzkyLjQgMzY4ek0xNTYuMSA0NjRjOS45IDI4IDM2LjYgNDggNjcuOSA0OHM1OC0yMCA2Ny45LTQ4bC0xMzUuOCAweiJdfSxwdz17cHJlZml4OiJmYXIiLGljb25OYW1lOiJtZXNzYWdlIixpY29uOls1MTIsNTEyLFsiY29tbWVudC1hbHQiXSwiZjI3YSIsIk0yMDMuNyA1MTIuOXMwIDAgMCAwbC0zNy44IDI2LjdjLTcuMyA1LjItMTYuOSA1LjgtMjQuOSAxLjdTMTI4IDUyOSAxMjggNTIwbDAtNzItMzIgMGMtNTMgMC05Ni00My05Ni05NkwwIDEyOEMwIDc1IDQzIDMyIDk2IDMybDMyMCAwYzUzIDAgOTYgNDMgOTYgOTZsMCAyMjRjMCA1My00MyA5Ni05NiA5NmwtMTIwLjQgMC05MS45IDY0Ljl6bTY0LjMtMTA0LjFjOC4xLTUuNyAxNy44LTguOCAyNy43LTguOEw0MTYgNDAwYzI2LjUgMCA0OC0yMS41IDQ4LTQ4bDAtMjI0YzAtMjYuNS0yMS41LTQ4LTQ4LTQ4TDk2IDgwYy0yNi41IDAtNDggMjEuNS00OCA0OGwwIDIyNGMwIDI2LjUgMjEuNSA0OCA0OCA0OGw1NiAwYzEwLjQgMCAxOS4zIDYuNiAyMi42IDE1LjkgLjkgMi41IDEuNCA1LjIgMS40IDguMWwwIDQ5LjdjMzIuNy0yMy4xIDYzLjMtNDQuNyA5MS45LTY0Ljl6Il19LElscj1wdyxiU2U9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiZmFjZS1kaXp6eSIsaWNvbjpbNTEyLDUxMixbImRpenp5Il0sImY1NjciLCJNNDY0IDI1NmEyMDggMjA4IDAgMSAwIC00MTYgMCAyMDggMjA4IDAgMSAwIDQxNiAwek0wIDI1NmEyNTYgMjU2IDAgMSAxIDUxMiAwIDI1NiAyNTYgMCAxIDEgLTUxMiAwek0xMzQuMSAxNTMuOWwyNS45IDI1LjkgMjUuOS0yNS45YzcuOC03LjggMjAuNS03LjggMjguMyAwczcuOCAyMC41IDAgMjguM2wtMjUuOSAyNS45IDI1LjkgMjUuOWM3LjggNy44IDcuOCAyMC41IDAgMjguM3MtMjAuNSA3LjgtMjguMyAwbC0yNS45LTI1LjktMjUuOSAyNS45Yy03LjggNy44LTIwLjUgNy44LTI4LjMgMHMtNy44LTIwLjUgMC0yOC4zbDI1LjktMjUuOS0yNS45LTI1LjljLTcuOC03LjgtNy44LTIwLjUgMC0yOC4zczIwLjUtNy44IDI4LjMgMHptMTkyIDBsMjUuOSAyNS45IDI1LjktMjUuOWM3LjgtNy44IDIwLjUtNy44IDI4LjMgMHM3LjggMjAuNSAwIDI4LjNsLTI1LjkgMjUuOSAyNS45IDI1LjljNy44IDcuOCA3LjggMjAuNSAwIDI4LjNzLTIwLjUgNy44LTI4LjMgMGwtMjUuOS0yNS45LTI1LjkgMjUuOWMtNy44IDcuOC0yMC41IDcuOC0yOC4zIDBzLTcuOC0yMC41IDAtMjguM2wyNS45LTI1LjktMjUuOS0yNS45Yy03LjgtNy44LTcuOC0yMC41IDAtMjguM3MyMC41LTcuOCAyOC4zIDB6TTI1NiAyODhhNjQgNjQgMCAxIDEgMCAxMjggNjQgNjQgMCAxIDEgMC0xMjh6Il19LE5scj1iU2UsdlNlPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImNhbGVuZGFyLWRheXMiLGljb246WzQ0OCw1MTIsWyJjYWxlbmRhci1hbHQiXSwiZjA3MyIsIk0xMjAgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNGwwIDQwIDE2MCAwIDAtNDBjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNGwwIDQwIDMyIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAyODhjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDEyOEMwIDkyLjcgMjguNyA2NCA2NCA2NGwzMiAwIDAtNDBjMC0xMy4zIDEwLjctMjQgMjQtMjR6TTM4NCA0MzJjOC44IDAgMTYtNy4yIDE2LTE2bDAtNjQtODggMCAwIDgwIDcyIDB6bTE2LTEyOGwwLTgwLTg4IDAgMCA4MCA4OCAwem0tMTM2IDBsMC04MC04MCAwIDAgODAgODAgMHptLTEyOCAwbDAtODAtODggMCAwIDgwIDg4IDB6TTQ4IDM1MmwwIDY0YzAgOC44IDcuMiAxNiAxNiAxNmw3MiAwIDAtODAtODggMHptMTM2IDBsMCA4MCA4MCAwIDAtODAtODAgMHpNMTIwIDExMmwtNTYgMGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgNDggMzUyIDAgMC00OGMwLTguOC03LjItMTYtMTYtMTZsLTI2NCAweiJdfSxGbHI9dlNlLE9scj17cHJlZml4OiJmYXIiLGljb25OYW1lOiJoYW5kLXBvaW50LXVwIixpY29uOlszODQsNTEyLFs5NzU3XSwiZjBhNiIsIk02NCA2NGwwIDE3Ny42YzUuMi0xIDEwLjUtMS42IDE2LTEuNmwxNiAwIDAtMTc2YzAtOC44LTcuMi0xNi0xNi0xNlM2NCA1NS4yIDY0IDY0ek04MCAyODhjLTE3LjcgMC0zMiAxNC4zLTMyIDMybDAgMjRjMCA2Ni4zIDUzLjcgMTIwIDEyMCAxMjBsNDggMGM1Mi41IDAgOTcuMS0zMy43IDExMy40LTgwLjctMy4xIC41LTYuMiAuNy05LjQgLjctMjAgMC0zNy45LTkuMi00OS43LTIzLjYtOSA0LjktMTkuNCA3LjYtMzAuMyA3LjYtMTUuMSAwLTI5LTUuMy00MC0xNC0xMSA4LjgtMjQuOSAxNC00MCAxNGwtNDAgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNGw0MCAwYzguOCAwIDE2LTcuMiAxNi0xNnMtNy4yLTE2LTE2LTE2bC04MCAwek0wIDMyMGwwIDBjMC0xOCA2LTM0LjYgMTYtNDhMMTYgNjRDMTYgMjguNyA0NC43IDAgODAgMHM2NCAyOC43IDY0IDY0bDAgODJjNS4xLTEuMyAxMC41LTIgMTYtMiAyNS4zIDAgNDcuMiAxNC43IDU3LjYgMzYgNy0yLjYgMTQuNS00IDIyLjQtNCAyMCAwIDM3LjkgOS4yIDQ5LjcgMjMuNiA5LTQuOSAxOS40LTcuNiAzMC4zLTcuNiAzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDg4YzAgOTIuOC03NS4yIDE2OC0xNjggMTY4bC00OCAwQzc1LjIgNTEyIDAgNDM2LjggMCAzNDRsMC0yNHptMzM2LTY0YzAtOC44LTcuMi0xNi0xNi0xNnMtMTYgNy4yLTE2IDE2bDAgNjRjMCA4LjggNy4yIDE2IDE2IDE2czE2LTcuMiAxNi0xNmwwLTY0ek0xNjAgMjQwYzUuNSAwIDEwLjkgLjcgMTYgMmwwLTM0YzAtOC44LTcuMi0xNi0xNi0xNnMtMTYgNy4yLTE2IDE2bDAgMzIgMTYgMHptNjQgMjRsMCA0MGMwIDguOCA3LjIgMTYgMTYgMTZzMTYtNy4yIDE2LTE2bDAtNjRjMC04LjgtNy4yLTE2LTE2LTE2cy0xNiA3LjItMTYgMTZsMCAyNHoiXX0sUmxyPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImhhbmQtbGl6YXJkIixpY29uOls1MTIsNTEyLFtdLCJmMjU4IiwiTTcyIDExMmMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwxNjggMGMzNS4zIDAgNjQgMjguNyA2NCA2NHMtMjguNyA2NC02NCA2NGwtMTA0IDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsMTUyIDBjNC41IDAgOC45IDEuMyAxMi43IDMuNmw2NCA0MGM3IDQuNCAxMS4zIDEyLjEgMTEuMyAyMC40bDAgMjRjMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjRsMC0xMC43LTQ2LjktMjkuMy0xNDUuMSAwYy0zOS44IDAtNzItMzIuMi03Mi03MnMzMi4yLTcyIDcyLTcybDEwNCAwYzguOCAwIDE2LTcuMiAxNi0xNnMtNy4yLTE2LTE2LTE2TDcyIDIwOGMtMzkuOCAwLTcyLTMyLjItNzItNzJTMzIuMiA2NCA3MiA2NGwyMDkuNiAwYzQ2LjcgMCA5MC45IDIxLjUgMTE5LjcgNTguM2w3OC40IDEwMC4xYzIwLjkgMjYuNyAzMi4zIDU5LjcgMzIuMyA5My43TDUxMiA0MjRjMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjRsMC0xMDcuOWMwLTIzLjItNy44LTQ1LjgtMjIuMS02NC4xTDM2My41IDE1MS45Yy0xOS43LTI1LjItNDkuOS0zOS45LTgxLjktMzkuOUw3MiAxMTJ6Il19LEJscj17cHJlZml4OiJmYXIiLGljb25OYW1lOiJzcXVhcmUtZnVsbCIsaWNvbjpbNTEyLDUxMixbMTI4OTk3LDEyODk5OCwxMjg5OTksMTI5ZTMsMTI5MDAxLDEyOTAwMiwxMjkwMDMsMTEwMzUsMTEwMzZdLCJmNDVjIiwiTTQ0OCA0OGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzODRjMCA4LjgtNy4yIDE2LTE2IDE2TDY0IDQ2NGMtOC44IDAtMTYtNy4yLTE2LTE2TDQ4IDY0YzAtOC44IDcuMi0xNiAxNi0xNmwzODQgMHpNNjQgMEMyOC43IDAgMCAyOC43IDAgNjRMMCA0NDhjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzg0IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zODRjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMHoiXX0seVNlPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImNpcmNsZS1wYXVzZSIsaWNvbjpbNTEyLDUxMixbNjIwOTIsInBhdXNlLWNpcmNsZSJdLCJmMjhiIiwiTTI1NiA0OGEyMDggMjA4IDAgMSAxIDAgNDE2IDIwOCAyMDggMCAxIDEgMC00MTZ6bTAgNDY0YTI1NiAyNTYgMCAxIDAgMC01MTIgMjU2IDI1NiAwIDEgMCAwIDUxMnpNMjI0IDE4NGMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGwwIDE0NGMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtMTQ0em0xMTIgMGMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGwwIDE0NGMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtMTQ0eiJdfSxIbHI9eVNlLHdTZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJoYXJkLWRyaXZlIixpY29uOls0NDgsNTEyLFsxMjg0MzYsImhkZCJdLCJmMGEwIiwiTTY0IDgwYy04LjggMC0xNiA3LjItMTYgMTZsMCAxNjJjNS4xLTEuMyAxMC41LTIgMTYtMmwzMjAgMGM1LjUgMCAxMC45IC43IDE2IDJsMC0xNjJjMC04LjgtNy4yLTE2LTE2LTE2TDY0IDgwek00OCAzMjBsMCA5NmMwIDguOCA3LjIgMTYgMTYgMTZsMzIwIDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtOTZjMC04LjgtNy4yLTE2LTE2LTE2TDY0IDMwNGMtOC44IDAtMTYgNy4yLTE2IDE2ek0wIDMyMEwwIDk2QzAgNjAuNyAyOC43IDMyIDY0IDMybDMyMCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMzIwYzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDQ4MGMtMzUuMyAwLTY0LTI4LjctNjQtNjRsMC05NnptMjE2IDQ4YTI0IDI0IDAgMSAxIDQ4IDAgMjQgMjQgMCAxIDEgLTQ4IDB6bTEyMC0yNGEyNCAyNCAwIDEgMSAwIDQ4IDI0IDI0IDAgMSAxIDAtNDh6Il19LHFscj13U2UsTVNlPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImZpbGUtemlwcGVyIixpY29uOlszODQsNTEyLFsiZmlsZS1hcmNoaXZlIl0sImYxYzYiLCJNNjQgNDhsMTEyIDAgMCA4OGMwIDM5LjggMzIuMiA3MiA3MiA3Mmw4OCAwIDAgMjQwYzAgOC44LTcuMiAxNi0xNiAxNkw2NCA0NjRjLTguOCAwLTE2LTcuMi0xNi0xNkw0OCA2NGMwLTguOCA3LjItMTYgMTYtMTZ6TTIyNCA2Ny45bDkyLjEgOTIuMS02OC4xIDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0bDAtNjguMXpNNjQgMEMyOC43IDAgMCAyOC43IDAgNjRMMCA0NDhjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMjU2IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0yNjEuNWMwLTE3LTYuNy0zMy4zLTE4LjctNDUuM0wyNDIuNyAxOC43QzIzMC43IDYuNyAyMTQuNSAwIDE5Ny41IDBMNjQgMHpNODAgMTA0YzAgMTMuMyAxMC43IDI0IDI0IDI0bDE2IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTE2IDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0em0wIDgwYzAgMTMuMyAxMC43IDI0IDI0IDI0bDMyIDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTMyIDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0em02NCA1NmwtMzIgMGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJsMCA0OGMwIDI2LjUgMjEuNSA0OCA0OCA0OHM0OC0yMS41IDQ4LTQ4bDAtNDhjMC0xNy43LTE0LjMtMzItMzItMzJ6bS0xNiA2NGExNiAxNiAwIDEgMSAwIDMyIDE2IDE2IDAgMSAxIDAtMzJ6Il19LGpscj1NU2Usa1NlPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImZsb3BweS1kaXNrIixpY29uOls0NDgsNTEyLFsxMjgxOTAsMTI4NDI2LCJzYXZlIl0sImYwYzciLCJNNjQgODBjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDMyMGMwIDguOCA3LjIgMTYgMTYgMTZsMzIwIDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMjQyLjdjMC00LjItMS43LTguMy00LjctMTEuM0wzMjAgODYuNiAzMjAgMTc2YzAgMTcuNy0xNC4zIDMyLTMyIDMybC0xNjAgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC05Ni0zMiAwem04MCAwbDAgODAgMTI4IDAgMC04MC0xMjggMHpNMCA5NkMwIDYwLjcgMjguNyAzMiA2NCAzMmwyNDIuNyAwYzE3IDAgMzMuMyA2LjcgNDUuMyAxOC43TDQyOS4zIDEyOGMxMiAxMiAxOC43IDI4LjMgMTguNyA0NS4zTDQ0OCA0MTZjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDk2ek0xNjAgMzIwYTY0IDY0IDAgMSAxIDEyOCAwIDY0IDY0IDAgMSAxIC0xMjggMHoiXX0sVmxyPWtTZSxTU2U9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiZmFjZS1ncmluLXRvbmd1ZS1zcXVpbnQiLGljb246WzUxMiw1MTIsWzEyODU0MSwiZ3Jpbi10b25ndWUtc3F1aW50Il0sImY1OGEiLCJNNDY0IDI1NmMwLTExNC45LTkzLjEtMjA4LTIwOC0yMDhTNDggMTQxLjEgNDggMjU2YzAgNzUuOSA0MC43IDE0Mi40IDEwMS41IDE3OC43LTMuNi0xMC45LTUuNS0yMi42LTUuNS0zNC43bDAtMzcuNWMtMTAuMi0xMi42LTE4LjMtMjYuOS0yMy44LTQyLjQtNC4xLTExLjYgNy44LTIxLjQgMTkuNi0xNy44IDM0LjcgMTAuNiA3NC4yIDE2LjUgMTE2LjEgMTYuNSA0MiAwIDgxLjUtNiAxMTYuMy0xNi42IDExLjgtMy42IDIzLjcgNi4xIDE5LjYgMTcuOC01LjUgMTUuNi0xMy42IDI5LjktMjMuOCA0Mi41bDAgMzcuNWMwIDEyLjEtMS45IDIzLjgtNS41IDM0LjcgNjAuOC0zNi4zIDEwMS41LTEwMi43IDEwMS41LTE3OC43ek0wIDI1NmEyNTYgMjU2IDAgMSAxIDUxMiAwIDI1NiAyNTYgMCAxIDEgLTUxMiAwem0xMjUuOC03NS43Yy02LjItNS4yLTcuNi0xNC4zLTMuMS0yMS4xczEzLjMtOS4yIDIwLjYtNS41bDc5LjYgNDBjNS40IDIuNyA4LjggOC4yIDguOCAxNC4zcy0zLjQgMTEuNi04LjggMTQuM2wtNzkuNiA0MGMtNy4zIDMuNi0xNi4xIDEuMy0yMC42LTUuNXMtMy4xLTE1LjkgMy4xLTIxLjFMMTU5IDIwOCAxMjUuOCAxODAuM3ptMjYzLjYtMjEuMWM0LjUgNi44IDMuMSAxNS45LTMuMSAyMS4xTDM1MyAyMDggMzg2LjIgMjM1LjdjNi4yIDUuMiA3LjYgMTQuMyAzLjEgMjEuMXMtMTMuMyA5LjItMjAuNiA1LjVsLTc5LjYtNDBjLTUuNC0yLjctOC44LTguMi04LjgtMTQuM3MzLjQtMTEuNiA4LjgtMTQuM2w3OS42LTQwYzcuMy0zLjYgMTYuMS0xLjMgMjAuNiA1LjV6TTMyMCA0MTZsMC0zNy40YzAtMTQuNy0xMS45LTI2LjYtMjYuNi0yNi42bC0yIDBjLTExLjMgMC0yMS4xIDcuOS0yMy42IDE4LjktMi44IDEyLjYtMjAuOCAxMi42LTIzLjYgMC0yLjUtMTEuMS0xMi4zLTE4LjktMjMuNi0xOC45bC0yIDBjLTE0LjcgMC0yNi42IDExLjktMjYuNiAyNi42bDAgMzcuNGMwIDM1LjMgMjguNyA2NCA2NCA2NHM2NC0yOC43IDY0LTY0eiJdfSxVbHI9U1NlLHpTZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJjYW1lcmEiLGljb246WzUxMiw1MTIsWzYyMjU4LCJjYW1lcmEtYWx0Il0sImYwMzAiLCJNMTkzLjEgMzJjLTE4LjcgMC0zNi4yIDkuNC00Ni42IDI0LjlMMTIwLjUgOTYgNjQgOTZDMjguNyA5NiAwIDEyNC43IDAgMTYwTDAgNDE2YzAgMzUuMyAyOC43IDY0IDY0IDY0bDM4NCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMjU2YzAtMzUuMy0yOC43LTY0LTY0LTY0bC01Ni41IDAtMjYtMzkuMUMzNTUuMSA0MS40IDMzNy42IDMyIDMxOC45IDMyTDE5My4xIDMyem0tNi43IDUxLjZjMS41LTIuMiA0LTMuNiA2LjctMy42bDEyNS43IDBjMi43IDAgNS4yIDEuMyA2LjcgMy42bDMzLjIgNDkuOGM0LjUgNi43IDExLjkgMTAuNyAyMCAxMC43bDY5LjMgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAyNTZjMCA4LjgtNy4yIDE2LTE2IDE2TDY0IDQzMmMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMjU2YzAtOC44IDcuMi0xNiAxNi0xNmw2OS4zIDBjOCAwIDE1LjUtNCAyMC0xMC43bDMzLjItNDkuOHpNMjU2IDM4NGExMTIgMTEyIDAgMSAwIDAtMjI0IDExMiAxMTIgMCAxIDAgMCAyMjR6TTE5MiAyNzJhNjQgNjQgMCAxIDEgMTI4IDAgNjQgNjQgMCAxIDEgLTEyOCAweiJdfSxXbHI9elNlLENTZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJmYWNlLWdyaW4tc3RhcnMiLGljb246WzUxMiw1MTIsWzEyOTMyMSwiZ3Jpbi1zdGFycyJdLCJmNTg3IiwiTTAgMjU2YzAtMjkuNiA1LTU3LjkgMTQuMi04NC40bDE3LjMgMTYuOS00LjYgMjdjLTQuMiAyNC40IDUuNiA0Ni4yIDIyIDU5LjkgOS44IDEwNS44IDk4LjggMTg4LjcgMjA3LjEgMTg4LjdzMTk3LjQtODIuOCAyMDcuMS0xODguNmMxNi40LTEzLjcgMjYuMS0zNS40IDIyLTU5LjlsLTQuNi0yNyAxNy4zLTE2LjljOS4yIDI2LjQgMTQuMiA1NC44IDE0LjIgODQuNCAwIDE0MS40LTExNC42IDI1Ni0yNTYgMjU2UzAgMzk3LjQgMCAyNTZ6TTI1NiA0OGMtMTUuMiAwLTMwIDEuNi00NC4zIDQuN0wyMDEuNCAzMS44QzE5NyAyMyAxOTEuMSAxNS44IDE4NC4yIDEwLjIgMjA3IDMuNiAyMzEuMSAwIDI1NiAwczQ5IDMuNiA3MS44IDEwLjJDMzIwLjkgMTUuOCAzMTUgMjMgMzEwLjYgMzEuOEwzMDAuMyA1Mi43QzI4NiA0OS42IDI3MS4yIDQ4IDI1NiA0OHpNMzcyLjIgMzAyLjNjMTEuOC0zLjYgMjMuNyA2LjEgMTkuNiAxNy44LTE5LjggNTUuOS03My4xIDk2LTEzNS44IDk2LTYyLjcgMC0xMTYtNDAtMTM1LjgtOTUuOS00LjEtMTEuNiA3LjgtMjEuNCAxOS42LTE3LjggMzQuNyAxMC42IDc0LjIgMTYuNSAxMTYuMSAxNi41IDQyIDAgODEuNS02IDExNi4zLTE2LjZ6TTM1My43IDUzLjFjNS45LTExLjkgMjIuOC0xMS45IDI4LjcgMGwyMy4zIDQ3LjIgNTIgNy42YzEzLjEgMS45IDE4LjQgMTggOC45IDI3LjNsLTM3LjcgMzYuNyA4LjkgNTEuOGMyLjIgMTMuMS0xMS41IDIzLTIzLjIgMTYuOUwzNjggMjE2IDMyMS41IDI0MC41Yy0xMS43IDYuMi0yNS41LTMuOC0yMy4yLTE2LjlsOC45LTUxLjgtMzcuNy0zNi43Yy05LjUtOS4zLTQuMy0yNS40IDguOS0yNy4zbDUyLTcuNiAyMy4zLTQ3LjJ6bS0xOTUuMyAwbDIzLjMgNDcuMiA1MiA3LjZjMTMuMSAxLjkgMTguNCAxOCA4LjkgMjcuM2wtMzcuNyAzNi43IDguOSA1MS44YzIuMiAxMy4xLTExLjUgMjMtMjMuMiAxNi45TDE0NCAyMTYgOTcuNSAyNDAuNWMtMTEuNyA2LjItMjUuNS0zLjgtMjMuMi0xNi45bDguOS01MS44LTM3LjctMzYuN2MtOS41LTkuMy00LjMtMjUuNCA4LjktMjcuM2w1Mi03LjYgMjMuMy00Ny4yYzUuOS0xMS45IDIyLjgtMTEuOSAyOC43IDB6Il19LEdscj1DU2UsWWxyPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImV5ZSIsaWNvbjpbNTc2LDUxMixbMTI4MDY1XSwiZjA2ZSIsIk0yODggODBDMjIyLjggODAgMTY5LjIgMTA5LjYgMTI4LjEgMTQ3LjcgODkuNiAxODMuNSA2MyAyMjYgNDkuNCAyNTYgNjMgMjg2IDg5LjYgMzI4LjUgMTI4LjEgMzY0LjMgMTY5LjIgNDAyLjQgMjIyLjggNDMyIDI4OCA0MzJzMTE4LjgtMjkuNiAxNTkuOS02Ny43QzQ4Ni40IDMyOC41IDUxMyAyODYgNTI2LjYgMjU2IDUxMyAyMjYgNDg2LjQgMTgzLjUgNDQ3LjkgMTQ3LjcgNDA2LjggMTA5LjYgMzUzLjIgODAgMjg4IDgwek05NS40IDExMi42QzE0Mi41IDY4LjggMjA3LjIgMzIgMjg4IDMyczE0NS41IDM2LjggMTkyLjYgODAuNmM0Ni44IDQzLjUgNzguMSA5NS40IDkzIDEzMS4xIDMuMyA3LjkgMy4zIDE2LjcgMCAyNC42LTE0LjkgMzUuNy00Ni4yIDg3LjctOTMgMTMxLjEtNDcuMSA0My43LTExMS44IDgwLjYtMTkyLjYgODAuNlMxNDIuNSA0NDMuMiA5NS40IDM5OS40Yy00Ni44LTQzLjUtNzguMS05NS40LTkzLTEzMS4xLTMuMy03LjktMy4zLTE2LjcgMC0yNC42IDE0LjktMzUuNyA0Ni4yLTg3LjcgOTMtMTMxLjF6TTI4OCAzMzZjNDQuMiAwIDgwLTM1LjggODAtODAgMC0yOS42LTE2LjEtNTUuNS00MC02OS4zLTEuNCA1OS43LTQ5LjYgMTA3LjktMTA5LjMgMTA5LjMgMTMuOCAyMy45IDM5LjcgNDAgNjkuMyA0MHptLTc5LjYtODguNGMyLjUgLjMgNSAuNCA3LjYgLjQgMzUuMyAwIDY0LTI4LjcgNjQtNjQgMC0yLjYtLjItNS4xLS40LTcuNi0zNy40IDMuOS02Ny4yIDMzLjctNzEuMSA3MS4xem00NS42LTExNWMxMC44LTMgMjIuMi00LjUgMzMuOS00LjUgOC44IDAgMTcuNSAuOSAyNS44IDIuNiAuMyAuMSAuNSAuMSAuOCAuMiA1Ny45IDEyLjIgMTAxLjQgNjMuNyAxMDEuNCAxMjUuMiAwIDcwLjctNTcuMyAxMjgtMTI4IDEyOC02MS42IDAtMTEzLTQzLjUtMTI1LjItMTAxLjQtMS44LTguNi0yLjgtMTcuNS0yLjgtMjYuNiAwLTExIDEuNC0yMS44IDQtMzIgLjItLjcgLjMtMS4zIC41LTEuOSAxMS45LTQzLjQgNDYuMS03Ny42IDg5LjUtODkuNXoiXX0sX1NlPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImZhY2Utc2FkLXRlYXIiLGljb246WzUxMiw1MTIsWzEyODU0Niwic2FkLXRlYXIiXSwiZjViNCIsIk00NjQgMjU2YzAtMTE0LjktOTMuMS0yMDgtMjA4LTIwOFM0OCAxNDEuMSA0OCAyNTZjMCA0MS44IDEyLjMgODAuNyAzMy42IDExMy4zIDguMiA0NC43IDQ3LjMgNzguNiA5NC4zIDc4LjcgMjQuNyAxMC4zIDUxLjcgMTYgODAuMSAxNiAxMTQuOSAwIDIwOC05My4xIDIwOC0yMDh6TTI4OCAzNTJjLTUuNSAwLTEwLjkgLjYtMTYgMS44IDAtLjYgMC0xLjIgMC0xLjggMC0xNi4yLTQtMzEuNS0xMS4xLTQ0LjkgOC43LTIgMTcuOC0zLjEgMjcuMS0zLjEgNDAuMiAwIDc1LjcgMTkuOCA5Ny41IDUwIDcuNyAxMC44IDUuMyAyNS44LTUuNSAzMy41cy0yNS44IDUuMy0zMy41LTUuNWMtMTMuMS0xOC4yLTM0LjQtMzAtNTguNS0zMHpNMCAyNTZhMjU2IDI1NiAwIDEgMSA1MTIgMCAyNTYgMjU2IDAgMSAxIC01MTIgMHptMTc2LTgwYTMyIDMyIDAgMSAxIDAgNjQgMzIgMzIgMCAxIDEgMC02NHptMTI4IDMyYTMyIDMyIDAgMSAxIDY0IDAgMzIgMzIgMCAxIDEgLTY0IDB6TTE4NS40IDI3Ni44YzYuNSA3LjggMTIuNiAxNi4xIDE4LjMgMjQuNiA5IDEzLjQgMjAuMyAzMC4yIDIwLjMgNDcuNCAwIDI4LjMtMjEuNSA1MS4yLTQ4IDUxLjJzLTQ4LTIyLjktNDgtNTEuMmMwLTE3LjIgMTEuMi0zNCAyMC4zLTQ3LjQgNS43LTguNSAxMS45LTE2LjcgMTguMy0yNC42IDIuNC0yLjkgNS43LTQuOCA5LjQtNC44czcgMS45IDkuNCA0Ljh6Il19LFpscj1fU2UsVFNlPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6InNoYXJlLWZyb20tc3F1YXJlIixpY29uOls1NzYsNTEyLFs2MTUwOSwic2hhcmUtc3F1YXJlIl0sImYxNGQiLCJNNDI1LjUgN2MtNi45LTYuOS0xNy4yLTguOS0yNi4yLTUuMlMzODQuNSAxNC4zIDM4NC41IDI0bDAgNTYtNDggMGMtODguNCAwLTE2MCA3MS42LTE2MCAxNjAgMCA0Ni43IDIwLjcgODAuNCA0My42IDEwMy40IDguMSA4LjIgMTYuNSAxNC45IDI0LjMgMjAuNCA5LjIgNi41IDIxLjcgNS43IDMwLjEtMS45czEwLjItMjAgNC41LTI5LjhjLTMuNi02LjMtNi41LTE0LjktNi41LTI2LjcgMC0zNi4yIDI5LjMtNjUuNSA2NS41LTY1LjVsNDYuNSAwIDAgNTZjMCA5LjcgNS44IDE4LjUgMTQuOCAyMi4yczE5LjMgMS43IDI2LjItNS4ybDEzNi0xMzZjOS40LTkuNCA5LjQtMjQuNiAwLTMzLjlMNDI1LjUgN3ptNyA5N2wwLTIyLjEgNzguMSA3OC4xLTc4LjEgNzguMSAwLTIyLjFjMC0xMy4zLTEwLjctMjQtMjQtMjRMMzM4IDE5MmMtNTAuOSAwLTkzLjkgMzMuNS0xMDguMyA3OS42LTMuMy05LjQtNS4yLTE5LjgtNS4yLTMxLjYgMC02MS45IDUwLjEtMTEyIDExMi0xMTJsNzIgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHptLTMyMC04Yy00NC4yIDAtODAgMzUuOC04MCA4MGwwIDI1NmMwIDQ0LjIgMzUuOCA4MCA4MCA4MGwyNTYgMGM0NC4yIDAgODAtMzUuOCA4MC04MGwwLTI0YzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0bDAgMjRjMCAxNy43LTE0LjMgMzItMzIgMzJsLTI1NiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTI1NmMwLTE3LjcgMTQuMy0zMiAzMi0zMmwyNCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC0yNCAweiJdfSxYbHI9VFNlLExTZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJub3RlLXN0aWNreSIsaWNvbjpbNDQ4LDUxMixbNjIwMjYsInN0aWNreS1ub3RlIl0sImYyNDkiLCJNMjQwIDQzMkw2NCA0MzJjLTguOCAwLTE2LTcuMi0xNi0xNkw0OCA5NmMwLTguOCA3LjItMTYgMTYtMTZsMzIwIDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMTc2LTg4IDBjLTM5LjggMC03MiAzMi4yLTcyIDcybDAgODh6TTM4MC4xIDMyMEwyODggNDEyLjEgMjg4IDM0NGMwLTEzLjMgMTAuNy0yNCAyNC0yNGw2OC4xIDB6TTAgNDE2YzAgMzUuMyAyOC43IDY0IDY0IDY0bDE5Ny41IDBjMTcgMCAzMy4zLTYuNyA0NS4zLTE4LjdMNDI5LjMgMzM4LjdjMTItMTIgMTguNy0yOC4zIDE4LjctNDUuM0w0NDggOTZjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzJDMjguNyAzMiAwIDYwLjcgMCA5NkwwIDQxNnoiXX0sUWxyPUxTZSxEU2U9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiaGFuZC1iYWNrLWZpc3QiLGljb246WzM4NCw1MTIsWyJoYW5kLXJvY2siXSwiZjI1NSIsIk05NiA0MDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMybDAgNDhjMCAxNy43IDE0LjMgMzIgMzIgMzJsMjI0IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJsMC00OGMwLTE3LjctMTQuMy0zMi0zMi0zMkw5NiA0MDB6TTczLjIgMzUybDY0LjYgMC03OS41LTg4LjNDNTEuNyAyNTYuMyA0OCAyNDYuOCA0OCAyMzYuOUw0OCAyMDRjMC0xNi4xIDExLjktMjkuNSAyNy40LTMxLjcgMTEuOC0xLjcgMjAuNi0xMS44IDIwLjYtMjMuOEw5NiA3MmMwLTEzLjMgMTAuNy0yNCAyNC0yNCA3LjIgMCAxMy42IDMuMSAxOCA4LjEgNC42IDUuMiAxMS4xIDguMSAxOCA4LjFzMTMuNC0zIDE4LTguMWM0LjQtNSAxMC44LTguMSAxOC04LjEgOC41IDAgMTUuOSA0LjQgMjAuMiAxMS4xIDYuOSAxMC43IDIwLjkgMTQuMiAzMiA4IDMuNS0xLjkgNy40LTMuMSAxMS44LTMuMSAxMC42IDAgMTkuNyA2LjkgMjIuOCAxNi42IDMuOCAxMS43IDE1LjkgMTguNyAyOCAxNiAxLjctLjQgMy40LS42IDUuMi0uNiAxMy4zIDAgMjQgMTAuNyAyNCAyNGwwIDkyLjJjMCAxNC40LTMuNSAyOC41LTEwLjIgNDEuMmwtNTIuMiA5OC42IDU0LjMgMCA0MC4zLTc2LjJjMTAuNC0xOS42IDE1LjgtNDEuNSAxNS44LTYzLjZsMC05Mi4yYzAtMzguNC0zMC4xLTY5LjgtNjguMS03MS45LTEyLjktMTkuMy0zNC45LTMyLjEtNTkuOS0zMi4xLTUuNyAwLTExLjIgLjctMTYuNSAxLjktMTIuNy0xMS4xLTI5LjMtMTcuOS00Ny41LTE3LjktMTMuMSAwLTI1LjQgMy41LTM2IDkuNi0xMC42LTYuMS0yMi45LTkuNi0zNi05LjYtMzkuOCAwLTcyIDMyLjItNzIgNzJsMCA1OC43QzE5LjcgMTQzIDAgMTcxLjIgMCAyMDRsMCAzMi45YzAgMjEuNyA4IDQyLjcgMjIuNiA1OC45TDczLjIgMzUyeiJdfSxLbHI9RFNlLEpscj17cHJlZml4OiJmYXIiLGljb25OYW1lOiJjaGVzcy1xdWVlbiIsaWNvbjpbNTEyLDUxMixbOTgxOV0sImY0NDUiLCJNMzI1LjMgOTAuOGM5LjEtNC44IDIwLjYtMy4zIDI4LjIgNC4zbDM5LjggMzkuOCAzLjcgMy4zYzkuMSA3LjEgMjAuOSAxMCAzMi40IDcuN2w0Ni40LTkuMyAzLjUtLjRjOC0uNCAxNS44IDMuMiAyMC42IDkuOCA1LjUgNy42IDYuMSAxNy42IDEuNiAyNS44bC0xMTIuNiAyMDIuNiA1MS41IDcwLjkgMS44IDIuN2M0IDYuNiA2LjIgMTQuMiA2LjIgMjIgMCAyMy4zLTE4LjkgNDIuMS00Mi4xIDQyLjFsLTI5OS44IDBjLTIxLjggMC0zOS44LTE2LjYtNDEuOS0zNy44bC0uMi00LjMgLjEtMy4zYy42LTcuNyAzLjQtMTUuMSA3LjktMjEuNGw1MS41LTcwLjktMTEyLjUtMjAyLjZjLTQuNS04LjItMy45LTE4LjMgMS42LTI1LjhzMTQuOS0xMS4yIDI0LjEtOS40bDQ2LjQgOS4zYzEzLjEgMi42IDI2LjctMS41IDM2LjEtMTAuOUwxNTkuNSA5NSAxNjMgOTIuMmM4LjYtNS44IDIwLjEtNS42IDI4LjUgMS4xbDQwIDMyIDIuOCAyLjFjMTQuNCA5LjYgMzMuNSA4LjkgNDcuMi0yLjFsNDAtMzIgMy44LTIuNXpNMTY0LjcgNDAwbC00Ni42IDY0IDI3Ni43IDAtNDYuNi02NC0xODMuNiAwek0zMTEuNSAxNjIuOGMtMzAuMSAyNC4xLTcyLjEgMjUuNi0xMDMuOCA0LjVsLTYuMi00LjUtMjMuMy0xOC42LTI0LjYgMjQuNmMtMTkuOCAxOS44LTQ3LjcgMjguOS03NS4xIDI0LjhsODguMSAxNTguNSAxNzkuOCAwIDg4LTE1OC41Yy0yNS43IDMuOC01MS43LTMuOS03MS4xLTIxbC00LTMuNy0yNC42LTI0LjYtMjMuMiAxOC42ek0yNTYuNSA3MmE0MCA0MCAwIDEgMSAwLTgwIDQwIDQwIDAgMSAxIDAgODB6Il19LEFTZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJmYWNlLWdyaW4tdGVhcnMiLGljb246WzY0MCw1MTIsWzEyODUxNCwiZ3Jpbi10ZWFycyJdLCJmNTg4IiwiTTUwNC4xIDM1M0M1MTIuOSAzNjcuMiA1MjUuMyAzNzkgNTM5LjggMzg3LjIgNDk1LjEgNDYyIDQxMy40IDUxMiAzMjAgNTEyUzE0NC45IDQ2MiAxMDAuMiAzODcuMmMxNC42LTguMiAyNi45LTIwIDM1LjgtMzQuMyAzNC45IDY2IDEwNC4yIDExMSAxODQuMSAxMTFzMTQ5LjItNDUgMTg0LjEtMTExem0xNi40LTE1Mi41QzQ5Ni4yIDExMi42IDQxNS43IDQ4IDMyMCA0OFMxNDMuOCAxMTIuNiAxMTkuNSAyMDAuNWMtMTAuNi00LjgtMjIuNy02LjgtMzUuNC01bC0xMy40IDEuOUM5Ny4yIDg0LjMgMTk4LjggMCAzMjAgMFM1NDIuOCA4NC4zIDU2OS4zIDE5Ny40bC0xMy40LTEuOWMtMTIuNy0xLjgtMjQuOCAuMi0zNS40IDV6TTQ1NS44IDMyMGMtMTkuOCA1NS45LTczLjEgOTYtMTM1LjggOTYtNjIuNyAwLTExNi00MC0xMzUuOC05NS45LTQuMS0xMS42IDcuOC0yMS40IDE5LjYtMTcuOCAzNC43IDEwLjYgNzQuMiAxNi41IDExNi4xIDE2LjUgNDIgMCA4MS41LTYgMTE2LjMtMTYuNiAxMS44LTMuNiAyMy43IDYuMSAxOS42IDE3Ljh6TTIxMiAyMDhsMCA4YzAgMTEtOSAyMC0yMCAyMHMtMjAtOS0yMC0yMGwwLThjMC0zNy42IDMwLjQtNjggNjgtNjhzNjggMzAuNCA2OCA2OGwwIDhjMCAxMS05IDIwLTIwIDIwcy0yMC05LTIwLTIwbDAtOGMwLTE1LjUtMTIuNS0yOC0yOC0yOHMtMjggMTIuNS0yOCAyOHptMTg4LTI4Yy0xNS41IDAtMjggMTIuNS0yOCAyOGwwIDhjMCAxMS05IDIwLTIwIDIwcy0yMC05LTIwLTIwbDAtOGMwLTM3LjYgMzAuNC02OCA2OC02OHM2OCAzMC40IDY4IDY4bDAgOGMwIDExLTkgMjAtMjAgMjBzLTIwLTktMjAtMjBsMC04YzAtMTUuNS0xMi41LTI4LTI4LTI4ek02NDAgMzAwLjZjMCAyOC40LTIzIDUxLjQtNTEuNCA1MS40LTI1LjYgMC00Ny4zLTE4LjgtNTAuOS00NC4xTDUzMSAyNjEuMWMtMS41LTEwLjYgNy41LTE5LjYgMTguMS0xOC4xbDQ2LjcgNi43YzI1LjMgMy42IDQ0LjEgMjUuMyA0NC4xIDUwLjl6bS02NDAgMGMwLTI1LjYgMTguOC00Ny4zIDQ0LjEtNTAuOUw5MC45IDI0M2MxMC42LTEuNSAxOS42IDcuNSAxOC4xIDE4LjFsLTYuNyA0Ni43Qzk4LjcgMzMzLjIgNzcgMzUyIDUxLjQgMzUyIDIzIDM1MiAwIDMyOSAwIDMwMC42eiJdfSxlY3I9QVNlLEVTZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJwZW4tdG8tc3F1YXJlIixpY29uOls1MTIsNTEyLFsiZWRpdCJdLCJmMDQ0IiwiTTQ0MSA1OC45TDQ1My4xIDcxYzkuNCA5LjQgOS40IDI0LjYgMCAzMy45TDQyNCAxMzQuMSAzNzcuOSA4OCA0MDcgNTguOWM5LjQtOS40IDI0LjYtOS40IDMzLjkgMHpNMjA5LjggMjU2LjJMMzQ0IDEyMS45IDM5MC4xIDE2OCAyNTUuOCAzMDIuMmMtMi45IDIuOS02LjUgNS0xMC40IDYuMWwtNTguNSAxNi43IDE2LjctNTguNWMxLjEtMy45IDMuMi03LjUgNi4xLTEwLjR6TTM3My4xIDI1TDE3NS44IDIyMi4yYy04LjcgOC43LTE1IDE5LjQtMTguMyAzMS4xbC0yOC42IDEwMGMtMi40IDguNC0uMSAxNy40IDYuMSAyMy42czE1LjIgOC41IDIzLjYgNi4xbDEwMC0yOC42YzExLjgtMy40IDIyLjUtOS43IDMxLjEtMTguM0w0ODcgMTM4LjljMjguMS0yOC4xIDI4LjEtNzMuNyAwLTEwMS44TDQ3NC45IDI1QzQ0Ni44LTMuMSA0MDEuMi0zLjEgMzczLjEgMjV6TTg4IDY0QzM5LjQgNjQgMCAxMDMuNCAwIDE1MkwwIDQyNGMwIDQ4LjYgMzkuNCA4OCA4OCA4OGwyNzIgMGM0OC42IDAgODgtMzkuNCA4OC04OGwwLTExMmMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGwwIDExMmMwIDIyLjEtMTcuOSA0MC00MCA0MEw4OCA0NjRjLTIyLjEgMC00MC0xNy45LTQwLTQwbDAtMjcyYzAtMjIuMSAxNy45LTQwIDQwLTQwbDExMiAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0TDg4IDY0eiJdfSx0Y3I9RVNlLCRTZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJmYWNlLWdyaW4tYmVhbS1zd2VhdCIsaWNvbjpbNTc2LDUxMixbMTI4NTE3LCJncmluLWJlYW0tc3dlYXQiXSwiZjU4MyIsIk01MzAuMiAxNS45Yy04LjgtMTAuNy0xOC41LTIwLjktMjktMzAtMy0yLjYtNy40LTIuNi0xMC40IDAtMTAuNSA5LjEtMjAuMSAxOS4zLTI5IDMwLTE0LjcgMTcuOC0yOS44IDQwLjEtMjkuOCA2NC4xIDAgMzYuNCAyNy42IDY0IDY0IDY0czY0LTI3LjYgNjQtNjRjMC0yNC0xNS4yLTQ2LjMtMjkuOC02NC4xem0tMTMyIDguOUMzNjQuOCA4LjkgMzI3LjQgMCAyODggMCAxNDYuNiAwIDMyIDExNC42IDMyIDI1NlMxNDYuNiA1MTIgMjg4IDUxMiA1NDQgMzk3LjQgNTQ0IDI1NmMwLTI0LjQtMy40LTQ4LTkuOC03MC40LTExLjkgNC4yLTI0LjcgNi40LTM4LjIgNi40LTMuNCAwLTYuOC0uMS0xMC4yLS40IDYuNiAyMC4zIDEwLjIgNDEuOSAxMC4yIDY0LjQgMCAxMTQuOS05My4xIDIwOC0yMDggMjA4UzgwIDM3MC45IDgwIDI1NiAxNzMuMSA0OCAyODggNDhjMzQuOCAwIDY3LjUgOC41IDk2LjMgMjMuNiAxLjQtMTcuNCA2LjktMzMuMSAxMy44LTQ2Ljh6TTQyMy44IDMyMGM0LjEtMTEuNi03LjgtMjEuNC0xOS42LTE3LjgtMzQuOCAxMC42LTc0LjMgMTYuNi0xMTYuMyAxNi42LTQxLjkgMC04MS40LTYtMTE2LjEtMTYuNS0xMS44LTMuNi0yMy43IDYuMS0xOS42IDE3LjggMTkuOCA1NS45IDczLjEgOTUuOSAxMzUuOCA5NS45IDYyLjcgMCAxMTYtNDAuMSAxMzUuOC05NnpNMTgwIDIwOGMwLTE1LjUgMTIuNS0yOCAyOC0yOHMyOCAxMi41IDI4IDI4bDAgOGMwIDExIDkgMjAgMjAgMjBzMjAtOSAyMC0yMGwwLThjMC0zNy42LTMwLjQtNjgtNjgtNjhzLTY4IDMwLjQtNjggNjhsMCA4YzAgMTEgOSAyMCAyMCAyMHMyMC05IDIwLTIwbDAtOHptMTg4LTI4YzE1LjUgMCAyOCAxMi41IDI4IDI4bDAgOGMwIDExIDkgMjAgMjAgMjBzMjAtOSAyMC0yMGwwLThjMC0zNy42LTMwLjQtNjgtNjgtNjhzLTY4IDMwLjQtNjggNjhsMCA4YzAgMTEgOSAyMCAyMCAyMHMyMC05IDIwLTIwbDAtOGMwLTE1LjUgMTIuNS0yOCAyOC0yOHoiXX0scmNyPSRTZSxQU2U9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiY2xvY2siLGljb246WzUxMiw1MTIsWzEyODMzOSwiY2xvY2stZm91ciJdLCJmMDE3IiwiTTQ2NCAyNTZhMjA4IDIwOCAwIDEgMSAtNDE2IDAgMjA4IDIwOCAwIDEgMSA0MTYgMHpNMCAyNTZhMjU2IDI1NiAwIDEgMCA1MTIgMCAyNTYgMjU2IDAgMSAwIC01MTIgMHpNMjMyIDEyMGwwIDEzNmMwIDggNCAxNS41IDEwLjcgMjBsOTYgNjRjMTEgNy40IDI1LjkgNC40IDMzLjMtNi43czQuNC0yNS45LTYuNy0zMy4zTDI4MCAyNDMuMiAyODAgMTIwYzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0eiJdfSxhY3I9UFNlLElTZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJmYWNlLWxhdWdoLXdpbmsiLGljb246WzUxMiw1MTIsWyJsYXVnaC13aW5rIl0sImY1OWMiLCJNNDY0IDI1NmEyMDggMjA4IDAgMSAwIC00MTYgMCAyMDggMjA4IDAgMSAwIDQxNiAwek0wIDI1NmEyNTYgMjU2IDAgMSAxIDUxMiAwIDI1NiAyNTYgMCAxIDEgLTUxMiAwem0xMTguMyA1OC4yYy00LjItMTMuNyA3LjEtMjYuMiAyMS40LTI2LjJsMjMyLjYgMGMxNC4zIDAgMjUuNiAxMi41IDIxLjQgMjYuMi0xOCA1OC45LTcyLjkgMTAxLjgtMTM3LjcgMTAxLjhTMTM2LjMgMzczLjEgMTE4LjMgMzE0LjJ6TTE0NCAxOTJhMzIgMzIgMCAxIDEgNjQgMCAzMiAzMiAwIDEgMSAtNjQgMHptMTY0IDhjMCAxMS05IDIwLTIwIDIwcy0yMC05LTIwLTIwYzAtMzMuMSAyNi45LTYwIDYwLTYwbDE2IDBjMzMuMSAwIDYwIDI2LjkgNjAgNjAgMCAxMS05IDIwLTIwIDIwcy0yMC05LTIwLTIwLTktMjAtMjAtMjBsLTE2IDBjLTExIDAtMjAgOS0yMCAyMHoiXX0saWNyPUlTZSxvY3I9e3ByZWZpeDoiZmFyIixpY29uTmFtZToicGFwZXItcGxhbmUiLGljb246WzU3Niw1MTIsWzYxOTEzXSwiZjFkOCIsIk0yOTAuNSAyODcuN0w0OTEuNCA4Ni45IDM1OSA0NTYuMyAyOTAuNSAyODcuN3pNNDU3LjQgNTNMMjU2LjYgMjUzLjggODggMTg1LjMgNDU3LjQgNTN6TTM4LjEgMjE2LjhsMjA1LjggODMuNiA4My42IDIwNS44YzUuMyAxMy4xIDE4LjEgMjEuNyAzMi4zIDIxLjcgMTQuNyAwIDI3LjgtOS4yIDMyLjgtMjMuMUw1NzAuNiA4YzMuNS05LjggMS0yMC42LTYuMy0yOHMtMTguMi05LjgtMjgtNi4zTDM5LjQgMTUxLjdjLTEzLjkgNS0yMy4xIDE4LjEtMjMuMSAzMi44IDAgMTQuMiA4LjYgMjcgMjEuNyAzMi4zeiJdfSxuY3I9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiaGVhcnQiLGljb246WzUxMiw1MTIsWzEyODE1MywxMjgxNTQsMTI4MTU1LDEyODE1NiwxMjg0MjAsMTI5MjkzLDEyOTI5NCwxMjk1MDUsOTgyOSwxMDA4NCw2MTU3OF0sImYwMDQiLCJNMzc4LjkgODBjLTI3LjMgMC01MyAxMy4xLTY5IDM1LjJsLTM0LjQgNDcuNmMtNC41IDYuMi0xMS43IDkuOS0xOS40IDkuOXMtMTQuOS0zLjctMTkuNC05LjlsLTM0LjQtNDcuNmMtMTYtMjIuMS00MS43LTM1LjItNjktMzUuMi00NyAwLTg1LjEgMzguMS04NS4xIDg1LjEgMCA0OS45IDMyIDk4LjQgNjguMSAxNDIuMyA0MS4xIDUwIDkxLjQgOTQgMTI1LjkgMTIwLjMgMy4yIDIuNCA3LjkgNC4yIDE0IDQuMnMxMC44LTEuOCAxNC00LjJjMzQuNS0yNi4zIDg0LjgtNzAuNCAxMjUuOS0xMjAuMyAzNi4yLTQzLjkgNjguMS05Mi40IDY4LjEtMTQyLjMgMC00Ny0zOC4xLTg1LjEtODUuMS04NS4xek0yNzEgODcuMWMyNS0zNC42IDY1LjItNTUuMSAxMDcuOS01NS4xIDczLjUgMCAxMzMuMSA1OS42IDEzMy4xIDEzMy4xIDAgNjguNi00Mi45IDEyOC45LTc5LjEgMTcyLjgtNDQuMSA1My42LTk3LjMgMTAwLjEtMTMzLjggMTI3LjktMTIuMyA5LjQtMjcuNSAxNC4xLTQzLjEgMTQuMXMtMzAuOC00LjctNDMuMS0xNC4xQzE3Ni40IDQzOCAxMjMuMiAzOTEuNSA3OS4xIDMzOCA0Mi45IDI5NC4xIDAgMjMzLjcgMCAxNjUuMSAwIDkxLjYgNTkuNiAzMiAxMzMuMSAzMiAxNzUuOCAzMiAyMTYgNTIuNSAyNDEgODcuMWwxNSAyMC43IDE1LTIwLjd6Il19LFVzZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJmb250LWF3ZXNvbWUiLGljb246WzUxMiw1MTIsWzYyNTAxLDYyNjk0LCJmb250LWF3ZXNvbWUtZmxhZyIsImZvbnQtYXdlc29tZS1sb2dvLWZ1bGwiXSwiZjJiNCIsIk05MS43IDk2QzEwNi4zIDg2LjggMTE2IDcwLjUgMTE2IDUyIDExNiAyMy4zIDkyLjcgMCA2NCAwUzEyIDIzLjMgMTIgNTJjMCAxNi43IDcuOCAzMS41IDIwIDQxbDAgNDE5IDQ4IDAgMC02NCAzODkuNiAwYzE0LjYgMCAyNi40LTExLjggMjYuNC0yNi40IDAtMy43LS44LTcuMy0yLjMtMTAuN0w0MzIgMjcyIDQ5My43IDEzMy4xYzEuNS0zLjQgMi4zLTcgMi4zLTEwLjcgMC0xNC42LTExLjgtMjYuNC0yNi40LTI2LjRMOTEuNyA5NnpNODAgNDAwbDAtMjU2IDM1Ni40IDAtNDguMiAxMDguNWMtNS41IDEyLjQtNS41IDI2LjYgMCAzOUw0MzYuNCA0MDAgODAgNDAweiJdfSxzY3I9VXNlLGxjcj1Vc2UsY2NyPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImNsb25lIixpY29uOls1MTIsNTEyLFtdLCJmMjRkIiwiTTI4OCA0NjRMNjQgNDY0Yy04LjggMC0xNi03LjItMTYtMTZsMC0yMjRjMC04LjggNy4yLTE2IDE2LTE2bDQ4IDAgMC00OC00OCAwYy0zNS4zIDAtNjQgMjguNy02NCA2NEwwIDQ0OGMwIDM1LjMgMjguNyA2NCA2NCA2NGwyMjQgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTQ4LTQ4IDAgMCA0OGMwIDguOC03LjIgMTYtMTYgMTZ6TTIyNCAzMDRjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTIyNGMwLTguOCA3LjItMTYgMTYtMTZsMjI0IDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMjI0YzAgOC44LTcuMiAxNi0xNiAxNmwtMjI0IDB6bS02NC0xNmMwIDM1LjMgMjguNyA2NCA2NCA2NGwyMjQgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTIyNGMwLTM1LjMtMjguNy02NC02NC02NEwyMjQgMGMtMzUuMyAwLTY0IDI4LjctNjQgNjRsMCAyMjR6Il19LGRjcj17cHJlZml4OiJmYXIiLGljb25OYW1lOiJmb2xkZXItb3BlbiIsaWNvbjpbNTc2LDUxMixbMTI4MTk0LDEyODQ0OSw2MTcxN10sImYwN2MiLCJNOTcuNSA0MDBsNTAtMTYwIDM3OS40IDAtNTAgMTYwLTM3OS40IDB6bTE5MC43IDQ4TDQ3NyA0NDhjMjEgMCAzOS42LTEzLjYgNDUuOC0zMy43bDUwLTE2MGM5LjctMzAuOS0xMy40LTYyLjMtNDUuOC02Mi4zbC0zNzkuNCAwYy0yMSAwLTM5LjYgMTMuNi00NS44IDMzLjdMODAuMiAyOTQuNCA4MC4yIDk2YzAtOC44IDcuMi0xNiAxNi0xNmwxMzguNyAwYzMuNSAwIDYuOCAxLjEgOS42IDMuMkwyODIuOSAxMTJjMTMuOCAxMC40IDMwLjcgMTYgNDggMTZsMTE3LjMgMGM4LjggMCAxNiA3LjIgMTYgMTZsNDggMGMwLTM1LjMtMjguNy02NC02NC02NEwzMzAuOSA4MGMtNi45IDAtMTMuNy0yLjItMTkuMi02LjRMMjczLjMgNDQuOEMyNjIuMiAzNi41IDI0OC44IDMyIDIzNC45IDMyTDk2LjIgMzJjLTM1LjMgMC02NCAyOC43LTY0IDY0bDAgMjg4YzAgMzUuMyAyOC43IDY0IDY0IDY0bDE5MiAweiJdfSx1Y3I9e3ByZWZpeDoiZmFyIixpY29uTmFtZToid2luZG93LW1pbmltaXplIixpY29uOls1MTIsNTEyLFsxMjg0NjldLCJmMmQxIiwiTTAgNDI0YzAtMTMuMyAxMC43LTI0IDI0LTI0bDQ2NCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0TDI0IDQ0OGMtMTMuMyAwLTI0LTEwLjctMjQtMjR6Il19LGZjcj17cHJlZml4OiJmYXIiLGljb25OYW1lOiJzdGFyLWhhbGYiLGljb246WzU3Niw1MTIsWzYxNzMxXSwiZjA4OSIsIk0yODUuNy0xNS44YzEwLjggMi42IDE4LjQgMTIuMiAxOC40IDIzLjNsMCAzODcuMWMwIDktNS4xIDE3LjMtMTMuMSAyMS40TDE0My44IDQ5MWMtOCA0LjEtMTcuNyAzLjMtMjUtMnMtMTEtMTQuMi05LjYtMjMuMkwxMzQuNCAzMDUuOSAyMCAxOTEuNGMtNi40LTYuNC04LjYtMTUuOC01LjgtMjQuNHMxMC4xLTE0LjkgMTkuMS0xNi4zTDE5My4xIDEyNS4zIDI1OC44LTMuM2M1LTkuOSAxNi4yLTE1IDI3LTEyLjR6TTI1Ni4xIDEwNy40TDIzMC4zIDE1OGMtMy41IDYuOC0xMCAxMS42LTE3LjYgMTIuOGwtMTI1LjUgMjAgODkuOCA4OS45YzUuNCA1LjQgNy45IDEzLjEgNi43IDIwLjdsLTE5LjggMTI1LjUgOTIuMi00Ni45IDAtMjcyLjZ6Il19LHBjcj17cHJlZml4OiJmYXIiLGljb25OYW1lOiJhbGFybS1jbG9jayIsaWNvbjpbNTEyLDUxMixbOTIwMF0sImYzNGUiLCJNNDAyLjYgNTAuMmMtNS40IDEuNy0xMS4zIDEuOC0xNi4yLS45LTUuOC0zLjItMTEuOC02LjItMTcuOC04LjktMTAuNC00LjctMTMuNy0xOC4zLTQuMS0yNC42IDE1LTkuOSAzMy0xNS43IDUyLjMtMTUuNyA1Mi42IDAgOTUuMiA0Mi42IDk1LjIgOTUuMiAwIDEzLjItMi43IDI1LjgtNy42IDM3LjMtNC41IDEwLjUtMTguNCA5LjgtMjQuOSAuNC0zLjgtNS41LTcuOC0xMC44LTEyLTE2LTMuNS00LjQtNC41LTEwLjItMy44LTE1LjggLjItMS45IC40LTMuOSAuNC01LjkgMC0yNi4xLTIxLjItNDcuMi00Ny4yLTQ3LjItNC45IDAtOS43IC44LTE0LjIgMi4yek0zMi41IDEzMi45Yy02LjUgOS40LTIwLjUgMTAuMS0yNC45LS40LTQuOS0xMS41LTcuNi0yNC4xLTcuNi0zNy4zIDAtNTIuNiA0Mi42LTk1LjIgOTUuMi05NS4yIDE5LjMgMCAzNy4zIDUuOCA1Mi4zIDE1LjcgOS42IDYuMyA2LjMgMTkuOS00LjEgMjQuNi02LjEgMi44LTEyIDUuNy0xNy44IDguOS00LjkgMi43LTEwLjkgMi42LTE2LjIgLjktNC41LTEuNC05LjItMi4yLTE0LjItMi4yLTI2LjEgMC00Ny4yIDIxLjItNDcuMiA0Ny4yIDAgMiAuMSA0IC40IDUuOSAuNyA1LjYtLjMgMTEuNC0zLjggMTUuOC00LjIgNS4yLTguMiAxMC41LTEyIDE2ek00MzIgMjg4YTE3NiAxNzYgMCAxIDAgLTM1MiAwIDE3NiAxNzYgMCAxIDAgMzUyIDB6TTM5Ni41IDQ2Mi41QzM1OC4xIDQ5My40IDMwOS4yIDUxMiAyNTYgNTEycy0xMDIuMS0xOC42LTE0MC41LTQ5LjVMNzMgNTA1Yy05LjQgOS40LTI0LjYgOS40LTMzLjkgMHMtOS40LTI0LjYgMC0zMy45bDQyLjUtNDIuNUM1MC42IDM5MC4xIDMyIDM0MS4yIDMyIDI4OCAzMiAxNjQuMyAxMzIuMyA2NCAyNTYgNjRTNDgwIDE2NC4zIDQ4MCAyODhjMCA1My4yLTE4LjYgMTAyLjEtNDkuNSAxNDAuNUw0NzMgNDcxYzkuNCA5LjQgOS40IDI0LjYgMCAzMy45cy0yNC42IDkuNC0zMy45IDBsLTQyLjUtNDIuNXpNMjgwIDE4NGwwIDk0LjEgNDEgNDFjOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlzLTI0LjYgOS40LTMzLjkgMGwtNDgtNDhjLTQuNS00LjUtNy0xMC42LTctMTdsMC0xMDRjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNHoiXX0saGNyPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6Im5ld3NwYXBlciIsaWNvbjpbNTEyLDUxMixbMTI4MjQwXSwiZjFlYSIsIk0xNjggODBjLTEzLjMgMC0yNCAxMC43LTI0IDI0bDAgMzA0YzAgOC40LTEuNCAxNi41LTQuMSAyNEw0NDAgNDMyYzEzLjMgMCAyNC0xMC43IDI0LTI0bDAtMzA0YzAtMTMuMy0xMC43LTI0LTI0LTI0TDE2OCA4MHpNNzIgNDgwYy0zOS44IDAtNzItMzIuMi03Mi03MkwwIDExMkMwIDk4LjcgMTAuNyA4OCAyNCA4OHMyNCAxMC43IDI0IDI0bDAgMjk2YzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC0zMDRjMC0zOS44IDMyLjItNzIgNzItNzJsMjcyIDBjMzkuOCAwIDcyIDMyLjIgNzIgNzJsMCAzMDRjMCAzOS44LTMyLjIgNzItNzIgNzJMNzIgNDgwek0xOTIgMTUyYzAtMTMuMyAxMC43LTI0IDI0LTI0bDQ4IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRsMCA0OGMwIDEzLjMtMTAuNyAyNC0yNCAyNGwtNDggMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRsMC00OHptMTUyIDI0bDQ4IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTQ4IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjR6TTIxNiAyNTZsMTc2IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTE3NiAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0em0wIDgwbDE3NiAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC0xNzYgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNHoiXX0sV3NlPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6Imhvc3BpdGFsIixpY29uOls1NzYsNTEyLFsxMjc5NzMsNjI1ODksImhvc3BpdGFsLWFsdCIsImhvc3BpdGFsLXdpZGUiXSwiZjBmOCIsIk0xNzYgMGMtMzUuMyAwLTY0IDI4LjctNjQgNjRsMCA0OC00OCAwYy0zNS4zIDAtNjQgMjguNy02NCA2NEwwIDQ0OGMwIDM1LjMgMjguNyA2NCA2NCA2NGw0NDggMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTI3MmMwLTM1LjMtMjguNy02NC02NC02NGwtNDggMCAwLTQ4YzAtMzUuMy0yOC43LTY0LTY0LTY0TDE3NiAwek0xNjAgNjRjMC04LjggNy4yLTE2IDE2LTE2bDIyNCAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDcyYzAgMTMuMyAxMC43IDI0IDI0IDI0bDcyIDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMjcyYzAgOC44LTcuMiAxNi0xNiAxNmwtMTc2IDAgMC04MGMwLTE3LjctMTQuMy0zMi0zMi0zMmwtMzIgMGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJsMCA4MC0xNzYgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMjcyYzAtOC44IDcuMi0xNiAxNi0xNmw3MiAwYzEzLjMgMCAyNC0xMC43IDI0LTI0bDAtNzJ6TTExMiAyMjRjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDMyYzAgOC44IDcuMiAxNiAxNiAxNmwzMiAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMHpNOTYgMzM2bDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMzJjMC04LjgtNy4yLTE2LTE2LTE2bC0zMiAwYy04LjggMC0xNiA3LjItMTYgMTZ6bTMyMCAwbDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMzJjMC04LjgtNy4yLTE2LTE2LTE2bC0zMiAwYy04LjggMC0xNiA3LjItMTYgMTZ6bTE2LTExMmMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMzJjMC04LjgtNy4yLTE2LTE2LTE2bC0zMiAwek0yNjQgMTA0bDAgMzItMzIgMGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMTZjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDAgMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZsMTYgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0zMiAzMiAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTE2YzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMCAwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMTYgMGMtOC44IDAtMTYgNy4yLTE2IDE2eiJdfSxtY3I9V3NlLGdjcj1Xc2UsTlNlPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImNpcmNsZS1zdG9wIixpY29uOls1MTIsNTEyLFs2MjA5NCwic3RvcC1jaXJjbGUiXSwiZjI4ZCIsIk0yNTYgNDhhMjA4IDIwOCAwIDEgMSAwIDQxNiAyMDggMjA4IDAgMSAxIDAtNDE2em0wIDQ2NGEyNTYgMjU2IDAgMSAwIDAtNTEyIDI1NiAyNTYgMCAxIDAgMCA1MTJ6TTE2MCAxOTJsMCAxMjhjMCAxNy43IDE0LjMgMzIgMzIgMzJsMTI4IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJsMC0xMjhjMC0xNy43LTE0LjMtMzItMzItMzJsLTEyOCAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnptNDggMTEybDAtOTYgOTYgMCAwIDk2LTk2IDB6Il19LHhjcj1OU2UsYmNyPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6Im9iamVjdC11bmdyb3VwIixpY29uOls2NDAsNTEyLFtdLCJmMjQ4IiwiTTQ4LjIgNjYuOGMtLjEtLjgtLjItMS43LS4yLTIuNWwwLS4yYzAtOC44IDcuMi0xNiAxNi0xNiAuOSAwIDEuOSAuMSAyLjggLjIgNy41IDEuMyAxMy4yIDcuOSAxMy4yIDE1LjggMCA4LjgtNy4yIDE2LTE2IDE2LTcuOSAwLTE0LjUtNS43LTE1LjgtMTMuMnpNMCA2NGMwIDI2LjkgMTYuNSA0OS45IDQwIDU5LjNsMCAxMDUuM2MtMjMuNSA5LjUtNDAgMzIuNS00MCA1OS4zIDAgMzUuMyAyOC43IDY0IDY0IDY0IDI2LjkgMCA0OS45LTE2LjUgNTkuMy00MGwyMDEuMyAwYzkuNSAyMy41IDMyLjUgNDAgNTkuMyA0MCAzNS4zIDAgNjQtMjguNyA2NC02NCAwLTI2LjktMTYuNS00OS45LTQwLTU5LjNsMC0xMDUuM2MyMy41LTkuNSA0MC0zMi41IDQwLTU5LjMgMC0zNS4zLTI4LjctNjQtNjQtNjQtMjYuOSAwLTQ5LjkgMTYuNS01OS4zIDQwTDEyMy4zIDQwQzExMy45IDE2LjUgOTAuOSAwIDY0IDAgMjguNyAwIDAgMjguNyAwIDY0em0zNjggMGExNiAxNiAwIDEgMSAzMiAwIDE2IDE2IDAgMSAxIC0zMiAwek0zMjQuNyA4OGM2LjUgMTYgMTkuMyAyOC45IDM1LjMgMzUuM2wwIDEwNS4zYy0xNiA2LjUtMjguOSAxOS4zLTM1LjMgMzUuM2wtMjAxLjMgMGMtNi41LTE2LTE5LjMtMjguOS0zNS4zLTM1LjNsMC0xMDUuM2MxNi02LjUgMjguOS0xOS4zIDM1LjMtMzUuM2wyMDEuMyAwek0zODQgMjcyYTE2IDE2IDAgMSAxIDAgMzIgMTYgMTYgMCAxIDEgMC0zMnpNODAgMjg4YzAgNy45LTUuNyAxNC41LTEzLjIgMTUuOC0uOCAuMS0xLjcgLjItMi41IC4ybC0uMiAwYy04LjggMC0xNi03LjItMTYtMTYgMC0uOSAuMS0xLjkgLjItMi44IDEuMy03LjUgNy45LTEzLjIgMTUuOC0xMy4yIDguOCAwIDE2IDcuMiAxNiAxNnptNDM2LjctNDBjNi41IDE2IDE5LjMgMjguOSAzNS4zIDM1LjNsMCAxMDUuM2MtMTYgNi41LTI4LjkgMTkuMy0zNS4zIDM1LjNsLTIwMS4zIDBjLTYuNS0xNi0xOS4zLTI4LjktMzUuMy0zNS4zbDAtMjAuNy00OCAwIDAgMjAuN2MtMjMuNSA5LjUtNDAgMzIuNS00MCA1OS4zIDAgMzUuMyAyOC43IDY0IDY0IDY0IDI2LjkgMCA0OS45LTE2LjUgNTkuMy00MGwyMDEuMyAwYzkuNSAyMy41IDMyLjUgNDAgNTkuMyA0MCAzNS4zIDAgNjQtMjguNyA2NC02NCAwLTI2LjktMTYuNS00OS45LTQwLTU5LjNsMC0xMDUuM2MyMy41LTkuNSA0MC0zMi41IDQwLTU5LjMgMC0zNS4zLTI4LjctNjQtNjQtNjQtMjYuOSAwLTQ5LjkgMTYuNS01OS4zIDQwbC01Mi43IDAgMCA5LjZjMTAuNyAxMC45IDE5LjEgMjMuOSAyNC42IDM4LjRsMjggMHptNTkuMy04YTE2IDE2IDAgMSAxIDAtMzIgMTYgMTYgMCAxIDEgMCAzMnpNMjcxLjggNDUwLjdhMTYgMTYgMCAxIDEgLTMxLjUtNS41IDE2IDE2IDAgMSAxIDMxLjUgNS41em0zMDEuNSAxM2MtNy41LTEuMy0xMy4yLTcuOS0xMy4yLTE1LjggMC04LjggNy4yLTE2IDE2LTE2IDcuOSAwIDE0LjUgNS43IDE1LjggMTMuMmwwIC4xYy4xIC45IC4yIDEuOCAuMiAyLjcgMCA4LjgtNy4yIDE2LTE2IDE2LS45IDAtMS45LS4xLTIuOC0uMnoiXX0sdmNyPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImNvbW1lbnQiLGljb246WzUxMiw1MTIsWzEyODQ4OSw2MTY2OV0sImYwNzUiLCJNNTEuOSAzODQuOUMxOS4zIDM0NC42IDAgMjk0LjQgMCAyNDAgMCAxMDcuNSAxMTQuNiAwIDI1NiAwUzUxMiAxMDcuNSA1MTIgMjQwIDM5Ny40IDQ4MCAyNTYgNDgwYy0zNi41IDAtNzEuMi03LjItMTAyLjYtMjBMMzcgNTA5LjljLTMuNyAxLjYtNy41IDIuMS0xMS41IDIuMS0xNC4xIDAtMjUuNS0xMS40LTI1LjUtMjUuNSAwLTQuMyAxLjEtOC41IDMuMS0xMi4ybDQ4LjgtODkuNHptMzcuMy0zMC4yYzEyLjIgMTUuMSAxNC4xIDM2LjEgNC44IDUzLjJsLTE4IDMzLjEgNTguNS0yNS4xYzExLjgtNS4xIDI1LjItNS4yIDM3LjEtLjMgMjUuNyAxMC41IDU0LjIgMTYuNCA4NC4zIDE2LjQgMTE3LjggMCAyMDgtODguOCAyMDgtMTkyUzM3My44IDQ4IDI1NiA0OCA0OCAxMzYuOCA0OCAyNDBjMCA0Mi44IDE1LjEgODIuNCA0MS4yIDExNC43eiJdfSx5Y3I9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiY2hlc3MtcGF3biIsaWNvbjpbMzg0LDUxMixbOTgyM10sImY0NDMiLCJNMTkyLTMyYzY2LjMgMCAxMjAgNTMuNyAxMjAgMTIwIDAgMjcuNi05LjMgNTIuOS0yNC45IDczLjIgOS44IDMgMTYuOSAxMi4xIDE2LjkgMjIuOCAwIDEzLjMtMTAuNyAyNC0yNCAyNGwtLjYgMCAyNC42IDE2MCA1My42IDY3YzYuNyA4LjQgMTAuNCAxOC44IDEwLjQgMjkuNiAwIDI2LjItMjEuMiA0Ny40LTQ3LjQgNDcuNEw2My40IDUxMmMtMjYuMiAwLTQ3LjQtMjEuMi00Ny40LTQ3LjQgMC0xMC44IDMuNy0yMS4yIDEwLjQtMjkuNmw1My42LTY3IDI0LjYtMTYwLS42IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0IDAtMTAuOCA3LjEtMTkuOCAxNi45LTIyLjgtMTUuNi0yMC4zLTI0LjktNDUuNi0yNC45LTczLjIgMC02Ni4zIDUzLjctMTIwIDEyMC0xMjB6TTExNS45IDQwMGwtNTEuMiA2NCAyNTQuNyAwLTUxLjItNjQtMTUyLjIgMHptMzYuMi0xODQuN2wtMjEgMTM2LjcgMTIxLjkgMC0yMS0xMzYuNy0xLjEtNy4zLTc3LjYgMC0xLjEgNy4zek0xOTIgMTZhNzIgNzIgMCAxIDAgMCAxNDQgNzIgNzIgMCAxIDAgMC0xNDR6Il19LHdjcj17cHJlZml4OiJmYXIiLGljb25OYW1lOiJjYWxlbmRhci1wbHVzIixpY29uOls0NDgsNTEyLFtdLCJmMjcxIiwiTTEyMCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0bDAgNDAgMTYwIDAgMC00MGMwLTEzLjMgMTAuNy0yNCAyNC0yNHMyNCAxMC43IDI0IDI0bDAgNDAgMzIgMGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDI4OGMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA0ODBjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgMTI4QzAgOTIuNyAyOC43IDY0IDY0IDY0bDMyIDAgMC00MGMwLTEzLjMgMTAuNy0yNCAyNC0yNHptMCAxMTJsLTU2IDBjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDI4OGMwIDguOCA3LjIgMTYgMTYgMTZsMzIwIDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMjg4YzAtOC44LTcuMi0xNi0xNi0xNmwtMjY0IDB6bTEwNCA2NGMxMy4zIDAgMjQgMTAuNyAyNCAyNGwwIDQ4IDQ4IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTQ4IDAgMCA0OGMwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNGwwLTQ4LTQ4IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjRsNDggMCAwLTQ4YzAtMTMuMyAxMC43LTI0IDI0LTI0eiJdfSxNY3I9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiY2xpcGJvYXJkIixpY29uOlszODQsNTEyLFsxMjgyMDNdLCJmMzI4IiwiTTIzMiA5NmwtODAgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNGw4MCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0em0wIDQ4YzM3LjEgMCA2Ny42LTI4IDcxLjYtNjRMMzIwIDgwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDM1MmMwIDguOC03LjIgMTYtMTYgMTZMNjQgNDY0Yy04LjggMC0xNi03LjItMTYtMTZMNDggOTZjMC04LjggNy4yLTE2IDE2LTE2bDE2LjQgMGM0IDM2IDM0LjUgNjQgNzEuNiA2NGw4MCAwek0yOTEuOSAzMkMyNzkgMTIuNyAyNTcgMCAyMzIgMEwxNTIgMGMtMjUgMC00NyAxMi43LTU5LjkgMzJMNjQgMzJDMjguNyAzMiAwIDYwLjcgMCA5NkwwIDQ0OGMwIDM1LjMgMjguNyA2NCA2NCA2NGwyNTYgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTM1MmMwLTM1LjMtMjguNy02NC02NC02NGwtMjguMSAweiJdfSxrY3I9e3ByZWZpeDoiZmFyIixpY29uTmFtZToidGh1bWJzLWRvd24iLGljb246WzUxMiw1MTIsWzEyODA3OCw2MTU3Nl0sImYxNjUiLCJNMzYwIDMybDcuNCAuNGMzNSAzLjYgNjIuNSAzMi4yIDY0LjQgNjcuNyAxNy44IDExLjggMzAuMSAzMS40IDMyIDUzLjlsLjIgNmMwIDUuNy0uNyAxMS4yLTIgMTYuNSAxMC4yIDExLjUgMTYuOCAyNi4zIDE3LjggNDIuN2wuMiA0LjhjMCAxMy4yLTMuNiAyNS40LTkuOCAzNiA0LjkgOC40IDguMiAxNy45IDkuMyAyOGwuNCA4YzAgMzcuMy0yOC4zIDY3LjktNjQuNiA3MS42bC03LjQgLjQtMTA5LjcgMCAxNC4xIDMwIDMuMSA3LjZjMTIuNSAzNS43LTEuOCA3NS41LTM0LjIgOTVsLTcuMiAzLjljLTM3LjUgMTcuNi04MS43IDMuNi0xMDIuNi0zMS4ybC0uNi0uOS0yLjctNS0uNi0xLjItMzAuMS02NGMtOS40IDE3LjgtMjggMjkuOS00OS41IDI5LjlsLTMyIDBjLTMwLjkgMC01Ni0yNS4xLTU2LTU2TDAgMTUyYzAtMzAuOSAyNS4xLTU2IDU2LTU2bDMyIDBjMTIuNCAwIDIzLjkgNC4xIDMzLjIgMTEgMTMuMi0yMS40IDMyLTM5LjQgNTUtNTEuNmwxMi4yLTYuNSAuNy0uMyA2LjYtMy4yIC43LS4zIDcuMS0zYzE2LjctNi42IDM0LjUtOS45IDUyLjYtOS45TDM2MCAzMnpNMjU1LjkgODBjLTEyIDAtMjMuOSAyLjMtMzUuMSA2LjZsLTQuNyAyLTUuMyAyLjYgMCAwLTEyLjIgNi41Yy0yOS4yIDE1LjUtNDguMyA0NC45LTUwLjcgNzcuNmwtLjIgOCAwIDExMi45IC4xIDQuMWMuNSA4LjIgMi41IDE2LjIgNiAyMy43bDU2LjggMTIwLjkgMi4xIDMuOGM4LjQgMTMuNyAyNiAxOS4xIDQwLjggMTIuMmwyLjktMS42YzEzLTcuOCAxOC43LTIzLjcgMTMuNy0zOGwtMS4yLTMtMzAuMi02NC4yYy0zLjUtNy40LTIuOS0xNi4xIDEuNS0yMy4xczEyLTExLjEgMjAuMi0xMS4xbDE0Ny41IDAgMi40LS4xYzExLjMtMS4xIDIwLjMtMTAuMSAyMS40LTIxLjRsLjEtMi41YzAtNy4xLTMuMS0xMy41LTguMi0xOC01LjItNC42LTguMi0xMS4xLTguMi0xOHMzLTEzLjQgOC4yLTE4YzQuNC0zLjkgNy40LTkuMyA4LTE1LjNsLjItMi43YzAtOC40LTQuNC0xNS45LTExLjItMjAuMi0xMC43LTYuOS0xNC4yLTIwLjktOC0zMiAxLjUtMi42IDIuNS01LjYgMi45LTguNmwuMi0zLjJjMC0xMC42LTYuOS0xOS42LTE2LjYtMjIuOC0xMS43LTMuOC0xOC43LTE1LjktMTYtMjggLjItLjkgLjMtMS44IC40LTIuNmwuMi0yLjZjMC0xMi40LTkuNS0yMi42LTIxLjYtMjMuOEwzNjAgODAgMjU1LjkgODB6TTU2IDE0NGMtNC40IDAtOCAzLjYtOCA4bDAgMjI0YzAgNC40IDMuNiA4IDggOGwzMiAwYzQuNCAwIDgtMy42IDgtOGwwLTIyNGMwLTQuNC0zLjYtOC04LThsLTMyIDB6Il19LFNjcj17cHJlZml4OiJmYXIiLGljb25OYW1lOiJpZC1iYWRnZSIsaWNvbjpbMzg0LDUxMixbXSwiZjJjMSIsIk0yNTYgNDhsMCAxNmMwIDE3LjctMTQuMyAzMi0zMiAzMmwtNjQgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC0xNi02NCAwYy04LjggMC0xNiA3LjItMTYgMTZsMCAzODRjMCA4LjggNy4yIDE2IDE2IDE2bDI1NiAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTM4NGMwLTguOC03LjItMTYtMTYtMTZsLTY0IDB6TTAgNjRDMCAyOC43IDI4LjcgMCA2NCAwTDMyMCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMzg0YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDUxMmMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCA2NHpNMTYwIDMyMGw2NCAwYzQ0LjIgMCA4MCAzNS44IDgwIDgwIDAgOC44LTcuMiAxNi0xNiAxNkw5NiA0MTZjLTguOCAwLTE2LTcuMi0xNi0xNiAwLTQ0LjIgMzUuOC04MCA4MC04MHptLTI0LTk2YTU2IDU2IDAgMSAxIDExMiAwIDU2IDU2IDAgMSAxIC0xMTIgMHoiXX0sRlNlPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6InNxdWFyZS1jaGVjayIsaWNvbjpbNDQ4LDUxMixbOTc0NSw5OTg5LDYxNTEwLCJjaGVjay1zcXVhcmUiXSwiZjE0YSIsIk0zODQgMzJjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAzMjBjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDk2QzAgNjAuNyAyOC43IDMyIDY0IDMybDMyMCAwek02NCA4MGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMzIwYzAgOC44IDcuMiAxNiAxNiAxNmwzMjAgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0zMjBjMC04LjgtNy4yLTE2LTE2LTE2TDY0IDgwem0yMzAuNyA4OS45YzcuOC0xMC43IDIyLjgtMTMuMSAzMy41LTUuMyAxMC43IDcuOCAxMy4xIDIyLjggNS4zIDMzLjVMMjExLjQgMzY2LjFjLTQuMSA1LjctMTAuNSA5LjMtMTcuNSA5LjgtNyAuNS0xMy45LTItMTguOC02LjlsLTU1LjktNTUuOWMtOS40LTkuNC05LjQtMjQuNiAwLTMzLjlzMjQuNi05LjQgMzMuOSAwbDM2IDM2IDEwNS42LTE0NS4yeiJdfSx6Y3I9RlNlLENjcj17cHJlZml4OiJmYXIiLGljb25OYW1lOiJjaGVzcy1iaXNob3AiLGljb246WzMyMCw1MTIsWzk4MjFdLCJmNDNhIiwiTTIxNiAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC0xNiAwIDgxLjggOTguMWMyNC43IDI5LjYgMzguMiA2NyAzOC4yIDEwNS42IDAgNDMuNy0xNy40IDg1LjctNDguMyAxMTYuNmwtOC42IDguNiA0Ni41IDU4LjJjNi43IDguNCAxMC40IDE4LjggMTAuNCAyOS42IDAgMjYuMi0yMS4yIDQ3LjQtNDcuNCA0Ny40TDQ3LjQgNTEyQzIxLjIgNTEyIDAgNDkwLjggMCA0NjQuNiAwIDQ1My45IDMuNyA0NDMuNCAxMC40IDQzNWw0Ni41LTU4LjItOC42LTguNkMxNy40IDMzNy40IDAgMjk1LjQgMCAyNTEuNyAwIDIxMy4xIDEzLjUgMTc1LjggMzguMiAxNDYuMUwxMjAgNDggMTA0IDQ4QzkwLjcgNDggODAgMzcuMyA4MCAyNFM5MC43IDAgMTA0IDBMMjE2IDB6TTk0LjQgNDA2LjhsLTQ1LjcgNTcuMiAyMjIuNyAwLTQ1LjctNTcuMS01LjUtNi45LTEyMC4zIDAtNS41IDYuOHpNMTU2LjkgNzguN0w3NS4xIDE3Ni44Yy0xNS4zIDE4LjQtMjQuNiA0MS0yNi43IDY0LjdMNDggMjUxLjdjMCAzMSAxMi4zIDYwLjcgMzQuMiA4Mi43bDE3LjcgMTcuNyAxMjAuMiAwYzYuMi02LjIgMTIuMS0xMi4xIDE3LjgtMTcuNyAyMS45LTIxLjkgMzQuMi01MS42IDM0LjItODIuNmwtLjQtMTAuMmMtMS41LTE3LTYuNy0zMy4zLTE1LjItNDhMMjA5IDI0MWMtOS40IDkuNC0yNC42IDkuNC0zMy45IDBzLTkuNC0yNC42IDAtMzMuOWw1MS44LTUxLjgtNjMuNy03Ni41LTMuMS0zLjgtMy4xIDMuOHoiXX0sX2NyPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImVudmVsb3BlLW9wZW4iLGljb246WzUxMiw1MTIsWzYyMTM1XSwiZjJiNiIsIk01MTIgNDE2YzAgMzUuMy0yOC41IDY0LTYzLjkgNjRMNjQgNDgwYy0zNS40IDAtNjQtMjguNy02NC02NEwwIDE2NGMuMS0xNS41IDcuOC0zMCAyMC41LTM4LjhMMjA2LTIuN2MzMC4xLTIwLjcgNjkuOC0yMC43IDk5LjkgMEw0OTEuNSAxMjUuMmMxMi44IDguOCAyMC40IDIzLjMgMjAuNSAzOC44bDAgMjUyek02NCA0MzJsMzg0LjEgMGM4LjggMCAxNS45LTcuMSAxNS45LTE2bDAtMTkxLjctMTU0LjggMTE3LjRjLTMxLjQgMjMuOS03NC45IDIzLjktMTA2LjQgMEw0OCAyMjQuMyA0OCA0MTZjMCA4LjkgNy4yIDE2IDE2IDE2ek00NjMuNiAxNjQuNEwyNzguNyAzNi44Yy0xMy43LTkuNC0zMS43LTkuNC00NS40IDBMNDguNCAxNjQuNCAyMzEuOCAzMDMuNWMxNC4zIDEwLjggMzQuMSAxMC44IDQ4LjQgMEw0NjMuNiAxNjQuNHoiXX0sRTk9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiY2lyY2xlLXhtYXJrIixpY29uOls1MTIsNTEyLFs2MTUzMiwidGltZXMtY2lyY2xlIiwieG1hcmstY2lyY2xlIl0sImYwNTciLCJNMjU2IDQ4YTIwOCAyMDggMCAxIDEgMCA0MTYgMjA4IDIwOCAwIDEgMSAwLTQxNnptMCA0NjRhMjU2IDI1NiAwIDEgMCAwLTUxMiAyNTYgMjU2IDAgMSAwIDAgNTEyek0xNjcgMTY3Yy05LjQgOS40LTkuNCAyNC42IDAgMzMuOWw1NSA1NS01NSA1NWMtOS40IDkuNC05LjQgMjQuNiAwIDMzLjlzMjQuNiA5LjQgMzMuOSAwbDU1LTU1IDU1IDU1YzkuNCA5LjQgMjQuNiA5LjQgMzMuOSAwczkuNC0yNC42IDAtMzMuOWwtNTUtNTUgNTUtNTVjOS40LTkuNCA5LjQtMjQuNiAwLTMzLjlzLTI0LjYtOS40LTMzLjkgMGwtNTUgNTUtNTUtNTVjLTkuNC05LjQtMjQuNi05LjQtMzMuOSAweiJdfSxUY3I9RTksTGNyPUU5LE9TZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJzcXVhcmUtY2FyZXQtdXAiLGljb246WzQ0OCw1MTIsWyJjYXJldC1zcXVhcmUtdXAiXSwiZjE1MSIsIk02NCA4MGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMzIwYzAgOC44IDcuMiAxNiAxNiAxNmwzMjAgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0zMjBjMC04LjgtNy4yLTE2LTE2LTE2TDY0IDgwek0wIDk2QzAgNjAuNyAyOC43IDMyIDY0IDMybDMyMCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMzIwYzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDQ4MGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCA5NnptMjI0IDY0YzYuNyAwIDEzIDIuOCAxNy42IDcuN2wxMDQgMTEyYzYuNSA3IDguMiAxNy4yIDQuNCAyNS45UzMzNy41IDMyMCAzMjggMzIwbC0yMDggMGMtOS41IDAtMTguMi01LjctMjItMTQuNHMtMi4xLTE4LjkgNC40LTI1LjlsMTA0LTExMmM0LjUtNC45IDEwLjktNy43IDE3LjYtNy43eiJdfSxEY3I9T1NlLEFjcj17cHJlZml4OiJmYXIiLGljb25OYW1lOiJmaWxlLWltYWdlIixpY29uOlszODQsNTEyLFsxMjg0NDNdLCJmMWM1IiwiTTE3NiA0OEw2NCA0OGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMzg0YzAgOC44IDcuMiAxNiAxNiAxNmwyNTYgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0yNDAtODggMGMtMzkuOCAwLTcyLTMyLjItNzItNzJsMC04OHpNMzE2LjEgMTYwTDIyNCA2Ny45IDIyNCAxMzZjMCAxMy4zIDEwLjcgMjQgMjQgMjRsNjguMSAwek0wIDY0QzAgMjguNyAyOC43IDAgNjQgMEwxOTcuNSAwYzE3IDAgMzMuMyA2LjcgNDUuMyAxOC43TDM2NS4zIDE0MS4zYzEyIDEyIDE4LjcgMjguMyAxOC43IDQ1LjNMMzg0IDQ0OGMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA1MTJjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgNjR6TTI1OS40IDQzMmwtMTM0LjggMGMtMTUuOCAwLTI4LjYtMTIuOC0yOC42LTI4LjYgMC02LjQgMi4xLTEyLjUgNi0xNy42bDY3LjYtODYuOUMxNzUgMjkyIDE4My4zIDI4OCAxOTIgMjg4czE3IDQgMjIuNCAxMC45TDI4MiAzODUuOWMzLjkgNSA2IDExLjIgNiAxNy42IDAgMTUuOC0xMi44IDI4LjYtMjguNiAyOC42ek0xMTIgMjI0YTMyIDMyIDAgMSAxIDAgNjQgMzIgMzIgMCAxIDEgMC02NHoiXX0sUlNlPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6InNxdWFyZS1jYXJldC1yaWdodCIsaWNvbjpbNDQ4LDUxMixbImNhcmV0LXNxdWFyZS1yaWdodCJdLCJmMTUyIiwiTTQwMCA5NmMwLTguOC03LjItMTYtMTYtMTZMNjQgODBjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDMyMGMwIDguOCA3LjIgMTYgMTYgMTZsMzIwIDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMzIwek0zODQgMzJjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAzMjBjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDk2QzAgNjAuNyAyOC43IDMyIDY0IDMybDMyMCAwek0zMjAgMjU2YzAgNi43LTIuOCAxMy03LjcgMTcuNmwtMTEyIDEwNGMtNyA2LjUtMTcuMiA4LjItMjUuOSA0LjRTMTYwIDM2OS41IDE2MCAzNjBsMC0yMDhjMC05LjUgNS43LTE4LjIgMTQuNC0yMnMxOC45LTIuMSAyNS45IDQuNGwxMTIgMTA0YzQuOSA0LjUgNy43IDEwLjkgNy43IDE3LjZ6Il19LEVjcj1SU2UsSnNlPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6InN1biIsaWNvbjpbNTc2LDUxMixbOTcyOF0sImYxODUiLCJNMjg4LTMyYzggMCAxNS40IDQgMTkuOSAxMC42bDU4LjggODcuNCAxMDMuNC0yMC4yYzcuOC0xLjUgMTUuOSAuOSAyMS42IDYuNnM4LjEgMTMuOCA2LjYgMjEuNkw0NzggMTc3LjMgNTY1LjQgMjM2LjFDNTcyIDI0MC41IDU3NiAyNDggNTc2IDI1NnMtNCAxNS40LTEwLjYgMTkuOUw0NzggMzM0LjcgNDk4LjIgNDM4YzEuNSA3LjgtLjkgMTUuOS02LjYgMjEuNnMtMTMuOCA4LjEtMjEuNiA2LjZMMzY2LjcgNDQ2IDMwNy45IDUzMy40QzMwMy40IDU0MCAyOTYgNTQ0IDI4OCA1NDRzLTE1LjQtNC0xOS45LTEwLjZMMjA5LjMgNDQ2IDEwNS45IDQ2Ni4yYy03LjggMS41LTE1LjktLjktMjEuNi02LjZzLTguMS0xMy44LTYuNi0yMS42TDk4IDMzNC43IDEwLjYgMjc1LjlDNCAyNzEuNCAwIDI2NCAwIDI1NnM0LTE1LjQgMTAuNi0xOS45TDk4IDE3Ny4zIDc3LjggNzMuOWMtMS41LTcuOCAuOS0xNS45IDYuNi0yMS42czEzLjgtOC4xIDIxLjYtNi42bDEwMy4zIDIwLjIgNTguOC04Ny40IDEuOC0yLjNDMjc0LjQtMjkgMjgxLTMyIDI4OC0zMnptLTQ3LjggMTM4Yy01LjQgOC0xNSAxMi0yNC41IDEwLjJsLTg0LTE2LjQgMTYuNCA4NGMxLjggOS41LTIuMiAxOS4xLTEwLjIgMjQuNUw2NyAyNTYgMTM4IDMwMy44YzggNS40IDEyIDE1IDEwLjIgMjQuNWwtMTYuNCA4NCA4NC0xNi40IDMuNS0uNGM4LjMtLjQgMTYuMyAzLjYgMjEgMTAuNmw0Ny44IDcxIDQ3LjgtNzEgMi4yLTIuOGM1LjYtNi4xIDE0LTkgMjIuMy03LjNsODQgMTYuNC0xNi40LTg0Yy0xLjgtOS41IDIuMi0xOS4xIDEwLjItMjQuNWw3MS00Ny44LTcxLTQ3LjhjLTgtNS40LTEyLTE1LTEwLjItMjQuNWwxNi40LTg0LTg0IDE2LjRjLTkuNSAxLjgtMTkuMS0yLjItMjQuNS0xMC4ybC00Ny44LTcxLTQ3LjggNzF6TTI4OCAzNzZhMTIwIDEyMCAwIDEgMSAwLTI0MCAxMjAgMTIwIDAgMSAxIDAgMjQwem0wLTE5MmE3MiA3MiAwIDEgMCAwIDE0NCA3MiA3MiAwIDEgMCAwLTE0NHoiXX0sJGNyPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImltYWdlIixpY29uOls0NDgsNTEyLFtdLCJmMDNlIiwiTTY0IDgwYy04LjggMC0xNiA3LjItMTYgMTZsMCAzMjBjMCA4LjggNy4yIDE2IDE2IDE2bDMyMCAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyMGMwLTguOC03LjItMTYtMTYtMTZMNjQgODB6TTAgOTZDMCA2MC43IDI4LjcgMzIgNjQgMzJsMzIwIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAzMjBjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDk2em0xMjggMzJhMzIgMzIgMCAxIDEgMCA2NCAzMiAzMiAwIDEgMSAwLTY0em0xMzYgNzJjOC41IDAgMTYuNCA0LjUgMjAuNyAxMS44bDgwIDEzNmM0LjQgNy40IDQuNCAxNi42IC4xIDI0LjFTMzUyLjYgMzg0IDM0NCAzODRsLTI0MCAwYy04LjkgMC0xNy4yLTUtMjEuMy0xMi45cy0zLjUtMTcuNSAxLjYtMjQuOGw1Ni04MGM0LjUtNi40IDExLjgtMTAuMiAxOS43LTEwLjJzMTUuMiAzLjggMTkuNyAxMC4ybDE3LjIgMjQuNiA0Ni41LTc5YzQuMy03LjMgMTIuMi0xMS44IDIwLjctMTEuOHoiXX0sUGNyPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImxpZ2h0YnVsYiIsaWNvbjpbMzg0LDUxMixbMTI4MTYxXSwiZjBlYiIsIk0yOTYuNSAyOTEuMUMzMjEgMjY1LjIgMzM2IDIzMC40IDMzNiAxOTIgMzM2IDExMi41IDI3MS41IDQ4IDE5MiA0OFM0OCAxMTIuNSA0OCAxOTJjMCAzOC40IDE1IDczLjIgMzkuNSA5OS4xIDIxLjMgMjIuNCA0NC45IDU0IDUzLjMgOTIuOWwxMDIuNCAwYzguNC0zOSAzMi03MC41IDUzLjMtOTIuOXptMzQuOCAzM0MzMDcuNyAzNDkgMjg4IDM3OS40IDI4OCA0MTMuN2wwIDE4LjNjMCA0NC4yLTM1LjggODAtODAgODBsLTMyIDBjLTQ0LjIgMC04MC0zNS44LTgwLTgwbDAtMTguM0M5NiAzNzkuNCA3Ni4zIDM0OSA1Mi43IDMyNC4xIDIwIDI4OS43IDAgMjQzLjIgMCAxOTIgMCA4NiA4NiAwIDE5MiAwUzM4NCA4NiAzODQgMTkyYzAgNTEuMi0yMCA5Ny43LTUyLjcgMTMyLjF6TTE0NCAxODRjMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjRjMC00OC42IDM5LjQtODggODgtODggMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRjLTIyLjEgMC00MCAxNy45LTQwIDQweiJdfSxHc2U9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiYWRkcmVzcy1jYXJkIixpY29uOls1NzYsNTEyLFs2MjE0MCwiY29udGFjdC1jYXJkIiwidmNhcmQiXSwiZjJiYiIsIk01MTIgODBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMzIwYzAgOC44LTcuMiAxNi0xNiAxNkw2NCA0MzJjLTguOCAwLTE2LTcuMi0xNi0xNkw0OCA5NmMwLTguOCA3LjItMTYgMTYtMTZsNDQ4IDB6TTY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsNDQ4IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zMjBjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzJ6TTIwOCAyNDhhNTYgNTYgMCAxIDAgMC0xMTIgNTYgNTYgMCAxIDAgMCAxMTJ6bS0zMiA0MGMtNDQuMiAwLTgwIDM1LjgtODAgODAgMCA4LjggNy4yIDE2IDE2IDE2bDE5MiAwYzguOCAwIDE2LTcuMiAxNi0xNiAwLTQ0LjItMzUuOC04MC04MC04MGwtNjQgMHpNMzc2IDE0NGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGw4MCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC04MCAwem0wIDk2Yy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDgwIDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTgwIDB6Il19LEljcj1Hc2UsTmNyPUdzZSxCU2U9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiZmFjZS1tZWgiLGljb246WzUxMiw1MTIsWzEyODUyOCwibWVoIl0sImYxMWEiLCJNNDY0IDI1NmEyMDggMjA4IDAgMSAxIC00MTYgMCAyMDggMjA4IDAgMSAxIDQxNiAwek0yNTYgMGEyNTYgMjU2IDAgMSAwIDAgNTEyIDI1NiAyNTYgMCAxIDAgMC01MTJ6TTE3NiAyNDBhMzIgMzIgMCAxIDAgMC02NCAzMiAzMiAwIDEgMCAwIDY0em0xOTItMzJhMzIgMzIgMCAxIDAgLTY0IDAgMzIgMzIgMCAxIDAgNjQgMHpNMTg0IDMyMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwxNDQgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtMTQ0IDB6Il19LEZjcj1CU2UsT2NyPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6Im1hcCIsaWNvbjpbNTEyLDUxMixbMTI4NTA2LDYyMDcyXSwiZjI3OSIsIk01MTIgNDhjMC04LjMtNC4zLTE2LTExLjMtMjAuNHMtMTUuOS00LjgtMjMuMy0xLjFMMzUyLjUgODguMSAxODAgMjkuNGMtMTMuNy00LjctMjguNy0zLjgtNDEuOSAyLjNMMTMuOCA5MC4zQzUuNCA5NC4yIDAgMTAyLjcgMCAxMTJMMCA0NjRjMCA4LjIgNC4yIDE1LjkgMTEuMSAyMC4zczE1LjYgNC45IDIzLjEgMS40bDEyNy4zLTU5LjkgMTcwLjcgNTYuOWMxMy43IDQuNiAyOC41IDMuNyA0MS42LTIuNWwxMjQuNC01OC41YzguNC00IDEzLjgtMTIuNCAxMy44LTIxLjdsMC0zNTJ6TTE0NCA4Mi4xbDAgMjk5LTk2IDQ1LjIgMC0yOTkgOTYtNDUuMnptNDggMzAzLjNsMC0zMDEuMSAxMjggNDMuNSAwIDMwMC4zLTEyOC00Mi43ek0zNjggMTM0bDk2LTQ3LjQgMCAyOTguMi05NiA0NS4yIDAtMjk2eiJdfSxSY3I9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiaGFuZC1wb2ludC1kb3duIixpY29uOlszODQsNTEyLFtdLCJmMGE3IiwiTTY0IDQ0OGwwLTE3Ny42YzUuMiAxIDEwLjUgMS42IDE2IDEuNmwxNiAwIDAgMTc2YzAgOC44LTcuMiAxNi0xNiAxNnMtMTYtNy4yLTE2LTE2ek04MCAyMjRjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtMjRjMC02Ni4zIDUzLjctMTIwIDEyMC0xMjBsNDggMGM1Mi41IDAgOTcuMSAzMy43IDExMy40IDgwLjctMy4xLS41LTYuMi0uNy05LjQtLjctMjAgMC0zNy45IDkuMi00OS43IDIzLjYtOS00LjktMTkuNC03LjYtMzAuMy03LjYtMTUuMSAwLTI5IDUuMy00MCAxNC0xMS04LjgtMjQuOS0xNC00MC0xNGwtNDAgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGw0MCAwYzguOCAwIDE2IDcuMiAxNiAxNnMtNy4yIDE2LTE2IDE2bC04MCAwek0wIDE5MmwwIDBjMCAxOCA2IDM0LjYgMTYgNDhsMCAyMDhjMCAzNS4zIDI4LjcgNjQgNjQgNjRzNjQtMjguNyA2NC02NGwwLTgyYzUuMSAxLjMgMTAuNSAyIDE2IDIgMjUuMyAwIDQ3LjItMTQuNyA1Ny42LTM2IDcgMi42IDE0LjUgNCAyMi40IDQgMjAgMCAzNy45LTkuMiA0OS43LTIzLjYgOSA0LjkgMTkuNCA3LjYgMzAuMyA3LjYgMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC04OEMzODQgNzUuMiAzMDguOCAwIDIxNiAwTDE2OCAwQzc1LjIgMCAwIDc1LjIgMCAxNjhsMCAyNHptMzM2IDY0YzAgOC44LTcuMiAxNi0xNiAxNnMtMTYtNy4yLTE2LTE2bDAtNjRjMC04LjggNy4yLTE2IDE2LTE2czE2IDcuMiAxNiAxNmwwIDY0ek0xNjAgMjcyYzUuNSAwIDEwLjktLjcgMTYtMmwwIDM0YzAgOC44LTcuMiAxNi0xNiAxNnMtMTYtNy4yLTE2LTE2bDAtMzIgMTYgMHptNjQtMjRsMC00MGMwLTguOCA3LjItMTYgMTYtMTZzMTYgNy4yIDE2IDE2bDAgNjRjMCA4LjgtNy4yIDE2LTE2IDE2cy0xNi03LjItMTYtMTZsMC0yNHoiXX0sSFNlPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImZhY2UtbWVoLWJsYW5rIixpY29uOls1MTIsNTEyLFsxMjg1NjYsIm1laC1ibGFuayJdLCJmNWE0IiwiTTI1NiA0OGEyMDggMjA4IDAgMSAwIDAgNDE2IDIwOCAyMDggMCAxIDAgMC00MTZ6TTUxMiAyNTZhMjU2IDI1NiAwIDEgMSAtNTEyIDAgMjU2IDI1NiAwIDEgMSA1MTIgMHpNMTQ0IDIwOGEzMiAzMiAwIDEgMSA2NCAwIDMyIDMyIDAgMSAxIC02NCAwem0xOTItMzJhMzIgMzIgMCAxIDEgMCA2NCAzMiAzMiAwIDEgMSAwLTY0eiJdfSxCY3I9SFNlLHFTZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJmYWNlLWdyaW4tdG9uZ3VlIixpY29uOls1MTIsNTEyLFsxMjg1MzksImdyaW4tdG9uZ3VlIl0sImY1ODkiLCJNNDY0IDI1NmMwLTExNC45LTkzLjEtMjA4LTIwOC0yMDhTNDggMTQxLjEgNDggMjU2YzAgNzQuMSAzOC44IDEzOS4yIDk3LjEgMTc2LS43LTUuMi0xLjEtMTAuNi0xLjEtMTZsMC01My41Yy0xMC4yLTEyLjYtMTguMy0yNi45LTIzLjgtNDIuNC00LjEtMTEuNiA3LjgtMjEuNCAxOS42LTE3LjggMzQuNyAxMC42IDc0LjIgMTYuNSAxMTYuMSAxNi41IDQyIDAgODEuNS02IDExNi4zLTE2LjYgMTEuOC0zLjYgMjMuNyA2LjEgMTkuNiAxNy44LTUuNSAxNS42LTEzLjYgMjkuOS0yMy44IDQyLjVsMCA1My41YzAgNS40LS40IDEwLjgtMS4xIDE2IDU4LjQtMzYuOCA5Ny4xLTEwMS45IDk3LjEtMTc2em00OCAwYzAgMTE2LjMtNzcuNiAyMTQuNi0xODMuOSAyNDUuNy0xOS41IDE2LjQtNDQuNiAyNi4zLTcyLjEgMjYuM3MtNTIuNi05LjktNzIuMS0yNi4zQzc3LjYgNDcwLjYgMCAzNzIuMyAwIDI1NiAwIDExNC42IDExNC42IDAgMjU2IDBTNTEyIDExNC42IDUxMiAyNTZ6TTE3NiAxNzZhMzIgMzIgMCAxIDEgMCA2NCAzMiAzMiAwIDEgMSAwLTY0em0xMjggMzJhMzIgMzIgMCAxIDEgNjQgMCAzMiAzMiAwIDEgMSAtNjQgMHptMTYgMjA4bDAtMzcuNGMwLTE0LjctMTEuOS0yNi42LTI2LjYtMjYuNmwtMiAwYy0xMS4zIDAtMjEuMSA3LjktMjMuNiAxOC45LTIuOCAxMi42LTIwLjggMTIuNi0yMy42IDAtMi41LTExLjEtMTIuMy0xOC45LTIzLjYtMTguOWwtMiAwYy0xNC43IDAtMjYuNiAxMS45LTI2LjYgMjYuNmwwIDM3LjRjMCAzNS4zIDI4LjcgNjQgNjQgNjRzNjQtMjguNyA2NC02NHoiXX0sSGNyPXFTZSxZc2U9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiZnV0Ym9sIixpY29uOls1MTIsNTEyLFs5OTE3LCJmdXRib2wtYmFsbCIsInNvY2Nlci1iYWxsIl0sImYxZTMiLCJNMzg3IDIyOC4zYy00LjQtMi44LTcuNi03LTkuMi0xMS45cy0xLjQtMTAuMiAuNS0xNUw0MTEuNiAxMThjLTE5LjktMjIuNC00NC42LTQwLjUtNzIuNC01Mi43bC02OS4xIDU3LjZjLTQgMy4zLTkgNS4xLTE0LjEgNS4xcy0xMC4yLTEuOC0xNC4xLTUuMUwxNzIuOCA2NS4zYy0yNy44IDEyLjItNTIuNSAzMC4zLTcyLjQgNTIuN2wzMy40IDgzLjRjMS45IDQuOCAyLjEgMTAuMSAuNSAxNXMtNC45IDkuMS05LjIgMTEuOUw0OSAyNzYuMmMzIDMwLjkgMTIuNyA1OS43IDI3LjYgODUuMmw4OS43LTZjNS4yLS4zIDEwLjMgMS4xIDE0LjUgNC4yczcuMiA3LjQgOC40IDEyLjVsMjIgODcuMmMxNC40IDMuMiAyOS40IDQuOCA0NC44IDQuOHMzMC4zLTEuNyA0NC44LTQuOGwyMi04Ny4yYzEuMy01IDQuMi05LjQgOC40LTEyLjVzOS4zLTQuNSAxNC41LTQuMmw4OS43IDZjMTUtMjUuNCAyNC43LTU0LjMgMjcuNi04NS4xTDM4NyAyMjguM3pNMjU2IDBhMjU2IDI1NiAwIDEgMSAwIDUxMiAyNTYgMjU2IDAgMSAxIDAtNTEyem02MiAyMjFjOC40IDYuMSAxMS45IDE2LjkgOC43IDI2LjhsLTE4LjMgNTYuM2MtMy4yIDkuOS0xMi40IDE2LjYtMjIuOCAxNi42bC01OS4yIDBjLTEwLjQgMC0xOS42LTYuNy0yMi44LTE2LjZsLTE4LjMtNTYuM2MtMy4yLTkuOSAuMy0yMC43IDguNy0yNi44bDQ3LjktMzQuOGM4LjQtNi4xIDE5LjgtNi4xIDI4LjIgMEwzMTggMjIxeiJdfSxxY3I9WXNlLGpjcj1Zc2UsalNlPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImZhY2Utc3VycHJpc2UiLGljb246WzUxMiw1MTIsWzEyODU1OCwic3VycHJpc2UiXSwiZjVjMiIsIk00NjQgMjU2YTIwOCAyMDggMCAxIDAgLTQxNiAwIDIwOCAyMDggMCAxIDAgNDE2IDB6TTAgMjU2YTI1NiAyNTYgMCAxIDEgNTEyIDAgMjU2IDI1NiAwIDEgMSAtNTEyIDB6bTE3Ni04MGEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6bTEyOCAzMmEzMiAzMiAwIDEgMSA2NCAwIDMyIDMyIDAgMSAxIC02NCAwem0tNDggODBhNjQgNjQgMCAxIDEgMCAxMjggNjQgNjQgMCAxIDEgMC0xMjh6Il19LFZjcj1qU2UsVlNlPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImZvbGRlciIsaWNvbjpbNTEyLDUxMixbMTI4MTkzLDEyODQ0Nyw2MTcxNiwiZm9sZGVyLWJsYW5rIl0sImYwN2IiLCJNNjQgNDAwbDM4NCAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTI0MGMwLTguOC03LjItMTYtMTYtMTZsLTE0OS4zIDBjLTE3LjMgMC0zNC4yLTUuNi00OC0xNkwyMTIuMyA4My4yYy0yLjgtMi4xLTYuMS0zLjItOS42LTMuMkw2NCA4MGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMjg4YzAgOC44IDcuMiAxNiAxNiAxNnptMzg0IDQ4TDY0IDQ0OGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCA5NkMwIDYwLjcgMjguNyAzMiA2NCAzMmwxMzguNyAwYzEzLjggMCAyNy4zIDQuNSAzOC40IDEyLjhsMzguNCAyOC44YzUuNSA0LjIgMTIuMyA2LjQgMTkuMiA2LjRMNDQ4IDgwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMjQwYzAgMzUuMy0yOC43IDY0LTY0IDY0eiJdfSxVY3I9VlNlLFdjcj17cHJlZml4OiJmYXIiLGljb25OYW1lOiJjbG91ZCIsaWNvbjpbNTc2LDUxMixbOTcyOV0sImYwYzIiLCJNODAgMTkyYzAtODguNCA3MS42LTE2MCAxNjAtMTYwIDQ3LjEgMCA4OS40IDIwLjQgMTE4LjcgNTIuNyAxMC42LTMuMSAyMS44LTQuNyAzMy4zLTQuNyA2Ni4zIDAgMTIwIDUzLjcgMTIwIDEyMCAwIDEzLjItMi4xIDI1LjktNi4xIDM3LjggNDEuNiAyMS4xIDcwLjEgNjQuMyA3MC4xIDExNC4yIDAgNzAuNy01Ny4zIDEyOC0xMjggMTI4bC0zMDQgMGMtNzkuNSAwLTE0NC02NC41LTE0NC0xNDQgMC01Ni44IDMyLjktMTA1LjkgODAuNy0xMjkuNC0uNC00LjgtLjctOS43LS43LTE0LjZ6TTI0MCA4MGMtNjEuOSAwLTExMiA1MC4xLTExMiAxMTIgMCA4LjQgLjkgMTYuNiAyLjcgMjQuNSAyLjcgMTIuMS00LjMgMjQuMy0xNi4xIDI4LjEtMzguNyAxMi40LTY2LjYgNDguNy02Ni42IDkxLjQgMCA1MyA0MyA5NiA5NiA5NmwzMDQgMGM0NC4yIDAgODAtMzUuOCA4MC04MCAwLTM3LjQtMjUuNy02OC45LTYwLjUtNzcuNi03LjUtMS45LTEzLjYtNy4yLTE2LjUtMTQuM3MtMi4xLTE1LjIgMi0yMS43YzctMTEuMSAxMS0yNC4yIDExLTM4LjMgMC0zOS44LTMyLjItNzItNzItNzItMTEuMSAwLTIxLjUgMi41LTMwLjggNi45LTEwLjUgNS0yMy4xIDEuNy0yOS44LTcuOC0yMC4zLTI4LjYtNTMuNy00Ny4xLTkxLjMtNDcuMXoiXX0sR2NyPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImNpcmNsZSIsaWNvbjpbNTEyLDUxMixbMTI4MzA4LDEyODMwOSwxMjg5OTIsMTI4OTkzLDEyODk5NCwxMjg5OTUsMTI4OTk2LDk2NzksOTg5OCw5ODk5LDExMDQ0LDYxNzA4LDYxOTE1XSwiZjExMSIsIk00NjQgMjU2YTIwOCAyMDggMCAxIDAgLTQxNiAwIDIwOCAyMDggMCAxIDAgNDE2IDB6TTAgMjU2YTI1NiAyNTYgMCAxIDEgNTEyIDAgMjU2IDI1NiAwIDEgMSAtNTEyIDB6Il19LFVTZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJmYWNlLWdyaW4tc3F1aW50IixpY29uOls1MTIsNTEyLFsxMjg1MTgsImdyaW4tc3F1aW50Il0sImY1ODUiLCJNNDY0IDI1NmEyMDggMjA4IDAgMSAwIC00MTYgMCAyMDggMjA4IDAgMSAwIDQxNiAwek0wIDI1NmEyNTYgMjU2IDAgMSAxIDUxMiAwIDI1NiAyNTYgMCAxIDEgLTUxMiAwem0zNzIuMiA0Ni4zYzExLjgtMy42IDIzLjcgNi4xIDE5LjYgMTcuOC0xOS44IDU1LjktNzMuMSA5Ni0xMzUuOCA5Ni02Mi43IDAtMTE2LTQwLTEzNS44LTk1LjktNC4xLTExLjYgNy44LTIxLjQgMTkuNi0xNy44IDM0LjcgMTAuNiA3NC4yIDE2LjUgMTE2LjEgMTYuNSA0MiAwIDgxLjUtNiAxMTYuMy0xNi42em0tMjQ5LjYtMTQzYzQuNS02LjggMTMuMy05LjIgMjAuNi01LjVsNzkuNiA0MGM1LjQgMi43IDguOCA4LjIgOC44IDE0LjNzLTMuNCAxMS42LTguOCAxNC4zbC03OS42IDQwYy03LjMgMy42LTE2LjEgMS4zLTIwLjYtNS41cy0zLjEtMTUuOSAzLjEtMjEuMUwxNTkgMjA4IDEyNS44IDE4MC4zYy02LjItNS4yLTcuNi0xNC4zLTMuMS0yMS4xem0yNjMuNiAyMS4xTDM1MyAyMDggMzg2LjIgMjM1LjdjNi4yIDUuMiA3LjYgMTQuMyAzLjEgMjEuMXMtMTMuMyA5LjItMjAuNiA1LjVsLTc5LjYtNDBjLTUuNC0yLjctOC44LTguMi04LjgtMTQuM3MzLjQtMTEuNiA4LjgtMTQuM2w3OS42LTQwYzcuMy0zLjYgMTYuMS0xLjMgMjAuNiA1LjVzMy4xIDE1LjktMy4xIDIxLjF6Il19LFljcj1VU2UsV1NlPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImNpcmNsZS11c2VyIixpY29uOls1MTIsNTEyLFs2MjE0MiwidXNlci1jaXJjbGUiXSwiZjJiZCIsIk00MDYuNSAzOTkuNkMzODcuNCAzNTIuOSAzNDEuNSAzMjAgMjg4IDMyMGwtNjQgMGMtNTMuNSAwLTk5LjQgMzIuOS0xMTguNSA3OS42LTM1LjYtMzcuMy01Ny41LTg3LjktNTcuNS0xNDMuNiAwLTExNC45IDkzLjEtMjA4IDIwOC0yMDhzMjA4IDkzLjEgMjA4IDIwOGMwIDU1LjctMjEuOSAxMDYuMi01Ny41IDE0My42em0tNDAuMSAzMi43QzMzNC40IDQ1Mi40IDI5Ni42IDQ2NCAyNTYgNDY0cy03OC40LTExLjYtMTEwLjUtMzEuN2M3LjMtMzYuNyAzOS43LTY0LjMgNzguNS02NC4zbDY0IDBjMzguOCAwIDcxLjIgMjcuNiA3OC41IDY0LjN6TTI1NiA1MTJhMjU2IDI1NiAwIDEgMCAwLTUxMiAyNTYgMjU2IDAgMSAwIDAgNTEyem0wLTI3MmE0MCA0MCAwIDEgMSAwLTgwIDQwIDQwIDAgMSAxIDAgODB6bS04OC00MGE4OCA4OCAwIDEgMCAxNzYgMCA4OCA4OCAwIDEgMCAtMTc2IDB6Il19LFpjcj1XU2UsR1NlPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6InJlY3RhbmdsZS1saXN0IixpY29uOls1MTIsNTEyLFsibGlzdC1hbHQiXSwiZjAyMiIsIk02NCAxMTJjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDI1NmMwIDguOCA3LjIgMTYgMTYgMTZsMzg0IDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMjU2YzAtOC44LTcuMi0xNi0xNi0xNkw2NCAxMTJ6TTAgMTI4QzAgOTIuNyAyOC43IDY0IDY0IDY0bDM4NCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMjU2YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDQ0OGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCAxMjh6TTE2MCAzMjBhMzIgMzIgMCAxIDEgLTY0IDAgMzIgMzIgMCAxIDEgNjQgMHptLTMyLTk2YTMyIDMyIDAgMSAxIDAtNjQgMzIgMzIgMCAxIDEgMCA2NHptMTA0LTU2bDE2MCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC0xNjAgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNHptMCAxMjhsMTYwIDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTE2MCAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0eiJdfSxYY3I9R1NlLFlTZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJoYW5kIixpY29uOls1MTIsNTEyLFsxMjkzMDYsOTk5NSwiaGFuZC1wYXBlciJdLCJmMjU2IiwiTTI1Ni41IDBjLTI1LjMgMC00Ny4yIDE0LjctNTcuNiAzNi03LTIuNi0xNC41LTQtMjIuNC00LTM1LjMgMC02NCAyOC43LTY0IDY0bDAgMTY1LjUtMi43LTIuN2MtMjUtMjUtNjUuNS0yNS05MC41IDBzLTI1IDY1LjUgMCA5MC41TDEwNyA0MzdjNDggNDggMTEzLjEgNzUgMTgxIDc1bDE2LjUgMGMxLjUgMCAzLS4xIDQuNS0uNCA5MS43LTYuMiAxNjUtNzkuNCAxNzEuMS0xNzEuMSAuMy0xLjUgLjQtMyAuNC00LjVsMC0xNzZjMC0zNS4zLTI4LjctNjQtNjQtNjQtNS41IDAtMTAuOSAuNy0xNiAybDAtMmMwLTM1LjMtMjguNy02NC02NC02NC03LjkgMC0xNS40IDEuNC0yMi40IDQtMTAuNC0yMS4zLTMyLjMtMzYtNTcuNi0zNnptLTE2IDk2LjFsMC0uMSAwLTMyYzAtOC44IDcuMi0xNiAxNi0xNnMxNiA3LjIgMTYgMTZsMCAxNjhjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTEzNmMwLTguOCA3LjItMTYgMTYtMTZzMTYgNy4yIDE2IDE2bDAgMTM2YzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC03MmMwLTguOCA3LjItMTYgMTYtMTZzMTYgNy4yIDE2IDE2bDAgMTcyLjljLS4xIC42LS4xIDEuMy0uMiAxLjktMy40IDY5LjctNTkuMyAxMjUuNi0xMjkgMTI5LS42IDAtMS4zIC4xLTEuOSAuMkwyODggNDY0QzIzMi45IDQ2NCAxODAgNDQyLjEgMTQxIDQwMy4xTDUzLjIgMzE1LjNjLTYuMi02LjItNi4yLTE2LjQgMC0yMi42czE2LjQtNi4yIDIyLjYgMGw0My43IDQzLjdjNi45IDYuOSAxNy4yIDguOSAyNi4yIDUuMnMxNC44LTEyLjUgMTQuOC0yMi4ybDAtMjIzLjRjMC04LjggNy4yLTE2IDE2LTE2IDguOCAwIDE2IDcuMSAxNiAxNS45bDAgMTM2LjFjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTEzNS45eiJdfSxRY3I9WVNlLEtjcj17cHJlZml4OiJmYXIiLGljb25OYW1lOiJ0aHVtYnMtdXAiLGljb246WzUxMiw1MTIsWzEyODA3Nyw2MTU3NV0sImYxNjQiLCJNMTcxLjUgMzguOEMxOTIuMyA0IDIzNi41LTEwIDI3NCA3LjZsNy4yIDMuOEMzMTYgMzIuMyAzMzAgNzYuNSAzMTIuNCAxMTRsMCAwLTE0LjEgMzAgMTA5LjcgMCA3LjQgLjRjMzYuMyAzLjcgNjQuNiAzNC40IDY0LjYgNzEuNiAwIDEzLjItMy42IDI1LjQtOS44IDM2IDYuMSAxMC42IDkuNyAyMi44IDkuOCAzNiAwIDE4LjMtNi45IDM0LjgtMTggNDcuNSAxLjMgNS4zIDIgMTAuOCAyIDE2LjUgMCAyNS4xLTEyLjkgNDctMzIuMiA1OS45LTEuOSAzNS41LTI5LjQgNjQuMi02NC40IDY3LjdsLTcuNCAuNC0xMDQuMSAwYy0xOCAwLTM1LjktMy40LTUyLjYtOS45bC03LjEtMy0uNy0uMy02LjYtMy4yLS43LS4zLTEyLjItNi41Yy0xMi4zLTYuNS0yMy4zLTE0LjctMzIuOS0yNC4xLTQuMSAyNi45LTI3LjMgNDcuNC01NS4zIDQ3LjRsLTMyIDBjLTMwLjkgMC01Ni0yNS4xLTU2LTU2TDAgMjAwYzAtMzAuOSAyNS4xLTU2IDU2LTU2bDMyIDBjMTAuOCAwIDIwLjkgMy4xIDI5LjUgOC41bDUwLjEtMTA2LjUgLjYtMS4yIDIuNy01IC42LS45ek01NiAxOTJjLTQuNCAwLTggMy42LTggOGwwIDIyNGMwIDQuNCAzLjYgOCA4IDhsMzIgMGM0LjQgMCA4LTMuNiA4LThsMC0yMjRjMC00LjQtMy42LTgtOC04bC0zMiAwek0yNTMuNiA1MWMtMTQuOC02LjktMzIuMy0xLjYtNDAuNyAxMmwtMi4yIDQtNTYuOCAxMjAuOWMtMy41IDcuNS01LjUgMTUuNS02IDIzLjdsLS4xIDQuMiAwIDExMi45IC4yIDcuOWMyLjQgMzIuNyAyMS40IDYyLjEgNTAuNyA3Ny43bDExLjUgNi4xIDYuMyAzLjFjMTIuNCA1LjYgMjUuOCA4LjUgMzkuNCA4LjVsMTA0LjEgMCAyLjQtLjFjMTIuMS0xLjIgMjEuNi0xMS41IDIxLjYtMjMuOWwtLjItMi42Yy0uMS0uOS0uMi0xLjctLjQtMi42LTIuNy0xMi4xIDQuMy0yNC4yIDE2LTI4IDkuNy0zLjEgMTYuNi0xMi4yIDE2LjYtMjIuOCAwLTQuMy0xLjEtOC4yLTMuMS0xMS44LTYuMy0xMS4xLTIuOC0yNS4yIDgtMzIgNi44LTQuMyAxMS4yLTExLjggMTEuMi0yMC4yIDAtNy4xLTMuMS0xMy41LTguMi0xOC01LjItNC42LTguMi0xMS4xLTguMi0xOHMzLTEzLjQgOC4yLTE4YzUuMS00LjUgOC4yLTEwLjkgOC4yLTE4bC0uMS0yLjRjLTEuMS0xMS4zLTEwLjEtMjAuMy0yMS40LTIxLjRsLTIuNC0uMS0xNDcuNSAwYy04LjIgMC0xNS44LTQuMi0yMC4yLTExLjEtNC40LTYuOS01LTE1LjctMS41LTIzLjFMMjY5IDkzLjZjNy0xNSAxLjQtMzIuNy0xMi41LTQxTDI1My42IDUxeiJdfSxKY3I9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiYnVpbGRpbmciLGljb246WzM4NCw1MTIsWzEyNzk3MCw2MTY4N10sImYxYWQiLCJNNjQgNDhjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDM4NGMwIDguOCA3LjIgMTYgMTYgMTZsODAgMCAwLTgwYzAtMTcuNyAxNC4zLTMyIDMyLTMybDMyIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCA4MCA4MCAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTM4NGMwLTguOC03LjItMTYtMTYtMTZMNjQgNDh6TTAgNjRDMCAyOC43IDI4LjcgMCA2NCAwTDMyMCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMzg0YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDUxMmMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCA2NHptOTYgNDhjMC04LjggNy4yLTE2IDE2LTE2bDMyIDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMzJjMCA4LjgtNy4yIDE2LTE2IDE2bC0zMiAwYy04LjggMC0xNi03LjItMTYtMTZsMC0zMnpNMjQwIDk2bDMyIDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMzJjMCA4LjgtNy4yIDE2LTE2IDE2bC0zMiAwYy04LjggMC0xNi03LjItMTYtMTZsMC0zMmMwLTguOCA3LjItMTYgMTYtMTZ6TTk2IDI0MGMwLTguOCA3LjItMTYgMTYtMTZsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyem0xNDQtMTZsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyYzAtOC44IDcuMi0xNiAxNi0xNnoiXX0sZTByPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImNoZXNzLXJvb2siLGljb246WzM4NCw1MTIsWzk4MjBdLCJmNDQ3IiwiTTM1MiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMTM4LjdjMCAxMy44LTQuNSAyNy4zLTEyLjggMzguNGwtMzUuMiA0Ni45IDAgMTEyIDQwLjggNjguMWM0LjcgNy44IDcuMiAxNi43IDcuMiAyNS44IDAgMjcuNy0yMi40IDUwLjEtNTAuMSA1MC4xTDUwLjEgNTEyYy0yNy43IDAtNTAuMS0yMi40LTUwLjEtNTAuMSAwLTkuMSAyLjUtMTggNy4yLTI1LjhMNDggMzY4IDQ4IDI1NiAxMi44IDIwOS4xQzQuNSAxOTggMCAxODQuNSAwIDE3MC43TDAgMzJDMCAxNC4zIDE0LjMgMCAzMiAwTDM1MiAwek00OC4zIDQ2MC44bC0uMyAxLjFjMCAxLjIgMSAyLjEgMi4xIDIuMWwyODMuOCAwYzEuMiAwIDIuMS0xIDIuMS0yLjFsLS4zLTEuMS0zNi41LTYwLjgtMjE0LjQgMC0zNi41IDYwLjh6TTQ4IDE3MC43YzAgMi42IC42IDUuMSAxLjggNy40bDEuNCAyLjIgMCAwIDM1LjIgNDYuOSA5LjYgMTIuOCAwIDExMiAxOTIgMCAwLTExMiA5LjYtMTIuOCAzNS4yLTQ2LjkgMCAwIDEuNC0yLjJjMS4yLTIuMyAxLjgtNC44IDEuOC03LjRsMC0xMjIuNy02NCAwIDAgMjRjMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjRsMC0yNC02NCAwIDAgMjRjMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjRsMC0yNC02NCAwIDAgMTIyLjd6Il19LFpTZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJjaXJjbGUtcXVlc3Rpb24iLGljb246WzUxMiw1MTIsWzYyMTA4LCJxdWVzdGlvbi1jaXJjbGUiXSwiZjA1OSIsIk00NjQgMjU2YTIwOCAyMDggMCAxIDAgLTQxNiAwIDIwOCAyMDggMCAxIDAgNDE2IDB6TTAgMjU2YTI1NiAyNTYgMCAxIDEgNTEyIDAgMjU2IDI1NiAwIDEgMSAtNTEyIDB6bTI1Ni04MGMtMTcuNyAwLTMyIDE0LjMtMzIgMzIgMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjRjMC00NC4yIDM1LjgtODAgODAtODBzODAgMzUuOCA4MCA4MGMwIDQ3LjItMzYgNjcuMi01NiA3NC41bDAgMy44YzAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0bDAtOC4xYzAtMjAuNSAxNC44LTM1LjIgMzAuMS00MC4yIDYuNC0yLjEgMTMuMi01LjUgMTguMi0xMC4zIDQuMy00LjIgNy43LTEwIDcuNy0xOS42IDAtMTcuNy0xNC4zLTMyLTMyLTMyek0yMjQgMzY4YTMyIDMyIDAgMSAxIDY0IDAgMzIgMzIgMCAxIDEgLTY0IDB6Il19LHQwcj1aU2UscjByPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImZpbGUiLGljb246WzM4NCw1MTIsWzEyODE5NiwxMjg0NTksNjE0NjJdLCJmMTViIiwiTTE3NiA0OEw2NCA0OGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMzg0YzAgOC44IDcuMiAxNiAxNiAxNmwyNTYgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0yNDAtODggMGMtMzkuOCAwLTcyLTMyLjItNzItNzJsMC04OHpNMzE2LjEgMTYwTDIyNCA2Ny45IDIyNCAxMzZjMCAxMy4zIDEwLjcgMjQgMjQgMjRsNjguMSAwek0wIDY0QzAgMjguNyAyOC43IDAgNjQgMEwxOTcuNSAwYzE3IDAgMzMuMyA2LjcgNDUuMyAxOC43TDM2NS4zIDE0MS4zYzEyIDEyIDE4LjcgMjguMyAxOC43IDQ1LjNMMzg0IDQ0OGMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA1MTJjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgNjR6Il19LFhTZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJmYWNlLXNhZC1jcnkiLGljb246WzUxMiw1MTIsWzEyODU1Nywic2FkLWNyeSJdLCJmNWIzIiwiTTQwMCA0MDYuMUw0MDAgMjg4YzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0bDAgMTUyLjZjLTI4LjcgMTUtNjEuNCAyMy40LTk2IDIzLjRzLTY3LjMtOC41LTk2LTIzLjRMMTYwIDI4OGMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGwwIDExOC4xQzcyLjYgMzY4LjIgNDggMzE1IDQ4IDI1NiA0OCAxNDEuMSAxNDEuMSA0OCAyNTYgNDhzMjA4IDkzLjEgMjA4IDIwOGMwIDU5LTI0LjYgMTEyLjItNjQgMTUwLjF6TTI1NiA1MTJhMjU2IDI1NiAwIDEgMCAwLTUxMiAyNTYgMjU2IDAgMSAwIDAgNTEyek0xNTIgMTk2bDE2IDBjMTEgMCAyMCA5IDIwIDIwczkgMjAgMjAgMjAgMjAtOSAyMC0yMGMwLTMzLjEtMjYuOS02MC02MC02MGwtMTYgMGMtMzMuMSAwLTYwIDI2LjktNjAgNjAgMCAxMSA5IDIwIDIwIDIwczIwLTkgMjAtMjAgOS0yMCAyMC0yMHptMTcyIDIwYzAtMTEgOS0yMCAyMC0yMGwxNiAwYzExIDAgMjAgOSAyMCAyMHM5IDIwIDIwIDIwIDIwLTkgMjAtMjBjMC0zMy4xLTI2LjktNjAtNjAtNjBsLTE2IDBjLTMzLjEgMC02MCAyNi45LTYwIDYwIDAgMTEgOSAyMCAyMCAyMHMyMC05IDIwLTIwek0yMDggMzM2bDAgMzJjMCAyNi41IDIxLjUgNDggNDggNDhzNDgtMjEuNSA0OC00OGwwLTMyYzAtMjYuNS0yMS41LTQ4LTQ4LTQ4cy00OCAyMS41LTQ4IDQ4eiJdfSxhMHI9WFNlLGkwcj17cHJlZml4OiJmYXIiLGljb25OYW1lOiJjYWxlbmRhci1taW51cyIsaWNvbjpbNDQ4LDUxMixbXSwiZjI3MiIsIk0xMjAgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNGwwIDQwIDE2MCAwIDAtNDBjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNGwwIDQwIDMyIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAyODhjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDEyOEMwIDkyLjcgMjguNyA2NCA2NCA2NGwzMiAwIDAtNDBjMC0xMy4zIDEwLjctMjQgMjQtMjR6bTAgMTEybC01NiAwYy04LjggMC0xNiA3LjItMTYgMTZsMCAyODhjMCA4LjggNy4yIDE2IDE2IDE2bDMyMCAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTI4OGMwLTguOC03LjItMTYtMTYtMTZsLTI2NCAwem0zMiAxMzZsMTQ0IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTE0NCAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0eiJdfSxRU2U9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiZmFjZS10aXJlZCIsaWNvbjpbNTEyLDUxMixbMTI4NTU1LCJ0aXJlZCJdLCJmNWM4IiwiTTQ2NCAyNTZhMjA4IDIwOCAwIDEgMCAtNDE2IDAgMjA4IDIwOCAwIDEgMCA0MTYgMHpNMCAyNTZhMjU2IDI1NiAwIDEgMSA1MTIgMCAyNTYgMjU2IDAgMSAxIC01MTIgMHptMTc2LjUgNjQuM0MxOTYuMSAzMDIuMSAyMjMuOCAyODggMjU2IDI4OHM1OS45IDE0LjEgNzkuNSAzMi4zYzE5IDE3LjggMzIuNSA0MS43IDMyLjUgNjMuNyAwIDUuNC0yLjcgMTAuNC03LjIgMTMuNHMtMTAuMiAzLjQtMTUuMiAxLjNsLTE3LjItNy41Yy0yMi44LTEwLTQ3LjUtMTUuMS03Mi40LTE1LjFzLTQ5LjYgNS4yLTcyLjQgMTUuMWwtMTcuMiA3LjVjLTQuOSAyLjItMTAuNyAxLjctMTUuMi0xLjNzLTcuMi04LTcuMi0xMy40YzAtMjIgMTMuNS00NS45IDMyLjUtNjMuN3pNMTIyLjYgMTU5LjJjNC41LTYuOCAxMy4zLTkuMiAyMC42LTUuNWw3OS42IDQwYzUuNCAyLjcgOC44IDguMiA4LjggMTQuM3MtMy40IDExLjYtOC44IDE0LjNsLTc5LjYgNDBjLTcuMyAzLjYtMTYuMSAxLjMtMjAuNi01LjVzLTMuMS0xNS45IDMuMS0yMS4xTDE1OSAyMDggMTI1LjggMTgwLjNjLTYuMi01LjItNy42LTE0LjMtMy4xLTIxLjF6bTI2My42IDIxLjFMMzUzIDIwOCAzODYuMiAyMzUuN2M2LjIgNS4yIDcuNiAxNC4zIDMuMSAyMS4xcy0xMy4zIDkuMi0yMC42IDUuNWwtNzkuNi00MGMtNS40LTIuNy04LjgtOC4yLTguOC0xNC4zczMuNC0xMS42IDguOC0xNC4zbDc5LjYtNDBjNy4zLTMuNiAxNi4xLTEuMyAyMC42IDUuNXMzLjEgMTUuOS0zLjEgMjEuMXoiXX0sbzByPVFTZSxuMHI9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiaGFuZC1wb2ludC1yaWdodCIsaWNvbjpbNTEyLDUxMixbXSwiZjBhNCIsIk00NDggMTI4bC0xNzcuNiAwYzEgNS4yIDEuNiAxMC41IDEuNiAxNmwwIDE2IDE3NiAwYzguOCAwIDE2LTcuMiAxNi0xNnMtNy4yLTE2LTE2LTE2ek0yMjQgMTQ0YzAtMTcuNy0xNC4zLTMyLTMyLTMybC0yNCAwYy02Ni4zIDAtMTIwIDUzLjctMTIwIDEyMGwwIDQ4YzAgNTIuNSAzMy43IDk3LjEgODAuNyAxMTMuNC0uNS0zLjEtLjctNi4yLS43LTkuNCAwLTIwIDkuMi0zNy45IDIzLjYtNDkuNy00LjktOS03LjYtMTkuNC03LjYtMzAuMyAwLTE1LjEgNS4zLTI5IDE0LTQwLTguOC0xMS0xNC0yNC45LTE0LTQwbDAtNDBjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNGwwIDQwYzAgOC44IDcuMiAxNiAxNiAxNnMxNi03LjIgMTYtMTZsMC04MHpNMTkyIDY0bDAgMGMxOCAwIDM0LjYgNiA0OCAxNmwyMDggMGMzNS4zIDAgNjQgMjguNyA2NCA2NHMtMjguNyA2NC02NCA2NGwtODIgMGMxLjMgNS4xIDIgMTAuNSAyIDE2IDAgMjUuMy0xNC43IDQ3LjItMzYgNTcuNiAyLjYgNyA0IDE0LjUgNCAyMi40IDAgMjAtOS4yIDM3LjktMjMuNiA0OS43IDQuOSA5IDcuNiAxOS40IDcuNiAzMC4zIDAgMzUuMy0yOC43IDY0LTY0IDY0bC04OCAwQzc1LjIgNDQ4IDAgMzcyLjggMCAyODBsMC00OEMwIDEzOS4yIDc1LjIgNjQgMTY4IDY0bDI0IDB6bTY0IDMzNmM4LjggMCAxNi03LjIgMTYtMTZzLTcuMi0xNi0xNi0xNmwtNjQgMGMtOC44IDAtMTYgNy4yLTE2IDE2czcuMiAxNiAxNiAxNmw2NCAwem0xNi0xNzZjMCA1LjUtLjcgMTAuOS0yIDE2bDM0IDBjOC44IDAgMTYtNy4yIDE2LTE2cy03LjItMTYtMTYtMTZsLTMyIDAgMCAxNnptLTI0IDY0bC00MCAwYy04LjggMC0xNiA3LjItMTYgMTZzNy4yIDE2IDE2IDE2bDY0IDBjOC44IDAgMTYtNy4yIDE2LTE2cy03LjItMTYtMTYtMTZsLTI0IDB6Il19LEtTZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJjaXJjbGUtdXAiLGljb246WzUxMiw1MTIsWzYxNDY3LCJhcnJvdy1hbHQtY2lyY2xlLXVwIl0sImYzNWIiLCJNMjU2IDQ4YTIwOCAyMDggMCAxIDEgMCA0MTYgMjA4IDIwOCAwIDEgMSAwLTQxNnptMCA0NjRhMjU2IDI1NiAwIDEgMCAwLTUxMiAyNTYgMjU2IDAgMSAwIDAgNTEyem0xMS4zLTM4Ny4zYy02LjItNi4yLTE2LjQtNi4yLTIyLjYgMGwtMTA0IDEwNGMtNC42IDQuNi01LjkgMTEuNS0zLjUgMTcuNHM4LjMgOS45IDE0LjggOS45bDcyIDAgMCAxMDRjMCAxMy4zIDEwLjcgMjQgMjQgMjRsMTYgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNGwwLTEwNCA3MiAwYzYuNSAwIDEyLjMtMy45IDE0LjgtOS45czEuMS0xMi45LTMuNS0xNy40bC0xMDQtMTA0eiJdfSxzMHI9S1NlLGwwcj17cHJlZml4OiJmYXIiLGljb25OYW1lOiJoYW5kLXNjaXNzb3JzIixpY29uOls1MTIsNTEyLFtdLCJmMjU3IiwiTS4yIDI3Ni4zYy0xLjItMzUuMyAyNi40LTY1IDYxLjctNjYuMmwzLjMtLjEtOC4yLTEuOEMyMi41IDIwMC41IC43IDE2Ni4zIDguMyAxMzEuOFM1MC4yIDc1LjUgODQuNyA4My4ybDE3MyAzOC4zYzIuMy0yLjkgNC42LTUuNyA3LjEtOC41bDE4LjQtMjAuM0MyOTkuOSA3NC41IDMyMy41IDY0IDM0OC4zIDY0bDEwLjIgMGM1NC4xIDAgMTA0LjEgMjguNyAxMzEuMyA3NS40bDEuNSAyLjZjMTMuNiAyMy4yIDIwLjcgNDkuNyAyMC43IDc2LjZMNTEyIDM0NGMwIDY2LjMtNTMuNyAxMjAtMTIwIDEyMGwtMTA0IDBjLTM1LjMgMC02NC0yOC43LTY0LTY0IDAtMi44IC4yLTUuNiAuNS04LjMtMTkuNC0xMS0zMi41LTMxLjgtMzIuNS01NS43IDAtLjggMC0xLjYgMC0yLjRMNjYuNCAzMzhjLTM1LjMgMS4yLTY1LTI2LjQtNjYuMi02MS43em02My40LTE4LjJjLTguOCAuMy0xNS43IDcuNy0xNS40IDE2LjZzNy43IDE1LjcgMTYuNSAxNS40bDE2MS41LTUuNmM5LjgtLjMgMTguNyA1LjMgMjIuNyAxNC4yczIuMiAxOS4zLTQuNSAyNi40Yy0yLjggMi45LTQuNCA2LjctNC40IDExIDAgOC44IDcuMiAxNiAxNiAxNiA5LjEgMCAxNy40IDUuMSAyMS41IDEzLjNzMy4yIDE3LjktMi4zIDI1LjFjLTIgMi43LTMuMiA2LTMuMiA5LjYgMCA4LjggNy4yIDE2IDE2IDE2bDEwNCAwYzM5LjggMCA3Mi0zMi4yIDcyLTcybDAtMTI1LjRjMC0xOC40LTQuOS0zNi41LTE0LjItNTIuNGwtMS41LTIuNmMtMTguNi0zMi01Mi44LTUxLjYtODkuOC01MS42bC0xMC4yIDBjLTExLjMgMC0yMiA0LjgtMjkuNiAxMy4xbDAgMC0xOC40IDIwLjNjLS42IC42LTEuMSAxLjMtMS43IDEuOWw1NyAxMy4yYzguNiAyIDE0IDEwLjYgMTIgMTkuMnMtMTAuNiAxNC0xOS4yIDEyTDI2Mi44IDE3MS44IDc0LjMgMTMwYy04LjYtMS45LTE3LjIgMy41LTE5LjEgMTIuMnMzLjUgMTcuMiAxMi4yIDE5LjFsMTg3LjUgNDEuNmMxMC4yIDIuMyAxNy44IDEwLjkgMTguNyAyMS40bC4xIDFjLjYgNi42LTEuNSAxMy4xLTUuOCAxOC4xcy0xMC42IDcuOS0xNy4yIDguMkw2My42IDI1OC4xeiJdfSxjMHI9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiZ2VtIixpY29uOls1MTIsNTEyLFsxMjgxNDJdLCJmM2E1IiwiTTE2OC41IDcybDg3LjUgOTMgODcuNS05My0xNzUgMHpNMzgzLjkgOTkuMWwtNzIuMyA3Ni45IDEyOSAwLTU2LjYtNzYuOXptNTAgMTI0LjlMNzguMSAyMjQgMjU2IDQyMC4zIDQzMy45IDIyNHpNNzEuNSAxNzZsMTI5IDAtNzIuMy03Ni45LTU2LjYgNzYuOXptNDM0LjMgNDAuMWwtMjMyIDI1NmMtNC41IDUtMTEgNy45LTE3LjggNy45cy0xMy4yLTIuOS0xNy44LTcuOWwtMjMyLTI1NmMtNy43LTguNS04LjMtMjEuMi0xLjUtMzAuNGwxMTItMTUyYzQuNS02LjEgMTEuNy05LjggMTkuMy05LjhsMjQwIDBjNy42IDAgMTQuOCAzLjYgMTkuMyA5LjhsMTEyIDE1MmM2LjggOS4yIDYuMSAyMS45LTEuNSAzMC40eiJdfSxkdz17cHJlZml4OiJmYXIiLGljb25OYW1lOiJyZWN0YW5nbGUteG1hcmsiLGljb246WzUxMiw1MTIsWzYyMTY0LCJyZWN0YW5nbGUtdGltZXMiLCJ0aW1lcy1yZWN0YW5nbGUiLCJ3aW5kb3ctY2xvc2UiXSwiZjQxMCIsIk02NCAxMTJjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDI1NmMwIDguOCA3LjIgMTYgMTYgMTZsMzg0IDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMjU2YzAtOC44LTcuMi0xNi0xNi0xNkw2NCAxMTJ6TTAgMTI4QzAgOTIuNyAyOC43IDY0IDY0IDY0bDM4NCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMjU2YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDQ0OGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCAxMjh6bTMzNC4xIDQ5LjljOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlsLTQ0LjEgNDQuMSA0NC4xIDQ0LjFjOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlzLTI0LjYgOS40LTMzLjkgMGwtNDQuMS00NC4xLTQ0LjEgNDQuMWMtOS40IDkuNC0yNC42IDkuNC0zMy45IDBzLTkuNC0yNC42IDAtMzMuOWw0NC4xLTQ0LjEtNDQuMS00NC4xYy05LjQtOS40LTkuNC0yNC42IDAtMzMuOXMyNC42LTkuNCAzMy45IDBsNDQuMSA0NC4xIDQ0LjEtNDQuMWM5LjQtOS40IDI0LjYtOS40IDMzLjkgMHoiXX0sZDByPWR3LHUwcj1kdyxmMHI9ZHcsaHc9e3ByZWZpeDoiZmFyIixpY29uTmFtZToidHJhc2gtY2FuIixpY29uOls0NDgsNTEyLFs2MTQ2MCwidHJhc2gtYWx0Il0sImYyZWQiLCJNMTY2LjItMTZjLTEzLjMgMC0yNS4zIDguMy0zMCAyMC44TDEyMCA0OCAyNCA0OEMxMC43IDQ4IDAgNTguNyAwIDcyUzEwLjcgOTYgMjQgOTZsNDAwIDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTk2IDAtMTYuMi00My4yQzMwNy4xLTcuNyAyOTUuMi0xNiAyODEuOC0xNkwxNjYuMi0xNnpNMzIgMTQ0bDAgMzA0YzAgMzUuMyAyOC43IDY0IDY0IDY0bDI1NiAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMzA0LTQ4IDAgMCAzMDRjMCA4LjgtNy4yIDE2LTE2IDE2TDk2IDQ2NGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMzA0LTQ4IDB6bTE2MCA3MmMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGwwIDE3NmMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtMTc2em0xMTIgMGMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGwwIDE3NmMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtMTc2eiJdfSxwMHI9aHcsaDByPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImxpZmUtcmluZyIsaWNvbjpbNTEyLDUxMixbXSwiZjFjZCIsIk0zODUuMSA0MTkuMUMzNDkuNyA0NDcuMiAzMDQuOCA0NjQgMjU2IDQ2NHMtOTMuNy0xNi44LTEyOS4xLTQ0LjlsODAuNC04MC40YzE0LjMgOC40IDMxIDEzLjMgNDguOCAxMy4zczM0LjUtNC44IDQ4LjgtMTMuM2w4MC40IDgwLjR6bTY4LjEgLjJDNDg5LjkgMzc0LjkgNTEyIDMxOC4xIDUxMiAyNTZTNDg5LjkgMTM3LjEgNDUzLjIgOTIuN0w0NjUgODFjOS40LTkuNCA5LjQtMjQuNiAwLTMzLjlzLTI0LjYtOS40LTMzLjkgMEw0MTkuMyA1OC44QzM3NC45IDIyLjEgMzE4LjEgMCAyNTYgMFMxMzcuMSAyMi4xIDkyLjcgNTguOEw4MSA0N2MtOS40LTkuNC0yNC42LTkuNC0zMy45IDBTMzcuNyA3MS42IDQ3IDgxTDU4LjggOTIuN0MyMi4xIDEzNy4xIDAgMTkzLjkgMCAyNTZTMjIuMSAzNzQuOSA1OC44IDQxOS4zTDQ3IDQzMWMtOS40IDkuNC05LjQgMjQuNiAwIDMzLjlzMjQuNiA5LjQgMzMuOSAwbDExLjgtMTEuOEMxMzcuMSA0ODkuOSAxOTMuOSA1MTIgMjU2IDUxMnMxMTguOS0yMi4xIDE2My4zLTU4LjhMNDMxIDQ2NWM5LjQgOS40IDI0LjYgOS40IDMzLjkgMHM5LjQtMjQuNiAwLTMzLjlsLTExLjgtMTEuOHptLTM0LjEtMzQuMWwtODAuNC04MC40YzguNC0xNC4zIDEzLjMtMzEgMTMuMy00OC44cy00LjgtMzQuNS0xMy4zLTQ4LjhsODAuNC04MC40QzQ0Ny4yIDE2Mi4zIDQ2NCAyMDcuMiA0NjQgMjU2cy0xNi44IDkzLjctNDQuOSAxMjkuMXpNMzg1LjEgOTIuOWwtODAuNCA4MC40Yy0xNC4zLTguNC0zMS0xMy4zLTQ4LjgtMTMuM3MtMzQuNSA0LjgtNDguOCAxMy4zTDEyNi45IDkyLjlDMTYyLjMgNjQuOCAyMDcuMiA0OCAyNTYgNDhzOTMuNyAxNi44IDEyOS4xIDQ0Ljl6TTE3My4zIDMwNC44TDkyLjkgMzg1LjFDNjQuOCAzNDkuNyA0OCAzMDQuOCA0OCAyNTZzMTYuOC05My43IDQ0LjktMTI5LjFsODAuNCA4MC40Yy04LjQgMTQuMy0xMy4zIDMxLTEzLjMgNDguOHM0LjggMzQuNSAxMy4zIDQ4Ljh6TTIwOCAyNTZhNDggNDggMCAxIDEgOTYgMCA0OCA0OCAwIDEgMSAtOTYgMHoiXX0sbTByPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImNvcHlyaWdodCIsaWNvbjpbNTEyLDUxMixbMTY5XSwiZjFmOSIsIk0yNTYgNDhhMjA4IDIwOCAwIDEgMSAwIDQxNiAyMDggMjA4IDAgMSAxIDAtNDE2em0wIDQ2NGEyNTYgMjU2IDAgMSAwIDAtNTEyIDI1NiAyNTYgMCAxIDAgMCA1MTJ6TTIwNS4xIDMwNi45Yy0yOC4xLTI4LjEtMjguMS03My43IDAtMTAxLjhzNzMuNy0yOC4xIDEwMS44IDBjOS40IDkuNCAyNC42IDkuNCAzMy45IDBzOS40LTI0LjYgMC0zMy45Yy00Ni45LTQ2LjktMTIyLjgtNDYuOS0xNjkuNyAwcy00Ni45IDEyMi44IDAgMTY5LjcgMTIyLjggNDYuOSAxNjkuNyAwYzkuNC05LjQgOS40LTI0LjYgMC0zMy45cy0yNC42LTkuNC0zMy45IDBjLTI4LjEgMjguMS03My43IDI4LjEtMTAxLjggMHoiXX0sSlNlPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImNpcmNsZS1sZWZ0IixpY29uOls1MTIsNTEyLFs2MTg0MCwiYXJyb3ctYWx0LWNpcmNsZS1sZWZ0Il0sImYzNTkiLCJNNDggMjU2YTIwOCAyMDggMCAxIDEgNDE2IDAgMjA4IDIwOCAwIDEgMSAtNDE2IDB6bTQ2NCAwYTI1NiAyNTYgMCAxIDAgLTUxMiAwIDI1NiAyNTYgMCAxIDAgNTEyIDB6TTEyNC43IDI0NC43Yy02LjIgNi4yLTYuMiAxNi40IDAgMjIuNmwxMDQgMTA0YzQuNiA0LjYgMTEuNSA1LjkgMTcuNCAzLjVzOS45LTguMyA5LjktMTQuOGwwLTcyIDEwNCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0bDAtMTZjMC0xMy4zLTEwLjctMjQtMjQtMjRsLTEwNCAwIDAtNzJjMC02LjUtMy45LTEyLjMtOS45LTE0LjhzLTEyLjktMS4xLTE3LjQgMy41bC0xMDQgMTA0eiJdfSxnMHI9SlNlLHgwcj17cHJlZml4OiJmYXIiLGljb25OYW1lOiJjYWxlbmRhciIsaWNvbjpbNDQ4LDUxMixbMTI4MTk3LDEyODE5OF0sImYxMzMiLCJNMTIwIDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRsMCA0MCAxNjAgMCAwLTQwYzAtMTMuMyAxMC43LTI0IDI0LTI0czI0IDEwLjcgMjQgMjRsMCA0MCAzMiAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMjg4YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDQ4MGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCAxMjhDMCA5Mi43IDI4LjcgNjQgNjQgNjRsMzIgMCAwLTQwYzAtMTMuMyAxMC43LTI0IDI0LTI0em0wIDExMmwtNTYgMGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgNDggMzUyIDAgMC00OGMwLTguOC03LjItMTYtMTYtMTZsLTI2NCAwek00OCAyMjRsMCAxOTJjMCA4LjggNy4yIDE2IDE2IDE2bDMyMCAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTE5Mi0zNTIgMHoiXX0sZXplPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImZhY2UtZnJvd24tb3BlbiIsaWNvbjpbNTEyLDUxMixbMTI4NTUwLCJmcm93bi1vcGVuIl0sImY1N2EiLCJNNDY0IDI1NmEyMDggMjA4IDAgMSAwIC00MTYgMCAyMDggMjA4IDAgMSAwIDQxNiAwek0wIDI1NmEyNTYgMjU2IDAgMSAxIDUxMiAwIDI1NiAyNTYgMCAxIDEgLTUxMiAwek0xODIuNCAzODIuNWMtMTIuNCA1LjItMjYuNS00LjEtMjEuMS0xNi40IDE2LTM2LjYgNTIuNC02Mi4xIDk0LjgtNjIuMXM3OC44IDI1LjYgOTQuOCA2Mi4xYzUuNCAxMi4zLTguNyAyMS42LTIxLjEgMTYuNC0yMi40LTkuNS00Ny40LTE0LjgtNzMuNy0xNC44cy01MS4zIDUuMy03My43IDE0Ljh6TTE0NCAyMDhhMzIgMzIgMCAxIDEgNjQgMCAzMiAzMiAwIDEgMSAtNjQgMHptMTkyLTMyYTMyIDMyIDAgMSAxIDAgNjQgMzIgMzIgMCAxIDEgMC02NHoiXX0sYjByPWV6ZSx0emU9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiY2hhcnQtYmFyIixpY29uOls1MTIsNTEyLFsiYmFyLWNoYXJ0Il0sImYwODAiLCJNNDggNTZjMC0xMy4zLTEwLjctMjQtMjQtMjRTMCA0Mi43IDAgNTZMMCA0MDBjMCA0NC4yIDM1LjggODAgODAgODBsNDA4IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRMODAgNDMyYy0xNy43IDAtMzItMTQuMy0zMi0zMkw0OCA1NnptMTA0IDcybDIwOCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0TDE1MiA4MGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNHptMCA2NGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwxNDQgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtMTQ0IDB6bTAgMTEyYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDI3MiAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC0yNzIgMHoiXX0sdjByPXR6ZSx1dz17cHJlZml4OiJmYXIiLGljb25OYW1lOiJob3VzZSIsaWNvbjpbNTEyLDUxMixbMTI3OTY4LDYzNDk4LDYzNTAwLCJob21lIiwiaG9tZS1hbHQiLCJob21lLWxnLWFsdCJdLCJmMDE1IiwiTTI0MCA2LjFjOS4xLTguMiAyMi45LTguMiAzMiAwbDIzMiAyMDhjOS45IDguOCAxMC43IDI0IDEuOCAzMy45cy0yNCAxMC43LTMzLjkgMS44bC04LTcuMiAwIDIwNS4zYzAgMzUuMy0yOC43IDY0LTY0IDY0bC0yODggMGMtMzUuMyAwLTY0LTI4LjctNjQtNjRsMC0yMDUuMy04IDcuMmMtOS45IDguOC0yNSA4LTMzLjktMS44cy04LTI1IDEuOC0zMy45TDI0MCA2LjF6bTE2IDUwLjFMOTYgMTk5LjcgOTYgNDQ4YzAgOC44IDcuMiAxNiAxNiAxNmw0OCAwIDAtMTA0YzAtMzkuOCAzMi4yLTcyIDcyLTcybDQ4IDBjMzkuOCAwIDcyIDMyLjIgNzIgNzJsMCAxMDQgNDggMGM4LjggMCAxNi03LjIgMTYtMTZsMC0yNDguMy0xNjAtMTQzLjR6TTIwOCA0NjRsOTYgMCAwLTEwNGMwLTEzLjMtMTAuNy0yNC0yNC0yNGwtNDggMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRsMCAxMDR6Il19LHkwcj11dyx3MHI9dXcsTTByPXV3LHJ6ZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJmYWNlLWZyb3duIixpY29uOls1MTIsNTEyLFs5Nzg1LCJmcm93biJdLCJmMTE5IiwiTTQ2NCAyNTZhMjA4IDIwOCAwIDEgMCAtNDE2IDAgMjA4IDIwOCAwIDEgMCA0MTYgMHpNMCAyNTZhMjU2IDI1NiAwIDEgMSA1MTIgMCAyNTYgMjU2IDAgMSAxIC01MTIgMHpNMzM0LjcgMzg0LjZDMzE5LjcgMzY5IDI5My42IDM1MiAyNTYgMzUycy02My43IDE3LTc4LjcgMzIuNmMtOS4yIDkuNi0yNC40IDkuOS0zMy45IC43cy05LjktMjQuNC0uNy0zMy45YzIyLjEtMjMgNjAtNDcuNCAxMTMuMy00Ny40czkxLjIgMjQuNCAxMTMuMyA0Ny40YzkuMiA5LjYgOC45IDI0LjgtLjcgMzMuOXMtMjQuOCA4LjktMzMuOS0uN3pNMTQ0IDIwOGEzMiAzMiAwIDEgMSA2NCAwIDMyIDMyIDAgMSAxIC02NCAwem0xOTItMzJhMzIgMzIgMCAxIDEgMCA2NCAzMiAzMiAwIDEgMSAwLTY0eiJdfSxrMHI9cnplLFpzZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJ1c2VyIixpY29uOls0NDgsNTEyLFsxMjgxMDAsNjIxNDQsNjI0NzAsInVzZXItYWx0IiwidXNlci1sYXJnZSJdLCJmMDA3IiwiTTE0NCAxMjhhODAgODAgMCAxIDEgMTYwIDAgODAgODAgMCAxIDEgLTE2MCAwem0yMDggMGExMjggMTI4IDAgMSAwIC0yNTYgMCAxMjggMTI4IDAgMSAwIDI1NiAwek00OCA0ODBjMC03MC43IDU3LjMtMTI4IDEyOC0xMjhsOTYgMGM3MC43IDAgMTI4IDU3LjMgMTI4IDEyOGwwIDhjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLThjMC05Ny4yLTc4LjgtMTc2LTE3Ni0xNzZsLTk2IDBDNzguOCAzMDQgMCAzODIuOCAwIDQ4MGwwIDhjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTh6Il19LFMwcj1ac2UsejByPVpzZSxDMHI9e3ByZWZpeDoiZmFyIixpY29uTmFtZToic25vd2ZsYWtlIixpY29uOls1MTIsNTEyLFsxMDA1MiwxMDA1NF0sImYyZGMiLCJNMjgwLjEtOGMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGwwIDc4LjEtMjMtMjNjLTkuNC05LjQtMjQuNi05LjQtMzMuOSAwcy05LjQgMjQuNiAwIDMzLjlsNTcgNTcgMCA3Ni41LTY2LjItMzguMi0yMC45LTc3LjhjLTMuNC0xMi44LTE2LjYtMjAuNC0yOS40LTE3Uzk1LjIgOTggOTguNyAxMTAuOGw4LjQgMzEuNS02Ny42LTM5QzI4IDk2LjYgMTMuMyAxMDAuNSA2LjcgMTEyUzQgMTM4LjIgMTUuNSAxNDQuOGw2Ny42IDM5LTMxLjUgOC40Yy0xMi44IDMuNC0yMC40IDE2LjYtMTcgMjkuNHMxNi42IDIwLjQgMjkuNCAxN2w3Ny44LTIwLjkgNjYuMiAzOC4yLTY2LjIgMzguMi03Ny44LTIwLjljLTEyLjgtMy40LTI2IDQuMi0yOS40IDE3czQuMiAyNiAxNyAyOS40bDMxLjUgOC40LTY3LjYgMzlDNCAzNzMuOCAuMSAzODguNSA2LjcgNDAwczIxLjMgMTUuNCAzMi44IDguOGw2Ny42LTM5LTguNCAzMS41Yy0zLjQgMTIuOCA0LjIgMjYgMTcgMjkuNHMyNi00LjIgMjkuNC0xN2wyMC45LTc3LjggNjYuMi0zOC4yIDAgNzYuNS01NyA1N2MtOS40IDkuNC05LjQgMjQuNiAwIDMzLjlzMjQuNiA5LjQgMzMuOSAwbDIzLTIzIDAgNzguMWMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtNzguMSAyMyAyM2M5LjQgOS40IDI0LjYgOS40IDMzLjkgMHM5LjQtMjQuNiAwLTMzLjlsLTU3LTU3IDAtNzYuNSA2Ni4yIDM4LjIgMjAuOSA3Ny44YzMuNCAxMi44IDE2LjYgMjAuNCAyOS40IDE3czIwLjQtMTYuNiAxNy0yOS40bC04LjQtMzEuNSA2Ny42IDM5YzExLjUgNi42IDI2LjIgMi43IDMyLjgtOC44czIuNy0yNi4yLTguOC0zMi44bC02Ny42LTM5IDMxLjUtOC40YzEyLjgtMy40IDIwLjQtMTYuNiAxNy0yOS40cy0xNi42LTIwLjQtMjkuNC0xN2wtNzcuOCAyMC45LTY2LjItMzguMiA2Ni4yLTM4LjIgNzcuOCAyMC45YzEyLjggMy40IDI2LTQuMiAyOS40LTE3cy00LjItMjYtMTctMjkuNGwtMzEuNS04LjQgNjcuNi0zOWMxMS41LTYuNiAxNS40LTIxLjMgOC44LTMyLjhzLTIxLjMtMTUuNC0zMi44LTguOGwtNjcuNiAzOSA4LjQtMzEuNWMzLjQtMTIuOC00LjItMjYtMTctMjkuNHMtMjYgNC4yLTI5LjQgMTdsLTIwLjkgNzcuOC02Ni4yIDM4LjIgMC03Ni41IDU3LTU3YzkuNC05LjQgOS40LTI0LjYgMC0zMy45cy0yNC42LTkuNC0zMy45IDBsLTIzIDIzIDAtNzguMXoiXX0sXzByPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImJvb2ttYXJrIixpY29uOlszODQsNTEyLFsxMjgyNzgsNjE1OTFdLCJmMDJlIiwiTTAgNjRDMCAyOC43IDI4LjcgMCA2NCAwTDMyMCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgNDE3LjFjMCAyNS42LTI4LjUgNDAuOC00OS44IDI2LjZMMTkyIDQxMi44IDQ5LjggNTA3LjdDMjguNSA1MjEuOSAwIDUwNi42IDAgNDgxLjFMMCA2NHpNNjQgNDhjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDM4Ny4yIDExNy40LTc4LjJjMTYuMS0xMC43IDM3LjEtMTAuNyA1My4yIDBMMzM2IDQ1MS4yIDMzNiA2NGMwLTguOC03LjItMTYtMTYtMTZMNjQgNDh6Il19LGF6ZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJzcXVhcmUtY2FyZXQtbGVmdCIsaWNvbjpbNDQ4LDUxMixbImNhcmV0LXNxdWFyZS1sZWZ0Il0sImYxOTEiLCJNNDggNDE2YzAgOC44IDcuMiAxNiAxNiAxNmwzMjAgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0zMjBjMC04LjgtNy4yLTE2LTE2LTE2TDY0IDgwYy04LjggMC0xNiA3LjItMTYgMTZsMCAzMjB6bTE2IDY0Yy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDk2QzAgNjAuNyAyOC43IDMyIDY0IDMybDMyMCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMzIwYzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDQ4MHptNjQtMjI0YzAtNi43IDIuOC0xMyA3LjctMTcuNmwxMTItMTA0YzctNi41IDE3LjItOC4yIDI1LjktNC40UzI4OCAxNDIuNSAyODggMTUybDAgMjA4YzAgOS41LTUuNyAxOC4yLTE0LjQgMjJzLTE4LjkgMi4xLTI1LjktNC40bC0xMTItMTA0Yy00LjktNC41LTcuNy0xMC45LTcuNy0xNy42eiJdfSxUMHI9YXplLFhzZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJoYW5kc2hha2UiLGljb246WzY0MCw1MTIsWzEyOTMwOSw2MjY2MiwiaGFuZHNoYWtlLWFsdCIsImhhbmRzaGFrZS1zaW1wbGUiXSwiZjJiNSIsIk01OTguMSA3NS40YzEwLjctNy44IDEzLjEtMjIuOCA1LjMtMzMuNXMtMjIuOC0xMy4xLTMzLjUtNS4zbC03NC41IDU0LjItOS45LTYuNkM0NjUuOCA3MSA0NDIuNiA2NCA0MTguOSA2NGwtNTkuMiAwLS40IDAtMTQzLjYgMGMtMjYuNyAwLTUyLjUgOC45LTczLjQgMjUuMUw3MC4xIDM2LjZjLTEwLjctNy44LTI1LjctNS40LTMzLjUgNS4zcy01LjQgMjUuNyA1LjMgMzMuNWw4OCA2NGM5LjYgNi45IDIyLjcgNS45IDMxLjEtMi40bDMuOS0zLjljMTMuNS0xMy41IDMxLjgtMjEuMSA1MC45LTIxLjFsNDYuMyAwLTkxLjcgOTEuN2MtMTUuNiAxNS42LTE1LjYgNDAuOSAwIDU2LjZsLjggLjhDMjE4IDMwOCAyOTQgMzA4IDM0MC45IDI2MS4xbDI3LjEtMjcuMSA5Ny44IDk3LjhjMTUuNiAxNS42IDE1LjYgNDAuOSAwIDU2LjZsLTkuOCA5LjgtMzEtMzFjLTkuNC05LjQtMjQuNi05LjQtMzMuOSAwcy05LjQgMjQuNiAwIDMzLjlsMjggMjhjLTE3LjUgMTAuNC0zNy4yIDE2LjctNTcuNiAxOC41TDMxMyAzOTljLTkuNC05LjQtMjQuNi05LjQtMzMuOSAwcy05LjQgMjQuNiAwIDMzLjlsMTUgMTUtMy44IDBjLTM2LjEgMC03MC43LTE0LjMtOTYuMi0zOS44TDY1IDI3OWMtOS40LTkuNC0yNC42LTkuNC0zMy45IDBzLTkuNCAyNC42IDAgMzMuOUwxNjAuMiA0NDIuMWMzNC41IDM0LjUgODEuMyA1My45IDEzMC4xIDUzLjlsNTEuOCAwIDEgMSAxLTEgNS43IDBjNDguOCAwIDk1LjYtMTkuNCAxMzAuMS01My45bDE5LjktMTkuOWMxLjItMS4yIDIuMy0yLjMgMy40LTMuNSAuNy0uNSAxLjMtMS4xIDEuOS0xLjdMNjA5IDMxM2M5LjQtOS40IDkuNC0yNC42IDAtMzMuOXMtMjQuNi05LjQtMzMuOSAwbC01My44IDUzLjhjLTQuMi0xMi44LTExLjMtMjQuOS0yMS41LTM1LjFMMzg1IDE4M2MtOS40LTkuNC0yNC42LTkuNC0zMy45IDBsLTQ0LjEgNDQuMWMtMjYuNSAyNi41LTY4LjUgMjgtOTYuNyA0LjZsOTguNy05OC43YzEzLjQtMTMuNCAzMS42LTIxIDUwLjYtMjEuMWw4LjUgMCAuMiAwIDUwLjggMGMxNC4yIDAgMjguMSA0LjIgMzkuOSAxMi4xTDQ4Mi43IDE0MGM4LjQgNS42IDE5LjMgNS4zIDI3LjQtLjZsODgtNjR6Il19LEwwcj1Yc2UsRDByPVhzZSxpemU9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiZmFjZS1zbWlsZS13aW5rIixpY29uOls1MTIsNTEyLFsxMjg1MjEsInNtaWxlLXdpbmsiXSwiZjRkYSIsIk00NjQgMjU2YTIwOCAyMDggMCAxIDAgLTQxNiAwIDIwOCAyMDggMCAxIDAgNDE2IDB6TTAgMjU2YTI1NiAyNTYgMCAxIDEgNTEyIDAgMjU2IDI1NiAwIDEgMSAtNTEyIDB6bTE3Ny4zIDYzLjRDMTkyLjMgMzM1IDIxOC40IDM1MiAyNTYgMzUyczYzLjctMTcgNzguNy0zMi42YzkuMi05LjYgMjQuNC05LjkgMzMuOS0uN3M5LjkgMjQuNCAuNyAzMy45Yy0yMi4xIDIzLTYwIDQ3LjQtMTEzLjMgNDcuNHMtOTEuMi0yNC40LTExMy4zLTQ3LjRjLTkuMi05LjYtOC45LTI0LjggLjctMzMuOXMyNC44LTguOSAzMy45IC43ek0xNDQgMjA4YTMyIDMyIDAgMSAxIDY0IDAgMzIgMzIgMCAxIDEgLTY0IDB6bTE2NCA4YzAgMTEtOSAyMC0yMCAyMHMtMjAtOS0yMC0yMGMwLTMzLjEgMjYuOS02MCA2MC02MGwxNiAwYzMzLjEgMCA2MCAyNi45IDYwIDYwIDAgMTEtOSAyMC0yMCAyMHMtMjAtOS0yMC0yMC05LTIwLTIwLTIwbC0xNiAwYy0xMSAwLTIwIDktMjAgMjB6Il19LEEwcj1pemUsb3plPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImZhY2UtZ3Jpbi1zcXVpbnQtdGVhcnMiLGljb246WzUxMiw1MTIsWzEyOTMxNSwiZ3Jpbi1zcXVpbnQtdGVhcnMiXSwiZjU4NiIsIk00MDMuMSA0MDMuMWM2Ny4yLTY3LjIgNzguOC0xNjguOSAzNC45LTI0OGwzNi43LTUuMmM0LjUtLjYgOC44LTEuNiAxMy4xLTIuOCA0NC42IDk0LjkgMjcuNyAyMTEuNS01MC43IDI5MHMtMTk1LjEgOTUuMy0yOTAgNTAuN2MxLjItNC4yIDIuMS04LjYgMi44LTEzLjFsNS4yLTM2LjdjNzkuMSA0My45IDE4MC44IDMyLjMgMjQ4LTM0Ljl6TTc1IDc1Yzc4LjQtNzguNCAxOTUuMS05NS4zIDI5MC01MC43LTEuMiA0LjItMi4xIDguNi0yLjggMTMuMWwtNS4yIDM2LjdjLTc5LjEtNDMuOS0xODAuOC0zMi4zLTI0OCAzNC45cy03OC44IDE2OC45LTM0LjkgMjQ4bC0zNi43IDUuMmMtNC41IC42LTguOCAxLjYtMTMuMSAyLjgtNDQuNi05NC45LTI3LjctMjExLjUgNTAuNy0yOTB6TTM3MC45IDIwNi41YzUuOC0xMC45IDIxLjEtMTIuNCAyNi40LTEuMyAyNS42IDUzLjUgMTYuMiAxMTkuNi0yOC4yIDE2My45LTQ0LjMgNDQuMy0xMTAuMyA1My43LTE2My44IDI4LjItMTEuMS01LjMtOS42LTIwLjYgMS4zLTI2LjQgMzItMTcuMSA2NC4yLTQwLjggOTMuOC03MC40IDI5LjctMjkuNyA1My40LTYxLjkgNzAuNS05NHpNOTMuMyAyODEuOWMtMS43LTggMi45LTE1LjkgMTAuNi0xOC40bDg0LjYtMjhjNS43LTEuOSAxMi4xLS40IDE2LjMgMy45czUuOCAxMC42IDMuOSAxNi4zbC0yOCA4NC42Yy0yLjYgNy43LTEwLjUgMTIuMy0xOC40IDEwLjZzLTEzLjQtOS0xMi43LTE3LjFsMy45LTQzLjEtNDMuMSAzLjljLTguMSAuNy0xNS41LTQuNy0xNy4xLTEyLjd6TTI5NC42IDExMC40bC0zLjkgNDMuMSA0My4xLTMuOWM4LjEtLjcgMTUuNSA0LjcgMTcuMSAxMi43cy0yLjkgMTUuOS0xMC42IDE4LjRsLTg0LjYgMjhjLTUuNyAxLjktMTIuMSAuNC0xNi4zLTMuOXMtNS44LTEwLjYtMy45LTE2LjNsMjgtODQuNmMyLjYtNy43IDEwLjUtMTIuMyAxOC40LTEwLjZzMTMuNCA5IDEyLjcgMTcuMXpNNTEyIDUxLjRjMCAyNS42LTE4LjggNDcuMy00NC4xIDUwLjlMNDIxLjEgMTA5Yy0xMC42IDEuNS0xOS42LTcuNS0xOC4xLTE4LjFsNi43LTQ2LjdDNDEzLjMgMTguOCA0MzUgMCA0NjAuNiAwIDQ4OSAwIDUxMiAyMyA1MTIgNTEuNHpNNDQuMSA0MDkuN0w5MC45IDQwM2MxMC42LTEuNSAxOS42IDcuNSAxOC4xIDE4LjFsLTYuNyA0Ni43Qzk4LjcgNDkzLjIgNzcgNTEyIDUxLjQgNTEyIDIzIDUxMiAwIDQ4OSAwIDQ2MC42IDAgNDM1IDE4LjggNDEzLjMgNDQuMSA0MDkuN3oiXX0sRTByPW96ZSwkMHI9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiZmlsZS1hdWRpbyIsaWNvbjpbMzg0LDUxMixbXSwiZjFjNyIsIk02NCA0OGwxMTIgMCAwIDg4YzAgMzkuOCAzMi4yIDcyIDcyIDcybDg4IDAgMCAyNDBjMCA4LjgtNy4yIDE2LTE2IDE2TDY0IDQ2NGMtOC44IDAtMTYtNy4yLTE2LTE2TDQ4IDY0YzAtOC44IDcuMi0xNiAxNi0xNnpNMjI0IDY3LjlsOTIuMSA5Mi4xLTY4LjEgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRsMC02OC4xek02NCAwQzI4LjcgMCAwIDI4LjcgMCA2NEwwIDQ0OGMwIDM1LjMgMjguNyA2NCA2NCA2NGwyNTYgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTI2MS41YzAtMTctNi43LTMzLjMtMTguNy00NS4zTDI0Mi43IDE4LjdDMjMwLjcgNi43IDIxNC41IDAgMTk3LjUgMEw2NCAwek0yMjEuOSAyNjcuNmMtNC43IDEwLS4zIDIxLjkgOS43IDI2LjYgMTkuMiA4LjkgMzIuNCAyOC4zIDMyLjQgNTAuOHMtMTMuMiA0MS45LTMyLjQgNTAuOGMtMTAgNC43LTE0LjQgMTYuNi05LjcgMjYuNnMxNi42IDE0LjQgMjYuNiA5LjdDMjgxLjIgNDE2LjggMzA0IDM4My42IDMwNCAzNDVzLTIyLjgtNzEuOS01NS42LTg3LjFjLTEwLTQuNy0yMS45LS4zLTI2LjYgOS43ek0xMDQgMzA1Yy0xMy4zIDAtMjQgMTAuNy0yNCAyNGwwIDMyYzAgMTMuMyAxMC43IDI0IDI0IDI0bDE2IDAgMjcuMiAzNGMzIDMuOCA3LjYgNiAxMi41IDZsLjMgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0xMjhjMC04LjgtNy4yLTE2LTE2LTE2bC0uMyAwYy00LjkgMC05LjUgMi4yLTEyLjUgNmwtMjcuMiAzNC0xNiAwek0yMjMuMyAzNzNjOS45LTUuNCAxNi43LTE2IDE2LjctMjguMXMtNi43LTIyLjctMTYuNy0yOC4xYy03LjgtNC4yLTE1LjMgMy4zLTE1LjMgMTIuMWwwIDMyYzAgOC44IDcuNiAxNi4zIDE1LjMgMTIuMXoiXX0sbnplPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImNhbGVuZGFyLXhtYXJrIixpY29uOls0NDgsNTEyLFsiY2FsZW5kYXItdGltZXMiXSwiZjI3MyIsIk0xMjAgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNGwwIDQwIDE2MCAwIDAtNDBjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNGwwIDQwIDMyIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAyODhjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDEyOEMwIDkyLjcgMjguNyA2NCA2NCA2NGwzMiAwIDAtNDBjMC0xMy4zIDEwLjctMjQgMjQtMjR6bTAgMTEybC01NiAwYy04LjggMC0xNiA3LjItMTYgMTZsMCAyODhjMCA4LjggNy4yIDE2IDE2IDE2bDMyMCAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTI4OGMwLTguOC03LjItMTYtMTYtMTZsLTI2NCAwem0xNzEuOSA5Mi4xYzkuNCA5LjQgOS40IDI0LjYgMCAzMy45bC0zMy45IDMzLjkgMzMuOSAzMy45YzkuNCA5LjQgOS40IDI0LjYgMCAzMy45cy0yNC42IDkuNC0zMy45IDBsLTMzLjktMzMuOS0zMy45IDMzLjljLTkuNCA5LjQtMjQuNiA5LjQtMzMuOSAwcy05LjQtMjQuNiAwLTMzLjlsMzMuOS0zMy45LTMzLjktMzMuOWMtOS40LTkuNC05LjQtMjQuNiAwLTMzLjlzMjQuNi05LjQgMzMuOSAwbDMzLjkgMzMuOSAzMy45LTMzLjljOS40LTkuNCAyNC42LTkuNCAzMy45IDB6Il19LFAwcj1uemUsc3plPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImNpcmNsZS1kb3duIixpY29uOls1MTIsNTEyLFs2MTQ2NiwiYXJyb3ctYWx0LWNpcmNsZS1kb3duIl0sImYzNTgiLCJNMjU2IDQ2NGEyMDggMjA4IDAgMSAxIDAtNDE2IDIwOCAyMDggMCAxIDEgMCA0MTZ6TTI1NiAwYTI1NiAyNTYgMCAxIDAgMCA1MTIgMjU2IDI1NiAwIDEgMCAwLTUxMnpNMjQ0LjcgMzg3LjNjNi4yIDYuMiAxNi40IDYuMiAyMi42IDBsMTA0LTEwNGM0LjYtNC42IDUuOS0xMS41IDMuNS0xNy40UzM2Ni41IDI1NiAzNjAgMjU2bC03MiAwIDAtMTA0YzAtMTMuMy0xMC43LTI0LTI0LTI0bC0xNiAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNGwwIDEwNC03MiAwYy02LjUgMC0xMi4zIDMuOS0xNC44IDkuOXMtMS4xIDEyLjkgMy41IDE3LjRsMTA0IDEwNHoiXX0sSTByPXN6ZSxRc2U9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiZmlsZS1saW5lcyIsaWNvbjpbMzg0LDUxMixbMTI4NDQxLDEyODQ2Miw2MTY4NiwiZmlsZS1hbHQiLCJmaWxlLXRleHQiXSwiZjE1YyIsIk02NCA0OGwxMTIgMCAwIDg4YzAgMzkuOCAzMi4yIDcyIDcyIDcybDg4IDAgMCAyNDBjMCA4LjgtNy4yIDE2LTE2IDE2TDY0IDQ2NGMtOC44IDAtMTYtNy4yLTE2LTE2TDQ4IDY0YzAtOC44IDcuMi0xNiAxNi0xNnpNMjI0IDY3LjlsOTIuMSA5Mi4xLTY4LjEgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRsMC02OC4xek02NCAwQzI4LjcgMCAwIDI4LjcgMCA2NEwwIDQ0OGMwIDM1LjMgMjguNyA2NCA2NCA2NGwyNTYgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTI2MS41YzAtMTctNi43LTMzLjMtMTguNy00NS4zTDI0Mi43IDE4LjdDMjMwLjcgNi43IDIxNC41IDAgMTk3LjUgMEw2NCAwem01NiAyNTZjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsMTQ0IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTE0NCAwem0wIDk2Yy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDE0NCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC0xNDQgMHoiXX0sTjByPVFzZSxGMHI9UXNlLE8wcj17cHJlZml4OiJmYXIiLGljb25OYW1lOiJjb21tZW50cyIsaWNvbjpbNTc2LDUxMixbMTI4NDkwLDYxNjcwXSwiZjA4NiIsIk03Ni4yIDI1OC43YzYuMS0xNS4yIDQtMzIuNi01LjYtNDUuOS0xNC41LTIwLjEtMjIuNi00My43LTIyLjYtNjguOCAwLTY2LjggNjAuNS0xMjggMTQ0LTEyOHMxNDQgNjEuMiAxNDQgMTI4LTYwLjUgMTI4LTE0NCAxMjhjLTE1LjkgMC0zMS4xLTIuMy00NS4zLTYuNS0xMC4zLTMuMS0yMS40LTIuNS0zMS40IDEuNWwtNTAuNCAyMC4yIDExLjQtMjguNXpNMCAxNDRjMCAzNS44IDExLjYgNjkuMSAzMS43IDk2LjhMMS45IDMxNS4yYy0xLjMgMy4yLTEuOSA2LjYtMS45IDEwIDAgMTQuOCAxMiAyNi44IDI2LjggMjYuOCAzLjQgMCA2LjgtLjcgMTAtMS45bDk2LjMtMzguNWMxOC42IDUuNSAzOC40IDguNCA1OC45IDguNCAxMDYgMCAxOTItNzguOCAxOTItMTc2UzI5OC0zMiAxOTItMzIgMCA0Ni44IDAgMTQ0ek0zODQgNTEyYzIwLjYgMCA0MC4zLTMgNTguOS04LjRsOTYuMyAzOC41YzMuMiAxLjMgNi42IDEuOSAxMCAxLjkgMTQuOCAwIDI2LjgtMTIgMjYuOC0yNi44IDAtMy40LS43LTYuOC0xLjktMTBsLTI5LjctNzQuNGMyMC0yNy44IDMxLjctNjEuMSAzMS43LTk2LjggMC04Mi40LTYxLjctMTUxLjUtMTQ1LTE3MC43LTEuNiAxNi4zLTUuMSAzMS45LTEwLjEgNDYuOSA2My45IDE0LjggMTA3LjIgNjcuMyAxMDcuMiAxMjMuOSAwIDI1LjEtOC4xIDQ4LjctMjIuNiA2OC44LTkuNiAxMy4zLTExLjcgMzAuNi01LjYgNDUuOWwxMS40IDI4LjUtNTAuNC0yMC4yYy0xMC00LTIxLjEtNC41LTMxLjQtMS41LTE0LjIgNC4yLTI5LjQgNi41LTQ1LjMgNi41LTcyLjIgMC0xMjcuMS00NS43LTE0MC43LTEwMS4yLTE1LjYgMy4yLTMxLjcgNS00OC4xIDUuMiAxNi40IDgxLjkgOTQuNyAxNDQgMTg4LjggMTQ0eiJdfSxtdz17cHJlZml4OiJmYXIiLGljb25OYW1lOiJjaXJjbGUtY2hlY2siLGljb246WzUxMiw1MTIsWzYxNTMzLCJjaGVjay1jaXJjbGUiXSwiZjA1OCIsIk0yNTYgNTEyYTI1NiAyNTYgMCAxIDEgMC01MTIgMjU2IDI1NiAwIDEgMSAwIDUxMnptMC00NjRhMjA4IDIwOCAwIDEgMCAwIDQxNiAyMDggMjA4IDAgMSAwIDAtNDE2em03MC43IDEyMS45YzcuOC0xMC43IDIyLjgtMTMuMSAzMy41LTUuMyAxMC43IDcuOCAxMy4xIDIyLjggNS4zIDMzLjVMMjQzLjQgMzY2LjFjLTQuMSA1LjctMTAuNSA5LjMtMTcuNSA5LjgtNyAuNS0xMy45LTItMTguOC02LjlsLTU1LjktNTUuOWMtOS40LTkuNC05LjQtMjQuNiAwLTMzLjlzMjQuNi05LjQgMzMuOSAwbDM2IDM2IDEwNS42LTE0NS4yeiJdfSxSMHI9bXcsQjByPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6Im1vb24iLGljb246WzUxMiw1MTIsWzEyNzc2OSw5MjE0XSwiZjE4NiIsIk0yMzkuMyA0OC43Yy0xMDcuMSA4LjUtMTkxLjMgOTguMS0xOTEuMyAyMDcuMyAwIDExNC45IDkzLjEgMjA4IDIwOCAyMDggMzMuMyAwIDY0LjctNy44IDkyLjYtMjEuNy0xMDMuNC0yMy40LTE4MC42LTExNS44LTE4MC42LTIyNi4zIDAtNjUuOCAyNy40LTEyNS4xIDcxLjMtMTY3LjN6TTAgMjU2YzAtMTQxLjQgMTE0LjYtMjU2IDI1Ni0yNTYgMTkuNCAwIDM4LjQgMi4yIDU2LjcgNi4zIDkuOSAyLjIgMTcuMyAxMC41IDE4LjUgMjAuNXMtNCAxOS44LTEzLjEgMjQuNGMtNjAuNiAzMC4yLTEwMi4xIDkyLjctMTAyLjEgMTY0LjggMCAxMDEuNiA4Mi40IDE4NCAxODQgMTg0IDUgMCA5LjktLjIgMTQuOC0uNiAxMC4xLS44IDE5LjYgNC44IDIzLjggMTQuMXMyIDIwLjEtNS4zIDI3LjFDMzg3LjMgNDg0LjggMzI0LjggNTEyIDI1NiA1MTIgMTE0LjYgNTEyIDAgMzk3LjQgMCAyNTZ6Il19LEgwcj17cHJlZml4OiJmYXIiLGljb25OYW1lOiJjbG9zZWQtY2FwdGlvbmluZyIsaWNvbjpbNTEyLDUxMixbXSwiZjIwYSIsIk00NDggMTEyYzguOCAwIDE2IDcuMiAxNiAxNmwwIDI1NmMwIDguOC03LjIgMTYtMTYgMTZMNjQgNDAwYy04LjggMC0xNi03LjItMTYtMTZsMC0yNTZjMC04LjggNy4yLTE2IDE2LTE2bDM4NCAwek02NCA2NEMyOC43IDY0IDAgOTIuNyAwIDEyOEwwIDM4NGMwIDM1LjMgMjguNyA2NCA2NCA2NGwzODQgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTI1NmMwLTM1LjMtMjguNy02NC02NC02NEw2NCA2NHptODggMTQ0bDMyIDBjNC40IDAgOCAzLjYgOCA4IDAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRjMC0zMC45LTI1LjEtNTYtNTYtNTZsLTMyIDBjLTMwLjkgMC01NiAyNS4xLTU2IDU2bDAgODBjMCAzMC45IDI1LjEgNTYgNTYgNTZsMzIgMGMzMC45IDAgNTYtMjUuMSA1Ni01NiAwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGMwIDQuNC0zLjYgOC04IDhsLTMyIDBjLTQuNCAwLTgtMy42LTgtOGwwLTgwYzAtNC40IDMuNi04IDgtOHptMTY4IDhjMC00LjQgMy42LTggOC04bDMyIDBjNC40IDAgOCAzLjYgOCA4IDAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRjMC0zMC45LTI1LjEtNTYtNTYtNTZsLTMyIDBjLTMwLjkgMC01NiAyNS4xLTU2IDU2bDAgODBjMCAzMC45IDI1LjEgNTYgNTYgNTZsMzIgMGMzMC45IDAgNTYtMjUuMSA1Ni01NiAwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGMwIDQuNC0zLjYgOC04IDhsLTMyIDBjLTQuNCAwLTgtMy42LTgtOGwwLTgweiJdfSxxMHI9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiaW1hZ2VzIixpY29uOls1NzYsNTEyLFtdLCJmMzAyIiwiTTQ4MCA4MGM4LjggMCAxNiA3LjIgMTYgMTZsMCAyNTZjMCA4LjgtNy4yIDE2LTE2IDE2bC0zMjAgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMjU2YzAtOC44IDcuMi0xNiAxNi0xNmwzMjAgMHpNMTYwIDMyYy0zNS4zIDAtNjQgMjguNy02NCA2NGwwIDI1NmMwIDM1LjMgMjguNyA2NCA2NCA2NGwzMjAgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTI1NmMwLTM1LjMtMjguNy02NC02NC02NEwxNjAgMzJ6bTgwIDExMmEzMiAzMiAwIDEgMCAtNjQgMCAzMiAzMiAwIDEgMCA2NCAwem0xNDAuNyAzLjhjLTQuMy03LjMtMTIuMi0xMS44LTIwLjctMTEuOHMtMTYuNCA0LjUtMjAuNyAxMS44bC00Ni41IDc5LTE3LjItMjQuNmMtNC41LTYuNC0xMS44LTEwLjItMTkuNy0xMC4ycy0xNS4yIDMuOC0xOS43IDEwLjJsLTU2IDgwYy01LjEgNy4zLTUuOCAxNi45LTEuNiAyNC44UzE5MS4xIDMyMCAyMDAgMzIwbDI0MCAwYzguNiAwIDE2LjYtNC42IDIwLjgtMTIuMXM0LjItMTYuNy0uMS0yNC4xbC04MC0xMzZ6TTQ4IDE1MmMwLTEzLjMtMTAuNy0yNC0yNC0yNFMwIDEzOC43IDAgMTUyTDAgNDQ4YzAgMzUuMyAyOC43IDY0IDY0IDY0bDM2MCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0TDY0IDQ2NGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMjk2eiJdfSxsemU9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiY2lyY2xlLXJpZ2h0IixpY29uOls1MTIsNTEyLFs2MTgzOCwiYXJyb3ctYWx0LWNpcmNsZS1yaWdodCJdLCJmMzVhIiwiTTQ2NCAyNTZhMjA4IDIwOCAwIDEgMSAtNDE2IDAgMjA4IDIwOCAwIDEgMSA0MTYgMHpNMCAyNTZhMjU2IDI1NiAwIDEgMCA1MTIgMCAyNTYgMjU2IDAgMSAwIC01MTIgMHptMzg3LjMgMTEuM2M2LjItNi4yIDYuMi0xNi40IDAtMjIuNmwtMTA0LTEwNGMtNC42LTQuNi0xMS41LTUuOS0xNy40LTMuNVMyNTYgMTQ1LjUgMjU2IDE1MmwwIDcyLTEwNCAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNGwwIDE2YzAgMTMuMyAxMC43IDI0IDI0IDI0bDEwNCAwIDAgNzJjMCA2LjUgMy45IDEyLjMgOS45IDE0LjhzMTIuOSAxLjEgMTcuNC0zLjVsMTA0LTEwNHoiXX0sajByPWx6ZSxjemU9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiaWQtY2FyZCIsaWNvbjpbNTc2LDUxMixbNjIxNDcsImRyaXZlcnMtbGljZW5zZSJdLCJmMmMyIiwiTTQ4IDQxNmwwLTI1NiA0ODAgMCAwIDI1NmMwIDguOC03LjIgMTYtMTYgMTZsLTE5MiAwYzAtNDQuMi0zNS44LTgwLTgwLTgwbC02NCAwYy00NC4yIDAtODAgMzUuOC04MCA4MGwtMzIgMGMtOC44IDAtMTYtNy4yLTE2LTE2ek02NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgNDE2YzAgMzUuMyAyOC43IDY0IDY0IDY0bDQ0OCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMzIwYzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDMyek0yMDggMzEyYTU2IDU2IDAgMSAwIDAtMTEyIDU2IDU2IDAgMSAwIDAgMTEyek0zNzYgMjA4Yy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDgwIDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTgwIDB6bTAgOTZjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsODAgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtODAgMHoiXX0sVjByPWN6ZSxkemU9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiY2lyY2xlLXBsYXkiLGljb246WzUxMiw1MTIsWzYxNDY5LCJwbGF5LWNpcmNsZSJdLCJmMTQ0IiwiTTI1NiA0OGEyMDggMjA4IDAgMSAxIDAgNDE2IDIwOCAyMDggMCAxIDEgMC00MTZ6bTAgNDY0YTI1NiAyNTYgMCAxIDAgMC01MTIgMjU2IDI1NiAwIDEgMCAwIDUxMnpNMjEyLjUgMTQ3LjVjLTcuNC00LjUtMTYuNy00LjctMjQuMy0uNVMxNzYgMTU5LjMgMTc2IDE2OGwwIDE3NmMwIDguNyA0LjcgMTYuNyAxMi4zIDIwLjlzMTYuOCA0LjEgMjQuMy0uNWwxNDQtODhjNy4xLTQuNCAxMS41LTEyLjEgMTEuNS0yMC41cy00LjQtMTYuMS0xMS41LTIwLjVsLTE0NC04OHpNMjk4IDI1NmwtNzQgNDUuMiAwLTkwLjQgNzQgNDUuMnoiXX0sVTByPWR6ZSx1emU9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiZmFjZS1sYXVnaC1iZWFtIixpY29uOls1MTIsNTEyLFsxMjg1MTMsImxhdWdoLWJlYW0iXSwiZjU5YSIsIk00NjQgMjU2YTIwOCAyMDggMCAxIDAgLTQxNiAwIDIwOCAyMDggMCAxIDAgNDE2IDB6TTAgMjU2YTI1NiAyNTYgMCAxIDEgNTEyIDAgMjU2IDI1NiAwIDEgMSAtNTEyIDB6bTExOC4zIDU4LjJjLTQuMi0xMy43IDcuMS0yNi4yIDIxLjQtMjYuMmwyMzIuNiAwYzE0LjMgMCAyNS42IDEyLjUgMjEuNCAyNi4yLTE4IDU4LjktNzIuOSAxMDEuOC0xMzcuNyAxMDEuOFMxMzYuMyAzNzMuMSAxMTguMyAzMTQuMnpNMTc2IDE4MGMtMTUuNSAwLTI4IDEyLjUtMjggMjhsMCA4YzAgMTEtOSAyMC0yMCAyMHMtMjAtOS0yMC0yMGwwLThjMC0zNy42IDMwLjQtNjggNjgtNjhzNjggMzAuNCA2OCA2OGwwIDhjMCAxMS05IDIwLTIwIDIwcy0yMC05LTIwLTIwbDAtOGMwLTE1LjUtMTIuNS0yOC0yOC0yOHptMTMyIDI4bDAgOGMwIDExLTkgMjAtMjAgMjBzLTIwLTktMjAtMjBsMC04YzAtMzcuNiAzMC40LTY4IDY4LTY4czY4IDMwLjQgNjggNjhsMCA4YzAgMTEtOSAyMC0yMCAyMHMtMjAtOS0yMC0yMGwwLThjMC0xNS41LTEyLjUtMjgtMjgtMjhzLTI4IDEyLjUtMjggMjh6Il19LFcwcj11emUsZnplPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImFkZHJlc3MtYm9vayIsaWNvbjpbNTEyLDUxMixbNjIxMzgsImNvbnRhY3QtYm9vayJdLCJmMmI5IiwiTTM4NCA0OGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzODRjMCA4LjgtNy4yIDE2LTE2IDE2TDk2IDQ2NGMtOC44IDAtMTYtNy4yLTE2LTE2TDgwIDY0YzAtOC44IDcuMi0xNiAxNi0xNmwyODggMHpNOTYgMEM2MC43IDAgMzIgMjguNyAzMiA2NGwwIDM4NGMwIDM1LjMgMjguNyA2NCA2NCA2NGwyODggMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTM4NGMwLTM1LjMtMjguNy02NC02NC02NEw5NiAwek0yNDAgMjQ4YTU2IDU2IDAgMSAwIDAtMTEyIDU2IDU2IDAgMSAwIDAgMTEyem0tMzIgNDBjLTQ0LjIgMC04MCAzNS44LTgwIDgwIDAgOC44IDcuMiAxNiAxNiAxNmwxOTIgMGM4LjggMCAxNi03LjIgMTYtMTYgMC00NC4yLTM1LjgtODAtODAtODBsLTY0IDB6TTUxMiA4MGMwLTguOC03LjItMTYtMTYtMTZzLTE2IDcuMi0xNiAxNmwwIDY0YzAgOC44IDcuMiAxNiAxNiAxNnMxNi03LjIgMTYtMTZsMC02NHpNNDk2IDE5MmMtOC44IDAtMTYgNy4yLTE2IDE2bDAgNjRjMCA4LjggNy4yIDE2IDE2IDE2czE2LTcuMiAxNi0xNmwwLTY0YzAtOC44LTcuMi0xNi0xNi0xNnptMTYgMTQ0YzAtOC44LTcuMi0xNi0xNi0xNnMtMTYgNy4yLTE2IDE2bDAgNjRjMCA4LjggNy4yIDE2IDE2IDE2czE2LTcuMiAxNi0xNmwwLTY0eiJdfSxHMHI9ZnplLHB6ZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJob3VyZ2xhc3MiLGljb246WzM4NCw1MTIsWzkyMDMsNjIwMzIsImhvdXJnbGFzcy1lbXB0eSJdLCJmMjU0IiwiTTI0IDBDMTAuNyAwIDAgMTAuNyAwIDI0UzEwLjcgNDggMjQgNDhsOCAwIDAgMTljMCA0MC4zIDE2IDc5IDQ0LjUgMTA3LjVsODEuNSA4MS41LTgxLjUgODEuNUM0OCAzNjYgMzIgNDA0LjcgMzIgNDQ1bDAgMTktOCAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDMzNiAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC04IDAgMC0xOWMwLTQwLjMtMTYtNzktNDQuNS0xMDcuNWwtODEuNS04MS41IDgxLjUtODEuNUMzMzYgMTQ2IDM1MiAxMDcuMyAzNTIgNjdsMC0xOSA4IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRTMzczLjMgMCAzNjAgMEwyNCAwek0xOTIgMjg5LjlsODEuNSA4MS41QzI5MyAzOTEgMzA0IDQxNy40IDMwNCA0NDVsMCAxOS0yMjQgMCAwLTE5YzAtMjcuNiAxMS01NCAzMC41LTczLjVMMTkyIDI4OS45em0wLTY3LjlsLTgxLjUtODEuNUM5MSAxMjEgODAgOTQuNiA4MCA2N2wwLTE5IDIyNCAwIDAgMTljMCAyNy42LTExIDU0LTMwLjUgNzMuNUwxOTIgMjIyLjF6Il19LFkwcj1wemUsS3NlPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImhlYWRwaG9uZXMiLGljb246WzQ0OCw1MTIsWzEyNzkxMSw2Mjg2MywiaGVhZHBob25lcy1hbHQiLCJoZWFkcGhvbmVzLXNpbXBsZSJdLCJmMDI1IiwiTTQ4IDIyNGMwLTk3LjIgNzguOC0xNzYgMTc2LTE3NnMxNzYgNzguOCAxNzYgMTc2bDAgNDQuOGMtMTQuMS04LjItMzAuNS0xMi44LTQ4LTEyLjhsLTE2IDBjLTI2LjUgMC00OCAyMS41LTQ4IDQ4bDAgMTI4YzAgMjYuNSAyMS41IDQ4IDQ4IDQ4bDE2IDBjNTMgMCA5Ni00MyA5Ni05NmwwLTE2MEM0NDggMTAwLjMgMzQ3LjcgMCAyMjQgMFMwIDEwMC4zIDAgMjI0TDAgMzg0YzAgNTMgNDMgOTYgOTYgOTZsMTYgMGMyNi41IDAgNDgtMjEuNSA0OC00OGwwLTEyOGMwLTI2LjUtMjEuNS00OC00OC00OGwtMTYgMGMtMTcuNSAwLTMzLjkgNC43LTQ4IDEyLjhMNDggMjI0em0wIDEyOGMwLTI2LjUgMjEuNS00OCA0OC00OGwxNiAwIDAgMTI4LTE2IDBjLTI2LjUgMC00OC0yMS41LTQ4LTQ4bDAtMzJ6bTM1MiAwbDAgMzJjMCAyNi41LTIxLjUgNDgtNDggNDhsLTE2IDAgMC0xMjggMTYgMGMyNi41IDAgNDggMjEuNSA0OCA0OHoiXX0sWjByPUtzZSxYMHI9S3NlLFEwcj17cHJlZml4OiJmYXIiLGljb25OYW1lOiJmaWxlLXBvd2VycG9pbnQiLGljb246WzM4NCw1MTIsW10sImYxYzQiLCJNNjQgNDhsMTEyIDAgMCA4OGMwIDM5LjggMzIuMiA3MiA3MiA3Mmw4OCAwIDAgMjQwYzAgOC44LTcuMiAxNi0xNiAxNkw2NCA0NjRjLTguOCAwLTE2LTcuMi0xNi0xNkw0OCA2NGMwLTguOCA3LjItMTYgMTYtMTZ6TTIyNCA2Ny45bDkyLjEgOTIuMS02OC4xIDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0bDAtNjguMXpNNjQgMEMyOC43IDAgMCAyOC43IDAgNjRMMCA0NDhjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMjU2IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0yNjEuNWMwLTE3LTYuNy0zMy4zLTE4LjctNDUuM0wyNDIuNyAxOC43QzIzMC43IDYuNyAyMTQuNSAwIDE5Ny41IDBMNjQgMHptODggMjU2Yy0xMy4zIDAtMjQgMTAuNy0yNCAyNGwwIDEyOGMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtMTYgMjggMGMzNy42IDAgNjgtMzAuNCA2OC02OHMtMzAuNC02OC02OC02OGwtNTIgMHptNTIgODhsLTI4IDAgMC00MCAyOCAwYzExIDAgMjAgOSAyMCAyMHMtOSAyMC0yMCAyMHoiXX0sSzByPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6IndpbmRvdy1tYXhpbWl6ZSIsaWNvbjpbNTEyLDUxMixbMTI4NDcwXSwiZjJkMCIsIk00OCAyMjRsMCAxNjBjMCA4LjggNy4yIDE2IDE2IDE2bDM4NCAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTE2MC00MTYgMHpNMCAxMjhDMCA5Mi43IDI4LjcgNjQgNjQgNjRsMzg0IDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAyNTZjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDQ4Yy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDEyOHoiXX0saHplPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImNvbW1lbnQtZG90cyIsaWNvbjpbNTEyLDUxMixbMTI4MTcyLDYyMDc1LCJjb21tZW50aW5nIl0sImY0YWQiLCJNMCAyNDBjMCA1NC40IDE5LjMgMTA0LjYgNTEuOSAxNDQuOUwzLjEgNDc0LjNjLTIgMy43LTMuMSA3LjktMy4xIDEyLjIgMCAxNC4xIDExLjQgMjUuNSAyNS41IDI1LjUgNCAwIDcuOC0uNiAxMS41LTIuMUwxNTMuNCA0NjBjMzEuNCAxMi45IDY2LjEgMjAgMTAyLjYgMjAgMTQxLjQgMCAyNTYtMTA3LjUgMjU2LTI0MFMzOTcuNCAwIDI1NiAwIDAgMTA3LjUgMCAyNDB6TTk0IDQwNy45YzkuMy0xNy4xIDcuNC0zOC4xLTQuOC01My4yLTI2LjEtMzIuMy00MS4yLTcxLjktNDEuMi0xMTQuNyAwLTEwMy4yIDkwLjItMTkyIDIwOC0xOTJzMjA4IDg4LjggMjA4IDE5Mi05MC4yIDE5Mi0yMDggMTkyYy0zMC4yIDAtNTguNy01LjktODQuMy0xNi40LTExLjktNC45LTI1LjMtNC44LTM3LjEgLjNMNzYgNDQwLjkgOTQgNDA3Ljl6TTE0NCAyNzJhMzIgMzIgMCAxIDAgMC02NCAzMiAzMiAwIDEgMCAwIDY0em0xNDQtMzJhMzIgMzIgMCAxIDAgLTY0IDAgMzIgMzIgMCAxIDAgNjQgMHptODAgMzJhMzIgMzIgMCAxIDAgMC02NCAzMiAzMiAwIDEgMCAwIDY0eiJdfSxKMHI9aHplLG16ZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJmYWNlLWdyaW4tdG9uZ3VlLXdpbmsiLGljb246WzUxMiw1MTIsWzEyODU0MCwiZ3Jpbi10b25ndWUtd2luayJdLCJmNThiIiwiTTM2Ni45IDQzMmMuOC01LjIgMS4xLTEwLjYgMS4xLTE2bDAtNTMuNWMxMC4yLTEyLjYgMTguMy0yNi45IDIzLjgtNDIuNSA0LjEtMTEuNi03LjgtMjEuNC0xOS42LTE3LjgtMzQuOCAxMC42LTc0LjMgMTYuNi0xMTYuMyAxNi42LTQxLjkgMC04MS40LTYtMTE2LjEtMTYuNS0xMS44LTMuNi0yMy43IDYuMS0xOS42IDE3LjggNS41IDE1LjUgMTMuNiAyOS45IDIzLjggNDIuNGwwIDUzLjVjMCA1LjQgLjQgMTAuOCAxLjEgMTYtNTguNC0zNi44LTk3LjEtMTAxLjktOTcuMS0xNzYgMC0xMTQuOSA5My4xLTIwOCAyMDgtMjA4czIwOCA5My4xIDIwOCAyMDhjMCA3NC4xLTM4LjggMTM5LjItOTcuMSAxNzZ6bS0zOC44IDY5LjdDNDM0LjQgNDcwLjYgNTEyIDM3Mi4zIDUxMiAyNTYgNTEyIDExNC42IDM5Ny40IDAgMjU2IDBTMCAxMTQuNiAwIDI1NkMwIDM3Mi4zIDc3LjYgNDcwLjYgMTgzLjkgNTAxLjcgMjAzLjQgNTE4LjEgMjI4LjUgNTI4IDI1NiA1MjhzNTIuNi05LjkgNzIuMS0yNi4zek0zMjAgMzc4LjZsMCAzNy40YzAgMzUuMy0yOC43IDY0LTY0IDY0cy02NC0yOC43LTY0LTY0bDAtMzcuNGMwLTE0LjcgMTEuOS0yNi42IDI2LjYtMjYuNmwyIDBjMTEuMyAwIDIxLjEgNy45IDIzLjYgMTguOSAyLjggMTIuNiAyMC44IDEyLjYgMjMuNiAwIDIuNS0xMS4xIDEyLjMtMTguOSAyMy42LTE4LjlsMiAwYzE0LjcgMCAyNi42IDExLjkgMjYuNiAyNi42ek0xMzIgMjMyYzAtMTEgOS0yMCAyMC0yMGwxNiAwYzExIDAgMjAgOSAyMCAyMHM5IDIwIDIwIDIwIDIwLTkgMjAtMjBjMC0zMy4xLTI2LjktNjAtNjAtNjBsLTE2IDBjLTMzLjEgMC02MCAyNi45LTYwIDYwIDAgMTEgOSAyMCAyMCAyMHMyMC05IDIwLTIwem0yMjguNC0yNGEyNCAyNCAwIDEgMCAtNDggMCAyNCAyNCAwIDEgMCA0OCAwek0yODggMjA4YTQ4IDQ4IDAgMSAxIDk2IDAgNDggNDggMCAxIDEgLTk2IDB6bTEyOCAwYTgwIDgwIDAgMSAwIC0xNjAgMCA4MCA4MCAwIDEgMCAxNjAgMHoiXX0sZTRyPW16ZSxnemU9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiaG91cmdsYXNzLWhhbGYiLGljb246WzM4NCw1MTIsWyJob3VyZ2xhc3MtMiJdLCJmMjUyIiwiTTAgMjRDMCAxMC43IDEwLjcgMCAyNCAwTDM2MCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC04IDAgMCAxOWMwIDQwLjMtMTYgNzktNDQuNSAxMDcuNWwtODEuNSA4MS41IDgxLjUgODEuNUMzMzYgMzY2IDM1MiA0MDQuNyAzNTIgNDQ1bDAgMTkgOCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0TDI0IDUxMmMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNGw4IDAgMC0xOWMwLTQwLjMgMTYtNzkgNDQuNS0xMDcuNWw4MS41LTgxLjUtODEuNS04MS41QzQ4IDE0NiAzMiAxMDcuMyAzMiA2N2wwLTE5LTggMEMxMC43IDQ4IDAgMzcuMyAwIDI0ek0xMTAuNSAzNzEuNWMtMy45IDMuOS03LjUgOC4xLTEwLjcgMTIuNWwxODQuNCAwYy0zLjItNC40LTYuOC04LjYtMTAuNy0xMi41bC04MS41LTgxLjUtODEuNSA4MS41ek04MC44IDQzMmMtLjUgNC4zLS44IDguNi0uOCAxM2wwIDE5IDIyNCAwIDAtMTljMC00LjQtLjMtOC43LS44LTEzTDgwLjggNDMyek0yNTQuMSAxNjBsLTEyNC4xIDAgNjIuMSA2Mi4xIDYyLjEtNjIuMXptMzkuNy00OEMzMDAuNCA5OC4xIDMwNCA4Mi43IDMwNCA2N2wwLTE5LTIyNCAwIDAgMTljMCAxNS43IDMuNiAzMS4xIDEwLjIgNDVsMjAzLjUgMHoiXX0sdDRyPWd6ZSx4emU9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiY3JlZGl0LWNhcmQiLGljb246WzUxMiw1MTIsWzEyODE3OSw2MjA4MywiY3JlZGl0LWNhcmQtYWx0Il0sImYwOWQiLCJNNDQ4IDExMmM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMi00MTYgMCAwLTMyYzAtOC44IDcuMi0xNiAxNi0xNmwzODQgMHptMTYgMTEybDAgMTYwYzAgOC44LTcuMiAxNi0xNiAxNkw2NCA0MDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTE2MCA0MTYgMHpNNjQgNjRDMjguNyA2NCAwIDkyLjcgMCAxMjhMMCAzODRjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzg0IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0yNTZjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgNjR6TTgwIDM0NGMwIDEzLjMgMTAuNyAyNCAyNCAyNGw0OCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC00OCAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHptMTQ0IDBjMCAxMy4zIDEwLjcgMjQgMjQgMjRsNjQgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtNjQgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjR6Il19LHI0cj14emUsYTRyPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImhhbmQtc3BvY2siLGljb246WzUxMiw1MTIsWzEyODQwNl0sImYyNTkiLCJNMTM4LjMgODAuOGMtOS4yLTMzLjggMTAuNS02OC44IDQ0LjMtNzguNCAzNC05LjYgNjkuNCAxMC4yIDc5IDQ0LjJMMjkxLjkgMTUzLjcgMzA1LjEgODRjNi42LTM0LjcgNDAuMS01Ny41IDc0LjgtNTAuOSAzMS40IDYgNTMgMzMuOSA1MiA2NC45IDEwLTIuNiAyMC44LTIuOCAzMS41LS4xIDM0LjMgOC42IDU1LjEgNDMuMyA0Ni42IDc3LjZMNDU0LjcgMzk3LjJDNDM3LjggNDY0LjcgMzc3LjIgNTEyIDMwNy42IDUxMmwtMzMuNyAwYy01Ni45IDAtMTEyLjItMTktMTU3LjItNTMuOWwtOTItNzEuNmMtMjcuOS0yMS43LTMyLjktNjEuOS0xMS4yLTg5LjhzNjEuOS0zMi45IDg5LjgtMTEuMmwxNyAxMy4yLTUxLjgtMTMxLjJjLTEzLTMyLjkgMy4yLTcwLjEgMzYtODMgMTEuMS00LjQgMjIuNy01LjQgMzMuNy0zLjd6bTc3LjEtMjEuMmMtMi40LTguNS0xMS4yLTEzLjQtMTkuNy0xMXMtMTMuNCAxMS4yLTExIDE5LjdsNTQuOCAxODIuNGMzLjUgMTIuMy0zLjMgMjUuMi0xNS40IDI5LjNzLTI1LjMtMi0zMC0xMy45TDE0Mi45IDEzOC4xYy0zLjItOC4yLTEyLjUtMTIuMy0yMC44LTlzLTEyLjMgMTIuNS05IDIwLjhsNzMuMyAxODUuNmMxMiAzMC4zLTIzLjcgNTctNDkuNCAzN0w3My44IDMyMy40Yy03LTUuNC0xNy00LjItMjIuNSAyLjhzLTQuMiAxNyAyLjggMjIuNWw5MiA3MS42YzM2LjUgMjguNCA4MS40IDQzLjggMTI3LjcgNDMuOGwzMy43IDBjNDcuNSAwIDg5LTMyLjQgMTAwLjUtNzguNWw1NS40LTIyMS42YzIuMS04LjYtMy4xLTE3LjMtMTEuNi0xOS40cy0xNy4zIDMuMS0xOS40IDExLjZsLTI2IDEwNGMtMi45IDExLjctMTMuNCAxOS45LTI1LjUgMTkuOS0xNi41IDAtMjguOS0xNS0yNS44LTMxLjJMMzgzLjcgOTljMS43LTguNy00LTE3LjEtMTIuNy0xOC43UzM1NCA4NC4zIDM1Mi4zIDkzTDMyMC41IDI2MGMtMi4yIDExLjYtMTIuNCAyMC0yNC4yIDIwLTExIDAtMjAuNy03LjMtMjMuNy0xNy45TDIxNS40IDU5LjZ6Il19LGk0cj17cHJlZml4OiJmYXIiLGljb25OYW1lOiJiZWxsLXNsYXNoIixpY29uOls1NzYsNTEyLFsxMjgyNzcsNjE5NDNdLCJmMWY2IiwiTTQxLTI0LjljLTkuNC05LjQtMjQuNi05LjQtMzMuOSAwUy0yLjMtLjMgNyA5LjFsNTI4IDUyOGM5LjQgOS40IDI0LjYgOS40IDMzLjkgMHM5LjQtMjQuNiAwLTMzLjlsLTg3LjgtODcuOGMxNy41LTMuMyAzMC44LTE4LjcgMzAuOC0zNy4xIDAtNi43LTEuOC0xMy4zLTUuMS0xOUw0ODUgMzIxLjdjLTE5LTMyLjYtMjktNjkuNi0yOS0xMDcuM2wwLTE0LjVjMC04NC42LTYyLjYtMTU0LjctMTQ0LTE2Ni4zbDAtOS43YzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0bDAgOS43Yy00Mi4yIDYtNzkuNCAyNy44LTEwNS40IDU5LjFMNDEtMjQuOXpNMTkyLjggMTI2LjlDMjE0LjcgOTguNCAyNDkuMiA4MCAyODggODAgMzU0LjMgODAgNDA4IDEzMy43IDQwOCAyMDBsMCAxNC41YzAgNDYuMiAxMi4zIDkxLjUgMzUuNSAxMzEuNGwxMi45IDIyLjEtMjIuNiAwLTI0MS4xLTI0MS4xek0xMzIuNSAzNDUuOWMxOS41LTMzLjQgMzEuMy03MC43IDM0LjYtMTA5bC00Ni43LTQ2LjdjLS4yIDMuMy0uMyA2LjYtLjMgOS45bDAgMTQuNWMwIDM3LjctMTAgNzQuNy0yOSAxMDcuM0w2OS4xIDM1OS4yYy0zLjQgNS44LTUuMSAxMi4zLTUuMSAxOSAwIDIwLjkgMTYuOSAzNy44IDM3LjggMzcuOGwyNDQuNCAwLTQ4LTQ4LTE3OC42IDAgMTIuOS0yMi4xek0yMjAuMSA0NjRjOS45IDI4IDM2LjYgNDggNjcuOSA0OHM1OC0yMCA2Ny45LTQ4bC0xMzUuOCAweiJdfSxvNHI9e3ByZWZpeDoiZmFyIixpY29uTmFtZToic3RhciIsaWNvbjpbNTc2LDUxMixbMTEwODgsNjE0NDZdLCJmMDA1IiwiTTI4OC4xLTMyYzkgMCAxNy4zIDUuMSAyMS40IDEzLjFMMzgzIDEyNS4zIDU0Mi45IDE1MC43YzguOSAxLjQgMTYuMyA3LjcgMTkuMSAxNi4zcy41IDE4LTUuOCAyNC40TDQ0MS43IDMwNS45IDQ2NyA0NjUuOGMxLjQgOC45LTIuMyAxNy45LTkuNiAyMy4ycy0xNyA2LjEtMjUgMkwyODguMSA0MTcuNiAxNDMuOCA0OTFjLTggNC4xLTE3LjcgMy4zLTI1LTJzLTExLTE0LjItOS42LTIzLjJMMTM0LjQgMzA1LjkgMjAgMTkxLjRjLTYuNC02LjQtOC42LTE1LjgtNS44LTI0LjRzMTAuMS0xNC45IDE5LjEtMTYuM2wxNTkuOS0yNS40IDczLjYtMTQ0LjJjNC4xLTggMTIuNC0xMy4xIDIxLjQtMTMuMXptMCA3Ni44TDIzMC4zIDE1OGMtMy41IDYuOC0xMCAxMS42LTE3LjYgMTIuOGwtMTI1LjUgMjAgODkuOCA4OS45YzUuNCA1LjQgNy45IDEzLjEgNi43IDIwLjdsLTE5LjggMTI1LjUgMTEzLjMtNTcuNmM2LjgtMy41IDE0LjktMy41IDIxLjggMGwxMTMuMyA1Ny42LTE5LjgtMTI1LjVjLTEuMi03LjYgMS4zLTE1LjMgNi43LTIwLjdsODkuOC04OS45LTEyNS41LTIwYy03LjYtMS4yLTE0LjEtNi0xNy42LTEyLjhMMjg4LjEgNDQuOHoiXX0sbjRyPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImZsYWciLGljb246WzQ0OCw1MTIsWzEyNzk4OCw2MTcyNV0sImYwMjQiLCJNNDggMjRDNDggMTAuNyAzNy4zIDAgMjQgMFMwIDEwLjcgMCAyNEwwIDQ4OGMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtMTAwIDgwLjMtMjAuMWM0MS4xLTEwLjMgODQuNi01LjUgMTIyLjUgMTMuNCA0NC4yIDIyLjEgOTUuNSAyNC44IDE0MS43IDcuNGwzNC43LTEzYzEyLjUtNC43IDIwLjgtMTYuNiAyMC44LTMwbDAtMjc5LjdjMC0yMy0yNC4yLTM4LTQ0LjgtMjcuN2wtOS42IDQuOGMtNDYuMyAyMy4yLTEwMC44IDIzLjItMTQ3LjEgMC0zNS4xLTE3LjYtNzUuNC0yMi0xMTMuNS0xMi41TDQ4IDUyIDQ4IDI0em0wIDc3LjVsOTYuNi0yNC4yYzI3LTYuNyA1NS41LTMuNiA4MC40IDguOCA1NC45IDI3LjQgMTE4LjcgMjkuNyAxNzUgNi44bDAgMjQxLjgtMjQuNCA5LjFjLTMzLjcgMTIuNi03MS4yIDEwLjctMTAzLjQtNS40LTQ4LjItMjQuMS0xMDMuMy0zMC4xLTE1NS42LTE3LjFsLTY4LjYgMTcuMiAwLTIzN3oiXX0sczRyPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImxlbW9uIixpY29uOls0NDgsNTEyLFsxMjc4MTldLCJmMDk0IiwiTTM2OCA4MGMtMy4yIDAtNi4yIC40LTguOSAxLjMtMTkuMSA1LjUtNDYuMSAxMC43LTc0LjMgMy4zLTU3LjQtMTQuOS0xMjQuNiA3LjQtMTc0LjcgNTcuNVMzNy43IDI1OS40IDUyLjYgMzE2LjhjNy4zIDI4LjIgMi4yIDU1LjItMy4zIDc0LjMtLjggMi44LTEuMyA1LjgtMS4zIDguOSAwIDE3LjcgMTQuMyAzMiAzMiAzMiAzLjIgMCA2LjItLjQgOC45LTEuMyAxOS4xLTUuNSA0Ni4xLTEwLjcgNzQuMy0zLjMgNTcuNCAxNC45IDEyNC42LTcuNCAxNzQuNy01Ny41czcyLjQtMTE3LjMgNTcuNS0xNzQuN2MtNy4zLTI4LjItMi4yLTU1LjIgMy4zLTc0LjMgLjgtMi44IDEuMy01LjggMS4zLTguOSAwLTE3LjctMTQuMy0zMi0zMi0zMnptMC00OGM0NC4yIDAgODAgMzUuOCA4MCA4MCAwIDcuNy0xLjEgMTUuMi0zLjEgMjIuMy00LjYgMTUuOC03LjEgMzIuOS0zIDQ4LjkgMjAuMSA3Ny42LTEwLjkgMTYxLjUtNzAgMjIwLjdzLTE0My4xIDkwLjItMjIwLjcgNzBjLTE2LTQuMS0zMy0xLjYtNDguOSAzLTcuMSAyLTE0LjYgMy4xLTIyLjMgMy4xLTQ0LjIgMC04MC0zNS44LTgwLTgwIDAtNy43IDEuMS0xNS4yIDMuMS0yMi4zIDQuNi0xNS44IDcuMS0zMi45IDMtNDguOS0yMC4xLTc3LjYgMTAuOS0xNjEuNSA3MC0yMjAuN1MyMTkuMyAxOCAyOTYuOCAzOC4xYzE2IDQuMSAzMyAxLjYgNDguOS0zIDcuMS0yIDE0LjYtMy4xIDIyLjMtMy4xek0yNDYuNyAxNjdjLTUyIDE1LjItOTYuNSA1OS43LTExMS43IDExMS43LTMuNyAxMi43LTE3LjEgMjAtMjkuOCAxNi4zUzg1LjIgMjc4IDg5IDI2NS4zYzE5LjgtNjcuNyA3Ni42LTEyNC41IDE0NC4zLTE0NC4zIDEyLjctMy43IDI2LjEgMy42IDI5LjggMTYuM3MtMy42IDI2LjEtMTYuMyAyOS44eiJdfSxsNHI9e3ByZWZpeDoiZmFyIixpY29uTmFtZToid2luZG93LXJlc3RvcmUiLGljb246WzU3Niw1MTIsW10sImYyZDIiLCJNNTEyIDgwTDIyNCA4MGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMTYtNDggMCAwLTE2YzAtMzUuMyAyOC43LTY0IDY0LTY0bDI4OCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMTkyYzAgMzUuMy0yOC43IDY0LTY0IDY0bC00OCAwIDAtNDggNDggMGM4LjggMCAxNi03LjIgMTYtMTZsMC0xOTJjMC04LjgtNy4yLTE2LTE2LTE2ek0zNjggMjg4bC0zMjAgMCAwIDEyOGMwIDguOCA3LjIgMTYgMTYgMTZsMjg4IDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMTI4ek02NCAxNjBsMjg4IDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAxOTJjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDIyNGMwLTM1LjMgMjguNy02NCA2NC02NHoiXX0sYnplPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImZhY2UtZ3Jpbi1oZWFydHMiLGljb246WzUxMiw1MTIsWzEyODUyNSwiZ3Jpbi1oZWFydHMiXSwiZjU4NCIsIk00NjQgMjU2YzAgMTE0LjktOTMuMSAyMDgtMjA4IDIwOFM0OCAzNzAuOSA0OCAyNTZjMC0zLjUgLjEtNy4xIC4zLTEwLjYtMTQtMTMuOS0yOS43LTMzLjEtMzkuMy01Ni43LTUuOCAyMS40LTguOSA0NC04LjkgNjcuMyAwIDE0MS40IDExNC42IDI1NiAyNTYgMjU2UzUxMiAzOTcuNCA1MTIgMjU2YzAtMjMuMy0zLjEtNDUuOS04LjktNjcuMy05LjYgMjMuNy0yNS40IDQyLjgtMzkuMyA1Ni43IC4yIDMuNSAuMyA3IC4zIDEwLjZ6TTM2OCA1OC45YzExLjctNiAyNC41LTkuNiAzNy43LTEwLjYtNDIuMS0zMC40LTkzLjgtNDguMy0xNDkuNy00OC4zUzE0OC40IDE3LjkgMTA2LjMgNDguM2MxMy4yIDEgMjYgNC42IDM3LjcgMTAuNiAxMy44LTcuMSAyOS4zLTEwLjkgNDUuMS0xMC45bDIuOSAwYzguOSAwIDE3LjYgMS4yIDI1LjggMy41IDEyLjQtMi4zIDI1LjItMy41IDM4LjItMy41czI1LjggMS4yIDM4LjIgMy41YzguMi0yLjMgMTYuOS0zLjUgMjUuOC0zLjVsMi45IDBjMTUuOCAwIDMxLjMgMy44IDQ1LjEgMTAuOXptNC4yIDI0My40Yy0zNC44IDEwLjYtNzQuMyAxNi42LTExNi4zIDE2LjYtNDEuOSAwLTgxLjQtNi0xMTYuMS0xNi41LTExLjgtMy42LTIzLjcgNi4xLTE5LjYgMTcuOCAxOS44IDU1LjkgNzMuMSA5NS45IDEzNS44IDk1LjkgNjIuNyAwIDExNi00MC4xIDEzNS44LTk2IDQuMS0xMS42LTcuOC0yMS40LTE5LjYtMTcuOHpNMzIyLjkgOTZMMzIwIDk2Yy0yNi41IDAtNDggMjEuNS00OCA0OCAwIDUzLjQgNjYuOSA5NS43IDg5IDEwOC4yIDQuNCAyLjUgOS42IDIuNSAxNCAwIDIyLjEtMTIuNSA4OS01NC44IDg5LTEwOC4yIDAtMjYuNS0yMS41LTQ4LTQ4LTQ4bC0yLjkgMGMtMTMuNSAwLTI2LjUgNS40LTM2IDE0LjlsLTkuMSA5LjEtOS4xLTkuMWMtOS41LTkuNS0yMi41LTE0LjktMzYtMTQuOXptLTE4OCAxNC45Yy05LjUtOS41LTIyLjUtMTQuOS0zNi0xNC45TDk2IDk2Yy0yNi41IDAtNDggMjEuNS00OCA0OCAwIDUzLjQgNjYuOSA5NS43IDg5IDEwOC4yIDQuNCAyLjUgOS42IDIuNSAxNCAwIDIyLjEtMTIuNSA4OS01NC44IDg5LTEwOC4yIDAtMjYuNS0yMS41LTQ4LTQ4LTQ4bC0yLjkgMGMtMTMuNSAwLTI2LjUgNS40LTM2IDE0LjlsLTkuMSA5LjEtOS4xLTkuMXoiXX0sYzRyPWJ6ZSx2emU9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiZmFjZS1raXNzLWJlYW0iLGljb246WzUxMiw1MTIsWzEyODUzNywia2lzcy1iZWFtIl0sImY1OTciLCJNNDY0IDI1NmEyMDggMjA4IDAgMSAwIC00MTYgMCAyMDggMjA4IDAgMSAwIDQxNiAwek0wIDI1NmEyNTYgMjU2IDAgMSAxIDUxMiAwIDI1NiAyNTYgMCAxIDEgLTUxMiAwem0yNDAgMTZsMzIgMGMyNi41IDAgNDggMjEuNSA0OCA0OCAwIDEyLjMtNC42IDIzLjUtMTIuMiAzMiA3LjYgOC41IDEyLjIgMTkuNyAxMi4yIDMyIDAgMjYuNS0yMS41IDQ4LTQ4IDQ4bC0zMiAwYy04LjggMC0xNi03LjItMTYtMTZzNy4yLTE2IDE2LTE2bDE2IDBjOC44IDAgMTYtNy4yIDE2LTE2cy03LjItMTYtMTYtMTZsLTE2IDBjLTguOCAwLTE2LTcuMi0xNi0xNnM3LjItMTYgMTYtMTZsMTYgMGM4LjggMCAxNi03LjIgMTYtMTZzLTcuMi0xNi0xNi0xNmwtMTYgMGMtOC44IDAtMTYtNy4yLTE2LTE2czcuMi0xNiAxNi0xNnptLTY0LTkyYy0xNS41IDAtMjggMTIuNS0yOCAyOGwwIDhjMCAxMS05IDIwLTIwIDIwcy0yMC05LTIwLTIwbDAtOGMwLTM3LjYgMzAuNC02OCA2OC02OHM2OCAzMC40IDY4IDY4bDAgOGMwIDExLTkgMjAtMjAgMjBzLTIwLTktMjAtMjBsMC04YzAtMTUuNS0xMi41LTI4LTI4LTI4em0xMzIgMjhsMCA4YzAgMTEtOSAyMC0yMCAyMHMtMjAtOS0yMC0yMGwwLThjMC0zNy42IDMwLjQtNjggNjgtNjhzNjggMzAuNCA2OCA2OGwwIDhjMCAxMS05IDIwLTIwIDIwcy0yMC05LTIwLTIwbDAtOGMwLTE1LjUtMTIuNS0yOC0yOC0yOHMtMjggMTIuNS0yOCAyOHoiXX0sZDRyPXZ6ZSx1NHI9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiZmlsZS1wZGYiLGljb246WzU3Niw1MTIsW10sImYxYzEiLCJNMjA4IDQ4TDk2IDQ4Yy04LjggMC0xNiA3LjItMTYgMTZsMCAzODRjMCA4LjggNy4yIDE2IDE2IDE2bDgwIDAgMCA0OC04MCAwYy0zNS4zIDAtNjQtMjguNy02NC02NEwzMiA2NEMzMiAyOC43IDYwLjcgMCA5NiAwTDIyOS41IDBjMTcgMCAzMy4zIDYuNyA0NS4zIDE4LjdMMzk3LjMgMTQxLjNjMTIgMTIgMTguNyAyOC4zIDE4LjcgNDUuM2wwIDE0OS41LTQ4IDAgMC0xMjgtODggMGMtMzkuOCAwLTcyLTMyLjItNzItNzJsMC04OHpNMzQ4LjEgMTYwTDI1NiA2Ny45IDI1NiAxMzZjMCAxMy4zIDEwLjcgMjQgMjQgMjRsNjguMSAwek0yNDAgMzgwbDMyIDBjMzMuMSAwIDYwIDI2LjkgNjAgNjBzLTI2LjkgNjAtNjAgNjBsLTEyIDAgMCAyOGMwIDExLTkgMjAtMjAgMjBzLTIwLTktMjAtMjBsMC0xMjhjMC0xMSA5LTIwIDIwLTIwem0zMiA4MGMxMSAwIDIwLTkgMjAtMjBzLTktMjAtMjAtMjBsLTEyIDAgMCA0MCAxMiAwem05Ni04MGwzMiAwYzI4LjcgMCA1MiAyMy4zIDUyIDUybDAgNjRjMCAyOC43LTIzLjMgNTItNTIgNTJsLTMyIDBjLTExIDAtMjAtOS0yMC0yMGwwLTEyOGMwLTExIDktMjAgMjAtMjB6bTMyIDEyOGM2LjYgMCAxMi01LjQgMTItMTJsMC02NGMwLTYuNi01LjQtMTItMTItMTJsLTEyIDAgMCA4OCAxMiAwem03Ni0xMDhjMC0xMSA5LTIwIDIwLTIwbDQ4IDBjMTEgMCAyMCA5IDIwIDIwcy05IDIwLTIwIDIwbC0yOCAwIDAgMjQgMjggMGMxMSAwIDIwIDkgMjAgMjBzLTkgMjAtMjAgMjBsLTI4IDAgMCA0NGMwIDExLTkgMjAtMjAgMjBzLTIwLTktMjAtMjBsMC0xMjh6Il19LHl6ZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJmYWNlLWdyaW4td2lkZSIsaWNvbjpbNTEyLDUxMixbMTI4NTE1LCJncmluLWFsdCJdLCJmNTgxIiwiTTQ2NCAyNTZhMjA4IDIwOCAwIDEgMCAtNDE2IDAgMjA4IDIwOCAwIDEgMCA0MTYgMHpNMCAyNTZhMjU2IDI1NiAwIDEgMSA1MTIgMCAyNTYgMjU2IDAgMSAxIC01MTIgMHptMzcyLjIgNDYuM2MxMS44LTMuNiAyMy43IDYuMSAxOS42IDE3LjgtMTkuOCA1NS45LTczLjEgOTYtMTM1LjggOTYtNjIuNyAwLTExNi00MC0xMzUuOC05NS45LTQuMS0xMS42IDcuOC0yMS40IDE5LjYtMTcuOCAzNC43IDEwLjYgNzQuMiAxNi41IDExNi4xIDE2LjUgNDIgMCA4MS41LTYgMTE2LjMtMTYuNnpNMjI0IDE5MmMwIDM1LjMtMTQuMyA2NC0zMiA2NHMtMzItMjguNy0zMi02NCAxNC4zLTY0IDMyLTY0IDMyIDI4LjcgMzIgNjR6bTk2IDY0Yy0xNy43IDAtMzItMjguNy0zMi02NHMxNC4zLTY0IDMyLTY0IDMyIDI4LjcgMzIgNjQtMTQuMyA2NC0zMiA2NHoiXX0sZjRyPXl6ZSx3emU9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiZmFjZS1sYXVnaC1zcXVpbnQiLGljb246WzUxMiw1MTIsWyJsYXVnaC1zcXVpbnQiXSwiZjU5YiIsIk00NjQgMjU2YTIwOCAyMDggMCAxIDAgLTQxNiAwIDIwOCAyMDggMCAxIDAgNDE2IDB6TTAgMjU2YTI1NiAyNTYgMCAxIDEgNTEyIDAgMjU2IDI1NiAwIDEgMSAtNTEyIDB6bTEyNS4yIDc2LjRjLTYuNS0xNCA1LTI4LjQgMjAuNC0yOC40bDIyMC44IDBjMTUuNCAwIDI2LjggMTQuNCAyMC40IDI4LjQtMjIuOCA0OS40LTcyLjggODMuNi0xMzAuOCA4My42cy0xMDcuOS0zNC4yLTEzMC44LTgzLjZ6bS0yLjYtMTczLjJjNC41LTYuOCAxMy4zLTkuMiAyMC42LTUuNWw3OS42IDQwYzUuNCAyLjcgOC44IDguMiA4LjggMTQuM3MtMy40IDExLjYtOC44IDE0LjNsLTc5LjYgNDBjLTcuMyAzLjYtMTYuMSAxLjMtMjAuNi01LjVzLTMuMS0xNS45IDMuMS0yMS4xTDE1OSAyMDggMTI1LjggMTgwLjNjLTYuMi01LjItNy42LTE0LjMtMy4xLTIxLjF6bTI2My42IDIxLjFMMzUzIDIwOCAzODYuMiAyMzUuN2M2LjIgNS4yIDcuNiAxNC4zIDMuMSAyMS4xcy0xMy4zIDkuMi0yMC42IDUuNWwtNzkuNi00MGMtNS40LTIuNy04LjgtOC4yLTguOC0xNC4zczMuNC0xMS42IDguOC0xNC4zbDc5LjYtNDBjNy4zLTMuNiAxNi4xLTEuMyAyMC42IDUuNXMzLjEgMTUuOS0zLjEgMjEuMXoiXX0scDRyPXd6ZSxNemU9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiZmFjZS1raXNzLXdpbmstaGVhcnQiLGljb246WzY0MCw1MTIsWzEyODUzNiwia2lzcy13aW5rLWhlYXJ0Il0sImY1OTgiLCJNMzg2IDQzOS41Yy0yOS4yIDE1LjYtNjIuNSAyNC41LTk4IDI0LjUtMTE0LjkgMC0yMDgtOTMuMS0yMDgtMjA4UzE3My4yIDQ4IDI4OCA0OGMxMTMuMiAwIDIwNS4yIDkwLjQgMjA3LjkgMjAyLjkgMTQuMyAxLjUgMjguNiA2IDQxLjkgMTMuNyAyIDEuMiA0IDIuNCA1LjkgMy43IC4yLTQuMSAuMy04LjIgLjMtMTIuMyAwLTE0MS40LTExNC42LTI1Ni0yNTYtMjU2UzMyIDExNC42IDMyIDI1NiAxNDYuNiA1MTIgMjg4IDUxMmM0MS40IDAgODAuNS05LjggMTE1LjEtMjcuMy01LjgtMTIuOS0xMi0yOC41LTE3LjItNDUuMnpNMjU2IDI4OGMwIDguOCA3LjIgMTYgMTYgMTZsMTYgMGM4LjggMCAxNiA3LjIgMTYgMTZzLTcuMiAxNi0xNiAxNmwtMTYgMGMtOC44IDAtMTYgNy4yLTE2IDE2czcuMiAxNiAxNiAxNmwxNiAwYzguOCAwIDE2IDcuMiAxNiAxNnMtNy4yIDE2LTE2IDE2bC0xNiAwYy04LjggMC0xNiA3LjItMTYgMTZzNy4yIDE2IDE2IDE2bDMyIDBjMjYuNSAwIDQ4LTIxLjUgNDgtNDggMC0xMi4zLTQuNi0yMy41LTEyLjItMzIgNy42LTguNSAxMi4yLTE5LjcgMTIuMi0zMiAwLTI2LjUtMjEuNS00OC00OC00OGwtMzIgMGMtOC44IDAtMTYgNy4yLTE2IDE2em0tNDgtNDhhMzIgMzIgMCAxIDAgMC02NCAzMiAzMiAwIDEgMCAwIDY0em0xNTItNDRsMTYgMGMxMSAwIDIwIDkgMjAgMjBzOSAyMCAyMCAyMCAyMC05IDIwLTIwYzAtMzMuMS0yNi45LTYwLTYwLTYwbC0xNiAwYy0zMy4xIDAtNjAgMjYuOS02MCA2MCAwIDExIDkgMjAgMjAgMjBzMjAtOSAyMC0yMCA5LTIwIDIwLTIwek01NDIuOCAzNTBjLTIuMi0xOC4zLTEyLjktMzQuNi0yOC45LTQzLjgtMjguMS0xNi4yLTYzLjktNi42LTgwLjEgMjEuNWwtMi43IDQuNmMtMjQuNSA0Mi41IDcuOSAxMTcuOSAyNC40IDE1MC44IDUuMSAxMC4xIDE1LjUgMTYuMSAyNi44IDE1LjUgMzYuNy0yLjIgMTE4LjItMTEuNyAxNDIuOC01NC4ybDIuNy00LjZjMTYuMi0yOC4xIDYuNi02My45LTIxLjUtODAuMS0xNi05LjItMzUuNC0xMC40LTUyLjQtMy4xbC05LjggNC4yLTEuMy0xMC42eiJdfSxoNHI9TXplLGUyZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJjb3B5IixpY29uOls0NDgsNTEyLFtdLCJmMGM1IiwiTTM4NCAzMzZsLTE5MiAwYy04LjggMC0xNi03LjItMTYtMTZsMC0yNTZjMC04LjggNy4yLTE2IDE2LTE2bDEzMy41IDBjNC4yIDAgOC4zIDEuNyAxMS4zIDQuN2w1OC41IDU4LjVjMyAzIDQuNyA3LjEgNC43IDExLjNMNDAwIDMyMGMwIDguOC03LjIgMTYtMTYgMTZ6TTE5MiAzODRsMTkyIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0xOTcuNWMwLTE3LTYuNy0zMy4zLTE4LjctNDUuM0wzNzAuNyAxOC43QzM1OC43IDYuNyAzNDIuNSAwIDMyNS41IDBMMTkyIDBjLTM1LjMgMC02NCAyOC43LTY0IDY0bDAgMjU2YzAgMzUuMyAyOC43IDY0IDY0IDY0ek02NCAxMjhjLTM1LjMgMC02NCAyOC43LTY0IDY0TDAgNDQ4YzAgMzUuMyAyOC43IDY0IDY0IDY0bDE5MiAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMTYtNDggMCAwIDE2YzAgOC44LTcuMiAxNi0xNiAxNkw2NCA0NjRjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTI1NmMwLTguOCA3LjItMTYgMTYtMTZsMTYgMCAwLTQ4LTE2IDB6Il19LG00cj17cHJlZml4OiJmYXIiLGljb25OYW1lOiJjaGVzcy1raW5nIixpY29uOls0NDgsNTEyLFs5ODE4XSwiZjQzZiIsIk0yMjQtMzJjMTMuMyAwIDI0IDEwLjcgMjQgMjRsMCA0MCA0OCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC00OCAwIDAgODAgMTYxLjggMGMyMS4xIDAgMzguMiAxNy4xIDM4LjIgMzguMiAwIDYuNC0xLjYgMTIuNy00LjcgMTguM0wzNTcuMiAzNzQuNSA0MDUuNiA0MzVjNi43IDguNCAxMC40IDE4LjggMTAuNCAyOS42IDAgMjYuMi0yMS4yIDQ3LjQtNDcuNCA0Ny40TDc5LjQgNTEyYy0yNi4yIDAtNDcuNC0yMS4yLTQ3LjQtNDcuNCAwLTEwLjggMy43LTIxLjIgMTAuNC0yOS42TDkwLjggMzc0LjUgNC43IDIxNi42QzEuNiAyMTAuOSAwIDIwNC42IDAgMTk4LjIgMCAxNzcuMSAxNy4xIDE2MCAzOC4yIDE2MGwxNjEuOCAwIDAtODAtNDggMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNGw0OCAwIDAtNDBjMC0xMy4zIDEwLjctMjQgMjQtMjR6TTEzMS44IDQwMGwtMy42IDQuNC00Ny42IDU5LjYgMjg2LjYgMC00Ny42LTU5LjYtMy42LTQuNC0xODQuMyAwem0xLjEtNDguNWwuMyAuNSAxODEuNiAwIC4zLS41IDc4LjMtMTQzLjUtMzM4LjcgMCA3OC4zIDE0My41eiJdfSxremU9e3ByZWZpeDoiZmFyIixpY29uTmFtZToic3F1YXJlLXBsdXMiLGljb246WzQ0OCw1MTIsWzYxODQ2LCJwbHVzLXNxdWFyZSJdLCJmMGZlIiwiTTY0IDgwYy04LjggMC0xNiA3LjItMTYgMTZsMCAzMjBjMCA4LjggNy4yIDE2IDE2IDE2bDMyMCAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyMGMwLTguOC03LjItMTYtMTYtMTZMNjQgODB6TTAgOTZDMCA2MC43IDI4LjcgMzIgNjQgMzJsMzIwIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAzMjBjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDk2ek0yMDAgMzQ0bDAtNjQtNjQgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNGw2NCAwIDAtNjRjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNGwwIDY0IDY0IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTY0IDAgMCA2NGMwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNHoiXX0sZzRyPWt6ZSx4NHI9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiZmlsZS1jb2RlIixpY29uOlszODQsNTEyLFtdLCJmMWM5IiwiTTY0IDQ4bDExMiAwIDAgODhjMCAzOS44IDMyLjIgNzIgNzIgNzJsODggMCAwIDI0MGMwIDguOC03LjIgMTYtMTYgMTZMNjQgNDY0Yy04LjggMC0xNi03LjItMTYtMTZMNDggNjRjMC04LjggNy4yLTE2IDE2LTE2ek0yMjQgNjcuOWw5Mi4xIDkyLjEtNjguMSAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNGwwLTY4LjF6TTY0IDBDMjguNyAwIDAgMjguNyAwIDY0TDAgNDQ4YzAgMzUuMyAyOC43IDY0IDY0IDY0bDI1NiAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMjYxLjVjMC0xNy02LjctMzMuMy0xOC43LTQ1LjNMMjQyLjcgMTguN0MyMzAuNyA2LjcgMjE0LjUgMCAxOTcuNSAwTDY0IDB6TTE3MC4yIDI5NS42YzguNi0xMC4xIDcuNS0yNS4yLTIuNi0zMy44cy0yNS4yLTcuNS0zMy44IDIuNmwtNDggNTZjLTcuNyA5LTcuNyAyMi4yIDAgMzEuMmw0OCA1NmM4LjYgMTAuMSAyMy44IDExLjIgMzMuOCAyLjZzMTEuMi0yMy44IDIuNi0zMy44bC0zNC42LTQwLjQgMzQuNi00MC40em04MC0zMS4yYy04LjYtMTAuMS0yMy44LTExLjItMzMuOC0yLjZzLTExLjIgMjMuOC0yLjYgMzMuOGwzNC42IDQwLjQtMzQuNiA0MC40Yy04LjYgMTAuMS03LjUgMjUuMiAyLjYgMzMuOHMyNS4yIDcuNSAzMy44LTIuNmw0OC01NmM3LjctOSA3LjctMjIuMiAwLTMxLjJsLTQ4LTU2eiJdfSxTemU9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiZmFjZS1ncmluLXdpbmsiLGljb246WzUxMiw1MTIsWyJncmluLXdpbmsiXSwiZjU4YyIsIk00NjQgMjU2YTIwOCAyMDggMCAxIDAgLTQxNiAwIDIwOCAyMDggMCAxIDAgNDE2IDB6TTAgMjU2YTI1NiAyNTYgMCAxIDEgNTEyIDAgMjU2IDI1NiAwIDEgMSAtNTEyIDB6bTM3Mi4yIDQ2LjNjMTEuOC0zLjYgMjMuNyA2LjEgMTkuNiAxNy44LTE5LjggNTUuOS03My4xIDk2LTEzNS44IDk2LTYyLjcgMC0xMTYtNDAtMTM1LjgtOTUuOS00LjEtMTEuNiA3LjgtMjEuNCAxOS42LTE3LjggMzQuNyAxMC42IDc0LjIgMTYuNSAxMTYuMSAxNi41IDQyIDAgODEuNS02IDExNi4zLTE2LjZ6TTE0NCAyMDhhMzIgMzIgMCAxIDEgNjQgMCAzMiAzMiAwIDEgMSAtNjQgMHptMTY0IDhjMCAxMS05IDIwLTIwIDIwcy0yMC05LTIwLTIwYzAtMzMuMSAyNi45LTYwIDYwLTYwbDE2IDBjMzMuMSAwIDYwIDI2LjkgNjAgNjAgMCAxMS05IDIwLTIwIDIwcy0yMC05LTIwLTIwLTktMjAtMjAtMjBsLTE2IDBjLTExIDAtMjAgOS0yMCAyMHoiXX0sYjRyPVN6ZSx6emU9e3ByZWZpeDoiZmFyIixpY29uTmFtZToibW9uZXktYmlsbC0xIixpY29uOls1MTIsNTEyLFsibW9uZXktYmlsbC1hbHQiXSwiZjNkMSIsIk0xMTIgMTEyYzAgMzUuMy0yOC43IDY0LTY0IDY0bDAgMTYwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDI4OCAwYzAtMzUuMyAyOC43LTY0IDY0LTY0bDAtMTYwYy0zNS4zIDAtNjQtMjguNy02NC02NGwtMjg4IDB6TTAgMTI4QzAgOTIuNyAyOC43IDY0IDY0IDY0bDM4NCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMjU2YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDQ0OGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCAxMjh6bTI1NiAxNmExMTIgMTEyIDAgMSAxIDAgMjI0IDExMiAxMTIgMCAxIDEgMC0yMjR6bS0xNiA0NGMtMTEgMC0yMCA5LTIwIDIwIDAgOS43IDYuOSAxNy43IDE2IDE5LjZsMCA0OC40LTQgMGMtMTEgMC0yMCA5LTIwIDIwczkgMjAgMjAgMjBsNDggMGMxMSAwIDIwLTkgMjAtMjBzLTktMjAtMjAtMjBsLTQgMCAwLTY4YzAtMTEtOS0yMC0yMC0yMGwtMTYgMHoiXX0sdjRyPXp6ZSx5NHI9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiZXllLXNsYXNoIixpY29uOls1NzYsNTEyLFtdLCJmMDcwIiwiTTQxLTI0LjljLTkuNC05LjQtMjQuNi05LjQtMzMuOSAwUy0yLjMtLjMgNyA5LjFsNTI4IDUyOGM5LjQgOS40IDI0LjYgOS40IDMzLjkgMHM5LjQtMjQuNiAwLTMzLjlsLTk2LjQtOTYuNGMyLjctMi40IDUuNC00LjggOC03LjIgNDYuOC00My41IDc4LjEtOTUuNCA5My0xMzEuMSAzLjMtNy45IDMuMy0xNi43IDAtMjQuNi0xNC45LTM1LjctNDYuMi04Ny43LTkzLTEzMS4xLTQ3LjEtNDMuNy0xMTEuOC04MC42LTE5Mi42LTgwLjYtNTYuOCAwLTEwNS42IDE4LjItMTQ2IDQ0LjJMNDEtMjQuOXpNMTc2LjkgMTExLjFjMzIuMS0xOC45IDY5LjItMzEuMSAxMTEuMS0zMS4xIDY1LjIgMCAxMTguOCAyOS42IDE1OS45IDY3LjcgMzguNSAzNS43IDY1LjEgNzguMyA3OC42IDEwOC4zLTEzLjYgMzAtNDAuMiA3Mi41LTc4LjYgMTA4LjMtMy4xIDIuOC02LjIgNS42LTkuNCA4LjRMMzkzLjggMzI4YzE0LTIwLjUgMjIuMi00NS4zIDIyLjItNzIgMC03MC43LTU3LjMtMTI4LTEyOC0xMjgtMjYuNyAwLTUxLjUgOC4yLTcyIDIyLjJsLTM5LjEtMzkuMXptMTgyIDE4MmwtMTA4LTEwOGMxMS4xLTUuOCAyMy43LTkuMSAzNy4xLTkuMSA0NC4yIDAgODAgMzUuOCA4MCA4MCAwIDEzLjQtMy4zIDI2LTkuMSAzNy4xek0xMDMuNCAxNzMuMmwtMzQtMzRjLTMyLjYgMzYuOC01NSA3NS44LTY2LjkgMTA0LjUtMy4zIDcuOS0zLjMgMTYuNyAwIDI0LjYgMTQuOSAzNS43IDQ2LjIgODcuNyA5MyAxMzEuMSA0Ny4xIDQzLjcgMTExLjggODAuNiAxOTIuNiA4MC42IDM3LjMgMCA3MS4yLTcuOSAxMDEuNS0yMC42TDM1Mi4yIDQyMmMtMjAgNi40LTQxLjQgMTAtNjQuMiAxMC02NS4yIDAtMTE4LjgtMjkuNi0xNTkuOS02Ny43LTM4LjUtMzUuNy02NS4xLTc4LjMtNzguNi0xMDguMyAxMC40LTIzLjEgMjguNi01My42IDU0LTgyLjh6Il19LHc0cj17cHJlZml4OiJmYXIiLGljb25OYW1lOiJmaWxlLXdvcmQiLGljb246WzM4NCw1MTIsW10sImYxYzIiLCJNNjQgNDhsMTEyIDAgMCA4OGMwIDM5LjggMzIuMiA3MiA3MiA3Mmw4OCAwIDAgMjQwYzAgOC44LTcuMiAxNi0xNiAxNkw2NCA0NjRjLTguOCAwLTE2LTcuMi0xNi0xNkw0OCA2NGMwLTguOCA3LjItMTYgMTYtMTZ6TTIyNCA2Ny45bDkyLjEgOTIuMS02OC4xIDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0bDAtNjguMXpNNjQgMEMyOC43IDAgMCAyOC43IDAgNjRMMCA0NDhjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMjU2IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0yNjEuNWMwLTE3LTYuNy0zMy4zLTE4LjctNDUuM0wyNDIuNyAxOC43QzIzMC43IDYuNyAyMTQuNSAwIDE5Ny41IDBMNjQgMHptNzEuMyAyNzQuMmMtMy4yLTEyLjktMTYuMi0yMC43LTI5LjEtMTcuNVM4NS41IDI3MyA4OC43IDI4NS44bDMyIDEyOGMyLjUgMTAuMiAxMS40IDE3LjUgMjEuOSAxOC4xczIwLjEtNS43IDIzLjgtMTUuNWwyNS41LTY4LjEgMjUuNSA2OC4xYzMuNyA5LjggMTMuMyAxNi4xIDIzLjggMTUuNXMxOS40LTcuOSAyMS45LTE4LjFsMzItMTI4YzMuMi0xMi45LTQuNi0yNS45LTE3LjUtMjkuMXMtMjUuOSA0LjYtMjkuMSAxNy41bC0xMy4zIDUzLjItMjAuOS01NS44QzIxMSAyNjIuMiAyMDIgMjU2IDE5MiAyNTZzLTE5IDYuMi0yMi41IDE1LjZsLTIwLjkgNTUuOC0xMy4zLTUzLjJ6Il19LEN6ZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJmYWNlLWFuZ3J5IixpY29uOls1MTIsNTEyLFsxMjg1NDQsImFuZ3J5Il0sImY1NTYiLCJNMjU2IDQ4YTIwOCAyMDggMCAxIDEgMCA0MTYgMjA4IDIwOCAwIDEgMSAwLTQxNnptMCA0NjRhMjU2IDI1NiAwIDEgMCAwLTUxMiAyNTYgMjU2IDAgMSAwIDAgNTEyem0wLTE0NGMyNC4xIDAgNDUuNCAxMS44IDU4LjUgMzAgNy43IDEwLjggMjIuNyAxMy4yIDMzLjUgNS41czEzLjItMjIuNyA1LjUtMzMuNWMtMjEuNy0zMC4yLTU3LjMtNTAtOTcuNS01MHMtNzUuNyAxOS44LTk3LjUgNTBjLTcuNyAxMC44LTUuMyAyNS44IDUuNSAzMy41czI1LjggNS4zIDMzLjUtNS41YzEzLjEtMTguMiAzNC40LTMwIDU4LjUtMzB6bS04MC05NmMxNy43IDAgMzItMTQuMyAzMi0zMmwwLS4zIDkuNyAzLjJjMTAuNSAzLjUgMjEuOC0yLjIgMjUuMy0xMi42cy0yLjItMjEuOC0xMi42LTI1LjNsLTk2LTMyYy0xMC41LTMuNS0yMS44IDIuMi0yNS4zIDEyLjZzMi4yIDIxLjggMTIuNiAyNS4zbDI4LjkgOS42Yy00LjEgNS40LTYuNiAxMi4xLTYuNiAxOS40IDAgMTcuNyAxNC4zIDMyIDMyIDMyem0xOTItMzJjMC03LjMtMi40LTE0LTYuNi0xOS40bDI4LjktOS42YzEwLjUtMy41IDE2LjEtMTQuOCAxMi42LTI1LjNzLTE0LjgtMTYuMS0yNS4zLTEyLjZsLTk2IDMyYy0xMC41IDMuNS0xNi4xIDE0LjgtMTIuNiAyNS4zczE0LjggMTYuMSAyNS4zIDEyLjZsOS43LTMuMiAwIC4zYzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJ6Il19LE00cj1DemUsazRyPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImNoZXNzLWtuaWdodCIsaWNvbjpbNDQ4LDUxMixbOTgyMl0sImY0NDEiLCJNMjMyLTMyYzExMC41IDAgMjAwIDg5LjUgMjAwIDIwMGwwIDEyNy43YzAgMTguOS02LjEgMzcuMS0xNy4yIDUyLjJsLTUuMSA2LjItMzYuMyA0MC43IDMyLjEgNDAuMmM2LjcgOC40IDEwLjQgMTguOCAxMC40IDI5LjZsLS4yIDQuOGMtMi40IDIzLjktMjIuNiA0Mi41LTQ3LjEgNDIuNWwtMjg5LjIgMC00LjgtLjJjLTIzLjktMi40LTQyLjUtMjIuNi00Mi41LTQ3LjEgMC0xMC44IDMuNy0yMS4yIDEwLjQtMjkuNmwzNy42LTQ3IDAtMjQuM2MwLTI0LjMgMTAuMS00Ny42IDI3LjgtNjQuMmw2My41LTU5LjUtMTcuNCAwLS4yIC4yYy0yMC4zIDIwLjMtNDkuNiAyOC4yLTc3LjEgMjEuMWwtNS41LTEuNmMtMzAuOS0xMC4zLTUyLjMtMzgtNTQuOS03MC4xbC0uMi02LjQgMC0xLjRjMC0xOS43IDcuMS0zOC44IDE5LjktNTMuOGw3Ni4xLTg4LjggMC00Ny4xIC4xLTIuNUMxMTMuNC0yMi42IDEyMy42LTMyIDEzNi0zMmw5NiAwek04MC43IDQ2NGwyODYuNiAwLTM4LjQtNDgtMjA5LjkgMC0zOC40IDQ4ek0xNjAgNDhjMCA1LjctMi4xIDExLjMtNS44IDE1LjZMNzIuMyAxNTkuMUM2NyAxNjUuNCA2NCAxNzMuNCA2NCAxODEuN2wwIDEuNCAuNCA1LjJjMS45IDExLjkgMTAuMyAyMS45IDIxLjkgMjUuOGw0LjUgMS4xYzEwLjUgMS45IDIxLjMtMS40IDI5LTlsNy4yLTcuMiAzLjctM2MzLjktMi42IDguNS00IDEzLjMtNGw4OCAwYzkuOCAwIDE4LjcgNiAyMi4zIDE1LjJzMS4zIDE5LjYtNS45IDI2LjNsLTEwNy44IDEwMWMtOC4xIDcuNi0xMi43IDE4LjEtMTIuNyAyOS4ybDAgNC4zIDIwNS4yIDAgNDAuNy00NS44IDIuMy0yLjhjNS4xLTYuOCA3LjgtMTUuMiA3LjgtMjMuN0wzODQgMTY4YzAtODMuOS02OC4xLTE1Mi0xNTItMTUybC03MiAwIDAgMzJ6bTMyIDcyYTI0IDI0IDAgMSAxIDAtNDggMjQgMjQgMCAxIDEgMCA0OHoiXX0sX3plPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImZhY2UtZ3Jpbi1iZWFtIixpY29uOls1MTIsNTEyLFsxMjg1MTYsImdyaW4tYmVhbSJdLCJmNTgyIiwiTTQ2NCAyNTZhMjA4IDIwOCAwIDEgMCAtNDE2IDAgMjA4IDIwOCAwIDEgMCA0MTYgMHpNMCAyNTZhMjU2IDI1NiAwIDEgMSA1MTIgMCAyNTYgMjU2IDAgMSAxIC01MTIgMHptMzcyLjIgNDYuM2MxMS44LTMuNiAyMy43IDYuMSAxOS42IDE3LjgtMTkuOCA1NS45LTczLjEgOTYtMTM1LjggOTYtNjIuNyAwLTExNi00MC0xMzUuOC05NS45LTQuMS0xMS42IDcuOC0yMS40IDE5LjYtMTcuOCAzNC43IDEwLjYgNzQuMiAxNi41IDExNi4xIDE2LjUgNDIgMCA4MS41LTYgMTE2LjMtMTYuNnpNMTc2IDE4MGMtMTUuNSAwLTI4IDEyLjUtMjggMjhsMCA4YzAgMTEtOSAyMC0yMCAyMHMtMjAtOS0yMC0yMGwwLThjMC0zNy42IDMwLjQtNjggNjgtNjhzNjggMzAuNCA2OCA2OGwwIDhjMCAxMS05IDIwLTIwIDIwcy0yMC05LTIwLTIwbDAtOGMwLTE1LjUtMTIuNS0yOC0yOC0yOHptMTMyIDI4bDAgOGMwIDExLTkgMjAtMjAgMjBzLTIwLTktMjAtMjBsMC04YzAtMzcuNiAzMC40LTY4IDY4LTY4czY4IDMwLjQgNjggNjhsMCA4YzAgMTEtOSAyMC0yMCAyMHMtMjAtOS0yMC0yMGwwLThjMC0xNS41LTEyLjUtMjgtMjgtMjhzLTI4IDEyLjUtMjggMjh6Il19LFM0cj1femUsejRyPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImhhbmQtcGVhY2UiLGljb246WzQ0OCw1MTIsWzk5OTZdLCJmMjViIiwiTTIxOSAxLjRjLTM1LjItMy43LTY2LjYgMjEuOC03MC4zIDU3bC02LjQgNjAuNi0xNy40LTQ5LjRDMTEzLjIgMzYuMyA3Ni42IDE4LjggNDMuMyAzMC41Uy03LjYgNzguOCA0LjEgMTEyLjFMNTYuOSAyNjIuMkM0MS43IDI3Ni43IDMyLjIgMjk3LjMgMzIuMiAzMjBsMCAyNGMwIDkyLjggNzUuMiAxNjggMTY4IDE2OGw0OCAwYzkyLjggMCAxNjgtNzUuMiAxNjgtMTY4bDAtMTIwYzAtMzUuMy0yOC43LTY0LTY0LTY0LTcuOSAwLTE1LjQgMS40LTIyLjQgNC0xMC40LTIxLjMtMzIuMy0zNi01Ny42LTM2LS43IDAtMS41IDAtMi4yIDBsNS45LTU2LjNjMy43LTM1LjItMjEuOC02Ni42LTU3LTcwLjN6bS0uMiAxNTUuNGMtNi42IDEwLjEtMTAuNSAyMi4yLTEwLjUgMzUuMmwwIDQ4YzAgLjcgMCAxLjQgMCAyLTUuMS0xLjMtMTAuNS0yLTE2LTJsLTcuNCAwLTUuNC0xNS4zIDE3LTE2MS4zYy45LTguOCA4LjgtMTUuMiAxNy42LTE0LjJzMTUuMiA4LjggMTQuMiAxNy42bC05LjUgOTAuMXpNNzkuNiA4NS42bDU0LjMgMTU0LjQtMjEuNyAwYy00IDAtOCAuMy0xMS45IC45TDQ5LjQgOTYuMmMtMi45LTguMyAxLjUtMTcuNSA5LjgtMjAuNHMxNy41IDEuNSAyMC40IDkuOHpNMjU2LjIgMTkyYzAtOC44IDcuMi0xNiAxNi0xNnMxNiA3LjIgMTYgMTZsMCA0OGMwIDguOC03LjIgMTYtMTYgMTZzLTE2LTcuMi0xNi0xNmwwLTQ4em0zOC40IDEwOGMxMC40IDIxLjMgMzIuMyAzNiA1Ny42IDM2IDUuNSAwIDEwLjktLjcgMTYtMmwwIDEwYzAgNjYuMy01My43IDEyMC0xMjAgMTIwbC00OCAwYy02Ni4zIDAtMTIwLTUzLjctMTIwLTEyMGwwLTI0YzAtMTcuNyAxNC4zLTMyIDMyLTMybDgwIDBjOC44IDAgMTYgNy4yIDE2IDE2cy03LjIgMTYtMTYgMTZsLTQwIDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsNDAgMGMzNS4zIDAgNjQtMjguNyA2NC02NCAwLS43IDAtMS40IDAtMiA1LjEgMS4zIDEwLjUgMiAxNiAyIDcuOSAwIDE1LjQtMS40IDIyLjQtNHptNzMuNi0yOGMwIDguOC03LjIgMTYtMTYgMTZzLTE2LTcuMi0xNi0xNmwwLTQ4YzAtOC44IDcuMi0xNiAxNi0xNnMxNiA3LjIgMTYgMTZsMCA0OHoiXX0sQzRyPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImNvbXBhc3MiLGljb246WzUxMiw1MTIsWzEyOTUxN10sImYxNGUiLCJNNDY0IDI1NmEyMDggMjA4IDAgMSAwIC00MTYgMCAyMDggMjA4IDAgMSAwIDQxNiAwek0wIDI1NmEyNTYgMjU2IDAgMSAxIDUxMiAwIDI1NiAyNTYgMCAxIDEgLTUxMiAwem0zMDYuNyA2OS4xTDE2Mi40IDM4MC42Yy0xOS40IDcuNS0zOC41LTExLjYtMzEtMzFsNTUuNS0xNDQuM2MzLjMtOC41IDkuOS0xNS4xIDE4LjQtMTguNGwxNDQuMy01NS41YzE5LjQtNy41IDM4LjUgMTEuNiAzMSAzMUwzMjUuMSAzMDYuN2MtMy4zIDguNS05LjkgMTUuMS0xOC40IDE4LjR6TTI4OCAyNTZhMzIgMzIgMCAxIDAgLTY0IDAgMzIgMzIgMCAxIDAgNjQgMHoiXX0sXzRyPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6InNxdWFyZSIsaWNvbjpbNDQ4LDUxMixbOTYzMiw5NzIzLDk3MjQsNjE1OTBdLCJmMGM4IiwiTTM4NCA4MGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMjBjMCA4LjgtNy4yIDE2LTE2IDE2TDY0IDQzMmMtOC44IDAtMTYtNy4yLTE2LTE2TDQ4IDk2YzAtOC44IDcuMi0xNiAxNi0xNmwzMjAgMHpNNjQgMzJDMjguNyAzMiAwIDYwLjcgMCA5NkwwIDQxNmMwIDM1LjMgMjguNyA2NCA2NCA2NGwzMjAgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTMyMGMwLTM1LjMtMjguNy02NC02NC02NEw2NCAzMnoiXX0sVHplPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImZhY2UtZ3JpbiIsaWNvbjpbNTEyLDUxMixbMTI4NTEyLCJncmluIl0sImY1ODAiLCJNNDY0IDI1NmEyMDggMjA4IDAgMSAwIC00MTYgMCAyMDggMjA4IDAgMSAwIDQxNiAwek0wIDI1NmEyNTYgMjU2IDAgMSAxIDUxMiAwIDI1NiAyNTYgMCAxIDEgLTUxMiAwem0zNzIuMiA0Ni4zYzExLjgtMy42IDIzLjcgNi4xIDE5LjYgMTcuOC0xOS44IDU1LjktNzMuMSA5Ni0xMzUuOCA5Ni02Mi43IDAtMTE2LTQwLTEzNS44LTk1LjktNC4xLTExLjYgNy44LTIxLjQgMTkuNi0xNy44IDM0LjcgMTAuNiA3NC4yIDE2LjUgMTE2LjEgMTYuNSA0MiAwIDgxLjUtNiAxMTYuMy0xNi42ek0xNDQgMjA4YTMyIDMyIDAgMSAxIDY0IDAgMzIgMzIgMCAxIDEgLTY0IDB6bTE5Mi0zMmEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6Il19LFQ0cj1UemUsTHplPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImZhY2Utc21pbGUiLGljb246WzUxMiw1MTIsWzEyODU3OCwic21pbGUiXSwiZjExOCIsIk00NjQgMjU2YTIwOCAyMDggMCAxIDAgLTQxNiAwIDIwOCAyMDggMCAxIDAgNDE2IDB6TTAgMjU2YTI1NiAyNTYgMCAxIDEgNTEyIDAgMjU2IDI1NiAwIDEgMSAtNTEyIDB6bTE3Ny4zIDYzLjRDMTkyLjMgMzM1IDIxOC40IDM1MiAyNTYgMzUyczYzLjctMTcgNzguNy0zMi42YzkuMi05LjYgMjQuNC05LjkgMzMuOS0uN3M5LjkgMjQuNCAuNyAzMy45Yy0yMi4xIDIzLTYwIDQ3LjQtMTEzLjMgNDcuNHMtOTEuMi0yNC40LTExMy4zLTQ3LjRjLTkuMi05LjYtOC45LTI0LjggLjctMzMuOXMyNC44LTguOSAzMy45IC43ek0xNDQgMjA4YTMyIDMyIDAgMSAxIDY0IDAgMzIgMzIgMCAxIDEgLTY0IDB6bTE5Mi0zMmEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6Il19LEw0cj1MemUsRHplPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImZhY2Utc21pbGUtYmVhbSIsaWNvbjpbNTEyLDUxMixbMTI4NTIyLCJzbWlsZS1iZWFtIl0sImY1YjgiLCJNNDY0IDI1NmEyMDggMjA4IDAgMSAwIC00MTYgMCAyMDggMjA4IDAgMSAwIDQxNiAwek0wIDI1NmEyNTYgMjU2IDAgMSAxIDUxMiAwIDI1NiAyNTYgMCAxIDEgLTUxMiAwem0xNzcuMyA2My40QzE5Mi4zIDMzNSAyMTguNCAzNTIgMjU2IDM1MnM2My43LTE3IDc4LjctMzIuNmM5LjItOS42IDI0LjQtOS45IDMzLjktLjdzOS45IDI0LjQgLjcgMzMuOWMtMjIuMSAyMy02MCA0Ny40LTExMy4zIDQ3LjRzLTkxLjItMjQuNC0xMTMuMy00Ny40Yy05LjItOS42LTguOS0yNC44IC43LTMzLjlzMjQuOC04LjkgMzMuOSAuN3pNMTc2IDE4MGMtMTUuNSAwLTI4IDEyLjUtMjggMjhsMCA4YzAgMTEtOSAyMC0yMCAyMHMtMjAtOS0yMC0yMGwwLThjMC0zNy42IDMwLjQtNjggNjgtNjhzNjggMzAuNCA2OCA2OGwwIDhjMCAxMS05IDIwLTIwIDIwcy0yMC05LTIwLTIwbDAtOGMwLTE1LjUtMTIuNS0yOC0yOC0yOHptMTMyIDI4bDAgOGMwIDExLTkgMjAtMjAgMjBzLTIwLTktMjAtMjBsMC04YzAtMzcuNiAzMC40LTY4IDY4LTY4czY4IDMwLjQgNjggNjhsMCA4YzAgMTEtOSAyMC0yMCAyMHMtMjAtOS0yMC0yMGwwLThjMC0xNS41LTEyLjUtMjgtMjgtMjhzLTI4IDEyLjUtMjggMjh6Il19LEQ0cj1EemUsQTRyPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImZvbGRlci1jbG9zZWQiLGljb246WzUxMiw1MTIsW10sImUxODUiLCJNNDQ4IDQwMEw2NCA0MDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTE0NCA0MTYgMCAwIDE0NGMwIDguOC03LjIgMTYtMTYgMTZ6bTE2LTIwOGwtNDE2IDAgMC05NmMwLTguOCA3LjItMTYgMTYtMTZsMTM4LjcgMGMzLjUgMCA2LjggMS4xIDkuNiAzLjJMMjUwLjcgMTEyYzEzLjggMTAuNCAzMC43IDE2IDQ4IDE2TDQ0OCAxMjhjOC44IDAgMTYgNy4yIDE2IDE2bDAgNDh6TTY0IDQ0OGwzODQgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTI0MGMwLTM1LjMtMjguNy02NC02NC02NEwyOTguNyA4MGMtNi45IDAtMTMuNy0yLjItMTkuMi02LjRMMjQxLjEgNDQuOEMyMzAgMzYuNSAyMTYuNSAzMiAyMDIuNyAzMkw2NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgMzg0YzAgMzUuMyAyOC43IDY0IDY0IDY0eiJdfSxFNHI9e3ByZWZpeDoiZmFyIixpY29uTmFtZToia2V5Ym9hcmQiLGljb246WzU3Niw1MTIsWzllM10sImYxMWMiLCJNNjQgMTEyYy04LjggMC0xNiA3LjItMTYgMTZsMCAyNTZjMCA4LjggNy4yIDE2IDE2IDE2bDQ0OCAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTI1NmMwLTguOC03LjItMTYtMTYtMTZMNjQgMTEyek0wIDEyOEMwIDkyLjcgMjguNyA2NCA2NCA2NGw0NDggMGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDI1NmMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA0NDhjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgMTI4ek0xNzYgMzIwbDIyNCAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDE2YzAgOC44LTcuMiAxNi0xNiAxNmwtMjI0IDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTE2YzAtOC44IDcuMi0xNiAxNi0xNnptLTcyLTcyYzAtOC44IDcuMi0xNiAxNi0xNmwxNiAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDE2YzAgOC44LTcuMiAxNi0xNiAxNmwtMTYgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMTZ6bTE2LTk2bDE2IDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMTZjMCA4LjgtNy4yIDE2LTE2IDE2bC0xNiAwYy04LjggMC0xNi03LjItMTYtMTZsMC0xNmMwLTguOCA3LjItMTYgMTYtMTZ6bTY0IDk2YzAtOC44IDcuMi0xNiAxNi0xNmwxNiAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDE2YzAgOC44LTcuMiAxNi0xNiAxNmwtMTYgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMTZ6bTE2LTk2bDE2IDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMTZjMCA4LjgtNy4yIDE2LTE2IDE2bC0xNiAwYy04LjggMC0xNi03LjItMTYtMTZsMC0xNmMwLTguOCA3LjItMTYgMTYtMTZ6bTY0IDk2YzAtOC44IDcuMi0xNiAxNi0xNmwxNiAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDE2YzAgOC44LTcuMiAxNi0xNiAxNmwtMTYgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMTZ6bTE2LTk2bDE2IDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMTZjMCA4LjgtNy4yIDE2LTE2IDE2bC0xNiAwYy04LjggMC0xNi03LjItMTYtMTZsMC0xNmMwLTguOCA3LjItMTYgMTYtMTZ6bTY0IDk2YzAtOC44IDcuMi0xNiAxNi0xNmwxNiAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDE2YzAgOC44LTcuMiAxNi0xNiAxNmwtMTYgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMTZ6bTE2LTk2bDE2IDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMTZjMCA4LjgtNy4yIDE2LTE2IDE2bC0xNiAwYy04LjggMC0xNi03LjItMTYtMTZsMC0xNmMwLTguOCA3LjItMTYgMTYtMTZ6bTY0IDk2YzAtOC44IDcuMi0xNiAxNi0xNmwxNiAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDE2YzAgOC44LTcuMiAxNi0xNiAxNmwtMTYgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMTZ6bTE2LTk2bDE2IDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMTZjMCA4LjgtNy4yIDE2LTE2IDE2bC0xNiAwYy04LjggMC0xNi03LjItMTYtMTZsMC0xNmMwLTguOCA3LjItMTYgMTYtMTZ6Il19LEF6ZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJmYWNlLXJvbGxpbmctZXllcyIsaWNvbjpbNTEyLDUxMixbMTI4NTgwLCJtZWgtcm9sbGluZy1leWVzIl0sImY1YTUiLCJNMjU2IDQ4YTIwOCAyMDggMCAxIDEgMCA0MTYgMjA4IDIwOCAwIDEgMSAwLTQxNnptMCA0NjRhMjU2IDI1NiAwIDEgMCAwLTUxMiAyNTYgMjU2IDAgMSAwIDAgNTEyek0xNzYgMzc2YzAgMTMuMyAxMC43IDI0IDI0IDI0bDExMiAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC0xMTIgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjR6TTE2MCAyNjRjLTIyLjEgMC00MC0xNy45LTQwLTQwIDAtOS41IDMuMy0xOC4xIDguOC0yNSAzLjIgMTQuMyAxNiAyNSAzMS4yIDI1czI4LTEwLjcgMzEuMi0yNWM1LjUgNi44IDguOCAxNS41IDguOCAyNSAwIDIyLjEtMTcuOSA0MC00MCA0MHptMCA0MGE4MCA4MCAwIDEgMCAwLTE2MCA4MCA4MCAwIDEgMCAwIDE2MHptMTkyLTQwYy0yMi4xIDAtNDAtMTcuOS00MC00MCAwLTkuNSAzLjMtMTguMSA4LjgtMjUgMy4yIDE0LjMgMTYgMjUgMzEuMiAyNXMyOC0xMC43IDMxLjItMjVjNS41IDYuOCA4LjggMTUuNSA4LjggMjUgMCAyMi4xLTE3LjkgNDAtNDAgNDB6bTAgNDBhODAgODAgMCAxIDAgMC0xNjAgODAgODAgMCAxIDAgMCAxNjB6Il19LCQ0cj1BemUsRXplPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImZhY2UtZ3JpbWFjZSIsaWNvbjpbNTEyLDUxMixbMTI4NTU2LCJncmltYWNlIl0sImY1N2YiLCJNMjU2IDQ4YTIwOCAyMDggMCAxIDAgMCA0MTYgMjA4IDIwOCAwIDEgMCAwLTQxNnpNNTEyIDI1NmEyNTYgMjU2IDAgMSAxIC01MTIgMCAyNTYgMjU2IDAgMSAxIDUxMiAwek0xNTIgMzUyYzAgMTEuOSA4LjYgMjEuOCAyMCAyMy43bDAtNDcuM2MtMTEuNCAxLjktMjAgMTEuOC0yMCAyMy43em04NCAyNGwwLTQ4LTI0IDAgMCA0OCAyNCAwem02NCAwbDAtNDgtMjQgMCAwIDQ4IDI0IDB6bTQwLS4zYzExLjQtMS45IDIwLTExLjggMjAtMjMuN3MtOC42LTIxLjgtMjAtMjMuN2wwIDQ3LjN6TTE3NiAyODhsMTYwIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRzLTI4LjcgNjQtNjQgNjRsLTE2MCAwYy0zNS4zIDAtNjQtMjguNy02NC02NHMyOC43LTY0IDY0LTY0em0wLTExMmEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6bTEyOCAzMmEzMiAzMiAwIDEgMSA2NCAwIDMyIDMyIDAgMSAxIC02NCAweiJdfSxQNHI9RXplLCR6ZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJjaXJjbGUtZG90IixpY29uOls1MTIsNTEyLFsxMjgyODAsImRvdC1jaXJjbGUiXSwiZjE5MiIsIk0yNTYgNTEyYTI1NiAyNTYgMCAxIDEgMC01MTIgMjU2IDI1NiAwIDEgMSAwIDUxMnptMC00NjRhMjA4IDIwOCAwIDEgMCAwIDQxNiAyMDggMjA4IDAgMSAwIDAtNDE2em0wIDMwNGE5NiA5NiAwIDEgMSAwLTE5MiA5NiA5NiAwIDEgMSAwIDE5MnoiXX0sSTRyPSR6ZSxONHI9e3ByZWZpeDoiZmFyIixpY29uTmFtZToib2JqZWN0LWdyb3VwIixpY29uOls1NzYsNTEyLFtdLCJmMjQ3IiwiTTQwIDY0YTI0IDI0IDAgMSAxIDQ4IDAgMjQgMjQgMCAxIDEgLTQ4IDB6bTQ4IDU5LjNjMTYtNi41IDI4LjktMTkuMyAzNS4zLTM1LjNsMzI5LjMgMGM2LjUgMTYgMTkuMyAyOC45IDM1LjMgMzUuM2wwIDI2NS4zYy0xNiA2LjUtMjguOSAxOS4zLTM1LjMgMzUuM2wtMzI5LjMgMGMtNi41LTE2LTE5LjMtMjguOS0zNS4zLTM1LjNsMC0yNjUuM3pNNTEyIDBjLTI2LjkgMC00OS45IDE2LjUtNTkuMyA0MEwxMjMuMyA0MEMxMTMuOSAxNi41IDkwLjkgMCA2NCAwIDI4LjcgMCAwIDI4LjcgMCA2NCAwIDkwLjkgMTYuNSAxMTMuOSA0MCAxMjMuM2wwIDI2NS4zYy0yMy41IDkuNS00MCAzMi41LTQwIDU5LjMgMCAzNS4zIDI4LjcgNjQgNjQgNjQgMjYuOSAwIDQ5LjktMTYuNSA1OS4zLTQwbDMyOS4zIDBjOS41IDIzLjUgMzIuNSA0MCA1OS4zIDQwIDM1LjMgMCA2NC0yOC43IDY0LTY0IDAtMjYuOS0xNi41LTQ5LjktNDAtNTkuM2wwLTI2NS4zYzIzLjUtOS41IDQwLTMyLjUgNDAtNTkuMyAwLTM1LjMtMjguNy02NC02NC02NHpNNDg4IDY0YTI0IDI0IDAgMSAxIDQ4IDAgMjQgMjQgMCAxIDEgLTQ4IDB6TTY0IDQyNGEyNCAyNCAwIDEgMSAwIDQ4IDI0IDI0IDAgMSAxIDAtNDh6bTQyNCAyNGEyNCAyNCAwIDEgMSA0OCAwIDI0IDI0IDAgMSAxIC00OCAwek0xOTIgMTc2bDg4IDAgMCA1Ni04OCAwIDAtNTZ6bS04LTQwYy0xNy43IDAtMzIgMTQuMy0zMiAzMmwwIDcyYzAgMTcuNyAxNC4zIDMyIDMyIDMybDEwNCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtNzJjMC0xNy43LTE0LjMtMzItMzItMzJsLTEwNCAwem03MiAxODRsMCAyNGMwIDE3LjcgMTQuMyAzMiAzMiAzMmwxMDQgMGMxNy43IDAgMzItMTQuMyAzMi0zMmwwLTcyYzAtMTcuNy0xNC4zLTMyLTMyLTMybC0yNCAwYzAgMTQuNi0zLjkgMjguMi0xMC43IDQwbDI2LjcgMCAwIDU2LTg4IDAgMC0xNi40Yy0yLjYgLjMtNS4zIC40LTggLjRsLTMyIDB6Il19LFB6ZT17cHJlZml4OiJmYXIiLGljb25OYW1lOiJmYWNlLWZsdXNoZWQiLGljb246WzUxMiw1MTIsWzEyODU2MywiZmx1c2hlZCJdLCJmNTc5IiwiTTQ2NCAyNTZhMjA4IDIwOCAwIDEgMSAtNDE2IDAgMjA4IDIwOCAwIDEgMSA0MTYgMHpNMjU2IDBhMjU2IDI1NiAwIDEgMCAwIDUxMiAyNTYgMjU2IDAgMSAwIDAtNTEyek0xNjAgMjQ4YTI0IDI0IDAgMSAwIDAtNDggMjQgMjQgMCAxIDAgMCA0OHptMjE2LTI0YTI0IDI0IDAgMSAwIC00OCAwIDI0IDI0IDAgMSAwIDQ4IDB6TTE5MiAzNTJjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsMTI4IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTEyOCAwek0xNjAgMTc2YTQ4IDQ4IDAgMSAxIDAgOTYgNDggNDggMCAxIDEgMC05NnptMCAxMjhhODAgODAgMCAxIDAgMC0xNjAgODAgODAgMCAxIDAgMCAxNjB6bTE0NC04MGE0OCA0OCAwIDEgMSA5NiAwIDQ4IDQ4IDAgMSAxIC05NiAwem0xMjggMGE4MCA4MCAwIDEgMCAtMTYwIDAgODAgODAgMCAxIDAgMTYwIDB6Il19LEY0cj1QemUsSXplPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6InN0YXItaGFsZi1zdHJva2UiLGljb246WzU3Niw1MTIsWyJzdGFyLWhhbGYtYWx0Il0sImY1YzAiLCJNMzA5LjUtMTguOWMtNC4xLTgtMTIuNC0xMy4xLTIxLjQtMTMuMXMtMTcuMyA1LjEtMjEuNCAxMy4xTDE5My4xIDEyNS4zIDMzLjIgMTUwLjdjLTguOSAxLjQtMTYuMyA3LjctMTkuMSAxNi4zcy0uNSAxOCA1LjggMjQuNGwxMTQuNCAxMTQuNS0yNS4yIDE1OS45Yy0xLjQgOC45IDIuMyAxNy45IDkuNiAyMy4yczE2LjkgNi4xIDI1IDJMMjg4LjEgNDE3LjYgNDMyLjQgNDkxYzggNC4xIDE3LjcgMy4zIDI1LTJzMTEtMTQuMiA5LjYtMjMuMkw0NDEuNyAzMDUuOSA1NTYuMSAxOTEuNGM2LjQtNi40IDguNi0xNS44IDUuOC0yNC40cy0xMC4xLTE0LjktMTkuMS0xNi4zTDM4MyAxMjUuMyAzMDkuNS0xOC45ek0yNjQuMSA5MS44bDAgMjg0LjEtMTAwLjEgNTAuOSAxOS44LTEyNS41YzEuMi03LjYtMS4zLTE1LjMtNi43LTIwLjdsLTg5LjgtODkuOSAxMjUuNS0yMGM3LjYtMS4yIDE0LjEtNiAxNy42LTEyLjhsMzMuOC02Ni4yem00OCAyODQuMWwwLTI4NC4xIDMzLjggNjYuMmMzLjUgNi44IDEwIDExLjYgMTcuNiAxMi44bDEyNS41IDIwLTg5LjggODkuOWMtNS40IDUuNC03LjkgMTMuMS02LjcgMjAuN2wxOS44IDEyNS41LTEwMC4xLTUwLjl6Il19LE80cj1JemUsUjRyPXtwcmVmaXg6ImZhciIsaWNvbk5hbWU6ImZpbGUtdmlkZW8iLGljb246WzM4NCw1MTIsW10sImYxYzgiLCJNNjQgNDhsMTEyIDAgMCA4OGMwIDM5LjggMzIuMiA3MiA3MiA3Mmw4OCAwIDAgMjQwYzAgOC44LTcuMiAxNi0xNiAxNkw2NCA0NjRjLTguOCAwLTE2LTcuMi0xNi0xNkw0OCA2NGMwLTguOCA3LjItMTYgMTYtMTZ6TTIyNCA2Ny45bDkyLjEgOTIuMS02OC4xIDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0bDAtNjguMXpNNjQgMEMyOC43IDAgMCAyOC43IDAgNjRMMCA0NDhjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMjU2IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0yNjEuNWMwLTE3LTYuNy0zMy4zLTE4LjctNDUuM0wyNDIuNyAxOC43QzIzMC43IDYuNyAyMTQuNSAwIDE5Ny41IDBMNjQgMHpNODAgMjg4bDAgOTZjMCAxNy43IDE0LjMgMzIgMzIgMzJsOTYgMGMxNy43IDAgMzItMTQuMyAzMi0zMmwwLTI0IDM1IDM1YzMuMiAzLjIgNy41IDUgMTIgNSA5LjQgMCAxNy03LjYgMTctMTdsMC05NC4xYzAtOS40LTcuNi0xNy0xNy0xNy00LjUgMC04LjggMS44LTEyIDVsLTM1IDM1IDAtMjRjMC0xNy43LTE0LjMtMzItMzItMzJsLTk2IDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyeiJdfSxOemU9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiZmFjZS1sYXVnaCIsaWNvbjpbNTEyLDUxMixbImxhdWdoIl0sImY1OTkiLCJNNDY0IDI1NmEyMDggMjA4IDAgMSAwIC00MTYgMCAyMDggMjA4IDAgMSAwIDQxNiAwek0wIDI1NmEyNTYgMjU2IDAgMSAxIDUxMiAwIDI1NiAyNTYgMCAxIDEgLTUxMiAwem0xMTguMyA1OC4yYy00LjItMTMuNyA3LjEtMjYuMiAyMS40LTI2LjJsMjMyLjYgMGMxNC4zIDAgMjUuNiAxMi41IDIxLjQgMjYuMi0xOCA1OC45LTcyLjkgMTAxLjgtMTM3LjcgMTAxLjhTMTM2LjMgMzczLjEgMTE4LjMgMzE0LjJ6TTE0NCAxOTJhMzIgMzIgMCAxIDEgNjQgMCAzMiAzMiAwIDEgMSAtNjQgMHptMTkyLTMyYTMyIDMyIDAgMSAxIDAgNjQgMzIgMzIgMCAxIDEgMC02NHoiXX0sQjRyPU56ZSxINHI9e3ByZWZpeDoiZmFyIixpY29uTmFtZToiaGFuZC1wb2ludGVyIixpY29uOls0NDgsNTEyLFtdLCJmMjVhIiwiTTE2MCA2NGMwLTguOCA3LjItMTYgMTYtMTZzMTYgNy4yIDE2IDE2bDAgMTM2YzAgMTAuMyA2LjYgMTkuNSAxNi40IDIyLjhzMjAuNi0uMSAyNi44LTguM2MzLTMuOSA3LjYtNi40IDEyLjgtNi40IDguOCAwIDE2IDcuMiAxNiAxNiAwIDEwLjMgNi42IDE5LjUgMTYuNCAyMi44czIwLjYtLjEgMjYuOC04LjNjMy0zLjkgNy42LTYuNCAxMi44LTYuNCA3LjggMCAxNC4zIDUuNiAxNS43IDEzIDEuNiA4LjIgNy4zIDE1LjEgMTUuMSAxOHMxNi43IDEuNiAyMy4zLTMuNmMyLjctMi4xIDYuMS0zLjQgOS45LTMuNCA4LjggMCAxNiA3LjIgMTYgMTZsMCAxMjBjMCAzOS44LTMyLjIgNzItNzIgNzJsLTExNi42IDBjLTM3LjQgMC03Mi40LTE4LjctOTMuMi00OS45TDUwLjcgMzEyLjljLTQuOS03LjQtMi45LTE3LjMgNC40LTIyLjJzMTcuMy0yLjkgMjIuMiA0LjRMMTE2IDM1My4yYzUuOSA4LjggMTYuOCAxMi43IDI2LjkgOS43czE3LTEyLjQgMTctMjNMMTYwIDY0ek0xNzYgMGMtMzUuMyAwLTY0IDI4LjctNjQgNjRsMCAxOTcuN0M5MS4yIDIzOCA1NS41IDIzMi44IDI4LjUgMjUwLjctLjkgMjcwLjQtOC45IDMxMC4xIDEwLjggMzM5LjVMNzguMyA0NDAuOGMyOS43IDQ0LjUgNzkuNiA3MS4yIDEzMy4xIDcxLjJMMzI4IDUxMmM2Ni4zIDAgMTIwLTUzLjcgMTIwLTEyMGwwLTEyMGMwLTM1LjMtMjguNy02NC02NC02NC00LjUgMC04LjggLjUtMTMgMS4zLTExLjctMTUuNC0zMC4yLTI1LjMtNTEtMjUuMy02LjkgMC0xMy41IDEuMS0xOS43IDMuMS0xMS42LTE2LjQtMzAuNy0yNy4xLTUyLjMtMjcuMS0yLjcgMC01LjQgLjItOCAuNUwyNDAgNjRjMC0zNS4zLTI4LjctNjQtNjQtNjR6bTQ4IDMwNGMwLTguOC03LjItMTYtMTYtMTZzLTE2IDcuMi0xNiAxNmwwIDk2YzAgOC44IDcuMiAxNiAxNiAxNnMxNi03LjIgMTYtMTZsMC05NnptNDgtMTZjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDk2YzAgOC44IDcuMiAxNiAxNiAxNnMxNi03LjIgMTYtMTZsMC05NmMwLTguOC03LjItMTYtMTYtMTZ6bTgwIDE2YzAtOC44LTcuMi0xNi0xNi0xNnMtMTYgNy4yLTE2IDE2bDAgOTZjMCA4LjggNy4yIDE2IDE2IDE2czE2LTcuMiAxNi0xNmwwLTk2eiJdfSxxNHI9e3ByZWZpeDoiZmFyIixpY29uTmFtZToicmVnaXN0ZXJlZCIsaWNvbjpbNTEyLDUxMixbMTc0XSwiZjI1ZCIsIk0yNTYgNDhhMjA4IDIwOCAwIDEgMSAwIDQxNiAyMDggMjA4IDAgMSAxIDAtNDE2em0wIDQ2NGEyNTYgMjU2IDAgMSAwIDAtNTEyIDI1NiAyNTYgMCAxIDAgMCA1MTJ6TTIwMCAxNDRjLTEzLjMgMC0yNCAxMC43LTI0IDI0bDAgMTc2YzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC01NiAzNC40IDAgNDEgNjguM2M2LjggMTEuNCAyMS42IDE1IDMyLjkgOC4yczE1LTIxLjYgOC4yLTMyLjlsLTMwLjItNTAuM2MyNC42LTExLjUgNDEuNi0zNi40IDQxLjYtNjUuMyAwLTM5LjgtMzIuMi03Mi03Mi03MmwtODAgMHptNzIgOTZsLTQ4IDAgMC00OCA1NiAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC04IDB6Il19LCRiYT17ZmFTcXVhcmVNaW51czptU2UsZmFNaW51c1NxdWFyZTp6bHIsZmFDYWxlbmRhckNoZWNrOkNscixmYUZhY2VLaXNzOmdTZSxmYUtpc3M6X2xyLGZhUGFzdGU6ZncsZmFGaWxlQ2xpcGJvYXJkOlRscixmYUhhbmRQb2ludExlZnQ6TGxyLGZhRmlsZUV4Y2VsOkRscixmYUVudmVsb3BlOkFscixmYVNxdWFyZUNhcmV0RG93bjp4U2UsZmFDYXJldFNxdWFyZURvd246RWxyLGZhVHJ1Y2s6JGxyLGZhQmVsbDpQbHIsZmFNZXNzYWdlOnB3LGZhQ29tbWVudEFsdDpJbHIsZmFGYWNlRGl6enk6YlNlLGZhRGl6enk6TmxyLGZhQ2FsZW5kYXJEYXlzOnZTZSxmYUNhbGVuZGFyQWx0OkZscixmYUhhbmRQb2ludFVwOk9scixmYUhhbmRMaXphcmQ6UmxyLGZhU3F1YXJlRnVsbDpCbHIsZmFDaXJjbGVQYXVzZTp5U2UsZmFQYXVzZUNpcmNsZTpIbHIsZmFIYXJkRHJpdmU6d1NlLGZhSGRkOnFscixmYUZpbGVaaXBwZXI6TVNlLGZhRmlsZUFyY2hpdmU6amxyLGZhRmxvcHB5RGlzazprU2UsZmFTYXZlOlZscixmYUZhY2VHcmluVG9uZ3VlU3F1aW50OlNTZSxmYUdyaW5Ub25ndWVTcXVpbnQ6VWxyLGZhQ2FtZXJhOnpTZSxmYUNhbWVyYUFsdDpXbHIsZmFGYWNlR3JpblN0YXJzOkNTZSxmYUdyaW5TdGFyczpHbHIsZmFFeWU6WWxyLGZhRmFjZVNhZFRlYXI6X1NlLGZhU2FkVGVhcjpabHIsZmFTaGFyZUZyb21TcXVhcmU6VFNlLGZhU2hhcmVTcXVhcmU6WGxyLGZhTm90ZVN0aWNreTpMU2UsZmFTdGlja3lOb3RlOlFscixmYUhhbmRCYWNrRmlzdDpEU2UsZmFIYW5kUm9jazpLbHIsZmFDaGVzc1F1ZWVuOkpscixmYUZhY2VHcmluVGVhcnM6QVNlLGZhR3JpblRlYXJzOmVjcixmYVBlblRvU3F1YXJlOkVTZSxmYUVkaXQ6dGNyLGZhRmFjZUdyaW5CZWFtU3dlYXQ6JFNlLGZhR3JpbkJlYW1Td2VhdDpyY3IsZmFDbG9jazpQU2UsZmFDbG9ja0ZvdXI6YWNyLGZhRmFjZUxhdWdoV2luazpJU2UsZmFMYXVnaFdpbms6aWNyLGZhUGFwZXJQbGFuZTpvY3IsZmFIZWFydDpuY3IsZmFGb250QXdlc29tZTpVc2UsZmFGb250QXdlc29tZUZsYWc6c2NyLGZhRm9udEF3ZXNvbWVMb2dvRnVsbDpsY3IsZmFDbG9uZTpjY3IsZmFGb2xkZXJPcGVuOmRjcixmYVdpbmRvd01pbmltaXplOnVjcixmYVN0YXJIYWxmOmZjcixmYUFsYXJtQ2xvY2s6cGNyLGZhTmV3c3BhcGVyOmhjcixmYUhvc3BpdGFsOldzZSxmYUhvc3BpdGFsQWx0Om1jcixmYUhvc3BpdGFsV2lkZTpnY3IsZmFDaXJjbGVTdG9wOk5TZSxmYVN0b3BDaXJjbGU6eGNyLGZhT2JqZWN0VW5ncm91cDpiY3IsZmFDb21tZW50OnZjcixmYUNoZXNzUGF3bjp5Y3IsZmFDYWxlbmRhclBsdXM6d2NyLGZhQ2xpcGJvYXJkOk1jcixmYVRodW1ic0Rvd246a2NyLGZhSWRCYWRnZTpTY3IsZmFTcXVhcmVDaGVjazpGU2UsZmFDaGVja1NxdWFyZTp6Y3IsZmFDaGVzc0Jpc2hvcDpDY3IsZmFFbnZlbG9wZU9wZW46X2NyLGZhQ2lyY2xlWG1hcms6RTksZmFUaW1lc0NpcmNsZTpUY3IsZmFYbWFya0NpcmNsZTpMY3IsZmFTcXVhcmVDYXJldFVwOk9TZSxmYUNhcmV0U3F1YXJlVXA6RGNyLGZhRmlsZUltYWdlOkFjcixmYVNxdWFyZUNhcmV0UmlnaHQ6UlNlLGZhQ2FyZXRTcXVhcmVSaWdodDpFY3IsZmFTdW46SnNlLGZhSW1hZ2U6JGNyLGZhTGlnaHRidWxiOlBjcixmYUFkZHJlc3NDYXJkOkdzZSxmYUNvbnRhY3RDYXJkOkljcixmYVZjYXJkOk5jcixmYUZhY2VNZWg6QlNlLGZhTWVoOkZjcixmYU1hcDpPY3IsZmFIYW5kUG9pbnREb3duOlJjcixmYUZhY2VNZWhCbGFuazpIU2UsZmFNZWhCbGFuazpCY3IsZmFGYWNlR3JpblRvbmd1ZTpxU2UsZmFHcmluVG9uZ3VlOkhjcixmYUZ1dGJvbDpZc2UsZmFGdXRib2xCYWxsOnFjcixmYVNvY2NlckJhbGw6amNyLGZhRmFjZVN1cnByaXNlOmpTZSxmYVN1cnByaXNlOlZjcixmYUZvbGRlcjpWU2UsZmFGb2xkZXJCbGFuazpVY3IsZmFDbG91ZDpXY3IsZmFDaXJjbGU6R2NyLGZhRmFjZUdyaW5TcXVpbnQ6VVNlLGZhR3JpblNxdWludDpZY3IsZmFDaXJjbGVVc2VyOldTZSxmYVVzZXJDaXJjbGU6WmNyLGZhUmVjdGFuZ2xlTGlzdDpHU2UsZmFMaXN0QWx0OlhjcixmYUhhbmQ6WVNlLGZhSGFuZFBhcGVyOlFjcixmYVRodW1ic1VwOktjcixmYUJ1aWxkaW5nOkpjcixmYUNoZXNzUm9vazplMHIsZmFDaXJjbGVRdWVzdGlvbjpaU2UsZmFRdWVzdGlvbkNpcmNsZTp0MHIsZmFGaWxlOnIwcixmYUZhY2VTYWRDcnk6WFNlLGZhU2FkQ3J5OmEwcixmYUNhbGVuZGFyTWludXM6aTByLGZhRmFjZVRpcmVkOlFTZSxmYVRpcmVkOm8wcixmYUhhbmRQb2ludFJpZ2h0Om4wcixmYUNpcmNsZVVwOktTZSxmYUFycm93QWx0Q2lyY2xlVXA6czByLGZhSGFuZFNjaXNzb3JzOmwwcixmYUdlbTpjMHIsZmFSZWN0YW5nbGVYbWFyazpkdyxmYVJlY3RhbmdsZVRpbWVzOmQwcixmYVRpbWVzUmVjdGFuZ2xlOnUwcixmYVdpbmRvd0Nsb3NlOmYwcixmYVRyYXNoQ2FuOmh3LGZhVHJhc2hBbHQ6cDByLGZhTGlmZVJpbmc6aDByLGZhQ29weXJpZ2h0Om0wcixmYUNpcmNsZUxlZnQ6SlNlLGZhQXJyb3dBbHRDaXJjbGVMZWZ0OmcwcixmYUNhbGVuZGFyOngwcixmYUZhY2VGcm93bk9wZW46ZXplLGZhRnJvd25PcGVuOmIwcixmYUNoYXJ0QmFyOnR6ZSxmYUJhckNoYXJ0OnYwcixmYUhvdXNlOnV3LGZhSG9tZTp5MHIsZmFIb21lQWx0OncwcixmYUhvbWVMZ0FsdDpNMHIsZmFGYWNlRnJvd246cnplLGZhRnJvd246azByLGZhVXNlcjpac2UsZmFVc2VyQWx0OlMwcixmYVVzZXJMYXJnZTp6MHIsZmFTbm93Zmxha2U6QzByLGZhQm9va21hcms6XzByLGZhU3F1YXJlQ2FyZXRMZWZ0OmF6ZSxmYUNhcmV0U3F1YXJlTGVmdDpUMHIsZmFIYW5kc2hha2U6WHNlLGZhSGFuZHNoYWtlQWx0OkwwcixmYUhhbmRzaGFrZVNpbXBsZTpEMHIsZmFGYWNlU21pbGVXaW5rOml6ZSxmYVNtaWxlV2luazpBMHIsZmFGYWNlR3JpblNxdWludFRlYXJzOm96ZSxmYUdyaW5TcXVpbnRUZWFyczpFMHIsZmFGaWxlQXVkaW86JDByLGZhQ2FsZW5kYXJYbWFyazpuemUsZmFDYWxlbmRhclRpbWVzOlAwcixmYUNpcmNsZURvd246c3plLGZhQXJyb3dBbHRDaXJjbGVEb3duOkkwcixmYUZpbGVMaW5lczpRc2UsZmFGaWxlQWx0Ok4wcixmYUZpbGVUZXh0OkYwcixmYUNvbW1lbnRzOk8wcixmYUNpcmNsZUNoZWNrOm13LGZhQ2hlY2tDaXJjbGU6UjByLGZhTW9vbjpCMHIsZmFDbG9zZWRDYXB0aW9uaW5nOkgwcixmYUltYWdlczpxMHIsZmFDaXJjbGVSaWdodDpsemUsZmFBcnJvd0FsdENpcmNsZVJpZ2h0OmowcixmYUlkQ2FyZDpjemUsZmFEcml2ZXJzTGljZW5zZTpWMHIsZmFDaXJjbGVQbGF5OmR6ZSxmYVBsYXlDaXJjbGU6VTByLGZhRmFjZUxhdWdoQmVhbTp1emUsZmFMYXVnaEJlYW06VzByLGZhQWRkcmVzc0Jvb2s6ZnplLGZhQ29udGFjdEJvb2s6RzByLGZhSG91cmdsYXNzOnB6ZSxmYUhvdXJnbGFzc0VtcHR5OlkwcixmYUhlYWRwaG9uZXM6S3NlLGZhSGVhZHBob25lc0FsdDpaMHIsZmFIZWFkcGhvbmVzU2ltcGxlOlgwcixmYUZpbGVQb3dlcnBvaW50OlEwcixmYVdpbmRvd01heGltaXplOkswcixmYUNvbW1lbnREb3RzOmh6ZSxmYUNvbW1lbnRpbmc6SjByLGZhRmFjZUdyaW5Ub25ndWVXaW5rOm16ZSxmYUdyaW5Ub25ndWVXaW5rOmU0cixmYUhvdXJnbGFzc0hhbGY6Z3plLGZhSG91cmdsYXNzMjp0NHIsZmFDcmVkaXRDYXJkOnh6ZSxmYUNyZWRpdENhcmRBbHQ6cjRyLGZhSGFuZFNwb2NrOmE0cixmYUJlbGxTbGFzaDppNHIsZmFTdGFyOm80cixmYUZsYWc6bjRyLGZhTGVtb246czRyLGZhV2luZG93UmVzdG9yZTpsNHIsZmFGYWNlR3JpbkhlYXJ0czpiemUsZmFHcmluSGVhcnRzOmM0cixmYUZhY2VLaXNzQmVhbTp2emUsZmFLaXNzQmVhbTpkNHIsZmFGaWxlUGRmOnU0cixmYUZhY2VHcmluV2lkZTp5emUsZmFHcmluQWx0OmY0cixmYUZhY2VMYXVnaFNxdWludDp3emUsZmFMYXVnaFNxdWludDpwNHIsZmFGYWNlS2lzc1dpbmtIZWFydDpNemUsZmFLaXNzV2lua0hlYXJ0Omg0cixmYUNvcHk6ZTJlLGZhQ2hlc3NLaW5nOm00cixmYVNxdWFyZVBsdXM6a3plLGZhUGx1c1NxdWFyZTpnNHIsZmFGaWxlQ29kZTp4NHIsZmFGYWNlR3Jpbldpbms6U3plLGZhR3Jpbldpbms6YjRyLGZhTW9uZXlCaWxsMTp6emUsZmFNb25leUJpbGxBbHQ6djRyLGZhRXllU2xhc2g6eTRyLGZhRmlsZVdvcmQ6dzRyLGZhRmFjZUFuZ3J5OkN6ZSxmYUFuZ3J5Ok00cixmYUNoZXNzS25pZ2h0Oms0cixmYUZhY2VHcmluQmVhbTpfemUsZmFHcmluQmVhbTpTNHIsZmFIYW5kUGVhY2U6ejRyLGZhQ29tcGFzczpDNHIsZmFTcXVhcmU6XzRyLGZhRmFjZUdyaW46VHplLGZhR3JpbjpUNHIsZmFGYWNlU21pbGU6THplLGZhU21pbGU6TDRyLGZhRmFjZVNtaWxlQmVhbTpEemUsZmFTbWlsZUJlYW06RDRyLGZhRm9sZGVyQ2xvc2VkOkE0cixmYUtleWJvYXJkOkU0cixmYUZhY2VSb2xsaW5nRXllczpBemUsZmFNZWhSb2xsaW5nRXllczokNHIsZmFGYWNlR3JpbWFjZTpFemUsZmFHcmltYWNlOlA0cixmYUNpcmNsZURvdDokemUsZmFEb3RDaXJjbGU6STRyLGZhT2JqZWN0R3JvdXA6TjRyLGZhRmFjZUZsdXNoZWQ6UHplLGZhRmx1c2hlZDpGNHIsZmFTdGFySGFsZlN0cm9rZTpJemUsZmFTdGFySGFsZkFsdDpPNHIsZmFGaWxlVmlkZW86UjRyLGZhRmFjZUxhdWdoOk56ZSxmYUxhdWdoOkI0cixmYUhhbmRQb2ludGVyOkg0cixmYVJlZ2lzdGVyZWQ6cTRyfX0pO3ZhciBQYmEsVjRyLFU0cixXNHIsRzRyLFk0cixaNHIsWDRyLFE0cixLNHIsSjRyLHQyZSxlM3IsdDNyLHIzcixhM3IsRnplLGkzcixPemUsbzNyLG4zcixzM3IsUnplLGwzcixjM3IsZDNyLHUzcixFdyxmM3IscDNyLEJ6ZSxoM3IsbTNyLGczcix4M3IsYjNyLHYzcix5M3IsdzNyLEh6ZSxNM3IsazNyLFMzcixxemUsejNyLEMzcixfM3IsVDNyLEwzciwkdyxEM3IsanplLEEzcixFM3IscjJlLCQzcixQM3IsVnplLEkzcixVemUsTjNyLEYzcixXemUsTzNyLEd6ZSxSM3IsWXplLEIzcixIM3IscTNyLGozcixWM3IsVTNyLFczcixaemUsRzNyLFkzcixaM3IsWDNyLFh6ZSxRM3IsSzNyLEozcixlZHIsdGRyLHJkcixhMmUsYWRyLGlkcixvZHIsaTJlLG5kcixzZHIsbGRyLFF6ZSxjZHIsZGRyLHVkcixmZHIsS3plLHBkcixLMmUsaGRyLEoyZSxtZHIsZ2RyLEp6ZSx4ZHIsZUNlLGJkcix2ZHIsbzJlLHlkcix3ZHIsTWRyLGtkcixTZHIsemRyLENkcixfZHIsZWxlLFB3LFRkcixMZHIsdENlLERkcixBZHIsZ3csRWRyLCRkcixQZHIsckNlLElkcixOZHIsRmRyLGFDZSxPZHIsaUNlLFJkcixCZHIsSGRyLHFkcixvQ2UsamRyLFZkcixVZHIsbkNlLFdkcixzQ2UsR2RyLFlkcixaZHIsWGRyLG4yZSxRZHIsS2RyLEpkcixlNnIsdDZyLHI2cixhNnIsbENlLGk2cixvNnIsbjZyLHM2cixsNnIsY0NlLGM2cixkNnIseHcsdTZyLGY2cixwNnIsaDZyLG02cixnNnIsczJlLHg2cixiNnIsdjZyLHk2cix3NnIsZENlLE02cixrNnIsUzZyLHo2cixDNnIsXzZyLHVDZSxUNnIsTDZyLEQ2cixBNnIsZkNlLEU2ciwkNnIsUDZyLHBDZSxJNnIsTjZyLGhDZSxGNnIsbUNlLE82cixSNnIsZ0NlLEI2cixINnIseENlLHE2cixiQ2UsajZyLFY2cixJdyxVNnIsTncsVzZyLEc2cixsMmUsWTZyLFo2cixYNnIsdkNlLFE2cixLNnIseUNlLEo2cixldXIsdHVyLHJ1cix3Q2UsYXVyLGl1cixvdXIsbnVyLHN1cixNQ2UsbHVyLGN1cixkdXIsdXVyLGtDZSxmdXIsU0NlLHB1cixodXIsbXVyLGd1cix4dXIsekNlLGJ1cix2dXIseXVyLHd1cixDQ2UsTXVyLGt1cixfQ2UsU3VyLFRDZSx6dXIsQ3VyLF91cixUdXIsTHVyLER1cixMQ2UsQXVyLEV1ciwkdXIsUHVyLEl1cixEQ2UsTnVyLEZ1cixPdXIsUnVyLEFDZSxCdXIsRUNlLEh1cix0bGUscmxlLCRDZSxxdXIsUENlLGp1cixWdXIsVXVyLFl3LElDZSxXdXIsR3VyLFl1cixadXIsWHVyLFF1cixOQ2UsS3VyLGFsZSxKdXIsZWZyLHRmcixyZnIsYWZyLEZDZSxpZnIsT0NlLG9mcixuZnIsc2ZyLGxmcixSQ2UsY2ZyLGMyZSxkZnIsdWZyLGZmcixCQ2UscGZyLGhmcixtZnIsZ2ZyLEhDZSx4ZnIsYmZyLHZmcix5ZnIscUNlLHdmcixNZnIsa2ZyLFNmcix6ZnIsQ2ZyLF9mcixUZnIsTGZyLERmcixBZnIsRWZyLCRmcixqQ2UsUGZyLElmcixOZnIsRmZyLE9mcixSZnIsQmZyLFZDZSxIZnIscWZyLGpmciwkOSxWZnIsVWZyLFdmcixHZnIsWWZyLFVDZSxaZnIsV0NlLFhmcixHQ2UsUWZyLFlDZSxLZnIsWkNlLEpmcixGdyxlNXIsWENlLHQ1cixRQ2UscjVyLEtDZSxhNXIsaTVyLG81cixuNXIsSkNlLHM1cixsNXIsZV9lLGM1cixkNXIsdF9lLHU1cixmNXIscDVyLGg1cixyX2UsbTVyLGc1cix4NXIsYV9lLGI1cix2NXIsYncseTVyLHc1cixNNXIsazVyLFM1cix6NXIsaV9lLEM1cixvX2UsXzVyLFQ1cixMNXIsbl9lLEQ1cixBNXIsRTVyLHNfZSwkNXIsbF9lLFA1cixkMmUsSTVyLE41cixGNXIsTzVyLFI1cixCNXIsSDVyLHE1cixqNXIsVjVyLFU1cixXNXIsRzVyLFk1cix2dyxaNXIsWDVyLFE1cixLNXIsSjVyLGVwcix0cHIscnByLGNfZSxhcHIsaXByLG9wcixucHIsc3ByLGxwcixjcHIsZHByLHVwcixmcHIsZF9lLHBwcixocHIsbXByLGdwcix4cHIsYnByLHZwcix1X2UseXByLGZfZSx3cHIsTXByLHBfZSxrcHIsU3ByLHpwcixDcHIsaF9lLF9wcixUcHIsTHByLG1fZSxEcHIsZ19lLEFwcixFcHIseF9lLCRwcixQcHIsSXByLE5wcixiX2UsRnByLE9wcixScHIsaWxlLEJwcixIcHIscXByLHZfZSxqcHIsVnByLFVwcixXcHIsR3ByLHlfZSxZcHIsWnByLFhwcixRcHIsS3ByLHdfZSxKcHIsZThyLHQ4cixNX2UscjhyLGE4cix1MmUsaThyLG84cixuOHIsczhyLGtfZSxsOHIsYzhyLGQ4cixTX2UsdThyLHpfZSxmOHIscDhyLGg4cixtOHIsT3csZzhyLENfZSx4OHIsYjhyLHY4cix5OHIsdzhyLF9fZSxNOHIsVF9lLGs4cixMX2UsUzhyLHo4cixmMmUsQzhyLF84cixEX2UsVDhyLHAyZSxMOHIsRDhyLEE4cixFOHIsJDhyLFA4cixJOHIsTjhyLEFfZSxGOHIsTzhyLFI4cixCOHIsSDhyLEVfZSxxOHIsajhyLFY4ciwkX2UsVThyLFBfZSxXOHIsSV9lLEc4cixZOHIsWjhyLFg4cixROHIsSzhyLEo4cixOX2UsZWhyLHRocixyaHIsYWhyLEZfZSxpaHIsb2hyLG5ocixzaHIsbGhyLGNocixPX2UsZGhyLHVocixSX2UsZmhyLHBocixCX2UsaGhyLG1ocixnaHIseGhyLEhfZSxiaHIsdmhyLHlocixxX2Usd2hyLGpfZSxNaHIsa2hyLFNocix6aHIsVl9lLENocixfaHIsVGhyLExocixEaHIsVV9lLEFocixXX2UsRWhyLEdfZSwkaHIsUGhyLFlfZSxJaHIsWl9lLE5ocixGaHIsT2hyLFJocixCaHIsSGhyLHFocixqaHIsVmhyLFVocixXaHIsaDJlLEdocixZaHIsRjksWmhyLFhocixRaHIsbTJlLEtocixKaHIsZW1yLHRtcixybXIsYW1yLGltcixYX2Usb21yLFFfZSxubXIsc21yLGxtcixLX2UsY21yLEpfZSxkbXIsdW1yLGcyZSxmbXIscG1yLGhtcixtbXIsUDksZ21yLHhtcixibXIsdm1yLHltcix3bXIsTW1yLGVUZSxrbXIsU21yLHptcixDbXIsdFRlLF9tcixUbXIsTG1yLERtcixBbXIsRW1yLCRtcixyVGUsUG1yLEltcixObXIsRm1yLE9tcixSbXIsYVRlLEJtcixvbGUsaVRlLEhtcixxbXIsam1yLG9UZSxWbXIsblRlLFVtcixXbXIsR21yLHNUZSxZbXIsWm1yLGxUZSxYbXIsUW1yLEttcixKbXIsY1RlLGU3cix0N3IscjdyLGE3cixpN3IsbzdyLGRUZSxuN3IsczdyLG5sZSxsN3IsYzdyLHVUZSxkN3IsdTdyLGY3cix5dyxwN3IsaDdyLG03cixnN3Isd3cseDdyLGI3cix2N3IseTdyLHc3cixNN3IsZlRlLGs3cix4MmUsUzdyLHo3cixDN3IscFRlLF83cixUN3IsTDdyLEQ3cixBN3IsRTdyLCQ3cixoVGUsUDdyLHNsZSxJN3IsTjdyLEY3cixtVGUsTzdyLGdUZSxSN3IsQjdyLHhUZSxIN3IsTXcscTdyLGo3cixWN3IsVTdyLFc3cixHN3IsWTdyLFo3cixYN3IsYlRlLFE3cixLN3IsSjdyLGU5cixiMmUsdDlyLHI5cix2VGUsYTlyLGk5cixvOXIseVRlLG45cixzOXIsbDlyLHdUZSxjOXIsZDlyLHU5cixmOXIscDlyLGg5cixtOXIsZzlyLHg5cixNVGUsYjlyLGtUZSx2OXIseTlyLHc5cixNOXIsazlyLFM5cix6OXIsU1RlLEM5cixfOXIsVDlyLHpUZSxMOXIsRDlyLENUZSxBOXIsX1RlLEU5cixUVGUsJDlyLFA5cixJOXIsTFRlLE45cixEVGUsRjlyLEFUZSxPOXIsUjlyLEVUZSxCOXIsJFRlLEg5cixQVGUscTlyLGo5cixJVGUsVjlyLFU5cixXOXIsRzlyLFk5cixaOXIsWDlyLFE5cixLOXIsSjlyLE5UZSxlZ3IsRlRlLHRncixPVGUscmdyLGFncixsbGUsaWdyLFJUZSxvZ3IsbmdyLHNncixCVGUsbGdyLGNncixIVGUsZGdyLFJ3LHVncixmZ3IscGdyLHFUZSxoZ3IsalRlLG1ncixnZ3IsVlRlLHhncixVVGUsYmdyLFdUZSx2Z3IseWdyLHdncixNZ3Isa2dyLEdUZSxTZ3IsWVRlLHpncixDZ3IsX2dyLFRncixaVGUsTGdyLERncixBZ3IsWFRlLEVnciwkZ3IsUGdyLFFUZSxJZ3IsTmdyLEZncixPZ3IsS1RlLFJncixCZ3IsSlRlLEhncixxZ3IsamdyLGVMZSxWZ3IsVWdyLFdncix0TGUsR2dyLHJMZSxZZ3IsdjJlLFpncixYZ3IsUWdyLGFMZSxLZ3IsSmdyLGV4cixpTGUsdHhyLHJ4cixheHIsb0xlLGl4cixveHIsbnhyLHN4cixseHIsY3hyLGR4cix1eHIsZnhyLHB4cixoeHIsbXhyLG5MZSxneHIsY2xlLHh4cixzTGUsYnhyLHZ4cix5eHIsd3hyLGxMZSxNeHIsa3hyLFN4cix6eHIsQ3hyLF94cixUeHIsa3csTHhyLER4cixBeHIsRXhyLEJ3LCR4cixjTGUsUHhyLEl4cixOeHIsZExlLEZ4cixPeHIsdUxlLFJ4cixCeHIsSHhyLHF4cixqeHIsZkxlLFZ4cixwTGUsVXhyLFd4cixHeHIsaExlLFl4cixaeHIsWHhyLG1MZSxReHIsS3hyLEp4cixlYnIsdGJyLHJicixhYnIsZ0xlLGlicixkbGUsb2JyLG5icixzYnIseExlLGxicixjYnIsYkxlLGRicix2TGUsdWJyLGZicixwYnIseUxlLGhicix3TGUsbWJyLE1MZSxnYnIseGJyLGtMZSxiYnIsdmJyLHlicix3YnIsU0xlLE1icixTdyxrYnIsU2JyLHpicixDYnIsekxlLF9icixDTGUsVGJyLExicixEYnIsQWJyLF9MZSxFYnIsencsJGJyLFBicixJYnIsVExlLE5icixGYnIsT2JyLFJicixMTGUsQmJyLERMZSxIYnIscWJyLGpicixBTGUsVmJyLEVMZSxVYnIsV2JyLCRMZSxHYnIsUExlLFlicixJTGUsWmJyLE5MZSxYYnIsUWJyLEticixKYnIsRkxlLGV2cix0dnIscnZyLGF2cixpdnIsb3ZyLG52cixzdnIsT0xlLGx2cixSTGUsY3ZyLGR2cix1dnIsZnZyLEJMZSxwdnIsaHZyLHkyZSxtdnIsZ3ZyLHh2cixidnIsdnZyLHl2cix3dnIsQ3csTXZyLGt2cixTdnIsenZyLEN2cixfdnIsVHZyLEx2cixEdnIsQXZyLEV2ciwkdnIsUHZyLHcyZSxJdnIsTnZyLEZ2cixPdnIsUnZyLEJ2cixITGUsSHZyLHFMZSxxdnIsanZyLFZ2cixNMmUsVXZyLFd2cixHdnIsakxlLFl2cixrMmUsWnZyLFh2cixRdnIsS3ZyLHVsZSxTMmUsSnZyLGV5cixWTGUsdHlyLHJ5cixheXIsaXlyLFVMZSxveXIsbnlyLFdMZSxzeXIsbHlyLEdMZSxjeXIsZHlyLHV5cixmeXIscHlyLGh5cix6MmUsbXlyLGd5cixZTGUseHlyLGJ5cix2eXIseXlyLHd5cixNeXIsa3lyLFN5cixaTGUsenlyLEN5cixYTGUsX3lyLFFMZSxUeXIsTHlyLHIzLER5cixBeXIsRXlyLCR5cixLTGUsUHlyLEl5cixOeXIsRnlyLEpMZSxPeXIsZURlLFJ5cixDMmUsQnlyLEh5cixxeXIsdERlLGp5cixmbGUsVnlyLFV5cixyRGUsV3lyLF8yZSxHeXIsWXlyLFp5cixYeXIsUXlyLEt5cixIdyxKeXIsZXdyLGFEZSx0d3IscndyLGF3cixpRGUsaXdyLG9EZSxvd3IsX3csbndyLHN3cixsd3IsY3dyLGR3cix1d3IsZndyLG5EZSxwd3IsaHdyLHNEZSxtd3IsbERlLGd3cixjRGUseHdyLGJ3cix2d3IseXdyLHd3cixNd3IsZERlLGt3cixTd3IsendyLEN3cixfd3IsdURlLFR3cixmRGUsTHdyLHBEZSxEd3IsQXdyLEV3cixUMmUsJHdyLFB3cixJd3IsTndyLEZ3cixoRGUsT3dyLG1EZSxSd3IsQndyLEh3cixxd3IsZ0RlLGp3cix4RGUsVndyLFV3cixMMmUsV3dyLEd3cixZd3IsWndyLFh3cixiRGUsUXdyLEt3cix2RGUsSndyLHlEZSxlTXIsdE1yLHJNcixhTXIsaU1yLG9NcixuTXIsc01yLGxNcixjTXIsd0RlLGRNcix1TXIsZk1yLHBNcixEMmUsaE1yLG1NcixnTXIseE1yLE1EZSxiTXIsdk1yLGtEZSx5TXIsd01yLE1NcixrTXIsU0RlLFNNcix6TXIsQ01yLHF3LF9NcixUTXIsQTJlLExNcixETXIsekRlLEFNcixFTXIsJE1yLFBNcixJTXIsQ0RlLE5NcixGTXIsX0RlLE9NcixURGUsUk1yLEJNcixITXIscU1yLGpNcixMRGUsVk1yLEREZSxVTXIsQURlLFdNcixHTXIsWU1yLFpNcixFRGUsWE1yLFFNciwkRGUsS01yLEpNcixla3IsUERlLHRrcixya3IsRTJlLGFrcixpa3IsSURlLG9rcixORGUsbmtyLEZEZSxza3IscGxlLE9EZSxsa3IsUkRlLGNrcixka3IsdWtyLGZrcixwa3IsaGtyLCQyZSxta3IsZ2tyLHhrcixCRGUsYmtyLHZrcix5a3IsUDJlLHdrcixNa3Isa2tyLFNrcixJMmUsemtyLENrcixfa3IsVGtyLEhEZSxMa3IscURlLERrcixBa3IsRWtyLCRrcixQa3IsTjJlLElrcixOa3IsRmtyLE9rcixSa3IsQmtyLEYyZSxIa3IscWtyLGprcixqRGUsVmtyLFVrcixXa3IsR2tyLFZEZSxZa3IsWmtyLFhrcixRa3IsS2tyLEprcixVRGUsZVNyLHRTcixyU3IsYVNyLFdEZSxpU3Isb1NyLFR3LG5TcixzU3IsbFNyLEdEZSxjU3IsZFNyLHVTcixmU3IscFNyLGhTcixtU3IsZ1NyLHhTcixZRGUsYlNyLHZTcixaRGUseVNyLHdTcixNU3IsWERlLGtTcixTU3IselNyLENTcixfU3IsUURlLFRTcixobGUsS0RlLExTcixEU3IsQVNyLEVTciwkU3IsSkRlLFBTcixJU3IsTlNyLEZTcixPU3IsZUFlLFJTcixCU3IsSFNyLHFTcixqU3IsTzJlLFZTcixVU3IsV1NyLEdTcixZU3IsdEFlLFpTcixyQWUsWFNyLFFTcixLU3IsUjJlLEpTcixlenIsdHpyLGFBZSxyenIsaUFlLGF6cixpenIsb3pyLG56cixzenIsbHpyLG9BZSxjenIsZHpyLG5BZSx1enIsc0FlLGZ6cixsQWUscHpyLGh6cixjQWUsbXpyLGRBZSxnenIseHpyLGJ6cix2enIseXpyLHd6cixNenIsa3pyLFN6cix1QWUsenpyLEN6cixCMmUsX3pyLFR6cixmQWUsTHpyLER6cixBenIscEFlLEV6ciwkenIsUHpyLEl6cixoQWUsTnpyLEZ6cixPenIsUnpyLEJ6cixtQWUsSHpyLHF6cixqenIsSDJlLFZ6cixVenIsV3pyLEd6cixZenIsWnpyLHEyZSxYenIsUXpyLEt6cixnQWUsSnpyLHhBZSxlQ3IsdENyLHJDcixhQ3IsYkFlLGlDcix2QWUsb0NyLG5Dcix5QWUsc0NyLGxDcix3QWUsY0NyLGRDcix1Q3IsZkNyLE1BZSxwQ3IsaENyLG1DcixnQ3IsancseENyLG1sZSxiQ3IsdkNyLHlDcix3Q3Isa0FlLE1DcixTQWUsa0NyLFNDcix6Q3IsQ0NyLEx3LF9DcixUQ3IsTENyLER3LERDcixBQ3IsRUNyLHpBZSwkQ3IsUENyLGoyZSxJQ3IsTkNyLEZDcixPQ3IsQ0FlLFJDcixCQ3IsSENyLF9BZSxxQ3IsakNyLFZDcixVQ3IsV0NyLFRBZSxHQ3IsVjJlLFlDcixaQ3IsWENyLFFDcixLQ3IsSkNyLExBZSxlX3IsREFlLHRfcixBQWUscl9yLGFfcixFQWUsaV9yLGdsZSwkQWUsb19yLG5fcixzX3IsUEFlLGxfcixjX3IseGxlLElBZSxkX3IsdV9yLGZfcixwX3IsSTksaF9yLG1fcixnX3IseF9yLE5BZSxiX3Isdl9yLHlfcixGQWUsd19yLE1fcixrX3IsU19yLE9BZSx6X3IsQ19yLF9fcixUX3IsTF9yLFUyZSxEX3IsQV9yLFZ3LEVfcixSQWUsJF9yLEJBZSxQX3IsSV9yLE5fcixGX3IsSEFlLE9fcixSX3IsQl9yLEhfcixxQWUscV9yLGpfcixWX3IsakFlLFVfcixXX3IsR19yLFlfcixWQWUsWl9yLFhfcixRX3IsVUFlLEtfcixKX3IsZVRyLFV3LHRUcixyVHIsV0FlLGFUcixHQWUsaVRyLFlBZSxvVHIsWkFlLG5UcixzVHIsWEFlLGxUcixjVHIsZFRyLHVUcixmVHIscFRyLFFBZSxoVHIsbVRyLEtBZSxnVHIseFRyLEpBZSxiVHIsdlRyLHlUcixlRWUsd1RyLE1UcixrVHIsU1RyLHpUcixOOSxDVHIsX1RyLFRUcixMVHIsRFRyLEFUcixFVHIsJFRyLFBUcixJVHIsTlRyLEZUcixPVHIsUlRyLEJUcixIVHIscVRyLHRFZSxqVHIsVlRyLFVUcixXVHIsckVlLEdUcixZVHIsWlRyLEF3LFhUcixRVHIsS1RyLEpUcixlTHIsYUVlLHRMcixXdyxyTHIsYUxyLGlMcixpRWUsb0xyLG5McixzTHIsbExyLG9FZSxjTHIsZExyLG5FZSx1THIsZkxyLHBMcixzRWUsaExyLG1McixsRWUsZ0xyLGNFZSx4THIsYkxyLHZMcix5THIsd0xyLGRFZSxNTHIsa0xyLFNMcix1RWUsekxyLENMcixfTHIsVExyLExMcixETHIsQUxyLGZFZSxFTHIscEVlLCRMcixoRWUsUExyLFcyZSxJTHIsTkxyLG1FZSxGTHIsZ0VlLE9Mcix4RWUsUkxyLEJMcixITHIscUxyLGpMcixWTHIsYkVlLFVMcix2RWUsV0xyLEdMcixZTHIsWkxyLFhMcix5RWUsUUxyLHdFZSxLTHIsTUVlLEpMcixrRWUsZURyLHREcixyRHIsYURyLFNFZSxpRHIsb0RyLEcyZSxuRHIsc0RyLHpFZSxsRHIsY0RyLGREcix1RHIsQ0VlLGZEcixwRHIsaERyLG1EcixfRWUsZ0RyLE85LHhEcixiRHIsVEVlLHZEcixMRWUseURyLHdEcixNRHIsWTJlLGtEcixTRHIsekRyLERFZSxDRHIsQUVlLF9EcixFRWUsVERyLCRFZSxMRHIsRERyLEFEcixFRHIsJERyLFBEcixJRHIsWjJlLE5EcixGRHIsT0RyLFJEcixCRHIsUEVlLEhEcixxRHIsakRyLFZEcixVRHIsV0RyLElFZSxHRHIsWURyLE5FZSxaRHIsWERyLFgyZSxRRHIsS0RyLEpEcixHdyxlQXIsdEFyLHJBcixGRWUsYUFyLE9FZSxpQXIsb0FyLG5BcixzQXIsbEFyLFJFZSxjQXIsZEFyLHVBcixmQXIscEFyLFEyZSxoQXIsbUFyLGdBcix4QXIsYkFyLEJFZSx2QXIsSEVlLHlBcix3QXIscUVlLE1BcixqRWUsa0FyLFZFZSxTQXIsVUVlLHpBcixDQXIsV0VlLF9BcixUQXIsTEFyLERBcixBQXIsRUFyLEliYSwkQXI9bCgoKT0+e1BiYT0iZmFzIixWNHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiMCIsaWNvbjpbMzIwLDUxMixbXSwiMzAiLCJNMCAxOTJDMCAxMDMuNiA3MS42IDMyIDE2MCAzMnMxNjAgNzEuNiAxNjAgMTYwbDAgMTI4YzAgODguNC03MS42IDE2MC0xNjAgMTYwUzAgNDA4LjQgMCAzMjBMMCAxOTJ6TTE2MCA5NmMtNTMgMC05NiA0My05NiA5NmwwIDEyOGMwIDUzIDQzIDk2IDk2IDk2czk2LTQzIDk2LTk2bDAtMTI4YzAtNTMtNDMtOTYtOTYtOTZ6Il19LFU0cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiIxIixpY29uOlsyNTYsNTEyLFtdLCIzMSIsIk0zMiAzMkMxNC4zIDMyIDAgNDYuMyAwIDY0UzE0LjMgOTYgMzIgOTZsNjQgMCAwIDMyMC02NCAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDE5MiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC02NCAwIDAtMzUyYzAtMTcuNy0xNC4zLTMyLTMyLTMyTDMyIDMyeiJdfSxXNHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiMiIsaWNvbjpbMzg0LDUxMixbXSwiMzIiLCJNNDggNjRjMC0xNy43IDE0LjMtMzIgMzItMzJsMTcxIDBjNjAuMiAwIDEwOSA0OC44IDEwOSAxMDkgMCA0My44LTI2LjIgODMuMy02Ni40IDEwMC40bC0xMzkuMSA1OUMxMTkgMzE1LjQgOTYgMzUwLjIgOTYgMzg4LjdsMCAyNy4zIDIyNCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMyTDY0IDQ4MGMtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC01OS4zYzAtNjQuMiAzOC40LTEyMi4yIDk3LjUtMTQ3LjNsMTM5LjEtNTljMTYuNi03LjEgMjcuNC0yMy40IDI3LjQtNDEuNCAwLTI0LjktMjAuMi00NS00NS00NUw4MCA5NkM2Mi4zIDk2IDQ4IDgxLjcgNDggNjR6Il19LEc0cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiIzIixpY29uOlszMjAsNTEyLFtdLCIzMyIsIk04MCAyODhjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsMTEyIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRzLTI4LjctNjQtNjQtNjRMMzIgOTZDMTQuMyA5NiAwIDgxLjcgMCA2NFMxNC4zIDMyIDMyIDMybDE2MCAwYzcwLjcgMCAxMjggNTcuMyAxMjggMTI4IDAgMzguMi0xNi44IDcyLjUtNDMuMyA5NiAyNi42IDIzLjUgNDMuMyA1Ny44IDQzLjMgOTYgMCA3MC43LTU3LjMgMTI4LTEyOCAxMjhMMzIgNDgwYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDE2MCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0cy0yOC43LTY0LTY0LTY0TDgwIDI4OHoiXX0sWTRyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6IjQiLGljb246WzM4NCw1MTIsW10sIjM0IiwiTTY0IDY0YzAtMTcuNy0xNC4zLTMyLTMyLTMyUzAgNDYuMyAwIDY0TDAgMjg4YzAgMzUuMyAyOC43IDY0IDY0IDY0bDE5MiAwIDAgOTZjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTk2IDMyIDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTMyIDAgMC0yMjRjMC0xNy43LTE0LjMtMzItMzItMzJzLTMyIDE0LjMtMzIgMzJsMCAyMjQtMTkyIDAgMC0yMjR6Il19LFo0cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiI1IixpY29uOlszMjAsNTEyLFtdLCIzNSIsIk0wIDY0QzAgNDYuMyAxNC4zIDMyIDMyIDMybDIyNCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC0xOTIgMCAwIDExMiAxMjAgMGM3NS4xIDAgMTM2IDYwLjkgMTM2IDEzNlMyNTkuMSA0ODAgMTg0IDQ4MEwzMiA0ODBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsMTUyIDBjMzkuOCAwIDcyLTMyLjIgNzItNzJzLTMyLjItNzItNzItNzJMMzIgMjcyYy0xNy43IDAtMzItMTQuMy0zMi0zMkwwIDY0eiJdfSxYNHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiNiIsaWNvbjpbMzg0LDUxMixbXSwiMzYiLCJNMjU2IDMyYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC04OCAwYy00OC42IDAtODggMzkuNC04OCA4OGwwIDMyLjJjMjIuOS0xNS4zIDUwLjQtMjQuMiA4MC0yNC4ybDQ4IDBjNzkuNSAwIDE0NCA2NC41IDE0NCAxNDRTMjg3LjUgNDgwIDIwOCA0ODBsLTQ4IDBDODAuNSA0ODAgMTYgNDE1LjUgMTYgMzM2bDAtMTUyQzE2IDEwMC4xIDg0LjEgMzIgMTY4IDMybDg4IDB6TTgwIDMzNmMwIDQ0LjIgMzUuOCA4MCA4MCA4MGw0OCAwYzQ0LjIgMCA4MC0zNS44IDgwLTgwcy0zNS44LTgwLTgwLTgwbC00OCAwYy00NC4yIDAtODAgMzUuOC04MCA4MHoiXX0sUTRyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6IjciLGljb246WzMyMCw1MTIsW10sIjM3IiwiTTAgNjRDMCA0Ni4zIDE0LjMgMzIgMzIgMzJsMjU2IDBjMTEuNSAwIDIyIDYuMSAyNy43IDE2LjFzNS43IDIyLjItLjEgMzIuMWwtMjI0IDM4NGMtOC45IDE1LjMtMjguNSAyMC40LTQzLjggMTEuNXMtMjAuNC0yOC41LTExLjUtNDMuOEwyMzIuMyA5NiAzMiA5NkMxNC4zIDk2IDAgODEuNyAwIDY0eiJdfSxLNHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiOCIsaWNvbjpbMzIwLDUxMixbXSwiMzgiLCJNMzA0IDE2MGMwLTcwLjctNTcuMy0xMjgtMTI4LTEyOGwtMzIgMGMtNzAuNyAwLTEyOCA1Ny4zLTEyOCAxMjggMCAzNC42IDEzLjcgNjYgMzYgODktMzEuNSAyMy4zLTUyIDYwLjgtNTIgMTAzIDAgNzAuNyA1Ny4zIDEyOCAxMjggMTI4bDY0IDBjNzAuNyAwIDEyOC01Ny4zIDEyOC0xMjggMC00Mi4yLTIwLjUtNzkuNy01Mi0xMDMgMjIuMy0yMyAzNi01NC40IDM2LTg5ek0xNzYuMSAyODhsMTUuOSAwYzM1LjMgMCA2NCAyOC43IDY0IDY0cy0yOC43IDY0LTY0IDY0bC02NCAwYy0zNS4zIDAtNjQtMjguNy02NC02NHMyOC43LTY0IDY0LTY0bDQ4LjEgMHptMC02NEwxNDQgMjI0Yy0zNS4zIDAtNjQtMjguNy02NC02NCAwLTM1LjMgMjguNy02NCA2NC02NGwzMiAwYzM1LjMgMCA2NCAyOC43IDY0IDY0IDAgMzUuMy0yOC42IDY0LTY0IDY0eiJdfSxKNHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiOSIsaWNvbjpbMzg0LDUxMixbXSwiMzkiLCJNMjA4IDMyMGMyOS42IDAgNTcuMS04LjkgODAtMjQuMmwwIDMyLjJjMCA0OC42LTM5LjQgODgtODggODhMOTYgNDE2Yy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDEwNCAwYzgzLjkgMCAxNTItNjguMSAxNTItMTUybDAtMTUyLjFDMzUxLjkgOTYuNCAyODcuNSAzMiAyMDggMzJsLTQ4IDBDODAuNSAzMiAxNiA5Ni41IDE2IDE3NlM4MC41IDMyMCAxNjAgMzIwbDQ4IDB6bTgwLTE0NGMwIDQ0LjItMzUuOCA4MC04MCA4MGwtNDggMGMtNDQuMiAwLTgwLTM1LjgtODAtODBzMzUuOC04MCA4MC04MGw0OCAwYzQ0LjIgMCA4MCAzNS44IDgwIDgweiJdfSx0MmU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZG9sbGFyLXNpZ24iLGljb246WzMyMCw1MTIsWzEyODE3OCw2MTc4MSwiZG9sbGFyIiwidXNkIl0sIjI0IiwiTTEzNiAyNGMwLTEzLjMgMTAuNy0yNCAyNC0yNHMyNCAxMC43IDI0IDI0bDAgNDAgNTYgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtMTE0LjkgMGMtMjQuOSAwLTQ1LjEgMjAuMi00NS4xIDQ1LjEgMCAyMi41IDE2LjUgNDEuNSAzOC43IDQ0LjdsOTEuNiAxMy4xYzUzLjggNy43IDkzLjcgNTMuNyA5My43IDEwOCAwIDYwLjMtNDguOSAxMDkuMS0xMDkuMSAxMDkuMWwtMTAuOSAwIDAgNDBjMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjRsMC00MC03MiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDEzMC45IDBjMjQuOSAwIDQ1LjEtMjAuMiA0NS4xLTQ1LjEgMC0yMi41LTE2LjUtNDEuNS0zOC43LTQ0LjdsLTkxLjYtMTMuMUM1NS45IDI3My41IDE2IDIyNy40IDE2IDE3My4xIDE2IDExMi45IDY0LjkgNjQgMTI1LjEgNjRsMTAuOSAwIDAtNDB6Il19LGUzcj10MmUsdDNyPXQyZSxyM3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZG9nIixpY29uOls1NzYsNTEyLFsxMjgwMjFdLCJmNmQzIiwiTTMyIDExMmMxNi42IDAgMzAuMiAxMi42IDMxLjggMjguN2wuMyA2LjZDNjUuOCAxNjMuNCA3OS40IDE3NiA5NiAxNzZsMTc5LjEgMCAxNDAuOSA2MC40IDAgMjQzLjZjMCAxNy43LTE0LjMgMzItMzIgMzJsLTMyIDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtMTMxLjNDMjk2IDM2MSAyNjguOCAzNjggMjQwIDM2OHMtNTYtNy04MC0xOS4zTDE2MCA0ODBjMCAxNy43LTE0LjMgMzItMzIgMzJsLTMyIDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtMjQ1LjZjLTM3LjMtMTMuMi02NC00OC42LTY0LTkwLjQgMC0xNy43IDE0LjMtMzIgMzItMzJ6TTM1NS44LTMyYzcuNyAwIDE0LjkgMy42IDE5LjYgOS44TDM5MiAwIDQ0NC4xIDBjMTIuNyAwIDI0LjkgNS4xIDMzLjkgMTQuMUw0OTYgMzIgNTUyIDMyYzEzLjMgMCAyNCAxMC43IDI0IDI0bDAgMjRjMCA0NC4yLTM1LjggODAtODAgODBsLTY0IDAtNyAyOC0xMjQuNy01My40IDMxLjYtMTQ3LjJDMzM0LjMtMjMuOSAzNDQuMi0zMiAzNTUuOC0zMnpNNDQ4IDQ0YTIwIDIwIDAgMSAwIDAgNDAgMjAgMjAgMCAxIDAgMC00MHoiXX0sYTNyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRydWNrLW1vdmluZyIsaWNvbjpbNjQwLDUxMixbXSwiZjRkZiIsIk02NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgNDI0YzAgNDguNiAzOS40IDg4IDg4IDg4IDI1LjIgMCA0OC0xMC42IDY0LTI3LjYgMTYgMTcgMzguOCAyNy42IDY0IDI3LjYgNDAuMyAwIDc0LjItMjcuMSA4NC43LTY0bDEzNC42IDBjMTAuNCAzNi45IDQ0LjQgNjQgODQuNyA2NCA0MyAwIDc4LjktMzAuOSA4Ni41LTcxLjcgMjAtMTAuOCAzMy41LTMyIDMzLjUtNTYuM2wwLTE0Ni43YzAtMTctNi43LTMzLjMtMTguNy00NS4zTDU3NiAxNDYuN2MtMTItMTItMjguMy0xOC43LTQ1LjMtMTguN2wtNTAuNyAwIDAtMzJjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzJ6TTQ4MCAxOTJsNTAuNyAwIDQ1LjMgNDUuMyAwIDUwLjctOTYgMCAwLTk2ek04OCAzODRhNDAgNDAgMCAxIDEgMCA4MCA0MCA0MCAwIDEgMSAwLTgwem0zOTIgNDBhNDAgNDAgMCAxIDEgODAgMCA0MCA0MCAwIDEgMSAtODAgMHpNMjE2IDM4NGE0MCA0MCAwIDEgMSAwIDgwIDQwIDQwIDAgMSAxIDAtODB6Il19LEZ6ZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJyb3RhdGUiLGljb246WzUxMiw1MTIsWzEyODI2MCwic3luYy1hbHQiXSwiZjJmMSIsIk00ODAuMSAxOTJsNy45IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRsMC0xNDRjMC05LjctNS44LTE4LjUtMTQuOC0yMi4yUzQ3Ny45IC4yIDQ3MSA3TDQxOS4zIDU4LjhDMzc1IDIyLjEgMzE4IDAgMjU2IDAgMTI3IDAgMjAuMyA5NS40IDIuNiAyMTkuNSAuMSAyMzcgMTIuMiAyNTMuMiAyOS43IDI1NS43czMzLjctOS43IDM2LjItMjcuMUM3OS4yIDEzNS41IDE1OS4zIDY0IDI1NiA2NCAzMDAuNCA2NCAzNDEuMiA3OSAzNzMuNyAxMDQuM0wzMjcgMTUxYy02LjkgNi45LTguOSAxNy4yLTUuMiAyNi4yUzMzNC4zIDE5MiAzNDQgMTkybDEzNi4xIDB6bTI5LjQgMTAwLjVjMi41LTE3LjUtOS43LTMzLjctMjcuMS0zNi4ycy0zMy43IDkuNy0zNi4yIDI3LjFjLTEzLjMgOTMtOTMuNCAxNjQuNS0xOTAuMSAxNjQuNS00NC40IDAtODUuMi0xNS0xMTcuNy00MC4zTDE4NSAzNjFjNi45LTYuOSA4LjktMTcuMiA1LjItMjYuMlMxNzcuNyAzMjAgMTY4IDMyMEwyNCAzMjBjLTEzLjMgMC0yNCAxMC43LTI0IDI0TDAgNDg4YzAgOS43IDUuOCAxOC41IDE0LjggMjIuMlMzNC4xIDUxMS44IDQxIDUwNWw1MS44LTUxLjhDMTM3IDQ4OS45IDE5NCA1MTIgMjU2IDUxMiAzODUgNTEyIDQ5MS43IDQxNi42IDUwOS40IDI5Mi41eiJdfSxpM3I9RnplLE96ZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzcXVhcmUtbWludXMiLGljb246WzQ0OCw1MTIsWzYxNzY3LCJtaW51cy1zcXVhcmUiXSwiZjE0NiIsIk02NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgNDE2YzAgMzUuMyAyOC43IDY0IDY0IDY0bDMyMCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMzIwYzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDMyem03MiAyMDBsMTc2IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTE3NiAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0eiJdfSxvM3I9T3plLG4zcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJhbGlnbi1qdXN0aWZ5IixpY29uOls0NDgsNTEyLFtdLCJmMDM5IiwiTTQ0OCA2NGMwLTE3LjctMTQuMy0zMi0zMi0zMkwzMiAzMkMxNC4zIDMyIDAgNDYuMyAwIDY0UzE0LjMgOTYgMzIgOTZsMzg0IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJ6bTAgMjU2YzAtMTcuNy0xNC4zLTMyLTMyLTMyTDMyIDI4OGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmwzODQgMGMxNy43IDAgMzItMTQuMyAzMi0zMnpNMCAxOTJjMCAxNy43IDE0LjMgMzIgMzIgMzJsMzg0IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJMMzIgMTYwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnpNNDQ4IDQ0OGMwLTE3LjctMTQuMy0zMi0zMi0zMkwzMiA0MTZjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsMzg0IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJ6Il19LHMzcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjYWxlbmRhci1jaGVjayIsaWNvbjpbNDQ4LDUxMixbXSwiZjI3NCIsIk0zMjAgMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDMyIDMyIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAyODhjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDEyOEMwIDkyLjcgMjguNyA2NCA2NCA2NGwzMiAwIDAtMzJjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDMyIDEyOCAwIDAtMzJjMC0xNy43IDE0LjMtMzIgMzItMzJ6bTIyIDE2MS43Yy0xMC43LTcuOC0yNS43LTUuNC0zMy41IDUuM0wxODkuMSAzMzEuMiAxMzcgMjc5LjFjLTkuNC05LjQtMjQuNi05LjQtMzMuOSAwcy05LjQgMjQuNiAwIDMzLjlsNzIgNzJjNSA1IDExLjkgNy41IDE4LjggN3MxMy40LTQuMSAxNy41LTkuOEwzNDcuMyAxOTUuMmM3LjgtMTAuNyA1LjQtMjUuNy01LjMtMzMuNXoiXX0sUnplPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZhY2Uta2lzcyIsaWNvbjpbNTEyLDUxMixbMTI4NTM1LCJraXNzIl0sImY1OTYiLCJNMjU2IDUxMmEyNTYgMjU2IDAgMSAwIDAtNTEyIDI1NiAyNTYgMCAxIDAgMCA1MTJ6TTI0MCAyODhsMzIgMGMyNi41IDAgNDggMjEuNSA0OCA0OCAwIDEyLjMtNC42IDIzLjUtMTIuMiAzMiA3LjYgOC41IDEyLjIgMTkuNyAxMi4yIDMyIDAgMjYuNS0yMS41IDQ4LTQ4IDQ4bC0zMiAwYy04LjggMC0xNi03LjItMTYtMTZzNy4yLTE2IDE2LTE2bDE2IDBjOC44IDAgMTYtNy4yIDE2LTE2cy03LjItMTYtMTYtMTZsLTE2IDBjLTguOCAwLTE2LTcuMi0xNi0xNnM3LjItMTYgMTYtMTZsMTYgMGM4LjggMCAxNi03LjIgMTYtMTZzLTcuMi0xNi0xNi0xNmwtMTYgMGMtOC44IDAtMTYtNy4yLTE2LTE2czcuMi0xNiAxNi0xNnptLTk2LTgwYTMyIDMyIDAgMSAxIDY0IDAgMzIgMzIgMCAxIDEgLTY0IDB6bTE5Mi0zMmEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6Il19LGwzcj1SemUsYzNyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImtpdGNoZW4tc2V0IixpY29uOls1NzYsNTEyLFtdLCJlNTFhIiwiTTI0MCAxNDRhOTYgOTYgMCAxIDAgLTE5MiAwIDk2IDk2IDAgMSAwIDE5MiAwem00NC40IDMyQzI2OS45IDI0MC4xIDIxMi41IDI4OCAxNDQgMjg4IDY0LjUgMjg4IDAgMjIzLjUgMCAxNDRTNjQuNSAwIDE0NCAwYzY4LjUgMCAxMjUuOSA0Ny45IDE0MC40IDExMmw3MS44IDBjOC44LTkuOCAyMS42LTE2IDM1LjgtMTZsMTA0IDBjMjYuNSAwIDQ4IDIxLjUgNDggNDhzLTIxLjUgNDgtNDggNDhsLTEwNCAwYy0xNC4yIDAtMjctNi4yLTM1LjgtMTZsLTcxLjggMHpNMTQ0IDgwYTY0IDY0IDAgMSAxIDAgMTI4IDY0IDY0IDAgMSAxIDAtMTI4ek00MDAgMjQwYzEzLjMgMCAyNCAxMC43IDI0IDI0bDAgOCA5NiAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC0yNDAgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNGw5NiAwIDAtOGMwLTEzLjMgMTAuNy0yNCAyNC0yNHpNMjg4IDQ2NGwwLTExMiAyMjQgMCAwIDExMmMwIDI2LjUtMjEuNSA0OC00OCA0OGwtMTI4IDBjLTI2LjUgMC00OC0yMS41LTQ4LTQ4ek00OCAzMjBsMTI4IDBjMjYuNSAwIDQ4IDIxLjUgNDggNDhzLTIxLjUgNDgtNDggNDhsLTE2IDBjMCAxNy43LTE0LjMgMzItMzIgMzJsLTY0IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtODBjMC04LjggNy4yLTE2IDE2LTE2em0xMjggNjRjOC44IDAgMTYtNy4yIDE2LTE2cy03LjItMTYtMTYtMTZsLTE2IDAgMCAzMiAxNiAwek0yNCA0NjRsMTc2IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRMMjQgNTEyYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0eiJdfSxkM3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZG5hIixpY29uOlszODQsNTEyLFsxMjk1MTZdLCJmNDcxIiwiTTM1MiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMyIDAgNTcuOC0yNC40IDEwNC44LTU3LjQgMTQ0LjUtMjQuMSAyOC45LTUzLjggNTUuMS04My42IDc5LjUgMjkuOCAyNC41IDU5LjUgNTAuNiA4My42IDc5LjUgMzMgMzkuNiA1Ny40IDg2LjcgNTcuNCAxNDQuNSAwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMkw2NCA0ODBjMCAxNy43LTE0LjMgMzItMzIgMzJTMCA0OTcuNyAwIDQ4MEMwIDQyMi4yIDI0LjQgMzc1LjIgNTcuNCAzMzUuNSA4MS41IDMwNi42IDExMS4yIDI4MC41IDE0MSAyNTYgMTExLjIgMjMxLjUgODEuNSAyMDUuNCA1Ny40IDE3Ni41IDI0LjQgMTM2LjggMCA4OS44IDAgMzIgMCAxNC4zIDE0LjMgMCAzMiAwUzY0IDE0LjMgNjQgMzJsMjU2IDBjMC0xNy43IDE0LjMtMzIgMzItMzJ6TTI4My41IDM4NGwtMTgyLjkgMGMtOC4yIDEwLjUtMTUuMSAyMS4xLTIwLjYgMzJsMjI0LjIgMGMtNS42LTEwLjktMTIuNS0yMS41LTIwLjYtMzJ6TTIzOCAzMzZjLTE0LjMtMTMtMjkuOC0yNS44LTQ2LTM5LTE2LjIgMTMuMS0zMS43IDI2LTQ2IDM5bDkyIDB6TTEwMC41IDEyOGwxODIuOSAwYzguMi0xMC41IDE1LjEtMjEuMSAyMC42LTMyTDc5LjkgOTZjNS42IDEwLjkgMTIuNSAyMS41IDIwLjYgMzJ6TTE0NiAxNzZjMTQuMyAxMyAyOS44IDI1LjggNDYgMzkgMTYuMi0xMy4xIDMxLjctMjYgNDYtMzlsLTkyIDB6Il19LHUzcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjaGlsZC1yZWFjaGluZyIsaWNvbjpbMzg0LDUxMixbXSwiZTU5ZCIsIk0yNTYgNjRhNjQgNjQgMCAxIDAgLTEyOCAwIDY0IDY0IDAgMSAwIDEyOCAwek0xNTIuOSAxNjkuM2MtMjMuNy04LjQtNDQuNS0yNC4zLTU4LjgtNDUuOEw3NC42IDk0LjJDNjQuOCA3OS41IDQ1IDc1LjYgMzAuMyA4NS40UzExLjYgMTE1IDIxLjQgMTI5LjhMNDAuOSAxNTljMTguMSAyNy4xIDQyLjggNDguNCA3MS4xIDYyLjRMMTEyIDQ4MGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtOTYgMzIgMCAwIDk2YzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0yNTguNGMyOS4xLTE0LjIgNTQuNC0zNi4yIDcyLjctNjQuMmwxOC4yLTI3LjljOS42LTE0LjggNS40LTM0LjYtOS40LTQ0LjNzLTM0LjYtNS41LTQ0LjMgOS40TDI5MSAxMjIuNGMtMjEuOCAzMy40LTU4LjkgNTMuNi05OC44IDUzLjYtMTIuNiAwLTI0LjktMi0zNi42LTUuOC0uOS0uMy0xLjgtLjctMi43LS45eiJdfSxFdz17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwYXN0ZSIsaWNvbjpbNTEyLDUxMixbImZpbGUtY2xpcGJvYXJkIl0sImYwZWEiLCJNNjQgMEMyOC43IDAgMCAyOC43IDAgNjRMMCAzODRjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMTEyIDAgMC0yMjRjMC02MS45IDUwLjEtMTEyIDExMi0xMTJsNjQgMCAwLTQ4YzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDB6TTI0OCAxMTJsLTE0NCAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0bDE0NCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0em00MCA0OGMtMzUuMyAwLTY0IDI4LjctNjQgNjRsMCAyMjRjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMTYwIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0xNjUuNWMwLTE3LTYuNy0zMy4zLTE4LjctNDUuM2wtNTguNS01OC41Yy0xMi0xMi0yOC4zLTE4LjctNDUuMy0xOC43TDI4OCAxNjB6Il19LGYzcj1FdyxwM3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibWV0ZW9yIixpY29uOls1MTIsNTEyLFs5NzMyXSwiZjc1MyIsIk00OTMuNyAuOWwtMTk0LjIgNzQuNyAyLjMtMjkuM2MxLTEyLjgtMTIuOC0yMS41LTI0LTE1LjFMMTAxLjMgMTMzLjRDMzguNiAxNjkuNyAwIDIzNi42IDAgMzA5IDAgNDIxLjEgOTAuOSA1MTIgMjAzIDUxMiAyNzUuNCA1MTIgMzQyLjMgNDczLjQgMzc4LjYgNDEwLjdMNDgwLjggMjM0LjNjNi41LTExLjEtMi4yLTI1LTE1LjEtMjRsLTI5LjMgMi4zIDc0LjctMTk0LjJjLjYtMS41IC45LTMuMiAuOS00LjggMC03LjUtNi0xMy41LTEzLjUtMTMuNS0xLjcgMC0zLjMgLjMtNC44IC45ek0xOTIgMTkyYTEyOCAxMjggMCAxIDEgMCAyNTYgMTI4IDEyOCAwIDEgMSAwLTI1NnptMCA5NmEzMiAzMiAwIDEgMCAtNjQgMCAzMiAzMiAwIDEgMCA2NCAwem0xNiA5NmExNiAxNiAwIDEgMCAwLTMyIDE2IDE2IDAgMSAwIDAgMzJ6Il19LEJ6ZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJnZWFycyIsaWNvbjpbNjQwLDUxMixbImNvZ3MiXSwiZjA4NSIsIk00MTUuOSAyMTAuNWMxMi4yLTMuMyAyNSAyLjUgMzAuNSAxMy44TDQ2NSAyNjEuOWMxMC4zIDEuNCAyMC40IDQuMiAyOS45IDguMWwzNS0yMy4zYzEwLjUtNyAyNC40LTUuNiAzMy4zIDMuM2wxOS4yIDE5LjJjOC45IDguOSAxMC4zIDIyLjkgMy4zIDMzLjNsLTIzLjMgMzQuOWMxLjkgNC43IDMuNiA5LjYgNSAxNC43IDEuNCA1LjEgMi4zIDEwLjEgMyAxNS4ybDM3LjcgMTguNmMxMS4zIDUuNiAxNy4xIDE4LjQgMTMuOCAzMC41bC03IDI2LjJjLTMuMyAxMi4xLTE0LjYgMjAuMy0yNy4yIDE5LjVsLTQyLTIuN2MtNi4zIDguMS0xMy42IDE1LjYtMjEuOSAyMmwyLjcgNDEuOWMuOCAxMi42LTcuNCAyNC0xOS41IDI3LjJsLTI2LjIgN2MtMTIuMiAzLjMtMjQuOS0yLjUtMzAuNS0xMy44bC0xOC42LTM3LjZjLTEwLjMtMS40LTIwLjQtNC4yLTI5LjktOC4xbC0zNSAyMy4zYy0xMC41IDctMjQuNCA1LjYtMzMuMy0zLjNsLTE5LjItMTkuMmMtOC45LTguOS0xMC4zLTIyLjgtMy4zLTMzLjNsMjMuMy0zNWMtMS45LTQuNy0zLjYtOS42LTUtMTQuN3MtMi4zLTEwLjItMy0xNS4ybC0zNy43LTE4LjZjLTExLjMtNS42LTE3LTE4LjQtMTMuOC0zMC41bDctMjYuMmMzLjMtMTIuMSAxNC42LTIwLjMgMjcuMi0xOS41bDQxLjkgMi43YzYuMy04LjEgMTMuNi0xNS42IDIxLjktMjJsLTIuNy00MS44Yy0uOC0xMi42IDcuNC0yNCAxOS41LTI3LjJsMjYuMi03ek00NDguNCAzNDBhNDQgNDQgMCAxIDAgLjEgODggNDQgNDQgMCAxIDAgLS4xLTg4ek0yMjQuOS00NS41bDI2LjIgN2MxMi4xIDMuMyAyMC4zIDE0LjcgMTkuNSAyNy4ybC0yLjcgNDEuOGM4LjMgNi40IDE1LjYgMTMuOCAyMS45IDIybDQyLTIuN2MxMi41LS44IDIzLjkgNy40IDI3LjIgMTkuNWw3IDI2LjJjMy4yIDEyLjEtMi41IDI0LjktMTMuOCAzMC41bC0zNy43IDE4LjZjLS43IDUuMS0xLjcgMTAuMi0zIDE1LjJzLTMuMSAxMC01IDE0LjdsMjMuMyAzNWM3IDEwLjUgNS42IDI0LjQtMy4zIDMzLjNMMzA3LjMgMjYyYy04LjkgOC45LTIyLjggMTAuMy0zMy4zIDMuM0wyMzkgMjQyYy05LjUgMy45LTE5LjYgNi43LTI5LjkgOC4xbC0xOC42IDM3LjZjLTUuNiAxMS4zLTE4LjQgMTctMzAuNSAxMy44bC0yNi4yLTdjLTEyLjItMy4zLTIwLjMtMTQuNy0xOS41LTI3LjJsMi43LTQxLjljLTguMy02LjQtMTUuNi0xMy44LTIxLjktMjJsLTQyIDIuN2MtMTIuNSAuOC0yMy45LTcuNC0yNy4yLTE5LjVsLTctMjYuMmMtMy4yLTEyLjEgMi41LTI0LjkgMTMuOC0zMC41bDM3LjctMTguNmMuNy01LjEgMS43LTEwLjEgMy0xNS4yIDEuNC01LjEgMy0xMCA1LTE0LjdMNTUuMSA0Ni41Yy03LTEwLjUtNS42LTI0LjQgMy4zLTMzLjNMNzcuNi02YzguOS04LjkgMjIuOC0xMC4zIDMzLjMtMy4zbDM1IDIzLjNjOS41LTMuOSAxOS42LTYuNyAyOS45LTguMWwxOC42LTM3LjZjNS42LTExLjMgMTguMy0xNyAzMC41LTEzLjh6TTE5Mi40IDg0YTQ0IDQ0IDAgMSAwIDAgODggNDQgNDQgMCAxIDAgMC04OHoiXX0saDNyPUJ6ZSxtM3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmlsZS1jaXJjbGUtcGx1cyIsaWNvbjpbNTc2LDUxMixbNTg2MDZdLCJlNDk0IiwiTTk2IDBDNjAuNyAwIDMyIDI4LjcgMzIgNjRsMCAzODRjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMTgwIDBjLTIyLjctMzEuNS0zNi03MC4yLTM2LTExMiAwLTEwMC42IDc3LjQtMTgzLjIgMTc2LTE5MS4zbDAtMzguMWMwLTE3LTYuNy0zMy4zLTE4LjctNDUuM0wyOTAuNyAxOC43QzI3OC43IDYuNyAyNjIuNSAwIDI0NS41IDBMOTYgMHpNMzU3LjUgMTc2TDI2NCAxNzZjLTEzLjMgMC0yNC0xMC43LTI0LTI0TDI0MCA1OC41IDM1Ny41IDE3NnpNNDMyIDU0NGExNDQgMTQ0IDAgMSAwIDAtMjg4IDE0NCAxNDQgMCAxIDAgMCAyODh6bTE2LTIwOGwwIDQ4IDQ4IDBjOC44IDAgMTYgNy4yIDE2IDE2cy03LjIgMTYtMTYgMTZsLTQ4IDAgMCA0OGMwIDguOC03LjIgMTYtMTYgMTZzLTE2LTcuMi0xNi0xNmwwLTQ4LTQ4IDBjLTguOCAwLTE2LTcuMi0xNi0xNnM3LjItMTYgMTYtMTZsNDggMCAwLTQ4YzAtOC44IDcuMi0xNiAxNi0xNnMxNiA3LjIgMTYgMTZ6Il19LGczcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJpY2ljbGVzIixpY29uOls1MTIsNTEyLFtdLCJmN2FkIiwiTTc1LjggMzA0LjhMMSAzNS43Qy4zIDMzLjIgMCAzMC43IDAgMjguMiAwIDEyLjYgMTIuNiAwIDI4LjIgMEw0ODIuNCAwYzE2LjMgMCAyOS42IDEzLjIgMjkuNiAyOS42IDAgMS42LS4xIDMuMy0uNCA0LjlMNDM0LjYgNDk2LjFjLTEuNSA5LjItOS41IDE1LjktMTguOCAxNS45LTkuMiAwLTE3LjEtNi42LTE4LjctMTUuNkwzMzYgMTYwIDMwNy4yIDMwMy45Yy0xLjkgOS4zLTEwLjEgMTYuMS0xOS42IDE2LjEtOS4yIDAtMTcuMi02LjItMTkuNC0xNS4xTDI0MCAxOTIgMjEwLjYgMzY4LjJjLTEuNSA5LjEtOS40IDE1LjgtMTguNiAxNS44cy0xNy4xLTYuNy0xOC42LTE1LjhMMTQ0IDE5MiAxMTUuOSAzMDQuM2MtMi4zIDkuMi0xMC42IDE1LjctMjAuMSAxNS43LTkuMyAwLTE3LjUtNi4yLTIwLTE1LjJ6Il19LHgzcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJhcnJvdy10cmVuZC11cCIsaWNvbjpbNTc2LDUxMixbXSwiZTA5OCIsIk0zODQgMTYwYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDE2MCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMTYwYzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtODIuNy0xNjkuNCAxNjkuNGMtMTIuNSAxMi41LTMyLjggMTIuNS00NS4zIDBMMTkyIDI2OS4zIDU0LjYgNDA2LjZjLTEyLjUgMTIuNS0zMi44IDEyLjUtNDUuMyAwcy0xMi41LTMyLjggMC00NS4zbDE2MC0xNjBjMTIuNS0xMi41IDMyLjgtMTIuNSA0NS4zIDBMMzIwIDMwNi43IDQ2Ni43IDE2MCAzODQgMTYweiJdfSxiM3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaGV4YWdvbi1ub2Rlcy1ib2x0IixpY29uOls1NzYsNTEyLFtdLCJlNjlhIiwiTTI0OCAxMDYuNmMxOC45LTkgMzItMjguMyAzMi01MC42YzAtMzAuOS0yNS4xLTU2LTU2LTU2cy01NiAyNS4xLTU2IDU2YzAgMjIuMyAxMy4xIDQxLjYgMzIgNTAuNmwwIDk4LjhjLTIuOCAxLjMtNS41IDIuOS04IDQuN2wtODAuMS00NS44YzEuNi0yMC44LTguNi00MS42LTI3LjktNTIuOEM1Ny4yIDk2IDIzIDEwNS4yIDcuNSAxMzJTMS4yIDE5MyAyOCAyMDguNWMxLjMgLjggMi42IDEuNSA0IDIuMWwwIDkwLjhjLTEuMyAuNi0yLjcgMS4zLTQgMi4xQzEuMiAzMTktOCAzNTMuMiA3LjUgMzgwUzU3LjIgNDE2IDg0IDQwMC41YzE5LjMtMTEuMSAyOS40LTMyIDI3LjgtNTIuOGw1MC41LTI4LjljLTExLjUtMTEuMi0xOS45LTI1LjYtMjMuOC00MS43TDg4IDMwNi4xYy0yLjYtMS44LTUuMi0zLjMtOC00LjdsMC05MC44YzIuOC0xLjMgNS41LTIuOSA4LTQuN2w4MC4xIDQ1LjhjLS4xIDEuNC0uMiAyLjgtLjIgNC4zYzAgMjIuMyAxMy4xIDQxLjYgMzIgNTAuNmwwIDk4LjhjLTE4LjkgOS0zMiAyOC4zLTMyIDUwLjZjMCAzMC45IDI1LjEgNTYgNTYgNTZjMzAuNyAwIDU1LjYtMjQuNyA1Ni01NS4yYy03LjUtMTIuOS0xMy41LTI2LjgtMTcuNi00MS41Yy00LjItNC05LjEtNy4zLTE0LjQtOS45bDAtOTguOGMyLjgtMS4zIDUuNS0yLjkgOC00LjdsMTAuNSA2YzUuNS0xNS4zIDEzLjEtMjkuNSAyMi40LTQyLjVsLTkuMS01LjJjLjEtMS40IC4yLTIuOCAuMi00LjNjMC0yMi4zLTEzLjEtNDEuNi0zMi01MC42bDAtOTguOHpNNDQwLjUgMTMyQzQyNSAxMDUuMiAzOTAuOCA5NiAzNjQgMTExLjVjLTE5LjMgMTEuMS0yOS40IDMyLTI3LjggNTIuOGwtNTAuNiAyOC45YzExLjUgMTEuMiAxOS45IDI1LjYgMjMuOCA0MS43TDM2MCAyMDUuOWMuNCAuMyAuOCAuNiAxLjMgLjljMjEuNy05LjUgNDUuNi0xNC44IDcwLjgtMTQuOGMyIDAgNCAwIDUuOSAuMWMxMi4xLTE3LjMgMTMuOC00MC42IDIuNi02MC4xek00MzIgNTEyYTE0NCAxNDQgMCAxIDAgMC0yODggMTQ0IDE0NCAwIDEgMCAwIDI4OHptNDcuOS0yMjVjNC4zIDMuNyA1LjQgOS45IDIuNiAxNC45TDQ1Mi40IDM1NmwzNS42IDBjNS4yIDAgOS44IDMuMyAxMS40IDguMnMtLjEgMTAuMy00LjIgMTMuNGwtOTYgNzJjLTQuNSAzLjQtMTAuOCAzLjItMTUuMS0uNnMtNS40LTkuOS0yLjYtMTQuOUw0MTEuNiAzODAgMzc2IDM4MGMtNS4yIDAtOS44LTMuMy0xMS40LTguMnMuMS0xMC4zIDQuMi0xMy40bDk2LTcyYzQuNS0zLjQgMTAuOC0zLjIgMTUuMSAuNnoiXX0sdjNyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InF1ZXN0aW9uIixpY29uOlszMjAsNTEyLFsxMDA2NywxMDA2OCw2MTczNl0sIjNmIiwiTTY0IDE2MGMwLTUzIDQzLTk2IDk2LTk2czk2IDQzIDk2IDk2YzAgNDIuNy0yNy45IDc4LjktNjYuNSA5MS40LTI4LjQgOS4yLTYxLjUgMzUuMy02MS41IDc2LjZsMCAyNGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMjRjMC0xLjcgLjYtNC4xIDMuNS03LjMgMy0zLjMgNy45LTYuNSAxMy43LTguNCA2NC4zLTIwLjcgMTEwLjgtODEgMTEwLjgtMTUyLjMgMC04OC40LTcxLjYtMTYwLTE2MC0xNjBTMCA3MS42IDAgMTYwYzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJ6bTk2IDM1MmMyMi4xIDAgNDAtMTcuOSA0MC00MHMtMTcuOS00MC00MC00MC00MCAxNy45LTQwIDQwIDE3LjkgNDAgNDAgNDB6Il19LHkzcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJoYW5kcy1ib3VuZCIsaWNvbjpbNTc2LDUxMixbXSwiZTRmOSIsIk02NCAzMkM2NCAxNC4zIDQ5LjcgMCAzMiAwUzAgMTQuMyAwIDMyTDAgMjEzLjljMCAxNC4yIDUuMSAyNy45IDE0LjMgMzguN0w5OS42IDM1MiA5NiAzNTJjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsMzg0IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTMuNiAwIDg1LjMtOTkuNWM5LjItMTAuOCAxNC4zLTI0LjUgMTQuMy0zOC43TDU3NiAzMmMwLTE3LjctMTQuMy0zMi0zMi0zMnMtMzIgMTQuMy0zMiAzMmwwIDExMi44LTY5LjMgOTIuNGMtNS43IDcuNi0xNi4xIDkuNi0yNC4yIDQuOC05LjctNS43LTEyLjEtMTguNy01LjEtMjcuNUw0NDEgMTgwYzEwLjgtMTMuNSA4LjktMzMuMy00LjQtNDQuNXMtMzMtOS44LTQ0LjUgMy4ybC00Ni43IDUyLjVDMzI5IDIwOS43IDMyMCAyMzMuNCAzMjAgMjU4LjFsMCA5My45LTY0IDAgMC05My45YzAtMjQuNi05LTQ4LjQtMjUuNC02Ni44bC00Ni43LTUyLjVjLTExLjUtMTMtMzEuMy0xNC40LTQ0LjUtMy4yUzEyNC4yIDE2Ni40IDEzNSAxODBsMjcuNiAzNC41YzcgOC44IDQuNyAyMS44LTUuMSAyNy41LTguMSA0LjgtMTguNiAyLjctMjQuMi00LjhMNjQgMTQ0LjggNjQgMzJ6bTY0IDQ0OGwwIDMyIDEyOCAwIDAtMzIgNjQgMCAwIDMyIDEyOCAwIDAtMzIgMzIgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNEw5NiA0MzJjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsMzIgMHoiXX0sdzNyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBlcnNvbi13YWxraW5nLWx1Z2dhZ2UiLGljb246WzUxMiw1MTIsW10sImU1NTQiLCJNMjY0LjMgMjRhNTYgNTYgMCAxIDEgMTEyIDAgNTYgNTYgMCAxIDEgLTExMiAwem0tOCAxODEuM2wtMjIuNiAyMi42Yy02IDYtOS40IDE0LjEtOS40IDIyLjZsMCAzNy41YzAgMTIuMy03IDIzLTE3LjIgMjguNC0uOSA0LjItMi40IDguNC00LjMgMTIuM2wtNjkgMTM4LjEtLjgtLjQtMjcuNyA1NS4zYy05LjkgMTkuOC0zMy45IDI3LjgtNTMuNyAxNy45TDE0LjYgNTIxYy0xOS44LTkuOS0yNy44LTMzLjktMTcuOS01My43TDQ3LjMgMzY2LjNjOS45LTE5LjggMzMuOS0yNy44IDUzLjctMTcuOWwzMC43IDE1LjMgMjguMy01Ni42Yy4zLS42IC40LTEuMiAuNC0xLjhsMC0xNi45YzAtLjIgMC0uMyAwLS41bDAtMzcuNWMwLTI1LjUgMTAuMS00OS45IDI4LjEtNjcuOWwzNS4xLTM1LjFjMjIuOC0yMi44IDUzLjYtMzUuNiA4NS44LTM1LjYgMzYuOSAwIDcxLjggMTYuOCA5NC44IDQ1LjZMNDIyLjEgMTgwYzYuMSA3LjYgMTUuMyAxMiAyNSAxMmwzMy4yIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTMzLjIgMGMtMjkuMiAwLTU2LjctMTMuMy03NS0zNmwtMy44LTQuNyAwIDExNS4yIDM0LjUgMjkuNmMxNy43IDE1LjIgMjkuMyAzNi4yIDMyLjYgNTkuM0w0NDggNTA3LjVjMi41IDE3LjUtOS43IDMzLjctMjcuMiAzNi4ycy0zMy43LTkuNy0zNi4yLTI3LjJMMzcyIDQyOC40Yy0xLjEtNy43LTUtMTQuNy0xMC45LTE5LjhsLTcxLjQtNjEuMmMtMjEuMy0xOC4yLTMzLjUtNDQuOS0zMy41LTcyLjlsMC02OS4zem0uMSAxNjUuOGMyLjQgMi4zIDQuOCA0LjYgNy40IDYuOGw0NiAzOS40LTIuMiA3LjZjLTQuNSAxNS43LTEyLjkgMzAtMjQuNCA0MS41bC02OC4zIDY4LjNjLTEyLjUgMTIuNS0zMi44IDEyLjUtNDUuMyAwcy0xMi41LTMyLjggMC00NS4zTDIzOCA0MjEuMWMzLjgtMy44IDYuNi04LjYgOC4xLTEzLjhMMjU2LjQgMzcxeiJdfSxIemU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmlsZS1hcnJvdy1kb3duIixpY29uOlszODQsNTEyLFsiZmlsZS1kb3dubG9hZCJdLCJmNTZkIiwiTTAgNjRDMCAyOC43IDI4LjcgMCA2NCAwTDIxMy41IDBjMTcgMCAzMy4zIDYuNyA0NS4zIDE4LjdMMzY1LjMgMTI1LjNjMTIgMTIgMTguNyAyOC4zIDE4LjcgNDUuM0wzODQgNDQ4YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDUxMmMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCA2NHptMjA4LTUuNWwwIDkzLjVjMCAxMy4zIDEwLjcgMjQgMjQgMjRMMzI1LjUgMTc2IDIwOCA1OC41ek0xNzUgNDQxYzkuNCA5LjQgMjQuNiA5LjQgMzMuOSAwbDY0LTY0YzkuNC05LjQgOS40LTI0LjYgMC0zMy45cy0yNC42LTkuNC0zMy45IDBsLTIzIDIzIDAtODYuMWMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGwwIDg2LjEtMjMtMjNjLTkuNC05LjQtMjQuNi05LjQtMzMuOSAwcy05LjQgMjQuNiAwIDMzLjlsNjQgNjR6Il19LE0zcj1IemUsazNyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBlcnNvbi1ib290aCIsaWNvbjpbNTc2LDUxMixbXSwiZjc1NiIsIk00MCAyNEE1NiA1NiAwIDEgMSAxNTIgMjQgNTYgNTYgMCAxIDEgNDAgMjR6bTUxLjEgODhjMjMuNSAwIDQ1LjUgMTEuMyA1OS4xIDMwLjRsNDguNyA2OC4yYzYgOC40IDE1LjcgMTMuNCAyNiAxMy40bDMxLjEgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtMzEuMSAwYy0zMSAwLTYwLjEtMTUtNzguMS00MC4ybC0yLjgtMy45IDAgODAuMSA0MS42IDMxLjJDMjA5LjggMzczLjMgMjI0IDQwMS44IDIyNCA0MzJsMCA4MGMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTgwYzAtMTAuMS00LjctMTkuNi0xMi44LTI1LjZMNzAuNCAzNDguOEM0Ni4yIDMzMC43IDMyIDMwMi4yIDMyIDI3MmwwLTEwMC45QzMyIDEzOC41IDU4LjUgMTEyIDkxLjEgMTEyek0zMiA1MTJsMC0xMzIuN2MzLjEgMi43IDYuMyA1LjQgOS42IDcuOUw5NiA0MjggOTYgNTEyYzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMyem01NDQtODhsMCA5NmMwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNGwwLTcyLTE2OCAwYy03LjEgMC0xMy44LTMuMS0xOC40LTguNnMtNi41LTEyLjYtNS4zLTE5LjZsMzAuNy0xNzYuNy02My4xLTEzNy42IDAgNzJjLTUuMi0xLTEwLjUtMS42LTE2LTEuNmwtMzIgMCAwLTEyMGMwLTMwLjkgMjUuMS01NiA1Ni01Nkw1MjAgMGMzMC45IDAgNTYgMjUuMSA1NiA1NmwwIDM2OHpNMjg4IDMzNmM1LjUgMCAxMC44LS42IDE2LTEuNkwzMDQgNTIwYzAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0bDAtMTg0IDMyIDB6Il19LFMzcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJsb2N1c3QiLGljb246WzU3Niw1MTIsW10sImU1MjAiLCJNMzI4IDMyYzEzNyAwIDI0OCAxMTEgMjQ4IDI0OGwwIDQwLS40IDguMkM1NzEuNSAzNjguNSA1MzcuNCA0MDAgNDk2IDQwMGwtMTIuMyAwIDI1LjIgNDQuMWM2LjYgMTEuNSAyLjYgMjYuMi04LjkgMzIuOHMtMjYuMiAyLjYtMzIuNy04LjlsLTM4LjgtNjcuOS04MC40IDAtNDguMiA2OS43Yy03LjUgMTAuOS0yMi41IDEzLjYtMzMuNCA2LjFzLTEzLjYtMjIuNS02LjEtMzMuNGwyOS4zLTQyLjMtNzQuNSAwLTUxLjcgNzAuMmMtNy45IDEwLjctMjIuOSAxMi45LTMzLjYgNS4xcy0xMi45LTIyLjktNS4xLTMzLjZsNDAuNS01NS00My0xNi40LTc5LjMgMTAwLjVjLTguMiAxMC40LTIzLjMgMTIuMi0zMy43IDRzLTEyLjItMjMuMy00LTMzLjdsMjQwLTMwNCAyLjEtMi4zYzUuMi01LjEgMTIuNS03LjUgMTkuOS02LjYgOC40IDEuMSAxNS42IDYuNSAxOC45IDE0LjNsMjEuNyA1MC43IDQwLjktNTUuNSAyLjEtMi40YzUuMS01LjMgMTIuNS04IDIwLTcuMiA4LjUgMSAxNS45IDYuNSAxOS4zIDE0LjRsNDEuOCA5Ny41IDY0LjIgMGMxMC4yIDAgMjAgMiAyOSA1LjUtMTYuNC05NC05OC4zLTE2NS41LTE5Ny0xNjUuNWwtMTYgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNGwxNiAwek00ODggMjk2YTI0IDI0IDAgMSAwIDAgNDggMjQgMjQgMCAxIDAgMC00OHpNNDMuNSAzMzEuMUMzNi4yIDMyMS40IDMyIDMwOS41IDMyIDI5Ni44IDMyIDI2NS41IDU3LjUgMjQwIDg4LjkgMjQwbDI3LjYgMC03Mi45IDkxLjF6TTIyNS4xIDI0MGw0OC4yIDAgMS40LTEuOS0xNi45LTM5LjUtMzIuNyA0MS41em0xMDcuOCAwbDQ2LjcgMC0xNy4yLTQwLTI5LjUgNDB6Il19LHF6ZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJyaWdodC1sb25nIixpY29uOls1NzYsNTEyLFsibG9uZy1hcnJvdy1hbHQtcmlnaHQiXSwiZjMwYiIsIk01NjYuNiAyMzMuNGMxMi41IDEyLjUgMTIuNSAzMi44IDAgNDUuM2wtMTI4IDEyOGMtOS4yIDkuMi0yMi45IDExLjktMzQuOSA2LjlTMzg0IDM5Ni45IDM4NCAzODRsMC02NC0zMzYgMGMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhsMC0zMmMwLTI2LjUgMjEuNS00OCA0OC00OGwzMzYgMCAwLTY0YzAtMTIuOSA3LjgtMjQuNiAxOS44LTI5LjZzMjUuNy0yLjIgMzQuOSA2LjlsMTI4IDEyOHoiXX0sejNyPXF6ZSxDM3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidHJ1Y2stZHJvcGxldCIsaWNvbjpbNTc2LDUxMixbXSwiZTU4YyIsIk02NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgMzg0YzAgMzUuMyAyOC43IDY0IDY0IDY0bDMuMyAwYzEwLjQgMzYuOSA0NC40IDY0IDg0LjcgNjRzNzQuMi0yNy4xIDg0LjctNjRsMTAyLjYgMGMxMC40IDM2LjkgNDQuNCA2NCA4NC43IDY0czc0LjItMjcuMSA4NC43LTY0bDMuMyAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMTQ2LjdjMC0xNy02LjctMzMuMy0xOC43LTQ1LjNMNTEyIDE0Ni43Yy0xMi0xMi0yOC4zLTE4LjctNDUuMy0xOC43bC01MC43IDAgMC0zMmMwLTM1LjMtMjguNy02NC02NC02NEw2NCAzMnpNNTEyIDIzNy4zbDAgNTAuNy05NiAwIDAtOTYgNTAuNyAwIDQ1LjMgNDUuM3pNMTUyIDM4NGE0MCA0MCAwIDEgMSAwIDgwIDQwIDQwIDAgMSAxIDAtODB6bTIzMiA0MGE0MCA0MCAwIDEgMSA4MCAwIDQwIDQwIDAgMSAxIC04MCAwek0yMDggMzA0Yy0zOS44IDAtNzItMzIuMi03Mi03MiAwLTMzLjIgMzQuNS03OCA1NS44LTEwMi40IDguNy0xMCAyMy44LTEwIDMyLjUgMCAyMS4yIDI0LjQgNTUuOCA2OS4xIDU1LjggMTAyLjQgMCA0OC0zMi4yIDcyLTcyIDcyeiJdfSxfM3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaGFuZC1ob2xkaW5nLW1lZGljYWwiLGljb246WzU3Niw1MTIsW10sImUwNWMiLCJNMjQwIDI0YzAtMTMuMyAxMC43LTI0IDI0LTI0bDQ4IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRsMCA1NiA1NiAwYzEzLjMgMCAyNCAxMC43IDI0IDI0bDAgNDhjMCAxMy4zLTEwLjcgMjQtMjQgMjRsLTU2IDAgMCA1NmMwIDEzLjMtMTAuNyAyNC0yNCAyNGwtNDggMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRsMC01Ni01NiAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNGwwLTQ4YzAtMTMuMyAxMC43LTI0IDI0LTI0bDU2IDAgMC01NnpNNjYuNyAzODRsNDIuNS00Mi41YzI0LTI0IDU2LjYtMzcuNSA5MC41LTM3LjVMMzUyIDMwNGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtNzIgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwxMTIuNiAwIDExOS43LTg4LjJjMTcuOC0xMy4xIDQyLjgtOS4zIDU1LjkgOC41czkuMyA0Mi44LTguNSA1NS45TDQzMy4xIDQ4NS41Yy0yMy40IDE3LjItNTEuNiAyNi41LTgwLjcgMjYuNUwzMiA1MTJjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtNjRjMC0xNy43IDE0LjMtMzIgMzItMzJsMzQuNyAweiJdfSxUM3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaGFuZC1wb2ludC1sZWZ0IixpY29uOls1MTIsNTEyLFtdLCJmMGE1IiwiTTMyIDk2QzE0LjMgOTYgMCAxMTAuMyAwIDEyOHMxNC4zIDMyIDMyIDMybDIwOCAwIDAtNjQtMjA4IDB6TTE5MiAyODhjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsNjQgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtNjQgMHptLTY0LTY0YzAgMTcuNyAxNC4zIDMyIDMyIDMybDQ4IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTQ4IDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyem05NiAxNjBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsNjQgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtNjQgMHptODgtOTZsLS42IDBjNS40IDkuNCA4LjYgMjAuMyA4LjYgMzIgMCAxMy4yLTQgMjUuNC0xMC44IDM1LjYgMjQuOSA4LjcgNDIuOCAzMi41IDQyLjggNjAuNCAwIDExLjctMy4xIDIyLjYtOC42IDMybDguNiAwYzg4LjQgMCAxNjAtNzEuNiAxNjAtMTYwbDAtNjEuN2MwLTQyLjQtMTYuOS04My4xLTQ2LjktMTEzLjFsLTExLjYtMTEuNkM0MjkuNSA3Ny41IDM5Ni45IDY0IDM2MyA2NGwtMjcgMGMtMzUuMyAwLTY0IDI4LjctNjQgNjRsMCA4OGMwIDIyLjEgMTcuOSA0MCA0MCA0MHM0MC0xNy45IDQwLTQwbDAtNTZjMC04LjggNy4yLTE2IDE2LTE2czE2IDcuMiAxNiAxNmwwIDU2YzAgMzkuOC0zMi4yIDcyLTcyIDcyeiJdfSxMM3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2FsY3VsYXRvciIsaWNvbjpbMzg0LDUxMixbMTI4NDI1XSwiZjFlYyIsIk02NCAwQzI4LjcgMCAwIDI4LjcgMCA2NEwwIDQ0OGMwIDM1LjMgMjguNyA2NCA2NCA2NGwyNTYgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTM4NGMwLTM1LjMtMjguNy02NC02NC02NEw2NCAwek05NiA2NGwxOTIgMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDMyYzAgMTcuNy0xNC4zIDMyLTMyIDMyTDk2IDE2MGMtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC0zMmMwLTE3LjcgMTQuMy0zMiAzMi0zMnptMTYgMTY4YTI0IDI0IDAgMSAxIC00OCAwIDI0IDI0IDAgMSAxIDQ4IDB6bTgwIDI0YTI0IDI0IDAgMSAxIDAtNDggMjQgMjQgMCAxIDEgMCA0OHptMTI4LTI0YTI0IDI0IDAgMSAxIC00OCAwIDI0IDI0IDAgMSAxIDQ4IDB6TTg4IDM1MmEyNCAyNCAwIDEgMSAwLTQ4IDI0IDI0IDAgMSAxIDAgNDh6bTEyOC0yNGEyNCAyNCAwIDEgMSAtNDggMCAyNCAyNCAwIDEgMSA0OCAwem04MCAyNGEyNCAyNCAwIDEgMSAwLTQ4IDI0IDI0IDAgMSAxIDAgNDh6TTY0IDQyNGMwLTEzLjMgMTAuNy0yNCAyNC0yNGwxMTIgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNEw4OCA0NDhjLTEzLjMgMC0yNC0xMC43LTI0LTI0em0yMzItMjRjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjQtMjQtMTAuNy0yNC0yNCAxMC43LTI0IDI0LTI0eiJdfSwkdz17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtaW51cyIsaWNvbjpbNDQ4LDUxMixbODIxMSw4NzIyLDEwMTM0LCJzdWJ0cmFjdCJdLCJmMDY4IiwiTTAgMjU2YzAtMTcuNyAxNC4zLTMyIDMyLTMybDM4NCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMyTDMyIDI4OGMtMTcuNyAwLTMyLTE0LjMtMzItMzJ6Il19LEQzcj0kdyxqemU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYXJyb3ctdXAtei1hIixpY29uOls1MTIsNTEyLFsic29ydC1hbHBoYS11cC1hbHQiXSwiZjg4MiIsIk0xNTAuNiA0MS40Yy0xMi41LTEyLjUtMzIuOC0xMi41LTQ1LjMgMGwtODAgODBjLTEyLjUgMTIuNS0xMi41IDMyLjggMCA0NS4zczMyLjggMTIuNSA0NS4zIDBMOTYgMTQxLjMgOTYgNDQ4YzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0zMDYuNyAyNS40IDI1LjRjMTIuNSAxMi41IDMyLjggMTIuNSA0NS4zIDBzMTIuNS0zMi44IDAtNDUuM2wtODAtODB6TTI4OCA2NGMwIDE3LjcgMTQuMyAzMiAzMiAzMmw1MC43IDAtNzMuNCA3My40Yy05LjIgOS4yLTExLjkgMjIuOS02LjkgMzQuOVMzMDcuMSAyMjQgMzIwIDIyNGwxMjggMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtNTAuNyAwIDczLjQtNzMuNGM5LjItOS4yIDExLjktMjIuOSA2LjktMzQuOVM0NjEgMzIgNDQ4IDMyTDMyMCAzMmMtMTcuNyAwLTMyIDE0LjMtMzIgMzJ6TTQxMi42IDI3My43QzQwNy4yIDI2Mi44IDM5Ni4xIDI1NiAzODQgMjU2cy0yMy4yIDYuOC0yOC42IDE3LjdsLTgwIDE2MGMtNy45IDE1LjgtMS41IDM1IDE0LjMgNDIuOXMzNSAxLjUgNDIuOS0xNC4zbDcuMi0xNC4zIDg4LjQgMCA3LjIgMTQuM2M3LjkgMTUuOCAyNy4xIDIyLjIgNDIuOSAxNC4zczIyLjItMjcuMSAxNC4zLTQyLjlsLTgwLTE2MHpNMzg0IDM1OS42bDIwLjIgNDAuNC00MC40IDAgMjAuMi00MC40eiJdfSxBM3I9anplLEUzcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtaWNyb3Bob25lLXNsYXNoIixpY29uOls1NzYsNTEyLFtdLCJmMTMxIiwiTTQxLTI0LjljLTkuNC05LjQtMjQuNi05LjQtMzMuOSAwUy0yLjMtLjMgNyA5LjFsNTI4IDUyOGM5LjQgOS40IDI0LjYgOS40IDMzLjkgMHM5LjQtMjQuNiAwLTMzLjlMNDI0LjcgMzU4LjhDNDU4LjkgMzI0LjIgNDgwIDI3Ni42IDQ4MCAyMjRsMC00MGMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGwwIDQwYzAgMzkuMy0xNS43IDc0LjktNDEuMyAxMDAuOUwzNTYuOCAyOTFDMzczLjYgMjczLjcgMzg0IDI1MCAzODQgMjI0bDAtMTI4YzAtNTMtNDMtOTYtOTYtOTZzLTk2IDQzLTk2IDk2bDAgMzAuMi0xNTEtMTUxem0yOTguMyA0MzRsLTQxLjQtNDEuNGMtMy4zIC4yLTYuNSAuMy05LjggLjMtNzkuNSAwLTE0NC02NC41LTE0NC0xNDRsMC0xMC4yLTQzLjYtNDMuNmMtMi44IDMuOS00LjQgOC43LTQuNCAxMy44bDAgNDBjMCA5Ny45IDczLjMgMTc4LjcgMTY4IDE5MC41bDAgNDkuNS00OCAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDE0NCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC00OCAwIDAtNDkuNWM5LjMtMS4yIDE4LjQtMyAyNy4zLTUuNHoiXX0scjJlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNxdWFyZS1wZW4iLGljb246WzQ0OCw1MTIsWyJwZW4tc3F1YXJlIiwicGVuY2lsLXNxdWFyZSJdLCJmMTRiIiwiTTY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzIwIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zMjBjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzJ6TTMyNS44IDEzOS43bDE0LjQgMTQuNGMxNS42IDE1LjYgMTUuNiA0MC45IDAgNTYuNmwtMjMuOCAyMy44LTcxLTcxIDIzLjgtMjMuOGMxNS42LTE1LjYgNDAuOS0xNS42IDU2LjYgMHpNMTE5LjkgMjg5bDkxLjUtOTEuNiA3MSA3MS05MS42IDkxLjVjLTQuMSA0LjEtOS4yIDctMTQuOSA4LjRsLTYwLjEgMTVjLTUuNSAxLjQtMTEuMi0uMi0xNS4yLTQuMnMtNS42LTkuNy00LjItMTUuMmwxNS02MC4xYzEuNC01LjYgNC4zLTEwLjggOC40LTE0Ljl6Il19LCQzcj1yMmUsUDNyPXIyZSxWemU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaGFuZC1maXN0IixpY29uOlszODQsNTEyLFs5OTk0LCJmaXN0LXJhaXNlZCJdLCJmNmRlIiwiTTE2MCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMTEyLTY0IDAgMC0xMTJjMC0xNy43IDE0LjMtMzIgMzItMzJ6TTMyIDY0YzAtMTcuNyAxNC4zLTMyIDMyLTMyUzk2IDQ2LjMgOTYgNjRsMCA4MC02NCAwIDAtODB6bTE5MiAwYzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJsMCA5NmMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTk2em05NiA2NGMwLTE3LjcgMTQuMy0zMiAzMi0zMnMzMiAxNC4zIDMyIDMybDAgNjRjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC02NHptLTk2IDg4bDAtLjZjOS40IDUuNCAyMC4zIDguNiAzMiA4LjYgMTMuMiAwIDI1LjQtNCAzNS42LTEwLjggOC43IDI0LjkgMzIuNSA0Mi44IDYwLjQgNDIuOCAxMS43IDAgMjIuNi0zLjEgMzItOC42bDAgOC42YzAgNTIuMy0yNS4xIDk4LjgtNjQgMTI4bDAgOTZjMCAxNy43LTE0LjMgMzItMzIgMzJsLTE2MCAwYy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTc4LjRjLTE3LjMtNy45LTMzLjItMTguOC00Ni45LTMyLjVMMzcuNSAzNTcuNUMxMy41IDMzMy41IDAgMzAwLjkgMCAyNjdsMC0yN2MwLTM1LjMgMjguNy02NCA2NC02NGw4OCAwYzIyLjEgMCA0MCAxNy45IDQwIDQwcy0xNy45IDQwLTQwIDQwbC01NiAwYy04LjggMC0xNiA3LjItMTYgMTZzNy4yIDE2IDE2IDE2bDU2IDBjMzkuOCAwIDcyLTMyLjIgNzItNzJ6Il19LEkzcj1WemUsVXplPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNvbW1lbnQtc21zIixpY29uOls1MTIsNTEyLFsic21zIl0sImY3Y2QiLCJNMjU2IDQ4MGMxNDEuNCAwIDI1Ni0xMDcuNSAyNTYtMjQwUzM5Ny40IDAgMjU2IDAgMCAxMDcuNSAwIDI0MGMwIDU0LjMgMTkuMiAxMDQuMyA1MS42IDE0NC41TDIuOCA0NzYuOGMtNC44IDktMy4zIDIwIDMuNiAyNy41czE3LjggOS44IDI3LjEgNS44bDExOC40LTUwLjdDMTgzLjcgNDcyLjYgMjE4LjkgNDgwIDI1NiA0ODB6TTE0MC44IDE3Mi44bDE5LjIgMGM4LjggMCAxNiA3LjIgMTYgMTZzLTcuMiAxNi0xNiAxNmwtMTkuMiAwYy01LjMgMC05LjYgNC4zLTkuNiA5LjZzNC4zIDkuNiA5LjYgOS42YzIzIDAgNDEuNiAxOC42IDQxLjYgNDEuNnMtMTguNiA0MS42LTQxLjYgNDEuNmwtMjUuNiAwYy04LjggMC0xNi03LjItMTYtMTZzNy4yLTE2IDE2LTE2bDI1LjYgMGM1LjMgMCA5LjYtNC4zIDkuNi05LjZzLTQuMy05LjYtOS42LTkuNmMtMjMgMC00MS42LTE4LjYtNDEuNi00MS42czE4LjYtNDEuNiA0MS42LTQxLjZ6bTE4OC44IDQxLjZjMC0yMyAxOC42LTQxLjYgNDEuNi00MS42bDE5LjIgMGM4LjggMCAxNiA3LjIgMTYgMTZzLTcuMiAxNi0xNiAxNmwtMTkuMiAwYy01LjMgMC05LjYgNC4zLTkuNiA5LjZzNC4zIDkuNiA5LjYgOS42YzIzIDAgNDEuNiAxOC42IDQxLjYgNDEuNnMtMTguNiA0MS42LTQxLjYgNDEuNmwtMjUuNiAwYy04LjggMC0xNi03LjItMTYtMTZzNy4yLTE2IDE2LTE2bDI1LjYgMGM1LjMgMCA5LjYtNC4zIDkuNi05LjZzLTQuMy05LjYtOS42LTkuNmMtMjMgMC00MS42LTE4LjYtNDEuNi00MS42em0tOTguMy0zMy44bDI0LjcgNDEuMSAyNC43LTQxLjFjMy43LTYuMiAxMS4xLTkuMSAxOC03LjJzMTEuNyA4LjIgMTEuNyAxNS40bDAgMTAyLjRjMCA4LjgtNy4yIDE2LTE2IDE2cy0xNi03LjItMTYtMTZsMC00NC42LTguNyAxNC41Yy0yLjkgNC44LTguMSA3LjgtMTMuNyA3LjhzLTEwLjgtMy0xMy43LTcuOGwtOC43LTE0LjUgMCA0NC42YzAgOC44LTcuMiAxNi0xNiAxNnMtMTYtNy4yLTE2LTE2bDAtMTAyLjRjMC03LjIgNC44LTEzLjUgMTEuNy0xNS40czE0LjMgMSAxOCA3LjJ6Il19LE4zcj1VemUsRjNyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNpbS1jYXJkIixpY29uOlszODQsNTEyLFtdLCJmN2M0IiwiTTAgNjRDMCAyOC43IDI4LjcgMCA2NCAwTDI1OC43IDBjMTcgMCAzMy4zIDYuNyA0NS4zIDE4LjdMMzY1LjMgODBjMTIgMTIgMTguNyAyOC4zIDE4LjcgNDUuM0wzODQgNDQ4YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDUxMmMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCA2NHpNOTYgMjU2Yy0xNy43IDAtMzIgMTQuMy0zMiAzMmwwIDQwIDEyOCAwIDAtNzItOTYgMHpNNjQgNDE2YzAgMTcuNyAxNC4zIDMyIDMyIDMybDQ4IDAgMC03Mi04MCAwIDAgNDB6bTI1NiAwbDAtNDAtMTI4IDAgMCA3MiA5NiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMyem0wLTEyOGMwLTE3LjctMTQuMy0zMi0zMi0zMmwtNDggMCAwIDcyIDgwIDAgMC00MHoiXX0sV3plPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNjYWxlLWJhbGFuY2VkIixpY29uOls2NDAsNTEyLFs5ODc4LCJiYWxhbmNlLXNjYWxlIl0sImYyNGUiLCJNMzg0IDMybDEyOCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMyTDM5OC40IDk2Yy01LjIgMjUuOC0yMi45IDQ3LjEtNDYuNCA1Ny4zbDAgMjk0LjcgMTYwIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTM4NCAwYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDE2MCAwIDAtMjk0LjdjLTIzLjUtMTAuMy00MS4yLTMxLjYtNDYuNC01Ny4zTDEyOCA5NmMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMmwxMjggMGMxNC42LTE5LjQgMzcuOC0zMiA2NC0zMnM0OS40IDEyLjYgNjQgMzJ6bTU1LjYgMjg4TDU4NC40IDMyMCA1MTIgMTk1LjggNDM5LjYgMzIwek01MTIgNDE2Yy02Mi45IDAtMTE1LjItMzQtMTI2LTc4LjktMi42LTExIDEtMjIuMyA2LjctMzIuMWw5NS4yLTE2My4yYzUtOC42IDE0LjItMTMuOCAyNC4xLTEzLjhzMTkuMSA1LjMgMjQuMSAxMy44bDk1LjIgMTYzLjJjNS43IDkuOCA5LjMgMjEuMSA2LjcgMzIuMS0xMC44IDQ0LjgtNjMuMSA3OC45LTEyNiA3OC45ek0xMjYuOCAxOTUuOEw1NC40IDMyMCAxOTkuMyAzMjAgMTI2LjggMTk1Ljh6TS45IDMzNy4xYy0yLjYtMTEgMS0yMi4zIDYuNy0zMi4xbDk1LjItMTYzLjJjNS04LjYgMTQuMi0xMy44IDI0LjEtMTMuOHMxOS4xIDUuMyAyNC4xIDEzLjhsOTUuMiAxNjMuMmM1LjcgOS44IDkuMyAyMS4xIDYuNyAzMi4xLTEwLjggNDQuOC02My4xIDc4LjktMTI2IDc4LjlTMTEuNyAzODIgLjkgMzM3LjF6Il19LE8zcj1XemUsR3plPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNhciIsaWNvbjpbNTEyLDUxMixbMTI4NjY0LCJhdXRvbW9iaWxlIl0sImYxYjkiLCJNMTM1LjIgMTE3LjRsLTI2LjEgNzQuNiAyOTMuOCAwLTI2LjEtNzQuNkMzNzIuMyAxMDQuNiAzNjAuMiA5NiAzNDYuNiA5NkwxNjUuNCA5NmMtMTMuNiAwLTI1LjcgOC42LTMwLjIgMjEuNHpNMzkuNiAxOTYuOEw3NC44IDk2LjNDODguMyA1Ny44IDEyNC42IDMyIDE2NS40IDMybDE4MS4yIDBjNDAuOCAwIDc3LjEgMjUuOCA5MC42IDY0LjNsMzUuMiAxMDAuNWMyMy4yIDkuNiAzOS42IDMyLjUgMzkuNiA1OS4ybDAgMTkyYzAgMTcuNy0xNC4zIDMyLTMyIDMybC0zMiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTMyLTMyMCAwIDAgMzJjMCAxNy43LTE0LjMgMzItMzIgMzJsLTMyIDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyTDAgMjU2YzAtMjYuNyAxNi40LTQ5LjYgMzkuNi01OS4yek0xMjggMzA0YTMyIDMyIDAgMSAwIC02NCAwIDMyIDMyIDAgMSAwIDY0IDB6bTI4OCAzMmEzMiAzMiAwIDEgMCAwLTY0IDMyIDMyIDAgMSAwIDAgNjR6Il19LFIzcj1HemUsWXplPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNyb3Atc2ltcGxlIixpY29uOls1MTIsNTEyLFsiY3JvcC1hbHQiXSwiZjU2NSIsIk0xMjggMzJjMC0xNy43LTE0LjMtMzItMzItMzJTNjQgMTQuMyA2NCAzMmwwIDMyLTMyIDBDMTQuMyA2NCAwIDc4LjMgMCA5NnMxNC4zIDMyIDMyIDMybDMyIDAgMCAyNTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMjA4IDAgMC02NC0yMDggMCAwLTM1MnpNMzg0IDQ4MGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMzIgMzIgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtMzIgMCAwLTI1NmMwLTM1LjMtMjguNy02NC02NC02NGwtMjA4IDAgMCA2NCAyMDggMCAwIDM1MnoiXX0sQjNyPVl6ZSxIM3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibWVkYWwiLGljb246WzQ0OCw1MTIsWzEyNzk0MV0sImY1YTIiLCJNMjI0LjMgMTI4TDEzOS43LTEyLjljLTYuNS0xMC44LTIwLjEtMTQuNy0zMS4zLTkuMUwyMS44IDIxLjNDOS45IDI3LjIgNS4xIDQxLjYgMTEgNTMuNUw4MC42IDE5Mi42Yy0zMC4xIDMzLjktNDguMyA3OC41LTQ4LjMgMTI3LjQgMCAxMDYgODYgMTkyIDE5MiAxOTJzMTkyLTg2IDE5Mi0xOTJjMC00OC45LTE4LjMtOTMuNS00OC4zLTEyNy40TDQzNy42IDUzLjVjNS45LTExLjkgMS4xLTI2LjMtMTAuNy0zMi4yTDM0MC4yLTIyLjFjLTExLjItNS42LTI0LjktMS42LTMxLjMgOS4xTDIyNC4zIDEyOHptMzAuOCAxNDIuNWMxLjQgMi44IDQgNC43IDcgNS4xbDUwLjEgNy4zYzcuNyAxLjEgMTAuNyAxMC41IDUuMiAxNmwtMzYuMyAzNS40Yy0yLjIgMi4yLTMuMiA1LjItMi43IDguM2w4LjYgNDkuOWMxLjMgNy42LTYuNyAxMy41LTEzLjYgOS45bC00NC44LTIzLjZjLTIuNy0xLjQtNi0xLjQtOC43IDBsLTQ0LjggMjMuNmMtNi45IDMuNi0xNC45LTIuMi0xMy42LTkuOWw4LjYtNDkuOWMuNS0zLS41LTYuMS0yLjctOC4zbC0zNi4zLTM1LjRjLTUuNi01LjQtMi41LTE0LjggNS4yLTE2bDUwLjEtNy4zYzMtLjQgNS43LTIuNCA3LTUuMWwyMi40LTQ1LjRjMy40LTcgMTMuMy03IDE2LjggMGwyMi40IDQ1LjR6Il19LHEzcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzY3JvbGwiLGljb246WzU3Niw1MTIsWzEyODIyMF0sImY3MGUiLCJNMCAxMTJDMCA3MC41IDMxLjYgMzYuNCA3MiAzMi40bDAtLjQgMjgwIDBjNTMgMCA5NiA0MyA5NiA5NmwwIDE3Ni0xNzYgMGMtMzkuOCAwLTcyIDMyLjItNzIgNzJsMCA2MGMwIDI0LjMtMTkuNyA0NC00NCA0NHMtNDQtMTkuNy00NC00NGwwLTIyOC02NCAwYy0yNi41IDAtNDgtMjEuNS00OC00OGwwLTQ4ek0yMzYuOCA0ODBjNy4xLTEzLjEgMTEuMi0yOC4xIDExLjItNDRsMC02MGMwLTEzLjMgMTAuNy0yNCAyNC0yNGwyNDggMGMxMy4zIDAgMjQgMTAuNyAyNCAyNGwwIDI0YzAgNDQuMi0zNS44IDgwLTgwIDgwbC0yMjcuMiAwek04MCA4MGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJsMCA0OCA2NCAwIDAtNDhjMC0xNy43LTE0LjMtMzItMzItMzJ6Il19LGozcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmaWxlLWV4Y2VsIixpY29uOlszODQsNTEyLFtdLCJmMWMzIiwiTTAgNjRDMCAyOC43IDI4LjcgMCA2NCAwTDIxMy41IDBjMTcgMCAzMy4zIDYuNyA0NS4zIDE4LjdMMzY1LjMgMTI1LjNjMTIgMTIgMTguNyAyOC4zIDE4LjcgNDUuM0wzODQgNDQ4YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDUxMmMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCA2NHptMjA4LTUuNWwwIDkzLjVjMCAxMy4zIDEwLjcgMjQgMjQgMjRMMzI1LjUgMTc2IDIwOCA1OC41ek0xNjQgMjY2LjdjLTcuNC0xMS0yMi4zLTE0LTMzLjMtNi43cy0xNCAyMi4zLTYuNyAzMy4zTDE2My4yIDM1MiAxMjQgNDEwLjdjLTcuNCAxMS00LjQgMjUuOSA2LjcgMzMuM3MyNS45IDQuNCAzMy4zLTYuN2wyOC00MiAyOCA0MmM3LjQgMTEgMjIuMyAxNCAzMy4zIDYuN3MxNC0yMi4zIDYuNy0zMy4zTDIyMC44IDM1MiAyNjAgMjkzLjNjNy40LTExIDQuNC0yNS45LTYuNy0zMy4zcy0yNS45LTQuNC0zMy4zIDYuN2wtMjggNDItMjgtNDJ6Il19LFYzcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmaWx0ZXIiLGljb246WzUxMiw1MTIsW10sImYwYjAiLCJNMzIgNjRDMTkuMSA2NCA3LjQgNzEuOCAyLjQgODMuOFMuMiAxMDkuNSA5LjQgMTE4LjZMMTkyIDMwMS4zIDE5MiA0MTZjMCA4LjUgMy40IDE2LjYgOS40IDIyLjZsNjQgNjRjOS4yIDkuMiAyMi45IDExLjkgMzQuOSA2LjlTMzIwIDQ5Mi45IDMyMCA0ODBsMC0xNzguNyAxODIuNi0xODIuNmM5LjItOS4yIDExLjktMjIuOSA2LjktMzQuOVM0OTIuOSA2NCA0ODAgNjRMMzIgNjR6Il19LFUzcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJkcnVtIixpY29uOls1MTIsNTEyLFsxMjkzNDVdLCJmNTY5IiwiTTUwMS4yIDc2LjFjMTEuMS03LjMgMTQuMi0yMi4xIDYuOS0zMy4ycy0yMi4xLTE0LjItMzMuMi02LjlMMzcwLjIgMTA0LjVDMzM1LjggOTguNyAyOTcgOTYgMjU2IDk2IDExNC42IDk2IDAgMTI4IDAgMjA4TDAgMzY4YzAgMzEuMyAyNy40IDU4LjggNzIgNzguN0w3MiAzNDRjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNGwwIDExOS40YzMzIDguOSA3MS4xIDE0LjUgMTEyIDE2LjFMMjMyIDM3NmMwLTEzLjMgMTAuNy0yNCAyNC0yNHMyNCAxMC43IDI0IDI0bDAgMTAzLjVjNDAuOS0xLjYgNzktNy4yIDExMi0xNi4xTDM5MiAzNDRjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNGwwIDEwMi43YzQ0LjYtMTkuOSA3Mi00Ny40IDcyLTc4LjdsMC0xNjBjMC00MS4xLTMwLjItNjkuNS03OC44LTg3LjRsNjcuOS00NC41ek0zMDcuNCAxNDUuNmwtNjQuNiA0Mi4zYy0xMS4xIDcuMy0xNC4yIDIyLjEtNi45IDMzLjJzMjIuMSAxNC4yIDMzLjIgNi45bDExMS4xLTcyLjhjMTQuNyAzLjIgMjcuOSA3IDM5LjQgMTEuNSAzOC44IDE1LjEgNDQuNCAzMC42IDQ0LjQgNDEuMyAwIC44LTIuNyAxNy4yLTQ2IDM1LjktMzguOSAxNi44LTk2IDI4LjEtMTYyIDI4LjFTMTMyLjkgMjYwLjcgOTQgMjQzLjljLTQzLjMtMTguNy00Ni0zNS4xLTQ2LTM1LjkgMC0xMC42IDUuNi0yNi4yIDQ0LjQtNDEuMyAzOC4zLTE0LjkgOTUuNC0yMi43IDE2My42LTIyLjcgMTggMCAzNS4xIC41IDUxLjQgMS42eiJdfSxXM3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibWFwLXBpbiIsaWNvbjpbMzIwLDUxMixbMTI4MjA1XSwiZjI3NiIsIk0xOTIgMjg0LjRDMjU2LjEgMjY5LjkgMzA0IDIxMi41IDMwNCAxNDQgMzA0IDY0LjUgMjM5LjUgMCAxNjAgMFMxNiA2NC41IDE2IDE0NGMwIDY4LjUgNDcuOSAxMjUuOSAxMTIgMTQwLjRMMTI4IDQ4MGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMTk1LjZ6TTE2OCA5NmMtMzAuOSAwLTU2IDI1LjEtNTYgNTYgMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjRjMC01Ny40IDQ2LjYtMTA0IDEwNC0xMDQgMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjR6Il19LFp6ZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzY2FsZS11bmJhbGFuY2VkLWZsaXAiLGljb246WzY0MCw1MTIsWyJiYWxhbmNlLXNjYWxlLXJpZ2h0Il0sImY1MTYiLCJNMTE4LjIgNjIuNEMxMDEuNSA1Ni44IDkyLjQgMzguNiA5OCAyMS45UzEyMS43LTMuOSAxMzguNSAxLjZsMTEzIDM3LjdjMTMuOS0yMy41IDM5LjYtMzkuMyA2OC45LTM5LjMgNDQuMiAwIDgwIDM1LjggODAgODAgMCAzLS4yIDUuOS0uNSA4LjhsMTIyLjYgNDAuOWMxNi44IDUuNiAyNS44IDIzLjcgMjAuMiA0MC41cy0yMy43IDI1LjgtNDAuNSAyMC4yTDM2Ni43IDE0NS4yYy00LjUgMy4yLTkuMyA1LjktMTQuNCA4LjJsMCAzMjYuN2MwIDE3LjctMTQuMyAzMi0zMiAzMmwtMTkyIDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsMTYwIDAgMC0yOTQuN2MtMjEtOS4yLTM3LjItMjctNDQuMi00OWwtMTI1LjktNDJ6TTIwMC44IDI4OEwxMjguMyAxNjMuOCA1NS45IDI4OCAyMDAuOCAyODh6bS03Mi40IDk2Yy02Mi45IDAtMTE1LjItMzQtMTI2LTc4LjktMi42LTExIDEtMjIuMyA2LjctMzIuMWw5NS4yLTE2My4yYzUtOC42IDE0LjItMTMuOCAyNC4xLTEzLjhzMTkuMSA1LjMgMjQuMSAxMy44bDk1LjIgMTYzLjJjNS43IDkuOCA5LjMgMjEuMSA2LjcgMzIuMS0xMC44IDQ0LjgtNjMuMSA3OC45LTEyNiA3OC45em0zODIuOC05Mi4ybC03Mi40IDEyNC4yIDE0NC45IDAtNzIuNC0xMjQuMnptMTI2IDE0MS4zQzYyNi40IDQ3OCA1NzQuMSA1MTIgNTExLjIgNTEycy0xMTUuMi0zNC0xMjYtNzguOWMtMi42LTExIDEtMjIuMyA2LjctMzIuMWw5NS4yLTE2My4yYzUtOC42IDE0LjItMTMuOCAyNC4xLTEzLjhzMTkuMSA1LjMgMjQuMSAxMy44bDk1LjIgMTYzLjJjNS43IDkuOCA5LjMgMjEuMSA2LjcgMzIuMXoiXX0sRzNyPVp6ZSxZM3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYXJyb3dzLXRvLWNpcmNsZSIsaWNvbjpbNTEyLDUxMixbXSwiZTRiZCIsIk05LjQgOS40QzIxLjktMy4xIDQyLjEtMy4xIDU0LjYgOS40TDEyOCA4Mi43IDEyOCA2NGMwLTE3LjcgMTQuMy0zMiAzMi0zMnMzMiAxNC4zIDMyIDMybDAgOTZjMCAxNy43LTE0LjMgMzItMzIgMzJsLTk2IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsMTguNyAwLTczLjQtNzMuNEMtMy4xIDQyLjEtMy4xIDIxLjkgOS40IDkuNHpNMjAwIDI1NmE1NiA1NiAwIDEgMSAxMTIgMCA1NiA1NiAwIDEgMSAtMTEyIDB6TTUwMi42IDU0LjZMNDI5LjMgMTI4IDQ0OCAxMjhjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTk2IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtOTZjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDE4LjcgNzMuNC03My40YzEyLjUtMTIuNSAzMi44LTEyLjUgNDUuMyAwczEyLjUgMzIuOCAwIDQ1LjN6bS00NS4zIDQ0OEwzODQgNDI5LjMgMzg0IDQ0OGMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTk2YzAtMTcuNyAxNC4zLTMyIDMyLTMybDk2IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTE4LjcgMCA3My40IDczLjRjMTIuNSAxMi41IDEyLjUgMzIuOCAwIDQ1LjNzLTMyLjggMTIuNS00NS4zIDB6TTkuNCA0NTcuNEw4Mi43IDM4NCA2NCAzODRjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsOTYgMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDk2YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMTguNy03My40IDczLjRjLTEyLjUgMTIuNS0zMi44IDEyLjUtNDUuMyAwcy0xMi41LTMyLjggMC00NS4zeiJdfSxaM3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZW52ZWxvcGUiLGljb246WzUxMiw1MTIsWzEyODM4Niw5OTkzLDYxNDQzXSwiZjBlMCIsIk00OCA2NGMtMjYuNSAwLTQ4IDIxLjUtNDggNDggMCAxNS4xIDcuMSAyOS4zIDE5LjIgMzguNGwyMDggMTU2YzE3LjEgMTIuOCA0MC41IDEyLjggNTcuNiAwbDIwOC0xNTZjMTIuMS05LjEgMTkuMi0yMy4zIDE5LjItMzguNCAwLTI2LjUtMjEuNS00OC00OC00OEw0OCA2NHpNMCAxOTZMMCAzODRjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzg0IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0xODgtMTk4LjQgMTQ4LjhjLTM0LjEgMjUuNi04MS4xIDI1LjYtMTE1LjIgMEwwIDE5NnoiXX0sWDNyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJhYnkiLGljb246WzM4NCw1MTIsW10sImY3N2MiLCJNMTIwIDg4YTcyIDcyIDAgMSAxIDE0NCAwIDcyIDcyIDAgMSAxIC0xNDQgMHpNNy43IDE0NC41YzEzLTE3LjkgMzgtMjEuOCA1NS45LTguOEw5OS44IDE2MmMyNi44IDE5LjUgNTkuMSAzMCA5Mi4yIDMwczY1LjQtMTAuNSA5Mi4yLTMwbDM2LjItMjYuNGMxNy45LTEzIDQyLjktOSA1NS45IDguOHM5IDQyLjktOC44IDU1LjlsLTM2LjIgMjYuNGMtMTMuNiA5LjktMjguMSAxOC4yLTQzLjMgMjVsMCAzNi4zLTE5MiAwIDAtMzYuM2MtMTUuMi02LjctMjkuNy0xNS4xLTQzLjMtMjVMMTYuNSAyMDAuM2MtMTcuOS0xMy0yMS44LTM4LTguOC01NS45ek05Ny41IDMyOS4zbDYwLjYgNTMtMjYgMzcuMiAyNC4zIDI0LjNjMTUuNiAxNS42IDE1LjYgNDAuOSAwIDU2LjZzLTQwLjkgMTUuNi01Ni42IDBsLTQ4LTQ4QzM4IDQzOC42IDM2LjEgNDE3IDQ3LjIgNDAxLjFsNTAuMi03MS44em0xMjguNSA1M2w2MC42LTUzIDUwLjIgNzEuOGMxMS4xIDE1LjkgOS4yIDM3LjUtNC41IDUxLjJsLTQ4IDQ4Yy0xNS42IDE1LjYtNDAuOSAxNS42LTU2LjYgMHMtMTUuNi00MC45IDAtNTYuNmwyNC4zLTI0LjMtMjYtMzcuMnoiXX0sWHplPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNxdWFyZS1jYXJldC1kb3duIixpY29uOls0NDgsNTEyLFsiY2FyZXQtc3F1YXJlLWRvd24iXSwiZjE1MCIsIk0zODQgNDgwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMzIwYzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzIwIDB6TTIyNCAzNTJjLTYuNyAwLTEzLTIuOC0xNy42LTcuN2wtMTA0LTExMmMtNi41LTctOC4yLTE3LjItNC40LTI1LjlTMTEwLjUgMTkyIDEyMCAxOTJsMjA4IDBjOS41IDAgMTguMiA1LjcgMjIgMTQuNHMyLjEgMTguOS00LjQgMjUuOWwtMTA0IDExMmMtNC41IDQuOS0xMC45IDcuNy0xNy42IDcuN3oiXX0sUTNyPVh6ZSxLM3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidGVudCIsaWNvbjpbNTEyLDUxMixbXSwiZTU3ZCIsIk0yNi45IDIwNi45TDMuNyA0NDQuOUMxLjggNDYzLjcgMTYuNiA0ODAgMzUuNSA0ODBsMTcyLjcgMGMyNi41IDAgNDgtMjEuNSA0OC00OGwwLTEyOWMwLTguMyA2LjctMTUgMTUtMTUgNS41IDAgMTAuNiAzIDEzLjIgNy45bDg2LjEgMTU5YzguNCAxNS41IDI0LjYgMjUuMSA0Mi4yIDI1LjFsNjQuMSAwYzE4LjkgMCAzMy43LTE2LjMgMzEuOC0zNS4xTDQ4NS42IDIwNy4xYy0xLjktMTkuNi0xMi44LTM3LjMtMjkuNS00Ny44TDI4MC45IDQ4LjNjLTE1LjctMTAtMzUuOC05LjktNTEuNSAuMUw1Ni4xIDE1OS4yYy0xNi41IDEwLjYtMjcuMyAyOC4yLTI5LjIgNDcuN3oiXX0sSjNyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImEiLGljb246WzM4NCw1MTIsWzk3XSwiNDEiLCJNMjIxLjUgNTEuN0MyMTYuNiAzOS44IDIwNC45IDMyIDE5MiAzMnMtMjQuNiA3LjgtMjkuNSAxOS43Yy05My4zIDIyNC0xNDYuNyAzNTItMTYwIDM4NC02LjggMTYuMyAuOSAzNSAxNy4yIDQxLjhzMzUtLjkgNDEuOC0xNy4ybDMxLjgtNzYuMyAxOTcuMyAwIDMxLjggNzYuM2M2LjggMTYuMyAyNS41IDI0IDQxLjggMTcuMnMyNC0yNS41IDE3LjItNDEuOGMtMTMuMy0zMi02Ni43LTE2MC0xNjAtMzg0ek0yNjQgMzIwbC0xNDQgMCA3Mi0xNzIuOCA3MiAxNzIuOHoiXX0sZWRyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBhcmFjaHV0ZS1ib3giLGljb246WzUxMiw1MTIsW10sImY0Y2QiLCJNMTI4IDIyNEMxMjggMTUyLjIgMTQ0LjMgODguNCAxNjkuNSA0My40IDE5NS4xLTIuNCAyMjYuNi0yNCAyNTYtMjRzNjAuOSAyMS42IDg2LjUgNjcuNEMzNjcuNyA4OC40IDM4NCAxNTIuMiAzODQgMjI0bC0xMDQgMCAwIDk2IDggMGM5LjMgMCAxOC4xIDIgMjYgNS41bDExOC40LTEwMS41LS41IDBjMC03OC40LTE3LjctMTUwLjYtNDcuNi0yMDQtNi4xLTExLTEyLjktMjEuMy0yMC4zLTMwLjkgODYuNSAzNS45IDE0Ny44IDExNS4xIDE0Ny44IDIxOC45IDAgNy0zLjEgMTMuNy04LjQgMTguMkwzNDcuNCAzNjAuMWMzIDcuNCA0LjYgMTUuNCA0LjYgMjMuOWwwIDY0YzAgMzUuMy0yOC43IDY0LTY0IDY0bC02NCAwYy0zNS4zIDAtNjQtMjguNy02NC02NGwwLTY0YzAtOC40IDEuNi0xNi41IDQuNi0yMy45TDguNCAyMjYuMkMzLjEgMjIxLjcgMCAyMTUgMCAyMDggMCAxMDQuMiA2MS4zIDI0LjkgMTQ3LjgtMTAuOSAxNDAuNS0xLjQgMTMzLjcgOSAxMjcuNiAyMCA5Ny43IDczLjQgODAgMTQ1LjYgODAgMjI0bC0uNSAwIDExOC40IDEwMS41YzgtMy41IDE2LjgtNS41IDI2LTUuNWw4IDAgMC05Ni0xMDQgMHoiXX0sdGRyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNhcnQtYXJyb3ctZG93biIsaWNvbjpbNjQwLDUxMixbXSwiZjIxOCIsIk0wIDhDMC01LjMgMTAuNy0xNiAyNC0xNmw0NS4zIDBjMjcuMSAwIDUwLjMgMTkuNCA1NS4xIDQ2bC40IDIgMTg3LjIgMCAwIDEwMi4xLTMxLTMxYy05LjQtOS40LTI0LjYtOS40LTMzLjkgMHMtOS40IDI0LjYgMCAzMy45bDcyIDcyYzkuNCA5LjQgMjQuNiA5LjQgMzMuOSAwbDcyLTcyYzkuNC05LjQgOS40LTI0LjYgMC0zMy45cy0yNC42LTkuNC0zMy45IDBsLTMxIDMxIDAtMTAyLjEgMTc3LjQgMGMyMCAwIDM1LjEgMTguMiAzMS40IDM3LjlMNTM3LjggMjM1LjhjLTUuNyAzMC4zLTMyLjEgNTIuMi02Mi45IDUyLjJsLTMwMy42IDAgNS4xIDI4LjNjMi4xIDExLjQgMTIgMTkuNyAyMy42IDE5LjdMNDU2IDMzNmMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtMjU1LjkgMGMtMzQuOCAwLTY0LjYtMjQuOS03MC44LTU5LjFMNzcuMiAzOC42Yy0uNy0zLjgtNC02LjYtNy45LTYuNkwyNCAzMkMxMC43IDMyIDAgMjEuMyAwIDh6TTE2MCA0NjRhNDggNDggMCAxIDEgOTYgMCA0OCA0OCAwIDEgMSAtOTYgMHptMjI0IDBhNDggNDggMCAxIDEgOTYgMCA0OCA0OCAwIDEgMSAtOTYgMHoiXX0scmRyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJyaWRnZS1jaXJjbGUtZXhjbGFtYXRpb24iLGljb246WzU3Niw1MTIsW10sImU0Y2EiLCJNMzIgMzJDMTQuMyAzMiAwIDQ2LjMgMCA2NFMxNC4zIDk2IDMyIDk2bDggMCAwIDY0LTQwIDAgMCAxMTJjMzcuNiA5LjQgNjQgNDMuMiA2NCA4MmwwIDk0YzAgMTcuNyAxNC4zIDMyIDMyIDMybDMyIDBjMTcuNyAwIDMyLTE0LjMgMzItMzJsMC02NGMwLTUzIDQzLTk2IDk2LTk2IDYuNCAwIDEyLjcgLjYgMTguNyAxLjggMzQuNy00OS41IDkyLjItODEuOCAxNTcuMy04MS44IDI4LjYgMCA1NS42IDYuMiA4MCAxNy40bDAtNjUuNC00MCAwIDAtNjQgOCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMyTDMyIDMyek00MjQgOTZsMCA2NC04MCAwIDAtNjQgODAgMHpNMjk2IDk2bDAgNjQtODAgMCAwLTY0IDgwIDB6TTg4IDk2bDgwIDAgMCA2NC04MCAwIDAtNjR6TTQzMiA1NDRhMTQ0IDE0NCAwIDEgMCAwLTI4OCAxNDQgMTQ0IDAgMSAwIDAgMjg4em0wLTEwMGEyMCAyMCAwIDEgMSAwIDQwIDIwIDIwIDAgMSAxIDAtNDB6bTAtMTQwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDgwYzAgOC44LTcuMiAxNi0xNiAxNnMtMTYtNy4yLTE2LTE2bDAtODBjMC04LjggNy4yLTE2IDE2LTE2eiJdfSxhMmU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2xvdWQtYXJyb3ctdXAiLGljb246WzU3Niw1MTIsWzYyMzM4LCJjbG91ZC11cGxvYWQiLCJjbG91ZC11cGxvYWQtYWx0Il0sImYwZWUiLCJNMTQ0IDQ4MGMtNzkuNSAwLTE0NC02NC41LTE0NC0xNDQgMC02My40IDQxLTExNy4yIDk3LjktMTM2LjUtMS4zLTcuNy0xLjktMTUuNS0xLjktMjMuNSAwLTc5LjUgNjQuNS0xNDQgMTQ0LTE0NCA1NS40IDAgMTAzLjUgMzEuMyAxMjcuNiA3Ny4xIDE0LjItOC4zIDMwLjgtMTMuMSA0OC40LTEzLjEgNTMgMCA5NiA0MyA5NiA5NiAwIDE1LjctMy44IDMwLjYtMTAuNSA0My43IDQ0IDIwLjMgNzQuNSA2NC43IDc0LjUgMTE2LjMgMCA3MC43LTU3LjMgMTI4LTEyOCAxMjhsLTMwNCAwek0zMDUgMTkxYy05LjQtOS40LTI0LjYtOS40LTMzLjkgMGwtNzIgNzJjLTkuNCA5LjQtOS40IDI0LjYgMCAzMy45czI0LjYgOS40IDMzLjkgMGwzMS0zMSAwIDEwMi4xYzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC0xMDIuMSAzMSAzMWM5LjQgOS40IDI0LjYgOS40IDMzLjkgMHM5LjQtMjQuNiAwLTMzLjlsLTcyLTcyeiJdfSxhZHI9YTJlLGlkcj1hMmUsb2RyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImF0IixpY29uOls1MTIsNTEyLFs2MTk0Nl0sIjQwIiwiTTI1NiA2NEMxNTAgNjQgNjQgMTUwIDY0IDI1NnM4NiAxOTIgMTkyIDE5MmMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMkMxMTQuNiA1MTIgMCAzOTcuNCAwIDI1NlMxMTQuNiAwIDI1NiAwIDUxMiAxMTQuNiA1MTIgMjU2bDAgMzJjMCA1My00MyA5Ni05NiA5Ni0yOS4zIDAtNTUuNi0xMy4yLTczLjItMzMuOS0yMi44IDIxLTUzLjMgMzMuOS04Ni44IDMzLjktNzAuNyAwLTEyOC01Ny4zLTEyOC0xMjhzNTcuMy0xMjggMTI4LTEyOGMyNy45IDAgNTMuNyA4LjkgNzQuNyAyNC4xIDUuNy01IDEzLjEtOC4xIDIxLjMtOC4xIDE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMTEyYzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0zMmMwLTEwNi04Ni0xOTItMTkyLTE5MnptNjQgMTkyYTY0IDY0IDAgMSAwIC0xMjggMCA2NCA2NCAwIDEgMCAxMjggMHoiXX0saTJlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImluZGlhbi1ydXBlZS1zaWduIixpY29uOlszMjAsNTEyLFsiaW5kaWFuLXJ1cGVlIiwiaW5yIl0sImUxYmMiLCJNMCA2NEMwIDQ2LjMgMTQuMyAzMiAzMiAzMmwyNjQgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtNzYuNyAwYzE3LjcgMTkuOCAzMC4xIDQ0LjYgMzQuNyA3Mmw0MiAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC00MiAwYy0xMC40IDYyLjItNjAuOCAxMTAuOS0xMjMuOCAxMTguOUwyNzQuNiA0MjJjMTQuNCAxMC4zIDE3LjcgMzAuMyA3LjQgNDQuNnMtMzAuMyAxNy43LTQ0LjYgNy40TDEzLjQgMzE0QzIuMSAzMDYtMi43IDI5MS41IDEuNSAyNzguMlMxOC4xIDI1NiAzMiAyNTZsODAgMGMzNS44IDAgNjYuMS0yMy41IDc2LjMtNTZMMjQgMjAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0bDE2NC4zIDBjLTEwLjItMzIuNS00MC41LTU2LTc2LjMtNTZMMzIgOTZDMTQuMyA5NiAwIDgxLjcgMCA2NHoiXX0sbmRyPWkyZSxzZHI9aTJlLGxkcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0cnVjayIsaWNvbjpbNTc2LDUxMixbMTI4NjY2LDk5NTFdLCJmMGQxIiwiTTAgOTZDMCA2MC43IDI4LjcgMzIgNjQgMzJsMjg4IDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAzMiA1MC43IDBjMTcgMCAzMy4zIDYuNyA0NS4zIDE4LjdMNTU3LjMgMTkyYzEyIDEyIDE4LjcgMjguMyAxOC43IDQ1LjNMNTc2IDM4NGMwIDM1LjMtMjguNyA2NC02NCA2NGwtMy4zIDBjLTEwLjQgMzYuOS00NC40IDY0LTg0LjcgNjRzLTc0LjItMjcuMS04NC43LTY0bC0xMDIuNiAwYy0xMC40IDM2LjktNDQuNCA2NC04NC43IDY0cy03NC4yLTI3LjEtODQuNy02NEw2NCA0NDhjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgOTZ6TTUxMiAyODhsMC01MC43LTQ1LjMtNDUuMy01MC43IDAgMCA5NiA5NiAwek0xOTIgNDI0YTQwIDQwIDAgMSAwIC04MCAwIDQwIDQwIDAgMSAwIDgwIDB6bTIzMiA0MGE0MCA0MCAwIDEgMCAwLTgwIDQwIDQwIDAgMSAwIDAgODB6Il19LFF6ZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjaGFsa2JvYXJkLXVzZXIiLGljb246WzY0MCw1MTIsWyJjaGFsa2JvYXJkLXRlYWNoZXIiXSwiZjUxYyIsIk0xOTIgMzg0YzUzIDAgOTYgNDMgOTYgOTYgMCAxNy43LTE0LjMgMzItMzIgMzJMMzIgNTEyYy0xNy43IDAtMzItMTQuMy0zMi0zMiAwLTUzIDQzLTk2IDk2LTk2bDk2IDB6TTU0NCAzMmMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDI4OGMwIDMzLjEtMjUuMiA2MC40LTU3LjUgNjMuN2wtNi41IC4zLTIxMS4xIDBjLTUuMS0yNC4yLTE2LjMtNDYuMS0zMi4xLTY0bDUxLjIgMCAwLTMyYzAtMTcuNyAxNC4zLTMyIDMyLTMybDk2IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCAzMiAzMiAwIDAtMjg4LTM1MiAwIDAgNTcuM2MtMTQuOC02LTMxLTkuMy00OC05LjMtNS40IDAtMTAuOCAuMy0xNiAxbDAtNDljMC0zNS4zIDI4LjctNjQgNjQtNjRsMzUyIDB6TTE0NCAzNTJhODAgODAgMCAxIDEgMC0xNjAgODAgODAgMCAxIDEgMCAxNjB6Il19LGNkcj1RemUsZGRyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InVzZXItY2hlY2siLGljb246WzY0MCw1MTIsW10sImY0ZmMiLCJNMjg2IDMwNGM5OC41IDAgMTc4LjMgNzkuOCAxNzguMyAxNzguMyAwIDE2LjQtMTMuMyAyOS43LTI5LjcgMjkuN0w3OCA1MTJjLTE2LjQgMC0yOS43LTEzLjMtMjkuNy0yOS43IDAtOTguNSA3OS44LTE3OC4zIDE3OC4zLTE3OC4zbDU5LjQgMHpNNTg1LjcgMTA1LjljNy44LTEwLjcgMjIuOC0xMy4xIDMzLjUtNS4zczEzLjEgMjIuOCA1LjMgMzMuNUw1MjIuMSAyNzQuOWMtNC4yIDUuNy0xMC43IDkuNC0xNy43IDkuOHMtMTQtMi4yLTE4LjktNy4zbC00Ni40LTQ4Yy05LjItOS41LTktMjQuNyAuNi0zMy45IDkuNS05LjIgMjQuNy04LjkgMzMuOSAuNmwyNi41IDI3LjQgODUuNi0xMTcuN3pNMjU2LjMgMjQ4YTEyMCAxMjAgMCAxIDEgMC0yNDAgMTIwIDEyMCAwIDEgMSAwIDI0MHoiXX0sdWRyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InVzZXItbmluamEiLGljb246WzQ0OCw1MTIsWzEyOTM5OV0sImY1MDQiLCJNMzUyIDEyOGMwIDcwLjctNTcuMyAxMjgtMTI4IDEyOC01Ny4yIDAtMTA1LjYtMzcuNS0xMjItODkuMy0xLjEgMS4zLTIuMiAyLjYtMy41IDMuOC0xNS44IDE1LjgtMzguOCAyMC43LTUzLjYgMjIuMS04LjEgLjgtMTQuNi01LjctMTMuOC0xMy44IDEuNC0xNC43IDYuMy0zNy44IDIyLjEtNTMuNiA1LjgtNS44IDEyLjYtMTAuMSAxOS42LTEzLjQtNy0zLjItMTMuOC03LjYtMTkuNi0xMy40LTE1LjgtMTUuOC0yMC43LTM4LjgtMjIuMS01My42LS44LTguMSA1LjctMTQuNiAxMy44LTEzLjggMTQuNyAxLjQgMzcuOCA2LjMgNTMuNiAyMi4xIDQuOCA0LjggOC43IDEwLjQgMTEuNyAxNi4xIDIxLjMtNDEuMiA2NC4zLTY5LjQgMTEzLjgtNjkuNCA3MC43IDAgMTI4IDU3LjMgMTI4IDEyOHpNMTQ0IDExMmMwIDguOCA3LjIgMTYgMTYgMTZsMTI4IDBjOC44IDAgMTYtNy4yIDE2LTE2cy03LjItMTYtMTYtMTZMMTYwIDk2Yy04LjggMC0xNiA3LjItMTYgMTZ6bS0xLjQgMjExbDY3IDUwLjJjOC41IDYuNCAyMC4zIDYuNCAyOC44IDBsNjctNTAuMmM2LjUtNC45IDE1LjItNi4yIDIyLjYtMi44IDYxLjQgMjguMiAxMDQuMSA5MC4yIDEwNC4xIDE2Mi4xIDAgMTYuNC0xMy4zIDI5LjctMjkuNyAyOS43TDQ1LjcgNTEyYy0xNi40IDAtMjkuNy0xMy4zLTI5LjctMjkuNyAwLTcyIDQyLjctMTM0IDEwNC4xLTE2Mi4xIDcuNC0zLjQgMTYuMS0yLjEgMjIuNiAyLjh6Il19LGZkcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwbGFudC13aWx0IixpY29uOls1MTIsNTEyLFtdLCJlNWFhIiwiTTM0NC0zMmM2Ni4zIDAgMTIwIDUzLjcgMTIwIDEyMGwwIDYuMmMyOS4zIDEyLjIgNDggNDEuMyA0OCA3Ni45IDAgMjcuOS0yNS4zIDc0LjgtNjYgMTExLjctMy44IDMuNS04LjggNS4zLTE0IDUuM3MtMTAuMi0xLjgtMTQtNS4zYy00MC43LTM2LjgtNjYtODMuNy02Ni0xMTEuNyAwLTM1LjYgMTguNy02NC43IDQ4LTc2LjlsMC02LjJjMC0zMC45LTI1LjEtNTYtNTYtNTZzLTU2IDI1LjEtNTYgNTZsMCA0MjRjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC0yOTZjMC0zMC45LTI1LjEtNTYtNTYtNTZzLTU2IDI1LjEtNTYgNTZsMCAzOC4yYzI5LjMgMTIuMiA0OCA0MS4zIDQ4IDc2LjkgMCAyNy45LTI1LjMgNzQuOC02NiAxMTEuNy0zLjggMy41LTguOCA1LjMtMTQgNS4zcy0xMC4yLTEuOC0xNC01LjNDMjUuMyA0MDUuOSAwIDM1OSAwIDMzMS4xIDAgMjk1LjQgMTguNyAyNjYuNCA0OCAyNTQuMkw0OCAyMTZjMC02Ni4zIDUzLjctMTIwIDEyMC0xMjAgMjAuMiAwIDM5LjMgNSA1NiAxMy44TDIyNCA4OGMwLTY2LjMgNTMuNy0xMjAgMTIwLTEyMHoiXX0sS3plPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6IndlaWdodC1zY2FsZSIsaWNvbjpbNDQ4LDUxMixbIndlaWdodCJdLCJmNDk2IiwiTTExNi42IDE5MmMtMy0xMC4xLTQuNi0yMC45LTQuNi0zMiAwLTYxLjkgNTAuMS0xMTIgMTEyLTExMlMzMzYgOTguMSAzMzYgMTYwYzAgMTEuMS0xLjYgMjEuOS00LjYgMzJsLTcxIDAgMjQuNi00NC4zYzYuNC0xMS42IDIuMy0yNi4yLTkuMy0zMi42cy0yNi4yLTIuMy0zMi42IDkuM2wtMzcuNiA2Ny43LTg4LjggMHpNMTI4IDMyTDY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzIwIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zMjBjMC0zNS4zLTI4LjctNjQtNjQtNjRsLTY0IDBDMjkzLjMgMTEuOSAyNjAgMCAyMjQgMHMtNjkuMyAxMS45LTk2IDMyeiJdfSxwZHI9S3plLEsyZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjYXJldC1yaWdodCIsaWNvbjpbMjU2LDUxMixbXSwiZjBkYSIsIk0yNDkuMyAyMzUuOGMxMC4yIDEyLjYgOS41IDMxLjEtMi4yIDQyLjhsLTEyOCAxMjhjLTkuMiA5LjItMjIuOSAxMS45LTM0LjkgNi45UzY0LjUgMzk2LjkgNjQuNSAzODRsMC0yNTZjMC0xMi45IDcuOC0yNC42IDE5LjgtMjkuNnMyNS43LTIuMiAzNC45IDYuOWwxMjggMTI4IDIuMiAyLjR6Il19LGhkcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmbG9yaW4tc2lnbiIsaWNvbjpbMzg0LDUxMixbXSwiZTE4NCIsIk0zMTQuNyAzMmMtMzguOCAwLTczLjcgMjMuMy04OC42IDU5LjFMMTcwLjcgMjI0IDY0IDIyNGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmw4MCAwLTQ1LjEgMTA4LjNjLTUgMTEuOS0xNi42IDE5LjctMjkuNSAxOS43TDMyIDQxNmMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmwzNy4zIDBjMzguOCAwIDczLjctMjMuMyA4OC42LTU5LjFMMjEzLjMgMjg4IDMyMCAyODhjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTgwIDAgNDUuMS0xMDguM2M1LTExLjkgMTYuNi0xOS43IDI5LjUtMTkuN0wzNTIgOTZjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTM3LjMgMHoiXX0sSjJlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJlbGwiLGljb246WzQ0OCw1MTIsWzEyODI3Niw2MTYwMl0sImYwZjMiLCJNMjI0IDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMybDAgMy4yQzExOSA1MCA2NCAxMTQuNiA2NCAxOTJsMCAyMS43YzAgNDguMS0xNi40IDk0LjgtNDYuNCAxMzIuNEw3LjggMzU4LjNDMi43IDM2NC42IDAgMzcyLjQgMCAzODAuNSAwIDQwMC4xIDE1LjkgNDE2IDM1LjUgNDE2bDM3Ni45IDBjMTkuNiAwIDM1LjUtMTUuOSAzNS41LTM1LjUgMC04LjEtMi43LTE1LjktNy44LTIyLjJsLTkuOC0xMi4yQzQwMC40IDMwOC41IDM4NCAyNjEuOCAzODQgMjEzLjdsMC0yMS43YzAtNzcuNC01NS0xNDItMTI4LTE1Ni44bDAtMy4yYzAtMTcuNy0xNC4zLTMyLTMyLTMyek0xNjIgNDY0YzcuMSAyNy42IDMyLjIgNDggNjIgNDhzNTQuOS0yMC40IDYyLTQ4bC0xMjQgMHoiXX0sbWRyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Imxhcmktc2lnbiIsaWNvbjpbMzg0LDUxMixbXSwiZTFjOCIsIk0xNDQgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNGwwIDQxLjVjNy45LTEgMTUuOS0xLjUgMjQtMS41czE2LjEgLjUgMjQgMS41TDIxNiAyNGMwLTEzLjMgMTAuNy0yNCAyNC0yNHMyNCAxMC43IDI0IDI0bDAgNTRjNTguOSAyMy44IDEwMy4yIDc2IDExNi4yIDEzOS43IDMuNSAxNy4zLTcuNyAzNC4yLTI1IDM3LjdzLTM0LjItNy43LTM3LjctMjVjLTYuNy0zMy4yLTI2LjQtNjEuOC01My40LTgwLjJsMCA4MS44YzAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0bDAtMTAxLjhjLTcuOC0xLjUtMTUuOC0yLjItMjQtMi4ycy0xNi4yIC44LTI0IDIuMkwxNjggMjMyYzAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0bDAtODEuOGMtMzMuOCAyMy01NiA2MS45LTU2IDEwNS44IDAgNzAuNyA1Ny4zIDEyOCAxMjggMTI4bDE2MCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMyTDMyIDQ0OGMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMmwxNi45IDBDMTguNSAzNTAgMCAzMDUuMiAwIDI1NiAwIDE3NS40IDQ5LjYgMTA2LjQgMTIwIDc4bDAtNTRjMC0xMy4zIDEwLjctMjQgMjQtMjR6Il19LGdkcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtaWxsLXNpZ24iLGljb246WzM4NCw1MTIsW10sImUxZWQiLCJNMjk3LTIyLjJjMTIuMyA1IDE4LjIgMTkgMTMuMiAzMS4zbC0yOSA3MS4zQzMzOC44IDg1LjEgMzg0IDEzMy4zIDM4NCAxOTJsMCAyMDhjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC0yMDhjMC0yNi41LTIxLjUtNDgtNDgtNDgtNi40IDAtMTIuNSAxLjItMTggMy41bC0zMCA3My44IDAgMTc4LjdjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC0yMS4yLTU3LjggMTQyLjJjLTUgMTIuMy0xOSAxOC4yLTMxLjMgMTMuMnMtMTguMi0xOS0xMy4yLTMxLjNMMTYwIDI1MS4zIDE2MCAxOTJjMC0yNi41LTIxLjUtNDgtNDgtNDhzLTQ4IDIxLjUtNDggNDhsMCAyMDhjMCAxNy43LTE0LjMgMzItMzIgMzJTMCA0MTcuNyAwIDQwMEwwIDExMmMwLTE3LjcgMTQuMy0zMiAzMi0zMiAxMC45IDAgMjAuNSA1LjQgMjYuMyAxMy43IDE2LTguNyAzNC4zLTEzLjcgNTMuNy0xMy43IDMxLjMgMCA1OS43IDEyLjkgODAgMzMuNiA5LjYtOS44IDIwLjktMTcuOCAzMy41LTIzLjVMMjY1LjgtOWM1LTEyLjMgMTktMTguMiAzMS4zLTEzLjJ6Il19LEp6ZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwZXJzb24tc25vd2JvYXJkaW5nIixpY29uOls1NzYsNTEyLFsxMjc5MzgsInNub3dib2FyZGluZyJdLCJmN2NlIiwiTTQyNC41IDE2YTU2IDU2IDAgMSAxIDAgMTEyIDU2IDU2IDAgMSAxIDAtMTEyek0xNjYuNCA0NS41YzEwLjItMTQuNCAzMC4yLTE3LjkgNDQuNi03LjdsMjcyIDE5MmMxNC40IDEwLjIgMTcuOSAzMC4yIDcuNyA0NC42cy0zMC4yIDE3LjktNDQuNiA3LjdsLTkyLjItNjUuMS02Mi4yIDUzLjMgMzIuMSAyNi43YzE4LjIgMTUuMiAyOC44IDM3LjcgMjguOCA2MS41bDAgODcuOCA3Ny41IDE1LjJjNi4yIDEuMiAxMi42IC45IDE4LjctLjhsNDEuMi0xMS44YzEyLjctMy42IDI2IDMuNyAyOS43IDE2LjVzLTMuNyAyNi0xNi41IDI5LjdsLTQxLjIgMTEuOGMtMTMuNCAzLjgtMjcuNCA0LjQtNDEuMSAxLjhMODcuMSA0NDMuM2MtMTcuMi0zLjQtMzMtMTEuOC00NS4zLTI0LjFMMTUuNSAzOTNjLTkuNC05LjQtOS40LTI0LjYgMC0zMy45czI0LjYtOS40IDMzLjkgMGwyNi4yIDI2LjJjNS42IDUuNiAxMi44IDkuNCAyMC42IDExbDY0LjIgMTIuNiAwLTEyMy43YzAtMjcuNyAxMi01NCAzMi44LTcyLjJsNjktNjAuNC04OC4yLTYyLjNDMTU5LjYgODAgMTU2LjIgNjAgMTY2LjQgNDUuNXptNTguMSAzNzUuN2w2NCAxMi41IDAtNzUuM2MwLTQuNy0yLjEtOS4zLTUuOC0xMi4zbC01OC4yLTQ4LjUgMCAxMjMuNnoiXX0seGRyPUp6ZSxlQ2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidHR5IixpY29uOls1MTIsNTEyLFsidGVsZXR5cGUiXSwiZjFlNCIsIk00NTAuMiAyNjYuOGMxNS44IDYuNSAzNC4xIC4zIDQyLjYtMTQuNmwyLjQtNC4yYzI3LjktNDguOSAyMy42LTExOC44LTMxLjMtMTU0LjUtMTI2LTgyLTI4OS42LTgyLTQxNS42IDAtNTQuOSAzNS43LTU5LjMgMTA1LjctMzEuMyAxNTQuNWwyLjQgNC4yYzguNSAxNC45IDI2LjcgMjEuMSA0Mi42IDE0LjZsODEuOS0zMy43YzEzLjktNS43IDIyLjQtMTkuOSAyMC45LTM0LjlsLTUuMS01MWM2Mi41LTIxIDEzMC44LTE5LjkgMTkyLjYgMy4zbC00LjggNDcuN2MtMS41IDE1IDcgMjkuMiAyMC45IDM0LjlsODEuOSAzMy43ek0zMiAzNTJhMzIgMzIgMCAxIDAgNjQgMCAzMiAzMiAwIDEgMCAtNjQgMHptOTYgMGEzMiAzMiAwIDEgMCA2NCAwIDMyIDMyIDAgMSAwIC02NCAwek02NCA0MTZhMzIgMzIgMCAxIDAgMCA2NCAzMiAzMiAwIDEgMCAwLTY0em0zNTIgMzJhMzIgMzIgMCAxIDAgNjQgMCAzMiAzMiAwIDEgMCAtNjQgMHpNMjU2IDMyMGEzMiAzMiAwIDEgMCAwIDY0IDMyIDMyIDAgMSAwIDAtNjR6bTY0IDMyYTMyIDMyIDAgMSAwIDY0IDAgMzIgMzIgMCAxIDAgLTY0IDB6bTEyOC0zMmEzMiAzMiAwIDEgMCAwIDY0IDMyIDMyIDAgMSAwIDAtNjR6TTEyOCA0NDhjMCAxNy43IDE0LjMgMzIgMzIgMzJsMTkyIDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTE5MiAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnoiXX0sYmRyPWVDZSx2ZHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidXNlcnMtcmVjdGFuZ2xlIixpY29uOls1NzYsNTEyLFtdLCJlNTk0IiwiTTY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsNDQ4IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zMjBjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzJ6bTIyNCA3MmE1NiA1NiAwIDEgMSAwIDExMiA1NiA1NiAwIDEgMSAwLTExMnptMCAxNTJjNTMgMCA5NiA0MyA5NiA5NmwwIDI0YzAgMTMuMy0xMC43IDI0LTI0IDI0bC0xNDQgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRsMC0yNGMwLTUzIDQzLTk2IDk2LTk2em05Ni02NGE0OCA0OCAwIDEgMSA5NiAwIDQ4IDQ4IDAgMSAxIC05NiAwek0xNjggMjcyLjNjLTE1LjIgMjIuOC0yNCA1MC4yLTI0IDc5LjdsMCAyNGMwIDguNCAxLjQgMTYuNSA0LjEgMjRsLTQ2LjggMEM4OS42IDQwMCA4MCAzOTAuNCA4MCAzNzguN0w4MCAzNjhjMC01MC4zIDM4LjctOTEuNiA4OC05NS43ek00MjcuOSA0MDBjMi43LTcuNSA0LjEtMTUuNiA0LjEtMjRsMC0yNGMwLTI5LjUtOC44LTU2LjktMjQtNzkuNyA0OS4zIDQuMSA4OCA0NS4zIDg4IDk1LjdsMCAxMC43YzAgMTEuOC05LjYgMjEuMy0yMS4zIDIxLjNsLTQ2LjggMHpNOTYgMTkyYTQ4IDQ4IDAgMSAxIDk2IDAgNDggNDggMCAxIDEgLTk2IDB6Il19LG8yZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtb2JpbGUiLGljb246WzM4NCw1MTIsWzEyODI0MSwibW9iaWxlLWFuZHJvaWQiLCJtb2JpbGUtcGhvbmUiXSwiZjNjZSIsIk04MCAwQzQ0LjcgMCAxNiAyOC43IDE2IDY0bDAgMzg0YzAgMzUuMyAyOC43IDY0IDY0IDY0bDIyNCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMzg0YzAtMzUuMy0yOC43LTY0LTY0LTY0TDgwIDB6bTcyIDQxNmw4MCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC04MCAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0eiJdfSx5ZHI9bzJlLHdkcj1vMmUsTWRyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFycm93cy10dXJuLXRvLWRvdHMiLGljb246WzQ0OCw1MTIsW10sImU0YzEiLCJNMjY1LjQtNi42YzEyLjUtMTIuNSAzMi44LTEyLjUgNDUuMyAwczEyLjUgMzIuOCAwIDQ1LjNMMjg1LjMgNjQgMzUyIDY0YzUzIDAgOTYgNDMgOTYgOTZsMCAzMmMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTMyYzAtMTcuNy0xNC4zLTMyLTMyLTMybC02Ni43IDAgMjUuNCAyNS40YzEyLjUgMTIuNSAxMi41IDMyLjggMCA0NS4zcy0zMi44IDEyLjUtNDUuMyAwbC04MC04MGMtMTIuNS0xMi41LTEyLjUtMzIuOCAwLTQ1LjNsODAtODB6bS04Mi43IDI3Mmw4MCA4MGMxMi41IDEyLjUgMTIuNSAzMi44IDAgNDUuM2wtODAgODBjLTEyLjUgMTIuNS0zMi44IDEyLjUtNDUuMyAwcy0xMi41LTMyLjggMC00NS4zTDE2Mi43IDQwMCA5NiA0MDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMybDAgMzJjMCAxNy43LTE0LjMgMzItMzIgMzJTMCA0ODEuNyAwIDQ2NGwwLTMyYzAtNTMgNDMtOTYgOTYtOTZsNjYuNyAwLTI1LjQtMjUuNGMtMTIuNS0xMi41LTEyLjUtMzIuOCAwLTQ1LjNzMzIuOC0xMi41IDQ1LjMgMHpNMzIwIDM2OGE2NCA2NCAwIDEgMSAxMjggMCA2NCA2NCAwIDEgMSAtMTI4IDB6TTY0IDE2MGE2NCA2NCAwIDEgMSAwLTEyOCA2NCA2NCAwIDEgMSAwIDEyOHoiXX0sa2RyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImV4Y2xhbWF0aW9uIixpY29uOlsxMjgsNTEyLFsxMDA2OSwxMDA3MSw2MTczOF0sIjIxIiwiTTY0IDQzMmMyMi4xIDAgNDAgMTcuOSA0MCA0MHMtMTcuOSA0MC00MCA0MC00MC0xNy45LTQwLTQwYzAtMjIuMSAxNy45LTQwIDQwLTQwek02NCAwYzI2LjUgMCA0OCAyMS41IDQ4IDQ4IDAgLjYgMCAxLjEgMCAxLjdsLTE2IDMwNGMtLjkgMTctMTUgMzAuMy0zMiAzMC4zUzMzIDM3MC43IDMyIDM1My43TDE2IDQ5LjdjMC0uNiAwLTEuMSAwLTEuNyAwLTI2LjUgMjEuNS00OCA0OC00OHoiXX0sU2RyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNodXJjaCIsaWNvbjpbNTEyLDUxMixbOTk2Ml0sImY1MWQiLCJNMjgwLThjMC0xMy4zLTEwLjctMjQtMjQtMjRTMjMyLTIxLjMgMjMyLThsMCAyNC0zMiAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDMyIDAgMCA0OC05OC42IDY1LjhDMTIwIDE4Ni43IDExMiAyMDEuNiAxMTIgMjE3LjdsMCAzOC4zLTc5LjggNDUuNkMxMi4zIDMxMyAwIDMzNC4yIDAgMzU3LjFMMCA0NDhjMCAzNS4zIDI4LjcgNjQgNjQgNjQgNzQuNyAwIDg1LjQgMCAzMjAgMGw2NCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtOTAuOWMwLTIzLTEyLjMtNDQuMi0zMi4yLTU1LjZMNDAwIDI1NiA0MDAgMjE3LjdjMC0xNi04LTMxLTIxLjQtMzkuOWwtOTguNi02NS44IDAtNDggMzIgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtMzIgMCAwLTI0ek0yNTYgMzIwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgODAtMTI4IDAgMC04MGMwLTM1LjMgMjguNy02NCA2NC02NHoiXX0semRyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRvZ2dsZS1vZmYiLGljb246WzU3Niw1MTIsW10sImYyMDQiLCJNMzg0IDEyOGM3MC43IDAgMTI4IDU3LjMgMTI4IDEyOFM0NTQuNyAzODQgMzg0IDM4NGwtMTkyIDBjLTcwLjcgMC0xMjgtNTcuMy0xMjgtMTI4czU3LjMtMTI4IDEyOC0xMjhsMTkyIDB6TTU3NiAyNTZjMC0xMDYtODYtMTkyLTE5Mi0xOTJMMTkyIDY0Qzg2IDY0IDAgMTUwIDAgMjU2Uzg2IDQ0OCAxOTIgNDQ4bDE5MiAwYzEwNiAwIDE5Mi04NiAxOTItMTkyek0xOTIgMzM2YTgwIDgwIDAgMSAwIDAtMTYwIDgwIDgwIDAgMSAwIDAgMTYweiJdfSxDZHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic2hvZS1wcmludHMiLGljb246WzU3Niw1MTIsW10sImY1NGIiLCJNMjk2IDE5MmMtMjEuMS0xMi4xLTQyLjMtMjQuMi03Mi0yOS4zbDAtMTQwLjNDMjU3LjcgMTMgMzExLjQgMCAzNTIgMCA0NDggMCA1NzYgNDggNTc2IDEyOHMtMTE5LjYgOTYtMTc2IDk2Yy00OCAwLTc2LTE2LTEwNC0zMnpNMTI4IDMybDQ4IDAgMCAxMjgtNDggMGMtMzUuMyAwLTY0LTI4LjctNjQtNjRzMjguNy02NCA2NC02NHpNMjMyIDMyMGMyOC0xNiA1Ni0zMiAxMDQtMzIgNTYuNCAwIDE3NiAxNiAxNzYgOTZTMzg0IDUxMiAyODggNTEyYy00MC41IDAtOTQuMy0xMy0xMjgtMjIuNGwwLTE0MC4zYzI5LjctNS4yIDUwLjktMTcuMyA3Mi0yOS40ek02NCA0ODBjLTM1LjMgMC02NC0yOC43LTY0LTY0czI4LjctNjQgNjQtNjRsNDggMCAwIDEyOC00OCAweiJdfSxfZHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmlsZS1jaXJjbGUtZXhjbGFtYXRpb24iLGljb246WzU3Niw1MTIsW10sImU0ZWIiLCJNOTYgMEM2MC43IDAgMzIgMjguNyAzMiA2NGwwIDM4NGMwIDM1LjMgMjguNyA2NCA2NCA2NGwxODAgMGMtMjIuNy0zMS41LTM2LTcwLjItMzYtMTEyIDAtMTAwLjYgNzcuNC0xODMuMiAxNzYtMTkxLjNsMC0zOC4xYzAtMTctNi43LTMzLjMtMTguNy00NS4zTDI5MC43IDE4LjdDMjc4LjcgNi43IDI2Mi41IDAgMjQ1LjUgMEw5NiAwek0zNTcuNSAxNzZMMjY0IDE3NmMtMTMuMyAwLTI0LTEwLjctMjQtMjRMMjQwIDU4LjUgMzU3LjUgMTc2ek00MzIgNTQ0YTE0NCAxNDQgMCAxIDAgMC0yODggMTQ0IDE0NCAwIDEgMCAwIDI4OHptMC0xMDBhMjAgMjAgMCAxIDEgMCA0MCAyMCAyMCAwIDEgMSAwLTQwem0wLTE0MGM4LjggMCAxNiA3LjIgMTYgMTZsMCA4MGMwIDguOC03LjIgMTYtMTYgMTZzLTE2LTcuMi0xNi0xNmwwLTgwYzAtOC44IDcuMi0xNiAxNi0xNnoiXX0sZWxlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6IndhbGxldCIsaWNvbjpbNTEyLDUxMixbXSwiZjU1NSIsIk02NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgMzg0YzAgMzUuMyAyOC43IDY0IDY0IDY0bDM4NCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMTkyYzAtMzUuMy0yOC43LTY0LTY0LTY0TDcyIDEyOGMtMTMuMyAwLTI0LTEwLjctMjQtMjRTNTguNyA4MCA3MiA4MGwzODQgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNEw2NCAzMnpNNDE2IDI1NmEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6Il19LFB3PXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im1lc3NhZ2UiLGljb246WzUxMiw1MTIsWyJjb21tZW50LWFsdCJdLCJmMjdhIiwiTTAgMzUyTDAgMTI4QzAgNzUgNDMgMzIgOTYgMzJsMzIwIDBjNTMgMCA5NiA0MyA5NiA5NmwwIDIyNGMwIDUzLTQzIDk2LTk2IDk2bC0xMjAgMGMtNS4yIDAtMTAuMiAxLjctMTQuNCA0LjhMMTY2LjQgNTM5LjJjLTQuMiAzLjEtOS4yIDQuOC0xNC40IDQuOC0xMy4zIDAtMjQtMTAuNy0yNC0yNGwwLTcyLTMyIDBjLTUzIDAtOTYtNDMtOTYtOTZ6Il19LFRkcj1QdyxMZHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidHJvcGh5IixpY29uOls1MTIsNTEyLFsxMjc5NDJdLCJmMDkxIiwiTTE0NC4zIDBsMjI0IDBjMjYuNSAwIDQ4LjEgMjEuOCA0Ny4xIDQ4LjItLjIgNS4zLS40IDEwLjYtLjcgMTUuOGw0OS42IDBjMjYuMSAwIDQ5LjEgMjEuNiA0Ny4xIDQ5LjgtNy41IDEwMy43LTYwLjUgMTYwLjctMTE4IDE5MC41LTE1LjggOC4yLTMxLjkgMTQuMy00Ny4yIDE4LjgtMjAuMiAyOC42LTQxLjIgNDMuNy01Ny45IDUxLjhsMCA3My4xIDY0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTE5MiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDY0IDAgMC03My4xYy0xNi03LjctMzUuOS0yMi01NS4zLTQ4LjMtMTguNC00LjgtMzguNC0xMi4xLTU3LjktMjMuMS01NC4xLTMwLjMtMTAyLjktODcuNC0xMDkuOS0xODkuOS0xLjktMjguMSAyMS00OS43IDQ3LjEtNDkuN2w0OS42IDBjLS4zLTUuMi0uNS0xMC40LS43LTE1LjgtMS0yNi41IDIwLjYtNDguMiA0Ny4xLTQ4LjJ6TTEwMS41IDExMmwtNTIuNCAwYzYuMiA4NC43IDQ1LjEgMTI3LjEgODUuMiAxNDkuNi0xNC40LTM3LjMtMjYuMy04Ni0zMi44LTE0OS42ek0zODAgMjU2LjhjNDAuNS0yMy44IDc3LjEtNjYuMSA4My4zLTE0NC44TDQxMSAxMTJjLTYuMiA2MC45LTE3LjQgMTA4LjItMzEgMTQ0Ljh6Il19LHRDZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmYWNlLWRpenp5IixpY29uOls1MTIsNTEyLFsiZGl6enkiXSwiZjU2NyIsIk0yNTYgNTEyYTI1NiAyNTYgMCAxIDAgMC01MTIgMjU2IDI1NiAwIDEgMCAwIDUxMnpNMTM0LjEgMTUzLjlsMjUuOSAyNS45IDI1LjktMjUuOWM3LjgtNy44IDIwLjUtNy44IDI4LjMgMHM3LjggMjAuNSAwIDI4LjNsLTI1LjkgMjUuOSAyNS45IDI1LjljNy44IDcuOCA3LjggMjAuNSAwIDI4LjNzLTIwLjUgNy44LTI4LjMgMGwtMjUuOS0yNS45LTI1LjkgMjUuOWMtNy44IDcuOC0yMC41IDcuOC0yOC4zIDBzLTcuOC0yMC41IDAtMjguM2wyNS45LTI1LjktMjUuOS0yNS45Yy03LjgtNy44LTcuOC0yMC41IDAtMjguM3MyMC41LTcuOCAyOC4zIDB6bTE5MiAwbDI1LjkgMjUuOSAyNS45LTI1LjljNy44LTcuOCAyMC41LTcuOCAyOC4zIDBzNy44IDIwLjUgMCAyOC4zbC0yNS45IDI1LjkgMjUuOSAyNS45YzcuOCA3LjggNy44IDIwLjUgMCAyOC4zcy0yMC41IDcuOC0yOC4zIDBsLTI1LjktMjUuOS0yNS45IDI1LjljLTcuOCA3LjgtMjAuNSA3LjgtMjguMyAwcy03LjgtMjAuNSAwLTI4LjNsMjUuOS0yNS45LTI1LjktMjUuOWMtNy44LTcuOC03LjgtMjAuNSAwLTI4LjNzMjAuNS03LjggMjguMyAwek0yNTYgMzA0YTY0IDY0IDAgMSAxIDAgMTI4IDY0IDY0IDAgMSAxIDAtMTI4eiJdfSxEZHI9dENlLEFkcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJiYWN0ZXJpYSIsaWNvbjpbNjQwLDUxMixbXSwiZTA1OSIsIk0yNTYtMzJjMTMuMyAwIDI0IDEwLjcgMjQgMjRsMCAxMWM4LjYgMi4yIDE2LjkgNS42IDI0LjggMTAuM0wzMTEgN2M5LjQtOS40IDI0LjYtOS40IDMzLjkgMHM5LjQgMjQuNiAwIDMzLjlsLTYuMyA2LjNjNC42IDcuOCA4IDE2LjIgMTAuMyAyNC44bDExIDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTExIDBjLTIuMiA4LjYtNS42IDE2LjktMTAuMyAyNC44TDM0NSAxNTFjOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlzLTI0LjYgOS40LTMzLjkgMGwtNC4xLTQuMS0zMC4xIDMwLjEgNC4xIDQuMWM5LjQgOS40IDkuNCAyNC42IDAgMzMuOXMtMjQuNiA5LjQtMzMuOSAwbC00LjEtNC4xYy0xMCAxMC0yMCAyMC0zMC4xIDMwLjFMMjE3IDI3OWM5LjQgOS40IDkuNCAyNC42IDAgMzMuOXMtMjQuNiA5LjQtMzMuOSAwbC02LjMtNi4zYy03LjggNC42LTE2LjIgOC0yNC44IDEwLjNsMCAxMWMwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNGwwLTExYy04LjYtMi4yLTE2LjktNS42LTI0LjgtMTAuM0w3MyAzMTNjLTkuNCA5LjQtMjQuNiA5LjQtMzMuOSAwcy05LjQtMjQuNiAwLTMzLjlsNi4zLTYuM2MtNC42LTcuOC04LTE2LjItMTAuMy0yNC44bC0xMSAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0bDExIDBjMi4yLTguNiA1LjYtMTYuOSAxMC4zLTI0LjhMMzkgMTY5Yy05LjQtOS40LTkuNC0yNC42IDAtMzMuOXMyNC42LTkuNCAzMy45IDBsNC4xIDQuMWMxMC0xMCAyMC0yMCAzMC4xLTMwLjFMMTAzIDEwNWMtOS40LTkuNC05LjQtMjQuNiAwLTMzLjlzMjQuNi05LjQgMzMuOSAwbDQuMSA0LjEgMzAuMS0zMC4xLTQuMS00LjFjLTkuNC05LjQtOS40LTI0LjYgMC0zMy45UzE5MS42LTIuMyAyMDEgN2w2LjMgNi4zYzcuOC00LjYgMTYuMi04IDI0LjgtMTAuM2wwLTExYzAtMTMuMyAxMC43LTI0IDI0LTI0ek0xMjggMjU2YTMyIDMyIDAgMSAwIDAtNjQgMzIgMzIgMCAxIDAgMCA2NHpNMjQwIDE0NGEzMiAzMiAwIDEgMCAtNjQgMCAzMiAzMiAwIDEgMCA2NCAwem0yOTYgNDBsMCAxMWM4LjYgMi4yIDE2LjkgNS42IDI0LjggMTAuM0w1NjcgMTk5YzkuNC05LjQgMjQuNi05LjQgMzMuOSAwczkuNCAyNC42IDAgMzMuOWwtNi4zIDYuM2M0LjYgNy44IDggMTYuMiAxMC4zIDI0LjhsMTEgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtMTEgMGMtMi4yIDguNi01LjYgMTYuOS0xMC4zIDI0LjhMNjAxIDM0M2M5LjQgOS40IDkuNCAyNC42IDAgMzMuOXMtMjQuNiA5LjQtMzMuOSAwbC00LjEtNC4xLTMwLjEgMzAuMSA0LjEgNC4xYzkuNCA5LjQgOS40IDI0LjYgMCAzMy45cy0yNC42IDkuNC0zMy45IDBsLTQuMS00LjFjLTEwIDEwLTIwIDIwLTMwLjEgMzAuMUw0NzMgNDcxYzkuNCA5LjQgOS40IDI0LjYgMCAzMy45cy0yNC42IDkuNC0zMy45IDBsLTYuMy02LjNjLTcuOCA0LjYtMTYuMiA4LTI0LjggMTAuM2wwIDExYzAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0bDAtMTFjLTguNi0yLjItMTYuOS01LjYtMjQuOC0xMC4zTDMyOSA1MDVjLTkuNCA5LjQtMjQuNiA5LjQtMzMuOSAwcy05LjQtMjQuNiAwLTMzLjlsNi4zLTYuM2MtNC42LTcuOC04LTE2LjItMTAuMy0yNC44bC0xMSAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0bDExIDBjMi4yLTguNiA1LjYtMTYuOSAxMC4zLTI0LjhMMjk1IDM2MWMtOS40LTkuNC05LjQtMjQuNiAwLTMzLjlzMjQuNi05LjQgMzMuOSAwbDQuMSA0LjFjMTAtMTAgMjAtMjAgMzAuMS0zMC4xTDM1OSAyOTdjLTkuNC05LjQtOS40LTI0LjYgMC0zMy45czI0LjYtOS40IDMzLjkgMGw0LjEgNC4xIDMwLjEtMzAuMS00LjEtNC4xYy05LjQtOS40LTkuNC0yNC42IDAtMzMuOXMyNC42LTkuNCAzMy45IDBsNi4zIDYuM2M3LjgtNC42IDE2LjItOCAyNC44LTEwLjNsMC0xMWMwLTEzLjMgMTAuNy0yNCAyNC0yNHMyNCAxMC43IDI0IDI0ek00NDggMzg0YTMyIDMyIDAgMSAwIC02NCAwIDMyIDMyIDAgMSAwIDY0IDB6Il19LGd3PXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImVhci1kZWFmIixpY29uOls1MTIsNTEyLFsiZGVhZiIsImRlYWZuZXNzIiwiaGFyZC1vZi1oZWFyaW5nIl0sImYyYTQiLCJNNTAyLjYgNTQuNmwtNDAgNDBjLTEyLjUgMTIuNS0zMi44IDEyLjUtNDUuMyAwcy0xMi41LTMyLjggMC00NS4zbDQwLTQwYzEyLjUtMTIuNSAzMi44LTEyLjUgNDUuMyAwczEyLjUgMzIuOCAwIDQ1LjN6bS0zMjAgMzIwbC0xMjggMTI4Yy0xMi41IDEyLjUtMzIuOCAxMi41LTQ1LjMgMHMtMTIuNS0zMi44IDAtNDUuM2wxMjgtMTI4YzEyLjUtMTIuNSAzMi44LTEyLjUgNDUuMyAwczEyLjUgMzIuOCAwIDQ1LjN6TTI0MCAxMjhjLTU3LjYgMC0xMDUuMSA0My42LTExMS4zIDk5LjUtMS45IDE3LjYtMTcuOCAzMC4yLTM1LjMgMjguM3MtMzAuMi0xNy44LTI4LjMtMzUuM2M5LjctODggODQuMy0xNTYuNSAxNzQuOS0xNTYuNSA5Ny4yIDAgMTc2IDc4LjggMTc2IDE3NiAwIDQ2LTE3LjcgODcuOS00Ni42IDExOS4zLTEyIDEzLTE3LjQgMjQuOC0xNy40IDM0LjdsMCA2LjFjMCA2MS45LTUwLjEgMTEyLTExMiAxMTItMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMmMyNi41IDAgNDgtMjEuNSA0OC00OGwwLTYuMWMwLTMyLjkgMTcuNC01OS42IDM0LjQtNzggMTguNC0yMCAyOS42LTQ2LjYgMjkuNi03NS45IDAtNjEuOS01MC4xLTExMi0xMTItMTEyem0wIDgwYy0xNy43IDAtMzIgMTQuMy0zMiAzMiAwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNGMwLTQ0LjIgMzUuOC04MCA4MC04MHM4MCAzNS44IDgwIDgwYzAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0YzAtMTcuNy0xNC4zLTMyLTMyLTMyeiJdfSxFZHI9Z3csJGRyPWd3LFBkcj1ndyxyQ2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGVvcGxlLWFycm93cyIsaWNvbjpbNTEyLDUxMixbInBlb3BsZS1hcnJvd3MtbGVmdC1yaWdodCJdLCJlMDY4IiwiTTMyIDY0QTY0IDY0IDAgMSAxIDE2MCA2NCA2NCA2NCAwIDEgMSAzMiA2NHpNMCAyMjRjMC0zNS4zIDI4LjctNjQgNjQtNjRsNjQgMGMzLjIgMCA2LjQgLjIgOS41IC43TDkzLjEgMjA1LjFDNjUgMjMzLjIgNjUgMjc4LjggOTMuMSAzMDYuOWw1NiA1NmMzLjQgMy40IDcgNi40IDEwLjkgOWwwIDkyLjFjMCAyNi41LTIxLjUgNDgtNDggNDhsLTMyIDBjLTI2LjUgMC00OC0yMS41LTQ4LTQ4bDAtMTIwLjZDMTIuOSAzMzIuNCAwIDMxMS43IDAgMjg4bDAtNjR6TTM1MiA2NGE2NCA2NCAwIDEgMSAxMjggMCA2NCA2NCAwIDEgMSAtMTI4IDB6bTY2LjkgMTQxLjFsLTQ0LjQtNDQuNGMzLjEtLjUgNi4zLS43IDkuNS0uN2w2NCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgNjRjMCAyMy43LTEyLjkgNDQuNC0zMiA1NS40TDQ4MCA0NjRjMCAyNi41LTIxLjUgNDgtNDggNDhsLTMyIDBjLTI2LjUgMC00OC0yMS41LTQ4LTQ4bDAtOTIuMWMzLjktMi42IDcuNS01LjYgMTAuOS05bDU2LTU2YzI4LjEtMjguMSAyOC4xLTczLjcgMC0xMDEuOHpNMzAyLjggMTc3LjhjOS0zLjcgMTkuMy0xLjcgMjYuMiA1LjJsNTYgNTZjOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlsLTU2IDU2Yy02LjkgNi45LTE3LjIgOC45LTI2LjIgNS4yUzI4OCAzMjEuNyAyODggMzEybDAtMjQtNjQgMCAwIDI0YzAgOS43LTUuOCAxOC41LTE0LjggMjIuMnMtMTkuMyAxLjctMjYuMi01LjJsLTU2LTU2Yy05LjQtOS40LTkuNC0yNC42IDAtMzMuOWw1Ni01NmM2LjktNi45IDE3LjItOC45IDI2LjItNS4yUzIyNCAxOTAuMyAyMjQgMjAwbDAgMjQgNjQgMCAwLTI0YzAtOS43IDUuOC0xOC41IDE0LjgtMjIuMnoiXX0sSWRyPXJDZSxOZHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaGFuZHMtY2xhcHBpbmciLGljb246WzUxMiw1MTIsW10sImUxYTgiLCJNMzQ0IDhsMCA2NGMwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNGwwLTY0YzAtMTMuMyAxMC43LTI0IDI0LTI0UzM0NC01LjMgMzQ0IDh6TTIyMCAxMC43bDMyIDQ4YzcuNCAxMSA0LjQgMjUuOS02LjcgMzMuM3MtMjUuOSA0LjQtMzMuMy02LjdsLTMyLTQ4Yy03LjQtMTEtNC40LTI1LjkgNi43LTMzLjNTMjEyLjYtLjMgMjIwIDEwLjd6TTEzNSAxMTljOS40LTkuNCAyNC42LTkuNCAzMy45IDBMMjkyLjcgMjQyLjdjMTAuMSAxMC4xIDI3LjMgMi45IDI3LjMtMTEuM2wwLTM5LjRjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDE1My42YzAgNTcuMS0zMCAxMTAtNzguOSAxMzkuNC02NCAzOC40LTE0NS44IDI4LjMtMTk4LjUtMjQuNEw3IDM2MWMtOS40LTkuNC05LjQtMjQuNiAwLTMzLjlzMjQuNi05LjQgMzMuOSAwbDUzIDUzYzYuMSA2LjEgMTYgNi4xIDIyLjEgMHM2LjEtMTYgMC0yMi4xTDIzIDI2NWMtOS40LTkuNC05LjQtMjQuNiAwLTMzLjlzMjQuNi05LjQgMzMuOSAwbDkzIDkzYzYuMSA2LjEgMTYgNi4xIDIyLjEgMHM2LjEtMTYgMC0yMi4xTDU1IDE4NWMtOS40LTkuNC05LjQtMjQuNiAwLTMzLjlzMjQuNi05LjQgMzMuOSAwbDExNyAxMTdjNi4xIDYuMSAxNiA2LjEgMjIuMSAwczYuMS0xNiAwLTIyLjFsLTkzLTkzYy05LjQtOS40LTkuNC0yNC42IDAtMzMuOXpNNDMzLjEgNDg0LjljLTI0LjIgMTQuNS01MC45IDIyLjEtNzcuNyAyMy4xIDQ4LjEtMzkuNiA3Ni42LTk5IDc2LjYtMTYyLjRsMC05OC4xYzguMi0uMSAxNi02LjQgMTYtMTZsMC0zOS40YzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJsMCAxNTMuNmMwIDU3LjEtMzAgMTEwLTc4LjkgMTM5LjR6TTQ1My4zIDRjMTEgNy40IDE0IDIyLjMgNi43IDMzLjNsLTMyIDQ4Yy03LjQgMTEtMjIuMyAxNC0zMy4zIDYuN3MtMTQtMjIuMy02LjctMzMuM2wzMi00OGM3LjQtMTEgMjIuMy0xNCAzMy4zLTYuN3oiXX0sRmRyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InZpcnVzLWNvdmlkLXNsYXNoIixpY29uOls1NzYsNTEyLFtdLCJlNGE5IiwiTTQxLTI0LjljLTkuNC05LjQtMjQuNi05LjQtMzMuOSAwUy0yLjMtLjMgNyA5LjFsNTI4IDUyOGM5LjQgOS40IDI0LjYgOS40IDMzLjkgMHM5LjQtMjQuNiAwLTMzLjlsLTgzLTgzIDExLjQtMTEuNGM5LjQtOS40IDkuNC0yNC42IDAtMzMuOXMtMjQuNi05LjQtMzMuOSAwbC0xMS4zIDExLjMtMjMuOC0yMy44YzE3LjktMjMuNSAyOS45LTUxLjcgMzQuMS04Mi4zbDMzLjYgMCAwIDE2YzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC04MGMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGwwIDE2LTMzLjYgMGMtNC4yLTMwLjctMTYuMy01OC44LTM0LjEtODIuM2wyMy44LTIzLjggMTEuMyAxMS4zYzkuNCA5LjQgMjQuNiA5LjQgMzMuOSAwczkuNC0yNC42IDAtMzMuOUw0NDAuNyA0Ni43Yy05LjQtOS40LTI0LjYtOS40LTMzLjkgMHMtOS40IDI0LjYgMCAzMy45bDExLjMgMTEuMy0yMy44IDIzLjhDMzcwLjggOTcuOSAzNDIuNyA4NS44IDMxMiA4MS42bDAtMzMuNiAxNiAwYzEzLjMgMCAyNC0xMC43IDI0LTI0UzM0MS4zIDAgMzI4IDBMMjQ4IDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsMTYgMCAwIDMzLjZjLTMwLjcgNC4yLTU4LjggMTYuMy04Mi4zIDM0LjFMMTU3LjkgOTIgMTY5LjIgODAuNmM5LjQtOS40IDkuNC0yNC42IDAtMzMuOXMtMjQuNi05LjQtMzMuOSAwTDEyMy45IDU4LjEgNDEtMjQuOXpNMTEzLjYgMjMybC0zMy42IDAgMC0xNmMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGwwIDgwYzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC0xNiAzMy42IDBjNC4yIDMwLjcgMTYuMyA1OC44IDM0LjEgODIuM2wtMjMuOCAyMy44LTExLjMtMTEuM2MtOS40LTkuNC0yNC42LTkuNC0zMy45IDBzLTkuNCAyNC42IDAgMzMuOWw1Ni42IDU2LjZjOS40IDkuNCAyNC42IDkuNCAzMy45IDBzOS40LTI0LjYgMC0zMy45bC0xMS4zLTExLjMgMjMuOC0yMy44YzIzLjUgMTcuOSA1MS43IDI5LjkgODIuMyAzNC4xbDAgMzMuNi0xNiAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDgwIDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTE2IDAgMC0zMy42YzEzLjQtMS44IDI2LjQtNS4yIDM4LjctOS45TDEyMy41IDE5My4zYy00LjcgMTIuMy04IDI1LjItOS45IDM4Ljd6Il19LGFDZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjYWxlbmRhci1kYXlzIixpY29uOls0NDgsNTEyLFsiY2FsZW5kYXItYWx0Il0sImYwNzMiLCJNMTI4IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCAzMiAxMjggMCAwLTMyYzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJsMCAzMiAzMiAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMjg4YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDQ4MGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCAxMjhDMCA5Mi43IDI4LjcgNjQgNjQgNjRsMzIgMCAwLTMyYzAtMTcuNyAxNC4zLTMyIDMyLTMyek02NCAyNDBsMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZsMzIgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0zMmMwLTguOC03LjItMTYtMTYtMTZsLTMyIDBjLTguOCAwLTE2IDcuMi0xNiAxNnptMTI4IDBsMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZsMzIgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0zMmMwLTguOC03LjItMTYtMTYtMTZsLTMyIDBjLTguOCAwLTE2IDcuMi0xNiAxNnptMTQ0LTE2Yy04LjggMC0xNiA3LjItMTYgMTZsMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZsMzIgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0zMmMwLTguOC03LjItMTYtMTYtMTZsLTMyIDB6TTY0IDM2OGwwIDMyYzAgOC44IDcuMiAxNiAxNiAxNmwzMiAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMGMtOC44IDAtMTYgNy4yLTE2IDE2em0xNDQtMTZjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDMyYzAgOC44IDcuMiAxNiAxNiAxNmwzMiAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMHptMTEyIDE2bDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMzJjMC04LjgtNy4yLTE2LTE2LTE2bC0zMiAwYy04LjggMC0xNiA3LjItMTYgMTZ6Il19LE9kcj1hQ2UsaUNlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImRpYW1vbmQtdHVybi1yaWdodCIsaWNvbjpbNTEyLDUxMixbImRpcmVjdGlvbnMiXSwiZjVlYiIsIk0yMTUgMTdMMTcgMjE1QzYuMSAyMjUuOSAwIDI0MC42IDAgMjU2czYuMSAzMC4xIDE3IDQxTDIxNSA0OTVjMTAuOSAxMC45IDI1LjYgMTcgNDEgMTdzMzAuMS02LjEgNDEtMTdMNDk1IDI5N2MxMC45LTEwLjkgMTctMjUuNiAxNy00MXMtNi4xLTMwLjEtMTctNDFMMjk3IDE3QzI4Ni4xIDYuMSAyNzEuNCAwIDI1NiAwcy0zMC4xIDYuMS00MSAxN3pNMzg1IDI1N2wtNzIgNzJjLTkuNCA5LjQtMjQuNiA5LjQtMzMuOSAwcy05LjQtMjQuNiAwLTMzLjlsMzEtMzEtNzguMSAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNGwwIDQwYzAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0bDAtNDBjMC0zOS44IDMyLjItNzIgNzItNzJsNzguMSAwLTMxLTMxYy05LjQtOS40LTkuNC0yNC42IDAtMzMuOXMyNC42LTkuNCAzMy45IDBsNzIgNzJjOS40IDkuNCA5LjQgMjQuNiAwIDMzLjl6Il19LFJkcj1pQ2UsQmRyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhhbmQtcG9pbnQtdXAiLGljb246WzM4NCw1MTIsWzk3NTddLCJmMGE2IiwiTTMyIDMyQzMyIDE0LjMgNDYuMyAwIDY0IDBTOTYgMTQuMyA5NiAzMmwwIDIwOC02NCAwIDAtMjA4ek0yMjQgMTkyYzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJsMCA2NGMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTY0em0tNjQtNjRjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCA0OGMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTQ4YzAtMTcuNyAxNC4zLTMyIDMyLTMyem0xNjAgOTZjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDY0YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtNjR6bS05NiA4OGwwLS42YzkuNCA1LjQgMjAuMyA4LjYgMzIgOC42IDEzLjIgMCAyNS40LTQgMzUuNi0xMC44IDguNyAyNC45IDMyLjUgNDIuOCA2MC40IDQyLjggMTEuNyAwIDIyLjYtMy4xIDMyLTguNmwwIDguNmMwIDg4LjQtNzEuNiAxNjAtMTYwIDE2MGwtNjEuNyAwYy00Mi40IDAtODMuMS0xNi45LTExMy4xLTQ2LjlMMzcuNSA0NTMuNUMxMy41IDQyOS41IDAgMzk2LjkgMCAzNjNsMC0yN2MwLTM1LjMgMjguNy02NCA2NC02NGw4OCAwYzIyLjEgMCA0MCAxNy45IDQwIDQwcy0xNy45IDQwLTQwIDQwbC01NiAwYy04LjggMC0xNiA3LjItMTYgMTZzNy4yIDE2IDE2IDE2bDU2IDBjMzkuOCAwIDcyLTMyLjIgNzItNzJ6Il19LEhkcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJiZXppZXItY3VydmUiLGljb246WzY0MCw1MTIsW10sImY1NWIiLCJNMjk2IDEzNmwwLTQ4IDQ4IDAgMCA0OC00OCAwek0yODggMzJjLTI2LjUgMC00OCAyMS41LTQ4IDQ4bDAgNC0xMTguNCAwQzExMS4yIDYyLjcgODkuMyA0OCA2NCA0OCAyOC43IDQ4IDAgNzYuNyAwIDExMnMyOC43IDY0IDY0IDY0YzI1LjMgMCA0Ny4yLTE0LjcgNTcuNi0zNmw2Ni45IDBjLTU4LjkgMzkuNi05OC45IDEwNS0xMDQgMTgwTDgwIDMyMGMtMjYuNSAwLTQ4IDIxLjUtNDggNDhsMCA2NGMwIDI2LjUgMjEuNSA0OCA0OCA0OGw2NCAwYzI2LjUgMCA0OC0yMS41IDQ4LTQ4bDAtNjRjMC0yNi41LTIxLjUtNDgtNDgtNDhsLTMuMyAwYzUuOS02NyA0OC41LTEyMy40IDEwNy41LTE0OS4xIDguNiAxMi43IDIzLjIgMjEuMSAzOS44IDIxLjFsNjQgMGMxNi42IDAgMzEuMS04LjQgMzkuOC0yMS4xIDU5IDI1LjcgMTAxLjYgODIuMSAxMDcuNSAxNDkuMWwtMy4zIDBjLTI2LjUgMC00OCAyMS41LTQ4IDQ4bDAgNjRjMCAyNi41IDIxLjUgNDggNDggNDhsNjQgMGMyNi41IDAgNDgtMjEuNSA0OC00OGwwLTY0YzAtMjYuNS0yMS41LTQ4LTQ4LTQ4bC00LjUgMGMtNS03NS00NS4xLTE0MC40LTEwNC0xODBsNjYuOSAwYzEwLjQgMjEuMyAzMi4zIDM2IDU3LjYgMzYgMzUuMyAwIDY0LTI4LjcgNjQtNjRzLTI4LjctNjQtNjQtNjRjLTI1LjMgMC00Ny4yIDE0LjctNTcuNiAzNmwtMTE4LjQgMCAwLTRjMC0yNi41LTIxLjUtNDgtNDgtNDhsLTY0IDB6TTg4IDM3Nmw0OCAwIDAgNDgtNDggMCAwLTQ4em00MTYgNDhsMC00OCA0OCAwIDAgNDgtNDggMHoiXX0scWRyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBlcnNvbi1oYWxmLWRyZXNzIixpY29uOlszODQsNTEyLFtdLCJlNTQ4IiwiTTE0My40LTMuOWM5LjctMTYuOCAyNy44LTI4LjEgNDguNi0yOC4xIDMwLjkgMCA1NiAyNS4xIDU2IDU2IDAgMjUuNC0xNi45IDQ2LjgtNDAgNTMuN2wwIDBjLTUuMSAxLjUtMTAuNCAyLjMtMTYgMi4zLTMwLjkgMC01Ni0yNS4xLTU2LTU2bDAgMGMwLTEwLjEgMi43LTE5LjcgNy40LTI3Ljl6TTMxOC4zIDI5OS4xTDI3MiAyMzYuNyAyNzIgNTEyYzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMTYwIDAtLjQgMC0yMzguNmMzNi4yIDQuNCA2OS4yIDIzLjQgOTEuMiA1M2w3MC41IDk1YzEwLjUgMTQuMiA3LjYgMzQuMi02LjYgNDQuOHMtMzQuMiA3LjYtNDQuOC02LjZ6TTE3NiAxMTNsMCAzOTljMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC0xMjgtMjUuOCAwYy0xMC45IDAtMTguNi0xMC43LTE1LjItMjEuMWw0My0xMjktNDguMyA2NS4xYy0xMC41IDE0LjItMzAuNiAxNy4yLTQ0LjggNi42cy0xNy4yLTMwLjYtNi42LTQ0LjhsNzAuNS05NWMyMi0yOS42IDU1LjEtNDguNiA5MS4yLTUzeiJdfSxvQ2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic3F1YXJlLXBvbGwtaG9yaXpvbnRhbCIsaWNvbjpbNDQ4LDUxMixbInBvbGwtaCJdLCJmNjgyIiwiTTQ0OCA5NmMwLTM1LjMtMjguNy02NC02NC02NEw2NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgNDE2YzAgMzUuMyAyOC43IDY0IDY0IDY0bDMyMCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMzIwek0yNTYgMTUyYzAgMTMuMy0xMC43IDI0LTI0IDI0bC0xMTIgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNGwxMTIgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHptNzIgODBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTIwOCAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0bDIwOCAwek0xOTIgMzYwYzAgMTMuMy0xMC43IDI0LTI0IDI0bC00OCAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0bDQ4IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjR6Il19LGpkcj1vQ2UsVmRyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNjaG9vbC1jaXJjbGUteG1hcmsiLGljb246WzY0MCw1MTIsW10sImU1NmQiLCJNNjQgMTI4Yy0zNS4zIDAtNjQgMjguNy02NCA2NEwwIDQ0OGMwIDM1LjMgMjguNyA2NCA2NCA2NGwyNzYgMGMtMTAuNS0xNC42LTE5LTMwLjctMjUuMS00OGwtOTAuOSAwIDAtODhjMC0yMi4xIDE3LjktNDAgNDAtNDBsNDggMGMxIDAgMS45IDAgMi45IC4xIDI2LjMtNzQuNiA5Ny41LTEyOC4xIDE4MS4xLTEyOC4xIDI4LjYgMCA1NS42IDYuMiA4MCAxNy40bDAtMzMuNGMwLTM1LjMtMjguNy02NC02NC02NGwtNjQgMC0xMjcuOS0xMTUuMWMtMTguMy0xNi40LTQ2LTE2LjQtNjQuMiAwTDEyOCAxMjggNjQgMTI4em02NCAyNDBjMCA4LjgtNy4yIDE2LTE2IDE2bC0zMiAwYy04LjggMC0xNi03LjItMTYtMTZsMC0zMmMwLTguOCA3LjItMTYgMTYtMTZsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMnpNMTEyIDI1NmwtMzIgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMzJjMC04LjggNy4yLTE2IDE2LTE2bDMyIDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMzJjMCA4LjgtNy4yIDE2LTE2IDE2ek0yODggMTI4YTY0IDY0IDAgMSAxIDAgMTI4IDY0IDY0IDAgMSAxIDAtMTI4ek00OTYgNTQ0YTE0NCAxNDQgMCAxIDAgMC0yODggMTQ0IDE0NCAwIDEgMCAwIDI4OHptNTkuMy0xODAuN2wtMzYuNyAzNi43IDM2LjcgMzYuN2M2LjIgNi4yIDYuMiAxNi40IDAgMjIuNnMtMTYuNCA2LjItMjIuNiAwbC0zNi43LTM2LjctMzYuNyAzNi43Yy02LjIgNi4yLTE2LjQgNi4yLTIyLjYgMHMtNi4yLTE2LjQgMC0yMi42bDM2LjctMzYuNy0zNi43LTM2LjdjLTYuMi02LjItNi4yLTE2LjQgMC0yMi42czE2LjQtNi4yIDIyLjYgMGwzNi43IDM2LjcgMzYuNy0zNi43YzYuMi02LjIgMTYuNC02LjIgMjIuNiAwczYuMiAxNi40IDAgMjIuNnoiXX0sVWRyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhhbmQtbGl6YXJkIixpY29uOls1MTIsNTEyLFtdLCJmMjU4IiwiTTAgMTEyQzAgODUuNSAyMS41IDY0IDQ4IDY0bDIzOC41IDBjMzYuOCAwIDcxLjIgMTggOTIuMSA0OC4ybDExMy41IDE2NGMxMyAxOC43IDE5LjkgNDEgMTkuOSA2My44bDAgNzZjMCAxNy43LTE0LjMgMzItMzIgMzJsLTk2IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtMTMuOC03OC4xLTUwLjItMTYxLjkgMGMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhzMjEuNS00OCA0OC00OGwxMjggMGMyNi41IDAgNDgtMjEuNSA0OC00OHMtMjEuNS00OC00OC00OEw0OCAxNjBjLTI2LjUgMC00OC0yMS41LTQ4LTQ4eiJdfSxuQ2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2hhbGtib2FyZCIsaWNvbjpbNTc2LDUxMixbImJsYWNrYm9hcmQiXSwiZjUxYiIsIk05NiA2NGMtMzUuMyAwLTY0IDI4LjctNjQgNjRsMCAyNTZjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsNTEyIDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsMC0yNTZjMC0zNS4zLTI4LjctNjQtNjQtNjRMOTYgNjR6TTQ4MCAzODRsLTY0IDAgMC0zMmMwLTE3LjctMTQuMy0zMi0zMi0zMmwtOTYgMGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJsMCAzMi0xNjAgMCAwLTI1NiAzODQgMCAwIDI1NnoiXX0sV2RyPW5DZSxzQ2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidXAtcmlnaHQtZnJvbS1zcXVhcmUiLGljb246WzUxMiw1MTIsWyJleHRlcm5hbC1saW5rLWFsdCJdLCJmMzVkIiwiTTI5MC40IDE5LjhDMjk1LjQgNy44IDMwNy4xIDAgMzIwIDBMNDgwIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCAxNjBjMCAxMi45LTcuOCAyNC42LTE5LjggMjkuNnMtMjUuNyAyLjItMzQuOS02LjlMNDAwIDE1Ny4zIDI0Ni42IDMxMC42Yy0xMi41IDEyLjUtMzIuOCAxMi41LTQ1LjMgMHMtMTIuNS0zMi44IDAtNDUuM0wzNTQuNyAxMTIgMjk3LjQgNTQuNmMtOS4yLTkuMi0xMS45LTIyLjktNi45LTM0Ljl6TTAgMTc2YzAtNDQuMiAzNS44LTgwIDgwLTgwbDgwIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTgwIDBjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDI1NmMwIDguOCA3LjIgMTYgMTYgMTZsMjU2IDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtODBjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDgwYzAgNDQuMi0zNS44IDgwLTgwIDgwTDgwIDUxMmMtNDQuMiAwLTgwLTM1LjgtODAtODBMMCAxNzZ6Il19LEdkcj1zQ2UsWWRyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNxdWFyZS1mdWxsIixpY29uOls1MTIsNTEyLFsxMjg5OTcsMTI4OTk4LDEyODk5OSwxMjllMywxMjkwMDEsMTI5MDAyLDEyOTAwMywxMTAzNSwxMTAzNl0sImY0NWMiLCJNMCA2NEMwIDI4LjcgMjguNyAwIDY0IDBMNDQ4IDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAzODRjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNTEyYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDY0eiJdfSxaZHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2xvdmVyIixpY29uOls1MTIsNTEyLFtdLCJlMTM5IiwiTTMxMC40IDE2QzM0Ni42IDE2IDM3NiA0NS40IDM3NiA4MS43bDAgNS4yYzAgMTEuMi0yLjcgMjIuMy03LjggMzIuMmwtMi4zIDQuMi0yMC4xIDMzLjVjLTEuMSAxLjktMS4yIDMuNC0xLjEgNC41IC4yIDEuMyAuOSAyLjcgMi4xIDMuOXMyLjYgMS45IDMuOSAyLjFjMS4xIC4yIDIuNiAuMSA0LjUtMS4xbDMzLjUtMjAuMSA0LjItMi4zYzEwLTUuMSAyMS03LjggMzIuMi03LjhsNS4yIDBjMzYuMiAwIDY1LjYgMjkuNCA2NS42IDY1LjcgMCAxNy40LTYuOSAzNC4xLTE5LjIgNDYuNGwtMS4zIDEuM2MtMy43IDMuNy0zLjcgOS42IDAgMTMuM2wxLjMgMS4zYzEyLjMgMTIuMyAxOS4yIDI5IDE5LjIgNDYuNCAwIDM2LjItMjkuNCA2NS42LTY1LjYgNjUuNmwtNS4yIDBjLTEyLjggMC0yNS41LTMuNS0zNi41LTEwLjFsLTMzLjUtMjAuMWMtMS45LTEuMS0zLjQtMS4yLTQuNS0xLjEtMS4zIC4yLTIuNyAuOS0zLjkgMi4xcy0xLjkgMi42LTIuMSAzLjljLS4yIDEuMS0uMSAyLjYgMS4xIDQuNWwyMC4xIDMzLjVjNi42IDExIDEwLjEgMjMuNiAxMC4xIDM2LjVsMCA1LjJjMCAzNi4yLTI5LjQgNjUuNi02NS42IDY1LjYtMTcuNCAwLTM0LjEtNi45LTQ2LjQtMTkuMmwtMS4zLTEuM2MtMy43LTMuNy05LjYtMy43LTEzLjMgMGwtMS4zIDEuM2MtMTIuMyAxMi4zLTI5IDE5LjItNDYuNCAxOS4yLTM2LjIgMC02NS42LTI5LjQtNjUuNy02NS42bDAtNS4yYzAtMTIuOCAzLjUtMjUuNSAxMC4xLTM2LjVsMjAuMS0zMy41YzEuMS0xLjkgMS4yLTMuNCAxLjEtNC41LS4yLTEuMy0uOS0yLjctMi4xLTMuOXMtMi42LTEuOS0zLjktMi4xYy0uNS0uMS0xLjItLjEtMS45IDBsLTIuNSAxLTMzLjUgMjAuMWMtMTEgNi42LTIzLjYgMTAuMS0zNi41IDEwLjFsLTUuMiAwQzQ1LjQgMzc2IDE2IDM0Ni42IDE2IDMxMC40IDE2IDI5MyAyMi45IDI3Ni4zIDM1LjIgMjY0bDEuMy0xLjMgMS4yLTEuNWMyLjEtMy4xIDIuMS03LjIgMC0xMC4zbC0xLjItMS41LTEuMy0xLjNDMjIuOSAyMzUuOCAxNiAyMTkuMSAxNiAyMDEuNyAxNiAxNjUuNCA0NS40IDEzNiA4MS43IDEzNmw1LjIgMGMxMi44IDAgMjUuNSAzLjUgMzYuNSAxMC4xbDMzLjUgMjAuMSAyLjUgMWMuNyAuMSAxLjQgLjEgMS45IC4xIDEuMy0uMiAyLjctLjkgMy45LTIuMXMxLjktMi42IDIuMS0zLjljLjEtLjUgLjEtMS4yLS4xLTEuOWwtMS0yLjUtMjAuMS0zMy41Yy02LjYtMTEtMTAuMS0yMy42LTEwLjEtMzYuNWwwLTUuMmMwLTM2LjIgMjkuNC02NS43IDY1LjctNjUuNyAxNy40IDAgMzQuMSA2LjkgNDYuNCAxOS4ybDEuMyAxLjNjMy43IDMuNiA5LjYgMy43IDEzLjMgMGwxLjMtMS4zIDQuOC00LjRDMjgwLjUgMjEuMyAyOTUuMSAxNiAzMTAuNCAxNnoiXX0sWGRyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRlZXRoLW9wZW4iLGljb246WzUxMiw1MTIsW10sImY2MmYiLCJNNjQgMzJDMjguNyAzMiAwIDYwLjcgMCA5NmwwIDgwYzAgMzUuMyAyOC43IDY0IDY0IDY0bDM4NCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtODBjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzJ6bTAgMjcyYy0zNS4zIDAtNjQgMjguNy02NCA2NGwwIDQ4YzAgMzUuMyAyOC43IDY0IDY0IDY0bDM4NCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtNDhjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzA0em04MC0xNjBjMC0yNi41IDIxLjUtNDggNDgtNDhzNDggMjEuNSA0OCA0OGwwIDI0YzAgMTMuMy0xMC43IDI0LTI0IDI0bC00OCAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNGwwLTI0em0xMjggMGMwLTI2LjUgMjEuNS00OCA0OC00OHM0OCAyMS41IDQ4IDQ4bDAgMjRjMCAxMy4zLTEwLjcgMjQtMjQgMjRsLTQ4IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0bDAtMjR6TTgwIDExMmMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDI0YzAgMTMuMy0xMC43IDI0LTI0IDI0bC0xNiAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNGwwLTI0YzAtMTcuNyAxNC4zLTMyIDMyLTMyem0zMjAgMzJjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDI0YzAgMTMuMy0xMC43IDI0LTI0IDI0bC0xNiAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNGwwLTI0ek00OCAzODRsMC0xNmMwLTguOCA3LjItMTYgMTYtMTZsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAxNmMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMnptMTQ0IDQ4Yy0yNi41IDAtNDgtMjEuNS00OC00OGwwLTE2YzAtOC44IDcuMi0xNiAxNi0xNmw2NCAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDE2YzAgMjYuNS0yMS41IDQ4LTQ4IDQ4em0xMjggMGMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhsMC0xNmMwLTguOCA3LjItMTYgMTYtMTZsNjQgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAxNmMwIDI2LjUtMjEuNSA0OC00OCA0OHptMTEyLTE2Yy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTE2YzAtOC44IDcuMi0xNiAxNi0xNmwzMiAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDE2YzAgMTcuNy0xNC4zIDMyLTMyIDMyeiJdfSxuMmU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYmFycy1zdGFnZ2VyZWQiLGljb246WzUxMiw1MTIsWyJyZW9yZGVyIiwic3RyZWFtIl0sImY1NTAiLCJNMCA5NkMwIDc4LjMgMTQuMyA2NCAzMiA2NGwzODQgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMkwzMiAxMjhDMTQuMyAxMjggMCAxMTMuNyAwIDk2ek02NCAyNTZjMC0xNy43IDE0LjMtMzIgMzItMzJsMzg0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJMOTYgMjg4Yy0xNy43IDAtMzItMTQuMy0zMi0zMnpNNDQ4IDQxNmMwIDE3LjctMTQuMyAzMi0zMiAzMkwzMiA0NDhjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsMzg0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJ6Il19LFFkcj1uMmUsS2RyPW4yZSxKZHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToid2FyZWhvdXNlIixpY29uOls1NzYsNTEyLFtdLCJmNDk0IiwiTTAgMTQyLjFMMCA0ODBjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTI0MGMwLTE3LjcgMTQuMy0zMiAzMi0zMmwzODQgMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDI0MGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMzM3LjljMC0yNy41LTE3LjYtNTItNDMuOC02MC43TDMwMy4yIDUuMWMtOS45LTMuMy0yMC41LTMuMy0zMC40IDBMNDMuOCA4MS40QzE3LjYgOTAuMSAwIDExNC42IDAgMTQyLjF6TTQ2NCAyNTZsLTM1MiAwIDAgNjQgMzUyIDAgMC02NHpNMTEyIDQxNmwzNTIgMCAwLTY0LTM1MiAwIDAgNjR6bTM1MiAzMmwtMzUyIDAgMCA2NCAzNTIgMCAwLTY0eiJdfSxlNnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic3dhdGNoYm9vayIsaWNvbjpbNTEyLDUxMixbXSwiZjVjMyIsIk0wIDQ4QzAgMjEuNSAyMS41IDAgNDggMGw5NiAwYzI2LjUgMCA0OCAyMS41IDQ4IDQ4bDAgMzY4YzAgNTMtNDMgOTYtOTYgOTZTMCA0NjkgMCA0MTZMMCA0OHpNMjQwIDQwOS42bDAtMjcxLjUgNDguMS00OC4xYzE4LjctMTguNyA0OS4xLTE4LjcgNjcuOSAwbDY3LjkgNjcuOWMxOC43IDE4LjcgMTguNyA0OS4xIDAgNjcuOUwyNDAgNDA5LjZ6TTIwNS41IDUxMmwxOTItMTkyIDY2LjYgMGMyNi41IDAgNDggMjEuNSA0OCA0OGwwIDk2YzAgMjYuNS0yMS41IDQ4LTQ4IDQ4bC0yNTguNSAwek04MCA2NGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMzJjMC04LjgtNy4yLTE2LTE2LTE2TDgwIDY0ek02NCAyMDhsMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZsMzIgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0zMmMwLTguOC03LjItMTYtMTYtMTZsLTMyIDBjLTguOCAwLTE2IDcuMi0xNiAxNnpNOTYgNDQwYTI0IDI0IDAgMSAwIDAtNDggMjQgMjQgMCAxIDAgMCA0OHoiXX0sdDZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNhbXBncm91bmQiLGljb246WzUxMiw1MTIsWzk5NzhdLCJmNmJiIiwiTTM0NC44IDUyLjNjMTEuMi0xMy43IDkuMi0zMy44LTQuNS00NXMtMzMuOC05LjItNDUgNC41bC0zOS4yIDQ4LTM5LjItNDhDMjA1LjYtMS45IDE4NS40LTQgMTcxLjcgNy4ycy0xNS43IDMxLjQtNC41IDQ1bDQ3LjQgNTgtMjAyIDI0Ni45QzQuNSAzNjcuMSAwIDM3OS42IDAgMzkyLjZMMCA0MzJjMCAyNi41IDIxLjUgNDggNDggNDhsNDE2IDBjMjYuNSAwIDQ4LTIxLjUgNDgtNDhsMC0zOS40YzAtMTIuOS00LjUtMjUuNS0xMi43LTM1LjVsLTIwMi0yNDYuOSA0Ny40LTU4ek0yNTYgMjg4bDExMiAxMjgtMjI0IDAgMTEyLTEyOHoiXX0scjZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBlcnNvbi13YWxraW5nLWFycm93LXJpZ2h0IixpY29uOls1NzYsNTEyLFtdLCJlNTUyIiwiTTEwNC41IDI0YTU2IDU2IDAgMSAxIDExMiAwIDU2IDU2IDAgMSAxIC0xMTIgMHptLTggMTgxLjNMNzMuOSAyMjcuOWMtNiA2LTkuNCAxNC4xLTkuNCAyMi42bDAgMzcuNWMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTM3LjVjMC0yNS41IDEwLjEtNDkuOSAyOC4xLTY3LjlsMzUuMS0zNS4xYzIyLjgtMjIuOCA1My42LTM1LjYgODUuOC0zNS42IDM2LjkgMCA3MS44IDE2LjggOTQuOCA0NS42TDI2Mi4zIDE4MGM2LjEgNy42IDE1LjMgMTIgMjUgMTJsMzMuMiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC0zMy4yIDBjLTI5LjIgMC01Ni43LTEzLjMtNzUtMzZsLTMuOC00LjcgMCAxMTUuMiAzNC41IDI5LjZjMTcuNyAxNS4yIDI5LjMgMzYuMiAzMi42IDU5LjNsMTIuNiA4OC4xYzIuNSAxNy41LTkuNyAzMy43LTI3LjIgMzYuMnMtMzMuNy05LjctMzYuMi0yNy4ybC0xMi42LTg4LjFjLTEuMS03LjctNS0xNC43LTEwLjktMTkuOEwxMzAgMzQ3LjVjLTIxLjMtMTguMi0zMy41LTQ0LjktMzMuNS03Mi45bDAtNjkuM3pNOTYuNiAzNzFjMi40IDIuMyA0LjggNC42IDcuNCA2LjhsNDYgMzkuNC0yLjIgNy42Yy00LjUgMTUuNy0xMi45IDMwLTI0LjQgNDEuNUw1NS4xIDUzNC42Yy0xMi41IDEyLjUtMzIuOCAxMi41LTQ1LjMgMHMtMTIuNS0zMi44IDAtNDUuM2w2OC4zLTY4LjNjMy44LTMuOCA2LjYtOC42IDguMS0xMy44TDk2LjYgMzcxek01MDUuNSAzNDVjLTkuNCA5LjQtMjQuNiA5LjQtMzMuOSAwcy05LjQtMjQuNiAwLTMzLjlsMzEtMzEtMTAyLjEgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNGwxMDIuMSAwLTMxLTMxYy05LjQtOS40LTkuNC0yNC42IDAtMzMuOXMyNC42LTkuNCAzMy45IDBsNzIgNzJjOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlsLTcyIDcyeiJdfSxhNnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZ2xhc3NlcyIsaWNvbjpbNTc2LDUxMixbXSwiZjUzMCIsIk0xNDMuMyA5NmMtMTQgMC0yNi41IDkuMi0zMC42IDIyLjZMNzAuNCAyNTYgMjI0IDI1NmMxNy43IDAgMzIgMTQuMyAzMiAzMmw2NCAwYzAtMTcuNyAxNC4zLTMyIDMyLTMybDE1My42IDAtNDIuMy0xMzcuNEM0NTkuMiAxMDUuMiA0NDYuOCA5NiA0MzIuNyA5Nkw0MDAgOTZjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsMzIuNyAwYzQyLjEgMCA3OS40IDI3LjUgOTEuOCA2Ny44bDQ1LjQgMTQ3LjVjNC4xIDEzLjIgNi4xIDI2LjkgNi4xIDQwLjdsMCA5NmMwIDUzLTQzIDk2LTk2IDk2bC02NCAwYy01MyAwLTk2LTQzLTk2LTk2bDAtMzItNjQgMCAwIDMyYzAgNTMtNDMgOTYtOTYgOTZsLTY0IDBjLTUzIDAtOTYtNDMtOTYtOTZsMC05NmMwLTEzLjggMi4xLTI3LjUgNi4xLTQwLjdMNTEuNSA5OS44QzYzLjkgNTkuNSAxMDEuMSAzMiAxNDMuMyAzMkwxNzYgMzJjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTMyLjcgMHpNNjQgMzIwbDAgNjRjMCAxNy43IDE0LjMgMzIgMzIgMzJsNjQgMGMxNy43IDAgMzItMTQuMyAzMi0zMmwwLTY0LTEyOCAwem00MTYgOTZjMTcuNyAwIDMyLTE0LjMgMzItMzJsMC02NC0xMjggMCAwIDY0YzAgMTcuNyAxNC4zIDMyIDMyIDMybDY0IDB6Il19LGxDZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjaXJjbGUtcGF1c2UiLGljb246WzUxMiw1MTIsWzYyMDkyLCJwYXVzZS1jaXJjbGUiXSwiZjI4YiIsIk0yNTYgNTEyYTI1NiAyNTYgMCAxIDAgMC01MTIgMjU2IDI1NiAwIDEgMCAwIDUxMnpNMjI0IDE5MmwwIDEyOGMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTEyOGMwLTE3LjcgMTQuMy0zMiAzMi0zMnMzMiAxNC4zIDMyIDMyem0xMjggMGwwIDEyOGMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTEyOGMwLTE3LjcgMTQuMy0zMiAzMi0zMnMzMiAxNC4zIDMyIDMyeiJdfSxpNnI9bENlLG82cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtZW1vcnkiLGljb246WzUxMiw1MTIsW10sImY1MzgiLCJNNjQgNjRDMjguNyA2NCAwIDkyLjcgMCAxMjhsMCA3LjRDMCAxNDIuMiA0LjQgMTQ4IDEwLjEgMTUxLjcgMjMuMyAxNjAuMyAzMiAxNzUuMSAzMiAxOTJzLTguNyAzMS43LTIxLjkgNDAuM0M0LjQgMjM2IDAgMjQxLjggMCAyNDguNmwwIDU1LjQgNTEyIDAgMC01NS40YzAtNi44LTQuNC0xMi42LTEwLjEtMTYuMy0xMy4yLTguNi0yMS45LTIzLjQtMjEuOS00MC4zczguNy0zMS43IDIxLjktNDAuM2M1LjctMy43IDEwLjEtOS41IDEwLjEtMTYuM2wwLTcuNGMwLTM1LjMtMjguNy02NC02NC02NEw2NCA2NHpNNTEyIDQxNmwwLTY0LTUxMiAwIDAgNjRjMCAxNy43IDE0LjMgMzIgMzIgMzJsNjQgMCAwLTI0YzAtMTMuMyAxMC43LTI0IDI0LTI0czI0IDEwLjcgMjQgMjRsMCAyNCA4OCAwIDAtMjRjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNGwwIDI0IDg4IDAgMC0yNGMwLTEzLjMgMTAuNy0yNCAyNC0yNHMyNCAxMC43IDI0IDI0bDAgMjQgNjQgMGMxNy43IDAgMzItMTQuMyAzMi0zMnpNMTYwIDE2MGwwIDY0YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtNjRjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMnptMTI4IDBsMCA2NGMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTY0YzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJ6bTEyOCAwbDAgNjRjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC02NGMwLTE3LjcgMTQuMy0zMiAzMi0zMnMzMiAxNC4zIDMyIDMyeiJdfSxuNnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZ2lmdCIsaWNvbjpbNTEyLDUxMixbMTI3ODczXSwiZjA2YiIsIk0zMjEuNSA2OC44QzMyOS4xIDU1LjkgMzQyLjkgNDggMzU3LjggNDhsMi4yIDBjMjIuMSAwIDQwIDE3LjkgNDAgNDBzLTE3LjkgNDAtNDAgNDBsLTczLjMgMCAzNC44LTU5LjJ6bS0xMzEgMGwzNC44IDU5LjItNzMuMyAwYy0yMi4xIDAtNDAtMTcuOS00MC00MHMxNy45LTQwIDQwLTQwbDIuMiAwYzE0LjkgMCAyOC44IDcuOSAzNi4zIDIwLjh6bTg5LjYtMjQuM2wtMjQuMSA0MS0yNC4xLTQxQzIxNS43IDE2LjkgMTg2LjEgMCAxNTQuMiAwTDE1MiAwYy00OC42IDAtODggMzkuNC04OCA4OCAwIDE0LjQgMy41IDI4IDkuNiA0MEwzMiAxMjhjLTE3LjcgMC0zMiAxNC4zLTMyIDMybDAgMzJjMCAxNy43IDE0LjMgMzIgMzIgMzJsNDQ4IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJsMC0zMmMwLTE3LjctMTQuMy0zMi0zMi0zMmwtNDEuNiAwYzYuMS0xMiA5LjYtMjUuNiA5LjYtNDAgMC00OC42LTM5LjQtODgtODgtODhsLTIuMiAwYy0zMS45IDAtNjEuNSAxNi45LTc3LjcgNDQuNHpNNDgwIDI3MmwtMjAwIDAgMCAyMDggMTM2IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0xNDR6bS0yNDggMGwtMjAwIDAgMCAxNDRjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMTM2IDAgMC0yMDh6Il19LHM2cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtb25leS1iaWxsLXdoZWF0IixpY29uOls1MTIsNTEyLFtdLCJlNTJhIiwiTTE3Ni0xNmM0NC4yIDAgODAgMzUuOCA4MCA4MCAwIDguOC03LjIgMTYtMTYgMTYtNDQuMiAwLTgwLTM1LjgtODAtODAgMC04LjggNy4yLTE2IDE2LTE2ek01NiAwbDQ4IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRMNTYgNDhDNDIuNyA0OCAzMiAzNy4zIDMyIDI0UzQyLjcgMCA1NiAwek0yNCA3MmwxMTIgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNEwyNCAxMjBDMTAuNyAxMjAgMCAxMDkuMyAwIDk2UzEwLjcgNzIgMjQgNzJ6bTggOTZjMC0xMy4zIDEwLjctMjQgMjQtMjRsNDggMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtNDggMGMtMTMuMyAwLTI0LTEwLjctMjQtMjR6TTI3MiAwYzAtOC44IDcuMi0xNiAxNi0xNiA0NC4yIDAgODAgMzUuOCA4MCA4MCAwIDguOC03LjIgMTYtMTYgMTYtNDQuMiAwLTgwLTM1LjgtODAtODB6TTQwMC0xNmM0NC4yIDAgODAgMzUuOCA4MCA4MCAwIDguOC03LjIgMTYtMTYgMTYtNDQuMiAwLTgwLTM1LjgtODAtODAgMC04LjggNy4yLTE2IDE2LTE2em04MCAxNDRjMCA0NC4yLTM1LjggODAtODAgODAtOC44IDAtMTYtNy4yLTE2LTE2IDAtNDQuMiAzNS44LTgwIDgwLTgwIDguOCAwIDE2IDcuMiAxNiAxNnpNMzUyIDExMmM4LjggMCAxNiA3LjIgMTYgMTYgMCA0NC4yLTM1LjggODAtODAgODAtOC44IDAtMTYtNy4yLTE2LTE2IDAtNDQuMiAzNS44LTgwIDgwLTgwem0tOTYgMTZjMCA0NC4yLTM1LjggODAtODAgODAtOC44IDAtMTYtNy4yLTE2LTE2IDAtNDQuMiAzNS44LTgwIDgwLTgwIDguOCAwIDE2IDcuMiAxNiAxNnpNMCAzMDRjMC0yNi41IDIxLjUtNDggNDgtNDhsNDE2IDBjMjYuNSAwIDQ4IDIxLjUgNDggNDhsMCAxNjBjMCAyNi41LTIxLjUgNDgtNDggNDhMNDggNTEyYy0yNi41IDAtNDgtMjEuNS00OC00OEwwIDMwNHpNNDggNDE2bDAgNDggNDggMGMwLTI2LjUtMjEuNS00OC00OC00OHpNOTYgMzA0bC00OCAwIDAgNDhjMjYuNSAwIDQ4LTIxLjUgNDgtNDh6TTQ2NCA0MTZjLTI2LjUgMC00OCAyMS41LTQ4IDQ4bDQ4IDAgMC00OHpNNDE2IDMwNGMwIDI2LjUgMjEuNSA0OCA0OCA0OGwwLTQ4LTQ4IDB6bS05NiA4MGE2NCA2NCAwIDEgMCAtMTI4IDAgNjQgNjQgMCAxIDAgMTI4IDB6Il19LGw2cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJkdW5nZW9uIixpY29uOls1MTIsNTEyLFtdLCJmNmQ5IiwiTTM0Ny41IDE0NC44YzYuNSA1LjQgMTIuNSAxMS4zIDE4IDE3LjcgOC43IDEwLjIgMjMuNyAxNCAzNS4xIDYuOWw1NC4xLTMzLjhjMTEuMi03IDE0LjctMjEuNyA2LjktMzIuMi0xNS4zLTIwLjUtMzMuNS0zOC42LTU0LjEtNTMuOC0xMC40LTcuNi0yNC43LTQuMy0zMS44IDYuNGwtMzUuMSA1Mi42Yy03LjggMTEuNi0zLjggMjcuMyA3IDM2LjJ6TTMyNy44IDQxLjFjOC42LTEyLjkgMi45LTMwLjUtMTIuMi0zNC4xLTE5LjEtNC42LTM5LjEtNy01OS42LTdzLTQwLjQgMi40LTU5LjYgN2MtMTUuMSAzLjYtMjAuOCAyMS4yLTEyLjIgMzQuMWw0MCA2MGM1LjIgNy44IDE0LjUgMTEuNyAyMy45IDExLjIgNS4yLS4zIDEwLjYtLjMgMTUuOCAwIDkuNCAuNSAxOC43LTMuNCAyMy45LTExLjJsNDAtNjB6TTUwLjUgMTAzLjNjLTcuOSAxMC41LTQuMyAyNS4zIDYuOSAzMi4ybDU0LjEgMzMuOGMxMS40IDcuMSAyNi4zIDMuMyAzNS4xLTYuOSA1LjUtNi40IDExLjUtMTIuMyAxOC0xNy43IDEwLjgtOC45IDE0LjgtMjQuNiA3LTM2LjJMMTM2LjQgNTUuOWMtNy4xLTEwLjctMjEuNS0xNC0zMS44LTYuNC0yMC42IDE1LjEtMzguOCAzMy4zLTU0LjEgNTMuOHptNjIgMTQxLjFjLjgtOS45LTMuMy0xOS45LTExLjgtMjUuMUw0MSAxODJjLTEyLjktOC0yOS45LTIuMy0zMy42IDEyLjUtNC45IDE5LjctNy41IDQwLjMtNy41IDYxLjZsMCAyNGMwIDEzLjMgMTAuNyAyNCAyNCAyNGw2NCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0bDAtMjRjMC0zLjkgLjItNy44IC41LTExLjZ6bTI4Ny4xIDBjLjMgMy44IC41IDcuNyAuNSAxMS42bDAgMjRjMCAxMy4zIDEwLjcgMjQgMjQgMjRsNjQgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNGwwLTI0YzAtMjEuMi0yLjYtNDEuOC03LjUtNjEuNi0zLjYtMTQuNy0yMC43LTIwLjUtMzMuNi0xMi41bC01OS43IDM3LjNjLTguNCA1LjMtMTIuNiAxNS4yLTExLjggMjUuMXpNODggMzUybC02NCAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNEwwIDQ4OGMwIDEzLjMgMTAuNyAyNCAyNCAyNGw2NCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0bDAtMTEyYzAtMTMuMy0xMC43LTI0LTI0LTI0em00MDAgMGwtNjQgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRsMCAxMTJjMCAxMy4zIDEwLjcgMjQgMjQgMjRsNjQgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNGwwLTExMmMwLTEzLjMtMTAuNy0yNC0yNC0yNHpNMjgwIDE4NGMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGwwIDMwNGMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtMzA0em0tODAgMzJjMC0xMy4zLTEwLjctMjQtMjQtMjRzLTI0IDEwLjctMjQgMjRsMCAyNzJjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTI3MnptMTYwIDBjMC0xMy4zLTEwLjctMjQtMjQtMjRzLTI0IDEwLjctMjQgMjRsMCAyNzJjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTI3MnoiXX0sY0NlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InN1aXRjYXNlLW1lZGljYWwiLGljb246WzUxMiw1MTIsWyJtZWRraXQiXSwiZjBmYSIsIk0xOTIgNTZsMCA0MCAxMjggMCAwLTQwYzAtNC40LTMuNi04LTgtOEwyMDAgNDhjLTQuNCAwLTggMy42LTggOHptLTQ4IDhsMC04YzAtMzAuOSAyNS4xLTU2IDU2LTU2TDMxMiAwYzMwLjkgMCA1NiAyNS4xIDU2IDU2bDAgNDI0LTIyNCAwIDAtNDE2ek05NiAxNzZsMCAzMDQtMzIgMGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCAxNjBjMC0zNS4zIDI4LjctNjQgNjQtNjRsMzIgMCAwIDgwek00MTYgNDgwbDAtMzg0IDMyIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAyNTZjMCAzNS4zLTI4LjcgNjQtNjQgNjRsLTMyIDB6TTI0NCAyMDhjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDM2LTM2IDBjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDI0YzAgOC44IDcuMiAxNiAxNiAxNmwzNiAwIDAgMzZjMCA4LjggNy4yIDE2IDE2IDE2bDI0IDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMzYgMzYgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0yNGMwLTguOC03LjItMTYtMTYtMTZsLTM2IDAgMC0zNmMwLTguOC03LjItMTYtMTYtMTZsLTI0IDB6Il19LGM2cj1jQ2UsZDZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBlcnNvbi1jYW5lIixpY29uOls0NDgsNTEyLFtdLCJlNTNjIiwiTTIzMi0zMmE1NiA1NiAwIDEgMSAwIDExMiA1NiA1NiAwIDEgMSAwLTExMnpNMTQ0IDIzNi43TDk3LjcgMjk5LjFjLTEwLjUgMTQuMi0zMC42IDE3LjItNDQuOCA2LjZzLTE3LjItMzAuNi02LjYtNDQuOGw3MC41LTk1QzE0MiAxMzIgMTgxLjcgMTEyIDIyNCAxMTJzODIgMjAgMTA3LjIgNTMuOWw3MC41IDk1YzEwLjUgMTQuMiA3LjYgMzQuMi02LjYgNDQuOHMtMzQuMiA3LjYtNDQuOC02LjZMMzA0IDIzNi43IDMwNCA1MTJjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC0xNjBjMC04LjgtNy4yLTE2LTE2LTE2cy0xNiA3LjItMTYgMTZsMCAxNjBjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC0yNzUuM3pNMzkyIDM4NGMtNC40IDAtOCAzLjYtOCA4IDAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0YzAtMzAuOSAyNS4xLTU2IDU2LTU2czU2IDI1LjEgNTYgNTZsMCAxMjhjMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjRsMC0xMjhjMC00LjQtMy42LTgtOC04eiJdfSx4dz17cHJlZml4OiJmYXMiLGljb25OYW1lOiJnYXVnZSIsaWNvbjpbNTEyLDUxMixbImRhc2hib2FyZCIsImdhdWdlLW1lZCIsInRhY2hvbWV0ZXItYWx0LWF2ZXJhZ2UiXSwiZjYyNCIsIk0wIDI1NmEyNTYgMjU2IDAgMSAxIDUxMiAwIDI1NiAyNTYgMCAxIDEgLTUxMiAwem0zMjAgOTZjMC0yNi45LTE2LjUtNDkuOS00MC01OS4zTDI4MCAxMjBjMC0xMy4zLTEwLjctMjQtMjQtMjRzLTI0IDEwLjctMjQgMjRsMCAxNzIuN2MtMjMuNSA5LjUtNDAgMzIuNS00MCA1OS4zIDAgMzUuMyAyOC43IDY0IDY0IDY0czY0LTI4LjcgNjQtNjR6TTE0NCAxNzZhMzIgMzIgMCAxIDAgMC02NCAzMiAzMiAwIDEgMCAwIDY0em0tMTYgODBhMzIgMzIgMCAxIDAgLTY0IDAgMzIgMzIgMCAxIDAgNjQgMHptMjg4IDMyYTMyIDMyIDAgMSAwIDAtNjQgMzIgMzIgMCAxIDAgMCA2NHpNNDAwIDE0NGEzMiAzMiAwIDEgMCAtNjQgMCAzMiAzMiAwIDEgMCA2NCAweiJdfSx1NnI9eHcsZjZyPXh3LHA2cj14dyxoNnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZW52ZWxvcGUtb3Blbi10ZXh0IixpY29uOls1NzYsNTEyLFtdLCJmNjU4IiwiTTI4OCAzMy45TDk2LjQgMTc1LjggMjU0LjUgMjkzYzUuMyAzLjkgMTEuMiA2LjkgMTcuNSA4LjdMMjcyIDQ2NGMwIDUuNSAuNSAxMC44IDEuMyAxNkw5NiA0ODBjLTM1LjMgMC02NC0yOC43LTY0LTY0bDAtMjM5LjljMC0yMC4zIDkuNi0zOS40IDI1LjktNTEuNEwyNTQuNS0yMWM5LjctNy4yIDIxLjQtMTEgMzMuNS0xMXMyMy44IDMuOSAzMy41IDExTDUxOC4xIDEyNC43YzcuMiA1LjMgMTMuMSAxMiAxNy40IDE5LjYtMi41LS4yLTUtLjMtNy41LS4zTDQzNi42IDE0NCAyODggMzMuOXpNMzIwIDI0MGMwLTI2LjUgMjEuNS00OCA0OC00OGwxNjAgMGMyNi41IDAgNDggMjEuNSA0OCA0OGwwIDIyNGMwIDI2LjUtMjEuNSA0OC00OCA0OGwtMTYwIDBjLTI2LjUgMC00OC0yMS41LTQ4LTQ4bDAtMjI0em04MCAxNmMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGw5NiAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC05NiAwem0wIDk2Yy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDU2IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTU2IDB6Il19LG02cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0b29sYm94IixpY29uOls1MTIsNTEyLFsxMjk1MjBdLCJmNTUyIiwiTTE3NiA1NmwwIDQwIDE2MCAwIDAtNDBjMC00LjQtMy42LTgtOC04TDE4NCA0OGMtNC40IDAtOCAzLjYtOCA4ek0xMjggOTZsMC00MGMwLTMwLjkgMjUuMS01NiA1Ni01NkwzMjggMGMzMC45IDAgNTYgMjUuMSA1NiA1NmwwIDQwIDI4LjEgMGMxMi43IDAgMjQuOSA1LjEgMzMuOSAxNC4xbDUxLjkgNTEuOWM5IDkgMTQuMSAyMS4yIDE0LjEgMzMuOWwwIDc2LjEtMTM2IDAgMC0xNmMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGwwIDE2LTE0NCAwIDAtMTZjMC0xMy4zLTEwLjctMjQtMjQtMjRzLTI0IDEwLjctMjQgMjRsMCAxNi0xMzYgMCAwLTc2LjFjMC0xMi43IDUuMS0yNC45IDE0LjEtMzMuOWw1MS45LTUxLjljOS05IDIxLjItMTQuMSAzMy45LTE0LjFMMTI4IDk2ek0wIDQxNmwwLTk2IDEzNiAwIDAgMTZjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTE2IDE0NCAwIDAgMTZjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTE2IDEzNiAwIDAgOTZjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NHoiXX0sZzZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBvd2VyLW9mZiIsaWNvbjpbNTEyLDUxMixbOTIxMV0sImYwMTEiLCJNMjg4IDBjMC0xNy43LTE0LjMtMzItMzItMzJTMjI0LTE3LjcgMjI0IDBsMCAyNTZjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMkwyODggMHpNMTQ2LjMgOTguNGMxNC41LTEwLjEgMTgtMzAuMSA3LjktNDQuNnMtMzAuMS0xOC00NC42LTcuOUM0My40IDkyLjEgMCAxNjkgMCAyNTYgMCAzOTcuNCAxMTQuNiA1MTIgMjU2IDUxMlM1MTIgMzk3LjQgNTEyIDI1NmMwLTg3LTQzLjQtMTYzLjktMTA5LjctMjEwLjEtMTQuNS0xMC4xLTM0LjQtNi42LTQ0LjYgNy45cy02LjYgMzQuNCA3LjkgNDQuNmM0OS44IDM0LjggODIuMyA5Mi40IDgyLjMgMTU3LjYgMCAxMDYtODYgMTkyLTE5MiAxOTJTNjQgMzYyIDY0IDI1NmMwLTY1LjIgMzIuNS0xMjIuOSA4Mi4zLTE1Ny42eiJdfSxzMmU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic2lnbmFsIixpY29uOls1MTIsNTEyLFsxMjgyNDYsInNpZ25hbC01Iiwic2lnbmFsLXBlcmZlY3QiXSwiZjAxMiIsIk00ODggNTZjMC0xMy4zLTEwLjctMjQtMjQtMjRzLTI0IDEwLjctMjQgMjRsMCA0MDBjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTQwMHpNMzYwIDEyOGMtMTMuMyAwLTI0IDEwLjctMjQgMjRsMCAzMDRjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTMwNGMwLTEzLjMtMTAuNy0yNC0yNC0yNHpNMjgwIDI0OGMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGwwIDIwOGMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtMjA4ek0xNTIgMzIwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNGwwIDExMmMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtMTEyYzAtMTMuMy0xMC43LTI0LTI0LTI0ek00OCAzODRjLTEzLjMgMC0yNCAxMC43LTI0IDI0bDAgNDhjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTQ4YzAtMTMuMy0xMC43LTI0LTI0LTI0eiJdfSx4NnI9czJlLGI2cj1zMmUsdjZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFycm93cy1zcGluIixpY29uOls1MTIsNTEyLFtdLCJlNGJiIiwiTTQ4MS43IDI0MC4xYy0xNy42LTEuMi0zMi45IDEyLTM0LjIgMjkuNy0zLjMgNDctMjMuNiA4OS40LTU0LjggMTIxTDM2MSAzNTljLTYuOS02LjktMTcuMi04LjktMjYuMi01LjJTMzIwIDM2Ni4zIDMyMCAzNzZsMCAxMTJjMCAxMy4zIDEwLjcgMjQgMjQgMjRsMTEyIDBjOS43IDAgMTguNS01LjggMjIuMi0xNC44czEuNy0xOS4zLTUuMi0yNi4ybC0zNS0zNWM0MS43LTQyLjIgNjguOS05OC44IDczLjQtMTYxLjggMS4yLTE3LjYtMTItMzIuOS0yOS43LTM0LjJ6TTM5IDQxTDc0IDc2Yy00MS43IDQyLjItNjguOSA5OC44LTczLjQgMTYxLjgtMS4yIDE3LjYgMTIgMzIuOSAyOS43IDM0LjJzMzIuOS0xMiAzNC4yLTI5LjdjMy4zLTQ3IDIzLjYtODkuNCA1NC44LTEyMUwxNTEgMTUzYzYuOSA2LjkgMTcuMiA4LjkgMjYuMiA1LjJTMTkyIDE0NS43IDE5MiAxMzZsMC0xMTJjMC0xMy4zLTEwLjctMjQtMjQtMjRMNTYgMEM0Ni4zIDAgMzcuNSA1LjggMzMuOCAxNC44UzMyLjIgMzQuMSAzOSA0MXptMjAxLTEwLjdjLTEuMiAxNy42IDEyIDMyLjkgMjkuNyAzNC4yIDQ3IDMuMyA4OS40IDIzLjYgMTIxIDU0LjhMMzU5IDE1MWMtNi45IDYuOS04LjkgMTcuMi01LjIgMjYuMlMzNjYuMyAxOTIgMzc2IDE5MmwxMTIgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNGwwLTExMmMwLTkuNy01LjgtMTguNS0xNC44LTIyLjJTNDc3LjkgMzIuMiA0NzEgMzlMNDM2IDc0Yy00Mi4yLTQxLjctOTguOC02OC45LTE2MS44LTczLjQtMTcuNi0xLjItMzIuOSAxMi0zNC4yIDI5Ljd6TTQxIDQ3M2wzNS0zNWM0Mi4yIDQxLjcgOTguOCA2OC45IDE2MS44IDczLjQgMTcuNiAxLjIgMzIuOS0xMiAzNC4yLTI5LjdzLTEyLTMyLjktMjkuNy0zNC4yYy00Ny0zLjMtODkuNC0yMy42LTEyMS01NC44TDE1MyAzNjFjNi45LTYuOSA4LjktMTcuMiA1LjItMjYuMlMxNDUuNyAzMjAgMTM2IDMyMEwyNCAzMjBjLTEzLjMgMC0yNCAxMC43LTI0IDI0TDAgNDU2YzAgOS43IDUuOCAxOC41IDE0LjggMjIuMlMzNC4xIDQ3OS44IDQxIDQ3M3oiXX0seTZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImpvaW50IixpY29uOls1NzYsNTEyLFtdLCJmNTk1IiwiTTM2MCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0bDAgMTljMCA0MC4zIDE2IDc5IDQ0LjUgMTA3LjVsMjEgMjFDNDY5IDE5MSA0ODAgMjE3LjQgNDgwIDI0NWwwIDE5YzAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0bDAtMTljMC0xNC45LTUuOS0yOS4xLTE2LjQtMzkuNmwtMjEtMjFDMzU3LjEgMTQ2LjkgMzM2IDk2IDMzNiA0M2wwLTE5YzAtMTMuMyAxMC43LTI0IDI0LTI0ek01NTIgMjg4Yy0xMy4zIDAtMjQtMTAuNy0yNC0yNGwwLTE5YzAtNDAuMy0xNi03OS00NC41LTEwNy41bC0yMS0yMUM0NDMgOTcgNDMyIDcwLjYgNDMyIDQzbDAtMTljMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNGwwIDE5YzAgMTQuOSA1LjkgMjkuMSAxNi40IDM5LjZsMjEgMjFDNTU0LjkgMTQxLjEgNTc2IDE5MiA1NzYgMjQ1bDAgMTljMCAxMy4zLTEwLjcgMjQtMjQgMjR6TTI5Mi43IDMyMGM1LjYgMCAxMC43IDIuOSAxMy42IDcuNkwzOTQuNiA0NzFjMS4zIDIuMSAwIDQuOS0yLjQgNS4yLTE2LjEgMi41LTMyLjQgMy43LTQ4LjcgMy43bC0zOC4xIDBjLTUuNiAwLTEwLjctMi45LTEzLjYtNy42bC03OS0xMjguNGMtNi05LjggMC0yMi42IDExLjUtMjMuMyA2LjctLjQgMTMuNC0uNiAyMC4yLS42bDQ4LjMgMHpNNDU5LjMgNDY1LjljLTYuNCAxLTEyLjctMS45LTE2LjEtNy40TDM3NC4xIDM0Ni4xYy02LjctMTAuOSAxLjUtMjQuNyAxNC4yLTIyLjkgMS4zIC4yIDIuNiAuNCAzLjggLjZsMTM2LjQgMjFjMjcuMyA0LjIgNDcuNCAyNy43IDQ3LjQgNTUuM3MtMjAuMSA1MS4xLTQ3LjQgNTUuM2wtNjkuMiAxMC42ek0xMzguNyAzMzZjNi43LTEuNSAxMy42IDEuNCAxNy4yIDcuMmw2OC45IDExMmM2LjYgMTAuNy0xLjIgMjQuNC0xMy44IDIzLjEtMTMtMS40LTI1LjktMy41LTM4LjYtNi41TDMxLjIgNDM5LjJDMTIuOSA0MzUgMCA0MTguNyAwIDQwMHMxMi45LTM1IDMxLjItMzkuMkwxMzguNyAzMzZ6Il19LHc2cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJicmFpbGxlIixpY29uOlszODQsNTEyLFtdLCJmMmExIiwiTTgwIDE0NGE4MCA4MCAwIDEgMCAwLTE2MCA4MCA4MCAwIDEgMCAwIDE2MHptMCAxOTJhODAgODAgMCAxIDAgMC0xNjAgODAgODAgMCAxIDAgMCAxNjB6bTAgMTM2Yy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0IDI0IDEwLjcgMjQgMjQtMTAuNyAyNC0yNCAyNHptMCA1NmM0NC4yIDAgODAtMzUuOCA4MC04MHMtMzUuOC04MC04MC04MC04MCAzNS44LTgwIDgwIDM1LjggODAgODAgODB6bTI0OC04MGMwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNCAxMC43LTI0IDI0LTI0IDI0IDEwLjcgMjQgMjR6bTU2IDBjMC00NC4yLTM1LjgtODAtODAtODBzLTgwIDM1LjgtODAgODAgMzUuOCA4MCA4MCA4MCA4MC0zNS44IDgwLTgwek0zMDQgMjMyYTI0IDI0IDAgMSAxIDAgNDggMjQgMjQgMCAxIDEgMC00OHptMCAxMDRhODAgODAgMCAxIDAgMC0xNjAgODAgODAgMCAxIDAgMCAxNjB6bTAtMTkyYTgwIDgwIDAgMSAwIDAtMTYwIDgwIDgwIDAgMSAwIDAgMTYweiJdfSxkQ2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYmFza2V0LXNob3BwaW5nIixpY29uOls1NzYsNTEyLFsic2hvcHBpbmctYmFza2V0Il0sImYyOTEiLCJNMjg4IDBjNi42IDAgMTIuOSAyLjcgMTcuNCA3LjVsMTQ0IDE1MiAuNSAuNSA3OC4xIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzIgMCAxNC41LTkuNiAyNi43LTIyLjggMzAuN0w0OTEuMSA0MjkuOWMtNi41IDI5LjMtMzIuNSA1MC4xLTYyLjUgNTAuMWwtMjgxLjMgMGMtMzAgMC01Ni0yMC44LTYyLjUtNTAuMWwtNDYtMjA3LjJjLTEzLjItMy45LTIyLjgtMTYuMi0yMi44LTMwLjcgMC0xNy43IDE0LjMtMzIgMzItMzJsNzguMSAwIC41LS41IDE0NC0xNTJDMjc1LjEgMi43IDI4MS40IDAgMjg4IDB6bTAgNTguOUwxOTIuMiAxNjAgMzgzLjggMTYwIDI4OCA1OC45ek0yMDggMjY0YzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0bDAgMTEyYzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC0xMTJ6bTgwLTI0Yy0xMy4zIDAtMjQgMTAuNy0yNCAyNGwwIDExMmMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtMTEyYzAtMTMuMy0xMC43LTI0LTI0LTI0em0xMjggMjRjMC0xMy4zLTEwLjctMjQtMjQtMjRzLTI0IDEwLjctMjQgMjRsMCAxMTJjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTExMnoiXX0sTTZyPWRDZSxrNnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYnJpZGdlIixpY29uOls1MTIsNTEyLFtdLCJlNGM4IiwiTTMyIDMyQzE0LjMgMzIgMCA0Ni4zIDAgNjRTMTQuMyA5NiAzMiA5Nmw4IDAgMCA2NC00MCAwIDAgMTEyYzM3LjYgOS40IDY0IDQzLjIgNjQgODJsMCA5NGMwIDE3LjcgMTQuMyAzMiAzMiAzMmwzMiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtNjRjMC01MyA0My05NiA5Ni05NnM5NiA0MyA5NiA5NmwwIDY0YzAgMTcuNyAxNC4zIDMyIDMyIDMybDMyIDBjMTcuNyAwIDMyLTE0LjMgMzItMzJsMC05NGMwLTM4LjggMjYuNC03Mi42IDY0LTgybDAtMTEyLTQwIDAgMC02NCA4IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJMMzIgMzJ6TTQyNCA5NmwwIDY0LTgwIDAgMC02NCA4MCAwek0yOTYgOTZsMCA2NC04MCAwIDAtNjQgODAgMHpNODggOTZsODAgMCAwIDY0LTgwIDAgMC02NHoiXX0sUzZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBsYW5lLWFycml2YWwiLGljb246WzU3Niw1MTIsWzEyODc0OF0sImY1YWYiLCJNMzg2LjYgMTkzLjFMMjY1LjkgMy43Yy00LjgtNy42LTEyLjYtMTIuOC0yMS40LTE0LjNsLTQzLjEtNy42Yy0xMC44LTEuOS0yMC4yIDcuMy0xOC42IDE4LjFsMjQgMTYxLjYtMTA1LTE4LjUtMzMuOC02MS44QzY0LjUgNzQuNyA1OC4yIDcwLjIgNTEuMSA2OUwzNCA2NmMtOS44LTEuNy0xOC44IDUuOS0xOC44IDE1LjhsLjYgMTA2LjNjLjIgMzAuOSAyMi40IDU3LjMgNTIuOSA2Mi43bDEzLjUgMi40IDAgMCA0MTcuNiA3My42YzMwLjUgNS40IDU5LjUtMTUgNjQuOS00NS40cy0xNS01OS41LTQ1LjQtNjQuOUwzODYuNiAxOTMuMXpNMjI0IDM4NGEzMiAzMiAwIDEgMCAwLTY0IDMyIDMyIDAgMSAwIDAgNjR6bTEzMS4yLTE1LjNhMzIgMzIgMCAxIDAgLTY0IDAgMzIgMzIgMCAxIDAgNjQgMHpNMzIgNDQ4Yy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDUxMiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMyTDMyIDQ0OHoiXX0sejZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNhc2gtcmVnaXN0ZXIiLGljb246WzUxMiw1MTIsW10sImY3ODgiLCJNOTYgMEM2MC43IDAgMzIgMjguNyAzMiA2NHMyOC43IDY0IDY0IDY0bDQ4IDAgMCAzMi01NyAwYy0zMS42IDAtNTguNSAyMy4xLTYzLjMgNTQuNEwxLjEgMzY0LjFDLjQgMzY4LjggMCAzNzMuNiAwIDM3OC40TDAgNDQ4YzAgMzUuMyAyOC43IDY0IDY0IDY0bDM4NCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtNjkuNmMwLTQuOC0uNC05LjYtMS4xLTE0LjRMNDg4LjIgMjE0LjRDNDgzLjUgMTgzLjEgNDU2LjYgMTYwIDQyNSAxNjBsLTIxNyAwIDAtMzIgNDggMGMzNS4zIDAgNjQtMjguNyA2NC02NFMyOTEuMyAwIDI1NiAwTDk2IDB6bTAgNDhsMTYwIDBjOC44IDAgMTYgNy4yIDE2IDE2cy03LjIgMTYtMTYgMTZMOTYgODBjLTguOCAwLTE2LTcuMi0xNi0xNnM3LjItMTYgMTYtMTZ6TTY0IDQyNGMwLTEzLjMgMTAuNy0yNCAyNC0yNGwzMzYgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNEw4OCA0NDhjLTEzLjMgMC0yNC0xMC43LTI0LTI0em00OC0xNjBhMjQgMjQgMCAxIDEgMC00OCAyNCAyNCAwIDEgMSAwIDQ4em0xMjAtMjRhMjQgMjQgMCAxIDEgLTQ4IDAgMjQgMjQgMCAxIDEgNDggMHpNMTYwIDM0NGEyNCAyNCAwIDEgMSAwLTQ4IDI0IDI0IDAgMSAxIDAgNDh6TTMyOCAyNDBhMjQgMjQgMCAxIDEgLTQ4IDAgMjQgMjQgMCAxIDEgNDggMHpNMjU2IDM0NGEyNCAyNCAwIDEgMSAwLTQ4IDI0IDI0IDAgMSAxIDAgNDh6TTQyNCAyNDBhMjQgMjQgMCAxIDEgLTQ4IDAgMjQgMjQgMCAxIDEgNDggMHpNMzUyIDM0NGEyNCAyNCAwIDEgMSAwLTQ4IDI0IDI0IDAgMSAxIDAgNDh6Il19LEM2cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJyaW5nIixpY29uOls1MTIsNTEyLFtdLCJmNzBiIiwiTTY0IDIwOGMwIDcuOCA0LjQgMTguNyAxNy4xIDMwLjMgNDUuNC0yNC4yIDEwNy43LTM4LjMgMTc0LjktMzguM3MxMjkuNSAxNC4xIDE3NC45IDM4LjNjMTIuOC0xMS42IDE3LjEtMjIuNSAxNy4xLTMwLjMgMC0xMi4zLTEwLjgtMzItNDcuOS01MC42LTM1LjItMTcuNi04Ni4xLTI5LjQtMTQ0LjEtMjkuNHMtMTA4LjkgMTEuOC0xNDQuMSAyOS40Qzc0LjggMTc2IDY0IDE5NS43IDY0IDIwOHptMTkyIDQwYy00NyAwLTg5LjMgNy42LTEyMi45IDE5LjcgMzMuMiAxMi40IDc1LjcgMjAuMyAxMjIuOSAyMC4zczg5LjctNy44IDEyMi45LTIwLjNDMzQ1LjMgMjU1LjYgMzAzIDI0OCAyNTYgMjQ4ek0wIDIwOEMwIDE1OC40IDM5LjQgMTIyLjIgODMuMyAxMDAuMiAxMjkuMSA3Ny4zIDE5MC4zIDY0IDI1NiA2NHMxMjYuOSAxMy4zIDE3Mi43IDM2LjJjNDMuOSAyMiA4My4zIDU4LjIgODMuMyAxMDcuOGwwIDk2YzAgNDkuNi0zOS40IDg1LjgtODMuMyAxMDcuOC00NS45IDIyLjktMTA3IDM2LjItMTcyLjcgMzYuMlMxMjkuMSA0MzQuNyA4My4zIDQxMS44QzM5LjQgMzg5LjggMCAzNTMuNiAwIDMwNGwwLTk2eiJdfSxfNnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYXF1YXJpdXMiLGljb246WzU3Niw1MTIsW10sImU4NDUiLCJNNDAxLjcgMjkxLjRjOS00LjUgMTkuNi00LjUgMjguNiAwbDEyOCA2NGMxNS44IDcuOSAyMi4yIDI3LjEgMTQuMyA0Mi45cy0yNy4xIDIyLjItNDIuOSAxNC4zTDQxNiAzNTUuOCAzMDIuMyA0MTIuNmMtOSA0LjUtMTkuNiA0LjUtMjguNiAwTDE2MCAzNTUuOCA0Ni4zIDQxMi42Yy0xNS44IDcuOS0zNSAxLjUtNDIuOS0xNC4zcy0xLjUtMzUgMTQuMy00Mi45bDEyOC02NGM5LTQuNSAxOS42LTQuNSAyOC42IDBMMjg4IDM0OC4yIDQwMS43IDI5MS40em0zLjQtMTkzLjVjOC4yLTMgMTcuMy0yLjUgMjUuMiAxLjVsMTI4IDY0YzE1LjggNy45IDIyLjIgMjcuMSAxNC4zIDQyLjlzLTI3LjEgMjIuMi00Mi45IDE0LjNMNDE2IDE2My44IDMwMi4zIDIyMC42Yy05IDQuNS0xOS42IDQuNS0yOC42IDBMMTYwIDE2My44IDQ2LjMgMjIwLjZjLTE1LjggNy45LTM1IDEuNS00Mi45LTE0LjNzLTEuNS0zNSAxNC4zLTQyLjlsMTI4LTY0IDMuNC0xLjVjOC4yLTMgMTcuMy0yLjUgMjUuMiAxLjVsMTEzLjcgNTYuOCAxMTMuNy01Ni44IDMuNC0xLjV6Il19LHVDZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzaGFyZS1ub2RlcyIsaWNvbjpbNTEyLDUxMixbInNoYXJlLWFsdCJdLCJmMWUwIiwiTTM4NCAxOTJjNTMgMCA5Ni00MyA5Ni05NnMtNDMtOTYtOTYtOTYtOTYgNDMtOTYgOTZjMCA1LjQgLjUgMTAuOCAxLjMgMTZMMTU5LjYgMTg0LjFjLTE2LjktMTUtMzkuMi0yNC4xLTYzLjYtMjQuMS01MyAwLTk2IDQzLTk2IDk2czQzIDk2IDk2IDk2YzI0LjQgMCA0Ni42LTkuMSA2My42LTI0LjFMMjg5LjMgNDAwYy0uOSA1LjItMS4zIDEwLjUtMS4zIDE2IDAgNTMgNDMgOTYgOTYgOTZzOTYtNDMgOTYtOTYtNDMtOTYtOTYtOTZjLTI0LjQgMC00Ni42IDkuMS02My42IDI0LjFMMTkwLjcgMjcyYy45LTUuMiAxLjMtMTAuNSAxLjMtMTZzLS41LTEwLjgtMS4zLTE2bDEyOS43LTcyLjFjMTYuOSAxNSAzOS4yIDI0LjEgNjMuNiAyNC4xeiJdfSxUNnI9dUNlLEw2cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwZXJzb24tY2lyY2xlLWV4Y2xhbWF0aW9uIixpY29uOls2NDAsNTEyLFtdLCJlNTNmIiwiTTI4MCAyNGE1NiA1NiAwIDEgMCAtMTEyIDAgNTYgNTYgMCAxIDAgMTEyIDB6bTI0IDIxMi43TDM0MSAyODYuNmMxMi44LTE3LjUgMjguNS0zMi43IDQ2LjMtNDVsLTU2LjItNzUuN0MzMDYgMTMyIDI2Ni4zIDExMiAyMjQgMTEycy04MiAyMC0xMDcuMiA1My45bC03MC41IDk1Yy0xMC41IDE0LjItNy42IDM0LjIgNi42IDQ0LjhzMzQuMiA3LjYgNDQuOC02LjZMMTQ0IDIzNi43IDE0NCA1MTJjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTE2MGMwLTguOCA3LjItMTYgMTYtMTZzMTYgNy4yIDE2IDE2bDAgMTYwYzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0yNzUuM3pNNDk2IDU0NGExNDQgMTQ0IDAgMSAwIDAtMjg4IDE0NCAxNDQgMCAxIDAgMCAyODh6bTAtMTAwYTIwIDIwIDAgMSAxIDAgNDAgMjAgMjAgMCAxIDEgMC00MHptMC0xNDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgODBjMCA4LjgtNy4yIDE2LTE2IDE2cy0xNi03LjItMTYtMTZsMC04MGMwLTguOCA3LjItMTYgMTYtMTZ6Il19LEQ2cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJiaW5vY3VsYXJzIixpY29uOls1MTIsNTEyLFtdLCJmMWU1IiwiTTEyOCAzMmwzMiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMzItOTYgMCAwLTMyYzAtMTcuNyAxNC4zLTMyIDMyLTMyem02NCA5NmwwIDMyMGMwIDE3LjctMTQuMyAzMi0zMiAzMkwzMiA0ODBjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtNTkuMWMwLTM0LjYgOS40LTY4LjYgMjcuMi05OC4zIDEzLjctMjIuOCAyMi41LTQ4LjIgMjUuOC03NC42TDYwLjUgMTU2YzItMTYgMTUuNi0yOCAzMS44LTI4bDk5LjggMHptMjI3LjggMGMxNi4xIDAgMjkuOCAxMiAzMS44IDI4TDQ1OSAyMTZjMy4zIDI2LjQgMTIuMSA1MS44IDI1LjggNzQuNiAxNy44IDI5LjcgMjcuMiA2My43IDI3LjIgOTguM2wwIDU5LjFjMCAxNy43LTE0LjMgMzItMzIgMzJsLTEyOCAwYy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTMyMCA5OS44IDB6TTMyMCA2NGMwLTE3LjcgMTQuMy0zMiAzMi0zMmwzMiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMzItOTYgMCAwLTMyem0tMzIgNjRsMCAxNjAtNjQgMCAwLTE2MCA2NCAweiJdfSxBNnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToia2lwLXNpZ24iLGljb246WzM4NCw1MTIsW10sImUxYzQiLCJNMzQwLjggODguM2MxMy40LTExLjUgMTUtMzEuNyAzLjUtNDUuMXMtMzEuNy0xNS00NS4xLTMuNUwxMjggMTg2LjQgMTI4IDY0YzAtMTcuNy0xNC4zLTMyLTMyLTMyUzY0IDQ2LjMgNjQgNjRsMCAxNjgtMzIgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwzMiAwIDAgMTY4YzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0xMjIuNCAxNzEuMiAxNDYuN2MxMy40IDExLjUgMzMuNiA5LjkgNDUuMS0zLjVzOS45LTMzLjYtMy41LTQ1LjFMMTczLjIgMjgwIDM1MiAyODBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRMMTczLjIgMjMyIDM0MC44IDg4LjN6Il19LGZDZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJoYXJkLWRyaXZlIixpY29uOls0NDgsNTEyLFsxMjg0MzYsImhkZCJdLCJmMGEwIiwiTTY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZMMCAyNjAuMUMxOC4xIDI0Ny40IDQwLjIgMjQwIDY0IDI0MGwzMjAgMGMyMy44IDAgNDUuOSA3LjQgNjQgMjAuMUw0NDggOTZjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzJ6TTQ0OCAzNTJjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMjg4Yy0zNS4zIDAtNjQgMjguNy02NCA2NGwwIDY0YzAgMzUuMyAyOC43IDY0IDY0IDY0bDMyMCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtNjR6TTIyNCAzODRhMzIgMzIgMCAxIDEgNjQgMCAzMiAzMiAwIDEgMSAtNjQgMHptMTI4LTMyYTMyIDMyIDAgMSAxIDAgNjQgMzIgMzIgMCAxIDEgMC02NHoiXX0sRTZyPWZDZSwkNnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicmFua2luZy1zdGFyIixpY29uOls1NzYsNTEyLFtdLCJlNTYxIiwiTTMyMS44IDU0LjFMMjk4LjIgNi4zYy0zLjktOC4zLTE2LjEtOC42LTIwLjQgMGwtMjMuNiA0Ny44LTUyLjMgNy41Yy05LjMgMS40LTEzLjMgMTIuOS02LjQgMTkuOGwzOCAzNy05IDUyLjFjLTEuNCA5LjMgOC4yIDE2LjUgMTYuOCAxMi4ybDQ2LjktMjQuOCA0Ni42IDI0LjRjOC42IDQuMyAxOC4zLTIuOSAxNi44LTEyLjJsLTktNTIuMSAzOC0zNi42YzYuOC02LjggMi45LTE4LjMtNi40LTE5LjhsLTUyLjMtNy41ek0yNTYgMjU2Yy0yNi41IDAtNDggMjEuNS00OCA0OGwwIDE2MGMwIDI2LjUgMjEuNSA0OCA0OCA0OGw2NCAwYzI2LjUgMCA0OC0yMS41IDQ4LTQ4bDAtMTYwYzAtMjYuNS0yMS41LTQ4LTQ4LTQ4bC02NCAwek00OCAzMjBjLTI2LjUgMC00OCAyMS41LTQ4IDQ4bDAgOTZjMCAyNi41IDIxLjUgNDggNDggNDhsNjQgMGMyNi41IDAgNDgtMjEuNSA0OC00OGwwLTk2YzAtMjYuNS0yMS41LTQ4LTQ4LTQ4bC02NCAwek00MTYgNDMybDAgMzJjMCAyNi41IDIxLjUgNDggNDggNDhsNjQgMGMyNi41IDAgNDgtMjEuNSA0OC00OGwwLTMyYzAtMjYuNS0yMS41LTQ4LTQ4LTQ4bC02NCAwYy0yNi41IDAtNDggMjEuNS00OCA0OHoiXX0sUDZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InVzZXItdGllIixpY29uOls0NDgsNTEyLFtdLCJmNTA4IiwiTTIyNCAyNDhhMTIwIDEyMCAwIDEgMSAwLTI0MCAxMjAgMTIwIDAgMSAxIDAgMjQwem0tMzAuNSA1Nmw2MSAwYzkuNyAwIDE3LjUgNy44IDE3LjUgMTcuNSAwIDQuMi0xLjUgOC4yLTQuMiAxMS40bC0yNy40IDMyIDMxIDExNS4xIC42IDAgMzQuNi0xMzguNWMyLjItOC43IDExLjEtMTQgMTkuNS0xMC44IDYxLjkgMjMuNiAxMDUuOSA4My42IDEwNS45IDE1My44IDAgMTUuMS0xMi4zIDI3LjQtMjcuNCAyNy40TDQzLjQgNTEyYy0xNS4xIDAtMjcuNC0xMi4zLTI3LjQtMjcuNCAwLTcwLjIgNDQtMTMwLjIgMTA1LjktMTUzLjggOC40LTMuMiAxNy4zIDIuMSAxOS41IDEwLjhsMzQuNiAxMzguNSAuNiAwIDMxLTExNS4xLTI3LjQtMzJjLTIuNy0zLjItNC4yLTcuMi00LjItMTEuNCAwLTkuNyA3LjgtMTcuNSAxNy41LTE3LjV6Il19LHBDZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJlbGxpcHNpcyIsaWNvbjpbNDQ4LDUxMixbImVsbGlwc2lzLWgiXSwiZjE0MSIsIk0wIDI1NmE1NiA1NiAwIDEgMSAxMTIgMCA1NiA1NiAwIDEgMSAtMTEyIDB6bTE2OCAwYTU2IDU2IDAgMSAxIDExMiAwIDU2IDU2IDAgMSAxIC0xMTIgMHptMjI0LTU2YTU2IDU2IDAgMSAxIDAgMTEyIDU2IDU2IDAgMSAxIDAtMTEyeiJdfSxJNnI9cENlLE42cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzdG9yZS1zbGFzaCIsaWNvbjpbNTc2LDUxMixbXSwiZTA3MSIsIk00MS0yNC45Yy05LjQtOS40LTI0LjYtOS40LTMzLjkgMFMtMi4zLS4zIDcgOS4xbDUyOCA1MjhjOS40IDkuNCAyNC42IDkuNCAzMy45IDBzOS40LTI0LjYgMC0zMy45bC01OC42LTU4LjZjMS4xLTQgMS42LTguMiAxLjYtMTIuNWwwLTE1MS4yYy0xMi41IDQuNi0yNi4xIDcuMi00MC41IDcuMi04LjEgMC0xNS45LS44LTIzLjUtMi40bDAgNjYuNC0zMC4yIDAtMTM3LjUtMTM3LjVjMi45LTMuNiA1LjUtNy40IDcuNi0xMS41IDExLjYgMjIgMzQuNyAzNyA2MS4zIDM3IDI2LjggMCA0OS44LTE1LjEgNjEuNC0zNy4xIDExLjQgMjIuMSAzNC41IDM3LjEgNjAuOCAzNy4xIDQ1LjYgMCA3OC40LTQzLjcgNjUuNi04Ny41TDUxMy44IDcyLjNDNTA2LjggNDguNCA0ODQuOSAzMiA0NjAgMzJMMTE2IDMyYy01LjUgMC0xMC44IC44LTE1LjkgMi4zTDQxLTI0Ljl6TTE1MS41IDIyMS4zTDQ4LjcgMTE4LjYgMzguOSAxNTIuNWMtMTIuOCA0My43IDIwIDg3LjUgNjUuNiA4Ny41IDE4LjEgMCAzNC43LTcuMSA0Ny0xOC43ek00MTAuMiA0ODBsLTEyOC0xMjgtMTU0LjIgMCAwLTY2LjRjLTcuNiAxLjYtMTUuNSAyLjQtMjMuNSAyLjQtMTQuNCAwLTI4LTIuNi00MC41LTcuMkw2NCA0MzJjMCAyNi41IDIxLjUgNDggNDggNDhsMjk4LjIgMHoiXX0saENlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBlcmNlbnQiLGljb246WzQ0OCw1MTIsWzYyMTAxLDYyNzg1LCJwZXJjZW50YWdlIl0sIjI1IiwiTTE5MiAxMjhhOTYgOTYgMCAxIDAgLTE5MiAwIDk2IDk2IDAgMSAwIDE5MiAwek00NDggMzg0YTk2IDk2IDAgMSAwIC0xOTIgMCA5NiA5NiAwIDEgMCAxOTIgMHpNNDM4LjYgODYuNmMxMi41LTEyLjUgMTIuNS0zMi44IDAtNDUuM3MtMzIuOC0xMi41LTQ1LjMgMGwtMzg0IDM4NGMtMTIuNSAxMi41LTEyLjUgMzIuOCAwIDQ1LjNzMzIuOCAxMi41IDQ1LjMgMGwzODQtMzg0eiJdfSxGNnI9aENlLG1DZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmaWxlLXppcHBlciIsaWNvbjpbMzg0LDUxMixbImZpbGUtYXJjaGl2ZSJdLCJmMWM2IiwiTTAgNjRDMCAyOC43IDI4LjcgMCA2NCAwTDIxMy41IDBjMTcgMCAzMy4zIDYuNyA0NS4zIDE4LjdMMzY1LjMgMTI1LjNjMTIgMTIgMTguNyAyOC4zIDE4LjcgNDUuM0wzODQgNDQ4YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDUxMmMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCA2NHptMjA4LTUuNWwwIDkzLjVjMCAxMy4zIDEwLjcgMjQgMjQgMjRMMzI1LjUgMTc2IDIwOCA1OC41ek02NCA3MmMwIDEzLjMgMTAuNyAyNCAyNCAyNGw0OCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0TDg4IDQ4Qzc0LjcgNDggNjQgNTguNyA2NCA3MnptMCA5NmMwIDEzLjMgMTAuNyAyNCAyNCAyNGw0OCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC00OCAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHptNjQgNzJsLTMyIDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMybDAgNDhjMCAyNi41IDIxLjUgNDggNDggNDhzNDgtMjEuNSA0OC00OGwwLTQ4YzAtMTcuNy0xNC4zLTMyLTMyLTMyem0tMTYgNjRhMTYgMTYgMCAxIDEgMCAzMiAxNiAxNiAwIDEgMSAwLTMyeiJdfSxPNnI9bUNlLFI2cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJkaXNwbGF5IixpY29uOls1MTIsNTEyLFtdLCJlMTYzIiwiTTQ0OCA5NmwwIDI1Ni0zODQgMCAwLTI1NiAzODQgMHpNNjQgMzJDMjguNyAzMiAwIDYwLjcgMCA5NkwwIDM1MmMwIDM1LjMgMjguNyA2NCA2NCA2NGwxNDQgMC0xNiA0OC03MiAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDI3MiAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC03MiAwLTE2LTQ4IDE0NCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMjU2YzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDMyeiJdfSxnQ2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaWNvbnMiLGljb246WzUxMiw1MTIsWyJoZWFydC1tdXNpYy1jYW1lcmEtYm9sdCJdLCJmODZkIiwiTTE3NC45IDI3MmMxMC43IDAgMjAuNyA1LjMgMjYuNiAxNC4ybDExLjggMTcuOCAyNi43IDBjMjYuNSAwIDQ4IDIxLjUgNDggNDhsMCAxMTJjMCAyNi41LTIxLjUgNDgtNDggNDhMNDggNTEyYy0yNi41IDAtNDgtMjEuNS00OC00OEwwIDM1MmMwLTI2LjUgMjEuNS00OCA0OC00OGwyNi43IDAgMTEuOC0xNy44YzUuOS04LjkgMTUuOS0xNC4yIDI2LjYtMTQuMmw2MS43IDB6bTI3OC42LTEyYzUuNi00LjkgMTMuOS01LjMgMTkuOS0uOXM4LjMgMTIuNCA1LjMgMTkuM0w0NDAuMyAzNjggNDk2IDM2OGM2LjcgMCAxMi42IDQuMSAxNSAxMC40cy42IDEzLjMtNC40IDE3LjdsLTEyOCAxMTJjLTUuNiA0LjktMTMuOSA1LjMtMTkuOSAuOXMtOC4zLTEyLjQtNS4zLTE5LjNsMzguNS04OS43LTU1LjggMGMtNi43IDAtMTIuNi00LjEtMTUtMTAuNHMtLjYtMTMuMyA0LjQtMTcuN2wxMjgtMTEyek0xNDQgMzYwYTQ4IDQ4IDAgMSAwIDAgOTYgNDggNDggMCAxIDAgMC05NnpNNDgzLjggLjRjNi41LTEuMSAxMy4xIC40IDE4LjUgNC40IDYuMSA0LjUgOS43IDExLjcgOS43IDE5LjJsMCAxNTItLjMgNC45Yy0zLjMgMjQuMi0zMC41IDQzLjEtNjMuNyA0My4xLTM1LjMgMC02NC0yMS41LTY0LTQ4czI4LjctNDggNjQtNDhjNS41IDAgMTAuOSAuNiAxNiAxLjZsMC00OS4zLTExMiAzMy42IDAgMTEwLjItLjMgNC45Yy0zLjMgMjQuMi0zMC41IDQzLjEtNjMuNyA0My4xLTM1LjMgMC02NC0yMS41LTY0LTQ4czI4LjctNDggNjQtNDhjNS41IDAgMTAuOSAuNiAxNiAxLjZMMzA0IDcyYzAtMTAuNiA3LTIwIDE3LjEtMjNsMTYwLTQ4IDIuNy0uNnpNMTg4LjkgMEMyMjYgMCAyNTYgMzAgMjU2IDY3LjFsMCA2LjFjMCA1Ni4xLTc1LjIgMTEyLjEtMTEwLjMgMTM1LjMtMTAuOCA3LjEtMjQuNiA3LjEtMzUuNCAwLTM1LjEtMjMuMS0xMTAuMy03OS4yLTExMC4zLTEzNS4zbDAtNi4xQzAgMzAgMzAgMCA2Ny4xIDAgODguMiAwIDEwOCA5LjkgMTIwLjcgMjYuOGw3LjMgOS44IDcuMy05LjhDMTQ4IDkuOSAxNjcuOCAwIDE4OC45IDB6Il19LEI2cj1nQ2UsSDZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InJ1bGVyLXZlcnRpY2FsIixpY29uOlsyNTYsNTEyLFtdLCJmNTQ4IiwiTTAgMTZDMC0xMC41IDIxLjUtMzIgNDgtMzJsMTYwIDBjMjYuNSAwIDQ4IDIxLjUgNDggNDhsMCAyNC0xMDQgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwxMDQgMCAwIDQ4LTcyIDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsNzIgMCAwIDQ4LTEwNCAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDEwNCAwIDAgNDgtNzIgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGw3MiAwIDAgNDgtMTA0IDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsMTA0IDAgMCAyNGMwIDI2LjUtMjEuNSA0OC00OCA0OEw0OCA1NDRjLTI2LjUgMC00OC0yMS41LTQ4LTQ4TDAgMTZ6Il19LHhDZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtYXAtbG9jYXRpb24tZG90IixpY29uOls2NDAsNTEyLFsibWFwLW1hcmtlZC1hbHQiXSwiZjVhMCIsIk01NzYgNDhjMC0xMS4xLTUuNy0yMS40LTE1LjItMjcuMnMtMjEuMi02LjQtMzEuMS0xLjRMNDEzLjUgNzcuNSAyMzQuMSAxNy42Yy04LjEtMi43LTE2LjgtMi4xLTI0LjQgMS43bC0xMjggNjRDNzAuOCA4OC44IDY0IDk5LjkgNjQgMTEybDAgMzUyYzAgMTEuMSA1LjcgMjEuNCAxNS4yIDI3LjJzMjEuMiA2LjQgMzEuMSAxLjRsMTE2LjEtNTguMSAxNzMuMyA1Ny44Yy00LjMtNi40LTguNS0xMy4xLTEyLjYtMTkuOS0xMS0xOC4zLTIxLjktMzkuMy0zMC02MS44bC0xMDEuMi0zMy43IDAtMjg0LjUgMTI4IDQyLjcgMCA5OS4zYzMxLTM1LjggNzctNTguNCAxMjgtNTguNCAyMi42IDAgNDQuMiA0LjQgNjQgMTIuNUw1NzYgNDh6TTUxMiAyMjRjLTY2LjMgMC0xMjAgNTIuOC0xMjAgMTE3LjkgMCA2OC45IDY0LjEgMTUwLjQgOTguNiAxODkuMyAxMS42IDEzIDMxLjMgMTMgNDIuOSAwIDM0LjUtMzguOSA5OC42LTEyMC40IDk4LjYtMTg5LjMgMC02NS4xLTUzLjctMTE3LjktMTIwLTExNy45ek00NzIgMzQ0YTQwIDQwIDAgMSAxIDgwIDAgNDAgNDAgMCAxIDEgLTgwIDB6Il19LHE2cj14Q2UsYkNlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhlYXJ0LWNyYWNrIixpY29uOls1MTIsNTEyLFsxMjgxNDgsImhlYXJ0LWJyb2tlbiJdLCJmN2E5IiwiTTEzMy4xIDMyYzE3LjMgMCAzNC4yIDMuNCA0OS45IDkuN2w1NC44IDg1LjItNzUuNCA3NS40Yy0xLjUgMS41LTIuNCAzLjYtMi4zIDUuOHMxIDQuMiAyLjYgNS43bDExMiAxMDRjMi45IDIuNyA3LjQgMi45IDEwLjUgLjNzMy44LTcgMS43LTEwLjRsLTYwLjQtOTguMSA5MC43LTc1LjZjMi42LTIuMSAzLjUtNS43IDIuNC04LjhMMjk2LjQgNjAuNkMzMTkuNiA0Mi4zIDM0OC42IDMyIDM3OC45IDMyIDQ1Mi40IDMyIDUxMiA5MS42IDUxMiAxNjUuMWwwIDIuNmMwIDExMi4yLTEzOS45IDI0Mi41LTIxMi45IDI5OC4yLTEyLjQgOS40LTI3LjYgMTQuMS00My4xIDE0LjFzLTMwLjgtNC42LTQzLjEtMTQuMUMxMzkuOSA0MTAuMiAwIDI3OS45IDAgMTY3LjdsMC0yLjZDMCA5MS42IDU5LjYgMzIgMTMzLjEgMzJ6Il19LGo2cj1iQ2UsVjZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNvdyIsaWNvbjpbNjQwLDUxMixbMTI4MDA0XSwiZjZjOCIsIk05NiAyMjRsMCAxOTJjMCAxNy43IDE0LjMgMzIgMzIgMzJsMzIgMGMxNy43IDAgMzItMTQuMyAzMi0zMmwwLTg4LjJjOS45IDYuNiAyMC42IDEyIDMyIDE2LjFsMCAyNC4yYzAgOC44IDcuMiAxNiAxNiAxNnMxNi03LjIgMTYtMTZsMC0xNi45YzUuMyAuNiAxMC42IC45IDE2IC45czEwLjctLjMgMTYtLjlsMCAxNi45YzAgOC44IDcuMiAxNiAxNiAxNnMxNi03LjIgMTYtMTZsMC0yNC4yYzExLjQtNCAyMi4xLTkuNCAzMi0xNi4xbDAgODguMmMwIDE3LjcgMTQuMyAzMiAzMiAzMmwzMiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtMTYwIDMyIDMyIDAgNDkuNWMwIDkuNSAyLjggMTguNyA4LjEgMjYuNkw1MzAgNDI3YzguOCAxMy4xIDIzLjUgMjEgMzkuMyAyMSAyMi41IDAgNDEuOS0xNS45IDQ2LjMtMzhsMjAuMy0xMDEuNmMyLjYtMTMtLjMtMjYuNS04LTM3LjNsLTMuOS01LjUgMC04MS42YzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0bDAgMTQuNC01Mi45LTc0LjFDNDk2IDg2LjUgNDUyLjQgNjQgNDA1LjkgNjRMMTQ0IDY0Qzc3LjcgNjQgMjQgMTE3LjcgMjQgMTg0bDAgNTRDOS40IDI0OS44IDAgMjY3LjggMCAyODhsMCAxNy42YzAgOCA2LjQgMTQuNCAxNC40IDE0LjQgMzEuOCAwIDU3LjYtMjUuOCA1Ny42LTU3LjZMNzIgMTg0YzAtMjQuMyAxMi4xLTQ1LjggMzAuNS01OC45LTQuMiAxMC44LTYuNSAyMi42LTYuNSAzNC45bDAgNjR6TTU2MCAzMzZhMTYgMTYgMCAxIDEgMzIgMCAxNiAxNiAwIDEgMSAtMzIgMHpNMTY2LjYgMTY2LjZjLTQuMi00LjItNi42LTEwLTYuNi0xNiAwLTEyLjUgMTAuMS0yMi42IDIyLjYtMjIuNmwxNzguNyAwYzEyLjUgMCAyMi42IDEwLjEgMjIuNiAyMi42IDAgNi0yLjQgMTEuOC02LjYgMTZsLTIzLjQgMjMuNEMzMzIuMiAyMTEuOCAzMDIuNyAyMjQgMjcyIDIyNHMtNjAuMi0xMi4yLTgxLjktMzMuOWwtMjMuNC0yMy40eiJdfSxJdz17cHJlZml4OiJmYXMiLGljb25OYW1lOiJyc3MiLGljb246WzQ0OCw1MTIsWyJmZWVkIl0sImYwOWUiLCJNMCA2NGMwLTE3LjcgMTQuMy0zMiAzMi0zMiAyMjkuOCAwIDQxNiAxODYuMiA0MTYgNDE2IDAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMyQzM4NCAyNTMuNiAyMjYuNCA5NiAzMiA5NiAxNC4zIDk2IDAgODEuNyAwIDY0ek0wIDQxNmE2NCA2NCAwIDEgMSAxMjggMCA2NCA2NCAwIDEgMSAtMTI4IDB6TTMyIDE2MGMxNTkuMSAwIDI4OCAxMjguOSAyODggMjg4IDAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMyYzAtMTIzLjctMTAwLjMtMjI0LTIyNC0yMjQtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMnoiXX0sVTZyPUl3LE53PXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im1hZ25pZnlpbmctZ2xhc3MiLGljb246WzUxMiw1MTIsWzEyODI2OSwic2VhcmNoIl0sImYwMDIiLCJNNDE2IDIwOGMwIDQ1LjktMTQuOSA4OC4zLTQwIDEyMi43TDUwMi42IDQ1Ny40YzEyLjUgMTIuNSAxMi41IDMyLjggMCA0NS4zcy0zMi44IDEyLjUtNDUuMyAwTDMzMC43IDM3NkMyOTYuMyA0MDEuMSAyNTMuOSA0MTYgMjA4IDQxNiA5My4xIDQxNiAwIDMyMi45IDAgMjA4UzkzLjEgMCAyMDggMCA0MTYgOTMuMSA0MTYgMjA4ek0yMDggMzUyYTE0NCAxNDQgMCAxIDAgMC0yODggMTQ0IDE0NCAwIDEgMCAwIDI4OHoiXX0sVzZyPU53LEc2cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjbG91ZC1tb29uIixpY29uOls2NDAsNTEyLFtdLCJmNmMzIiwiTTQ4MCAwYzE0LjYgMCAyOC44IDEuNiA0Mi41IDQuNyA3LjQgMS43IDEzIDcuOCAxMy45IDE1LjRzLTMgMTQuOS05LjggMTguM2MtNDUuNCAyMi42LTc2LjYgNjkuNS03Ni42IDEyMy42IDAgNzYuMiA2MS44IDEzOCAxMzggMTM4IDMuNyAwIDcuNC0uMSAxMS4xLS40IDcuNi0uNiAxNC43IDMuNiAxNy44IDEwLjZzMS41IDE1LjEtMy45IDIwLjRjLTI2IDI1LTU5LjEgNDIuNy05NS45IDQ5LjktMTEuMS0yNS4zLTMwLjItNDYuMy01NC4xLTU5LjgtNy42LTYzLjQtNjEuNi0xMTIuNi0xMjcuMS0xMTIuNi0xMS4yIDAtMjIuMSAxLjUtMzIuNSA0LjItNC44LTQuMi05LjktOC4yLTE1LjItMTEuOC0uMS0yLjgtLjItNS42LS4yLTguNCAwLTEwNiA4Ni0xOTIgMTkyLTE5MnptLS4xIDQzMS45YzAgNDQuMi0zNS44IDgwLTgwIDgwbC0yNzEuOSAwYy01MyAwLTk2LTQzLTk2LTk2IDAtNDcuNiAzNC42LTg3IDgwLTk0LjYtLjQtNTIuOCA0Mi45LTk3LjMgOTYtOTcuMyAzNC45IDAgNjUuNCAxOC42IDgyLjIgNDYuNCAxMy05LjEgMjguOC0xNC40IDQ1LjgtMTQuNCA0NC4yIDAgODAgMzUuOCA4MCA4MCAwIDUuOS0uNiAxMS43LTEuOSAxNy4yIDM3LjQgNi43IDY1LjggMzkuNCA2NS44IDc4Ljd6Il19LGwyZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJib3hlcy1zdGFja2VkIixpY29uOls1MTIsNTEyLFs2MjYyNSwiYm94ZXMiLCJib3hlcy1hbHQiXSwiZjQ2OCIsIk0yMjQgMGwwIDY0YzAgOC44IDcuMiAxNiAxNiAxNmwzMiAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTY0IDMyIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAxMjhjMCA1LjUtLjcgMTAuOS0yIDE2bC0yNTIgMGMtMS4zLTUuMS0yLTEwLjUtMi0xNmwwLTEyOGMwLTM1LjMgMjguNy02NCA2NC02NGwzMiAwem05NiA1MTJjLTExLjIgMC0yMS44LTIuOS0zMS04IDkuNS0xNi41IDE1LTM1LjYgMTUtNTZsMC0xMjhjMC0yMC40LTUuNS0zOS41LTE1LTU2IDkuMi01LjEgMTkuNy04IDMxLThsMzIgMCAwIDY0YzAgOC44IDcuMiAxNiAxNiAxNmwzMiAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTY0IDMyIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAxMjhjMCAzNS4zLTI4LjcgNjQtNjQgNjRsLTEyOCAwek0wIDMyMGMwLTM1LjMgMjguNy02NCA2NC02NGwzMiAwIDAgNjRjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtNjQgMzIgMGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDEyOGMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA1MTJjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgMzIweiJdfSxZNnI9bDJlLFo2cj1sMmUsWDZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNvZGUtYnJhbmNoIixpY29uOls0NDgsNTEyLFtdLCJmMTI2IiwiTTgwIDEwNGEyNCAyNCAwIDEgMCAwLTQ4IDI0IDI0IDAgMSAwIDAgNDh6bTgwLTI0YzAgMzIuOC0xOS43IDYxLTQ4IDczLjNsMCA3MC43IDE3NiAwYzI2LjUgMCA0OC0yMS41IDQ4LTQ4bDAtMjIuN2MtMjguMy0xMi4zLTQ4LTQwLjUtNDgtNzMuMyAwLTQ0LjIgMzUuOC04MCA4MC04MHM4MCAzNS44IDgwIDgwYzAgMzIuOC0xOS43IDYxLTQ4IDczLjNsMCAyMi43YzAgNjEuOS01MC4xIDExMi0xMTIgMTEybC0xNzYgMCAwIDcwLjdjMjguMyAxMi4zIDQ4IDQwLjUgNDggNzMuMyAwIDQ0LjItMzUuOCA4MC04MCA4MFMwIDQ3Ni4yIDAgNDMyYzAtMzIuOCAxOS43LTYxIDQ4LTczLjNsMC0yMDUuM0MxOS43IDE0MSAwIDExMi44IDAgODAgMCAzNS44IDM1LjggMCA4MCAwczgwIDM1LjggODAgODB6bTIzMiAwYTI0IDI0IDAgMSAwIC00OCAwIDI0IDI0IDAgMSAwIDQ4IDB6TTgwIDQ1NmEyNCAyNCAwIDEgMCAwLTQ4IDI0IDI0IDAgMSAwIDAgNDh6Il19LHZDZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJiYW4iLGljb246WzUxMiw1MTIsWzEyODY4MywiY2FuY2VsIl0sImYwNWUiLCJNMzY3LjIgNDEyLjVMOTkuNSAxNDQuOGMtMjIuNCAzMS40LTM1LjUgNjkuOC0zNS41IDExMS4yIDAgMTA2IDg2IDE5MiAxOTIgMTkyIDQxLjUgMCA3OS45LTEzLjEgMTExLjItMzUuNXptNDUuMy00NS4zYzIyLjQtMzEuNCAzNS41LTY5LjggMzUuNS0xMTEuMiAwLTEwNi04Ni0xOTItMTkyLTE5Mi00MS41IDAtNzkuOSAxMy4xLTExMS4yIDM1LjVMNDEyLjUgMzY3LjJ6TTAgMjU2YTI1NiAyNTYgMCAxIDEgNTEyIDAgMjU2IDI1NiAwIDEgMSAtNTEyIDB6Il19LFE2cj12Q2UsSzZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Imp1Zy1kZXRlcmdlbnQiLGljb246WzM4NCw1MTIsW10sImU1MTkiLCJNOTYgMjRjMC0xMy4zIDEwLjctMjQgMjQtMjRsODAgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNGwwIDI0IDggMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNEw4OCA5NkM3NC43IDk2IDY0IDg1LjMgNjQgNzJTNzQuNyA0OCA4OCA0OGw4IDAgMC0yNHpNMCAyNTZjMC03MC43IDU3LjMtMTI4IDEyOC0xMjhsMTI4IDBjNzAuNyAwIDEyOCA1Ny4zIDEyOCAxMjhsMCAxOTJjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNTEyYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDI1NnptMjU2IDBsMCA5NmMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtOTZjMC0xNy43LTE0LjMtMzItMzItMzJzLTMyIDE0LjMtMzIgMzJ6Il19LHlDZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJyZXBseSIsaWNvbjpbNTEyLDUxMixbNjE3MTQsIm1haWwtcmVwbHkiXSwiZjNlNSIsIk0yMDQuMiAxOC40YzEyIDUgMTkuOCAxNi42IDE5LjggMjkuNmwwIDgwIDExMiAwYzk3LjIgMCAxNzYgNzguOCAxNzYgMTc2IDAgMTEzLjMtODEuNSAxNjMuOS0xMDAuMiAxNzQuMS0yLjUgMS40LTUuMyAxLjktOC4xIDEuOS0xMC45IDAtMTkuNy04LjktMTkuNy0xOS43IDAtNy41IDQuMy0xNC40IDkuOC0xOS41IDkuNC04LjggMjIuMi0yNi40IDIyLjItNTYuNyAwLTUzLTQzLTk2LTk2LTk2bC05NiAwIDAgODBjMCAxMi45LTcuOCAyNC42LTE5LjggMjkuNnMtMjUuNyAyLjItMzQuOS02LjlsLTE2MC0xNjBjLTEyLjUtMTIuNS0xMi41LTMyLjggMC00NS4zbDE2MC0xNjBjOS4yLTkuMiAyMi45LTExLjkgMzQuOS02Ljl6Il19LEo2cj15Q2UsZXVyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InN1bi1wbGFudC13aWx0IixpY29uOls2NDAsNTEyLFtdLCJlNTdhIiwiTTE2MCAwYy01LjUgMC0xMC42IDIuOC0xMy41IDcuNGwtMS4xIDIuMS0yNC44IDU1LjQtNTYuNy0yMS43Yy01LjktMi4yLTEyLjUtLjgtMTcgMy43UzQxIDU4IDQzLjIgNjMuOWwyMS43IDU2LjctNTUuNCAyNC44QzMuNyAxNDggMCAxNTMuNyAwIDE2MHMzLjcgMTIgOS41IDE0LjZsNTUuNCAyNC44LTIxLjcgNTYuN2MtMi4yIDUuOS0uOCAxMi41IDMuNyAxN3MxMS4xIDUuOSAxNyAzLjdsNTYuNy0yMS43IDI0LjggNTUuNGMyLjYgNS44IDguMyA5LjUgMTQuNiA5LjVzMTItMy43IDE0LjYtOS41bDI0LjgtNTUuNCA1Ni44IDIxLjdjNS45IDIuMiAxMi41IC44IDE3LTMuN3M1LjktMTEuMSAzLjctMTdsLTIxLjctNTYuNyA1NS40LTI0LjhjNS44LTIuNiA5LjUtOC4zIDkuNS0xNC42cy0zLjctMTItOS41LTE0LjZsLTU1LjQtMjQuOCAyMS43LTU2LjcgLjctMi4yYzEuMi01LjMtLjQtMTAuOS00LjMtMTQuOHMtOS41LTUuNS0xNC44LTQuM2wtMi4yIC43LTU2LjggMjEuNy0yNC44LTU1LjRDMTcyIDMuNyAxNjYuMyAwIDE2MCAwem0wIDk2YTY0IDY0IDAgMSAxIDAgMTI4IDY0IDY0IDAgMSAxIDAtMTI4em0zMiA2NGEzMiAzMiAwIDEgMCAtNjQgMCAzMiAzMiAwIDEgMCA2NCAwem0zNzYgMTZsMCA1My40Yy0xNC44IDcuNy0yNCAyMy4xLTI0IDQ0LjYgMCAxNi44IDE2IDQ0IDM3LjQgNjcuMiA1LjggNi4yIDE1LjUgNi4yIDIxLjIgMCAyMS40LTIzLjMgMzcuNC01MC42IDM3LjQtNjcuMiAwLTIxLjUtOS4yLTM3LTI0LTQ0LjZsMC01My40YzAtNDQuMi0zNS44LTgwLTgwLTgwcy04MCAzNS44LTgwIDgwbDAgMjIuN2MtOS44LTQuMy0yMC42LTYuNy0zMi02LjctNDQuMiAwLTgwIDM1LjgtODAgODBsMCAyMS40Yy0xNC44IDcuNi0yNCAyMy4xLTI0IDQ0LjYgMCAxNi44IDE2IDQ0IDM3LjQgNjcuMiA1LjggNi4yIDE1LjUgNi4yIDIxLjIgMCAyMS40LTIzLjMgMzcuNC01MC42IDM3LjQtNjcuMiAwLTIxLjUtOS4yLTM3LTI0LTQ0LjZsMC0yMS40YzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJsMCAxNzYtNDI0IDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsNTc2IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTEwNCAwIDAtMjcyYzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJ6Il19LHR1cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJiYWN0ZXJpdW0iLGljb246WzU3Niw1MTIsW10sImUwNWEiLCJNNDA4IDE2YzAtMTMuMy0xMC43LTI0LTI0LTI0UzM2MCAyLjcgMzYwIDE2bDAgMjMuNGMtMTMuOSA1LjMtMjYuOSAxMy41LTM4LjIgMjQuNUwzMDUgNDdjLTkuNC05LjQtMjQuNi05LjQtMzMuOSAwcy05LjQgMjQuNiAwIDMzLjlsMTYuOCAxNi44LTMwLjEgMzAuMS0xNi44LTE2LjhjLTkuNC05LjQtMjQuNi05LjQtMzMuOSAwcy05LjQgMjQuNiAwIDMzLjlsMTYuOCAxNi44Yy0xMCAxMC0yMCAyMC0zMC4xIDMwLjFMMTc3IDE3NWMtOS40LTkuNC0yNC42LTkuNC0zMy45IDBzLTkuNCAyNC42IDAgMzMuOWwxNi44IDE2LjgtMzAuMSAzMC4xLTE2LjgtMTYuOGMtOS40LTkuNC0yNC42LTkuNC0zMy45IDBzLTkuNCAyNC42IDAgMzMuOWwxNi44IDE2LjhjLTExIDExLjMtMTkuMiAyNC4zLTI0LjUgMzguMkw0OCAzMjhjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsMTYuMyAwYzEuMyAxOC4zIDcuMSAzNi40IDE3LjQgNTIuNEw3MSA0MzljLTkuNCA5LjQtOS40IDI0LjYgMCAzMy45czI0LjYgOS40IDMzLjkgMGwxMC42LTEwLjZjMTYgMTAuMyAzNC4xIDE2LjEgNTIuNCAxNy40bDAgMTYuM2MwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtMjMuNGMxMy45LTUuMyAyNi45LTEzLjUgMzguMi0yNC41TDI3MSA0NjVjOS40IDkuNCAyNC42IDkuNCAzMy45IDBzOS40LTI0LjYgMC0zMy45bC0xNi44LTE2LjggMzAuMS0zMC4xIDE2LjggMTYuOGM5LjQgOS40IDI0LjYgOS40IDMzLjkgMHM5LjQtMjQuNiAwLTMzLjlsLTE2LjgtMTYuOGMxMC0xMCAyMC0yMCAzMC4xLTMwLjFMMzk5IDMzN2M5LjQgOS40IDI0LjYgOS40IDMzLjkgMHM5LjQtMjQuNiAwLTMzLjlsLTE2LjgtMTYuOCAzMC4xLTMwLjEgMTYuOCAxNi44YzkuNCA5LjQgMjQuNiA5LjQgMzMuOSAwczkuNC0yNC42IDAtMzMuOWwtMTYuOC0xNi44YzExLTExLjMgMTkuMi0yNC4zIDI0LjUtMzguMmwyMy40IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTE2LjMgMGMtMS4zLTE4LjMtNy4xLTM2LjQtMTcuNC01Mi40TDUwNSA3M2M5LjQtOS40IDkuNC0yNC42IDAtMzMuOXMtMjQuNi05LjQtMzMuOSAwTDQ2MC40IDQ5LjdjLTE2LTEwLjMtMzQuMS0xNi4xLTUyLjQtMTcuNEw0MDggMTZ6TTE2MCAzNTJhMzIgMzIgMCAxIDEgNjQgMCAzMiAzMiAwIDEgMSAtNjQgMHpNMjcyIDI0MGEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6Il19LHJ1cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJyZWNvcmQtdmlueWwiLGljb246WzUxMiw1MTIsW10sImY4ZDkiLCJNMCAyNTZhMjU2IDI1NiAwIDEgMSA1MTIgMCAyNTYgMjU2IDAgMSAxIC01MTIgMHptMjU2LTk2YTk2IDk2IDAgMSAxIDAgMTkyIDk2IDk2IDAgMSAxIDAtMTkyem0wIDI0MGExNDQgMTQ0IDAgMSAwIDAtMjg4IDE0NCAxNDQgMCAxIDAgMCAyODh6bTAtMTEyYTMyIDMyIDAgMSAwIDAtNjQgMzIgMzIgMCAxIDAgMCA2NHoiXX0sd0NlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZsb3BweS1kaXNrIixpY29uOls0NDgsNTEyLFsxMjgxOTAsMTI4NDI2LCJzYXZlIl0sImYwYzciLCJNNjQgMzJDMjguNyAzMiAwIDYwLjcgMCA5NkwwIDQxNmMwIDM1LjMgMjguNyA2NCA2NCA2NGwzMjAgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTI0Mi43YzAtMTctNi43LTMzLjMtMTguNy00NS4zTDM1MiA1MC43QzM0MCAzOC43IDMyMy43IDMyIDMwNi43IDMyTDY0IDMyem0zMiA5NmMwLTE3LjcgMTQuMy0zMiAzMi0zMmwxNjAgMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDY0YzAgMTcuNy0xNC4zIDMyLTMyIDMybC0xNjAgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC02NHpNMjI0IDI4OGE2NCA2NCAwIDEgMSAwIDEyOCA2NCA2NCAwIDEgMSAwLTEyOHoiXX0sYXVyPXdDZSxpdXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidG9pbGV0cy1wb3J0YWJsZSIsaWNvbjpbNTEyLDUxMixbXSwiZTU4NCIsIk02NCAwbDk2IDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAxNi0yMjQgMCAwLTE2QzAgMjguNyAyOC43IDAgNjQgMHpNMCAxMjhsMjI0IDAgMCAzNjBjMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjRsMC04LTEyOCAwIDAgOGMwIDEzLjMtMTAuNyAyNC0yNCAyNFMwIDUwMS4zIDAgNDg4TDAgMTI4ek0xMjggMjQ4bDAgNDhjMCAxMy4zIDEwLjcgMjQgMjQgMjRsMjQgMCAwLTk2LTI0IDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0ek0zNTIgMGw5NiAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMTYtMjI0IDAgMC0xNmMwLTM1LjMgMjguNy02NCA2NC02NHpNMjg4IDEyOGwyMjQgMCAwIDM2MGMwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNGwwLTgtMTI4IDAgMCA4YzAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0bDAtMzYwek00MTYgMjQ4bDAgNDhjMCAxMy4zIDEwLjcgMjQgMjQgMjRsMjQgMCAwLTk2LTI0IDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0eiJdfSxvdXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibyIsaWNvbjpbNDQ4LDUxMixbMTExXSwiNGYiLCJNMjI0IDk2YTE2MCAxNjAgMCAxIDAgMCAzMjAgMTYwIDE2MCAwIDEgMCAwLTMyMHpNNDQ4IDI1NmEyMjQgMjI0IDAgMSAxIC00NDggMCAyMjQgMjI0IDAgMSAxIDQ0OCAweiJdfSxudXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGFsZXR0ZSIsaWNvbjpbNTEyLDUxMixbMTI3OTEyXSwiZjUzZiIsIk01MTIgMjU2YzAgLjkgMCAxLjggMCAyLjctLjQgMzYuNS0zMy42IDYxLjMtNzAuMSA2MS4zTDM0NCAzMjBjLTI2LjUgMC00OCAyMS41LTQ4IDQ4IDAgMy40IC40IDYuNyAxIDkuOSAyLjEgMTAuMiA2LjUgMjAgMTAuOCAyOS45IDYuMSAxMy44IDEyLjEgMjcuNSAxMi4xIDQyIDAgMzEuOC0yMS42IDYwLjctNTMuNCA2Mi0zLjUgLjEtNyAuMi0xMC42IC4yLTE0MS40IDAtMjU2LTExNC42LTI1Ni0yNTZTMTE0LjYgMCAyNTYgMCA1MTIgMTE0LjYgNTEyIDI1NnpNMTI4IDI4OGEzMiAzMiAwIDEgMCAtNjQgMCAzMiAzMiAwIDEgMCA2NCAwem0wLTk2YTMyIDMyIDAgMSAwIDAtNjQgMzIgMzIgMCAxIDAgMCA2NHpNMjg4IDk2YTMyIDMyIDAgMSAwIC02NCAwIDMyIDMyIDAgMSAwIDY0IDB6bTk2IDk2YTMyIDMyIDAgMSAwIDAtNjQgMzIgMzIgMCAxIDAgMCA2NHoiXX0sc3VyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InVubG9jayIsaWNvbjpbMzg0LDUxMixbMTI4Mjc1XSwiZjA5YyIsIk0xMjggOTZjMC0zNS4zIDI4LjctNjQgNjQtNjQgMzEuNyAwIDU4IDIzIDYzLjEgNTMuMyAyLjkgMTcuNCAxOS40IDI5LjIgMzYuOSAyNi4zczI5LjItMTkuNCAyNi4zLTM2LjlDMzA4LjEgMTQuMSAyNTUuNS0zMiAxOTItMzIgMTIxLjMtMzIgNjQgMjUuMyA2NCA5NmwwIDY0Yy0zNS4zIDAtNjQgMjguNy02NCA2NEwwIDQ0OGMwIDM1LjMgMjguNyA2NCA2NCA2NGwyNTYgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTIyNGMwLTM1LjMtMjguNy02NC02NC02NGwtMTkyIDAgMC02NHoiXX0sTUNlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImVhci1saXN0ZW4iLGljb246WzUxMiw1MTIsWyJhc3Npc3RpdmUtbGlzdGVuaW5nLXN5c3RlbXMiXSwiZjJhMiIsIk0zNzkuNiAuM2MtOC45IDEuMi0xNy4yIDYuMi0yMi40IDE0LjEtNi44IDEwLjQtNyAyNC4xLS40IDM0LjYgNS42IDguOSAxNS41IDEyLjcgMjMuOCAxOC41IDcuNSA1LjIgMTcuNiAxMy4yIDI3LjcgMjQuMiAyMCAyMS43IDM5LjUgNTQuMyAzOS41IDEwMC4zIDAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJjMC02Ni0yOC41LTExMy40LTU2LjUtMTQzLjctMTMuOS0xNS4xLTI3LjgtMjYuMS0zOC4zLTMzLjMtMTEtNy42LTIzLjUtMTYuNi0zNy42LTE0Ljd6TTI0MCAxMjhjLTU3LjYgMC0xMDUuMSA0My42LTExMS4zIDk5LjUtMS45IDE3LjYtMTcuOCAzMC4yLTM1LjMgMjguM3MtMzAuMi0xNy44LTI4LjMtMzUuM2M5LjctODggODQuMy0xNTYuNSAxNzQuOS0xNTYuNSA5Ny4yIDAgMTc2IDc4LjggMTc2IDE3NiAwIDQ2LTE3LjcgODcuOS00Ni42IDExOS4zLTEyIDEzLTE3LjQgMjQuOC0xNy40IDM0LjdsMCA2LjFjMCA2MS45LTUwLjEgMTEyLTExMiAxMTItMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMmMyNi41IDAgNDgtMjEuNSA0OC00OGwwLTYuMWMwLTMyLjkgMTcuNC01OS42IDM0LjQtNzggMTguNC0yMCAyOS42LTQ2LjYgMjkuNi03NS45IDAtNjEuOS01MC4xLTExMi0xMTItMTEyek0wIDQ4MGEzMiAzMiAwIDEgMSA2NCAwIDMyIDMyIDAgMSAxIC02NCAwem0xNjAtOTZhMzIgMzIgMCAxIDAgMC02NCAzMiAzMiAwIDEgMCAwIDY0ek04Ni42IDM2MS40Yy0xMi41LTEyLjUtMzIuOC0xMi41LTQ1LjMgMHMtMTIuNSAzMi44IDAgNDUuM2w2NCA2NGMxMi41IDEyLjUgMzIuOCAxMi41IDQ1LjMgMHMxMi41LTMyLjggMC00NS4zbC02NC02NHpNMjQwIDIwOGMtMTcuNyAwLTMyIDE0LjMtMzIgMzIgMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjRjMC00NC4yIDM1LjgtODAgODAtODBzODAgMzUuOCA4MCA4MGMwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNGMwLTE3LjctMTQuMy0zMi0zMi0zMnoiXX0sbHVyPU1DZSxjdXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY29kZS1wdWxsLXJlcXVlc3QiLGljb246WzUxMiw1MTIsW10sImUxM2MiLCJNMzI4IDI0YzAtOS43LTUuOC0xOC41LTE0LjgtMjIuMlMyOTMuOSAuMiAyODcgN0wyMzEgNjNjLTkuNCA5LjQtOS40IDI0LjYgMCAzMy45bDU2IDU2YzYuOSA2LjkgMTcuMiA4LjkgMjYuMiA1LjJTMzI4IDE0NS43IDMyOCAxMzZsMC0yNCAyNCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMjE0LjdjLTI4LjMgMTIuMy00OCA0MC41LTQ4IDczLjMgMCA0NC4yIDM1LjggODAgODAgODBzODAtMzUuOCA4MC04MGMwLTMyLjgtMTkuNy02MS00OC03My4zTDQ0OCAxNDRjMC01My00My05Ni05Ni05NmwtMjQgMCAwLTI0ek03MiA4MGEyNCAyNCAwIDEgMSA0OCAwIDI0IDI0IDAgMSAxIC00OCAwem01NiA3My4zYzI4LjMtMTIuMyA0OC00MC41IDQ4LTczLjMgMC00NC4yLTM1LjgtODAtODAtODBTMTYgMzUuOCAxNiA4MGMwIDMyLjggMTkuNyA2MSA0OCA3My4zbDAgMjA1LjNjLTI4LjMgMTIuMy00OCA0MC41LTQ4IDczLjMgMCA0NC4yIDM1LjggODAgODAgODBzODAtMzUuOCA4MC04MGMwLTMyLjgtMTkuNy02MS00OC03My4zbDAtMjA1LjN6TTcyIDQzMmEyNCAyNCAwIDEgMSA0OCAwIDI0IDI0IDAgMSAxIC00OCAwem0zNDQtMjRhMjQgMjQgMCAxIDEgMCA0OCAyNCAyNCAwIDEgMSAwLTQ4eiJdfSxkdXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToia2V5IixpY29uOls1MTIsNTEyLFsxMjgyNzNdLCJmMDg0IiwiTTMzNiAzNTJjOTcuMiAwIDE3Ni03OC44IDE3Ni0xNzZTNDMzLjIgMCAzMzYgMCAxNjAgNzguOCAxNjAgMTc2YzAgMTguNyAyLjkgMzYuOCA4LjMgNTMuN0w3IDM5MWMtNC41IDQuNS03IDEwLjYtNyAxN2wwIDgwYzAgMTMuMyAxMC43IDI0IDI0IDI0bDgwIDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRsMC00MCA0MCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0bDAtNDAgNDAgMGM2LjQgMCAxMi41LTIuNSAxNy03bDMzLjMtMzMuM2MxNi45IDUuNCAzNSA4LjMgNTMuNyA4LjN6TTM3NiA5NmE0MCA0MCAwIDEgMSAwIDgwIDQwIDQwIDAgMSAxIDAtODB6Il19LHV1cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJza3VsbCIsaWNvbjpbNTEyLDUxMixbMTI4MTI4XSwiZjU0YyIsIk00MTYgNDI3LjRjNTguNS00NCA5Ni0xMTEuNiA5Ni0xODcuNCAwLTEzMi41LTExNC42LTI0MC0yNTYtMjQwUzAgMTA3LjUgMCAyNDBjMCA3NS44IDM3LjUgMTQzLjQgOTYgMTg3LjRMOTYgNDY0YzAgMjYuNSAyMS41IDQ4IDQ4IDQ4bDMyIDAgMC00MGMwLTEzLjMgMTAuNy0yNCAyNC0yNHMyNCAxMC43IDI0IDI0bDAgNDAgNjQgMCAwLTQwYzAtMTMuMyAxMC43LTI0IDI0LTI0czI0IDEwLjcgMjQgMjRsMCA0MCAzMiAwYzI2LjUgMCA0OC0yMS41IDQ4LTQ4bDAtMzYuNnpNOTYgMjU2YTY0IDY0IDAgMSAxIDEyOCAwIDY0IDY0IDAgMSAxIC0xMjggMHptMjU2LTY0YTY0IDY0IDAgMSAxIDAgMTI4IDY0IDY0IDAgMSAxIDAtMTI4eiJdfSxrQ2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibWFycy1zdHJva2UtdXAiLGljb246WzM4NCw1MTIsWzk4OTYsIm1hcnMtc3Ryb2tlLXYiXSwiZjIyYSIsIk0xOTIgMjU2YTExMiAxMTIgMCAxIDAgMCAyMjQgMTEyIDExMiAwIDEgMCAwLTIyNHpNMTYgMzY4YzAtODYuMyA2Mi4xLTE1OC4xIDE0NC4xLTE3My4xLS4xLS45LS4xLTEuOS0uMS0yLjlsMC0xNi0zMiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDMyIDAgMC02MS40LTI4IDIyLjRjLTEzLjggMTEtMzMuOSA4LjgtNDUtNXMtOC44LTMzLjkgNS00NWw4MC02NGMxMS43LTkuMyAyOC4zLTkuMyA0MCAwbDgwIDY0YzEzLjggMTEgMTYgMzEuMiA1IDQ1cy0zMS4yIDE2LTQ1IDVsLTI4LTIyLjQgMCA2MS40IDMyIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTMyIDAgMCAxNmMwIDEgMCAxLjktLjEgMi45IDgyIDE1IDE0NC4xIDg2LjggMTQ0LjEgMTczLjEgMCA5Ny4yLTc4LjggMTc2LTE3NiAxNzZTMTYgNDY1LjIgMTYgMzY4eiJdfSxmdXI9a0NlLFNDZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmaXJlLWZsYW1lLXNpbXBsZSIsaWNvbjpbMzg0LDUxMixbImJ1cm4iXSwiZjQ2YSIsIk0zNzIuNSAyNTYuNWwtLjctMS45QzMzNy44IDE2MC44IDI4MiA3Ni41IDIwOS4xIDguNWwtMy4zLTNDMjAyLjEgMiAxOTcuMSAwIDE5MiAwcy0xMC4xIDItMTMuOCA1LjVsLTMuMyAzQzEwMiA3Ni41IDQ2LjIgMTYwLjggMTIuMiAyNTQuNmwtLjcgMS45QzMuOSAyNzcuMyAwIDI5OS40IDAgMzIxLjYgMCA0MjYuNyA4Ni44IDUxMiAxOTIgNTEyczE5Mi04NS4zIDE5Mi0xOTAuNGMwLTIyLjItMy45LTQ0LjItMTEuNS02NS4xem0tOTAuOCA0OS41YzQuMSA5LjMgNi4yIDE5LjQgNi4yIDI5LjUgMCA1My00MyA5Ni41LTk2IDk2LjVzLTk2LTQzLjUtOTYtOTYuNWMwLTEwLjEgMi4xLTIwLjMgNi4yLTI5LjVsMS45LTQuM2MxNS44LTM1LjQgMzcuOS02Ny43IDY1LjMtOTUuMWw4LjktOC45YzMuNi0zLjYgOC41LTUuNiAxMy42LTUuNnMxMCAyIDEzLjYgNS42bDguOSA4LjljMjcuNCAyNy40IDQ5LjYgNTkuNyA2NS4zIDk1LjFsMS45IDQuM3oiXX0scHVyPVNDZSxodXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidHJlZSIsaWNvbjpbNDQ4LDUxMixbMTI3Nzk0XSwiZjFiYiIsIk0yMjQtMzJjNyAwIDEzLjcgMy4xIDE4LjMgOC41bDEzNiAxNjBjNi4xIDcuMSA3LjQgMTcuMSAzLjUgMjUuNlMzNjkuNCAxNzYgMzYwIDE3NmwtMjQuOSAwIDc1LjIgODguNWM2LjEgNy4xIDcuNCAxNy4xIDMuNSAyNS42UzQwMS40IDMwNCAzOTIgMzA0bC0zOC41IDAgODguOCAxMDQuNWM2LjEgNy4xIDcuNCAxNy4xIDMuNSAyNS42UzQzMy40IDQ0OCA0MjQgNDQ4bC0xNjggMCAwIDY0YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtNjQtMTY4IDBjLTkuNCAwLTE3LjktNS40LTIxLjgtMTMuOXMtMi42LTE4LjUgMy41LTI1LjZMOTQuNSAzMDQgNTYgMzA0Yy05LjQgMC0xNy45LTUuNC0yMS44LTEzLjlzLTIuNi0xOC41IDMuNS0yNS42TDExMi45IDE3NiA4OCAxNzZjLTkuNCAwLTE3LjktNS40LTIxLjgtMTMuOXMtMi42LTE4LjUgMy41LTI1LjZsMTM2LTE2MEMyMTAuMy0yOC45IDIxNy0zMiAyMjQtMzJ6Il19LG11cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzbW9nIixpY29uOls1NzYsNTEyLFtdLCJmNzVmIiwiTTE3NiAyODhDOTYuNSAyODggMzIgMjIzLjUgMzIgMTQ0Uzk2LjUgMCAxNzYgMGMyNy4yIDAgNTIuNiA3LjUgNzQuMyAyMC42IDIwLjEtMTMgNDQtMjAuNiA2OS43LTIwLjYgNDcuNCAwIDg4LjcgMjUuNyAxMTAuOSA2NGwxLjEgMGM2MS45IDAgMTEyIDUwLjEgMTEyIDExMiAwIDYwLjMtNDcuNiAxMDkuNC0xMDcuMiAxMTEuOS0yMi42IDIwLTUyLjMgMzIuMS04NC44IDMyLjEtMzIuNSAwLTYyLjEtMTIuMS04NC43LTMyTDE3NiAyODh6TTUxMiAzOTJjMCAxMy4zLTEwLjcgMjQtMjQgMjRMMjQgNDE2Yy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0bDQ2NCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0ek04OCA0NjRsODAgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtODAgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNHptMTc2IDBsMjg4IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTI4OCAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0eiJdfSxndXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicyIsaWNvbjpbMzIwLDUxMixbMTE1XSwiNTMiLCJNMCAxNTcuNUMwIDg4LjIgNTYuMiAzMiAxMjUuNSAzMkwyNzIgMzJjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJMMTI1LjUgOTZjLTM0IDAtNjEuNSAyNy41LTYxLjUgNjEuNSAwIDMxIDIzLjEgNTcuMiA1My45IDYxTDIxMC4xIDIzMEMyNzIuOSAyMzcuOSAzMjAgMjkxLjIgMzIwIDM1NC41IDMyMCA0MjMuOCAyNjMuOCA0ODAgMTk0LjUgNDgwTDQ4IDQ4MGMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMmwxNDYuNSAwYzM0IDAgNjEuNS0yNy41IDYxLjUtNjEuNSAwLTMxLTIzLjEtNTcuMi01My45LTYxTDEwOS45IDI4MkM0Ny4xIDI3NC4xIDAgMjIwLjggMCAxNTcuNXoiXX0seHVyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImplZGkiLGljb246WzU3Niw1MTIsW10sImY2NjkiLCJNMjQ2IDMxNS43bC0yMS4yLTMxLjljLTIuMS0zLjItMS43LTcuNCAxLTEwLjFzNi45LTMuMSAxMC4xLTFsMjkuNSAxOS43YzIuMSAxLjQgNC45LS4xIDUtMi42TDI3OS43IDhjLjEtNC41IDMuOC04IDguMy04czguMSAzLjUgOC4zIDhsOS40IDI4MS45Yy4xIDIuNSAyLjkgMy45IDUgMi42bDI5LjUtMTkuN2MzLjItMi4xIDcuNC0xLjcgMTAuMSAxczMuMSA2LjkgMSAxMC4xTDMzMCAzMTUuN2MtMS4zIDEuOS0uMiA0LjUgMiA0LjlsMzcuNiA3LjVjMy43IC43IDYuNCA0IDYuNCA3LjhzLTIuNyA3LjEtNi40IDcuOEwzMzIgMzUxLjRjLTIuMiAuNC0zLjMgMy0yIDQuOWwyMS4yIDMxLjljMi4xIDMuMiAxLjcgNy40LTEgMTAuMXMtNi45IDMuMS0xMC4xIDFsLTI2LjMtMTcuNmMtMi4yLTEuNC01LjEgLjItNSAyLjhsMi4xIDYxLjVjNTkuOC0xMC44IDEwNS4xLTYzLjEgMTA1LjEtMTI2IDAtMzctMTUuNy03MC40LTQwLjgtOTMuNy03LTYuNS02LjUtMTguNiAxLTI0LjQgMzQtMjYuMyA1NS44LTY3LjUgNTUuOC0xMTMuOSAwLTE2LjgtMi45LTMzLTguMi00OC00LjYtMTMgMTAuMi0zMCAyMS40LTIyIDUzLjUgMzggOTIuNyA5NC44IDEwNy44IDE2MC43IC41IDIuMS0uMiA0LjMtMS43IDUuOWwtMjguNCAyOC40Yy00IDQtMS4yIDEwLjkgNC41IDEwLjlsMjYgMGMzLjQgMCA2LjIgMi42IDYuMyA2IC4xIDMuMyAuMiA2LjYgLjIgMTAgMCAxNy41LTEuNyAzNC43LTQuOCA1MS4zLS4yIDEuMi0uOSAyLjQtMS43IDMuM2wtNDYuNSA0Ni41Yy00IDQtMS4yIDEwLjkgNC41IDEwLjlsMTQuNiAwYzQuNiAwIDcuNyA0LjggNS43IDktNDQuNSA4OS41LTEzNi45IDE1MS0yNDMuNyAxNTFTODguOCA0NTAuNSA0NC4zIDM2MWMtMi4xLTQuMiAxLTkgNS43LTlsMTQuNiAwYzUuNyAwIDguNi02LjkgNC41LTEwLjlMMjIuNiAyOTQuNmMtLjktLjktMS41LTItMS43LTMuMy0zLjItMTYuNi00LjgtMzMuOC00LjgtNTEuMyAwLTMuMyAuMS02LjcgLjItMTAgLjEtMy40IDIuOS02IDYuMy02bDI2IDBjNS43IDAgOC42LTYuOSA0LjUtMTAuOUwyNC42IDE4NC42Yy0xLjUtMS41LTIuMi0zLjgtMS43LTUuOSAxNS4yLTY2IDU0LjMtMTIyLjggMTA3LjgtMTYwLjcgMTEuMy04IDI2IDguOSAyMS40IDIyLTUuMyAxNS04LjIgMzEuMi04LjIgNDggMCA0Ni4zIDIxLjkgODcuNSA1NS44IDExMy45IDcuNSA1LjggOCAxNy45IDEgMjQuNC0yNS4xIDIzLjQtNDAuOCA1Ni43LTQwLjggOTMuNyAwIDYyLjkgNDUuNCAxMTUuMiAxMDUuMSAxMjZsMi4xLTYxLjVjLjEtMi42LTIuOC00LjItNS0yLjhsLTI2LjMgMTcuNmMtMy4yIDIuMS03LjQgMS43LTEwLjEtMXMtMy4xLTYuOS0xLTEwLjFMMjQ2IDM1Ni4zYzEuMy0xLjkgLjItNC41LTItNC45bC0zNy42LTcuNWMtMy43LS43LTYuNC00LTYuNC03LjhzMi43LTcuMSA2LjQtNy44bDM3LjYtNy41YzIuMi0uNCAzLjMtMyAyLTQuOXoiXX0sekNlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBlcnNvbi1oaWtpbmciLGljb246WzQ0OCw1MTIsWyJoaWtpbmciXSwiZjZlYyIsIk0xOTItMzJhNTYgNTYgMCAxIDEgMCAxMTIgNTYgNTYgMCAxIDEgMC0xMTJ6TTEyOCAxNzMuNmMwLTM0IDI3LjYtNjEuNiA2MS42LTYxLjYgMjAuMyAwIDM5LjcgOC4xIDU0IDIyLjRsNDguMiA0OC4yYzYgNiAxNC4xIDkuNCAyMi42IDkuNGwzNy41IDBjNS44IDAgMTEuMyAxLjYgMTYgNC4zbDAtNzYuM2MwLTEzLjMgMTAuNy0yNCAyNC0yNHMyNCAxMC43IDI0IDI0bDAgNDAwYzAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0bDAtMjY4LjNjLTQuNyAyLjctMTAuMiA0LjMtMTYgNC4zbC0zNy41IDBjLTI1LjUgMC00OS45LTEwLjEtNjcuOS0yOC4xbC02LjYtNi42IDAgMTA5LjIgMzQuNSAyOS42YzE3LjcgMTUuMiAyOS4zIDM2LjIgMzIuNiA1OS4zbDEyLjYgODguMWMyLjUgMTcuNS05LjcgMzMuNy0yNy4yIDM2LjJzLTMzLjctOS43LTM2LjItMjcuMmwtMTIuNi04OC4xYy0xLjEtNy43LTUtMTQuNy0xMC45LTE5LjhsLTcxLjQtNjEuMmMtMjEuMy0xOC4yLTMzLjUtNDQuOS0zMy41LTcyLjlsMC0xMDF6bS00LjggMjAzLjdjMi4zIDIuMyA0LjcgNC40IDcuMSA2LjVsNDQuOSAzOC41Yy0zLjYgOC40LTguNSAxNi4zLTE0LjQgMjMuNEw4OC42IDUzMi41Yy0xMS4zIDEzLjYtMzEuNSAxNS40LTQ1LjEgNC4xcy0xNS40LTMxLjUtNC4xLTQ1LjFsNzIuMy04Ni43YzIuNi0zLjEgNC41LTYuNiA1LjgtMTAuNGw1LjctMTcuMXpNMCAxNjBjMC0zNS4zIDI4LjctNjQgNjQtNjQgMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCAxMjhjMCAxNy43LTE0LjMgMzItMzIgMzJsLTMyIDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtOTZ6Il19LGJ1cj16Q2UsdnVyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFycm93cy11cC10by1saW5lIixpY29uOls0NDgsNTEyLFtdLCJlNGMyIiwiTTMyIDBDMTQuMyAwIDAgMTQuMyAwIDMyUzE0LjMgNjQgMzIgNjRsMzg0IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJTNDMzLjcgMCA0MTYgMEwzMiAwem04Ni42IDEzNy40Yy0xMi41LTEyLjUtMzIuOC0xMi41LTQ1LjMgMGwtNjQgNjRjLTEyLjUgMTIuNS0xMi41IDMyLjggMCA0NS4zczMyLjggMTIuNSA0NS4zIDBMNjQgMjM3LjMgNjQgNDgwYzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0yNDIuNyA5LjQgOS40YzEyLjUgMTIuNSAzMi44IDEyLjUgNDUuMyAwczEyLjUtMzIuOCAwLTQ1LjNsLTY0LTY0em0yNTYgMGMtMTIuNS0xMi41LTMyLjgtMTIuNS00NS4zIDBsLTY0IDY0Yy0xMi41IDEyLjUtMTIuNSAzMi44IDAgNDUuM3MzMi44IDEyLjUgNDUuMyAwbDkuNC05LjQgMCAyNDIuN2MwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMjQyLjcgOS40IDkuNGMxMi41IDEyLjUgMzIuOCAxMi41IDQ1LjMgMHMxMi41LTMyLjggMC00NS4zbC02NC02NHoiXX0seXVyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im1hcnMtZG91YmxlIixpY29uOls2NDAsNTEyLFs5ODkxXSwiZjIyNyIsIk0yODggMzJjMC0xNy43IDE0LjMtMzIgMzItMzJMNDQ4IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCAxMjhjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC01MC43LTk1IDk1YzE5LjUgMjguNCAzMSA2Mi43IDMxIDk5LjggMCA5Ny4yLTc4LjggMTc2LTE3NiAxNzZTMCA0MDEuMiAwIDMwNCA3OC44IDEyOCAxNzYgMTI4YzM3IDAgNzEuNCAxMS40IDk5LjggMzFsOTUtOTUtNTAuNyAwYy0xNy43IDAtMzItMTQuMy0zMi0zMnpNMTc2IDQxNmExMTIgMTEyIDAgMSAwIDAtMjI0IDExMiAxMTIgMCAxIDAgMCAyMjR6bTE2MCA2NGMtNi44IDAtMTMuNC0uNC0yMC0xLjEgMjMuNi0xOC45IDQzLjMtNDIuNSA1Ny42LTY5LjQgNDMuMy0xNS41IDc0LjQtNTYuOSA3NC40LTEwNS41IDAtMjUuMi04LjMtNDguNS0yMi40LTY3LjIgNy4xIDIuMSAxNC42IDMuMiAyMi40IDMuMiAxNyAwIDMyLjctNS4zIDQ1LjctMTQuMyAxMS43IDIzLjYgMTguMyA1MC4yIDE4LjMgNzguMyAwIDk3LjItNzguOCAxNzYtMTc2IDE3NnpNNTI4IDE1Ny4zTDUyOCAzMmMwLTExLjQtMi40LTIyLjItNi43LTMyTDYwOCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMTI4YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtNTAuNy00OCA0OHoiXX0sd3VyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRoZXJtb21ldGVyIixpY29uOls1MTIsNTEyLFtdLCJmNDkxIiwiTTk2IDM4Mi4xbDAtODguOGMwLTE0LjkgNS45LTI5LjEgMTYuNC0zOS42bDIxLjctMjEuNyA0MSA0MWM5LjQgOS40IDI0LjYgOS40IDMzLjkgMHM5LjQtMjQuNiAwLTMzLjlsLTQxLTQxIDQ2LjEtNDYuMSA0MSA0MWM5LjQgOS40IDI0LjYgOS40IDMzLjkgMHM5LjQtMjQuNiAwLTMzLjlsLTQxLTQxIDQ2LjEtNDYuMSA0MSA0MWM5LjQgOS40IDI0LjYgOS40IDMzLjkgMHM5LjQtMjQuNiAwLTMzLjlsLTQxLTQxIDcuOC03LjhjMTkuNC0xOS40IDQ1LjYtMzAuMiA3My0zMC4yIDU3IDAgMTAzLjIgNDYuMiAxMDMuMiAxMDMuMiAwIDI3LjQtMTAuOSA1My42LTMwLjIgNzNMMjU4LjMgMzk5LjZjLTEwLjUgMTAuNS0yNC43IDE2LjQtMzkuNiAxNi40bC04OC44IDAtODkgODljLTkuNCA5LjQtMjQuNiA5LjQtMzMuOSAwUy0yLjMgNDgwLjQgNyA0NzFsODktODl6Il19LENDZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwYWludGJydXNoIixpY29uOls1NzYsNTEyLFsxMjgzOTYsInBhaW50LWJydXNoIl0sImYxZmMiLCJNNDgwLjUgMTAuM0wyNTkuMSAxNThjLTI5LjEgMTkuNC00Ny42IDUwLjktNTAuNiA4NS4zIDYyLjMgMTIuOCAxMTEuNCA2MS45IDEyNC4zIDEyNC4zIDM0LjUtMyA2NS45LTIxLjUgODUuMy01MC42TDU2NS43IDk1LjVjNi43LTEwLjEgMTAuMy0yMS45IDEwLjMtMzQuMSAwLTMzLjktMjcuNS02MS40LTYxLjQtNjEuNC0xMi4xIDAtMjQgMy42LTM0LjEgMTAuM3pNMjg4IDQwMGMwLTYxLjktNTAuMS0xMTItMTEyLTExMlM2NCAzMzguMSA2NCA0MDBjMCAzLjkgLjIgNy44IC42IDExLjYgMS44IDE3LjUtMTAuMiAzNi40LTI3LjggMzYuNEwzMiA0NDhjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsMTQ0IDBjNjEuOSAwIDExMi01MC4xIDExMi0xMTJ6Il19LE11cj1DQ2Usa3VyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im5ldXRlciIsaWNvbjpbMzg0LDUxMixbOTkwNl0sImYyMmMiLCJNODAgMTc2YTExMiAxMTIgMCAxIDEgMjI0IDAgMTEyIDExMiAwIDEgMSAtMjI0IDB6TTIyMy45IDM0OS4xQzMwNS45IDMzNC4xIDM2OCAyNjIuMyAzNjggMTc2IDM2OCA3OC44IDI4OS4yIDAgMTkyIDBTMTYgNzguOCAxNiAxNzZjMCA4Ni4zIDYyLjEgMTU4LjEgMTQ0LjEgMTczLjEtLjEgMS0uMSAxLjktLjEgMi45bDAgMTYwYzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0xNjBjMC0xIDAtMS45LS4xLTIuOXoiXX0sX0NlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNxdWFyZS1waG9uZS1mbGlwIixpY29uOls0NDgsNTEyLFsicGhvbmUtc3F1YXJlLWFsdCJdLCJmODdiIiwiTTY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzIwIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zMjBjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzJ6bTIzMiA5Ni43bDIuOCAuOGMzMi4zIDguOCA1OS45IDQwLjEgNTEuOCA3OC4yLTE4LjUgODcuNS04Ny40IDE1Ni4zLTE3NC45IDE3NC45LTM4LjEgOC4xLTY5LjQtMTkuNS03OC4yLTUxLjhsLS44LTIuOGMtMi43LTkuOCAyLjQtMjAuMSAxMS44LTI0bDQ4LjctMjAuM2M4LjMtMy40IDE3LjgtMS4xIDIzLjUgNS45bDE5LjMgMjMuNmMzNS4xLTE3LjQgNjMuNC00Ni42IDc5LjYtODIuNGwtMjIuMS0xOGMtNi45LTUuNy05LjMtMTUuMi01LjktMjMuNWwyMC4zLTQ4LjdjMy45LTkuNCAxNC4yLTE0LjQgMjQtMTEuOHoiXX0sU3VyPV9DZSxUQ2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmFjZS1ncmluLXRvbmd1ZS1zcXVpbnQiLGljb246WzUxMiw1MTIsWzEyODU0MSwiZ3Jpbi10b25ndWUtc3F1aW50Il0sImY1OGEiLCJNMCAyNTZjMCAxMDQuNCA2Mi41IDE5NC4yIDE1Mi4yIDIzNC4xLTUuMy0xMy04LjItMjcuMi04LjItNDIuMWwwLTYxLjdjLTE2LjktMTYuNS0zMC4xLTM2LjctMzguMy01OS4zLTQuMy0xMS44IDcuNy0yMS44IDE5LjYtMTguMSAzOS4yIDEyLjIgODMuNyAxOS4xIDEzMC43IDE5LjFzOTEuNS02LjkgMTMwLjctMTkuMWMxMS45LTMuNyAyMy45IDYuMyAxOS42IDE4LjEtOC4zIDIyLjYtMjEuNSA0Mi44LTM4LjMgNTkuM2wwIDYxLjdjMCAxNC45LTIuOSAyOS4xLTguMiA0Mi4xIDg5LjctMzkuOCAxNTIuMi0xMjkuNiAxNTIuMi0yMzQuMSAwLTE0MS40LTExNC42LTI1Ni0yNTYtMjU2UzAgMTE0LjYgMCAyNTZ6bTEyNS44LTkxLjdjLTYuMi01LjItNy42LTE0LjMtMy4xLTIxLjFzMTMuMy05LjIgMjAuNi01LjVsNzkuNiA0MGM1LjQgMi43IDguOCA4LjIgOC44IDE0LjNzLTMuNCAxMS42LTguOCAxNC4zbC03OS42IDQwYy03LjMgMy42LTE2LjEgMS4zLTIwLjYtNS41cy0zLjEtMTUuOSAzLjEtMjEuMUwxNTkgMTkyIDEyNS44IDE2NC4zem0yNjMuNi0yMS4xYzQuNSA2LjggMy4xIDE1LjktMy4xIDIxLjFMMzUzIDE5MiAzODYuMiAyMTkuN2M2LjIgNS4yIDcuNiAxNC4zIDMuMSAyMS4xcy0xMy4zIDkuMi0yMC42IDUuNWwtNzkuNi00MGMtNS40LTIuNy04LjgtOC4yLTguOC0xNC4zczMuNC0xMS42IDguOC0xNC4zbDc5LjYtNDBjNy4zLTMuNiAxNi4xLTEuMyAyMC42IDUuNXpNMzIwIDQ0OGwwLTQ1LjRjMC0xNC43LTExLjktMjYuNi0yNi42LTI2LjZsLTIgMGMtMTEuMyAwLTIxLjEgNy45LTIzLjYgMTguOS0yLjggMTIuNi0yMC44IDEyLjYtMjMuNiAwLTIuNS0xMS4xLTEyLjMtMTguOS0yMy42LTE4LjlsLTIgMGMtMTQuNyAwLTI2LjYgMTEuOS0yNi42IDI2LjZsMCA0NS40YzAgMzUuMyAyOC43IDY0IDY0IDY0czY0LTI4LjcgNjQtNjR6Il19LHp1cj1UQ2UsQ3VyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNvbW1lbnQtZG9sbGFyIixpY29uOls1MTIsNTEyLFtdLCJmNjUxIiwiTTI1NiA0ODBjMTQxLjQgMCAyNTYtMTA3LjUgMjU2LTI0MFMzOTcuNCAwIDI1NiAwIDAgMTA3LjUgMCAyNDBjMCA1NC4zIDE5LjIgMTA0LjMgNTEuNiAxNDQuNUwyLjggNDc2LjhjLTQuOCA5LTMuMyAyMCAzLjYgMjcuNXMxNy44IDkuOCAyNy4xIDUuOGwxMTguNC01MC43QzE4My43IDQ3Mi42IDIxOC45IDQ4MCAyNTYgNDgwem00LTM1MmMxMSAwIDIwIDkgMjAgMjBsMCA0IDggMGMxMSAwIDIwIDkgMjAgMjBzLTkgMjAtMjAgMjBsLTQ3LjUgMGMtNi45IDAtMTIuNSA1LjYtMTIuNSAxMi41IDAgNi4xIDQuNCAxMS4zIDEwLjQgMTIuM2w0MS43IDdjMjUuMyA0LjIgNDMuOSAyNi4xIDQzLjkgNTEuOCAwIDI2LjEtMTkgNDcuNy00NCA1MS44bDAgNC43YzAgMTEtOSAyMC0yMCAyMHMtMjAtOS0yMC0yMGwwLTQtMjQgMGMtMTEgMC0yMC05LTIwLTIwczktMjAgMjAtMjBsNTUuNSAwYzYuOSAwIDEyLjUtNS42IDEyLjUtMTIuNSAwLTYuMS00LjQtMTEuMy0xMC40LTEyLjNsLTQxLjctN2MtMjUuMy00LjItNDMuOS0yNi4xLTQzLjktNTEuOCAwLTI4LjggMjMuMi01Mi4yIDUyLTUyLjVsMC00YzAtMTEgOS0yMCAyMC0yMHoiXX0sX3VyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhpcHBvIixpY29uOls2NDAsNTEyLFsxMjk0MzVdLCJmNmVkIiwiTTQwNyA0N2M5LjQtOS40IDI0LjYtOS40IDMzLjkgMGwxNy4yIDE3LjJjMS45LS4xIDMuOS0uMiA1LjgtLjJsMzIgMGMxMS4yIDAgMjEuOSAyLjMgMzEuNiA2LjVMNTQzIDU1YzkuNC05LjQgMjQuNi05LjQgMzMuOSAwczkuNCAyNC42IDAgMzMuOUw1NjQgMTAxLjljNy42IDEyLjIgMTIgMjYuNyAxMiA0Mi4xIDAgMTAuMiA3LjQgMTguOCAxNi43IDIzIDI3LjkgMTIuNSA0Ny4zIDQwLjUgNDcuMyA3MyAwIDI2LjItMTIuNiA0OS40LTMyIDY0bDAgMzJjMCA4LjgtNy4yIDE2LTE2IDE2bC0zMiAwYy04LjggMC0xNi03LjItMTYtMTZsMC0xNi02NCAwIDAgMTZjMCA4LjgtNy4yIDE2LTE2IDE2bC0zMiAwYy04LjggMC0xNi03LjItMTYtMTZsMC0xNy42Yy0xMS44LTIuNC0yMi43LTcuNC0zMi0xNC40LTEuNS0xLjEtMi45LTIuMy00LjMtMy41LTE3LTE0LjctMjcuNy0zNi40LTI3LjctNjAuNSAwLTguOC03LjItMTYtMTYtMTZzLTE2IDcuMi0xNiAxNmMwIDQ0LjcgMjYuMiA4My4yIDY0IDEwMS4ybDAgMTAuOGMwIDE3LjcgMTQuMyAzMiAzMiAzMmwzMiAwIDAgNjRjMCAxNy43LTE0LjMgMzItMzIgMzJsLTY0IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtNzZjLTE5LjggNy43LTQxLjQgMTItNjQgMTJzLTQ0LjItNC4zLTY0LTEybDAgNzZjMCAxNy43LTE0LjMgMzItMzIgMzJsLTY0IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtMTE4LjktMTguMSA0MC43Yy01LjQgMTIuMS0xOS42IDE3LjYtMzEuNyAxMi4yUy0zLjMgMzYyLjQgMi4xIDM1MC4zTDI0IDMwMC45YzUuMy0xMS45IDgtMjQuNyA4LTM3LjcgMC0xMDcuNSA4NS4yLTE5NS4yIDE5MS44LTE5OS4xbC4yLS4xIDY0IDBjNDEuNyAwIDgzLjQgMTIuMSAxMTcuMiAyNS43IDEuNy0xLjggMy41LTMuNiA1LjMtNS4yTDQwNyA4MWMtOS40LTkuNC05LjQtMjQuNiAwLTMzLjl6bTczIDE4NWEyNCAyNCAwIDEgMCAtNDggMCAyNCAyNCAwIDEgMCA0OCAwem04OCAyNGEyNCAyNCAwIDEgMCAwLTQ4IDI0IDI0IDAgMSAwIDAgNDh6TTQ4MCAxNDRhMTYgMTYgMCAxIDAgLTMyIDAgMTYgMTYgMCAxIDAgMzIgMHptNDggMTZhMTYgMTYgMCAxIDAgMC0zMiAxNiAxNiAwIDEgMCAwIDMyeiJdfSxUdXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYm93bC1mb29kIixpY29uOls1MTIsNTEyLFtdLCJlNGM2IiwiTTAgMTc2YzAtMzUuMyAyOC43LTY0IDY0LTY0IC41IDAgMS4xIDAgMS42IDAgNy40LTM2LjUgMzkuNy02NCA3OC40LTY0IDE1IDAgMjkgNC4xIDQwLjkgMTEuMiAxMy4zLTI1LjcgNDAuMS00My4yIDcxLjEtNDMuMnM1Ny44IDE3LjYgNzEuMSA0My4yYzEyLTcuMSAyNi0xMS4yIDQwLjktMTEuMiAzOC43IDAgNzEgMjcuNSA3OC40IDY0IC41IDAgMS4xIDAgMS42IDAgMzUuMyAwIDY0IDI4LjcgNjQgNjQgMCAxMS43LTMuMSAyMi42LTguNiAzMkw4LjYgMjA4QzMuMSAxOTguNiAwIDE4Ny43IDAgMTc2ek0wIDI4My40QzAgMjY4LjMgMTIuMyAyNTYgMjcuNCAyNTZsNDU3LjEgMGMxNS4xIDAgMjcuNCAxMi4zIDI3LjQgMjcuNCAwIDcwLjUtNDQuNCAxMzAuNy0xMDYuNyAxNTQuMUw0MDMuNSA0NTJjLTIgMTYtMTUuNiAyOC0zMS44IDI4bC0yMzEuNSAwYy0xNi4xIDAtMjkuOC0xMi0zMS44LTI4bC0xLjgtMTQuNEM0NC40IDQxNC4xIDAgMzUzLjkgMCAyODMuNHoiXX0sTHVyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNxdWFyZS12aXJ1cyIsaWNvbjpbNDQ4LDUxMixbXSwiZTU3OCIsIk02NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgNDE2YzAgMzUuMyAyOC43IDY0IDY0IDY0bDMyMCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMzIwYzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDMyem0xNjAgODBjMTMuMyAwIDI0IDEwLjcgMjQgMjQgMCAyMi45IDI3LjcgMzQuNCA0My45IDE4LjIgOS40LTkuNCAyNC42LTkuNCAzMy45IDBzOS40IDI0LjYgMCAzMy45Yy0xNi4yIDE2LjItNC43IDQzLjkgMTguMiA0My45IDEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0Yy0yMi45IDAtMzQuNCAyNy43LTE4LjIgNDMuOSA5LjQgOS40IDkuNCAyNC42IDAgMzMuOXMtMjQuNiA5LjQtMzMuOSAwYy0xNi4yLTE2LjItNDMuOS00LjctNDMuOSAxOC4yIDAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0YzAtMjIuOS0yNy43LTM0LjQtNDMuOS0xOC4yLTkuNCA5LjQtMjQuNiA5LjQtMzMuOSAwcy05LjQtMjQuNiAwLTMzLjljMTYuMi0xNi4yIDQuNy00My45LTE4LjItNDMuOS0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0YzIyLjkgMCAzNC40LTI3LjcgMTguMi00My45LTkuNC05LjQtOS40LTI0LjYgMC0zMy45czI0LjYtOS40IDMzLjkgMGMxNi4yIDE2LjIgNDMuOSA0LjcgNDMuOS0xOC4yIDAtMTMuMyAxMC43LTI0IDI0LTI0ek0xOTIgMjQ4YTI0IDI0IDAgMSAwIDAtNDggMjQgMjQgMCAxIDAgMCA0OHptODggNDBhMjQgMjQgMCAxIDAgLTQ4IDAgMjQgMjQgMCAxIDAgNDggMHoiXX0sRHVyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNsb3VkLXN1bi1yYWluIixpY29uOls2NDAsNTEyLFsxMjc3ODJdLCJmNzQzIiwiTTI1NC45IDQ0OC4yYzQuMi0xMi42IDE3LjgtMTkuNCAzMC4zLTE1LjIgMTIuNiA0LjIgMTkuNCAxNy44IDE1LjIgMzAuNGwtMjEuNCA2NC4xYy00LjIgMTIuNi0xNy44IDE5LjQtMzAuNCAxNS4ycy0xOS40LTE3LjgtMTUuMi0zMC4zbDIxLjQtNjQuMnptMTIwIDBjNC4yLTEyLjYgMTcuOC0xOS40IDMwLjMtMTUuMiAxMi42IDQuMiAxOS40IDE3LjggMTUuMiAzMC40bC0yMS40IDY0LjFjLTQuMiAxMi42LTE3LjggMTkuNC0zMC40IDE1LjJzLTE5LjQtMTcuOC0xNS4yLTMwLjNsMjEuNC02NC4yem0xMjAgMGM0LjItMTIuNiAxNy44LTE5LjQgMzAuMy0xNS4yIDEyLjYgNC4yIDE5LjQgMTcuOCAxNS4yIDMwLjRsLTIxLjQgNjQuMWMtNC4yIDEyLjYtMTcuOCAxOS40LTMwLjQgMTUuMnMtMTkuNC0xNy44LTE1LjItMzAuM2wyMS40LTY0LjJ6TTQ0OC4zIDEyOGM0NC4yIDAgODAgMzUuOCA4MCA4MCAwIDcuNS0xLjEgMTQuNy0zIDIxLjUgMjkuOCAxMS42IDUxIDQwLjYgNTEgNzQuNSAwIDQ0LjItMzUuOCA4MC04MCA4MGwtMTkyIDAtOC4yLS40Yy00MC4zLTQuMS03MS44LTM4LjItNzEuOC03OS42IDAtMzkgMjcuOS03MS41IDY0LjktNzguNS0uNS0zLjEtLjktNi4yLS45LTkuNSAwLTMwLjkgMjUuMS01NiA1Ni01NiAxMi40IDAgMjMuOSA0LjEgMzMuMiAxMC45IDEzLjQtMjUuNSA0MC4xLTQyLjkgNzAuOC00Mi45ek0yNDAuMy0zMS44YzUuMyAwIDEwLjMgMi43IDEzLjMgNy4xbDQ3LjMgNzAuNCA4My4zLTE2LjNjNS4yLTEgMTAuNiAuNyAxNC4zIDQuNCAzLjggMy44IDUuNCA5LjIgNC40IDE0LjRsLTguNiA0My44Yy0xMS45IDUuNS0yMi44IDEyLjktMzIuNCAyMS42LTUuNy0xLTExLjctMS41LTE3LjctMS41LTE0LjMgMC0yOCAzLTQwLjQgOC4yLTE2LjktMTUtMzkuMi0yNC4yLTYzLjYtMjQuMi01MyAwLTk2IDQzLTk2IDk2IDAgMzAuOSAxNC42IDU4LjIgMzcuMiA3NS44LTMuNCAxMS41LTUuMiAyMy42LTUuMiAzNi4yIDAgMTMuMiAyIDI1LjkgNS43IDM3LjlsLTIuNC0zLjUtODMuMiAxNi4zYy01LjIgMS0xMC42LS43LTE0LjMtNC40LTMuOC0zLjgtNS40LTkuMi00LjQtMTQuNGwxNi4zLTgzLjMtNzAuNC00Ny40Yy00LjQtMy03LjEtOC03LjEtMTMuMyAwLTUuMyAyLjYtMTAuMyA3LTEzLjJsNzAuNC00Ny40LTE2LjMtODMuMi0uMi0yYy0uMy00LjYgMS4zLTkuMSA0LjYtMTIuNCAzLjgtMy44IDkuMi01LjQgMTQuNC00LjRsODMuMiAxNi4zIDQ3LjMtNzAuNCAxLjItMS42YzMtMy41IDcuNC01LjUgMTIuMS01LjV6bTAgMTc1LjhjOC42IDAgMTYuNiAyLjMgMjMuNiA2LjItOS43IDExLjktMTYuOSAyNS45LTIwLjcgNDEuMy0xNSA4LjEtMjguMiAxOS4yLTM4LjggMzIuMy03LjUtOC41LTEyLjItMTkuNi0xMi4yLTMxLjggMC0yNi41IDIxLjUtNDggNDgtNDh6Il19LExDZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJhcnJvdy1yaWdodC1sb25nIixpY29uOls1NzYsNTEyLFsibG9uZy1hcnJvdy1yaWdodCJdLCJmMTc4IiwiTTU2Ni42IDI3OC42YzEyLjUtMTIuNSAxMi41LTMyLjggMC00NS4zbC0xMjgtMTI4Yy0xMi41LTEyLjUtMzIuOC0xMi41LTQ1LjMgMHMtMTIuNSAzMi44IDAgNDUuM0w0NjYuNyAyMjQgMzIgMjI0Yy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDQzNC43IDAtNzMuNCA3My40Yy0xMi41IDEyLjUtMTIuNSAzMi44IDAgNDUuM3MzMi44IDEyLjUgNDUuMyAwbDEyOC0xMjh6Il19LEF1cj1MQ2UsRXVyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJ1aWxkaW5nLXVuIixpY29uOls1MTIsNTEyLFtdLCJlNGQ5IiwiTTMyIDY0QzMyIDI4LjcgNjAuNyAwIDk2IDBMMzUyIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAyNzItMTEyIDBjLTIwLjkgMC0zOS41IDEwLjEtNTEuMiAyNS42LTgtNi0xOC05LjYtMjguOC05LjYtMjYuNSAwLTQ4IDIxLjUtNDggNDhsMCA2NCA2NCAwIDAgNDgtMTQ0IDBjLTM1LjMgMC02NC0yOC43LTY0LTY0TDMyIDY0ek0xNDQgOTZjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDMyYzAgOC44IDcuMiAxNiAxNiAxNmwzMiAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMHptMTEyIDE2bDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMzJjMC04LjgtNy4yLTE2LTE2LTE2bC0zMiAwYy04LjggMC0xNiA3LjItMTYgMTZ6TTE0NCAyMjRjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDMyYzAgOC44IDcuMiAxNiAxNiAxNmwzMiAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMHptMTEyIDE2bDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMzJjMC04LjgtNy4yLTE2LTE2LTE2bC0zMiAwYy04LjggMC0xNiA3LjItMTYgMTZ6TTQyNy40IDM4MC41YzktMi4xIDE4LjMgMi4yIDIyLjUgMTAuNWwyNi4xIDUyLjIgMC00My4zYzAtMTEgOS0yMCAyMC0yMHMyMCA5IDIwIDIwbDAgMTI4YzAgOS4zLTYuNCAxNy4zLTE1LjQgMTkuNXMtMTguMy0yLjItMjIuNS0xMC41TDQ1MiA0ODQuNyA0NTIgNTI4YzAgMTEtOSAyMC0yMCAyMHMtMjAtOS0yMC0yMGwwLTEyOGMwLTkuMyA2LjQtMTcuMyAxNS40LTE5LjV6TTMyNCA0MDBsMCA5NmMwIDYuNiA1LjQgMTIgMTIgMTJzMTItNS40IDEyLTEybDAtOTZjMC0xMSA5LTIwIDIwLTIwczIwIDkgMjAgMjBsMCA5NmMwIDI4LjctMjMuMyA1Mi01MiA1MnMtNTItMjMuMy01Mi01MmwwLTk2YzAtMTEgOS0yMCAyMC0yMHMyMCA5IDIwIDIweiJdfSwkdXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidGVtcGVyYXR1cmUtbG93IixpY29uOls1MTIsNTEyLFtdLCJmNzZiIiwiTTk2IDk2YzAtNTMgNDMtOTYgOTYtOTZzOTYgNDMgOTYgOTZsMCAxNjQuN2MyOS41IDI2LjQgNDggNjQuNyA0OCAxMDcuMyAwIDc5LjUtNjQuNSAxNDQtMTQ0IDE0NFM0OCA0NDcuNSA0OCAzNjhjMC00Mi42IDE4LjUtODEgNDgtMTA3LjNMOTYgOTZ6bTk2IDMzNmMzNS4zIDAgNjQtMjguNyA2NC02NCAwLTI2LjktMTYuNS00OS45LTQwLTU5LjNsMC0yOC43YzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0bDAgMjguN2MtMjMuNSA5LjUtNDAgMzIuNS00MCA1OS4zIDAgMzUuMyAyOC43IDY0IDY0IDY0ek00NjQgODBhMzIgMzIgMCAxIDAgLTY0IDAgMzIgMzIgMCAxIDAgNjQgMHpNMzUyIDgwYTgwIDgwIDAgMSAxIDE2MCAwIDgwIDgwIDAgMSAxIC0xNjAgMHoiXX0sUHVyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImRvb3Itb3BlbiIsaWNvbjpbNDQ4LDUxMixbXSwiZjUyYiIsIk0yODggNjRsNjQgMCAwIDQxNmMwIDE3LjcgMTQuMyAzMiAzMiAzMmwzMiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybDAtMzg0YzAtMzUuMy0yOC43LTY0LTY0LTY0bC05NiAwIDAgMC0xNjAgMEM2MC43IDAgMzIgMjguNyAzMiA2NGwwIDM4NGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmwyMjQgMGMxNy43IDAgMzItMTQuMyAzMi0zMmwwLTQxNnpNMTYwIDI1NmEzMiAzMiAwIDEgMSA2NCAwIDMyIDMyIDAgMSAxIC02NCAweiJdfSxJdXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYWxpZ24tbGVmdCIsaWNvbjpbNDQ4LDUxMixbXSwiZjAzNiIsIk0yODggNjRjMCAxNy43LTE0LjMgMzItMzIgMzJMMzIgOTZDMTQuMyA5NiAwIDgxLjcgMCA2NFMxNC4zIDMyIDMyIDMybDIyNCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMyem0wIDI1NmMwIDE3LjctMTQuMyAzMi0zMiAzMkwzMiAzNTJjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsMjI0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJ6TTAgMTkyYzAtMTcuNyAxNC4zLTMyIDMyLTMybDM4NCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMyTDMyIDIyNGMtMTcuNyAwLTMyLTE0LjMtMzItMzJ6TTQ0OCA0NDhjMCAxNy43LTE0LjMgMzItMzIgMzJMMzIgNDgwYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDM4NCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMyeiJdfSxEQ2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2FtZXJhIixpY29uOls1MTIsNTEyLFs2MjI1OCwiY2FtZXJhLWFsdCJdLCJmMDMwIiwiTTE0OS4xIDY0LjhMMTM4LjcgOTYgNjQgOTZDMjguNyA5NiAwIDEyNC43IDAgMTYwTDAgNDE2YzAgMzUuMyAyOC43IDY0IDY0IDY0bDM4NCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMjU2YzAtMzUuMy0yOC43LTY0LTY0LTY0bC03NC43IDAtMTAuNC0zMS4yQzM1Ni40IDQ1LjIgMzM4LjEgMzIgMzE3LjQgMzJMMTk0LjYgMzJjLTIwLjcgMC0zOSAxMy4yLTQ1LjUgMzIuOHpNMjU2IDE5MmE5NiA5NiAwIDEgMSAwIDE5MiA5NiA5NiAwIDEgMSAwLTE5MnoiXX0sTnVyPURDZSxGdXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidXNlcnMtcmF5cyIsaWNvbjpbNjQwLDUxMixbXSwiZTU5MyIsIk0zMS0zM0MyMS43LTIzLjYgMjEuNy04LjQgMzEgMUw4NyA1N2M5LjQgOS40IDI0LjYgOS40IDMzLjkgMHM5LjQtMjQuNiAwLTMzLjlMNjUtMzNjLTkuNC05LjQtMjQuNi05LjQtMzMuOSAwek02MDktMzNjLTkuNC05LjQtMjQuNi05LjQtMzMuOSAwTDUxOSAyM2MtOS40IDkuNC05LjQgMjQuNiAwIDMzLjlzMjQuNiA5LjQgMzMuOSAwTDYwOSAxYzkuNC05LjQgOS40LTI0LjYgMC0zMy45ek02NSA1NDVsNTYtNTZjOS40LTkuNCA5LjQtMjQuNiAwLTMzLjlzLTI0LjYtOS40LTMzLjkgMEwzMSA1MTFjLTkuNCA5LjQtOS40IDI0LjYgMCAzMy45czI0LjYgOS40IDMzLjkgMHptNTQ0IDBjOS40LTkuNCA5LjQtMjQuNiAwLTMzLjlsLTU2LTU2Yy05LjQtOS40LTI0LjYtOS40LTMzLjkgMHMtOS40IDI0LjYgMCAzMy45bDU2IDU2YzkuNCA5LjQgMjQuNiA5LjQgMzMuOSAwek0zMjAgMjA4YTY0IDY0IDAgMSAwIDAtMTI4IDY0IDY0IDAgMSAwIDAgMTI4em0wIDMyYy02MS45IDAtMTEyIDUwLjEtMTEyIDExMmwwIDhjMCAxMy4zIDEwLjcgMjQgMjQgMjRsMTc2IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRsMC04YzAtNjEuOS01MC4xLTExMi0xMTItMTEyem0yMTYtODBhNTYgNTYgMCAxIDAgLTExMiAwIDU2IDU2IDAgMSAwIDExMiAwek00NTEuMiAyNjAuNEM0NjkuNCAyODYuMyA0ODAgMzE3LjkgNDgwIDM1MmwwIDhjMCA4LjQtMS40IDE2LjUtNC4xIDI0bDc4LjggMGMxMS44IDAgMjEuMy05LjYgMjEuMy0yMS4zbDAtMTAuN2MwLTUzLTQzLTk2LTk2LTk2LTEwIDAtMTkuNyAxLjUtMjguOCA0LjR6bS0yNjIuNCAwYy05LjEtMi45LTE4LjgtNC40LTI4LjgtNC40LTUzIDAtOTYgNDMtOTYgOTZsMCAxMC43YzAgMTEuOCA5LjYgMjEuMyAyMS4zIDIxLjNsNzguOCAwYy0yLjctNy41LTQuMS0xNS42LTQuMS0yNGwwLThjMC0zNC4xIDEwLjYtNjUuNyAyOC44LTkxLjZ6TTIxNiAxNjBhNTYgNTYgMCAxIDAgLTExMiAwIDU2IDU2IDAgMSAwIDExMiAweiJdfSxPdXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicmFpbmJvdyIsaWNvbjpbNjQwLDUxMixbMTI3NzUyXSwiZjc1YiIsIk0zMjAgOTZDMTc4LjYgOTYgNjQgMjEwLjYgNjQgMzUybDAgNjRjMCAxNy43LTE0LjMgMzItMzIgMzJTMCA0MzMuNyAwIDQxNmwwLTY0QzAgMTc1LjMgMTQzLjMgMzIgMzIwIDMyUzY0MCAxNzUuMyA2NDAgMzUybDAgNjRjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC02NEM1NzYgMjEwLjYgNDYxLjQgOTYgMzIwIDk2em0wIDExMmMtNzkuNSAwLTE0NCA2NC41LTE0NCAxNDRsMCA2NGMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTY0YzAtMTE0LjkgOTMuMS0yMDggMjA4LTIwOHMyMDggOTMuMSAyMDggMjA4bDAgNjRjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC02NGMwLTc5LjUtNjQuNS0xNDQtMTQ0LTE0NHpNMjg4IDM1MmwwIDY0YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtNjRjMC01MyA0My05NiA5Ni05NnM5NiA0MyA5NiA5NmwwIDY0YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtNjRjMC0xNy43LTE0LjMtMzItMzItMzJzLTMyIDE0LjMtMzIgMzJ6Il19LFJ1cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzaXRlbWFwIixpY29uOls1MTIsNTEyLFtdLCJmMGU4IiwiTTE5MiA2NGMwLTE3LjcgMTQuMy0zMiAzMi0zMmw2NCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgNjRjMCAxNy43LTE0LjMgMzItMzIgMzJsLTggMCAwIDY0IDEyMCAwYzM5LjggMCA3MiAzMi4yIDcyIDcybDAgNTYgOCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgNjRjMCAxNy43LTE0LjMgMzItMzIgMzJsLTY0IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtNjRjMC0xNy43IDE0LjMtMzIgMzItMzJsOCAwIDAtNTZjMC0xMy4zLTEwLjctMjQtMjQtMjRsLTEyMCAwIDAgODAgOCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgNjRjMCAxNy43LTE0LjMgMzItMzIgMzJsLTY0IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtNjRjMC0xNy43IDE0LjMtMzIgMzItMzJsOCAwIDAtODAtMTIwIDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0bDAgNTYgOCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgNjRjMCAxNy43LTE0LjMgMzItMzIgMzJsLTY0IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtNjRjMC0xNy43IDE0LjMtMzIgMzItMzJsOCAwIDAtNTZjMC0zOS44IDMyLjItNzIgNzItNzJsMTIwIDAgMC02NC04IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtNjR6Il19LEFDZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmYWNlLWdyaW4tc3RhcnMiLGljb246WzUxMiw1MTIsWzEyOTMyMSwiZ3Jpbi1zdGFycyJdLCJmNTg3IiwiTTI1NiA1MTJjMTQxLjQgMCAyNTYtMTE0LjYgMjU2LTI1NiAwLTI0LjQtMy40LTQ4LjEtOS44LTcwLjUgMTguNi0zNi4xLTIuNy04My42LTQ2LjctOTAtNDYuOS01OC4zLTExOC45LTk1LjUtMTk5LjUtOTUuNVMxMDMuNCAzNy4zIDU2LjUgOTUuNWMtNDQgNi40LTY1LjMgNTMuOS00Ni43IDkwLTYuNCAyMi40LTkuOCA0Ni05LjggNzAuNSAwIDE0MS40IDExNC42IDI1NiAyNTYgMjU2ek0zODYuNyAzMjQuOWMxMS45LTMuNyAyMy45IDYuMyAxOS42IDE4LjEtMjIuNCA2MS4zLTgxLjMgMTA1LjEtMTUwLjMgMTA1LjFTMTI4LjEgNDA0LjIgMTA1LjcgMzQyLjljLTQuMy0xMS44IDcuNy0yMS44IDE5LjYtMTguMSAzOS4yIDEyLjIgODMuNyAxOS4xIDEzMC43IDE5LjFzOTEuNS02LjkgMTMwLjctMTkuMXptLTMxLjYtMjMxYzUuMy0xMC43IDIwLjUtMTAuNyAyNS44IDBsMjAuOSA0Mi40IDQ2LjcgNi44YzExLjggMS43IDE2LjUgMTYuMiA4IDI0LjVsLTMzLjggMzMgOCA0Ni42YzIgMTEuNy0xMC4zIDIwLjctMjAuOSAxNS4ybC00MS44LTIyLTQxLjggMjJjLTEwLjUgNS41LTIyLjktMy40LTIwLjktMTUuMmw4LTQ2LjYtMzMuOC0zM2MtOC41LTguMy0zLjgtMjIuOCA4LTI0LjVsNDYuNy02LjggMjAuOS00Mi40em0tMTk4LjIgMGwyMC45IDQyLjQgNDYuNyA2LjhjMTEuOCAxLjcgMTYuNSAxNi4yIDggMjQuNWwtMzMuOCAzMyA4IDQ2LjZjMiAxMS43LTEwLjMgMjAuNy0yMC45IDE1LjJsLTQxLjgtMjItNDEuOCAyMmMtMTAuNSA1LjUtMjIuOS0zLjQtMjAuOS0xNS4ybDgtNDYuNi0zMy44LTMzYy04LjUtOC4zLTMuOC0yMi44IDgtMjQuNWw0Ni43LTYuOCAyMC45LTQyLjRjNS4zLTEwLjcgMjAuNS0xMC43IDI1LjggMHoiXX0sQnVyPUFDZSxFQ2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic29ydC11cCIsaWNvbjpbMzg0LDUxMixbInNvcnQtYXNjIl0sImYwZGUiLCJNMzIgMjI0Yy0xMi45IDAtMjQuNi03LjgtMjkuNi0xOS44Uy4yIDE3OC41IDkuNCAxNjkuNGwxNjAtMTYwYzEyLjUtMTIuNSAzMi44LTEyLjUgNDUuMyAwbDE2MCAxNjBjOS4yIDkuMiAxMS45IDIyLjkgNi45IDM0LjlTMzY0LjkgMjI0IDM1MiAyMjRMMzIgMjI0eiJdfSxIdXI9RUNlLHRsZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJleWUiLGljb246WzU3Niw1MTIsWzEyODA2NV0sImYwNmUiLCJNMjg4IDMyYy04MC44IDAtMTQ1LjUgMzYuOC0xOTIuNiA4MC42LTQ2LjggNDMuNS03OC4xIDk1LjQtOTMgMTMxLjEtMy4zIDcuOS0zLjMgMTYuNyAwIDI0LjYgMTQuOSAzNS43IDQ2LjIgODcuNyA5MyAxMzEuMSA0Ny4xIDQzLjcgMTExLjggODAuNiAxOTIuNiA4MC42czE0NS41LTM2LjggMTkyLjYtODAuNmM0Ni44LTQzLjUgNzguMS05NS40IDkzLTEzMS4xIDMuMy03LjkgMy4zLTE2LjcgMC0yNC42LTE0LjktMzUuNy00Ni4yLTg3LjctOTMtMTMxLjEtNDcuMS00My43LTExMS44LTgwLjYtMTkyLjYtODAuNnpNMTQ0IDI1NmExNDQgMTQ0IDAgMSAxIDI4OCAwIDE0NCAxNDQgMCAxIDEgLTI4OCAwem0xNDQtNjRjMCAzNS4zLTI4LjcgNjQtNjQgNjQtMTEuNSAwLTIyLjMtMy0zMS43LTguNC0xIDEwLjktLjEgMjIuMSAyLjkgMzMuMiAxMy43IDUxLjIgNjYuNCA4MS42IDExNy42IDY3LjlzODEuNi02Ni40IDY3LjktMTE3LjZjLTEyLjItNDUuNy01NS41LTc0LjgtMTAxLjEtNzAuOCA1LjMgOS4zIDguNCAyMC4xIDguNCAzMS43eiJdfSxybGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2FyZXQtbGVmdCIsaWNvbjpbMjU2LDUxMixbXSwiZjBkOSIsIk03LjcgMjM1LjhjLTEwLjMgMTIuNi05LjUgMzEuMSAyLjIgNDIuOGwxMjggMTI4YzkuMiA5LjIgMjIuOSAxMS45IDM0LjkgNi45czE5LjgtMTYuNiAxOS44LTI5LjZsMC0yNTZjMC0xMi45LTcuOC0yNC42LTE5LjgtMjkuNnMtMjUuNy0yLjItMzQuOSA2LjlsLTEyOCAxMjgtMi4yIDIuNHoiXX0sJENlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFwcGxlLXdob2xlIixpY29uOls0NDgsNTEyLFsxMjc4MjIsMTI3ODIzLCJhcHBsZS1hbHQiXSwiZjVkMSIsIk0yMjQgMTEyYy04LjggMC0xNi03LjItMTYtMTZsMC0xNmMwLTQ0LjIgMzUuOC04MCA4MC04MGwxNiAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDE2YzAgNDQuMi0zNS44IDgwLTgwIDgwbC0xNiAwek0wIDI4OGMwLTc2LjMgMzUuNy0xNjAgMTEyLTE2MCAyNy4zIDAgNTkuNyAxMC4zIDgyLjcgMTkuMyAxOC44IDcuMyAzOS45IDcuMyA1OC43IDAgMjIuOS04LjkgNTUuNC0xOS4zIDgyLjctMTkuMyA3Ni4zIDAgMTEyIDgzLjcgMTEyIDE2MCAwIDEyOC04MCAyMjQtMTYwIDIyNC0xNi41IDAtMzguMS02LjYtNTEuNS0xMS4zLTguMS0yLjgtMTYuOS0yLjgtMjUgMC0xMy40IDQuNy0zNSAxMS4zLTUxLjUgMTEuMy04MCAwLTE2MC05Ni0xNjAtMjI0eiJdfSxxdXI9JENlLFBDZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzY3JvbGwtdG9yYWgiLGljb246WzU3Niw1MTIsWyJ0b3JhaCJdLCJmNmEwIiwiTTAgNDhDMCAyMS41IDIxLjUgMCA0OCAwIDY4LjkgMCA4Ni43IDEzLjQgOTMuMyAzMmwzODkuNSAwYzYuNi0xOC42IDI0LjQtMzIgNDUuMy0zMiAyNi41IDAgNDggMjEuNSA0OCA0OGwwIDQxNmMwIDI2LjUtMjEuNSA0OC00OCA0OC0yMC45IDAtMzguNy0xMy40LTQ1LjMtMzJMOTMuMyA0ODBjLTYuNiAxOC42LTI0LjQgMzItNDUuMyAzMi0yNi41IDAtNDgtMjEuNS00OC00OEwwIDQ4ek0xNzcuOSAzMDFjLTEuMiAyLTEuOSA0LjItMS45IDYuNiAwIDYuOSA1LjYgMTIuNSAxMi41IDEyLjVsNTYuOSAwIDMwLjUgNDkuMmMyLjYgNC4yIDcuMiA2LjggMTIuMiA2LjhzOS42LTIuNiAxMi4yLTYuOGwzMC41LTQ5LjIgNTYuOSAwYzYuOSAwIDEyLjUtNS42IDEyLjUtMTIuNSAwLTIuMy0uNi00LjYtMS45LTYuNmwtMjcuOC00NSAyNy44LTQ1YzEuMi0yIDEuOS00LjIgMS45LTYuNiAwLTYuOS01LjYtMTIuNS0xMi41LTEyLjVsLTU2LjkgMC0zMC41LTQ5LjJjLTIuNi00LjItNy4yLTYuOC0xMi4yLTYuOHMtOS42IDIuNi0xMi4yIDYuOGwtMzAuNSA0OS4yLTU2LjkgMGMtNi45IDAtMTIuNSA1LjYtMTIuNSAxMi41IDAgMi4zIC42IDQuNiAxLjkgNi42bDI3LjggNDUtMjcuOCA0NXoiXX0sanVyPVBDZSxWdXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaG91c2UtbG9jayIsaWNvbjpbNjQwLDUxMixbXSwiZTUxMCIsIk01MjggMjI0LjFjNDQuMiAwIDgwIDM1LjggODAgODBsMCA1MC42YzE4LjYgNi42IDMyIDI0LjQgMzIgNDUuM2wwIDk2YzAgMjYuNS0yMS41IDQ4LTQ4IDQ4bC0xMjggMGMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhsMC05NmMwLTIwLjkgMTMuNC0zOC43IDMyLTQ1LjNsMC01MC42YzAtNDQuMiAzNS44LTgwIDgwLTgwek0yNjguNiA2LjVjMTIuMi05LjMgMjkuNy04LjcgNDEuMiAybDE4NSAxNzEuOEM0NDAuMiAxOTUgNDAwIDI0NC44IDQwMCAzMDRsMCAyNC40Yy0xOS42IDE3LjYtMzIgNDMuMS0zMiA3MS41bDAgOTZjMCA1LjUgLjUgMTAuOSAxLjMgMTYuMUwxNDQgNTEyYy0zNS4zIDAtNjQtMjguNy02NC02NGwwLTE3Ni0xNiAwYy0xMy4yIDAtMjUtOC4xLTI5LjgtMjAuM3MtMS42LTI2LjIgOC0zNS4xbDIyNC0yMDggMi40LTJ6TTI3MiAzMjBjLTI2LjUgMC00OCAyMS41LTQ4IDQ4bDAgOTYgOTYgMCAwLTg3LjNjMC0xNi41IDctMzEuNSAxOC40LTQyLjEtOC43LTktMjAuOS0xNC42LTM0LjQtMTQuNmwtMzIgMHptMjU2LTQ3LjljLTE3LjcgMC0zMiAxNC4zLTMyIDMybDAgNDcuOSA2NCAwIDAtNDcuOWMwLTE3LjctMTQuMy0zMi0zMi0zMnoiXX0sVXVyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFycm93cy1sZWZ0LXJpZ2h0LXRvLWxpbmUiLGljb246WzU3Niw1MTIsW10sImU0YmEiLCJNMzIgOTZDMTQuMyA5NiAwIDExMC4zIDAgMTI4TDAgMzg0YzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0yNTZjMC0xNy43LTE0LjMtMzItMzItMzJ6TTM5MC42IDM0Mi42bDY0LTY0YzEyLjUtMTIuNSAxMi41LTMyLjggMC00NS4zbC02NC02NGMtMTIuNS0xMi41LTMyLjgtMTIuNS00NS4zIDBzLTEyLjUgMzIuOCAwIDQ1LjNsOS40IDkuNC0xMzMuNSAwIDkuNC05LjRjMTIuNS0xMi41IDEyLjUtMzIuOCAwLTQ1LjNzLTMyLjgtMTIuNS00NS4zIDBsLTY0IDY0Yy02IDYtOS40IDE0LjEtOS40IDIyLjZzMy40IDE2LjYgOS40IDIyLjZsNjQgNjRjMTIuNSAxMi41IDMyLjggMTIuNSA0NS4zIDBzMTIuNS0zMi44IDAtNDUuM2wtOS40LTkuNCAxMzMuNSAwLTkuNCA5LjRjLTEyLjUgMTIuNS0xMi41IDMyLjggMCA0NS4zczMyLjggMTIuNSA0NS4zIDB6TTU3NiAxMjhjMC0xNy43LTE0LjMtMzItMzItMzJzLTMyIDE0LjMtMzIgMzJsMCAyNTZjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTI1NnoiXX0sWXc9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidHJhc2giLGljb246WzQ0OCw1MTIsW10sImYxZjgiLCJNMTM2LjcgNS45TDEyOCAzMiAzMiAzMkMxNC4zIDMyIDAgNDYuMyAwIDY0UzE0LjMgOTYgMzIgOTZsMzg0IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTk2IDAtOC43LTI2LjFDMzA2LjktNy4yIDI5NC43LTE2IDI4MC45LTE2TDE2Ny4xLTE2Yy0xMy44IDAtMjYgOC44LTMwLjQgMjEuOXpNNDE2IDE0NEwzMiAxNDQgNTMuMSA0NjcuMUM1NC43IDQ5Mi40IDc1LjcgNTEyIDEwMSA1MTJMMzQ3IDUxMmMyNS4zIDAgNDYuMy0xOS42IDQ3LjktNDQuOUw0MTYgMTQ0eiJdfSxJQ2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmFjZS1zYWQtdGVhciIsaWNvbjpbNTEyLDUxMixbMTI4NTQ2LCJzYWQtdGVhciJdLCJmNWI0IiwiTTAgMjU2YTI1NiAyNTYgMCAxIDEgNTEyIDAgMjU2IDI1NiAwIDEgMSAtNTEyIDB6bTI3MSA5OGM1LjUtMS4zIDExLjEtMiAxNy0yIDI0LjEgMCA0NS40IDExLjggNTguNSAzMCA3LjcgMTAuOCAyMi43IDEzLjIgMzMuNSA1LjVzMTMuMi0yMi43IDUuNS0zMy41Yy0yMS43LTMwLjItNTcuMy01MC05Ny41LTUwLTEyLjUgMC0yNC42IDEuOS0zNS45IDUuNSA5LjggMTIuNyAxNi41IDI3LjkgMTguOSA0NC42ek0xNzYgMjQwYTMyIDMyIDAgMSAwIDAtNjQgMzIgMzIgMCAxIDAgMCA2NHptMTkyLTMyYTMyIDMyIDAgMSAwIC02NCAwIDMyIDMyIDAgMSAwIDY0IDB6TTE4NS40IDI5Mi44Yy0yLjQtMi45LTUuNy00LjgtOS40LTQuOHMtNyAxLjktOS40IDQuOGMtNi41IDcuOC0xMi42IDE2LjEtMTguMyAyNC42LTkgMTMuNC0yMC4zIDMwLjItMjAuMyA0Ny40IDAgMjguMyAyMS41IDUxLjIgNDggNTEuMnM0OC0yMi45IDQ4LTUxLjJjMC0xNy4yLTExLjItMzQtMjAuMy00Ny40LTUuNy04LjUtMTEuOS0xNi43LTE4LjMtMjQuNnoiXX0sV3VyPUlDZSxHdXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmF4IixpY29uOls1MTIsNTEyLFsxMjgyMjQsMTI4NDM5XSwiZjFhYyIsIk0xNjAgNjRsMCA4MCA2NCAwIDAtODAgMTQ2LjcgMCA0NS4zIDQ1LjMgMCAzNC43IDY0IDAgMC0zNC43YzAtMTctNi43LTMzLjMtMTguNy00NS4zTDQxNiAxOC43QzQwNCA2LjcgMzg3LjcgMCAzNzAuNyAwTDIyNCAwYy0zNS4zIDAtNjQgMjguNy02NCA2NHpNMzIgMTI4Yy0xNy43IDAtMzIgMTQuMy0zMiAzMkwwIDQ0OGMwIDE3LjcgMTQuMyAzMiAzMiAzMmw0OCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtMjg4YzAtMTcuNy0xNC4zLTMyLTMyLTMybC00OCAwem00NDggNjRsLTMyMCAwIDAgMjU2YzAgMTcuNyAxNC4zIDMyIDMyIDMybDI4OCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtMjI0YzAtMTcuNy0xNC4zLTMyLTMyLTMyek0yMjQgMjg4YTI0IDI0IDAgMSAxIDQ4IDAgMjQgMjQgMCAxIDEgLTQ4IDB6bTAgOTZhMjQgMjQgMCAxIDEgNDggMCAyNCAyNCAwIDEgMSAtNDggMHpNMzM2IDI2NGEyNCAyNCAwIDEgMSAwIDQ4IDI0IDI0IDAgMSAxIDAtNDh6TTMxMiAzODRhMjQgMjQgMCAxIDEgNDggMCAyNCAyNCAwIDEgMSAtNDggMHpNNDI0IDI2NGEyNCAyNCAwIDEgMSAwIDQ4IDI0IDI0IDAgMSAxIDAtNDh6TTQwMCAzODRhMjQgMjQgMCAxIDEgNDggMCAyNCAyNCAwIDEgMSAtNDggMHoiXX0sWXVyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBlcnNvbi1jaXJjbGUtcGx1cyIsaWNvbjpbNjQwLDUxMixbXSwiZTU0MSIsIk0yODAgMjRhNTYgNTYgMCAxIDAgLTExMiAwIDU2IDU2IDAgMSAwIDExMiAwem0yNCAyMTIuN0wzNDEgMjg2LjZjMTIuOC0xNy41IDI4LjUtMzIuNyA0Ni4zLTQ1bC01Ni4yLTc1LjdDMzA2IDEzMiAyNjYuMyAxMTIgMjI0IDExMnMtODIgMjAtMTA3LjIgNTMuOWwtNzAuNSA5NWMtMTAuNSAxNC4yLTcuNiAzNC4yIDYuNiA0NC44czM0LjIgNy42IDQ0LjgtNi42TDE0NCAyMzYuNyAxNDQgNTEyYzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0xNjBjMC04LjggNy4yLTE2IDE2LTE2czE2IDcuMiAxNiAxNmwwIDE2MGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMjc1LjN6TTQ5NiA1NDRhMTQ0IDE0NCAwIDEgMCAwLTI4OCAxNDQgMTQ0IDAgMSAwIDAgMjg4em0xNi0yMDhsMCA0OCA0OCAwYzguOCAwIDE2IDcuMiAxNiAxNnMtNy4yIDE2LTE2IDE2bC00OCAwIDAgNDhjMCA4LjgtNy4yIDE2LTE2IDE2cy0xNi03LjItMTYtMTZsMC00OC00OCAwYy04LjggMC0xNi03LjItMTYtMTZzNy4yLTE2IDE2LTE2bDQ4IDAgMC00OGMwLTguOCA3LjItMTYgMTYtMTZzMTYgNy4yIDE2IDE2eiJdfSxadXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaGFtc2EiLGljb246WzUxMiw1MTIsW10sImY2NjUiLCJNMzQuNiAyODhMODAgMjg4YzguOCAwIDE2LTcuMiAxNi0xNkw5NiA3MmMwLTIyLjEgMTcuOS00MCA0MC00MHM0MCAxNy45IDQwIDQwbDAgMTMyYzAgMTEgOSAyMCAyMCAyMHMyMC05IDIwLTIwbDAtMTY0YzAtMjIuMSAxNy45LTQwIDQwLTQwczQwIDE3LjkgNDAgNDBsMCAxNjRjMCAxMSA5IDIwIDIwIDIwczIwLTkgMjAtMjBsMC0xMzJjMC0yMi4xIDE3LjktNDAgNDAtNDBzNDAgMTcuOSA0MCA0MGwwIDIwMGMwIDguOCA3LjIgMTYgMTYgMTZsNDUuNCAwYzE5LjEgMCAzNC42IDE1LjUgMzQuNiAzNC42IDAgOC42LTMuMiAxNi45LTkgMjMuM0w0MTYuNiA0NDFjLTQxLjEgNDUuMi05OS40IDcxLTE2MC42IDcxUzEzNi42IDQ4Ni4yIDk1LjQgNDQxTDkgMzQ1LjljLTUuOC02LjQtOS0xNC43LTktMjMuMyAwLTE5LjEgMTUuNS0zNC42IDM0LjYtMzQuNnpNMjU2IDI4OGMtMzguNCAwLTc2LjggMzUuOC05MC42IDUwLjItMy42IDMuNy01LjQgOC43LTUuNCAxMy44czEuOCAxMC4xIDUuNCAxMy44QzE3OS4yIDM4MC4yIDIxNy42IDQxNiAyNTYgNDE2czc2LjgtMzUuOCA5MC42LTUwLjJjMy42LTMuNyA1LjQtOC43IDUuNC0xMy44cy0xLjgtMTAuMS01LjQtMTMuOEMzMzIuOCAzMjMuOCAyOTQuNCAyODggMjU2IDI4OHptMCAzMmEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6Il19LFh1cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwZXJzb24tY2lyY2xlLXF1ZXN0aW9uIixpY29uOls2NDAsNTEyLFtdLCJlNTQyIiwiTTI4MCAyNGE1NiA1NiAwIDEgMCAtMTEyIDAgNTYgNTYgMCAxIDAgMTEyIDB6bTI0IDIxMi43TDM0MSAyODYuNmMxMi44LTE3LjUgMjguNS0zMi43IDQ2LjMtNDVsLTU2LjItNzUuN0MzMDYgMTMyIDI2Ni4zIDExMiAyMjQgMTEycy04MiAyMC0xMDcuMiA1My45bC03MC41IDk1Yy0xMC41IDE0LjItNy42IDM0LjIgNi42IDQ0LjhzMzQuMiA3LjYgNDQuOC02LjZMMTQ0IDIzNi43IDE0NCA1MTJjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTE2MGMwLTguOCA3LjItMTYgMTYtMTZzMTYgNy4yIDE2IDE2bDAgMTYwYzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0yNzUuM3pNNDk2IDU0NGExNDQgMTQ0IDAgMSAwIDAtMjg4IDE0NCAxNDQgMCAxIDAgMCAyODh6bTAtMTAwYTIwIDIwIDAgMSAxIDAgNDAgMjAgMjAgMCAxIDEgMC00MHptMC0xMDBjLTExLjYgMC0yMS4zIDguMi0yMy41IDE5LjItMS44IDguNy0xMC4yIDE0LjMtMTguOSAxMi41cy0xNC4zLTEwLjItMTIuNS0xOC45YzUuMi0yNS42IDI3LjgtNDQuOCA1NC45LTQ0LjggMzAuOSAwIDU2IDI1LjEgNTYgNTYgMCAxOS44LTExLjcgMzcuOC0yOS44IDQ1LjlsLTEwLjQgNC42Yy0xLjIgNy43LTcuOCAxMy41LTE1LjggMTMuNS04LjggMC0xNi03LjItMTYtMTYgMC0xMS4yIDYuNi0yMS4zIDE2LjgtMjUuOWwxMi40LTUuNWM2LjYtMi45IDEwLjgtOS40IDEwLjgtMTYuNiAwLTEzLjMtMTAuNy0yNC0yNC0yNHoiXX0sUXVyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNsaXBib2FyZC1jaGVjayIsaWNvbjpbMzg0LDUxMixbXSwiZjQ2YyIsIk0yNTYgMGMyMy43IDAgNDQuNCAxMi45IDU1LjQgMzJsOC42IDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAzNTJjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNTEyYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDk2QzAgNjAuNyAyOC43IDMyIDY0IDMybDguNiAwQzgzLjYgMTIuOSAxMDQuMyAwIDEyOCAwTDI1NiAwem0yNi45IDIxMi42Yy0xMC43LTcuOC0yNS43LTUuNC0zMy41IDUuM2wtODUuNiAxMTcuNy0yNi41LTI3LjRjLTkuMi05LjUtMjQuNC05LjgtMzMuOS0uNnMtOS44IDI0LjQtLjYgMzMuOWw0Ni40IDQ4YzQuOSA1LjEgMTEuOCA3LjggMTguOSA3LjNzMTMuNi00LjEgMTcuOC05LjhMMjg4LjIgMjQ2LjFjNy44LTEwLjcgNS40LTI1LjctNS4zLTMzLjV6TTEzNiA2NGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwxMTIgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNEwxMzYgNjR6Il19LE5DZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzaGFyZS1mcm9tLXNxdWFyZSIsaWNvbjpbNTc2LDUxMixbNjE1MDksInNoYXJlLXNxdWFyZSJdLCJmMTRkIiwiTTM4NC41IDI0bDAgNzItNjQgMGMtNzkuNSAwLTE0NCA2NC41LTE0NCAxNDQgMCA5My40IDgyLjggMTM0LjggMTAwLjYgMTQyLjYgMi4yIDEgNC42IDEuNCA3LjEgMS40bDIuNSAwYzkuOCAwIDE3LjgtOCAxNy44LTE3LjggMC04LjMtNS45LTE1LjUtMTIuOC0yMC4zLTguOS02LjItMTkuMi0xOC4yLTE5LjItNDAuNSAwLTQ1IDM2LjUtODEuNSA4MS41LTgxLjVsMzAuNSAwIDAgNzJjMCA5LjcgNS44IDE4LjUgMTQuOCAyMi4yczE5LjMgMS43IDI2LjItNS4ybDEzNi0xMzZjOS40LTkuNCA5LjQtMjQuNiAwLTMzLjlMNDI1LjUgN2MtNi45LTYuOS0xNy4yLTguOS0yNi4yLTUuMlMzODQuNSAxNC4zIDM4NC41IDI0em0tMjcyIDcyYy00NC4yIDAtODAgMzUuOC04MCA4MGwwIDI1NmMwIDQ0LjIgMzUuOCA4MCA4MCA4MGwyNTYgMGM0NC4yIDAgODAtMzUuOCA4MC04MGwwLTMyYzAtMTcuNy0xNC4zLTMyLTMyLTMycy0zMiAxNC4zLTMyIDMybDAgMzJjMCA4LjgtNy4yIDE2LTE2IDE2bC0yNTYgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMjU2YzAtOC44IDcuMi0xNiAxNi0xNmwxNiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC0xNiAweiJdfSxLdXI9TkNlLGFsZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJyZWNlaXB0IixpY29uOlszODQsNTEyLFsxMjk1MzRdLCJmNTQzIiwiTTE0IDIuMkMyMi41LTEuNyAzMi41LS4zIDM5LjYgNS44TDgwIDQwLjQgMTIwLjQgNS44YzktNy43IDIyLjMtNy43IDMxLjIgMEwxOTIgNDAuNCAyMzIuNCA1LjhjOS03LjcgMjIuMi03LjcgMzEuMiAwTDMwNCA0MC40IDM0NC40IDUuOGM3LjEtNi4xIDE3LjEtNy41IDI1LjYtMy42UzM4NCAxNC42IDM4NCAyNGwwIDQ2NGMwIDkuNC01LjUgMTcuOS0xNCAyMS44cy0xOC41IDIuNS0yNS42LTMuNmwtNDAuNC0zNC42LTQwLjQgMzQuNmMtOSA3LjctMjIuMiA3LjctMzEuMiAwbC00MC40LTM0LjYtNDAuNCAzNC42Yy05IDcuNy0yMi4zIDcuNy0zMS4yIDBMODAgNDcxLjYgMzkuNiA1MDYuMmMtNy4xIDYuMS0xNy4xIDcuNS0yNS42IDMuNlMwIDQ5Ny40IDAgNDg4TDAgMjRDMCAxNC42IDUuNSA2LjEgMTQgMi4yek0xMDQgMTM2Yy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDE3NiAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC0xNzYgMHpNODAgMzUyYzAgMTMuMyAxMC43IDI0IDI0IDI0bDE3NiAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC0xNzYgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjR6bTI0LTEyMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwxNzYgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtMTc2IDB6Il19LEp1cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJlcXVhbHMiLGljb246WzQ0OCw1MTIsWzYyNzY0XSwiM2QiLCJNMzIgMTI4Yy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDM4NCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMyTDMyIDEyOHptMCAxOTJjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsMzg0IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJMMzIgMzIweiJdfSxlZnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2hldnJvbi11cCIsaWNvbjpbNDQ4LDUxMixbXSwiZjA3NyIsIk0yMDEuNCAxMDUuNGMxMi41LTEyLjUgMzIuOC0xMi41IDQ1LjMgMGwxOTIgMTkyYzEyLjUgMTIuNSAxMi41IDMyLjggMCA0NS4zcy0zMi44IDEyLjUtNDUuMyAwTDIyNCAxNzMuMyA1NC42IDM0Mi42Yy0xMi41IDEyLjUtMzIuOCAxMi41LTQ1LjMgMHMtMTIuNS0zMi44IDAtNDUuM2wxOTItMTkyeiJdfSx0ZnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidmlydXMtc2xhc2giLGljb246WzU3Niw1MTIsW10sImUwNzUiLCJNNDEtMjQuOWMtOS40LTkuNC0yNC42LTkuNC0zMy45IDBTLTIuMy0uMyA3IDkuMWw1MjggNTI4YzkuNCA5LjQgMjQuNiA5LjQgMzMuOSAwczkuNC0yNC42IDAtMzMuOWwtODguNi04OC42YzEuNy0xMi4xLTItMjQuOC0xMS4zLTM0LTMxLjItMzEuMi05LjEtODQuNSAzNS04NC41IDIyLjEgMCA0MC0xNy45IDQwLTQwcy0xNy45LTQwLTQwLTQwYy00NC4xIDAtNjYuMS01My4zLTM1LTg0LjUgMTUuNi0xNS42IDE1LjYtNDAuOSAwLTU2LjZzLTQwLjktMTUuNi01Ni42IDBjLTMxLjIgMzEuMi04NC41IDkuMS04NC41LTM1IDAtMjIuMS0xNy45LTQwLTQwLTQwcy00MCAxNy45LTQwIDQwYzAgNDQuMS01My4zIDY2LjEtODQuNSAzNS05LjMtOS4zLTIyLTEzLTM0LTExLjNMNDEtMjQuOXpNNzIgMjE2Yy0yMi4xIDAtNDAgMTcuOS00MCA0MHMxNy45IDQwIDQwIDQwYzQ0LjEgMCA2Ni4xIDUzLjMgMzUgODQuNS0xNS42IDE1LjYtMTUuNiA0MC45IDAgNTYuNnM0MC45IDE1LjYgNTYuNiAwYzMxLjItMzEuMiA4NC41LTkuMSA4NC41IDM1IDAgMjIuMSAxNy45IDQwIDQwIDQwczQwLTE3LjkgNDAtNDBjMC0yMS40IDEyLjYtMzcuNiAyOS4xLTQ1LjFsLTI0MC0yNDBDMTA5LjYgMjAzLjQgOTMuNCAyMTYgNzIgMjE2eiJdfSxyZnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic2xhc2giLGljb246WzU3Niw1MTIsW10sImY3MTUiLCJNNy0yNWM5LjQtOS40IDI0LjYtOS40IDMzLjkgMEw1NjkgNTAzYzkuNCA5LjQgOS40IDI0LjYgMCAzMy45cy0yNC42IDkuNC0zMy45IDBMNyA5Qy0yLjMtLjQtMi4zLTE1LjYgNy0yNXoiXX0sYWZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImV4cGFuZCIsaWNvbjpbNDQ4LDUxMixbXSwiZjA2NSIsIk0zMiAzMkMxNC4zIDMyIDAgNDYuMyAwIDY0bDAgOTZjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTY0IDY0IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJMMzIgMzJ6TTY0IDM1MmMwLTE3LjctMTQuMy0zMi0zMi0zMlMwIDMzNC4zIDAgMzUybDAgOTZjMCAxNy43IDE0LjMgMzIgMzIgMzJsOTYgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtNjQgMCAwLTY0ek0zMjAgMzJjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsNjQgMCAwIDY0YzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC05NmMwLTE3LjctMTQuMy0zMi0zMi0zMmwtOTYgMHpNNDQ4IDM1MmMwLTE3LjctMTQuMy0zMi0zMi0zMnMtMzIgMTQuMy0zMiAzMmwwIDY0LTY0IDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsOTYgMGMxNy43IDAgMzItMTQuMyAzMi0zMmwwLTk2eiJdfSxGQ2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibm90ZS1zdGlja3kiLGljb246WzQ0OCw1MTIsWzYyMDI2LCJzdGlja3ktbm90ZSJdLCJmMjQ5IiwiTTY0IDQ4MGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCA5NkMwIDYwLjcgMjguNyAzMiA2NCAzMmwzMjAgMGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDIxMy41YzAgMTctNi43IDMzLjMtMTguNyA0NS4zTDMyMi43IDQ2MS4zYy0xMiAxMi0yOC4zIDE4LjctNDUuMyAxOC43TDY0IDQ4MHpNMzg5LjUgMzA0TDI5NiAzMDRjLTEzLjMgMC0yNCAxMC43LTI0IDI0bDAgOTMuNSAxMTcuNS0xMTcuNXoiXX0saWZyPUZDZSxPQ2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidGFibGUtY29sdW1ucyIsaWNvbjpbNDQ4LDUxMixbImNvbHVtbnMiXSwiZjBkYiIsIk0wIDk2QzAgNjAuNyAyOC43IDMyIDY0IDMybDMyMCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMzIwYzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDQ4MGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCA5NnptNjQgNjRsMCAyNTYgMTI4IDAgMC0yNTYtMTI4IDB6bTMyMCAwbC0xMjggMCAwIDI1NiAxMjggMCAwLTI1NnoiXX0sb2ZyPU9DZSxuZnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGVyc29uLXNoZWx0ZXIiLGljb246WzUxMiw1MTIsW10sImU1NGYiLCJNMjcxLjkgNC4yYy05LjgtNS42LTIxLjktNS42LTMxLjggMGwtMjI0IDEyOEM2LjIgMTM3LjkgMCAxNDguNSAwIDE2MEwwIDQ4MGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMyTDY0IDE3OC42IDI1NiA2OC45IDQ0OCAxNzguNiA0NDggNDgwYzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0zMjBjMC0xMS41LTYuMi0yMi4xLTE2LjEtMjcuOGwtMjI0LTEyOHpNMjU2IDIwOGE0MCA0MCAwIDEgMCAwLTgwIDQwIDQwIDAgMSAwIDAgODB6bS04IDE5MmwxNiAwIDAgODhjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTE3NC41IDI2LjkgNDkuOWM2LjMgMTEuNyAyMC44IDE2IDMyLjUgOS44czE2LTIwLjggOS44LTMyLjVsLTMzLjItNjEuN0MzMjkuNyAyNDUuMSAyOTQuNCAyMjQgMjU2IDIyNHMtNzMuNyAyMS4xLTkxLjkgNTQuOWwtMzMuMiA2MS43Yy02LjMgMTEuNy0xLjkgMjYuMiA5LjggMzIuNXMyNi4yIDEuOSAzMi41LTkuOEwyMDAgMzEzLjUgMjAwIDQ4OGMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtODh6Il19LHNmcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjaXJjbGUtbm90Y2giLGljb246WzUxMiw1MTIsW10sImYxY2UiLCJNMjIyLjcgMzIuMWM1IDE2LjktNC42IDM0LjgtMjEuNSAzOS44LTc5LjMgMjMuNi0xMzcuMSA5Ny4xLTEzNy4xIDE4NC4xIDAgMTA2IDg2IDE5MiAxOTIgMTkyczE5Mi04NiAxOTItMTkyYzAtODYuOS01Ny44LTE2MC40LTEzNy4xLTE4NC4xLTE2LjktNS0yNi42LTIyLjktMjEuNS0zOS44czIyLjktMjYuNiAzOS44LTIxLjVDNDM0LjkgNDIuMSA1MTIgMTQwIDUxMiAyNTYgNTEyIDM5Ny40IDM5Ny40IDUxMiAyNTYgNTEyUzAgMzk3LjQgMCAyNTZjMC0xMTYgNzcuMS0yMTMuOSAxODIuOS0yNDUuNCAxNi45LTUgMzQuOCA0LjYgMzkuOCAyMS41eiJdfSxsZnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToid2F0ZXIiLGljb246WzUxMiw1MTIsW10sImY3NzMiLCJNNDEwLjYgMTI0LjFjMjAuNyAxNS42IDQ2IDMwLjcgNzQuMiAzNC41IDEzLjEgMS44IDI1LjItNy41IDI3LTIwLjZzLTcuNS0yNS4yLTIwLjYtMjdjLTE1LjktMi4xLTMzLjItMTEuMy01MS43LTI1LjItMzguNC0yOS05MC41LTI5LTEyOSAwLTI0IDE4LjEtNDAuNyAyNi4zLTU0LjUgMjYuM3MtMzAuNS04LjItNTQuNS0yNi4zYy0zOC40LTI5LTkwLjUtMjktMTI5IDAtMTguNSAxMy45LTM1LjggMjMuMS01MS43IDI1LjItMTMuMSAxLjgtMjIuNCAxMy44LTIwLjYgMjdzMTMuOCAyMi40IDI3IDIwLjZjMjguMi0zLjggNTMuNi0xOC45IDc0LjItMzQuNSAyMS4zLTE2LjEgNDkuOS0xNi4xIDcxLjIgMCAyNC4yIDE4LjMgNTIuMyAzNS45IDgzLjQgMzUuOXM1OS4xLTE3LjcgODMuNC0zNS45YzIxLjMtMTYuMSA0OS45LTE2LjEgNzEuMiAwem0wIDE0NGMyMC43IDE1LjYgNDYgMzAuNyA3NC4yIDM0LjUgMTMuMSAxLjggMjUuMi03LjUgMjctMjAuNnMtNy41LTI1LjItMjAuNi0yN2MtMTUuOS0yLjEtMzMuMi0xMS4zLTUxLjctMjUuMi0zOC40LTI5LTkwLjUtMjktMTI5IDAtMjQgMTguMS00MC43IDI2LjMtNTQuNSAyNi4zcy0zMC41LTguMi01NC41LTI2LjNjLTM4LjQtMjktOTAuNS0yOS0xMjkgMC0xOC41IDEzLjktMzUuOCAyMy4xLTUxLjcgMjUuMi0xMy4xIDEuNy0yMi40IDEzLjgtMjAuNiAyN3MxMy44IDIyLjQgMjcgMjAuNmMyOC4yLTMuOCA1My42LTE4LjkgNzQuMi0zNC41IDIxLjMtMTYuMSA0OS45LTE2LjEgNzEuMiAwIDI0LjIgMTguMyA1Mi4zIDM1LjkgODMuNCAzNS45czU5LjEtMTcuNyA4My40LTM1LjljMjEuMy0xNi4xIDQ5LjktMTYuMSA3MS4yIDB6bS03MS4yIDE0NGMyMS4zLTE2LjEgNDkuOS0xNi4xIDcxLjIgMCAyMC43IDE1LjYgNDYgMzAuNyA3NC4yIDM0LjUgMTMuMSAxLjggMjUuMi03LjUgMjctMjAuNnMtNy41LTI1LjItMjAuNi0yN2MtMTUuOS0yLjEtMzMuMi0xMS4zLTUxLjctMjUuMi0zOC40LTI5LTkwLjUtMjktMTI5IDAtMjQgMTguMS00MC43IDI2LjMtNTQuNSAyNi4zcy0zMC41LTguMi01NC41LTI2LjNjLTM4LjQtMjktOTAuNS0yOS0xMjkgMC0xOC41IDEzLjktMzUuOCAyMy4xLTUxLjcgMjUuMi0xMy4xIDEuOC0yMi40IDEzLjgtMjAuNiAyN3MxMy44IDIyLjQgMjcgMjAuNmMyOC4yLTMuOCA1My42LTE4LjkgNzQuMi0zNC41IDIxLjMtMTYuMSA0OS45LTE2LjEgNzEuMiAwIDI0LjIgMTguMyA1Mi4zIDM1LjkgODMuNCAzNS45czU5LjEtMTcuNyA4My40LTM1Ljl6Il19LFJDZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJkZWxldGUtbGVmdCIsaWNvbjpbNjQwLDUxMixbOTAwMywiYmFja3NwYWNlIl0sImY1NWEiLCJNNTc2IDEyOGMwLTM1LjMtMjguNy02NC02NC02NEwyMDUuMyA2NGMtMTcgMC0zMy4zIDYuNy00NS4zIDE4LjdMOS40IDIzMy40Yy02IDYtOS40IDE0LjEtOS40IDIyLjZzMy40IDE2LjYgOS40IDIyLjZMMTYwIDQyOS4zYzEyIDEyIDI4LjMgMTguNyA0NS4zIDE4LjdMNTEyIDQ0OGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTI1NnpNMjg0LjEgMTg4LjFjOS40LTkuNCAyNC42LTkuNCAzMy45IDBsMzMuOSAzMy45IDMzLjktMzMuOWM5LjQtOS40IDI0LjYtOS40IDMzLjkgMHM5LjQgMjQuNiAwIDMzLjlsLTMzLjkgMzMuOSAzMy45IDMzLjljOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlzLTI0LjYgOS40LTMzLjkgMGwtMzMuOS0zMy45LTMzLjkgMzMuOWMtOS40IDkuNC0yNC42IDkuNC0zMy45IDBzLTkuNC0yNC42IDAtMzMuOWwzMy45LTMzLjktMzMuOS0zMy45Yy05LjQtOS40LTkuNC0yNC42IDAtMzMuOXoiXX0sY2ZyPVJDZSxjMmU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYnJvb20tYmFsbCIsaWNvbjpbNTc2LDUxMixbInF1aWRkaXRjaCIsInF1aWRkaXRjaC1icm9vbS1iYWxsIl0sImY0NTgiLCJNNDk2IDU0NGE4MCA4MCAwIDEgMSAwLTE2MCA4MCA4MCAwIDEgMSAwIDE2MHpNMTA2LjggMjc3LjJjMzAuNi0zMC42IDczLjEtNDUuOSAxMTUuOC00Mi4yTDM0MSAzNTMuM2MzLjcgNDIuOC0xMS42IDg1LjItNDIuMiAxMTUuOS0yNy40IDI3LjQtNjQuNiA0Mi44LTEwMy4zIDQyLjhMMjIuMSA1MTJjLTEyLjIgMC0yMi4xLTkuOS0yMi4xLTIyLjEgMC02LjMgMi43LTEyLjMgNy4zLTE2LjVMMTMzLjcgMzU5LjdjNC4yLTMuNy0uNC0xMC40LTUuNC03LjlMNzcuMiAzNzcuNGMtNi4xIDMtMTMuMi0xLjQtMTMuMi04LjIgMC0zMS41IDEyLjUtNjEuOCAzNC44LTg0bDgtOHptNDE3LTI3MGMxMi42LTEwLjMgMzEuMS05LjUgNDIuOCAyLjJzMTIuNCAzMC4yIDIuMiA0Mi44bC0yLjIgMi40LTE5MiAxOTIgMzQuOCAzNC43YzQuMiA0LjIgNi42IDEwIDYuNiAxNiAwIDEyLjUtMTAuMSAyMi42LTIyLjYgMjIuNmwtMjkuMSAwLTEwOC4zLTEwOC4zIDAtMjkuMWMwLTEyLjUgMTAuMS0yMi42IDIyLjYtMjIuNiA2IDAgMTEuOCAyLjQgMTYgNi42bDM0LjggMzQuNyAxOTItMTkyIDIuNC0yLjJ6Il19LGRmcj1jMmUsdWZyPWMyZSxmZnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaiIsaWNvbjpbMzIwLDUxMixbMTA2XSwiNGEiLCJNMjg4IDMyYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMjU2YzAgODguNC03MS42IDE2MC0xNjAgMTYwUzAgNDA4LjQgMCAzMjBsMC0zMmMwLTE3LjcgMTQuMy0zMiAzMi0zMnMzMiAxNC4zIDMyIDMybDAgMzJjMCA1MyA0MyA5NiA5NiA5NnM5Ni00MyA5Ni05NmwwLTI1NmMwLTE3LjcgMTQuMy0zMiAzMi0zMnoiXX0sQkNlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNodXR0bGUtc3BhY2UiLGljb246WzU3Niw1MTIsWyJzcGFjZS1zaHV0dGxlIl0sImYxOTciLCJNMCAzNjhsMCA2NGMwIDI2LjUgMjEuNSA0OCA0OCA0OGw1MCAwYzQwLjYgMCA4MC40LTExIDExNS4yLTMxLjlsMTMzLjUtODAuMS05My4zIDAtNjQuOSAzOC45Yy0xNCA4LjQtMjguOSAxNC43LTQ0LjUgMTlsMC02Ni40YzkuNy01LjYgMTcuOC0xMy43IDIzLjQtMjMuNGwxOTguOCAwYzY3LjEgMCAxMjcuOC0yMC42IDE3MC4zLTcwLjYgNC42LTUuNCA0LjYtMTMuMyAwLTE4LjgtNDIuNS01MC4xLTEwMy4yLTcwLjYtMTcwLjMtNzAuNmwtMTk4LjggMGMtNS42LTkuNy0xMy43LTE3LjgtMjMuNC0yMy40bDAtNjYuNGMxNS42IDQuMiAzMC42IDEwLjYgNDQuNSAxOWw2NC45IDM4LjkgOTMuMyAwLTEzMy41LTgwLjFDMTc4LjQgNDMgMTM4LjYgMzIgOTggMzJMNDggMzJDMjEuNSAzMiAwIDUzLjUgMCA4MEwwIDM2OHptOTYgMGwwIDY0LTQ4IDAgMC02NCA0OCAwek05NiA4MGwwIDY0LTQ4IDAgMC02NCA0OCAwek00MTYgMjI0YzguOCAwIDE2IDcuMiAxNiAxNmwwIDMyYzAgOC44LTcuMiAxNi0xNiAxNnMtMTYtNy4yLTE2LTE2bDAtMzJjMC04LjggNy4yLTE2IDE2LTE2eiJdfSxwZnI9QkNlLGhmcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ5aW4teWFuZyIsaWNvbjpbNTEyLDUxMixbOTc3NV0sImY2YWQiLCJNMjI0IDE2MGEzMiAzMiAwIDEgMSA2NCAwIDMyIDMyIDAgMSAxIC02NCAwem0zMiAzNTJhMjU2IDI1NiAwIDEgMCAwLTUxMiAyNTYgMjU2IDAgMSAwIDAgNTEyem0wLTQ0OGM1MyAwIDk2IDQzIDk2IDk2cy00MyA5Ni05NiA5Ni05NiA0My05NiA5NiA0MyA5NiA5NiA5NkMxNTAgNDQ4IDY0IDM2MiA2NCAyNTZTMTUwIDY0IDI1NiA2NHpNMjI0IDM1MmEzMiAzMiAwIDEgMSA2NCAwIDMyIDMyIDAgMSAxIC02NCAweiJdfSxtZnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic3RvcCIsaWNvbjpbNDQ4LDUxMixbOTIwOV0sImYwNGQiLCJNNjQgMzJsMzIwIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAzMjBjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDk2QzAgNjAuNyAyOC43IDMyIDY0IDMyeiJdfSxnZnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidHJvd2VsIixpY29uOls1NzYsNTEyLFtdLCJlNTg5IiwiTTQwNy45IDE4MS40TDI3Ny4zIDMxMiAzNDIuNiAzNzcuNGM3LjkgNy45IDExLjEgMTkuNCA4LjQgMzAuM3MtMTAuOCAxOS42LTIxLjUgMjIuOWwtMjU2IDgwYy0xMS40IDMuNS0yMy44IC41LTMyLjItNy45cy0xMS41LTIwLjgtNy45LTMyLjJsODAtMjU2YzMuMy0xMC43IDEyLTE4LjkgMjIuOS0yMS41czIyLjQgLjUgMzAuMyA4LjRMMjMyIDI2Ni43IDM2Mi42IDEzNi4xYy0xNC4zLTE0LjYtMTQuMi0zOCAuMy01Mi41bDk1LjQtOTUuNGMyNi45LTI2LjkgNzAuNS0yNi45IDk3LjUgMHMyNi45IDcwLjUgMCA5Ny41bC05NS40IDk1LjRjLTE0LjUgMTQuNS0zNy45IDE0LjYtNTIuNSAuM3oiXX0sSENlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhhbmQtYmFjay1maXN0IixpY29uOlszODQsNTEyLFsiaGFuZC1yb2NrIl0sImYyNTUiLCJNNy40IDI1My42QzIuNiAyNDUuOSAwIDIzNy4xIDAgMjI4bDAtMzZjMC0yNi41IDIxLjUtNDggNDgtNDhsMTYgMCAwLTgwYzAtMjYuNSAyMS41LTQ4IDQ4LTQ4IDE3LjMgMCAzMi40IDkuMSA0MC45IDIyLjggNC4zLTIyLjEgMjMuOC0zOC44IDQ3LjEtMzguOCAyMy40IDAgNDIuOSAxNi44IDQ3LjEgMzguOSA3LjMtNC40IDE1LjgtNi45IDI0LjktNi45IDIyLjEgMCA0MC44IDE1IDQ2LjMgMzUuNCA1LjUtMi4yIDExLjQtMy40IDE3LjctMy40IDI2LjUgMCA0OCAyMS41IDQ4IDQ4bDAgOTYuOWMwIDkuOS0yLjMgMTkuNy02LjggMjguNmwtMzkuNiA3OS4xYy0xMC44IDIxLjctMzMgMzUuNC01Ny4yIDM1LjRMOTYgMzUyYy0xNi41IDAtMzEuOC04LjQtNDAuNi0yMi40bC00OC03NnpNMzIgNDgwbDAtNDhjMC0xNy43IDE0LjMtMzIgMzItMzJsMjU2IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCA0OGMwIDE3LjctMTQuMyAzMi0zMiAzMkw2NCA1MTJjLTE3LjcgMC0zMi0xNC4zLTMyLTMyeiJdfSx4ZnI9SENlLGJmcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0ZW1wZXJhdHVyZS1oaWdoIixpY29uOls1MTIsNTEyLFtdLCJmNzY5IiwiTTk2IDk2YzAtNTMgNDMtOTYgOTYtOTZzOTYgNDMgOTYgOTZsMCAxNjQuN2MyOS41IDI2LjQgNDggNjQuNyA0OCAxMDcuMyAwIDc5LjUtNjQuNSAxNDQtMTQ0IDE0NFM0OCA0NDcuNSA0OCAzNjhjMC00Mi42IDE4LjUtODEgNDgtMTA3LjNMOTYgOTZ6bTk2IDMzNmMzNS4zIDAgNjQtMjguNyA2NC02NCAwLTI2LjktMTYuNS00OS45LTQwLTU5LjNMMjE2IDk2YzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0bDAgMjEyLjdjLTIzLjUgOS41LTQwIDMyLjUtNDAgNTkuMyAwIDM1LjMgMjguNyA2NCA2NCA2NHpNNDY0IDgwYTMyIDMyIDAgMSAwIC02NCAwIDMyIDMyIDAgMSAwIDY0IDB6TTM1MiA4MGE4MCA4MCAwIDEgMSAxNjAgMCA4MCA4MCAwIDEgMSAtMTYwIDB6Il19LHZmcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJncmVhdGVyLXRoYW4iLGljb246WzUxMiw1MTIsWzYyNzY5XSwiM2UiLCJNMzQuOSA1MC42Yy03LjQgMTYtLjQgMzUuMSAxNS42IDQyLjVMNDAzLjYgMjU2IDUwLjYgNDE5Yy0xNiA3LjQtMjMuMSAyNi40LTE1LjYgNDIuNXMyNi40IDIzIDQyLjUgMTUuNmw0MTYtMTkyYzExLjMtNS4yIDE4LjYtMTYuNiAxOC42LTI5LjFzLTcuMy0yMy44LTE4LjYtMjkuMUw3Ny40IDM1Yy0xNi03LjQtMzUuMS0uNC00Mi41IDE1LjZ6Il19LHlmcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjcnV0Y2giLGljb246WzUxMiw1MTIsW10sImY3ZjciLCJNMjk3LjQgOS40YzEyLjUtMTIuNSAzMi44LTEyLjUgNDUuMyAwbDE2MCAxNjBjMTIuNSAxMi41IDEyLjUgMzIuOCAwIDQ1LjNzLTMyLjggMTIuNS00NS4zIDBsLTEuNC0xLjQtMTU4LjYgMTU4LjZjLTE4IDE4LTQyLjQgMjguMS02Ny45IDI4LjFsLTU5IDBjLTguNSAwLTE2LjYgMy40LTIyLjYgOS40LTYxLjcgNjEuNy05Mi44IDkyLjgtOTMuMyA5My4zLTEyLjUgMTIuNS0zMi44IDEyLjUtNDUuMyAwcy0xMi41LTMyLjggMC00NS4zbDE2LTE2IDAgMCA3Ny4zLTc3LjNjNi02IDkuNC0xNC4xIDkuNC0yMi42bDAtNTljMC0yNS41IDEwLjEtNDkuOSAyOC4xLTY3LjlMMjk4LjcgNTYgMjk3LjQgNTQuNmMtMTIuNS0xMi41LTEyLjUtMzIuOCAwLTQ1LjN6TTM0NCAxMDEuM0wyNjEuMyAxODQgMzI4IDI1MC43IDQxMC43IDE2OCAzNDQgMTAxLjN6bS0xMjggMTI4bC0zMC42IDMwLjZjLTYgNi05LjQgMTQuMS05LjQgMjIuNmwwIDUzLjUgNTMuNSAwYzguNSAwIDE2LjYtMy40IDIyLjYtOS40TDI4Mi43IDI5NiAyMTYgMjI5LjN6Il19LHFDZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzZXB0YWdvbiIsaWNvbjpbNTc2LDUxMixbImhlcHRhZ29uIl0sImU4MjAiLCJNMjY3LjQtMzEuNWMxNS45LTUuNSAzMy41LTQuNiA0OC44IDIuN2wxNzIuNCA4MyA2LjMgMy41YzE0LjIgOSAyNC41IDIzLjMgMjguMyAzOS45bDQyLjYgMTg2LjUgMS4yIDcuMmMxLjYgMTQuMy0xLjcgMjguOC05LjQgNDEuMWwtNC4yIDUuOS0xMTkuMyAxNDkuNmMtMTIuMSAxNS4yLTMwLjYgMjQuMS01MCAyNC4xbC0xOTEuMyAwYy0xOS41IDAtMzcuOS04LjktNTAtMjQuMUwyMy41IDMzOC40Yy0xMi4xLTE1LjItMTYuNy0zNS4yLTEyLjMtNTQuMmw0Mi42LTE4Ni41IDItN2M1LjYtMTUuOSAxNy4yLTI5IDMyLjYtMzYuNGwxNzIuNC04MyA2LjctMi43eiJdfSx3ZnI9cUNlLE1mcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzdHJlZXQtdmlldyIsaWNvbjpbNTEyLDUxMixbXSwiZjIxZCIsIk0yNTYgMGE2NCA2NCAwIDEgMSAwIDEyOCA2NCA2NCAwIDEgMSAwLTEyOHpNMjI0IDE2MGw2NCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgNDhjMCAxNy43LTE0LjMgMzItMzIgMzJsLTEuOCAwLTExLjEgOTkuNWMtMS44IDE2LjItMTUuNSAyOC41LTMxLjggMjguNWwtMzguNyAwYy0xNi4zIDAtMzAtMTIuMy0zMS44LTI4LjVsLTExLjEtOTkuNS0xLjggMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC00OGMwLTM1LjMgMjguNy02NCA2NC02NHpNNDEyLjQgNDAwLjJjLTE2LjEtNC4yLTM0LjgtNy42LTU1LjQtMTAuMmw1LjMtNDcuN2MyMi43IDIuOSA0My43IDYuNyA2Mi4xIDExLjUgMjIuNCA1LjggNDIuNiAxMy4zIDU3LjggMjMuMyAxNC43IDkuNiAyOS44IDI0LjkgMjkuOCA0N3MtMTUuMSAzNy40LTI5LjggNDdjLTE1LjIgOS45LTM1LjUgMTcuNS01Ny44IDIzLjMtNDUuMSAxMS43LTEwNS4zIDE3LjgtMTY4LjQgMTcuOHMtMTIzLjMtNi4xLTE2OC40LTE3LjhDNjUuMiA0ODguNCA0NSA0ODAuOSAyOS44IDQ3MSAxNS4xIDQ2MS40IDAgNDQ2LjEgMCA0MjRzMTUuMS0zNy40IDI5LjgtNDdjMTUuMi05LjkgMzUuNS0xNy41IDU3LjgtMjMuMyAxOC41LTQuOCAzOS41LTguNiA2Mi4xLTExLjVMMTU1IDM5MGMtMjAuNiAyLjYtMzkuMyA2LjEtNTUuNCAxMC4yLTU2LjYgMTQuNi01Ni42IDMyLjkgMCA0Ny41IDM5LjkgMTAuMyA5NS44IDE2LjIgMTU2LjQgMTYuMnMxMTYuNS01LjkgMTU2LjQtMTYuMmM1Ni42LTE0LjYgNTYuNi0zMi45IDAtNDcuNXoiXX0sa2ZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6IndhdmUtc3F1YXJlIixpY29uOls1MTIsNTEyLFtdLCJmODNlIiwiTTY0IDk2YzAtMTcuNyAxNC4zLTMyIDMyLTMybDE2MCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMjg4IDk2IDAgMC0xMjhjMC0xNy43IDE0LjMtMzIgMzItMzJsNjQgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtMzIgMCAwIDEyOGMwIDE3LjctMTQuMyAzMi0zMiAzMmwtMTYwIDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtMjg4LTk2IDAgMCAxMjhjMCAxNy43LTE0LjMgMzItMzIgMzJsLTY0IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsMzIgMCAwLTEyOHoiXX0sU2ZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFuZ2xlLWxlZnQiLGljb246WzI1Niw1MTIsWzgyNDldLCJmMTA0IiwiTTkuNCAyMzMuNGMtMTIuNSAxMi41LTEyLjUgMzIuOCAwIDQ1LjNsMTYwIDE2MGMxMi41IDEyLjUgMzIuOCAxMi41IDQ1LjMgMHMxMi41LTMyLjggMC00NS4zTDc3LjMgMjU2IDIxNC42IDExOC42YzEyLjUtMTIuNSAxMi41LTMyLjggMC00NS4zcy0zMi44LTEyLjUtNDUuMyAwbC0xNjAgMTYweiJdfSx6ZnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic2NyZXdkcml2ZXIiLGljb246WzU3Niw1MTIsWzEyOTY5MV0sImY1NGEiLCJNMzUyLjEgMTQ2LjdsMC00OS42YzAtMTAuNyA1LjMtMjAuNyAxNC4yLTI2LjZMNDg1LjItOC43YzYuMy00LjIgMTQuOC0zLjQgMjAuMiAybDQ1LjQgNDUuNWM1LjQgNS40IDYuMiAxMy44IDIgMjAuMkw0NzMuNiAxNzcuOGMtNS45IDguOS0xNS45IDE0LjItMjYuNiAxNC4ybC00OS42IDAtOTAuNyA5MC43YzE1IDMzLjMgOC45IDczLjktMTguNSAxMDEuM0wxNjIuMSA1MTAuMWMtMTguNyAxOC43LTQ5LjEgMTguNy02Ny45IDBMMzQuMSA0NDkuOWMtMTguNy0xOC43LTE4LjctNDkuMSAwLTY3LjlMMTYwLjEgMjU2YzI3LjQtMjcuNCA2Ny45LTMzLjYgMTAxLjMtMTguNWw5MC43LTkwLjd6Il19LENmcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0cmFjdG9yIixpY29uOls1NzYsNTEyLFsxMjg2NjhdLCJmNzIyIiwiTTE2MCA5NmwwIDk2IDEzMy40IDAtNTcuNi05Ni03NS44IDB6TTk2IDIyM0w5NiA2NGMwLTE3LjcgMTQuMy0zMiAzMi0zMmwxMDcuOCAwYzIyLjUgMCA0My4zIDExLjggNTQuOSAzMS4xbDc3LjQgMTI4LjkgNjQgMCAwLTcyYzAtMTMuMyAxMC43LTI0IDI0LTI0czI0IDEwLjcgMjQgMjRsMCA3MiA0OCAwYzI2LjUgMCA0OCAyMS41IDQ4IDQ4bDAgNDEuNWMwIDE0LjItNi4zIDI3LjgtMTcuMyAzNi45bC0zNSAyOS4yYzI2LjUgMTUuMiA0NC4zIDQzLjcgNDQuMyA3Ni40IDAgNDguNi0zOS40IDg4LTg4IDg4cy04OC0zOS40LTg4LTg4YzAtMTQuNCAzLjUtMjggOS42LTQwbC0xMDEuMiAwYy0zIDEzLjQtNy45IDI2LTE0LjQgMzcuNyA3LjcgOS40IDcuMiAyMy40LTEuNiAzMi4ybC0yMi42IDIyLjZjLTguOCA4LjgtMjIuNyA5LjMtMzIuMiAxLjYtOS4zIDUuMi0xOS4zIDkuMy0yOS44IDEyLjMtMS4yIDEyLjEtMTEuNCAyMS42LTIzLjkgMjEuNmwtMzIgMGMtMTIuNCAwLTIyLjctOS41LTIzLjktMjEuNi0xMC41LTMtMjAuNC03LjItMjkuOC0xMi4zLTkuNCA3LjctMjMuNCA3LjItMzIuMi0xLjZMMzUuNSA0NTMuOGMtOC44LTguOC05LjMtMjIuNy0xLjYtMzIuMi01LjItOS4zLTkuMy0xOS4zLTEyLjMtMjkuOC0xMi4xLTEuMi0yMS42LTExLjQtMjEuNi0yMy45bDAtMzJjMC0xMi40IDkuNS0yMi43IDIxLjYtMjMuOSAzLTEwLjUgNy4yLTIwLjQgMTIuMy0yOS44LTcuNy05LjQtNy4yLTIzLjQgMS42LTMyLjJsMjIuNi0yMi42YzguOC04LjggMjIuNy05LjMgMzIuMi0xLjYgMS45LTEgMy43LTIgNS43LTN6bTY0IDY1YTY0IDY0IDAgMSAwIDAgMTI4IDY0IDY0IDAgMSAwIDAtMTI4ek00NDAgNDI0YTQwIDQwIDAgMSAwIDgwIDAgNDAgNDAgMCAxIDAgLTgwIDB6Il19LF9mcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJicmlkZ2UtY2lyY2xlLXhtYXJrIixpY29uOls1NzYsNTEyLFtdLCJlNGNiIiwiTTMyIDMyQzE0LjMgMzIgMCA0Ni4zIDAgNjRTMTQuMyA5NiAzMiA5Nmw4IDAgMCA2NC00MCAwIDAgMTEyYzM3LjYgOS40IDY0IDQzLjIgNjQgODJsMCA5NGMwIDE3LjcgMTQuMyAzMiAzMiAzMmwzMiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtNjRjMC01MyA0My05NiA5Ni05NiA2LjQgMCAxMi43IC42IDE4LjcgMS44IDM0LjctNDkuNSA5Mi4yLTgxLjggMTU3LjMtODEuOCAyOC42IDAgNTUuNiA2LjIgODAgMTcuNGwwLTY1LjQtNDAgMCAwLTY0IDggMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMkwzMiAzMnpNNDI0IDk2bDAgNjQtODAgMCAwLTY0IDgwIDB6TTI5NiA5NmwwIDY0LTgwIDAgMC02NCA4MCAwek04OCA5Nmw4MCAwIDAgNjQtODAgMCAwLTY0ek00MzIgNTQ0YTE0NCAxNDQgMCAxIDAgMC0yODggMTQ0IDE0NCAwIDEgMCAwIDI4OHptNTkuMy0xODAuN2wtMzYuNyAzNi43IDM2LjcgMzYuN2M2LjIgNi4yIDYuMiAxNi40IDAgMjIuNnMtMTYuNCA2LjItMjIuNiAwbC0zNi43LTM2LjctMzYuNyAzNi43Yy02LjIgNi4yLTE2LjQgNi4yLTIyLjYgMHMtNi4yLTE2LjQgMC0yMi42bDM2LjctMzYuNy0zNi43LTM2LjdjLTYuMi02LjItNi4yLTE2LjQgMC0yMi42czE2LjQtNi4yIDIyLjYgMGwzNi43IDM2LjcgMzYuNy0zNi43YzYuMi02LjIgMTYuNC02LjIgMjIuNiAwczYuMiAxNi40IDAgMjIuNnoiXX0sVGZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InZpYWxzIixpY29uOls1MTIsNTEyLFtdLCJmNDkzIiwiTTMyIDBDMTQuMyAwIDAgMTQuMyAwIDMyUzE0LjMgNjQgMzIgNjRsMCAzNTJjMCA1MyA0MyA5NiA5NiA5NnM5Ni00MyA5Ni05NmwwLTM1MiA2NCAwIDAgMzUyYzAgNTMgNDMgOTYgOTYgOTZzOTYtNDMgOTYtOTZsMC0zNTJjMTcuNyAwIDMyLTE0LjMgMzItMzJTNDk3LjcgMCA0ODAgMEwzMiAwek0xNjAgNjRsMCAxMjgtNjQgMCAwLTEyOCA2NCAwem0yNTYgMGwwIDEyOC02NCAwIDAtMTI4IDY0IDB6Il19LExmcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzdGV0aG9zY29wZSIsaWNvbjpbNTc2LDUxMixbMTI5NjU4XSwiZjBmMSIsIk0zMiA0OEMzMiAyMS41IDUzLjUgMCA4MCAwbDQ4IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTMyIDAgMCAxMjhjMCA1MyA0MyA5NiA5NiA5NnM5Ni00MyA5Ni05NmwwLTEyOC0zMiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMlMyMzguMyAwIDI1NiAwbDQ4IDBjMjYuNSAwIDQ4IDIxLjUgNDggNDhsMCAxNDRjMCA3Ny40LTU1IDE0Mi0xMjggMTU2LjhsMCAxOS4yYzAgNjEuOSA1MC4xIDExMiAxMTIgMTEyczExMi01MC4xIDExMi0xMTJsMC04NS41Yy0zNy4zLTEzLjItNjQtNDguNy02NC05MC41IDAtNTMgNDMtOTYgOTYtOTZzOTYgNDMgOTYgOTZjMCA0MS44LTI2LjcgNzcuNC02NCA5MC41bDAgODUuNWMwIDk3LjItNzguOCAxNzYtMTc2IDE3NlMxNjAgNDY1LjIgMTYwIDM2OGwwLTE5LjJDODcgMzM0IDMyIDI2OS40IDMyIDE5MkwzMiA0OHpNNDgwIDIyNGEzMiAzMiAwIDEgMCAwLTY0IDMyIDMyIDAgMSAwIDAgNjR6Il19LERmcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwb2RjYXN0IixpY29uOls0NDgsNTEyLFtdLCJmMmNlIiwiTTMzNiAzNTkuOGMzOS4xLTMyLjMgNjQtODEuMSA2NC0xMzUuOCAwLTk3LjItNzguOC0xNzYtMTc2LTE3NlM0OCAxMjYuOCA0OCAyMjRDNDggMjc4LjcgNzIuOSAzMjcuNSAxMTIgMzU5LjggMTEyLjQgMzc3LjQgMTE1LjIgNDAwLjIgMTE4LjQgNDIxLjYgNDggMzgzLjkgMCAzMDkuNSAwIDIyNCAwIDEwMC4zIDEwMC4zIDAgMjI0IDBTNDQ4IDEwMC4zIDQ0OCAyMjRjMCA4NS42LTQ4IDE1OS45LTExOC41IDE5Ny42IDMuMy0yMS40IDYtNDQuMiA2LjQtNjEuOHptLTE0LTUzLjRjLTguMy0xMi42LTE5LjItMjEuNi0zMC40LTI3LjgtMi4xLTEuMS00LjItMi4yLTYuMy0zLjIgMTEuNy0xMy45IDE4LjgtMzEuOSAxOC44LTUxLjUgMC00NC4yLTM1LjgtODAtODAtODBzLTgwIDM1LjgtODAgODBjMCAxOS42IDcuMSAzNy42IDE4LjggNTEuNS0yLjEgMS00LjIgMi02LjMgMy4yLTExLjIgNi4yLTIyLjEgMTUuMi0zMC40IDI3LjgtMTguOC0yMi4zLTMwLjEtNTEtMzAuMS04Mi40IDAtNzAuNyA1Ny4zLTEyOCAxMjgtMTI4czEyOCA1Ny4zIDEyOCAxMjhjMCAzMS40LTExLjMgNjAuMi0zMC4xIDgyLjR6TTIyNCAzMTJjMzIuOSAwIDY0IDguNiA2NCA0My44IDAgMzMtMTIuOSAxMDQuMS0yMC42IDEzMi45LTUuMSAxOS0yNC41IDIzLjQtNDMuNCAyMy40cy0zOC4yLTQuNC00My40LTIzLjRjLTcuOC0yOC41LTIwLjYtOTkuNy0yMC42LTEzMi44IDAtMzUuMSAzMS4xLTQzLjggNjQtNDMuOHptMC0xMjhhNDAgNDAgMCAxIDEgMCA4MCA0MCA0MCAwIDEgMSAwLTgweiJdfSxBZnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYXJyb3ctdXAtcmlnaHQtZG90cyIsaWNvbjpbNTEyLDUxMixbXSwiZTRiNyIsIk05NiAzMkM3OC4zIDMyIDY0IDQ2LjMgNjQgNjRTNzguMyA5NiA5NiA5NkwxMTQuNyA5NiA5LjQgMjAxLjRjLTEyLjUgMTIuNS0xMi41IDMyLjggMCA0NS4zczMyLjggMTIuNSA0NS4zIDBMMTYwIDE0MS4zIDE2MCAxNjBjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTk2YzAtMTcuNy0xNC4zLTMyLTMyLTMyTDk2IDMyek00MDMuOCA3MC4xYTM4LjEgMzguMSAwIDEgMCA3Ni4yIDAgMzguMSAzOC4xIDAgMSAwIC03Ni4yIDB6TTI3OS43IDE5NC4yYTM4LjEgMzguMSAwIDEgMCA3Ni4yIDAgMzguMSAzOC4xIDAgMSAwIC03Ni4yIDB6bTE2Mi4yLTM4LjFhMzguMSAzOC4xIDAgMSAwIDAgNzYuMiAzOC4xIDM4LjEgMCAxIDAgMC03Ni4yek0xNTYuMiAzMTcuOGEzOC4xIDM4LjEgMCAxIDAgNzYuMiAwIDM4LjEgMzguMSAwIDEgMCAtNzYuMiAwem0xNjEuNi0zOC4xYTM4LjEgMzguMSAwIDEgMCAwIDc2LjIgMzguMSAzOC4xIDAgMSAwIDAtNzYuMnptODYuMSAzOC4xYTM4LjEgMzguMSAwIDEgMCA3Ni4yIDAgMzguMSAzOC4xIDAgMSAwIC03Ni4yIDB6TTcwLjEgNDAzLjhhMzguMSAzOC4xIDAgMSAwIDAgNzYuMiAzOC4xIDM4LjEgMCAxIDAgMC03Ni4yem04Ni4xIDM4LjFhMzguMSAzOC4xIDAgMSAwIDc2LjIgMCAzOC4xIDM4LjEgMCAxIDAgLTc2LjIgMHptMTYxLjYtMzguMWEzOC4xIDM4LjEgMCAxIDAgMCA3Ni4yIDM4LjEgMzguMSAwIDEgMCAwLTc2LjJ6bTg2LjEgMzguMWEzOC4xIDM4LjEgMCAxIDAgNzYuMiAwIDM4LjEgMzguMSAwIDEgMCAtNzYuMiAweiJdfSxFZnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2hlc3MtcXVlZW4iLGljb246WzUxMiw1MTIsWzk4MTldLCJmNDQ1IiwiTTI1NiA4MGE0OCA0OCAwIDEgMCAwLTk2IDQ4IDQ4IDAgMSAwIDAgOTZ6TTUuNSAxODVMMTI4IDM4NCA3MS44IDQ1NC4zYy01IDYuMy03LjggMTQuMS03LjggMjIuMiAwIDE5LjYgMTUuOSAzNS41IDM1LjUgMzUuNWwzMTIuOSAwYzE5LjYgMCAzNS41LTE1LjkgMzUuNS0zNS41IDAtOC4xLTIuNy0xNS45LTcuOC0yMi4yTDM4NCAzODQgNTA2LjUgMTg1YzMuNi01LjkgNS41LTEyLjcgNS41LTE5LjZsMC0uNmMwLTIwLjMtMTYuNS0zNi44LTM2LjgtMzYuOC03LjMgMC0xNC40IDIuMi0yMC40IDYuMmwtMTYuOSAxMS4zYy0xMi43IDguNS0yOS42IDYuOC00MC40LTRsLTM0LjEtMzQuMUMzNTYuMSAxMDAuMSAzNDYuMiA5NiAzMzYgOTZzLTIwLjEgNC4xLTI3LjMgMTEuM2wtMzAuMSAzMC4xYy0xMi41IDEyLjUtMzIuOCAxMi41LTQ1LjMgMGwtMzAuMS0zMC4xQzE5Ni4xIDEwMC4xIDE4Ni4yIDk2IDE3NiA5NnMtMjAuMSA0LjEtMjcuMyAxMS4zbC0zNC4xIDM0LjFjLTEwLjggMTAuOC0yNy43IDEyLjUtNDAuNCA0TDU3LjMgMTM0LjJjLTYuMS00LTEzLjItNi4yLTIwLjQtNi4yLTIwLjMgMC0zNi44IDE2LjUtMzYuOCAzNi44bDAgLjZjMCA2LjkgMS45IDEzLjcgNS41IDE5LjZ6Il19LCRmcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJhbmNob3ItY2lyY2xlLWV4Y2xhbWF0aW9uIixpY29uOls2NDAsNTEyLFtdLCJlNGFiIiwiTTMyMC41IDk2YTMyIDMyIDAgMSAxIC02NCAwIDMyIDMyIDAgMSAxIDY0IDB6bS0zMi05NmMtNTMgMC05NiA0My05NiA5NiAwIDQxLjggMjYuNyA3Ny40IDY0IDkwLjVsMCAyNTcuOWMtNjIuOS0xNC4zLTExMC4yLTY5LjctMTExLjktMTM2LjVsMTYuMSAxNC4xYzEwIDguNyAyNS4xIDcuNyAzMy45LTIuM3M3LjctMjUuMS0yLjMtMzMuOWwtNjQtNTZjLTktNy45LTIyLjYtNy45LTMxLjYgMGwtNjQgNTZjLTEwIDguNy0xMSAyMy45LTIuMyAzMy45czIzLjkgMTEgMzMuOSAyLjNsMTYuMi0xNC4yYzIuMSAxMTMuMSA5NC40IDIwNC4xIDIwOCAyMDQuMSAxNi42IDAgMzIuNy0xLjkgNDguMi01LjYtMjAuMy0zMC41LTMyLjItNjctMzIuMi0xMDYuNCAwLTI3LjMgNS43LTUzLjMgMTYtNzYuOWwwLTEzNi42YzM3LjMtMTMuMiA2NC00OC43IDY0LTkwLjUgMC01My00My05Ni05Ni05NnptMjA4IDU0NGExNDQgMTQ0IDAgMSAwIDAtMjg4IDE0NCAxNDQgMCAxIDAgMCAyODh6bTAtMTAwYTIwIDIwIDAgMSAxIDAgNDAgMjAgMjAgMCAxIDEgMC00MHptMC0xNDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgODBjMCA4LjgtNy4yIDE2LTE2IDE2cy0xNi03LjItMTYtMTZsMC04MGMwLTguOCA3LjItMTYgMTYtMTZ6Il19LGpDZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJlbGxpcHNpcy12ZXJ0aWNhbCIsaWNvbjpbMTI4LDUxMixbImVsbGlwc2lzLXYiXSwiZjE0MiIsIk02NCAxNDRhNTYgNTYgMCAxIDEgMC0xMTIgNTYgNTYgMCAxIDEgMCAxMTJ6bTAgMjI0YzMwLjkgMCA1NiAyNS4xIDU2IDU2cy0yNS4xIDU2LTU2IDU2LTU2LTI1LjEtNTYtNTYgMjUuMS01NiA1Ni01NnptNTYtMTEyYzAgMzAuOS0yNS4xIDU2LTU2IDU2cy01Ni0yNS4xLTU2LTU2IDI1LjEtNTYgNTYtNTYgNTYgMjUuMSA1NiA1NnoiXX0sUGZyPWpDZSxJZnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaGVhcnQtY2lyY2xlLWV4Y2xhbWF0aW9uIixpY29uOls1NzYsNTEyLFtdLCJlNGZlIiwiTTI0MSA4Ny4xbDE1IDIwLjcgMTUtMjAuN0MyOTYgNTIuNSAzMzYuMiAzMiAzNzguOSAzMiA0NTIuNCAzMiA1MTIgOTEuNiA1MTIgMTY1LjFsMCAyLjZjMCAxNy42LTMuNCAzNS42LTkuNSA1My43LTIxLjgtOC42LTQ1LjYtMTMuNC03MC41LTEzLjQtMTA2IDAtMTkyIDg2LTE5MiAxOTIgMCAyOC41IDYuMiA1NS42IDE3LjQgODAtLjUgMC0uOSAwLTEuNCAwLTE1LjUgMC0zMC44LTQuNi00My4xLTE0LjEtNzMtNTUuNy0yMTIuOS0xODYtMjEyLjktMjk4LjJsMC0yLjZDMCA5MS42IDU5LjYgMzIgMTMzLjEgMzIgMTc1LjggMzIgMjE2IDUyLjUgMjQxIDg3LjF6TTQzMiAyNTZhMTQ0IDE0NCAwIDEgMSAwIDI4OCAxNDQgMTQ0IDAgMSAxIDAtMjg4em0wIDIyOGEyMCAyMCAwIDEgMCAwLTQwIDIwIDIwIDAgMSAwIDAgNDB6bTAtMTgwYy04LjggMC0xNiA3LjItMTYgMTZsMCA4MGMwIDguOCA3LjIgMTYgMTYgMTZzMTYtNy4yIDE2LTE2bDAtODBjMC04LjgtNy4yLTE2LTE2LTE2eiJdfSxOZnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYnVpbGRpbmctY2lyY2xlLWV4Y2xhbWF0aW9uIixpY29uOls1NzYsNTEyLFtdLCJlNGQzIiwiTTk2IDBDNjAuNyAwIDMyIDI4LjcgMzIgNjRsMCAzODRjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMTgwIDBjLTEwLjUtMTQuNi0xOS0zMC43LTI1LjEtNDhsLTc0LjkgMCAwLTgwYzAtMTcuNyAxNC4zLTMyIDMyLTMybDMyIDBjMiAwIDQgLjIgNS45IC41IDYtMjMuNiAxNi4zLTQ1LjQgMzAuMS02NC41bC00IDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyYzAtOC44IDcuMi0xNiAxNi0xNmwzMiAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDRjMjcuNS0xOS44IDYwLjMtMzIuNCA5Ni0zNS40TDQxNiA2NGMwLTM1LjMtMjguNy02NC02NC02NEw5NiAwem0zMiAxMTJjMC04LjggNy4yLTE2IDE2LTE2bDMyIDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMzJjMCA4LjgtNy4yIDE2LTE2IDE2bC0zMiAwYy04LjggMC0xNi03LjItMTYtMTZsMC0zMnpNMjcyIDk2bDMyIDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMzJjMCA4LjgtNy4yIDE2LTE2IDE2bC0zMiAwYy04LjggMC0xNi03LjItMTYtMTZsMC0zMmMwLTguOCA3LjItMTYgMTYtMTZ6TTEyOCAyNDBjMC04LjggNy4yLTE2IDE2LTE2bDMyIDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMzJjMCA4LjgtNy4yIDE2LTE2IDE2bC0zMiAwYy04LjggMC0xNi03LjItMTYtMTZsMC0zMnpNNDMyIDU0NGExNDQgMTQ0IDAgMSAwIDAtMjg4IDE0NCAxNDQgMCAxIDAgMCAyODh6bTAtMTAwYTIwIDIwIDAgMSAxIDAgNDAgMjAgMjAgMCAxIDEgMC00MHptMC0xNDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgODBjMCA4LjgtNy4yIDE2LTE2IDE2cy0xNi03LjItMTYtMTZsMC04MGMwLTguOCA3LjItMTYgMTYtMTZ6Il19LEZmcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwZXJzb24tYXJyb3ctdXAtZnJvbS1saW5lIixpY29uOls1NzYsNTEyLFtdLCJlNTM5IiwiTTE5Mi0zMmE1NiA1NiAwIDEgMSAwIDExMiA1NiA1NiAwIDEgMSAwLTExMnpNMzE4LjMgMjk5LjFsLTQ2LjMtNjIuNCAwIDI0My4zIDI3MiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMyTDMyIDU0NGMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMmw4MCAwIDAtMjQzLjMtNDYuMyA2Mi40Yy0xMC41IDE0LjItMzAuNiAxNy4yLTQ0LjggNi42cy0xNy4yLTMwLjYtNi42LTQ0LjhsNzAuNS05NUMxMTAgMTMyIDE0OS43IDExMiAxOTIgMTEyczgyIDIwIDEwNy4yIDUzLjlsNzAuNSA5NWMxMC41IDE0LjIgNy42IDM0LjItNi42IDQ0LjhzLTM0LjIgNy42LTQ0LjgtNi42ek0yMDggNDgwbDAtMTI4YzAtOC44LTcuMi0xNi0xNi0xNnMtMTYgNy4yLTE2IDE2bDAgMTI4IDMyIDB6TTU2Ni42IDEwMi42Yy0xMi41IDEyLjUtMzIuOCAxMi41LTQ1LjMgMEw0OTYgNzcuMyA0OTYgMjI0YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMTQ2LjctMjUuNCAyNS40Yy0xMi41IDEyLjUtMzIuOCAxMi41LTQ1LjMgMHMtMTIuNS0zMi44IDAtNDUuM2w4MC04MGMxMi41LTEyLjUgMzIuOC0xMi41IDQ1LjMgMGw4MCA4MGMxMi41IDEyLjUgMTIuNSAzMi44IDAgNDUuM3oiXX0sT2ZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im5vdC1lcXVhbCIsaWNvbjpbNDQ4LDUxMixbXSwiZjUzZSIsIk0zNzguNiA4MS44YzkuOC0xNC43IDUuOC0zNC42LTguOS00NC40cy0zNC42LTUuOC00NC40IDguOUwyNzAuOSAxMjggMzIgMTI4Yy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDE5Ni4yIDAtODUuMyAxMjgtMTEwLjkgMGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmw2OC4yIDAtMzAuOCA0Ni4yYy05LjggMTQuNy01LjggMzQuNiA4LjkgNDQuNHMzNC42IDUuOCA0NC40LTguOUwxNzcuMSAzODQgNDE2IDM4NGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtMTk2LjIgMCA4NS4zLTEyOCAxMTAuOSAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC02OC4yIDAgMzAuOC00Ni4yeiJdfSxSZnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidHJhaW4tdHJhbSIsaWNvbjpbMzg0LDUxMixbMTI4NjUwXSwiZTViNCIsIk0wIDhDMC01LjMgMTAuNy0xNiAyNC0xNmwzMzYgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNGwwIDMyYzAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0bDAtOC0xMjAgMCAwIDY0IDQwIDBjNTMgMCA5NiA0MyA5NiA5NmwwIDE2MGMwIDMxLjItMTQuOSA1OS0zOCA3Ni41bDY0LjMgNzZjOC42IDEwLjEgNy4zIDI1LjMtMi44IDMzLjhzLTI1LjMgNy4zLTMzLjgtMi44bC03NC42LTg4LjFjLTMuNiAuNC03LjMgLjYtMTEuMSAuNmwtMTI4IDBjLTMuOCAwLTcuNS0uMi0xMS4xLS42TDQyLjMgNTM1LjVjLTguNiAxMC4xLTIzLjcgMTEuNC0zMy44IDIuOHMtMTEuNC0yMy43LTIuOC0zMy44bDY0LjMtNzZDNDYuOSA0MTEgMzIgMzgzLjIgMzIgMzUybDAtMTYwYzAtNTMgNDMtOTYgOTYtOTZsNDAgMCAwLTY0LTEyMCAwIDAgOGMwIDEzLjMtMTAuNyAyNC0yNCAyNFMwIDUzLjMgMCA0MEwwIDh6TTEyOCAxNjBjLTE3LjcgMC0zMiAxNC4zLTMyIDMybDAgMzJjMCAxNy43IDE0LjMgMzIgMzIgMzJsMTI4IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJsMC0zMmMwLTE3LjctMTQuMy0zMi0zMi0zMmwtMTI4IDB6bTMyIDE5MmEzMiAzMiAwIDEgMCAtNjQgMCAzMiAzMiAwIDEgMCA2NCAwem05NiAzMmEzMiAzMiAwIDEgMCAwLTY0IDMyIDMyIDAgMSAwIDAgNjR6Il19LEJmcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwbGFuZS1kZXBhcnR1cmUiLGljb246WzU3Niw1MTIsWzEyODc0N10sImY1YjAiLCJNMzcyIDE0My45TDE3Mi43IDQwLjJjLTgtNC4xLTE3LjMtNC44LTI1LjctMS43bC00MS4xIDE1Yy0xMC4zIDMuNy0xMy44IDE2LjQtNy4xIDI1TDIwMC4zIDIwNi40IDEwMC4xIDI0Mi44IDQwIDIwNi4yYy02LjItMy44LTEzLjgtNC41LTIwLjctMi4xTDMgMjEwLjFjLTkuNCAzLjQtMTMuNCAxNC41LTguMyAyMy4xbDUzLjYgOTEuOGMxNS42IDI2LjcgNDguMSAzOC40IDc3LjEgMjcuOGwxMi45LTQuNyAwIDAgMzk4LjQtMTQ1YzI5LjEtMTAuNiA0NC00Mi43IDMzLjUtNzEuOHMtNDIuNy00NC03MS44LTMzLjVMMzcyIDE0My45ek0zMi4yIDQ0OGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmw1MTIgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtNTEyIDB6Il19LFZDZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJyaWdodC10by1icmFja2V0IixpY29uOls1MTIsNTEyLFsic2lnbi1pbi1hbHQiXSwiZjJmNiIsIk0zNDUgMjczYzkuNC05LjQgOS40LTI0LjYgMC0zMy45TDIwMSA5NWMtNi45LTYuOS0xNy4yLTguOS0yNi4yLTUuMlMxNjAgMTAyLjMgMTYwIDExMmwwIDgwLTExMiAwYy0yNi41IDAtNDggMjEuNS00OCA0OGwwIDMyYzAgMjYuNSAyMS41IDQ4IDQ4IDQ4bDExMiAwIDAgODBjMCA5LjcgNS44IDE4LjUgMTQuOCAyMi4yczE5LjMgMS43IDI2LjItNS4yTDM0NSAyNzN6bTcgMTQzYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDY0IDBjNTMgMCA5Ni00MyA5Ni05NmwwLTI1NmMwLTUzLTQzLTk2LTk2LTk2bC02NCAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDY0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCAyNTZjMCAxNy43LTE0LjMgMzItMzIgMzJsLTY0IDB6Il19LEhmcj1WQ2UscWZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNkLWNhcmQiLGljb246WzM4NCw1MTIsW10sImY3YzIiLCJNMzg0IDY0YzAtMzUuMy0yOC43LTY0LTY0LTY0TDEyNS4zIDBDMTA4LjMgMCA5MiA2LjcgODAgMTguN0wxOC43IDgwQzYuNyA5MiAwIDEwOC4zIDAgMTI1LjNMMCA0NDhjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMjU2IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zODR6TTE2MCA4OGwwIDQ4YzAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0bDAtNDhjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNHptODggMGwwIDQ4YzAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0bDAtNDhjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNHptODggMGwwIDQ4YzAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0bDAtNDhjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNHoiXX0samZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhvdXNlLWNpcmNsZS1leGNsYW1hdGlvbiIsaWNvbjpbNjQwLDUxMixbXSwiZTUwYSIsIk00OTYgNTQ0YTE0NCAxNDQgMCAxIDEgMC0yODggMTQ0IDE0NCAwIDEgMSAwIDI4OHpNMjY4LjYgNi41YzEyLjItOS4zIDI5LjctOC43IDQxLjIgMmwyMTcuNiAyMDJjLTEwLjItMS43LTIwLjctMi42LTMxLjMtMi42LTc4LjYgMC0xNDYuMSA0Ny4yLTE3NS44IDExNC44LTUuMS0xLjgtMTAuNS0yLjgtMTYuMi0yLjhsLTMyIDBjLTI2LjUgMC00OCAyMS41LTQ4IDQ4bDAgOTYgOTEgMGM2LjEgMTcuMyAxNC42IDMzLjQgMjUuMSA0OEwxNDQgNTEyYy0zNS4zIDAtNjQtMjguNy02NC02NGwwLTE3Ni0xNiAwYy0xMy4yIDAtMjUtOC4xLTI5LjgtMjAuM3MtMS42LTI2LjIgOC0zNS4xbDIyNC0yMDggMi40LTJ6TTQ5NiA0NDRhMjAgMjAgMCAxIDAgMCA0MCAyMCAyMCAwIDEgMCAwLTQwem0wLTE0MGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgODBjMCA4LjggNy4yIDE2IDE2IDE2IDguOCAwIDE2LTcuMiAxNi0xNmwwLTgwYzAtOC44LTcuMi0xNi0xNi0xNnoiXX0sJDk9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic2hla2VsLXNpZ24iLGljb246WzQ0OCw1MTIsWzgzNjIsImlscyIsInNoZWtlbCIsInNoZXFlbCIsInNoZXFlbC1zaWduIl0sImYyMGIiLCJNMzIgMzJDMTQuMyAzMiAwIDQ2LjMgMCA2NEwwIDQ0OGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMzUyIDEyOCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMTYwYzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0xNjBjMC03MC43LTU3LjMtMTI4LTEyOC0xMjhMMzIgMzJ6TTMyMCA0ODBjNzAuNyAwIDEyOC01Ny4zIDEyOC0xMjhsMC0yODhjMC0xNy43LTE0LjMtMzItMzItMzJzLTMyIDE0LjMtMzIgMzJsMCAyODhjMCAzNS4zLTI4LjcgNjQtNjQgNjRsLTEyOCAwIDAtMjI0YzAtMTcuNy0xNC4zLTMyLTMyLTMycy0zMiAxNC4zLTMyIDMybDAgMjU2YzAgMTcuNyAxNC4zIDMyIDMyIDMybDE2MCAweiJdfSxWZnI9JDksVWZyPSQ5LFdmcj0kOSxHZnI9JDksWWZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InJhZGlvIixpY29uOls1MTIsNTEyLFsxMjgyNTFdLCJmOGQ3IiwiTTQ5NC44IDE1YzEyLjctMy43IDIwLTE3LjEgMTYuMy0yOS44UzQ5NC0zNC44IDQ4MS4zLTMxTDUxLjggOTQuOUM0Mi40IDk3LjYgMzMuOSAxMDIuMSAyNi42IDEwOCAxMC41IDExOS43IDAgMTM4LjYgMCAxNjBMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzg0IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0yNTZjMC0zNS4zLTI4LjctNjQtNjQtNjRMMjE4LjUgOTYgNDk0LjggMTV6TTM2OCAyMDhhODAgODAgMCAxIDEgMCAxNjAgODAgODAgMCAxIDEgMC0xNjB6TTY0IDI0OGMwLTEzLjMgMTAuNy0yNCAyNC0yNGwxMTIgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNEw4OCAyNzJjLTEzLjMgMC0yNC0xMC43LTI0LTI0em0wIDk2YzAtMTMuMyAxMC43LTI0IDI0LTI0bDExMiAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0TDg4IDM2OGMtMTMuMyAwLTI0LTEwLjctMjQtMjR6Il19LFVDZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJoYW5kLWRvdHMiLGljb246WzUxMiw1MTIsWyJhbGxlcmdpZXMiXSwiZjQ2MSIsIk0yODggMzJjMC0xNy43LTE0LjMtMzItMzItMzJzLTMyIDE0LjMtMzIgMzJsMCAyMDhjMCA4LjgtNy4yIDE2LTE2IDE2cy0xNi03LjItMTYtMTZsMC0xNzZjMC0xNy43LTE0LjMtMzItMzItMzJzLTMyIDE0LjMtMzIgMzJsMCAyNzJjMCAxLjUgMCAzLjEgLjEgNC42TDY3LjYgMjgzYy0xNi0xNS4yLTQxLjMtMTQuNi01Ni42IDEuNFMtMy42IDMyNS43IDEyLjQgMzQxTDEyNC44IDQ0OGM0My4xIDQxLjEgMTAwLjQgNjQgMTYwIDY0bDE5LjIgMGM5Ny4yIDAgMTc2LTc4LjggMTc2LTE3NmwwLTIwOGMwLTE3LjctMTQuMy0zMi0zMi0zMnMtMzIgMTQuMy0zMiAzMmwwIDExMmMwIDguOC03LjIgMTYtMTYgMTZzLTE2LTcuMi0xNi0xNmwwLTE3NmMwLTE3LjctMTQuMy0zMi0zMi0zMnMtMzIgMTQuMy0zMiAzMmwwIDE3NmMwIDguOC03LjIgMTYtMTYgMTZzLTE2LTcuMi0xNi0xNmwwLTIwOHpNMjAwIDM1MmEyNCAyNCAwIDEgMSA0OCAwIDI0IDI0IDAgMSAxIC00OCAwem0xMjAtNTZhMjQgMjQgMCAxIDEgMCA0OCAyNCAyNCAwIDEgMSAwLTQ4em00MCA4OGEyNCAyNCAwIDEgMSA0OCAwIDI0IDI0IDAgMSAxIC00OCAwem0tODggMjRhMjQgMjQgMCAxIDEgMCA0OCAyNCAyNCAwIDEgMSAwLTQ4eiJdfSxaZnI9VUNlLFdDZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJib29rLXNrdWxsIixpY29uOls0NDgsNTEyLFsiYm9vay1kZWFkIl0sImY2YjciLCJNOTYgNTEybDMyMCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybDAtNjYuN2MxOC42LTYuNiAzMi0yNC40IDMyLTQ1LjNsMC0yODhjMC0yNi41LTIxLjUtNDgtNDgtNDhMOTYgMEM0MyAwIDAgNDMgMCA5NkwwIDQxNmMwIDUzIDQzIDk2IDk2IDk2ek02NCA0MTZjMC0xNy43IDE0LjMtMzIgMzItMzJsMjU2IDAgMCA2NC0yNTYgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJ6TTI3MiAxNjMuMmwwIDEyLjhjMCA4LjgtNy4yIDE2LTE2IDE2bC02NCAwYy04LjggMC0xNi03LjItMTYtMTZsMC0xMi44Yy0xOS40LTExLjctMzItMzAuMy0zMi01MS4yIDAtMzUuMyAzNS44LTY0IDgwLTY0czgwIDI4LjcgODAgNjRjMCAyMC45LTEyLjYgMzkuNS0zMiA1MS4yek0yMDggMTEyYTE2IDE2IDAgMSAwIC0zMiAwIDE2IDE2IDAgMSAwIDMyIDB6bTQ4IDE2YTE2IDE2IDAgMSAwIDAtMzIgMTYgMTYgMCAxIDAgMCAzMnptNzQuMiA5NS43YzQuNiAxMC4xIC4xIDIxLjktOS45IDI2LjVsLTQ3LjkgMjEuOCA0Ny45IDIxLjhjMTAuMSA0LjYgMTQuNSAxNi40IDkuOSAyNi41cy0xNi40IDE0LjUtMjYuNSA5LjlMMjI0IDI5NCAxNDQuMyAzMzAuMmMtMTAuMSA0LjYtMjEuOSAuMS0yNi41LTkuOXMtLjEtMjEuOSA5LjktMjYuNWw0Ny45LTIxLjgtNDcuOS0yMS44Yy0xMC4xLTQuNi0xNC41LTE2LjQtOS45LTI2LjVzMTYuNC0xNC41IDI2LjUtOS45TDIyNCAyNTAgMzAzLjcgMjEzLjhjMTAuMS00LjYgMjEuOS0uMSAyNi41IDkuOXoiXX0sWGZyPVdDZSxHQ2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidW5sb2NrLWtleWhvbGUiLGljb246WzM4NCw1MTIsWyJ1bmxvY2stYWx0Il0sImYxM2UiLCJNMTkyIDMyYy0zNS4zIDAtNjQgMjguNy02NCA2NGwwIDY0IDE5MiAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMjI0YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDUxMmMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCAyMjRjMC0zNS4zIDI4LjctNjQgNjQtNjRsMC02NGMwLTcwLjcgNTcuMy0xMjggMTI4LTEyOCA2My41IDAgMTE2LjEgNDYuMSAxMjYuMiAxMDYuNyAyLjkgMTcuNC04LjggMzMuOS0yNi4zIDM2LjlzLTMzLjktOC44LTM2LjktMjYuM0MyNTAgNTUuMSAyMjMuNyAzMiAxOTIgMzJ6bTQwIDMyOGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtODAgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGw4MCAweiJdfSxRZnI9R0NlLFlDZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmaWxlLWFycm93LXVwIixpY29uOlszODQsNTEyLFsiZmlsZS11cGxvYWQiXSwiZjU3NCIsIk0wIDY0QzAgMjguNyAyOC43IDAgNjQgMEwyMTMuNSAwYzE3IDAgMzMuMyA2LjcgNDUuMyAxOC43TDM2NS4zIDEyNS4zYzEyIDEyIDE4LjcgMjguMyAxOC43IDQ1LjNMMzg0IDQ0OGMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA1MTJjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgNjR6bTIwOC01LjVsMCA5My41YzAgMTMuMyAxMC43IDI0IDI0IDI0TDMyNS41IDE3NiAyMDggNTguNXpNMjA5IDI2M2MtOS40LTkuNC0yNC42LTkuNC0zMy45IDBsLTY0IDY0Yy05LjQgOS40LTkuNCAyNC42IDAgMzMuOXMyNC42IDkuNCAzMy45IDBsMjMtMjMgMCA4Ni4xYzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC04Ni4xIDIzIDIzYzkuNCA5LjQgMjQuNiA5LjQgMzMuOSAwczkuNC0yNC42IDAtMzMuOWwtNjQtNjR6Il19LEtmcj1ZQ2UsWkNlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZhY2UtZ3Jpbi10ZWFycyIsaWNvbjpbNjQwLDUxMixbMTI4NTE0LCJncmluLXRlYXJzIl0sImY1ODgiLCJNNTU0LjggMjAzLjRsMTYuMyAyLjNDNTQ3LjcgODguNCA0NDQuMiAwIDMyMCAwUzkyLjMgODguNCA2OC45IDIwNS43bDE2LjMtMi4zYzM3LTUuMyA2OC42IDI2LjQgNjMuNCA2My40bC02LjcgNDYuN2MtNC4xIDI5LTIxLjYgNTMuMi00NS44IDY2LjggNDMuNyA3OC41IDEyNy42IDEzMS43IDIyMy44IDEzMS43czE4MC4xLTUzLjEgMjIzLjgtMTMxLjdjLTI0LjEtMTMuNS00MS42LTM3LjgtNDUuOC02Ni44bC02LjctNDYuN2MtNS4zLTM3IDI2LjQtNjguNiA2My40LTYzLjR6TTQ3MC4zIDMyNi45QzQ0Ny45IDM4OC4yIDM4OS4xIDQzMiAzMjAgNDMyUzE5Mi4xIDM4OC4yIDE2OS43IDMyNi45Yy00LjMtMTEuOCA3LjctMjEuOCAxOS42LTE4LjEgMzkuMiAxMi4yIDgzLjcgMTkuMSAxMzAuNyAxOS4xczkxLjUtNi45IDEzMC43LTE5LjFjMTEuOS0zLjcgMjMuOSA2LjMgMTkuNiAxOC4xek0yMTIgMjA4bDAgOGMwIDExLTkgMjAtMjAgMjBzLTIwLTktMjAtMjBsMC04YzAtMzcuNiAzMC40LTY4IDY4LTY4czY4IDMwLjQgNjggNjhsMCA4YzAgMTEtOSAyMC0yMCAyMHMtMjAtOS0yMC0yMGwwLThjMC0xNS41LTEyLjUtMjgtMjgtMjhzLTI4IDEyLjUtMjggMjh6bTE4OC0yOGMtMTUuNSAwLTI4IDEyLjUtMjggMjhsMCA4YzAgMTEtOSAyMC0yMCAyMHMtMjAtOS0yMC0yMGwwLThjMC0zNy42IDMwLjQtNjggNjgtNjhzNjggMzAuNCA2OCA2OGwwIDhjMCAxMS05IDIwLTIwIDIwcy0yMC05LTIwLTIwbDAtOGMwLTE1LjUtMTIuNS0yOC0yOC0yOHpNNjQwIDMwMC42YzAtMjUuNi0xOC44LTQ3LjMtNDQuMS01MC45TDU0OS4xIDI0M2MtMTAuNi0xLjUtMTkuNiA3LjUtMTguMSAxOC4xbDYuNyA0Ni43YzMuNiAyNS4zIDI1LjMgNDQuMSA1MC45IDQ0LjEgMjguNCAwIDUxLjQtMjMgNTEuNC01MS40em0tNjQwIDBDMCAzMjkgMjMgMzUyIDUxLjQgMzUyIDc3IDM1MiA5OC43IDMzMy4yIDEwMi4zIDMwNy45bDYuNy00Ni43YzEuNS0xMC42LTcuNS0xOS42LTE4LjEtMTguMWwtNDYuNyA2LjdDMTguOCAyNTMuMyAwIDI3NSAwIDMwMC42eiJdfSxKZnI9WkNlLEZ3PXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBlbi10by1zcXVhcmUiLGljb246WzUxMiw1MTIsWyJlZGl0Il0sImYwNDQiLCJNNDcxLjYgMjEuN2MtMjEuOS0yMS45LTU3LjMtMjEuOS03OS4yIDBMMzY4IDQ2LjEgNDY1LjkgMTQ0IDQ5MC4zIDExOS42YzIxLjktMjEuOSAyMS45LTU3LjMgMC03OS4yTDQ3MS42IDIxLjd6bS0yOTkuMiAyMjBjLTYuMSA2LjEtMTAuOCAxMy42LTEzLjUgMjEuOWwtMjkuNiA4OC44Yy0yLjkgOC42LS42IDE4LjEgNS44IDI0LjZzMTUuOSA4LjcgMjQuNiA1LjhsODguOC0yOS42YzguMi0yLjcgMTUuNy03LjQgMjEuOS0xMy41TDQzMiAxNzcuOSAzMzQuMSA4MCAxNzIuNCAyNDEuN3pNOTYgNjRDNDMgNjQgMCAxMDcgMCAxNjBMMCA0MTZjMCA1MyA0MyA5NiA5NiA5NmwyNTYgMGM1MyAwIDk2LTQzIDk2LTk2bDAtOTZjMC0xNy43LTE0LjMtMzItMzItMzJzLTMyIDE0LjMtMzIgMzJsMCA5NmMwIDE3LjctMTQuMyAzMi0zMiAzMkw5NiA0NDhjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtMjU2YzAtMTcuNyAxNC4zLTMyIDMyLTMybDk2IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJMOTYgNjR6Il19LGU1cj1GdyxYQ2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZWFydGgtZXVyb3BlIixpY29uOls1MTIsNTEyLFsiZ2xvYmUtZXVyb3BlIl0sImY3YTIiLCJNMjU2LjIgNDhjMTE0LjggLjEgMjA3LjggOTMuMiAyMDcuOCAyMDggMCAyMi4xLTMuNCA0My40LTkuOCA2My40LTIgLjQtNC4xIC42LTYuMiAuNmwtMi43IDBjLTguNSAwLTE2LjYtMy40LTIyLjYtOS40bC0yOS4zLTI5LjNjLTYtNi05LjQtMTQuMS05LjQtMjIuNmwwLTUwLjdjMC04LjggNy4yLTE2IDE2LTE2czE2LTcuMiAxNi0xNi03LjItMTYtMTYtMTZsLTI0IDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0cy0xMC43IDI0LTI0IDI0bC01NiAwYy04LjggMC0xNiA3LjItMTYgMTZzLTcuMiAxNi0xNiAxNmwtMjUuNCAwYy0xMi41IDAtMjIuNi0xMC4xLTIyLjYtMjIuNiAwLTYgMi40LTExLjggNi42LTE2bDcwLjEtNzAuMWMyLjEtMi4xIDMuMy01IDMuMy04IDAtNi4yLTUuMS0xMS4zLTExLjMtMTEuM2wtMTQuMSAwYy0xMi41IDAtMjIuNi0xMC4xLTIyLjYtMjIuNiAwLTYgMi40LTExLjggNi42LTE2bDIzLjEtMjMuMWMuOC0uOCAxLjYtMS41IDIuNS0yLjJ6TTQzOC40IDM1Ni4xYy0zMi44IDU5LjYtOTMuOSAxMDEuNC0xNjUuMiAxMDcuMi0uNy0yLjMtMS4xLTQuOC0xLjEtNy4zIDAtMTMuMy0xMC43LTI0LTI0LTI0bC0yNi43IDBjLTguNSAwLTE2LjYtMy40LTIyLjYtOS40bC0yOS4zLTI5LjNjLTYtNi05LjQtMTQuMS05LjQtMjIuNmwwLTY2LjdjMC0xNy43IDE0LjMtMzIgMzItMzJsOTguNyAwYzguNSAwIDE2LjYgMy40IDIyLjYgOS40bDI5LjMgMjkuM2M2IDYgMTQuMSA5LjQgMjIuNiA5LjRsNS41IDBjOC41IDAgMTYuNiAzLjQgMjIuNiA5LjRsMTYgMTZjNC4yIDQuMiAxMCA2LjYgMTYgNi42IDQuOCAwIDkuMyAxLjUgMTMgNC4xek0yNTYgNTEybDI2LjItMS4zYy04LjYgLjktMTcuMyAxLjMtMjYuMiAxLjN6bTI2LjItMS4zQzQxMS4zIDQ5Ny42IDUxMiAzODguNiA1MTIgMjU2IDUxMiAxMTQuNiAzOTcuNCAwIDI1NiAwbDAgMEMxMTQuNiAwIDAgMTE0LjYgMCAyNTYgMCAzODMuNSA5My4yIDQ4OS4zIDIxNS4zIDUwOC44IDIyOC41IDUxMC45IDI0Mi4xIDUxMiAyNTYgNTEyek0xODcuMyAxMjMuM2wtMzIgMzJjLTYuMiA2LjItMTYuNCA2LjItMjIuNiAwcy02LjItMTYuNCAwLTIyLjZsMzItMzJjNi4yLTYuMiAxNi40LTYuMiAyMi42IDBzNi4yIDE2LjQgMCAyMi42eiJdfSx0NXI9WENlLFFDZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmYWNlLWdyaW4tYmVhbS1zd2VhdCIsaWNvbjpbNTc2LDUxMixbMTI4NTE3LCJncmluLWJlYW0tc3dlYXQiXSwiZjU4MyIsIk01NDYuMi0uMWMxNC43IDE3LjggMjkuOCA0MC4xIDI5LjggNjQuMSAwIDM2LjQtMjcuNiA2NC02NCA2NHMtNjQtMjcuNi02NC02NGMwLTI0IDE1LjItNDYuMyAyOS44LTY0LjEgOC44LTEwLjcgMTguNS0yMC44IDI5LTMwIDMtMi42IDcuNC0yLjYgMTAuNCAwIDEwLjUgOS4xIDIwLjEgMTkuMyAyOSAzMHpNMjg4IDBjNDIuNSAwIDgyLjYgMTAuNCAxMTcuOCAyOC43LTMuNiAxMC45LTUuOCAyMi43LTUuOCAzNS4zIDAgNjIuOSA0OS4xIDExMiAxMTIgMTEyIDYuNCAwIDEyLjctLjUgMTguOC0xLjUgOC42IDI1LjYgMTMuMiA1MyAxMy4yIDgxLjUgMCAxNDEuNC0xMTQuNiAyNTYtMjU2IDI1NlMzMiAzOTcuNCAzMiAyNTYgMTQ2LjYgMCAyODggMHpNNDE4LjcgMzA4LjlDMzc5LjUgMzIxLjEgMzM1LjEgMzI4IDI4OCAzMjhzLTkxLjUtNi45LTEzMC43LTE5LjFjLTExLjktMy43LTIzLjkgNi4zLTE5LjYgMTguMSAyMi40IDYxLjMgODEuMyAxMDUuMSAxNTAuMyAxMDUuMXMxMjcuOS00My44IDE1MC4zLTEwNS4xYzQuMy0xMS44LTcuNy0yMS44LTE5LjYtMTguMXpNMjA4IDE4MGMxNS41IDAgMjggMTIuNSAyOCAyOGwwIDhjMCAxMSA5IDIwIDIwIDIwczIwLTkgMjAtMjBsMC04YzAtMzcuNi0zMC40LTY4LTY4LTY4cy02OCAzMC40LTY4IDY4bDAgOGMwIDExIDkgMjAgMjAgMjBzMjAtOSAyMC0yMGwwLThjMC0xNS41IDEyLjUtMjggMjgtMjh6bTEzMiAyOGMwLTE1LjUgMTIuNS0yOCAyOC0yOHMyOCAxMi41IDI4IDI4bDAgOGMwIDExIDkgMjAgMjAgMjBzMjAtOSAyMC0yMGwwLThjMC0zNy42LTMwLjQtNjgtNjgtNjhzLTY4IDMwLjQtNjggNjhsMCA4YzAgMTEgOSAyMCAyMCAyMHMyMC05IDIwLTIwbDAtOHoiXX0scjVyPVFDZSxLQ2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2lyY2xlLWhhbGYtc3Ryb2tlIixpY29uOls1MTIsNTEyLFs5NjgwLCJhZGp1c3QiXSwiZjA0MiIsIk00NDggMjU2YzAtMTA2LTg2LTE5Mi0xOTItMTkybDAgMzg0YzEwNiAwIDE5Mi04NiAxOTItMTkyek0wIDI1NmEyNTYgMjU2IDAgMSAxIDUxMiAwIDI1NiAyNTYgMCAxIDEgLTUxMiAweiJdfSxhNXI9S0NlLGk1cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwZXJzb24tbWlsaXRhcnktdG8tcGVyc29uIixpY29uOls1MTIsNTEyLFtdLCJlNTRjIiwiTTcxIDEyLjVjLTguNiAxLTE1IDguMi0xNSAxNi44IDAgOS4zIDcuNSAxNi44IDE2LjcgMTYuOWwxMTEuNCAwYzguOC0uMSAxNS45LTcuMiAxNS45LTE2TDIwMCAxNmMwLTkuNS04LjMtMTctMTcuOC0xNS45TDcxIDEyLjV6TTE4OS41IDc4LjFsLTEyMi45IDBjLTEuNiA1LjctMi41IDExLjctMi41IDE3LjkgMCAzNS4zIDI4LjcgNjQgNjQgNjRzNjQtMjguNyA2NC02NGMwLTYuMi0uOS0xMi4yLTIuNS0xNy45ek0zMiAyNTZsMCAzMmMwIDE3LjcgMTQuMyAzMiAzMiAzMmwxMjggMGMxLjggMCAzLjUtLjEgNS4yLS40TDUzIDIwOC42QzQwLjEgMjIwLjMgMzIgMjM3LjIgMzIgMjU2em0xOTAuMiA0Mi41YzEuMS0zLjMgMS44LTYuOCAxLjgtMTAuNWwwLTMyYzAtMzUuMy0yOC43LTY0LTY0LTY0bC02NCAwYy0zLjcgMC03LjQgLjMtMTAuOSAuOUwyMjIuMiAyOTguNXpNMzg0IDE2MGE2NCA2NCAwIDEgMCAwLTEyOCA2NCA2NCAwIDEgMCAwIDEyOHptLTMyIDMyYy0zNS4zIDAtNjQgMjguNy02NCA2NGwwIDMyYzAgMTcuNyAxNC4zIDMyIDMyIDMybDEyOCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtMzJjMC0zNS4zLTI4LjctNjQtNjQtNjRsLTY0IDB6TTIxNS44IDQ1MC4xYzUuMi00LjYgOC4yLTExLjEgOC4yLTE4LjFzLTMtMTMuNS04LjItMTguMWwtNjQtNTZjLTcuMS02LjItMTcuMS03LjctMjUuNy0zLjhTMTEyIDM2Ni42IDExMiAzNzZsMCAzMi04OCAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDg4IDAgMCAzMmMwIDkuNCA1LjUgMTggMTQuMSAyMS45czE4LjYgMi40IDI1LjctMy44bDY0LTU2ek0yODggNDMxLjljMCA2LjkgMyAxMy41IDguMSAxOC4xbDY0IDU2LjRjNy4xIDYuMiAxNy4xIDcuOCAyNS43IDMuOVM0MDAgNDk3LjggNDAwIDQ4OC40bDAtMzIuNCA4OCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC04OCAwIDAtMzJjMC05LjQtNS41LTE4LTE0LjEtMjEuOXMtMTguNi0yLjQtMjUuNyAzLjhsLTY0IDU2Yy01LjIgNC41LTguMiAxMS4xLTguMiAxOHoiXX0sbzVyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRhYmxlLWNlbGxzLWNvbHVtbi1sb2NrIixpY29uOls2NDAsNTEyLFtdLCJlNjc4IiwiTTI1NiAyMjRsMCAxOTIgNjQgMCAwLTE5Mi02NCAwem0yNTYtNzljLTQ2LjcgNS44LTg1LjYgMzYuOC0xMDIuNyA3OWwtMjUuMyAwIDAgOTAuOGMtMTAuMSAxNS4yLTE2IDMzLjQtMTYgNTMuMWwwIDk2YzAgNS41IC41IDEwLjkgMS4zIDE2LjFMMTI4IDQ4MGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMNjQgOTZjMC0zNS4zIDI4LjctNjQgNjQtNjRsMzIwIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCA0OXpNMTI4IDIyNGwwIDE5MiA2NCAwIDAtMTkyLTY0IDB6bTQzMiA0OC4xYzAtMTcuNy0xNC4zLTMyLTMyLTMycy0zMiAxNC4zLTMyIDMybDAgNDcuOSA2NCAwIDAtNDcuOXpNNDE2IDM2OGMwLTIwLjkgMTMuNC0zOC43IDMyLTQ1LjNsMC01MC42YzAtNDQuMiAzNS44LTgwIDgwLTgwczgwIDM1LjggODAgODBsMCA1MC42YzE4LjYgNi42IDMyIDI0LjQgMzIgNDUuM2wwIDk2YzAgMjYuNS0yMS41IDQ4LTQ4IDQ4bC0xMjggMGMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhsMC05NnoiXX0sbjVyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRydWNrLWZpZWxkLXVuIixpY29uOls2NDAsNTEyLFtdLCJlNThlIiwiTTk2IDMyQzYwLjcgMzIgMzIgNjAuNyAzMiA5NmwwIDMyYy0xNy43IDAtMzIgMTQuMy0zMiAzMmwwIDk2YzAgMTcuNyAxNC4zIDMyIDMyIDMybDAgNDhjMCAyMS4xIDEzLjcgMzkuMSAzMi42IDQ1LjUtLjQgMy40LS42IDctLjYgMTAuNSAwIDQ4LjYgMzkuNCA4OCA4OCA4OHM4OC0zOS40IDg4LTg4YzAtMi43LS4xLTUuNC0uNC04bDE0NC43IDBjLS4yIDIuNi0uNCA1LjMtLjQgOCAwIDQ4LjYgMzkuNCA4OCA4OCA4OHM4OC0zOS40IDg4LTg4YzAtMi43LS4xLTUuNC0uNC04bC40IDBjMjYuNSAwIDQ4LTIxLjUgNDgtNDhsMC02NGMwLTI2LjUtMjEuNS00OC00OC00OGwtMjQuNyAwLTEuNy00LjItNDMuOC0xMDYuM2MtMTIuMy0zMC00MS42LTQ5LjUtNzQtNDkuNWwtNDAuNCAwQzM2NC40IDQ0LjkgMzQzLjcgMzIgMzIwIDMyTDk2IDMyek0zODQgMjI0bDAtOTYgMzEuOSAwYzYuNSAwIDEyLjMgMy45IDE0LjggOS45bDM1LjQgODYuMS04Mi4xIDB6TTE1MiAzNTJhNDAgNDAgMCAxIDEgMCA4MCA0MCA0MCAwIDEgMSAwLTgwem0yODAgNDBhNDAgNDAgMCAxIDEgODAgMCA0MCA0MCAwIDEgMSAtODAgMHpNMjU2LjYgMTMyLjlsMjcuNCA0MSAwLTI5LjljMC0xMSA5LTIwIDIwLTIwczIwIDkgMjAgMjBsMCA5NmMwIDguOC01LjggMTYuNi0xNC4yIDE5LjFzLTE3LjUtLjctMjIuNC04bC0yNy40LTQxIDAgMjkuOWMwIDExLTkgMjAtMjAgMjBzLTIwLTktMjAtMjBsMC05NmMwLTguOCA1LjgtMTYuNiAxNC4yLTE5LjFzMTcuNSAuNyAyMi40IDh6TTEzMiAxNDRsMCA2NGMwIDYuNiA1LjQgMTIgMTIgMTJzMTItNS40IDEyLTEybDAtNjRjMC0xMSA5LTIwIDIwLTIwczIwIDkgMjAgMjBsMCA2NGMwIDI4LjctMjMuMyA1Mi01MiA1MnMtNTItMjMuMy01Mi01MmwwLTY0YzAtMTEgOS0yMCAyMC0yMHMyMCA5IDIwIDIweiJdfSxKQ2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2xvY2siLGljb246WzUxMiw1MTIsWzEyODMzOSwiY2xvY2stZm91ciJdLCJmMDE3IiwiTTI1NiAwYTI1NiAyNTYgMCAxIDEgMCA1MTIgMjU2IDI1NiAwIDEgMSAwLTUxMnpNMjMyIDEyMGwwIDEzNmMwIDggNCAxNS41IDEwLjcgMjBsOTYgNjRjMTEgNy40IDI1LjkgNC40IDMzLjMtNi43czQuNC0yNS45LTYuNy0zMy4zTDI4MCAyNDMuMiAyODAgMTIwYzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0eiJdfSxzNXI9SkNlLGw1cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJib29rIixpY29uOls0NDgsNTEyLFsxMjgyMTJdLCJmMDJkIiwiTTM4NCA1MTJMOTYgNTEyYy01MyAwLTk2LTQzLTk2LTk2TDAgOTZDMCA0MyA0MyAwIDk2IDBMNDAwIDBjMjYuNSAwIDQ4IDIxLjUgNDggNDhsMCAyODhjMCAyMC45LTEzLjQgMzguNy0zMiA0NS4zbDAgNjYuN2MxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtMzIgMHpNOTYgMzg0Yy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDI1NiAwIDAtNjQtMjU2IDB6bTMyLTIzMmMwIDEzLjMgMTAuNyAyNCAyNCAyNGwxNzYgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtMTc2IDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0em0yNCA3MmMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwxNzYgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtMTc2IDB6Il19LGVfZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmYWNlLWxhdWdoLXdpbmsiLGljb246WzUxMiw1MTIsWyJsYXVnaC13aW5rIl0sImY1OWMiLCJNMjU2IDUxMmEyNTYgMjU2IDAgMSAwIDAtNTEyIDI1NiAyNTYgMCAxIDAgMCA1MTJ6TTEwMS42IDMxNGMtMy43LTEzLjcgNy41LTI2IDIxLjctMjZsMjY1LjQgMGMxNC4yIDAgMjUuNCAxMi4zIDIxLjcgMjYtMTguNSA2OC04MC42IDExOC0xNTQuNCAxMThTMTIwIDM4MiAxMDEuNiAzMTR6TTE0NCAxOTJhMzIgMzIgMCAxIDEgNjQgMCAzMiAzMiAwIDEgMSAtNjQgMHptMTY0IDhjMCAxMS05IDIwLTIwIDIwcy0yMC05LTIwLTIwYzAtMzMuMSAyNi45LTYwIDYwLTYwbDE2IDBjMzMuMSAwIDYwIDI2LjkgNjAgNjAgMCAxMS05IDIwLTIwIDIwcy0yMC05LTIwLTIwLTktMjAtMjAtMjBsLTE2IDBjLTExIDAtMjAgOS0yMCAyMHoiXX0sYzVyPWVfZSxkNXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2xvdWQtbWVhdGJhbGwiLGljb246WzUxMiw1MTIsW10sImY3M2IiLCJNMCAyMjRjMCA1MyA0MyA5NiA5NiA5NmwyNi45IDBjMy41LTEyLjEgMTAuMS0yMy4zIDE5LjItMzIuNGwxLjQtMS40YzE1LTE1IDM1LjMtMjIuOSA1Ni4xLTIyLjIgMTQuMi0xNS4xIDM0LjItMjMuOSA1NS40LTIzLjlsMiAwYzIxLjEgMCA0MS4xIDguOCA1NS40IDIzLjkgMjAuOC0uNiA0MS4xIDcuMyA1Ni4xIDIyLjJsMS40IDEuNGM5LjIgOS4yIDE1LjcgMjAuNCAxOS4yIDMyLjRsMjYuOSAwYzUzIDAgOTYtNDMgOTYtOTZzLTQzLTk2LTk2LTk2Yy0uNSAwLTEuMSAwLTEuNiAwIDEuMS01LjIgMS42LTEwLjUgMS42LTE2IDAtNDQuMi0zNS44LTgwLTgwLTgwLTI0LjMgMC00Ni4xIDEwLjktNjAuOCAyOC0xOC43LTM1LjctNTYuMS02MC05OS4yLTYwLTYxLjkgMC0xMTIgNTAuMS0xMTIgMTEyIDAgNy4xIC43IDE0LjEgMS45IDIwLjgtMzguMyAxMi42LTY1LjkgNDguNy02NS45IDkxLjJ6TTE1Ni41IDQyNC4zYzkuNSA2LjMgMTQuMiAxNy43IDExLjkgMjguOC0xLjggOS4yIDEgMTguNyA3LjcgMjUuM2wxLjQgMS40YzYuNiA2LjYgMTYuMSA5LjUgMjUuMyA3LjcgMTEuMS0yLjIgMjIuNSAyLjUgMjguOCAxMS45IDUuMiA3LjggMTQgMTIuNSAyMy4zIDEyLjVsMiAwYzkuNCAwIDE4LjEtNC43IDIzLjMtMTIuNSA2LjMtOS41IDE3LjctMTQuMiAyOC44LTExLjkgOS4yIDEuOCAxOC43LTEgMjUuMy03LjdsMS40LTEuNGM2LjYtNi42IDkuNS0xNi4xIDcuNy0yNS4zLTIuMi0xMS4xIDIuNS0yMi41IDExLjktMjguOCA3LjgtNS4yIDEyLjUtMTQgMTIuNS0yMy4zbDAtMmMwLTkuNC00LjctMTguMS0xMi41LTIzLjMtOS41LTYuMy0xNC4yLTE3LjctMTEuOS0yOC44IDEuOC05LjItMS0xOC43LTcuNy0yNS4zbC0xLjQtMS40Yy02LjYtNi42LTE2LjEtOS41LTI1LjMtNy43LTExLjEgMi4yLTIyLjUtMi41LTI4LjgtMTEuOS01LjItNy44LTE0LTEyLjUtMjMuMy0xMi41bC0yIDBjLTkuNCAwLTE4LjEgNC43LTIzLjMgMTIuNS02LjMgOS41LTE3LjcgMTQuMi0yOC44IDExLjktOS4yLTEuOC0xOC43IDEtMjUuMyA3LjdsLTEuNCAxLjRjLTYuNiA2LjYtOS41IDE2LjEtNy43IDI1LjMgMi4yIDExLjEtMi41IDIyLjUtMTEuOSAyOC44LTcuOCA1LjItMTIuNSAxNC0xMi41IDIzLjNsMCAyYzAgOS40IDQuNyAxOC4xIDEyLjUgMjMuM3pNNDggNDQ4YTQ4IDQ4IDAgMSAwIDAtOTYgNDggNDggMCAxIDAgMCA5NnptNDE2IDBhNDggNDggMCAxIDAgMC05NiA0OCA0OCAwIDEgMCAwIDk2eiJdfSx0X2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2hhcnQtYXJlYSIsaWNvbjpbNTEyLDUxMixbImFyZWEtY2hhcnQiXSwiZjFmZSIsIk0zMiAzMmMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDMzNmMwIDguOCA3LjIgMTYgMTYgMTZsNDAwIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJMODAgNDgwYy00NC4yIDAtODAtMzUuOC04MC04MEwwIDY0QzAgNDYuMyAxNC4zIDMyIDMyIDMyek0yNDAgOTZjNi43IDAgMTMuMSAyLjggMTcuNyA3LjhMMzI4LjggMTgxLjMgMzc1IDEzNWM5LjQtOS40IDI0LjYtOS40IDMzLjkgMGw2NCA2NGM0LjUgNC41IDcgMTAuNiA3IDE3bDAgMTEyYzAgMTMuMy0xMC43IDI0LTI0IDI0bC0zMDQgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRsMC0xMTJjMC02IDIuMy0xMS44IDYuMy0xNi4ybDg4LTk2YzQuNS01IDExLTcuOCAxNy43LTcuOHoiXX0sdTVyPXRfZSxmNXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicnVwaWFoLXNpZ24iLGljb246WzUxMiw1MTIsW10sImUyM2QiLCJNMCA2NEMwIDQ2LjMgMTQuMyAzMiAzMiAzMmw4MCAwYzc5LjUgMCAxNDQgNjQuNSAxNDQgMTQ0IDAgNTQuMy0zMCAxMDEuNS03NC40IDEyNi4xbDQxIDEzNi43YzUuMSAxNi45LTQuNSAzNC44LTIxLjUgMzkuOHMtMzQuOC00LjUtMzkuOC0yMS41TDEyMC4xIDMxOS44Yy0yLjcgLjEtNS40IC4yLTguMSAuMmwtNDggMCAwIDEyOGMwIDE3LjctMTQuMyAzMi0zMiAzMlMwIDQ2NS43IDAgNDQ4TDAgNjR6TTY0IDI1Nmw0OCAwYzQ0LjIgMCA4MC0zNS44IDgwLTgwcy0zNS44LTgwLTgwLTgwbC00OCAwIDAgMTYwem0yNTYtMzJsODAgMGM2MS45IDAgMTEyIDUwLjEgMTEyIDExMlM0NjEuOSA0NDggNDAwIDQ0OGwtNDggMCAwIDY0YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMjU2YzAtMTcuNyAxNC4zLTMyIDMyLTMyem04MCAxNjBjMjYuNSAwIDQ4LTIxLjUgNDgtNDhzLTIxLjUtNDgtNDgtNDhsLTQ4IDAgMCA5NiA0OCAweiJdfSxwNXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidGV4dC13aWR0aCIsaWNvbjpbNDQ4LDUxMixbXSwiZjAzNSIsIk00MCAwQzE3LjkgMCAwIDE3LjkgMCA0MEwwIDk2YzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0zMiAxMjggMCAwIDE2MC0zMiAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDEyOCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC0zMiAwIDAtMTYwIDEyOCAwIDAgMzJjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTU2YzAtMjIuMS0xNy45LTQwLTQwLTQwTDQwIDB6bTc4LjYgNDA2LjZjMTIuNS0xMi41IDEyLjUtMzIuOCAwLTQ1LjNzLTMyLjgtMTIuNS00NS4zIDBsLTY0IDY0Yy0xMi41IDEyLjUtMTIuNSAzMi44IDAgNDUuM2w2NCA2NGMxMi41IDEyLjUgMzIuOCAxMi41IDQ1LjMgMHMxMi41LTMyLjggMC00NS4zbC05LjQtOS40IDIyOS41IDAtOS40IDkuNGMtMTIuNSAxMi41LTEyLjUgMzIuOCAwIDQ1LjNzMzIuOCAxMi41IDQ1LjMgMGw2NC02NGMxMi41LTEyLjUgMTIuNS0zMi44IDAtNDUuM2wtNjQtNjRjLTEyLjUtMTIuNS0zMi44LTEyLjUtNDUuMyAwcy0xMi41IDMyLjggMCA0NS4zbDkuNCA5LjQtMjI5LjUgMCA5LjQtOS40eiJdfSxoNXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic2F0ZWxsaXRlIixpY29uOls1MTIsNTEyLFsxMjg3NTJdLCJmN2JmIiwiTTE5OSA3YzkuNC05LjQgMjQuNi05LjQgMzMuOSAwbDg5LjQgODkuNCA1NS01NWMxMi41LTEyLjUgMzIuOC0xMi41IDQ1LjMgMGw0OCA0OGMxMi41IDEyLjUgMTIuNSAzMi44IDAgNDUuM2wtNTUgNTUgODkuNCA4OS40YzkuNCA5LjQgOS40IDI0LjYgMCAzMy45bC05NiA5NmMtOS40IDkuNC0yNC42IDkuNC0zMy45IDBsLTg5LjQtODkuNC0xNS41IDE1LjVjMTEuNCAyNC42IDE3LjggNTIgMTcuOCA4MC45IDAgMzEuNy03LjcgNjEuNS0yMS4yIDg3LjgtNC43IDktMTYuNyAxMC4zLTIzLjggMy4xbC05Ni4zLTk2LjMtNjAgNjBjLTEyLjUgMTIuNS0zMi44IDEyLjUtNDUuMyAwcy0xMi41LTMyLjggMC00NS4zbDYwLTYwLTk2LjMtOTYuM2MtNy4yLTcuMi01LjktMTkuMiAzLjEtMjMuOCAyNi4zLTEzLjYgNTYuMi0yMS4yIDg3LjgtMjEuMiAyOC45IDAgNTYuMyA2LjQgODAuOSAxNy44TDE5Mi40IDIyNi4zIDEwMyAxMzdjLTkuNC05LjQtOS40LTI0LjYgMC0zMy45TDE5OSA3em0xNyA1MC45bC02Mi4xIDYyLjEgNzIuNCA3Mi40IDYyLjEtNjIuMS03Mi40LTcyLjR6TTM5MiAzNTguMWw2Mi4xLTYyLjEtNzIuNC03Mi40LTYyLjEgNjIuMSA3Mi40IDcyLjR6Il19LHJfZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtYWduaWZ5aW5nLWdsYXNzLW1pbnVzIixpY29uOls1MTIsNTEyLFsic2VhcmNoLW1pbnVzIl0sImYwMTAiLCJNNDE2IDIwOGMwIDQ1LjktMTQuOSA4OC4zLTQwIDEyMi43TDUwMi42IDQ1Ny40YzEyLjUgMTIuNSAxMi41IDMyLjggMCA0NS4zcy0zMi44IDEyLjUtNDUuMyAwTDMzMC43IDM3NkMyOTYuMyA0MDEuMSAyNTMuOSA0MTYgMjA4IDQxNiA5My4xIDQxNiAwIDMyMi45IDAgMjA4UzkzLjEgMCAyMDggMCA0MTYgOTMuMSA0MTYgMjA4ek0xMzYgMTg0Yy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDE0NCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC0xNDQgMHoiXX0sbTVyPXJfZSxnNXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGVvcGxlLWdyb3VwIixpY29uOls1MTIsNTEyLFtdLCJlNTMzIiwiTTI1NiAwYTY0IDY0IDAgMSAxIDAgMTI4IDY0IDY0IDAgMSAxIDAtMTI4em05NiAzMTJjMCAyNS0xMi43IDQ3LTMyIDU5LjlsMCA5Mi4xYzAgMjYuNS0yMS41IDQ4LTQ4IDQ4bC0zMiAwYy0yNi41IDAtNDgtMjEuNS00OC00OGwwLTkyLjFDMTcyLjcgMzU5IDE2MCAzMzcgMTYwIDMxMmwwLTQwYzAtNTMgNDMtOTYgOTYtOTZzOTYgNDMgOTYgOTZsMCA0MHpNOTYgMzJhNTYgNTYgMCAxIDEgMCAxMTIgNTYgNTYgMCAxIDEgMC0xMTJ6bTE2IDI0MGwwIDMyYzAgMzIuNSAxMi4xIDYyLjEgMzIgODQuN2wwIDc1LjNjMCAxLjIgMCAyLjUgLjEgMy43LTguNSA3LjYtMTkuNyAxMi4zLTMyLjEgMTIuM2wtMzIgMGMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhsMC01Ni42QzEyLjkgMzY0LjQgMCAzNDMuNyAwIDMyMGwwLTMyYzAtNTMgNDMtOTYgOTYtOTYgMTIuNyAwIDI0LjggMi41IDM1LjkgNi45LTEyLjYgMjEuNC0xOS45IDQ2LjQtMTkuOSA3My4xek0zNjggNDY0bDAtNzUuM2MxOS45LTIyLjUgMzItNTIuMiAzMi04NC43bDAtMzJjMC0yNi43LTcuMy01MS42LTE5LjktNzMuMSAxMS4xLTQuNSAyMy4yLTYuOSAzNS45LTYuOSA1MyAwIDk2IDQzIDk2IDk2bDAgMzJjMCAyMy43LTEyLjkgNDQuNC0zMiA1NS40bDAgNTYuNmMwIDI2LjUtMjEuNSA0OC00OCA0OGwtMzIgMGMtMTIuMyAwLTIzLjYtNC42LTMyLjEtMTIuMyAwLTEuMiAuMS0yLjUgLjEtMy43ek00MTYgMzJhNTYgNTYgMCAxIDEgMCAxMTIgNTYgNTYgMCAxIDEgMC0xMTJ6Il19LHg1cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzcXVhcmUtYmluYXJ5IixpY29uOls0NDgsNTEyLFtdLCJlNjliIiwiTTAgOTZDMCA2MC43IDI4LjcgMzIgNjQgMzJsMzIwIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAzMjBjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDk2em0xNDQgNGMtMjQuMyAwLTQ0IDE5LjctNDQgNDRsMCA0OGMwIDI0LjMgMTkuNyA0NCA0NCA0NGwzMiAwYzI0LjMgMCA0NC0xOS43IDQ0LTQ0bDAtNDhjMC0yNC4zLTE5LjctNDQtNDQtNDRsLTMyIDB6bS00IDQ0YzAtMi4yIDEuOC00IDQtNGwzMiAwYzIuMiAwIDQgMS44IDQgNGwwIDQ4YzAgMi4yLTEuOCA0LTQgNGwtMzIgMGMtMi4yIDAtNC0xLjgtNC00bDAtNDh6bTE0MC00NGMtMTEgMC0yMCA5LTIwIDIwIDAgOS43IDYuOSAxNy43IDE2IDE5LjZsMCA3Ni40YzAgMTEgOSAyMCAyMCAyMHMyMC05IDIwLTIwbDAtOTZjMC0xMS05LTIwLTIwLTIwbC0xNiAwek0xMzIgMjk2YzAgOS43IDYuOSAxNy43IDE2IDE5LjZsMCA3Ni40YzAgMTEgOSAyMCAyMCAyMHMyMC05IDIwLTIwbDAtOTZjMC0xMS05LTIwLTIwLTIwbC0xNiAwYy0xMSAwLTIwIDktMjAgMjB6bTk2IDI0bDAgNDhjMCAyNC4zIDE5LjcgNDQgNDQgNDRsMzIgMGMyNC4zIDAgNDQtMTkuNyA0NC00NGwwLTQ4YzAtMjQuMy0xOS43LTQ0LTQ0LTQ0bC0zMiAwYy0yNC4zIDAtNDQgMTkuNy00NCA0NHptNDQtNGwzMiAwYzIuMiAwIDQgMS44IDQgNGwwIDQ4YzAgMi4yLTEuOCA0LTQgNGwtMzIgMGMtMi4yIDAtNC0xLjgtNC00bDAtNDhjMC0yLjIgMS44LTQgNC00eiJdfSxhX2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibWFza3MtdGhlYXRlciIsaWNvbjpbNTc2LDUxMixbMTI3OTE3LCJ0aGVhdGVyLW1hc2tzIl0sImY2MzAiLCJNLTUgMTE4TDIzLjUgMjc5LjdjMTQgNzkuNSA3Ni4zIDE0MS44IDE1NS44IDE1NS44bDEyLjcgMi4yYy0xNi41LTI4LjYtMjcuMS02MC43LTMwLjYtOTQuNWwtMjQuMSA0LjNjLTkuNyAxLjctMTguOC01LjgtMTYuOS0xNS41IDQuOC0yNC43IDE5LjEtNDYuNiAzOS43LTYwLjlsMC03NC42Yy0xLjQgLjgtMyAxLjMtNC43IDEuNmwtNjMgMTEuMWMtOC43IDEuNS0xNy4zLTQuNC0xNS45LTEzLjEgMy4xLTE5LjYgMTguNC0zNiAzOS4xLTM5LjcgMTcuMi0zIDMzLjkgMy41IDQ0LjYgMTUuOGwwLTIyLjdjMC0yMi41IDYuOS01Mi40IDMyLjMtNzMuNCAyNi0yMS41IDY3LjctNDMuOSAxMjQuOS01NC4yLTMwLjUtMTYuMy04Ni4zLTMyLTE2My44LTE4LjQtODAuMyAxNC4yLTEyOCA1MC4xLTE1MC4xIDc2LjEtOSAxMC41LTEwLjggMjQuOS04LjQgMzguNXpNMjA4IDEzOC43bDAgMTc0LjhjMCA4MC43IDUwLjUgMTUyLjkgMTI2LjQgMTgwLjRMMzYyLjEgNTA0YzE0LjEgNS4xIDI5LjYgNS4xIDQzLjcgMEw0MzMuNiA0OTRDNTA5LjUgNDY2LjQgNTYwIDM5NC4zIDU2MCAzMTMuNWwwLTE3NC44YzAtNi45LTIuMS0xMy44LTctMTguNi0yMi42LTIyLjUtNzguMi01Ni0xNjktNTZzLTE0Ni40IDMzLjYtMTY5IDU2Yy00LjkgNC45LTcgMTEuNy03IDE4LjZ6bTY2LjEgMTg3LjFjLTEuNC03IDctMTEgMTIuNy02LjYgMjYuOSAyMC42IDYwLjYgMzIuOSA5Ny4yIDMyLjlzNzAuMi0xMi4zIDk3LjItMzIuOWM1LjctNC40IDE0LjEtLjQgMTIuNyA2LjYtMTAuMSA1MS40LTU1LjUgOTAuMy0xMDkuOSA5MC4zcy05OS44LTM4LjgtMTA5LjktOTAuM3ptLjUtMTAxLjVDMjgxLjIgMjA1LjUgMjk5IDE5MiAzMjAgMTkyczM4LjkgMTMuNSA0NS40IDMyLjNjMi45IDguNC00LjUgMTUuNy0xMy40IDE1LjdsLTY0IDBjLTguOCAwLTE2LjMtNy40LTEzLjQtMTUuN3pNNDgwIDI0MGwtNjQgMGMtOC44IDAtMTYuMy03LjQtMTMuNC0xNS43IDYuNS0xOC44IDI0LjQtMzIuMyA0NS40LTMyLjNzMzguOSAxMy41IDQ1LjQgMzIuM2MyLjkgOC40LTQuNSAxNS43LTEzLjQgMTUuN3oiXX0sYjVyPWFfZSx2NXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2FydC1wbHVzIixpY29uOls2NDAsNTEyLFtdLCJmMjE3IiwiTTAgOEMwLTUuMyAxMC43LTE2IDI0LTE2bDQ1LjMgMGMyNy4xIDAgNTAuMyAxOS40IDU1LjEgNDZsLjQgMiA0MTIuNyAwYzIwIDAgMzUuMSAxOC4yIDMxLjQgMzcuOUw1MzcuOCAyMzUuOGMtNS43IDMwLjMtMzIuMSA1Mi4yLTYyLjkgNTIuMmwtMzAzLjYgMCA1LjEgMjguM2MyLjEgMTEuNCAxMiAxOS43IDIzLjYgMTkuN0w0NTYgMzM2YzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC0yNTUuOSAwYy0zNC44IDAtNjQuNi0yNC45LTcwLjgtNTkuMUw3Ny4yIDM4LjZjLS43LTMuOC00LTYuNi03LjktNi42TDI0IDMyQzEwLjcgMzIgMCAyMS4zIDAgOHpNMTYwIDQ2NGE0OCA0OCAwIDEgMSA5NiAwIDQ4IDQ4IDAgMSAxIC05NiAwem0yMjQgMGE0OCA0OCAwIDEgMSA5NiAwIDQ4IDQ4IDAgMSAxIC05NiAwek0zMzYgNzguNGMtMTMuMyAwLTI0IDEwLjctMjQgMjRsMCAzMy42LTMzLjYgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwzMy42IDAgMCAzMy42YzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC0zMy42IDMzLjYgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtMzMuNiAwIDAtMzMuNmMwLTEzLjMtMTAuNy0yNC0yNC0yNHoiXX0sYnc9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaGFuZHMtYXNsLWludGVycHJldGluZyIsaWNvbjpbNjQwLDUxMixbImFtZXJpY2FuLXNpZ24tbGFuZ3VhZ2UtaW50ZXJwcmV0aW5nIiwiYXNsLWludGVycHJldGluZyIsImhhbmRzLWFtZXJpY2FuLXNpZ24tbGFuZ3VhZ2UtaW50ZXJwcmV0aW5nIl0sImYyYTMiLCJNMTU2LjYgNDYuM2M3LjktMTUuOCAxLjUtMzUtMTQuMy00Mi45cy0zNS0xLjUtNDIuOSAxNC4zTDEzLjUgMTg5LjRDNC42IDIwNy4yIDAgMjI2LjggMCAyNDYuN0wwIDI1NmMwIDcwLjcgNTcuMyAxMjggMTI4IDEyOGw4MCAwIDAtLjNjMzUuMi0yLjcgNjUuNC0yMi44IDgyLjEtNTEuNyA4LjgtMTUuMyAzLjYtMzQuOS0xMS43LTQzLjdzLTM0LjktMy42LTQzLjcgMTEuN2MtNyAxMi0xOS45IDIwLTM0LjcgMjAtMjIuMSAwLTQwLTE3LjktNDAtNDBzMTcuOS00MCA0MC00MGMxNC44IDAgMjcuNyA4IDM0LjcgMjAgOC44IDE1LjMgMjguNCAyMC41IDQzLjcgMTEuN3MyMC41LTI4LjQgMTEuNy00My43Yy0xMi44LTIyLjEtMzMuNi0zOS4xLTU4LjQtNDcuMWw4MC44LTIyYzE3LTQuNiAyNy4xLTIyLjIgMjIuNS0zOS4zcy0yMi4yLTI3LjEtMzkuMy0yMi41bC0xMDAuNyAyNy41IDgxLjYtNjhjMTMuNi0xMS4zIDE1LjQtMzEuNSA0LjEtNDUuMVMyNDkuMS0zLjkgMjM1LjUgNy40bC0xMDEuOSA4NC45IDIzLTQ2ek00ODMuNCA0NjUuN2MtNy45IDE1LjgtMS41IDM1IDE0LjMgNDIuOXMzNSAxLjUgNDIuOS0xNC4zbDg1LjktMTcxLjdjOC45LTE3LjggMTMuNS0zNy40IDEzLjUtNTcuMmwwLTkuM2MwLTcwLjctNTcuMy0xMjgtMTI4LTEyOGwtODAgMCAwIC4zYy0zNS4yIDIuNy02NS40IDIyLjgtODIuMSA1MS43LTguOSAxNS4zLTMuNiAzNC45IDExLjcgNDMuN3MzNC45IDMuNiA0My43LTExLjdjNy0xMiAxOS45LTIwIDM0LjctMjAgMjIuMSAwIDQwIDE3LjkgNDAgNDBzLTE3LjkgNDAtNDAgNDBjLTE0LjggMC0yNy43LTgtMzQuNy0yMC04LjktMTUuMy0yOC40LTIwLjUtNDMuNy0xMS43cy0yMC41IDI4LjQtMTEuNyA0My43YzEyLjggMjIuMSAzMy42IDM5LjEgNTguNCA0Ny4xbC04MC44IDIyYy0xNy4xIDQuNi0yNy4xIDIyLjItMjIuNSAzOS4zczIyLjIgMjcuMSAzOS4zIDIyLjVsMTAwLjctMjcuNS04MS42IDY4Yy0xMy42IDExLjMtMTUuNCAzMS41LTQuMSA0NS4xczMxLjUgMTUuNCA0NS4xIDQuMWwxMDEuOS04NC45LTIzIDQ2eiJdfSx5NXI9YncsdzVyPWJ3LE01cj1idyxrNXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidGFibGUtY2VsbHMtcm93LXVubG9jayIsaWNvbjpbNjQwLDUxMixbXSwiZTY5MSIsIk0yNTYgMjI0bDAgMTkyIDY0IDAgMC0xOTItNjQgMHptMjU2LTc5Yy00Ni43IDUuOC04NS42IDM2LjgtMTAyLjcgNzlsLTI1LjMgMCAwIDkwLjhjLTEwLjEgMTUuMi0xNiAzMy40LTE2IDUzLjFsMCA5NmMwIDUuNSAuNSAxMC45IDEuMyAxNi4xTDEyOCA0ODBjLTM1LjMgMC02NC0yOC43LTY0LTY0TDY0IDk2YzAtMzUuMyAyOC43LTY0IDY0LTY0bDMyMCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgNDl6TTEyOCAyMjRsMCAxOTIgNjQgMCAwLTE5Mi02NCAwem00MzIgNDhjLS4xLTE3LjYtMTQuNC0zMS45LTMyLTMxLjktMTcuNyAwLTMyIDE0LjMtMzIgMzJsMCA0Ny45IDk2IDBjMjYuNSAwIDQ4IDIxLjUgNDggNDhsMCA5NmMwIDI2LjUtMjEuNSA0OC00OCA0OGwtMTI4IDBjLTI2LjUgMC00OC0yMS41LTQ4LTQ4bDAtOTZjMC0yMC45IDEzLjQtMzguNyAzMi00NS4zbDAtNTAuNmMwLTQ0LjIgMzUuOC04MCA4MC04MCA0NC4yIDAgNzkuOSAzNS44IDgwIDc5LjlsLTQ4IDB6Il19LFM1cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJyb2NrZXQiLGljb246WzUxMiw1MTIsW10sImYxMzUiLCJNMTI4IDMyMEwyNC41IDMyMGMtMjQuOSAwLTQwLjItMjcuMS0yNy40LTQ4LjVMNTAgMTgzLjNDNTguNyAxNjguOCA3NC4zIDE2MCA5MS4yIDE2MGw5NSAwYzc2LjEtMTI4LjkgMTg5LjYtMTM1LjQgMjY1LjUtMTI0LjMgMTIuOCAxLjkgMjIuOCAxMS45IDI0LjYgMjQuNiAxMS4xIDc1LjkgNC42IDE4OS40LTEyNC4zIDI2NS41bDAgOTVjMCAxNi45LTguOCAzMi41LTIzLjMgNDEuMmwtODguMiA1Mi45Yy0yMS4zIDEyLjgtNDguNS0yLjYtNDguNS0yNy40TDE5MiAzODRjMC0zNS4zLTI4LjctNjQtNjQtNjRsLS4xIDB6TTQwMCAxNjBhNDggNDggMCAxIDAgLTk2IDAgNDggNDggMCAxIDAgOTYgMHoiXX0sejVyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNocmltcCIsaWNvbjpbNTEyLDUxMixbMTI5NDI0XSwiZTQ0OCIsIk03MiAzMkMzMi4yIDMyIDAgNjQuMiAwIDEwNCAwIDE0MS45IDI5LjMgMTcyLjkgNjYuNCAxNzUuOCA3Ny42IDI1Ny4yIDE0Ny40IDMyMCAyMzIgMzIwbDU2IDAgMC0xOTItMjE2IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0UzU4LjcgODAgNzIgODBsMzg0IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRMNzIgMzJ6TTIyNCA0NTZjMCAxMy4zIDEwLjcgMjQgMjQgMjRsNzIgMCAwLTcyLjItNjQuMS0yMi40Yy0xMi41LTQuNC0yNi4yIDIuMi0zMC42IDE0LjdzMi4yIDI2LjIgMTQuNyAzMC42bDQuNSAxLjZDMjMzIDQzMy45IDIyNCA0NDMuOSAyMjQgNDU2em0xMjggMjMuM2MzNi40LTMuMyA2OS41LTE3LjYgOTYuMS0zOS42bC04Ni41LTM0LjZjLTMgMS44LTYuMiAzLjItOS42IDQuM2wwIDY5Ljl6TTQ3Mi42IDQxNWMyNC42LTMwLjMgMzkuNC02OC45IDM5LjQtMTExIDAtMTIuMy0xLjMtMjQuMy0zLjctMzUuOUwzODIuOCAzNTUuMWMuOCAzLjQgMS4yIDcgMS4yIDEwLjYgMCA0LjYtLjcgOS0xLjkgMTMuMUw0NzIuNiA0MTV6TTMzNiAxMjhsLTE2IDAgMCAxOTIgMTguMyAwYzkuOSAwIDE5LjEgMy4yIDI2LjYgOC41bDEzMy41LTkyLjRDNDcxLjggMTcyLjYgNDA5LjEgMTI4IDMzNiAxMjh6TTE2OCAxOTJhMjQgMjQgMCAxIDEgNDggMCAyNCAyNCAwIDEgMSAtNDggMHoiXX0saV9lPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRlbmdlLXNpZ24iLGljb246WzM4NCw1MTIsWzgzNzYsInRlbmdlIl0sImY3ZDciLCJNMCA1NkMwIDQyLjcgMTAuNyAzMiAyNCAzMmwzMzYgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNEwyNCA4MEMxMC43IDgwIDAgNjkuMyAwIDU2ek0wIDE2MGMwLTE3LjcgMTQuMy0zMiAzMi0zMmwzMjAgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtMTI4IDAgMCAyNTZjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC0yNTYtMTI4IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyeiJdfSxDNXI9aV9lLG9fZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJob3VzZS1jaGltbmV5LW1lZGljYWwiLGljb246WzUxMiw1MTIsWyJjbGluaWMtbWVkaWNhbCJdLCJmN2YyIiwiTTIzNC4yIDguNmMxMi4zLTExLjQgMzEuMy0xMS40IDQzLjUgMEwzNjggOTIuMyAzNjggODBjMC0xNy43IDE0LjMtMzIgMzItMzJsMzIgMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDEwMS41IDM3LjggMzUuMWM5LjYgOSAxMi44IDIyLjkgOCAzNS4xUzQ5My4yIDI3MiA0ODAgMjcybC0xNiAwIDAgMTc2YzAgMzUuMy0yOC43IDY0LTY0IDY0bC0yODggMGMtMzUuMyAwLTY0LTI4LjctNjQtNjRsMC0xNzYtMTYgMGMtMTMuMiAwLTI1LTguMS0yOS44LTIwLjNzLTEuNi0yNi4yIDgtMzUuMWwyMjQtMjA4ek0yMjQgMjQ4bDAgNDAtNDAgMGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDQwIDAgMCA0MGMwIDguOCA3LjIgMTYgMTYgMTZsMzIgMGM4LjggMCAxNi03LjIgMTYtMTZsMC00MCA0MCAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtNDAgMCAwLTQwYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMGMtOC44IDAtMTYgNy4yLTE2IDE2eiJdfSxfNXI9b19lLFQ1cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ1c2Vycy1zbGFzaCIsaWNvbjpbNjQwLDUxMixbXSwiZTA3MyIsIk03My0yNC45Yy05LjQtOS40LTI0LjYtOS40LTMzLjkgMFMyOS43LS4zIDM5IDkuMWw1MjggNTI4YzkuNCA5LjQgMjQuNiA5LjQgMzMuOSAwczkuNC0yNC42IDAtMzMuOUwzMjEuOCAyMjRjNTYuNi0xIDEwMi4yLTQ3LjIgMTAyLjItMTA0IDAtNTcuNC00Ni42LTEwNC0xMDQtMTA0LTU2LjggMC0xMDMgNDUuNi0xMDQgMTAyLjJMNzMtMjQuOXpNNTEyIDI4OGMtMTcuMiAwLTMzLjcgMy40LTQ4LjcgOS42bDE3MCAxNzBjNC4yLTUuNCA2LjctMTIuMiA2LjctMTkuNmwwLTMyYzAtNzAuNy01Ny4zLTEyOC0xMjgtMTI4ek01OS45IDk3LjdjLTIxLjUgMTIuNS0zNS45IDM1LjctMzUuOSA2Mi4zIDAgMzkuOCAzMi4yIDcyIDcyIDcyIDI2LjYgMCA0OS44LTE0LjQgNjIuMy0zNS45TDU5LjkgOTcuN3pNMjUwLjIgMjg4QzE5Ni44IDMxMy45IDE2MCAzNjguNyAxNjAgNDMybDAgMTZjMCAxNy43IDE0LjMgMzIgMzIgMzJsMjUwLjIgMC0xOTItMTkyek0xMjggMjg4QzU3LjMgMjg4IDAgMzQ1LjMgMCA0MTZsMCAzMmMwIDE3LjcgMTQuMyAzMiAzMiAzMmw4Ni43IDBjLTQuMy05LjgtNi43LTIwLjYtNi43LTMybDAtMTZjMC01My4yIDIwLTEwMS44IDUyLjktMTM4LjYtMTEuNy0zLjUtMjQuMS01LjQtMzYuOS01LjR6TTYxNiAxNjBhNzIgNzIgMCAxIDAgLTE0NCAwIDcyIDcyIDAgMSAwIDE0NCAweiJdfSxMNXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGFwZXItcGxhbmUiLGljb246WzU3Niw1MTIsWzYxOTEzXSwiZjFkOCIsIk01MzYuNC0yNi4zYzkuOC0zLjUgMjAuNi0xIDI4IDYuM3M5LjggMTguMiA2LjMgMjhsLTE3OCA0OTYuOWMtNSAxMy45LTE4LjEgMjMuMS0zMi44IDIzLjEtMTQuMiAwLTI3LTguNi0zMi4zLTIxLjdsLTY0LjItMTU4Yy00LjUtMTEtMi41LTIzLjYgNS4yLTMyLjZsOTQuNS0xMTIuNGM1LjEtNi4xIDQuNy0xNS0uOS0yMC42cy0xNC42LTYtMjAuNi0uOUwyMjkuMiAyNzYuMWMtOS4xIDcuNi0yMS42IDkuNi0zMi42IDUuMkwzOC4xIDIxNi44Yy0xMy4xLTUuMy0yMS43LTE4LjEtMjEuNy0zMi4zIDAtMTQuNyA5LjItMjcuOCAyMy4xLTMyLjhsNDk2LjktMTc4eiJdfSxuX2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYm9vay1hdGxhcyIsaWNvbjpbNDQ4LDUxMixbImF0bGFzIl0sImY1NTgiLCJNOTYgNTEybDMyMCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybDAtNjYuN2MxOC42LTYuNiAzMi0yNC40IDMyLTQ1LjNsMC0yODhjMC0yNi41LTIxLjUtNDgtNDgtNDhMOTYgMEM0MyAwIDAgNDMgMCA5NkwwIDQxNmMwIDUzIDQzIDk2IDk2IDk2ek02NCA0MTZjMC0xNy43IDE0LjMtMzIgMzItMzJsMjU2IDAgMCA2NC0yNTYgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJ6TTMxMC42IDIwOEwyNzkgMjA4Yy0xLjQgMjMuMS02IDQ0LjItMTIuNiA2MS4yIDIyLjctMTIuNSAzOS40LTM0LjggNDQuMi02MS4yem0tMTczLjEgMGM0LjggMjYuNCAyMS41IDQ4LjcgNDQuMiA2MS4yLTYuNy0xNy0xMS4yLTM4LTEyLjYtNjEuMmwtMzEuNiAwem03Ni40IDU1YzQuNSA5LjYgOC4yIDEzLjggMTAuMiAxNS41IDItMS43IDUuNy01LjggMTAuMi0xNS41IDYuMi0xMy40IDExLjEtMzIuNSAxMi43LTU1bC00NS44IDBjMS42IDIyLjUgNi41IDQxLjYgMTIuNyA1NXptLTEyLjctODdsNDUuOCAwYy0xLjYtMjIuNS02LjUtNDEuNi0xMi43LTU1LTQuNS05LjYtOC4yLTEzLjgtMTAuMi0xNS41LTIgMS43LTUuNyA1LjgtMTAuMiAxNS41LTYuMiAxMy40LTExLjEgMzIuNS0xMi43IDU1em0xMDkuNSAwYy00LjgtMjYuNC0yMS41LTQ4LjctNDQuMi02MS4yIDYuNyAxNyAxMS4yIDM4IDEyLjYgNjEuMmwzMS42IDB6TTE2OSAxNzZjMS40LTIzLjEgNi00NC4yIDEyLjYtNjEuMi0yMi43IDEyLjUtMzkuNCAzNC44LTQ0LjIgNjEuMmwzMS42IDB6TTk2IDE5MmExMjggMTI4IDAgMSAxIDI1NiAwIDEyOCAxMjggMCAxIDEgLTI1NiAweiJdfSxENXI9bl9lLEE1cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0YWJsZSIsaWNvbjpbNDQ4LDUxMixbXSwiZjBjZSIsIk0zODQgMzJjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAzMjBjMCAzNS4zLTI4LjcgNjQtNjQgNjRsLTMyMCAwLTYuNS0uM0MyNS4yIDQ3Ni40IDAgNDQ5LjEgMCA0MTZMMCA5NkMwIDYwLjcgMjguNyAzMiA2NCAzMmwzMjAgMHpNNjQgMzIwbDAgOTYgMTI4IDAgMC05Ni0xMjggMHptMTkyIDBsMCA5NiAxMjggMCAwLTk2LTEyOCAwek02NCAyNTZsMTI4IDAgMC05Ni0xMjggMCAwIDk2em0xOTIgMGwxMjggMCAwLTk2LTEyOCAwIDAgOTZ6Il19LEU1cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJoZWFydCIsaWNvbjpbNTEyLDUxMixbMTI4MTUzLDEyODE1NCwxMjgxNTUsMTI4MTU2LDEyODQyMCwxMjkyOTMsMTI5Mjk0LDEyOTUwNSw5ODI5LDEwMDg0LDYxNTc4XSwiZjAwNCIsIk0yNDEgODcuMWwxNSAyMC43IDE1LTIwLjdDMjk2IDUyLjUgMzM2LjIgMzIgMzc4LjkgMzIgNDUyLjQgMzIgNTEyIDkxLjYgNTEyIDE2NS4xbDAgMi42YzAgMTEyLjItMTM5LjkgMjQyLjUtMjEyLjkgMjk4LjItMTIuNCA5LjQtMjcuNiAxNC4xLTQzLjEgMTQuMXMtMzAuOC00LjYtNDMuMS0xNC4xQzEzOS45IDQxMC4yIDAgMjc5LjkgMCAxNjcuN2wwLTIuNkMwIDkxLjYgNTkuNiAzMiAxMzMuMSAzMiAxNzUuOCAzMiAyMTYgNTIuNSAyNDEgODcuMXoiXX0sc19lPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNpcmNsZS1jaGV2cm9uLXVwIixpY29uOls1MTIsNTEyLFsiY2hldnJvbi1jaXJjbGUtdXAiXSwiZjEzOSIsIk0yNTYgNTEyYTI1NiAyNTYgMCAxIDAgMC01MTIgMjU2IDI1NiAwIDEgMCAwIDUxMnpNMzc3IDI3MWM5LjQgOS40IDkuNCAyNC42IDAgMzMuOXMtMjQuNiA5LjQtMzMuOSAwbC04Ny04Ny04NyA4N2MtOS40IDkuNC0yNC42IDkuNC0zMy45IDBzLTkuNC0yNC42IDAtMzMuOUwyMzkgMTY3YzkuNC05LjQgMjQuNi05LjQgMzMuOSAwTDM3NyAyNzF6Il19LCQ1cj1zX2UsbF9lPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJhdHRlcnktaGFsZiIsaWNvbjpbNjQwLDUxMixbImJhdHRlcnktMyJdLCJmMjQyIiwiTTUyOCAxMjhjOC44IDAgMTYgNy4yIDE2IDE2bDAgMjI0YzAgOC44LTcuMiAxNi0xNiAxNmwtNDE2IDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTIyNGMwLTguOCA3LjItMTYgMTYtMTZsNDE2IDB6TTExMiA2NGMtNDQuMiAwLTgwIDM1LjgtODAgODBsMCAyMjRjMCA0NC4yIDM1LjggODAgODAgODBsNDE2IDBjNDQuMiAwIDgwLTM1LjggODAtODBsMC00OGMxNy43IDAgMzItMTQuMyAzMi0zMmwwLTY0YzAtMTcuNy0xNC4zLTMyLTMyLTMybDAtNDhjMC00NC4yLTM1LjgtODAtODAtODBMMTEyIDY0em01NiAxMTJjLTEzLjMgMC0yNCAxMC43LTI0IDI0bDAgMTEyYzAgMTMuMyAxMC43IDI0IDI0IDI0bDE0NCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0bDAtMTEyYzAtMTMuMy0xMC43LTI0LTI0LTI0bC0xNDQgMHoiXX0sUDVyPWxfZSxkMmU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZm9udC1hd2Vzb21lIixpY29uOls1MTIsNTEyLFs2MjUwMSw2MjY5NCwiZm9udC1hd2Vzb21lLWZsYWciLCJmb250LWF3ZXNvbWUtbG9nby1mdWxsIl0sImYyYjQiLCJNOTEuNyA5NkMxMDYuMyA4Ni44IDExNiA3MC41IDExNiA1MiAxMTYgMjMuMyA5Mi43IDAgNjQgMFMxMiAyMy4zIDEyIDUyYzAgMTYuNyA3LjggMzEuNSAyMCA0MWwwIDQxOSA2NCAwIDAtNjQgMzczLjYgMGMxNC42IDAgMjYuNC0xMS44IDI2LjQtMjYuNCAwLTMuNy0uOC03LjMtMi4zLTEwLjdMNDMyIDI3MiA0OTMuNyAxMzMuMWMxLjUtMy40IDIuMy03IDIuMy0xMC43IDAtMTQuNi0xMS44LTI2LjQtMjYuNC0yNi40TDkxLjcgOTZ6Il19LEk1cj1kMmUsTjVyPWQyZSxGNXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaGFuZGN1ZmZzIixpY29uOls1NzYsNTEyLFtdLCJlNGY4IiwiTTMyMC0zMmMwLTE3LjctMTQuMy0zMi0zMi0zMnMtMzIgMTQuMy0zMiAzMiAxNC4zIDMyIDMyIDMyIDMyLTE0LjMgMzItMzJ6TTE5MiA2NGEzMiAzMiAwIDEgMCAwLTY0IDMyIDMyIDAgMSAwIDAgNjR6TTE1MiA5NmMtMTMuMyAwLTI0IDEwLjctMjQgMjRsMCAxNmMwIDEgLjEgMS45IC4yIDIuOS03NC43IDI2LjMtMTI4LjIgOTcuNS0xMjguMiAxODEuMSAwIDEwNiA4NiAxOTIgMTkyIDE5MnMxOTItODYgMTkyLTE5MmMwLTgzLjctNTMuNS0xNTQuOC0xMjguMi0xODEuMSAuMS0uOSAuMi0xLjkgLjItMi45bDAtMTZjMC0xMy4zLTEwLjctMjQtMjQtMjRsLTgwIDB6TTY0IDMyMGExMjggMTI4IDAgMSAxIDI1NiAwIDEyOCAxMjggMCAxIDEgLTI1NiAwem00NDggMGMwIDY2LjktNTEuMyAxMjEuOC0xMTYuNiAxMjcuNS0xNC4zIDIyLjgtMzIuNCA0My4xLTUzLjQgNTkuOSAxMy41IDMgMjcuNiA0LjYgNDIgNC42IDEwNiAwIDE5Mi04NiAxOTItMTkyIDAtODMuNy01My41LTE1NC44LTEyOC4yLTE4MS4xIC4xLS45IC4yLTEuOSAuMi0yLjlsMC0xNmMwLTEzLjMtMTAuNy0yNC0yNC0yNGwtODAgMGMtMTIuMyAwLTIyLjQgOS4yLTIzLjggMjEuMSAzMC4zIDE5LjIgNTYuMSA0NSA3NS4yIDc1LjQgNjUuNCA1LjggMTE2LjYgNjAuNiAxMTYuNiAxMjcuNXpNMzg0IDY0YTMyIDMyIDAgMSAwIDAtNjQgMzIgMzIgMCAxIDAgMCA2NHoiXX0sTzVyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhhdC1jb3dib3ktc2lkZSIsaWNvbjpbNjQwLDUxMixbXSwiZjhjMSIsIk02NDAgMzg4LjNjMCAxNi45LTcuMSAzMi4yLTE4LjQgNDMuMWwtMzUtMjMuMy0yOTIuNy0xOTUuMWMtMzYuMS0yNC4xLTc4LjYtMzYuOS0xMjItMzYuOWwtMy45IDBjLTIuNyAwLTUuNCAwLTggLjFsMjIuMi0xMDBjNS43LTI1LjggMjguNi00NC4xIDU1LTQ0LjEgMTIuMiAwIDI0LjEgNCAzMy44IDExLjNsNC43IDMuNWMyNi4zIDE5LjcgNjIuNCAxOS43IDg4LjYgMGw0LjctMy41YzkuOC03LjMgMjEuNi0xMS4zIDMzLjgtMTEuMyAyNi40IDAgNDkuMyAxOC4zIDU1IDQ0LjFsMzMgMTQ4LjVDNTc0LjUgMjMyLjMgNjQwIDMwMi42IDY0MCAzODguM3pNMTcxLjkgMjI0YzMzLjkgMCA2Ny4xIDEwIDk1LjQgMjguOUw1NjAgNDQ4IDU2IDQ0OGMtMzAuOSAwLTU2LTI1LjEtNTYtNTYgMC05Mi44IDc1LjItMTY4IDE2OC0xNjhsMy45IDB6Il19LFI1cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJpbmR1c3RyeSIsaWNvbjpbNTEyLDUxMixbXSwiZjI3NSIsIk0zMiAzMkMxNC4zIDMyIDAgNDYuMyAwIDY0TDAgNDMyYzAgMjYuNSAyMS41IDQ4IDQ4IDQ4bDQxNiAwYzI2LjUgMCA0OC0yMS41IDQ4LTQ4bDAtMjc5LjhjMC0xOC4yLTE5LjQtMjkuNy0zNS40LTIxLjFsLTE1Ni42IDg0LjMgMC02My4yYzAtMTguMi0xOS40LTI5LjctMzUuNC0yMS4xTDEyOCAyMTUuNCAxMjggNjRjMC0xNy43LTE0LjMtMzItMzItMzJMMzIgMzJ6Il19LEI1cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJsaW5lcy1sZWFuaW5nIixpY29uOlszODQsNTEyLFtdLCJlNTFlIiwiTTE5MC40IDc0LjFjNS42LTE2LjgtMy41LTM0LjktMjAuMi00MC41cy0zNC45IDMuNS00MC41IDIwLjJsLTEyOCAzODRjLTUuNiAxNi44IDMuNSAzNC45IDIwLjIgNDAuNXMzNC45LTMuNSA0MC41LTIwLjJsMTI4LTM4NHptNzAuOS00MS43Yy0xNy40LTIuOS0zMy45IDguOS0zNi44IDI2LjNsLTY0IDM4NGMtMi45IDE3LjQgOC45IDMzLjkgMjYuMyAzNi44czMzLjktOC45IDM2LjgtMjYuM2w2NC0zODRjMi45LTE3LjQtOC45LTMzLjktMjYuMy0zNi44ek0zNTIgMzJjLTE3LjcgMC0zMiAxNC4zLTMyIDMybDAgMzg0YzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0zODRjMC0xNy43LTE0LjMtMzItMzItMzJ6Il19LEg1cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwYXNzcG9ydCIsaWNvbjpbMzg0LDUxMixbXSwiZjVhYiIsIk0wIDY0QzAgMjguNyAyOC43IDAgNjQgMEwzMjAgMGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDM4NGMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA1MTJjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgNjR6TTk2IDQwOGMwIDEzLjMgMTAuNyAyNCAyNCAyNGwxNDQgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtMTQ0IDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0ek0yNzguNiAyMDhjLTQuOCAyNi40LTIxLjUgNDguNy00NC4yIDYxLjIgNi43LTE3IDExLjItMzggMTIuNi02MS4ybDMxLjYgMHptLTE3My4xIDBsMzEuNiAwYzEuNCAyMy4xIDYgNDQuMiAxMi42IDYxLjItMjIuNy0xMi41LTM5LjQtMzQuOC00NC4yLTYxLjJ6bTc2LjQgNTVjLTYuMi0xMy40LTExLjEtMzIuNS0xMi43LTU1bDQ1LjggMGMtMS42IDIyLjUtNi41IDQxLjYtMTIuNyA1NS00LjUgOS42LTguMiAxMy44LTEwLjIgMTUuNS0yLTEuNy01LjctNS44LTEwLjItMTUuNXptMC0xNDJjNC41LTkuNiA4LjItMTMuOCAxMC4yLTE1LjUgMiAxLjcgNS43IDUuOCAxMC4yIDE1LjUgNi4yIDEzLjQgMTEuMSAzMi41IDEyLjcgNTVsLTQ1LjggMGMxLjYtMjIuNSA2LjUtNDEuNiAxMi43LTU1em05Ni43IDU1TDI0NyAxNzZjLTEuNC0yMy4xLTYtNDQuMi0xMi42LTYxLjIgMjIuNyAxMi41IDM5LjQgMzQuOCA0NC4yIDYxLjJ6TTEzNyAxNzZsLTMxLjYgMGM0LjgtMjYuNCAyMS41LTQ4LjcgNDQuMi02MS4yLTYuNyAxNy0xMS4yIDM4LTEyLjYgNjEuMnptMTgzIDE2YTEyOCAxMjggMCAxIDAgLTI1NiAwIDEyOCAxMjggMCAxIDAgMjU2IDB6Il19LHE1cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJpbmZpbml0eSIsaWNvbjpbNjQwLDUxMixbODczNCw5ODU0XSwiZjUzNCIsIk0wIDI1NmMwLTg4LjQgNzEuNi0xNjAgMTYwLTE2MCA1MC40IDAgOTcuOCAyMy43IDEyOCA2NGwzMiA0Mi43IDMyLTQyLjdjMzAuMi00MC4zIDc3LjYtNjQgMTI4LTY0IDg4LjQgMCAxNjAgNzEuNiAxNjAgMTYwUzU2OC40IDQxNiA0ODAgNDE2Yy01MC40IDAtOTcuOC0yMy43LTEyOC02NGwtMzItNDIuNy0zMiA0Mi43Yy0zMC4yIDQwLjMtNzcuNiA2NC0xMjggNjQtODguNCAwLTE2MC03MS42LTE2MC0xNjB6bTI4MCAwbC00My4yLTU3LjZjLTE4LjEtMjQuMi00Ni42LTM4LjQtNzYuOC0zOC40LTUzIDAtOTYgNDMtOTYgOTZzNDMgOTYgOTYgOTZjMzAuMiAwIDU4LjctMTQuMiA3Ni44LTM4LjRMMjgwIDI1NnptODAgMGw0My4yIDU3LjZjMTguMSAyNC4yIDQ2LjYgMzguNCA3Ni44IDM4LjQgNTMgMCA5Ni00MyA5Ni05NnMtNDMtOTYtOTYtOTZjLTMwLjIgMC01OC43IDE0LjItNzYuOCAzOC40TDM2MCAyNTZ6Il19LGo1cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjbG9uZSIsaWNvbjpbNTEyLDUxMixbXSwiZjI0ZCIsIk0yODggNDQ4bC0yMjQgMCAwLTIyNCA0OCAwIDAtNjQtNDggMGMtMzUuMyAwLTY0IDI4LjctNjQgNjRMMCA0NDhjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMjI0IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC00OC02NCAwIDAgNDh6bS02NC05NmwyMjQgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTIyNGMwLTM1LjMtMjguNy02NC02NC02NEwyMjQgMGMtMzUuMyAwLTY0IDI4LjctNjQgNjRsMCAyMjRjMCAzNS4zIDI4LjcgNjQgNjQgNjR6Il19LFY1cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmb3J3YXJkIixpY29uOls1NzYsNTEyLFs5MTkzXSwiZjA0ZSIsIk0zNzEuNyA0My4xQzM2MC4xIDMyIDM0MyAyOC45IDMyOC4zIDM1LjJTMzA0IDU2IDMwNCA3MmwwIDEzNi4zLTE3Mi4zLTE2NS4xQzEyMC4xIDMyIDEwMyAyOC45IDg4LjMgMzUuMlM2NCA1NiA2NCA3MmwwIDM2OGMwIDE2IDkuNiAzMC41IDI0LjMgMzYuOHMzMS44IDMuMiA0My40LTcuOUwzMDQgMzAzLjcgMzA0IDQ0MGMwIDE2IDkuNiAzMC41IDI0LjMgMzYuOHMzMS44IDMuMiA0My40LTcuOWwxOTItMTg0YzcuOS03LjUgMTIuMy0xOCAxMi4zLTI4LjlzLTQuNS0yMS4zLTEyLjMtMjguOWwtMTkyLTE4NHoiXX0sVTVyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im0iLGljb246WzQ0OCw1MTIsWzEwOV0sIjRkIiwiTTIyLjcgMzMuNGMxMy41LTQuMSAyOC4xIDEuMSAzNS45IDEyLjlMMjI0IDI5NC4zIDM4OS40IDQ2LjNjNy44LTExLjcgMjIuNC0xNyAzNS45LTEyLjlTNDQ4IDQ5LjkgNDQ4IDY0bDAgMzg0YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMjc4LjMtMTMzLjQgMjAwLjFjLTUuOSA4LjktMTUuOSAxNC4yLTI2LjYgMTQuMnMtMjAuNy01LjMtMjYuNi0xNC4yTDY0IDE2OS43IDY0IDQ0OGMwIDE3LjctMTQuMyAzMi0zMiAzMlMwIDQ2NS43IDAgNDQ4TDAgNjRDMCA0OS45IDkuMiAzNy41IDIyLjcgMzMuNHoiXX0sVzVyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InJvYWQtc3Bpa2VzIixpY29uOls2NDAsNTEyLFtdLCJlNTY4IiwiTTY0IDExNi44YzAtMTUuOCAyMC41LTIyIDI5LjMtOC45bDk4LjcgMTQ4IDAtMTM5LjJjMC0xNS44IDIwLjUtMjIgMjkuMy04LjlsOTguNyAxNDggMC0xMzkuMmMwLTE1LjggMjAuNS0yMiAyOS4zLTguOWw5OC43IDE0OCAwLTEzOS4yYzAtMTUuOCAyMC41LTIyIDI5LjMtOC45TDYwNi44IDMwMi4yYzE0LjIgMjEuMy0xLjEgNDkuOC0yNi42IDQ5LjhMNjQgMzUyIDY0IDExNi44ek0zMiAzODRsNTc2IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJMMzIgNDQ4Yy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMyeiJdfSxHNXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibW91bnRhaW4iLGljb246WzUxMiw1MTIsWzEyNzk1Nl0sImY2ZmMiLCJNMjU2LjUgMGMxNC43IDAgMjguMiA4LjEgMzUuMiAyMWwyMTYgNDAwYzYuNyAxMi40IDYuNCAyNy40LS44IDM5LjUtNy4yIDEyLjEtMjAuMyAxOS41LTM0LjMgMTkuNWwtNDMyIDBjLTE0LjEgMC0yNy4xLTcuNC0zNC4zLTE5LjVzLTcuNS0yNy4xLS44LTM5LjVsMjE2LTQwMCAyLjktNC42QzIzMS43IDYuMiAyNDMuNiAwIDI1Ni41IDB6TTE3MC40IDI0OS45bDI2LjggMjYuOGM2LjIgNi4yIDE2LjQgNi4yIDIyLjYgMGw0My4zLTQzLjNjNi02IDE0LjEtOS40IDIyLjYtOS40bDQyLjggMC03Mi4xLTEzMy41LTg2LjEgMTU5LjR6Il19LFk1cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjaGVzcyIsaWNvbjpbNTEyLDUxMixbXSwiZjQzOSIsIk0xNjggNTZsMCA0MC03OC4xIDBjLTE0LjMgMC0yNS45IDExLjYtMjUuOSAyNS45IDAgNCAuOSA4IDIuNyAxMS42bDMzLjQgNjYuOGMtMTEuNCAxLjgtMjAuMiAxMS43LTIwLjIgMjMuNyAwIDEzLjMgMTAuNyAyNCAyNCAyNGw1LjYgMC0xMy42IDEzNi01Ni4yIDcwLjNjLTUgNi4zLTcuOCAxNC4xLTcuOCAyMi4yIDAgMTkuNiAxNS45IDM1LjUgMzUuNSAzNS41bDI0OC45IDBjMTkuNiAwIDM1LjUtMTUuOSAzNS41LTM1LjUgMC04LjEtMi43LTE1LjktNy44LTIyLjJMMjg4IDM4NCAyNzQuNCAyNDggMjgwIDI0OGMxMy4zIDAgMjQtMTAuNyAyNC0yNCAwLTExLjktOC43LTIxLjktMjAuMi0yMy43bDMzLjQtNjYuOGMxLjgtMy42IDIuNy03LjYgMi43LTExLjYgMC0xNC4zLTExLjYtMjUuOS0yNS45LTI1LjlsLTc4LjEgMCAwLTQwIDE2IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRTMjQ1LjMgOCAyMzIgOGwtMTYgMCAwLTE2YzAtMTMuMy0xMC43LTI0LTI0LTI0UzE2OC0yMS4zIDE2OC04bDAgMTYtMTYgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwxNiAwek0zMjUuOCAyNzkuNmw4LjUgODUuNSA0Ny40IDU5LjIgNC4yIDUuN2M5LjIgMTMuNyAxNC4xIDI5LjkgMTQuMSA0Ni41IDAgMTIuNy0yLjggMjQuOC03LjkgMzUuNWw4My4xIDBjMjAuMyAwIDM2LjgtMTYuNSAzNi44LTM2LjggMC03LjMtMi4yLTE0LjQtNi4yLTIwLjRsLTI1LjgtMzguNyAwLTY0IDEzLjMtMTMuM2MxMi0xMiAxOC43LTI4LjMgMTguNy00NS4zTDUxMiAxOTJjMC0xNy43LTE0LjMtMzItMzItMzJzLTMyIDE0LjMtMzIgMzJsMCAxNi0zMiAwIDAtMTZjMC0xNy43LTE0LjMtMzItMzItMzJzLTMyIDE0LjMtMzIgMzJsMCAzMmMwIDIyLjQtMTAuMiA0Mi40LTI2LjIgNTUuNnoiXX0sdnc9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidGVtcGVyYXR1cmUtdGhyZWUtcXVhcnRlcnMiLGljb246WzMyMCw1MTIsWyJ0ZW1wZXJhdHVyZS0zIiwidGhlcm1vbWV0ZXItMyIsInRoZXJtb21ldGVyLXRocmVlLXF1YXJ0ZXJzIl0sImYyYzgiLCJNMTYwIDBDMTA3IDAgNjQgNDMgNjQgOTZsMCAxNjQuN0MzNC41IDI4NyAxNiAzMjUuNCAxNiAzNjggMTYgNDQ3LjUgODAuNSA1MTIgMTYwIDUxMnMxNDQtNjQuNSAxNDQtMTQ0YzAtNDIuNi0xOC41LTgxLTQ4LTEwNy4zTDI1NiA5NmMwLTUzLTQzLTk2LTk2LTk2em02NCAzNjhjMCAzNS4zLTI4LjcgNjQtNjQgNjRzLTY0LTI4LjctNjQtNjRjMC0yNi45IDE2LjUtNDkuOSA0MC01OS4zTDEzNiAxNTJjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNGwwIDE1Ni43YzIzLjUgOS41IDQwIDMyLjUgNDAgNTkuM3oiXX0sWjVyPXZ3LFg1cj12dyxRNXI9dncsSzVyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImIiLGljb246WzMyMCw1MTIsWzk4XSwiNDIiLCJNMzIgMzJDMTQuMyAzMiAwIDQ2LjMgMCA2NEwwIDQ0OGMwIDE3LjcgMTQuMyAzMiAzMiAzMmwxNjAgMGM3MC43IDAgMTI4LTU3LjMgMTI4LTEyOCAwLTQ2LjUtMjQuOC04Ny4zLTYyLTEwOS43IDE4LjctMjIuMyAzMC01MSAzMC04Mi4zIDAtNzAuNy01Ny4zLTEyOC0xMjgtMTI4TDMyIDMyek0xNjAgMjI0bC05NiAwIDAtMTI4IDk2IDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRzLTI4LjcgNjQtNjQgNjR6TTY0IDI4OGwxMjggMGMzNS4zIDAgNjQgMjguNyA2NCA2NHMtMjguNyA2NC02NCA2NGwtMTI4IDAgMC0xMjh6Il19LEo1cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzaGllbGQtdmlydXMiLGljb246WzUxMiw1MTIsW10sImUwNmMiLCJNMjUzLjQgMi45QzI0OS4yIDEgMjQ0LjcgMCAyNDAgMHMtOS4yIDEtMTMuNCAyLjlMMzguMyA4Mi44Yy0yMiA5LjMtMzguNCAzMS0zOC4zIDU3LjIgLjUgOTkuMiA0MS4zIDI4MC43IDIxMy42IDM2My4yIDE2LjcgOCAzNi4xIDggNTIuOCAwIDE3Mi40LTgyLjUgMjEzLjItMjY0IDIxMy42LTM2My4yIC4xLTI2LjItMTYuMy00Ny45LTM4LjMtNTcuMkwyNTMuNCAyLjl6TTI0MCAxMjhjMTMuMyAwIDI0IDEwLjcgMjQgMjQgMCAyMi45IDI3LjcgMzQuNCA0My45IDE4LjIgOS40LTkuNCAyNC42LTkuNCAzMy45IDBzOS40IDI0LjYgMCAzMy45Yy0xNi4yIDE2LjItNC43IDQzLjkgMTguMiA0My45IDEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0Yy0yMi45IDAtMzQuNCAyNy43LTE4LjIgNDMuOSA5LjQgOS40IDkuNCAyNC42IDAgMzMuOXMtMjQuNiA5LjQtMzMuOSAwYy0xNi4yLTE2LjItNDMuOS00LjctNDMuOSAxOC4yIDAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0YzAtMjIuOS0yNy43LTM0LjQtNDMuOS0xOC4yLTkuNCA5LjQtMjQuNiA5LjQtMzMuOSAwcy05LjQtMjQuNiAwLTMzLjljMTYuMi0xNi4yIDQuNy00My45LTE4LjItNDMuOS0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0YzIyLjkgMCAzNC40LTI3LjcgMTguMi00My45LTkuNC05LjQtOS40LTI0LjYgMC0zMy45czI0LjYtOS40IDMzLjkgMGMxNi4yIDE2LjIgNDMuOSA0LjcgNDMuOS0xOC4yIDAtMTMuMyAxMC43LTI0IDI0LTI0ek0yMDggMjY0YTI0IDI0IDAgMSAwIDAtNDggMjQgMjQgMCAxIDAgMCA0OHptODggNDBhMjQgMjQgMCAxIDAgLTQ4IDAgMjQgMjQgMCAxIDAgNDggMHoiXX0sZXByPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImxpdGVjb2luLXNpZ24iLGljb246WzM4NCw1MTIsW10sImUxZDMiLCJNMTI4IDY0YzAtMTcuNy0xNC4zLTMyLTMyLTMyUzY0IDQ2LjMgNjQgNjRsMCAxNTcuOS0zOC42IDExYy0xMi43IDMuNi0yMC4xIDE2LjktMTYuNSAyOS43czE2LjkgMjAuMSAyOS43IDE2LjVMNjQgMjcxLjggNjQgNDQ4YzAgMTcuNyAxNC4zIDMyIDMyIDMybDI1NiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC0yMjQgMCAwLTE2Mi41IDEzNC42LTM4LjVjMTIuNy0zLjYgMjAuMS0xNi45IDE2LjUtMjkuN3MtMTYuOS0yMC4xLTI5LjctMTYuNUwxMjggMjAzLjYgMTI4IDY0eiJdfSx0cHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZGljZS1kNiIsaWNvbjpbNTEyLDUxMixbXSwiZjZkMSIsIk0yMjQuNCA4LjNDMjQ0LTIuOCAyNjgtMi44IDI4Ny42IDguM2wxNzYgOTkuN2MyMCAxMS40IDMyLjQgMzIuNiAzMi40IDU1LjdsMCAxOTcuNGMwIDIzLTEyLjQgNDQuMy0zMi40IDU1LjdsLTE3NiA5OS43Yy0xOS42IDExLjEtNDMuNiAxMS4xLTYzLjEgMGwtMTc2LTk5LjdDMjguNCA0MDUuNSAxNiAzODQuMiAxNiAzNjEuMmwwLTE5Ny40YzAtMjMgMTIuNC00NC4zIDMyLjQtNTUuN2wxNzYtOTkuN3pNMTAyLjYgMTU1LjZjLTguOC0zLjEtMTguOCAuMy0yMy44IDguNnMtMy4yIDE4LjcgMy42IDI1bDMuMiAyLjQgMTUwLjIgOTAuMiAwIDE0OC43YzAgMTEgOSAyMCAyMCAyMCAxMSAwIDIwLTkgMjAtMjBsMC0xNDguNyAxNTAuMy05MC4yYzkuNS01LjcgMTIuNi0xOCA2LjktMjcuNHMtMTgtMTIuNS0yNy40LTYuOWwtMTQ5LjcgODkuOC0xNDkuNy04OS44LTMuNy0xLjd6Il19LHJwcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJncmlwLWxpbmVzLXZlcnRpY2FsIixpY29uOlsxOTIsNTEyLFtdLCJmN2E1IiwiTTY0IDY0YzAtMTcuNy0xNC4zLTMyLTMyLTMyUzAgNDYuMyAwIDY0TDAgNDQ4YzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJMNjQgNjR6bTEyOCAwYzAtMTcuNy0xNC4zLTMyLTMyLTMycy0zMiAxNC4zLTMyIDMybDAgMzg0YzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0zODR6Il19LGNfZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJnb2xmLWJhbGwtdGVlIixpY29uOlszODQsNTEyLFsiZ29sZi1iYWxsIl0sImY0NTAiLCJNMjk4LjUgMzg0LjFjMTIuMSAxLjIgMjEuNSAxMS41IDIxLjUgMjMuOXMtOS40IDIyLjYtMjEuNSAyMy45bC0yLjUgLjEtODAgMCAwIDg4YzAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0bDAtODgtODAgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjQgMC0xMi40IDkuNC0yMi42IDIxLjUtMjMuOWwyLjUtLjEgMjA4IDAgMi41IC4xek0xOTIgMGMxMDYgMCAxOTIgODYgMTkyIDE5MiAwIDU3LjQtMjUuMiAxMDguOC02NS4xIDE0NEw2NS4xIDMzNkMyNS4yIDMwMC44IDAgMjQ5LjQgMCAxOTIgMCA4NiA4NiAwIDE5MiAwem0zMiAyNDBjLTcuNyAwLTE0LjIgNS41LTE1LjcgMTIuOGwtLjYgNi40Yy0xLjMgNi4zLTYuMiAxMS4yLTEyLjUgMTIuNWwtNi40IC42Yy03LjMgMS41LTEyLjggOC0xMi44IDE1LjcgMCA4LjggNy4yIDE2IDE2IDE2IDI2LjUgMCA0OC0yMS41IDQ4LTQ4IDAtOC44LTcuMi0xNi0xNi0xNnptNjQtNjRjLTcuNyAwLTE0LjIgNS41LTE1LjcgMTIuOGwtLjYgNi40Yy0xLjMgNi4zLTYuMiAxMS4yLTEyLjUgMTIuNWwtNi40IC42Yy03LjMgMS41LTEyLjggOC0xMi44IDE1LjcgMCA4LjggNy4yIDE2IDE2IDE2IDI2LjUgMCA0OC0yMS41IDQ4LTQ4IDAtOC44LTcuMi0xNi0xNi0xNnptLTgwLTE2Yy03LjcgMC0xNC4yIDUuNS0xNS43IDEyLjhsLS42IDYuNGMtMS4zIDYuMy02LjIgMTEuMi0xMi41IDEyLjVsLTYuNCAuNmMtNy4zIDEuNS0xMi44IDgtMTIuOCAxNS43IDAgOC44IDcuMiAxNiAxNiAxNiAyNi41IDAgNDgtMjEuNSA0OC00OCAwLTguOC03LjItMTYtMTYtMTZ6Il19LGFwcj1jX2UsaXByPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhleGFnb24iLGljb246WzU3Niw1MTIsWzExMDQzXSwiZjMxMiIsIk0zMy41IDIyMC4zYy0xMi43IDIyLjItMTIuNyA0OS40IDAgNzEuNWw5Ni4yIDE2OC4xYzEyLjggMjIuNCAzNi43IDM2LjIgNjIuNSAzNi4ybDE5MS42IDBjMjUuOCAwIDQ5LjctMTMuOCA2Mi41LTM2LjJsOTYuMi0xNjguMWMxMi43LTIyLjIgMTIuNy00OS40IDAtNzEuNUw0NDYuMyA1Mi4yQzQzMy41IDI5LjggNDA5LjYgMTYgMzgzLjggMTZMMTkyLjIgMTZjLTI1LjggMC00OS43IDEzLjgtNjIuNSAzNi4yTDMzLjUgMjIwLjN6Il19LG9wcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmb2xkZXItb3BlbiIsaWNvbjpbNTc2LDUxMixbMTI4MTk0LDEyODQ0OSw2MTcxN10sImYwN2MiLCJNNTYgMjI1LjZMMzIuNCAyOTYuMiAzMi40IDk2YzAtMzUuMyAyOC43LTY0IDY0LTY0bDEzOC43IDBjMTMuOCAwIDI3LjMgNC41IDM4LjQgMTIuOGwzOC40IDI4LjhjNS41IDQuMiAxMi4zIDYuNCAxOS4yIDYuNGwxMTcuMyAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMTYtMzY1LjQgMGMtNDEuMyAwLTc4IDI2LjQtOTEuMSA2NS42ek00NzcuOCA0NDhMOTkgNDQ4Yy0zMi44IDAtNTUuOS0zMi4xLTQ1LjUtNjMuMmw0OC0xNDRDMTA4IDIyMS4yIDEyNi40IDIwOCAxNDcgMjA4bDM3OC44IDBjMzIuOCAwIDU1LjkgMzIuMSA0NS41IDYzLjJsLTQ4IDE0NGMtNi41IDE5LjYtMjQuOSAzMi44LTQ1LjUgMzIuOHoiXX0sbnByPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImthYWJhIixpY29uOls1MTIsNTEyLFsxMjgzMzFdLCJmNjZiIiwiTTI1NiA1MS4zTDkyLjggMTEyLjQgMjQ3LjUgMTcxLjFjNS41IDIuMSAxMS41IDIuMSAxNyAwTDQxOS4yIDExMi40IDI1NiA1MS4zek0wIDEyOS4zYzAtMjAgMTIuNC0zNy45IDMxLjEtNDQuOWwyMDgtNzhjMTAuOS00LjEgMjIuOC00LjEgMzMuNyAwbDIwOCA3OGMxOC43IDcgMzEuMSAyNC45IDMxLjEgNDQuOWwwIDM2LTI1My4yIDk2Yy0xLjggLjctMy44IC43LTUuNyAwbC0yNTMuMi05NiAwLTM2em0wIDE0MGwwLTUyLjcgMjM2LjEgODkuNmMxMi44IDQuOSAyNi45IDQuOSAzOS43IDBsMjM2LjEtODkuNiAwIDUyLjctMTI4IDQ4LjYgMCA1MS4zIDEyOC00OC42IDAgNjIuMmMwIDIwLTEyLjQgMzcuOS0zMS4xIDQ0LjlsLTIwOCA3OGMtMTAuOSA0LjEtMjIuOCA0LjEtMzMuNyAwbC0yMDgtNzhDMTIuNCA0MjAuNyAwIDQwMi43IDAgMzgyLjdsMC02Mi4yIDEyOCA0OC42IDAtNTEuMy0xMjgtNDguNnpNMjM2LjEgNDEwLjFjMTIuOCA0LjkgMjYuOSA0LjkgMzkuNyAwbDYwLjEtMjIuOCAwLTUxLjMtNzcuMiAyOS4zYy0xLjggLjctMy44IC43LTUuNyAwbC03Ny4yLTI5LjMgMCA1MS4zIDYwLjEgMjIuOHoiXX0sc3ByPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhhbmQtaG9sZGluZyIsaWNvbjpbNTc2LDUxMixbXSwiZjRiZCIsIk02Ni43IDM4NGw0Mi41LTQyLjVjMjQtMjQgNTYuNi0zNy41IDkwLjUtMzcuNUwzNTIgMzA0YzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC03MiAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDExMi42IDAgMTE5LjctODguMmMxNy44LTEzLjEgNDIuOC05LjMgNTUuOSA4LjVzOS4zIDQyLjgtOC41IDU1LjlMNDMzLjEgNDg1LjVjLTIzLjQgMTcuMi01MS42IDI2LjUtODAuNyAyNi41TDMyIDUxMmMtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC02NGMwLTE3LjcgMTQuMy0zMiAzMi0zMmwzNC43IDB6Il19LGxwcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzaW5nbGUtcXVvdGUtcmlnaHQiLGljb246WzE5Miw1MTIsW10sImU4MWMiLCJNNjQgNDE2Yy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDggMGMzMC45IDAgNTYtMjUuMSA1Ni01NmwwLTgtNjQgMGMtMzUuMyAwLTY0LTI4LjctNjQtNjRsMC02NGMwLTM1LjMgMjguNy02NCA2NC02NGw2NCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMTM2YzAgNjYuMy01My43IDEyMC0xMjAgMTIwbC04IDB6Il19LGNwcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJib3R0bGUtZHJvcGxldCIsaWNvbjpbMzIwLDUxMixbXSwiZTRjNCIsIk04MCAwYzAtMTcuNyAxNC4zLTMyIDMyLTMybDk2IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsMCAxMDMuM2M2NC45IDIwLjQgMTEyIDgxIDExMiAxNTIuN2wwIDE5MmMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA1NDRjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgMjg4YzAtNzEuNiA0Ny4xLTEzMi4zIDExMi0xNTIuN0wxMTIgMzJDOTQuMyAzMiA4MCAxNy43IDgwIDB6bTgwIDQxNmMzNS4zIDAgNjQtMzIuNCA2NC02NCAwLTIxLjItMjguOS02NC41LTQ3LjktOTAuNi04LjEtMTEuMS0yNC4yLTExLjEtMzIuMyAwLTE5IDI2LjEtNDcuOSA2OS40LTQ3LjkgOTAuNiAwIDMxLjYgMjguNyA2NCA2NCA2NHoiXX0sZHByPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6IndpbmRvdy1taW5pbWl6ZSIsaWNvbjpbNTEyLDUxMixbMTI4NDY5XSwiZjJkMSIsIk0wIDQxNmMwLTE3LjcgMTQuMy0zMiAzMi0zMmw0NDggMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMkwzMiA0NDhjLTE3LjcgMC0zMi0xNC4zLTMyLTMyeiJdfSx1cHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2hldnJvbi1yaWdodCIsaWNvbjpbMzIwLDUxMixbOTAwMl0sImYwNTQiLCJNMzExLjEgMjMzLjRjMTIuNSAxMi41IDEyLjUgMzIuOCAwIDQ1LjNsLTE5MiAxOTJjLTEyLjUgMTIuNS0zMi44IDEyLjUtNDUuMyAwcy0xMi41LTMyLjggMC00NS4zTDI0My4yIDI1NiA3My45IDg2LjZjLTEyLjUtMTIuNS0xMi41LTMyLjggMC00NS4zczMyLjgtMTIuNSA0NS4zIDBsMTkyIDE5MnoiXX0sZnByPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImVnZyIsaWNvbjpbMzg0LDUxMixbMTI5MzcwXSwiZjdmYiIsIk0xOTIgNDk2Qzg2IDQ5NiAwIDM5NCAwIDI4OCAwIDE3NiA2NCAxNiAxOTIgMTZTMzg0IDE3NiAzODQgMjg4YzAgMTA2LTg2IDIwOC0xOTIgMjA4ek0xNTQuOCAxMzRjNi41LTYgNy0xNi4xIDEtMjIuNnMtMTYuMS03LTIyLjYtMWMtMjMuOSAyMS44LTQxLjEgNTIuNy01Mi4zIDg0LjItMTEuMiAzMS42LTE2LjkgNjUuMS0xNi45IDkzLjUgMCA4LjggNy4yIDE2IDE2IDE2czE2LTcuMiAxNi0xNmMwLTI0LjUgNS01NC40IDE1LjEtODIuOCAxMC4xLTI4LjUgMjUtNTQuMSA0My43LTcxLjJ6Il19LGRfZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJsYW5kbWFyay1kb21lIixpY29uOls1MTIsNTEyLFsibGFuZG1hcmstYWx0Il0sImY3NTIiLCJNMjU2IDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyIDAgLjkgMCAxLjggLjEgMi42LTgwLjUgMTMuNC0xNDQgNzYuOS0xNTcuNSAxNTcuNEw2NCAxOTJjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsMCAxNjAtNTEuMiAzOC40QzQuNyA0NjAuNCAwIDQ2OS45IDAgNDgwIDAgNDk3LjcgMTQuMyA1MTIgMzIgNTEybDQ0OCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMyIDAtMTAuMS00LjctMTkuNi0xMi44LTI1LjZMNDQ4IDQxNiA0NDggMjU2YzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC0yLjcgMGMtMTMuNS04MC40LTc3LTE0My45LTE1Ny41LTE1Ny40IC4xLS45IC4xLTEuNyAuMS0yLjYgMC0xNy43LTE0LjMtMzItMzItMzJ6bTgwIDI1Nmw2NCAwIDAgMTYwLTY0IDAgMC0xNjB6TTIyNCA0MTZsMC0xNjAgNjQgMCAwIDE2MC02NCAwek0xMTIgMjU2bDY0IDAgMCAxNjAtNjQgMCAwLTE2MHoiXX0scHByPWRfZSxocHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToid29ybSIsaWNvbjpbNDQ4LDUxMixbXSwiZTU5OSIsIk0yMjQgOTZjMC01MyA0My05NiA5Ni05NmwzOC40IDBDNDA3LjkgMCA0NDggNDAuMSA0NDggODkuNkw0NDggMzc2YzAgNzUuMS02MC45IDEzNi0xMzYgMTM2UzE3NiA0NTEuMSAxNzYgMzc2bDAtODBjMC0yMi4xLTE3LjktNDAtNDAtNDBzLTQwIDE3LjktNDAgNDBsMCAxNjhjMCAyNi41LTIxLjUgNDgtNDggNDhTMCA0OTAuNSAwIDQ2NEwwIDI5NmMwLTc1LjEgNjAuOS0xMzYgMTM2LTEzNnMxMzYgNjAuOSAxMzYgMTM2bDAgODBjMCAyMi4xIDE3LjkgNDAgNDAgNDBzNDAtMTcuOSA0MC00MGwwLTE4NC0zMiAwYy01MyAwLTk2LTQzLTk2LTk2em0xNDQtOGEyNCAyNCAwIDEgMCAtNDggMCAyNCAyNCAwIDEgMCA0OCAweiJdfSxtcHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidXNlci1pbmp1cmVkIixpY29uOls0NDgsNTEyLFtdLCJmNzI4IiwiTTI0Mi43IDgwTDMzNCA4MGMtMTAuNy0yNC42LTI5LjUtNDQuOS01Mi45LTU3LjZMMjQyLjcgODB6bS0uOS03MC43QzIzNiA4LjQgMjMwIDggMjI0IDggMTc0LjggOCAxMzIuNSAzNy42IDExNCA4MGw4MC42IDAgNDcuMS03MC43ek0yMjQgMjQ4YzY2LjMgMCAxMjAtNTMuNyAxMjAtMTIwbC0yNDAgMGMwIDY2LjMgNTMuNyAxMjAgMTIwIDEyMHpNOTguNyAzNDEuOEM0OS4zIDM3MC4yIDE2IDQyMy41IDE2IDQ4NC42IDE2IDQ5OS43IDI4LjMgNTEyIDQzLjQgNTEybDE1MSAwLTk1LjgtMTcwLjJ6bTQ1LjEtMTcuN2w0Mi43IDc1LjkgODUuNSAwYzQ0LjIgMCA4MCAzNS44IDgwIDgwIDAgMTEuNC0yLjQgMjIuMi02LjcgMzJsNTkuMiAwYzE1LjEgMCAyNy40LTEyLjMgMjcuNC0yNy40IDAtOTAuOS03My43LTE2NC42LTE2NC42LTE2NC42bC04Ni45IDBjLTEyLjYgMC0yNC45IDEuNC0zNi43IDQuMXpNMjEzLjUgNDQ4bDM2IDY0IDIyLjUgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtNTguNSAweiJdfSxncHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic3RyaWtldGhyb3VnaCIsaWNvbjpbNTEyLDUxMixbXSwiZjBjYyIsIk05NiAxNTcuNUM5NiA4OC4yIDE1Mi4yIDMyIDIyMS41IDMyTDM2OCAzMmMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMkwyMjEuNSA5NmMtMzQgMC02MS41IDI3LjUtNjEuNSA2MS41IDAgMzEgMjMuMSA1Ny4yIDUzLjkgNjFsNDQuMSA1LjUgMjIyIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJMMzIgMjg4Yy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDgzLjEgMEMxMDMgMjA0LjYgOTYgMTgxLjggOTYgMTU3LjV6TTM0OS4yIDMzNmw2NS41IDBjLjkgNi4xIDEuNCAxMi4yIDEuNCAxOC41IDAgNjkuMy01Ni4yIDEyNS41LTEyNS41IDEyNS41TDE0NCA0ODBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsMTQ2LjUgMGMzNCAwIDYxLjUtMjcuNSA2MS41LTYxLjUgMC02LjQtMS0xMi43LTIuOC0xOC41eiJdfSx4cHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYmxvZyIsaWNvbjpbNTEyLDUxMixbXSwiZjc4MSIsIk0yMjQgMjRjMC0xMy4zIDEwLjctMjQgMjQtMjQgMTQ1LjggMCAyNjQgMTE4LjIgMjY0IDI2NCAwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNGMwLTExOS4zLTk2LjctMjE2LTIxNi0yMTYtMTMuMyAwLTI0LTEwLjctMjQtMjR6TTgwIDk2YzI2LjUgMCA0OCAyMS41IDQ4IDQ4bDAgMjI0YzAgMjYuNSAyMS41IDQ4IDQ4IDQ4czQ4LTIxLjUgNDgtNDgtMjEuNS00OC00OC00OGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtNjRjMC04LjggNy4yLTE2IDE2LTE2IDc5LjUgMCAxNDQgNjQuNSAxNDQgMTQ0UzI1NS41IDUxMiAxNzYgNTEyIDMyIDQ0Ny41IDMyIDM2OGwwLTIyNGMwLTI2LjUgMjEuNS00OCA0OC00OHptMTY4IDBjOTIuOCAwIDE2OCA3NS4yIDE2OCAxNjggMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjRjMC02Ni4zLTUzLjctMTIwLTEyMC0xMjAtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNHoiXX0sYnByPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InN0b3B3YXRjaC0yMCIsaWNvbjpbNDQ4LDUxMixbXSwiZTA2ZiIsIk0xNjguNSAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDMyIDAgMCAyNS4zYy0xMDggMTEuOS0xOTIgMTAzLjUtMTkyIDIxNC43IDAgMTE5LjMgOTYuNyAyMTYgMjE2IDIxNnMyMTYtOTYuNyAyMTYtMjE2YzAtMzkuOC0xMC44LTc3LjEtMjkuNi0xMDkuMmwyOC4yLTI4LjJjMTIuNS0xMi41IDEyLjUtMzIuOCAwLTQ1LjNzLTMyLjgtMTIuNS00NS4zIDBsLTIzLjQgMjMuNGMtMzIuOS0zMC4yLTc1LjItNTAuMy0xMjItNTUuNWwwLTI1LjMgMzIgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtMTEyIDB6bS02MCAyNDBjMC0yOC43IDIzLjMtNTIgNTItNTJzNTIgMjMuMyA1MiA1MmwwIDMuOGMwIDExLjctMy4yIDIzLjEtOS4zIDMzbC00My44IDcxLjIgMzMuMSAwYzExIDAgMjAgOSAyMCAyMHMtOSAyMC0yMCAyMGwtNTcuOCAwYy0xNC41IDAtMjYuMi0xMS43LTI2LjItMjYuMiAwLTQuOSAxLjMtOS42IDMuOS0xMy44bDU2LjctOTIuMWMyLjItMy42IDMuNC03LjggMy40LTEyLjFsMC0zLjhjMC02LjYtNS40LTEyLTEyLTEycy0xMiA1LjQtMTIgMTJjMCAxMS05IDIwLTIwIDIwcy0yMC05LTIwLTIwem0xODAtNTJjMjguNyAwIDUyIDIzLjMgNTIgNTJsMCA5NmMwIDI4LjctMjMuMyA1Mi01MiA1MnMtNTItMjMuMy01Mi01MmwwLTk2YzAtMjguNyAyMy4zLTUyIDUyLTUyem0tMTIgNTJsMCA5NmMwIDYuNiA1LjQgMTIgMTIgMTJzMTItNS40IDEyLTEybDAtOTZjMC02LjYtNS40LTEyLTEyLTEycy0xMiA1LjQtMTIgMTJ6Il19LHZwcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0cnVjay1waWNrdXAiLGljb246WzY0MCw1MTIsWzEyODc2M10sImY2M2MiLCJNMzYzLjggOTZsNTcuNiA5Ni0xMzMuNCAwIDAtOTYgNzUuOCAwek00OTYgMTkyTDQxOC42IDYzLjFDNDA3LjEgNDMuOCAzODYuMiAzMiAzNjMuOCAzMkwyNTYgMzJjLTE3LjcgMC0zMiAxNC4zLTMyIDMybDAgMTI4LTE0NCAwYy0yNi41IDAtNDggMjEuNS00OCA0OGwwIDgwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDMyLjQgMGMtLjIgMi42LS40IDUuMy0uNCA4IDAgNDguNiAzOS40IDg4IDg4IDg4czg4LTM5LjQgODgtODhjMC0yLjctLjEtNS40LS40LThsMTYwLjcgMGMtLjIgMi42LS40IDUuMy0uNCA4IDAgNDguNiAzOS40IDg4IDg4IDg4czg4LTM5LjQgODgtODhjMC0yLjctLjEtNS40LS40LThsMzIuNCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybDAtODBjMC0yNi41LTIxLjUtNDgtNDgtNDhsLTY0IDB6TTExMiAzOTJhNDAgNDAgMCAxIDEgODAgMCA0MCA0MCAwIDEgMSAtODAgMHptMzc2LTQwYTQwIDQwIDAgMSAxIDAgODAgNDAgNDAgMCAxIDEgMC04MHoiXX0sdV9lPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNlZWRsaW5nIixpY29uOls1MTIsNTEyLFsxMjc3OTMsInNwcm91dCJdLCJmNGQ4IiwiTTUxMiAzMkM1MTIgMTQwLjEgNDM1LjQgMjMwLjMgMzMzLjYgMjUxLjQgMzI1LjcgMTkzLjMgMjk5LjYgMTQxIDI2MS4xIDEwMC41IDMwMS4yIDQwIDM2OS45IDAgNDQ4IDBsMzIgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnpNMCA5NkMwIDc4LjMgMTQuMyA2NCAzMiA2NGwzMiAwYzEyMy43IDAgMjI0IDEwMC4zIDIyNCAyMjRsMCAxOTJjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC0xNjBDMTAwLjMgMzIwIDAgMjE5LjcgMCA5NnoiXX0seXByPXVfZSxmX2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidHJhbnNnZW5kZXIiLGljb246WzU3Niw1MTIsWzk4OTUsInRyYW5zZ2VuZGVyLWFsdCJdLCJmMjI1IiwiTTEyOC0zMmMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMkw5Ny45IDMyIDEzNiA3MC4xIDE1MSA1NWM5LjQtOS40IDI0LjYtOS40IDMzLjkgMHM5LjQgMjQuNiAwIDMzLjlsLTE1IDE1IDE0LjIgMTQuMmMyNy45LTIzLjggNjQuMi0zOC4yIDEwMy44LTM4LjIgMzYuNyAwIDcwLjYgMTIuNCA5Ny42IDMzLjJMNDY2LjcgMzIgNDQ4IDMyYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDk2IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCA5NmMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTE4LjctODQuNCA4NC40YzEzIDIzLjEgMjAuNCA0OS45IDIwLjQgNzguMyAwIDc3LjQtNTUgMTQyLTEyOCAxNTYuOGwwIDM1LjIgMzIgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtMzIgMCAwIDE2YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMTYtMzIgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMmwzMiAwIDAtMzUuMmMtNzMtMTQuOC0xMjgtNzkuNC0xMjgtMTU2LjggMC0zMS40IDktNjAuNyAyNC43LTg1LjRsLTE2LjctMTYuNy0xNSAxNWMtOS40IDkuNC0yNC42IDkuNC0zMy45IDBzLTkuNC0yNC42IDAtMzMuOWwxNS0xNS0zOC4xLTM4LjEgMCAzMC4xYzAgMTcuNy0xNC4zIDMyLTMyIDMyUzAgMTEzLjcgMCA5NkwwIDBDMC0xNy43IDE0LjMtMzIgMzItMzJsOTYgMHpNMjg4IDMzNmE5NiA5NiAwIDEgMCAwLTE5MiA5NiA5NiAwIDEgMCAwIDE5MnoiXX0sd3ByPWZfZSxNcHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic3Rhci1oYWxmIixpY29uOls1NzYsNTEyLFs2MTczMV0sImYwODkiLCJNMzA0LjEgNy42YzAtMTEuMS03LjYtMjAuNy0xOC40LTIzLjNzLTIxLjkgMi41LTI3IDEyLjRMMTkzLjEgMTI1LjMgMzMuMiAxNTAuN2MtOC45IDEuNC0xNi4zIDcuNy0xOS4xIDE2LjNzLS41IDE4IDUuOCAyNC40bDExNC40IDExNC41LTI1LjIgMTU5LjljLTEuNCA4LjkgMi4zIDE3LjkgOS42IDIzLjJzMTYuOSA2LjEgMjUgMkwyOTEgNDE2LjFjOC00LjEgMTMuMS0xMi40IDEzLjEtMjEuNGwwLTM4Ny4xeiJdfSxwX2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGhvdG8tZmlsbSIsaWNvbjpbNjQwLDUxMixbInBob3RvLXZpZGVvIl0sImY4N2MiLCJNMTkyIDY0YzAtMzUuMyAyOC43LTY0IDY0LTY0TDU3NiAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMjI0YzAgMzUuMy0yOC43IDY0LTY0IDY0bC0zMjAgMGMtMzUuMyAwLTY0LTI4LjctNjQtNjRsMC0yMjR6TTMyMCA5NmEzMiAzMiAwIDEgMCAtNjQgMCAzMiAzMiAwIDEgMCA2NCAwem0xNTYuNSAxMS41QzQ3Mi4xIDEwMC40IDQ2NC40IDk2IDQ1NiA5NnMtMTYuMSA0LjQtMjAuNSAxMS41bC01NCA4OC4zLTE3LjktMjUuNmMtNC41LTYuNC0xMS44LTEwLjItMTkuNy0xMC4ycy0xNS4yIDMuOC0xOS43IDEwLjJsLTU2IDgwYy01LjEgNy4zLTUuOCAxNi45LTEuNiAyNC44UzI3OS4xIDI4OCAyODggMjg4bDI1NiAwYzguNyAwIDE2LjctNC43IDIwLjktMTIuM3M0LjEtMTYuOC0uNS0yNC4zbC04OC0xNDR6TTE0NCAxMjhsMCAxNjBjMCA2MS45IDUwLjEgMTEyIDExMiAxMTJsMTkyIDAgMCAxNmMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA0ODBjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgMTkyYzAtMzUuMyAyOC43LTY0IDY0LTY0bDgwIDB6TTUyIDE5NmwwIDI0YzAgOC44IDcuMiAxNiAxNiAxNmwyNCAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTI0YzAtOC44LTcuMi0xNi0xNi0xNmwtMjQgMGMtOC44IDAtMTYgNy4yLTE2IDE2em0xNiA4MGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMjRjMCA4LjggNy4yIDE2IDE2IDE2bDI0IDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMjRjMC04LjgtNy4yLTE2LTE2LTE2bC0yNCAwem0wIDk2Yy04LjggMC0xNiA3LjItMTYgMTZsMCAyNGMwIDguOCA3LjIgMTYgMTYgMTZsMjQgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0yNGMwLTguOC03LjItMTYtMTYtMTZsLTI0IDB6Il19LGtwcj1wX2UsU3ByPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBpY3R1cmUtaW4tcGljdHVyZSIsaWNvbjpbNTEyLDUxMixbXSwiZTgwYiIsIk00NDggMzJjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAxMTItNjQgMCAwLTExMi0zODQgMCAwIDMyMCAxNDQgMCAwIDY0LTE0NCAwLTYuNS0uM2MtMzAuMS0zLjEtNTQuMS0yNy01Ny4xLTU3LjFMMCA0MTYgMCA5NkMwIDYyLjkgMjUuMiAzNS42IDU3LjUgMzIuM0w2NCAzMiA0NDggMzJ6bTE2IDIyNGMyNi41IDAgNDggMjEuNSA0OCA0OGwwIDEyOGMwIDI2LjUtMjEuNSA0OC00OCA0OGwtMTYwIDBjLTI2LjUgMC00OC0yMS41LTQ4LTQ4bDAtMTI4YzAtMjYuNSAyMS41LTQ4IDQ4LTQ4bDE2MCAweiJdfSx6cHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicHVtcC1tZWRpY2FsIixpY29uOlszMjAsNTEyLFtdLCJlMDZhIiwiTTk2IDBsMCA4MCAxMjggMCAwLTI0IDcyIDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRTMzA5LjMgOCAyOTYgOGwtNzIgMCAwLThjMC0xNy43LTE0LjMtMzItMzItMzJsLTY0IDBDMTEwLjMtMzIgOTYtMTcuNyA5NiAwek02NCAxMjhjLTM1LjMgMC02NCAyOC43LTY0IDY0TDAgNDQ4YzAgMzUuMyAyOC43IDY0IDY0IDY0bDE5MiAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMjU2YzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDEyOHptNjQgMTIwYzAtOC44IDcuMi0xNiAxNi0xNmwzMiAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDQwIDQwIDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMzJjMCA4LjgtNy4yIDE2LTE2IDE2bC00MCAwIDAgNDBjMCA4LjgtNy4yIDE2LTE2IDE2bC0zMiAwYy04LjggMC0xNi03LjItMTYtMTZsMC00MC00MCAwYy04LjggMC0xNi03LjItMTYtMTZsMC0zMmMwLTguOCA3LjItMTYgMTYtMTZsNDAgMCAwLTQweiJdfSxDcHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmlyZSIsaWNvbjpbNDQ4LDUxMixbMTI4MjkzXSwiZjA2ZCIsIk0xNjAuNS0yNi40YzkuMy03LjggMjMtNy41IDMxLjkgLjkgMTIuMyAxMS42IDIzLjMgMjQuNCAzMy45IDM3LjQgMTMuNSAxNi41IDI5LjcgMzguMyA0NS4zIDY0LjIgNS4yLTYuOCAxMC0xMi44IDE0LjItMTcuOSAxLjEtMS4zIDIuMi0yLjcgMy4zLTQuMSA3LjktOS44IDE3LjctMjIuMSAzMC44LTIyLjEgMTMuNCAwIDIyLjggMTEuOSAzMC44IDIyLjEgMS4zIDEuNyAyLjYgMy4zIDMuOSA0LjggMTAuMyAxMi40IDI0IDMwLjMgMzcuNyA1Mi40IDI3LjIgNDMuOSA1NS42IDEwNi40IDU1LjYgMTc2LjYgMCAxMjMuNy0xMDAuMyAyMjQtMjI0IDIyNFMwIDQxMS43IDAgMjg4YzAtOTEuMSA0MS4xLTE3MCA4MC41LTIyNSAxOS45LTI3LjcgMzkuNy00OS45IDU0LjYtNjUuMSA4LjItOC40IDE2LjUtMTYuNyAyNS41LTI0LjJ6TTIyNS43IDQxNmMyNS4zIDAgNDcuNy03IDY4LjgtMjEgNDIuMS0yOS40IDUzLjQtODguMiAyOC4xLTEzNC40LTQuNS05LTE2LTkuNi0yMi41LTJsLTI1LjIgMjkuM2MtNi42IDcuNi0xOC41IDcuNC0yNC43LS41LTE3LjMtMjIuMS00OS4xLTYyLjQtNjUuMy04My01LjQtNi45LTE1LjItOC0yMS41LTEuOS0xOC4zIDE3LjgtNTEuNSA1Ni44LTUxLjUgMTA0LjMgMCA2OC42IDUwLjYgMTA5LjIgMTEzLjcgMTA5LjJ6Il19LGhfZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtYWduaWZ5aW5nLWdsYXNzLXBsdXMiLGljb246WzUxMiw1MTIsWyJzZWFyY2gtcGx1cyJdLCJmMDBlIiwiTTQxNiAyMDhjMCA0NS45LTE0LjkgODguMy00MCAxMjIuN0w1MDIuNiA0NTcuNGMxMi41IDEyLjUgMTIuNSAzMi44IDAgNDUuM3MtMzIuOCAxMi41LTQ1LjMgMEwzMzAuNyAzNzZDMjk2LjMgNDAxLjEgMjUzLjkgNDE2IDIwOCA0MTYgOTMuMSA0MTYgMCAzMjIuOSAwIDIwOFM5My4xIDAgMjA4IDAgNDE2IDkzLjEgNDE2IDIwOHpNMjA4IDExMmMtMTMuMyAwLTI0IDEwLjctMjQgMjRsMCA0OC00OCAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDQ4IDAgMCA0OGMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtNDggNDggMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtNDggMCAwLTQ4YzAtMTMuMy0xMC43LTI0LTI0LTI0eiJdfSxfcHI9aF9lLFRwcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmbGFzayIsaWNvbjpbNDQ4LDUxMixbXSwiZjBjMyIsIk0yODggMEwxMjggMEMxMTAuMyAwIDk2IDE0LjMgOTYgMzJzMTQuMyAzMiAzMiAzMkwxMjggMjE1LjUgNy41IDQyNi4zQzIuNiA0MzUgMCA0NDQuNyAwIDQ1NC43IDAgNDg2LjQgMjUuNiA1MTIgNTcuMyA1MTJsMzMzLjQgMGMzMS42IDAgNTcuMy0yNS42IDU3LjMtNTcuMyAwLTEwLTIuNi0xOS44LTcuNS0yOC40TDMyMCAyMTUuNSAzMjAgNjRjMTcuNyAwIDMyLTE0LjMgMzItMzJTMzM3LjcgMCAzMjAgMEwyODggMHpNMTkyIDIxNS41bDAtMTUxLjUgNjQgMCAwIDE1MS41YzAgMTEuMSAyLjkgMjIuMSA4LjQgMzEuOGw0MS42IDcyLjctMTY0IDAgNDEuNi03Mi43YzUuNS05LjcgOC40LTIwLjYgOC40LTMxLjh6Il19LExwcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJhbGlnbi1yaWdodCIsaWNvbjpbNDQ4LDUxMixbXSwiZjAzOCIsIk00NDggNjRjMCAxNy43LTE0LjMgMzItMzIgMzJMMTkyIDk2Yy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDIyNCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMyem0wIDI1NmMwIDE3LjctMTQuMyAzMi0zMiAzMmwtMjI0IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsMjI0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJ6TTAgMTkyYzAtMTcuNyAxNC4zLTMyIDMyLTMybDM4NCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMyTDMyIDIyNGMtMTcuNyAwLTMyLTE0LjMtMzItMzJ6TTQ0OCA0NDhjMCAxNy43LTE0LjMgMzItMzIgMzJMMzIgNDgwYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDM4NCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMyeiJdfSxtX2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2FibGUtY2FyIixpY29uOls1MTIsNTEyLFsxMjg2NzMsNTc1NTEsInRyYW0iXSwiZjdkYSIsIk0yODgtMzJhMzIgMzIgMCAxIDEgMCA2NCAzMiAzMiAwIDEgMSAwLTY0ek0xNjAgMjRhMzIgMzIgMCAxIDEgNjQgMCAzMiAzMiAwIDEgMSAtNjQgMHpNMzIgMjg4YzAtMzUuMyAyOC43LTY0IDY0LTY0bDEzNiAwIDAtOTYuMi0xOTMuNCA1NS4zYy0xMi43IDMuNi0yNi0zLjctMjkuNy0xNi41czMuNy0yNiAxNi41LTI5LjdsMjI0LTY0IDAgMCAyMjQtNjRjMTIuNy0zLjYgMjYgMy43IDI5LjcgMTYuNXMtMy43IDI2LTE2LjUgMjkuN2wtMjA2LjYgNTkgMCAxMDkuOSAxMzYgMGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDE2MGMwIDM1LjMtMjguNyA2NC02NCA2NEw5NiA1MTJjLTM1LjMgMC02NC0yOC43LTY0LTY0bDAtMTYwem04MCAwYy04LjggMC0xNiA3LjItMTYgMTZsMCA2NGMwIDguOCA3LjIgMTYgMTYgMTZsNTYgMCAwLTk2LTU2IDB6bTE4NCA5NmwwLTk2LTgwIDAgMCA5NiA4MCAwem00OCAwbDU2IDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtNjRjMC04LjgtNy4yLTE2LTE2LTE2bC01NiAwIDAgOTZ6Il19LERwcj1tX2UsZ19lPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImtpdC1tZWRpY2FsIixpY29uOls1MTIsNTEyLFsiZmlyc3QtYWlkIl0sImY0NzkiLCJNNjQgNjRDMjguNyA2NCAwIDkyLjcgMCAxMjhMMCAzODRjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMTYgMCAwLTM4NC0xNiAwem02NCAwbDAgMzg0IDI1NiAwIDAtMzg0LTI1NiAwek00NDggNDQ4YzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMjU2YzAtMzUuMy0yOC43LTY0LTY0LTY0bC0xNiAwIDAgMzg0IDE2IDB6TTIyNCAxODRjMC04LjggNy4yLTE2IDE2LTE2bDMyIDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgNDAgNDAgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTQwIDAgMCA0MGMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTQwLTQwIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyYzAtOC44IDcuMi0xNiAxNi0xNmw0MCAwIDAtNDB6Il19LEFwcj1nX2UsRXByPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImdyaXAtbGluZXMiLGljb246WzQ0OCw1MTIsW10sImY3YTQiLCJNMzIgMjg4Yy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDM4NCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMyTDMyIDI4OHptMC0xMjhjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsMzg0IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJMMzIgMTYweiJdfSx4X2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYnVyZ2VyIixpY29uOls1MTIsNTEyLFsiaGFtYnVyZ2VyIl0sImY4MDUiLCJNNDggMzg0Yy04LjggMC0xNiA3LjItMTYgMTYgMCA0NC4yIDM1LjggODAgODAgODBsMjg4IDBjNDQuMiAwIDgwLTM1LjggODAtODAgMC04LjgtNy4yLTE2LTE2LTE2TDQ4IDM4NHpNMzIgMjAyYzAgMTIuMiA5LjkgMjIgMjIgMjJMNDU4IDIyNGMxMi4yIDAgMjItOS45IDIyLTIyIDAtMTcuMi0yLjYtMzQuNC0xMC44LTQ5LjUtMjIuMi00MC44LTgyLjMtMTIwLjUtMjEzLjItMTIwLjVTNjUgMTExLjYgNDIuOCAxNTIuNUMzNC42IDE2Ny42IDMyIDE4NC44IDMyIDIwMnpNMCAzMDRjMCAxNy43IDE0LjMgMzIgMzIgMzJsNDQ4IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJMMzIgMjcyYy0xNy43IDAtMzIgMTQuMy0zMiAzMnpNMjU2IDcyYTI0IDI0IDAgMSAxIDAgNDggMjQgMjQgMCAxIDEgMC00OHpNMTIwIDEyOGEyNCAyNCAwIDEgMSA0OCAwIDI0IDI0IDAgMSAxIC00OCAwem0yNDgtMjRhMjQgMjQgMCAxIDEgMCA0OCAyNCAyNCAwIDEgMSAwLTQ4eiJdfSwkcHI9eF9lLFBwcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzbm93bWFuIixpY29uOls2NDAsNTEyLFs5NzMxLDk5MjRdLCJmN2QwIiwiTTQwMyAyMTEuN2MzMi4yLTI0LjkgNTMtNjMuOSA1My0xMDcuNyAwLTc1LjEtNjAuOS0xMzYtMTM2LTEzNlMxODQgMjguOSAxODQgMTA0YzAgNDMuOSAyMC44IDgyLjkgNTMgMTA3LjctMzIuMiAxNi4zLTU5IDQxLjgtNzYuOCA3My4xTDExMiAyNjQuMiAxMTIgMjI0YzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0bDAgMTkuNi0yMi41LTkuN2MtMTIuMi01LjItMjYuMyAuNC0zMS41IDEyLjZzLjQgMjYuMyAxMi42IDMxLjVjMzYuMSAxNS41IDc1LjkgMzIuNSAxMTkuNCA1MS4yLTMuOSAxNC45LTYgMzAuNi02IDQ2LjcgMCA3MCAzOS4xIDEzMC44IDk2LjYgMTYxLjkgNy45IDQuMyAxNi45IDYuMSAyNS45IDYuMWwxMjMgMGM5IDAgMTgtMS44IDI1LjktNi4xIDU3LjUtMzEuMSA5Ni42LTkyIDk2LjYtMTYxLjkgMC0xNi4yLTIuMS0zMS44LTYtNDYuNyA0My41LTE4LjcgODMuNC0zNS43IDExOS40LTUxLjIgMTIuMi01LjIgMTcuOC0xOS4zIDEyLjYtMzEuNXMtMTkuMy0xNy44LTMxLjUtMTIuNmwtMjIuNSA5LjcgMC0xOS42YzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0bDAgNDAuMi00OC4yIDIwLjZjLTE3LjktMzEuMy00NC42LTU2LjgtNzYuOC03My4xek0yOTYgNDE2YTI0IDI0IDAgMSAxIDQ4IDAgMjQgMjQgMCAxIDEgLTQ4IDB6bTI0LTEyMGEyNCAyNCAwIDEgMSAwIDQ4IDI0IDI0IDAgMSAxIDAtNDh6TTI0OCA4MGEyNCAyNCAwIDEgMSA0OCAwIDI0IDI0IDAgMSAxIC00OCAwek0zNjggNTZhMjQgMjQgMCAxIDEgMCA0OCAyNCAyNCAwIDEgMSAwLTQ4ek0yOTIuMiAxNTkuM2MtMi43LTQuOC00LjItMTAuMi00LjItMTUuNyAwLTE3LjUgMTQuMi0zMS42IDMxLjYtMzEuNmwuOCAwYzE3LjUgMCAzMS42IDE0LjIgMzEuNiAzMS42IDAgNS41LTEuNCAxMC45LTQuMiAxNS43TDMyNyAxOTUuOGMtMy4xIDUuNC0xMC44IDUuNC0xMy45IDBsLTIwLjktMzYuNnoiXX0sSXByPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhvdGVsIixpY29uOls1MTIsNTEyLFsxMjc5NzZdLCJmNTk0IiwiTTE2IDI0QzE2IDEwLjcgMjYuNyAwIDQwIDBMNDcyIDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTggMCAwIDQxNiA4IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRMNDAgNTEyYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0bDggMCAwLTQxNi04IDBDMjYuNyA0OCAxNiAzNy4zIDE2IDI0em0yMDggODhsMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZsMzIgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0zMmMwLTguOC03LjItMTYtMTYtMTZsLTMyIDBjLTguOCAwLTE2IDcuMi0xNiAxNnpNMTI4IDk2Yy04LjggMC0xNiA3LjItMTYgMTZsMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZsMzIgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0zMmMwLTguOC03LjItMTYtMTYtMTZsLTMyIDB6bTk2IDExMmwwIDMyYzAgOC44IDcuMiAxNiAxNiAxNmwzMiAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMGMtOC44IDAtMTYgNy4yLTE2IDE2ek0zNTIgOTZjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDMyYzAgOC44IDcuMiAxNiAxNiAxNmwzMiAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMHpNMTEyIDIwOGwwIDMyYzAgOC44IDcuMiAxNiAxNiAxNmwzMiAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMGMtOC44IDAtMTYgNy4yLTE2IDE2em0yNDAtMTZjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDMyYzAgOC44IDcuMiAxNiAxNiAxNmwzMiAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMHpNMjg4IDM4NGw0My44IDBjOS45IDAgMTcuNS05IDE0LTE4LjItMTMuOC0zNi4xLTQ4LjgtNjEuOC04OS43LTYxLjhzLTc1LjkgMjUuNy04OS43IDYxLjhjLTMuNSA5LjIgNC4xIDE4LjIgMTQgMTguMmw0My44IDAgMCA4MCA2NCAwIDAtODB6Il19LE5wcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwcmludCIsaWNvbjpbNTEyLDUxMixbMTI4NDI0LDEyODQzOCw5MTEzXSwiZjAyZiIsIk02NCA2NEM2NCAyOC43IDkyLjcgMCAxMjggMEwzNDEuNSAwYzE3IDAgMzMuMyA2LjcgNDUuMyAxOC43bDQyLjUgNDIuNWMxMiAxMiAxOC43IDI4LjMgMTguNyA0NS4zbDAgMzcuNS0zODQgMCAwLTgwek0wIDI1NmMwLTM1LjMgMjguNy02NCA2NC02NGwzODQgMGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDk2YzAgMTcuNy0xNC4zIDMyLTMyIDMybC0zMiAwIDAgNjRjMCAzNS4zLTI4LjcgNjQtNjQgNjRsLTI1NiAwYy0zNS4zIDAtNjQtMjguNy02NC02NGwwLTY0LTMyIDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtOTZ6TTEyOCA0MTZsMCAzMiAyNTYgMCAwLTk2LTI1NiAwIDAgNjR6TTQ1NiAyNzJhMjQgMjQgMCAxIDAgLTQ4IDAgMjQgMjQgMCAxIDAgNDggMHoiXX0sYl9lPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InZvbGxleWJhbGwiLGljb246WzUxMiw1MTIsWzEyNzk1Miwidm9sbGV5YmFsbC1iYWxsIl0sImY0NWYiLCJNNTEyIDI1OC45Yy0yMy40IDgtNDcuOCAxMy4xLTcyLjYgMTUuMSA1LjktOTguNi0zMC43LTE5MS4xLTk0LjktMjU4LjMgOTcuOCAzNiAxNjcuNSAxMzAgMTY3LjUgMjQwLjMgMCAxIDAgMS45IDAgMi45em0tNS45IDUyYy01LjIgMjMuNy0xMy42IDQ2LjItMjQuOSA2Ni45LTk0LjcgNTIuMi0yMTQgNTAtMzA4LjQtMTMuNiAyMS43LTMxLjMgNDkuOC01OC45IDgzLjgtODAuNSA3OS41IDQxLjYgMTY4LjUgNDkuMSAyNDkuNSAyNy4xek0yNzkuNyAyNDEuNmMtMy43LTg5LjctNDEuNy0xNzAuNS0xMDEuMy0yMjkuNyAyMi4zLTcuMSA0Ni0xMS4yIDcwLjUtMTEuOSA5Mi41IDU1LjkgMTUwLjMgMTYwLjMgMTQyLjQgMjczLjgtMzgtMy4yLTc1LjktMTMuNy0xMTEuNi0zMi4zek0xMzAuNSAzMi44QzE0OS4xIDQ5LjEgMTY1LjggNjcuNyAxNzkuOSA4OC4yIDkxLjUgMTMyLjMgMjkuNyAyMTAuMyAzLjcgMjk5LjUgMS4zIDI4NS4zIDAgMjcwLjggMCAyNTYgMCAxNjAuMiA1Mi42IDc2LjcgMTMwLjUgMzIuOHptNzMuNCA5N2MxNi4zIDM0LjUgMjYuMSA3Mi42IDI3LjkgMTEyLjgtNzUuOCA0OC0xMjYuOCAxMjEuMy0xNDguMyAyMDIuNS0xNy42LTE2LjEtMzMtMzQuNi00NS41LTU1IDIuMS0xMDguMSA2My43LTIxMC40IDE2NS45LTI2MC4zek0yNTYgNTEyYy00Ny43IDAtOTIuMy0xMy0xMzAuNS0zNS43IDQuOC0yNC4zIDEyLjYtNDggMjMuMi03MC40IDgyLjQgNTQuNCAxODAuOCA2OC45IDI3MSA0Ny00NC40IDM3LTEwMS41IDU5LjItMTYzLjcgNTkuMnoiXX0sRnByPWJfZSxPcHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidHJhZmZpYy1saWdodCIsaWNvbjpbMzIwLDUxMixbMTI4Njc4XSwiZjYzNyIsIk02NC0zMkMyOC43LTMyIDAtMy4zIDAgMzJMMCAzODRjMCA4OC40IDcxLjYgMTYwIDE2MCAxNjBzMTYwLTcxLjYgMTYwLTE2MGwwLTM1MmMwLTM1LjMtMjguNy02NC02NC02NEw2NC0zMnptOTYgMzkyYzMwLjkgMCA1NiAyNS4xIDU2IDU2cy0yNS4xIDU2LTU2IDU2LTU2LTI1LjEtNTYtNTYgMjUuMS01NiA1Ni01NnptNTYtMTA0YTU2IDU2IDAgMSAxIC0xMTIgMCA1NiA1NiAwIDEgMSAxMTIgMHpNMTYwIDE1MmE1NiA1NiAwIDEgMSAwLTExMiA1NiA1NiAwIDEgMSAwIDExMnoiXX0sUnByPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBsYW5lLWNpcmNsZS1jaGVjayIsaWNvbjpbNjQwLDUxMixbXSwiZTU1NSIsIk0yMzIgMjRjMC0zMC45IDI1LjEtNTYgNTYtNTZzNTYgMjUuMSA1NiA1NmwwIDEyNy4zIDc4IDcxLjVjLTY5LjMgMjktMTE4IDk3LjQtMTE4IDE3Ny4yIDAgNDkuMyAxOC42IDk0LjMgNDkuMSAxMjguM0wyODggNTEyIDE3OS45IDUzOWMtMTAuMSAyLjUtMTkuOS01LjEtMTkuOS0xNS41bDAtMTkuOGMwLTQuOSAyLjItOS41IDYtMTIuNWw2Ni01Mi44IDAtOTkuNy0xNjIuOSA1NC4zQzU4LjcgMzk2LjQgNDggMzg4LjcgNDggMzc3LjhsMC00My43YzAtOSAzLjgtMTcuNSAxMC40LTIzLjZMMjMyIDE1MS4zIDIzMiAyNHpNMzUyIDQwMGExNDQgMTQ0IDAgMSAxIDI4OCAwIDE0NCAxNDQgMCAxIDEgLTI4OCAwem0yMDEuNC02MC45Yy03LjEtNS4yLTE3LjItMy42LTIyLjQgMy41bC01MyA3Mi45LTI2LjgtMjYuOGMtNi4yLTYuMi0xNi40LTYuMi0yMi42IDBzLTYuMiAxNi40IDAgMjIuNmw0MCA0MGMzLjMgMy4zIDcuOSA1IDEyLjYgNC42czguOS0yLjggMTEuNy02LjVsNjQtODhjNS4yLTcuMSAzLjYtMTcuMi0zLjUtMjIuM3oiXX0saWxlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InVzZXJzIixpY29uOls2NDAsNTEyLFtdLCJmMGMwIiwiTTMyMCAxNmExMDQgMTA0IDAgMSAxIDAgMjA4IDEwNCAxMDQgMCAxIDEgMC0yMDh6TTk2IDg4YTcyIDcyIDAgMSAxIDAgMTQ0IDcyIDcyIDAgMSAxIDAtMTQ0ek0wIDQxNmMwLTcwLjcgNTcuMy0xMjggMTI4LTEyOCAxMi44IDAgMjUuMiAxLjkgMzYuOSA1LjQtMzIuOSAzNi44LTUyLjkgODUuNC01Mi45IDEzOC42bDAgMTZjMCAxMS40IDIuNCAyMi4yIDYuNyAzMkwzMiA0ODBjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtMzJ6bTUyMS4zIDY0YzQuMy05LjggNi43LTIwLjYgNi43LTMybDAtMTZjMC01My4yLTIwLTEwMS44LTUyLjktMTM4LjYgMTEuNy0zLjUgMjQuMS01LjQgMzYuOS01LjQgNzAuNyAwIDEyOCA1Ny4zIDEyOCAxMjhsMCAzMmMwIDE3LjctMTQuMyAzMi0zMiAzMmwtODYuNyAwek00NzIgMTYwYTcyIDcyIDAgMSAxIDE0NCAwIDcyIDcyIDAgMSAxIC0xNDQgMHpNMTYwIDQzMmMwLTg4LjQgNzEuNi0xNjAgMTYwLTE2MHMxNjAgNzEuNiAxNjAgMTYwbDAgMTZjMCAxNy43LTE0LjMgMzItMzIgMzJsLTI1NiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTE2eiJdfSxCcHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2VydGlmaWNhdGUiLGljb246WzU3Niw1MTIsW10sImYwYTMiLCJNMjM5LjItOGMtNi4xLTYuMi0xNS04LjctMjMuNC02LjRTMjAwLjktNS42IDE5OC44IDIuOEwxODMuNSA2M2MtMS4xIDQuNC01LjYgNy05LjkgNS43TDExMy44IDUxLjljLTguNC0yLjQtMTcuNCAwLTIzLjUgNi4xcy04LjUgMTUuMS02LjEgMjMuNWwxNi45IDU5LjhjMS4yIDQuMy0xLjQgOC44LTUuNyA5LjlMMzUuMSAxNjYuNWMtOC40IDIuMS0xNSA4LjctMTcuMyAxNy4xcy4yIDE3LjMgNi40IDIzLjRsNDQuNSA0My4zYzMuMiAzLjEgMy4yIDguMyAwIDExLjVMMjQuMyAzMDUuMWMtNi4yIDYuMS04LjcgMTUtNi40IDIzLjRzOC45IDE0LjkgMTcuMyAxNy4xbDYwLjIgMTUuM2M0LjQgMS4xIDcgNS42IDUuNyA5LjlMODQuMiA0MzAuNWMtMi40IDguNCAwIDE3LjQgNi4xIDIzLjVzMTUuMSA4LjUgMjMuNSA2LjFsNTkuOC0xNi45YzQuMy0xLjIgOC44IDEuNCA5LjkgNS43bDE1LjMgNjAuMmMyLjEgOC40IDguNyAxNSAxNy4xIDE3LjNzMTcuMy0uMiAyMy40LTYuNGw0My4zLTQ0LjVjMy4xLTMuMiA4LjMtMy4yIDExLjUgMEwzMzcuMyA1MjBjNi4xIDYuMiAxNSA4LjcgMjMuNCA2LjRzMTQuOS04LjkgMTcuMS0xNy4zTDM5My4xIDQ0OWMxLjEtNC40IDUuNi03IDkuOS01LjdsNTkuOCAxNi45YzguNCAyLjQgMTcuNCAwIDIzLjUtNi4xczguNS0xNS4xIDYuMS0yMy41bC0xNi45LTU5LjhjLTEuMi00LjMgMS40LTguOCA1LjctOS45bDYwLjItMTUuM2M4LjQtMi4xIDE1LTguNyAxNy4zLTE3LjFzLS4yLTE3LjQtNi40LTIzLjRsLTQ0LjUtNDMuM2MtMy4yLTMuMS0zLjItOC4zIDAtMTEuNWw0NC41LTQzLjNjNi4yLTYuMSA4LjctMTUgNi40LTIzLjRzLTguOS0xNC45LTE3LjMtMTcuMWwtNjAuMi0xNS4zYy00LjQtMS4xLTctNS42LTUuNy05LjlsMTYuOS01OS44YzIuNC04LjQgMC0xNy40LTYuMS0yMy41cy0xNS4xLTguNS0yMy41LTYuMUw0MDMgNjguOGMtNC4zIDEuMi04LjgtMS40LTkuOS01LjdMMzc3LjggMi44Yy0yLjEtOC40LTguNy0xNS0xNy4xLTE3LjNzLTE3LjMgLjItMjMuNCA2LjRMMjk0IDM2LjVjLTMuMSAzLjItOC4zIDMuMi0xMS41IDBMMjM5LjItOHoiXX0sSHByPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFsYXJtLWNsb2NrIixpY29uOls1MTIsNTEyLFs5MjAwXSwiZjM0ZSIsIk01MDQuNCAxMzIuNWMtNC41IDEwLjUtMTguNCA5LjgtMjQuOSAuNC0yNy44LTQwLTY2LjEtNzIuMi0xMTEtOTIuNi0xMC40LTQuNy0xMy43LTE4LjMtNC4xLTI0LjYgMTUtOS45IDMzLTE1LjcgNTIuMy0xNS43IDUyLjYgMCA5NS4yIDQyLjYgOTUuMiA5NS4yIDAgMTMuMi0yLjcgMjUuOC03LjYgMzcuM3ptLTQ3MS45IC40Yy02LjUgOS40LTIwLjUgMTAuMS0yNC45LS40LTQuOS0xMS41LTcuNi0yNC4xLTcuNi0zNy4zIDAtNTIuNiA0Mi42LTk1LjIgOTUuMi05NS4yIDE5LjMgMCAzNy4zIDUuOCA1Mi4zIDE1LjcgOS42IDYuMyA2LjMgMTkuOS00LjEgMjQuNi00NC44IDIwLjQtODMuMSA1Mi42LTExMSA5Mi42ek0zOTAuMiA0NjcuNEMzNTIuOCA0OTUuNCAzMDYuMyA1MTIgMjU2IDUxMnMtOTYuOC0xNi42LTEzNC4xLTQ0LjZMODYuNiA1MDIuNmMtMTIuNSAxMi41LTMyLjggMTIuNS00NS4zIDBzLTEyLjUtMzIuOCAwLTQ1LjNsMzUuMi0zNS4yQzQ4LjYgMzg0LjggMzIgMzM4LjMgMzIgMjg4IDMyIDE2NC4zIDEzMi4zIDY0IDI1NiA2NFM0ODAgMTY0LjMgNDgwIDI4OGMwIDUwLjMtMTYuNiA5Ni44LTQ0LjYgMTM0LjJsMzUuMiAzNS4yYzEyLjUgMTIuNSAxMi41IDMyLjggMCA0NS4zcy0zMi44IDEyLjUtNDUuMyAwbC0zNS4yLTM1LjJ6TTI4MCAxODRjMC0xMy4zLTEwLjctMjQtMjQtMjRzLTI0IDEwLjctMjQgMjRsMCAxMDRjMCA2LjQgMi41IDEyLjUgNyAxN2w1NiA1NmM5LjQgOS40IDI0LjYgOS40IDMzLjkgMHM5LjQtMjQuNiAwLTMzLjlsLTQ5LTQ5IDAtOTQuMXoiXX0scXByPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhlbGljb3B0ZXItc3ltYm9sIixpY29uOls1MTIsNTEyLFtdLCJlNTAyIiwiTTQ0NS40IDIyNGw2NC43IDBDNDk1LjYgMTA4LjIgNDAzLjggMTYuNCAyODggMmwwIDY0LjdDMzY4LjQgODAuMSA0MzEuOSAxNDMuNiA0NDUuNCAyMjR6TTUxMCAyODhsLTY0LjcgMEM0MzEuOSAzNjguNCAzNjguNCA0MzEuOSAyODggNDQ1LjNsMCA2NC43YzExNS44LTE0LjQgMjA3LjYtMTA2LjIgMjIyLTIyMnpNMiAyODhDMTYuNCA0MDMuOCAxMDguMiA0OTUuNiAyMjQgNTEwbDAtNjQuN0MxNDMuNiA0MzEuOSA4MC4yIDM2OC40IDY2LjcgMjg4TDIgMjg4em0wLTY0bDY0LjcgMEM4MC4yIDE0My42IDE0My42IDgwLjEgMjI0IDY2LjdMMjI0IDJDMTA4LjIgMTYuNCAxNi40IDEwOC4yIDIgMjI0em0yMDYtNjRjMC0xNy43LTE0LjMtMzItMzItMzJzLTMyIDE0LjMtMzIgMzJsMCAxOTJjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTY0IDk2IDAgMCA2NGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMTkyYzAtMTcuNy0xNC4zLTMyLTMyLTMycy0zMiAxNC4zLTMyIDMybDAgNjQtOTYgMCAwLTY0eiJdfSx2X2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaG91c2UtY2hpbW5leS1jcmFjayIsaWNvbjpbNTEyLDUxMixbImhvdXNlLWRhbWFnZSJdLCJmNmYxIiwiTTIzNC4yIDguNmMxMi4zLTExLjQgMzEuMy0xMS40IDQzLjUgMEwzNjggOTIuMyAzNjggODBjMC0xNy43IDE0LjMtMzIgMzItMzJsMzIgMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDEwMS41IDM3LjggMzUuMWM5LjYgOSAxMi44IDIyLjkgOCAzNS4xUzQ5My4yIDI3MiA0ODAgMjcybC0xNiAwIDAgMTc2YzAgMzUuMy0yOC43IDY0LTY0IDY0bC0xMDUuNiAwLTM4LjQtNjQgODAuOC02Ny4zYzcuOC02LjUgNy42LTE4LjYtLjQtMjQuOUwyMTguNiAyNjMuMmMtMTQuNi0xMS41LTMzLjggNy0yMi44IDIyTDI1NiAzNjggMTcwLjUgNDM5LjJjLTYuMSA1LTcuNSAxMy44LTMuNSAyMC41bDMxLjMgNTIuMi04Ni40IDBjLTM1LjMgMC02NC0yOC43LTY0LTY0bDAtMTc2LTE2IDBjLTEzLjIgMC0yNS04LjEtMjkuOC0yMC4zcy0xLjYtMjYuMiA4LTM1LjFsMjI0LTIwOHoiXX0sanByPXZfZSxWcHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGVyc29uLW1pbGl0YXJ5LXBvaW50aW5nIixpY29uOls1MTIsNTEyLFtdLCJlNTRhIiwiTTIxNC45IDE0LjFDMjAyIDE1LjIgMTkyIDI2IDE5MiAzOSAxOTIgNTIuOCAyMDMuMiA2NCAyMTcgNjRsMTUxIDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMzAuNkMzODQgOCAzNzYgLjcgMzY2LjcgMS40TDIxNC45IDE0LjF6TTIwOCAxMTJjMCA0NC4yIDM1LjggODAgODAgODBzODAtMzUuOCA4MC04MGMwLTUuNS0uNi0xMC44LTEuNi0xNkwyMDkuNiA5NmMtMSA1LjItMS42IDEwLjUtMS42IDE2ek00MCAyMjRjLTIyLjEgMC00MCAxNy45LTQwIDQwczE3LjkgNDAgNDAgNDBsMTUyIDAgMCA4OS40IDE2Mi44LTE2Mi44Yy0xMy4zLTQuMy0yNy4zLTYuNS00MS42LTYuNUw0MCAyMjR6bTM0NS43IDIwLjlsLTE3MS4xIDE3MS4xIDE2OS40IDAgMC00Ni4zIDUzLjYgOTAuNmMxMS4yIDE5IDM1LjggMjUuMyA1NC44IDE0LjFzMjUuMy0zNS44IDE0LjEtNTQuOEw0MzAuMyAyOTAuOGMtMTEuMi0xOS0yNi42LTM0LjUtNDQuNi00NS45ek0xOTIgNDQ4bDAgMzJjMCAxNy43IDE0LjMgMzIgMzIgMzJsMTI4IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJsMC0zMi0xOTIgMHoiXX0sVXByPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImRhdGFiYXNlIixpY29uOls0NDgsNTEyLFtdLCJmMWMwIiwiTTQ0OCAyMDUuOGMtMTQuOCA5LjgtMzEuOCAxNy43LTQ5LjUgMjQtNDcgMTYuOC0xMDguNyAyNi4yLTE3NC41IDI2LjJTOTYuNCAyNDYuNSA0OS41IDIyOS44Yy0xNy42LTYuMy0zNC43LTE0LjItNDkuNS0yNEwwIDI4OGMwIDQ0LjIgMTAwLjMgODAgMjI0IDgwczIyNC0zNS44IDIyNC04MGwwLTgyLjJ6bTAtNzcuOGwwLTQ4QzQ0OCAzNS44IDM0Ny43IDAgMjI0IDBTMCAzNS44IDAgODBsMCA0OGMwIDQ0LjIgMTAwLjMgODAgMjI0IDgwczIyNC0zNS44IDIyNC04MHpNMzk4LjUgMzg5LjhDMzUxLjYgNDA2LjUgMjg5LjkgNDE2IDIyNCA0MTZTOTYuNCA0MDYuNSA0OS41IDM4OS44Yy0xNy42LTYuMy0zNC43LTE0LjItNDkuNS0yNEwwIDQzMmMwIDQ0LjIgMTAwLjMgODAgMjI0IDgwczIyNC0zNS44IDIyNC04MGwwLTY2LjJjLTE0LjggOS44LTMxLjggMTcuNy00OS41IDI0eiJdfSxXcHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibmV3c3BhcGVyIixpY29uOls1MTIsNTEyLFsxMjgyNDBdLCJmMWVhIiwiTTAgNDE2TDAgMTIwYzAtMTMuMyAxMC43LTI0IDI0LTI0czI0IDEwLjcgMjQgMjRsMCAyODhjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNEw5NiA5NmMwLTM1LjMgMjguNy02NCA2NC02NGwyODggMGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDMyMGMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA0ODBjLTM1LjMgMC02NC0yOC43LTY0LTY0ek0xNjAgMTI4bDAgNjRjMCAxNy43IDE0LjMgMzIgMzIgMzJsNjQgMGMxNy43IDAgMzItMTQuMyAzMi0zMmwwLTY0YzAtMTcuNy0xNC4zLTMyLTMyLTMybC02NCAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnptMjQgMjQwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDI0MCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC0yNDAgMHptLTI0LTcyYzAgMTMuMyAxMC43IDI0IDI0IDI0bDI0MCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC0yNDAgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjR6TTM2MCAxNzZjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsNjQgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtNjQgMHoiXX0sR3ByPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNsb3VkLXJhaW4iLGljb246WzUxMiw1MTIsWzEyNzc4Myw5OTI2XSwiZjczZCIsIk05NiAzMjBjLTUzIDAtOTYtNDMtOTYtOTYgMC00Mi41IDI3LjYtNzguNiA2NS45LTkxLjItMS4zLTYuNy0xLjktMTMuNy0xLjktMjAuOCAwLTYxLjkgNTAuMS0xMTIgMTEyLTExMiA0My4xIDAgODAuNSAyNC4zIDk5LjIgNjAgMTQuNy0xNy4xIDM2LjUtMjggNjAuOC0yOCA0NC4yIDAgODAgMzUuOCA4MCA4MCAwIDUuNS0uNiAxMC44LTEuNiAxNiAuNSAwIDEuMSAwIDEuNiAwIDUzIDAgOTYgNDMgOTYgOTZzLTQzIDk2LTk2IDk2TDk2IDMyMHptMS42IDY4LjJjMS4xLTIuNSAzLjYtNC4yIDYuNC00LjJzNS4zIDEuNiA2LjQgNC4ybDMwLjIgNjguMmMyLjIgNS4xIDMuNCAxMC41IDMuNCAxNiAwIDIxLjktMTguMSAzOS42LTQwIDM5LjZzLTQwLTE3LjctNDAtMzkuNmMwLTUuNSAxLjItMTEgMy40LTE2bDMwLjItNjguMnptMTUyIDBjMS4xLTIuNSAzLjYtNC4yIDYuNC00LjJzNS4zIDEuNiA2LjQgNC4ybDMwLjIgNjguMmMyLjIgNS4xIDMuNCAxMC41IDMuNCAxNiAwIDIxLjktMTguMSAzOS42LTQwIDM5LjZzLTQwLTE3LjctNDAtMzkuNmMwLTUuNSAxLjItMTEgMy40LTE2bDMwLjItNjguMnptMTIxLjggNjguMmwzMC4yLTY4LjJjMS4xLTIuNSAzLjYtNC4yIDYuNC00LjJzNS4zIDEuNiA2LjQgNC4ybDMwLjIgNjguMmMyLjIgNS4xIDMuNCAxMC41IDMuNCAxNiAwIDIxLjktMTguMSAzOS42LTQwIDM5LjZzLTQwLTE3LjctNDAtMzkuNmMwLTUuNSAxLjItMTEgMy40LTE2eiJdfSx5X2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibWF4aW1pemUiLGljb246WzQ0OCw1MTIsWyJleHBhbmQtYXJyb3dzLWFsdCJdLCJmMzFlIiwiTTE2OCAzMkwyNCAzMkMxMC43IDMyIDAgNDIuNyAwIDU2TDAgMjAwYzAgOS43IDUuOCAxOC41IDE0LjggMjIuMlMzNC4xIDIyMy44IDQxIDIxN2w0MC00MCA3OSA3OS03OSA3OS00MC00MGMtNi45LTYuOS0xNy4yLTguOS0yNi4yLTUuMlMwIDMwMi4zIDAgMzEyTDAgNDU2YzAgMTMuMyAxMC43IDI0IDI0IDI0bDE0NCAwYzkuNyAwIDE4LjUtNS44IDIyLjItMTQuOHMxLjctMTkuMy01LjItMjYuMmwtNDAtNDAgNzktNzkgNzkgNzktNDAgNDBjLTYuOSA2LjktOC45IDE3LjItNS4yIDI2LjJTMjcwLjMgNDgwIDI4MCA0ODBsMTQ0IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRsMC0xNDRjMC05LjctNS44LTE4LjUtMTQuOC0yMi4ycy0xOS4zLTEuNy0yNi4yIDUuMmwtNDAgNDAtNzktNzkgNzktNzkgNDAgNDBjNi45IDYuOSAxNy4yIDguOSAyNi4yIDUuMlM0NDggMjA5LjcgNDQ4IDIwMGwwLTE0NGMwLTEzLjMtMTAuNy0yNC0yNC0yNEwyODAgMzJjLTkuNyAwLTE4LjUgNS44LTIyLjIgMTQuOFMyNTYuMiA2Ni4xIDI2MyA3M2w0MCA0MC03OSA3OS03OS03OSA0MC00MGM2LjktNi45IDguOS0xNy4yIDUuMi0yNi4yUzE3Ny43IDMyIDE2OCAzMnoiXX0sWXByPXlfZSxacHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibG9jYXRpb24tYXJyb3ciLGljb246WzUxMiw1MTIsW10sImYxMjQiLCJNNDc3LjkgNzUuNWM0LjUtMTEuOCAxLjctMjUuMi03LjItMzQuMXMtMjIuMy0xMS44LTM0LjEtNy4ybC00MTYgMTYwQzcuOSAxOTktLjMgMjExLjIgMCAyMjQuN3M5LjEgMjUuNCAyMS45IDI5LjZsMTc2LjggNTguOSA1OC45IDE3Ni44YzQuMyAxMi44IDE2LjEgMjEuNiAyOS42IDIxLjlzMjUuNy03LjkgMzAuNi0yMC41bDE2MC00MTZ6Il19LFhwcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjaXR5IixpY29uOls1NzYsNTEyLFsxMjc5NjFdLCJmNjRmIiwiTTMyMCAwYy0zNS4zIDAtNjQgMjguNy02NCA2NGwwIDMyLTQ4IDAgMC03MmMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGwwIDcyLTY0IDAgMC03MkM5NiAxMC43IDg1LjMgMCA3MiAwUzQ4IDEwLjcgNDggMjRsMCA3NGMtMjcuNiA3LjEtNDggMzIuMi00OCA2MkwwIDQ0OGMwIDM1LjMgMjguNyA2NCA2NCA2NGw0NDggMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTE5MmMwLTM1LjMtMjguNy02NC02NC02NGwtNjQgMCAwLTEyOGMwLTM1LjMtMjguNy02NC02NC02NEwzMjAgMHptNjQgMTEybDAgMzJjMCA4LjgtNy4yIDE2LTE2IDE2bC0zMiAwYy04LjggMC0xNi03LjItMTYtMTZsMC0zMmMwLTguOCA3LjItMTYgMTYtMTZsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZ6bS0xNiA4MGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyYzAtOC44IDcuMi0xNiAxNi0xNmwzMiAwem0xNiAxMTJsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyYzAtOC44IDcuMi0xNiAxNi0xNmwzMiAwYzguOCAwIDE2IDcuMiAxNiAxNnptMTEyLTE2YzguOCAwIDE2IDcuMiAxNiAxNmwwIDMyYzAgOC44LTcuMiAxNi0xNiAxNmwtMzIgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMzJjMC04LjggNy4yLTE2IDE2LTE2bDMyIDB6TTI1NiAzMDRsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyYzAtOC44IDcuMi0xNiAxNi0xNmwzMiAwYzguOCAwIDE2IDcuMiAxNiAxNnpNMjQwIDE5MmM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyYzAtOC44IDcuMi0xNiAxNi0xNmwzMiAwek0xMjggMzA0bDAgMzJjMCA4LjgtNy4yIDE2LTE2IDE2bC0zMiAwYy04LjggMC0xNi03LjItMTYtMTZsMC0zMmMwLTguOCA3LjItMTYgMTYtMTZsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZ6TTExMiAxOTJjOC44IDAgMTYgNy4yIDE2IDE2bDAgMzJjMCA4LjgtNy4yIDE2LTE2IDE2bC0zMiAwYy04LjggMC0xNi03LjItMTYtMTZsMC0zMmMwLTguOCA3LjItMTYgMTYtMTZsMzIgMHoiXX0sUXByPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6IngtcmF5IixpY29uOls1MTIsNTEyLFtdLCJmNDk3IiwiTTAgNjRDMCA0Ni4zIDE0LjMgMzIgMzIgMzJsNDQ4IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsMCAzMjBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJMMzIgNDgwYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMyTDMyIDk2QzE0LjMgOTYgMCA4MS43IDAgNjR6bTI4MCA1NmMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGwwIDE2LTY0IDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsNjQgMCAwIDQ4LTgwIDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsODAgMCAwIDQ4LTY0IDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsNjQgMCAwIDE2YzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC0xNiA2NCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC02NCAwIDAtNDggODAgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtODAgMCAwLTQ4IDY0IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTY0IDAgMC0xNnoiXX0sS3ByPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InVtYnJlbGxhLWJlYWNoIixpY29uOls1MTIsNTEyLFsxMjc5NThdLCJmNWNhIiwiTTQ5Ny41IDM0MS4xYy01LjkgMTYuNy0yNS4zIDIzLTQxLjEgMTUuMWwtMTc4LjItODkuMS0xLjYgMy4yLTg4LjggMTc3LjcgMjkyLjIgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMkwzMiA1MTJjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsODQuMiAwIDEwMy4yLTIwNi4zIDEuNi0zLjItMTY1LjQtODIuN2MtMTUuOC03LjktMjIuNC0yNy4zLTEyLjUtNDIgNDUuOS02OC42IDEyNC4xLTExMy44IDIxMi45LTExMy44IDE0MS40IDAgMjU2IDExNC42IDI1NiAyNTYgMCAyOS44LTUuMSA1OC41LTE0LjUgODUuMXoiXX0sd19lPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFycm93LXJpZ2h0LXRvLWJyYWNrZXQiLGljb246WzUxMiw1MTIsWyJzaWduLWluIl0sImYwOTAiLCJNMzUyIDk2bDY0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCAyNTZjMCAxNy43LTE0LjMgMzItMzIgMzJsLTY0IDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsNjQgMGM1MyAwIDk2LTQzIDk2LTk2bDAtMjU2YzAtNTMtNDMtOTYtOTYtOTZsLTY0IDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJ6bS05LjQgMTgyLjZjMTIuNS0xMi41IDEyLjUtMzIuOCAwLTQ1LjNsLTEyOC0xMjhjLTEyLjUtMTIuNS0zMi44LTEyLjUtNDUuMyAwcy0xMi41IDMyLjggMCA0NS4zTDI0Mi43IDIyNCAzMiAyMjRjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsMjEwLjcgMC03My40IDczLjRjLTEyLjUgMTIuNS0xMi41IDMyLjggMCA0NS4zczMyLjggMTIuNSA0NS4zIDBsMTI4LTEyOHoiXX0sSnByPXdfZSxlOHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaGVhZHNldCIsaWNvbjpbNDQ4LDUxMixbXSwiZjU5MCIsIk0yMjQgNjRjLTc5IDAtMTQ0LjcgNTcuMy0xNTcuNyAxMzIuNyA5LjMtMyAxOS4zLTQuNyAyOS43LTQuN2wxNiAwYzI2LjUgMCA0OCAyMS41IDQ4IDQ4bDAgOTZjMCAyNi41LTIxLjUgNDgtNDggNDhsLTE2IDBjLTUzIDAtOTYtNDMtOTYtOTZsMC02NEMwIDEwMC4zIDEwMC4zIDAgMjI0IDBTNDQ4IDEwMC4zIDQ0OCAyMjRsMCAxNjguMWMwIDY2LjMtNTMuOCAxMjAtMTIwLjEgMTIwbC04Ny45LS4xLTMyIDBjLTI2LjUgMC00OC0yMS41LTQ4LTQ4czIxLjUtNDggNDgtNDhsMzIgMGMyNi41IDAgNDggMjEuNSA0OCA0OGwwIDAgNDAgMGMzOS44IDAgNzItMzIuMiA3Mi03MmwwLTIwLjljLTE0LjEgOC4yLTMwLjUgMTIuOC00OCAxMi44bC0xNiAwYy0yNi41IDAtNDgtMjEuNS00OC00OGwwLTk2YzAtMjYuNSAyMS41LTQ4IDQ4LTQ4bDE2IDBjMTAuNCAwIDIwLjMgMS42IDI5LjcgNC43LTEzLTc1LjMtNzguNi0xMzIuNy0xNTcuNy0xMzIuN3oiXX0sdDhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNwbG90Y2giLGljb246WzUxMiw1MTIsW10sImY1YmMiLCJNMjA4LjUgNjIuM2wyOC4xLTM2LjlDMjQ4LjggOS40IDI2Ny44IDAgMjg4IDAgMzE2LjUgMCAzNDEuNiAxOC43IDM0OS44IDQ2bDE3LjggNTkuNGMxMC4zIDM0LjQgMzYuMSA2MiA2OS44IDc0LjZsMzkuOCAxNC45YzIwLjkgNy45IDM0LjggMjcuOSAzNC44IDUwLjIgMCAxNi45LTcuOSAzMi44LTIxLjUgNDIuOWwtNjcuMyA1MC41Yy0yNC4zIDE4LjItMzcuMiA0Ny45LTMzLjggNzguMWwyLjUgMjIuN2M0LjMgMzguNy0yNiA3Mi42LTY1IDcyLjYtMTQuOCAwLTI5LjMtNS4xLTQwLjktMTQuM2wtNTUuMy00NC4zYy00LjUtMy42LTkuMy02LjctMTQuNS05LjItMTUuOC03LjktMzMuNy0xMC40LTUxLTcuM0w4Mi40IDQ1MS45Yy0zNC42IDYuMy02Ni40LTIwLjMtNjYuNC01NS40IDAtMTMuMiA0LjctMjYgMTMuMS0zNi4ybDExLjItMTMuNGMxNC42LTE3LjQgMjIuNi0zOS40IDIyLjYtNjIuMSAwLTE4LjgtNS41LTM3LjItMTUuOC01M0w4LjggMTczLjVDMy4xIDE2NC43IDAgMTU0LjQgMCAxNDMuOSAwIDExMC41IDMwLjEgODUuMSA2MyA5MC43bDUxLjMgOC43YzM1LjkgNi4xIDcyLjItOC4yIDk0LjItMzcuMXoiXX0sTV9lPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InVwLWxvbmciLGljb246WzMyMCw1MTIsWyJsb25nLWFycm93LWFsdC11cCJdLCJmMzBjIiwiTTEzNy40LTIyLjZjMTIuNS0xMi41IDMyLjgtMTIuNSA0NS4zIDBsMTI4IDEyOGM5LjIgOS4yIDExLjkgMjIuOSA2LjkgMzQuOVMzMDAuOSAxNjAgMjg4IDE2MGwtNjQgMCAwIDMzNmMwIDI2LjUtMjEuNSA0OC00OCA0OGwtMzIgMGMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhsMC0zMzYtNjQgMGMtMTIuOSAwLTI0LjYtNy44LTI5LjYtMTkuOFMuMiAxMTQuNSA5LjQgMTA1LjRsMTI4LTEyOHoiXX0scjhyPU1fZSxhOHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaGV4YWdvbi1ub2RlcyIsaWNvbjpbNDQ4LDUxMixbXSwiZTY5OSIsIk0yNDggMTA2LjZjMTguOS05IDMyLTI4LjMgMzItNTAuNmMwLTMwLjktMjUuMS01Ni01Ni01NnMtNTYgMjUuMS01NiA1NmMwIDIyLjMgMTMuMSA0MS42IDMyIDUwLjZsMCA5OC44Yy0yLjggMS4zLTUuNSAyLjktOCA0LjdsLTgwLjEtNDUuOGMxLjYtMjAuOC04LjYtNDEuNi0yNy45LTUyLjhDNTcuMiA5NiAyMyAxMDUuMiA3LjUgMTMyUzEuMiAxOTMgMjggMjA4LjVjMS4zIC44IDIuNiAxLjUgNCAyLjFsMCA5MC44Yy0xLjMgLjYtMi43IDEuMy00IDIuMUMxLjIgMzE5LTggMzUzLjIgNy41IDM4MFM1Ny4yIDQxNiA4NCA0MDAuNWMxOS4zLTExLjEgMjkuNC0zMiAyNy44LTUyLjhsNTAuNS0yOC45Yy0xMS41LTExLjItMTkuOS0yNS42LTIzLjgtNDEuN0w4OCAzMDYuMWMtMi42LTEuOC01LjItMy4zLTgtNC43bDAtOTAuOGMyLjgtMS4zIDUuNS0yLjkgOC00LjdsODAuMSA0NS44Yy0uMSAxLjQtLjIgMi44LS4yIDQuM2MwIDIyLjMgMTMuMSA0MS42IDMyIDUwLjZsMCA5OC44Yy0xOC45IDktMzIgMjguMy0zMiA1MC42YzAgMzAuOSAyNS4xIDU2IDU2IDU2czU2LTI1LjEgNTYtNTZjMC0yMi4zLTEzLjEtNDEuNi0zMi01MC42bDAtOTguOGMyLjgtMS4zIDUuNS0yLjkgOC00LjdsODAuMSA0NS44Yy0xLjYgMjAuOCA4LjYgNDEuNiAyNy44IDUyLjhjMjYuOCAxNS41IDYxIDYuMyA3Ni41LTIwLjVzNi4zLTYxLTIwLjUtNzYuNWMtMS4zLS44LTIuNy0xLjUtNC0yLjFsMC05MC44YzEuNC0uNiAyLjctMS4zIDQtMi4xYzI2LjgtMTUuNSAzNi00OS43IDIwLjUtNzYuNVMzOTAuOCA5NiAzNjQgMTExLjVjLTE5LjMgMTEuMS0yOS40IDMyLTI3LjggNTIuOGwtNTAuNiAyOC45YzExLjUgMTEuMiAxOS45IDI1LjYgMjMuOCA0MS43TDM2MCAyMDUuOWMyLjYgMS44IDUuMiAzLjMgOCA0LjdsMCA5MC44Yy0yLjggMS4zLTUuNSAyLjktOCA0LjZsLTgwLjEtNDUuOGMuMS0xLjQgLjItMi44IC4yLTQuM2MwLTIyLjMtMTMuMS00MS42LTMyLTUwLjZsMC05OC44eiJdfSx1MmU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaG9zcGl0YWwiLGljb246WzU3Niw1MTIsWzEyNzk3Myw2MjU4OSwiaG9zcGl0YWwtYWx0IiwiaG9zcGl0YWwtd2lkZSJdLCJmMGY4IiwiTTEyOCA2NGMwLTM1LjMgMjguNy02NCA2NC02NEwzODQgMGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDY0IDY0IDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAyNTZjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNTEyYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDE5MmMwLTM1LjMgMjguNy02NCA2NC02NGw2NCAwIDAtNjR6TTI3MiAzNTJjLTE3LjcgMC0zMiAxNC4zLTMyIDMybDAgODAgOTYgMCAwLTgwYzAtMTcuNy0xNC4zLTMyLTMyLTMybC0zMiAwek0xMjggMzY4bDAtMzJjMC04LjgtNy4yLTE2LTE2LTE2bC0zMiAwYy04LjggMC0xNiA3LjItMTYgMTZsMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZsMzIgMGM4LjggMCAxNi03LjIgMTYtMTZ6TTExMiAyNTZjOC44IDAgMTYtNy4yIDE2LTE2bDAtMzJjMC04LjgtNy4yLTE2LTE2LTE2bC0zMiAwYy04LjggMC0xNiA3LjItMTYgMTZsMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZsMzIgMHpNNTEyIDM2OGwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDBjOC44IDAgMTYtNy4yIDE2LTE2ek00OTYgMjU2YzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDB6TTI2NCAxMDRsMCAzMi0zMiAwYy04LjggMC0xNiA3LjItMTYgMTZsMCAxNmMwIDguOCA3LjIgMTYgMTYgMTZsMzIgMCAwIDMyYzAgOC44IDcuMiAxNiAxNiAxNmwxNiAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyIDMyIDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMTZjMC04LjgtNy4yLTE2LTE2LTE2bC0zMiAwIDAtMzJjMC04LjgtNy4yLTE2LTE2LTE2bC0xNiAwYy04LjggMC0xNiA3LjItMTYgMTZ6Il19LGk4cj11MmUsbzhyPXUyZSxuOHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGVyc29uLWhhcmFzc2luZyIsaWNvbjpbNTc2LDUxMixbXSwiZTU0OSIsIk0xOTIgOTZhNDggNDggMCAxIDAgMC05NiA0OCA0OCAwIDEgMCAwIDk2ek01OS40IDMwNC41TDg4IDI1Ni45IDg4IDQ4MGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMTI4IDE2IDAgMCAxMjhjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTI0NC43IDQ3LjQgNTcuMWMxMS4zIDEzLjYgMzEuNSAxNS41IDQ1LjEgNC4yczE1LjUtMzEuNSA0LjItNDUuMWwtNzMuNy04OC45Yy0xOC4yLTIyLTQ1LjMtMzQuNy03My45LTM0LjdsLTM1LjkgMGMtMzMuNyAwLTY0LjkgMTcuNy04Mi4zIDQ2LjZsLTU4LjMgOTdjLTkuMSAxNS4xLTQuMiAzNC44IDEwLjkgNDMuOXMzNC44IDQuMiA0My45LTEwLjl6TTQ4MCAyNDBhNDggNDggMCAxIDAgLTk2IDAgNDggNDggMCAxIDAgOTYgMHpNNDY0IDM0NGwwIDU4LjctNDEuNC00MS40Yy03LjMtNy4zLTE3LjYtMTAuNi0yNy44LTlzLTE4LjkgOC4xLTIzLjUgMTcuM2wtNDggOTZjLTcuOSAxNS44LTEuNSAzNSAxNC4zIDQyLjlzMzUgMS41IDQyLjktMTQuM2wyOC4xLTU2LjMgNTQuNyA1NC43YzEyLjQgMTIuNCAyOS4xIDE5LjMgNDYuNiAxOS4zIDM2LjQgMCA2NS45LTI5LjUgNjUuOS02NS45TDU3NiAzNDRjMC0zMC45LTI1LjEtNTYtNTYtNTZzLTU2IDI1LjEtNTYgNTZ6TTI4OCA0OGMwIDguOCA3LjIgMTYgMTYgMTZsNTYgMGM4LjggMCAxNi03LjIgMTYtMTZzLTcuMi0xNi0xNi0xNmwtNTYgMGMtOC44IDAtMTYgNy4yLTE2IDE2em0tLjggNDkuN2MtNy45LTQtMTcuNS0uNy0yMS41IDcuMnMtLjcgMTcuNSA3LjIgMjEuNWw0OCAyNGM3LjkgNCAxNy41IC43IDIxLjUtNy4ycy43LTE3LjUtNy4yLTIxLjVsLTQ4LTI0eiJdfSxzOHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibW9uZXktYmlsbC10cmVuZC11cCIsaWNvbjpbNTEyLDUxMixbXSwiZTUyOSIsIk00ODAgOGMwLTEzLjMtMTAuNy0yNC0yNC0yNEwzNTQuMi0xNmMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGw0My45IDAtMTExLjMgMTExLjMtOTUuMS04MS41Yy05LTcuNy0yMi4yLTcuNy0zMS4yIDBsLTExMiA5NmMtMTAuMSA4LjYtMTEuMiAyMy44LTIuNiAzMy44czIzLjggMTEuMiAzMy44IDIuNmw5Ni40LTgyLjYgOTYuNCA4Mi42YzkuNSA4LjIgMjMuNyA3LjYgMzIuNi0xLjNsMTI3LTEyNyAwIDQzLjljMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNEw0ODAgOHpNNDggMjU2Yy0yNi41IDAtNDggMjEuNS00OCA0OEwwIDQ2NGMwIDI2LjUgMjEuNSA0OCA0OCA0OGw0MTYgMGMyNi41IDAgNDgtMjEuNSA0OC00OGwwLTE2MGMwLTI2LjUtMjEuNS00OC00OC00OEw0OCAyNTZ6bTQ3LjMgNTZjLTMuNCAyMC4xLTE5LjIgMzYtMzkuNCAzOS40LTQuNCAuNy04LTIuOS04LTcuM2wwLTMyYzAtNC40IDMuNi04IDgtOGwzMiAwYzQuNCAwIDguMSAzLjYgNy4zIDh6bTAgMTQ0LjFjLjcgNC40LTIuOSA4LTcuMyA4bC0zMiAwYy00LjQgMC04LTMuNi04LThsMC0zMmMwLTQuNCAzLjYtOC4xIDgtNy4zIDIwLjEgMy40IDM2IDE5LjIgMzkuNCAzOS40ek00NTYgNDE2LjdjNC40LS43IDggMi45IDggNy4zbDAgMzJjMCA0LjQtMy42IDgtOCA4bC0zMiAwYy00LjQgMC04LjEtMy42LTcuMy04IDMuNC0yMC4xIDE5LjItMzYgMzkuNC0zOS40ek00MTYuNyAzMTJjLS43LTQuNCAyLjktOCA3LjMtOGwzMiAwYzQuNCAwIDggMy42IDggOGwwIDMyYzAgNC40LTMuNiA4LjEtOCA3LjMtMjAuMS0zLjQtMzYtMTkuMi0zOS40LTM5LjR6TTE5MiAzODRhNjQgNjQgMCAxIDEgMTI4IDAgNjQgNjQgMCAxIDEgLTEyOCAweiJdfSxrX2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGVuLXJ1bGVyIixpY29uOls1MTIsNTEyLFsicGVuY2lsLXJ1bGVyIl0sImY1YWUiLCJNNDA0IDBjMTkuMiAwIDM3LjYgNy42IDUxLjEgMjEuMmwzNS43IDM1LjdDNTA0LjQgNzAuNCA1MTIgODguOCA1MTIgMTA4cy03LjYgMzcuNi0yMS4yIDUxLjFMNDQ1LjkgMjA0IDMwOCA2Ni4xIDM1Mi45IDIxLjJDMzY2LjQgNy42IDM4NC44IDAgNDA0IDB6TTU4LjkgMzE1LjFMMjc0LjEgMTAwIDQxMiAyMzcuOSAxOTYuOSA0NTMuMWMtMTAuNyAxMC43LTI0LjEgMTguNS0zOC43IDIyLjZMMzAuNCA1MTEuMWMtOC4zIDIuMy0xNy4zIDAtMjMuNC02LjJzLTguNS0xNS4xLTYuMi0yMy40TDM2LjQgMzUzLjhjNC4xLTE0LjYgMTEuOC0yNy45IDIyLjYtMzguN3pNMjI1LjQgODAuOEw4MC44IDIyNS40IDExLjcgMTU2LjNjLTE1LjYtMTUuNi0xNS42LTQwLjkgMC01Ni42bDg4LTg4YzE1LjYtMTUuNiA0MC45LTE1LjYgNTYuNiAwbDUuOSA1LjktNTYuMyA1Ni4zYy03LjggNy44LTcuOCAyMC41IDAgMjguM3MyMC41IDcuOCAyOC4zIDBsNTYuMy01Ni4zIDM0LjkgMzQuOXpNNDMxLjIgMjg2LjZsMzQuOSAzNC45LTU2LjMgNTYuM2MtNy44IDcuOC03LjggMjAuNSAwIDI4LjNzMjAuNSA3LjggMjguMyAwbDU2LjMtNTYuMyA1LjkgNS45YzE1LjYgMTUuNiAxNS42IDQwLjkgMCA1Ni42bC04OCA4OGMtMTUuNiAxNS42LTQwLjkgMTUuNi01Ni42IDBsLTY5LjEtNjkuMSAxNDQuNi0xNDQuNnoiXX0sbDhyPWtfZSxjOHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicmVwZWF0IixpY29uOls1MTIsNTEyLFsxMjgyNTddLCJmMzYzIiwiTTQ3MC42IDExOC42YzEyLjUtMTIuNSAxMi41LTMyLjggMC00NS4zbC02NC02NGMtOS4yLTkuMi0yMi45LTExLjktMzQuOS02LjlTMzUyIDE5LjEgMzUyIDMybDAgMzItMTYwIDBDODYgNjQgMCAxNTAgMCAyNTYgMCAyNzMuNyAxNC4zIDI4OCAzMiAyODhzMzItMTQuMyAzMi0zMmMwLTcwLjcgNTcuMy0xMjggMTI4LTEyOGwxNjAgMCAwIDMyYzAgMTIuOSA3LjggMjQuNiAxOS44IDI5LjZzMjUuNyAyLjIgMzQuOS02LjlsNjQtNjR6TTQxLjQgMzkzLjRjLTEyLjUgMTIuNS0xMi41IDMyLjggMCA0NS4zbDY0IDY0YzkuMiA5LjIgMjIuOSAxMS45IDM0LjkgNi45UzE2MCA0OTIuOSAxNjAgNDgwbDAtMzIgMTYwIDBjMTA2IDAgMTkyLTg2IDE5Mi0xOTIgMC0xNy43LTE0LjMtMzItMzItMzJzLTMyIDE0LjMtMzIgMzJjMCA3MC43LTU3LjMgMTI4LTEyOCAxMjhsLTE2MCAwIDAtMzJjMC0xMi45LTcuOC0yNC42LTE5LjgtMjkuNnMtMjUuNy0yLjItMzQuOSA2LjlsLTY0IDY0eiJdfSxkOHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYm9uZSIsaWNvbjpbNjQwLDUxMixbMTI5NDYwXSwiZjVkNyIsIk0xOTcuNCAxNjBjLTMuOSAwLTcuMi0yLjgtOC4xLTYuNi0xMC4yLTQyLjEtNDguMS03My40LTkzLjMtNzMuNC01MyAwLTk2IDQzLTk2IDk2IDAgMjkuMSAxMi45IDU1LjEgMzMuMyA3Mi43IDQuMyAzLjcgNC4zIDEwLjggMCAxNC41LTIwLjQgMTcuNi0zMy4zIDQzLjctMzMuMyA3Mi43IDAgNTMgNDMgOTYgOTYgOTYgNDUuMiAwIDgzLjEtMzEuMyA5My4zLTczLjQgLjktMy44IDQuMi02LjYgOC4xLTYuNmwyNDUuMSAwYzMuOSAwIDcuMiAyLjggOC4xIDYuNiAxMC4yIDQyLjEgNDguMSA3My40IDkzLjMgNzMuNCA1MyAwIDk2LTQzIDk2LTk2IDAtMjkuMS0xMi45LTU1LjEtMzMuMy03Mi43LTQuMy0zLjctNC4zLTEwLjggMC0xNC41IDIwLjQtMTcuNiAzMy4zLTQzLjcgMzMuMy03Mi43IDAtNTMtNDMtOTYtOTYtOTYtNDUuMiAwLTgzLjEgMzEuMy05My4zIDczLjQtLjkgMy44LTQuMiA2LjYtOC4xIDYuNmwtMjQ1LjEgMHoiXX0sU19lPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZpcmUtZmxhbWUtY3VydmVkIixpY29uOlszODQsNTEyLFsiZmlyZS1hbHQiXSwiZjdlNCIsIk0xNTMuNiAyOS45bDE2LTIxLjNDMTczLjYgMy4yIDE4MCAwIDE4Ni43IDAgMTk4LjQgMCAyMDggOS42IDIwOCAyMS4zbDAgMjIuMWMwIDEzLjEgNS40IDI1LjcgMTQuOSAzNC43TDMwNy42IDE1OUMzNTYuNCAyMDUuNiAzODQgMjcwLjIgMzg0IDMzNy43IDM4NCA0MzQgMzA2IDUxMiAyMDkuNyA1MTJMMTkyIDUxMkM4NiA1MTIgMCA0MjYgMCAzMjBsMC0zLjhjMC00OC44IDE5LjQtOTUuNiA1My45LTEzMC4xbDMuNS0zLjVjNC4yLTQuMiAxMC02LjYgMTYtNi42IDEyLjUgMCAyMi42IDEwLjEgMjIuNiAyMi42TDk2IDI4OGMwIDM1LjMgMjguNyA2NCA2NCA2NHM2NC0yOC43IDY0LTY0bDAtMy45YzAtMTgtNy4yLTM1LjMtMTkuOS00OGwtMzguNi0zOC42Yy0yNC0yNC0zNy41LTU2LjctMzcuNS05MC43IDAtMjcuNyA5LTU0LjggMjUuNi03Ni45eiJdfSx1OHI9U19lLHpfZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJidXMtc2ltcGxlIixpY29uOls0NDgsNTEyLFsiYnVzLWFsdCJdLCJmNTVlIiwiTTk2IDBDNDMgMCAwIDQzIDAgOTZMMCAzODRjMCAyOS44IDIwLjQgNTQuOSA0OCA2MmwwIDM0YzAgMTcuNyAxNC4zIDMyIDMyIDMybDE2IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJsMC0zMiAxOTIgMCAwIDMyYzAgMTcuNyAxNC4zIDMyIDMyIDMybDE2IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJsMC0zNGMyNy42LTcuMSA0OC0zMi4yIDQ4LTYybDAtMjg4YzAtNTMtNDMtOTYtOTYtOTZMOTYgMHpNNjQgMTI4YzAtMTcuNyAxNC4zLTMyIDMyLTMybDI1NiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgOTZjMCAxNy43LTE0LjMgMzItMzIgMzJMOTYgMjU2Yy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTk2ek05NiAzMjBhMzIgMzIgMCAxIDEgMCA2NCAzMiAzMiAwIDEgMSAwLTY0em0yNTYgMGEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6Il19LGY4cj16X2UscDhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InZlbnVzLW1hcnMiLGljb246WzY0MCw1MTIsWzk4OTJdLCJmMjI4IiwiTTQ4MC02NGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJTNDYyLjMgMCA0ODAgMEw1MzAuNyAwIDQ3NCA1Ni43Yy0yNi4zLTE1LjctNTcuMS0yNC43LTkwLTI0LjctMzUuNCAwLTY4LjQgMTAuNS05NiAyOC41LTI3LjYtMTgtNjAuNi0yOC41LTk2LTI4LjUtOTcuMiAwLTE3NiA3OC44LTE3NiAxNzYgMCA4Ni4zIDYyLjEgMTU4LjEgMTQ0IDE3My4xbDAgMzQuOS0zMiAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDMyIDAgMCAzMmMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMzIgMzIgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtMzIgMCAwLTM0LjljMjMuMy00LjMgNDQuOS0xMy4xIDY0LTI1LjYgMjcuNiAxOCA2MC42IDI4LjUgOTYgMjguNSA5Ny4yIDAgMTc2LTc4LjggMTc2LTE3NiAwLTQxLjEtMTQuMS03OS0zNy44LTEwOUw1NzYgNDUuMyA1NzYgOTZjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTEyOGMwLTE3LjctMTQuMy0zMi0zMi0zMkw0ODAtNjR6TTMzNiAzMDkuMmMyMC4yLTI4LjYgMzItNjMuNSAzMi0xMDEuMnMtMTEuOC03Mi42LTMyLTEwMS4yYzE0LjYtNi45IDMwLjgtMTAuOCA0OC0xMC44IDYxLjkgMCAxMTIgNTAuMSAxMTIgMTEyUzQ0NS45IDMyMCAzODQgMzIwYy0xNy4yIDAtMzMuNS0zLjktNDgtMTAuOHpNMjg4IDE1MC4zYzEwLjIgMTYuOSAxNiAzNi42IDE2IDU3LjdzLTUuOCA0MC45LTE2IDU3LjdjLTEwLjItMTYuOS0xNi0zNi42LTE2LTU3LjdzNS44LTQwLjkgMTYtNTcuN3ptLTQ4LTQzLjVjLTIwLjIgMjguNi0zMiA2My41LTMyIDEwMS4yczExLjggNzIuNiAzMiAxMDEuMmMtMTQuNSA2LjktMzAuOCAxMC44LTQ4IDEwLjgtNjEuOSAwLTExMi01MC4xLTExMi0xMTJTMTMwLjEgOTYgMTkyIDk2YzE3LjIgMCAzMy41IDMuOSA0OCAxMC44eiJdfSxoOHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYmxlbmRlciIsaWNvbjpbNTEyLDUxMixbXSwiZjUxNyIsIk0wIDU2QzAgMjUuMSAyNS4xIDAgNTYgMEw0MzcuNiAwYzIxLjMgMCAzNi42IDIwLjMgMzAuOCA0MC44TDQ1Ny4xIDgwIDM0NCA4MGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGw5OS40IDAtMTguMyA2NC04MS4xIDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsNjcuNCAwLTI3LjQgOTYtMjU2IDAtOS4xLTk2LTYyLjkgMGMtMzAuOSAwLTU2LTI1LjEtNTYtNTZMMCA1NnpNMTE0LjMgMTkyTDEwMC42IDQ4IDU2IDQ4Yy00LjQgMC04IDMuNi04IDhsMCAxMjhjMCA0LjQgMy42IDggOCA4bDU4LjMgMHpNMTM2IDM4NGwyNDAgMGMyMi4xIDAgNDAgMTcuOSA0MCA0MGwwIDQ4YzAgMjIuMS0xNy45IDQwLTQwIDQwbC0yNDAgMGMtMjIuMSAwLTQwLTE3LjktNDAtNDBsMC00OGMwLTIyLjEgMTcuOS00MCA0MC00MHptMTIwIDg4YTI0IDI0IDAgMSAwIDAtNDggMjQgMjQgMCAxIDAgMCA0OHoiXX0sbThyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InUiLGljb246WzM4NCw1MTIsWzExN10sIjU1IiwiTTMyIDMyYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMjI0YzAgNzAuNyA1Ny4zIDEyOCAxMjggMTI4czEyOC01Ny4zIDEyOC0xMjhsMC0yMjRjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDIyNGMwIDEwNi04NiAxOTItMTkyIDE5MlMwIDM5NCAwIDI4OEwwIDY0QzAgNDYuMyAxNC4zIDMyIDMyIDMyeiJdfSxPdz17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzaGFyZSIsaWNvbjpbNTEyLDUxMixbIm1haWwtZm9yd2FyZCJdLCJmMDY0IiwiTTMwNy44IDE4LjRjLTEyIDUtMTkuOCAxNi42LTE5LjggMjkuNmwwIDgwLTExMiAwYy05Ny4yIDAtMTc2IDc4LjgtMTc2IDE3NiAwIDExMy4zIDgxLjUgMTYzLjkgMTAwLjIgMTc0LjEgMi41IDEuNCA1LjMgMS45IDguMSAxLjkgMTAuOSAwIDE5LjctOC45IDE5LjctMTkuNyAwLTcuNS00LjMtMTQuNC05LjgtMTkuNS05LjQtOC44LTIyLjItMjYuNC0yMi4yLTU2LjcgMC01MyA0My05NiA5Ni05Nmw5NiAwIDAgODBjMCAxMi45IDcuOCAyNC42IDE5LjggMjkuNnMyNS43IDIuMiAzNC45LTYuOWwxNjAtMTYwYzEyLjUtMTIuNSAxMi41LTMyLjggMC00NS4zbC0xNjAtMTYwYy05LjItOS4yLTIyLjktMTEuOS0zNC45LTYuOXoiXX0sZzhyPU93LENfZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwaG9uZS1mbGlwIixpY29uOls1MTIsNTEyLFsxMjgzODEsInBob25lLWFsdCJdLCJmODc5IiwiTTM1MS44IDI1YzcuOC0xOC44IDI4LjQtMjguOSA0OC4xLTIzLjVsNS41IDEuNWM2NC42IDE3LjYgMTE5LjggODAuMiAxMDMuNyAxNTYuNC0zNy4xIDE3NS0xNzQuOCAzMTIuNy0zNDkuOCAzNDkuOC03Ni4zIDE2LjItMTM4LjgtMzkuMS0xNTYuNC0xMDMuN2wtMS41LTUuNWMtNS40LTE5LjcgNC43LTQwLjMgMjMuNS00OC4xbDk3LjMtNDAuNWMxNi41LTYuOSAzNS42LTIuMSA0NyAxMS44bDM4LjYgNDcuMmM3MC4zLTM0LjkgMTI2LjgtOTMuMyAxNTkuMy0xNjQuOWwtNDQuMS0zNi4xYy0xMy45LTExLjMtMTguNi0zMC40LTExLjgtNDdMMzUxLjggMjV6Il19LHg4cj1DX2UsYjhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRvaWxldC1wb3J0YWJsZSIsaWNvbjpbMzIwLDUxMixbXSwiZTU4MyIsIk0wIDY0bDAgMTYgMzIwIDAgMC0xNmMwLTM1LjMtMjguNy02NC02NC02NEw2NCAwQzI4LjcgMCAwIDI4LjcgMCA2NHptMjQgNjRMMCAxMjggMCA0ODhjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTggMjI0IDAgMCA4YzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC0zNjAtMjk2IDB6bTIyNCA5NmwyNCAwIDAgOTYtMjQgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRsMC00OGMwLTEzLjMgMTAuNy0yNCAyNC0yNHoiXX0sdjhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBlcnNvbi1wcmVnbmFudCIsaWNvbjpbMzg0LDUxMixbXSwiZTMxZSIsIk0xOTIgODBhNTYgNTYgMCAxIDAgMC0xMTIgNTYgNTYgMCAxIDAgMCAxMTJ6bTgwIDMyMS4yYzguNi00LjUgMTYuOC0xMCAyNC4zLTE2LjVsNC0zLjRjMjIuNi0xOS40IDM1LjctNDcuNyAzNS43LTc3LjYgMC0zNS45LTE4LjgtNjkuMS00OS42LTg3LjZsLTMwLjQtMTguMiAwLTEuOGMwLTQ2LjUtMzcuNy04NC4xLTg0LjEtODQuMS0yOC4xIDAtNTQuNCAxNC4xLTcwIDM3LjVMMjEuNCAyNzAuMmMtOS44IDE0LjctNS44IDM0LjYgOC45IDQ0LjRzMzQuNiA1LjggNDQuNC04LjlsMjktNDMuNS0zMC41IDExMy41Yy0yLjYgOS42LS42IDE5LjkgNS41IDI3LjhTOTQgNDE2IDEwNCA0MTZsOCAwIDAgOTZjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTk2IDMyIDAgMCA5NmMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMTEwLjh6Il19LHk4cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJsZXNzLXRoYW4iLGljb246WzUxMiw1MTIsWzYyNzc0XSwiM2MiLCJNNDc3LjEgNTAuNmM3LjQgMTYgLjQgMzUuMS0xNS42IDQyLjVMMTA4LjQgMjU2IDQ2MS40IDQxOWMxNiA3LjQgMjMgMjYuNCAxNS42IDQyLjVzLTI2LjQgMjMtNDIuNSAxNS42bC00MTYtMTkyQzcuMyAyNzkuOCAwIDI2OC41IDAgMjU2UzcuMyAyMzIuMiAxOC42IDIyN2w0MTYtMTkyYzE2LTcuNCAzNS4xLS40IDQyLjUgMTUuNnoiXX0sdzhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InN1cGVyc2NyaXB0IixpY29uOls1NzYsNTEyLFtdLCJmMTJiIiwiTTU0NCAzMmMwLTExLjEtNS43LTIxLjQtMTUuMi0yNy4ycy0yMS4yLTYuNC0zMS4xLTEuNGwtMzIgMTZDNDQ5LjkgMjcuMyA0NDMuNSA0Ni41IDQ1MS40IDYyLjMgNDU3IDczLjUgNDY4LjMgODAgNDgwIDgwbDAgODBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsNjQgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwwLTEyOHpNOTYgNjRDNzguMyA2NCA2NCA3OC4zIDY0IDk2czE0LjMgMzIgMzIgMzJsMTUuMyAwIDg5LjYgMTI4LTg5LjYgMTI4LTE1LjMgMGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmwzMiAwYzEwLjQgMCAyMC4yLTUuMSAyNi4yLTEzLjZMMjQwIDMxMS44IDMyNS44IDQzNC40YzYgOC42IDE1LjggMTMuNiAyNi4yIDEzLjZsMzIgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtMTUuMyAwLTg5LjYtMTI4IDg5LjYtMTI4IDE1LjMgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtMzIgMGMtMTAuNCAwLTIwLjIgNS4xLTI2LjIgMTMuNkwyNDAgMjAwLjIgMTU0LjIgNzcuNkMxNDguMiA2OS4xIDEzOC40IDY0IDEyOCA2NEw5NiA2NHoiXX0sX19lPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNpcmNsZS1zdG9wIixpY29uOls1MTIsNTEyLFs2MjA5NCwic3RvcC1jaXJjbGUiXSwiZjI4ZCIsIk0yNTYgNTEyYTI1NiAyNTYgMCAxIDAgMC01MTIgMjU2IDI1NiAwIDEgMCAwIDUxMnpNMTkyIDE2MGwxMjggMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDEyOGMwIDE3LjctMTQuMyAzMi0zMiAzMmwtMTI4IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtMTI4YzAtMTcuNyAxNC4zLTMyIDMyLTMyeiJdfSxNOHI9X19lLFRfZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJhcnJvd3MtdXAtZG93biIsaWNvbjpbMjU2LDUxMixbImFycm93cy12Il0sImYwN2QiLCJNMTUwLjYtMjIuNmMtMTIuNS0xMi41LTMyLjgtMTIuNS00NS4zIDBsLTk2IDk2Yy0xMi41IDEyLjUtMTIuNSAzMi44IDAgNDUuM3MzMi44IDEyLjUgNDUuMyAwTDk2IDc3LjMgOTYgNDM0LjcgNTQuNiAzOTMuNGMtMTIuNS0xMi41LTMyLjgtMTIuNS00NS4zIDBzLTEyLjUgMzIuOCAwIDQ1LjNsOTYgOTZjNiA2IDE0LjEgOS40IDIyLjYgOS40czE2LjYtMy40IDIyLjYtOS40bDk2LTk2YzEyLjUtMTIuNSAxMi41LTMyLjggMC00NS4zcy0zMi44LTEyLjUtNDUuMyAwbC00MS40IDQxLjQgMC0zNTcuNSA0MS40IDQxLjRjMTIuNSAxMi41IDMyLjggMTIuNSA0NS4zIDBzMTIuNS0zMi44IDAtNDUuM2wtOTYtOTZ6Il19LGs4cj1UX2UsTF9lPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBvby1zdG9ybSIsaWNvbjpbNTEyLDUxMixbInBvby1ib2x0Il0sImY3NWEiLCJNMjY4LjktMzEuOGMtNS41LS43LTExIDEuNC0xNC41IDUuN3MtNC42IDEwLjEtMi44IDE1LjNjMi44IDguMiA0LjMgMTYuOSA0LjMgMjYuMSAwIDIxLjctOC41IDM3LjItMjEuOSA0Ny42LTEzLjkgMTAuOC0zNC4xIDE3LTU4LjEgMTdsLTI0IDBjLTQ4LjYgMC04OCAzOS40LTg4IDg4IDAgMTQuOCAzLjcgMjguOCAxMC4yIDQxLjEtNDIgNi42LTc0LjIgNDMtNzQuMiA4Ni45IDAgNDYuNiAzNi4yIDg0LjcgODEuOSA4Ny44IDMuMS0xMi40IDkuOS0yMy44IDE5LjYtMzIuNUwyNDIuNyAyMjVjMTIuMi0xMC45IDI4LTE3IDQ0LjQtMTcgNDQuNiAwIDc2LjUgNDMgNjMuNyA4NS43bC0xMi43IDQyLjRjMjguOCAxLjIgNTIuNyAyMS4xIDU5LjggNDcuOWwyNi4yIDBjNDguNiAwIDg4LTM5LjQgODgtODggMC00My45LTMyLjEtODAuMy03NC4yLTg2LjkgNi41LTEyLjMgMTAuMi0yNi4yIDEwLjItNDEuMSAwLTQ4LjYtMzkuNC04OC04OC04OGwtOS40IDBjLjktNS40IDEuNC0xMC45IDEuNC0xNi42IDAtNDguNy0zNi4xLTg4LjktODMuMS05NS4yek0xNDQuNiA0MTZsNjEuOCAwLTMxLjIgMTA0LjFjLTMuNiAxMS45IDUuMyAyMy45IDE3LjggMjMuOSA0LjYgMCA5LTEuNyAxMi40LTQuN0wzNDYuNSA0MTIuOWMzLjUtMy4xIDUuNS03LjYgNS41LTEyLjQgMC05LjItNy40LTE2LjYtMTYuNi0xNi42bC02MS44IDAgMzEuMi0xMDQuMWMzLjYtMTEuOS01LjMtMjMuOS0xNy44LTIzLjktNC42IDAtOSAxLjctMTIuNCA0LjdMMTMzLjUgMzg3LjFjLTMuNSAzLjEtNS41IDcuNi01LjUgMTIuNCAwIDkuMiA3LjQgMTYuNiAxNi42IDE2LjZ6Il19LFM4cj1MX2UsejhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InZpZGVvLXNsYXNoIixpY29uOls1NzYsNTEyLFtdLCJmNGUyIiwiTTQxLTI0LjljLTkuNC05LjQtMjQuNi05LjQtMzMuOSAwUy0yLjMtLjMgNyA5LjFsNTI4IDUyOGM5LjQgOS40IDI0LjYgOS40IDMzLjkgMHM5LjQtMjQuNiAwLTMzLjlsLTE1My0xNTMgMC0yMjIuMmMwLTM1LjMtMjguNy02NC02NC02NEwxMjkuOCA2NCA0MS0yNC45ek0zMiAxMjhsMCAyNTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMjU2IDBjNy44IDAgMTUuMy0xLjQgMjIuMi00TDM2IDEwNS44Yy0yLjYgNi45LTQgMTQuNC00IDIyLjJ6TTQ2NCAzMzZsNzMuNSA1OC44YzQuMiAzLjQgOS40IDUuMiAxNC44IDUuMiAxMy4xIDAgMjMuNy0xMC42IDIzLjctMjMuN2wwLTI0MC42YzAtMTMuMS0xMC42LTIzLjctMjMuNy0yMy43LTUuNCAwLTEwLjYgMS44LTE0LjggNS4yTDQ2NCAxNzYgNDY0IDMzNnoiXX0sZjJlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNxdWFyZS14bWFyayIsaWNvbjpbNDQ4LDUxMixbMTAwNjIsInRpbWVzLXNxdWFyZSIsInhtYXJrLXNxdWFyZSJdLCJmMmQzIiwiTTY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzIwIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zMjBjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzJ6bTcxIDEzNWM5LjQtOS40IDI0LjYtOS40IDMzLjkgMGw1NSA1NSA1NS01NWM5LjQtOS40IDI0LjYtOS40IDMzLjkgMHM5LjQgMjQuNiAwIDMzLjlsLTU1IDU1IDU1IDU1YzkuNCA5LjQgOS40IDI0LjYgMCAzMy45cy0yNC42IDkuNC0zMy45IDBsLTU1LTU1LTU1IDU1Yy05LjQgOS40LTI0LjYgOS40LTMzLjkgMHMtOS40LTI0LjYgMC0zMy45bDU1LTU1LTU1LTU1Yy05LjQtOS40LTkuNC0yNC42IDAtMzMuOXoiXX0sQzhyPWYyZSxfOHI9ZjJlLERfZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJoYW5kLWhvbGRpbmctZHJvcGxldCIsaWNvbjpbNTc2LDUxMixbImhhbmQtaG9sZGluZy13YXRlciJdLCJmNGMxIiwiTTI3NS41IDYuNkwyMDkuMiAxMDNDMTk4IDExOS4zIDE5MiAxMzguNiAxOTIgMTU4LjNsMCAxLjdjMCA1MyA0MyA5NiA5NiA5NnM5Ni00MyA5Ni05NmwwLTEuN2MwLTE5LjgtNi0zOS0xNy4yLTU1LjNMMzAwLjUgNi42QzI5Ny43IDIuNSAyOTMgMCAyODggMHMtOS43IDIuNS0xMi41IDYuNnpNMTA5LjMgMzQxLjVMNjYuNyAzODQgMzIgMzg0Yy0xNy43IDAtMzIgMTQuMy0zMiAzMmwwIDY0YzAgMTcuNyAxNC4zIDMyIDMyIDMybDMyMC41IDBjMjkgMCA1Ny4zLTkuMyA4MC43LTI2LjVsMTI2LjYtOTMuM2MxNy44LTEzLjEgMjEuNi0zOC4xIDguNS01NS45cy0zOC4xLTIxLjYtNTUuOS04LjVMMzkyLjYgNDE2IDI4MCA0MTZjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjRsNzIgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtMTUyLjIgMGMtMzMuOSAwLTY2LjUgMTMuNS05MC41IDM3LjV6Il19LFQ4cj1EX2UscDJlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Indvbi1zaWduIixpY29uOls1MTIsNTEyLFs4MzYxLCJrcnciLCJ3b24iXSwiZjE1OSIsIk02Mi40IDUzLjlDNTYuOCAzNy4xIDM4LjcgMjguMSAyMS45IDMzLjZTLTMuOSA1Ny40IDEuNyA3NC4xTDU2LjkgMjQwIDMyIDI0MGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGw0MC45IDAgNTYuNyAxNzAuMWM0LjUgMTMuNSAxNy40IDIyLjQgMzEuNiAyMS45czI2LjQtMTAuNCAyOS44LTI0LjJMMjMzIDI4OCAyNzkgMjg4IDMyMSA0NTUuOGMzLjQgMTMuOCAxNS42IDIzLjcgMjkuOCAyNC4yczI3LjEtOC40IDMxLjYtMjEuOUw0MzkuMSAyODggNDgwIDI4OGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtMjQuOSAwIDU1LjMtMTY1LjljNS42LTE2LjgtMy41LTM0LjktMjAuMi00MC41cy0zNC45IDMuNS00MC41IDIwLjJsLTYyIDE4Ni4xLTU0LjYgMC00NS45LTE4My44QzI4My41IDQyIDI3MC43IDMyIDI1NiAzMnMtMjcuNSAxMC0zMSAyNC4yTDE3OSAyNDAgMTI0LjQgMjQwIDYyLjQgNTMuOXptNzggMjM0LjFsMjYuNiAwLTExLjQgNDUuNi0xNS4yLTQ1LjZ6TTI0NSAyNDBsMTEtNDQuMSAxMSA0NC4xLTIyIDB6bTEwMCA0OGwyNi42IDAtMTUuMiA0NS42LTExLjQtNDUuNnoiXX0sTDhyPXAyZSxEOHI9cDJlLEE4cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJvYmplY3QtdW5ncm91cCIsaWNvbjpbNjQwLDUxMixbXSwiZjI0OCIsIk0zMiAxMTkuNEMxMi45IDEwOC40IDAgODcuNyAwIDY0IDAgMjguNyAyOC43IDAgNjQgMCA4Ny43IDAgMTA4LjQgMTIuOSAxMTkuNCAzMmwyMDkuMSAwYzExLjEtMTkuMSAzMS43LTMyIDU1LjQtMzIgMzUuMyAwIDY0IDI4LjcgNjQgNjQgMCAyMy43LTEyLjkgNDQuNC0zMiA1NS40bDAgMTEzLjFjMTkuMSAxMS4xIDMyIDMxLjcgMzIgNTUuNCAwIDM1LjMtMjguNyA2NC02NCA2NC0yMy43IDAtNDQuNC0xMi45LTU1LjQtMzJsLTIwOS4xIDBjLTExLjEgMTkuMS0zMS43IDMyLTU1LjQgMzItMzUuMyAwLTY0LTI4LjctNjQtNjQgMC0yMy43IDEyLjktNDQuNCAzMi01NS40bDAtMTEzLjF6TTExOS40IDk2Yy01LjYgOS43LTEzLjcgMTcuOC0yMy40IDIzLjRsMCAxMTMuMWM5LjcgNS42IDE3LjggMTMuNyAyMy40IDIzLjRsMjA5LjEgMGM1LjYtOS43IDEzLjctMTcuOCAyMy40LTIzLjRsMC0xMTMuMWMtOS43LTUuNi0xNy44LTEzLjctMjMuNC0yMy40TDExOS40IDk2ek01NDQgMjc5LjRjLTkuNy01LjYtMTcuOC0xMy43LTIzLjQtMjMuNGwtMjkuMiAwYy01LjMtMTcuNy0xNC44LTMzLjUtMjcuNC00Ni40bDAtMTcuNiA1Ni42IDBjMTEuMS0xOS4xIDMxLjctMzIgNTUuNC0zMiAzNS4zIDAgNjQgMjguNyA2NCA2NCAwIDIzLjctMTIuOSA0NC40LTMyIDU1LjRsMCAxMTMuMWMxOS4xIDExLjEgMzIgMzEuNyAzMiA1NS40IDAgMzUuMy0yOC43IDY0LTY0IDY0LTIzLjcgMC00NC40LTEyLjktNTUuNC0zMmwtMjA5LjEgMGMtMTEuMSAxOS4xLTMxLjcgMzItNTUuNCAzMi0zNS4zIDAtNjQtMjguNy02NC02NCAwLTIzLjcgMTIuOS00NC40IDMyLTU1LjRsMC0yNC42IDY0IDAgMCAyNC42YzkuNyA1LjYgMTcuOCAxMy43IDIzLjQgMjMuNGwyMDkuMSAwYzUuNi05LjcgMTMuNy0xNy44IDIzLjQtMjMuNGwwLTExMy4xeiJdfSxFOHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY29tbWVudCIsaWNvbjpbNTEyLDUxMixbMTI4NDg5LDYxNjY5XSwiZjA3NSIsIk01MTIgMjQwYzAgMTMyLjUtMTE0LjYgMjQwLTI1NiAyNDAtMzcuMSAwLTcyLjMtNy40LTEwNC4xLTIwLjdMMzMuNSA1MTAuMWMtOS40IDQtMjAuMiAxLjctMjcuMS01LjhTLTIgNDg1LjggMi44IDQ3Ni44bDQ4LjgtOTIuMkMxOS4yIDM0NC4zIDAgMjk0LjMgMCAyNDAgMCAxMDcuNSAxMTQuNiAwIDI1NiAwUzUxMiAxMDcuNSA1MTIgMjQweiJdfSwkOHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaGlsbC1hdmFsYW5jaGUiLGljb246WzU3Niw1MTIsW10sImU1MDciLCJNNDQwLjEgNDAxLjljMzQuMiAyMy4xIDgxLjEgMTkuNSAxMTEuNC0xMC44IDM0LjQtMzQuNCAzNC40LTkwLjEgMC0xMjQuNS0yNy44LTI3LjgtNjkuNS0zMy4xLTEwMi42LTE2LTExLjggNi4xLTE2LjQgMjAuNi0xMC4zIDMyLjNzMjAuNiAxNi40IDMyLjMgMTAuM2MxNS4xLTcuOCAzNC01LjMgNDYuNiA3LjMgMTUuNiAxNS42IDE1LjYgNDAuOSAwIDU2LjZzLTQwLjkgMTUuNi01Ni42IDBsLTgxLjctODEuN2MyMi4zLTE0LjIgMzcuMS0zOS4xIDM3LjEtNjcuNSAwLTMzLjktMjEuMS02Mi45LTUwLjktNzQuNSAxLjktNi44IDIuOS0xNCAyLjktMjEuNSAwLTQ0LjItMzUuOC04MC04MC04MC0yNy4zIDAtNTEuNSAxMy43LTY1LjkgMzQuNi01LjgtMjAtMjQuMi0zNC42LTQ2LjEtMzQuNi0yNi41IDAtNDggMjEuNS00OCA0OCAwIDQgLjUgNy45IDEuNCAxMS42TDQ0MC4xIDQwMS45ek00ODAuNCA2NGEzMiAzMiAwIDEgMCAtNjQgMCAzMiAzMiAwIDEgMCA2NCAwem0wIDEyOGEzMiAzMiAwIDEgMCAwLTY0IDMyIDMyIDAgMSAwIDAgNjR6TTY4LjcgODdDNDMuNSA2MS44IC40IDc5LjcgLjQgMTE1LjNMLjQgNDMyYzAgNDQuMiAzNS44IDgwIDgwIDgwbDMxNi43IDBjMzUuNiAwIDUzLjUtNDMuMSAyOC4zLTY4LjNMNjguNyA4N3oiXX0sUDhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFycm93cy10by1leWUiLGljb246WzY0MCw1MTIsW10sImU0YmYiLCJNMTc2IDU2YzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0bDAgMzguMS02My02M2MtOS40LTkuNC0yNC42LTkuNC0zMy45IDBTMjEuNyA1NS42IDMxIDY1bDYzIDYzLTM4LjEgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGw5NiAwYzEzLjMgMCAyNC0xMC43IDI0LTI0bDAtOTZ6bTAgNDAwbDAtOTZjMC0xMy4zLTEwLjctMjQtMjQtMjRsLTk2IDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsMzguMSAwLTYzIDYzYy05LjQgOS40LTkuNCAyNC42IDAgMzMuOXMyNC42IDkuNCAzMy45IDBsNjMtNjMgMCAzOC4xYzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjR6bTMxMiAyNGMxMy4zIDAgMjQtMTAuNyAyNC0yNGwwLTM4LjEgNjMgNjNjOS40IDkuNCAyNC42IDkuNCAzMy45IDBzOS40LTI0LjYgMC0zMy45bC02My02MyAzOC4xIDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTk2IDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0bDAgOTZjMCAxMy4zIDEwLjcgMjQgMjQgMjR6TTQ2NCA1NmwwIDk2YzAgMTMuMyAxMC43IDI0IDI0IDI0bDk2IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTM4LjEgMCA2My02M2M5LjQtOS40IDkuNC0yNC42IDAtMzMuOXMtMjQuNi05LjQtMzMuOSAwbC02MyA2MyAwLTM4LjFjMC0xMy4zLTEwLjctMjQtMjQtMjRzLTI0IDEwLjctMjQgMjR6TTMyMCAxMjBjLTU3LjMgMC05OS40IDM0LTEyNS42IDY0LjMtMjAgMjMuMS0zMi40IDQ1LjgtMzcuNiA1Ni4xLTIuNSA1LTQuOSA5LjctNC45IDE1LjZzMi4zIDEwLjYgNC45IDE1LjZjNS4yIDEwLjMgMTcuNiAzMyAzNy42IDU2LjEgMjYuMiAzMC4zIDY4LjIgNjQuMyAxMjUuNiA2NC4zczk5LjQtMzQgMTI1LjYtNjQuM2MyMC0yMy4xIDMyLjQtNDUuOCAzNy42LTU2LjEgMi41LTUgNC45LTkuNyA0LjktMTUuNnMtMi4zLTEwLjYtNC45LTE1LjZjLTUuMi0xMC4zLTE3LjYtMzMtMzcuNi01Ni4xLTI2LjItMzAuMy02OC4yLTY0LjMtMTI1LjYtNjQuM3pNMjU2IDI1NmE2NCA2NCAwIDEgMSAxMjggMCA2NCA2NCAwIDEgMSAtMTI4IDB6Il19LEk4cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzbm93cGxvdyIsaWNvbjpbNjQwLDUxMixbXSwiZjdkMiIsIk0xMjggMTYwbDAtOTZjMC0zNS4zIDI4LjctNjQgNjQtNjRMMjk2LjQgMGMyNC4yIDAgNDYuNCAxMy43IDU3LjIgMzUuNGw4Ny42IDE3NS4xYzQuNCA4LjkgNi44IDE4LjcgNi44IDI4LjZsMCA1Ni45IDgwIDAgMC04MGMwLTQ4LjYgMzkuNC04OCA4OC04OCAxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGMtMjIuMSAwLTQwIDE3LjktNDAgNDBsMCAyMDhjMCAyMi4xIDE3LjkgNDAgNDAgNDAgMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRjLTQ4LjYgMC04OC0zOS40LTg4LTg4bDAtODAtNjMgMGM5LjUgMTYuNSAxNSAzNS42IDE1IDU2IDAgNjEuOS01MC4xIDExMi0xMTIgMTEybC0yMjQgMGMtNjEuOSAwLTExMi01MC4xLTExMi0xMTIgMC0zMC41IDEyLjItNTguMiAzMi03OC40TDY0IDIyNGMwLTM1LjMgMjguNy02NCA2NC02NHptOTEuNyAzNC45bDQzLjYgMjkuMSAxMTMuMiAwLTgwLTE2MC0xMDQuNCAwIDAgMTA4LjggMjcuNyAyMi4xek00MTYgNDAwYzAtMjYuNS0yMS41LTQ4LTQ4LTQ4bC0yMjQgMGMtMjYuNSAwLTQ4IDIxLjUtNDggNDhzMjEuNSA0OCA0OCA0OGwyMjQgMGMyNi41IDAgNDgtMjEuNSA0OC00OHptLTI4MCAwYTI0IDI0IDAgMSAxIDQ4IDAgMjQgMjQgMCAxIDEgLTQ4IDB6bTIxNi0yNGEyNCAyNCAwIDEgMSAwIDQ4IDI0IDI0IDAgMSAxIDAtNDh6TTIzMiA0MDBhMjQgMjQgMCAxIDEgNDggMCAyNCAyNCAwIDEgMSAtNDggMHoiXX0sTjhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNoYXJ0LWdhbnR0IixpY29uOls1MTIsNTEyLFtdLCJlMGU0IiwiTTY0IDY0YzAtMTcuNy0xNC4zLTMyLTMyLTMyUzAgNDYuMyAwIDY0TDAgNDAwYzAgNDQuMiAzNS44IDgwIDgwIDgwbDQwMCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMyTDgwIDQxNmMtOC44IDAtMTYtNy4yLTE2LTE2TDY0IDY0em05NiAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDk2IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTk2IDB6bTY0IDExMmMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmwxMjggMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtMTI4IDB6TTM4NCAyODhjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsNjQgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtNjQgMHoiXX0sQV9lPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InZpZGVvIixpY29uOls1NzYsNTEyLFsidmlkZW8tY2FtZXJhIl0sImYwM2QiLCJNOTYgNjRjLTM1LjMgMC02NCAyOC43LTY0IDY0bDAgMjU2YzAgMzUuMyAyOC43IDY0IDY0IDY0bDI1NiAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMjU2YzAtMzUuMy0yOC43LTY0LTY0LTY0TDk2IDY0ek00NjQgMzM2bDczLjUgNTguOGM0LjIgMy40IDkuNCA1LjIgMTQuOCA1LjIgMTMuMSAwIDIzLjctMTAuNiAyMy43LTIzLjdsMC0yNDAuNmMwLTEzLjEtMTAuNi0yMy43LTIzLjctMjMuNy01LjQgMC0xMC42IDEuOC0xNC44IDUuMkw0NjQgMTc2IDQ2NCAzMzZ6Il19LEY4cj1BX2UsTzhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNoZXNzLXBhd24iLGljb246WzM4NCw1MTIsWzk4MjNdLCJmNDQzIiwiTTE5Mi0zMmM2Ni4zIDAgMTIwIDUzLjcgMTIwIDEyMCAwIDI3LTguOSA1MS45LTI0IDcyIDE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC0xMC43IDAgMjYuNyAxNjAgNTYuMiA3MC4zYzUgNi4zIDcuOCAxNC4xIDcuOCAyMi4yIDAgMTkuNi0xNS45IDM1LjUtMzUuNSAzNS41TDUxLjUgNTEyYy0xOS42IDAtMzUuNS0xNS45LTM1LjUtMzUuNSAwLTguMSAyLjctMTUuOSA3LjgtMjIuMkw4MCAzODQgMTA2LjcgMjI0IDk2IDIyNGMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMmMtMTUuMS0yMC4xLTI0LTQ1LTI0LTcyIDAtNjYuMyA1My43LTEyMCAxMjAtMTIweiJdfSxSOHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic3luYWdvZ3VlIixpY29uOls1NzYsNTEyLFsxMjgzMzNdLCJmNjliIiwiTTE2IDgwYzAtMzUuMyAyOC43LTY0IDY0LTY0czY0IDI4LjcgNjQgNjRsMCAzMi0xMjggMCAwLTMyem0wIDM2OGwwLTI4OCAxMjggMCAxMjYuMi04NC4yYzEwLjctNy4yIDI0LjgtNy4yIDM1LjUgMGwxMjYuMiA4NC4yIDEyOCAwIDAgMjg4YzAgMzUuMy0yOC43IDY0LTY0IDY0TDgwIDUxMmMtMzUuMyAwLTY0LTI4LjctNjQtNjR6TTU2MCAxMTJsLTEyOCAwIDAtMzJjMC0zNS4zIDI4LjctNjQgNjQtNjRzNjQgMjguNyA2NCA2NGwwIDMyek0yMjQgMzg0bDAgODAgMTI4IDAgMC04MGMwLTM1LjMtMjguNy02NC02NC02NHMtNjQgMjguNy02NCA2NHptNjQtMTUyYTQwIDQwIDAgMSAwIDAtODAgNDAgNDAgMCAxIDAgMCA4MHoiXX0sQjhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJ1aWxkaW5nLWNpcmNsZS1jaGVjayIsaWNvbjpbNTc2LDUxMixbXSwiZTRkMiIsIk05NiAwQzYwLjcgMCAzMiAyOC43IDMyIDY0bDAgMzg0YzAgMzUuMyAyOC43IDY0IDY0IDY0bDE4MCAwYy0xMC41LTE0LjYtMTktMzAuNy0yNS4xLTQ4bC03NC45IDAgMC04MGMwLTE3LjcgMTQuMy0zMiAzMi0zMmwzMiAwYzIgMCA0IC4yIDUuOSAuNSA2LTIzLjYgMTYuMy00NS40IDMwLjEtNjQuNWwtNCAwYy04LjggMC0xNi03LjItMTYtMTZsMC0zMmMwLTguOCA3LjItMTYgMTYtMTZsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCA0YzI3LjUtMTkuOCA2MC4zLTMyLjQgOTYtMzUuNEw0MTYgNjRjMC0zNS4zLTI4LjctNjQtNjQtNjRMOTYgMHptMzIgMTEyYzAtOC44IDcuMi0xNiAxNi0xNmwzMiAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDMyYzAgOC44LTcuMiAxNi0xNiAxNmwtMzIgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMzJ6TTI3MiA5NmwzMiAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDMyYzAgOC44LTcuMiAxNi0xNiAxNmwtMzIgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMzJjMC04LjggNy4yLTE2IDE2LTE2ek0xMjggMjQwYzAtOC44IDcuMi0xNiAxNi0xNmwzMiAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDMyYzAgOC44LTcuMiAxNi0xNiAxNmwtMzIgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMzJ6TTU3NiA0MDBhMTQ0IDE0NCAwIDEgMCAtMjg4IDAgMTQ0IDE0NCAwIDEgMCAyODggMHptLTg2LjYtNjAuOWM3LjEgNS4yIDguNyAxNS4yIDMuNSAyMi4zbC02NCA4OGMtMi44IDMuOC03IDYuMi0xMS43IDYuNXMtOS4zLTEuMy0xMi42LTQuNmwtNDAtNDBjLTYuMi02LjItNi4yLTE2LjQgMC0yMi42czE2LjQtNi4yIDIyLjYgMGwyNi44IDI2LjggNTMtNzIuOWM1LjItNy4xIDE1LjItOC43IDIyLjQtMy41eiJdfSxIOHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2FsZW5kYXItcGx1cyIsaWNvbjpbNDQ4LDUxMixbXSwiZjI3MSIsIk0xMjggMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDMyIDEyOCAwIDAtMzJjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDMyIDMyIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAyODhjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDEyOEMwIDkyLjcgMjguNyA2NCA2NCA2NGwzMiAwIDAtMzJjMC0xNy43IDE0LjMtMzIgMzItMzJ6bTk2IDE5MmMtMTMuMyAwLTI0IDEwLjctMjQgMjRsMCA0OC00OCAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDQ4IDAgMCA0OGMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtNDggNDggMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtNDggMCAwLTQ4YzAtMTMuMy0xMC43LTI0LTI0LTI0eiJdfSxFX2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToid2hlZWxjaGFpci1tb3ZlIixpY29uOls0NDgsNTEyLFsid2hlZWxjaGFpci1hbHQiXSwiZTJjZSIsIk0zMTIgNTZhNTYgNTYgMCAxIDEgMTEyIDAgNTYgNTYgMCAxIDEgLTExMiAwek0yMDUuNCAxMjQuMWMtNi40LTUuMi0xNS42LTQuNy0yMS40IDEuMWwtMzMuNCAzMy40Yy0xMi41IDEyLjUtMzIuOCAxMi41LTQ1LjMgMHMtMTIuNS0zMi44IDAtNDUuM0wxMzguOCA4MGMyOS0yOSA3NS4yLTMxLjQgMTA3LTUuNWw4MS4zIDY2YzIxLjQgMTcuNCAyMy44IDQ5LjIgNS4yIDY5LjVsLTQxLjggNDYgOTggMGMzMC4zIDAgNTMgMjcuNyA0Ny4xIDU3LjRMNDA3LjQgNDU0LjNjLTMuNSAxNy4zLTIwLjMgMjguNi0zNy43IDI1LjFzLTI4LjYtMjAuMy0yNS4xLTM3LjdMMzY5IDMyMCAzMTYuOCAzMjBjMi4xIDEwLjMgMy4yIDIxIDMuMiAzMiAwIDg4LjQtNzEuNiAxNjAtMTYwIDE2MFMwIDQ0MC40IDAgMzUyIDcxLjYgMTkyIDE2MCAxOTJjNiAwIDExLjkgLjMgMTcuOCAxbDUwLjQtNTAuNC0yMi43LTE4LjV6TTE2MCA0NDhhOTYgOTYgMCAxIDAgMC0xOTIgOTYgOTYgMCAxIDAgMCAxOTJ6Il19LHE4cj1FX2UsajhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InVzZXItc2hpZWxkIixpY29uOls1NzYsNTEyLFtdLCJmNTA1IiwiTTIyNCAyNDhhMTIwIDEyMCAwIDEgMCAwLTI0MCAxMjAgMTIwIDAgMSAwIDAgMjQwem0tMjkuNyA1NkM5NS44IDMwNCAxNiAzODMuOCAxNiA0ODIuMyAxNiA0OTguNyAyOS4zIDUxMiA0NS43IDUxMmwyNTEuNSAwQzI2MSA0NjkuNCAyNDAgNDE0LjUgMjQwIDM1Ni40bDAtMzEuMWMwLTcuMyAxLTE0LjUgMi45LTIxLjNsLTQ4LjYgMHptMjUxIDE4NC41bC0xMy4zIDYuMyAwLTE4OC4xIDk2IDMyIDAgMTkuNmMwIDU1LjgtMzIuMiAxMDYuNS04Mi43IDEzMC4zek00MjEuOSAyNTkuNWwtMTEyIDM3LjNjLTEzLjEgNC40LTIxLjkgMTYuNi0yMS45IDMwLjRsMCAzMS4xYzAgNzQuNCA0MyAxNDIuMSAxMTAuMiAxNzMuN2wxOC41IDguN2M0LjggMi4yIDEwIDMuNCAxNS4yIDMuNHMxMC41LTEuMiAxNS4yLTMuNGwxOC41LTguN0M1MzMgNTAwLjMgNTc2IDQzMi42IDU3NiAzNTguMmwwLTMxLjFjMC0xMy44LTguOC0yNi0yMS45LTMwLjRsLTExMi0zNy4zYy02LjYtMi4yLTEzLjctMi4yLTIwLjIgMHoiXX0sVjhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJvbGQiLGljb246WzM4NCw1MTIsW10sImYwMzIiLCJNMzIgMzJDMTQuMyAzMiAwIDQ2LjMgMCA2NFMxNC4zIDk2IDMyIDk2bDMyIDAgMCAzMjAtMzIgMGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmwyMjQgMGM3MC43IDAgMTI4LTU3LjMgMTI4LTEyOCAwLTQ2LjUtMjQuOC04Ny4zLTYyLTEwOS43IDE4LjctMjIuMyAzMC01MSAzMC04Mi4zIDAtNzAuNy01Ny4zLTEyOC0xMjgtMTI4TDMyIDMyek0yODggMTYwYzAgMzUuMy0yOC43IDY0LTY0IDY0bC05NiAwIDAtMTI4IDk2IDBjMzUuMyAwIDY0IDI4LjcgNjQgNjR6TTEyOCA0MTZsMC0xMjggMTI4IDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRzLTI4LjcgNjQtNjQgNjRsLTEyOCAweiJdfSwkX2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaGVhcnQtcHVsc2UiLGljb246WzUxMiw1MTIsWyJoZWFydGJlYXQiXSwiZjIxZSIsIk0yNTYgMTA3LjlMMjQxIDg3LjFDMjE2IDUyLjUgMTc1LjkgMzIgMTMzLjEgMzIgNTkuNiAzMiAwIDkxLjYgMCAxNjUuMWwwIDIuNmMwIDIzLjYgNi4yIDQ4IDE2LjYgNzIuM2wxMDYgMGMzLjIgMCA2LjEtMS45IDcuNC00LjlsMzEuOC03Ni4zYzMuNy04LjggMTIuMy0xNC42IDIxLjgtMTQuOHMxOC4zIDUuNCAyMi4yIDE0LjFsNTEuMyAxMTMuOSA0MS40LTgyLjhjNC4xLTguMSAxMi40LTEzLjMgMjEuNS0xMy4zczE3LjQgNS4xIDIxLjUgMTMuM2wyMy4yIDQ2LjNjMS40IDIuNyA0LjEgNC40IDcuMiA0LjRsMTIzLjYgMGMxMC41LTI0LjMgMTYuNi00OC43IDE2LjYtNzIuM2wwLTIuNkM1MTIgOTEuNiA0NTIuNCAzMiAzNzguOSAzMiAzMzYuMiAzMiAyOTYgNTIuNSAyNzEgODcuMWwtMTUgMjAuN3pNNDY5LjYgMjg4bC05Ny44IDBjLTIxLjIgMC00MC42LTEyLTUwLjEtMzFsLTEuNy0zLjQtNDIuNSA4NS4xYy00LjEgOC4zLTEyLjcgMTMuNS0yMiAxMy4zcy0xNy42LTUuNy0yMS40LTE0LjFsLTQ5LjMtMTA5LjUtMTAuNSAyNS4yYy04LjcgMjAuOS0yOS4xIDM0LjUtNTEuNyAzNC41bC04MC4yIDBjNDcuMiA3My44IDEyMyAxNDEuNyAxNzAuNCAxNzcuOSAxMi40IDkuNCAyNy42IDE0LjEgNDMuMSAxNC4xczMwLjgtNC42IDQzLjEtMTQuMUMzNDYuNiA0MjkuNyA0MjIuNCAzNjEuOCA0NjkuNiAyODh6Il19LFU4cj0kX2UsUF9lPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNxdWFyZS1yb290LXZhcmlhYmxlIixpY29uOls1NzYsNTEyLFsic3F1YXJlLXJvb3QtYWx0Il0sImY2OTgiLCJNMjgyLjYgNzguMWM4LTI3LjMgMzMtNDYuMSA2MS40LTQ2LjFsMjAwIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJMMzQ0IDk2IDIzOC43IDQ1N2MtMy42IDEyLjMtMTQuMSAyMS4yLTI2LjggMjIuOHMtMjUuMS00LjYtMzEuNS0xNS42TDc3LjYgMjg4IDMyIDI4OGMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMmw0NS42IDBjMjIuOCAwIDQzLjggMTIuMSA1NS4zIDMxLjhsNjUuMiAxMTEuOCA4NC40LTI4OS41ek0zOTMuNCAyMzMuNGMxMi41LTEyLjUgMzIuOC0xMi41IDQ1LjMgMGw0MS40IDQxLjQgNDEuNC00MS40YzEyLjUtMTIuNSAzMi44LTEyLjUgNDUuMyAwczEyLjUgMzIuOCAwIDQ1LjNsLTQxLjQgNDEuNCA0MS40IDQxLjRjMTIuNSAxMi41IDEyLjUgMzIuOCAwIDQ1LjNzLTMyLjggMTIuNS00NS4zIDBsLTQxLjQtNDEuNC00MS40IDQxLjRjLTEyLjUgMTIuNS0zMi44IDEyLjUtNDUuMyAwcy0xMi41LTMyLjggMC00NS4zbDQxLjQtNDEuNC00MS40LTQxLjRjLTEyLjUtMTIuNS0xMi41LTMyLjggMC00NS4zeiJdfSxXOHI9UF9lLElfZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJoYW5kcy1idWJibGVzIixpY29uOls1MTIsNTEyLFsiaGFuZHMtd2FzaCJdLCJlMDVlIiwiTTM4NCA2NGEzMiAzMiAwIDEgMCAwLTY0IDMyIDMyIDAgMSAwIDAgNjR6bTk2IDEyOGEzMiAzMiAwIDEgMCAwLTY0IDMyIDMyIDAgMSAwIDAgNjR6TTEyOCA0NjRhNDggNDggMCAxIDAgLTk2IDAgNDggNDggMCAxIDAgOTYgMHpNMCAxNjBsLjEgNzIuNmMwIDQ0LjggMTcuNiA4Ny4xIDQ3LjkgMTE4LjQgLjMtNzcgNDAuMS0xNDguNCAxMDUuNC0xODkuM2wxLjktMS4yYy0yLjUtMy43LTIuOC04LjYtLjQtMTIuN2w2Mi0xMDcuNGM2LjYtMTEuNSAyLjctMjYuMi04LjgtMzIuOFMxODIgNSAxNzUuNCAxNi41bC02OCAxMTcuOCAwIDAgMCAwLTQzLjMgNzUgMC00OS4zYzAtMTcuNy0xNC40LTMyLTMyLTMyUzAgMTQyLjQgMCAxNjB6bTIxMy42LTM1LjljMTQuMS04LjggMjkuOC0xMi43IDQ1LjItMTIuMWwzNi41LTYzLjNjNi42LTExLjUgMi43LTI2LjItOC44LTMyLjhzLTI2LjItMi43LTMyLjggOC44bC02Ny4xIDExNi4yIDI3LTE2Ljl6bTg2LjUtMzUuN2wtMTYuNCAyOC40YzE1LjEgNS41IDI4LjYgMTUuNiAzOC4zIDI5LjdsMTkuNy0zNC4yYzYuNi0xMS41IDIuNy0yNi4yLTguOC0zMi44cy0yNi4yLTIuNy0zMi44IDguOHptNDYuNCA2My43bC0xMi41IDIxLjdjMiA4LjYgMi41IDE3LjUgMS43IDI2LjFsNC4zIDAgMCAwIDM0LjQgMCAxMy43LTIzLjhjNi42LTExLjUgMi43LTI2LjItOC44LTMyLjhzLTI2LjItMi43LTMyLjggOC44ek0yODMuMSAxNzVjLTkuNC0xNS0yOS4xLTE5LjUtNDQuMS0xMC4ybC02MC4yIDM3LjZDMTI3LjMgMjM0LjcgOTYgMjkxLjIgOTYgMzUybDAgOGMwIDguOSAuOCAxNy42IDIuMiAyNi4xIDM1LjQgOC4yIDYxLjggNDAgNjEuOCA3Ny45IDAgNi4zLS43IDEyLjUtMi4xIDE4LjQgMjUuMiAxOC42IDU2LjQgMjkuNiA5MC4xIDI5LjZsMTc2IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTkyIDBjLTYuNiAwLTEyLTUuNC0xMi0xMnM1LjQtMTIgMTItMTJsMTI0IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTEyNCAwYy02LjYgMC0xMi01LjQtMTItMTJzNS40LTEyIDEyLTEybDE1NiAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC0xNTYgMGMtNi42IDAtMTItNS40LTEyLTEyczUuNC0xMiAxMi0xMmwxMjQgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtMTM2IDAgMCAwIDAgMC05My4yIDAgNDYuMi0yOC45YzE1LTkuNCAxOS41LTI5LjEgMTAuMi00NC4xeiJdfSxHOHI9SV9lLFk4cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtYXJrZXIiLGljb246WzUxMiw1MTIsW10sImY1YTEiLCJNNDA4LjggMGMtMjcuNCAwLTUzLjYgMTAuOS03MyAzMC4yTDMxOC4xIDQ4IDMwNSAzNC45Yy0yOC4xLTI4LjEtNzMuNy0yOC4xLTEwMS44IDBMMTAzIDEzNWMtOS40IDkuNC05LjQgMjQuNiAwIDMzLjlzMjQuNiA5LjQgMzMuOSAwTDIzNy4xIDY4LjljOS40LTkuNCAyNC42LTkuNCAzMy45IDBMMjg0LjEgODEuOSAxODQgMTgyLjEgMzI5LjkgMzI4IDQ4MS44IDE3Ni4yYzE5LjQtMTkuNCAzMC4yLTQ1LjYgMzAuMi03MyAwLTU3LTQ2LjItMTAzLjItMTAzLjItMTAzLjJ6TTEwMi40IDI2My43Yy00OS45IDQ5LjktODMuMyAxMTQtOTUuNSAxODMuNUwuNCA0ODMuOEMtMSA0OTEuNiAxLjUgNDk5LjQgNyA1MDVzMTMuNCA4IDIxLjEgNi43bDM2LjctNi41YzY5LjUtMTIuMyAxMzMuNi00NS42IDE4My41LTk1LjVMMjk2IDM2MS45IDE1MC4xIDIxNiAxMDIuNCAyNjMuN3oiXX0sWjhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNsaXBib2FyZCIsaWNvbjpbMzg0LDUxMixbMTI4MjAzXSwiZjMyOCIsIk0zMjAgMzJsLTguNiAwQzMwMC40IDEyLjkgMjc5LjcgMCAyNTYgMEwxMjggMEMxMDQuMyAwIDgzLjYgMTIuOSA3Mi42IDMyTDY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZMMCA0NDhjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMjU2IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zNTJjMC0zNS4zLTI4LjctNjQtNjQtNjR6TTEzNiAxMTJjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjRsMTEyIDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTExMiAweiJdfSxYOHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGxhY2Utb2Ytd29yc2hpcCIsaWNvbjpbNTEyLDUxMixbXSwiZjY3ZiIsIk0xNjAgNzlsMCA4MS00NC44IDMzLjZDMTAzLjEgMjAyLjcgOTYgMjE2LjkgOTYgMjMybDAgNDAtNjAuNiAzMC4zQzEzLjcgMzEzLjIgMCAzMzUuMyAwIDM1OS42TDAgNDQ4YzAgMzUuMyAyOC43IDY0IDY0IDY0IDc0LjcgMCA4NS40IDAgMzIwIDBsNjQgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTg4LjRjMC0yNC4yLTEzLjctNDYuNC0zNS40LTU3LjJMNDE2IDI3MiA0MTYgMjMyYzAtMTUuMS03LjEtMjkuMy0xOS4yLTM4LjRMMzUyIDE2MCAzNTIgNzljMC05LjUtNC4yLTE4LjUtMTEuNS0yNC42TDI3MS40LTMuMmMtOC45LTcuNC0yMS44LTcuNC0zMC43IDBMMTcxLjUgNTQuNEMxNjQuMiA2MC41IDE2MCA2OS41IDE2MCA3OXptOTYgMjQxYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgODAtMTI4IDAgMC04MGMwLTM1LjMgMjguNy02NCA2NC02NHoiXX0sUThyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNhbm5hYmlzIixpY29uOls1MTIsNTEyLFtdLCJmNTVmIiwiTTI1NiAwYzUuMyAwIDEwLjMgMi43IDEzLjMgNy4xIDE1LjggMjMuNSAzNi43IDYzLjcgNDkuMiAxMDkgNy4zIDI2LjQgMTEuOCA1NS4zIDEwLjMgODQgMTEuNi04LjkgMjMuNy0xNi43IDM1LjktMjMuNyA0MS0yMy4zIDg0LjQtMzYuOSAxMTIuMi00Mi41IDUuMi0xIDEwLjcgLjYgMTQuNCA0LjRzNS40IDkuMiA0LjQgMTQuNWMtNS42IDI3LjctMTkuMyA3MC45LTQyLjcgMTExLjctOS4xIDE1LjktMTkuOSAzMS43LTMyLjUgNDYuMyAyNy45IDYuNiA1Mi41IDE3LjIgNjcuMyAyNS40IDUuMSAyLjggOC4yIDguMiA4LjIgMTRzLTMuMiAxMS4yLTguMiAxNGMtMTUuMiA4LjQtNDAuOSAxOS41LTY5LjggMjYuMS0yMC4yIDQuNi00Mi45IDcuMi02NS4yIDQuNmw4LjMgMzMuMmMxLjUgNi4xLS42IDEyLjUtNS41IDE2LjRzLTExLjYgNC42LTE3LjIgMS44TDI4MCA0MTcuMiAyODAgNDg4YzAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0bDAtNzAuOC01OC41IDI5LjFjLTUuNiAyLjgtMTIuMyAyLjEtMTcuMi0xLjhzLTctMTAuMy01LjUtMTYuNGw4LjMtMzMuMmMtMjIuMiAyLjYtNDUgMC02NS4yLTQuNi0yOC45LTYuNi01NC41LTE3LjYtNjkuOC0yNi4xLTUuMS0yLjgtOC4yLTguMi04LjItMTRzMy4yLTExLjIgOC4yLTE0bDYuMi0zLjNjMTUtNy42IDM2LjgtMTYuNCA2MS4xLTIyLjItMTIuNS0xNC41LTIzLjMtMzAuNC0zMi40LTQ2LjItMjMuNC00MC44LTM3LjEtODQtNDIuNy0xMTEuNy0xLjEtNS4yIC42LTEwLjcgNC40LTE0LjVzOS4yLTUuNCAxNC40LTQuNGMyNy45IDUuNSA3MS4yIDE5LjIgMTEyLjIgNDIuNSAxMi4yIDYuOSAyNC4zIDE0LjggMzUuOCAyMy43LTEuNC0yOC43IDMuMS01Ny42IDEwLjMtODQgMTIuNS00NS4zIDMzLjQtODUuNSA0OS4yLTEwOWwxLjItMS42QzI0Ni45IDIgMjUxLjMgMCAyNTYgMHoiXX0sSzhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBlb3BsZS1yb29mIixpY29uOls1NzYsNTEyLFtdLCJlNTM3IiwiTTMwMi4zLTEyLjZjLTktNC41LTE5LjYtNC41LTI4LjYgMGwtMjU2IDEyOEMxLjkgMTIzLjMtNC41IDE0Mi41IDMuNCAxNTguM3MyNy4xIDIyLjIgNDIuOSAxNC4zTDI4OCA1MS44IDUyOS43IDE3Mi42YzE1LjggNy45IDM1IDEuNSA0Mi45LTE0LjNzMS41LTM1LTE0LjMtNDIuOWwtMjU2LTEyOHpNMjg4IDI3MmE1NiA1NiAwIDEgMCAwLTExMiA1NiA1NiAwIDEgMCAwIDExMnptMCA0OGMtNTMgMC05NiA0My05NiA5NmwwIDMyYzAgMTcuNyAxNC4zIDMyIDMyIDMybDEyOCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtMzJjMC01My00My05Ni05Ni05NnpNMTYwIDI1NmE0OCA0OCAwIDEgMCAtOTYgMCA0OCA0OCAwIDEgMCA5NiAwem0zNTIgMGE0OCA0OCAwIDEgMCAtOTYgMCA0OCA0OCAwIDEgMCA5NiAwek0xMTIgMzM2Yy00NC4yIDAtODAgMzUuOC04MCA4MGwwIDMzLjFjMCAxNyAxMy44IDMwLjkgMzAuOSAzMC45bDg3LjggMGMtNC4zLTkuOC02LjctMjAuNi02LjctMzJsMC00OGMwLTE4LjQgMy41LTM2IDkuOC01Mi4yLTEyLjItNy41LTI2LjUtMTEuOC00MS44LTExLjh6TTQyNS40IDQ4MGw4Ny44IDBjMTcgMCAzMC45LTEzLjggMzAuOS0zMC45bDAtMzMuMWMwLTQ0LjItMzUuOC04MC04MC04MC0xNS4zIDAtMjkuNiA0LjMtNDEuOCAxMS44IDYuMyAxNi4yIDkuOCAzMy44IDkuOCA1Mi4ybDAgNDhjMCAxMS40LTIuNCAyMi4yLTYuNyAzMnoiXX0sSjhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImRpc2Vhc2UiLGljb246WzUxMiw1MTIsW10sImY3ZmEiLCJNMjM2LjUgMjkuNEwyMjQgNDhjLTIwIDMwLTUzLjYgNDgtODkuNyA0OEw2OCA5NmMtMzcuNSAwLTY3LjkgMzAuNC02Ny45IDY3LjkgMCAxOCA3LjIgMzUuMiAxOS45IDQ3LjlsMjcgMjdjMTEgMTEgMTcuMiAyNS45IDE3LjIgNDEuNSAwIDE1LjgtNi40IDMwLjktMTcuNyA0MkwzMy40IDMzNS4xYy0xMS4xIDEwLjgtMTcuMyAyNS43LTE3LjMgNDEuMiAwIDM2LjggMzQuMSA2NC4yIDcwLjEgNTYuMmw2Mi4zLTEzLjhjNy43LTEuNyAxNS43LTIuNiAyMy42LTIuNiAzMi44IDAgNjQuMiAxNC42IDg1LjIgMzkuOGwzMC41IDM2LjZjMTAuNCAxMi40IDI1LjcgMTkuNiA0MS45IDE5LjYgMzAuMSAwIDU0LjUtMjQuNCA1NC41LTU0LjVsMC01MS4yYzAtNDEuNCAyNS40LTc4LjUgNjQtOTMuNWwyMi4yLTguNmMyNS4yLTkuOCA0MS44LTM0LjEgNDEuOC02MS4xIDAtMjYuNC0xNS45LTUwLjMtNDAuMy02MC41TDQyOSAxNjQuOGMtMzMuMi0xMy45LTU3LjYtNDMtNjUuNS03OC4xbC03LjktMzUuMmMtNi44LTMwLjEtMzMuNS01MS41LTY0LjMtNTEuNS0yMiAwLTQyLjYgMTEtNTQuOCAyOS40ek0xNjAgMTkyYTMyIDMyIDAgMSAxIDAgNjQgMzIgMzIgMCAxIDEgMC02NHptOTYgMGEzMiAzMiAwIDEgMSA2NCAwIDMyIDMyIDAgMSAxIC02NCAwem0zMiA5NmEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6Il19LE5fZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJib29rLWJpYmxlIixpY29uOls0NDgsNTEyLFsiYmlibGUiXSwiZjY0NyIsIk05NiA1MTJjLTUzIDAtOTYtNDMtOTYtOTZMMCA5NkMwIDQzIDQzIDAgOTYgMEw0MDAgMGMyNi41IDAgNDggMjEuNSA0OCA0OGwwIDI4OGMwIDIwLjktMTMuNCAzOC43LTMyIDQ1LjNsMCA2Ni43YzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMyTDk2IDUxMnptMC0xMjhjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsMjU2IDAgMC02NC0yNTYgMHpNMTkyIDgwbDAgNDgtNDggMGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDQ4IDAgMCAxMTJjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMTEyIDQ4IDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMzJjMC04LjgtNy4yLTE2LTE2LTE2bC00OCAwIDAtNDhjMC04LjgtNy4yLTE2LTE2LTE2bC0zMiAwYy04LjggMC0xNiA3LjItMTYgMTZ6Il19LGVocj1OX2UsdGhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNoZXNzLWJvYXJkIixpY29uOls0NDgsNTEyLFtdLCJmNDNjIiwiTTY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzIwIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zMjBjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzJ6bTY0IDY0bDAgNjQgNjQgMCAwLTY0IDY0IDAgMCA2NCA2NCAwIDAtNjQgNjQgMCAwIDY0LTY0IDAgMCA2NCA2NCAwIDAgNjQtNjQgMCAwIDY0IDY0IDAgMCA2NC02NCAwIDAtNjQtNjQgMCAwIDY0LTY0IDAgMC02NC02NCAwIDAgNjQtNjQgMCAwLTY0IDY0IDAgMC02NC02NCAwIDAtNjQgNjQgMCAwLTY0LTY0IDAgMC02NCA2NCAwem02NCAxMjhsNjQgMCAwLTY0LTY0IDAgMCA2NHptMCA2NGwwLTY0LTY0IDAgMCA2NCA2NCAwem02NCAwbC02NCAwIDAgNjQgNjQgMCAwLTY0em0wIDBsNjQgMCAwLTY0LTY0IDAgMCA2NHoiXX0scmhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im1hcnMiLGljb246WzUxMiw1MTIsWzk3OTRdLCJmMjIyIiwiTTMyMCAzMmMwLTE3LjcgMTQuMy0zMiAzMi0zMkw0ODAgMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDEyOGMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTUwLjctOTUgOTVjMTkuNSAyOC40IDMxIDYyLjcgMzEgOTkuOCAwIDk3LjItNzguOCAxNzYtMTc2IDE3NlMzMiA0MDEuMiAzMiAzMDQgMTEwLjggMTI4IDIwOCAxMjhjMzcgMCA3MS40IDExLjQgOTkuOCAzMWw5NS05NS01MC43IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyek0yMDggNDE2YTExMiAxMTIgMCAxIDAgMC0yMjQgMTEyIDExMiAwIDEgMCAwIDIyNHoiXX0sYWhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImxhcHRvcCIsaWNvbjpbNjQwLDUxMixbMTI4MTg3XSwiZjEwOSIsIk0xMjggMzJDOTIuNyAzMiA2NCA2MC43IDY0IDk2bDAgMjQwIDY0IDAgMC0yNDAgMzg0IDAgMCAyNDAgNjQgMCAwLTI0MGMwLTM1LjMtMjguNy02NC02NC02NEwxMjggMzJ6TTE5LjIgMzg0QzguNiAzODQgMCAzOTIuNiAwIDQwMy4yIDAgNDQ1LjYgMzQuNCA0ODAgNzYuOCA0ODBsNDg2LjQgMGM0Mi40IDAgNzYuOC0zNC40IDc2LjgtNzYuOCAwLTEwLjYtOC42LTE5LjItMTkuMi0xOS4yTDE5LjIgMzg0eiJdfSxGX2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidXNlci14bWFyayIsaWNvbjpbNTc2LDUxMixbInVzZXItdGltZXMiXSwiZjIzNSIsIk0yNTQuMSAzMDRjOTguNSAwIDE3OC4zIDc5LjggMTc4LjMgMTc4LjMgMCAxNi40LTEzLjMgMjkuNy0yOS43IDI5LjdMNDYuMSA1MTJjLTE2LjQgMC0yOS43LTEzLjMtMjkuNy0yOS43IDAtOTguNSA3OS44LTE3OC4zIDE3OC4zLTE3OC4zbDU5LjQgMHpNNTMwLjMgMTA4LjFjOS40LTkuNCAyNC42LTkuNCAzMy45IDBzOS40IDI0LjYgMCAzMy45bC0zMy45IDMzLjkgMzMuOSAzMy45YzkuNCA5LjQgOS40IDI0LjYgMCAzMy45cy0yNC42IDkuNC0zMy45IDBsLTMzLjktMzMuOS0zMy45IDMzLjljLTkuNCA5LjQtMjQuNiA5LjQtMzMuOSAwcy05LjQtMjQuNiAwLTMzLjlsMzMuOS0zMy45LTMzLjktMzMuOWMtOS40LTkuNC05LjQtMjQuNiAwLTMzLjlzMjQuNi05LjQgMzMuOSAwbDMzLjkgMzMuOSAzMy45LTMzLjl6TTIyNC40IDI0OGExMjAgMTIwIDAgMSAxIDAtMjQwIDEyMCAxMjAgMCAxIDEgMCAyNDB6Il19LGlocj1GX2Usb2hyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZsYWctdXNhIixpY29uOls0NDgsNTEyLFtdLCJmNzRkIiwiTTMyIDBDNDkuNyAwIDY0IDE0LjMgNjQgMzJsMCAxNiA2OS0xNy4yYzM4LjEtOS41IDc4LjMtNS4xIDExMy41IDEyLjUgNDYuMyAyMy4yIDEwMC44IDIzLjIgMTQ3LjEgMGw5LjYtNC44QzQyMy44IDI4LjEgNDQ4IDQzLjEgNDQ4IDY2LjFsMCAzNi4xLTQ0LjcgMTYuMmMtNDIuOCAxNS42LTkwIDEzLjktMTMxLjYtNC42bC0xNi4xLTcuMmMtMjAuMy05LTQxLjgtMTQuNy02My42LTE2LjlsMCAzMi4yYzE3LjQgMi4xIDM0LjQgNi43IDUwLjYgMTMuOWwxNi4xIDcuMmM0OS4yIDIxLjkgMTA1IDIzLjggMTU1LjYgNS40bDMzLjctMTIuMyAwIDYyLTQ0LjcgMTYuMmMtNDIuOCAxNS42LTkwIDEzLjktMTMxLjYtNC42bC0xNi4xLTcuMmMtNDAuMi0xNy45LTg1LTIyLjUtMTI4LjEtMTMuM2wtNjMuNSAxMy42IDAgMzIuNyA3MC4yLTE1LjFjMzYuNC03LjggNzQuMy0zLjkgMTA4LjQgMTEuM2wxNi4xIDcuMmM0OS4yIDIxLjkgMTA1IDIzLjggMTU1LjYgNS40bDMzLjctMTIuMyAwIDYxLjktNDQuNyAxNi4yYy00Mi44IDE1LjYtOTAgMTMuOS0xMzEuNi00LjZsLTE2LjEtNy4yYy00MC4yLTE3LjktODUtMjIuNS0xMjguMS0xMy4zbC02My41IDEzLjYgMCAzMi43IDcwLjItMTUuMWMzNi40LTcuOCA3NC4zLTMuOSAxMDguNCAxMS4zbDE2LjEgNy4yYzQ5LjIgMjEuOSAxMDUgMjMuOCAxNTUuNiA1LjRsMzMuNy0xMi4zIDAgMzMuNWMwIDEzLjMtOC4zIDI1LjMtMjAuOCAzMGwtMzQuNyAxM2MtNDYuMiAxNy4zLTk3LjYgMTQuNi0xNDEuNy03LjQtMzcuOS0xOS04MS40LTIzLjctMTIyLjUtMTMuNEw2NCA0MDAgNjQgNDgwYzAgMTcuNy0xNC4zIDMyLTMyIDMyUzAgNDk3LjcgMCA0ODBMMCAzMkMwIDE0LjMgMTQuMyAwIDMyIDB6bTgwIDk2YTE2IDE2IDAgMSAwIC0zMiAwIDE2IDE2IDAgMSAwIDMyIDB6bTMyIDBhMTYgMTYgMCAxIDAgMC0zMiAxNiAxNiAwIDEgMCAwIDMyem0tMzIgNDhhMTYgMTYgMCAxIDAgLTMyIDAgMTYgMTYgMCAxIDAgMzIgMHptMzIgMGExNiAxNiAwIDEgMCAwLTMyIDE2IDE2IDAgMSAwIDAgMzJ6Il19LG5ocj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJoYW5kLW1pZGRsZS1maW5nZXIiLGljb246WzQ0OCw1MTIsWzEyODQwNV0sImY4MDYiLCJNMjMyIDBjLTIyLjEgMC00MCAxNy45LTQwIDQwbDAgMTY0LjJjLTguNS03LjYtMTkuNy0xMi4yLTMyLTEyLjItMjYuNSAwLTQ4IDIxLjUtNDggNDhsMCA4MGMwIDguOC03LjIgMTYtMTYgMTZzLTE2LTcuMi0xNi0xNmwwLTU1LjdjLTIgMS40LTMuOSAzLTUuOCA0LjVMNTUgMjg0LjhDNDAuNCAyOTcgMzIgMzE1IDMyIDMzNEwzMiAzNzJjMCAzOCAxNi45IDc0IDQ2LjEgOTguM2w1LjQgNC41YzI4LjggMjQgNjUgMzcuMSAxMDIuNCAzNy4xTDMwNCA1MTJjNzAuNyAwIDEyOC01Ny4zIDEyOC0xMjhsMC05NmMwLTI2LjUtMjEuNS00OC00OC00OC0xMi40IDAtMjMuNiA0LjctMzIuMSAxMi4zLTEuOS0yNC44LTIyLjYtNDQuMy00Ny45LTQ0LjMtMTIuMyAwLTIzLjUgNC42LTMyIDEyLjJMMjcyIDQwYzAtMjIuMS0xNy45LTQwLTQwLTQweiJdfSxzaHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibW9ydGFyLXBlc3RsZSIsaWNvbjpbNTEyLDUxMixbXSwiZjVhNyIsIk01MDQuMyAxMS4xQzQ5My4zLTEuNiA0NzQuNS0zLjcgNDYxIDYuMkwyNTIuMyAxNjAgMzk3LjMgMTYwIDUwMi42IDU0LjZjMTEuOC0xMS44IDEyLjYtMzAuOCAxLjYtNDMuNXpNMzIgMTkyYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMyYzAgODIuNSA0My40IDE0Ny43IDEyMy45IDE3Ni4yLTExLjEgMTMuOS0xOS40IDMwLjMtMjMuOSA0OC4xLTQuNCAxNy4xIDEwLjQgMzEuNyAyOC4xIDMxLjdsMTkyIDBjMTcuNyAwIDMyLjQtMTQuNiAyOC4xLTMxLjctNC41LTE3LjgtMTIuOC0zNC4xLTIzLjktNDguMSA4MC41LTI4LjYgMTIzLjktOTMuNyAxMjMuOS0xNzYuMiAxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMkwzMiAxOTJ6Il19LGxocj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJoZWFkLXNpZGUtY291Z2giLGljb246WzUxMiw1MTIsW10sImUwNjEiLCJNOTYgNTEybDY0IDBjNTMgMCA5Ni00MyA5Ni05NmwwLTgwYzAtOC44IDcuMi0xNiAxNi0xNmwxIDBjMjYgMCA0Ny0yMSA0Ny00NyAwLTExLTMuOS0yMS42LTEwLjktMzAuMUwyNzMuMyAyMDBDMjcxLjQgMTk3LjYgMjcwLjEgMTk0LjcgMjY5LjcgMTkxLjcgMjU0IDgzLjMgMTYwLjcgMCA0OCAwIDQwLjQgMCAzMi45IC40IDI1LjQgMS4xIDEwLjUgMi42IDAgMTUuOSAwIDMwLjlMMCA0ODBjMCAxNy43IDE0LjMgMzIgMzIgMzJsNjQgMHptMTYtMzIwYTMyIDMyIDAgMSAxIDY0IDAgMzIgMzIgMCAxIDEgLTY0IDB6bTYzLjEgMjM3LjJsLTQxLjUtMy41Yy0xMi4yLTEtMjEuNi0xMS4yLTIxLjYtMjMuNCAwLTEwLjggNy4zLTIwLjIgMTcuOC0yMi44bDQwLjQtMTAuMWMxOS4yLTQuOCAzNy44IDkuNyAzNy44IDI5LjUgMCAxNy44LTE1LjIgMzEuOC0zMi45IDMwLjN6TTQ4MCAzMTJhMjQgMjQgMCAxIDAgMC00OCAyNCAyNCAwIDEgMCAwIDQ4em0tNDAgMjRhMjQgMjQgMCAxIDAgLTQ4IDAgMjQgMjQgMCAxIDAgNDggMHptLTY0IDQ4YTI0IDI0IDAgMSAwIC00OCAwIDI0IDI0IDAgMSAwIDQ4IDB6bTEyOCAwYTI0IDI0IDAgMSAwIC00OCAwIDI0IDI0IDAgMSAwIDQ4IDB6TTQ4MCA1MDRhMjQgMjQgMCAxIDAgMC00OCAyNCAyNCAwIDEgMCAwIDQ4em0tNDAtNzJhMjQgMjQgMCAxIDAgLTQ4IDAgMjQgMjQgMCAxIDAgNDggMHoiXX0sY2hyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBsYW5lLWxvY2siLGljb246WzY0MCw1MTIsW10sImU1NTgiLCJNMjMyIDI0YzAtMzAuOSAyNS4xLTU2IDU2LTU2czU2IDI1LjEgNTYgNTZsMCAxMjcuMyA4Mi4xIDc1LjJDNDA5LjcgMjQ4LjEgNDAwIDI3NC45IDQwMCAzMDRsMCAyNC40Yy03LjMgNi42LTEzLjYgMTQuMi0xOC43IDIyLjdsLTM3LjMtMTIuNCAwIDk5LjcgMjQgMTkuMiAwIDM4LjNjMCAxMy41IDIuOCAyNi40IDcuOCAzOC4xTDI4OCA1MTIgMTc5LjkgNTM5Yy0xMC4xIDIuNS0xOS45LTUuMS0xOS45LTE1LjVsMC0xOS44YzAtNC45IDIuMi05LjUgNi0xMi41bDY2LTUyLjggMC05OS43LTE2Mi45IDU0LjNDNTguNyAzOTYuNCA0OCAzODguNyA0OCAzNzcuOGwwLTQzLjdjMC05IDMuOC0xNy41IDEwLjQtMjMuNkwyMzIgMTUxLjMgMjMyIDI0ek01NjAgMzA0LjFjMC0xNy43LTE0LjMtMzItMzItMzJzLTMyIDE0LjMtMzIgMzJsMCA0Ny45IDY0IDAgMC00Ny45ek00MTYgNDAwYzAtMjAuOSAxMy40LTM4LjcgMzItNDUuM2wwLTUwLjZjMC00NC4yIDM1LjgtODAgODAtODBzODAgMzUuOCA4MCA4MGwwIDUwLjZjMTguNiA2LjYgMzIgMjQuNCAzMiA0NS4zbDAgOTZjMCAyNi41LTIxLjUgNDgtNDggNDhsLTEyOCAwYy0yNi41IDAtNDgtMjEuNS00OC00OGwwLTk2eiJdfSxPX2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYmF0dGVyeS10aHJlZS1xdWFydGVycyIsaWNvbjpbNjQwLDUxMixbImJhdHRlcnktNCJdLCJmMjQxIiwiTTUyOCAxMjhjOC44IDAgMTYgNy4yIDE2IDE2bDAgMjI0YzAgOC44LTcuMiAxNi0xNiAxNmwtNDE2IDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTIyNGMwLTguOCA3LjItMTYgMTYtMTZsNDE2IDB6TTExMiA2NGMtNDQuMiAwLTgwIDM1LjgtODAgODBsMCAyMjRjMCA0NC4yIDM1LjggODAgODAgODBsNDE2IDBjNDQuMiAwIDgwLTM1LjggODAtODBsMC00OGMxNy43IDAgMzItMTQuMyAzMi0zMmwwLTY0YzAtMTcuNy0xNC4zLTMyLTMyLTMybDAtNDhjMC00NC4yLTM1LjgtODAtODAtODBMMTEyIDY0em01NiAxMTJjLTEzLjMgMC0yNCAxMC43LTI0IDI0bDAgMTEyYzAgMTMuMyAxMC43IDI0IDI0IDI0bDIyNCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0bDAtMTEyYzAtMTMuMy0xMC43LTI0LTI0LTI0bC0yMjQgMHoiXX0sZGhyPU9fZSx1aHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZnJhbmMtc2lnbiIsaWNvbjpbMzIwLDUxMixbXSwiZTE4ZiIsIk04MCAzMkM2Mi4zIDMyIDQ4IDQ2LjMgNDggNjRsMCAyNTYtMjQgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwyNCAwIDAgODBjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTgwIDg4IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTg4IDAgMC02NCAxNDQgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtMTQ0IDAgMC05NiAxNzYgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMkw4MCAzMnoiXX0sUl9lPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZpbHRlci1jaXJjbGUtZG9sbGFyIixpY29uOls1NzYsNTEyLFsiZnVubmVsLWRvbGxhciJdLCJmNjYyIiwiTTMyIDY0QzE5LjEgNjQgNy40IDcxLjggMi40IDgzLjhTLjIgMTA5LjUgOS40IDExOC42TDE5MiAzMDEuMyAxOTIgNDE2YzAgOC41IDMuNCAxNi42IDkuNCAyMi42bDY0IDY0YzIuNSAyLjUgNS4zIDQuNSA4LjMgNi0yMS4yLTMwLjktMzMuNi02OC4zLTMzLjYtMTA4LjYgMC05OS40IDc1LjUtMTgxLjEgMTcyLjMtMTkxbDkwLjQtOTAuNGM5LjItOS4yIDExLjktMjIuOSA2LjktMzQuOVM0OTIuOSA2NCA0ODAgNjRMMzIgNjR6TTU3NiA0MDBhMTQ0IDE0NCAwIDEgMCAtMjg4IDAgMTQ0IDE0NCAwIDEgMCAyODggMHpNNDE2IDMyMGMwLTguOCA3LjItMTYgMTYtMTZzMTYgNy4yIDE2IDE2bDAgOCAxNiAwYzguOCAwIDE2IDcuMiAxNiAxNnMtNy4yIDE2LTE2IDE2bC00NS44IDBjLTUuNiAwLTEwLjIgNC42LTEwLjIgMTAuMiAwIDQuOSAzLjUgOS4xIDguMyAxMGw0NSA4LjJjMjAgMy42IDM0LjYgMjEuMSAzNC42IDQxLjUgMCAyMy4zLTE4LjkgNDIuMi00Mi4yIDQyLjJsLTUuOCAwIDAgOGMwIDguOC03LjIgMTYtMTYgMTZzLTE2LTcuMi0xNi0xNmwwLTgtMTYgMGMtOC44IDAtMTYtNy4yLTE2LTE2czcuMi0xNiAxNi0xNmw1My44IDBjNS42IDAgMTAuMi00LjYgMTAuMi0xMC4yIDAtNC45LTMuNS05LjEtOC4zLTEwbC00NS04LjJjLTIwLTMuNi0zNC42LTIxLjEtMzQuNi00MS41IDAtMjIuNiAxNy43LTQxIDQwLTQyLjFsMC04LjF6Il19LGZocj1SX2UscGhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNoZWVzZSIsaWNvbjpbNTEyLDUxMixbXSwiZjdlZiIsIk01MTIgMjQwLjJsMCAxNS44LTUxMiAwYzAtMjAgMTAtMzguNyAyNi42LTQ5LjhMMjc0LjkgNDAuN2M4LjYtNS43IDE4LjYtOC43IDI4LjktOC43IDExNSAwIDIwOC4yIDkzLjIgMjA4LjIgMjA4LjJ6bTAgNjMuOGwwIDExMmMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA0ODBjLTM1LjMgMC02NC0yOC43LTY0LTY0bDAtMTEyIDUxMiAweiJdfSxCX2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2lyY2xlLWgiLGljb246WzUxMiw1MTIsWzk0MDUsImhvc3BpdGFsLXN5bWJvbCJdLCJmNDdlIiwiTTI1NiA1MTJhMjU2IDI1NiAwIDEgMCAwLTUxMiAyNTYgMjU2IDAgMSAwIDAgNTEyem05Ni0zNDRsMCAxNzZjMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjRsMC02NC05NiAwIDAgNjRjMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjRsMC0xNzZjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNGwwIDY0IDk2IDAgMC02NGMwLTEzLjMgMTAuNy0yNCAyNC0yNHMyNCAxMC43IDI0IDI0eiJdfSxoaHI9Ql9lLG1ocj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzY2hvb2wiLGljb246WzU3Niw1MTIsWzEyNzk3OV0sImY1NDkiLCJNMCAxOTJjMC0zNS4zIDI4LjctNjQgNjQtNjRsNjQgMCAxMjcuOS0xMTUuMWMxOC4zLTE2LjQgNDYtMTYuNCA2NC4yIDBMNDQ4IDEyOCA1MTIgMTI4YzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMjU2YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDUxMmMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCAxOTJ6TTIyNCAzNzZsMCA4OCAxMjggMCAwLTg4YzAtMjIuMS0xNy45LTQwLTQwLTQwbC00OCAwYy0yMi4xIDAtNDAgMTcuOS00MCA0MHptLTExMiA4YzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDB6bTE2LTE0NGwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDBjOC44IDAgMTYtNy4yIDE2LTE2ek00OTYgMzg0YzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDB6bTE2LTE0NGwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDBjOC44IDAgMTYtNy4yIDE2LTE2ek0yODggMjU2YTY0IDY0IDAgMSAwIDAtMTI4IDY0IDY0IDAgMSAwIDAgMTI4eiJdfSxnaHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZGljZS1maXZlIixpY29uOls0NDgsNTEyLFs5ODYwXSwiZjUyMyIsIk02NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgNDE2YzAgMzUuMyAyOC43IDY0IDY0IDY0bDMyMCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMzIwYzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDMyem02NCA5NmEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6TTk2IDM1MmEzMiAzMiAwIDEgMSA2NCAwIDMyIDMyIDAgMSAxIC02NCAwek0yMjQgMjI0YTMyIDMyIDAgMSAxIDAgNjQgMzIgMzIgMCAxIDEgMC02NHptNjQtNjRhMzIgMzIgMCAxIDEgNjQgMCAzMiAzMiAwIDEgMSAtNjQgMHptMzIgMTYwYTMyIDMyIDAgMSAxIDAgNjQgMzIgMzIgMCAxIDEgMC02NHoiXX0seGhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRvcm5hZG8iLGljb246WzQ0OCw1MTIsWzEyNzc4Nl0sImY3NmYiLCJNMCAzMkwwIDQ1LjZDMCA2Mi43IDEuNyA3OS42IDUgOTZsMzUyLjggMGMzLjItNi45IDcuNS0xMy4zIDEzLTE4LjhsMzguNi0zOC42YzQuMi00LjIgNi42LTEwIDYuNi0xNiAwLTEyLjUtMTAuMS0yMi42LTIyLjYtMjIuNkwzMiAwQzE0LjMgMCAwIDE0LjMgMCAzMnpNMzU1LjcgMTQ0bC0zMzYgMGMxMi40IDI5LjcgMzAuMiA1Ni44IDUyLjcgODBsMzM5LjYgMC00Ny4yLTYyLjljLTMuOS01LjItNy0xMS05LjItMTcuMXpNMjQyLjYgMzM0LjdjOC4yIDQuOCAxNS44IDEwLjcgMjIuNSAxNy4zTDQ0NSAzNTJjMi05LjggMy0xOS45IDMtMzAuMSAwLTE3LjEtMi45LTM0LTguNi00OS45TDEzNiAyNzIgMjQyLjYgMzM0Ljd6TTI5NC4zIDQwMGM1LjMgMTcgNi41IDM1LjIgMy42IDUzbC01LjkgMzUuN2MtMiAxMi4yIDcuNCAyMy40IDE5LjggMjMuNCA1LjMgMCAxMC40LTIuMSAxNC4yLTUuOWw3OC4yLTc4LjJjOC41LTguNSAxNS44LTE3LjggMjEuOS0yNy45bC0xMzEuOCAweiJdfSxIX2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiamV0LWZpZ2h0ZXIiLGljb246WzU3Niw1MTIsWyJmaWdodGVyLWpldCJdLCJmMGZiIiwiTTQ5Ni4yIDIwNi44Yy0xMC43LTQuNS0yMi4yLTYuOC0zMy44LTYuOEwzNjIgMjAwIDI0OCA0OCAyOTYgNDhjMTMuMyAwIDI0LTEwLjcgMjQtMjRTMzA5LjMgMCAyOTYgMEwxNTIgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGw4IDAgMCAxNTItNTQuNCAwLTUyLjgtNjZjLTMtMy44LTcuNi02LTEyLjUtNkwxNiAxMjhjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDg4IDQwIDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTQwIDAgMCA4OGMwIDguOCA3LjIgMTYgMTYgMTZsMjQuMyAwYzQuOSAwIDkuNS0yLjIgMTIuNS02bDUyLjgtNjYgNTQuNCAwIDAgMTUyLTggMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwxNDQgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtNDggMCAxMTQtMTUyIDEwMC40IDBjMTEuNiAwIDIzLjEtMi4zIDMzLjgtNi44bDY1LTI3LjFjOC45LTMuNyAxNC44LTEyLjUgMTQuOC0yMi4ycy01LjgtMTguNC0xNC44LTIyLjJsLTY1LTI3LjF6Il19LGJocj1IX2UsdmhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRodW1icy1kb3duIixpY29uOls1MTIsNTEyLFsxMjgwNzgsNjE1NzZdLCJmMTY1IiwiTTM4NCAzMmMyNi41IDAgNDggMjEuNSA0OCA0OCAwIDYuMy0xLjMgMTIuMi0zLjQgMTcuNyAyMC40IDUuNSAzNS40IDI0LjEgMzUuNCA0Ni4zIDAgOS4xLTIuNiAxNy42LTcgMjQuOSAyMi4yIDQuMiAzOSAyMy43IDM5IDQ3LjEgMCAxOS43LTExLjkgMzYuNi0yOC45IDQ0IDE3IDcuNCAyOC45IDI0LjMgMjguOSA0NCAwIDI2LjUtMjEuNSA0OC00OCA0OGwtMTYwIDAgMjguMiA3MC40YzIuNSA2LjMgMy44IDEzLjEgMy44IDE5LjlsMCA0LjJjMCAyNy4zLTIyLjEgNDkuNC00OS40IDQ5LjQtMTguNyAwLTM1LjgtMTAuNi00NC4yLTI3LjNMMTcwLjEgMzU2LjNjLTYuNy0xMy4zLTEwLjEtMjgtMTAuMS00Mi45bDAtMTg2LjZjMC0xOS40IDguOS0zNy44IDI0LTUwbDEyLjItOS43QzIyNC42IDQ0LjQgMjU5LjggMzIgMjk2LjEgMzJMMzg0IDMyek04MCA5NmMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDI1NmMwIDE3LjctMTQuMyAzMi0zMiAzMmwtNDggMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJMMCAxMjhjMC0xNy43IDE0LjMtMzIgMzItMzJsNDggMHoiXX0seWhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJyb29tIixpY29uOls1NzYsNTEyLFsxMjk1MjldLCJmNTFhIiwiTTU2Ni42IDU0LjZjMTIuNS0xMi41IDEyLjUtMzIuOCAwLTQ1LjNzLTMyLjgtMTIuNS00NS4zIDBsLTE5MiAxOTItMzQuNy0zNC43Yy00LjItNC4yLTEwLTYuNi0xNi02LjYtMTIuNSAwLTIyLjYgMTAuMS0yMi42IDIyLjZsMCAyOS4xIDEwOC4zIDEwOC4zIDI5LjEgMGMxMi41IDAgMjIuNi0xMC4xIDIyLjYtMjIuNiAwLTYtMi40LTExLjgtNi42LTE2bC0zNC43LTM0LjcgMTkyLTE5MnpNMzQxLjEgMzUzLjRMMjIyLjYgMjM0LjljLTQyLjctMy43LTg1LjIgMTEuNy0xMTUuOCA0Mi4zbC04IDhjLTIyLjMgMjIuMy0zNC44IDUyLjUtMzQuOCA4NCAwIDYuOCA3LjEgMTEuMiAxMy4yIDguMmw1MS4xLTI1LjVjNS0yLjUgOS41IDQuMSA1LjQgNy45TDcuMyA0NzMuNEMyLjcgNDc3LjYgMCA0ODMuNiAwIDQ4OS45IDAgNTAyLjEgOS45IDUxMiAyMi4xIDUxMmwxNzMuMyAwYzM4LjggMCA3NS45LTE1LjQgMTAzLjQtNDIuOCAzMC42LTMwLjYgNDUuOS03My4xIDQyLjMtMTE1Ljh6Il19LHFfZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmaWxlLWltcG9ydCIsaWNvbjpbMzg0LDUxMixbImFycm93LXJpZ2h0LXRvLWZpbGUiXSwiZjU2ZiIsIk02NCAwQzI4LjcgMCAwIDI4LjcgMCA2NGwwIDI0MCAxODIuMSAwLTMxLTMxYy05LjQtOS40LTkuNC0yNC42IDAtMzMuOXMyNC42LTkuNCAzMy45IDBsNzIgNzJjOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlsLTcyIDcyYy05LjQgOS40LTI0LjYgOS40LTMzLjkgMHMtOS40LTI0LjYgMC0zMy45bDMxLTMxLTE4Mi4xIDAgMCA5NmMwIDM1LjMgMjguNyA2NCA2NCA2NGwyNTYgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTI3Ny41YzAtMTctNi43LTMzLjMtMTguNy00NS4zTDI1OC43IDE4LjdDMjQ2LjcgNi43IDIzMC41IDAgMjEzLjUgMEw2NCAwek0zMjUuNSAxNzZMMjMyIDE3NmMtMTMuMyAwLTI0LTEwLjctMjQtMjRMMjA4IDU4LjUgMzI1LjUgMTc2eiJdfSx3aHI9cV9lLGpfZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ1dGVuc2lscyIsaWNvbjpbNTEyLDUxMixbMTI3ODYwLDYxNjg1LCJjdXRsZXJ5Il0sImYyZTciLCJNNjMuOSAxNC40QzYzLjEgNi4yIDU2LjIgMCA0OCAwcy0xNS4xIDYuMi0xNiAxNC4zTDE3LjkgMTQ5LjdjLTEuMyA2LTEuOSAxMi4xLTEuOSAxOC4yIDAgNDUuOSAzNS4xIDgzLjYgODAgODcuN0w5NiA0ODBjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTIyNC40YzQ0LjktNC4xIDgwLTQxLjggODAtODcuNyAwLTYuMS0uNi0xMi4yLTEuOS0xOC4yTDIyMy45IDE0LjNDMjIzLjEgNi4yIDIxNi4yIDAgMjA4IDBzLTE1LjEgNi4yLTE1LjkgMTQuNEwxNzguNSAxNDkuOWMtLjYgNS43LTUuNCAxMC4xLTExLjEgMTAuMS01LjggMC0xMC42LTQuNC0xMS4yLTEwLjJMMTQzLjkgMTQuNkMxNDMuMiA2LjMgMTM2LjMgMCAxMjggMHMtMTUuMiA2LjMtMTUuOSAxNC42TDk5LjggMTQ5LjhjLS41IDUuOC01LjQgMTAuMi0xMS4yIDEwLjItNS44IDAtMTAuNi00LjQtMTEuMS0xMC4xTDYzLjkgMTQuNHpNNDQ4IDBDNDMyIDAgMzIwIDMyIDMyMCAxNzZsMCAxMTJjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzIgMCAwIDEyOGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtNDQ4YzAtMTcuNy0xNC4zLTMyLTMyLTMyeiJdfSxNaHI9al9lLGtocj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJpZC1iYWRnZSIsaWNvbjpbMzg0LDUxMixbXSwiZjJjMSIsIk02NCAwQzI4LjcgMCAwIDI4LjcgMCA2NEwwIDQ0OGMwIDM1LjMgMjguNyA2NCA2NCA2NGwyNTYgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTM4NGMwLTM1LjMtMjguNy02NC02NC02NEw2NCAwem05NiAzNTJsNjQgMGM0NC4yIDAgODAgMzUuOCA4MCA4MCAwIDguOC03LjIgMTYtMTYgMTZMOTYgNDQ4Yy04LjggMC0xNi03LjItMTYtMTYgMC00NC4yIDM1LjgtODAgODAtODB6bS0yNC05NmE1NiA1NiAwIDEgMSAxMTIgMCA1NiA1NiAwIDEgMSAtMTEyIDB6TTE1MiA2NGw4MCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC04MCAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0eiJdfSxTaHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic3BpZGVyIixpY29uOls1MTIsNTEyLFsxMjgzNzVdLCJmNzE3IiwiTTM2OS4zLTMxYzExLjktMy41IDI0LjQgMi43IDI5IDEzLjlsLjggMi4zIDQwIDEzNmMyLjUgOC40IC4xIDE3LjUtNi4xIDIzLjdsLTY0LjEgNjQuMSA3Ni40LTIwLjggMTkuOS01OS44IC45LTIuM2M1LTExLjEgMTcuNy0xNi44IDI5LjUtMTIuOSAxMS44IDMuOSAxOC41IDE2LjEgMTUuOCAyOGwtLjcgMi40LTI0IDcyYy0yLjUgNy42LTguNyAxMy40LTE2LjUgMTUuNmwtOTEuMSAyNC44IDkxLjEgMjQuOGM3LjcgMi4xIDEzLjkgOCAxNi41IDE1LjZsMjQgNzIgLjcgMi40YzIuNyAxMS45LTQuMSAyNC4xLTE1LjggMjgtMTEuOCAzLjktMjQuNS0xLjgtMjkuNS0xMi45bC0uOS0yLjMtMTkuOS01OS44LTc2LjQtMjAuOCA2NC4xIDY0LjFjNi4xIDYuMSA4LjUgMTUuMSA2LjIgMjMuNGwtNDAgMTQ0LS44IDIuM2MtNC40IDExLjMtMTYuOCAxNy43LTI4LjggMTQuNC0xMi0zLjMtMTkuMy0xNS4yLTE3LjItMjcuMmwuNS0yLjQgMzYuMi0xMzAuNS0zNy4yLTM3LjJDMzUxIDQwNiAzMDguNCA0NDggMjU2IDQ0OHMtOTUtNDItOTYtOTQuMWwtMzcgMzcgMzYgMTIyLjMgLjYgMi40YzIuMiAxMS45LTQuOSAyMy45LTE2LjggMjcuNC0xMS45IDMuNS0yNC40LTIuNy0yOS0xMy45bC0uOC0yLjMtNDAtMTM2Yy0yLjUtOC40LS4xLTE3LjUgNi4xLTIzLjhsNjQuMS02NC4xLTc2LjQgMjAuOC0xOS45IDU5LjgtLjkgMi4zYy01IDExLjEtMTcuNyAxNi44LTI5LjUgMTIuOXMtMTguNS0xNi4xLTE1LjgtMjhsLjctMi40IDI0LTcyYzIuNS03LjYgOC43LTEzLjQgMTYuNS0xNS42bDkxLjEtMjQuOC05MS4xLTI0LjhjLTcuNy0yLjEtMTMuOS04LTE2LjUtMTUuNmwtMjQtNzItLjctMi40Yy0yLjctMTEuOSA0LjEtMjQuMSAxNS44LTI4czI0LjUgMS44IDI5LjUgMTIuOWwuOSAyLjMgMTkuOSA1OS44IDc2LjQgMjAuOC02NC4xLTY0LjFjLTYuMi02LjItOC41LTE1LjMtNi4xLTIzLjdsNDAtMTM2IC44LTIuM2M0LjYtMTEuMyAxNy4xLTE3LjQgMjktMTMuOSAxMS45IDMuNSAxOSAxNS41IDE2LjggMjcuNGwtLjYgMi40LTM2IDEyMi4zIDUzIDUzYzEtNDMuMyAzNi40LTc4LjEgNzkuOS03OC4xczc4LjkgMzQuOCA3OS45IDc4LjJsNTMuMS01My4xLTM2LTEyMi4zLS42LTIuNGMtMi4yLTEyIDQuOS0yMy45IDE2LjgtMjcuNHoiXX0semhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im1vYmlsZS1yZXRybyIsaWNvbjpbMzg0LDUxMixbXSwiZTUyNyIsIk0xNiA2NEMxNiAyOC43IDQ0LjcgMCA4MCAwTDMwNCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMzg0YzAgMzUuMy0yOC43IDY0LTY0IDY0TDgwIDUxMmMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMTYgNjR6bTgwIDk2bDAgNjRjMCAxNy43IDE0LjMgMzIgMzIgMzJsMTI4IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJsMC02NGMwLTE3LjctMTQuMy0zMi0zMi0zMmwtMTI4IDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyem04IDE5MmEyNCAyNCAwIDEgMCAwLTQ4IDI0IDI0IDAgMSAwIDAgNDh6bTI0IDcyYzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0IDEwLjcgMjQgMjQgMjQgMjQtMTAuNyAyNC0yNHptNjQtNzJhMjQgMjQgMCAxIDAgMC00OCAyNCAyNCAwIDEgMCAwIDQ4em0yNCA3MmMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNCAxMC43IDI0IDI0IDI0IDI0LTEwLjcgMjQtMjR6bTY0LTcyYTI0IDI0IDAgMSAwIDAtNDggMjQgMjQgMCAxIDAgMCA0OHptMjQgNzJjMC0xMy4zLTEwLjctMjQtMjQtMjRzLTI0IDEwLjctMjQgMjQgMTAuNyAyNCAyNCAyNCAyNC0xMC43IDI0LTI0ek0xNjggNDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsNDggMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtNDggMHoiXX0sVl9lPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNpZ25zLXBvc3QiLGljb246WzUxMiw1MTIsWyJtYXAtc2lnbnMiXSwiZjI3NyIsIk0yNTYuNCAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMmwwIDMyLTE2MCAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMmwwIDY0YzAgMTcuNyAxNC4zIDMyIDMyIDMybDE2MCAwIDAgNjQtMTUzLjQgMGMtNC4yIDAtOC4zIDEuNy0xMS4zIDQuN2wtNDggNDhjLTYuMiA2LjItNi4yIDE2LjQgMCAyMi42bDQ4IDQ4YzMgMyA3LjEgNC43IDExLjMgNC43bDE1My40IDAgMCA5NmMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtOTYgMTYwIDBjMTcuNyAwIDMyLTE0LjMgMzItMzJsMC02NGMwLTE3LjctMTQuMy0zMi0zMi0zMmwtMTYwIDAgMC02NCAxNTMuNCAwYzQuMiAwIDguMy0xLjcgMTEuMy00LjdsNDgtNDhjNi4yLTYuMiA2LjItMTYuNCAwLTIyLjZsLTQ4LTQ4Yy0zLTMtNy4xLTQuNy0xMS4zLTQuN2wtMTUzLjQgMCAwLTMyYzAtMTcuNy0xNC4zLTMyLTMyLTMyeiJdfSxDaHI9Vl9lLF9ocj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJncm91cC1hcnJvd3Mtcm90YXRlIixpY29uOls1MTIsNTEyLFtdLCJlNGY2IiwiTTM3LjYgMTIyLjNjLTExLjUgMTguNy0yMC42IDM5LTI3IDYwLjUtNSAxNi45IDQuNiAzNC44IDIxLjUgMzkuOHMzNC44LTQuNiAzOS44LTIxLjVjMTguNC02MS45IDY3LjMtMTEwLjggMTI5LjItMTI5LjIgMTYuOS01IDI2LjYtMjIuOSAyMS41LTM5LjhTMTk5LjggNS42IDE4Mi45IDEwLjZDMTYxLjQgMTcgMTQxLjEgMjYuMSAxMjIuMyAzNy42IDExMi4zIDE1LjQgODkuOSAwIDY0IDAgMjguNyAwIDAgMjguNyAwIDY0IDAgODkuOSAxNS40IDExMi4zIDM3LjYgMTIyLjN6bTQzNi43IDBjMjIuMi0xMCAzNy42LTMyLjQgMzcuNi01OC4zIDAtMzUuMy0yOC43LTY0LTY0LTY0LTI1LjkgMC00OC4zIDE1LjQtNTguMyAzNy42LTE4LjctMTEuNS0zOS0yMC42LTYwLjUtMjctMTYuOS01LTM0LjggNC42LTM5LjggMjEuNXM0LjYgMzQuOCAyMS41IDM5LjhjNjEuOSAxOC40IDExMC44IDY3LjMgMTI5LjIgMTI5LjIgNSAxNi45IDIyLjkgMjYuNiAzOS44IDIxLjVzMjYuNi0yMi45IDIxLjUtMzkuOGMtNi40LTIxLjUtMTUuNS00MS44LTI3LTYwLjV6TTUxMiA0NDhjMC0yNS45LTE1LjQtNDguMy0zNy42LTU4LjMgMTEuNS0xOC43IDIwLjYtMzkgMjctNjAuNSA1LTE2LjktNC42LTM0LjgtMjEuNS0zOS44cy0zNC44IDQuNi0zOS44IDIxLjVjLTE4LjQgNjEuOS02Ny4zIDExMC44LTEyOS4yIDEyOS4yLTE2LjkgNS0yNi42IDIyLjktMjEuNSAzOS44czIyLjkgMjYuNiAzOS44IDIxLjVjMjEuNS02LjQgNDEuOC0xNS41IDYwLjUtMjcgMTAgMjIuMiAzMi40IDM3LjYgNTguMyAzNy42IDM1LjMgMCA2NC0yOC43IDY0LTY0ek0zNy42IDM4OS43Yy0yMi4yIDEwLTM3LjYgMzIuNC0zNy42IDU4LjMgMCAzNS4zIDI4LjcgNjQgNjQgNjQgMjUuOSAwIDQ4LjMtMTUuNCA1OC4zLTM3LjYgMTguNyAxMS41IDM5IDIwLjYgNjAuNSAyNyAxNi45IDUgMzQuOC00LjYgMzkuOC0yMS41cy00LjYtMzQuOC0yMS41LTM5LjhjLTYxLjktMTguNC0xMTAuOC02Ny4zLTEyOS4yLTEyOS4yLTUtMTYuOS0yMi45LTI2LjYtMzkuOC0yMS41UzUuNiAzMTIuMiAxMC42IDMyOS4xYzYuNCAyMS41IDE1LjUgNDEuOCAyNyA2MC41ek0yNTYgMTkyYzE1LjYgMCAzMCA1LjYgNDEuMSAxNC45bC0xNS4zIDE1LjNjLTYuNiA2LjYtMS45IDE3LjggNy40IDE3LjhsNjAuNSAwYzUuNyAwIDEwLjQtNC43IDEwLjQtMTAuNGwwLTYwLjVjMC05LjMtMTEuMi0xMy45LTE3LjgtNy40bC0xMS4yIDExLjJjLTE5LjgtMTcuOS00Ni4yLTI4LjktNzUuMS0yOC45LTQzLjYgMC04MS4zIDI0LjktOTkuOCA2MS4xLTYgMTEuOC0xLjQgMjYuMyAxMC40IDMyLjNzMjYuMyAxLjQgMzIuMy0xMC40YzEwLjYtMjAuOCAzMi4yLTM0LjkgNTctMzQuOXptNTguNiA5My4xYy0xMC42IDIwLjgtMzIuMiAzNC45LTU3IDM0LjktMTUuNyAwLTMwLTUuNi00MS4xLTE0LjlsMTUuMy0xNS4zYzYuNi02LjYgMS45LTE3LjgtNy40LTE3LjhMMTY0IDI3MmMtNS43IDAtMTAuNCA0LjctMTAuNCAxMC40bDAgNjAuNWMwIDkuMyAxMS4yIDEzLjkgMTcuOCA3LjRsMTEuMi0xMS4yYzE5LjggMTcuOSA0Ni4yIDI4LjkgNzUuMSAyOC45IDQzLjYgMCA4MS4zLTI0LjkgOTkuOC02MS4xIDYtMTEuOCAxLjQtMjYuMy0xMC40LTMyLjNzLTI2LjMtMS40LTMyLjMgMTAuNHoiXX0sVGhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFycm93cy1zcGxpdC11cC1hbmQtbGVmdCIsaWNvbjpbNTEyLDUxMixbXSwiZTRiYyIsIk0zNDIuNi0yMi42Yy0xMi41LTEyLjUtMzIuOC0xMi41LTQ1LjMgMGwtOTYgOTZjLTEyLjUgMTIuNS0xMi41IDMyLjggMCA0NS4zczMyLjggMTIuNSA0NS4zIDBsNDEuNC00MS40IDAgMTk1LjljLTE4LjgtMTAuOS00MC43LTE3LjEtNjQtMTcuMWwtMTE0LjcgMCA0MS40LTQxLjRjMTIuNS0xMi41IDEyLjUtMzIuOCAwLTQ1LjNzLTMyLjgtMTIuNS00NS4zIDBsLTk2IDk2Yy0xMi41IDEyLjUtMTIuNSAzMi44IDAgNDUuM2w5NiA5NmMxMi41IDEyLjUgMzIuOCAxMi41IDQ1LjMgMHMxMi41LTMyLjggMC00NS4zTDEwOS4zIDMyMCAyMjQgMzIwYzM1LjMgMCA2NCAyOC43IDY0IDY0IDAgNzAuNyA1Ny4zIDEyOCAxMjggMTI4bDMyIDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTMyIDBjLTM1LjMgMC02NC0yOC43LTY0LTY0bDAtMzA2LjcgNDEuNCA0MS40YzEyLjUgMTIuNSAzMi44IDEyLjUgNDUuMyAwczEyLjUtMzIuOCAwLTQ1LjNsLTk2LTk2eiJdfSxMaHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmlsbC1kcmlwIixpY29uOls1NzYsNTEyLFtdLCJmNTc2IiwiTTMwOS43IDcxLjZsLTY0LjQgNjQuNCAzMy40IDMzLjRjMTIuNSAxMi41IDEyLjUgMzIuOCAwIDQ1LjNzLTMyLjggMTIuNS00NS4zIDBsLTMzLjQtMzMuNC05Ni40IDk2LjRjLTIuOSAyLjktNS4xIDYuNS02LjMgMTAuM2wzMjEuNSAwIDUzLjctNTMuN2M0LjktNC45IDcuNi0xMS41IDcuNi0xOC4zcy0yLjctMTMuNS03LjYtMTguM0wzNDYuMyA3MS42QzM0MS41IDY2LjcgMzM0LjkgNjQgMzI4IDY0cy0xMy41IDIuNy0xOC4zIDcuNnpNNTguMyAyMzIuNGw5Ni40LTk2LjQtNDkuNC00OS40Yy0xMi41LTEyLjUtMTIuNS0zMi44IDAtNDUuM3MzMi44LTEyLjUgNDUuMyAwTDIwMCA5MC43IDI2NC40IDI2LjNDMjgxLjMgOS41IDMwNC4xIDAgMzI4IDBzNDYuNyA5LjUgNjMuNiAyNi4zTDUxNy43IDE1Mi40QzUzNC41IDE2OS4zIDU0NCAxOTIuMSA1NDQgMjE2cy05LjUgNDYuNy0yNi4zIDYzLjZMMzExLjYgNDg1LjdDMjk0LjcgNTAyLjUgMjcxLjkgNTEyIDI0OCA1MTJzLTQ2LjctOS41LTYzLjYtMjYuM0w1OC4zIDM1OS42QzQxLjUgMzQyLjcgMzIgMzE5LjkgMzIgMjk2czkuNS00Ni43IDI2LjMtNjMuNnpNNTEyIDU0NGMtMzUuMyAwLTY0LTI4LjctNjQtNjQgMC0yNS4yIDMyLjYtNzkuNiA1MS4yLTEwOC43IDYtOS40IDE5LjUtOS40IDI1LjUgMCAxOC43IDI5LjEgNTEuMiA4My41IDUxLjIgMTA4LjcgMCAzNS4zLTI4LjcgNjQtNjQgNjR6Il19LERocj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzaGllbGQtaGVhcnQiLGljb246WzUxMiw1MTIsW10sImU1NzQiLCJNMjY5LjQgMi45QzI2NS4yIDEgMjYwLjcgMCAyNTYgMHMtOS4yIDEtMTMuNCAyLjlMNTQuMyA4Mi44Yy0yMiA5LjMtMzguNCAzMS0zOC4zIDU3LjIgLjUgOTkuMiA0MS4zIDI4MC43IDIxMy42IDM2My4yIDE2LjcgOCAzNi4xIDggNTIuOCAwIDE3Mi40LTgyLjUgMjEzLjItMjY0IDIxMy42LTM2My4yIC4xLTI2LjItMTYuMy00Ny45LTM4LjMtNTcuMkwyNjkuNCAyLjl6TTI0OS42IDE4My41bDYuNCA4LjUgNi40LTguNWMxMS4xLTE0LjggMjguNS0yMy41IDQ2LjktMjMuNSAzMi40IDAgNTguNyAyNi4zIDU4LjcgNTguN2wwIDUuM2MwIDQ5LjEtNjUuOCA5OC4xLTk2LjUgMTE4LjMtOS41IDYuMi0yMS41IDYuMi0zMC45IDAtMzAuNy0yMC4yLTk2LjUtNjkuMy05Ni41LTExOC4zbDAtNS4zYzAtMzIuNCAyNi4zLTU4LjcgNTguNy01OC43IDE4LjUgMCAzNS45IDguNyA0Ni45IDIzLjV6Il19LFVfZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwZXJzb24tc2tpaW5nLW5vcmRpYyIsaWNvbjpbNTc2LDUxMixbInNraWluZy1ub3JkaWMiXSwiZjdjYSIsIk00MjQuOCAxNmE1NiA1NiAwIDEgMSAwIDExMiA1NiA1NiAwIDEgMSAwLTExMnptOTkuOCAxOTMuN2M3LjYgMTUuMiAxLjkgMzMuNi0xMi42IDQybDAgMTgwLjMtMzIgMCAwLTE2NC4yLTEwLjEgNWMtMjcuNCAxMy43LTYwLjcgNi4xLTc5LjQtMTguMmwtMTkuNi0yNS41LTM5LjUgNjguOCAyNC44IDEyLjRjMjkuNSAxNC43IDQyLjkgNDkuNSAzMS4xIDgwLjJsLTI4LjIgNzMuNCAxNDkuNCAwYzcuOSAwIDE1LjYtMi4zIDIyLjItNi43bDcuOS01LjNjMTEtNy40IDI1LjktNC40IDMzLjMgNi43czQuNCAyNS45LTYuNyAzMy4zbC03LjkgNS4zQzU0MyA1MDYuOSA1MjYgNTEyIDUwOC42IDUxMmwtMTg5LjEgMGMtLjUgMC0xIDAtMS41IDBMMjQgNTEyYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0bDg4IDBjMC04LjIgMy4xLTE2LjQgOS40LTIyLjZsNzQuMS03NC4xIDEwLjItMzUuOWMxMS4zIDE4LjMgMjcuNyAzMy44IDQ4LjQgNDQuMmw0LjggMi40LTEuOSA2LjhjLTMgMTAuNS04LjYgMjAtMTYuMyAyNy43bC01MS41IDUxLjUgMTAxLjMgMCAzNy4xLTk2LjQtNTUuNi0yNy44QzIzMC40IDMxOSAyMTUuMyAyNjcgMjM5LjMgMjI3LjFsMzcuNy02Mi43LTI3LjctNy43Yy05LTIuNS0xOC4xIDMuMi0yMCAxMi4zbC01LjkgMjkuM2MtMy4xIDE1LjYtMTcuMSAyNi4zLTMyLjUgMjUuN2wtMTMwIDIwOC0zNy43IDAgMTQwLjYtMjI1Yy0zLjQtNi4zLTQuNi0xMy44LTMuMS0yMS4zbDUuOS0yOS4zYzkuMS00NS42IDU1LjEtNzMuOCA5OS45LTYxLjRsMzIuNSA5YzQ2LjcgMTMgODggNDAuOCAxMTcuNiA3OS4zbDI0LjkgMzIuMyA0MC40LTIwLjJjMTUuOC03LjkgMzUtMS41IDQyLjkgMTQuM3oiXX0sQWhyPVVfZSxXX2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic3F1YXJlLWNoZWNrIixpY29uOls0NDgsNTEyLFs5NzQ1LDk5ODksNjE1MTAsImNoZWNrLXNxdWFyZSJdLCJmMTRhIiwiTTM4NCAzMmMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDMyMGMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA0ODBjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgOTZDMCA2MC43IDI4LjcgMzIgNjQgMzJsMzIwIDB6TTM0MiAxNDUuN2MtMTAuNy03LjgtMjUuNy01LjQtMzMuNSA1LjNMMTg5LjEgMzE1LjIgMTM3IDI2My4xYy05LjQtOS40LTI0LjYtOS40LTMzLjkgMHMtOS40IDI0LjYgMCAzMy45bDcyIDcyYzUgNSAxMS45IDcuNSAxOC44IDdzMTMuNC00LjEgMTcuNS05LjhMMzQ3LjMgMTc5LjJjNy44LTEwLjcgNS40LTI1LjctNS4zLTMzLjV6Il19LEVocj1XX2UsR19lPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJhdGgiLGljb246WzUxMiw1MTIsWzEyODcwNSwiYmF0aHR1YiJdLCJmMmNkIiwiTTk2IDc3LjNjMC03LjMgNS45LTEzLjMgMTMuMy0xMy4zIDMuNSAwIDYuOSAxLjQgOS40IDMuOWwxNC45IDE0LjljLTMuNiA5LjEtNS41IDE4LjktNS41IDI5LjIgMCAxOS45IDcuMiAzOCAxOS4yIDUyLTUuMyA5LjItNCAyMS4xIDMuOCAyOSA5LjQgOS40IDI0LjYgOS40IDMzLjkgMEwyODkgODljOS40LTkuNCA5LjQtMjQuNiAwLTMzLjktNy44LTcuOS0xOS44LTkuMS0yOS0zLjgtMTQtMTItMzIuMS0xOS4yLTUyLTE5LjItMTAuMyAwLTIwLjIgMi0yOS4yIDUuNUwxNjMuOSAyMi42QzE0OS40IDguMSAxMjkuNyAwIDEwOS4zIDAgNjYuNiAwIDMyIDM0LjYgMzIgNzcuM0wzMiAyNTZjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsMCA0OGMwIDI4LjQgMTIuNCA1NCAzMiA3MS42TDY0IDQ4MGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMTYgMjU2IDAgMCAxNmMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtNDAuNGMxOS42LTE3LjYgMzItNDMuMSAzMi03MS42bDAtNDhjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJMOTYgMjU2IDk2IDc3LjN6Il19LCRocj1HX2UsUGhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNoZXNzLWJpc2hvcCIsaWNvbjpbMzIwLDUxMixbOTgyMV0sImY0M2EiLCJNNjQgMzg0TDQ4LjMgMzY4LjNDMTcuNCAzMzcuNCAwIDI5NS40IDAgMjUxLjcgMCAyMTMuMSAxMy41IDE3NS44IDM4LjIgMTQ2LjFMMTA2LjcgNjQgOTYgNjRDNzguMyA2NCA2NCA0OS43IDY0IDMyUzc4LjMgMCA5NiAwTDIyNCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC0xMC43IDAgNDcuNiA1Ny4xLTg1LjkgODUuOWMtOS40IDkuNC05LjQgMjQuNiAwIDMzLjlzMjQuNiA5LjQgMzMuOSAwbDgyLjMtODIuM2MxOC43IDI3LjMgMjguNyA1OS43IDI4LjcgOTMgMCA0My43LTE3LjQgODUuNy00OC4zIDExNi42TDI1NiAzODQgMzEyLjIgNDU0LjNjNSA2LjMgNy44IDE0LjEgNy44IDIyLjIgMCAxOS42LTE1LjkgMzUuNS0zNS41IDM1LjVMMzUuNSA1MTJjLTE5LjYgMC0zNS41LTE1LjktMzUuNS0zNS41IDAtOC4xIDIuNy0xNS45IDcuOC0yMi4yTDY0IDM4NHoiXX0sWV9lPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InByZXNjcmlwdGlvbi1ib3R0bGUtbWVkaWNhbCIsaWNvbjpbMzg0LDUxMixbInByZXNjcmlwdGlvbi1ib3R0bGUtYWx0Il0sImY0ODYiLCJNMCAzMkMwIDE0LjMgMTQuMyAwIDMyIDBMMzUyIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCAzMmMwIDE3LjctMTQuMyAzMi0zMiAzMkwzMiA5NkMxNC4zIDk2IDAgODEuNyAwIDY0TDAgMzJ6TTMyIDE0NGwzMjAgMCAwIDMwNGMwIDM1LjMtMjguNyA2NC02NCA2NEw5NiA1MTJjLTM1LjMgMC02NC0yOC43LTY0LTY0bDAtMzA0ek0xNjAgMjQ4bDAgNDAtNDAgMGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDQwIDAgMCA0MGMwIDguOCA3LjIgMTYgMTYgMTZsMzIgMGM4LjggMCAxNi03LjIgMTYtMTZsMC00MCA0MCAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtNDAgMCAwLTQwYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMGMtOC44IDAtMTYgNy4yLTE2IDE2eiJdfSxJaHI9WV9lLFpfZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJkcmF3LXBvbHlnb24iLGljb246WzUxMiw1MTIsWzU4MDU1LCJ2ZWN0b3ItcG9seWdvbiJdLCJmNWVlIiwiTTY0IDBjMjMuNyAwIDQ0LjQgMTIuOSA1NS40IDMybDI3My4xIDBjMTEuMS0xOS4xIDMxLjctMzIgNTUuNC0zMiAzNS4zIDAgNjQgMjguNyA2NCA2NCAwIDM0LTI2LjUgNjEuOC02MCA2My45bC0yLjEgMi45LTcxLjUgOTkuMWMzLjYgOCA1LjYgMTYuOSA1LjYgMjYuMnMtMiAxOC4yLTUuNiAyNi4ybDIuMiAzLjEgNjkuMyA5NiAyLjEgMi45YzMzLjUgMi4xIDYwIDI5LjkgNjAgNjMuOSAwIDM1LjMtMjguNyA2NC02NCA2NC0yMy43IDAtNDQuNC0xMi45LTU1LjQtMzJsLTI3My4xIDBjLTExLjEgMTkuMS0zMS43IDMyLTU1LjQgMzItMzUuMyAwLTY0LTI4LjctNjQtNjQgMC0yMy43IDEyLjktNDQuNCAzMi01NS40bDAtMjczLjFDMTIuOSAxMDguNCAwIDg3LjcgMCA2NCAwIDI4LjcgMjguNyAwIDY0IDB6TTM5NC4yIDQxMy40bC02NS41LTkwLjYtMi4yLTMuMWMtMi4xIC4yLTQuMyAuMy02LjUgLjMtMzUuMyAwLTY0LTI4LjctNjQtNjRzMjguNy02NCA2NC02NGMyLjIgMCA0LjQgLjEgNi41IC4zbDY3LjctOTMuN2MtLjYtLjktMS4xLTEuNy0xLjYtMi42TDExOS40IDk2Yy01LjYgOS43LTEzLjcgMTcuOC0yMy40IDIzLjRsMCAyNzMuMWM5LjcgNS42IDE3LjggMTMuNyAyMy40IDIzLjRsMjczLjEgMGMuNS0uOSAxLjEtMS44IDEuNi0yLjZ6Il19LE5ocj1aX2UsRmhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImktY3Vyc29yIixpY29uOlsyNTYsNTEyLFtdLCJmMjQ2IiwiTS4xIDI5LjNDLTEuNCA0NyAxMS43IDYyLjQgMjkuMyA2My45bDggLjdDNzAuNSA2Ny4zIDk2IDk1IDk2IDEyOC4zbDAgOTUuNy0zMiAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDMyIDAgMCA5NS43YzAgMzMuMy0yNS41IDYxLTU4LjcgNjMuOGwtOCAuN0MxMS43IDQ0OS42LTEuNCA0NjUgLjEgNDgyLjdTMTcgNTEzLjQgMzQuNyA1MTEuOWw4LS43YzM0LjEtMi44IDY0LjItMTguOSA4NS40LTQyLjkgMjEuMiAyNCA1MS4yIDQwIDg1LjQgNDIuOWw4IC43YzE3LjYgMS41IDMzLjEtMTEuNiAzNC41LTI5LjJzLTExLjYtMzMuMS0yOS4yLTM0LjVsLTgtLjdDMTg1LjUgNDQ0LjcgMTYwIDQxNyAxNjAgMzgzLjdsMC05NS43IDMyIDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTMyIDAgMC05NS43YzAtMzMuMyAyNS41LTYxIDU4LjctNjMuOGw4LS43YzE3LjYtMS41IDMwLjctMTYuOSAyOS4yLTM0LjVTMjM5LTEuNCAyMjEuMyAuMWwtOCAuN2MtMzQuMSAyLjgtNjQuMiAxOC45LTg1LjQgNDIuOS0yMS4yLTI0LTUxLjItNDAtODUuNC00Mi45bC04LS43QzE3LTEuNCAxLjYgMTEuNyAuMSAyOS4zeiJdfSxPaHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaGVhcnQtY2lyY2xlLXBsdXMiLGljb246WzU3Niw1MTIsW10sImU1MDAiLCJNMjQxIDg3LjFsMTUgMjAuNyAxNS0yMC43QzI5NiA1Mi41IDMzNi4yIDMyIDM3OC45IDMyIDQ1Mi40IDMyIDUxMiA5MS42IDUxMiAxNjUuMWwwIDIuNmMwIDE3LjYtMy40IDM1LjYtOS41IDUzLjctMjEuOC04LjYtNDUuNi0xMy40LTcwLjUtMTMuNC0xMDYgMC0xOTIgODYtMTkyIDE5MiAwIDI4LjUgNi4yIDU1LjYgMTcuNCA4MC0uNSAwLS45IDAtMS40IDAtMTUuNSAwLTMwLjgtNC42LTQzLjEtMTQuMS03My01NS43LTIxMi45LTE4Ni0yMTIuOS0yOTguMmwwLTIuNkMwIDkxLjYgNTkuNiAzMiAxMzMuMSAzMiAxNzUuOCAzMiAyMTYgNTIuNSAyNDEgODcuMXpNNDMyIDI1NmExNDQgMTQ0IDAgMSAxIDAgMjg4IDE0NCAxNDQgMCAxIDEgMC0yODh6bTE2IDgwYzAtOC44LTcuMi0xNi0xNi0xNnMtMTYgNy4yLTE2IDE2bDAgNDgtNDggMGMtOC44IDAtMTYgNy4yLTE2IDE2czcuMiAxNiAxNiAxNmw0OCAwIDAgNDhjMCA4LjggNy4yIDE2IDE2IDE2czE2LTcuMiAxNi0xNmwwLTQ4IDQ4IDBjOC44IDAgMTYtNy4yIDE2LTE2cy03LjItMTYtMTYtMTZsLTQ4IDAgMC00OHoiXX0sUmhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNoaWVsZC1kb2ciLGljb246WzUxMiw1MTIsW10sImU1NzMiLCJNMjY5LjQgMi45QzI2NS4yIDEgMjYwLjcgMCAyNTYgMHMtOS4yIDEtMTMuNCAyLjlMNTQuMyA4Mi44Yy0yMiA5LjMtMzguNCAzMS0zOC4zIDU3LjIgLjUgOTkuMiA0MS4zIDI4MC43IDIxMy42IDM2My4yIDE2LjcgOCAzNi4xIDggNTIuOCAwIDE3Mi40LTgyLjUgMjEzLjItMjY0IDIxMy42LTM2My4yIC4xLTI2LjItMTYuMy00Ny45LTM4LjMtNTcuMkwyNjkuNCAyLjl6TTE2MC45IDI4Ni4yYzQuOCAxLjIgOS45IDEuOCAxNS4xIDEuOCAzNS4zIDAgNjQtMjguNyA2NC02NGwwLTY0IDQ0LjIgMGMxMi4xIDAgMjMuMiA2LjggMjguNiAxNy43bDcuMiAxNC4zIDY0IDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMzJjMCA0NC4yLTM1LjggODAtODAgODBsLTQ4IDAgMCA1MC43YzAgNy4zLTUuOSAxMy4zLTEzLjMgMTMuMy0xLjggMC0zLjYtLjQtNS4yLTEuMWwtOTguNy00Mi4zYy02LjYtMi44LTEwLjgtOS4zLTEwLjgtMTYuNCAwLTIuOCAuNi01LjUgMS45LThsMTUtMzB6TTE2MCAxNjBsNDggMCAwIDY0YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtNDhjMC04LjggNy4yLTE2IDE2LTE2em0xMjggNDhhMTYgMTYgMCAxIDAgLTMyIDAgMTYgMTYgMCAxIDAgMzIgMHoiXX0sQmhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImdyZWF0ZXItdGhhbi1lcXVhbCIsaWNvbjpbNDQ4LDUxMixbXSwiZjUzMiIsIk0yMS45IDk0LjRDNS4xIDg4LjgtMy45IDcwLjYgMS43IDUzLjlTMjUuNCAyOC4xIDQyLjEgMzMuNmwzODQgMTI4QzQzOS4yIDE2NiA0NDggMTc4LjIgNDQ4IDE5MnMtOC44IDI2LTIxLjkgMzAuNGwtMzg0IDEyOGMtMTYuOCA1LjYtMzQuOS0zLjUtNDAuNS0yMC4yczMuNS0zNC45IDIwLjItNDAuNUwzMTQuOCAxOTIgMjEuOSA5NC40ek00MTYgNDE2YzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMyTDMyIDQ4MGMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMmwzODQgMHoiXX0sSGhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImVudmVsb3BlLW9wZW4iLGljb246WzUxMiw1MTIsWzYyMTM1XSwiZjJiNiIsIk02NC40IDE3NS44TDI1NiAzMy45IDQ0Ny42IDE3NS44IDI4OS41IDI5M2MtOS43IDcuMi0yMS40IDExLTMzLjUgMTFzLTIzLjgtMy45LTMzLjUtMTFMNjQuNCAxNzUuOHpNMjU2LTMyYy0xMi4xIDAtMjMuOCAzLjktMzMuNSAxMUwyNS45IDEyNC43QzkuNiAxMzYuOCAwIDE1NS44IDAgMTc2LjFMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzg0IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0yMzkuOWMwLTIwLjMtOS42LTM5LjQtMjUuOS01MS40TDI4OS41LTIxYy05LjctNy4yLTIxLjQtMTEtMzMuNS0xMXoiXX0scWhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im1vdW5kIixpY29uOls1MTIsNTEyLFtdLCJlNTJkIiwiTTExMi40IDE3OS4yQzE0MiAxMjcuNyAxOTYuOCA5NiAyNTYuMiA5NnMxMTQuMiAzMS43IDE0My45IDgzLjJMNTA4LjcgMzY4YzEyLjMgMjEuMy0zLjEgNDgtMjcuNyA0OEwzMS41IDQxNmMtMjQuNiAwLTQwLTI2LjYtMjcuNy00OEwxMTIuNCAxNzkuMnoiXX0samhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InZvaWNlbWFpbCIsaWNvbjpbNjQwLDUxMixbXSwiZjg5NyIsIk0xNDQgMTYwYTgwIDgwIDAgMSAxIDAgMTYwIDgwIDgwIDAgMSAxIDAtMTYwek0yNjMuOCAzMjBjMTUuMy0yMi45IDI0LjItNTAuNCAyNC4yLTgwIDAtNzkuNS02NC41LTE0NC0xNDQtMTQ0UzAgMTYwLjUgMCAyNDAgNjQuNSAzODQgMTQ0IDM4NGwzNTIgMGM3OS41IDAgMTQ0LTY0LjUgMTQ0LTE0NFM1NzUuNSA5NiA0OTYgOTYgMzUyIDE2MC41IDM1MiAyNDBjMCAyOS42IDguOSA1Ny4xIDI0LjIgODBsLTExMi41IDB6TTQ5NiAxNjBhODAgODAgMCAxIDEgMCAxNjAgODAgODAgMCAxIDEgMC0xNjB6Il19LFZocj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ2ZXN0IixpY29uOls0NDgsNTEyLFtdLCJlMDg1IiwiTTIwMCA0NjRsMC0xNzAuMWMwLTMuOS0uNS03LjgtMS40LTExLjZMMTQ0LjQgNjUuNEMxNjIuMSA3Ny4yIDE4OC4yIDg4IDIyNCA4OHM2MS45LTEwLjggNzkuNi0yMi42TDI0OS40IDI4Mi4zYy0xIDMuOC0xLjQgNy43LTEuNCAxMS42TDI0OCA0NjRjMCAyNi41IDIxLjUgNDggNDggNDhsMTA0IDBjMjYuNSAwIDQ4LTIxLjUgNDgtNDhsMC0xOTMuNWMwLTkuNS0yLjgtMTguNy04LjEtMjYuNmwtNDcuOS03MS44Yy01LjMtNy45LTguMS0xNy4xLTguMS0yNi42TDM4NCA0OGMwLTI2LjUtMjEuNS00OC00OC00OGwtMy41IDBjLS4zIDAtLjYgMC0xIDAtLjYgMC0xLjIgMC0xLjggMC0xOC44IDAtMzQuMSA5LjctNDQuMSAxOC44LTkuMyA4LjQtMjguNSAyMS4yLTYxLjcgMjEuMnMtNTIuNC0xMi44LTYxLjctMjEuMmMtMTAtOS4xLTI1LjMtMTguOC00NC4xLTE4LjgtLjYgMC0xLjIgMC0xLjggMC0uMyAwLS42IDAtMSAwTDExMiAwQzg1LjUgMCA2NCAyMS41IDY0IDQ4bDAgOTcuNWMwIDkuNS0yLjggMTguNy04LjEgMjYuNkw4LjEgMjQzLjlDMi44IDI1MS44IDAgMjYxLjEgMCAyNzAuNUwwIDQ2NGMwIDI2LjUgMjEuNSA0OCA0OCA0OGwxMDQgMGMyNi41IDAgNDgtMjEuNSA0OC00OHoiXX0sVWhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImF1ZGlvLWRlc2NyaXB0aW9uIixpY29uOls1MTIsNTEyLFtdLCJmMjllIiwiTTAgMTI4QzAgOTIuNyAyOC43IDY0IDY0IDY0bDM4NCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMjU2YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDQ0OGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCAxMjh6bTk2IDk2bDAgMTA0YzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC0yNCA0OCAwIDAgMjRjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTEwNGMwLTM1LjMtMjguNy02NC02NC02NGwtMTYgMGMtMzUuMyAwLTY0IDI4LjctNjQgNjR6bTQ4IDMybDAtMzJjMC04LjggNy4yLTE2IDE2LTE2bDE2IDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMzItNDggMHptMTUyLTk2Yy0xMy4zIDAtMjQgMTAuNy0yNCAyNGwwIDE0NGMwIDEzLjMgMTAuNyAyNCAyNCAyNGw0OCAwYzM5LjggMCA3Mi0zMi4yIDcyLTcybDAtNDhjMC0zOS44LTMyLjItNzItNzItNzJsLTQ4IDB6bTQ4IDE0NGwtMjQgMCAwLTk2IDI0IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRsMCA0OGMwIDEzLjMtMTAuNyAyNC0yNCAyNHoiXX0sV2hyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InciLGljb246WzU3Niw1MTIsWzExOV0sIjU3IiwiTTIwLjggMzRjMTYuNS02LjIgMzUgMi4yIDQxLjIgMTguN0wxNzIuMiAzNDYuNyAyNTcuMyA1NWM0LTEzLjcgMTYuNS0yMyAzMC43LTIzczI2LjcgOS40IDMwLjcgMjNMNDAzLjggMzQ2LjcgNTE0IDUyLjhjNi4yLTE2LjUgMjQuNi0yNC45IDQxLjItMTguN1M1ODAuMiA1OC43IDU3NCA3NS4ybC0xNDQgMzg0Yy00LjggMTIuOS0xNy40IDIxLjMtMzEuMiAyMC43cy0yNS43LTkuOC0yOS41LTIzTDI4OCAxNzguMyAyMDYuNyA0NTdjLTMuOSAxMy4yLTE1LjggMjIuNS0yOS41IDIzcy0yNi4zLTcuOC0zMS4yLTIwLjdMMiA3NS4yQy00LjIgNTguNyA0LjIgNDAuMiAyMC44IDM0eiJdfSxoMmU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZXllLWRyb3BwZXIiLGljb246WzUxMiw1MTIsWyJleWUtZHJvcHBlci1lbXB0eSIsImV5ZWRyb3BwZXIiXSwiZjFmYiIsIk0zNDEuNiAyOS4ybC0xMDEuNiAxMDEuNi05LjQtOS40Yy0xMi41LTEyLjUtMzIuOC0xMi41LTQ1LjMgMHMtMTIuNSAzMi44IDAgNDUuM2wxNjAgMTYwYzEyLjUgMTIuNSAzMi44IDEyLjUgNDUuMyAwczEyLjUtMzIuOCAwLTQ1LjNsLTkuNC05LjQgMTAxLjYtMTAxLjZjMzktMzkgMzktMTAyLjIgMC0xNDEuMXMtMTAyLjItMzktMTQxLjEgMHpNNTUuNCAzMjMuM2MtMTUgMTUtMjMuNCAzNS40LTIzLjQgNTYuNmwwIDQyLjQtMjYuNiAzOS45Yy04LjUgMTIuNy02LjggMjkuNiA0IDQwLjRzMjcuNyAxMi41IDQwLjQgNGwzOS45LTI2LjYgNDIuNCAwYzIxLjIgMCA0MS42LTguNCA1Ni42LTIzLjRsMTA5LjQtMTA5LjQtNDUuMy00NS4zLTEwOS40IDEwOS40Yy0zIDMtNy4xIDQuNy0xMS4zIDQuN2wtMzYuMSAwIDAtMzYuMWMwLTQuMiAxLjctOC4zIDQuNy0xMS4zbDEwOS40LTEwOS40LTQ1LjMtNDUuMy0xMDkuNCAxMDkuNHoiXX0sR2hyPWgyZSxZaHI9aDJlLEY5PXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNpcmNsZS14bWFyayIsaWNvbjpbNTEyLDUxMixbNjE1MzIsInRpbWVzLWNpcmNsZSIsInhtYXJrLWNpcmNsZSJdLCJmMDU3IiwiTTI1NiA1MTJhMjU2IDI1NiAwIDEgMCAwLTUxMiAyNTYgMjU2IDAgMSAwIDAgNTEyek0xNjcgMTY3YzkuNC05LjQgMjQuNi05LjQgMzMuOSAwbDU1IDU1IDU1LTU1YzkuNC05LjQgMjQuNi05LjQgMzMuOSAwczkuNCAyNC42IDAgMzMuOWwtNTUgNTUgNTUgNTVjOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlzLTI0LjYgOS40LTMzLjkgMGwtNTUtNTUtNTUgNTVjLTkuNCA5LjQtMjQuNiA5LjQtMzMuOSAwcy05LjQtMjQuNiAwLTMzLjlsNTUtNTUtNTUtNTVjLTkuNC05LjQtOS40LTI0LjYgMC0zMy45eiJdfSxaaHI9RjksWGhyPUY5LFFocj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0cmFpbGVyIixpY29uOls2NDAsNTEyLFtdLCJlMDQxIiwiTTMyIDk2YzAtMzUuMyAyOC43LTY0IDY0LTY0bDM4NCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMjU2IDY0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTI5Ni40IDBjLjIgMi42IC40IDUuMyAuNCA4IDAgNDguNi0zOS40IDg4LTg4IDg4cy04OC0zOS40LTg4LTg4YzAtMi43IC4xLTUuNCAuNC04TDk2IDQxNmMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMzIgOTZ6bTQwOCAxNmMtMTMuMyAwLTI0IDEwLjctMjQgMjRsMCAxNjBjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTE2MGMwLTEzLjMtMTAuNy0yNC0yNC0yNHpNMTEyIDEzNmwwIDE2MGMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtMTYwYzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0em0xNzYtMjRjLTEzLjMgMC0yNCAxMC43LTI0IDI0bDAgMTYwYzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC0xNjBjMC0xMy4zLTEwLjctMjQtMjQtMjR6TTI2NCA0MjRhNDAgNDAgMCAxIDAgLTgwIDAgNDAgNDAgMCAxIDAgODAgMHoiXX0sbTJlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InR1cmtpc2gtbGlyYS1zaWduIixpY29uOls0NDgsNTEyLFsidHJ5IiwidHVya2lzaC1saXJhIl0sImUyYmIiLCJNMTYwIDMyYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgNDMuNiAxMjEuNC0zNC43YzEyLjctMy42IDI2IDMuNyAyOS43IDE2LjVzLTMuNyAyNi0xNi41IDI5LjdsLTEzNC42IDM4LjUgMCA0Ni4xIDEyMS40LTM0LjdjMTIuNy0zLjYgMjYgMy43IDI5LjcgMTYuNXMtMy43IDI2LTE2LjUgMjkuN2wtMTM0LjYgMzguNSAwIDE2Mi41IDcyIDBjNTMgMCA5Ni00MyA5Ni05NiAwLTE3LjcgMTQuMy0zMiAzMi0zMnMzMiAxNC4zIDMyIDMyYzAgODguNC03MS42IDE2MC0xNjAgMTYwbC0xMDQgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC0xNzYuMi0yNS40IDcuM2MtMTIuNyAzLjYtMjYtMy43LTI5LjctMTYuNXMzLjctMjYgMTYuNS0yOS43bDM4LjYtMTEgMC00Ni4xLTI1LjQgNy4zYy0xMi43IDMuNi0yNi0zLjctMjkuNy0xNi41czMuNy0yNiAxNi41LTI5LjdsMzguNi0xMSAwLTYxLjljMC0xNy43IDE0LjMtMzIgMzItMzJ6Il19LEtocj1tMmUsSmhyPW0yZSxlbXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidm9sY2FubyIsaWNvbjpbNTEyLDUxMixbMTI3NzU1XSwiZjc3MCIsIk0xNjAgMTQ0Yy0zNS4zIDAtNjQtMjguNy02NC02NHMyOC43LTY0IDY0LTY0YzE1LjcgMCAzMCA1LjYgNDEuMiAxNSAxMS4yLTE4LjYgMzEuNi0zMSA1NC44LTMxczQzLjYgMTIuNCA1NC44IDMxYzExLjEtOS40IDI1LjUtMTUgNDEuMi0xNSAzNS4zIDAgNjQgMjguNyA2NCA2NHMtMjguNyA2NC02NCA2NGMtMTQuNyAwLTI4LjMtNS0zOS4xLTEzLjNsLTMyIDQ4QzI3NS4zIDE4NyAyNjYgMTkyIDI1NiAxOTJzLTE5LjMtNS0yNC45LTEzLjNsLTMyLTQ4QzE4OC4zIDEzOSAxNzQuNyAxNDQgMTYwIDE0NHpNMTQ0IDM1Mmw0OC40LTI0LjJjMTAuMi01LjEgMjEuNi03LjggMzMtNy44IDE5LjYgMCAzOC40IDcuOCA1Mi4yIDIxLjZsMzIuNSAzMi41YzYuMyA2LjMgMTQuOSA5LjkgMjMuOCA5LjkgMTEuMyAwIDIxLjgtNS42IDI4LTE1bDkuNy0xNC42LTU5LTY2LjNjLTkuMS0xMC4yLTIyLjItMTYuMS0zNS45LTE2LjFsLTQxLjggMGMtMTMuNyAwLTI2LjggNS45LTM1LjkgMTYuMWwtNTkuOSA2Ny40IDQuNy0zLjV6bTE5LjQtOTUuOGMxOC4yLTIwLjUgNDQuMy0zMi4yIDcxLjgtMzIuMmw0MS44IDBjMjcuNCAwIDUzLjUgMTEuNyA3MS44IDMyLjJsMTUwLjIgMTY5YzguNSA5LjUgMTMuMiAyMS45IDEzLjIgMzQuNyAwIDI4LjgtMjMuNCA1Mi4yLTUyLjIgNTIuMkw1Mi4yIDUxMkMyMy40IDUxMiAwIDQ4OC42IDAgNDU5LjggMCA0NDcuMSA0LjcgNDM0LjcgMTMuMiA0MjUuMmwxNTAuMi0xNjl6Il19LHRtcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ3YW5kLXNwYXJrbGVzIixpY29uOls1MTIsNTEyLFtdLCJmNzJiIiwiTTQ2NCA2LjFjOS41LTguNSAyNC04LjEgMzMgLjlsOCA4YzkgOSA5LjQgMjMuNSAuOSAzM2wtODUuOCA5NS45Yy0yLjYgMi45LTQuMSA2LjctNC4xIDEwLjdsMCAyMS40YzAgOC44LTcuMiAxNi0xNiAxNmwtMTUuOCAwYy00LjYgMC04LjkgMS45LTExLjkgNS4zTDEwMC43IDUwMC45Yy02LjMgNy4xLTE1LjMgMTEuMS0yNC44IDExLjEtOC44IDAtMTcuMy0zLjUtMjMuNS05LjhMOS43IDQ1OS43Yy02LjItNi4yLTkuNy0xNC43LTkuNy0yMy41IDAtOS41IDQtMTguNSAxMS4xLTI0LjhsMTExLjYtOTkuOGMzLjQtMyA1LjMtNy40IDUuMy0xMS45bDAtMjcuNmMwLTguOCA3LjItMTYgMTYtMTZsMzQuNiAwYzMuOSAwIDcuNy0xLjUgMTAuNy00LjFMNDY0IDYuMXpNNDMyIDI4OGMzLjYgMCA2LjcgMi40IDcuNyA1LjhsMTQuOCA1MS43IDUxLjcgMTQuOGMzLjQgMSA1LjggNC4xIDUuOCA3LjdzLTIuNCA2LjctNS44IDcuN2wtNTEuNyAxNC44LTE0LjggNTEuN2MtMSAzLjQtNC4xIDUuOC03LjcgNS44cy02LjctMi40LTcuNy01LjhsLTE0LjgtNTEuNy01MS43LTE0LjhjLTMuNC0xLTUuOC00LjEtNS44LTcuN3MyLjQtNi43IDUuOC03LjdsNTEuNy0xNC44IDE0LjgtNTEuN2MxLTMuNCA0LjEtNS44IDcuNy01Ljh6TTg3LjcgNjkuOGwxNC44IDUxLjcgNTEuNyAxNC44YzMuNCAxIDUuOCA0LjEgNS44IDcuN3MtMi40IDYuNy01LjggNy43bC01MS43IDE0LjgtMTQuOCA1MS43Yy0xIDMuNC00LjEgNS44LTcuNyA1LjhzLTYuNy0yLjQtNy43LTUuOEw1Ny41IDE2Ni41IDUuOCAxNTEuN2MtMy40LTEtNS44LTQuMS01LjgtNy43czIuNC02LjcgNS44LTcuN2w1MS43LTE0LjggMTQuOC01MS43YzEtMy40IDQuMS01LjggNy43LTUuOHM2LjcgMi40IDcuNyA1Ljh6TTIwOCAwYzMuNyAwIDYuOSAyLjUgNy44IDYuMWw2LjggMjcuMyAyNy4zIDYuOGMzLjYgLjkgNi4xIDQuMSA2LjEgNy44cy0yLjUgNi45LTYuMSA3LjhsLTI3LjMgNi44LTYuOCAyNy4zYy0uOSAzLjYtNC4xIDYuMS03LjggNi4xcy02LjktMi41LTcuOC02LjFsLTYuOC0yNy4zLTI3LjMtNi44Yy0zLjYtLjktNi4xLTQuMS02LjEtNy44czIuNS02LjkgNi4xLTcuOGwyNy4zLTYuOCA2LjgtMjcuM2MuOS0zLjYgNC4xLTYuMSA3LjgtNi4xeiJdfSxybXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibWljcm9waG9uZSIsaWNvbjpbMzg0LDUxMixbXSwiZjEzMCIsIk0xOTIgMEMxMzkgMCA5NiA0MyA5NiA5NmwwIDEyOGMwIDUzIDQzIDk2IDk2IDk2czk2LTQzIDk2LTk2bDAtMTI4YzAtNTMtNDMtOTYtOTYtOTZ6TTQ4IDE4NGMwLTEzLjMtMTAuNy0yNC0yNC0yNFMwIDE3MC43IDAgMTg0bDAgNDBjMCA5Ny45IDczLjMgMTc4LjcgMTY4IDE5MC41bDAgNDkuNS00OCAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDE0NCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC00OCAwIDAtNDkuNWM5NC43LTExLjggMTY4LTkyLjYgMTY4LTE5MC41bDAtNDBjMC0xMy4zLTEwLjctMjQtMjQtMjRzLTI0IDEwLjctMjQgMjRsMCA0MGMwIDc5LjUtNjQuNSAxNDQtMTQ0IDE0NFM0OCAzMDMuNSA0OCAyMjRsMC00MHoiXX0sYW1yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNyb3duIixpY29uOls1NzYsNTEyLFsxMjgwODFdLCJmNTIxIiwiTTMxMyA4Ny4yYzkuMi03LjMgMTUtMTguNiAxNS0zMS4yIDAtMjIuMS0xNy45LTQwLTQwLTQwcy00MCAxNy45LTQwIDQwYzAgMTIuNiA1LjkgMjMuOSAxNSAzMS4yTDE5NC42IDE5NC44Yy0xMCAxNS43LTMxLjMgMTkuNi00Ni4yIDguNEw4OC45IDE1OC43YzQuNS02LjQgNy4xLTE0LjMgNy4xLTIyLjcgMC0yMi4xLTE3LjktNDAtNDAtNDBzLTQwIDE3LjktNDAgNDBjMCAyMS44IDE3LjUgMzkuNiAzOS4yIDQwTDg3LjggMzkzLjVjNC43IDMxLjMgMzEuNiA1NC41IDYzLjMgNTQuNWwyNzMuOCAwYzMxLjcgMCA1OC42LTIzLjIgNjMuMy01NC41TDUyMC44IDE3NmMyMS43LS40IDM5LjItMTguMiAzOS4yLTQwIDAtMjIuMS0xNy45LTQwLTQwLTQwcy00MCAxNy45LTQwIDQwYzAgOC40IDIuNiAxNi4zIDcuMSAyMi43bC01OS40IDQ0LjZjLTE0LjkgMTEuMi0zNi4yIDcuMy00Ni4yLTguNEwzMTMgODcuMnoiXX0saW1yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRlbnQtYXJyb3ctdHVybi1sZWZ0IixpY29uOls1MTIsNTEyLFtdLCJlNTgwIiwiTS0uNSAxMTNsNzIgNzJjOS40IDkuNCAyNC42IDkuNCAzMy45IDBzOS40LTI0LjYgMC0zMy45bC0zMS0zMSAzNTAuMSAwYzIyLjEgMCA0MCAxNy45IDQwIDQwbDAgMjRjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTI0YzAtNDguNi0zOS40LTg4LTg4LTg4bC0zNTAuMSAwIDMxLTMxYzkuNC05LjQgOS40LTI0LjYgMC0zMy45UzgwLjktMi4zIDcxLjUgN0wtLjUgNzljLTkuNCA5LjQtOS40IDI0LjYgMCAzMy45ek02MC4zIDI5Mi42TDM3LjEgNDc2Yy0yLjQgMTkuMSAxMi41IDM2IDMxLjcgMzZsMTU0LjUgMGMxNy43IDAgMzItMTQuMyAzMi0zMmwwLTExNy40YzAtNS45IDQuNy0xMC42IDEwLjYtMTAuNiA0IDAgNy43IDIuMyA5LjUgNS45bDY4LjIgMTM2LjVjNS40IDEwLjggMTYuNSAxNy43IDI4LjYgMTcuN2w3MS45IDBjMTkuMyAwIDM0LjItMTYuOSAzMS43LTM2TDQ1Mi43IDI5Mi43Yy0xLjItOS43LTYuOS0xOC40LTE1LjMtMjMuNEwyNzEuOSAxNjkuOWMtMTAuMi02LjEtMjIuOS02LjEtMzMuMSAuMUw3NS40IDI2OS4zYy04LjMgNS4xLTEzLjkgMTMuNy0xNS4xIDIzLjN6Il19LFhfZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0cnVjay1mYXN0IixpY29uOls2NDAsNTEyLFsic2hpcHBpbmctZmFzdCJdLCJmNDhiIiwiTTY0IDk2YzAtMzUuMyAyOC43LTY0IDY0LTY0bDI4OCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMzIgNTAuNyAwYzE3IDAgMzMuMyA2LjcgNDUuMyAxOC43TDYyMS4zIDE5MmMxMiAxMiAxOC43IDI4LjMgMTguNyA0NS4zTDY0MCAzODRjMCAzNS4zLTI4LjcgNjQtNjQgNjRsLTMuMyAwYy0xMC40IDM2LjktNDQuNCA2NC04NC43IDY0cy03NC4yLTI3LjEtODQuNy02NGwtMTAyLjYgMGMtMTAuNCAzNi45LTQ0LjQgNjQtODQuNyA2NHMtNzQuMi0yNy4xLTg0LjctNjRsLTMuMyAwYy0zNS4zIDAtNjQtMjguNy02NC02NGwwLTQ4LTQwIDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjRsMTEyIDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRMMjQgMjQwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0bDE3NiAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0TDI0IDE0NGMtMTMuMyAwLTI0LTEwLjctMjQtMjRTMTAuNyA5NiAyNCA5Nmw0MCAwek01NzYgMjg4bDAtNTAuNy00NS4zLTQ1LjMtNTAuNyAwIDAgOTYgOTYgMHpNMjU2IDQyNGE0MCA0MCAwIDEgMCAtODAgMCA0MCA0MCAwIDEgMCA4MCAwem0yMzIgNDBhNDAgNDAgMCAxIDAgMC04MCA0MCA0MCAwIDEgMCAwIDgweiJdfSxvbXI9WF9lLFFfZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ1c2VyLXBlbiIsaWNvbjpbNjQwLDUxMixbInVzZXItZWRpdCJdLCJmNGZmIiwiTTI1Ni4xIDI0OGExMjAgMTIwIDAgMSAwIDAtMjQwIDEyMCAxMjAgMCAxIDAgMCAyNDB6bS0yOS43IDU2Yy05OC41IDAtMTc4LjMgNzkuOC0xNzguMyAxNzguMyAwIDE2LjQgMTMuMyAyOS43IDI5LjcgMjkuN2wxOTYuNSAwIDEwLjktNTQuNWM0LjMtMjEuNyAxNS00MS42IDMwLjYtNTcuMmw2Ny4zLTY3LjNjLTI4LTE4LjMtNjEuNC0yOC45LTk3LjQtMjguOWwtNTkuNCAwek0zMzIuMyA0NjYuOWwtMTEuOSA1OS42Yy0uMiAuOS0uMyAxLjktLjMgMi45IDAgOCA2LjUgMTQuNiAxNC42IDE0LjYgMSAwIDEuOS0uMSAyLjktLjNsNTkuNi0xMS45YzEyLjQtMi41IDIzLjgtOC42IDMyLjctMTcuNWwxMTguOS0xMTguOS04MC04MC0xMTguOSAxMTguOWMtOC45IDguOS0xNSAyMC4zLTE3LjUgMzIuN3ptMjY3LjgtMTIzYzIyLjEtMjIuMSAyMi4xLTU3LjkgMC04MHMtNTcuOS0yMi4xLTgwIDBsLTI4LjggMjguOCA4MCA4MCAyOC44LTI4Ljh6Il19LG5tcj1RX2Usc21yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InVzZXItY2xvY2siLGljb246WzU3Niw1MTIsW10sImY0ZmQiLCJNMjI0IDhhMTIwIDEyMCAwIDEgMSAwIDI0MCAxMjAgMTIwIDAgMSAxIDAtMjQwek0xOTQuMyAzMDRsNTkuNCAwYzMuOSAwIDcuOSAuMSAxMS44IC40LTE2LjIgMjguMi0yNS41IDYwLjgtMjUuNSA5NS42IDAgNDEuOCAxMy40IDgwLjUgMzYgMTEyTDQ1LjcgNTEyQzI5LjMgNTEyIDE2IDQ5OC43IDE2IDQ4Mi4zIDE2IDM4My44IDk1LjggMzA0IDE5NC4zIDMwNHpNMjg4IDQwMGExNDQgMTQ0IDAgMSAxIDI4OCAwIDE0NCAxNDQgMCAxIDEgLTI4OCAwem0xNDQtODBjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDY0YzAgOC44IDcuMiAxNiAxNiAxNmw0OCAwYzguOCAwIDE2LTcuMiAxNi0xNnMtNy4yLTE2LTE2LTE2bC0zMiAwIDAtNDhjMC04LjgtNy4yLTE2LTE2LTE2eiJdfSxsbXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic2hvd2VyIixpY29uOls1MTIsNTEyLFsxMjg3MDNdLCJmMmNjIiwiTTY0IDEzMS45YzAtMTkuOCAxNi4xLTM1LjkgMzUuOS0zNS45IDkuNSAwIDE4LjYgMy44IDI1LjQgMTAuNWwxNi4yIDE2LjJjLTIxIDM4LjktMTcuNCA4Ny41IDEwLjkgMTIzTDE1MSAyNDdjLTkuNCA5LjQtOS40IDI0LjYgMCAzMy45czI0LjYgOS40IDMzLjkgMEwzNDUgMTIxYzkuNC05LjQgOS40LTI0LjYgMC0zMy45cy0yNC42LTkuNC0zMy45IDBsLTEuMyAxLjNjLTM1LjUtMjguMy04NC4xLTMxLjktMTIzLTEwLjlMMTcwLjUgNjEuM0MxNTEuOCA0Mi41IDEyNi40IDMyIDk5LjkgMzIgNDQuNyAzMiAwIDc2LjcgMCAxMzEuOUwwIDQ0OGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMzE2LjF6TTI1NiAzNTJhMzIgMzIgMCAxIDAgMC02NCAzMiAzMiAwIDEgMCAwIDY0em02NCA2NGEzMiAzMiAwIDEgMCAtNjQgMCAzMiAzMiAwIDEgMCA2NCAwem0wLTEyOGEzMiAzMiAwIDEgMCAwLTY0IDMyIDMyIDAgMSAwIDAgNjR6bTY0IDY0YTMyIDMyIDAgMSAwIC02NCAwIDMyIDMyIDAgMSAwIDY0IDB6bTAtMTI4YTMyIDMyIDAgMSAwIDAtNjQgMzIgMzIgMCAxIDAgMCA2NHptNjQgNjRhMzIgMzIgMCAxIDAgLTY0IDAgMzIgMzIgMCAxIDAgNjQgMHptMzItMzJhMzIgMzIgMCAxIDAgMC02NCAzMiAzMiAwIDEgMCAwIDY0eiJdfSxLX2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic3F1YXJlLWNhcmV0LXVwIixpY29uOls0NDgsNTEyLFsiY2FyZXQtc3F1YXJlLXVwIl0sImYxNTEiLCJNNjQgMzJDMjguNyAzMiAwIDYwLjcgMCA5NkwwIDQxNmMwIDM1LjMgMjguNyA2NCA2NCA2NGwzMjAgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTMyMGMwLTM1LjMtMjguNy02NC02NC02NEw2NCAzMnpNMjI0IDE2MGM2LjcgMCAxMyAyLjggMTcuNiA3LjdsMTA0IDExMmM2LjUgNyA4LjIgMTcuMiA0LjQgMjUuOVMzMzcuNSAzMjAgMzI4IDMyMGwtMjA4IDBjLTkuNSAwLTE4LjItNS43LTIyLTE0LjRzLTIuMS0xOC45IDQuNC0yNS45bDEwNC0xMTJjNC41LTQuOSAxMC45LTcuNyAxNy42LTcuN3oiXX0sY21yPUtfZSxKX2U9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibWFwLWxvY2F0aW9uIixpY29uOls2NDAsNTEyLFsibWFwLW1hcmtlZCJdLCJmNTlmIiwiTTU3NiA0OGMwLTExLjEtNS43LTIxLjQtMTUuMi0yNy4ycy0yMS4yLTYuNC0zMS4xLTEuNEw0MTMuNSA3Ny41IDIzNC4xIDE3LjZjLTguMS0yLjctMTYuOC0yLjEtMjQuNCAxLjdsLTEyOCA2NEM3MC44IDg4LjggNjQgOTkuOSA2NCAxMTJsMCAzNTJjMCAxMS4xIDUuNyAyMS40IDE1LjIgMjcuMnMyMS4yIDYuNCAzMS4xIDEuNGwxMTYuMS01OC4xIDE3My4zIDU3LjhjLTQuMy02LjQtOC41LTEzLjEtMTIuNi0xOS45LTExLTE4LjMtMjEuOS0zOS4zLTMwLTYxLjhsLTEwMS4yLTMzLjcgMC0yODQuNSAxMjggNDIuNyAwIDk5LjNjMzEtMzUuOCA3Ny01OC40IDEyOC01OC40IDIyLjYgMCA0NC4yIDQuNCA2NCAxMi41TDU3NiA0OHpNMzkyIDM0MS45YzAgNjguOSA2NC4xIDE1MC40IDk4LjYgMTg5LjMgMTEuNiAxMyAzMS4zIDEzIDQyLjkgMCAzNC41LTM4LjkgOTguNi0xMjAuNCA5OC42LTE4OS4zIDAtNjUuMS01My43LTExNy45LTEyMC0xMTcuOVMzOTIgMjc2LjggMzkyIDM0MS45eiJdfSxkbXI9Sl9lLHVtcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwZW4tZmFuY3kiLGljb246WzUxMiw1MTIsWzEyODM5NSwxMDAwMl0sImY1YWMiLCJNMzczLjUgMjcuMWMxNS0xNy4yIDM2LjctMjcuMSA1OS42LTI3LjEgNDMuNiAwIDc5IDM1LjQgNzkgNzkgMCAyMi44LTkuOSA0NC42LTI3LjEgNTkuNkwyODMuNyAzMTMuOCAyNzMgMzAzIDIwOSAyMzkgMTk4LjIgMjI4LjMgMzczLjUgMjcuMXpNMTYxLjEgMjU5QzE2MiAyNjAgMTg4IDI4NiAyMzkgMzM3bDEzLjkgMTMuOS0xNy4xIDc0LjJjLTMuOSAxNy4xLTE2LjkgMzAuNy0zMy44IDM1LjRsLTE2OS44IDQ3LjUgOTIuMy05Mi4zYzEuMiAuMSAyLjMgLjIgMy41IC4yIDE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMyLTMyIDE0LjMtMzIgMzJjMCAxLjIgLjEgMi40IC4yIDMuNUwzLjkgNDc5LjggNTEuNSAzMTBjNC43LTE2LjkgMTguMy0yOS45IDM1LjQtMzMuOEwxNjEuMSAyNTl6Il19LGcyZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJldXJvLXNpZ24iLGljb246WzQ0OCw1MTIsWzgzNjQsImV1ciIsImV1cm8iXSwiZjE1MyIsIk03My4zIDE5MkMxMDAuOCA5OS41IDE4Ni41IDMyIDI4OCAzMmw2NCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC02NCAwYy02NS42IDAtMTIyIDM5LjUtMTQ2LjcgOTZMMjcyIDE5MmMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtMTQzLjIgMGMtLjUgNS4zLS44IDEwLjYtLjggMTZzLjMgMTAuNyAuOCAxNkwyNzIgMjcyYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC0xMzAuNyAwYzI0LjcgNTYuNSA4MS4xIDk2IDE0Ni43IDk2bDY0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTY0IDBjLTEwMS41IDAtMTg3LjItNjcuNS0yMTQuNy0xNjBMNDAgMzIwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0bDI0LjYgMGMtLjctMTAuNS0uNy0yMS41IDAtMzJMNDAgMjQwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0bDMzLjMgMHoiXX0sZm1yPWcyZSxwbXI9ZzJlLGhtcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJob3VzZS1jaXJjbGUteG1hcmsiLGljb246WzY0MCw1MTIsW10sImU1MGIiLCJNNDk2IDU0NGExNDQgMTQ0IDAgMSAxIDAtMjg4IDE0NCAxNDQgMCAxIDEgMCAyODh6TTI2OC42IDYuNWMxMi4yLTkuMyAyOS43LTguNyA0MS4yIDJsMjE3LjYgMjAyYy0xMC4yLTEuNy0yMC43LTIuNi0zMS4zLTIuNi03OC42IDAtMTQ2LjIgNDcuMi0xNzUuOSAxMTQuOC01LTEuOC0xMC41LTIuOC0xNi4xLTIuOGwtMzIgMGMtMjYuNSAwLTQ4IDIxLjUtNDggNDhsMCA5NiA5MC45IDBjNi4xIDE3LjMgMTQuNiAzMy40IDI1LjIgNDhMMTQ0IDUxMmMtMzUuMyAwLTY0LTI4LjctNjQtNjRsMC0xNzYtMTYgMGMtMTMuMiAwLTI1LTguMS0yOS44LTIwLjNzLTEuNi0yNi4yIDgtMzUuMWwyMjQtMjA4IDIuNC0yek01NTUuMyAzNDAuN2MtNi4yLTYuMi0xNi40LTYuMi0yMi42IDBsLTM2LjcgMzYuNy0zNi43LTM2LjdjLTYuMi02LjItMTYuNC02LjItMjIuNiAwcy02LjIgMTYuNCAwIDIyLjZsMzYuNyAzNi43LTM2LjcgMzYuN2MtNi4yIDYuMi02LjIgMTYuNCAwIDIyLjZzMTYuNCA2LjIgMjIuNiAwbDM2LjctMzYuNyAzNi43IDM2LjdjNi4yIDYuMiAxNi40IDYuMiAyMi42IDBzNi4yLTE2LjQgMC0yMi42bC0zNi43LTM2LjcgMzYuNy0zNi43YzYuMi02LjIgNi4yLTE2LjQgMC0yMi42eiJdfSxtbXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibGlyYS1zaWduIixpY29uOlszODQsNTEyLFs4MzU2XSwiZjE5NSIsIk04NC45IDI1NmwtMjguNCAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0bDExLjYgMEM1My4yIDEyNC43IDExNi44IDQyIDIwNy42IDQybDguMiAwYzMzLjYgMCA2Ni4yIDExLjMgOTIuNSAzMi4ybDE2LjEgMTIuN2MxMy45IDExIDE2LjIgMzEuMSA1LjIgNDVzLTMxLjEgMTYuMi00NSA1LjJsLTE2LjEtMTIuN2MtMTUtMTEuOS0zMy42LTE4LjQtNTIuOC0xOC40bC04LjIgMGMtNTMuOCAwLTkwLjEgNTIuOS03My41IDEwMmwxNjIuNCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC0xNDUuMSAwYzIuMyAxMC42IDMuNiAyMS4zIDMuOSAzMmwxNDEuMiAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0TDE1MCAzMzZjLTQuOCAxOC42LTEyLjYgMzYuNS0yMy42IDUyLjlsLTE4LjEgMjcuMSAyMTIuMiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC0yNzIgMGMtMTEuOCAwLTIyLjYtNi41LTI4LjItMTYuOXMtNS0yMyAxLjYtMzIuOWw1MS4yLTc2LjhjMy43LTUuNiA2LjktMTEuNCA5LjQtMTcuNGwtMjYgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNGwzNC44IDBjLS41LTEwLjgtMi42LTIxLjYtNi40LTMyeiJdfSxQOT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ5ZW4tc2lnbiIsaWNvbjpbMzg0LDUxMixbMTY1LCJjbnkiLCJqcHkiLCJybWIiLCJ5ZW4iXSwiZjE1NyIsIk03NC45IDQ2LjdjLTkuNi0xNC45LTI5LjQtMTkuMi00NC4yLTkuNlMxMS41IDY2LjQgMjEuMSA4MS4zTDE0My43IDI3MiA4OCAyNzJjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsNzIgMCAwIDMyLTcyIDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsNzIgMCAwIDQ4YzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC00OCA3MiAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC03MiAwIDAtMzIgNzIgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtNTUuNyAwIDEyMi42LTE5MC43YzkuNi0xNC45IDUuMy0zNC43LTkuNi00NC4ycy0zNC43LTUuMy00NC4yIDkuNkwxOTIgMjI4LjggNzQuOSA0Ni43eiJdfSxnbXI9UDkseG1yPVA5LGJtcj1QOSx2bXI9UDkseW1yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJveC1vcGVuIixpY29uOls2NDAsNTEyLFtdLCJmNDllIiwiTTU2MC4zIDIzNy4yYzEwLjQgMTEuOCAyOC4zIDE0LjQgNDEuOCA1LjUgMTQuNy05LjggMTguNy0yOS43IDguOS00NC40bC00OC03MmMtMi44LTQuMi02LjYtNy43LTExLjEtMTAuMkwzNTEuNCA0LjdjLTE5LjMtMTAuNy00Mi44LTEwLjctNjIuMiAwTDg4LjggMTE2Yy01LjQgMy05LjcgNy40LTEyLjYgMTIuOEwyNy43IDIxOC43Yy0xMi42IDIzLjQtMy44IDUyLjUgMTkuNiA2NS4xbDMzIDE3LjcgMCA1My4zYzAgMjMgMTIuNCA0NC4zIDMyLjQgNTUuN2wxNzYgOTkuN2MxOS42IDExLjEgNDMuNSAxMS4xIDYzLjEgMGwxNzYtOTkuN2MyMC4xLTExLjQgMzIuNC0zMi42IDMyLjQtNTUuN2wwLTExNy41em0tMjQwLTkuOEwxNzAuMiAxNDQgMzIwLjMgNjAuNiA0NzAuNCAxNDQgMzIwLjMgMjI3LjR6bS00MS41IDUwLjJsLTIxLjMgNDYuMi0xNjUuOC04OC44IDI1LjQtNDcuMiAxNjEuNyA4OS44eiJdfSx3bXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidHJ1Y2stZmllbGQiLGljb246WzY0MCw1MTIsW10sImU1OGQiLCJNMzIgOTZjMC0zNS4zIDI4LjctNjQgNjQtNjRsMjI0IDBjMjMuNyAwIDQ0LjQgMTIuOSA1NS40IDMybDQwLjQgMGMzMi40IDAgNjEuNiAxOS42IDc0IDQ5LjVsNDMuOCAxMDYuMyAxLjcgNC4yIDI0LjcgMGMyNi41IDAgNDggMjEuNSA0OCA0OGwwIDY0YzAgMjYuNS0yMS41IDQ4LTQ4IDQ4bC0uNCAwYy4yIDIuNiAuNCA1LjMgLjQgOCAwIDQ4LjYtMzkuNCA4OC04OCA4OHMtODgtMzkuNC04OC04OGMwLTIuNyAuMS01LjQgLjQtOGwtMTQ0LjcgMGMuMiAyLjYgLjQgNS4zIC40IDggMCA0OC42LTM5LjQgODgtODggODhzLTg4LTM5LjQtODgtODhjMC0zLjYgLjItNy4xIC42LTEwLjUtMTktNi40LTMyLjYtMjQuNC0zMi42LTQ1LjVsMC00OGMtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC05NmMwLTE3LjcgMTQuMy0zMiAzMi0zMmwwLTMyem0zNTIgMzJsMCA5NiA4Mi4xIDAtMzUuNC04Ni4xYy0yLjUtNi04LjMtOS45LTE0LjgtOS45TDM4NCAxMjh6TTE5MiAzOTJhNDAgNDAgMCAxIDAgLTgwIDAgNDAgNDAgMCAxIDAgODAgMHptMjgwIDQwYTQwIDQwIDAgMSAwIDAtODAgNDAgNDAgMCAxIDAgMCA4MHoiXX0sTW1yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImxvY2F0aW9uLXBpbi1sb2NrIixpY29uOls1MTIsNTEyLFtdLCJlNTFmIiwiTTAgMTg4LjZDMCA4NC40IDg2IDAgMTkyIDAgMjk0LjEgMCAzNzcuNiA3OC4zIDM4My42IDE3NyAzMjAuNyAxODUuMSAyNzIgMjM4LjggMjcyIDMwNGwwIDI0LjRjLTE5LjYgMTcuNi0zMiA0My4xLTMyIDcxLjVsMCA3NS43Yy05LjkgMTEuNi0xOC45IDIxLjctMjYuNCAyOS44LTExLjggMTIuOC0zMS41IDEyLjgtNDMuMyAwLTUwLjItNTQuNS0xNzAuNC0xOTcuNS0xNzAuNC0zMTYuOHpNMTkyIDI1NmE2NCA2NCAwIDEgMCAwLTEyOCA2NCA2NCAwIDEgMCAwIDEyOHptMjQwIDQ4LjFjMC0xNy43LTE0LjMtMzItMzItMzJzLTMyIDE0LjMtMzIgMzJsMCA0Ny45IDY0IDAgMC00Ny45ek0yODggNDAwYzAtMjAuOSAxMy40LTM4LjcgMzItNDUuM2wwLTUwLjZjMC00NC4yIDM1LjgtODAgODAtODBzODAgMzUuOCA4MCA4MGwwIDUwLjZjMTguNiA2LjYgMzIgMjQuNCAzMiA0NS4zbDAgOTZjMCAyNi41LTIxLjUgNDgtNDggNDhsLTEyOCAwYy0yNi41IDAtNDgtMjEuNS00OC00OGwwLTk2eiJdfSxlVGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGVyc29uLXByYXlpbmciLGljb246WzM4NCw1MTIsWzEyODcyMCwicHJheSJdLCJmNjgzIiwiTTMyMCA2NGE2NCA2NCAwIDEgMCAtMTI4IDAgNjQgNjQgMCAxIDAgMTI4IDB6TTIwMC43IDI2NGwyMi45IDMxLjVjNi41IDguOSAxNi4zIDE0LjcgMjcuMiAxNi4xczIxLjktMS43IDMwLjQtOC43bDg4LTcyYzE3LjEtMTQgMTkuNi0zOS4yIDUuNi01Ni4zcy0zOS4yLTE5LjYtNTYuMy01LjZsLTU1LjIgNDUuMi0yNi4yLTM2Yy0xNS42LTIxLjUtNDAuNi0zNC4yLTY3LjItMzQuMi0zMC45IDAtNTkuMiAxNy4xLTczLjYgNDQuNEw0Ny44IDI4MC45Yy0yMC4yIDM4LjUtOS40IDg1LjkgMjUuNiAxMTEuOEwxMjYuNiA0MzIgNDAgNDMyYy0yMi4xIDAtNDAgMTcuOS00MCA0MHMxNy45IDQwIDQwIDQwbDIwOCAwYzE3LjMgMCAzMi42LTExLjEgMzgtMjcuNXMtLjMtMzQuNC0xNC4yLTQ0LjdsLTExNi4xLTg1LjggNDUtOTB6Il19LGttcj1lVGUsU21yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNsaXBib2FyZC1saXN0IixpY29uOlszODQsNTEyLFtdLCJmNDZkIiwiTTMxMS40IDMybDguNiAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMzUyYzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDUxMmMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCA5NkMwIDYwLjcgMjguNyAzMiA2NCAzMmw4LjYgMEM4My42IDEyLjkgMTA0LjMgMCAxMjggMEwyNTYgMGMyMy43IDAgNDQuNCAxMi45IDU1LjQgMzJ6TTI0OCAxMTJjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRMMTM2IDY0Yy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDExMiAwek0xMjggMjU2YTMyIDMyIDAgMSAwIC02NCAwIDMyIDMyIDAgMSAwIDY0IDB6bTMyIDBjMCAxMy4zIDEwLjcgMjQgMjQgMjRsMTEyIDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTExMiAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHptMCAxMjhjMCAxMy4zIDEwLjcgMjQgMjQgMjRsMTEyIDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTExMiAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHpNOTYgNDE2YTMyIDMyIDAgMSAwIDAtNjQgMzIgMzIgMCAxIDAgMCA2NHoiXX0sem1yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNhY2stZG9sbGFyIixpY29uOls1MTIsNTEyLFsxMjgxNzZdLCJmODFkIiwiTTMyOCAxMTJsLTE0NCAwLTM3LjMtNzQuNWMtMS44LTMuNi0yLjctNy42LTIuNy0xMS42IDAtMTQuMyAxMS42LTI1LjkgMjUuOS0yNS45TDM0Mi4xIDBjMTQuMyAwIDI1LjkgMTEuNiAyNS45IDI1LjkgMCA0LS45IDgtMi43IDExLjZMMzI4IDExMnpNMTY5LjYgMTYwbDE3Mi44IDAgNDguNyA0MC42QzQ1Ny42IDI1NiA0OTYgMzM4IDQ5NiA0MjQuNSA0OTYgNDcyLjggNDU2LjggNTEyIDQwOC41IDUxMmwtMzA1LjEgMEM1NS4yIDUxMiAxNiA0NzIuOCAxNiA0MjQuNSAxNiAzMzggNTQuNCAyNTYgMTIwLjkgMjAwLjZMMTY5LjYgMTYwek0yNjAgMjI0Yy0xMSAwLTIwIDktMjAgMjBsMCA0Yy0yOC44IC4zLTUyIDIzLjctNTIgNTIuNSAwIDI1LjcgMTguNSA0Ny42IDQzLjkgNTEuOGw0MS43IDdjNiAxIDEwLjQgNi4yIDEwLjQgMTIuMyAwIDYuOS01LjYgMTIuNS0xMi41IDEyLjVMMjE2IDM4NGMtMTEgMC0yMCA5LTIwIDIwczkgMjAgMjAgMjBsMjQgMCAwIDRjMCAxMSA5IDIwIDIwIDIwczIwLTkgMjAtMjBsMC00LjdjMjUtNC4xIDQ0LTI1LjcgNDQtNTEuOCAwLTI1LjctMTguNS00Ny42LTQzLjktNTEuOGwtNDEuNy03Yy02LTEtMTAuNC02LjItMTAuNC0xMi4zIDAtNi45IDUuNi0xMi41IDEyLjUtMTIuNWw0Ny41IDBjMTEgMCAyMC05IDIwLTIwcy05LTIwLTIwLTIwbC04IDAgMC00YzAtMTEtOS0yMC0yMC0yMHoiXX0sQ21yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im1vdW50YWluLXN1biIsaWNvbjpbNTc2LDUxMixbXSwiZTUyZiIsIk0yNTYuNSAwYzE0LjcgMCAyOC4yIDguMSAzNS4yIDIxbDIxNiA0MDBjNi43IDEyLjQgNi40IDI3LjQtLjggMzkuNS03LjIgMTIuMS0yMC4zIDE5LjUtMzQuMyAxOS41bC00MzIgMGMtMTQuMSAwLTI3LjEtNy40LTM0LjMtMTkuNXMtNy41LTI3LjEtLjgtMzkuNWwyMTYtNDAwIDIuOS00LjZDMjMxLjcgNi4yIDI0My42IDAgMjU2LjUgMHpNMTcwLjQgMjQ5LjlsMjYuOCAyNi44YzYuMiA2LjIgMTYuNCA2LjIgMjIuNiAwbDQzLjMtNDMuM2M2LTYgMTQuMS05LjQgMjIuNi05LjRsNDIuOCAwLTcyLjEtMTMzLjUtODYuMSAxNTkuNHpNNDk2LjUgMTYwYTgwIDgwIDAgMSAxIDAtMTYwIDgwIDgwIDAgMSAxIDAgMTYweiJdfSx0VGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYXJyb3ctdXAtd2lkZS1zaG9ydCIsaWNvbjpbNTc2LDUxMixbInNvcnQtYW1vdW50LXVwIl0sImYxNjEiLCJNMTUwLjYgNDEuNGMtMTIuNS0xMi41LTMyLjgtMTIuNS00NS4zIDBsLTk2IDk2Yy0xMi41IDEyLjUtMTIuNSAzMi44IDAgNDUuM3MzMi44IDEyLjUgNDUuMyAwTDk2IDE0MS4zIDk2IDQ0OGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMzA2LjcgNDEuNCA0MS40YzEyLjUgMTIuNSAzMi44IDEyLjUgNDUuMyAwczEyLjUtMzIuOCAwLTQ1LjNsLTk2LTk2ek0zMjAgNDgwbDMyIDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTMyIDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJ6bTAtMTI4bDk2IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTk2IDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJ6bTAtMTI4bDE2MCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC0xNjAgMGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMnptMC0xMjhsMjI0IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJMMzIwIDMyYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMyeiJdfSxfbXI9dFRlLFRtcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ1c2Vycy1saW5lIixpY29uOls1NzYsNTEyLFtdLCJlNTkyIiwiTTIyNCAxMjhhNjQgNjQgMCAxIDEgMTI4IDAgNjQgNjQgMCAxIDEgLTEyOCAwek0xNzYgMzM2YzAtNjEuOSA1MC4xLTExMiAxMTItMTEyczExMiA1MC4xIDExMiAxMTJsMCA4YzAgMTMuMy0xMC43IDI0LTI0IDI0bC0xNzYgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRsMC04ek0zOTIgMTQ0YTU2IDU2IDAgMSAxIDExMiAwIDU2IDU2IDAgMSAxIC0xMTIgMHptMjcuMiAxMDAuNGM5LjEtMi45IDE4LjgtNC40IDI4LjgtNC40IDUzIDAgOTYgNDMgOTYgOTZsMCAxMC43YzAgMTEuOC05LjYgMjEuMy0yMS4zIDIxLjNsLTc4LjggMGMyLjctNy41IDQuMS0xNS42IDQuMS0yNGwwLThjMC0zNC4xLTEwLjYtNjUuNy0yOC44LTkxLjZ6bS0yNjIuNCAwYy0xOC4yIDI2LTI4LjggNTcuNS0yOC44IDkxLjZsMCA4YzAgOC40IDEuNCAxNi41IDQuMSAyNGwtNzguOCAwQzQxLjYgMzY4IDMyIDM1OC40IDMyIDM0Ni43TDMyIDMzNmMwLTUzIDQzLTk2IDk2LTk2IDEwIDAgMTkuNyAxLjUgMjguOCA0LjR6TTcyIDE0NGE1NiA1NiAwIDEgMSAxMTIgMCA1NiA1NiAwIDEgMSAtMTEyIDB6TTAgNDQwYzAtMTMuMyAxMC43LTI0IDI0LTI0bDUyOCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0TDI0IDQ2NGMtMTMuMyAwLTI0LTEwLjctMjQtMjR6Il19LExtcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzdGFyLW9mLWRhdmlkIixpY29uOls1MTIsNTEyLFsxMDAxN10sImY2OWEiLCJNNDE1LjkgMzExLjlsLTI3LjggNDguMSA1NS43IDAtMjcuOC00OC4xek0zODMuNiAyNTZsLTYwLjItMTA0LTEzNC44IDAtNjAuMiAxMDQgNjAuMiAxMDQgMTM0LjggMCA2MC4yLTEwNHptNjQuNyAwbDU4LjQgMTAwLjljMy41IDYgNS4zIDEyLjggNS4zIDE5LjcgMCAyMS43LTE3LjYgMzkuNC0zOS40IDM5LjRsLTExNyAwLTYxLjMgMTA1LjhDMjg2LjUgNTM1LjYgMjcxLjggNTQ0IDI1NiA1NDRzLTMwLjUtOC40LTM4LjQtMjIuMmwtNjEuMy0xMDUuOC0xMTcgMGMtMjEuNyAwLTM5LjQtMTcuNi0zOS40LTM5LjQgMC02LjkgMS44LTEzLjcgNS4zLTE5LjdMNjMuNyAyNTYgNS4zIDE1NS4xQzEuOCAxNDkuMSAwIDE0Mi4zIDAgMTM1LjQgMCAxMTMuNiAxNy42IDk2IDM5LjQgOTZsMTE3IDAgNjEuMy0xMDUuOEMyMjUuNS0yMy42IDI0MC4yLTMyIDI1Ni0zMnMzMC41IDguNCAzOC40IDIyLjJsNjEuMyAxMDUuOCAxMTcgMGMyMS43IDAgMzkuNCAxNy42IDM5LjQgMzkuNCAwIDYuOS0xLjggMTMuNy01LjMgMTkuN0w0NDguMyAyNTZ6TTM4OC4xIDE1MmwyNy44IDQ4LjEgMjcuOC00OC4xLTU1LjcgMHpNMjkxIDk2bC0zNS02MC40LTM1IDYwLjQgNzAgMHpNMTIzLjkgMTUybC01NS43IDAgMjcuOCA0OC4xIDI3LjgtNDguMXpNOTYuMSAzMTEuOWwtMjcuOCA0OC4xIDU1LjcgMC0yNy44LTQ4LjF6TTIyMSA0MTZsMzUgNjAuNCAzNS02MC40LTcwIDB6Il19LERtcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJub3Rlcy1tZWRpY2FsIixpY29uOls1MTIsNTEyLFtdLCJmNDgxIiwiTTk2IDM1MmMwIDM1LjMgMjguNyA2NCA2NCA2NGwxODEuNSAwYzE3IDAgMzMuMy02LjcgNDUuMy0xOC43TDQ5My4zIDI5MC43YzEyLTEyIDE4LjctMjguMyAxOC43LTQ1LjNMNTEyIDY0YzAtMzUuMy0yOC43LTY0LTY0LTY0TDE2MCAwQzEyNC43IDAgOTYgMjguNyA5NiA2NGwwIDI4OHpNMjg4IDExMmwzMiAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDQ4IDQ4IDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMzJjMCA4LjgtNy4yIDE2LTE2IDE2bC00OCAwIDAgNDhjMCA4LjgtNy4yIDE2LTE2IDE2bC0zMiAwYy04LjggMC0xNi03LjItMTYtMTZsMC00OC00OCAwYy04LjggMC0xNi03LjItMTYtMTZsMC0zMmMwLTguOCA3LjItMTYgMTYtMTZsNDggMCAwLTQ4YzAtOC44IDcuMi0xNiAxNi0xNnpNNDggMTIwYzAtMTMuMy0xMC43LTI0LTI0LTI0UzAgMTA2LjcgMCAxMjBMMCA0NDhjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMjY0IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRMNjQgNDY0Yy04LjggMC0xNi03LjItMTYtMTZsMC0zMjh6Il19LEFtcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJhdXN0cmFsLXNpZ24iLGljb246WzQ0OCw1MTIsW10sImUwYTkiLCJNMjY2LjUgMjQwbC04NSAwIDQyLjUtMTA2LjQgNDIuNSAxMDYuNHptNjguOSAwTDI2Mi45IDU4LjNDMjU2LjUgNDIuNCAyNDEuMSAzMiAyMjQgMzJzLTMyLjUgMTAuNC0zOC45IDI2LjNMMTEyLjYgMjQwIDMyIDI0MGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGw2MS40IDAtMTkuMiA0OC00Mi4zIDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsMjMuMSAwLTIwLjggNTIuMWMtNi42IDE2LjQgMS40IDM1IDE3LjkgNDEuNnMzNS0xLjQgNDEuNi0xNy45bDMwLjMtNzUuOSAyMDAgMCAzMC4zIDc1LjljNi42IDE2LjQgMjUuMiAyNC40IDQxLjYgMTcuOXMyNC40LTI1LjIgMTcuOS00MS42TDM5Mi45IDM4NCA0MTYgMzg0YzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC00Mi4zIDAtMTkuMi00OCA2MS40IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTgwLjYgMHptLTQ5LjcgNDhsMTkuMiA0OC0xNjEuNiAwIDE5LjItNDggMTIzLjMgMHoiXX0sRW1yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNsaXBib2FyZC11c2VyIixpY29uOlszODQsNTEyLFtdLCJmN2YzIiwiTTMxMS40IDMybDguNiAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMzUyYzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDUxMmMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCA5NkMwIDYwLjcgMjguNyAzMiA2NCAzMmw4LjYgMEM4My42IDEyLjkgMTA0LjMgMCAxMjggMEwyNTYgMGMyMy43IDAgNDQuNCAxMi45IDU1LjQgMzJ6TTI0OCAxMTJjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRMMTM2IDY0Yy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDExMiAwek0xOTIgMzQ0YTU2IDU2IDAgMSAwIDAtMTEyIDU2IDU2IDAgMSAwIDAgMTEyek05OC4zIDQxM2MtMTIuOSAxNS42IDIuMiAzNSAyMi40IDM1bDE0Mi41IDBjMjAuMiAwIDM1LjMtMTkuNCAyMi40LTM1LTE0LjctMTcuNy0zNi45LTI5LTYxLjctMjlsLTY0IDBjLTI0LjggMC00NyAxMS4zLTYxLjcgMjl6Il19LCRtcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmaWxlLWltYWdlIixpY29uOlszODQsNTEyLFsxMjg0NDNdLCJmMWM1IiwiTTAgNjRDMCAyOC43IDI4LjcgMCA2NCAwTDIxMy41IDBjMTcgMCAzMy4zIDYuNyA0NS4zIDE4LjdMMzY1LjMgMTI1LjNjMTIgMTIgMTguNyAyOC4zIDE4LjcgNDUuM0wzODQgNDQ4YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDUxMmMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCA2NHptMjA4LTUuNWwwIDkzLjVjMCAxMy4zIDEwLjcgMjQgMjQgMjRMMzI1LjUgMTc2IDIwOCA1OC41ek0xMjggMjU2YTMyIDMyIDAgMSAwIC02NCAwIDMyIDMyIDAgMSAwIDY0IDB6TTkyLjYgNDQ4bDE5OC44IDBjMTUuOCAwIDI4LjYtMTIuOCAyOC42LTI4LjYgMC03LjMtMi44LTE0LjQtNy45LTE5LjdMMjE1LjMgMjk3LjljLTYtNi4zLTE0LjQtOS45LTIzLjItOS45bC0uMyAwYy04LjggMC0xNy4xIDMuNi0yMy4yIDkuOUw3MS45IDM5OS43QzY2LjggNDA1IDY0IDQxMi4xIDY0IDQxOS40IDY0IDQzNS4yIDc2LjggNDQ4IDkyLjYgNDQ4eiJdfSxyVGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic3F1YXJlLWNhcmV0LXJpZ2h0IixpY29uOls0NDgsNTEyLFsiY2FyZXQtc3F1YXJlLXJpZ2h0Il0sImYxNTIiLCJNNDQ4IDk2YzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzIwIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zMjB6TTMyMCAyNTZjMCA2LjctMi44IDEzLTcuNyAxNy42bC0xMTIgMTA0Yy03IDYuNS0xNy4yIDguMi0yNS45IDQuNFMxNjAgMzY5LjUgMTYwIDM2MGwwLTIwOGMwLTkuNSA1LjctMTguMiAxNC40LTIyczE4LjktMi4xIDI1LjkgNC40bDExMiAxMDRjNC45IDQuNSA3LjcgMTAuOSA3LjcgMTcuNnoiXX0sUG1yPXJUZSxJbXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidmlhbCIsaWNvbjpbNTEyLDUxMixbMTI5NTE0XSwiZjQ5MiIsIk0zNDIuNiA5LjRjLTEyLjUtMTIuNS0zMi44LTEyLjUtNDUuMyAwcy0xMi41IDMyLjggMCA0NS4zTDMwNi43IDY0IDI4LjEgMzQyLjZDMTAuMSAzNjAuNiAwIDM4NSAwIDQxMC41TDAgNDE2YzAgNTMgNDMgOTYgOTYgOTZsNS41IDBjMjUuNSAwIDQ5LjktMTAuMSA2Ny45LTI4LjFsMjc4LjYtMjc4LjYgOS40IDkuNGMxMi41IDEyLjUgMzIuOCAxMi41IDQ1LjMgMHMxMi41LTMyLjggMC00NS4zbC0xNjAtMTYwek0yMDUuMyAyNTZsMTQ2LjctMTQ2LjcgNTAuNyA1MC43LTk2IDk2LTEwMS41IDB6Il19LE5tcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJoZWxpY29wdGVyIixpY29uOls1NzYsNTEyLFsxMjg2NDFdLCJmNTMzIiwiTTE3NiAzMmMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwxNTIgMCAwIDQ4LTIyMC44IDAtMzIuOC0zOS40QzY5LjkgODMuMiA2My4xIDgwIDU2IDgwTDI0IDgwQzE1LjcgODAgOCA4NC4zIDMuNiA5MS40cy00LjggMTUuOS0xLjEgMjMuNGw0OCA5NkM1NC42IDIxOC45IDYyLjkgMjI0IDcyIDIyNGwxMDcuOCAwIDEwNCAxNDMuMWMxNS4xIDIwLjcgMzkuMSAzMi45IDY0LjcgMzIuOWw3NS41IDBjNzUuMSAwIDEzNi02MC45IDEzNi0xMzZTNDk5LjEgMTI4IDQyNCAxMjhsLTQ4IDAgMC00OCAxNTIgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNEwxNzYgMzJ6TTM3NiAxOTJsNDggMGMzOS44IDAgNzIgMzIuMiA3MiA3MnMtMzIuMiA3Mi03MiA3MmwtNDggMCAwLTE0NHpNNTUyIDQxNmMtMTMuMyAwLTI0IDEwLjctMjQgMjQgMCA0LjQtMy42IDgtOCA4bC0yNzIgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwyNzIgMGMzMC45IDAgNTYtMjUuMSA1Ni01NiAwLTEzLjMtMTAuNy0yNC0yNC0yNHoiXX0sRm1yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im1pdHRlbiIsaWNvbjpbNDQ4LDUxMixbXSwiZjdiNSIsIk0zNTIgMzg0TDY0IDM4NCA1LjQgMTc4LjlDMS44IDE2Ni40IDAgMTUzLjQgMCAxNDAuMyAwIDYyLjggNjIuOCAwIDE0MC4zIDBsMy40IDBjNjYgMCAxMjMuNSA0NC45IDEzOS41IDEwOC45bDMxLjQgMTI1LjggMTcuNi0yMC4xQzM0NC44IDIwMC4yIDM2Mi45IDE5MiAzODIgMTkybDIuOCAwYzM0LjkgMCA2My4zIDI4LjMgNjMuMyA2My4zIDAgMTUuOS02IDMxLjItMTYuOCA0Mi45TDM1MiAzODR6TTMyIDQ2NGMwLTE3LjcgMTQuMy0zMiAzMi0zMmwyODggMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDE2YzAgMTcuNy0xNC4zIDMyLTMyIDMyTDY0IDUxMmMtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC0xNnoiXX0sT21yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Imdhcy1wdW1wIixpY29uOls1MTIsNTEyLFs5OTgxXSwiZjUyZiIsIk0zMiA2NEMzMiAyOC43IDYwLjcgMCA5NiAwTDI1NiAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMTkyIDggMGM0OC42IDAgODggMzkuNCA4OCA4OGwwIDMyYzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC0xNTRjLTI3LjYtNy4xLTQ4LTMyLjItNDgtNjJsMC01OS41LTI1LjgtMjguM2MtOC45LTkuOC04LjItMjUgMS42LTMzLjlzMjUtOC4yIDMzLjkgMS42bDcxLjcgNzguOGM5LjQgMTAuMyAxNC42IDIzLjcgMTQuNiAzNy43TDUxMiAzNzZjMCAzOS44LTMyLjIgNzItNzIgNzJzLTcyLTMyLjItNzItNzJsMC0zMmMwLTIyLjEtMTcuOS00MC00MC00MGwtOCAwIDAgMTYxLjRjOS4zIDMuMyAxNiAxMi4yIDE2IDIyLjYgMCAxMy4zLTEwLjcgMjQtMjQgMjRMNDAgNTEyYy0xMy4zIDAtMjQtMTAuNy0yNC0yNCAwLTEwLjUgNi43LTE5LjMgMTYtMjIuNkwzMiA2NHpNOTYgODBsMCA5NmMwIDguOCA3LjIgMTYgMTYgMTZsMTI4IDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtOTZjMC04LjgtNy4yLTE2LTE2LTE2TDExMiA2NGMtOC44IDAtMTYgNy4yLTE2IDE2eiJdfSxSbXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZW52ZWxvcGUtY2lyY2xlLWNoZWNrIixpY29uOls2NDAsNTEyLFtdLCJlNGU4IiwiTTY0IDExMmMwLTI2LjUgMjEuNS00OCA0OC00OGw0MTYgMGMyNi41IDAgNDggMjEuNSA0OCA0OGwwIDgxLjRjLTI0LjQtMTEuMi01MS40LTE3LjQtODAtMTcuNC04Ny43IDAtMTYxLjcgNTguOC0xODQuNyAxMzkuMi03LjEtMS4zLTE0LjEtNC4yLTIwLjEtOC44bC0yMDgtMTU2QzcxLjEgMTQxLjMgNjQgMTI3LjEgNjQgMTEyek0zMDQgMzY4YzAgMjguNiA2LjIgNTUuNiAxNy40IDgwTDEyOCA0NDhjLTM1LjMgMC02NC0yOC43LTY0LTY0bDAtMTg4IDE5OC40IDE0OC44YzEyLjYgOS40IDI2LjkgMTUuNCA0MS43IDE3LjkgMCAxLjgtLjEgMy41LS4xIDUuM3ptNDggMGExNDQgMTQ0IDAgMSAxIDI4OCAwIDE0NCAxNDQgMCAxIDEgLTI4OCAwem0yMDEuNC02MC45Yy03LjEtNS4yLTE3LjItMy42LTIyLjQgMy41bC01MyA3Mi45LTI2LjgtMjYuOGMtNi4yLTYuMi0xNi40LTYuMi0yMi42IDBzLTYuMiAxNi40IDAgMjIuNmw0MCA0MGMzLjMgMy4zIDcuOSA1IDEyLjYgNC42czguOS0yLjggMTEuNy02LjVsNjQtODhjNS4yLTcuMSAzLjYtMTcuMi0zLjUtMjIuM3oiXX0sYVRlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBlcnNvbi1za2F0aW5nIixpY29uOls1MTIsNTEyLFsic2thdGluZyJdLCJmN2M1IiwiTTM2OCA1NmE1NiA1NiAwIDEgMSAxMTIgMCA1NiA1NiAwIDEgMSAtMTEyIDB6TTEyOCAxMjhjMC0xNy43IDE0LjMtMzIgMzItMzJsMTUwLjEgMGM0OS45IDAgNzQuOSA2MC4zIDM5LjYgOTUuNmwtNjMuOSA2My45IDY5LjggMzFjMTcuMyA3LjcgMjguNSAyNC45IDI4LjUgNDMuOWwwIDg1LjZjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC03NS4yLTgyLjQtMzYuNmMtNDEtMTguMi01MS03Mi0xOS4zLTEwMy43bDQwLjQtNDAuNC05OC43IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyek04OS40IDM2MS40bDc1LjktNzUuOWM3LjcgMTkuNyAyMS42IDM3LjMgNDEgNDkuNmwtNzEuNiA3MS42Yy0xMi41IDEyLjUtMzIuOCAxMi41LTQ1LjMgMHMtMTIuNS0zMi44IDAtNDUuM3ptMzQ2LjUgODcuMWM4LjYgMi4xIDEzLjggMTAuOCAxMS42IDE5LjRsLS40IDEuN2MtNi4yIDI0LjktMjguNiA0Mi40LTU0LjMgNDIuNEwzMDQgNTEyYy04LjggMC0xNi03LjItMTYtMTZzNy4yLTE2IDE2LTE2bDg4LjggMGMxMSAwIDIwLjYtNy41IDIzLjMtMTguMmwuNC0xLjdjMi4xLTguNiAxMC44LTEzLjggMTkuNC0xMS42ek0xNDMuMiA0ODYuM2wtNi4yIDMuMWMtMjEuNiAxMC44LTQ3LjYgNi42LTY0LjYtMTAuNUwxMi43IDQxOS4zYy02LjItNi4yLTYuMi0xNi40IDAtMjIuNnMxNi40LTYuMiAyMi42IDBsNTkuNiA1OS42YzcuMyA3LjMgMTguNSA5LjEgMjcuNyA0LjVsNi4yLTMuMWM3LjktNCAxNy41LS43IDIxLjUgNy4ycy43IDE3LjUtNy4yIDIxLjV6Il19LEJtcj1hVGUsb2xlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InN1biIsaWNvbjpbNTc2LDUxMixbOTcyOF0sImYxODUiLCJNMjg4LTMyYzguNCAwIDE2LjMgNC40IDIwLjYgMTEuN0wzNjQuMSA3Mi4zIDQ2OC45IDQ2YzguMi0yIDE2LjkgLjQgMjIuOCA2LjNTNTAwIDY3IDQ5OCA3NS4xbC0yNi4zIDEwNC43IDkyLjcgNTUuNWM3LjIgNC4zIDExLjcgMTIuMiAxMS43IDIwLjZzLTQuNCAxNi4zLTExLjcgMjAuNkw0NzEuNyAzMzIuMSA0OTggNDM2LjhjMiA4LjItLjQgMTYuOS02LjMgMjIuOFM0NzcgNDY4IDQ2OC45IDQ2NmwtMTA0LjctMjYuMy01NS41IDkyLjdjLTQuMyA3LjItMTIuMiAxMS43LTIwLjYgMTEuN3MtMTYuMy00LjQtMjAuNi0xMS43TDIxMS45IDQzOS43IDEwNy4yIDQ2NmMtOC4yIDItMTYuOC0uNC0yMi44LTYuM1M3NiA0NDUgNzggNDM2LjhsMjYuMi0xMDQuNy05Mi42LTU1LjVDNC40IDI3Mi4yIDAgMjY0LjQgMCAyNTZzNC40LTE2LjMgMTEuNy0yMC42TDEwNC4zIDE3OS45IDc4IDc1LjFjLTItOC4yIC4zLTE2LjggNi4zLTIyLjhTOTkgNDQgMTA3LjIgNDZsMTA0LjcgMjYuMiA1NS41LTkyLjYgMS44LTIuNmM0LjUtNS43IDExLjQtOS4xIDE4LjgtOS4xem0wIDE0NGExNDQgMTQ0IDAgMSAwIDAgMjg4IDE0NCAxNDQgMCAxIDAgMC0yODh6bTAgMjQwYTk2IDk2IDAgMSAxIDAtMTkyIDk2IDk2IDAgMSAxIDAgMTkyeiJdfSxpVGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYmFzZWJhbGwiLGljb246WzUxMiw1MTIsWzEyOTM1OCw5OTE4LCJiYXNlYmFsbC1iYWxsIl0sImY0MzMiLCJNMjMyLjQgMS4xYy0xMjIuMiAxMS40LTIxOS41IDEwOC43LTIzMC45IDIzMC45IDE2LjItLjEgMzItMS44IDQ3LjItNSAxMy0yLjcgMjUuNyA1LjUgMjguNCAxOC41cy01LjUgMjUuNy0xOC41IDI4LjRjLTE4LjQgMy45LTM3LjYgNi01Ny4xIDYuMSAxMS40IDEyMi4yIDEwOC43IDIxOS41IDIzMC45IDIzMC45IC4xLTE5LjUgMi4yLTM4LjcgNi4xLTU3LjEgMi43LTEzIDE1LjUtMjEuMyAyOC40LTE4LjVzMjEuMyAxNS41IDE4LjUgMjguNGMtMy4yIDE1LjItNC45IDMxLTUgNDcuMiAxMjIuMi0xMS40IDIxOS41LTEwOC43IDIzMC45LTIzMC45LTE2LjIgLjEtMzIgMS44LTQ3LjIgNS0xMyAyLjctMjUuNy01LjUtMjguNC0xOC41czUuNS0yNS43IDE4LjUtMjguNGMxOC40LTMuOSAzNy42LTYgNTcuMS02LjEtMTEuNC0xMjIuMi0xMDguNy0yMTkuNS0yMzAuOS0yMzAuOS0uMSAxOS41LTIuMiAzOC43LTYuMSA1Ny4xLTIuNyAxMy0xNS41IDIxLjMtMjguNCAxOC41cy0yMS4zLTE1LjUtMTguNS0yOC40YzMuMi0xNS4yIDQuOS0zMSA1LTQ3LjJ6bTIuOCAxNTEuNGMtMjEuNCAzMi45LTQ5LjUgNjAuOS04Mi4zIDgyLjMtMTEuMSA3LjItMjYgNC4xLTMzLjItN3MtNC4xLTI2IDctMzMuMmMyNy4yLTE3LjcgNTAuNS00MSA2OC4zLTY4LjMgNy4yLTExLjEgMjIuMS0xNC4zIDMzLjItN3MxNC4zIDIyLjEgNyAzMy4yek0zOTMuMSAyODQuMmM3LjIgMTEuMSA0LjEgMjYtNyAzMy4yLTI3LjIgMTcuNy01MC41IDQxLTY4LjMgNjguMy03LjIgMTEuMS0yMi4xIDE0LjMtMzMuMiA3cy0xNC4zLTIyLjEtNy0zMy4yYzIxLjQtMzIuOSA0OS41LTYwLjkgODIuMy04Mi4zIDExLjEtNy4yIDI2LTQuMSAzMy4yIDd6Il19LEhtcj1pVGUscW1yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImltYWdlIixpY29uOls0NDgsNTEyLFtdLCJmMDNlIiwiTTY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzIwIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zMjBjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzJ6bTY0IDgwYTQ4IDQ4IDAgMSAxIDAgOTYgNDggNDggMCAxIDEgMC05NnpNMjcyIDIyNGM4LjQgMCAxNi4xIDQuNCAyMC41IDExLjVsODggMTQ0YzQuNSA3LjQgNC43IDE2LjcgLjUgMjQuM1MzNjguNyA0MTYgMzYwIDQxNkw4OCA0MTZjLTguOSAwLTE3LjItNS0yMS4zLTEyLjlzLTMuNS0xNy41IDEuNi0yNC44bDU2LTgwYzQuNS02LjQgMTEuOC0xMC4yIDE5LjctMTAuMnMxNS4yIDMuOCAxOS43IDEwLjJsMjYuNCAzNy44IDYxLjQtMTAwLjVjNC40LTcuMSAxMi4xLTExLjUgMjAuNS0xMS41eiJdfSxqbXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibm90ZGVmIixpY29uOlszODQsNTEyLFtdLCJlMWZlIiwiTTY0IDM5MC4zTDE1My41IDI1NiA2NCAxMjEuNyA2NCAzOTAuM3pNMTAyLjUgNDQ4TDI4MS41IDQ0OCAxOTIgMzEzLjcgMTAyLjUgNDQ4em0xMjgtMTkyTDMyMCAzOTAuMyAzMjAgMTIxLjcgMjMwLjUgMjU2ek0yODEuNSA2NEwxMDIuNSA2NCAxOTIgMTk4LjMgMjgxLjUgNjR6TTAgNDhDMCAyMS41IDIxLjUgMCA0OCAwTDMzNiAwYzI2LjUgMCA0OCAyMS41IDQ4IDQ4bDAgNDE2YzAgMjYuNS0yMS41IDQ4LTQ4IDQ4TDQ4IDUxMmMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhMMCA0OHoiXX0sb1RlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJhc2tldGJhbGwiLGljb246WzUxMiw1MTIsWzEyNzkzNiwiYmFza2V0YmFsbC1iYWxsIl0sImY0MzQiLCJNOTIuNyA1OC44bDc4LjQgNzguNGMxOC4yLTI1IDI4LjktNTUuOSAyOC45LTg5LjIgMC0xNC4xLTEuOS0yNy43LTUuNS00MC42LTM4IDkuNC03Mi42IDI3LjItMTAxLjggNTEuNHpNNTguOCA5Mi43Yy0yNC4yIDI5LjItNDIgNjMuOC01MS40IDEwMS44IDEyLjkgMy42IDI2LjUgNS41IDQwLjYgNS41IDMzLjMgMCA2NC4xLTEwLjcgODkuMi0yOC45TDU4LjggOTIuN3pNMjU2IDBjLTQuNiAwLTkuMiAuMS0xMy43IC40IDMuNyAxNS4zIDUuNyAzMS4yIDUuNyA0Ny42IDAgNDYuNi0xNS45IDg5LjQtNDIuNiAxMjMuNEwyNTYgMjIyLjEgNDE5LjMgNTguOEMzNzQuOSAyMi4xIDMxOC4xIDAgMjU2IDB6TTQ4IDI0OGMtMTYuNCAwLTMyLjQtMi00Ny42LTUuNy0uMiA0LjUtLjQgOS4xLS40IDEzLjcgMCA2Mi4xIDIyLjEgMTE4LjkgNTguOCAxNjMuM0wyMjIuMSAyNTYgMTcxLjQgMjA1LjRDMTM3LjQgMjMyLjEgOTQuNiAyNDggNDggMjQ4em00NjMuNiAyMS43Yy4yLTQuNSAuNC05LjEgLjQtMTMuNyAwLTYyLjEtMjIuMS0xMTguOS01OC44LTE2My4zTDI4OS45IDI1NiAzNDAuNiAzMDYuNmMzNC0yNi43IDc2LjktNDIuNiAxMjMuNC00Mi42IDE2LjQgMCAzMi40IDIgNDcuNiA1Ljd6bS03LjEgNDcuOGMtMTIuOS0zLjYtMjYuNS01LjUtNDAuNi01LjUtMzMuMyAwLTY0LjEgMTAuNy04OS4yIDI4LjlsNzguNCA3OC40YzI0LjItMjkuMiA0Mi02My44IDUxLjQtMTAxLjh6TTM0MC45IDM3NC44Yy0xOC4yIDI1LTI4LjkgNTUuOS0yOC45IDg5LjIgMCAxNC4xIDEuOSAyNy43IDUuNSA0MC42IDM4LTkuNCA3Mi42LTI3LjIgMTAxLjgtNTEuNGwtNzguNC03OC40em0tMzQuMy0zNC4zTDI1NiAyODkuOSA5Mi43IDQ1My4yYzQ0LjMgMzYuNyAxMDEuMiA1OC44IDE2My4zIDU4LjggNC42IDAgOS4yLS4xIDEzLjctLjQtMy43LTE1LjMtNS43LTMxLjItNS43LTQ3LjYgMC00Ni42IDE1LjktODkuNCA0Mi42LTEyMy40eiJdfSxWbXI9b1RlLG5UZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwZW5jaWwiLGljb246WzUxMiw1MTIsWzk5OTksNjE1MDQsInBlbmNpbC1hbHQiXSwiZjMwMyIsIk0zNi40IDM1My4yYzQuMS0xNC42IDExLjgtMjcuOSAyMi42LTM4LjdsMTgxLjItMTgxLjIgMzMuOS0zMy45YzE2LjYgMTYuNiA1MS4zIDUxLjMgMTA0IDEwNGwzMy45IDMzLjktMzMuOSAzMy45LTE4MS4yIDE4MS4yYy0xMC43IDEwLjctMjQuMSAxOC41LTM4LjcgMjIuNkwzMC40IDUxMC42Yy04LjMgMi4zLTE3LjMgMC0yMy40LTYuMlMtMS40IDQ4OS4zIC45IDQ4MUwzNi40IDM1My4yem01NS42LTMuN2MtNC40IDQuNy03LjYgMTAuNC05LjMgMTYuNmwtMjQuMSA4Ni45IDg2LjktMjQuMWM2LjQtMS44IDEyLjItNS4xIDE3LTkuN0w5MS45IDM0OS41em0zNTQtMTQ2LjFjLTE2LjYtMTYuNi01MS4zLTUxLjMtMTA0LTEwNEwzMDggNjUuNUMzMzQuNSAzOSAzNDkuNCAyNC4xIDM1Mi45IDIwLjYgMzY2LjQgNyAzODQuOC0uNiA0MDQtLjZTNDQxLjYgNyA0NTUuMSAyMC42bDM1LjcgMzUuN0M1MDQuNCA2OS45IDUxMiA4OC4zIDUxMiAxMDcuNHMtNy42IDM3LjYtMjEuMiA1MS4xYy0zLjUgMy41LTE4LjQgMTguNC00NC45IDQ0Ljl6Il19LFVtcj1uVGUsV21yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBlcnNvbi13YWxraW5nLWFycm93LWxvb3AtbGVmdCIsaWNvbjpbNjQwLDUxMixbXSwiZTU1MSIsIk0xNjAgODBhNTYgNTYgMCAxIDAgMC0xMTIgNTYgNTYgMCAxIDAgMCAxMTJ6TTczLjQgMjI3LjlsMjIuNi0yMi42IDAgNjkuM2MwIDI4IDEyLjIgNTQuNyAzMy41IDcyLjlsNzEuNCA2MS4yYzUuOSA1LjEgOS44IDEyLjEgMTAuOSAxOS44bDEyLjYgODguMWMyLjUgMTcuNSAxOC43IDI5LjcgMzYuMiAyNy4yczI5LjctMTguNyAyNy4yLTM2LjJsLTEyLjYtODguMWMtMy4zLTIzLjEtMTQuOS00NC4xLTMyLjYtNTkuM2wtMzQuNS0yOS42IDAtMTE1LjIgMy44IDQuN2MxOC4yIDIyLjggNDUuOCAzNiA3NSAzNmwzMy4yIDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTMzLjIgMGMtOS43IDAtMTguOS00LjQtMjUtMTJsLTE3LjktMjIuNGMtMjMtMjguOC01Ny45LTQ1LjYtOTQuOC00NS42LTMyLjIgMC02My4xIDEyLjgtODUuOCAzNS42TDI4LjEgMTgyLjZDMTAuMSAyMDAuNiAwIDIyNSAwIDI1MC41TDAgMjg4YzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0zNy41YzAtOC41IDMuNC0xNi42IDkuNC0yMi42ek04NS44IDQwNy4zYy0xLjUgNS4yLTQuMyAxMC04LjEgMTMuOEw5LjQgNDg5LjRjLTEyLjUgMTIuNS0xMi41IDMyLjggMCA0NS4zczMyLjggMTIuNSA0NS4zIDBsNjguMy02OC4zYzExLjUtMTEuNSAxOS45LTI1LjggMjQuNC00MS41bDIuMi03LjYtNDYtMzkuNGMtMi41LTIuMi01LTQuNC03LjQtNi44TDg1LjggNDA3LjN6TTM1OSAzMzVjLTkuNCA5LjQtOS40IDI0LjYgMCAzMy45bDcyIDcyYzkuNCA5LjQgMjQuNiA5LjQgMzMuOSAwczkuNC0yNC42IDAtMzMuOWwtMzEtMzEgMTAyLjEgMGMxLjIgMCAyLjQtLjEgMy41LS4zIDU2LjEtMy45IDEwMC41LTUwLjYgMTAwLjUtMTA3LjcgMC01OS42LTQ4LjQtMTA4LTEwOC0xMDhsLTkyIDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsOTIgMGMzMy4xIDAgNjAgMjYuOSA2MCA2MHMtMjYuOSA2MC02MCA2MGwtOTguMSAwIDMxLTMxYzkuNC05LjQgOS40LTI0LjYgMC0zMy45cy0yNC42LTkuNC0zMy45IDBsLTcyIDcyeiJdfSxHbXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZGljZS1zaXgiLGljb246WzQ0OCw1MTIsWzk4NjFdLCJmNTI2IiwiTTAgOTZDMCA2MC43IDI4LjcgMzIgNjQgMzJsMzIwIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAzMjBjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDk2em0xNjAgNjRhMzIgMzIgMCAxIDAgLTY0IDAgMzIgMzIgMCAxIDAgNjQgMHpNMTI4IDI4OGEzMiAzMiAwIDEgMCAwLTY0IDMyIDMyIDAgMSAwIDAgNjR6bTMyIDY0YTMyIDMyIDAgMSAwIC02NCAwIDMyIDMyIDAgMSAwIDY0IDB6TTMyMCAxOTJhMzIgMzIgMCAxIDAgMC02NCAzMiAzMiAwIDEgMCAwIDY0em0zMiA2NGEzMiAzMiAwIDEgMCAtNjQgMCAzMiAzMiAwIDEgMCA2NCAwek0zMjAgMzg0YTMyIDMyIDAgMSAwIDAtNjQgMzIgMzIgMCAxIDAgMCA2NHoiXX0sc1RlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFuZ2xlcy1kb3duIixpY29uOlszODQsNTEyLFsiYW5nbGUtZG91YmxlLWRvd24iXSwiZjEwMyIsIk0yMTQuNiA0NzAuNmMtMTIuNSAxMi41LTMyLjggMTIuNS00NS4zIDBsLTE2MC0xNjBjLTEyLjUtMTIuNS0xMi41LTMyLjggMC00NS4zczMyLjgtMTIuNSA0NS4zIDBMMTkyIDQwMi43IDMyOS40IDI2NS40YzEyLjUtMTIuNSAzMi44LTEyLjUgNDUuMyAwczEyLjUgMzIuOCAwIDQ1LjNsLTE2MCAxNjB6bTE2MC0zNTJsLTE2MCAxNjBjLTEyLjUgMTIuNS0zMi44IDEyLjUtNDUuMyAwbC0xNjAtMTYwYy0xMi41LTEyLjUtMTIuNS0zMi44IDAtNDUuM3MzMi44LTEyLjUgNDUuMyAwTDE5MiAyMTAuNyAzMjkuNCA3My40YzEyLjUtMTIuNSAzMi44LTEyLjUgNDUuMyAwczEyLjUgMzIuOCAwIDQ1LjN6Il19LFltcj1zVGUsWm1yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InN5cmluZ2UiLGljb246WzU3Niw1MTIsWzEyODEzN10sImY0OGUiLCJNNDk3LjUtMTdjLTkuNC05LjQtMjQuNi05LjQtMzMuOSAwcy05LjQgMjQuNiAwIDMzLjlsMTUgMTUtNDYuMSA0Ni4xLTYzLTYzYy05LjQtOS40LTI0LjYtOS40LTMzLjkgMHMtOS40IDI0LjYgMCAzMy45bDcgNy03OC4xIDc4LjEgNDEgNDFjOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlzLTI0LjYgOS40LTMzLjkgMGwtNDEtNDEtNDYuMSA0Ni4xIDQxIDQxYzkuNCA5LjQgOS40IDI0LjYgMCAzMy45cy0yNC42IDkuNC0zMy45IDBsLTQxLTQxLTM3LjcgMzcuN2MtMTAuNSAxMC41LTE2LjQgMjQuNy0xNi40IDM5LjZsMCA4OC44LTU3IDU3Yy05LjQgOS40LTkuNCAyNC42IDAgMzMuOXMyNC42IDkuNCAzMy45IDBsNTctNTcgODguOCAwYzE0LjkgMCAyOS4xLTUuOSAzOS42LTE2LjRsMjI5LjctMjI5LjcgNyA3YzkuNCA5LjQgMjQuNiA5LjQgMzMuOSAwczkuNC0yNC42IDAtMzMuOWwtNjMtNjMgNDYuMS00Ni4xIDE1IDE1YzkuNCA5LjQgMjQuNiA5LjQgMzMuOSAwczkuNC0yNC42IDAtMzMuOWwtNjQtNjR6Il19LGxUZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ3aGVhdC1hd24iLGljb246WzU3Niw1MTIsWyJ3aGVhdC1hbHQiXSwiZTJjZCIsIk03OS43IDIzNC42YzYuMi00LjEgMTQuNy0zLjQgMjAuMSAyLjFsNDYuMSA0Ni4xIDYuMSA2LjdjMTkuNyAyMy44IDI2LjMgNTUgMTkuMiA4My45IDMxLjctNy43IDY2LjIgMSA5MC42IDI1LjNsNDYuMSA0Ni4xYzYuMiA2LjIgNi4yIDE2LjQgMCAyMi42bC03LjQgNy40Yy0zNy41IDM3LjUtOTguMyAzNy41LTEzNS44IDBMMTM0LjEgNDQ0LjMgNDkuNCA1MjljLTkuNCA5LjQtMjQuNSA5LjQtMzMuOSAwLTkuNC05LjQtOS40LTI0LjYgMC0zMy45bDg0LjctODQuNy0zMC41LTMwLjVjLTM3LjUtMzcuNS0zNy41LTk4LjMgMC0xMzUuN2w3LjQtNy40IDIuNS0yLjF6bTEwNC0xMDRjNi4yLTQuMSAxNC43LTMuNCAyMC4xIDIuMWw0Ni4xIDQ2LjEgNi4xIDYuN2MxOS43IDIzLjggMjYuMyA1NSAxOS4yIDgzLjkgMzEuNy03LjcgNjYuMiAxIDkwLjYgMjUuM2w0Ni4xIDQ2LjFjNi4yIDYuMiA2LjIgMTYuNCAwIDIyLjZsLTcuNCA3LjRjLTM3LjUgMzcuNS05OC4zIDM3LjUtMTM1LjggMGwtOTQuOS05NC45Yy0zNy41LTM3LjUtMzcuNS05OC4zIDAtMTM1LjdsNy40LTcuNCAyLjUtMi4xek00OTUuMiAxNWM5LjQtOS40IDI0LjYtOS40IDM0IDAgOC44IDguOCA5LjMgMjIuNyAxLjYgMzIuMkw1MjkuMiA0OSA0MTQuNyAxNjMuNGM3LjcgMSAxNS4yIDMgMjIuNSA1LjlMNDk1LjUgMTExYzkuNC05LjQgMjQuNi05LjQgMzQgMCA4LjggOC44IDkuMyAyMi43IDEuNiAzMi4xbC0xLjcgMS44LTUyLjcgNTIuNyAzOSAzOWM2LjIgNi4yIDYuMiAxNi40IDAgMjIuNmwtNy40IDcuNGMtMzcuNSAzNy41LTk4LjMgMzcuNS0xMzUuOCAwbC05NC45LTk0LjljLTM3LjUtMzcuNS0zNy41LTk4LjMgMC0xMzUuN2w3LjQtNy40IDIuNS0yLjFjNi4yLTQuMSAxNC43LTMuNCAyMC4xIDIuMWwzOSAzOSA1Mi43LTUyLjdjOS40LTkuNCAyNC42LTkuNCAzNCAwIDguOCA4LjggOS4zIDIyLjcgMS42IDMyLjFsLTEuNyAxLjgtNTguMyA1OC4zYzIuOCA3LjEgNC43IDE0LjUgNS43IDIyLjFMNDk1LjIgMTV6Il19LFhtcj1sVGUsUW1yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBsYW5lLXVwIixpY29uOls1MTIsNTEyLFtdLCJlMjJkIiwiTTIwMCAyNGMwLTMwLjkgMjUuMS01NiA1Ni01NnM1NiAyNS4xIDU2IDU2bDAgMTI3LjMgMTczLjYgMTU5LjJjNi42IDYuMSAxMC40IDE0LjYgMTAuNCAyMy42bDAgNDMuN2MwIDEwLjktMTAuNyAxOC42LTIxLjEgMTUuMmwtMTYyLjktNTQuMyAwIDk5LjcgNjYgNTIuOGMzLjggMyA2IDcuNiA2IDEyLjVsMCAxOS44YzAgMTAuNC05LjggMTgtMTkuOSAxNS41TDI1NiA1MTIgMTQ3LjkgNTM5Yy0xMC4xIDIuNS0xOS45LTUuMS0xOS45LTE1LjVsMC0xOS44YzAtNC45IDIuMi05LjUgNi0xMi41bDY2LTUyLjggMC05OS43LTE2Mi45IDU0LjNDMjYuNyAzOTYuNCAxNiAzODguNyAxNiAzNzcuOGwwLTQzLjdjMC05IDMuOC0xNy41IDEwLjQtMjMuNkwyMDAgMTUxLjMgMjAwIDI0eiJdfSxLbXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYWxpZ24tY2VudGVyIixpY29uOls0NDgsNTEyLFtdLCJmMDM3IiwiTTM1MiA2NGMwLTE3LjctMTQuMy0zMi0zMi0zMkwxMjggMzJjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsMTkyIDBjMTcuNyAwIDMyLTE0LjMgMzItMzJ6bTk2IDEyOGMwLTE3LjctMTQuMy0zMi0zMi0zMkwzMiAxNjBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsMzg0IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJ6TTAgNDQ4YzAgMTcuNyAxNC4zIDMyIDMyIDMybDM4NCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMyTDMyIDQxNmMtMTcuNyAwLTMyIDE0LjMtMzIgMzJ6TTM1MiAzMjBjMC0xNy43LTE0LjMtMzItMzItMzJsLTE5MiAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDE5MiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMyeiJdfSxKbXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaG9ja2V5LXB1Y2siLGljb246WzUxMiw1MTIsW10sImY0NTMiLCJNMjU2IDI1NkMxMTQuNiAyNTYgMCAyMTMgMCAxNjBzMTE0LjYtOTYgMjU2LTk2IDI1NiA0MyAyNTYgOTYtMTE0LjYgOTYtMjU2IDk2ek0wIDM1MkwwIDI0Mi43YzE2LjkgMTIuMyAzNyAyMi4yIDU4LjEgMzAuMSA1MyAxOS45IDEyMyAzMS4yIDE5Ny45IDMxLjJzMTQ0LjktMTEuMyAxOTcuOS0zMS4yYzIxLjItNy45IDQxLjItMTcuOCA1OC4xLTMwLjFMNTEyIDM1MmMwIDUzLTExNC42IDk2LTI1NiA5NlMwIDQwNSAwIDM1MnoiXX0sY1RlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNpcmNsZS1hcnJvdy1sZWZ0IixpY29uOls1MTIsNTEyLFsiYXJyb3ctY2lyY2xlLWxlZnQiXSwiZjBhOCIsIk0yNTYgNTEyYTI1NiAyNTYgMCAxIDAgMC01MTIgMjU2IDI1NiAwIDEgMCAwIDUxMnpNMTM1IDIzOWw4MC04MGM5LjQtOS40IDI0LjYtOS40IDMzLjkgMHM5LjQgMjQuNiAwIDMzLjlsLTM5IDM5IDE1MC4xIDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTE1MC4xIDAgMzkgMzljOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlzLTI0LjYgOS40LTMzLjkgMGwtODAtODBjLTkuNC05LjQtOS40LTI0LjYgMC0zMy45eiJdfSxlN3I9Y1RlLHQ3cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwbHVnLWNpcmNsZS1ib2x0IixpY29uOls2NDAsNTEyLFtdLCJlNTViIiwiTTE5Mi0zMmMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDk2IDEyOCAwIDAtOTZjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDk2IDY0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsMCA0OC43Yy05OC42IDguMS0xNzYgOTAuNy0xNzYgMTkxLjMgMCAyNy4zIDUuNyA1My4zIDE2IDc2LjlsMCAzLjFjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC02Ni43QzE2NS4yIDM5OC4xIDk2IDMxOS4xIDk2IDIyNGwwLTY0Yy0xNy43IDAtMzItMTQuMy0zMi0zMlM3OC4zIDk2IDk2IDk2bDY0IDAgMC05NmMwLTE3LjcgMTQuMy0zMiAzMi0zMnpNMzUyIDQwMGExNDQgMTQ0IDAgMSAxIDI4OCAwIDE0NCAxNDQgMCAxIDEgLTI4OCAwem0xNzcuNC03N2MtNS44LTQuMi0xMy44LTQtMTkuNCAuNWwtODAgNjRjLTUuMyA0LjItNy40IDExLjQtNS4xIDE3LjhTNDMzLjIgNDE2IDQ0MCA0MTZsMzIuOSAwLTE1LjkgNDIuNGMtMi41IDYuNy0uMiAxNC4zIDUuNiAxOC42czEzLjggNCAxOS40LS41bDgwLTY0YzUuMy00LjIgNy40LTExLjQgNS4xLTE3LjhTNTU4LjggMzg0IDU1MiAzODRsLTMyLjkgMCAxNS45LTQyLjRjMi41LTYuNyAuMi0xNC4zLTUuNi0xOC42eiJdfSxyN3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicmVzdHJvb20iLGljb246WzY0MCw1MTIsW10sImY3YmQiLCJNODAgNDhhNDggNDggMCAxIDEgOTYgMCA0OCA0OCAwIDEgMSAtOTYgMHptNDAgMzA0bDAgMTI4YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMTU0LjhjLTguMSA5LjItMjEuMSAxMy4yLTMzLjUgOS40LTE2LjktNS4zLTI2LjMtMjMuMi0yMS00MC4xbDI5LjctOTUuMkM0NC40IDE1Ni45IDgzLjYgMTI4IDEyOCAxMjhzODMuNiAyOC45IDk2LjggNzEuMmwyOS43IDk1LjJjNS4zIDE2LjktNC4xIDM0LjgtMjEgNDAuMS0xMi40IDMuOS0yNS40LS4yLTMzLjUtOS40TDIwMCA0ODBjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC0xMjgtMTYgMHpNMzIwIDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRsMCA0NjRjMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjRsMC00NjRjMC0xMy4zIDEwLjctMjQgMjQtMjR6TTQ2NCA0OGE0OCA0OCAwIDEgMSA5NiAwIDQ4IDQ4IDAgMSAxIC05NiAwek00NDAgNDgwbDAtOTYtMTcuOCAwYy0xMC45IDAtMTguNi0xMC43LTE1LjItMjEuMWw5LTI2LjljLTMuMiAwLTYuNC0uNS05LjUtMS41LTE2LjktNS4zLTI2LjMtMjMuMi0yMS00MC4xbDI5LjctOTUuMkM0MjguNCAxNTYuOSA0NjcuNiAxMjggNTEyIDEyOHM4My42IDI4LjkgOTYuOCA3MS4ybDI5LjcgOTUuMmM1LjMgMTYuOS00LjEgMzQuOC0yMSA0MC4xLTMuMiAxLTYuNCAxLjUtOS41IDEuNWw5IDI2LjljMy41IDEwLjQtNC4zIDIxLjEtMTUuMiAyMS4xbC0xNy44IDAgMCA5NmMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTk2LTE2IDAgMCA5NmMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMnoiXX0sYTdyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFuY2hvci1sb2NrIixpY29uOls2NDAsNTEyLFtdLCJlNGFkIiwiTTMyMC41IDk2YTMyIDMyIDAgMSAxIC02NCAwIDMyIDMyIDAgMSAxIDY0IDB6bS0zMi05NmMtNTMgMC05NiA0My05NiA5NiAwIDQxLjggMjYuNyA3Ny40IDY0IDkwLjVsMCAyNTcuOWMtNjIuOS0xNC4zLTExMC4yLTY5LjctMTExLjktMTM2LjVsMTYuMSAxNC4xYzEwIDguNyAyNS4xIDcuNyAzMy45LTIuM3M3LjctMjUuMS0yLjMtMzMuOWwtNjQtNTZjLTktNy45LTIyLjYtNy45LTMxLjYgMGwtNjQgNTZjLTEwIDguNy0xMSAyMy45LTIuMyAzMy45czIzLjkgMTEgMzMuOSAyLjNsMTYuMi0xNC4yYzIuMSAxMTMuMSA5NC40IDIwNC4xIDIwOCAyMDQuMSAyOC4zIDAgNTUuNC01LjcgODAtMTUuOWwwLS4yIDAtNzIuMmMtMTQuNCA5LjYtMzAuNiAxNi43LTQ4IDIwLjdsMC0yNTcuOWMzNy4zLTEzLjIgNjQtNDguNyA2NC05MC41IDAtNTMtNDMtOTYtOTYtOTZ6bTI3MiAzMDQuMWwwIDQ3LjktNjQgMCAwLTQ3LjljMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMnpNNDE2LjUgNDAwbDAgOTZjMCAyNi41IDIxLjUgNDggNDggNDhsMTI4IDBjMjYuNSAwIDQ4LTIxLjUgNDgtNDhsMC05NmMwLTIwLjktMTMuNC0zOC43LTMyLTQ1LjNsMC01MC42YzAtNDQuMi0zNS44LTgwLTgwLTgwcy04MCAzNS44LTgwIDgwbDAgNTAuNmMtMTguNiA2LjYtMzIgMjQuNC0zMiA0NS4zeiJdfSxpN3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidGltZWxpbmUiLGljb246WzU3Niw1MTIsW10sImUyOWMiLCJNMTYwIDE2OS4zYzI4LjMtMTIuMyA0OC00MC41IDQ4LTczLjMgMC00NC4yLTM1LjgtODAtODAtODBTNDggNTEuOCA0OCA5NmMwIDMyLjggMTkuNyA2MSA0OCA3My4zbDAgNTQuNy02NCAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDIyNCAwIDAgNTQuN2MtMjguMyAxMi4zLTQ4IDQwLjUtNDggNzMuMyAwIDQ0LjIgMzUuOCA4MCA4MCA4MHM4MC0zNS44IDgwLTgwYzAtMzIuOC0xOS43LTYxLTQ4LTczLjNsMC01NC43IDIyNCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC02NCAwIDAtNTQuN2MyOC4zLTEyLjMgNDgtNDAuNSA0OC03My4zIDAtNDQuMi0zNS44LTgwLTgwLTgwcy04MCAzNS44LTgwIDgwYzAgMzIuOCAxOS43IDYxIDQ4IDczLjNsMCA1NC43LTI1NiAwIDAtNTQuN3oiXX0sbzdyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImxpZ2h0YnVsYiIsaWNvbjpbMzg0LDUxMixbMTI4MTYxXSwiZjBlYiIsIk0yOTIuOSAzODRjNy4zLTIyLjMgMjEuOS00Mi41IDM4LjQtNTkuOSAzMi43LTM0LjQgNTIuNy04MC45IDUyLjctMTMyLjEgMC0xMDYtODYtMTkyLTE5Mi0xOTJTMCA4NiAwIDE5MmMwIDUxLjIgMjAgOTcuNyA1Mi43IDEzMi4xIDE2LjUgMTcuNCAzMS4yIDM3LjYgMzguNCA1OS45bDIwMS43IDB6TTI4OCA0MzJsLTE5MiAwIDAgMTZjMCA0NC4yIDM1LjggODAgODAgODBsMzIgMGM0NC4yIDAgODAtMzUuOCA4MC04MGwwLTE2ek0xODQgMTEyYy0zOS44IDAtNzIgMzIuMi03MiA3MiAwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNGMwLTY2LjMgNTMuNy0xMjAgMTIwLTEyMCAxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNHoiXX0sZFRlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNpcmNsZS1hcnJvdy1yaWdodCIsaWNvbjpbNTEyLDUxMixbImFycm93LWNpcmNsZS1yaWdodCJdLCJmMGE5IiwiTTI1NiA1MTJhMjU2IDI1NiAwIDEgMCAwLTUxMiAyNTYgMjU2IDAgMSAwIDAgNTEyem00MS0xNTljLTkuNCA5LjQtMjQuNiA5LjQtMzMuOSAwcy05LjQtMjQuNiAwLTMzLjlsMzktMzktMTUwLjEgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNGwxNTAuMSAwLTM5LTM5Yy05LjQtOS40LTkuNC0yNC42IDAtMzMuOXMyNC42LTkuNCAzMy45IDBsODAgODBjOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlsLTgwIDgweiJdfSxuN3I9ZFRlLHM3cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtYXJzLWFuZC12ZW51cyIsaWNvbjpbNTEyLDUxMixbOTg5M10sImYyMjQiLCJNMzY4IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsMTEyIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCAxMTJjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC0zNC43LTYzIDYzYzE5LjUgMjguNCAzMSA2Mi43IDMxIDk5LjggMCA4Ni4zLTYyLjEgMTU4LjEtMTQ0IDE3My4xbDAgMzQuOSAzMiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC0zMiAwIDAgMzJjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC0zMi0zMiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDMyIDAgMC0zNC45Yy04MS45LTE1LTE0NC04Ni44LTE0NC0xNzMuMSAwLTk3LjIgNzguOC0xNzYgMTc2LTE3NiAzNyAwIDcxLjQgMTEuNCA5OS44IDMxbDYzLTYzLTM0LjcgMHpNMzUyIDIwOGExMTIgMTEyIDAgMSAwIC0yMjQgMCAxMTIgMTEyIDAgMSAwIDIyNCAweiJdfSxubGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibmV0d29yay13aXJlZCIsaWNvbjpbNTc2LDUxMixbXSwiZjZmZiIsIk0yNDggODhsODAgMCAwIDQ4LTgwIDAgMC00OHptLTgtNTZjLTI2LjUgMC00OCAyMS41LTQ4IDQ4bDAgNjRjMCAyNi41IDIxLjUgNDggNDggNDhsMTYgMCAwIDMyLTIyNCAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDk2IDAgMCAzMi0xNiAwYy0yNi41IDAtNDggMjEuNS00OCA0OGwwIDY0YzAgMjYuNSAyMS41IDQ4IDQ4IDQ4bDk2IDBjMjYuNSAwIDQ4LTIxLjUgNDgtNDhsMC02NGMwLTI2LjUtMjEuNS00OC00OC00OGwtMTYgMCAwLTMyIDE5MiAwIDAgMzItMTYgMGMtMjYuNSAwLTQ4IDIxLjUtNDggNDhsMCA2NGMwIDI2LjUgMjEuNSA0OCA0OCA0OGw5NiAwYzI2LjUgMCA0OC0yMS41IDQ4LTQ4bDAtNjRjMC0yNi41LTIxLjUtNDgtNDgtNDhsLTE2IDAgMC0zMiA5NiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC0yMjQgMCAwLTMyIDE2IDBjMjYuNSAwIDQ4LTIxLjUgNDgtNDhsMC02NGMwLTI2LjUtMjEuNS00OC00OC00OGwtOTYgMHpNNDQ4IDM3Nmw4IDAgMCA0OC04MCAwIDAtNDggNzIgMHptLTI1NiAwbDggMCAwIDQ4LTgwIDAgMC00OCA3MiAweiJdfSxsN3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYnVpbGRpbmctc2hpZWxkIixpY29uOls1NzYsNTEyLFtdLCJlNGQ4IiwiTTk2IDBDNjAuNyAwIDMyIDI4LjcgMzIgNjRsMCAzODRjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMjAxLjIgMGMtMTIuNS0xNC43LTIzLjItMzAuOC0zMS44LTQ4bC04OS41IDAgMC04MGMwLTE3LjcgMTQuMy0zMiAzMi0zMmwzMiAwIDAtMjYuN2MwLTE4LjEgNi4xLTM1LjIgMTYuNi00OC44LS40LTEuNC0uNi0yLjktLjYtNC41bDAtMzJjMC04LjggNy4yLTE2IDE2LTE2bDMyIDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMSA4Ni43LTI4LjljMy4xLTEgNi4yLTEuOCA5LjMtMi41TDQxNiA2NGMwLTM1LjMtMjguNy02NC02NC02NEw5NiAwem0zMiAxMTJjMC04LjggNy4yLTE2IDE2LTE2bDMyIDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMzJjMCA4LjgtNy4yIDE2LTE2IDE2bC0zMiAwYy04LjggMC0xNi03LjItMTYtMTZsMC0zMnpNMjcyIDk2bDMyIDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMzJjMCA4LjgtNy4yIDE2LTE2IDE2bC0zMiAwYy04LjggMC0xNi03LjItMTYtMTZsMC0zMmMwLTguOCA3LjItMTYgMTYtMTZ6TTEyOCAyNDBjMC04LjggNy4yLTE2IDE2LTE2bDMyIDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMzJjMCA4LjgtNy4yIDE2LTE2IDE2bC0zMiAwYy04LjggMC0xNi03LjItMTYtMTZsMC0zMnpNNDQ1LjMgNDg4LjVsLTEzLjMgNi4zIDAtMTg4LjEgOTYgMzIgMCAxOS42YzAgNTUuOC0zMi4yIDEwNi41LTgyLjcgMTMwLjN6TTQyMS45IDI1OS41bC0xMTIgMzcuM2MtMTMuMSA0LjQtMjEuOSAxNi42LTIxLjkgMzAuNGwwIDMxLjFjMCA3NC40IDQzIDE0Mi4xIDExMC4yIDE3My43bDE4LjUgOC43YzQuOCAyLjIgMTAgMy40IDE1LjIgMy40czEwLjUtMS4yIDE1LjItMy40bDE4LjUtOC43QzUzMyA1MDAuMyA1NzYgNDMyLjYgNTc2IDM1OC4ybDAtMzEuMWMwLTEzLjgtOC44LTI2LTIxLjktMzAuNGwtMTEyLTM3LjNjLTYuNi0yLjItMTMuNy0yLjItMjAuMiAweiJdfSxjN3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY29kZSIsaWNvbjpbNTc2LDUxMixbXSwiZjEyMSIsIk0zNjAuOCAxLjJjLTE3LTQuOS0zNC43IDUtMzkuNiAyMmwtMTI4IDQ0OGMtNC45IDE3IDUgMzQuNyAyMiAzOS42czM0LjctNSAzOS42LTIybDEyOC00NDhjNC45LTE3LTUtMzQuNy0yMi0zOS42em02NC42IDEzNi4xYy0xMi41IDEyLjUtMTIuNSAzMi44IDAgNDUuM2w3My40IDczLjQtNzMuNCA3My40Yy0xMi41IDEyLjUtMTIuNSAzMi44IDAgNDUuM3MzMi44IDEyLjUgNDUuMyAwbDk2LTk2YzEyLjUtMTIuNSAxMi41LTMyLjggMC00NS4zbC05Ni05NmMtMTIuNS0xMi41LTMyLjgtMTIuNS00NS4zIDB6bS0yNzQuNyAwYy0xMi41LTEyLjUtMzIuOC0xMi41LTQ1LjMgMGwtOTYgOTZjLTEyLjUgMTIuNS0xMi41IDMyLjggMCA0NS4zbDk2IDk2YzEyLjUgMTIuNSAzMi44IDEyLjUgNDUuMyAwczEyLjUtMzIuOCAwLTQ1LjNMNzcuMyAyNTYgMTUwLjYgMTgyLjZjMTIuNS0xMi41IDEyLjUtMzIuOCAwLTQ1LjN6Il19LHVUZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmZWF0aGVyLXBvaW50ZWQiLGljb246WzUxMiw1MTIsWyJmZWF0aGVyLWFsdCJdLCJmNTZiIiwiTTQ3NS4zIC4xYzkuOS0uOCAxOS42IDMgMjYuNiAxMHMxMC44IDE2LjcgMTAgMjYuNmMtNCA0OS4zLTE3LjQgMTI2LjItNDYuMyAxOTkuNy0xLjggNC41LTUuNSA3LjktMTAuMiA5LjNMMzc0LjUgMjcwYy0zLjkgMS4yLTYuNSA0LjctNi41IDguOCAwIDUuMSA0LjEgOS4yIDkuMiA5LjJsMzguNiAwYzEyIDAgMTkuNyAxMi44IDEzLjUgMjMuMS00IDYuNy04LjMgMTMuMi0xMi43IDE5LjYtMiAyLjktNSA1LTguNCA2LjFMMzEwLjUgMzY2Yy0zLjkgMS4yLTYuNSA0LjctNi41IDguOCAwIDUuMSA0LjEgOS4yIDkuMiA5LjJsMTYgMGMxNC42IDAgMjEgMTcuNCA4LjggMjUuNC02OCA0NS0xMzcuNyA0My4zLTE4Mi40IDMxLjMtMTIuNy0zLjQtMjQtOS45LTM0LjQtMTcuOUw0OCA0OTZjLTguOCA4LjgtMjMuMiA4LjgtMzIgMHMtOC44LTIzLjIgMC0zMmw4MC04MCAuNSAuNWMuNy0xLjMgMS42LTIuNSAyLjctMy42TDI1NiAyMjRjOC44LTguOCA4LjgtMjMuMiAwLTMycy0yMy4yLTguOC0zMiAwTDg5LjcgMzI2LjJjLTguOSA4LjktMjQgNC40LTI1LTguMi00LjMtNTMuMiA5LjMtMTIzLjEgNzIuNi0xODYuNCA5MS4xLTkxLjEgMjU0LjItMTI0LjcgMzM3LjktMTMxLjV6Il19LGQ3cj11VGUsdTdyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZpbGUtY2lyY2xlLXF1ZXN0aW9uIixpY29uOls1NzYsNTEyLFtdLCJlNGVmIiwiTTk2IDBDNjAuNyAwIDMyIDI4LjcgMzIgNjRsMCAzODRjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMTgwIDBjLTIyLjctMzEuNS0zNi03MC4yLTM2LTExMiAwLTEwMC42IDc3LjQtMTgzLjIgMTc2LTE5MS4zbDAtMzguMWMwLTE3LTYuNy0zMy4zLTE4LjctNDUuM0wyOTAuNyAxOC43QzI3OC43IDYuNyAyNjIuNSAwIDI0NS41IDBMOTYgMHpNMzU3LjUgMTc2TDI2NCAxNzZjLTEzLjMgMC0yNC0xMC43LTI0LTI0TDI0MCA1OC41IDM1Ny41IDE3NnpNNDMyIDU0NGExNDQgMTQ0IDAgMSAwIDAtMjg4IDE0NCAxNDQgMCAxIDAgMCAyODh6bTAtMTAwYTIwIDIwIDAgMSAxIDAgNDAgMjAgMjAgMCAxIDEgMC00MHptMC0xMDBjLTExLjYgMC0yMS4zIDguMi0yMy41IDE5LjItMS44IDguNy0xMC4yIDE0LjMtMTguOSAxMi41cy0xNC4zLTEwLjItMTIuNS0xOC45YzUuMi0yNS42IDI3LjgtNDQuOCA1NC45LTQ0LjggMzAuOSAwIDU2IDI1LjEgNTYgNTYgMCAxOS44LTExLjcgMzcuOC0yOS44IDQ1LjlsLTEwLjQgNC42Yy0xLjIgNy43LTcuOCAxMy41LTE1LjggMTMuNS04LjggMC0xNi03LjItMTYtMTYgMC0xMS4yIDYuNi0yMS4zIDE2LjgtMjUuOWwxMi40LTUuNWM2LjYtMi45IDEwLjgtOS40IDEwLjgtMTYuNiAwLTEzLjMtMTAuNy0yNC0yNC0yNHoiXX0sZjdyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNpZ25hdHVyZSIsaWNvbjpbNjQwLDUxMixbXSwiZjViNyIsIk0xOTIgMTI4YzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJsMCA3LjhjMCAyNy43LTIuNCA1NS4zLTcuMSA4Mi41bC04NC40IDI1LjNjLTQwLjYgMTIuMi02OC40IDQ5LjYtNjguNCA5MmwwIDMyLjQtNzIgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGw3Mi41IDBjNC4yIDM2IDM0LjggNjQgNzIgNjQgMjYgMCA1MC0xMy45IDYyLjktMzYuNWwxMy45LTI0LjNjMjYuOC00NyA0Ni41LTk3LjcgNTguNC0xNTAuNWw5NC40LTI4LjMtMTIuNSAzNy41Yy0zLjMgOS44LTEuNiAyMC41IDQuNCAyOC44UzQwNS43IDMyMCA0MTYgMzIwbDEyOCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC04My42IDAgMTgtNTMuOWMzLjgtMTEuMyAuOS0yMy44LTcuNC0zMi40cy0yMC43LTExLjgtMzIuMi04LjRMMzE2LjQgMTk4LjFjMi40LTIwLjcgMy42LTQxLjQgMy42LTYyLjNsMC03LjhjMC01My00My05Ni05Ni05NnMtOTYgNDMtOTYgOTZsMCAzMmMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMzJ6bS05LjIgMTc3bDQ5LTE0LjdjLTEwLjQgMzMuOC0yNC41IDY2LjQtNDIuMSA5Ny4ybC0xMy45IDI0LjNjLTEuNSAyLjYtNC4zIDQuMy03LjQgNC4zLTQuNyAwLTguNS0zLjgtOC41LTguNWwwLTcxLjljMC0xNC4xIDkuMy0yNi42IDIyLjgtMzAuN3pNNjE2IDQxNmMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtMjkyLjkgMGMtNi41IDE2LjMtMTMuNyAzMi4zLTIxLjYgNDhMNjE2IDQxNnoiXX0seXc9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZWFydGgtYW1lcmljYXMiLGljb246WzUxMiw1MTIsWzEyNzc1OCwiZWFydGgiLCJlYXJ0aC1hbWVyaWNhIiwiZ2xvYmUtYW1lcmljYXMiXSwiZjU3ZCIsIk01NS43IDE5OS43bDMwLjkgMzAuOWM2IDYgMTQuMSA5LjQgMjIuNiA5LjRsMjEuNSAwYzguNSAwIDE2LjYgMy40IDIyLjYgOS40bDI5LjMgMjkuM2M2IDYgOS40IDE0LjEgOS40IDIyLjZsMCAzNy41YzAgOC41IDMuNCAxNi42IDkuNCAyMi42bDEzLjMgMTMuM2M2IDYgOS40IDE0LjEgOS40IDIyLjZsMCAxOC43YzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0yLjdjMC04LjUgMy40LTE2LjYgOS40LTIyLjZsNDUuMy00NS4zYzYtNiA5LjQtMTQuMSA5LjQtMjIuNmwwLTM0LjdjMC0xNy43LTE0LjMtMzItMzItMzJsLTgyLjcgMGMtOC41IDAtMTYuNi0zLjQtMjIuNi05LjRsLTE2LTE2Yy00LjItNC4yLTYuNi0xMC02LjYtMTYgMC0xMi41IDEwLjEtMjIuNiAyMi42LTIyLjZsMzQuNyAwYzEyLjUgMCAyMi42LTEwLjEgMjIuNi0yMi42IDAtNi0yLjQtMTEuOC02LjYtMTZsLTE5LjctMTkuN0MyNDIgMTMwIDI0MCAxMjUuMSAyNDAgMTIwczItMTAgNS43LTEzLjdsMTcuMy0xNy4zYzUuOC01LjggOS4xLTEzLjcgOS4xLTIxLjkgMC03LjItMi40LTEzLjctNi40LTE4LjktMy4yLS4xLTYuNC0uMi05LjYtLjItOTUuNCAwLTE3NS43IDY0LjItMjAwLjMgMTUxLjd6TTQ2NCAyNTZjMC0zNC42LTguNC02Ny4yLTIzLjQtOTUuOC02LjQgLjktMTIuNyAzLjktMTcuOSA5LjFsLTEzLjQgMTMuNGMtNiA2LTkuNCAxNC4xLTkuNCAyMi42bDAgMzQuN2MwIDE3LjcgMTQuMyAzMiAzMiAzMmwyNC4xIDBjMi41IDAgNS0uMyA3LjMtLjggLjQtNSAuNS0xMC4xIC41LTE1LjJ6TTAgMjU2YTI1NiAyNTYgMCAxIDEgNTEyIDAgMjU2IDI1NiAwIDEgMSAtNTEyIDB6Il19LHA3cj15dyxoN3I9eXcsbTdyPXl3LGc3cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjYXJyb3QiLGljb246WzY0MCw1MTIsWzEyOTM2NV0sImY3ODciLCJNNDUzLjEtMzYuN0w0NDAuOS0yNC42Yy0zMS4yIDMxLjItMzEuMiA4MS45IDAgMTEzLjEgMTUuNiAxNS42IDMxLjIgMzEuMiA0Ni45IDQ2LjkgMzEuMiAzMS4yIDgxLjkgMzEuMiAxMTMuMSAwbDEyLjEtMTIuMWM2LjItNi4yIDYuMi0xNi40IDAtMjIuNkw2MDAuOSA4OC42Yy0zMS4yLTMxLjItODEuOS0zMS4yLTExMy4xIDAgMzEuMi0zMS4yIDMxLjItODEuOSAwLTExMy4xTDQ3NS43LTM2LjdjLTYuMi02LjItMTYuNC02LjItMjIuNiAwek0zMzEuNiA5NmMtNDUuMiAwLTg3LjEgMjAuNC0xMTUgNTQuM0wyNzMuMyAyMDdjOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlzLTI0LjYgOS40LTMzLjkgMEwxOTEuNiAxOTMuMiA2Ny4yIDQ2Ni44Yy01LjUgMTIuMS0yLjkgMjYuNCA2LjUgMzUuOXMyMy43IDEyIDM1LjkgNi41bDE0MS42LTY0LjQtNDMuOC00My44Yy05LjQtOS40LTkuNC0yNC42IDAtMzMuOXMyNC42LTkuNCAzMy45IDBsNTYuNSA1Ni41IDk1LjMtNDMuM2M1My4xLTI0LjEgODcuMi03Ny4xIDg3LjItMTM1LjUgMC04Mi4yLTY2LjYtMTQ4LjgtMTQ4LjgtMTQ4Ljh6Il19LHd3PXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRlbXBlcmF0dXJlLWZ1bGwiLGljb246WzMyMCw1MTIsWyJ0ZW1wZXJhdHVyZS00IiwidGhlcm1vbWV0ZXItNCIsInRoZXJtb21ldGVyLWZ1bGwiXSwiZjJjNyIsIk0xNjAgMEMxMDcgMCA2NCA0MyA2NCA5NmwwIDE2NC43QzM0LjUgMjg3IDE2IDMyNS40IDE2IDM2OCAxNiA0NDcuNSA4MC41IDUxMiAxNjAgNTEyczE0NC02NC41IDE0NC0xNDRjMC00Mi42LTE4LjUtODEtNDgtMTA3LjNMMjU2IDk2YzAtNTMtNDMtOTYtOTYtOTZ6bTY0IDM2OGMwIDM1LjMtMjguNyA2NC02NCA2NHMtNjQtMjguNy02NC02NGMwLTI2LjkgMTYuNS00OS45IDQwLTU5LjNMMTM2IDk2YzAtMTMuMyAxMC43LTI0IDI0LTI0czI0IDEwLjcgMjQgMjRsMCAyMTIuN2MyMy41IDkuNSA0MCAzMi41IDQwIDU5LjN6Il19LHg3cj13dyxiN3I9d3csdjdyPXd3LHk3cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0YWJsZS1jZWxscy1yb3ctbG9jayIsaWNvbjpbNjQwLDUxMixbXSwiZTY3YSIsIk0yNTYgMjg4bDAtNjQgMTUzLjMgMGMxNy4xLTQyLjIgNTYtNzMuMiAxMDIuNy03OWwwLTQ5YzAtMzUuMy0yOC43LTY0LTY0LTY0TDEyOCAzMkM5Mi43IDMyIDY0IDYwLjcgNjQgOTZsMCAzMjBjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMjQxLjMgMGMtLjktNS4yLTEuMy0xMC42LTEuMy0xNi4xbDAtNDcuOS0xMTIgMCAwLTY0IDExMy4zIDBjMy43LTIyIDE0LjgtNDEuNCAzMC43LTU1LjZsMC04LjQtMTQ0IDB6bTAtMTkybDE5MiAwIDAgNjQtMTkyIDAgMC02NHpNNTYwIDI3Mi4xbDAgNDcuOS02NCAwIDAtNDcuOWMwLTE3LjcgMTQuMy0zMiAzMi0zMnMzMiAxNC4zIDMyIDMyek00MTYgMzY4bDAgOTZjMCAyNi41IDIxLjUgNDggNDggNDhsMTI4IDBjMjYuNSAwIDQ4LTIxLjUgNDgtNDhsMC05NmMwLTIwLjktMTMuNC0zOC43LTMyLTQ1LjNsMC01MC42YzAtNDQuMi0zNS44LTgwLTgwLTgwcy04MCAzNS44LTgwIDgwbDAgNTAuNmMtMTguNiA2LjYtMzIgMjQuNC0zMiA0NS4zeiJdfSx3N3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYm9sdC1saWdodG5pbmciLGljb246WzM4NCw1MTIsW10sImUwYjciLCJNMCAyNTZMMjguNSAyOGMyLTE2IDE1LjYtMjggMzEuOC0yOEwyMjguOSAwYzE1IDAgMjcuMSAxMi4xIDI3LjEgMjcuMSAwIDMuMi0uNiA2LjUtMS43IDkuNUwyMDggMTYwIDM0Ny4zIDE2MGMyMC4yIDAgMzYuNyAxNi40IDM2LjcgMzYuNyAwIDcuNC0yLjIgMTQuNi02LjQgMjAuN2wtMTkyLjIgMjgxYy01LjkgOC42LTE1LjYgMTMuNy0yNS45IDEzLjdsLTIuOSAwYy0xNS43IDAtMjguNS0xMi44LTI4LjUtMjguNSAwLTIuMyAuMy00LjYgLjktNi45TDE3NiAyODggMzIgMjg4Yy0xNy43IDAtMzItMTQuMy0zMi0zMnoiXX0sTTdyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNsb3VkLXNob3dlcnMtd2F0ZXIiLGljb246WzUxMiw1MTIsW10sImU0ZTQiLCJNMjc5LjIgNTUuN0MyNjMuOSAyMi44IDIzMC42IDAgMTkyIDAgMTM5IDAgOTYgNDMgOTYgOTYgNjAuNyA5NiAzMiAxMjQuNyAzMiAxNjBzMjguNyA2NCA2NCA2NGwzMjAgMGMzNS4zIDAgNjQtMjguNyA2NC02NHMtMjguNy02NC02NC02NGwtMS42IDBjLTcuNC0zNi41LTM5LjctNjQtNzguNC02NC0yMi4yIDAtNDIuMyA5LjEtNTYuOCAyMy43ek00MTAuNiA0NzYuMWMyMC43IDE1LjYgNDYgMzAuNyA3NC4yIDM0LjUgMTMuMSAxLjggMjUuMi03LjUgMjctMjAuNnMtNy41LTI1LjItMjAuNi0yN2MtMTUuOS0yLjEtMzMuMi0xMS4zLTUxLjctMjUuMi0zOC40LTI5LTkwLjUtMjktMTI5IDAtMjQgMTguMS00MC43IDI2LjMtNTQuNSAyNi4zcy0zMC41LTguMi01NC41LTI2LjNjLTM4LjQtMjktOTAuNS0yOS0xMjkgMC0xOC41IDEzLjktMzUuOCAyMy4xLTUxLjcgMjUuMi0xMy4xIDEuOC0yMi40IDEzLjgtMjAuNiAyN3MxMy44IDIyLjQgMjcgMjAuNmMyOC4yLTMuOCA1My42LTE4LjkgNzQuMi0zNC41IDIxLjMtMTYuMSA0OS45LTE2LjEgNzEuMiAwIDI0LjIgMTguMyA1Mi4zIDM1LjkgODMuNCAzNS45czU5LjEtMTcuNyA4My40LTM1LjljMjEuMy0xNi4xIDQ5LjktMTYuMSA3MS4yIDB6TTEwMC4xIDMwMy42YzQuMi0xMi42LTIuNi0yNi4yLTE1LjItMzAuNHMtMjYuMiAyLjYtMzAuNCAxNS4ybC0yMS4zIDY0QzI5IDM2NSAzNS44IDM3OC42IDQ4LjQgMzgyLjhzMjYuMi0yLjYgMzAuNC0xNS4ybDIxLjMtNjR6bTEyMCAwYzQuMi0xMi42LTIuNi0yNi4yLTE1LjItMzAuNHMtMjYuMiAyLjYtMzAuNCAxNS4ybC0yMS4zIDY0Yy00LjIgMTIuNiAyLjYgMjYuMiAxNS4yIDMwLjRzMjYuMi0yLjYgMzAuNC0xNS4ybDIxLjMtNjR6bTExMiAwYzQuMi0xMi42LTIuNi0yNi4yLTE1LjItMzAuNHMtMjYuMiAyLjYtMzAuNCAxNS4ybC0yMS4zIDY0Yy00LjIgMTIuNiAyLjYgMjYuMiAxNS4yIDMwLjRzMjYuMi0yLjYgMzAuNC0xNS4ybDIxLjMtNjR6bTEyMCAwYzQuMi0xMi42LTIuNi0yNi4yLTE1LjItMzAuNHMtMjYuMiAyLjYtMzAuNCAxNS4ybC0yMS4zIDY0Yy00LjIgMTIuNiAyLjYgMjYuMiAxNS4yIDMwLjRzMjYuMi0yLjYgMzAuNC0xNS4ybDIxLjMtNjR6Il19LGZUZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJhcnJvdy11cC1sb25nIixpY29uOlszMjAsNTEyLFsibG9uZy1hcnJvdy11cCJdLCJmMTc2IiwiTTE4Mi42LTIyLjZjLTEyLjUtMTIuNS0zMi44LTEyLjUtNDUuMyAwbC0xMjggMTI4Yy0xMi41IDEyLjUtMTIuNSAzMi44IDAgNDUuM3MzMi44IDEyLjUgNDUuMyAwTDEyOCA3Ny4zIDEyOCA1MTJjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTQzNC43IDczLjQgNzMuNGMxMi41IDEyLjUgMzIuOCAxMi41IDQ1LjMgMHMxMi41LTMyLjggMC00NS4zbC0xMjgtMTI4eiJdfSxrN3I9ZlRlLHgyZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJhZGRyZXNzLWNhcmQiLGljb246WzU3Niw1MTIsWzYyMTQwLCJjb250YWN0LWNhcmQiLCJ2Y2FyZCJdLCJmMmJiIiwiTTY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsNDQ4IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zMjBjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzJ6bTgwIDI1Nmw2NCAwYzQ0LjIgMCA4MCAzNS44IDgwIDgwIDAgOC44LTcuMiAxNi0xNiAxNkw4MCAzODRjLTguOCAwLTE2LTcuMi0xNi0xNiAwLTQ0LjIgMzUuOC04MCA4MC04MHptLTI0LTk2YTU2IDU2IDAgMSAxIDExMiAwIDU2IDU2IDAgMSAxIC0xMTIgMHptMjQwLTQ4bDExMiAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC0xMTIgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNHptMCA5NmwxMTIgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtMTEyIDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjR6Il19LFM3cj14MmUsejdyPXgyZSxDN3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYW5nbGUtcmlnaHQiLGljb246WzI1Niw1MTIsWzgyNTBdLCJmMTA1IiwiTTI0Ny4xIDIzMy40YzEyLjUgMTIuNSAxMi41IDMyLjggMCA0NS4zbC0xNjAgMTYwYy0xMi41IDEyLjUtMzIuOCAxMi41LTQ1LjMgMHMtMTIuNS0zMi44IDAtNDUuM0wxNzkuMiAyNTYgNDEuOSAxMTguNmMtMTIuNS0xMi41LTEyLjUtMzIuOCAwLTQ1LjNzMzIuOC0xMi41IDQ1LjMgMGwxNjAgMTYweiJdfSxwVGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmFjZS1tZWgiLGljb246WzUxMiw1MTIsWzEyODUyOCwibWVoIl0sImYxMWEiLCJNMjU2IDUxMmEyNTYgMjU2IDAgMSAwIDAtNTEyIDI1NiAyNTYgMCAxIDAgMCA1MTJ6TTE3NiAxNzZhMzIgMzIgMCAxIDEgMCA2NCAzMiAzMiAwIDEgMSAwLTY0em0xMjggMzJhMzIgMzIgMCAxIDEgNjQgMCAzMiAzMiAwIDEgMSAtNjQgMHpNMTc2IDMyMGwxNjAgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtMTYwIDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjR6Il19LF83cj1wVGUsVDdyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFycm93LXVwLWZyb20tZ3JvdW5kLXdhdGVyIixpY29uOls2NDAsNTEyLFtdLCJlNGI1IiwiTTMwMyA3YzkuNC05LjQgMjQuNi05LjQgMzMuOSAwbDg4IDg4YzkuNCA5LjQgOS40IDI0LjYgMCAzMy45cy0yNC42IDkuNC0zMy45IDBsLTQ3LTQ3IDAgMjc4LjFjMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjRsMC0yNzguMS00NyA0N2MtOS40IDkuNC0yNC42IDkuNC0zMy45IDBzLTkuNC0yNC42IDAtMzMuOUwzMDMgN3pNMjQwIDE5MmwwIDE2My4xYy0xMC42LTIuMi0yMS4zLTMuMi0zMi0zLjEtMzIuNSAuMi02NC45IDEwLjctOTIuMyAzMS40LTguOCA2LjYtMTUuOSAxMC45LTIxLjcgMTMuNWwtLjggLjRjLTMuNyAxLjctNi40IDIuOS05LjggLjMtNi00LjUtMTIuNi04LTE5LjMtMTAuNEw2NCAyNDBjMC0yNi41IDIxLjUtNDggNDgtNDhsMTI4IDB6bTMzNiA0OGwwIDE1NS4yYy0xLjEgLjgtMi4yIDEuNS0zLjMgMi40LTQuMSAzLjEtOC4zIC44LTEyLjYtMS41LS42LS4zLTEuMi0uNi0xLjgtMS01LjItMi43LTExLjEtNi42LTE4LTExLjctMjguMS0yMS4xLTYxLjMtMzEuNi05NC40LTMxLjQtMTUuNSAuMS0zMSAyLjUtNDYgNy4zbDAtMTY3LjMgMTI4IDBjMjYuNSAwIDQ4IDIxLjUgNDggNDh6TTQwMy40IDQ3Ni4xQzM3OS4xIDQ5NC4zIDM1MS4xIDUxMiAzMjAgNTEycy01OS4xLTE3LjctODMuNC0zNS45Yy0yMS4zLTE2LjEtNDkuOS0xNi4xLTcxLjIgMC0yMy44IDE3LjktNTQuMSAzNS41LTg4LjEgMzUuMy0yMC40LS4xLTQwLjctNi43LTU5LjgtMjEuMS0xMC42LTgtMTIuNy0yMy00LjctMzMuNnMyMy0xMi43IDMzLjYtNC43YzExLjMgOC41IDIxLjYgMTEuNCAzMS4yIDExLjUgMTcuNiAuMSAzNy4zLTkuNCA1OC45LTI1LjcgMzguNC0yOSA5MC41LTI5IDEyOSAwIDI0IDE4LjEgNDAuNyAyNi4zIDU0LjUgMjYuM3MzMC41LTguMiA1NC41LTI2LjNjMzguNC0yOSA5MC41LTI5IDEyOSAwIDE2LjkgMTIuNyAzMi45IDIxLjUgNDcuOCAyNC42IDEzLjcgMi44IDI3LjQgLjkgNDIuMy0xMC4zIDEwLjYtOCAyNS42LTUuOSAzMy42IDQuN3M1LjkgMjUuNi00LjcgMzMuNmMtMjYuNCAxOS45LTU0LjIgMjQuNC04MC43IDE5LjEtMjUuMy01LjEtNDguMS0xOC45LTY3LjItMzMuMy0yMS4zLTE2LjEtNDkuOS0xNi4xLTcxLjIgMHoiXX0sTDdyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im1hcCIsaWNvbjpbNTEyLDUxMixbMTI4NTA2LDYyMDcyXSwiZjI3OSIsIk01MTIgNDhjMC0xMS4xLTUuNy0yMS40LTE1LjItMjcuMnMtMjEuMi02LjQtMzEuMS0xLjRMMzQ5LjUgNzcuNSAxNzAuMSAxNy42Yy04LjEtMi43LTE2LjgtMi4xLTI0LjQgMS43bC0xMjggNjRDNi44IDg4LjggMCA5OS45IDAgMTEyTDAgNDY0YzAgMTEuMSA1LjcgMjEuNCAxNS4yIDI3LjJzMjEuMiA2LjQgMzEuMSAxLjRsMTE2LjEtNTguMSAxNzkuNCA1OS44YzguMSAyLjcgMTYuOCAyLjEgMjQuNC0xLjdsMTI4LTY0YzEwLjgtNS40IDE3LjctMTYuNSAxNy43LTI4LjZsMC0zNTJ6TTE5MiAzNzYuOWwwLTI4NC41IDEyOCA0Mi43IDAgMjg0LjUtMTI4LTQyLjd6Il19LEQ3cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ1c2VyLXBsdXMiLGljb246WzY0MCw1MTIsW10sImYyMzQiLCJNMjg1LjcgMzA0Yzk4LjUgMCAxNzguMyA3OS44IDE3OC4zIDE3OC4zIDAgMTYuNC0xMy4zIDI5LjctMjkuNyAyOS43TDc3LjcgNTEyQzYxLjMgNTEyIDQ4IDQ5OC43IDQ4IDQ4Mi4zIDQ4IDM4My44IDEyNy44IDMwNCAyMjYuMyAzMDRsNTkuNCAwek01MjggODBjMTMuMyAwIDI0IDEwLjcgMjQgMjRsMCA0OCA0OCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC00OCAwIDAgNDhjMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjRsMC00OC00OCAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0bDQ4IDAgMC00OGMwLTEzLjMgMTAuNy0yNCAyNC0yNHpNMjU2IDI0OGExMjAgMTIwIDAgMSAxIDAtMjQwIDEyMCAxMjAgMCAxIDEgMCAyNDB6Il19LEE3cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ2ZW51cyIsaWNvbjpbMzg0LDUxMixbOTc5Ml0sImYyMjEiLCJNODAgMTc2YTExMiAxMTIgMCAxIDEgMjI0IDAgMTEyIDExMiAwIDEgMSAtMjI0IDB6TTIyMy45IDM0OS4xQzMwNS45IDMzNC4xIDM2OCAyNjIuMyAzNjggMTc2IDM2OCA3OC44IDI4OS4yIDAgMTkyIDBTMTYgNzguOCAxNiAxNzZjMCA4Ni4zIDYyLjEgMTU4LjEgMTQ0LjEgMTczLjEtLjEgMS0uMSAxLjktLjEgMi45bDAgNjQtMzIgMGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmwzMiAwIDAgMzJjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTMyIDMyIDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTMyIDAgMC02NGMwLTEgMC0xLjktLjEtMi45eiJdfSxFN3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZGlhZ3JhbS1zdWNjZXNzb3IiLGljb246WzQ0OCw1MTIsW10sImU0N2EiLCJNMjg5LjIgMTM3LjljMi41LTYgOC4zLTkuOSAxNC44LTkuOWw0MCAwIDAtMjRjMC0xMy4zLTEwLjctMjQtMjQtMjRsLTk4IDBjMS4zIDUuMSAyIDEwLjUgMiAxNmwwIDY0YzAgMzUuMy0yOC43IDY0LTY0IDY0bC05NiAwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDk2QzAgNjAuNyAyOC43IDMyIDY0IDMybDI1NiAwYzM5LjggMCA3MiAzMi4yIDcyIDcybDAgMjQgNDAgMGM2LjUgMCAxMi4zIDMuOSAxNC44IDkuOXMxLjEgMTIuOS0zLjUgMTcuNGwtNjQgNjRjLTYuMiA2LjItMTYuNCA2LjItMjIuNiAwbC02NC02NGMtNC42LTQuNi01LjktMTEuNS0zLjUtMTcuNHpNMzg0IDQ4MEw2NCA0ODBjLTM1LjMgMC02NC0yOC43LTY0LTY0bDAtNjRjMC0zNS4zIDI4LjctNjQgNjQtNjRsMzIwIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCA2NGMwIDM1LjMtMjguNyA2NC02NCA2NHpNMTYwIDE2MGwwLTY0LTk2IDAgMCA2NCA5NiAweiJdfSwkN3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaGVhZC1zaWRlLWNvdWdoLXNsYXNoIixpY29uOls1NzYsNTEyLFtdLCJlMDYyIiwiTTUzNS0yNC45YzkuNC05LjQgMjQuNi05LjQgMzMuOSAwczkuNCAyNC42IDAgMzMuOUw0MSA1MzcuMWMtOS40IDkuNC0yNC42IDkuNC0zMy45IDBzLTkuNC0yNC42IDAtMzMuOWwyNS0yNSAwLTQ0Ny4yYzAtMTUgMTAuNS0yOC4zIDI1LjQtMjkuOCA3LjQtLjcgMTQuOS0xLjEgMjIuNi0xLjEgMTEyLjcgMCAyMDYgODMuMyAyMjEuNyAxOTEuNyAuNCAzIDEuNyA1LjkgMy42IDguM2wyLjIgMi42IDIyNy41LTIyNy41ek0xMzMuOCA1MTJMMjg4IDM1Ny44IDI4OCA0MTZjMCA1My00MyA5Ni05NiA5NmwtNTguMiAwek0xNzYgMjI0YTMyIDMyIDAgMSAwIDAtNjQgMzIgMzIgMCAxIDAgMCA2NHptMzM2IDQwYTI0IDI0IDAgMSAxIDAgNDggMjQgMjQgMCAxIDEgMC00OHptLTg4IDcyYTI0IDI0IDAgMSAxIDQ4IDAgMjQgMjQgMCAxIDEgLTQ4IDB6bS02NCA0OGEyNCAyNCAwIDEgMSA0OCAwIDI0IDI0IDAgMSAxIC00OCAwem0xMjggMGEyNCAyNCAwIDEgMSA0OCAwIDI0IDI0IDAgMSAxIC00OCAwem0yNCA3MmEyNCAyNCAwIDEgMSAwIDQ4IDI0IDI0IDAgMSAxIDAtNDh6bS04OC0yNGEyNCAyNCAwIDEgMSA0OCAwIDI0IDI0IDAgMSAxIC00OCAweiJdfSxoVGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZGlhZ3JhbS1wcm9qZWN0IixpY29uOls1MTIsNTEyLFsicHJvamVjdC1kaWFncmFtIl0sImY1NDIiLCJNMCA4MEMwIDUzLjUgMjEuNSAzMiA0OCAzMmw5NiAwYzI2LjUgMCA0OCAyMS41IDQ4IDQ4bDAgMTYgMTI4IDAgMC0xNmMwLTI2LjUgMjEuNS00OCA0OC00OGw5NiAwYzI2LjUgMCA0OCAyMS41IDQ4IDQ4bDAgOTZjMCAyNi41LTIxLjUgNDgtNDggNDhsLTk2IDBjLTI2LjUgMC00OC0yMS41LTQ4LTQ4bDAtMTYtMTI4IDAgMCAxNmMwIDcuMy0xLjcgMTQuMy00LjYgMjAuNWw2OC42IDkxLjUgODAgMGMyNi41IDAgNDggMjEuNSA0OCA0OGwwIDk2YzAgMjYuNS0yMS41IDQ4LTQ4IDQ4bC05NiAwYy0yNi41IDAtNDgtMjEuNS00OC00OGwwLTk2YzAtNy4zIDEuNy0xNC4zIDQuNi0yMC41TDEyOCAyMjQgNDggMjI0Yy0yNi41IDAtNDgtMjEuNS00OC00OEwwIDgweiJdfSxQN3I9aFRlLHNsZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0ZXJtaW5hbCIsaWNvbjpbNTEyLDUxMixbXSwiZjEyMCIsIk05LjQgMTE4LjZjLTEyLjUtMTIuNS0xMi41LTMyLjggMC00NS4zczMyLjgtMTIuNSA0NS4zIDBsMTYwIDE2MGMxMi41IDEyLjUgMTIuNSAzMi44IDAgNDUuM2wtMTYwIDE2MGMtMTIuNSAxMi41LTMyLjggMTIuNS00NS4zIDBzLTEyLjUtMzIuOCAwLTQ1LjNMMTQ2LjcgMjU2IDkuNCAxMTguNnpNMjI0IDM4NGwyNTYgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtMjU2IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJ6Il19LEk3cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJob3VzZS1maXJlIixpY29uOls2NDAsNTEyLFtdLCJlNTBjIiwiTTQ0OCAxOTJjMTQuMSAuNCAyMy44IDExLjQgMzIuNyAyMS43IDIgMi4zIDQgNC42IDYgNi43bDE5IDE5LjkgMTIuMi0xMy44YzUuNC02LjEgMTMuMy04LjkgMjAuOS04LjkgNy4yIDAgMTQuMyAyLjYgMTkuOSA3LjggMTkuNyAxOC4zIDM5LjggNDMuMiA1NSA3MC42IDE1LjEgMjcuMiAyNi4yIDU4LjIgMjYuMiA4OC4yIDAgODguNy03MS4zIDE1OS44LTE2MCAxNTkuOC04OS42IDAtMTYwLTcxLjMtMTYwLTE1OS44IDAtMzcuMyAxNi03My40IDM2LjgtMTA0LjUgMjAuOS0zMS4zIDQ3LjUtNTkgNzAuOS04MC4xIDUuNy01LjIgMTMuMS03LjcgMjAuMy03LjV6TTI2OC42IDYuNWMxMi4yLTkuMyAyOS43LTguNyA0MS4yIDJsMTQ3LjUgMTM3Yy0xOS4yLTQuMy00MCAuNS01NS41IDE0LjQtMzYuNCAzMi42LTY3LjcgNjkuOC05MC4zIDEwNi40LTEwLjMgMTYuNi0xOS43IDM0LjktMjYuOCA1My43TDI3MiAzMjBjLTI2LjUgMC00OCAyMS41LTQ4IDQ4bDAgOTYgNjQuNiAwYzcuMyAxNy4yIDE2LjggMzMuNCAyOC4yIDQ4TDE0NCA1MTJjLTM1LjMgMC02NC0yOC43LTY0LTY0bDAtMTc2LTE2IDBjLTEzLjIgMC0yNS04LjEtMjkuOC0yMC4zcy0xLjYtMjYuMiA4LTM1LjFsMjI0LTIwOCAyLjQtMnpNNDg5LjMgMzQzLjdjLTUuNC00LjctMTMuMS00LjctMTguNSAwLTE3LjcgMTUuNC01NC43IDUxLjktNTQuNyA4OC40IDAgMzUuMyAyOC43IDY0IDY0IDY0czY0LTI4LjcgNjQtNjRjMC0zNi41LTM3LTczLTU0LjctODguNHoiXX0sTjdyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im1hc2siLGljb246WzU3Niw1MTIsW10sImY2ZmEiLCJNMjg4IDY0QzY0IDY0IDAgMTYwIDAgMjcyUzgwIDQ0OCAxNzYgNDQ4bDguNCAwYzI0LjIgMCA0Ni40LTEzLjcgNTcuMi0zNS40bDIzLjItNDYuM2M0LjQtOC44IDEzLjMtMTQuMyAyMy4yLTE0LjNzMTguOCA1LjUgMjMuMiAxNC4zbDIzLjIgNDYuM2MxMC44IDIxLjcgMzMgMzUuNCA1Ny4yIDM1LjRsOC40IDBjOTYgMCAxNzYtNjQgMTc2LTE3NlM1MTIgNjQgMjg4IDY0ek05NiAyNTZhNjQgNjQgMCAxIDEgMTI4IDAgNjQgNjQgMCAxIDEgLTEyOCAwem0zMjAtNjRhNjQgNjQgMCAxIDEgMCAxMjggNjQgNjQgMCAxIDEgMC0xMjh6Il19LEY3cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJodXJyaWNhbmUiLGljb246WzM4NCw1MTIsW10sImY3NTEiLCJNMCAyMDhDMCAxMDQuNCA3NS43IDE4LjUgMTc0LjkgMi42IDE4NCAxLjIgMTkyIDguNiAxOTIgMTcuOWwwIDYzLjNjMCA4LjQgNi41IDE1LjMgMTQuNyAxNi41IDEwMC4zIDE0LjkgMTc3LjMgMTAxLjMgMTc3LjMgMjA1LjcgMCAxMDMuNi03NS43IDE4OS41LTE3NC45IDIwNS40LTkuMiAxLjUtMTcuMS01LjktMTcuMS0xNS4ybDAtNjMuM0MxOTIgNDIxLjkgMTg1LjUgNDE1IDE3Ny4zIDQxMy43IDc3IDM5OC45IDAgMzEyLjQgMCAyMDh6bTI4OCA0OGE5NiA5NiAwIDEgMCAtMTkyIDAgOTYgOTYgMCAxIDAgMTkyIDB6bS05Ni0zMmEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6Il19LG1UZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJlYXJ0aC1hZnJpY2EiLGljb246WzUxMiw1MTIsWzEyNzc1NywiZ2xvYmUtYWZyaWNhIl0sImY1N2MiLCJNNDQ3LjYgMTc1Yy0zMS42LTc0LjYtMTA1LjUtMTI3LTE5MS42LTEyNy0yMi4xIDAtNDMuNCAzLjUtNjMuNCA5LjgtLjQgMi0uNiA0LjEtLjYgNi4ybDAgNzMuNGMwIDEyLjUgMTAuMSAyMi42IDIyLjYgMjIuNiA2IDAgMTEuOC0yLjQgMTYtNi42bDE2LTE2YzYtNiAxNC4xLTkuNCAyMi42LTkuNGw1LjUgMGMyOC41IDAgNDIuOCAzNC41IDIyLjYgNTQuNi02IDYtMTQuMSA5LjQtMjIuNiA5LjRsLTYxLjUgMGMtOC41IDAtMTYuNiAzLjQtMjIuNiA5LjRsLTIxLjMgMjEuM2MtNiA2LTkuNCAxNC4xLTkuNCAyMi42bDAgNDIuN2MwIDE3LjcgMTQuMyAzMiAzMiAzMmwzMiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMzJjMCAxNy43IDE0LjMgMzIgMzIgMzJsMi43IDBjOC41IDAgMTYuNi0zLjQgMjIuNi05LjRsMjkuMy0yOS4zYzYtNiA5LjQtMTQuMSA5LjQtMjIuNmwwLTE4LjdjMC04LjggNy4yLTE2IDE2LTE2czE2LTcuMiAxNi0xNmwwLTM0LjdjMC04LjUtMy40LTE2LjYtOS40LTIyLjZsLTE2LTE2Yy00LjItNC4yLTYuNi0xMC02LjYtMTYgMC0xMi41IDEwLjEtMjIuNiAyMi42LTIyLjZsNDUgMGMxMi40IDAgMjIuNy03LjEgMjgtMTd6TTAgMjU2YTI1NiAyNTYgMCAxIDEgNTEyIDAgMjU2IDI1NiAwIDEgMSAtNTEyIDB6Il19LE83cj1tVGUsZ1RlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRodW1idGFjayIsaWNvbjpbMzg0LDUxMixbMTI4MjA0LDEyODM5MiwidGh1bWItdGFjayJdLCJmMDhkIiwiTTMyIDMyQzMyIDE0LjMgNDYuMyAwIDY0IDBMMzIwIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTI5LjUgMCAxMC4zIDEzNC4xYzM3LjEgMjEuMiA2NS44IDU2LjQgNzguMiA5OS43bDMuOCAxMy40YzIuOCA5LjcgLjggMjAtNS4yIDI4LjFTMzYyIDM1MiAzNTIgMzUyTDMyIDM1MmMtMTAgMC0xOS41LTQuNy0yNS41LTEyLjdzLTgtMTguNC01LjItMjguMUw1IDI5Ny44YzEyLjQtNDMuMyA0MS03OC41IDc4LjItOTkuN0w5My41IDY0IDY0IDY0QzQ2LjMgNjQgMzIgNDkuNyAzMiAzMnpNMTYwIDQwMGw2NCAwIDAgMTEyYzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMTEyeiJdfSxSN3I9Z1RlLEI3cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJoYW5kLXBvaW50LWRvd24iLGljb246WzM4NCw1MTIsW10sImYwYTciLCJNMzIgNDgwYzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0yMDgtNjQgMCAwIDIwOHpNMjI0IDMyMGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtNjRjMC0xNy43LTE0LjMtMzItMzItMzJzLTMyIDE0LjMtMzIgMzJsMCA2NHptLTY0IDY0YzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtNDhjMC0xNy43LTE0LjMtMzItMzItMzJzLTMyIDE0LjMtMzIgMzJsMCA0OGMwIDE3LjcgMTQuMyAzMiAzMiAzMnptMTYwLTk2YzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC02NGMwLTE3LjctMTQuMy0zMi0zMi0zMnMtMzIgMTQuMy0zMiAzMmwwIDY0em0tOTYtODhsMCAuNmM5LjQtNS40IDIwLjMtOC42IDMyLTguNiAxMy4yIDAgMjUuNCA0IDM1LjYgMTAuOCA4LjctMjQuOSAzMi41LTQyLjggNjAuNC00Mi44IDExLjcgMCAyMi42IDMuMSAzMiA4LjZsMC04LjZDMzg0IDcxLjYgMzEyLjQgMCAyMjQgMEwxNjIuMyAwQzExOS44IDAgNzkuMSAxNi45IDQ5LjEgNDYuOUwzNy41IDU4LjVDMTMuNSA4Mi41IDAgMTE1LjEgMCAxNDlsMCAyN2MwIDM1LjMgMjguNyA2NCA2NCA2NGw4OCAwYzIyLjEgMCA0MC0xNy45IDQwLTQwcy0xNy45LTQwLTQwLTQwbC01NiAwYy04LjggMC0xNi03LjItMTYtMTZzNy4yLTE2IDE2LTE2bDU2IDBjMzkuOCAwIDcyIDMyLjIgNzIgNzJ6Il19LHhUZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmYWNlLW1laC1ibGFuayIsaWNvbjpbNTEyLDUxMixbMTI4NTY2LCJtZWgtYmxhbmsiXSwiZjVhNCIsIk0wIDI1NmEyNTYgMjU2IDAgMSAxIDUxMiAwIDI1NiAyNTYgMCAxIDEgLTUxMiAwem0yMDgtNDhhMzIgMzIgMCAxIDAgLTY0IDAgMzIgMzIgMCAxIDAgNjQgMHptMTI4IDMyYTMyIDMyIDAgMSAwIDAtNjQgMzIgMzIgMCAxIDAgMCA2NHoiXX0sSDdyPXhUZSxNdz17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0ZW1wZXJhdHVyZS1lbXB0eSIsaWNvbjpbMzIwLDUxMixbInRlbXBlcmF0dXJlLTAiLCJ0aGVybW9tZXRlci0wIiwidGhlcm1vbWV0ZXItZW1wdHkiXSwiZjJjYiIsIk02NCA5NmMwLTUzIDQzLTk2IDk2LTk2czk2IDQzIDk2IDk2bDAgMTY0LjdjMjkuNSAyNi40IDQ4IDY0LjcgNDggMTA3LjMgMCA3OS41LTY0LjUgMTQ0LTE0NCAxNDRTMTYgNDQ3LjUgMTYgMzY4YzAtNDIuNiAxOC41LTgxIDQ4LTEwNy4zTDY0IDk2em05NiAzMzZjMzUuMyAwIDY0LTI4LjcgNjQtNjRzLTI4LjctNjQtNjQtNjQtNjQgMjguNy02NCA2NCAyOC43IDY0IDY0IDY0eiJdfSxxN3I9TXcsajdyPU13LFY3cj1NdyxVN3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYm9yZGVyLW5vbmUiLGljb246WzQ0OCw1MTIsW10sImY4NTAiLCJNMzIgNDE2Yy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMyIDMyLTE0LjMgMzItMzItMTQuMy0zMi0zMi0zMnpNMTYwIDMyYTMyIDMyIDAgMSAwIDAgNjQgMzIgMzIgMCAxIDAgMC02NHpNMjg4IDQxNmMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMiAzMi0xNC4zIDMyLTMyLTE0LjMtMzItMzItMzJ6TTE2MCA0ODBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzItMzIgMTQuMy0zMiAzMiAxNC4zIDMyIDMyIDMyek0yODggMzJhMzIgMzIgMCAxIDAgMCA2NCAzMiAzMiAwIDEgMCAwLTY0ek00MTYgNDgwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMyLTMyIDE0LjMtMzIgMzIgMTQuMyAzMiAzMiAzMnptMC0zODRhMzIgMzIgMCAxIDAgMC02NCAzMiAzMiAwIDEgMCAwIDY0ek0zMiAzMmEzMiAzMiAwIDEgMCAwIDY0IDMyIDMyIDAgMSAwIDAtNjR6TTQxNiAzNTJhMzIgMzIgMCAxIDAgMC02NCAzMiAzMiAwIDEgMCAwIDY0ek0zMiAxNjBhMzIgMzIgMCAxIDAgMCA2NCAzMiAzMiAwIDEgMCAwLTY0em0wIDE5MmEzMiAzMiAwIDEgMCAwLTY0IDMyIDMyIDAgMSAwIDAgNjR6TTQxNiAxNjBhMzIgMzIgMCAxIDAgMCA2NCAzMiAzMiAwIDEgMCAwLTY0eiJdfSxXN3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaGlnaGxpZ2h0ZXIiLGljb246WzU3Niw1MTIsW10sImY1OTEiLCJNMzE1IDMxNUw0NzMuNCA5OS45IDQ0NC4xIDcwLjYgMjI5IDIyOSAzMTUgMzE1em0tMTg3IDVsMCAwIDAtNzEuN2MwLTE1LjMgNy4yLTI5LjYgMTkuNS0zOC42TDQyMC42IDguNEM0MjggMi45IDQzNyAwIDQ0Ni4yIDAgNDU3LjYgMCA0NjguNSA0LjUgNDc2LjYgMTIuNmw1NC44IDU0LjhjOC4xIDguMSAxMi42IDE5IDEyLjYgMzAuNSAwIDkuMi0yLjkgMTguMi04LjQgMjUuNkwzMzQuNCAzOTYuNWMtOSAxMi4zLTIzLjQgMTkuNS0zOC42IDE5LjVsLTcxLjcgMC0yNS40IDI1LjRjLTEyLjUgMTIuNS0zMi44IDEyLjUtNDUuMyAwbC01MC43LTUwLjdjLTEyLjUtMTIuNS0xMi41LTMyLjggMC00NS4zTDEyOCAzMjB6TTcgNDY2LjNsNTEuNy01MS43IDcwLjYgNzAuNi0xOS43IDE5LjdjLTQuNSA0LjUtMTAuNiA3LTE3IDdMMjQgNTEyYy0xMy4zIDAtMjQtMTAuNy0yNC0yNGwwLTQuN2MwLTYuNCAyLjUtMTIuNSA3LTE3eiJdfSxHN3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibW9uZXktYmlsbC13YXZlIixpY29uOls1MTIsNTEyLFtdLCJmNTNhIiwiTTAgNDE5LjZMMCAxMDkuNWMwLTIzLjIgMjQuMS0zOC42IDQ2LjMtMzIgODcuNyAyNi4yIDE0OS43IDUuNSAyMTIuMS0xNS4zIDY0LjUtMjEuNSAxMjkuNC00My4xIDIyMy4zLTEzLjEgMTguNSA1LjkgMzAuMyAyMy44IDMwLjMgNDMuM2wwIDMxMC4xYzAgMjMuMi0yNC4xIDM4LjYtNDYuMiAzMi04Ny43LTI2LjItMTQ5LjgtNS41LTIxMi4xIDE1LjMtNjQuNSAyMS41LTEyOS40IDQzLjEtMjIzLjMgMTMuMS0xOC41LTUuOS0zMC4zLTIzLjgtMzAuMy00My4zek0zMzYgMjU2YzAtNTMtMzUuOC05Ni04MC05NnMtODAgNDMtODAgOTYgMzUuOCA5NiA4MCA5NiA4MC00MyA4MC05NnpNMTIwIDQxMy42YzQuNCAwIDcuOS0zLjggNy4yLTguMS00LjYtMjcuOC0yNy00OS41LTU1LjItNTMtNC40LS41LTggMy4xLTggNy41bDAgMzkuOWMwIDMuNiAyLjQgNi44IDYgNy43IDE3LjkgNC4yIDM0LjMgNi4xIDUwIDYuMXptMzE4LjUtNTEuMWM1IC44IDkuNS0zIDkuNS04bDAtNDIuNmMwLTQuNC0zLjYtOC4xLTgtNy41LTI1LjIgMy4xLTQ1LjkgMjAuOS01My4yIDQ0LjYtMS40IDQuNyAyLjMgOS4xIDcuMiA5LjIgMTQuMiAuNCAyOSAxLjcgNDQuNCA0LjN6TTQ0OCAxNTJsMC0zOS45YzAtMy42LTIuNS02LjgtNi03LjctMTcuOS00LjItMzQuMy02LjEtNTAtNi4xLTQuNCAwLTcuOSAzLjgtNy4yIDguMSA0LjYgMjcuOCAyNyA0OS41IDU1LjIgNTMgNC40IC41IDgtMy4xIDgtNy41ek0xMjUuMiAxNjIuOWMxLjQtNC43LTIuMy05LjEtNy4yLTkuMi0xNC4yLS40LTI5LTEuNy00NC40LTQuMy01LS44LTkuNSAzLTkuNSA4TDY0IDIwMGMwIDQuNCAzLjYgOC4xIDggNy41IDI1LjItMy4xIDQ1LjktMjAuOSA1My4yLTQ0LjZ6Il19LFk3cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0b2lsZXQtcGFwZXItc2xhc2giLGljb246WzU3Niw1MTIsW10sImUwNzIiLCJNNDEtMjQuOWMtOS40LTkuNC0yNC42LTkuNC0zMy45IDBTLTIuMy0uMyA3IDkuMWw1MjggNTI4YzkuNCA5LjQgMjQuNiA5LjQgMzMuOSAwczkuNC0yNC42IDAtMzMuOWwtOTQuNS05NC41YzQwLjItMjMgNjkuNS05Ni45IDY5LjUtMTg0LjYgMC0xMDYtNDMtMTkyLTk2LTE5MnMtOTYgODYtOTYgMTkyYzAgMjQuMSAyLjIgNDcuMiA2LjMgNjguNEwzMDQgMjM4LjIgMzA0IDIyNGMwLTU4LjkgMTEuOC0xMTQuNSAzMy4yLTE1Ny4yIDUuOS0xMS43IDEzLjEtMjMuNyAyMS45LTM0LjhMMTI4IDMyYy04LjMgMC0xNi40IDIuMS0yNC4xIDYuMWwtNjMtNjN6TTMyIDIyNGwwIDI2NGMwIDMwLjkgMjUuMSA1NiA1NiA1NmwxNjAgMGMzMC45IDAgNTYtMjUuMSA1Ni01NmwwLTExNC4yLTI1Ni0yNTZDMzcuOSAxNDguMiAzMiAxODQuNyAzMiAyMjR6bTQxNiA2NGMtMTcuNyAwLTMyLTI4LjctMzItNjRzMTQuMy02NCAzMi02NCAzMiAyOC43IDMyIDY0LTE0LjMgNjQtMzIgNjR6Il19LFo3cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmaWxlLXNoaWVsZCIsaWNvbjpbNTc2LDUxMixbXSwiZTRmMCIsIk05NiAwQzYwLjcgMCAzMiAyOC43IDMyIDY0bDAgMzg0YzAgMzUuMyAyOC43IDY0IDY0IDY0bDIwMS4yIDBDMjYxIDQ2OS40IDI0MCA0MTQuNSAyNDAgMzU2LjRsMC0zMS4xYzAtMzQuNCAyMi02NSA1NC43LTc1LjlsMTEyLTM3LjNjMy4xLTEgNi4yLTEuOCA5LjMtMi41bDAtMzkuMWMwLTE3LTYuNy0zMy4zLTE4LjctNDUuM0wyOTAuNyAxOC43QzI3OC43IDYuNyAyNjIuNSAwIDI0NS41IDBMOTYgMHpNMzU3LjUgMTc2TDI2NCAxNzZjLTEzLjMgMC0yNC0xMC43LTI0LTI0TDI0MCA1OC41IDM1Ny41IDE3NnptODcuOCAzMTIuNWwtMTMuMyA2LjMgMC0xODguMSA5NiAzMiAwIDE5LjZjMCA1NS44LTMyLjIgMTA2LjUtODIuNyAxMzAuM3pNNDIxLjkgMjU5LjVsLTExMiAzNy4zYy0xMy4xIDQuNC0yMS45IDE2LjYtMjEuOSAzMC40bDAgMzEuMWMwIDc0LjQgNDMgMTQyLjEgMTEwLjIgMTczLjdsMTguNSA4LjdjNC44IDIuMiAxMCAzLjQgMTUuMiAzLjRzMTAuNS0xLjIgMTUuMi0zLjRsMTguNS04LjdDNTMzIDUwMC4zIDU3NiA0MzIuNiA1NzYgMzU4LjJsMC0zMS4xYzAtMTMuOC04LjgtMjYtMjEuOS0zMC40bC0xMTItMzcuM2MtNi42LTIuMi0xMy43LTIuMi0yMC4yIDB6Il19LFg3cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0ZXh0LWhlaWdodCIsaWNvbjpbNTc2LDUxMixbXSwiZjAzNCIsIk00MCAzMkMxNy45IDMyIDAgNDkuOSAwIDcybDAgNTZjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTMyIDY0IDAgMCAzMjAtMzIgMGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmwxMjggMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtMzIgMCAwLTMyMCA2NCAwIDAgMzJjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTU2YzAtMjIuMS0xNy45LTQwLTQwLTQwTDQwIDMyek00MzguNiAzNjEuNGMtMTIuNS0xMi41LTMyLjgtMTIuNS00NS4zIDBzLTEyLjUgMzIuOCAwIDQ1LjNsNjQgNjRjMTIuNSAxMi41IDMyLjggMTIuNSA0NS4zIDBsNjQtNjRjMTIuNS0xMi41IDEyLjUtMzIuOCAwLTQ1LjNzLTMyLjgtMTIuNS00NS4zIDBsLTkuNCA5LjQgMC0yMjkuNSA5LjQgOS40YzEyLjUgMTIuNSAzMi44IDEyLjUgNDUuMyAwczEyLjUtMzIuOCAwLTQ1LjNsLTY0LTY0Yy02LTYtMTQuMS05LjQtMjIuNi05LjRzLTE2LjYgMy40LTIyLjYgOS40bC02NCA2NGMtMTIuNSAxMi41LTEyLjUgMzIuOCAwIDQ1LjNzMzIuOCAxMi41IDQ1LjMgMGw5LjQtOS40IDAgMjI5LjUtOS40LTkuNHoiXX0sYlRlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZhY2UtZ3Jpbi10b25ndWUiLGljb246WzUxMiw1MTIsWzEyODUzOSwiZ3Jpbi10b25ndWUiXSwiZjU4OSIsIk0wIDI1NmMwIDEwNC40IDYyLjUgMTk0LjIgMTUyLjIgMjM0LjEtNS4zLTEzLTguMi0yNy4yLTguMi00Mi4xbDAtNjEuN2MtMTYuOS0xNi41LTMwLjEtMzYuNy0zOC4zLTU5LjMtNC4zLTExLjggNy43LTIxLjggMTkuNi0xOC4xIDM5LjIgMTIuMiA4My43IDE5LjEgMTMwLjcgMTkuMXM5MS41LTYuOSAxMzAuNy0xOS4xYzExLjktMy43IDIzLjkgNi4zIDE5LjYgMTguMS04LjMgMjIuNi0yMS41IDQyLjgtMzguMyA1OS4zbDAgNjEuN2MwIDE0LjktMi45IDI5LjEtOC4yIDQyLjEgODkuNy0zOS44IDE1Mi4yLTEyOS42IDE1Mi4yLTIzNC4xIDAtMTQxLjQtMTE0LjYtMjU2LTI1Ni0yNTZTMCAxMTQuNiAwIDI1NnptMTc2LTgwYTMyIDMyIDAgMSAxIDAgNjQgMzIgMzIgMCAxIDEgMC02NHptMTI4IDMyYTMyIDMyIDAgMSAxIDY0IDAgMzIgMzIgMCAxIDEgLTY0IDB6bTE2IDI0MGwwLTQ1LjRjMC0xNC43LTExLjktMjYuNi0yNi42LTI2LjZsLTIgMGMtMTEuMyAwLTIxLjEgNy45LTIzLjYgMTguOS0yLjggMTIuNi0yMC44IDEyLjYtMjMuNiAwLTIuNS0xMS4xLTEyLjMtMTguOS0yMy42LTE4LjlsLTIgMGMtMTQuNyAwLTI2LjYgMTEuOS0yNi42IDI2LjZsMCA0NS40YzAgMzUuMyAyOC43IDY0IDY0IDY0czY0LTI4LjcgNjQtNjR6Il19LFE3cj1iVGUsSzdyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZpbGUtc2lnbmF0dXJlIixpY29uOls2NDAsNTEyLFtdLCJmNTczIiwiTTY0LjEgNjRjMC0zNS4zIDI4LjctNjQgNjQtNjRMMjc3LjYgMGMxNyAwIDMzLjMgNi43IDQ1LjMgMTguN0w0MjkuMyAxMjUuM2MxMiAxMiAxOC43IDI4LjMgMTguNyA0NS4zbDAgOTcuNS0xMzIgMTMyLTQyLjEgMC0xNi4xLTUzLjZjLTQuNy0xNS43LTE5LjEtMjYuNC0zNS41LTI2LjQtMTEuMyAwLTIxLjkgNS4xLTI4LjkgMTMuOUwxMzMuMyA0MDljLTguMyAxMC4zLTYuNiAyNS41IDMuNyAzMy43czI1LjUgNi42IDMzLjctMy44bDQ3LjEtNTguOCAxNS4yIDUwLjdjMyAxMC4yIDEyLjQgMTcuMSAyMyAxNy4xbDMxLjUgMGMtLjkgMy4xLTEuNyA2LjMtMi4zIDkuNWwtMTAuOSA1NC41LTE0Ni4yIDBjLTM1LjMgMC02NC0yOC43LTY0LTY0bDAtMzg0em0yMDgtNS41bDAgOTMuNWMwIDEzLjMgMTAuNyAyNCAyNCAyNGw5My41IDAtMTE3LjUtMTE3LjV6bTYwLjIgNDA4LjRjMi41LTEyLjQgOC42LTIzLjggMTcuNS0zMi43bDExOC45LTExOC45IDgwIDgwLTExOC45IDExOC45Yy04LjkgOC45LTIwLjMgMTUtMzIuNyAxNy41bC01OS42IDExLjljLS45IC4yLTEuOSAuMy0yLjkgLjMtOCAwLTE0LjYtNi41LTE0LjYtMTQuNiAwLTEgLjEtMS45IC4zLTIuOWwxMS45LTU5LjZ6bTI2Ny44LTEyM2wtMjguOCAyOC44LTgwLTgwIDI4LjgtMjguOGMyMi4xLTIyLjEgNTcuOS0yMi4xIDgwIDBzMjIuMSA1Ny45IDAgODB6Il19LEo3cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJidWlsZGluZy13aGVhdCIsaWNvbjpbNjQwLDUxMixbXSwiZTRkYiIsIk05NiAwQzYwLjcgMCAzMiAyOC43IDMyIDY0bDAgMzg0YzAgMzUuMyAyOC43IDY0IDY0IDY0bDI0OS4zIDBjLTYtMTQuOC05LjMtMzEtOS4zLTQ4IDAtMTcuNyA3LjItMzMuNyAxOC44LTQ1LjMtMTEuOS0xOS40LTE4LjgtNDIuMy0xOC44LTY2LjcgMC0xNy43IDcuMi0zMy43IDE4LjgtNDUuMy0xMS45LTE5LjQtMTguOC00Mi4zLTE4LjgtNjYuNyAwLTI1LjIgMTQuNS00Ni45IDM1LjYtNTcuNC0yLjQtNy4xLTMuNi0xNC43LTMuNi0yMi42bDAtMzJDMzY4IDk2LjcgMzg4IDcwLjEgNDE1LjkgNjAuMSA0MTMuOSAyNi42IDM4NiAwIDM1MiAwTDk2IDB6TTIwOCAzNTJsMzIgMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDgwLTk2IDAgMC04MGMwLTE3LjcgMTQuMy0zMiAzMi0zMnpNMTI4IDExMmMwLTguOCA3LjItMTYgMTYtMTZsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyek0yNzIgOTZsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyYzAtOC44IDcuMi0xNiAxNi0xNnpNMTI4IDI0MGMwLTguOCA3LjItMTYgMTYtMTZsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyem0xNDQtMTZsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyYzAtOC44IDcuMi0xNiAxNi0xNnptMzUyIDBsLTE2IDBjLTQ0LjIgMC04MCAzNS44LTgwIDgwIDAgOC44IDcuMiAxNiAxNiAxNmwxNiAwYzQ0LjIgMCA4MC0zNS44IDgwLTgwIDAtOC44LTcuMi0xNi0xNi0xNnptMTYgMTI4YzAtOC44LTcuMi0xNi0xNi0xNmwtMTYgMGMtNDQuMiAwLTgwIDM1LjgtODAgODAgMCA4LjggNy4yIDE2IDE2IDE2bDE2IDBjNDQuMiAwIDgwLTM1LjggODAtODB6bTAgMTEyYzAtOC44LTcuMi0xNi0xNi0xNmwtMTYgMGMtNDQuMiAwLTgwIDM1LjgtODAgODAgMCA4LjggNy4yIDE2IDE2IDE2bDE2IDBjNDQuMiAwIDgwLTM1LjggODAtODB6TTQ5NiA1MjhjMC00NC4yLTM1LjgtODAtODAtODBsLTE2IDBjLTguOCAwLTE2IDcuMi0xNiAxNiAwIDQ0LjIgMzUuOCA4MCA4MCA4MGwxNiAwYzguOCAwIDE2LTcuMiAxNi0xNnptLTE2LTk2YzguOCAwIDE2LTcuMiAxNi0xNiAwLTQ0LjItMzUuOC04MC04MC04MGwtMTYgMGMtOC44IDAtMTYgNy4yLTE2IDE2IDAgNDQuMiAzNS44IDgwIDgwIDgwbDE2IDB6bTE2LTEyOGMwLTQ0LjItMzUuOC04MC04MC04MGwtMTYgMGMtOC44IDAtMTYgNy4yLTE2IDE2IDAgNDQuMiAzNS44IDgwIDgwIDgwbDE2IDBjOC44IDAgMTYtNy4yIDE2LTE2ek01MTIgNjRjLTEzLjMgMC0yNCAxMC43LTI0IDI0bDAgMTA0YzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC0xMDRjMC0xMy4zLTEwLjctMjQtMjQtMjR6bTk2IDY0YzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0bDAgMzJjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTMyek00NDAgMTA0Yy0xMy4zIDAtMjQgMTAuNy0yNCAyNGwwIDMyYzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC0zMmMwLTEzLjMtMTAuNy0yNC0yNC0yNHoiXX0sZTlyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBsdWctY2lyY2xlLW1pbnVzIixpY29uOls2NDAsNTEyLFtdLCJlNTVlIiwiTTE5Mi0zMmMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDk2IDEyOCAwIDAtOTZjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDk2IDY0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsMCA0OC43Yy05OC42IDguMS0xNzYgOTAuNy0xNzYgMTkxLjMgMCAyNy4zIDUuNyA1My4zIDE2IDc2LjlsMCAzLjFjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC02Ni43QzE2NS4yIDM5OC4xIDk2IDMxOS4xIDk2IDIyNGwwLTY0Yy0xNy43IDAtMzItMTQuMy0zMi0zMlM3OC4zIDk2IDk2IDk2bDY0IDAgMC05NmMwLTE3LjcgMTQuMy0zMiAzMi0zMnpNMzUyIDQwMGExNDQgMTQ0IDAgMSAxIDI4OCAwIDE0NCAxNDQgMCAxIDEgLTI4OCAwem0yMjQgMGMwLTguOC03LjItMTYtMTYtMTZsLTEyOCAwYy04LjggMC0xNiA3LjItMTYgMTZzNy4yIDE2IDE2IDE2bDEyOCAwYzguOCAwIDE2LTcuMiAxNi0xNnoiXX0sYjJlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZ1dGJvbCIsaWNvbjpbNTEyLDUxMixbOTkxNywiZnV0Ym9sLWJhbGwiLCJzb2NjZXItYmFsbCJdLCJmMWUzIiwiTTQxNy4zIDM2MC4xbC03MS42LTQuOGMtNS4yLS4zLTEwLjMgMS4xLTE0LjUgNC4ycy03LjIgNy40LTguNCAxMi41bC0xNy42IDY5LjZDMjg5LjUgNDQ1LjggMjczIDQ0OCAyNTYgNDQ4cy0zMy41LTIuMi00OS4yLTYuNEwxODkuMiAzNzJjLTEuMy01LTQuMy05LjQtOC40LTEyLjVzLTkuMy00LjUtMTQuNS00LjJsLTcxLjYgNC44Yy0xNy42LTI3LjItMjguNS01OS4yLTMwLjQtOTMuNkwxMjUgMjI4LjNjNC40LTIuOCA3LjYtNyA5LjItMTEuOXMxLjQtMTAuMi0uNS0xNWwtMjYuNy02Ni42QzEyOCAxMDkuMiAxNTUuMyA4OSAxODYuNyA3Ni45bDU1LjIgNDZjNCAzLjMgOSA1LjEgMTQuMSA1LjFzMTAuMi0xLjggMTQuMS01LjFsNTUuMi00NmMzMS4zIDEyLjEgNTguNyAzMi4zIDc5LjYgNTcuOWwtMjYuNyA2Ni42Yy0xLjkgNC44LTIuMSAxMC4xLS41IDE1czQuOSA5LjEgOS4yIDExLjlsNjAuNyAzOC4yYy0xLjkgMzQuNC0xMi44IDY2LjQtMzAuNCA5My42ek0yNTYgNTEyYTI1NiAyNTYgMCAxIDAgMC01MTIgMjU2IDI1NiAwIDEgMCAwIDUxMnptMTQuMS0zMjUuN2MtOC40LTYuMS0xOS44LTYuMS0yOC4yIDBMMTk0IDIyMWMtOC40IDYuMS0xMS45IDE2LjktOC43IDI2LjhsMTguMyA1Ni4zYzMuMiA5LjkgMTIuNCAxNi42IDIyLjggMTYuNmw1OS4yIDBjMTAuNCAwIDE5LjYtNi43IDIyLjgtMTYuNmwxOC4zLTU2LjNjMy4yLTkuOS0uMy0yMC43LTguNy0yNi44bC00Ny45LTM0Ljh6Il19LHQ5cj1iMmUscjlyPWIyZSx2VGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2lyY2xlLXBsdXMiLGljb246WzUxMiw1MTIsWyJwbHVzLWNpcmNsZSJdLCJmMDU1IiwiTTI1NiA1MTJhMjU2IDI1NiAwIDEgMCAwLTUxMiAyNTYgMjU2IDAgMSAwIDAgNTEyek0yMzIgMzQ0bDAtNjQtNjQgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNGw2NCAwIDAtNjRjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNGwwIDY0IDY0IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTY0IDAgMCA2NGMwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNHoiXX0sYTlyPXZUZSxpOXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYnJhemlsaWFuLXJlYWwtc2lnbiIsaWNvbjpbNTEyLDUxMixbXSwiZTQ2YyIsIk00MDAgMTZjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCAxNiAxNiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC00OC45IDBjLTI2IDAtNDcuMSAyMS4xLTQ3LjEgNDcuMSAwIDIyLjUgMTUuOSA0MS44IDM3LjkgNDYuMmwzMi44IDYuNmM1MS45IDEwLjQgODkuMyA1NiA4OS4zIDEwOSAwIDUwLjYtMzMuOCA5My4zLTgwIDEwNi43bDAgMjAuNGMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTE2LTMyIDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsNjQuOSAwYzI2IDAgNDcuMS0yMS4xIDQ3LjEtNDcuMSAwLTIyLjUtMTUuOS00MS44LTM3LjktNDYuMmwtMzIuOC02LjZjLTUxLjktMTAuNC04OS4zLTU2LTg5LjMtMTA5IDAtNTAuNiAzMy44LTkzLjIgODAtMTA2LjdMMzY4IDQ4YzAtMTcuNyAxNC4zLTMyIDMyLTMyek0wIDY0QzAgNDYuMyAxNC4zIDMyIDMyIDMybDgwIDBjNzkuNSAwIDE0NCA2NC41IDE0NCAxNDQgMCA1NC4zLTMwIDEwMS41LTc0LjQgMTI2LjFsNDEgMTM2LjdjNS4xIDE2LjktNC41IDM0LjgtMjEuNSAzOS44cy0zNC44LTQuNS0zOS44LTIxLjVMMTIwLjEgMzE5LjhjLTIuNyAuMS01LjQgLjItOC4xIC4ybC00OCAwIDAgMTI4YzAgMTcuNy0xNC4zIDMyLTMyIDMyUzAgNDY1LjcgMCA0NDhMMCA2NHpNNjQgMjU2bDQ4IDBjNDQuMiAwIDgwLTM1LjggODAtODBzLTM1LjgtODAtODAtODBsLTQ4IDAgMCAxNjB6Il19LG85cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzdGFyLWFuZC1jcmVzY2VudCIsaWNvbjpbNTEyLDUxMixbOTc3MF0sImY2OTkiLCJNMCAyNTZjMC0xNDEuNCAxMTQuNi0yNTYgMjU2LTI1NiAzMyAwIDY0LjYgNi4zIDkzLjYgMTcuNyA3LjQgMi45IDExLjUgMTAuNyA5LjggMTguNHMtOC44IDEzLTE2LjcgMTIuNGMtNC44LS4zLTkuNy0uNS0xNC42LS41LTExNC45IDAtMjA4IDkzLjEtMjA4IDIwOHM5My4xIDIwOCAyMDggMjA4YzQuOSAwIDkuOC0uMiAxNC42LS41IDcuOS0uNSAxNSA0LjcgMTYuNyAxMi40cy0yLjQgMTUuNS05LjggMTguNEMzMjAuNiA1MDUuNyAyODkgNTEyIDI1NiA1MTIgMTE0LjYgNTEyIDAgMzk3LjQgMCAyNTZ6TTM3NS40IDEzNy40YzMuNS03LjEgMTMuNy03LjEgMTcuMiAwbDMxLjUgNjMuOGMxLjQgMi44IDQuMSA0LjggNy4yIDUuM2w3MC40IDEwLjJjNy45IDEuMSAxMSAxMC44IDUuMyAxNi40bC01MC45IDQ5LjZjLTIuMyAyLjItMy4zIDUuNC0yLjggOC41bDEyIDcwLjFjMS4zIDcuOC02LjkgMTMuOC0xMy45IDEwLjFsLTYzLTMzLjFjLTIuOC0xLjUtNi4xLTEuNS04LjkgMGwtNjMgMzMuMWMtNyAzLjctMTUuMy0yLjMtMTMuOS0xMC4xbDEyLTcwLjFjLjUtMy4xLS41LTYuMy0yLjgtOC41TDI2MSAyMzMuMWMtNS43LTUuNi0yLjYtMTUuMiA1LjMtMTYuNGw3MC40LTEwLjJjMy4xLS41IDUuOC0yLjQgNy4yLTUuM2wzMS41LTYzLjh6Il19LHlUZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmYWNlLXN1cnByaXNlIixpY29uOls1MTIsNTEyLFsxMjg1NTgsInN1cnByaXNlIl0sImY1YzIiLCJNMjU2IDUxMmEyNTYgMjU2IDAgMSAwIDAtNTEyIDI1NiAyNTYgMCAxIDAgMCA1MTJ6TTE3NiAxNzZhMzIgMzIgMCAxIDEgMCA2NCAzMiAzMiAwIDEgMSAwLTY0em0xMjggMzJhMzIgMzIgMCAxIDEgNjQgMCAzMiAzMiAwIDEgMSAtNjQgMHptLTQ4IDgwYTY0IDY0IDAgMSAxIDAgMTI4IDY0IDY0IDAgMSAxIDAtMTI4eiJdfSxuOXI9eVRlLHM5cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJob3NwaXRhbC11c2VyIixpY29uOls2NDAsNTEyLFtdLCJmODBkIiwiTTY0IDY0QzY0IDI4LjcgOTIuNyAwIDEyOCAwTDM4NCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMTIxLjNjLTQ2LjkgMTktODAgNjUtODAgMTE4LjcgMCAyNy43IDguOCA1My40IDIzLjggNzQuNC01MS41IDIxLTg3LjggNzEuNi04Ny44IDEzMC43IDAgMSAwIDEuOSAwIDIuOWwtMTc2IDBjLTM1LjMgMC02NC0yOC43LTY0LTY0TDY0IDY0ek0yMDggNDAwbDAgNjQgNTMuNCAwYzcuMi0yOS40IDIxLjMtNTYuMSA0MC40LTc4LjMtNi4xLTE5LjUtMjQuMy0zMy43LTQ1LjgtMzMuNy0yNi41IDAtNDggMjEuNS00OCA0OHpNMjQ4IDg4Yy04LjggMC0xNiA3LjItMTYgMTZsMCAzMi0zMiAwYy04LjggMC0xNiA3LjItMTYgMTZsMCAxNmMwIDguOCA3LjIgMTYgMTYgMTZsMzIgMCAwIDMyYzAgOC44IDcuMiAxNiAxNiAxNmwxNiAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyIDMyIDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMTZjMC04LjgtNy4yLTE2LTE2LTE2bC0zMiAwIDAtMzJjMC04LjgtNy4yLTE2LTE2LTE2bC0xNiAwek00MTYgMzA0YTgwIDgwIDAgMSAxIDE2MCAwIDgwIDgwIDAgMSAxIC0xNjAgMHpNMzUyIDUxMmMwLTUzIDQzLTk2IDk2LTk2bDk2IDBjNTMgMCA5NiA0MyA5NiA5NiAwIDE3LjctMTQuMyAzMi0zMiAzMmwtMjI0IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyeiJdfSxsOXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYXJyb3ctZG93bi11cC1sb2NrIixpY29uOls1NzYsNTEyLFtdLCJlNGIwIiwiTTI2Mi42IDQyMi42bC04MCA4MGMtMTIuNSAxMi41LTMyLjggMTIuNS00NS4zIDBsLTgwLTgwYy0xMi41LTEyLjUtMTIuNS0zMi44IDAtNDUuM3MzMi44LTEyLjUgNDUuMyAwbDI1LjQgMjUuNCAwLTExNC43LTY0IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsMjU2IDAgMC0xMTQuNy0yNS40IDI1LjRjLTEyLjUgMTIuNS0zMi44IDEyLjUtNDUuMyAwcy0xMi41LTMyLjggMC00NS4zbDgwLTgwYzEyLjUtMTIuNSAzMi44LTEyLjUgNDUuMyAwbDgwIDgwYzEyLjUgMTIuNSAxMi41IDMyLjggMCA0NS4zcy0zMi44IDEyLjUtNDUuMyAwbC0yNS40LTI1LjQgMCA5NC44Yy0yNS4zIDIwLjMtNDIuOCA1MC4xLTQ3IDgzLjlsLTE0NSAwIDAgMTE0LjcgMjUuNC0yNS40YzEyLjUtMTIuNSAzMi44LTEyLjUgNDUuMyAwczEyLjUgMzIuOCAwIDQ1LjN6TTE5MiAzMmwwIDE0NC02NCAwIDAtMTQ0YzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJ6TTQ5NiAzMDQuMWMwLTE3LjctMTQuMy0zMi0zMi0zMnMtMzIgMTQuMy0zMiAzMmwwIDQ3LjkgNjQgMCAwLTQ3Ljl6TTM1MiA0MDBjMC0yMC45IDEzLjQtMzguNyAzMi00NS4zbDAtNTAuNmMwLTQ0LjIgMzUuOC04MCA4MC04MHM4MCAzNS44IDgwIDgwbDAgNTAuNmMxOC42IDYuNiAzMiAyNC40IDMyIDQ1LjNsMCA5NmMwIDI2LjUtMjEuNSA0OC00OCA0OGwtMTI4IDBjLTI2LjUgMC00OC0yMS41LTQ4LTQ4bDAtOTZ6Il19LHdUZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmb2xkZXIiLGljb246WzUxMiw1MTIsWzEyODE5MywxMjg0NDcsNjE3MTYsImZvbGRlci1ibGFuayJdLCJmMDdiIiwiTTY0IDQ0OGwzODQgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTI0MGMwLTM1LjMtMjguNy02NC02NC02NEwyOTguNyA4MGMtNi45IDAtMTMuNy0yLjItMTkuMi02LjRMMjQxLjEgNDQuOEMyMzAgMzYuNSAyMTYuNSAzMiAyMDIuNyAzMkw2NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgMzg0YzAgMzUuMyAyOC43IDY0IDY0IDY0eiJdfSxjOXI9d1RlLGQ5cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJob2xseS1iZXJyeSIsaWNvbjpbNTEyLDUxMixbXSwiZjdhYSIsIk0yNTYuMiA5NmE0OCA0OCAwIDEgMCAwLTk2IDQ4IDQ4IDAgMSAwIDAgOTZ6bS04MCA5NmE0OCA0OCAwIDEgMCAwLTk2IDQ4IDQ4IDAgMSAwIDAgOTZ6TTI3NyAzODMuOGMxIC4xIDIuMSAuMiAzLjIgLjIgMzkuOCAwIDcyIDMyLjIgNzIgNzJsMCAyMi43YzAgMTYuNCAxNiAyNy45IDMxLjYgMjIuOGwxMi44LTQuM2MxOC02IDM3LjMtNi41IDU1LjYtMS41bDE5LjQgNS4zYzE3LjkgNC45IDM0LjQtMTEuNiAyOS41LTI5LjVMNDk1LjkgNDUyYy01LTE4LjMtNC40LTM3LjYgMS41LTU1LjZsNC4zLTEyLjhjNS4yLTE1LjUtNi40LTMxLjYtMjIuOC0zMS42LTM0LjYgMC02Mi43LTI4LjEtNjIuNy02Mi43bDAtMzJjMC0xNi40LTE2LTI3LjktMzEuNi0yMi44bC0xMi44IDQuM2MtMTggNi0zNy4zIDYuNS01NS42IDEuNWwtMjkuNi04LjFjLTIuOS0uOC01LjktMS04LjctLjcgNC4yIDkuNyA1LjggMjAuOCAzLjcgMzIuM2wtNi4zIDM0LjhjLTEuNSA4LjQtMS40IDE3IC41IDI1LjNsNS4zIDIzLjljMi44IDEyLjcgMS4xIDI1LjItNCAzNS45ek0xMjcuOCAyMzQuNWMtMTUuNS01LjItMzEuNiA2LjQtMzEuNiAyMi44bDAgMzJjMCAzNC42LTI4LjEgNjIuNy02Mi43IDYyLjctMTYuNCAwLTI3LjkgMTYtMjIuOCAzMS42TDE1IDM5Ni40YzYgMTggNi41IDM3LjMgMS41IDU1LjZsLTUuMyAxOS40QzYuNCA0ODkuNCAyMi44IDUwNS44IDQwLjcgNTAxbDE5LjQtNS4zYzE4LjMtNSAzNy42LTQuNSA1NS42IDEuNWwxMi44IDQuM2MxNS41IDUuMiAzMS42LTYuNCAzMS42LTIyLjhsMC0zMmMwLTM0LjYgMjguMS02Mi43IDYyLjctNjIuNyAxNi40IDAgMjcuOS0xNiAyMi44LTMxLjZsLTQuMy0xMi44Yy02LTE4LTYuNS0zNy4zLTEuNS01NS42bDUuMy0xOS40YzQuOS0xNy45LTExLjYtMzQuNC0yOS41LTI5LjVsLTE5LjQgNS4zYy0xOC4zIDUtMzcuNiA0LjQtNTUuNi0xLjVsLTEyLjgtNC4zek0zODQuMiAxNDRhNDggNDggMCAxIDAgLTk2IDAgNDggNDggMCAxIDAgOTYgMHoiXX0sdTlyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InZlbnVzLWRvdWJsZSIsaWNvbjpbNjQwLDUxMixbOTg5MF0sImYyMjYiLCJNMTkyIDI4OGExMTIgMTEyIDAgMSAwIDAtMjI0IDExMiAxMTIgMCAxIDAgMCAyMjR6TTM2OCAxNzZjMCA4Ni4zLTYyLjEgMTU4LjEtMTQ0LjEgMTczLjEgLjEgMSAuMSAxLjkgLjEgMi45bDAgNjQgMzIgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtMzIgMCAwIDMyYzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMzItMzIgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMmwzMiAwIDAtNjRjMC0xIDAtMS45IC4xLTIuOS04Mi0xNS0xNDQuMS04Ni44LTE0NC4xLTE3My4xIDAtOTcuMiA3OC44LTE3NiAxNzYtMTc2UzM2OCA3OC44IDM2OCAxNzZ6TTM1Ny41IDMyN2MxNC40LTE1LjggMjYuNi0zMy43IDM2LjEtNTMuMSAxNi4xIDkgMzQuNyAxNC4xIDU0LjUgMTQuMSA2MS45IDAgMTEyLTUwLjEgMTEyLTExMlM1MDkuOSA2NCA0NDggNjRjLTE5LjggMC0zOC4zIDUuMS01NC41IDE0LjEtOS41LTE5LjQtMjEuNi0zNy4zLTM2LjEtNTMuMSAyNi40LTE1LjkgNTcuNC0yNSA5MC41LTI1IDk3LjIgMCAxNzYgNzguOCAxNzYgMTc2IDAgODYuMy02Mi4xIDE1OC4xLTE0NC4xIDE3My4xIC4xIC45IC4xIDEuOSAuMSAyLjlsMCA2NCAzMiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC0zMiAwIDAgMzJjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC0zMi0zMiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDMyIDAgMC02NGMwLTEgMC0xLjkgLjEtMi45LTIxLjEtMy45LTQwLjktMTEuNS01OC42LTIyLjJ6Il19LGY5cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjbGlwYm9hcmQtcXVlc3Rpb24iLGljb246WzM4NCw1MTIsW10sImU0ZTMiLCJNMzExLjQgMzJsOC42IDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAzNTJjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNTEyYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDk2QzAgNjAuNyAyOC43IDMyIDY0IDMybDguNiAwQzgzLjYgMTIuOSAxMDQuMyAwIDEyOCAwTDI1NiAwYzIzLjcgMCA0NC40IDEyLjkgNTUuNCAzMnpNMjQ4IDExMmMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNEwxMzYgNjRjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsMTEyIDB6TTE5MiAyNDhjMTYuMSAwIDI5LjIgMTMuMSAyOS4yIDI5LjIgMCA4LjctMy4xIDEzLjktNi45IDE3LjctNC41IDQuNC0xMC43IDcuNS0xNi44IDkuNS0xNC45IDUtMjkuNSAxOS4zLTI5LjUgMzkuNSAwIDEzLjMgMTAuNyAyNCAyNCAyNCAxMS41IDAgMjEuMi04LjEgMjMuNS0xOSAxOS4yLTcuMSA1My43LTI2LjMgNTMuNy03MS44IDAtNDIuNi0zNC42LTc3LjItNzcuMi03Ny4ycy03Ny4yIDM0LjYtNzcuMiA3Ny4yYzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRjMC0xNi4xIDEzLjEtMjkuMiAyOS4yLTI5LjJ6bTI4IDE2OGMwLTE1LjUtMTIuNS0yOC0yOC0yOHMtMjggMTIuNS0yOCAyOCAxMi41IDI4IDI4IDI4IDI4LTEyLjUgMjgtMjh6Il19LHA5cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJob3Rkb2ciLGljb246WzUxMiw1MTIsWzEyNzc4OV0sImY4MGYiLCJNMjg4IDBjLTIwLjUgMC00MC4xIDguMS01NC42IDIyLjZMMjIuNiAyMzMuNEM4LjEgMjQ3LjkgMCAyNjcuNSAwIDI4OCAwIDMwMC4yIDIuOSAzMTIuMSA4LjIgMzIyLjdMMzIyLjcgOC4yQzMxMi4xIDIuOSAzMDAuMiAwIDI4OCAwek0yMjQgNTEyYzIwLjUgMCA0MC4xLTguMSA1NC42LTIyLjZMNDg5LjQgMjc4LjZjMTQuNS0xNC41IDIyLjYtMzQuMSAyMi42LTU0LjYgMC0xMi4yLTIuOS0yNC4xLTguMi0zNC43TDE4OS4zIDUwMy44YzEwLjcgNS40IDIyLjYgOC4yIDM0LjcgOC4yek00NTYuNiAxNjguNmMzMS4yLTMxLjIgMzEuMi04MS45IDAtMTEzLjFzLTgxLjktMzEuMi0xMTMuMSAwbC0yODggMjg4Yy0zMS4yIDMxLjItMzEuMiA4MS45IDAgMTEzLjFzODEuOSAzMS4yIDExMy4xIDBsMjg4LTI4OHoiXX0saDlyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFycm93LXVwLWZyb20tYnJhY2tldCIsaWNvbjpbNDQ4LDUxMixbXSwiZTA5YSIsIk0yNDYuNiA5LjRjLTEyLjUtMTIuNS0zMi44LTEyLjUtNDUuMyAwbC0xMjggMTI4Yy0xMi41IDEyLjUtMTIuNSAzMi44IDAgNDUuM3MzMi44IDEyLjUgNDUuMyAwTDE5MiAxMDkuMyAxOTIgMzIwYzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0yMTAuNyA3My40IDczLjRjMTIuNSAxMi41IDMyLjggMTIuNSA0NS4zIDBzMTIuNS0zMi44IDAtNDUuM2wtMTI4LTEyOHpNNjQgMzUyYzAtMTcuNy0xNC4zLTMyLTMyLTMyUzAgMzM0LjMgMCAzNTJsMCA2NGMwIDUzIDQzIDk2IDk2IDk2bDI1NiAwYzUzIDAgOTYtNDMgOTYtOTZsMC02NGMwLTE3LjctMTQuMy0zMi0zMi0zMnMtMzIgMTQuMy0zMiAzMmwwIDY0YzAgMTcuNy0xNC4zIDMyLTMyIDMyTDk2IDQ0OGMtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC02NHoiXX0sbTlyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im1pY3Jvc2NvcGUiLGljb246WzUxMiw1MTIsWzEyODMwMF0sImY2MTAiLCJNMTc2IDBjLTI2LjUgMC00OCAyMS41LTQ4IDQ4bDAgMjA4YzAgMjYuNSAyMS41IDQ4IDQ4IDQ4bDY0IDBjMjYuNSAwIDQ4LTIxLjUgNDgtNDhsMC02NCAzMiAwYzcwLjcgMCAxMjggNTcuMyAxMjggMTI4UzM5MC43IDQ0OCAzMjAgNDQ4TDMyIDQ0OGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmw0NDggMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtMTYuOSAwYzMwLjQtMzQgNDguOS03OC44IDQ4LjktMTI4IDAtMTA2LTg2LTE5Mi0xOTItMTkybC0zMiAwIDAtODBjMC0yNi41LTIxLjUtNDgtNDgtNDhMMTc2IDB6TTEyMCAzNTJjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsMTc2IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTE3NiAweiJdfSxnOXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2xvdWQiLGljb246WzU3Niw1MTIsWzk3MjldLCJmMGMyIiwiTTAgMzM2YzAgNzkuNSA2NC41IDE0NCAxNDQgMTQ0bDMwNCAwYzcwLjcgMCAxMjgtNTcuMyAxMjgtMTI4IDAtNTEuNi0zMC41LTk2LjEtNzQuNS0xMTYuMyA2LjctMTMuMSAxMC41LTI4IDEwLjUtNDMuNyAwLTUzLTQzLTk2LTk2LTk2LTE3LjcgMC0zNC4yIDQuOC00OC40IDEzLjEtMjQuMS00NS44LTcyLjItNzcuMS0xMjcuNi03Ny4xLTc5LjUgMC0xNDQgNjQuNS0xNDQgMTQ0IDAgOCAuNyAxNS45IDEuOSAyMy41LTU2LjkgMTkuMi05Ny45IDczLjEtOTcuOSAxMzYuNXoiXX0seDlyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJhc2ViYWxsLWJhdC1iYWxsIixpY29uOls1NzYsNTEyLFtdLCJmNDMyIiwiTTQ2NC4xIDU0NGE4MCA4MCAwIDEgMSAwLTE2MCA4MCA4MCAwIDEgMSAwIDE2MHptOC40LTU3NmMxNS4xIDAgMjkuNyA1LjggNDAuNyAxNi4ybDQ3LjIgNDQuOGMxMi42IDEyIDE5LjEgMjkgMTcuNSA0Ni4zLTEuMiAxMy4zLTcgMjUuOC0xNi41IDM1LjJMMzYzLjEgMzA5Yy03LjMgNy4zLTE1LjcgMTMuNC0yNSAxOEwyMDYgMzkzYy05LjIgNC42LTE3LjcgMTAuNy0yNSAxOGwtOTIgOTIgMS43IDEuOGM3LjcgOS40IDcuMSAyMy4zLTEuNyAzMi4xcy0yMi43IDkuMy0zMi4xIDEuN2wtMS44LTEuNy00OC00OC0xLjctMS44Yy03LjctOS40LTcuMS0yMy4zIDEuNy0zMi4xczIyLjctOS4zIDMyLjEtMS43bDEuOCAxLjcgOTItOTJjNy4zLTcuMyAxMy40LTE1LjcgMTgtMjVsNjYuMS0xMzIuMWM0LjYtOS4yIDEwLjctMTcuNyAxOC0yNUw0MzAuOC0xNC43QzQ0MS45LTI1LjggNDU2LjktMzIgNDcyLjUtMzJ6Il19LE1UZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjYXItcmVhciIsaWNvbjpbNTEyLDUxMixbImNhci1hbHQiXSwiZjVkZSIsIk0xNjUuNCA5NmwxODEuMiAwYzEzLjYgMCAyNS43IDguNiAzMC4yIDIxLjRsMjYuMSA3NC42LTI5My44IDAgMjYuMS03NC42YzQuNS0xMi44IDE2LjYtMjEuNCAzMC4yLTIxLjR6bS05MC42IC4zTDM5LjYgMTk2LjhDMTYuNCAyMDYuNCAwIDIyOS4zIDAgMjU2bDAgOTZjMCAyMy43IDEyLjkgNDQuNCAzMiA1NS40TDMyIDQ0OGMwIDE3LjcgMTQuMyAzMiAzMiAzMmwzMiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtMzIgMjU2IDAgMCAzMmMwIDE3LjcgMTQuMyAzMiAzMiAzMmwzMiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtNDAuNmMxOS4xLTExLjEgMzItMzEuNyAzMi01NS40bDAtOTZjMC0yNi43LTE2LjQtNDkuNi0zOS42LTU5LjJMNDM3LjIgOTYuM0M0MjMuNyA1Ny44IDM4Ny40IDMyIDM0Ni42IDMyTDE2NS40IDMyYy00MC44IDAtNzcuMSAyNS44LTkwLjYgNjQuM3pNMjA4IDI4OGw5NiAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDMyYzAgOC44LTcuMiAxNi0xNiAxNmwtOTYgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMzJjMC04LjggNy4yLTE2IDE2LTE2ek00OCAyODBjMC0xMy4zIDEwLjctMjQgMjQtMjRsMzIgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtMzIgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjR6bTM2MC0yNGwzMiAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC0zMiAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0eiJdfSxiOXI9TVRlLGtUZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0aHVtYnRhY2stc2xhc2giLGljb246WzU3Niw1MTIsWyJ0aHVtYi10YWNrLXNsYXNoIl0sImU2OGYiLCJNNDEtMjQuOWMtOS40LTkuNC0yNC42LTkuNC0zMy45IDBTLTIuMy0uMyA3IDkuMWw1MjggNTI4YzkuNCA5LjQgMjQuNiA5LjQgMzMuOSAwczkuNC0yNC42IDAtMzMuOUw0MTcuOCAzNTIgNDQ4IDM1MmMxMCAwIDE5LjUtNC43IDI1LjUtMTIuN3M4LTE4LjQgNS4yLTI4LjFMNDc1IDI5Ny44Yy0xMi40LTQzLjMtNDEtNzguNS03OC4yLTk5LjdMMzg2LjUgNjQgNDE2IDY0YzE3LjcgMCAzMi0xNC4zIDMyLTMyUzQzMy43IDAgNDE2IDBMMTYwIDBjLTcuNCAwLTE0LjEgMi41LTE5LjUgNi42TDE5MC4xIDU2LjMgMTg1LjMgMTE5LjQgNDEtMjQuOXpNMjgyLjIgMzUyTDE0OS43IDIxOS42Yy0yMi43IDIwLjUtMzkuOCA0Ny40LTQ4LjcgNzguM2wtMy44IDEzLjRjLTIuOCA5LjctLjggMjAgNS4yIDI4LjFTMTE4IDM1MiAxMjggMzUybDE1NC4yIDB6TTI1NiA1MTJjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTExMi02NCAwIDAgMTEyeiJdfSx2OXI9a1RlLHk5cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwbHVzLW1pbnVzIixpY29uOlszODQsNTEyLFtdLCJlNDNjIiwiTTIyNCAzMmMwLTE3LjctMTQuMy0zMi0zMi0zMnMtMzIgMTQuMy0zMiAzMmwwIDEyOC0xMjggMGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmwxMjggMCAwIDEyOGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMTI4IDEyOCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC0xMjggMCAwLTEyOHpNMCA0ODBjMCAxNy43IDE0LjMgMzIgMzIgMzJsMzIwIDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJMMzIgNDQ4Yy0xNy43IDAtMzIgMTQuMy0zMiAzMnoiXX0sdzlyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhvdXNlLWNpcmNsZS1jaGVjayIsaWNvbjpbNjQwLDUxMixbXSwiZTUwOSIsIk00OTYgNTQ0YTE0NCAxNDQgMCAxIDEgMC0yODggMTQ0IDE0NCAwIDEgMSAwIDI4OHpNMjY4LjYgNi41YzEyLjItOS4zIDI5LjctOC43IDQxLjIgMmwyMTcuNiAyMDJjLTEwLjItMS43LTIwLjctMi42LTMxLjMtMi42LTc4LjYgMC0xNDYuMSA0Ny4yLTE3NS44IDExNC44LTUuMS0xLjgtMTAuNS0yLjgtMTYuMi0yLjhsLTMyIDBjLTI2LjUgMC00OCAyMS41LTQ4IDQ4bDAgOTYgOTEgMGM2LjEgMTcuMyAxNC42IDMzLjQgMjUuMSA0OEwxNDQgNTEyYy0zNS4zIDAtNjQtMjguNy02NC02NGwwLTE3Ni0xNiAwYy0xMy4yIDAtMjUtOC4xLTI5LjgtMjAuM3MtMS42LTI2LjIgOC0zNS4xbDIyNC0yMDggMi40LTJ6TTU1My40IDMzOS4xYy03LjEtNS4yLTE3LjEtMy42LTIyLjMgMy41bC01MyA3Mi44LTI2LjctMjYuOGMtNi4yLTYuMi0xNi40LTYuMi0yMi42IDAtNi4yIDYuMi02LjIgMTYuNCAwIDIyLjZsNDAgNDBjMy4zIDMuMyA3LjkgNSAxMi42IDQuN3M4LjktMi44IDExLjctNi42bDY0LTg4YzUuMi03LjEgMy42LTE3LjEtMy41LTIyLjN6Il19LE05cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjYWxlbmRhci1kYXkiLGljb246WzQ0OCw1MTIsW10sImY3ODMiLCJNMTI4IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCAzMiAxMjggMCAwLTMyYzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJsMCAzMiAzMiAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMjg4YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDQ4MGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCAxMjhDMCA5Mi43IDI4LjcgNjQgNjQgNjRsMzIgMCAwLTMyYzAtMTcuNyAxNC4zLTMyIDMyLTMyem0wIDI1NmMtMTcuNyAwLTMyIDE0LjMtMzIgMzJsMCA2NGMwIDE3LjcgMTQuMyAzMiAzMiAzMmw2NCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtNjRjMC0xNy43LTE0LjMtMzItMzItMzJsLTY0IDB6Il19LGs5cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJsaWJyYSIsaWNvbjpbNTEyLDUxMixbXSwiZTg0YiIsIk00ODAgMzg0YzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMyTDMyIDQ0OGMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMmw0NDggMHpNMjU2IDMyYzk3LjIgMCAxNzYgNzguOCAxNzYgMTc2IDAgMTYuNi0yLjQgMzIuNy02LjcgNDhsNTQuNyAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC0xMDQuMiAwYy0xMS44IDAtMjIuNy02LjUtMjguMi0xNi45cy00LjktMjMuMSAxLjYtMzIuOWMxMS45LTE3LjggMTguOC0zOS4xIDE4LjgtNjIuMiAwLTYxLjktNTAuMS0xMTItMTEyLTExMlMxNDQgMTQ2LjEgMTQ0IDIwOGMwIDIzLjEgNi45IDQ0LjQgMTguOCA2Mi4yIDYuNiA5LjggNy4yIDIyLjUgMS42IDMyLjlTMTQ4LjEgMzIwIDEzNi4yIDMyMEwzMiAzMjBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsNTQuOCAwYy00LjMtMTUuMy02LjgtMzEuNC02LjgtNDggMC05Ny4yIDc4LjgtMTc2IDE3Ni0xNzZ6Il19LFM5cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjaXJjbGUiLGljb246WzUxMiw1MTIsWzEyODMwOCwxMjgzMDksMTI4OTkyLDEyODk5MywxMjg5OTQsMTI4OTk1LDEyODk5Niw5Njc5LDk4OTgsOTg5OSwxMTA0NCw2MTcwOCw2MTkxNV0sImYxMTEiLCJNMCAyNTZhMjU2IDI1NiAwIDEgMSA1MTIgMCAyNTYgMjU2IDAgMSAxIC01MTIgMHoiXX0sejlyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im1vYmlsZS12aWJyYXRlIixpY29uOls1NzYsNTEyLFtdLCJlODE2IiwiTTM4NCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMzg0YzAgMzUuMy0yOC43IDY0LTY0IDY0bC0xOTIgMGMtMzUuMyAwLTY0LTI4LjctNjQtNjRsMC0zODRjMC0zNS4zIDI4LjctNjQgNjQtNjRMMzg0IDB6TTI0OCA0MTZjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsODAgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtODAgMHpNNDguOCAxMzMuNGM5LjQtNy43IDIzLjMtNy4xIDMyLjEgMS43IDkuNCA5LjQgOS40IDI0LjYgMCAzMy45bC0zMSAzMSAyNS40IDI1LjQgMi45IDMuMmM2LjMgNy43IDkuOCAxNy40IDkuOCAyNy40IDAgMTEuNS00LjYgMjIuNS0xMi43IDMwLjZsLTI1LjQgMjUuNCAzMSAzMSAxLjcgMS44YzcuNyA5LjQgNy4xIDIzLjMtMS43IDMyLjFzLTIyLjcgOS4zLTMyLjEgMS43TDQ3IDM3NyAxMi43IDM0Mi42QzUuNiAzMzUuNSAxLjIgMzI2LjIgLjIgMzE2LjNMMCAzMTIgLjIgMzA3LjdjMS05LjkgNS40LTE5LjIgMTIuNS0yNi4zTDM4LjEgMjU2IDEyLjcgMjMwLjZDNS42IDIyMy41IDEuMiAyMTQuMiAuMiAyMDQuM0wwIDIwMCAuMiAxOTUuN2MxLTkuOSA1LjQtMTkuMiAxMi41LTI2LjNMNDcgMTM1IDQ4LjggMTMzLjR6TTQ5NSAxMzVjOC44LTguOCAyMi43LTkuMyAzMi4xLTEuN2wxLjggMS43IDM0LjMgMzQuM2M3LjEgNy4xIDExLjUgMTYuNCAxMi41IDI2LjNsLjIgNC4zLS4yIDQuM2MtMSA5LjktNS40IDE5LjItMTIuNSAyNi4zbC0yNS40IDI1LjQgMjUuNCAyNS40YzcuMSA3LjEgMTEuNSAxNi40IDEyLjUgMjYuM2wuMiA0LjMtLjIgNC4zYy0xIDkuOS01LjQgMTkuMi0xMi41IDI2LjNsLTM0LjMgMzQuMy0xLjggMS43Yy05LjQgNy43LTIzLjMgNy4xLTMyLjEtMS43cy05LjMtMjIuNy0xLjctMzIuMWwxLjctMS44IDMxLTMxLTI1LjQtMjUuNGMtOC4xLTguMS0xMi43LTE5LjEtMTIuNy0zMC42IDAtMTAgMy41LTE5LjcgOS44LTI3LjRsMi45LTMuMiAyNS40LTI1LjQtMzEtMzFjLTkuNC05LjQtOS40LTI0LjYgMC0zMy45eiJdfSxTVGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmFjZS1ncmluLXNxdWludCIsaWNvbjpbNTEyLDUxMixbMTI4NTE4LCJncmluLXNxdWludCJdLCJmNTg1IiwiTTI1NiA1MTJhMjU2IDI1NiAwIDEgMCAwLTUxMiAyNTYgMjU2IDAgMSAwIDAgNTEyek0zODYuNyAzMDguOWMxMS45LTMuNyAyMy45IDYuMyAxOS42IDE4LjEtMjIuNCA2MS4zLTgxLjMgMTA1LjEtMTUwLjMgMTA1LjFTMTI4LjEgMzg4LjIgMTA1LjcgMzI2LjljLTQuMy0xMS44IDcuNy0yMS44IDE5LjYtMTguMSAzOS4yIDEyLjIgODMuNyAxOS4xIDEzMC43IDE5LjFzOTEuNS02LjkgMTMwLjctMTkuMXpNMTIyLjYgMTQzLjJjNC41LTYuOCAxMy4zLTkuMiAyMC42LTUuNWw3OS42IDQwYzUuNCAyLjcgOC44IDguMiA4LjggMTQuM3MtMy40IDExLjYtOC44IDE0LjNsLTc5LjYgNDBjLTcuMyAzLjYtMTYuMSAxLjMtMjAuNi01LjVzLTMuMS0xNS45IDMuMS0yMS4xTDE1OSAxOTIgMTI1LjggMTY0LjNjLTYuMi01LjItNy42LTE0LjMtMy4xLTIxLjF6bTI2My42IDIxLjFMMzUzIDE5MiAzODYuMiAyMTkuN2M2LjIgNS4yIDcuNiAxNC4zIDMuMSAyMS4xcy0xMy4zIDkuMi0yMC42IDUuNWwtNzkuNi00MGMtNS40LTIuNy04LjgtOC4yLTguOC0xNC4zczMuNC0xMS42IDguOC0xNC4zbDc5LjYtNDBjNy4zLTMuNiAxNi4xLTEuMyAyMC42IDUuNXMzLjEgMTUuOS0zLjEgMjEuMXoiXX0sQzlyPVNUZSxfOXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidXNlcnMtYmV0d2Vlbi1saW5lcyIsaWNvbjpbNTc2LDUxMixbXSwiZTU5MSIsIk0yNCAxNmw1MjggMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNEwyNCA2NEMxMC43IDY0IDAgNTMuMyAwIDQwUzEwLjcgMTYgMjQgMTZ6bTAgNDQ4bDUyOCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0TDI0IDUxMmMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNHpNMzkyIDE5MmE1NiA1NiAwIDEgMSAxMTIgMCA1NiA1NiAwIDEgMSAtMTEyIDB6bTI3LjIgMTAwLjRjOS4xLTIuOSAxOC44LTQuNCAyOC44LTQuNCA1MyAwIDk2IDQzIDk2IDk2bDAgMTAuN2MwIDExLjgtOS42IDIxLjMtMjEuMyAyMS4zbC03OC44IDBjMi43LTcuNSA0LjEtMTUuNiA0LjEtMjRsMC04YzAtMzQuMS0xMC42LTY1LjctMjguOC05MS42em0tMjYyLjQgMEMxMzguNiAzMTguMyAxMjggMzQ5LjkgMTI4IDM4NGwwIDhjMCA4LjQgMS40IDE2LjUgNC4xIDI0bC03OC44IDBDNDEuNiA0MTYgMzIgNDA2LjQgMzIgMzk0LjdMMzIgMzg0YzAtNTMgNDMtOTYgOTYtOTYgMTAgMCAxOS43IDEuNSAyOC44IDQuNHpNNzIgMTkyYTU2IDU2IDAgMSAxIDExMiAwIDU2IDU2IDAgMSAxIC0xMTIgMHptMTUyLTE2YTY0IDY0IDAgMSAxIDEyOCAwIDY0IDY0IDAgMSAxIC0xMjggMHpNMTc2IDM4NGMwLTYxLjkgNTAuMS0xMTIgMTEyLTExMnMxMTIgNTAuMSAxMTIgMTEybDAgOGMwIDEzLjMtMTAuNyAyNC0yNCAyNGwtMTc2IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0bDAtOHoiXX0sVDlyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhvdXNlLW1lZGljYWwtY2lyY2xlLXhtYXJrIixpY29uOls2NDAsNTEyLFtdLCJlNTEzIiwiTTMwOS44IDguNmMtMTIuMy0xMS40LTMxLjMtMTEuNC00My41IDBsLTIyNCAyMDhjLTkuNiA5LTEyLjggMjIuOS04IDM1LjFTNTAuOCAyNzIgNjQgMjcybDE2IDAgMCAxNzZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMTk2IDBjLTIxLjItMjkuNS0zNC4zLTY1LjMtMzUuOS0xMDRMMjcyIDQwOGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtNDAtNDAgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMzJjMC04LjggNy4yLTE2IDE2LTE2bDQwIDAgMC00MGMwLTguOCA3LjItMTYgMTYtMTZsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCA0MCAyMCAwYzM0LjktNDguNSA5MS43LTgwIDE1Ni04MCAxMC43IDAgMjEuMSAuOSAzMS4zIDIuNUwzMDkuOCA4LjZ6TTQ5NiA1NDRhMTQ0IDE0NCAwIDEgMCAwLTI4OCAxNDQgMTQ0IDAgMSAwIDAgMjg4em0yMi42LTE0NGwzNi43IDM2LjdjNi4yIDYuMiA2LjIgMTYuNCAwIDIyLjZzLTE2LjQgNi4yLTIyLjYgMGwtMzYuNy0zNi43LTM2LjcgMzYuN2MtNi4yIDYuMi0xNi40IDYuMi0yMi42IDBzLTYuMi0xNi40IDAtMjIuNmwzNi43LTM2LjctMzYuNy0zNi43Yy02LjItNi4yLTYuMi0xNi40IDAtMjIuNnMxNi40LTYuMiAyMi42IDBsMzYuNyAzNi43IDM2LjctMzYuN2M2LjItNi4yIDE2LjQtNi4yIDIyLjYgMHM2LjIgMTYuNCAwIDIyLjZMNTE4LjYgNDAweiJdfSx6VGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidGFibGUtbGlzdCIsaWNvbjpbNDQ4LDUxMixbInRoLWxpc3QiXSwiZjAwYiIsIk0wIDk2QzAgNjAuNyAyOC43IDMyIDY0IDMybDMyMCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMzIwYzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDQ4MGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCA5NnptNjQgMGwwIDY0IDY0IDAgMC02NC02NCAwem0zMjAgMGwtMTkyIDAgMCA2NCAxOTIgMCAwLTY0ek02NCAyMjRsMCA2NCA2NCAwIDAtNjQtNjQgMHptMzIwIDBsLTE5MiAwIDAgNjQgMTkyIDAgMC02NHpNNjQgMzUybDAgNjQgNjQgMCAwLTY0LTY0IDB6bTMyMCAwbC0xOTIgMCAwIDY0IDE5MiAwIDAtNjR6Il19LEw5cj16VGUsRDlyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZsYXNrLXZpYWwiLGljb246WzY0MCw1MTIsW10sImU0ZjMiLCJNMTg0LjYgNDExLjVjLTMuMSA3LjMtNS40IDE0LjktNi44IDIyLjYtMTQuNSA4LjgtMzEuNSAxMy45LTQ5LjggMTMuOS01MyAwLTk2LTQzLTk2LTk2TDMyIDY0QzE0LjMgNjQgMCA0OS43IDAgMzJTMTQuMyAwIDMyIDBMMjI0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsMCAyNTUuNi0zOS40IDkxLjl6TTk2IDY0bDAgMTI4IDY0IDAgMC0xMjgtNjQgMHpNMzUyIDBMNTEyIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsMCAxNTMuNCA5MS4zIDIxM2MyLjMgNS40IDMuOCAxMS4xIDQuNCAxN2wuMyAuNi0uMyAwYy4yIDEuOCAuMyAzLjYgLjMgNS40IDAgMzIuMy0yNi4yIDU4LjYtNTguNiA1OC42bC0yNjYuOSAwYy0zMi4zIDAtNTguNi0yNi4yLTU4LjYtNTguNiAwLTEuOCAuMS0zLjYgLjMtNS40bC0uMyAwIC4zLS42Yy42LTUuOCAyLjEtMTEuNiA0LjQtMTdMMzIwIDIxNy40IDMyMCA2NGMtMTcuNyAwLTMyLTE0LjMtMzItMzJTMzAyLjMgMCAzMjAgMGwzMiAwek00NTMuMiAyNDIuNmMtMy40LTgtNS4yLTE2LjUtNS4yLTI1LjJsMC0xNTMuNC02NCAwIDAgMTUzLjRjMCA4LjctMS44IDE3LjItNS4yIDI1LjJsLTMzLjIgNzcuNCAxNDAuNyAwLTMzLjItNzcuNHoiXX0sQ1RlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNpcmNsZS1leGNsYW1hdGlvbiIsaWNvbjpbNTEyLDUxMixbImV4Y2xhbWF0aW9uLWNpcmNsZSJdLCJmMDZhIiwiTTI1NiA1MTJhMjU2IDI1NiAwIDEgMSAwLTUxMiAyNTYgMjU2IDAgMSAxIDAgNTEyem0wLTE5MmEzMiAzMiAwIDEgMCAwIDY0IDMyIDMyIDAgMSAwIDAtNjR6bTAtMTkyYy0xOC4yIDAtMzIuNyAxNS41LTMxLjQgMzMuN2w3LjQgMTA0Yy45IDEyLjYgMTEuNCAyMi4zIDIzLjkgMjIuMyAxMi42IDAgMjMtOS43IDIzLjktMjIuM2w3LjQtMTA0YzEuMy0xOC4yLTEzLjEtMzMuNy0zMS40LTMzLjd6Il19LEE5cj1DVGUsX1RlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRheGkiLGljb246WzUxMiw1MTIsWzEyODY2MiwiY2FiIl0sImYxYmEiLCJNMTkyIDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMybDAgMzItOC45IDBjLTQyIDAtNzkuMSAyNy4zLTkxLjYgNjcuNGwtMjMgNzMuNUMxNC41IDIxOS4xIDAgMjQzLjkgMCAyNzJMMCA0NDhjMCAxNy43IDE0LjMgMzIgMzIgMzJsMzIgMGMxNy43IDAgMzItMTQuMyAzMi0zMmwwLTMyIDMyMCAwIDAgMzJjMCAxNy43IDE0LjMgMzIgMzIgMzJsMzIgMGMxNy43IDAgMzItMTQuMyAzMi0zMmwwLTE3NmMwLTI4LjEtMTQuNS01Mi45LTM2LjQtNjcuMWwtMjMtNzMuNUM0NDAuMSA5MS4zIDQwMi45IDY0IDM2MC45IDY0bC04LjkgMCAwLTMyYzAtMTcuNy0xNC4zLTMyLTMyLTMyTDE5MiAwek0xNTEuMSAxMjhsMjA5LjkgMGMxNCAwIDI2LjQgOS4xIDMwLjUgMjIuNWwxMyA0MS41LTI5Ni45IDAgMTMtNDEuNWM0LjItMTMuNCAxNi41LTIyLjUgMzAuNS0yMi41ek05NiAyNzJhMzIgMzIgMCAxIDEgMCA2NCAzMiAzMiAwIDEgMSAwLTY0em0yODggMzJhMzIgMzIgMCAxIDEgNjQgMCAzMiAzMiAwIDEgMSAtNjQgMHoiXX0sRTlyPV9UZSxUVGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidGV4dC1zbGFzaCIsaWNvbjpbNTc2LDUxMixbInJlbW92ZS1mb3JtYXQiXSwiZjg3ZCIsIk00MS0yNC45Yy05LjQtOS40LTI0LjYtOS40LTMzLjkgMFMtMi4zLS4zIDcgOS4xbDUyOCA1MjhjOS40IDkuNCAyNC42IDkuNCAzMy45IDBzOS40LTI0LjYgMC0zMy45TDMyMi43IDI1Ni45IDM2OC4yIDk2IDQ3MSA5NiA0NjUgMTIwLjJjLTQuMyAxNy4xIDYuMSAzNC41IDIzLjMgMzguOHMzNC41LTYuMSAzOC44LTIzLjNsMTEtNDQuMUM1NDUuNiA2MS4zIDUyMi43IDMyIDQ5MS41IDMybC0zMTkgMGMtMTkuOCAwLTM3LjMgMTIuMS00NC41IDMwLjFsLTg3LTg3ek0xODAuNCAxMTQuNWw0LjYtMTguNSAxMTYuNyAwLTMwLjggMTA5LTkwLjUtOTAuNXpNMjQxIDMxMC44TDIxMS4zIDQxNiAxNjAgNDE2Yy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDE2MCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC00Mi4yIDAgMTUuMS01My4zLTUxLjktNTEuOXoiXX0sJDlyPVRUZSxQOXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGVvcGxlLXB1bGxpbmciLGljb246WzU3Niw1MTIsW10sImU1MzUiLCJNODAgOTZhNDggNDggMCAxIDAgMC05NiA0OCA0OCAwIDEgMCAwIDk2ek02NCAxMjhjLTM1LjMgMC02NCAyOC43LTY0IDY0TDAgMzIwYzAgMTcuNyAxNC4zIDMyIDMyIDMyIDkuOCAwIDE4LjUtNC40IDI0LjQtMTEuMkw4MC40IDQ4NS4zYzIuOSAxNy40IDE5LjQgMjkuMiAzNi44IDI2LjNzMjkuMi0xOS40IDI2LjMtMzYuOGwtMjAuNS0xMjIuNyAxNS43IDAgMzAgMTM0LjljMy44IDE3LjMgMjAuOSAyOC4xIDM4LjIgMjQuM3MyOC4xLTIwLjkgMjQuMy0zOC4ybC01Ny4zLTI1OCAxMTYuMyA1My44Yy41IC4zIDEuMSAuNSAxLjYgLjcgOC42IDMuNiAxOCAzLjEgMjUuOS0uNyAzLjQtMS42IDYuNi0zLjkgOS4zLTYuNyAzLjEtMy4yIDUuNS03IDcuMS0xMS40IC4xLS4zIC4yLS43IC4zLTFsMi41LTcuNWM1LjctMTcuMSAxOC4zLTMwLjkgMzQuNy0zOC4ybDgtMy41YzEtLjQgMS45LS44IDIuOS0xLjJsLTE2LjkgNjMuNWMtNS42IDIxLjEtLjEgNDMuNiAxNC43IDU5LjdsNzAuNyA3Ny4xIDIyIDg4LjFjNC4zIDE3LjEgMjEuNyAyNy42IDM4LjggMjMuM3MyNy42LTIxLjcgMjMuMy0zOC44bC0yMy05Mi4xYy0xLjktNy44LTUuOC0xNC45LTExLjItMjAuOGwtNDkuNS01NCAxOS4zLTY1LjUgOS42IDIzYzQuNCAxMC42IDEyLjUgMTkuMyAyMi44IDI0LjVsMjYuNyAxMy4zYzE1LjggNy45IDM1IDEuNSA0Mi45LTE0LjNzMS41LTM1LTE0LjMtNDIuOWwtMjEuNC0xMC43LTE1LjMtMzYuOGMtMTcuMS00MS4xLTU3LjMtNjcuOS0xMDEuOS02Ny45LTIyLjggMC00NS4zIDQuOC02Ni4xIDE0bC04IDMuNWMtMjQuNCAxMC45LTQ0LjYgMjktNTguMSA1MS42TDE1Ny4zIDEzNi45QzE0NC43IDEzMSAxMzAuOSAxMjggMTE3IDEyOGwtNTMgMHpNNDY0IDk2YTQ4IDQ4IDAgMSAwIDAtOTYgNDggNDggMCAxIDAgMCA5NnpNMzQ5LjcgMzM1LjZsLTI1IDYyLjQtNTkuNCA1OS40Yy0xMi41IDEyLjUtMTIuNSAzMi44IDAgNDUuM3MzMi44IDEyLjUgNDUuMyAwTDM3Mi4zIDQ0MWM0LjYtNC42IDguMi0xMC4xIDEwLjYtMTYuMWwxNC41LTM2LjItNDAuNy00NC40Yy0yLjUtMi43LTQuOC01LjYtNy04LjZ6Il19LEk5cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJiYWNrd2FyZCIsaWNvbjpbNTc2LDUxMixbOTE5NF0sImYwNGEiLCJNMjA0LjMgNDMuMUMyMTUuOSAzMiAyMzMgMjguOSAyNDcuNyAzNS4yUzI3MiA1NiAyNzIgNzJsMCAxMzYuMyAxNzIuMy0xNjUuMUM0NTUuOSAzMiA0NzMgMjguOSA0ODcuNyAzNS4yUzUxMiA1NiA1MTIgNzJsMCAzNjhjMCAxNi05LjYgMzAuNS0yNC4zIDM2LjhzLTMxLjggMy4yLTQzLjQtNy45TDI3MiAzMDMuNyAyNzIgNDQwYzAgMTYtOS42IDMwLjUtMjQuMyAzNi44cy0zMS44IDMuMi00My40LTcuOWwtMTkyLTE4NEM0LjUgMjc3LjMgMCAyNjYuOSAwIDI1NnM0LjUtMjEuMyAxMi4zLTI4LjlsMTkyLTE4NHoiXX0sTFRlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNhci1idXJzdCIsaWNvbjpbNjQwLDUxMixbImNhci1jcmFzaCJdLCJmNWUxIiwiTTIzMiAxNi4xbDAtNDhjMC0xMy4zLTEwLjctMjQtMjQtMjRzLTI0IDEwLjctMjQgMjRsMCA0OGMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0ek0zMiAxNjguMWw0OCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC00OCAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0ek0yODEuNSA3MC42YzkuNCA5LjQgMjQuNiA5LjQgMzMuOSAwbDMzLjktMzMuOWM5LjQtOS40IDkuNC0yNC42IDAtMzMuOXMtMjQuNi05LjQtMzMuOSAwTDI4MS41IDM2LjZjLTkuNCA5LjQtOS40IDI0LjYgMCAzMy45em0tMTgxIDIxNWwzMy45LTMzLjljOS40LTkuNCA5LjQtMjQuNiAwLTMzLjlzLTI0LjYtOS40LTMzLjkgMEw2Ni42IDI1MS42Yy05LjQgOS40LTkuNCAyNC42IDAgMzMuOXMyNC42IDkuNCAzMy45IDB6TTY2LjYgMi43Yy05LjQgOS40LTkuNCAyNC42IDAgMzMuOWwzMy45IDMzLjljOS40IDkuNCAyNC42IDkuNCAzMy45IDBzOS40LTI0LjYgMC0zMy45TDEwMC41IDIuN0M5MS4xLTYuNyA3Ni02LjcgNjYuNiAyLjd6TTM1Mi45IDE3NS40TDUwNSAyMTYuMmM2LjQgMS43IDExLjEgNy4zIDExLjggMTMuOWw3LjIgNzQtMjMxLjUtNjIgNDMuMi02MC41YzMuOS01LjQgMTAuNy03LjkgMTcuMi02LjJ6TTIyMy42IDIyOC41bC0yLjEgMi45Yy0yMS43IDUuNS0zOS45IDIyLjMtNDYuMSA0NS41LTQuMSAxNS41LTEyLjQgNDYuNC0yNC44IDkyLjdsLTguMyAzMC45Yy00LjYgMTcuMSA1LjYgMzQuNiAyMi42IDM5LjJsMTUuNSA0LjFjMTcuMSA0LjYgMzQuNi01LjYgMzkuMi0yMi42bDguMy0zMC45IDI3OC4yIDc0LjUtOC4zIDMwLjljLTQuNiAxNy4xIDUuNiAzNC42IDIyLjYgMzkuMmwxNS41IDQuMWMxNy4xIDQuNiAzNC42LTUuNiAzOS4yLTIyLjYgNC4xLTE1LjUgMTIuNC00Ni40IDI0LjgtOTIuN2w4LjMtMzAuOWM2LjItMjMuMi0xLjEtNDYuOC0xNy4yLTYyLjVsLS4zLTMuNi0xMC0xMDNjLTMuMi0zMy4yLTI2LjctNjAuOS01OC45LTY5LjVMMzY5LjUgMTEzLjZjLTMyLjItOC42LTY2LjQgMy42LTg1LjggMzAuOGwtNjAuMiA4NC4yem00OC43IDU3LjhhMzIgMzIgMCAxIDEgLTE2LjYgNjEuOCAzMiAzMiAwIDEgMSAxNi42LTYxLjh6bTIwOC4xIDg4LjlhMzIgMzIgMCAxIDEgNjEuOCAxNi42IDMyIDMyIDAgMSAxIC02MS44LTE2LjZ6Il19LE45cj1MVGUsRFRlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImxpbmsiLGljb246WzU3Niw1MTIsWzEyODI3OSwiY2hhaW4iXSwiZjBjMSIsIk00MTkuNSA5NmMtMTYuNiAwLTMyLjcgNC41LTQ2LjggMTIuNy0xNS44LTE2LTM0LjItMjkuNC01NC41LTM5LjUgMjguMi0yNCA2NC4xLTM3LjIgMTAxLjMtMzcuMiA4Ni40IDAgMTU2LjUgNzAgMTU2LjUgMTU2LjUgMCA0MS41LTE2LjUgODEuMy00NS44IDExMC42bC03MS4xIDcxLjFjLTI5LjMgMjkuMy02OS4xIDQ1LjgtMTEwLjYgNDUuOC04Ni40IDAtMTU2LjUtNzAtMTU2LjUtMTU2LjUgMC0xLjUgMC0zIC4xLTQuNSAuNS0xNy43IDE1LjItMzEuNiAzMi45LTMxLjFzMzEuNiAxNS4yIDMxLjEgMzIuOWMwIC45IDAgMS44IDAgMi42IDAgNTEuMSA0MS40IDkyLjUgOTIuNSA5Mi41IDI0LjUgMCA0OC05LjcgNjUuNC0yNy4xbDcxLjEtNzEuMWMxNy4zLTE3LjMgMjcuMS00MC45IDI3LjEtNjUuNCAwLTUxLjEtNDEuNC05Mi41LTkyLjUtOTIuNXpNMjc1LjIgMTczLjNjLTEuOS0uOC0zLjgtMS45LTUuNS0zLjEtMTIuNi02LjUtMjctMTAuMi00Mi4xLTEwLjItMjQuNSAwLTQ4IDkuNy02NS40IDI3LjFMOTEuMSAyNTguMmMtMTcuMyAxNy4zLTI3LjEgNDAuOS0yNy4xIDY1LjQgMCA1MS4xIDQxLjQgOTIuNSA5Mi41IDkyLjUgMTYuNSAwIDMyLjYtNC40IDQ2LjctMTIuNiAxNS44IDE2IDM0LjIgMjkuNCA1NC42IDM5LjUtMjguMiAyMy45LTY0IDM3LjItMTAxLjMgMzcuMi04Ni40IDAtMTU2LjUtNzAtMTU2LjUtMTU2LjUgMC00MS41IDE2LjUtODEuMyA0NS44LTExMC42bDcxLjEtNzEuMWMyOS4zLTI5LjMgNjkuMS00NS44IDExMC42LTQ1LjggODYuNiAwIDE1Ni41IDcwLjYgMTU2LjUgMTU2LjkgMCAxLjMgMCAyLjYgMCAzLjktLjQgMTcuNy0xNS4xIDMxLjYtMzIuOCAzMS4ycy0zMS42LTE1LjEtMzEuMi0zMi44YzAtLjggMC0xLjUgMC0yLjMgMC0zMy43LTE4LTYzLjMtNDQuOC03OS42eiJdfSxGOXI9RFRlLEFUZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJiYWNrd2FyZC1zdGVwIixpY29uOlszODQsNTEyLFsic3RlcC1iYWNrd2FyZCJdLCJmMDQ4IiwiTTM2MyAzNi44Yy0xMi45LTctMjguNy02LjMtNDEgMS44TDY0IDIwOC4xIDY0IDY0YzAtMTcuNy0xNC4zLTMyLTMyLTMyUzAgNDYuMyAwIDY0TDAgNDQ4YzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0xNDQuMSAyNTggMTY5LjZjMTIuMyA4LjEgMjggOC44IDQxIDEuOHMyMS0yMC41IDIxLTM1LjJsMC0zNjhjMC0xNC43LTguMS0yOC4yLTIxLTM1LjJ6Il19LE85cj1BVGUsUjlyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6IngiLGljb246WzM4NCw1MTIsWzEyMF0sIjU4IiwiTTM3Ni42IDg0LjVjMTEuMy0xMy42IDkuNS0zMy44LTQuMS00NS4xcy0zMy44LTkuNS00NS4xIDQuMUwxOTIgMjA2IDU2LjYgNDMuNUM0NS4zIDI5LjkgMjUuMSAyOC4xIDExLjUgMzkuNFMtMy45IDcwLjkgNy40IDg0LjVMMTUwLjMgMjU2IDcuNCA0MjcuNWMtMTEuMyAxMy42LTkuNSAzMy44IDQuMSA0NS4xczMzLjggOS41IDQ1LjEtNC4xTDE5MiAzMDYgMzI3LjQgNDY4LjVjMTEuMyAxMy42IDMxLjUgMTUuNCA0NS4xIDQuMXMxNS40LTMxLjUgNC4xLTQ1LjFMMjMzLjcgMjU2IDM3Ni42IDg0LjV6Il19LEVUZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjaXJjbGUtdXNlciIsaWNvbjpbNTEyLDUxMixbNjIxNDIsInVzZXItY2lyY2xlIl0sImYyYmQiLCJNMzk5IDM4NC4yQzM3Ni45IDM0NS44IDMzNS40IDMyMCAyODggMzIwbC02NCAwYy00Ny40IDAtODguOSAyNS44LTExMSA2NC4yIDM1LjIgMzkuMiA4Ni4yIDYzLjggMTQzIDYzLjhzMTA3LjgtMjQuNyAxNDMtNjMuOHpNMCAyNTZhMjU2IDI1NiAwIDEgMSA1MTIgMCAyNTYgMjU2IDAgMSAxIC01MTIgMHptMjU2IDE2YTcyIDcyIDAgMSAwIDAtMTQ0IDcyIDcyIDAgMSAwIDAgMTQ0eiJdfSxCOXI9RVRlLCRUZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJyZWN0YW5nbGUtbGlzdCIsaWNvbjpbNTEyLDUxMixbImxpc3QtYWx0Il0sImYwMjIiLCJNNjQgNjRDMjguNyA2NCAwIDkyLjcgMCAxMjhMMCAzODRjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzg0IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0yNTZjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgNjR6bTk2IDI1NmEzMiAzMiAwIDEgMSAtNjQgMCAzMiAzMiAwIDEgMSA2NCAwem0tMzItOTZhMzIgMzIgMCAxIDEgMC02NCAzMiAzMiAwIDEgMSAwIDY0em0xMjAtNTZsMTQ0IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTE0NCAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0em0wIDEyOGwxNDQgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtMTQ0IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjR6Il19LEg5cj0kVGUsUFRlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhhbmQiLGljb246WzUxMiw1MTIsWzEyOTMwNiw5OTk1LCJoYW5kLXBhcGVyIl0sImYyNTYiLCJNMjg4IDMyYzAtMTcuNy0xNC4zLTMyLTMyLTMycy0zMiAxNC4zLTMyIDMybDAgMjA4YzAgOC44LTcuMiAxNi0xNiAxNnMtMTYtNy4yLTE2LTE2bDAtMTc2YzAtMTcuNy0xNC4zLTMyLTMyLTMycy0zMiAxNC4zLTMyIDMybDAgMjcyYzAgMS41IDAgMy4xIC4xIDQuNkw2Ny42IDI4M2MtMTYtMTUuMi00MS4zLTE0LjYtNTYuNiAxLjRTLTMuNiAzMjUuNyAxMi40IDM0MUwxMjQuOCA0NDhjNDMuMSA0MS4xIDEwMC40IDY0IDE2MCA2NGwxOS4yIDBjOTcuMiAwIDE3Ni03OC44IDE3Ni0xNzZsMC0yMDhjMC0xNy43LTE0LjMtMzItMzItMzJzLTMyIDE0LjMtMzIgMzJsMCAxMTJjMCA4LjgtNy4yIDE2LTE2IDE2cy0xNi03LjItMTYtMTZsMC0xNzZjMC0xNy43LTE0LjMtMzItMzItMzJzLTMyIDE0LjMtMzIgMzJsMCAxNzZjMCA4LjgtNy4yIDE2LTE2IDE2cy0xNi03LjItMTYtMTZsMC0yMDh6Il19LHE5cj1QVGUsajlyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNhbmNlciIsaWNvbjpbNTEyLDUxMixbXSwiZTg0NyIsIk00MDggMTUyYzU3LjQgMCAxMDQgNDYuNiAxMDQgMTA0IDAgMTQxLjQtMTE0LjYgMjU2LTI1NiAyNTYtNTQuMyAwLTEwNC44LTE3LTE0Ni4zLTQ1LjktMTQuNS0xMC4xLTE4LTMwLjEtNy45LTQ0LjZzMzAuMS0xOCA0NC42LTcuOWMzMS4xIDIxLjcgNjguOSAzNC40IDEwOS43IDM0LjQgNjcuOSAwIDEyNy41LTM1LjMgMTYxLjctODguNS0zLjIgLjMtNi40IC41LTkuNyAuNS01Ny40IDAtMTA0LTQ2LjYtMTA0LTEwNHM0Ni42LTEwNCAxMDQtMTA0ek0yNTYgMGM1NC4zIDAgMTA0LjggMTcgMTQ2LjMgNDUuOSAxNC41IDEwLjEgMTggMzAuMSA3LjkgNDQuNnMtMzAuMSAxOC00NC42IDcuOWMtMzEuMS0yMS43LTY4LjktMzQuNC0xMDkuNy0zNC40LTY3LjkgMC0xMjcuNSAzNS4yLTE2MS43IDg4LjQgMy4yLS4zIDYuNC0uNCA5LjctLjQgNTcuNCAwIDEwNCA0Ni42IDEwNCAxMDRTMTYxLjQgMzYwIDEwNCAzNjAgMCAzMTMuNCAwIDI1NkMwIDI1NC4xIDAgMjUyLjIgLjEgMjUwLjQgMy4xIDExMS42IDExNi41IDAgMjU2IDB6TTEwNCAyMTZhNDAgNDAgMCAxIDAgMCA4MCA0MCA0MCAwIDEgMCAwLTgwem0zMDQgMGE0MCA0MCAwIDEgMCAwIDgwIDQwIDQwIDAgMSAwIDAtODB6Il19LElUZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ2YW4tc2h1dHRsZSIsaWNvbjpbNTc2LDUxMixbMTI4NjU2LCJzaHV0dGxlLXZhbiJdLCJmNWI2IiwiTTY0IDY0QzI4LjcgNjQgMCA5Mi43IDAgMTI4TDAgMzM2YzAgMzUuMyAyOC43IDY0IDY0IDY0bC40IDBjNCA0NC45IDQxLjcgODAgODcuNiA4MHM4My42LTM1LjEgODcuNi04MGwxMDQuNyAwYzQgNDQuOSA0MS43IDgwIDg3LjYgODAgNDYuMSAwIDgzLjktMzUuNCA4Ny43LTgwLjUgMzEuNy0zLjggNTYuMy0zMC44IDU2LjMtNjMuNWwwLTEwMS4zYzAtMTMuOC00LjUtMjcuMy0xMi44LTM4LjRsLTgwLTEwNi43QzQ3MS4xIDczLjUgNDUyLjEgNjQgNDMyIDY0TDY0IDY0ek01MDQgMjI0bC0xMjAgMCAwLTk2IDQ4IDAgNzIgOTZ6TTY0IDIyNGwwLTk2IDk2IDAgMCA5Ni05NiAwem0xNjAgMGwwLTk2IDk2IDAgMCA5Ni05NiAwek0zOTIgMzkyYTQwIDQwIDAgMSAxIDgwIDAgNDAgNDAgMCAxIDEgLTgwIDB6TTE1MiAzNTJhNDAgNDAgMCAxIDEgMCA4MCA0MCA0MCAwIDEgMSAwLTgweiJdfSxWOXI9SVRlLFU5cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzdGFpcnMiLGljb246WzU3Niw1MTIsW10sImUyODkiLCJNMzg0IDY0YzAtMTcuNyAxNC4zLTMyIDMyLTMybDEyOCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC05NiAwIDAgOTZjMCAxNy43LTE0LjMgMzItMzIgMzJsLTk2IDAgMCA5NmMwIDE3LjctMTQuMyAzMi0zMiAzMmwtOTYgMCAwIDk2YzAgMTcuNy0xNC4zIDMyLTMyIDMyTDMyIDQ4MGMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMmw5NiAwIDAtOTZjMC0xNy43IDE0LjMtMzIgMzItMzJsOTYgMCAwLTk2YzAtMTcuNyAxNC4zLTMyIDMyLTMybDk2IDAgMC05NnoiXX0sVzlyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhvcnNlLWhlYWQiLGljb246WzUxMiw1MTIsW10sImY3YWIiLCJNMCA0NjRMMCAzMTYuOUMwIDIwOC41IDY4LjMgMTExLjggMTcwLjUgNzUuNkwzNDAuMiAxNS41YzIxLjQtNy42IDQzLjggOC4zIDQzLjggMzAuOSAwIDExLTUuNSAyMS4yLTE0LjYgMjcuM0wzMzYgOTZjNDguMSAwIDkxLjIgMjkuOCAxMDguMSA3NC45bDQ4LjYgMTI5LjVjMTEuOCAzMS40IDQuMSA2Ni44LTE5LjYgOTAuNS0xNiAxNi0zNy44IDI1LjEtNjAuNSAyNS4xbC0zLjQgMGMtMjYuMSAwLTUwLjktMTEuNi02Ny42LTMxLjdsLTMyLjMtMzguN2MtMTEuNyA0LjEtMjQuMiA2LjQtMzcuMyA2LjRsLS4xIDBjLTYuMyAwLTEyLjUtLjUtMTguNi0xLjUtMy42LS42LTcuMi0xLjQtMTAuNy0yLjNsMCAwYy0yOC45LTcuOC01My4xLTI2LjgtNjcuOC01Mi4yLTQuNC03LjctMTQuMi0xMC4zLTIxLjktNS44cy0xMC4zIDE0LjItNS44IDIxLjljMjQgNDEuNSA2OC4zIDcwIDExOS4zIDcxLjlsNDcuMiA3MC44YzQgNi4xIDYuMiAxMy4yIDYuMiAyMC40IDAgMjAuMy0xNi41IDM2LjgtMzYuOCAzNi44TDQ4IDUxMmMtMjYuNSAwLTQ4LTIxLjUtNDgtNDh6TTMyOCAyMjRhMjQgMjQgMCAxIDAgMC00OCAyNCAyNCAwIDEgMCAwIDQ4eiJdfSxHOXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidmF1bHQiLGljb246WzUxMiw1MTIsW10sImUyYzUiLCJNNjQgMzJDMjguNyAzMiAwIDYwLjcgMCA5NkwwIDQxNmMwIDM1LjMgMjguNyA2NCA2NCA2NCAwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDI1NiAwYzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zMjBjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzJ6TTI1NiAyNTZhNjQgNjQgMCAxIDAgLTEyOCAwIDY0IDY0IDAgMSAwIDEyOCAwek02NCAyNTZhMTI4IDEyOCAwIDEgMSAyNTYgMCAxMjggMTI4IDAgMSAxIC0yNTYgMHptMzg0LTQ4YzAgMTcuOC05LjcgMzMuMy0yNCA0MS42bDAgNzguNGMwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNGwwLTc4LjRjLTE0LjMtOC4zLTI0LTIzLjgtMjQtNDEuNiAwLTI2LjUgMjEuNS00OCA0OC00OHM0OCAyMS41IDQ4IDQ4eiJdfSxZOXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2xvc2VkLWNhcHRpb25pbmctc2xhc2giLGljb246WzU3Niw1MTIsW10sImUxMzUiLCJNNy0yNC45YzkuNC05LjQgMjQuNi05LjQgMzMuOSAwTDEyOS44IDY0IDQ4MCA2NGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDI1NmMwIDI1LjUtMTQuOSA0Ny40LTM2LjQgNTcuOEw1NjkgNTAzLjFjOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlzLTI0LjYgOS40LTMzLjkgMEw3IDkuMUMtMi4zLS4zLTIuMy0xNS41IDctMjQuOXptMzQ1IDMxMWwwLTcwLjJjMC00LjQgMy42LTggOC04bDMyIDBjNC40IDAgOCAzLjYgOCA4IDAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRjMC0zMC45LTI1LjEtNTYtNTYtNTZsLTMyIDBjLTMwLjkgMC01NiAyNS4xLTU2IDU2bDAgMjIuMiA0OCA0OHptNjEuNSA2MS41YzIwLjItOC40IDM0LjUtMjguNCAzNC41LTUxLjcgMC0xMy4zLTEwLjctMjQtMjQtMjRzLTI0IDEwLjctMjQgMjRjMCA0LjQtMy42IDgtOCA4bC0yMi4yIDAgNDMuNyA0My43ek0xMzAuMyAyMDAuMWMtMS41IDUtMi4zIDEwLjQtMi4zIDE1LjlsMCA4MGMwIDMwLjkgMjUuMSA1NiA1NiA1NmwzMiAwYzE4LjEgMCAzNC4xLTguNSA0NC40LTIxLjhMMzc4LjIgNDQ4IDk2IDQ0OGMtMzUuMyAwLTY0LTI4LjctNjQtNjRsMC0yNTZjMC03LjggMS40LTE1LjMgNC0yMi4ybDk0LjMgOTQuM3ptOTMuOCA5My44Yy0uMSAuNy0uMSAxLjQtLjEgMi4xIDAgNC40LTMuNiA4LTggOGwtMzIgMGMtNC40IDAtOC0zLjYtOC04bDAtNTAuMiA0OC4xIDQ4LjF6Il19LFo5cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJkcnVtLXN0ZWVscGFuIixpY29uOls1NzYsNTEyLFtdLCJmNTZhIiwiTTI4OCAzMmMxNTkuMSAwIDI4OCA0OCAyODggMTI4bDAgMTkyYzAgODAtMTI4LjkgMTI4LTI4OCAxMjhTMCA0MzIgMCAzNTJMMCAxNjBDMCA4MCAxMjguOSAzMiAyODggMzJ6TTUyOCAxNjBjMC05LjktOC0yOS45LTU1LTQ5LjgtMTguNi03LjktNDAuOS0xNC40LTY2LTE5LjRsLTI3LjggNDMuNmMtNy4zIDExLjUtMTEuMiAyNC44LTExLjIgMzguNCAwIDE3LjUgNi40IDM0LjQgMTguMSA0Ny41bDkuOCAxMWMyOS44LTUuMiA1NS45LTEyLjUgNzcuMi0yMS41IDQ3LjEtMTkuOSA1NS0zOS45IDU1LTQ5Ljh6TTM0OS4yIDIzNy4zYy04LTI2LjItMzIuNC00NS4zLTYxLjItNDUuM3MtNTMuMyAxOS4xLTYxLjIgNDUuM2MxOS40IDEuNyAzOS45IDIuNyA2MS4yIDIuN3M0MS44LS45IDYxLjItMi43ek0xNjkgOTAuOGMtMjUuMiA1LTQ3LjQgMTEuNi02NiAxOS40LTQ3LjEgMTkuOS01NSAzOS45LTU1IDQ5LjhzOCAyOS45IDU1IDQ5LjhjMjEuMyA5IDQ3LjQgMTYuMyA3Ny4yIDIxLjVsOS44LTExYzExLjYtMTMuMSAxOC4xLTMwIDE4LjEtNDcuNSAwLTEzLjYtMy45LTI2LjktMTEuMi0zOC40TDE2OSA5MC44em01Ni4zLThjLS45IDQuMy0xLjQgOC43LTEuNCAxMy4yIDAgMzUuMyAyOC43IDY0IDY0IDY0czY0LTI4LjcgNjQtNjRjMC00LjUtLjUtOS0xLjQtMTMuMi0xOS44LTEuOC00MC44LTIuOC02Mi42LTIuOHMtNDIuOCAxLTYyLjYgMi44eiJdfSxYOXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidGh1bWJzLXVwIixpY29uOls1MTIsNTEyLFsxMjgwNzcsNjE1NzVdLCJmMTY0IiwiTTgwIDE2MGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDI1NmMwIDE3LjctMTQuMyAzMi0zMiAzMmwtNDggMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJMMCAxOTJjMC0xNy43IDE0LjMtMzIgMzItMzJsNDggMHpNMjcwLjYgMTZDMjk3LjkgMTYgMzIwIDM4LjEgMzIwIDY1LjRsMCA0LjJjMCA2LjgtMS4zIDEzLjYtMy44IDE5LjlMMjg4IDE2MCA0NDggMTYwYzI2LjUgMCA0OCAyMS41IDQ4IDQ4IDAgMTkuNy0xMS45IDM2LjYtMjguOSA0NCAxNyA3LjQgMjguOSAyNC4zIDI4LjkgNDQgMCAyMy40LTE2LjggNDIuOS0zOSA0Ny4xIDQuNCA3LjMgNyAxNS44IDcgMjQuOSAwIDIyLjItMTUgNDAuOC0zNS40IDQ2LjMgMi4yIDUuNSAzLjQgMTEuNSAzLjQgMTcuNyAwIDI2LjUtMjEuNSA0OC00OCA0OGwtODcuOSAwYy0zNi4zIDAtNzEuNi0xMi40LTk5LjktMzUuMUwxODQgNDM1LjJjLTE1LjItMTIuMS0yNC0zMC41LTI0LTUwbDAtMTg2LjZjMC0xNC45IDMuNS0yOS42IDEwLjEtNDIuOUwyMjYuMyA0My4zQzIzNC43IDI2LjYgMjUxLjggMTYgMjcwLjYgMTZ6Il19LFE5cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzdGFtcCIsaWNvbjpbNTEyLDUxMixbXSwiZjViZiIsIk0zMTIgMjAxLjhjMC0xNy40IDkuMi0zMy4yIDE5LjktNDcgMTIuNi0xNi4yIDIwLjEtMzYuNiAyMC4xLTU4LjggMC01My00My05Ni05Ni05NnMtOTYgNDMtOTYgOTZjMCAyMi4xIDcuNSA0Mi41IDIwLjEgNTguOCAxMC43IDEzLjggMTkuOSAyOS42IDE5LjkgNDcgMCAyOS45LTI0LjMgNTQuMi01NC4yIDU0LjJMMTEyIDI1NmMtNjEuOSAwLTExMiA1MC4xLTExMiAxMTIgMCAyNi41IDIxLjUgNDggNDggNDhsNDE2IDBjMjYuNSAwIDQ4LTIxLjUgNDgtNDggMC02MS45LTUwLjEtMTEyLTExMi0xMTJsLTMzLjggMGMtMjkuOSAwLTU0LjItMjQuMy01NC4yLTU0LjJ6TTU2IDQ2NGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGw0MDAgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNEw1NiA0NjR6Il19LEs5cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtZW5vcmFoIixpY29uOls2NDAsNTEyLFtdLCJmNjc2IiwiTTIwLjggNy40QzIyLjggMi45IDI3LjEgMCAzMiAwczkuMiAyLjkgMTEuMiA3LjRMNjEuMyA0OS43YzEuOCA0LjEgMi43IDguNiAyLjcgMTMuMUw2NCA2NGMwIDE3LjctMTQuMyAzMi0zMiAzMlMwIDgxLjcgMCA2NGwwLTEuMmMwLTQuNSAuOS04LjkgMi43LTEzLjFMMjAuOCA3LjR6bTk2IDBDMTE4LjggMi45IDEyMy4xIDAgMTI4IDBzOS4yIDIuOSAxMS4yIDcuNGwxOC4yIDQyLjRjMS44IDQuMSAyLjcgOC42IDIuNyAxMy4xbDAgMS4yYzAgMTcuNy0xNC4zIDMyLTMyIDMyUzk2IDgxLjcgOTYgNjRsMC0xLjJjMC00LjUgLjktOC45IDIuNy0xMy4xTDExNi44IDcuNHptNzcuOCA0Mi40TDIxMi44IDcuNEMyMTQuOCAyLjkgMjE5LjEgMCAyMjQgMHM5LjIgMi45IDExLjIgNy40bDE4LjIgNDIuNGMxLjggNC4xIDIuNyA4LjYgMi43IDEzLjFsMCAxLjJjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC0xLjJjMC00LjUgLjktOC45IDIuNy0xMy4xek0zMDguOCA3LjRDMzEwLjggMi45IDMxNS4xIDAgMzIwIDBzOS4yIDIuOSAxMS4yIDcuNGwxOC4yIDQyLjRjMS44IDQuMSAyLjcgOC42IDIuNyAxMy4xbDAgMS4yYzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMS4yYzAtNC41IC45LTguOSAyLjctMTMuMUwzMDguOCA3LjR6bTc3LjggNDIuNEw0MDQuOCA3LjRDNDA2LjggMi45IDQxMS4xIDAgNDE2IDBzOS4yIDIuOSAxMS4yIDcuNGwxOC4yIDQyLjRjMS44IDQuMSAyLjcgOC42IDIuNyAxMy4xbDAgMS4yYzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMS4yYzAtNC41IC45LTguOSAyLjctMTMuMXpNNTAwLjggNy40QzUwMi44IDIuOSA1MDcuMSAwIDUxMiAwczkuMiAyLjkgMTEuMiA3LjRsMTguMiA0Mi40YzEuOCA0LjEgMi43IDguNiAyLjcgMTMuMWwwIDEuMmMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTEuMmMwLTQuNSAuOS04LjkgMi43LTEzLjFMNTAwLjggNy40em03Ny44IDQyLjRMNTk2LjggNy40QzU5OC44IDIuOSA2MDMuMSAwIDYwOCAwczkuMiAyLjkgMTEuMiA3LjRsMTguMiA0Mi40YzEuOCA0LjEgMi43IDguNiAyLjcgMTMuMWwwIDEuMmMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTEuMmMwLTQuNSAuOS04LjkgMi43LTEzLjF6TTMyIDEyOGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDEyOGMwIDE3LjcgMTQuMyAzMiAzMiAzMmwxOTIgMCAwLTE2MGMwLTE3LjcgMTQuMy0zMiAzMi0zMnMzMiAxNC4zIDMyIDMybDAgMTYwIDE5MiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtMTI4YzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJsMCAxMjhjMCA1My00MyA5Ni05NiA5NmwtMTkyIDAgMCA2NCAxMjggMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtMzIwIDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsMTI4IDAgMC02NC0xOTIgMGMtNTMgMC05Ni00My05Ni05NkwwIDE2MGMwLTE3LjcgMTQuMy0zMiAzMi0zMnptOTYgMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDEyOC02NCAwIDAtMTI4YzAtMTcuNyAxNC4zLTMyIDMyLTMyem05NiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMTI4LTY0IDAgMC0xMjhjMC0xNy43IDE0LjMtMzIgMzItMzJ6bTE5MiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMTI4LTY0IDAgMC0xMjhjMC0xNy43IDE0LjMtMzIgMzItMzJ6bTk2IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCAxMjgtNjQgMCAwLTEyOGMwLTE3LjcgMTQuMy0zMiAzMi0zMnoiXX0sSjlyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNoaWxkcmVuIixpY29uOls2NDAsNTEyLFtdLCJlNGUxIiwiTTE2MC41IDBhNjQgNjQgMCAxIDEgMCAxMjggNjQgNjQgMCAxIDEgMC0xMjh6bS03MiA0ODBsMC04MC0xNy44IDBjLTEwLjkgMC0xOC42LTEwLjctMTUuMi0yMS4xTDg2LjcgMjg1LjUgNTggMzIzLjNjLTEwLjcgMTQuMS0zMC44IDE2LjgtNDQuOCA2LjJTLTMuNyAyOTguNyA3IDI4NC43TDY1LjkgMjA3YzIyLjQtMjkuNiA1Ny41LTQ3IDk0LjYtNDdzNzIuMiAxNy40IDk0LjYgNDdMMzE0IDI4NC43YzEwLjcgMTQuMSA3LjkgMzQuMi02LjIgNDQuOHMtMzQuMiA3LjktNDQuOC02LjJsLTI4LjctMzcuOCAzMS4xIDkzLjRjMy41IDEwLjQtNC4zIDIxLjEtMTUuMiAyMS4xbC0xNy44IDAgMCA4MGMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTgwLTE2IDAgMCA4MGMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMnpNNDgwLjUgMGE2NCA2NCAwIDEgMSAwIDEyOCA2NCA2NCAwIDEgMSAwLTEyOHptLTggMzg0bDAgOTZjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC0xNzkuNS0xMi45IDIwLjVjLTkuNCAxNS0yOS4yIDE5LjQtNDQuMSAxMHMtMTkuNC0yOS4yLTEwLTQ0LjFsNTEuNy04Mi4xYzE3LjYtMjcuOSA0OC4zLTQ0LjkgODEuMi00NC45bDEyLjMgMGMzMyAwIDYzLjcgMTYuOSA4MS4yIDQ0LjlMNjE5LjYgMjg3YzkuNCAxNSA0LjkgMzQuNy0xMCA0NC4xcy0zNC43IDQuOS00NC4xLTEwbC0xMi45LTIwLjUgMCAxNzkuNWMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTk2LTE2IDB6Il19LE5UZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjaGFydC1saW5lIixpY29uOls1MTIsNTEyLFsibGluZS1jaGFydCJdLCJmMjAxIiwiTTY0IDY0YzAtMTcuNy0xNC4zLTMyLTMyLTMyUzAgNDYuMyAwIDY0TDAgNDAwYzAgNDQuMiAzNS44IDgwIDgwIDgwbDQwMCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMyTDgwIDQxNmMtOC44IDAtMTYtNy4yLTE2LTE2TDY0IDY0em00MDYuNiA4Ni42YzEyLjUtMTIuNSAxMi41LTMyLjggMC00NS4zcy0zMi44LTEyLjUtNDUuMyAwTDMyMCAyMTAuNyAyNjIuNiAxNTMuNGMtMTIuNS0xMi41LTMyLjgtMTIuNS00NS4zIDBsLTk2IDk2Yy0xMi41IDEyLjUtMTIuNSAzMi44IDAgNDUuM3MzMi44IDEyLjUgNDUuMyAwbDczLjQtNzMuNCA1Ny40IDU3LjRjMTIuNSAxMi41IDMyLjggMTIuNSA0NS4zIDBsMTI4LTEyOHoiXX0sZWdyPU5UZSxGVGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic3F1YXJlLWVudmVsb3BlIixpY29uOls0NDgsNTEyLFsiZW52ZWxvcGUtc3F1YXJlIl0sImYxOTkiLCJNNjQgMzJDMjguNyAzMiAwIDYwLjcgMCA5NkwwIDQxNmMwIDM1LjMgMjguNyA2NCA2NCA2NGwzMjAgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTMyMGMwLTM1LjMtMjguNy02NC02NC02NEw2NCAzMnpNMjA5LjEgMjY3LjlMMTA4LjQgMjA3LjRjLTcuNy00LjYtMTIuNC0xMi45LTEyLjQtMjEuOSAwLTE0LjEgMTEuNC0yNS41IDI1LjUtMjUuNWwyMDQuOSAwYzE0LjEgMCAyNS41IDExLjQgMjUuNSAyNS41IDAgOS00LjcgMTcuMy0xMi40IDIxLjlMMjM4LjkgMjY3LjljLTQuNSAyLjctOS42IDQuMS0xNC45IDQuMXMtMTAuNC0xLjQtMTQuOS00LjF6TTM1MiAyMzcuM2wwIDgyLjdjMCAxNy43LTE0LjMgMzItMzIgMzJsLTE5MiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTgyLjcgOTYuNyA1OEMyMDIuMSAzMDEgMjEzIDMwNCAyMjQgMzA0czIxLjktMyAzMS4zLTguN2w5Ni43LTU4eiJdfSx0Z3I9RlRlLE9UZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJiYW4tc21va2luZyIsaWNvbjpbNTEyLDUxMixbMTI4Njg1LCJzbW9raW5nLWJhbiJdLCJmNTRkIiwiTTk5LjUgMTQ0LjhsNzkuMiA3OS4yLTUwLjcgMGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJsMCAzMmMwIDE3LjcgMTQuMyAzMiAzMiAzMmwxNDYuNyAwIDkyLjUgOTIuNWMtMzEuNCAyMi40LTY5LjggMzUuNS0xMTEuMiAzNS41LTEwNiAwLTE5Mi04Ni0xOTItMTkyIDAtNDEuNSAxMy4xLTc5LjkgMzUuNS0xMTEuMnpNMzMzLjMgMjg4bC0zMi0zMiA4Mi43IDAgMCAzMi01MC43IDB6bTMyIDMybDE4LjcgMGMxNy43IDAgMzItMTQuMyAzMi0zMmwwLTMyYzAtMTcuNy0xNC4zLTMyLTMyLTMyTDI2OS4zIDIyNCAxNDQuOCA5OS41YzMxLjQtMjIuNCA2OS44LTM1LjUgMTExLjItMzUuNSAxMDYgMCAxOTIgODYgMTkyIDE5MiAwIDQxLjUtMTMuMSA3OS45LTM1LjUgMTExLjJMMzY1LjMgMzIwek0yNTYgNTEyYTI1NiAyNTYgMCAxIDAgMC01MTIgMjU2IDI1NiAwIDEgMCAwIDUxMnpNMjcyIDk2Yy04LjggMC0xNiA3LjItMTYgMTYgMCAyNi41IDIxLjUgNDggNDggNDhsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZzNy4yIDE2IDE2IDE2IDE2LTcuMiAxNi0xNmMwLTI2LjUtMjEuNS00OC00OC00OGwtMzIgMGMtOC44IDAtMTYtNy4yLTE2LTE2cy03LjItMTYtMTYtMTZ6Il19LHJncj1PVGUsYWdyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRydWNrLWZyb250IixpY29uOls0NDgsNTEyLFtdLCJlMmI3IiwiTTAgMTEyQzAgNjcuOCAzNS44IDMyIDgwIDMybDI4OCAwYzQ0LjIgMCA4MCAzNS44IDgwIDgwbDAgMjU2YzAgMjYuMi0xMi42IDQ5LjQtMzIgNjRsMCA0OGMwIDE3LjctMTQuMyAzMi0zMiAzMmwtMzIgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC0zMi0xOTIgMCAwIDMyYzAgMTcuNy0xNC4zIDMyLTMyIDMybC0zMiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTQ4QzEyLjYgNDE3LjQgMCAzOTQuMiAwIDM2OEwwIDExMnptOTYgODBsMCA2NCAyNTYgMCAwLTY0YzAtMTcuNy0xNC4zLTMyLTMyLTMybC0xOTIgMGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJ6bTMyIDE2MGEzMiAzMiAwIDEgMCAtNjQgMCAzMiAzMiAwIDEgMCA2NCAwem0yMjQgMzJhMzIgMzIgMCAxIDAgMC02NCAzMiAzMiAwIDEgMCAwIDY0eiJdfSxsbGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYnVpbGRpbmciLGljb246WzM4NCw1MTIsWzEyNzk3MCw2MTY4N10sImYxYWQiLCJNNjQgMEMyOC43IDAgMCAyOC43IDAgNjRMMCA0NDhjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMjU2IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zODRjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMHpNMTc2IDM1MmwzMiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgODAtOTYgMCAwLTgwYzAtMTcuNyAxNC4zLTMyIDMyLTMyek05NiAxMTJjMC04LjggNy4yLTE2IDE2LTE2bDMyIDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMzJjMCA4LjgtNy4yIDE2LTE2IDE2bC0zMiAwYy04LjggMC0xNi03LjItMTYtMTZsMC0zMnpNMjQwIDk2bDMyIDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMzJjMCA4LjgtNy4yIDE2LTE2IDE2bC0zMiAwYy04LjggMC0xNi03LjItMTYtMTZsMC0zMmMwLTguOCA3LjItMTYgMTYtMTZ6TTk2IDI0MGMwLTguOCA3LjItMTYgMTYtMTZsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyem0xNDQtMTZsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyYzAtOC44IDcuMi0xNiAxNi0xNnoiXX0saWdyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJ1bGxzZXllIixpY29uOls1MTIsNTEyLFtdLCJmMTQwIiwiTTQ0OCAyNTZhMTkyIDE5MiAwIDEgMCAtMzg0IDAgMTkyIDE5MiAwIDEgMCAzODQgMHpNMCAyNTZhMjU2IDI1NiAwIDEgMSA1MTIgMCAyNTYgMjU2IDAgMSAxIC01MTIgMHptMjU2IDgwYTgwIDgwIDAgMSAwIDAtMTYwIDgwIDgwIDAgMSAwIDAgMTYwem0wLTIyNGExNDQgMTQ0IDAgMSAxIDAgMjg4IDE0NCAxNDQgMCAxIDEgMC0yODh6TTIyNCAyNTZhMzIgMzIgMCAxIDEgNjQgMCAzMiAzMiAwIDEgMSAtNjQgMHoiXX0sUlRlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFycm93LWxlZnQtbG9uZyIsaWNvbjpbNTc2LDUxMixbImxvbmctYXJyb3ctbGVmdCJdLCJmMTc3IiwiTTkuNCAyMzMuNGMtMTIuNSAxMi41LTEyLjUgMzIuOCAwIDQ1LjNsMTI4IDEyOGMxMi41IDEyLjUgMzIuOCAxMi41IDQ1LjMgMHMxMi41LTMyLjggMC00NS4zTDEwOS4zIDI4OCA1NDQgMjg4YzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC00MzQuNyAwIDczLjQtNzMuNGMxMi41LTEyLjUgMTIuNS0zMi44IDAtNDUuM3MtMzIuOC0xMi41LTQ1LjMgMGwtMTI4IDEyOHoiXX0sb2dyPVJUZSxuZ3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2hlc3Mtcm9vayIsaWNvbjpbMzg0LDUxMixbOTgyMF0sImY0NDciLCJNMCAzMkwwIDEzMy41YzAgMTcgNi43IDMzLjMgMTguNyA0NS4zTDY0IDIyNCA2NCAzODQgNy44IDQ1NC4zQzIuNyA0NjAuNiAwIDQ2OC40IDAgNDc2LjUgMCA0OTYuMSAxNS45IDUxMiAzNS41IDUxMmwzMTIuOSAwYzE5LjYgMCAzNS41LTE1LjkgMzUuNS0zNS41IDAtOC4xLTIuNy0xNS45LTcuOC0yMi4ybC01Ni4yLTcwLjMgMC0xNjAgNDUuMy00NS4zYzEyLTEyIDE4LjctMjguMyAxOC43LTQ1LjNMMzg0IDMyYzAtMTcuNy0xNC4zLTMyLTMyLTMyTDMyMCAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMmwwIDMyLTQ4IDAgMC0zMmMwLTE3LjctMTQuMy0zMi0zMi0zMkwxNzYgMGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJsMCAzMi00OCAwIDAtMzJDOTYgMTQuMyA4MS43IDAgNjQgMEwzMiAwQzE0LjMgMCAwIDE0LjMgMCAzMnoiXX0sc2dyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJsZW5kZXItcGhvbmUiLGljb246WzU3Niw1MTIsW10sImY2YjYiLCJNMTUxLjQgMTMuMmMxMC4yIDUuOCAxNC41IDE4LjQgMTAgMjkuM0wxMzguMiA5OC44Yy0zLjkgOS42LTEzLjcgMTUuNC0yNCAxNC40bC0yMC4yLTJDNzguNyAxNTIuOSA3OCAxOTguOSA5MS45IDI0MS4xbDIyLjQtMi4yYzEwLjMtMSAyMCA0LjggMjQgMTQuNGwyMy4yIDU2LjNjNC41IDEwLjkgLjIgMjMuNC0xMCAyOS4zbC0yLjkgMS42Yy0zMy42IDE5LjItODEuNyAxNi4yLTEwNi4yLTIxLjYtNTYuMy04Ni42LTU2LjMtMTk5LjEgMC0yODUuNyAyNC42LTM3LjcgNzIuNy00MC43IDEwNi4yLTIxLjZsMi45IDEuNnpNMjI0IDMzNkwxOTMuNyAxNy41QzE5Mi44IDguMSAyMDAuMiAwIDIwOS42IDBsMzI0IDBjMjEuMyAwIDM2LjYgMjAuMyAzMC44IDQwLjhMNTUzLjEgODAgNDQwIDgwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDk5LjQgMC0xOC4zIDY0LTgxLjEgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGw2Ny40IDAtMjcuNCA5Ni0yNTYgMHptOCA0OGwyNDAgMGMyMi4xIDAgNDAgMTcuOSA0MCA0MGwwIDQ4YzAgMjIuMS0xNy45IDQwLTQwIDQwbC0yNDAgMGMtMjIuMSAwLTQwLTE3LjktNDAtNDBsMC00OGMwLTIyLjEgMTcuOS00MCA0MC00MHptMTIwIDg4YTI0IDI0IDAgMSAwIDAtNDggMjQgMjQgMCAxIDAgMCA0OHoiXX0sQlRlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFycm93LXR1cm4tdXAiLGljb246WzM4NCw1MTIsWyJsZXZlbC11cCJdLCJmMTQ4IiwiTTMyIDQ0OGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmw5NiAwYzUzIDAgOTYtNDMgOTYtOTZsMC0zMDYuNyA3My40IDczLjRjMTIuNSAxMi41IDMyLjggMTIuNSA0NS4zIDBzMTIuNS0zMi44IDAtNDUuM2wtMTI4LTEyOGMtMTIuNS0xMi41LTMyLjgtMTIuNS00NS4zIDBsLTEyOCAxMjhjLTEyLjUgMTIuNS0xMi41IDMyLjggMCA0NS4zczMyLjggMTIuNSA0NS4zIDBMMTYwIDEwOS4zIDE2MCA0MTZjMCAxNy43LTE0LjMgMzItMzIgMzJsLTk2IDB6Il19LGxncj1CVGUsY2dyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJpY3ljbGUiLGljb246WzY0MCw1MTIsWzEyODY5MF0sImYyMDYiLCJNMzMxLjcgNDMuM0MzMzYgMzYuMyAzNDMuNyAzMiAzNTIgMzJsMTA0IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTY1LjYgMCA3Mi4yIDE0OC40YzEwLjctMi45IDIxLjktNC40IDMzLjQtNC40IDcwLjcgMCAxMjggNTcuMyAxMjggMTI4cy01Ny4zIDEyOC0xMjggMTI4LTEyOC01Ny4zLTEyOC0xMjhjMC00MiAyMC4yLTc5LjIgNTEuNC0xMDIuNmwtMjAuNC00MS45LTczLjUgMTQ3Yy0yLjMgNC44LTYuMyA4LjgtMTEuNCAxMS4yLS42IC4zLTEuMiAuNS0xLjggLjctMi45IDEuMS01LjkgMS42LTguOSAxLjVMMjcxIDM2OGMtNy45IDYzLjEtNjEuNyAxMTItMTI3IDExMi03MC43IDAtMTI4LTU3LjMtMTI4LTEyOFM3My4zIDIyNCAxNDQgMjI0YzEwLjggMCAyMS4yIDEuMyAzMS4yIDMuOGwyOC41LTU2LjktMTEuNS0yNi45LTQwLjIgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNGw1NiAwYzkuNiAwIDE4LjMgNS43IDIyLjEgMTQuNWwxNC4zIDMzLjUgMTIzLjcgMC0zNy43LTc3LjVjLTMuNi03LjQtMy4yLTE2LjIgMS4yLTIzLjJ6TTIyOC41IDIyOC43bC00NS42IDkxLjMgODQuOCAwLTM5LjEtOTEuM3pNMzA1LjcgMjg3bDQ3LjUtOTUtODguMiAwIDQwLjcgOTV6bTE2OC43IDc1LjVsLTI5LjctNjFjLTEyLjggMTMtMjAuNyAzMC44LTIwLjcgNTAuNSAwIDM5LjggMzIuMiA3MiA3MiA3MnM3Mi0zMi4yIDcyLTcyLTMyLjItNzItNzItNzJjLTIuNyAwLTUuNSAuMi04LjEgLjVsMjkuNyA2MWM1LjggMTEuOSAuOCAyNi4zLTExLjEgMzIuMXMtMjYuMyAuOC0zMi4xLTExLjF6TTE0OS4yIDM2OGMtMjAuMiAwLTMzLjQtMjEuMy0yNC4zLTM5LjRsMjQuMi00OC41Yy0xLjctLjEtMy40LS4yLTUuMS0uMi0zOS44IDAtNzIgMzIuMi03MiA3MnMzMi4yIDcyIDcyIDcyYzM0LjMgMCA2Mi45LTIzLjkgNzAuMi01NmwtNjUgMHoiXX0sSFRlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNpcmNsZS1hcnJvdy1kb3duIixpY29uOls1MTIsNTEyLFsiYXJyb3ctY2lyY2xlLWRvd24iXSwiZjBhYiIsIk0yNTYgNTEyYTI1NiAyNTYgMCAxIDAgMC01MTIgMjU2IDI1NiAwIDEgMCAwIDUxMnpNMjM5IDM3N2wtODAtODBjLTkuNC05LjQtOS40LTI0LjYgMC0zMy45czI0LjYtOS40IDMzLjkgMGwzOSAzOSAwLTE1MC4xYzAtMTMuMyAxMC43LTI0IDI0LTI0czI0IDEwLjcgMjQgMjRsMCAxNTAuMSAzOS0zOWM5LjQtOS40IDI0LjYtOS40IDMzLjkgMHM5LjQgMjQuNiAwIDMzLjlsLTgwIDgwYy05LjQgOS40LTI0LjYgOS40LTMzLjkgMHoiXX0sZGdyPUhUZSxSdz17cHJlZml4OiJmYXMiLGljb25OYW1lOiJnZWFyIixpY29uOls1MTIsNTEyLFs5ODgxLCJjb2ciXSwiZjAxMyIsIk0xOTUuMSA5LjVDMTk4LjEtNS4zIDIxMS4yLTE2IDIyNi40LTE2bDU5LjggMGMxNS4yIDAgMjguMyAxMC43IDMxLjMgMjUuNUwzMzIgNzkuNWMxNC4xIDYgMjcuMyAxMy43IDM5LjMgMjIuOGw2Ny44LTIyLjVjMTQuNC00LjggMzAuMiAxLjIgMzcuOCAxNC40bDI5LjkgNTEuOGM3LjYgMTMuMiA0LjkgMjkuOC02LjUgMzkuOUw0NDcgMjMzLjNjLjkgNy40IDEuMyAxNSAxLjMgMjIuN3MtLjUgMTUuMy0xLjMgMjIuN2w1My40IDQ3LjVjMTEuNCAxMC4xIDE0IDI2LjggNi41IDM5LjlsLTI5LjkgNTEuOGMtNy42IDEzLjEtMjMuNCAxOS4yLTM3LjggMTQuNGwtNjcuOC0yMi41Yy0xMi4xIDkuMS0yNS4zIDE2LjctMzkuMyAyMi44bC0xNC40IDY5LjljLTMuMSAxNC45LTE2LjIgMjUuNS0zMS4zIDI1LjVsLTU5LjggMGMtMTUuMiAwLTI4LjMtMTAuNy0zMS4zLTI1LjVsLTE0LjQtNjkuOWMtMTQuMS02LTI3LjItMTMuNy0zOS4zLTIyLjhMNzMuNSA0MzIuM2MtMTQuNCA0LjgtMzAuMi0xLjItMzcuOC0xNC40TDUuOCAzNjYuMWMtNy42LTEzLjItNC45LTI5LjggNi41LTM5LjlsNTMuNC00Ny41Yy0uOS03LjQtMS4zLTE1LTEuMy0yMi43cy41LTE1LjMgMS4zLTIyLjdMMTIuMyAxODUuOGMtMTEuNC0xMC4xLTE0LTI2LjgtNi41LTM5LjlMMzUuNyA5NC4xYzcuNi0xMy4yIDIzLjQtMTkuMiAzNy44LTE0LjRsNjcuOCAyMi41YzEyLjEtOS4xIDI1LjMtMTYuNyAzOS4zLTIyLjhMMTk1LjEgOS41ek0yNTYuMyAzMzZhODAgODAgMCAxIDAgLS42LTE2MCA4MCA4MCAwIDEgMCAuNiAxNjB6Il19LHVncj1SdyxmZ3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibWFycy1hbmQtdmVudXMtYnVyc3QiLGljb246WzY0MCw1MTIsW10sImU1MjMiLCJNNDY0LTMyYzAgMTcuNyAxNC4zIDMyIDMyIDMybDM0LjcgMC02MyA2M2MtMjguNC0xOS41LTYyLjctMzEtOTkuOC0zMS05Ny4yIDAtMTc2IDc4LjgtMTc2IDE3NiAwIDg2LjMgNjIuMSAxNTguMSAxNDQgMTczLjFsMCAzNC45LTMyIDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsMzIgMCAwIDMyYzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0zMiAzMiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC0zMiAwIDAtMzQuOWM4MS45LTE1IDE0NC04Ni44IDE0NC0xNzMuMSAwLTM3LTExLjQtNzEuNC0zMS05OS44bDYzLTYzIDAgMzQuN2MwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMTEyYzAtMTcuNy0xNC4zLTMyLTMyLTMyTDQ5Ni02NGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJ6TTM2OCA5NmExMTIgMTEyIDAgMSAxIDAgMjI0IDExMiAxMTIgMCAxIDEgMC0yMjR6TTE5MC45LTIxLjlDMTg4LjQtMjggMTgyLjYtMzIgMTc2LTMycy0xMi40IDQtMTQuOSAxMC4xbC0yOS40IDc0LTc2LjItMjMuMWMtNi4zLTEuOS0xMy4xIC4yLTE3LjIgNS4zUzMzLjggNDYuNSAzNyA1Mi4ybDM5LjUgNjkuMS02NS42IDQ1LjFjLTUuNCAzLjctOCAxMC4zLTYuNSAxNi43czYuNyAxMS4yIDEzLjEgMTIuMmw3OC43IDEyLjItNS42IDc5LjRjLS41IDYuNSAzLjEgMTIuNyA5IDE1LjVzMTIuOSAxLjggMTcuOC0yLjZMMTUyLjEgMjY4Yy01LjMtMTkuMS04LjEtMzkuMi04LjEtNjAgMC02NS40IDI4LTEyNC4yIDcyLjYtMTY1LjFMMTkwLjktMjEuOXoiXX0scGdyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im90dGVyIixpY29uOls2NDAsNTEyLFsxMjk0NDZdLCJmNzAwIiwiTTE4MS41IDE5Ny4xbDEyLjkgNi40YzUuOSAzIDEyLjQgNC41IDE5LjEgNC41IDIzLjUgMCA0Mi42LTE5LjEgNDIuNi00Mi42bDAtMjEuNGMwLTM1LjMtMjguNy02NC02NC02NGwtNjQgMGMtMzUuMyAwLTY0IDI4LjctNjQgNjRsMCAyMS40YzAgMjMuNSAxOS4xIDQyLjYgNDIuNiA0Mi42IDYuNiAwIDEzLjEtMS41IDE5LjEtNC41IDkuMy00LjcgMTYuNC04LjIgMjEuMi0xMC42TDEzNS4xIDE4NWMtNC41LTMtNy4xLTgtNy4xLTEzLjNsMC0zLjdjMC0xMy4zIDEwLjctMjQgMjQtMjRsMTYgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNGwwIDMuN2MwIDUuMy0yLjcgMTAuMy03LjEgMTMuM2wtMTEuOCA3LjkgOC40IDQuMnptLTguNiA0OS40bC0xMi45LTYuNC0xMi45IDYuNGMtMTIuNiA2LjMtMjYuNSA5LjYtNDAuNSA5LjYtMy42IDAtNy4xLS4yLTEwLjYtLjZsMCAuNmMwIDM1LjMgMjguNyA2NCA2NCA2NGw2NCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybDE2MCAwIDAtNjRjMC0yMy43IDEyLjktNDQuNCAzMi01NS40IDkuNC01LjQgMjAuMy04LjYgMzItOC42bDAtMTZjMC0yNi41IDIxLjUtNDggNDgtNDggOC44IDAgMTYgNy4yIDE2IDE2bDAgOTZjMCA4LjggNy4yIDE2IDE2IDE2czE2LTcuMiAxNi0xNmwwLTk5LjdjMC00OC4yLTMwLjgtOTEtNzYuNi0xMDYuM2wtOC41LTIuOGMtOC0yLjctMTIuNi0xMS4xLTEwLjQtMTkuM3MxMC4zLTEzLjIgMTguNi0xMS42bDE5LjkgNEM1NzYgODYuMSA2NDAgMTY0LjIgNjQwIDI1NC45bDAgMS4xIDAgMGMwIDEyMy43LTEwMC4zIDIyNC0yMjQgMjI0bC0xNjAuNiAwQzEzMiA0ODAgMzIgMzgwIDMyIDI1Ni42bDAtMzkuOGMtMTAuMS0xNC42LTE2LTMyLjMtMTYtNTEuNGwwLTIxLjQgMC0xLjRDNi43IDEzOS4zIDAgMTMwLjUgMCAxMjAgMCAxMDYuNyAxMC43IDk2IDI0IDk2bDIuOCAwQzQ0LjggNTguMiA4My4zIDMyIDEyOCAzMmw2NCAwYzQ0LjcgMCA4My4yIDI2LjIgMTAxLjIgNjRsMi44IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjQgMCAxMC41LTYuNyAxOS4zLTE2IDIyLjZsMCAxLjQgMCAyMS40YzAgMS40IDAgMi44LS4xIDQuMyAxMi02LjIgMjUuNy05LjYgNDAuMS05LjZsOCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC04IDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0bDAgOCA1Ni40IDBjLTE1LjIgMTctMjQuNCAzOS40LTI0LjQgNjRsLTMyIDBjLTQyLjMgMC03OC4yLTI3LjQtOTEtNjUuMy01LjEgLjktMTAuMyAxLjMtMTUuNiAxLjMtMTQuMSAwLTI3LjktMy4zLTQwLjUtOS42ek05NiAxMjhhMTYgMTYgMCAxIDEgMCAzMiAxNiAxNiAwIDEgMSAwLTMyem0xMTIgMTZhMTYgMTYgMCAxIDEgMzIgMCAxNiAxNiAwIDEgMSAtMzIgMHoiXX0scVRlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNpcmNsZS1jaGV2cm9uLWxlZnQiLGljb246WzUxMiw1MTIsWyJjaGV2cm9uLWNpcmNsZS1sZWZ0Il0sImYxMzciLCJNNTEyIDI1NmEyNTYgMjU2IDAgMSAwIC01MTIgMCAyNTYgMjU2IDAgMSAwIDUxMiAwek0yNzEgMTM1YzkuNC05LjQgMjQuNi05LjQgMzMuOSAwczkuNCAyNC42IDAgMzMuOWwtODcgODcgODcgODdjOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlzLTI0LjYgOS40LTMzLjkgMEwxNjcgMjczYy05LjQtOS40LTkuNC0yNC42IDAtMzMuOUwyNzEgMTM1eiJdfSxoZ3I9cVRlLGpUZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjaXJjbGUtcXVlc3Rpb24iLGljb246WzUxMiw1MTIsWzYyMTA4LCJxdWVzdGlvbi1jaXJjbGUiXSwiZjA1OSIsIk0yNTYgNTEyYTI1NiAyNTYgMCAxIDAgMC01MTIgMjU2IDI1NiAwIDEgMCAwIDUxMnptMC0zMzZjLTE3LjcgMC0zMiAxNC4zLTMyIDMyIDAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0YzAtNDQuMiAzNS44LTgwIDgwLTgwczgwIDM1LjggODAgODBjMCA0Ny4yLTM2IDY3LjItNTYgNzQuNWwwIDMuOGMwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNGwwLTguMWMwLTIwLjUgMTQuOC0zNS4yIDMwLjEtNDAuMiA2LjQtMi4xIDEzLjItNS41IDE4LjItMTAuMyA0LjMtNC4yIDcuNy0xMCA3LjctMTkuNiAwLTE3LjctMTQuMy0zMi0zMi0zMnpNMjI0IDM2OGEzMiAzMiAwIDEgMSA2NCAwIDMyIDMyIDAgMSAxIC02NCAweiJdfSxtZ3I9alRlLGdncj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ3YWxraWUtdGFsa2llIixpY29uOlszODQsNTEyLFtdLCJmOGVmIiwiTTg4LTMyYzEzLjMgMCAyNCAxMC43IDI0IDI0bDAgNzIgNDggMGMwLTE3LjcgMTQuMy0zMiAzMi0zMnMzMiAxNC4zIDMyIDMybDMyIDBjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwxNiAwYzI2LjUgMCA0OCAyMS41IDQ4IDQ4bDAgMTYwLjljMCA5LjktMi4zIDE5LjctNi44IDI4LjZsLTIwLjIgNDAuNGMtMy4zIDYuNy01LjEgMTQtNS4xIDIxLjVsMCA4NC43YzAgMzUuMy0yOC43IDY0LTY0IDY0TDk2IDUxMmMtMzUuMyAwLTY0LTI4LjctNjQtNjRsMC04NC43YzAtNy41LTEuNy0xNC44LTUuMS0yMS41TDYuOCAzMDEuNUMyLjMgMjkyLjYgMCAyODIuOCAwIDI3Mi45TDAgMTEyQzAgODUuNSAyMS41IDY0IDQ4IDY0bDE2IDAgMC03MmMwLTEzLjMgMTAuNy0yNCAyNC0yNHptMzIgMTc2Yy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDE0NCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC0xNDQgMHptMCA5NmMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwxNDQgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtMTQ0IDB6Il19LFZUZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ1c2VyLWdyb3VwIixpY29uOls1NzYsNTEyLFsxMjgxMDEsInVzZXItZnJpZW5kcyJdLCJmNTAwIiwiTTY0IDEyOGExMTIgMTEyIDAgMSAxIDIyNCAwIDExMiAxMTIgMCAxIDEgLTIyNCAwek0wIDQ2NGMwLTk3LjIgNzguOC0xNzYgMTc2LTE3NnMxNzYgNzguOCAxNzYgMTc2bDAgNmMwIDIzLjItMTguOCA0Mi00MiA0Mkw0MiA1MTJjLTIzLjIgMC00Mi0xOC44LTQyLTQybDAtNnpNNDMyIDY0YTk2IDk2IDAgMSAxIDAgMTkyIDk2IDk2IDAgMSAxIDAtMTkyem0wIDI0MGM3OS41IDAgMTQ0IDY0LjUgMTQ0IDE0NGwwIDIyLjRjMCAyMy0xOC42IDQxLjYtNDEuNiA0MS42bC0xNDQuOCAwYzYuNi0xMi41IDEwLjQtMjYuOCAxMC40LTQybDAtNmMwLTUxLjUtMTcuNC05OC45LTQ2LjUtMTM2LjcgMjIuNi0xNC43IDQ5LjYtMjMuMyA3OC41LTIzLjN6Il19LHhncj1WVGUsVVRlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhvdXNlLWNoaW1uZXkiLGljb246WzUxMiw1MTIsWzYzNDk5LCJob21lLWxnIl0sImUzYWYiLCJNMjM0LjIgOC42YzEyLjMtMTEuNCAzMS4zLTExLjQgNDMuNSAwTDM2OCA5Mi4zIDM2OCA4MGMwLTE3LjcgMTQuMy0zMiAzMi0zMmwzMiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMTAxLjUgMzcuOCAzNS4xYzkuNiA5IDEyLjggMjIuOSA4IDM1LjFTNDkzLjIgMjcyIDQ4MCAyNzJsLTE2IDAgMCAxNzZjMCAzNS4zLTI4LjcgNjQtNjQgNjRsLTI4OCAwYy0zNS4zIDAtNjQtMjguNy02NC02NGwwLTE3Ni0xNiAwYy0xMy4yIDAtMjUtOC4xLTI5LjgtMjAuM3MtMS42LTI2LjIgOC0zNS4xbDIyNC0yMDh6TTI0MCAzMjBjLTI2LjUgMC00OCAyMS41LTQ4IDQ4bDAgOTYgMTI4IDAgMC05NmMwLTI2LjUtMjEuNS00OC00OC00OGwtMzIgMHoiXX0sYmdyPVVUZSxXVGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicmlnaHQtZnJvbS1icmFja2V0IixpY29uOls1MTIsNTEyLFsic2lnbi1vdXQtYWx0Il0sImYyZjUiLCJNNTA1IDI3M2M5LjQtOS40IDkuNC0yNC42IDAtMzMuOUwzNjEgOTVjLTYuOS02LjktMTcuMi04LjktMjYuMi01LjJTMzIwIDEwMi4zIDMyMCAxMTJsMCA4MC0xMTIgMGMtMjYuNSAwLTQ4IDIxLjUtNDggNDhsMCAzMmMwIDI2LjUgMjEuNSA0OCA0OCA0OGwxMTIgMCAwIDgwYzAgOS43IDUuOCAxOC41IDE0LjggMjIuMnMxOS4zIDEuNyAyNi4yLTUuMkw1MDUgMjczek0xNjAgOTZjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJMOTYgMzJDNDMgMzIgMCA3NSAwIDEyOEwwIDM4NGMwIDUzIDQzIDk2IDk2IDk2bDY0IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTY0IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtMjU2YzAtMTcuNyAxNC4zLTMyIDMyLTMybDY0IDB6Il19LHZncj1XVGUseWdyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZpbGUiLGljb246WzM4NCw1MTIsWzEyODE5NiwxMjg0NTksNjE0NjJdLCJmMTViIiwiTTY0IDBDMjguNyAwIDAgMjguNyAwIDY0TDAgNDQ4YzAgMzUuMyAyOC43IDY0IDY0IDY0bDI1NiAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMjc3LjVjMC0xNy02LjctMzMuMy0xOC43LTQ1LjNMMjU4LjcgMTguN0MyNDYuNyA2LjcgMjMwLjUgMCAyMTMuNSAwTDY0IDB6TTMyNS41IDE3NkwyMzIgMTc2Yy0xMy4zIDAtMjQtMTAuNy0yNC0yNEwyMDggNTguNSAzMjUuNSAxNzZ6Il19LHdncj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwbGFuZS1zbGFzaCIsaWNvbjpbNTc2LDUxMixbXSwiZTA2OSIsIk00MS0yNC45Yy05LjQtOS40LTI0LjYtOS40LTMzLjkgMFMtMi4zLS4zIDcgOS4xbDUyOCA1MjhjOS40IDkuNCAyNC42IDkuNCAzMy45IDBzOS40LTI0LjYgMC0zMy45bC0xODMuNC0xODMuNCA3LjEtNy43IDEyNy4zIDBjMzAuOSAwIDU2LTI1LjEgNTYtNTZzLTI1LjEtNTYtNTYtNTZMMzkyLjcgMjAwIDIzMy41IDI2LjRDMjI3LjUgMTkuOCAyMTguOSAxNiAyMDkuOSAxNmwtNDMuNyAwYy0xMC45IDAtMTguNiAxMC43LTE1LjIgMjEuMUwxNzUuMSAxMDkuMiA0MS0yNC45ek0xMzAuMiAyMDBsLTI0LjYgMC01Mi44LTY2Yy0zLTMuOC03LjYtNi0xMi41LTZsLTE5LjggMGMtMTAuNCAwLTE4IDkuOC0xNS41IDE5LjlMMzIgMjU2IDUgMzY0LjFDMi40IDM3NC4yIDEwLjEgMzg0IDIwLjUgMzg0bDE5LjggMGM0LjkgMCA5LjUtMi4yIDEyLjUtNmw1Mi44LTY2IDk5LjcgMC01NC4zIDE2Mi45Yy0zLjUgMTAuNCA0LjMgMjEuMSAxNS4yIDIxLjFsNDMuNyAwYzkgMCAxNy41LTMuOCAyMy42LTEwLjRMMzIwLjcgMzkwLjUgMTMwLjIgMjAweiJdfSxNZ3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2xvdWQtc2hvd2Vycy1oZWF2eSIsaWNvbjpbNTEyLDUxMixbXSwiZjc0MCIsIk05NiAzMjBjLTUzIDAtOTYtNDMtOTYtOTYgMC00Mi41IDI3LjYtNzguNiA2NS45LTkxLjItMS4zLTYuNy0xLjktMTMuNy0xLjktMjAuOCAwLTYxLjkgNTAuMS0xMTIgMTEyLTExMiA0My4xIDAgODAuNSAyNC4zIDk5LjIgNjAgMTQuNy0xNy4xIDM2LjUtMjggNjAuOC0yOCA0NC4yIDAgODAgMzUuOCA4MCA4MCAwIDUuNS0uNiAxMC44LTEuNiAxNiAuNSAwIDEuMSAwIDEuNiAwIDUzIDAgOTYgNDMgOTYgOTZzLTQzIDk2LTk2IDk2TDk2IDMyMHptNi44IDc5LjZsLTMyIDk2QzY2LjYgNTA4LjIgNTMgNTE1IDQwLjQgNTEwLjhTMjEgNDkzIDI1LjIgNDgwLjRsMzItOTZDNjEuNCAzNzEuOCA3NSAzNjUgODcuNiAzNjkuMlMxMDcgMzg3IDEwMi44IDM5OS42em0xMjAgMGwtMzIgOTZjLTQuMiAxMi42LTE3LjggMTkuNC0zMC40IDE1LjJTMTQxIDQ5MyAxNDUuMiA0ODAuNGwzMi05NmM0LjItMTIuNiAxNy44LTE5LjQgMzAuNC0xNS4yUzIyNyAzODcgMjIyLjggMzk5LjZ6bTExMiAwbC0zMiA5NmMtNC4yIDEyLjYtMTcuOCAxOS40LTMwLjQgMTUuMlMyNTMgNDkzIDI1Ny4yIDQ4MC40bDMyLTk2YzQuMi0xMi42IDE3LjgtMTkuNCAzMC40LTE1LjJTMzM5IDM4NyAzMzQuOCAzOTkuNnptMTIwIDBsLTMyIDk2Yy00LjIgMTIuNi0xNy44IDE5LjQtMzAuNCAxNS4yUzM3MyA0OTMgMzc3LjIgNDgwLjRsMzItOTZjNC4yLTEyLjYgMTcuOC0xOS40IDMwLjQtMTUuMlM0NTkgMzg3IDQ1NC44IDM5OS42eiJdfSxrZ3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGVyc29uLWZhbGxpbmciLGljb246WzUxMiw1MTIsW10sImU1NDYiLCJNMzIwIDMyYzAtMTcuNy0xNC4zLTMyLTMyLTMycy0zMiAxNC4zLTMyIDMybDAgNS40YzAgNDUtMjMuNiA4Ni42LTYyLjEgMTA5LjhsLTQuNiAyLjhDMTMxLjQgMTg0LjcgOTYgMjQ3LjEgOTYgMzE0LjZMOTYgMzg0YzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC02OS40YzAtMTYuNyAzLjMtMzMgOS40LTQ4TDM1OS4yIDUwMC4yYzExLjEgMTMuNyAzMS4zIDE1LjggNDUgNC43czE1LjgtMzEuMyA0LjctNDVMMjk1LjIgMzIwIDQwMCAzMjAgNDM4LjQgMzcxLjJjMTAuNiAxNC4xIDMwLjcgMTcgNDQuOCA2LjRzMTctMzAuNyA2LjQtNDQuOGwtNDMuMi01Ny42QzQzNy4zIDI2My4xIDQyMy4xIDI1NiA0MDggMjU2bC04OSAwLTYyLjktNzUuNWM0MC4zLTM2IDYzLjktODcuOSA2My45LTE0My4xbDAtNS40ek0xMDQgMTQ0YTU2IDU2IDAgMSAwIDAtMTEyIDU2IDU2IDAgMSAwIDAgMTEyeiJdfSxHVGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidHVybi1kb3duIixpY29uOlszODQsNTEyLFsxMDU0OSwibGV2ZWwtZG93bi1hbHQiXSwiZjNiZSIsIk0xNjkuNCA1MDIuNmMxMi41IDEyLjUgMzIuOCAxMi41IDQ1LjMgMGwxMjgtMTI4YzkuMi05LjIgMTEuOS0yMi45IDYuOS0zNC45UzMzMi45IDMyMCAzMjAgMzIwbC02NCAwIDAtMTYwQzI1NiA3MS42IDE4NC40IDAgOTYgMEwzMiAwQzE0LjMgMCAwIDE0LjMgMCAzMkwwIDk2YzAgMTcuNyAxNC4zIDMyIDMyIDMybDY0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCAxNjAtNjQgMGMtMTIuOSAwLTI0LjYgNy44LTI5LjYgMTkuOHMtMi4yIDI1LjcgNi45IDM0LjlsMTI4IDEyOHoiXX0sU2dyPUdUZSxZVGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidXAtcmlnaHQtYW5kLWRvd24tbGVmdC1mcm9tLWNlbnRlciIsaWNvbjpbNTEyLDUxMixbImV4cGFuZC1hbHQiXSwiZjQyNCIsIk0zNDQgMEw0ODggMGMxMy4zIDAgMjQgMTAuNyAyNCAyNGwwIDE0NGMwIDkuNy01LjggMTguNS0xNC44IDIyLjJzLTE5LjMgMS43LTI2LjItNS4ybC0zOS0zOS04NyA4N2MtOS40IDkuNC0yNC42IDkuNC0zMy45IDBsLTMyLTMyYy05LjQtOS40LTkuNC0yNC42IDAtMzMuOWw4Ny04Ny0zOS0zOWMtNi45LTYuOS04LjktMTcuMi01LjItMjYuMlMzMzQuMyAwIDM0NCAwek0xNjggNTEyTDI0IDUxMmMtMTMuMyAwLTI0LTEwLjctMjQtMjRMMCAzNDRjMC05LjcgNS44LTE4LjUgMTQuOC0yMi4yUzM0LjEgMzIwLjIgNDEgMzI3bDM5IDM5IDg3LTg3YzkuNC05LjQgMjQuNi05LjQgMzMuOSAwbDMyIDMyYzkuNCA5LjQgOS40IDI0LjYgMCAzMy45bC04NyA4NyAzOSAzOWM2LjkgNi45IDguOSAxNy4yIDUuMiAyNi4yUzE3Ny43IDUxMiAxNjggNTEyeiJdfSx6Z3I9WVRlLENncj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ1c2VyLXRhZyIsaWNvbjpbNjQwLDUxMixbXSwiZjUwNyIsIk0yNTYuMSA4YTEyMCAxMjAgMCAxIDEgMCAyNDAgMTIwIDEyMCAwIDEgMSAwLTI0MHpNMjI2LjQgMzA0bDU5LjQgMGM2LjcgMCAxMy4yIC40IDE5LjcgMS4xLS45IDQuOS0xLjQgOS45LTEuNCAxNWwwIDkyLjFjMCAyNS41IDEwLjEgNDkuOSAyOC4xIDY3LjlsMzEuOSAzMS45LTI4Ni4zIDBjLTE2LjQgMC0yOS43LTEzLjMtMjkuNy0yOS43IDAtOTguNSA3OS44LTE3OC4zIDE3OC4zLTE3OC4zek0zNTIuMSA0MTIuMmwwLTkyLjFjMC0xNy43IDE0LjMtMzIgMzItMzJsOTIuMSAwYzEyLjcgMCAyNC45IDUuMSAzMy45IDE0LjFsOTYgOTZjMTguNyAxOC43IDE4LjcgNDkuMSAwIDY3LjlsLTc2LjEgNzYuMWMtMTguNyAxOC43LTQ5LjEgMTguNy02Ny45IDBsLTk2LTk2Yy05LTktMTQuMS0yMS4yLTE0LjEtMzMuOXptMTA0LTQ0LjJhMjQgMjQgMCAxIDAgLTQ4IDAgMjQgMjQgMCAxIDAgNDggMHoiXX0sX2dyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhhbmQtc3BhcmtsZXMiLGljb246WzY0MCw1MTIsW10sImUwNWQiLCJNMzIwIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCAyMDhjMCA4LjggNy4yIDE2IDE2IDE2czE2LTcuMiAxNi0xNmwwLTE3NmMwLTE3LjcgMTQuMy0zMiAzMi0zMnMzMiAxNC4zIDMyIDMybDAgMTc2YzAgOC44IDcuMiAxNiAxNiAxNnMxNi03LjIgMTYtMTZsMC0xMTJjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDE3OC4yYy0xOS4yIDUuNC0zNC43IDIwLjQtNDAuNCA0MC4zbC02LjUgMjIuNy0yMi43IDYuNWMtMjUuMiA3LjItNDIuNSAzMC4yLTQyLjUgNTYuNCAwIDIyLjEgMTIuNCA0MiAzMS40IDUxLjktMjcuNSAxNy44LTYwLjIgMjguMS05NS40IDI4LjFsLTE5LjIgMGMtNTkuNiAwLTExNi45LTIyLjktMTYwLTY0TDc2LjQgMzQxYy0xNi0xNS4yLTE2LjYtNDAuNi0xLjQtNTYuNnM0MC42LTE2LjYgNTYuNi0xLjRsNjAuNSA1Ny42YzAtMS41LS4xLTMuMS0uMS00LjZsMC0yNzJjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDE3NmMwIDguOCA3LjIgMTYgMTYgMTZzMTYtNy4yIDE2LTE2bDAtMjA4YzAtMTcuNyAxNC4zLTMyIDMyLTMyem0tNy4zIDMyNi42Yy0xLjEtMy45LTQuNy02LjYtOC43LTYuNnMtNy42IDIuNy04LjcgNi42bC03LjMgMjUuNC0yNS40IDcuM2MtMy45IDEuMS02LjYgNC43LTYuNiA4LjdzMi43IDcuNiA2LjYgOC43bDI1LjQgNy4zIDcuMyAyNS40YzEuMSAzLjkgNC43IDYuNiA4LjcgNi42czcuNi0yLjcgOC43LTYuNmw3LjMtMjUuNCAyNS40LTcuM2MzLjktMS4xIDYuNi00LjcgNi42LTguN3MtMi43LTcuNi02LjYtOC43bC0yNS40LTcuMy03LjMtMjUuNHpNMTA0IDEyMGw0OC4zIDEzLjhjNC42IDEuMyA3LjcgNS41IDcuNyAxMC4ycy0zLjEgOC45LTcuNyAxMC4yTDEwNCAxNjggOTAuMiAyMTYuM2MtMS4zIDQuNi01LjUgNy43LTEwLjIgNy43cy04LjktMy4xLTEwLjItNy43TDU2IDE2OCA3LjcgMTU0LjJDMy4xIDE1Mi45IDAgMTQ4LjcgMCAxNDRzMy4xLTguOSA3LjctMTAuMkw1NiAxMjAgNjkuOCA3MS43QzcxLjEgNjcuMSA3NS4zIDY0IDgwIDY0czguOSAzLjEgMTAuMiA3LjdMMTA0IDEyMHpNNTg0IDQwOGw0OC4zIDEzLjhjNC42IDEuMyA3LjcgNS41IDcuNyAxMC4ycy0zLjEgOC45LTcuNyAxMC4yTDU4NCA0NTYgNTcwLjIgNTA0LjNjLTEuMyA0LjYtNS41IDcuNy0xMC4yIDcuN3MtOC45LTMuMS0xMC4yLTcuN0w1MzYgNDU2IDQ4Ny43IDQ0Mi4yYy00LjYtMS4zLTcuNy01LjUtNy43LTEwLjJzMy4xLTguOSA3LjctMTAuMkw1MzYgNDA4IDU0OS44IDM1OS43YzEuMy00LjYgNS41LTcuNyAxMC4yLTcuN3M4LjkgMy4xIDEwLjIgNy43TDU4NCA0MDh6Il19LFRncj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJhcnJvd3MtdG8tZG90IixpY29uOls1MTIsNTEyLFtdLCJlNGJlIiwiTTI1NiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMzIgMzIgMGMxMi45IDAgMjQuNiA3LjggMjkuNiAxOS44czIuMiAyNS43LTYuOSAzNC45bC02NCA2NGMtMTIuNSAxMi41LTMyLjggMTIuNS00NS4zIDBsLTY0LTY0Yy05LjItOS4yLTExLjktMjIuOS02LjktMzQuOVMxNzkuMSA2NCAxOTIgNjRsMzIgMCAwLTMyYzAtMTcuNyAxNC4zLTMyIDMyLTMyek0xNjkuNCAzOTMuNGw2NC02NGMxMi41LTEyLjUgMzIuOC0xMi41IDQ1LjMgMGw2NCA2NGM5LjIgOS4yIDExLjkgMjIuOSA2LjkgMzQuOVMzMzIuOSA0NDggMzIwIDQ0OGwtMzIgMCAwIDMyYzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMzItMzIgMGMtMTIuOSAwLTI0LjYtNy44LTI5LjYtMTkuOHMtMi4yLTI1LjcgNi45LTM0Ljl6TTMyIDIyNGwzMiAwIDAtMzJjMC0xMi45IDcuOC0yNC42IDE5LjgtMjkuNnMyNS43LTIuMiAzNC45IDYuOWw2NCA2NGMxMi41IDEyLjUgMTIuNSAzMi44IDAgNDUuM2wtNjQgNjRjLTkuMiA5LjItMjIuOSAxMS45LTM0LjkgNi45UzY0IDMzMi45IDY0IDMyMGwwLTMyLTMyIDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJ6bTI5Ny40IDU0LjZjLTEyLjUtMTIuNS0xMi41LTMyLjggMC00NS4zbDY0LTY0YzkuMi05LjIgMjIuOS0xMS45IDM0LjktNi45UzQ0OCAxNzkuMSA0NDggMTkybDAgMzIgMzIgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtMzIgMCAwIDMyYzAgMTIuOS03LjggMjQuNi0xOS44IDI5LjZzLTI1LjcgMi4yLTM0LjktNi45bC02NC02NHpNMjU2IDIyNGEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6Il19LFpUZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmYWNlLXNhZC1jcnkiLGljb246WzUxMiw1MTIsWzEyODU1Nywic2FkLWNyeSJdLCJmNWIzIiwiTTM1MiA0OTMuNGMtMjkuNiAxMi02Mi4xIDE4LjYtOTYgMTguNnMtNjYuNC02LjYtOTYtMTguNkwxNjAgMjk2YzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0bDAgMTcxLjdDNDQuNCA0MjEuNiAwIDM0NCAwIDI1NiAwIDExNC42IDExNC42IDAgMjU2IDBTNTEyIDExNC42IDUxMiAyNTZjMCA4OC00NC40IDE2NS42LTExMiAyMTEuN0w0MDAgMjk2YzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0bDAgMTk3LjR6TTE1MiAxOTZsMTYgMGMxMSAwIDIwIDkgMjAgMjBzOSAyMCAyMCAyMCAyMC05IDIwLTIwYzAtMzMuMS0yNi45LTYwLTYwLTYwbC0xNiAwYy0zMy4xIDAtNjAgMjYuOS02MCA2MCAwIDExIDkgMjAgMjAgMjBzMjAtOSAyMC0yMCA5LTIwIDIwLTIwem0xNzIgMjBjMC0xMSA5LTIwIDIwLTIwbDE2IDBjMTEgMCAyMCA5IDIwIDIwczkgMjAgMjAgMjAgMjAtOSAyMC0yMGMwLTMzLjEtMjYuOS02MC02MC02MGwtMTYgMGMtMzMuMSAwLTYwIDI2LjktNjAgNjAgMCAxMSA5IDIwIDIwIDIwczIwLTkgMjAtMjB6TTIwOCAzMzZsMCAzMmMwIDI2LjUgMjEuNSA0OCA0OCA0OHM0OC0yMS41IDQ4LTQ4bDAtMzJjMC0yNi41LTIxLjUtNDgtNDgtNDhzLTQ4IDIxLjUtNDggNDh6Il19LExncj1aVGUsRGdyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImRvbmctc2lnbiIsaWNvbjpbMzg0LDUxMixbXSwiZTE2OSIsIk0yODgtMTZjLTE3LjcgMC0zMiAxNC4zLTMyIDMybDAgMzItMTA0IDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsMTA0IDAgMCA3Mi4yYy0yMi45LTE1LjMtNTAuNC0yNC4yLTgwLTI0LjItNzkuNSAwLTE0NCA2NC41LTE0NCAxNDRTOTYuNSA0MzIgMTc2IDQzMmMzMCAwIDU3LjgtOS4xIDgwLjgtMjQuOCAzLjMgMTQuMiAxNiAyNC44IDMxLjIgMjQuOCAxNy43IDAgMzItMTQuMyAzMi0zMmwwLTMwNCA0MCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC00MCAwIDAtMzJjMC0xNy43LTE0LjMtMzItMzItMzJ6TTk2IDI4OGE4MCA4MCAwIDEgMSAxNjAgMCA4MCA4MCAwIDEgMSAtMTYwIDB6TTI0IDQ2NGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwzMzYgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNEwyNCA0NjR6Il19LEFncj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwZW9wbGUtbGluZSIsaWNvbjpbNTc2LDUxMixbXSwiZTUzNCIsIk0yODggMGE2NCA2NCAwIDEgMSAwIDEyOCA2NCA2NCAwIDEgMSAwLTEyOHptOTYgMzEyYzAgMjUtMTIuNyA0Ny0zMiA1OS45bDAgNDQuMS0xMjggMCAwLTQ0LjFDMjA0LjcgMzU5IDE5MiAzMzcgMTkyIDMxMmwwLTQwYzAtNTMgNDMtOTYgOTYtOTZzOTYgNDMgOTYgOTZsMCA0MHptMTYgMTA0bDAtMjcuM2MxOS45LTIyLjUgMzItNTIuMiAzMi04NC43bDAtMzJjMC0yNi43LTcuMy01MS42LTE5LjktNzMuMSAxMS4xLTQuNSAyMy4yLTYuOSAzNS45LTYuOSA1MyAwIDk2IDQzIDk2IDk2bDAgMzJjMCAyMy43LTEyLjkgNDQuNC0zMiA1NS40bDAgNDAuNi0xMTIgMHpNNjQgMzc1LjRDNDQuOSAzNjQuNCAzMiAzNDMuNyAzMiAzMjBsMC0zMmMwLTUzIDQzLTk2IDk2LTk2IDEyLjcgMCAyNC44IDIuNSAzNS45IDYuOS0xMi42IDIxLjQtMTkuOSA0Ni40LTE5LjkgNzMuMWwwIDMyYzAgMzIuNSAxMi4xIDYyLjEgMzIgODQuN2wwIDI3LjMtMTEyIDAgMC00MC42ek0xMjggMzJhNTYgNTYgMCAxIDEgMCAxMTIgNTYgNTYgMCAxIDEgMC0xMTJ6bTMyMCAwYTU2IDU2IDAgMSAxIDAgMTEyIDU2IDU2IDAgMSAxIDAtMTEyek0yNCA0NjRsNTI4IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRMMjQgNTEyYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0eiJdfSxYVGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic3F1YXJlLXJzcyIsaWNvbjpbNDQ4LDUxMixbInJzcy1zcXVhcmUiXSwiZjE0MyIsIk02NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgNDE2YzAgMzUuMyAyOC43IDY0IDY0IDY0bDMyMCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMzIwYzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDMyek05NiAxMzZjMC0xMy4zIDEwLjctMjQgMjQtMjQgMTM3IDAgMjQ4IDExMSAyNDggMjQ4IDAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0YzAtMTEwLjUtODkuNS0yMDAtMjAwLTIwMC0xMy4zIDAtMjQtMTAuNy0yNC0yNHptMCA5NmMwLTEzLjMgMTAuNy0yNCAyNC0yNCA4My45IDAgMTUyIDY4LjEgMTUyIDE1MiAwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNGMwLTU3LjQtNDYuNi0xMDQtMTA0LTEwNC0xMy4zIDAtMjQtMTAuNy0yNC0yNHptMCAxMjBhMzIgMzIgMCAxIDEgNjQgMCAzMiAzMiAwIDEgMSAtNjQgMHoiXX0sRWdyPVhUZSwkZ3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2FsZW5kYXItbWludXMiLGljb246WzQ0OCw1MTIsW10sImYyNzIiLCJNMTI4IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCAzMiAxMjggMCAwLTMyYzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJsMCAzMiAzMiAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMjg4YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDQ4MGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCAxMjhDMCA5Mi43IDI4LjcgNjQgNjQgNjRsMzIgMCAwLTMyYzAtMTcuNyAxNC4zLTMyIDMyLTMyem0yNCAyNjRjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsMTQ0IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTE0NCAweiJdfSxQZ3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2hhcnQtZGlhZ3JhbSIsaWNvbjpbNTEyLDUxMixbXSwiZTY5NSIsIk04MCAzMkM1My41IDMyIDMyIDUzLjUgMzIgODBzMjEuNSA0OCA0OCA0OGwxNTIgMCAwIDQwLTQ4IDQ4LTcyIDBjLTM5LjggMC03MiAzMi4yLTcyIDcybDAgNjQtOCAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMmwwIDY0YzAgMTcuNyAxNC4zIDMyIDMyIDMybDY0IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJsMC02NGMwLTE3LjctMTQuMy0zMi0zMi0zMmwtOCAwIDAtNjRjMC0xMy4zIDEwLjctMjQgMjQtMjRsNzIgMCA0OCA0OCAwIDQwLTggMGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJsMCA2NGMwIDE3LjcgMTQuMyAzMiAzMiAzMmw2NCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtNjRjMC0xNy43LTE0LjMtMzItMzItMzJsLTggMCAwLTQwIDQ4LTQ4IDcyIDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRsMCA2NC04IDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMybDAgNjRjMCAxNy43IDE0LjMgMzIgMzIgMzJsNjQgMGMxNy43IDAgMzItMTQuMyAzMi0zMmwwLTY0YzAtMTcuNy0xNC4zLTMyLTMyLTMybC04IDAgMC02NGMwLTM5LjgtMzIuMi03Mi03Mi03MmwtNzIgMC00OC00OCAwLTQwIDE1MiAwYzI2LjUgMCA0OC0yMS41IDQ4LTQ4cy0yMS41LTQ4LTQ4LTQ4TDgwIDMyeiJdfSxRVGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmFjZS10aXJlZCIsaWNvbjpbNTEyLDUxMixbMTI4NTU1LCJ0aXJlZCJdLCJmNWM4IiwiTTI1NiA1MTJhMjU2IDI1NiAwIDEgMCAwLTUxMiAyNTYgMjU2IDAgMSAwIDAgNTEyek0xNjQuNyAzMjguN2MyMi0yMiA1My45LTQwLjcgOTEuMy00MC43czY5LjMgMTguNyA5MS4zIDQwLjdjMTEuMSAxMS4xIDIwLjEgMjMuNCAyNi40IDM1LjQgNi4yIDExLjcgMTAuMyAyNC40IDEwLjMgMzUuOSAwIDUuMi0yLjYgMTAuMi02LjkgMTMuMnMtOS44IDMuNy0xNC43IDEuOGwtMjAuNS03LjdjLTI2LjktMTAuMS01NS41LTE1LjMtODQuMy0xNS4zbC0zLjIgMGMtMjguOCAwLTU3LjMgNS4yLTg0LjMgMTUuM0wxNDkuNiA0MTVjLTQuOSAxLjgtMTAuNCAxLjItMTQuNy0xLjhTMTI4IDQwNS4yIDEyOCA0MDBjMC0xMS42IDQuMi0yNC4yIDEwLjMtMzUuOSA2LjMtMTIgMTUuMy0yNC4zIDI2LjQtMzUuNHpNMTIyLjYgMTU5LjJjNC41LTYuOCAxMy4zLTkuMiAyMC42LTUuNWw3OS42IDQwYzUuNCAyLjcgOC44IDguMiA4LjggMTQuM3MtMy40IDExLjYtOC44IDE0LjNsLTc5LjYgNDBjLTcuMyAzLjYtMTYuMSAxLjMtMjAuNi01LjVzLTMuMS0xNS45IDMuMS0yMS4xTDE1OSAyMDggMTI1LjggMTgwLjNjLTYuMi01LjItNy42LTE0LjMtMy4xLTIxLjF6bTI2My42IDIxLjFMMzUzIDIwOCAzODYuMiAyMzUuN2M2LjIgNS4yIDcuNiAxNC4zIDMuMSAyMS4xcy0xMy4zIDkuMi0yMC42IDUuNWwtNzkuNi00MGMtNS40LTIuNy04LjgtOC4yLTguOC0xNC4zczMuNC0xMS42IDguOC0xNC4zbDc5LjYtNDBjNy4zLTMuNiAxNi4xLTEuMyAyMC42IDUuNXMzLjEgMTUuOS0zLjEgMjEuMXoiXX0sSWdyPVFUZSxOZ3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaGFuZC1wb2ludC1yaWdodCIsaWNvbjpbNTEyLDUxMixbXSwiZjBhNCIsIk00ODAgOTZjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTIwOCAwIDAtNjQgMjA4IDB6TTMyMCAyODhjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTY0IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsNjQgMHptNjQtNjRjMCAxNy43LTE0LjMgMzItMzIgMzJsLTQ4IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsNDggMGMxNy43IDAgMzIgMTQuMyAzMiAzMnpNMjg4IDM4NGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtNjQgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMmw2NCAwem0tODgtOTZsLjYgMGMtNS40IDkuNC04LjYgMjAuMy04LjYgMzIgMCAxMy4yIDQgMjUuNCAxMC44IDM1LjYtMjQuOSA4LjctNDIuOCAzMi41LTQyLjggNjAuNCAwIDExLjcgMy4xIDIyLjYgOC42IDMybC04LjYgMEM3MS42IDQ0OCAwIDM3Ni40IDAgMjg4bDAtNjEuN2MwLTQyLjQgMTYuOS04My4xIDQ2LjktMTEzLjFsMTEuNi0xMS42QzgyLjUgNzcuNSAxMTUuMSA2NCAxNDkgNjRsMjcgMGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDg4YzAgMjIuMS0xNy45IDQwLTQwIDQwcy00MC0xNy45LTQwLTQwbDAtNTZjMC04LjgtNy4yLTE2LTE2LTE2cy0xNiA3LjItMTYgMTZsMCA1NmMwIDM5LjggMzIuMiA3MiA3MiA3MnoiXX0sRmdyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFycm93LXVwIixpY29uOlszODQsNTEyLFs4NTkzXSwiZjA2MiIsIk0yMTQuNiA5LjRjLTEyLjUtMTIuNS0zMi44LTEyLjUtNDUuMyAwbC0xNjAgMTYwYy0xMi41IDEyLjUtMTIuNSAzMi44IDAgNDUuM3MzMi44IDEyLjUgNDUuMyAwTDE2MCAxMDkuMyAxNjAgNDgwYzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0zNzAuNyAxMDUuNCAxMDUuNGMxMi41IDEyLjUgMzIuOCAxMi41IDQ1LjMgMHMxMi41LTMyLjggMC00NS4zbC0xNjAtMTYweiJdfSxPZ3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY3ViZXMtc3RhY2tlZCIsaWNvbjpbNTEyLDUxMixbXSwiZTRlNiIsIk0xOTIgMzJjMC0xNy43IDE0LjMtMzIgMzItMzJsNjQgMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDY0YzAgMTcuNy0xNC4zIDMyLTMyIDMybC02NCAwYy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTY0em0zMiAzNTJsNjQgMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDY0YzAgMTcuNy0xNC4zIDMyLTMyIDMybC02NCAwYy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTY0YzAtMTcuNyAxNC4zLTMyIDMyLTMyem0xOTIgMGw2NCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgNjRjMCAxNy43LTE0LjMgMzItMzIgMzJsLTY0IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtNjRjMC0xNy43IDE0LjMtMzIgMzItMzJ6TTMyMCAxOTJsNjQgMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDY0YzAgMTcuNy0xNC4zIDMyLTMyIDMybC02NCAwYy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTY0YzAtMTcuNyAxNC4zLTMyIDMyLTMyem0tMTgyLjYtMy45YzEyLjUtMTIuNSAzMi44LTEyLjUgNDUuMyAwbDQ1LjMgNDUuM2MxMi41IDEyLjUgMTIuNSAzMi44IDAgNDUuM2wtNDUuMyA0NS4zYy0xMi41IDEyLjUtMzIuOCAxMi41LTQ1LjMgMEw5Mi4xIDI3OC42Yy0xMi41LTEyLjUtMTIuNS0zMi44IDAtNDUuM2w0NS4zLTQ1LjN6TTMyIDM4NGw2NCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgNjRjMCAxNy43LTE0LjMgMzItMzIgMzJsLTY0IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtNjRjMC0xNy43IDE0LjMtMzIgMzItMzJ6Il19LEtUZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjaGlsZC1jb21iYXRhbnQiLGljb246WzU3Niw1MTIsWyJjaGlsZC1yaWZsZSJdLCJlNGUwIiwiTTE3Ni41IDEyOGE2NCA2NCAwIDEgMCAwLTEyOCA2NCA2NCAwIDEgMCAwIDEyOHptLTE2IDM1MmwwLTk2IDMyIDAgMCA5NmMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMTkyLjIgMjAuOSAzMy4yYzkuNCAxNSAyOS4yIDE5LjQgNDQuMSAxMHMxOS40LTI5LjIgMTAtNDQuMWwtMzkuOS02My4zQzI2Ni44IDE4NCAyMjMuMyAxNjAgMTc2LjUgMTYwUzg2LjIgMTg0IDYxLjMgMjIzLjZMMjEuNCAyODdjLTkuNCAxNS00LjkgMzQuNyAxMCA0NC4xczM0LjcgNC45IDQ0LjEtMTBsMjAuOS0zMy4yIDAgMTkyLjJjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMnpNNDQ4LjUgMGwtMzIgMGMtOC44IDAtMTYgNy4yLTE2IDE2czcuMiAxNiAxNiAxNmwwIDEwMC4zYy05LjYgNS41LTE2IDE1LjktMTYgMjcuN2wwIDMyYy0xNy43IDAtMzIgMTQuMy0zMiAzMmwwIDE0NGMwIDE3LjcgMTQuMyAzMiAzMiAzMmwxNiAwIDAgOTZjMCA4LjggNy4yIDE2IDE2IDE2bDU5LjUgMGMxMC40IDAgMTgtOS44IDE1LjUtMTkuOWwtMjMtOTIuMSA0NCAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTE2YzAtOC44LTcuMi0xNi0xNi0xNmwtNDggMCAwLTI2LjcgNTMuMS0xNy43YzYuNS0yLjIgMTAuOS04LjMgMTAuOS0xNS4ybDAtODQuNWMwLTguOC03LjItMTYtMTYtMTZsLTE2IDBjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDU2LTE2IDUuMyAwLTEwOS4zYzAtMTEuOC02LjQtMjIuMi0xNi0yNy43bDAtMTE2LjNjMC04LjgtNy4yLTE2LTE2LTE2eiJdfSxSZ3I9S1RlLEJncj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ2ZXN0LXBhdGNoZXMiLGljb246WzQ0OCw1MTIsW10sImUwODYiLCJNMjAwIDI5My45TDIwMCA0NjRjMCAyNi41LTIxLjUgNDgtNDggNDhMNDggNTEyYy0yNi41IDAtNDgtMjEuNS00OC00OEwwIDI3MC41YzAtOS41IDIuOC0xOC43IDguMS0yNi42bDQ3LjktNzEuOGM1LjMtNy45IDguMS0xNy4xIDguMS0yNi42TDY0IDQ4QzY0IDIxLjUgODUuNSAwIDExMiAwbDMuNSAwYy4zIDAgLjYgMCAxIDAgLjYgMCAxLjIgMCAxLjggMCAxOC44IDAgMzQuMSA5LjcgNDQuMSAxOC44IDkuMyA4LjQgMjguNSAyMS4yIDYxLjcgMjEuMnM1Mi40LTEyLjggNjEuNy0yMS4yYzEwLTkuMSAyNS4zLTE4LjggNDQuMS0xOC44IC42IDAgMS4yIDAgMS44IDAgLjMgMCAuNiAwIDEgMEwzMzYgMGMyNi41IDAgNDggMjEuNSA0OCA0OGwwIDk3LjVjMCA5LjUgMi44IDE4LjcgOC4xIDI2LjZsNDcuOSA3MS44YzUuMyA3LjkgOC4xIDE3LjEgOC4xIDI2LjZMNDQ4IDQ2NGMwIDI2LjUtMjEuNSA0OC00OCA0OGwtMTA0IDBjLTI2LjUgMC00OC0yMS41LTQ4LTQ4bDAtMTcwLjFjMC0zLjkgLjUtNy44IDEuNC0xMS42TDMwMy42IDY1LjRDMjg1LjkgNzcuMiAyNTkuOCA4OCAyMjQgODhzLTYxLjktMTAuOC03OS42LTIyLjZsNTQuMiAyMTYuOGMxIDMuOCAxLjQgNy43IDEuNCAxMS42ek05NiA0NTZhNDAgNDAgMCAxIDAgMC04MCA0MCA0MCAwIDEgMCAwIDgwek02My41IDI1NS41Yy00LjcgNC43LTQuNyAxMi4zIDAgMTdMNzkgMjg4IDYzLjUgMzAzLjVjLTQuNyA0LjctNC43IDEyLjMgMCAxN3MxMi4zIDQuNyAxNyAwTDk2IDMwNSAxMTEuNSAzMjAuNWM0LjcgNC43IDEyLjMgNC43IDE3IDBzNC43LTEyLjMgMC0xN0wxMTMgMjg4IDEyOC41IDI3Mi41YzQuNy00LjcgNC43LTEyLjMgMC0xN3MtMTIuMy00LjctMTcgMEw5NiAyNzEgODAuNSAyNTUuNWMtNC43LTQuNy0xMi4zLTQuNy0xNyAwek0zMDQgMjgwbDAgNDBjMCA4LjggNy4yIDE2IDE2IDE2bDQwIDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTggMCAwLThjMC0xMy4zLTEwLjctMjQtMjQtMjRzLTI0IDEwLjctMjQgMjR6Il19LEpUZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtYXJ0aW5pLWdsYXNzLWVtcHR5IixpY29uOls1MTIsNTEyLFsiZ2xhc3MtbWFydGluaSJdLCJmMDAwIiwiTTMyIDMyQzE5LjEgMzIgNy40IDM5LjggMi40IDUxLjhTLjIgNzcuNSA5LjQgODYuNmwyMTQuNiAyMTQuNiAwIDE0Ni43LTY0IDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsMTkyIDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTY0IDAgMC0xNDYuNyAyMTQuNi0yMTQuNmM5LjItOS4yIDExLjktMjIuOSA2LjktMzQuOVM0OTIuOSAzMiA0ODAgMzJMMzIgMzJ6TTI1NiAyNDIuN0wxMDkuMyA5NiA0MDIuNyA5NiAyNTYgMjQyLjd6Il19LEhncj1KVGUscWdyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im1hZ25ldCIsaWNvbjpbNDQ4LDUxMixbMTI5NTIyXSwiZjA3NiIsIk0wIDE3NkwwIDI4OEMwIDQxMS43IDEwMC4zIDUxMiAyMjQgNTEyUzQ0OCA0MTEuNyA0NDggMjg4bDAtMTEyLTEyOCAwIDAgMTEyYzAgNTMtNDMgOTYtOTYgOTZzLTk2LTQzLTk2LTk2bDAtMTEyLTEyOCAwem0wLTQ4bDEyOCAwIDAtNjRjMC0xNy43LTE0LjMtMzItMzItMzJMMzIgMzJDMTQuMyAzMiAwIDQ2LjMgMCA2NGwwIDY0em0zMjAgMGwxMjggMCAwLTY0YzAtMTcuNy0xNC4zLTMyLTMyLTMybC02NCAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMmwwIDY0eiJdfSxqZ3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicm9hZC1iYXJyaWVyIixpY29uOls2NDAsNTEyLFtdLCJlNTYyIiwiTTMyIDMyQzE0LjMgMzIgMCA0Ni4zIDAgNjRMMCA0NDhjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMkw2NCAyNjYuMyAxNDkuMiA5NiA2NCA5NiA2NCA2NGMwLTE3LjctMTQuMy0zMi0zMi0zMnpNNDA1LjIgOTZsLTc0LjMgMC01LjQgMTAuNy05MC42IDE4MS4zIDc0LjMgMCA1LjQtMTAuNyA5MC42LTE4MS4zek0zNjIuOCAyODhsNzQuMyAwIDUuNC0xMC43IDkwLjYtMTgxLjMtNzQuMyAwLTUuNCAxMC43LTkwLjYgMTgxLjN6TTIwMi44IDk2bC01LjQgMTAuNy05MC42IDE4MS4zIDc0LjMgMCA1LjQtMTAuNyA5MC42LTE4MS4zLTc0LjMgMHptMjg4IDE5Mmw4NS4yIDAgMCAxNjBjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTM4NGMwLTE3LjctMTQuMy0zMi0zMi0zMnMtMzIgMTQuMy0zMiAzMmwwIDUzLjctODUuMiAxNzAuM3oiXX0sZUxlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNvbXBhc3MtZHJhZnRpbmciLGljb246WzUxMiw1MTIsWyJkcmFmdGluZy1jb21wYXNzIl0sImY1NjgiLCJNOTkuMyAyNTYuMWw2OS40LTExOS45Yy01LjYtMTIuMi04LjgtMjUuOC04LjgtNDAuMiAwLTUzIDQzLTk2IDk2LTk2czk2IDQzIDk2IDk2YzAgMTQuMy0zLjEgMjcuOS04LjggNDAuMmw0NC40IDc2LjdjLTIzLjEgMjYtNTMuNyA0NS4xLTg4LjQgNTMuOEwyNTYgMTkxLjkgMTg3LjkgMzA5LjVjMjEuNSA2LjggNDQuMyAxMC41IDY4LjEgMTAuNSA3MC43IDAgMTMzLjgtMzIuNyAxNzQuOS04NCAxMS4xLTEzLjggMzEuMi0xNiA0NS01czE2IDMxLjIgNSA0NWMtNTIuNyA2NS44LTEzMy45IDEwOC0yMjQuOCAxMDgtMzUuNCAwLTY5LjQtNi40LTEwMC43LTE4LjFMOTguNyA0NjMuN0M5NCA0NzEuOCA4NyA0NzguNCA3OC42IDQ4Mi42TDIzLjIgNTEwLjNjLTUgMi41LTEwLjkgMi4yLTE1LjYtLjdTMCA1MDEuNSAwIDQ5NmwwLTU1LjRjMC04LjQgMi4yLTE2LjcgNi41LTI0LjFsNjAtMTAzLjdjLTEyLjgtMTEuMi0yNC42LTIzLjUtMzUuMy0zNi44LTExLjEtMTMuOC04LjgtMzMuOSA1LTQ1czMzLjktOC44IDQ1IDVjNS43IDcuMSAxMS44IDEzLjggMTguMiAyMC4xek0zODEuMSA0MDcuOWMzMi41LTEzIDYyLjQtMzEgODguOS01Mi45bDM1LjYgNjEuNWM0LjIgNy4zIDYuNSAxNS42IDYuNSAyNC4xbDAgNTUuNGMwIDUuNS0yLjkgMTAuNy03LjYgMTMuNnMtMTAuNiAzLjItMTUuNiAuN2wtNTUuNC0yNy43Yy04LjQtNC4yLTE1LjQtMTAuOC0yMC4xLTE4LjlsLTMyLjMtNTUuOHpNMjU2IDEyOGEzMiAzMiAwIDEgMCAwLTY0IDMyIDMyIDAgMSAwIDAgNjR6Il19LFZncj1lTGUsVWdyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNxdWFyZS1wZXJzb24tY29uZmluZWQiLGljb246WzQ0OCw1MTIsW10sImU1NzciLCJNNjQgMzJDMjguNyAzMiAwIDYwLjcgMCA5NkwwIDQxNmMwIDM1LjMgMjguNyA2NCA2NCA2NGwzMjAgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTMyMGMwLTM1LjMtMjguNy02NC02NC02NEw2NCAzMnptOTYgMTEyYTQ4IDQ4IDAgMSAxIDk2IDAgNDggNDggMCAxIDEgLTk2IDB6bTgwIDEwNGMwLTMwLjkgMjUuMS01NiA1Ni01NnM1NiAyNS4xIDU2IDU2bDAgMTAyLjFjMCAzNi40LTI5LjUgNjUuOS02NS45IDY1LjktMTcuNSAwLTM0LjMtNi45LTQ2LjYtMTkuM2wtNTQuNy01NC43LTI4LjEgNTYuM2MtNy45IDE1LjgtMjcuMSAyMi4yLTQyLjkgMTQuM3MtMjIuMi0yNy4xLTE0LjMtNDIuOWw0OC05NmM0LjYtOS4yIDEzLjMtMTUuNiAyMy41LTE3LjNzMjAuNSAxLjcgMjcuOCA5bDQxLjQgNDEuNCAwLTU4Ljd6Il19LFdncj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwbGF0ZS13aGVhdCIsaWNvbjpbNTEyLDUxMixbXSwiZTU1YSIsIk0xNzYgMzJjNDQuMiAwIDgwIDM1LjggODAgODBsMCAxNmMwIDguOC03LjIgMTYtMTYgMTYtNDQuMiAwLTgwLTM1LjgtODAtODBsMC0xNmMwLTguOCA3LjItMTYgMTYtMTZ6TTU2IDY0bDQ4IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTQ4IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0UzQyLjcgNjQgNTYgNjR6TTI0IDEzNmwxMTIgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNEwyNCAxODRjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjR6bTggOTZjMC0xMy4zIDEwLjctMjQgMjQtMjRsNDggMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtNDggMGMtMTMuMyAwLTI0LTEwLjctMjQtMjR6TTI3MiA0OGMwLTguOCA3LjItMTYgMTYtMTYgNDQuMiAwIDgwIDM1LjggODAgODBsMCAxNmMwIDguOC03LjIgMTYtMTYgMTYtNDQuMiAwLTgwLTM1LjgtODAtODBsMC0xNnpNNDAwIDMyYzQ0LjIgMCA4MCAzNS44IDgwIDgwbDAgMTZjMCA4LjgtNy4yIDE2LTE2IDE2LTQ0LjIgMC04MC0zNS44LTgwLTgwbDAtMTZjMC04LjggNy4yLTE2IDE2LTE2em04MCAxNjBsMCAxNmMwIDQ0LjItMzUuOCA4MC04MCA4MC04LjggMC0xNi03LjItMTYtMTZsMC0xNmMwLTQ0LjIgMzUuOC04MCA4MC04MCA4LjggMCAxNiA3LjIgMTYgMTZ6TTM1MiAxNzZjOC44IDAgMTYgNy4yIDE2IDE2bDAgMTZjMCA0NC4yLTM1LjggODAtODAgODAtOC44IDAtMTYtNy4yLTE2LTE2bDAtMTZjMC00NC4yIDM1LjgtODAgODAtODB6bS05NiAxNmwwIDE2YzAgNDQuMi0zNS44IDgwLTgwIDgwLTguOCAwLTE2LTcuMi0xNi0xNmwwLTE2YzAtNDQuMiAzNS44LTgwIDgwLTgwIDguOCAwIDE2IDcuMiAxNiAxNnpNMy41IDM0Ny42QzEuNiAzMzIuOSAxMyAzMjAgMjcuOCAzMjBsNDU2LjQgMGMxNC44IDAgMjYuMiAxMi45IDI0LjQgMjcuNi02LjMgNTAuMi00NC40IDg5LjQtOTIuNiA5OC40bDAgMmMwIDE3LjctMTQuMyAzMi0zMiAzMmwtMjU2IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtMmMtNDguMi05LTg2LjMtNDguMi05Mi41LTk4LjR6Il19LHRMZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzaWduLWhhbmdpbmciLGljb246WzUxMiw1MTIsWyJzaWduIl0sImY0ZDkiLCJNOTYgMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDMyIDM1MiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC0zNTIgMCAwIDM1MmMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTM1Mi0zMiAwQzE0LjMgMTI4IDAgMTEzLjcgMCA5NlMxNC4zIDY0IDMyIDY0bDMyIDAgMC0zMkM2NCAxNC4zIDc4LjMgMCA5NiAwek0yMDggMTc2bDI0MCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMTQ0YzAgMTcuNy0xNC4zIDMyLTMyIDMybC0yNDAgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC0xNDRjMC0xNy43IDE0LjMtMzIgMzItMzJ6Il19LEdncj10TGUsckxlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNhci1iYXR0ZXJ5IixpY29uOls1MTIsNTEyLFsiYmF0dGVyeS1jYXIiXSwiZjVkZiIsIk04MCA2NGMwLTE3LjcgMTQuMy0zMiAzMi0zMmw2NCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDk2IDBjMC0xNy43IDE0LjMtMzIgMzItMzJsNjQgMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwxNiAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMjU2YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDQ0OGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCAxMjhDMCA5Mi43IDI4LjcgNjQgNjQgNjRsMTYgMHpNMzkyIDE4NGMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGwwIDMyLTMyIDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsMzIgMCAwIDMyYzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC0zMiAzMiAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC0zMiAwIDAtMzJ6TTY0IDI0MGMwIDEzLjMgMTAuNyAyNCAyNCAyNGwxMTIgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNEw4OCAyMTZjLTEzLjMgMC0yNCAxMC43LTI0IDI0eiJdfSxZZ3I9ckxlLHYyZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzaGlydCIsaWNvbjpbNjQwLDUxMixbMTI4MDg1LCJ0LXNoaXJ0IiwidHNoaXJ0Il0sImY1NTMiLCJNMzIwLjIgMTEyYzQ0LjIgMCA4MC0zNS44IDgwLTgwbDUzLjUgMGMxNyAwIDMzLjMgNi43IDQ1LjMgMTguN0w2MTcuNiAxNjkuNGMxMi41IDEyLjUgMTIuNSAzMi44IDAgNDUuM2wtNTAuNyA1MC43Yy0xMi41IDEyLjUtMzIuOCAxMi41LTQ1LjMgMGwtNDEuNC00MS40IDAgMjI0YzAgMzUuMy0yOC43IDY0LTY0IDY0bC0xOTIgMGMtMzUuMyAwLTY0LTI4LjctNjQtNjRsMC0yMjQtNDEuNCA0MS40Yy0xMi41IDEyLjUtMzIuOCAxMi41LTQ1LjMgMEwyMi45IDIxNC42Yy0xMi41LTEyLjUtMTIuNS0zMi44IDAtNDUuM0wxNDEuNSA1MC43YzEyLTEyIDI4LjMtMTguNyA0NS4zLTE4LjdsNTMuNSAwYzAgNDQuMiAzNS44IDgwIDgwIDgweiJdfSxaZ3I9djJlLFhncj12MmUsUWdyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBhcmFncmFwaCIsaWNvbjpbNDQ4LDUxMixbMTgyXSwiZjFkZCIsIk0xNjAgMEw0MTYgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtMzIgMCAwIDQxNmMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTQxNi00OCAwIDAgNDE2YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMTYwLTQ4IDBDNzEuNiAzMjAgMCAyNDguNCAwIDE2MFM3MS42IDAgMTYwIDB6Il19LGFMZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJlbnZlbG9wZXMtYnVsayIsaWNvbjpbNTc2LDUxMixbIm1haWwtYnVsayJdLCJmNjc0IiwiTTExMiAwQzg1LjUgMCA2NCAyMS41IDY0IDQ4bDAgMTYwIDgwIDAgMC0zMmMwLTUzIDQzLTk2IDk2LTk2bDIwOCAwIDAtMzJjMC0yNi41LTIxLjUtNDgtNDgtNDhMMTEyIDB6TTI0MCAxMjhjLTI2LjUgMC00OCAyMS41LTQ4IDQ4bDAgMzIgODAgMGM1MyAwIDk2IDQzIDk2IDk2bDAgMTEyIDE2MCAwYzI2LjUgMCA0OC0yMS41IDQ4LTQ4bDAtMTkyYzAtMjYuNS0yMS41LTQ4LTQ4LTQ4bC0yODggMHptMjAwIDY0bDQ4IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRsMCA0OGMwIDEzLjMtMTAuNyAyNC0yNCAyNGwtNDggMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRsMC00OGMwLTEzLjMgMTAuNy0yNCAyNC0yNHpNNDggMjU2Yy0yNi41IDAtNDggMjEuNS00OCA0OGwwIDEwLjQgMTU2LjYgODYuMmMxLjEgLjYgMi4yIC45IDMuNCAuOXMyLjQtLjMgMy40LS45TDMyMCAzMTQuNCAzMjAgMzA0YzAtMjYuNS0yMS41LTQ4LTQ4LTQ4TDQ4IDI1NnpNMzIwIDM2OS4yTDE4Ni42IDQ0Mi42Yy04LjEgNC41LTE3LjMgNi44LTI2LjYgNi44cy0xOC40LTIuNC0yNi42LTYuOEwwIDM2OS4yIDAgNDY0YzAgMjYuNSAyMS41IDQ4IDQ4IDQ4bDIyNCAwYzI2LjUgMCA0OC0yMS41IDQ4LTQ4bDAtOTQuOHoiXX0sS2dyPWFMZSxKZ3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZ3VpdGFyIixpY29uOls1MTIsNTEyLFtdLCJmN2E2IiwiTTQ2NSA3Yy05LjQtOS40LTI0LjYtOS40LTMzLjkgMEwzODMgNTVjLTIuNCAyLjQtNC4zIDUuMy01LjUgOC41bC0xNS40IDQxLTc3LjUgNzcuNmMtNDUuMS0yOS40LTk5LjMtMzAuMi0xMzEgMS42LTExIDExLTE4IDI0LjYtMjEuNCAzOS42LTMuNyAxNi42LTE5LjEgMzAuNy0zNi4xIDMxLjYtMjUuNiAxLjMtNDkuMyAxMC43LTY3LjMgMjguNi00NC44IDQ0LjgtMzYuNCAxMjUuOCAxOC43IDE4MC45UzE4My42IDUyOCAyMjguNCA0ODMuMmMxNy45LTE3LjkgMjcuNC00MS43IDI4LjYtNjcuMyAuOS0xNyAxNS0zMi4zIDMxLjYtMzYuMSAxNS0zLjQgMjguNi0xMC41IDM5LjYtMjEuNCAzMS44LTMxLjggMzEtODUuOSAxLjYtMTMxbDc3LjYtNzcuNiA0MS0xNS40YzMuMi0xLjIgNi4xLTMuMSA4LjUtNS41bDQ4LTQ4YzkuNC05LjQgOS40LTI0LjYgMC0zMy45TDQ2NSA3ek0yMDggMjU2YTQ4IDQ4IDAgMSAxIDAgOTYgNDggNDggMCAxIDEgMC05NnoiXX0sZXhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InN1aXRjYXNlIixpY29uOls1MTIsNTEyLFsxMjk1MjNdLCJmMGYyIiwiTTIwMCA0OGwxMTIgMGM0LjQgMCA4IDMuNiA4IDhsMCA0MC0xMjggMCAwLTQwYzAtNC40IDMuNi04IDgtOHptLTU2IDhsMCA0MjQgMjI0IDAgMC00MjRjMC0zMC45LTI1LjEtNTYtNTYtNTZMMjAwIDBjLTMwLjkgMC01NiAyNS4xLTU2IDU2ek00MTYgOTZsMCAzODQgMzIgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTI1NmMwLTM1LjMtMjguNy02NC02NC02NGwtMzIgMHpNOTYgNDgwbDAtMzg0LTMyIDBDMjguNyA5NiAwIDEyNC43IDAgMTYwTDAgNDE2YzAgMzUuMyAyOC43IDY0IDY0IDY0bDMyIDB6Il19LGlMZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjaXJjbGUtdXAiLGljb246WzUxMiw1MTIsWzYxNDY3LCJhcnJvdy1hbHQtY2lyY2xlLXVwIl0sImYzNWIiLCJNMjU2IDUxMmEyNTYgMjU2IDAgMSAwIDAtNTEyIDI1NiAyNTYgMCAxIDAgMCA1MTJ6bTExLjMtMzg3LjNsMTA0IDEwNGM0LjYgNC42IDUuOSAxMS41IDMuNSAxNy40UzM2Ni41IDI1NiAzNjAgMjU2bC01NiAwIDAgOTZjMCAxNy43LTE0LjMgMzItMzIgMzJsLTMyIDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtOTYtNTYgMGMtNi41IDAtMTIuMy0zLjktMTQuOC05LjlzLTEuMS0xMi45IDMuNS0xNy40bDEwNC0xMDRjNi4yLTYuMiAxNi40LTYuMiAyMi42IDB6Il19LHR4cj1pTGUscnhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImYiLGljb246WzMyMCw1MTIsWzEwMl0sIjQ2IiwiTTMyIDMyQzE0LjMgMzIgMCA0Ni4zIDAgNjRMMCA0NDhjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTE2MCAxNjAgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtMTYwIDAgMC0xMjggMjI0IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJMMzIgMzJ6Il19LGF4cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ4bWFya3MtbGluZXMiLGljb246WzY0MCw1MTIsW10sImU1OWEiLCJNMzIgMzJDMTQuMyAzMiAwIDQ2LjMgMCA2NFMxNC4zIDk2IDMyIDk2bDU3NiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMyTDMyIDMyem0wIDM4NGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmw1NzYgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMkwzMiA0MTZ6TTcgMTY3Yy05LjQgOS40LTkuNCAyNC42IDAgMzMuOWw1NSA1NS01NSA1NWMtOS40IDkuNC05LjQgMjQuNiAwIDMzLjlzMjQuNiA5LjQgMzMuOSAwbDU1LTU1IDU1IDU1YzkuNCA5LjQgMjQuNiA5LjQgMzMuOSAwczkuNC0yNC42IDAtMzMuOWwtNTUtNTUgNTUtNTVjOS40LTkuNCA5LjQtMjQuNiAwLTMzLjlzLTI0LjYtOS40LTMzLjkgMGwtNTUgNTUtNTUtNTVjLTkuNC05LjQtMjQuNi05LjQtMzMuOSAwek0yNjUgMTY3Yy05LjQtOS40LTI0LjYtOS40LTMzLjkgMHMtOS40IDI0LjYgMCAzMy45bDU1IDU1LTU1IDU1Yy05LjQgOS40LTkuNCAyNC42IDAgMzMuOXMyNC42IDkuNCAzMy45IDBsNTUtNTUgNTUgNTVjOS40IDkuNCAyNC42IDkuNCAzMy45IDBzOS40LTI0LjYgMC0zMy45bC01NS01NSA1NS01NWM5LjQtOS40IDkuNC0yNC42IDAtMzMuOXMtMjQuNi05LjQtMzMuOSAwbC01NSA1NS01NS01NXpNNDU1IDE2N2MtOS40IDkuNC05LjQgMjQuNiAwIDMzLjlsNTUgNTUtNTUgNTVjLTkuNCA5LjQtOS40IDI0LjYgMCAzMy45czI0LjYgOS40IDMzLjkgMGw1NS01NSA1NSA1NWM5LjQgOS40IDI0LjYgOS40IDMzLjkgMHM5LjQtMjQuNiAwLTMzLjlsLTU1LTU1IDU1LTU1YzkuNC05LjQgOS40LTI0LjYgMC0zMy45cy0yNC42LTkuNC0zMy45IDBsLTU1IDU1LTU1LTU1Yy05LjQtOS40LTI0LjYtOS40LTMzLjkgMHoiXX0sb0xlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImVhcnRoLW9jZWFuaWEiLGljb246WzUxMiw1MTIsWyJnbG9iZS1vY2VhbmlhIl0sImU0N2IiLCJNMjU2IDUxMmEyNTYgMjU2IDAgMSAwIDAtNTEyIDI1NiAyNTYgMCAxIDAgMCA1MTJ6TTE5MiAxNTAuNmMwLTEyLjUgMTAuMS0yMi42IDIyLjYtMjIuNmw0MS40IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTE4LjcgMGMtOC41IDAtMTYuNi0zLjQtMjIuNi05LjRsLTE2LTE2Yy00LjItNC4yLTYuNi0xMC02LjYtMTZ6TTQzMiAyNTZjOC44IDAgMTYgNy4yIDE2IDE2bDAgMzJjMCA4LjgtNy4yIDE2LTE2IDE2cy0xNi03LjItMTYtMTZsMC0zMmMwLTguOCA3LjItMTYgMTYtMTZ6TTQxMS4zIDM3OS4zbC0zMiAzMmMtNi4yIDYuMi0xNi40IDYuMi0yMi42IDBzLTYuMi0xNi40IDAtMjIuNmwzMi0zMmM2LjItNi4yIDE2LjQtNi4yIDIyLjYgMHM2LjIgMTYuNCAwIDIyLjZ6TTIyNCA0MzJjMC04LjggNy4yLTE2IDE2LTE2bDMyIDBjOC44IDAgMTYgNy4yIDE2IDE2cy03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNnptLTk2LTgwYy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTE4LjdjMC04LjUgMy40LTE2LjYgOS40LTIyLjZsNDgtNDhjNC4yLTQuMiAxMC02LjYgMTYtNi42bDYuNiAwYzguOCAwIDE2IDcuMiAxNiAxNnM3LjIgMTYgMTYgMTYgMTYtNy4yIDE2LTE2IDcuMi0xNiAxNi0xNmw2LjYgMGM2IDAgMTEuOCAyLjQgMTYgNi42bDQ4IDQ4YzYgNiA5LjQgMTQuMSA5LjQgMjIuNmwwIDUwLjdjMCAxNy43LTE0LjMgMzItMzIgMzJsLTUwLjcgMGMtOC41IDAtMTYuNi0zLjQtMjIuNi05LjRsLTEzLjMtMTMuM2MtNi02LTE0LjEtOS40LTIyLjYtOS40TDEyOCAzNTJ6Il19LGl4cj1vTGUsb3hyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNvbW1lbnQtc2xhc2giLGljb246WzU3Niw1MTIsW10sImY0YjMiLCJNNDEtMjVDMzEuNi0zNC4zIDE2LjQtMzQuMyA3LTI1Uy0yLjMtLjQgNyA5TDUzNSA1MzdjOS40IDkuNCAyNC42IDkuNCAzMy45IDBzOS40LTI0LjYgMC0zMy45bC05Ni42LTk2LjZjNDQuNC00My4yIDcxLjYtMTAxLjggNzEuNi0xNjYuNSAwLTEzMi41LTExNC42LTI0MC0yNTYtMjQwLTYzIDAtMTIwLjggMjEuNC0xNjUuNCA1Ni44TDQxLTI1em0xOS40IDE1NUM0Mi4yIDE2MyAzMiAyMDAuMyAzMiAyMzkuOSAzMiAyOTQuMiA1MS4yIDM0NC4yIDgzLjYgMzg0LjRMMzQuOCA0NzYuN2MtNC44IDktMy4zIDIwIDMuNiAyNy41UzU2LjEgNTE0IDY1LjUgNTEwbDExOC40LTUwLjdjMzEuOCAxMy4zIDY3LjEgMjAuNyAxMDQuMSAyMC43IDM2LjQgMCA3MC45LTcuMSAxMDIuMy0xOS45TDYwLjMgMTMwLjF6Il19LG54cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwbGF5IixpY29uOls0NDgsNTEyLFs5NjU0XSwiZjA0YiIsIk05MS4yIDM2LjljLTEyLjQtNi44LTI3LjQtNi41LTM5LjYgLjdTMzIgNTcuOSAzMiA3MmwwIDM2OGMwIDE0LjEgNy41IDI3LjIgMTkuNiAzNC40czI3LjIgNy41IDM5LjYgLjdsMzM2LTE4NGMxMi44LTcgMjAuOC0yMC41IDIwLjgtMzUuMXMtOC0yOC4xLTIwLjgtMzUuMWwtMzM2LTE4NHoiXX0sc3hyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InZpYWwtY2lyY2xlLWNoZWNrIixpY29uOls1MTIsNTEyLFtdLCJlNTk2IiwiTTMyIDMyQzMyIDE0LjMgNDYuMyAwIDY0IDBMMjg4IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsMCAxNjEuNGMtNjYuMSAzMC4zLTExMiA5Ny4xLTExMiAxNzQuNiAwIDM5LjcgMTIgNzYuNiAzMi43IDEwNy4yLTEwLjMgMy4xLTIxLjMgNC44LTMyLjcgNC44LTYxLjkgMC0xMTItNTAuMS0xMTItMTEyTDY0IDY0QzQ2LjMgNjQgMzIgNDkuNyAzMiAzMnptOTYgMzJsMCAxMjggOTYgMCAwLTEyOC05NiAwem05NiAzMzZhMTQ0IDE0NCAwIDEgMSAyODggMCAxNDQgMTQ0IDAgMSAxIC0yODggMHptMjAxLjQtNjAuOWMtNy4xLTUuMi0xNy4yLTMuNi0yMi40IDMuNWwtNTMgNzIuOS0yNi44LTI2LjhjLTYuMi02LjItMTYuNC02LjItMjIuNiAwcy02LjIgMTYuNCAwIDIyLjZsNDAgNDBjMy4zIDMuMyA3LjkgNSAxMi42IDQuNnM4LjktMi44IDExLjctNi41bDY0LTg4YzUuMi03LjEgMy42LTE3LjItMy41LTIyLjN6Il19LGx4cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJicmlkZ2UtY2lyY2xlLWNoZWNrIixpY29uOls1NzYsNTEyLFtdLCJlNGM5IiwiTTMyIDMyQzE0LjMgMzIgMCA0Ni4zIDAgNjRTMTQuMyA5NiAzMiA5Nmw4IDAgMCA2NC00MCAwIDAgMTEyYzM3LjYgOS40IDY0IDQzLjIgNjQgODJsMCA5NGMwIDE3LjcgMTQuMyAzMiAzMiAzMmwzMiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtNjRjMC01MyA0My05NiA5Ni05NiA2LjQgMCAxMi43IC42IDE4LjcgMS44IDM0LjctNDkuNSA5Mi4yLTgxLjggMTU3LjMtODEuOCAyOC42IDAgNTUuNiA2LjIgODAgMTcuNGwwLTY1LjQtNDAgMCAwLTY0IDggMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMkwzMiAzMnpNNDI0IDk2bDAgNjQtODAgMCAwLTY0IDgwIDB6TTI5NiA5NmwwIDY0LTgwIDAgMC02NCA4MCAwek04OCA5Nmw4MCAwIDAgNjQtODAgMCAwLTY0ek01NzYgNDAwYTE0NCAxNDQgMCAxIDAgLTI4OCAwIDE0NCAxNDQgMCAxIDAgMjg4IDB6bS04Ni42LTYwLjljNy4xIDUuMiA4LjcgMTUuMiAzLjUgMjIuM2wtNjQgODhjLTIuOCAzLjgtNyA2LjItMTEuNyA2LjVzLTkuMy0xLjMtMTIuNi00LjZsLTQwLTQwYy02LjItNi4yLTYuMi0xNi40IDAtMjIuNnMxNi40LTYuMiAyMi42IDBsMjYuOCAyNi44IDUzLTcyLjljNS4yLTcuMSAxNS4yLTguNyAyMi40LTMuNXoiXX0sY3hyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNlZGktc2lnbiIsaWNvbjpbMzg0LDUxMixbXSwiZTBkZiIsIk0yMzIgMzJjMC0xMy4zLTEwLjctMjQtMjQtMjRzLTI0IDEwLjctMjQgMjRsMCAyNi41Qzg4LjggNzMuOSAxNiAxNTYuNCAxNiAyNTZTODguOCA0MzguMSAxODQgNDUzLjVsMCAyNi41YzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC0yNC42YzQ2LjgtMy43IDg5LjEtMjMuNiAxMjEuMy01My45IDEyLjktMTIuMSAxMy40LTMyLjQgMS4zLTQ1LjJzLTMyLjQtMTMuNC00NS4yLTEuM2MtMjAuNyAxOS42LTQ3LjYgMzIuNy03Ny4zIDM2LjJsMC0yNzAuMWMyOS44IDMuNSA1Ni42IDE2LjYgNzcuMyAzNi4yIDEyLjkgMTIuMSAzMy4xIDExLjUgNDUuMi0xLjNzMTEuNS0zMy4xLTEuMy00NS4yQzMyMS4xIDgwLjIgMjc4LjggNjAuMyAyMzIgNTYuNkwyMzIgMzJ6bS00OCA5MS44bDAgMjY0LjRDMTI0LjMgMzczLjggODAgMzIwLjEgODAgMjU2czQ0LjMtMTE3LjggMTA0LTEzMi4yeiJdfSxkeHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicHV6emxlLXBpZWNlIixpY29uOls1MTIsNTEyLFsxMjk1MTNdLCJmMTJlIiwiTTIyNCAwYzM1LjMgMCA2NCAyMS41IDY0IDQ4IDAgMTAuNC00LjQgMjAtMTIgMjcuOS02LjYgNi45LTEyIDE1LjMtMTIgMjQuOSAwIDE1IDEyLjIgMjcuMiAyNy4yIDI3LjJsNDQuOCAwYzI2LjUgMCA0OCAyMS41IDQ4IDQ4bDAgNDQuOGMwIDE1IDEyLjIgMjcuMiAyNy4yIDI3LjIgOS41IDAgMTgtNS40IDI0LjktMTIgNy45LTcuNSAxNy41LTEyIDI3LjktMTIgMjYuNSAwIDQ4IDI4LjcgNDggNjRzLTIxLjUgNjQtNDggNjRjLTEwLjQgMC0yMC4xLTQuNC0yNy45LTEyLTYuOS02LjYtMTUuMy0xMi0yNC45LTEyLTE1IDAtMjcuMiAxMi4yLTI3LjIgMjcuMkwzODQgNDY0YzAgMjYuNS0yMS41IDQ4LTQ4IDQ4bC01Ni44IDBjLTEyLjggMC0yMy4yLTEwLjQtMjMuMi0yMy4yIDAtOS4yIDUuOC0xNy4zIDEzLjItMjIuOCAxMS42LTguNyAxOC44LTIwLjcgMTguOC0zNCAwLTI2LjUtMjguNy00OC02NC00OHMtNjQgMjEuNS02NCA0OGMwIDEzLjMgNy4yIDI1LjMgMTguOCAzNCA3LjQgNS41IDEzLjIgMTMuNSAxMy4yIDIyLjggMCAxMi44LTEwLjQgMjMuMi0yMy4yIDIzLjJMNDggNTEyYy0yNi41IDAtNDgtMjEuNS00OC00OEwwIDM0My4yYzAtMTIuOCAxMC40LTIzLjIgMjMuMi0yMy4yIDkuMiAwIDE3LjMgNS44IDIyLjggMTMuMiA4LjcgMTEuNiAyMC43IDE4LjggMzQgMTguOCAyNi41IDAgNDgtMjguNyA0OC02NHMtMjEuNS02NC00OC02NGMtMTMuMyAwLTI1LjMgNy4yLTM0IDE4LjgtNS41IDcuNC0xMy41IDEzLjItMjIuOCAxMy4yLTEyLjggMC0yMy4yLTEwLjQtMjMuMi0yMy4yTDAgMTc2YzAtMjYuNSAyMS41LTQ4IDQ4LTQ4bDEwOC44IDBjMTUgMCAyNy4yLTEyLjIgMjcuMi0yNy4yIDAtOS41LTUuNC0xOC0xMi0yNC45LTcuNS03LjktMTItMTcuNS0xMi0yNy45IDAtMjYuNSAyOC43LTQ4IDY0LTQ4eiJdfSx1eHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaGVsbWV0LXVuIixpY29uOls1MTIsNTEyLFtdLCJlNTAzIiwiTTQ3OS41IDIyNEM0NzEuMiA5OC45IDM2Ny4yIDAgMjQwIDAgMTA3LjUgMCAwIDEwNy41IDAgMjQwbDAgNTYuM0MwIDM0NC44IDM5LjIgMzg0IDg3LjcgMzg0bDEyNy4zIDAgMTI4LjYgMTIxLjRjNC41IDQuMiAxMC40IDYuNiAxNi41IDYuNmw5NiAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC04Ni41IDAtMS41LTEuNSAwLTE3NC41IDExMiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC0uNSAwek0zMjAgNDE3LjJsLTc4LTczLjcgMzIuNC01NS41IDQ1LjYgMCAwIDEyOS4yek0yODUuMyAxMDMuMWwzNC43IDUyIDAtNDMuMmMwLTguOCA3LjItMTYgMTYtMTZzMTYgNy4yIDE2IDE2bDAgOTZjMCA3LjEtNC42IDEzLjMtMTEuNCAxNS4zcy0xNC0uNi0xNy45LTYuNGwtMzQuNy01MiAwIDQzLjJjMCA4LjgtNy4yIDE2LTE2IDE2cy0xNi03LjItMTYtMTZsMC05NmMwLTcuMSA0LjYtMTMuMyAxMS40LTE1LjNzMTQgLjYgMTcuOSA2LjR6TTE2MCAxMTJsMCA2NGMwIDguOCA3LjIgMTYgMTYgMTZzMTYtNy4yIDE2LTE2bDAtNjRjMC04LjggNy4yLTE2IDE2LTE2czE2IDcuMiAxNiAxNmwwIDY0YzAgMjYuNS0yMS41IDQ4LTQ4IDQ4cy00OC0yMS41LTQ4LTQ4bDAtNjRjMC04LjggNy4yLTE2IDE2LTE2czE2IDcuMiAxNiAxNnoiXX0sZnhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImdsYXNzLXdhdGVyIixpY29uOlszODQsNTEyLFtdLCJlNGY0IiwiTTMyIDBDMjMuMSAwIDE0LjYgMy43IDguNiAxMC4yUy0uNiAyNS40IC4xIDM0LjNMMjguOSA0MzcuN2MzIDQxLjkgMzcuOCA3NC4zIDc5LjggNzQuM2wxNjYuNiAwYzQyIDAgNzYuOC0zMi40IDc5LjgtNzQuM0wzODMuOSAzNC4zYy42LTguOS0yLjQtMTcuNi04LjUtMjQuMVMzNjAuOSAwIDM1MiAwTDMyIDB6TTczIDE1Ni41bC02LjYtOTIuNSAyNTEuMyAwLTYuNiA5Mi41LTI0LjIgMTIuMWMtMTkuNCA5LjctNDIuMiA5LjctNjEuNiAwLTIwLjktMTAuNC00NS41LTEwLjQtNjYuNCAwLTE5LjQgOS43LTQyLjIgOS43LTYxLjYgMEw3MyAxNTYuNXoiXX0scHhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhlYXJ0LWNpcmNsZS1ib2x0IixpY29uOls1NzYsNTEyLFtdLCJlNGZjIiwiTTI0MSA4Ny4xbDE1IDIwLjcgMTUtMjAuN0MyOTYgNTIuNSAzMzYuMiAzMiAzNzguOSAzMiA0NTIuNCAzMiA1MTIgOTEuNiA1MTIgMTY1LjFsMCAyLjZjMCAxNy42LTMuNCAzNS42LTkuNSA1My43LTIxLjgtOC42LTQ1LjYtMTMuNC03MC41LTEzLjQtMTA2IDAtMTkyIDg2LTE5MiAxOTIgMCAyOC41IDYuMiA1NS42IDE3LjQgODAtLjUgMC0uOSAwLTEuNCAwLTE1LjUgMC0zMC44LTQuNi00My4xLTE0LjEtNzMtNTUuNy0yMTIuOS0xODYtMjEyLjktMjk4LjJsMC0yLjZDMCA5MS42IDU5LjYgMzIgMTMzLjEgMzIgMTc1LjggMzIgMjE2IDUyLjUgMjQxIDg3LjF6TTI4OCA0MDBhMTQ0IDE0NCAwIDEgMSAyODggMCAxNDQgMTQ0IDAgMSAxIC0yODggMHptMTc3LjQtNzdjLTUuOC00LjItMTMuOC00LTE5LjQgLjVsLTgwIDY0Yy01LjMgNC4yLTcuNCAxMS40LTUuMSAxNy44UzM2OS4yIDQxNiAzNzYgNDE2bDMyLjkgMC0xNS45IDQyLjRjLTIuNSA2LjctLjIgMTQuMyA1LjYgMTguNnMxMy44IDQgMTkuNC0uNWw4MC02NGM1LjMtNC4yIDcuNC0xMS40IDUuMS0xNy44UzQ5NC44IDM4NCA0ODggMzg0bC0zMi45IDAgMTUuOS00Mi40YzIuNS02LjcgLjItMTQuMy01LjYtMTguNnoiXX0saHhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InB1bXAtc29hcCIsaWNvbjpbMzIwLDUxMixbXSwiZTA2YiIsIk05NiAwbDAgODAgMTI4IDAgMC0yNCA3MiAwYzEzLjMgMCAyNC0xMC43IDI0LTI0UzMwOS4zIDggMjk2IDhsLTcyIDAgMC04YzAtMTcuNy0xNC4zLTMyLTMyLTMybC02NCAwQzExMC4zLTMyIDk2LTE3LjcgOTYgMHpNNjQgMTI4Yy0zNS4zIDAtNjQgMjguNy02NCA2NEwwIDQ0OGMwIDM1LjMgMjguNyA2NCA2NCA2NGwxOTIgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTI1NmMwLTM1LjMtMjguNy02NC02NC02NEw2NCAxMjh6TTIyNCAzNDRjMCAzNS4zLTI4LjcgNTYtNjQgNTZzLTY0LTIwLjctNjQtNTZjMC0zMi41IDM3LTgwLjkgNTAuOS05Ny45IDMuMi0zLjkgOC4xLTYuMSAxMy4xLTYuMXM5LjkgMi4yIDEzLjEgNi4xQzE4NyAyNjMuMSAyMjQgMzExLjUgMjI0IDM0NHoiXX0sbXhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhhbmQtc2Npc3NvcnMiLGljb246WzUxMiw1MTIsW10sImYyNTciLCJNNDAgMjA4Yy0yMi4xIDAtNDAgMTcuOS00MCA0MHMxNy45IDQwIDQwIDQwbDE4MC4yIDBjLTcuNiA4LjUtMTIuMiAxOS43LTEyLjIgMzIgMCAyNS4zIDE5LjUgNDYgNDQuMyA0Ny45LTcuNyA4LjUtMTIuMyAxOS44LTEyLjMgMzIuMSAwIDI2LjUgMjEuNSA0OCA0OCA0OGw5NiAwYzcwLjcgMCAxMjgtNTcuMyAxMjgtMTI4bDAtMTEzLjFjMC00MC4yLTE2LTc4LjgtNDQuNC0xMDcuMy0yMi44LTIyLjgtNTMuNi0zNS42LTg1LjgtMzUuNkwzMzYgNjRjLTIxLjMgMC0zOS4zIDEzLjktNDUuNiAzMy4xbDc0LjUgMjMuN2M4LjQgMi43IDEzLjEgMTEuNyAxMC40IDIwLjFzLTExLjcgMTMuMS0yMC4xIDEwLjRsLTY3LjEtMjEuNCAwIC4xLTIwNC02NC4xQzYyLjkgNTkuMiA0MC41IDcwLjkgMzMuOSA5MnM1LjEgNDMuNSAyNi4yIDUwLjJMMjY5LjUgMjA4IDQwIDIwOHoiXX0sbkxlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImRvbGx5IixpY29uOls1NzYsNTEyLFsiZG9sbHktYm94Il0sImY0NzIiLCJNMzIgMEMxNC4zIDAgMCAxNC4zIDAgMzJTMTQuMyA2NCAzMiA2NGw3Mi45IDAgOTIuMSAyNzYuMmMtMjIuNSAxNy42LTM3IDQ1LTM3IDc1LjggMCA1MyA0MyA5NiA5NiA5NiA1Mi40IDAgOTUuMS00MiA5Ni05NC4zbDIwMi4xLTY3LjRjMTYuOC01LjYgMjUuOC0yMy43IDIwLjItNDAuNXMtMjMuNy0yNS44LTQwLjUtMjAuMkwzMzEuOCAzNTdjLTE3LjItMjIuMS00My45LTM2LjUtNzQtMzdMMTY1LjcgNDMuOEMxNTYuOSAxNy42IDEzMi41IDAgMTA0LjkgMEwzMiAwek0yMDggNDE2YTQ4IDQ4IDAgMSAxIDk2IDAgNDggNDggMCAxIDEgLTk2IDB6TTI4MC41IDg5LjNjLTI1LjIgOC4yLTM5IDM1LjMtMzAuOCA2MC41bDM5LjYgMTIxLjdjOC4yIDI1LjIgMzUuMyAzOSA2MC41IDMwLjhsMTIxLjctMzkuNmMyNS4yLTguMiAzOS0zNS4zIDMwLjgtNjAuNUw0NjIuOCA4MC41Yy04LjItMjUuMi0zNS4zLTM5LTYwLjUtMzAuOEwyODAuNSA4OS4zeiJdfSxneHI9bkxlLGNsZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwYXBlcmNsaXAiLGljb246WzUxMiw1MTIsWzEyODIwNl0sImYwYzYiLCJNMjI0LjYgMTIuOGM1Ni4yLTU2LjIgMTQ3LjQtNTYuMiAyMDMuNiAwczU2LjIgMTQ3LjQgMCAyMDMuNmwtMTY0IDE2NGMtMzQuNCAzNC40LTkwLjEgMzQuNC0xMjQuNSAwcy0zNC40LTkwLjEgMC0xMjQuNUwyOTIuNSAxMDMuM2MxMi41LTEyLjUgMzIuOC0xMi41IDQ1LjMgMHMxMi41IDMyLjggMCA0NS4zTDE4NSAzMDEuM2MtOS40IDkuNC05LjQgMjQuNiAwIDMzLjlzMjQuNiA5LjQgMzMuOSAwbDE2NC0xNjRjMzEuMi0zMS4yIDMxLjItODEuOSAwLTExMy4xcy04MS45LTMxLjItMTEzLjEgMGwtMTY0IDE2NGMtNTMuMSA1My4xLTUzLjEgMTM5LjIgMCAxOTIuM3MxMzkuMiA1My4xIDE5Mi4zIDBMNDI4LjMgMjg0LjNjMTIuNS0xMi41IDMyLjgtMTIuNSA0NS4zIDBzMTIuNSAzMi44IDAgNDUuM0wzNDMuNCA0NTkuNmMtNzguMSA3OC4xLTIwNC43IDc4LjEtMjgyLjggMHMtNzguMS0yMDQuNyAwLTI4Mi44bDE2NC0xNjR6Il19LHh4cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJkZW1vY3JhdCIsaWNvbjpbNjQwLDUxMixbXSwiZjc0NyIsIk02NCAzMmMwLTguOSAzLjgtMjAuOSA2LjItMjcuMyAxLTIuOCAzLjgtNC43IDYuOC00LjcgMS45IDAgMy44IC43IDUuMiAyLjFMMTI4IDQ1LjcgMTczLjggMi4xYzEuNC0xLjMgMy4yLTIuMSA1LjItMi4xIDMgMCA1LjggMS44IDYuOCA0LjcgMi40IDYuNSA2LjIgMTguNCA2LjIgMjcuMyAwIDI2LjUtMjEuOSA0Mi0yOS41IDQ2LjZsNzYuMiA3Mi42YzYgNS43IDEzLjkgOC44IDIyLjEgOC44bDIxOS4yIDAgMzIgMGM0MC4zIDAgNzguMiAxOSAxMDIuNCA1MS4ybDE5LjIgMjUuNmMxMC42IDE0LjEgNy43IDM0LjItNi40IDQ0LjhzLTM0LjIgNy43LTQ0LjgtNi40bC0xOS4yLTI1LjZjLTUuMy03LTExLjgtMTIuOC0xOS4yLTE3bDAgODcuNC0zNTIgMC00MC40LTk0LjNjLTMuOS05LjItMTUuMy0xMi42LTIzLjYtN2wtNDIuMSAyOGMtOS4xIDYuMS0xOS43IDkuMy0zMC43IDkuM2wtMiAwQzIzLjkgMjU2IDAgMjMyLjEgMCAyMDIuNyAwIDE5MC42IDQuMSAxNzguOSAxMS43IDE2OS40TDg3LjYgNzQuNkM3OC4xIDY3LjQgNjQgNTMuMiA2NCAzMnpNNTQ0IDM1MmwwIDEyOGMwIDE3LjctMTQuMyAzMi0zMiAzMmwtMzIgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC02NC0xNjAgMCAwIDY0YzAgMTcuNy0xNC4zIDMyLTMyIDMybC0zMiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTEyOCAzNTIgMHpNMjU2IDI4MGEyNCAyNCAwIDEgMCAwLTQ4IDI0IDI0IDAgMSAwIDAgNDh6bTI0OC0yNGEyNCAyNCAwIDEgMCAtNDggMCAyNCAyNCAwIDEgMCA0OCAwek0zNjggMjgwYTI0IDI0IDAgMSAwIDAtNDggMjQgMjQgMCAxIDAgMCA0OHoiXX0sc0xlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNxdWFyZS1hcnJvdy11cC1yaWdodCIsaWNvbjpbNDQ4LDUxMixbImV4dGVybmFsLWxpbmstc3F1YXJlIl0sImYxNGMiLCJNMzg0IDMyYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMzIwYzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDQ4MGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCA5NkMwIDYwLjcgMjguNyAzMiA2NCAzMmwzMjAgMHpNMjcyIDI5NmMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtMTEyYzAtMTMuMy0xMC43LTI0LTI0LTI0bC0xMTIgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGw1NC4xIDAtMTAzIDEwM2MtOS40IDkuNC05LjQgMjQuNiAwIDMzLjlzMjQuNiA5LjQgMzMuOSAwbDEwMy0xMDMgMCA1NC4xeiJdfSxieHI9c0xlLHZ4cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmZXJyeSIsaWNvbjpbNjQwLDUxMixbXSwiZTRlYSIsIk0yMjQgMzJjMC0xNy43IDE0LjMtMzIgMzItMzJMMzg0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCAzMiA0OCAwYzQ0LjIgMCA4MCAzNS44IDgwIDgwbDAgMTI4LS4xIDBjLjEgLjcgLjEgMS4zIC4xIDIgMCAzMC4yLTcuNiA1OS44LTIyIDg2LjNsLTEyLjcgMjMuMy0uNiAxYy0yMi4zLTExLjMtNDYuNS0xNi44LTcwLjgtMTYuNy0zMi41IC4yLTY0LjkgMTAuNy05Mi40IDMxLjQtMjIuMSAxNi42LTI5LjEgMTYuNi01MS4yIDAtMjguMS0yMS4xLTYxLjMtMzEuNi05NC40LTMxLjQtMjMuNiAuMi00Ny4xIDUuNy02OC43IDE2LjdsLS42LTEtMTIuNy0yMy4zYy0xNC40LTI2LjUtMjItNTYuMi0yMi04Ni4zIDAtLjcgMC0xLjQgLjEtMmwtLjEgMCAwLTEyOGMwLTQ0LjIgMzUuOC04MCA4MC04MGw0OCAwIDAtMzJ6TTE2MCAyNTZsMzIwIDAgMC0xMTJjMC04LjgtNy4yLTE2LTE2LTE2bC0yODggMGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMTEyek00MDMuNCA0NzYuMUMzNzkuMSA0OTQuMyAzNTEuMSA1MTIgMzIwIDUxMnMtNTkuMS0xNy43LTgzLjQtMzUuOWMtMjEuMy0xNi4xLTQ5LjktMTYuMS03MS4yIDAtMjMuOCAxNy45LTU0LjEgMzUuNS04OC4xIDM1LjMtMjAuNC0uMS00MC43LTYuNy01OS44LTIxLjEtMTAuNi04LTEyLjctMjMtNC43LTMzLjZzMjMtMTIuNyAzMy42LTQuN2MxMS4zIDguNSAyMS42IDExLjQgMzEuMiAxMS41IDE3LjYgLjEgMzcuMy05LjQgNTguOS0yNS43IDM4LjQtMjkgOTAuNS0yOSAxMjkgMCAyNCAxOC4xIDQwLjcgMjYuMyA1NC41IDI2LjNzMzAuNS04LjIgNTQuNS0yNi4zYzM4LjQtMjkgOTAuNS0yOSAxMjkgMCAxNi45IDEyLjcgMzIuOSAyMS41IDQ3LjggMjQuNiAxMy43IDIuOCAyNy40IC45IDQyLjMtMTAuMyAxMC42LTggMjUuNi01LjkgMzMuNiA0LjdzNS45IDI1LjYtNC43IDMzLjZjLTI2LjQgMTkuOS01NC4yIDI0LjQtODAuNyAxOS4xLTI1LjMtNS4xLTQ4LjEtMTguOS02Ny4yLTMzLjMtMjEuMy0xNi4xLTQ5LjktMTYuMS03MS4yIDB6Il19LHl4cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtb3NxdWl0byIsaWNvbjpbNTc2LDUxMixbXSwiZTUyYiIsIk0xNzguNSA0OTUuMmMtNy41IDkuNi0yMSAxMi4xLTMxLjMgNS4zUzEzMy41IDQ4MCAxMzguOSA0NjlsMS4yLTIuMiAzNi4yLTU4IDAtNDEgLjMtNGMuNi0zLjkgMi4yLTcuNyA0LjYtMTAuOWwzOS4zLTUyLjItNjYuMiA1OS41Yy0xNyAxNS4zLTM5IDIzLjctNjEuOSAyMy44bC04LjEgMGMtNDYuNiAwLTg0LjQtMzcuOC04NC40LTg0LjQgMC00MyAzMi40LTc5LjIgNzUuMS04My45bDEzMC41LTE0LjUtNDQuOC0zOC4zLTIuNC0yLjRjLTUuMy02LTcuMy0xNC40LTUuMy0yMi4zbDEzLjMtNTMuNC0yNS45LTM4LjktMS4zLTIuMWMtNS44LTEwLjgtMi43LTI0LjYgNy40LTMxLjcgMTAuMS03LjEgMjMuNy01LjEgMzEuNCA0LjNsMS41IDIgMzIgNDggMS40IDIuMmMyLjggNS4zIDMuNSAxMS42IDIuMSAxNy42bC0xMi4zIDQ5LjIgNTMuMyA0NS43IDAtMjguOGMwLTExLjggNi41LTIyLjEgMTYtMjcuN2wwLTYwLjUgLjMtMy4zYzEuNS03LjMgOC0xMi43IDE1LjctMTIuN3MxNC4yIDUuNSAxNS43IDEyLjdsLjMgMy4yIDAgNjAuNWM5LjYgNS41IDE2IDE1LjggMTYgMjcuN2wwIDI4LjkgNTMuNC00NS44LTEyLjMtNDkuMmMtMS41LTUuOS0uNy0xMi4yIDIuMS0xNy42bDEuNC0yLjIgMzItNDggMS41LTJjNy43LTkuNCAyMS4zLTExLjUgMzEuNC00LjMgMTAuMSA3LjEgMTMuMSAyMC45IDcuNCAzMS43bC0xLjMgMi4xLTI1LjkgMzguOSAxMy4zIDUzLjRjMiA4LS4xIDE2LjMtNS4zIDIyLjNsLTIuNCAyLjQtNDQuNyAzOC4zIDEzMC41IDE0LjVjNDIuOCA0LjggNzUuMSA0MC45IDc1LjEgODMuOSAwIDQ2LjYtMzcuOCA4NC40LTg0LjQgODQuNGwtOC4xIDBjLTIyLjggMC00NC45LTguNS02MS45LTIzLjhsLTY2LjEtNTkuNSAzOS4yIDUyLjJjMi40IDMuMiA0IDcgNC42IDEwLjlsLjMgNCAwIDQxIDM2LjIgNTggMS4yIDIuMWM1LjQgMTEgMiAyNC43LTguMyAzMS41cy0yMy44IDQuNC0zMS4zLTUuM2wtMS40LTItNDAtNjQtMS42LTMuMWMtMS40LTMuMS0yLjEtNi42LTIuMS0xMC4xbDAtMzkuOC0zMi40LTQzLjEgMCA3NC43YzAgMTcuNy0xNC4zIDMyLTMyIDMyLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtNzQuNi0zMi4zIDQzIDAgMzkuOGMwIDMuNS0uNyA2LjktMi4xIDEwLjFsLTEuNiAzLjEtNDAgNjQtMS40IDJ6Il19LHd4cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJidWlsZGluZy1jaXJjbGUtYXJyb3ctcmlnaHQiLGljb246WzU3Niw1MTIsW10sImU0ZDEiLCJNMzIgNjRDMzIgMjguNyA2MC43IDAgOTYgMEwzNTIgMGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDE0NC43Yy0zNS43IDIuOS02OC41IDE1LjYtOTYgMzUuNGwwLTRjMC04LjgtNy4yLTE2LTE2LTE2bC0zMiAwYy04LjggMC0xNiA3LjItMTYgMTZsMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZsNCAwYy0xMy44IDE5LjItMjQuMSA0MS0zMC4xIDY0LjUtMS45LS40LTMuOS0uNS01LjktLjVsLTMyIDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMybDAgODAgNzQuOSAwYzYuMSAxNy4zIDE0LjYgMzMuNCAyNS4xIDQ4TDk2IDUxMmMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMzIgNjR6TTE0NCA5NmMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMzJjMC04LjgtNy4yLTE2LTE2LTE2bC0zMiAwem0xMTIgMTZsMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZsMzIgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0zMmMwLTguOC03LjItMTYtMTYtMTZsLTMyIDBjLTguOCAwLTE2IDcuMi0xNiAxNnpNMTQ0IDIyNGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMzJjMC04LjgtNy4yLTE2LTE2LTE2bC0zMiAwek0yODggNDAwYTE0NCAxNDQgMCAxIDEgMjg4IDAgMTQ0IDE0NCAwIDEgMSAtMjg4IDB6bTE0MC43LTY3LjNjLTYuMiA2LjItNi4yIDE2LjQgMCAyMi42bDI4LjcgMjguNy04OS40IDBjLTguOCAwLTE2IDcuMi0xNiAxNnM3LjIgMTYgMTYgMTZsODkuNCAwLTI4LjcgMjguN2MtNi4yIDYuMi02LjIgMTYuNCAwIDIyLjZzMTYuNCA2LjIgMjIuNiAwbDU2LTU2YzYuMi02LjIgNi4yLTE2LjQgMC0yMi42bC01Ni01NmMtNi4yLTYuMi0xNi40LTYuMi0yMi42IDB6Il19LGxMZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJsZWZ0LXJpZ2h0IixpY29uOls1MTIsNTEyLFs4NTk2LCJhcnJvd3MtYWx0LWgiXSwiZjMzNyIsIk01MDIuNiA0MDYuNmwtOTYgOTZjLTkuMiA5LjItMjIuOSAxMS45LTM0LjkgNi45UzM1MiA0OTIuOSAzNTIgNDgwbDAtNjQtMzIwIDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsMzIwIDAgMC02NGMwLTEyLjkgNy44LTI0LjYgMTkuOC0yOS42czI1LjctMi4yIDM0LjkgNi45bDk2IDk2YzEyLjUgMTIuNSAxMi41IDMyLjggMCA0NS4zek05LjQgMTUwLjZjLTEyLjUtMTIuNS0xMi41LTMyLjggMC00NS4zbDk2LTk2YzkuMi05LjIgMjIuOS0xMS45IDM0LjktNi45UzE2MCAxOS4xIDE2MCAzMmwwIDY0IDMyMCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC0zMjAgMCAwIDY0YzAgMTIuOS03LjggMjQuNi0xOS44IDI5LjZzLTI1LjcgMi4yLTM0LjktNi45bC05Ni05NnoiXX0sTXhyPWxMZSxreHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidmlydXMiLGljb246WzUxMiw1MTIsW10sImUwNzQiLCJNMjk2IDQwYzAtMjIuMS0xNy45LTQwLTQwLTQwcy00MCAxNy45LTQwIDQwYzAgNDQuMS01My4zIDY2LjEtODQuNSAzNS0xNS42LTE1LjYtNDAuOS0xNS42LTU2LjYgMHMtMTUuNiA0MC45IDAgNTYuNmMzMS4yIDMxLjIgOS4xIDg0LjUtMzUgODQuNS0yMi4xIDAtNDAgMTcuOS00MCA0MHMxNy45IDQwIDQwIDQwYzQ0LjEgMCA2Ni4xIDUzLjMgMzUgODQuNS0xNS42IDE1LjYtMTUuNiA0MC45IDAgNTYuNnM0MC45IDE1LjYgNTYuNiAwYzMxLjItMzEuMiA4NC41LTkuMSA4NC41IDM1IDAgMjIuMSAxNy45IDQwIDQwIDQwczQwLTE3LjkgNDAtNDBjMC00NC4xIDUzLjMtNjYuMSA4NC41LTM1IDE1LjYgMTUuNiA0MC45IDE1LjYgNTYuNiAwczE1LjYtNDAuOSAwLTU2LjZjLTMxLjItMzEuMi05LjEtODQuNSAzNS04NC41IDIyLjEgMCA0MC0xNy45IDQwLTQwcy0xNy45LTQwLTQwLTQwYy00NC4xIDAtNjYuMS01My4zLTM1LTg0LjUgMTUuNi0xNS42IDE1LjYtNDAuOSAwLTU2LjZzLTQwLjktMTUuNi01Ni42IDBDMzQ5LjMgMTA2LjEgMjk2IDg0LjEgMjk2IDQwek0xNjAgMjI0YTMyIDMyIDAgMSAxIDY0IDAgMzIgMzIgMCAxIDEgLTY0IDB6bTE2MCAzMmEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6Il19LFN4cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJnZW0iLGljb246WzUxMiw1MTIsWzEyODE0Ml0sImYzYTUiLCJNMTE2LjcgMzMuOGM0LjUtNi4xIDExLjctOS44IDE5LjMtOS44bDI0MCAwYzcuNiAwIDE0LjggMy42IDE5LjMgOS44bDExMiAxNTJjNi44IDkuMiA2LjEgMjEuOS0xLjUgMzAuNGwtMjMyIDI1NmMtNC41IDUtMTEgNy45LTE3LjggNy45cy0xMy4yLTIuOS0xNy44LTcuOWwtMjMyLTI1NmMtNy43LTguNS04LjMtMjEuMi0xLjUtMzAuNGwxMTItMTUyem0zOC41IDM5LjhjLTMuMyAyLjUtNC4yIDctMi4xIDEwLjVMMjEwLjUgMTc5LjggNjMuMyAxOTJjLTQuMSAuMy03LjMgMy44LTcuMyA4czMuMiA3LjYgNy4zIDhsMTkyIDE2Yy40IDAgLjkgMCAxLjMgMGwxOTItMTZjNC4xLS4zIDcuMy0zLjggNy4zLThzLTMuMi03LjYtNy4zLThsLTE0Ny4yLTEyLjMgNTcuNC05NS42YzIuMS0zLjUgMS4yLTguMS0yLjEtMTAuNXMtNy45LTItMTAuNyAxTDI1NiAxNzIuMiAxNjUuOSA3NC42Yy0yLjgtMy03LjQtMy40LTEwLjctMXoiXX0senhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRvaWxldCIsaWNvbjpbNDQ4LDUxMixbMTI4NzAxXSwiZjdkOCIsIk0yNCAwQzEwLjcgMCAwIDEwLjcgMCAyNFMxMC43IDQ4IDI0IDQ4bDggMCAwIDE0OC45Yy0xLjkgMS40LTMuOCAyLjktNS42IDQuNC0xNS41IDEzLjItMjYuNCAzMS42LTI2LjQgNTQuNiAwIDQ2LjkgMTQuMyA4NC4xIDM3IDExMi41IDE0LjIgMTcuNyAzMS4xIDMxLjMgNDguNSA0MS44TDY1LjYgNDY5LjljLTMuMyA5LjgtMS42IDIwLjUgNC40IDI4LjhTODUuNyA1MTIgOTYgNTEybDI1NiAwYzEwLjMgMCAxOS45LTQuOSAyNi0xMy4zczcuNy0xOS4xIDQuNC0yOC44bC0xOS44LTU5LjVjMTcuNC0xMC41IDM0LjMtMjQuMSA0OC41LTQxLjggMjIuNy0yOC40IDM3LTY1LjUgMzctMTEyLjUgMC0yMy4xLTEwLjktNDEuNS0yNi40LTU0LjYtMS44LTEuNS0zLjctMy01LjYtNC40bDAtMTQ4LjkgOCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0UzQzNy4zIDAgNDI0IDBMMjQgMHpNOTYgODBjMC04LjggNy4yLTE2IDE2LTE2bDMyIDBjOC44IDAgMTYgNy4yIDE2IDE2cy03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNnpNMjI0IDI4OGMtODguNCAwLTE2MC0xNC4zLTE2MC0zMnM3MS42LTMyIDE2MC0zMiAxNjAgMTQuMyAxNjAgMzItNzEuNiAzMi0xNjAgMzJ6Il19LEN4cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzaW5nbGUtcXVvdGUtbGVmdCIsaWNvbjpbMTkyLDUxMixbXSwiZTgxYiIsIk0xMjggOTZjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTggMGMtMzAuOSAwLTU2IDI1LjEtNTYgNTZsMCA4IDY0IDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCA2NGMwIDM1LjMtMjguNyA2NC02NCA2NGwtNjQgMGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCAyMTZDMCAxNDkuNyA1My43IDk2IDEyMCA5Nmw4IDB6Il19LF94cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtb25leS1iaWxscyIsaWNvbjpbNTc2LDUxMixbXSwiZTFmMyIsIk0xNjAgMzJjLTM1LjMgMC02NCAyOC43LTY0IDY0bDAgMjI0YzAgMzUuMyAyOC43IDY0IDY0IDY0bDM1MiAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMjI0YzAtMzUuMy0yOC43LTY0LTY0LTY0TDE2MCAzMnptMTc2IDk2YTgwIDgwIDAgMSAxIDAgMTYwIDgwIDgwIDAgMSAxIDAtMTYwek0xNjAgMTUybDAtNDhjMC00LjQgMy42LTggOC04bDQ4IDBjNC40IDAgOC4xIDMuNiA3LjUgOC0zLjYgMjktMjYuNiA1MS45LTU1LjUgNTUuNS00LjQgLjUtOC0zLjEtOC03LjV6bTAgMTEyYzAtNC40IDMuNi04LjEgOC03LjUgMjkgMy42IDUxLjkgMjYuNiA1NS41IDU1LjUgLjUgNC40LTMuMSA4LTcuNSA4bC00OCAwYy00LjQgMC04LTMuNi04LThsMC00OHpNNTA0IDE1OS41Yy0yOS0zLjYtNTEuOS0yNi42LTU1LjUtNTUuNS0uNS00LjQgMy4xLTggNy41LThsNDggMGM0LjQgMCA4IDMuNiA4IDhsMCA0OGMwIDQuNC0zLjYgOC4xLTggNy41ek01MTIgMjY0bDAgNDhjMCA0LjQtMy42IDgtOCA4bC00OCAwYy00LjQgMC04LjEtMy42LTcuNS04IDMuNi0yOSAyNi42LTUxLjkgNTUuNS01NS41IDQuNC0uNSA4IDMuMSA4IDcuNXpNNDggMTUyYzAtMTMuMy0xMC43LTI0LTI0LTI0UzAgMTM4LjcgMCAxNTJMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzkyIDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRMNjQgNDMyYy04LjggMC0xNi03LjItMTYtMTZsMC0yNjR6Il19LFR4cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0YWJsZXQtYnV0dG9uIixpY29uOls0NDgsNTEyLFtdLCJmMTBhIiwiTTY0IDBDMjguNyAwIDAgMjguNyAwIDY0TDAgNDQ4YzAgMzUuMyAyOC43IDY0IDY0IDY0bDMyMCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMzg0YzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDB6TTIyNCA0MDBhMzIgMzIgMCAxIDEgMCA2NCAzMiAzMiAwIDEgMSAwLTY0eiJdfSxrdz17cHJlZml4OiJmYXMiLGljb25OYW1lOiJyZWN0YW5nbGUteG1hcmsiLGljb246WzUxMiw1MTIsWzYyMTY0LCJyZWN0YW5nbGUtdGltZXMiLCJ0aW1lcy1yZWN0YW5nbGUiLCJ3aW5kb3ctY2xvc2UiXSwiZjQxMCIsIk02NCA2NEMyOC43IDY0IDAgOTIuNyAwIDEyOEwwIDM4NGMwIDM1LjMgMjguNyA2NCA2NCA2NGwzODQgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTI1NmMwLTM1LjMtMjguNy02NC02NC02NEw2NCA2NHpNMTY3IDE2N2M5LjQtOS40IDI0LjYtOS40IDMzLjkgMGw1NSA1NSA1NS01NWM5LjQtOS40IDI0LjYtOS40IDMzLjkgMHM5LjQgMjQuNiAwIDMzLjlsLTU1IDU1IDU1IDU1YzkuNCA5LjQgOS40IDI0LjYgMCAzMy45cy0yNC42IDkuNC0zMy45IDBsLTU1LTU1LTU1IDU1Yy05LjQgOS40LTI0LjYgOS40LTMzLjkgMHMtOS40LTI0LjYgMC0zMy45bDU1LTU1LTU1LTU1Yy05LjQtOS40LTkuNC0yNC42IDAtMzMuOXoiXX0sTHhyPWt3LER4cj1rdyxBeHI9a3csRXhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6IndyZW5jaCIsaWNvbjpbNTc2LDUxMixbMTI4Mjk1XSwiZjBhZCIsIk01MDkuNCA5OC42YzcuNi03LjYgMjAuMy01LjcgMjQuMSA0LjMgNi44IDE3LjcgMTAuNSAzNyAxMC41IDU3LjEgMCA4OC40LTcxLjYgMTYwLTE2MCAxNjAtMTcuNSAwLTM0LjQtMi44LTUwLjItOEwxNDYuOSA0OTguOWMtMjguMSAyOC4xLTczLjcgMjguMS0xMDEuOCAwcy0yOC4xLTczLjcgMC0xMDEuOEwyMzIgMjEwLjJjLTUuMi0xNS44LTgtMzIuNi04LTUwLjIgMC04OC40IDcxLjYtMTYwIDE2MC0xNjAgMjAuMSAwIDM5LjQgMy43IDU3LjEgMTAuNSAxMCAzLjggMTEuOCAxNi41IDQuMyAyNC4xbC04OC43IDg4LjdjLTMgMy00LjcgNy4xLTQuNyAxMS4zbDAgNDEuNGMwIDguOCA3LjIgMTYgMTYgMTZsNDEuNCAwYzQuMiAwIDguMy0xLjcgMTEuMy00LjdsODguNy04OC43eiJdfSxCdz17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0cmFzaC1jYW4iLGljb246WzQ0OCw1MTIsWzYxNDYwLCJ0cmFzaC1hbHQiXSwiZjJlZCIsIk0xMzYuNyA1LjlDMTQxLjEtNy4yIDE1My4zLTE2IDE2Ny4xLTE2bDExMy45IDBjMTMuOCAwIDI2IDguOCAzMC40IDIxLjlMMzIwIDMyIDQxNiAzMmMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMkwzMiA5NkMxNC4zIDk2IDAgODEuNyAwIDY0UzE0LjMgMzIgMzIgMzJsOTYgMCA4LjctMjYuMXpNMzIgMTQ0bDM4NCAwIDAgMzA0YzAgMzUuMy0yOC43IDY0LTY0IDY0TDk2IDUxMmMtMzUuMyAwLTY0LTI4LjctNjQtNjRsMC0zMDR6bTg4IDY0Yy0xMy4zIDAtMjQgMTAuNy0yNCAyNGwwIDE5MmMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtMTkyYzAtMTMuMy0xMC43LTI0LTI0LTI0em0xMDQgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRsMCAxOTJjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTE5MmMwLTEzLjMtMTAuNy0yNC0yNC0yNHptMTA0IDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0bDAgMTkyYzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC0xOTJjMC0xMy4zLTEwLjctMjQtMjQtMjR6Il19LCR4cj1CdyxjTGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidGFibGUtY2VsbHMiLGljb246WzQ0OCw1MTIsWyJ0aCJdLCJmMDBhIiwiTTM4NCA5NmwwIDY0LTY0IDAgMC02NCA2NCAwem0wIDEyOGwwIDY0LTY0IDAgMC02NCA2NCAwem0wIDEyOGwwIDY0LTY0IDAgMC02NCA2NCAwek0yNTYgMjg4bC02NCAwIDAtNjQgNjQgMCAwIDY0em0tNjQgNjRsNjQgMCAwIDY0LTY0IDAgMC02NHptLTY0LTY0bC02NCAwIDAtNjQgNjQgMCAwIDY0ek02NCAzNTJsNjQgMCAwIDY0LTY0IDAgMC02NHptMC0xOTJsMC02NCA2NCAwIDAgNjQtNjQgMHptMTI4IDBsMC02NCA2NCAwIDAgNjQtNjQgMHpNNjQgMzJDMjguNyAzMiAwIDYwLjcgMCA5NkwwIDQxNmMwIDM1LjMgMjguNyA2NCA2NCA2NGwzMjAgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTMyMGMwLTM1LjMtMjguNy02NC02NC02NEw2NCAzMnoiXX0sUHhyPWNMZSxJeHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicmliYm9uIixpY29uOlszODQsNTEyLFsxMjc4OTVdLCJmNGQ2IiwiTTIzNS4xIDBjMzMuNCAwIDY0LjUgMTcuNCA4MS45IDQ1LjkgMS4yIDIgMTMgMjEuMyAzNS4zIDU3LjggMjEuMSAzNC41IDE4LjMgNzguNS03IDExMEwyNzguMyAyOTcuNyAzNjQuNSA0MDZjNS41IDYuOSA0LjQgMTYuOS0yLjUgMjIuNWwtODAgNjRjLTYuOSA1LjUtMTcgNC40LTIyLjUtMi41TDM4LjYgMjEzLjhDMTMuMyAxODIuMyAxMC41IDEzOC4zIDMxLjYgMTAzLjggNTQgNjcuMiA2NS43IDQ3LjkgNjcgNDUuOSA4NC40IDE3LjQgMTE1LjQgMCAxNDguOSAwbDg2LjMgMHpNMTkyIDE4OS4ybDQ4LjYtNjEuMi05Ny4zIDAgNDguNiA2MS4yek03NSAzMzYuMmw4Ni4yIDEwNy44LTM2LjggNDZjLTUuNSA2LjktMTUuNiA4LTIyLjUgMi41bC04MC02NGMtNi45LTUuNS04LTE1LjYtMi41LTIyLjVMNzUgMzM2LjJ6Il19LE54cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJsYW5kbWFyay1mbGFnIixpY29uOls1MTIsNTEyLFtdLCJlNTFjIiwiTTM1Mi0zMkwyNDAtMzJjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDE0NC0xNzYgMGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmwxNiAwIDAgMjI0LTUxLjIgMzguNEM0LjcgNDYwLjQgMCA0NjkuOSAwIDQ4MCAwIDQ5Ny43IDE0LjMgNTEyIDMyIDUxMmw0NDggMGMxNy43IDAgMzItMTQuMyAzMi0zMiAwLTEwLjEtNC43LTE5LjYtMTIuOC0yNS42bC01MS4yLTM4LjQgMC0yMjQgMTYgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtMTkyIDAgMC02NCA4MCAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTY0YzAtOC44LTcuMi0xNi0xNi0xNnptNDggMjI0bDAgMjI0LTY0IDAgMC0yMjQgNjQgMHptLTExMiAwbDAgMjI0LTY0IDAgMC0yMjQgNjQgMHptLTExMiAwbDAgMjI0LTY0IDAgMC0yMjQgNjQgMHoiXX0sZExlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InVwLWRvd24tbGVmdC1yaWdodCIsaWNvbjpbNTEyLDUxMixbImFycm93cy1hbHQiXSwiZjBiMiIsIk0yNzguNiA5LjRjLTEyLjUtMTIuNS0zMi44LTEyLjUtNDUuMyAwbC02NCA2NGMtOS4yIDkuMi0xMS45IDIyLjktNi45IDM0LjlTMTc5LjEgMTI4IDE5MiAxMjhsMzIgMCAwIDk2LTk2IDAgMC0zMmMwLTEyLjktNy44LTI0LjYtMTkuOC0yOS42cy0yNS43LTIuMi0zNC45IDYuOWwtNjQgNjRjLTEyLjUgMTIuNS0xMi41IDMyLjggMCA0NS4zbDY0IDY0YzkuMiA5LjIgMjIuOSAxMS45IDM0LjkgNi45UzEyOCAzMzIuOSAxMjggMzIwbDAtMzIgOTYgMCAwIDk2LTMyIDBjLTEyLjkgMC0yNC42IDcuOC0yOS42IDE5LjhzLTIuMiAyNS43IDYuOSAzNC45bDY0IDY0YzEyLjUgMTIuNSAzMi44IDEyLjUgNDUuMyAwbDY0LTY0YzkuMi05LjIgMTEuOS0yMi45IDYuOS0zNC45UzMzMi45IDM4NCAzMjAgMzg0bC0zMiAwIDAtOTYgOTYgMCAwIDMyYzAgMTIuOSA3LjggMjQuNiAxOS44IDI5LjZzMjUuNyAyLjIgMzQuOS02LjlsNjQtNjRjMTIuNS0xMi41IDEyLjUtMzIuOCAwLTQ1LjNsLTY0LTY0Yy05LjItOS4yLTIyLjktMTEuOS0zNC45LTYuOVMzODQgMTc5LjEgMzg0IDE5MmwwIDMyLTk2IDAgMC05NiAzMiAwYzEyLjkgMCAyNC42LTcuOCAyOS42LTE5LjhzMi4yLTI1LjctNi45LTM0LjlsLTY0LTY0eiJdfSxGeHI9ZExlLE94cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjYXItc2lkZSIsaWNvbjpbNjQwLDUxMixbMTI4NjYzXSwiZjVlNCIsIk0xNDcgMTA2LjdsLTI5LjggODUuMyAxMjIuOSAwIDAtOTYtNzcuOSAwYy02LjggMC0xMi45IDQuMy0xNS4xIDEwLjd6TTQ4LjYgMTkzLjlMODYuNSA4NS42Qzk3LjggNTMuNSAxMjguMSAzMiAxNjIuMSAzMkwzNjAgMzJjMjUuMiAwIDQ4LjkgMTEuOSA2NCAzMmw5Ni4yIDEyOC4zQzU4Ny4xIDE5Ni41IDY0MCAyNTIuMSA2NDAgMzIwbDAgMTZjMCAzNS4zLTI4LjcgNjQtNjQgNjRsLTE2LjQgMGMtNCA0NC45LTQxLjcgODAtODcuNiA4MHMtODMuNi0zNS4xLTg3LjYtODBsLTE0NC43IDBjLTQgNDQuOS00MS43IDgwLTg3LjYgODBzLTgzLjYtMzUuMS04Ny42LTgwbC0uNCAwYy0zNS4zIDAtNjQtMjguNy02NC02NGwwLTgwYzAtMzAuMSAyMC43LTU1LjMgNDguNi02Mi4xek00NDAgMTkybC02Ny4yLTg5LjZjLTMtNC03LjgtNi40LTEyLjgtNi40bC03MiAwIDAgOTYgMTUyIDB6TTE1MiA0MzJhNDAgNDAgMCAxIDAgMC04MCA0MCA0MCAwIDEgMCAwIDgwem0zNjAtNDBhNDAgNDAgMCAxIDAgLTgwIDAgNDAgNDAgMCAxIDAgODAgMHoiXX0sdUxlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRyYXNoLWFycm93LXVwIixpY29uOls0NDgsNTEyLFsidHJhc2gtcmVzdG9yZSJdLCJmODI5IiwiTTE2Ny4xLTE2bDExMy45IDBjMTMuOCAwIDI2IDguOCAzMC40IDIxLjlMMzIwIDMyIDQxNiAzMmMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMkwzMiA5NkMxNC4zIDk2IDAgODEuNyAwIDY0UzE0LjMgMzIgMzIgMzJsOTYgMCA4LjctMjYuMUMxNDEuMS03LjIgMTUzLjMtMTYgMTY3LjEtMTZ6TTMyIDE0NGwzODQgMC0yMS4xIDMyMy4xQzM5My4zIDQ5Mi40IDM3Mi4zIDUxMiAzNDcgNTEyTDEwMSA1MTJjLTI1LjMgMC00Ni4zLTE5LjYtNDcuOS00NC45TDMyIDE0NHptMjA5IDc5Yy05LjQtOS40LTI0LjYtOS40LTMzLjkgMGwtNzIgNzJjLTkuNCA5LjQtOS40IDI0LjYgMCAzMy45czI0LjYgOS40IDMzLjkgMGwzMS0zMSAwIDEwMi4xYzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC0xMDIuMSAzMSAzMWM5LjQgOS40IDI0LjYgOS40IDMzLjkgMHM5LjQtMjQuNiAwLTMzLjlsLTcyLTcyeiJdfSxSeHI9dUxlLEJ4cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJsaWZlLXJpbmciLGljb246WzUxMiw1MTIsW10sImYxY2QiLCJNMzY3LjIgNDEyLjVDMzM1LjkgNDM0LjkgMjk3LjUgNDQ4IDI1NiA0NDhzLTc5LjktMTMuMS0xMTEuMi0zNS41bDU4LTU4YzE1LjggOC42IDM0IDEzLjUgNTMuMyAxMy41czM3LjQtNC45IDUzLjMtMTMuNWw1OCA1OHptOTAuNyAuOGMzMy44LTQzLjQgNTQtOTggNTQtMTU3LjNTNDkxLjggMTQyLjEgNDU4IDk4LjdjOS0xMi41IDcuOS0zMC4xLTMuNC00MS4zUzQyNS44IDQ1IDQxMy4zIDU0QzM2OS45IDIwLjIgMzE1LjMgMCAyNTYgMFMxNDIuMSAyMC4yIDk4LjcgNTRjLTEyLjUtOS0zMC4xLTcuOS00MS4zIDMuNFM0NSA4Ni4yIDU0IDk4LjdDMjAuMiAxNDIuMSAwIDE5Ni43IDAgMjU2UzIwLjIgMzY5LjkgNTQgNDEzLjNjLTkgMTIuNS03LjkgMzAuMSAzLjQgNDEuM1M4Ni4yIDQ2NyA5OC43IDQ1OGM0My40IDMzLjggOTggNTQgMTU3LjMgNTRzMTEzLjktMjAuMiAxNTcuMy01NGMxMi41IDkgMzAuMSA3LjkgNDEuMy0zLjRzMTIuNC0yOC44IDMuNC00MS4zem0tNDUuNS00Ni4xbC01OC01OGM4LjYtMTUuOCAxMy41LTM0IDEzLjUtNTMuM3MtNC45LTM3LjQtMTMuNS01My4zbDU4LTU4QzQzNC45IDE3Ni4xIDQ0OCAyMTQuNSA0NDggMjU2cy0xMy4xIDc5LjktMzUuNSAxMTEuMnpNMzY3LjIgOTkuNWwtNTggNThjLTE1LjgtOC42LTM0LTEzLjUtNTMuMy0xMy41cy0zNy40IDQuOS01My4zIDEzLjVsLTU4LTU4QzE3Ni4xIDc3LjEgMjE0LjUgNjQgMjU2IDY0czc5LjkgMTMuMSAxMTEuMiAzNS41ek0xNTcuNSAzMDkuM2wtNTggNThDNzcuMSAzMzUuOSA2NCAyOTcuNSA2NCAyNTZzMTMuMS03OS45IDM1LjUtMTExLjJsNTggNThjLTguNiAxNS44LTEzLjUgMzQtMTMuNSA1My4zczQuOSAzNy40IDEzLjUgNTMuM3pNMjA4IDI1NmE0OCA0OCAwIDEgMSA5NiAwIDQ4IDQ4IDAgMSAxIC05NiAweiJdfSxIeHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY29weXJpZ2h0IixpY29uOls1MTIsNTEyLFsxNjldLCJmMWY5IiwiTTI1NiA1MTJhMjU2IDI1NiAwIDEgMCAwLTUxMiAyNTYgMjU2IDAgMSAwIDAgNTEyek0yMDUuMSAzMDYuOWMyOC4xIDI4LjEgNzMuNyAyOC4xIDEwMS44IDAgOS40LTkuNCAyNC42LTkuNCAzMy45IDBzOS40IDI0LjYgMCAzMy45Yy00Ni45IDQ2LjktMTIyLjggNDYuOS0xNjkuNyAwcy00Ni45LTEyMi44IDAtMTY5LjcgMTIyLjgtNDYuOSAxNjkuNyAwYzkuNCA5LjQgOS40IDI0LjYgMCAzMy45cy0yNC42IDkuNC0zMy45IDBjLTI4LjEtMjguMS03My43LTI4LjEtMTAxLjggMHMtMjguMSA3My43IDAgMTAxLjh6Il19LHF4cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmaWxlLXByZXNjcmlwdGlvbiIsaWNvbjpbMzg0LDUxMixbXSwiZjU3MiIsIk0wIDY0QzAgMjguNyAyOC43IDAgNjQgMEwyMTMuNSAwYzE3IDAgMzMuMyA2LjcgNDUuMyAxOC43TDM2NS4zIDEyNS4zYzEyIDEyIDE4LjcgMjguMyAxOC43IDQ1LjNMMzg0IDQ0OGMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA1MTJjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgNjR6bTIwOC01LjVsMCA5My41YzAgMTMuMyAxMC43IDI0IDI0IDI0TDMyNS41IDE3NiAyMDggNTguNXpNODggMTkyYy0xMy4zIDAtMjQgMTAuNy0yNCAyNGwwIDE0NGMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtNDAgMjIuNSAwIDU4LjQgNTUtMzMuNCAzMS42Yy05LjYgOS4xLTEwLjEgMjQuMy0uOSAzMy45czI0LjMgMTAuMSAzMy45IC45bDM1LjQtMzMuNSAzNS42IDMzLjVjOS43IDkuMSAyNC44IDguNiAzMy45LTFzOC42LTI0LjgtMS0zMy45bC0zMy42LTMxLjYgMzMuNi0zMS44YzkuNi05LjEgMTAuMS0yNC4zIC45LTMzLjlzLTI0LjMtMTAuMS0zMy45LS45bC0zNS43IDMzLjctNDAuOS0zOC41YzEyLjktMTEuNyAyMS4xLTI4LjYgMjEuMS00Ny41IDAtMzUuMy0yOC43LTY0LTY0LTY0bC01NiAwem0zMiA4MGwtOCAwIDAtMzIgMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZzLTcuMiAxNi0xNiAxNmwtMjQgMHoiXX0sanhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImVyYXNlciIsaWNvbjpbNTc2LDUxMixbXSwiZjEyZCIsIk0xNzguNSA0MTZsMTIzIDAgNjUuMy02NS4zLTE3My41LTE3My41LTEyNi43IDEyNi43IDExMiAxMTJ6TTIyNCA0ODBsLTQ1LjUgMGMtMTcgMC0zMy4zLTYuNy00NS4zLTE4LjdMMTcgMzQ1QzYuMSAzMzQuMSAwIDMxOS40IDAgMzA0czYuMS0zMC4xIDE3LTQxTDI2MyAxN0MyNzMuOSA2LjEgMjg4LjYgMCAzMDQgMHMzMC4xIDYuMSA0MSAxN0w1MjcgMTk5YzEwLjkgMTAuOSAxNyAyNS42IDE3IDQxcy02LjEgMzAuMS0xNyA0MWwtMTM1IDEzNSAxMjAgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtMjg4IDB6Il19LGZMZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJob3VyZ2xhc3Mtc3RhcnQiLGljb246WzM4NCw1MTIsWyJob3VyZ2xhc3MtMSJdLCJmMjUxIiwiTTMyIDBDMTQuMyAwIDAgMTQuMyAwIDMyUzE0LjMgNjQgMzIgNjRsMCAxMWMwIDQyLjQgMTYuOSA4My4xIDQ2LjkgMTEzLjFsNjcuOSA2Ny45LTY3LjkgNjcuOUM0OC45IDM1My45IDMyIDM5NC42IDMyIDQzN2wwIDExYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDMyMCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybDAtMTFjMC00Mi40LTE2LjktODMuMS00Ni45LTExMy4xbC02Ny45LTY3LjkgNjcuOS02Ny45YzMwLTMwIDQ2LjktNzAuNyA0Ni45LTExMy4xbDAtMTFjMTcuNyAwIDMyLTE0LjMgMzItMzJTMzY5LjcgMCAzNTIgMEwzMiAwek0yODggNDM3bDAgMTEtMTkyIDAgMC0xMWMwLTI1LjUgMTAuMS00OS45IDI4LjEtNjcuOWw2Ny45LTY3LjkgNjcuOSA2Ny45YzE4IDE4IDI4LjEgNDIuNCAyOC4xIDY3Ljl6Il19LFZ4cj1mTGUscExlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNpcmNsZS1sZWZ0IixpY29uOls1MTIsNTEyLFs2MTg0MCwiYXJyb3ctYWx0LWNpcmNsZS1sZWZ0Il0sImYzNTkiLCJNNTEyIDI1NmEyNTYgMjU2IDAgMSAwIC01MTIgMCAyNTYgMjU2IDAgMSAwIDUxMiAwek0xMjQuNyAyNDQuN2wxMDQtMTA0YzQuNi00LjYgMTEuNS01LjkgMTcuNC0zLjVzOS45IDguMyA5LjkgMTQuOGwwIDU2IDk2IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCAzMmMwIDE3LjctMTQuMyAzMi0zMiAzMmwtOTYgMCAwIDU2YzAgNi41LTMuOSAxMi4zLTkuOSAxNC44cy0xMi45IDEuMS0xNy40LTMuNWwtMTA0LTEwNGMtNi4yLTYuMi02LjItMTYuNCAwLTIyLjZ6Il19LFV4cj1wTGUsV3hyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNydXplaXJvLXNpZ24iLGljb246WzQ0OCw1MTIsW10sImUxNTIiLCJNMjQwIDk2Yy04OC40IDAtMTYwIDcxLjYtMTYwIDE2MCAwIDcxLjYgNDcuMSAxMzIuMyAxMTIgMTUyLjdMMTkyIDI1NmMwLTEzLjMgMTAuNy0yNCAyNC0yNCAxMi44IDAgMjMuMyAxMC4xIDI0IDIyLjcgMTUuNS05LjUgMzMuNS0xNC43IDUyLjMtMTQuN2wxMS44IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTExLjggMGMtMTguOCAwLTM2LjEgMTAtNDUuNCAyNi4zLTQuNSA3LjktNi45IDE2LjgtNi45IDI1LjlsMCA3NS44YzQyLjUgMCA4MS4xLTE2LjYgMTA5LjgtNDMuNiAxMi45LTEyLjEgMzMuMS0xMS41IDQ1LjIgMS4zczExLjUgMzMuMS0xLjMgNDUuMkMzNTMuNyA0NTYuOCAyOTkuNSA0ODAgMjQwIDQ4MCAxMTYuMyA0ODAgMTYgMzc5LjcgMTYgMjU2UzExNi4zIDMyIDI0MCAzMmM1OS41IDAgMTEzLjcgMjMuMiAxNTMuNyA2MS4xIDEyLjkgMTIuMSAxMy40IDMyLjQgMS4zIDQ1LjJzLTMyLjQgMTMuNC00NS4yIDEuM0MzMjEuMSAxMTIuNiAyODIuNSA5NiAyNDAgOTZ6Il19LEd4cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzbW9raW5nIixpY29uOls1NzYsNTEyLFsxMjg2ODRdLCJmNDhkIiwiTTM2MCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0bDAgMTljMCA0MC4zIDE2IDc5IDQ0LjUgMTA3LjVsMjEgMjFDNDY5IDE5MSA0ODAgMjE3LjQgNDgwIDI0NWwwIDE5YzAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0bDAtMTljMC0xNC45LTUuOS0yOS4xLTE2LjQtMzkuNmwtMjEtMjFDMzU3LjEgMTQ2LjkgMzM2IDk2IDMzNiA0M2wwLTE5YzAtMTMuMyAxMC43LTI0IDI0LTI0ek01NTIgMjg4Yy0xMy4zIDAtMjQtMTAuNy0yNC0yNGwwLTE5YzAtNDAuMy0xNi03OS00NC41LTEwNy41bC0yMS0yMUM0NDMgOTcgNDMyIDcwLjYgNDMyIDQzbDAtMTljMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNGwwIDE5YzAgMTQuOSA1LjkgMjkuMSAxNi40IDM5LjZsMjEgMjFDNTU0LjkgMTQxLjEgNTc2IDE5MiA1NzYgMjQ1bDAgMTljMCAxMy4zLTEwLjcgMjQtMjQgMjR6TTMyMCA0NDhsOTYgMCAwLTMyLTk2IDAgMCAzMnpNMCA0MTZjMC0zNS4zIDI4LjctNjQgNjQtNjRsMzg0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCA5NmMwIDE3LjctMTQuMyAzMi0zMiAzMkw2NCA1MTJjLTM1LjMgMC02NC0yOC43LTY0LTY0bDAtMzJ6bTU3Ni00MGwwIDExMmMwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNGwwLTExMmMwLTEzLjMgMTAuNy0yNCAyNC0yNHMyNCAxMC43IDI0IDI0eiJdfSxoTGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic3F1YXJlLXBvbGwtdmVydGljYWwiLGljb246WzQ0OCw1MTIsWyJwb2xsIl0sImY2ODEiLCJNNjQgMzJDMjguNyAzMiAwIDYwLjcgMCA5NkwwIDQxNmMwIDM1LjMgMjguNyA2NCA2NCA2NGwzMjAgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTMyMGMwLTM1LjMtMjguNy02NC02NC02NEw2NCAzMnptNTYgMTkyYzEzLjMgMCAyNCAxMC43IDI0IDI0bDAgMTEyYzAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0bDAtMTEyYzAtMTMuMyAxMC43LTI0IDI0LTI0em0xODQgODhjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNGwwIDQ4YzAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0bDAtNDh6TTIyNCAxMjhjMTMuMyAwIDI0IDEwLjcgMjQgMjRsMCAyMDhjMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjRsMC0yMDhjMC0xMy4zIDEwLjctMjQgMjQtMjR6Il19LFl4cj1oTGUsWnhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBlcnNvbi1jaXJjbGUtbWludXMiLGljb246WzY0MCw1MTIsW10sImU1NDAiLCJNMjgwIDI0YTU2IDU2IDAgMSAwIC0xMTIgMCA1NiA1NiAwIDEgMCAxMTIgMHptMjQgMjEyLjdMMzQxIDI4Ni42YzEyLjgtMTcuNSAyOC41LTMyLjcgNDYuMy00NWwtNTYuMi03NS43QzMwNiAxMzIgMjY2LjMgMTEyIDIyNCAxMTJzLTgyIDIwLTEwNy4yIDUzLjlsLTcwLjUgOTVjLTEwLjUgMTQuMi03LjYgMzQuMiA2LjYgNDQuOHMzNC4yIDcuNiA0NC44LTYuNkwxNDQgMjM2LjcgMTQ0IDUxMmMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMTYwYzAtOC44IDcuMi0xNiAxNi0xNnMxNiA3LjIgMTYgMTZsMCAxNjBjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTI3NS4zek02NDAgNDAwYTE0NCAxNDQgMCAxIDAgLTI4OCAwIDE0NCAxNDQgMCAxIDAgMjg4IDB6bS02NCAwYzAgOC44LTcuMiAxNi0xNiAxNmwtMTI4IDBjLTguOCAwLTE2LTcuMi0xNi0xNnM3LjItMTYgMTYtMTZsMTI4IDBjOC44IDAgMTYgNy4yIDE2IDE2eiJdfSxYeHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYmlvaGF6YXJkIixpY29uOls1NzYsNTEyLFs5NzYzXSwiZjc4MCIsIk0yNjAgMTIuNmMwLTguMy03LjYtMTQuNS0xNS41LTEyLjEtNjAuOSAxOC44LTEwNS4xIDc1LjgtMTA1LjEgMTQzLjEgMCAyNS4xIDYuMSA0OC43IDE3IDY5LjUtMjEgMS44LTQyIDguMi02MS41IDE5LjUtNTcuOSAzMy42LTg0LjggMTAwLjItNzAuOSAxNjIuNSAxLjkgOC40IDExLjQgMTIgMTguOSA3LjYgNS0yLjkgNy42LTguNiA3LjEtMTQuNC0uMy0zLjMtLjQtNi42LS40LTEwLjEgMC0xMjMuNSAxODQuNC0xMjMuNSAxODQuNCAwIDAgODguNC05NC41IDExMy42LTE0OC4yIDc1LjQtNC41LTMuMi0xMC41LTMuOS0xNS4zLTEuMS03IDQuMS04LjYgMTMuNi0yLjcgMTkuMSA0Ni42IDQzLjggMTE4IDUzLjkgMTc2LjEgMjAuMiAxNy45LTEwLjQgMzIuOC0yMy45IDQ0LjUtMzkuNCAxMS43IDE1LjYgMjYuNiAyOS4xIDQ0LjUgMzkuNCA1OC4xIDMzLjcgMTI5LjUgMjMuNiAxNzYuMS0yMC4yIDUuOS01LjUgNC4zLTE1LjEtMi43LTE5LjEtNC44LTIuOC0xMC44LTIuMS0xNS4zIDEuMS01My43IDM4LjItMTQ4LjIgMTMtMTQ4LjItNzUuNCAwLTEyMy41IDE4NC40LTEyMy41IDE4NC40IDAgMCAzLjQtLjEgNi44LS40IDEwLjEtLjUgNS44IDIuMSAxMS41IDcuMSAxNC40IDcuNCA0LjMgMTcgLjggMTguOS03LjYgMTMuOS02Mi4yLTEzLTEyOC45LTcwLjktMTYyLjUtMTkuNS0xMS4zLTQwLjQtMTcuNy02MS41LTE5LjUgMTAuOS0yMC44IDE3LTQ0LjQgMTctNjkuNSAwLTY3LjMtNDQuMi0xMjQuMy0xMDUuMS0xNDMuMS03LjktMi40LTE1LjUgMy44LTE1LjUgMTIuMSAwIDUuOSA0IDExIDkuNSAxMy4yIDgzLjQgMzMuNiA3MC44IDE3OC40LTM3LjggMTc4LjRTMTY3LjEgNTkuNCAyNTAuNSAyNS44YzUuNS0yLjIgOS41LTcuMyA5LjUtMTMuMnpNMjQ4LjQgMjg4YTQwIDQwIDAgMSAxIDgwIDAgNDAgNDAgMCAxIDEgLTgwIDB6TTQzNSAzMTcuN2MtMTYuMiAwLTMxLjQgNS41LTQyLjEgMTUtMTAuMSA5LjEtMTguMSAyMy40LTE4LjEgNDUuNiAwIDIxLjEgNy4yIDM1IDE2LjUgNDQuMSAzMi4yLTI0LjYgNTUuNS02MC41IDYzLjktMTAxLjgtNi4zLTEuOS0xMy4yLTMtMjAuMi0zek0yMDIgMzc4LjNjMC0yMi4zLTgtMzYuNi0xOC4xLTQ1LjYtMTAuNy05LjYtMjUuOS0xNS00Mi4xLTE1LTcgMC0xMy45IDEtMjAuMiAzIDguNCA0MS4zIDMxLjYgNzcuMiA2My45IDEwMS44IDkuNC05LjEgMTYuNS0yMy4xIDE2LjUtNDQuMnptNDEuMi0yMjQuM2M5IDEwLjIgMjMuMiAxOC4yIDQ1LjIgMTguMnMzNi4yLTggNDUuMi0xOC4yYzYuNy03LjYgMTEuNS0xNy41IDEzLjYtMjguNC0xOC4zLTYuOC0zOC4yLTEwLjUtNTguOC0xMC41cy00MC41IDMuNy01OC44IDEwLjVjMi4yIDEwLjkgNi45IDIwLjggMTMuNiAyOC41eiJdfSxtTGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYmVsbC1jb25jaWVyZ2UiLGljb246WzUxMiw1MTIsWzEyODcxOCwiY29uY2llcmdlLWJlbGwiXSwiZjU2MiIsIk0yMTYgNjRjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsMTYgMCAwIDMzLjNDMTI0LjggMTU2LjcgNDAuMiAyNDMuNyAzMi42IDM1Mmw0NDYuOSAwQzQ3MS44IDI0My43IDM4Ny4yIDE1Ni43IDI4MCAxNDUuM2wwLTMzLjMgMTYgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtODAgMHpNMjQgNDAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDQ2NCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0TDI0IDQwMHoiXX0sUXhyPW1MZSxLeHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicnVsZXItaG9yaXpvbnRhbCIsaWNvbjpbNTc2LDUxMixbXSwiZjU0NyIsIk00OCAzODRjLTI2LjUgMC00OC0yMS41LTQ4LTQ4TDAgMTc2YzAtMjYuNSAyMS41LTQ4IDQ4LTQ4bDI0IDAgMCAxMDRjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTEwNCA0OCAwIDAgNzJjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTcyIDQ4IDAgMCAxMDRjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTEwNCA0OCAwIDAgNzJjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTcyIDQ4IDAgMCAxMDRjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTEwNCAyNCAwYzI2LjUgMCA0OCAyMS41IDQ4IDQ4bDAgMTYwYzAgMjYuNS0yMS41IDQ4LTQ4IDQ4TDQ4IDM4NHoiXX0sSnhyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhvcnNlIixpY29uOls1NzYsNTEyLFsxMjgwMTRdLCJmNmYwIiwiTTQ0OCAyMzguMWwwLTc4LjEgMTYgMCA5LjggMTkuNmMxMi41IDI1LjEgNDIuMiAzNi40IDY4LjMgMjYgMjAuNS04LjIgMzMuOS0yOCAzMy45LTUwLjFMNTc2IDgwYzAtMTkuMS04LjQtMzYuMy0yMS43LTQ4bDUuNyAwYzguOCAwIDE2LTcuMiAxNi0xNlM1NjguOCAwIDU2MCAwTDQ0OCAwQzM3Ny4zIDAgMzIwIDU3LjMgMzIwIDEyOGwtMTcxLjIgMEMxMTguMSAxMjggOTEuMiAxNDQuMyA3Ni4zIDE2OC44IDMzLjIgMTc0LjUgMCAyMTEuNCAwIDI1NmwwIDU2YzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC01NmMwLTEzLjQgNi42LTI1LjIgMTYuNy0zMi41IDEuNiAxMyA2LjMgMjUuNCAxMy42IDM2LjRsMjguMiA0Mi40YzguMyAxMi40IDYuNCAyOC43LTEuMiA0MS42LTE2LjUgMjgtMjAuNiA2Mi4yLTEwIDkzLjlsMTcuNSA1Mi40YzQuNCAxMy4xIDE2LjYgMjEuOSAzMC40IDIxLjlsMzMuNyAwYzIxLjggMCAzNy4zLTIxLjQgMzAuNC00Mi4xbC0yMC44LTYyLjVjLTIuMS02LjQtLjUtMTMuNCA0LjMtMTguMmwxMi43LTEyLjdjMTMuMi0xMy4yIDIwLjYtMzEuMSAyMC42LTQ5LjcgMC0yLjMtLjEtNC42LS4zLTYuOWw4NCAyNGM0LjEgMS4yIDguMiAyLjEgMTIuMyAyLjhMMzIwIDQ4MGMwIDE3LjcgMTQuMyAzMiAzMiAzMmwzMiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtMTY0LjNjMTkuMi0xOS4yIDMxLjUtNDUuNyAzMi03NS43bDAgMCAwLTEuOXpNNDk2IDY0YTE2IDE2IDAgMSAxIDAgMzIgMTYgMTYgMCAxIDEgMC0zMnoiXX0sZWJyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNhbGVuZGFyIixpY29uOls0NDgsNTEyLFsxMjgxOTcsMTI4MTk4XSwiZjEzMyIsIk0xMjggMEMxMTAuMyAwIDk2IDE0LjMgOTYgMzJsMCAzMi0zMiAwQzI4LjcgNjQgMCA5Mi43IDAgMTI4bDAgNDggNDQ4IDAgMC00OGMwLTM1LjMtMjguNy02NC02NC02NGwtMzIgMCAwLTMyYzAtMTcuNy0xNC4zLTMyLTMyLTMycy0zMiAxNC4zLTMyIDMybDAgMzItMTI4IDAgMC0zMmMwLTE3LjctMTQuMy0zMi0zMi0zMnpNMCAyMjRMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzIwIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0xOTItNDQ4IDB6Il19LHRicj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJoYW5kcy1ob2xkaW5nLWNoaWxkIixpY29uOls2NDAsNTEyLFtdLCJlNGZhIiwiTTMyMC0zMmE0MCA0MCAwIDEgMSAwIDgwIDQwIDQwIDAgMSAxIDAtODB6TTQwIDY0YzIyLjEgMCA0MCAxNy45IDQwIDQwbDAgMTYwLjJjMCAxNyA2LjcgMzMuMyAxOC43IDQ1LjNsNTEuMSA1MS4xYzguMyA4LjMgMjEuMyA5LjYgMzEgMy4xIDEyLjktOC42IDE0LjctMjYuOSAzLjctMzcuOC03LjMtNy4zLTIzLjEtMjMuMS00Ny4yLTQ3LjItMTIuNS0xMi41LTEyLjUtMzIuOCAwLTQ1LjNzMzIuOC0xMi41IDQ1LjMgMGMyNC4xIDI0LjEgMzkuOSAzOS45IDQ3LjIgNDcuMmwwIDAgMjUuMyAyNS4zYzIxIDIxIDMyLjggNDkuNSAzMi44IDc5LjJsMCA3OC45YzAgMjYuNS0yMS41IDQ4LTQ4IDQ4bC02Ni43IDBjLTE3IDAtMzMuMy02LjctNDUuMy0xOC43TDI4LjEgMzkzLjRDMTAuMSAzNzUuNCAwIDM1MSAwIDMyNS41TDAgMTA0QzAgODEuOSAxNy45IDY0IDQwIDY0em01NjAgMGMyMi4xIDAgNDAgMTcuOSA0MCA0MGwwIDIyMS41YzAgMjUuNS0xMC4xIDQ5LjktMjguMSA2Ny45TDUxMiA0OTMuM2MtMTIgMTItMjguMyAxOC43LTQ1LjMgMTguN0w0MDAgNTEyYy0yNi41IDAtNDgtMjEuNS00OC00OGwwLTc4LjljMC0yOS43IDExLjgtNTguMiAzMi44LTc5LjJsMjUuMy0yNS4zIDAgMGM3LjMtNy4zIDIzLjEtMjMuMSA0Ny4yLTQ3LjIgMTIuNS0xMi41IDMyLjgtMTIuNSA0NS4zIDBzMTIuNSAzMi44IDAgNDUuM2MtMjQuMSAyNC4xLTM5LjkgMzkuOS00Ny4yIDQ3LjItMTEgMTEtOS4yIDI5LjIgMy43IDM3LjggOS43IDYuNSAyMi43IDUuMiAzMS0zLjFsNTEuMS01MS4xYzEyLTEyIDE4LjctMjguMyAxOC43LTQ1LjNMNTYwIDEwNGMwLTIyLjEgMTcuOS00MCA0MC00MHpNMzg0LjUgMTQ5bC0xOS44LTE2LjcgMTEuMSA4OC44YzEuNiAxMy4yLTcuNyAyNS4xLTIwLjggMjYuOHMtMjUuMS03LjctMjYuOC0yMC44bC00LjQtMzUtNy42IDAtNC40IDM1Yy0xLjYgMTMuMi0xMy42IDIyLjUtMjYuOCAyMC44cy0yMi41LTEzLjYtMjAuOC0yNi44bDExLjEtODguOC0xOS44IDE2LjdjLTEwLjEgOC42LTI1LjMgNy4zLTMzLjgtMi44cy03LjMtMjUuMyAyLjgtMzMuOGwyNy45LTIzLjZDMjcxLjMgNzIuOCAyOTUuMyA2NCAzMjAgNjRzNDguNyA4LjggNjcuNiAyNC43bDI3LjkgMjMuNmMxMC4xIDguNiAxMS40IDIzLjcgMi44IDMzLjhzLTIzLjcgMTEuNC0zMy44IDIuOHoiXX0scmJyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Iml0YWxpYyIsaWNvbjpbMzg0LDUxMixbXSwiZjAzMyIsIk0xMjggNjRjMC0xNy43IDE0LjMtMzIgMzItMzJsMTkyIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTU4LjcgMC0xMzMuMyAzMjAgNjQgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMkwzMiA0ODBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsNTguNyAwIDEzMy4zLTMyMC02NCAwYy0xNy43IDAtMzItMTQuMy0zMi0zMnoiXX0sYWJyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImtoYW5kYSIsaWNvbjpbNTEyLDUxMixbOTc3Ml0sImY2NmQiLCJNMjQwLjcgOGM4LjktNy40IDIxLjgtNy40IDMwLjcgMGwzNy44IDMxLjVjOC43IDcuMyAxMS4xIDE5LjYgNiAyOS42LTEuMiAyLjQtMi44IDUuNS00LjYgOS4yIDM0LjIgMTkuMiA1Ny4zIDU1LjggNTcuMyA5Ny44cy0yMy4xIDc4LjYtNTcuMyA5Ny44YzEuOCAzLjcgMy4zIDYuOCA0LjYgOS4yIDUuMSAxMCAyLjcgMjIuMy02IDI5LjZsLTM3LjIgMzEgMCAxOS44YzIyLjktMTUuNyA0OC40LTMzLjMgNzYuNy01Mi43IDQyLjgtMjkuNCA2OC40LTc4IDY4LjQtMTMwbDAtMTEuMWMwLTIzLjktNy4xLTQ3LjMtMjAuNC02Ny4yLTUuMS03LjctNC42LTE3LjggMS43LTI0LjYgNi42LTcuMSAxNy4yLTguMSAyNS4yLTIuOCAyNy41IDE4LjEgODkuNCA2Ny41IDg5LjQgMTQ5LjEgMCA0Ni41LTIwLjIgODguNi00MS44IDEyMC40LTIxLjYgMzItNDUuNiA1NS01NS4zIDYzLjgtNy44IDcuMS0xOSA3LjktMjcuNiAzbC03MC44LTQwLjMtMzIuNyAyMi41IDQ1LjUgMzEuM2MxLjgtLjQgMy43LS43IDUuNy0uNyAxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGMtMTIuMiAwLTIyLjMtOS4xLTIzLjgtMjFsLTQwLjItMjcuNiAwIDI4LjljOS42IDUuNSAxNiAxNS45IDE2IDI3LjcgMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJjMC0xMS44IDYuNC0yMi4yIDE2LTI3LjdsMC0yOC4xLTQwLjMgMjcuN2MtMS44IDExLjQtMTEuOCAyMC4xLTIzLjcgMjAuMS0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0YzIuMiAwIDQuNCAuMyA2LjUgLjlsNDUuOC0zMS41LTMyLjctMjIuNS03MC44IDQwLjNjLTguNyA0LjktMTkuOCA0LjEtMjcuNi0zLTkuNy04LjgtMzMuNy0zMS45LTU1LjMtNjMuOC0yMS41LTMxLjgtNDEuOC03My45LTQxLjgtMTIwLjQgMC04MS43IDYxLjktMTMxLjEgODkuNC0xNDkuMSA4LjEtNS4zIDE4LjYtNC4zIDI1LjIgMi44IDYuNCA2LjkgNi44IDE3IDEuNyAyNC42LTEzLjMgMTkuOS0yMC40IDQzLjMtMjAuNCA2Ny4ybDAgMTEuMWMwIDUxLjkgMjUuNiAxMDAuNiA2OC40IDEzMCAyOC40IDE5LjYgNTMuNyAzNi45IDc1LjYgNTJsMC0xOS4xLTM3LjItMzFjLTguNy03LjMtMTEuMS0xOS42LTYtMjkuNiAxLjItMi40IDIuOC01LjUgNC42LTkuMi0zNC4yLTE5LjItNTcuMy01NS44LTU3LjMtOTcuOHMyMy4xLTc4LjYgNTcuMy05Ny44Yy0xLjgtMy43LTMuMy02LjgtNC42LTkuMi01LjEtMTAtMi43LTIyLjMgNi0yOS42TDI0MC43IDh6TTIyMC4zIDEyMi45Yy0xNyAxMS41LTI4LjIgMzEtMjguMiA1My4xczExLjIgNDEuNiAyOC4yIDUzLjFjNi44LTE5LjIgMTEuOC0zOC40IDExLjgtNTMuMXMtNC45LTMzLjktMTEuOC01My4xem03MS41IDEwNi4yYzE3LTExLjUgMjguMi0zMSAyOC4yLTUzLjFzLTExLjItNDEuNi0yOC4yLTUzLjFjLTYuOCAxOS4yLTExLjggMzguNC0xMS44IDUzLjFzNC45IDMzLjkgMTEuOCA1My4xeiJdfSxnTGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmFjZS1mcm93bi1vcGVuIixpY29uOls1MTIsNTEyLFsxMjg1NTAsImZyb3duLW9wZW4iXSwiZjU3YSIsIk0yNTYgNTEyYTI1NiAyNTYgMCAxIDAgMC01MTIgMjU2IDI1NiAwIDEgMCAwIDUxMnpNMTc2IDE3NmEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6bTEyOCAzMmEzMiAzMiAwIDEgMSA2NCAwIDMyIDMyIDAgMSAxIC02NCAwek0xODIuNCAzODIuNWMtMTIuNCA1LjItMjYuNS00LjEtMjEuMS0xNi40IDE2LTM2LjYgNTIuNC02Mi4xIDk0LjgtNjIuMXM3OC44IDI1LjYgOTQuOCA2Mi4xYzUuNCAxMi4zLTguNyAyMS42LTIxLjEgMTYuNC0yMi40LTkuNS00Ny40LTE0LjgtNzMuNy0xNC44cy01MS4zIDUuMy03My43IDE0Ljh6Il19LGlicj1nTGUsZGxlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNoZWNrIixpY29uOls0NDgsNTEyLFsxMDAwMywxMDAwNF0sImYwMGMiLCJNNDM0LjggNzAuMWMxNC4zIDEwLjQgMTcuNSAzMC40IDcuMSA0NC43bC0yNTYgMzUyYy01LjUgNy42LTE0IDEyLjMtMjMuNCAxMy4xcy0xOC41LTIuNy0yNS4xLTkuM2wtMTI4LTEyOGMtMTIuNS0xMi41LTEyLjUtMzIuOCAwLTQ1LjNzMzIuOC0xMi41IDQ1LjMgMGwxMDEuNSAxMDEuNSAyMzQtMzIxLjdjMTAuNC0xNC4zIDMwLjQtMTcuNSA0NC43LTcuMXoiXX0sb2JyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZpbmdlcnByaW50IixpY29uOls1MTIsNTEyLFtdLCJmNTc3IiwiTTQ4IDI1NmMwLTExNC45IDkzLjEtMjA4IDIwOC0yMDggNjMuMSAwIDExOS42IDI4LjEgMTU3LjggNzIuNSA4LjYgMTAuMSAyMy44IDExLjIgMzMuOCAyLjZzMTEuMi0yMy44IDIuNi0zMy44QzQwMy4zIDM0LjYgMzMzLjcgMCAyNTYgMCAxMTQuNiAwIDAgMTE0LjYgMCAyNTZsMCA0MGMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtNDB6bTQ1OC41LTUyLjljLTIuNy0xMy0xNS41LTIxLjMtMjguNC0xOC41cy0yMS4zIDE1LjUtMTguNSAyOC40YzIuOSAxMy45IDQuNSAyOC4zIDQuNSA0My4xbDAgNDBjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTQwYzAtMTguMS0xLjktMzUuOC01LjUtNTIuOXpNMjU2IDgwYy0xOSAwLTM3LjQgMy01NC41IDguNi0xNS4yIDUtMTguNyAyMy43LTguMyAzNS45IDcuMSA4LjMgMTguOCAxMC44IDI5LjQgNy45IDEwLjYtMi45IDIxLjgtNC40IDMzLjQtNC40IDcwLjcgMCAxMjggNTcuMyAxMjggMTI4bDAgMjQuOWMwIDI1LjItMS41IDUwLjMtNC40IDc1LjMtMS43IDE0LjYgOS40IDI3LjggMjQuMiAyNy44IDExLjggMCAyMS45LTguNiAyMy4zLTIwLjMgMy4zLTI3LjQgNS01NSA1LTgyLjdsMC0yNC45YzAtOTcuMi03OC44LTE3Ni0xNzYtMTc2ek0xNTAuNyAxNDguN2MtOS4xLTEwLjYtMjUuMy0xMS40LTMzLjktLjQtMjMuMSAyOS44LTM2LjggNjcuMS0zNi44IDEwNy43bDAgMjQuOWMwIDI0LjItMi42IDQ4LjQtNy44IDcxLjktMy40IDE1LjYgNy45IDMxLjEgMjMuOSAzMS4xIDEwLjUgMCAxOS45LTcgMjIuMi0xNy4zIDYuNC0yOC4xIDkuNy01Ni44IDkuNy04NS44bDAtMjQuOWMwLTI3LjIgOC41LTUyLjQgMjIuOS03My4xIDcuMi0xMC40IDgtMjQuNi0uMi0zNC4yek0yNTYgMTYwYy01MyAwLTk2IDQzLTk2IDk2bDAgMjQuOWMwIDM1LjktNC42IDcxLjUtMTMuOCAxMDYuMS0zLjggMTQuMyA2LjcgMjkgMjEuNSAyOSA5LjUgMCAxNy45LTYuMiAyMC40LTE1LjQgMTAuNS0zOSAxNS45LTc5LjIgMTUuOS0xMTkuN2wwLTI0LjljMC0yOC43IDIzLjMtNTIgNTItNTJzNTIgMjMuMyA1MiA1MmwwIDI0LjljMCAzNi4zLTMuNSA3Mi40LTEwLjQgMTA3LjktMi43IDEzLjkgNy43IDI3LjIgMjEuOCAyNy4yIDEwLjIgMCAxOS03IDIxLTE3IDcuNy0zOC44IDExLjYtNzguMyAxMS42LTExOC4xbDAtMjQuOWMwLTUzLTQzLTk2LTk2LTk2em0yNCA5NmMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGwwIDI0LjljMCA1OS45LTExIDExOS4zLTMyLjUgMTc1LjJsLTUuOSAxNS4zYy00LjggMTIuNCAxLjQgMjYuMyAxMy44IDMxczI2LjMtMS40IDMxLTEzLjhsNS45LTE1LjNDMjY3LjkgNDExLjkgMjgwIDM0Ni43IDI4MCAyODAuOWwwLTI0Ljl6Il19LG5icj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjaGFyZ2luZy1zdGF0aW9uIixpY29uOls1NzYsNTEyLFtdLCJmNWU3IiwiTTY0IDY0QzY0IDI4LjcgOTIuNyAwIDEyOCAwTDI4OCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMjI0YzQ0LjIgMCA4MCAzNS44IDgwIDgwbDAgMTJjMCAxMSA5IDIwIDIwIDIwczIwLTkgMjAtMjBsMC0xMjcuN2MtMzIuNS0xMC4yLTU2LTQwLjUtNTYtNzYuM2wwLTMyYzAtOC44IDcuMi0xNiAxNi0xNmwxNiAwIDAtNDhjMC04LjggNy4yLTE2IDE2LTE2czE2IDcuMiAxNiAxNmwwIDQ4IDMyIDAgMC00OGMwLTguOCA3LjItMTYgMTYtMTZzMTYgNy4yIDE2IDE2bDAgNDggMTYgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDM1LjgtMjMuNSA2Ni4xLTU2IDc2LjNMNTIwIDM4MGMwIDM3LjYtMzAuNCA2OC02OCA2OHMtNjgtMzAuNC02OC02OGwwLTEyYzAtMTcuNy0xNC4zLTMyLTMyLTMybDAgMTI5LjRjOS4zIDMuMyAxNiAxMi4yIDE2IDIyLjYgMCAxMy4zLTEwLjcgMjQtMjQgMjRMNzIgNTEyYy0xMy4zIDAtMjQtMTAuNy0yNC0yNCAwLTEwLjUgNi43LTE5LjMgMTYtMjIuNkw2NCA2NHptODIuNyAxMjUuN2wzOSAwLTIwLjkgNjYuOWMtMi40IDcuNiAzLjMgMTUuNCAxMS4zIDE1LjQgMi45IDAgNS42LTEgNy44LTIuOWw5NC42LTgyYzMuMS0yLjcgNC45LTYuNiA0LjktMTAuNyAwLTcuOC02LjMtMTQuMS0xNC4xLTE0LjFsLTM5IDAgMjAuOS02Ni45YzIuNC03LjYtMy4zLTE1LjQtMTEuMy0xNS40LTIuOSAwLTUuNiAxLTcuOCAyLjlsLTk0LjYgODJjLTMuMSAyLjctNC45IDYuNi00LjkgMTAuNyAwIDcuOCA2LjMgMTQuMSAxNC4xIDE0LjF6Il19LHNicj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ1c2VyLWxvY2siLGljb246WzU3Niw1MTIsW10sImY1MDIiLCJNMjI0IDhhMTIwIDEyMCAwIDEgMSAwIDI0MCAxMjAgMTIwIDAgMSAxIDAtMjQwek0xOTQuMyAzMDRsNTkuNCAwYzI5LjcgMCA1Ny43IDcuMyA4Mi4zIDIwLjFsMCA0LjNjLTE5LjYgMTcuNi0zMiA0My4xLTMyIDcxLjVsMCA5NmMwIDUuNSAuNSAxMC45IDEuMyAxNi4xTDQ1LjcgNTEyQzI5LjMgNTEyIDE2IDQ5OC43IDE2IDQ4Mi4zIDE2IDM4My44IDk1LjggMzA0IDE5NC4zIDMwNHptMzAxLjcgLjFjMC0xNy43LTE0LjMtMzItMzItMzJzLTMyIDE0LjMtMzIgMzJsMCA0Ny45IDY0IDAgMC00Ny45ek0zNTIgNDAwYzAtMjAuOSAxMy40LTM4LjcgMzItNDUuM2wwLTUwLjZjMC00NC4yIDM1LjgtODAgODAtODBzODAgMzUuOCA4MCA4MGwwIDUwLjZjMTguNiA2LjYgMzIgMjQuNCAzMiA0NS4zbDAgOTZjMCAyNi41LTIxLjUgNDgtNDggNDhsLTEyOCAwYy0yNi41IDAtNDgtMjEuNS00OC00OGwwLTk2eiJdfSx4TGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibW9iaWxlLXNjcmVlbi1idXR0b24iLGljb246WzM4NCw1MTIsWyJtb2JpbGUtYWx0Il0sImYzY2QiLCJNMTYgNjRDMTYgMjguNyA0NC43IDAgODAgMEwzMDQgMGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDM4NGMwIDM1LjMtMjguNyA2NC02NCA2NEw4MCA1MTJjLTM1LjMgMC02NC0yOC43LTY0LTY0TDE2IDY0em02NCAwbDAgMzA0IDIyNCAwIDAtMzA0LTIyNCAwek0xOTIgNDcyYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMyLTMyIDE0LjMtMzIgMzIgMTQuMyAzMiAzMiAzMnoiXX0sbGJyPXhMZSxjYnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYW5jaG9yLWNpcmNsZS1jaGVjayIsaWNvbjpbNjQwLDUxMixbXSwiZTRhYSIsIk0zMjAgOTZhMzIgMzIgMCAxIDEgLTY0IDAgMzIgMzIgMCAxIDEgNjQgMHpNMjg4IDBjLTUzIDAtOTYgNDMtOTYgOTYgMCA0MS44IDI2LjcgNzcuNCA2NCA5MC41bDAgMjU3LjljLTYyLjktMTQuMy0xMTAuMi02OS43LTExMS45LTEzNi41bDE2LjEgMTQuMWMxMCA4LjcgMjUuMSA3LjcgMzMuOS0yLjNzNy43LTI1LjEtMi4zLTMzLjlsLTY0LTU2Yy05LTcuOS0yMi42LTcuOS0zMS42IDBsLTY0IDU2Yy0xMCA4LjctMTEgMjMuOS0yLjMgMzMuOXMyMy45IDExIDMzLjkgMi4zTDgwIDMwNy45YzIuMSAxMTMuMSA5NC40IDIwNC4xIDIwOCAyMDQuMSAxNi42IDAgMzIuNy0xLjkgNDguMi01LjYtMjAuMy0zMC41LTMyLjItNjctMzIuMi0xMDYuNCAwLTI3LjMgNS43LTUzLjMgMTYtNzYuOWwwLTEzNi42YzM3LjMtMTMuMiA2NC00OC43IDY0LTkwLjUgMC01My00My05Ni05Ni05NnpNNjQwIDQwMGExNDQgMTQ0IDAgMSAwIC0yODggMCAxNDQgMTQ0IDAgMSAwIDI4OCAwem0tODYuNi02MC45YzcuMSA1LjIgOC43IDE1LjIgMy41IDIyLjNsLTY0IDg4Yy0yLjggMy44LTcgNi4yLTExLjcgNi41cy05LjMtMS4zLTEyLjYtNC42bC00MC00MGMtNi4yLTYuMi02LjItMTYuNCAwLTIyLjZzMTYuNC02LjIgMjIuNiAwbDI2LjggMjYuOCA1My03Mi45YzUuMi03LjEgMTUuMi04LjcgMjIuNC0zLjV6Il19LGJMZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwZXJzb24td2Fsa2luZy13aXRoLWNhbmUiLGljb246WzU3Niw1MTIsWyJibGluZCJdLCJmMjlkIiwiTTIyNC0zMmE1NiA1NiAwIDEgMSAwIDExMiA1NiA1NiAwIDEgMSAwLTExMnpNMTYwIDIwNS4zbC0yMi42IDIyLjZjLTYgNi05LjQgMTQuMS05LjQgMjIuNmwwIDM3LjVjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC0zNy41YzAtMjUuNSAxMC4xLTQ5LjkgMjguMS02Ny45bDM0LjQtMzQuNGMyMy4yLTIzLjIgNTQuNi0zNi4yIDg3LjMtMzYuMiAzNi4xIDAgNzAuMyAxNS44IDkzLjggNDMuMWw2OC42IDgwYzExLjUgMTMuNCA5LjkgMzMuNi0zLjUgNDUuMXMtMzMuNiA5LjktNDUuMS0zLjVsLTU1LjctNjUgMCAxMTguNiAzNC41IDI5LjZjMTcuNyAxNS4yIDI5LjMgMzYuMiAzMi42IDU5LjNsMTIuNiA4OC4xYzIuNSAxNy41LTkuNyAzMy43LTI3LjIgMzYuMnMtMzMuNy05LjctMzYuMi0yNy4ybC0xMi42LTg4LjFjLTEuMS03LjctNS0xNC43LTEwLjktMTkuOGwtNzEuNC02MS4yYy0yMS4zLTE4LjItMzMuNS00NC45LTMzLjUtNzIuOWwwLTY5LjN6bS4xIDE2NS44YzIuNCAyLjMgNC44IDQuNiA3LjQgNi44bDQ2IDM5LjQtMi4yIDcuNmMtNC41IDE1LjctMTIuOSAzMC0yNC40IDQxLjVsLTY4LjMgNjguM2MtMTIuNSAxMi41LTMyLjggMTIuNS00NS4zIDBzLTEyLjUtMzIuOCAwLTQ1LjNsNjguMy02OC4zYzMuOC0zLjggNi42LTguNiA4LjEtMTMuOEwxNjAuMSAzNzF6bTIzMy41LTYyLjJjMTAuNi04IDI1LjYtNS44IDMzLjYgNC44bDE0NCAxOTJjOCAxMC42IDUuOCAyNS42LTQuOCAzMy42cy0yNS42IDUuOC0zMy42LTQuOGwtMTQ0LTE5MmMtOC0xMC42LTUuOC0yNS42IDQuOC0zMy42eiJdfSxkYnI9YkxlLHZMZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmaWxlLXdhdmVmb3JtIixpY29uOlszODQsNTEyLFsiZmlsZS1tZWRpY2FsLWFsdCJdLCJmNDc4IiwiTTAgNjRDMCAyOC43IDI4LjcgMCA2NCAwTDIxMy41IDBjMTcgMCAzMy4zIDYuNyA0NS4zIDE4LjdMMzY1LjMgMTI1LjNjMTIgMTIgMTguNyAyOC4zIDE4LjcgNDUuM0wzODQgNDQ4YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDUxMmMtMzUuMyAwLTY0LTI4LjctNjQtNjRsMC05NiA2MC4zIDAgNDguOCA2Mi43YzUuMSA2LjYgMTMuMyAxMCAyMS42IDkuMXMxNS41LTYuMSAxOS4xLTEzLjZsNDIuOS05MS4yIDkuOSAxOS44YzQuMSA4LjEgMTIuNCAxMy4zIDIxLjUgMTMuM2w3MiAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC01Ny4yIDAtMjUuNC01MC43Yy00LjEtOC4yLTEyLjYtMTMuNC0yMS44LTEzLjNzLTE3LjUgNS41LTIxLjQgMTMuOGwtNDcuMyAxMDAuNi0zMi00MS4xQzg2LjQgMzA3LjQgNzkuNCAzMDQgNzIgMzA0TDAgMzA0IDAgNjR6bTIwOC01LjVsMCA5My41YzAgMTMuMyAxMC43IDI0IDI0IDI0TDMyNS41IDE3NiAyMDggNTguNXoiXX0sdWJyPXZMZSxmYnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaG91c2UtY3JhY2siLGljb246WzUxMiw1MTIsW10sImUzYjEiLCJNMjc3LjggOC42Yy0xMi4zLTExLjQtMzEuMy0xMS40LTQzLjUgMGwtMjI0IDIwOGMtOS42IDktMTIuOCAyMi45LTggMzUuMVMxOC44IDI3MiAzMiAyNzJsMTYgMCAwIDE3NmMwIDM1LjMgMjguNyA2NCA2NCA2NGw4Ni40IDAtMzEuMy01Mi4yYy00LjEtNi44LTIuNi0xNS41IDMuNS0yMC41TDI1NiAzNjggMTk1LjggMjg1LjJjLTEwLjktMTUgOC4yLTMzLjUgMjIuOC0yMmwxMTcuOSA5Mi42YzggNi4zIDguMiAxOC40IC40IDI0LjlMMjU2IDQ0OCAyOTQuNCA1MTIgNDAwIDUxMmMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTE3NiAxNiAwYzEzLjIgMCAyNS04LjEgMjkuOC0yMC4zczEuNi0yNi4yLTgtMzUuMWwtMjI0LTIwOHoiXX0scGJyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhhdC13aXphcmQiLGljb246WzUxMiw1MTIsW10sImY2ZTgiLCJNNjQgNDAwbDg1LjctMjA4LjJjMTctNDEuMyA0Ny44LTc1LjMgODcuMi05Ni4zTDM4My44IDE3LjJjMTIuMy02LjYgMjYuNSA0LjcgMjMgMTguMkwzNjkuNiAxNzcuOGMtMS4xIDQuMS0xLjYgOC4zLTEuNiAxMi42IDAgNi4zIDEuMiAxMi42IDMuNiAxOC41bDc2LjQgMTkxLjEtMjA3LjEgMCAxMS44LTM1LjQgNDAuNC0xMy41YzYuNS0yLjIgMTAuOS04LjMgMTAuOS0xNS4ycy00LjQtMTMtMTAuOS0xNS4ybC00MC40LTEzLjUtMTMuNS00MC40QzIzNyAyNjAuNCAyMzAuOSAyNTYgMjI0IDI1NnMtMTMgNC40LTE1LjIgMTAuOWwtMTMuNSA0MC40LTQwLjQgMTMuNUMxNDguNCAzMjMgMTQ0IDMyOS4xIDE0NCAzMzZzNC40IDEzIDEwLjkgMTUuMmw0MC40IDEzLjUgMTEuOCAzNS40LTE0My4xIDB6TTI3OS42IDE0MS41Yy0xLjEtMy4zLTQuMS01LjUtNy42LTUuNXMtNi41IDIuMi03LjYgNS41bC02LjcgMjAuMi0yMC4yIDYuN2MtMy4zIDEuMS01LjUgNC4xLTUuNSA3LjZzMi4yIDYuNSA1LjUgNy42bDIwLjIgNi43IDYuNyAyMC4yYzEuMSAzLjMgNC4xIDUuNSA3LjYgNS41czYuNS0yLjIgNy42LTUuNWw2LjctMjAuMiAyMC4yLTYuN2MzLjMtMS4xIDUuNS00LjEgNS41LTcuNnMtMi4yLTYuNS01LjUtNy42bC0yMC4yLTYuNy02LjctMjAuMnpNMzIgNDQ4bDQ0OCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMyTDMyIDUxMmMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMnoiXX0seUxlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InVzZXItZG9jdG9yIixpY29uOls0NDgsNTEyLFsidXNlci1tZCJdLCJmMGYwIiwiTTIyNCA4YTEyMCAxMjAgMCAxIDAgMCAyNDAgMTIwIDEyMCAwIDEgMCAwLTI0MHptNjAgMzEyLjhjLTUuNC0uNS0xMS0uOC0xNi42LS44bC04Ni45IDBjLTUuNiAwLTExLjEgLjMtMTYuNiAuOGwwIDY3LjVjMTYuNSA3LjYgMjggMjQuMyAyOCA0My42IDAgMjYuNS0yMS41IDQ4LTQ4IDQ4cy00OC0yMS41LTQ4LTQ4YzAtMTkuNCAxMS41LTM2LjEgMjgtNDMuNmwwLTU4LjRDNjEgMzUzIDE2IDQxMy42IDE2IDQ4NC42IDE2IDQ5OS43IDI4LjMgNTEyIDQzLjQgNTEybDM2MS4xIDBjMTUuMSAwIDI3LjQtMTIuMyAyNy40LTI3LjQgMC03MS00NS0xMzEuNS0xMDgtMTU0LjZsMCAzNy40YzIzLjMgOC4yIDQwIDMwLjUgNDAgNTYuNmwwIDMyYzAgMTEtOSAyMC0yMCAyMHMtMjAtOS0yMC0yMGwwLTMyYzAtMTEtOS0yMC0yMC0yMHMtMjAgOS0yMCAyMGwwIDMyYzAgMTEtOSAyMC0yMCAyMHMtMjAtOS0yMC0yMGwwLTMyYzAtMjYuMSAxNi43LTQ4LjMgNDAtNTYuNmwwLTQ2LjZ6Il19LGhicj15TGUsd0xlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNoYXJ0LWJhciIsaWNvbjpbNTEyLDUxMixbImJhci1jaGFydCJdLCJmMDgwIiwiTTMyIDMyYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMzM2YzAgOC44IDcuMiAxNiAxNiAxNmw0MDAgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMkw4MCA0ODBjLTQ0LjIgMC04MC0zNS44LTgwLTgwTDAgNjRDMCA0Ni4zIDE0LjMgMzIgMzIgMzJ6bTk2IDY0YzAtMTcuNyAxNC4zLTMyIDMyLTMybDE5MiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC0xOTIgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJ6bTMyIDgwbDEyOCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC0xMjggMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMnptMCAxMTJsMjU2IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTI1NiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMyeiJdfSxtYnI9d0xlLE1MZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzcHJheS1jYW4tc3BhcmtsZXMiLGljb246WzU3Niw1MTIsWyJhaXItZnJlc2hlbmVyIl0sImY1ZDAiLCJNMTYwIDMybDAgODAgMTI4IDAgMC04MGMwLTE3LjctMTQuMy0zMi0zMi0zMkwxOTIgMGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJ6bTAgMTI4Yy01MyAwLTk2IDQzLTk2IDk2bDAgMjA4YzAgMjYuNSAyMS41IDQ4IDQ4IDQ4bDIyNCAwYzI2LjUgMCA0OC0yMS41IDQ4LTQ4bDAtMjA4YzAtNTMtNDMtOTYtOTYtOTZsLTEyOCAwem02NCA5NmE4MCA4MCAwIDEgMSAwIDE2MCA4MCA4MCAwIDEgMSAwLTE2MHpNNDQ4IDQ4YzAtMS40LTEtMy0yLjItMy42TDQxNiAzMiA0MDMuNiAyLjJDNDAzIDEgNDAxLjQgMCA0MDAgMHMtMyAxLTMuNiAyLjJMMzg0IDMyIDM1NC4yIDQ0LjRjLTEuMiAuNi0yLjIgMi4yLTIuMiAzLjYgMCAxLjQgMSAzIDIuMiAzLjZMMzg0IDY0IDM5Ni40IDkzLjhDMzk3IDk1IDM5OC42IDk2IDQwMCA5NnMzLTEgMy42LTIuMkw0MTYgNjQgNDQ1LjggNTEuNkM0NDcgNTEgNDQ4IDQ5LjQgNDQ4IDQ4em03Ni40IDQ1LjhDNTI1IDk1IDUyNi42IDk2IDUyOCA5NnMzLTEgMy42LTIuMkw1NDQgNjQgNTczLjggNTEuNmMxLjItLjYgMi4yLTIuMiAyLjItMy42IDAtMS40LTEtMy0yLjItMy42TDU0NCAzMiA1MzEuNiAyLjJDNTMxIDEgNTI5LjQgMCA1MjggMHMtMyAxLTMuNiAyLjJMNTEyIDMyIDQ4Mi4yIDQ0LjRjLTEuMiAuNi0yLjIgMi4yLTIuMiAzLjYgMCAxLjQgMSAzIDIuMiAzLjZMNTEyIDY0IDUyNC40IDkzLjh6bTcuMiAxMDAuNGMtLjYtMS4yLTIuMi0yLjItMy42LTIuMnMtMyAxLTMuNiAyLjJMNTEyIDIyNCA0ODIuMiAyMzYuNGMtMS4yIC42LTIuMiAyLjItMi4yIDMuNiAwIDEuNCAxIDMgMi4yIDMuNkw1MTIgMjU2IDUyNC40IDI4NS44Yy42IDEuMiAyLjIgMi4yIDMuNiAyLjJzMy0xIDMuNi0yLjJMNTQ0IDI1NiA1NzMuOCAyNDMuNmMxLjItLjYgMi4yLTIuMiAyLjItMy42IDAtMS40LTEtMy0yLjItMy42TDU0NCAyMjQgNTMxLjYgMTk0LjJ6TTUxMiAxNDRjMC0xLjQtMS0zLTIuMi0zLjZMNDgwIDEyOCA0NjcuNiA5OC4yQzQ2NyA5NyA0NjUuNCA5NiA0NjQgOTZzLTMgMS0zLjYgMi4yTDQ0OCAxMjggNDE4LjIgMTQwLjRjLTEuMiAuNi0yLjIgMi4yLTIuMiAzLjYgMCAxLjQgMSAzIDIuMiAzLjZMNDQ4IDE2MCA0NjAuNCAxODkuOGMuNiAxLjIgMi4yIDIuMiAzLjYgMi4yczMtMSAzLjYtMi4yTDQ4MCAxNjAgNTA5LjggMTQ3LjZjMS4yLS42IDIuMi0yLjIgMi4yLTMuNnoiXX0sZ2JyPU1MZSx4YnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYmFodC1zaWduIixpY29uOlszMjAsNTEyLFtdLCJlMGFjIiwiTTEzNiAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNGwwIDQwLTc0LjQgMEMxNi44IDY0IDAgODAuOCAwIDEwMS42TDAgNDA2LjNjMCAyMyAxOC43IDQxLjcgNDEuNyA0MS43bDcwLjMgMCAwIDQwYzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC00MCA0OCAwYzYxLjkgMCAxMTItNTAuMSAxMTItMTEyIDAtNDAuMS0yMS4xLTc1LjMtNTIuNy05NS4xIDEzLjEtMTguMyAyMC43LTQwLjcgMjAuNy02NC45IDAtNjEuOS01MC4xLTExMi0xMTItMTEybC0xNiAwIDAtNDBjMC0xMy4zLTEwLjctMjQtMjQtMjR6TTExMiAxMjhsMCA5Ni00OCAwIDAtOTYgNDggMHptNDggOTZsMC05NiAxNiAwYzI2LjUgMCA0OCAyMS41IDQ4IDQ4cy0yMS41IDQ4LTQ4IDQ4bC0xNiAwem0tNDggNjRsMCA5Ni00OCAwIDAtOTYgNDggMHptNDggOTZsMC05NiA0OCAwYzI2LjUgMCA0OCAyMS41IDQ4IDQ4cy0yMS41IDQ4LTQ4IDQ4bC00OCAweiJdfSxrTGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidGVtcGVyYXR1cmUtYXJyb3ctdXAiLGljb246WzUxMiw1MTIsWyJ0ZW1wZXJhdHVyZS11cCJdLCJlMDQwIiwiTTY0LjUgOTZjMC01MyA0My05NiA5Ni05NnM5NiA0MyA5NiA5NmwwIDE2NC43YzI5LjUgMjYuNCA0OCA2NC43IDQ4IDEwNy4zIDAgNzkuNS02NC41IDE0NC0xNDQgMTQ0cy0xNDQtNjQuNS0xNDQtMTQ0YzAtNDIuNiAxOC41LTgxIDQ4LTEwNy4zTDY0LjUgOTZ6bTk2IDMzNmMzNS4zIDAgNjQtMjguNyA2NC02NCAwLTI2LjktMTYuNS00OS45LTQwLTU5LjNsMC0yMTIuN2MwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGwwIDIxMi43Yy0yMy41IDkuNS00MCAzMi41LTQwIDU5LjMgMCAzNS4zIDI4LjcgNjQgNjQgNjR6TTQzOS4xIDkuNGw2NCA2NGMxMi41IDEyLjUgMTIuNSAzMi44IDAgNDUuM3MtMzIuOCAxMi41LTQ1LjMgMGwtOS40LTkuNCAwIDE3OC43YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMTc4LjctOS40IDkuNGMtMTIuNSAxMi41LTMyLjggMTIuNS00NS4zIDBzLTEyLjUtMzIuOCAwLTQ1LjNsNjQtNjRjNi02IDE0LjEtOS40IDIyLjYtOS40czE2LjYgMy40IDIyLjYgOS40eiJdfSxiYnI9a0xlLHZicj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ3ZWItYXdlc29tZSIsaWNvbjpbNjQwLDUxMixbXSwiZTY4MiIsIk0zNzIuMiA1MmMwIDIwLjktMTIuNCAzOS0zMC4yIDQ3LjJMNDQ4IDE5MiA1NTIuNCAxNzEuMWMtNS4zLTcuNy04LjQtMTcuMS04LjQtMjcuMSAwLTI2LjUgMjEuNS00OCA0OC00OHM0OCAyMS41IDQ4IDQ4YzAgMjYtMjAuNiA0Ny4xLTQ2LjQgNDhMNDgxIDQ0Mi4zYy0xMC4zIDIzLTMzLjIgMzcuNy01OC40IDM3LjdsLTIwNS4yIDBjLTI1LjIgMC00OC0xNC44LTU4LjQtMzcuN0w0Ni40IDE5MkMyMC42IDE5MS4xIDAgMTcwIDAgMTQ0IDAgMTE3LjUgMjEuNSA5NiA0OCA5NnM0OCAyMS41IDQ4IDQ4YzAgMTAuMS0zLjEgMTkuNC04LjQgMjcuMUwxOTIgMTkyIDI5OC4xIDk5LjFjLTE3LjctOC4zLTMwLTI2LjMtMzAtNDcuMSAwLTI4LjcgMjMuMy01MiA1Mi01MnM1MiAyMy4zIDUyIDUyeiJdfSx5YnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibm9uLWJpbmFyeSIsaWNvbjpbMzg0LDUxMixbXSwiZTgwNyIsIk0xOTIgNTQ0Yy05Ny4yIDAtMTc2LTc4LjgtMTc2LTE3NiAwLTg2LjMgNjIuMS0xNTggMTQ0LTE3M2wwLTQ3LjItNDkuNyAyNC44LTMgMS4zYy0xNS4yIDUuNy0zMi41LS44LTM5LjktMTUuNy03LjQtMTQuOC0yLjItMzIuNiAxMS41LTQxLjNsMi44LTEuNiAzOC44LTE5LjQtMzguOC0xOS40Yy0xNS44LTcuOS0yMi4yLTI3LjEtMTQuMy00Mi45IDcuNC0xNC44IDI0LjgtMjEuNCA0MC0xNS42bDMgMS4zIDQ5LjcgMjQuOCAwLTQ0LjJjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDQ0LjIgNDkuNy0yNC44IDMtMS4zYzE1LjItNS44IDMyLjUgLjggMzkuOSAxNS42czIuMiAzMi43LTExLjUgNDEuM2wtMi44IDEuNi0zOC43IDE5LjQgMzguNyAxOS4zYzE1LjggNy45IDIyLjIgMjcuMSAxNC4zIDQyLjktNy40IDE0LjgtMjQuNyAyMS40LTM5LjkgMTUuNmwtMy0xLjMtNDkuNy0yNC44IDAgNDcuMmM4MS45IDE1LjEgMTQ0IDg2LjggMTQ0IDE3MyAwIDk3LjItNzguOCAxNzYtMTc2IDE3NnptMC02NGExMTIgMTEyIDAgMSAwIDAtMjI0IDExMiAxMTIgMCAxIDAgMCAyMjR6Il19LHdicj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJuIixpY29uOlszODQsNTEyLFsxMTBdLCI0ZSIsIk0yMS4xIDMzLjljMTIuNy00LjYgMjYuOS0uNyAzNS41IDkuNkwzMjAgMzU5LjYgMzIwIDY0YzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJsMCAzODRjMCAxMy41LTguNCAyNS41LTIxLjEgMzAuMXMtMjYuOSAuNy0zNS41LTkuNkw2NCAxNTIuNCA2NCA0NDhjMCAxNy43LTE0LjMgMzItMzIgMzJTMCA0NjUuNyAwIDQ0OEwwIDY0QzAgNTAuNSA4LjQgMzguNSAyMS4xIDMzLjl6Il19LFNMZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJhcnJvd3MtdXAtZG93bi1sZWZ0LXJpZ2h0IixpY29uOls1MTIsNTEyLFsiYXJyb3dzIl0sImYwNDciLCJNMjc4LjYgOS40Yy0xMi41LTEyLjUtMzIuOC0xMi41LTQ1LjMgMGwtNjQgNjRjLTEyLjUgMTIuNS0xMi41IDMyLjggMCA0NS4zczMyLjggMTIuNSA0NS4zIDBsOS40LTkuNCAwIDExNC43LTExNC43IDAgOS40LTkuNGMxMi41LTEyLjUgMTIuNS0zMi44IDAtNDUuM3MtMzIuOC0xMi41LTQ1LjMgMGwtNjQgNjRjLTEyLjUgMTIuNS0xMi41IDMyLjggMCA0NS4zbDY0IDY0YzEyLjUgMTIuNSAzMi44IDEyLjUgNDUuMyAwczEyLjUtMzIuOCAwLTQ1LjNsLTkuNC05LjQgMTE0LjcgMCAwIDExNC43LTkuNC05LjRjLTEyLjUtMTIuNS0zMi44LTEyLjUtNDUuMyAwcy0xMi41IDMyLjggMCA0NS4zbDY0IDY0YzEyLjUgMTIuNSAzMi44IDEyLjUgNDUuMyAwbDY0LTY0YzEyLjUtMTIuNSAxMi41LTMyLjggMC00NS4zcy0zMi44LTEyLjUtNDUuMyAwbC05LjQgOS40IDAtMTE0LjcgMTE0LjcgMC05LjQgOS40Yy0xMi41IDEyLjUtMTIuNSAzMi44IDAgNDUuM3MzMi44IDEyLjUgNDUuMyAwbDY0LTY0YzEyLjUtMTIuNSAxMi41LTMyLjggMC00NS4zbC02NC02NGMtMTIuNS0xMi41LTMyLjgtMTIuNS00NS4zIDBzLTEyLjUgMzIuOCAwIDQ1LjNsOS40IDkuNC0xMTQuNyAwIDAtMTE0LjcgOS40IDkuNGMxMi41IDEyLjUgMzIuOCAxMi41IDQ1LjMgMHMxMi41LTMyLjggMC00NS4zbC02NC02NHoiXX0sTWJyPVNMZSxTdz17cHJlZml4OiJmYXMiLGljb25OYW1lOiJob3VzZSIsaWNvbjpbNTEyLDUxMixbMTI3OTY4LDYzNDk4LDYzNTAwLCJob21lIiwiaG9tZS1hbHQiLCJob21lLWxnLWFsdCJdLCJmMDE1IiwiTTI3Ny44IDguNmMtMTIuMy0xMS40LTMxLjMtMTEuNC00My41IDBsLTIyNCAyMDhjLTkuNiA5LTEyLjggMjIuOS04IDM1LjFTMTguOCAyNzIgMzIgMjcybDE2IDAgMCAxNzZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMjg4IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0xNzYgMTYgMGMxMy4yIDAgMjUtOC4xIDI5LjgtMjAuM3MxLjYtMjYuMi04LTM1LjFsLTIyNC0yMDh6TTI0MCAzMjBsMzIgMGMyNi41IDAgNDggMjEuNSA0OCA0OGwwIDk2LTEyOCAwIDAtOTZjMC0yNi41IDIxLjUtNDggNDgtNDh6Il19LGticj1TdyxTYnI9U3csemJyPVN3LENicj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzcGlubmVyIixpY29uOls1MTIsNTEyLFtdLCJmMTEwIiwiTTIwOCA0OGE0OCA0OCAwIDEgMSA5NiAwIDQ4IDQ4IDAgMSAxIC05NiAwem0wIDQxNmE0OCA0OCAwIDEgMSA5NiAwIDQ4IDQ4IDAgMSAxIC05NiAwek00OCAyMDhhNDggNDggMCAxIDEgMCA5NiA0OCA0OCAwIDEgMSAwLTk2em0zNjggNDhhNDggNDggMCAxIDEgOTYgMCA0OCA0OCAwIDEgMSAtOTYgMHpNNzUgMzY5LjFBNDggNDggMCAxIDEgMTQyLjkgNDM3IDQ4IDQ4IDAgMSAxIDc1IDM2OS4xek03NSA3NUE0OCA0OCAwIDEgMSAxNDIuOSAxNDIuOSA0OCA0OCAwIDEgMSA3NSA3NXpNNDM3IDM2OS4xQTQ4IDQ4IDAgMSAxIDM2OS4xIDQzNyA0OCA0OCAwIDEgMSA0MzcgMzY5LjF6Il19LHpMZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJnYXZlbCIsaWNvbjpbNTc2LDUxMixbImxlZ2FsIl0sImYwZTMiLCJNMTY5LjYgMTUzLjRsLTE4LjctMTguN2MtMTIuNS0xMi41LTEyLjUtMzIuOCAwLTQ1LjNMMjY1LjYtMjUuNGMxMi41LTEyLjUgMzIuOC0xMi41IDQ1LjMgMEwzMjkuNi02LjZjMTIuNSAxMi41IDEyLjUgMzIuOCAwIDQ1LjNMMjE0LjkgMTUzLjRjLTEyLjUgMTIuNS0zMi44IDEyLjUtNDUuMyAwek0yNzYgMjExLjdsLTMxLjQtMzEuNCAxMTItMTEyIDExOS40IDExOS40LTExMiAxMTItMzEuNC0zMS40LTIzMiAyMzJjLTE1LjYgMTUuNi00MC45IDE1LjYtNTYuNiAwcy0xNS42LTQwLjkgMC01Ni42bDIzMi0yMzJ6TTM5MC45IDM3NC42Yy0xMi41LTEyLjUtMTIuNS0zMi44IDAtNDUuM0w1MDUuNiAyMTQuNmMxMi41LTEyLjUgMzIuOC0xMi41IDQ1LjMgMGwxOC43IDE4LjdjMTIuNSAxMi41IDEyLjUgMzIuOCAwIDQ1LjNMNDU0LjkgMzkzLjRjLTEyLjUgMTIuNS0zMi44IDEyLjUtNDUuMyAwbC0xOC43LTE4Ljd6Il19LF9icj16TGUsQ0xlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRpY2tldC1zaW1wbGUiLGljb246WzU3Niw1MTIsWyJ0aWNrZXQtYWx0Il0sImYzZmYiLCJNMCAxMjhDMCA5Mi43IDI4LjcgNjQgNjQgNjRsNDQ4IDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCA2NGMwIDguOC03LjQgMTUuNy0xNS43IDE4LjYtMTguOCA2LjUtMzIuMyAyNC40LTMyLjMgNDUuNHMxMy41IDM4LjkgMzIuMyA0NS40YzguMyAyLjkgMTUuNyA5LjggMTUuNyAxOC42bDAgNjRjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDQ4Yy0zNS4zIDAtNjQtMjguNy02NC02NGwwLTY0QzAgMzExLjIgNy40IDMwNC4zIDE1LjcgMzAxLjQgMzQuNSAyOTQuOSA0OCAyNzcgNDggMjU2cy0xMy41LTM4LjktMzIuMy00NS40QzcuNCAyMDcuNyAwIDIwMC44IDAgMTkybDAtNjR6Il19LFRicj1DTGUsTGJyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImRvdmUiLGljb246WzUxMiw1MTIsWzEyODMzMF0sImY0YmEiLCJNNDk2IDY0YzEzLjIgMCAyMC43IDE1LjEgMTIuOCAyNS42TDQ4MCAxMjggNDgwIDMwNGMwIDc5LjUtNjQuNSAxNDQtMTQ0IDE0NGwtMTEyIDAtNDYuMyA0Ni4zYy0xMC40IDEwLjQtMjYuNSAxMi40LTM5LjEgNC44TDQxLjUgNDQwLjljLTE3LTEwLjItMTUtMzUuNSAzLjQtNDIuOUwxNjAgMzUyQzIzLjggMzExLjEgNy41IDE2OS44IDIyIDk1LjcgMjUuNiA3Ny45IDQ1LjMgNzEuNCA2MS4zIDgwLjJMMzIwIDIyNCAzMjAgMTQ0YzAtNDQuMiAzNS44LTgwIDgwLTgwbDk2IDB6bS05NiA1NmEyNCAyNCAwIDEgMCAwIDQ4IDI0IDI0IDAgMSAwIDAtNDh6TTE4Mi41LTkuNmMxMi40LTEzLjcgMzMuMy04LjkgNDIuNSA3LjFsNTYuNCA5OC4zYy01LjggMTQuNC05LjIgMzAuMS05LjQgNDYuNUwxMzguMSA2OGMxMC4xLTMxLjYgMjctNTguNCA0NC40LTc3LjZ6Il19LERicj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0YXJwLWRyb3BsZXQiLGljb246WzUxMiw1MTIsW10sImU1N2MiLCJNMjU2IDE2MGMzNS4zIDAgNjQtMjYuOSA2NC02MCAwLTI0LTMzLjctNzAuMS01Mi4yLTkzLjUtNi4xLTcuNy0xNy41LTcuNy0yMy42IDAtMTguNSAyMy40LTUyLjIgNjkuNS01Mi4yIDkzLjUgMCAzMy4xIDI4LjcgNjAgNjQgNjB6TTM2OCA5NmMwIDYxLjktNTAuMSAxMTItMTEyIDExMlMxNDQgMTU3LjkgMTQ0IDk2YzAtMTEuMSAxLjYtMjEuOSA0LjYtMzJMNjQgNjRDMjguNyA2NCAwIDkyLjcgMCAxMjhMMCAzODRjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMjc3LjUgMGMxNyAwIDMzLjMtNi43IDQ1LjMtMTguN0w0OTMuMyAzMjIuN2MxMi0xMiAxOC43LTI4LjMgMTguNy00NS4zTDUxMiAxMjhjMC0zNS4zLTI4LjctNjQtNjQtNjRsLTg0LjYgMGMzIDEwLjEgNC42IDIwLjkgNC42IDMyem04NS41IDE3NkwzMzYgMzg5LjUgMzM2IDI5NmMwLTEzLjMgMTAuNy0yNCAyNC0yNGw5My41IDB6TTk2IDEyOGEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6Il19LEFicj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0cmVlLWNpdHkiLGljb246WzY0MCw1MTIsW10sImU1ODciLCJNMjg4IDQ4YzAtMjYuNSAyMS41LTQ4IDQ4LTQ4bDk2IDBjMjYuNSAwIDQ4IDIxLjUgNDggNDhsMCA0OCA0OCAwIDAtNzJjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNGwwIDcyIDE2IDBjMjYuNSAwIDQ4IDIxLjUgNDggNDhsMCAzMjBjMCAyNi41LTIxLjUgNDgtNDggNDhsLTI1NiAwYy0yNi41IDAtNDgtMjEuNS00OC00OGwwLTQxNnptNjQgNjRsMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZsMzIgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0zMmMwLTguOC03LjItMTYtMTYtMTZsLTMyIDBjLTguOCAwLTE2IDcuMi0xNiAxNnptMTYgODBjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDMyYzAgOC44IDcuMiAxNiAxNiAxNmwzMiAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMHpNMzUyIDMwNGwwIDMyYzAgOC44IDcuMiAxNiAxNiAxNmwzMiAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMGMtOC44IDAtMTYgNy4yLTE2IDE2ek01MjggMTkyYy04LjggMC0xNiA3LjItMTYgMTZsMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZsMzIgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0zMmMwLTguOC03LjItMTYtMTYtMTZsLTMyIDB6TTUxMiAzMDRsMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZsMzIgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0zMmMwLTguOC03LjItMTYtMTYtMTZsLTMyIDBjLTguOCAwLTE2IDcuMi0xNiAxNnpNOTYgNDgwbDAtMTYwLTE2IDBjLTQ0LjIgMC04MC0zNS44LTgwLTgwIDAtMjYuNyAxMy4xLTUwLjMgMzMuMi02NC45LS44LTQuOS0xLjItMTAtMS4yLTE1LjEgMC01MyA0My05NiA5Ni05NnM5NiA0MyA5NiA5NmwwIDk2YzAgMzUuMy0yOC43IDY0LTY0IDY0bDAgMTYwYzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMyeiJdfSxfTGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidHVybi11cCIsaWNvbjpbMzg0LDUxMixbMTA1NDgsImxldmVsLXVwLWFsdCJdLCJmM2JmIiwiTTE2OS40IDkuNGMxMi41LTEyLjUgMzIuOC0xMi41IDQ1LjMgMGwxMjggMTI4YzkuMiA5LjIgMTEuOSAyMi45IDYuOSAzNC45UzMzMi45IDE5MiAzMjAgMTkybC02NCAwIDAgMTYwYzAgODguNC03MS42IDE2MC0xNjAgMTYwbC02NCAwYy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTY0YzAtMTcuNyAxNC4zLTMyIDMyLTMybDY0IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJsMC0xNjAtNjQgMGMtMTIuOSAwLTI0LjYtNy44LTI5LjYtMTkuOHMtMi4yLTI1LjcgNi45LTM0LjlsMTI4LTEyOHoiXX0sRWJyPV9MZSx6dz17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0ZW1wZXJhdHVyZS1xdWFydGVyIixpY29uOlszMjAsNTEyLFsidGVtcGVyYXR1cmUtMSIsInRoZXJtb21ldGVyLTEiLCJ0aGVybW9tZXRlci1xdWFydGVyIl0sImYyY2EiLCJNMTYwIDBDMTA3IDAgNjQgNDMgNjQgOTZsMCAxNjQuN0MzNC41IDI4NyAxNiAzMjUuNCAxNiAzNjggMTYgNDQ3LjUgODAuNSA1MTIgMTYwIDUxMnMxNDQtNjQuNSAxNDQtMTQ0YzAtNDIuNi0xOC41LTgxLTQ4LTEwNy4zTDI1NiA5NmMwLTUzLTQzLTk2LTk2LTk2em02NCAzNjhjMCAzNS4zLTI4LjcgNjQtNjQgNjRzLTY0LTI4LjctNjQtNjRjMC0yNi45IDE2LjUtNDkuOSA0MC01OS4zbDAtMjguN2MwLTEzLjMgMTAuNy0yNCAyNC0yNHMyNCAxMC43IDI0IDI0bDAgMjguN2MyMy41IDkuNSA0MCAzMi41IDQwIDU5LjN6Il19LCRicj16dyxQYnI9encsSWJyPXp3LFRMZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzbGlkZXJzIixpY29uOls1MTIsNTEyLFsic2xpZGVycy1oIl0sImYxZGUiLCJNMzIgNjRDMTQuMyA2NCAwIDc4LjMgMCA5NnMxNC4zIDMyIDMyIDMybDg2LjcgMGMxMi4zIDI4LjMgNDAuNSA0OCA3My4zIDQ4czYxLTE5LjcgNzMuMy00OEw0ODAgMTI4YzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMyTDI2NS4zIDY0QzI1MyAzNS43IDIyNC44IDE2IDE5MiAxNnMtNjEgMTkuNy03My4zIDQ4TDMyIDY0em0wIDE2MGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmwyNDYuNyAwYzEyLjMgMjguMyA0MC41IDQ4IDczLjMgNDhzNjEtMTkuNyA3My4zLTQ4bDU0LjcgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtNTQuNyAwYy0xMi4zLTI4LjMtNDAuNS00OC03My4zLTQ4cy02MSAxOS43LTczLjMgNDhMMzIgMjI0em0wIDE2MGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmw1NC43IDBjMTIuMyAyOC4zIDQwLjUgNDggNzMuMyA0OHM2MS0xOS43IDczLjMtNDhMNDgwIDQ0OGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtMjQ2LjcgMGMtMTIuMy0yOC4zLTQwLjUtNDgtNzMuMy00OHMtNjEgMTkuNy03My4zIDQ4TDMyIDM4NHoiXX0sTmJyPVRMZSxGYnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibW9zcXVlIixpY29uOls1NzYsNTEyLFsxMjgzMzJdLCJmNjc4IiwiTTE3NC44IDIyNGwyMjYuNCAwYzQzLjUgMCA3OC44LTM1LjMgNzguOC03OC44IDAtMjUuNS0xMi4zLTQ5LjQtMzMuMS02NC4yTDI5Ny4zLTI1LjRjLTUuNi0zLjktMTMtMy45LTE4LjUgMEwxMjkuMSA4MUMxMDguMyA5NS44IDk2IDExOS43IDk2IDE0NS4yIDk2IDE4OC43IDEzMS4zIDIyNCAxNzQuOCAyMjR6TTUxMiA1MTJjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0yMjRjMC0xNy43LTE0LjMtMzItMzItMzJzLTMyIDE0LjMtMzIgMzJsMCA0OC00NDggMCAwLTQ4YzAtMTcuNy0xNC4zLTMyLTMyLTMyUzAgMjA2LjMgMCAyMjRMMCA0NDhjMCAzNS4zIDI4LjcgNjQgNjQgNjRsNDQ4IDB6TTI0MCAzODRjMC0yNi41IDIxLjUtNDggNDgtNDhzNDggMjEuNSA0OCA0OGwwIDgwLTk2IDAgMC04MHoiXX0sT2JyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImgiLGljb246WzM4NCw1MTIsWzEwNF0sIjQ4IiwiTTMyMCAyODhsMCAxNjBjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTM4NGMwLTE3LjctMTQuMy0zMi0zMi0zMnMtMzIgMTQuMy0zMiAzMmwwIDE2MC0yNTYgMCAwLTE2MGMwLTE3LjctMTQuMy0zMi0zMi0zMlMwIDQ2LjMgMCA2NEwwIDQ0OGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMTYwIDI1NiAweiJdfSxSYnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaW5mbyIsaWNvbjpbMTkyLDUxMixbXSwiZjEyOSIsIk00OCA0OGE0OCA0OCAwIDEgMSA5NiAwIDQ4IDQ4IDAgMSAxIC05NiAwek0wIDE5MmMwLTE3LjcgMTQuMy0zMiAzMi0zMmw2NCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMjU2IDMyIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJMMzIgNTEyYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDMyIDAgMC0yMjQtMzIgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJ6Il19LExMZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwZXJzb24td2Fsa2luZyIsaWNvbjpbMzg0LDUxMixbMTI4Njk0LCJ3YWxraW5nIl0sImY1NTQiLCJNMTkyIDgwYTU2IDU2IDAgMSAwIDAtMTEyIDU2IDU2IDAgMSAwIDAgMTEyek0xMDUuNCAyMjcuOWwyMi42LTIyLjYgMCA2OS4zYzAgMjggMTIuMiA1NC43IDMzLjUgNzIuOWw3MS40IDYxLjJjNS45IDUuMSA5LjggMTIuMSAxMC45IDE5LjhsMTIuNiA4OC4xYzIuNSAxNy41IDE4LjcgMjkuNyAzNi4yIDI3LjJzMjkuNy0xOC43IDI3LjItMzYuMmwtMTIuNi04OC4xYy0zLjMtMjMuMS0xNC45LTQ0LjEtMzIuNi01OS4zbC0zNC41LTI5LjYgMC0xMTUuMiAzLjggNC43YzE4LjIgMjIuOCA0NS44IDM2IDc1IDM2bDMzLjIgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtMzMuMiAwYy05LjcgMC0xOC45LTQuNC0yNS0xMmwtMTcuOS0yMi40Yy0yMy0yOC44LTU3LjktNDUuNi05NC44LTQ1LjYtMzIuMiAwLTYzLjEgMTIuOC04NS44IDM1LjZMNjAuMSAxODIuNkM0Mi4xIDIwMC42IDMyIDIyNSAzMiAyNTAuNUwzMiAyODhjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTM3LjVjMC04LjUgMy40LTE2LjYgOS40LTIyLjZ6bTEyLjQgMTc5LjRjLTEuNSA1LjItNC4zIDEwLTguMSAxMy44TDQxLjQgNDg5LjRjLTEyLjUgMTIuNS0xMi41IDMyLjggMCA0NS4zczMyLjggMTIuNSA0NS4zIDBsNjguMy02OC4zYzExLjUtMTEuNSAxOS45LTI1LjggMjQuNC00MS41bDIuMi03LjYtNDYtMzkuNGMtMi41LTIuMi01LTQuNC03LjQtNi44bC0xMC40IDM2LjJ6Il19LEJicj1MTGUsRExlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFycm93LXR1cm4tZG93biIsaWNvbjpbMzg0LDUxMixbImxldmVsLWRvd24iXSwiZjE0OSIsIk0zMiA2NEMxNC4zIDY0IDAgNDkuNyAwIDMyUzE0LjMgMCAzMiAwbDk2IDBjNTMgMCA5NiA0MyA5NiA5NmwwIDMwNi43IDczLjQtNzMuNGMxMi41LTEyLjUgMzIuOC0xMi41IDQ1LjMgMHMxMi41IDMyLjggMCA0NS4zbC0xMjggMTI4Yy0xMi41IDEyLjUtMzIuOCAxMi41LTQ1LjMgMGwtMTI4LTEyOGMtMTIuNS0xMi41LTEyLjUtMzIuOCAwLTQ1LjNzMzIuOC0xMi41IDQ1LjMgMEwxNjAgNDAyLjcgMTYwIDk2YzAtMTcuNy0xNC4zLTMyLTMyLTMyTDMyIDY0eiJdfSxIYnI9RExlLHFicj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJyb2FkIixpY29uOls1MTIsNTEyLFsxMjg3MzldLCJmMDE4IiwiTTIyMy45IDMybC03Ni4yIDBjLTI5LjQgMC01NS4xIDIwLjEtNjIuMSA0OC42TDEuNCA0MjAuNUMtNi4xIDQ1MC43IDE2LjggNDgwIDQ4IDQ4MGwxNzUuOSAwIDAtNjRjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDY0IDE3Ni4xIDBjMzEuMiAwIDU0LjEtMjkuMyA0Ni42LTU5LjVMNDI2LjUgODAuNkM0MTkuNCA1Mi4xIDM5My44IDMyIDM2NC4zIDMybC03Ni40IDAgMCA2NGMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTY0em02NCAxOTJsMCA2NGMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTY0YzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJ6Il19LGpicj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzcGlyYWwiLGljb246WzUxMiw1MTIsW10sImU4MGEiLCJNMTE1LjUgNy40YzEzLjYtMTEuMyAzMy44LTkuNSA0NS4xIDQuMXM5LjUgMzMuOC00LjEgNDUuMUMxMDAuMiAxMDMuNSA2NCAxNzUuMiA2NCAyNTYgNjQgMzYyIDE1MCA0NDggMjU2IDQ0OHMxOTItODYgMTkyLTE5MmMwLTc1LjEtNjAuOS0xMzYtMTM2LTEzNlMxNzYgMTgwLjkgMTc2IDI1NmMwIDQ0LjIgMzUuOCA4MCA4MCA4MHM4MC0zNS44IDgwLTgwYzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMyYzAtNDguNiAzOS40LTg4IDg4LTg4czg4IDM5LjQgODggODhjMCA3OS41LTY0LjUgMTQ0LTE0NCAxNDRTMTEyIDMzNS41IDExMiAyNTZjMC0xMTAuNSA4OS41LTIwMCAyMDAtMjAwczIwMCA4OS41IDIwMCAyMDBjMCAxNDEuNC0xMTQuNiAyNTYtMjU2IDI1NlMwIDM5Ny40IDAgMjU2QzAgMTU1LjggNDUgNjYuMSAxMTUuNSA3LjR6Il19LEFMZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmYWNlLWZyb3duIixpY29uOls1MTIsNTEyLFs5Nzg1LCJmcm93biJdLCJmMTE5IiwiTTI1NiA1MTJhMjU2IDI1NiAwIDEgMCAwLTUxMiAyNTYgMjU2IDAgMSAwIDAgNTEyem05MC42LTExMy45Yy0yMC40LTI4LTUzLjQtNDYuMS05MC42LTQ2LjFzLTcwLjIgMTguMS05MC42IDQ2LjFjLTcuOCAxMC43LTIyLjggMTMuMS0zMy41IDUuM3MtMTMuMS0yMi44LTUuMy0zMy41QzE1NS43IDMzMCAyMDIuOCAzMDQgMjU2IDMwNHMxMDAuMyAyNiAxMjkuNCA2NS45YzcuOCAxMC43IDUuNCAyNS43LTUuMyAzMy41cy0yNS43IDUuNC0zMy41LTUuM3pNMTQ0IDIwOGEzMiAzMiAwIDEgMSA2NCAwIDMyIDMyIDAgMSAxIC02NCAwem0xOTItMzJhMzIgMzIgMCAxIDEgMCA2NCAzMiAzMiAwIDEgMSAwLTY0eiJdfSxWYnI9QUxlLEVMZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ3aW5lLWdsYXNzLWVtcHR5IixpY29uOlszMjAsNTEyLFsid2luZS1nbGFzcy1hbHQiXSwiZjVjZSIsIk02NCAwQzQ4LjcgMCAzNS42IDEwLjggMzIuNiAyNS43TDMuMiAxNzNDMS4xIDE4My41IDAgMTk0LjIgMCAyMDVsMCAzYzAgNzcuNCA1NSAxNDIgMTI4IDE1Ni44bDAgMTE1LjItNjQgMGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmwxOTIgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtNjQgMCAwLTExNS4yQzI2NSAzNTAgMzIwIDI4NS40IDMyMCAyMDhsMC0zYzAtMTAuNy0xLjEtMjEuNC0zLjItMzJMMjg3LjQgMjUuN0MyODQuNCAxMC44IDI3MS4zIDAgMjU2IDBMNjQgMHptMS45IDE4NS42TDkwLjIgNjQgMjI5LjggNjQgMjU0LjEgMTg1LjZjMS4zIDYuNCAxLjkgMTIuOSAxLjkgMTkuNGwwIDNjMCA1My00MyA5Ni05NiA5NnMtOTYtNDMtOTYtOTZsMC0zYzAtNi41IC42LTEzIDEuOS0xOS40eiJdfSxVYnI9RUxlLFdicj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjbGFwcGVyYm9hcmQiLGljb246WzUxMiw1MTIsW10sImUxMzEiLCJNNDQ4IDY0YzIgMCAzLjkgLjEgNS44IC4zbC05NS43IDk1LjcgNjcuOSAwIDcyLTcyYzguOCAxMSAxNCAyNC45IDE0IDQwbDAgMjU2YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDQ0OGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCAxMjhDMCA5Mi43IDI4LjcgNjQgNjQgNjRsNzAuMSAwLTk2IDk2IDY3LjkgMCA5NS05NSAxLTEgOTIuMSAwLTk2IDk2IDY3LjkgMCA5NS05NSAxLTEgODYuMSAweiJdfSwkTGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZm9yd2FyZC1zdGVwIixpY29uOlszODQsNTEyLFsic3RlcC1mb3J3YXJkIl0sImYwNTEiLCJNMjEgMzYuOGMxMi45LTcgMjguNy02LjMgNDEgMS44TDMyMCAyMDguMSAzMjAgNjRjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDM4NGMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTE0NC4xLTI1OCAxNjkuNmMtMTIuMyA4LjEtMjggOC44LTQxIDEuOFMwIDQ1NC43IDAgNDQwTDAgNzJDMCA1Ny4zIDguMSA0My44IDIxIDM2Ljh6Il19LEdicj0kTGUsUExlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNxdWFyZS11cC1yaWdodCIsaWNvbjpbNDQ4LDUxMixbODU5OSwiZXh0ZXJuYWwtbGluay1zcXVhcmUtYWx0Il0sImYzNjAiLCJNMzg0IDMyYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMzIwYzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDQ4MGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCA5NkMwIDYwLjcgMjguNyAzMiA2NCAzMmwzMjAgMHpNMTY4IDE2MGMtOS43IDAtMTguNSA1LjgtMjIuMiAxNC44cy0xLjcgMTkuMyA1LjIgMjYuMmwzNSAzNS02NyA2N2MtOS40IDkuNC05LjQgMjQuNiAwIDMzLjlsMjQgMjRjOS40IDkuNCAyNC42IDkuNCAzMy45IDBsNjctNjcgMzUgMzVjNi45IDYuOSAxNy4yIDguOSAyNi4yIDUuMlMzMjAgMzIxLjcgMzIwIDMxMmwwLTEyOGMwLTEzLjMtMTAuNy0yNC0yNC0yNGwtMTI4IDB6Il19LFlicj1QTGUsSUxlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJvb2stam91cm5hbC13aGlsbHMiLGljb246WzQ0OCw1MTIsWyJqb3VybmFsLXdoaWxscyJdLCJmNjZhIiwiTTk2IDUxMmwzMjAgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwwLTY2LjdjMTguNi02LjYgMzItMjQuNCAzMi00NS4zbDAtMjg4YzAtMjYuNS0yMS41LTQ4LTQ4LTQ4TDk2IDBDNDMgMCAwIDQzIDAgOTZMMCA0MTZjMCA1MyA0MyA5NiA5NiA5NnpNNjQgNDE2YzAtMTcuNyAxNC4zLTMyIDMyLTMybDI1NiAwIDAgNjQtMjU2IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyek0yNzQuMSA5OS4yYzIuNi0yLjYgNi43LTMuMSA5LjktMS4xIDMyLjEgMjAgNTMuNCA1NS42IDUzLjQgOTYuMiAwIDYyLjYtNTAuNyAxMTMuMy0xMTMuMyAxMTMuM1MxMTAuNyAyNTYuOSAxMTAuNyAxOTQuM2MwLTQwLjYgMjEuNC03Ni4yIDUzLjQtOTYuMiAzLjEtMiA3LjItMS41IDkuOSAxLjFzMy4xIDYuNyAxLjIgOS44Yy01LjIgOC42LTguMiAxOC43LTguMiAyOS41IDAgMTUuMSA1LjkgMjguOCAxNS41IDM5LjEgMi41IDIuNyAyLjkgNi43IC45IDkuNy00LjcgNy40LTcuNCAxNi4xLTcuNCAyNS41IDAgMjEuNiAxNC4zIDM5LjkgMzQgNDUuOWwxLTI0LjhjLTcuMS00LjQtMTEuOC0xMi4yLTExLjgtMjEuMSAwLTkuNiA1LjUtMTggMTMuNS0yMi4xbDMuMy04MS44Yy4yLTQuMyAzLjctNy43IDgtNy43czcuOCAzLjQgOCA3LjdsMy4zIDgxLjhjOCA0LjEgMTMuNSAxMi40IDEzLjUgMjIuMSAwIDguOS00LjcgMTYuNy0xMS44IDIxLjFsMSAyNC44YzE5LjYtNiAzMy45LTI0LjEgMzQtNDUuNmwwLS42Yy0uMS05LjMtMi43LTE3LjktNy40LTI1LjItMS45LTMuMS0xLjYtNy4xIC45LTkuNyA5LjYtMTAuMiAxNS41LTIzLjkgMTUuNS0zOS4xIDAtMTAuOC0zLTIwLjktOC4yLTI5LjUtMS45LTMuMi0xLjQtNy4yIDEuMi05Ljh6Il19LFpicj1JTGUsTkxlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNoYW1wYWduZS1nbGFzc2VzIixpY29uOls2NDAsNTEyLFsxMjkzNDYsImdsYXNzLWNoZWVycyJdLCJmNzlmIiwiTTE1NS42IDE3LjNDMTYzIDMgMTc5LjktMy42IDE5NSAxLjlsMTI1IDQ1LjYgMTI1LTQ1LjZjMTUuMS01LjUgMzIgMS4xIDM5LjQgMTUuNGw3OC44IDE1Mi45YzI4LjggNTUuOCAxMC4zIDEyMi4zLTM4LjUgMTU2LjZsMzEuMyA4Ni4yIDQxLTE1YzE2LjYtNiAzNSAyLjUgNDEgMTkuMXMtMi41IDM1LTE5LjEgNDFjLTQ3LjQgMTcuMy05NC44IDM0LjUtMTQyLjIgNTEuOC0xNi42IDYuMS0zNS0yLjUtNDEtMTkuMXMyLjUtMzUgMTkuMS00MWw0MS0xNS0zMS4zLTg2LjJjLTU5LjQgNS4yLTExNi4yLTMzLjktMTMwLTk1LjJsLTE0LjYtNjQuNy0xNC42IDY0LjdjLTEzLjggNjEuMy03MC42IDEwMC40LTEzMCA5NS4ybC0zMS4zIDg2LjIgNDEgMTVjMTYuNiA2LjEgMjUuMiAyNC40IDE5LjEgNDFzLTI0LjQgMjUuMi00MSAxOS4xYy00Ny40LTE3LjMtOTQuOC0zNC42LTE0Mi4yLTUxLjgtMTYuNi02LjEtMjUuMi0yNC40LTE5LjEtNDFTMjYuMyAzOTIgNDIuOSAzOThsNDEgMTUgMzEuMy04Ni4yQzY2LjUgMjkyLjUgNDguMSAyMjYgNzYuOSAxNzAuMkwxNTUuNiAxNy4zem00NCA1NC40bC0yNy4yIDUyLjggODkuMiAzMi41IDEzLjEtNTcuOS03NS4xLTI3LjR6bTI0MC45IDBsLTc1LjEgMjcuNCAxMy4xIDU3LjkgODkuMi0zMi41LTI3LjItNTIuOHoiXX0sWGJyPU5MZSxRYnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZHVtcHN0ZXIiLGljb246WzU3Niw1MTIsW10sImY3OTMiLCJNMTMyLjMgNjRMMTA2LjcgMTkyIDI0IDE5MmMtMTMuMyAwLTI0LTEwLjctMjQtMjRsMC00LjFjMC0yLjYgLjQtNS4xIDEuMi03LjZMMjYuNSA4MC40QzI5LjggNzAuNiAzOSA2NCA0OS4zIDY0bDgzIDB6bTIzLjQgMTI4bDI1LjYtMTI4IDgyLjcgMCAwIDEyOC0xMDguMyAwek0zMTIgNjRsODIuNyAwIDI1LjYgMTI4LTEwOC4zIDAgMC0xMjh6bTEzMS43IDBsODMgMGMxMC4zIDAgMTkuNSA2LjYgMjIuOCAxNi40bDI1LjMgNzUuOWMuOCAyLjQgMS4yIDUgMS4yIDcuNmwwIDQuMWMwIDEzLjMtMTAuNyAyNC0yNCAyNGwtODIuNyAwLTI1LjYtMTI4ek0yNS43IDI0MGw1MjQuNyAwYy0uNCAyLjEtMTMuMyA3My40LTM4LjkgMjEzLjctMyAxNi4zLTE3LjkgMjcuNi0zNC40IDI2LjFTNDQ4IDQ2NC42IDQ0OCA0NDhsMC0xNi0zMjAgMCAwIDE2YzAgMTYuNi0xMi42IDMwLjQtMjkuMSAzMS45UzY3LjUgNDcwIDY0LjUgNDUzLjdDMzkgMzEzLjMgMjYgMjQyLjEgMjUuNyAyNDB6Il19LEticj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJoZWFydC1jaXJjbGUteG1hcmsiLGljb246WzU3Niw1MTIsW10sImU1MDEiLCJNMjQxIDg3LjFsMTUgMjAuNyAxNS0yMC43QzI5NiA1Mi41IDMzNi4yIDMyIDM3OC45IDMyIDQ1Mi40IDMyIDUxMiA5MS42IDUxMiAxNjUuMWwwIDIuNmMwIDE3LjYtMy40IDM1LjYtOS41IDUzLjctMjEuOC04LjYtNDUuNi0xMy40LTcwLjUtMTMuNC0xMDYgMC0xOTIgODYtMTkyIDE5MiAwIDI4LjUgNi4yIDU1LjYgMTcuNCA4MC0uNSAwLS45IDAtMS40IDAtMTUuNSAwLTMwLjgtNC42LTQzLjEtMTQuMS03My01NS43LTIxMi45LTE4Ni0yMTIuOS0yOTguMmwwLTIuNkMwIDkxLjYgNTkuNiAzMiAxMzMuMSAzMiAxNzUuOCAzMiAyMTYgNTIuNSAyNDEgODcuMXpNNDMyIDI1NmExNDQgMTQ0IDAgMSAxIDAgMjg4IDE0NCAxNDQgMCAxIDEgMC0yODh6bTU5LjMgMTA3LjNjNi4yLTYuMiA2LjItMTYuNCAwLTIyLjZzLTE2LjQtNi4yLTIyLjYgMGwtMzYuNyAzNi43LTM2LjctMzYuN2MtNi4yLTYuMi0xNi40LTYuMi0yMi42IDBzLTYuMiAxNi40IDAgMjIuNmwzNi43IDM2LjctMzYuNyAzNi43Yy02LjIgNi4yLTYuMiAxNi40IDAgMjIuNnMxNi40IDYuMiAyMi42IDBsMzYuNy0zNi43IDM2LjcgMzYuN2M2LjIgNi4yIDE2LjQgNi4yIDIyLjYgMHM2LjItMTYuNCAwLTIyLjZsLTM2LjctMzYuNyAzNi43LTM2Ljd6Il19LEpicj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjb21wdXRlciIsaWNvbjpbNTc2LDUxMixbXSwiZTRlNSIsIk0zNDguOCAzMkMzNDAuNyA0Ni4xIDMzNiA2Mi41IDMzNiA4MGwwIDE2LTI3MiAwIDAgMjI0IDI3MiAwIDAgNjQtMjcyIDBjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgOTZDMCA2MC43IDI4LjcgMzIgNjQgMzJsMjg0LjggMHpNMzM2IDQzMmMwIDE3LjUgNC43IDMzLjkgMTIuOCA0OEwxMjAgNDgwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0bDIxNiAwek00MzIgMzJsOTYgMGMyNi41IDAgNDggMjEuNSA0OCA0OGwwIDM1MmMwIDI2LjUtMjEuNSA0OC00OCA0OGwtOTYgMGMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhsMC0zNTJjMC0yNi41IDIxLjUtNDggNDgtNDh6bTI0IDY0Yy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDQ4IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTQ4IDB6bTAgOTZjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsNDggMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtNDggMHptNTYgMTQ0YTMyIDMyIDAgMSAwIC02NCAwIDMyIDMyIDAgMSAwIDY0IDB6Il19LEZMZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ3YW5kLW1hZ2ljIixpY29uOls1MTIsNTEyLFsibWFnaWMiXSwiZjBkMCIsIk0zOTguNSAxMi4ybC04OC4yIDg4LjIgMTAxLjMgMTAxLjMgODguMi04OC4yQzUwNy42IDEwNS42IDUxMiA5NSA1MTIgODRzLTQuNC0yMS42LTEyLjItMjkuNUw0NTcuNSAxMi4yQzQ0OS42IDQuNCA0MzkgMCA0MjggMHMtMjEuNiA0LjQtMjkuNSAxMi4yek0yNzYuNCAxMzQuM0wxMi4yIDM5OC41QzQuNCA0MDYuNCAwIDQxNyAwIDQyOHM0LjQgMjEuNiAxMi4yIDI5LjVsNDIuMyA0Mi4zQzYyLjQgNTA3LjYgNzMgNTEyIDg0IDUxMnMyMS42LTQuNCAyOS41LTEyLjJMMzc3LjcgMjM1LjYgMjc2LjQgMTM0LjN6Il19LGV2cj1GTGUsdHZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJyYWluIixpY29uOls1MTIsNTEyLFsxMjk1MDRdLCJmNWRjIiwiTTEyMCA1NmMwLTMwLjkgMjUuMS01NiA1Ni01NmwyNCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgNDQ4YzAgMTcuNy0xNC4zIDMyLTMyIDMybC0zMiAwYy0yOS44IDAtNTQuOS0yMC40LTYyLTQ4LS43IDAtMS4zIDAtMiAwLTQ0LjIgMC04MC0zNS44LTgwLTgwIDAtMTggNi0zNC42IDE2LTQ4LTE5LjQtMTQuNi0zMi0zNy44LTMyLTY0IDAtMzAuOSAxNy42LTU3LjggNDMuMi03MS4xLTcuMS0xMi0xMS4yLTI2LTExLjItNDAuOSAwLTQ0LjIgMzUuOC04MCA4MC04MGwwLTI0em0yNzIgMGwwIDI0YzQ0LjIgMCA4MCAzNS44IDgwIDgwIDAgMTUtNC4xIDI5LTExLjIgNDAuOSAyNS43IDEzLjMgNDMuMiA0MC4xIDQzLjIgNzEuMSAwIDI2LjItMTIuNiA0OS40LTMyIDY0IDEwIDEzLjQgMTYgMzAgMTYgNDggMCA0NC4yLTM1LjggODAtODAgODAtLjcgMC0xLjMgMC0yIDAtNy4xIDI3LjYtMzIuMiA0OC02MiA0OGwtMzIgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC00NDhjMC0xNy43IDE0LjMtMzIgMzItMzJsMjQgMGMzMC45IDAgNTYgMjUuMSA1NiA1NnoiXX0scnZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJyaWVmY2FzZS1tZWRpY2FsIixpY29uOls1MTIsNTEyLFtdLCJmNDY5IiwiTTIwMCA0OGwxMTIgMGM0LjQgMCA4IDMuNiA4IDhsMCA0MC0xMjggMCAwLTQwYzAtNC40IDMuNi04IDgtOHptLTU2IDhsMCA0MC04MCAwQzI4LjcgOTYgMCAxMjQuNyAwIDE2MEwwIDQxNmMwIDM1LjMgMjguNyA2NCA2NCA2NGwzODQgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTI1NmMwLTM1LjMtMjguNy02NC02NC02NGwtODAgMCAwLTQwYzAtMzAuOS0yNS4xLTU2LTU2LTU2TDIwMCAwYy0zMC45IDAtNTYgMjUuMS01NiA1NnptODAgMTYwYzAtOC44IDcuMi0xNiAxNi0xNmwzMiAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDQwIDQwIDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMzJjMCA4LjgtNy4yIDE2LTE2IDE2bC00MCAwIDAgNDBjMCA4LjgtNy4yIDE2LTE2IDE2bC0zMiAwYy04LjggMC0xNi03LjItMTYtMTZsMC00MC00MCAwYy04LjggMC0xNi03LjItMTYtMTZsMC0zMmMwLTguOCA3LjItMTYgMTYtMTZsNDAgMCAwLTQweiJdfSxhdnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaG91c2UtbWVkaWNhbC1jaXJjbGUtZXhjbGFtYXRpb24iLGljb246WzY0MCw1MTIsW10sImU1MTIiLCJNMzA5LjggOC42Yy0xMi4zLTExLjQtMzEuMy0xMS40LTQzLjUgMGwtMjI0IDIwOGMtOS42IDktMTIuOCAyMi45LTggMzUuMVM1MC44IDI3MiA2NCAyNzJsMTYgMCAwIDE3NmMwIDM1LjMgMjguNyA2NCA2NCA2NGwxOTYgMGMtMjEuMi0yOS41LTM0LjMtNjUuMy0zNS45LTEwNEwyNzIgNDA4Yy04LjggMC0xNi03LjItMTYtMTZsMC00MC00MCAwYy04LjggMC0xNi03LjItMTYtMTZsMC0zMmMwLTguOCA3LjItMTYgMTYtMTZsNDAgMCAwLTQwYzAtOC44IDcuMi0xNiAxNi0xNmwzMiAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDQwIDIwIDBjMzQuOS00OC41IDkxLjctODAgMTU2LTgwIDEwLjcgMCAyMS4xIC45IDMxLjMgMi41TDMwOS44IDguNnpNNDk2IDU0NGExNDQgMTQ0IDAgMSAwIDAtMjg4IDE0NCAxNDQgMCAxIDAgMCAyODh6bTAtMTAwYTIwIDIwIDAgMSAxIDAgNDAgMjAgMjAgMCAxIDEgMC00MHptMC0xNDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgODBjMCA4LjgtNy4yIDE2LTE2IDE2cy0xNi03LjItMTYtMTZsMC04MGMwLTguOCA3LjItMTYgMTYtMTZ6Il19LGl2cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjb2RlLWNvbW1pdCIsaWNvbjpbNTc2LDUxMixbXSwiZjM4NiIsIk0yODggMzM2YTgwIDgwIDAgMSAwIDAtMTYwIDgwIDgwIDAgMSAwIDAgMTYwem0xNTYuOC00OEM0MzAgMzYxIDM2NS40IDQxNiAyODggNDE2UzE0NiAzNjEgMTMxLjIgMjg4TDMyIDI4OGMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMmw5OS4yIDBDMTQ2IDE1MSAyMTAuNiA5NiAyODggOTZzMTQyIDU1IDE1Ni44IDEyOGw5OS4yIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTk5LjIgMHoiXX0sb3ZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBlcnNvbi1icmVhc3RmZWVkaW5nIixpY29uOls0NDgsNTEyLFtdLCJlNTNhIiwiTTIyNCAwYTgwIDgwIDAgMSAxIDAgMTYwIDgwIDgwIDAgMSAxIDAtMTYwek00MzYuOCAzODIuOEwzNzMuNSA0NjJjLTE2LjYgMjAuNy00Ni44IDI0LjEtNjcuNSA3LjUtMTcuNi0xNC4xLTIyLjctMzguMS0xMy41LTU3LjdsLS43LS4xYy0zOC45LTUuNi03NC4zLTI1LjEtOTkuNy01NC44bDAtMzYuOGMwLTE3LjctMTQuMy0zMi0zMi0zMnMtMzIgMTQuMy0zMiAzMmwwIDQ4YzAgLjggMCAxLjYgLjEgMi40bDEwMS40IDUwLjdjMjMuNyAxMS45IDMzLjMgNDAuNyAyMS41IDY0LjRzLTQwLjcgMzMuMy02NC40IDIxLjVMMjcuMiA0MjcuM2MtMS4xLS41LTIuMi0xLjEtMy4zLTEuNy00LjktMi44LTkuMi02LjQtMTIuNi0xMC42LTQuNi01LjQtNy44LTExLjctOS42LTE4LjQtMy4zLTEyLTEuOS0yNS4yIDQuOC0zNi42IC42LTEuMSAxLjMtMi4yIDItMy4yTDc1LjYgMjU2LjFjMjYuNy00MC4xIDcxLjctNjQuMSAxMTkuOC02NC4xbDc1LjIgMGM0Ni41IDAgOTAuMSAyMi41IDExNy4yIDYwLjNsNTAuNyA3MC45YzIuMiAzIDQgNi4xIDUuNSA5LjQgMi45IDYuNyA0LjMgMTMuOCA0IDIwLjgtLjMgMTAuNi00LjIgMjEtMTEuMiAyOS40ek0zMjAgMzMyYTQ0IDQ0IDAgMSAwIC04OCAwIDQ0IDQ0IDAgMSAwIDg4IDB6Il19LG52cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwZXJzb24tcmF5cyIsaWNvbjpbNTEyLDUxMixbXSwiZTU0ZCIsIk0zMTIuNSAyNGE1NiA1NiAwIDEgMCAtMTEyIDAgNTYgNTYgMCAxIDAgMTEyIDB6bTI0IDIxMi43bDQ2LjMgNjIuNGMxMC41IDE0LjIgMzAuNiAxNy4yIDQ0LjggNi42czE3LjItMzAuNiA2LjYtNDQuOGwtNzAuNS05NUMzMzguNSAxMzIgMjk4LjggMTEyIDI1Ni41IDExMnMtODIgMjAtMTA3LjIgNTMuOWwtNzAuNSA5NWMtMTAuNSAxNC4yLTcuNiAzNC4yIDYuNiA0NC44czM0LjIgNy42IDQ0LjgtNi42bDQ2LjMtNjIuNCAwIDI3NS4zYzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0xNjBjMC04LjggNy4yLTE2IDE2LTE2czE2IDcuMiAxNiAxNmwwIDE2MGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMjc1LjN6TTcuNSA3Yy05LjQgOS40LTkuNCAyNC42IDAgMzMuOWw4MCA4MGM5LjQgOS40IDI0LjYgOS40IDMzLjkgMHM5LjQtMjQuNiAwLTMzLjlMNDEuNSA3QzMyLjEtMi4zIDE2LjktMi4zIDcuNSA3em00NjQgMGwtODAgODBjLTkuNCA5LjQtOS40IDI0LjYgMCAzMy45czI0LjYgOS40IDMzLjkgMGw4MC04MGM5LjQtOS40IDkuNC0yNC42IDAtMzMuOXMtMjQuNi05LjQtMzMuOSAwek03LjUgNTA1YzkuNCA5LjQgMjQuNiA5LjQgMzMuOSAwbDgwLTgwYzkuNC05LjQgOS40LTI0LjYgMC0zMy45cy0yNC42LTkuNC0zMy45IDBsLTgwIDgwYy05LjQgOS40LTkuNCAyNC42IDAgMzMuOXptNDY0IDBjOS40IDkuNCAyNC42IDkuNCAzMy45IDBzOS40LTI0LjYgMC0zMy45bC04MC04MGMtOS40LTkuNC0yNC42LTkuNC0zMy45IDBzLTkuNCAyNC42IDAgMzMuOWw4MCA4MHoiXX0sc3ZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im1hbmF0LXNpZ24iLGljb246WzM4NCw1MTIsW10sImUxZDUiLCJNMTkyIDMyYy0xMy4zIDAtMjQgMTAuNy0yNCAyNGwwIDQxLjVDNzMuMyAxMDkuMyAwIDE5MC4xIDAgMjg4TDAgNDQ4YzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0xNjBjMC02Mi41IDQ0LjgtMTE0LjUgMTA0LTEyNS44TDE2OCA0NTZjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTI5My44YzU5LjIgMTEuMiAxMDQgNjMuMyAxMDQgMTI1LjhsMCAxNjBjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTE2MGMwLTk3LjktNzMuMy0xNzguNy0xNjgtMTkwLjVMMjE2IDU2YzAtMTMuMy0xMC43LTI0LTI0LTI0eiJdfSxPTGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic29ydCIsaWNvbjpbMzg0LDUxMixbInVuc29ydGVkIl0sImYwZGMiLCJNMi40IDIwNC4yYzUgMTIgMTYuNiAxOS44IDI5LjYgMTkuOGwzMjAgMGMxMi45IDAgMjQuNi03LjggMjkuNi0xOS44czIuMi0yNS43LTYuOS0zNC45bC0xNjAtMTYwYy0xMi41LTEyLjUtMzIuOC0xMi41LTQ1LjMgMGwtMTYwIDE2MGMtOS4yIDkuMi0xMS45IDIyLjktNi45IDM0Ljl6bTAgMTAzLjVjLTUgMTItMi4yIDI1LjcgNi45IDM0LjlsMTYwIDE2MGMxMi41IDEyLjUgMzIuOCAxMi41IDQ1LjMgMGwxNjAtMTYwYzkuMi05LjIgMTEuOS0yMi45IDYuOS0zNC45UzM2NC45IDI4OCAzNTIgMjg4TDMyIDI4OGMtMTIuOSAwLTI0LjYgNy44LTI5LjYgMTkuOHoiXX0sbHZyPU9MZSxSTGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2lyY2xlLXJhZGlhdGlvbiIsaWNvbjpbNTEyLDUxMixbOTc2MiwicmFkaWF0aW9uLWFsdCJdLCJmN2JhIiwiTTAgMjU2YTI1NiAyNTYgMCAxIDEgNTEyIDAgMjU2IDI1NiAwIDEgMSAtNTEyIDB6bTgwIDBsNjQuMyAwYzguNyAwIDE1LjctNy4xIDE3LjMtMTUuNiA0LjQtMjQuNCAxOC4xLTQ1LjUgMzcuMi01OS43IDcuNC01LjUgMTAuNi0xNS42IDYtMjMuNmwtMzIuNS01Ni4zYy00LjMtNy41LTEzLjktMTAuMy0yMS4yLTUuNS00OC4yIDMxLjUtODEuMyA4NC4yLTg2LjMgMTQ0LjgtLjcgOC44IDYuNSAxNiAxNS4zIDE2em0xMzcuOSA4OS44Yy04LjUtMy43LTE4LjgtMS40LTIzLjUgNi42bC0zMSA1My44Yy00LjMgNy41LTEuOSAxNy4yIDUuOCAyMS4xIDI2LjEgMTMuMiA1NS41IDIwLjcgODYuOCAyMC43czYwLjctNy41IDg2LjgtMjAuN2M3LjctMy45IDEwLjEtMTMuNiA1LjgtMjEuMWwtMzEtNTMuOGMtNC42LTgtMTUtMTAuMy0yMy41LTYuNi0xMS43IDUtMjQuNSA3LjgtMzguMSA3LjhzLTI2LjQtMi44LTM4LjEtNy44ek0zNTAuNCAyNDAuNGMxLjYgOC42IDguNSAxNS42IDE3LjMgMTUuNmw2NC4zIDBjOC44IDAgMTYuMS03LjIgMTUuMy0xNi01LTYwLjYtMzguMS0xMTMuMi04Ni4zLTE0NC44LTcuMy00LjgtMTYuOC0yLTIxLjIgNS41TDMwNy4zIDE1N2MtNC42IDgtMS40IDE4LjEgNiAyMy42IDE5LjEgMTQuMiAzMi43IDM1LjQgMzcuMiA1OS43ek0yNTYgMzA1LjdhNDggNDggMCAxIDAgMC05NiA0OCA0OCAwIDEgMCAwIDk2eiJdfSxjdnI9UkxlLGR2cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJsYXB0b3AtY29kZSIsaWNvbjpbNjQwLDUxMixbXSwiZjVmYyIsIk02NCA5NmMwLTM1LjMgMjguNy02NCA2NC02NGwzODQgMGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDI0MC02NCAwIDAtMjQwLTM4NCAwIDAgMjQwLTY0IDAgMC0yNDB6TTAgNDAzLjJDMCAzOTIuNiA4LjYgMzg0IDE5LjIgMzg0bDYwMS42IDBjMTAuNiAwIDE5LjIgOC42IDE5LjIgMTkuMiAwIDQyLjQtMzQuNCA3Ni44LTc2LjggNzYuOEw3Ni44IDQ4MEMzNC40IDQ4MCAwIDQ0NS42IDAgNDAzLjJ6TTI4MSAyMDlsLTMxIDMxIDMxIDMxYzkuNCA5LjQgOS40IDI0LjYgMCAzMy45cy0yNC42IDkuNC0zMy45IDBsLTQ4LTQ4Yy05LjQtOS40LTkuNC0yNC42IDAtMzMuOWw0OC00OGM5LjQtOS40IDI0LjYtOS40IDMzLjkgMHM5LjQgMjQuNiAwIDMzLjl6TTM5MyAxNzVsNDggNDhjOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlsLTQ4IDQ4Yy05LjQgOS40LTI0LjYgOS40LTMzLjkgMHMtOS40LTI0LjYgMC0zMy45bDMxLTMxLTMxLTMxYy05LjQtOS40LTkuNC0yNC42IDAtMzMuOXMyNC42LTkuNCAzMy45IDB6Il19LHV2cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzaW5rIixpY29uOls1MTIsNTEyLFtdLCJlMDZkIiwiTTI4OCA5NmMwLTE3LjcgMTQuMy0zMiAzMi0zMnMzMiAxNC4zIDMyIDMyIDE0LjMgMzIgMzIgMzIgMzItMTQuMyAzMi0zMmMwLTUzLTQzLTk2LTk2LTk2cy05NiA0My05NiA5NmwwIDE5Mi02NCAwIDAtNDBjMC0zMC45LTI1LjEtNTYtNTYtNTZsLTQ4IDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsNDggMGM0LjQgMCA4IDMuNiA4IDhsMCA0MC04MCAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDAgNjRjMCA1MyA0MyA5NiA5NiA5NmwyNTYgMGM1MyAwIDk2LTQzIDk2LTk2bDAtNjRjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTgwIDAgMC00MGMwLTQuNCAzLjYtOCA4LThsNTYgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtNTYgMGMtMzAuOSAwLTU2IDI1LjEtNTYgNTZsMCA0MC02NCAwIDAtMTkyeiJdfSxmdnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYXJyb3ctdXAtZnJvbS13YXRlci1wdW1wIixpY29uOls2NDAsNTEyLFtdLCJlNGI2IiwiTTE0NCAzMmMtMjYuNSAwLTQ4IDIxLjUtNDggNDhsMCAxNzYtMTYgMGMtMjYuNSAwLTQ4IDIxLjUtNDggNDhsMCA3OS42YzE3LjYtMiAzNiAyLjUgNTEuMyAxNCAzLjQgMi42IDYuMSAxLjQgOS44LS4zbC44LS40YzUuNy0yLjYgMTIuOS02LjkgMjEuNy0xMy41IDI3LjUtMjAuNyA1OS45LTMxLjIgOTIuMy0zMS40IDMzLjEtLjIgNjYuMyAxMC4yIDk0LjQgMzEuNCAyMi4xIDE2LjYgMjkuMSAxNi42IDUxLjIgMCAyNy41LTIwLjcgNTkuOS0zMS4yIDkyLjQtMzEuNCAzMy4xLS4yIDY2LjMgMTAuMiA5NC40IDMxLjQgNi45IDUuMiAxMi44IDkgMTggMTEuNyAuNiAuMyAxLjIgLjYgMS44IDEgNC4yIDIuMyA4LjUgNC42IDEyLjYgMS41IDEwLjctOC4xIDIyLjktMTIuNyAzNS4zLTE0LjFsMC03OS41YzAtMjYuNS0yMS41LTQ4LTQ4LTQ4bC01NiAwIDAtMTQyLjEgNDcgNDdjOS40IDkuNCAyNC42IDkuNCAzMy45IDBzOS40LTI0LjYgMC0zMy45TDQ5NyAzOWMtOS40LTkuNC0yNC42LTkuNC0zMy45IDBsLTg4IDg4Yy05LjQgOS40LTkuNCAyNC42IDAgMzMuOXMyNC42IDkuNCAzMy45IDBsNDctNDcgMCAxNDIuMS0xMzYgMCAwLTE3NmMwLTI2LjUtMjEuNS00OC00OC00OEwxNDQgMzJ6TTQ3NC42IDQ3Ni4xYzE5IDE0LjQgNDEuOSAyOC4yIDY3LjIgMzMuMyAyNi41IDUuNCA1NC4zIC44IDgwLjctMTkuMSAxMC42LTggMTIuNy0yMyA0LjctMzMuNnMtMjMtMTIuNy0zMy42LTQuN2MtMTQuOSAxMS4yLTI4LjYgMTMuMS00Mi4zIDEwLjMtMTQuOS0zLTMwLjktMTEuOS00Ny44LTI0LjYtMzguNC0yOS05MC41LTI5LTEyOSAwLTI0IDE4LjEtNDAuNyAyNi4zLTU0LjUgMjYuM3MtMzAuNS04LjItNTQuNS0yNi4zYy0zOC40LTI5LTkwLjUtMjktMTI5IDAtMjEuNiAxNi4zLTQxLjMgMjUuOC01OC45IDI1LjctOS42LS4xLTE5LjktMy0zMS4yLTExLjUtMTAuNi04LTI1LjYtNS45LTMzLjYgNC43UzcgNDgyLjMgMTcuNiA0OTAuM2MxOS4xIDE0LjQgMzkuNCAyMSA1OS44IDIxLjEgMzMuOSAuMiA2NC4zLTE3LjQgODguMS0zNS4zIDIxLjMtMTYuMSA0OS45LTE2LjEgNzEuMiAwIDI0LjIgMTguMyA1Mi4zIDM1LjkgODMuNCAzNS45czU5LjEtMTcuNyA4My40LTM1LjljMjEuMy0xNi4xIDQ5LjktMTYuMSA3MS4yIDB6Il19LEJMZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtaWNyb3Bob25lLWxpbmVzLXNsYXNoIixpY29uOls1NzYsNTEyLFsibWljcm9waG9uZS1hbHQtc2xhc2giXSwiZjUzOSIsIk03LTI0LjljOS40LTkuNCAyNC42LTkuNCAzMy45IDBsMTUxIDE1MSAwLTMwLjJjMC01MyA0My05NiA5Ni05NiA1MC4zIDAgOTEuNiAzOC43IDk1LjcgODhMMzI4IDg4Yy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDU2IDAgMCA0OC01NiAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDU1LjcgMGMtMS45IDIyLjktMTEuOCA0My40LTI2LjkgNTlsMzMuOSAzMy45YzI1LjUtMjYgNDEuMy02MS42IDQxLjMtMTAwLjlsMC00MGMwLTEzLjMgMTAuNy0yNCAyNC0yNHMyNCAxMC43IDI0IDI0bDAgNDBjMCA1Mi42LTIxLjEgMTAwLjItNTUuMyAxMzQuOEw1NjkgNTAzLjFjOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlzLTI0LjYgOS40LTMzLjkgMEw3IDkuMUMtMi4zLS4zLTIuMy0xNS41IDctMjQuOXpNMjk3LjggMzY3LjdsNDEuNCA0MS40Yy04LjggMi40LTE3LjkgNC4zLTI3LjMgNS40bDAgNDkuNSA0OCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC0xNDQgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNGw0OCAwIDAtNDkuNUMxNjkuMyA0MDIuNyA5NiAzMjEuOSA5NiAyMjRsMC00MGMwLTUuMSAxLjYtOS45IDQuNC0xMy44bDQzLjYgNDMuNiAwIDEwLjJjMCA3OS41IDY0LjUgMTQ0IDE0NCAxNDQgMy4zIDAgNi42LS4xIDkuOC0uM3oiXX0scHZyPUJMZSxodnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic2VydmVyIixpY29uOls0NDgsNTEyLFtdLCJmMjMzIiwiTTY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZsMCA2NGMwIDM1LjMgMjguNyA2NCA2NCA2NGwzMjAgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTY0YzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDMyem0yMTYgNzJhMjQgMjQgMCAxIDEgMCA0OCAyNCAyNCAwIDEgMSAwLTQ4em01NiAyNGEyNCAyNCAwIDEgMSA0OCAwIDI0IDI0IDAgMSAxIC00OCAwek02NCAyODhjLTM1LjMgMC02NCAyOC43LTY0IDY0bDAgNjRjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzIwIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC02NGMwLTM1LjMtMjguNy02NC02NC02NEw2NCAyODh6bTIxNiA3MmEyNCAyNCAwIDEgMSAwIDQ4IDI0IDI0IDAgMSAxIDAtNDh6bTU2IDI0YTI0IDI0IDAgMSAxIDQ4IDAgMjQgMjQgMCAxIDEgLTQ4IDB6Il19LHkyZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ1c2VyIixpY29uOls0NDgsNTEyLFsxMjgxMDAsNjIxNDQsNjI0NzAsInVzZXItYWx0IiwidXNlci1sYXJnZSJdLCJmMDA3IiwiTTIyNCAyNDhhMTIwIDEyMCAwIDEgMCAwLTI0MCAxMjAgMTIwIDAgMSAwIDAgMjQwem0tMjkuNyA1NkM5NS44IDMwNCAxNiAzODMuOCAxNiA0ODIuMyAxNiA0OTguNyAyOS4zIDUxMiA0NS43IDUxMmwzNTYuNiAwYzE2LjQgMCAyOS43LTEzLjMgMjkuNy0yOS43IDAtOTguNS03OS44LTE3OC4zLTE3OC4zLTE3OC4zbC01OS40IDB6Il19LG12cj15MmUsZ3ZyPXkyZSx4dnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic25vd2ZsYWtlIixpY29uOls1MTIsNTEyLFsxMDA1MiwxMDA1NF0sImYyZGMiLCJNMjg4LjIgMGMwLTE3LjctMTQuMy0zMi0zMi0zMnMtMzIgMTQuMy0zMiAzMmwwIDYyLjEtMTUtMTVjLTkuNC05LjQtMjQuNi05LjQtMzMuOSAwcy05LjQgMjQuNiAwIDMzLjlsNDkgNDkgMCA3MC42LTYxLjItMzUuMy0xNy45LTY2LjljLTMuNC0xMi44LTE2LjYtMjAuNC0yOS40LTE3Uzk1LjMgOTggOTguNyAxMTAuOGw1LjUgMjAuNS01My43LTMxQzM1LjIgOTEuNSAxNS42IDk2LjcgNi44IDExMnMtMy42IDM0LjkgMTEuNyA0My43bDUzLjcgMzEtMjAuNSA1LjVjLTEyLjggMy40LTIwLjQgMTYuNi0xNyAyOS40czE2LjYgMjAuNCAyOS40IDE3bDY2LjktMTcuOSA2MS4yIDM1LjMtNjEuMiAzNS4zLTY2LjktMTcuOWMtMTIuOC0zLjQtMjYgNC4yLTI5LjQgMTdzNC4yIDI2IDE3IDI5LjRsMjAuNSA1LjUtNTMuNyAzMUMzLjIgMzY1LjEtMiAzODQuNyA2LjggNDAwczI4LjQgMjAuNiA0My43IDExLjdsNTMuNy0zMS01LjUgMjAuNWMtMy40IDEyLjggNC4yIDI2IDE3IDI5LjRzMjYtNC4yIDI5LjQtMTdsMTcuOS02Ni45IDYxLjItMzUuMyAwIDcwLjYtNDkgNDljLTkuNCA5LjQtOS40IDI0LjYgMCAzMy45czI0LjYgOS40IDMzLjkgMGwxNS0xNSAwIDYyLjFjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTYyLjEgMTUgMTVjOS40IDkuNCAyNC42IDkuNCAzMy45IDBzOS40LTI0LjYgMC0zMy45bC00OS00OSAwLTcwLjYgNjEuMiAzNS4zIDE3LjkgNjYuOWMzLjQgMTIuOCAxNi42IDIwLjQgMjkuNCAxN3MyMC40LTE2LjYgMTctMjkuNGwtNS41LTIwLjUgNTMuNyAzMWMxNS4zIDguOCAzNC45IDMuNiA0My43LTExLjdzMy42LTM0LjktMTEuNy00My43bC01My43LTMxIDIwLjUtNS41YzEyLjgtMy40IDIwLjQtMTYuNiAxNy0yOS40cy0xNi42LTIwLjQtMjkuNC0xN2wtNjYuOSAxNy45LTYxLjItMzUuMyA2MS4yLTM1LjMgNjYuOSAxNy45YzEyLjggMy40IDI2LTQuMiAyOS40LTE3cy00LjItMjYtMTctMjkuNGwtMjAuNS01LjUgNTMuNy0zMWMxNS4zLTguOCAyMC42LTI4LjQgMTEuNy00My43cy0yOC40LTIwLjUtNDMuNy0xMS43bC01My43IDMxIDUuNS0yMC41YzMuNC0xMi44LTQuMi0yNi0xNy0yOS40cy0yNiA0LjItMjkuNCAxN2wtMTcuOSA2Ni45LTYxLjIgMzUuMyAwLTcwLjYgNDktNDljOS40LTkuNCA5LjQtMjQuNiAwLTMzLjlzLTI0LjYtOS40LTMzLjkgMGwtMTUgMTUgMC02Mi4xeiJdfSxidnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidGF1cnVzIixpY29uOlszODQsNTEyLFtdLCJlODRmIiwiTTMzNi0xNmMxNy43IDAgMzIgMTQuMyAzMiAzMiAwIDU4LjUtMjguNiAxMTAuMy03Mi41IDE0Mi4zIDUzLjIgMzQuMSA4OC41IDkzLjggODguNSAxNjEuNyAwIDEwNi04NiAxOTItMTkyIDE5MlMwIDQyNiAwIDMyMEMwIDI1Mi4xIDM1LjMgMTkyLjQgODguNSAxNTguMyA0NC42IDEyNi4zIDE2IDc0LjUgMTYgMTYgMTYtMS43IDMwLjMtMTYgNDgtMTZTODAtMS43IDgwIDE2YzAgNjEuOSA1MC4xIDExMiAxMTIgMTEyUzMwNCA3Ny45IDMwNCAxNmMwLTE3LjcgMTQuMy0zMiAzMi0zMnpNMTkyIDE5MmExMjggMTI4IDAgMSAwIDAgMjU2IDEyOCAxMjggMCAxIDAgMC0yNTZ6Il19LHZ2cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJza3VsbC1jcm9zc2JvbmVzIixpY29uOls0NDgsNTEyLFsxMjgzNjksOTc2MF0sImY3MTQiLCJNMzg0IDE0NEMzODQgNjQuNSAzMTIuNCAwIDIyNCAwUzY0IDY0LjUgNjQgMTQ0YzAgNDcuMSAyNS4xIDg4LjkgNjQgMTE1LjJsMCAyOC44YzAgMTcuNyAxNC4zIDMyIDMyIDMybDEyOCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtMjguOGMzOC45LTI2LjMgNjQtNjguMSA2NC0xMTUuMnpNMTYwIDEyOGEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6bTk2IDMyYTMyIDMyIDAgMSAxIDY0IDAgMzIgMzIgMCAxIDEgLTY0IDB6TTQ0NS41IDMzOS43Yy02LjgtMTYuMy0yNS41LTI0LTQxLjgtMTcuMkwyMjQgMzk3LjMgNDQuMyAzMjIuNWMtMTYuMy02LjgtMzUgLjktNDEuOCAxNy4ycy45IDM1IDE3LjIgNDEuOEwxNDAuOCA0MzIgMTkuNyA0ODIuNUMzLjQgNDg5LjMtNC4zIDUwOCAyLjUgNTI0LjNzMjUuNSAyNCA0MS44IDE3LjJMMjI0IDQ2Ni43IDQwMy43IDU0MS41YzE2LjMgNi44IDM1LS45IDQxLjgtMTcuMnMtLjktMzUtMTcuMi00MS44TDMwNy4yIDQzMiA0MjguMyAzODEuNWMxNi4zLTYuOCAyNC0yNS41IDE3LjItNDEuOHoiXX0seXZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBlc28tc2lnbiIsaWNvbjpbNDQ4LDUxMixbXSwiZTIyMiIsIk0xMTIgMzJDOTQuMyAzMiA4MCA0Ni4zIDgwIDY0bDAgNjQtMjQgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwyNCAwIDAgMzItMjQgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwyNCAwIDAgMTkyYzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC05NiA5NiAwYzY1LjYgMCAxMjItMzkuNSAxNDYuNy05NmwzNy4zIDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTI0LjggMGMuNS01LjMgLjgtMTAuNiAuOC0xNnMtLjMtMTAuNy0uOC0xNmwyNC44IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTM3LjMgMEMzNjIgNzEuNSAzMDUuNiAzMiAyNDAgMzJMMTEyIDMyem0xOTkuNiA5NmwtMTY3LjYgMCAwLTMyIDk2IDBjMjguNCAwIDU0IDEyLjQgNzEuNiAzMnpNMTQ0IDE3NmwxOTAuNyAwYy45IDUuMiAxLjMgMTAuNSAxLjMgMTZzLS41IDEwLjgtMS4zIDE2bC0xOTAuNyAwIDAtMzJ6bTE2Ny42IDgwYy0xNy42IDE5LjYtNDMuMSAzMi03MS42IDMybC05NiAwIDAtMzIgMTY3LjYgMHoiXX0sd3ZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6IndpbmUtZ2xhc3MiLGljb246WzMyMCw1MTIsWzEyNzg2M10sImY0ZTMiLCJNMzIuNiAyNS43QzM1LjYgMTAuOCA0OC43IDAgNjQgMEwyNTYgMGMxNS4zIDAgMjguNCAxMC44IDMxLjQgMjUuN0wzMTYuOCAxNzNjMi4xIDEwLjUgMy4yIDIxLjIgMy4yIDMybDAgM2MwIDc3LjQtNTUgMTQyLTEyOCAxNTYuOGwwIDExNS4yIDY0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJMNjQgNTQ0Yy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDY0IDAgMC0xMTUuMkM1NSAzNTAgMCAyODUuNCAwIDIwOGwwLTNjMC0xMC43IDEuMS0yMS40IDMuMi0zMkwzMi42IDI1Ljd6TTc3LjQgMTI4bDE2NS4xIDAtMTIuOC02NC0xMzkuNSAwLTEyLjggNjR6Il19LEN3PXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRlbXBlcmF0dXJlLWhhbGYiLGljb246WzMyMCw1MTIsWzEyNzc3NywidGVtcGVyYXR1cmUtMiIsInRoZXJtb21ldGVyLTIiLCJ0aGVybW9tZXRlci1oYWxmIl0sImYyYzkiLCJNMTYwIDBDMTA3IDAgNjQgNDMgNjQgOTZsMCAxNjQuN0MzNC41IDI4NyAxNiAzMjUuNCAxNiAzNjggMTYgNDQ3LjUgODAuNSA1MTIgMTYwIDUxMnMxNDQtNjQuNSAxNDQtMTQ0YzAtNDIuNi0xOC41LTgxLTQ4LTEwNy4zTDI1NiA5NmMwLTUzLTQzLTk2LTk2LTk2em02NCAzNjhjMCAzNS4zLTI4LjcgNjQtNjQgNjRzLTY0LTI4LjctNjQtNjRjMC0yNi45IDE2LjUtNDkuOSA0MC01OS4zbDAtOTIuN2MwLTEzLjMgMTAuNy0yNCAyNC0yNHMyNCAxMC43IDI0IDI0bDAgOTIuN2MyMy41IDkuNSA0MCAzMi41IDQwIDU5LjN6Il19LE12cj1DdyxrdnI9Q3csU3ZyPUN3LHp2cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0aWNrZXQiLGljb246WzU3Niw1MTIsWzEyNzkwM10sImYxNDUiLCJNNjQgNjRDMjguNyA2NCAwIDkyLjcgMCAxMjhsMCA2NEMwIDIwMC44IDcuNCAyMDcuNyAxNS43IDIxMC42IDM0LjUgMjE3LjEgNDggMjM1IDQ4IDI1NnMtMTMuNSAzOC45LTMyLjMgNDUuNEM3LjQgMzA0LjMgMCAzMTEuMiAwIDMyMGwwIDY0YzAgMzUuMyAyOC43IDY0IDY0IDY0bDQ0OCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtNjRjMC04LjgtNy40LTE1LjctMTUuNy0xOC42LTE4LjgtNi41LTMyLjMtMjQuNC0zMi4zLTQ1LjRzMTMuNS0zOC45IDMyLjMtNDUuNGM4LjMtMi45IDE1LjctOS44IDE1LjctMTguNmwwLTY0YzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDY0ek00MTYgMzM2bDAtMTYwLTI1NiAwIDAgMTYwIDI1NiAwek0xMTIgMTYwYzAtMTcuNyAxNC4zLTMyIDMyLTMybDI4OCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMTkyYzAgMTcuNy0xNC4zIDMyLTMyIDMybC0yODggMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC0xOTJ6Il19LEN2cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ3aGVhdC1hd24tY2lyY2xlLWV4Y2xhbWF0aW9uIixpY29uOls2NDAsNTEyLFtdLCJlNTk4IiwiTTQ5NiA1NzZhMTQ0IDE0NCAwIDEgMSAwLTI4OCAxNDQgMTQ0IDAgMSAxIDAgMjg4ek04MSA1MjljLTkuNCA5LjMtMjQuNSA5LjMtMzMuOSAwLTkuNC05LjQtOS40LTI0LjYgMC0zMy45TDgxIDUyOXptMzAuMi0yOTQuNGM2LjItNC4xIDE0LjctMy40IDIwLjEgMi4xbDQ2LjEgNDYuMSA2LjEgNi43YzE5LjcgMjMuOCAyNi4zIDU1IDE5LjMgODMuOSAzMS43LTcuNyA2Ni4yIDEgOTAuNiAyNS4zbDEyIDEyYy0uOCA3LTEuMiAxNC4yLTEuMiAyMS40IDAgMjAgMyAzOS4zIDguNyA1Ny40LTM2LjggMjEuOC04NSAxNy0xMTYuNi0xNC43TDE2NS42IDQ0NC4zIDgxIDUyOUM2OS43IDUxNy43IDU4LjQgNTA2LjMgNDcgNDk1bDg0LjctODQuNy0zMC41LTMwLjVjLTM3LjUtMzcuNS0zNy41LTk4LjMgMC0xMzUuN2w3LjQtNy40IDIuNS0yLjF6TTQ5NiA0NzZhMjAgMjAgMCAxIDAgMCA0MCAyMCAyMCAwIDEgMCAwLTQwem0wLTE0MGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgODBjMCA4LjggNy4yIDE2IDE2IDE2IDguOCAwIDE2LTcuMiAxNi0xNmwwLTgwYzAtOC44LTcuMi0xNi0xNi0xNnpNMjE1LjIgMTMwLjZjNi4yLTQuMSAxNC43LTMuNCAyMC4xIDIuMWw0Ni4xIDQ2LjEgNi4xIDYuN2MxOS43IDIzLjggMjYuMyA1NSAxOS4zIDgzLjkgMjQuMi01LjkgNTAuMS0yLjEgNzEuOSAxMC44LTMyLjIgMjQuOS01Ni4yIDU5LjgtNjcuNCAxMDAuMS0zLjgtMi44LTcuNS02LTExLTkuNWwtOTQuOS05NC45Yy0zNy41LTM3LjUtMzcuNS05OC4zIDAtMTM1LjdsNy40LTcuNCAyLjUtMi4xek01MjYuNyAxNWM5LjQtOS40IDI0LjYtOS40IDMzLjkgMCA4LjggOC44IDkuMyAyMi43IDEuNyAzMi4xTDU2MC42IDQ5IDQ0Ni4yIDE2My40YzcuNyAxIDE1LjMgMyAyMi41IDUuOUw1MjcgMTExYzkuNC05LjQgMjQuNi05LjQgMzQgMCA4LjggOC44IDkuMyAyMi43IDEuNiAzMi4xbC0xLjcgMS44LTUyLjcgNTIuNyAzOSAzOWMzLjIgMy4yIDQuNyA3LjQgNC43IDExLjYtMTcuNy01LjQtMzYuNS04LjMtNTUuOS04LjMtMzQuMiAwLTY2LjMgOC45LTk0LjEgMjQuNmwtOTIuNy05Mi43Yy0zNy41LTM3LjUtMzcuNS05OC4zIDAtMTM1LjhsNy40LTcuNCAyLjUtMi4xYzYuMi00LjEgMTQuNy0zLjQgMjAuMSAyLjFsMzkgMzkgNTIuNy01Mi43YzkuNC05LjQgMjQuNi05LjQgMzQgMCA4LjggOC44IDkuMyAyMi43IDEuNiAzMi4xTDQ2NSA0OSA0MDYuNyAxMDcuM2MyLjggNy4xIDQuNyAxNC41IDUuOCAyMi4xTDUyNi43IDE1eiJdfSxfdnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYXJyb3dzLXR1cm4tcmlnaHQiLGljb246WzQ0OCw1MTIsW10sImU0YzAiLCJNMzEzLjQtNi42YzEyLjUtMTIuNSAzMi44LTEyLjUgNDUuMyAwbDgwIDgwYzEyLjUgMTIuNSAxMi41IDMyLjggMCA0NS4zbC04MCA4MGMtMTIuNSAxMi41LTMyLjggMTIuNS00NS4zIDBzLTEyLjUtMzIuOCAwLTQ1LjNMMzM4LjcgMTI4IDEyOCAxMjhjLTM1LjMgMC02NCAyOC43LTY0IDY0bDAgMzJjMCAxNy43LTE0LjMgMzItMzIgMzJTMCAyNDEuNyAwIDIyNGwwLTMyQzAgMTIxLjMgNTcuMyA2NCAxMjggNjRsMjEwLjcgMC0yNS40LTI1LjRjLTEyLjUtMTIuNS0xMi41LTMyLjggMC00NS4zem0tOTYgMjU2YzEyLjUtMTIuNSAzMi44LTEyLjUgNDUuMyAwbDgwIDgwYzEyLjUgMTIuNSAxMi41IDMyLjggMCA0NS4zbC04MCA4MGMtMTIuNSAxMi41LTMyLjggMTIuNS00NS4zIDBzLTEyLjUtMzIuOCAwLTQ1LjNMMjQyLjcgMzg0IDk2IDM4NGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJsMCAzMmMwIDE3LjctMTQuMyAzMi0zMiAzMlMwIDQ2NS43IDAgNDQ4bDAtMzJjMC01MyA0My05NiA5Ni05NmwxNDYuNyAwLTI1LjQtMjUuNGMtMTIuNS0xMi41LTEyLjUtMzIuOCAwLTQ1LjN6Il19LFR2cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjYW5keS1jYW5lIixpY29uOls0NDgsNTEyLFtdLCJmNzg2IiwiTTQyMS44IDM5LjZDNDUyIDg1LjIgNDU2LjUgMTQyLjkgNDM1LjEgMTkybC0xNjUuNCAwIDQxLjQtNDEuNGMuOC0uOCAxLjUtMS42IDIuMi0yLjRMNDIxLjggMzkuNnpNMjY4IDEwMi45Yy0uOCAuNy0xLjYgMS40LTIuNCAyLjJsLTI4LjEgMjguMWMtMjUgMjUtNjUuNSAyNS05MC41IDBzLTI1LTY1LjUgMC05MC41TDE3NSAxNC42QzIyOS45LTQwLjIgMzE0LjUtNDYuNyAzNzYuNS01LjZMMjY4IDEwMi45ek0xMjUuNyAzMzZsODAtODAgMTgxIDAtODIuNSA4Mi41IDAtMi41LTE3OC41IDB6bTExNyA2NEwxNDEuNCA1MDEuM2MtMjUgMjUtNjUuNSAyNS05MC41IDBzLTI1LTY1LjUgMC05MC41bDEwLjctMTAuNyAxODEgMHoiXX0sTHZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6IndoZWVsY2hhaXIiLGljb246WzUxMiw1MTIsW10sImYxOTMiLCJNMTM2IDQwYTU2IDU2IDAgMSAxIDExMiAwIDU2IDU2IDAgMSAxIC0xMTIgMHpNMTE3LjkgMTk3LjZsMTIuNiA2M2MtMzguNiAxMi40LTY2LjUgNDguNy02Ni41IDkxLjQgMCA1MyA0MyA5NiA5NiA5NiAzNS42IDAgNjYuNy0xOS40IDgzLjMtNDguMiAyLjMgLjEgNC42IC4yIDcgLjJsNC4xIDBjMSAwIDIuMSAwIDMuMSAwbDU1LjIgMGMtMjAuNCA2NC45LTgxIDExMi0xNTIuNyAxMTItODguNCAwLTE2MC03MS42LTE2MC0xNjAgMC03My44IDUwLTEzNS45IDExNy45LTE1NC40em0xNDguNi0yOC4xbDIzLjcgMTE4LjUgNjAuNSAwYzMzLjMgMCA2My4yIDIwLjcgNzQuOSA1MS45bDI1LjUgNjggMTguNy02LjJjMTYuOC01LjYgMzQuOSAzLjUgNDAuNSAyMC4ycy0zLjUgMzQuOS0yMC4yIDQwLjVsLTQ4IDE2Yy0xNi4zIDUuNC0zNC0zLTQwLjEtMTkuMWwtMzYuMy05Ni45Yy0yLjMtNi4yLTguMy0xMC40LTE1LTEwLjRsLTg2LjEgMGMtLjQgMC0uOCAwLTEuMyAwbC0xMy4xIDBjLTMwLjUgMC01Ni44LTIxLjUtNjIuOC01MS40TDE2NS4zIDE4OS43Yy02LjQtMzEuOSAxOC02MS43IDUwLjYtNjEuNyAyNC42IDAgNDUuOCAxNy40IDUwLjYgNDEuNXoiXX0sRHZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNwZWxsLWNoZWNrIixpY29uOls1NzYsNTEyLFtdLCJmODkxIiwiTTEyMCAzMmMtNDguNiAwLTg4IDM5LjQtODggODhsMCAxNjhjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTY0IDY0IDAgMCA2NGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMTY4YzAtNDguNi0zOS40LTg4LTg4LTg4bC0xNiAwem00MCAxMjhsLTY0IDAgMC00MGMwLTEzLjMgMTAuNy0yNCAyNC0yNGwxNiAwYzEzLjMgMCAyNCAxMC43IDI0IDI0bDAgNDB6TTMwNCAzMmMtMTcuNyAwLTMyIDE0LjMtMzIgMzJsMCAyMjRjMCAxNy43IDE0LjMgMzIgMzIgMzJsNzIgMGM0OC42IDAgODgtMzkuNCA4OC04OCAwLTIzLjYtOS4zLTQ1LTI0LjQtNjAuOCAxMC4zLTE0LjQgMTYuNC0zMi4xIDE2LjQtNTEuMiAwLTQ4LjYtMzkuNC04OC04OC04OGwtNjQgMHptNjQgMTEybC0zMiAwIDAtNDggMzIgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNHpNMzM2IDI1NmwwLTQ4IDQwIDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTQwIDB6bTIzMyA4NGMxMS0xMy44IDguOC0zMy45LTUtNDVzLTMzLjktOC44LTQ1IDVsLTEwNS43IDEzMi4xLTM4LjctMzguN2MtMTIuNS0xMi41LTMyLjgtMTIuNS00NS4zIDBzLTEyLjUgMzIuOCAwIDQ1LjNsNjQgNjRjNi40IDYuNCAxNS4zIDkuOCAyNC40IDkuM3MxNy41LTQuOSAyMy4yLTEyTDU2OSAzNDB6Il19LEF2cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ2b2x1bWUtb2ZmIixpY29uOlszMjAsNTEyLFtdLCJmMDI2IiwiTTk2IDM1MmwtNDggMGMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhsMC05NmMwLTI2LjUgMjEuNS00OCA0OC00OGw0OCAwIDEzNC4xLTExOS4yYzYuNC01LjcgMTQuNi04LjggMjMuMS04LjggMTkuMiAwIDM0LjggMTUuNiAzNC44IDM0LjhsMCAzNzguNGMwIDE5LjItMTUuNiAzNC44LTM0LjggMzQuOC04LjUgMC0xNi43LTMuMS0yMy4xLTguOEw5NiAzNTJ6Il19LEV2cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJsdW5ncyIsaWNvbjpbNTc2LDUxMixbMTI5NzI5XSwiZjYwNCIsIk0zMjAgMzJjMC0xNy43LTE0LjMtMzItMzItMzJzLTMyIDE0LjMtMzIgMzJsMCAxNDEuOS0zMiAxOS4yIDAtMTE2LjdjMC0yNC41LTE5LjktNDQuNC00NC40LTQ0LjQtMTIuNSAwLTI0LjQgNS4zLTMyLjggMTQuNWwtMjYuNCAyOUM0Mi45IDE2MC44IDAgMjcxLjggMCAzODdsMCAzMC41YzAgNTIuMiA0Mi4zIDk0LjUgOTQuNSA5NC41IDIyIDAgNDMuNy01LjEgNjMuNC0xNWw1LTIuNWMzNy40LTE4LjcgNjEtNTYuOSA2MS05OC44bDAtMTI4IDY0LTM4LjQgNjQgMzguNCAwIDEyOGMwIDQxLjggMjMuNiA4MC4xIDYxIDk4LjhsNSAyLjVjMTkuNyA5LjggNDEuNCAxNSA2My40IDE1IDUyLjIgMCA5NC41LTQyLjMgOTQuNS05NC41bDAtNi4yYzAtMTExLjEtMzYuNy0yMTktMTA0LjQtMzA3TDQyOC45IDQ4LjdjLTguMS0xMC42LTIwLjctMTYuNy0zNC0xNi43LTIzLjcgMC00Mi45IDE5LjItNDIuOSA0Mi45bDAgMTE4LjItMzItMTkuMiAwLTE0MS45eiJdfSwkdnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYm9va21hcmsiLGljb246WzM4NCw1MTIsWzEyODI3OCw2MTU5MV0sImYwMmUiLCJNNjQgMEMyOC43IDAgMCAyOC43IDAgNjRMMCA0ODBjMCAxMS41IDYuMiAyMi4yIDE2LjIgMjcuOHMyMi4zIDUuNSAzMi4yLS40TDE5MiA0MjEuMyAzMzUuNSA1MDcuNGM5LjkgNS45IDIyLjIgNi4xIDMyLjIgLjRTMzg0IDQ5MS41IDM4NCA0ODBsMC00MTZjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMHoiXX0sUHZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJhcmNvZGUiLGljb246WzQ0OCw1MTIsW10sImYwMmEiLCJNMzIgMzJDMTQuMyAzMiAwIDQ2LjMgMCA2NEwwIDQ0OGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMyTDY0IDY0YzAtMTcuNy0xNC4zLTMyLTMyLTMyem04OCAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNGwwIDQwMGMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtNDAwYzAtMTMuMy0xMC43LTI0LTI0LTI0em03MiAzMmwwIDM4NGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMzg0YzAtMTcuNy0xNC4zLTMyLTMyLTMycy0zMiAxNC4zLTMyIDMyem0yMDgtOGwwIDQwMGMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtNDAwYzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0em0tOTYgMGwwIDQwMGMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtNDAwYzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0eiJdfSx3MmU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibGlzdC1vbCIsaWNvbjpbNTEyLDUxMixbImxpc3QtMS0yIiwibGlzdC1udW1lcmljIl0sImYwY2IiLCJNMCA3MkMwIDU4LjggMTAuNyA0OCAyNCA0OGw0OCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0bDAgMTA0IDI0IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTk2IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjRsMjQgMCAwLTgwLTI0IDBDMTAuNyA5NiAwIDg1LjMgMCA3MnpNMzAuNCAzMDEuMkM0MS44IDI5Mi42IDU1LjcgMjg4IDcwIDI4OGw0LjkgMGMzMy43IDAgNjEuMSAyNy40IDYxLjEgNjEuMSAwIDE5LjYtOS40IDM3LjktMjUuMiA0OS40bC0yNCAxNy41IDMzLjIgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtOTAuNyAwQzEzLjEgNDY0IDAgNDUwLjkgMCA0MzQuNyAwIDQyNS4zIDQuNSA0MTYuNSAxMi4xIDQxMWw3MC41LTUxLjNjMy40LTIuNSA1LjQtNi40IDUuNC0xMC42IDAtNy4yLTUuOS0xMy4xLTEzLjEtMTMuMUw3MCAzMzZjLTMuOSAwLTcuNyAxLjMtMTAuOCAzLjZMMzguNCAzNTUuMmMtMTAuNiA4LTI1LjYgNS44LTMzLjYtNC44Uy0xIDMyNC44IDkuNiAzMTYuOGwyMC44LTE1LjZ6TTIyNCA2NGwyNTYgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtMjU2IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJ6bTAgMTYwbDI1NiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC0yNTYgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMnptMCAxNjBsMjU2IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTI1NiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMyeiJdfSxJdnI9dzJlLE52cj13MmUsRnZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZpbGUtY2lyY2xlLXhtYXJrIixpY29uOls1NzYsNTEyLFtdLCJlNWExIiwiTTk2IDBDNjAuNyAwIDMyIDI4LjcgMzIgNjRsMCAzODRjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMTgwIDBjLTIyLjctMzEuNS0zNi03MC4yLTM2LTExMiAwLTEwMC42IDc3LjQtMTgzLjIgMTc2LTE5MS4zbDAtMzguMWMwLTE3LTYuNy0zMy4zLTE4LjctNDUuM0wyOTAuNyAxOC43QzI3OC43IDYuNyAyNjIuNSAwIDI0NS41IDBMOTYgMHpNMzU3LjUgMTc2TDI2NCAxNzZjLTEzLjMgMC0yNC0xMC43LTI0LTI0TDI0MCA1OC41IDM1Ny41IDE3NnpNNDMyIDU0NGExNDQgMTQ0IDAgMSAwIDAtMjg4IDE0NCAxNDQgMCAxIDAgMCAyODh6bTU5LjMtMTgwLjdsLTM2LjcgMzYuNyAzNi43IDM2LjdjNi4yIDYuMiA2LjIgMTYuNCAwIDIyLjZzLTE2LjQgNi4yLTIyLjYgMGwtMzYuNy0zNi43LTM2LjcgMzYuN2MtNi4yIDYuMi0xNi40IDYuMi0yMi42IDBzLTYuMi0xNi40IDAtMjIuNmwzNi43LTM2LjctMzYuNy0zNi43Yy02LjItNi4yLTYuMi0xNi40IDAtMjIuNnMxNi40LTYuMiAyMi42IDBsMzYuNyAzNi43IDM2LjctMzYuN2M2LjItNi4yIDE2LjQtNi4yIDIyLjYgMHM2LjIgMTYuNCAwIDIyLjZ6Il19LE92cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjdWJlIixpY29uOls1MTIsNTEyLFtdLCJmMWIyIiwiTTIyNC4zLTIuNWMxOS44LTExLjQgNDQuMi0xMS40IDY0IDBMNDY0LjIgOTljMTkuOCAxMS40IDMyIDMyLjYgMzIgNTUuNGwwIDIwM2MwIDIyLjktMTIuMiA0NC0zMiA1NS40TDI4OC4zIDUxNC41Yy0xOS44IDExLjQtNDQuMiAxMS40LTY0IDBMNDguNSA0MTNjLTE5LjgtMTEuNC0zMi0zMi42LTMyLTU1LjRsMC0yMDNjMC0yMi45IDEyLjItNDQgMzItNTUuNEwyMjQuMy0yLjV6bTIwNy44IDM2MGwwLTE2Ni4xLTE0My44IDgzIDAgMTY2LjEgMTQzLjgtODN6Il19LFJ2cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0YXBlIixpY29uOls1NzYsNTEyLFtdLCJmNGRiIiwiTTQxMi44IDQxNmM0MS41LTQwLjcgNjcuMi05Ny4zIDY3LjItMTYwIDAtMTIzLjctMTAwLjMtMjI0LTIyNC0yMjRTMzIgMTMyLjMgMzIgMjU2IDEzMi4zIDQ4MCAyNTYgNDgwbDI4OCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC0xMzEuMiAwek0yNTYgMTYwYTk2IDk2IDAgMSAxIDAgMTkyIDk2IDk2IDAgMSAxIDAtMTkyem00OCA5NmE0OCA0OCAwIDEgMCAtOTYgMCA0OCA0OCAwIDEgMCA5NiAweiJdfSxCdnI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYm9tYiIsaWNvbjpbNTc2LDUxMixbMTI4MTYzXSwiZjFlMiIsIk00ODAtMTZjNi45IDAgMTMgNC40IDE1LjIgMTAuOWwxMy41IDQwLjQgNDAuNCAxMy41QzU1NS42IDUxIDU2MCA1Ny4xIDU2MCA2NHMtNC40IDEzLTEwLjkgMTUuMmwtNDAuNCAxMy41LTEzLjUgNDAuNEM0OTMgMTM5LjYgNDg2LjkgMTQ0IDQ4MCAxNDRzLTEzLTQuNC0xNS4yLTEwLjlsLTEzLjUtNDAuNC00MC40LTEzLjVDNDA0LjQgNzcgNDAwIDcwLjkgNDAwIDY0czQuNC0xMyAxMC45LTE1LjJsNDAuNC0xMy41IDEzLjUtNDAuNEM0NjctMTEuNiA0NzMuMS0xNiA0ODAtMTZ6TTMyMS40IDk3LjRjMTIuNS0xMi41IDMyLjgtMTIuNSA0NS4zIDBsODAgODBjMTIuNSAxMi41IDEyLjUgMzIuOCAwIDQ1LjNsLTEwLjkgMTAuOWM3LjkgMjIgMTIuMiA0NS43IDEyLjIgNzAuNSAwIDExNC45LTkzLjEgMjA4LTIwOCAyMDhTMzIgNDE4LjkgMzIgMzA0IDEyNS4xIDk2IDI0MCA5NmMyNC43IDAgNDguNSA0LjMgNzAuNSAxMi4zbDEwLjktMTAuOXpNMTQ0IDMwNGMwLTUzIDQzLTk2IDk2LTk2IDEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0Yy03OS41IDAtMTQ0IDY0LjUtMTQ0IDE0NCAwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0eiJdfSxITGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic2NhbGUtdW5iYWxhbmNlZCIsaWNvbjpbNjQwLDUxMixbImJhbGFuY2Utc2NhbGUtbGVmdCJdLCJmNTE1IiwiTTUxOS44IDYyLjRjMTYuOC01LjYgMjUuOC0yMy43IDIwLjItNDAuNVM1MTYuMy0zLjkgNDk5LjYgMS42bC0xMTMgMzcuN2MtMTMuOS0yMy41LTM5LjYtMzkuMy02OC45LTM5LjMtNDQuMiAwLTgwIDM1LjgtODAgODAgMCAzIC4yIDUuOSAuNSA4LjhMMTE1LjYgMTI5LjZjLTE2LjggNS42LTI1LjggMjMuNy0yMC4yIDQwLjVzMjMuNyAyNS44IDQwLjUgMjAuMmwxMzUuNS00NS4yYzQuNSAzLjIgOS4zIDUuOSAxNC40IDguMmwwIDMyNi43YzAgMTcuNyAxNC4zIDMyIDMyIDMybDE5MiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC0xNjAgMCAwLTI5NC43YzIxLTkuMiAzNy4yLTI3IDQ0LjItNDlsMTI1LjktNDJ6TTQzNy4zIDI4OGw3Mi40LTEyNC4yIDcyLjQgMTI0LjItMTQ0LjkgMHptNzIuNCA5NmM2Mi45IDAgMTE1LjItMzQgMTI2LTc4LjkgMi42LTExLTEtMjIuMy02LjctMzIuMUw1MzMuOCAxMDkuOGMtNS04LjYtMTQuMi0xMy44LTI0LjEtMTMuOHMtMTkuMSA1LjMtMjQuMSAxMy44TDM5MC40IDI3My4xYy01LjcgOS44LTkuMyAyMS4xLTYuNyAzMi4xIDEwLjggNDQuOCA2My4xIDc4LjkgMTI2IDc4Ljl6TTEyNi44IDI5MS44bDcyLjQgMTI0LjItMTQ0LjkgMCA3Mi40LTEyNC4yek0uOSA0MzMuMUMxMS43IDQ3OCA2NCA1MTIgMTI2LjggNTEyczExNS4yLTM0IDEyNi03OC45YzIuNi0xMS0xLTIyLjMtNi43LTMyLjFMMTUwLjkgMjM3LjhjLTUtOC42LTE0LjItMTMuOC0yNC4xLTEzLjhzLTE5LjEgNS4zLTI0LjEgMTMuOEw3LjYgNDAxLjFjLTUuNyA5LjgtOS4zIDIxLjEtNi43IDMyLjF6Il19LEh2cj1ITGUscUxlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNxdWFyZS1jYXJldC1sZWZ0IixpY29uOls0NDgsNTEyLFsiY2FyZXQtc3F1YXJlLWxlZnQiXSwiZjE5MSIsIk0wIDQxNmMwIDM1LjMgMjguNyA2NCA2NCA2NGwzMjAgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTMyMGMwLTM1LjMtMjguNy02NC02NC02NEw2NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgNDE2ek0xMjggMjU2YzAtNi43IDIuOC0xMyA3LjctMTcuNmwxMTItMTA0YzctNi41IDE3LjItOC4yIDI1LjktNC40UzI4OCAxNDIuNSAyODggMTUybDAgMjA4YzAgOS41LTUuNyAxOC4yLTE0LjQgMjJzLTE4LjkgMi4xLTI1LjktNC40bC0xMTItMTA0Yy00LjktNC41LTcuNy0xMC45LTcuNy0xNy42eiJdfSxxdnI9cUxlLGp2cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJydWxlciIsaWNvbjpbNTc2LDUxMixbMTI4MjA3XSwiZjU0NSIsIk0yMDkuMSA1MTYuMmMtMTguNyAxOC43LTQ5LjEgMTguNy02Ny45IDBMMjguMSA0MDMuMWMtMTguNy0xOC43LTE4LjctNDkuMSAwLTY3LjlsMTctMTcgNzMuNSA3My41YzkuNCA5LjQgMjQuNiA5LjQgMzMuOSAwczkuNC0yNC42IDAtMzMuOWwtNzMuNS03My41IDMzLjktMzMuOSA1MC45IDUwLjljOS40IDkuNCAyNC42IDkuNCAzMy45IDBzOS40LTI0LjYgMC0zMy45bC01MC45LTUwLjkgMzMuOS0zMy45IDczLjUgNzMuNWM5LjQgOS40IDI0LjYgOS40IDMzLjkgMHM5LjQtMjQuNiAwLTMzLjlsLTczLjUtNzMuNSAzMy45LTMzLjkgNTAuOSA1MC45YzkuNCA5LjQgMjQuNiA5LjQgMzMuOSAwczkuNC0yNC42IDAtMzMuOWwtNTAuOS01MC45IDMzLjktMzMuOSA3My41IDczLjVjOS40IDkuNCAyNC42IDkuNCAzMy45IDBzOS40LTI0LjYgMC0zMy45bC03My41LTczLjUgMTctMTdjMTguNy0xOC43IDQ5LjEtMTguNyA2Ny45IDBMNTQ4LjUgMTA4LjljMTguNyAxOC43IDE4LjcgNDkuMSAwIDY3LjlMMjA5LjEgNTE2LjJ6Il19LFZ2cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJpIixpY29uOlszMjAsNTEyLFsxMDVdLCI0OSIsIk0zMiAzMkMxNC4zIDMyIDAgNDYuMyAwIDY0UzE0LjMgOTYgMzIgOTZsOTYgMCAwIDMyMC05NiAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDI1NiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC05NiAwIDAtMzIwIDk2IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJMMzIgMzJ6Il19LE0yZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ2b2x1bWUteG1hcmsiLGljb246WzU3Niw1MTIsWyJ2b2x1bWUtbXV0ZSIsInZvbHVtZS10aW1lcyJdLCJmNmE5IiwiTTQ4IDM1Mmw0OCAwIDEzNC4xIDExOS4yYzYuNCA1LjcgMTQuNiA4LjggMjMuMSA4LjggMTkuMiAwIDM0LjgtMTUuNiAzNC44LTM0LjhsMC0zNzguNGMwLTE5LjItMTUuNi0zNC44LTM0LjgtMzQuOC04LjUgMC0xNi43IDMuMS0yMy4xIDguOEw5NiAxNjAgNDggMTYwYy0yNi41IDAtNDggMjEuNS00OCA0OGwwIDk2YzAgMjYuNSAyMS41IDQ4IDQ4IDQ4ek0zNjcgMTc1Yy05LjQgOS40LTkuNCAyNC42IDAgMzMuOWw0NyA0Ny00NyA0N2MtOS40IDkuNC05LjQgMjQuNiAwIDMzLjlzMjQuNiA5LjQgMzMuOSAwbDQ3LTQ3IDQ3IDQ3YzkuNCA5LjQgMjQuNiA5LjQgMzMuOSAwczkuNC0yNC42IDAtMzMuOWwtNDctNDcgNDctNDdjOS40LTkuNCA5LjQtMjQuNiAwLTMzLjlzLTI0LjYtOS40LTMzLjkgMGwtNDcgNDctNDctNDdjLTkuNC05LjQtMjQuNi05LjQtMzMuOSAweiJdfSxVdnI9TTJlLFd2cj1NMmUsR3ZyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFyY2h3YXkiLGljb246WzUxMiw1MTIsW10sImY1NTciLCJNMzIgMzJDMTQuMyAzMiAwIDQ2LjMgMCA2NFMxNC4zIDk2IDMyIDk2bDQ0OCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMyTDMyIDMyem0wIDM4NGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmwxMjggMCAwLTEyOGMwLTUzIDQzLTk2IDk2LTk2czk2IDQzIDk2IDk2bDAgMTI4IDEyOCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybDAtMjcyLTQ0OCAwIDAgMjcyeiJdfSxqTGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGVyc29uLWRpZ2dpbmciLGljb246WzU3Niw1MTIsWyJkaWdnaW5nIl0sImY4NWUiLCJNMjA4IDQwYTU2IDU2IDAgMSAxIDExMiAwIDU2IDU2IDAgMSAxIC0xMTIgMHpNMTAuNSAxODEuM2M1LjktMTEuOSAyMC4zLTE2LjcgMzIuMi0xMC43bDI0LjYgMTIuMyAxMi4yLTIwLjRjMTguOS0zMS41IDUzLjItNTAuNSA4OS42LTUwLjUgNDYuMiAwIDg3LjcgMzAuNSAxMDAuNSA3NS40bDMyLjIgMTEyLjcgOTIuOSA0Ni40IDI1LjgtNDNjNS44LTkuNiAxNi4yLTE1LjUgMjcuNC0xNS41czIxLjcgNS45IDI3LjQgMTUuNWw5NiAxNjBjNS45IDkuOSA2LjEgMjIuMiAuNCAzMi4yUzU1NS41IDUxMiA1NDQgNTEybC0xOTIgMGMtMTEuNSAwLTIyLjItNi4yLTI3LjgtMTYuMnMtNS41LTIyLjMgLjQtMzIuMkwzNzAgMzg3LjggMjEuMyAyMTMuNWMtMTEuOS01LjktMTYuNy0yMC4zLTEwLjctMzIuMnpNOTQuMyAzMDcuNGwxMTIgNTZjMTAuOCA1LjQgMTcuNyAxNi41IDE3LjcgMjguNmwwIDg4YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtNjguMi02MS4zLTMwLjctMzYuMyAxMDljLTUuNiAxNi44LTIzLjcgMjUuOC00MC41IDIwLjJTLTMuOSA0ODYuNiAxLjcgNDY5LjlsNDgtMTQ0YzIuOS04LjggOS41LTE1LjkgMTguMS0xOS40czE4LjMtMy4yIDI2LjYgLjl6Il19LFl2cj1qTGUsazJlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImdhdWdlLWhpZ2giLGljb246WzUxMiw1MTIsWzYyNDYxLCJ0YWNob21ldGVyLWFsdCIsInRhY2hvbWV0ZXItYWx0LWZhc3QiXSwiZjYyNSIsIk0wIDI1NmEyNTYgMjU2IDAgMSAxIDUxMiAwIDI1NiAyNTYgMCAxIDEgLTUxMiAwek0yODggOTZhMzIgMzIgMCAxIDAgLTY0IDAgMzIgMzIgMCAxIDAgNjQgMHpNMjU2IDQxNmMzNS4zIDAgNjQtMjguNyA2NC02NCAwLTE2LjItNi0zMS4xLTE2LTQyLjNsNjkuNS0xMzguOWM1LjktMTEuOSAxLjEtMjYuMy0xMC43LTMyLjJzLTI2LjMtMS4xLTMyLjIgMTAuN0wyNjEuMSAyODguMmMtMS43LS4xLTMuNC0uMi01LjEtLjItMzUuMyAwLTY0IDI4LjctNjQgNjRzMjguNyA2NCA2NCA2NHpNMTc2IDE0NGEzMiAzMiAwIDEgMCAtNjQgMCAzMiAzMiAwIDEgMCA2NCAwek05NiAyODhhMzIgMzIgMCAxIDAgMC02NCAzMiAzMiAwIDEgMCAwIDY0em0zNTItMzJhMzIgMzIgMCAxIDAgLTY0IDAgMzIgMzIgMCAxIDAgNjQgMHoiXX0sWnZyPWsyZSxYdnI9azJlLFF2cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJnZW5kZXJsZXNzIixpY29uOlszODQsNTEyLFtdLCJmMjJkIiwiTTE5MiAxMjhhMTI4IDEyOCAwIDEgMSAwIDI1NiAxMjggMTI4IDAgMSAxIDAtMjU2em0wIDMyMGExOTIgMTkyIDAgMSAwIDAtMzg0IDE5MiAxOTIgMCAxIDAgMCAzODR6Il19LEt2cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjbG91ZC1zdW4iLGljb246WzY0MCw1MTIsWzk5MjVdLCJmNmM0IiwiTTIwOC4zIDE5MmM0My4xIDAgODAuNSAyNC40IDk5LjIgNjAuMSAxNC43LTE3LjIgMzYuNC0yOC4xIDYwLjgtMjguMSA0NC4yIDAgODAgMzUuOCA4MCA4MCAwIDUuNS0uNiAxMC45LTEuNiAxNiAuNSAwIDEuMSAwIDEuNiAwIDUzIDAgOTYgNDMgOTYgOTZzLTQzIDk2LTk2IDk2bC0zMjAgMGMtNTMgMC05Ni00My05Ni05NiAwLTQyLjUgMjcuNy03OC41IDY2LTkxLjItMS4zLTYuOC0yLTEzLjctMi0yMC44IDAtNjEuOSA1MC4xLTExMiAxMTItMTEyem0xOTItMjIzLjhjNS4zIDAgMTAuMyAyLjcgMTMuMyA3LjFsNDcuMyA3MC40IDgzLjMtMTYuM2M1LjItMSAxMC42IC43IDE0LjMgNC40IDMuOCAzLjggNS40IDkuMiA0LjQgMTQuNGwtMTYuMyA4My4zIDcwLjQgNDcuM2M0LjQgMyA3LjEgOCA3LjEgMTMuMyAwIDUuMy0yLjYgMTAuMy03IDEzLjJsLTcwLjQgNDcuMyAxNC41IDc0LjJjLTE3LjItMjEuNy00MC40LTM4LjQtNjcuMi00Ny4zLTIuNS0xMi43LTYuOS0yNC42LTEyLjgtMzUuNyA5LjYtMTQuOSAxNS4yLTMyLjcgMTUuMi01MS43IDAtNTMtNDMtOTYtOTYtOTYtNDcuOSAwLTg3LjYgMzUuMS05NC44IDgwLjktMjAuOS0xNi00NS45LTI3LTczLjEtMzEuMWwyMS41LTE0LjUtMTYuMy04My4yLS4zLTJjLS4zLTQuNiAxLjMtOS4xIDQuNi0xMi40IDMuOC0zLjggOS4yLTUuNCAxNC40LTQuNGw4My4zIDE2LjMgNDcuMy03MC40IDEuMi0xLjZjMy0zLjUgNy40LTUuNSAxMi4xLTUuNXptMCAxNzUuOGMyNi41IDAgNDggMjEuNSA0OCA0OCAwIDMuOC0uNSA3LjYtMS40IDExLjEtMjEuNy0xNi45LTQ4LjktMjcuMS03OC42LTI3LjEtNC42IDAtOS4xIC4yLTEzLjUgLjcgNi40LTE5IDI0LjMtMzIuNyA0NS41LTMyLjd6Il19LHVsZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJhcnJvdy1yaWdodCIsaWNvbjpbNTEyLDUxMixbODU5NF0sImYwNjEiLCJNNTAyLjYgMjc4LjZjMTIuNS0xMi41IDEyLjUtMzIuOCAwLTQ1LjNsLTE2MC0xNjBjLTEyLjUtMTIuNS0zMi44LTEyLjUtNDUuMyAwcy0xMi41IDMyLjggMCA0NS4zTDQwMi43IDIyNCAzMiAyMjRjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsMzcwLjcgMC0xMDUuNCAxMDUuNGMtMTIuNSAxMi41LTEyLjUgMzIuOCAwIDQ1LjNzMzIuOCAxMi41IDQ1LjMgMGwxNjAtMTYweiJdfSxTMmU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaGFuZHNoYWtlIixpY29uOls1NzYsNTEyLFsxMjkzMDksNjI2NjIsImhhbmRzaGFrZS1hbHQiLCJoYW5kc2hha2Utc2ltcGxlIl0sImYyYjUiLCJNMjY4LjkgODUuMkwxNTIuMyAyMTQuOGMtNC42IDUuMS00LjQgMTMgLjUgMTcuOSAzMC41IDMwLjUgODAgMzAuNSAxMTAuNSAwbDMxLjgtMzEuOGM0LjItNC4yIDkuNS02LjUgMTQuOS02LjkgNi44LS42IDEzLjggMS43IDE5IDYuOUw1MDUuNiAzNzYgNTc2IDMyMCA1NzYgMzIgNDY0IDk2IDQ0MC4yIDgwLjFDNDI0LjQgNjkuNiA0MDUuOSA2NCAzODYuOSA2NGwtNzAuNCAwYy0xLjEgMC0yLjMgMC0zLjQgLjEtMTYuOSAuOS0zMi44IDguNS00NC4yIDIxLjF6TTExNi42IDE4Mi43TDIyMy40IDY0IDE4My44IDY0Yy0yNS41IDAtNDkuOSAxMC4xLTY3LjkgMjguMUwxMTIgOTYgMCAzMiAwIDMyMCAxNTYuNCA0NTAuM2MyMyAxOS4yIDUyIDI5LjcgODEuOSAyOS43bDE1LjcgMC03LTdjLTkuNC05LjQtOS40LTI0LjYgMC0zMy45czI0LjYtOS40IDMzLjkgMGw0MSA0MSA5IDBjMTkuMSAwIDM3LjgtNC4zIDU0LjgtMTIuM0wzNTkgNDQxYy05LjQtOS40LTkuNC0yNC42IDAtMzMuOXMyNC42LTkuNCAzMy45IDBsMzIgMzIgMTcuNS0xNy41YzguOS04LjkgMTEuNS0yMS44IDcuNi0zMy4xbC0xMzcuOS0xMzYuOC0xNC45IDE0LjljLTQ5LjMgNDkuMy0xMjkuMSA0OS4zLTE3OC40IDAtMjMtMjMtMjMuOS01OS45LTIuMi04NHoiXX0sSnZyPVMyZSxleXI9UzJlLFZMZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwZXJzb24tc2tpaW5nIixpY29uOls1NzYsNTEyLFs5OTc1LCJza2lpbmciXSwiZjdjOSIsIk00MTYgNTZhNTYgNTYgMCAxIDEgMTEyIDAgNTYgNTYgMCAxIDEgLTExMiAwek0yLjcgMzAwLjljNi4xLTExLjggMjAuNi0xNi4zIDMyLjQtMTAuMmwxOTcuOCAxMDIuNyA2Mi4zLTg3LjItODItOTIuMmMtMTEtMTIuNC0xNi4yLTI3LjUtMTYuMi00Mi40bDExMS42IDUzLjQgNDIuOSA0OC4yYzE0LjkgMTYuNyAxNi4yIDQxLjYgMy4yIDU5LjhsLTY0LjQgOTAuMiAxMjguMyA2Ni42YzEzLjYgNy4xIDI5LjggNy4yIDQzLjYgLjNsMTUuMi03LjZjMTEuOS01LjkgMjYuMy0xLjEgMzIuMiAxMC43czEuMSAyNi4zLTEwLjcgMzIuMmwtMTUuMiA3LjZjLTI3LjUgMTMuNy01OS45IDEzLjUtODcuMi0uN0wxMi45IDMzMy4zQzEuMiAzMjcuMi0zLjQgMzEyLjcgMi43IDMwMC45ek0xMDMgNDkuNmwxOCA4LjcgOC43LTE3LjRjNC03LjkgMTMuNi0xMS4xIDIxLjUtNy4yczExLjEgMTMuNiA3LjIgMjEuNWwtOC41IDE3IDg0LjggNDEgLjQtLjIgNzYuMS0zMy44YzMxLjMtMTMuOSA2Ny45LS43IDgzLjIgMjkuOWwyOC45IDU3LjggNjguNyAyNy41YzE2LjQgNi42IDI0LjQgMjUuMiAxNy44IDQxLjZzLTI1LjIgMjQuNC00MS42IDE3LjhMMzkzLjggMjI0Yy0xMC45LTQuNC0xOS44LTEyLjYtMjUuMS0yMy4xbC0xMS41LTIzLjFjLTE2LjQgOS40LTI1LjkgMTQuOC0yOC41IDE2LjNsLTcuNi0zLjctMTg1LjYtODkuNi05LjIgMTguM2MtNCA3LjktMTMuNiAxMS4xLTIxLjUgNy4ycy0xMS4xLTEzLjYtNy4yLTIxLjVsOS0xNy45LTE3LjYtOC41QzgxLjEgNzQuNiA3Ny44IDY1IDgxLjYgNTdTOTUgNDUuNyAxMDMgNDkuNnoiXX0sdHlyPVZMZSxyeXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYnJpZGdlLXdhdGVyIixpY29uOls2NDAsNTEyLFtdLCJlNGNlIiwiTTY0IDY0bDUxMiAwIDAgMTEyYy0zNy42IDkuNC02NCA0My4yLTY0IDgybDAgNzYuNGMtMjEtOS43LTQzLjUtMTQuNS02Ni0xNC40LTEwIC4xLTIwLjEgMS4xLTMwIDMuMWwwLTM1LjFjMC01My00My05Ni05Ni05NnMtOTYgNDMtOTYgOTZsMCAzMi43Yy01LjMtLjUtMTAuNy0uOC0xNi0uNy0yNy43IC4yLTU1LjQgNy44LTgwIDIzbDAtODVjMC0zOC44LTI2LjQtNzIuNi02NC04Mkw2NCA2NHpNNDAzLjQgNDQ0LjFDMzc5LjEgNDYyLjMgMzUxLjEgNDgwIDMyMCA0ODBzLTU5LjEtMTcuNy04My40LTM1LjljLTIxLjMtMTYuMS00OS45LTE2LjEtNzEuMiAwLTIzLjggMTcuOS01NC4xIDM1LjUtODguMSAzNS4zLTIwLjQtLjEtNDAuNy02LjctNTkuOC0yMS4xLTEwLjYtOC0xMi43LTIzLTQuNy0zMy42czIzLTEyLjcgMzMuNi00LjdjMTEuMyA4LjUgMjEuNiAxMS40IDMxLjIgMTEuNSAxNy42IC4xIDM3LjMtOS40IDU4LjktMjUuNyAzOC40LTI5IDkwLjUtMjkgMTI5IDAgMjQgMTguMSA0MC43IDI2LjMgNTQuNSAyNi4zczMwLjUtOC4yIDU0LjUtMjYuM2MzOC40LTI5IDkwLjUtMjkgMTI5IDAgMTYuOSAxMi43IDMyLjkgMjEuNSA0Ny44IDI0LjYgMTMuNyAyLjggMjcuNCAuOSA0Mi4zLTEwLjMgMTAuNi04IDI1LjYtNS45IDMzLjYgNC43czUuOSAyNS42LTQuNyAzMy42Yy0yNi40IDE5LjktNTQuMiAyNC40LTgwLjcgMTkuMS0yNS4zLTUuMS00OC4xLTE4LjktNjcuMi0zMy4zLTIxLjMtMTYuMS00OS45LTE2LjEtNzEuMiAweiJdfSxheXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYnVpbGRpbmctbmdvIixpY29uOls1NzYsNTEyLFtdLCJlNGQ3IiwiTTEyOCAwQzkyLjcgMCA2NCAyOC43IDY0IDY0bDAgMzg0YzAgMzUuMyAyOC43IDY0IDY0IDY0bDQ4IDAgMC0xMTJjMC0zNS4zIDI4LjctNjQgNjQtNjRsMjA4IDAgMC0yNzJjMC0zNS4zLTI4LjctNjQtNjQtNjRMMTI4IDB6bTMyIDExMmMwLTguOCA3LjItMTYgMTYtMTZsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyek0zMDQgOTZsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyYzAtOC44IDcuMi0xNiAxNi0xNnpNMTYwIDI0MGMwLTguOCA3LjItMTYgMTYtMTZsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyem0xNDQtMTZsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyYzAtOC44IDcuMi0xNiAxNi0xNnpNNTIwIDM4MGMtMjQuMyAwLTQ0IDE5LjctNDQgNDRsMCA4MGMwIDI0LjMgMTkuNyA0NCA0NCA0NGwxNiAwYzI0LjMgMCA0NC0xOS43IDQ0LTQ0bDAtODBjMC0yNC4zLTE5LjctNDQtNDQtNDRsLTE2IDB6bS00IDQ0YzAtMi4yIDEuOC00IDQtNGwxNiAwYzIuMiAwIDQgMS44IDQgNGwwIDgwYzAgMi4yLTEuOCA0LTQgNGwtMTYgMGMtMi4yIDAtNC0xLjgtNC00bDAtODB6bS0xNjggMGwwIDgwYzAgMjQuMyAxOS43IDQ0IDQ0IDQ0bDE2IDBjMjQuMyAwIDQ0LTE5LjcgNDQtNDRsMC0yNGMwLTExLTktMjAtMjAtMjBsLTggMGMtMTEgMC0yMCA5LTIwIDIwIDAgNi41IDMuMSAxMi40IDggMTZsMCA4YzAgMi4yLTEuOCA0LTQgNGwtMTYgMGMtMi4yIDAtNC0xLjgtNC00bDAtODBjMC0yLjIgMS44LTQgNC00bDIwLjQgMGMxLjkgOS4xIDkuOSAxNiAxOS42IDE2IDExIDAgMjAtOSAyMC0yMCAwLTE5LjktMTYuMS0zNi0zNi0zNmwtMjQgMGMtMjQuMyAwLTQ0IDE5LjctNDQgNDR6bS05MC4xLTMyLjljLTQuMS04LjMtMTMuNS0xMi43LTIyLjUtMTAuNVMyMjAgMzkwLjcgMjIwIDQwMGwwIDEyOGMwIDExIDkgMjAgMjAgMjBzMjAtOSAyMC0yMGwwLTQzLjMgMjYuMSA1Mi4yYzQuMSA4LjMgMTMuNSAxMi43IDIyLjUgMTAuNVMzMjQgNTM3LjMgMzI0IDUyOGwwLTEyOGMwLTExLTktMjAtMjAtMjBzLTIwIDktMjAgMjBsMCA0My4zLTI2LjEtNTIuMnoiXX0saXlyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImlnbG9vIixpY29uOls1NzYsNTEyLFtdLCJmN2FlIiwiTTMyMCAzMy44bDAgMTI2LjItMjcxLjUgMGM1MS43LTc3LjIgMTM5LjYtMTI4IDIzOS41LTEyOCAxMC44IDAgMjEuNSAuNiAzMiAxLjh6TTM2OCAxNjBsMC0xMTYuN2M2NiAxOSAxMjIuMiA2MSAxNTkuNSAxMTYuN0wzNjggMTYwek0yMi42IDIwOGw3My40IDAgMCAxMTItOTYgMGMwLTM5LjcgOC03Ny42IDIyLjYtMTEyek0xNzYgMzIwbC0zMiAwIDAtMTEyIDI4OCAwIDAgMTEyLTMyIDAgMCA0OCAxNzYgMCAwIDY0YzAgMjYuNS0yMS41IDQ4LTQ4IDQ4TDQ4IDQ4MGMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhsMC02NCAxNzYgMCAwLTQ4em0zMDQgMGwwLTExMiA3My40IDBDNTY4IDI0Mi40IDU3NiAyODAuMyA1NzYgMzIwbC05NiAwek0yODggMjg4Yy0zNS4zIDAtNjQgMjguNy02NCA2NGwwIDgwIDEyOCAwIDAtODBjMC0zNS4zLTI4LjctNjQtNjQtNjR6Il19LFVMZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjaXJjbGUtZG9sbGFyLXRvLXNsb3QiLGljb246WzU3Niw1MTIsWyJkb25hdGUiXSwiZjRiOSIsIk05NiAyMjRhMTkyIDE5MiAwIDEgMSAzODQgMCAxOTIgMTkyIDAgMSAxIC0zODQgMHptMTc2LTkybDAgNGMtMjguOCAuMy01MiAyMy43LTUyIDUyLjUgMCAyNS43IDE4LjUgNDcuNiA0My45IDUxLjhsNDEuNyA3YzYgMSAxMC40IDYuMiAxMC40IDEyLjMgMCA2LjktNS42IDEyLjUtMTIuNSAxMi41TDI0OCAyNzJjLTExIDAtMjAgOS0yMCAyMHM5IDIwIDIwIDIwbDI0IDAgMCA0YzAgMTEgOSAyMCAyMCAyMHMyMC05IDIwLTIwbDAtNC43YzI1LTQuMSA0NC0yNS43IDQ0LTUxLjggMC0yNS43LTE4LjUtNDcuNi00My45LTUxLjhsLTQxLjctN2MtNi0xLTEwLjQtNi4yLTEwLjQtMTIuMyAwLTYuOSA1LjYtMTIuNSAxMi41LTEyLjVsNDcuNSAwYzExIDAgMjAtOSAyMC0yMHMtOS0yMC0yMC0yMGwtOCAwIDAtNGMwLTExLTktMjAtMjAtMjBzLTIwIDktMjAgMjB6TTQ4IDM0NGwwIDEwNGMwIDguOCA3LjIgMTYgMTYgMTZsNDQ4IDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMTA0YzAtMTMuMyAxMC43LTI0IDI0LTI0czI0IDEwLjcgMjQgMjRsMCAxMDRjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNTEyYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDM0NGMwLTEzLjMgMTAuNy0yNCAyNC0yNHMyNCAxMC43IDI0IDI0eiJdfSxveXI9VUxlLG55cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ5IixpY29uOlszODQsNTEyLFsxMjFdLCI1OSIsIk01OCA0NS40QzQ3LjggMzEgMjcuOCAyNy43IDEzLjQgMzhTLTQuMyA2OC4yIDYgODIuNkwxNjAgMjk4LjMgMTYwIDQ0OGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMTQ5LjcgMTU0LTIxNS43YzEwLjMtMTQuNCA2LjktMzQuNC03LjQtNDQuNlMzMzYuMiAzMSAzMjYgNDUuNEwxOTIgMjMyLjkgNTggNDUuNHoiXX0sV0xlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZhY2Utc21pbGUtd2luayIsaWNvbjpbNTEyLDUxMixbMTI4NTIxLCJzbWlsZS13aW5rIl0sImY0ZGEiLCJNMjU2IDUxMmEyNTYgMjU2IDAgMSAwIDAtNTEyIDI1NiAyNTYgMCAxIDAgMCA1MTJ6TTE2NS40IDMyMS45YzIwLjQgMjggNTMuNCA0Ni4xIDkwLjYgNDYuMXM3MC4yLTE4LjEgOTAuNi00Ni4xYzcuOC0xMC43IDIyLjgtMTMuMSAzMy41LTUuM3MxMy4xIDIyLjggNS4zIDMzLjVDMzU2LjMgMzkwIDMwOS4yIDQxNiAyNTYgNDE2cy0xMDAuMy0yNi0xMjkuNC02NS45Yy03LjgtMTAuNy01LjQtMjUuNyA1LjMtMzMuNXMyNS43LTUuNCAzMy41IDUuM3pNMTQ0IDIwOGEzMiAzMiAwIDEgMSA2NCAwIDMyIDMyIDAgMSAxIC02NCAwem0xNjQgOGMwIDExLTkgMjAtMjAgMjBzLTIwLTktMjAtMjBjMC0zMy4xIDI2LjktNjAgNjAtNjBsMTYgMGMzMy4xIDAgNjAgMjYuOSA2MCA2MCAwIDExLTkgMjAtMjAgMjBzLTIwLTktMjAtMjAtOS0yMC0yMC0yMGwtMTYgMGMtMTEgMC0yMCA5LTIwIDIweiJdfSxzeXI9V0xlLGx5cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJkaWNlLWZvdXIiLGljb246WzQ0OCw1MTIsWzk4NTldLCJmNTI0IiwiTTAgOTZDMCA2MC43IDI4LjcgMzIgNjQgMzJsMzIwIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAzMjBjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDk2em0xNjAgNjRhMzIgMzIgMCAxIDAgLTY0IDAgMzIgMzIgMCAxIDAgNjQgMHpNMTI4IDM4NGEzMiAzMiAwIDEgMCAwLTY0IDMyIDMyIDAgMSAwIDAgNjR6TTM1MiAxNjBhMzIgMzIgMCAxIDAgLTY0IDAgMzIgMzIgMCAxIDAgNjQgMHpNMzIwIDM4NGEzMiAzMiAwIDEgMCAwLTY0IDMyIDMyIDAgMSAwIDAgNjR6Il19LEdMZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmYWNlLWdyaW4tc3F1aW50LXRlYXJzIixpY29uOls1NzYsNTEyLFsxMjkzMTUsImdyaW4tc3F1aW50LXRlYXJzIl0sImY1ODYiLCJNNTYwIDM1LjRjMCAyNS42LTE4LjggNDcuMy00NC4xIDUwLjlMNDY5LjEgOTNjLTEwLjYgMS41LTE5LjYtNy41LTE4LjEtMTguMWw2LjctNDYuN0M0NjEuMyAyLjggNDgzLTE2IDUwOC42LTE2IDUzNy0xNiA1NjAgNyA1NjAgMzUuNHpNNDAzLjUgNjguMWMtNiA0Mi4yIDMwLjIgNzguNCA3Mi40IDcyLjRsMzcuOC01LjRDNTY1LjcgMjMyIDU1MC44IDM1NS4zIDQ2OSA0MzdzLTIwNSA5Ni42LTMwMS45IDQ0LjdsNS40LTM3LjhjNi00Mi4yLTMwLjItNzguNC03Mi40LTcyLjRsLTM3LjggNS40QzEwLjMgMjgwIDI1LjIgMTU2LjcgMTA3IDc1UzMxMi0yMS43IDQwOC45IDMwLjNsLTUuNCAzNy44ek00MTcuOCAyMDFjLTE5LjEgMzYuNC00NS42IDcyLjctNzguOSAxMDZzLTY5LjYgNTkuOC0xMDYgNzguOWMtMTEuMSA1LjgtMTIuNCAyMS40LTEuMSAyNi42IDU5LjIgMjcuNSAxMzEuOCAxNi44IDE4MC42LTMyczU5LjUtMTIxLjQgMzItMTgwLjZjLTUuMy0xMS4zLTIwLjgtMTAtMjYuNiAxLjF6TTExMy45IDI3MC42YzEuNyA4IDkgMTMuNCAxNy4xIDEyLjdsNDMuMS0zLjktMy45IDQzLjFjLS43IDguMSA0LjcgMTUuNSAxMi43IDE3LjFzMTUuOS0yLjkgMTguNC0xMC42bDI4LTg0LjZjMS45LTUuNyAuNC0xMi4xLTMuOS0xNi4zcy0xMC42LTUuOC0xNi4zLTMuOWwtODQuNiAyOGMtNy43IDIuNi0xMi4zIDEwLjUtMTAuNiAxOC41ek0zMTUuMiA5OS4xYy43LTguMS00LjctMTUuNS0xMi43LTE3LjFzLTE1LjkgMi45LTE4LjUgMTAuNmwtMjggODQuNmMtMS45IDUuNy0uNCAxMi4xIDMuOSAxNi4zczEwLjYgNS44IDE2LjMgMy45bDg0LjYtMjhjNy43LTIuNiAxMi4zLTEwLjUgMTAuNi0xOC40cy05LTEzLjQtMTcuMS0xMi43bC00My4xIDMuOSAzLjktNDMuMXpNNjAuMSA0MjUuN2w0Ni43LTYuN2MxMC42LTEuNSAxOS42IDcuNSAxOC4xIDE4LjFsLTYuNyA0Ni43QzExNC43IDUwOS4yIDkzIDUyOCA2Ny40IDUyOCAzOSA1MjggMTYgNTA1IDE2IDQ3Ni42IDE2IDQ1MSAzNC44IDQyOS4zIDYwLjEgNDI1Ljd6Il19LGN5cj1HTGUsZHlyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZpbGUtYXVkaW8iLGljb246WzM4NCw1MTIsW10sImYxYzciLCJNMCA2NEMwIDI4LjcgMjguNyAwIDY0IDBMMjEzLjUgMGMxNyAwIDMzLjMgNi43IDQ1LjMgMTguN0wzNjUuMyAxMjUuM2MxMiAxMiAxOC43IDI4LjMgMTguNyA0NS4zTDM4NCA0NDhjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNTEyYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDY0em0yMDgtNS41bDAgOTMuNWMwIDEzLjMgMTAuNyAyNCAyNCAyNEwzMjUuNSAxNzYgMjA4IDU4LjV6bTUzLjggMTg1LjJjLTkuMS02LjMtMjEuNS00LjEtMjcuOCA1cy00LjEgMjEuNSA1IDI3LjhjMjMuOSAxNi43IDM5LjQgNDQuMyAzOS40IDc1LjVzLTE1LjYgNTguOS0zOS40IDc1LjVjLTkuMSA2LjMtMTEuMyAxOC44LTUgMjcuOHMxOC44IDExLjMgMjcuOCA1YzM0LjEtMjMuOCA1Ni42LTYzLjUgNTYuNi0xMDguM1MyOTYgMjY3LjUgMjYxLjggMjQzLjd6TTgwIDMxMmMtOC44IDAtMTYgNy4yLTE2IDE2bDAgNDhjMCA4LjggNy4yIDE2IDE2IDE2bDI0IDAgMjcuMiAzNGMzIDMuOCA3LjYgNiAxMi41IDZsLjMgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0xMjhjMC04LjgtNy4yLTE2LTE2LTE2bC0uMyAwYy00LjkgMC05LjUgMi4yLTEyLjUgNmwtMjcuMiAzNC0yNCAwem0xMjggNzIuMmMwIDEwLjcgMTAuNSAxOC4yIDE4LjkgMTEuNiAxMi45LTEwLjMgMjEuMS0yNi4xIDIxLjEtNDMuOHMtOC4yLTMzLjUtMjEuMS00My44Yy04LjQtNi43LTE4LjkgLjktMTguOSAxMS42bDAgNjQuNXoiXX0sdXlyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFycm93cy1kb3duLXRvLWxpbmUiLGljb246WzUxMiw1MTIsW10sImU0YjgiLCJNMjE0LjYgMzEwLjZsLTY0IDY0Yy0xMi41IDEyLjUtMzIuOCAxMi41LTQ1LjMgMGwtNjQtNjRjLTEyLjUtMTIuNS0xMi41LTMyLjggMC00NS4zczMyLjgtMTIuNSA0NS4zIDBMOTYgMjc0LjcgOTYgMzJjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDI0Mi43IDkuNC05LjRjMTIuNS0xMi41IDMyLjgtMTIuNSA0NS4zIDBzMTIuNSAzMi44IDAgNDUuM3ptMjU2IDBsLTY0IDY0Yy0xMi41IDEyLjUtMzIuOCAxMi41LTQ1LjMgMGwtNjQtNjRjLTEyLjUtMTIuNS0xMi41LTMyLjggMC00NS4zczMyLjgtMTIuNSA0NS4zIDBsOS40IDkuNCAwLTI0Mi43YzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJsMCAyNDIuNyA5LjQtOS40YzEyLjUtMTIuNSAzMi44LTEyLjUgNDUuMyAwczEyLjUgMzIuOCAwIDQ1LjN6TTMyIDUxMmMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMmw0NDggMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMkwzMiA1MTJ6Il19LGZ5cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJnIixpY29uOls0NDgsNTEyLFsxMDNdLCI0NyIsIk0yMjQgOTZDMTM1LjYgOTYgNjQgMTY3LjYgNjQgMjU2czcxLjYgMTYwIDE2MCAxNjBjNzcuNCAwIDE0Mi01NSAxNTYuOC0xMjhMMjU2IDI4OGMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMmwxNDQgMGMyNS44IDAgNDkuNiAyMS40IDQ3LjIgNTAuNi05LjUgMTE1LTEwNS44IDIwNS40LTIyMy4yIDIwNS40LTEyMy43IDAtMjI0LTEwMC4zLTIyNC0yMjRTMTAwLjMgMzIgMjI0IDMyYzU3LjQgMCAxMDkuNyAyMS42IDE0OS4zIDU3IDEzLjIgMTEuOCAxNC4zIDMyIDIuNSA0NS4ycy0zMiAxNC4zLTQ1LjIgMi41QzMwMi4zIDExMS40IDI2NSA5NiAyMjQgOTZ6Il19LHB5cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ2aWhhcmEiLGljb246WzU3Niw1MTIsW10sImY2YTciLCJNMjczLjYtMy4yYzguNS02LjQgMjAuMy02LjQgMjguOCAwTDQ0My4yIDEwMi40YzguMyA2LjIgMTguNCA5LjYgMjguOCA5LjYgMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTI0IDAgMCA0OCA1OC43IDY0IDEzLjMgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtOCAwIDAgNDggMjQuNCAzMiAxNS42IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTQwIDAgMCAzMmMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTMyLTEyOCAwIDAgMzJjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC0zMi0xMjggMCAwIDMyYzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMzItNDAgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNGwyMi4xIDAgMTcuOS0zMiAwLTQ4LTggMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNGwxMy4zIDAgNTguNy02NCAwLTQ4LTI0IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjRjMTAuNCAwIDIwLjUtMy40IDI4LjgtOS42TDI3My42LTMuMnpNMTI4IDM2OGwzMjAgMCAwLTQ4LTMyMCAwIDAgNDh6TTM4NCAxNjBsLTE5MiAwIDAgNDggMTkyIDAgMC00OHoiXX0saHlyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZsYWctY2hlY2tlcmVkIixpY29uOls0NDgsNTEyLFsxMjc5MzddLCJmMTFlIiwiTTMyIDBDNDkuNyAwIDY0IDE0LjMgNjQgMzJsMCAxNiA2OS0xNy4yYzM4LjEtOS41IDc4LjMtNS4xIDExMy41IDEyLjUgNDYuMyAyMy4yIDEwMC44IDIzLjIgMTQ3LjEgMGw5LjYtNC44QzQyMy44IDI4LjEgNDQ4IDQzLjEgNDQ4IDY2LjFsMCAyNzkuN2MwIDEzLjMtOC4zIDI1LjMtMjAuOCAzMGwtMzQuNyAxM2MtNDYuMiAxNy4zLTk3LjYgMTQuNi0xNDEuNy03LjQtMzcuOS0xOS04MS40LTIzLjctMTIyLjUtMTMuNEw2NCAzODQgNjQgNDgwYzAgMTcuNy0xNC4zIDMyLTMyIDMyUzAgNDk3LjcgMCA0ODBMMCAzMkMwIDE0LjMgMTQuMyAwIDMyIDB6TTY0IDE4Ny4xbDY0LTEzLjkgMCA2NS41LTY0IDEzLjkgMCA2NS41IDQ4LjgtMTIuMmM1LjEtMS4zIDEwLjEtMi40IDE1LjItMy4zbDAtNjMuOSAzOC45LTguNGM4LjMtMS44IDE2LjctMi41IDI1LjEtMi4xbDAtNjRjMTMuNiAuNCAyNy4yIDIuNiA0MC40IDYuNGwyMy42IDYuOSAwIDY2LjctNDEuNy0xMi4zYy03LjMtMi4xLTE0LjgtMy40LTIyLjMtMy44bDAgNzEuNGMyMS44IDEuOSA0My4zIDYuNyA2NCAxNC40bDAtNjkuOCAyMi43IDYuN2MxMy41IDQgMjcuMyA2LjQgNDEuMyA3LjRsMC02NC4yYy03LjgtLjgtMTUuNi0yLjMtMjMuMi00LjVsLTQwLjgtMTIgMC02MmMtMTMtMy44LTI1LjgtOC44LTM4LjItMTUtOC4yLTQuMS0xNi45LTctMjUuOC04LjhsMCA3Mi40Yy0xMy0uNC0yNiAuOC0zOC43IDMuNmwtMjUuMyA1LjUgMC03NS4yLTY0IDE2IDAgNzMuMXpNMzIwIDMzNS43YzE2LjggMS41IDMzLjktLjcgNTAtNi44bDE0LTUuMiAwLTcxLjctNy45IDEuOGMtMTguNCA0LjMtMzcuMyA1LjctNTYuMSA0LjVsMCA3Ny40em02NC0xNDkuNGwwLTcwLjhjLTIwLjkgNi4xLTQyLjQgOS4xLTY0IDkuMWwwIDY5LjRjMTMuOSAxLjQgMjggLjUgNDEuNy0yLjZsMjIuMy01LjJ6Il19LHoyZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJnYXVnZS1zaW1wbGUiLGljb246WzUxMiw1MTIsWyJnYXVnZS1zaW1wbGUtbWVkIiwidGFjaG9tZXRlci1hdmVyYWdlIl0sImY2MjkiLCJNMCAyNTZhMjU2IDI1NiAwIDEgMSA1MTIgMCAyNTYgMjU2IDAgMSAxIC01MTIgMHptMzIwIDk2YzAtMjYuOS0xNi41LTQ5LjktNDAtNTkuM0wyODAgMTIwYzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0bDAgMTcyLjdjLTIzLjUgOS41LTQwIDMyLjUtNDAgNTkuMyAwIDM1LjMgMjguNyA2NCA2NCA2NHM2NC0yOC43IDY0LTY0eiJdfSxteXI9ejJlLGd5cj16MmUsWUxlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InJpZ2h0LWxlZnQiLGljb246WzUxMiw1MTIsWyJleGNoYW5nZS1hbHQiXSwiZjM2MiIsIk01MDIuNiAxNTAuNmwtOTYgOTZjLTkuMiA5LjItMjIuOSAxMS45LTM0LjkgNi45UzM1MiAyMzYuOSAzNTIgMjI0bDAtNjQtMzIwIDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyUzE0LjMgOTYgMzIgOTZsMzIwIDAgMC02NGMwLTEyLjkgNy44LTI0LjYgMTkuOC0yOS42czI1LjctMi4yIDM0LjkgNi45bDk2IDk2YzEyLjUgMTIuNSAxMi41IDMyLjggMCA0NS4zem0tMzk3LjMgMzUybC05Ni05NmMtMTIuNS0xMi41LTEyLjUtMzIuOCAwLTQ1LjNsOTYtOTZjOS4yLTkuMiAyMi45LTExLjkgMzQuOS02LjlTMTYwIDI3NS4xIDE2MCAyODhsMCA2NCAzMjAgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtMzIwIDAgMCA2NGMwIDEyLjktNy44IDI0LjYtMTkuOCAyOS42cy0yNS43IDIuMi0zNC45LTYuOXoiXX0seHlyPVlMZSxieXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGlsbHMiLGljb246WzUxMiw1MTIsW10sImY0ODQiLCJNNjQgMTEyYzAtMjYuNSAyMS41LTQ4IDQ4LTQ4czQ4IDIxLjUgNDggNDhsMCAxMTItOTYgMCAwLTExMnpNMTc2IDM2OGMwLTQ4LjcgMTguMS05My4yIDQ4LTEyN2wwLTEyOUMyMjQgNTAuMSAxNzMuOSAwIDExMiAwUzAgNTAuMSAwIDExMkwwIDQwMGMwIDYxLjkgNTAuMSAxMTIgMTEyIDExMiAzNy4zIDAgNzAuMy0xOC4yIDkwLjctNDYuMy0xNy0yOC42LTI2LjctNjItMjYuNy05Ny43em02NC43IDY3LjRjNC42IDguNyAxNi4zIDkuNyAyMy4zIDIuN0w0MzguMSAyNjRjNy03IDYtMTguNy0yLjctMjMuMy0yMC4xLTEwLjctNDMtMTYuNy02Ny40LTE2LjctNzkuNSAwLTE0NCA2NC41LTE0NCAxNDQgMCAyNC4zIDYgNDcuMyAxNi43IDY3LjR6TTI5Ny45IDQ3MmMtNyA3LTYgMTguNyAyLjcgMjMuMyAyMC4xIDEwLjcgNDMgMTYuNyA2Ny40IDE2LjcgNzkuNSAwIDE0NC02NC41IDE0NC0xNDQgMC0yNC4zLTYtNDcuMy0xNi43LTY3LjQtNC42LTguNy0xNi4zLTkuNy0yMy4zLTIuN0wyOTcuOSA0NzJ6Il19LHZ5cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJleHBsb3Npb24iLGljb246WzUxMiw1MTIsW10sImU0ZTkiLCJNMjU2LTMyYzEzLjMgMCAyNCAxMC43IDI0IDI0bDAgNDhjMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjRsMC00OGMwLTEzLjMgMTAuNy0yNCAyNC0yNHptMCAxNjBjMTIuNCAwIDIyLjcgOS40IDIzLjkgMjEuN0wyOTMuNCAyOTEuNiA0NjcuNiAxMS4zYzYuNy0xMC43IDIwLjUtMTQuNSAzMS43LTguNXMxNS44IDE5LjUgMTAuNiAzMUwzNzIuOCAzMzguNmMyLjIgMi4zIDQuMyA0LjcgNi4zIDcuMWw5Ny4yLTU0LjdjMTAuNS01LjkgMjMuNi0zLjEgMzAuOSA2LjRzNi4zIDIzLTIuMiAzMS41bC04NyA4Ny03MS40IDBjLTEzLjItMzcuMy00OC43LTY0LTkwLjUtNjRzLTc3LjQgMjYuNy05MC41IDY0bC03OS42IDAtNzUuNS01Mi4zQy42IDM1Ny0yLjggMzQ0LjEgMi40IDMzMy41czE3LjQtMTUuOSAyOC43LTEyLjRsOTcuMiAzMC40YzMtMy45IDYuMS03LjYgOS40LTExLjNMNzUuNCAyMzYuM2MtNi4xLTEwLjEtMy45LTIzLjEgNS4xLTMwLjdzMjIuMi03LjUgMzEuMSAuMUwyMTQgMjkzLjZjMS41LS40IDMtLjggNC41LTEuMWwxMy42LTE0Mi43YzEuMi0xMi4zIDExLjUtMjEuNyAyMy45LTIxLjd6TTMyIDQ2NGw0NTYgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNEwyNCA1MTJjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjRsOCAweiJdfSx5eXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYXJyb3dzLWRvd24tdG8tcGVvcGxlIixpY29uOls1MTIsNTEyLFtdLCJlNGI5IiwiTTExMyAxNTNjLTkuNCA5LjQtMjQuNiA5LjQtMzMuOSAwTDE1IDg5QzUuNyA3OS42IDUuNyA2NC40IDE1IDU1UzM5LjYgNDUuNyA0OSA1NUw3MiA3OC4xIDcyLThjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNGwwIDg2LjEgMjMtMjNjOS40LTkuNCAyNC42LTkuNCAzMy45IDBzOS40IDI0LjYgMCAzMy45bC02NCA2NHptMzIwIDBjLTkuNCA5LjQtMjQuNiA5LjQtMzMuOSAwTDMzNSA4OWMtOS40LTkuNC05LjQtMjQuNiAwLTMzLjlzMjQuNi05LjQgMzMuOSAwbDIzIDIzIDAtODYuMWMwLTEzLjMgMTAuNy0yNCAyNC0yNHMyNCAxMC43IDI0IDI0bDAgODYuMSAyMy0yM2M5LjQtOS40IDI0LjYtOS40IDMzLjkgMHM5LjQgMjQuNiAwIDMzLjlsLTY0IDY0ek0yNTYgMTkyYTU2IDU2IDAgMSAxIDAgMTEyIDU2IDU2IDAgMSAxIDAtMTEyem0wIDE2MGM1MyAwIDk2IDQzIDk2IDk2bDAgMzJjMCAxNy43LTE0LjMgMzItMzIgMzJsLTEyOCAwYy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTMyYzAtNTMgNDMtOTYgOTYtOTZ6TTMyIDI4OGE0OCA0OCAwIDEgMSA5NiAwIDQ4IDQ4IDAgMSAxIC05NiAwem0zNTIgMGE0OCA0OCAwIDEgMSA5NiAwIDQ4IDQ4IDAgMSAxIC05NiAwek04MCAzNjhjMTUuMyAwIDI5LjYgNC4zIDQxLjggMTEuOC02LjMgMTYuMi05LjggMzMuOC05LjggNTIuMmwwIDQ4YzAgMTEuNCAyLjQgMjIuMiA2LjcgMzJsLTg3LjggMEMxMy44IDUxMiAwIDQ5OC4yIDAgNDgxLjFMMCA0NDhjMC00NC4yIDM1LjgtODAgODAtODB6TTM5My4zIDUxMmM0LjMtOS44IDYuNy0yMC42IDYuNy0zMmwwLTQ4YzAtMTguNC0zLjUtMzYtOS44LTUyLjIgMTIuMi03LjUgMjYuNS0xMS44IDQxLjgtMTEuOCA0NC4yIDAgODAgMzUuOCA4MCA4MGwwIDMzLjFjMCAxNy0xMy44IDMwLjktMzAuOSAzMC45bC04Ny44IDB6Il19LHd5cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ1c2Vycy12aWV3ZmluZGVyIixpY29uOls1NzYsNTEyLFtdLCJlNTk1IiwiTTY0IDBDMjguNyAwIDAgMjguNyAwIDY0bDAgNzJjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTcyYzAtOC44IDcuMi0xNiAxNi0xNmw3MiAwYzEzLjMgMCAyNC0xMC43IDI0LTI0UzE0OS4zIDAgMTM2IDBMNjQgMHpNNDQwIDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsNzIgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCA3MmMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtNzJjMC0zNS4zLTI4LjctNjQtNjQtNjRMNDQwIDB6TTQ4IDM3NmMwLTEzLjMtMTAuNy0yNC0yNC0yNFMwIDM2Mi43IDAgMzc2bDAgNzJjMCAzNS4zIDI4LjcgNjQgNjQgNjRsNzIgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtNzIgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtNzJ6bTUyOCAwYzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0bDAgNzJjMCA4LjgtNy4yIDE2LTE2IDE2bC03MiAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDcyIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC03MnpNMjg4IDIxNmE1NiA1NiAwIDEgMCAwLTExMiA1NiA1NiAwIDEgMCAwIDExMnptMCA0MGMtNTMgMC05NiA0My05NiA5NmwwIDI0YzAgMTMuMyAxMC43IDI0IDI0IDI0bDE0NCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0bDAtMjRjMC01My00My05Ni05Ni05NnptMTkyLTY0YTQ4IDQ4IDAgMSAwIC05NiAwIDQ4IDQ4IDAgMSAwIDk2IDB6TTE2OCAyNzIuM2MtNDkuMyA0LjEtODggNDUuMy04OCA5NS43bDAgMTAuN2MwIDExLjggOS42IDIxLjMgMjEuMyAyMS4zbDQ2LjggMGMtMi43LTcuNS00LjEtMTUuNi00LjEtMjRsMC0yNGMwLTI5LjUgOC44LTU2LjkgMjQtNzkuN3pNNDI3LjkgNDAwbDQ2LjggMGMxMS44IDAgMjEuMy05LjYgMjEuMy0yMS4zbDAtMTAuN2MwLTUwLjMtMzguNy05MS42LTg4LTk1LjcgMTUuMiAyMi44IDI0IDUwLjIgMjQgNzkuN2wwIDI0YzAgOC40LTEuNCAxNi41LTQuMSAyNHpNMTkyIDE5MmE0OCA0OCAwIDEgMCAtOTYgMCA0OCA0OCAwIDEgMCA5NiAweiJdfSxNeXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2FyLW9uIixpY29uOls0NDgsNTEyLFtdLCJlNGRkIiwiTTI0OC04YzAtMTMuMy0xMC43LTI0LTI0LTI0UzIwMC0yMS4zIDIwMC04bDAgNjRjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTY0ek0xNDUuMyAyMDhsMTU3LjUgMGM2LjcgMCAxMi42IDQuMSAxNSAxMC40bDI2LjEgNjkuNi0yMzkuNiAwIDI2LjEtNjkuNmMyLjMtNi4yIDguMy0xMC40IDE1LTEwLjR6TTM0IDI5Mi44bC0xLjMgMy40QzEzLjIgMzA3LjEgMCAzMjggMCAzNTJMMCA0ODBjMCAxNy43IDE0LjMgMzIgMzIgMzJsMTYgMGMxNy43IDAgMzItMTQuMyAzMi0zMmwwLTMyIDI4OCAwIDAgMzJjMCAxNy43IDE0LjMgMzIgMzIgMzJsMTYgMGMxNy43IDAgMzItMTQuMyAzMi0zMmwwLTEyOGMwLTI0LTEzLjItNDQuOS0zMi44LTU1LjlsLTEuMy0zLjQtMzYuMy05Ni45Yy0xMS43LTMxLjItNDEuNi01MS45LTc0LjktNTEuOWwtMTU3LjUgMGMtMzMuMyAwLTYzLjIgMjAuNy03NC45IDUxLjlMMzQgMjkyLjh6TTk2IDMzNmEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6bTIyNCAzMmEzMiAzMiAwIDEgMSA2NCAwIDMyIDMyIDAgMSAxIC02NCAwek03IDdDLTIuMyAxNi40LTIuMyAzMS42IDcgNDFMNTUgODljOS40IDkuNCAyNC42IDkuNCAzMy45IDBTOTguMyA2NC40IDg5IDU1TDQxIDdDMzEuNi0yLjMgMTYuNC0yLjMgNyA3ek00MDcgN0wzNTkgNTVjLTkuNCA5LjQtOS40IDI0LjYgMCAzMy45czI0LjYgOS40IDMzLjkgMGw0OC00OGM5LjQtOS40IDkuNC0yNC42IDAtMzMuOVM0MTYuNC0yLjMgNDA3IDd6Il19LGt5cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzbGVpZ2giLGljb246WzY0MCw1MTIsW10sImY3Y2MiLCJNNjQgMzJDNDYuMyAzMiAzMiA0Ni4zIDMyIDY0UzQ2LjMgOTYgNjQgOTZsMCAxNjBjMCA0MS44IDI2LjcgNzcuNCA2NCA5MC41bDAgNjkuNS03MiAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDUwNCAwYzQ0LjIgMCA4MC0zNS44IDgwLTgwbDAtOGMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGwwIDhjMCAxNy43LTE0LjMgMzItMzIgMzJsLTgwIDAgMC02NGM1MyAwIDk2LTQzIDk2LTk2bDAtOTZjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTMyIDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMybDAgMzJjMCAzNS4zLTI4LjcgNjQtNjQgNjRsLTQ4LjkgMGMtNDguNSAwLTkyLjgtMjcuNC0xMTQuNS03MC44bC0yNS4yLTUwLjVDMjM3LjcgNTkuNCAxOTMuNCAzMiAxNDQuOSAzMkw2NCAzMnpNNDMyIDQxNmwtMjU2IDAgMC02NCAyNTYgMCAwIDY0eiJdfSxTeXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZHVtYmJlbGwiLGljb246WzY0MCw1MTIsW10sImY0NGIiLCJNOTYgMTEyYzAtMjYuNSAyMS41LTQ4IDQ4LTQ4czQ4IDIxLjUgNDggNDhsMCAxMTIgMjU2IDAgMC0xMTJjMC0yNi41IDIxLjUtNDggNDgtNDhzNDggMjEuNSA0OCA0OGwwIDE2IDE2IDBjMjYuNSAwIDQ4IDIxLjUgNDggNDhsMCA0OGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwwIDQ4YzAgMjYuNS0yMS41IDQ4LTQ4IDQ4bC0xNiAwIDAgMTZjMCAyNi41LTIxLjUgNDgtNDggNDhzLTQ4LTIxLjUtNDgtNDhsMC0xMTItMjU2IDAgMCAxMTJjMCAyNi41LTIxLjUgNDgtNDggNDhzLTQ4LTIxLjUtNDgtNDhsMC0xNi0xNiAwYy0yNi41IDAtNDgtMjEuNS00OC00OGwwLTQ4Yy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDAtNDhjMC0yNi41IDIxLjUtNDggNDgtNDhsMTYgMCAwLTE2eiJdfSxaTGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYmFieS1jYXJyaWFnZSIsaWNvbjpbNTEyLDUxMixbImNhcnJpYWdlLWJhYnkiXSwiZjc3ZCIsIk02NCAyMDhsMCA4MGMwIDUzIDQzIDk2IDk2IDk2bDE5MiAwYzUzIDAgOTYtNDMgOTYtOTZsMC0xMTIgNDAgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtNjQgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRsMCA1Ni0zMzYgMHptLjItNDhsMjIzLjggMCAwLTEyOGMwLTE3LjctMTQuMy0zMi0zMi0zMkwyMzIgMEMxNDEuOSAwIDY4LjQgNzAuOSA2NC4yIDE2MHpNMTYwIDQ2NGE0OCA0OCAwIDEgMCAtOTYgMCA0OCA0OCAwIDEgMCA5NiAwem0yODggMGE0OCA0OCAwIDEgMCAtOTYgMCA0OCA0OCAwIDEgMCA5NiAweiJdfSx6eXI9WkxlLEN5cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJraXdpLWJpcmQiLGljb246WzU3Niw1MTIsW10sImY1MzUiLCJNMjkxLjIgMzg4LjRjMzEuMi0xOC44IDY0LjctMzYuNCAxMDEuMS0zNi40bDU1LjcgMGM0LjYgMCA5LjEtLjIgMTMuNi0uN2w4NS4zIDEyMS45YzQgNS43IDExLjMgOC4yIDE3LjkgNi4xUzU3NiA0NzEgNTc2IDQ2NGwwLTI0MGMwLTcwLjctNTcuMy0xMjgtMTI4LTEyOGwtNTUuNyAwQzM1NS45IDk2IDMyMi40IDc4LjQgMjkxLjIgNTkuNiAyNjIuMyA0Mi4xIDIyOC4zIDMyIDE5MiAzMiA4NiAzMiAwIDExOCAwIDIyNCAwIDI5NS4xIDM4LjYgMzU3LjEgOTYgMzkwLjNMOTYgNDU2YzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC00NmMxNS4zIDMuOSAzMS40IDYgNDggNiA1LjQgMCAxMC43LS4yIDE2LS43bDAgNDAuN2MwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtNTAuOWMxMi40LTQuNCAyNC4yLTEwIDM1LjItMTYuN3pNNDQ4IDIwMGEyNCAyNCAwIDEgMSAwIDQ4IDI0IDI0IDAgMSAxIDAtNDh6Il19LFhMZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjYWxlbmRhci14bWFyayIsaWNvbjpbNDQ4LDUxMixbImNhbGVuZGFyLXRpbWVzIl0sImYyNzMiLCJNMTI4IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCAzMiAxMjggMCAwLTMyYzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJsMCAzMiAzMiAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMjg4YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDQ4MGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCAxMjhDMCA5Mi43IDI4LjcgNjQgNjQgNjRsMzIgMCAwLTMyYzAtMTcuNyAxNC4zLTMyIDMyLTMyek0yOTEuOSAyMjAuMWMtOS40LTkuNC0yNC42LTkuNC0zMy45IDBsLTMzLjkgMzMuOS0zMy45LTMzLjljLTkuNC05LjQtMjQuNi05LjQtMzMuOSAwcy05LjQgMjQuNiAwIDMzLjlsMzMuOSAzMy45LTMzLjkgMzMuOWMtOS40IDkuNC05LjQgMjQuNiAwIDMzLjlzMjQuNiA5LjQgMzMuOSAwbDMzLjktMzMuOSAzMy45IDMzLjljOS40IDkuNCAyNC42IDkuNCAzMy45IDBzOS40LTI0LjYgMC0zMy45bC0zMy45LTMzLjkgMzMuOS0zMy45YzkuNC05LjQgOS40LTI0LjYgMC0zMy45eiJdfSxfeXI9WExlLFFMZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjaXJjbGUtZG93biIsaWNvbjpbNTEyLDUxMixbNjE0NjYsImFycm93LWFsdC1jaXJjbGUtZG93biJdLCJmMzU4IiwiTTI1NiAwYTI1NiAyNTYgMCAxIDAgMCA1MTIgMjU2IDI1NiAwIDEgMCAwLTUxMnpNMjQ0LjcgMzg3LjNsLTEwNC0xMDRjLTQuNi00LjYtNS45LTExLjUtMy41LTE3LjRzOC4zLTkuOSAxNC44LTkuOWw1NiAwIDAtOTZjMC0xNy43IDE0LjMtMzIgMzItMzJsMzIgMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDk2IDU2IDBjNi41IDAgMTIuMyAzLjkgMTQuOCA5LjlzMS4xIDEyLjktMy41IDE3LjRsLTEwNCAxMDRjLTYuMiA2LjItMTYuNCA2LjItMjIuNiAweiJdfSxUeXI9UUxlLEx5cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmaWxlLW1lZGljYWwiLGljb246WzM4NCw1MTIsW10sImY0NzciLCJNMCA2NEMwIDI4LjcgMjguNyAwIDY0IDBMMjEzLjUgMGMxNyAwIDMzLjMgNi43IDQ1LjMgMTguN0wzNjUuMyAxMjUuM2MxMiAxMiAxOC43IDI4LjMgMTguNyA0NS4zTDM4NCA0NDhjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNTEyYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDY0em0yMDgtNS41bDAgOTMuNWMwIDEzLjMgMTAuNyAyNCAyNCAyNEwzMjUuNSAxNzYgMjA4IDU4LjV6TTE2MCAyODBsMCA0MC00MCAwYy04LjggMC0xNiA3LjItMTYgMTZsMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZsNDAgMCAwIDQwYzAgOC44IDcuMiAxNiAxNiAxNmwzMiAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTQwIDQwIDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMzJjMC04LjgtNy4yLTE2LTE2LTE2bC00MCAwIDAtNDBjMC04LjgtNy4yLTE2LTE2LTE2bC0zMiAwYy04LjggMC0xNiA3LjItMTYgMTZ6Il19LHIzPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InhtYXJrIixpY29uOlszODQsNTEyLFsxMjg0NzMsMTAwMDUsMTAwMDYsMTAwNjAsMjE1LCJjbG9zZSIsIm11bHRpcGx5IiwicmVtb3ZlIiwidGltZXMiXSwiZjAwZCIsIk01NS4xIDczLjRjLTEyLjUtMTIuNS0zMi44LTEyLjUtNDUuMyAwcy0xMi41IDMyLjggMCA0NS4zTDE0Ny4yIDI1NiA5LjkgMzkzLjRjLTEyLjUgMTIuNS0xMi41IDMyLjggMCA0NS4zczMyLjggMTIuNSA0NS4zIDBMMTkyLjUgMzAxLjMgMzI5LjkgNDM4LjZjMTIuNSAxMi41IDMyLjggMTIuNSA0NS4zIDBzMTIuNS0zMi44IDAtNDUuM0wyMzcuOCAyNTYgMzc1LjEgMTE4LjZjMTIuNS0xMi41IDEyLjUtMzIuOCAwLTQ1LjNzLTMyLjgtMTIuNS00NS4zIDBMMTkyLjUgMjEwLjcgNTUuMSA3My40eiJdfSxEeXI9cjMsQXlyPXIzLEV5cj1yMywkeXI9cjMsS0xlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNoYXBlcyIsaWNvbjpbNTEyLDUxMixbInRyaWFuZ2xlLWNpcmNsZS1zcXVhcmUiXSwiZjYxZiIsIk0yNTYgMGMxMS4yIDAgMjEuNyA1LjkgMjcuNCAxNS41bDk2IDE2MGM1LjkgOS45IDYuMSAyMi4yIC40IDMyLjJTMzYzLjUgMjI0IDM1MiAyMjRsLTE5MiAwYy0xMS41IDAtMjIuMi02LjItMjcuOC0xNi4ycy01LjUtMjIuMyAuNC0zMi4ybDk2LTE2MEMyMzQuMyA1LjkgMjQ0LjggMCAyNTYgMHpNMTI4IDI3MmExMTIgMTEyIDAgMSAxIDAgMjI0IDExMiAxMTIgMCAxIDEgMC0yMjR6bTIwMCAxNmwxMTIgMGMyMi4xIDAgNDAgMTcuOSA0MCA0MGwwIDExMmMwIDIyLjEtMTcuOSA0MC00MCA0MGwtMTEyIDBjLTIyLjEgMC00MC0xNy45LTQwLTQwbDAtMTEyYzAtMjIuMSAxNy45LTQwIDQwLTQweiJdfSxQeXI9S0xlLEl5cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJkaWNlLW9uZSIsaWNvbjpbNDQ4LDUxMixbOTg1Nl0sImY1MjUiLCJNNjQgMzJDMjguNyAzMiAwIDYwLjcgMCA5NkwwIDQxNmMwIDM1LjMgMjguNyA2NCA2NCA2NGwzMjAgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTMyMGMwLTM1LjMtMjguNy02NC02NC02NEw2NCAzMnpNMjI0IDIyNGEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6Il19LE55cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJsb2NrLW9wZW4iLGljb246WzU3Niw1MTIsW10sImYzYzEiLCJNMzg0IDk2YzAtMzUuMyAyOC43LTY0IDY0LTY0czY0IDI4LjcgNjQgNjRsMCAzMmMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMzJjMC03MC43LTU3LjMtMTI4LTEyOC0xMjhTMzIwIDI1LjMgMzIwIDk2bDAgNjQtMTYwIDBjLTM1LjMgMC02NCAyOC43LTY0IDY0bDAgMjI0YzAgMzUuMyAyOC43IDY0IDY0IDY0bDI1NiAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMjI0YzAtMzUuMy0yOC43LTY0LTY0LTY0bC0zMiAwIDAtNjR6Il19LEZ5cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwZXBwZXItaG90IixpY29uOls1NzYsNTEyLFsxMjc3OThdLCJmODE2IiwiTTU0NSA2NWM5LjQtOS40IDkuNC0yNC42IDAtMzMuOXMtMjQuNi05LjQtMzMuOSAwTDQ3OC45IDYzLjJDNDUyLjMgNDMuNiA0MTkuNSAzMiAzODQgMzIgMzQ4LjkgMzIgMzE2LjUgNDMuMyAyOTAuMSA2Mi40IDI3NC4xIDc0LjEgMjg0LjIgOTYgMzA0IDk2bDI0IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRsMCA4MGMwIDEzLjMgMTAuNyAyNCAyNCAyNGw4MCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0bDAgMjRjMCAxOS44IDIxLjkgMjkuOSAzMy42IDEzLjkgMTkuMS0yNi40IDMwLjQtNTguOCAzMC40LTkzLjkgMC0zNS41LTExLjYtNjguMy0zMS4yLTk0LjlMNTQ1IDY1ek0yNzAgMTM1LjVsLTE1OS42IDIyOEMxMDEuMyAzNzYuNCA4Ni43IDM4NCA3MSAzODRsLTcgMGMtMjYuNSAwLTQ4IDIxLjUtNDggNDhzMjEuNSA0OCA0OCA0OGwyNy4xIDBjNjUuNyAwIDEyOS43LTIwLjIgMTgzLjUtNTcuOEw0NDAuNSAzMDYuMUM0MzUgMjk1LjkgNDMyIDI4NC4yIDQzMiAyNzJsLTU2IDBjLTM5LjggMC03Mi0zMi4yLTcyLTcybDAtNTZjLTEyLjIgMC0yMy45LTMtMzQtOC41eiJdfSxKTGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZHJvcGxldC1zbGFzaCIsaWNvbjpbNTc2LDUxMixbInRpbnQtc2xhc2giXSwiZjVjNyIsIk00MS0yNC45Yy05LjQtOS40LTI0LjYtOS40LTMzLjkgMFMtMi4zLS4zIDcgOS4xbDUyOCA1MjhjOS40IDkuNCAyNC42IDkuNCAzMy45IDBzOS40LTI0LjYgMC0zMy45TDQ2My42IDM5Ny44YzEwLjUtMjMuOCAxNi40LTUwLjEgMTYuNC03Ny44IDAtOTEuMi0xMzAuMi0yNzQuMS0xNjYuNi0zMjMuNS01LjktOC0xNS4yLTEyLjUtMjUuMi0xMi41bC0uNCAwYy0xMCAwLTE5LjMgNC41LTI1LjIgMTIuNS0xNS42IDIxLjItNDguNSA2Ni45LTgwLjkgMTE5LjRMNDEtMjQuOXptOTIgMjI3LjdjLTIxLjYgNDMuOC0zNyA4NS45LTM3IDExNy4yIDAgMTA2IDg2IDE5MiAxOTIgMTkyIDQzLjQgMCA4My40LTE0LjQgMTE1LjUtMzguNkwxMzMgMjAyLjh6Il19LE95cj1KTGUsZURlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImRyb3BsZXQiLGljb246WzM4NCw1MTIsWzEyODE2NywidGludCJdLCJmMDQzIiwiTTE5MiA1MTJDODYgNTEyIDAgNDI2IDAgMzIwIDAgMjI4LjggMTMwLjIgNDUuOSAxNjYuNi0zLjUgMTcyLjUtMTEuNSAxODEuOC0xNiAxOTEuOC0xNmwuNCAwYzEwIDAgMTkuMyA0LjUgMjUuMiAxMi41IDM2LjQgNDkuNCAxNjYuNiAyMzIuMyAxNjYuNiAzMjMuNSAwIDEwNi04NiAxOTItMTkyIDE5MnpNMTEyIDMxMmMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGMwIDc1LjEgNjAuOSAxMzYgMTM2IDEzNiAxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGMtNDguNiAwLTg4LTM5LjQtODgtODh6Il19LFJ5cj1lRGUsQzJlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZpbGUtbGluZXMiLGljb246WzM4NCw1MTIsWzEyODQ0MSwxMjg0NjIsNjE2ODYsImZpbGUtYWx0IiwiZmlsZS10ZXh0Il0sImYxNWMiLCJNMCA2NEMwIDI4LjcgMjguNyAwIDY0IDBMMjEzLjUgMGMxNyAwIDMzLjMgNi43IDQ1LjMgMTguN0wzNjUuMyAxMjUuM2MxMiAxMiAxOC43IDI4LjMgMTguNyA0NS4zTDM4NCA0NDhjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNTEyYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDY0em0yMDgtNS41bDAgOTMuNWMwIDEzLjMgMTAuNyAyNCAyNCAyNEwzMjUuNSAxNzYgMjA4IDU4LjV6TTEyMCAyNTZjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsMTQ0IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTE0NCAwem0wIDk2Yy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDE0NCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC0xNDQgMHoiXX0sQnlyPUMyZSxIeXI9QzJlLHF5cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjb21tZW50cy1kb2xsYXIiLGljb246WzU3Niw1MTIsW10sImY2NTMiLCJNMTkyIDMyMGMxMDYgMCAxOTItNzguOCAxOTItMTc2UzI5OC0zMiAxOTItMzIgMCA0Ni44IDAgMTQ0YzAgMzkuNiAxNC4zIDc2LjIgMzguNCAxMDUuNkwyLjggMzE2LjhDLTIuMSAzMjYuMS0uNCAzMzcuNSA3IDM0NXMxOC45IDkuMiAyOC4yIDQuMkwxMTYuOCAzMDZjMjMuMSA5IDQ4LjUgMTQgNzUuMiAxNHptMy4yIDQ4YzE2LjQgODEuOSA5NC43IDE0NCAxODguOCAxNDQgMjYuNyAwIDUyLjEtNSA3NS4yLTE0bDgxLjYgNDMuMmM5LjMgNC45IDIwLjcgMy4yIDI4LjItNC4yczkuMi0xOC45IDQuMi0yOC4ybC0zNS42LTY3LjJjMjQuMS0yOS40IDM4LjQtNjYgMzguNC0xMDUuNiAwLTgyLjQtNjEuNy0xNTEuNS0xNDUtMTcwLjctMTEuNSAxMTUuOC0xMTUuOCAyMDEuMi0yMzUuOCAyMDIuN3pNMTk2IDMyYzExIDAgMjAgOSAyMCAyMGwwIDQgOCAwYzExIDAgMjAgOSAyMCAyMHMtOSAyMC0yMCAyMGwtNDcuNSAwYy02LjkgMC0xMi41IDUuNi0xMi41IDEyLjUgMCA2LjEgNC40IDExLjMgMTAuNCAxMi4zbDQxLjcgN2MyNS4zIDQuMiA0My45IDI2LjEgNDMuOSA1MS44IDAgMjYuMS0xOSA0Ny43LTQ0IDUxLjhsMCA0LjdjMCAxMS05IDIwLTIwIDIwcy0yMC05LTIwLTIwbDAtNC0yNCAwYy0xMSAwLTIwLTktMjAtMjBzOS0yMCAyMC0yMGw1NS41IDBjNi45IDAgMTIuNS01LjYgMTIuNS0xMi41IDAtNi4xLTQuNC0xMS4zLTEwLjQtMTIuM2wtNDEuNy03Yy0yNS4zLTQuMi00My45LTI2LjEtNDMuOS01MS44IDAtMjguOCAyMy4yLTUyLjIgNTItNTIuNWwwLTRjMC0xMSA5LTIwIDIwLTIweiJdfSx0RGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibWFnbmlmeWluZy1nbGFzcy1sb2NhdGlvbiIsaWNvbjpbNTEyLDUxMixbInNlYXJjaC1sb2NhdGlvbiJdLCJmNjg5IiwiTTQxNiAyMDhjMCA0NS45LTE0LjkgODguMy00MCAxMjIuN0w1MDIuNiA0NTcuNGMxMi41IDEyLjUgMTIuNSAzMi44IDAgNDUuM3MtMzIuOCAxMi41LTQ1LjMgMEwzMzAuNyAzNzZDMjk2LjMgNDAxLjEgMjUzLjkgNDE2IDIwOCA0MTYgOTMuMSA0MTYgMCAzMjIuOSAwIDIwOFM5My4xIDAgMjA4IDAgNDE2IDkzLjEgNDE2IDIwOHpNMjg4IDE3NmMwLTQ0LjItMzUuOC04MC04MC04MHMtODAgMzUuOC04MCA4MGMwIDQ4LjggNDYuNSAxMTEuNiA2OC42IDEzOC42IDYgNy4zIDE2LjggNy4zIDIyLjcgMCAyMi4xLTI3IDY4LjYtODkuOCA2OC42LTEzOC42em0tMTEyIDBhMzIgMzIgMCAxIDEgNjQgMCAzMiAzMiAwIDEgMSAtNjQgMHoiXX0sanlyPXREZSxmbGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmlsZS1pbnZvaWNlIixpY29uOlszODQsNTEyLFtdLCJmNTcwIiwiTTY0IDBDMjguNyAwIDAgMjguNyAwIDY0TDAgNDQ4YzAgMzUuMyAyOC43IDY0IDY0IDY0bDI1NiAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMjc3LjVjMC0xNy02LjctMzMuMy0xOC43LTQ1LjNMMjU4LjcgMTguN0MyNDYuNyA2LjcgMjMwLjUgMCAyMTMuNSAwTDY0IDB6TTMyNS41IDE3NkwyMzIgMTc2Yy0xMy4zIDAtMjQtMTAuNy0yNC0yNEwyMDggNTguNSAzMjUuNSAxNzZ6TTY0IDM4NGwwLTY0YzAtMTcuNyAxNC4zLTMyIDMyLTMybDE5MiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgNjRjMCAxNy43LTE0LjMgMzItMzIgMzJMOTYgNDE2Yy0xNy43IDAtMzItMTQuMy0zMi0zMnpNODggNjRsNDggMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtNDggMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRTNzQuNyA2NCA4OCA2NHptMCA5Nmw0OCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC00OCAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0eiJdfSxWeXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGVudGFnb24iLGljb246WzU3Niw1MTIsW10sImU3OTAiLCJNMzE2LjQtMy4xYy0xNi44LTEyLjItMzkuNi0xMi4yLTU2LjQgMEwzNS4zIDE2MC4yYy0xNi44IDEyLjItMjMuOSAzMy45LTE3LjQgNTMuN2w4NS44IDI2NC4xYzYuNCAxOS44IDI0LjkgMzMuMiA0NS43IDMzLjJsMjc3LjcgMGMyMC44IDAgMzkuMi0xMy40IDQ1LjctMzMuMmw4NS44LTI2NC4xYzYuNC0xOS44LS42LTQxLjQtMTcuNC01My43TDMxNi40LTMuMXoiXX0sVXlyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InJlcHVibGljYW4iLGljb246WzY0MCw1MTIsW10sImY3NWUiLCJNMCAxOTJDMCAxMDMuNiA3MS42IDMyIDE2MCAzMmwyMjQgMGM4OC40IDAgMTYwIDcxLjYgMTYwIDE2MGwwIDY0LTU0NCAwIDAtNjR6bTE1Mi0zMmEyNCAyNCAwIDEgMCAtNDggMCAyNCAyNCAwIDEgMCA0OCAwem0yMzIgMjRhMjQgMjQgMCAxIDAgMC00OCAyNCAyNCAwIDEgMCAwIDQ4ek0yODAgMTYwYTI0IDI0IDAgMSAwIC00OCAwIDI0IDI0IDAgMSAwIDQ4IDB6TTEyOCAyODhsNDE2IDAgMCAxMTJjMCA4LjggNy4yIDE2IDE2IDE2czE2LTcuMiAxNi0xNmwwLTQ4YzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJsMCA0OGMwIDQ0LjItMzUuOCA4MC04MCA4MHMtODAtMzUuOC04MC04MGwwLTQ4LTMyIDAgMCA5NmMwIDE3LjctMTQuMyAzMi0zMiAzMmwtNjQgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC02NC0xOTIgMCAwIDY0YzAgMTcuNy0xNC4zIDMyLTMyIDMybC02NCAwYy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTE2MCAxMjggMHoiXX0sckRlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNob3AiLGljb246WzU3Niw1MTIsWyJzdG9yZS1hbHQiXSwiZjU0ZiIsIk0yMS41IDE4MS4xTDc4LjMgNjcuNEM4OS4yIDQ1LjcgMTExLjMgMzIgMTM1LjYgMzJsMzA0LjkgMGMyNC4yIDAgNDYuNCAxMy43IDU3LjIgMzUuNGw1Ni44IDExMy43YzMuNiA3LjIgNS41IDE1LjEgNS41IDIzLjIgMCAyNy4zLTIxLjIgNDkuNy00OCA1MS42TDUxMiA0NDhjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC0xOTItOTYgMCAwIDE3NmMwIDI2LjUtMjEuNSA0OC00OCA0OGwtMTkyIDBjLTI2LjUgMC00OC0yMS41LTQ4LTQ4bDAtMTc2LjFjLTI2LjgtMS45LTQ4LTI0LjMtNDgtNTEuNiAwLTggMS45LTE2IDUuNS0yMy4yek0xMjggMjU2bDAgMTEyYzAgOC44IDcuMiAxNiAxNiAxNmwxMjggMGM4LjggMCAxNi03LjIgMTYtMTZsMC0xMTItMTYwIDB6Il19LFd5cj1yRGUsXzJlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZpbG0iLGljb246WzQ0OCw1MTIsWzEyNzkwMiw2MjM2OCwiZmlsbS1hbHQiLCJmaWxtLXNpbXBsZSJdLCJmMDA4IiwiTTAgOTZDMCA2MC43IDI4LjcgMzIgNjQgMzJsMzIwIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAzMjBjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDk2ek00OCAzNjhsMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZsMzIgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0zMmMwLTguOC03LjItMTYtMTYtMTZsLTMyIDBjLTguOCAwLTE2IDcuMi0xNiAxNnptMzA0LTE2Yy04LjggMC0xNiA3LjItMTYgMTZsMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZsMzIgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0zMmMwLTguOC03LjItMTYtMTYtMTZsLTMyIDB6TTQ4IDI0MGwwIDMyYzAgOC44IDcuMiAxNiAxNiAxNmwzMiAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMGMtOC44IDAtMTYgNy4yLTE2IDE2em0zMDQtMTZjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDMyYzAgOC44IDcuMiAxNiAxNiAxNmwzMiAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMHpNNDggMTEybDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMzJjMC04LjgtNy4yLTE2LTE2LTE2TDY0IDk2Yy04LjggMC0xNiA3LjItMTYgMTZ6TTM1MiA5NmMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMzJjMC04LjgtNy4yLTE2LTE2LTE2bC0zMiAweiJdfSxHeXI9XzJlLFl5cj1fMmUsWnlyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJ1aWxkaW5nLWNpcmNsZS14bWFyayIsaWNvbjpbNTc2LDUxMixbXSwiZTRkNCIsIk05NiAwQzYwLjcgMCAzMiAyOC43IDMyIDY0bDAgMzg0YzAgMzUuMyAyOC43IDY0IDY0IDY0bDE4MCAwYy0xMC41LTE0LjYtMTktMzAuNy0yNS4xLTQ4bC03NC45IDAgMC04MGMwLTE3LjcgMTQuMy0zMiAzMi0zMmwzMiAwYzIgMCA0IC4yIDUuOSAuNSA2LTIzLjYgMTYuMy00NS40IDMwLjEtNjQuNWwtNCAwYy04LjggMC0xNi03LjItMTYtMTZsMC0zMmMwLTguOCA3LjItMTYgMTYtMTZsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCA0YzI3LjUtMTkuOCA2MC4zLTMyLjQgOTYtMzUuNEw0MTYgNjRjMC0zNS4zLTI4LjctNjQtNjQtNjRMOTYgMHptMzIgMTEyYzAtOC44IDcuMi0xNiAxNi0xNmwzMiAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDMyYzAgOC44LTcuMiAxNi0xNiAxNmwtMzIgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMzJ6TTI3MiA5NmwzMiAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDMyYzAgOC44LTcuMiAxNi0xNiAxNmwtMzIgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMzJjMC04LjggNy4yLTE2IDE2LTE2ek0xMjggMjQwYzAtOC44IDcuMi0xNiAxNi0xNmwzMiAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDMyYzAgOC44LTcuMiAxNi0xNiAxNmwtMzIgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMzJ6TTQzMiA1NDRhMTQ0IDE0NCAwIDEgMCAwLTI4OCAxNDQgMTQ0IDAgMSAwIDAgMjg4em0yMi42LTE0NGwzNi43IDM2LjdjNi4yIDYuMiA2LjIgMTYuNCAwIDIyLjZzLTE2LjQgNi4yLTIyLjYgMGwtMzYuNy0zNi43LTM2LjcgMzYuN2MtNi4yIDYuMi0xNi40IDYuMi0yMi42IDBzLTYuMi0xNi40IDAtMjIuNmwzNi43LTM2LjctMzYuNy0zNi43Yy02LjItNi4yLTYuMi0xNi40IDAtMjIuNnMxNi40LTYuMiAyMi42IDBsMzYuNyAzNi43IDM2LjctMzYuN2M2LjItNi4yIDE2LjQtNi4yIDIyLjYgMHM2LjIgMTYuNCAwIDIyLjZMNDU0LjYgNDAweiJdfSxYeXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY29tbWVudHMiLGljb246WzU3Niw1MTIsWzEyODQ5MCw2MTY3MF0sImYwODYiLCJNMzg0IDE0NGMwIDk3LjItODYgMTc2LTE5MiAxNzYtMjYuNyAwLTUyLjEtNS03NS4yLTE0TDM1LjIgMzQ5LjJjLTkuMyA0LjktMjAuNyAzLjItMjguMi00LjJzLTkuMi0xOC45LTQuMi0yOC4ybDM1LjYtNjcuMkMxNC4zIDIyMC4yIDAgMTgzLjYgMCAxNDQgMCA0Ni44IDg2LTMyIDE5Mi0zMlMzODQgNDYuOCAzODQgMTQ0em0wIDM2OGMtOTQuMSAwLTE3Mi40LTYyLjEtMTg4LjgtMTQ0IDEyMC0xLjUgMjI0LjMtODYuOSAyMzUuOC0yMDIuNyA4My4zIDE5LjIgMTQ1IDg4LjMgMTQ1IDE3MC43IDAgMzkuNi0xNC4zIDc2LjItMzguNCAxMDUuNmwzNS42IDY3LjJjNC45IDkuMyAzLjIgMjAuNy00LjIgMjguMnMtMTguOSA5LjItMjguMiA0LjJMNDU5LjIgNDk4Yy0yMy4xIDktNDguNSAxNC03NS4yIDE0eiJdfSxReXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidGFncyIsaWNvbjpbNTc2LDUxMixbXSwiZjAyYyIsIk00MDEuMiAzOS4xTDU0OS40IDE4OS40YzI3LjcgMjguMSAyNy43IDczLjEgMCAxMDEuMkwzOTMgNDQ4LjljLTkuMyA5LjQtMjQuNSA5LjUtMzMuOSAuMnMtOS41LTI0LjUtLjItMzMuOUw1MTUuMyAyNTYuOGM5LjItOS4zIDkuMi0yNC40IDAtMzMuN0wzNjcgNzIuOWMtOS4zLTkuNC05LjItMjQuNiAuMi0zMy45czI0LjYtOS4yIDMzLjkgLjJ6TTMyLjEgMjI5LjVMMzIuMSA5NmMwLTM1LjMgMjguNy02NCA2NC02NGwxMzMuNSAwYzE3IDAgMzMuMyA2LjcgNDUuMyAxOC43bDE0NCAxNDRjMjUgMjUgMjUgNjUuNSAwIDkwLjVMMjg1LjQgNDE4LjdjLTI1IDI1LTY1LjUgMjUtOTAuNSAwbC0xNDQtMTQ0Yy0xMi0xMi0xOC43LTI4LjMtMTguNy00NS4zem0xNDQtODUuNWEzMiAzMiAwIDEgMCAtNjQgMCAzMiAzMiAwIDEgMCA2NCAweiJdfSxLeXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZ3VuIixpY29uOls1NzYsNTEyLFtdLCJlMTliIiwiTTUyOCA1NmMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGwwIDgtNDQ4IDBDMTQuMyA2NCAwIDc4LjMgMCA5NkwwIDIwOGMwIDE3LjcgMTQuMyAzMiAzMiAzMmwxMCAwYzIwLjggMCAzNi4xIDE5LjYgMzEgMzkuOEwzMyA0NDAuMmMtMi40IDkuNi0uMiAxOS43IDUuOCAyNy41UzU0LjEgNDgwIDY0IDQ4MGw5NiAwYzE0LjcgMCAyNy41LTEwIDMxLTI0LjJMMjE3IDM1MiAzMjEuNCAzNTJjMjMuNyAwIDQ0LjgtMTQuOSA1Mi43LTM3LjJsMjYuNy03NC44IDMxLjEgMGM4LjUgMCAxNi42LTMuNCAyMi42LTkuNGwyMi42LTIyLjYgNjYuNyAwYzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtODBjMC0xNy43LTE0LjMtMzItMzItMzJsLTE2IDAgMC04ek0zMjEuNCAzMDRsLTkyLjUgMCAxNi02NCAxMDUgMC0yMSA1OC43Yy0xLjEgMy4yLTQuMiA1LjMtNy41IDUuM3pNODAgMTI4bDM4NCAwYzguOCAwIDE2IDcuMiAxNiAxNnMtNy4yIDE2LTE2IDE2TDgwIDE2MGMtOC44IDAtMTYtNy4yLTE2LTE2czcuMi0xNiAxNi0xNnoiXX0sSHc9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2lyY2xlLWNoZWNrIixpY29uOls1MTIsNTEyLFs2MTUzMywiY2hlY2stY2lyY2xlIl0sImYwNTgiLCJNMjU2IDUxMmEyNTYgMjU2IDAgMSAxIDAtNTEyIDI1NiAyNTYgMCAxIDEgMCA1MTJ6TTM3NCAxNDUuN2MtMTAuNy03LjgtMjUuNy01LjQtMzMuNSA1LjNMMjIxLjEgMzE1LjIgMTY5IDI2My4xYy05LjQtOS40LTI0LjYtOS40LTMzLjkgMHMtOS40IDI0LjYgMCAzMy45bDcyIDcyYzUgNSAxMS44IDcuNSAxOC44IDdzMTMuNC00LjEgMTcuNS05LjhMMzc5LjMgMTc5LjJjNy44LTEwLjcgNS40LTI1LjctNS4zLTMzLjV6Il19LEp5cj1Idyxld3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic2NvcnBpbyIsaWNvbjpbNjQwLDUxMixbXSwiZTg0ZSIsIk0zNjggMzJjNjEuOSAwIDExMiA1MC4xIDExMiAxMTJsMCAyODkuN2MwIDcuOSA2LjQgMTQuMyAxNC4zIDE0LjMgMy45IDAgNy42LTEuNiAxMC4yLTQuM2w0MC4xLTQxLjEtOS43LTkuN2MtNi45LTYuOS04LjktMTcuMi01LjItMjYuMlM1NDIuMyAzNTIgNTUyIDM1Mmw2NCAwIDIuNSAuMWMxMi4xIDEuMiAyMS41IDExLjUgMjEuNSAyMy45bDAgNjQtLjMgMy42Yy0xLjIgOC4yLTYuNyAxNS4zLTE0LjUgMTguNi05IDMuNy0xOS4zIDEuNi0yNi4yLTUuMmwtOS4xLTkuMS0zOS42IDQwLjZjLTE0LjcgMTUuMS0zNC45IDIzLjYtNTYgMjMuNi00My4zIDAtNzguMy0zNS4xLTc4LjMtNzguM0w0MTYgMTQ0YzAtMjYuNS0yMS41LTQ4LTQ4LTQ4cy00OCAyMS41LTQ4IDQ4bDAgMzA0YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMzA0YzAtMjYuNS0yMS41LTQ4LTQ4LTQ4cy00OCAyMS41LTQ4IDQ4bDAgMzA0YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMzIwYzAtMTYuNi0xMi42LTMwLjItMjguNy0zMS44bC02LjYtLjNDNDQuNiA5NC4yIDMyIDgwLjYgMzIgNjQgMzIgNDYuMyA0Ni4zIDMyIDY0IDMyIDkxIDMyIDExNS4zIDQzLjEgMTMyLjcgNjEgMTUyLjYgNDMgMTc5IDMyIDIwOCAzMiAyMzkuMyAzMiAyNjcuNyA0NC45IDI4OCA2NS43IDMwOC4zIDQ0LjkgMzM2LjYgMzIgMzY4IDMyeiJdfSxhRGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaWQtY2FyZC1jbGlwIixpY29uOls1NzYsNTEyLFsiaWQtY2FyZC1hbHQiXSwiZjQ3ZiIsIk0yNTYtMzJsNjQgMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDY0LTEyOCAwIDAtNjRjMC0xNy43IDE0LjMtMzIgMzItMzJ6TTY0IDMybDExMiAwIDAgMzJjMCAyNi41IDIxLjUgNDggNDggNDhsMTI4IDBjMjYuNSAwIDQ4LTIxLjUgNDgtNDhsMC0zMiAxMTIgMGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDMyMGMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA0ODBjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgOTZDMCA2MC43IDI4LjcgMzIgNjQgMzJ6TTE3NiA0MDBjMCA4LjggNy4yIDE2IDE2IDE2bDE5MiAwYzguOCAwIDE2LTcuMiAxNi0xNiAwLTQ0LjItMzUuOC04MC04MC04MGwtNjQgMGMtNDQuMiAwLTgwIDM1LjgtODAgODB6TTI4OCAyODBhNTYgNTYgMCAxIDAgMC0xMTIgNTYgNTYgMCAxIDAgMCAxMTJ6Il19LHR3cj1hRGUscndyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im1vb24iLGljb246WzUxMiw1MTIsWzEyNzc2OSw5MjE0XSwiZjE4NiIsIk0yNTYgMEMxMTQuNiAwIDAgMTE0LjYgMCAyNTZTMTE0LjYgNTEyIDI1NiA1MTJjNjguOCAwIDEzMS4zLTI3LjIgMTc3LjMtNzEuNCA3LjMtNyA5LjQtMTcuOSA1LjMtMjcuMXMtMTMuNy0xNC45LTIzLjgtMTQuMWMtNC45IC40LTkuOCAuNi0xNC44IC42LTEwMS42IDAtMTg0LTgyLjQtMTg0LTE4NCAwLTcyLjEgNDEuNS0xMzQuNiAxMDIuMS0xNjQuOCA5LjEtNC41IDE0LjMtMTQuMyAxMy4xLTI0LjRTMzIyLjYgOC41IDMxMi43IDYuM0MyOTQuNCAyLjIgMjc1LjQgMCAyNTYgMHoiXX0sYXdyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im9pbC13ZWxsIixpY29uOls1NzYsNTEyLFtdLCJlNTMyIiwiTTUyOC4zIDYxLjNjLTExLjQtNDIuNy01NS4zLTY4LTk4LTU2LjZMNDE0LjkgOC44QzM5Ny44IDEzLjQgMzg3LjcgMzEgMzkyLjMgNDhsMjQuNSA5MS40LTEwOC4yIDI4LjEtNi4zLTE4LjFDMjk3LjcgMTM2LjYgMjg1LjYgMTI4IDI3MiAxMjhzLTI1LjcgOC42LTMwLjIgMjEuNGwtMTMuNiAzOS0xMzIuMiAzNC4zIDAtMzguNmMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGwwIDI2NC0xNiAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDUxMiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC0xMzcuMyAwLTYxLjQtMTc1LjQtNjIuMiAxNi4xIDIyLjEgNjMuMi02Ni42IDAgMTkuOS01Ni45LTc0LjYgMTkuMy00Ni43IDEzMy41LTQxLjMgMCAwLTE1OS4yIDMzNy40LTg3LjUgMjUuMiA5NGM0LjYgMTcuMSAyMi4xIDI3LjIgMzkuMiAyMi42bDE1LjUtNC4xYzQyLjctMTEuNCA2OC01NS4zIDU2LjYtOThMNTI4LjMgNjEuM3pNMjA1LjEgNDQ4bDE2LjgtNDggMTAwLjIgMCAxNi44IDQ4LTEzMy44IDB6Il19LGlEZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0YWNob2dyYXBoLWRpZ2l0YWwiLGljb246WzU3Niw1MTIsWyJkaWdpdGFsLXRhY2hvZ3JhcGgiXSwiZjU2NiIsIk0wIDEyOEMwIDkyLjcgMjguNyA2NCA2NCA2NGw0NDggMGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDI1NmMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA0NDhjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgMTI4em02NCAzMmwwIDMyYzAgMTcuNyAxNC4zIDMyIDMyIDMybDE2MCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtMzJjMC0xNy43LTE0LjMtMzItMzItMzJMOTYgMTI4Yy0xNy43IDAtMzIgMTQuMy0zMiAzMnpNODggMzUyYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDEzNiAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0TDg4IDM1MnptMjU2IDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsMTQ0IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTE0NCAwek00OTYgMTkyYTY0IDY0IDAgMSAwIC0xMjggMCA2NCA2NCAwIDEgMCAxMjggMHpNODggMzEyYTI0IDI0IDAgMSAwIDAtNDggMjQgMjQgMCAxIDAgMCA0OHptMTA0LTI0YTI0IDI0IDAgMSAwIC00OCAwIDI0IDI0IDAgMSAwIDQ4IDB6bTU2IDI0YTI0IDI0IDAgMSAwIDAtNDggMjQgMjQgMCAxIDAgMCA0OHoiXX0saXdyPWlEZSxvRGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidGFibGV0IixpY29uOls0NDgsNTEyLFsidGFibGV0LWFuZHJvaWQiXSwiZjNmYiIsIk02NCAwQzI4LjcgMCAwIDI4LjcgMCA2NEwwIDQ0OGMwIDM1LjMgMjguNyA2NCA2NCA2NGwzMjAgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTM4NGMwLTM1LjMtMjguNy02NC02NC02NEw2NCAwek0xODQgNDAwbDgwIDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTgwIDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjR6Il19LG93cj1vRGUsX3c9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicnVibGUtc2lnbiIsaWNvbjpbNDQ4LDUxMixbODM4MSwicm91YmxlIiwicnViIiwicnVibGUiXSwiZjE1OCIsIk0xMTIgMzJDOTQuMyAzMiA4MCA0Ni4zIDgwIDY0bDAgMjA4LTQwIDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsNDAgMCAwIDQ4LTQwIDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsNDAgMCAwIDMyYzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0zMiAxNTIgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtMTUyIDAgMC00OCAxMTIgMGM3OS41IDAgMTQ0LTY0LjUgMTQ0LTE0NFMzMzUuNSAzMiAyNTYgMzJMMTEyIDMyek0yNTYgMjU2bC0xMTIgMCAwLTE2MCAxMTIgMGM0NC4yIDAgODAgMzUuOCA4MCA4MHMtMzUuOCA4MC04MCA4MHoiXX0sbndyPV93LHN3cj1fdyxsd3I9X3csY3dyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNsb3NlZC1jYXB0aW9uaW5nIixpY29uOls1MTIsNTEyLFtdLCJmMjBhIiwiTTAgMTI4QzAgOTIuNyAyOC43IDY0IDY0IDY0bDM4NCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMjU2YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDQ0OGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCAxMjh6bTE1MiA4MGwzMiAwYzQuNCAwIDggMy42IDggOCAwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0YzAtMzAuOS0yNS4xLTU2LTU2LTU2bC0zMiAwYy0zMC45IDAtNTYgMjUuMS01NiA1NmwwIDgwYzAgMzAuOSAyNS4xIDU2IDU2IDU2bDMyIDBjMzAuOSAwIDU2LTI1LjEgNTYtNTYgMC0xMy4zLTEwLjctMjQtMjQtMjRzLTI0IDEwLjctMjQgMjRjMCA0LjQtMy42IDgtOCA4bC0zMiAwYy00LjQgMC04LTMuNi04LThsMC04MGMwLTQuNCAzLjYtOCA4LTh6bTE2OCA4YzAtNC40IDMuNi04IDgtOGwzMiAwYzQuNCAwIDggMy42IDggOCAwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0YzAtMzAuOS0yNS4xLTU2LTU2LTU2bC0zMiAwYy0zMC45IDAtNTYgMjUuMS01NiA1NmwwIDgwYzAgMzAuOSAyNS4xIDU2IDU2IDU2bDMyIDBjMzAuOSAwIDU2LTI1LjEgNTYtNTYgMC0xMy4zLTEwLjctMjQtMjQtMjRzLTI0IDEwLjctMjQgMjRjMCA0LjQtMy42IDgtOCA4bC0zMiAwYy00LjQgMC04LTMuNi04LThsMC04MHoiXX0sZHdyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBlbiIsaWNvbjpbNTEyLDUxMixbMTI4Mzk0XSwiZjMwNCIsIk0zNTIuOSAyMS4yTDMwOCA2Ni4xIDQ0NS45IDIwNCA0OTAuOCAxNTkuMUM1MDQuNCAxNDUuNiA1MTIgMTI3LjIgNTEyIDEwOHMtNy42LTM3LjYtMjEuMi01MS4xTDQ1NS4xIDIxLjJDNDQxLjYgNy42IDQyMy4yIDAgNDA0IDBzLTM3LjYgNy42LTUxLjEgMjEuMnpNMjc0LjEgMTAwTDU4LjkgMzE1LjFjLTEwLjcgMTAuNy0xOC41IDI0LjEtMjIuNiAzOC43TC45IDQ4MS42Yy0yLjMgOC4zIDAgMTcuMyA2LjIgMjMuNHMxNS4xIDguNSAyMy40IDYuMmwxMjcuOC0zNS41YzE0LjYtNC4xIDI3LjktMTEuOCAzOC43LTIyLjZMNDEyIDIzNy45IDI3NC4xIDEwMHoiXX0sdXdyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBsYW5lIixpY29uOls1NzYsNTEyLFtdLCJmMDcyIiwiTTUyMCAyMDBjMzAuOSAwIDU2IDI1LjEgNTYgNTZzLTI1LjEgNTYtNTYgNTZsLTEyNy4zIDAtMTU5LjIgMTczLjZjLTYuMSA2LjYtMTQuNiAxMC40LTIzLjYgMTAuNGwtNDMuNyAwYy0xMC45IDAtMTguNi0xMC43LTE1LjItMjEuMWw1NC4zLTE2Mi45LTk5LjcgMC01Mi44IDY2Yy0zIDMuOC03LjYgNi0xMi41IDZsLTE5LjggMGMtMTAuNCAwLTE4LTkuOC0xNS41LTE5LjlMMzIgMjU2IDUgMTQ3LjlDMi40IDEzNy44IDEwLjEgMTI4IDIwLjUgMTI4bDE5LjggMGM0LjkgMCA5LjUgMi4yIDEyLjUgNmw1Mi44IDY2IDk5LjcgMC01NC4zLTE2Mi45QzE0Ny42IDI2LjcgMTU1LjMgMTYgMTY2LjIgMTZsNDMuNyAwYzkgMCAxNy41IDMuOCAyMy42IDEwLjRMMzkyLjcgMjAwIDUyMCAyMDB6Il19LGZ3cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJpbWFnZXMiLGljb246WzU3Niw1MTIsW10sImYzMDIiLCJNOTYgOTZjMC0zNS4zIDI4LjctNjQgNjQtNjRsMzIwIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAyNTZjMCAzNS4zLTI4LjcgNjQtNjQgNjRsLTMyMCAwYy0zNS4zIDAtNjQtMjguNy02NC02NEw5NiA5NnpNMjQgMTI4YzEzLjMgMCAyNCAxMC43IDI0IDI0bDAgMjk2YzAgOC44IDcuMiAxNiAxNiAxNmwzNjAgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNEw2NCA1MTJjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgMTUyYzAtMTMuMyAxMC43LTI0IDI0LTI0em0xNjggMzJhMzIgMzIgMCAxIDAgMC02NCAzMiAzMiAwIDEgMCAwIDY0em0xOTYuNSAxMS41Yy00LjQtNy4xLTEyLjEtMTEuNS0yMC41LTExLjVzLTE2LjEgNC40LTIwLjUgMTEuNWwtNTYuMyA5Mi4xLTI0LjUtMzAuNmMtNC42LTUuNy0xMS40LTktMTguNy05cy0xNC4yIDMuMy0xOC43IDlsLTY0IDgwYy01LjggNy4yLTYuOSAxNy4xLTIuOSAyNS40UzE3NC44IDM1MiAxODQgMzUybDI3MiAwYzguNyAwIDE2LjctNC43IDIwLjktMTIuM3M0LjEtMTYuOC0uNS0yNC4zbC04OC0xNDR6Il19LG5EZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtb2JpbGUtc2NyZWVuIixpY29uOlszODQsNTEyLFsibW9iaWxlLWFuZHJvaWQtYWx0Il0sImYzY2YiLCJNMTYgNjRDMTYgMjguNyA0NC43IDAgODAgMEwzMDQgMGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDM4NGMwIDM1LjMtMjguNyA2NC02NCA2NEw4MCA1MTJjLTM1LjMgMC02NC0yOC43LTY0LTY0TDE2IDY0ek0xMjggNDQwYzAgMTMuMyAxMC43IDI0IDI0IDI0bDgwIDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTgwIDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0ek0zMDQgNjRsLTIyNCAwIDAgMzA0IDIyNCAwIDAtMzA0eiJdfSxwd3I9bkRlLGh3cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJndWFyYW5pLXNpZ24iLGljb246WzM4NCw1MTIsW10sImUxOWEiLCJNMTkyIDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0bDAgNDEuNUM3My4zIDc3LjMgMCAxNTguMSAwIDI1NlM3My4zIDQzNC43IDE2OCA0NDYuNWwwIDQxLjVjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTQxLjVjOTQuNy0xMS44IDE2OC05Mi42IDE2OC0xOTAuNSAwLTE3LjctMTQuMy0zMi0zMi0zMmwtMTM2IDAgMC05My44YzI1LjMgNC44IDQ3LjkgMTcgNjUuNiAzNC4zIDEyLjYgMTIuNCAzMi45IDEyLjIgNDUuMy0uNHMxMi4yLTMyLjktLjUtNDUuM0MyOTcuMiA5MC4yIDI1OC44IDcwLjggMjE2IDY1LjVMMjE2IDI0YzAtMTMuMy0xMC43LTI0LTI0LTI0ek0xNjggMTMwLjJsMCAyNTEuNUMxMDguOCAzNzAuNSA2NCAzMTguNSA2NCAyNTZzNDQuOC0xMTQuNSAxMDQtMTI1Ljh6bTQ4IDI1MS41bDAtOTMuOCAxMDAgMGMtMTIuMyA0Ny42LTUxLjIgODQuNS0xMDAgOTMuOHoiXX0sc0RlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJhZy1zaG9wcGluZyIsaWNvbjpbNDQ4LDUxMixbInNob3BwaW5nLWJhZyJdLCJmMjkwIiwiTTE2MCA4MGMwLTM1LjMgMjguNy02NCA2NC02NHM2NCAyOC43IDY0IDY0bDAgNDgtMTI4IDAgMC00OHptLTQ4IDQ4bC02NCAwYy0yNi41IDAtNDggMjEuNS00OCA0OEwwIDM4NGMwIDUzIDQzIDk2IDk2IDk2bDI1NiAwYzUzIDAgOTYtNDMgOTYtOTZsMC0yMDhjMC0yNi41LTIxLjUtNDgtNDgtNDhsLTY0IDAgMC00OGMwLTYxLjktNTAuMS0xMTItMTEyLTExMlMxMTIgMTguMSAxMTIgODBsMCA0OHptMjQgNDhhMjQgMjQgMCAxIDEgMCA0OCAyNCAyNCAwIDEgMSAwLTQ4em0xNTIgMjRhMjQgMjQgMCAxIDEgNDggMCAyNCAyNCAwIDEgMSAtNDggMHoiXX0sbXdyPXNEZSxsRGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2lyY2xlLXJpZ2h0IixpY29uOls1MTIsNTEyLFs2MTgzOCwiYXJyb3ctYWx0LWNpcmNsZS1yaWdodCJdLCJmMzVhIiwiTTAgMjU2YTI1NiAyNTYgMCAxIDAgNTEyIDAgMjU2IDI1NiAwIDEgMCAtNTEyIDB6bTM4Ny4zIDExLjNsLTEwNCAxMDRjLTQuNiA0LjYtMTEuNSA1LjktMTcuNCAzLjVTMjU2IDM2Ni41IDI1NiAzNjBsMC01Ni05NiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTMyYzAtMTcuNyAxNC4zLTMyIDMyLTMybDk2IDAgMC01NmMwLTYuNSAzLjktMTIuMyA5LjktMTQuOHMxMi45LTEuMSAxNy40IDMuNWwxMDQgMTA0YzYuMiA2LjIgNi4yIDE2LjQgMCAyMi42eiJdfSxnd3I9bERlLGNEZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwaG9uZS12b2x1bWUiLGljb246WzU3Niw1MTIsWyJ2b2x1bWUtY29udHJvbC1waG9uZSJdLCJmMmEwIiwiTTM0NC0zMmMxMjguMSAwIDIzMiAxMDMuOSAyMzIgMjMyIDAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0YzAtMTAxLjYtODIuNC0xODQtMTg0LTE4NC0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0em04IDE5MmEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6TTMyMCA4OGMwLTEzLjMgMTAuNy0yNCAyNC0yNCA3NS4xIDAgMTM2IDYwLjkgMTM2IDEzNiAwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNGMwLTQ4LjYtMzkuNC04OC04OC04OC0xMy4zIDAtMjQtMTAuNy0yNC0yNHpNMTQ0LjEgMS40YzE5LjctNS40IDQwLjMgNC43IDQ4LjEgMjMuNWw0MC41IDk3LjNjNi45IDE2LjUgMi4xIDM1LjYtMTEuOCA0N2wtNDQuMSAzNi4xYzMyLjUgNzEuNiA4OSAxMzAgMTU5LjMgMTY0LjlMMzc0LjcgMzIzYzExLjMtMTMuOSAzMC40LTE4LjYgNDctMTEuOEw1MTkgMzUxLjhjMTguOCA3LjggMjguOSAyOC40IDIzLjUgNDguMWwtMS41IDUuNUM1MjMuNCA0NzAuMSA0NjAuOSA1MjUuMyAzODQuNiA1MDkuMiAyMDkuNiA0NzIuMSA3MS45IDMzNC40IDM0LjggMTU5LjQgMTguNyA4My4xIDczLjkgMjAuNiAxMzguNSAyLjlsNS41LTEuNXoiXX0seHdyPWNEZSxid3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY3ViZXMiLGljb246WzUxMiw1MTIsW10sImYxYjMiLCJNMjg0LTEuM2MtMTcuMy0xMC0zOC43LTEwLTU2IDBMMTQzLjggNDcuM2MtMTcuMyAxMC0yOCAyOC41LTI4IDQ4LjVsMCAxMDEuOS04OC4zIDUxYy0xNy4zIDEwLTI4IDI4LjUtMjggNDguNWwwIDk3LjNjMCAyMCAxMC43IDM4LjUgMjggNDguNWw4NC4zIDQ4LjZjMTcuMyAxMCAzOC43IDEwIDU2IDBsODguMy01MSA4OC4zIDUxYzE3LjMgMTAgMzguNyAxMCA1NiAwTDQ4NC41IDQ0M2MxNy4zLTEwIDI4LTI4LjUgMjgtNDguNWwwLTk3LjNjMC0yMC0xMC43LTM4LjUtMjgtNDguNWwtODguMy01MSAwLTEwMS45YzAtMjAtMTAuNy0zOC41LTI4LTQ4LjVMMjg0LTEuM3pNMjMyIDI5Mi42bDAgMTA2LjUtODguMyA1MWMtMS4yIC43LTIuNiAxLjEtNCAxLjFsMC0xMDUuMyA5Mi4zLTUzLjN6bTIzMS40IC42Yy43IDEuMiAxLjEgMi42IDEuMSA0bDAgOTcuM2MwIDIuOS0xLjUgNS41LTQgNi45bC04NC4zIDQ4LjZjLTEuMiAuNy0yLjYgMS4xLTQgMS4xbDAtMTA1LjMgOTEuMi01Mi42ek0zNDguMyA5NS44bDAgMTAxLjktOTIuMyA1My4zIDAtMTA2LjUgOTEuMi01Mi42Yy43IDEuMiAxLjEgMi42IDEuMSA0eiJdfSx2d3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGhvbmUiLGljb246WzUxMiw1MTIsWzEyODIyMiwxMjgzNzldLCJmMDk1IiwiTTE2MC4yIDI1QzE1Mi4zIDYuMSAxMzEuNy0zLjkgMTEyLjEgMS40bC01LjUgMS41Yy02NC42IDE3LjYtMTE5LjggODAuMi0xMDMuNyAxNTYuNCAzNy4xIDE3NSAxNzQuOCAzMTIuNyAzNDkuOCAzNDkuOCA3Ni4zIDE2LjIgMTM4LjgtMzkuMSAxNTYuNC0xMDMuN2wxLjUtNS41YzUuNC0xOS43LTQuNy00MC4zLTIzLjUtNDguMWwtOTcuMy00MC41Yy0xNi41LTYuOS0zNS42LTIuMS00NyAxMS44bC0zOC42IDQ3LjJDMjMzLjkgMzM1LjQgMTc3LjMgMjc3IDE0NC44IDIwNS4zTDE4OSAxNjkuM2MxMy45LTExLjMgMTguNi0zMC40IDExLjgtNDdMMTYwLjIgMjV6Il19LHl3cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0b3JpaS1nYXRlIixpY29uOls0NDgsNTEyLFs5OTYxXSwiZjZhMSIsIk0wIDk2TDAgMjguNUMwIDIxLjYgNS42IDE2IDEyLjUgMTYgMTQuOCAxNiAxNyAxNi42IDE5IDE3LjhMNTggNDEuMkM4Mi45IDU2LjEgMTExLjMgNjQgMTQwLjMgNjRsMTY3LjQgMGMyOSAwIDU3LjUtNy45IDgyLjMtMjIuOGwzOS0yMy40YzEuOS0xLjIgNC4yLTEuOCA2LjQtMS44IDYuOSAwIDEyLjUgNS42IDEyLjUgMTIuNUw0NDggOTZjMCAzNS4zLTI4LjcgNjQtNjQgNjRsMCA2NCAxNiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC0xNiAwIDAgMTkyYzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMTkyLTE5MiAwIDAgMTkyYzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMTkyLTE2IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsMTYgMCAwLTY0QzI4LjcgMTYwIDAgMTMxLjMgMCA5NnpNMTI4IDIyNGw2NCAwIDAtNjQtNjQgMCAwIDY0em0xMjggMGw2NCAwIDAtNjQtNjQgMCAwIDY0eiJdfSx3d3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYmFjb24iLGljb246WzU3Niw1MTIsWzEyOTM2M10sImY3ZTUiLCJNNTU3IDk2LjdjMTQuNCAxNC40IDEyLjQgMzguNC00LjMgNTAuMmwtNjQuNiA0NS43Yy00My43IDMwLjktNzkuMiA3MS45LTEwMy40IDExOS42bC0yNS4zIDQ5LjhjLTI1LjEgNDkuMy02Mi4xIDkxLjUtMTA3LjggMTIyLjZsLTc0LjEgNTAuNmMtMTMuMSA4LjktMzAuNyA3LjMtNDEuOC0zLjlsLTQ0LjktNDQuOSA4Ni41LTY2LjVjNDIuMy0zMi41IDc2LjctNzQuMyAxMDAuNi0xMjJsMjQuNS00OS4xYzI0LjUtNDkgNjEuOC05MC42IDEwNy45LTEyMC4ybDEwOC43LTY5LjkgMzggMzh6TTQ4NC4yIDIzLjlMMzg0LjMgODguMmMtNTMuNCAzNC4zLTk2LjUgODIuNC0xMjQuOSAxMzkuMWwtMjQuNSA0OS4xYy0yMC42IDQxLjMtNTAuMyA3Ny4zLTg2LjkgMTA1LjRsLTkxLjQgNzAuMy0zNi45LTM2LjljLTE0LjQtMTQuNC0xMi40LTM4LjQgNC4zLTUwLjJsNjQuNi00NS43YzQzLjctMzAuOSA3OS4yLTcxLjkgMTAzLjQtMTE5LjZsMjUuMy00OS44QzI0Mi4zIDEwMC44IDI3OS4zIDU4LjYgMzI1IDI3LjRsNzQuMS01MC42YzEzLjEtOC45IDMwLjYtNy4zIDQxLjggMy45bDQzLjMgNDMuM3oiXX0sTXdyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBlcnNvbi1mYWxsaW5nLWJ1cnN0IixpY29uOls1NzYsNTEyLFtdLCJlNTQ3IiwiTTI1NiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgNS40YzAgNTUuMi0yMy43IDEwNy02My45IDE0My4xbDYyLjkgNzUuNSA4OSAwYzE1LjEgMCAyOS4zIDcuMSAzOC40IDE5LjJsNDMuMiA1Ny42YzEwLjYgMTQuMSA3LjcgMzQuMi02LjQgNDQuOHMtMzQuMiA3LjctNDQuOC02LjRMMzY4IDMyMCAyNjMuMiAzMjAgMzc2LjggNDU5LjhjMTEuMSAxMy43IDkuMSAzMy45LTQuNyA0NXMtMzMuOSA5LjEtNDUtNC43TDEzNy40IDI2Ni42Yy02LjEgMTUtOS40IDMxLjMtOS40IDQ4bDAgNjkuNGMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTY5LjRjMC02Ny40IDM1LjQtMTI5LjkgOTMuMi0xNjQuNmw0LjYtMi44QzIwMC40IDEyNCAyMjQgODIuNCAyMjQgMzcuNGwwLTUuNGMwLTE3LjcgMTQuMy0zMiAzMi0zMnpNMTYgODhBNTYgNTYgMCAxIDEgMTI4IDg4IDU2IDU2IDAgMSAxIDE2IDg4em0zNzYtNy45YzAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0bDAtNDhjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNGwwIDQ4em0xMDQgMTUyYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0bDQ4IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTQ4IDB6bS01NC41LTk3LjVjLTkuNC05LjQtOS40LTI0LjYgMC0zMy45bDMzLjktMzMuOWM5LjQtOS40IDI0LjYtOS40IDMzLjkgMHM5LjQgMjQuNiAwIDMzLjlsLTMzLjkgMzMuOWMtOS40IDkuNC0yNC42IDkuNC0zMy45IDB6Il19LGREZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJxdW90ZS1yaWdodCIsaWNvbjpbNDQ4LDUxMixbODIyMSwicXVvdGUtcmlnaHQtYWx0Il0sImYxMGUiLCJNNDQ4IDI5NmMwIDY2LjMtNTMuNyAxMjAtMTIwIDEyMGwtOCAwYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDggMGMzMC45IDAgNTYtMjUuMSA1Ni01NmwwLTgtNjQgMGMtMzUuMyAwLTY0LTI4LjctNjQtNjRsMC02NGMwLTM1LjMgMjguNy02NCA2NC02NGw2NCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMTM2em0tMjU2IDBjMCA2Ni4zLTUzLjcgMTIwLTEyMCAxMjBsLTggMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMmw4IDBjMzAuOSAwIDU2LTI1LjEgNTYtNTZsMC04LTY0IDBjLTM1LjMgMC02NC0yOC43LTY0LTY0bDAtNjRjMC0zNS4zIDI4LjctNjQgNjQtNjRsNjQgMGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDEzNnoiXX0sa3dyPWREZSxTd3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaG91c2UtbWVkaWNhbC1mbGFnIixpY29uOls2NDAsNTEyLFtdLCJlNTE0IiwiTTQ4MCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDk2IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCA5NmMwIDE3LjctMTQuMyAzMi0zMiAzMmwtOTYgMCAwIDI4OGMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTQ0OGMwLTE3LjcgMTQuMy0zMiAzMi0zMnpNMjY3LjUgNTkuMUw0MDAgMTg2LjkgNDAwIDUwMy40Yy05LjQgNS40LTIwLjMgOC42LTMyIDguNmwtMjU2IDBjLTM1LjMgMC02NC0yOC43LTY0LTY0bDAtMTQ0LTE5LjkgMEMxMi42IDMwNCAwIDI5MS40IDAgMjc1LjkgMCAyNjguMyAzLjEgMjYxIDguNiAyNTUuN0wyMTIuNSA1OS4xQzIxOS45IDUyIDIyOS43IDQ4IDI0MCA0OHMyMC4xIDQgMjcuNSAxMS4xek0yMDQuOCAyNTYuOGwwIDQ0LTQ0IDBjLTkuNyAwLTE3LjYgNy45LTE3LjYgMTcuNmwwIDM1LjJjMCA5LjcgNy45IDE3LjYgMTcuNiAxNy42bDQ0IDAgMCA0NGMwIDkuNyA3LjkgMTcuNiAxNy42IDE3LjZsMzUuMiAwYzkuNyAwIDE3LjYtNy45IDE3LjYtMTcuNmwwLTQ0IDQ0IDBjOS43IDAgMTcuNi03LjkgMTcuNi0xNy42bDAtMzUuMmMwLTkuNy03LjktMTcuNi0xNy42LTE3LjZsLTQ0IDAgMC00NGMwLTkuNy03LjktMTcuNi0xNy42LTE3LjZsLTM1LjIgMGMtOS43IDAtMTcuNiA3LjktMTcuNiAxNy42eiJdfSx6d3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicHJlc2NyaXB0aW9uIixpY29uOls0NDgsNTEyLFtdLCJmNWIxIiwiTTMyIDBDMTQuMyAwIDAgMTQuMyAwIDMyTDAgMjg4YzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC02NCA1MC43IDAgMTI4IDEyOC0xMDUuNCAxMDUuNGMtMTIuNSAxMi41LTEyLjUgMzIuOCAwIDQ1LjNzMzIuOCAxMi41IDQ1LjMgMEwyODggMzk3LjMgMzkzLjQgNTAyLjZjMTIuNSAxMi41IDMyLjggMTIuNSA0NS4zIDBzMTIuNS0zMi44IDAtNDUuM0wzMzMuMyAzNTIgNDM4LjYgMjQ2LjZjMTIuNS0xMi41IDEyLjUtMzIuOCAwLTQ1LjNzLTMyLjgtMTIuNS00NS4zIDBMMjg4IDMwNi43IDIwMi4yIDIyMC45QzI1MS40IDIwOS4xIDI4OCAxNjQuOCAyODggMTEyIDI4OCA1MC4xIDIzNy45IDAgMTc2IDBMMzIgMHpNMTc2IDE2MGwtMTEyIDAgMC05NiAxMTIgMGMyNi41IDAgNDggMjEuNSA0OCA0OHMtMjEuNSA0OC00OCA0OHoiXX0sQ3dyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImRpY2UtdGhyZWUiLGljb246WzQ0OCw1MTIsWzk4NThdLCJmNTI3IiwiTTY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzIwIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zMjBjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzJ6bTY0IDk2YTMyIDMyIDAgMSAxIDAgNjQgMzIgMzIgMCAxIDEgMC02NHptNjQgMTI4YTMyIDMyIDAgMSAxIDY0IDAgMzIgMzIgMCAxIDEgLTY0IDB6bTEyOCA2NGEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6Il19LF93cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJidWlsZGluZy1sb2NrIixpY29uOls1NzYsNTEyLFtdLCJlNGQ2IiwiTTMyIDY0QzMyIDI4LjcgNjAuNyAwIDk2IDBMMzUyIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAxMjEuM2MtNDYuOSAxOS04MCA2NS04MCAxMTguN2wwIDI0LjRjLTE5LjYgMTcuNi0zMiA0My4xLTMyIDcxLjVsMCA5NmMwIDUuNSAuNSAxMC45IDEuMyAxNi4xTDk2IDUxMmMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMzIgNjR6TTE3NiAzODRsMCA4MCA4MCAwIDAtNjQuMWMwLTEzLjcgMS45LTI3IDUuNS0zOS42LTUuNy01LjItMTMuMi04LjMtMjEuNS04LjNsLTMyIDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyek0zMDcgMjI0LjNjLTEtLjItMi0uMy0zLS4zbC0zMiAwYy04LjggMC0xNiA3LjItMTYgMTZsMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZsMTYuNyAwYzIuMS0yMi44IDguNC00NC4zIDE4LjMtNjMuN3pNMTQ0IDk2Yy04LjggMC0xNiA3LjItMTYgMTZsMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZsMzIgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0zMmMwLTguOC03LjItMTYtMTYtMTZsLTMyIDB6bTExMiAxNmwwIDMyYzAgOC44IDcuMiAxNiAxNiAxNmwzMiAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMGMtOC44IDAtMTYgNy4yLTE2IDE2ek0xNDQgMjI0Yy04LjggMC0xNiA3LjItMTYgMTZsMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZsMzIgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0zMmMwLTguOC03LjItMTYtMTYtMTZsLTMyIDB6bTM1MiA4MC4xYzAtMTcuNy0xNC4zLTMyLTMyLTMycy0zMiAxNC4zLTMyIDMybDAgNDcuOSA2NCAwIDAtNDcuOXpNMzUyIDQwMGMwLTIwLjkgMTMuNC0zOC43IDMyLTQ1LjNsMC01MC42YzAtNDQuMiAzNS44LTgwIDgwLTgwczgwIDM1LjggODAgODBsMCA1MC42YzE4LjYgNi42IDMyIDI0LjQgMzIgNDUuM2wwIDk2YzAgMjYuNS0yMS41IDQ4LTQ4IDQ4bC0xMjggMGMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhsMC05NnoiXX0sdURlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImlkLWNhcmQiLGljb246WzU3Niw1MTIsWzYyMTQ3LCJkcml2ZXJzLWxpY2Vuc2UiXSwiZjJjMiIsIk0wIDk2QzAgNjAuNyAyOC43IDMyIDY0IDMybDQ0OCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0TDAgOTZ6bTAgNDhsNTc2IDAgMCAyNzJjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDE0NHpNMjQ3LjMgNDE2YzIwLjIgMCAzNS4zLTE5LjQgMjIuNC0zNS0xNC43LTE3LjctMzYuOS0yOS02MS43LTI5bC02NCAwYy0yNC44IDAtNDcgMTEuMy02MS43IDI5LTEyLjkgMTUuNiAyLjIgMzUgMjIuNCAzNWwxNDIuNSAwek0xNzYgMzEyYTU2IDU2IDAgMSAwIDAtMTEyIDU2IDU2IDAgMSAwIDAgMTEyek0zNjAgMjA4Yy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDExMiAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC0xMTIgMHptMCA5NmMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwxMTIgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtMTEyIDB6Il19LFR3cj11RGUsZkRlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNpcmNsZS1wbGF5IixpY29uOls1MTIsNTEyLFs2MTQ2OSwicGxheS1jaXJjbGUiXSwiZjE0NCIsIk0wIDI1NmEyNTYgMjU2IDAgMSAxIDUxMiAwIDI1NiAyNTYgMCAxIDEgLTUxMiAwek0xODguMyAxNDcuMWMtNy42IDQuMi0xMi4zIDEyLjMtMTIuMyAyMC45bDAgMTc2YzAgOC43IDQuNyAxNi43IDEyLjMgMjAuOXMxNi44IDQuMSAyNC4zLS41bDE0NC04OGM3LjEtNC40IDExLjUtMTIuMSAxMS41LTIwLjVzLTQuNC0xNi4xLTExLjUtMjAuNWwtMTQ0LTg4Yy03LjQtNC41LTE2LjctNC43LTI0LjMtLjV6Il19LEx3cj1mRGUscERlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZhY2UtbGF1Z2gtYmVhbSIsaWNvbjpbNTEyLDUxMixbMTI4NTEzLCJsYXVnaC1iZWFtIl0sImY1OWEiLCJNMjU2IDUxMmEyNTYgMjU2IDAgMSAwIDAtNTEyIDI1NiAyNTYgMCAxIDAgMCA1MTJ6TTEwMS42IDMxNGMtMy43LTEzLjcgNy41LTI2IDIxLjctMjZsMjY1LjQgMGMxNC4yIDAgMjUuNCAxMi4zIDIxLjcgMjYtMTguNSA2OC04MC42IDExOC0xNTQuNCAxMThTMTIwIDM4MiAxMDEuNiAzMTR6TTE3NiAxNjRjLTE1LjUgMC0yOCAxMi41LTI4IDI4bDAgOGMwIDExLTkgMjAtMjAgMjBzLTIwLTktMjAtMjBsMC04YzAtMzcuNiAzMC40LTY4IDY4LTY4czY4IDMwLjQgNjggNjhsMCA4YzAgMTEtOSAyMC0yMCAyMHMtMjAtOS0yMC0yMGwwLThjMC0xNS41LTEyLjUtMjgtMjgtMjh6bTEzMiAyOGwwIDhjMCAxMS05IDIwLTIwIDIwcy0yMC05LTIwLTIwbDAtOGMwLTM3LjYgMzAuNC02OCA2OC02OHM2OCAzMC40IDY4IDY4bDAgOGMwIDExLTkgMjAtMjAgMjBzLTIwLTktMjAtMjBsMC04YzAtMTUuNS0xMi41LTI4LTI4LTI4cy0yOCAxMi41LTI4IDI4eiJdfSxEd3I9cERlLEF3cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJsZWFmIixpY29uOls1MTIsNTEyLFtdLCJmMDZjIiwiTTQ3MS4zIDYuN0M0NzcuNyAuNiA0ODctMS42IDQ5NS42IDEuMiA1MDUuNCA0LjUgNTEyIDEzLjcgNTEyIDI0bDAgMTg2LjljMCAxMzEuMi0xMDguMSAyMzcuMS0yMzguOCAyMzcuMS03NyAwLTE0My40LTQ5LjUtMTY3LjUtMTE4LjctMzUuNCAzMC44LTU3LjcgNzYuMS01Ny43IDEyNi43IDAgMTMuMy0xMC43IDI0LTI0IDI0UzAgNDY5LjMgMCA0NTZDMCAzODEuMSAzOC4yIDMxNS4xIDk2LjEgMjc2LjMgMTMxLjQgMjUyLjcgMTczLjUgMjQwIDIxNiAyNDBsODAgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtODAgMGMtMzkuNyAwLTc3LjMgOC44LTExMSAyNC41IDIzLjMtNzAgODkuMi0xMjAuNSAxNjctMTIwLjUgNjYuNCAwIDExNS44LTIyLjEgMTQ4LjctNDQgMTkuMi0xMi44IDM1LjUtMjguMSA1MC43LTQ1LjN6Il19LEV3cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJob3VzZS1jaGltbmV5LXVzZXIiLGljb246WzUxMiw1MTIsW10sImUwNjUiLCJNMjM0LjIgOC42YzEyLjMtMTEuNCAzMS4zLTExLjQgNDMuNSAwTDM2OCA5Mi4zIDM2OCA4MGMwLTE3LjcgMTQuMy0zMiAzMi0zMmwzMiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMTAxLjUgMzcuOCAzNS4xYzkuNiA5IDEyLjggMjIuOSA4IDM1LjFTNDkzLjIgMjcyIDQ4MCAyNzJsLTE2IDAgMCAxNzZjMCAzNS4zLTI4LjcgNjQtNjQgNjRsLTI4OCAwYy0zNS4zIDAtNjQtMjguNy02NC02NGwwLTE3Ni0xNiAwYy0xMy4yIDAtMjUtOC4xLTI5LjgtMjAuM3MtMS42LTI2LjIgOC0zNS4xbDIyNC0yMDh6TTMxMiAyNTZhNTYgNTYgMCAxIDAgLTExMiAwIDU2IDU2IDAgMSAwIDExMiAwek0xNDQgNDMyYzAgOC44IDcuMiAxNiAxNiAxNmwxOTIgMGM4LjggMCAxNi03LjIgMTYtMTYgMC00NC4yLTM1LjgtODAtODAtODBsLTY0IDBjLTQ0LjIgMC04MCAzNS44LTgwIDgweiJdfSxUMmU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicm90YXRlLXJpZ2h0IixpY29uOls1MTIsNTEyLFsicmVkby1hbHQiLCJyb3RhdGUtZm9yd2FyZCJdLCJmMmY5IiwiTTQ4OCAxOTJsLTE0NCAwYy05LjcgMC0xOC41LTUuOC0yMi4yLTE0LjhzLTEuNy0xOS4zIDUuMi0yNi4ybDQ2LjctNDYuN2MtNzUuMy01OC42LTE4NC4zLTUzLjMtMjUzLjUgMTUuOS03NSA3NS03NSAxOTYuNSAwIDI3MS41czE5Ni41IDc1IDI3MS41IDBjOC4yLTguMiAxNS41LTE2LjkgMjEuOS0yNi4xIDEwLjEtMTQuNSAzMC4xLTE4IDQ0LjYtNy45czE4IDMwLjEgNy45IDQ0LjZjLTguNSAxMi4yLTE4LjIgMjMuOC0yOS4xIDM0LjctMTAwIDEwMC0yNjIuMSAxMDAtMzYyIDBTLTI1IDE3NSA3NSA3NWM5NC4zLTk0LjMgMjQzLjctOTkuNiAzNDQuMy0xNi4yTDQ3MSA3YzYuOS02LjkgMTcuMi04LjkgMjYuMi01LjJTNTEyIDE0LjMgNTEyIDI0bDAgMTQ0YzAgMTMuMy0xMC43IDI0LTI0IDI0eiJdfSwkd3I9VDJlLFB3cj1UMmUsSXdyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRvb3RoIixpY29uOls0NDgsNTEyLFsxMjk0NjNdLCJmNWM5IiwiTTE0NSA1LjdMMjI0IDMyIDMwMyA1LjdDMzE0LjMgMS45IDMyNiAwIDMzNy45IDAgMzk4LjcgMCA0NDggNDkuMyA0NDggMTEwLjFsMCA2OC41YzAgMjkuNC05LjUgNTguMS0yNy4yIDgxLjZsLTEuMSAxLjVjLTEyLjkgMTcuMi0yMS4zIDM3LjQtMjQuMyA1OC43TDM3My43IDQ3MS45Yy0zLjMgMjMtMjMgNDAuMS00Ni4yIDQwLjEtMjIuOCAwLTQyLjMtMTYuNS00Ni0zOUwyNjEuMyAzNTEuNmMtMy0xOC4yLTE4LjgtMzEuNi0zNy4zLTMxLjZzLTM0LjIgMTMuNC0zNy4zIDMxLjZMMTY2LjUgNDczYy0zLjggMjIuNS0yMy4yIDM5LTQ2IDM5LTIzLjIgMC00Mi45LTE3LjEtNDYuMi00MC4xTDUyLjYgMzIwLjVjLTMtMjEuMy0xMS40LTQxLjUtMjQuMy01OC43bC0xLjEtMS41QzkuNSAyMzYuNyAwIDIwOC4xIDAgMTc4LjdsMC02OC41QzAgNDkuMyA0OS4zIDAgMTEwLjEgMCAxMjIgMCAxMzMuNyAxLjkgMTQ1IDUuN3oiXX0sTndyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhvdXNlLWNoaW1uZXktd2luZG93IixpY29uOls1MTIsNTEyLFtdLCJlMDBkIiwiTTIzNC4yIDguNmMxMi4zLTExLjQgMzEuMy0xMS40IDQzLjUgMEwzNjggOTIuMyAzNjggODBjMC0xNy43IDE0LjMtMzIgMzItMzJsMzIgMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDEwMS41IDM3LjggMzUuMWM5LjYgOSAxMi44IDIyLjkgOCAzNS4xUzQ5My4yIDI3MiA0ODAgMjcybC0xNiAwIDAgMTc2YzAgMzUuMy0yOC43IDY0LTY0IDY0bC0yODggMGMtMzUuMyAwLTY0LTI4LjctNjQtNjRsMC0xNzYtMTYgMGMtMTMuMiAwLTI1LTguMS0yOS44LTIwLjNzLTEuNi0yNi4yIDgtMzUuMWwyMjQtMjA4ek0yMTYgMjI0Yy0xMy4zIDAtMjQgMTAuNy0yNCAyNGwwIDgwYzAgMTMuMyAxMC43IDI0IDI0IDI0bDgwIDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRsMC04MGMwLTEzLjMtMTAuNy0yNC0yNC0yNGwtODAgMHoiXX0sRndyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im1vdG9yY3ljbGUiLGljb246WzY0MCw1MTIsWzEyNzk0OV0sImYyMWMiLCJNMjgwIDE2Yy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDU2LjYgMCAyMi41IDQ4LjctOTUuMSA3MS4zYy0zMy40LTI1LjEtNzUtNDAtMTIwLTQwbC01NiAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDU2IDBjNzguNSAwIDE0My4yIDU5LjYgMTUxLjIgMTM2bC0yNS40IDBjLTExLjItNTkuMi02My4zLTEwNC0xMjUuOC0xMDQtNzAuNyAwLTEyOCA1Ny4zLTEyOCAxMjhTNzMuMyA0ODAgMTQ0IDQ4MGM2Mi41IDAgMTE0LjUtNDQuOCAxMjUuOC0xMDRsNTAuMiAwYzEzLjMgMCAyNC0xMC43IDI0LTI0bDAtMjIuNWMwLTQ1LjEgMjUuNy04NS40IDY1LjUtMTA3LjdsMTIuMSAyNi4xYy0zMi40IDIzLjItNTMuNSA2MS4yLTUzLjUgMTA0LjEgMCA3MC43IDU3LjMgMTI4IDEyOCAxMjhzMTI4LTU3LjMgMTI4LTEyOC01Ny4zLTEyOC0xMjgtMTI4Yy0xMC43IDAtMjEgMS4zLTMwLjkgMy44TDQzMy44IDE2MCA0ODggMTYwYzEzLjMgMCAyNC0xMC43IDI0LTI0bDAtNDhjMC0xMy4zLTEwLjctMjQtMjQtMjRsLTUzLjMgMGMtNi45IDAtMTMuNyAyLjItMTkuMiA2LjRsLTE3LjEgMTIuOC0yNC42LTUzLjNDMzY5LjkgMjEuNCAzNjEuNCAxNiAzNTIgMTZsLTcyIDB6TTQ0NS44IDMwMC40bDI4LjQgNjEuNmM1LjYgMTIgMTkuOCAxNy4zIDMxLjggMTEuN3MxNy4zLTE5LjggMTEuNy0zMS44bC0yOC41LTYxLjZjMi4yLS4yIDQuNC0uMyA2LjctLjMgMzkuOCAwIDcyIDMyLjIgNzIgNzJzLTMyLjIgNzItNzIgNzItNzItMzIuMi03Mi03MmMwLTIwLjIgOC4zLTM4LjUgMjEuOC01MS42ek0xNDQgNDI0Yy0zOS44IDAtNzItMzIuMi03Mi03MnMzMi4yLTcyIDcyLTcyYzMxLjMgMCA1OCAyMCA2Ny45IDQ4TDE0NCAzMjhjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsNjcuOSAwYy05LjkgMjgtMzYuNiA0OC02Ny45IDQ4eiJdfSxoRGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYmFja3dhcmQtZmFzdCIsaWNvbjpbNTEyLDUxMixbOTE5OCwiZmFzdC1iYWNrd2FyZCJdLCJmMDQ5IiwiTTQ5Mi4yIDQ3Ny42Yy0xMiA1LTI1LjcgMi4yLTM0LjktNi45TDI4OCAzMDEuMyAyODggNDQ4YzAgMTIuOS03LjggMjQuNi0xOS44IDI5LjZzLTI1LjcgMi4yLTM0LjktNi45TDY0IDMwMS4zIDY0IDQ0OGMwIDE3LjctMTQuMyAzMi0zMiAzMlMwIDQ2NS43IDAgNDQ4TDAgNjRDMCA0Ni4zIDE0LjMgMzIgMzIgMzJTNjQgNDYuMyA2NCA2NEw2NCAyMTAuNyAyMzMuNCA0MS40YzkuMi05LjIgMjIuOS0xMS45IDM0LjktNi45UzI4OCA1MS4xIDI4OCA2NGwwIDE0Ni43IDE2OS40LTE2OS40YzkuMi05LjIgMjIuOS0xMS45IDM0LjktNi45UzUxMiA1MS4xIDUxMiA2NGwwIDM4NGMwIDEyLjktNy44IDI0LjYtMTkuOCAyOS42eiJdfSxPd3I9aERlLG1EZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJhZGRyZXNzLWJvb2siLGljb246WzUxMiw1MTIsWzYyMTM4LCJjb250YWN0LWJvb2siXSwiZjJiOSIsIk05NiAwQzYwLjcgMCAzMiAyOC43IDMyIDY0bDAgMzg0YzAgMzUuMyAyOC43IDY0IDY0IDY0bDI4OCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMzg0YzAtMzUuMy0yOC43LTY0LTY0LTY0TDk2IDB6TTIwOCAyODhsNjQgMGM0NC4yIDAgODAgMzUuOCA4MCA4MCAwIDguOC03LjIgMTYtMTYgMTZsLTE5MiAwYy04LjggMC0xNi03LjItMTYtMTYgMC00NC4yIDM1LjgtODAgODAtODB6bS0yNC05NmE1NiA1NiAwIDEgMSAxMTIgMCA1NiA1NiAwIDEgMSAtMTEyIDB6TTUxMiA4MGMwLTguOC03LjItMTYtMTYtMTZzLTE2IDcuMi0xNiAxNmwwIDY0YzAgOC44IDcuMiAxNiAxNiAxNnMxNi03LjIgMTYtMTZsMC02NHptMCAxMjhjMC04LjgtNy4yLTE2LTE2LTE2cy0xNiA3LjItMTYgMTZsMCA2NGMwIDguOCA3LjIgMTYgMTYgMTZzMTYtNy4yIDE2LTE2bDAtNjR6TTQ5NiAzMjBjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDY0YzAgOC44IDcuMiAxNiAxNiAxNnMxNi03LjIgMTYtMTZsMC02NGMwLTguOC03LjItMTYtMTYtMTZ6Il19LFJ3cj1tRGUsQndyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNhaWxib2F0IixpY29uOls1MTIsNTEyLFtdLCJlNDQ1IiwiTTI0MCAzNS45bDAgMzQ4LjEtMjI0IDBjLTguOCAwLTE2IDcuMi0xNiAxNiAwIDYxLjkgNTAuMSAxMTIgMTEyIDExMmwyODggMGM2MS45IDAgMTEyLTUwLjEgMTEyLTExMiAwLTguOC03LjItMTYtMTYtMTZsLTIwOCAwIDAtNDggMTYxLjcgMGMxMi45IDAgMjAuNS0xNC40IDEzLjItMjVMMjY5LjIgMjYuOWMtOC45LTEzLTI5LjItNi43LTI5LjIgOXpNMTkyIDMyMGwwLTE4NC4yYzAtMTYuMS0yMS0yMi4xLTI5LjYtOC41TDQ3LjMgMzExLjVjLTYuNyAxMC43IDEgMjQuNSAxMy42IDI0LjVMMTc2IDMzNmM4LjggMCAxNi03LjIgMTYtMTZ6Il19LEh3cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJib29rLWJvb2ttYXJrIixpY29uOls0NDgsNTEyLFtdLCJlMGJiIiwiTTk2IDUxMmwzMjAgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwwLTY2LjdjMTguNi02LjYgMzItMjQuNCAzMi00NS4zbDAtMjg4YzAtMjYuNS0yMS41LTQ4LTQ4LTQ4bC00OCAwIDAgMTY5LjRjMCAxMi41LTEwLjEgMjIuNi0yMi42IDIyLjYtNiAwLTExLjgtMi40LTE2LTYuNkwyNzIgMTQ0IDIzMC42IDE4NS40Yy00LjIgNC4yLTEwIDYuNi0xNiA2LjYtMTIuNSAwLTIyLjYtMTAuMS0yMi42LTIyLjZMMTkyIDAgOTYgMEM0MyAwIDAgNDMgMCA5NkwwIDQxNmMwIDUzIDQzIDk2IDk2IDk2ek02NCA0MTZjMC0xNy43IDE0LjMtMzIgMzItMzJsMjU2IDAgMCA2NC0yNTYgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJ6Il19LHF3cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtYWduaWZ5aW5nLWdsYXNzLWFycm93LXJpZ2h0IixpY29uOls1MTIsNTEyLFtdLCJlNTIxIiwiTTQxNiAyMDhjMCA0NS45LTE0LjkgODguMy00MCAxMjIuN0w1MDIuNiA0NTcuNGMxMi41IDEyLjUgMTIuNSAzMi44IDAgNDUuM3MtMzIuOCAxMi41LTQ1LjMgMEwzMzAuNyAzNzZDMjk2LjMgNDAxLjEgMjUzLjkgNDE2IDIwOCA0MTYgOTMuMSA0MTYgMCAzMjIuOSAwIDIwOFM5My4xIDAgMjA4IDAgNDE2IDkzLjEgNDE2IDIwOHpNMzA1IDIyNWM5LjQtOS40IDkuNC0yNC42IDAtMzMuOWwtNzItNzJjLTkuNC05LjQtMjQuNi05LjQtMzMuOSAwcy05LjQgMjQuNiAwIDMzLjlsMzEgMzEtMTAyLjEgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwxMDIuMSAwLTMxIDMxYy05LjQgOS40LTkuNCAyNC42IDAgMzMuOXMyNC42IDkuNCAzMy45IDBsNzItNzJ6Il19LGdEZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtaWNyb3Bob25lLWxpbmVzIixpY29uOlszODQsNTEyLFsxMjc4OTcsIm1pY3JvcGhvbmUtYWx0Il0sImYzYzkiLCJNOTYgOTZjMC01MyA0My05NiA5Ni05NiA1MC4zIDAgOTEuNiAzOC43IDk1LjcgODhMMjMyIDg4Yy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDU2IDAgMCA0OC01NiAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDU1LjcgMGMtNC4xIDQ5LjMtNDUuMyA4OC05NS43IDg4LTUzIDAtOTYtNDMtOTYtOTZMOTYgOTZ6TTI0IDE2MGMxMy4zIDAgMjQgMTAuNyAyNCAyNGwwIDQwYzAgNzkuNSA2NC41IDE0NCAxNDQgMTQ0czE0NC02NC41IDE0NC0xNDRsMC00MGMwLTEzLjMgMTAuNy0yNCAyNC0yNHMyNCAxMC43IDI0IDI0bDAgNDBjMCA5Ny45LTczLjMgMTc4LjctMTY4IDE5MC41bDAgNDkuNSA0OCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC0xNDQgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNGw0OCAwIDAtNDkuNUM3My4zIDQwMi43IDAgMzIxLjkgMCAyMjRsMC00MGMwLTEzLjMgMTAuNy0yNCAyNC0yNHoiXX0sandyPWdEZSx4RGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicmVwbHktYWxsIixpY29uOls1NzYsNTEyLFsibWFpbC1yZXBseS1hbGwiXSwiZjEyMiIsIk0zMzIuMiAxOC40YzEyIDUgMTkuOCAxNi42IDE5LjggMjkuNmwwIDgwIDQ4IDBjOTcuMiAwIDE3NiA3OC44IDE3NiAxNzYgMCAxMTMuMy04MS41IDE2My45LTEwMC4yIDE3NC4xLTIuNSAxLjQtNS4zIDEuOS04LjEgMS45LTEwLjkgMC0xOS43LTguOS0xOS43LTE5LjcgMC03LjUgNC4zLTE0LjQgOS44LTE5LjUgOS40LTguOCAyMi4yLTI2LjQgMjIuMi01Ni43IDAtNTMtNDMtOTYtOTYtOTZsLTMyIDAgMCA4MGMwIDEyLjktNy44IDI0LjYtMTkuOCAyOS42cy0yNS43IDIuMi0zNC45LTYuOWwtMTYwLTE2MGMtMTIuNS0xMi41LTEyLjUtMzIuOCAwLTQ1LjNsMTYwLTE2MGM5LjItOS4yIDIyLjktMTEuOSAzNC45LTYuOXpNMjA1LjYgMjMuMWM5LjQgOS40IDkuNCAyNC42IDAgMzMuOUw1NC42IDIwOCAyMDUuNiAzNTguOWM5LjQgOS40IDkuNCAyNC42IDAgMzMuOXMtMjQuNiA5LjQtMzMuOSAwTDEwIDIzMS4yYy02LjQtNi0xMC0xNC40LTEwLTIzLjJzMy42LTE3LjIgMTAtMjMuMkwxNzEuNiAyMy4xYzkuNC05LjQgMjQuNi05LjQgMzMuOSAweiJdfSxWd3I9eERlLFV3cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ1bml2ZXJzYWwtYWNjZXNzIixpY29uOls1MTIsNTEyLFtdLCJmMjlhIiwiTTAgMjU2YTI1NiAyNTYgMCAxIDEgNTEyIDAgMjU2IDI1NiAwIDEgMSAtNTEyIDB6bTE2MS41LTg2LjFjLTEyLjItNS4yLTI2LjMgLjQtMzEuNSAxMi42cy40IDI2LjMgMTIuNiAzMS41bDExLjkgNS4xYzE3LjMgNy40IDM1LjIgMTIuOSA1My42IDE2LjNsMCA1MC4xYzAgNC4zLS43IDguNi0yLjEgMTIuNmwtMjguNyA4Ni4xYy00LjIgMTIuNiAyLjYgMjYuMiAxNS4yIDMwLjRzMjYuMi0yLjYgMzAuNC0xNS4ybDI0LjQtNzMuMmMxLjMtMy44IDQuOC02LjQgOC44LTYuNHM3LjYgMi42IDguOCA2LjRsMjQuNCA3My4yYzQuMiAxMi42IDE3LjggMTkuNCAzMC40IDE1LjJTMzM5IDM5NyAzMzQuOCAzODQuNGwtMjguNy04Ni4xYy0xLjQtNC4xLTIuMS04LjMtMi4xLTEyLjZsMC01MC4xYzE4LjQtMy41IDM2LjMtOC45IDUzLjYtMTYuM2wxMS45LTUuMWMxMi4yLTUuMiAxNy44LTE5LjMgMTIuNi0zMS41cy0xOS4zLTE3LjgtMzEuNS0xMi42TDMzOC43IDE3NWMtMjYuMSAxMS4yLTU0LjIgMTctODIuNyAxN3MtNTYuNS01LjgtODIuNy0xN2wtMTEuOS01LjF6TTI1NiAxNjBhNDAgNDAgMCAxIDAgMC04MCA0MCA0MCAwIDEgMCAwIDgweiJdfSxMMmU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidG9pbGV0LXBhcGVyIixpY29uOls1MTIsNTEyLFsxMjk1MzEsNjMyNjMsInRvaWxldC1wYXBlci1hbHQiLCJ0b2lsZXQtcGFwZXItYmxhbmsiXSwiZjcxZSIsIk0zMjcuMSAzMmMtOC44IDExLjEtMTYgMjMuMS0yMS45IDM0LjgtMjEuNCA0Mi43LTMzLjIgOTguNC0zMy4yIDE1Ny4ybDAgMjY0YzAgMzAuOS0yNS4xIDU2LTU2IDU2TDU2IDU0NGMtMzAuOSAwLTU2LTI1LjEtNTYtNTZMMCAyMjRDMCAxMTggNDMgMzIgOTYgMzJsMjMxLjEgMHpNNDE2IDQxNmMtNTMgMC05Ni04Ni05Ni0xOTJzNDMtMTkyIDk2LTE5MiA5NiA4NiA5NiAxOTItNDMgMTkyLTk2IDE5MnptMC0xMjhjMTcuNyAwIDMyLTI4LjcgMzItNjRzLTE0LjMtNjQtMzItNjQtMzIgMjguNy0zMiA2NCAxNC4zIDY0IDMyIDY0eiJdfSxXd3I9TDJlLEd3cj1MMmUsWXdyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InZyLWNhcmRib2FyZCIsaWNvbjpbNTc2LDUxMixbXSwiZjcyOSIsIk01MTIgOTZMNjQgOTZDMjguNyA5NiAwIDEyNC43IDAgMTYwTDAgMzUyYzAgMzUuMyAyOC43IDY0IDY0IDY0bDExNy41IDBjMTcgMCAzMy4zLTYuNyA0NS4zLTE4LjdsMzMuOS0zMy45YzcuMi03LjIgMTcuMS0xMS4zIDI3LjMtMTEuM3MyMC4xIDQuMSAyNy4zIDExLjNsMzMuOSAzMy45YzEyIDEyIDI4LjMgMTguNyA0NS4zIDE4LjdMNTEyIDQxNmMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTE5MmMwLTM1LjMtMjguNy02NC02NC02NHpNODAgMjQwYTY0IDY0IDAgMSAxIDEyOCAwIDY0IDY0IDAgMSAxIC0xMjggMHptMzUyLTY0YTY0IDY0IDAgMSAxIDAgMTI4IDY0IDY0IDAgMSAxIDAtMTI4eiJdfSxad3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGl6emEtc2xpY2UiLGljb246WzUxMiw1MTIsW10sImY4MTgiLCJNMTY5LjcgLjljLTIyLjgtMS42LTQxLjkgMTQtNDcuNSAzNC43TDExMi41IDcyQzI5My4zIDcyLjMgNDM5LjcgMjE4LjcgNDQwIDM5OS41bDM2LjQtOS43YzIwLjgtNS41IDM2LjMtMjQuNyAzNC43LTQ3LjUtMTIuNi0xODIuOC0xNTguNi0zMjguOC0zNDEuNC0zNDEuNHptMjIyIDQxMS41Yy4yLTQuMSAuMy04LjIgLjMtMTIuNCAwLTE1NC42LTEyNS40LTI4MC0yODAtMjgwLTQuMSAwLTguMyAuMS0xMi40IC4zTC41IDQ5MS45Yy0xLjUgNS41IC4xIDExLjQgNC4xIDE1LjRzOS45IDUuNiAxNS40IDQuMWwzNzEuNi05OS4xek0xNzYgMjA4YTMyIDMyIDAgMSAxIDAgNjQgMzIgMzIgMCAxIDEgMC02NHptNjQgMTI4YTMyIDMyIDAgMSAxIDY0IDAgMzIgMzIgMCAxIDEgLTY0IDB6TTk2IDM4NGEzMiAzMiAwIDEgMSA2NCAwIDMyIDMyIDAgMSAxIC02NCAweiJdfSxYd3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic3ByYXktY2FuIixpY29uOls1NzYsNTEyLFtdLCJmNWJkIiwiTTE5MiAwbDY0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCA4MC0xMjggMCAwLTgwYzAtMTcuNyAxNC4zLTMyIDMyLTMyek02NCAyNTZjMC01MyA0My05NiA5Ni05NmwxMjggMGM1MyAwIDk2IDQzIDk2IDk2bDAgMjA4YzAgMjYuNS0yMS41IDQ4LTQ4IDQ4bC0yMjQgMGMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhsMC0yMDh6bTI0MCA4MGE4MCA4MCAwIDEgMCAtMTYwIDAgODAgODAgMCAxIDAgMTYwIDB6TTMyMCA2NGEzMiAzMiAwIDEgMSA2NCAwIDMyIDMyIDAgMSAxIC02NCAwek00NDggMzJhMzIgMzIgMCAxIDEgMCA2NCAzMiAzMiAwIDEgMSAwLTY0em02NCAzMmEzMiAzMiAwIDEgMSA2NCAwIDMyIDMyIDAgMSAxIC02NCAwem0zMiA2NGEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6TTUxMiAyNTZhMzIgMzIgMCAxIDEgNjQgMCAzMiAzMiAwIDEgMSAtNjQgMHpNNDQ4IDEyOGEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6Il19LGJEZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ2b2x1bWUtbG93IixpY29uOls0NDgsNTEyLFsxMjgyNjQsInZvbHVtZS1kb3duIl0sImYwMjciLCJNNDggMzUybDQ4IDAgMTM0LjEgMTE5LjJjNi40IDUuNyAxNC42IDguOCAyMy4xIDguOCAxOS4yIDAgMzQuOC0xNS42IDM0LjgtMzQuOGwwLTM3OC40YzAtMTkuMi0xNS42LTM0LjgtMzQuOC0zNC44LTguNSAwLTE2LjcgMy4xLTIzLjEgOC44TDk2IDE2MCA0OCAxNjBjLTI2LjUgMC00OCAyMS41LTQ4IDQ4bDAgOTZjMCAyNi41IDIxLjUgNDggNDggNDh6TTM4MC42IDE4MS41Yy0xMC4zLTguNC0yNS40LTYuOC0zMy44IDMuNXMtNi44IDI1LjQgMy41IDMzLjhDMzYxLjEgMjI3LjYgMzY4IDI0MSAzNjggMjU2cy02LjkgMjguNC0xNy43IDM3LjNjLTEwLjMgOC40LTExLjggMjMuNS0zLjUgMzMuOHMyMy41IDExLjggMzMuOCAzLjVDNDAyLjEgMzEyLjkgNDE2IDI4Ni4xIDQxNiAyNTZzLTEzLjktNTYuOS0zNS41LTc0LjV6Il19LFF3cj1iRGUsS3dyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNyb3NzIixpY29uOlszODQsNTEyLFsxMjgzMjcsMTAwMTNdLCJmNjU0IiwiTTE3NiAwYy0yNi41IDAtNDggMjEuNS00OCA0OGwwIDgwLTgwIDBjLTI2LjUgMC00OCAyMS41LTQ4IDQ4bDAgMzJjMCAyNi41IDIxLjUgNDggNDggNDhsODAgMCAwIDIwOGMwIDI2LjUgMjEuNSA0OCA0OCA0OGwzMiAwYzI2LjUgMCA0OC0yMS41IDQ4LTQ4bDAtMjA4IDgwIDBjMjYuNSAwIDQ4LTIxLjUgNDgtNDhsMC0zMmMwLTI2LjUtMjEuNS00OC00OC00OGwtODAgMCAwLTgwYzAtMjYuNS0yMS41LTQ4LTQ4LTQ4TDE3NiAweiJdfSx2RGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGVyc29uIixpY29uOlszODQsNTEyLFsxMjk0ODUsIm1hbGUiXSwiZjE4MyIsIk0yNDggMjRhNTYgNTYgMCAxIDAgLTExMiAwIDU2IDU2IDAgMSAwIDExMiAwem0yNCAyMTIuN2w0Ni4zIDYyLjRjMTAuNSAxNC4yIDMwLjYgMTcuMiA0NC44IDYuNnMxNy4yLTMwLjYgNi42LTQ0LjhsLTcwLjUtOTVDMjc0IDEzMiAyMzQuMyAxMTIgMTkyIDExMnMtODIgMjAtMTA3LjIgNTMuOWwtNzAuNSA5NWMtMTAuNSAxNC4yLTcuNiAzNC4yIDYuNiA0NC44czM0LjIgNy42IDQ0LjgtNi42TDExMiAyMzYuNyAxMTIgNTEyYzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0xNjBjMC04LjggNy4yLTE2IDE2LTE2czE2IDcuMiAxNiAxNmwwIDE2MGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMjc1LjN6Il19LEp3cj12RGUseURlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhvdXJnbGFzcyIsaWNvbjpbMzg0LDUxMixbOTIwMyw2MjAzMiwiaG91cmdsYXNzLWVtcHR5Il0sImYyNTQiLCJNMCAzMkMwIDE0LjMgMTQuMyAwIDMyIDBMMzUyIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsMCAxMWMwIDQyLjQtMTYuOSA4My4xLTQ2LjkgMTEzLjFsLTY3LjkgNjcuOSA2Ny45IDY3LjljMzAgMzAgNDYuOSA3MC43IDQ2LjkgMTEzLjFsMCAxMWMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMkwzMiA1MTJjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsMC0xMWMwLTQyLjQgMTYuOS04My4xIDQ2LjktMTEzLjFsNjcuOS02Ny45LTY3LjktNjcuOUM0OC45IDE1OC4xIDMyIDExNy40IDMyIDc1bDAtMTFDMTQuMyA2NCAwIDQ5LjcgMCAzMnpNOTYgNjRsMCAxMWMwIDI1LjUgMTAuMSA0OS45IDI4LjEgNjcuOWw2Ny45IDY3LjkgNjcuOS02Ny45YzE4LTE4IDI4LjEtNDIuNCAyOC4xLTY3LjlsMC0xMS0xOTIgMHptMCAzODRsMTkyIDAgMC0xMWMwLTI1LjUtMTAuMS00OS45LTI4LjEtNjcuOWwtNjcuOS02Ny45LTY3LjkgNjcuOWMtMTggMTgtMjguMSA0Mi40LTI4LjEgNjcuOWwwIDExeiJdfSxlTXI9eURlLHRNcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmaXNoIixpY29uOls1NzYsNTEyLFsxMjgwMzFdLCJmNTc4IiwiTTE4MC41IDE0MS41QzIxOS43IDEwOC41IDI3Mi42IDgwIDMzNiA4MHMxMTYuMyAyOC41IDE1NS41IDYxLjVjMzkuMSAzMyA2Ni45IDcyLjQgODEgOTkuOCA0LjcgOS4yIDQuNyAyMC4xIDAgMjkuMy0xNC4xIDI3LjQtNDEuOSA2Ni44LTgxIDk5LjgtMzkuMiAzMy4xLTkyIDYxLjUtMTU1LjUgNjEuNXMtMTE2LjMtMjguNS0xNTUuNS02MS41Yy0xNi4yLTEzLjctMzAuNS0yOC41LTQyLjctNDMuMUw0OC4xIDM3OS42Yy0xMi41IDcuMy0yOC40IDUuMy0zOC43LTQuOXMtMTIuNC0yNi01LjMtMzguNkw1MCAyNTYgNC4yIDE3NS45Yy03LjItMTIuNi01LTI4LjQgNS4zLTM4LjZzMjYuMS0xMi4yIDM4LjctNC45bDg5LjcgNTIuM2MxMi4yLTE0LjYgMjYuNS0yOS40IDQyLjctNDMuMXpNNDQ4IDI1NmEzMiAzMiAwIDEgMCAtNjQgMCAzMiAzMiAwIDEgMCA2NCAweiJdfSxyTXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZHJ1bXN0aWNrLWJpdGUiLGljb246WzUxMiw1MTIsW10sImY2ZDciLCJNMTYwIDI2NS4yYzAgOC41LTMuNCAxNi42LTkuNCAyMi42bC0yNi44IDI2LjhjLTEyLjMgMTIuMy0zMi41IDExLjQtNDkuNCA3LjItNC42LTEuMS05LjUtMS44LTE0LjUtMS44LTMzLjEgMC02MCAyNi45LTYwIDYwczI2LjkgNjAgNjAgNjBjNi4zIDAgMTIgNS43IDEyIDEyIDAgMzMuMSAyNi45IDYwIDYwIDYwczYwLTI2LjkgNjAtNjBjMC01LS42LTkuOC0xLjgtMTQuNS00LjItMTYuOS01LjItMzcuMSA3LjItNDkuNGwyNi44LTI2LjhjNi02IDE0LjEtOS40IDIyLjYtOS40bDg5LjIgMGM2LjMgMCAxMi40LS4zIDE4LjUtMSAxMS45LTEuMiAxNi40LTE1LjUgMTAuOC0yNi04LjUtMTUuOC0xMy4zLTMzLjgtMTMuMy01MyAwLTYxLjkgNTAuMS0xMTIgMTEyLTExMiA4IDAgMTUuNyAuOCAyMy4yIDIuNCAxMS43IDIuNSAyNC4xLTUuOSAyMi0xNy42LTE0LjctODIuMy04Ni43LTE0NC44LTE3My4yLTE0NC44LTk3LjIgMC0xNzYgNzguOC0xNzYgMTc2bDAgODkuMnoiXX0sYU1yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNoYXJ0LXNpbXBsZSIsaWNvbjpbNTEyLDUxMixbXSwiZTQ3MyIsIk0xOTIgODBjMC0yNi41IDIxLjUtNDggNDgtNDhsMzIgMGMyNi41IDAgNDggMjEuNSA0OCA0OGwwIDM1MmMwIDI2LjUtMjEuNSA0OC00OCA0OGwtMzIgMGMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhsMC0zNTJ6TTAgMjcyYzAtMjYuNSAyMS41LTQ4IDQ4LTQ4bDMyIDBjMjYuNSAwIDQ4IDIxLjUgNDggNDhsMCAxNjBjMCAyNi41LTIxLjUgNDgtNDggNDhsLTMyIDBjLTI2LjUgMC00OC0yMS41LTQ4LTQ4TDAgMjcyek00MzIgOTZsMzIgMGMyNi41IDAgNDggMjEuNSA0OCA0OGwwIDI4OGMwIDI2LjUtMjEuNSA0OC00OCA0OGwtMzIgMGMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhsMC0yODhjMC0yNi41IDIxLjUtNDggNDgtNDh6Il19LGlNcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJhdG9tIixpY29uOls0NDgsNTEyLFs5ODgzXSwiZjVkMiIsIk0yMjQgMzk4LjhjLTExLjggNS4xLTIzLjQgOS43LTM0LjkgMTMuNSAxNi43IDMzLjggMzEgMzUuNyAzNC45IDM1LjdzMTguMS0xLjkgMzQuOS0zNS43Yy0xMS40LTMuOS0yMy4xLTguNC0zNC45LTEzLjV6TTQxNCAyNTZjMzMgNDUuMiA0NC4zIDkwLjkgMjMuNiAxMjgtMjAuMiAzNi4zLTYyLjUgNDkuMy0xMTUuMiA0My4yLTIyIDUyLjEtNTUuNyA4NC44LTk4LjQgODQuOHMtNzYuNC0zMi43LTk4LjQtODQuOEM3Mi45IDQzMy4zIDMwLjYgNDIwLjMgMTAuNCAzODQtMTAuMyAzNDYuOSAxIDMwMS4yIDM0IDI1NiAxIDIxMC44LTEwLjMgMTY1LjEgMTAuNCAxMjggMzAuNiA5MS43IDcyLjkgNzguNyAxMjUuNiA4NC44IDE0Ny42IDMyLjcgMTgxLjIgMCAyMjQgMHM3Ni40IDMyLjcgOTguNCA4NC44YzUyLjctNi4xIDk1IDYuOCAxMTUuMiA0My4yIDIwLjcgMzcuMSA5LjQgODIuOC0yMy42IDEyOHptLTY1LjggNjcuNGMtMS43IDE0LjItMy45IDI4LTYuNyA0MS4yIDMxLjggMS40IDM4LjYtOC43IDQwLjItMTEuNyAyLjMtNC4yIDctMTcuOS0xMS45LTQ4LjEtNi44IDYuMy0xNCAxMi41LTIxLjYgMTguNnptLTYuNy0xNzUuOWMyLjggMTMuMSA1IDI2LjkgNi43IDQxLjIgNy42IDYuMSAxNC44IDEyLjMgMjEuNiAxOC42IDE4LjktMzAuMiAxNC4yLTQ0IDExLjktNDguMS0xLjYtMi45LTguNC0xMy00MC4yLTExLjd6TTI1OC45IDk5LjdDMjQyLjEgNjUuOSAyMjcuOSA2NCAyMjQgNjRzLTE4LjEgMS45LTM0LjkgMzUuN2MxMS40IDMuOSAyMy4xIDguNCAzNC45IDEzLjUgMTEuOC01LjEgMjMuNC05LjcgMzQuOS0xMy41em0tMTU5IDg4LjljMS43LTE0LjMgMy45LTI4IDYuNy00MS4yLTMxLjgtMS40LTM4LjYgOC43LTQwLjIgMTEuNy0yLjMgNC4yLTcgMTcuOSAxMS45IDQ4LjEgNi44LTYuMyAxNC0xMi41IDIxLjYtMTguNnpNNzguMiAzMDQuOGMtMTguOSAzMC4yLTE0LjIgNDQtMTEuOSA0OC4xIDEuNiAyLjkgOC40IDEzIDQwLjIgMTEuNy0yLjgtMTMuMS01LTI2LjktNi43LTQxLjItNy42LTYuMS0xNC44LTEyLjMtMjEuNi0xOC42ek0zMDQgMjU2YTgwIDgwIDAgMSAwIC0xNjAgMCA4MCA4MCAwIDEgMCAxNjAgMHptLTgwLTMyYTMyIDMyIDAgMSAxIDAgNjQgMzIgMzIgMCAxIDEgMC02NHoiXX0sb01yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InAiLGljb246WzMyMCw1MTIsWzExMl0sIjUwIiwiTTAgNjRDMCA0Ni4zIDE0LjMgMzIgMzIgMzJsMTI4IDBjODguNCAwIDE2MCA3MS42IDE2MCAxNjBTMjQ4LjQgMzUyIDE2MCAzNTJsLTk2IDAgMCA5NmMwIDE3LjctMTQuMyAzMi0zMiAzMlMwIDQ2NS43IDAgNDQ4TDAgNjR6TTY0IDI4OGw5NiAwYzUzIDAgOTYtNDMgOTYtOTZzLTQzLTk2LTk2LTk2bC05NiAwIDAgMTkyeiJdfSxuTXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiamV0LWZpZ2h0ZXItdXAiLGljb246WzUxMiw1MTIsW10sImU1MTgiLCJNMjA2LjggNDcuOEMyMDIuMyA1OC41IDIwMCA3MCAyMDAgODEuNmwwIDEwMC40LTE1MiAxMTQgMC00OGMwLTEzLjMtMTAuNy0yNC0yNC0yNFMwIDIzNC43IDAgMjQ4TDAgMzkyYzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC04IDE1MiAwIDAgNTQuNC02NiA1Mi44Yy0zLjggMy02IDcuNi02IDEyLjVsMCAyNC4zYzAgOC44IDcuMiAxNiAxNiAxNmw4OCAwIDAtNDBjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNGwwIDQwIDg4IDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMjQuM2MwLTQuOS0yLjItOS41LTYtMTIuNWwtNjYtNTIuOCAwLTU0LjQgMTUyIDAgMCA4YzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC0xNDRjMC0xMy4zLTEwLjctMjQtMjQtMjRzLTI0IDEwLjctMjQgMjRsMCA0OC0xNTItMTE0IDAtMTAwLjRjMC0xMS42LTIuMy0yMy4xLTYuOC0zMy44bC0yNy4xLTY1QzI3NC40LTI2LjIgMjY1LjctMzIgMjU2LTMycy0xOC40IDUuOC0yMi4yIDE0LjhsLTI3LjEgNjV6Il19LHNNcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwbHVnLWNpcmNsZS14bWFyayIsaWNvbjpbNjQwLDUxMixbXSwiZTU2MCIsIk0xOTItMzJjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCA5NiAxMjggMCAwLTk2YzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJsMCA5NiA2NCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybDAgNDguN2MtOTguNiA4LjEtMTc2IDkwLjctMTc2IDE5MS4zIDAgMjcuMyA1LjcgNTMuMyAxNiA3Ni45bDAgMy4xYzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtNjYuN0MxNjUuMiAzOTguMSA5NiAzMTkuMSA5NiAyMjRsMC02NGMtMTcuNyAwLTMyLTE0LjMtMzItMzJTNzguMyA5NiA5NiA5Nmw2NCAwIDAtOTZjMC0xNy43IDE0LjMtMzIgMzItMzJ6TTQ5NiAyNTZhMTQ0IDE0NCAwIDEgMSAwIDI4OCAxNDQgMTQ0IDAgMSAxIDAtMjg4em01OS4zIDEwNy4zYzYuMi02LjIgNi4yLTE2LjQgMC0yMi42cy0xNi40LTYuMi0yMi42IDBsLTM2LjcgMzYuNy0zNi43LTM2LjdjLTYuMi02LjItMTYuNC02LjItMjIuNiAwcy02LjIgMTYuNCAwIDIyLjZsMzYuNyAzNi43LTM2LjcgMzYuN2MtNi4yIDYuMi02LjIgMTYuNCAwIDIyLjZzMTYuNCA2LjIgMjIuNiAwbDM2LjctMzYuNyAzNi43IDM2LjdjNi4yIDYuMiAxNi40IDYuMiAyMi42IDBzNi4yLTE2LjQgMC0yMi42bC0zNi43LTM2LjcgMzYuNy0zNi43eiJdfSxsTXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic2hlZXQtcGxhc3RpYyIsaWNvbjpbMzg0LDUxMixbXSwiZTU3MSIsIk0wIDQ0OGMwIDM1LjMgMjguNyA2NCA2NCA2NGwxNDkuNSAwYzE3IDAgMzMuMy02LjcgNDUuMy0xOC43TDM2NS4zIDM4Ni43YzEyLTEyIDE4LjctMjguMyAxOC43LTQ1LjNMMzg0IDY0YzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDBDMjguNyAwIDAgMjguNyAwIDY0TDAgNDQ4em0yMDggNS41bDAtOTMuNWMwLTEzLjMgMTAuNy0yNCAyNC0yNGw5My41IDAtMTE3LjUgMTE3LjV6TTE1MyAxMDVsLTQ4IDQ4Yy05LjQgOS40LTI0LjYgOS40LTMzLjkgMHMtOS40LTI0LjYgMC0zMy45bDQ4LTQ4YzkuNC05LjQgMjQuNi05LjQgMzMuOSAwczkuNCAyNC42IDAgMzMuOXptOTYgMzJMMTM3IDI0OWMtOS40IDkuNC0yNC42IDkuNC0zMy45IDBzLTkuNC0yNC42IDAtMzMuOUwyMTUgMTAzYzkuNC05LjQgMjQuNi05LjQgMzMuOSAwczkuNCAyNC42IDAgMzMuOXoiXX0sY01yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InYiLGljb246WzM4NCw1MTIsWzExOF0sIjU2IiwiTTE5LjcgMzQuNWMxNi4zLTYuOCAzNSAuOSA0MS44IDE3LjJMMTkyIDM2NC44IDMyMi41IDUxLjdjNi44LTE2LjMgMjUuNS0yNCA0MS44LTE3LjJzMjQgMjUuNSAxNy4yIDQxLjhsLTE2MCAzODRjLTUgMTEuOS0xNi42IDE5LjctMjkuNSAxOS43cy0yNC42LTcuOC0yOS41LTE5LjdMMi41IDc2LjNjLTYuOC0xNi4zIC45LTM1IDE3LjItNDEuOHoiXX0sd0RlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Imxpc3QiLGljb246WzUxMiw1MTIsWyJsaXN0LXNxdWFyZXMiXSwiZjAzYSIsIk00MCA0OEMyNi43IDQ4IDE2IDU4LjcgMTYgNzJsMCA0OGMwIDEzLjMgMTAuNyAyNCAyNCAyNGw0OCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0bDAtNDhjMC0xMy4zLTEwLjctMjQtMjQtMjRMNDAgNDh6TTE5MiA2NGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmwyODggMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMkwxOTIgNjR6bTAgMTYwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDI4OCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC0yODggMHptMCAxNjBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsMjg4IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTI4OCAwek0xNiAyMzJsMCA0OGMwIDEzLjMgMTAuNyAyNCAyNCAyNGw0OCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0bDAtNDhjMC0xMy4zLTEwLjctMjQtMjQtMjRsLTQ4IDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0ek00MCAzNjhjLTEzLjMgMC0yNCAxMC43LTI0IDI0bDAgNDhjMCAxMy4zIDEwLjcgMjQgMjQgMjRsNDggMGMxMy4zIDAgMjQtMTAuNyAyNC0yNGwwLTQ4YzAtMTMuMy0xMC43LTI0LTI0LTI0bC00OCAweiJdfSxkTXI9d0RlLHVNcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwaXNjZXMiLGljb246WzQ0OCw1MTIsW10sImU4NGMiLCJNNDAuNCAxMC40YzExLjktMTMgMzIuMi0xMy45IDQ1LjItMiAyLjkgMi43IDI4LjMgMjYuNyA1My42IDY3LjggMjIuMyAzNi4yIDQ1IDg2LjYgNTEuMSAxNDcuOGw2Ny4zIDBjNi4xLTYxLjEgMjguOC0xMTEuNiA1MS4xLTE0Ny44IDI1LjMtNDEuMSA1MC43LTY1LjEgNTMuNi02Ny44IDEzLTExLjkgMzMuMy0xMS4xIDQ1LjIgMiAxMS45IDEzIDExIDMzLjMtMiA0NS4yLTEuNCAxLjMtMjIgMjEuMS00Mi40IDU0LjItMTcuOSAyOS4xLTM1LjQgNjgtNDEuMiAxMTQuMmw5NCAwIDMuMyAuMmMxNi4xIDEuNiAyOC43IDE1LjMgMjguNyAzMS44cy0xMi42IDMwLjItMjguNyAzMS44bC0zLjMgLjItOTQgMGM1LjggNDYuMiAyMy4zIDg1LjEgNDEuMiAxMTQuMiAyMC40IDMzLjEgNDEgNTIuOSA0Mi40IDU0LjIgMTMgMTEuOSAxMy45IDMyLjIgMiA0NS4yLTExLjkgMTMtMzIuMiAxMy45LTQ1LjIgMi0yLjktMi43LTI4LjMtMjYuNy01My42LTY3LjgtMjIuMy0zNi4yLTQ1LTg2LjYtNTEuMS0xNDcuOGwtNjcuMyAwYy02LjEgNjEuMS0yOC44IDExMS42LTUxLjEgMTQ3LjgtMjUuMyA0MS4xLTUwLjcgNjUuMS01My42IDY3LjgtMTMgMTEuOS0zMy4zIDExLjEtNDUuMi0yLTExLjktMTMtMTEtMzMuMyAyLTQ1LjIgMS40LTEuMyAyMi0yMS4xIDQyLjQtNTQuMiAxNy45LTI5LjEgMzUuNC02OCA0MS4yLTExNC4ybC05NCAwYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDk0IDBjLTUuOC00Ni4yLTIzLjMtODUuMS00MS4yLTExNC4yLTIwLjQtMzMuMS00MS01Mi45LTQyLjQtNTQuMi0xMy0xMS45LTEzLjktMzIuMi0yLTQ1LjJ6Il19LGZNcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzb2xhci1wYW5lbCIsaWNvbjpbNTc2LDUxMixbXSwiZjViYSIsIk0xMjEuOCAzMmMtMzAgMC01NiAyMC44LTYyLjUgNTAuMUw5LjYgMzA2LjFDLjcgMzQ2LjEgMzEuMSAzODQgNzIgMzg0bDE4NC4xIDAgMCA2NC02NCAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDE5MiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC02NCAwIDAtNjQgMTg0LjEgMGM0MC45IDAgNzEuNC0zNy45IDYyLjUtNzcuOWwtNDkuOC0yMjRDNTEwLjQgNTIuOCA0ODQuNSAzMiA0NTQuNSAzMkwxMjEuOCAzMnpNMjQ1LjYgOTZsODUuMiAwIDcuMyA4OC05OS44IDAgNy4zLTg4em0tNTUuNSA4OGwtODcuOCAwIDE5LjYtODggNzUuNiAwLTcuMyA4OHpNOTEuNiAyMzJsOTQuNSAwLTcuMyA4OC0xMDYuNyAwIDE5LjYtODh6bTE0Mi42IDBsMTA3LjggMCA3LjMgODgtMTIyLjUgMCA3LjMtODh6bTE1NiAwbDk0LjUgMCAxOS42IDg4LTEwNi43IDAtNy4zLTg4ek00NzQgMTg0bC04Ny44IDAtNy4zLTg4IDc1LjYgMCAxOS42IDg4eiJdfSxwTXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibGFuZC1taW5lLW9uIixpY29uOls1NzYsNTEyLFtdLCJlNTFiIiwiTTMxMiAwbDAgMTI4YzAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0TDI2NCAwYzAtMTMuMyAxMC43LTI0IDI0LTI0czI0IDEwLjcgMjQgMjR6TTE2MCAyODhjMC0xNy43IDE0LjMtMzIgMzItMzJsMTkyIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCAzMiA4MCAwYzI2LjUgMCA0OCAyMS41IDQ4IDQ4bDAgOTZjMCAyNi41LTIxLjUgNDgtNDggNDhMODAgNTEyYy0yNi41IDAtNDgtMjEuNS00OC00OGwwLTk2YzAtMjYuNSAyMS41LTQ4IDQ4LTQ4bDgwIDAgMC0zMnpNMTIgMTE0LjdjNy40LTExIDIyLjMtMTQgMzMuMy02LjdsOTYgNjRjMTEgNy40IDE0IDIyLjMgNi43IDMzLjNzLTIyLjMgMTQtMzMuMyA2LjdsLTk2LTY0Yy0xMS03LjQtMTQtMjIuMy02LjctMzMuM3pNNTMwLjcgMTA4YzExLTcuNCAyNS45LTQuNCAzMy4zIDYuN3M0LjQgMjUuOS02LjcgMzMuM2wtOTYgNjRjLTExIDcuNC0yNS45IDQuNC0zMy4zLTYuN3MtNC40LTI1LjkgNi43LTMzLjNsOTYtNjR6Il19LEQyZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJoZWFkcGhvbmVzIixpY29uOls0NDgsNTEyLFsxMjc5MTEsNjI4NjMsImhlYWRwaG9uZXMtYWx0IiwiaGVhZHBob25lcy1zaW1wbGUiXSwiZjAyNSIsIk02NCAyMjRjMC04OC40IDcxLjYtMTYwIDE2MC0xNjBzMTYwIDcxLjYgMTYwIDE2MGwwIDM3LjVjLTEwLTMuNS0yMC44LTUuNS0zMi01LjVsLTE2IDBjLTI2LjUgMC00OCAyMS41LTQ4IDQ4bDAgMTI4YzAgMjYuNSAyMS41IDQ4IDQ4IDQ4bDE2IDBjNTMgMCA5Ni00MyA5Ni05NmwwLTE2MEM0NDggMTAwLjMgMzQ3LjcgMCAyMjQgMFMwIDEwMC4zIDAgMjI0TDAgMzg0YzAgNTMgNDMgOTYgOTYgOTZsMTYgMGMyNi41IDAgNDgtMjEuNSA0OC00OGwwLTEyOGMwLTI2LjUtMjEuNS00OC00OC00OGwtMTYgMGMtMTEuMiAwLTIyIDEuOS0zMiA1LjVMNjQgMjI0eiJdfSxoTXI9RDJlLG1Ncj1EMmUsZ01yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJ1cyIsaWNvbjpbNDQ4LDUxMixbMTI4NjUzXSwiZjIwNyIsIk05NiAwQzQzIDAgMCA0MyAwIDk2TDAgMzg0YzAgMjkuOCAyMC40IDU0LjkgNDggNjJsMCAzNGMwIDE3LjcgMTQuMyAzMiAzMiAzMmwxNiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtMzIgMTkyIDAgMCAzMmMwIDE3LjcgMTQuMyAzMiAzMiAzMmwxNiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtMzRjMjcuNi03LjEgNDgtMzIuMiA0OC02MmwwLTI4OGMwLTUzLTQzLTk2LTk2LTk2TDk2IDB6TTY0IDE3NmMwLTE3LjcgMTQuMy0zMiAzMi0zMmwxMDQgMCAwIDExMi0xMDQgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC00OHptMTg0IDgwbDAtMTEyIDEwNCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgNDhjMCAxNy43LTE0LjMgMzItMzIgMzJsLTEwNCAwek05NiAzMjBhMzIgMzIgMCAxIDEgMCA2NCAzMiAzMiAwIDEgMSAwLTY0em0yNTYgMGEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6TTE1MiA3MmMwLTEzLjMgMTAuNy0yNCAyNC0yNGw5NiAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC05NiAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHoiXX0seE1yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZpbGUtcG93ZXJwb2ludCIsaWNvbjpbMzg0LDUxMixbXSwiZjFjNCIsIk0wIDY0QzAgMjguNyAyOC43IDAgNjQgMEwyMTMuNSAwYzE3IDAgMzMuMyA2LjcgNDUuMyAxOC43TDM2NS4zIDEyNS4zYzEyIDEyIDE4LjcgMjguMyAxOC43IDQ1LjNMMzg0IDQ0OGMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA1MTJjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgNjR6bTIwOC01LjVsMCA5My41YzAgMTMuMyAxMC43IDI0IDI0IDI0TDMyNS41IDE3NiAyMDggNTguNXpNMTUyIDI1NmMtMTMuMyAwLTI0IDEwLjctMjQgMjRsMCAxNDRjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTI0IDI0IDBjMzkuOCAwIDcyLTMyLjIgNzItNzJzLTMyLjItNzItNzItNzJsLTQ4IDB6bTQ4IDk2bC0yNCAwIDAtNDggMjQgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNHoiXX0sTURlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InF1b3RlLWxlZnQiLGljb246WzQ0OCw1MTIsWzgyMjAsInF1b3RlLWxlZnQtYWx0Il0sImYxMGQiLCJNMCAyMTZDMCAxNDkuNyA1My43IDk2IDEyMCA5Nmw4IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTggMGMtMzAuOSAwLTU2IDI1LjEtNTYgNTZsMCA4IDY0IDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCA2NGMwIDM1LjMtMjguNyA2NC02NCA2NGwtNjQgMGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCAyMTZ6bTI1NiAwYzAtNjYuMyA1My43LTEyMCAxMjAtMTIwbDggMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtOCAwYy0zMC45IDAtNTYgMjUuMS01NiA1NmwwIDggNjQgMGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDY0YzAgMzUuMy0yOC43IDY0LTY0IDY0bC02NCAwYy0zNS4zIDAtNjQtMjguNy02NC02NGwwLTEzNnoiXX0sYk1yPU1EZSx2TXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2hldnJvbi1kb3duIixpY29uOls0NDgsNTEyLFtdLCJmMDc4IiwiTTIwMS40IDQwNi42YzEyLjUgMTIuNSAzMi44IDEyLjUgNDUuMyAwbDE5Mi0xOTJjMTIuNS0xMi41IDEyLjUtMzIuOCAwLTQ1LjNzLTMyLjgtMTIuNS00NS4zIDBMMjI0IDMzOC43IDU0LjYgMTY5LjRjLTEyLjUtMTIuNS0zMi44LTEyLjUtNDUuMyAwcy0xMi41IDMyLjggMCA0NS4zbDE5MiAxOTJ6Il19LGtEZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJlYXJ0aC1hc2lhIixpY29uOls1MTIsNTEyLFsxMjc3NTksImdsb2JlLWFzaWEiXSwiZjU3ZSIsIk01MCAyODQuOGM0LjIgMi4xIDkgMy4yIDE0IDMuMmw1MC43IDBjOC41IDAgMTYuNiAzLjQgMjIuNiA5LjRsMTMuMyAxMy4zYzYgNiAxNC4xIDkuNCAyMi42IDkuNGwxOC43IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJsMC00MGMwLTEzLjMgMTAuNy0yNCAyNC0yNHMyNC0xMC43IDI0LTI0bDAtNDIuN2MwLTguNSAzLjQtMTYuNiA5LjQtMjIuNmwxMy4zLTEzLjNjNi02IDkuNC0xNC4xIDkuNC0yMi42TDMwNCA1N2MwLTEuMi0uMS0yLjMtLjItMy41LTE1LjQtMy42LTMxLjQtNS41LTQ3LjgtNS41LTExNC45IDAtMjA4IDkzLjEtMjA4IDIwOCAwIDkuOCAuNyAxOS40IDIgMjguOHptNDAzLjMgMzcuM2MtMy4yLTEuNC02LjctMi4xLTEwLjUtMi4xTDQzMiAzMjBjLTguOCAwLTE2LTcuMi0xNi0xNnMtNy4yLTE2LTE2LTE2bC0zNC43IDBjLTguNSAwLTE2LjYgMy40LTIyLjYgOS40bC00NS4zIDQ1LjNjLTYgNi05LjQgMTQuMS05LjQgMjIuNmwwIDE4LjdjMCAxNy43IDE0LjMgMzIgMzIgMzJsMTguNyAwYzguNSAwIDE2LjYgMy40IDIyLjYgOS40IDIuMiAyLjIgNC43IDQuMSA3LjMgNS41IDM5LjMtMjUuNCA2OS41LTYzLjYgODQuNi0xMDguOHpNMCAyNTZhMjU2IDI1NiAwIDEgMSA1MTIgMCAyNTYgMjU2IDAgMSAxIC01MTIgMHpNMTI4IDM2OGMwIDguOCA3LjIgMTYgMTYgMTZsMzIgMGM4LjggMCAxNi03LjIgMTYtMTZzLTcuMi0xNi0xNi0xNmwtMzIgMGMtOC44IDAtMTYgNy4yLTE2IDE2ek0yNzIgMjU2Yy04LjggMC0xNiA3LjItMTYgMTZsMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZzMTYtNy4yIDE2LTE2bDAtMzJjMC04LjgtNy4yLTE2LTE2LTE2em00OC0xMTJsMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZzMTYtNy4yIDE2LTE2bDAtMzJjMC04LjgtNy4yLTE2LTE2LTE2cy0xNiA3LjItMTYgMTZ6Il19LHlNcj1rRGUsd01yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNlbnQtc2lnbiIsaWNvbjpbMzg0LDUxMixbXSwiZTNmNSIsIk0yMDggMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDI1LjRjNDMuNiA1LjIgODMgMjQuNSAxMTMuMyA1My4xIDEyLjkgMTIuMSAxMy40IDMyLjQgMS4zIDQ1LjJzLTMyLjQgMTMuNC00NS4yIDEuM2MtMjQuNC0yMy01Ny4yLTM3LjEtOTMuMy0zNy4xLTc1LjEgMC0xMzYgNjAuOS0xMzYgMTM2czYwLjkgMTM2IDEzNiAxMzZjMzYuMiAwIDY5LTE0LjEgOTMuMy0zNy4xIDEyLjktMTIuMSAzMy4xLTExLjUgNDUuMiAxLjNzMTEuNSAzMy4xLTEuMyA0NS4yQzMyMyA0MzAuMSAyODMuNiA0NDkuNCAyNDAgNDU0LjZsMCAyNS40YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMjhDODQuNyA0MzMuNSAxNiAzNTIuOCAxNiAyNTZTODQuNyA3OC41IDE3NiA2MGwwLTI4YzAtMTcuNyAxNC4zLTMyIDMyLTMyeiJdfSxNTXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic2hpZWxkLWNhdCIsaWNvbjpbNTEyLDUxMixbXSwiZTU3MiIsIk0yNjkuNCAyLjlDMjY1LjIgMSAyNjAuNyAwIDI1NiAwcy05LjIgMS0xMy40IDIuOUw1NC4zIDgyLjhjLTIyIDkuMy0zOC40IDMxLTM4LjMgNTcuMiAuNSA5OS4yIDQxLjMgMjgwLjcgMjEzLjYgMzYzLjIgMTYuNyA4IDM2LjEgOCA1Mi44IDAgMTcyLjQtODIuNSAyMTMuMi0yNjQgMjEzLjYtMzYzLjIgLjEtMjYuMi0xNi4zLTQ3LjktMzguMy01Ny4yTDI2OS40IDIuOXpNMTYwIDE1NC40YzAtNS44IDQuNy0xMC40IDEwLjQtMTAuNGwuMiAwYzMuNCAwIDYuNSAxLjYgOC41IDQuM2w0MCA1My4zYzMgNCA3LjggNi40IDEyLjggNi40bDQ4IDBjNSAwIDkuOC0yLjQgMTIuOC02LjRsNDAtNTMuM2MyLTIuNyA1LjItNC4zIDguNS00LjNsLjIgMGM1LjggMCAxMC40IDQuNyAxMC40IDEwLjRMMzUyIDI3MmMwIDUzLTQzIDk2LTk2IDk2cy05Ni00My05Ni05NmwwLTExNy42ek0yMTYgMjg4YTE2IDE2IDAgMSAwIDAtMzIgMTYgMTYgMCAxIDAgMCAzMnptOTYtMTZhMTYgMTYgMCAxIDAgLTMyIDAgMTYgMTYgMCAxIDAgMzIgMHoiXX0sa01yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNjaG9vbC1jaXJjbGUtY2hlY2siLGljb246WzY0MCw1MTIsW10sImU1NmIiLCJNNjQgMTI4Yy0zNS4zIDAtNjQgMjguNy02NCA2NEwwIDQ0OGMwIDM1LjMgMjguNyA2NCA2NCA2NGwyNzYgMGMtMTAuNS0xNC42LTE5LTMwLjctMjUuMS00OGwtOTAuOSAwIDAtODhjMC0yMi4xIDE3LjktNDAgNDAtNDBsNDggMGMxIDAgMS45IDAgMi45IC4xIDI2LjMtNzQuNiA5Ny41LTEyOC4xIDE4MS4xLTEyOC4xIDI4LjYgMCA1NS42IDYuMiA4MCAxNy40bDAtMzMuNGMwLTM1LjMtMjguNy02NC02NC02NGwtNjQgMC0xMjcuOS0xMTUuMWMtMTguMy0xNi40LTQ2LTE2LjQtNjQuMiAwTDEyOCAxMjggNjQgMTI4em02NCAyNDBjMCA4LjgtNy4yIDE2LTE2IDE2bC0zMiAwYy04LjggMC0xNi03LjItMTYtMTZsMC0zMmMwLTguOCA3LjItMTYgMTYtMTZsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMnpNMTEyIDI1NmwtMzIgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMzJjMC04LjggNy4yLTE2IDE2LTE2bDMyIDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMzJjMCA4LjgtNy4yIDE2LTE2IDE2ek0yODggMTI4YTY0IDY0IDAgMSAxIDAgMTI4IDY0IDY0IDAgMSAxIDAtMTI4ek02NDAgNDAwYTE0NCAxNDQgMCAxIDAgLTI4OCAwIDE0NCAxNDQgMCAxIDAgMjg4IDB6bS04Ni42LTYwLjljNy4xIDUuMiA4LjcgMTUuMiAzLjUgMjIuM2wtNjQgODhjLTIuOCAzLjgtNyA2LjItMTEuNyA2LjVzLTkuMy0xLjMtMTIuNi00LjZsLTQwLTQwYy02LjItNi4yLTYuMi0xNi40IDAtMjIuNnMxNi40LTYuMiAyMi42IDBsMjYuOCAyNi44IDUzLTcyLjljNS4yLTcuMSAxNS4yLTguNyAyMi40LTMuNXoiXX0sU0RlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im1hcnRpbmktZ2xhc3MiLGljb246WzUxMiw1MTIsWzEyNzg2NCwiZ2xhc3MtbWFydGluaS1hbHQiXSwiZjU3YiIsIk0yLjQgNTEuOEM3LjQgMzkuOCAxOS4xIDMyIDMyIDMybDQ0OCAwYzEyLjkgMCAyNC42IDcuOCAyOS42IDE5LjhzMi4yIDI1LjctNi45IDM0LjlMMjg4IDMwMS4zIDI4OCA0NDggMzUyIDQ0OGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtMTkyIDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsNjQgMCAwLTE0Ni43LTIxNC42LTIxNC42Qy4yIDc3LjUtMi41IDYzLjcgMi40IDUxLjh6TTM1NC43IDE0NGw0OC00OC0yOTMuNSAwIDQ4IDQ4IDE5Ny41IDB6Il19LFNNcj1TRGUsek1yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBsdWciLGljb246WzQ0OCw1MTIsWzEyODI2OF0sImYxZTYiLCJNMTI4LTMyYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgOTYgMTI4IDAgMC05NmMwLTE3LjcgMTQuMy0zMiAzMi0zMnMzMiAxNC4zIDMyIDMybDAgOTYgNjQgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwwIDY0YzAgOTUuMS02OS4yIDE3NC4xLTE2MCAxODkuM2wwIDY2LjdjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC02Ni43QzEwMS4yIDM5OC4xIDMyIDMxOS4xIDMyIDIyNGwwLTY0Yy0xNy43IDAtMzItMTQuMy0zMi0zMlMxNC4zIDk2IDMyIDk2bDY0IDAgMC05NmMwLTE3LjcgMTQuMy0zMiAzMi0zMnoiXX0sQ01yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBhbm9yYW1hIixpY29uOls1NzYsNTEyLFtdLCJlMjA5IiwiTTQzLjkgNDhDMTkuNyA0OCAwIDY3LjcgMCA5MS45TDAgNDIwLjFjMCAyNC4zIDE5LjcgNDMuOSA0My45IDQzLjkgNS41IDAgMTAuNy0xIDE1LjctMi45IDEyLjktNC45IDEwMy40LTM3LjEgMjI4LjQtMzcuMXMyMTUuNSAzMi4zIDIyOC40IDM3LjFjNSAxLjkgMTAuMiAyLjkgMTUuNyAyLjkgMjQuMyAwIDQzLjktMTkuNyA0My45LTQzLjlsMC0zMjguMmMwLTI0LjMtMTkuNy00My45LTQzLjktNDMuOS01LjUgMC0xMC43IDEtMTUuNyAyLjktMTIuOSA0LjktMTAzLjQgMzcuMS0yMjguNCAzNy4xUzcyLjUgNTUuNyA1OS42IDUwLjlDNTQuNiA0OSA0OS40IDQ4IDQzLjkgNDh6TTcyIDE3NmE0MCA0MCAwIDEgMSA4MCAwIDQwIDQwIDAgMSAxIC04MCAwem0yNjQuMS0xNmM3LjUgMCAxNC42IDMuNiAxOS4xIDkuNkw0NzkuNyAzMzYuMmM1LjkgNy45IDYuNCAxOC41IDEuMyAyNi45cy0xNC44IDEyLjgtMjQuNSAxMS4xYy00NS44LTcuOC0xMDMuMy0xNC4yLTE2OC40LTE0LjItNjUuNiAwLTEyMy40IDYuNS0xNjkuMyAxNC40LTkuOCAxLjctMTkuNy0yLjktMjQuNy0xMS41cy00LjMtMTkuNCAxLjktMjcuMkwxNjUuMyAyNDljNC42LTUuNyAxMS41LTkgMTguNy05czE0LjIgMy4zIDE4LjcgOWwyNy41IDM0LjQgODYuNy0xMTMuOWM0LjYtNiAxMS43LTkuNSAxOS4yLTkuNXoiXX0scXc9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2xvY2stcm90YXRlLWxlZnQiLGljb246WzU3Niw1MTIsWyJoaXN0b3J5Il0sImYxZGEiLCJNMjg4IDY0YzEwNiAwIDE5MiA4NiAxOTIgMTkyUzM5NCA0NDggMjg4IDQ0OGMtNjUuMiAwLTEyMi45LTMyLjUtMTU3LjYtODIuMy0xMC4xLTE0LjUtMzAuMS0xOC00NC42LTcuOXMtMTggMzAuMS03LjkgNDQuNkMxMjQuMSA0NjguNiAyMDEgNTEyIDI4OCA1MTIgNDI5LjQgNTEyIDU0NCAzOTcuNCA1NDQgMjU2UzQyOS40IDAgMjg4IDBDMjAyLjMgMCAxMjYuNSA0Mi4xIDgwIDEwNi43TDgwIDgwYzAtMTcuNy0xNC4zLTMyLTMyLTMyUzE2IDYyLjMgMTYgODBsMCAxMTJjMCAxNy43IDE0LjMgMzIgMzIgMzJsMjQuNiAwYy41IDAgMSAwIDEuNSAwbDg2IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTM4LjMgMEMxNTQuOSAxMDIuNiAyMTcgNjQgMjg4IDY0em0yNCA4OGMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGwwIDEwNGMwIDYuNCAyLjUgMTIuNSA3IDE3bDcyIDcyYzkuNCA5LjQgMjQuNiA5LjQgMzMuOSAwczkuNC0yNC42IDAtMzMuOWwtNjUtNjUgMC05NC4xeiJdfSxfTXI9cXcsVE1yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Imphci13aGVhdCIsaWNvbjpbMzIwLDUxMixbXSwiZTUxNyIsIk0zMi04YzAtMTMuMyAxMC43LTI0IDI0LTI0bDIwOCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0TDU2IDE2QzQyLjcgMTYgMzIgNS4zIDMyLTh6TTAgMTI4QzAgOTIuNyAyOC43IDY0IDY0IDY0bDE5MiAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMzIwYzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDUxMmMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCAxMjh6bTExMiAzMmwtNDIuMiAwYy0zLjIgMC01LjggMi42LTUuOCA1LjggMCAzMi4xIDI2IDU4LjIgNTguMiA1OC4ybDc1LjYgMGMzMi4xIDAgNTguMi0yNiA1OC4yLTU4LjIgMC0zLjItMi42LTUuOC01LjgtNS44TDIwOCAxNjBjLTE5LjEgMC0zNi4zIDguNC00OCAyMS43LTExLjctMTMuMy0yOC45LTIxLjctNDgtMjEuN3ptNDggMTE3LjdjLTExLjctMTMuMy0yOC45LTIxLjctNDgtMjEuN2wtNDIuMiAwYy0zLjIgMC01LjggMi42LTUuOCA1LjggMCAzMi4xIDI2IDU4LjIgNTguMiA1OC4ybDc1LjYgMGMzMi4xIDAgNTguMi0yNiA1OC4yLTU4LjIgMC0zLjItMi42LTUuOC01LjgtNS44TDIwOCAyNTZjLTE5LjEgMC0zNi4zIDguNC00OCAyMS43ek0xMTIgMzUybC00Mi4yIDBjLTMuMiAwLTUuOCAyLjYtNS44IDUuOCAwIDMyLjEgMjYgNTguMiA1OC4yIDU4LjJsMjEuOCAwIDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2czE2LTcuMiAxNi0xNmwwLTMyIDIxLjggMGMzMi4xIDAgNTguMi0yNiA1OC4yLTU4LjIgMC0zLjItMi42LTUuOC01LjgtNS44TDIwOCAzNTJjLTE5LjEgMC0zNi4zIDguNC00OCAyMS43LTExLjctMTMuMy0yOC45LTIxLjctNDgtMjEuN3oiXX0sQTJlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNsb3VkLWFycm93LWRvd24iLGljb246WzU3Niw1MTIsWzYyMzM3LCJjbG91ZC1kb3dubG9hZCIsImNsb3VkLWRvd25sb2FkLWFsdCJdLCJmMGVkIiwiTTE0NCA0ODBjLTc5LjUgMC0xNDQtNjQuNS0xNDQtMTQ0IDAtNjMuNCA0MS0xMTcuMiA5Ny45LTEzNi41LTEuMy03LjctMS45LTE1LjUtMS45LTIzLjUgMC03OS41IDY0LjUtMTQ0IDE0NC0xNDQgNTUuNCAwIDEwMy41IDMxLjMgMTI3LjYgNzcuMSAxNC4yLTguMyAzMC44LTEzLjEgNDguNC0xMy4xIDUzIDAgOTYgNDMgOTYgOTYgMCAxNS43LTMuOCAzMC42LTEwLjUgNDMuNyA0NCAyMC4zIDc0LjUgNjQuNyA3NC41IDExNi4zIDAgNzAuNy01Ny4zIDEyOC0xMjggMTI4bC0zMDQgMHpNMzc3IDMxM2M5LjQtOS40IDkuNC0yNC42IDAtMzMuOXMtMjQuNi05LjQtMzMuOSAwbC0zMSAzMSAwLTEwMi4xYzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0bDAgMTAyLjEtMzEtMzFjLTkuNC05LjQtMjQuNi05LjQtMzMuOSAwcy05LjQgMjQuNiAwIDMzLjlsNzIgNzJjOS40IDkuNCAyNC42IDkuNCAzMy45IDBsNzItNzJ6Il19LExNcj1BMmUsRE1yPUEyZSx6RGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidHJ1Y2stcmFtcC1ib3giLGljb246WzU3Niw1MTIsWyJ0cnVjay1sb2FkaW5nIl0sImY0ZGUiLCJNNDAwIDMyYy00NC4yIDAtODAgMzUuOC04MCA4MGwwIDI0OC4yLTI5Ny4yIDg5LjJDNS45IDQ1NC40LTMuNyA0NzIuMyAxLjQgNDg5LjJzMjIuOSAyNi41IDM5LjggMjEuNWwzMTUuNS05NC42IDQzLjcgMGMtLjIgMi42LS40IDUuMy0uNCA4IDAgNDguNiAzOS40IDg4IDg4IDg4czg4LTM5LjQgODgtODhsMC0zOTItMTc2IDB6TTUyOCA0MjRjMCAyMi4xLTE3LjkgNDAtNDAgNDBzLTQwLTE3LjktNDAtNDAgMTcuOS00MCA0MC00MGMyMi4xIDAgMzkuOSAxNy45IDQwIDM5LjlsMCAuMXpNNTEuOSAxNDkuNUMxOC4xIDE1OS44LS45IDE5NS42IDkuNCAyMjkuNGwyOC4xIDkxLjhDNDcuOCAzNTUgODMuNiAzNzQgMTE3LjQgMzYzLjdsOTEuOC0yOC4xYzMzLjgtMTAuMyA1Mi44LTQ2LjEgNDIuNS03OS45bC0yOC4xLTkxLjhjLTEwLjMtMzMuOC00Ni4xLTUyLjgtNzkuOS00Mi41TDUxLjkgMTQ5LjV6Il19LEFNcj16RGUsRU1yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFuZ2xlLWRvd24iLGljb246WzM4NCw1MTIsWzg5NjRdLCJmMTA3IiwiTTE2OS40IDM3NC42YzEyLjUgMTIuNSAzMi44IDEyLjUgNDUuMyAwbDE2MC0xNjBjMTIuNS0xMi41IDEyLjUtMzIuOCAwLTQ1LjNzLTMyLjgtMTIuNS00NS4zIDBMMTkyIDMwNi43IDU0LjYgMTY5LjRjLTEyLjUtMTIuNS0zMi44LTEyLjUtNDUuMyAwcy0xMi41IDMyLjggMCA0NS4zbDE2MCAxNjB6Il19LCRNcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwbHVnLWNpcmNsZS1jaGVjayIsaWNvbjpbNjQwLDUxMixbXSwiZTU1YyIsIk0xOTItMzJjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCA5NiAxMjggMCAwLTk2YzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJsMCA5NiA2NCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybDAgNDguN2MtOTguNiA4LjEtMTc2IDkwLjctMTc2IDE5MS4zIDAgMjcuMyA1LjcgNTMuMyAxNiA3Ni45bDAgMy4xYzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtNjYuN0MxNjUuMiAzOTguMSA5NiAzMTkuMSA5NiAyMjRsMC02NGMtMTcuNyAwLTMyLTE0LjMtMzItMzJTNzguMyA5NiA5NiA5Nmw2NCAwIDAtOTZjMC0xNy43IDE0LjMtMzIgMzItMzJ6TTM1MiA0MDBhMTQ0IDE0NCAwIDEgMSAyODggMCAxNDQgMTQ0IDAgMSAxIC0yODggMHptMjAxLjQtNjAuOWMtNy4xLTUuMi0xNy4yLTMuNi0yMi40IDMuNWwtNTMgNzIuOS0yNi44LTI2LjhjLTYuMi02LjItMTYuNC02LjItMjIuNiAwcy02LjIgMTYuNCAwIDIyLjZsNDAgNDBjMy4zIDMuMyA3LjkgNSAxMi42IDQuNnM4LjktMi44IDExLjctNi41bDY0LTg4YzUuMi03LjEgMy42LTE3LjItMy41LTIyLjN6Il19LFBNcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ3aW5kb3ctbWF4aW1pemUiLGljb246WzUxMiw1MTIsWzEyODQ3MF0sImYyZDAiLCJNNjQgNjRDMjguNyA2NCAwIDkyLjcgMCAxMjhMMCAzODRjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzg0IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0yNTZjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgNjR6bTI0IDY0bDMzNiAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0TDg4IDE3NmMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNHoiXX0sSU1yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhhbmRzLWhvbGRpbmctY2lyY2xlIixpY29uOls2NDAsNTEyLFtdLCJlNGZiIiwiTTMyMCAwYTEyOCAxMjggMCAxIDEgMCAyNTYgMTI4IDEyOCAwIDEgMSAwLTI1NnpNNDAgNjRjMjIuMSAwIDQwIDE3LjkgNDAgNDBsMCAxNjAuMmMwIDE3IDYuNyAzMy4zIDE4LjcgNDUuM2w1MS4xIDUxLjFjOC4zIDguMyAyMS4zIDkuNiAzMSAzLjEgMTIuOS04LjYgMTQuNy0yNi45IDMuNy0zNy44LTcuMy03LjMtMjMuMS0yMy4xLTQ3LjItNDcuMi0xMi41LTEyLjUtMTIuNS0zMi44IDAtNDUuM3MzMi44LTEyLjUgNDUuMyAwYzI0LjEgMjQuMSAzOS45IDM5LjkgNDcuMiA0Ny4ybDAgMCAyNS4zIDI1LjNjMjEgMjEgMzIuOCA0OS41IDMyLjggNzkuMmwwIDc4LjljMCAyNi41LTIxLjUgNDgtNDggNDhsLTY2LjcgMGMtMTcgMC0zMy4zLTYuNy00NS4zLTE4LjdMMjguMSAzOTMuNEMxMC4xIDM3NS40IDAgMzUxIDAgMzI1LjVMMCAxMDRDMCA4MS45IDE3LjkgNjQgNDAgNjR6bTU2MCAwYzIyLjEgMCA0MCAxNy45IDQwIDQwbDAgMjIxLjVjMCAyNS41LTEwLjEgNDkuOS0yOC4xIDY3LjlMNTEyIDQ5My4zYy0xMiAxMi0yOC4zIDE4LjctNDUuMyAxOC43TDQwMCA1MTJjLTI2LjUgMC00OC0yMS41LTQ4LTQ4bDAtNzguOWMwLTI5LjcgMTEuOC01OC4yIDMyLjgtNzkuMmwyNS4zLTI1LjMgMCAwYzcuMy03LjMgMjMuMS0yMy4xIDQ3LjItNDcuMiAxMi41LTEyLjUgMzIuOC0xMi41IDQ1LjMgMHMxMi41IDMyLjggMCA0NS4zYy0yNC4xIDI0LjEtMzkuOSAzOS45LTQ3LjIgNDcuMi0xMSAxMS05LjIgMjkuMiAzLjcgMzcuOCA5LjcgNi41IDIyLjcgNS4yIDMxLTMuMWw1MS4xLTUxLjFjMTItMTIgMTguNy0yOC4zIDE4LjctNDUuM0w1NjAgMTA0YzAtMjIuMSAxNy45LTQwIDQwLTQweiJdfSxDRGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibG9jYXRpb24tcGluIixpY29uOlszODQsNTEyLFsibWFwLW1hcmtlciJdLCJmMDQxIiwiTTE5MiAwQzg2IDAgMCA4NC40IDAgMTg4LjYgMCAzMDcuOSAxMjAuMiA0NTAuOSAxNzAuNCA1MDUuNCAxODIuMiA1MTguMiAyMDEuOCA1MTguMiAyMTMuNiA1MDUuNCAyNjMuOCA0NTAuOSAzODQgMzA3LjkgMzg0IDE4OC42IDM4NCA4NC40IDI5OCAwIDE5MiAweiJdfSxOTXI9Q0RlLEZNcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJib3dsaW5nLWJhbGwiLGljb246WzUxMiw1MTIsW10sImY0MzYiLCJNMjU2IDUxMmEyNTYgMjU2IDAgMSAwIDAtNTEyIDI1NiAyNTYgMCAxIDAgMCA1MTJ6TTI0MCA4MGEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6TTIwOCAyMDhhMzIgMzIgMCAxIDEgNjQgMCAzMiAzMiAwIDEgMSAtNjQgMHptLTY0LTY0YTMyIDMyIDAgMSAxIDAgNjQgMzIgMzIgMCAxIDEgMC02NHoiXX0sX0RlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNhcnQtZmxhdGJlZCIsaWNvbjpbNTc2LDUxMixbImRvbGx5LWZsYXRiZWQiXSwiZjQ3NCIsIk0zMiAwQzE0LjMgMCAwIDE0LjMgMCAzMlMxNC4zIDY0IDMyIDY0bDE2IDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMjg4YzAgMzkuOCAyOS4xIDcyLjggNjcuMSA3OS0yIDUuMy0zLjEgMTEtMy4xIDE3IDAgMjYuNSAyMS41IDQ4IDQ4IDQ4czQ4LTIxLjUgNDgtNDhjMC01LjYtMS0xMS0yLjctMTZsMTk3LjUgMGMtMS44IDUtMi43IDEwLjQtMi43IDE2IDAgMjYuNSAyMS41IDQ4IDQ4IDQ4czQ4LTIxLjUgNDgtNDhjMC01LjYtMS0xMS0yLjctMTZsMzQuNyAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC00MDAgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMjg4QzEyOCAzNS44IDkyLjIgMCA0OCAwTDMyIDB6TTIyNCA2NGMtMjYuNSAwLTQ4IDIxLjUtNDggNDhsMCAxNzZjMCAyNi41IDIxLjUgNDggNDggNDhsMjQwIDBjMjYuNSAwIDQ4LTIxLjUgNDgtNDhsMC0xNzZjMC0yNi41LTIxLjUtNDgtNDgtNDhMMjI0IDY0eiJdfSxPTXI9X0RlLFREZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJob3VzZS11c2VyIixpY29uOls1MTIsNTEyLFsiaG9tZS11c2VyIl0sImUxYjAiLCJNMjc3LjggOC42Yy0xMi4zLTExLjQtMzEuMy0xMS40LTQzLjUgMGwtMjI0IDIwOGMtOS42IDktMTIuOCAyMi45LTggMzUuMVMxOC44IDI3MiAzMiAyNzJsMTYgMCAwIDE3NmMwIDM1LjMgMjguNyA2NCA2NCA2NGwyODggMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTE3NiAxNiAwYzEzLjIgMCAyNS04LjEgMjkuOC0yMC4zczEuNi0yNi4yLTgtMzUuMWwtMjI0LTIwOHpNMjAwIDI1NmE1NiA1NiAwIDEgMSAxMTIgMCA1NiA1NiAwIDEgMSAtMTEyIDB6TTE0NCA0MzJjMC00NC4yIDM1LjgtODAgODAtODBsNjQgMGM0NC4yIDAgODAgMzUuOCA4MCA4MCAwIDguOC03LjIgMTYtMTYgMTZsLTE5MiAwYy04LjggMC0xNi03LjItMTYtMTZ6Il19LFJNcj1URGUsQk1yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Imdob3N0IixpY29uOlszODQsNTEyLFsxMjgxMjNdLCJmNmUyIiwiTTQwLjEgNDY3LjFsLTExLjIgOUMyNS43IDQ3OC42IDIxLjggNDgwIDE3LjggNDgwIDggNDgwIDAgNDcyIDAgNDYyLjJMMCAxOTJDMCA4NiA4NiAwIDE5MiAwUzM4NCA4NiAzODQgMTkybDAgMjcwLjJjMCA5LjgtOCAxNy44LTE3LjggMTcuOC00IDAtNy45LTEuNC0xMS4xLTMuOWwtMTEuMi05Yy0xMy40LTEwLjctMzIuOC05LTQ0LjEgMy45TDI2OS4zIDUwNmMtMy4zIDMuOC04LjIgNi0xMy4zIDZzLTkuOS0yLjItMTMuMy02bC0yNi42LTMwLjVjLTEyLjctMTQuNi0zNS40LTE0LjYtNDguMiAwTDE0MS4zIDUwNmMtMy4zIDMuOC04LjIgNi0xMy4zIDZzLTkuOS0yLjItMTMuMy02TDg0LjIgNDcxYy0xMS4zLTEyLjktMzAuNy0xNC42LTQ0LjEtMy45ek0xNjAgMTkyYTMyIDMyIDAgMSAwIC02NCAwIDMyIDMyIDAgMSAwIDY0IDB6bTk2IDMyYTMyIDMyIDAgMSAwIDAtNjQgMzIgMzIgMCAxIDAgMCA2NHoiXX0sSE1yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNvbW1lbnQtbm9kZXMiLGljb246WzY0MCw1MTIsW10sImU2OTYiLCJNNDgwIDIwOEM1MDMuNyAyMDggNTI1LjYgMjE1LjMgNTQzLjcgMjI3LjkgNTM2LjkgMTAwLjkgNDI1IDAgMjg4IDAgMTQ2LjYgMCAzMiAxMDcuNSAzMiAyNDAgMzIgMjk0LjMgNTEuMiAzNDQuMyA4My42IDM4NC41TDM0LjggNDc2LjhjLTQuOCA5LTMuMyAyMCAzLjYgMjcuNXMxNy44IDkuOCAyNy4xIDUuOGwxMTguNC01MC43YzI3LjIgMTEuNCA1Ni45IDE4LjQgODguMSAyMC4yIC4xLTE4LjkgNC45LTM4IDE1LTU1LjUgMTcuMS0yOS43IDQ1LjgtNDguNSA3Ny01NC4ybDkuMi0xNmMtMy40LTEwLjctNS4yLTIyLTUuMi0zMy44IDAtNjEuOSA1MC4xLTExMiAxMTItMTEyek0zMjguNiA0NDhjLTE3LjcgMzAuNi03LjIgNjkuNyAyMy40IDg3LjRzNjkuNyA3LjIgODcuNC0yMy40YzEuNS0yLjYgMi44LTUuMyAzLjktOGw3My4zIDBjMS4xIDIuNyAyLjQgNS40IDMuOSA4IDE3LjcgMzAuNiA1Ni44IDQxLjEgODcuNCAyMy40czQxLjEtNTYuOCAyMy40LTg3LjRjLTEzLjQtMjMuMi0zOS4xLTM0LjgtNjQtMzEuNGwtMTcuNi0zMC43Yy0xMSAxMS43LTI1IDIwLjYtNDAuNiAyNS42bDE2LjUgMjguOWMtMy44IDQuOC02LjggMTAtOSAxNS42bC03My40IDBjLTIuMi01LjYtNS4zLTEwLjgtOS0xNS42bDMzLTU3LjdjNC4xIC44IDguNCAxLjMgMTIuOCAxLjMgMzUuMyAwIDY0LTI4LjcgNjQtNjRzLTI4LjctNjQtNjQtNjQtNjQgMjguNy02NCA2NGMwIDEzLjQgNC4xIDI1LjggMTEuMiAzNi4xbC0zNC42IDYwLjVjLTI1LTMuNC01MC42IDguMy02NCAzMS40eiJdfSxxTXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGVyc29uLWFycm93LWRvd24tdG8tbGluZSIsaWNvbjpbNTc2LDUxMixbXSwiZTUzOCIsIk0xOTItMzJhNTYgNTYgMCAxIDEgMCAxMTIgNTYgNTYgMCAxIDEgMC0xMTJ6TTMxOC4zIDI5OS4xbC00Ni4zLTYyLjQgMCAyNDMuMyAyNzIgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMkwzMiA1NDRjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsODAgMCAwLTI0My4zLTQ2LjMgNjIuNGMtMTAuNSAxNC4yLTMwLjYgMTcuMi00NC44IDYuNnMtMTcuMi0zMC42LTYuNi00NC44bDcwLjUtOTVDMTEwIDEzMiAxNDkuNyAxMTIgMTkyIDExMnM4MiAyMCAxMDcuMiA1My45bDcwLjUgOTVjMTAuNSAxNC4yIDcuNiAzNC4yLTYuNiA0NC44cy0zNC4yIDcuNi00NC44LTYuNnpNMTc2IDQ4MGwzMiAwIDAtMTI4YzAtOC44LTcuMi0xNi0xNi0xNnMtMTYgNy4yLTE2IDE2bDAgMTI4ek01NjYuNiAxNjYuNmwtODAgODBjLTEyLjUgMTIuNS0zMi44IDEyLjUtNDUuMyAwbC04MC04MGMtMTIuNS0xMi41LTEyLjUtMzIuOCAwLTQ1LjNzMzIuOC0xMi41IDQ1LjMgMEw0MzIgMTQ2LjcgNDMyIDBjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDE0Ni43IDI1LjQtMjUuNGMxMi41LTEyLjUgMzIuOC0xMi41IDQ1LjMgMHMxMi41IDMyLjggMCA0NS4zeiJdfSxqTXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGx1Zy1jaXJjbGUtcGx1cyIsaWNvbjpbNjQwLDUxMixbXSwiZTU1ZiIsIk0xOTItMzJjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCA5NiAxMjggMCAwLTk2YzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJsMCA5NiA2NCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybDAgNDguN2MtOTguNiA4LjEtMTc2IDkwLjctMTc2IDE5MS4zIDAgMjcuMyA1LjcgNTMuMyAxNiA3Ni45bDAgMy4xYzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtNjYuN0MxNjUuMiAzOTguMSA5NiAzMTkuMSA5NiAyMjRsMC02NGMtMTcuNyAwLTMyLTE0LjMtMzItMzJTNzguMyA5NiA5NiA5Nmw2NCAwIDAtOTZjMC0xNy43IDE0LjMtMzIgMzItMzJ6TTQ5NiAyNTZhMTQ0IDE0NCAwIDEgMSAwIDI4OCAxNDQgMTQ0IDAgMSAxIDAtMjg4em0xNiA4MGMwLTguOC03LjItMTYtMTYtMTZzLTE2IDcuMi0xNiAxNmwwIDQ4LTQ4IDBjLTguOCAwLTE2IDcuMi0xNiAxNnM3LjIgMTYgMTYgMTZsNDggMCAwIDQ4YzAgOC44IDcuMiAxNiAxNiAxNnMxNi03LjIgMTYtMTZsMC00OCA0OCAwYzguOCAwIDE2LTcuMiAxNi0xNnMtNy4yLTE2LTE2LTE2bC00OCAwIDAtNDh6Il19LExEZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwZXJzb24tc3dpbW1pbmciLGljb246WzY0MCw1MTIsWzEyNzk0Niwic3dpbW1lciJdLCJmNWM0IiwiTTU1MiAxNTJhNTYgNTYgMCAxIDAgLTExMiAwIDU2IDU2IDAgMSAwIDExMiAwek0yOTMuNCAxOTguMmwtODguNiA3My45YzEuMSAwIDIuMi0uMSAzLjMtLjEgMzMuMS0uMiA2Ni4zIDEwLjIgOTQuNCAzMS40IDIyLjEgMTYuNiAyOS4xIDE2LjYgNTEuMiAwIDI3LjUtMjAuNyA1OS45LTMxLjIgOTIuNC0zMS40IDQuOCAwIDkuNyAuMiAxNC41IC42LTguMy0zMC0yNC4zLTU3LjctNDYuOC04MC4yLTE4LjQtMTguNC00MC42LTMyLjctNjUtNDEuOGwtNjguNi0yNS43Yy0yNy40LTEwLjMtNTgtNy41LTgzLjEgNy42bC01My41IDMyLjFjLTE1LjIgOS4xLTIwLjEgMjguNy0xMSA0My45czI4LjcgMjAuMSA0My45IDExTDIzMCAxODcuM2M4LjQtNSAxOC42LTUuOSAyNy43LTIuNWwzNS43IDEzLjR6bTExMCAxODEuOWMyMS4zLTE2LjEgNDkuOS0xNi4xIDcxLjIgMCAxOSAxNC40IDQxLjkgMjguMiA2Ny4yIDMzLjMgMjYuNSA1LjQgNTQuMyAuOCA4MC43LTE5LjEgMTAuNi04IDEyLjctMjMgNC43LTMzLjZzLTIzLTEyLjctMzMuNi00LjdjLTE0LjkgMTEuMi0yOC42IDEzLjEtNDIuMyAxMC4zLTE0LjktMy0zMC45LTExLjktNDcuOC0yNC42LTM4LjQtMjktOTAuNS0yOS0xMjkgMC0yNCAxOC4xLTQwLjcgMjYuMy01NC41IDI2LjNzLTMwLjUtOC4yLTU0LjUtMjYuM2MtMzguNC0yOS05MC41LTI5LTEyOSAwLTIxLjYgMTYuMy00MS4zIDI1LjgtNTguOSAyNS43LTkuNi0uMS0xOS45LTMtMzEuMi0xMS41LTEwLjYtOC0yNS42LTUuOS0zMy42IDQuN1M3IDM4Ni4zIDE3LjYgMzk0LjNjMTkuMSAxNC40IDM5LjQgMjEgNTkuOCAyMS4xIDMzLjkgLjIgNjQuMy0xNy40IDg4LjEtMzUuMyAyMS4zLTE2LjEgNDkuOS0xNi4xIDcxLjIgMCAyNC4yIDE4LjMgNTIuMyAzNS45IDgzLjQgMzUuOXM1OS4xLTE3LjcgODMuNC0zNS45eiJdfSxWTXI9TERlLEREZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjb21tZW50LWRvdHMiLGljb246WzUxMiw1MTIsWzEyODE3Miw2MjA3NSwiY29tbWVudGluZyJdLCJmNGFkIiwiTTI1NiA0ODBjMTQxLjQgMCAyNTYtMTA3LjUgMjU2LTI0MFMzOTcuNCAwIDI1NiAwIDAgMTA3LjUgMCAyNDBjMCA1NC4zIDE5LjIgMTA0LjMgNTEuNiAxNDQuNUwyLjggNDc2LjhjLTQuOCA5LTMuMyAyMCAzLjYgMjcuNXMxNy44IDkuOCAyNy4xIDUuOGwxMTguNC01MC43QzE4My43IDQ3Mi42IDIxOC45IDQ4MCAyNTYgNDgwek0xMjggMjA4YTMyIDMyIDAgMSAxIDAgNjQgMzIgMzIgMCAxIDEgMC02NHptMTI4IDBhMzIgMzIgMCAxIDEgMCA2NCAzMiAzMiAwIDEgMSAwLTY0em05NiAzMmEzMiAzMiAwIDEgMSA2NCAwIDMyIDMyIDAgMSAxIC02NCAweiJdfSxVTXI9RERlLEFEZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjaGFydC1waWUiLGljb246WzU3Niw1MTIsWyJwaWUtY2hhcnQiXSwiZjIwMCIsIk01MTIuNCAyNDBsLTE3NiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTE3NmMwLTE3LjcgMTQuNC0zMi4yIDMxLjktMjkuOSAxMDcgMTQuMiAxOTEuOCA5OSAyMDYgMjA2IDIuMyAxNy41LTEyLjIgMzEuOS0yOS45IDMxLjl6TTIyMi42IDM3LjJjMTguMS0zLjggMzMuOCAxMSAzMy44IDI5LjVsMCAxOTcuM2MwIDUuNiAyIDExIDUuNSAxNS4zTDM5NCA0MzguN2MxMS43IDE0LjEgOS4yIDM1LjQtNi45IDQ0LjEtMzQuMSAxOC42LTczLjIgMjkuMi0xMTQuNyAyOS4yLTEzMi41IDAtMjQwLTEwNy41LTI0MC0yNDAgMC0xMTUuNSA4MS41LTIxMS45IDE5MC4yLTIzNC44ek00NzcuOCAyODhsNjQgMGMxOC41IDAgMzMuMyAxNS43IDI5LjUgMzMuOC0xMC4yIDQ4LjQtMzUgOTEuNC02OS42IDEyNC4yLTEyLjMgMTEuNy0zMS42IDkuMi00Mi40LTMuOUwzNzQuOSAzNDAuNGMtMTcuMy0yMC45LTIuNC01Mi40IDI0LjYtNTIuNGw3OC4yIDB6Il19LFdNcj1BRGUsR01yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZyb2ciLGljb246WzU3Niw1MTIsW10sImY1MmUiLCJNMzY4IDMyYzQxLjcgMCA3NS45IDMxLjggNzkuNyA3Mi41bDg1LjYgMjYuM2MyNS40IDcuOCA0Mi44IDMxLjMgNDIuOCA1Ny45IDAgMjEuOC0xMS43IDQxLjktMzAuNyA1Mi43bC0xNDQuNSA4Mi4xIDkyLjUgOTIuNSA1MC43IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTY0IDBjLTguNSAwLTE2LjYtMy40LTIyLjYtOS40TDM0Ni45IDM2MC4yYzExLjctMzYgMy4yLTc3LjEtMjUuNC0xMDUuNy00MC42LTQwLjYtMTA2LjMtNDAuNi0xNDYuOS0uMUwxMDEgMzI0LjRjLTYuNCA2LjEtNi43IDE2LjItLjYgMjIuNnMxNi4yIDYuNiAyMi42IC42bDczLjgtNzAuMiAuMS0uMSAuMS0uMWMzLjUtMy41IDcuMy02LjYgMTEuMy05LjIgMjcuOS0xOC41IDY1LjktMTUuNCA5MC41IDkuMiAyNC43IDI0LjcgMjcuNyA2Mi45IDkgOTAuOS0yLjYgMy44LTUuNiA3LjUtOSAxMC45TDI2MS44IDQxNiAzNTIgNDE2YzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMyTDY0IDQ4MEMyOC43IDQ4MCAwIDQ1MS4zIDAgNDE2IDAgMjQ5LjYgMTI3IDExMi45IDI4OS4zIDk3LjUgMjk2LjIgNjAuMiAzMjguOCAzMiAzNjggMzJ6bTAgMTA0YTI0IDI0IDAgMSAwIDAtNDggMjQgMjQgMCAxIDAgMCA0OHoiXX0sWU1yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6IndpbmUtYm90dGxlIixpY29uOlszMjAsNTEyLFtdLCJmNzJmIiwiTTgwLTMyYzAtMTcuNyAxNC4zLTMyIDMyLTMybDk2IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzIgMCAxMS44LTYuNCAyMi4yLTE2IDI3LjdsMCAxNDUuNmM1Ni41IDI0LjcgOTYgODEuMSA5NiAxNDYuN2wwIDIyNGMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA1NzZjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgMjg4YzAtNjUuNiAzOS41LTEyMiA5Ni0xNDYuN0w5Ni00LjNDODYuNC05LjggODAtMjAuMiA4MC0zMnpNOTYgMjg4Yy0xNy43IDAtMzIgMTQuMy0zMiAzMmwwIDEyOGMwIDE3LjcgMTQuMyAzMiAzMiAzMmwxMjggMGMxNy43IDAgMzItMTQuMyAzMi0zMmwwLTEyOGMwLTE3LjctMTQuMy0zMi0zMi0zMkw5NiAyODh6Il19LFpNcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJpbmJveCIsaWNvbjpbNTEyLDUxMixbXSwiZjAxYyIsIk05MS44IDMyQzU5LjkgMzIgMzIuOSA1NS40IDI4LjQgODYuOUwuNiAyODEuMmMtLjQgMy0uNiA2LS42IDkuMUwwIDQxNmMwIDM1LjMgMjguNyA2NCA2NCA2NGwzODQgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTEyNS43YzAtMy0uMi02LjEtLjYtOS4xTDQ4My42IDg2LjlDNDc5LjEgNTUuNCA0NTIuMSAzMiA0MjAuMiAzMkw5MS44IDMyem0wIDY0bDMyOC41IDAgMjcuNCAxOTItNTkuOSAwYy0xMi4xIDAtMjMuMiA2LjgtMjguNiAxNy43bC0xNC4zIDI4LjZjLTUuNCAxMC44LTE2LjUgMTcuNy0yOC42IDE3LjdsLTEyMC40IDBjLTEyLjEgMC0yMy4yLTYuOC0yOC42LTE3LjdsLTE0LjMtMjguNmMtNS40LTEwLjgtMTYuNS0xNy43LTI4LjYtMTcuN0w2NC4zIDI4OCA5MS44IDk2eiJdfSxFRGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic3F1YXJlLWgiLGljb246WzQ0OCw1MTIsWyJoLXNxdWFyZSJdLCJmMGZkIiwiTTY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZMMCA0MTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzIwIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zMjBjMC0zNS4zLTI4LjctNjQtNjQtNjRMNjQgMzJ6TTMyMCAxNjhsMCAxNzZjMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjRsMC02NC05NiAwIDAgNjRjMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjRsMC0xNzZjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNGwwIDY0IDk2IDAgMC02NGMwLTEzLjMgMTAuNy0yNCAyNC0yNHMyNCAxMC43IDI0IDI0eiJdfSxYTXI9RURlLFFNcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJob3VzZS1tZWRpY2FsIixpY29uOls1MTIsNTEyLFtdLCJlM2IyIiwiTTI3Ny44IDguNmMtMTIuMy0xMS40LTMxLjMtMTEuNC00My41IDBsLTIyNCAyMDhjLTkuNiA5LTEyLjggMjIuOS04IDM1LjFTMTguOCAyNzIgMzIgMjcybDE2IDAgMCAxNzZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMjg4IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0xNzYgMTYgMGMxMy4yIDAgMjUtOC4xIDI5LjgtMjAuM3MxLjYtMjYuMi04LTM1LjFsLTIyNC0yMDh6TTIyNCAyNDhjMC04LjggNy4yLTE2IDE2LTE2bDMyIDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgNDAgNDAgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTQwIDAgMCA0MGMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTQwLTQwIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyYzAtOC44IDcuMi0xNiAxNi0xNmw0MCAwIDAtNDB6Il19LCREZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjaXJjbGUtY2hldnJvbi1yaWdodCIsaWNvbjpbNTEyLDUxMixbImNoZXZyb24tY2lyY2xlLXJpZ2h0Il0sImYxMzgiLCJNMCAyNTZhMjU2IDI1NiAwIDEgMCA1MTIgMCAyNTYgMjU2IDAgMSAwIC01MTIgMHpNMjQxIDM3N2MtOS40IDkuNC0yNC42IDkuNC0zMy45IDBzLTkuNC0yNC42IDAtMzMuOWw4Ny04Ny04Ny04N2MtOS40LTkuNC05LjQtMjQuNiAwLTMzLjlzMjQuNi05LjQgMzMuOSAwTDM0NSAyMzljOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlMMjQxIDM3N3oiXX0sS01yPSREZSxKTXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmlsZS1jc3YiLGljb246WzU3Niw1MTIsW10sImY2ZGQiLCJNOTYgMEM2MC43IDAgMzIgMjguNyAzMiA2NGwwIDM4NGMwIDM1LjMgMjguNyA2NCA2NCA2NGw4MCAwIDAtMTEyYzAtMzUuMyAyOC43LTY0IDY0LTY0bDE3NiAwIDAtMTY1LjVjMC0xNy02LjctMzMuMy0xOC43LTQ1LjNMMjkwLjcgMTguN0MyNzguNyA2LjcgMjYyLjUgMCAyNDUuNSAwTDk2IDB6TTM1Ny41IDE3NkwyNjQgMTc2Yy0xMy4zIDAtMjQtMTAuNy0yNC0yNEwyNDAgNTguNSAzNTcuNSAxNzZ6TTI2NCAzODBjLTI0LjMgMC00NCAxOS43LTQ0IDQ0bDAgODBjMCAyNC4zIDE5LjcgNDQgNDQgNDRsMTYgMGMyNC4zIDAgNDQtMTkuNyA0NC00NGwwLThjMC0xMS05LTIwLTIwLTIwcy0yMCA5LTIwIDIwbDAgOGMwIDIuMi0xLjggNC00IDRsLTE2IDBjLTIuMiAwLTQtMS44LTQtNGwwLTgwYzAtMi4yIDEuOC00IDQtNGwxNiAwYzIuMiAwIDQgMS44IDQgNGwwIDhjMCAxMSA5IDIwIDIwIDIwczIwLTkgMjAtMjBsMC04YzAtMjQuMy0xOS43LTQ0LTQ0LTQ0bC0xNiAwem0xMzYgMGMtMjguNyAwLTUyIDIzLjMtNTIgNTJzMjMuMyA1MiA1MiA1MmM2LjYgMCAxMiA1LjQgMTIgMTJzLTUuNCAxMi0xMiAxMmwtMzIgMGMtMTEgMC0yMCA5LTIwIDIwczkgMjAgMjAgMjBsMzIgMGMyOC43IDAgNTItMjMuMyA1Mi01MnMtMjMuMy01Mi01Mi01MmMtNi42IDAtMTItNS40LTEyLTEyczUuNC0xMiAxMi0xMmwyNCAwYzExIDAgMjAtOSAyMC0yMHMtOS0yMC0yMC0yMGwtMjQgMHptOTYgMGMtMTEgMC0yMCA5LTIwIDIwbDAgMzEuNmMwIDM1LjUgMTAuNSA3MC4zIDMwLjIgOTkuOGw1LjEgNy43YzMuNyA1LjYgMTAgOC45IDE2LjYgOC45czEyLjktMy4zIDE2LjYtOC45bDUuMS03LjdjMTkuNy0yOS42IDMwLjItNjQuMyAzMC4yLTk5LjhsMC0zMS42YzAtMTEtOS0yMC0yMC0yMHMtMjAgOS0yMCAyMGwwIDMxLjZjMCAxOS42LTQuMSAzOC45LTEyIDU2LjctNy45LTE3LjgtMTItMzcuMS0xMi01Ni43bDAtMzEuNmMwLTExLTktMjAtMjAtMjB6Il19LGVrcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJoYXQtY293Ym95IixpY29uOls2NDAsNTEyLFtdLCJmOGMwIiwiTTE4Mi4yIDc2LjFMMTMwLjggMzA3LjVDMTQ1LjUgMzI0LjkgMTY3LjQgMzM2IDE5MiAzMzZsMjU2IDBjMjQuNiAwIDQ2LjUtMTEuMSA2MS4yLTI4LjVMNDU3LjggNzYuMWMtNS43LTI1LjgtMjguNi00NC4xLTU1LTQ0LjEtMTIuMiAwLTI0LjEgNC0zMy44IDExLjNsLTQuNyAzLjVjLTI2LjMgMTkuNy02Mi40IDE5LjctODguNiAwTDI3MSA0My4zYy05LjgtNy4zLTIxLjYtMTEuMy0zMy44LTExLjMtMjYuNCAwLTQ5LjMgMTguMy01NSA0NC4xek02NCAyNTZjMC0xNy43LTE0LjMtMzItMzItMzJTMCAyMzguMyAwIDI1NkMwIDM2MiA4NiA0NDggMTkyIDQ0OGwyNTYgMGMxMDYgMCAxOTItODYgMTkyLTE5MiAwLTE3LjctMTQuMy0zMi0zMi0zMnMtMzIgMTQuMy0zMiAzMmMwIDcwLjctNTcuMyAxMjgtMTI4IDEyOGwtMjU2IDBjLTcwLjcgMC0xMjgtNTcuMy0xMjgtMTI4eiJdfSxQRGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmFjZS1ncmluLXRvbmd1ZS13aW5rIixpY29uOls1MTIsNTEyLFsxMjg1NDAsImdyaW4tdG9uZ3VlLXdpbmsiXSwiZjU4YiIsIk0xNTIuMiA0OTAuMUM2Mi41IDQ1MC4yIDAgMzYwLjQgMCAyNTYgMCAxMTQuNiAxMTQuNiAwIDI1NiAwUzUxMiAxMTQuNiA1MTIgMjU2YzAgMTA0LjQtNjIuNSAxOTQuMi0xNTIuMiAyMzQuMSA1LjMtMTMgOC4yLTI3LjIgOC4yLTQyLjFsMC02MS43YzE2LjktMTYuNSAzMC4xLTM2LjcgMzguMy01OS4zIDQuMy0xMS44LTcuNy0yMS44LTE5LjYtMTguMS0zOS4yIDEyLjItODMuNyAxOS4xLTEzMC43IDE5LjFzLTkxLjUtNi45LTEzMC43LTE5LjFjLTExLjktMy43LTIzLjkgNi4zLTE5LjYgMTguMSA4LjMgMjIuNiAyMS41IDQyLjggMzguMyA1OS4zbDAgNjEuN2MwIDE0LjkgMi45IDI5LjEgOC4yIDQyLjF6TTE1MiAyMTJsMTYgMGMxMSAwIDIwIDkgMjAgMjBzOSAyMCAyMCAyMCAyMC05IDIwLTIwYzAtMzMuMS0yNi45LTYwLTYwLTYwbC0xNiAwYy0zMy4xIDAtNjAgMjYuOS02MCA2MCAwIDExIDkgMjAgMjAgMjBzMjAtOSAyMC0yMCA5LTIwIDIwLTIwem0xODQgNjBhNjQgNjQgMCAxIDAgMC0xMjggNjQgNjQgMCAxIDAgMCAxMjh6TTMyMCA0MDIuNmwwIDQ1LjRjMCAzNS4zLTI4LjcgNjQtNjQgNjRzLTY0LTI4LjctNjQtNjRsMC00NS40YzAtMTQuNyAxMS45LTI2LjYgMjYuNi0yNi42bDIgMGMxMS4zIDAgMjEuMSA3LjkgMjMuNiAxOC45IDIuOCAxMi42IDIwLjggMTIuNiAyMy42IDAgMi41LTExLjEgMTIuMy0xOC45IDIzLjYtMTguOWwyIDBjMTQuNyAwIDI2LjYgMTEuOSAyNi42IDI2LjZ6TTMzNiAxODRhMjQgMjQgMCAxIDEgMCA0OCAyNCAyNCAwIDEgMSAwLTQ4eiJdfSx0a3I9UERlLHJrcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJsIixpY29uOlszMjAsNTEyLFsxMDhdLCI0YyIsIk02NCAzMmMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDM1MiAxOTIgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMkw2NCA0ODBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyTDMyIDY0YzAtMTcuNyAxNC4zLTMyIDMyLTMyeiJdfSxFMmU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYXJyb3ctZG93bi1zaG9ydC13aWRlIixpY29uOls1NzYsNTEyLFsic29ydC1hbW91bnQtZGVzYyIsInNvcnQtYW1vdW50LWRvd24tYWx0Il0sImY4ODQiLCJNMjQ2LjYgMzc0LjZsLTk2IDk2Yy0xMi41IDEyLjUtMzIuOCAxMi41LTQ1LjMgMGwtOTYtOTZjLTEyLjUtMTIuNS0xMi41LTMyLjggMC00NS4zczMyLjgtMTIuNSA0NS4zIDBMOTYgMzcwLjcgOTYgNjRjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDMwNi43IDQxLjQtNDEuNGMxMi41LTEyLjUgMzIuOC0xMi41IDQ1LjMgMHMxMi41IDMyLjggMCA0NS4zek0zMjAgMzJsMzIgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtMzIgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMnptMCAxMjhsOTYgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtOTYgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMnptMCAxMjhsMTYwIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTE2MCAwYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMyem0wIDEyOGwyMjQgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtMjI0IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJ6Il19LGFrcj1FMmUsaWtyPUUyZSxJRGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaG91cmdsYXNzLWhhbGYiLGljb246WzM4NCw1MTIsWyJob3VyZ2xhc3MtMiJdLCJmMjUyIiwiTTMyIDBDMTQuMyAwIDAgMTQuMyAwIDMyUzE0LjMgNjQgMzIgNjRsMCAxMWMwIDQyLjQgMTYuOSA4My4xIDQ2LjkgMTEzLjFsNjcuOSA2Ny45LTY3LjkgNjcuOUM0OC45IDM1My45IDMyIDM5NC42IDMyIDQzN2wwIDExYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDMyMCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybDAtMTFjMC00Mi40LTE2LjktODMuMS00Ni45LTExMy4xbC02Ny45LTY3LjkgNjcuOS02Ny45YzMwLTMwIDQ2LjktNzAuNyA0Ni45LTExMy4xbDAtMTFjMTcuNyAwIDMyLTE0LjMgMzItMzJTMzY5LjcgMCAzNTIgMEwzMiAwek05NiA3NWwwLTExIDE5MiAwIDAgMTFjMCAxOS01LjYgMzcuNC0xNiA1M0wxMTIgMTI4Yy0xMC4zLTE1LjYtMTYtMzQtMTYtNTN6bTE2IDMwOWMzLjUtNS4zIDcuNi0xMC4zIDEyLjEtMTQuOWw2Ny45LTY3LjkgNjcuOSA2Ny45YzQuNiA0LjYgOC42IDkuNiAxMi4yIDE0LjlMMTEyIDM4NHoiXX0sb2tyPUlEZSxORGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic3Bvb24iLGljb246WzUxMiw1MTIsWzEyOTM0OCw2MTg3MywidXRlbnNpbC1zcG9vbiJdLCJmMmU1IiwiTTI0NS44IDIyMC45Yy0xNC41LTE3LjYtMjEuOC0zOS4yLTIxLjgtNjAuOCAwLTgwLjIgOTYtMTYwLjIgMTkyLTE2MC4yIDUzIDAgOTYgNDMgOTYgOTYgMCA5Ni04MCAxOTItMTYwLjIgMTkyLTIxLjYgMC00My4yLTcuMy02MC44LTIxLjhMNTQuNiA1MDIuNmMtMTIuNSAxMi41LTMyLjggMTIuNS00NS4zIDBzLTEyLjUtMzIuOCAwLTQ1LjNMMjQ1LjggMjIwLjl6Il19LG5rcj1ORGUsRkRlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNyZWRpdC1jYXJkIixpY29uOls1MTIsNTEyLFsxMjgxNzksNjIwODMsImNyZWRpdC1jYXJkLWFsdCJdLCJmMDlkIiwiTTAgMTI4bDAgMzIgNTEyIDAgMC0zMmMwLTM1LjMtMjguNy02NC02NC02NEw2NCA2NEMyOC43IDY0IDAgOTIuNyAwIDEyOHptMCA4MEwwIDM4NGMwIDM1LjMgMjguNyA2NCA2NCA2NGwzODQgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTE3Ni01MTIgMHpNNjQgMzYwYzAtMTMuMyAxMC43LTI0IDI0LTI0bDQ4IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTQ4IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0em0xNDQgMGMwLTEzLjMgMTAuNy0yNCAyNC0yNGw2NCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC02NCAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHoiXX0sc2tyPUZEZSxwbGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmlsZS1pbnZvaWNlLWRvbGxhciIsaWNvbjpbMzg0LDUxMixbXSwiZjU3MSIsIk0wIDY0QzAgMjguNyAyOC43IDAgNjQgMEwyMTMuNSAwYzE3IDAgMzMuMyA2LjcgNDUuMyAxOC43TDM2NS4zIDEyNS4zYzEyIDEyIDE4LjcgMjguMyAxOC43IDQ1LjNMMzg0IDQ0OGMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA1MTJjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgNjR6bTIwOC01LjVsMCA5My41YzAgMTMuMyAxMC43IDI0IDI0IDI0TDMyNS41IDE3NiAyMDggNTguNXpNNjQgODhjMCAxMy4zIDEwLjcgMjQgMjQgMjRsNDggMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNEw4OCA2NEM3NC43IDY0IDY0IDc0LjcgNjQgODh6bTAgOTZjMCAxMy4zIDEwLjcgMjQgMjQgMjRsNDggMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtNDggMGMtMTMuMyAwLTI0IDEwLjctMjQgMjR6bTExMiA3NmwwIDRjLTI4LjggLjMtNTIgMjMuNy01MiA1Mi41IDAgMjUuNyAxOC41IDQ3LjYgNDMuOSA1MS44bDQxLjcgN2M2IDEgMTAuNCA2LjIgMTAuNCAxMi4zIDAgNi45LTUuNiAxMi41LTEyLjUgMTIuNUwxNTIgNDAwYy0xMSAwLTIwIDktMjAgMjBzOSAyMCAyMCAyMGwyNCAwIDAgNGMwIDExIDkgMjAgMjAgMjBzMjAtOSAyMC0yMGwwLTQuN2MyNS00LjEgNDQtMjUuNyA0NC01MS44IDAtMjUuNy0xOC41LTQ3LjYtNDMuOS01MS44bC00MS43LTdjLTYtMS0xMC40LTYuMi0xMC40LTEyLjMgMC02LjkgNS42LTEyLjUgMTIuNS0xMi41bDQ3LjUgMGMxMSAwIDIwLTkgMjAtMjBzLTktMjAtMjAtMjBsLTggMCAwLTRjMC0xMS05LTIwLTIwLTIwcy0yMCA5LTIwIDIweiJdfSxPRGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic3BhZ2hldHRpLW1vbnN0ZXItZmx5aW5nIixpY29uOls2NDAsNTEyLFsicGFzdGFmYXJpYW5pc20iXSwiZjY3YiIsIk0yMDggNjRhMTYgMTYgMCAxIDAgLTMyIDAgMTYgMTYgMCAxIDAgMzIgMHptNDggMGMwIDE2LjItNiAzMS4xLTE2IDQyLjNsMTUuNiAzMS4yYzE4LjctNiAzOS45LTkuNSA2NC40LTkuNXM0NS44IDMuNSA2NC40IDkuNUw0MDAgMTA2LjNjLTEwLTExLjMtMTYtMjYuMS0xNi00Mi4zIDAtMzUuMyAyOC43LTY0IDY0LTY0czY0IDI4LjcgNjQgNjQtMjguNyA2NC02NCA2NGMtMS43IDAtMy40LS4xLTUuMS0uMkw0MjcuOCAxNThjMjEuMSAxMy42IDM3LjcgMzAuMiA1MS40IDQ2LjQgNy4xIDguMyAxMy41IDE2LjYgMTkuMyAyNGwxLjQgMS44YzYuMyA4LjEgMTEuNiAxNC44IDE2LjcgMjAuNCAxMC43IDExLjcgMTYuMSAxMy40IDE5LjQgMTMuNCAyLjUgMCA0LjMtLjYgNy4xLTMuMyAzLjctMy41IDcuMS04LjggMTIuNS0xNy40bC42LS45YzQuNi03LjQgMTEtMTcuNiAxOS40LTI1LjcgOS43LTkuMyAyMi45LTE2LjcgNDAuNC0xNi43IDEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0Yy0yLjUgMC00LjMgLjYtNy4xIDMuMy0zLjcgMy41LTcuMSA4LjgtMTIuNSAxNy40bC0uNiAuOWMtNC42IDcuNC0xMSAxNy42LTE5LjQgMjUuNy05LjcgOS4zLTIyLjkgMTYuNy00MC40IDE2LjctMTguNSAwLTMyLjktOC41LTQ0LjMtMTguNi0zLjEgNC02LjYgOC4zLTEwLjUgMTIuNyAxLjQgNC4zIDIuOCA4LjUgNCAxMi41IC45IDMgMS44IDUuOCAyLjYgOC42IDMgOS44IDUuNSAxOC4yIDguNiAyNS45IDMuOSA5LjggNy40IDE1LjQgMTAuOCAxOC41IDIuNiAyLjQgNS45IDQuMyAxMi44IDQuMyA4LjcgMCAxNi45LTQuMiAzMy43LTEzLjIgMTUtOCAzNS43LTE4LjggNjIuMy0xOC44IDEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0Yy0xMy40IDAtMjQuNyA1LjItMzkuNyAxMy4yLTEgLjYtMi4xIDEuMS0zLjIgMS43LTEzLjEgNy4xLTMxLjYgMTcuMS01My4xIDE3LjEtMTguNCAwLTMzLjYtNi4xLTQ1LjUtMTcuMi0xMS4xLTEwLjMtMTcuOS0yMy43LTIyLjctMzYtMy42LTktNi43LTE5LjEtOS41LTI4LjUtMTYuNCAxMi4zLTM2LjEgMjMuNi01OC45IDMxLjMgMy42IDEwLjggOC40IDIzLjUgMTQuNCAzNi4yIDcuNSAxNS45IDE2LjIgMzAuNCAyNS44IDQwLjUgOS42IDEwLjIgMTcuNyAxMy43IDI0LjUgMTMuNyAxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGMtMjUuMiAwLTQ1LTEzLjUtNTkuNS0yOC44LTE0LjUtMTUuNC0yNS43LTM0LjktMzQuMi01My04LTE3LTE0LjEtMzMuOC0xOC4zLTQ2LjktNS4yIC40LTEwLjYgLjYtMTYgLjZzLTEwLjgtLjItMTYtLjZjLTQuMiAxMy0xMC4zIDI5LjktMTguMyA0Ni45LTguNSAxOC4xLTE5LjggMzcuNi0zNC4yIDUzLTE0LjQgMTUuMy0zNC4zIDI4LjgtNTkuNSAyOC44LTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjRjNi44IDAgMTUtMy41IDI0LjUtMTMuNyA5LjUtMTAuMSAxOC4zLTI0LjYgMjUuOC00MC41IDUuOS0xMi42IDEwLjctMjUuNCAxNC40LTM2LjItMjIuOC03LjctNDIuNS0xOS01OC45LTMxLjMtMi45IDkuNC02IDE5LjUtOS41IDI4LjUtNC44IDEyLjItMTEuNiAyNS42LTIyLjcgMzYtMTEuOSAxMS4xLTI3LjEgMTcuMi00NS41IDE3LjItMTMuMSAwLTI0LjUtNC4xLTMzLjgtOC45LTcuOS00LTE1LjctOS4yLTIyLjEtMTMuNWwwIDAtMi40LTEuNmMtMTUuMy0xMC4yLTI1LjgtMTYtMzcuNy0xNi0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0YzI4LjEgMCA0OS42IDE0LjIgNjQuMyAyNGwyLjQgMS42YzYuOSA0LjYgMTIuMSA4LjEgMTcuMiAxMC43IDUuNSAyLjggOS4xIDMuNiAxMiAzLjYgNi44IDAgMTAuMi0xLjkgMTIuOC00LjMgMy40LTMuMiA3LTguOCAxMC44LTE4LjUgMy03LjcgNS42LTE2LjEgOC42LTI1LjkgLjgtMi43IDEuNy01LjYgMi42LTguNiAxLjItNCAyLjYtOC4yIDQtMTIuNS0zLjktNC41LTcuNC04LjgtMTAuNS0xMi43LTExLjQgMTAuMS0yNS45IDE4LjYtNDQuMyAxOC42LTE3LjUgMC0zMC43LTcuNC00MC40LTE2LjctOC40LTguMS0xNC44LTE4LjMtMTkuNC0yNS43bC0uNi0uOWMtNS40LTguNi04LjgtMTMuOS0xMi41LTE3LjQtMi44LTIuNy00LjYtMy4zLTcuMS0zLjMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNGMxNy41IDAgMzAuNyA3LjQgNDAuNCAxNi43IDguNCA4LjEgMTQuOCAxOC4zIDE5LjQgMjUuN2wuNiAuOWM1LjQgOC42IDguOCAxMy45IDEyLjUgMTcuNCAyLjggMi43IDQuNiAzLjMgNy4xIDMuMyAzLjMgMCA4LjctMS43IDE5LjQtMTMuNCA1LjEtNS42IDEwLjQtMTIuMyAxNi43LTIwLjRsMS40LTEuOGM1LjgtNy40IDEyLjItMTUuNyAxOS4zLTI0IDEzLjgtMTYuMiAzMC4zLTMyLjggNTEuNC00Ni40bC0xNS4xLTMwLjJjLTEuNyAuMS0zLjQgLjItNS4xIC4yLTM1LjMgMC02NC0yOC43LTY0LTY0czI4LjctNjQgNjQtNjQgNjQgMjguNyA2NCA2NHptMjA4IDBhMTYgMTYgMCAxIDAgLTMyIDAgMTYgMTYgMCAxIDAgMzIgMHoiXX0sbGtyPU9EZSxSRGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibWFydGluaS1nbGFzcy1jaXRydXMiLGljb246WzY0MCw1MTIsWyJjb2NrdGFpbCJdLCJmNTYxIiwiTTU3NiA4MGMwLTQ0LjItMzUuOC04MC04MC04MC0xOCAwLTM0LjYgNi00OCAxNmwtODEgMGMyMy42LTQ3LjQgNzIuNS04MCAxMjktODAgNzkuNSAwIDE0NCA2NC41IDE0NCAxNDRTNTc1LjUgMjI0IDQ5NiAyMjRjLTYuNSAwLTEzLS40LTE5LjMtMS4zbDY0LTc0LjdjMS4xLTEuMyAyLjItMi43IDMuMy00LjEgMTkuNC0xNC42IDMyLTM3LjggMzItNjR6TTY2LjkgODIuNkM3Mi4yIDcxLjMgODMuNSA2NCA5NiA2NGwzODQgMGMxMi41IDAgMjMuOCA3LjMgMjkuMSAxOC42czMuNCAyNC43LTQuOCAzNC4ybC0xODQuMyAyMTUgMCAxMTYuMiA2NCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC0xOTIgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMmw2NCAwIDAtMTE2LjItMTg0LjMtMjE1Yy04LjEtOS41LTEwLTIyLjgtNC44LTM0LjJ6TTE2NS42IDEyOEwyODggMjcwLjggNDEwLjQgMTI4IDE2NS42IDEyOHoiXX0sY2tyPVJEZSxka3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYnVsbGhvcm4iLGljb246WzUxMiw1MTIsWzEyODIyNiwxMjgzNjNdLCJmMGExIiwiTTQ2MS4yIDE4LjlDNDcyLjcgMjQgNDgwIDM1LjQgNDgwIDQ4bDAgNDE2YzAgMTIuNi03LjMgMjQtMTguOCAyOS4xcy0yNC44IDMuMi0zNC4zLTUuMWwtNDYuNi00MC43Yy00My42LTM4LjEtOTguNy02MC4zLTE1Ni40LTYzbDAgOTUuN2MwIDE3LjctMTQuMyAzMi0zMiAzMmwtMzIgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC05NkM1Ny4zIDM4NCAwIDMyNi43IDAgMjU2UzU3LjMgMTI4IDEyOCAxMjhsODQuNSAwYzYxLjgtLjIgMTIxLjQtMjIuNyAxNjcuOS02My4zbDQ2LjYtNDAuN2M5LjQtOC4zIDIyLjktMTAuMiAzNC4zLTUuMXpNMjI0IDMyMGwwIC4yYzcwLjMgMi43IDEzNy44IDI4LjUgMTkyIDczLjRsMC0yNzUuM2MtNTQuMiA0NC45LTEyMS43IDcwLjctMTkyIDczLjRMMjI0IDMyMHoiXX0sdWtyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJveC10aXNzdWUiLGljb246WzUxMiw1MTIsW10sImUwNWIiLCJNMTAzLjkgMzJsMTYxIDBjMTMuOCAwIDI2IDguOCAzMC40IDIxLjlsMTcuNCA1Mi4yYzQuNCAxMy4xIDE2LjYgMjEuOSAzMC40IDIxLjlsNjAuNSAwYzIxLjggMCAzNy4zIDIxLjQgMzAuNCA0Mi4xTDM4NCAzMjAgMTI4IDMyMCA3Mi43IDcwLjlDNjguMiA1MSA4My40IDMyIDEwMy45IDMyek00OCAyNTZsMTYuNiAwIDE2LjUgNzQuNEM4NiAzNTIuNCAxMDUuNSAzNjggMTI4IDM2OGwyNTYgMGMyMC43IDAgMzktMTMuMiA0NS41LTMyLjhsMjYuNC03OS4yIDguMSAwYzI2LjUgMCA0OCAyMS41IDQ4IDQ4bDAgMTI4YzAgMjYuNS0yMS41IDQ4LTQ4IDQ4TDQ4IDQ4MGMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhMMCAzMDRjMC0yNi41IDIxLjUtNDggNDgtNDh6Il19LGZrcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtYXR0cmVzcy1waWxsb3ciLGljb246WzU3Niw1MTIsW10sImU1MjUiLCJNMjU2IDY0TDY0IDY0QzI4LjcgNjQgMCA5Mi43IDAgMTI4TDAgMzg0YzAgMzUuMyAyOC43IDY0IDY0IDY0bDE5MiAwIDAtMzg0em00OCAzODRsMjA4IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0yNTZjMC0zNS4zLTI4LjctNjQtNjQtNjRsLTIwOCAwIDAgMzg0ek02NCAxNjBjMC0xNy43IDE0LjMtMzIgMzItMzJsNjQgMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDE5MmMwIDE3LjctMTQuMyAzMi0zMiAzMmwtNjQgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC0xOTJ6Il19LHBrcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjaGV2cm9uLWxlZnQiLGljb246WzMyMCw1MTIsWzkwMDFdLCJmMDUzIiwiTTkuNCAyMzMuNGMtMTIuNSAxMi41LTEyLjUgMzIuOCAwIDQ1LjNsMTkyIDE5MmMxMi41IDEyLjUgMzIuOCAxMi41IDQ1LjMgMHMxMi41LTMyLjggMC00NS4zTDc3LjMgMjU2IDI0Ni42IDg2LjZjMTIuNS0xMi41IDEyLjUtMzIuOCAwLTQ1LjNzLTMyLjgtMTIuNS00NS4zIDBsLTE5MiAxOTJ6Il19LGhrcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjbG91ZC1tb29uLXJhaW4iLGljb246WzU3Niw1MTIsW10sImY3M2MiLCJNNDQ4IDBjLTY4LjYgMC0xMjcuMSA0My4xLTE0OS44IDEwMy44IDE3LjEgMTQuMSAyOS42IDMzLjUgMzQuOSA1NS44IDM5LjkgMjEuNyA2Ni45IDYzLjkgNjYuOSAxMTIuNSAwIDEzLjUtMi4xIDI2LjUtNS45IDM4LjcgMTYuOSA2IDM1IDkuMyA1My45IDkuMyA0MyAwIDgyLjEtMTcgMTEwLjgtNDQuNiA0LjYtNC40IDUuOS0xMS4yIDMuMy0xN3MtOC42LTkuMy0xNC45LTguOGMtMyAuMi02LjEgLjQtOS4yIC40LTYzLjUgMC0xMTUtNTEuNS0xMTUtMTE1IDAtNDUuMSAyNi04NC4yIDYzLjgtMTAzIDUuNy0yLjggOS04LjkgOC4yLTE1LjJTNDg5LjYgNS4zIDQ4My40IDMuOUM0NzIgMS40IDQ2MC4yIDAgNDQ4IDB6TTI3MiAzNTJjNDQuMiAwIDgwLTM1LjggODAtODAgMC0zOS0yNy45LTcxLjUtNjQuOC03OC42IC41LTMuMSAuOC02LjIgLjgtOS40IDAtMzAuOS0yNS4xLTU2LTU2LTU2LTEyLjQgMC0yMy45IDQtMzMuMSAxMC44LTEzLjQtMjUuNS00MC4xLTQyLjgtNzAuOS00Mi44LTQ0LjIgMC04MCAzNS44LTgwIDgwIDAgNy40IDEgMTQuNiAyLjkgMjEuNS0yOS44IDExLjYtNTAuOSA0MC42LTUwLjkgNzQuNSAwIDQ0LjIgMzUuOCA4MCA4MCA4MGwxOTIgMHpNNjkgNDAxLjFjLTEyLjYtNC4yLTI2LjIgMi42LTMwLjQgMTUuMkwxNy4yIDQ4MC40QzEzIDQ5MyAxOS44IDUwNi42IDMyLjQgNTEwLjhzMjYuMi0yLjYgMzAuNC0xNS4ybDIxLjQtNjQuMWM0LjItMTIuNi0yLjYtMjYuMi0xNS4yLTMwLjR6bTEyMCAwYy0xMi42LTQuMi0yNi4yIDIuNi0zMC40IDE1LjJsLTIxLjQgNjQuMWMtNC4yIDEyLjYgMi42IDI2LjIgMTUuMiAzMC40czI2LjItMi42IDMwLjQtMTUuMmwyMS40LTY0LjFjNC4yLTEyLjYtMi42LTI2LjItMTUuMi0zMC40em0xMjAgMGMtMTIuNi00LjItMjYuMiAyLjYtMzAuNCAxNS4ybC0yMS40IDY0LjFjLTQuMiAxMi42IDIuNiAyNi4yIDE1LjIgMzAuNHMyNi4yLTIuNiAzMC40LTE1LjJsMjEuNC02NC4xYzQuMi0xMi42LTIuNi0yNi4yLTE1LjItMzAuNHoiXX0sJDJlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFycm93LWRvd24tMS05IixpY29uOls1MTIsNTEyLFsic29ydC1udW1lcmljLWFzYyIsInNvcnQtbnVtZXJpYy1kb3duIl0sImYxNjIiLCJNNDE4LjcgMzhjOC4zIDYgMTMuMyAxNS43IDEzLjMgMjZsMCA5NiAxNiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC05NiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDE2IDAgMC01MS42LTUuOSAyYy0xNi44IDUuNi0zNC45LTMuNS00MC41LTIwLjJzMy41LTM0LjkgMjAuMi00MC41bDQ4LTE2YzkuOC0zLjMgMjAuNS0xLjYgMjguOCA0LjR6TTM2NS4xIDQzMC42bDExLjctMThjLTMyLjktOS45LTU2LjgtNDAuNS01Ni44LTc2LjYgMC00NC4yIDM1LjgtODAgODAtODBzODAgMzUuOCA4MCA4MGMwIDIyLjktNi42IDQ1LjMtMTkuMSA2NC41bC00Mi4xIDY0LjljLTkuNiAxNC44LTI5LjQgMTkuMS00NC4zIDkuNHMtMTkuMS0yOS40LTkuNC00NC4zek00MjQgMzM2YTI0IDI0IDAgMSAwIC00OCAwIDI0IDI0IDAgMSAwIDQ4IDB6TTE1MC42IDQ3MC42Yy0xMi41IDEyLjUtMzIuOCAxMi41LTQ1LjMgMGwtOTYtOTZjLTEyLjUtMTIuNS0xMi41LTMyLjggMC00NS4zczMyLjgtMTIuNSA0NS4zIDBMOTYgMzcwLjcgOTYgNjRjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDMwNi43IDQxLjQtNDEuNGMxMi41LTEyLjUgMzIuOC0xMi41IDQ1LjMgMHMxMi41IDMyLjggMCA0NS4zbC05NiA5NnoiXX0sbWtyPSQyZSxna3I9JDJlLHhrcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJoYW5kLXNwb2NrIixpY29uOls1MTIsNTEyLFsxMjg0MDZdLCJmMjU5IiwiTTIxNC45IDIzLjdDMjEwLjMgNi42IDE5Mi44LTMuNSAxNzUuNyAxLjFzLTI3LjIgMjIuMS0yMi42IDM5LjJMMjA2IDIzNy44YzIuNSA5LjItNC41IDE4LjItMTQgMTguMi02LjQgMC0xMi00LjItMTMuOS0xMC4zTDEzNC42IDEwMi43Yy01LjEtMTYuOS0yMy0yNi40LTM5LjktMjEuM3MtMjYuNCAyMy0yMS4zIDM5LjlsNjIuOCAyMDYuNGMyLjQgNy45LTcuMiAxMy44LTEzLjIgOC4xTDY3LjYgMjgzYy0xNi0xNS4yLTQxLjMtMTQuNi01Ni42IDEuNFMtMy42IDMyNS43IDEyLjQgMzQxTDEyNC44IDQ0OGM0My4xIDQxLjEgMTAwLjQgNjQgMTYwIDY0bDE5LjEgMGMuMSAwIC4xLS4xIC4xLS4xcy4xLS4xIC4xLS4xYzU4LjMtMy41IDEwOC42LTQzLjIgMTI1LjMtOTkuN2w4MS4yLTI3NWM1LTE2LjktNC43LTM0LjctMjEuNi0zOS44cy0zNC43IDQuNy0zOS44IDIxLjZMNDExLjUgMjQ3LjFjLTEuNiA1LjMtNi40IDguOS0xMiA4LjktNy45IDAtMTMuOC03LjMtMTIuMi0xNS4xbDM2LTE3MC4zYzMuNy0xNy4zLTcuNC0zNC4zLTI0LjctMzcuOXMtMzQuMyA3LjQtMzcuOSAyNC43TDMyMy4xIDIzNS4xYy0yLjYgMTIuMi0xMy4zIDIwLjktMjUuOCAyMC45LTExLjkgMC0yMi40LTgtMjUuNC0xOS41bC01Ny0yMTIuOHoiXX0sQkRlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6IndhbmQtbWFnaWMtc3BhcmtsZXMiLGljb246WzU3Niw1MTIsWyJtYWdpYy13YW5kLXNwYXJrbGVzIl0sImUyY2EiLCJNMjYzLjQtMjdMMjc4LjIgOS44IDMxNSAyNC42YzMgMS4yIDUgNC4yIDUgNy40cy0yIDYuMi01IDcuNEwyNzguMiA1NC4yIDI2My40IDkxYy0xLjIgMy00LjIgNS03LjQgNXMtNi4yLTItNy40LTVMMjMzLjggNTQuMiAxOTcgMzkuNGMtMy0xLjItNS00LjItNS03LjRzMi02LjIgNS03LjRMMjMzLjggOS44IDI0OC42LTI3YzEuMi0zIDQuMi01IDcuNC01czYuMiAyIDcuNCA1ek0xMTAuNyA0MS43bDIxLjUgNTAuMSA1MC4xIDIxLjVjNS45IDIuNSA5LjcgOC4zIDkuNyAxNC43cy0zLjggMTIuMi05LjcgMTQuN2wtNTAuMSAyMS41LTIxLjUgNTAuMWMtMi41IDUuOS04LjMgOS43LTE0LjcgOS43cy0xMi4yLTMuOC0xNC43LTkuN0w1OS44IDE2NC4yIDkuNyAxNDIuN0MzLjggMTQwLjIgMCAxMzQuNCAwIDEyOHMzLjgtMTIuMiA5LjctMTQuN0w1OS44IDkxLjggODEuMyA0MS43QzgzLjggMzUuOCA4OS42IDMyIDk2IDMyczEyLjIgMy44IDE0LjcgOS43ek00NjQgMzA0YzYuNCAwIDEyLjIgMy44IDE0LjcgOS43bDIxLjUgNTAuMSA1MC4xIDIxLjVjNS45IDIuNSA5LjcgOC4zIDkuNyAxNC43cy0zLjggMTIuMi05LjcgMTQuN2wtNTAuMSAyMS41LTIxLjUgNTAuMWMtMi41IDUuOS04LjMgOS43LTE0LjcgOS43cy0xMi4yLTMuOC0xNC43LTkuN2wtMjEuNS01MC4xLTUwLjEtMjEuNWMtNS45LTIuNS05LjctOC4zLTkuNy0xNC43czMuOC0xMi4yIDkuNy0xNC43bDUwLjEtMjEuNSAyMS41LTUwLjFjMi41LTUuOSA4LjMtOS43IDE0LjctOS43ek00NjAgMGMxMSAwIDIxLjYgNC40IDI5LjUgMTIuMmw0Mi4zIDQyLjNDNTM5LjYgNjIuNCA1NDQgNzMgNTQ0IDg0cy00LjQgMjEuNi0xMi4yIDI5LjVsLTg4LjIgODguMi0xMDEuMy0xMDEuMyA4OC4yLTg4LjJDNDM4LjQgNC40IDQ0OSAwIDQ2MCAwek00NC4yIDM5OC41TDMwOC40IDEzNC4zIDQwOS43IDIzNS42IDE0NS41IDQ5OS44QzEzNy42IDUwNy42IDEyNyA1MTIgMTE2IDUxMnMtMjEuNi00LjQtMjkuNS0xMi4yTDQ0LjIgNDU3LjVDMzYuNCA0NDkuNiAzMiA0MzkgMzIgNDI4czQuNC0yMS42IDEyLjItMjkuNXoiXX0sYmtyPUJEZSx2a3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY29tbWVudC1tZWRpY2FsIixpY29uOls1MTIsNTEyLFtdLCJmN2Y1IiwiTTI1NiA0ODBjMTQxLjQgMCAyNTYtMTA3LjUgMjU2LTI0MFMzOTcuNCAwIDI1NiAwIDAgMTA3LjUgMCAyNDBjMCA1NC4zIDE5LjIgMTA0LjMgNTEuNiAxNDQuNUwyLjggNDc2LjhjLTQuOCA5LTMuMyAyMCAzLjYgMjcuNXMxNy44IDkuOCAyNy4xIDUuOGwxMTguNC01MC43QzE4My43IDQ3Mi42IDIxOC45IDQ4MCAyNTYgNDgwek0yMTcuNiAxNTMuNmMwLTEwLjYgOC42LTE5LjIgMTkuMi0xOS4ybDM4LjQgMGMxMC42IDAgMTkuMiA4LjYgMTkuMiAxOS4ybDAgNDggNDggMGMxMC42IDAgMTkuMiA4LjYgMTkuMiAxOS4ybDAgMzguNGMwIDEwLjYtOC42IDE5LjItMTkuMiAxOS4ybC00OCAwIDAgNDhjMCAxMC42LTguNiAxOS4yLTE5LjIgMTkuMmwtMzguNCAwYy0xMC42IDAtMTkuMi04LjYtMTkuMi0xOS4ybDAtNDgtNDggMGMtMTAuNiAwLTE5LjItOC42LTE5LjItMTkuMmwwLTM4LjRjMC0xMC42IDguNi0xOS4yIDE5LjItMTkuMmw0OCAwIDAtNDh6Il19LHlrcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJiZWxsLXNsYXNoIixpY29uOls1NzYsNTEyLFsxMjgyNzcsNjE5NDNdLCJmMWY2IiwiTTQxLTI0LjljLTkuNC05LjQtMjQuNi05LjQtMzMuOSAwUy0yLjMtLjMgNyA5LjFsNTI4IDUyOGM5LjQgOS40IDI0LjYgOS40IDMzLjkgMHM5LjQtMjQuNiAwLTMzLjlsLTg3LjUtODcuNWMxNy4yLTIuNCAzMC41LTE3LjMgMzAuNS0zNS4yIDAtOC4xLTIuNy0xNS45LTcuOC0yMi4ybC05LjgtMTIuMkM0NjQuNCAzMDguNSA0NDggMjYxLjggNDQ4IDIxMy43bDAtMjEuN2MwLTc3LjQtNTUtMTQyLTEyOC0xNTYuOGwwLTMuMmMwLTE3LjctMTQuMy0zMi0zMi0zMnMtMzIgMTQuMy0zMiAzMmwwIDMuMmMtMzguNiA3LjgtNzIuMiAyOS42LTk1LjIgNTkuN0w0MS0yNC45em04NyAyMzguNWMwIDQ4LjEtMTYuNCA5NC44LTQ2LjQgMTMyLjRsLTkuOCAxMi4yYy01IDYuMy03LjggMTQuMS03LjggMjIuMiAwIDE5LjYgMTUuOSAzNS41IDM1LjUgMzUuNWwyMzUuMyAwLTIwNi45LTIwNi45IDAgNC41ek0yODggNTEyYzI5LjggMCA1NC45LTIwLjQgNjItNDhsLTEyNCAwYzcuMSAyNy42IDMyLjIgNDggNjIgNDh6Il19LFAyZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJoYW5kc2hha2Utc2xhc2giLGljb246WzU3Niw1MTIsWzU3NDM5LCJoYW5kc2hha2UtYWx0LXNsYXNoIiwiaGFuZHNoYWtlLXNpbXBsZS1zbGFzaCJdLCJlMDYwIiwiTTQxLTI0LjljLTkuNC05LjQtMjQuNi05LjQtMzMuOSAwUy0yLjMtLjMgNyA5LjFsNTI4IDUyOGM5LjQgOS40IDI0LjYgOS40IDMzLjkgMHM5LjQtMjQuNiAwLTMzLjlsLTI4OC0yODggMTQuMi0xNC4yYzQuMi00LjIgOS41LTYuNSAxNC45LTYuOSA2LjgtLjYgMTMuOCAxLjcgMTkgNi45TDUwNS42IDM3NiA1NzYgMzIwIDU3NiAzMiA0NjQgOTYgNDQwLjIgODAuMUM0MjQuNCA2OS42IDQwNS45IDY0IDM4Ni45IDY0bC03MC40IDBjLTEuMSAwLTIuMyAwLTMuNCAuMS0xNi45IC45LTMyLjggOC41LTQ0LjIgMjEuMWwtNTUuOCA2Mi4xLTM0LTM0IDQ0LjMtNDkuMi0zOS43IDBjLTE1LjMgMC0zMC4xIDMuNi00My41IDEwLjRMNDEtMjQuOXpNMCA2OS44TDAgMzIwIDE1Ni40IDQ1MC4zYzIzIDE5LjIgNTIgMjkuNyA4MS45IDI5LjdsMTUuNyAwLTctN2MtOS40LTkuNC05LjQtMjQuNiAwLTMzLjlzMjQuNi05LjQgMzMuOSAwbDQxIDQxIDkgMGMyMi4yIDAgNDMuOC01LjggNjIuOC0xNi40TDAgNjkuOHoiXX0sd2tyPVAyZSxNa3I9UDJlLGtrcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJib3R0bGUtd2F0ZXIiLGljb246WzMyMCw1MTIsW10sImU0YzUiLCJNMTEyLTMybDk2IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTk2IDBDOTQuMyAzMiA4MCAxNy43IDgwIDBzMTQuMy0zMiAzMi0zMnpNMTYgMTQ0YzAtMzUuMyAyOC43LTY0IDY0LTY0bDE2MCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0IDAgMjQuMS0xMy4zIDQ1LjEtMzMgNTYgMTkuNyAxMC45IDMzIDMxLjkgMzMgNTZzLTEzLjMgNDUuMS0zMyA1NmMxOS43IDEwLjkgMzMgMzEuOSAzMyA1NnMtMTMuMyA0NS4xLTMzIDU2YzE5LjcgMTAuOSAzMyAzMS45IDMzIDU2IDAgMzUuMy0yOC43IDY0LTY0IDY0TDgwIDU0NGMtMzUuMyAwLTY0LTI4LjctNjQtNjQgMC0yNC4xIDEzLjMtNDUuMSAzMy01Ni0xOS43LTEwLjktMzMtMzEuOS0zMy01NnMxMy4zLTQ1LjEgMzMtNTZjLTE5LjctMTAuOS0zMy0zMS45LTMzLTU2czEzLjMtNDUuMSAzMy01NmMtMTkuNy0xMC45LTMzLTMxLjktMzMtNTZ6Il19LFNrcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJkaWNlLWQyMCIsaWNvbjpbNTEyLDUxMixbXSwiZjZjZiIsIk0yMjQuNC04LjJjMTkuNi0xMS4xIDQzLjYtMTEuMSA2My4xIDBsMTkyIDEwOC44YzIwIDExLjQgMzIuNCAzMi42IDMyLjQgNTUuN2wwIDIxNS42YzAgMjMtMTIuNCA0NC4zLTMyLjQgNTUuN2wtMTkyIDEwOC44Yy0xOS42IDExLjEtNDMuNiAxMS4xLTYzLjEgMEwzMi40IDQyNy41QzEyLjQgNDE2LjEgMCAzOTQuOCAwIDM3MS44TDAgMTU2LjJjMC0yMyAxMi40LTQ0LjMgMzIuNC01NS43TDIyNC40LTguMnptNTIgNzMuMkMyNjcgNDkuOCAyNDUgNDkuOCAyMzUuNiA2NWwtNzYuNiAxMjMuNy04NS40LTQ2LjMtMy44LTEuNmMtOC45LTIuNy0xOC44IDEuMS0yMy40IDkuNnMtMi40IDE4LjkgNC43IDI0LjhsMy4zIDIuMyA4My40IDQ1LjItNzQuNiAxMjAuNkM1NS4zIDM1Ni4yIDYxIDM3MyA3NSAzNzguNGwxNjEgNjEuOSAwIDM5LjdjMCAxMSA5IDIwIDIwIDIwczIwLTkgMjAtMjBsMC0zOS43IDE2MS02MS45YzE0LTUuNCAxOS43LTIyLjIgMTEuOC0zNWwtNzQuNy0xMjAuNiA4My40LTQ1LjJjOS43LTUuMyAxMy4zLTE3LjQgOC4xLTI3LjFzLTE3LjQtMTMuMy0yNy4xLTguMUwzNTMgMTg4LjcgMjc2LjQgNjV6bS00NyAzMjkuOWwtMTIyLTQ2LjkgNTQuNS04OC4xIDY3LjUgMTM1ek00MDQuNiAzNDhsLTEyMiA0Ni45IDY3LjUtMTM1IDU0LjUgODguMXpNMzE5LjMgMjMyTDI1NiAzNTguNiAxOTIuNyAyMzIgMzE5LjMgMjMyek0zMDggMTkybC0xMDQuMSAwIDUyLTg0IDUyIDg0eiJdfSxJMmU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYXJyb3ctZG93bi16LWEiLGljb246WzUxMiw1MTIsWyJzb3J0LWFscGhhLWRlc2MiLCJzb3J0LWFscGhhLWRvd24tYWx0Il0sImY4ODEiLCJNMjMwLjYgMzkwLjZsLTgwIDgwYy0xMi41IDEyLjUtMzIuOCAxMi41LTQ1LjMgMGwtODAtODBjLTEyLjUtMTIuNS0xMi41LTMyLjggMC00NS4zczMyLjgtMTIuNSA0NS4zIDBMOTYgMzcwLjcgOTYgNjRjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDMwNi43IDI1LjQtMjUuNGMxMi41LTEyLjUgMzIuOC0xMi41IDQ1LjMgMHMxMi41IDMyLjggMCA0NS4zek0yODggNjRjMC0xNy43IDE0LjMtMzIgMzItMzJsMTI4IDBjMTIuOSAwIDI0LjYgNy44IDI5LjYgMTkuOHMyLjIgMjUuNy02LjkgMzQuOUwzOTcuMyAxNjAgNDQ4IDE2MGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtMTI4IDBjLTEyLjkgMC0yNC42LTcuOC0yOS42LTE5LjhzLTIuMi0yNS43IDYuOS0zNC45TDM3MC44IDk2IDMyMCA5NmMtMTcuNyAwLTMyLTE0LjMtMzItMzJ6TTQxMi42IDI3My43bDgwIDE2MGM3LjkgMTUuOCAxLjUgMzUtMTQuMyA0Mi45cy0zNSAxLjUtNDIuOS0xNC4zbC03LjItMTQuMy04OC40IDAtNy4yIDE0LjNjLTcuOSAxNS44LTI3LjEgMjIuMi00Mi45IDE0LjNzLTIyLjItMjcuMS0xNC4zLTQyLjlsODAtMTYwYzUuNC0xMC44IDE2LjUtMTcuNyAyOC42LTE3LjdzMjMuMiA2LjggMjguNiAxNy43ek0zODQgMzU5LjZsLTIwLjIgNDAuNCA0MC40IDAtMjAuMi00MC40eiJdfSx6a3I9STJlLENrcj1JMmUsX2tyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJydXNoIixpY29uOlszODQsNTEyLFtdLCJmNTVkIiwiTTE2Mi40IDZjLTEuNS0zLjYtNS02LTguOS02bC0xOSAwYy0zLjkgMC03LjUgMi40LTguOSA2TDEwNC45IDU3LjdjLTMuMiA4LTE0LjYgOC0xNy44IDBMNjYuNCA2Yy0xLjUtMy42LTUtNi04LjktNkw0OCAwQzIxLjUgMCAwIDIxLjUgMCA0OGwwIDIwOCAzODQgMCAwLTIwOGMwLTI2LjUtMjEuNS00OC00OC00OEwyMzAuNSAwYy0zLjkgMC03LjUgMi40LTguOSA2TDIwMC45IDU3LjdjLTMuMiA4LTE0LjYgOC0xNy44IDBMMTYyLjQgNnpNMCAzMDRsMCAxNmMwIDM1LjMgMjguNyA2NCA2NCA2NGw2NCAwIDAgNjRjMCAzNS4zIDI4LjcgNjQgNjQgNjRzNjQtMjguNyA2NC02NGwwLTY0IDY0IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0xNi0zODQgMHpNMTkyIDQ2NGMtOC44IDAtMTYtNy4yLTE2LTE2czcuMi0xNiAxNi0xNiAxNiA3LjIgMTYgMTYtNy4yIDE2LTE2IDE2eiJdfSxUa3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGVyc29uLXdhbGtpbmctZGFzaGVkLWxpbmUtYXJyb3ctcmlnaHQiLGljb246WzY0MCw1MTIsW10sImU1NTMiLCJNMTYwIDgwYTU2IDU2IDAgMSAwIDAtMTEyIDU2IDU2IDAgMSAwIDAgMTEyek03My40IDIyNy45bDIyLjYtMjIuNiAwIDY5LjNjMCAyOCAxMi4yIDU0LjcgMzMuNSA3Mi45bDcxLjQgNjEuMmM1LjkgNS4xIDkuOCAxMi4xIDEwLjkgMTkuOGwxMi42IDg4LjFjMi41IDE3LjUgMTguNyAyOS43IDM2LjIgMjcuMnMyOS43LTE4LjcgMjcuMi0zNi4ybC0xMi42LTg4LjFjLTMuMy0yMy4xLTE0LjktNDQuMS0zMi42LTU5LjNsLTM0LjUtMjkuNiAwLTExNS4yIDMuOCA0LjdjMTguMiAyMi44IDQ1LjggMzYgNzUgMzZsMzMuMiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC0zMy4yIDBjLTkuNyAwLTE4LjktNC40LTI1LTEybC0xNy45LTIyLjRjLTIzLTI4LjgtNTcuOS00NS42LTk0LjgtNDUuNi0zMi4yIDAtNjMuMSAxMi44LTg1LjggMzUuNkwyOC4xIDE4Mi42QzEwLjEgMjAwLjYgMCAyMjUgMCAyNTAuNUwwIDI4OGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMzcuNWMwLTguNSAzLjQtMTYuNiA5LjQtMjIuNnpNODUuOCA0MDcuM2MtMS41IDUuMi00LjMgMTAtOC4xIDEzLjhMOS40IDQ4OS40Yy0xMi41IDEyLjUtMTIuNSAzMi44IDAgNDUuM3MzMi44IDEyLjUgNDUuMyAwbDY4LjMtNjguM2MxMS41LTExLjUgMTkuOS0yNS44IDI0LjQtNDEuNWwyLjItNy42LTQ2LTM5LjRjLTIuNS0yLjItNS00LjQtNy40LTYuOEw4NS44IDQwNy4zek00MzIgOGMwLTEzLjMtMTAuNy0yNC0yNC0yNFMzODQtNS4zIDM4NCA4bDAgMzJjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTMyem0wIDEyOGMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGwwIDMyYzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC0zMnpNNDA4IDMyMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRsMCAzMmMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtMzJjMC0xMy4zLTEwLjctMjQtMjQtMjR6bTI0IDE1MmMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGwwIDMyYzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC0zMnpNNjA5IDI3M2M5LjQtOS40IDkuNC0yNC42IDAtMzMuOWwtNzItNzJjLTkuNC05LjQtMjQuNi05LjQtMzMuOSAwcy05LjQgMjQuNiAwIDMzLjlsMzEgMzEtMTAyLjEgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwxMDIuMSAwLTMxIDMxYy05LjQgOS40LTkuNCAyNC42IDAgMzMuOXMyNC42IDkuNCAzMy45IDBsNzItNzJ6Il19LEhEZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJhcnJvdy11cC1zaG9ydC13aWRlIixpY29uOls1NzYsNTEyLFsic29ydC1hbW91bnQtdXAtYWx0Il0sImY4ODUiLCJNMzIwIDMyYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDMyIDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTMyIDB6bTAgMTI4Yy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDk2IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTk2IDB6bTAgMTI4Yy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDE2MCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC0xNjAgMHptMCAxMjhjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsMjI0IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTIyNCAwek0xNTAuNiA0MS40Yy0xMi41LTEyLjUtMzIuOC0xMi41LTQ1LjMgMGwtOTYgOTZjLTEyLjUgMTIuNS0xMi41IDMyLjggMCA0NS4zczMyLjggMTIuNSA0NS4zIDBMOTYgMTQxLjMgOTYgNDQ4YzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0zMDYuNyA0MS40IDQxLjRjMTIuNSAxMi41IDMyLjggMTIuNSA0NS4zIDBzMTIuNS0zMi44IDAtNDUuM2wtOTYtOTZ6Il19LExrcj1IRGUscURlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImdyaXAtdmVydGljYWwiLGljb246WzMyMCw1MTIsWyJncmlkLXZlcnRpY2FsIl0sImY1OGUiLCJNMTI4IDQwYzAtMjIuMS0xNy45LTQwLTQwLTQwTDQwIDBDMTcuOSAwIDAgMTcuOSAwIDQwTDAgODhjMCAyMi4xIDE3LjkgNDAgNDAgNDBsNDggMGMyMi4xIDAgNDAtMTcuOSA0MC00MGwwLTQ4em0wIDE5MmMwLTIyLjEtMTcuOS00MC00MC00MGwtNDggMGMtMjIuMSAwLTQwIDE3LjktNDAgNDBsMCA0OGMwIDIyLjEgMTcuOSA0MCA0MCA0MGw0OCAwYzIyLjEgMCA0MC0xNy45IDQwLTQwbDAtNDh6TTAgNDI0bDAgNDhjMCAyMi4xIDE3LjkgNDAgNDAgNDBsNDggMGMyMi4xIDAgNDAtMTcuOSA0MC00MGwwLTQ4YzAtMjIuMS0xNy45LTQwLTQwLTQwbC00OCAwYy0yMi4xIDAtNDAgMTcuOS00MCA0MHpNMzIwIDQwYzAtMjIuMS0xNy45LTQwLTQwLTQwTDIzMiAwYy0yMi4xIDAtNDAgMTcuOS00MCA0MGwwIDQ4YzAgMjIuMSAxNy45IDQwIDQwIDQwbDQ4IDBjMjIuMSAwIDQwLTE3LjkgNDAtNDBsMC00OHpNMTkyIDIzMmwwIDQ4YzAgMjIuMSAxNy45IDQwIDQwIDQwbDQ4IDBjMjIuMSAwIDQwLTE3LjkgNDAtNDBsMC00OGMwLTIyLjEtMTcuOS00MC00MC00MGwtNDggMGMtMjIuMSAwLTQwIDE3LjktNDAgNDB6TTMyMCA0MjRjMC0yMi4xLTE3LjktNDAtNDAtNDBsLTQ4IDBjLTIyLjEgMC00MCAxNy45LTQwIDQwbDAgNDhjMCAyMi4xIDE3LjkgNDAgNDAgNDBsNDggMGMyMi4xIDAgNDAtMTcuOSA0MC00MGwwLTQ4eiJdfSxEa3I9cURlLEFrcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjYXItdHVubmVsIixpY29uOls1MTIsNTEyLFtdLCJlNGRlIiwiTTI1NiAwQzExNC42IDAgMCAxMTQuNiAwIDI1NkwwIDQ0OGMwIDM1LjMgMjguNyA2NCA2NCA2NGw0Mi44IDBjLTYuNi01LjktMTAuOC0xNC40LTEwLjgtMjRsMC0xMTMuMWMwLTEzLjUgMy4xLTI2LjggOS0zOC45bDM5LjctODAuOGM5LjQtMTkuMSAyOC45LTMxLjMgNTAuMi0zMS4zTDMxNyAyMjRjMjEuMyAwIDQwLjggMTIuMSA1MC4yIDMxLjNMNDA3IDMzNmM1LjkgMTIuMSA5IDI1LjQgOSAzOC45TDQxNiA0ODhjMCA5LjYtNC4yIDE4LjEtMTAuOCAyNGw0Mi44IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0xOTJDNTEyIDExNC42IDM5Ny40IDAgMjU2IDB6TTM2Mi44IDUxMmMtNi42LTUuOS0xMC44LTE0LjQtMTAuOC0yNGwwLTI0LTE5MiAwIDAgMjRjMCA5LjYtNC4yIDE4LjEtMTAuOCAyNGwyMTMuNyAwem0tMTc1LTIzNS41bC0yOS4zIDU5LjUgMTk0LjkgMC0yOS4zLTU5LjVjLTEuMy0yLjctNC4xLTQuNS03LjItNC41TDE5NSAyNzJjLTMgMC01LjggMS43LTcuMiA0LjV6TTE3NiA0MjRhMjQgMjQgMCAxIDAgMC00OCAyNCAyNCAwIDEgMCAwIDQ4em0xODQtMjRhMjQgMjQgMCAxIDAgLTQ4IDAgMjQgMjQgMCAxIDAgNDggMHoiXX0sRWtyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNoYXJ0LWNvbHVtbiIsaWNvbjpbNTEyLDUxMixbXSwiZTBlMyIsIk0zMiAzMmMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDMzNmMwIDguOCA3LjIgMTYgMTYgMTZsNDAwIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJMODAgNDgwYy00NC4yIDAtODAtMzUuOC04MC04MEwwIDY0QzAgNDYuMyAxNC4zIDMyIDMyIDMyek0xNDQgMjI0YzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgNjRjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC02NGMwLTE3LjcgMTQuMy0zMiAzMi0zMnptMTQ0LTY0bDAgMTYwYzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMTYwYzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJ6bTgwIDMyYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgOTZjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC05NmMwLTE3LjcgMTQuMy0zMiAzMi0zMnpNNTEyIDk2bDAgMjI0YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMjI0YzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJ6Il19LCRrcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjYXByaWNvcm4iLGljb246WzU3Niw1MTIsW10sImU4NDgiLCJNMjQwIDMyYzc5LjUgMCAxNDQgNjQuNSAxNDQgMTQ0bDAgNjUuMmMxOC44LTEwLjkgNDAuNy0xNy4yIDY0LTE3LjIgNzAuNyAwIDEyOCA1Ny4zIDEyOCAxMjhTNTE4LjcgNDgwIDQ0OCA0ODBjLTM1LjggMC02OC4yLTE0LjctOTEuNC0zOC40LTI4LjggNDIuNS03Ny40IDcwLjQtMTMyLjYgNzAuNC0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMyYzUzIDAgOTYtNDMgOTYtOTZsMC0xNzZjMC00NC4yLTM1LjgtODAtODAtODBzLTgwIDM1LjgtODAgODBsMCAyMDhjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC0yMjRjMC0zNS4zLTI4LjctNjQtNjQtNjQtMTcuNyAwLTMyLTE0LjMtMzItMzJTMTQuMyAzMiAzMiAzMkM3Mi42IDMyIDEwOC44IDUxIDEzMi4yIDgwLjUgMTU4LjYgNTAuNyAxOTcuMSAzMiAyNDAgMzJ6TTQ0OCAyODhhNjQgNjQgMCAxIDAgMCAxMjggNjQgNjQgMCAxIDAgMC0xMjh6Il19LFBrcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0cnVjay1hcnJvdy1yaWdodCIsaWNvbjpbNTc2LDUxMixbXSwiZTU4YiIsIk02NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgMzg0YzAgMzUuMyAyOC43IDY0IDY0IDY0bDMuMyAwYzEwLjQgMzYuOSA0NC40IDY0IDg0LjcgNjRzNzQuMi0yNy4xIDg0LjctNjRsMTAyLjYgMGMxMC40IDM2LjkgNDQuNCA2NCA4NC43IDY0czc0LjItMjcuMSA4NC43LTY0bDMuMyAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMTQ2LjdjMC0xNy02LjctMzMuMy0xOC43LTQ1LjNMNTEyIDE0Ni43Yy0xMi0xMi0yOC4zLTE4LjctNDUuMy0xOC43bC01MC43IDAgMC0zMmMwLTM1LjMtMjguNy02NC02NC02NEw2NCAzMnpNNTEyIDIzNy4zbDAgNTAuNy05NiAwIDAtOTYgNTAuNyAwIDQ1LjMgNDUuM3pNMTUyIDM4NGE0MCA0MCAwIDEgMSAwIDgwIDQwIDQwIDAgMSAxIDAtODB6bTIzMiA0MGE0MCA0MCAwIDEgMSA4MCAwIDQwIDQwIDAgMSAxIC04MCAwek0zMDUgMjI1bC03MiA3MmMtOS40IDkuNC0yNC42IDkuNC0zMy45IDBzLTkuNC0yNC42IDAtMzMuOWwzMS0zMS0xMDIuMSAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0bDEwMi4xIDAtMzEtMzFjLTkuNC05LjQtOS40LTI0LjYgMC0zMy45czI0LjYtOS40IDMzLjkgMGw3MiA3MmM5LjQgOS40IDkuNCAyNC42IDAgMzMuOXoiXX0sTjJlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InR2IixpY29uOls1NzYsNTEyLFs2MzcxNywidGVsZXZpc2lvbiIsInR2LWFsdCJdLCJmMjZjIiwiTTY0IDk2bDAgMjQwIDQ0OCAwIDAtMjQwLTQ0OCAwek0wIDk2QzAgNjAuNyAyOC43IDMyIDY0IDMybDQ0OCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMjQwYzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDQwMGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCA5NnpNMTYwIDQ0OGwyNTYgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtMjU2IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJ6Il19LElrcj1OMmUsTmtyPU4yZSxGa3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic2VjdGlvbiIsaWNvbjpbMjU2LDUxMixbXSwiZTQ0NyIsIk0xMTAgMEM0OS4yIDAgMCA0OS4yIDAgMTEwIDAgMTMzLjcgNy42IDE1NS44IDIwLjUgMTc0IDcuNiAxOTIgMCAyMTQuMSAwIDIzOCAwIDI5MS43IDM4LjkgMzM3LjYgOTEuOSAzNDYuNGw2MS43IDEwLjNjMjIuMiAzLjcgMzguNCAyMi45IDM4LjQgNDUuMyAwIDI1LjQtMjAuNiA0Ni00NiA0NmwtOTggMGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmw5OCAwYzYwLjcgMCAxMTAtNDkuMiAxMTAtMTEwIDAtMjMuNy03LjYtNDUuOS0yMC41LTY0IDEyLjktMTggMjAuNS00MC4xIDIwLjUtNjQgMC01My44LTM4LjktOTkuNi05MS45LTEwOC41bC02MS43LTEwLjNDODAuMiAxNTEuNiA2NCAxMzIuNCA2NCAxMTAgNjQgODQuNiA4NC42IDY0IDExMCA2NGw5OCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMyUzIyNS43IDAgMjA4IDBMMTEwIDB6bTc0LjcgMjk5LjFjLTYuNS0yLjQtMTMuNC00LjMtMjAuNS01LjVsLTYxLjctMTAuM2MtMjIuMi0zLjctMzguNC0yMi45LTM4LjQtNDUuMyAwLTkuMiAyLjctMTcuOCA3LjQtMjUgNi41IDIuNCAxMy40IDQuMyAyMC41IDUuNWw2MS43IDEwLjNjMjIuMiAzLjcgMzguNCAyMi45IDM4LjQgNDUuMyAwIDkuMi0yLjcgMTcuOC03LjQgMjV6Il19LE9rcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwZWFjZSIsaWNvbjpbNTEyLDUxMixbOTc3NF0sImY2N2MiLCJNMjI0IDQ0NS4zbDAtMTIxLjgtOTQuMyA3Ny4xYzI2LjEgMjIuOCA1OC41IDM4LjcgOTQuMyA0NC43ek04OS4yIDM1MS4xTDIyNCAyNDAuOCAyMjQgNjYuN2MtOTAuOCAxNS4yLTE2MCA5NC4yLTE2MCAxODkuMyAwIDM0LjYgOS4yIDY3LjEgMjUuMiA5NS4xem0yOTMuMSA0OS41bC05NC4zLTc3LjEgMCAxMjEuOGMzNS43LTYgNjguMS0yMS45IDk0LjMtNDQuN3ptNDAuNi00OS41YzE2LTI4IDI1LjItNjAuNSAyNS4yLTk1LjEgMC05NS4xLTY5LjItMTc0LjEtMTYwLTE4OS4zbDAgMTc0LjIgMTM0LjggMTEwLjN6TTAgMjU2YTI1NiAyNTYgMCAxIDEgNTEyIDAgMjU2IDI1NiAwIDEgMSAtNTEyIDB6Il19LFJrcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzdGFyIixpY29uOls1NzYsNTEyLFsxMTA4OCw2MTQ0Nl0sImYwMDUiLCJNMzA5LjUtMTguOWMtNC4xLTgtMTIuNC0xMy4xLTIxLjQtMTMuMXMtMTcuMyA1LjEtMjEuNCAxMy4xTDE5My4xIDEyNS4zIDMzLjIgMTUwLjdjLTguOSAxLjQtMTYuMyA3LjctMTkuMSAxNi4zcy0uNSAxOCA1LjggMjQuNGwxMTQuNCAxMTQuNS0yNS4yIDE1OS45Yy0xLjQgOC45IDIuMyAxNy45IDkuNiAyMy4yczE2LjkgNi4xIDI1IDJMMjg4LjEgNDE3LjYgNDMyLjQgNDkxYzggNC4xIDE3LjcgMy4zIDI1LTJzMTEtMTQuMiA5LjYtMjMuMkw0NDEuNyAzMDUuOSA1NTYuMSAxOTEuNGM2LjQtNi40IDguNi0xNS44IDUuOC0yNC40cy0xMC4xLTE0LjktMTkuMS0xNi4zTDM4MyAxMjUuMyAzMDkuNS0xOC45eiJdfSxCa3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmxhZyIsaWNvbjpbNDQ4LDUxMixbMTI3OTg4LDYxNzI1XSwiZjAyNCIsIk02NCAzMkM2NCAxNC4zIDQ5LjcgMCAzMiAwUzAgMTQuMyAwIDMyTDAgNDgwYzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0xMjEuNiA2Mi43LTE4LjhjNDEuOS0xMi42IDg3LjEtOC43IDEyNi4yIDEwLjkgNDIuNyAyMS40IDkyLjUgMjQgMTM3LjIgNy4ybDM3LjEtMTMuOWMxMi41LTQuNyAyMC44LTE2LjYgMjAuOC0zMGwwLTI0Ny43YzAtMjMtMjQuMi0zOC00NC44LTI3LjdsLTExLjggNS45Yy00NC45IDIyLjUtOTcuOCAyMi41LTE0Mi44IDAtMzYuNC0xOC4yLTc4LjMtMjEuOC0xMTcuMi0xMC4xTDY0IDU0LjQgNjQgMzJ6Il19LEYyZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0cmlhbmdsZS1leGNsYW1hdGlvbiIsaWNvbjpbNTEyLDUxMixbOTg4OCwiZXhjbGFtYXRpb24tdHJpYW5nbGUiLCJ3YXJuaW5nIl0sImYwNzEiLCJNMjU2IDBjMTQuNyAwIDI4LjIgOC4xIDM1LjIgMjFsMjE2IDQwMGM2LjcgMTIuNCA2LjQgMjcuNC0uOCAzOS41UzQ4Ni4xIDQ4MCA0NzIgNDgwTDQwIDQ4MGMtMTQuMSAwLTI3LjItNy40LTM0LjQtMTkuNXMtNy41LTI3LjEtLjgtMzkuNWwyMTYtNDAwYzctMTIuOSAyMC41LTIxIDM1LjItMjF6bTAgMzUyYTMyIDMyIDAgMSAwIDAgNjQgMzIgMzIgMCAxIDAgMC02NHptMC0xOTJjLTE4LjIgMC0zMi43IDE1LjUtMzEuNCAzMy43bDcuNCAxMDRjLjkgMTIuNSAxMS40IDIyLjMgMjMuOSAyMi4zIDEyLjYgMCAyMy05LjcgMjMuOS0yMi4zbDcuNC0xMDRjMS4zLTE4LjItMTMuMS0zMy43LTMxLjQtMzMuN3oiXX0sSGtyPUYyZSxxa3I9RjJlLGprcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzY2hvb2wtY2lyY2xlLWV4Y2xhbWF0aW9uIixpY29uOls2NDAsNTEyLFtdLCJlNTZjIiwiTTY0IDEyOGMtMzUuMyAwLTY0IDI4LjctNjQgNjRMMCA0NDhjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMjc2IDBjLTEwLjUtMTQuNi0xOS0zMC43LTI1LjEtNDhsLTkwLjkgMCAwLTg4YzAtMjIuMSAxNy45LTQwIDQwLTQwbDQ4IDBjMSAwIDEuOSAwIDIuOSAuMSAyNi4zLTc0LjYgOTcuNS0xMjguMSAxODEuMS0xMjguMSAyOC42IDAgNTUuNiA2LjIgODAgMTcuNGwwLTMzLjRjMC0zNS4zLTI4LjctNjQtNjQtNjRsLTY0IDAtMTI3LjktMTE1LjFjLTE4LjMtMTYuNC00Ni0xNi40LTY0LjIgMEwxMjggMTI4IDY0IDEyOHptNjQgMjQwYzAgOC44LTcuMiAxNi0xNiAxNmwtMzIgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMzJjMC04LjggNy4yLTE2IDE2LTE2bDMyIDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMzJ6TTExMiAyNTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyYzAtOC44IDcuMi0xNiAxNi0xNmwzMiAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDMyYzAgOC44LTcuMiAxNi0xNiAxNnpNMjg4IDEyOGE2NCA2NCAwIDEgMSAwIDEyOCA2NCA2NCAwIDEgMSAwLTEyOHpNNDk2IDU0NGExNDQgMTQ0IDAgMSAwIDAtMjg4IDE0NCAxNDQgMCAxIDAgMCAyODh6bTAtMTAwYTIwIDIwIDAgMSAxIDAgNDAgMjAgMjAgMCAxIDEgMC00MHptMC0xNDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgODBjMCA4LjgtNy4yIDE2LTE2IDE2cy0xNi03LjItMTYtMTZsMC04MGMwLTguOCA3LjItMTYgMTYtMTZ6Il19LGpEZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJncmFkdWF0aW9uLWNhcCIsaWNvbjpbNTc2LDUxMixbMTI3ODkxLCJtb3J0YXItYm9hcmQiXSwiZjE5ZCIsIk00OCAxOTUuOGwyMDkuMiA4Ni4xYzkuOCA0IDIwLjIgNi4xIDMwLjggNi4xczIxLTIuMSAzMC44LTYuMWwyNDIuNC05OS44YzktMy43IDE0LjgtMTIuNCAxNC44LTIyLjFzLTUuOC0xOC40LTE0LjgtMjIuMUwzMTguOCAzOC4xQzMwOSAzNC4xIDI5OC42IDMyIDI4OCAzMnMtMjEgMi4xLTMwLjggNi4xTDE0LjggMTM3LjlDNS44IDE0MS42IDAgMTUwLjMgMCAxNjBMMCA0NTZjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTI2MC4yem00OCA3MS43TDk2IDM4NGMwIDUzIDg2IDk2IDE5MiA5NnMxOTItNDMgMTkyLTk2bDAtMTE2LjYtMTQyLjkgNTguOWMtMTUuNiA2LjQtMzIuMiA5LjctNDkuMSA5LjdzLTMzLjUtMy4zLTQ5LjEtOS43TDk2IDI2Ny40eiJdfSxWa3I9akRlLFVrcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzdG9yZSIsaWNvbjpbNTEyLDUxMixbXSwiZjU0ZSIsIk0zMC43IDcyLjNDMzcuNiA0OC40IDU5LjUgMzIgODQuNCAzMmwzNDQgMGMyNC45IDAgNDYuOCAxNi40IDUzLjggNDAuM2wyMy40IDgwLjJjMTIuOCA0My43LTIwLjEgODcuNS02NS42IDg3LjUtMjYuMyAwLTQ5LjQtMTQuOS02MC44LTM3LjEtMTEuNiAyMS45LTM0LjYgMzcuMS02MS40IDM3LjEtMjYuNiAwLTQ5LjctMTUtNjEuMy0zNy0xMS42IDIyLTM0LjcgMzctNjEuMyAzNy0yNi44IDAtNDkuOC0xNS4xLTYxLjQtMzcuMS0xMS40IDIyLjEtMzQuNSAzNy4xLTYwLjggMzcuMS00NS42IDAtNzguNC00My43LTY1LjYtODcuNUwzMC43IDcyLjN6TTk2LjQgMzUybDMyMCAwIDAtNjYuNGM3LjYgMS42IDE1LjUgMi40IDIzLjUgMi40IDE0LjMgMCAyOC0yLjYgNDAuNS03LjJsMCAxNTEuMmMwIDI2LjUtMjEuNSA0OC00OCA0OGwtMzUyIDBjLTI2LjUgMC00OC0yMS41LTQ4LTQ4bDAtMTUxLjJjMTIuNSA0LjYgMjYuMSA3LjIgNDAuNSA3LjIgOC4xIDAgMTUuOS0uOCAyMy41LTIuNGwwIDY2LjR6Il19LFdrcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ1c2VyLWFzdHJvbmF1dCIsaWNvbjpbNDQ4LDUxMixbXSwiZjRmYiIsIk0yMjQgMzM2Yzc0LjYgMCAxMzguNC00Ni40IDE2NC0xMTJsNCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0bDAtODBjMC0xMy4zLTEwLjctMjQtMjQtMjRsLTQgMEMzNjIuNCAzMC40IDI5OC42LTE2IDIyNC0xNlM4NS42IDMwLjQgNjAgOTZsLTQgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRsMCA4MGMwIDEzLjMgMTAuNyAyNCAyNCAyNGw0IDBjMjUuNiA2NS42IDg5LjQgMTEyIDE2NCAxMTJ6TTIwOCA4MGwzMiAwYzUzIDAgOTYgNDMgOTYgOTZzLTQzIDk2LTk2IDk2bC0zMiAwYy01MyAwLTk2LTQzLTk2LTk2czQzLTk2IDk2LTk2ek0xNiA0ODQuNkMxNiA0OTkuNyAyOC4zIDUxMiA0My40IDUxMmw1Mi42IDAgMC00OGMwLTE3LjcgMTQuMy0zMiAzMi0zMmwxOTIgMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDQ4IDUyLjYgMGMxNS4xIDAgMjcuNC0xMi4zIDI3LjQtMjcuNCAwLTU5LjgtMzEuOS0xMTIuMi03OS42LTE0MS0zNi40IDI1LjUtODAuNiA0MC40LTEyOC40IDQwLjRzLTkyLTE0LjktMTI4LjQtNDAuNEM0Ny45IDM3Mi40IDE2IDQyNC44IDE2IDQ4NC42ek0xODMuMyAxNDEuNWMtLjktMy4zLTMuOS01LjUtNy4zLTUuNXMtNi40IDIuMi03LjMgNS41bC02IDIxLjItMjEuMiA2Yy0zLjMgLjktNS41IDMuOS01LjUgNy4zczIuMiA2LjQgNS41IDcuM2wyMS4yIDYgNiAyMS4yYy45IDMuMyAzLjkgNS41IDcuMyA1LjVzNi40LTIuMiA3LjMtNS41bDYtMjEuMiAyMS4yLTZjMy4zLS45IDUuNS0zLjkgNS41LTcuM3MtMi4yLTYuNC01LjUtNy4zbC0yMS4yLTYtNi0yMS4yek0xNTIgNDg4bDAgMjQgNDggMCAwLTI0YzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0em0xMjAtMjRjLTEzLjMgMC0yNCAxMC43LTI0IDI0bDAgMjQgNDggMCAwLTI0YzAtMTMuMy0xMC43LTI0LTI0LTI0eiJdfSxHa3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYnVpbGRpbmctZmxhZyIsaWNvbjpbNjQwLDUxMixbXSwiZTRkNSIsIk02NCAwQzI4LjcgMCAwIDI4LjcgMCA2NEwwIDQ0OGMwIDM1LjMgMjguNyA2NCA2NCA2NGwyNTYgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTM4NGMwLTM1LjMtMjguNy02NC02NC02NEw2NCAwek0xNzYgMzUybDMyIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCA4MC05NiAwIDAtODBjMC0xNy43IDE0LjMtMzIgMzItMzJ6TTk2IDExMmMwLTguOCA3LjItMTYgMTYtMTZsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyek0yNDAgOTZsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyYzAtOC44IDcuMi0xNiAxNi0xNnpNOTYgMjQwYzAtOC44IDcuMi0xNiAxNi0xNmwzMiAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDMyYzAgOC44LTcuMiAxNi0xNiAxNmwtMzIgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMzJ6bTE0NC0xNmwzMiAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDMyYzAgOC44LTcuMiAxNi0xNiAxNmwtMzIgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMzJjMC04LjggNy4yLTE2IDE2LTE2ek00NjQgMGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJsMCA0NDhjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTI4OCAxMTIgMGMxNy43IDAgMzItMTQuMyAzMi0zMmwwLTk2YzAtMTcuNy0xNC4zLTMyLTMyLTMyTDQ5NiAzMmMwLTE3LjctMTQuMy0zMi0zMi0zMnoiXX0sVkRlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im11Zy1zYXVjZXIiLGljb246WzU3Niw1MTIsWyJjb2ZmZWUiXSwiZjBmNCIsIk02NCA2NGMwLTE3LjcgMTQuMy0zMiAzMi0zMmwzNTIgMGM3MC43IDAgMTI4IDU3LjMgMTI4IDEyOFM1MTguNyAyODggNDQ4IDI4OGMwIDUzLTQzIDk2LTk2IDk2bC0xOTIgMGMtNTMgMC05Ni00My05Ni05Nkw2NCA2NHptNDQ4IDk2YzAtMzUuMy0yOC43LTY0LTY0LTY0bDAgMTI4YzM1LjMgMCA2NC0yOC43IDY0LTY0ek02NCA0NDhsMzg0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJMNjQgNTEyYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMyeiJdfSxZa3I9VkRlLFprcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJsZW1vbiIsaWNvbjpbNDQ4LDUxMixbMTI3ODE5XSwiZjA5NCIsIk00NDggOTZjMC0zNS4zLTI4LjctNjQtNjQtNjQtNi42IDAtMTMgMS0xOSAyLjktMjIuNSA3LTQ4LjEgMTQuOS03MSA5LTc1LjItMTkuMS0xNTYuNCAxMS0yMTMuNyA2OC4zUy03LjIgMjUwLjggMTEuOSAzMjZjNS44IDIyLjktMiA0OC40LTkgNzEtMS45IDYtMi45IDEyLjQtMi45IDE5IDAgMzUuMyAyOC43IDY0IDY0IDY0IDYuNiAwIDEzLTEgMTkuMS0yLjkgMjIuNS03IDQ4LjEtMTQuOSA3MS05IDc1LjIgMTkuMSAxNTYuNC0xMSAyMTMuNy02OC4zUzQ1NS4yIDI2MS4yIDQzNi4xIDE4NmMtNS44LTIyLjkgMi00OC40IDktNzEgMS45LTYgMi45LTEyLjQgMi45LTE5LjF6TTIyMi43IDE0M2MtNTIgMTUuMi05Ni41IDU5LjctMTExLjcgMTExLjctMy43IDEyLjctMTcuMSAyMC0yOS44IDE2LjNTNjEuMiAyNTQgNjUgMjQxLjNjMTkuOC02Ny43IDc2LjYtMTI0LjUgMTQ0LjMtMTQ0LjMgMTIuNy0zLjcgMjYuMSAzLjYgMjkuOCAxNi4zcy0zLjYgMjYuMS0xNi4zIDI5Ljh6Il19LFhrcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjYXJhdmFuIixpY29uOls2NDAsNTEyLFtdLCJmOGZmIiwiTTMyIDk2YzAtMzUuMyAyOC43LTY0IDY0LTY0bDMyMCAwYzcwLjcgMCAxMjggNTcuMyAxMjggMTI4bDAgMTkyIDY0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTI5Ni40IDBjLjIgMi42IC40IDUuMyAuNCA4IDAgNDguNi0zOS40IDg4LTg4IDg4cy04OC0zOS40LTg4LTg4YzAtMi43IC4xLTUuNCAuNC04TDk2IDQxNmMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMzIgOTZ6TTM1MiAzNTJsNjQgMGMxNy43IDAgMzItMTQuMyAzMi0zMmwwLTQ4LTI0IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjRsMjQgMCAwLTY0YzAtMTcuNy0xNC4zLTMyLTMyLTMybC02NCAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMmwwIDE2MGMwIDE3LjcgMTQuMyAzMiAzMiAzMnpNMTYwIDEyOGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJsMCA2NGMwIDE3LjcgMTQuMyAzMiAzMiAzMmw2NCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtNjRjMC0xNy43LTE0LjMtMzItMzItMzJsLTY0IDB6bTY0IDMzNmE0MCA0MCAwIDEgMCAwLTgwIDQwIDQwIDAgMSAwIDAgODB6Il19LFFrcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJxIixpY29uOls0NDgsNTEyLFsxMTNdLCI1MSIsIk02NCAyNTZjMCA4OC40IDcxLjYgMTYwIDE2MCAxNjAgMjguOSAwIDU2LTcuNyA3OS40LTIxLjFsLTcyLTg2LjRjLTExLjMtMTMuNi05LjUtMzMuOCA0LjEtNDUuMXMzMy44LTkuNSA0NS4xIDQuMWw3MC45IDg1LjFjMjAuNC0yNi44IDMyLjUtNjAuMyAzMi41LTk2LjYgMC04OC40LTcxLjYtMTYwLTE2MC0xNjBTNjQgMTY3LjYgNjQgMjU2ek0zNDQuOSA0NDQuNkMzMTAgNDY3IDI2OC41IDQ4MCAyMjQgNDgwIDEwMC4zIDQ4MCAwIDM3OS43IDAgMjU2UzEwMC4zIDMyIDIyNCAzMiA0NDggMTMyLjMgNDQ4IDI1NmMwIDU2LjEtMjAuNiAxMDcuNC01NC43IDE0Ni43bDQ3LjMgNTYuOGMxMS4zIDEzLjYgOS41IDMzLjgtNC4xIDQ1LjFzLTMzLjggOS41LTQ1LjEtNC4xbC00Ni42LTU1Ljl6Il19LEtrcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJsb2NrIixpY29uOlszODQsNTEyLFsxMjgyNzRdLCJmMDIzIiwiTTEyOCA5NmwwIDY0IDEyOCAwIDAtNjRjMC0zNS4zLTI4LjctNjQtNjQtNjRzLTY0IDI4LjctNjQgNjR6TTY0IDE2MGwwLTY0QzY0IDI1LjMgMTIxLjMtMzIgMTkyLTMyUzMyMCAyNS4zIDMyMCA5NmwwIDY0YzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMjI0YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDUxMmMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCAyMjRjMC0zNS4zIDI4LjctNjQgNjQtNjR6Il19LEprcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwYWludC1yb2xsZXIiLGljb246WzUxMiw1MTIsW10sImY1YWEiLCJNMCA2NEMwIDI4LjcgMjguNyAwIDY0IDBMMzUyIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMTYgMGM0NC4yIDAgODAgMzUuOCA4MCA4MGwwIDk2YzAgNDQuMi0zNS44IDgwLTgwIDgwbC0xNjAgMGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMTguN2MxOC42IDYuNiAzMiAyNC40IDMyIDQ1LjNsMCA5NmMwIDI2LjUtMjEuNSA0OC00OCA0OGwtMzIgMGMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhsMC05NmMwLTIwLjkgMTMuNC0zOC43IDMyLTQ1LjNsMC0xOC43YzAtNDQuMiAzNS44LTgwIDgwLTgwbDE2MCAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTk2YzAtOC44LTcuMi0xNi0xNi0xNmwtMTYgMGMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCAxOTJjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgNjR6Il19LFVEZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ2b2x1bWUtaGlnaCIsaWNvbjpbNjQwLDUxMixbMTI4MjY2LCJ2b2x1bWUtdXAiXSwiZjAyOCIsIk01MzMuNiAzMi41Yy0xMC4zLTguNC0yNS40LTYuOC0zMy44IDMuNXMtNi44IDI1LjQgMy41IDMzLjhDNTU3LjUgMTEzLjggNTkyIDE4MC44IDU5MiAyNTZzLTM0LjUgMTQyLjItODguNyAxODYuM2MtMTAuMyA4LjQtMTEuOCAyMy41LTMuNSAzMy44czIzLjUgMTEuOCAzMy44IDMuNUM1OTguNSA0MjYuNyA2NDAgMzQ2LjIgNjQwIDI1NlM1OTguNSA4NS4yIDUzMy42IDMyLjV6TTQ3My4xIDEwN2MtMTAuMy04LjQtMjUuNC02LjgtMzMuOCAzLjVzLTYuOCAyNS40IDMuNSAzMy44QzQ3NS4zIDE3MC43IDQ5NiAyMTAuOSA0OTYgMjU2cy0yMC43IDg1LjMtNTMuMiAxMTEuOGMtMTAuMyA4LjQtMTEuOCAyMy41LTMuNSAzMy44czIzLjUgMTEuOCAzMy44IDMuNWM0My4yLTM1LjIgNzAuOS04OC45IDcwLjktMTQ5cy0yNy43LTExMy44LTcwLjktMTQ5em0tNjAuNSA3NC41Yy0xMC4zLTguNC0yNS40LTYuOC0zMy44IDMuNXMtNi44IDI1LjQgMy41IDMzLjhDMzkzLjEgMjI3LjYgNDAwIDI0MSA0MDAgMjU2cy02LjkgMjguNC0xNy43IDM3LjNjLTEwLjMgOC40LTExLjggMjMuNS0zLjUgMzMuOHMyMy41IDExLjggMzMuOCAzLjVDNDM0LjEgMzEyLjkgNDQ4IDI4Ni4xIDQ0OCAyNTZzLTEzLjktNTYuOS0zNS40LTc0LjV6TTgwIDM1Mmw0OCAwIDEzNC4xIDExOS4yYzYuNCA1LjcgMTQuNiA4LjggMjMuMSA4LjggMTkuMiAwIDM0LjgtMTUuNiAzNC44LTM0LjhsMC0zNzguNGMwLTE5LjItMTUuNi0zNC44LTM0LjgtMzQuOC04LjUgMC0xNi43IDMuMS0yMy4xIDguOEwxMjggMTYwIDgwIDE2MGMtMjYuNSAwLTQ4IDIxLjUtNDggNDhsMCA5NmMwIDI2LjUgMjEuNSA0OCA0OCA0OHoiXX0sZVNyPVVEZSx0U3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZm9sZGVyLXBsdXMiLGljb246WzUxMiw1MTIsW10sImY2NWUiLCJNNTEyIDM4NGMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA0NDhjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgOTZDMCA2MC43IDI4LjcgMzIgNjQgMzJsMTM4LjcgMGMxMy44IDAgMjcuMyA0LjUgMzguNCAxMi44bDM4LjQgMjguOGM1LjUgNC4yIDEyLjMgNi40IDE5LjIgNi40TDQ0OCA4MGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDI0MHpNMjU2IDE2MGMtMTMuMyAwLTI0IDEwLjctMjQgMjRsMCA0OC00OCAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDQ4IDAgMCA0OGMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtNDggNDggMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtNDggMCAwLTQ4YzAtMTMuMy0xMC43LTI0LTI0LTI0eiJdfSxyU3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibWVyY3VyeSIsaWNvbjpbMzg0LDUxMixbOTc5MV0sImYyMjMiLCJNMTE3LTRDMTA2LTE3LjggODUuOC0yMCA3Mi4xLTlzLTE2IDMxLjItNSA0NUM3NC45IDQ1LjcgODMuNyA1NC41IDkzLjUgNjIuMSA0Ni43IDkzLjcgMTYgMTQ3LjMgMTYgMjA4IDE2IDI5NC4zIDc4LjEgMzY2LjEgMTYwIDM4MS4xbDAgMzQuOS0zMiAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDMyIDAgMCAzMmMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMzIgMzIgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtMzIgMCAwLTM0LjljODEuOS0xNSAxNDQtODYuOCAxNDQtMTczLjEgMC02MC43LTMwLjctMTE0LjMtNzcuNS0xNDUuOSA5LjgtNy43IDE4LjctMTYuNCAyNi40LTI2LjEgMTEuMS0xMy44IDguOC0zMy45LTUtNDVTMjc4LTE3LjggMjY3LTRjLTE3LjYgMjItNDQuNyAzNi03NSAzNlMxMzQuNyAxOCAxMTctNHptNzUgMzI0Yy02MS45IDAtMTEyLTUwLjEtMTEyLTExMlMxMzAuMSA5NiAxOTIgOTYgMzA0IDE0Ni4xIDMwNCAyMDhjMCA2MS44LTUwLjEgMTEyLTExMS45IDExMmwtLjEgMHoiXX0sYVNyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFuY2hvciIsaWNvbjpbNTc2LDUxMixbOTg3NV0sImYxM2QiLCJNMjg4IDY0YTMyIDMyIDAgMSAwIDAgNjQgMzIgMzIgMCAxIDAgMC02NHpNMTkyIDk2YzAtNTMgNDMtOTYgOTYtOTZzOTYgNDMgOTYgOTZjMCA0MS44LTI2LjcgNzcuNC02NCA5MC41bDAgMjU3LjljNjIuOS0xNC4zIDExMC4yLTY5LjcgMTExLjktMTM2LjVsLTE2LjEgMTQuMWMtMTAgOC43LTI1LjEgNy43LTMzLjktMi4zcy03LjctMjUuMSAyLjMtMzMuOWw2NC01NmM5LTcuOSAyMi42LTcuOSAzMS42IDBsNjQgNTZjMTAgOC43IDExIDIzLjkgMi4zIDMzLjlzLTIzLjkgMTEtMzMuOSAyLjNMNDk2IDMwNy45QzQ5My45IDQyMSA0MDEuNiA1MTIgMjg4IDUxMlM4Mi4xIDQyMSA4MCAzMDcuOUw2My44IDMyMi4xYy0xMCA4LjctMjUuMSA3LjctMzMuOS0yLjNzLTcuNy0yNS4xIDIuMy0zMy45bDY0LTU2YzktNy45IDIyLjYtNy45IDMxLjYgMGw2NCA1NmMxMCA4LjcgMTEgMjMuOSAyLjMgMzMuOXMtMjMuOSAxMS0zMy45IDIuM2wtMTYuMS0xNC4xYzEuOCA2Ni44IDQ5LjEgMTIyLjIgMTExLjkgMTM2LjVsMC0yNTcuOWMtMzcuMy0xMy4yLTY0LTQ4LjctNjQtOTAuNXoiXX0sV0RlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNxdWFyZS1wYXJraW5nIixpY29uOls0NDgsNTEyLFsxMjczNTksInBhcmtpbmciXSwiZjU0MCIsIk02NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgNDE2YzAgMzUuMyAyOC43IDY0IDY0IDY0bDMyMCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMzIwYzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDMyek0xOTIgMjU2bDQ4IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTQ4IDAgMCA2NHptNDggNjRsLTQ4IDAgMCAzMmMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTE4NGMwLTIyLjEgMTcuOS00MCA0MC00MGw3MiAwYzUzIDAgOTYgNDMgOTYgOTZzLTQzIDk2LTk2IDk2eiJdfSxpU3I9V0RlLG9Tcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJoYW51a2lhaCIsaWNvbjpbNjQwLDUxMixbMTI4MzM0XSwiZjZlNiIsIk0zMTQuMiAzLjNjLTUuMSA4LjgtMTguMiAzMy4zLTE4LjIgNTIuNyAwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0YzAtMTkuNC0xMy4xLTQzLjktMTguMi01Mi43LTEuMi0yLjEtMy40LTMuMy01LjgtMy4zcy00LjYgMS4yLTUuOCAzLjN6bS0yODggNDhDMjEuMSA2MC4xIDggODQuNiA4IDEwNCA4IDExNy4zIDE4LjcgMTI4IDMyIDEyOHMyNC0xMC43IDI0LTI0YzAtMTkuNC0xMy4xLTQzLjktMTguMi01Mi43LTEuMi0yLjEtMy40LTMuMy01LjgtMy4zcy00LjYgMS4yLTUuOCAzLjN6TTg4IDEwNGMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0YzAtMTkuNC0xMy4xLTQzLjktMTguMi01Mi43LTEuMi0yLjEtMy40LTMuMy01LjgtMy4zcy00LjYgMS4yLTUuOCAzLjNDMTAxLjEgNjAuMSA4OCA4NC42IDg4IDEwNHptODIuMi01Mi43Yy01LjEgOC44LTE4LjIgMzMuMy0xOC4yIDUyLjcgMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGMwLTE5LjQtMTMuMS00My45LTE4LjItNTIuNy0xLjItMi4xLTMuNC0zLjMtNS44LTMuM3MtNC42IDEuMi01LjggMy4zek0yMTYgMTA0YzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRjMC0xOS40LTEzLjEtNDMuOS0xOC4yLTUyLjctMS4yLTIuMS0zLjQtMy4zLTUuOC0zLjNzLTQuNiAxLjItNS44IDMuM0MyMjkuMSA2MC4xIDIxNiA4NC42IDIxNiAxMDR6TTM5NC4yIDUxLjNjLTUuMSA4LjgtMTguMiAzMy4zLTE4LjIgNTIuNyAwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0YzAtMTkuNC0xMy4xLTQzLjktMTguMi01Mi43LTEuMi0yLjEtMy40LTMuMy01LjgtMy4zcy00LjYgMS4yLTUuOCAzLjN6TTQ0MCAxMDRjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGMwLTE5LjQtMTMuMS00My45LTE4LjItNTIuNy0xLjItMi4xLTMuNC0zLjMtNS44LTMuM3MtNC42IDEuMi01LjggMy4zQzQ1My4xIDYwLjEgNDQwIDg0LjYgNDQwIDEwNHptODIuMi01Mi43Yy01LjEgOC44LTE4LjIgMzMuMy0xOC4yIDUyLjcgMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGMwLTE5LjQtMTMuMS00My45LTE4LjItNTIuNy0xLjItMi4xLTMuNC0zLjMtNS44LTMuM3MtNC42IDEuMi01LjggMy4zek01ODQgMTA0YzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRjMC0xOS40LTEzLjEtNDMuOS0xOC4yLTUyLjctMS4yLTIuMS0zLjQtMy4zLTUuOC0zLjNzLTQuNiAxLjItNS44IDMuM0M1OTcuMSA2MC4xIDU4NCA4NC42IDU4NCAxMDR6TTExMiAxNjBjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDExMiAzMiAwIDAtMTEyYzAtOC44LTcuMi0xNi0xNi0xNnptNjQgMGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMTEyIDMyIDAgMC0xMTJjMC04LjgtNy4yLTE2LTE2LTE2em02NCAwYy04LjggMC0xNiA3LjItMTYgMTZsMCAxMTIgMzIgMCAwLTExMmMwLTguOC03LjItMTYtMTYtMTZ6bTE2MCAwYy04LjggMC0xNiA3LjItMTYgMTZsMCAxMTIgMzIgMCAwLTExMmMwLTguOC03LjItMTYtMTYtMTZ6bTY0IDBjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDExMiAzMiAwIDAtMTEyYzAtOC44LTcuMi0xNi0xNi0xNnptNjQgMGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMTEyIDMyIDAgMC0xMTJjMC04LjgtNy4yLTE2LTE2LTE2ek0zNTIgMTQ0YzAtMTcuNy0xNC4zLTMyLTMyLTMycy0zMiAxNC4zLTMyIDMybDAgMTc2LTE5MiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTk2YzAtMTcuNy0xNC4zLTMyLTMyLTMyUzAgMTc0LjMgMCAxOTJsMCA5NmMwIDUzIDQzIDk2IDk2IDk2bDE5MiAwIDAgNjQtMTI4IDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsMzIwIDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTEyOCAwIDAtNjQgMTkyIDBjNTMgMCA5Ni00MyA5Ni05NmwwLTk2YzAtMTcuNy0xNC4zLTMyLTMyLTMycy0zMiAxNC4zLTMyIDMybDAgOTZjMCAxNy43LTE0LjMgMzItMzIgMzJsLTE5MiAwIDAtMTc2eiJdfSxUdz17cHJlZml4OiJmYXMiLGljb25OYW1lOiJyb3RhdGUtbGVmdCIsaWNvbjpbNTEyLDUxMixbInJvdGF0ZS1iYWNrIiwicm90YXRlLWJhY2t3YXJkIiwidW5kby1hbHQiXSwiZjJlYSIsIk0yNCAxOTJsMTQ0IDBjOS43IDAgMTguNS01LjggMjIuMi0xNC44czEuNy0xOS4zLTUuMi0yNi4ybC00Ni43LTQ2LjdjNzUuMy01OC42IDE4NC4zLTUzLjMgMjUzLjUgMTUuOSA3NSA3NSA3NSAxOTYuNSAwIDI3MS41cy0xOTYuNSA3NS0yNzEuNSAwYy0xMC4yLTEwLjItMTktMjEuMy0yNi40LTMzLTkuNS0xNC45LTI5LjMtMTkuMy00NC4yLTkuOHMtMTkuMyAyOS4zLTkuOCA0NC4yQzQ5LjcgNDA4LjcgNjEuNCA0MjMuNSA3NSA0MzcgMTc1IDUzNyAzMzcgNTM3IDQzNyA0MzdTNTM3IDE3NSA0MzcgNzVDMzQyLjgtMTkuMyAxOTMuMy0yNC43IDkyLjcgNTguOEw0MSA3QzM0LjEgLjIgMjMuOC0xLjkgMTQuOCAxLjhTMCAxNC4zIDAgMjRMMCAxNjhjMCAxMy4zIDEwLjcgMjQgMjQgMjR6Il19LG5Tcj1UdyxzU3I9VHcsbFNyPVR3LEdEZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJoZWFkaW5nIixpY29uOls0NDgsNTEyLFsiaGVhZGVyIl0sImYxZGMiLCJNMCA2NEMwIDQ2LjMgMTQuMyAzMiAzMiAzMmw5NiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC0xNiAwIDAgMTEyIDIyNCAwIDAtMTEyLTE2IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsOTYgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtMTYgMCAwIDMyMCAxNiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC05NiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDE2IDAgMC0xNDQtMjI0IDAgMCAxNDQgMTYgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtOTYgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMmwxNiAwIDAtMzIwLTE2IDBDMTQuMyA5NiAwIDgxLjcgMCA2NHoiXX0sY1NyPUdEZSxkU3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY3Jvc3NoYWlycyIsaWNvbjpbNTc2LDUxMixbXSwiZjA1YiIsIk0yODgtMTZjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCAxOC4zYzk4LjEgMTQgMTc1LjcgOTEuNiAxODkuNyAxODkuN2wxOC4zIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTE4LjMgMGMtMTQgOTguMS05MS42IDE3NS43LTE4OS43IDE4OS43bDAgMTguM2MwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTE4LjNDMTU3LjkgNDYzLjcgODAuMyAzODYuMSA2Ni4zIDI4OEw0OCAyODhjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsMTguMyAwQzgwLjMgMTI1LjkgMTU3LjkgNDguMyAyNTYgMzQuM0wyNTYgMTZjMC0xNy43IDE0LjMtMzIgMzItMzJ6TTEzMS4yIDI4OGMxMi43IDYyLjcgNjIuMSAxMTIuMSAxMjQuOCAxMjQuOGwwLTEyLjhjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDEyLjhjNjIuNy0xMi43IDExMi4xLTYyLjEgMTI0LjgtMTI0LjhMNDMyIDI4OGMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMmwxMi44IDBDNDMyLjEgMTYxLjMgMzgyLjcgMTExLjkgMzIwIDk5LjJsMCAxMi44YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMTIuOEMxOTMuMyAxMTEuOSAxNDMuOSAxNjEuMyAxMzEuMiAyMjRsMTIuOCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC0xMi44IDB6TTI4OCAyMDhhNDggNDggMCAxIDEgMCA5NiA0OCA0OCAwIDEgMSAwLTk2eiJdfSx1U3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2lyY2xlLW5vZGVzIixpY29uOls1MTIsNTEyLFtdLCJlNGUyIiwiTTQxOC40IDE1Ny45YzM1LjMtOC4zIDYxLjYtNDAgNjEuNi03Ny45IDAtNDQuMi0zNS44LTgwLTgwLTgwLTQzLjQgMC03OC43IDM0LjUtODAgNzcuNUwxMzYuMiAxNTEuMUMxMjEuNyAxMzYuOCAxMDEuOSAxMjggODAgMTI4IDM1LjggMTI4IDAgMTYzLjggMCAyMDhzMzUuOCA4MCA4MCA4MGMxMi4yIDAgMjMuOC0yLjcgMzQuMS03LjZMMjU5LjcgNDA3LjhjLTIuNCA3LjYtMy43IDE1LjgtMy43IDI0LjIgMCA0NC4yIDM1LjggODAgODAgODBzODAtMzUuOCA4MC04MGMwLTI3LjctMTQtNTIuMS0zNS40LTY2LjRsMzcuOC0yMDcuN3pNMTU2LjMgMjMyLjJjMi4yLTYuOSAzLjUtMTQuMiAzLjctMjEuN2wxODMuOC03My41YzMuNiAzLjUgNy40IDYuNyAxMS42IDkuNUwzMTcuNiAzNTQuMWMtNS41IDEuMy0xMC44IDMuMS0xNS44IDUuNUwxNTYuMyAyMzIuMnoiXX0sZlNyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6IndpbmRvdy1yZXN0b3JlIixpY29uOls1NzYsNTEyLFtdLCJmMmQyIiwiTTUxMiA5NkwxNjAgOTZjMC0zNS4zIDI4LjctNjQgNjQtNjRsMjg4IDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAxOTJjMCAzNS4zLTI4LjcgNjQtNjQgNjRsLTQ4IDAgMC02NCA0OCAwIDAtMTkyek0wIDIyNGMwLTM1LjMgMjguNy02NCA2NC02NGwyODggMGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDE5MmMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA0ODBjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgMjI0em02NCA0MGMwIDEzLjMgMTAuNyAyNCAyNCAyNGwyNDAgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNEw4OCAyNDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0eiJdfSxwU3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiciIsaWNvbjpbMzIwLDUxMixbMTE0XSwiNTIiLCJNMzIgMzJDMTQuMyAzMiAwIDQ2LjMgMCA2NEwwIDQ0OGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMTI4IDk1LjMgMCAxMDIuNCAxNDYuNGMxMC4xIDE0LjUgMzAuMSAxOCA0NC42IDcuOXMxOC0zMC4xIDcuOS00NC42TDIzMC4xIDMwOS41QzI4Mi44IDI4OC4xIDMyMCAyMzYuNCAzMjAgMTc2IDMyMCA5Ni41IDI1NS41IDMyIDE3NiAzMkwzMiAzMnpNMTc2IDI1NmwtMTEyIDAgMC0xNjAgMTEyIDBjNDQuMiAwIDgwIDM1LjggODAgODBzLTM1LjggODAtODAgODB6Il19LGhTcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmaWx0ZXItY2lyY2xlLXhtYXJrIixpY29uOls1NzYsNTEyLFtdLCJlMTdiIiwiTTMyIDY0QzE5LjEgNjQgNy40IDcxLjggMi40IDgzLjhTLjIgMTA5LjUgOS40IDExOC42TDE5MiAzMDEuMyAxOTIgNDE2YzAgOC41IDMuNCAxNi42IDkuNCAyMi42bDY0IDY0YzIuNSAyLjUgNS4zIDQuNSA4LjMgNi0yMS4yLTMwLjktMzMuNi02OC4zLTMzLjYtMTA4LjYgMC05OS40IDc1LjUtMTgxLjEgMTcyLjMtMTkxbDkwLjQtOTAuNGM5LjItOS4yIDExLjktMjIuOSA2LjktMzQuOVM0OTIuOSA2NCA0ODAgNjRMMzIgNjR6TTQzMiA1NDRhMTQ0IDE0NCAwIDEgMCAwLTI4OCAxNDQgMTQ0IDAgMSAwIDAgMjg4em01OS4zLTE4MC43bC0zNi43IDM2LjcgMzYuNyAzNi43YzYuMiA2LjIgNi4yIDE2LjQgMCAyMi42cy0xNi40IDYuMi0yMi42IDBsLTM2LjctMzYuNy0zNi43IDM2LjdjLTYuMiA2LjItMTYuNCA2LjItMjIuNiAwcy02LjItMTYuNCAwLTIyLjZsMzYuNy0zNi43LTM2LjctMzYuN2MtNi4yLTYuMi02LjItMTYuNCAwLTIyLjZzMTYuNC02LjIgMjIuNiAwbDM2LjcgMzYuNyAzNi43LTM2LjdjNi4yLTYuMiAxNi40LTYuMiAyMi42IDBzNi4yIDE2LjQgMCAyMi42eiJdfSxtU3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZ29wdXJhbSIsaWNvbjpbNTEyLDUxMixbXSwiZjY2NCIsIk0xMjAgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNGwwIDggNDAgMCAwLThjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNGwwIDggNDggMCAwLThjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNGwwIDggNDAgMCAwLThjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNGwwIDEzNmMyNi41IDAgNDggMjEuNSA0OCA0OGwwIDgwYzI2LjUgMCA0OCAyMS41IDQ4IDQ4bDAgMTI4YzAgMjYuNS0yMS41IDQ4LTQ4IDQ4bC00OCAwIDAtMjI0LTMyIDAgMC0xMjgtNDggMCAwIDEyOCAzMiAwIDAgMjI0LTIyNCAwIDAtMjI0IDMyIDAgMC0xMjgtNDggMCAwIDEyOC0zMiAwIDAgMjI0LTQ4IDBjLTI2LjUgMC00OC0yMS41LTQ4LTQ4TDAgMzM2YzAtMjYuNSAyMS41LTQ4IDQ4LTQ4bDAtODBjMC0yNi41IDIxLjUtNDggNDgtNDhMOTYgMjRjMC0xMy4zIDEwLjctMjQgMjQtMjR6TTI1NiAyMDhjLTE3LjcgMC0zMiAxNC4zLTMyIDMybDAgNDggNjQgMCAwLTQ4YzAtMTcuNy0xNC4zLTMyLTMyLTMyek0yMDggNDAwbDAgNjQgOTYgMCAwLTY0YzAtMjYuNS0yMS41LTQ4LTQ4LTQ4cy00OCAyMS41LTQ4IDQ4ek0yNTYgOTZjLTE3LjcgMC0zMiAxNC4zLTMyIDMybDAgMzIgNjQgMCAwLTMyYzAtMTcuNy0xNC4zLTMyLTMyLTMyeiJdfSxnU3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaGVhcnQtY2lyY2xlLW1pbnVzIixpY29uOls1NzYsNTEyLFtdLCJlNGZmIiwiTTI0MSA4Ny4xbDE1IDIwLjcgMTUtMjAuN0MyOTYgNTIuNSAzMzYuMiAzMiAzNzguOSAzMiA0NTIuNCAzMiA1MTIgOTEuNiA1MTIgMTY1LjFsMCAyLjZjMCAxNy42LTMuNCAzNS42LTkuNSA1My43LTIxLjgtOC42LTQ1LjYtMTMuNC03MC41LTEzLjQtMTA2IDAtMTkyIDg2LTE5MiAxOTIgMCAyOC41IDYuMiA1NS42IDE3LjQgODAtLjUgMC0uOSAwLTEuNCAwLTE1LjUgMC0zMC44LTQuNi00My4xLTE0LjEtNzMtNTUuNy0yMTIuOS0xODYtMjEyLjktMjk4LjJsMC0yLjZDMCA5MS42IDU5LjYgMzIgMTMzLjEgMzIgMTc1LjggMzIgMjE2IDUyLjUgMjQxIDg3LjF6TTI4OCA0MDBhMTQ0IDE0NCAwIDEgMSAyODggMCAxNDQgMTQ0IDAgMSAxIC0yODggMHptMjI0IDBjMC04LjgtNy4yLTE2LTE2LTE2bC0xMjggMGMtOC44IDAtMTYgNy4yLTE2IDE2czcuMiAxNiAxNiAxNmwxMjggMGM4LjggMCAxNi03LjIgMTYtMTZ6Il19LHhTcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzdGFyLW9mLWxpZmUiLGljb246WzUxMiw1MTIsW10sImY2MjEiLCJNMjA4LjUgMzJjMC0xNy43IDE0LjMtMzIgMzItMzJsMzIgMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDE0MC45IDEyMi03MC40YzE1LjMtOC44IDM0LjktMy42IDQzLjcgMTEuN2wxNiAyNy43YzguOCAxNS4zIDMuNiAzNC45LTExLjcgNDMuN2wtMTIyIDcwLjQgMTIyIDcwLjRjMTUuMyA4LjggMjAuNiAyOC40IDExLjcgNDMuN2wtMTYgMjcuN2MtOC44IDE1LjMtMjguNCAyMC42LTQzLjcgMTEuN2wtMTIyLTcwLjQgMCAxNDAuOWMwIDE3LjctMTQuMyAzMi0zMiAzMmwtMzIgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC0xNDAuOS0xMjIgNzAuNGMtMTUuMyA4LjgtMzQuOSAzLjYtNDMuNy0xMS43bC0xNi0yNy43Yy04LjgtMTUuMy0zLjYtMzQuOSAxMS43LTQzLjdsMTIyLTcwLjQtMTIyLTcwLjRjLTE1LjMtOC44LTIwLjUtMjguNC0xMS43LTQzLjdsMTYtMjcuN2M4LjgtMTUuMyAyOC40LTIwLjUgNDMuNy0xMS43bDEyMiA3MC40IDAtMTQwLjl6Il19LFlEZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJidXNpbmVzcy10aW1lIixpY29uOls2NDAsNTEyLFsiYnJpZWZjYXNlLWNsb2NrIl0sImY2NGEiLCJNMjY0IDQ4bDExMiAwYzQuNCAwIDggMy42IDggOGwwIDQwLTEyOCAwIDAtNDBjMC00LjQgMy42LTggOC04em0tNTYgOGwwIDQwLTgwIDBjLTM1LjMgMC02NCAyOC43LTY0IDY0bDAgOTYgMzA1IDBjMzMuOC0yOS45IDc4LjMtNDggMTI3LTQ4IDI4LjYgMCA1NS42IDYuMiA4MCAxNy40bDAtNjUuNGMwLTM1LjMtMjguNy02NC02NC02NGwtODAgMCAwLTQwYzAtMzAuOS0yNS4xLTU2LTU2LTU2TDI2NCAwYy0zMC45IDAtNTYgMjUuMS01NiA1NnptODAgMjk2Yy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTE2LTE5MiAwIDAgMTEyYzAgMzUuMyAyOC43IDY0IDY0IDY0bDE5My40IDBjLTExLjItMjQuNC0xNy40LTUxLjQtMTcuNC04MCAwLTE2LjYgMi4xLTMyLjcgNi00OGwtMjIgMHptMzUyIDQ4YTE0NCAxNDQgMCAxIDAgLTI4OCAwIDE0NCAxNDQgMCAxIDAgMjg4IDB6TTQ5NiAzMjBjOC44IDAgMTYgNy4yIDE2IDE2bDAgNDggMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZzLTcuMiAxNi0xNiAxNmwtNDggMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtNjRjMC04LjggNy4yLTE2IDE2LTE2eiJdfSxiU3I9WURlLHZTcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmaXJlLWV4dGluZ3Vpc2hlciIsaWNvbjpbNTEyLDUxMixbMTI5NTE5XSwiZjEzNCIsIk01MTIgMzJjMC05LjYtNC4zLTE4LjctMTEuNy0yNC43UzQ4My4xLTEuMyA0NzMuNyAuNmwtMTYwIDMyQzMwMS41IDM1LjEgMjkyIDQ0LjMgMjg5IDU2bC02NSAwIDAtMjRjMC0xNy43LTE0LjMtMzItMzItMzJMMTYwIDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMybDAgMjguNGMtNTUuMyAxMi4zLTEwMS4zIDQ5LjUtMTI1LjUgOTkuMS01LjggMTEuOS0uOSAyNi4zIDExLjEgMzIuMXMyNi4zIC45IDMyLjEtMTEuMUM2MiAxNDYuOSA5MS44IDEyMS4xIDEyOCAxMTBsMCAyOC44Yy0zNy44IDE4LTY0IDU2LjUtNjQgMTAxLjJsMCAxMjggMjI0IDAgMC0xMjhjMC00NC43LTI2LjItODMuMi02NC0xMDEuMmwwLTM0LjggNjUgMGMzIDExLjcgMTIuNSAyMC45IDI0LjcgMjMuNGwxNjAgMzJjOS40IDEuOSAxOS4xLS42IDI2LjYtNi42UzUxMiAxMzcuNiA1MTIgMTI4bDAtOTZ6TTI4OCA0NDhsMC0zMi0yMjQgMCAwIDMyYzAgMzUuMyAyOC43IDY0IDY0IDY0bDk2IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjR6Il19LFpEZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJhcnJvdy1kb3duLWxvbmciLGljb246WzMyMCw1MTIsWyJsb25nLWFycm93LWRvd24iXSwiZjE3NSIsIk0xMzcuNCA1MzQuNmMxMi41IDEyLjUgMzIuOCAxMi41IDQ1LjMgMGwxMjgtMTI4YzEyLjUtMTIuNSAxMi41LTMyLjggMC00NS4zcy0zMi44LTEyLjUtNDUuMyAwTDE5MiA0MzQuNyAxOTIgMGMwLTE3LjctMTQuMy0zMi0zMi0zMlMxMjgtMTcuNyAxMjggMGwwIDQzNC43LTczLjQtNzMuNGMtMTIuNS0xMi41LTMyLjgtMTIuNS00NS4zIDBzLTEyLjUgMzIuOCAwIDQ1LjNsMTI4IDEyOHoiXX0seVNyPVpEZSx3U3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidXNlci1taW51cyIsaWNvbjpbNjQwLDUxMixbXSwiZjUwMyIsIk0yODUuNyAzMDRjOTguNSAwIDE3OC4zIDc5LjggMTc4LjMgMTc4LjMgMCAxNi40LTEzLjMgMjkuNy0yOS43IDI5LjdMNzcuNyA1MTJDNjEuMyA1MTIgNDggNDk4LjcgNDggNDgyLjMgNDggMzgzLjggMTI3LjggMzA0IDIyNi4zIDMwNGw1OS40IDB6TTI1NiAyNDhhMTIwIDEyMCAwIDEgMSAwLTI0MCAxMjAgMTIwIDAgMSAxIDAgMjQwem0zNDQtOTZjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTE0NCAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0bDE0NCAweiJdfSxNU3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibW9uZXktY2hlY2siLGljb246WzUxMiw1MTIsW10sImY1M2MiLCJNMCAxMjhDMCA5Mi43IDI4LjcgNjQgNjQgNjRsMzg0IDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAyNTZjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDQ4Yy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDEyOHpNOTYgMzEyYzAgMTMuMyAxMC43IDI0IDI0IDI0bDE0NCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC0xNDQgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjR6bTI0LTEzNmMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwyNzIgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtMjcyIDB6Il19LFhEZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJob3VzZS1sYXB0b3AiLGljb246WzY0MCw1MTIsWyJsYXB0b3AtaG91c2UiXSwiZTA2NiIsIk00NDggMjQwbDE5LjkgMGMxNS41IDAgMjguMS0xMi42IDI4LjEtMjguMSAwLTcuNi0zLjEtMTQuOS04LjYtMjAuMkwyODMuNS00LjlDMjc2LjEtMTIgMjY2LjMtMTYgMjU2LTE2cy0yMC4xIDQtMjcuNSAxMS4xTDI0LjYgMTkxLjdDMTkuMSAxOTcgMTYgMjA0LjMgMTYgMjExLjkgMTYgMjI3LjQgMjguNiAyNDAgNDQuMSAyNDBsMTkuOSAwIDAgMTQ0YzAgMzUuMyAyOC43IDY0IDY0IDY0bDg1LjcgMGM3LjQtNi42IDE2LjQtMTEuNCAyNi4zLTE0bDAtMTMwYzAtNS41IC43LTEwLjkgMi0xNmwtMTAgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRsMC00OGMwLTEzLjMgMTAuNy0yNCAyNC0yNGw0OCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0bDAgMjQgMTQ0IDB6TTM1MiAzNTJsMTYwIDAgMCAxMjgtMTYwIDAgMC0xMjh6bS02NC0zMmwwIDE2MC0zMiAwYy04LjggMC0xNiA3LjItMTYgMTYgMCAyNi41IDIxLjUgNDggNDggNDhsMjg4IDBjMjYuNSAwIDQ4LTIxLjUgNDgtNDggMC04LjgtNy4yLTE2LTE2LTE2bC0zMiAwIDAtMTYwYzAtMTcuNy0xNC4zLTMyLTMyLTMybC0yMjQgMGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJ6Il19LGtTcj1YRGUsU1NyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImRvd25sb2FkIixpY29uOls0NDgsNTEyLFtdLCJmMDE5IiwiTTI1NiAzMmMwLTE3LjctMTQuMy0zMi0zMi0zMnMtMzIgMTQuMy0zMiAzMmwwIDIxMC43LTQxLjQtNDEuNGMtMTIuNS0xMi41LTMyLjgtMTIuNS00NS4zIDBzLTEyLjUgMzIuOCAwIDQ1LjNsOTYgOTZjMTIuNSAxMi41IDMyLjggMTIuNSA0NS4zIDBsOTYtOTZjMTIuNS0xMi41IDEyLjUtMzIuOCAwLTQ1LjNzLTMyLjgtMTIuNS00NS4zIDBMMjU2IDI0Mi43IDI1NiAzMnpNNjQgMzIwYy0zNS4zIDAtNjQgMjguNy02NCA2NGwwIDMyYzAgMzUuMyAyOC43IDY0IDY0IDY0bDMyMCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMzJjMC0zNS4zLTI4LjctNjQtNjQtNjRsLTQ2LjkgMC01Ni42IDU2LjZjLTMxLjIgMzEuMi04MS45IDMxLjItMTEzLjEgMEwxMTAuOSAzMjAgNjQgMzIwem0zMDQgNTZhMjQgMjQgMCAxIDEgMCA0OCAyNCAyNCAwIDEgMSAwLTQ4eiJdfSx6U3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic2FnaXR0YXJpdXMiLGljb246WzQ0OCw1MTIsW10sImU4NGQiLCJNNDE2IDMyYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMTYwYzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtODIuOC0xNDYuOCAxNDYuOCA0MS40IDQxLjRjMTIuNSAxMi41IDEyLjUgMzIuOCAwIDQ1LjJzLTMyLjggMTIuNS00NS4zIDBMMTkyIDMzMy4zIDU0LjYgNDcwLjZjLTEyLjUgMTIuNS0zMi44IDEyLjUtNDUuMiAwcy0xMi41LTMyLjggMC00NS4yTDE0Ni44IDI4OCAxMDUuNCAyNDYuNmMtMTIuNS0xMi41LTEyLjUtMzIuOCAwLTQ1LjJzMzIuOC0xMi41IDQ1LjIgMEwxOTIgMjQyLjggMzM4LjggOTYgMjU2IDk2Yy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDE2MCAweiJdfSxDU3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY291Y2giLGljb246WzY0MCw1MTIsW10sImY0YjgiLCJNMTQ0IDI3MkMxNDQgMjI0LjcgMTA5LjggMTg1LjQgNjQuOCAxNzcuNSA3MiAxMTMuNiAxMjYuMiA2NCAxOTIgNjRsMjU2IDBjNjUuOCAwIDEyMCA0OS42IDEyNy4yIDExMy41LTQ1IDgtNzkuMiA0Ny4yLTc5LjIgOTQuNWwwIDMyLTM1MiAwIDAtMzJ6TTAgMzg0TDAgMjcyYzAtMjYuNSAyMS41LTQ4IDQ4LTQ4czQ4IDIxLjUgNDggNDhsMCA4MCA0NDggMCAwLTgwYzAtMjYuNSAyMS41LTQ4IDQ4LTQ4czQ4IDIxLjUgNDggNDhsMCAxMTJjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDQ4Yy0zNS4zIDAtNjQtMjguNy02NC02NHoiXX0sX1NyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InJvYWQtbG9jayIsaWNvbjpbNTc2LDUxMixbXSwiZTU2NyIsIk0yNTYgMzJsLTc2LjMgMGMtMjkuNCAwLTU1LjEgMjAuMS02Mi4xIDQ4LjZMMzMuNCA0MjAuNUMyNS45IDQ1MC43IDQ4LjggNDgwIDgwIDQ4MGwxNzUuOSAwIDAtNjRjMC0xNy43IDE0LjMtMzIgMzItMzIgNi4xIDAgMTEuOCAxLjcgMTYuNyA0LjcgMi44LTIzLjkgMTQuMy00NS4xIDMxLjQtNjAuM2wwLTI0LjRjMC03MC43IDU3LjMtMTI4IDEyOC0xMjggNi4yIDAgMTIuNCAuNCAxOC40IDEuM0w0NTguNSA4MC42QzQ1MS40IDUyLjEgNDI1LjggMzIgMzk2LjMgMzJsLTc2LjQgMCAwIDY0YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtNjR6bTY0IDE5MmwwIDY0YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtNjRjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMnptMTc2IDgwLjFsMCA0Ny45LTY0IDAgMC00Ny45YzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJ6TTM1MiA0MDBsMCA5NmMwIDI2LjUgMjEuNSA0OCA0OCA0OGwxMjggMGMyNi41IDAgNDgtMjEuNSA0OC00OGwwLTk2YzAtMjAuOS0xMy40LTM4LjctMzItNDUuM2wwLTUwLjZjMC00NC4yLTM1LjgtODAtODAtODBzLTgwIDM1LjgtODAgODBsMCA1MC42Yy0xOC42IDYuNi0zMiAyNC40LTMyIDQ1LjN6Il19LFFEZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzY2lzc29ycyIsaWNvbjpbNTEyLDUxMixbOTk4NCw5OTg2LDk5ODgsImN1dCJdLCJmMGM0IiwiTTE5MiAyNTZsLTM5LjUgMzkuNWMtMTIuNi00LjktMjYuMi03LjUtNDAuNS03LjUtNjEuOSAwLTExMiA1MC4xLTExMiAxMTJzNTAuMSAxMTIgMTEyIDExMiAxMTItNTAuMSAxMTItMTEyYzAtMTQuMy0yLjctMjcuOS03LjUtNDAuNUw0OTkuMiA3Ni44YzcuMS03LjEgNy4xLTE4LjUgMC0yNS42LTI4LjMtMjguMy03NC4xLTI4LjMtMTAyLjQgMEwyNTYgMTkyIDIxNi41IDE1Mi41YzQuOS0xMi42IDcuNS0yNi4yIDcuNS00MC41IDAtNjEuOS01MC4xLTExMi0xMTItMTEyUzAgNTAuMSAwIDExMiA1MC4xIDIyNCAxMTIgMjI0YzE0LjMgMCAyNy45LTIuNyA0MC41LTcuNUwxOTIgMjU2em05Ny45IDk3LjlMMzk2LjggNDYwLjhjMjguMyAyOC4zIDc0LjEgMjguMyAxMDIuNCAwIDcuMS03LjEgNy4xLTE4LjUgMC0yNS42bC0xNDUuMy0xNDUuMy02NCA2NHpNNjQgMTEyYTQ4IDQ4IDAgMSAxIDk2IDAgNDggNDggMCAxIDEgLTk2IDB6bTQ4IDI0MGE0OCA0OCAwIDEgMSAwIDk2IDQ4IDQ4IDAgMSAxIDAtOTZ6Il19LFRTcj1RRGUsaGxlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJ1ZyIsaWNvbjpbNTc2LDUxMixbXSwiZjE4OCIsIk0xOTIgOTZjMC01MyA0My05NiA5Ni05NnM5NiA0MyA5NiA5NmwwIDMuNmMwIDE1LjctMTIuNyAyOC40LTI4LjQgMjguNGwtMTM1LjEgMGMtMTUuNyAwLTI4LjQtMTIuNy0yOC40LTI4LjRsMC0zLjZ6bTM0NS42IDEyLjhjMTAuNiAxNC4xIDcuNyAzNC4yLTYuNCA0NC44bC05Ny44IDczLjNjNS4zIDguOSA5LjMgMTguNyAxMS44IDI5LjFsOTguOCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC05NiAwIDAgMzJjMCAyLjYtLjEgNS4zLS4yIDcuOWw4My40IDYyLjVjMTQuMSAxMC42IDE3IDMwLjcgNi40IDQ0LjhzLTMwLjcgMTctNDQuOCA2LjRsLTYzLjEtNDcuM2MtMjMuMiA0NC4yLTY2LjUgNzYuMi0xMTcuNyA4My45TDMxMiAyODBjMC0xMy4zLTEwLjctMjQtMjQtMjRzLTI0IDEwLjctMjQgMjRsMCAyMzAuMmMtNTEuMi03LjctOTQuNS0zOS43LTExNy43LTgzLjlMODMuMiA0NzMuNmMtMTQuMSAxMC42LTM0LjIgNy43LTQ0LjgtNi40cy03LjctMzQuMiA2LjQtNDQuOGw4My40LTYyLjVjLS4xLTIuNi0uMi01LjItLjItNy45bDAtMzItOTYgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMmw5OC44IDBjMi41LTEwLjQgNi41LTIwLjIgMTEuOC0yOS4xTDQ0LjggMTUzLjZjLTE0LjEtMTAuNi0xNy0zMC43LTYuNC00NC44czMwLjctMTcgNDQuOC02LjRMMTkyIDE4NGMxMi4zLTUuMSAyNS44LTggNDAtOGwxMTIgMGMxNC4yIDAgMjcuNyAyLjggNDAgOGwxMDguOC04MS42YzE0LjEtMTAuNiAzNC4yLTcuNyA0NC44IDYuNHoiXX0sS0RlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFycm93LXJpZ2h0LWZyb20tYnJhY2tldCIsaWNvbjpbNTEyLDUxMixbInNpZ24tb3V0Il0sImYwOGIiLCJNMTYwIDk2YzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMyTDk2IDMyQzQzIDMyIDAgNzUgMCAxMjhMMCAzODRjMCA1MyA0MyA5NiA5NiA5Nmw2NCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC02NCAwYy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTI1NmMwLTE3LjcgMTQuMy0zMiAzMi0zMmw2NCAwek01MDIuNiAyNzguNmMxMi41LTEyLjUgMTIuNS0zMi44IDAtNDUuM2wtMTI4LTEyOGMtMTIuNS0xMi41LTMyLjgtMTIuNS00NS4zIDBzLTEyLjUgMzIuOCAwIDQ1LjNMNDAyLjcgMjI0IDE5MiAyMjRjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsMjEwLjcgMC03My40IDczLjRjLTEyLjUgMTIuNS0xMi41IDMyLjggMCA0NS4zczMyLjggMTIuNSA0NS4zIDBsMTI4LTEyOHoiXX0sTFNyPUtEZSxEU3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaGFuZC1ob2xkaW5nLWhhbmQiLGljb246WzU3Niw1MTIsW10sImU0ZjciLCJNNDY2LjggMTg2LjVsNDIuNS00Mi41IDM0LjcgMGMxNy43IDAgMzItMTQuMyAzMi0zMmwwLTY0YzAtMTcuNy0xNC4zLTMyLTMyLTMyTDIyMy42IDE2Yy0yOSAwLTU3LjMgOS4zLTgwLjcgMjYuNUwxNi4zIDEzNS44Yy0xNy44IDEzLjEtMjEuNiAzOC4xLTguNSA1NS45czM4LjEgMjEuNiA1NS45IDguNUwxODMuNCAxMTIgMjk2IDExMmMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtNzIgMGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmwxNTIuMiAwYzMzLjkgMCA2Ni41LTEzLjUgOTAuNS0zNy41em0tMzU3LjUgMTM5TDY2LjcgMzY4IDMyIDM2OGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJsMCA2NGMwIDE3LjcgMTQuMyAzMiAzMiAzMmwzMjAuNSAwYzI5IDAgNTcuMy05LjMgODAuNy0yNi41bDEyNi42LTkzLjNjMTcuOC0xMy4xIDIxLjYtMzguMSA4LjUtNTUuOXMtMzguMS0yMS42LTU1LjktOC41TDM5Mi42IDQwMCAyODAgNDAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0bDcyIDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTE1Mi4yIDBjLTMzLjkgMC02Ni41IDEzLjUtOTAuNSAzNy41eiJdfSxBU3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic3Ryb29wd2FmZWwiLGljb246WzUxMiw1MTIsW10sImY1NTEiLCJNMCAyNTZhMjU2IDI1NiAwIDEgMSA1MTIgMCAyNTYgMjU2IDAgMSAxIC01MTIgMHpNMzEyLjYgNjMuN2MtNi4yLTYuMi0xNi40LTYuMi0yMi42IDBMMjU2IDk3LjYgMjIyLjEgNjMuN2MtNi4yLTYuMi0xNi40LTYuMi0yMi42IDBzLTYuMiAxNi40IDAgMjIuNmwzMy45IDMzLjktNDUuMyA0NS4zLTU2LjYtNTYuNmMtNi4yLTYuMi0xNi40LTYuMi0yMi42IDBzLTYuMiAxNi40IDAgMjIuNmw1Ni42IDU2LjYtNDUuMyA0NS4zLTMzLjktMzMuOWMtNi4yLTYuMi0xNi40LTYuMi0yMi42IDBzLTYuMiAxNi40IDAgMjIuNkw5Ny42IDI1NiA2My43IDI4OS45Yy02LjIgNi4yLTYuMiAxNi40IDAgMjIuNnMxNi40IDYuMiAyMi42IDBsMzMuOS0zMy45IDQ1LjMgNDUuMy01Ni42IDU2LjZjLTYuMiA2LjItNi4yIDE2LjQgMCAyMi42czE2LjQgNi4yIDIyLjYgMGw1Ni42LTU2LjYgNDUuMyA0NS4zLTMzLjkgMzMuOWMtNi4yIDYuMi02LjIgMTYuNCAwIDIyLjZzMTYuNCA2LjIgMjIuNiAwbDMzLjktMzMuOSAzMy45IDMzLjljNi4yIDYuMiAxNi40IDYuMiAyMi42IDBzNi4yLTE2LjQgMC0yMi42bC0zMy45LTMzLjkgNDUuMy00NS4zIDU2LjYgNTYuNmM2LjIgNi4yIDE2LjQgNi4yIDIyLjYgMHM2LjItMTYuNCAwLTIyLjZsLTU2LjYtNTYuNiA0NS4zLTQ1LjMgMzMuOSAzMy45YzYuMiA2LjIgMTYuNCA2LjIgMjIuNiAwczYuMi0xNi40IDAtMjIuNmwtMzMuOS0zMy45IDMzLjktMzMuOWM2LjItNi4yIDYuMi0xNi40IDAtMjIuNnMtMTYuNC02LjItMjIuNiAwbC0zMy45IDMzLjktNDUuMy00NS4zIDU2LjYtNTYuNmM2LjItNi4yIDYuMi0xNi40IDAtMjIuNnMtMTYuNC02LjItMjIuNiAwbC01Ni42IDU2LjYtNDUuMy00NS4zIDMzLjktMzMuOWM2LjItNi4yIDYuMi0xNi40IDAtMjIuNnpNMTQyLjkgMjU2bDQ1LjMtNDUuMyA0NS4zIDQ1LjMtNDUuMyA0NS4zLTQ1LjMtNDUuM3ptNjcuOSA2Ny45bDQ1LjMtNDUuMyA0NS4zIDQ1LjMtNDUuMyA0NS4zLTQ1LjMtNDUuM3pNMjc4LjYgMjU2bDQ1LjMtNDUuMyA0NS4zIDQ1LjMtNDUuMyA0NS4zLTQ1LjMtNDUuM3ptMjIuNi02Ny45bC00NS4zIDQ1LjMtNDUuMy00NS4zIDQ1LjMtNDUuMyA0NS4zIDQ1LjN6Il19LEVTcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjaGlsZCIsaWNvbjpbMzIwLDUxMixbXSwiZjFhZSIsIk05NiA2NEE2NCA2NCAwIDEgMSAyMjQgNjQgNjQgNjQgMCAxIDEgOTYgNjR6bTQ4IDMyMGwwIDk2YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMyTDgwIDI4Ny44IDU5LjEgMzIxYy05LjQgMTUtMjkuMiAxOS40LTQ0LjEgMTBTLTQuNSAzMDEuOSA0LjkgMjg3bDM5LjktNjMuM0M2OS43IDE4NCAxMTMuMiAxNjAgMTYwIDE2MHM5MC4zIDI0IDExNS4yIDYzLjZMMzE1LjEgMjg3YzkuNCAxNSA0LjkgMzQuNy0xMCA0NC4xcy0zNC43IDQuOS00NC4xLTEwTDI0MCAyODcuOCAyNDAgNDgwYzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtOTYtMzIgMHoiXX0sJFNyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImljZS1jcmVhbSIsaWNvbjpbMzg0LDUxMixbMTI3ODQ4XSwiZjgxMCIsIk0zMzUuMSAxNjBjLjYtNS4zIC45LTEwLjYgLjktMTYgMC03OS41LTY0LjUtMTQ0LTE0NC0xNDRTNDggNjQuNSA0OCAxNDRjMCA1LjQgLjMgMTAuNyAuOSAxNmwtLjkgMGMtMjYuNSAwLTQ4IDIxLjUtNDggNDhzMjEuNSA0OCA0OCA0OGwyODggMGMyNi41IDAgNDgtMjEuNSA0OC00OHMtMjEuNS00OC00OC00OGwtLjkgMHpNNjQgMzA0TDE2OS4yIDUyOS41YzQuMSA4LjggMTMgMTQuNSAyMi44IDE0LjVzMTguNi01LjcgMjIuOC0xNC41TDMyMCAzMDQgNjQgMzA0eiJdfSxKRGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY29tcHV0ZXItbW91c2UiLGljb246WzM4NCw1MTIsWzEyODQzMywibW91c2UiXSwiZjhjYyIsIk0wIDE5MmwxNjggMCAwLTE5Mi04IDBDNzEuNiAwIDAgNzEuNiAwIDE2MGwwIDMyem0wIDQ4TDAgMzUyYzAgODguNCA3MS42IDE2MCAxNjAgMTYwbDY0IDBjODguNCAwIDE2MC03MS42IDE2MC0xNjBsMC0xMTItMzg0IDB6bTM4NC00OGwwLTMyQzM4NCA3MS42IDMxMi40IDAgMjI0IDBsLTggMCAwIDE5MiAxNjggMHoiXX0sUFNyPUpEZSxJU3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmF1Y2V0IixpY29uOls1MTIsNTEyLFtdLCJlMDA1IiwiTTE5MiA2NGMwLTE3LjcgMTQuMy0zMiAzMi0zMnMzMiAxNC4zIDMyIDMybDk2IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTk2IDAgMCA2NCAxOC43IDBjOC41IDAgMTYuNiAzLjQgMjIuNiA5LjRsMjIuNiAyMi42IDMyIDBjODguNCAwIDE2MCA3MS42IDE2MCAxNjAgMCAxNy43LTE0LjMgMzItMzIgMzJsLTY0IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMycy0xNC4zLTMyLTMyLTMybC0zNi4xIDBjLTIwLjIgMjktNTMuOSA0OC05MS45IDQ4cy03MS43LTE5LTkxLjktNDhMMzIgMzUyYy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTY0YzAtMTcuNyAxNC4zLTMyIDMyLTMybDk2IDAgMjIuNi0yMi42YzYtNiAxNC4xLTkuNCAyMi42LTkuNGwxOC43IDAgMC02NC05NiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMlM3OC4zIDY0IDk2IDY0bDk2IDB6Il19LE5Tcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJhd2FyZCIsaWNvbjpbNDQ4LDUxMixbXSwiZjU1OSIsIk0yNDUuOS0yNS45Yy0xMy40LTguMi0zMC4zLTguMi00My43IDAtMjQuNCAxNC45LTM5LjUgMTguOS02OC4xIDE4LjMtMTUuNy0uNC0zMC4zIDguMS0zNy45IDIxLjktMTMuNyAyNS4xLTI0LjggMzYuMi00OS45IDQ5LjktMTMuOCA3LjUtMjIuMiAyMi4yLTIxLjkgMzcuOSAuNyAyOC42LTMuNCA0My43LTE4LjMgNjguMS04LjIgMTMuNC04LjIgMzAuMyAwIDQzLjcgMTQuOSAyNC40IDE4LjkgMzkuNSAxOC4zIDY4LjEtLjQgMTUuNyA4LjEgMzAuMyAyMS45IDM3LjkgMjIuMSAxMi4xIDMzLjMgMjIuMSA0NS4xIDQxLjVMNDIuNyA0NTguNWMtNS45IDExLjktMS4xIDI2LjMgMTAuNyAzMi4ybDg2IDQzYzExLjUgNS43IDI1LjUgMS40IDMxLjctOS44bDUyLjgtOTUuMSA1Mi44IDk1LjFjNi4yIDExLjIgMjAuMiAxNS42IDMxLjcgOS44bDg2LTQzYzExLjktNS45IDE2LjctMjAuMyAxMC43LTMyLjJsLTQ4LjYtOTcuMmMxMS43LTE5LjQgMjMtMjkuNCA0NS4xLTQxLjUgMTMuOC03LjUgMjIuMi0yMi4yIDIxLjktMzcuOS0uNy0yOC42IDMuNC00My43IDE4LjMtNjguMSA4LjItMTMuNCA4LjItMzAuMyAwLTQzLjctMTQuOS0yNC40LTE4LjktMzkuNS0xOC4zLTY4LjEgLjQtMTUuNy04LjEtMzAuMy0yMS45LTM3LjktMjUuMS0xMy43LTM2LjItMjQuOC00OS45LTQ5LjktNy41LTEzLjgtMjIuMi0yMi4yLTM3LjktMjEuOS0yOC42IC43LTQzLjctMy40LTY4LjEtMTguM3pNMjI0IDk2YTk2IDk2IDAgMSAxIDAgMTkyIDk2IDk2IDAgMSAxIDAtMTkyeiJdfSxGU3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGVyc29uLWRyb3duaW5nIixpY29uOls2NDAsNTEyLFtdLCJlNTQ1IiwiTTI2NCA4OGE1NiA1NiAwIDEgMSAxMTIgMCA1NiA1NiAwIDEgMSAtMTEyIDB6TTEzMy45IDY1LjZjMTYuOC01LjYgMzQuOSAzLjUgNDAuNSAyMC4ybDEwLjkgMzIuOGM5LjQgMjguMyAzMy4yIDQ5LjUgNjIuNSA1NS42IDUuNiAxLjIgMTEuMyAxLjggMTcuMSAxLjhsODggMGMxNy4yIDAgMzQuMy0yLjggNTAuNi04LjJsMTE0LjQtMzguMWMxNi44LTUuNiAzNC45IDMuNSA0MC41IDIwLjJzLTMuNSAzNC45LTIwLjIgNDAuNUw0MjMuNyAyMjguNWMtOC40IDIuOC0xNyA1LjEtMjUuNyA2LjlsLTI2LjUgODguM2MtNi4xIDMuNC0xMi4xIDcuMy0xNy45IDExLjctMjIuMSAxNi42LTI5LjEgMTYuNi01MS4yIDAtMjYuMi0xOS43LTU2LjktMzAuMi04Ny44LTMxLjNsMjAuMi02Ny4yYy01MS41LTEwLjctOTMuNS00OC4xLTExMC4yLTk4bC0xMC45LTMyLjhjLTUuNi0xNi44IDMuNS0zNC45IDIwLjItNDAuNXpNNDAzLjQgNDEyLjFDMzc5LjEgNDMwLjMgMzUxLjEgNDQ4IDMyMCA0NDhzLTU5LjEtMTcuNy04My40LTM1LjljLTIxLjMtMTYuMS00OS45LTE2LjEtNzEuMiAwLTIzLjggMTcuOS01NC4xIDM1LjUtODguMSAzNS4zLTIwLjQtLjEtNDAuNy02LjctNTkuOC0yMS4xLTEwLjYtOC0xMi43LTIzLTQuNy0zMy42czIzLTEyLjcgMzMuNi00LjdjMTEuMyA4LjUgMjEuNiAxMS40IDMxLjIgMTEuNSAxNy42IC4xIDM3LjMtOS40IDU4LjktMjUuNyAzOC40LTI5IDkwLjUtMjkgMTI5IDAgMjQgMTguMSA0MC43IDI2LjMgNTQuNSAyNi4zczMwLjUtOC4yIDU0LjUtMjYuM2MzOC40LTI5IDkwLjUtMjkgMTI5IDAgMTYuOSAxMi43IDMyLjkgMjEuNSA0Ny44IDI0LjYgMTMuNyAyLjggMjcuNCAuOSA0Mi4zLTEwLjMgMTAuNi04IDI1LjYtNS45IDMzLjYgNC43czUuOSAyNS42LTQuNyAzMy42Yy0yNi40IDE5LjktNTQuMiAyNC40LTgwLjcgMTkuMS0yNS4zLTUuMS00OC4xLTE4LjktNjcuMi0zMy4zLTIxLjMtMTYuMS00OS45LTE2LjEtNzEuMiAweiJdfSxPU3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2FtZXJhLXJvdGF0ZSIsaWNvbjpbNTEyLDUxMixbXSwiZTBkOCIsIk0xMzguNyA5NmwxMC40LTMxLjJDMTU1LjYgNDUuMiAxNzMuOSAzMiAxOTQuNiAzMmwxMjIuOCAwYzIwLjcgMCAzOSAxMy4yIDQ1LjUgMzIuOEwzNzMuMyA5NiA0NDggOTZjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAyNTZjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDE2MGMwLTM1LjMgMjguNy02NCA2NC02NGw3NC43IDB6TTk2IDMwNS45YzAgMy45IDEuNCA3LjcgNCAxMC42bDQ4IDU0YzYuNCA3LjIgMTcuNiA3LjIgMjMuOSAwbDQ4LTU0YzIuNi0yLjkgNC02LjcgNC0xMC42bDAtMS45YzAtOC44LTcuMi0xNi0xNi0xNmwtMjQgMGMwLTM5LjggMzIuMi03MiA3Mi03MiA0LjQgMCA4LjcgLjQgMTIuOSAxLjJsMzQuOS0zOS4zYy0xNC42LTYuNC0zMC44LTkuOS00Ny44LTkuOS02Ni4zIDAtMTIwIDUzLjctMTIwIDEyMGwtMjQgMGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMS45em0xOTYtNDYuNWMtMi42IDIuOS00IDYuNy00IDEwLjZsMCAxLjljMCA4LjggNy4yIDE2IDE2IDE2bDI0IDBjMCAzOS44LTMyLjIgNzItNzIgNzItNC40IDAtOC43LS40LTEyLjktMS4ybC0zNC45IDM5LjNjMTQuNyA2LjQgMzAuOCA5LjkgNDcuOCA5LjkgNjYuMyAwIDEyMC01My43IDEyMC0xMjBsMjQgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0xLjljMC0zLjktMS40LTcuNy00LTEwLjZsLTQ4LTU0Yy02LjQtNy4yLTE3LjYtNy4yLTIzLjkgMGwtNDggNTR6Il19LGVBZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmYWNlLWdyaW4taGVhcnRzIixpY29uOls1MTIsNTEyLFsxMjg1MjUsImdyaW4taGVhcnRzIl0sImY1ODQiLCJNMjU2IDUxMmMxNDEuNCAwIDI1Ni0xMTQuNiAyNTYtMjU2IDAtMjMuMy0zLjEtNDUuOS04LjktNjcuMyA1LjUtMTMuNSA4LjktMjguNCA4LjktNDQuNyAwLTUzLTQzLTk2LTk2LTk2bC0yLjkgMGMtMi41IDAtNSAuMS03LjQgLjMtNDIuMS0zMC40LTkzLjgtNDguMy0xNDkuNy00OC4zUzE0OC40IDE3LjkgMTA2LjMgNDguM2MtMi41LS4yLTQuOS0uMy03LjQtLjNMOTYgNDhjLTUzIDAtOTYgNDMtOTYgOTYgMCAxNi4zIDMuNSAzMS4yIDguOSA0NC43LTUuOCAyMS40LTguOSA0NC04LjkgNjcuMyAwIDE0MS40IDExNC42IDI1NiAyNTYgMjU2ek0zODYuNyAzMjQuOWMxMS45LTMuNyAyMy45IDYuMyAxOS42IDE4LjEtMjIuNCA2MS4zLTgxLjMgMTA1LjEtMTUwLjMgMTA1LjFTMTI4LjEgNDA0LjIgMTA1LjcgMzQyLjljLTQuMy0xMS44IDcuNy0yMS44IDE5LjYtMTguMSAzOS4yIDEyLjIgODMuNyAxOS4xIDEzMC43IDE5LjFzOTEuNS02LjkgMTMwLjctMTkuMXpNMzIyLjkgOTZjMTMuNSAwIDI2LjUgNS40IDM2IDE0LjlsOS4xIDkuMSA5LjEtOS4xYzkuNS05LjUgMjIuNS0xNC45IDM2LTE0LjlsMi45IDBjMjYuNSAwIDQ4IDIxLjUgNDggNDggMCA1My40LTY2LjkgOTUuNy04OSAxMDguMi00LjQgMi41LTkuNiAyLjUtMTQgMC0yMi4xLTEyLjUtODktNTQuOC04OS0xMDguMiAwLTI2LjUgMjEuNS00OCA0OC00OGwyLjkgMHptLTE4OCAxNC45bDkuMSA5LjEgOS4xLTkuMWM5LjUtOS41IDIyLjUtMTQuOSAzNi0xNC45bDIuOSAwYzI2LjUgMCA0OCAyMS41IDQ4IDQ4IDAgNTMuNC02Ni45IDk1LjctODkgMTA4LjItNC40IDIuNS05LjYgMi41LTE0IDAtMjIuMS0xMi41LTg5LTU0LjgtODktMTA4LjIgMC0yNi41IDIxLjUtNDggNDgtNDhsMi45IDBjMTMuNSAwIDI2LjUgNS40IDM2IDE0Ljl6Il19LFJTcj1lQWUsQlNyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZpbGUtZnJhZ21lbnQiLGljb246WzM4NCw1MTIsW10sImU2OTciLCJNNjQgMEMyOC43IDAgMCAyOC43IDAgNjRsMCAyNDAgMTI4IDBjNDQuMiAwIDgwIDM1LjggODAgODBsMCAxMjggMTEyIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0yNzcuNWMwLTE3LTYuNy0zMy4zLTE4LjctNDUuM0wyNTguNyAxOC43QzI0Ni43IDYuNyAyMzAuNSAwIDIxMy41IDBMNjQgMHpNMzI1LjUgMTc2TDIzMiAxNzZjLTEzLjMgMC0yNC0xMC43LTI0LTI0TDIwOCA1OC41IDMyNS41IDE3NnpNMzIgMzUyYy0xNy43IDAtMzIgMTQuMy0zMiAzMmwwIDk2YzAgMTcuNyAxNC4zIDMyIDMyIDMybDk2IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJsMC05NmMwLTE3LjctMTQuMy0zMi0zMi0zMmwtOTYgMHoiXX0sSFNyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBlcnNvbi1taWxpdGFyeS1yaWZsZSIsaWNvbjpbNDQ4LDUxMixbXSwiZTU0YiIsIk0xMjggMzljMC0xMyAxMC0yMy44IDIyLjktMjQuOUwzMDIuNyAxLjRDMzEyIC43IDMyMCA4IDMyMCAxNy40TDMyMCA0OGMwIDguOC03LjIgMTYtMTYgMTZMMTUzIDY0Yy0xMy44IDAtMjUtMTEuMi0yNS0yNXptMTcuNiA1N2wxNTYuOCAwYzEgNS4yIDEuNiAxMC41IDEuNiAxNiAwIDQ0LjItMzUuOCA4MC04MCA4MHMtODAtMzUuOC04MC04MGMwLTUuNSAuNi0xMC44IDEuNi0xNnptMjI4IDM2NC4zTDMyMCAzNjkuNyAzMjAgNDgwYzAgMS4zLS4xIDIuNS0uMiAzLjhMMTQ1LjUgMjM0LjljMTYuNi03LjEgMzQuNi0xMC45IDUzLjMtMTAuOWw1MC40IDBjMTUuOSAwIDMxLjMgMi44IDQ1LjggNy45TDM4OS45IDY3LjdjLTcuNy00LjQtMTAuMy0xNC4yLTUuOS0yMS45czE0LjItMTAuMyAyMS45LTUuOWwyNy43IDE2YzcuNyA0LjQgMTAuMyAxNC4yIDUuOSAyMS45bC01NS41IDk2LjEgMS42IC45YzE1LjMgOC44IDIwLjYgMjguNCAxMS43IDQzLjdMMzYwLjcgMjgyYzIgMi44IDMuOSA1LjggNS43IDguOGw3Ni4xIDEyOC44YzExLjIgMTkgNC45IDQzLjUtMTQuMSA1NC44cy00My41IDQuOS01NC44LTE0LjF6TTI4OCA1MTJsLTEyOCAwYy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTExMC4zLTUzLjYgOTAuNmMtMTEuMiAxOS0zNS44IDI1LjMtNTQuOCAxNC4xUy01LjcgNDM4LjcgNS42IDQxOS43TDgxLjcgMjkwLjhjOS40LTE1LjggMjEuNy0yOS4zIDM2LTQwTDI5OS4xIDUxMGMtMy41IDEuMy03LjIgMi0xMS4xIDJ6TTI2NCAzMjBhMjQgMjQgMCAxIDAgMC00OCAyNCAyNCAwIDEgMCAwIDQ4eiJdfSxxU3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidG9nZ2xlLW9uIixpY29uOls1NzYsNTEyLFtdLCJmMjA1IiwiTTE5MiA2NEM4NiA2NCAwIDE1MCAwIDI1NlM4NiA0NDggMTkyIDQ0OGwxOTIgMGMxMDYgMCAxOTItODYgMTkyLTE5MlM0OTAgNjQgMzg0IDY0TDE5MiA2NHptMTkyIDk2YTk2IDk2IDAgMSAxIDAgMTkyIDk2IDk2IDAgMSAxIDAtMTkyeiJdfSxqU3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibHVuZ3MtdmlydXMiLGljb246WzU3Niw1MTIsW10sImUwNjciLCJNMjg4IDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMybDAgMTUxLjNjOS42LTQuOCAyMC41LTcuNSAzMi03LjVzMjIuNCAyLjcgMzIgNy41TDMyMCAzMmMwLTE3LjctMTQuMy0zMi0zMi0zMnpNNDUwLjEgNDUxYzggMTguMyA4LjEgMzkuMiAuMiA1Ny41IDEwLjIgMi4zIDIwLjYgMy41IDMxLjIgMy41IDUyLjIgMCA5NC41LTQyLjMgOTQuNS05NC41bDAtNi4yYzAtMTExLjEtMzYuNy0yMTktMTA0LjQtMzA3TDQyOC45IDQ4LjdjLTguMS0xMC42LTIwLjctMTYuNy0zNC0xNi43LTIzLjcgMC00Mi45IDE5LjItNDIuOSA0Mi45bDAgMTM5LjljMS4yIDIuMiAyLjIgNC42IDMuMSA2LjkgMjYuNC0xMS42IDU4LjMtNi42IDc5LjkgMTVzMjYuNiA1My42IDE1IDc5LjlDNDc3IDMyNy4yIDQ5NiAzNTMuMyA0OTYgMzgzLjhzLTE5IDU2LjctNDUuOSA2Ny4xek0yMjAuOSAyMjEuOGMuOS0yLjQgMi00LjcgMy4xLTYuOWwwLTEzOC41YzAtMjQuNS0xOS45LTQ0LjQtNDQuNC00NC40LTEyLjUgMC0yNC40IDUuMy0zMi44IDE0LjVsLTI2LjQgMjlDNDIuOSAxNjAuOCAwIDI3MS44IDAgMzg3bDAgMzAuNWMwIDUyLjIgNDIuMyA5NC41IDk0LjUgOTQuNSAxMC41IDAgMjEtMS4yIDMxLjItMy41LTcuOS0xOC4zLTcuOC0zOS4zIC4yLTU3LjUtMjYuOS0xMC40LTQ1LjktMzYuNi00NS45LTY3LjFzMTktNTYuNyA0NS45LTY3LjFjLTExLjYtMjYuNC02LjYtNTguMyAxNS03OS45czUzLjYtMjYuNiA3OS45LTE1ek0xNTIgNDA4YzI4LjggMCA0My4yIDM0LjggMjIuOSA1NS4yLTkuNCA5LjQtOS40IDI0LjYgMCAzMy45czI0LjYgOS40IDMzLjkgMGMyMC40LTIwLjQgNTUuMi01LjkgNTUuMiAyMi45IDAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRjMC0yOC44IDM0LjgtNDMuMiA1NS4yLTIyLjkgOS40IDkuNCAyNC42IDkuNCAzMy45IDBzOS40LTI0LjYgMC0zMy45Yy0yMC40LTIwLjQtNS45LTU1LjIgMjIuOS01NS4yIDEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0Yy0yOC44IDAtNDMuMi0zNC44LTIyLjktNTUuMiA5LjQtOS40IDkuNC0yNC42IDAtMzMuOXMtMjQuNi05LjQtMzMuOSAwYy0yMC40IDIwLjQtNTUuMiA1LjktNTUuMi0yMi45IDAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0YzAgMjguOC0zNC44IDQzLjItNTUuMiAyMi45LTkuNC05LjQtMjQuNi05LjQtMzMuOSAwcy05LjQgMjQuNiAwIDMzLjljMjAuNCAyMC40IDUuOSA1NS4yLTIyLjkgNTUuMi0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0em0xMDQtODBhMjQgMjQgMCAxIDEgMCA0OCAyNCAyNCAwIDEgMSAwLTQ4em00MCA4OGEyNCAyNCAwIDEgMSA0OCAwIDI0IDI0IDAgMSAxIC00OCAweiJdfSxPMmU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidGFibGUtdGVubmlzLXBhZGRsZS1iYWxsIixpY29uOls1MTIsNTEyLFsxMjc5NTUsInBpbmctcG9uZy1wYWRkbGUtYmFsbCIsInRhYmxlLXRlbm5pcyJdLCJmNDVkIiwiTTk3IDEyN2w2Ny40LTY3LjRjMzguMi0zOC4yIDkwLTU5LjYgMTQ0LTU5LjYgMTEyLjUgMCAyMDMuNyA5MS4yIDIwMy43IDIwMy42IDAgNDYuNC0xNS44IDkxLjEtNDQuNSAxMjctMjMuNi0xNi44LTUyLjQtMjYuNy04My41LTI2LjctMzEuMSAwLTU5LjkgOS45LTgzLjQgMjYuNkw5NyAxMjd6TTI0MCA0NDhjMCA5LjcgMSAxOS4xIDIuOCAyOC4yLTE5LjgtNS4yLTM4LTE1LjUtNTIuNy0zMC4yLTEyLjItMTIuMi0zMS45LTEyLjItNDQuMSAwTDk2LjYgNDk1LjRjLTEwLjYgMTAuNi0yNSAxNi42LTQwIDE2LjYtMzEuMiAwLTU2LjYtMjUuMy01Ni42LTU2LjYgMC0xNSA2LTI5LjQgMTYuNi00MGw0OS40LTQ5LjRjMTIuMi0xMi4yIDEyLjItMzEuOSAwLTQ0LjEtMjEuNy0yMS43LTMzLjktNTEuMi0zMy45LTgxLjkgMC0yOS40IDExLjEtNTcuNiAzMS4xLTc5TDI2Ni42IDM2NC42QzI0OS45IDM4OC4xIDI0MCA0MTYuOSAyNDAgNDQ4em0xNDQtOTZhOTYgOTYgMCAxIDEgMCAxOTIgOTYgOTYgMCAxIDEgMC0xOTJ6Il19LFZTcj1PMmUsVVNyPU8yZSxXU3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYm94ZXMtcGFja2luZyIsaWNvbjpbNTc2LDUxMixbXSwiZTRjNyIsIk0yMDggMGw4MCAwIDAgNTZjMCAxMy4zIDEwLjcgMjQgMjQgMjRsODAgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNGwwLTU2IDgwIDBjMjYuNSAwIDQ4IDIxLjUgNDggNDhsMCA0MTZjMCAyNi41LTIxLjUgNDgtNDggNDhsLTEwOC44IDBjOC4yLTE0LjEgMTIuOC0zMC41IDEyLjgtNDhsMC0xNjBjMTAtMTMuNCAxNi0zMCAxNi00OGwwLTMyYzAtNDQuMi0zNS44LTgwLTgwLTgwbC0xNzYgMCAwLTk2YzAtMjYuNSAyMS41LTQ4IDQ4LTQ4ek0zMiAzMzZsMzIwIDAgMCAxMjhjMCAyNi41LTIxLjUgNDgtNDggNDhMODAgNTEyYy0yNi41IDAtNDgtMjEuNS00OC00OGwwLTEyOHpNNDggMTkybDI4OCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMzJjMCAxNy43LTE0LjMgMzItMzIgMzJMNDggMjg4Yy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTMyYzAtMTcuNyAxNC4zLTMyIDMyLTMyeiJdfSxHU3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGVyc29uLWNoYWxrYm9hcmQiLGljb246WzY0MCw1MTIsW10sImU1M2QiLCJNMTkyIDgwYTU2IDU2IDAgMSAwIDAtMTEyIDU2IDU2IDAgMSAwIDAgMTEyek0xNzYgNTEybDAtMTYwYzAtOC44IDcuMi0xNiAxNi0xNnMxNiA3LjIgMTYgMTZsMCAxNjBjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTMzNiAxMjggMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtMTYgMCAwLTQ4IDE5MiAwIDAgMTkyLTE5MiAwIDAtMzItNjQgMCAwIDQ4YzAgMjYuNSAyMS41IDQ4IDQ4IDQ4bDIyNCAwYzI2LjUgMCA0OC0yMS41IDQ4LTQ4bDAtMjI0YzAtMjYuNS0yMS41LTQ4LTQ4LTQ4TDM2OCAwYy0yNi41IDAtNDggMjEuNS00OCA0OGwwIDY0LTEyMi43IDBjLTQ1LjYgMC04OC41IDIxLjYtMTE1LjYgNTguMkwxNC4zIDI2MC45Yy0xMC41IDE0LjItNy42IDM0LjIgNi42IDQ0LjhzMzQuMiA3LjYgNDQuOC02LjZMMTEyIDIzNi43IDExMiA1MTJjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMnoiXX0sWVNyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImRpY2UtdHdvIixpY29uOls0NDgsNTEyLFs5ODU3XSwiZjUyOCIsIk0wIDk2QzAgNjAuNyAyOC43IDMyIDY0IDMybDMyMCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMzIwYzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDQ4MGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCA5NnpNMzUyIDM1MmEzMiAzMiAwIDEgMCAtNjQgMCAzMiAzMiAwIDEgMCA2NCAwek0xMjggMTkyYTMyIDMyIDAgMSAwIDAtNjQgMzIgMzIgMCAxIDAgMCA2NHoiXX0sdEFlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFycm93LXJpZ2h0LWFycm93LWxlZnQiLGljb246WzUxMiw1MTIsWzg2NDQsImV4Y2hhbmdlIl0sImYwZWMiLCJNNTAyLjYgMTUwLjZsLTk2IDk2Yy0xMi41IDEyLjUtMzIuOCAxMi41LTQ1LjMgMHMtMTIuNS0zMi44IDAtNDUuM0w0MDIuNyAxNjAgMzIgMTYwYy0xNy43IDAtMzItMTQuMy0zMi0zMlMxNC4zIDk2IDMyIDk2bDM3MC43IDAtNDEuNC00MS40Yy0xMi41LTEyLjUtMTIuNS0zMi44IDAtNDUuM3MzMi44LTEyLjUgNDUuMyAwbDk2IDk2YzEyLjUgMTIuNSAxMi41IDMyLjggMCA0NS4zem0tMzk3LjMgMzUybC05Ni05NmMtMTIuNS0xMi41LTEyLjUtMzIuOCAwLTQ1LjNsOTYtOTZjMTIuNS0xMi41IDMyLjgtMTIuNSA0NS4zIDBzMTIuNSAzMi44IDAgNDUuM0wxMDkuMyAzNTIgNDgwIDM1MmMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtMzcwLjcgMCA0MS40IDQxLjRjMTIuNSAxMi41IDEyLjUgMzIuOCAwIDQ1LjNzLTMyLjggMTIuNS00NS4zIDB6Il19LFpTcj10QWUsckFlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZvb3RiYWxsIixpY29uOls1MTIsNTEyLFsxMjc5NDQsImZvb3RiYWxsLWJhbGwiXSwiZjQ0ZSIsIk0yNjEuMSAyMi42Yy04OSAxOC0xNTAuNSA2My40LTE5MCAxMjMuOS0yMy4zIDM1LjYtMzguMSA3NS4zLTQ2LjcgMTE1LjVMMjUxLjkgNDg5LjRjODktMTggMTUwLjUtNjMuNCAxOTAuMS0xMjMuOSAyMy4zLTM1LjYgMzguMS03NS4zIDQ2LjctMTE1LjVMMjYxLjEgMjIuNnptMjM2IDE2OC4xYzMuMi00Mi4zIC43LTgzLjMtNC44LTExOC43LTQuNC0yNy44LTI2LjgtNDgtNTMuMS01MS42LTQzLTUuOS04Mi4yLTcuNS0xMTcuOC01LjRMNDk3LjEgMTkwLjZ6TTE5MS43IDQ5Ny4xTDE1LjkgMzIxLjRjLTMuMiA0Mi4zLS43IDgzLjMgNC44IDExOC43IDQuNCAyNy44IDI2LjggNDggNTMuMSA1MS42IDQzIDUuOSA4Mi4yIDcuNSAxMTcuOCA1LjR6TTI3MS41IDE0M2M5LjQtOS40IDI0LjYtOS40IDMzLjkgMGw2NCA2NGM5LjQgOS40IDkuNCAyNC42IDAgMzMuOXMtMjQuNiA5LjQtMzMuOSAwbC02NC02NGMtOS40LTkuNC05LjQtMjQuNiAwLTMzLjl6bS02NCA2NGM5LjQtOS40IDI0LjYtOS40IDMzLjkgMGw2NCA2NGM5LjQgOS40IDkuNCAyNC42IDAgMzMuOXMtMjQuNiA5LjQtMzMuOSAwbC02NC02NGMtOS40LTkuNC05LjQtMjQuNiAwLTMzLjl6bS02NCA2NGM5LjQtOS40IDI0LjYtOS40IDMzLjkgMGw2NCA2NGM5LjQgOS40IDkuNCAyNC42IDAgMzMuOXMtMjQuNiA5LjQtMzMuOSAwbC02NC02NGMtOS40LTkuNC05LjQtMjQuNiAwLTMzLjl6Il19LFhTcj1yQWUsUVNyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRydWNrLW1vbnN0ZXIiLGljb246WzU3Niw1MTIsW10sImY2M2IiLCJNMzM2IDk2bDQ4IDY0LTEyOCAwIDAtNjQgODAgMHptMTI4IDY0TDM4Ny4yIDU3LjZDMzc1LjEgNDEuNSAzNTYuMSAzMiAzMzYgMzJMMjI0IDMyYy0xNy43IDAtMzIgMTQuMy0zMiAzMmwwIDk2LTE0NCAwYy0yNi41IDAtNDggMjEuNS00OCA0OGwwIDY0YzAgMTguMSAxMC4xIDMzLjkgMjQuOSA0Mi4xLS41IDUuNyAxLjEgMTEuNiA0LjcgMTYuNC0zLjcgNi45LTYuOCAxNC4xLTkgMjEuOC0xMS42IDEuNy0yMC42IDExLjctMjAuNiAyMy44bDAgMTZjMCAxMi4xIDguOSAyMi4xIDIwLjYgMjMuOCAyLjIgNy42IDUuMyAxNC45IDkgMjEuOC03IDkuNC02LjMgMjIuOCAyLjMgMzEuM2wxMS4zIDExLjNjOC42IDguNiAyMS45IDkuMyAzMS4zIDIuMiA2LjggMy43IDE0LjEgNi44IDIxLjcgOSAxLjcgMTEuNiAxMS43IDIwLjYgMjMuOCAyMC42bDE2IDBjMTIuMSAwIDIyLjEtOC45IDIzLjgtMjAuNiA3LjYtMi4yIDE0LjktNS4zIDIxLjctOSA5LjQgNyAyMi44IDYuMyAzMS4zLTIuMmwxMS4zLTExLjNjOC42LTguNiA5LjMtMjEuOSAyLjMtMzEuMyAzLjctNi44IDYuOC0xNC4xIDktMjEuNyAxMS42LTEuNyAyMC42LTExLjcgMjAuNi0yMy44bDAtMTZjMC0xMi4xLTguOS0yMi4xLTIwLjYtMjMuOC0yLjItNy42LTUuMy0xNC45LTktMjEuNyAyLjQtMy4yIDMuOS02LjggNC41LTEwLjVsMTE0LjIgMGMuNiAzLjcgMi4xIDcuMyA0LjUgMTAuNS0zLjcgNi45LTYuOCAxNC4xLTkgMjEuOC0xMS42IDEuNy0yMC42IDExLjctMjAuNiAyMy44bDAgMTZjMCAxMi4xIDguOSAyMi4xIDIwLjYgMjMuOCAyLjIgNy42IDUuMyAxNC45IDkgMjEuOC03IDkuNC02LjMgMjIuOCAyLjIgMzEuM2wxMS4zIDExLjNjOC41IDguNiAyMS45IDkuMyAzMS4zIDIuMiA2LjggMy43IDE0LjEgNi44IDIxLjcgOSAxLjcgMTEuNiAxMS43IDIwLjYgMjMuOCAyMC42bDE2IDBjMTIuMSAwIDIyLjEtOC45IDIzLjgtMjAuNiA3LjYtMi4yIDE0LjktNS4zIDIxLjgtOSA5LjQgNyAyMi44IDYuMyAzMS4zLTIuMmwxMS4zLTExLjNjOC42LTguNiA5LjMtMjEuOSAyLjItMzEuMyAzLjctNi44IDYuOC0xNC4xIDktMjEuNyAxMS42LTEuNyAyMC42LTExLjcgMjAuNi0yMy44bDAtMTZjMC0xMi4xLTguOS0yMi4xLTIwLjYtMjMuOC0yLjItNy42LTUuMy0xNC45LTktMjEuNyAzLjYtNC44IDUuMi0xMC43IDQuNy0xNi40IDE0LjgtOC4yIDI0LjktMjMuOSAyNC45LTQyLjFsMC02NGMwLTI2LjUtMjEuNS00OC00OC00OGwtNjQgMHpNMTI4IDMzNmE0OCA0OCAwIDEgMSAwIDk2IDQ4IDQ4IDAgMSAxIDAtOTZ6bTI3MiA0OGE0OCA0OCAwIDEgMSA5NiAwIDQ4IDQ4IDAgMSAxIC05NiAweiJdfSxLU3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYXN0ZXJpc2siLGljb246WzQ0OCw1MTIsWzEwMDMzLDYxNTQ1XSwiMmEiLCJNMjI0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCAxNjguNiAxNDQtODMuMWMxNS4zLTguOCAzNC45LTMuNiA0My43IDExLjdzMy42IDM0LjktMTEuNyA0My43TDI4OCAyNTYgNDMyIDMzOS4xYzE1LjMgOC44IDIwLjYgMjguNCAxMS43IDQzLjdzLTI4LjQgMjAuNi00My43IDExLjdMMjU2IDMxMS40IDI1NiA0ODBjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC0xNjguNi0xNDQgODMuMWMtMTUuMyA4LjgtMzQuOSAzLjYtNDMuNy0xMS43Uy43IDM0OCAxNiAzMzkuMUwxNjAgMjU2IDE2IDE3Mi45Qy43IDE2NC00LjUgMTQ0LjUgNC4zIDEyOS4xUzMyLjcgMTA4LjYgNDggMTE3LjRMMTkyIDIwMC42IDE5MiAzMmMwLTE3LjcgMTQuMy0zMiAzMi0zMnoiXX0sUjJlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJhdHRlcnktZnVsbCIsaWNvbjpbNjQwLDUxMixbMTI4MjY3LCJiYXR0ZXJ5IiwiYmF0dGVyeS01Il0sImYyNDAiLCJNNTI4IDEyOGM4LjggMCAxNiA3LjIgMTYgMTZsMCAyMjRjMCA4LjgtNy4yIDE2LTE2IDE2bC00MTYgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMjI0YzAtOC44IDcuMi0xNiAxNi0xNmw0MTYgMHpNMTEyIDY0Yy00NC4yIDAtODAgMzUuOC04MCA4MGwwIDIyNGMwIDQ0LjIgMzUuOCA4MCA4MCA4MGw0MTYgMGM0NC4yIDAgODAtMzUuOCA4MC04MGwwLTQ4YzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtNjRjMC0xNy43LTE0LjMtMzItMzItMzJsMC00OGMwLTQ0LjItMzUuOC04MC04MC04MEwxMTIgNjR6bTU2IDExMmMtMTMuMyAwLTI0IDEwLjctMjQgMjRsMCAxMTJjMCAxMy4zIDEwLjcgMjQgMjQgMjRsMzA0IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRsMC0xMTJjMC0xMy4zLTEwLjctMjQtMjQtMjRsLTMwNCAweiJdfSxKU3I9UjJlLGV6cj1SMmUsdHpyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNoaWxkLWRyZXNzIixpY29uOlszMjAsNTEyLFtdLCJlNTljIiwiTTIyNCA2NEE2NCA2NCAwIDEgMCA5NiA2NCA2NCA2NCAwIDEgMCAyMjQgNjR6TTg4IDQwMGwwIDgwYzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC04MCAxNiAwIDAgODBjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTgwIDE3LjggMGMxMC45IDAgMTguNi0xMC43IDE1LjItMjEuMWwtMzEuMS05My40IDI4LjcgMzcuOGMxMC43IDE0LjEgMzAuOCAxNi44IDQ0LjggNi4yczE2LjgtMzAuNyA2LjItNDQuOEwyNTQuNiAyMDdjLTIyLjQtMjkuNi01Ny41LTQ3LTk0LjYtNDdzLTcyLjIgMTcuNC05NC42IDQ3TDYuNSAyODQuN2MtMTAuNyAxNC4xLTcuOSAzNC4yIDYuMiA0NC44czM0LjIgNy45IDQ0LjgtNi4yTDg2LjIgMjg1LjUgNTUgMzc4LjlDNTEuNiAzODkuMyA1OS4zIDQwMCA3MC4yIDQwMEw4OCA0MDB6Il19LGFBZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmYWNlLWtpc3MtYmVhbSIsaWNvbjpbNTEyLDUxMixbMTI4NTM3LCJraXNzLWJlYW0iXSwiZjU5NyIsIk0yNTYgNTEyYTI1NiAyNTYgMCAxIDAgMC01MTIgMjU2IDI1NiAwIDEgMCAwIDUxMnpNMjQwIDI4OGwzMiAwYzI2LjUgMCA0OCAyMS41IDQ4IDQ4IDAgMTIuMy00LjYgMjMuNS0xMi4yIDMyIDcuNiA4LjUgMTIuMiAxOS43IDEyLjIgMzIgMCAyNi41LTIxLjUgNDgtNDggNDhsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNnM3LjItMTYgMTYtMTZsMTYgMGM4LjggMCAxNi03LjIgMTYtMTZzLTcuMi0xNi0xNi0xNmwtMTYgMGMtOC44IDAtMTYtNy4yLTE2LTE2czcuMi0xNiAxNi0xNmwxNiAwYzguOCAwIDE2LTcuMiAxNi0xNnMtNy4yLTE2LTE2LTE2bC0xNiAwYy04LjggMC0xNi03LjItMTYtMTZzNy4yLTE2IDE2LTE2ek0xNzYgMTgwYy0xNS41IDAtMjggMTIuNS0yOCAyOGwwIDhjMCAxMS05IDIwLTIwIDIwcy0yMC05LTIwLTIwbDAtOGMwLTM3LjYgMzAuNC02OCA2OC02OHM2OCAzMC40IDY4IDY4bDAgOGMwIDExLTkgMjAtMjAgMjBzLTIwLTktMjAtMjBsMC04YzAtMTUuNS0xMi41LTI4LTI4LTI4em0xMzIgMjhsMCA4YzAgMTEtOSAyMC0yMCAyMHMtMjAtOS0yMC0yMGwwLThjMC0zNy42IDMwLjQtNjggNjgtNjhzNjggMzAuNCA2OCA2OGwwIDhjMCAxMS05IDIwLTIwIDIwcy0yMC05LTIwLTIwbDAtOGMwLTE1LjUtMTIuNS0yOC0yOC0yOHMtMjggMTIuNS0yOCAyOHoiXX0scnpyPWFBZSxpQWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidHJhc2gtY2FuLWFycm93LXVwIixpY29uOls0NDgsNTEyLFsidHJhc2gtcmVzdG9yZS1hbHQiXSwiZjgyYSIsIk0xNjcuMS0xNmwxMTMuOSAwYzEzLjggMCAyNiA4LjggMzAuNCAyMS45TDMyMCAzMiA0MTYgMzJjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJMMzIgOTZDMTQuMyA5NiAwIDgxLjcgMCA2NFMxNC4zIDMyIDMyIDMybDk2IDAgOC43LTI2LjFDMTQxLjEtNy4yIDE1My4zLTE2IDE2Ny4xLTE2ek0zMiAxNDRsMzg0IDAgMCAzMDRjMCAzNS4zLTI4LjcgNjQtNjQgNjRMOTYgNTEyYy0zNS4zIDAtNjQtMjguNy02NC02NGwwLTMwNHptMjA5IDc5Yy05LjQtOS40LTI0LjYtOS40LTMzLjkgMGwtNzIgNzJjLTkuNCA5LjQtOS40IDI0LjYgMCAzMy45czI0LjYgOS40IDMzLjkgMGwzMS0zMSAwIDEwMi4xYzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC0xMDIuMSAzMSAzMWM5LjQgOS40IDI0LjYgOS40IDMzLjkgMHM5LjQtMjQuNiAwLTMzLjlsLTcyLTcyeiJdfSxhenI9aUFlLGl6cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmb250IixpY29uOls1MTIsNTEyLFtdLCJmMDMxIiwiTTI4NS4xIDUwLjdDMjc5LjkgMzkuMyAyNjguNSAzMiAyNTYgMzJzLTIzLjkgNy4zLTI5LjEgMTguN0w1OS41IDQxNiA0OCA0MTZjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsODggMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtNi4xIDAgMjItNDggMjA4LjMgMCAyMiA0OC02LjEgMGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmw4OCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC0xMS41IDAtMTY3LjQtMzY1LjN6TTMzMC44IDMwNEwxODEuMiAzMDQgMjU2IDE0MC44IDMzMC44IDMwNHoiXX0sb3pyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJvcmUtaG9sZSIsaWNvbjpbNTEyLDUxMixbXSwiZTRjMyIsIk0yNTYgMGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJsMCAyMzIuNmMtMTkuMSAxMS4xLTMyIDMxLjctMzIgNTUuNCAwIDM1LjMgMjguNyA2NCA2NCA2NHM2NC0yOC43IDY0LTY0YzAtMjMuNy0xMi45LTQ0LjQtMzItNTUuNEwyODggMzJjMC0xNy43LTE0LjMtMzItMzItMzJ6TTAgMzg0bDAgNjRjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzg0IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0yNzJjMC0yNi41LTIxLjUtNDgtNDgtNDhsLTQ4IDBjLTI2LjUgMC00OCAyMS41LTQ4IDQ4bDAgMTQ0YzAgNjEuOS01MC4xIDExMi0xMTIgMTEyUzE0NCAzODEuOSAxNDQgMzIwbDAtMTQ0YzAtMjYuNS0yMS41LTQ4LTQ4LTQ4bC00OCAwYy0yNi41IDAtNDggMjEuNS00OCA0OEwwIDM4NHoiXX0sbnpyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InZpcnVzLWNvdmlkIixpY29uOls1MTIsNTEyLFtdLCJlNGE4IiwiTTE5MiAyNGMwLTEzLjMgMTAuNy0yNCAyNC0yNGw4MCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC0xNiAwIDAgMzMuNmMzMC43IDQuMiA1OC44IDE2LjMgODIuMyAzNC4xTDM4Ni4xIDkyIDM3NC44IDgwLjZjLTkuNC05LjQtOS40LTI0LjYgMC0zMy45czI0LjYtOS40IDMzLjkgMGw1Ni42IDU2LjZjOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlzLTI0LjYgOS40LTMzLjkgMGwtMTEuMy0xMS4zLTIzLjggMjMuOGMxNy45IDIzLjUgMjkuOSA1MS43IDM0LjEgODIuM2wzMy42IDAgMC0xNmMwLTEzLjMgMTAuNy0yNCAyNC0yNHMyNCAxMC43IDI0IDI0bDAgODBjMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjRsMC0xNi0zMy42IDBjLTQuMiAzMC43LTE2LjMgNTguOC0zNC4xIDgyLjNsMjMuOCAyMy44IDExLjMtMTEuM2M5LjQtOS40IDI0LjYtOS40IDMzLjkgMHM5LjQgMjQuNiAwIDMzLjlsLTU2LjYgNTYuNmMtOS40IDkuNC0yNC42IDkuNC0zMy45IDBzLTkuNC0yNC42IDAtMzMuOWwxMS4zLTExLjMtMjMuOC0yMy44Yy0yMy41IDE3LjktNTEuNyAyOS45LTgyLjMgMzQuMWwwIDMzLjYgMTYgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtODAgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNGwxNiAwIDAtMzMuNmMtMzAuNy00LjItNTguOC0xNi4zLTgyLjMtMzQuMWwtMjMuOCAyMy44IDExLjMgMTEuM2M5LjQgOS40IDkuNCAyNC42IDAgMzMuOXMtMjQuNiA5LjQtMzMuOSAwTDQ2LjcgNDA4LjdjLTkuNC05LjQtOS40LTI0LjYgMC0zMy45czI0LjYtOS40IDMzLjkgMGwxMS4zIDExLjMgMjMuOC0yMy44Qzk3LjkgMzM4LjggODUuOCAzMTAuNyA4MS42IDI4MGwtMzMuNiAwIDAgMTZjMCAxMy4zLTEwLjcgMjQtMjQgMjRTMCAzMDkuMyAwIDI5NmwwLTgwYzAtMTMuMyAxMC43LTI0IDI0LTI0czI0IDEwLjcgMjQgMjRsMCAxNiAzMy42IDBjNC4yLTMwLjcgMTYuMy01OC44IDM0LjEtODIuM0w5MiAxMjUuOSA4MC42IDEzNy4yYy05LjQgOS40LTI0LjYgOS40LTMzLjkgMHMtOS40LTI0LjYgMC0zMy45bDU2LjYtNTYuNmM5LjQtOS40IDI0LjYtOS40IDMzLjkgMHM5LjQgMjQuNiAwIDMzLjlMMTI1LjkgOTIgMTQ5LjcgMTE1LjdjMjMuNS0xNy45IDUxLjctMjkuOSA4Mi4zLTM0LjFsMC0zMy42LTE2IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0em0zMiAyMDBhMzIgMzIgMCAxIDAgLTY0IDAgMzIgMzIgMCAxIDAgNjQgMHptOTYgOTZhMzIgMzIgMCAxIDAgMC02NCAzMiAzMiAwIDEgMCAwIDY0eiJdfSxzenI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmlsZS1wZGYiLGljb246WzU3Niw1MTIsW10sImYxYzEiLCJNOTYgMEM2MC43IDAgMzIgMjguNyAzMiA2NGwwIDM4NGMwIDM1LjMgMjguNyA2NCA2NCA2NGw4MCAwIDAtMTEyYzAtMzUuMyAyOC43LTY0IDY0LTY0bDE3NiAwIDAtMTY1LjVjMC0xNy02LjctMzMuMy0xOC43LTQ1LjNMMjkwLjcgMTguN0MyNzguNyA2LjcgMjYyLjUgMCAyNDUuNSAwTDk2IDB6TTM1Ny41IDE3NkwyNjQgMTc2Yy0xMy4zIDAtMjQtMTAuNy0yNC0yNEwyNDAgNTguNSAzNTcuNSAxNzZ6TTI0MCAzODBjLTExIDAtMjAgOS0yMCAyMGwwIDEyOGMwIDExIDkgMjAgMjAgMjBzMjAtOSAyMC0yMGwwLTI4IDEyIDBjMzMuMSAwIDYwLTI2LjkgNjAtNjBzLTI2LjktNjAtNjAtNjBsLTMyIDB6bTMyIDgwbC0xMiAwIDAtNDAgMTIgMGMxMSAwIDIwIDkgMjAgMjBzLTkgMjAtMjAgMjB6bTk2LTgwYy0xMSAwLTIwIDktMjAgMjBsMCAxMjhjMCAxMSA5IDIwIDIwIDIwbDMyIDBjMjguNyAwIDUyLTIzLjMgNTItNTJsMC02NGMwLTI4LjctMjMuMy01Mi01Mi01MmwtMzIgMHptMjAgMTI4bDAtODggMTIgMGM2LjYgMCAxMiA1LjQgMTIgMTJsMCA2NGMwIDYuNi01LjQgMTItMTIgMTJsLTEyIDB6bTg4LTEwOGwwIDEyOGMwIDExIDkgMjAgMjAgMjBzMjAtOSAyMC0yMGwwLTQ0IDI4IDBjMTEgMCAyMC05IDIwLTIwcy05LTIwLTIwLTIwbC0yOCAwIDAtMjQgMjggMGMxMSAwIDIwLTkgMjAtMjBzLTktMjAtMjAtMjBsLTQ4IDBjLTExIDAtMjAgOS0yMCAyMHoiXX0sbHpyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Imxhbmd1YWdlIixpY29uOls1NzYsNTEyLFtdLCJmMWFiIiwiTTE2MCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMzIgMTI4IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTkuNiAwLTguNCAyMy4xYy0xNi40IDQ1LjItNDEuMSA4Ni41LTcyLjIgMTIyIDE0LjIgOC44IDI5IDE2LjYgNDQuNCAyMy41bDUwLjQgMjIuNCA2Mi4yLTE0MGM1LjEtMTEuNiAxNi42LTE5IDI5LjItMTlzMjQuMSA3LjQgMjkuMiAxOWwxMjggMjg4YzcuMiAxNi4yLS4xIDM1LjEtMTYuMiA0Mi4ycy0zNS4xLS4xLTQyLjItMTYuMmwtMjAtNDUtMTU3LjUgMC0yMCA0NWMtNy4yIDE2LjItMjYuMSAyMy40LTQyLjIgMTYuMnMtMjMuNC0yNi4xLTE2LjItNDIuMmwzOS44LTg5LjUtNTAuNC0yMi40Yy0yMy0xMC4yLTQ1LTIyLjQtNjUuOC0zNi40LTIxLjMgMTcuMi00NC42IDMyLjItNjkuNSA0NC43TDc4LjMgMzgwLjZjLTE1LjggNy45LTM1IDEuNS00Mi45LTE0LjNzLTEuNS0zNSAxNC4zLTQyLjlsMzQuNS0xNy4zYzE2LjMtOC4yIDMxLjgtMTcuNyA0Ni40LTI4LjMtMTMuOC0xMi43LTI2LjgtMjYuNC0zOC45LTQwLjlMODEuNiAyMjQuN2MtMTEuMy0xMy42LTkuNS0zMy44IDQuMS00NS4xczMzLjgtOS41IDQ1LjEgNC4xbDEwLjIgMTIuMmMxMS41IDEzLjkgMjQuMSAyNi44IDM3LjQgMzguNyAyNy41LTMwLjQgNDkuMi02Ni4xIDYzLjUtMTA1LjRsLjUtMS4yLTIxMC4zIDBDMTQuMyAxMjggMCAxMTMuNyAwIDk2UzE0LjMgNjQgMzIgNjRsOTYgMCAwLTMyYzAtMTcuNyAxNC4zLTMyIDMyLTMyek00MTYgMjcwLjhMMzY1LjcgMzg0IDQ2Ni4zIDM4NCA0MTYgMjcwLjh6Il19LG9BZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzaGllbGQtaGFsdmVkIixpY29uOls1MTIsNTEyLFsic2hpZWxkLWFsdCJdLCJmM2VkIiwiTTI1NiAwYzQuNiAwIDkuMiAxIDEzLjQgMi45TDQ1Ny44IDgyLjhjMjIgOS4zIDM4LjQgMzEgMzguMyA1Ny4yLS41IDk5LjItNDEuMyAyODAuNy0yMTMuNiAzNjMuMi0xNi43IDgtMzYuMSA4LTUyLjggMC0xNzIuNC04Mi41LTIxMy4xLTI2NC0yMTMuNi0zNjMuMi0uMS0yNi4yIDE2LjMtNDcuOSAzOC4zLTU3LjJMMjQyLjcgMi45QzI0Ni45IDEgMjUxLjQgMCAyNTYgMHptMCA2Ni44bDAgMzc4LjFjMTM4LTY2LjggMTc1LjEtMjE0LjggMTc2LTMwMy40bC0xNzYtNzQuNiAwIDB6Il19LGN6cj1vQWUsZHpyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNhcmV0LXVwIixpY29uOlszMjAsNTEyLFtdLCJmMGQ4IiwiTTE0MC4zIDEzNS4yYzEyLjYtMTAuMyAzMS4xLTkuNSA0Mi44IDIuMmwxMjggMTI4YzkuMiA5LjIgMTEuOSAyMi45IDYuOSAzNC45UzMwMS40IDMyMCAyODguNSAzMjBsLTI1NiAwYy0xMi45IDAtMjQuNi03LjgtMjkuNi0xOS44Uy43IDI3NC41IDkuOSAyNjUuNGwxMjgtMTI4IDIuNC0yLjJ6Il19LG5BZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmaWxlLXBlbiIsaWNvbjpbNjQwLDUxMixbMTI4MjIxLCJmaWxlLWVkaXQiXSwiZjMxYyIsIk0xMjguMSAwYy0zNS4zIDAtNjQgMjguNy02NCA2NGwwIDM4NGMwIDM1LjMgMjguNyA2NCA2NCA2NGwxNDYuMiAwIDEwLjktNTQuNWM0LjMtMjEuNyAxNS00MS42IDMwLjYtNTcuMmwxMzIuMi0xMzIuMiAwLTk3LjVjMC0xNy02LjctMzMuMy0xOC43LTQ1LjNMMzIyLjggMTguN0MzMTAuOCA2LjcgMjk0LjUgMCAyNzcuNiAwTDEyOC4xIDB6TTM4OS42IDE3NmwtOTMuNSAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNGwwLTkzLjUgMTE3LjUgMTE3LjV6TTMzMi4zIDQ2Ni45bC0xMS45IDU5LjZjLS4yIC45LS4zIDEuOS0uMyAyLjkgMCA4IDYuNSAxNC42IDE0LjYgMTQuNiAxIDAgMS45LS4xIDIuOS0uM2w1OS42LTExLjljMTIuNC0yLjUgMjMuOC04LjYgMzIuNy0xNy41bDExOC45LTExOC45LTgwLTgwLTExOC45IDExOC45Yy04LjkgOC45LTE1IDIwLjMtMTcuNSAzMi43em0yNjcuOC0xMjNjMjIuMS0yMi4xIDIyLjEtNTcuOSAwLTgwcy01Ny45LTIyLjEtODAgMGwtMjguOCAyOC44IDgwIDgwIDI4LjgtMjguOHoiXX0sdXpyPW5BZSxzQWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGVyc29uLWJpa2luZyIsaWNvbjpbNTc2LDUxMixbMTI4NjkyLCJiaWtpbmciXSwiZjg0YSIsIk0zNjggOTZhNDggNDggMCAxIDAgMC05NiA0OCA0OCAwIDEgMCAwIDk2em0yNy4yIDY0bC02MS44LTQ4LjhjLTE3LjMtMTMuNi00MS43LTEzLjgtNTkuMS0uM2wtODMuMSA2NC4yYy0zMC43IDIzLjgtMjguNSA3MC44IDQuMyA5MS42TDI1NiAzMDUuMSAyNTYgNDE2YzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0xMjhjMC0xMC43LTUuMy0yMC43LTE0LjItMjYuNkwyNjMgMjMyLjkgMzIzLjMgMTg0LjQgMzY0IDIxN2M1LjcgNC41IDEyLjcgNyAyMCA3bDY0IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTUyLjggMHpNMTEyIDUxMmExMTIgMTEyIDAgMSAwIDAtMjI0IDExMiAxMTIgMCAxIDAgMCAyMjR6bTM1MiAwYTExMiAxMTIgMCAxIDAgMC0yMjQgMTEyIDExMiAwIDEgMCAwIDIyNHoiXX0sZnpyPXNBZSxsQWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYm9vay1vcGVuLXJlYWRlciIsaWNvbjpbNTEyLDUxMixbImJvb2stcmVhZGVyIl0sImY1ZGEiLCJNMjU2IDE1MmE4OCA4OCAwIDEgMCAwLTE3NiA4OCA4OCAwIDEgMCAwIDE3NnptMCAyOTguN2wwLTE0OS4zYzE2LjMtNi44IDMyLjktMTMuNyA0OS43LTIwLjcgMzktMTYuMiA4MC44LTI0LjYgMTIzLjEtMjQuNmwxOS4yIDAgMCAxNjAtMTkuMiAwYy01OS4xIDAtMTE3LjcgMTEuNy0xNzIuMyAzNC41bC0uNSAuMnpNMjU2IDIzMmwtMjUuMS0xMC41QzE4NC4xIDIwMiAxMzMuOSAxOTIgODMuMiAxOTJMNDggMTkyYy0yNi41IDAtNDggMjEuNS00OCA0OEwwIDQzMmMwIDI2LjUgMjEuNSA0OCA0OCA0OGwzNS4yIDBjNTAuNyAwIDEwMC45IDEwIDE0Ny43IDI5LjVsMTIuOCA1LjNjNy45IDMuMyAxNi43IDMuMyAyNC42IDBsMTIuOC01LjNjNDYuOC0xOS41IDk3LTI5LjUgMTQ3LjctMjkuNWwzNS4yIDBjMjYuNSAwIDQ4LTIxLjUgNDgtNDhsMC0xOTJjMC0yNi41LTIxLjUtNDgtNDgtNDhsLTM1LjIgMGMtNTAuNyAwLTEwMC45IDEwLTE0Ny43IDI5LjVMMjU2IDIzMnoiXX0scHpyPWxBZSxoenI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZ2xhc3Mtd2F0ZXItZHJvcGxldCIsaWNvbjpbMzg0LDUxMixbXSwiZTRmNSIsIk0zMiAwQzIzLjEgMCAxNC42IDMuNyA4LjYgMTAuMlMtLjYgMjUuNCAuMSAzNC4zTDI4LjkgNDM3LjdjMyA0MS45IDM3LjggNzQuMyA3OS44IDc0LjNsMTY2LjYgMGM0MiAwIDc2LjgtMzIuNCA3OS44LTc0LjNMMzgzLjkgMzQuM2MuNi04LjktMi40LTE3LjYtOC41LTI0LjFTMzYwLjkgMCAzNTIgMEwzMiAwek04MyAyOTcuNUw2Ni40IDY0IDMxNy42IDY0IDMwMSAyOTcuNSAyODggMzA0Yy0yMC4xIDEwLjEtNDMuOSAxMC4xLTY0IDBzLTQzLjktMTAuMS02NCAwLTQzLjkgMTAuMS02NCAwbC0xMy02LjV6TTI1NiAxOTZjMC0yNC0zMy43LTcwLjEtNTIuMi05My41LTYuMS03LjctMTcuNS03LjctMjMuNiAwLTE4LjUgMjMuNC01Mi4yIDY5LjUtNTIuMiA5My41IDAgMzMuMSAyOC43IDYwIDY0IDYwczY0LTI2LjkgNjQtNjB6Il19LGNBZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0b3dlci1icm9hZGNhc3QiLGljb246WzU3Niw1MTIsWyJicm9hZGNhc3QtdG93ZXIiXSwiZjUxOSIsIk04Ny45IDExLjVjLTExLjMtNi45LTI2LjEtMy4yLTMzIDguMS0yNC44IDQxLTM5IDg5LjEtMzkgMTQwLjRzMTQuMiA5OS40IDM5IDE0MC40YzYuOSAxMS4zIDIxLjYgMTUgMzMgOC4xczE1LTIxLjYgOC4xLTMzQzc1LjcgMjQxLjkgNjQgMjAyLjMgNjQgMTYwUzc1LjcgNzguMSA5Ni4xIDQ0LjRjNi45LTExLjMgMy4yLTI2LjEtOC4xLTMzem00MDAuMSAwYy0xMS4zIDYuOS0xNSAyMS42LTguMSAzMyAyMC40IDMzLjcgMzIuMSA3My4zIDMyLjEgMTE1LjZzLTExLjcgODEuOS0zMi4xIDExNS42Yy02LjkgMTEuMy0zLjIgMjYuMSA4LjEgMzNzMjYuMSAzLjIgMzMtOC4xYzI0LjgtNDEgMzktODkuMSAzOS0xNDAuNFM1NDUuOCA2MC42IDUyMSAxOS42Yy02LjktMTEuMy0yMS42LTE1LTMzLTguMXpNMzIwIDIxNS40YzE5LjEtMTEuMSAzMi0zMS43IDMyLTU1LjQgMC0zNS4zLTI4LjctNjQtNjQtNjRzLTY0IDI4LjctNjQgNjRjMCAyMy43IDEyLjkgNDQuNCAzMiA1NS40TDI1NiA0ODBjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTI2NC42ek0xODAuMiA5MWM3LjItMTEuMiAzLjktMjYtNy4yLTMzLjJzLTI2LTMuOS0zMy4yIDcuMmMtMTcuNiAyNy40LTI3LjggNjAtMjcuOCA5NXMxMC4yIDY3LjYgMjcuOCA5NWM3LjIgMTEuMiAyMiAxNC40IDMzLjIgNy4yczE0LjQtMjIgNy4yLTMzLjJjLTEyLjgtMTkuOS0yMC4yLTQzLjYtMjAuMi02OXM3LjQtNDkuMSAyMC4yLTY5ek00MzYuMiA2NWMtNy4yLTExLjItMjItMTQuNC0zMy4yLTcuMnMtMTQuNCAyMi03LjIgMzMuMmMxMi44IDE5LjkgMjAuMiA0My42IDIwLjIgNjlzLTcuNCA0OS4xLTIwLjIgNjljLTcuMiAxMS4yLTMuOSAyNiA3LjIgMzMuMnMyNiAzLjkgMzMuMi03LjJjMTcuNi0yNy40IDI3LjgtNjAgMjcuOC05NXMtMTAuMi02Ny42LTI3LjgtOTV6Il19LG16cj1jQWUsZEFlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im1pbmltaXplIixpY29uOls1MTIsNTEyLFsiY29tcHJlc3MtYXJyb3dzLWFsdCJdLCJmNzhjIiwiTTQ1NiAyMjRsLTE0NCAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNGwwLTE0NGMwLTkuNyA1LjgtMTguNSAxNC44LTIyLjJTMzIyLjEgMzIuMiAzMjkgMzlsNDAgNDAgNzMuNC03My40QzQ0NiAyIDQ1MC45IDAgNDU2IDBzMTAgMiAxMy43IDUuN2wzNi43IDM2LjdDNTEwIDQ2IDUxMiA1MC45IDUxMiA1NnMtMiAxMC01LjcgMTMuN0w0MzMgMTQzIDQ3MyAxODNjNi45IDYuOSA4LjkgMTcuMiA1LjIgMjYuMlM0NjUuNyAyMjQgNDU2IDIyNHptMCA2NGM5LjcgMCAxOC41IDUuOCAyMi4yIDE0LjhzMS43IDE5LjMtNS4yIDI2LjJsLTQwIDQwIDczLjQgNzMuNGMzLjYgMy42IDUuNyA4LjUgNS43IDEzLjdzLTIgMTAtNS43IDEzLjdsLTM2LjcgMzYuN0M0NjYgNTEwIDQ2MS4xIDUxMiA0NTYgNTEycy0xMC0yLTEzLjctNS43TDM2OSA0MzMgMzI5IDQ3M2MtNi45IDYuOS0xNy4yIDguOS0yNi4yIDUuMlMyODggNDY1LjcgMjg4IDQ1NmwwLTE0NGMwLTEzLjMgMTAuNy0yNCAyNC0yNGwxNDQgMHptLTI1NiAwYzEzLjMgMCAyNCAxMC43IDI0IDI0bDAgMTQ0YzAgOS43LTUuOCAxOC41LTE0LjggMjIuMnMtMTkuMyAxLjctMjYuMi01LjJsLTQwLTQwLTczLjQgNzMuNEM2NiA1MTAgNjEuMSA1MTIgNTYgNTEycy0xMC0yLTEzLjctNS43TDUuNyA0NjkuN0MyIDQ2NiAwIDQ2MS4xIDAgNDU2czItMTAgNS43LTEzLjdMNzkgMzY5IDM5IDMyOWMtNi45LTYuOS04LjktMTcuMi01LjItMjYuMlM0Ni4zIDI4OCA1NiAyODhsMTQ0IDB6TTU2IDIyNGMtOS43IDAtMTguNS01LjgtMjIuMi0xNC44UzMyLjIgMTg5LjkgMzkgMTgzTDc5IDE0MyA1LjcgNjkuN0MyIDY2IDAgNjEuMSAwIDU2UzIgNDYgNS43IDQyLjNMNDIuMyA1LjdDNDYgMiA1MC45IDAgNTYgMFM2NiAyIDY5LjcgNS43TDE0MyA3OSAxODMgMzljNi45LTYuOSAxNy4yLTguOSAyNi4yLTUuMlMyMjQgNDYuMyAyMjQgNTZsMCAxNDRjMCAxMy4zLTEwLjcgMjQtMjQgMjRMNTYgMjI0eiJdfSxnenI9ZEFlLHh6cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJhcnJvdy1yaWdodC10by1jaXR5IixpY29uOls2NDAsNTEyLFtdLCJlNGIzIiwiTTI4OCA0OGMwLTI2LjUgMjEuNS00OCA0OC00OGw5NiAwYzI2LjUgMCA0OCAyMS41IDQ4IDQ4bDAgODAgNDggMCAwLTcyYzAtMTMuMyAxMC43LTI0IDI0LTI0czI0IDEwLjcgMjQgMjRsMCA3MiAxNiAwYzI2LjUgMCA0OCAyMS41IDQ4IDQ4bDAgMjg4YzAgMjYuNS0yMS41IDQ4LTQ4IDQ4bC0yNTYgMGMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhsMC00MTZ6bTY0IDY0bDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMzJjMC04LjgtNy4yLTE2LTE2LTE2bC0zMiAwYy04LjggMC0xNiA3LjItMTYgMTZ6bTE2IDgwYy04LjggMC0xNiA3LjItMTYgMTZsMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZsMzIgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0zMmMwLTguOC03LjItMTYtMTYtMTZsLTMyIDB6TTM1MiAzMDRsMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZsMzIgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0zMmMwLTguOC03LjItMTYtMTYtMTZsLTMyIDBjLTguOCAwLTE2IDcuMi0xNiAxNnptMTc2LTgwYy04LjggMC0xNiA3LjItMTYgMTZsMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZsMzIgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0zMmMwLTguOC03LjItMTYtMTYtMTZsLTMyIDB6TTUxMiAzMzZsMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZsMzIgMGM4LjggMCAxNi03LjIgMTYtMTZsMC0zMmMwLTguOC03LjItMTYtMTYtMTZsLTMyIDBjLTguOCAwLTE2IDcuMi0xNiAxNnpNMTUzIDE2N2w3MiA3MmM5LjQgOS40IDkuNCAyNC42IDAgMzMuOWwtNzIgNzJjLTkuNCA5LjQtMjQuNiA5LjQtMzMuOSAwcy05LjQtMjQuNiAwLTMzLjlsMzEtMzEtMTAyLjEgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNGwxMDIuMSAwLTMxLTMxYy05LjQtOS40LTkuNC0yNC42IDAtMzMuOXMyNC42LTkuNCAzMy45IDB6Il19LGJ6cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJsYXB0b3AtbWVkaWNhbCIsaWNvbjpbNjQwLDUxMixbXSwiZjgxMiIsIk02NCA5NmMwLTM1LjMgMjguNy02NCA2NC02NGwzODQgMGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDI0MC02NCAwIDAtMjQwLTM4NCAwIDAgMjQwLTY0IDAgMC0yNDB6TTAgNDAzLjJDMCAzOTIuNiA4LjYgMzg0IDE5LjIgMzg0bDYwMS42IDBjMTAuNiAwIDE5LjIgOC42IDE5LjIgMTkuMiAwIDQyLjQtMzQuNCA3Ni44LTc2LjggNzYuOEw3Ni44IDQ4MEMzNC40IDQ4MCAwIDQ0NS42IDAgNDAzLjJ6TTI4OCAxNjBjMC04LjggNy4yLTE2IDE2LTE2bDMyIDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgNDAgNDAgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTQwIDAgMCA0MGMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTQwLTQwIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyYzAtOC44IDcuMi0xNiAxNi0xNmw0MCAwIDAtNDB6Il19LHZ6cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJicmVhZC1zbGljZSIsaWNvbjpbNTEyLDUxMixbXSwiZjdlYyIsIk02NCA0MzJsMC0xNzZjLTM1LjMgMC02NC0yOC43LTY0LTY0IDAtMjE2LjUgNTEyLTIxNi41IDUxMiAwIDAgMzUuMy0yOC43IDY0LTY0IDY0bDAgMTc2YzAgMjYuNS0yMS41IDQ4LTQ4IDQ4bC0yODggMGMtMjYuNSAwLTQ4LTIxLjUtNDgtNDh6Il19LHl6cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJnbG9iZSIsaWNvbjpbNTEyLDUxMixbMTI3NzYwXSwiZjBhYyIsIk0zNTEuOSAyODBsLTE5MC45IDBjMi45IDY0LjUgMTcuMiAxMjMuOSAzNy41IDE2Ny40IDExLjQgMjQuNSAyMy43IDQxLjggMzUuMSA1Mi40IDExLjIgMTAuNSAxOC45IDEyLjIgMjIuOSAxMi4yczExLjctMS43IDIyLjktMTIuMmMxMS40LTEwLjYgMjMuNy0yOCAzNS4xLTUyLjQgMjAuMy00My41IDM0LjYtMTAyLjkgMzcuNS0xNjcuNHpNMTYwLjkgMjMybDE5MC45IDBDMzQ5IDE2Ny41IDMzNC43IDEwOC4xIDMxNC40IDY0LjYgMzAzIDQwLjIgMjkwLjcgMjIuOCAyNzkuMyAxMi4yIDI2OC4xIDEuNyAyNjAuNCAwIDI1Ni40IDBzLTExLjcgMS43LTIyLjkgMTIuMmMtMTEuNCAxMC42LTIzLjcgMjgtMzUuMSA1Mi40LTIwLjMgNDMuNS0zNC42IDEwMi45LTM3LjUgMTY3LjR6bS00OCAwQzExNi40IDE0Ni40IDEzOC41IDY2LjkgMTcwLjggMTQuNyA3OC43IDQ3LjMgMTAuOSAxMzEuMiAxLjUgMjMybDExMS40IDB6TTEuNSAyODBjOS40IDEwMC44IDc3LjIgMTg0LjcgMTY5LjMgMjE3LjMtMzIuMy01Mi4yLTU0LjQtMTMxLjctNTcuOS0yMTcuM0wxLjUgMjgwem0zOTguNCAwYy0zLjUgODUuNi0yNS42IDE2NS4xLTU3LjkgMjE3LjMgOTIuMS0zMi43IDE1OS45LTExNi41IDE2OS4zLTIxNy4zbC0xMTEuNCAwem0xMTEuNC00OEM1MDEuOSAxMzEuMiA0MzQuMSA0Ny4zIDM0MiAxNC43IDM3NC4zIDY2LjkgMzk2LjQgMTQ2LjQgMzk5LjkgMjMybDExMS40IDB6Il19LHd6cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmb2xkZXItbWludXMiLGljb246WzUxMiw1MTIsW10sImY2NWQiLCJNNDQ4IDQ0OEw2NCA0NDhjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgOTZDMCA2MC43IDI4LjcgMzIgNjQgMzJsMTM4LjcgMGMxMy44IDAgMjcuMyA0LjUgMzguNCAxMi44bDM4LjQgMjguOGM1LjUgNC4yIDEyLjMgNi40IDE5LjIgNi40TDQ0OCA4MGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDI0MGMwIDM1LjMtMjguNyA2NC02NCA2NHpNMTg0IDI0MGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwxNDQgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtMTQ0IDB6Il19LE16cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtYXNrLWZhY2UiLGljb246WzY0MCw1MTIsW10sImUxZDciLCJNMzIwIDY0Yy0yNy4yIDAtNTMuOCA4LTc2LjQgMjMuMWwtMzcuMSAyNC44Yy0xNS44IDEwLjUtMzQuMyAxNi4xLTUzLjMgMTYuMUw2NCAxMjhjLTM1LjMgMC02NCAyOC43LTY0IDY0bDAgNzguN2MwIDYyLjYgNDUuMiAxMTYgMTA3IDEyNi4zbDk3LjkgMTYuM2MzMyAyMiA3Mi42IDM0LjcgMTE1LjEgMzQuN3M4Mi4yLTEyLjggMTE1LjEtMzQuN0w1MzMgMzk2LjljNjEuNy0xMC4zIDEwNy02My43IDEwNy0xMjYuM2wwLTc4LjdjMC0zNS4zLTI4LjctNjQtNjQtNjRsLTg5LjIgMGMtMTkgMC0zNy41LTUuNi01My4zLTE2LjFMMzk2LjQgODcuMUMzNzMuOCA3MiAzNDcuMiA2NCAzMjAgNjR6TTEzNS45IDMzNi45bC0xOC40LTMuMUM4Ni42IDMyOC43IDY0IDMwMiA2NCAyNzAuN2wwLTc4LjcgNDggMCAwIDQ4YzAgMzUgOC42IDY3LjkgMjMuOSA5Ni45em0zODYuNi0zLjFsLTE4LjQgMy4xQzUxOS40IDMwNy45IDUyOCAyNzUgNTI4IDI0MGwwLTQ4IDQ4IDAgMCA3OC43YzAgMzEuMy0yMi42IDU4LTUzLjUgNjMuMXpNMTkyIDIzMmMwLTEzLjMgMTAuNy0yNCAyNC0yNGwyMDggMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtMjA4IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0em01NiA1NmwxNDQgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtMTQ0IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjR6Il19LGt6cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJib25nIixpY29uOls1MTIsNTEyLFtdLCJmNTVjIiwiTTQ0OC41IDM4NGMwIDQxLjUtMTMuMSA3OS45LTM1LjUgMTExLjMtNy45IDExLjEtMjEuMiAxNi43LTM0LjggMTYuN2wtMjQzLjMgMGMtMTMuNyAwLTI2LjktNS42LTM0LjgtMTYuNy0yMi40LTMxLjQtMzUuNS02OS44LTM1LjUtMTExLjMgMC03MS4xIDM4LjYtMTMzLjEgOTYtMTY2LjNsMC0xNTMuN2MtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMmwxOTIgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwwIDE1My43YzE0LjIgOC4yIDI3LjIgMTguMiAzOC44IDI5LjZsMzkuMy0zOS4zLTctN2MtOS40LTkuNC05LjQtMjQuNiAwLTMzLjlzMjQuNi05LjQgMzMuOSAwYzE2IDE2IDMyIDMyIDQ4IDQ4IDkuNCA5LjQgOS40IDI0LjYgMCAzMy45cy0yNC42IDkuNC0zMy45IDBsLTctNy00My4zIDQzLjNjMTcuMyAyOC45IDI3LjMgNjIuNiAyNy4zIDk4Ljh6TTI4OC41IDY0bC02NCAwIDAgMTkwLjYtMzIgMTguNWMtMTkuNSAxMS4zLTM1LjcgMjcuNS00Ni45IDQ2LjlsMjIxLjggMGMtMTEuMi0xOS40LTI3LjQtMzUuNi00Ni45LTQ2LjlsLTMyLTE4LjUgMC0xOTAuNnoiXX0sU3pyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InJvYWQtYnJpZGdlIixpY29uOls1NzYsNTEyLFtdLCJlNTYzIiwiTTMyIDMybDIwOCAwIDAgNjQtMjQgMCAwIDY0IDI0IDAgMCAxMjkuM2MtNDUuNCA3LjYtODAgNDcuMS04MCA5NC43bDAgNjRjMCAxNy43LTE0LjMgMzItMzIgMzJsLTMyIDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtOTRjMC0zOC44LTI2LjQtNzIuNi02NC04MmwwLTExMiA0MCAwIDAtNjQtOCAwQzE0LjMgOTYgMCA4MS43IDAgNjRTMTQuMyAzMiAzMiAzMnpNODggOTZsMCA2NCA4MCAwIDAtNjQtODAgMHpNMzM2IDMybDcyIDAgMCA3MmMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtNzIgNzIgMGMyNi41IDAgNDggMjEuNSA0OCA0OGwwIDM1MmMwIDI2LjUtMjEuNSA0OC00OCA0OGwtNzIgMCAwLTcyYzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0bDAgNzItNzIgMGMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhsMC0zNTJjMC0yNi41IDIxLjUtNDggNDgtNDh6bTk2IDE2MGMtMTMuMyAwLTI0IDEwLjctMjQgMjRsMCA4MGMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtODBjMC0xMy4zLTEwLjctMjQtMjQtMjR6Il19LHVBZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJhcnJvdy11cC05LTEiLGljb246WzUxMiw1MTIsWyJzb3J0LW51bWVyaWMtdXAtYWx0Il0sImY4ODciLCJNMTUwLjYgNDEuNGMtMTIuNS0xMi41LTMyLjgtMTIuNS00NS4zIDBsLTk2IDk2Yy0xMi41IDEyLjUtMTIuNSAzMi44IDAgNDUuM3MzMi44IDEyLjUgNDUuMyAwTDk2IDE0MS4zIDk2IDQ0OGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMzA2LjcgNDEuNCA0MS40YzEyLjUgMTIuNSAzMi44IDEyLjUgNDUuMyAwczEyLjUtMzIuOCAwLTQ1LjNsLTk2LTk2ek0zNjUuMSAyMDYuNmMtOS42IDE0LjgtNS40IDM0LjYgOS40IDQ0LjNzMzQuNiA1LjQgNDQuMy05LjRsNDIuMS02NC45YzEyLjQtMTkuMiAxOS4xLTQxLjYgMTkuMS02NC41IDAtNDQuMi0zNS44LTgwLTgwLTgwcy04MCAzNS44LTgwIDgwYzAgMzYuMSAyMy45IDY2LjcgNTYuOCA3Ni42bC0xMS43IDE4ek0zNzYgMTEyYTI0IDI0IDAgMSAxIDQ4IDAgMjQgMjQgMCAxIDEgLTQ4IDB6bTQyLjcgMTgyYy04LjMtNi0xOS4xLTcuNy0yOC44LTQuNGwtNDggMTZjLTE2LjggNS42LTI1LjggMjMuNy0yMC4yIDQwLjVzMjMuNyAyNS44IDQwLjUgMjAuMmw1LjktMiAwIDUxLjYtMTYgMGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmw5NiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC0xNiAwIDAtOTZjMC0xMC4zLTQuOS0xOS45LTEzLjMtMjZ6Il19LHp6cj11QWUsQ3pyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im1vdW50YWluLWNpdHkiLGljb246WzY0MCw1MTIsW10sImU1MmUiLCJNMjU2LjMgNDhjMC0yNi41IDIxLjUtNDggNDgtNDhsOTYgMGMyNi41IDAgNDggMjEuNSA0OCA0OGwwIDQ4IDQ4IDAgMC03MmMwLTEzLjMgMTAuNy0yNCAyNC0yNHMyNCAxMC43IDI0IDI0bDAgNzIgMTYgMGMyNi41IDAgNDggMjEuNSA0OCA0OGwwIDMyMGMwIDI2LjUtMjEuNSA0OC00OCA0OGwtNzcuOCAwYzQtMTUuNCAyLjQtMzIuNi02LjctNDguMkwzNTQuNiAyNTYgMzY4LjMgMjU2YzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMGMtNi4xIDAtMTEuNCAzLjQtMTQuMSA4LjVsLTQyLjYtNzNjLTYtMTAuMi0xNC4xLTE4LTIzLjMtMjMuM2wwLTU2LjJ6bTY0IDY0bDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMzJjMC04LjgtNy4yLTE2LTE2LTE2bC0zMiAwYy04LjggMC0xNiA3LjItMTYgMTZ6bTE2MCA5NmwwIDMyYzAgOC44IDcuMiAxNiAxNiAxNmwzMiAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMGMtOC44IDAtMTYgNy4yLTE2IDE2em0xNiA4MGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMzJjMC04LjgtNy4yLTE2LTE2LTE2bC0zMiAwem0tMjcyLTY0LjdsLTY1LjEgMTExLjYgMzMuMSAzMy4xIDQ4LTQ4IDQwLjQgMC01Ni40LTk2Ljd6bS0yNy42LTQ3LjljMTIuMy0yMS4yIDQyLjktMjEuMiA1NS4zIDBMNDIwLjMgNDYzLjljMTIuNCAyMS4zLTIuOSA0OC4xLTI3LjYgNDguMUw1NiA1MTJjLTI0LjcgMC00MC4xLTI2LjgtMjcuNi00OC4xTDE5Ni43IDE3NS40eiJdfSxCMmU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYXJyb3ctZG93bi05LTEiLGljb246WzUxMiw1MTIsWyJzb3J0LW51bWVyaWMtZGVzYyIsInNvcnQtbnVtZXJpYy1kb3duLWFsdCJdLCJmODg2IiwiTTIzMC42IDM5MC42bC04MCA4MGMtMTIuNSAxMi41LTMyLjggMTIuNS00NS4zIDBsLTgwLTgwYy0xMi41LTEyLjUtMTIuNS0zMi44IDAtNDUuM3MzMi44LTEyLjUgNDUuMyAwTDk2IDM3MC43IDk2IDY0YzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJsMCAzMDYuNyAyNS40LTI1LjRjMTIuNS0xMi41IDMyLjgtMTIuNSA0NS4zIDBzMTIuNSAzMi44IDAgNDUuM3ptMTM0LjUtMTg0bDExLjctMThjLTMyLjktOS45LTU2LjgtNDAuNS01Ni44LTc2LjYgMC00NC4yIDM1LjgtODAgODAtODBzODAgMzUuOCA4MCA4MGMwIDIyLjktNi42IDQ1LjMtMTkuMSA2NC41bC00Mi4xIDY0LjljLTkuNiAxNC44LTI5LjQgMTkuMS00NC4zIDkuNHMtMTkuMS0yOS40LTkuNC00NC4zek00MjQgMTEyYTI0IDI0IDAgMSAwIC00OCAwIDI0IDI0IDAgMSAwIDQ4IDB6bS01LjMgMTgyYzguMyA2IDEzLjMgMTUuNyAxMy4zIDI2bDAgOTYgMTYgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtOTYgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMmwxNiAwIDAtNTEuNi01LjkgMmMtMTYuOCA1LjYtMzQuOS0zLjUtNDAuNS0yMC4yczMuNS0zNC45IDIwLjItNDAuNWw0OC0xNmM5LjgtMy4zIDIwLjUtMS42IDI4LjggNC40eiJdfSxfenI9QjJlLFR6cj1CMmUsZkFlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZhY2UtZ3Jpbi13aWRlIixpY29uOls1MTIsNTEyLFsxMjg1MTUsImdyaW4tYWx0Il0sImY1ODEiLCJNMjU2IDUxMmEyNTYgMjU2IDAgMSAwIDAtNTEyIDI1NiAyNTYgMCAxIDAgMCA1MTJ6TTM4Ni43IDMwOC45YzExLjktMy43IDIzLjkgNi4zIDE5LjYgMTguMS0yMi40IDYxLjMtODEuMyAxMDUuMS0xNTAuMyAxMDUuMVMxMjguMSAzODguMiAxMDUuNyAzMjYuOWMtNC4zLTExLjggNy43LTIxLjggMTkuNi0xOC4xIDM5LjIgMTIuMiA4My43IDE5LjEgMTMwLjcgMTkuMXM5MS41LTYuOSAxMzAuNy0xOS4xek0yMDggMTkyYzAgMzUuMy0xNC4zIDY0LTMyIDY0cy0zMi0yOC43LTMyLTY0IDE0LjMtNjQgMzItNjQgMzIgMjguNyAzMiA2NHptMTI4IDY0Yy0xNy43IDAtMzItMjguNy0zMi02NHMxNC4zLTY0IDMyLTY0IDMyIDI4LjcgMzIgNjQtMTQuMyA2NC0zMiA2NHoiXX0sTHpyPWZBZSxEenI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicG9vcCIsaWNvbjpbNTEyLDUxMixbXSwiZjYxOSIsIk0yNTQuNCA2LjZjMy41LTQuMyA5LTYuNSAxNC41LTUuNyA0Ni45IDYuMyA4My4xIDQ2LjUgODMuMSA5NS4xIDAgMTEuMi0xLjkgMjItNS41IDMybDUuNSAwYzM1LjMgMCA2NCAyOC43IDY0IDY0IDAgMTkuMS04LjQgMzYuMy0yMS43IDQ4bDEzLjcgMGMzOS44IDAgNzIgMzIuMiA3MiA3MiAwIDIzLjItMTEgNDMuOC0yOCA1NyAzNC4xIDUuNyA2MCAzNS4zIDYwIDcxIDAgMzkuOC0zMi4yIDcyLTcyIDcyTDcyIDUxMmMtMzkuOCAwLTcyLTMyLjItNzItNzIgMC0zNS43IDI1LjktNjUuMyA2MC03MS0xNy0xMy4yLTI4LTMzLjgtMjgtNTcgMC0zOS44IDMyLjItNzIgNzItNzJsMTMuNyAwYy0xMy4zLTExLjctMjEuNy0yOC45LTIxLjctNDggMC0zNS4zIDI4LjctNjQgNjQtNjRsMTYuMiAwYzQ0LjEtLjEgNzkuOC0zNS45IDc5LjgtODAgMC05LjItMS41LTE3LjktNC4zLTI2LjEtMS44LTUuMi0uOC0xMS4xIDIuOC0xNS40eiJdfSxBenI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZGhhcm1hY2hha3JhIixpY29uOls1MTIsNTEyLFs5Nzg0XSwiZjY1NSIsIk0zMzcuOCAyMDUuN2w0OC42LTQyLjVjMTMuOCAxOS4zIDIzLjQgNDEuOSAyNy40IDY2LjJsLTY0LjQgNC4zYy0yLjQtMTAuMS02LjQtMTkuNS0xMS42LTI4em0xNDAuMSAxOS41Yy01LjMtMzguOC0yMC42LTc0LjUtNDMuMi0xMDQuM2wuOC0uN0M0NDkgMTA4LjQgNDQ5LjcgODcuNiA0MzcgNzVzLTMzLjQtMTItNDUuMiAxLjVsLS43IC44Yy0yOS44LTIyLjYtNjUuNS0zNy45LTEwNC4zLTQzLjJsLjEtMS4xYzEuMi0xNy45LTEzLTMzLTMwLjktMzNzLTMyLjEgMTUuMi0zMC45IDMzbC4xIDEuMWMtMzguOCA1LjMtNzQuNSAyMC42LTEwNC4zIDQzLjJsLS43LS44QzEwOC40IDYzIDg3LjYgNjIuMyA3NSA3NXMtMTIgMzMuNCAxLjUgNDUuMmwuOCAuN2MtMjIuNiAyOS44LTM3LjkgNjUuNS00My4yIDEwNC4zbC0xLjEtLjFjLTE3LjktMS4yLTMzIDEzLTMzIDMwLjlzMTUuMiAzMi4xIDMzIDMwLjlsMS4xLS4xYzUuMyAzOC44IDIwLjYgNzQuNSA0My4yIDEwNC4zbC0uOCAuN0M2MyA0MDMuNiA2Mi4zIDQyNC40IDc1IDQzN3MzMy40IDEyIDQ1LjItMS41bC43LS44YzI5LjggMjIuNiA2NS41IDM3LjkgMTA0LjMgNDMuMmwtLjEgMS4xYy0xLjIgMTcuOSAxMyAzMyAzMC45IDMzczMyLjEtMTUuMiAzMC45LTMzbC0uMS0xLjFjMzguOC01LjMgNzQuNS0yMC42IDEwNC4zLTQzLjJsLjcgLjhjMTEuOCAxMy41IDMyLjUgMTQuMiA0NS4yIDEuNXMxMi0zMy40LTEuNS00NS4ybC0uOC0uN2MyMi42LTI5LjggMzcuOS02NS41IDQzLjItMTA0LjNsMS4xIC4xYzE3LjkgMS4yIDMzLTEzIDMzLTMwLjlzLTE1LjItMzIuMS0zMy0zMC45bC0xLjEgLjF6TTE2My4yIDEyNS42YzE5LjMtMTMuOCA0MS45LTIzLjQgNjYuMi0yNy41bDQuMyA2NC40Yy0xMCAyLjQtMTkuNSA2LjQtMjggMTEuNmwtNDIuNS00OC42em0tNjUgMTAzLjhjNC4xLTI0LjQgMTMuNy00Ni45IDI3LjUtNjYuMmw0OC42IDQyLjVjLTUuMyA4LjUtOS4yIDE4LTExLjYgMjhsLTY0LjQtNC4zem0yNy41IDExOS40Yy0xMy44LTE5LjMtMjMuNC00MS45LTI3LjUtNjYuMmw2NC40LTQuM2MyLjQgMTAuMSA2LjQgMTkuNSAxMS42IDI4bC00OC42IDQyLjV6bTEwMy44IDY1Yy0yNC40LTQuMS00Ni45LTEzLjctNjYuMi0yNy40bDQyLjUtNDguNmM4LjUgNS4zIDE4IDkuMiAyOCAxMS42bC00LjMgNjQuNHptMTE5LjQtMjcuNGMtMTkuMyAxMy44LTQxLjkgMjMuNC02Ni4yIDI3LjRsLTQuMy02NC40YzEwLTIuNCAxOS41LTYuNCAyOC0xMS42bDQyLjUgNDguNnptNjUtMTAzLjhjLTQuMSAyNC40LTEzLjcgNDYuOS0yNy40IDY2LjJsLTQ4LjYtNDIuNWM1LjMtOC42IDkuMi0xOCAxMS42LTI4bDY0LjQgNC4zem0tNjUtMTU2LjlsLTQyLjUgNDguNmMtOC42LTUuMy0xOC05LjItMjgtMTEuNmw0LjMtNjQuNGMyNC40IDQuMSA0Ni45IDEzLjcgNjYuMiAyNy41ek0yNTYgMjI0YTMyIDMyIDAgMSAxIDAgNjQgMzIgMzIgMCAxIDEgMC02NHoiXX0scEFlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJhdHRlcnktcXVhcnRlciIsaWNvbjpbNjQwLDUxMixbImJhdHRlcnktMiJdLCJmMjQzIiwiTTUyOCAxMjhjOC44IDAgMTYgNy4yIDE2IDE2bDAgMjI0YzAgOC44LTcuMiAxNi0xNiAxNmwtNDE2IDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTIyNGMwLTguOCA3LjItMTYgMTYtMTZsNDE2IDB6TTExMiA2NGMtNDQuMiAwLTgwIDM1LjgtODAgODBsMCAyMjRjMCA0NC4yIDM1LjggODAgODAgODBsNDE2IDBjNDQuMiAwIDgwLTM1LjggODAtODBsMC00OGMxNy43IDAgMzItMTQuMyAzMi0zMmwwLTY0YzAtMTcuNy0xNC4zLTMyLTMyLTMybDAtNDhjMC00NC4yLTM1LjgtODAtODAtODBMMTEyIDY0em01NiAxMTJjLTEzLjMgMC0yNCAxMC43LTI0IDI0bDAgMTEyYzAgMTMuMyAxMC43IDI0IDI0IDI0bDY0IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRsMC0xMTJjMC0xMy4zLTEwLjctMjQtMjQtMjRsLTY0IDB6Il19LEV6cj1wQWUsJHpyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFua2giLGljb246WzMyMCw1MTIsWzk3NjVdLCJmNjQ0IiwiTTk2IDEyOGMwLTM1LjMgMjguNy02NCA2NC02NHM2NCAyOC43IDY0IDY0YzAgNDEuNi0yMC43IDc2LjYtNDYuNiAxMDQuMS01LjkgNi4yLTExLjggMTEuOC0xNy40IDE2LjctNS42LTQuOS0xMS41LTEwLjUtMTcuNC0xNi43LTI1LjktMjcuNS00Ni42LTYyLjYtNDYuNi0xMDQuMXpNMTYwIDBDODkuMyAwIDMyIDU3LjMgMzIgMTI4IDMyIDE4MC40IDUzLjUgMjIzLjUgNzguOCAyNTZMMzIgMjU2Yy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDk2IDAgMCAxNjBjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTE2MCA5NiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC00Ni44IDBDMjY2LjUgMjIzLjUgMjg4IDE4MC40IDI4OCAxMjggMjg4IDU3LjMgMjMwLjcgMCAxNjAgMHoiXX0sUHpyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImRpYW1vbmQiLGljb246WzUxMiw1MTIsWzk4MzBdLCJmMjE5IiwiTTE3IDIxNUwyMTUgMTdDMjI1LjkgNi4xIDI0MC42IDAgMjU2IDBzMzAuMSA2LjEgNDEgMTdMNDk1IDIxNWMxMC45IDEwLjkgMTcgMjUuNiAxNyA0MXMtNi4xIDMwLjEtMTcgNDFMMjk3IDQ5NWMtMTAuOSAxMC45LTI1LjYgMTctNDEgMTdzLTMwLjEtNi4xLTQxLTE3TDE3IDI5N0M2LjEgMjg2LjEgMCAyNzEuNCAwIDI1NnM2LjEtMzAuMSAxNy00MXoiXX0sSXpyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InN1YnNjcmlwdCIsaWNvbjpbNTc2LDUxMixbXSwiZjEyYyIsIk05NiA2NEM3OC4zIDY0IDY0IDc4LjMgNjQgOTZzMTQuMyAzMiAzMiAzMmwxNS4zIDAgODkuNiAxMjgtODkuNiAxMjgtMTUuMyAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDMyIDBjMTAuNCAwIDIwLjItNS4xIDI2LjItMTMuNkwyNDAgMzExLjggMzI1LjggNDM0LjRjNiA4LjYgMTUuOCAxMy42IDI2LjIgMTMuNmwzMiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC0xNS4zIDAtODkuNi0xMjggODkuNi0xMjggMTUuMyAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC0zMiAwYy0xMC40IDAtMjAuMiA1LjEtMjYuMiAxMy42TDI0MCAyMDAuMiAxNTQuMiA3Ny42QzE0OC4yIDY5LjEgMTM4LjQgNjQgMTI4IDY0TDk2IDY0ek01NDQgMzIwYzAtMTEuMS01LjctMjEuNC0xNS4yLTI3LjJzLTIxLjItNi40LTMxLjEtMS40bC0zMiAxNmMtMTUuOCA3LjktMjIuMiAyNy4xLTE0LjMgNDIuOSA1LjYgMTEuMiAxNi45IDE3LjcgMjguNiAxNy43bDAgODBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsNjQgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwwLTEyOHoiXX0saEFlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InJ1cGVlLXNpZ24iLGljb246WzQ0OCw1MTIsWzgzNjAsInJ1cGVlIl0sImYxNTYiLCJNMCA2NEMwIDQ2LjMgMTQuMyAzMiAzMiAzMmw4MCAwYzc5LjUgMCAxNDQgNjQuNSAxNDQgMTQ0IDAgNTQuMy0zMCAxMDEuNS03NC40IDEyNi4xbDQxIDEzNi43YzUuMSAxNi45LTQuNSAzNC44LTIxLjUgMzkuOHMtMzQuOC00LjUtMzkuOC0yMS41TDEyMC4xIDMxOS44Yy0yLjcgLjEtNS40IC4yLTguMSAuMmwtNDggMCAwIDEyOGMwIDE3LjctMTQuMyAzMi0zMiAzMlMwIDQ2NS43IDAgNDQ4TDAgNjR6TTY0IDI1Nmw0OCAwYzQ0LjIgMCA4MC0zNS44IDgwLTgwcy0zNS44LTgwLTgwLTgwbC00OCAwIDAgMTYwem0yODUuMS0zMmwzNC45IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTM0LjkgMGMtNy4yIDAtMTMuMSA1LjktMTMuMSAxMy4xIDAgNS43IDMuNyAxMC43IDkuMSAxMi41bDQ5LjQgMTUuOWMzMS45IDEwLjMgNTMuNSAzOS45IDUzLjUgNzMuNCAwIDQyLjYtMzQuNSA3Ny4xLTc3LjEgNzcuMUwzMjAgNDgwYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDUwLjkgMGM3LjIgMCAxMy4xLTUuOSAxMy4xLTEzLjEgMC01LjctMy43LTEwLjctOS4xLTEyLjVsLTQ5LjQtMTUuOWMtMzEuOS0xMC4zLTUzLjUtMzkuOS01My41LTczLjQgMC00Mi42IDM0LjUtNzcuMSA3Ny4xLTc3LjF6Il19LE56cj1oQWUsRnpyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBlcnNvbi1yaWZsZSIsaWNvbjpbNTEyLDUxMixbXSwiZTU0ZSIsIk00MTYgMEwzODQgMGMtOC44IDAtMTYgNy4yLTE2IDE2czcuMiAxNiAxNiAxNmwwIDEwMC4zYy05LjYgNS41LTE2IDE1LjktMTYgMjcuN2wwIDMyYy0xNy43IDAtMzIgMTQuMy0zMiAzMmwwIDE0NGMwIDE3LjcgMTQuMyAzMiAzMiAzMmwxNiAwIDAgOTZjMCA4LjggNy4yIDE2IDE2IDE2bDU5LjUgMGMxMC40IDAgMTgtOS44IDE1LjUtMTkuOWwtMjMtOTIuMSA0NCAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTE2YzAtOC44LTcuMi0xNi0xNi0xNmwtNDggMCAwLTI2LjcgNTMuMS0xNy43YzYuNS0yLjIgMTAuOS04LjMgMTAuOS0xNS4ybDAtODQuNWMwLTguOC03LjItMTYtMTYtMTZsLTE2IDBjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDU2LTE2IDUuMyAwLTEwOS4zYzAtMTEuOC02LjQtMjIuMi0xNi0yNy43TDQzMiAxNmMwLTguOC03LjItMTYtMTYtMTZ6TTIyNCAyMDhDMTE4IDIwOCAzMiAyOTQgMzIgNDAwbDAgNDhjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTQ4YzAtMzIuNSAxMi4xLTYyLjEgMzItODQuN2wwIDE5Ni43IDE2MCAwIDAtMjkzLjFjLTIwLTcuMS00MS42LTEwLjktNjQtMTAuOXpNMjgwIDg4YTcyIDcyIDAgMSAwIC0xNDQgMCA3MiA3MiAwIDEgMCAxNDQgMHoiXX0sT3pyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImQiLGljb246WzM4NCw1MTIsWzEwMF0sIjQ0IiwiTTAgNjRDMCA0Ni4zIDE0LjMgMzIgMzIgMzJsMTI4IDBjMTIzLjcgMCAyMjQgMTAwLjMgMjI0IDIyNFMyODMuNyA0ODAgMTYwIDQ4MEwzMiA0ODBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyTDAgNjR6TTY0IDk2bDAgMzIwIDk2IDBjODguNCAwIDE2MC03MS42IDE2MC0xNjBTMjQ4LjQgOTYgMTYwIDk2TDY0IDk2eiJdfSxSenI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic3F1YXJlLW5maSIsaWNvbjpbNDQ4LDUxMixbXSwiZTU3NiIsIk02NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgNDE2YzAgMzUuMyAyOC43IDY0IDY0IDY0bDMyMCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMzIwYzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDMyek05MyAxNzIuM2wzNSA2MyAwLTUxLjRjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNGwwIDE0NGMwIDEwLjktNy40IDIwLjUtMTggMjMuMnMtMjEuNy0yLTI3LTExLjZsLTM1LTYzIDAgNTEuNGMwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNGwwLTE0NGMwLTEwLjkgNy40LTIwLjUgMTgtMjMuMnMyMS43IDIgMjcgMTEuNnpNMjA4IDE4NGMwLTEzLjMgMTAuNy0yNCAyNC0yNGw4MCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC01NiAwIDAgMzIgNDAgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtNDAgMCAwIDQwYzAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0bDAtMTQ0em0xOTIgMGwwIDE0NGMwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNGwwLTE0NGMwLTEzLjMgMTAuNy0yNCAyNC0yNHMyNCAxMC43IDI0IDI0eiJdfSxCenI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidGVldGgiLGljb246WzUxMiw1MTIsW10sImY2MmUiLCJNMCA5NkMwIDYwLjcgMjguNyAzMiA2NCAzMmwzODQgMGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDMyMGMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA0ODBjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgOTZ6TTE0NCAyMDhsMCAyNGMwIDEzLjMgMTAuNyAyNCAyNCAyNGw0OCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0bDAtMjRjMC0yNi41LTIxLjUtNDgtNDgtNDhzLTQ4IDIxLjUtNDggNDh6bTEyOCAwbDAgMjRjMCAxMy4zIDEwLjcgMjQgMjQgMjRsNDggMGMxMy4zIDAgMjQtMTAuNyAyNC0yNGwwLTI0YzAtMjYuNS0yMS41LTQ4LTQ4LTQ4cy00OCAyMS41LTQ4IDQ4ek04MCAxNzZjLTE3LjcgMC0zMiAxNC4zLTMyIDMybDAgMjRjMCAxMy4zIDEwLjcgMjQgMjQgMjRsMTYgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNGwwLTI0YzAtMTcuNy0xNC4zLTMyLTMyLTMyem0zMjAgMzJsMCAyNGMwIDEzLjMgMTAuNyAyNCAyNCAyNGwxNiAwYzEzLjMgMCAyNC0xMC43IDI0LTI0bDAtMjRjMC0xNy43LTE0LjMtMzItMzItMzJzLTMyIDE0LjMtMzIgMzJ6TTQ4IDMzNmMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMTZjMC04LjgtNy4yLTE2LTE2LTE2bC0zMiAwYy04LjggMC0xNiA3LjItMTYgMTZsMCAxNnptMTQ0IDQ4YzI2LjUgMCA0OC0yMS41IDQ4LTQ4bDAtMTZjMC04LjgtNy4yLTE2LTE2LTE2bC02NCAwYy04LjggMC0xNiA3LjItMTYgMTZsMCAxNmMwIDI2LjUgMjEuNSA0OCA0OCA0OHptMTI4IDBjMjYuNSAwIDQ4LTIxLjUgNDgtNDhsMC0xNmMwLTguOC03LjItMTYtMTYtMTZsLTY0IDBjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDE2YzAgMjYuNSAyMS41IDQ4IDQ4IDQ4em0xMTItMTZjMTcuNyAwIDMyLTE0LjMgMzItMzJsMC0xNmMwLTguOC03LjItMTYtMTYtMTZsLTMyIDBjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDE2YzAgMTcuNyAxNC4zIDMyIDMyIDMyeiJdfSxtQWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibWFnbmlmeWluZy1nbGFzcy1kb2xsYXIiLGljb246WzUxMiw1MTIsWyJzZWFyY2gtZG9sbGFyIl0sImY2ODgiLCJNNDE2IDIwOGMwIDQ1LjktMTQuOSA4OC4zLTQwIDEyMi43TDUwMi42IDQ1Ny40YzEyLjUgMTIuNSAxMi41IDMyLjggMCA0NS4zcy0zMi44IDEyLjUtNDUuMyAwTDMzMC43IDM3NkMyOTYuMyA0MDEuMSAyNTMuOSA0MTYgMjA4IDQxNiA5My4xIDQxNiAwIDMyMi45IDAgMjA4UzkzLjEgMCAyMDggMCA0MTYgOTMuMSA0MTYgMjA4ek0yMTIgOTZjLTExIDAtMjAgOS0yMCAyMGwwIDRjLTI4LjggLjMtNTIgMjMuNy01MiA1Mi41IDAgMjUuNyAxOC41IDQ3LjYgNDMuOSA1MS44bDQxLjcgN2M2IDEgMTAuNCA2LjIgMTAuNCAxMi4zIDAgNi45LTUuNiAxMi41LTEyLjUgMTIuNUwxNjggMjU2Yy0xMSAwLTIwIDktMjAgMjBzOSAyMCAyMCAyMGwyNCAwIDAgNGMwIDExIDkgMjAgMjAgMjBzMjAtOSAyMC0yMGwwLTQuN2MyNS00LjEgNDQtMjUuNyA0NC01MS44IDAtMjUuNy0xOC41LTQ3LjYtNDMuOS01MS44bC00MS43LTdjLTYtMS0xMC40LTYuMi0xMC40LTEyLjMgMC02LjkgNS42LTEyLjUgMTIuNS0xMi41bDQ3LjUgMGMxMSAwIDIwLTkgMjAtMjBzLTktMjAtMjAtMjBsLTggMCAwLTRjMC0xMS05LTIwLTIwLTIweiJdfSxIenI9bUFlLHF6cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJkdW1wc3Rlci1maXJlIixpY29uOls2NDAsNTEyLFtdLCJmNzk0IiwiTTE2NC4zIDY0TDEzOC43IDE5MiA1NiAxOTJjLTEzLjMgMC0yNC0xMC43LTI0LTI0bDAtNC4xYzAtMi42IC40LTUuMSAxLjItNy42TDU4LjUgODAuNEM2MS44IDcwLjYgNzEgNjQgODEuMyA2NGw4MyAwem0yMy40IDEyOGwyNS42LTEyOCA4Mi43IDAgMCAxMjgtMTA4LjMgMHpNMzQ0IDY0bDgyLjcgMCAxNiA4MGMtMTQuNyAuMi0yOS4zIDUuNS00MC45IDE1LjktMTEuNSAxMC4zLTIyLjUgMjEtMzIuOCAzMi4xbC0yNC45IDAgMC0xMjh6TTk2IDI0MGwyMzMuMiAwYy02LjQgOC44LTEyLjMgMTcuNi0xNy43IDI2LjMtMjEuNCAzNC43LTM5LjUgNzYuMS0zOS41IDExNS44IDAgMTcuMSAyLjEgMzMuOCA2IDQ5LjlsLTEyMC40IDAgMS45IDEwLjNjMy4yIDE3LjQtOC40IDM0LTI1LjggMzcuMnMtMzQtOC40LTM3LjItMjUuOEM3MSAzMTMuMyA1OCAyNDIuMSA1Ny43IDI0MEw5NiAyNDB6bTUxMi03MmMwIDExLTcuNCAyMC4zLTE3LjUgMjMuMS0uOS0uOC0xLjctMS42LTIuNi0yLjQtMjEuOC0yMC01NC4zLTIxLjgtNzgtNS41LTQuMi00LjMtOC41LTguNS0xMi45LTEyLjZsLTIxLjMtMTA2LjYgODMgMGMxMC4zIDAgMTkuNSA2LjYgMjIuOCAxNi40bDI1LjMgNzUuOWMuOCAyLjQgMS4yIDUgMS4yIDcuNmwwIDQuMXpNNTA1LjcgMjQwLjNMNTE4IDIyNi41YzUuNC02LjEgMTMuMy04LjggMjAuOS04LjkgNy4yIDAgMTQuMyAyLjYgMTkuOSA3LjggMTkuNyAxOC4zIDM5LjggNDMuMiA1NSA3MC42IDE1LjEgMjcuMiAyNi4yIDU4LjEgMjYuMiA4OC4xIDAgODguNy03MS4zIDE1OS44LTE2MCAxNTkuOC04OS42IDAtMTYwLTcxLjMtMTYwLTE1OS44IDAtMzcuMyAxNi03My40IDM2LjgtMTA0LjUgMjAuOS0zMS4zIDQ3LjUtNTkgNzAuOS04MC4yIDUuNy01LjIgMTMuMS03LjcgMjAuMy03LjVzMTMuNCAzLjIgMTguOCA3LjVjMTQuNCAxMS40IDM4LjkgNDAuNyAzOC45IDQwLjd6TTU0NCA0MzIuMmMwLTM2LjUtMzctNzMtNTQuOC04OC40LTUuNC00LjctMTMuMS00LjctMTguNSAwLTE3LjcgMTUuNC01NC44IDUxLjktNTQuOCA4OC40IDAgMzUuMyAyOC43IDY0IDY0IDY0czY0LTI4LjcgNjQtNjR6Il19LGp6cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ1cGxvYWQiLGljb246WzQ0OCw1MTIsW10sImYwOTMiLCJNMjU2IDEwOS4zTDI1NiAzMjBjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC0yMTAuNy00MS40IDQxLjRjLTEyLjUgMTIuNS0zMi44IDEyLjUtNDUuMyAwcy0xMi41LTMyLjggMC00NS4zbDk2LTk2YzEyLjUtMTIuNSAzMi44LTEyLjUgNDUuMyAwbDk2IDk2YzEyLjUgMTIuNSAxMi41IDMyLjggMCA0NS4zcy0zMi44IDEyLjUtNDUuMyAwTDI1NiAxMDkuM3pNMjI0IDQwMGM0NC4yIDAgODAtMzUuOCA4MC04MGw4MCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMzJjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NGwwLTMyYzAtMzUuMyAyOC43LTY0IDY0LTY0bDgwIDBjMCA0NC4yIDM1LjggODAgODAgODB6bTE0NCAyNGEyNCAyNCAwIDEgMCAwLTQ4IDI0IDI0IDAgMSAwIDAgNDh6Il19LEgyZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ1c2VyLXNsYXNoIixpY29uOls1NzYsNTEyLFs2MjcxNCwidXNlci1hbHQtc2xhc2giLCJ1c2VyLWxhcmdlLXNsYXNoIl0sImY1MDYiLCJNNDEtMjQuOWMtOS40LTkuNC0yNC42LTkuNC0zMy45IDBTLTIuMy0uMyA3IDkuMWw1MjggNTI4YzkuNCA5LjQgMjQuNiA5LjQgMzMuOSAwczkuNC0yNC42IDAtMzMuOUwzMTEuNSAyNDUuN2M1NS0xMC45IDk2LjUtNTkuNSA5Ni41LTExNy43IDAtNjYuMy01My43LTEyMC0xMjAtMTIwLTU4LjIgMC0xMDYuOCA0MS41LTExNy43IDk2LjVMNDEtMjQuOXpNMjM1LjYgMzA1LjRDMTQ3LjkgMzE2LjYgODAgMzkxLjUgODAgNDgyLjMgODAgNDk4LjcgOTMuMyA1MTIgMTA5LjcgNTEybDMzMi41IDAtMjA2LjYtMjA2LjZ6Il19LFZ6cj1IMmUsVXpyPUgyZSxXenI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYXJyb3ctbGVmdCIsaWNvbjpbNTEyLDUxMixbODU5Ml0sImYwNjAiLCJNOS40IDIzMy40Yy0xMi41IDEyLjUtMTIuNSAzMi44IDAgNDUuM2wxNjAgMTYwYzEyLjUgMTIuNSAzMi44IDEyLjUgNDUuMyAwczEyLjUtMzIuOCAwLTQ1LjNMMTA5LjMgMjg4IDQ4MCAyODhjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTM3MC43IDAgMTA1LjQtMTA1LjRjMTIuNS0xMi41IDEyLjUtMzIuOCAwLTQ1LjNzLTMyLjgtMTIuNS00NS4zIDBsLTE2MCAxNjB6Il19LEd6cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ2aWFsLXZpcnVzIixpY29uOls1NzYsNTEyLFtdLCJlNTk3IiwiTTY0IDMyQzY0IDE0LjMgNzguMyAwIDk2IDBMMzIwIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsMCAxNTEuN2MtMTguNSAwLTM3IDctNTEuMSAyMS4xLTIxLjYgMjEuNi0yNi42IDUzLjYtMTUgNzkuOS0yNi45IDEwLjQtNDUuOSAzNi42LTQ1LjkgNjcuMXMxOSA1Ni43IDQ1LjkgNjcuMWMtNy4zIDE2LjUtOCAzNS4yLTIuMyA1Mi4yLTEzLjQgNS43LTI4LjIgOC44LTQzLjYgOC44LTYxLjkgMC0xMTItNTAuMS0xMTItMTEyTDk2IDY0Qzc4LjMgNjQgNjQgNDkuNyA2NCAzMnptOTYgMzJsMCAxMjggOTYgMCAwLTEyOC05NiAwek0yODAgNDA4Yy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0YzI4LjggMCA0My4yLTM0LjggMjIuOS01NS4yLTkuNC05LjQtOS40LTI0LjYgMC0zMy45czI0LjYtOS40IDMzLjkgMGMyMC40IDIwLjQgNTUuMiA1LjkgNTUuMi0yMi45IDAtMTMuMyAxMC43LTI0IDI0LTI0czI0IDEwLjcgMjQgMjRjMCAyOC44IDM0LjggNDMuMiA1NS4yIDIyLjkgOS40LTkuNCAyNC42LTkuNCAzMy45IDBzOS40IDI0LjYgMCAzMy45Yy0yMC40IDIwLjQtNS45IDU1LjIgMjIuOSA1NS4yIDEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0Yy0yOC44IDAtNDMuMiAzNC44LTIyLjkgNTUuMiA5LjQgOS40IDkuNCAyNC42IDAgMzMuOXMtMjQuNiA5LjQtMzMuOSAwYy0yMC40LTIwLjQtNTUuMi01LjktNTUuMiAyMi45IDAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0YzAtMjguOC0zNC44LTQzLjItNTUuMi0yMi45LTkuNCA5LjQtMjQuNiA5LjQtMzMuOSAwcy05LjQtMjQuNiAwLTMzLjljMjAuNC0yMC40IDUuOS01NS4yLTIyLjktNTUuMnptMTA0LTMyYTI0IDI0IDAgMSAwIDAtNDggMjQgMjQgMCAxIDAgMCA0OHptODggNDBhMjQgMjQgMCAxIDAgLTQ4IDAgMjQgMjQgMCAxIDAgNDggMHoiXX0sWXpyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNoZWNrLWRvdWJsZSIsaWNvbjpbMzg0LDUxMixbXSwiZjU2MCIsIk0yNDkuOSA2Ni44YzEwLjQtMTQuMyA3LjItMzQuMy03LjEtNDQuN3MtMzQuMy03LjItNDQuNyA3LjFsLTEwNiAxNDUuNy0zNy41LTM3LjVjLTEyLjUtMTIuNS0zMi44LTEyLjUtNDUuMyAwcy0xMi41IDMyLjggMCA0NS4zbDY0IDY0YzYuNiA2LjYgMTUuOCAxMCAyNS4xIDkuM3MxNy45LTUuNSAyMy40LTEzLjFsMTI4LTE3NnptMTI4IDEzNmMxMC40LTE0LjMgNy4yLTM0LjMtNy4xLTQ0LjdzLTM0LjMtNy4yLTQ0LjcgNy4xbC0xNzAgMjMzLjctNjkuNS02OS41Yy0xMi41LTEyLjUtMzIuOC0xMi41LTQ1LjMgMHMtMTIuNSAzMi44IDAgNDUuM2w5NiA5NmM2LjYgNi42IDE1LjggMTAgMjUuMSA5LjNzMTcuOS01LjUgMjMuNC0xMy4xbDE5Mi0yNjR6Il19LFp6cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwYXciLGljb246WzUxMiw1MTIsW10sImYxYjAiLCJNMjM0LjUgOTIuOWMxNC4zIDQyLjktLjMgODYuMi0zMi42IDk2LjhzLTcwLjEtMTUuNi04NC40LTU4LjUgLjMtODYuMiAzMi42LTk2LjggNzAuMSAxNS42IDg0LjQgNTguNXpNMTAwLjQgMTk4LjZjMTguOSAzMi40IDE0LjMgNzAuMS0xMC4yIDg0LjFzLTU5LjctLjktNzguNS0zMy4zLTE0LjMtNzAuMSAxMC4yLTg0LjEgNTkuNyAuOSA3OC41IDMzLjN6TTY5LjIgNDAxLjJDMTIxLjYgMjU5LjkgMjE0LjcgMjI0IDI1NiAyMjRzMTM0LjQgMzUuOSAxODYuOCAxNzcuMmMzLjYgOS43IDUuMiAyMC4xIDUuMiAzMC41bDAgMS42YzAgMjUuOC0yMC45IDQ2LjctNDYuNyA0Ni43LTExLjUgMC0yMi45LTEuNC0zNC00LjJsLTg4LTIyYy0xNS4zLTMuOC0zMS4zLTMuOC00Ni42IDBsLTg4IDIyYy0xMS4xIDIuOC0yMi41IDQuMi0zNCA0LjItMjUuOCAwLTQ2LjctMjAuOS00Ni43LTQ2LjdsMC0xLjZjMC0xMC40IDEuNi0yMC44IDUuMi0zMC41ek00MjEuOCAyODIuN2MtMjQuNS0xNC0yOS4xLTUxLjctMTAuMi04NC4xczU0LTQ3LjMgNzguNS0zMy4zIDI5LjEgNTEuNyAxMC4yIDg0LjEtNTQgNDcuMy03OC41IDMzLjN6TTMxMC4xIDE4OS43Yy0zMi4zLTEwLjYtNDYuOS01My45LTMyLjYtOTYuOHM1Mi4xLTY5LjEgODQuNC01OC41IDQ2LjkgNTMuOSAzMi42IDk2LjgtNTIuMSA2OS4xLTg0LjQgNTguNXoiXX0scTJlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhlbG1ldC1zYWZldHkiLGljb246WzU3Niw1MTIsWyJoYXJkLWhhdCIsImhhdC1oYXJkIl0sImY4MDciLCJNMzUyIDI2NGwwLTIwMGMwLTE3LjctMTQuMy0zMi0zMi0zMmwtNjQgMGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJsMCAyMDBjMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjRsMC0xODUuOUM5MCAxMDkuOCAzMiAxOTEuOCAzMiAyODhsMCA2NCA1MTIgMCAwLTY0Yy0xLTk1LjItNTguNC0xNzcuNy0xNDQtMjA5LjhMNDAwIDI2NGMwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNHpNNDAgNDAwYy0yMi4xIDAtNDAgMTcuOS00MCA0MHMxNy45IDQwIDQwIDQwbDQ5NiAwYzIyLjEgMCA0MC0xNy45IDQwLTQwcy0xNy45LTQwLTQwLTQwTDQwIDQwMHoiXX0sWHpyPXEyZSxRenI9cTJlLEt6cj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJlIixpY29uOlszMjAsNTEyLFsxMDFdLCI0NSIsIk0zMiAzMkMxNC4zIDMyIDAgNDYuMyAwIDY0TDAgNDQ4YzAgMTcuNyAxNC4zIDMyIDMyIDMybDI1NiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC0yMjQgMCAwLTEyOCAxNjAgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtMTYwIDAgMC0xMjggMjI0IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJMMzIgMzJ6Il19LGdBZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmYWNlLWxhdWdoLXNxdWludCIsaWNvbjpbNTEyLDUxMixbImxhdWdoLXNxdWludCJdLCJmNTliIiwiTTI1NiA1MTJhMjU2IDI1NiAwIDEgMCAwLTUxMiAyNTYgMjU2IDAgMSAwIDAgNTEyek0xMDcuNyAzMzIuMUMxMDIgMzE4IDExMy40IDMwNCAxMjguNiAzMDRsMjU0LjkgMGMxNS4yIDAgMjYuNiAxNCAyMC45IDI4LjEtMjMuOCA1OC42LTgxLjIgOTkuOS0xNDguMyA5OS45cy0xMjQuNi00MS4zLTE0OC4zLTk5Ljl6bTE1LTE4OC44YzQuNS02LjggMTMuMy05LjIgMjAuNi01LjVsNzkuNiA0MGM1LjQgMi43IDguOCA4LjIgOC44IDE0LjNzLTMuNCAxMS42LTguOCAxNC4zbC03OS42IDQwYy03LjMgMy42LTE2LjEgMS4zLTIwLjYtNS41cy0zLjEtMTUuOSAzLjEtMjEuMUwxNTkgMTkyIDEyNS44IDE2NC4zYy02LjItNS4yLTcuNi0xNC4zLTMuMS0yMS4xem0yNjMuNiAyMS4xTDM1MyAxOTIgMzg2LjIgMjE5LjdjNi4yIDUuMiA3LjYgMTQuMyAzLjEgMjEuMXMtMTMuMyA5LjItMjAuNiA1LjVsLTc5LjYtNDBjLTUuNC0yLjctOC44LTguMi04LjgtMTQuM3MzLjQtMTEuNiA4LjgtMTQuM2w3OS42LTQwYzcuMy0zLjYgMTYuMS0xLjMgMjAuNiA1LjVzMy4xIDE1LjktMy4xIDIxLjF6Il19LEp6cj1nQWUseEFlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImRvd24tbGVmdC1hbmQtdXAtcmlnaHQtdG8tY2VudGVyIixpY29uOls1MTIsNTEyLFsiY29tcHJlc3MtYWx0Il0sImY0MjIiLCJNNDM5LjUgN2M5LjQtOS40IDI0LjYtOS40IDMzLjkgMGwzMiAzMmM5LjQgOS40IDkuNCAyNC42IDAgMzMuOWwtODcgODcgMzkgMzljNi45IDYuOSA4LjkgMTcuMiA1LjIgMjYuMlM0NTAuMiAyNDAgNDQwLjUgMjQwbC0xNDQgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRsMC0xNDRjMC05LjcgNS44LTE4LjUgMTQuOC0yMi4yczE5LjMtMS43IDI2LjIgNS4ybDM5IDM5IDg3LTg3ek03Mi41IDI3MmwxNDQgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNGwwIDE0NGMwIDkuNy01LjggMTguNS0xNC44IDIyLjJzLTE5LjMgMS43LTI2LjItNS4ybC0zOS0zOS04NyA4N2MtOS40IDkuNC0yNC42IDkuNC0zMy45IDBsLTMyLTMyYy05LjQtOS40LTkuNC0yNC42IDAtMzMuOWw4Ny04Ny0zOS0zOWMtNi45LTYuOS04LjktMTcuMi01LjItMjYuMlM2Mi44IDI3MiA3Mi41IDI3MnoiXX0sZUNyPXhBZSx0Q3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZ2lmdHMiLGljb246WzU3Niw1MTIsW10sImY3OWMiLCJNMjAyLTMwLjZjMTIuNSA0LjQgMTkgMTguMSAxNC42IDMwLjZsLTguMiAyMy4xIDI1LjQtMTguNWMxMC43LTcuOCAyNS43LTUuNCAzMy41IDUuM3M1LjQgMjUuNy01LjMgMzMuNUwyMzMuOCA2NCAyNzIgNjRjMjYuNSAwIDQ4IDIxLjUgNDggNDhsMCAyLjFjLTU0LjcgMTAuNC05NiA1OC40LTk2IDExNmwwIDEuOWMwIDguOSAxIDE3LjUgMi44IDI1LjktMTEuOSAxNy44LTE4LjggMzkuMS0xOC44IDYyLjFsMCAxMjhjMCAyMy44IDcuNCA0NS45IDIwLjEgNjRMNDggNTEyYy0yNi41IDAtNDgtMjEuNS00OC00OEwwIDExMkMwIDg1LjUgMjEuNSA2NCA0OCA2NGwzOC4yIDAtMjguMy0yMC42QzQ3LjIgMzUuNiA0NC44IDIwLjYgNTIuNiA5LjlTNzUuNC0zLjIgODYuMSA0LjZsMjcuNCAyMC04LjMtMjVDMTAxLTEzIDEwNy44LTI2LjYgMTIwLjQtMzAuOHMyNi4yIDIuNiAzMC40IDE1LjJsOS45IDI5LjggMTAuNy0zMC4yYzQuNC0xMi41IDE4LjEtMTkgMzAuNi0xNC42ek00ODkuOSAyMDhjLTcuNSAwLTE0LjUgMy44LTE4LjYgMTAuMUw0NDYuOSAyNTYgNDg4IDI1NmMxMy4zIDAgMjQtMTAuNyAyNC0yNGwwLTEuOWMwLTEyLjItOS45LTIyLjEtMjIuMS0yMi4xek0zODUuMSAyNTZsLTI0LjQtMzcuOWMtNC4xLTYuMy0xMS4xLTEwLjEtMTguNi0xMC4xLTEyLjIgMC0yMi4xIDkuOS0yMi4xIDIyLjFsMCAxLjljMCAxMy4zIDEwLjcgMjQgMjQgMjRsNDEuMSAwek0yODEuOSAyNjguNWMtNi4zLTEwLjctOS45LTIzLjItOS45LTM2LjVsMC0xLjljMC0zOC43IDMxLjQtNzAuMSA3MC4xLTcwLjEgMjMuOCAwIDQ2IDEyLjEgNTguOSAzMi4xbDE1IDIzLjIgMTUtMjMuMmMxMi45LTIwIDM1LjEtMzIuMSA1OC45LTMyLjEgMzguNyAwIDcwLjEgMzEuNCA3MC4xIDcwLjFsMCAxLjljMCAxMy4zLTMuNiAyNS44LTkuOSAzNi41IDE1LjcgMTEuNyAyNS45IDMwLjQgMjUuOSA1MS41bDAgMTI4YzAgMzUuMy0yOC43IDY0LTY0IDY0bC03MiAwIDAtMjA4LTQ4IDAgMCAyMDgtNzIgMGMtMzUuMyAwLTY0LTI4LjctNjQtNjRsMC0xMjhjMC0yMS4xIDEwLjItMzkuOCAyNS45LTUxLjV6Il19LHJDcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJiZWQiLGljb246WzU3Niw1MTIsWzEyODcxNl0sImYyMzYiLCJNMzIgMzJjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCAyMjQgMjI0IDAgMC0xMjhjMC0xNy43IDE0LjMtMzIgMzItMzJsMTYwIDBjNTMgMCA5NiA0MyA5NiA5NmwwIDIyNGMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTY0LTQ0OCAwIDAgNjRjMCAxNy43LTE0LjMgMzItMzIgMzJTMCA0NjUuNyAwIDQ0OEwwIDY0QzAgNDYuMyAxNC4zIDMyIDMyIDMyem04MCAxNjBhNjQgNjQgMCAxIDEgMTI4IDAgNjQgNjQgMCAxIDEgLTEyOCAweiJdfSxhQ3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibW9uZXktYmlsbC10cmFuc2ZlciIsaWNvbjpbNjQwLDUxMixbXSwiZTUyOCIsIk0zMSAxMDVjLTkuNC05LjQtOS40LTI0LjYgMC0zMy45TDEwMy0xYzkuNC05LjQgMjQuNi05LjQgMzMuOSAwczkuNCAyNC42IDAgMzMuOWwtMzEgMzEgNjcuNyAwIDAgMCAzMzguMyAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMTc4LjItNS4xLTUuMWMtMjguMS0yOC4xLTczLjctMjguMS0xMDEuOCAwLTI3LjIgMjcuMi0yOC4xIDcwLjYtMi44IDk4LjlsNjcuNyAwLTMxLTMxYy05LjQtOS40LTkuNC0yNC42IDAtMzMuOXMyNC42LTkuNCAzMy45IDBsNzIgNzJjOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlsLTcyIDcyYy05LjQgOS40LTI0LjYgOS40LTMzLjkgMHMtOS40LTI0LjYgMC0zMy45bDMxLTMxLTQwNi4xIDBjLTM1LjMgMC02NC0yOC43LTY0LTY0bDAtMTc4LjIgNS4xIDUuMWMyOC4xIDI4LjEgNzMuNyAyOC4xIDEwMS44IDAgMjcuMi0yNy4yIDI4LjEtNzAuNiAyLjgtOTguOWwtNjcuNyAwIDMxIDMxYzkuNCA5LjQgOS40IDI0LjYgMCAzMy45cy0yNC42IDkuNC0zMy45IDBMMzEgMTA1ek00MTYgMjU2YTk2IDk2IDAgMSAwIC0xOTIgMCA5NiA5NiAwIDEgMCAxOTIgMHptODgtNjQuNWM0LjQgLjUgOC0zLjEgOC03LjVsMC00OGMwLTQuNC0zLjYtOC04LThsLTQ4IDBjLTQuNCAwLTguMSAzLjYtNy41IDggMy42IDI5IDI2LjYgNTEuOSA1NS41IDU1LjV6bS0zNjggMTI5Yy00LjQtLjUtOCAzLjEtOCA3LjVsMCA0OGMwIDQuNCAzLjYgOCA4IDhsNDggMGM0LjQgMCA4LjEtMy42IDcuNS04LTMuNi0yOS0yNi42LTUxLjktNTUuNS01NS41eiJdfSxiQWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGVyc29uLXJ1bm5pbmciLGljb246WzQ0OCw1MTIsWzEyNzkzOSwicnVubmluZyJdLCJmNzBjIiwiTTI1Ni41LTMyYTU2IDU2IDAgMSAxIDAgMTEyIDU2IDU2IDAgMSAxIDAtMTEyek0xMjMuNiAxNzZjLTMuMyAwLTYuMiAyLTcuNCA1TDk0LjIgMjM1LjljLTYuNiAxNi40LTI1LjIgMjQuNC00MS42IDE3LjhzLTI0LjQtMjUuMi0xNy44LTQxLjZsMjEuOS01NC45QzY3LjcgMTI5LjkgOTQuMSAxMTIgMTIzLjYgMTEybDk3LjMgMGMyOC41IDAgNTQuOCAxNS4xIDY5LjEgMzkuN2wzMi44IDU2LjMgNjEuNiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC02MS42IDBjLTIyLjggMC00My44LTEyLjEtNTUuMy0zMS44bC0xMC0xNy4xLTIwLjcgNzAuNCA3NS40IDIyLjZjMjcuNyA4LjMgNDEuOCAzOSAzMC4xIDY1LjVMMjg1LjcgNTA5Yy03LjIgMTYuMi0yNi4xIDIzLjQtNDIuMiAxNi4ycy0yMy40LTI2LjEtMTYuMi00Mi4ybDQ5LjItMTEwLjgtOTUuOS0yOC44Yy0zMi43LTkuOC01Mi00My43LTQzLjctNzYuOGwyMi43LTkwLjYtMzUuOSAwem0tOCAxODFjMTMuMyAxNC45IDMwLjcgMjYuMyA1MS4yIDMyLjRsNC43IDEuNC02LjkgMTkuM2MtNS44IDE2LjMtMTYgMzAuOC0yOS4zIDQxLjhMNTIuOSA1MTkuOGMtMTMuNiAxMS4yLTMzLjggOS4zLTQ1LTQuM3MtOS4zLTMzLjggNC4zLTQ1bDgyLjQtNjcuOWM0LjUtMy43IDcuOC04LjUgOS44LTEzLjlMMTE1LjYgMzU3eiJdfSxpQ3I9YkFlLHZBZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjaXJjbGUtY2hldnJvbi1kb3duIixpY29uOls1MTIsNTEyLFsiY2hldnJvbi1jaXJjbGUtZG93biJdLCJmMTNhIiwiTTI1NiAwYTI1NiAyNTYgMCAxIDAgMCA1MTIgMjU2IDI1NiAwIDEgMCAwLTUxMnpNMTM1IDI0MWMtOS40LTkuNC05LjQtMjQuNiAwLTMzLjlzMjQuNi05LjQgMzMuOSAwbDg3IDg3IDg3LTg3YzkuNC05LjQgMjQuNi05LjQgMzMuOSAwczkuNCAyNC42IDAgMzMuOUwyNzMgMzQ1Yy05LjQgOS40LTI0LjYgOS40LTMzLjkgMEwxMzUgMjQxeiJdfSxvQ3I9dkFlLG5Dcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ1c2VyLW51cnNlIixpY29uOls0NDgsNTEyLFtdLCJmODJmIiwiTTk2IDQ0LjljMC0xMi43IDcuNS0yNC4yIDE5LjItMjkuM2w5Ni00MmM4LjItMy42IDE3LjUtMy42IDI1LjcgMGw5NiA0MkMzNDQuNSAyMC43IDM1MiAzMi4yIDM1MiA0NC45bDAgOTkuMWMwIDcwLjctNTcuMyAxMjgtMTI4IDEyOFM5NiAyMTQuNyA5NiAxNDRsMC05OS4xek0zMDQgMTI4bC0xMTEuNiAwLS40IDAtNDggMCAwIDE2YzAgNDQuMiAzNS44IDgwIDgwIDgwczgwLTM1LjggODAtODBsMC0xNnpNMjA4IDE2bDAgMTYtMTYgMGMtNC40IDAtOCAzLjYtOCA4bDAgMTZjMCA0LjQgMy42IDggOCA4bDE2IDAgMCAxNmMwIDQuNCAzLjYgOCA4IDhsMTYgMGM0LjQgMCA4LTMuNiA4LThsMC0xNiAxNiAwYzQuNCAwIDgtMy42IDgtOGwwLTE2YzAtNC40LTMuNi04LTgtOGwtMTYgMCAwLTE2YzAtNC40LTMuNi04LTgtOEwyMTYgOGMtNC40IDAtOCAzLjYtOCA4ek0xNDIuNiAzMjNjLTYuNS00LjktMTUuMi02LjItMjIuNi0yLjgtNjEuNCAyOC4yLTEwNC4xIDkwLjItMTA0LjEgMTYyLjEgMCAxNi40IDEzLjMgMjkuNyAyOS43IDI5LjdsMzU2LjYgMGMxNi40IDAgMjkuNy0xMy4zIDI5LjctMjkuNyAwLTcyLTQyLjctMTM0LTEwNC4xLTE2Mi4xLTcuNC0zLjQtMTYuMS0yLjEtMjIuNiAyLjhsLTY3IDUwLjJjLTguNSA2LjQtMjAuMyA2LjQtMjguOCAwbC02Ny01MC4yeiJdfSx5QWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmFjZS1raXNzLXdpbmstaGVhcnQiLGljb246WzY0MCw1MTIsWzEyODUzNiwia2lzcy13aW5rLWhlYXJ0Il0sImY1OTgiLCJNNTQzLjcgMjY4LjNjLjItNC4xIC4zLTguMiAuMy0xMi4zIDAtMTQxLjQtMTE0LjYtMjU2LTI1Ni0yNTZTMzIgMTE0LjYgMzIgMjU2IDE0Ni42IDUxMiAyODggNTEyYzQxLjQgMCA4MC41LTkuOCAxMTUuMS0yNy4zLTcuNi0xNy4xLTE2LjEtMzguOC0yMS44LTYxLjctNy43LTMwLjUtMTQuMS03Ni4yIDguMi0xMTQuN2wyLjctNC42YzI5LjUtNTEgOTQuNy02OC41IDE0NS43LTM5IDIgMS4yIDQgMi40IDUuOSAzLjd6TTI0MCAzMDRjMC04LjggNy4yLTE2IDE2LTE2bDMyIDBjMjYuNSAwIDQ4IDIxLjUgNDggNDggMCAxMi4zLTQuNiAyMy41LTEyLjIgMzIgNy42IDguNSAxMi4yIDE5LjcgMTIuMiAzMiAwIDI2LjUtMjEuNSA0OC00OCA0OGwtMzIgMGMtOC44IDAtMTYtNy4yLTE2LTE2czcuMi0xNiAxNi0xNmwxNiAwYzguOCAwIDE2LTcuMiAxNi0xNnMtNy4yLTE2LTE2LTE2bC0xNiAwYy04LjggMC0xNi03LjItMTYtMTZzNy4yLTE2IDE2LTE2bDE2IDBjOC44IDAgMTYtNy4yIDE2LTE2cy03LjItMTYtMTYtMTZsLTE2IDBjLTguOCAwLTE2LTcuMi0xNi0xNnpNMjA4IDE3NmEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6bTE1MiAyMGMtMTEgMC0yMCA5LTIwIDIwcy05IDIwLTIwIDIwLTIwLTktMjAtMjBjMC0zMy4xIDI2LjktNjAgNjAtNjBsMTYgMGMzMy4xIDAgNjAgMjYuOSA2MCA2MCAwIDExLTkgMjAtMjAgMjBzLTIwLTktMjAtMjAtOS0yMC0yMC0yMGwtMTYgMHpNNTQyLjggMzUwYy0yLjItMTguMy0xMi45LTM0LjYtMjguOS00My44LTI4LjEtMTYuMi02My45LTYuNi04MC4xIDIxLjVsLTIuNyA0LjZjLTI0LjUgNDIuNSA3LjkgMTE3LjkgMjQuNCAxNTAuOCA1LjEgMTAuMSAxNS41IDE2LjEgMjYuOCAxNS41IDM2LjctMi4yIDExOC4yLTExLjcgMTQyLjgtNTQuMmwyLjctNC42YzE2LjItMjguMSA2LjYtNjMuOS0yMS41LTgwLjEtMTYtOS4yLTM1LjQtMTAuNC01Mi40LTMuMWwtOS44IDQuMi0xLjMtMTAuNnoiXX0sc0NyPXlBZSxsQ3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmlsbCIsaWNvbjpbNTEyLDUxMixbXSwiZjU3NSIsIk0yOTYgNjRjNi45IDAgMTMuNSAyLjcgMTguMyA3LjZMNDQwLjQgMTk3LjdjNC45IDQuOSA3LjYgMTEuNSA3LjYgMTguM3MtMi43IDEzLjUtNy42IDE4LjNMMzg2LjcgMjg4IDY1LjMgMjg4YzEuMy0zLjkgMy40LTcuNCA2LjMtMTAuM2w5Ni40LTk2LjQgMzMuNCAzMy40YzEyLjUgMTIuNSAzMi44IDEyLjUgNDUuMyAwczEyLjUtMzIuOCAwLTQ1LjNMMjEzLjMgMTM2IDI3Ny43IDcxLjZjNC45LTQuOSAxMS41LTcuNiAxOC4zLTcuNnpNMTIyLjcgMTM2TDI2LjMgMjMyLjRDOS41IDI0OS4zIDAgMjcyLjEgMCAyOTZzOS41IDQ2LjcgMjYuMyA2My42TDE1Mi40IDQ4NS43QzE2OS4zIDUwMi41IDE5Mi4xIDUxMiAyMTYgNTEyczQ2LjctOS41IDYzLjYtMjYuM0w0ODUuNyAyNzkuNkM1MDIuNSAyNjIuNyA1MTIgMjM5LjkgNTEyIDIxNnMtOS41LTQ2LjctMjYuMy02My42TDM1OS42IDI2LjNDMzQyLjcgOS41IDMxOS45IDAgMjk2IDBzLTQ2LjcgOS41LTYzLjYgMjYuM0wxNjggOTAuNyAxMTguNiA0MS40Yy0xMi41LTEyLjUtMzIuOC0xMi41LTQ1LjMgMHMtMTIuNSAzMi44IDAgNDUuM0wxMjIuNyAxMzZ6Il19LHdBZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtb25leS1iaWxsLTEtd2F2ZSIsaWNvbjpbNTEyLDUxMixbIm1vbmV5LWJpbGwtd2F2ZS1hbHQiXSwiZjUzYiIsIk0wIDEwOS41TDAgNDE5LjZjMCAxOS40IDExLjggMzcuMyAzMC4zIDQzLjMgOTQgMzAgMTU4LjggOC40IDIyMy4zLTEzLjEgNjIuNC0yMC44IDEyNC40LTQxLjUgMjEyLjEtMTUuMyAyMi4yIDYuNiA0Ni4yLTguOCA0Ni4yLTMybDAtMzEwLjFjMC0xOS40LTExLjgtMzcuMy0zMC4zLTQzLjMtOTQtMzAtMTU4LjgtOC40LTIyMy4zIDEzLjEtNjIuNCAyMC44LTEyNC40IDQxLjUtMjEyLjEgMTUuMy0yMi4yLTYuNi00Ni4zIDguOC00Ni4zIDMyek0yNTYgMzY4Yy01MyAwLTk2LTUwLjEtOTYtMTEyczQzLTExMiA5Ni0xMTIgOTYgNTAuMSA5NiAxMTItNDMgMTEyLTk2IDExMnpNMTI3LjEgNDA1LjVjLjcgNC40LTIuOCA4LjEtNy4yIDguMS0xNS43IDAtMzIuMS0xLjgtNTAtNi4xLTMuNS0uOC02LTQtNi03LjdMNjQgMzYwYzAtNC40IDMuNi04LjEgOC03LjUgMjguMSAzLjUgNTAuNiAyNS4yIDU1LjIgNTN6TTQ0OCAzNTQuNmMwIDUtNC42IDguOC05LjUgOC0xNS40LTIuNS0zMC4yLTMuOS00NC40LTQuMy00LjktLjEtOC43LTQuNS03LjItOS4yIDcuMy0yMy43IDI4LTQxLjQgNTMuMi00NC42IDQuNC0uNSA4IDMuMSA4IDcuNWwwIDQyLjZ6bS04LTE5NS4xYy0yOC4xLTMuNS01MC42LTI1LjItNTUuMi01My0uNy00LjQgMi44LTguMSA3LjItOC4xIDE1LjcgMCAzMi4xIDEuOCA1MCA2LjEgMy41IC44IDYgNCA2IDcuN2wwIDM5LjljMCA0LjQtMy42IDguMS04IDcuNXptLTMyMi4xLTUuOGM0LjkgLjEgOC43IDQuNSA3LjIgOS4yLTcuMyAyMy43LTI4IDQxLjQtNTMuMiA0NC42LTQuNCAuNS04LTMuMS04LTcuNWwwLTQyLjZjMC01IDQuNi04LjggOS41LTggMTUuNCAyLjUgMzAuMiAzLjkgNDQuNCA0LjN6TTI0MCAxODhjLTExIDAtMjAgOS0yMCAyMCAwIDkuNyA2LjkgMTcuNyAxNiAxOS42bDAgNDguNC00IDBjLTExIDAtMjAgOS0yMCAyMHM5IDIwIDIwIDIwbDQ4IDBjMTEgMCAyMC05IDIwLTIwcy05LTIwLTIwLTIwbC00IDAgMC02OGMwLTExLTktMjAtMjAtMjBsLTE2IDB6Il19LGNDcj13QWUsZENyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImxhbmRtYXJrIixpY29uOls1MTIsNTEyLFsxMjc5NjNdLCJmNjZmIiwiTTIzOC43IDUuMWMxMC41LTYuOCAyNC4xLTYuOCAzNC42IDBsMjI0IDE0NGMxMS45IDcuNyAxNy40IDIyLjMgMTMuNCAzNS45cy0xNi41IDIzLTMwLjcgMjNsLTMyIDAgMCAyMDggNTEuMiAzOC40YzguMSA2IDEyLjggMTUuNSAxMi44IDI1LjYgMCAxNy43LTE0LjMgMzItMzIgMzJMMzIgNTEyYy0xNy43IDAtMzItMTQuMy0zMi0zMiAwLTEwLjEgNC43LTE5LjYgMTIuOC0yNS42bDUxLjItMzguNCAwIDAgMC0yMDgtMzIgMGMtMTQuMiAwLTI2LjctOS40LTMwLjctMjNzMS41LTI4LjMgMTMuNC0zNS45bDIyNC0xNDR6TTMzNiAyMDhsMCAyMDggNjQgMCAwLTIwOC02NCAwek0yMjQgNDE2bDY0IDAgMC0yMDgtNjQgMCAwIDIwOHpNMTEyIDIwOGwwIDIwOCA2NCAwIDAtMjA4LTY0IDB6Il19LHVDcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtdXNpYyIsaWNvbjpbNTEyLDUxMixbMTI3OTI1XSwiZjAwMSIsIk00NjggN2M3LjYgNi4xIDEyIDE1LjMgMTIgMjVsMCAzMDRjMCA0NC4yLTQzIDgwLTk2IDgwcy05Ni0zNS44LTk2LTgwIDQzLTgwIDk2LTgwYzExLjIgMCAyMiAxLjYgMzIgNC42bDAtMTE2LjctMjI0IDQ5LjggMCAyMDYuM2MwIDQ0LjItNDMgODAtOTYgODBzLTk2LTM1LjgtOTYtODAgNDMtODAgOTYtODBjMTEuMiAwIDIyIDEuNiAzMiA0LjZMMTI4IDk2YzAtMTUgMTAuNC0yOCAyNS4xLTMxLjJsMjg4LTY0YzkuNS0yLjEgMTkuNCAuMiAyNyA2LjN6Il19LGZDcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJib29rLW1lZGljYWwiLGljb246WzQ0OCw1MTIsW10sImY3ZTYiLCJNOTYgNTEybDMyMCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybDAtNjYuN2MxOC42LTYuNiAzMi0yNC40IDMyLTQ1LjNsMC0yODhjMC0yNi41LTIxLjUtNDgtNDgtNDhMOTYgMEM0MyAwIDAgNDMgMCA5NkwwIDQxNmMwIDUzIDQzIDk2IDk2IDk2ek02NCA0MTZjMC0xNy43IDE0LjMtMzIgMzItMzJsMjU2IDAgMCA2NC0yNTYgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJ6TTE5MiAxMjBjMC04LjggNy4yLTE2IDE2LTE2bDMyIDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgNDAgNDAgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTQwIDAgMCA0MGMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTQwLTQwIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyYzAtOC44IDcuMi0xNiAxNi0xNmw0MCAwIDAtNDB6Il19LE1BZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzaHVmZmxlIixpY29uOls1MTIsNTEyLFsxMjgyNTYsInJhbmRvbSJdLCJmMDc0IiwiTTQwMy44IDM0LjRjMTItNSAyNS43LTIuMiAzNC45IDYuOWw2NCA2NGM2IDYgOS40IDE0LjEgOS40IDIyLjZzLTMuNCAxNi42LTkuNCAyMi42bC02NCA2NGMtOS4yIDkuMi0yMi45IDExLjktMzQuOSA2LjlTMzg0IDIwNC45IDM4NCAxOTJsMC0zMi0zMiAwYy0xMC4xIDAtMTkuNiA0LjctMjUuNiAxMi44bC0zMi40IDQzLjItNDAtNTMuMyAyMS4yLTI4LjNDMjkzLjMgMTEwLjIgMzIxLjggOTYgMzUyIDk2bDMyIDAgMC0zMmMwLTEyLjkgNy44LTI0LjYgMTkuOC0yOS42ek0xNTQgMjk2bDQwIDUzLjMtMjEuMiAyOC4zQzE1NC43IDQwMS44IDEyNi4yIDQxNiA5NiA0MTZsLTY0IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsNjQgMGMxMC4xIDAgMTkuNi00LjcgMjUuNi0xMi44TDE1NCAyOTZ6TTQzOC42IDQ3MC42Yy05LjIgOS4yLTIyLjkgMTEuOS0zNC45IDYuOVMzODQgNDYwLjkgMzg0IDQ0OGwwLTMyLTMyIDBjLTMwLjIgMC01OC43LTE0LjItNzYuOC0zOC40TDEyMS42IDE3Mi44Yy02LTguMS0xNS41LTEyLjgtMjUuNi0xMi44bC02NCAwYy0xNy43IDAtMzItMTQuMy0zMi0zMlMxNC4zIDk2IDMyIDk2bDY0IDBjMzAuMiAwIDU4LjcgMTQuMiA3Ni44IDM4LjRMMzI2LjQgMzM5LjJjNiA4LjEgMTUuNSAxMi44IDI1LjYgMTIuOGwzMiAwIDAtMzJjMC0xMi45IDcuOC0yNC42IDE5LjgtMjkuNnMyNS43LTIuMiAzNC45IDYuOWw2NCA2NGM2IDYgOS40IDE0LjEgOS40IDIyLjZzLTMuNCAxNi42LTkuNCAyMi42bC02NCA2NHoiXX0scENyPU1BZSxoQ3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidW5kZXJsaW5lIixpY29uOlszODQsNTEyLFtdLCJmMGNkIiwiTTAgMzJDMCAxNC4zIDE0LjMgMCAzMiAwTDk2IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJTMTEzLjcgNjQgOTYgNjRsMCAxNjBjMCA1MyA0MyA5NiA5NiA5NnM5Ni00MyA5Ni05NmwwLTE2MGMtMTcuNyAwLTMyLTE0LjMtMzItMzJTMjcwLjMgMCAyODggMGw2NCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybDAgMTYwYzAgODguNC03MS42IDE2MC0xNjAgMTYwUzMyIDMxMi40IDMyIDIyNEwzMiA2NEMxNC4zIDY0IDAgNDkuNyAwIDMyek0wIDQ4MGMwLTE3LjcgMTQuMy0zMiAzMi0zMmwzMjAgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMkwzMiA1MTJjLTE3LjcgMC0zMi0xNC4zLTMyLTMyeiJdfSxtQ3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYnVpbGRpbmctdXNlciIsaWNvbjpbNjQwLDUxMixbXSwiZTRkYSIsIk02NCA2NEM2NCAyOC43IDkyLjcgMCAxMjggMEwzODQgMGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDEyMS4zYy00Ni45IDE5LTgwIDY1LTgwIDExOC43IDAgMjcuNyA4LjggNTMuNCAyMy44IDc0LjQtNTEuNSAyMS04Ny44IDcxLjYtODcuOCAxMzAuNyAwIDEgMCAxLjkgMCAyLjlsLTE3NiAwYy0zNS4zIDAtNjQtMjguNy02NC02NEw2NCA2NHpNMjA4IDQwMGwwIDY0IDUzLjQgMGM3LjItMjkuNCAyMS4zLTU2LjEgNDAuNC03OC4zLTYuMS0xOS41LTI0LjMtMzMuNy00NS44LTMzLjctMjYuNSAwLTQ4IDIxLjUtNDggNDh6TTMzOSAyMjQuM2MtMS0uMi0yLS4zLTMtLjNsLTMyIDBjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDMyYzAgOC44IDcuMiAxNiAxNiAxNmwxNi43IDBjMi4xLTIyLjggOC40LTQ0LjMgMTguMy02My43ek0xNzYgOTZjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDMyYzAgOC44IDcuMiAxNiAxNiAxNmwzMiAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMHptMTEyIDE2bDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMzJjMC04LjgtNy4yLTE2LTE2LTE2bC0zMiAwYy04LjggMC0xNiA3LjItMTYgMTZ6TTE3NiAyMjRjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDMyYzAgOC44IDcuMiAxNiAxNiAxNmwzMiAwYzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMHptMjQwIDgwYTgwIDgwIDAgMSAxIDE2MCAwIDgwIDgwIDAgMSAxIC0xNjAgMHpNMzUyIDUxMmMwLTUzIDQzLTk2IDk2LTk2bDk2IDBjNTMgMCA5NiA0MyA5NiA5NiAwIDE3LjctMTQuMyAzMi0zMiAzMmwtMjI0IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyeiJdfSxnQ3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicm9ib3QiLGljb246WzY0MCw1MTIsWzEyOTMwMl0sImY1NDQiLCJNMzUyIDBjMC0xNy43LTE0LjMtMzItMzItMzJTMjg4LTE3LjcgMjg4IDBsMCA2NC05NiAwYy01MyAwLTk2IDQzLTk2IDk2bDAgMjI0YzAgNTMgNDMgOTYgOTYgOTZsMjU2IDBjNTMgMCA5Ni00MyA5Ni05NmwwLTIyNGMwLTUzLTQzLTk2LTk2LTk2bC05NiAwIDAtNjR6TTE2MCAzNjhjMC0xMy4zIDEwLjctMjQgMjQtMjRsMzIgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtMzIgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjR6bTEyMCAwYzAtMTMuMyAxMC43LTI0IDI0LTI0bDMyIDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTMyIDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0em0xMjAgMGMwLTEzLjMgMTAuNy0yNCAyNC0yNGwzMiAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC0zMiAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHpNMjI0IDE3NmE0OCA0OCAwIDEgMSAwIDk2IDQ4IDQ4IDAgMSAxIDAtOTZ6bTE0NCA0OGE0OCA0OCAwIDEgMSA5NiAwIDQ4IDQ4IDAgMSAxIC05NiAwek02NCAyMjRjMC0xNy43LTE0LjMtMzItMzItMzJTMCAyMDYuMyAwIDIyNGwwIDk2YzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC05NnptNTQ0LTMyYy0xNy43IDAtMzIgMTQuMy0zMiAzMmwwIDk2YzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC05NmMwLTE3LjctMTQuMy0zMi0zMi0zMnoiXX0sanc9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGx1cyIsaWNvbjpbNDQ4LDUxMixbMTAxMzMsNjE1NDMsImFkZCJdLCIyYiIsIk0yNTYgNjRjMC0xNy43LTE0LjMtMzItMzItMzJzLTMyIDE0LjMtMzIgMzJsMCAxNjAtMTYwIDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsMTYwIDAgMCAxNjBjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTE2MCAxNjAgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtMTYwIDAgMC0xNjB6Il19LHhDcj1qdyxtbGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY29weSIsaWNvbjpbNDQ4LDUxMixbXSwiZjBjNSIsIk0xOTIgMGMtMzUuMyAwLTY0IDI4LjctNjQgNjRsMCAyNTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMTkyIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0yMDAuNmMwLTE3LjQtNy4xLTM0LjEtMTkuNy00Ni4yTDM3MC42IDE3LjhDMzU4LjcgNi40IDM0Mi44IDAgMzI2LjMgMEwxOTIgMHpNNjQgMTI4Yy0zNS4zIDAtNjQgMjguNy02NCA2NEwwIDQ0OGMwIDM1LjMgMjguNyA2NCA2NCA2NGwxOTIgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTE2LTY0IDAgMCAxNi0xOTIgMCAwLTI1NiAxNiAwIDAtNjQtMTYgMHoiXX0sYkNyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNoZXNzLWtpbmciLGljb246WzQ0OCw1MTIsWzk4MThdLCJmNDNmIiwiTTIyNC0zMmMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDMyIDMyIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTMyIDAgMCA2NCAxNTMuOCAwYzIxLjEgMCAzOC4yIDE3LjEgMzguMiAzOC4yIDAgNi40LTEuNiAxMi43LTQuNyAxOC4zTDM1MiAzODQgNDA4LjIgNDU0LjNjNSA2LjMgNy44IDE0LjEgNy44IDIyLjIgMCAxOS42LTE1LjkgMzUuNS0zNS41IDM1LjVMNjcuNSA1MTJjLTE5LjYgMC0zNS41LTE1LjktMzUuNS0zNS41IDAtOC4xIDIuNy0xNS45IDcuOC0yMi4yTDk2IDM4NCA0LjcgMjE2LjZDMS42IDIxMC45IDAgMjA0LjYgMCAxOTguMiAwIDE3Ny4xIDE3LjEgMTYwIDM4LjIgMTYwbDE1My44IDAgMC02NC0zMiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDMyIDAgMC0zMmMwLTE3LjcgMTQuMy0zMiAzMi0zMnoiXX0sdkNyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhvdXNlLWZsb29kLXdhdGVyIixpY29uOls2NDAsNTEyLFtdLCJlNTBlIiwiTTQ5NiAyMDhsNC41IDBjMTUuMiAwIDI3LjUtMTIuMyAyNy41LTI3LjUgMC03LjktMy40LTE1LjUtOS40LTIwLjdMMzQ4IDEwLjVDMzQwLjMgMy43IDMzMC4zIDAgMzIwIDBzLTIwLjMgMy43LTI4IDEwLjVMMTIxLjQgMTU5LjhjLTYgNS4yLTkuNCAxMi44LTkuNCAyMC43IDAgMTUuMiAxMi4zIDI3LjUgMjcuNSAyNy41bDQuNSAwIDAgOTQuNGMyMC4zLTkuNCA0Mi4xLTE0LjIgNjQtMTQuNCAzMy4xLS4yIDY2LjMgMTAuMiA5NC40IDMxLjQgMjIuMSAxNi42IDI5LjEgMTYuNiA1MS4yIDAgMjcuNS0yMC43IDU5LjktMzEuMiA5Mi40LTMxLjQgMTYuOS0uMSAzMy44IDIuNiA1MCA4bDAtODh6bS0yMjQtOGMwLTEzLjMgMTAuNy0yNCAyNC0yNGw0OCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0bDAgNDhjMCAxMy4zLTEwLjcgMjQtMjQgMjRsLTQ4IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0bDAtNDh6TTQ3NC42IDQxMi4xYzE5IDE0LjQgNDEuOSAyOC4yIDY3LjIgMzMuMyAyNi41IDUuNCA1NC4zIC44IDgwLjctMTkuMSAxMC42LTggMTIuNy0yMyA0LjctMzMuNnMtMjMtMTIuNy0zMy42LTQuN2MtMTQuOSAxMS4yLTI4LjYgMTMuMS00Mi4zIDEwLjMtMTQuOS0zLTMwLjktMTEuOS00Ny44LTI0LjYtMzguNC0yOS05MC41LTI5LTEyOSAwLTI0IDE4LjEtNDAuNyAyNi4zLTU0LjUgMjYuM3MtMzAuNS04LjItNTQuNS0yNi4zYy0zOC40LTI5LTkwLjUtMjktMTI5IDAtMjEuNiAxNi4zLTQxLjMgMjUuOC01OC45IDI1LjctOS42LS4xLTE5LjktMy0zMS4yLTExLjUtMTAuNi04LTI1LjYtNS45LTMzLjYgNC43UzcgNDE4LjMgMTcuNiA0MjYuM2MxOS4xIDE0LjQgMzkuNCAyMSA1OS44IDIxLjEgMzMuOSAuMiA2NC4zLTE3LjQgODguMS0zNS4zIDIxLjMtMTYuMSA0OS45LTE2LjEgNzEuMiAwIDI0LjIgMTguMyA1Mi4zIDM1LjkgODMuNCAzNS45czU5LjEtMTcuNyA4My40LTM1LjljMjEuMy0xNi4xIDQ5LjktMTYuMSA3MS4yIDB6bS03MS4yIDk2YzIxLjMtMTYuMSA0OS45LTE2LjEgNzEuMiAwIDE5IDE0LjQgNDEuOSAyOC4yIDY3LjIgMzMuMyAyNi41IDUuNCA1NC4zIC44IDgwLjctMTkuMSAxMC42LTggMTIuNy0yMyA0LjctMzMuNnMtMjMtMTIuNy0zMy42LTQuN2MtMTQuOSAxMS4yLTI4LjYgMTMuMS00Mi4zIDEwLjMtMTQuOS0zLTMwLjktMTEuOS00Ny44LTI0LjYtMzguNC0yOS05MC41LTI5LTEyOSAwLTI0IDE4LjEtNDAuNyAyNi4zLTU0LjUgMjYuM3MtMzAuNS04LjItNTQuNS0yNi4zYy0zOC40LTI5LTkwLjUtMjktMTI5IDAtMjEuNiAxNi4zLTQxLjMgMjUuOC01OC45IDI1LjctOS42LS4xLTE5LjktMy0zMS4yLTExLjUtMTAuNi04LTI1LjYtNS45LTMzLjYgNC43UzcgNTE0LjMgMTcuNiA1MjIuM2MxOS4xIDE0LjQgMzkuNCAyMSA1OS44IDIxLjEgMzMuOSAuMiA2NC4zLTE3LjQgODguMS0zNS4zIDIxLjMtMTYuMSA0OS45LTE2LjEgNzEuMiAwIDI0LjIgMTguMyA1Mi4zIDM1LjkgODMuNCAzNS45czU5LjEtMTcuNyA4My40LTM1Ljl6Il19LHlDcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJiaXRjb2luLXNpZ24iLGljb246WzMyMCw1MTIsW10sImUwYjQiLCJNNjQgMjRDNjQgMTAuNyA3NC43IDAgODggMHMyNCAxMC43IDI0IDI0bDAgNDAgMzIgMCAwLTQwYzAtMTMuMyAxMC43LTI0IDI0LTI0czI0IDEwLjcgMjQgMjRsMCA0MS4xYzU0LjMgNy44IDk2IDU0LjQgOTYgMTEwLjkgMCAyNC4yLTcuNyA0Ni42LTIwLjcgNjQuOSAzMS43IDE5LjggNTIuNyA1NSA1Mi43IDk1LjEgMCA2MS45LTUwLjEgMTEyLTExMiAxMTJsLTE2IDAgMCA0MGMwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNGwwLTQwLTMyIDAgMCA0MGMwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNGwwLTQwLTIyLjMgMEMxOC43IDQ0OCAwIDQyOS4zIDAgNDA2LjNMMCAxMDEuNkMwIDgwLjggMTYuOCA2NCAzNy42IDY0TDY0IDY0IDY0IDI0em0wIDIwMGwxMTIgMGMyNi41IDAgNDgtMjEuNSA0OC00OHMtMjEuNS00OC00OC00OGwtMTEyIDAgMCA5NnptMTEyIDY0bC0xMTIgMCAwIDk2IDE0NCAwYzI2LjUgMCA0OC0yMS41IDQ4LTQ4cy0yMS41LTQ4LTQ4LTQ4bC0zMiAweiJdfSx3Q3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYm94IixpY29uOls0NDgsNTEyLFsxMjgyMzBdLCJmNDY2IiwiTTM2OS40IDEyOGwtMzQuMy00OC0yMjIuMSAwLTM0LjMgNDggMjkwLjcgMHpNMCAxNDguNWMwLTEzLjMgNC4yLTI2LjMgMTEuOS0zNy4yTDYwLjkgNDIuOEM3Mi45IDI2IDkyLjMgMTYgMTEyLjkgMTZsMjIyLjEgMGMyMC43IDAgNDAuMSAxMCA1Mi4xIDI2LjhsNDguOSA2OC41YzcuOCAxMC45IDExLjkgMjMuOSAxMS45IDM3LjJMNDQ4IDQxNmMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA0ODBjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgMTQ4LjV6Il19LGtBZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzcXVhcmUtcGx1cyIsaWNvbjpbNDQ4LDUxMixbNjE4NDYsInBsdXMtc3F1YXJlIl0sImYwZmUiLCJNNjQgMzJDMjguNyAzMiAwIDYwLjcgMCA5NkwwIDQxNmMwIDM1LjMgMjguNyA2NCA2NCA2NGwzMjAgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTMyMGMwLTM1LjMtMjguNy02NC02NC02NEw2NCAzMnpNMjAwIDM0NGwwLTY0LTY0IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjRsNjQgMCAwLTY0YzAtMTMuMyAxMC43LTI0IDI0LTI0czI0IDEwLjcgMjQgMjRsMCA2NCA2NCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC02NCAwIDAgNjRjMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjR6Il19LE1Dcj1rQWUsU0FlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFycm93cy1sZWZ0LXJpZ2h0IixpY29uOls1NzYsNTEyLFsiYXJyb3dzLWgiXSwiZjA3ZSIsIk00NzAuNiAzNzQuNmw5Ni05NmMxMi41LTEyLjUgMTIuNS0zMi44IDAtNDUuM2wtOTYtOTZjLTEyLjUtMTIuNS0zMi44LTEyLjUtNDUuMyAwcy0xMi41IDMyLjggMCA0NS4zbDQxLjQgNDEuNC0zNTcuNSAwIDQxLjQtNDEuNGMxMi41LTEyLjUgMTIuNS0zMi44IDAtNDUuM3MtMzIuOC0xMi41LTQ1LjMgMGwtOTYgOTZjLTYgNi05LjQgMTQuMS05LjQgMjIuNnMzLjQgMTYuNiA5LjQgMjIuNmw5NiA5NmMxMi41IDEyLjUgMzIuOCAxMi41IDQ1LjMgMHMxMi41LTMyLjggMC00NS4zbC00MS40LTQxLjQgMzU3LjUgMC00MS40IDQxLjRjLTEyLjUgMTIuNS0xMi41IDMyLjggMCA0NS4zczMyLjggMTIuNSA0NS4zIDB6Il19LGtDcj1TQWUsU0NyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZhbiIsaWNvbjpbNTEyLDUxMixbXSwiZjg2MyIsIk0xNjAgMTQ0YzAtNzkuNSA2NC41LTE0NCAxNDQtMTQ0IDguOCAwIDE2IDcuMiAxNiAxNmwwIDE1Mi4yYzE1LTUuMyAzMS4yLTguMiA0OC04LjIgNzkuNSAwIDE0NCA2NC41IDE0NCAxNDQgMCA4LjgtNy4yIDE2LTE2IDE2bC0xNTIuMiAwYzUuMyAxNSA4LjIgMzEuMiA4LjIgNDggMCA3OS41LTY0LjUgMTQ0LTE0NCAxNDQtOC44IDAtMTYtNy4yLTE2LTE2bDAtMTUyLjJjLTE1IDUuMy0zMS4yIDguMi00OCA4LjItNzkuNSAwLTE0NC02NC41LTE0NC0xNDQgMC04LjggNy4yLTE2IDE2LTE2bDE1Mi4yIDBjLTUuMy0xNS04LjItMzEuMi04LjItNDh6bTk2IDE0NGEzMiAzMiAwIDEgMCAwLTY0IDMyIDMyIDAgMSAwIDAgNjR6Il19LHpDcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjcm93IixpY29uOls2NDAsNTEyLFtdLCJmNTIwIiwiTTQ1Ni41IDBjLTQ4LjYgMC04OCAzOS40LTg4IDg4bDAgMzYtMzU1LjIgMjY2LjRDLS44IDQwMS0zLjcgNDIxIDYuOSA0MzUuMnMzMC42IDE3IDQ0LjggNi40bDc2LjgtNTcuNiAxMzEuMyAwIDQ2LjYgMTEzLjEgMSAyLjJjNS43IDEwLjcgMTguOCAxNS41IDMwLjMgMTAuOHMxNy4zLTE3LjMgMTMuOS0yOWwtLjgtMi4zLTM5LjEtOTQuOSA0MC45IDBjMS4xIDAgMi4yIDAgMy4yIDBsNDYuNiAxMTMuMiAxIDIuMmM1LjcgMTAuNyAxOC44IDE1LjUgMzAuMyAxMC44czE3LjMtMTcuMyAxMy45LTI5bC0uOC0yLjMtNDItMTAyQzQ4NS4zIDM1NC4xIDU0NC41IDI4MCA1NDQuNSAxOTJsMC03MiA4MC41LTIwLjFjOC42LTIuMSAxMy44LTEwLjggMTEuNi0xOS40LTcuMS0yOC41LTMyLjctNDguNS02Mi4xLTQ4LjVsLTUwLjEgMEM1MDguMiAxMi41IDQ4My44IDAgNDU2LjUgMHptMCA2NGEyNCAyNCAwIDEgMSAwIDQ4IDI0IDI0IDAgMSAxIDAtNDh6Il19LENDcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmaWxlLWNpcmNsZS1jaGVjayIsaWNvbjpbNTc2LDUxMixbXSwiZTVhMCIsIk05NiAwQzYwLjcgMCAzMiAyOC43IDMyIDY0bDAgMzg0YzAgMzUuMyAyOC43IDY0IDY0IDY0bDE4MCAwYy0yMi43LTMxLjUtMzYtNzAuMi0zNi0xMTIgMC0xMDAuNiA3Ny40LTE4My4yIDE3Ni0xOTEuM2wwLTM4LjFjMC0xNy02LjctMzMuMy0xOC43LTQ1LjNMMjkwLjcgMTguN0MyNzguNyA2LjcgMjYyLjUgMCAyNDUuNSAwTDk2IDB6TTM1Ny41IDE3NkwyNjQgMTc2Yy0xMy4zIDAtMjQtMTAuNy0yNC0yNEwyNDAgNTguNSAzNTcuNSAxNzZ6TTU3NiA0MDBhMTQ0IDE0NCAwIDEgMCAtMjg4IDAgMTQ0IDE0NCAwIDEgMCAyODggMHptLTg2LjYtNjAuOWM3LjEgNS4yIDguNyAxNS4yIDMuNSAyMi4zbC02NCA4OGMtMi44IDMuOC03IDYuMi0xMS43IDYuNXMtOS4zLTEuMy0xMi42LTQuNmwtNDAtNDBjLTYuMi02LjItNi4yLTE2LjQgMC0yMi42czE2LjQtNi4yIDIyLjYgMGwyNi44IDI2LjggNTMtNzIuOWM1LjItNy4xIDE1LjItOC43IDIyLjQtMy41eiJdfSxMdz17cHJlZml4OiJmYXMiLGljb25OYW1lOiJsaW5rLXNsYXNoIixpY29uOls1NzYsNTEyLFsiY2hhaW4tYnJva2VuIiwiY2hhaW4tc2xhc2giLCJ1bmxpbmsiXSwiZjEyNyIsIk00MS0yNC45Yy05LjQtOS40LTI0LjYtOS40LTMzLjkgMFMtMi4zLS4zIDcgOS4xbDUyOCA1MjhjOS40IDkuNCAyNC42IDkuNCAzMy45IDBzOS40LTI0LjYgMC0zMy45bC0xMjItMTIyYzQuMi0zLjQgOC4zLTcuMSAxMi4xLTEwLjlsNzEuMS03MS4xYzI5LjMtMjkuMyA0NS44LTY5LjEgNDUuOC0xMTAuNiAwLTg2LjQtNzAtMTU2LjUtMTU2LjUtMTU2LjUtMzcuMyAwLTczLjEgMTMuMy0xMDEuMyAzNy4yIDIwLjMgMTAuMSAzOC43IDIzLjUgNTQuNSAzOS41IDE0LjEtOC4zIDMwLjItMTIuNyA0Ni44LTEyLjcgNTEuMSAwIDkyLjUgNDEuNCA5Mi41IDkyLjUgMCAyNC41LTkuNyA0OC0yNy4xIDY1LjRsLTcxLjEgNzEuMWMtMy45IDMuOS04LjEgNy40LTEyLjYgMTAuNWwtNDcuNS00Ny41YzE2LjUtLjkgMjkuNy0xNC40IDMwLjItMzEuMSAwLTEuMyAwLTIuNiAwLTMuOSAwLTg2LjMtNjkuOS0xNTYuOS0xNTYuNS0xNTYuOS0xOS4yIDAtMzcuOSAzLjUtNTUuNSAxMC4yTDQxLTI0Ljl6TTIyNS45IDE2MGMuNiAwIDEuMSAwIDEuNyAwIDE1LjEgMCAyOS41IDMuNyA0Mi4xIDEwLjIgMS44IDEuMiAzLjYgMi4zIDUuNSAzLjEgMjYuOCAxNi4zIDQ0LjggNDUuOSA0NC44IDc5LjYgMCAuNCAwIC44IDAgMS4yTDIyNS45IDE2MHpNMzQ2LjIgNDE2TDE5MiAyNjEuOGMxLjIgODQuNiA2OS42IDE1Mi45IDE1NC4xIDE1NC4xek0xMzkuNyAyMDkuNWwtNDUuMy00NS4zLTQ4LjYgNDguNmMtMjkuMyAyOS4zLTQ1LjggNjkuMS00NS44IDExMC42IDAgODYuNCA3MCAxNTYuNSAxNTYuNSAxNTYuNSAzNy4yIDAgNzMuMS0xMy4zIDEwMS4zLTM3LjItMjAuMy0xMC4xLTM4LjgtMjMuNS01NC42LTM5LjUtMTQgOC4yLTMwLjEgMTIuNi00Ni43IDEyLjYtNTEuMSAwLTkyLjUtNDEuNC05Mi41LTkyLjUgMC0yNC41IDkuNy00OCAyNy4xLTY1LjRsNDguNi00OC42eiJdfSxfQ3I9THcsVENyPUx3LExDcj1MdyxEdz17cHJlZml4OiJmYXMiLGljb25OYW1lOiJhcnJvdy1yb3RhdGUtcmlnaHQiLGljb246WzUxMiw1MTIsWzg2MzUsImFycm93LXJpZ2h0LXJvdGF0ZSIsImFycm93LXJvdGF0ZS1mb3J3YXJkIiwicmVkbyJdLCJmMDFlIiwiTTQzNi43IDc0LjdMNDQ4IDg1LjQgNDQ4IDMyYzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJsMCAxMjhjMCAxNy43LTE0LjMgMzItMzIgMzJsLTEyOCAwYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDQ3LjkgMC03LjYtNy4yYy0uMi0uMi0uNC0uNC0uNi0uNi03NS03NS0xOTYuNS03NS0yNzEuNSAwcy03NSAxOTYuNSAwIDI3MS41IDE5Ni41IDc1IDI3MS41IDBjOC4yLTguMiAxNS41LTE2LjkgMjEuOS0yNi4xIDEwLjEtMTQuNSAzMC4xLTE4IDQ0LjYtNy45czE4IDMwLjEgNy45IDQ0LjZjLTguNSAxMi4yLTE4LjIgMjMuOC0yOS4xIDM0LjctMTAwIDEwMC0yNjIuMSAxMDAtMzYyIDBTLTI1IDE3NSA3NSA3NWM5OS45LTk5LjkgMjYxLjctMTAwIDM2MS43LS4zeiJdfSxEQ3I9RHcsQUNyPUR3LEVDcj1Edyx6QWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGVuLWNsaXAiLGljb246WzUxMiw1MTIsWyJwZW4tYWx0Il0sImYzMDUiLCJNNDA0IDBjMTkuMiAwIDM3LjYgNy42IDUxLjEgMjEuMmwzNS43IDM1LjdDNTA0LjQgNzAuNCA1MTIgODguOCA1MTIgMTA4cy03LjYgMzcuNi0yMS4yIDUxLjFMNDQ1LjkgMjA0IDMwOCA2Ni4xIDM1Mi45IDIxLjJDMzY2LjQgNy42IDM4NC44IDAgNDA0IDB6TTI3NC4xIDEwMGwwIDAgMTM3LjkgMTM3LjktMjE1LjEgMjE1LjFjLTEwLjcgMTAuNy0yNC4xIDE4LjUtMzguNyAyMi42TDMwLjQgNTExLjFjLTguMyAyLjMtMTcuMyAwLTIzLjQtNi4ycy04LjUtMTUuMS02LjItMjMuNEwzNi40IDM1My44YzQuMS0xNC42IDExLjgtMjcuOSAyMi42LTM4LjdMMjQwLjEgMTMzLjkgMjIzIDExNi45Yy05LjQtOS40LTI0LjYtOS40LTMzLjkgMEw4OSAyMTdjLTkuNCA5LjQtMjQuNiA5LjQtMzMuOSAwcy05LjQtMjQuNiAwLTMzLjlMMTU1LjEgODIuOWMyOC4xLTI4LjEgNzMuNy0yOC4xIDEwMS44IDBMMjc0LjEgMTAweiJdfSwkQ3I9ekFlLFBDcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJkb29yLWNsb3NlZCIsaWNvbjpbNDQ4LDUxMixbMTI4NjgyXSwiZjUyYSIsIk0zMiA2NEMzMiAyOC43IDYwLjcgMCA5NiAwTDM1MiAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMzg0YzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMyTDMyIDUxMmMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMkwzMiA2NHpNMzIwIDI4OGEzMiAzMiAwIDEgMCAwLTY0IDMyIDMyIDAgMSAwIDAgNjR6Il19LGoyZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJhcnJvdy1kb3duLXdpZGUtc2hvcnQiLGljb246WzU3Niw1MTIsWyJzb3J0LWFtb3VudC1hc2MiLCJzb3J0LWFtb3VudC1kb3duIl0sImYxNjAiLCJNMjQ2LjYgMzc0LjZsLTk2IDk2Yy0xMi41IDEyLjUtMzIuOCAxMi41LTQ1LjMgMGwtOTYtOTZjLTEyLjUtMTIuNS0xMi41LTMyLjggMC00NS4zczMyLjgtMTIuNSA0NS4zIDBMOTYgMzcwLjcgOTYgNjRjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDMwNi43IDQxLjQtNDEuNGMxMi41LTEyLjUgMzIuOC0xMi41IDQ1LjMgMHMxMi41IDMyLjggMCA0NS4zek0zMjAgNDgwYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDMyIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTMyIDB6bTAtMTI4Yy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDk2IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTk2IDB6bTAtMTI4Yy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDE2MCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC0xNjAgMHptMC0xMjhjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsMjI0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJMMzIwIDk2eiJdfSxJQ3I9ajJlLE5Dcj1qMmUsRkNyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNhcmV0LWRvd24iLGljb246WzMyMCw1MTIsW10sImYwZDciLCJNMTQwLjMgMzc2LjhjMTIuNiAxMC4yIDMxLjEgOS41IDQyLjgtMi4ybDEyOC0xMjhjOS4yLTkuMiAxMS45LTIyLjkgNi45LTM0LjlTMzAxLjQgMTkyIDI4OC41IDE5MmwtMjU2IDBjLTEyLjkgMC0yNC42IDcuOC0yOS42IDE5LjhTLjcgMjM3LjUgOS45IDI0Ni42bDEyOCAxMjggMi40IDIuMnoiXX0sT0NyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImsiLGljb246WzMyMCw1MTIsWzEwN10sIjRiIiwiTTMxMSA4Ni4zYzEyLjMtMTIuNyAxMi0zMi45LS43LTQ1LjJzLTMyLjktMTItNDUuMiAuN0MxNDMuNCAxNjcuMiA3Ni40IDIzNi4zIDY0IDI0OUw2NCA2NGMwLTE3LjctMTQuMy0zMi0zMi0zMlMwIDQ2LjMgMCA2NEwwIDQ0OGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMTA3IDY0LjctNjYuNyAxMzMgMTkyYzEwLjEgMTQuNSAzMCAxOC4xIDQ0LjUgOC4xczE4LjEtMzAgOC4xLTQ0LjVMMTc0LjEgMjI3LjQgMzExIDg2LjN6Il19LENBZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjaGVjay10by1zbG90IixpY29uOls1NzYsNTEyLFsidm90ZS15ZWEiXSwiZjc3MiIsIk01NTIgMjg4YzEzLjMgMCAyNCAxMC43IDI0IDI0bDAgMTA0YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDQ4MGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCAzMTJjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNGwwIDEwNGMwIDguOCA3LjIgMTYgMTYgMTZsNDQ4IDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMTA0YzAtMTMuMyAxMC43LTI0IDI0LTI0ek00MTYgMzJjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAyMjRjMCAzNS4zLTI4LjcgNjQtNjQgNjRsLTI1NiAwYy0zNS4zIDAtNjQtMjguNy02NC02NEw5NiA5NmMwLTM1LjMgMjguNy02NCA2NC02NGwyNTYgMHptLTM3LjEgODQuNmMtMTAuNy03LjgtMjUuNy01LjQtMzMuNSA1LjNsLTg1LjYgMTE3LjctMjYuNS0yNy40Yy05LjItOS41LTI0LjQtOS44LTMzLjktLjYtOS41IDkuMi05LjggMjQuNC0uNiAzMy45bDQ2LjQgNDhjNC45IDUuMSAxMS44IDcuOCAxOC45IDcuM3MxMy42LTQuMSAxNy44LTkuOEwzODQuMiAxNTAuMWM3LjgtMTAuNyA1LjQtMjUuNy01LjMtMzMuNXoiXX0sUkNyPUNBZSxCQ3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmlzaC1maW5zIixpY29uOls1NzYsNTEyLFtdLCJlNGYyIiwiTTI3NS4yIDM4LjRjLTEwLjYtOC0yNS04LjUtMzYuMy0xLjVTMjIyIDU3LjMgMjI0LjYgNzAuM2w5LjcgNDguNmMtMTkuNCA5LTM2LjkgMTkuOS01Mi40IDMxLjUtMTUuMyAxMS41LTI5IDIzLjktNDAuNyAzNi4zTDQ4LjEgMTMyLjRjLTEyLjUtNy4zLTI4LjQtNS4zLTM4LjcgNC45cy0xMi40IDI2LTUuMyAzOC42TDUwIDI1NiA0LjIgMzM2LjFjLTcuMiAxMi42LTUgMjguNCA1LjMgMzguNnMyNi4xIDEyLjIgMzguNyA0LjlsOTMuMS01NC4zYzExLjggMTIuMyAyNS40IDI0LjggNDAuNyAzNi4zIDE1LjUgMTEuNiAzMyAyMi41IDUyLjQgMzEuNWwtOS43IDQ4LjZjLTIuNiAxMyAzLjEgMjYuMyAxNC4zIDMzLjNzMjUuNiA2LjUgMzYuMy0xLjVsNzcuNi01OC4yYzU0LjktNCAxMDEuNS0yNyAxMzcuMi01My44IDM5LjItMjkuNCA2Ny4yLTY0LjcgODEuNi04OS41IDUuOC05LjkgNS44LTIyLjIgMC0zMi4xLTE0LjQtMjQuOC00Mi41LTYwLjEtODEuNi04OS41LTM1LjgtMjYuOC04Mi4zLTQ5LjgtMTM3LjItNTMuOEwyNzUuMiAzOC40ek0zODQgMjU2YTMyIDMyIDAgMSAxIDY0IDAgMzIgMzIgMCAxIDEgLTY0IDB6Il19LEhDcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjb21wcmVzcyIsaWNvbjpbNDQ4LDUxMixbXSwiZjA2NiIsIk0xNjAgNjRjMC0xNy43LTE0LjMtMzItMzItMzJTOTYgNDYuMyA5NiA2NGwwIDY0LTY0IDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsOTYgMGMxNy43IDAgMzItMTQuMyAzMi0zMmwwLTk2ek0zMiAzMjBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsNjQgMCAwIDY0YzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC05NmMwLTE3LjctMTQuMy0zMi0zMi0zMmwtOTYgMHpNMzUyIDY0YzAtMTcuNy0xNC4zLTMyLTMyLTMycy0zMiAxNC4zLTMyIDMybDAgOTZjMCAxNy43IDE0LjMgMzIgMzIgMzJsOTYgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtNjQgMCAwLTY0ek0zMjAgMzIwYy0xNy43IDAtMzIgMTQuMy0zMiAzMmwwIDk2YzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC02NCA2NCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC05NiAweiJdfSxfQWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYXJyb3ctdXAtYS16IixpY29uOls1MTIsNTEyLFsic29ydC1hbHBoYS11cCJdLCJmMTVlIiwiTTQxMi42IDQ5LjdDNDA3LjIgMzguOCAzOTYuMSAzMiAzODQgMzJzLTIzLjIgNi44LTI4LjYgMTcuN2MtNTAuNyAxMDEuMy03Ny4zIDE1NC43LTgwIDE2MC03LjkgMTUuOC0xLjUgMzUgMTQuMyA0Mi45czM1IDEuNSA0Mi45LTE0LjNsNy4yLTE0LjMgODguNCAwIDcuMiAxNC4zYzcuOSAxNS44IDI3LjEgMjIuMiA0Mi45IDE0LjNzMjIuMi0yNy4xIDE0LjMtNDIuOWMtMi43LTUuMy0yOS4zLTU4LjctODAtMTYwek0zODQgMTM1LjZsMjAuMiA0MC40LTQwLjQgMCAyMC4yLTQwLjR6TTI4OCAzMjBjMCAxNy43IDE0LjMgMzIgMzIgMzJsNTAuNyAwLTczLjQgNzMuNGMtOS4yIDkuMi0xMS45IDIyLjktNi45IDM0LjlTMzA3LjEgNDgwIDMyMCA0ODBsMTI4IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTUwLjcgMCA3My40LTczLjRjOS4yLTkuMiAxMS45LTIyLjkgNi45LTM0LjlTNDYwLjkgMjg4IDQ0OCAyODhsLTEyOCAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnpNMTUwLjYgNDEuNGMtMTIuNS0xMi41LTMyLjgtMTIuNS00NS4zIDBsLTgwIDgwYy0xMi41IDEyLjUtMTIuNSAzMi44IDAgNDUuM3MzMi44IDEyLjUgNDUuMyAwTDk2IDE0MS4zIDk2IDQ0OGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMzA2LjcgMjUuNCAyNS40YzEyLjUgMTIuNSAzMi44IDEyLjUgNDUuMyAwczEyLjUtMzIuOCAwLTQ1LjNsLTgwLTgweiJdfSxxQ3I9X0FlLGpDcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ1c2VyLWdyYWR1YXRlIixpY29uOls0NDgsNTEyLFtdLCJmNTAxIiwiTTI0MS4zLTEzYy0xMS40LTIuMy0yMy4xLTIuMy0zNC41IDBMMTkuMyAyNC41QzguMSAyNi43IDAgMzYuNiAwIDQ4IDAgNTguMyA2LjUgNjcuMyAxNiA3MC42TDE2IDE0NCAuMyAyMjIuNmMtLjIgLjktLjMgMS45LS4zIDIuOSAwIDggNi41IDE0LjYgMTQuNiAxNC42bDM0LjkgMGM4IDAgMTQuNi02LjUgMTQuNi0xNC42IDAtMS0uMS0xLjktLjMtMi45TDQ4IDE0NCA0OCA3Ny4zIDk2IDg2LjkgOTYgMTQ0YzAgNzAuNyA1Ny4zIDEyOCAxMjggMTI4czEyOC01Ny4zIDEyOC0xMjhsMC01Ny4xIDc2LjctMTUuM0M0MzkuOSA2OS4zIDQ0OCA1OS40IDQ0OCA0OHMtOC4xLTIxLjMtMTkuMy0yMy41TDI0MS4zLTEzek0yMjQgMjI0Yy00NC4yIDAtODAtMzUuOC04MC04MGwxNjAgMGMwIDQ0LjItMzUuOCA4MC04MCA4MHpNMTIwLjEgMzIwLjFDNTguNyAzNDguMyAxNiA0MTAuMyAxNiA0ODIuMyAxNiA0OTguNyAyOS4zIDUxMiA0NS43IDUxMmwxNTQuMyAwIDAtMTQ2LTU3LjQtNDNjLTYuNS00LjktMTUuMi02LjItMjIuNi0yLjh6TTI0OCA1MTJsMTU0LjMgMGMxNi40IDAgMjkuNy0xMy4zIDI5LjctMjkuNyAwLTcyLTQyLjctMTM0LTEwNC4xLTE2Mi4xLTcuNC0zLjQtMTYuMS0yLjEtMjIuNiAyLjhsLTU3LjQgNDMgMCAxNDZ6Il19LFZDcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmaWxlLWNvZGUiLGljb246WzM4NCw1MTIsW10sImYxYzkiLCJNMCA2NEMwIDI4LjcgMjguNyAwIDY0IDBMMjEzLjUgMGMxNyAwIDMzLjMgNi43IDQ1LjMgMTguN0wzNjUuMyAxMjUuM2MxMiAxMiAxOC43IDI4LjMgMTguNyA0NS4zTDM4NCA0NDhjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNTEyYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDY0em0yMDgtNS41bDAgOTMuNWMwIDEzLjMgMTAuNyAyNCAyNCAyNEwzMjUuNSAxNzYgMjA4IDU4LjV6TTE1NC4yIDI5NS42YzguNi0xMC4xIDcuNS0yNS4yLTIuNi0zMy44cy0yNS4yLTcuNS0zMy44IDIuNmwtNDggNTZjLTcuNyA5LTcuNyAyMi4yIDAgMzEuMmw0OCA1NmM4LjYgMTAuMSAyMy44IDExLjIgMzMuOCAyLjZzMTEuMi0yMy44IDIuNi0zMy44bC0zNC42LTQwLjQgMzQuNi00MC40em0xMTItMzEuMmMtOC42LTEwLjEtMjMuOC0xMS4yLTMzLjgtMi42cy0xMS4yIDIzLjgtMi42IDMzLjhsMzQuNiA0MC40LTM0LjYgNDAuNGMtOC42IDEwLjEtNy41IDI1LjIgMi42IDMzLjhzMjUuMiA3LjUgMzMuOC0yLjZsNDgtNTZjNy43LTkgNy43LTIyLjIgMC0zMS4ybC00OC01NnoiXX0sVUNyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNvYXAiLGljb246WzUxMiw1MTIsWzEyOTUzMl0sImUwNmUiLCJNMjA4LTMyYTQ4IDQ4IDAgMSAxIDAgOTYgNDggNDggMCAxIDEgMC05NnpNMzIwIDk2YTY0IDY0IDAgMSAxIDAgMTI4IDY0IDY0IDAgMSAxIDAtMTI4ek0zNTIgMGEzMiAzMiAwIDEgMSA2NCAwIDMyIDMyIDAgMSAxIC02NCAwek05NiAxNjBsMTEyIDBjMCAyMy44IDcuNCA0NS45IDIwLjEgNjRMMTYwIDIyNGMtNTMgMC05NiA0My05NiA5NnM0MyA5NiA5NiA5NmwxOTIgMGM1MyAwIDk2LTQzIDk2LTk2IDAtMzUuMS0xOC45LTY1LjktNDctODIuNiAxOS0xOS44IDMwLjctNDYuNiAzMS03Ni4xIDQ1LjQgNy42IDgwIDQ3LjEgODAgOTQuN2wwIDEyOGMwIDUzLTQzIDk2LTk2IDk2TDk2IDQ4MGMtNTMgMC05Ni00My05Ni05NkwwIDI1NmMwLTUzIDQzLTk2IDk2LTk2em02NCAxMTJsMTkyIDBjMjYuNSAwIDQ4IDIxLjUgNDggNDhzLTIxLjUgNDgtNDggNDhsLTE5MiAwYy0yNi41IDAtNDgtMjEuNS00OC00OHMyMS41LTQ4IDQ4LTQ4eiJdfSxXQ3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicmVjeWNsZSIsaWNvbjpbNTEyLDUxMixbOTg0Miw5ODUwLDk4NTFdLCJmMWI4IiwiTTE1Mi4zIDYwQzE5OC41LTIwIDMxNC0yMCAzNjAuMiA2MGwzNy4zIDY0LjYgMjcuNy0xNmM4LjQtNC45IDE4LjktNC4yIDI2LjYgMS43czExLjEgMTUuOSA4LjYgMjUuM0w0MzYuOSAyMjNjLTMuNCAxMi44LTE2LjYgMjAuNC0yOS40IDE3bC04Ny40LTIzLjRjLTkuNC0yLjUtMTYuMy0xMC40LTE3LjYtMjBzMy40LTE5LjEgMTEuOC0yMy45bDI3LjctMTYtMzcuMy02NC42Yy0yMS42LTM3LjMtNzUuNC0zNy4zLTk3IDBsLTUuMyA5LjFjLTguOCAxNS4zLTI4LjQgMjAuNS00My43IDExLjdTMTM4LjIgODQuNSAxNDcgNjkuMWw1LjMtOS4xek00NDkuNyAyNzkuMWMxNS4zLTguOCAzNC45LTMuNiA0My43IDExLjdsNS4zIDkuMWM0Ni4yIDgwLTExLjUgMTgwLTEwMy45IDE4MGwtNzQuNiAwIDAgMzJjMCA5LjctNS44IDE4LjUtMTQuOCAyMi4ycy0xOS4zIDEuNy0yNi4yLTUuMmwtNjQtNjRjLTkuNC05LjQtOS40LTI0LjYgMC0zMy45bDY0LTY0YzYuOS02LjkgMTcuMi04LjkgMjYuMi01LjJzMTQuOCAxMi41IDE0LjggMjIuMmwwIDMyIDc0LjYgMGM0My4xIDAgNzAuMS00Ni43IDQ4LjUtODRsLTUuMy05LjFjLTguOC0xNS4zLTMuNi0zNC45IDExLjctNDMuN3pNNTEgMjM1LjRsLTI3LjctMTZjLTguNC00LjktMTMuMS0xNC4zLTExLjgtMjMuOXM4LjItMTcuNSAxNy42LTIwTDExNi41IDE1MmMxMi44LTMuNCAyNiA0LjIgMjkuNCAxN2wyMy40IDg3LjRjMi41IDkuNC0uOSAxOS4zLTguNiAyNS4zcy0xOC4yIDYuNi0yNi42IDEuN2wtMjcuNy0xNi0zNy4zIDY0LjZjLTIxLjYgMzcuMyA1LjQgODQgNDguNSA4NGwxMC42IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTEwLjYgMEMyNS4zIDQ4MC0zMi40IDM4MCAxMy44IDMwMEw1MSAyMzUuNHoiXX0sVEFlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZhY2UtZ3Jpbi13aW5rIixpY29uOls1MTIsNTEyLFsiZ3Jpbi13aW5rIl0sImY1OGMiLCJNMjU2IDUxMmEyNTYgMjU2IDAgMSAwIDAtNTEyIDI1NiAyNTYgMCAxIDAgMCA1MTJ6TTM4Ni43IDMwOC45YzExLjktMy43IDIzLjkgNi4zIDE5LjYgMTguMS0yMi40IDYxLjMtODEuMyAxMDUuMS0xNTAuMyAxMDUuMVMxMjguMSAzODguMiAxMDUuNyAzMjYuOWMtNC4zLTExLjggNy43LTIxLjggMTkuNi0xOC4xIDM5LjIgMTIuMiA4My43IDE5LjEgMTMwLjcgMTkuMXM5MS41LTYuOSAxMzAuNy0xOS4xek0zMjggMTk2Yy0xMSAwLTIwIDktMjAgMjBzLTkgMjAtMjAgMjAtMjAtOS0yMC0yMGMwLTMzLjEgMjYuOS02MCA2MC02MGwxNiAwYzMzLjEgMCA2MCAyNi45IDYwIDYwIDAgMTEtOSAyMC0yMCAyMHMtMjAtOS0yMC0yMC05LTIwLTIwLTIwbC0xNiAwek0xNzYgMTc2YTMyIDMyIDAgMSAxIDAgNjQgMzIgMzIgMCAxIDEgMC02NHoiXX0sR0NyPVRBZSxWMmU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToid2F0ZXItbGFkZGVyIixpY29uOls2NDAsNTEyLFsibGFkZGVyLXdhdGVyIiwic3dpbW1pbmctcG9vbCJdLCJmNWM1IiwiTTM3NC41IDQwNS43YzM4LjQtMjkgOTAuNS0yOSAxMjkgMCAxNi45IDEyLjcgMzIuOSAyMS41IDQ3LjggMjQuNiAxMy43IDIuOCAyNy40IC45IDQyLjMtMTAuMyAxMC42LTggMjUuNi01LjkgMzMuNiA0LjdzNS44IDI1LjctNC44IDMzLjZjLTI2LjQgMTkuOS01NC4yIDI0LjQtODAuNyAxOS4xLTI1LjMtNS4xLTQ4LjEtMTguOS02Ny4yLTMzLjMtMjEuMy0xNi4xLTQ5LjktMTYuMS03MS4yIDAtMjQuMiAxOC4zLTUyLjMgMzUuOS04My40IDM1LjlzLTU5LjEtMTcuNy04My4zLTM1LjljLTIxLjMtMTYuMS00OS45LTE2LjEtNzEuMiAwLTIzLjggMTcuOS01NC4xIDM1LjUtODguMSAzNS4zLTIwLjQtLjEtNDAuNy02LjctNTkuOC0yMS4xLTEwLjYtOC0xMi43LTIzLTQuNy0zMy42czIzLTEyLjcgMzMuNi00LjdjMTEuMyA4LjUgMjEuNiAxMS40IDMxLjIgMTEuNSAxNy42IC4xIDM3LjMtOS40IDU4LjktMjUuNyAzOC40LTI5IDkwLjYtMjkgMTI5IDAgMjQgMTguMSA0MC43IDI2LjMgNTQuNSAyNi4zczMwLjUtOC4yIDU0LjUtMjYuM3pNNTExLjggMzJjNDguMyAwIDg5IDM2IDk1IDgzLjlsMSA4LjJjMi4yIDE3LjUtMTAuMiAzMy41LTI3LjggMzUuN3MtMzMuNS0xMC4yLTM1LjctMjcuOGwtMS04LjJjLTItMTUuOS0xNS41LTI3LjgtMzEuNS0yNy44LTE3LjUgMC0zMS44IDE0LjItMzEuOCAzMS44bDAgMjExLjhjLTIzLjEtNS4xLTQ0LjktNC40LTY0LS40bDAtNTEuMi0xOTIgMCAwIDQ4LjdjLTUuMy0uNS0xMC43LS44LTE2LS43LTE2LjIgLjEtMzIuNCAyLjctNDggOGwwLTIxNi4yYzAtNTIuOSA0Mi45LTk1LjggOTUuNy05NS44IDQ4LjMgMCA4OSAzNiA5NSA4My45bDEgOC4yYzIuMiAxNy41LTEwLjIgMzMuNS0yNy44IDM1LjdzLTMzLjUtMTAuMi0zNS43LTI3LjhsLTEtOC4yYy0yLTE1LjktMTUuNS0yNy44LTMxLjUtMjcuOC0xNy41IDAtMzEuNyAxNC4yLTMxLjcgMzEuOGwwIDk2LjIgMTkyIDAgMC05Ni4yQzQxNiA3NC45IDQ1OC45IDMyIDUxMS44IDMyeiJdfSxZQ3I9VjJlLFpDcj1WMmUsWENyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImdlbWluaSIsaWNvbjpbNDQ4LDUxMixbXSwiZTg0OSIsIk0zOTUuNCA4YzEzLjItMTEuNyAzMy4zLTEwLjUgNDUuMSAyLjcgMTEuNyAxMy4yIDEwLjUgMzMuNC0yLjcgNDUuMi0yLjcgMi40LTIzLjEgMTkuOC01OC4zIDM2LjgtOC4yIDQtMTcuMiA3LjktMjcgMTEuNmwwIDMwMy4yYzkuOCAzLjggMTguOCA3LjYgMjcgMTEuNiAxOC4yIDguOCAzMi40IDE3LjcgNDIuMiAyNC41IDMgMi4xIDUuNSA0LjEgNy43IDUuNyAxLjIgLjkgMi4zIDEuNiAzLjIgMi40IC4yIC4xIC4zIC4yIC41IC40IDEuMyAxLjEgMi40IDIgMy4yIDIuNiAuNCAuMyAuNyAuNiAuOSAuOCAuMSAuMSAuMyAuMiAuMyAuMyAwIDAgLjEgLjEgLjEgLjFsLjEgMCAwIDAgMCAwYzMuMyAyLjkgNS45IDYuNCA3LjcgMTAuMiA1LjQgMTEuMyAzLjggMjUuMS01IDM1LS4zIC40LS43IC43LTEuMSAxLjEtMTEuOSAxMi4yLTMxLjIgMTMuMS00NCAxLjctLjMtLjMtMS41LTEuMy0zLjUtMi44LS40LS4zLS45LS43LTEuNS0xLjEtMS45LTEuNC00LjItMy4xLTcuMS01LjEtMi4yLTEuNS00LjctMy4xLTcuNC00LjgtNi42LTQuMS0xNC44LTguOC0yNC40LTEzLjUtNy40LTMuNi0xNS42LTcuMi0yNC43LTEwLjUtMTMuNi01LjEtMjktOS42LTQ2LjEtMTIuOS01LjctMS4xLTExLjYtMi4xLTE3LjctMi44LTEyLjEtMS42LTI1LTIuNS0zOC42LTIuNS01NC4yIDAtOTcuNCAxNC40LTEyNyAyOC44LTMuNCAxLjYtNi41IDMuMy05LjUgNC45LTUuMSAyLjgtOS43IDUuNC0xMy44IDcuOS0zLjMgMi4xLTYuMyA0LTguOSA1LjctMS43IDEuMi0zLjIgMi4zLTQuNiAzLjMtMS45IDEuNC0zLjUgMi41LTQuNiAzLjQtMS40IDEuMS0yLjIgMS44LTIuNSAyLTEzLjIgMTEuNy0zMy4zIDEwLjUtNDUuMS0yLjgtMi4yLTIuNS00LTUuMi01LjItOC4xcy0yLjEtNS45LTIuNS04LjljLTEuNC0xMC4yIDIuMi0yMC44IDEwLjQtMjguMiAuMi0uMiAuNi0uNSAxLjItMSAuMS0uMSAuMi0uMiAuMy0uM2wzLjItMi42YzEuNy0xLjMgMy43LTIuOCA2LjItNC42IDEuNi0xLjIgMy4zLTIuNSA1LjItMy44IDkuOC02LjggMjQtMTUuNyA0Mi4yLTI0LjUgOC4yLTQgMTcuMi03LjkgMjctMTEuNmwwLTMwMy4yQzg2LjcgMTAwLjYgNzcuNyA5Ni43IDY5LjUgOTIuOCAzNC4zIDc1LjcgMTQgNTguMyAxMS4zIDU1LjktMS45IDQ0LjItMy4xIDI0IDguNiAxMC43IDIwLjMtMi41IDQwLjUtMy43IDUzLjcgOCA1NS4xIDkuMiA3MC43IDIyLjIgOTcuNSAzNS4yIDEyNy4xIDQ5LjYgMTcwLjMgNjQgMjI0LjUgNjRzOTcuNC0xNC40IDEyNy0yOC44YzI2LjgtMTMgNDIuNC0yNiA0My44LTI3LjJ6TTI4OC41IDEyMi4zYy0xOS43IDMuNS00MSA1LjctNjQgNS43cy00NC4zLTIuMi02NC01LjdsMCAyNjcuNGMxMi42LTIuMyAyNS45LTQgMzkuOS00LjkgNy44LS41IDE1LjgtLjggMjQtLjggMjMgMCA0NC40IDIuMiA2NCA1LjdsMC0yNjcuNHoiXX0sUUNyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRvd2VyLWNlbGwiLGljb246WzU3Niw1MTIsW10sImU1ODUiLCJNNTkuNiA5LjhDNDcuMyA0LjggMzMuMyAxMC43IDI4LjQgMjMgMTUuMiA1NS41IDggOTAuOSA4IDEyOHM3LjIgNzIuNSAyMC40IDEwNWM1IDEyLjMgMTkgMTguMiAzMS4zIDEzLjJzMTguMi0xOSAxMy4yLTMxLjNDNjIgMTg4LjIgNTYgMTU4LjggNTYgMTI4czYtNjAuMiAxNi45LTg3YzUtMTIuMy0xLTI2LjMtMTMuMi0zMS4zem00NTYuOCAwYy0xMi4zIDUtMTguMiAxOS0xMy4yIDMxLjMgMTAuOSAyNi44IDE2LjkgNTYuMiAxNi45IDg3cy02IDYwLjItMTYuOSA4N2MtNSAxMi4zIDEgMjYuMyAxMy4yIDMxLjNzMjYuMy0xIDMxLjMtMTMuMmMxMy4xLTMyLjUgMjAuNC02Ny45IDIwLjQtMTA1cy03LjItNzIuNS0yMC40LTEwNWMtNS0xMi4zLTE5LTE4LjItMzEuMy0xMy4yek0zNDAuMSAxNjUuMmM3LjUtMTAuNSAxMS45LTIzLjMgMTEuOS0zNy4yIDAtMzUuMy0yOC43LTY0LTY0LTY0cy02NCAyOC43LTY0IDY0YzAgMTMuOSA0LjQgMjYuNyAxMS45IDM3LjJMOTguOSA0NjYuOGMtNy4zIDE2LjEtLjIgMzUuMSAxNS45IDQyLjRzMzUuMSAuMiA0Mi40LTE1LjlsMjAuNi00NS4yIDIyMC42IDAgMjAuNiA0NS4yYzcuMyAxNi4xIDI2LjMgMjMuMiA0Mi40IDE1LjlzMjMuMi0yNi4zIDE1LjktNDIuNEwzNDAuMSAxNjUuMnpNMzc2LjUgNDAwbC0xNzcgMCAyMS44LTQ4IDEzMy4zIDAgMjEuOCA0OHpNMjg4IDIwNS4zbDQ0LjggOTguNy04OS43IDAgNDQuOC05OC43ek0xNjMuMyA3My42YzUuMy0xMi4xLS4yLTI2LjMtMTIuNC0zMS42cy0yNi4zIC4yLTMxLjYgMTIuNEMxMDkuNSA3NyAxMDQgMTAxLjkgMTA0IDEyOHM1LjUgNTEgMTUuMyA3My42YzUuMyAxMi4xIDE5LjUgMTcuNyAzMS42IDEyLjRzMTcuNy0xOS41IDEyLjQtMzEuNkMxNTYgMTY1LjggMTUyIDE0Ny40IDE1MiAxMjhzNC0zNy44IDExLjMtNTQuNHpNNDU2LjcgNTQuNGMtNS4zLTEyLjEtMTkuNS0xNy43LTMxLjYtMTIuNHMtMTcuNyAxOS41LTEyLjQgMzEuNkM0MjAgOTAuMiA0MjQgMTA4LjYgNDI0IDEyOHMtNCAzNy44LTExLjMgNTQuNGMtNS4zIDEyLjEgLjIgMjYuMyAxMi40IDMxLjZzMjYuMy0uMiAzMS42LTEyLjRDNDY2LjUgMTc5IDQ3MiAxNTQuMSA0NzIgMTI4cy01LjUtNTEtMTUuMy03My42eiJdfSxLQ3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY29sb24tc2lnbiIsaWNvbjpbMzg0LDUxMixbXSwiZTE0MCIsIk0yMTMuOCA4LjdjMTIuOSAzLjIgMjAuNyAxNi4yIDE3LjUgMjkuMWwtNC42IDE4LjVjMTUuNCAuOCAzMC40IDMuNCA0NC43IDcuNWw5LjQtMzcuNkMyODMuOSAxMy4zIDI5NyA1LjUgMzA5LjggOC43UzMzMC41IDI1IDMyNy4zIDM3LjhMMzE2IDgyLjhjMTMuNSA3LjggMjYgMTcuMSAzNy4yIDI3LjggMTIuOSAxMi4xIDEzLjQgMzIuNCAxLjMgNDUuMnMtMzIuNCAxMy40LTQ1LjIgMS4zYy0zLjEtMi45LTYuNC01LjgtOS44LTguNEwyMzkuMiAzOTBjMjYuOS00LjYgNTEuMS0xNy4xIDcwLjEtMzUuMSAxMi45LTEyLjEgMzMuMS0xMS41IDQ1LjIgMS4zczExLjUgMzMuMS0xLjMgNDUuMmMtMzQuMyAzMi4zLTgwIDUyLjgtMTMwLjUgNTQuNGwtNy41IDI5LjljLTMuMiAxMi45LTE2LjIgMjAuNy0yOS4xIDE3LjVzLTIwLjctMTYuMi0xNy41LTI5LjFsNS42LTIyLjVjLTE1LTMuMi0yOS40LTgtNDIuOS0xNC40bC0xMi4xIDQ4LjVjLTMuMiAxMi45LTE2LjIgMjAuNy0yOS4xIDE3LjVTNjkuNSA0ODcgNzIuNyA0NzQuMmwxNi02My45QzQ0LjMgMzczLjYgMTYgMzE4LjEgMTYgMjU2IDE2IDE1OS4yIDg0LjggNzguNCAxNzYuMyA2MGw4LjQtMzMuOEMxODcuOSAxMy4zIDIwMSA1LjUgMjEzLjggOC43ek0xNTggMTMyLjljLTQ2LjEgMjEuOC03OCA2OC43LTc4IDEyMy4xIDAgMzAuNSAxMCA1OC42IDI2LjkgODEuM0wxNTggMTMyLjl6TTE0Ny40IDM3My40YzEzIDcuNiAyNy4zIDEzLjEgNDIuNSAxNi4xbDY1LjktMjYzLjZjLTEyLjYtMy44LTI1LjktNS45LTM5LjgtNS45LTEuOCAwLTMuNSAwLTUuMyAuMUwxNDcuNCAzNzMuNHoiXX0sSkNyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImxhcHRvcC1maWxlIixpY29uOls1NzYsNTEyLFtdLCJlNTFkIiwiTTY0IDY0QzY0IDI4LjcgOTIuNyAwIDEyOCAwTDQxNiAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgNDgtNjQgMCAwLTQ4LTI4OCAwIDAgMTkyIDExMiAwIDAgOTYtMTYzLjIgMEMzNC40IDM1MiAwIDMxNy42IDAgMjc1LjIgMCAyNjQuNiA4LjYgMjU2IDE5LjIgMjU2TDY0IDI1NiA2NCA2NHpNNTI5LjkgMjU3LjljOSA5IDE0LjEgMjEuMiAxNC4xIDMzLjlMNTQ0IDQ2NGMwIDI2LjUtMjEuNSA0OC00OCA0OGwtMTYwIDBjLTI2LjUgMC00OC0yMS41LTQ4LTQ4bDAtMjU2YzAtMjYuNSAyMS41LTQ4IDQ4LTQ4bDc2LjEgMGMxMi43IDAgMjQuOSA1LjEgMzMuOSAxNC4xIDIwIDIwIDQ3LjkgNDcuOSA4My45IDgzLjl6TTQxNiAyNzJjMCA4LjggNy4yIDE2IDE2IDE2bDYwLjEgMC03Ni4xLTc2LjEgMCA2MC4xeiJdfSxMQWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYmFoYWkiLGljb246WzU3Niw1MTIsWyJoYXlrYWwiXSwiZjY2NiIsIk0yODguNC04YzEzLjIgMCAyNSA4LjEgMjkuOCAyMC40bDMxLjkgODIgNzcuMi00Mi4zYzExLjYtNi4zIDI1LjgtNC45IDM1LjkgMy41czE0IDIyLjMgOS43IDM0LjhsLTI4LjIgODMuMyA4Ni4zIDE3LjJjMTIuOSAyLjYgMjMgMTIuOCAyNS4zIDI1LjhzLTMuNiAyNi4xLTE0LjkgMzIuOWwtNzUuMiA0NS43IDU1IDY4LjZjOC4zIDEwLjMgOS4zIDI0LjYgMi43IDM2cy0xOS41IDE3LjYtMzIuNiAxNS42bC04Ny0xMy4zLTIgODhjLS4zIDEzLjItOC42IDI0LjgtMjEgMjkuNHMtMjYuMyAxLTM1LTlsLTU4LTY2LjEtNTggNjYuMWMtOC43IDkuOS0yMi42IDEzLjUtMzUgOXMtMjAuOC0xNi4yLTIxLTI5LjRsLTItODgtODcgMTMuM2MtMTMgMi0yNi00LjItMzIuNi0xNS42cy01LjUtMjUuNyAyLjctMzZsNTUtNjguNi03NS4yLTQ1LjdjLTExLjMtNi44LTE3LjItMTkuOS0xNC45LTMyLjlzMTIuMy0yMy4yIDI1LjMtMjUuOGw4Ni4zLTE3LjItMjguMi04My4zYy00LjItMTIuNS0uNC0yNi4zIDkuNy0zNC44czI0LjQtOS45IDM1LjktMy41bDc3LjEgNDIuMyAzMS45LTgyQzI2My4zIC4xIDI3NS4yLTggMjg4LjQtOHptMCAxMjAuMkwyNzMgMTUxLjZjLTMuMyA4LjYtMTAuMiAxNS4zLTE4LjkgMTguNXMtMTguMiAyLjQtMjYuMy0ybC0zNy0yMC4zIDEzLjYgNDBjMyA4LjcgMiAxOC4zLTIuNiAyNi4zcy0xMi40IDEzLjYtMjEuNSAxNS40bC00MS40IDguMyAzNi4xIDIxLjljNy45IDQuOCAxMy4zIDEyLjcgMTQuOSAyMS44cy0uOCAxOC40LTYuNSAyNS42bC0yNi40IDMzIDQxLjgtNi40YzkuMS0xLjQgMTguNCAxLjIgMjUuNCA3LjFzMTEuMiAxNC42IDExLjQgMjMuOGwuOSA0Mi4yIDI3LjktMzEuOGM2LjEtNi45IDE0LjgtMTAuOSAyNC4xLTEwLjlzMTggNCAyNC4xIDEwLjlsMjcuOSAzMS44IC45LTQyLjJjLjItOS4yIDQuNC0xNy45IDExLjQtMjMuOHMxNi4zLTguNSAyNS40LTcuMWw0MS44IDYuNC0yNi40LTMzYy01LjgtNy4yLTguMi0xNi41LTYuNi0yNS42czctMTcgMTQuOS0yMS44bDM2LjEtMjEuOS00MS40LTguM2MtOS0xLjgtMTYuOS03LjQtMjEuNS0xNS40cy01LjUtMTcuNi0yLjYtMjYuM2wxMy42LTQwLTM3IDIwLjNjLTguMSA0LjQtMTcuNyA1LjItMjYuMyAycy0xNS41LTkuOS0xOC45LTE4LjVsLTE1LjMtMzkuNHoiXX0sZV9yPUxBZSxEQWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibW9uZXktYmlsbC0xIixpY29uOls1MTIsNTEyLFsibW9uZXktYmlsbC1hbHQiXSwiZjNkMSIsIk02NCA2NEMyOC43IDY0IDAgOTIuNyAwIDEyOEwwIDM4NGMwIDM1LjMgMjguNyA2NCA2NCA2NGwzODQgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTI1NmMwLTM1LjMtMjguNy02NC02NC02NEw2NCA2NHptMTkyIDgwYTExMiAxMTIgMCAxIDEgMCAyMjQgMTEyIDExMiAwIDEgMSAwLTIyNHpNNjQgMTg0bDAtNDhjMC00LjQgMy42LTggOC04bDQ4IDBjNC40IDAgOC4xIDMuNiA3LjUgOC0zLjYgMjktMjYuNiA1MS45LTU1LjUgNTUuNS00LjQgLjUtOC0zLjEtOC03LjV6bTAgMTQ0YzAtNC40IDMuNi04LjEgOC03LjUgMjkgMy42IDUxLjkgMjYuNiA1NS41IDU1LjUgLjUgNC40LTMuMSA4LTcuNSA4bC00OCAwYy00LjQgMC04LTMuNi04LThsMC00OHpNNDQwIDE5MS41Yy0yOS0zLjYtNTEuOS0yNi42LTU1LjUtNTUuNS0uNS00LjQgMy4xLTggNy41LThsNDggMGM0LjQgMCA4IDMuNiA4IDhsMCA0OGMwIDQuNC0zLjYgOC4xLTggNy41ek00NDggMzI4bDAgNDhjMCA0LjQtMy42IDgtOCA4bC00OCAwYy00LjQgMC04LjEtMy42LTcuNS04IDMuNi0yOSAyNi42LTUxLjkgNTUuNS01NS41IDQuNC0uNSA4IDMuMSA4IDcuNXpNMjQwIDE4OGMtMTEgMC0yMCA5LTIwIDIwIDAgOS43IDYuOSAxNy43IDE2IDE5LjZsMCA0OC40LTQgMGMtMTEgMC0yMCA5LTIwIDIwczkgMjAgMjAgMjBsNDggMGMxMSAwIDIwLTkgMjAtMjBzLTktMjAtMjAtMjBsLTQgMCAwLTY4YzAtMTEtOS0yMC0yMC0yMGwtMTYgMHoiXX0sdF9yPURBZSxBQWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2xvdWQtYm9sdCIsaWNvbjpbNTEyLDUxMixbMTI3Nzg1LCJ0aHVuZGVyc3Rvcm0iXSwiZjc2YyIsIk0wIDIyNGMwIDUzIDQzIDk2IDk2IDk2bDM4LjYgMCAxMjQuMS0xMTFjMTIuMi0xMC45IDI4LTE3IDQ0LjQtMTcgNDQuNiAwIDc2LjUgNDMgNjMuNyA4NS43TDM1NC4xIDMyMCA0MTYgMzIwYzUzIDAgOTYtNDMgOTYtOTZzLTQzLTk2LTk2LTk2Yy0uNSAwLTEuMSAwLTEuNiAwIDEuMS01LjIgMS42LTEwLjUgMS42LTE2IDAtNDQuMi0zNS44LTgwLTgwLTgwLTI0LjMgMC00Ni4xIDEwLjktNjAuOCAyOC0xOC43LTM1LjctNTYuMS02MC05OS4yLTYwLTYxLjkgMC0xMTIgNTAuMS0xMTIgMTEyIDAgNy4xIC43IDE0LjEgMS45IDIwLjgtMzguMyAxMi42LTY1LjkgNDguNy02NS45IDkxLjJ6TTE2MC42IDQwMGw2MS44IDAtMzEuMiAxMDQuMWMtMy42IDExLjkgNS4zIDIzLjkgMTcuOCAyMy45IDQuNiAwIDktMS43IDEyLjQtNC43TDM2Mi41IDM5Ni45YzMuNS0zLjEgNS41LTcuNiA1LjUtMTIuNCAwLTkuMi03LjQtMTYuNi0xNi42LTE2LjZsLTYxLjggMCAzMS4yLTEwNC4xYzMuNi0xMS45LTUuMy0yMy45LTE3LjgtMjMuOS00LjYgMC05IDEuNy0xMi40IDQuN0wxNDkuNSAzNzEuMWMtMy41IDMuMS01LjUgNy42LTUuNSAxMi40IDAgOS4yIDcuNCAxNi42IDE2LjYgMTYuNnoiXX0scl9yPUFBZSxhX3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZXRoZXJuZXQiLGljb246WzUxMiw1MTIsW10sImY3OTYiLCJNMCAyMjRMMCA0MTZjMCAxNy43IDE0LjMgMzIgMzIgMzJsMzIgMCAwLTEwNGMwLTEzLjMgMTAuNy0yNCAyNC0yNHMyNCAxMC43IDI0IDI0bDAgMTA0IDY0IDAgMC0xMDRjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNGwwIDEwNCA2NCAwIDAtMTA0YzAtMTMuMyAxMC43LTI0IDI0LTI0czI0IDEwLjcgMjQgMjRsMCAxMDQgNjQgMCAwLTEwNGMwLTEzLjMgMTAuNy0yNCAyNC0yNHMyNCAxMC43IDI0IDI0bDAgMTA0IDMyIDBjMTcuNyAwIDMyLTE0LjMgMzItMzJsMC0xOTJjMC0xNy43LTE0LjMtMzItMzItMzJsLTMyIDAgMC0zMmMwLTE3LjctMTQuMy0zMi0zMi0zMmwtMzIgMCAwLTMyYzAtMTcuNy0xNC4zLTMyLTMyLTMyTDE2MCA2NGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJsMCAzMi0zMiAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMmwwIDMyLTMyIDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyeiJdfSxFQWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaHJ5dm5pYS1zaWduIixpY29uOlszODQsNTEyLFs4MzcyLCJocnl2bmlhIl0sImY2ZjIiLCJNMzM2IDE0OS40QzMzNiA3NyAyNjguNSAyMy41IDE5OCA0MC4xTDkzLjIgNjQuOUM3NiA2OC45IDY1LjQgODYuMiA2OS40IDEwMy40czIxLjMgMjcuOSAzOC41IDIzLjhsMTA0LjgtMjQuN2MzMC4zLTcuMSA1OS4zIDE1LjggNTkuMyA0Ni45IDAgMTcuNi05LjYgMzMuOC0yNSA0Mi4zbC0uNyAuNC0yMjIuMyAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDMzNiAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC0zMi40IDBjNS41LTEzLjMgOC40LTI3LjggOC40LTQyLjZ6TTM2MCAyNzJMMjQgMjcyYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDMzLjMgMGMtNi4xIDEzLjQtOS4zIDI4LjEtOS4zIDQzLjMgMCA2NC4xIDU2LjkgMTEzLjQgMTIwLjQgMTA0LjJsMTM3LjktMTkuOWMxNy41LTIuNSAyOS42LTE4LjcgMjcuMS0zNi4ycy0xOC44LTI5LjYtMzYuMi0yNy4xTDE1OS4yIDQwNC4yYy0yNC45IDMuNi00Ny4yLTE1LjctNDcuMi00MC45IDAtMTUuMSA4LjItMjguOSAyMS40LTM2LjJsMTMtNy4xIDIxMy42IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjR6Il19LGlfcj1FQWUsZ2xlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImV5ZS1zbGFzaCIsaWNvbjpbNTc2LDUxMixbXSwiZjA3MCIsIk00MS0yNC45Yy05LjQtOS40LTI0LjYtOS40LTMzLjkgMFMtMi4zLS4zIDcgOS4xbDUyOCA1MjhjOS40IDkuNCAyNC42IDkuNCAzMy45IDBzOS40LTI0LjYgMC0zMy45bC05Ni40LTk2LjRjMi43LTIuNCA1LjQtNC44IDgtNy4yIDQ2LjgtNDMuNSA3OC4xLTk1LjQgOTMtMTMxLjEgMy4zLTcuOSAzLjMtMTYuNyAwLTI0LjYtMTQuOS0zNS43LTQ2LjItODcuNy05My0xMzEuMS00Ny4xLTQzLjctMTExLjgtODAuNi0xOTIuNi04MC42LTU2LjggMC0xMDUuNiAxOC4yLTE0NiA0NC4yTDQxLTI0Ljl6TTIwNC41IDEzOC43YzIzLjUtMTYuOCA1Mi40LTI2LjcgODMuNS0yNi43IDc5LjUgMCAxNDQgNjQuNSAxNDQgMTQ0IDAgMzEuMS05LjkgNTkuOS0yNi43IDgzLjVsLTM0LjctMzQuN2MxMi43LTIxLjQgMTctNDcuNyAxMC4xLTczLjctMTMuNy01MS4yLTY2LjQtODEuNi0xMTcuNi02Ny45LTguNiAyLjMtMTYuNyA1LjctMjQgMTBsLTM0LjctMzQuN3pNMzI1LjMgMzk1LjFjLTExLjkgMy4yLTI0LjQgNC45LTM3LjMgNC45LTc5LjUgMC0xNDQtNjQuNS0xNDQtMTQ0IDAtMTIuOSAxLjctMjUuNCA0LjktMzcuM0w2OS40IDEzOS4yYy0zMi42IDM2LjgtNTUgNzUuOC02Ni45IDEwNC41LTMuMyA3LjktMy4zIDE2LjcgMCAyNC42IDE0LjkgMzUuNyA0Ni4yIDg3LjcgOTMgMTMxLjEgNDcuMSA0My43IDExMS44IDgwLjYgMTkyLjYgODAuNiAzNy4zIDAgNzEuMi03LjkgMTAxLjUtMjAuNmwtNjQuMi02NC4yeiJdfSwkQWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2FydC1mbGF0YmVkLXN1aXRjYXNlIixpY29uOls1NzYsNTEyLFsibHVnZ2FnZS1jYXJ0Il0sImY1OWQiLCJNMCAzMkMwIDE0LjMgMTQuMyAwIDMyIDBMNDggMGM0NC4yIDAgODAgMzUuOCA4MCA4MGwwIDI4OGMwIDguOCA3LjIgMTYgMTYgMTZsNDAwIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTM0LjcgMGMxLjggNSAyLjcgMTAuNCAyLjcgMTYgMCAyNi41LTIxLjUgNDgtNDggNDhzLTQ4LTIxLjUtNDgtNDhjMC01LjYgMS0xMSAyLjctMTZsLTE5Ny41IDBjMS44IDUgMi43IDEwLjQgMi43IDE2IDAgMjYuNS0yMS41IDQ4LTQ4IDQ4cy00OC0yMS41LTQ4LTQ4YzAtNiAxLjEtMTEuNyAzLjEtMTctMzguMS02LjItNjcuMS0zOS4yLTY3LjEtNzlMNjQgODBjMC04LjgtNy4yLTE2LTE2LTE2TDMyIDY0QzE0LjMgNjQgMCA0OS43IDAgMzJ6TTE3NiAxNDRjMC0yNi41IDIxLjUtNDggNDgtNDhsMzIgMCAwLTI0YzAtMzAuOSAyNS4xLTU2IDU2LTU2bDY0IDBjMzAuOSAwIDU2IDI1LjEgNTYgNTZsMCAyNCAzMiAwYzI2LjUgMCA0OCAyMS41IDQ4IDQ4bDAgMTQ0YzAgMjYuNS0yMS41IDQ4LTQ4IDQ4bC0yNDAgMGMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhsMC0xNDR6TTM4NCA5NmwwLTI0YzAtNC40LTMuNi04LTgtOGwtNjQgMGMtNC40IDAtOCAzLjYtOCA4bDAgMjQgODAgMHoiXX0sb19yPSRBZSxuX3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicmFkaWF0aW9uIixpY29uOls1NzYsNTEyLFtdLCJmN2I5IiwiTTQ0Ni4yIDM0LjVjLTE0LjItMTAuMS0zMy41LTQuNi00Mi4yIDEwLjVMMzMxLjYgMTcwLjNjMzEuMyAxNS44IDUyLjggNDguMyA1Mi44IDg1LjdsMTQ0IDBjMTcuNyAwIDMyLjItMTQuNCAzMC4xLTMxLjktOS4xLTc4LjEtNTEuNC0xNDYuMS0xMTIuMy0xODkuNnpNMTcyLjcgNDQuOUMxNjQgMjkuOCAxNDQuNyAyNC4zIDEzMC41IDM0LjUgNjkuNiA3Ny45IDI3LjMgMTQ1LjkgMTguMiAyMjQuMSAxNi4xIDI0MS42IDMwLjcgMjU2IDQ4LjMgMjU2bDE0NCAwYzAtMzcuNSAyMS41LTY5LjkgNTIuOC04NS43TDE3Mi43IDQ0Ljl6bS05LjQgNDE2LjhjLTguNyAxNS4xLTMuOCAzNC41IDEyIDQxLjggMzQuNCAxNS43IDcyLjcgMjQuNSAxMTMgMjQuNXM3OC42LTguOCAxMTMtMjQuNWMxNS44LTcuMiAyMC43LTI2LjcgMTItNDEuOEwzNDEgMzM2LjNjLTE1LjEgOS45LTMzLjIgMTUuNy01Mi42IDE1LjdzLTM3LjUtNS44LTUyLjYtMTUuN0wxNjMuMyA0NjEuN3pNMjg4LjMgMzA0YTQ4IDQ4IDAgMSAwIC0uNy05NiA0OCA0OCAwIDEgMCAuNyA5NnoiXX0sc19yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZpbGUtd29yZCIsaWNvbjpbMzg0LDUxMixbXSwiZjFjMiIsIk0wIDY0QzAgMjguNyAyOC43IDAgNjQgMEwyMTMuNSAwYzE3IDAgMzMuMyA2LjcgNDUuMyAxOC43TDM2NS4zIDEyNS4zYzEyIDEyIDE4LjcgMjguMyAxOC43IDQ1LjNMMzg0IDQ0OGMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA1MTJjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgNjR6bTIwOC01LjVsMCA5My41YzAgMTMuMyAxMC43IDI0IDI0IDI0TDMyNS41IDE3NiAyMDggNTguNXpNMTM1LjQgMjc0LjhjLTIuOS0xMi45LTE1LjctMjEuMS0yOC42LTE4LjJzLTIxLjEgMTUuNy0xOC4yIDI4LjZsMzIgMTQ0YzIuMyAxMC41IDExLjQgMTguMiAyMi4yIDE4LjhzMjAuNi02LjEgMjQtMTYuNGwyNS4yLTc1LjcgMjUuMiA3NS43YzMuNCAxMC4yIDEzLjIgMTYuOSAyNCAxNi40czE5LjktOC4yIDIyLjItMTguOGwzMi0xNDRjMi45LTEyLjktNS4zLTI1LjgtMTguMi0yOC42cy0yNS44IDUuMy0yOC42IDE4LjJsLTEzLjIgNTkuNC0yMC42LTYxLjhjLTMuMy05LjgtMTIuNC0xNi40LTIyLjgtMTYuNHMtMTkuNSA2LjYtMjIuOCAxNi40bC0yMC42IDYxLjgtMTMuMi01OS40eiJdfSxQQWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYmVkLXB1bHNlIixpY29uOls2NDAsNTEyLFsicHJvY2VkdXJlcyJdLCJmNDg3IiwiTTUzMS4yLTIyLjRMNTcyIDMyIDYxNiAzMmMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtNTYgMGMtNy42IDAtMTQuNy0zLjYtMTkuMi05LjZsLTI0LjEtMzIuMS00NyA5OS45Yy0zLjcgNy44LTExLjMgMTMuMS0xOS45IDEzLjdzLTE2LjktMy40LTIxLjctMTAuNkwzODcuMiA4MCAzNDQgODBjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjRsNTYgMGM4IDAgMTUuNSA0IDIwIDEwLjdsMjQuNCAzNi42IDQ1LjktOTcuNWMzLjYtNy42IDEwLjktMTIuOCAxOS4zLTEzLjdzMTYuNiAyLjcgMjEuNiA5LjV6TTMyMCAxNjBjMC0xNy43IDE0LjMtMzIgMzItMzJsOS41IDAgMjYuNiAzOS45YzE0LjQgMjEuNiAzOS4zIDMzLjggNjUuMiAzMS45czQ4LjgtMTcuNiA1OS44LTQxLjFMNTI3IDEyOS4yYzQ1LjkgNy4yIDgxIDQ2LjkgODEgOTQuOGwwIDIyNGMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTY0LTQ0OCAwIDAgNjRjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJMMzIgNjRjMC0xNy43IDE0LjMtMzIgMzItMzJTOTYgNDYuMyA5NiA2NGwwIDIyNCAyMjQgMCAwLTEyOHpNMTQ0IDE5MmE2NCA2NCAwIDEgMSAxMjggMCA2NCA2NCAwIDEgMSAtMTI4IDB6Il19LGxfcj1QQWUsY19yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRlbnRzIixpY29uOls1NzYsNTEyLFtdLCJlNTgyIiwiTTUzOS45IDM1MmwtOTUuNiAwLTguNC02Ni4xYy0yLjktMjMuMi0xNS45LTQzLjktMzUuNC01Ni44TDI1Mi4yIDEzMS41Yy0xOC0xMS45LTM5LjctMTUuNy02MC4xLTExLjUgMi41LTQuMyA1LjktNy45IDEwLjEtMTAuN0wzNTAuNiAxMS42YzEwLjctNyAyNC41LTcgMzUuMiAwbDE0OC40IDk3LjdjNy44IDUuMSAxMyAxMy40IDE0LjIgMjIuN2wyMy4zIDE4NGMyLjQgMTkuMS0xMi41IDM2LTMxLjcgMzZ6TTQuOCA0NzZsMjMuMy0xODRjMS4yLTkuMyA2LjMtMTcuNiAxNC4yLTIyLjdsMTQ4LjQtOTcuN2MxMC43LTcgMjQuNS03IDM1LjIgMGwxNDguNCA5Ny43YzcuOCA1LjEgMTMgMTMuNCAxNC4yIDIyLjdsMjMuMyAxODRjMi40IDE5LjEtMTIuNSAzNi0zMS43IDM2bC00OS43IDBjLTExLjIgMC0yMS41LTUuOC0yNy4zLTE1LjRsLTc3LTEyNi43Yy0xLjctMi44LTQuOC00LjYtOC4xLTQuNi01LjMgMC05LjUgNC4zLTkuNSA5LjVsMCAxMDUuMmMwIDE3LjctMTQuMyAzMi0zMiAzMkwzNi41IDUxMmMtMTkuMyAwLTM0LjItMTYuOS0zMS43LTM2eiJdfSx4bGU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibXVnLWhvdCIsaWNvbjpbNTc2LDUxMixbOTc0OV0sImY3YjYiLCJNMTUyLTE2Yy0xMy4zIDAtMjQgMTAuNy0yNCAyNCAwIDM4LjkgMjMuNCA1OS40IDM5LjEgNzMuMWwxLjEgMWMxNi4zIDE0LjMgMjMuOCAyMS44IDIzLjggMzcuOSAwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0YzAtMzguOS0yMy40LTU5LjQtMzkuMS03My4xbC0xLjEtMUMxODMuNSAzMS43IDE3NiAyNC4xIDE3NiA4IDE3Ni01LjMgMTY1LjMtMTYgMTUyLTE2ek05NiAxOTJjLTE3LjcgMC0zMiAxNC4zLTMyIDMybDAgMTkyYzAgNTMgNDMgOTYgOTYgOTZsMTkyIDBjNDEuOCAwIDc3LjQtMjYuNyA5MC41LTY0bDUuNSAwYzcwLjcgMCAxMjgtNTcuMyAxMjgtMTI4UzUxOC43IDE5MiA0NDggMTkyTDk2IDE5MnpNNDQ4IDM4NGwwLTEyOGMzNS4zIDAgNjQgMjguNyA2NCA2NHMtMjguNyA2NC02NCA2NHpNMjg4IDhjMC0xMy4zLTEwLjctMjQtMjQtMjRTMjQwLTUuMyAyNDAgOGMwIDM4LjkgMjMuNCA1OS40IDM5LjEgNzMuMWwxLjEgMWMxNi4zIDE0LjMgMjMuOCAyMS44IDIzLjggMzcuOSAwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0YzAtMzguOS0yMy40LTU5LjQtMzkuMS03My4xbC0xLjEtMUMyOTUuNSAzMS43IDI4OCAyNC4xIDI4OCA4eiJdfSxJQWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYm9sdCIsaWNvbjpbNDQ4LDUxMixbOTg4OSwiemFwIl0sImYwZTciLCJNMzM4LjgtOS45YzExLjkgOC42IDE2LjMgMjQuMiAxMC45IDM3LjhMMjcxLjMgMjI0IDQxNiAyMjRjMTMuNSAwIDI1LjUgOC40IDMwLjEgMjEuMXMuNyAyNi45LTkuNiAzNS41bC0yODggMjQwYy0xMS4zIDkuNC0yNy40IDkuOS0zOS4zIDEuM3MtMTYuMy0yNC4yLTEwLjktMzcuOEwxNzYuNyAyODggMzIgMjg4Yy0xMy41IDAtMjUuNS04LjQtMzAuMS0yMS4xcy0uNy0yNi45IDkuNi0zNS41bDI4OC0yNDBjMTEuMy05LjQgMjcuNC05LjkgMzkuMy0xLjN6Il19LGRfcj1JQWUsdV9yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImphciIsaWNvbjpbMzIwLDUxMixbXSwiZTUxNiIsIk0zMi04YzAtMTMuMyAxMC43LTI0IDI0LTI0bDIwOCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0TDU2IDE2QzQyLjcgMTYgMzIgNS4zIDMyLTh6TTAgMTI4QzAgOTIuNyAyOC43IDY0IDY0IDY0bDE5MiAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMzIwYzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDUxMmMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCAxMjh6bTk2IDY0Yy0xNy43IDAtMzIgMTQuMy0zMiAzMmwwIDEyOGMwIDE3LjcgMTQuMyAzMiAzMiAzMmwxMjggMGMxNy43IDAgMzItMTQuMyAzMi0zMmwwLTEyOGMwLTE3LjctMTQuMy0zMi0zMi0zMkw5NiAxOTJ6Il19LGZfcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0cnVjay1wbGFuZSIsaWNvbjpbNjQwLDUxMixbXSwiZTU4ZiIsIk0xNDQgNDhjMC0yNi41IDIxLjUtNDggNDgtNDhzNDggMjEuNSA0OCA0OGwwIDMyMGMwIDMyLjUgMTIuMSA2Mi4xIDMyIDg0LjdsMCAyNy4zYzAgNy4xIC45IDE0LjEgMi43IDIwLjdMMTkyIDQ4MCA4My45IDUwN0M3My44IDUwOS42IDY0IDUwMS45IDY0IDQ5MS41bDAtMTkuOGMwLTQuOSAyLjItOS41IDYtMTIuNWw3NC01OS4yIDAtNTcuNi0xMjIuMSA0OC44QzExLjQgMzk1LjQgMCAzODcuNyAwIDM3Ni40bDAtNDRjMC04IDMtMTUuNiA4LjMtMjEuNUwxNDQgMTYxLjYgMTQ0IDQ4em0yMjQgODBsMTkyIDBjNDQuMiAwIDgwIDM1LjggODAgODBsMCAxNjBjMCAyNi4yLTEyLjYgNDkuNC0zMiA2NGwwIDQ4YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMzItMTYwIDAgMCAzMmMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTQ4Yy0xOS40LTE0LjYtMzItMzcuOC0zMi02NGwwLTE2MGMwLTQ0LjIgMzUuOC04MCA4MC04MHptMCAxNzZsMTkyIDAgMC0zMmMwLTE3LjctMTQuMy0zMi0zMi0zMmwtMTI4IDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMybDAgMzJ6bTAgODhhMjQgMjQgMCAxIDAgMC00OCAyNCAyNCAwIDEgMCAwIDQ4em0yMTYtMjRhMjQgMjQgMCAxIDAgLTQ4IDAgMjQgMjQgMCAxIDAgNDggMHoiXX0scF9yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhhbmQtaG9sZGluZy1oZWFydCIsaWNvbjpbNTc2LDUxMixbXSwiZjRiZSIsIk0yNzkuNiAzMUMyNjUuNSAxMS41IDI0Mi45IDAgMjE4LjkgMCAxNzcuNSAwIDE0NCAzMy41IDE0NCA3NC45bDAgMi40YzAgNjQuNCA4MiAxMzMuNCAxMjIuMiAxNjMuMyAxMyA5LjcgMzAuNSA5LjcgNDMuNSAwIDQwLjItMzAgMTIyLjItOTguOSAxMjIuMi0xNjMuM2wwLTIuNGMwLTQxLjQtMzMuNS03NC45LTc0LjktNzQuOS0yNCAwLTQ2LjYgMTEuNS02MC43IDMxTDI4OCA0Mi43IDI3OS42IDMxek0xMDkuMyAzNDEuNUw2Ni43IDM4NCAzMiAzODRjLTE3LjcgMC0zMiAxNC4zLTMyIDMybDAgNjRjMCAxNy43IDE0LjMgMzIgMzIgMzJsMzIwLjUgMGMyOSAwIDU3LjMtOS4zIDgwLjctMjYuNWwxMjYuNi05My4zYzE3LjgtMTMuMSAyMS42LTM4LjEgOC41LTU1LjlzLTM4LjEtMjEuNi01NS45LTguNUwzOTIuNiA0MTYgMjgwIDQxNmMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNGw3MiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC0xNTIuMiAwYy0zMy45IDAtNjYuNSAxMy41LTkwLjUgMzcuNXoiXX0sSTk9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYXJyb3ctcm90YXRlLWxlZnQiLGljb246WzUxMiw1MTIsWzg2MzQsImFycm93LWxlZnQtcm90YXRlIiwiYXJyb3ctcm90YXRlLWJhY2siLCJhcnJvdy1yb3RhdGUtYmFja3dhcmQiLCJ1bmRvIl0sImYwZTIiLCJNMjU2IDY0Yy01Ni44IDAtMTA3LjkgMjQuNy0xNDMuMSA2NGw0Ny4xIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJMMzIgMTkyYy0xNy43IDAtMzItMTQuMy0zMi0zMkwwIDMyQzAgMTQuMyAxNC4zIDAgMzIgMFM2NCAxNC4zIDY0IDMybDAgNTQuN0MxMTAuOSAzMy42IDE3OS41IDAgMjU2IDAgMzk3LjQgMCA1MTIgMTE0LjYgNTEyIDI1NlMzOTcuNCA1MTIgMjU2IDUxMmMtODcgMC0xNjMuOS00My40LTIxMC4xLTEwOS43LTEwLjEtMTQuNS02LjYtMzQuNCA3LjktNDQuNnMzNC40LTYuNiA0NC42IDcuOWMzNC44IDQ5LjggOTIuNCA4Mi4zIDE1Ny42IDgyLjMgMTA2IDAgMTkyLTg2IDE5Mi0xOTJTMzYyIDY0IDI1NiA2NHoiXX0saF9yPUk5LG1fcj1JOSxnX3I9STkseF9yPUk5LE5BZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmYWNlLWFuZ3J5IixpY29uOls1MTIsNTEyLFsxMjg1NDQsImFuZ3J5Il0sImY1NTYiLCJNMCAyNTZhMjU2IDI1NiAwIDEgMSA1MTIgMCAyNTYgMjU2IDAgMSAxIC01MTIgMHpNMjU2IDM2OGMyNC4xIDAgNDUuNCAxMS44IDU4LjUgMzAgNy43IDEwLjggMjIuNyAxMy4yIDMzLjUgNS41czEzLjItMjIuNyA1LjUtMzMuNWMtMjEuNy0zMC4yLTU3LjMtNTAtOTcuNS01MHMtNzUuNyAxOS44LTk3LjUgNTBjLTcuNyAxMC44LTUuMyAyNS44IDUuNSAzMy41czI1LjggNS4zIDMzLjUtNS41YzEzLjEtMTguMiAzNC40LTMwIDU4LjUtMzB6bS04MC05NmMxNy43IDAgMzItMTQuMyAzMi0zMmwwLS4zIDkuNyAzLjJjMTAuNSAzLjUgMjEuOC0yLjIgMjUuMy0xMi42cy0yLjItMjEuOC0xMi42LTI1LjNsLTk2LTMyYy0xMC41LTMuNS0yMS44IDIuMi0yNS4zIDEyLjZzMi4yIDIxLjggMTIuNiAyNS4zbDI4LjkgOS42Yy00LjEgNS40LTYuNiAxMi4xLTYuNiAxOS40IDAgMTcuNyAxNC4zIDMyIDMyIDMyem0xOTItMzJjMC03LjMtMi40LTE0LTYuNi0xOS40bDI4LjktOS42YzEwLjUtMy41IDE2LjEtMTQuOCAxMi42LTI1LjNzLTE0LjgtMTYuMS0yNS4zLTEyLjZsLTk2IDMyYy0xMC41IDMuNS0xNi4xIDE0LjgtMTIuNiAyNS4zczE0LjggMTYuMSAyNS4zIDEyLjZsOS43LTMuMiAwIC4zYzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJ6Il19LGJfcj1OQWUsdl9yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJ1cnN0IixpY29uOls1MTIsNTEyLFtdLCJlNGRjIiwiTTM3LjYgNC4yQzI4LTIuMyAxNS4yLTEuMSA3IDdTLTIuMyAyOCA0LjIgMzcuNmwxMTIgMTYzLjMtOTkuNiAzMi4zQzYuNyAyMzYuNCAwIDI0NS42IDAgMjU2czYuNyAxOS42IDE2LjYgMjIuOGwxMDMuMSAzMy40LTUyLjkgMTAwLjZjLTQuOSA5LjMtMy4yIDIwLjcgNC4zIDI4LjFzMTguOCA5LjIgMjguMSA0LjNsMTAwLjYtNTIuOSAzMy40IDEwMy4xYzMuMiA5LjkgMTIuNCAxNi42IDIyLjggMTYuNnMxOS42LTYuNyAyMi44LTE2LjZsMzMuNC0xMDMuMSAxMDAuNiA1Mi45YzkuMyA0LjkgMjAuNyAzLjIgMjguMS00LjNzOS4yLTE4LjggNC4zLTI4LjFsLTUyLjktMTAwLjYgMTAzLjEtMzMuNGM5LjktMy4yIDE2LjYtMTIuNCAxNi42LTIyLjhzLTYuNy0xOS42LTE2LjYtMjIuOGwtMTA2LjUtMzQuNSAyNS43LTcwLjRjMy4yLTguOCAxLTE4LjYtNS42LTI1LjJzLTE2LjQtOC44LTI1LjItNS42bC03MC40IDI1LjctMzQuNS0xMDYuNUMyNzUuNiA2LjcgMjY2LjQgMCAyNTYgMHMtMTkuNiA2LjctMjIuOCAxNi42TDIwMC45IDExNi4yIDM3LjYgNC4yeiJdfSx5X3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToieiIsaWNvbjpbMzg0LDUxMixbMTIyXSwiNWEiLCJNMCA2NEMwIDQ2LjMgMTQuMyAzMiAzMiAzMmwzMjAgMGMxMi40IDAgMjMuNyA3LjIgMjkgMTguNHMzLjYgMjQuNS00LjQgMzQuMUwxMDAuMyA0MTYgMzUyIDQxNmMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMkwzMiA0ODBjLTEyLjQgMC0yMy43LTcuMi0yOS0xOC40cy0zLjYtMjQuNSA0LjQtMzQuMUwyODMuNyA5NiAzMiA5NkMxNC4zIDk2IDAgODEuNyAwIDY0eiJdfSxGQWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYmFuZGFnZSIsaWNvbjpbNTc2LDUxMixbMTI5NjU3LCJiYW5kLWFpZCJdLCJmNDYyIiwiTTQ2NCA0MTZsNDggMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTE5MmMwLTM1LjMtMjguNy02NC02NC02NGwtNDggMCAwIDMyMHpNNDE2IDk2bC0yNTYgMCAwIDMyMCAyNTYgMCAwLTMyMHpNNjQgOTZDMjguNyA5NiAwIDEyNC43IDAgMTYwTDAgMzUyYzAgMzUuMyAyOC43IDY0IDY0IDY0bDQ4IDAgMC0zMjAtNDggMHpNMjE2IDIwOGEyNCAyNCAwIDEgMSA0OCAwIDI0IDI0IDAgMSAxIC00OCAwem0xMjAtMjRhMjQgMjQgMCAxIDEgMCA0OCAyNCAyNCAwIDEgMSAwLTQ4ek0yMTYgMzA0YTI0IDI0IDAgMSAxIDQ4IDAgMjQgMjQgMCAxIDEgLTQ4IDB6bTEyMC0yNGEyNCAyNCAwIDEgMSAwIDQ4IDI0IDI0IDAgMSAxIDAtNDh6Il19LHdfcj1GQWUsTV9yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBsYW5lLWNpcmNsZS1leGNsYW1hdGlvbiIsaWNvbjpbNjQwLDUxMixbXSwiZTU1NiIsIk0yMzIgMjRjMC0zMC45IDI1LjEtNTYgNTYtNTZzNTYgMjUuMSA1NiA1NmwwIDEyNy4zIDc4IDcxLjVjLTY5LjMgMjktMTE4IDk3LjQtMTE4IDE3Ny4yIDAgNDkuMyAxOC42IDk0LjMgNDkuMSAxMjguM0wyODggNTEyIDE3OS45IDUzOWMtMTAuMSAyLjUtMTkuOS01LjEtMTkuOS0xNS41bDAtMTkuOGMwLTQuOSAyLjItOS41IDYtMTIuNWw2Ni01Mi44IDAtOTkuNy0xNjIuOSA1NC4zQzU4LjcgMzk2LjQgNDggMzg4LjcgNDggMzc3LjhsMC00My43YzAtOSAzLjgtMTcuNSAxMC40LTIzLjZMMjMyIDE1MS4zIDIzMiAyNHpNNDk2IDI1NmExNDQgMTQ0IDAgMSAxIDAgMjg4IDE0NCAxNDQgMCAxIDEgMC0yODh6bTAgMjI4YTIwIDIwIDAgMSAwIDAtNDAgMjAgMjAgMCAxIDAgMCA0MHptMC0xODBjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDgwYzAgOC44IDcuMiAxNiAxNiAxNnMxNi03LjIgMTYtMTZsMC04MGMwLTguOC03LjItMTYtMTYtMTZ6Il19LGtfcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJidXMtc2lkZSIsaWNvbjpbNjQwLDUxMixbXSwiZTgxZCIsIk00ODAgMGM4OC40IDAgMTYwIDcxLjYgMTYwIDE2MGwwIDIyNGMwIDM1LjMtMjguNyA2NC02NCA2NGwtNS42IDBjLTEzLjIgMzcuMy00OC42IDY0LTkwLjQgNjRzLTc3LjMtMjYuNy05MC40LTY0bC0xMzkuMSAwYy0xMy4yIDM3LjMtNDguNyA2NC05MC40IDY0cy03Ny4yLTI2LjctOTAuNC02NEw2NCA0NDhjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgOTZDMCA0MyA0MyAwIDk2IDBMNDgwIDB6TTE2MCAzNjhhNDggNDggMCAxIDAgMCA5NiA0OCA0OCAwIDEgMCAwLTk2em0zMjAgMGE0OCA0OCAwIDEgMCAwIDk2IDQ4IDQ4IDAgMSAwIDAtOTZ6bTAtMzA0Yy0xNy43IDAtMzIgMTQuMy0zMiAzMmwwIDE5MmMwIDE3LjcgMTQuMyAzMiAzMiAzMmw2NCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtMTI4YzAtNTMtNDMtOTYtOTYtOTZ6TTI0OCAyMjRsMTA0IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJsMC05NmMwLTE3LjctMTQuMy0zMi0zMi0zMmwtMTA0IDAgMCAxNjB6TTk2IDY0Qzc4LjMgNjQgNjQgNzguMyA2NCA5NmwwIDk2YzAgMTcuNyAxNC4zIDMyIDMyIDMybDEwNCAwIDAtMTYwLTEwNCAweiJdfSxTX3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYnVncyIsaWNvbjpbNTc2LDUxMixbXSwiZTRkMCIsIk00NDcuNSAxNzQuNmM4LjgtOC40IDIyLjctOC45IDMyLjItLjhzMTEgMjEuOSA0LjEgMzEuOWwtMS41IDEuOS0yMyAyNi43YzI2LjcgMTMuNSA0Ni4zIDM5LjEgNTEuNCA2OS42bDI1LjMgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtMjQgMCAwIDMyIDI0IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTI1LjMgMGMtNy42IDQ1LjQtNDcuMSA4MC05NC43IDgwcy04Ny0zNC42LTk0LjctODBMMjk2IDQzMmMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNGwyNCAwIDAtMzItMjQgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNGwyNS4zIDBjNS4xLTMwLjUgMjQuNy01Ni4xIDUxLjQtNjkuNmwtMjIuOS0yNi43Yy04LjYtMTAuMS03LjUtMjUuMiAyLjYtMzMuOHMyNS4yLTcuNSAzMy44IDIuNmwyOS44IDM0LjggMjkuOC0zNC44IDEuNy0xLjh6bS0yNTYtMTkyYzguOC04LjQgMjIuNy04LjkgMzIuMi0uOHMxMSAyMS45IDQuMSAzMS45bC0xLjUgMS45LTIzIDI2LjdDMjMwIDU1LjkgMjQ5LjUgODEuNSAyNTQuNyAxMTJsMjUuMyAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC0yNCAwIDAgMzIgMjQgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtMjUuMyAwYy03LjYgNDUuNC00Ny4xIDgwLTk0LjcgODBzLTg3LTM0LjYtOTQuNy04MEw0MCAyNDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjRsMjQgMCAwLTMyLTI0IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjRsMjUuMyAwQzcwLjUgODEuNSA5MCA1NS45IDExNi43IDQyLjRMOTMuOCAxNS42Qzg1LjIgNS42IDg2LjMtOS42IDk2LjQtMTguMnMyNS4yLTcuNSAzMy44IDIuNmwyOS44IDM0LjggMjkuOC0zNC44IDEuNy0xLjh6Il19LE9BZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJiZWVyLW11Zy1lbXB0eSIsaWNvbjpbNTc2LDUxMixbImJlZXIiXSwiZjBmYyIsIk02NCA4MGMwLTI2LjUgMjEuNS00OCA0OC00OGwyODggMGMyNi41IDAgNDggMjEuNSA0OCA0OGwwIDE2IDY0IDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAxMDguMmMwIDI0LjItMTMuNyA0Ni40LTM1LjQgNTcuMkw0NDggMzcxLjggNDQ4IDM4NGMwIDUzLTQzIDk2LTk2IDk2bC0xOTIgMGMtNTMgMC05Ni00My05Ni05Nkw2NCA4MHpNNDQ4IDMwMC4ybDY0LTMyIDAtMTA4LjItNjQgMCAwIDE0MC4yek0xOTIgMTUyYzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0bDAgMjA4YzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC0yMDh6bTg4IDBjMC0xMy4zLTEwLjctMjQtMjQtMjRzLTI0IDEwLjctMjQgMjRsMCAyMDhjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTIwOHptODggMGMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNGwwIDIwOGMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtMjA4eiJdfSx6X3I9T0FlLENfcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwZXJzb24tY2lyY2xlLWNoZWNrIixpY29uOls2NDAsNTEyLFtdLCJlNTNlIiwiTTI4MCAyNGE1NiA1NiAwIDEgMCAtMTEyIDAgNTYgNTYgMCAxIDAgMTEyIDB6bTI0IDIxMi43TDM0MSAyODYuNmMxMi44LTE3LjUgMjguNS0zMi43IDQ2LjMtNDVsLTU2LjItNzUuN0MzMDYgMTMyIDI2Ni4zIDExMiAyMjQgMTEycy04MiAyMC0xMDcuMiA1My45bC03MC41IDk1Yy0xMC41IDE0LjItNy42IDM0LjIgNi42IDQ0LjhzMzQuMiA3LjYgNDQuOC02LjZMMTQ0IDIzNi43IDE0NCA1MTJjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTE2MGMwLTguOCA3LjItMTYgMTYtMTZzMTYgNy4yIDE2IDE2bDAgMTYwYzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0yNzUuM3pNNjQwIDQwMGExNDQgMTQ0IDAgMSAwIC0yODggMCAxNDQgMTQ0IDAgMSAwIDI4OCAwem0tODYuNi02MC45YzcuMSA1LjIgOC43IDE1LjIgMy41IDIyLjNsLTY0IDg4Yy0yLjggMy44LTcgNi4yLTExLjcgNi41cy05LjMtMS4zLTEyLjYtNC42bC00MC00MGMtNi4yLTYuMi02LjItMTYuNCAwLTIyLjZzMTYuNC02LjIgMjIuNiAwbDI2LjggMjYuOCA1My03Mi45YzUuMi03LjEgMTUuMi04LjcgMjIuNC0zLjV6Il19LF9fcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzdGFwbGVyIixpY29uOls2NDAsNTEyLFtdLCJlNWFmIiwiTTY0MCAyOTkuM0w2NDAgNDMyYzAgMjYuNS0yMS41IDQ4LTQ4IDQ4TDY0IDQ4MGMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMmwzODQgMCAwLTQ4LTM1MiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTExNi42LTMwLjItNS40Yy0xOS42LTMuNS0zMy44LTIwLjUtMzMuOC00MC40IDAtOC45IDIuOS0xNy41IDguMi0yNC42bDM1LjYtNDcuNWMzMi44LTQzLjggODQuNC02OS42IDEzOS4xLTY5LjYgMjcgMCA1My42IDYuMyA3Ny44IDE4LjRMNTg2LjkgMjEzLjVDNjE5LjUgMjI5LjcgNjQwIDI2MyA2NDAgMjk5LjN6TTQ0OCAzMDRsMC0xNi0zMjAtNTcuMSAwIDczLjEgMzIwIDB6Il19LFRfcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJob3VzZS1tZWRpY2FsLWNpcmNsZS1jaGVjayIsaWNvbjpbNjQwLDUxMixbXSwiZTUxMSIsIk0zMDkuOCA4LjZjLTEyLjMtMTEuNC0zMS4zLTExLjQtNDMuNSAwbC0yMjQgMjA4Yy05LjYgOS0xMi44IDIyLjktOCAzNS4xUzUwLjggMjcyIDY0IDI3MmwxNiAwIDAgMTc2YzAgMzUuMyAyOC43IDY0IDY0IDY0bDE5NiAwYy0yMS4yLTI5LjUtMzQuMy02NS4zLTM1LjktMTA0TDI3MiA0MDhjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTQwLTQwIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyYzAtOC44IDcuMi0xNiAxNi0xNmw0MCAwIDAtNDBjMC04LjggNy4yLTE2IDE2LTE2bDMyIDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgNDAgMjAgMGMzNC45LTQ4LjUgOTEuNy04MCAxNTYtODAgMTAuNyAwIDIxLjEgLjkgMzEuMyAyLjVMMzA5LjggOC42ek02NDAgNDAwYTE0NCAxNDQgMCAxIDAgLTI4OCAwIDE0NCAxNDQgMCAxIDAgMjg4IDB6bS04Ni42LTYwLjljNy4xIDUuMiA4LjcgMTUuMiAzLjUgMjIuM2wtNjQgODhjLTIuOCAzLjgtNyA2LjItMTEuNyA2LjVzLTkuMy0xLjMtMTIuNi00LjZsLTQwLTQwYy02LjItNi4yLTYuMi0xNi40IDAtMjIuNnMxNi40LTYuMiAyMi42IDBsMjYuOCAyNi44IDUzLTcyLjljNS4yLTcuMSAxNS4yLTguNyAyMi40LTMuNXoiXX0sTF9yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im5haXJhLXNpZ24iLGljb246WzQ0OCw1MTIsW10sImUxZjYiLCJNMTIyLjYgNDYuM2MtNy44LTExLjctMjIuNC0xNy0zNS45LTEyLjlTNjQgNDkuOSA2NCA2NGwwIDE5Mi0zMiAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDMyIDAgMCAxNDRjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTE0NCA4OS41IDAgMTA3LjggMTYxLjhjNy44IDExLjcgMjIuNCAxNyAzNS45IDEyLjlTMzg0IDQ2Mi4xIDM4NCA0NDhsMC0xNDQgMzIgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtMzIgMCAwLTE5MmMwLTE3LjctMTQuMy0zMi0zMi0zMnMtMzIgMTQuMy0zMiAzMmwwIDE5Mi01Ny41IDAtMTM5LjgtMjA5Ljd6TTI5NC41IDMwNGwyNS41IDAgMCAzOC4zLTI1LjUtMzguM3pNMTg1LjUgMjU2bC01Ny41IDAgMC04Ni4zIDU3LjUgODYuM3oiXX0sVTJlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6IndpZmkiLGljb246WzU3Niw1MTIsWyJ3aWZpLTMiLCJ3aWZpLXN0cm9uZyJdLCJmMWViIiwiTTI4OCA5NmMtOTAuOSAwLTE3My4yIDM2LTIzMy43IDk0LjYtMTIuNyAxMi4zLTMzIDEyLTQ1LjItLjdzLTEyLTMzIC43LTQ1LjJDODEuNyA3NC45IDE3OS45IDMyIDI4OCAzMlM0OTQuMyA3NC45IDU2Ni4zIDE0NC43YzEyLjcgMTIuMyAxMyAzMi42IC43IDQ1LjJzLTMyLjYgMTMtNDUuMiAuN0M0NjEuMiAxMzIgMzc4LjkgOTYgMjg4IDk2ek0yNDAgNDMyYTQ4IDQ4IDAgMSAxIDk2IDAgNDggNDggMCAxIDEgLTk2IDB6TTE2OCAzMjYuMmMtMTEuNyAxMy4zLTMxLjkgMTQuNS00NS4yIDIuOHMtMTQuNS0zMS45LTIuOC00NS4yQzE2MSAyMzcuNCAyMjEuMSAyMDggMjg4IDIwOHMxMjcgMjkuNCAxNjggNzUuOGMxMS43IDEzLjMgMTAuNCAzMy41LTIuOCA0NS4ycy0zMy41IDEwLjQtNDUuMi0yLjhDMzc4LjYgMjkyLjkgMzM1LjggMjcyIDI4OCAyNzJzLTkwLjYgMjAuOS0xMjAgNTQuMnoiXX0sRF9yPVUyZSxBX3I9VTJlLFZ3PXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im1vbmV5LWNoZWNrLWRvbGxhciIsaWNvbjpbNTEyLDUxMixbIm1vbmV5LWNoZWNrLWFsdCJdLCJmNTNkIiwiTTY0IDY0QzI4LjcgNjQgMCA5Mi43IDAgMTI4TDAgMzg0YzAgMzUuMyAyOC43IDY0IDY0IDY0bDM4NCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMjU2YzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDY0ek0yOTYgMjg4bDEyOCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC0xMjggMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNHptLTI0LTg4YzAtMTMuMyAxMC43LTI0IDI0LTI0bDEyOCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC0xMjggMGMtMTMuMyAwLTI0LTEwLjctMjQtMjR6TTE0OCAxNDRjMTEgMCAyMCA5IDIwIDIwbDAgNCA4IDBjMTEgMCAyMCA5IDIwIDIwcy05IDIwLTIwIDIwbC00Ny41IDBjLTYuOSAwLTEyLjUgNS42LTEyLjUgMTIuNSAwIDYuMSA0LjQgMTEuMyAxMC40IDEyLjNsNDEuNyA3YzI1LjMgNC4yIDQzLjkgMjYuMSA0My45IDUxLjggMCAyNi4xLTE5IDQ3LjctNDQgNTEuOGwwIDQuN2MwIDExLTkgMjAtMjAgMjBzLTIwLTktMjAtMjBsMC00LTI0IDBjLTExIDAtMjAtOS0yMC0yMHM5LTIwIDIwLTIwbDU1LjUgMGM2LjkgMCAxMi41LTUuNiAxMi41LTEyLjUgMC02LjEtNC40LTExLjMtMTAuNC0xMi4zbC00MS43LTdDOTQuNSAyNjggNzYgMjQ2LjEgNzYgMjIwLjUgNzYgMTkxLjcgOTkuMiAxNjguMyAxMjggMTY4bDAtNGMwLTExIDktMjAgMjAtMjB6Il19LEVfcj1WdyxSQWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZXllLWxvdy12aXNpb24iLGljb246WzU3Niw1MTIsWyJsb3ctdmlzaW9uIl0sImYyYTgiLCJNNDEtMjQuOWMtOS40LTkuNC0yNC42LTkuNC0zMy45IDBTLTIuMy0uMyA3IDkuMWw1MjggNTI4YzkuNCA5LjQgMjQuNiA5LjQgMzMuOSAwczkuNC0yNC42IDAtMzMuOWwtOTYuNC05Ni40YzIuNy0yLjQgNS40LTQuOCA4LTcuMiA0Ni44LTQzLjUgNzguMS05NS40IDkzLTEzMS4xIDMuMy03LjkgMy4zLTE2LjcgMC0yNC42LTE0LjktMzUuNy00Ni4yLTg3LjctOTMtMTMxLjEtNDcuMS00My43LTExMS44LTgwLjYtMTkyLjYtODAuNi01Ni44IDAtMTA1LjYgMTguMi0xNDYgNDQuMkw0MS0yNC45ek0yMDQuNSAxMzguN2MyMy41LTE2LjggNTIuNC0yNi43IDgzLjUtMjYuNyA3OS41IDAgMTQ0IDY0LjUgMTQ0IDE0NCAwIDMxLjEtOS45IDU5LjktMjYuNyA4My41bC0zNC43LTM0LjdjMTIuNy0yMS40IDE3LTQ3LjcgMTAuMS03My43LTEzLjctNTEuMi02Ni40LTgxLjYtMTE3LjYtNjcuOS04LjYgMi4zLTE2LjcgNS43LTI0IDEwbC0zNC43LTM0Ljd6TTg4IDE1Ny45Yy05LjQtOS40LTI0LjYtOS40LTMzLjkgMHMtOS40IDI0LjYgMCAzMy45TDMyOC4yIDQ2NmM5LjQgOS40IDI0LjYgOS40IDMzLjkgMHM5LjQtMjQuNiAwLTMzLjlMODggMTU3Ljl6TTQ1LjcgMjUxLjNjLTkuNC05LjQtMjQuNi05LjQtMzMuOSAwcy05LjQgMjQuNiAwIDMzLjlMMTgxLjkgNDU1LjVjOS40IDkuNCAyNC42IDkuNCAzMy45IDBzOS40LTI0LjYgMC0zMy45TDQ1LjcgMjUxLjN6Il19LCRfcj1SQWUsQkFlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNpcmNsZS1hcnJvdy11cCIsaWNvbjpbNTEyLDUxMixbImFycm93LWNpcmNsZS11cCJdLCJmMGFhIiwiTTI1NiA1MTJhMjU2IDI1NiAwIDEgMCAwLTUxMiAyNTYgMjU2IDAgMSAwIDAgNTEyem0xNy0zNzdsODAgODBjOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlzLTI0LjYgOS40LTMzLjkgMGwtMzktMzkgMCAxNTAuMWMwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNGwwLTE1MC4xLTM5IDM5Yy05LjQgOS40LTI0LjYgOS40LTMzLjkgMHMtOS40LTI0LjYgMC0zMy45bDgwLTgwYzkuNC05LjQgMjQuNi05LjQgMzMuOSAweiJdfSxQX3I9QkFlLElfcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjYW1lcmEtcmV0cm8iLGljb246WzUxMiw1MTIsWzEyODI0N10sImYwODMiLCJNMCA0MTZsMC0yMDggMTM2LjIgMGMxMy41LTIwLjIgMzItMzYuOCA1My43LTQ4TDAgMTYwIDAgMTI1LjdjMC0zNS4zIDI4LjctNjQgNjQtNjRsLjEgMEM2NS4zIDQ1LjEgNzkuMSAzMiA5NiAzMmwzMiAwYzE2LjkgMCAzMC43IDEzLjEgMzEuOSAyOS43bDMyLjEgMCA1MS4yLTIzLjhjOC40LTMuOSAxNy42LTYgMjYuOS02TDQ0OCAzMmMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDY0LTE5MCAwYzIxLjcgMTEuMiA0MC4yIDI3LjggNTMuNyA0OGwxMzYuMiAwIDAgMjA4YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDQ4MGMtMzUuMyAwLTY0LTI4LjctNjQtNjR6TTI1NiAxOTJhOTYuMSA5Ni4xIDAgMSAwIDAgMTkyLjEgOTYuMSA5Ni4xIDAgMSAwIDAtMTkyLjF6Il19LE5fcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjYXBzdWxlcyIsaWNvbjpbNTc2LDUxMixbXSwiZjQ2YiIsIk05NiAxMTJjMC0yNi41IDIxLjUtNDggNDgtNDhzNDggMjEuNSA0OCA0OGwwIDExMi05NiAwIDAtMTEyem0tNjQgMGwwIDI4OGMwIDYxLjkgNTAuMSAxMTIgMTEyIDExMnMxMTItNTAuMSAxMTItMTEybDAtMTA1LjggMTE2LjMgMTY5LjVjMzUuNSA1MS43IDEwNS4zIDY0LjMgMTU2IDI4LjFzNjMtMTA3LjUgMjcuNS0xNTkuMkw0MjcuMyAxNDUuM2MtMzUuNS01MS43LTEwNS4zLTY0LjMtMTU2LTI4LjEtNS42IDQtMTAuNyA4LjQtMTUuMyAxMy4xbDAtMTguM0MyNTYgNTAuMSAyMDUuOSAwIDE0NCAwUzMyIDUwLjEgMzIgMTEyek0yOTYuNiAyNDAuMmMtMTYtMjMuMy0xMC01NS4zIDExLjktNzEgMjEuMi0xNS4xIDUwLjUtMTAuMyA2NiAxMi4ybDY3IDk3LjYtNzkuOSA1NS45LTY1LTk0Ljh6Il19LEZfcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwb28iLGljb246WzUxMiw1MTIsWzEyODE2OV0sImYyZmUiLCJNMjY4LjkgLjljLTUuNS0uNy0xMSAxLjQtMTQuNSA1LjdzLTQuNiAxMC4xLTIuOCAxNS40YzIuOCA4LjIgNC4zIDE2LjkgNC4zIDI2LjEgMCA0NC4xLTM1LjcgNzkuOS03OS44IDgwTDE2MCAxMjhjLTM1LjMgMC02NCAyOC43LTY0IDY0IDAgMTkuMSA4LjQgMzYuMyAyMS43IDQ4TDEwNCAyNDBjLTM5LjggMC03MiAzMi4yLTcyIDcyIDAgMjMuMiAxMSA0My44IDI4IDU3LTM0LjEgNS43LTYwIDM1LjMtNjAgNzEgMCAzOS44IDMyLjIgNzIgNzIgNzJsMzY4IDBjMzkuOCAwIDcyLTMyLjIgNzItNzIgMC0zNS43LTI1LjktNjUuMy02MC03MSAxNy0xMy4yIDI4LTMzLjggMjgtNTcgMC0zOS44LTMyLjItNzItNzItNzJsLTEzLjcgMGMxMy4zLTExLjcgMjEuNy0yOC45IDIxLjctNDggMC0zNS4zLTI4LjctNjQtNjQtNjRsLTUuNSAwYzMuNS0xMCA1LjUtMjAuOCA1LjUtMzIgMC00OC42LTM2LjItODguOC04My4xLTk1LjF6TTE5MiAyNTZhMzIgMzIgMCAxIDEgMCA2NCAzMiAzMiAwIDEgMSAwLTY0em05NiAzMmEzMiAzMiAwIDEgMSA2NCAwIDMyIDMyIDAgMSAxIC02NCAwem02NCAxMDguM2MwIDIuNC0uNyA0LjgtMi4yIDYuNy04LjIgMTAuNS0zOS41IDQ1LTkzLjggNDVzLTg1LjYtMzQuNi05My44LTQ1Yy0xLjUtMS45LTIuMi00LjMtMi4yLTYuNyAwLTYuOCA1LjUtMTIuMyAxMi4zLTEyLjNsMTY3LjQgMGM2LjggMCAxMi4zIDUuNSAxMi4zIDEyLjN6Il19LEhBZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ2b2x1bWUiLGljb246WzUxMiw1MTIsWzEyODI2NSwidm9sdW1lLW1lZGl1bSJdLCJmNmE4IiwiTTQ4IDM1Mmw0OCAwIDEzNC4xIDExOS4yYzYuNCA1LjcgMTQuNiA4LjggMjMuMSA4LjggMTkuMiAwIDM0LjgtMTUuNiAzNC44LTM0LjhsMC0zNzguNGMwLTE5LjItMTUuNi0zNC44LTM0LjgtMzQuOC04LjUgMC0xNi43IDMuMS0yMy4xIDguOEw5NiAxNjAgNDggMTYwYy0yNi41IDAtNDggMjEuNS00OCA0OGwwIDk2YzAgMjYuNSAyMS41IDQ4IDQ4IDQ4ek00NDEuMSAxMDdjLTEwLjMtOC40LTI1LjQtNi44LTMzLjggMy41cy02LjggMjUuNCAzLjUgMzMuOEM0NDMuMyAxNzAuNyA0NjQgMjEwLjkgNDY0IDI1NnMtMjAuNyA4NS4zLTUzLjIgMTExLjhjLTEwLjMgOC40LTExLjggMjMuNS0zLjUgMzMuOHMyMy41IDExLjggMzMuOCAzLjVjNDMuMi0zNS4yIDcwLjktODguOSA3MC45LTE0OXMtMjcuNy0xMTMuOC03MC45LTE0OXptLTYwLjUgNzQuNWMtMTAuMy04LjQtMjUuNC02LjgtMzMuOCAzLjVzLTYuOCAyNS40IDMuNSAzMy44QzM2MS4xIDIyNy42IDM2OCAyNDEgMzY4IDI1NnMtNi45IDI4LjQtMTcuNyAzNy4zYy0xMC4zIDguNC0xMS44IDIzLjUtMy41IDMzLjhzMjMuNSAxMS44IDMzLjggMy41QzQwMi4xIDMxMi45IDQxNiAyODYuMSA0MTYgMjU2cy0xMy45LTU2LjktMzUuNS03NC41eiJdfSxPX3I9SEFlLFJfcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJlbGV2YXRvciIsaWNvbjpbNTEyLDUxMixbXSwiZTE2ZCIsIk0yOTIuNy00LjdsNjQgNjRjNi4yIDYuMiAxNi40IDYuMiAyMi42IDBsNjQtNjRjNC42LTQuNiA1LjktMTEuNSAzLjUtMTcuNFM0MzguNS0zMiA0MzItMzJMMzA0LTMyYy02LjUgMC0xMi4zIDMuOS0xNC44IDkuOXMtMS4xIDEyLjkgMy41IDE3LjR6bS0xNjAtMjIuNmwtNjQgNjRjLTQuNiA0LjYtNS45IDExLjUtMy41IDE3LjRTNzMuNSA2NCA4MCA2NGwxMjggMGM2LjUgMCAxMi4zLTMuOSAxNC44LTkuOXMxLjEtMTIuOS0zLjUtMTcuNGwtNjQtNjRjLTYuMi02LjItMTYuNC02LjItMjIuNiAwek02NCAxMjhjLTM1LjMgMC02NCAyOC43LTY0IDY0TDAgNDQ4YzAgMzUuMyAyOC43IDY0IDY0IDY0bDM4NCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMjU2YzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDEyOHptOTYgOTZhNDggNDggMCAxIDEgMCA5NiA0OCA0OCAwIDEgMSAwLTk2ek04MCA0MDBjMC0yNi41IDIxLjUtNDggNDgtNDhsNjQgMGMyNi41IDAgNDggMjEuNSA0OCA0OGwwIDE2YzAgMTcuNy0xNC4zIDMyLTMyIDMybC05NiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTE2em0xOTIgMGMwLTI2LjUgMjEuNS00OCA0OC00OGw2NCAwYzI2LjUgMCA0OCAyMS41IDQ4IDQ4bDAgMTZjMCAxNy43LTE0LjMgMzItMzIgMzJsLTk2IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtMTZ6bTMyLTEyOGE0OCA0OCAwIDEgMSA5NiAwIDQ4IDQ4IDAgMSAxIC05NiAweiJdfSxCX3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidGFnIixpY29uOls1MTIsNTEyLFsxMjc5OTFdLCJmMDJiIiwiTTMyLjUgOTZsMCAxNDkuNWMwIDE3IDYuNyAzMy4zIDE4LjcgNDUuM2wxOTIgMTkyYzI1IDI1IDY1LjUgMjUgOTAuNSAwTDQ4My4yIDMzMy4zYzI1LTI1IDI1LTY1LjUgMC05MC41bC0xOTItMTkyQzI3OS4yIDM4LjcgMjYzIDMyIDI0NiAzMkw5Ni41IDMyYy0zNS4zIDAtNjQgMjguNy02NCA2NHptMTEyIDE2YTMyIDMyIDAgMSAxIDAgNjQgMzIgMzIgMCAxIDEgMC02NHoiXX0sSF9yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZpbGUtY2lyY2xlLW1pbnVzIixpY29uOls1NzYsNTEyLFtdLCJlNGVkIiwiTTk2IDBDNjAuNyAwIDMyIDI4LjcgMzIgNjRsMCAzODRjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMTgwIDBjLTIyLjctMzEuNS0zNi03MC4yLTM2LTExMiAwLTEwMC42IDc3LjQtMTgzLjIgMTc2LTE5MS4zbDAtMzguMWMwLTE3LTYuNy0zMy4zLTE4LjctNDUuM0wyOTAuNyAxOC43QzI3OC43IDYuNyAyNjIuNSAwIDI0NS41IDBMOTYgMHpNMzU3LjUgMTc2TDI2NCAxNzZjLTEzLjMgMC0yNC0xMC43LTI0LTI0TDI0MCA1OC41IDM1Ny41IDE3NnpNNTc2IDQwMGExNDQgMTQ0IDAgMSAwIC0yODggMCAxNDQgMTQ0IDAgMSAwIDI4OCAwem0tNjQgMGMwIDguOC03LjIgMTYtMTYgMTZsLTEyOCAwYy04LjggMC0xNi03LjItMTYtMTZzNy4yLTE2IDE2LTE2bDEyOCAwYzguOCAwIDE2IDcuMiAxNiAxNnoiXX0scUFlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImRvd24tbG9uZyIsaWNvbjpbMzIwLDUxMixbImxvbmctYXJyb3ctYWx0LWRvd24iXSwiZjMwOSIsIk0xMzcuNCA1MzQuNmMxMi41IDEyLjUgMzIuOCAxMi41IDQ1LjMgMGwxMjgtMTI4YzkuMi05LjIgMTEuOS0yMi45IDYuOS0zNC45UzMwMC45IDM1MiAyODggMzUybC02NCAwIDAtMzM2YzAtMjYuNS0yMS41LTQ4LTQ4LTQ4bC0zMiAwYy0yNi41IDAtNDggMjEuNS00OCA0OGwwIDMzNi02NCAwYy0xMi45IDAtMjQuNiA3LjgtMjkuNiAxOS44Uy4yIDM5Ny41IDkuNCA0MDYuNmwxMjggMTI4eiJdfSxxX3I9cUFlLGpfcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjb21wYWN0LWRpc2MiLGljb246WzUxMiw1MTIsWzEyODE5MSwxMjgxOTIsMTI4NDQwXSwiZjUxZiIsIk0wIDI1NmEyNTYgMjU2IDAgMSAxIDUxMiAwIDI1NiAyNTYgMCAxIDEgLTUxMiAwem0yNTYgMzJhMzIgMzIgMCAxIDEgMC02NCAzMiAzMiAwIDEgMSAwIDY0em0tOTYtMzJhOTYgOTYgMCAxIDAgMTkyIDAgOTYgOTYgMCAxIDAgLTE5MiAwem0tNTYtMTZjMC0zMi40IDE2LjMtNjYuNiA0Mi44LTkzLjJTMjA3LjYgMTA0IDI0MCAxMDRjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRjLTQ3LjkgMC05My43IDIzLjUtMTI3LjEgNTYuOVM1NiAxOTIuMSA1NiAyNDBjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNHoiXX0sVl9yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InN1aXRjYXNlLXJvbGxpbmciLGljb246WzM4NCw1MTIsW10sImY1YzEiLCJNMTQ0IDI0YzAtNC40IDMuNi04IDgtOGw4MCAwYzQuNCAwIDggMy42IDggOGwwIDcyLTk2IDAgMC03MnpNMzIwIDk2bC0zMiAwIDAtNzJjMC0zMC45LTI1LjEtNTYtNTYtNTZsLTgwIDBDMTIxLjEtMzIgOTYtNi45IDk2IDI0bDAgNzItMzIgMEMyOC43IDk2IDAgMTI0LjcgMCAxNjBMMCA0NDhjMCAzNS4zIDI4LjcgNjQgNjQgNjQgMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwxMjggMGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMyYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMjg4YzAtMzUuMy0yOC43LTY0LTY0LTY0ek0xMjAgMjA4bDE0NCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC0xNDQgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNHptMCAxMjhsMTQ0IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTE0NCAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0eiJdfSxqQWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYm9vay1xdXJhbiIsaWNvbjpbNDQ4LDUxMixbInF1cmFuIl0sImY2ODciLCJNNjQgNTEybDI4OCAwYzUzIDAgOTYtNDMgOTYtOTZsMC0zMjBjMC01My00My05Ni05Ni05Nkw0OCAwQzIxLjUgMCAwIDIxLjUgMCA0OEwwIDMzNmMwIDIwLjkgMTMuNCAzOC43IDMyIDQ1LjNMMzIgNDQ4Yy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDMyIDB6TTM1MiAzODRjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTI1NiAwIDAtNjQgMjU2IDB6TTI3My4xIDE0NC40YzIuNS02LjEgMTEuMi02LjEgMTMuNyAwbDEwLjMgMjQuOCAyNi44IDIuMWM2LjYgLjUgOS4yIDguNyA0LjIgMTNMMzA3LjggMjAxLjkgMzE0IDIyOGMxLjUgNi40LTUuNSAxMS41LTExLjEgOC4xbC0yMi45LTE0LTIyLjkgMTRjLTUuNiAzLjQtMTIuNi0xLjYtMTEuMS04LjFsNi4yLTI2LjEtMjAuNC0xNy41Yy01LTQuMy0yLjMtMTIuNSA0LjItMTNsMjYuOC0yLjEgMTAuMy0yNC44ek0xMDAgMTkyYzAtNjguNSA1NS41LTEyNCAxMjQtMTI0IDIzLjggMCA0Ni4xIDYuNyA2NSAxOC40IDQuOCAyLjkgNi45IDguOCA1IDE0LjFzLTcuMSA4LjYtMTIuNyA4Yy0zLjEtLjMtNi4yLS41LTkuNC0uNS00Ni40IDAtODQgMzcuNi04NCA4NHMzNy42IDg0IDg0IDg0YzMuMiAwIDYuMy0uMiA5LjQtLjUgNS42LS42IDEwLjggMi43IDEyLjcgOHMtLjMgMTEuMi01IDE0LjFjLTE4LjkgMTEuNy00MS4yIDE4LjQtNjUgMTguNC02OC41IDAtMTI0LTU1LjUtMTI0LTEyNHoiXX0sVV9yPWpBZSxXX3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGhvbmUtc2xhc2giLGljb246WzU3Niw1MTIsW10sImYzZGQiLCJNNTM1LTI0LjljOS40LTkuNCAyNC42LTkuNCAzMy45IDBzOS40IDI0LjYgMCAzMy45TDQxIDUzNy4xYy05LjQgOS40LTI0LjYgOS40LTMzLjkgMHMtOS40LTI0LjYgMC0zMy45TDE0MS41IDM2OC42Qzg5LjIgMzEwLjUgNTEuNiAyMzguOCAzNC44IDE1OS40IDE4LjcgODMuMSA3My45IDIwLjYgMTM4LjUgMi45bDUuNS0xLjVjMTkuNy01LjQgNDAuMyA0LjcgNDguMSAyMy41bDQwLjUgOTcuM2M2LjkgMTYuNSAyLjEgMzUuNi0xMS44IDQ3bC00NC4xIDM2LjFjMTIuOSAyOC41IDI5LjYgNTQuOCA0OS41IDc4LjVMNTM1LTI0Ljl6bS0xNTAuNCA1MzRjLTYzLTEzLjQtMTIxLjMtMzkuOC0xNzEuNy03Ni4zTDI5Ny44IDM0OGMxMi4yIDguMiAyNSAxNS42IDM4LjMgMjIuMkwzNzQuNyAzMjNjMTEuMy0xMy45IDMwLjQtMTguNiA0Ny0xMS44TDUxOSAzNTEuOGMxOC44IDcuOCAyOC45IDI4LjQgMjMuNSA0OC4xbC0xLjUgNS41Yy0xNy42IDY0LjYtODAuMiAxMTkuOC0xNTYuNCAxMDMuN3oiXX0sR19yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InJvYWQtY2lyY2xlLWNoZWNrIixpY29uOls2NDAsNTEyLFtdLCJlNTY0IiwiTTI4OCAzMmwtNzYuMyAwYy0yOS40IDAtNTUuMSAyMC4xLTYyLjEgNDguNkw2NS40IDQyMC41QzU3LjkgNDUwLjcgODAuOCA0ODAgMTEyIDQ4MGwyMDkuNCAwYy0xMS4yLTI0LjQtMTcuNC01MS40LTE3LjQtODAgMC0yOC42IDYuMi01NS43IDE3LjQtODAtLjUgMC0xIDAtMS41IDAtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC02NGMwLTE3LjcgMTQuMy0zMiAzMi0zMnMzMiAxNC4zIDMyIDMybDAgNDljMzUuMi0zOS45IDg2LjctNjUgMTQ0LTY1IDkgMCAxNy44IC42IDI2LjUgMS44bC0zMi0xMjkuMkM0ODMuNCA1Mi4xIDQ1Ny44IDMyIDQyOC4zIDMybC03Ni40IDAgMCA2NGMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTY0ek02NDAgNDAwYTE0NCAxNDQgMCAxIDAgLTI4OCAwIDE0NCAxNDQgMCAxIDAgMjg4IDB6bS04Ni42LTYwLjljNy4xIDUuMiA4LjcgMTUuMiAzLjUgMjIuM2wtNjQgODhjLTIuOCAzLjgtNyA2LjItMTEuNyA2LjVzLTkuMy0xLjMtMTIuNi00LjZsLTQwLTQwYy02LjItNi4yLTYuMi0xNi40IDAtMjIuNnMxNi40LTYuMiAyMi42IDBsMjYuOCAyNi44IDUzLTcyLjljNS4yLTcuMSAxNS4yLTguNyAyMi40LTMuNXoiXX0sWV9yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNob3AtbG9jayIsaWNvbjpbNjQwLDUxMixbXSwiZTRhNSIsIk0yMS41IDE4MS4xTDc4LjMgNjcuNEM4OS4yIDQ1LjcgMTExLjMgMzIgMTM1LjYgMzJsMzA0LjkgMGMyNC4yIDAgNDYuNCAxMy43IDU3LjIgMzUuNGw1NS42IDExMS4xYy04LjItMS42LTE2LjYtMi41LTI1LjItMi41LTUzLjcgMC05OS43IDMzLjEtMTE4LjcgODBsLTU3LjMgMCAwIDE3NmMwIDI2LjUtMjEuNSA0OC00OCA0OGwtMTkyIDBjLTI2LjUgMC00OC0yMS41LTQ4LTQ4bDAtMTc2LjFjLTI2LjgtMS45LTQ4LTI0LjMtNDgtNTEuNiAwLTggMS45LTE2IDUuNS0yMy4yek0xMjggMjU2bDAgMTEyYzAgOC44IDcuMiAxNiAxNiAxNmwxMjggMGM4LjggMCAxNi03LjIgMTYtMTZsMC0xMTItMTYwIDB6bTQzMiA0OC4xYzAtMTcuNy0xNC4zLTMyLTMyLTMycy0zMiAxNC4zLTMyIDMybDAgNDcuOSA2NCAwIDAtNDcuOXpNNDE2IDQwMGMwLTIwLjkgMTMuNC0zOC43IDMyLTQ1LjNsMC01MC42YzAtNDQuMiAzNS44LTgwIDgwLTgwczgwIDM1LjggODAgODBsMCA1MC42YzE4LjYgNi42IDMyIDI0LjQgMzIgNDUuM2wwIDk2YzAgMjYuNS0yMS41IDQ4LTQ4IDQ4bC0xMjggMGMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhsMC05NnoiXX0sVkFlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImltYWdlLXBvcnRyYWl0IixpY29uOlszODQsNTEyLFsicG9ydHJhaXQiXSwiZjNlMCIsIk0wIDY0QzAgMjguNyAyOC43IDAgNjQgMEwzMjAgMGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDM4NGMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA1MTJjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgNjR6TTgwIDM2OGMwIDguOCA3LjIgMTYgMTYgMTZsMTkyIDBjOC44IDAgMTYtNy4yIDE2LTE2IDAtNDQuMi0zNS44LTgwLTgwLTgwbC02NCAwYy00NC4yIDAtODAgMzUuOC04MCA4MHpNMTkyIDI0OGE1NiA1NiAwIDEgMCAwLTExMiA1NiA1NiAwIDEgMCAwIDExMnoiXX0sWl9yPVZBZSxYX3I9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYnJpZGdlLWxvY2siLGljb246WzU3Niw1MTIsW10sImU0Y2MiLCJNMCA2NEMwIDQ2LjMgMTQuMyAzMiAzMiAzMmw0NDggMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtOCAwIDAgMzIuMmMxMy44IC42IDI3LjIgMi44IDQwIDYuNGwwIDUwLjdjLTE0LjgtNi0zMS05LjMtNDgtOS4zLTcwLjcgMC0xMjggNTcuMy0xMjggMTI4bDAgMjQuNGMtLjQgLjMtLjcgLjYtMS4xIDEtMTcuMy0yNS00Ni4yLTQxLjMtNzguOS00MS4zLTUzIDAtOTYgNDMtOTYgOTZsMCA2NGMwIDE3LjctMTQuMyAzMi0zMiAzMmwtMzIgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC05NGMwLTM4LjgtMjYuNC03Mi42LTY0LTgybDAtMTEyIDQwIDAgMC02NC04IDBDMTQuMyA5NiAwIDgxLjcgMCA2NHptNDI0IDY4LjZsMC0zNi42LTgwIDAgMCA2NCAxOC44IDBjMTguMi0xMi44IDM4LjktMjIuMiA2MS4yLTI3LjR6TTIxNiA5NmwwIDY0IDgwIDAgMC02NC04MCAwem0tNDggMGwtODAgMCAwIDY0IDgwIDAgMC02NHpNNDk2IDMwNC4xYzAtMTcuNy0xNC4zLTMyLTMyLTMycy0zMiAxNC4zLTMyIDMybDAgNDcuOSA2NCAwIDAtNDcuOXpNMzUyIDQwMGMwLTIwLjkgMTMuNC0zOC43IDMyLTQ1LjNsMC01MC42YzAtNDQuMiAzNS44LTgwIDgwLTgwczgwIDM1LjggODAgODBsMCA1MC42YzE4LjYgNi42IDMyIDI0LjQgMzIgNDUuM2wwIDk2YzAgMjYuNS0yMS41IDQ4LTQ4IDQ4bC0xMjggMGMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhsMC05NnoiXX0sUV9yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhhbW1lciIsaWNvbjpbNjQwLDUxMixbMTI4Mjk2XSwiZjZlMyIsIk0yNDYuOSAxOC4zTDI3MSAzLjhjMjEuNi0xMyA0Ni4zLTE5LjggNzEuNS0xOS44IDM2LjggMCA3Mi4yIDE0LjYgOTguMiA0MC43bDYzLjkgNjMuOWMxNSAxNSAyMy40IDM1LjQgMjMuNCA1Ni42bDAgMzAuOSAxOS43IDE5LjcgMCAwYzE1LjYtMTUuNiA0MC45LTE1LjYgNTYuNiAwczE1LjYgNDAuOSAwIDU2LjZsLTY0IDY0Yy0xNS42IDE1LjYtNDAuOSAxNS42LTU2LjYgMHMtMTUuNi00MC45IDAtNTYuNkw0NjQgMjQwIDQzMy4xIDI0MGMtMjEuMiAwLTQxLjYtOC40LTU2LjYtMjMuNGwtNDkuMS00OS4xYy0xNS0xNS0yMy40LTM1LjQtMjMuNC01Ni42bDAtMTIuN2MwLTExLjItNS45LTIxLjctMTUuNS0yNy40bC00MS42LTI1Yy0xMC40LTYuMi0xMC40LTIxLjIgMC0yNy40ek01MC43IDQwMi43bDIyMi4xLTIyMi4xIDkwLjUgOTAuNS0yMjIuMSAyMjIuMWMtMjUgMjUtNjUuNSAyNS05MC41IDBzLTI1LTY1LjUgMC05MC41eiJdfSxVQWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYXJyb3ctdXAtMS05IixpY29uOls1MTIsNTEyLFsic29ydC1udW1lcmljLXVwIl0sImYxNjMiLCJNMTUwLjYgNDEuNGMtMTIuNS0xMi41LTMyLjgtMTIuNS00NS4zIDBsLTk2IDk2Yy0xMi41IDEyLjUtMTIuNSAzMi44IDAgNDUuM3MzMi44IDEyLjUgNDUuMyAwTDk2IDE0MS4zIDk2IDQ0OGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMzA2LjcgNDEuNCA0MS40YzEyLjUgMTIuNSAzMi44IDEyLjUgNDUuMyAwczEyLjUtMzIuOCAwLTQ1LjNsLTk2LTk2ek00MTguNyAzOGMtOC4zLTYtMTkuMS03LjctMjguOC00LjRsLTQ4IDE2Yy0xNi44IDUuNi0yNS44IDIzLjctMjAuMiA0MC41czIzLjcgMjUuOCA0MC41IDIwLjJsNS45LTIgMCA1MS42LTE2IDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsOTYgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtMTYgMCAwLTk2YzAtMTAuMy00LjktMTkuOS0xMy4zLTI2ek0zNjUuMSA0MzAuNmMtOS42IDE0LjgtNS40IDM0LjYgOS40IDQ0LjNzMzQuNiA1LjQgNDQuMy05LjRsNDIuMS02NC45YzEyLjQtMTkuMiAxOS4xLTQxLjYgMTkuMS02NC41IDAtNDQuMi0zNS44LTgwLTgwLTgwcy04MCAzNS44LTgwIDgwYzAgMzYuMSAyMy45IDY2LjcgNTYuOCA3Ni42bC0xMS43IDE4ek0zNzYgMzM2YTI0IDI0IDAgMSAxIDQ4IDAgMjQgMjQgMCAxIDEgLTQ4IDB6Il19LEtfcj1VQWUsSl9yPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNoZXNzLWtuaWdodCIsaWNvbjpbMzg0LDUxMixbOTgyMl0sImY0NDEiLCJNMTkyLTMyYzEwNiAwIDE5MiA4NiAxOTIgMTkybDAgMTMzLjVjMCAxNy02LjggMzMuMi0xOC43IDQ1LjJMMzIwIDM4NCAzNzAuOCA0MzQuN2M4LjUgOC41IDEzLjIgMjAgMTMuMiAzMiAwIDI1LTIwLjMgNDUuMi00NS4yIDQ1LjNMNDUuMyA1MTJjLTI1IDAtNDUuMi0yMC4zLTQ1LjItNDUuMyAwLTEyIDQuOC0yMy41IDEzLjItMzJMNjQgMzg0IDY0IDM0OS40YzAtMTguNyA4LjItMzYuNCAyMi4zLTQ4LjZsODkuNy03Ni44LTQ4IDAtMTIuMSAxMi4xYy0xMi43IDEyLjctMzAgMTkuOS00OCAxOS45LTM3LjUgMC02Ny45LTMwLjQtNjcuOS02Ny45bDAtOC43YzAtMjIuOCA4LjItNDQuOSAyMy4xLTYyLjNMOTYgMzIgOTYgMGMwLTE3LjcgMTQuMy0zMiAzMi0zMmw2NCAwek0xNjAgNzJhMjQgMjQgMCAxIDAgMCA0OCAyNCAyNCAwIDEgMCAwLTQ4eiJdfSxlVHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaG91c2UtZmxvb2Qtd2F0ZXItY2lyY2xlLWFycm93LXJpZ2h0IixpY29uOls2NDAsNTEyLFtdLCJlNTBmIiwiTTI4OC41IDExMmExNDQgMTQ0IDAgMSAwIC0yODggMCAxNDQgMTQ0IDAgMSAwIDI4OCAwek0xNDEuMiA0NC43YzYuMi02LjIgMTYuNC02LjIgMjIuNiAwbDU2IDU2YzYuMiA2LjIgNi4yIDE2LjQgMCAyMi42bC01NiA1NmMtNi4yIDYuMi0xNi40IDYuMi0yMi42IDBzLTYuMi0xNi40IDAtMjIuNmwyOC43LTI4LjctODkuNCAwYy04LjggMC0xNi03LjItMTYtMTZzNy4yLTE2IDE2LTE2bDg5LjQgMC0yOC43LTI4LjdjLTYuMi02LjItNi4yLTE2LjQgMC0yMi42ek0zMzYuNSAxMTJjMCA3MS4xLTM4LjYgMTMzLjEtOTYgMTY2LjNsMCAxMi44YzIyLjEgNC41IDQzLjQgMTMuOSA2Mi40IDI4LjIgMjIuMSAxNi42IDI5LjEgMTYuNiA1MS4yIDAgMjcuNS0yMC43IDU5LjktMzEuMiA5Mi40LTMxLjQgMzMuMS0uMiA2Ni4zIDEwLjIgOTQuNCAzMS40IDYuOSA1LjIgMTIuOCA5IDE4IDExLjcgLjYgLjMgMS4yIC42IDEuOCAxIDQuMiAyLjMgOC41IDQuNiAxMi42IDEuNSA2LTQuNSAxMi42LTggMTkuMy0xMC40bDAtMTE1LjIgNC41IDBjMTUuMiAwIDI3LjUtMTIuMyAyNy41LTI3LjUgMC03LjktMy40LTE1LjUtOS40LTIwLjdMNDQ0LjUgMTAuNUM0MzYuOCAzLjcgNDI2LjggMCA0MTYuNSAwcy0yMC4zIDMuNy0yOCAxMC41TDMyOS45IDYxLjhjNC4zIDE2IDYuNiAzMi44IDYuNiA1MC4yem0zMiA4OGMwLTEzLjMgMTAuNy0yNCAyNC0yNGw0OCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0bDAgNDhjMCAxMy4zLTEwLjcgMjQtMjQgMjRsLTQ4IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0bDAtNDh6TTQ3NS4xIDQxMi4xYzE5IDE0LjQgNDEuOSAyOC4yIDY3LjIgMzMuMyAyNi41IDUuNCA1NC4zIC44IDgwLjctMTkuMSAxMC42LTggMTIuNy0yMyA0LjctMzMuNnMtMjMtMTIuNy0zMy42LTQuN2MtMTQuOSAxMS4yLTI4LjYgMTMuMS00Mi4zIDEwLjMtMTQuOS0zLTMwLjktMTEuOS00Ny44LTI0LjYtMzguNC0yOS05MC41LTI5LTEyOSAwLTI0IDE4LjEtNDAuNyAyNi4zLTU0LjUgMjYuM1MyOTAgMzkxLjggMjY2IDM3My43Yy0zOC40LTI5LTkwLjUtMjktMTI5IDAtMjEuNiAxNi4zLTQxLjMgMjUuOC01OC45IDI1LjctOS42LS4xLTE5LjktMy0zMS4yLTExLjUtMTAuNi04LTI1LjYtNS45LTMzLjYgNC43cy01LjkgMjUuNiA0LjcgMzMuNmMxOS4xIDE0LjQgMzkuNCAyMSA1OS44IDIxLjEgMzMuOSAuMiA2NC4zLTE3LjQgODguMS0zNS4zIDIxLjMtMTYuMSA0OS45LTE2LjEgNzEuMiAwIDI0LjIgMTguMyA1Mi4zIDM1LjkgODMuNCAzNS45czU5LjEtMTcuNyA4My40LTM1LjljMjEuMy0xNi4xIDQ5LjktMTYuMSA3MS4yIDB6bS03MS4yIDk2YzIxLjMtMTYuMSA0OS45LTE2LjEgNzEuMiAwIDE5IDE0LjQgNDEuOSAyOC4yIDY3LjIgMzMuMyAyNi41IDUuNCA1NC4zIC44IDgwLjctMTkuMSAxMC42LTggMTIuNy0yMyA0LjctMzMuNnMtMjMtMTIuNy0zMy42LTQuN2MtMTQuOSAxMS4yLTI4LjYgMTMuMS00Mi4zIDEwLjMtMTQuOS0zLTMwLjktMTEuOS00Ny44LTI0LjYtMzguNC0yOS05MC41LTI5LTEyOSAwLTI0IDE4LjEtNDAuNyAyNi4zLTU0LjUgMjYuM1MyOTAgNDg3LjggMjY2IDQ2OS43Yy0zOC40LTI5LTkwLjUtMjktMTI5IDAtMjEuNiAxNi4zLTQxLjMgMjUuOC01OC45IDI1LjctOS42LS4xLTE5LjktMy0zMS4yLTExLjUtMTAuNi04LTI1LjYtNS45LTMzLjYgNC43cy01LjkgMjUuNiA0LjcgMzMuNmMxOS4xIDE0LjQgMzkuNCAyMSA1OS44IDIxLjEgMzMuOSAuMiA2NC4zLTE3LjQgODguMS0zNS4zIDIxLjMtMTYuMSA0OS45LTE2LjEgNzEuMiAwIDI0LjIgMTguMyA1Mi4zIDM1LjkgODMuNCAzNS45czU5LjEtMTcuNyA4My40LTM1Ljl6Il19LFV3PXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFycm93LXVwLXJpZ2h0LWZyb20tc3F1YXJlIixpY29uOls1MTIsNTEyLFsiZXh0ZXJuYWwtbGluayJdLCJmMDhlIiwiTTMyMCAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDgyLjcgMC0yMDEuNCAyMDEuNGMtMTIuNSAxMi41LTEyLjUgMzIuOCAwIDQ1LjNzMzIuOCAxMi41IDQ1LjMgMEw0NDggMTA5LjMgNDQ4IDE5MmMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMTYwYzAtMTcuNy0xNC4zLTMyLTMyLTMyTDMyMCAwek04MCA5NkMzNS44IDk2IDAgMTMxLjggMCAxNzZMMCA0MzJjMCA0NC4yIDM1LjggODAgODAgODBsMjU2IDBjNDQuMiAwIDgwLTM1LjggODAtODBsMC04MGMwLTE3LjctMTQuMy0zMi0zMi0zMnMtMzIgMTQuMy0zMiAzMmwwIDgwYzAgOC44LTcuMiAxNi0xNiAxNkw4MCA0NDhjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTI1NmMwLTguOCA3LjItMTYgMTYtMTZsODAgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMkw4MCA5NnoiXX0sdFRyPVV3LHJUcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJhcnJvdy1kb3duLXVwLWFjcm9zcy1saW5lIixpY29uOls1MTIsNTEyLFtdLCJlNGFmIiwiTTI2NS40IDEwNS40bDk2LTk2YzEyLjUtMTIuNSAzMi44LTEyLjUgNDUuMyAwbDk2IDk2YzEyLjUgMTIuNSAxMi41IDMyLjggMCA0NS4zcy0zMi44IDEyLjUtNDUuMyAwbC00MS40LTQxLjQgMCAxMTQuNyA2NCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC0zMjAgMCAwIDExNC43IDQxLjQtNDEuNGMxMi41LTEyLjUgMzIuOC0xMi41IDQ1LjMgMHMxMi41IDMyLjggMCA0NS4zbC05NiA5NmMtMTIuNSAxMi41LTMyLjggMTIuNS00NS4zIDBsLTk2LTk2Yy0xMi41LTEyLjUtMTIuNS0zMi44IDAtNDUuM3MzMi44LTEyLjUgNDUuMyAwTDk2IDQwMi43IDk2IDI4OCAzMiAyODhjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsMzIwIDAgMC0xMTQuNy00MS40IDQxLjRjLTEyLjUgMTIuNS0zMi44IDEyLjUtNDUuMyAwcy0xMi41LTMyLjggMC00NS4zek00MTYgMzM2bDAgMTQ0YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMTQ0IDY0IDB6TTk2IDE3Nkw5NiAzMmMwLTE3LjcgMTQuMy0zMiAzMi0zMnMzMiAxNC4zIDMyIDMybDAgMTQ0LTY0IDB6Il19LFdBZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmYWNlLWdyaW4tYmVhbSIsaWNvbjpbNTEyLDUxMixbMTI4NTE2LCJncmluLWJlYW0iXSwiZjU4MiIsIk0yNTYgNTEyYTI1NiAyNTYgMCAxIDAgMC01MTIgMjU2IDI1NiAwIDEgMCAwIDUxMnpNMzg2LjcgMzA4LjljMTEuOS0zLjcgMjMuOSA2LjMgMTkuNiAxOC4xLTIyLjQgNjEuMy04MS4zIDEwNS4xLTE1MC4zIDEwNS4xUzEyOC4xIDM4OC4yIDEwNS43IDMyNi45Yy00LjMtMTEuOCA3LjctMjEuOCAxOS42LTE4LjEgMzkuMiAxMi4yIDgzLjcgMTkuMSAxMzAuNyAxOS4xczkxLjUtNi45IDEzMC43LTE5LjF6TTE3NiAxODBjLTE1LjUgMC0yOCAxMi41LTI4IDI4bDAgOGMwIDExLTkgMjAtMjAgMjBzLTIwLTktMjAtMjBsMC04YzAtMzcuNiAzMC40LTY4IDY4LTY4czY4IDMwLjQgNjggNjhsMCA4YzAgMTEtOSAyMC0yMCAyMHMtMjAtOS0yMC0yMGwwLThjMC0xNS41LTEyLjUtMjgtMjgtMjh6bTEzMiAyOGwwIDhjMCAxMS05IDIwLTIwIDIwcy0yMC05LTIwLTIwbDAtOGMwLTM3LjYgMzAuNC02OCA2OC02OHM2OCAzMC40IDY4IDY4bDAgOGMwIDExLTkgMjAtMjAgMjBzLTIwLTktMjAtMjBsMC04YzAtMTUuNS0xMi41LTI4LTI4LTI4cy0yOCAxMi41LTI4IDI4eiJdfSxhVHI9V0FlLEdBZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJyZWN0YW5nbGUtYWQiLGljb246WzUxMiw1MTIsWyJhZCJdLCJmNjQxIiwiTTY0IDY0QzI4LjcgNjQgMCA5Mi43IDAgMTI4TDAgMzg0YzAgMzUuMyAyOC43IDY0IDY0IDY0bDM4NCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMjU2YzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDY0ek00MTYgMTg0bDAgMTQ0YzAgMTMuMy0xMC43IDI0LTI0IDI0LTcuMSAwLTEzLjUtMy4xLTE3LjktOC0xMC4yIDUuMS0yMS44IDgtMzQuMSA4LTQyIDAtNzYtMzQtNzYtNzZzMzQtNzYgNzYtNzZjOS45IDAgMTkuMyAxLjkgMjggNS4zbDAtMjEuM2MwLTEzLjMgMTAuNy0yNCAyNC0yNHMyNCAxMC43IDI0IDI0em0tNDggOTJhMjggMjggMCAxIDAgLTU2IDAgMjggMjggMCAxIDAgNTYgMHpNMTYwIDIwOGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMzIgNDggMCAwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMTYgMHptMzIgOTZsLTQ4IDAgMCAyNGMwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNGwwLTEwNGMwLTM1LjMgMjguNy02NCA2NC02NGwxNiAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMTA0YzAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0bDAtMjR6Il19LGlUcj1HQWUsWUFlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJvb2stdGFuYWtoIixpY29uOls0NDgsNTEyLFsidGFuYWtoIl0sImY4MjciLCJNMzUyIDUxMkwzMiA1MTJjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsMC02Ni43QzEzLjQgMzc0LjcgMCAzNTYuOSAwIDMzNkwwIDQ4QzAgMjEuNSAyMS41IDAgNDggMEwzNTIgMGM1MyAwIDk2IDQzIDk2IDk2bDAgMzIwYzAgNTMtNDMgOTYtOTYgOTZ6bTMyLTk2YzAtMTcuNy0xNC4zLTMyLTMyLTMybC0yNTYgMCAwIDY0IDI1NiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMyek0xMTMuOSAyMjljLTEuMiAyLTEuOSA0LjItMS45IDYuNiAwIDYuOSA1LjYgMTIuNSAxMi41IDEyLjVsNTYuOSAwIDMwLjUgNDkuMmMyLjYgNC4yIDcuMiA2LjggMTIuMiA2LjhzOS42LTIuNiAxMi4yLTYuOGwzMC41LTQ5LjIgNTYuOSAwYzYuOSAwIDEyLjUtNS42IDEyLjUtMTIuNSAwLTIuMy0uNi00LjYtMS45LTYuNmwtMjcuOC00NSAyNy44LTQ1YzEuMi0yIDEuOS00LjIgMS45LTYuNiAwLTYuOS01LjYtMTIuNS0xMi41LTEyLjVsLTU2LjkgMC0zMC41LTQ5LjJDMjMzLjYgNjYuNiAyMjkgNjQgMjI0IDY0cy05LjYgMi42LTEyLjIgNi44bC0zMC41IDQ5LjItNTYuOSAwYy02LjkgMC0xMi41IDUuNi0xMi41IDEyLjUgMCAyLjMgLjYgNC42IDEuOSA2LjZsMjcuOCA0NS0yNy44IDQ1eiJdfSxvVHI9WUFlLFpBZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJob3QtdHViLXBlcnNvbiIsaWNvbjpbNDQ4LDUxMixbImhvdC10dWIiXSwiZjU5MyIsIk0yNDAgNDBjMCAxMy42IDUuOCAyNi41IDE1LjggMzUuNmwyNi41IDIzLjhjMjQgMjEuNiAzNy43IDUyLjMgMzcuNyA4NC42IDAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0YzAtMTguNy03LjktMzYuNC0yMS44LTQ4LjlsLTI2LjUtMjMuOEMyMDMuNSA5My4xIDE5MiA2Ny4yIDE5MiA0MCAxOTIgMjYuNyAyMDIuNyAxNiAyMTYgMTZzMjQgMTAuNyAyNCAyNHpNMCAzMzZsMC04MGMwLTM1LjMgMjguNy02NCA2NC02NGwxOS43IDBjOC4xIDAgMTYuMiAxLjYgMjMuOCA0LjZsMTM3LjEgNTQuOGM3LjYgMyAxNS42IDQuNiAyMy44IDQuNkwzODQgMjU2YzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMTI4YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDUxMmMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCAzMzZ6bTk2LTE2Yy0xMy4zIDAtMjQgMTAuNy0yNCAyNGwwIDgwYzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC04MGMwLTEzLjMtMTAuNy0yNC0yNC0yNHptMTUyIDI0YzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0bDAgODBjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTgwem0xMDQtMjRjLTEzLjMgMC0yNCAxMC43LTI0IDI0bDAgODBjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTgwYzAtMTMuMy0xMC43LTI0LTI0LTI0ek0zMjggMTZjMTMuMyAwIDI0IDEwLjcgMjQgMjQgMCAxMy42IDUuOCAyNi41IDE1LjggMzUuNmwyNi41IDIzLjhjMjQgMjEuNiAzNy43IDUyLjMgMzcuNyA4NC42IDAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0YzAtMTguNy03LjktMzYuNC0yMS44LTQ4LjlsLTI2LjUtMjMuOEMzMTUuNSA5My4xIDMwNCA2Ny4yIDMwNCA0MCAzMDQgMjYuNyAzMTQuNyAxNiAzMjggMTZ6TTY0IDQwYTU2IDU2IDAgMSAxIDAgMTEyIDU2IDU2IDAgMSAxIDAtMTEyeiJdfSxuVHI9WkFlLHNUcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmaWxlLWhhbGYtZGFzaGVkIixpY29uOlszODQsNTEyLFtdLCJlNjk4IiwiTTY0IDBDMjguNyAwIDAgMjguNyAwIDY0bDAgMjU2IDM4NCAwIDAtMTQ5LjVjMC0xNy02LjctMzMuMy0xOC43LTQ1LjNMMjU4LjcgMTguN0MyNDYuNyA2LjcgMjMwLjUgMCAyMTMuNSAwTDY0IDB6TTMyNS41IDE3NkwyMzIgMTc2Yy0xMy4zIDAtMjQtMTAuNy0yNC0yNEwyMDggNTguNSAzMjUuNSAxNzZ6TTAgMzUybDAgNjQgNjQgMCAwLTY0LTY0IDB6TTY0IDUxMmwwLTY0LTY0IDBjMCAzNS4zIDI4LjcgNjQgNjQgNjR6bTMyIDBsODAgMCAwLTY0LTgwIDAgMCA2NHptMTEyIDBsODAgMCAwLTY0LTgwIDAgMCA2NHptMTEyIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsLTY0IDAgMCA2NHptNjQtMTYwbC02NCAwIDAgNjQgNjQgMCAwLTY0eiJdfSxYQWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToib3V0ZGVudCIsaWNvbjpbNDQ4LDUxMixbImRlZGVudCJdLCJmMDNiIiwiTS40IDY0YzAtMTcuNyAxNC4zLTMyIDMyLTMybDM4NCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC0zODQgMEMxNC44IDk2IC40IDgxLjcgLjQgNjR6bTE5MiAxMjhjMC0xNy43IDE0LjMtMzIgMzItMzJsMTkyIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTE5MiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMnptMzIgOTZsMTkyIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTE5MiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMyek0uNCA0NDhjMC0xNy43IDE0LjMtMzIgMzItMzJsMzg0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTM4NCAwYy0xNy43IDAtMzItMTQuMy0zMi0zMnpNLjcgMjY4LjZjLTguMi02LjQtOC4yLTE4LjkgMC0yNS4zbDEwMS45LTc5LjNjMTAuNS04LjIgMjUuOC0uNyAyNS44IDEyLjZsMCAxNTguNmMwIDEzLjMtMTUuMyAyMC44LTI1LjggMTIuNkwuNyAyNjguNnoiXX0sbFRyPVhBZSxjVHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaGFuZC1wZWFjZSIsaWNvbjpbNDQ4LDUxMixbOTk5Nl0sImYyNWIiLCJNMTkyIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCAyMDgtNjQgMCAwLTIwOGMwLTE3LjcgMTQuMy0zMiAzMi0zMnptOTYgMTYwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgNjRjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC02NGMwLTE3LjcgMTQuMy0zMiAzMi0zMnptNjQgNjRjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDY0YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtNjR6TTYxLjMgNTEuMkwxNDMuOSAyNDAgNzQuMSAyNDAgMi43IDc2LjhDLTQuNCA2MC42IDMgNDEuOCAxOS4yIDM0LjdTNTQuMiAzNSA2MS4zIDUxLjJ6bTI3IDIyMS4zbC0uMi0uNSA5NS45IDBjMjIuMSAwIDQwIDE3LjkgNDAgNDBzLTE3LjkgNDAtNDAgNDBsLTU2IDBjLTguOCAwLTE2IDcuMi0xNiAxNnM3LjIgMTYgMTYgMTZsNTYgMGMzOS44IDAgNzItMzIuMiA3Mi03MmwwLS42YzkuNCA1LjQgMjAuMyA4LjYgMzIgOC42IDEzLjIgMCAyNS40LTQgMzUuNi0xMC44IDguNyAyNC45IDMyLjUgNDIuOCA2MC40IDQyLjggMTEuNyAwIDIyLjYtMy4xIDMyLTguNmwwIDguNmMwIDg4LjQtNzEuNiAxNjAtMTYwIDE2MGwtNjEuNyAwYy00Mi40IDAtODMuMS0xNi45LTExMy4xLTQ2LjlMNjkuNSA0NTMuNUM0NS41IDQyOS41IDMyIDM5Ni45IDMyIDM2M2wwLTI3YzAtMzIuNyAyNC42LTU5LjcgNTYuMy02My41eiJdfSxkVHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaGVhZC1zaWRlLXZpcnVzIixpY29uOls1MTIsNTEyLFtdLCJlMDY0IiwiTTMyOS43IDQ0OGMtNS4xIDAtOS43IDMuNy05LjcgOC44bDAgNy4yYzAgMjYuNS0yMS41IDQ4LTQ4IDQ4bC0xNjAgMGMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhsMC02My42YzAtMTIuNi01LjEtMjQuNS0xMy4xLTM0LjItMzEuOC0zOC43LTUwLjktODguMi01MC45LTE0Mi4yIDAtMTIzLjcgMTAwLjMtMjI0IDIyNC0yMjQgMTEyLjcgMCAyMDYgODMuMyAyMjEuNyAxOTEuNyAuNCAzIDEuNyA1LjkgMy42IDguM2wzNS44IDQyLjljNyA4LjQgMTAuOSAxOS4xIDEwLjkgMzAuMSAwIDI1LjktMjEgNDctNDcgNDdsLTEgMGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgNDhjMCAzNS4zLTI4LjcgNjQtNjQgNjRsLTM4LjMgMHpNMjI0IDY0Yy0xMy4zIDAtMjQgMTAuNy0yNCAyNCAwIDIyLjktMjcuNyAzNC40LTQzLjkgMTguMi05LjQtOS40LTI0LjYtOS40LTMzLjkgMHMtOS40IDI0LjYgMCAzMy45YzE2LjIgMTYuMiA0LjcgNDMuOS0xOC4yIDQzLjktMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGMyMi45IDAgMzQuNCAyNy43IDE4LjIgNDMuOS05LjQgOS40LTkuNCAyNC42IDAgMzMuOXMyNC42IDkuNCAzMy45IDBjMTYuMi0xNi4yIDQzLjktNC43IDQzLjkgMTguMiAwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0YzAtMjIuOSAyNy43LTM0LjQgNDMuOS0xOC4yIDkuNCA5LjQgMjQuNiA5LjQgMzMuOSAwczkuNC0yNC42IDAtMzMuOWMtMTYuMi0xNi4yLTQuNy00My45IDE4LjItNDMuOSAxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGMtMjIuOSAwLTM0LjQtMjcuNy0xOC4yLTQzLjkgOS40LTkuNCA5LjQtMjQuNiAwLTMzLjlzLTI0LjYtOS40LTMzLjkgMGMtMTYuMiAxNi4yLTQzLjkgNC43LTQzLjktMTguMiAwLTEzLjMtMTAuNy0yNC0yNC0yNHptLTMyIDg4YTI0IDI0IDAgMSAxIDAgNDggMjQgMjQgMCAxIDEgMC00OHptNDAgODhhMjQgMjQgMCAxIDEgNDggMCAyNCAyNCAwIDEgMSAtNDggMHoiXX0sdVRyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNvbXBhc3MiLGljb246WzUxMiw1MTIsWzEyOTUxN10sImYxNGUiLCJNMjU2IDUxMmEyNTYgMjU2IDAgMSAwIDAtNTEyIDI1NiAyNTYgMCAxIDAgMCA1MTJ6bTUwLjctMTg2LjlMMTYyLjQgMzgwLjZjLTE5LjQgNy41LTM4LjUtMTEuNi0zMS0zMWw1NS41LTE0NC4zYzMuMy04LjUgOS45LTE1LjEgMTguNC0xOC40bDE0NC4zLTU1LjVjMTkuNC03LjUgMzguNSAxMS42IDMxIDMxTDMyNS4xIDMwNi43Yy0zLjIgOC41LTkuOSAxNS4xLTE4LjQgMTguNHpNMjg4IDI1NmEzMiAzMiAwIDEgMCAtNjQgMCAzMiAzMiAwIDEgMCA2NCAweiJdfSxmVHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGVuLW5pYiIsaWNvbjpbNTEyLDUxMixbMTAwMDFdLCJmNWFkIiwiTTM2OC41IDE4LjNsLTUwLjEgNTAuMSAxMjUuMyAxMjUuMyA1MC4xLTUwLjFjMjEuOS0yMS45IDIxLjktNTcuMyAwLTc5LjJMNDQ3LjcgMTguM2MtMjEuOS0yMS45LTU3LjMtMjEuOS03OS4yIDB6TTI3OS4zIDk3LjJsLS41IC4xLTE0NC4xIDQzLjJjLTE5LjkgNi0zNS43IDIxLjItNDIuMyA0MUwzLjggNDQ1LjhjLTIuOSA4LjctMS45IDE4LjIgMi41IDI2TDE2MS43IDMxNi40Yy0xLjEtNC0xLjYtOC4xLTEuNi0xMi40IDAtMjYuNSAyMS41LTQ4IDQ4LTQ4czQ4IDIxLjUgNDggNDgtMjEuNSA0OC00OCA0OGMtNC4zIDAtOC41LS42LTEyLjQtMS42TDQwLjMgNTA1LjdjNy44IDQuNCAxNy4yIDUuNCAyNiAyLjVsMjY0LjMtODguNmMxOS43LTYuNiAzNS0yMi40IDQxLTQyLjNsNDMuMi0xNDQuMSAuMS0uNS0xMzUuNS0xMzUuNXoiXX0scFRyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRlbnQtYXJyb3dzLWRvd24iLGljb246WzUxMiw1MTIsW10sImU1ODEiLCJNMTg1LjUgMTIxYzkuNC05LjQgOS40LTI0LjYgMC0zMy45cy0yNC42LTkuNC0zMy45IDBsLTMxIDMxIDAtMTAyLjFjMC0xMy4zLTEwLjctMjQtMjQtMjRzLTI0IDEwLjctMjQgMjRsMCAxMDIuMS0zMS0zMWMtOS40LTkuNC0yNC42LTkuNC0zMy45IDBzLTkuNCAyNC42IDAgMzMuOWw3MiA3MmM5LjQgOS40IDI0LjYgOS40IDMzLjkgMGw3Mi03MnptMjQ4IDcybDcyLTcyYzkuNC05LjQgOS40LTI0LjYgMC0zMy45cy0yNC42LTkuNC0zMy45IDBsLTMxIDMxIDAtMTAyLjFjMC0xMy4zLTEwLjctMjQtMjQtMjRzLTI0IDEwLjctMjQgMjRsMCAxMDIuMS0zMS0zMWMtOS40LTkuNC0yNC42LTkuNC0zMy45IDBzLTkuNCAyNC42IDAgMzMuOWw3MiA3MmM5LjQgOS40IDI0LjYgOS40IDMzLjkgMHpNNjAuMyAyOTIuNkwzNy4xIDQ3NmMtMi40IDE5LjEgMTIuNSAzNiAzMS43IDM2bDE1NC41IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJsMC0xMTcuNGMwLTUuOSA0LjctMTAuNiAxMC42LTEwLjYgNCAwIDcuNyAyLjMgOS41IDUuOWw2OC4yIDEzNi41YzUuNCAxMC44IDE2LjUgMTcuNyAyOC42IDE3LjdsNzEuOSAwYzE5LjMgMCAzNC4yLTE2LjkgMzEuNy0zNkw0NTIuNyAyOTIuN2MtMS4yLTkuNy02LjktMTguNC0xNS4zLTIzLjRMMjcxLjkgMTY5LjljLTEwLjItNi4xLTIyLjktNi4xLTMzLjEgLjFMNzUuNCAyNjkuM2MtOC4zIDUuMS0xMy45IDEzLjctMTUuMSAyMy4zeiJdfSxRQWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZm9yd2FyZC1mYXN0IixpY29uOls1MTIsNTEyLFs5MTk3LCJmYXN0LWZvcndhcmQiXSwiZjA1MCIsIk0xOS44IDQ3Ny42YzEyIDUgMjUuNyAyLjIgMzQuOS02LjlMMjI0IDMwMS4zIDIyNCA0NDhjMCAxMi45IDcuOCAyNC42IDE5LjggMjkuNnMyNS43IDIuMiAzNC45LTYuOUw0NDggMzAxLjMgNDQ4IDQ0OGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMzg0YzAtMTcuNy0xNC4zLTMyLTMyLTMycy0zMiAxNC4zLTMyIDMybDAgMTQ2LjctMTY5LjQtMTY5LjRjLTkuMi05LjItMjIuOS0xMS45LTM0LjktNi45UzIyNCA1MS4xIDIyNCA2NEwyMjQgMjEwLjcgNTQuNiA0MS40Yy05LjItOS4yLTIyLjktMTEuOS0zNC45LTYuOVMwIDUxLjEgMCA2NEwwIDQ0OGMwIDEyLjkgNy44IDI0LjYgMTkuOCAyOS42eiJdfSxoVHI9UUFlLG1Ucj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjcm9wIixpY29uOls1MTIsNTEyLFtdLCJmMTI1IiwiTTQ0OCAxMDkuM2w1NC42LTU0LjZjMTIuNS0xMi41IDEyLjUtMzIuOCAwLTQ1LjNzLTMyLjgtMTIuNS00NS4zIDBMNDAyLjcgNjQgMTc2IDY0IDE3NiAxMjggMzM4LjcgMTI4IDEyOCAzMzguNyAxMjggMzJjMC0xNy43LTE0LjMtMzItMzItMzJTNjQgMTQuMyA2NCAzMmwwIDMyLTMyIDBDMTQuMyA2NCAwIDc4LjMgMCA5NnMxNC4zIDMyIDMyIDMybDMyIDAgMCAyNTZjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMjA4IDAgMC02NC0xNjIuNyAwIDIxMC43LTIxMC43IDAgMzA2LjdjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTMyIDMyIDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTMyIDAgMC0yNzQuN3oiXX0sS0FlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6IndoaXNrZXktZ2xhc3MiLGljb246WzQ0OCw1MTIsWzEyOTM0NywiZ2xhc3Mtd2hpc2tleSJdLCJmN2EwIiwiTTMyIDMyQzE0LjMgMzIgMCA0Ni4zIDAgNjRMMCAzNTJjMCA3MC43IDU3LjMgMTI4IDEyOCAxMjhsMTkyIDBjNzAuNyAwIDEyOC01Ny4zIDEyOC0xMjhsMC0yODhjMC0xNy43LTE0LjMtMzItMzItMzJMMzIgMzJ6TTY0IDI1NmwwLTE2MCAzMjAgMCAwIDE2MC0zMjAgMHoiXX0sZ1RyPUtBZSx4VHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic3F1YXJlIixpY29uOls0NDgsNTEyLFs5NjMyLDk3MjMsOTcyNCw2MTU5MF0sImYwYzgiLCJNNjQgMzJsMzIwIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAzMjBjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDk2QzAgNjAuNyAyOC43IDMyIDY0IDMyeiJdfSxKQWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmFjZS1ncmluIixpY29uOls1MTIsNTEyLFsxMjg1MTIsImdyaW4iXSwiZjU4MCIsIk0yNTYgNTEyYTI1NiAyNTYgMCAxIDAgMC01MTIgMjU2IDI1NiAwIDEgMCAwIDUxMnpNMzg2LjcgMzA4LjljMTEuOS0zLjcgMjMuOSA2LjMgMTkuNiAxOC4xLTIyLjQgNjEuMy04MS4zIDEwNS4xLTE1MC4zIDEwNS4xUzEyOC4xIDM4OC4yIDEwNS43IDMyNi45Yy00LjMtMTEuOCA3LjctMjEuOCAxOS42LTE4LjEgMzkuMiAxMi4yIDgzLjcgMTkuMSAxMzAuNyAxOS4xczkxLjUtNi45IDEzMC43LTE5LjF6TTE0NCAyMDhhMzIgMzIgMCAxIDEgNjQgMCAzMiAzMiAwIDEgMSAtNjQgMHptMTkyLTMyYTMyIDMyIDAgMSAxIDAgNjQgMzIgMzIgMCAxIDEgMC02NHoiXX0sYlRyPUpBZSx2VHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmlsZS1jb250cmFjdCIsaWNvbjpbMzg0LDUxMixbXSwiZjU2YyIsIk0wIDY0QzAgMjguNyAyOC43IDAgNjQgMEwyMTMuNSAwYzE3IDAgMzMuMyA2LjcgNDUuMyAxOC43TDM2NS4zIDEyNS4zYzEyIDEyIDE4LjcgMjguMyAxOC43IDQ1LjNMMzg0IDQ0OGMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA1MTJjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgNjR6bTIwOC01LjVsMCA5My41YzAgMTMuMyAxMC43IDI0IDI0IDI0TDMyNS41IDE3NiAyMDggNTguNXpNODggNjRDNzQuNyA2NCA2NCA3NC43IDY0IDg4czEwLjcgMjQgMjQgMjRsNDggMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNEw4OCA2NHptMCA5NmMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGw0OCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC00OCAwem03MC4zIDE2MGMtMTEuMyAwLTIxLjkgNS4xLTI4LjkgMTMuOUw2OS4zIDQwOWMtOC4zIDEwLjMtNi42IDI1LjUgMy43IDMzLjdzMjUuNSA2LjYgMzMuNy0zLjhsNDcuMS01OC44IDE1LjIgNTAuN2MzIDEwLjIgMTIuNCAxNy4xIDIzIDE3LjFsMTA0IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTg2LjEgMC0xNi4xLTUzLjZjLTQuNy0xNS43LTE5LjEtMjYuNC0zNS41LTI2LjR6Il19LHlUcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJhbmdsZS11cCIsaWNvbjpbMzg0LDUxMixbODk2M10sImYxMDYiLCJNMTY5LjQgMTM3LjRjMTIuNS0xMi41IDMyLjgtMTIuNSA0NS4zIDBsMTYwIDE2MGMxMi41IDEyLjUgMTIuNSAzMi44IDAgNDUuM3MtMzIuOCAxMi41LTQ1LjMgMEwxOTIgMjA1LjMgNTQuNiAzNDIuNmMtMTIuNSAxMi41LTMyLjggMTIuNS00NS4zIDBzLTEyLjUtMzIuOCAwLTQ1LjNsMTYwLTE2MHoiXX0sZUVlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZhY2Utc21pbGUiLGljb246WzUxMiw1MTIsWzEyODU3OCwic21pbGUiXSwiZjExOCIsIk0yNTYgNTEyYTI1NiAyNTYgMCAxIDAgMC01MTIgMjU2IDI1NiAwIDEgMCAwIDUxMnpNMTY1LjQgMzIxLjljMjAuNCAyOCA1My40IDQ2LjEgOTAuNiA0Ni4xczcwLjItMTguMSA5MC42LTQ2LjFjNy44LTEwLjcgMjIuOC0xMy4xIDMzLjUtNS4zczEzLjEgMjIuOCA1LjMgMzMuNUMzNTYuMyAzOTAgMzA5LjIgNDE2IDI1NiA0MTZzLTEwMC4zLTI2LTEyOS40LTY1LjljLTcuOC0xMC43LTUuNC0yNS43IDUuMy0zMy41czI1LjctNS40IDMzLjUgNS4zek0xNDQgMjA4YTMyIDMyIDAgMSAxIDY0IDAgMzIgMzIgMCAxIDEgLTY0IDB6bTE5Mi0zMmEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6Il19LHdUcj1lRWUsTVRyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBlcnNvbi1kcmVzcy1idXJzdCIsaWNvbjpbNjQwLDUxMixbXSwiZTU0NCIsIk0yMDggNDAuMWMxMy4zIDAgMjQtMTAuNyAyNC0yNGwwLTQ4YzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0bDAgNDhjMCAxMy4zIDEwLjcgMjQgMjQgMjR6TTggMTQ0LjFjMCAxMy4zIDEwLjcgMjQgMjQgMjRsNDggMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtNDggMGMtMTMuMyAwLTI0IDEwLjctMjQgMjR6bTkyLjUgMTQxLjRsMzMuOS0zMy45YzkuNC05LjQgOS40LTI0LjYgMC0zMy45cy0yNC42LTkuNC0zMy45IDBMNjYuNiAyNTEuNmMtOS40IDkuNC05LjQgMjQuNiAwIDMzLjlzMjQuNiA5LjQgMzMuOSAwek02Ni42IDIuN2MtOS40IDkuNC05LjQgMjQuNiAwIDMzLjlsMzMuOSAzMy45YzkuNCA5LjQgMjQuNiA5LjQgMzMuOSAwczkuNC0yNC42IDAtMzMuOUwxMDAuNSAyLjdDOTEuMS02LjcgNzYtNi43IDY2LjYgMi43ek0zNTIgODBhNTYgNTYgMCAxIDAgMC0xMTIgNTYgNTYgMCAxIDAgMCAxMTJ6TTI0Ni4yIDM4NGwyNS44IDAgMCAxMjhjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTEyOCAzMiAwIDAgMTI4YzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0xMjggMjUuOCAwYzEwLjkgMCAxOC42LTEwLjcgMTUuMi0yMS4xbC00My0xMjkgNDguMyA2NS4xYzEwLjUgMTQuMiAzMC42IDE3LjIgNDQuOCA2LjZzMTcuMi0zMC42IDYuNi00NC44bC03MC41LTk1QzQzNCAxMzIgMzk0LjMgMTEyIDM1MiAxMTJzLTgyIDIwLTEwNy4yIDUzLjlsLTcwLjUgOTVjLTEwLjUgMTQuMi03LjYgMzQuMiA2LjYgNDQuOHMzNC4yIDcuNiA0NC44LTYuNmw0OC4zLTY1LjEtNDMgMTI5Yy0zLjUgMTAuNCA0LjMgMjEuMSAxNS4yIDIxLjF6Il19LGtUcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJkaXZpZGUiLGljb246WzQ0OCw1MTIsWzEwMTM1LDI0N10sImY1MjkiLCJNMjI0IDQ4YTU2IDU2IDAgMSAxIDAgMTEyIDU2IDU2IDAgMSAxIDAtMTEyek0wIDI1NmMwLTE3LjcgMTQuMy0zMiAzMi0zMmwzODQgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMkwzMiAyODhjLTE3LjcgMC0zMi0xNC4zLTMyLTMyek0xNjggNDA4YTU2IDU2IDAgMSAxIDExMiAwIDU2IDU2IDAgMSAxIC0xMTIgMHoiXX0sU1RyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNvZGUtZm9yayIsaWNvbjpbNDQ4LDUxMixbXSwiZTEzYiIsIk04MCAxMDRhMjQgMjQgMCAxIDAgMC00OCAyNCAyNCAwIDEgMCAwIDQ4em04MC0yNGMwIDMyLjgtMTkuNyA2MS00OCA3My4zbDAgMjIuN2MwIDI2LjUgMjEuNSA0OCA0OCA0OGwxMjggMGMyNi41IDAgNDgtMjEuNSA0OC00OGwwLTIyLjdjLTI4LjMtMTIuMy00OC00MC41LTQ4LTczLjMgMC00NC4yIDM1LjgtODAgODAtODBzODAgMzUuOCA4MCA4MGMwIDMyLjgtMTkuNyA2MS00OCA3My4zbDAgMjIuN2MwIDYxLjktNTAuMSAxMTItMTEyIDExMmwtMzIgMCAwIDcwLjdjMjguMyAxMi4zIDQ4IDQwLjUgNDggNzMuMyAwIDQ0LjItMzUuOCA4MC04MCA4MHMtODAtMzUuOC04MC04MGMwLTMyLjggMTkuNy02MSA0OC03My4zbDAtNzAuNy0zMiAwQzk4LjEgMjg4IDQ4IDIzNy45IDQ4IDE3NmwwLTIyLjdDMTkuNyAxNDEgMCAxMTIuOCAwIDgwIDAgMzUuOCAzNS44IDAgODAgMHM4MCAzNS44IDgwIDgwem0yMDggMjRhMjQgMjQgMCAxIDAgMC00OCAyNCAyNCAwIDEgMCAwIDQ4ek0yNDggNDMyYTI0IDI0IDAgMSAwIC00OCAwIDI0IDI0IDAgMSAwIDQ4IDB6Il19LHpUcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJob3VzZS1mbGFnIixpY29uOls2NDAsNTEyLFtdLCJlNTBkIiwiTTQ3MiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDk2IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCA5NmMwIDE3LjctMTQuMyAzMi0zMiAzMmwtOTYgMCAwIDI4OGMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTQ0OGMwLTE3LjcgMTQuMy0zMiAzMi0zMnpNMjgzLjUgNTkuMWwxMDAuNSA5Ni45IDAgMzU2LTI1NiAwYy0zNS4zIDAtNjQtMjguNy02NC02NGwwLTE0NC0xOS45IDBjLTE1LjUgMC0yOC4xLTEyLjYtMjguMS0yOC4xIDAtNy42IDMuMS0xNC45IDguNi0yMC4yTDIyOC41IDU5LjFDMjM1LjkgNTIgMjQ1LjcgNDggMjU2IDQ4czIwLjEgNCAyNy41IDExLjF6TTIzMiAyNTZjLTEzLjMgMC0yNCAxMC43LTI0IDI0bDAgNDhjMCAxMy4zIDEwLjcgMjQgMjQgMjRsNDggMGMxMy4zIDAgMjQtMTAuNyAyNC0yNGwwLTQ4YzAtMTMuMy0xMC43LTI0LTI0LTI0bC00OCAweiJdfSxOOT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJidWlsZGluZy1jb2x1bW5zIixpY29uOls1MTIsNTEyLFsiYmFuayIsImluc3RpdHV0aW9uIiwibXVzZXVtIiwidW5pdmVyc2l0eSJdLCJmMTljIiwiTTI3MS45IDIwLjJjLTkuOC01LjYtMjEuOS01LjYtMzEuOCAwbC0yMjQgMTI4Yy0xMi42IDcuMi0xOC44IDIyLTE1LjEgMzZTMTcuNSAyMDggMzIgMjA4bDMyIDAgMCAyMDggMCAwLTUxLjIgMzguNEM0LjcgNDYwLjQgMCA0NjkuOSAwIDQ4MCAwIDQ5Ny43IDE0LjMgNTEyIDMyIDUxMmw0NDggMGMxNy43IDAgMzItMTQuMyAzMi0zMiAwLTEwLjEtNC43LTE5LjYtMTIuOC0yNS42bC01MS4yLTM4LjQgMC0yMDggMzIgMGMxNC41IDAgMjcuMi05LjggMzAuOS0yMy44cy0yLjUtMjguOC0xNS4xLTM2bC0yMjQtMTI4ek00MDAgMjA4bDAgMjA4LTY0IDAgMC0yMDggNjQgMHptLTExMiAwbDAgMjA4LTY0IDAgMC0yMDggNjQgMHptLTExMiAwbDAgMjA4LTY0IDAgMC0yMDggNjQgMHpNMjU2IDk2YTMyIDMyIDAgMSAxIDAgNjQgMzIgMzIgMCAxIDEgMC02NHoiXX0sQ1RyPU45LF9Ucj1OOSxUVHI9TjksTFRyPU45LERUcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJydWciLGljb246WzU3Niw1MTIsW10sImU1NjkiLCJNMjQgNjRsNTYgMCAwIDM4NC01NiAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0bDggMCAwLTQwLTggMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNGw4IDAgMC0zMi04IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjRsOCAwIDAtMzItOCAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0bDggMCAwLTQwLTggMEMxMC43IDExMiAwIDEwMS4zIDAgODhTMTAuNyA2NCAyNCA2NHptMTA0IDBsMzIwIDAgMCAzODQtMzIwIDAgMC0zODR6TTU3NiA4OGMwIDEzLjMtMTAuNyAyNC0yNCAyNGwtOCAwIDAgNDAgOCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC04IDAgMCAzMiA4IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTggMCAwIDMyIDggMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtOCAwIDAgNDAgOCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC01NiAwIDAtMzg0IDU2IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjR6Il19LEFUcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjb2RlLW1lcmdlIixpY29uOls0NDgsNTEyLFtdLCJmMzg3IiwiTTgwIDU2YTI0IDI0IDAgMSAxIDAgNDggMjQgMjQgMCAxIDEgMC00OHptMzIuNCA5Ny4yYzI4LTEyLjQgNDcuNi00MC41IDQ3LjYtNzMuMiAwLTQ0LjItMzUuOC04MC04MC04MFMwIDM1LjggMCA4MGMwIDMyLjggMTkuNyA2MSA0OCA3My4zbDAgMjA1LjNDMTkuNyAzNzEgMCAzOTkuMiAwIDQzMiAwIDQ3Ni4yIDM1LjggNTEyIDgwIDUxMnM4MC0zNS44IDgwLTgwYzAtMzIuOC0xOS43LTYxLTQ4LTczLjNsMC04Ni42YzI2LjcgMjAuMSA2MCAzMiA5NiAzMmw4Ni43IDBjMTIuMyAyOC4zIDQwLjUgNDggNzMuMyA0OCA0NC4yIDAgODAtMzUuOCA4MC04MHMtMzUuOC04MC04MC04MGMtMzIuOCAwLTYxIDE5LjctNzMuMyA0OEwyMDggMjQwYy00OS45IDAtOTEtMzguMS05NS42LTg2Ljh6TTgwIDQwOGEyNCAyNCAwIDEgMSAwIDQ4IDI0IDI0IDAgMSAxIDAtNDh6TTM0NCAyNzJhMjQgMjQgMCAxIDEgNDggMCAyNCAyNCAwIDEgMSAtNDggMHoiXX0sRVRyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhvdXNlLXRzdW5hbWkiLGljb246WzY0MCw1MTIsW10sImU1MTUiLCJNMjg4IDE2QzE1NS41IDE2IDQ4IDEyMy41IDQ4IDI1NlMxNTUuNSA0OTYgMjg4IDQ5NmM3LjQgMCAxOS43LTIuMyAzMy43LTcuMyAxMy44LTQuOSAyNy4xLTExLjcgMzYuNy0xOC45IDM4LjQtMjkgOTAuNS0yOSAxMjkgMCAxNS40IDExLjYgMzUuMyAyMS4xIDU1IDI0LjQgMTkuNSAzLjMgMzcgLjQgNTEuMS0xMC4yIDEwLjYtOCAyNS42LTUuOSAzMy42IDQuN3M1LjkgMjUuNi00LjcgMzMuNmMtMjcuMyAyMC41LTU5LjIgMjQtODcuOSAxOS4yLTI4LjUtNC44LTU1LjQtMTgtNzUuOS0zMy40LTIxLjMtMTYuMS00OS45LTE2LjEtNzEuMiAwLTE0LjUgMTAuOS0zMi40IDE5LjctNDkuNSAyNS44LTE2LjggNi0zNC45IDEwLjEtNDkuOSAxMC4xbC0uMSAwQzEyOC45IDU0My45IDAgNDE1IDAgMjU2IDAgOTYuOSAxMjguOS0zMiAyODgtMzIgMzAxLjMtMzIgMzEyLTIxLjMgMzEyLThzLTEwLjcgMjQtMjQgMjR6bTQ0LjggMTY2LjRsOTYtNzJjMTEuNC04LjUgMjcuMS04LjUgMzguNSAwbDk1LjUgNzJjOCA2IDEyLjcgMTUuNSAxMi43IDI1LjVsLjMgMTIxLjVjLTIuMiAxLjMtNC4zIDIuNi02LjQgNC4yLTQuMyAzLjEtOC43IC44LTEzLjItMS41bC0xLjItLjYtLjctLjNjLTUuNC0yLjctMTEuNy02LjYtMTguOS0xMS43LTI5LjUtMjEuMS02NC4zLTMxLjYtOTkuMS0zMS40LTM0LjEgLjItNjguMSAxMC43LTk3IDMxLjQtNy44IDUuNi0xMy44IDkuMy0xOS4zIDExLjJMMzIwIDIwOGMwLTEwLjEgNC43LTE5LjYgMTIuOC0yNS42em01NC42IDIyOS43Yy0xNC41IDEwLjktMzIuNCAxOS43LTQ5LjUgMjUuOC0xNi44IDYtMzQuOSAxMC4xLTQ5LjkgMTAuMS0xMDYgMC0xOTItODYtMTkyLTE5MlMxODIgNjQgMjg4IDY0YzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0Yy03OS41IDAtMTQ0IDY0LjUtMTQ0IDE0NHM2NC41IDE0NCAxNDQgMTQ0YzcuNCAwIDE5LjctMi4zIDMzLjctNy4zIDEzLjgtNC45IDI3LjEtMTEuNyAzNi43LTE4LjkgMzguNC0yOSA5MC41LTI5IDEyOSAwIDE1LjQgMTEuNiAzNS4zIDIxLjEgNTUgMjQuNCAxOS41IDMuMyAzNyAuNCA1MS4xLTEwLjIgMTAuNi04IDI1LjYtNS45IDMzLjYgNC43czUuOSAyNS42LTQuNyAzMy42Yy0yNy4zIDIwLjUtNTkuMiAyNC04Ny45IDE5LjItMjguNS00LjgtNTUuNC0xOC03NS45LTMzLjQtMjEuMy0xNi4xLTQ5LjktMTYuMS03MS4yIDB6Il19LCRUcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtYWduaWZ5aW5nLWdsYXNzLWNoYXJ0IixpY29uOls1MTIsNTEyLFtdLCJlNTIyIiwiTTQxNiAyMDhjMCA0NS45LTE0LjkgODguMy00MCAxMjIuN0w1MDIuNiA0NTcuNGMxMi41IDEyLjUgMTIuNSAzMi44IDAgNDUuM3MtMzIuOCAxMi41LTQ1LjMgMEwzMzAuNyAzNzZDMjk2LjMgNDAxLjEgMjUzLjkgNDE2IDIwOCA0MTYgOTMuMSA0MTYgMCAzMjIuOSAwIDIwOFM5My4xIDAgMjA4IDAgNDE2IDkzLjEgNDE2IDIwOHptLTMxMiA4bDAgNjRjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTY0YzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0em04MC05NmwwIDE2MGMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtMTYwYzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0em04MCA2NGwwIDk2YzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC05NmMwLTEzLjMtMTAuNy0yNC0yNC0yNHMtMjQgMTAuNy0yNCAyNHoiXX0sUFRyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InVtYnJlbGxhIixpY29uOls1MTIsNTEyLFtdLCJmMGU5IiwiTTI1Ni0zMmMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDJjMTI2LjMgMTUuNyAyMjQgMTIzLjUgMjI0IDI1NCAwIDMuOC0uMSA3LjUtLjIgMTEuMy0uMyA2LjktNSAxMi44LTExLjcgMTQuN3MtMTMuOC0uNy0xNy42LTYuNWMtMTQuNC0yMS40LTM4LjgtMzUuNS02Ni41LTM1LjUtMjkuMyAwLTU0LjkgMTUuNy02OC45IDM5LjMtMi43IDQuNi03LjYgNy42LTEzIDcuOHMtMTAuNS0yLjItMTMuNy02LjVjLTE0LjYtMTkuOC0zOC0zMi42LTY0LjUtMzIuNnMtNDkuOSAxMi44LTY0LjUgMzIuNmMtMy4yIDQuMy04LjMgNi44LTEzLjcgNi41cy0xMC4yLTMuMi0xMy03LjhjLTE0LTIzLjYtMzkuNi0zOS4zLTY4LjktMzkuMy0yNy43IDAtNTIuMSAxNC4xLTY2LjUgMzUuNS0zLjkgNS43LTExIDguNC0xNy42IDYuNVMuNSAyNzQuMiAuMiAyNjcuM0MuMSAyNjMuNSAwIDI1OS44IDAgMjU2IDAgMTI1LjUgOTcuNyAxNy43IDIyNCAybDAtMmMwLTE3LjcgMTQuMy0zMiAzMi0zMnptMzIgMzYwbDAgMTAyLjZjMCA0NS0zNi41IDgxLjQtODEuNCA4MS40LTMwLjggMC01OS0xNy40LTcyLjgtNDVsLTIuMy00LjdjLTcuOS0xNS44LTEuNS0zNSAxNC4zLTQyLjlzMzUtMS41IDQyLjkgMTQuM2wyLjMgNC43YzMgNS45IDkgOS42IDE1LjYgOS42IDkuNiAwIDE3LjQtNy44IDE3LjQtMTcuNEwyMjQgMzI4YzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJ6Il19LElUcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJoaWxsLXJvY2tzbGlkZSIsaWNvbjpbNTc2LDUxMixbXSwiZTUwOCIsIk0yNTIuNCAxMDMuOGwyNyA0OGMyLjggNSA4LjIgOC4yIDEzLjkgOC4ybDUzLjMgMGM1LjggMCAxMS4xLTMuMSAxMy45LTguMmwyNy00OGMyLjctNC45IDIuNy0xMC44IDAtMTUuN2wtMjctNDhjLTIuOC01LTguMi04LjItMTMuOS04LjJsLTUzLjMgMGMtNS44IDAtMTEuMSAzLjEtMTMuOSA4LjJsLTI3IDQ4Yy0yLjcgNC45LTIuNyAxMC44IDAgMTUuN3pNNjguMyA4N0M0My4xIDYxLjggMCA3OS43IDAgMTE1LjNMMCA0MzJjMCA0NC4yIDM1LjggODAgODAgODBsMzE2LjcgMGMzNS42IDAgNTMuNS00My4xIDI4LjMtNjguM0w2OC4zIDg3ek01MDQuMiA0MDMuNmM0LjkgMi43IDEwLjggMi43IDE1LjcgMGw0OC0yN2M1LTIuOCA4LjItOC4yIDguMi0xMy45bDAtNTMuM2MwLTUuOC0zLjEtMTEuMS04LjItMTMuOWwtNDgtMjdjLTQuOS0yLjctMTAuOC0yLjctMTUuNyAwbC00OCAyN2MtNSAyLjgtOC4yIDguMi04LjIgMTMuOWwwIDUzLjNjMCA1LjggMy4xIDExLjEgOC4yIDEzLjlsNDggMjd6TTE5MiA2NGEzMiAzMiAwIDEgMCAtNjQgMCAzMiAzMiAwIDEgMCA2NCAwek0zODQgMjg4YTMyIDMyIDAgMSAwIDAtNjQgMzIgMzIgMCAxIDAgMCA2NHoiXX0sTlRyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InVzZXItc2VjcmV0IixpY29uOls0NDgsNTEyLFsxMjgzNzNdLCJmMjFiIiwiTTE3MS0xNmMtMzYuNCAwLTU3LjggNTguMy02OC4zIDExMkw3MiA5NmMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwyNCAwIDAgMzJjMCAxNyAzLjMgMzMuMiA5LjMgNDhsLTkuMyAwIDAgMC0yMC41IDBjLTE1LjIgMC0yNy41IDEyLjMtMjcuNSAyNy41IDAgMyAuNSA1LjkgMS40IDguN2wyOC45IDg2LjZDNDAuMiAzNzkuNiAxNiA0MjguMSAxNiA0ODIuMyAxNiA0OTguNyAyOS4zIDUxMiA0NS43IDUxMmwzNTYuNiAwYzE2LjQgMCAyOS43LTEzLjMgMjkuNy0yOS43IDAtNTQuMi0yNC4yLTEwMi43LTYyLjMtMTM1LjRsMjguOS04Ni42Yy45LTIuOCAxLjQtNS43IDEuNC04LjcgMC0xNS4yLTEyLjMtMjcuNS0yNy41LTI3LjVsLTIwLjUgMCAwIDAtOS4zIDBjNi0xNC44IDkuMy0zMSA5LjMtNDhsMC0zMiAyNCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC0zMC43IDBjLTEwLjQtNTMuNy0zMS45LTExMi02OC4zLTExMi05LjYgMC0xOSAzLjktMjcuNSA4LjItOC4yIDQuMS0xOC40IDcuOC0yNS41IDcuOHMtMTcuMy0zLjctMjUuNS03LjhDMTkwLTEyLjEgMTgwLjYtMTYgMTcxLTE2em05My43IDQ4NC40bC0yNC44LTcwLjkgMjcuOS0zMi41YzIuNy0zLjIgNC4yLTcuMiA0LjItMTEuNCAwLTkuNy03LjgtMTcuNS0xNy41LTE3LjVsLTYxIDBjLTkuNyAwLTE3LjUgNy44LTE3LjUgMTcuNSAwIDQuMiAxLjUgOC4yIDQuMiAxMS40bDI3LjkgMzIuNS0yNC44IDcwLjktNTctMTgwLjQgMzUuNyAwYzE4LjQgMTAuMiAzOS41IDE2IDYyIDE2czQzLjYtNS44IDYyLTE2bDM1LjcgMC01NyAxODAuNHpNMjI0IDI1NmMtMzQuNyAwLTY0LjItMjIuMS03NS4zLTUzIDUuNyAzLjIgMTIuMyA1IDE5LjMgNWwxMi40IDBjMTYuNSAwIDMxLjEtMTAuNiAzNi4zLTI2LjIgMi4zLTcgMTIuMi03IDE0LjUgMCA1LjIgMTUuNiAxOS45IDI2LjIgMzYuMyAyNi4ybDEyLjQgMGM3IDAgMTMuNi0xLjggMTkuMy01LTExLjEgMzAuOS00MC42IDUzLTc1LjMgNTN6Il19LEZUcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwYWdlciIsaWNvbjpbNTEyLDUxMixbMTI4MjIzXSwiZjgxNSIsIk0wIDEyOEMwIDkyLjcgMjguNyA2NCA2NCA2NGwzODQgMGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDI1NmMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA0NDhjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgMTI4em02NCAzMmwwIDY0YzAgMTcuNyAxNC4zIDMyIDMyIDMybDMyMCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtNjRjMC0xNy43LTE0LjMtMzItMzItMzJMOTYgMTI4Yy0xNy43IDAtMzIgMTQuMy0zMiAzMnpNODggMzIwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDQ4IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTQ4IDB6bTEyOCAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDQ4IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTQ4IDB6Il19LE9Ucj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJicmllZmNhc2UiLGljb246WzUxMiw1MTIsWzEyODE4OF0sImYwYjEiLCJNMjAwIDQ4bDExMiAwYzQuNCAwIDggMy42IDggOGwwIDQwLTEyOCAwIDAtNDBjMC00LjQgMy42LTggOC04em0tNTYgOGwwIDQwLTgwIDBDMjguNyA5NiAwIDEyNC43IDAgMTYwbDAgOTYgNTEyIDAgMC05NmMwLTM1LjMtMjguNy02NC02NC02NGwtODAgMCAwLTQwYzAtMzAuOS0yNS4xLTU2LTU2LTU2TDIwMCAwYy0zMC45IDAtNTYgMjUuMS01NiA1NnpNNTEyIDMwNGwtMTkyIDAgMCAxNmMwIDE3LjctMTQuMyAzMi0zMiAzMmwtNjQgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC0xNi0xOTIgMCAwIDExMmMwIDM1LjMgMjguNyA2NCA2NCA2NGwzODQgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTExMnoiXX0sUlRyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRyb3dlbC1icmlja3MiLGljb246WzUxMiw1MTIsW10sImU1OGEiLCJNMjI0IDMyYzAtMTEuNS02LjItMjIuMi0xNi4yLTI3LjhzLTIyLjMtNS41LTMyLjIgLjRsLTE2MCA5NkM1LjkgMTA2LjMgMCAxMTYuOCAwIDEyOHM1LjkgMjEuNyAxNS41IDI3LjRsMTYwIDk2YzkuOSA1LjkgMjIuMiA2LjEgMzIuMiAuNFMyMjQgMjM1LjUgMjI0IDIyNGwwLTY0IDI1NiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC0yNTYgMCAwLTY0em05NiAxOTJjLTE3LjcgMC0zMiAxNC4zLTMyIDMybDAgNjRjMCAxNy43IDE0LjMgMzIgMzIgMzJsMTYwIDBjMTcuNyAwIDMyLTE0LjMgMzItMzJsMC02NGMwLTE3LjctMTQuMy0zMi0zMi0zMmwtMTYwIDB6TTAgNDE2bDAgNjRjMCAxNy43IDE0LjMgMzIgMzIgMzJsOTYgMGMxNy43IDAgMzItMTQuMyAzMi0zMmwwLTY0YzAtMTcuNy0xNC4zLTMyLTMyLTMybC05NiAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnptMjI0LTMyYy0xNy43IDAtMzIgMTQuMy0zMiAzMmwwIDY0YzAgMTcuNyAxNC4zIDMyIDMyIDMybDI1NiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtNjRjMC0xNy43LTE0LjMtMzItMzItMzJsLTI1NiAweiJdfSxCVHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic29ja3MiLGljb246WzUxMiw1MTIsWzEyOTUxMF0sImY2OTYiLCJNMjUyLjggMEwxNzYgMGMtMjYuNSAwLTQ4IDIxLjUtNDggNDhsMCAxNiAxMTIgMCAwLTE2YzAtMTcuNSA0LjctMzMuOSAxMi44LTQ4ek0xMjggMTEybDAgMTI4YzAgMjAuMS05LjUgMzkuMS0yNS42IDUxLjJsLTY0IDQ4Yy0yNC4yIDE4LjEtMzguNCA0Ni42LTM4LjQgNzYuOCAwIDUzIDQzIDk2IDk2IDk2IDE1LjQgMCAzMC41LTMuNyA0NC0xMC43LTE3LjYtMjMuOS0yOC01My40LTI4LTg1LjMgMC00NS4zIDIxLjMtODggNTcuNi0xMTUuMmw2NC00OGM0LTMgNi40LTcuOCA2LjQtMTIuOGwwLTEyOC0xMTIgMHptMTYwIDBsMCAxMjhjMCAyMC4xLTkuNSAzOS4xLTI1LjYgNTEuMmwtNjQgNDhjLTI0LjIgMTguMS0zOC40IDQ2LjYtMzguNCA3Ni44IDAgNTMgNDMgOTYgOTYgOTYgMjAuOCAwIDQxLTYuNyA1Ny42LTE5LjJsMTE1LjItODYuNEM0NjEgMzgyLjIgNDgwIDM0NC4zIDQ4MCAzMDRsMC0xOTItMTkyIDB6TTQ4MCA2NGwwLTE2YzAtMjYuNS0yMS41LTQ4LTQ4LTQ4TDMzNiAwYy0yNi41IDAtNDggMjEuNS00OCA0OGwwIDE2IDE5MiAweiJdfSxIVHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidCIsaWNvbjpbMzg0LDUxMixbMTE2XSwiNTQiLCJNMzIgMzJDMTQuMyAzMiAwIDQ2LjMgMCA2NFMxNC4zIDk2IDMyIDk2bDEyOCAwIDAgMzUyYzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0zNTIgMTI4IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJMMzIgMzJ6Il19LHFUcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtaWNyb2NoaXAiLGljb246WzUxMiw1MTIsW10sImYyZGIiLCJNMTc2IDI0YzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0bDAgNDBjLTM1LjMgMC02NCAyOC43LTY0IDY0bC00MCAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDQwIDAgMCA1Ni00MCAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDQwIDAgMCA1Ni00MCAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDQwIDBjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMCA0MGMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtNDAgNTYgMCAwIDQwYzAgMTMuMyAxMC43IDI0IDI0IDI0czI0LTEwLjcgMjQtMjRsMC00MCA1NiAwIDAgNDBjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTQwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDQwIDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTQwIDAgMC01NiA0MCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC00MCAwIDAtNTYgNDAgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtNDAgMGMwLTM1LjMtMjguNy02NC02NC02NGwwLTQwYzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0bDAgNDAtNTYgMCAwLTQwYzAtMTMuMy0xMC43LTI0LTI0LTI0cy0yNCAxMC43LTI0IDI0bDAgNDAtNTYgMCAwLTQwek0xNjAgMTI4bDE5MiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMTkyYzAgMTcuNy0xNC4zIDMyLTMyIDMybC0xOTIgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC0xOTJjMC0xNy43IDE0LjMtMzIgMzItMzJ6bTE2IDQ4bDAgMTYwIDE2MCAwIDAtMTYwLTE2MCAweiJdfSx0RWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidHJ1Y2stbWVkaWNhbCIsaWNvbjpbNTc2LDUxMixbMTI4NjU3LCJhbWJ1bGFuY2UiXSwiZjBmOSIsIk02NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgMzg0YzAgMzUuMyAyOC43IDY0IDY0IDY0bDMuMyAwYzEwLjQgMzYuOSA0NC40IDY0IDg0LjcgNjRzNzQuMi0yNy4xIDg0LjctNjRsMTAyLjYgMGMxMC40IDM2LjkgNDQuNCA2NCA4NC43IDY0czc0LjItMjcuMSA4NC43LTY0bDMuMyAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMTQ2LjdjMC0xNy02LjctMzMuMy0xOC43LTQ1LjNMNTEyIDE0Ni43Yy0xMi0xMi0yOC4zLTE4LjctNDUuMy0xOC43bC01MC43IDAgMC0zMmMwLTM1LjMtMjguNy02NC02NC02NEw2NCAzMnpNNTEyIDIzNy4zbDAgNTAuNy05NiAwIDAtOTYgNTAuNyAwIDQ1LjMgNDUuM3pNMTUyIDM4NGE0MCA0MCAwIDEgMSAwIDgwIDQwIDQwIDAgMSAxIDAtODB6bTIzMiA0MGE0MCA0MCAwIDEgMSA4MCAwIDQwIDQwIDAgMSAxIC04MCAwek0xNzYgMTM2YzAtOC44IDcuMi0xNiAxNi0xNmwzMiAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDQwIDQwIDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgMzJjMCA4LjgtNy4yIDE2LTE2IDE2bC00MCAwIDAgNDBjMCA4LjgtNy4yIDE2LTE2IDE2bC0zMiAwYy04LjggMC0xNi03LjItMTYtMTZsMC00MC00MCAwYy04LjggMC0xNi03LjItMTYtMTZsMC0zMmMwLTguOCA3LjItMTYgMTYtMTZsNDAgMCAwLTQweiJdfSxqVHI9dEVlLFZUcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJvbSIsaWNvbjpbNTc2LDUxMixbMTI4MzI5XSwiZjY3OSIsIk0zODguNyA0LjdjNi4yLTYuMiAxNi40LTYuMiAyMi42IDBsMTYgMTZjNi4yIDYuMiA2LjIgMTYuNCAwIDIyLjZsLTE2IDE2Yy02LjIgNi4yLTE2LjQgNi4yLTIyLjYgMGwtMTYtMTZjLTYuMi02LjItNi4yLTE2LjQgMC0yMi42bDE2LTE2ek0xNzYgMTYwYy0xMC44IDAtMjAuOCAzLjYtMjguOCA5LjYtMTQuMSAxMC42LTM0LjIgNy44LTQ0LjgtNi40cy03LjgtMzQuMiA2LjQtNDQuOGMxOC43LTE0LjEgNDItMjIuNCA2Ny4yLTIyLjQgNjEuOSAwIDExMiA1MC4xIDExMiAxMTIgMCAxNy4yLTMuOSAzMy41LTEwLjggNDhsNDkuNyAwYzEyLjcgMCAyNC45LTUgMzMuOS0xNC4xbDIwLjctMjAuN2MxOC43LTE4LjcgNDQuMS0yOS4zIDcwLjYtMjkuMyA1NS4yIDAgOTkuOSA0NC43IDk5LjkgOTkuOWwwIDk2LjFjMCA1NS4yLTQ0LjggMTAwLTEwMCAxMDBTMzUyIDQ0My4yIDM1MiAzODhsMC00YzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJsMCA0YzAgMTkuOSAxNi4xIDM2IDM2IDM2czM2LTE2LjEgMzYtMzZsMC05Ni4xYzAtMTkuOC0xNi4xLTM1LjktMzUuOS0zNS45LTkuNSAwLTE4LjYgMy44LTI1LjQgMTAuNWwtMjAuNyAyMC43Yy0yMSAyMS00OS40IDMyLjgtNzkuMSAzMi44bC0yNi44IDBjMTIuNiAxOS42IDE5LjkgNDIuOCAxOS45IDY4IDAgNzUuMi02NSAxMzItMTQwIDEzMlM0MCA0NjMuMiA0MCAzODhjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmMwIDM1LjMgMzEuNyA2OCA3NiA2OHM3Ni0zMi43IDc2LTY4LTMxLjctNjgtNzYtNjhsLTIwIDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsMTYgMGMyNi41IDAgNDgtMjEuNSA0OC00OHMtMjEuNS00OC00OC00OHpNMzM3LjEgNjAuMWMtMTEtMTMuOC0zMS4xLTE2LjItNDUtNS4ycy0xNi4yIDMxLjEtNS4yIDQ1QzMxMi42IDEzMi4yIDM1NC40IDE1MiA0MDAgMTUyczg3LjQtMTkuOCAxMTMuMS01Mi4xYzExLTEzLjggOC43LTM0LTUuMi00NXMtMzQtOC43LTQ1IDUuMkM0NTAuMyA3NiA0MjcuNSA4OCA0MDAgODhzLTUwLjMtMTItNjIuOS0yNy45eiJdfSxVVHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibW9zcXVpdG8tbmV0IixpY29uOls2NDAsNTEyLFtdLCJlNTJjIiwiTTU3NiAzNTJjMTMuMyAwIDI0IDEwLjcgMjQgMjRsMCAxNiAxNiAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC0xNiAwIDAgNDggMTYgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtMTYgMCAwIDE2LS4xIDIuNUM1OTguNiA1NjYuNiA1ODguNCA1NzYgNTc2IDU3NnMtMjIuNi05LjQtMjMuOS0yMS41bC0uMS0yLjUgMC0xNi00OCAwIDAgMTYtLjEgMi41QzUwMi42IDU2Ni42IDQ5Mi40IDU3NiA0ODAgNTc2cy0yMi42LTkuNC0yMy45LTIxLjVsLS4xLTIuNSAwLTE2LTE2IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjRsMTYgMCAwLTQ4LTE2IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjRsMTYgMCAwLTE2YzAtMTMuMyAxMC43LTI0IDI0LTI0czI0IDEwLjcgMjQgMjRsMCAxNiA0OCAwIDAtMTZjMC0xMy4zIDEwLjctMjQgMjQtMjR6TTQyOS45IDE2LjNjNy43LTkuNCAyMS4zLTExLjUgMzEuNC00LjMgMTAuMSA3LjEgMTMuMSAyMC45IDcuNCAzMS43bC0xLjMgMi4xLTI1LjkgMzguOSAxMy4zIDUzLjRjMiA4LS4xIDE2LjMtNS4zIDIyLjNsLTIuNCAyLjQtNDQuNyAzOC4zIDEzMC41IDE0LjVjNDIuOCA0LjggNzUuMSA0MC45IDc1LjEgODMuOSAwIDMuOS0uNCA3LjctLjkgMTEuNS03LjMtMy41LTE1LjMtNS44LTIzLjgtNi43TDU3NiAzMDRjLTE4LjUgMC0zNS4zIDctNDggMTguNC0xMS05LjktMjUuMS0xNi41LTQwLjYtMTguMUw0ODAgMzA0Yy0zMC4zIDAtNTYuMSAxOC43LTY2LjggNDUuMi0xMi41IDUtMjMuMiAxMy40LTMxLjEgMjRsLTMwLjItNDAuMSAwIDc0LjdjMCAxNy43LTE0LjMgMzItMzIgMzItMTYuNiAwLTMwLjItMTIuNi0zMS44LTI4LjdsLS4yLTMuMyAwLTc0LjYtMzIuMyA0MyAwIDM5LjhjMCAzLjUtLjcgNi45LTIuMSAxMC4xbC0xLjYgMy4xLTQwIDY0LTEuNCAyYy03LjUgOS42LTIxIDEyLjEtMzEuMyA1LjMtMTAuMy02LjgtMTMuNy0yMC41LTguMy0zMS41bDEuMi0yLjIgMzYuMi01OCAwLTQxIC4zLTRjLjYtMy45IDIuMi03LjcgNC42LTEwLjlsMzkuMy01Mi4yLTY2LjIgNTkuNWMtMTcgMTUuMy0zOSAyMy43LTYxLjkgMjMuOGwtOC4xIDBjLTQ2LjYgMC04NC40LTM3LjgtODQuNC04NC40IDAtNDMgMzIuNC03OS4yIDc1LjEtODMuOWwxMzAuNS0xNC41LTQ0LjctMzguMy0yLjQtMi40Yy01LjItNi03LjMtMTQuNC01LjMtMjIuM2wxMy4zLTUzLjQtMjUuOS0zOC45LTEuMi0yLjFjLTUuNy0xMC44LTIuNy0yNC42IDcuNC0zMS43IDEwLjEtNy4xIDIzLjctNS4xIDMxLjQgNC4zbDEuNSAyIDMyIDQ4IDEuNCAyLjJjMi44IDUuMyAzLjUgMTEuNiAyLjEgMTcuNmwtMTIuMyA0OS4yIDUzLjMgNDUuNyAwLTI4LjggLjItMy4yYzEuMS0xMC40IDcuMi0xOS40IDE1LjgtMjQuNGwwLTYwLjUgLjMtMy4yYzEuNS03LjMgOC0xMi43IDE1LjctMTIuOCA3LjcgMCAxNC4yIDUuNSAxNS43IDEyLjhsLjMgMy4yIDAgNjAuNWM4LjcgNSAxNC44IDE0IDE1LjggMjQuNGwuMiAzLjIgMCAyOC45IDUzLjQtNDUuNy0xMi4zLTQ5LjJjLTEuNS01LjktLjctMTIuMiAyLjEtMTcuNmwxLjQtMi4yIDMyLTQ4IDEuNS0yek01MDQgNDg4bDQ4IDAgMC00OC00OCAwIDAgNDh6Il19LFdUcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwcmVzY3JpcHRpb24tYm90dGxlIixpY29uOlszODQsNTEyLFtdLCJmNDg1IiwiTTAgMzJDMCAxNC4zIDE0LjMgMCAzMiAwTDM1MiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMzJjMCAxNy43LTE0LjMgMzItMzIgMzJMMzIgOTZDMTQuMyA5NiAwIDgxLjcgMCA2NEwwIDMyek0zMiAxNDRsMzIwIDAgMCAzMDRjMCAzNS4zLTI4LjcgNjQtNjQgNjRMOTYgNTEyYy0zNS4zIDAtNjQtMjguNy02NC02NGw3MiAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC03MiAwIDAtNDggNzIgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtNzIgMCAwLTQ4IDcyIDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTcyIDAgMC02NHoiXX0sckVlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InVzZXJzLWdlYXIiLGljb246WzY0MCw1MTIsWyJ1c2Vycy1jb2ciXSwiZjUwOSIsIk0zMjAgMjI0YTEwNCAxMDQgMCAxIDAgMC0yMDggMTA0IDEwNCAwIDEgMCAwIDIwOHpNOTYgMjMyYTcyIDcyIDAgMSAwIDAtMTQ0IDcyIDcyIDAgMSAwIDAgMTQ0ek0wIDQxNmwwIDMyYzAgMTcuNyAxNC4zIDMyIDMyIDMybDg2LjcgMGMtNC4zLTkuOC02LjctMjAuNi02LjctMzJsMC0xNmMwLTUzLjIgMjAtMTAxLjggNTIuOS0xMzguNi0xMS43LTMuNS0yNC4xLTUuNC0zNi45LTUuNC03MC43IDAtMTI4IDU3LjMtMTI4IDEyOHpNNjE2IDE2MGE3MiA3MiAwIDEgMCAtMTQ0IDAgNzIgNzIgMCAxIDAgMTQ0IDB6TTE2MCA0MzJsMCAxNmMwIDE3LjcgMTQuMyAzMiAzMiAzMmwxNTYuOCAwYy03LjEtMjEuNi02LjMtNDQuNCAxMC43LTY0LTE0LTE2LjItMjAuNS0zOS43LTExLjQtNjMuMyA2LjYtMTcuMSAxNS45LTMzLjEgMjcuNC00Ny4zIDUuNC02LjYgMTEuNi0xMS43IDE4LjMtMTUuNC0yMi4xLTExLjUtNDcuMi0xOC03My44LTE4LTg4LjQgMC0xNjAgNzEuNi0xNjAgMTYwem00NjQuNi00NC4xYzYuMy0zLjYgOS41LTExLjEgNi44LTE4LTQuOC0xMi40LTExLjUtMjQuMS0xOS45LTM0LjQtNC42LTUuNy0xMi43LTYuNy0xOS0zLTIxLjggMTIuNi00OC42LTIuOC00OC42LTI4LjEgMC03LjMtNC45LTEzLjgtMTIuMS0xNC45LTEyLjktMi0yNi44LTItMzkuNyAwLTcuMiAxLjEtMTIuMSA3LjYtMTIuMSAxNC45IDAgMjUuMi0yNi44IDQwLjctNDguNiAyOC4xLTYuMy0zLjYtMTQuNC0yLjYtMTkgMy04LjQgMTAuMy0xNS4xIDIyLTE5LjkgMzQuNC0yLjYgNi44IC41IDE0LjMgNi44IDE3LjkgMjEuOSAxMi42IDIxLjkgNDMuNSAwIDU2LjItNi4zIDMuNi05LjUgMTEuMS02LjggMTcuOSA0LjggMTIuNCAxMS41IDI0LjEgMTkuOSAzNC40IDQuNiA1LjcgMTIuNyA2LjcgMTkgMyAyMS44LTEyLjYgNDguNiAyLjkgNDguNiAyOC4xIDAgNy4zIDQuOSAxMy44IDEyLjEgMTQuOSAxMi45IDIgMjYuOCAyIDM5LjcgMCA3LjItMS4xIDEyLjEtNy42IDEyLjEtMTQuOSAwLTI1LjIgMjYuOC00MC43IDQ4LjYtMjguMSA2LjMgMy42IDE0LjQgMi42IDE5LTMgOC40LTEwLjMgMTUuMS0yMiAxOS45LTM0LjQgMi42LTYuOC0uNS0xNC4zLTYuOC0xNy45LTIxLjktMTIuNi0yMS45LTQzLjUgMC01Ni4yek00NzIgNDE2YTQwIDQwIDAgMSAxIDgwIDAgNDAgNDAgMCAxIDEgLTgwIDB6Il19LEdUcj1yRWUsWVRyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InJvYWQtY2lyY2xlLWV4Y2xhbWF0aW9uIixpY29uOls2NDAsNTEyLFtdLCJlNTY1IiwiTTI4OCAzMmwtNzYuMyAwYy0yOS40IDAtNTUuMSAyMC4xLTYyLjEgNDguNkw2NS40IDQyMC41QzU3LjkgNDUwLjcgODAuOCA0ODAgMTEyIDQ4MGwyMDkuNCAwYy0xMS4yLTI0LjQtMTcuNC01MS40LTE3LjQtODAgMC0yOC42IDYuMi01NS43IDE3LjQtODAtLjUgMC0xIDAtMS41IDAtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC02NGMwLTE3LjcgMTQuMy0zMiAzMi0zMnMzMiAxNC4zIDMyIDMybDAgNDljMzUuMi0zOS45IDg2LjctNjUgMTQ0LTY1IDkgMCAxNy44IC42IDI2LjUgMS44bC0zMi0xMjkuMkM0ODMuNCA1Mi4xIDQ1Ny44IDMyIDQyOC4zIDMybC03Ni40IDAgMCA2NGMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTY0ek00OTYgNTQ0YTE0NCAxNDQgMCAxIDAgMC0yODggMTQ0IDE0NCAwIDEgMCAwIDI4OHptMC0xMDBhMjAgMjAgMCAxIDEgMCA0MCAyMCAyMCAwIDEgMSAwLTQwem0wLTE0MGM4LjggMCAxNiA3LjIgMTYgMTZsMCA4MGMwIDguOC03LjIgMTYtMTYgMTZzLTE2LTcuMi0xNi0xNmwwLTgwYzAtOC44IDcuMi0xNiAxNi0xNnoiXX0sWlRyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBhdXNlIixpY29uOlszODQsNTEyLFs5MjA4XSwiZjA0YyIsIk00OCAzMkMyMS41IDMyIDAgNTMuNSAwIDgwTDAgNDMyYzAgMjYuNSAyMS41IDQ4IDQ4IDQ4bDY0IDBjMjYuNSAwIDQ4LTIxLjUgNDgtNDhsMC0zNTJjMC0yNi41LTIxLjUtNDgtNDgtNDhMNDggMzJ6bTIyNCAwYy0yNi41IDAtNDggMjEuNS00OCA0OGwwIDM1MmMwIDI2LjUgMjEuNSA0OCA0OCA0OGw2NCAwYzI2LjUgMCA0OC0yMS41IDQ4LTQ4bDAtMzUyYzAtMjYuNS0yMS41LTQ4LTQ4LTQ4bC02NCAweiJdfSxBdz17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzdGFmZi1zbmFrZSIsaWNvbjpbNDQ4LDUxMixbInJvZC1hc2NsZXBpdXMiLCJyb2Qtc25ha2UiLCJzdGFmZi1hZXNjdWxhcGl1cyJdLCJlNTc5IiwiTTE5MiAzMmwwLTMyYzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJsMCAzMiA2NCAwYzUzIDAgOTYgNDMgOTYgOTZzLTQzIDk2LTk2IDk2bC0xNiAwIDAtNjQgMTYgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtNjQgMCAwIDE5MiAzMiAwYzUzIDAgOTYgNDMgOTYgOTYgMCA0Ny42LTM0LjYgODcuMS04MCA5NC43bDAtNjdjOS42LTUuNSAxNi0xNS45IDE2LTI3LjcgMC0xNy43LTE0LjMtMzItMzItMzJsLTMyIDAgMCAxNjBjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC0zMi0zMiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDMyIDAgMC02NC0zMiAwYy01MyAwLTk2LTQzLTk2LTk2IDAtNDcuNiAzNC42LTg3LjEgODAtOTQuN2wwIDY3Yy05LjYgNS41LTE2IDE1LjktMTYgMjcuNyAwIDE3LjcgMTQuMyAzMiAzMiAzMmwzMiAwIDAtMTkyLTcyLjYgMGMtMTEuMSAxOS4xLTMxLjcgMzItNTUuNCAzMmwtMTYgMEMyMS41IDEyOCAwIDEwNi41IDAgODBTMjEuNSAzMiA0OCAzMmwxNDQgMHoiXX0sWFRyPUF3LFFUcj1BdyxLVHI9QXcsSlRyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBpZ2d5LWJhbmsiLGljb246WzU3Niw1MTIsW10sImY0ZDMiLCJNMjg4LTMyYTk2IDk2IDAgMSAxIDAgMTkyIDk2IDk2IDAgMSAxIDAtMTkyek00OCAzMDRjMC03MC4xIDQ3LTEzMS40IDExNy4xLTE2NC45IDI1LjMgNDEuMyA3MC45IDY4LjkgMTIyLjkgNjguOSA1NS43IDAgMTA0LjEtMzEuNyAxMjgtNzggMTUuOC0xMS4zIDM1LjEtMTggNTYtMThsMTkuNSAwYzEwLjQgMCAxOCA5LjggMTUuNSAxOS45bC0xNy4xIDY4LjNjOS45IDEyLjQgMTguMiAyNS43IDI0LjQgMzkuOGwyMS43IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRsMCAxMTJjMCAxMy4zLTEwLjcgMjQtMjQgMjRsLTQwIDBjLTE2LjUgMjItMzguNSAzOS42LTY0IDUwLjdsMCAyOS4zYzAgMTcuNy0xNC4zIDMyLTMyIDMybC0zMyAwYy0xNC4zIDAtMjYuOC05LjUtMzAuOC0yMy4ybC03LjEtMjQuOC04Mi4zIDAtNy4xIDI0LjhDMjM1LjggNTAyLjUgMjIzLjMgNTEyIDIwOSA1MTJsLTMzIDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtMjkuM0M4Ny41IDQyNiA0OCAzNjkuNiA0OCAzMDR6bTM3NiAxNmEyNCAyNCAwIDEgMCAwLTQ4IDI0IDI0IDAgMSAwIDAgNDh6Il19LGVMcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtb251bWVudCIsaWNvbjpbMzg0LDUxMixbXSwiZjVhNiIsIk0yMDktMzNjLTkuNC05LjQtMjQuNi05LjQtMzMuOSAwTDk1IDQ3Yy00LjEgNC4xLTYuNSA5LjQtNyAxNS4xTDU4LjQgNDQ4IDQ4IDQ0OGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmwyODggMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtMTAuNCAwLTI5LjctMzg1LjhjLS40LTUuNy0yLjktMTEuMS03LTE1LjFMMjA5LTMzek0xMjggMjk2YzAtMTMuMyAxMC43LTI0IDI0LTI0bDgwIDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTgwIDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0eiJdfSxhRWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYW5nbGVzLXJpZ2h0IixpY29uOls0NDgsNTEyLFsxODcsImFuZ2xlLWRvdWJsZS1yaWdodCJdLCJmMTAxIiwiTTQzOS4xIDI3OC42YzEyLjUtMTIuNSAxMi41LTMyLjggMC00NS4zbC0xNjAtMTYwYy0xMi41LTEyLjUtMzIuOC0xMi41LTQ1LjMgMHMtMTIuNSAzMi44IDAgNDUuM0wzNzEuMiAyNTYgMjMzLjkgMzkzLjRjLTEyLjUgMTIuNS0xMi41IDMyLjggMCA0NS4zczMyLjggMTIuNSA0NS4zIDBsMTYwLTE2MHptLTM1MiAxNjBsMTYwLTE2MGMxMi41LTEyLjUgMTIuNS0zMi44IDAtNDUuM2wtMTYwLTE2MGMtMTIuNS0xMi41LTMyLjgtMTIuNS00NS4zIDBzLTEyLjUgMzIuOCAwIDQ1LjNMMTc5LjIgMjU2IDQxLjkgMzkzLjRjLTEyLjUgMTIuNS0xMi41IDMyLjggMCA0NS4zczMyLjggMTIuNSA0NS4zIDB6Il19LHRMcj1hRWUsV3c9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZGVza3RvcCIsaWNvbjpbNTEyLDUxMixbMTI4NDIxLDYxNzA0LCJkZXNrdG9wLWFsdCJdLCJmMzkwIiwiTTY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZMMCAzNTJjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMTQ0IDAtMTYgNDgtNzIgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwyNzIgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtNzIgMC0xNi00OCAxNDQgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTI1NmMwLTM1LjMtMjguNy02NC02NC02NEw2NCAzMnpNOTYgOTZsMzIwIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCAxNjBjMCAxNy43LTE0LjMgMzItMzIgMzJMOTYgMzIwYy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTE2MGMwLTE3LjcgMTQuMy0zMiAzMi0zMnoiXX0sckxyPVd3LGFMcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwbGFuZS1jaXJjbGUteG1hcmsiLGljb246WzY0MCw1MTIsW10sImU1NTciLCJNMjMyIDI0YzAtMzAuOSAyNS4xLTU2IDU2LTU2czU2IDI1LjEgNTYgNTZsMCAxMjcuMyA3OCA3MS41Yy02OS4zIDI5LTExOCA5Ny40LTExOCAxNzcuMiAwIDQ5LjMgMTguNiA5NC4zIDQ5LjEgMTI4LjNMMjg4IDUxMiAxNzkuOSA1MzljLTEwLjEgMi41LTE5LjktNS4xLTE5LjktMTUuNWwwLTE5LjhjMC00LjkgMi4yLTkuNSA2LTEyLjVsNjYtNTIuOCAwLTk5LjctMTYyLjkgNTQuM0M1OC43IDM5Ni40IDQ4IDM4OC43IDQ4IDM3Ny44bDAtNDMuN2MwLTkgMy44LTE3LjUgMTAuNC0yMy42TDIzMiAxNTEuMyAyMzIgMjR6TTQ5NiAyNTZhMTQ0IDE0NCAwIDEgMSAwIDI4OCAxNDQgMTQ0IDAgMSAxIDAtMjg4em01OS4zIDEwNy4zYzYuMi02LjIgNi4yLTE2LjQgMC0yMi42cy0xNi40LTYuMi0yMi42IDBsLTM2LjcgMzYuNy0zNi43LTM2LjdjLTYuMi02LjItMTYuNC02LjItMjIuNiAwcy02LjIgMTYuNCAwIDIyLjZsMzYuNyAzNi43LTM2LjcgMzYuN2MtNi4yIDYuMi02LjIgMTYuNCAwIDIyLjZzMTYuNCA2LjIgMjIuNiAwbDM2LjctMzYuNyAzNi43IDM2LjdjNi4yIDYuMiAxNi40IDYuMiAyMi42IDBzNi4yLTE2LjQgMC0yMi42bC0zNi43LTM2LjcgMzYuNy0zNi43eiJdfSxpTHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicmV0d2VldCIsaWNvbjpbNTc2LDUxMixbXSwiZjA3OSIsIk0xMTguNiA0MS40Yy0xMi41LTEyLjUtMzIuOC0xMi41LTQ1LjMgMGwtNjQgNjRjLTkuMiA5LjItMTEuOSAyMi45LTYuOSAzNC45UzE5LjEgMTYwIDMyIDE2MGwzMiAwIDAgMjI0YzAgNTMgNDMgOTYgOTYgOTZsMTI4IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTEyOCAwYy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTIyNCAzMiAwYzEyLjkgMCAyNC42LTcuOCAyOS42LTE5LjhzMi4yLTI1LjctNi45LTM0LjlsLTY0LTY0ek00NTcuNCA0NzAuNmMxMi41IDEyLjUgMzIuOCAxMi41IDQ1LjMgMGw2NC02NGM5LjItOS4yIDExLjktMjIuOSA2LjktMzQuOVM1NTYuOSAzNTIgNTQ0IDM1MmwtMzIgMCAwLTIyNGMwLTUzLTQzLTk2LTk2LTk2TDI4OCAzMmMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmwxMjggMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDIyNC0zMiAwYy0xMi45IDAtMjQuNiA3LjgtMjkuNiAxOS44cy0yLjIgMjUuNyA2LjkgMzQuOWw2NCA2NHoiXX0saUVlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InVzZXItZ2VhciIsaWNvbjpbNjQwLDUxMixbInVzZXItY29nIl0sImY0ZmUiLCJNMjU2LjUgOGExMjAgMTIwIDAgMSAxIDAgMjQwIDEyMCAxMjAgMCAxIDEgMC0yNDB6TTIyNi43IDMwNGw1OS40IDAgMS41IDBjLTEyLjkgMjYuOC03LjggNTguMiAxMS41IDc5LjUtMjAuMiAyMi4zLTI0LjggNTUuOC05LjQgODMuNGwyMi41IDQwLjRjLjkgMS42IDEuOSAzLjIgMi45IDQuN2wtMjM3IDBjLTE2LjQgMC0yOS43LTEzLjMtMjkuNy0yOS43IDAtOTguNSA3OS44LTE3OC4zIDE3OC4zLTE3OC4zem0yMDUuOS01Ni40YzAtMTMuMyAxMC43LTI0IDI0LTI0bDQ4IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRsMCA2LjFjMCAxOC45IDI0LjEgMzIuOCA0MC41IDIzLjRsNS0yLjljMTEuNi02LjcgMjYuNS0yLjYgMzMgOS4xbDIyLjQgNDAuMmM2LjIgMTEuMiAyLjYgMjUuMi04LjIgMzJsLTQuNyAyLjljLTE2LjIgMTAuMS0xNi4yIDM5LjkgMCA1MC4xbDQuNiAyLjljMTAuOCA2LjggMTQuNSAyMC44IDguMyAzMkw2MDcgNDgzLjhjLTYuNSAxMS43LTIxLjQgMTUuOS0zMyA5LjFsLTQuOS0yLjljLTE2LjQtOS41LTQwLjUgNC41LTQwLjUgMjMuNGwwIDYuMWMwIDEzLjMtMTAuNyAyNC0yNCAyNGwtNDggMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRsMC01LjljMC0xOS0yNC4yLTMzLTQwLjctMjMuNWwtNC44IDIuOGMtMTEuNiA2LjctMjYuNCAyLjYtMzMtOS4xbC0yMi42LTQwLjRjLTYuMi0xMS4yLTIuNi0yNS4zIDguMy0zMi4xbDQuNC0yLjdjMTYuMy0xMC4xIDE2LjMtNDAuMSAwLTUwLjJsLTQuNS0yLjhjLTEwLjktNi44LTE0LjUtMjAuOS04LjMtMzIuMWwyMi41LTQwLjNjNi41LTExLjcgMjEuNC0xNS44IDMyLjktOS4xbDQuOCAyLjhjMTYuNSA5LjUgNDAuNy00LjUgNDAuNy0yMy41bDAtNS45em05OS45IDEzNi4yYTUyIDUyIDAgMSAwIC0xMDQgMCA1MiA1MiAwIDEgMCAxMDQgMHoiXX0sb0xyPWlFZSxuTHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYm9yZGVyLWFsbCIsaWNvbjpbNDQ4LDUxMixbXSwiZjg0YyIsIk0zODQgOTZsMCAxMjgtMTI4IDAgMC0xMjggMTI4IDB6bTAgMTkybDAgMTI4LTEyOCAwIDAtMTI4IDEyOCAwek0xOTIgMjI0bC0xMjggMCAwLTEyOCAxMjggMCAwIDEyOHpNNjQgMjg4bDEyOCAwIDAgMTI4LTEyOCAwIDAtMTI4ek02NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgNDE2YzAgMzUuMyAyOC43IDY0IDY0IDY0bDMyMCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMzIwYzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDMyeiJdfSxzTHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY29pbnMiLGljb246WzUxMiw1MTIsW10sImY1MWUiLCJNMTI4IDk2bDAtMTZjMC00NC4yIDg2LTgwIDE5Mi04MFM1MTIgMzUuOCA1MTIgODBsMCAxNmMwIDMwLjYtNDEuMyA1Ny4yLTEwMiA3MC43LTIuNC0yLjgtNC45LTUuNS03LjQtOC0xNS41LTE1LjMtMzUuNS0yNi45LTU2LjQtMzUuNS00MS45LTE3LjUtOTYuNS0yNy4xLTE1NC4yLTI3LjEtMjEuOSAwLTQzLjMgMS40LTYzLjggNC4xLS4yLTEuMy0uMi0yLjctLjItNC4xek00MzIgMzUzbDAtNDYuMmMxNS4xLTMuOSAyOS4zLTguNSA0Mi4yLTEzLjkgMTMuMi01LjUgMjYuMS0xMi4yIDM3LjgtMjAuM2wwIDE1LjRjMCAyNi44LTMxLjUgNTAuNS04MCA2NXptMC05NmwwLTMzYzAtNC41LS40LTguOC0xLTEzIDE1LjUtMy45IDMwLTguNiA0My4yLTE0LjJzMjYuMS0xMi4yIDM3LjgtMjAuM2wwIDE1LjRjMCAyNi44LTMxLjUgNTAuNS04MCA2NXpNMCAyNDBsMC0xNmMwLTQ0LjIgODYtODAgMTkyLTgwczE5MiAzNS44IDE5MiA4MGwwIDE2YzAgNDQuMi04NiA4MC0xOTIgODBTMCAyODQuMiAwIDI0MHptMzg0IDk2YzAgNDQuMi04NiA4MC0xOTIgODBTMCAzODAuMiAwIDMzNmwwLTE1LjRjMTEuNiA4LjEgMjQuNSAxNC43IDM3LjggMjAuMyA0MS45IDE3LjUgOTYuNSAyNy4xIDE1NC4yIDI3LjFzMTEyLjMtOS43IDE1NC4yLTI3LjFjMTMuMi01LjUgMjYuMS0xMi4yIDM3LjgtMjAuM2wwIDE1LjR6bTAgODAuNmwwIDE1LjRjMCA0NC4yLTg2IDgwLTE5MiA4MFMwIDQ3Ni4yIDAgNDMybDAtMTUuNGMxMS42IDguMSAyNC41IDE0LjcgMzcuOCAyMC4zIDQxLjkgMTcuNSA5Ni41IDI3LjEgMTU0LjIgMjcuMXMxMTIuMy05LjcgMTU0LjItMjcuMWMxMy4yLTUuNSAyNi4xLTEyLjIgMzcuOC0yMC4zeiJdfSxsTHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibWFycy1zdHJva2UiLGljb246WzU3Niw1MTIsWzk4OTRdLCJmMjI5IiwiTTQxNi0zMmMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmw1MC43IDAtNTguNyA1OC43LTE3LjQtMTcuNGMtMTIuNS0xMi41LTMyLjgtMTIuNS00NS4zIDBzLTEyLjUgMzIuOCAwIDQ1LjNsMTcuNCAxNy40LTIzIDIzYy0yOC40LTE5LjUtNjIuNy0zMS05OS44LTMxLTk3LjIgMC0xNzYgNzguOC0xNzYgMTc2czc4LjggMTc2IDE3NiAxNzYgMTc2LTc4LjggMTc2LTE3NmMwLTM3LTExLjQtNzEuNC0zMS05OS44bDIzLTIzIDE3LjQgMTcuNGMxMi41IDEyLjUgMzIuOCAxMi41IDQ1LjMgMHMxMi41LTMyLjggMC00NS4zTDQ1My4zIDEzNiA1MTIgNzcuMyA1MTIgMTI4YzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJMNTc2IDBjMC0xNy43LTE0LjMtMzItMzItMzJMNDE2LTMyek0xMjggMzA0YTExMiAxMTIgMCAxIDEgMjI0IDAgMTEyIDExMiAwIDEgMSAtMjI0IDB6Il19LG9FZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJoYW5kc2hha2UtYW5nbGUiLGljb246WzU3Niw1MTIsWyJoYW5kcy1oZWxwaW5nIl0sImY0YzQiLCJNMjY4LjkgNTMuMkwxNTIuMyAxODIuOGMtNC42IDUuMS00LjQgMTMgLjUgMTcuOSAzMC41IDMwLjUgODAgMzAuNSAxMTAuNSAwbDMxLjgtMzEuOGM0LjItNC4yIDkuNS02LjUgMTQuOS02LjkgNi44LS42IDEzLjggMS43IDE5IDYuOUw1MDUuNiAzNDQgNTc2IDI4OCA1NzYgMCA0NjQgNjQgNDQwLjIgNDguMUM0MjQuNCAzNy42IDQwNS45IDMyIDM4Ni45IDMybC03MC40IDBjLTEuMSAwLTIuMyAwLTMuNCAuMS0xNi45IC45LTMyLjggOC41LTQ0LjIgMjEuMXpNMTE2LjYgMTUwLjdMMjIzLjQgMzIgMTgzLjggMzJjLTI1LjUgMC00OS45IDEwLjEtNjcuOSAyOC4xTDAgMTkyIDAgNTQ0IDE0NCA0MDggMTU2LjQgNDE4LjNjMjMgMTkuMiA1MiAyOS43IDgxLjkgMjkuN2wxNS43IDAtNy03Yy05LjQtOS40LTkuNC0yNC42IDAtMzMuOXMyNC42LTkuNCAzMy45IDBsNDEgNDEgOSAwYzE5LjEgMCAzNy44LTQuMyA1NC44LTEyLjNMMzU5IDQwOWMtOS40LTkuNC05LjQtMjQuNiAwLTMzLjlzMjQuNi05LjQgMzMuOSAwbDMyIDMyIDE3LjUtMTcuNWM4LjktOC45IDExLjUtMjEuOCA3LjYtMzMuMWwtMTM3LjktMTM2LjgtMTQuOSAxNC45Yy00OS4zIDQ5LjMtMTI5LjEgNDkuMy0xNzguNCAwLTIzLTIzLTIzLjktNTkuOS0yLjItODR6Il19LGNMcj1vRWUsZExyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImFycm93LWRvd24iLGljb246WzM4NCw1MTIsWzg1OTVdLCJmMDYzIiwiTTE2OS40IDUwMi42YzEyLjUgMTIuNSAzMi44IDEyLjUgNDUuMyAwbDE2MC0xNjBjMTIuNS0xMi41IDEyLjUtMzIuOCAwLTQ1LjNzLTMyLjgtMTIuNS00NS4zIDBMMjI0IDQwMi43IDIyNCAzMmMwLTE3LjctMTQuMy0zMi0zMi0zMnMtMzIgMTQuMy0zMiAzMmwwIDM3MC43LTEwNS40LTEwNS40Yy0xMi41LTEyLjUtMzIuOC0xMi41LTQ1LjMgMHMtMTIuNSAzMi44IDAgNDUuM2wxNjAgMTYweiJdfSxuRWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibG9jYXRpb24tZG90IixpY29uOlszODQsNTEyLFsibWFwLW1hcmtlci1hbHQiXSwiZjNjNSIsIk0wIDE4OC42QzAgODQuNCA4NiAwIDE5MiAwUzM4NCA4NC40IDM4NCAxODguNmMwIDExOS4zLTEyMC4yIDI2Mi4zLTE3MC40IDMxNi44LTExLjggMTIuOC0zMS41IDEyLjgtNDMuMyAwLTUwLjItNTQuNS0xNzAuNC0xOTcuNS0xNzAuNC0zMTYuOHpNMTkyIDI1NmE2NCA2NCAwIDEgMCAwLTEyOCA2NCA2NCAwIDEgMCAwIDEyOHoiXX0sdUxyPW5FZSxmTHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGx1Zy1jaXJjbGUtZXhjbGFtYXRpb24iLGljb246WzY0MCw1MTIsW10sImU1NWQiLCJNMTkyLTMyYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgOTYgMTI4IDAgMC05NmMwLTE3LjcgMTQuMy0zMiAzMi0zMnMzMiAxNC4zIDMyIDMybDAgOTYgNjQgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwwIDQ4LjdjLTk4LjYgOC4xLTE3NiA5MC43LTE3NiAxOTEuMyAwIDI3LjMgNS43IDUzLjMgMTYgNzYuOWwwIDMuMWMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTY2LjdDMTY1LjIgMzk4LjEgOTYgMzE5LjEgOTYgMjI0bDAtNjRjLTE3LjcgMC0zMi0xNC4zLTMyLTMyUzc4LjMgOTYgOTYgOTZsNjQgMCAwLTk2YzAtMTcuNyAxNC4zLTMyIDMyLTMyek00OTYgMjU2YTE0NCAxNDQgMCAxIDEgMCAyODggMTQ0IDE0NCAwIDEgMSAwLTI4OHptMCAyMjhhMjAgMjAgMCAxIDAgMC00MCAyMCAyMCAwIDEgMCAwIDQwem0wLTE4MGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgODBjMCA4LjggNy4yIDE2IDE2IDE2czE2LTcuMiAxNi0xNmwwLTgwYzAtOC44LTcuMi0xNi0xNi0xNnoiXX0scExyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNvb2tpZS1iaXRlIixpY29uOls1MTIsNTEyLFtdLCJmNTY0IiwiTTI1Ny41IDI3LjZjLS44LTUuNC00LjktOS44LTEwLjMtMTAuNi0yMi4xLTMuMS00NC42IC45LTY0LjQgMTEuNGwtNzQgMzkuNUM4OS4xIDc4LjQgNzMuMiA5NC45IDYzLjQgMTE1TDI2LjcgMTkwLjZjLTkuOCAyMC4xLTEzIDQyLjktOS4xIDY0LjlsMTQuNSA4Mi44YzMuOSAyMi4xIDE0LjYgNDIuMyAzMC43IDU3LjlsNjAuMyA1OC40YzE2LjEgMTUuNiAzNi42IDI1LjYgNTguNyAyOC43bDgzIDExLjdjMjIuMSAzLjEgNDQuNi0uOSA2NC40LTExLjRsNzQtMzkuNWMxOS43LTEwLjUgMzUuNi0yNyA0NS40LTQ3LjJsMzYuNy03NS41YzkuOC0yMC4xIDEzLTQyLjkgOS4xLTY0LjktLjktNS4zLTUuMy05LjMtMTAuNi0xMC4xLTUxLjUtOC4yLTkyLjgtNDcuMS0xMDQuNS05Ny40LTEuOC03LjYtOC0xMy40LTE1LjctMTQuNi01NC42LTguNy05Ny43LTUyLTEwNi4yLTEwNi44ek0yMDggMTQ0YTMyIDMyIDAgMSAxIDAgNjQgMzIgMzIgMCAxIDEgMC02NHpNMTQ0IDMzNmEzMiAzMiAwIDEgMSA2NCAwIDMyIDMyIDAgMSAxIC02NCAwem0yMjQtNjRhMzIgMzIgMCAxIDEgMCA2NCAzMiAzMiAwIDEgMSAwLTY0eiJdfSxzRWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic2NyZXdkcml2ZXItd3JlbmNoIixpY29uOls1NzYsNTEyLFsidG9vbHMiXSwiZjdkOSIsIk03MC44LTYuN2M1LjQtNS40IDEzLjgtNi4yIDIwLjItMkwyMDkuOSA3MC41YzguOSA1LjkgMTQuMiAxNS45IDE0LjIgMjYuNmwwIDQ5LjYgOTAuOCA5MC44YzMzLjMtMTUgNzMuOS04LjkgMTAxLjIgMTguNUw1NDIuMiAzODIuMWMxOC43IDE4LjcgMTguNyA0OS4xIDAgNjcuOWwtNjAuMSA2MC4xYy0xOC43IDE4LjctNDkuMSAxOC43LTY3LjkgMEwyODguMSAzODRjLTI3LjQtMjcuNC0zMy41LTY3LjktMTguNS0xMDEuMmwtOTAuOC05MC44LTQ5LjYgMGMtMTAuNyAwLTIwLjctNS4zLTI2LjYtMTQuMkwyMy40IDU4LjljLTQuMi02LjMtMy40LTE0LjggMi0yMC4yTDcwLjgtNi43em0xNDUgMzAzLjVjLTYuMyAzNi45IDIuMyA3NS45IDI2LjIgMTA3LjJsLTk0LjkgOTVjLTI4LjEgMjguMS03My43IDI4LjEtMTAxLjggMHMtMjguMS03My43IDAtMTAxLjhsMTM1LjQtMTM1LjUgMzUuMiAzNS4xek0zODQuMSAwYzIwLjEgMCAzOS40IDMuNyA1Ny4xIDEwLjUgMTAgMy44IDExLjggMTYuNSA0LjMgMjQuMUwzODguOCA5MS4zYy0zIDMtNC43IDcuMS00LjcgMTEuM2wwIDQxLjRjMCA4LjggNy4yIDE2IDE2IDE2bDQxLjQgMGM0LjIgMCA4LjMtMS43IDExLjMtNC43bDU2LjctNTYuN2M3LjYtNy41IDIwLjMtNS43IDI0LjEgNC4zIDYuOCAxNy43IDEwLjUgMzcgMTAuNSA1Ny4xIDAgNDMuMi0xNy4yIDgyLjMtNDUgMTExLjFsLTQ5LjEtNDkuMWMtMzMuMS0zMy03OC41LTQ1LjctMTIxLjEtMzguNGwtNTYuOC01Ni44IDAtMjkuNy0uMi01Yy0uOC0xMi40LTQuNC0yNC4zLTEwLjUtMzQuOSAyOS40LTM1IDczLjQtNTcuMiAxMjIuNy01Ny4zeiJdfSxoTHI9c0VlLG1Mcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJpbmRlbnQiLGljb246WzQ0OCw1MTIsW10sImYwM2MiLCJNMCA2NEMwIDQ2LjMgMTQuMyAzMiAzMiAzMmwzODQgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMkwzMiA5NkMxNC4zIDk2IDAgODEuNyAwIDY0ek0xOTIgMTkyYzAtMTcuNyAxNC4zLTMyIDMyLTMybDE5MiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC0xOTIgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJ6bTMyIDk2bDE5MiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC0xOTIgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMnpNMCA0NDhjMC0xNy43IDE0LjMtMzIgMzItMzJsMzg0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJMMzIgNDgwYy0xNy43IDAtMzItMTQuMy0zMi0zMnpNMTI3LjggMjY4LjZMMjUuOCAzNDcuOUMxNS4zIDM1Ni4xIDAgMzQ4LjYgMCAzMzUuM0wwIDE3Ni43YzAtMTMuMyAxNS4zLTIwLjggMjUuOC0xMi42bDEwMS45IDc5LjNjOC4yIDYuNCA4LjIgMTguOSAwIDI1LjN6Il19LGxFZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJiYXJzIixpY29uOls0NDgsNTEyLFsibmF2aWNvbiJdLCJmMGM5IiwiTTAgOTZDMCA3OC4zIDE0LjMgNjQgMzIgNjRsMzg0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJMMzIgMTI4QzE0LjMgMTI4IDAgMTEzLjcgMCA5NnpNMCAyNTZjMC0xNy43IDE0LjMtMzIgMzItMzJsMzg0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJMMzIgMjg4Yy0xNy43IDAtMzItMTQuMy0zMi0zMnpNNDQ4IDQxNmMwIDE3LjctMTQuMyAzMi0zMiAzMkwzMiA0NDhjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsMzg0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJ6Il19LGdMcj1sRWUsY0VlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhhbmRzLXByYXlpbmciLGljb246WzY0MCw1MTIsWyJwcmF5aW5nLWhhbmRzIl0sImY2ODQiLCJNMjI0IDI5NmMwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNGwwLTExMi42IDg4LjItMTE5LjdjMTMuMS0xNy44IDkuMy00Mi44LTguNS01NS45cy00Mi44LTkuMy01NS45IDguNUwxMDYuNSAxNDIuOUM4OS4zIDE2Ni4yIDgwIDE5NC41IDgwIDIyMy42bDAgMTEwLjctNTguMSAxOS40QzguOCAzNTggMCAzNzAuMiAwIDM4NGwwIDk2YzAgMTAgNC43IDE5LjUgMTIuNyAyNS41czE4LjQgOCAyOC4xIDUuMmwxNTQuNC00NC4xYzU1LTE1LjcgOTIuOC02NS45IDkyLjgtMTIzLjFMMjg4IDIyNGMwLTE3LjctMTQuMy0zMi0zMi0zMnMtMzIgMTQuMy0zMiAzMmwwIDcyem0xOTIgMGwwLTcyYzAtMTcuNy0xNC4zLTMyLTMyLTMycy0zMiAxNC4zLTMyIDMybDAgMTE5LjZjMCA1Ny4yIDM3LjkgMTA3LjQgOTIuOCAxMjMuMWwxNTQuNCA0NC4xYzkuNyAyLjggMjAgLjggMjguMS01LjJTNjQwIDQ5MCA2NDAgNDgwbDAtOTZjMC0xMy44LTguOC0yNi0yMS45LTMwLjRsLTU4LjEtMTkuNCAwLTExMC43YzAtMjktOS4zLTU3LjMtMjYuNS04MC43TDQ0MC4yIDE2LjNDNDI3LjEtMS41IDQwMi4xLTUuMyAzODQuMyA3LjhzLTIxLjYgMzguMS04LjUgNTUuOUw0NjQgMTgzLjQgNDY0IDI5NmMwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNHoiXX0seExyPWNFZSxiTHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidmlydXNlcyIsaWNvbjpbNjQwLDUxMixbXSwiZTA3NiIsIk0xOTIgMGMxNy43IDAgMzIgMTQuMyAzMiAzMiAwIDMwLjUgMzYuOSA0NS44IDU4LjUgMjQuMiAxMi41LTEyLjUgMzIuOC0xMi41IDQ1LjMgMHMxMi41IDMyLjggMCA0NS4zYy0yMS42IDIxLjYtNi4zIDU4LjUgMjQuMiA1OC41IDE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMyYy0zMC41IDAtNDUuOCAzNi45LTI0LjIgNTguNSAxMi41IDEyLjUgMTIuNSAzMi44IDAgNDUuM3MtMzIuOCAxMi41LTQ1LjMgMGMtMjEuNi0yMS42LTU4LjUtNi4zLTU4LjUgMjQuMiAwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmMwLTMwLjUtMzYuOS00NS44LTU4LjUtMjQuMi0xMi41IDEyLjUtMzIuOCAxMi41LTQ1LjMgMHMtMTIuNS0zMi44IDAtNDUuM0M3Ny44IDI2MC45IDYyLjUgMjI0IDMyIDIyNCAxNC4zIDIyNCAwIDIwOS43IDAgMTkyczE0LjMtMzIgMzItMzJjMzAuNSAwIDQ1LjgtMzYuOSAyNC4yLTU4LjUtMTIuNS0xMi41LTEyLjUtMzIuOCAwLTQ1LjNzMzIuOC0xMi41IDQ1LjMgMEMxMjMuMSA3Ny44IDE2MCA2Mi41IDE2MCAzMiAxNjAgMTQuMyAxNzQuMyAwIDE5MiAwek0xNDQgMTc2YTMyIDMyIDAgMSAwIDAtNjQgMzIgMzIgMCAxIDAgMCA2NHptMTI4IDY0YTMyIDMyIDAgMSAwIC02NCAwIDMyIDMyIDAgMSAwIDY0IDB6bTI0OCA0MGMwIDIyLjkgMjcuNyAzNC40IDQzLjkgMTguMiA5LjQtOS40IDI0LjYtOS40IDMzLjkgMHM5LjQgMjQuNiAwIDMzLjljLTE2LjIgMTYuMi00LjcgNDMuOSAxOC4yIDQzLjkgMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRjLTIyLjkgMC0zNC40IDI3LjctMTguMiA0My45IDkuNCA5LjQgOS40IDI0LjYgMCAzMy45cy0yNC42IDkuNC0zMy45IDBjLTE2LjItMTYuMi00My45LTQuNy00My45IDE4LjIgMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjRjMC0yMi45LTI3LjctMzQuNC00My45LTE4LjItOS40IDkuNC0yNC42IDkuNC0zMy45IDBzLTkuNC0yNC42IDAtMzMuOWMxNi4yLTE2LjIgNC43LTQzLjktMTguMi00My45LTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjRjMjIuOSAwIDM0LjQtMjcuNyAxOC4yLTQzLjktOS40LTkuNC05LjQtMjQuNiAwLTMzLjlzMjQuNi05LjQgMzMuOSAwYzE2LjIgMTYuMiA0My45IDQuNyA0My45LTE4LjIgMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNHpNNTA0IDM4NGEyNCAyNCAwIDEgMCAtNDggMCAyNCAyNCAwIDEgMCA0OCAweiJdfSx2THI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic2Nob29sLWZsYWciLGljb246WzU3Niw1MTIsW10sImU1NmUiLCJNMjU2LThjMC0xMy4zIDEwLjctMjQgMjQtMjRsMTEyIDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRsMCA0OGMwIDEzLjMtMTAuNyAyNC0yNCAyNGwtNzIgMCAwIDE5LjIgMTI4IDc2LjggNjQgMGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDIyNGMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA1MTJjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgMjI0YzAtMzUuMyAyOC43LTY0IDY0LTY0bDY0IDAgMTI4LTc2LjggMC05MS4yek0yNDAgMzg0bDAgODAgOTYgMCAwLTgwYzAtMjYuNS0yMS41LTQ4LTQ4LTQ4cy00OCAyMS41LTQ4IDQ4ek0xMTIgNDE2YzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDB6bTE2LTE0NGwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDBjOC44IDAgMTYtNy4yIDE2LTE2ek00OTYgNDE2YzguOCAwIDE2LTcuMiAxNi0xNmwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDB6bTE2LTE0NGwwLTMyYzAtOC44LTcuMi0xNi0xNi0xNmwtMzIgMGMtOC44IDAtMTYgNy4yLTE2IDE2bDAgMzJjMCA4LjggNy4yIDE2IDE2IDE2bDMyIDBjOC44IDAgMTYtNy4yIDE2LTE2em0tMjI0IDBhNDggNDggMCAxIDAgMC05NiA0OCA0OCAwIDEgMCAwIDk2eiJdfSx5THI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidHJhZGVtYXJrIixpY29uOls2NDAsNTEyLFs4NDgyXSwiZjI1YyIsIk0zNDYuNiAxMTAuMmMtNy44LTExLjctMjIuNC0xNy0zNS45LTEyLjlTMjg4IDExMy45IDI4OCAxMjhsMCAyNTZjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTE1MC4zIDY5LjQgMTA0LjFjNS45IDguOSAxNS45IDE0LjIgMjYuNiAxNC4yczIwLjctNS4zIDI2LjYtMTQuMkw1NDQgMjMzLjcgNTQ0IDM4NGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMjU2YzAtMTQuMS05LjItMjYuNS0yMi43LTMwLjZzLTI4LjEgMS4xLTM1LjkgMTIuOUw0NDggMjYyLjMgMzQ2LjYgMTEwLjJ6TTMyIDk2QzE0LjMgOTYgMCAxMTAuMyAwIDEyOHMxNC4zIDMyIDMyIDMybDY0IDAgMCAyMjRjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTIyNCA2NCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMyTDMyIDk2eiJdfSx3THI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmlyZS1idXJuZXIiLGljb246WzUxMiw1MTIsW10sImU0ZjEiLCJNMjgxLjcgNDguM0wyOTQgMzQuNWM1LjQtNi4xIDEzLjMtOC44IDIwLjktOC45IDcuMiAwIDE0LjMgMi42IDE5LjkgNy44IDE5LjcgMTguMyAzOS44IDQzLjIgNTUgNzAuNiAxNS4xIDI3LjIgMjYuMiA1OC4xIDI2LjIgODguMSAwIDg4LjctNzEuMyAxNTkuOC0xNjAgMTU5LjgtODkuNiAwLTE2MC03MS4zLTE2MC0xNTkuOCAwLTM3LjMgMTYtNzMuNCAzNi44LTEwNC41IDIwLjktMzEuMyA0Ny41LTU5IDcwLjktODAuMiA1LjctNS4yIDEzLjEtNy43IDIwLjMtNy41czEzLjQgMy4yIDE4LjggNy41YzE0LjQgMTEuNCAzOC45IDQwLjcgMzguOSA0MC43ek0zMjAgMjQwLjJjMC0zNi41LTM3LTczLTU0LjgtODguNC01LjQtNC43LTEzLjEtNC43LTE4LjUgMC0xNy43IDE1LjQtNTQuOCA1MS45LTU0LjggODguNCAwIDM1LjMgMjguNyA2NCA2NCA2NHM2NC0yOC43IDY0LTY0ek05Mi44IDMyMGMzNy43IDQ4LjMgOTYuMSA4MCAxNjMuMiA4MCA2Ni41IDAgMTI1LjEtMzEuNyAxNjMtODBsNDUgMGMyNi41IDAgNDggMjEuNSA0OCA0OGwwIDY0YzAgMjYuNS0yMS41IDQ4LTQ4IDQ4TDQ4IDQ4MGMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhsMC02NGMwLTI2LjUgMjEuNS00OCA0OC00OGw0NC44IDB6TTQ1NiA0MDBhMjQgMjQgMCAxIDAgLTQ4IDAgMjQgMjQgMCAxIDAgNDggMHoiXX0sZEVlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZhY2Utc21pbGUtYmVhbSIsaWNvbjpbNTEyLDUxMixbMTI4NTIyLCJzbWlsZS1iZWFtIl0sImY1YjgiLCJNMjU2IDUxMmEyNTYgMjU2IDAgMSAwIDAtNTEyIDI1NiAyNTYgMCAxIDAgMCA1MTJ6TTE2NS40IDMyMS45YzIwLjQgMjggNTMuNCA0Ni4xIDkwLjYgNDYuMXM3MC4yLTE4LjEgOTAuNi00Ni4xYzcuOC0xMC43IDIyLjgtMTMuMSAzMy41LTUuM3MxMy4xIDIyLjggNS4zIDMzLjVDMzU2LjMgMzkwIDMwOS4yIDQxNiAyNTYgNDE2cy0xMDAuMy0yNi0xMjkuNC02NS45Yy03LjgtMTAuNy01LjQtMjUuNyA1LjMtMzMuNXMyNS43LTUuNCAzMy41IDUuM3pNMTc2IDE4MGMtMTUuNSAwLTI4IDEyLjUtMjggMjhsMCA4YzAgMTEtOSAyMC0yMCAyMHMtMjAtOS0yMC0yMGwwLThjMC0zNy42IDMwLjQtNjggNjgtNjhzNjggMzAuNCA2OCA2OGwwIDhjMCAxMS05IDIwLTIwIDIwcy0yMC05LTIwLTIwbDAtOGMwLTE1LjUtMTIuNS0yOC0yOC0yOHptMTMyIDI4bDAgOGMwIDExLTkgMjAtMjAgMjBzLTIwLTktMjAtMjBsMC04YzAtMzcuNiAzMC40LTY4IDY4LTY4czY4IDMwLjQgNjggNjhsMCA4YzAgMTEtOSAyMC0yMCAyMHMtMjAtOS0yMC0yMGwwLThjMC0xNS41LTEyLjUtMjgtMjgtMjhzLTI4IDEyLjUtMjggMjh6Il19LE1Mcj1kRWUsa0xyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRlbnQtYXJyb3ctbGVmdC1yaWdodCIsaWNvbjpbNTEyLDUxMixbXSwiZTU3ZiIsIk0tLjUgMTEzYy05LjQtOS40LTkuNC0yNC42IDAtMzMuOWw3Mi03MmM5LjQtOS40IDI0LjYtOS40IDMzLjkgMHM5LjQgMjQuNiAwIDMzLjlsLTMxIDMxIDMxMC4xIDAgNTQuMSAwLTMxLTMxYy05LjQtOS40LTkuNC0yNC42IDAtMzMuOXMyNC42LTkuNCAzMy45IDBsNzIgNzJjOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlsLTcyIDcyYy05LjQgOS40LTI0LjYgOS40LTMzLjkgMHMtOS40LTI0LjYgMC0zMy45bDMxLTMxLTEwMi4xIDAtLjEgMC0yNjIgMCAzMSAzMWM5LjQgOS40IDkuNCAyNC42IDAgMzMuOXMtMjQuNiA5LjQtMzMuOSAwbC03Mi03MnpNMzcuMSA0NzZMNjAuMyAyOTIuNmMxLjItOS43IDYuOC0xOC4zIDE1LjEtMjMuM0wyMzguOCAxNzBjMTAuMi02LjIgMjIuOS02LjIgMzMuMS0uMWwxNjUuNSA5OS40YzguNCA1IDE0IDEzLjcgMTUuMyAyMy40TDQ3NS45IDQ3NmMyLjQgMTkuMS0xMi41IDM2LTMxLjcgMzZsLTcxLjkgMGMtMTIuMSAwLTIzLjItNi44LTI4LjYtMTcuN0wyNzUuNCAzNTcuOWMtMS44LTMuNi01LjUtNS45LTkuNS01LjktNS45IDAtMTAuNiA0LjctMTAuNiAxMC42bDAgMTE3LjRjMCAxNy43LTE0LjMgMzItMzIgMzJMNjguOCA1MTJjLTE5LjMgMC0zNC4yLTE2LjktMzEuNy0zNnoiXX0sU0xyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InJvdXRlIixpY29uOls1MTIsNTEyLFtdLCJmNGQ3IiwiTTUxMiA5NmMwIDUwLjItNTkuMSAxMjUuMS04NC42IDE1NS0zLjggNC40LTkuNCA2LjEtMTQuNSA1TDMyMCAyNTZjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsOTYgMGM1MyAwIDk2IDQzIDk2IDk2cy00MyA5Ni05NiA5NmwtMjc2LjQgMGM4LjctOS45IDE5LjMtMjIuNiAzMC0zNi44IDYuMy04LjQgMTIuOC0xNy42IDE5LTI3LjJMNDE2IDQ0OGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtOTYgMGMtNTMgMC05Ni00My05Ni05NnM0My05NiA5Ni05NmwzOS44IDBjLTIxLTMxLjUtMzkuOC02Ny43LTM5LjgtOTYgMC01MyA0My05NiA5Ni05NnM5NiA0MyA5NiA5NnpNMTE3LjEgNDg5LjFjLTMuOCA0LjMtNy4yIDguMS0xMC4xIDExLjNsLTEuOCAyLS4yLS4yYy02IDQuNi0xNC42IDQtMjAtMS44LTI1LjItMjcuNC04NS05Ny45LTg1LTE0OC40IDAtNTMgNDMtOTYgOTYtOTZzOTYgNDMgOTYgOTZjMCAzMC0yMS4xIDY3LTQzLjUgOTcuOS0xMC43IDE0LjctMjEuNyAyOC0zMC44IDM4LjVsLS42IC43ek0xMjggMzUyYTMyIDMyIDAgMSAwIC02NCAwIDMyIDMyIDAgMSAwIDY0IDB6TTQxNiAxMjhhMzIgMzIgMCAxIDAgMC02NCAzMiAzMiAwIDEgMCAwIDY0eiJdfSx1RWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYW5nbGVzLXVwIixpY29uOlszODQsNTEyLFsiYW5nbGUtZG91YmxlLXVwIl0sImYxMDIiLCJNMjE0LjYgNDEuNGMtMTIuNS0xMi41LTMyLjgtMTIuNS00NS4zIDBsLTE2MCAxNjBjLTEyLjUgMTIuNS0xMi41IDMyLjggMCA0NS4zczMyLjggMTIuNSA0NS4zIDBMMTkyIDEwOS4zIDMyOS40IDI0Ni42YzEyLjUgMTIuNSAzMi44IDEyLjUgNDUuMyAwczEyLjUtMzIuOCAwLTQ1LjNsLTE2MC0xNjB6bTE2MCAzNTJsLTE2MC0xNjBjLTEyLjUtMTIuNS0zMi44LTEyLjUtNDUuMyAwbC0xNjAgMTYwYy0xMi41IDEyLjUtMTIuNSAzMi44IDAgNDUuM3MzMi44IDEyLjUgNDUuMyAwTDE5MiAzMDEuMyAzMjkuNCA0MzguNmMxMi41IDEyLjUgMzIuOCAxMi41IDQ1LjMgMHMxMi41LTMyLjggMC00NS4zeiJdfSx6THI9dUVlLENMcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJidWNrZXQiLGljb246WzQ0OCw1MTIsW10sImU0Y2YiLCJNNDQzLjcgMjA4YzIuNyA0LjcgNC4zIDEwLjIgNC4zIDE2IDAgMTcuNy0xNC4zIDMyLTMyIDMybC01LjEgMC0yMi40IDIxM2MtMi42IDI0LjQtMjMuMiA0My00Ny44IDQzbC0yMzMuNiAwYy0yNC42IDAtNDUuMi0xOC41LTQ3LjgtNDNMMzcuMSAyNTYgMzIgMjU2Yy0xNy43IDAtMzItMTQuMy0zMi0zMiAwLTUuOCAxLjYtMTEuMyA0LjMtMTZsNDM5LjQgMHpNMjI0LTE2Yzc5LjUgMCAxNDQgNjQuNSAxNDQgMTQ0bDAgMzItNDggMCAwLTMyYzAtNTMtNDMtOTYtOTYtOTZzLTk2IDQzLTk2IDk2bDAgMzItNDggMCAwLTMyQzgwIDQ4LjUgMTQ0LjUtMTYgMjI0LTE2eiJdfSxfTHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibGVzcy10aGFuLWVxdWFsIixpY29uOls0NDgsNTEyLFtdLCJmNTM3IiwiTTQyNi4xIDk0LjRjMTYuOC01LjYgMjUuOC0yMy43IDIwLjItNDAuNXMtMjMuNy0yNS44LTQwLjUtMjAuMmwtMzg0IDEyOEM4LjggMTY2IDAgMTc4LjIgMCAxOTJzOC44IDI2IDIxLjkgMzAuNGwzODQgMTI4YzE2LjggNS42IDM0LjktMy41IDQwLjUtMjAuMnMtMy41LTM0LjktMjAuMi00MC41TDEzMy4yIDE5MiA0MjYuMSA5NC40ek0zMiA0MTZjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsMzg0IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJMMzIgNDE2eiJdfSxUTHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZm9sZGVyLWNsb3NlZCIsaWNvbjpbNTEyLDUxMixbXSwiZTE4NSIsIk00NDggNDQ4TDY0IDQ0OGMtMzUuMyAwLTY0LTI4LjctNjQtNjRsMC0xNzYgNTEyIDAgMCAxNzZjMCAzNS4zLTI4LjcgNjQtNjQgNjR6bTY0LTI4OEwwIDE2MCAwIDk2QzAgNjAuNyAyOC43IDMyIDY0IDMybDEzOC43IDBjMTMuOCAwIDI3LjMgNC41IDM4LjQgMTIuOGwzOC40IDI4LjhjNS41IDQuMiAxMi4zIDYuNCAxOS4yIDYuNEw0NDggODBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAxNnoiXX0sTExyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBlcnNvbi10aHJvdWdoLXdpbmRvdyIsaWNvbjpbNjQwLDUxMixbXSwiZTVhOSIsIk02NCA2NGwyMjQgMCAwIDkuOGMwIDM5LTIzLjcgNzQtNTkuOSA4OC40LTYwLjUgMjQuMi0xMDAuMSA4Mi43LTEwMC4xIDE0Ny45bDAgNzMuOC02NCAwIDAtMzIwem0yODggMGwyMjQgMCAwIDMyMC02Ny43IDAtMy43LTQuNS03NS4yLTkwLjJjLTkuMS0xMC45LTIyLjYtMTcuMy0zNi45LTE3LjNsLTcxLjEgMC00MS02My4xYy0uMy0uNS0uNi0xLTEtMS40IDQ0LjctMjkgNzIuNS03OSA3Mi41LTEzMy42bDAtOS44em03MyAzMjBsLTI2LjYgMCA0Mi43IDY0IDE1MC45IDBjMjYuNSAwIDQ4LTIxLjUgNDgtNDhsMC0zNTJjMC0yNi41LTIxLjUtNDgtNDgtNDhMNDggMEMyMS41IDAgMCAyMS41IDAgNDhMMCA0MDBjMCAyNi41IDIxLjUgNDggNDggNDhsMjYwLjIgMCAzMy4yIDQ5LjhjOS44IDE0LjcgMjkuNyAxOC43IDQ0LjQgOC45czE4LjctMjkuNyA4LjktNDQuNGwtODQuMi0xMjYuMiA3NC42IDAgNDAgNDh6bS0xNTkuNSAwbC03My41IDAgMC03My44YzAtMTAuMiAxLjYtMjAuMSA0LjctMjkuNUwyNjUuNSAzODR6TTE5MiAxMjhhNDggNDggMCAxIDAgLTk2IDAgNDggNDggMCAxIDAgOTYgMHoiXX0sRExyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNjaG9vbC1sb2NrIixpY29uOls2NDAsNTEyLFtdLCJlNTZmIiwiTTAgMTkyYzAtMzUuMyAyOC43LTY0IDY0LTY0bDY0IDAgMTI3LjktMTE1LjFjMTguMy0xNi40IDQ2LTE2LjQgNjQuMiAwTDQ0OCAxMjggNTEyIDEyOGMzMyAwIDYwLjIgMjUgNjMuNiA1Ny4yLTE0LjctNS45LTMwLjgtOS4yLTQ3LjYtOS4yLTcwLjcgMC0xMjggNTcuMy0xMjggMTI4bDAgMjQuNGMtMTkuNiAxNy42LTMyIDQzLjEtMzIgNzEuNWwwIDk2YzAgNS41IC41IDEwLjkgMS4zIDE2LjFMNjQgNTEyYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDE5MnpNMzMyLjMgMzQxLjVjLTYtMy41LTEyLjktNS41LTIwLjMtNS41bC00OCAwYy0yMi4xIDAtNDAgMTcuOS00MCA0MGwwIDg4IDk2IDAgMC02NC4xYzAtMjAuOCA0LjQtNDAuNSAxMi4zLTU4LjR6TTExMiAzODRjOC44IDAgMTYtNy4yIDE2LTE2bDAtMzJjMC04LjgtNy4yLTE2LTE2LTE2bC0zMiAwYy04LjggMC0xNiA3LjItMTYgMTZsMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZsMzIgMHptMTYtMTQ0bDAtMzJjMC04LjgtNy4yLTE2LTE2LTE2bC0zMiAwYy04LjggMC0xNiA3LjItMTYgMTZsMCAzMmMwIDguOCA3LjIgMTYgMTYgMTZsMzIgMGM4LjggMCAxNi03LjIgMTYtMTZ6bTIyNC00OGE2NCA2NCAwIDEgMCAtMTI4IDAgNjQgNjQgMCAxIDAgMTI4IDB6TTU2MCAzNTJsMC00Ny45YzAtMTcuNy0xNC4zLTMyLTMyLTMycy0zMiAxNC4zLTMyIDMybDAgNDcuOSA2NCAwem0tMTEyIDIuN2wwLTUwLjZjMC00NC4yIDM1LjgtODAgODAtODBzODAgMzUuOCA4MCA4MGwwIDUwLjZjMTguNiA2LjYgMzIgMjQuNCAzMiA0NS4zbDAgOTZjMCAyNi41LTIxLjUgNDgtNDggNDhsLTEyOCAwYy0yNi41IDAtNDgtMjEuNS00OC00OGwwLTk2YzAtMjAuOSAxMy40LTM4LjcgMzItNDUuM3oiXX0sQUxyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBlcnNvbi1idXJzdCIsaWNvbjpbNjQwLDUxMixbXSwiZTUzYiIsIk0yMDQgNDAuMWMtMTMuMyAwLTI0LTEwLjctMjQtMjRsMC00OGMwLTEzLjMgMTAuNy0yNCAyNC0yNHMyNCAxMC43IDI0IDI0bDAgNDhjMCAxMy4zLTEwLjcgMjQtMjQgMjR6TTQgMTQ0LjFjMC0xMy4zIDEwLjctMjQgMjQtMjRsNDggMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtNDggMGMtMTMuMyAwLTI0LTEwLjctMjQtMjR6TTk2LjUgMjg1LjVjLTkuNCA5LjQtMjQuNiA5LjQtMzMuOSAwcy05LjQtMjQuNiAwLTMzLjlsMzMuOS0zMy45YzkuNC05LjQgMjQuNi05LjQgMzMuOSAwczkuNCAyNC42IDAgMzMuOUw5Ni41IDI4NS41ek02Mi42IDIuN2M5LjQtOS40IDI0LjYtOS40IDMzLjkgMGwzMy45IDMzLjljOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlzLTI0LjYgOS40LTMzLjkgMEw2Mi42IDM2LjZjLTkuNC05LjQtOS40LTI0LjYgMC0zMy45ek0zNTIuNC0zMmE1NiA1NiAwIDEgMSAwIDExMiA1NiA1NiAwIDEgMSAwLTExMnpNNDc4LjcgMjk5LjFsLTQ2LjMtNjIuNCAwIDI3NS4zYzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMTYwYzAtOC44LTcuMi0xNi0xNi0xNnMtMTYgNy4yLTE2IDE2bDAgMTYwYzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMjc1LjMtNDYuMyA2Mi40Yy0xMC41IDE0LjItMzAuNiAxNy4yLTQ0LjggNi42cy0xNy4yLTMwLjYtNi42LTQ0LjhsNzAuNS05NWMyNS4yLTMzLjkgNjUtNTMuOSAxMDcuMi01My45czgyIDIwIDEwNy4yIDUzLjlsNzAuNSA5NWMxMC41IDE0LjIgNy42IDM0LjItNi42IDQ0LjhzLTM0LjIgNy42LTQ0LjgtNi42eiJdfSxmRWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibGVmdC1sb25nIixpY29uOls1NzYsNTEyLFsibG9uZy1hcnJvdy1hbHQtbGVmdCJdLCJmMzBhIiwiTTkuNCAyNzguNmMtMTIuNS0xMi41LTEyLjUtMzIuOCAwLTQ1LjNsMTI4LTEyOGM5LjItOS4yIDIyLjktMTEuOSAzNC45LTYuOVMxOTIgMTE1LjEgMTkyIDEyOGwwIDY0IDMzNiAwYzI2LjUgMCA0OCAyMS41IDQ4IDQ4bDAgMzJjMCAyNi41LTIxLjUgNDgtNDggNDhsLTMzNiAwIDAgNjRjMCAxMi45LTcuOCAyNC42LTE5LjggMjkuNnMtMjUuNyAyLjItMzQuOS02LjlsLTEyOC0xMjh6Il19LEVMcj1mRWUscEVlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImxvY2F0aW9uLWNyb3NzaGFpcnMiLGljb246WzU3Niw1MTIsWyJsb2NhdGlvbiJdLCJmNjAxIiwiTTI4OC0xNmMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDE4LjNjOTguMSAxNCAxNzUuNyA5MS42IDE4OS43IDE4OS43bDE4LjMgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtMTguMyAwYy0xNCA5OC4xLTkxLjYgMTc1LjctMTg5LjcgMTg5LjdsMCAxOC4zYzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMTguM0MxNTcuOSA0NjMuNyA4MC4zIDM4Ni4xIDY2LjMgMjg4TDQ4IDI4OGMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMmwxOC4zIDBDODAuMyAxMjUuOSAxNTcuOSA0OC4zIDI1NiAzNC4zTDI1NiAxNmMwLTE3LjcgMTQuMy0zMiAzMi0zMnpNMTI4IDI1NmExNjAgMTYwIDAgMSAwIDMyMCAwIDE2MCAxNjAgMCAxIDAgLTMyMCAwem0xNjAtOTZhOTYgOTYgMCAxIDEgMCAxOTIgOTYgOTYgMCAxIDEgMC0xOTJ6Il19LCRMcj1wRWUsaEVlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBlcnNvbi1kb3RzLWZyb20tbGluZSIsaWNvbjpbNTEyLDUxMixbImRpYWdub3NlcyJdLCJmNDcwIiwiTTE4NCA3MmE3MiA3MiAwIDEgMSAxNDQgMCA3MiA3MiAwIDEgMSAtMTQ0IDB6TTE2MCAyOTkuM2MtMTkuOSAyMi42LTMyIDUyLjItMzIgODQuN2wwIDMyLTY0IDAgMC0zMmMwLTEwNiA4Ni0xOTIgMTkyLTE5MnMxOTIgODYgMTkyIDE5MmwwIDMyLTY0IDAgMC0zMmMwLTMyLjUtMTIuMS02Mi4xLTMyLTg0LjdsMCAxMTYuNy0xOTIgMCAwLTExNi43ek0yMzIgMzg0YTI0IDI0IDAgMSAwIDAtNDggMjQgMjQgMCAxIDAgMCA0OHptODgtMTA0YTI0IDI0IDAgMSAwIC00OCAwIDI0IDI0IDAgMSAwIDQ4IDB6TTI0IDQ2NGw0NjQgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNEwyNCA1MTJjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjR6TTY0IDE4NGEyNCAyNCAwIDEgMSA0OCAwIDI0IDI0IDAgMSAxIC00OCAwem00MjQgNzJhMjQgMjQgMCAxIDEgMCA0OCAyNCAyNCAwIDEgMSAwLTQ4eiJdfSxQTHI9aEVlLFcyZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJnYXVnZS1zaW1wbGUtaGlnaCIsaWNvbjpbNTEyLDUxMixbNjE2NjgsInRhY2hvbWV0ZXIiLCJ0YWNob21ldGVyLWZhc3QiXSwiZjYyYSIsIk0wIDI1NmEyNTYgMjU2IDAgMSAxIDUxMiAwIDI1NiAyNTYgMCAxIDEgLTUxMiAwem0zMjAgOTZjMC0xNi4yLTYtMzEuMS0xNi00Mi4zbDY5LjUtMTM4LjljNS45LTExLjkgMS4xLTI2LjMtMTAuNy0zMi4ycy0yNi4zLTEuMS0zMi4yIDEwLjdMMjYxLjEgMjg4LjJjLTEuNy0uMS0zLjQtLjItNS4xLS4yLTM1LjMgMC02NCAyOC43LTY0IDY0czI4LjcgNjQgNjQgNjQgNjQtMjguNyA2NC02NHoiXX0sSUxyPVcyZSxOTHI9VzJlLG1FZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJhbmdsZXMtbGVmdCIsaWNvbjpbNDQ4LDUxMixbMTcxLCJhbmdsZS1kb3VibGUtbGVmdCJdLCJmMTAwIiwiTTkuNCAyMzMuNGMtMTIuNSAxMi41LTEyLjUgMzIuOCAwIDQ1LjNsMTYwIDE2MGMxMi41IDEyLjUgMzIuOCAxMi41IDQ1LjMgMHMxMi41LTMyLjggMC00NS4zTDc3LjMgMjU2IDIxNC42IDExOC42YzEyLjUtMTIuNSAxMi41LTMyLjggMC00NS4zcy0zMi44LTEyLjUtNDUuMyAwbC0xNjAgMTYwem0zNTItMTYwbC0xNjAgMTYwYy0xMi41IDEyLjUtMTIuNSAzMi44IDAgNDUuM2wxNjAgMTYwYzEyLjUgMTIuNSAzMi44IDEyLjUgNDUuMyAwczEyLjUtMzIuOCAwLTQ1LjNMMjY5LjMgMjU2IDQwNi42IDExOC42YzEyLjUtMTIuNSAxMi41LTMyLjggMC00NS4zcy0zMi44LTEyLjUtNDUuMyAweiJdfSxGTHI9bUVlLGdFZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ1cC1kb3duIixpY29uOls1MTIsNTEyLFs4NTk3LDExMDIxLCJhcnJvd3MtYWx0LXYiXSwiZjMzOCIsIk00MDYuNiA1MDIuNmw5Ni05NmM5LjItOS4yIDExLjktMjIuOSA2LjktMzQuOVM0OTIuOSAzNTIgNDgwIDM1MmwtNjQgMCAwLTMyMGMwLTE3LjctMTQuMy0zMi0zMi0zMnMtMzIgMTQuMy0zMiAzMmwwIDMyMC02NCAwYy0xMi45IDAtMjQuNiA3LjgtMjkuNiAxOS44cy0yLjIgMjUuNyA2LjkgMzQuOWw5NiA5NmMxMi41IDEyLjUgMzIuOCAxMi41IDQ1LjMgMHpNMTUwLjYgOS40Yy0xMi41LTEyLjUtMzIuOC0xMi41LTQ1LjMgMGwtOTYgOTZjLTkuMiA5LjItMTEuOSAyMi45LTYuOSAzNC45UzE5LjEgMTYwIDMyIDE2MGw2NCAwIDAgMzIwYzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0zMjAgNjQgMGMxMi45IDAgMjQuNi03LjggMjkuNi0xOS44czIuMi0yNS43LTYuOS0zNC45bC05Ni05NnoiXX0sT0xyPWdFZSx4RWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYmF0dGVyeS1lbXB0eSIsaWNvbjpbNjQwLDUxMixbImJhdHRlcnktMCJdLCJmMjQ0IiwiTTExMiAxNjBjLTguOCAwLTE2IDcuMi0xNiAxNmwwIDIyNGMwIDguOCA3LjIgMTYgMTYgMTZsNDE2IDBjOC44IDAgMTYtNy4yIDE2LTE2bDAtMjI0YzAtOC44LTcuMi0xNi0xNi0xNmwtNDE2IDB6TTMyIDE3NmMwLTQ0LjIgMzUuOC04MCA4MC04MGw0MTYgMGM0NC4yIDAgODAgMzUuOCA4MCA4MGwwIDQ4YzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgNjRjMCAxNy43LTE0LjMgMzItMzIgMzJsMCA0OGMwIDQ0LjItMzUuOCA4MC04MCA4MGwtNDE2IDBjLTQ0LjIgMC04MC0zNS44LTgwLTgwbDAtMjI0eiJdfSxSTHI9eEVlLEJMcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJrZXlib2FyZCIsaWNvbjpbNTc2LDUxMixbOWUzXSwiZjExYyIsIk02NCA2NEMyOC43IDY0IDAgOTIuNyAwIDEyOEwwIDM4NGMwIDM1LjMgMjguNyA2NCA2NCA2NGw0NDggMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTI1NmMwLTM1LjMtMjguNy02NC02NC02NEw2NCA2NHptMTYgNjRsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyYzAtOC44IDcuMi0xNiAxNi0xNnpNNjQgMjQwYzAtOC44IDcuMi0xNiAxNi0xNmwzMiAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDMyYzAgOC44LTcuMiAxNi0xNiAxNmwtMzIgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMzJ6TTE3NiAxMjhsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyYzAtOC44IDcuMi0xNiAxNi0xNnpNMTYwIDI0MGMwLTguOCA3LjItMTYgMTYtMTZsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyem0xNiA4MGwyMjQgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTIyNCAwYy04LjggMC0xNi03LjItMTYtMTZsMC0zMmMwLTguOCA3LjItMTYgMTYtMTZ6bTgwLTE3NmMwLTguOCA3LjItMTYgMTYtMTZsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyem0xNiA4MGwzMiAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDMyYzAgOC44LTcuMiAxNi0xNiAxNmwtMzIgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMzJjMC04LjggNy4yLTE2IDE2LTE2em04MC04MGMwLTguOCA3LjItMTYgMTYtMTZsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyem0xNiA4MGwzMiAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDMyYzAgOC44LTcuMiAxNi0xNiAxNmwtMzIgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMzJjMC04LjggNy4yLTE2IDE2LTE2em04MC04MGMwLTguOCA3LjItMTYgMTYtMTZsMzIgMGM4LjggMCAxNiA3LjIgMTYgMTZsMCAzMmMwIDguOC03LjIgMTYtMTYgMTZsLTMyIDBjLTguOCAwLTE2LTcuMi0xNi0xNmwwLTMyem0xNiA4MGwzMiAwYzguOCAwIDE2IDcuMiAxNiAxNmwwIDMyYzAgOC44LTcuMiAxNi0xNiAxNmwtMzIgMGMtOC44IDAtMTYtNy4yLTE2LTE2bDAtMzJjMC04LjggNy4yLTE2IDE2LTE2eiJdfSxITHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY29va2llIixpY29uOls1MTIsNTEyLFsxMjc4NTBdLCJmNTYzIiwiTTI0Ny4yIDE3Yy0yMi4xLTMuMS00NC42IC45LTY0LjQgMTEuNGwtNzQgMzkuNUM4OS4xIDc4LjQgNzMuMiA5NC45IDYzLjQgMTE1TDI2LjcgMTkwLjZjLTkuOCAyMC4xLTEzIDQyLjktOS4xIDY0LjlsMTQuNSA4Mi44YzMuOSAyMi4xIDE0LjYgNDIuMyAzMC43IDU3LjlsNjAuMyA1OC40YzE2LjEgMTUuNiAzNi42IDI1LjYgNTguNyAyOC43bDgzIDExLjdjMjIuMSAzLjEgNDQuNi0uOSA2NC40LTExLjRsNzQtMzkuNWMxOS43LTEwLjUgMzUuNi0yNyA0NS40LTQ3LjJsMzYuNy03NS41YzkuOC0yMC4xIDEzLTQyLjkgOS4xLTY0LjlsLTE0LjYtODIuOGMtMy45LTIyLjEtMTQuNi00Mi4zLTMwLjctNTcuOUwzODguOSA1Ny41Yy0xNi4xLTE1LjYtMzYuNi0yNS42LTU4LjctMjguN0wyNDcuMiAxN3pNMjA4IDE0NGEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6TTE0NCAzMzZhMzIgMzIgMCAxIDEgNjQgMCAzMiAzMiAwIDEgMSAtNjQgMHptMjI0LTY0YTMyIDMyIDAgMSAxIDAgNjQgMzIgMzIgMCAxIDEgMC02NHoiXX0scUxyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InN0b3B3YXRjaCIsaWNvbjpbNDQ4LDUxMixbOTIwMV0sImYyZjIiLCJNMTY4LjUgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwzMiAwIDAgMjUuM2MtMTA4IDExLjktMTkyIDEwMy41LTE5MiAyMTQuNyAwIDExOS4zIDk2LjcgMjE2IDIxNiAyMTZzMjE2LTk2LjcgMjE2LTIxNmMwLTM5LjgtMTAuOC03Ny4xLTI5LjYtMTA5LjJsMjguMi0yOC4yYzEyLjUtMTIuNSAxMi41LTMyLjggMC00NS4zcy0zMi44LTEyLjUtNDUuMyAwbC0yMy40IDIzLjRjLTMyLjktMzAuMi03NS4yLTUwLjMtMTIyLTU1LjVsMC0yNS4zIDMyIDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTExMiAwem04MCAxODRsMCAxMDRjMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjRsMC0xMDRjMC0xMy4zIDEwLjctMjQgMjQtMjRzMjQgMTAuNyAyNCAyNHoiXX0sakxyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImVqZWN0IixpY29uOls0NDgsNTEyLFs5MTY3XSwiZjA1MiIsIk0yMjQgMzJjMTMuNSAwIDI2LjMgNS42IDM1LjQgMTUuNmwxNzYgMTkyYzEyLjkgMTQgMTYuMiAzNC4zIDguNiA1MS44UzQxOSAzMjAgNDAwIDMyMEw0OCAzMjBjLTE5IDAtMzYuMy0xMS4yLTQzLjktMjguN3MtNC4zLTM3LjcgOC42LTUxLjhsMTc2LTE5MkMxOTcuNyAzNy42IDIxMC41IDMyIDIyNCAzMnpNMCA0MzJjMC0yNi41IDIxLjUtNDggNDgtNDhsMzUyIDBjMjYuNSAwIDQ4IDIxLjUgNDggNDhzLTIxLjUgNDgtNDggNDhMNDggNDgwYy0yNi41IDAtNDgtMjEuNS00OC00OHoiXX0sVkxyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNhdGVsbGl0ZS1kaXNoIixpY29uOls1MTIsNTEyLFsxMjgyMjVdLCJmN2MwIiwiTTIzMiAwYzE1NC42IDAgMjgwIDEyNS40IDI4MCAyODAgMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjRjMC0xMjguMS0xMDMuOS0yMzItMjMyLTIzMi0xMy4zIDAtMjQtMTAuNy0yNC0yNFMyMTguNyAwIDIzMiAwek0yMDggMTIwYzAtMTMuMyAxMC43LTI0IDI0LTI0IDEwMS42IDAgMTg0IDgyLjQgMTg0IDE4NCAwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNGMwLTc1LjEtNjAuOS0xMzYtMTM2LTEzNi0xMy4zIDAtMjQtMTAuNy0yNC0yNHpNMjYuNCAxNDIuN2M4LjgtMTcuOSAzMi40LTE5LjkgNDYuNS01LjhsMTI4LjUgMTI4LjUgMzItMzJjMTIuNS0xMi41IDMyLjgtMTIuNSA0NS4zIDBzMTIuNSAzMi44IDAgNDUuM2wtMzIgMzIgMTI4LjUgMTI4LjVjMTQuMSAxNC4xIDEyIDM3LjYtNS44IDQ2LjUtMzQuMiAxNi45LTcyLjYgMjYuNC0xMTMuMyAyNi40LTE0MS40IDAtMjU2LTExNC42LTI1Ni0yNTYgMC00MC43IDkuNS03OS4yIDI2LjQtMTEzLjN6Il19LGJFZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmYWNlLXJvbGxpbmctZXllcyIsaWNvbjpbNTEyLDUxMixbMTI4NTgwLCJtZWgtcm9sbGluZy1leWVzIl0sImY1YTUiLCJNMjU2IDUxMmEyNTYgMjU2IDAgMSAwIDAtNTEyIDI1NiAyNTYgMCAxIDAgMCA1MTJ6TTE5MiAzNTJsMTI4IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTEyOCAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0em0zMi0xMjhjMCAzNS4zLTI4LjcgNjQtNjQgNjRzLTY0LTI4LjctNjQtNjRjMC0yNiAxNS41LTQ4LjQgMzcuOC01OC40LTMuNyA1LjItNS44IDExLjYtNS44IDE4LjQgMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmMwLTYuOS0yLjItMTMuMi01LjgtMTguNCAyMi4zIDEwIDM3LjggMzIuNCAzNy44IDU4LjR6bTEyOCA2NGMtMzUuMyAwLTY0LTI4LjctNjQtNjQgMC0yNiAxNS41LTQ4LjQgMzcuOC01OC40LTMuNyA1LjItNS44IDExLjYtNS44IDE4LjQgMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmMwLTYuOS0yLjItMTMuMi01LjgtMTguNCAyMi4zIDEwIDM3LjggMzIuNCAzNy44IDU4LjQgMCAzNS4zLTI4LjcgNjQtNjQgNjR6Il19LFVMcj1iRWUsdkVlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Imxpc3QtY2hlY2siLGljb246WzUxMiw1MTIsWyJ0YXNrcyJdLCJmMGFlIiwiTTEzMy44IDM2LjNjMTAuOSA3LjYgMTMuNSAyMi42IDUuOSAzMy40bC01NiA4MGMtNC4xIDUuOC0xMC41IDkuNS0xNy42IDEwLjFTNTIgMTU4IDQ3IDE1M0w3IDExM0MtMi4zIDEwMy42LTIuMyA4OC40IDcgNzlTMzEuNiA2OS43IDQxIDc5bDE5LjggMTkuOCAzOS42LTU2LjZjNy42LTEwLjkgMjIuNi0xMy41IDMzLjQtNS45em0wIDE2MGMxMC45IDcuNiAxMy41IDIyLjYgNS45IDMzLjRsLTU2IDgwYy00LjEgNS44LTEwLjUgOS41LTE3LjYgMTAuMVM1MiAzMTggNDcgMzEzTDcgMjczYy05LjQtOS40LTkuNC0yNC42IDAtMzMuOXMyNC42LTkuNCAzMy45IDBsMTkuOCAxOS44IDM5LjYtNTYuNmM3LjYtMTAuOSAyMi42LTEzLjUgMzMuNC01Ljl6TTIyNCA5NmMwLTE3LjcgMTQuMy0zMiAzMi0zMmwyMjQgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtMjI0IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyem0wIDE2MGMwLTE3LjcgMTQuMy0zMiAzMi0zMmwyMjQgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtMjI0IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyek0xNjAgNDE2YzAtMTcuNyAxNC4zLTMyIDMyLTMybDI4OCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC0yODggMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJ6TTY0IDM3NmE0MCA0MCAwIDEgMSAwIDgwIDQwIDQwIDAgMSAxIDAtODB6Il19LFdMcj12RWUsR0xyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNhY2steG1hcmsiLGljb246WzUxMiw1MTIsW10sImU1NmEiLCJNMzI4IDExMmwtMTQ0IDAtMzcuMy03NC41Yy0xLjgtMy42LTIuNy03LjYtMi43LTExLjYgMC0xNC4zIDExLjYtMjUuOSAyNS45LTI1LjlMMzQyLjEgMGMxNC4zIDAgMjUuOSAxMS42IDI1LjkgMjUuOSAwIDQtLjkgOC0yLjcgMTEuNkwzMjggMTEyek0xNjkuNiAxNjBsMTcyLjggMCA0OC43IDQwLjZDNDU3LjYgMjU2IDQ5NiAzMzggNDk2IDQyNC41IDQ5NiA0NzIuOCA0NTYuOCA1MTIgNDA4LjUgNTEybC0zMDUuMSAwQzU1LjIgNTEyIDE2IDQ3Mi44IDE2IDQyNC41IDE2IDMzOCA1NC40IDI1NiAxMjAuOSAyMDAuNkwxNjkuNiAxNjB6TTMyMy45IDI4NC4xYy05LjQtOS40LTI0LjYtOS40LTMzLjkgMGwtMzMuOSAzMy45LTMzLjktMzMuOWMtOS40LTkuNC0yNC42LTkuNC0zMy45IDBzLTkuNCAyNC42IDAgMzMuOWwzMy45IDMzLjktMzMuOSAzMy45Yy05LjQgOS40LTkuNCAyNC42IDAgMzMuOXMyNC42IDkuNCAzMy45IDBsMzMuOS0zMy45IDMzLjkgMzMuOWM5LjQgOS40IDI0LjYgOS40IDMzLjkgMHM5LjQtMjQuNiAwLTMzLjlsLTMzLjktMzMuOSAzMy45LTMzLjljOS40LTkuNCA5LjQtMjQuNiAwLTMzLjl6Il19LFlMcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJoYXNodGFnIixpY29uOls1MTIsNTEyLFs2MjA5OF0sIjIzIiwiTTIxNC43IC43YzE3LjMgMy43IDI4LjMgMjAuNyAyNC42IDM4bC0xOS4xIDg5LjMgMTI2LjUgMCAyMi0xMDIuN0MzNzIuNCA4IDM4OS40LTMgNDA2LjcgLjdzMjguMyAyMC43IDI0LjYgMzhMNDEyLjIgMTI4IDQ4MCAxMjhjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTgxLjYgMC0yNy40IDEyOCA2Ny44IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTgxLjYgMC0yMiAxMDIuN2MtMy43IDE3LjMtMjAuNyAyOC4zLTM4IDI0LjZzLTI4LjMtMjAuNy0yNC42LTM4bDE5LjEtODkuMy0xMjYuNSAwLTIyIDEwMi43Yy0zLjcgMTcuMy0yMC43IDI4LjMtMzggMjQuNnMtMjguMy0yMC43LTI0LjYtMzhMOTkuOCAzODQgMzIgMzg0Yy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDgxLjYgMCAyNy40LTEyOC02Ny44IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsODEuNiAwIDIyLTEwMi43QzE4MC40IDggMTk3LjQtMyAyMTQuNyAuN3pNMjA2LjQgMTkybC0yNy40IDEyOCAxMjYuNSAwIDI3LjQtMTI4LTEyNi41IDB6Il19LFpMcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0cmFpbiIsaWNvbjpbMzg0LDUxMixbMTI4NjQ2XSwiZjIzOCIsIk0wIDk2QzAgNDMgNDMgMCA5NiAwTDI4OCAwYzUzIDAgOTYgNDMgOTYgOTZsMCAyNTZjMCA0MC4xLTI0LjYgNzQuNS01OS41IDg4LjhsNTMuOSA2My43YzguNiAxMC4xIDcuMyAyNS4zLTIuOCAzMy44cy0yNS4zIDcuMy0zMy44LTIuOGwtNzQtODcuNS0xNTEuMyAwLTc0IDg3LjVjLTguNiAxMC4xLTIzLjcgMTEuNC0zMy44IDIuOHMtMTEuNC0yMy43LTIuOC0zMy44bDUzLjktNjMuN0MyNC42IDQyNi41IDAgMzkyLjEgMCAzNTJMMCA5NnptNjQgMzJsMCA5NmMwIDE3LjcgMTQuMyAzMiAzMiAzMmwxOTIgMGMxNy43IDAgMzItMTQuMyAzMi0zMmwwLTk2YzAtMTcuNy0xNC4zLTMyLTMyLTMyTDk2IDk2Yy0xNy43IDAtMzIgMTQuMy0zMiAzMnpNMTkyIDM4NGEzMiAzMiAwIDEgMCAwLTY0IDMyIDMyIDAgMSAwIDAgNjR6Il19LFhMcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJnYW1lcGFkIixpY29uOls2NDAsNTEyLFtdLCJmMTFiIiwiTTQ0OCA2NGMxMDYgMCAxOTIgODYgMTkyIDE5MlM1NTQgNDQ4IDQ0OCA0NDhsLTI1NiAwQzg2IDQ0OCAwIDM2MiAwIDI1NlM4NiA2NCAxOTIgNjRsMjU2IDB6TTE5MiAxNzZjLTEzLjMgMC0yNCAxMC43LTI0IDI0bDAgMzItMzIgMGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwzMiAwIDAgMzJjMCAxMy4zIDEwLjcgMjQgMjQgMjRzMjQtMTAuNyAyNC0yNGwwLTMyIDMyIDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTMyIDAgMC0zMmMwLTEzLjMtMTAuNy0yNC0yNC0yNHptMjQwIDk2YTMyIDMyIDAgMSAwIDAgNjQgMzIgMzIgMCAxIDAgMC02NHptNjQtOTZhMzIgMzIgMCAxIDAgMCA2NCAzMiAzMiAwIDEgMCAwLTY0eiJdfSx5RWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmlsZS1leHBvcnQiLGljb246WzU3Niw1MTIsWyJhcnJvdy1yaWdodC1mcm9tLWZpbGUiXSwiZjU2ZSIsIk05Ni41IDBjLTM1LjMgMC02NCAyOC43LTY0IDY0bDAgMzg0YzAgMzUuMyAyOC43IDY0IDY0IDY0bDI1NiAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtOTYgNzguMSAwLTMxIDMxYy05LjQgOS40LTkuNCAyNC42IDAgMzMuOXMyNC42IDkuNCAzMy45IDBsNzItNzJjOS40LTkuNCA5LjQtMjQuNiAwLTMzLjlsLTcyLTcyYy05LjQtOS40LTI0LjYtOS40LTMzLjkgMHMtOS40IDI0LjYgMCAzMy45bDMxIDMxLTc4LjEgMCAwLTEzMy41YzAtMTctNi43LTMzLjMtMTguNy00NS4zTDI5MS4yIDE4LjdDMjc5LjIgNi43IDI2MyAwIDI0NiAwTDk2LjUgMHpNMzU4IDE3NmwtOTMuNSAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNEwyNDAuNSA1OC41IDM1OCAxNzZ6TTIyNC41IDMyOGMwLTEzLjMgMTAuNy0yNCAyNC0yNGwxMDQgMCAwIDQ4LTEwNCAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHoiXX0sUUxyPXlFZSx3RWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmFjZS1ncmltYWNlIixpY29uOls1MTIsNTEyLFsxMjg1NTYsImdyaW1hY2UiXSwiZjU3ZiIsIk0yNTYgNTEyYTI1NiAyNTYgMCAxIDAgMC01MTIgMjU2IDI1NiAwIDEgMCAwIDUxMnpNNDAwIDM1MmMwIDI1LjItMTkuNCA0NS44LTQ0IDQ3LjhsMC05NS43YzI0LjYgMiA0NCAyMi43IDQ0IDQ3Ljh6TTI3NiAzMDRsNDAgMCAwIDk2LTQwIDAgMC05NnptLTgwIDk2bDAtOTYgNDAgMCAwIDk2LTQwIDB6bS00MC05NS44bDAgOTUuN2MtMjQuNi0yLTQ0LTIyLjctNDQtNDcuOHMxOS40LTQ1LjggNDQtNDcuOHpNMTQ0IDIwOGEzMiAzMiAwIDEgMSA2NCAwIDMyIDMyIDAgMSAxIC02NCAwem0xOTItMzJhMzIgMzIgMCAxIDEgMCA2NCAzMiAzMiAwIDEgMSAwLTY0eiJdfSxLTHI9d0VlLE1FZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0cmFpbi1zdWJ3YXkiLGljb246WzM4NCw1MTIsWyJzdWJ3YXkiXSwiZjIzOSIsIk0wIDk2QzAgNDMgNDMgMCA5NiAwTDI4OCAwYzUzIDAgOTYgNDMgOTYgOTZsMCAyNTZjMCA0MC4xLTI0LjYgNzQuNS01OS41IDg4LjhsNTMuOSA2My43YzguNiAxMC4xIDcuMyAyNS4zLTIuOCAzMy44cy0yNS4zIDcuMy0zMy44LTIuOGwtNzQtODcuNS0xNTEuMyAwLTc0IDg3LjVjLTguNiAxMC4xLTIzLjcgMTEuNC0zMy44IDIuOHMtMTEuNC0yMy43LTIuOC0zMy44bDUzLjktNjMuN0MyNC42IDQyNi41IDAgMzkyLjEgMCAzNTJMMCA5NnptNjQgMzJsMCA5NmMwIDE3LjcgMTQuMyAzMiAzMiAzMmw3MiAwIDAtMTYwLTcyIDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyek0yMTYgMjU2bDcyIDBjMTcuNyAwIDMyLTE0LjMgMzItMzJsMC05NmMwLTE3LjctMTQuMy0zMi0zMi0zMmwtNzIgMCAwIDE2MHpNOTYgMzg0YTMyIDMyIDAgMSAwIDAtNjQgMzIgMzIgMCAxIDAgMCA2NHptMjI0LTMyYTMyIDMyIDAgMSAwIC02NCAwIDMyIDMyIDAgMSAwIDY0IDB6Il19LEpMcj1NRWUsa0VlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNpcmNsZS1kb3QiLGljb246WzUxMiw1MTIsWzEyODI4MCwiZG90LWNpcmNsZSJdLCJmMTkyIiwiTTI1NiA1MTJhMjU2IDI1NiAwIDEgMCAwLTUxMiAyNTYgMjU2IDAgMSAwIDAgNTEyem0wLTM1MmE5NiA5NiAwIDEgMSAwIDE5MiA5NiA5NiAwIDEgMSAwLTE5MnoiXX0sZURyPWtFZSx0RHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToib2JqZWN0LWdyb3VwIixpY29uOls1NzYsNTEyLFtdLCJmMjQ3IiwiTTMyIDExOS40QzEyLjkgMTA4LjQgMCA4Ny43IDAgNjQgMCAyOC43IDI4LjcgMCA2NCAwIDg3LjcgMCAxMDguNCAxMi45IDExOS40IDMybDMzNy4xIDBjMTEuMS0xOS4xIDMxLjctMzIgNTUuNC0zMiAzNS4zIDAgNjQgMjguNyA2NCA2NCAwIDIzLjctMTIuOSA0NC40LTMyIDU1LjRsMCAyNzMuMWMxOS4xIDExLjEgMzIgMzEuNyAzMiA1NS40IDAgMzUuMy0yOC43IDY0LTY0IDY0LTIzLjcgMC00NC40LTEyLjktNTUuNC0zMmwtMzM3LjEgMGMtMTEuMSAxOS4xLTMxLjcgMzItNTUuNCAzMi0zNS4zIDAtNjQtMjguNy02NC02NCAwLTIzLjcgMTIuOS00NC40IDMyLTU1LjRsMC0yNzMuMXptNDQ4IDBjLTkuNy01LjYtMTcuOC0xMy43LTIzLjQtMjMuNEwxMTkuNCA5NmMtNS42IDkuNy0xMy43IDE3LjgtMjMuNCAyMy40bDAgMjczLjFjOS43IDUuNiAxNy44IDEzLjcgMjMuNCAyMy40bDMzNy4xIDBjNS42LTkuNyAxMy43LTE3LjggMjMuNC0yMy40bDAtMjczLjF6TTE0NCAxNzZjMC0xNy43IDE0LjMtMzIgMzItMzJsMTEyIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCA2NGMwIDE3LjctMTQuMyAzMi0zMiAzMmwtMTEyIDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtNjR6TTI1NiAzMjBsMzIgMGM0NC4yIDAgODAtMzUuOCA4MC04MGwzMiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgNjRjMCAxNy43LTE0LjMgMzItMzIgMzJsLTExMiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTE2eiJdfSxyRHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic2hpcCIsaWNvbjpbNjQwLDUxMixbMTI4Njc0XSwiZjIxYSIsIk0yNzIgMGMtMjYuNSAwLTQ4IDIxLjUtNDggNDhsMCAxNi0xNiAwYy00NC4yIDAtODAgMzUuOC04MCA4MGwwIDEwOC44LTIxLjYgOC42Yy0xNC44IDUuOS0yMi41IDIyLjQtMTcuNCAzNy41IDEwLjQgMzEuMyAyNi44IDU5LjMgNDcuNyA4My4xIDIwLjEtOS4yIDQxLjctMTMuOSA2My4zLTE0IDMzLjEtLjIgNjYuMyAxMC4yIDk0LjQgMzEuNGwxLjYgMS4yIDAtMjE1LTEwNCA0MS42IDAtODMuMmMwLTguOCA3LjItMTYgMTYtMTZsMjI0IDBjOC44IDAgMTYgNy4yIDE2IDE2bDAgODMuMi0xMDQtNDEuNiAwIDIxNSAxLjYtMS4yYzI3LjUtMjAuNyA1OS45LTMxLjIgOTIuNC0zMS40IDIyLjMtLjEgNDQuNiA0LjUgNjUuMyAxNCAyMC45LTIzLjcgMzcuMy01MS44IDQ3LjctODMuMSA1LTE1LjItMi42LTMxLjYtMTcuNC0zNy41TDUxMiAyNTIuOCA1MTIgMTQ0YzAtNDQuMi0zNS44LTgwLTgwLTgwbC0xNiAwIDAtMTZjMC0yNi41LTIxLjUtNDgtNDgtNDhMMjcyIDB6TTQwMy40IDQ3Ni4xYzIxLjMtMTYuMSA0OS45LTE2LjEgNzEuMiAwIDE5IDE0LjQgNDEuOSAyOC4yIDY3LjIgMzMuMyAyNi41IDUuNCA1NC4zIC44IDgwLjctMTkuMSAxMC42LTggMTIuNy0yMyA0LjctMzMuNnMtMjMtMTIuNy0zMy42LTQuN2MtMTQuOSAxMS4yLTI4LjYgMTMuMS00Mi4zIDEwLjMtMTQuOS0zLTMwLjktMTEuOS00Ny44LTI0LjYtMzguNC0yOS05MC41LTI5LTEyOSAwLTI0IDE4LjEtNDAuNyAyNi4zLTU0LjUgMjYuM3MtMzAuNS04LjItNTQuNS0yNi4zYy0zOC40LTI5LTkwLjUtMjktMTI5IDAtMjEuNiAxNi4zLTQxLjMgMjUuOC01OC45IDI1LjctOS42LS4xLTE5LjktMy0zMS4yLTExLjUtMTAuNi04LTI1LjYtNS45LTMzLjYgNC43UzcgNDgyLjMgMTcuNiA0OTAuM2MxOS4xIDE0LjQgMzkuNCAyMSA1OS44IDIxLjEgMzMuOSAuMiA2NC4zLTE3LjQgODguMS0zNS4zIDIxLjMtMTYuMSA0OS45LTE2LjEgNzEuMiAwIDI0LjIgMTguMyA1Mi4zIDM1LjkgODMuNCAzNS45czU5LjEtMTcuNyA4My40LTM1Ljl6Il19LGFEcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJjIixpY29uOlszODQsNTEyLFs5OV0sIjQzIiwiTTMyOS4xIDE0Mi45Yy02Mi41LTYyLjUtMTU1LjgtNjIuNS0yMTguMyAwcy02Mi41IDE2My44IDAgMjI2LjMgMTU1LjggNjIuNSAyMTguMyAwYzEyLjUtMTIuNSAzMi44LTEyLjUgNDUuMyAwczEyLjUgMzIuOCAwIDQ1LjNjLTg3LjUgODcuNS0yMjEuMyA4Ny41LTMwOC44IDBzLTg3LjUtMjI5LjMgMC0zMTYuOCAyMjEuMy04Ny41IDMwOC44IDBjMTIuNSAxMi41IDEyLjUgMzIuOCAwIDQ1LjNzLTMyLjggMTIuNS00NS4zIDB6Il19LFNFZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzcXVhcmUtcGhvbmUiLGljb246WzQ0OCw1MTIsWyJwaG9uZS1zcXVhcmUiXSwiZjA5OCIsIk02NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgNDE2YzAgMzUuMyAyOC43IDY0IDY0IDY0bDMyMCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMzIwYzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDMyem04OCA5Ni43YzkuOC0yLjcgMjAuMSAyLjQgMjQgMTEuOGwyMC4zIDQ4LjdjMy40IDguMyAxLjEgMTcuOC01LjkgMjMuNWwtMjIuMSAxOGMxNi4yIDM1LjggNDQuNSA2NSA3OS42IDgyLjRsMTkuMy0yMy42YzUuNy02LjkgMTUuMi05LjMgMjMuNS01LjlsNDguNyAyMC4zYzkuNCAzLjkgMTQuNCAxNC4yIDExLjggMjRsLS44IDIuOGMtOC44IDMyLjMtNDAuMSA1OS45LTc4LjIgNTEuOC04Ny41LTE4LjUtMTU2LjMtODcuNC0xNzQuOS0xNzQuOS04LjEtMzguMSAxOS41LTY5LjQgNTEuOC03OC4ybDIuOC0uOHoiXX0saURyPVNFZSxvRHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicnVsZXItY29tYmluZWQiLGljb246WzQ0OCw1MTIsW10sImY1NDYiLCJNMSA0NDEuN0M1LjUgNDYzLjUgMjQuOCA0ODAgNDggNDgwbDM1MiAwYzI2LjUgMCA0OC0yMS41IDQ4LTQ4bDAtOTZjMC0yNi41LTIxLjUtNDgtNDgtNDhsLTQ4IDAgMCA3MmMwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNGwwLTcyLTY0IDAgMCA3MmMwIDEzLjMtMTAuNyAyNC0yNCAyNHMtMjQtMTAuNy0yNC0yNGwwLTcyLTcyIDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjRsNzIgMCAwLTY0LTcyIDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjRsNzIgMCAwLTQ4YzAtMjYuNS0yMS41LTQ4LTQ4LTQ4TDQ4IDMyQzIxLjUgMzIgMCA1My41IDAgODBMMCA0MzJjMCAzLjMgLjMgNi42IDEgOS43eiJdfSxHMmU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYXJyb3dzLXJvdGF0ZSIsaWNvbjpbNTEyLDUxMixbMTI4NDcyLCJyZWZyZXNoIiwic3luYyJdLCJmMDIxIiwiTTY1LjkgMjI4LjVjMTMuMy05MyA5My40LTE2NC41IDE5MC4xLTE2NC41IDUzIDAgMTAxIDIxLjUgMTM1LjggNTYuMiAuMiAuMiAuNCAuNCAuNiAuNmw3LjYgNy4yLTQ3LjkgMGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmwxMjggMGMxNy43IDAgMzItMTQuMyAzMi0zMmwwLTEyOGMwLTE3LjctMTQuMy0zMi0zMi0zMnMtMzIgMTQuMy0zMiAzMmwwIDUzLjQtMTEuMy0xMC43QzM5MC41IDI4LjYgMzI2LjUgMCAyNTYgMCAxMjcgMCAyMC4zIDk1LjQgMi42IDIxOS41IC4xIDIzNyAxMi4yIDI1My4yIDI5LjcgMjU1LjdzMzMuNy05LjcgMzYuMi0yNy4xem00NDMuNSA2NGMyLjUtMTcuNS05LjctMzMuNy0yNy4xLTM2LjJzLTMzLjcgOS43LTM2LjIgMjcuMWMtMTMuMyA5My05My40IDE2NC41LTE5MC4xIDE2NC41LTUzIDAtMTAxLTIxLjUtMTM1LjgtNTYuMi0uMi0uMi0uNC0uNC0uNi0uNmwtNy42LTcuMiA0Ny45IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJMMzIgMzIwYy04LjUgMC0xNi43IDMuNC0yMi43IDkuNVMtLjEgMzQzLjcgMCAzNTIuM2wxIDEyN2MuMSAxNy43IDE0LjYgMzEuOSAzMi4zIDMxLjdTNjUuMiA0OTYuNCA2NSA0NzguN2wtLjQtNTEuNSAxMC43IDEwLjFjNDYuMyA0Ni4xIDExMC4yIDc0LjcgMTgwLjcgNzQuNyAxMjkgMCAyMzUuNy05NS40IDI1My40LTIxOS41eiJdfSxuRHI9RzJlLHNEcj1HMmUsekVlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InBlcnNvbi1kcmVzcyIsaWNvbjpbMzg0LDUxMixbImZlbWFsZSJdLCJmMTgyIiwiTTEzNiAyNGE1NiA1NiAwIDEgMSAxMTIgMCA1NiA1NiAwIDEgMSAtMTEyIDB6TTExMiAzODRsLTI1LjggMGMtMTAuOSAwLTE4LjYtMTAuNy0xNS4yLTIxLjFsNDMtMTI5LTQ4LjMgNjUuMWMtMTAuNSAxNC4yLTMwLjYgMTcuMi00NC44IDYuNnMtMTcuMi0zMC42LTYuNi00NC44bDcwLjUtOTVDMTEwIDEzMiAxNDkuNyAxMTIgMTkyIDExMnM4MiAyMCAxMDcuMiA1My45bDcwLjUgOTVjMTAuNSAxNC4yIDcuNiAzNC4yLTYuNiA0NC44cy0zNC4yIDcuNi00NC44LTYuNkwyNzAgMjM0IDMxMyAzNjIuOWMzLjUgMTAuNC00LjMgMjEuMS0xNS4yIDIxLjFsLTI1LjggMCAwIDEyOGMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTEyOC0zMiAwIDAgMTI4YzAgMTcuNy0xNC4zIDMyLTMyIDMycy0zMi0xNC4zLTMyLTMybDAtMTI4eiJdfSxsRHI9ekVlLGNEcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJib29rLW9wZW4iLGljb246WzUxMiw1MTIsWzEyODIxNCwxMjgzNjZdLCJmNTE4IiwiTTI1NiAxNDEuM2wwIDMwOS4zIC41LS4yQzMxMS4xIDQyNy43IDM2OS43IDQxNiA0MjguOCA0MTZsMTkuMiAwIDAtMzIwLTE5LjIgMGMtNDIuMiAwLTg0LjEgOC40LTEyMy4xIDI0LjYtMTYuOCA3LTMzLjQgMTMuOS00OS43IDIwLjd6TTIzMC45IDYxLjVMMjU2IDcyIDI4MS4xIDYxLjVDMzI3LjkgNDIgMzc4LjEgMzIgNDI4LjggMzJMNDY0IDMyYzI2LjUgMCA0OCAyMS41IDQ4IDQ4bDAgMzUyYzAgMjYuNS0yMS41IDQ4LTQ4IDQ4bC0zNS4yIDBjLTUwLjcgMC0xMDAuOSAxMC0xNDcuNyAyOS41bC0xMi44IDUuM2MtNy45IDMuMy0xNi43IDMuMy0yNC42IDBsLTEyLjgtNS4zQzE4NC4xIDQ5MCAxMzMuOSA0ODAgODMuMiA0ODBMNDggNDgwYy0yNi41IDAtNDgtMjEuNS00OC00OEwwIDgwQzAgNTMuNSAyMS41IDMyIDQ4IDMybDM1LjIgMGM1MC43IDAgMTAwLjkgMTAgMTQ3LjcgMjkuNXoiXX0sZERyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZvbGRlci10cmVlIixpY29uOls1NzYsNTEyLFtdLCJmODAyIiwiTTQ4IDI0QzQ4IDEwLjcgMzcuMyAwIDI0IDBTMCAxMC43IDAgMjRMMCAzOTJjMCAzMC45IDI1LjEgNTYgNTYgNTZsMTg0IDAgMC00OC0xODQgMGMtNC40IDAtOC0zLjYtOC04bDAtMjMyIDE5MiAwIDAtNDgtMTkyIDAgMC04OHpNMzM2IDIyNGwxOTIgMGMyNi41IDAgNDgtMjEuNSA0OC00OGwwLTk2YzAtMjYuNS0yMS41LTQ4LTQ4LTQ4bC04Mi43IDBjLTguNSAwLTE2LjYtMy40LTIyLjYtOS40bC04LjYtOC42Yy05LTktMjEuMi0xNC4xLTMzLjktMTQuMUwzMzYgMGMtMjYuNSAwLTQ4IDIxLjUtNDggNDhsMCAxMjhjMCAyNi41IDIxLjUgNDggNDggNDh6bTAgMjg4bDE5MiAwYzI2LjUgMCA0OC0yMS41IDQ4LTQ4bDAtOTZjMC0yNi41LTIxLjUtNDgtNDgtNDhsLTgyLjcgMGMtOC41IDAtMTYuNi0zLjQtMjIuNi05LjRsLTguNi04LjZjLTktOS0yMS4yLTE0LjEtMzMuOS0xNC4xTDMzNiAyODhjLTI2LjUgMC00OCAyMS41LTQ4IDQ4bDAgMTI4YzAgMjYuNSAyMS41IDQ4IDQ4IDQ4eiJdfSx1RHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidmlyZ28iLGljb246WzY0MCw1MTIsW10sImU4NTAiLCJNMzY4IDMyYzYxLjkgMCAxMTIgNTAuMSAxMTIgMTEybDAgMjYuOGMxNC41LTYuOSAzMC44LTEwLjggNDgtMTAuOCA2MS45IDAgMTEyIDUwLjEgMTEyIDExMlM1ODkuOSAzODQgNTI4IDM4NGwtNDggMCAwIDMyYzAgMTYuNiAxMi42IDMwLjIgMjguNyAzMS44bDYuNiAuM2MxNi4xIDEuNiAyOC43IDE1LjMgMjguNyAzMS44IDAgMTcuNy0xNC4zIDMyLTMyIDMyLTUzIDAtOTYtNDMtOTYtOTZsMC0zMi0xNiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDE2IDAgMC0xNzZjMC0yNi41LTIxLjUtNDgtNDgtNDhzLTQ4IDIxLjUtNDggNDhsMCAzMDRjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC0zMDRjMC0yNi41LTIxLjUtNDgtNDgtNDhzLTQ4IDIxLjUtNDggNDhsMCAzMDRjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC0zMjBjMC0xNi42LTEyLjYtMzAuMi0yOC43LTMxLjhsLTYuNi0uM0M0NC42IDk0LjIgMzIgODAuNiAzMiA2NCAzMiA0Ni4zIDQ2LjMgMzIgNjQgMzIgOTEgMzIgMTE1LjMgNDMuMSAxMzIuNyA2MSAxNTIuNiA0MyAxNzkgMzIgMjA4IDMyIDIzOS4zIDMyIDI2Ny43IDQ0LjkgMjg4IDY1LjcgMzA4LjMgNDQuOSAzMzYuNiAzMiAzNjggMzJ6TTUyOCAyMjRjLTI2LjUgMC00OCAyMS41LTQ4IDQ4bDAgNDggNDggMGMyNi41IDAgNDgtMjEuNSA0OC00OHMtMjEuNS00OC00OC00OHoiXX0sQ0VlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImJveC1hcmNoaXZlIixpY29uOls1MTIsNTEyLFsiYXJjaGl2ZSJdLCJmMTg3IiwiTTAgNjRDMCA0Ni4zIDE0LjMgMzIgMzIgMzJsNDQ4IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJsMCAzMmMwIDE3LjctMTQuMyAzMi0zMiAzMkwzMiAxMjhDMTQuMyAxMjggMCAxMTMuNyAwIDk2TDAgNjR6TTMyIDE3Nmw0NDggMCAwIDI0MGMwIDM1LjMtMjguNyA2NC02NCA2NEw5NiA0ODBjLTM1LjMgMC02NC0yOC43LTY0LTY0bDAtMjQwem0xNTIgNjRjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsMTQ0IDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTE0NCAweiJdfSxmRHI9Q0VlLHBEcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0ZW50LWFycm93LWRvd24tdG8tbGluZSIsaWNvbjpbNTc2LDUxMixbXSwiZTU3ZSIsIk0xODUgMTIxYzkuNC05LjQgOS40LTI0LjYgMC0zMy45cy0yNC42LTkuNC0zMy45IDBsLTMxIDMxIDAtMTAyLjFDMTIwIDIuNyAxMDkuMy04IDk2LThTNzIgMi43IDcyIDE2bDAgMTAyLjEtMzEtMzFDMzEuNiA3Ny43IDE2LjQgNzcuNyA3IDg3Uy0yLjMgMTExLjYgNyAxMjFsNzIgNzJjOS40IDkuNCAyNC42IDkuNCAzMy45IDBsNzItNzJ6TTE1NS44IDI2MC42TDEzMi4xIDQ0OCAzMiA0NDhjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsNTEyIDBjMTcuNyAwIDMyLTE0LjMgMzItMzIgMC0yLjgtLjQtNS41LTEtOEw1NDguMiAyNjAuN2MtMS4yLTkuNy02LjktMTguNC0xNS4zLTIzLjRMMzY3LjQgMTM3LjljLTEwLjItNi4xLTIyLjktNi4xLTMzLjEgLjFMMTcwLjkgMjM3LjNjLTguMyA1LjEtMTMuOSAxMy43LTE1LjEgMjMuM3pNNDQ4IDQ0OGwtOTcuMSAwIDAtMTQ5LjRjMC01LjkgNC43LTEwLjYgMTAuNi0xMC42IDQgMCA3LjcgMi4zIDkuNSA1LjlMNDQ4IDQ0OHoiXX0saERyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InFyY29kZSIsaWNvbjpbNDQ4LDUxMixbXSwiZjAyOSIsIk02NCAxNjBsNjQgMCAwLTY0LTY0IDAgMCA2NHpNMCA4MEMwIDUzLjUgMjEuNSAzMiA0OCAzMmw5NiAwYzI2LjUgMCA0OCAyMS41IDQ4IDQ4bDAgOTZjMCAyNi41LTIxLjUgNDgtNDggNDhsLTk2IDBjLTI2LjUgMC00OC0yMS41LTQ4LTQ4TDAgODB6TTY0IDQxNmw2NCAwIDAtNjQtNjQgMCAwIDY0ek0wIDMzNmMwLTI2LjUgMjEuNS00OCA0OC00OGw5NiAwYzI2LjUgMCA0OCAyMS41IDQ4IDQ4bDAgOTZjMCAyNi41LTIxLjUgNDgtNDggNDhsLTk2IDBjLTI2LjUgMC00OC0yMS41LTQ4LTQ4bDAtOTZ6TTMyMCA5NmwwIDY0IDY0IDAgMC02NC02NCAwek0zMDQgMzJsOTYgMGMyNi41IDAgNDggMjEuNSA0OCA0OGwwIDk2YzAgMjYuNS0yMS41IDQ4LTQ4IDQ4bC05NiAwYy0yNi41IDAtNDgtMjEuNS00OC00OGwwLTk2YzAtMjYuNSAyMS41LTQ4IDQ4LTQ4ek0yODggMzUyYTMyIDMyIDAgMSAxIDAtNjQgMzIgMzIgMCAxIDEgMCA2NHptMCA2NGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMi0zMi0xNC4zLTMyLTMyIDE0LjMtMzIgMzItMzJ6bTk2IDMyYzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzItMTQuMyAzMi0zMiAzMi0zMi0xNC4zLTMyLTMyem0zMi05NmEzMiAzMiAwIDEgMSAwLTY0IDMyIDMyIDAgMSAxIDAgNjR6bS0zMiAzMmEzMiAzMiAwIDEgMSAtNjQgMCAzMiAzMiAwIDEgMSA2NCAweiJdfSxtRHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZHJhZ29uIixpY29uOls2NDAsNTEyLFsxMjgwMDldLCJmNmQ1IiwiTTM1MiAxMjQuNWwtNTEuOS0xM2MtNi41LTEuNi0xMS4zLTcuMS0xMi0xMy44czIuOC0xMy4xIDguNy0xNi4xbDQwLjgtMjAuNC00My4zLTMyLjVjLTUuNS00LjEtNy44LTExLjMtNS42LTE3LjlTMjk3LjEgMCAzMDQgMEw0NjQgMGMzMC4yIDAgNTguNyAxNC4yIDc2LjggMzguNGw1Ny42IDc2LjhjNi4yIDguMyA5LjYgMTguNCA5LjYgMjguOCAwIDI2LjUtMjEuNSA0OC00OCA0OGwtMjEuNSAwYy0xNyAwLTMzLjMtNi43LTQ1LjMtMTguN2wtMTMuMy0xMy4zLTMyIDAgMCAyMS41YzAgMjQuOCAxMi44IDQ3LjkgMzMuOCA2MS4xbDEwNi42IDY2LjZjMzIuMSAyMC4xIDUxLjYgNTUuMiA1MS42IDkzLjEgMCA2MC42LTQ5LjEgMTA5LjgtMTA5LjggMTA5LjhMMzIuMyA1MTJjLTMuMyAwLTYuNi0uNC05LjYtMS40LTkuMi0yLjgtMTYuNy05LjYtMjAuNC0xOC42LTEuMy0zLjMtMi4yLTYuOS0yLjMtMTAuNy0uMi0zLjcgLjMtNy4zIDEuMy0xMC43IDIuOC05LjIgOS42LTE2LjcgMTguNi0yMC40IDMtMS4yIDYuMi0yIDkuNS0yLjJMNDMzLjMgNDEyYzguMy0uNyAxNC43LTcuNyAxNC43LTE2LjEgMC00LjMtMS43LTguNC00LjctMTEuNGwtNDQuNC00NC40Yy0zMC0zMC00Ni45LTcwLjctNDYuOS0xMTMuMWwwLTEwMi41ek01MTIgNzIuM2MwLS4xIDAtLjIgMC0uM3MwLS4yIDAtLjNsMCAuNnptLTEuMyA3LjRMNDY0LjMgNjguMWMtLjIgMS4zLS4zIDIuNi0uMyAzLjkgMCAxMy4zIDEwLjcgMjQgMjQgMjQgMTAuNiAwIDE5LjUtNi44IDIyLjctMTYuM3pNMTMwLjkgMTE2LjVjMTYuMy0xNC41IDQwLjQtMTYuMiA1OC41LTQuMWwxMzAuNiA4NyAwIDI3LjVjMCAzMi44IDguNCA2NC44IDI0IDkzbC0yMzIgMGMtNi43IDAtMTIuNy00LjItMTUtMTAuNHMtLjUtMTMuMyA0LjYtMTcuN0wxNzEgMjMyLjMgMTguNCAyNTUuOGMtNyAxLjEtMTMuOS0yLjYtMTYuOS05Uy4xIDIzMi44IDUuNCAyMjhMMTMwLjkgMTE2LjV6Il19LF9FZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJob3VyZ2xhc3MtZW5kIixpY29uOlszODQsNTEyLFs4OTg3LCJob3VyZ2xhc3MtMyJdLCJmMjUzIiwiTTMyIDBDMTQuMyAwIDAgMTQuMyAwIDMyUzE0LjMgNjQgMzIgNjRsMCAxMWMwIDQyLjQgMTYuOSA4My4xIDQ2LjkgMTEzLjFsNjcuOSA2Ny45LTY3LjkgNjcuOUM0OC45IDM1My45IDMyIDM5NC42IDMyIDQzN2wwIDExYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDMyMCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybDAtMTFjMC00Mi40LTE2LjktODMuMS00Ni45LTExMy4xbC02Ny45LTY3LjkgNjcuOS02Ny45YzMwLTMwIDQ2LjktNzAuNyA0Ni45LTExMy4xbDAtMTFjMTcuNyAwIDMyLTE0LjMgMzItMzJTMzY5LjcgMCAzNTIgMEwzMiAwek05NiA3NWwwLTExIDE5MiAwIDAgMTFjMCAyNS41LTEwLjEgNDkuOS0yOC4xIDY3LjlsLTY3LjkgNjcuOS02Ny45LTY3LjlDMTA2LjEgMTI0LjkgOTYgMTAwLjQgOTYgNzV6Il19LGdEcj1fRWUsTzk9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZ3JpcCIsaWNvbjpbNTEyLDUxMixbNTgxMTksImdyaWQtaG9yaXpvbnRhbCIsImdyaXAtaG9yaXpvbnRhbCJdLCJmNThkIiwiTTg4IDk2YzIyLjEgMCA0MCAxNy45IDQwIDQwbDAgNDhjMCAyMi4xLTE3LjkgNDAtNDAgNDBsLTQ4IDBjLTIyLjEgMC00MC0xNy45LTQwLTQwbDAtNDhjMC0yMi4xIDE3LjktNDAgNDAtNDBsNDggMHpNMjgwIDIyNGwtNDggMGMtMjIuMSAwLTQwLTE3LjktNDAtNDBsMC00OGMwLTIyLjEgMTcuOS00MCA0MC00MGw0OCAwYzIyLjEgMCA0MCAxNy45IDQwIDQwbDAgNDhjMCAyMi4xLTE3LjkgNDAtNDAgNDB6bTE5MiAwbC00OCAwYy0yMi4xIDAtNDAtMTcuOS00MC00MGwwLTQ4YzAtMjIuMSAxNy45LTQwIDQwLTQwbDQ4IDBjMjIuMSAwIDQwIDE3LjkgNDAgNDBsMCA0OGMwIDIyLjEtMTcuOSA0MC00MCA0MHptMCAxOTJsLTQ4IDBjLTIyLjEgMC00MC0xNy45LTQwLTQwbDAtNDhjMC0yMi4xIDE3LjktNDAgNDAtNDBsNDggMGMyMi4xIDAgNDAgMTcuOSA0MCA0MGwwIDQ4YzAgMjIuMS0xNy45IDQwLTQwIDQwek0yODAgMjg4YzIyLjEgMCA0MCAxNy45IDQwIDQwbDAgNDhjMCAyMi4xLTE3LjkgNDAtNDAgNDBsLTQ4IDBjLTIyLjEgMC00MC0xNy45LTQwLTQwbDAtNDhjMC0yMi4xIDE3LjktNDAgNDAtNDBsNDggMHpNODggNDE2bC00OCAwYy0yMi4xIDAtNDAtMTcuOS00MC00MGwwLTQ4YzAtMjIuMSAxNy45LTQwIDQwLTQwbDQ4IDBjMjIuMSAwIDQwIDE3LjkgNDAgNDBsMCA0OGMwIDIyLjEtMTcuOSA0MC00MCA0MHoiXX0seERyPU85LGJEcj1POSxURWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYm9yZGVyLXRvcC1sZWZ0IixpY29uOls0NDgsNTEyLFsiYm9yZGVyLXN0eWxlIl0sImY4NTMiLCJNMCA0NDhjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTM1MiAzNTIgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMkw2NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2TDAgNDQ4em0xMjggMGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMyLTE0LjMtMzItMzItMzItMzIgMTQuMy0zMiAzMnptMTI4IDBjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMi0xNC4zLTMyLTMyLTMyLTMyIDE0LjMtMzIgMzJ6bTE2MCAzMmMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMi0zMiAxNC4zLTMyIDMyIDE0LjMgMzIgMzIgMzJ6TTM4NCAxOTJhMzIgMzIgMCAxIDAgNjQgMCAzMiAzMiAwIDEgMCAtNjQgMHptMzIgMTYwYTMyIDMyIDAgMSAwIDAtNjQgMzIgMzIgMCAxIDAgMCA2NHoiXX0sdkRyPVRFZSxMRWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibGlzdC11bCIsaWNvbjpbNTEyLDUxMixbImxpc3QtZG90cyJdLCJmMGNhIiwiTTQ4IDE0NGE0OCA0OCAwIDEgMCAwLTk2IDQ4IDQ4IDAgMSAwIDAgOTZ6TTE5MiA2NGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmwyODggMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMkwxOTIgNjR6bTAgMTYwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDI4OCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC0yODggMHptMCAxNjBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsMjg4IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTI4OCAwek00OCA0NjRhNDggNDggMCAxIDAgMC05NiA0OCA0OCAwIDEgMCAwIDk2ek05NiAyNTZhNDggNDggMCAxIDAgLTk2IDAgNDggNDggMCAxIDAgOTYgMHoiXX0seURyPUxFZSx3RHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGVvcGxlLXJvYmJlcnkiLGljb246WzU3Niw1MTIsW10sImU1MzYiLCJNNDg4LjIgNTkuMUM0NzguMSA5OS42IDQ0MS43IDEyOCA0MDAgMTI4cy03OC4xLTI4LjQtODguMi02OC45TDMwMyAyNC4yQzI5OC44IDcuMSAyODEuNC0zLjMgMjY0LjIgMVMyMzYuNyAyMi42IDI0MSAzOS44bDguNyAzNC45YzExIDQ0IDQwLjIgNzkuNiA3OC4zIDk5LjZMMzI4IDQ4MGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMTI4IDE2IDAgMCAxMjhjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTMwNS43YzM4LjEtMjAgNjcuMy01NS42IDc4LjMtOTkuNkw1NTkgMzkuOGM0LjMtMTcuMS02LjEtMzQuNS0yMy4zLTM4LjhTNTAxLjIgNy4xIDQ5NyAyNC4ybC04LjcgMzQuOXpNNDAwIDk2YTQ4IDQ4IDAgMSAwIDAtOTYgNDggNDggMCAxIDAgMCA5NnpNODAgOTZhNDggNDggMCAxIDAgMC05NiA0OCA0OCAwIDEgMCAwIDk2em0tOCAzMmMtMzUuMyAwLTY0IDI4LjctNjQgNjRsMCA5NiAwIC42IDAgMTkxLjRjMCAxNy43IDE0LjMgMzIgMzIgMzJzMzItMTQuMyAzMi0zMmwwLTEyOCAxNiAwIDAgMTI4YzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0yMjcuMyAxMyAyMC41YzUuOSA5LjIgMTYuMSAxNC45IDI3IDE0LjlsNDggMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtMzAuNCAwLTM3LjQtNTguOUMxNTcuNiAxNDIgMTMyLjEgMTI4IDEwNC43IDEyOEw3MiAxMjh6Il19LE1Ecj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtb2JpbGUtYnV0dG9uIixpY29uOlszODQsNTEyLFtdLCJmMTBiIiwiTTgwIDBDNDQuNyAwIDE2IDI4LjcgMTYgNjRsMCAzODRjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMjI0IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0zODRjMC0zNS4zLTI4LjctNjQtNjQtNjRMODAgMHpNMTkyIDQ2NGMtMTcuNyAwLTMyLTE0LjMtMzItMzJzMTQuMy0zMiAzMi0zMiAzMiAxNC4zIDMyIDMyLTE0LjMgMzItMzIgMzJ6Il19LFkyZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJhcnJvdy1kb3duLWEteiIsaWNvbjpbNTEyLDUxMixbInNvcnQtYWxwaGEtYXNjIiwic29ydC1hbHBoYS1kb3duIl0sImYxNWQiLCJNMjMwLjYgMzkwLjZsLTgwIDgwYy0xMi41IDEyLjUtMzIuOCAxMi41LTQ1LjMgMGwtODAtODBjLTEyLjUtMTIuNS0xMi41LTMyLjggMC00NS4zczMyLjgtMTIuNSA0NS4zIDBMOTYgMzcwLjcgOTYgNjRjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDMwNi43IDI1LjQtMjUuNGMxMi41LTEyLjUgMzIuOC0xMi41IDQ1LjMgMHMxMi41IDMyLjggMCA0NS4zem0xODItMzQwLjljNTAuNyAxMDEuMyA3Ny4zIDE1NC43IDgwIDE2MCA3LjkgMTUuOCAxLjUgMzUtMTQuMyA0Mi45cy0zNSAxLjUtNDIuOS0xNC4zbC03LjItMTQuMy04OC40IDAtNy4yIDE0LjNjLTcuOSAxNS44LTI3LjEgMjIuMi00Mi45IDE0LjNzLTIyLjItMjcuMS0xNC4zLTQyLjljMi43LTUuMyAyOS4zLTU4LjcgODAtMTYwIDUuNC0xMC44IDE2LjUtMTcuNyAyOC42LTE3LjdzMjMuMiA2LjggMjguNiAxNy43ek0zODQgMTM1LjZsLTIwLjIgNDAuNCA0MC40IDAtMjAuMi00MC40ek0yODggMzIwYzAtMTcuNyAxNC4zLTMyIDMyLTMybDEyOCAwYzEyLjkgMCAyNC42IDcuOCAyOS42IDE5LjhzMi4yIDI1LjctNi45IDM0LjlMMzk3LjMgNDE2IDQ0OCA0MTZjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTEyOCAwYy0xMi45IDAtMjQuNi03LjgtMjkuNi0xOS44cy0yLjItMjUuNyA2LjktMzQuOWw3My40LTczLjQtNTAuNyAwYy0xNy43IDAtMzItMTQuMy0zMi0zMnoiXX0sa0RyPVkyZSxTRHI9WTJlLHpEcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtb25leS1iaWxsIixpY29uOls1MTIsNTEyLFtdLCJmMGQ2IiwiTTY0IDY0QzI4LjcgNjQgMCA5Mi43IDAgMTI4TDAgMzg0YzAgMzUuMyAyOC43IDY0IDY0IDY0bDM4NCAwYzM1LjMgMCA2NC0yOC43IDY0LTY0bDAtMjU2YzAtMzUuMy0yOC43LTY0LTY0LTY0TDY0IDY0em0xOTIgOTZhOTYgOTYgMCAxIDEgMCAxOTIgOTYgOTYgMCAxIDEgMC0xOTJ6bTE5MiAyNGMwIDQuNC0zLjYgOC4xLTggNy41LTI5LTMuNi01MS45LTI2LjYtNTUuNS01NS41LS41LTQuNCAzLjEtOCA3LjUtOGw0OCAwYzQuNCAwIDggMy42IDggOGwwIDQ4ek02NCAzMjhjMC00LjQgMy42LTguMSA4LTcuNSAyOSAzLjYgNTEuOSAyNi42IDU1LjUgNTUuNSAuNSA0LjQtMy4xIDgtNy41IDhsLTQ4IDBjLTQuNCAwLTgtMy42LTgtOGwwLTQ4em04LTEzNi41Yy00LjQgLjUtOC0zLjEtOC03LjVsMC00OGMwLTQuNCAzLjYtOCA4LThsNDggMGM0LjQgMCA4LjEgMy42IDcuNSA4LTMuNiAyOS0yNi42IDUxLjktNTUuNSA1NS41em0zNjggMTI5YzQuNC0uNSA4IDMuMSA4IDcuNWwwIDQ4YzAgNC40LTMuNiA4LTggOGwtNDggMGMtNC40IDAtOC4xLTMuNi03LjUtOCAzLjYtMjkgMjYuNi01MS45IDU1LjUtNTUuNXoiXX0sREVlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNpcmNsZS1taW51cyIsaWNvbjpbNTEyLDUxMixbIm1pbnVzLWNpcmNsZSJdLCJmMDU2IiwiTTI1NiA1MTJhMjU2IDI1NiAwIDEgMCAwLTUxMiAyNTYgMjU2IDAgMSAwIDAgNTEyek0xNjggMjMybDE3NiAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC0xNzYgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNHoiXX0sQ0RyPURFZSxBRWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYXJyb3ctcG9pbnRlciIsaWNvbjpbNDQ4LDUxMixbIm1vdXNlLXBvaW50ZXIiXSwiZjI0NSIsIk03Ny4zIDIuNWM4LjEtNC4xIDE3LjktMy4yIDI1LjEgMi4zbDMyMCAyMzkuOWM4LjMgNi4yIDExLjYgMTcgOC40IDI2LjhzLTEyLjQgMTYuNC0yMi44IDE2LjRsLTE1Mi4zIDAgODguOSAxNzcuN2M3LjkgMTUuOCAxLjUgMzUtMTQuMyA0Mi45cy0zNSAxLjUtNDIuOS0xNC4zbC04OC45LTE3Ny43LTkxLjMgMTIxLjhjLTYuMiA4LjMtMTcgMTEuNi0yNi44IDguNFM2NCA0MzQuMyA2NCA0MjRMNjQgMjRjMC05LjEgNS4xLTE3LjQgMTMuMy0yMS41eiJdfSxfRHI9QUVlLEVFZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzcXVhcmUtc2hhcmUtbm9kZXMiLGljb246WzQ0OCw1MTIsWyJzaGFyZS1hbHQtc3F1YXJlIl0sImYxZTEiLCJNNjQgMzJDMjguNyAzMiAwIDYwLjcgMCA5NkwwIDQxNmMwIDM1LjMgMjguNyA2NCA2NCA2NGwzMjAgMGMzNS4zIDAgNjQtMjguNyA2NC02NGwwLTMyMGMwLTM1LjMtMjguNy02NC02NC02NEw2NCAzMnpNMzY4IDE2MGMwIDM1LjMtMjguNyA2NC02NCA2NC0xNS40IDAtMjkuNS01LjQtNDAuNi0xNC41bC04NS4zIDQ2LjUgODUuMyA0Ni41YzExLTkuMSAyNS4yLTE0LjUgNDAuNi0xNC41IDM1LjMgMCA2NCAyOC43IDY0IDY0cy0yOC43IDY0LTY0IDY0LTY0LTI4LjctNjQtNjRjMC0yLjUgLjEtNC45IC40LTcuM0wxNTguNSAzMDBjLTExLjcgMTIuMy0yOC4yIDIwLTQ2LjUgMjAtMzUuMyAwLTY0LTI4LjctNjQtNjRzMjguNy02NCA2NC02NGMxOC4zIDAgMzQuOCA3LjcgNDYuNSAyMGw4MS45LTQ0LjdjLS4zLTIuNC0uNC00LjktLjQtNy4zIDAtMzUuMyAyOC43LTY0IDY0LTY0czY0IDI4LjcgNjQgNjR6Il19LFREcj1FRWUsJEVlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRhYmxlLWNlbGxzLWxhcmdlIixpY29uOls0NDgsNTEyLFsidGgtbGFyZ2UiXSwiZjAwOSIsIk0zODQgOTZsLTEyOCAwIDAgMTI4IDEyOCAwIDAtMTI4em02NCAxMjhsMCAxOTJjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDk2QzAgNjAuNyAyOC43IDMyIDY0IDMybDMyMCAwYzM1LjMgMCA2NCAyOC43IDY0IDY0bDAgMTI4ek02NCAyODhsMCAxMjggMTI4IDAgMC0xMjgtMTI4IDB6bTEyOC02NGwwLTEyOC0xMjggMCAwIDEyOCAxMjggMHptNjQgNjRsMCAxMjggMTI4IDAgMC0xMjgtMTI4IDB6Il19LExEcj0kRWUsRERyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNhdCIsaWNvbjpbNTc2LDUxMixbMTI4MDA4XSwiZjZiZSIsIk02NCA5NmM1MyAwIDk2IDQzIDk2IDk2bDAgODUuOGMyOS43LTQ0LjcgNzcuOC03Ni4yIDEzMy40LTg0IDI1LjYgNjAgODUuMiAxMDIuMSAxNTQuNiAxMDIuMSAxMC45IDAgMjEuNi0xLjEgMzItMy4xTDQ4MCA0ODBjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC0xNDAuOC0xMzYgMTA4LjggNTYgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMmwtMTQ0IDBjLTUzIDAtOTYtNDMtOTYtOTZsMC0yMjRjMC0xNi42LTEyLjYtMzAuMi0yOC43LTMxLjhsLTYuNi0uM0M0NC42IDE1OC4yIDMyIDE0NC42IDMyIDEyOCAzMiAxMTAuMyA0Ni4zIDk2IDY0IDk2ek01MzMuOCAzLjJDNTQ0LjItNS41IDU2MCAxLjkgNTYwIDE1LjVMNTYwIDEyOGMwIDYxLjktNTAuMSAxMTItMTEyIDExMlMzMzYgMTg5LjkgMzM2IDEyOGwwLTExMi41YzAtMTMuNiAxNS44LTIxIDI2LjItMTIuM0w0MTYgNDggNDgwIDQ4IDUzMy44IDMuMnpNNDAwIDEwOGEyMCAyMCAwIDEgMCAwIDQwIDIwIDIwIDAgMSAwIDAtNDB6bTk2IDBhMjAgMjAgMCAxIDAgMCA0MCAyMCAyMCAwIDEgMCAwLTQweiJdfSxBRHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2FsZW5kYXItd2VlayIsaWNvbjpbNDQ4LDUxMixbXSwiZjc4NCIsIk0xMjggMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDMyIDEyOCAwIDAtMzJjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDMyIDMyIDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAyODhjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDgwYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDEyOEMwIDkyLjcgMjguNyA2NCA2NCA2NGwzMiAwIDAtMzJjMC0xNy43IDE0LjMtMzIgMzItMzJ6bTAgMjU2Yy0xNy43IDAtMzIgMTQuMy0zMiAzMmwwIDY0YzAgMTcuNyAxNC4zIDMyIDMyIDMybDE5MiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtNjRjMC0xNy43LTE0LjMtMzItMzItMzJsLTE5MiAweiJdfSxFRHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY29kZS1jb21wYXJlIixpY29uOls1MTIsNTEyLFtdLCJlMTNhIiwiTTE5OC44IDEuOGM5LTMuNyAxOS4zLTEuNyAyNi4yIDUuMmw1NiA1NmM5LjQgOS40IDkuNCAyNC42IDAgMzMuOWwtNTYgNTZjLTYuOSA2LjktMTcuMiA4LjktMjYuMiA1LjJTMTg0IDE0NS43IDE4NCAxMzZsMC0yNC0yNCAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMmwwIDIxNC43YzI4LjMgMTIuMyA0OCA0MC41IDQ4IDczLjMgMCA0NC4yLTM1LjggODAtODAgODBzLTgwLTM1LjgtODAtODBjMC0zMi44IDE5LjctNjEgNDgtNzMuM0w2NCAxNDRjMC01MyA0My05NiA5Ni05NmwyNCAwIDAtMjRjMC05LjcgNS44LTE4LjUgMTQuOC0yMi4yek0zOTIgODBhMjQgMjQgMCAxIDAgNDggMCAyNCAyNCAwIDEgMCAtNDggMHptLTggNzMuM2MtMjguMy0xMi4zLTQ4LTQwLjUtNDgtNzMuMyAwLTQ0LjIgMzUuOC04MCA4MC04MHM4MCAzNS44IDgwIDgwYzAgMzIuOC0xOS43IDYxLTQ4IDczLjNMNDQ4IDM2OGMwIDUzLTQzIDk2LTk2IDk2bC0yNCAwIDAgMjRjMCA5LjctNS44IDE4LjUtMTQuOCAyMi4ycy0xOS4zIDEuNy0yNi4yLTUuMmwtNTYtNTZjLTkuNC05LjQtOS40LTI0LjYgMC0zMy45bDU2LTU2YzYuOS02LjkgMTcuMi04LjkgMjYuMi01LjJTMzI4IDM2Ni4zIDMyOCAzNzZsMCAyNCAyNCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtMjE0Ljd6TTcyIDQzMmEyNCAyNCAwIDEgMCA0OCAwIDI0IDI0IDAgMSAwIC00OCAweiJdfSwkRHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibGVvIixpY29uOls1MTIsNTEyLFtdLCJlODRhIiwiTTI2MCAwYzcyLjkgMCAxMzIgNTkuMSAxMzIgMTMybDAgNS40LS4xIDEuNC0yMy44IDI3MGMuNCAyMS43IDE4LjIgMzkuMiA0MCAzOS4yIDIyLjEgMCA0MC0xNy45IDQwLTQwbDAtNDBjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDQwYzAgNTcuNC00Ni42IDEwNC0xMDQgMTA0UzMwNCA0NjUuNCAzMDQgNDA4bDAtMS40IC4xLTEuNCAyMy45LTI3MC42IDAtMi42YzAtMzcuNi0zMC40LTY4LTY4LTY4cy02OCAzMC40LTY4IDY4bDAgNGMwIDMuNyAuMyA3LjMgLjggMTFsMjkuNyAxOTMuNGMuOSA2LjEgMS40IDEyLjIgMS40IDE4LjRsMCA5LjJjMCA2MS45LTUwLjEgMTEyLTExMiAxMTJTMCA0MjkuOSAwIDM2OCA1MC4xIDI1NiAxMTIgMjU2YzExLjcgMCAyMyAxLjggMzMuNyA1LjFMMTI5LjYgMTU2LjdjLTEuMS02LjgtMS42LTEzLjgtMS42LTIwLjdsMC00QzEyOCA1OS4xIDE4Ny4xIDAgMjYwIDB6TTExMiAzMjBhNDggNDggMCAxIDAgMCA5NiA0OCA0OCAwIDEgMCAwLTk2eiJdfSxQRHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicm9hZC1jaXJjbGUteG1hcmsiLGljb246WzY0MCw1MTIsW10sImU1NjYiLCJNMjg3LjkgMzJsLTc2LjIgMGMtMjkuNCAwLTU1LjEgMjAuMS02Mi4xIDQ4LjZMNjUuNCA0MjAuNUM1Ny45IDQ1MC43IDgwLjggNDgwIDExMiA0ODBsMjA5LjQgMGMtMTEuMi0yNC40LTE3LjQtNTEuNC0xNy40LTgwIDAtMjguNiA2LjItNTUuNyAxNy40LTgwLS41IDAtMSAwLTEuNiAwLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtNjRjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDQ5LjJjMzUuMi00MCA4Ni43LTY1LjIgMTQ0LjItNjUuMiA5IDAgMTcuOCAuNiAyNi40IDEuOGwtMzItMTI5LjJDNDgzLjQgNTIuMSA0NTcuOCAzMiA0MjguMyAzMmwtNzYuNSAwIDAgNjRjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC02NHpNNDk2IDU0NGExNDQgMTQ0IDAgMSAwIDAtMjg4IDE0NCAxNDQgMCAxIDAgMCAyODh6bTU5LjMtMTgwLjdsLTM2LjcgMzYuNyAzNi43IDM2LjdjNi4yIDYuMiA2LjIgMTYuNCAwIDIyLjZzLTE2LjQgNi4yLTIyLjYgMGwtMzYuNy0zNi43LTM2LjcgMzYuN2MtNi4yIDYuMi0xNi40IDYuMi0yMi42IDBzLTYuMi0xNi40IDAtMjIuNmwzNi43LTM2LjctMzYuNy0zNi43Yy02LjItNi4yLTYuMi0xNi40IDAtMjIuNnMxNi40LTYuMiAyMi42IDBsMzYuNyAzNi43IDM2LjctMzYuN2M2LjItNi4yIDE2LjQtNi4yIDIyLjYgMHM2LjIgMTYuNCAwIDIyLjZ6Il19LElEcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwYWxsZXQiLGljb246WzU3Niw1MTIsW10sImY0ODIiLCJNMzIgMzIwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDMyIDAgMCA2NC0zMiAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDUxMiAwYzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMybC0zMiAwIDAtNjQgMzIgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMkwzMiAzMjB6bTk2IDY0bDEyOCAwIDAgNjQtMTI4IDAgMC02NHptMTkyIDBsMTI4IDAgMCA2NC0xMjggMCAwLTY0eiJdfSxaMmU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2FrZS1jYW5kbGVzIixpY29uOls0NDgsNTEyLFsxMjc4NzQsImJpcnRoZGF5LWNha2UiLCJjYWtlIl0sImYxZmQiLCJNODYuNC0xMC41TDYxLjggMzEuNkM1OCAzOC4xIDU2IDQ1LjYgNTYgNTMuMkw1NiA1NmMwIDIyLjEgMTcuOSA0MCA0MCA0MHM0MC0xNy45IDQwLTQwbDAtMi44YzAtNy42LTItMTUtNS44LTIxLjZMMTA1LjYtMTAuNWMtMi0zLjQtNS43LTUuNS05LjYtNS41cy03LjYgMi4xLTkuNiA1LjV6bTEyOCAwTDE4OS44IDMxLjZjLTMuOCA2LjUtNS44IDE0LTUuOCAyMS42bDAgMi44YzAgMjIuMSAxNy45IDQwIDQwIDQwczQwLTE3LjkgNDAtNDBsMC0yLjhjMC03LjYtMi0xNS01LjgtMjEuNkwyMzMuNi0xMC41Yy0yLTMuNC01LjctNS41LTkuNi01LjVzLTcuNiAyLjEtOS42IDUuNXpNMzE3LjggMzEuNmMtMy44IDYuNS01LjggMTQtNS44IDIxLjZsMCAyLjhjMCAyMi4xIDE3LjkgNDAgNDAgNDBzNDAtMTcuOSA0MC00MGwwLTIuOGMwLTcuNi0yLTE1LTUuOC0yMS42TDM2MS42LTEwLjVjLTItMy40LTUuNy01LjUtOS42LTUuNXMtNy42IDIuMS05LjYgNS41TDMxNy44IDMxLjZ6TTEyOCAxNjBjMC0xNy43LTE0LjMtMzItMzItMzJzLTMyIDE0LjMtMzIgMzJsMCA1My41QzI2LjcgMjI2LjYgMCAyNjIuMiAwIDMwNGwwIDIwLjhjMjAuOSAxLjMgNDEuNiA3LjMgNjAuMyAxOGw3LjEgNC4xYzI2LjMgMTUgNTguOSAxMy40IDgzLjYtNC4yIDQzLjctMzEuMiAxMDIuMy0zMS4yIDE0NiAwIDI0LjYgMTcuNiA1Ny4zIDE5LjMgODMuNiA0LjJsNy4xLTQuMWMxOC43LTEwLjcgMzkuMy0xNi43IDYwLjMtMThsMC0yMC44YzAtNDEuOC0yNi43LTc3LjQtNjQtOTAuNWwwLTUzLjVjMC0xNy43LTE0LjMtMzItMzItMzJzLTMyIDE0LjMtMzIgMzJsMCA0OC02NCAwIDAtNDhjMC0xNy43LTE0LjMtMzItMzItMzJzLTMyIDE0LjMtMzIgMzJsMCA0OC02NCAwIDAtNDh6TTQ0OCAzNzNjLTEyLjcgMS4yLTI1LjEgNS0zNi41IDExLjVsLTcuMSA0LjFjLTQyLjYgMjQuMy05NS40IDIxLjctMTM1LjMtNi44LTI3LTE5LjMtNjMuMi0xOS4zLTkwLjIgMC0zOS45IDI4LjUtOTIuNyAzMS4yLTEzNS4zIDYuOGwtNy4xLTQuMUMyNS4xIDM3OCAxMi43IDM3NC4xIDAgMzczbDAgNzVjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzIwIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC03NXoiXX0sTkRyPVoyZSxGRHI9WjJlLE9Ecj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJidWctc2xhc2giLGljb246WzU3Niw1MTIsW10sImU0OTAiLCJNNy0yNC45YzkuNC05LjQgMjQuNi05LjQgMzMuOSAwTDI0MS44IDE3NiAzNDQgMTc2YzE0LjIgMCAyNy43IDIuOCA0MCA4bDEwOC44LTgxLjZjMTQuMS0xMC42IDM0LjItNy43IDQ0LjggNi40czcuNyAzNC4yLTYuNCA0NC44bC05Ny44IDczLjNjNS4zIDguOSA5LjMgMTguNyAxMS44IDI5LjFsOTguOCAwYzE3LjcgMCAzMiAxNC4zIDMyIDMycy0xNC4zIDMyLTMyIDMybC05NiAwIDAgMzJjMCA5LjUtLjggMTguNy0yLjQgMjcuOEw1NjkgNTAzLjFjOS40IDkuNCA5LjQgMjQuNiAwIDMzLjlzLTI0LjYgOS40LTMzLjkgMEw3IDkuMUMtMi4zLS4zLTIuMy0xNS41IDctMjQuOXpNMzk4LjIgNDY4Yy0yMy4yIDIyLjEtNTMgMzcuMi04Ni4yIDQyLjJsMC0xMjguNCA4Ni4yIDg2LjJ6TTI2NCAzMzMuOGwwIDE3Ni40Yy01MS4yLTcuNy05NC41LTM5LjctMTE3LjctODMuOUw4My4yIDQ3My42Yy0xNC4xIDEwLjYtMzQuMiA3LjctNDQuOC02LjRzLTcuNy0zNC4yIDYuNC00NC44bDgzLjQtNjIuNWMtLjEtMi42LS4yLTUuMi0uMi03LjlsMC0zMi05NiAwYy0xNy43IDAtMzItMTQuMy0zMi0zMnMxNC4zLTMyIDMyLTMybDk4LjggMGMzLjMtMTMuOSA5LjMtMjYuNyAxNy42LTM3LjhMMjY0IDMzMy44ek0zNTUuNiAxMjhsLTgyLjQgMC03Mi4zLTcyLjNDMjE2LjEgMjIuOCAyNDkuNCAwIDI4OCAwIDM0MSAwIDM4NCA0MyAzODQgOTZsMCAzLjZjMCAxNS43LTEyLjcgMjguNC0yOC40IDI4LjR6Il19LFJEcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0YXJwIixpY29uOls1MTIsNTEyLFtdLCJlNTdiIiwiTTQ0OCA2NGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDE0OS41YzAgMTctNi43IDMzLjMtMTguNyA0NS4zTDM4Ni43IDQyOS4zYy0xMiAxMi0yOC4zIDE4LjctNDUuMyAxOC43TDY0IDQ0OGMtMzUuMyAwLTY0LTI4LjctNjQtNjRMMCAxMjhDMCA5Mi43IDI4LjcgNjQgNjQgNjRsMzg0IDB6bTUuNSAyMDhMMzYwIDI3MmMtMTMuMyAwLTI0IDEwLjctMjQgMjRsMCA5My41IDExNy41LTExNy41ek05NiAxOTJhMzIgMzIgMCAxIDAgMC02NCAzMiAzMiAwIDEgMCAwIDY0eiJdfSxCRHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZGlhZ3JhbS1wcmVkZWNlc3NvciIsaWNvbjpbNDQ4LDUxMixbXSwiZTQ3NyIsIk0yODkuMiAxMzcuOWMyLjUtNiA4LjMtOS45IDE0LjgtOS45bDQwIDAgMC0yNGMwLTEzLjMtMTAuNy0yNC0yNC0yNGwtOTggMGMxLjMgNS4xIDIgMTAuNSAyIDE2bDAgNjRjMCAzNS4zLTI4LjcgNjQtNjQgNjRsLTk2IDBjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgOTZDMCA2MC43IDI4LjcgMzIgNjQgMzJsMjU2IDBjMzkuOCAwIDcyIDMyLjIgNzIgNzJsMCAyNCA0MCAwYzYuNSAwIDEyLjMgMy45IDE0LjggOS45czEuMSAxMi45LTMuNSAxNy40bC02NCA2NGMtNi4yIDYuMi0xNi40IDYuMi0yMi42IDBsLTY0LTY0Yy00LjYtNC42LTUuOS0xMS41LTMuNS0xNy40ek0zODQgMzUybC0zMjAgMCAwIDY0IDMyMCAwIDAtNjR6bTY0IDY0YzAgMzUuMy0yOC43IDY0LTY0IDY0TDY0IDQ4MGMtMzUuMyAwLTY0LTI4LjctNjQtNjRsMC02NGMwLTM1LjMgMjguNy02NCA2NC02NGwzMjAgMGMzNS4zIDAgNjQgMjguNyA2NCA2NGwwIDY0eiJdfSxQRWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmFjZS1mbHVzaGVkIixpY29uOls1MTIsNTEyLFsxMjg1NjMsImZsdXNoZWQiXSwiZjU3OSIsIk0wIDI1NmEyNTYgMjU2IDAgMSAxIDUxMiAwIDI1NiAyNTYgMCAxIDEgLTUxMiAwek0xNjggMzkyYzAgMTMuMyAxMC43IDI0IDI0IDI0bDEyOCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0cy0xMC43LTI0LTI0LTI0bC0xMjggMGMtMTMuMyAwLTI0IDEwLjctMjQgMjR6bS04LTk2YTcyIDcyIDAgMSAwIDAtMTQ0IDcyIDcyIDAgMSAwIDAgMTQ0em0yNjQtNzJhNzIgNzIgMCAxIDAgLTE0NCAwIDcyIDcyIDAgMSAwIDE0NCAwem0tMjg4IDBhMjQgMjQgMCAxIDEgNDggMCAyNCAyNCAwIDEgMSAtNDggMHptMTkyIDBhMjQgMjQgMCAxIDEgNDggMCAyNCAyNCAwIDEgMSAtNDggMHoiXX0sSERyPVBFZSxxRHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZGlhZ3JhbS1uZXh0IixpY29uOls0NDgsNTEyLFtdLCJlNDc2IiwiTTM4NCAyMjRjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC02NGMwLTM1LjMtMjguNy02NC02NC02NEw2NCAzMkMyOC43IDMyIDAgNjAuNyAwIDk2bDAgNjRjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMTI4IDAgMCA2NC0zMiAwYy02LjUgMC0xMi4zIDMuOS0xNC44IDkuOXMtMS4xIDEyLjkgMy41IDE3LjRsNjQgNjRjNi4yIDYuMiAxNi40IDYuMiAyMi42IDBsNjQtNjRjNC42LTQuNiA1LjktMTEuNSAzLjUtMTcuNFMyOTQuNSAyODggMjg4IDI4OGwtMzIgMCAwLTY0IDEyOCAwek02NCAyODhjLTM1LjMgMC02NCAyOC43LTY0IDY0bDAgNjRjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMzIwIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC02NGMwLTM1LjMtMjguNy02NC02NC02NGwtMzQgMGM1LjYgMjEuNy0uNSA0NS4xLTE2LjcgNjEuM2wtNjQgNjRjLTI1IDI1LTY1LjUgMjUtOTAuNSAwbC02NC02NEM5OC42IDMzMy4xIDkyLjQgMzA5LjcgOTggMjg4bC0zNCAweiJdfSxqRHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYW5jaG9yLWNpcmNsZS14bWFyayIsaWNvbjpbNjQwLDUxMixbXSwiZTRhYyIsIk0zMjAuNSA5NmEzMiAzMiAwIDEgMSAtNjQgMCAzMiAzMiAwIDEgMSA2NCAwem0tMzItOTZjLTUzIDAtOTYgNDMtOTYgOTYgMCA0MS44IDI2LjcgNzcuNCA2NCA5MC41bDAgMjU3LjljLTYyLjktMTQuMy0xMTAuMi02OS43LTExMS45LTEzNi41bDE2LjEgMTQuMWMxMCA4LjcgMjUuMSA3LjcgMzMuOS0yLjNzNy43LTI1LjEtMi4zLTMzLjlsLTY0LTU2Yy05LTcuOS0yMi42LTcuOS0zMS42IDBsLTY0IDU2Yy0xMCA4LjctMTEgMjMuOS0yLjMgMzMuOXMyMy45IDExIDMzLjkgMi4zbDE2LjItMTQuMmMyLjEgMTEzLjEgOTQuNCAyMDQuMSAyMDggMjA0LjEgMTYuNiAwIDMyLjctMS45IDQ4LjItNS42LTIwLjMtMzAuNS0zMi4yLTY3LTMyLjItMTA2LjQgMC0yNy4zIDUuNy01My4zIDE2LTc2LjlsMC0xMzYuNmMzNy4zLTEzLjIgNjQtNDguNyA2NC05MC41IDAtNTMtNDMtOTYtOTYtOTZ6bTIwOCA1NDRhMTQ0IDE0NCAwIDEgMCAwLTI4OCAxNDQgMTQ0IDAgMSAwIDAgMjg4em01OS4zLTE4MC43bC0zNi43IDM2LjcgMzYuNyAzNi43YzYuMiA2LjIgNi4yIDE2LjQgMCAyMi42cy0xNi40IDYuMi0yMi42IDBsLTM2LjctMzYuNy0zNi43IDM2LjdjLTYuMiA2LjItMTYuNCA2LjItMjIuNiAwcy02LjItMTYuNCAwLTIyLjZsMzYuNy0zNi43LTM2LjctMzYuN2MtNi4yLTYuMi02LjItMTYuNCAwLTIyLjZzMTYuNC02LjIgMjIuNiAwbDM2LjcgMzYuNyAzNi43LTM2LjdjNi4yLTYuMiAxNi40LTYuMiAyMi42IDBzNi4yIDE2LjQgMCAyMi42eiJdfSxWRHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGVyc29uLWNpcmNsZS14bWFyayIsaWNvbjpbNjQwLDUxMixbXSwiZTU0MyIsIk0yODAgMjRhNTYgNTYgMCAxIDAgLTExMiAwIDU2IDU2IDAgMSAwIDExMiAwem0yNCAyMTIuN0wzNDEgMjg2LjZjMTIuOC0xNy41IDI4LjUtMzIuNyA0Ni4zLTQ1bC01Ni4yLTc1LjdDMzA2IDEzMiAyNjYuMyAxMTIgMjI0IDExMnMtODIgMjAtMTA3LjIgNTMuOWwtNzAuNSA5NWMtMTAuNSAxNC4yLTcuNiAzNC4yIDYuNiA0NC44czM0LjIgNy42IDQ0LjgtNi42TDE0NCAyMzYuNyAxNDQgNTEyYzAgMTcuNyAxNC4zIDMyIDMyIDMyczMyLTE0LjMgMzItMzJsMC0xNjBjMC04LjggNy4yLTE2IDE2LTE2czE2IDcuMiAxNiAxNmwwIDE2MGMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMjc1LjN6TTQ5NiA1NDRhMTQ0IDE0NCAwIDEgMCAwLTI4OCAxNDQgMTQ0IDAgMSAwIDAgMjg4em0yMi42LTE0NGwzNi43IDM2LjdjNi4yIDYuMiA2LjIgMTYuNCAwIDIyLjZzLTE2LjQgNi4yLTIyLjYgMGwtMzYuNy0zNi43LTM2LjcgMzYuN2MtNi4yIDYuMi0xNi40IDYuMi0yMi42IDBzLTYuMi0xNi40IDAtMjIuNmwzNi43LTM2LjctMzYuNy0zNi43Yy02LjItNi4yLTYuMi0xNi40IDAtMjIuNnMxNi40LTYuMiAyMi42IDBsMzYuNyAzNi43IDM2LjctMzYuN2M2LjItNi4yIDE2LjQtNi4yIDIyLjYgMHM2LjIgMTYuNCAwIDIyLjZMNTE4LjYgNDAweiJdfSxVRHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic3BhIixpY29uOls1NzYsNTEyLFtdLCJmNWJiIiwiTTE2OS43IDIyNy41YzM0LjMgMTguNyA2NC41IDQ0LjEgODguOCA3NC41IDExLjEgMTMuOSAyMSAyOC45IDI5LjQgNDQuOCA4LjUtMTUuOSAxOC4zLTMwLjggMjkuNC00NC44IDI0LjMtMzAuNSA1NC41LTU1LjkgODguOC03NC41IDQxLjctMjIuNyA4OS40LTM1LjUgMTM5LjctMzUuNWw5LjkgMGMxMS4xIDAgMjAuMSA5IDIwLjEgMjAuMSAwIDE0OC0xMTkuOSAyNjcuOS0yNjcuOSAyNjcuOWwtNDAuMiAwQzExOS45IDQ4MCAwIDM2MC4xIDAgMjEyLjEgMCAyMDEgOSAxOTIgMjAuMSAxOTJsOS45IDBjNTAuNCAwIDk4LjEgMTIuOCAxMzkuNyAzNS41ek0zMDMuOSAzOGMxNi45IDE1LjkgNjEuNCA2My40IDg5IDE0Mi4zLTQwLjEgMjAuMi03NS44IDQ4LjItMTA0LjkgODIuMS0yOS4yLTMzLjktNjQuOC02MS44LTEwNC45LTgyLjEgMjcuNi03OC45IDcyLjItMTI2LjQgODktMTQyLjMgNC4zLTQuMSAxMC02IDE1LjktNnMxMS42IDIgMTUuOSA2eiJdfSxXRHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYXJpZXMiLGljb246WzUxMiw1MTIsW10sImU4NDYiLCJNNDAxLjYgMGM2MS4zIDAgMTEwLjQgNTAuMyAxMTAuNCAxMTEgMCAyOS40LTExLjYgNTcuOS0zMi42IDc4LjhsLTguOCA4LjhjLTEyLjUgMTIuNS0zMi44IDEyLjUtNDUuMiAwcy0xMi41LTMyLjggMC00NS4ybDguOC04LjhjOC44LTguOCAxMy44LTIxIDEzLjgtMzMuNiAwLTI1LjktMjEuMS00Ny00Ni40LTQ3LTIyLjUgMC00MS43IDE2LjEtNDUuNyAzOC4yTDI4Ny41IDQ4NS42YzAgLjEtLjEgLjMtLjEgLjQtLjIgLjgtLjMgMS42LS41IDIuMy0uMSAuMy0uMSAuNS0uMiAuNy0uMiAuNi0uNCAxLjMtLjcgMS45LS4yIC41LS40IDEtLjYgMS41LS4xIC4zLS4zIC42LS40IC45LTEuNiAzLjUtMy44IDYuNS02LjQgOS4yLTIgMi00LjIgMy43LTYuNiA1LjEtLjIgLjEtLjMgLjItLjUgLjMtLjcgLjQtMS40IC43LTIuMSAxLS4zIC4xLS42IC4zLS45IC40LS41IC4yLTEgLjQtMS41IC42LS42IC4yLTEuMiAuNS0xLjkgLjctLjIgLjEtLjUgLjItLjcgLjItLjggLjItMS42IC40LTIuMyAuNS0uMiAwLS4zIC4xLS40IC4xLS4yIDAtLjQgMC0uNiAuMS0uNyAuMS0xLjMgLjItMiAuMi0uNCAwLS44IC4xLTEuMiAuMS0uNiAwLTEuMiAuMS0xLjggLjEtLjYgMC0xLjIgMC0xLjgtLjEtLjQgMC0uOC0uMS0xLjItLjEtLjctLjEtMS40LS4xLTItLjItLjIgMC0uNCAwLS42LS4xLS4yIDAtLjMtLjEtLjUtLjEtLjgtLjItMS42LS4zLTIuMy0uNS0uMy0uMS0uNS0uMS0uOC0uMi0uNi0uMi0xLjMtLjQtMS45LS43LS41LS4yLTEtLjQtMS41LS42LS4zLS4xLS42LS4zLS45LS40LS43LS4zLTEuNC0uNy0yLjEtMS0uMi0uMS0uMy0uMi0uNS0uMy0yLjQtMS40LTQuNy0zLjEtNi42LTUuMS0yLjYtMi42LTQuOC01LjctNi40LTkuMi0uMS0uMi0uMi0uMy0uMi0uNWwtLjUtMS4xYy0uMS0uMy0uMi0uNS0uMy0uOC0uMi0uNi0uNS0xLjItLjctMS45LS4xLS4yLS4yLS41LS4yLS43LS4yLS44LS40LTEuNi0uNS0yLjMgMC0uMS0uMS0uMy0uMS0uNEwxNTYgMTAyLjJjLTQtMjIuMS0yMy4yLTM4LjItNDUuNy0zOC4yLTI1LjMgMC00Ni40IDIxLjEtNDYuNCA0NyAwIDEyLjYgNSAyNC44IDEzLjggMzMuNmw4LjggOC44YzEyLjUgMTIuNSAxMi41IDMyLjggMCA0NS4ycy0zMi44IDEyLjUtNDUuMiAwbC04LjgtOC44QzExLjYgMTY4LjkgMCAxNDAuMyAwIDExMSAwIDUwLjMgNDkuMSAwIDExMC40IDAgMTYzLjggMCAyMDkuNiAzOC4zIDIxOSA5MWwzNyAyMDcgMzctMjA3YzkuNC01Mi42IDU1LjItOTEgMTA4LjctOTF6Il19LElFZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJiYXJzLXByb2dyZXNzIixpY29uOls0NDgsNTEyLFsidGFza3MtYWx0Il0sImY4MjgiLCJNMjg4IDE2MGw5NiAwIDAtNjQtOTYgMCAwIDY0ek0wIDE2MEwwIDgwQzAgNTMuNSAyMS41IDMyIDQ4IDMybDM1MiAwYzI2LjUgMCA0OCAyMS41IDQ4IDQ4bDAgOTZjMCAyNi41LTIxLjUgNDgtNDggNDhMNDggMjI0Yy0yNi41IDAtNDgtMjEuNS00OC00OGwwLTE2ek0xNjAgNDE2bDIyNCAwIDAtNjQtMjI0IDAgMCA2NHpNMCA0MTZsMC04MGMwLTI2LjUgMjEuNS00OCA0OC00OGwzNTIgMGMyNi41IDAgNDggMjEuNSA0OCA0OGwwIDk2YzAgMjYuNS0yMS41IDQ4LTQ4IDQ4TDQ4IDQ4MGMtMjYuNSAwLTQ4LTIxLjUtNDgtNDhsMC0xNnoiXX0sR0RyPUlFZSxZRHI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaGVhcnQtY2lyY2xlLWNoZWNrIixpY29uOls1NzYsNTEyLFtdLCJlNGZkIiwiTTI0MSA4Ny4xbDE1IDIwLjcgMTUtMjAuN0MyOTYgNTIuNSAzMzYuMiAzMiAzNzguOSAzMiA0NTIuNCAzMiA1MTIgOTEuNiA1MTIgMTY1LjFsMCAyLjZjMCAxNy42LTMuNCAzNS42LTkuNSA1My43LTIxLjgtOC42LTQ1LjYtMTMuNC03MC41LTEzLjQtMTA2IDAtMTkyIDg2LTE5MiAxOTIgMCAyOC41IDYuMiA1NS42IDE3LjQgODAtLjUgMC0uOSAwLTEuNCAwLTE1LjUgMC0zMC44LTQuNi00My4xLTE0LjEtNzMtNTUuNy0yMTIuOS0xODYtMjEyLjktMjk4LjJsMC0yLjZDMCA5MS42IDU5LjYgMzIgMTMzLjEgMzIgMTc1LjggMzIgMjE2IDUyLjUgMjQxIDg3LjF6TTI4OCA0MDBhMTQ0IDE0NCAwIDEgMSAyODggMCAxNDQgMTQ0IDAgMSAxIC0yODggMHptMjAxLjQtNjAuOWMtNy4xLTUuMi0xNy4yLTMuNi0yMi40IDMuNWwtNTMgNzIuOS0yNi44LTI2LjhjLTYuMi02LjItMTYuNC02LjItMjIuNiAwcy02LjIgMTYuNCAwIDIyLjZsNDAgNDBjMy4zIDMuMyA3LjkgNSAxMi42IDQuNnM4LjktMi44IDExLjctNi41bDY0LTg4YzUuMi03LjEgMy42LTE3LjItMy41LTIyLjN6Il19LE5FZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJtYXJzLXN0cm9rZS1yaWdodCIsaWNvbjpbNjQwLDUxMixbOTg5NywibWFycy1zdHJva2UtaCJdLCJmMjJiIiwiTTMyMC41IDI1NmExMTIgMTEyIDAgMSAwIC0yMjQgMCAxMTIgMTEyIDAgMSAwIDIyNCAwek0yMDguNSA4MGM4Ni4zIDAgMTU4LjEgNjIuMSAxNzMuMSAxNDQuMSAxLS4xIDEuOS0uMSAyLjktLjFsMTYgMCAwLTMyYzAtMTcuNyAxNC4zLTMyIDMyLTMyczMyIDE0LjMgMzIgMzJsMCAzMiA2MS40IDAtMjIuNC0yOGMtMTEtMTMuOC04LjgtMzMuOSA1LTQ1czMzLjktOC44IDQ1IDVsNjQgODBjOS4zIDExLjcgOS4zIDI4LjMgMCA0MGwtNjQgODBjLTExIDEzLjgtMzEuMiAxNi00NSA1cy0xNi0zMS4yLTUtNDVsMjIuNC0yOC02MS40IDAgMCAzMmMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTMyLTE2IDBjLTEgMC0xLjkgMC0yLjktLjEtMTUgODItODYuOCAxNDQuMS0xNzMuMSAxNDQuMS05Ny4yIDAtMTc2LTc4LjgtMTc2LTE3NnM3OC44LTE3NiAxNzYtMTc2eiJdfSxaRHI9TkVlLFhEcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJ0b3dlci1vYnNlcnZhdGlvbiIsaWNvbjpbNDQ4LDUxMixbXSwiZTU4NiIsIk0yMDkuNyAzLjRjOS00LjUgMTkuNi00LjUgMjguNiAwbDE2MCA4MGMxNS44IDcuOSAyMi4yIDI3LjEgMTQuMyA0Mi45LTUuNiAxMS4yLTE2LjkgMTcuNy0yOC42IDE3LjdsMCA4MGMwIDE3LjctMTQuMyAzMi0zMiAzMmwtMTMgMCAzMiAxOTIgNDUgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMtMTQuMyAzMi0zMiAzMkwzMiA1MTJjLTE3LjcgMC0zMi0xNC4zLTMyLTMyczE0LjMtMzIgMzItMzJsNDUgMCAzMi0xOTItMTMgMGMtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC04MGMtMTEuNyAwLTIzLTYuNS0yOC42LTE3LjctNy45LTE1LjgtMS41LTM1IDE0LjMtNDIuOWwxNjAtODB6TTMxMC43IDQ0OGwtODYuNy02MS45LTg2LjcgNjEuOSAxNzMuNCAwem0tMTUzLTE5MmwtMy41IDIxLjIgNjkuOSA0OS45IDY5LjktNDkuOS0zLjUtMjEuMi0xMzIuNyAwem0tMTIuMyA3My45bC0xMC4xIDYwLjYgNDcuNS0zMy45LTM3LjQtMjYuN3ptMTE5LjkgMjYuN2w0Ny41IDMzLjktMTAuMS02MC42LTM3LjQgMjYuN3pNMTUyIDEyOGMtMTMuMyAwLTI0IDEwLjctMjQgMjRzMTAuNyAyNCAyNCAyNGwxNDQgMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtMTQ0IDB6Il19LFgyZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJzdGVybGluZy1zaWduIixpY29uOlszODQsNTEyLFsxNjMsImdicCIsInBvdW5kLXNpZ24iXSwiZjE1NCIsIk05MS4zIDI4OGwtMzQuOCAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0bDIxLjQgMEMzNy4zIDE0Ny4zIDEwNS4xIDQyIDIwNy42IDQybDguMiAwYzMzLjYgMCA2Ni4yIDExLjMgOTIuNSAzMi4ybDE2LjEgMTIuN2MxMy45IDExIDE2LjIgMzEuMSA1LjIgNDVzLTMxLjEgMTYuMi00NSA1LjJsLTE2LjEtMTIuN2MtMTUtMTEuOS0zMy42LTE4LjQtNTIuOC0xOC40bC04LjIgMGMtNTcuMyAwLTk0LjcgNTkuOS02OS43IDExMS40IDMuNiA3LjQgNi42IDE0LjkgOS4xIDIyLjZsMTQ5LjUgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtMTQxLjIgMGMxIDM1LjMtOC43IDcwLjYtMjguOSAxMDAuOWwtMTguMSAyNy4xIDIxMi4yIDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTI3MiAwYy0xMS44IDAtMjIuNi02LjUtMjguMi0xNi45cy01LTIzIDEuNi0zMi45bDUxLjItNzYuOGMxMy4xLTE5LjYgMTkuMi00Mi42IDE4LjItNjUuNHoiXX0sUURyPVgyZSxLRHI9WDJlLEpEcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJmYXVjZXQtZHJpcCIsaWNvbjpbNTEyLDUxMixbMTI4Njg4XSwiZTAwNiIsIk0yMjQgMzJjLTE3LjcgMC0zMiAxNC4zLTMyIDMyTDk2IDY0Qzc4LjMgNjQgNjQgNzguMyA2NCA5NnMxNC4zIDMyIDMyIDMybDk2IDAgMCA2NC0xOC43IDBjLTguNSAwLTE2LjYgMy40LTIyLjYgOS40TDEyOCAyMjQgMzIgMjI0Yy0xNy43IDAtMzIgMTQuMy0zMiAzMmwwIDY0YzAgMTcuNyAxNC4zIDMyIDMyIDMybDEwMC4xIDBjMjAuMiAyOSA1My45IDQ4IDkxLjkgNDhzNzEuNy0xOSA5MS45LTQ4bDM2LjEgMGMxNy43IDAgMzIgMTQuMyAzMiAzMnMxNC4zIDMyIDMyIDMybDY0IDBjMTcuNyAwIDMyLTE0LjMgMzItMzIgMC04OC40LTcxLjYtMTYwLTE2MC0xNjBsLTMyIDAtMjIuNi0yMi42Yy02LTYtMTQuMS05LjQtMjIuNi05LjRsLTE4LjcgMCAwLTY0IDk2IDBjMTcuNyAwIDMyLTE0LjMgMzItMzJzLTE0LjMtMzItMzItMzJsLTk2IDBjMC0xNy43LTE0LjMtMzItMzItMzJ6TTQzNi44IDQ1NS40bC0xOC4yIDQyLjRjLTEuOCA0LjEtMi43IDguNi0yLjcgMTMuMWwwIDEuMmMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtMS4yYzAtNC41LS45LTguOS0yLjctMTMuMWwtMTguMi00Mi40Yy0xLjktNC41LTYuMy03LjQtMTEuMi03LjRzLTkuMiAyLjktMTEuMiA3LjR6Il19LEd3PXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNpcmNsZS1pbmZvIixpY29uOls1MTIsNTEyLFsiaW5mby1jaXJjbGUiXSwiZjA1YSIsIk0yNTYgNTEyYTI1NiAyNTYgMCAxIDAgMC01MTIgMjU2IDI1NiAwIDEgMCAwIDUxMnpNMjI0IDE2MGEzMiAzMiAwIDEgMSA2NCAwIDMyIDMyIDAgMSAxIC02NCAwem0tOCA2NGw0OCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0bDAgODggOCAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC04MCAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0bDI0IDAgMC02NC0yNCAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0eiJdfSxlQXI9R3csdEFyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZlYXRoZXIiLGljb246WzUxMiw1MTIsWzEyOTcxOF0sImY1MmQiLCJNMzUyIDBjNDEgMCA4MC4zIDE2LjMgMTA5LjIgNDUuMmw1LjUgNS41YzI5IDI5IDQ1LjMgNjguMyA0NS4zIDEwOS4yIDAgMjQuMS01LjcgNDcuNi0xNi4yIDY4LjgtMS45IDMuNy01LjMgNi41LTkuMyA3LjdMMzc0LjUgMjcwYy0zLjkgMS4yLTYuNSA0LjctNi41IDguOCAwIDUuMSA0LjEgOS4yIDkuMiA5LjJsMzIuMiAwYzE0LjMgMCAyMS40IDE3LjIgMTEuMyAyNy4zbC0yMi40IDIyLjRjLTEuOSAxLjktNC4yIDMuMi02LjcgNGwtODEgMjQuM2MtMy45IDEuMi02LjUgNC43LTYuNSA4LjggMCA1LjEgNC4xIDkuMiA5LjIgOS4yIDEzLjIgMCAxOC45IDE1LjcgNy44IDIyLjktNDEuMSAyNi42LTg5LjMgNDEuMS0xMzkgNDEuMWwtODYgMC00OCA0OGMtOC44IDguOC0yMy4yIDguOC0zMiAwcy04LjgtMjMuMiAwLTMyTDI1NiAyMjRjOC44LTguOCA4LjgtMjMuMiAwLTMycy0yMy4yLTguOC0zMiAwTDc5LjUgMzM2LjVjLTUuNyA1LjctMTUuNSAxLjctMTUuNS02LjQgMC02Ny45IDI3LTEzMyA3NS0xODFMMjQyLjggNDUuMkMyNzEuNyAxNi4zIDMxMSAwIDM1MiAweiJdfSxyQXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYm93bC1yaWNlIixpY29uOls1MTIsNTEyLFtdLCJlMmViIiwiTTE3NiA0MGMwLTEzLjMgMTAuNy0yNCAyNC0yNGwxNiAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC0xNiAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHptMjQgNDhsMTYgMGMxMy4zIDAgMjQgMTAuNyAyNCAyNHMtMTAuNyAyNC0yNCAyNGwtMTYgMGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNHpNNTYgMTYwbDE2IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTE2IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjR6TTAgMjgzLjRDMCAyNjguMyAxMi4zIDI1NiAyNy40IDI1Nmw0NTcuMSAwYzE1LjEgMCAyNy40IDEyLjMgMjcuNCAyNy40IDAgNzAuNS00NC40IDEzMC43LTEwNi43IDE1NC4xTDQwMy41IDQ1MmMtMiAxNi0xNS42IDI4LTMxLjggMjhsLTIzMS41IDBjLTE2LjEgMC0yOS44LTEyLTMxLjgtMjhsLTEuOC0xNC40QzQ0LjQgNDE0LjEgMCAzNTMuOSAwIDI4My40ek0yMjQgMTg0YzAtMTMuMyAxMC43LTI0IDI0LTI0bDE2IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTE2IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0em0tOTYgMGMwLTEzLjMgMTAuNy0yNCAyNC0yNGwxNiAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC0xNiAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHpNMTA0IDg4bDE2IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTE2IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjR6bTIxNiA5NmMwLTEzLjMgMTAuNy0yNCAyNC0yNGwxNiAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC0xNiAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHpNMjk2IDg4bDE2IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTE2IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjR6bTEyMCA5NmMwLTEzLjMgMTAuNy0yNCAyNC0yNGwxNiAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC0xNiAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHpNMzkyIDg4bDE2IDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRsLTE2IDBjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjR6TTI5NiAxNmwxNiAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC0xNiAwYy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0eiJdfSxGRWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic3Rhci1oYWxmLXN0cm9rZSIsaWNvbjpbNTc2LDUxMixbInN0YXItaGFsZi1hbHQiXSwiZjVjMCIsIk0yODguMSAzNTMuNmMxMCAwIDE5LjkgMi4zIDI5IDdsNzQuNCAzNy45LTEzLTgyLjVjLTMuMi0yMC4yIDMuNS00MC43IDE3LjktNTUuMmw1OS01OS4xLTgyLjUtMTMuMWMtMjAuMi0zLjItMzcuNy0xNS45LTQ3LTM0LjFsLTM4LTc0LjQgMCAyNzMuNnpNNDU3LjQgNDg5Yy03LjMgNS4zLTE3IDYuMS0yNSAyTDI4OC4xIDQxNy42IDE0My44IDQ5MWMtOCA0LjEtMTcuNyAzLjMtMjUtMnMtMTEtMTQuMi05LjYtMjMuMkwxMzQuNCAzMDUuOSAyMCAxOTEuNGMtNi40LTYuNC04LjYtMTUuOC01LjgtMjQuNHMxMC4xLTE0LjkgMTkuMS0xNi4zbDE1OS45LTI1LjQgNzMuNi0xNDQuMmM0LjEtOCAxMi40LTEzLjEgMjEuNC0xMy4xczE3LjMgNS4xIDIxLjQgMTMuMUwzODMgMTI1LjMgNTQyLjkgMTUwLjdjOC45IDEuNCAxNi4zIDcuNyAxOS4xIDE2LjNzLjUgMTgtNS44IDI0LjRMNDQxLjcgMzA1LjkgNDY3IDQ2NS44YzEuNCA4LjktMi4zIDE3LjktOS42IDIzLjJ6Il19LGFBcj1GRWUsT0VlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InRlbXBlcmF0dXJlLWFycm93LWRvd24iLGljb246WzUxMiw1MTIsWyJ0ZW1wZXJhdHVyZS1kb3duIl0sImUwM2YiLCJNNjQuNSA5NmMwLTUzIDQzLTk2IDk2LTk2czk2IDQzIDk2IDk2bDAgMTY0LjdjMjkuNSAyNi40IDQ4IDY0LjcgNDggMTA3LjMgMCA3OS41LTY0LjUgMTQ0LTE0NCAxNDRzLTE0NC02NC41LTE0NC0xNDRjMC00Mi42IDE4LjUtODEgNDgtMTA3LjNMNjQuNSA5NnptOTYgMzM2YzM1LjMgMCA2NC0yOC43IDY0LTY0IDAtMjYuOS0xNi41LTQ5LjktNDAtNTkuM2wwLTI4LjdjMC0xMy4zLTEwLjctMjQtMjQtMjRzLTI0IDEwLjctMjQgMjRsMCAyOC43Yy0yMy41IDkuNS00MCAzMi41LTQwIDU5LjMgMCAzNS4zIDI4LjcgNjQgNjQgNjR6TTQzOS4xIDMxMC42Yy02IDYtMTQuMSA5LjQtMjIuNiA5LjRzLTE2LjYtMy40LTIyLjYtOS40bC02NC02NGMtMTIuNS0xMi41LTEyLjUtMzIuOCAwLTQ1LjNzMzIuOC0xMi41IDQ1LjMgMGw5LjQgOS40IDAtMTc4LjdjMC0xNy43IDE0LjMtMzIgMzItMzJzMzIgMTQuMyAzMiAzMmwwIDE3OC43IDkuNC05LjRjMTIuNS0xMi41IDMyLjgtMTIuNSA0NS4zIDBzMTIuNSAzMi44IDAgNDUuM2wtNjQgNjR6Il19LGlBcj1PRWUsb0FyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im1hc2stdmVudGlsYXRvciIsaWNvbjpbNjQwLDUxMixbXSwiZTUyNCIsIk0xNTIuMiAxOTJjLTE1LjQgMzguMy0yNC4yIDc3LjItMjQuMiAxMDguOCAwIDEzLjMgMS41IDI2LjIgNC40IDM4LjdsLTE3LTMuNGMtMjkuOS02LTUxLjQtMzIuMi01MS40LTYyLjhsMC04MS4zIDg4LjIgMHptMzIuOS02NEw2NCAxMjhjLTM1LjMgMC02NCAyOC43LTY0IDY0bDAgODEuM2MwIDYxIDQzLjEgMTEzLjUgMTAyLjkgMTI1LjVsNjYuMyAxMy4zYzE4LjcgMjIuMSA0Mi45IDQwIDcwLjggNTEuOGwwLTg3LjhjLTEwLjEtMTQuMi0xNi0zMS4zLTE2LTQ5LjcgMC00OS41IDQzLTEzNC40IDk2LTEzNC40IDUyLjUgMCA5NiA4NC45IDk2IDEzNC40IDAgMTguNC01LjkgMzUuNC0xNiA0OS42bDAgODcuN2MyNy42LTExLjggNTEuNy0yOS42IDcwLjQtNTEuNmw2Ni43LTEzLjNjNTkuOC0xMiAxMDIuOS02NC41IDEwMi45LTEyNS41bDAtODEuM2MwLTM1LjMtMjguNy02NC02NC02NGwtMTIxLjUgMGMtMzQuOC01NC4yLTgyLjUtOTYtMTM0LjUtOTYtNTIuNiAwLTEwMC4yIDQxLjgtMTM0LjkgOTZ6bTMwMi41IDY0bDg4LjQgMCAwIDgxLjNjMCAzMC41LTIxLjUgNTYuOC01MS40IDYyLjhsLTE3IDMuNGMyLjktMTIuNCA0LjUtMjUuNCA0LjUtMzguNyAwLTMxLjYtOC45LTcwLjUtMjQuNC0xMDguOHpNMjg4IDMyMGwwIDE5MiA2NCAwIDAtMTkyYzAtMTcuNy0xNC4zLTMyLTMyLTMycy0zMiAxNC4zLTMyIDMyeiJdfSxuQXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZmlsZS12aWRlbyIsaWNvbjpbMzg0LDUxMixbXSwiZjFjOCIsIk0wIDY0QzAgMjguNyAyOC43IDAgNjQgMEwyMTMuNSAwYzE3IDAgMzMuMyA2LjcgNDUuMyAxOC43TDM2NS4zIDEyNS4zYzEyIDEyIDE4LjcgMjguMyAxOC43IDQ1LjNMMzg0IDQ0OGMwIDM1LjMtMjguNyA2NC02NCA2NEw2NCA1MTJjLTM1LjMgMC02NC0yOC43LTY0LTY0TDAgNjR6bTIwOC01LjVsMCA5My41YzAgMTMuMyAxMC43IDI0IDI0IDI0TDMyNS41IDE3NiAyMDggNTguNXpNODAgMzA0bDAgOTZjMCAxNy43IDE0LjMgMzIgMzIgMzJsOTYgMGMxNy43IDAgMzItMTQuMyAzMi0zMmwwLTI0IDM1IDM1YzMuMiAzLjIgNy41IDUgMTIgNSA5LjQgMCAxNy03LjYgMTctMTdsMC05NC4xYzAtOS40LTcuNi0xNy0xNy0xNy00LjUgMC04LjggMS44LTEyIDVsLTM1IDM1IDAtMjRjMC0xNy43LTE0LjMtMzItMzItMzJsLTk2IDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyeiJdfSxzQXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYXJyb3ctdHJlbmQtZG93biIsaWNvbjpbNTc2LDUxMixbXSwiZTA5NyIsIk0zODQgMzUyYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDE2MCAwYzE3LjcgMCAzMi0xNC4zIDMyLTMybDAtMTYwYzAtMTcuNy0xNC4zLTMyLTMyLTMycy0zMiAxNC4zLTMyIDMybDAgODIuNy0xNjkuNC0xNjkuNGMtMTIuNS0xMi41LTMyLjgtMTIuNS00NS4zIDBMMTkyIDI0Mi43IDU0LjYgMTA1LjRjLTEyLjUtMTIuNS0zMi44LTEyLjUtNDUuMyAwcy0xMi41IDMyLjggMCA0NS4zbDE2MCAxNjBjMTIuNSAxMi41IDMyLjggMTIuNSA0NS4zIDBMMzIwIDIwNS4zIDQ2Ni43IDM1MiAzODQgMzUyeiJdfSxsQXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToib2lsLWNhbiIsaWNvbjpbNjQwLDUxMixbXSwiZjYxMyIsIk0zMjAgMTI4YzE3LjcgMCAzMi0xNC4zIDMyLTMycy0xNC4zLTMyLTMyLTMyTDE5MiA2NGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmwzMiAwIDAgMzItMTc2IDBjLTI2LjUgMC00OCAyMS41LTQ4IDQ4bDAgNjQuOGMwIDE5IDExLjIgMzYuMiAyOC41IDQzLjlsNjcuNSAzMCAwIDIxLjNjMCAyNi41IDIxLjUgNDggNDggNDhsMjU5LjEgMGMxOC40IDAgMzUuOC03LjkgNDgtMjEuN0w2MzMuNSAxODcuN2MxMi4zLTEzLjktLjMtMzUuNC0xOC40LTMxLjVMNDQ4IDE5MiAzOTcuNSAxNjYuOGMtOC45LTQuNC0xOC43LTYuOC0yOC42LTYuOGwtODAuOSAwIDAtMzIgMzIgMHpNOTYgMjA4bDAgODYuMS00OC0yMS4zIDAtNjQuOCA0OCAweiJdfSxSRWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToicGVvcGxlLWNhcnJ5LWJveCIsaWNvbjpbNTc2LDUxMixbInBlb3BsZS1jYXJyeSJdLCJmNGNlIiwiTTY0LTMyQTU2IDU2IDAgMSAxIDY0IDgwIDU2IDU2IDAgMSAxIDY0LTMyek0wIDE3MS4xYzAtMzIuNiAyNi41LTU5LjEgNTkuMS01OS4xIDIzLjUgMCA0NS41IDExLjMgNTkuMSAzMC40bDQ4LjcgNjguMmM1LjggOC4yIDE1LjEgMTMuMSAyNS4xIDEzLjRsMC05NmMwLTE3LjcgMTQuMy0zMiAzMi0zMmwxMjggMGMxNy43IDAgMzIgMTQuMyAzMiAzMmwwIDk2YzEwLS4zIDE5LjMtNS4yIDI1LjEtMTMuNGw0OC43LTY4LjJjMTMuNi0xOS4xIDM1LjYtMzAuNCA1OS4xLTMwLjQgMzIuNiAwIDU5LjEgMjYuNSA1OS4xIDU5LjFMNTc2IDI3MmMwIDMwLjItMTQuMiA1OC43LTM4LjQgNzYuOGwtNzYuOCA1Ny42Yy04LjEgNi0xMi44IDE1LjUtMTIuOCAyNS42bDAgODBjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC04MGMwLTMwLjIgMTQuMi01OC43IDM4LjQtNzYuOGw0MS42LTMxLjIgMC04MC4xLTIuOCAzLjljLTE4IDI1LjItNDcuMSA0MC4yLTc4LjEgNDAuMkwzNTIgMjg4Yy0uNiAwLTEuMyAwLTEuOS0uMS0uNiAwLTEuMyAuMS0xLjkgLjFsLTEyMC40IDBjLS42IDAtMS4zIDAtMS45LS4xLS42IDAtMS4zIC4xLTEuOSAuMWwtMzEuMSAwYy0zMSAwLTYwLjEtMTUtNzguMS00MC4ybC0yLjgtMy45IDAgODAuMSA0MS42IDMxLjJDMTc3LjggMzczLjMgMTkyIDQwMS44IDE5MiA0MzJsMCA4MGMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTgwYzAtMTAuMS00LjctMTkuNi0xMi44LTI1LjZMMzguNCAzNDguOEMxNC4yIDMzMC43IDAgMzAyLjIgMCAyNzJMMCAxNzEuMXpNMCAzNzkuM2MzLjEgMi43IDYuMyA1LjQgOS42IDcuOUw2NCA0MjggNjQgNTEyYzAgMTcuNy0xNC4zIDMyLTMyIDMyUzAgNTI5LjcgMCA1MTJMMCAzNzkuM3pNNTY4IDI0YTU2IDU2IDAgMSAxIC0xMTIgMCA1NiA1NiAwIDEgMSAxMTIgMHptOCA0ODhjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC04NCA1NC40LTQwLjhjMy4zLTIuNSA2LjUtNS4xIDkuNi03LjlMNTc2IDUxMnoiXX0sY0FyPVJFZSxkQXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiY2hhaXIiLGljb246WzQ0OCw1MTIsWzEyOTY4MV0sImY2YzAiLCJNMTUyIDI1NmwwLTE4MS44Yy0yNC41IDIwLjUtNDAgNTEuNC00MCA4NS44bDAgOTYgNDAgMHptNDggMGw0OCAwIDAtMjA1LjRjLTcuNy0xLjctMTUuOC0yLjYtMjQtMi42cy0xNi4zIC45LTI0IDIuNkwyMDAgMjU2ek0yOTYgNzQuMmwwIDE4MS44IDQwIDAgMC05NmMwLTM0LjQtMTUuNS02NS4yLTQwLTg1Ljh6TTMyIDI1NmwzMiAwIDAtOTZDNjQgNzEuNiAxMzUuNiAwIDIyNCAwUzM4NCA3MS42IDM4NCAxNjBsMCA5NiAzMiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgNjRjMCAxNy43LTE0LjMgMzItMzIgMzJsMCA5NmMwIDE3LjctMTQuMyAzMi0zMiAzMnMtMzItMTQuMy0zMi0zMmwwLTk2LTI1NiAwIDAgOTZjMCAxNy43LTE0LjMgMzItMzIgMzJzLTMyLTE0LjMtMzItMzJsMC05NmMtMTcuNyAwLTMyLTE0LjMtMzItMzJsMC02NGMwLTE3LjcgMTQuMy0zMiAzMi0zMnoiXX0sdUFyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6IndpbmQiLGljb246WzUxMiw1MTIsW10sImY3MmUiLCJNMjg4IDMyYzAgMTcuNyAxNC4zIDMyIDMyIDMybDQwIDBjMTMuMyAwIDI0IDEwLjcgMjQgMjRzLTEwLjcgMjQtMjQgMjRMMzIgMTEyYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDMyOCAwYzQ4LjYgMCA4OC0zOS40IDg4LTg4UzQwOC42IDAgMzYwIDBMMzIwIDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyem02NCAzNTJjMCAxNy43IDE0LjMgMzIgMzIgMzJsMzIgMGM1MyAwIDk2LTQzIDk2LTk2cy00My05Ni05Ni05NkwzMiAyMjRjLTE3LjcgMC0zMiAxNC4zLTMyIDMyczE0LjMgMzIgMzIgMzJsMzg0IDBjMTcuNyAwIDMyIDE0LjMgMzIgMzJzLTE0LjMgMzItMzIgMzJsLTMyIDBjLTE3LjcgMC0zMiAxNC4zLTMyIDMyek0xMjggNTEybDQwIDBjNDguNiAwIDg4LTM5LjQgODgtODhzLTM5LjQtODgtODgtODhMMzIgMzM2Yy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMybDEzNiAwYzEzLjMgMCAyNCAxMC43IDI0IDI0cy0xMC43IDI0LTI0IDI0bC00MCAwYy0xNy43IDAtMzIgMTQuMy0zMiAzMnMxNC4zIDMyIDMyIDMyeiJdfSxmQXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToibGF5ZXItZ3JvdXAiLGljb246WzUxMiw1MTIsW10sImY1ZmQiLCJNMjMyLjUgNS4yYzE0LjktNi45IDMyLjEtNi45IDQ3IDBsMjE4LjYgMTAxYzguNSAzLjkgMTMuOSAxMi40IDEzLjkgMjEuOHMtNS40IDE3LjktMTMuOSAyMS44bC0yMTguNiAxMDFjLTE0LjkgNi45LTMyLjEgNi45LTQ3IDBMMTMuOSAxNDkuOEM1LjQgMTQ1LjggMCAxMzcuMyAwIDEyOHM1LjQtMTcuOSAxMy45LTIxLjhMMjMyLjUgNS4yek00OC4xIDIxOC40bDE2NC4zIDc1LjljMjcuNyAxMi44IDU5LjYgMTIuOCA4Ny4zIDBsMTY0LjMtNzUuOSAzNC4xIDE1LjhjOC41IDMuOSAxMy45IDEyLjQgMTMuOSAyMS44cy01LjQgMTcuOS0xMy45IDIxLjhsLTIxOC42IDEwMWMtMTQuOSA2LjktMzIuMSA2LjktNDcgMEwxMy45IDI3Ny44QzUuNCAyNzMuOCAwIDI2NS4zIDAgMjU2czUuNC0xNy45IDEzLjktMjEuOGwzNC4xLTE1Ljh6TTEzLjkgMzYyLjJsMzQuMS0xNS44IDE2NC4zIDc1LjljMjcuNyAxMi44IDU5LjYgMTIuOCA4Ny4zIDBsMTY0LjMtNzUuOSAzNC4xIDE1LjhjOC41IDMuOSAxMy45IDEyLjQgMTMuOSAyMS44cy01LjQgMTcuOS0xMy45IDIxLjhsLTIxOC42IDEwMWMtMTQuOSA2LjktMzIuMSA2LjktNDcgMEwxMy45IDQwNS44QzUuNCA0MDEuOCAwIDM5My4zIDAgMzg0czUuNC0xNy45IDEzLjktMjEuOHoiXX0scEFyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhlYWQtc2lkZS1tYXNrIixpY29uOls1MTIsNTEyLFtdLCJlMDYzIiwiTTQ0NS45IDE5M2MtLjEtLjQtLjItLjktLjItMS4zLTE1LjctMTA4LjQtMTA4LjktMTkxLjctMjIxLjctMTkxLjctODUgMC0xNTkgNDcuNC0xOTYuOSAxMTcuMkwyODMuMyAyODggNDU2IDI4OCA0NDIuOSAzMzYgMzM2IDMzNmMtOC44IDAtMTYgNy4yLTE2IDE2czcuMiAxNiAxNiAxNmw5OC4yIDAtOC43IDMyLTg5LjUgMGMtOC44IDAtMTYgNy4yLTE2IDE2czcuMiAxNiAxNiAxNmw4MC42IDBjLTYuNyAxOS4xLTI0LjggMzItNDUuMyAzMkwyODggNDY0Yy0xNy43IDAtMzItMTQuMy0zMi0zMmwwLTEwNC41LTI0Ny41LTE2NUMzIDE4Mi4xIDAgMjAyLjcgMCAyMjQgMCAyNzggMTkuMSAzMjcuNSA1MC45IDM2Ni4yIDU4LjkgMzc1LjkgNjQgMzg3LjggNjQgNDAwLjRMNjQgNDY0YzAgMjYuNSAyMS41IDQ4IDQ4IDQ4bDEyNy4zIDAgLjcgMCAxMzEuMyAwYzQ0LjkgMCA4My44LTMxLjEgOTMuNi03NC45bDMzLjktMTUwLjNjMy4zLTE0LjQtLjMtMjkuNS05LjctNDFMNDQ1LjkgMTkzek0yODggMTkyYTMyIDMyIDAgMSAxIDY0IDAgMzIgMzIgMCAxIDEgLTY0IDB6Il19LFEyZT17cHJlZml4OiJmYXMiLGljb25OYW1lOiJoYW5kcyIsaWNvbjpbNTEyLDUxMixbInNpZ24tbGFuZ3VhZ2UiLCJzaWduaW5nIl0sImYyYTciLCJNNTEyIDE2MGwtLjEgNzIuNmMwIDQ0LjgtMTcuNiA4Ny4xLTQ3LjkgMTE4LjQtLjMtNzctNDAuMS0xNDguNC0xMDUuNC0xODkuM2wtMS45LTEuMmMyLjUtMy43IDIuOC04LjYgLjQtMTIuN2wtNjItMTA3LjRjLTYuNi0xMS41LTIuNy0yNi4yIDguOC0zMi44UzMzMCA1IDMzNi42IDE2LjVsNjggMTE3LjggMCAwIDAgMCA0My4zIDc1IC4xLTQ5LjNjMC0xNy43IDE0LjQtMzIgMzItMzJzMzIgMTQuNCAzMiAzMnpNMjk4LjQgMTI0LjJjLTE0LjEtOC44LTI5LjgtMTIuNy00NS4yLTEyLjFMMjE2LjcgNDguOGMtNi42LTExLjUtMi43LTI2LjIgOC44LTMyLjhzMjYuMi0yLjcgMzIuOCA4LjhsNjcuMSAxMTYuMi0yNy0xNi45ek0yMTEuOSA4OC41bDE2LjQgMjguNGMtMTUuMSA1LjUtMjguNiAxNS42LTM4LjMgMjkuN2wtMTkuNy0zNC4yYy02LjYtMTEuNS0yLjctMjYuMiA4LjgtMzIuOHMyNi4yLTIuNyAzMi44IDguOHptLTQ2LjQgNjMuN2wxMi41IDIxLjdjLTIgOC42LTIuNSAxNy41LTEuNyAyNi4xbC00LjMgMCAwIDAtMzQuNCAwLTEzLjctMjMuOGMtNi42LTExLjUtMi43LTI2LjIgOC44LTMyLjhzMjYuMi0yLjcgMzIuOCA4Ljh6TTIyOC45IDE3NWM5LjQtMTUgMjkuMS0xOS41IDQ0LjEtMTAuMmw2MC4yIDM3LjZDMzg0LjcgMjM0LjcgNDE2IDI5MS4yIDQxNiAzNTJsMCA4YzAgODMuOS02OC4xIDE1Mi0xNTIgMTUyTDg4IDUxMmMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNGw5MiAwYzYuNiAwIDEyLTUuNCAxMi0xMnMtNS40LTEyLTEyLTEyTDU2IDQ0MGMtMTMuMyAwLTI0LTEwLjctMjQtMjRzMTAuNy0yNCAyNC0yNGwxMjQgMGM2LjYgMCAxMi01LjQgMTItMTJzLTUuNC0xMi0xMi0xMkwyNCAzNjhjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjRsMTU2IDBjNi42IDAgMTItNS40IDEyLTEycy01LjQtMTItMTItMTJMNTYgMjk2Yy0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0bDEzNiAwIDAgMCAwIDAgOTMuMiAwLTQ2LjItMjguOWMtMTUtOS40LTE5LjUtMjkuMS0xMC4yLTQ0LjF6Il19LGhBcj1RMmUsbUFyPVEyZSxnQXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidGFibGV0cyIsaWNvbjpbNTEyLDUxMixbXSwiZjQ5MCIsIk00OTUuMyA3Ni42Yy00LjYtOC43LTE2LjMtOS43LTIzLjMtMi43TDI5Ny45IDI0OGMtNyA3LTYgMTguNyAyLjcgMjMuMyAyMC4xIDEwLjcgNDMgMTYuNyA2Ny40IDE2LjcgNzkuNSAwIDE0NC02NC41IDE0NC0xNDQgMC0yNC4zLTYtNDcuMy0xNi43LTY3LjR6TTI0MC43IDIxMS40YzQuNiA4LjcgMTYuMyA5LjcgMjMuMyAyLjdMNDM4LjEgNDBjNy03IDYtMTguNy0yLjctMjMuMy0yMC4xLTEwLjctNDMtMTYuNy02Ny40LTE2LjctNzkuNSAwLTE0NCA2NC41LTE0NCAxNDQgMCAyNC4zIDYgNDcuMyAxNi43IDY3LjR6TTE0NCAyMjRDNzkuMiAyMjQgMjQuNCAyNjYuOCA2LjMgMzI1LjYgMy40IDMzNS4xIDExIDM0NCAyMC45IDM0NGwyNDYuMiAwYzkuOSAwIDE3LjUtOC45IDE0LjYtMTguNC0uOS0zLTEuOS01LjktMy04LjctMzcuNC0xOC4xLTY4LTQ4LTg3LTg0LjgtMTQuOS01LjItMzAuOS04LjEtNDcuNi04LjF6TTI4MS43IDQxMC40YzIuOS05LjUtNC43LTE4LjQtMTQuNi0xOC40TDIwLjkgMzkyQzExIDM5MiAzLjQgNDAwLjkgNi4zIDQxMC40IDI0LjQgNDY5LjIgNzkuMiA1MTIgMTQ0IDUxMnMxMTkuNi00Mi44IDEzNy43LTEwMS42eiJdfSx4QXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToid2VpZ2h0LWhhbmdpbmciLGljb246WzUxMiw1MTIsW10sImY1Y2QiLCJNMjI0IDk2YTMyIDMyIDAgMSAxIDY0IDAgMzIgMzIgMCAxIDEgLTY0IDB6bTEyMi41IDMyYzMuNS0xMCA1LjUtMjAuOCA1LjUtMzIgMC01My00My05Ni05Ni05NnMtOTYgNDMtOTYgOTZjMCAxMS4yIDEuOSAyMiA1LjUgMzJsLTIxLjggMGMtMjguMyAwLTUzLjIgMTguNS02MS4zIDQ1LjZMMi40IDQ0MC4yQy44IDQ0NS40IDAgNDUwLjggMCA0NTYuMiAwIDQ4NyAyNSA1MTIgNTUuOCA1MTJsNDAwLjQgMGMzMC44IDAgNTUuOC0yNSA1NS44LTU1LjggMC01LjQtLjgtMTAuOC0yLjQtMTZsLTgwLTI2Ni41Yy04LjEtMjcuMS0zMy00NS42LTYxLjMtNDUuNmwtMjEuOCAweiJdfSxiQXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiZGljZSIsaWNvbjpbNTEyLDUxMixbMTI3OTIyXSwiZjUyMiIsIk0xNDEuNCAyLjNDMTAzLTggNjMuNSAxNC44IDUzLjMgNTMuMkwyLjUgMjQyLjdDLTcuOCAyODEuMSAxNSAzMjAuNiA1My40IDMzMC45bDE4OS41IDUwLjhjMzguNCAxMC4zIDc3LjktMTIuNSA4OC4yLTUwLjlsNTAuOC0xODkuNWMxMC4zLTM4LjQtMTIuNS03Ny45LTUwLjktODguMkwxNDEuNCAyLjN6bTIzIDIwNS43YTMyIDMyIDAgMSAxIDU1LjQtMzIgMzIgMzIgMCAxIDEgLTU1LjQgMzJ6TTc5LjIgMjIwLjNhMzIgMzIgMCAxIDEgMzIgNTUuNCAzMiAzMiAwIDEgMSAtMzItNTUuNHptMTg1IDk2LjRhMzIgMzIgMCAxIDEgLTMyLTU1LjQgMzIgMzIgMCAxIDEgMzIgNTUuNHptOS0yMDguNGEzMiAzMiAwIDEgMSAzMiA1NS40IDMyIDMyIDAgMSAxIC0zMi01NS40em0tMTIxIDE0LjRhMzIgMzIgMCAxIDEgLTMyLTU1LjQgMzIgMzIgMCAxIDEgMzIgNTUuNHpNNDE4IDE5MkwzNzcuNCAzNDMuMmMtMTcuMiA2NC04MyAxMDItMTQ3IDg0LjlsLTM4LjMtMTAuMyAwIDMwLjJjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMTkyIDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0xOTJjMC0zNS4zLTI4LjctNjQtNjQtNjRMNDE4IDE5MnoiXX0sQkVlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNob3Atc2xhc2giLGljb246WzU3Niw1MTIsWyJzdG9yZS1hbHQtc2xhc2giXSwiZTA3MCIsIk00MS0yNC45Yy05LjQtOS40LTI0LjYtOS40LTMzLjkgMFMtMi4zLS4zIDcgOS4xbDUyOCA1MjhjOS40IDkuNCAyNC42IDkuNCAzMy45IDBzOS40LTI0LjYgMC0zMy45bC01Ny01NyAwLTE5MC4zYzI2LjgtMS45IDQ4LTI0LjMgNDgtNTEuNiAwLTgtMS45LTE2LTUuNS0yMy4yTDQ5Ny43IDY3LjRDNDg2LjggNDUuNyA0NjQuNyAzMiA0NDAuNCAzMkwxMzUuNiAzMmMtMTAuNyAwLTIxIDIuNy0zMC4yIDcuNkw0MS0yNC45ek0zMjEuOCAyNTZMNDQ4IDI1NiA0NDggMzgyLjIgMzIxLjggMjU2ek0zNTIgNDIxLjhsLTY0LTY0IDAgMTAuMmMwIDguOC03LjIgMTYtMTYgMTZsLTEyOCAwYy04LjggMC0xNi03LjItMTYtMTZsMC0xMTIgNTguMiAwLTEzNC44LTEzNC44LTI5LjkgNTkuOWMtMy42IDcuMi01LjUgMTUuMS01LjUgMjMuMiAwIDI3LjMgMjEuMiA0OS43IDQ4IDUxLjZMNjQgNDMyYzAgMjYuNSAyMS41IDQ4IDQ4IDQ4bDE5MiAwYzI2LjUgMCA0OC0yMS41IDQ4LTQ4bDAtMTAuMnoiXX0sdkFyPUJFZSxIRWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToic29ydC1kb3duIixpY29uOlszODQsNTEyLFsic29ydC1kZXNjIl0sImYwZGQiLCJNMzIgMjg4Yy0xMi45IDAtMjQuNiA3LjgtMjkuNiAxOS44Uy4yIDMzMy41IDkuNCAzNDIuNmwxNjAgMTYwYzEyLjUgMTIuNSAzMi44IDEyLjUgNDUuMyAwbDE2MC0xNjBjOS4yLTkuMiAxMS45LTIyLjkgNi45LTM0LjlTMzY0LjkgMjg4IDM1MiAyODhMMzIgMjg4eiJdfSx5QXI9SEVlLHdBcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJwZXNldGEtc2lnbiIsaWNvbjpbNDQ4LDUxMixbXSwiZTIyMSIsIk0xMTIgMzJDOTQuMyAzMiA4MCA0Ni4zIDgwIDY0bDAgMTA0LTI0IDBjLTEzLjMgMC0yNCAxMC43LTI0IDI0czEwLjcgMjQgMjQgMjRsMjQgMCAwIDIzMmMwIDE3LjcgMTQuMyAzMiAzMiAzMnMzMi0xNC4zIDMyLTMybDAtOTYgOTYgMGM4MC4yIDAgMTQ2LjYtNTkgMTU4LjItMTM2bDI1LjggMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtMjUuOCAwQzM4Ni42IDkxIDMyMC4yIDMyIDI0MCAzMkwxMTIgMzJ6TTMzMyAxNjhsLTE4OSAwIDAtNzIgOTYgMGM0NC43IDAgODIuMyAzMC42IDkzIDcyek0xNDQgMjE2bDE4OSAwYy0xMC43IDQxLjQtNDguMiA3Mi05MyA3MmwtOTYgMCAwLTcyeiJdfSxxRWU9e3ByZWZpeDoiZmFzIixpY29uTmFtZToidGFibGV0LXNjcmVlbi1idXR0b24iLGljb246WzQ0OCw1MTIsWyJ0YWJsZXQtYWx0Il0sImYzZmEiLCJNMCA2NEMwIDI4LjcgMjguNyAwIDY0IDBMMzg0IDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAzODRjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNTEyYy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDY0ek0yNTYgNDMyYTMyIDMyIDAgMSAwIC02NCAwIDMyIDMyIDAgMSAwIDY0IDB6TTM4NCA2NGwtMzIwIDAgMCAyODggMzIwIDAgMC0yODh6Il19LE1Bcj1xRWUsakVlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhhbmQtaG9sZGluZy1kb2xsYXIiLGljb246WzU3Niw1MTIsWyJoYW5kLWhvbGRpbmctdXNkIl0sImY0YzAiLCJNMjg4LTE2Yy0xMy4zIDAtMjQgMTAuNy0yNCAyNGwwIDEyLTEuOCAwYy0zNi42IDAtNjYuMiAyOS43LTY2LjIgNjYuMiAwIDMzLjQgMjQuOSA2MS42IDU4IDY1LjdsNjEgNy42YzUuMSAuNiA5IDUgOSAxMC4yIDAgNS43LTQuNiAxMC4yLTEwLjIgMTAuMkwyNDAgMTgwYy0xNS41IDAtMjggMTIuNS0yOCAyOHMxMi41IDI4IDI4IDI4bDI0IDAgMCAxMmMwIDEzLjMgMTAuNyAyNCAyNCAyNHMyNC0xMC43IDI0LTI0bDAtMTIgMS44IDBjMzYuNiAwIDY2LjItMjkuNyA2Ni4yLTY2LjIgMC0zMy40LTI0LjktNjEuNi01OC02NS43bC02MS03LjZjLTUuMS0uNi05LTUtOS0xMC4yIDAtNS43IDQuNi0xMC4yIDEwLjItMTAuMkwzMjggNzZjMTUuNSAwIDI4LTEyLjUgMjgtMjhzLTEyLjUtMjgtMjgtMjhsLTE2IDAgMC0xMmMwLTEzLjMtMTAuNy0yNC0yNC0yNHpNMTA5LjMgMzQxLjVMNjYuNyAzODQgMzIgMzg0Yy0xNy43IDAtMzIgMTQuMy0zMiAzMmwwIDY0YzAgMTcuNyAxNC4zIDMyIDMyIDMybDMyMC41IDBjMjkgMCA1Ny4zLTkuMyA4MC43LTI2LjVsMTI2LjYtOTMuM2MxNy44LTEzLjEgMjEuNi0zOC4xIDguNS01NS45cy0zOC4xLTIxLjYtNTUuOS04LjVMMzkyLjYgNDE2IDI4MCA0MTZjLTEzLjMgMC0yNC0xMC43LTI0LTI0czEwLjctMjQgMjQtMjRsNzIgMGMxNy43IDAgMzItMTQuMyAzMi0zMnMtMTQuMy0zMi0zMi0zMmwtMTUyLjIgMGMtMzMuOSAwLTY2LjUgMTMuNS05MC41IDM3LjV6Il19LGtBcj1qRWUsVkVlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6InNoaWVsZCIsaWNvbjpbNTEyLDUxMixbMTI4NzM3LCJzaGllbGQtYmxhbmsiXSwiZjEzMiIsIk0yNTYgMGM0LjYgMCA5LjIgMSAxMy40IDIuOUw0NTcuOCA4Mi44YzIyIDkuMyAzOC40IDMxIDM4LjMgNTcuMi0uNSA5OS4yLTQxLjMgMjgwLjctMjEzLjYgMzYzLjItMTYuNyA4LTM2LjEgOC01Mi44IDAtMTcyLjQtODIuNS0yMTMuMS0yNjQtMjEzLjYtMzYzLjItLjEtMjYuMiAxNi4zLTQ3LjkgMzguMy01Ny4yTDI0Mi43IDIuOUMyNDYuOSAxIDI1MS40IDAgMjU2IDB6Il19LFNBcj1WRWUsVUVlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImZhY2UtbGF1Z2giLGljb246WzUxMiw1MTIsWyJsYXVnaCJdLCJmNTk5IiwiTTI1NiA1MTJhMjU2IDI1NiAwIDEgMCAwLTUxMiAyNTYgMjU2IDAgMSAwIDAgNTEyek0xMDEuNiAzMTRjLTMuNy0xMy43IDcuNS0yNiAyMS43LTI2bDI2NS40IDBjMTQuMiAwIDI1LjQgMTIuMyAyMS43IDI2LTE4LjUgNjgtODAuNiAxMTgtMTU0LjQgMTE4UzEyMCAzODIgMTAxLjYgMzE0ek0xNDQgMTkyYTMyIDMyIDAgMSAxIDY0IDAgMzIgMzIgMCAxIDEgLTY0IDB6bTE5Mi0zMmEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6Il19LHpBcj1VRWUsQ0FyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImhhbmRzLWhvbGRpbmciLGljb246WzY0MCw1MTIsW10sImY0YzIiLCJNODAgMTA0YzAtMjIuMS0xNy45LTQwLTQwLTQwUzAgODEuOSAwIDEwNEwwIDMyNS41YzAgMjUuNSAxMC4xIDQ5LjkgMjguMSA2Ny45TDEyOCA0OTMuM2MxMiAxMiAyOC4zIDE4LjcgNDUuMyAxOC43bDY2LjcgMGMyNi41IDAgNDgtMjEuNSA0OC00OGwwLTc4LjljMC0yOS43LTExLjgtNTguMi0zMi44LTc5LjJsLTI1LjMtMjUuMyAwIDBjLTcuMy03LjMtMjMuMS0yMy4xLTQ3LjItNDcuMi0xMi41LTEyLjUtMzIuOC0xMi41LTQ1LjMgMHMtMTIuNSAzMi44IDAgNDUuM2MyNC4xIDI0LjEgMzkuOSAzOS45IDQ3LjIgNDcuMiAxMSAxMSA5LjIgMjkuMi0zLjcgMzcuOC05LjcgNi41LTIyLjcgNS4yLTMxLTMuMUw5OC43IDMwOS41Yy0xMi0xMi0xOC43LTI4LjMtMTguNy00NS4zTDgwIDEwNHptNDgwIDBsMCAxNjAuMmMwIDE3LTYuNyAzMy4zLTE4LjcgNDUuM2wtNTEuMSA1MS4xYy04LjMgOC4zLTIxLjMgOS42LTMxIDMuMS0xMi45LTguNi0xNC43LTI2LjktMy43LTM3LjggNy4zLTcuMyAyMy4xLTIzLjEgNDcuMi00Ny4yIDEyLjUtMTIuNSAxMi41LTMyLjggMC00NS4zcy0zMi44LTEyLjUtNDUuMyAwYy0yNC4xIDI0LjEtMzkuOSAzOS45LTQ3LjIgNDcuMmwwIDAtMjUuMyAyNS4zYy0yMSAyMS0zMi44IDQ5LjUtMzIuOCA3OS4ybDAgNzguOWMwIDI2LjUgMjEuNSA0OCA0OCA0OGw2Ni43IDBjMTcgMCAzMy4zLTYuNyA0NS4zLTE4LjdsOTkuOS05OS45YzE4LTE4IDI4LjEtNDIuNCAyOC4xLTY3LjlMNjQwIDEwNGMwLTIyLjEtMTcuOS00MC00MC00MHMtNDAgMTcuOS00MCA0MHoiXX0sV0VlPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6ImNhcnQtc2hvcHBpbmciLGljb246WzY0MCw1MTIsWzEyODcyMiwic2hvcHBpbmctY2FydCJdLCJmMDdhIiwiTTI0LTE2QzEwLjctMTYgMC01LjMgMCA4UzEwLjcgMzIgMjQgMzJsNDUuMyAwYzMuOSAwIDcuMiAyLjggNy45IDYuNmw1Mi4xIDI4Ni4zYzYuMiAzNC4yIDM2IDU5LjEgNzAuOCA1OS4xTDQ1NiAzODRjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTI1NS45IDBjLTExLjYgMC0yMS41LTguMy0yMy42LTE5LjdsLTUuMS0yOC4zIDMwMy42IDBjMzAuOCAwIDU3LjItMjEuOSA2Mi45LTUyLjJMNTY4LjkgNjkuOUM1NzIuNiA1MC4yIDU1Ny41IDMyIDUzNy40IDMybC00MTIuNyAwLS40LTJjLTQuOC0yNi42LTI4LTQ2LTU1LjEtNDZMMjQtMTZ6TTIwOCA1MTJhNDggNDggMCAxIDAgMC05NiA0OCA0OCAwIDEgMCAwIDk2em0yMjQgMGE0OCA0OCAwIDEgMCAwLTk2IDQ4IDQ4IDAgMSAwIDAgOTZ6Il19LF9Bcj1XRWUsVEFyPXtwcmVmaXg6ImZhcyIsaWNvbk5hbWU6Im9jdGFnb24iLGljb246WzUxMiw1MTIsWzEyODcyMV0sImYzMDYiLCJNMTg4LjYgLjFjLTE3IDAtMzMuMyA2LjctNDUuMyAxOC43TDE5LjIgMTQzQzcuMiAxNTUgLjUgMTcxLjIgLjUgMTg4LjJsMCAxMzUuNmMwIDE3IDYuNyAzMy4zIDE4LjcgNDUuM0wxNDMuNCA0OTMuMmMxMiAxMiAyOC4zIDE4LjcgNDUuMyAxOC43bDEzNS42IDBjMTcgMCAzMy4zLTYuNyA0NS4zLTE4LjdMNDkzLjYgMzY5YzEyLTEyIDE4LjctMjguMyAxOC43LTQ1LjNsMC0xMzUuNmMwLTE3LTYuNy0zMy4zLTE4LjctNDUuM0wzNjkuNSAxOC44Yy0xMi0xMi0yOC4zLTE4LjctNDUuMy0xOC43TDE4OC42IC4xeiJdfSxMQXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiaGFuZC1wb2ludGVyIixpY29uOls0NDgsNTEyLFtdLCJmMjVhIiwiTTEyOCA0MGMwLTIyLjEgMTcuOS00MCA0MC00MHM0MCAxNy45IDQwIDQwbDAgMTQ4LjJjOC41LTcuNiAxOS43LTEyLjIgMzItMTIuMiAyMC42IDAgMzguMiAxMyA0NSAzMS4yIDguOC05LjMgMjEuMi0xNS4yIDM1LTE1LjIgMjUuMyAwIDQ2IDE5LjUgNDcuOSA0NC4zIDguNS03LjcgMTkuOC0xMi4zIDMyLjEtMTIuMyAyNi41IDAgNDggMjEuNSA0OCA0OGwwIDExMmMwIDcwLjctNTcuMyAxMjgtMTI4IDEyOGwtODUuMyAwYy01IDAtOS45LS4zLTE0LjctMS01NS4zLTUuNi0xMDYuMi0zNC0xNDAtNzlMOCAzMzZjLTEzLjMtMTcuNy05LjctNDIuNyA4LTU2czQyLjctOS43IDU2IDhsNTYgNzQuNyAwLTMyMi43ek0yNDAgMzA0YzAtOC44LTcuMi0xNi0xNi0xNnMtMTYgNy4yLTE2IDE2bDAgOTZjMCA4LjggNy4yIDE2IDE2IDE2czE2LTcuMiAxNi0xNmwwLTk2em00OC0xNmMtOC44IDAtMTYgNy4yLTE2IDE2bDAgOTZjMCA4LjggNy4yIDE2IDE2IDE2czE2LTcuMiAxNi0xNmwwLTk2YzAtOC44LTcuMi0xNi0xNi0xNnptODAgMTZjMC04LjgtNy4yLTE2LTE2LTE2cy0xNiA3LjItMTYgMTZsMCA5NmMwIDguOCA3LjIgMTYgMTYgMTZzMTYtNy4yIDE2LTE2bDAtOTZ6Il19LERBcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJyZWdpc3RlcmVkIixpY29uOls1MTIsNTEyLFsxNzRdLCJmMjVkIiwiTTI1NiA1MTJhMjU2IDI1NiAwIDEgMCAwLTUxMiAyNTYgMjU2IDAgMSAwIDAgNTEyek0yMDAgMTQ0bDgwIDBjMzkuOCAwIDcyIDMyLjIgNzIgNzIgMCAyOC45LTE3IDUzLjgtNDEuNiA2NS4zbDMwLjIgNTAuM2M2LjggMTEuNCAzLjEgMjYuMS04LjIgMzIuOXMtMjYuMSAzLjEtMzIuOS04LjJsLTQxLTY4LjMtMzQuNCAwIDAgNTZjMCAxMy4zLTEwLjcgMjQtMjQgMjRzLTI0LTEwLjctMjQtMjRsMC0xNzZjMC0xMy4zIDEwLjctMjQgMjQtMjR6bTcyIDk2bDggMGMxMy4zIDAgMjQtMTAuNyAyNC0yNHMtMTAuNy0yNC0yNC0yNGwtNTYgMCAwIDQ4IDQ4IDB6Il19LEFBcj17cHJlZml4OiJmYXMiLGljb25OYW1lOiJob3VzZS1zaWduYWwiLGljb246WzU3Niw1MTIsW10sImUwMTIiLCJNNTE1LjkgMjQwbC0xOS45IDAgMCAxNDRjMCAzNS4zLTI4LjcgNjQtNjQgNjRsLTEzNyAwYy0yNC05MS43LTkzLjUtMTY1LTE4My0xOTQuM2wwLTEzLjctMTkuOSAwYy0xNS41IDAtMjguMS0xMi42LTI4LjEtMjguMSAwLTcuNiAzLjEtMTQuOSA4LjYtMjAuMkwyNzYuNS00LjlDMjgzLjktMTIgMjkzLjctMTYgMzA0LTE2czIwLjEgNCAyNy41IDExLjFMNTM1LjQgMTkxLjdjNS41IDUuMyA4LjYgMTIuNiA4LjYgMjAuMiAwIDE1LjUtMTIuNiAyOC4xLTI4LjEgMjguMXpNMjgwIDE5MmMtMTMuMyAwLTI0IDEwLjctMjQgMjRsMCA0OGMwIDEzLjMgMTAuNyAyNCAyNCAyNGw0OCAwYzEzLjMgMCAyNC0xMC43IDI0LTI0bDAtNDhjMC0xMy4zLTEwLjctMjQtMjQtMjRsLTQ4IDB6TTI0IDI4OGMxMjguMSAwIDIzMiAxMDMuOSAyMzIgMjMyIDAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0YzAtMTAxLjYtODIuNC0xODQtMTg0LTE4NC0xMy4zIDAtMjQtMTAuNy0yNC0yNHMxMC43LTI0IDI0LTI0em04IDE5MmEzMiAzMiAwIDEgMSAwIDY0IDMyIDMyIDAgMSAxIDAtNjR6TTAgNDA4YzAtMTMuMyAxMC43LTI0IDI0LTI0IDc1LjEgMCAxMzYgNjAuOSAxMzYgMTM2IDAgMTMuMy0xMC43IDI0LTI0IDI0cy0yNC0xMC43LTI0LTI0YzAtNDguNi0zOS40LTg4LTg4LTg4LTEzLjMgMC0yNC0xMC43LTI0LTI0eiJdfSxFQXI9e3ByZWZpeDoiZmFzIixpY29uTmFtZToiYmFuZ2xhZGVzaGktdGFrYS1zaWduIixpY29uOlszODQsNTEyLFtdLCJlMmU2IiwiTTM2IDMyLjNDMTguNCAzMC4xIDIuNCA0Mi41IC4zIDYwUzEwLjUgOTMuNiAyOCA5NS44bDcuOSAxYzE2IDIgMjggMTUuNiAyOCAzMS44bDAgMzEuNS00MCAwYy0xMy4zIDAtMjQgMTAuNy0yNCAyNHMxMC43IDI0IDI0IDI0bDQwIDAgMCAxNzZjMCA1MyA0MyA5NiA5NiA5NmwzMiAwYzEwNiAwIDE5Mi04NiAxOTItMTkybDAtMzJjMC01My00My05Ni05Ni05NmwtMTYgMGMtMTcuNyAwLTMyIDE0LjMtMzIgMzJzMTQuMyAzMiAzMiAzMmwxNiAwYzE3LjcgMCAzMiAxNC4zIDMyIDMybDAgMzJjMCA3MC43LTU3LjMgMTI4LTEyOCAxMjhsLTMyIDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMybDAtMTc2IDQwIDBjMTMuMyAwIDI0LTEwLjcgMjQtMjRzLTEwLjctMjQtMjQtMjRsLTQwIDAgMC0zMS41QzEyOCA4MC4xIDkyIDM5LjIgNDMuOSAzMy4ybC03LjktMXoiXX0sSWJhPXtmYTA6VjRyLGZhMTpVNHIsZmEyOlc0cixmYTM6RzRyLGZhNDpZNHIsZmE1Olo0cixmYTY6WDRyLGZhNzpRNHIsZmE4Oks0cixmYTk6SjRyLGZhRG9sbGFyU2lnbjp0MmUsZmFEb2xsYXI6ZTNyLGZhVXNkOnQzcixmYURvZzpyM3IsZmFUcnVja01vdmluZzphM3IsZmFSb3RhdGU6RnplLGZhU3luY0FsdDppM3IsZmFTcXVhcmVNaW51czpPemUsZmFNaW51c1NxdWFyZTpvM3IsZmFBbGlnbkp1c3RpZnk6bjNyLGZhQ2FsZW5kYXJDaGVjazpzM3IsZmFGYWNlS2lzczpSemUsZmFLaXNzOmwzcixmYUtpdGNoZW5TZXQ6YzNyLGZhRG5hOmQzcixmYUNoaWxkUmVhY2hpbmc6dTNyLGZhUGFzdGU6RXcsZmFGaWxlQ2xpcGJvYXJkOmYzcixmYU1ldGVvcjpwM3IsZmFHZWFyczpCemUsZmFDb2dzOmgzcixmYUZpbGVDaXJjbGVQbHVzOm0zcixmYUljaWNsZXM6ZzNyLGZhQXJyb3dUcmVuZFVwOngzcixmYUhleGFnb25Ob2Rlc0JvbHQ6YjNyLGZhUXVlc3Rpb246djNyLGZhSGFuZHNCb3VuZDp5M3IsZmFQZXJzb25XYWxraW5nTHVnZ2FnZTp3M3IsZmFGaWxlQXJyb3dEb3duOkh6ZSxmYUZpbGVEb3dubG9hZDpNM3IsZmFQZXJzb25Cb290aDprM3IsZmFMb2N1c3Q6UzNyLGZhUmlnaHRMb25nOnF6ZSxmYUxvbmdBcnJvd0FsdFJpZ2h0OnozcixmYVRydWNrRHJvcGxldDpDM3IsZmFIYW5kSG9sZGluZ01lZGljYWw6XzNyLGZhSGFuZFBvaW50TGVmdDpUM3IsZmFDYWxjdWxhdG9yOkwzcixmYU1pbnVzOiR3LGZhU3VidHJhY3Q6RDNyLGZhQXJyb3dVcFpBOmp6ZSxmYVNvcnRBbHBoYVVwQWx0OkEzcixmYU1pY3JvcGhvbmVTbGFzaDpFM3IsZmFTcXVhcmVQZW46cjJlLGZhUGVuU3F1YXJlOiQzcixmYVBlbmNpbFNxdWFyZTpQM3IsZmFIYW5kRmlzdDpWemUsZmFGaXN0UmFpc2VkOkkzcixmYUNvbW1lbnRTbXM6VXplLGZhU21zOk4zcixmYVNpbUNhcmQ6RjNyLGZhU2NhbGVCYWxhbmNlZDpXemUsZmFCYWxhbmNlU2NhbGU6TzNyLGZhQ2FyOkd6ZSxmYUF1dG9tb2JpbGU6UjNyLGZhQ3JvcFNpbXBsZTpZemUsZmFDcm9wQWx0OkIzcixmYU1lZGFsOkgzcixmYVNjcm9sbDpxM3IsZmFGaWxlRXhjZWw6ajNyLGZhRmlsdGVyOlYzcixmYURydW06VTNyLGZhTWFwUGluOlczcixmYVNjYWxlVW5iYWxhbmNlZEZsaXA6WnplLGZhQmFsYW5jZVNjYWxlUmlnaHQ6RzNyLGZhQXJyb3dzVG9DaXJjbGU6WTNyLGZhRW52ZWxvcGU6WjNyLGZhQmFieTpYM3IsZmFTcXVhcmVDYXJldERvd246WHplLGZhQ2FyZXRTcXVhcmVEb3duOlEzcixmYVRlbnQ6SzNyLGZhQTpKM3IsZmFQYXJhY2h1dGVCb3g6ZWRyLGZhQ2FydEFycm93RG93bjp0ZHIsZmFCcmlkZ2VDaXJjbGVFeGNsYW1hdGlvbjpyZHIsZmFDbG91ZEFycm93VXA6YTJlLGZhQ2xvdWRVcGxvYWQ6YWRyLGZhQ2xvdWRVcGxvYWRBbHQ6aWRyLGZhQXQ6b2RyLGZhSW5kaWFuUnVwZWVTaWduOmkyZSxmYUluZGlhblJ1cGVlOm5kcixmYUlucjpzZHIsZmFUcnVjazpsZHIsZmFDaGFsa2JvYXJkVXNlcjpRemUsZmFDaGFsa2JvYXJkVGVhY2hlcjpjZHIsZmFVc2VyQ2hlY2s6ZGRyLGZhVXNlck5pbmphOnVkcixmYVBsYW50V2lsdDpmZHIsZmFXZWlnaHRTY2FsZTpLemUsZmFXZWlnaHQ6cGRyLGZhQ2FyZXRSaWdodDpLMmUsZmFGbG9yaW5TaWduOmhkcixmYUJlbGw6SjJlLGZhTGFyaVNpZ246bWRyLGZhTWlsbFNpZ246Z2RyLGZhUGVyc29uU25vd2JvYXJkaW5nOkp6ZSxmYVNub3dib2FyZGluZzp4ZHIsZmFUdHk6ZUNlLGZhVGVsZXR5cGU6YmRyLGZhVXNlcnNSZWN0YW5nbGU6dmRyLGZhTW9iaWxlOm8yZSxmYU1vYmlsZUFuZHJvaWQ6eWRyLGZhTW9iaWxlUGhvbmU6d2RyLGZhQXJyb3dzVHVyblRvRG90czpNZHIsZmFFeGNsYW1hdGlvbjprZHIsZmFDaHVyY2g6U2RyLGZhVG9nZ2xlT2ZmOnpkcixmYVNob2VQcmludHM6Q2RyLGZhRmlsZUNpcmNsZUV4Y2xhbWF0aW9uOl9kcixmYVdhbGxldDplbGUsZmFNZXNzYWdlOlB3LGZhQ29tbWVudEFsdDpUZHIsZmFUcm9waHk6TGRyLGZhRmFjZURpenp5OnRDZSxmYURpenp5OkRkcixmYUJhY3RlcmlhOkFkcixmYUVhckRlYWY6Z3csZmFEZWFmOkVkcixmYURlYWZuZXNzOiRkcixmYUhhcmRPZkhlYXJpbmc6UGRyLGZhUGVvcGxlQXJyb3dzOnJDZSxmYVBlb3BsZUFycm93c0xlZnRSaWdodDpJZHIsZmFIYW5kc0NsYXBwaW5nOk5kcixmYVZpcnVzQ292aWRTbGFzaDpGZHIsZmFDYWxlbmRhckRheXM6YUNlLGZhQ2FsZW5kYXJBbHQ6T2RyLGZhRGlhbW9uZFR1cm5SaWdodDppQ2UsZmFEaXJlY3Rpb25zOlJkcixmYUhhbmRQb2ludFVwOkJkcixmYUJlemllckN1cnZlOkhkcixmYVBlcnNvbkhhbGZEcmVzczpxZHIsZmFTcXVhcmVQb2xsSG9yaXpvbnRhbDpvQ2UsZmFQb2xsSDpqZHIsZmFTY2hvb2xDaXJjbGVYbWFyazpWZHIsZmFIYW5kTGl6YXJkOlVkcixmYUNoYWxrYm9hcmQ6bkNlLGZhQmxhY2tib2FyZDpXZHIsZmFVcFJpZ2h0RnJvbVNxdWFyZTpzQ2UsZmFFeHRlcm5hbExpbmtBbHQ6R2RyLGZhU3F1YXJlRnVsbDpZZHIsZmFDbG92ZXI6WmRyLGZhVGVldGhPcGVuOlhkcixmYUJhcnNTdGFnZ2VyZWQ6bjJlLGZhUmVvcmRlcjpRZHIsZmFTdHJlYW06S2RyLGZhV2FyZWhvdXNlOkpkcixmYVN3YXRjaGJvb2s6ZTZyLGZhQ2FtcGdyb3VuZDp0NnIsZmFQZXJzb25XYWxraW5nQXJyb3dSaWdodDpyNnIsZmFHbGFzc2VzOmE2cixmYUNpcmNsZVBhdXNlOmxDZSxmYVBhdXNlQ2lyY2xlOmk2cixmYU1lbW9yeTpvNnIsZmFHaWZ0Om42cixmYU1vbmV5QmlsbFdoZWF0OnM2cixmYUR1bmdlb246bDZyLGZhU3VpdGNhc2VNZWRpY2FsOmNDZSxmYU1lZGtpdDpjNnIsZmFQZXJzb25DYW5lOmQ2cixmYUdhdWdlOnh3LGZhRGFzaGJvYXJkOnU2cixmYUdhdWdlTWVkOmY2cixmYVRhY2hvbWV0ZXJBbHRBdmVyYWdlOnA2cixmYUVudmVsb3BlT3BlblRleHQ6aDZyLGZhVG9vbGJveDptNnIsZmFQb3dlck9mZjpnNnIsZmFTaWduYWw6czJlLGZhU2lnbmFsNTp4NnIsZmFTaWduYWxQZXJmZWN0OmI2cixmYUFycm93c1NwaW46djZyLGZhSm9pbnQ6eTZyLGZhQnJhaWxsZTp3NnIsZmFCYXNrZXRTaG9wcGluZzpkQ2UsZmFTaG9wcGluZ0Jhc2tldDpNNnIsZmFCcmlkZ2U6azZyLGZhUGxhbmVBcnJpdmFsOlM2cixmYUNhc2hSZWdpc3Rlcjp6NnIsZmFSaW5nOkM2cixmYUFxdWFyaXVzOl82cixmYVNoYXJlTm9kZXM6dUNlLGZhU2hhcmVBbHQ6VDZyLGZhUGVyc29uQ2lyY2xlRXhjbGFtYXRpb246TDZyLGZhQmlub2N1bGFyczpENnIsZmFLaXBTaWduOkE2cixmYUhhcmREcml2ZTpmQ2UsZmFIZGQ6RTZyLGZhUmFua2luZ1N0YXI6JDZyLGZhVXNlclRpZTpQNnIsZmFFbGxpcHNpczpwQ2UsZmFFbGxpcHNpc0g6STZyLGZhU3RvcmVTbGFzaDpONnIsZmFQZXJjZW50OmhDZSxmYVBlcmNlbnRhZ2U6RjZyLGZhRmlsZVppcHBlcjptQ2UsZmFGaWxlQXJjaGl2ZTpPNnIsZmFEaXNwbGF5OlI2cixmYUljb25zOmdDZSxmYUhlYXJ0TXVzaWNDYW1lcmFCb2x0OkI2cixmYVJ1bGVyVmVydGljYWw6SDZyLGZhTWFwTG9jYXRpb25Eb3Q6eENlLGZhTWFwTWFya2VkQWx0OnE2cixmYUhlYXJ0Q3JhY2s6YkNlLGZhSGVhcnRCcm9rZW46ajZyLGZhQ293OlY2cixmYVJzczpJdyxmYUZlZWQ6VTZyLGZhTWFnbmlmeWluZ0dsYXNzOk53LGZhU2VhcmNoOlc2cixmYUNsb3VkTW9vbjpHNnIsZmFCb3hlc1N0YWNrZWQ6bDJlLGZhQm94ZXM6WTZyLGZhQm94ZXNBbHQ6WjZyLGZhQ29kZUJyYW5jaDpYNnIsZmFCYW46dkNlLGZhQ2FuY2VsOlE2cixmYUp1Z0RldGVyZ2VudDpLNnIsZmFSZXBseTp5Q2UsZmFNYWlsUmVwbHk6SjZyLGZhU3VuUGxhbnRXaWx0OmV1cixmYUJhY3Rlcml1bTp0dXIsZmFSZWNvcmRWaW55bDpydXIsZmFGbG9wcHlEaXNrOndDZSxmYVNhdmU6YXVyLGZhVG9pbGV0c1BvcnRhYmxlOml1cixmYU86b3VyLGZhUGFsZXR0ZTpudXIsZmFVbmxvY2s6c3VyLGZhRWFyTGlzdGVuOk1DZSxmYUFzc2lzdGl2ZUxpc3RlbmluZ1N5c3RlbXM6bHVyLGZhQ29kZVB1bGxSZXF1ZXN0OmN1cixmYUtleTpkdXIsZmFTa3VsbDp1dXIsZmFNYXJzU3Ryb2tlVXA6a0NlLGZhTWFyc1N0cm9rZVY6ZnVyLGZhRmlyZUZsYW1lU2ltcGxlOlNDZSxmYUJ1cm46cHVyLGZhVHJlZTpodXIsZmFTbW9nOm11cixmYVM6Z3VyLGZhSmVkaTp4dXIsZmFQZXJzb25IaWtpbmc6ekNlLGZhSGlraW5nOmJ1cixmYUFycm93c1VwVG9MaW5lOnZ1cixmYU1hcnNEb3VibGU6eXVyLGZhVGhlcm1vbWV0ZXI6d3VyLGZhUGFpbnRicnVzaDpDQ2UsZmFQYWludEJydXNoOk11cixmYU5ldXRlcjprdXIsZmFTcXVhcmVQaG9uZUZsaXA6X0NlLGZhUGhvbmVTcXVhcmVBbHQ6U3VyLGZhRmFjZUdyaW5Ub25ndWVTcXVpbnQ6VENlLGZhR3JpblRvbmd1ZVNxdWludDp6dXIsZmFDb21tZW50RG9sbGFyOkN1cixmYUhpcHBvOl91cixmYUJvd2xGb29kOlR1cixmYVNxdWFyZVZpcnVzOkx1cixmYUNsb3VkU3VuUmFpbjpEdXIsZmFBcnJvd1JpZ2h0TG9uZzpMQ2UsZmFMb25nQXJyb3dSaWdodDpBdXIsZmFCdWlsZGluZ1VuOkV1cixmYVRlbXBlcmF0dXJlTG93OiR1cixmYURvb3JPcGVuOlB1cixmYUFsaWduTGVmdDpJdXIsZmFDYW1lcmE6RENlLGZhQ2FtZXJhQWx0Ok51cixmYVVzZXJzUmF5czpGdXIsZmFSYWluYm93Ok91cixmYVNpdGVtYXA6UnVyLGZhRmFjZUdyaW5TdGFyczpBQ2UsZmFHcmluU3RhcnM6QnVyLGZhU29ydFVwOkVDZSxmYVNvcnRBc2M6SHVyLGZhRXllOnRsZSxmYUNhcmV0TGVmdDpybGUsZmFBcHBsZVdob2xlOiRDZSxmYUFwcGxlQWx0OnF1cixmYVNjcm9sbFRvcmFoOlBDZSxmYVRvcmFoOmp1cixmYUhvdXNlTG9jazpWdXIsZmFBcnJvd3NMZWZ0UmlnaHRUb0xpbmU6VXVyLGZhVHJhc2g6WXcsZmFGYWNlU2FkVGVhcjpJQ2UsZmFTYWRUZWFyOld1cixmYUZheDpHdXIsZmFQZXJzb25DaXJjbGVQbHVzOll1cixmYUhhbXNhOlp1cixmYVBlcnNvbkNpcmNsZVF1ZXN0aW9uOlh1cixmYUNsaXBib2FyZENoZWNrOlF1cixmYVNoYXJlRnJvbVNxdWFyZTpOQ2UsZmFTaGFyZVNxdWFyZTpLdXIsZmFSZWNlaXB0OmFsZSxmYUVxdWFsczpKdXIsZmFDaGV2cm9uVXA6ZWZyLGZhVmlydXNTbGFzaDp0ZnIsZmFTbGFzaDpyZnIsZmFFeHBhbmQ6YWZyLGZhTm90ZVN0aWNreTpGQ2UsZmFTdGlja3lOb3RlOmlmcixmYVRhYmxlQ29sdW1uczpPQ2UsZmFDb2x1bW5zOm9mcixmYVBlcnNvblNoZWx0ZXI6bmZyLGZhQ2lyY2xlTm90Y2g6c2ZyLGZhV2F0ZXI6bGZyLGZhRGVsZXRlTGVmdDpSQ2UsZmFCYWNrc3BhY2U6Y2ZyLGZhQnJvb21CYWxsOmMyZSxmYVF1aWRkaXRjaDpkZnIsZmFRdWlkZGl0Y2hCcm9vbUJhbGw6dWZyLGZhSjpmZnIsZmFTaHV0dGxlU3BhY2U6QkNlLGZhU3BhY2VTaHV0dGxlOnBmcixmYVlpbllhbmc6aGZyLGZhU3RvcDptZnIsZmFUcm93ZWw6Z2ZyLGZhSGFuZEJhY2tGaXN0OkhDZSxmYUhhbmRSb2NrOnhmcixmYVRlbXBlcmF0dXJlSGlnaDpiZnIsZmFHcmVhdGVyVGhhbjp2ZnIsZmFDcnV0Y2g6eWZyLGZhU2VwdGFnb246cUNlLGZhSGVwdGFnb246d2ZyLGZhU3RyZWV0VmlldzpNZnIsZmFXYXZlU3F1YXJlOmtmcixmYUFuZ2xlTGVmdDpTZnIsZmFTY3Jld2RyaXZlcjp6ZnIsZmFUcmFjdG9yOkNmcixmYUJyaWRnZUNpcmNsZVhtYXJrOl9mcixmYVZpYWxzOlRmcixmYVN0ZXRob3Njb3BlOkxmcixmYVBvZGNhc3Q6RGZyLGZhQXJyb3dVcFJpZ2h0RG90czpBZnIsZmFDaGVzc1F1ZWVuOkVmcixmYUFuY2hvckNpcmNsZUV4Y2xhbWF0aW9uOiRmcixmYUVsbGlwc2lzVmVydGljYWw6akNlLGZhRWxsaXBzaXNWOlBmcixmYUhlYXJ0Q2lyY2xlRXhjbGFtYXRpb246SWZyLGZhQnVpbGRpbmdDaXJjbGVFeGNsYW1hdGlvbjpOZnIsZmFQZXJzb25BcnJvd1VwRnJvbUxpbmU6RmZyLGZhTm90RXF1YWw6T2ZyLGZhVHJhaW5UcmFtOlJmcixmYVBsYW5lRGVwYXJ0dXJlOkJmcixmYVJpZ2h0VG9CcmFja2V0OlZDZSxmYVNpZ25JbkFsdDpIZnIsZmFTZENhcmQ6cWZyLGZhSG91c2VDaXJjbGVFeGNsYW1hdGlvbjpqZnIsZmFTaGVrZWxTaWduOiQ5LGZhSWxzOlZmcixmYVNoZWtlbDpVZnIsZmFTaGVxZWw6V2ZyLGZhU2hlcWVsU2lnbjpHZnIsZmFSYWRpbzpZZnIsZmFIYW5kRG90czpVQ2UsZmFBbGxlcmdpZXM6WmZyLGZhQm9va1NrdWxsOldDZSxmYUJvb2tEZWFkOlhmcixmYVVubG9ja0tleWhvbGU6R0NlLGZhVW5sb2NrQWx0OlFmcixmYUZpbGVBcnJvd1VwOllDZSxmYUZpbGVVcGxvYWQ6S2ZyLGZhRmFjZUdyaW5UZWFyczpaQ2UsZmFHcmluVGVhcnM6SmZyLGZhUGVuVG9TcXVhcmU6RncsZmFFZGl0OmU1cixmYUVhcnRoRXVyb3BlOlhDZSxmYUdsb2JlRXVyb3BlOnQ1cixmYUZhY2VHcmluQmVhbVN3ZWF0OlFDZSxmYUdyaW5CZWFtU3dlYXQ6cjVyLGZhQ2lyY2xlSGFsZlN0cm9rZTpLQ2UsZmFBZGp1c3Q6YTVyLGZhUGVyc29uTWlsaXRhcnlUb1BlcnNvbjppNXIsZmFUYWJsZUNlbGxzQ29sdW1uTG9jazpvNXIsZmFUcnVja0ZpZWxkVW46bjVyLGZhQ2xvY2s6SkNlLGZhQ2xvY2tGb3VyOnM1cixmYUJvb2s6bDVyLGZhRmFjZUxhdWdoV2luazplX2UsZmFMYXVnaFdpbms6YzVyLGZhQ2xvdWRNZWF0YmFsbDpkNXIsZmFDaGFydEFyZWE6dF9lLGZhQXJlYUNoYXJ0OnU1cixmYVJ1cGlhaFNpZ246ZjVyLGZhVGV4dFdpZHRoOnA1cixmYVNhdGVsbGl0ZTpoNXIsZmFNYWduaWZ5aW5nR2xhc3NNaW51czpyX2UsZmFTZWFyY2hNaW51czptNXIsZmFQZW9wbGVHcm91cDpnNXIsZmFTcXVhcmVCaW5hcnk6eDVyLGZhTWFza3NUaGVhdGVyOmFfZSxmYVRoZWF0ZXJNYXNrczpiNXIsZmFDYXJ0UGx1czp2NXIsZmFIYW5kc0FzbEludGVycHJldGluZzpidyxmYUFtZXJpY2FuU2lnbkxhbmd1YWdlSW50ZXJwcmV0aW5nOnk1cixmYUFzbEludGVycHJldGluZzp3NXIsZmFIYW5kc0FtZXJpY2FuU2lnbkxhbmd1YWdlSW50ZXJwcmV0aW5nOk01cixmYVRhYmxlQ2VsbHNSb3dVbmxvY2s6azVyLGZhUm9ja2V0OlM1cixmYVNocmltcDp6NXIsZmFUZW5nZVNpZ246aV9lLGZhVGVuZ2U6QzVyLGZhSG91c2VDaGltbmV5TWVkaWNhbDpvX2UsZmFDbGluaWNNZWRpY2FsOl81cixmYVVzZXJzU2xhc2g6VDVyLGZhUGFwZXJQbGFuZTpMNXIsZmFCb29rQXRsYXM6bl9lLGZhQXRsYXM6RDVyLGZhVGFibGU6QTVyLGZhSGVhcnQ6RTVyLGZhQ2lyY2xlQ2hldnJvblVwOnNfZSxmYUNoZXZyb25DaXJjbGVVcDokNXIsZmFCYXR0ZXJ5SGFsZjpsX2UsZmFCYXR0ZXJ5MzpQNXIsZmFGb250QXdlc29tZTpkMmUsZmFGb250QXdlc29tZUZsYWc6STVyLGZhRm9udEF3ZXNvbWVMb2dvRnVsbDpONXIsZmFIYW5kY3VmZnM6RjVyLGZhSGF0Q293Ym95U2lkZTpPNXIsZmFJbmR1c3RyeTpSNXIsZmFMaW5lc0xlYW5pbmc6QjVyLGZhUGFzc3BvcnQ6SDVyLGZhSW5maW5pdHk6cTVyLGZhQ2xvbmU6ajVyLGZhRm9yd2FyZDpWNXIsZmFNOlU1cixmYVJvYWRTcGlrZXM6VzVyLGZhTW91bnRhaW46RzVyLGZhQ2hlc3M6WTVyLGZhVGVtcGVyYXR1cmVUaHJlZVF1YXJ0ZXJzOnZ3LGZhVGVtcGVyYXR1cmUzOlo1cixmYVRoZXJtb21ldGVyMzpYNXIsZmFUaGVybW9tZXRlclRocmVlUXVhcnRlcnM6UTVyLGZhQjpLNXIsZmFTaGllbGRWaXJ1czpKNXIsZmFMaXRlY29pblNpZ246ZXByLGZhRGljZUQ2OnRwcixmYUdyaXBMaW5lc1ZlcnRpY2FsOnJwcixmYUdvbGZCYWxsVGVlOmNfZSxmYUdvbGZCYWxsOmFwcixmYUhleGFnb246aXByLGZhRm9sZGVyT3BlbjpvcHIsZmFLYWFiYTpucHIsZmFIYW5kSG9sZGluZzpzcHIsZmFTaW5nbGVRdW90ZVJpZ2h0OmxwcixmYUJvdHRsZURyb3BsZXQ6Y3ByLGZhV2luZG93TWluaW1pemU6ZHByLGZhQ2hldnJvblJpZ2h0OnVwcixmYUVnZzpmcHIsZmFMYW5kbWFya0RvbWU6ZF9lLGZhTGFuZG1hcmtBbHQ6cHByLGZhV29ybTpocHIsZmFVc2VySW5qdXJlZDptcHIsZmFTdHJpa2V0aHJvdWdoOmdwcixmYUJsb2c6eHByLGZhU3RvcHdhdGNoMjA6YnByLGZhVHJ1Y2tQaWNrdXA6dnByLGZhU2VlZGxpbmc6dV9lLGZhU3Byb3V0OnlwcixmYVRyYW5zZ2VuZGVyOmZfZSxmYVRyYW5zZ2VuZGVyQWx0OndwcixmYVN0YXJIYWxmOk1wcixmYVBob3RvRmlsbTpwX2UsZmFQaG90b1ZpZGVvOmtwcixmYVBpY3R1cmVJblBpY3R1cmU6U3ByLGZhUHVtcE1lZGljYWw6enByLGZhRmlyZTpDcHIsZmFNYWduaWZ5aW5nR2xhc3NQbHVzOmhfZSxmYVNlYXJjaFBsdXM6X3ByLGZhRmxhc2s6VHByLGZhQWxpZ25SaWdodDpMcHIsZmFDYWJsZUNhcjptX2UsZmFUcmFtOkRwcixmYUtpdE1lZGljYWw6Z19lLGZhRmlyc3RBaWQ6QXByLGZhR3JpcExpbmVzOkVwcixmYUJ1cmdlcjp4X2UsZmFIYW1idXJnZXI6JHByLGZhU25vd21hbjpQcHIsZmFIb3RlbDpJcHIsZmFQcmludDpOcHIsZmFWb2xsZXliYWxsOmJfZSxmYVZvbGxleWJhbGxCYWxsOkZwcixmYVRyYWZmaWNMaWdodDpPcHIsZmFQbGFuZUNpcmNsZUNoZWNrOlJwcixmYVVzZXJzOmlsZSxmYUNlcnRpZmljYXRlOkJwcixmYUFsYXJtQ2xvY2s6SHByLGZhSGVsaWNvcHRlclN5bWJvbDpxcHIsZmFIb3VzZUNoaW1uZXlDcmFjazp2X2UsZmFIb3VzZURhbWFnZTpqcHIsZmFQZXJzb25NaWxpdGFyeVBvaW50aW5nOlZwcixmYURhdGFiYXNlOlVwcixmYU5ld3NwYXBlcjpXcHIsZmFDbG91ZFJhaW46R3ByLGZhTWF4aW1pemU6eV9lLGZhRXhwYW5kQXJyb3dzQWx0OllwcixmYUxvY2F0aW9uQXJyb3c6WnByLGZhQ2l0eTpYcHIsZmFYUmF5OlFwcixmYVVtYnJlbGxhQmVhY2g6S3ByLGZhQXJyb3dSaWdodFRvQnJhY2tldDp3X2UsZmFTaWduSW46SnByLGZhSGVhZHNldDplOHIsZmFTcGxvdGNoOnQ4cixmYVVwTG9uZzpNX2UsZmFMb25nQXJyb3dBbHRVcDpyOHIsZmFIZXhhZ29uTm9kZXM6YThyLGZhSG9zcGl0YWw6dTJlLGZhSG9zcGl0YWxBbHQ6aThyLGZhSG9zcGl0YWxXaWRlOm84cixmYVBlcnNvbkhhcmFzc2luZzpuOHIsZmFNb25leUJpbGxUcmVuZFVwOnM4cixmYVBlblJ1bGVyOmtfZSxmYVBlbmNpbFJ1bGVyOmw4cixmYVJlcGVhdDpjOHIsZmFCb25lOmQ4cixmYUZpcmVGbGFtZUN1cnZlZDpTX2UsZmFGaXJlQWx0OnU4cixmYUJ1c1NpbXBsZTp6X2UsZmFCdXNBbHQ6ZjhyLGZhVmVudXNNYXJzOnA4cixmYUJsZW5kZXI6aDhyLGZhVTptOHIsZmFTaGFyZTpPdyxmYU1haWxGb3J3YXJkOmc4cixmYVBob25lRmxpcDpDX2UsZmFQaG9uZUFsdDp4OHIsZmFUb2lsZXRQb3J0YWJsZTpiOHIsZmFQZXJzb25QcmVnbmFudDp2OHIsZmFMZXNzVGhhbjp5OHIsZmFTdXBlcnNjcmlwdDp3OHIsZmFDaXJjbGVTdG9wOl9fZSxmYVN0b3BDaXJjbGU6TThyLGZhQXJyb3dzVXBEb3duOlRfZSxmYUFycm93c1Y6azhyLGZhUG9vU3Rvcm06TF9lLGZhUG9vQm9sdDpTOHIsZmFWaWRlb1NsYXNoOno4cixmYVNxdWFyZVhtYXJrOmYyZSxmYVRpbWVzU3F1YXJlOkM4cixmYVhtYXJrU3F1YXJlOl84cixmYUhhbmRIb2xkaW5nRHJvcGxldDpEX2UsZmFIYW5kSG9sZGluZ1dhdGVyOlQ4cixmYVdvblNpZ246cDJlLGZhS3J3Okw4cixmYVdvbjpEOHIsZmFPYmplY3RVbmdyb3VwOkE4cixmYUNvbW1lbnQ6RThyLGZhSGlsbEF2YWxhbmNoZTokOHIsZmFBcnJvd3NUb0V5ZTpQOHIsZmFTbm93cGxvdzpJOHIsZmFDaGFydEdhbnR0Ok44cixmYVZpZGVvOkFfZSxmYVZpZGVvQ2FtZXJhOkY4cixmYUNoZXNzUGF3bjpPOHIsZmFTeW5hZ29ndWU6UjhyLGZhQnVpbGRpbmdDaXJjbGVDaGVjazpCOHIsZmFDYWxlbmRhclBsdXM6SDhyLGZhV2hlZWxjaGFpck1vdmU6RV9lLGZhV2hlZWxjaGFpckFsdDpxOHIsZmFVc2VyU2hpZWxkOmo4cixmYUJvbGQ6VjhyLGZhSGVhcnRQdWxzZTokX2UsZmFIZWFydGJlYXQ6VThyLGZhU3F1YXJlUm9vdFZhcmlhYmxlOlBfZSxmYVNxdWFyZVJvb3RBbHQ6VzhyLGZhSGFuZHNCdWJibGVzOklfZSxmYUhhbmRzV2FzaDpHOHIsZmFNYXJrZXI6WThyLGZhQ2xpcGJvYXJkOlo4cixmYVBsYWNlT2ZXb3JzaGlwOlg4cixmYUNhbm5hYmlzOlE4cixmYVBlb3BsZVJvb2Y6SzhyLGZhRGlzZWFzZTpKOHIsZmFCb29rQmlibGU6Tl9lLGZhQmlibGU6ZWhyLGZhQ2hlc3NCb2FyZDp0aHIsZmFNYXJzOnJocixmYUxhcHRvcDphaHIsZmFVc2VyWG1hcms6Rl9lLGZhVXNlclRpbWVzOmlocixmYUZsYWdVc2E6b2hyLGZhSGFuZE1pZGRsZUZpbmdlcjpuaHIsZmFNb3J0YXJQZXN0bGU6c2hyLGZhSGVhZFNpZGVDb3VnaDpsaHIsZmFQbGFuZUxvY2s6Y2hyLGZhQmF0dGVyeVRocmVlUXVhcnRlcnM6T19lLGZhQmF0dGVyeTQ6ZGhyLGZhRnJhbmNTaWduOnVocixmYUZpbHRlckNpcmNsZURvbGxhcjpSX2UsZmFGdW5uZWxEb2xsYXI6ZmhyLGZhQ2hlZXNlOnBocixmYUNpcmNsZUg6Ql9lLGZhSG9zcGl0YWxTeW1ib2w6aGhyLGZhU2Nob29sOm1ocixmYURpY2VGaXZlOmdocixmYVRvcm5hZG86eGhyLGZhSmV0RmlnaHRlcjpIX2UsZmFGaWdodGVySmV0OmJocixmYVRodW1ic0Rvd246dmhyLGZhQnJvb206eWhyLGZhRmlsZUltcG9ydDpxX2UsZmFBcnJvd1JpZ2h0VG9GaWxlOndocixmYVV0ZW5zaWxzOmpfZSxmYUN1dGxlcnk6TWhyLGZhSWRCYWRnZTpraHIsZmFTcGlkZXI6U2hyLGZhTW9iaWxlUmV0cm86emhyLGZhU2lnbnNQb3N0OlZfZSxmYU1hcFNpZ25zOkNocixmYUdyb3VwQXJyb3dzUm90YXRlOl9ocixmYUFycm93c1NwbGl0VXBBbmRMZWZ0OlRocixmYUZpbGxEcmlwOkxocixmYVNoaWVsZEhlYXJ0OkRocixmYVBlcnNvblNraWluZ05vcmRpYzpVX2UsZmFTa2lpbmdOb3JkaWM6QWhyLGZhU3F1YXJlQ2hlY2s6V19lLGZhQ2hlY2tTcXVhcmU6RWhyLGZhQmF0aDpHX2UsZmFCYXRodHViOiRocixmYUNoZXNzQmlzaG9wOlBocixmYVByZXNjcmlwdGlvbkJvdHRsZU1lZGljYWw6WV9lLGZhUHJlc2NyaXB0aW9uQm90dGxlQWx0OklocixmYURyYXdQb2x5Z29uOlpfZSxmYVZlY3RvclBvbHlnb246TmhyLGZhSUN1cnNvcjpGaHIsZmFIZWFydENpcmNsZVBsdXM6T2hyLGZhU2hpZWxkRG9nOlJocixmYUdyZWF0ZXJUaGFuRXF1YWw6QmhyLGZhRW52ZWxvcGVPcGVuOkhocixmYU1vdW5kOnFocixmYVZvaWNlbWFpbDpqaHIsZmFWZXN0OlZocixmYUF1ZGlvRGVzY3JpcHRpb246VWhyLGZhVzpXaHIsZmFFeWVEcm9wcGVyOmgyZSxmYUV5ZURyb3BwZXJFbXB0eTpHaHIsZmFFeWVkcm9wcGVyOllocixmYUNpcmNsZVhtYXJrOkY5LGZhVGltZXNDaXJjbGU6WmhyLGZhWG1hcmtDaXJjbGU6WGhyLGZhVHJhaWxlcjpRaHIsZmFUdXJraXNoTGlyYVNpZ246bTJlLGZhVHJ5OktocixmYVR1cmtpc2hMaXJhOkpocixmYVZvbGNhbm86ZW1yLGZhV2FuZFNwYXJrbGVzOnRtcixmYU1pY3JvcGhvbmU6cm1yLGZhQ3Jvd246YW1yLGZhVGVudEFycm93VHVybkxlZnQ6aW1yLGZhVHJ1Y2tGYXN0OlhfZSxmYVNoaXBwaW5nRmFzdDpvbXIsZmFVc2VyUGVuOlFfZSxmYVVzZXJFZGl0Om5tcixmYVVzZXJDbG9jazpzbXIsZmFTaG93ZXI6bG1yLGZhU3F1YXJlQ2FyZXRVcDpLX2UsZmFDYXJldFNxdWFyZVVwOmNtcixmYU1hcExvY2F0aW9uOkpfZSxmYU1hcE1hcmtlZDpkbXIsZmFQZW5GYW5jeTp1bXIsZmFFdXJvU2lnbjpnMmUsZmFFdXI6Zm1yLGZhRXVybzpwbXIsZmFIb3VzZUNpcmNsZVhtYXJrOmhtcixmYUxpcmFTaWduOm1tcixmYVllblNpZ246UDksZmFDbnk6Z21yLGZhSnB5OnhtcixmYVJtYjpibXIsZmFZZW46dm1yLGZhQm94T3Blbjp5bXIsZmFUcnVja0ZpZWxkOndtcixmYUxvY2F0aW9uUGluTG9jazpNbXIsZmFQZXJzb25QcmF5aW5nOmVUZSxmYVByYXk6a21yLGZhQ2xpcGJvYXJkTGlzdDpTbXIsZmFTYWNrRG9sbGFyOnptcixmYU1vdW50YWluU3VuOkNtcixmYUFycm93VXBXaWRlU2hvcnQ6dFRlLGZhU29ydEFtb3VudFVwOl9tcixmYVVzZXJzTGluZTpUbXIsZmFTdGFyT2ZEYXZpZDpMbXIsZmFOb3Rlc01lZGljYWw6RG1yLGZhQXVzdHJhbFNpZ246QW1yLGZhQ2xpcGJvYXJkVXNlcjpFbXIsZmFGaWxlSW1hZ2U6JG1yLGZhU3F1YXJlQ2FyZXRSaWdodDpyVGUsZmFDYXJldFNxdWFyZVJpZ2h0OlBtcixmYVZpYWw6SW1yLGZhSGVsaWNvcHRlcjpObXIsZmFNaXR0ZW46Rm1yLGZhR2FzUHVtcDpPbXIsZmFFbnZlbG9wZUNpcmNsZUNoZWNrOlJtcixmYVBlcnNvblNrYXRpbmc6YVRlLGZhU2thdGluZzpCbXIsZmFTdW46b2xlLGZhQmFzZWJhbGw6aVRlLGZhQmFzZWJhbGxCYWxsOkhtcixmYUltYWdlOnFtcixmYU5vdGRlZjpqbXIsZmFCYXNrZXRiYWxsOm9UZSxmYUJhc2tldGJhbGxCYWxsOlZtcixmYVBlbmNpbDpuVGUsZmFQZW5jaWxBbHQ6VW1yLGZhUGVyc29uV2Fsa2luZ0Fycm93TG9vcExlZnQ6V21yLGZhRGljZVNpeDpHbXIsZmFBbmdsZXNEb3duOnNUZSxmYUFuZ2xlRG91YmxlRG93bjpZbXIsZmFTeXJpbmdlOlptcixmYVdoZWF0QXduOmxUZSxmYVdoZWF0QWx0OlhtcixmYVBsYW5lVXA6UW1yLGZhQWxpZ25DZW50ZXI6S21yLGZhSG9ja2V5UHVjazpKbXIsZmFDaXJjbGVBcnJvd0xlZnQ6Y1RlLGZhQXJyb3dDaXJjbGVMZWZ0OmU3cixmYVBsdWdDaXJjbGVCb2x0OnQ3cixmYVJlc3Ryb29tOnI3cixmYUFuY2hvckxvY2s6YTdyLGZhVGltZWxpbmU6aTdyLGZhTGlnaHRidWxiOm83cixmYUNpcmNsZUFycm93UmlnaHQ6ZFRlLGZhQXJyb3dDaXJjbGVSaWdodDpuN3IsZmFNYXJzQW5kVmVudXM6czdyLGZhTmV0d29ya1dpcmVkOm5sZSxmYUJ1aWxkaW5nU2hpZWxkOmw3cixmYUNvZGU6YzdyLGZhRmVhdGhlclBvaW50ZWQ6dVRlLGZhRmVhdGhlckFsdDpkN3IsZmFGaWxlQ2lyY2xlUXVlc3Rpb246dTdyLGZhU2lnbmF0dXJlOmY3cixmYUVhcnRoQW1lcmljYXM6eXcsZmFFYXJ0aDpwN3IsZmFFYXJ0aEFtZXJpY2E6aDdyLGZhR2xvYmVBbWVyaWNhczptN3IsZmFDYXJyb3Q6ZzdyLGZhVGVtcGVyYXR1cmVGdWxsOnd3LGZhVGVtcGVyYXR1cmU0Ong3cixmYVRoZXJtb21ldGVyNDpiN3IsZmFUaGVybW9tZXRlckZ1bGw6djdyLGZhVGFibGVDZWxsc1Jvd0xvY2s6eTdyLGZhQm9sdExpZ2h0bmluZzp3N3IsZmFDbG91ZFNob3dlcnNXYXRlcjpNN3IsZmFBcnJvd1VwTG9uZzpmVGUsZmFMb25nQXJyb3dVcDprN3IsZmFBZGRyZXNzQ2FyZDp4MmUsZmFDb250YWN0Q2FyZDpTN3IsZmFWY2FyZDp6N3IsZmFBbmdsZVJpZ2h0OkM3cixmYUZhY2VNZWg6cFRlLGZhTWVoOl83cixmYUFycm93VXBGcm9tR3JvdW5kV2F0ZXI6VDdyLGZhTWFwOkw3cixmYVVzZXJQbHVzOkQ3cixmYVZlbnVzOkE3cixmYURpYWdyYW1TdWNjZXNzb3I6RTdyLGZhSGVhZFNpZGVDb3VnaFNsYXNoOiQ3cixmYURpYWdyYW1Qcm9qZWN0OmhUZSxmYVByb2plY3REaWFncmFtOlA3cixmYVRlcm1pbmFsOnNsZSxmYUhvdXNlRmlyZTpJN3IsZmFNYXNrOk43cixmYUh1cnJpY2FuZTpGN3IsZmFFYXJ0aEFmcmljYTptVGUsZmFHbG9iZUFmcmljYTpPN3IsZmFUaHVtYnRhY2s6Z1RlLGZhVGh1bWJUYWNrOlI3cixmYUhhbmRQb2ludERvd246QjdyLGZhRmFjZU1laEJsYW5rOnhUZSxmYU1laEJsYW5rOkg3cixmYVRlbXBlcmF0dXJlRW1wdHk6TXcsZmFUZW1wZXJhdHVyZTA6cTdyLGZhVGhlcm1vbWV0ZXIwOmo3cixmYVRoZXJtb21ldGVyRW1wdHk6VjdyLGZhQm9yZGVyTm9uZTpVN3IsZmFIaWdobGlnaHRlcjpXN3IsZmFNb25leUJpbGxXYXZlOkc3cixmYVRvaWxldFBhcGVyU2xhc2g6WTdyLGZhRmlsZVNoaWVsZDpaN3IsZmFUZXh0SGVpZ2h0Olg3cixmYUZhY2VHcmluVG9uZ3VlOmJUZSxmYUdyaW5Ub25ndWU6UTdyLGZhRmlsZVNpZ25hdHVyZTpLN3IsZmFCdWlsZGluZ1doZWF0Oko3cixmYVBsdWdDaXJjbGVNaW51czplOXIsZmFGdXRib2w6YjJlLGZhRnV0Ym9sQmFsbDp0OXIsZmFTb2NjZXJCYWxsOnI5cixmYUNpcmNsZVBsdXM6dlRlLGZhUGx1c0NpcmNsZTphOXIsZmFCcmF6aWxpYW5SZWFsU2lnbjppOXIsZmFTdGFyQW5kQ3Jlc2NlbnQ6bzlyLGZhRmFjZVN1cnByaXNlOnlUZSxmYVN1cnByaXNlOm45cixmYUhvc3BpdGFsVXNlcjpzOXIsZmFBcnJvd0Rvd25VcExvY2s6bDlyLGZhRm9sZGVyOndUZSxmYUZvbGRlckJsYW5rOmM5cixmYUhvbGx5QmVycnk6ZDlyLGZhVmVudXNEb3VibGU6dTlyLGZhQ2xpcGJvYXJkUXVlc3Rpb246ZjlyLGZhSG90ZG9nOnA5cixmYUFycm93VXBGcm9tQnJhY2tldDpoOXIsZmFNaWNyb3Njb3BlOm05cixmYUNsb3VkOmc5cixmYUJhc2ViYWxsQmF0QmFsbDp4OXIsZmFDYXJSZWFyOk1UZSxmYUNhckFsdDpiOXIsZmFUaHVtYnRhY2tTbGFzaDprVGUsZmFUaHVtYlRhY2tTbGFzaDp2OXIsZmFQbHVzTWludXM6eTlyLGZhSG91c2VDaXJjbGVDaGVjazp3OXIsZmFDYWxlbmRhckRheTpNOXIsZmFMaWJyYTprOXIsZmFDaXJjbGU6UzlyLGZhTW9iaWxlVmlicmF0ZTp6OXIsZmFGYWNlR3JpblNxdWludDpTVGUsZmFHcmluU3F1aW50OkM5cixmYVVzZXJzQmV0d2VlbkxpbmVzOl85cixmYUhvdXNlTWVkaWNhbENpcmNsZVhtYXJrOlQ5cixmYVRhYmxlTGlzdDp6VGUsZmFUaExpc3Q6TDlyLGZhRmxhc2tWaWFsOkQ5cixmYUNpcmNsZUV4Y2xhbWF0aW9uOkNUZSxmYUV4Y2xhbWF0aW9uQ2lyY2xlOkE5cixmYVRheGk6X1RlLGZhQ2FiOkU5cixmYVRleHRTbGFzaDpUVGUsZmFSZW1vdmVGb3JtYXQ6JDlyLGZhUGVvcGxlUHVsbGluZzpQOXIsZmFCYWNrd2FyZDpJOXIsZmFDYXJCdXJzdDpMVGUsZmFDYXJDcmFzaDpOOXIsZmFMaW5rOkRUZSxmYUNoYWluOkY5cixmYUJhY2t3YXJkU3RlcDpBVGUsZmFTdGVwQmFja3dhcmQ6TzlyLGZhWDpSOXIsZmFDaXJjbGVVc2VyOkVUZSxmYVVzZXJDaXJjbGU6QjlyLGZhUmVjdGFuZ2xlTGlzdDokVGUsZmFMaXN0QWx0Okg5cixmYUhhbmQ6UFRlLGZhSGFuZFBhcGVyOnE5cixmYUNhbmNlcjpqOXIsZmFWYW5TaHV0dGxlOklUZSxmYVNodXR0bGVWYW46VjlyLGZhU3RhaXJzOlU5cixmYUhvcnNlSGVhZDpXOXIsZmFWYXVsdDpHOXIsZmFDbG9zZWRDYXB0aW9uaW5nU2xhc2g6WTlyLGZhRHJ1bVN0ZWVscGFuOlo5cixmYVRodW1ic1VwOlg5cixmYVN0YW1wOlE5cixmYU1lbm9yYWg6SzlyLGZhQ2hpbGRyZW46SjlyLGZhQ2hhcnRMaW5lOk5UZSxmYUxpbmVDaGFydDplZ3IsZmFTcXVhcmVFbnZlbG9wZTpGVGUsZmFFbnZlbG9wZVNxdWFyZTp0Z3IsZmFCYW5TbW9raW5nOk9UZSxmYVNtb2tpbmdCYW46cmdyLGZhVHJ1Y2tGcm9udDphZ3IsZmFCdWlsZGluZzpsbGUsZmFCdWxsc2V5ZTppZ3IsZmFBcnJvd0xlZnRMb25nOlJUZSxmYUxvbmdBcnJvd0xlZnQ6b2dyLGZhQ2hlc3NSb29rOm5ncixmYUJsZW5kZXJQaG9uZTpzZ3IsZmFBcnJvd1R1cm5VcDpCVGUsZmFMZXZlbFVwOmxncixmYUJpY3ljbGU6Y2dyLGZhQ2lyY2xlQXJyb3dEb3duOkhUZSxmYUFycm93Q2lyY2xlRG93bjpkZ3IsZmFHZWFyOlJ3LGZhQ29nOnVncixmYU1hcnNBbmRWZW51c0J1cnN0OmZncixmYU90dGVyOnBncixmYUNpcmNsZUNoZXZyb25MZWZ0OnFUZSxmYUNoZXZyb25DaXJjbGVMZWZ0OmhncixmYUNpcmNsZVF1ZXN0aW9uOmpUZSxmYVF1ZXN0aW9uQ2lyY2xlOm1ncixmYVdhbGtpZVRhbGtpZTpnZ3IsZmFVc2VyR3JvdXA6VlRlLGZhVXNlckZyaWVuZHM6eGdyLGZhSG91c2VDaGltbmV5OlVUZSxmYUhvbWVMZzpiZ3IsZmFSaWdodEZyb21CcmFja2V0OldUZSxmYVNpZ25PdXRBbHQ6dmdyLGZhRmlsZTp5Z3IsZmFQbGFuZVNsYXNoOndncixmYUNsb3VkU2hvd2Vyc0hlYXZ5Ok1ncixmYVBlcnNvbkZhbGxpbmc6a2dyLGZhVHVybkRvd246R1RlLGZhTGV2ZWxEb3duQWx0OlNncixmYVVwUmlnaHRBbmREb3duTGVmdEZyb21DZW50ZXI6WVRlLGZhRXhwYW5kQWx0OnpncixmYVVzZXJUYWc6Q2dyLGZhSGFuZFNwYXJrbGVzOl9ncixmYUFycm93c1RvRG90OlRncixmYUZhY2VTYWRDcnk6WlRlLGZhU2FkQ3J5OkxncixmYURvbmdTaWduOkRncixmYVBlb3BsZUxpbmU6QWdyLGZhU3F1YXJlUnNzOlhUZSxmYVJzc1NxdWFyZTpFZ3IsZmFDYWxlbmRhck1pbnVzOiRncixmYUNoYXJ0RGlhZ3JhbTpQZ3IsZmFGYWNlVGlyZWQ6UVRlLGZhVGlyZWQ6SWdyLGZhSGFuZFBvaW50UmlnaHQ6TmdyLGZhQXJyb3dVcDpGZ3IsZmFDdWJlc1N0YWNrZWQ6T2dyLGZhQ2hpbGRDb21iYXRhbnQ6S1RlLGZhQ2hpbGRSaWZsZTpSZ3IsZmFWZXN0UGF0Y2hlczpCZ3IsZmFNYXJ0aW5pR2xhc3NFbXB0eTpKVGUsZmFHbGFzc01hcnRpbmk6SGdyLGZhTWFnbmV0OnFncixmYVJvYWRCYXJyaWVyOmpncixmYUNvbXBhc3NEcmFmdGluZzplTGUsZmFEcmFmdGluZ0NvbXBhc3M6VmdyLGZhU3F1YXJlUGVyc29uQ29uZmluZWQ6VWdyLGZhUGxhdGVXaGVhdDpXZ3IsZmFTaWduSGFuZ2luZzp0TGUsZmFTaWduOkdncixmYUNhckJhdHRlcnk6ckxlLGZhQmF0dGVyeUNhcjpZZ3IsZmFTaGlydDp2MmUsZmFUU2hpcnQ6WmdyLGZhVHNoaXJ0OlhncixmYVBhcmFncmFwaDpRZ3IsZmFFbnZlbG9wZXNCdWxrOmFMZSxmYU1haWxCdWxrOktncixmYUd1aXRhcjpKZ3IsZmFTdWl0Y2FzZTpleHIsZmFDaXJjbGVVcDppTGUsZmFBcnJvd0FsdENpcmNsZVVwOnR4cixmYUY6cnhyLGZhWG1hcmtzTGluZXM6YXhyLGZhRWFydGhPY2VhbmlhOm9MZSxmYUdsb2JlT2NlYW5pYTppeHIsZmFDb21tZW50U2xhc2g6b3hyLGZhUGxheTpueHIsZmFWaWFsQ2lyY2xlQ2hlY2s6c3hyLGZhQnJpZGdlQ2lyY2xlQ2hlY2s6bHhyLGZhQ2VkaVNpZ246Y3hyLGZhUHV6emxlUGllY2U6ZHhyLGZhSGVsbWV0VW46dXhyLGZhR2xhc3NXYXRlcjpmeHIsZmFIZWFydENpcmNsZUJvbHQ6cHhyLGZhUHVtcFNvYXA6aHhyLGZhSGFuZFNjaXNzb3JzOm14cixmYURvbGx5Om5MZSxmYURvbGx5Qm94Omd4cixmYVBhcGVyY2xpcDpjbGUsZmFEZW1vY3JhdDp4eHIsZmFTcXVhcmVBcnJvd1VwUmlnaHQ6c0xlLGZhRXh0ZXJuYWxMaW5rU3F1YXJlOmJ4cixmYUZlcnJ5OnZ4cixmYU1vc3F1aXRvOnl4cixmYUJ1aWxkaW5nQ2lyY2xlQXJyb3dSaWdodDp3eHIsZmFMZWZ0UmlnaHQ6bExlLGZhQXJyb3dzQWx0SDpNeHIsZmFWaXJ1czpreHIsZmFHZW06U3hyLGZhVG9pbGV0Onp4cixmYVNpbmdsZVF1b3RlTGVmdDpDeHIsZmFNb25leUJpbGxzOl94cixmYVRhYmxldEJ1dHRvbjpUeHIsZmFSZWN0YW5nbGVYbWFyazprdyxmYVJlY3RhbmdsZVRpbWVzOkx4cixmYVRpbWVzUmVjdGFuZ2xlOkR4cixmYVdpbmRvd0Nsb3NlOkF4cixmYVdyZW5jaDpFeHIsZmFUcmFzaENhbjpCdyxmYVRyYXNoQWx0OiR4cixmYVRhYmxlQ2VsbHM6Y0xlLGZhVGg6UHhyLGZhUmliYm9uOkl4cixmYUxhbmRtYXJrRmxhZzpOeHIsZmFVcERvd25MZWZ0UmlnaHQ6ZExlLGZhQXJyb3dzQWx0OkZ4cixmYUNhclNpZGU6T3hyLGZhVHJhc2hBcnJvd1VwOnVMZSxmYVRyYXNoUmVzdG9yZTpSeHIsZmFMaWZlUmluZzpCeHIsZmFDb3B5cmlnaHQ6SHhyLGZhRmlsZVByZXNjcmlwdGlvbjpxeHIsZmFFcmFzZXI6anhyLGZhSG91cmdsYXNzU3RhcnQ6ZkxlLGZhSG91cmdsYXNzMTpWeHIsZmFDaXJjbGVMZWZ0OnBMZSxmYUFycm93QWx0Q2lyY2xlTGVmdDpVeHIsZmFDcnV6ZWlyb1NpZ246V3hyLGZhU21va2luZzpHeHIsZmFTcXVhcmVQb2xsVmVydGljYWw6aExlLGZhUG9sbDpZeHIsZmFQZXJzb25DaXJjbGVNaW51czpaeHIsZmFCaW9oYXphcmQ6WHhyLGZhQmVsbENvbmNpZXJnZTptTGUsZmFDb25jaWVyZ2VCZWxsOlF4cixmYVJ1bGVySG9yaXpvbnRhbDpLeHIsZmFIb3JzZTpKeHIsZmFDYWxlbmRhcjplYnIsZmFIYW5kc0hvbGRpbmdDaGlsZDp0YnIsZmFJdGFsaWM6cmJyLGZhS2hhbmRhOmFicixmYUZhY2VGcm93bk9wZW46Z0xlLGZhRnJvd25PcGVuOmlicixmYUNoZWNrOmRsZSxmYUZpbmdlcnByaW50Om9icixmYUNoYXJnaW5nU3RhdGlvbjpuYnIsZmFVc2VyTG9jazpzYnIsZmFNb2JpbGVTY3JlZW5CdXR0b246eExlLGZhTW9iaWxlQWx0OmxicixmYUFuY2hvckNpcmNsZUNoZWNrOmNicixmYVBlcnNvbldhbGtpbmdXaXRoQ2FuZTpiTGUsZmFCbGluZDpkYnIsZmFGaWxlV2F2ZWZvcm06dkxlLGZhRmlsZU1lZGljYWxBbHQ6dWJyLGZhSG91c2VDcmFjazpmYnIsZmFIYXRXaXphcmQ6cGJyLGZhVXNlckRvY3Rvcjp5TGUsZmFVc2VyTWQ6aGJyLGZhQ2hhcnRCYXI6d0xlLGZhQmFyQ2hhcnQ6bWJyLGZhU3ByYXlDYW5TcGFya2xlczpNTGUsZmFBaXJGcmVzaGVuZXI6Z2JyLGZhQmFodFNpZ246eGJyLGZhVGVtcGVyYXR1cmVBcnJvd1VwOmtMZSxmYVRlbXBlcmF0dXJlVXA6YmJyLGZhV2ViQXdlc29tZTp2YnIsZmFOb25CaW5hcnk6eWJyLGZhTjp3YnIsZmFBcnJvd3NVcERvd25MZWZ0UmlnaHQ6U0xlLGZhQXJyb3dzOk1icixmYUhvdXNlOlN3LGZhSG9tZTprYnIsZmFIb21lQWx0OlNicixmYUhvbWVMZ0FsdDp6YnIsZmFTcGlubmVyOkNicixmYUdhdmVsOnpMZSxmYUxlZ2FsOl9icixmYVRpY2tldFNpbXBsZTpDTGUsZmFUaWNrZXRBbHQ6VGJyLGZhRG92ZTpMYnIsZmFUYXJwRHJvcGxldDpEYnIsZmFUcmVlQ2l0eTpBYnIsZmFUdXJuVXA6X0xlLGZhTGV2ZWxVcEFsdDpFYnIsZmFUZW1wZXJhdHVyZVF1YXJ0ZXI6encsZmFUZW1wZXJhdHVyZTE6JGJyLGZhVGhlcm1vbWV0ZXIxOlBicixmYVRoZXJtb21ldGVyUXVhcnRlcjpJYnIsZmFTbGlkZXJzOlRMZSxmYVNsaWRlcnNIOk5icixmYU1vc3F1ZTpGYnIsZmFIOk9icixmYUluZm86UmJyLGZhUGVyc29uV2Fsa2luZzpMTGUsZmFXYWxraW5nOkJicixmYUFycm93VHVybkRvd246RExlLGZhTGV2ZWxEb3duOkhicixmYVJvYWQ6cWJyLGZhU3BpcmFsOmpicixmYUZhY2VGcm93bjpBTGUsZmFGcm93bjpWYnIsZmFXaW5lR2xhc3NFbXB0eTpFTGUsZmFXaW5lR2xhc3NBbHQ6VWJyLGZhQ2xhcHBlcmJvYXJkOldicixmYUZvcndhcmRTdGVwOiRMZSxmYVN0ZXBGb3J3YXJkOkdicixmYVNxdWFyZVVwUmlnaHQ6UExlLGZhRXh0ZXJuYWxMaW5rU3F1YXJlQWx0OllicixmYUJvb2tKb3VybmFsV2hpbGxzOklMZSxmYUpvdXJuYWxXaGlsbHM6WmJyLGZhQ2hhbXBhZ25lR2xhc3NlczpOTGUsZmFHbGFzc0NoZWVyczpYYnIsZmFEdW1wc3RlcjpRYnIsZmFIZWFydENpcmNsZVhtYXJrOkticixmYUNvbXB1dGVyOkpicixmYVdhbmRNYWdpYzpGTGUsZmFNYWdpYzpldnIsZmFCcmFpbjp0dnIsZmFCcmllZmNhc2VNZWRpY2FsOnJ2cixmYUhvdXNlTWVkaWNhbENpcmNsZUV4Y2xhbWF0aW9uOmF2cixmYUNvZGVDb21taXQ6aXZyLGZhUGVyc29uQnJlYXN0ZmVlZGluZzpvdnIsZmFQZXJzb25SYXlzOm52cixmYU1hbmF0U2lnbjpzdnIsZmFTb3J0Ok9MZSxmYVVuc29ydGVkOmx2cixmYUNpcmNsZVJhZGlhdGlvbjpSTGUsZmFSYWRpYXRpb25BbHQ6Y3ZyLGZhTGFwdG9wQ29kZTpkdnIsZmFTaW5rOnV2cixmYUFycm93VXBGcm9tV2F0ZXJQdW1wOmZ2cixmYU1pY3JvcGhvbmVMaW5lc1NsYXNoOkJMZSxmYU1pY3JvcGhvbmVBbHRTbGFzaDpwdnIsZmFTZXJ2ZXI6aHZyLGZhVXNlcjp5MmUsZmFVc2VyQWx0Om12cixmYVVzZXJMYXJnZTpndnIsZmFTbm93Zmxha2U6eHZyLGZhVGF1cnVzOmJ2cixmYVNrdWxsQ3Jvc3Nib25lczp2dnIsZmFQZXNvU2lnbjp5dnIsZmFXaW5lR2xhc3M6d3ZyLGZhVGVtcGVyYXR1cmVIYWxmOkN3LGZhVGVtcGVyYXR1cmUyOk12cixmYVRoZXJtb21ldGVyMjprdnIsZmFUaGVybW9tZXRlckhhbGY6U3ZyLGZhVGlja2V0Onp2cixmYVdoZWF0QXduQ2lyY2xlRXhjbGFtYXRpb246Q3ZyLGZhQXJyb3dzVHVyblJpZ2h0Ol92cixmYUNhbmR5Q2FuZTpUdnIsZmFXaGVlbGNoYWlyOkx2cixmYVNwZWxsQ2hlY2s6RHZyLGZhVm9sdW1lT2ZmOkF2cixmYUx1bmdzOkV2cixmYUJvb2ttYXJrOiR2cixmYUJhcmNvZGU6UHZyLGZhTGlzdE9sOncyZSxmYUxpc3QxMjpJdnIsZmFMaXN0TnVtZXJpYzpOdnIsZmFGaWxlQ2lyY2xlWG1hcms6RnZyLGZhQ3ViZTpPdnIsZmFUYXBlOlJ2cixmYUJvbWI6QnZyLGZhU2NhbGVVbmJhbGFuY2VkOkhMZSxmYUJhbGFuY2VTY2FsZUxlZnQ6SHZyLGZhU3F1YXJlQ2FyZXRMZWZ0OnFMZSxmYUNhcmV0U3F1YXJlTGVmdDpxdnIsZmFSdWxlcjpqdnIsZmFJOlZ2cixmYVZvbHVtZVhtYXJrOk0yZSxmYVZvbHVtZU11dGU6VXZyLGZhVm9sdW1lVGltZXM6V3ZyLGZhQXJjaHdheTpHdnIsZmFQZXJzb25EaWdnaW5nOmpMZSxmYURpZ2dpbmc6WXZyLGZhR2F1Z2VIaWdoOmsyZSxmYVRhY2hvbWV0ZXJBbHQ6WnZyLGZhVGFjaG9tZXRlckFsdEZhc3Q6WHZyLGZhR2VuZGVybGVzczpRdnIsZmFDbG91ZFN1bjpLdnIsZmFBcnJvd1JpZ2h0OnVsZSxmYUhhbmRzaGFrZTpTMmUsZmFIYW5kc2hha2VBbHQ6SnZyLGZhSGFuZHNoYWtlU2ltcGxlOmV5cixmYVBlcnNvblNraWluZzpWTGUsZmFTa2lpbmc6dHlyLGZhQnJpZGdlV2F0ZXI6cnlyLGZhQnVpbGRpbmdOZ286YXlyLGZhSWdsb286aXlyLGZhQ2lyY2xlRG9sbGFyVG9TbG90OlVMZSxmYURvbmF0ZTpveXIsZmFZOm55cixmYUZhY2VTbWlsZVdpbms6V0xlLGZhU21pbGVXaW5rOnN5cixmYURpY2VGb3VyOmx5cixmYUZhY2VHcmluU3F1aW50VGVhcnM6R0xlLGZhR3JpblNxdWludFRlYXJzOmN5cixmYUZpbGVBdWRpbzpkeXIsZmFBcnJvd3NEb3duVG9MaW5lOnV5cixmYUc6ZnlyLGZhVmloYXJhOnB5cixmYUZsYWdDaGVja2VyZWQ6aHlyLGZhR2F1Z2VTaW1wbGU6ejJlLGZhR2F1Z2VTaW1wbGVNZWQ6bXlyLGZhVGFjaG9tZXRlckF2ZXJhZ2U6Z3lyLGZhUmlnaHRMZWZ0OllMZSxmYUV4Y2hhbmdlQWx0Onh5cixmYVBpbGxzOmJ5cixmYUV4cGxvc2lvbjp2eXIsZmFBcnJvd3NEb3duVG9QZW9wbGU6eXlyLGZhVXNlcnNWaWV3ZmluZGVyOnd5cixmYUNhck9uOk15cixmYVNsZWlnaDpreXIsZmFEdW1iYmVsbDpTeXIsZmFCYWJ5Q2FycmlhZ2U6WkxlLGZhQ2FycmlhZ2VCYWJ5Onp5cixmYUtpd2lCaXJkOkN5cixmYUNhbGVuZGFyWG1hcms6WExlLGZhQ2FsZW5kYXJUaW1lczpfeXIsZmFDaXJjbGVEb3duOlFMZSxmYUFycm93QWx0Q2lyY2xlRG93bjpUeXIsZmFGaWxlTWVkaWNhbDpMeXIsZmFYbWFyazpyMyxmYUNsb3NlOkR5cixmYU11bHRpcGx5OkF5cixmYVJlbW92ZTpFeXIsZmFUaW1lczokeXIsZmFTaGFwZXM6S0xlLGZhVHJpYW5nbGVDaXJjbGVTcXVhcmU6UHlyLGZhRGljZU9uZTpJeXIsZmFMb2NrT3BlbjpOeXIsZmFQZXBwZXJIb3Q6RnlyLGZhRHJvcGxldFNsYXNoOkpMZSxmYVRpbnRTbGFzaDpPeXIsZmFEcm9wbGV0OmVEZSxmYVRpbnQ6UnlyLGZhRmlsZUxpbmVzOkMyZSxmYUZpbGVBbHQ6QnlyLGZhRmlsZVRleHQ6SHlyLGZhQ29tbWVudHNEb2xsYXI6cXlyLGZhTWFnbmlmeWluZ0dsYXNzTG9jYXRpb246dERlLGZhU2VhcmNoTG9jYXRpb246anlyLGZhRmlsZUludm9pY2U6ZmxlLGZhUGVudGFnb246VnlyLGZhUmVwdWJsaWNhbjpVeXIsZmFTaG9wOnJEZSxmYVN0b3JlQWx0Old5cixmYUZpbG06XzJlLGZhRmlsbUFsdDpHeXIsZmFGaWxtU2ltcGxlOll5cixmYUJ1aWxkaW5nQ2lyY2xlWG1hcms6WnlyLGZhQ29tbWVudHM6WHlyLGZhVGFnczpReXIsZmFHdW46S3lyLGZhQ2lyY2xlQ2hlY2s6SHcsZmFDaGVja0NpcmNsZTpKeXIsZmFTY29ycGlvOmV3cixmYUlkQ2FyZENsaXA6YURlLGZhSWRDYXJkQWx0OnR3cixmYU1vb246cndyLGZhT2lsV2VsbDphd3IsZmFUYWNob2dyYXBoRGlnaXRhbDppRGUsZmFEaWdpdGFsVGFjaG9ncmFwaDppd3IsZmFUYWJsZXQ6b0RlLGZhVGFibGV0QW5kcm9pZDpvd3IsZmFSdWJsZVNpZ246X3csZmFSb3VibGU6bndyLGZhUnViOnN3cixmYVJ1YmxlOmx3cixmYUNsb3NlZENhcHRpb25pbmc6Y3dyLGZhUGVuOmR3cixmYVBsYW5lOnV3cixmYUltYWdlczpmd3IsZmFNb2JpbGVTY3JlZW46bkRlLGZhTW9iaWxlQW5kcm9pZEFsdDpwd3IsZmFHdWFyYW5pU2lnbjpod3IsZmFCYWdTaG9wcGluZzpzRGUsZmFTaG9wcGluZ0JhZzptd3IsZmFDaXJjbGVSaWdodDpsRGUsZmFBcnJvd0FsdENpcmNsZVJpZ2h0Omd3cixmYVBob25lVm9sdW1lOmNEZSxmYVZvbHVtZUNvbnRyb2xQaG9uZTp4d3IsZmFDdWJlczpid3IsZmFQaG9uZTp2d3IsZmFUb3JpaUdhdGU6eXdyLGZhQmFjb246d3dyLGZhUGVyc29uRmFsbGluZ0J1cnN0Ok13cixmYVF1b3RlUmlnaHQ6ZERlLGZhUXVvdGVSaWdodEFsdDprd3IsZmFIb3VzZU1lZGljYWxGbGFnOlN3cixmYVByZXNjcmlwdGlvbjp6d3IsZmFEaWNlVGhyZWU6Q3dyLGZhQnVpbGRpbmdMb2NrOl93cixmYUlkQ2FyZDp1RGUsZmFEcml2ZXJzTGljZW5zZTpUd3IsZmFDaXJjbGVQbGF5OmZEZSxmYVBsYXlDaXJjbGU6THdyLGZhRmFjZUxhdWdoQmVhbTpwRGUsZmFMYXVnaEJlYW06RHdyLGZhTGVhZjpBd3IsZmFIb3VzZUNoaW1uZXlVc2VyOkV3cixmYVJvdGF0ZVJpZ2h0OlQyZSxmYVJlZG9BbHQ6JHdyLGZhUm90YXRlRm9yd2FyZDpQd3IsZmFUb290aDpJd3IsZmFIb3VzZUNoaW1uZXlXaW5kb3c6TndyLGZhTW90b3JjeWNsZTpGd3IsZmFCYWNrd2FyZEZhc3Q6aERlLGZhRmFzdEJhY2t3YXJkOk93cixmYUFkZHJlc3NCb29rOm1EZSxmYUNvbnRhY3RCb29rOlJ3cixmYVNhaWxib2F0OkJ3cixmYUJvb2tCb29rbWFyazpId3IsZmFNYWduaWZ5aW5nR2xhc3NBcnJvd1JpZ2h0OnF3cixmYU1pY3JvcGhvbmVMaW5lczpnRGUsZmFNaWNyb3Bob25lQWx0Omp3cixmYVJlcGx5QWxsOnhEZSxmYU1haWxSZXBseUFsbDpWd3IsZmFVbml2ZXJzYWxBY2Nlc3M6VXdyLGZhVG9pbGV0UGFwZXI6TDJlLGZhVG9pbGV0UGFwZXJBbHQ6V3dyLGZhVG9pbGV0UGFwZXJCbGFuazpHd3IsZmFWckNhcmRib2FyZDpZd3IsZmFQaXp6YVNsaWNlOlp3cixmYVNwcmF5Q2FuOlh3cixmYVZvbHVtZUxvdzpiRGUsZmFWb2x1bWVEb3duOlF3cixmYUNyb3NzOkt3cixmYVBlcnNvbjp2RGUsZmFNYWxlOkp3cixmYUhvdXJnbGFzczp5RGUsZmFIb3VyZ2xhc3NFbXB0eTplTXIsZmFGaXNoOnRNcixmYURydW1zdGlja0JpdGU6ck1yLGZhQ2hhcnRTaW1wbGU6YU1yLGZhQXRvbTppTXIsZmFQOm9NcixmYUpldEZpZ2h0ZXJVcDpuTXIsZmFQbHVnQ2lyY2xlWG1hcms6c01yLGZhU2hlZXRQbGFzdGljOmxNcixmYVY6Y01yLGZhTGlzdDp3RGUsZmFMaXN0U3F1YXJlczpkTXIsZmFQaXNjZXM6dU1yLGZhU29sYXJQYW5lbDpmTXIsZmFMYW5kTWluZU9uOnBNcixmYUhlYWRwaG9uZXM6RDJlLGZhSGVhZHBob25lc0FsdDpoTXIsZmFIZWFkcGhvbmVzU2ltcGxlOm1NcixmYUJ1czpnTXIsZmFGaWxlUG93ZXJwb2ludDp4TXIsZmFRdW90ZUxlZnQ6TURlLGZhUXVvdGVMZWZ0QWx0OmJNcixmYUNoZXZyb25Eb3duOnZNcixmYUVhcnRoQXNpYTprRGUsZmFHbG9iZUFzaWE6eU1yLGZhQ2VudFNpZ246d01yLGZhU2hpZWxkQ2F0Ok1NcixmYVNjaG9vbENpcmNsZUNoZWNrOmtNcixmYU1hcnRpbmlHbGFzczpTRGUsZmFHbGFzc01hcnRpbmlBbHQ6U01yLGZhUGx1Zzp6TXIsZmFQYW5vcmFtYTpDTXIsZmFDbG9ja1JvdGF0ZUxlZnQ6cXcsZmFIaXN0b3J5Ol9NcixmYUphcldoZWF0OlRNcixmYUNsb3VkQXJyb3dEb3duOkEyZSxmYUNsb3VkRG93bmxvYWQ6TE1yLGZhQ2xvdWREb3dubG9hZEFsdDpETXIsZmFUcnVja1JhbXBCb3g6ekRlLGZhVHJ1Y2tMb2FkaW5nOkFNcixmYUFuZ2xlRG93bjpFTXIsZmFQbHVnQ2lyY2xlQ2hlY2s6JE1yLGZhV2luZG93TWF4aW1pemU6UE1yLGZhSGFuZHNIb2xkaW5nQ2lyY2xlOklNcixmYUxvY2F0aW9uUGluOkNEZSxmYU1hcE1hcmtlcjpOTXIsZmFCb3dsaW5nQmFsbDpGTXIsZmFDYXJ0RmxhdGJlZDpfRGUsZmFEb2xseUZsYXRiZWQ6T01yLGZhSG91c2VVc2VyOlREZSxmYUhvbWVVc2VyOlJNcixmYUdob3N0OkJNcixmYUNvbW1lbnROb2RlczpITXIsZmFQZXJzb25BcnJvd0Rvd25Ub0xpbmU6cU1yLGZhUGx1Z0NpcmNsZVBsdXM6ak1yLGZhUGVyc29uU3dpbW1pbmc6TERlLGZhU3dpbW1lcjpWTXIsZmFDb21tZW50RG90czpERGUsZmFDb21tZW50aW5nOlVNcixmYUNoYXJ0UGllOkFEZSxmYVBpZUNoYXJ0OldNcixmYUZyb2c6R01yLGZhV2luZUJvdHRsZTpZTXIsZmFJbmJveDpaTXIsZmFTcXVhcmVIOkVEZSxmYUhTcXVhcmU6WE1yLGZhSG91c2VNZWRpY2FsOlFNcixmYUNpcmNsZUNoZXZyb25SaWdodDokRGUsZmFDaGV2cm9uQ2lyY2xlUmlnaHQ6S01yLGZhRmlsZUNzdjpKTXIsZmFIYXRDb3dib3k6ZWtyLGZhRmFjZUdyaW5Ub25ndWVXaW5rOlBEZSxmYUdyaW5Ub25ndWVXaW5rOnRrcixmYUw6cmtyLGZhQXJyb3dEb3duU2hvcnRXaWRlOkUyZSxmYVNvcnRBbW91bnREZXNjOmFrcixmYVNvcnRBbW91bnREb3duQWx0OmlrcixmYUhvdXJnbGFzc0hhbGY6SURlLGZhSG91cmdsYXNzMjpva3IsZmFTcG9vbjpORGUsZmFVdGVuc2lsU3Bvb246bmtyLGZhQ3JlZGl0Q2FyZDpGRGUsZmFDcmVkaXRDYXJkQWx0OnNrcixmYUZpbGVJbnZvaWNlRG9sbGFyOnBsZSxmYVNwYWdoZXR0aU1vbnN0ZXJGbHlpbmc6T0RlLGZhUGFzdGFmYXJpYW5pc206bGtyLGZhTWFydGluaUdsYXNzQ2l0cnVzOlJEZSxmYUNvY2t0YWlsOmNrcixmYUJ1bGxob3JuOmRrcixmYUJveFRpc3N1ZTp1a3IsZmFNYXR0cmVzc1BpbGxvdzpma3IsZmFDaGV2cm9uTGVmdDpwa3IsZmFDbG91ZE1vb25SYWluOmhrcixmYUFycm93RG93bjE5OiQyZSxmYVNvcnROdW1lcmljQXNjOm1rcixmYVNvcnROdW1lcmljRG93bjpna3IsZmFIYW5kU3BvY2s6eGtyLGZhV2FuZE1hZ2ljU3BhcmtsZXM6QkRlLGZhTWFnaWNXYW5kU3BhcmtsZXM6YmtyLGZhQ29tbWVudE1lZGljYWw6dmtyLGZhQmVsbFNsYXNoOnlrcixmYUhhbmRzaGFrZVNsYXNoOlAyZSxmYUhhbmRzaGFrZUFsdFNsYXNoOndrcixmYUhhbmRzaGFrZVNpbXBsZVNsYXNoOk1rcixmYUJvdHRsZVdhdGVyOmtrcixmYURpY2VEMjA6U2tyLGZhQXJyb3dEb3duWkE6STJlLGZhU29ydEFscGhhRGVzYzp6a3IsZmFTb3J0QWxwaGFEb3duQWx0OkNrcixmYUJydXNoOl9rcixmYVBlcnNvbldhbGtpbmdEYXNoZWRMaW5lQXJyb3dSaWdodDpUa3IsZmFBcnJvd1VwU2hvcnRXaWRlOkhEZSxmYVNvcnRBbW91bnRVcEFsdDpMa3IsZmFHcmlwVmVydGljYWw6cURlLGZhR3JpZFZlcnRpY2FsOkRrcixmYUNhclR1bm5lbDpBa3IsZmFDaGFydENvbHVtbjpFa3IsZmFDYXByaWNvcm46JGtyLGZhVHJ1Y2tBcnJvd1JpZ2h0OlBrcixmYVR2Ok4yZSxmYVRlbGV2aXNpb246SWtyLGZhVHZBbHQ6TmtyLGZhU2VjdGlvbjpGa3IsZmFQZWFjZTpPa3IsZmFTdGFyOlJrcixmYUZsYWc6QmtyLGZhVHJpYW5nbGVFeGNsYW1hdGlvbjpGMmUsZmFFeGNsYW1hdGlvblRyaWFuZ2xlOkhrcixmYVdhcm5pbmc6cWtyLGZhU2Nob29sQ2lyY2xlRXhjbGFtYXRpb246amtyLGZhR3JhZHVhdGlvbkNhcDpqRGUsZmFNb3J0YXJCb2FyZDpWa3IsZmFTdG9yZTpVa3IsZmFVc2VyQXN0cm9uYXV0OldrcixmYUJ1aWxkaW5nRmxhZzpHa3IsZmFNdWdTYXVjZXI6VkRlLGZhQ29mZmVlOllrcixmYUxlbW9uOlprcixmYUNhcmF2YW46WGtyLGZhUTpRa3IsZmFMb2NrOktrcixmYVBhaW50Um9sbGVyOkprcixmYVZvbHVtZUhpZ2g6VURlLGZhVm9sdW1lVXA6ZVNyLGZhRm9sZGVyUGx1czp0U3IsZmFNZXJjdXJ5OnJTcixmYUFuY2hvcjphU3IsZmFTcXVhcmVQYXJraW5nOldEZSxmYVBhcmtpbmc6aVNyLGZhSGFudWtpYWg6b1NyLGZhUm90YXRlTGVmdDpUdyxmYVJvdGF0ZUJhY2s6blNyLGZhUm90YXRlQmFja3dhcmQ6c1NyLGZhVW5kb0FsdDpsU3IsZmFIZWFkaW5nOkdEZSxmYUhlYWRlcjpjU3IsZmFDcm9zc2hhaXJzOmRTcixmYUNpcmNsZU5vZGVzOnVTcixmYVdpbmRvd1Jlc3RvcmU6ZlNyLGZhUjpwU3IsZmFGaWx0ZXJDaXJjbGVYbWFyazpoU3IsZmFHb3B1cmFtOm1TcixmYUhlYXJ0Q2lyY2xlTWludXM6Z1NyLGZhU3Rhck9mTGlmZTp4U3IsZmFCdXNpbmVzc1RpbWU6WURlLGZhQnJpZWZjYXNlQ2xvY2s6YlNyLGZhRmlyZUV4dGluZ3Vpc2hlcjp2U3IsZmFBcnJvd0Rvd25Mb25nOlpEZSxmYUxvbmdBcnJvd0Rvd246eVNyLGZhVXNlck1pbnVzOndTcixmYU1vbmV5Q2hlY2s6TVNyLGZhSG91c2VMYXB0b3A6WERlLGZhTGFwdG9wSG91c2U6a1NyLGZhRG93bmxvYWQ6U1NyLGZhU2FnaXR0YXJpdXM6elNyLGZhQ291Y2g6Q1NyLGZhUm9hZExvY2s6X1NyLGZhU2Npc3NvcnM6UURlLGZhQ3V0OlRTcixmYUJ1ZzpobGUsZmFBcnJvd1JpZ2h0RnJvbUJyYWNrZXQ6S0RlLGZhU2lnbk91dDpMU3IsZmFIYW5kSG9sZGluZ0hhbmQ6RFNyLGZhU3Ryb29wd2FmZWw6QVNyLGZhQ2hpbGQ6RVNyLGZhSWNlQ3JlYW06JFNyLGZhQ29tcHV0ZXJNb3VzZTpKRGUsZmFNb3VzZTpQU3IsZmFGYXVjZXQ6SVNyLGZhQXdhcmQ6TlNyLGZhUGVyc29uRHJvd25pbmc6RlNyLGZhQ2FtZXJhUm90YXRlOk9TcixmYUZhY2VHcmluSGVhcnRzOmVBZSxmYUdyaW5IZWFydHM6UlNyLGZhRmlsZUZyYWdtZW50OkJTcixmYVBlcnNvbk1pbGl0YXJ5UmlmbGU6SFNyLGZhVG9nZ2xlT246cVNyLGZhTHVuZ3NWaXJ1czpqU3IsZmFUYWJsZVRlbm5pc1BhZGRsZUJhbGw6TzJlLGZhUGluZ1BvbmdQYWRkbGVCYWxsOlZTcixmYVRhYmxlVGVubmlzOlVTcixmYUJveGVzUGFja2luZzpXU3IsZmFQZXJzb25DaGFsa2JvYXJkOkdTcixmYURpY2VUd286WVNyLGZhQXJyb3dSaWdodEFycm93TGVmdDp0QWUsZmFFeGNoYW5nZTpaU3IsZmFGb290YmFsbDpyQWUsZmFGb290YmFsbEJhbGw6WFNyLGZhVHJ1Y2tNb25zdGVyOlFTcixmYUFzdGVyaXNrOktTcixmYUJhdHRlcnlGdWxsOlIyZSxmYUJhdHRlcnk6SlNyLGZhQmF0dGVyeTU6ZXpyLGZhQ2hpbGREcmVzczp0enIsZmFGYWNlS2lzc0JlYW06YUFlLGZhS2lzc0JlYW06cnpyLGZhVHJhc2hDYW5BcnJvd1VwOmlBZSxmYVRyYXNoUmVzdG9yZUFsdDphenIsZmFGb250Oml6cixmYUJvcmVIb2xlOm96cixmYVZpcnVzQ292aWQ6bnpyLGZhRmlsZVBkZjpzenIsZmFMYW5ndWFnZTpsenIsZmFTaGllbGRIYWx2ZWQ6b0FlLGZhU2hpZWxkQWx0OmN6cixmYUNhcmV0VXA6ZHpyLGZhRmlsZVBlbjpuQWUsZmFGaWxlRWRpdDp1enIsZmFQZXJzb25CaWtpbmc6c0FlLGZhQmlraW5nOmZ6cixmYUJvb2tPcGVuUmVhZGVyOmxBZSxmYUJvb2tSZWFkZXI6cHpyLGZhR2xhc3NXYXRlckRyb3BsZXQ6aHpyLGZhVG93ZXJCcm9hZGNhc3Q6Y0FlLGZhQnJvYWRjYXN0VG93ZXI6bXpyLGZhTWluaW1pemU6ZEFlLGZhQ29tcHJlc3NBcnJvd3NBbHQ6Z3pyLGZhQXJyb3dSaWdodFRvQ2l0eTp4enIsZmFMYXB0b3BNZWRpY2FsOmJ6cixmYUJyZWFkU2xpY2U6dnpyLGZhR2xvYmU6eXpyLGZhRm9sZGVyTWludXM6d3pyLGZhTWFza0ZhY2U6TXpyLGZhQm9uZzprenIsZmFSb2FkQnJpZGdlOlN6cixmYUFycm93VXA5MTp1QWUsZmFTb3J0TnVtZXJpY1VwQWx0Onp6cixmYU1vdW50YWluQ2l0eTpDenIsZmFBcnJvd0Rvd245MTpCMmUsZmFTb3J0TnVtZXJpY0Rlc2M6X3pyLGZhU29ydE51bWVyaWNEb3duQWx0OlR6cixmYUZhY2VHcmluV2lkZTpmQWUsZmFHcmluQWx0Okx6cixmYVBvb3A6RHpyLGZhRGhhcm1hY2hha3JhOkF6cixmYUJhdHRlcnlRdWFydGVyOnBBZSxmYUJhdHRlcnkyOkV6cixmYUFua2g6JHpyLGZhRGlhbW9uZDpQenIsZmFTdWJzY3JpcHQ6SXpyLGZhUnVwZWVTaWduOmhBZSxmYVJ1cGVlOk56cixmYVBlcnNvblJpZmxlOkZ6cixmYUQ6T3pyLGZhU3F1YXJlTmZpOlJ6cixmYVRlZXRoOkJ6cixmYU1hZ25pZnlpbmdHbGFzc0RvbGxhcjptQWUsZmFTZWFyY2hEb2xsYXI6SHpyLGZhRHVtcHN0ZXJGaXJlOnF6cixmYVVwbG9hZDpqenIsZmFVc2VyU2xhc2g6SDJlLGZhVXNlckFsdFNsYXNoOlZ6cixmYVVzZXJMYXJnZVNsYXNoOlV6cixmYUFycm93TGVmdDpXenIsZmFWaWFsVmlydXM6R3pyLGZhQ2hlY2tEb3VibGU6WXpyLGZhUGF3Olp6cixmYUhlbG1ldFNhZmV0eTpxMmUsZmFIYXJkSGF0Olh6cixmYUhhdEhhcmQ6UXpyLGZhRTpLenIsZmFGYWNlTGF1Z2hTcXVpbnQ6Z0FlLGZhTGF1Z2hTcXVpbnQ6SnpyLGZhRG93bkxlZnRBbmRVcFJpZ2h0VG9DZW50ZXI6eEFlLGZhQ29tcHJlc3NBbHQ6ZUNyLGZhR2lmdHM6dENyLGZhQmVkOnJDcixmYU1vbmV5QmlsbFRyYW5zZmVyOmFDcixmYVBlcnNvblJ1bm5pbmc6YkFlLGZhUnVubmluZzppQ3IsZmFDaXJjbGVDaGV2cm9uRG93bjp2QWUsZmFDaGV2cm9uQ2lyY2xlRG93bjpvQ3IsZmFVc2VyTnVyc2U6bkNyLGZhRmFjZUtpc3NXaW5rSGVhcnQ6eUFlLGZhS2lzc1dpbmtIZWFydDpzQ3IsZmFGaWxsOmxDcixmYU1vbmV5QmlsbDFXYXZlOndBZSxmYU1vbmV5QmlsbFdhdmVBbHQ6Y0NyLGZhTGFuZG1hcms6ZENyLGZhTXVzaWM6dUNyLGZhQm9va01lZGljYWw6ZkNyLGZhU2h1ZmZsZTpNQWUsZmFSYW5kb206cENyLGZhVW5kZXJsaW5lOmhDcixmYUJ1aWxkaW5nVXNlcjptQ3IsZmFSb2JvdDpnQ3IsZmFQbHVzOmp3LGZhQWRkOnhDcixmYUNvcHk6bWxlLGZhQ2hlc3NLaW5nOmJDcixmYUhvdXNlRmxvb2RXYXRlcjp2Q3IsZmFCaXRjb2luU2lnbjp5Q3IsZmFCb3g6d0NyLGZhU3F1YXJlUGx1czprQWUsZmFQbHVzU3F1YXJlOk1DcixmYUFycm93c0xlZnRSaWdodDpTQWUsZmFBcnJvd3NIOmtDcixmYUZhbjpTQ3IsZmFDcm93OnpDcixmYUZpbGVDaXJjbGVDaGVjazpDQ3IsZmFMaW5rU2xhc2g6THcsZmFDaGFpbkJyb2tlbjpfQ3IsZmFDaGFpblNsYXNoOlRDcixmYVVubGluazpMQ3IsZmFBcnJvd1JvdGF0ZVJpZ2h0OkR3LGZhQXJyb3dSaWdodFJvdGF0ZTpEQ3IsZmFBcnJvd1JvdGF0ZUZvcndhcmQ6QUNyLGZhUmVkbzpFQ3IsZmFQZW5DbGlwOnpBZSxmYVBlbkFsdDokQ3IsZmFEb29yQ2xvc2VkOlBDcixmYUFycm93RG93bldpZGVTaG9ydDpqMmUsZmFTb3J0QW1vdW50QXNjOklDcixmYVNvcnRBbW91bnREb3duOk5DcixmYUNhcmV0RG93bjpGQ3IsZmFLOk9DcixmYUNoZWNrVG9TbG90OkNBZSxmYVZvdGVZZWE6UkNyLGZhRmlzaEZpbnM6QkNyLGZhQ29tcHJlc3M6SENyLGZhQXJyb3dVcEFaOl9BZSxmYVNvcnRBbHBoYVVwOnFDcixmYVVzZXJHcmFkdWF0ZTpqQ3IsZmFGaWxlQ29kZTpWQ3IsZmFTb2FwOlVDcixmYVJlY3ljbGU6V0NyLGZhRmFjZUdyaW5XaW5rOlRBZSxmYUdyaW5XaW5rOkdDcixmYVdhdGVyTGFkZGVyOlYyZSxmYUxhZGRlcldhdGVyOllDcixmYVN3aW1taW5nUG9vbDpaQ3IsZmFHZW1pbmk6WENyLGZhVG93ZXJDZWxsOlFDcixmYUNvbG9uU2lnbjpLQ3IsZmFMYXB0b3BGaWxlOkpDcixmYUJhaGFpOkxBZSxmYUhheWthbDplX3IsZmFNb25leUJpbGwxOkRBZSxmYU1vbmV5QmlsbEFsdDp0X3IsZmFDbG91ZEJvbHQ6QUFlLGZhVGh1bmRlcnN0b3JtOnJfcixmYUV0aGVybmV0OmFfcixmYUhyeXZuaWFTaWduOkVBZSxmYUhyeXZuaWE6aV9yLGZhRXllU2xhc2g6Z2xlLGZhQ2FydEZsYXRiZWRTdWl0Y2FzZTokQWUsZmFMdWdnYWdlQ2FydDpvX3IsZmFSYWRpYXRpb246bl9yLGZhRmlsZVdvcmQ6c19yLGZhQmVkUHVsc2U6UEFlLGZhUHJvY2VkdXJlczpsX3IsZmFUZW50czpjX3IsZmFNdWdIb3Q6eGxlLGZhQm9sdDpJQWUsZmFaYXA6ZF9yLGZhSmFyOnVfcixmYVRydWNrUGxhbmU6Zl9yLGZhSGFuZEhvbGRpbmdIZWFydDpwX3IsZmFBcnJvd1JvdGF0ZUxlZnQ6STksZmFBcnJvd0xlZnRSb3RhdGU6aF9yLGZhQXJyb3dSb3RhdGVCYWNrOm1fcixmYUFycm93Um90YXRlQmFja3dhcmQ6Z19yLGZhVW5kbzp4X3IsZmFGYWNlQW5ncnk6TkFlLGZhQW5ncnk6Yl9yLGZhQnVyc3Q6dl9yLGZhWjp5X3IsZmFCYW5kYWdlOkZBZSxmYUJhbmRBaWQ6d19yLGZhUGxhbmVDaXJjbGVFeGNsYW1hdGlvbjpNX3IsZmFCdXNTaWRlOmtfcixmYUJ1Z3M6U19yLGZhQmVlck11Z0VtcHR5Ok9BZSxmYUJlZXI6el9yLGZhUGVyc29uQ2lyY2xlQ2hlY2s6Q19yLGZhU3RhcGxlcjpfX3IsZmFIb3VzZU1lZGljYWxDaXJjbGVDaGVjazpUX3IsZmFOYWlyYVNpZ246TF9yLGZhV2lmaTpVMmUsZmFXaWZpMzpEX3IsZmFXaWZpU3Ryb25nOkFfcixmYU1vbmV5Q2hlY2tEb2xsYXI6VncsZmFNb25leUNoZWNrQWx0OkVfcixmYUV5ZUxvd1Zpc2lvbjpSQWUsZmFMb3dWaXNpb246JF9yLGZhQ2lyY2xlQXJyb3dVcDpCQWUsZmFBcnJvd0NpcmNsZVVwOlBfcixmYUNhbWVyYVJldHJvOklfcixmYUNhcHN1bGVzOk5fcixmYVBvbzpGX3IsZmFWb2x1bWU6SEFlLGZhVm9sdW1lTWVkaXVtOk9fcixmYUVsZXZhdG9yOlJfcixmYVRhZzpCX3IsZmFGaWxlQ2lyY2xlTWludXM6SF9yLGZhRG93bkxvbmc6cUFlLGZhTG9uZ0Fycm93QWx0RG93bjpxX3IsZmFDb21wYWN0RGlzYzpqX3IsZmFTdWl0Y2FzZVJvbGxpbmc6Vl9yLGZhQm9va1F1cmFuOmpBZSxmYVF1cmFuOlVfcixmYVBob25lU2xhc2g6V19yLGZhUm9hZENpcmNsZUNoZWNrOkdfcixmYVNob3BMb2NrOllfcixmYUltYWdlUG9ydHJhaXQ6VkFlLGZhUG9ydHJhaXQ6Wl9yLGZhQnJpZGdlTG9jazpYX3IsZmFIYW1tZXI6UV9yLGZhQXJyb3dVcDE5OlVBZSxmYVNvcnROdW1lcmljVXA6S19yLGZhQ2hlc3NLbmlnaHQ6Sl9yLGZhSG91c2VGbG9vZFdhdGVyQ2lyY2xlQXJyb3dSaWdodDplVHIsZmFBcnJvd1VwUmlnaHRGcm9tU3F1YXJlOlV3LGZhRXh0ZXJuYWxMaW5rOnRUcixmYUFycm93RG93blVwQWNyb3NzTGluZTpyVHIsZmFGYWNlR3JpbkJlYW06V0FlLGZhR3JpbkJlYW06YVRyLGZhUmVjdGFuZ2xlQWQ6R0FlLGZhQWQ6aVRyLGZhQm9va1RhbmFraDpZQWUsZmFUYW5ha2g6b1RyLGZhSG90VHViUGVyc29uOlpBZSxmYUhvdFR1YjpuVHIsZmFGaWxlSGFsZkRhc2hlZDpzVHIsZmFPdXRkZW50OlhBZSxmYURlZGVudDpsVHIsZmFIYW5kUGVhY2U6Y1RyLGZhSGVhZFNpZGVWaXJ1czpkVHIsZmFDb21wYXNzOnVUcixmYVBlbk5pYjpmVHIsZmFUZW50QXJyb3dzRG93bjpwVHIsZmFGb3J3YXJkRmFzdDpRQWUsZmFGYXN0Rm9yd2FyZDpoVHIsZmFDcm9wOm1UcixmYVdoaXNrZXlHbGFzczpLQWUsZmFHbGFzc1doaXNrZXk6Z1RyLGZhU3F1YXJlOnhUcixmYUZhY2VHcmluOkpBZSxmYUdyaW46YlRyLGZhRmlsZUNvbnRyYWN0OnZUcixmYUFuZ2xlVXA6eVRyLGZhRmFjZVNtaWxlOmVFZSxmYVNtaWxlOndUcixmYVBlcnNvbkRyZXNzQnVyc3Q6TVRyLGZhRGl2aWRlOmtUcixmYUNvZGVGb3JrOlNUcixmYUhvdXNlRmxhZzp6VHIsZmFCdWlsZGluZ0NvbHVtbnM6TjksZmFCYW5rOkNUcixmYUluc3RpdHV0aW9uOl9UcixmYU11c2V1bTpUVHIsZmFVbml2ZXJzaXR5OkxUcixmYVJ1ZzpEVHIsZmFDb2RlTWVyZ2U6QVRyLGZhSG91c2VUc3VuYW1pOkVUcixmYU1hZ25pZnlpbmdHbGFzc0NoYXJ0OiRUcixmYVVtYnJlbGxhOlBUcixmYUhpbGxSb2Nrc2xpZGU6SVRyLGZhVXNlclNlY3JldDpOVHIsZmFQYWdlcjpGVHIsZmFCcmllZmNhc2U6T1RyLGZhVHJvd2VsQnJpY2tzOlJUcixmYVNvY2tzOkJUcixmYVQ6SFRyLGZhTWljcm9jaGlwOnFUcixmYVRydWNrTWVkaWNhbDp0RWUsZmFBbWJ1bGFuY2U6alRyLGZhT206VlRyLGZhTW9zcXVpdG9OZXQ6VVRyLGZhUHJlc2NyaXB0aW9uQm90dGxlOldUcixmYVVzZXJzR2VhcjpyRWUsZmFVc2Vyc0NvZzpHVHIsZmFSb2FkQ2lyY2xlRXhjbGFtYXRpb246WVRyLGZhUGF1c2U6WlRyLGZhU3RhZmZTbmFrZTpBdyxmYVJvZEFzY2xlcGl1czpYVHIsZmFSb2RTbmFrZTpRVHIsZmFTdGFmZkFlc2N1bGFwaXVzOktUcixmYVBpZ2d5QmFuazpKVHIsZmFNb251bWVudDplTHIsZmFBbmdsZXNSaWdodDphRWUsZmFBbmdsZURvdWJsZVJpZ2h0OnRMcixmYURlc2t0b3A6V3csZmFEZXNrdG9wQWx0OnJMcixmYVBsYW5lQ2lyY2xlWG1hcms6YUxyLGZhUmV0d2VldDppTHIsZmFVc2VyR2VhcjppRWUsZmFVc2VyQ29nOm9McixmYUJvcmRlckFsbDpuTHIsZmFDb2luczpzTHIsZmFNYXJzU3Ryb2tlOmxMcixmYUhhbmRzaGFrZUFuZ2xlOm9FZSxmYUhhbmRzSGVscGluZzpjTHIsZmFBcnJvd0Rvd246ZExyLGZhTG9jYXRpb25Eb3Q6bkVlLGZhTWFwTWFya2VyQWx0OnVMcixmYVBsdWdDaXJjbGVFeGNsYW1hdGlvbjpmTHIsZmFDb29raWVCaXRlOnBMcixmYVNjcmV3ZHJpdmVyV3JlbmNoOnNFZSxmYVRvb2xzOmhMcixmYUluZGVudDptTHIsZmFCYXJzOmxFZSxmYU5hdmljb246Z0xyLGZhSGFuZHNQcmF5aW5nOmNFZSxmYVByYXlpbmdIYW5kczp4THIsZmFWaXJ1c2VzOmJMcixmYVNjaG9vbEZsYWc6dkxyLGZhVHJhZGVtYXJrOnlMcixmYUZpcmVCdXJuZXI6d0xyLGZhRmFjZVNtaWxlQmVhbTpkRWUsZmFTbWlsZUJlYW06TUxyLGZhVGVudEFycm93TGVmdFJpZ2h0OmtMcixmYVJvdXRlOlNMcixmYUFuZ2xlc1VwOnVFZSxmYUFuZ2xlRG91YmxlVXA6ekxyLGZhQnVja2V0OkNMcixmYUxlc3NUaGFuRXF1YWw6X0xyLGZhRm9sZGVyQ2xvc2VkOlRMcixmYVBlcnNvblRocm91Z2hXaW5kb3c6TExyLGZhU2Nob29sTG9jazpETHIsZmFQZXJzb25CdXJzdDpBTHIsZmFMZWZ0TG9uZzpmRWUsZmFMb25nQXJyb3dBbHRMZWZ0OkVMcixmYUxvY2F0aW9uQ3Jvc3NoYWlyczpwRWUsZmFMb2NhdGlvbjokTHIsZmFQZXJzb25Eb3RzRnJvbUxpbmU6aEVlLGZhRGlhZ25vc2VzOlBMcixmYUdhdWdlU2ltcGxlSGlnaDpXMmUsZmFUYWNob21ldGVyOklMcixmYVRhY2hvbWV0ZXJGYXN0Ok5McixmYUFuZ2xlc0xlZnQ6bUVlLGZhQW5nbGVEb3VibGVMZWZ0OkZMcixmYVVwRG93bjpnRWUsZmFBcnJvd3NBbHRWOk9McixmYUJhdHRlcnlFbXB0eTp4RWUsZmFCYXR0ZXJ5MDpSTHIsZmFLZXlib2FyZDpCTHIsZmFDb29raWU6SExyLGZhU3RvcHdhdGNoOnFMcixmYUVqZWN0OmpMcixmYVNhdGVsbGl0ZURpc2g6VkxyLGZhRmFjZVJvbGxpbmdFeWVzOmJFZSxmYU1laFJvbGxpbmdFeWVzOlVMcixmYUxpc3RDaGVjazp2RWUsZmFUYXNrczpXTHIsZmFTYWNrWG1hcms6R0xyLGZhSGFzaHRhZzpZTHIsZmFUcmFpbjpaTHIsZmFHYW1lcGFkOlhMcixmYUZpbGVFeHBvcnQ6eUVlLGZhQXJyb3dSaWdodEZyb21GaWxlOlFMcixmYUZhY2VHcmltYWNlOndFZSxmYUdyaW1hY2U6S0xyLGZhVHJhaW5TdWJ3YXk6TUVlLGZhU3Vid2F5OkpMcixmYUNpcmNsZURvdDprRWUsZmFEb3RDaXJjbGU6ZURyLGZhT2JqZWN0R3JvdXA6dERyLGZhU2hpcDpyRHIsZmFDOmFEcixmYVNxdWFyZVBob25lOlNFZSxmYVBob25lU3F1YXJlOmlEcixmYVJ1bGVyQ29tYmluZWQ6b0RyLGZhQXJyb3dzUm90YXRlOkcyZSxmYVJlZnJlc2g6bkRyLGZhU3luYzpzRHIsZmFQZXJzb25EcmVzczp6RWUsZmFGZW1hbGU6bERyLGZhQm9va09wZW46Y0RyLGZhRm9sZGVyVHJlZTpkRHIsZmFWaXJnbzp1RHIsZmFCb3hBcmNoaXZlOkNFZSxmYUFyY2hpdmU6ZkRyLGZhVGVudEFycm93RG93blRvTGluZTpwRHIsZmFRcmNvZGU6aERyLGZhRHJhZ29uOm1EcixmYUhvdXJnbGFzc0VuZDpfRWUsZmFIb3VyZ2xhc3MzOmdEcixmYUdyaXA6TzksZmFHcmlkSG9yaXpvbnRhbDp4RHIsZmFHcmlwSG9yaXpvbnRhbDpiRHIsZmFCb3JkZXJUb3BMZWZ0OlRFZSxmYUJvcmRlclN0eWxlOnZEcixmYUxpc3RVbDpMRWUsZmFMaXN0RG90czp5RHIsZmFQZW9wbGVSb2JiZXJ5OndEcixmYU1vYmlsZUJ1dHRvbjpNRHIsZmFBcnJvd0Rvd25BWjpZMmUsZmFTb3J0QWxwaGFBc2M6a0RyLGZhU29ydEFscGhhRG93bjpTRHIsZmFNb25leUJpbGw6ekRyLGZhQ2lyY2xlTWludXM6REVlLGZhTWludXNDaXJjbGU6Q0RyLGZhQXJyb3dQb2ludGVyOkFFZSxmYU1vdXNlUG9pbnRlcjpfRHIsZmFTcXVhcmVTaGFyZU5vZGVzOkVFZSxmYVNoYXJlQWx0U3F1YXJlOlREcixmYVRhYmxlQ2VsbHNMYXJnZTokRWUsZmFUaExhcmdlOkxEcixmYUNhdDpERHIsZmFDYWxlbmRhcldlZWs6QURyLGZhQ29kZUNvbXBhcmU6RURyLGZhTGVvOiREcixmYVJvYWRDaXJjbGVYbWFyazpQRHIsZmFQYWxsZXQ6SURyLGZhQ2FrZUNhbmRsZXM6WjJlLGZhQmlydGhkYXlDYWtlOk5EcixmYUNha2U6RkRyLGZhQnVnU2xhc2g6T0RyLGZhVGFycDpSRHIsZmFEaWFncmFtUHJlZGVjZXNzb3I6QkRyLGZhRmFjZUZsdXNoZWQ6UEVlLGZhRmx1c2hlZDpIRHIsZmFEaWFncmFtTmV4dDpxRHIsZmFBbmNob3JDaXJjbGVYbWFyazpqRHIsZmFQZXJzb25DaXJjbGVYbWFyazpWRHIsZmFTcGE6VURyLGZhQXJpZXM6V0RyLGZhQmFyc1Byb2dyZXNzOklFZSxmYVRhc2tzQWx0OkdEcixmYUhlYXJ0Q2lyY2xlQ2hlY2s6WURyLGZhTWFyc1N0cm9rZVJpZ2h0Ok5FZSxmYU1hcnNTdHJva2VIOlpEcixmYVRvd2VyT2JzZXJ2YXRpb246WERyLGZhU3RlcmxpbmdTaWduOlgyZSxmYUdicDpRRHIsZmFQb3VuZFNpZ246S0RyLGZhRmF1Y2V0RHJpcDpKRHIsZmFDaXJjbGVJbmZvOkd3LGZhSW5mb0NpcmNsZTplQXIsZmFGZWF0aGVyOnRBcixmYUJvd2xSaWNlOnJBcixmYVN0YXJIYWxmU3Ryb2tlOkZFZSxmYVN0YXJIYWxmQWx0OmFBcixmYVRlbXBlcmF0dXJlQXJyb3dEb3duOk9FZSxmYVRlbXBlcmF0dXJlRG93bjppQXIsZmFNYXNrVmVudGlsYXRvcjpvQXIsZmFGaWxlVmlkZW86bkFyLGZhQXJyb3dUcmVuZERvd246c0FyLGZhT2lsQ2FuOmxBcixmYVBlb3BsZUNhcnJ5Qm94OlJFZSxmYVBlb3BsZUNhcnJ5OmNBcixmYUNoYWlyOmRBcixmYVdpbmQ6dUFyLGZhTGF5ZXJHcm91cDpmQXIsZmFIZWFkU2lkZU1hc2s6cEFyLGZhSGFuZHM6UTJlLGZhU2lnbkxhbmd1YWdlOmhBcixmYVNpZ25pbmc6bUFyLGZhVGFibGV0czpnQXIsZmFXZWlnaHRIYW5naW5nOnhBcixmYURpY2U6YkFyLGZhU2hvcFNsYXNoOkJFZSxmYVN0b3JlQWx0U2xhc2g6dkFyLGZhU29ydERvd246SEVlLGZhU29ydERlc2M6eUFyLGZhUGVzZXRhU2lnbjp3QXIsZmFUYWJsZXRTY3JlZW5CdXR0b246cUVlLGZhVGFibGV0QWx0Ok1BcixmYUhhbmRIb2xkaW5nRG9sbGFyOmpFZSxmYUhhbmRIb2xkaW5nVXNkOmtBcixmYVNoaWVsZDpWRWUsZmFTaGllbGRCbGFuazpTQXIsZmFGYWNlTGF1Z2g6VUVlLGZhTGF1Z2g6ekFyLGZhSGFuZHNIb2xkaW5nOkNBcixmYUNhcnRTaG9wcGluZzpXRWUsZmFTaG9wcGluZ0NhcnQ6X0FyLGZhT2N0YWdvbjpUQXIsZmFIYW5kUG9pbnRlcjpMQXIsZmFSZWdpc3RlcmVkOkRBcixmYUhvdXNlU2lnbmFsOkFBcixmYUJhbmdsYWRlc2hpVGFrYVNpZ246RUFyfX0pO3ZhciBadyxHRWU9bCgoKT0+e1p3PXt4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLHdpZHRoOjI0LGhlaWdodDoyNCx2aWV3Qm94OiIwIDAgMjQgMjQiLGZpbGw6Im5vbmUiLHN0cm9rZToiY3VycmVudENvbG9yIiwic3Ryb2tlLXdpZHRoIjoyLCJzdHJva2UtbGluZWNhcCI6InJvdW5kIiwic3Ryb2tlLWxpbmVqb2luIjoicm91bmQifX0pO3ZhciBQQXIsYTMsWUVlPWwoKCk9PntHRWUoKTtQQXI9KFtlLHQscl0pPT57bGV0IGE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsZSk7cmV0dXJuIE9iamVjdC5rZXlzKHQpLmZvckVhY2goaT0+e2Euc2V0QXR0cmlidXRlKGksU3RyaW5nKHRbaV0pKX0pLHI/Lmxlbmd0aCYmci5mb3JFYWNoKGk9PntsZXQgbz1QQXIoaSk7YS5hcHBlbmRDaGlsZChvKX0pLGF9LGEzPShlLHQ9e30pPT57bGV0IGE9ey4uLlp3LC4uLnR9O3JldHVybiBQQXIoWyJzdmciLGEsZV0pfX0pO3ZhciBaRWUsSUFyPWwoKCk9PntaRWU9ZT0+e2ZvcihsZXQgdCBpbiBlKWlmKHQuc3RhcnRzV2l0aCgiYXJpYS0iKXx8dD09PSJyb2xlInx8dD09PSJ0aXRsZSIpcmV0dXJuITA7cmV0dXJuITF9fSk7dmFyIFhFZSxOQXI9bCgoKT0+e1hFZT0oLi4uZSk9PmUuZmlsdGVyKCh0LHIsYSk9PiEhdCYmdC50cmltKCkhPT0iIiYmYS5pbmRleE9mKHQpPT09cikuam9pbigiICIpLnRyaW0oKX0pO3ZhciBRRWUsRkFyPWwoKCk9PntRRWU9ZT0+ZS5yZXBsYWNlKC9eKFtBLVpdKXxbXHMtX10rKFx3KS9nLCh0LHIsYSk9PmE/YS50b1VwcGVyQ2FzZSgpOnIudG9Mb3dlckNhc2UoKSl9KTt2YXIgS0VlLE9Bcj1sKCgpPT57RkFyKCk7S0VlPWU9PntsZXQgdD1RRWUoZSk7cmV0dXJuIHQuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkrdC5zbGljZSgxKX19KTt2YXIgUkFyLEpFZSxibGUsQkFyPWwoKCk9PntZRWUoKTtHRWUoKTtJQXIoKTtOQXIoKTtPQXIoKTtSQXI9ZT0+QXJyYXkuZnJvbShlLmF0dHJpYnV0ZXMpLnJlZHVjZSgodCxyKT0+KHRbci5uYW1lXT1yLnZhbHVlLHQpLHt9KSxKRWU9ZT0+dHlwZW9mIGU9PSJzdHJpbmciP2U6IWV8fCFlLmNsYXNzPyIiOmUuY2xhc3MmJnR5cGVvZiBlLmNsYXNzPT0ic3RyaW5nIj9lLmNsYXNzLnNwbGl0KCIgIik6ZS5jbGFzcyYmQXJyYXkuaXNBcnJheShlLmNsYXNzKT9lLmNsYXNzOiIiLGJsZT0oZSx7bmFtZUF0dHI6dCxpY29uczpyLGF0dHJzOmF9KT0+e2xldCBpPWUuZ2V0QXR0cmlidXRlKHQpO2lmKGk9PW51bGwpcmV0dXJuO2xldCBvPUtFZShpKSxuPXJbb107aWYoIW4pcmV0dXJuIGNvbnNvbGUud2FybihgJHtlLm91dGVySFRNTH0gaWNvbiBuYW1lIHdhcyBub3QgZm91bmQgaW4gdGhlIHByb3ZpZGVkIGljb25zIG9iamVjdC5gKTtsZXQgcz1SQXIoZSksYz1aRWUocyk/e306eyJhcmlhLWhpZGRlbiI6InRydWUifSxkPXsuLi5adywiZGF0YS1sdWNpZGUiOmksLi4uYywuLi5hLC4uLnN9LGY9SkVlKHMpLHU9SkVlKGEpLHA9WEVlKCJsdWNpZGUiLGBsdWNpZGUtJHtpfWAsLi4uZiwuLi51KTtwJiZPYmplY3QuYXNzaWduKGQse2NsYXNzOnB9KTtsZXQgaD1hMyhuLGQpO3JldHVybiBlLnBhcmVudE5vZGU/LnJlcGxhY2VDaGlsZChoLGUpfX0pO3ZhciBYdyxlJGU9bCgoKT0+e1h3PVtbInBhdGgiLHtkOiJtMTQgMTIgNCA0IDQtNCJ9XSxbInBhdGgiLHtkOiJNMTggMTZWNyJ9XSxbInBhdGgiLHtkOiJtMiAxNiA0LjAzOS05LjY5YS41LjUgMCAwIDEgLjkyMyAwTDExIDE2In1dLFsicGF0aCIse2Q6Ik0zLjMwNCAxM2g2LjM5MiJ9XV19KTt2YXIgUXcsdCRlPWwoKCk9PntRdz1bWyJwYXRoIix7ZDoibTE0IDExIDQtNCA0IDQifV0sWyJwYXRoIix7ZDoiTTE4IDE2VjcifV0sWyJwYXRoIix7ZDoibTIgMTYgNC4wMzktOS42OWEuNS41IDAgMCAxIC45MjMgMEwxMSAxNiJ9XSxbInBhdGgiLHtkOiJNMy4zMDQgMTNoNi4zOTIifV1dfSk7dmFyIEt3LHIkZT1sKCgpPT57S3c9W1sicGF0aCIse2Q6Im0xNSAxNiAyLjUzNi03LjMyOGExLjAyIDEuMDIgMSAwIDEgMS45MjggMEwyMiAxNiJ9XSxbInBhdGgiLHtkOiJNMTUuNjk3IDE0aDUuNjA2In1dLFsicGF0aCIse2Q6Im0yIDE2IDQuMDM5LTkuNjlhLjUuNSAwIDAgMSAuOTIzIDBMMTEgMTYifV0sWyJwYXRoIix7ZDoiTTMuMzA0IDEzaDYuMzkyIn1dXX0pO3ZhciBKdyxhJGU9bCgoKT0+e0p3PVtbImNpcmNsZSIse2N4OiIxNiIsY3k6IjQiLHI6IjEifV0sWyJwYXRoIix7ZDoibTE4IDE5IDEtNy02IDEifV0sWyJwYXRoIix7ZDoibTUgOCAzLTMgNS41IDMtMi4zNiAzLjUifV0sWyJwYXRoIix7ZDoiTTQuMjQgMTQuNWE1IDUgMCAwIDAgNi44OCA2In1dLFsicGF0aCIse2Q6Ik0xMy43NiAxNy41YTUgNSAwIDAgMC02Ljg4LTYifV1dfSk7dmFyIGVNLGkkZT1sKCgpPT57ZU09W1sicGF0aCIse2Q6Ik0yMiAxMmgtMi40OGEyIDIgMCAwIDAtMS45MyAxLjQ2bC0yLjM1IDguMzZhLjI1LjI1IDAgMCAxLS40OCAwTDkuMjQgMi4xOGEuMjUuMjUgMCAwIDAtLjQ4IDBsLTIuMzUgOC4zNkEyIDIgMCAwIDEgNC40OSAxMkgyIn1dXX0pO3ZhciB0TSxvJGU9bCgoKT0+e3RNPVtbInBhdGgiLHtkOiJNMTggMTcuNWEyLjUgMi41IDAgMSAxLTQgMi4wM1YxMiJ9XSxbInBhdGgiLHtkOiJNNiAxMkg0YTIgMiAwIDAgMS0yLTJWNWEyIDIgMCAwIDEgMi0yaDE2YTIgMiAwIDAgMSAyIDJ2NWEyIDIgMCAwIDEtMiAyaC0yIn1dLFsicGF0aCIse2Q6Ik02IDhoMTIifV0sWyJwYXRoIix7ZDoiTTYuNiAxNS41NzJBMiAyIDAgMSAwIDEwIDE3di01In1dXX0pO3ZhciByTSxuJGU9bCgoKT0+e3JNPVtbInBhdGgiLHtkOiJNNSAxN0g0YTIgMiAwIDAgMS0yLTJWNWEyIDIgMCAwIDEgMi0yaDE2YTIgMiAwIDAgMSAyIDJ2MTBhMiAyIDAgMCAxLTIgMmgtMSJ9XSxbInBhdGgiLHtkOiJtMTIgMTUgNSA2SDdaIn1dXX0pO3ZhciBsdSxzJGU9bCgoKT0+e2x1PVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEzIixyOiI4In1dLFsicGF0aCIse2Q6Ik01IDMgMiA2In1dLFsicGF0aCIse2Q6Im0yMiA2LTMtMyJ9XSxbInBhdGgiLHtkOiJNNi4zOCAxOC43IDQgMjEifV0sWyJwYXRoIix7ZDoiTTE3LjY0IDE4LjY3IDIwIDIxIn1dLFsicGF0aCIse2Q6Ik05IDEzaDYifV1dfSk7dmFyIGN1LGwkZT1sKCgpPT57Y3U9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTMiLHI6IjgifV0sWyJwYXRoIix7ZDoiTTUgMyAyIDYifV0sWyJwYXRoIix7ZDoibTIyIDYtMy0zIn1dLFsicGF0aCIse2Q6Ik02LjM4IDE4LjcgNCAyMSJ9XSxbInBhdGgiLHtkOiJNMTcuNjQgMTguNjcgMjAgMjEifV0sWyJwYXRoIix7ZDoibTkgMTMgMiAyIDQtNCJ9XV19KTt2YXIgYU0sYyRlPWwoKCk9PnthTT1bWyJwYXRoIix7ZDoiTTYuODcgNi44N2E4IDggMCAxIDAgMTEuMjYgMTEuMjYifV0sWyJwYXRoIix7ZDoiTTE5LjkgMTQuMjVhOCA4IDAgMCAwLTkuMTUtOS4xNSJ9XSxbInBhdGgiLHtkOiJtMjIgNi0zLTMifV0sWyJwYXRoIix7ZDoiTTYuMjYgMTguNjcgNCAyMSJ9XSxbInBhdGgiLHtkOiJtMiAyIDIwIDIwIn1dLFsicGF0aCIse2Q6Ik00IDQgMiA2In1dXX0pO3ZhciBpTSxkJGU9bCgoKT0+e2lNPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEzIixyOiI4In1dLFsicGF0aCIse2Q6Ik0xMiA5djRsMiAyIn1dLFsicGF0aCIse2Q6Ik01IDMgMiA2In1dLFsicGF0aCIse2Q6Im0yMiA2LTMtMyJ9XSxbInBhdGgiLHtkOiJNNi4zOCAxOC43IDQgMjEifV0sWyJwYXRoIix7ZDoiTTE3LjY0IDE4LjY3IDIwIDIxIn1dXX0pO3ZhciBkdSx1JGU9bCgoKT0+e2R1PVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEzIixyOiI4In1dLFsicGF0aCIse2Q6Ik01IDMgMiA2In1dLFsicGF0aCIse2Q6Im0yMiA2LTMtMyJ9XSxbInBhdGgiLHtkOiJNNi4zOCAxOC43IDQgMjEifV0sWyJwYXRoIix7ZDoiTTE3LjY0IDE4LjY3IDIwIDIxIn1dLFsicGF0aCIse2Q6Ik0xMiAxMHY2In1dLFsicGF0aCIse2Q6Ik05IDEzaDYifV1dfSk7dmFyIG9NLGYkZT1sKCgpPT57b009W1sicGF0aCIse2Q6Ik0xMSAyMWMwLTIuNSAyLTIuNSAyLTUifV0sWyJwYXRoIix7ZDoiTTE2IDIxYzAtMi41IDItMi41IDItNSJ9XSxbInBhdGgiLHtkOiJtMTkgOC0uOCAzYTEuMjUgMS4yNSAwIDAgMS0xLjIgMUg3YTEuMjUgMS4yNSAwIDAgMS0xLjItMUw1IDgifV0sWyJwYXRoIix7ZDoiTTIxIDNhMSAxIDAgMCAxIDEgMXYyYTIgMiAwIDAgMS0yIDJINGEyIDIgMCAwIDEtMi0yVjRhMSAxIDAgMCAxIDEtMXoifV0sWyJwYXRoIix7ZDoiTTYgMjFjMC0yLjUgMi0yLjUgMi01In1dXX0pO3ZhciBuTSxwJGU9bCgoKT0+e25NPVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIixyeToiMiJ9XSxbInBvbHlsaW5lIix7cG9pbnRzOiIxMSAzIDExIDExIDE0IDggMTcgMTEgMTcgMyJ9XV19KTt2YXIgc00saCRlPWwoKCk9PntzTT1bWyJwYXRoIix7ZDoiTTIgMTJoMjAifV0sWyJwYXRoIix7ZDoiTTEwIDE2djRhMiAyIDAgMCAxLTIgMkg2YTIgMiAwIDAgMS0yLTJ2LTQifV0sWyJwYXRoIix7ZDoiTTEwIDhWNGEyIDIgMCAwIDAtMi0ySDZhMiAyIDAgMCAwLTIgMnY0In1dLFsicGF0aCIse2Q6Ik0yMCAxNnYxYTIgMiAwIDAgMS0yIDJoLTJhMiAyIDAgMCAxLTItMnYtMSJ9XSxbInBhdGgiLHtkOiJNMTQgOFY3YzAtMS4xLjktMiAyLTJoMmEyIDIgMCAwIDEgMiAydjEifV1dfSk7dmFyIGxNLG0kZT1sKCgpPT57bE09W1sicGF0aCIse2Q6Ik0xMiAydjIwIn1dLFsicGF0aCIse2Q6Ik04IDEwSDRhMiAyIDAgMCAxLTItMlY2YzAtMS4xLjktMiAyLTJoNCJ9XSxbInBhdGgiLHtkOiJNMTYgMTBoNGEyIDIgMCAwIDAgMi0yVjZhMiAyIDAgMCAwLTItMmgtNCJ9XSxbInBhdGgiLHtkOiJNOCAyMEg3YTIgMiAwIDAgMS0yLTJ2LTJjMC0xLjEuOS0yIDItMmgxIn1dLFsicGF0aCIse2Q6Ik0xNiAxNGgxYTIgMiAwIDAgMSAyIDJ2MmEyIDIgMCAwIDEtMiAyaC0xIn1dXX0pO3ZhciBjTSxnJGU9bCgoKT0+e2NNPVtbInJlY3QiLHt3aWR0aDoiNiIsaGVpZ2h0OiIxNiIseDoiNCIseToiMiIscng6IjIifV0sWyJyZWN0Iix7d2lkdGg6IjYiLGhlaWdodDoiOSIseDoiMTQiLHk6IjkiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik0yMiAyMkgyIn1dXX0pO3ZhciBkTSx4JGU9bCgoKT0+e2RNPVtbInJlY3QiLHt3aWR0aDoiMTYiLGhlaWdodDoiNiIseDoiMiIseToiNCIscng6IjIifV0sWyJyZWN0Iix7d2lkdGg6IjkiLGhlaWdodDoiNiIseDoiOSIseToiMTQiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik0yMiAyMlYyIn1dXX0pO3ZhciB1TSxiJGU9bCgoKT0+e3VNPVtbInJlY3QiLHt3aWR0aDoiNiIsaGVpZ2h0OiIxNCIseDoiNCIseToiNSIscng6IjIifV0sWyJyZWN0Iix7d2lkdGg6IjYiLGhlaWdodDoiMTAiLHg6IjE0Iix5OiI3IixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNMTcgMjJ2LTUifV0sWyJwYXRoIix7ZDoiTTE3IDdWMiJ9XSxbInBhdGgiLHtkOiJNNyAyMnYtMyJ9XSxbInBhdGgiLHtkOiJNNyA1VjIifV1dfSk7dmFyIGZNLHYkZT1sKCgpPT57Zk09W1sicmVjdCIse3dpZHRoOiI2IixoZWlnaHQ6IjE0Iix4OiI0Iix5OiI1IixyeDoiMiJ9XSxbInJlY3QiLHt3aWR0aDoiNiIsaGVpZ2h0OiIxMCIseDoiMTQiLHk6IjciLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik0xMCAydjIwIn1dLFsicGF0aCIse2Q6Ik0yMCAydjIwIn1dXX0pO3ZhciBwTSx5JGU9bCgoKT0+e3BNPVtbInJlY3QiLHt3aWR0aDoiNiIsaGVpZ2h0OiIxNCIseDoiNCIseToiNSIscng6IjIifV0sWyJyZWN0Iix7d2lkdGg6IjYiLGhlaWdodDoiMTAiLHg6IjE0Iix5OiI3IixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNNCAydjIwIn1dLFsicGF0aCIse2Q6Ik0xNCAydjIwIn1dXX0pO3ZhciBoTSx3JGU9bCgoKT0+e2hNPVtbInJlY3QiLHt3aWR0aDoiNiIsaGVpZ2h0OiIxNCIseDoiMiIseToiNSIscng6IjIifV0sWyJyZWN0Iix7d2lkdGg6IjYiLGhlaWdodDoiMTAiLHg6IjE2Iix5OiI3IixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNMTIgMnYyMCJ9XV19KTt2YXIgbU0sTSRlPWwoKCk9PnttTT1bWyJyZWN0Iix7d2lkdGg6IjYiLGhlaWdodDoiMTQiLHg6IjIiLHk6IjUiLHJ4OiIyIn1dLFsicmVjdCIse3dpZHRoOiI2IixoZWlnaHQ6IjEwIix4OiIxMiIseToiNyIscng6IjIifV0sWyJwYXRoIix7ZDoiTTIyIDJ2MjAifV1dfSk7dmFyIGdNLGskZT1sKCgpPT57Z009W1sicmVjdCIse3dpZHRoOiI2IixoZWlnaHQ6IjE0Iix4OiI2Iix5OiI1IixyeDoiMiJ9XSxbInJlY3QiLHt3aWR0aDoiNiIsaGVpZ2h0OiIxMCIseDoiMTYiLHk6IjciLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik0yIDJ2MjAifV1dfSk7dmFyIHhNLFMkZT1sKCgpPT57eE09W1sicmVjdCIse3dpZHRoOiI2IixoZWlnaHQ6IjEwIix4OiI5Iix5OiI3IixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNNCAyMlYyIn1dLFsicGF0aCIse2Q6Ik0yMCAyMlYyIn1dXX0pO3ZhciBiTSx6JGU9bCgoKT0+e2JNPVtbInJlY3QiLHt3aWR0aDoiNiIsaGVpZ2h0OiIxNCIseDoiMyIseToiNSIscng6IjIifV0sWyJyZWN0Iix7d2lkdGg6IjYiLGhlaWdodDoiMTAiLHg6IjE1Iix5OiI3IixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNMyAydjIwIn1dLFsicGF0aCIse2Q6Ik0yMSAydjIwIn1dXX0pO3ZhciB2TSxDJGU9bCgoKT0+e3ZNPVtbInJlY3QiLHt3aWR0aDoiNiIsaGVpZ2h0OiIxNiIseDoiNCIseToiNiIscng6IjIifV0sWyJyZWN0Iix7d2lkdGg6IjYiLGhlaWdodDoiOSIseDoiMTQiLHk6IjYiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik0yMiAySDIifV1dfSk7dmFyIHlNLF8kZT1sKCgpPT57eU09W1sicmVjdCIse3dpZHRoOiI5IixoZWlnaHQ6IjYiLHg6IjYiLHk6IjE0IixyeDoiMiJ9XSxbInJlY3QiLHt3aWR0aDoiMTYiLGhlaWdodDoiNiIseDoiNiIseToiNCIscng6IjIifV0sWyJwYXRoIix7ZDoiTTIgMnYyMCJ9XV19KTt2YXIgd00sVCRlPWwoKCk9Pnt3TT1bWyJwYXRoIix7ZDoiTTIyIDE3aC0zIn1dLFsicGF0aCIse2Q6Ik0yMiA3aC01In1dLFsicGF0aCIse2Q6Ik01IDE3SDIifV0sWyJwYXRoIix7ZDoiTTcgN0gyIn1dLFsicmVjdCIse3g6IjUiLHk6IjE0Iix3aWR0aDoiMTQiLGhlaWdodDoiNiIscng6IjIifV0sWyJyZWN0Iix7eDoiNyIseToiNCIsd2lkdGg6IjEwIixoZWlnaHQ6IjYiLHJ4OiIyIn1dXX0pO3ZhciBNTSxMJGU9bCgoKT0+e01NPVtbInJlY3QiLHt3aWR0aDoiMTQiLGhlaWdodDoiNiIseDoiNSIseToiMTQiLHJ4OiIyIn1dLFsicmVjdCIse3dpZHRoOiIxMCIsaGVpZ2h0OiI2Iix4OiI3Iix5OiI0IixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNMiAyMGgyMCJ9XSxbInBhdGgiLHtkOiJNMiAxMGgyMCJ9XV19KTt2YXIga00sRCRlPWwoKCk9PntrTT1bWyJyZWN0Iix7d2lkdGg6IjE0IixoZWlnaHQ6IjYiLHg6IjUiLHk6IjE0IixyeDoiMiJ9XSxbInJlY3QiLHt3aWR0aDoiMTAiLGhlaWdodDoiNiIseDoiNyIseToiNCIscng6IjIifV0sWyJwYXRoIix7ZDoiTTIgMTRoMjAifV0sWyJwYXRoIix7ZDoiTTIgNGgyMCJ9XV19KTt2YXIgU00sQSRlPWwoKCk9PntTTT1bWyJyZWN0Iix7d2lkdGg6IjE0IixoZWlnaHQ6IjYiLHg6IjUiLHk6IjE2IixyeDoiMiJ9XSxbInJlY3QiLHt3aWR0aDoiMTAiLGhlaWdodDoiNiIseDoiNyIseToiMiIscng6IjIifV0sWyJwYXRoIix7ZDoiTTIgMTJoMjAifV1dfSk7dmFyIHpNLEUkZT1sKCgpPT57ek09W1sicmVjdCIse3dpZHRoOiIxNCIsaGVpZ2h0OiI2Iix4OiI1Iix5OiIxMiIscng6IjIifV0sWyJyZWN0Iix7d2lkdGg6IjEwIixoZWlnaHQ6IjYiLHg6IjciLHk6IjIiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik0yIDIyaDIwIn1dXX0pO3ZhciBDTSwkJGU9bCgoKT0+e0NNPVtbInJlY3QiLHt3aWR0aDoiMTQiLGhlaWdodDoiNiIseDoiNSIseToiMTYiLHJ4OiIyIn1dLFsicmVjdCIse3dpZHRoOiIxMCIsaGVpZ2h0OiI2Iix4OiI3Iix5OiI2IixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNMiAyaDIwIn1dXX0pO3ZhciBfTSxQJGU9bCgoKT0+e19NPVtbInJlY3QiLHt3aWR0aDoiMTAiLGhlaWdodDoiNiIseDoiNyIseToiOSIscng6IjIifV0sWyJwYXRoIix7ZDoiTTIyIDIwSDIifV0sWyJwYXRoIix7ZDoiTTIyIDRIMiJ9XV19KTt2YXIgVE0sSSRlPWwoKCk9PntUTT1bWyJyZWN0Iix7d2lkdGg6IjE0IixoZWlnaHQ6IjYiLHg6IjUiLHk6IjE1IixyeDoiMiJ9XSxbInJlY3QiLHt3aWR0aDoiMTAiLGhlaWdodDoiNiIseDoiNyIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoiTTIgMjFoMjAifV0sWyJwYXRoIix7ZDoiTTIgM2gyMCJ9XV19KTt2YXIgTE0sTiRlPWwoKCk9PntMTT1bWyJwYXRoIix7ZDoiTTE2IDEyaDMifV0sWyJwYXRoIix7ZDoiTTE3LjUgMTJhOCA4IDAgMCAxLTggOEE0LjUgNC41IDAgMCAxIDUgMTUuNWMwLTYgOC00IDgtOC41YTMgMyAwIDEgMC02IDBjMCAzIDIuNSA4LjUgMTIgMTMifV1dfSk7dmFyIERNLEYkZT1sKCgpPT57RE09W1sicGF0aCIse2Q6Ik0xMCAxMEg2In1dLFsicGF0aCIse2Q6Ik0xNCAxOFY2YTIgMiAwIDAgMC0yLTJINGEyIDIgMCAwIDAtMiAydjExYTEgMSAwIDAgMCAxIDFoMiJ9XSxbInBhdGgiLHtkOiJNMTkgMThoMmExIDEgMCAwIDAgMS0xdi0zLjI4YTEgMSAwIDAgMC0uNjg0LS45NDhsLTEuOTIzLS42NDFhMSAxIDAgMCAxLS41NzgtLjUwMmwtMS41MzktMy4wNzZBMSAxIDAgMCAwIDE2LjM4MiA4SDE0In1dLFsicGF0aCIse2Q6Ik04IDh2NCJ9XSxbInBhdGgiLHtkOiJNOSAxOGg2In1dLFsiY2lyY2xlIix7Y3g6IjE3IixjeToiMTgiLHI6IjIifV0sWyJjaXJjbGUiLHtjeDoiNyIsY3k6IjE4IixyOiIyIn1dXX0pO3ZhciBBTSxPJGU9bCgoKT0+e0FNPVtbInBhdGgiLHtkOiJNMTAgMTdjLTUtMy03LTctNy05YTIgMiAwIDAgMSA0IDBjMCAyLjUtNSAyLjUtNSA2IDAgMS43IDEuMyAzIDMgMyAyLjggMCA1LTIuMiA1LTUifV0sWyJwYXRoIix7ZDoiTTIyIDE3Yy01LTMtNy03LTctOWEyIDIgMCAwIDEgNCAwYzAgMi41LTUgMi41LTUgNiAwIDEuNyAxLjMgMyAzIDMgMi44IDAgNS0yLjIgNS01In1dXX0pO3ZhciBFTSxSJGU9bCgoKT0+e0VNPVtbInBhdGgiLHtkOiJNMTAgMnY1LjYzMmMwIC40MjQtLjI3Mi43OTUtLjY1My45ODJBNiA2IDAgMCAwIDYgMTRjLjAwNiA0IDMgNyA1IDgifV0sWyJwYXRoIix7ZDoiTTEwIDVIOGEyIDIgMCAwIDAgMCA0aC42OCJ9XSxbInBhdGgiLHtkOiJNMTQgMnY1LjYzMmMwIC40MjQuMjcyLjc5NS42NTIuOTgyQTYgNiAwIDAgMSAxOCAxNGMwIDQtMyA3LTUgOCJ9XSxbInBhdGgiLHtkOiJNMTQgNWgyYTIgMiAwIDAgMSAwIDRoLS42OCJ9XSxbInBhdGgiLHtkOiJNMTggMjJINiJ9XSxbInBhdGgiLHtkOiJNOSAyaDYifV1dfSk7dmFyICRNLEIkZT1sKCgpPT57JE09W1sicGF0aCIse2Q6Ik0xMiA2djE2In1dLFsicGF0aCIse2Q6Im0xOSAxMyAyLTFhOSA5IDAgMCAxLTE4IDBsMiAxIn1dLFsicGF0aCIse2Q6Ik05IDExaDYifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiI0IixyOiIyIn1dXX0pO3ZhciBQTSxIJGU9bCgoKT0+e1BNPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XSxbInBhdGgiLHtkOiJNMTYgMTZzLTEuNS0yLTQtMi00IDItNCAyIn1dLFsicGF0aCIse2Q6Ik03LjUgOCAxMCA5In1dLFsicGF0aCIse2Q6Im0xNCA5IDIuNS0xIn1dLFsicGF0aCIse2Q6Ik05IDEwaC4wMSJ9XSxbInBhdGgiLHtkOiJNMTUgMTBoLjAxIn1dXX0pO3ZhciBJTSxxJGU9bCgoKT0+e0lNPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XSxbInBhdGgiLHtkOiJNOCAxNWg4In1dLFsicGF0aCIse2Q6Ik04IDloMiJ9XSxbInBhdGgiLHtkOiJNMTQgOWgyIn1dXX0pO3ZhciBOTSxqJGU9bCgoKT0+e05NPVtbInBhdGgiLHtkOiJNMiAxMiA3IDIifV0sWyJwYXRoIix7ZDoibTcgMTIgNS0xMCJ9XSxbInBhdGgiLHtkOiJtMTIgMTIgNS0xMCJ9XSxbInBhdGgiLHtkOiJtMTcgMTIgNS0xMCJ9XSxbInBhdGgiLHtkOiJNNC41IDdoMTUifV0sWyJwYXRoIix7ZDoiTTEyIDE2djYifV1dfSk7dmFyIEZNLFYkZT1sKCgpPT57Rk09W1sicGF0aCIse2Q6Ik03IDEwSDZhNCA0IDAgMCAxLTQtNCAxIDEgMCAwIDEgMS0xaDQifV0sWyJwYXRoIix7ZDoiTTcgNWExIDEgMCAwIDEgMS0xaDEzYTEgMSAwIDAgMSAxIDEgNyA3IDAgMCAxLTcgN0g4YTEgMSAwIDAgMS0xLTF6In1dLFsicGF0aCIse2Q6Ik05IDEydjUifV0sWyJwYXRoIix7ZDoiTTE1IDEydjUifV0sWyJwYXRoIix7ZDoiTTUgMjBhMyAzIDAgMCAxIDMtM2g4YTMgMyAwIDAgMSAzIDMgMSAxIDAgMCAxLTEgMUg2YTEgMSAwIDAgMS0xLTEifV1dfSk7dmFyIE9NLFUkZT1sKCgpPT57T009W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjEwIn1dLFsicGF0aCIse2Q6Im0xNC4zMSA4IDUuNzQgOS45NCJ9XSxbInBhdGgiLHtkOiJNOS42OSA4aDExLjQ4In1dLFsicGF0aCIse2Q6Im03LjM4IDEyIDUuNzQtOS45NCJ9XSxbInBhdGgiLHtkOiJNOS42OSAxNiAzLjk1IDYuMDYifV0sWyJwYXRoIix7ZDoiTTE0LjMxIDE2SDIuODMifV0sWyJwYXRoIix7ZDoibTE2LjYyIDEyLTUuNzQgOS45NCJ9XV19KTt2YXIgUk0sVyRlPWwoKCk9PntSTT1bWyJyZWN0Iix7d2lkdGg6IjIwIixoZWlnaHQ6IjE2Iix4OiIyIix5OiI0IixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNNiA4aC4wMSJ9XSxbInBhdGgiLHtkOiJNMTAgOGguMDEifV0sWyJwYXRoIix7ZDoiTTE0IDhoLjAxIn1dXX0pO3ZhciBCTSxHJGU9bCgoKT0+e0JNPVtbInJlY3QiLHt4OiIyIix5OiI0Iix3aWR0aDoiMjAiLGhlaWdodDoiMTYiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik0xMCA0djQifV0sWyJwYXRoIix7ZDoiTTIgOGgyMCJ9XSxbInBhdGgiLHtkOiJNNiA0djQifV1dfSk7dmFyIEhNLFkkZT1sKCgpPT57SE09W1sicGF0aCIse2Q6Ik0xMiA2LjUyOFYzYTEgMSAwIDAgMSAxLTFoMCJ9XSxbInBhdGgiLHtkOiJNMTguMjM3IDIxQTE1IDE1IDAgMCAwIDIyIDExYTYgNiAwIDAgMC0xMC00LjQ3MkE2IDYgMCAwIDAgMiAxMWExNS4xIDE1LjEgMCAwIDAgMy43NjMgMTAgMyAzIDAgMCAwIDMuNjQ4LjY0OCA1LjUgNS41IDAgMCAxIDUuMTc4IDBBMyAzIDAgMCAwIDE4LjIzNyAyMSJ9XV19KTt2YXIgcU0sWiRlPWwoKCk9PntxTT1bWyJyZWN0Iix7d2lkdGg6IjIwIixoZWlnaHQ6IjUiLHg6IjIiLHk6IjMiLHJ4OiIxIn1dLFsicGF0aCIse2Q6Ik00IDh2MTFhMiAyIDAgMCAwIDIgMmgyIn1dLFsicGF0aCIse2Q6Ik0yMCA4djExYTIgMiAwIDAgMS0yIDJoLTIifV0sWyJwYXRoIix7ZDoibTkgMTUgMy0zIDMgMyJ9XSxbInBhdGgiLHtkOiJNMTIgMTJ2OSJ9XV19KTt2YXIgak0sWCRlPWwoKCk9PntqTT1bWyJyZWN0Iix7d2lkdGg6IjIwIixoZWlnaHQ6IjUiLHg6IjIiLHk6IjMiLHJ4OiIxIn1dLFsicGF0aCIse2Q6Ik00IDh2MTFhMiAyIDAgMCAwIDIgMmgxMmEyIDIgMCAwIDAgMi0yVjgifV0sWyJwYXRoIix7ZDoibTkuNSAxNyA1LTUifV0sWyJwYXRoIix7ZDoibTkuNSAxMiA1IDUifV1dfSk7dmFyIFZNLFEkZT1sKCgpPT57Vk09W1sicmVjdCIse3dpZHRoOiIyMCIsaGVpZ2h0OiI1Iix4OiIyIix5OiIzIixyeDoiMSJ9XSxbInBhdGgiLHtkOiJNNCA4djExYTIgMiAwIDAgMCAyIDJoMTJhMiAyIDAgMCAwIDItMlY4In1dLFsicGF0aCIse2Q6Ik0xMCAxMmg0In1dXX0pO3ZhciBVTSxLJGU9bCgoKT0+e1VNPVtbInBhdGgiLHtkOiJNMTkgOVY2YTIgMiAwIDAgMC0yLTJIN2EyIDIgMCAwIDAtMiAydjMifV0sWyJwYXRoIix7ZDoiTTMgMTZhMiAyIDAgMCAwIDIgMmgxNGEyIDIgMCAwIDAgMi0ydi01YTIgMiAwIDAgMC00IDB2MS41YS41LjUgMCAwIDEtLjUuNWgtOWEuNS41IDAgMCAxLS41LS41VjExYTIgMiAwIDAgMC00IDB6In1dLFsicGF0aCIse2Q6Ik01IDE4djIifV0sWyJwYXRoIix7ZDoiTTE5IDE4djIifV1dfSk7dmFyIFdNLEokZT1sKCgpPT57V009W1sicGF0aCIse2Q6Ik0xNSAxMWExIDEgMCAwIDAgMSAxaDIuOTM5YTEgMSAwIDAgMSAuNzUgMS44MTFsLTYuODM1IDYuODM2YTEuMjA3IDEuMjA3IDAgMCAxLTEuNzA3IDBMNC4zMSAxMy44MWExIDEgMCAwIDEgLjc1LTEuODExSDhhMSAxIDAgMCAwIDEtMVY5YTEgMSAwIDAgMSAxLTFoNGExIDEgMCAwIDEgMSAxeiJ9XSxbInBhdGgiLHtkOiJNOSA0aDYifV1dfSk7dmFyIEdNLGVQZT1sKCgpPT57R009W1sicGF0aCIse2Q6Ik0xNSAxMWExIDEgMCAwIDAgMSAxaDIuOTM5YTEgMSAwIDAgMSAuNzUgMS44MTFsLTYuODM1IDYuODM2YTEuMjA3IDEuMjA3IDAgMCAxLTEuNzA3IDBMNC4zMSAxMy44MWExIDEgMCAwIDEgLjc1LTEuODExSDhhMSAxIDAgMCAwIDEtMVY1YTEgMSAwIDAgMSAxLTFoNGExIDEgMCAwIDEgMSAxeiJ9XV19KTt2YXIgWU0sdFBlPWwoKCk9PntZTT1bWyJwYXRoIix7ZDoiTTEzIDlhMSAxIDAgMCAxLTEtMVY1LjA2MWExIDEgMCAwIDAtMS44MTEtLjc1bC02LjgzNSA2LjgzNmExLjIwNyAxLjIwNyAwIDAgMCAwIDEuNzA3bDYuODM1IDYuODM1YTEgMSAwIDAgMCAxLjgxMS0uNzVWMTZhMSAxIDAgMCAxIDEtMWgyYTEgMSAwIDAgMCAxLTF2LTRhMSAxIDAgMCAwLTEtMXoifV0sWyJwYXRoIix7ZDoiTTIwIDl2NiJ9XV19KTt2YXIgWk0sclBlPWwoKCk9PntaTT1bWyJwYXRoIix7ZDoiTTEzIDlhMSAxIDAgMCAxLTEtMVY1LjA2MWExIDEgMCAwIDAtMS44MTEtLjc1bC02LjgzNSA2LjgzNmExLjIwNyAxLjIwNyAwIDAgMCAwIDEuNzA3bDYuODM1IDYuODM1YTEgMSAwIDAgMCAxLjgxMS0uNzVWMTZhMSAxIDAgMCAxIDEtMWg2YTEgMSAwIDAgMCAxLTF2LTRhMSAxIDAgMCAwLTEtMXoifV1dfSk7dmFyIFhNLGFQZT1sKCgpPT57WE09W1sicGF0aCIse2Q6Ik0xMSA5YTEgMSAwIDAgMCAxLTFWNS4wNjFhMSAxIDAgMCAxIDEuODExLS43NWw2LjgzNiA2LjgzNmExLjIwNyAxLjIwNyAwIDAgMSAwIDEuNzA3bC02LjgzNiA2LjgzNWExIDEgMCAwIDEtMS44MTEtLjc1VjE2YTEgMSAwIDAgMC0xLTFIOWExIDEgMCAwIDEtMS0xdi00YTEgMSAwIDAgMSAxLTF6In1dLFsicGF0aCIse2Q6Ik00IDl2NiJ9XV19KTt2YXIgUU0saVBlPWwoKCk9PntRTT1bWyJwYXRoIix7ZDoiTTExIDlhMSAxIDAgMCAwIDEtMVY1LjA2MWExIDEgMCAwIDEgMS44MTEtLjc1bDYuODM2IDYuODM2YTEuMjA3IDEuMjA3IDAgMCAxIDAgMS43MDdsLTYuODM2IDYuODM1YTEgMSAwIDAgMS0xLjgxMS0uNzVWMTZhMSAxIDAgMCAwLTEtMUg1YTEgMSAwIDAgMS0xLTF2LTRhMSAxIDAgMCAxIDEtMXoifV1dfSk7dmFyIEtNLG9QZT1sKCgpPT57S009W1sicGF0aCIse2Q6Ik05IDEzYTEgMSAwIDAgMC0xLTFINS4wNjFhMSAxIDAgMCAxLS43NS0xLjgxMWw2LjgzNi02LjgzNWExLjIwNyAxLjIwNyAwIDAgMSAxLjcwNyAwbDYuODM1IDYuODM1YTEgMSAwIDAgMS0uNzUgMS44MTFIMTZhMSAxIDAgMCAwLTEgMXYyYTEgMSAwIDAgMS0xIDFoLTRhMSAxIDAgMCAxLTEtMXoifV0sWyJwYXRoIix7ZDoiTTkgMjBoNiJ9XV19KTt2YXIgSk0sblBlPWwoKCk9PntKTT1bWyJwYXRoIix7ZDoibTMgMTYgNCA0IDQtNCJ9XSxbInBhdGgiLHtkOiJNNyAyMFY0In1dLFsicmVjdCIse3g6IjE1Iix5OiI0Iix3aWR0aDoiNCIsaGVpZ2h0OiI2IixyeToiMiJ9XSxbInBhdGgiLHtkOiJNMTcgMjB2LTZoLTIifV0sWyJwYXRoIix7ZDoiTTE1IDIwaDQifV1dfSk7dmFyIGVrLHNQZT1sKCgpPT57ZWs9W1sicGF0aCIse2Q6Ik05IDEzYTEgMSAwIDAgMC0xLTFINS4wNjFhMSAxIDAgMCAxLS43NS0xLjgxMWw2LjgzNi02LjgzNWExLjIwNyAxLjIwNyAwIDAgMSAxLjcwNyAwbDYuODM1IDYuODM1YTEgMSAwIDAgMS0uNzUgMS44MTFIMTZhMSAxIDAgMCAwLTEgMXY2YTEgMSAwIDAgMS0xIDFoLTRhMSAxIDAgMCAxLTEtMXoifV1dfSk7dmFyIHRrLGxQZT1sKCgpPT57dGs9W1sicGF0aCIse2Q6Im0zIDE2IDQgNCA0LTQifV0sWyJwYXRoIix7ZDoiTTcgMjBWNCJ9XSxbInBhdGgiLHtkOiJNMTcgMTBWNGgtMiJ9XSxbInBhdGgiLHtkOiJNMTUgMTBoNCJ9XSxbInJlY3QiLHt4OiIxNSIseToiMTQiLHdpZHRoOiI0IixoZWlnaHQ6IjYiLHJ5OiIyIn1dXX0pO3ZhciB1dSxjUGU9bCgoKT0+e3V1PVtbInBhdGgiLHtkOiJtMyAxNiA0IDQgNC00In1dLFsicGF0aCIse2Q6Ik03IDIwVjQifV0sWyJwYXRoIix7ZDoiTTIwIDhoLTUifV0sWyJwYXRoIix7ZDoiTTE1IDEwVjYuNWEyLjUgMi41IDAgMCAxIDUgMFYxMCJ9XSxbInBhdGgiLHtkOiJNMTUgMTRoNWwtNSA2aDUifV1dfSk7dmFyIHJrLGRQZT1sKCgpPT57cms9W1sicGF0aCIse2Q6Ik0xOSAzSDUifV0sWyJwYXRoIix7ZDoiTTEyIDIxVjcifV0sWyJwYXRoIix7ZDoibTYgMTUgNiA2IDYtNiJ9XV19KTt2YXIgYWssdVBlPWwoKCk9Pnthaz1bWyJwYXRoIix7ZDoiTTE3IDcgNyAxNyJ9XSxbInBhdGgiLHtkOiJNMTcgMTdIN1Y3In1dXX0pO3ZhciBpayxmUGU9bCgoKT0+e2lrPVtbInBhdGgiLHtkOiJtMyAxNiA0IDQgNC00In1dLFsicGF0aCIse2Q6Ik03IDIwVjQifV0sWyJwYXRoIix7ZDoiTTExIDRoNCJ9XSxbInBhdGgiLHtkOiJNMTEgOGg3In1dLFsicGF0aCIse2Q6Ik0xMSAxMmgxMCJ9XV19KTt2YXIgb2sscFBlPWwoKCk9Pntvaz1bWyJwYXRoIix7ZDoibTcgNyAxMCAxMCJ9XSxbInBhdGgiLHtkOiJNMTcgN3YxMEg3In1dXX0pO3ZhciBuayxoUGU9bCgoKT0+e25rPVtbInBhdGgiLHtkOiJNMTIgMnYxNCJ9XSxbInBhdGgiLHtkOiJtMTkgOS03IDctNy03In1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiMjEiLHI6IjEifV1dfSk7dmFyIHNrLG1QZT1sKCgpPT57c2s9W1sicGF0aCIse2Q6Ik0xMiAxN1YzIn1dLFsicGF0aCIse2Q6Im02IDExIDYgNiA2LTYifV0sWyJwYXRoIix7ZDoiTTE5IDIxSDUifV1dfSk7dmFyIGxrLGdQZT1sKCgpPT57bGs9W1sicGF0aCIse2Q6Im0zIDE2IDQgNCA0LTQifV0sWyJwYXRoIix7ZDoiTTcgMjBWNCJ9XSxbInBhdGgiLHtkOiJtMjEgOC00LTQtNCA0In1dLFsicGF0aCIse2Q6Ik0xNyA0djE2In1dXX0pO3ZhciBmdSx4UGU9bCgoKT0+e2Z1PVtbInBhdGgiLHtkOiJtMyAxNiA0IDQgNC00In1dLFsicGF0aCIse2Q6Ik03IDIwVjQifV0sWyJwYXRoIix7ZDoiTTExIDRoMTAifV0sWyJwYXRoIix7ZDoiTTExIDhoNyJ9XSxbInBhdGgiLHtkOiJNMTEgMTJoNCJ9XV19KTt2YXIgcHUsYlBlPWwoKCk9PntwdT1bWyJwYXRoIix7ZDoibTMgMTYgNCA0IDQtNCJ9XSxbInBhdGgiLHtkOiJNNyA0djE2In1dLFsicGF0aCIse2Q6Ik0xNSA0aDVsLTUgNmg1In1dLFsicGF0aCIse2Q6Ik0xNSAyMHYtMy41YTIuNSAyLjUgMCAwIDEgNSAwVjIwIn1dLFsicGF0aCIse2Q6Ik0yMCAxOGgtNSJ9XV19KTt2YXIgY2ssdlBlPWwoKCk9Pntjaz1bWyJwYXRoIix7ZDoiTTEyIDV2MTQifV0sWyJwYXRoIix7ZDoibTE5IDEyLTcgNy03LTcifV1dfSk7dmFyIGRrLHlQZT1sKCgpPT57ZGs9W1sicGF0aCIse2Q6Im05IDYtNiA2IDYgNiJ9XSxbInBhdGgiLHtkOiJNMyAxMmgxNCJ9XSxbInBhdGgiLHtkOiJNMjEgMTlWNSJ9XV19KTt2YXIgdWssd1BlPWwoKCk9Pnt1az1bWyJwYXRoIix7ZDoiTTggMyA0IDdsNCA0In1dLFsicGF0aCIse2Q6Ik00IDdoMTYifV0sWyJwYXRoIix7ZDoibTE2IDIxIDQtNC00LTQifV0sWyJwYXRoIix7ZDoiTTIwIDE3SDQifV1dfSk7dmFyIGZrLE1QZT1sKCgpPT57Zms9W1sicGF0aCIse2Q6Ik0zIDE5VjUifV0sWyJwYXRoIix7ZDoibTEzIDYtNiA2IDYgNiJ9XSxbInBhdGgiLHtkOiJNNyAxMmgxNCJ9XV19KTt2YXIgcGssa1BlPWwoKCk9Pntwaz1bWyJwYXRoIix7ZDoibTEyIDE5LTctNyA3LTcifV0sWyJwYXRoIix7ZDoiTTE5IDEySDUifV1dfSk7dmFyIGhrLFNQZT1sKCgpPT57aGs9W1sicGF0aCIse2Q6Ik0zIDV2MTQifV0sWyJwYXRoIix7ZDoiTTIxIDEySDcifV0sWyJwYXRoIix7ZDoibTE1IDE4IDYtNi02LTYifV1dfSk7dmFyIG1rLHpQZT1sKCgpPT57bWs9W1sicGF0aCIse2Q6Im0xNiAzIDQgNC00IDQifV0sWyJwYXRoIix7ZDoiTTIwIDdINCJ9XSxbInBhdGgiLHtkOiJtOCAyMS00LTQgNC00In1dLFsicGF0aCIse2Q6Ik00IDE3aDE2In1dXX0pO3ZhciBnayxDUGU9bCgoKT0+e2drPVtbInBhdGgiLHtkOiJNMTcgMTJIMyJ9XSxbInBhdGgiLHtkOiJtMTEgMTggNi02LTYtNiJ9XSxbInBhdGgiLHtkOiJNMjEgNXYxNCJ9XV19KTt2YXIgeGssX1BlPWwoKCk9Pnt4az1bWyJwYXRoIix7ZDoiTTUgMTJoMTQifV0sWyJwYXRoIix7ZDoibTEyIDUgNyA3LTcgNyJ9XV19KTt2YXIgYmssVFBlPWwoKCk9Pntiaz1bWyJwYXRoIix7ZDoibTMgOCA0LTQgNCA0In1dLFsicGF0aCIse2Q6Ik03IDR2MTYifV0sWyJyZWN0Iix7eDoiMTUiLHk6IjQiLHdpZHRoOiI0IixoZWlnaHQ6IjYiLHJ5OiIyIn1dLFsicGF0aCIse2Q6Ik0xNyAyMHYtNmgtMiJ9XSxbInBhdGgiLHtkOiJNMTUgMjBoNCJ9XV19KTt2YXIgdmssTFBlPWwoKCk9Pnt2az1bWyJwYXRoIix7ZDoibTMgOCA0LTQgNCA0In1dLFsicGF0aCIse2Q6Ik03IDR2MTYifV0sWyJwYXRoIix7ZDoiTTE3IDEwVjRoLTIifV0sWyJwYXRoIix7ZDoiTTE1IDEwaDQifV0sWyJyZWN0Iix7eDoiMTUiLHk6IjE0Iix3aWR0aDoiNCIsaGVpZ2h0OiI2IixyeToiMiJ9XV19KTt2YXIgaHUsRFBlPWwoKCk9PntodT1bWyJwYXRoIix7ZDoibTMgOCA0LTQgNCA0In1dLFsicGF0aCIse2Q6Ik03IDR2MTYifV0sWyJwYXRoIix7ZDoiTTIwIDhoLTUifV0sWyJwYXRoIix7ZDoiTTE1IDEwVjYuNWEyLjUgMi41IDAgMCAxIDUgMFYxMCJ9XSxbInBhdGgiLHtkOiJNMTUgMTRoNWwtNSA2aDUifV1dfSk7dmFyIHlrLEFQZT1sKCgpPT57eWs9W1sicGF0aCIse2Q6Im0yMSAxNi00IDQtNC00In1dLFsicGF0aCIse2Q6Ik0xNyAyMFY0In1dLFsicGF0aCIse2Q6Im0zIDggNC00IDQgNCJ9XSxbInBhdGgiLHtkOiJNNyA0djE2In1dXX0pO3ZhciB3ayxFUGU9bCgoKT0+e3drPVtbInBhdGgiLHtkOiJtNSA5IDctNyA3IDcifV0sWyJwYXRoIix7ZDoiTTEyIDE2VjIifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIyMSIscjoiMSJ9XV19KTt2YXIgTWssJFBlPWwoKCk9PntNaz1bWyJwYXRoIix7ZDoibTE4IDktNi02LTYgNiJ9XSxbInBhdGgiLHtkOiJNMTIgM3YxNCJ9XSxbInBhdGgiLHtkOiJNNSAyMWgxNCJ9XV19KTt2YXIga2ssUFBlPWwoKCk9Pntraz1bWyJwYXRoIix7ZDoiTTcgMTdWN2gxMCJ9XSxbInBhdGgiLHtkOiJNMTcgMTcgNyA3In1dXX0pO3ZhciBtdSxJUGU9bCgoKT0+e211PVtbInBhdGgiLHtkOiJtMyA4IDQtNCA0IDQifV0sWyJwYXRoIix7ZDoiTTcgNHYxNiJ9XSxbInBhdGgiLHtkOiJNMTEgMTJoNCJ9XSxbInBhdGgiLHtkOiJNMTEgMTZoNyJ9XSxbInBhdGgiLHtkOiJNMTEgMjBoMTAifV1dfSk7dmFyIFNrLE5QZT1sKCgpPT57U2s9W1sicGF0aCIse2Q6Ik03IDdoMTB2MTAifV0sWyJwYXRoIix7ZDoiTTcgMTcgMTcgNyJ9XV19KTt2YXIgemssRlBlPWwoKCk9Pnt6az1bWyJwYXRoIix7ZDoiTTUgM2gxNCJ9XSxbInBhdGgiLHtkOiJtMTggMTMtNi02LTYgNiJ9XSxbInBhdGgiLHtkOiJNMTIgN3YxNCJ9XV19KTt2YXIgQ2ssT1BlPWwoKCk9PntDaz1bWyJwYXRoIix7ZDoibTMgOCA0LTQgNCA0In1dLFsicGF0aCIse2Q6Ik03IDR2MTYifV0sWyJwYXRoIix7ZDoiTTExIDEyaDEwIn1dLFsicGF0aCIse2Q6Ik0xMSAxNmg3In1dLFsicGF0aCIse2Q6Ik0xMSAyMGg0In1dXX0pO3ZhciBndSxSUGU9bCgoKT0+e2d1PVtbInBhdGgiLHtkOiJtMyA4IDQtNCA0IDQifV0sWyJwYXRoIix7ZDoiTTcgNHYxNiJ9XSxbInBhdGgiLHtkOiJNMTUgNGg1bC01IDZoNSJ9XSxbInBhdGgiLHtkOiJNMTUgMjB2LTMuNWEyLjUgMi41IDAgMCAxIDUgMFYyMCJ9XSxbInBhdGgiLHtkOiJNMjAgMThoLTUifV1dfSk7dmFyIF9rLEJQZT1sKCgpPT57X2s9W1sicGF0aCIse2Q6Im01IDEyIDctNyA3IDcifV0sWyJwYXRoIix7ZDoiTTEyIDE5VjUifV1dfSk7dmFyIFRrLEhQZT1sKCgpPT57VGs9W1sicGF0aCIse2Q6Im00IDYgMy0zIDMgMyJ9XSxbInBhdGgiLHtkOiJNNyAxN1YzIn1dLFsicGF0aCIse2Q6Im0xNCA2IDMtMyAzIDMifV0sWyJwYXRoIix7ZDoiTTE3IDE3VjMifV0sWyJwYXRoIix7ZDoiTTQgMjFoMTYifV1dfSk7dmFyIExrLHFQZT1sKCgpPT57TGs9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjQifV0sWyJwYXRoIix7ZDoiTTE2IDh2NWEzIDMgMCAwIDAgNiAwdi0xYTEwIDEwIDAgMSAwLTQgOCJ9XV19KTt2YXIgRGssalBlPWwoKCk9PntEaz1bWyJwYXRoIix7ZDoiTTEyIDZ2MTIifV0sWyJwYXRoIix7ZDoiTTE3LjE5NiA5IDYuODA0IDE1In1dLFsicGF0aCIse2Q6Im02LjgwNCA5IDEwLjM5MiA2In1dXX0pO3ZhciBBayxWUGU9bCgoKT0+e0FrPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxIn1dLFsicGF0aCIse2Q6Ik0yMC4yIDIwLjJjMi4wNC0yLjAzLjAyLTcuMzYtNC41LTExLjktNC41NC00LjUyLTkuODctNi41NC0xMS45LTQuNS0yLjA0IDIuMDMtLjAyIDcuMzYgNC41IDExLjkgNC41NCA0LjUyIDkuODcgNi41NCAxMS45IDQuNVoifV0sWyJwYXRoIix7ZDoiTTE1LjcgMTUuN2M0LjUyLTQuNTQgNi41NC05Ljg3IDQuNS0xMS45LTIuMDMtMi4wNC03LjM2LS4wMi0xMS45IDQuNS00LjUyIDQuNTQtNi41NCA5Ljg3LTQuNSAxMS45IDIuMDMgMi4wNCA3LjM2LjAyIDExLjktNC41WiJ9XV19KTt2YXIgRWssVVBlPWwoKCk9PntFaz1bWyJwYXRoIix7ZDoiTTIgMTB2MyJ9XSxbInBhdGgiLHtkOiJNNiA2djExIn1dLFsicGF0aCIse2Q6Ik0xMCAzdjE4In1dLFsicGF0aCIse2Q6Ik0xNCA4djcifV0sWyJwYXRoIix7ZDoiTTE4IDV2MTMifV0sWyJwYXRoIix7ZDoiTTIyIDEwdjMifV1dfSk7dmFyICRrLFdQZT1sKCgpPT57JGs9W1sicGF0aCIse2Q6Ik0yIDEzYTIgMiAwIDAgMCAyLTJWN2EyIDIgMCAwIDEgNCAwdjEzYTIgMiAwIDAgMCA0IDBWNGEyIDIgMCAwIDEgNCAwdjEzYTIgMiAwIDAgMCA0IDB2LTRhMiAyIDAgMCAxIDItMiJ9XV19KTt2YXIgUGssR1BlPWwoKCk9PntQaz1bWyJwYXRoIix7ZDoibTE1LjQ3NyAxMi44OSAxLjUxNSA4LjUyNmEuNS41IDAgMCAxLS44MS40N2wtMy41OC0yLjY4N2ExIDEgMCAwIDAtMS4xOTcgMGwtMy41ODYgMi42ODZhLjUuNSAwIDAgMS0uODEtLjQ2OWwxLjUxNC04LjUyNiJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjgiLHI6IjYifV1dfSk7dmFyIElrLFlQZT1sKCgpPT57SWs9W1sicGF0aCIse2Q6Im0xNCAxMi04LjM4MSA4LjM4YTEgMSAwIDAgMS0zLjAwMS0zTDExIDkifV0sWyJwYXRoIix7ZDoiTTE1IDE1LjVhLjUuNSAwIDAgMCAuNS41QTYuNSA2LjUgMCAwIDAgMjIgOS41YS41LjUgMCAwIDAtLjUtLjVoLTEuNjcyYTIgMiAwIDAgMS0xLjQxNC0uNTg2bC01LjA2Mi01LjA2MmExLjIwNSAxLjIwNSAwIDAgMC0xLjcwNCAwTDkuMzUyIDUuNjQ4YTEuMjA1IDEuMjA1IDAgMCAwIDAgMS43MDRsNS4wNjIgNS4wNjJBMiAyIDAgMCAxIDE1IDEzLjgyOHoifV1dfSk7dmFyIHh1LFpQZT1sKCgpPT57eHU9W1sicGF0aCIse2Q6Ik0xMy41IDEwLjUgMTUgOSJ9XSxbInBhdGgiLHtkOiJNNCA0djE1YTEgMSAwIDAgMCAxIDFoMTUifV0sWyJwYXRoIix7ZDoiTTQuMjkzIDE5LjcwNyA2IDE4In1dLFsicGF0aCIse2Q6Im05IDE1IDEuNS0xLjUifV1dfSk7dmFyIE5rLFhQZT1sKCgpPT57Tms9W1sicGF0aCIse2Q6Ik0xMCAxNmMuNS4zIDEuMi41IDIgLjVzMS41LS4yIDItLjUifV0sWyJwYXRoIix7ZDoiTTE1IDEyaC4wMSJ9XSxbInBhdGgiLHtkOiJNMTkuMzggNi44MTNBOSA5IDAgMCAxIDIwLjggMTAuMmEyIDIgMCAwIDEgMCAzLjYgOSA5IDAgMCAxLTE3LjYgMCAyIDIgMCAwIDEgMC0zLjZBOSA5IDAgMCAxIDEyIDNjMiAwIDMuNSAxLjEgMy41IDIuNXMtLjkgMi41LTIgMi41Yy0uOCAwLTEuNS0uNC0xLjUtMSJ9XSxbInBhdGgiLHtkOiJNOSAxMmguMDEifV1dfSk7dmFyIEZrLFFQZT1sKCgpPT57Rms9W1sicGF0aCIse2Q6Ik00IDEwYTQgNCAwIDAgMSA0LTRoOGE0IDQgMCAwIDEgNCA0djEwYTIgMiAwIDAgMS0yIDJINmEyIDIgMCAwIDEtMi0yeiJ9XSxbInBhdGgiLHtkOiJNOCAxMGg4In1dLFsicGF0aCIse2Q6Ik04IDE4aDgifV0sWyJwYXRoIix7ZDoiTTggMjJ2LTZhMiAyIDAgMCAxIDItMmg0YTIgMiAwIDAgMSAyIDJ2NiJ9XSxbInBhdGgiLHtkOiJNOSA2VjRhMiAyIDAgMCAxIDItMmgyYTIgMiAwIDAgMSAyIDJ2MiJ9XV19KTt2YXIgT2ssS1BlPWwoKCk9PntPaz1bWyJwYXRoIix7ZDoiTTMuODUgOC42MmE0IDQgMCAwIDEgNC43OC00Ljc3IDQgNCAwIDAgMSA2Ljc0IDAgNCA0IDAgMCAxIDQuNzggNC43OCA0IDQgMCAwIDEgMCA2Ljc0IDQgNCAwIDAgMS00Ljc3IDQuNzggNCA0IDAgMCAxLTYuNzUgMCA0IDQgMCAwIDEtNC43OC00Ljc3IDQgNCAwIDAgMSAwLTYuNzZaIn1dLFsibGluZSIse3gxOiIxMiIseDI6IjEyIix5MToiOCIseTI6IjEyIn1dLFsibGluZSIse3gxOiIxMiIseDI6IjEyLjAxIix5MToiMTYiLHkyOiIxNiJ9XV19KTt2YXIgUmssSlBlPWwoKCk9PntSaz1bWyJwYXRoIix7ZDoiTTMuODUgOC42MmE0IDQgMCAwIDEgNC43OC00Ljc3IDQgNCAwIDAgMSA2Ljc0IDAgNCA0IDAgMCAxIDQuNzggNC43OCA0IDQgMCAwIDEgMCA2Ljc0IDQgNCAwIDAgMS00Ljc3IDQuNzggNCA0IDAgMCAxLTYuNzUgMCA0IDQgMCAwIDEtNC43OC00Ljc3IDQgNCAwIDAgMSAwLTYuNzZaIn1dLFsicGF0aCIse2Q6Ik0xMiA3djEwIn1dLFsicGF0aCIse2Q6Ik0xNS40IDEwYTQgNCAwIDEgMCAwIDQifV1dfSk7dmFyIGJ1LGVJZT1sKCgpPT57YnU9W1sicGF0aCIse2Q6Ik0zLjg1IDguNjJhNCA0IDAgMCAxIDQuNzgtNC43NyA0IDQgMCAwIDEgNi43NCAwIDQgNCAwIDAgMSA0Ljc4IDQuNzggNCA0IDAgMCAxIDAgNi43NCA0IDQgMCAwIDEtNC43NyA0Ljc4IDQgNCAwIDAgMS02Ljc1IDAgNCA0IDAgMCAxLTQuNzgtNC43NyA0IDQgMCAwIDEgMC02Ljc2WiJ9XSxbInBhdGgiLHtkOiJtOSAxMiAyIDIgNC00In1dXX0pO3ZhciBCayx0SWU9bCgoKT0+e0JrPVtbInBhdGgiLHtkOiJNMy44NSA4LjYyYTQgNCAwIDAgMSA0Ljc4LTQuNzcgNCA0IDAgMCAxIDYuNzQgMCA0IDQgMCAwIDEgNC43OCA0Ljc4IDQgNCAwIDAgMSAwIDYuNzQgNCA0IDAgMCAxLTQuNzcgNC43OCA0IDQgMCAwIDEtNi43NSAwIDQgNCAwIDAgMS00Ljc4LTQuNzcgNCA0IDAgMCAxIDAtNi43NloifV0sWyJwYXRoIix7ZDoiTTcgMTJoNSJ9XSxbInBhdGgiLHtkOiJNMTUgOS40YTQgNCAwIDEgMCAwIDUuMiJ9XV19KTt2YXIgSGssckllPWwoKCk9PntIaz1bWyJwYXRoIix7ZDoiTTMuODUgOC42MmE0IDQgMCAwIDEgNC43OC00Ljc3IDQgNCAwIDAgMSA2Ljc0IDAgNCA0IDAgMCAxIDQuNzggNC43OCA0IDQgMCAwIDEgMCA2Ljc0IDQgNCAwIDAgMS00Ljc3IDQuNzggNCA0IDAgMCAxLTYuNzUgMCA0IDQgMCAwIDEtNC43OC00Ljc3IDQgNCAwIDAgMSAwLTYuNzZaIn1dLFsicGF0aCIse2Q6Ik0xNiA4aC02YTIgMiAwIDEgMCAwIDRoNGEyIDIgMCAxIDEgMCA0SDgifV0sWyJwYXRoIix7ZDoiTTEyIDE4VjYifV1dfSk7dmFyIHFrLGFJZT1sKCgpPT57cWs9W1sicGF0aCIse2Q6Ik0zLjg1IDguNjJhNCA0IDAgMCAxIDQuNzgtNC43NyA0IDQgMCAwIDEgNi43NCAwIDQgNCAwIDAgMSA0Ljc4IDQuNzggNCA0IDAgMCAxIDAgNi43NCA0IDQgMCAwIDEtNC43NyA0Ljc4IDQgNCAwIDAgMS02Ljc1IDAgNCA0IDAgMCAxLTQuNzgtNC43NyA0IDQgMCAwIDEgMC02Ljc2WiJ9XSxbInBhdGgiLHtkOiJNOCA4aDgifV0sWyJwYXRoIix7ZDoiTTggMTJoOCJ9XSxbInBhdGgiLHtkOiJtMTMgMTctNS0xaDFhNCA0IDAgMCAwIDAtOCJ9XV19KTt2YXIgamssaUllPWwoKCk9Pntqaz1bWyJwYXRoIix7ZDoiTTMuODUgOC42MmE0IDQgMCAwIDEgNC43OC00Ljc3IDQgNCAwIDAgMSA2Ljc0IDAgNCA0IDAgMCAxIDQuNzggNC43OCA0IDQgMCAwIDEgMCA2Ljc0IDQgNCAwIDAgMS00Ljc3IDQuNzggNCA0IDAgMCAxLTYuNzUgMCA0IDQgMCAwIDEtNC43OC00Ljc3IDQgNCAwIDAgMSAwLTYuNzZaIn1dLFsibGluZSIse3gxOiIxMiIseDI6IjEyIix5MToiMTYiLHkyOiIxMiJ9XSxbImxpbmUiLHt4MToiMTIiLHgyOiIxMi4wMSIseTE6IjgiLHkyOiI4In1dXX0pO3ZhciBWayxvSWU9bCgoKT0+e1ZrPVtbInBhdGgiLHtkOiJNMy44NSA4LjYyYTQgNCAwIDAgMSA0Ljc4LTQuNzcgNCA0IDAgMCAxIDYuNzQgMCA0IDQgMCAwIDEgNC43OCA0Ljc4IDQgNCAwIDAgMSAwIDYuNzQgNCA0IDAgMCAxLTQuNzcgNC43OCA0IDQgMCAwIDEtNi43NSAwIDQgNCAwIDAgMS00Ljc4LTQuNzcgNCA0IDAgMCAxIDAtNi43NloifV0sWyJwYXRoIix7ZDoibTkgOCAzIDN2NyJ9XSxbInBhdGgiLHtkOiJtMTIgMTEgMy0zIn1dLFsicGF0aCIse2Q6Ik05IDEyaDYifV0sWyJwYXRoIix7ZDoiTTkgMTZoNiJ9XV19KTt2YXIgVWssbkllPWwoKCk9PntVaz1bWyJwYXRoIix7ZDoiTTMuODUgOC42MmE0IDQgMCAwIDEgNC43OC00Ljc3IDQgNCAwIDAgMSA2Ljc0IDAgNCA0IDAgMCAxIDQuNzggNC43OCA0IDQgMCAwIDEgMCA2Ljc0IDQgNCAwIDAgMS00Ljc3IDQuNzggNCA0IDAgMCAxLTYuNzUgMCA0IDQgMCAwIDEtNC43OC00Ljc3IDQgNCAwIDAgMSAwLTYuNzZaIn1dLFsibGluZSIse3gxOiI4Iix4MjoiMTYiLHkxOiIxMiIseTI6IjEyIn1dXX0pO3ZhciBXayxzSWU9bCgoKT0+e1drPVtbInBhdGgiLHtkOiJNMy44NSA4LjYyYTQgNCAwIDAgMSA0Ljc4LTQuNzcgNCA0IDAgMCAxIDYuNzQgMCA0IDQgMCAwIDEgNC43OCA0Ljc4IDQgNCAwIDAgMSAwIDYuNzQgNCA0IDAgMCAxLTQuNzcgNC43OCA0IDQgMCAwIDEtNi43NSAwIDQgNCAwIDAgMS00Ljc4LTQuNzcgNCA0IDAgMCAxIDAtNi43NloifV0sWyJwYXRoIix7ZDoibTE1IDktNiA2In1dLFsicGF0aCIse2Q6Ik05IDloLjAxIn1dLFsicGF0aCIse2Q6Ik0xNSAxNWguMDEifV1dfSk7dmFyIEdrLGxJZT1sKCgpPT57R2s9W1sicGF0aCIse2Q6Ik0zLjg1IDguNjJhNCA0IDAgMCAxIDQuNzgtNC43NyA0IDQgMCAwIDEgNi43NCAwIDQgNCAwIDAgMSA0Ljc4IDQuNzggNCA0IDAgMCAxIDAgNi43NCA0IDQgMCAwIDEtNC43NyA0Ljc4IDQgNCAwIDAgMS02Ljc1IDAgNCA0IDAgMCAxLTQuNzgtNC43NyA0IDQgMCAwIDEgMC02Ljc2WiJ9XSxbInBhdGgiLHtkOiJNOCAxMmg0In1dLFsicGF0aCIse2Q6Ik0xMCAxNlY5LjVhMi41IDIuNSAwIDAgMSA1IDAifV0sWyJwYXRoIix7ZDoiTTggMTZoNyJ9XV19KTt2YXIgWWssY0llPWwoKCk9PntZaz1bWyJwYXRoIix7ZDoiTTMuODUgOC42MmE0IDQgMCAwIDEgNC43OC00Ljc3IDQgNCAwIDAgMSA2Ljc0IDAgNCA0IDAgMCAxIDQuNzggNC43OCA0IDQgMCAwIDEgMCA2Ljc0IDQgNCAwIDAgMS00Ljc3IDQuNzggNCA0IDAgMCAxLTYuNzUgMCA0IDQgMCAwIDEtNC43OC00Ljc3IDQgNCAwIDAgMSAwLTYuNzZaIn1dLFsibGluZSIse3gxOiIxMiIseDI6IjEyIix5MToiOCIseTI6IjE2In1dLFsibGluZSIse3gxOiI4Iix4MjoiMTYiLHkxOiIxMiIseTI6IjEyIn1dXX0pO3ZhciB2dSxkSWU9bCgoKT0+e3Z1PVtbInBhdGgiLHtkOiJNMy44NSA4LjYyYTQgNCAwIDAgMSA0Ljc4LTQuNzcgNCA0IDAgMCAxIDYuNzQgMCA0IDQgMCAwIDEgNC43OCA0Ljc4IDQgNCAwIDAgMSAwIDYuNzQgNCA0IDAgMCAxLTQuNzcgNC43OCA0IDQgMCAwIDEtNi43NSAwIDQgNCAwIDAgMS00Ljc4LTQuNzcgNCA0IDAgMCAxIDAtNi43NloifV0sWyJwYXRoIix7ZDoiTTkuMDkgOWEzIDMgMCAwIDEgNS44MyAxYzAgMi0zIDMtMyAzIn1dLFsibGluZSIse3gxOiIxMiIseDI6IjEyLjAxIix5MToiMTciLHkyOiIxNyJ9XV19KTt2YXIgWmssdUllPWwoKCk9Pntaaz1bWyJwYXRoIix7ZDoiTTMuODUgOC42MmE0IDQgMCAwIDEgNC43OC00Ljc3IDQgNCAwIDAgMSA2Ljc0IDAgNCA0IDAgMCAxIDQuNzggNC43OCA0IDQgMCAwIDEgMCA2Ljc0IDQgNCAwIDAgMS00Ljc3IDQuNzggNCA0IDAgMCAxLTYuNzUgMCA0IDQgMCAwIDEtNC43OC00Ljc3IDQgNCAwIDAgMSAwLTYuNzZaIn1dLFsicGF0aCIse2Q6Ik05IDE2aDUifV0sWyJwYXRoIix7ZDoiTTkgMTJoNWEyIDIgMCAxIDAgMC00aC0zdjkifV1dfSk7dmFyIFhrLGZJZT1sKCgpPT57WGs9W1sicGF0aCIse2Q6Ik0zLjg1IDguNjJhNCA0IDAgMCAxIDQuNzgtNC43NyA0IDQgMCAwIDEgNi43NCAwIDQgNCAwIDAgMSA0Ljc4IDQuNzggNCA0IDAgMCAxIDAgNi43NCA0IDQgMCAwIDEtNC43NyA0Ljc4IDQgNCAwIDAgMS02Ljc1IDAgNCA0IDAgMCAxLTQuNzgtNC43NyA0IDQgMCAwIDEgMC02Ljc2WiJ9XSxbInBhdGgiLHtkOiJNMTEgMTdWOGg0In1dLFsicGF0aCIse2Q6Ik0xMSAxMmgzIn1dLFsicGF0aCIse2Q6Ik05IDE2aDQifV1dfSk7dmFyIFFrLHBJZT1sKCgpPT57UWs9W1sicGF0aCIse2Q6Ik0xMSA3djEwYTUgNSAwIDAgMCA1LTUifV0sWyJwYXRoIix7ZDoibTE1IDgtNiAzIn1dLFsicGF0aCIse2Q6Ik0zLjg1IDguNjJhNCA0IDAgMCAxIDQuNzgtNC43NyA0IDQgMCAwIDEgNi43NCAwIDQgNCAwIDAgMSA0Ljc4IDQuNzggNCA0IDAgMCAxIDAgNi43NCA0IDQgMCAwIDEtNC43NyA0Ljc4IDQgNCAwIDAgMS02Ljc1IDAgNCA0IDAgMCAxLTQuNzgtNC43NyA0IDQgMCAwIDEgMC02Ljc2In1dXX0pO3ZhciBLayxoSWU9bCgoKT0+e0trPVtbInBhdGgiLHtkOiJNMy44NSA4LjYyYTQgNCAwIDAgMSA0Ljc4LTQuNzcgNCA0IDAgMCAxIDYuNzQgMCA0IDQgMCAwIDEgNC43OCA0Ljc4IDQgNCAwIDAgMSAwIDYuNzQgNCA0IDAgMCAxLTQuNzcgNC43OCA0IDQgMCAwIDEtNi43NSAwIDQgNCAwIDAgMS00Ljc4LTQuNzcgNCA0IDAgMCAxIDAtNi43NloifV0sWyJsaW5lIix7eDE6IjE1Iix4MjoiOSIseTE6IjkiLHkyOiIxNSJ9XSxbImxpbmUiLHt4MToiOSIseDI6IjE1Iix5MToiOSIseTI6IjE1In1dXX0pO3ZhciBKayxtSWU9bCgoKT0+e0prPVtbInBhdGgiLHtkOiJNMy44NSA4LjYyYTQgNCAwIDAgMSA0Ljc4LTQuNzcgNCA0IDAgMCAxIDYuNzQgMCA0IDQgMCAwIDEgNC43OCA0Ljc4IDQgNCAwIDAgMSAwIDYuNzQgNCA0IDAgMCAxLTQuNzcgNC43OCA0IDQgMCAwIDEtNi43NSAwIDQgNCAwIDAgMS00Ljc4LTQuNzcgNCA0IDAgMCAxIDAtNi43NloifV1dfSk7dmFyIGVTLGdJZT1sKCgpPT57ZVM9W1sicGF0aCIse2Q6Ik0yMiAxOEg2YTIgMiAwIDAgMS0yLTJWN2EyIDIgMCAwIDAtMi0yIn1dLFsicGF0aCIse2Q6Ik0xNyAxNFY0YTIgMiAwIDAgMC0yLTJoLTFhMiAyIDAgMCAwLTIgMnYxMCJ9XSxbInJlY3QiLHt3aWR0aDoiMTMiLGhlaWdodDoiOCIseDoiOCIseToiNiIscng6IjEifV0sWyJjaXJjbGUiLHtjeDoiMTgiLGN5OiIyMCIscjoiMiJ9XSxbImNpcmNsZSIse2N4OiI5IixjeToiMjAiLHI6IjIifV1dfSk7dmFyIHRTLHhJZT1sKCgpPT57dFM9W1sicGF0aCIse2Q6Ik0xMiAxNnYxYTIgMiAwIDAgMCAyIDJoMWEyIDIgMCAwIDEgMiAydjEifV0sWyJwYXRoIix7ZDoiTTEyIDZhMiAyIDAgMCAxIDIgMiJ9XSxbInBhdGgiLHtkOiJNMTggOGMwIDQtMy41IDgtNiA4cy02LTQtNi04YTYgNiAwIDAgMSAxMiAwIn1dXX0pO3ZhciByUyxiSWU9bCgoKT0+e3JTPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XSxbInBhdGgiLHtkOiJNNC45MjkgNC45MjkgMTkuMDcgMTkuMDcxIn1dXX0pO3ZhciBhUyx2SWU9bCgoKT0+e2FTPVtbInBhdGgiLHtkOiJNNCAxM2MzLjUtMiA4LTIgMTAgMmE1LjUgNS41IDAgMCAxIDggNSJ9XSxbInBhdGgiLHtkOiJNNS4xNSAxNy44OWM1LjUyLTEuNTIgOC42NS02Ljg5IDctMTJDMTEuNTUgNCAxMS41IDIgMTMgMmMzLjIyIDAgNSA1LjUgNSA4IDAgNi41LTQuMiAxMi0xMC40OSAxMkM1LjExIDIyIDIgMjIgMiAyMGMwLTEuNSAxLjE0LTEuNTUgMy4xNS0yLjExWiJ9XV19KTt2YXIgaVMseUllPWwoKCk9PntpUz1bWyJwYXRoIix7ZDoiTTEwIDEwLjAxaC4wMSJ9XSxbInBhdGgiLHtkOiJNMTAgMTQuMDFoLjAxIn1dLFsicGF0aCIse2Q6Ik0xNCAxMC4wMWguMDEifV0sWyJwYXRoIix7ZDoiTTE0IDE0LjAxaC4wMSJ9XSxbInBhdGgiLHtkOiJNMTggNnYxMiJ9XSxbInBhdGgiLHtkOiJNNiA2djEyIn1dLFsicmVjdCIse3g6IjIiLHk6IjYiLHdpZHRoOiIyMCIsaGVpZ2h0OiIxMiIscng6IjIifV1dfSk7dmFyIG9TLHdJZT1sKCgpPT57b1M9W1sicGF0aCIse2Q6Ik0xMiAxOEg0YTIgMiAwIDAgMS0yLTJWOGEyIDIgMCAwIDEgMi0yaDE2YTIgMiAwIDAgMSAyIDJ2NSJ9XSxbInBhdGgiLHtkOiJtMTYgMTkgMyAzIDMtMyJ9XSxbInBhdGgiLHtkOiJNMTggMTJoLjAxIn1dLFsicGF0aCIse2Q6Ik0xOSAxNnY2In1dLFsicGF0aCIse2Q6Ik02IDEyaC4wMSJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIyIn1dXX0pO3ZhciBuUyxNSWU9bCgoKT0+e25TPVtbInBhdGgiLHtkOiJNMTIgMThINGEyIDIgMCAwIDEtMi0yVjhhMiAyIDAgMCAxIDItMmgxNmEyIDIgMCAwIDEgMiAydjUifV0sWyJwYXRoIix7ZDoiTTE4IDEyaC4wMSJ9XSxbInBhdGgiLHtkOiJNMTkgMjJ2LTYifV0sWyJwYXRoIix7ZDoibTIyIDE5LTMtMy0zIDMifV0sWyJwYXRoIix7ZDoiTTYgMTJoLjAxIn1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjIifV1dfSk7dmFyIHNTLGtJZT1sKCgpPT57c1M9W1sicGF0aCIse2Q6Ik0xMyAxOEg0YTIgMiAwIDAgMS0yLTJWOGEyIDIgMCAwIDEgMi0yaDE2YTIgMiAwIDAgMSAyIDJ2NSJ9XSxbInBhdGgiLHtkOiJtMTcgMTcgNSA1In1dLFsicGF0aCIse2Q6Ik0xOCAxMmguMDEifV0sWyJwYXRoIix7ZDoibTIyIDE3LTUgNSJ9XSxbInBhdGgiLHtkOiJNNiAxMmguMDEifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMiJ9XV19KTt2YXIgbFMsU0llPWwoKCk9PntsUz1bWyJyZWN0Iix7d2lkdGg6IjIwIixoZWlnaHQ6IjEyIix4OiIyIix5OiI2IixyeDoiMiJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIyIn1dLFsicGF0aCIse2Q6Ik02IDEyaC4wMU0xOCAxMmguMDEifV1dfSk7dmFyIGNTLHpJZT1sKCgpPT57Y1M9W1sicGF0aCIse2Q6Ik0zIDV2MTQifV0sWyJwYXRoIix7ZDoiTTggNXYxNCJ9XSxbInBhdGgiLHtkOiJNMTIgNXYxNCJ9XSxbInBhdGgiLHtkOiJNMTcgNXYxNCJ9XSxbInBhdGgiLHtkOiJNMjEgNXYxNCJ9XV19KTt2YXIgZFMsQ0llPWwoKCk9PntkUz1bWyJwYXRoIix7ZDoiTTEwIDNhNDEgNDEgMCAwIDAgMCAxOCJ9XSxbInBhdGgiLHtkOiJNMTQgM2E0MSA0MSAwIDAgMSAwIDE4In1dLFsicGF0aCIse2Q6Ik0xNyAzYTIgMiAwIDAgMSAxLjY4LjkyIDE1LjI1IDE1LjI1IDAgMCAxIDAgMTYuMTZBMiAyIDAgMCAxIDE3IDIxSDdhMiAyIDAgMCAxLTEuNjgtLjkyIDE1LjI1IDE1LjI1IDAgMCAxIDAtMTYuMTZBMiAyIDAgMCAxIDcgM3oifV0sWyJwYXRoIix7ZDoiTTMuODQgMTdoMTYuMzIifV0sWyJwYXRoIix7ZDoiTTMuODQgN2gxNi4zMiJ9XV19KTt2YXIgdVMsX0llPWwoKCk9Pnt1Uz1bWyJwYXRoIix7ZDoiTTQgMjBoMTYifV0sWyJwYXRoIix7ZDoibTYgMTYgNi0xMiA2IDEyIn1dLFsicGF0aCIse2Q6Ik04IDEyaDgifV1dfSk7dmFyIGZTLFRJZT1sKCgpPT57ZlM9W1sicGF0aCIse2Q6Ik0xMCA0IDggNiJ9XSxbInBhdGgiLHtkOiJNMTcgMTl2MiJ9XSxbInBhdGgiLHtkOiJNMiAxMmgyMCJ9XSxbInBhdGgiLHtkOiJNNyAxOXYyIn1dLFsicGF0aCIse2Q6Ik05IDUgNy42MjEgMy42MjFBMi4xMjEgMi4xMjEgMCAwIDAgNCA1djEyYTIgMiAwIDAgMCAyIDJoMTJhMiAyIDAgMCAwIDItMnYtNSJ9XV19KTt2YXIgcFMsTEllPWwoKCk9PntwUz1bWyJwYXRoIix7ZDoibTExIDctMyA1aDRsLTMgNSJ9XSxbInBhdGgiLHtkOiJNMTQuODU2IDZIMTZhMiAyIDAgMCAxIDIgMnY4YTIgMiAwIDAgMS0yIDJoLTIuOTM1In1dLFsicGF0aCIse2Q6Ik0yMiAxNHYtNCJ9XSxbInBhdGgiLHtkOiJNNS4xNCAxOEg0YTIgMiAwIDAgMS0yLTJWOGEyIDIgMCAwIDEgMi0yaDIuOTM2In1dXX0pO3ZhciBoUyxESWU9bCgoKT0+e2hTPVtbInBhdGgiLHtkOiJNMTAgMTB2NCJ9XSxbInBhdGgiLHtkOiJNMTQgMTB2NCJ9XSxbInBhdGgiLHtkOiJNMjIgMTR2LTQifV0sWyJwYXRoIix7ZDoiTTYgMTB2NCJ9XSxbInJlY3QiLHt4OiIyIix5OiI2Iix3aWR0aDoiMTYiLGhlaWdodDoiMTIiLHJ4OiIyIn1dXX0pO3ZhciBtUyxBSWU9bCgoKT0+e21TPVtbInBhdGgiLHtkOiJNMjIgMTR2LTQifV0sWyJwYXRoIix7ZDoiTTYgMTR2LTQifV0sWyJyZWN0Iix7eDoiMiIseToiNiIsd2lkdGg6IjE2IixoZWlnaHQ6IjEyIixyeDoiMiJ9XV19KTt2YXIgZ1MsRUllPWwoKCk9PntnUz1bWyJwYXRoIix7ZDoiTTEwIDE0di00In1dLFsicGF0aCIse2Q6Ik0yMiAxNHYtNCJ9XSxbInBhdGgiLHtkOiJNNiAxNHYtNCJ9XSxbInJlY3QiLHt4OiIyIix5OiI2Iix3aWR0aDoiMTYiLGhlaWdodDoiMTIiLHJ4OiIyIn1dXX0pO3ZhciB4UywkSWU9bCgoKT0+e3hTPVtbInBhdGgiLHtkOiJNMTAgOXY2In1dLFsicGF0aCIse2Q6Ik0xMi41NDMgNkgxNmEyIDIgMCAwIDEgMiAydjhhMiAyIDAgMCAxLTIgMmgtMy42MDUifV0sWyJwYXRoIix7ZDoiTTIyIDE0di00In1dLFsicGF0aCIse2Q6Ik03IDEyaDYifV0sWyJwYXRoIix7ZDoiTTcuNjA2IDE4SDRhMiAyIDAgMCAxLTItMlY4YTIgMiAwIDAgMSAyLTJoMy42MDYifV1dfSk7dmFyIGJTLFBJZT1sKCgpPT57YlM9W1sicGF0aCIse2Q6Ik0xMCAxN2guMDEifV0sWyJwYXRoIix7ZDoiTTEwIDd2NiJ9XSxbInBhdGgiLHtkOiJNMTQgNmgyYTIgMiAwIDAgMSAyIDJ2OGEyIDIgMCAwIDEtMiAyaC0yIn1dLFsicGF0aCIse2Q6Ik0yMiAxNHYtNCJ9XSxbInBhdGgiLHtkOiJNNiAxOEg0YTIgMiAwIDAgMS0yLTJWOGEyIDIgMCAwIDEgMi0yaDIifV1dfSk7dmFyIHZTLElJZT1sKCgpPT57dlM9W1sicGF0aCIse2Q6Ik0gMjIgMTQgTCAyMiAxMCJ9XSxbInJlY3QiLHt4OiIyIix5OiI2Iix3aWR0aDoiMTYiLGhlaWdodDoiMTIiLHJ4OiIyIn1dXX0pO3ZhciB5UyxOSWU9bCgoKT0+e3lTPVtbInBhdGgiLHtkOiJNNC41IDNoMTUifV0sWyJwYXRoIix7ZDoiTTYgM3YxNmEyIDIgMCAwIDAgMiAyaDhhMiAyIDAgMCAwIDItMlYzIn1dLFsicGF0aCIse2Q6Ik02IDE0aDEyIn1dXX0pO3ZhciB3UyxGSWU9bCgoKT0+e3dTPVtbInBhdGgiLHtkOiJNOSA5Yy0uNjQuNjQtMS41MjEuOTU0LTIuNDAyIDEuMTY1QTYgNiAwIDAgMCA4IDIyYTEzLjk2IDEzLjk2IDAgMCAwIDkuOS00LjEifV0sWyJwYXRoIix7ZDoiTTEwLjc1IDUuMDkzQTYgNiAwIDAgMSAyMiA4YzAgMi40MTEtLjYxIDQuNjgtMS42ODMgNi42NiJ9XSxbInBhdGgiLHtkOiJNNS4zNDEgMTAuNjJhNCA0IDAgMCAwIDYuNDg3IDEuMjA4TTEwLjYyIDUuMzQxYTQuMDE1IDQuMDE1IDAgMCAxIDIuMDM5IDIuMDQifV0sWyJsaW5lIix7eDE6IjIiLHgyOiIyMiIseTE6IjIiLHkyOiIyMiJ9XV19KTt2YXIgTVMsT0llPWwoKCk9PntNUz1bWyJwYXRoIix7ZDoiTTEwLjE2NSA2LjU5OEM5Ljk1NCA3LjQ3OCA5LjY0IDguMzYgOSA5Yy0uNjQuNjQtMS41MjEuOTU0LTIuNDAyIDEuMTY1QTYgNiAwIDAgMCA4IDIyYzcuNzMyIDAgMTQtNi4yNjggMTQtMTRhNiA2IDAgMCAwLTExLjgzNS0xLjQwMloifV0sWyJwYXRoIix7ZDoiTTUuMzQxIDEwLjYyYTQgNCAwIDEgMCA1LjI3OS01LjI4In1dXX0pO3ZhciBrUyxSSWU9bCgoKT0+e2tTPVtbInBhdGgiLHtkOiJNMiAyMHYtOGEyIDIgMCAwIDEgMi0yaDE2YTIgMiAwIDAgMSAyIDJ2OCJ9XSxbInBhdGgiLHtkOiJNNCAxMFY2YTIgMiAwIDAgMSAyLTJoMTJhMiAyIDAgMCAxIDIgMnY0In1dLFsicGF0aCIse2Q6Ik0xMiA0djYifV0sWyJwYXRoIix7ZDoiTTIgMThoMjAifV1dfSk7dmFyIFNTLEJJZT1sKCgpPT57U1M9W1sicGF0aCIse2Q6Ik0zIDIwdi04YTIgMiAwIDAgMSAyLTJoMTRhMiAyIDAgMCAxIDIgMnY4In1dLFsicGF0aCIse2Q6Ik01IDEwVjZhMiAyIDAgMCAxIDItMmgxMGEyIDIgMCAwIDEgMiAydjQifV0sWyJwYXRoIix7ZDoiTTMgMThoMTgifV1dfSk7dmFyIHpTLEhJZT1sKCgpPT57elM9W1sicGF0aCIse2Q6Ik0yIDR2MTYifV0sWyJwYXRoIix7ZDoiTTIgOGgxOGEyIDIgMCAwIDEgMiAydjEwIn1dLFsicGF0aCIse2Q6Ik0yIDE3aDIwIn1dLFsicGF0aCIse2Q6Ik02IDh2OSJ9XV19KTt2YXIgQ1MscUllPWwoKCk9PntDUz1bWyJwYXRoIix7ZDoiTTE2LjQgMTMuN0E2LjUgNi41IDAgMSAwIDYuMjggNi42Yy0xLjEgMy4xMy0uNzggMy45LTMuMTggNi4wOEEzIDMgMCAwIDAgNSAxOGM0IDAgOC40LTEuOCAxMS40LTQuMyJ9XSxbInBhdGgiLHtkOiJtMTguNSA2IDIuMTkgNC41YTYuNDggNi40OCAwIDAgMS0yLjI5IDcuMkMxNS40IDIwLjIgMTEgMjIgNyAyMmEzIDMgMCAwIDEtMi42OC0xLjY2TDIuNCAxNi41In1dLFsiY2lyY2xlIix7Y3g6IjEyLjUiLGN5OiI4LjUiLHI6IjIuNSJ9XV19KTt2YXIgX1MsakllPWwoKCk9PntfUz1bWyJwYXRoIix7ZDoiTTEzIDEzdjUifV0sWyJwYXRoIix7ZDoiTTE3IDExLjQ3VjgifV0sWyJwYXRoIix7ZDoiTTE3IDExaDFhMyAzIDAgMCAxIDIuNzQ1IDQuMjExIn1dLFsicGF0aCIse2Q6Im0yIDIgMjAgMjAifV0sWyJwYXRoIix7ZDoiTTUgOHYxMmEyIDIgMCAwIDAgMiAyaDhhMiAyIDAgMCAwIDItMnYtMyJ9XSxbInBhdGgiLHtkOiJNNy41MzYgNy41MzVDNi43NjYgNy42NDkgNi4xNTQgOCA1LjUgOGEyLjUgMi41IDAgMCAxLTEuNzY4LTQuMjY4In1dLFsicGF0aCIse2Q6Ik04LjcyNyAzLjIwNEM5LjMwNiAyLjc2NyA5Ljg4NSAyIDExIDJjMS41NiAwIDIgMS41IDMgMS41czEuNzItLjUgMi41LS41YTEgMSAwIDEgMSAwIDVjLS43OCAwLTEuNS0uNS0yLjUtLjVhMy4xNDkgMy4xNDkgMCAwIDAtLjg0Mi4xMiJ9XSxbInBhdGgiLHtkOiJNOSAxNC42VjE4In1dXX0pO3ZhciBUUyxWSWU9bCgoKT0+e1RTPVtbInBhdGgiLHtkOiJNMTcgMTFoMWEzIDMgMCAwIDEgMCA2aC0xIn1dLFsicGF0aCIse2Q6Ik05IDEydjYifV0sWyJwYXRoIix7ZDoiTTEzIDEydjYifV0sWyJwYXRoIix7ZDoiTTE0IDcuNWMtMSAwLTEuNDQuNS0zIC41cy0yLS41LTMtLjUtMS43Mi41LTIuNS41YTIuNSAyLjUgMCAwIDEgMC01Yy43OCAwIDEuNTcuNSAyLjUuNVM5LjQ0IDIgMTEgMnMyIDEuNSAzIDEuNSAxLjcyLS41IDIuNS0uNWEyLjUgMi41IDAgMCAxIDAgNWMtLjc4IDAtMS41LS41LTIuNS0uNVoifV0sWyJwYXRoIix7ZDoiTTUgOHYxMmEyIDIgMCAwIDAgMiAyaDhhMiAyIDAgMCAwIDItMlY4In1dXX0pO3ZhciBMUyxVSWU9bCgoKT0+e0xTPVtbInBhdGgiLHtkOiJNMTAuMjY4IDIxYTIgMiAwIDAgMCAzLjQ2NCAwIn1dLFsicGF0aCIse2Q6Ik0xMS42OCAyLjAwOUE2IDYgMCAwIDAgNiA4YzAgNC40OTktMS40MTEgNS45NTYtMi43MzggNy4zMjZBMSAxIDAgMCAwIDQgMTdoMTZhMSAxIDAgMCAwIC43NC0xLjY3M2MtLjgyNC0uODUtMS42NzgtMS43MzEtMi4yMS0zLjM0OCJ9XSxbImNpcmNsZSIse2N4OiIxOCIsY3k6IjUiLHI6IjMifV1dfSk7dmFyIERTLFdJZT1sKCgpPT57RFM9W1sicGF0aCIse2Q6Ik0xMC4yNjggMjFhMiAyIDAgMCAwIDMuNDY0IDAifV0sWyJwYXRoIix7ZDoiTTE3IDE3SDRhMSAxIDAgMCAxLS43NC0xLjY3M0M0LjU5IDEzLjk1NiA2IDEyLjQ5OSA2IDhhNiA2IDAgMCAxIC4yNTgtMS43NDIifV0sWyJwYXRoIix7ZDoibTIgMiAyMCAyMCJ9XSxbInBhdGgiLHtkOiJNOC42NjggMy4wMUE2IDYgMCAwIDEgMTggOGMwIDIuNjg3Ljc3IDQuNjUzIDEuNzA3IDYuMDUifV1dfSk7dmFyIEFTLEdJZT1sKCgpPT57QVM9W1sicGF0aCIse2Q6Ik0xOC41MTggMTcuMzQ3QTcgNyAwIDAgMSAxNCAxOSJ9XSxbInBhdGgiLHtkOiJNMTguOCA0QTExIDExIDAgMCAxIDIwIDkifV0sWyJwYXRoIix7ZDoiTTkgOWguMDEifV0sWyJjaXJjbGUiLHtjeDoiMjAiLGN5OiIxNiIscjoiMiJ9XSxbImNpcmNsZSIse2N4OiI5IixjeToiOSIscjoiNyJ9XSxbInJlY3QiLHt4OiI0Iix5OiIxNiIsd2lkdGg6IjEwIixoZWlnaHQ6IjYiLHJ4OiIyIn1dXX0pO3ZhciBFUyxZSWU9bCgoKT0+e0VTPVtbInBhdGgiLHtkOiJNMTAuMjY4IDIxYTIgMiAwIDAgMCAzLjQ2NCAwIn1dLFsicGF0aCIse2Q6Ik0xNSA4aDYifV0sWyJwYXRoIix7ZDoiTTE2LjI0MyAzLjc1N0E2IDYgMCAwIDAgNiA4YzAgNC40OTktMS40MTEgNS45NTYtMi43MzggNy4zMjZBMSAxIDAgMCAwIDQgMTdoMTZhMSAxIDAgMCAwIC43NC0xLjY3M0E5LjQgOS40IDAgMCAxIDE4LjY2NyAxMiJ9XV19KTt2YXIgJFMsWkllPWwoKCk9PnskUz1bWyJwYXRoIix7ZDoiTTEwLjI2OCAyMWEyIDIgMCAwIDAgMy40NjQgMCJ9XSxbInBhdGgiLHtkOiJNMTUgOGg2In1dLFsicGF0aCIse2Q6Ik0xOCA1djYifV0sWyJwYXRoIix7ZDoiTTIwLjAwMiAxNC40NjRhOSA5IDAgMCAwIC43MzguODYzQTEgMSAwIDAgMSAyMCAxN0g0YTEgMSAwIDAgMS0uNzQtMS42NzNDNC41OSAxMy45NTYgNiAxMi40OTkgNiA4YTYgNiAwIDAgMSA4Ljc1LTUuMzMyIn1dXX0pO3ZhciBQUyxYSWU9bCgoKT0+e1BTPVtbInBhdGgiLHtkOiJNMTAuMjY4IDIxYTIgMiAwIDAgMCAzLjQ2NCAwIn1dLFsicGF0aCIse2Q6Ik0yMiA4YzAtMi4zLS44LTQuMy0yLTYifV0sWyJwYXRoIix7ZDoiTTMuMjYyIDE1LjMyNkExIDEgMCAwIDAgNCAxN2gxNmExIDEgMCAwIDAgLjc0LTEuNjczQzE5LjQxIDEzLjk1NiAxOCAxMi40OTkgMTggOEE2IDYgMCAwIDAgNiA4YzAgNC40OTktMS40MTEgNS45NTYtMi43MzggNy4zMjYifV0sWyJwYXRoIix7ZDoiTTQgMkMyLjggMy43IDIgNS43IDIgOCJ9XV19KTt2YXIgSVMsUUllPWwoKCk9PntJUz1bWyJwYXRoIix7ZDoiTTEwLjI2OCAyMWEyIDIgMCAwIDAgMy40NjQgMCJ9XSxbInBhdGgiLHtkOiJNMy4yNjIgMTUuMzI2QTEgMSAwIDAgMCA0IDE3aDE2YTEgMSAwIDAgMCAuNzQtMS42NzNDMTkuNDEgMTMuOTU2IDE4IDEyLjQ5OSAxOCA4QTYgNiAwIDAgMCA2IDhjMCA0LjQ5OS0xLjQxMSA1Ljk1Ni0yLjczOCA3LjMyNiJ9XV19KTt2YXIgeXUsS0llPWwoKCk9Pnt5dT1bWyJyZWN0Iix7d2lkdGg6IjEzIixoZWlnaHQ6IjciLHg6IjMiLHk6IjMiLHJ4OiIxIn1dLFsicGF0aCIse2Q6Im0yMiAxNS0zLTMgMy0zIn1dLFsicmVjdCIse3dpZHRoOiIxMyIsaGVpZ2h0OiI3Iix4OiIzIix5OiIxNCIscng6IjEifV1dfSk7dmFyIE5TLEpJZT1sKCgpPT57TlM9W1sicmVjdCIse3dpZHRoOiI3IixoZWlnaHQ6IjEzIix4OiIzIix5OiIzIixyeDoiMSJ9XSxbInBhdGgiLHtkOiJtOSAyMiAzLTMgMyAzIn1dLFsicmVjdCIse3dpZHRoOiI3IixoZWlnaHQ6IjEzIix4OiIxNCIseToiMyIscng6IjEifV1dfSk7dmFyIHd1LGVOZT1sKCgpPT57d3U9W1sicmVjdCIse3dpZHRoOiIxMyIsaGVpZ2h0OiI3Iix4OiI4Iix5OiIzIixyeDoiMSJ9XSxbInBhdGgiLHtkOiJtMiA5IDMgMy0zIDMifV0sWyJyZWN0Iix7d2lkdGg6IjEzIixoZWlnaHQ6IjciLHg6IjgiLHk6IjE0IixyeDoiMSJ9XV19KTt2YXIgRlMsdE5lPWwoKCk9PntGUz1bWyJyZWN0Iix7d2lkdGg6IjciLGhlaWdodDoiMTMiLHg6IjMiLHk6IjgiLHJ4OiIxIn1dLFsicGF0aCIse2Q6Im0xNSAyLTMgMy0zLTMifV0sWyJyZWN0Iix7d2lkdGg6IjciLGhlaWdodDoiMTMiLHg6IjE0Iix5OiI4IixyeDoiMSJ9XV19KTt2YXIgT1Msck5lPWwoKCk9PntPUz1bWyJjaXJjbGUiLHtjeDoiMTguNSIsY3k6IjE3LjUiLHI6IjMuNSJ9XSxbImNpcmNsZSIse2N4OiI1LjUiLGN5OiIxNy41IixyOiIzLjUifV0sWyJjaXJjbGUiLHtjeDoiMTUiLGN5OiI1IixyOiIxIn1dLFsicGF0aCIse2Q6Ik0xMiAxNy41VjE0bC0zLTMgNC0zIDIgM2gyIn1dXX0pO3ZhciBSUyxhTmU9bCgoKT0+e1JTPVtbInBhdGgiLHtkOiJNMTIuNDA5IDEzLjAxN0E1IDUgMCAwIDEgMjIgMTVjMCAzLjg2Ni00IDctOSA3LTQuMDc3IDAtOC4xNTMtLjgyLTEwLjM3MS0yLjQ2Mi0uNDI2LS4zMTYtLjYzMS0uODMyLS42Mi0xLjM2MkMyLjExOCAxMi43MjMgMi42MjcgMiAxMCAyYTMgMyAwIDAgMSAzIDMgMiAyIDAgMCAxLTIgMmMtMS4xMDUgMC0xLjY0LS40NDQtMi0xIn1dLFsicGF0aCIse2Q6Ik0xNSAxNGE1IDUgMCAwIDAtNy41ODQgMiJ9XSxbInBhdGgiLHtkOiJNOS45NjQgNi44MjVDOC4wMTkgNy45NzcgOS41IDEzIDggMTUifV1dfSk7dmFyIEJTLGlOZT1sKCgpPT57QlM9W1sicmVjdCIse3g6IjE0Iix5OiIxNCIsd2lkdGg6IjQiLGhlaWdodDoiNiIscng6IjIifV0sWyJyZWN0Iix7eDoiNiIseToiNCIsd2lkdGg6IjQiLGhlaWdodDoiNiIscng6IjIifV0sWyJwYXRoIix7ZDoiTTYgMjBoNCJ9XSxbInBhdGgiLHtkOiJNMTQgMTBoNCJ9XSxbInBhdGgiLHtkOiJNNiAxNGgydjYifV0sWyJwYXRoIix7ZDoiTTE0IDRoMnY2In1dXX0pO3ZhciBIUyxvTmU9bCgoKT0+e0hTPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjExLjkiLHI6IjIifV0sWyJwYXRoIix7ZDoiTTYuNyAzLjRjLS45IDIuNSAwIDUuMiAyLjIgNi43QzYuNSA5IDMuNyA5LjYgMiAxMS42In1dLFsicGF0aCIse2Q6Im04LjkgMTAuMSAxLjQuOCJ9XSxbInBhdGgiLHtkOiJNMTcuMyAzLjRjLjkgMi41IDAgNS4yLTIuMiA2LjcgMi40LTEuMiA1LjItLjYgNi45IDEuNSJ9XSxbInBhdGgiLHtkOiJtMTUuMSAxMC4xLTEuNC44In1dLFsicGF0aCIse2Q6Ik0xNi43IDIwLjhjLTIuNi0uNC00LjYtMi42LTQuNy01LjMtLjIgMi42LTIuMSA0LjgtNC43IDUuMiJ9XSxbInBhdGgiLHtkOiJNMTIgMTMuOXYxLjYifV0sWyJwYXRoIix7ZDoiTTEzLjUgNS40Yy0xLS4yLTItLjItMyAwIn1dLFsicGF0aCIse2Q6Ik0xNyAxNi40Yy43LS43IDEuMi0xLjYgMS41LTIuNSJ9XSxbInBhdGgiLHtkOiJNNS41IDEzLjljLjMuOS44IDEuOCAxLjUgMi41In1dXX0pO3ZhciBxUyxuTmU9bCgoKT0+e3FTPVtbInBhdGgiLHtkOiJNMTAgMTBoNCJ9XSxbInBhdGgiLHtkOiJNMTkgN1Y0YTEgMSAwIDAgMC0xLTFoLTJhMSAxIDAgMCAwLTEgMXYzIn1dLFsicGF0aCIse2Q6Ik0yMCAyMWEyIDIgMCAwIDAgMi0ydi0zLjg1MWMwLTEuMzktMi0yLjk2Mi0yLTQuODI5VjhhMSAxIDAgMCAwLTEtMWgtNGExIDEgMCAwIDAtMSAxdjExYTIgMiAwIDAgMCAyIDJ6In1dLFsicGF0aCIse2Q6Ik0gMjIgMTYgTCAyIDE2In1dLFsicGF0aCIse2Q6Ik00IDIxYTIgMiAwIDAgMS0yLTJ2LTMuODUxYzAtMS4zOSAyLTIuOTYyIDItNC44MjlWOGExIDEgMCAwIDEgMS0xaDRhMSAxIDAgMCAxIDEgMXYxMWEyIDIgMCAwIDEtMiAyeiJ9XSxbInBhdGgiLHtkOiJNOSA3VjRhMSAxIDAgMCAwLTEtMUg2YTEgMSAwIDAgMC0xIDF2MyJ9XV19KTt2YXIgalMsc05lPWwoKCk9PntqUz1bWyJwYXRoIix7ZDoiTTE2IDdoLjAxIn1dLFsicGF0aCIse2Q6Ik0zLjQgMThIMTJhOCA4IDAgMCAwIDgtOFY3YTQgNCAwIDAgMC03LjI4LTIuM0wyIDIwIn1dLFsicGF0aCIse2Q6Im0yMCA3IDIgLjUtMiAuNSJ9XSxbInBhdGgiLHtkOiJNMTAgMTh2MyJ9XSxbInBhdGgiLHtkOiJNMTQgMTcuNzVWMjEifV0sWyJwYXRoIix7ZDoiTTcgMThhNiA2IDAgMCAwIDMuODQtMTAuNjEifV1dfSk7dmFyIFZTLGxOZT1sKCgpPT57VlM9W1sicGF0aCIse2Q6Ik0xMS43NjcgMTkuMDg5YzQuOTI0Ljg2OCA2LjE0LTYuMDI1IDEuMjE2LTYuODk0bS0xLjIxNiA2Ljg5NEw1Ljg2IDE4LjA0N201LjkwOCAxLjA0Mi0uMzQ3IDEuOTdtMS41NjMtOC44NjRjNC45MjQuODY5IDYuMTQtNi4wMjUgMS4yMTUtNi44OTNtLTEuMjE1IDYuODkzLTMuOTQtLjY5NG01LjE1NS02LjJMOC4yOSA0LjI2bTUuOTA4IDEuMDQyLjM0OC0xLjk3TTcuNDggMjAuMzY0bDMuMTI2LTE3LjcyNyJ9XV19KTt2YXIgVVMsY05lPWwoKCk9PntVUz1bWyJwYXRoIix7ZDoiTTEyIDE4djQifV0sWyJwYXRoIix7ZDoibTE3IDE4IDEuOTU2LTExLjQ2OCJ9XSxbInBhdGgiLHtkOiJtMyA4IDcuODItNS42MTVhMiAyIDAgMCAxIDIuMzYgMEwyMSA4In1dLFsicGF0aCIse2Q6Ik00IDE4aDE2In1dLFsicGF0aCIse2Q6Ik03IDE4IDUuMDQ0IDYuNTMyIn1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiMTAiLHI6IjIifV1dfSk7dmFyIFdTLGROZT1sKCgpPT57V1M9W1siY2lyY2xlIix7Y3g6IjkiLGN5OiI5IixyOiI3In1dLFsiY2lyY2xlIix7Y3g6IjE1IixjeToiMTUiLHI6IjcifV1dfSk7dmFyIEdTLHVOZT1sKCgpPT57R1M9W1sicGF0aCIse2Q6Ik0zIDNoMTgifV0sWyJwYXRoIix7ZDoiTTIwIDdIOCJ9XSxbInBhdGgiLHtkOiJNMjAgMTFIOCJ9XSxbInBhdGgiLHtkOiJNMTAgMTloMTAifV0sWyJwYXRoIix7ZDoiTTggMTVoMTIifV0sWyJwYXRoIix7ZDoiTTQgM3YxNCJ9XSxbImNpcmNsZSIse2N4OiI0IixjeToiMTkiLHI6IjIifV1dfSk7dmFyIFlTLGZOZT1sKCgpPT57WVM9W1sicGF0aCIse2Q6Ik0xMCAyMlY3YTEgMSAwIDAgMC0xLTFINGEyIDIgMCAwIDAtMiAydjEyYTIgMiAwIDAgMCAyIDJoMTJhMiAyIDAgMCAwIDItMnYtNWExIDEgMCAwIDAtMS0xSDIifV0sWyJyZWN0Iix7eDoiMTQiLHk6IjIiLHdpZHRoOiI4IixoZWlnaHQ6IjgiLHJ4OiIxIn1dXX0pO3ZhciBaUyxwTmU9bCgoKT0+e1pTPVtbInBhdGgiLHtkOiJtNyA3IDEwIDEwLTUgNVYybDUgNUw3IDE3In1dLFsibGluZSIse3gxOiIxOCIseDI6IjIxIix5MToiMTIiLHkyOiIxMiJ9XSxbImxpbmUiLHt4MToiMyIseDI6IjYiLHkxOiIxMiIseTI6IjEyIn1dXX0pO3ZhciBYUyxoTmU9bCgoKT0+e1hTPVtbInBhdGgiLHtkOiJtMTcgMTctNSA1VjEybC01IDUifV0sWyJwYXRoIix7ZDoibTIgMiAyMCAyMCJ9XSxbInBhdGgiLHtkOiJNMTQuNSA5LjUgMTcgN2wtNS01djQuNSJ9XV19KTt2YXIgUVMsbU5lPWwoKCk9PntRUz1bWyJwYXRoIix7ZDoibTcgNyAxMCAxMC01IDVWMmw1IDVMNyAxNyJ9XSxbInBhdGgiLHtkOiJNMjAuODMgMTQuODNhNCA0IDAgMCAwIDAtNS42NiJ9XSxbInBhdGgiLHtkOiJNMTggMTJoLjAxIn1dXX0pO3ZhciBLUyxnTmU9bCgoKT0+e0tTPVtbInBhdGgiLHtkOiJtNyA3IDEwIDEwLTUgNVYybDUgNUw3IDE3In1dXX0pO3ZhciBKUyx4TmU9bCgoKT0+e0pTPVtbInBhdGgiLHtkOiJNNiAxMmg5YTQgNCAwIDAgMSAwIDhIN2ExIDEgMCAwIDEtMS0xVjVhMSAxIDAgMCAxIDEtMWg3YTQgNCAwIDAgMSAwIDgifV1dfSk7dmFyIGV6LGJOZT1sKCgpPT57ZXo9W1sicGF0aCIse2Q6Ik0yMSAxNlY4YTIgMiAwIDAgMC0xLTEuNzNsLTctNGEyIDIgMCAwIDAtMiAwbC03IDRBMiAyIDAgMCAwIDMgOHY4YTIgMiAwIDAgMCAxIDEuNzNsNyA0YTIgMiAwIDAgMCAyIDBsNy00QTIgMiAwIDAgMCAyMSAxNnoifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiNCJ9XV19KTt2YXIgdHosdk5lPWwoKCk9Pnt0ej1bWyJjaXJjbGUiLHtjeDoiMTEiLGN5OiIxMyIscjoiOSJ9XSxbInBhdGgiLHtkOiJNMTQuMzUgNC42NSAxNi4zIDIuN2EyLjQxIDIuNDEgMCAwIDEgMy40IDBsMS42IDEuNmEyLjQgMi40IDAgMCAxIDAgMy40bC0xLjk1IDEuOTUifV0sWyJwYXRoIix7ZDoibTIyIDItMS41IDEuNSJ9XV19KTt2YXIgcnoseU5lPWwoKCk9Pntyej1bWyJwYXRoIix7ZDoiTTE3IDEwYy43LS43IDEuNjkgMCAyLjUgMGEyLjUgMi41IDAgMSAwIDAtNSAuNS41IDAgMCAxLS41LS41IDIuNSAyLjUgMCAxIDAtNSAwYzAgLjgxLjcgMS44IDAgMi41bC03IDdjLS43LjctMS42OSAwLTIuNSAwYTIuNSAyLjUgMCAwIDAgMCA1Yy4yOCAwIC41LjIyLjUuNWEyLjUgMi41IDAgMSAwIDUgMGMwLS44MS0uNy0xLjggMC0yLjVaIn1dXX0pO3ZhciBheix3TmU9bCgoKT0+e2F6PVtbInBhdGgiLHtkOiJNNCAxOS41di0xNUEyLjUgMi41IDAgMCAxIDYuNSAySDE5YTEgMSAwIDAgMSAxIDF2MThhMSAxIDAgMCAxLTEgMUg2LjVhMSAxIDAgMCAxIDAtNUgyMCJ9XSxbInBhdGgiLHtkOiJtOCAxMyA0LTcgNCA3In1dLFsicGF0aCIse2Q6Ik05LjEgMTFoNS43In1dXX0pO3ZhciBpeixNTmU9bCgoKT0+e2l6PVtbInBhdGgiLHtkOiJNMTIgMTNoLjAxIn1dLFsicGF0aCIse2Q6Ik0xMiA2djMifV0sWyJwYXRoIix7ZDoiTTQgMTkuNXYtMTVBMi41IDIuNSAwIDAgMSA2LjUgMkgxOWExIDEgMCAwIDEgMSAxdjE4YTEgMSAwIDAgMS0xIDFINi41YTEgMSAwIDAgMSAwLTVIMjAifV1dfSk7dmFyIG96LGtOZT1sKCgpPT57b3o9W1sicGF0aCIse2Q6Ik0xMiA2djcifV0sWyJwYXRoIix7ZDoiTTE2IDh2MyJ9XSxbInBhdGgiLHtkOiJNNCAxOS41di0xNUEyLjUgMi41IDAgMCAxIDYuNSAySDE5YTEgMSAwIDAgMSAxIDF2MThhMSAxIDAgMCAxLTEgMUg2LjVhMSAxIDAgMCAxIDAtNUgyMCJ9XSxbInBhdGgiLHtkOiJNOCA4djMifV1dfSk7dmFyIG56LFNOZT1sKCgpPT57bno9W1sicGF0aCIse2Q6Ik00IDE5LjV2LTE1QTIuNSAyLjUgMCAwIDEgNi41IDJIMTlhMSAxIDAgMCAxIDEgMXYxOGExIDEgMCAwIDEtMSAxSDYuNWExIDEgMCAwIDEgMC01SDIwIn1dLFsicGF0aCIse2Q6Im05IDkuNSAyIDIgNC00In1dXX0pO3ZhciBNdSx6TmU9bCgoKT0+e011PVtbInBhdGgiLHtkOiJNMTIgMTdoMS41In1dLFsicGF0aCIse2Q6Ik0xMiAyMmgxLjUifV0sWyJwYXRoIix7ZDoiTTEyIDJoMS41In1dLFsicGF0aCIse2Q6Ik0xNy41IDIySDE5YTEgMSAwIDAgMCAxLTEifV0sWyJwYXRoIix7ZDoiTTE3LjUgMkgxOWExIDEgMCAwIDEgMSAxdjEuNSJ9XSxbInBhdGgiLHtkOiJNMjAgMTR2M2gtMi41In1dLFsicGF0aCIse2Q6Ik0yMCA4LjVWMTAifV0sWyJwYXRoIix7ZDoiTTQgMTBWOC41In1dLFsicGF0aCIse2Q6Ik00IDE5LjVWMTQifV0sWyJwYXRoIix7ZDoiTTQgNC41QTIuNSAyLjUgMCAwIDEgNi41IDJIOCJ9XSxbInBhdGgiLHtkOiJNOCAyMkg2LjVhMSAxIDAgMCAxIDAtNUg4In1dXX0pO3ZhciBzeixDTmU9bCgoKT0+e3N6PVtbInBhdGgiLHtkOiJNNSA3YTIgMiAwIDAgMC0yIDJ2MTEifV0sWyJwYXRoIix7ZDoiTTUuODAzIDE4SDVhMiAyIDAgMCAwIDAgNGg5LjVhLjUuNSAwIDAgMCAuNS0uNVYyMSJ9XSxbInBhdGgiLHtkOiJNOSAxNVY0YTIgMiAwIDAgMSAyLTJoOS41YS41LjUgMCAwIDEgLjUuNXYxNGEuNS41IDAgMCAxLS41LjVIMTFhMiAyIDAgMCAxIDAtNGgxMCJ9XV19KTt2YXIgbHosX05lPWwoKCk9Pntsej1bWyJwYXRoIix7ZDoiTTEyIDEzVjcifV0sWyJwYXRoIix7ZDoiTTQgMTkuNXYtMTVBMi41IDIuNSAwIDAgMSA2LjUgMkgxOWExIDEgMCAwIDEgMSAxdjE4YTEgMSAwIDAgMS0xIDFINi41YTEgMSAwIDAgMSAwLTVIMjAifV0sWyJwYXRoIix7ZDoibTkgMTAgMyAzIDMtMyJ9XV19KTt2YXIgY3osVE5lPWwoKCk9Pntjej1bWyJwYXRoIix7ZDoiTTQgMTkuNXYtMTVBMi41IDIuNSAwIDAgMSA2LjUgMkgxOWExIDEgMCAwIDEgMSAxdjE4YTEgMSAwIDAgMS0xIDFINi41YTEgMSAwIDAgMSAwLTVIMjAifV0sWyJwYXRoIix7ZDoiTTggMTJ2LTJhNCA0IDAgMCAxIDggMHYyIn1dLFsiY2lyY2xlIix7Y3g6IjE1IixjeToiMTIiLHI6IjEifV0sWyJjaXJjbGUiLHtjeDoiOSIsY3k6IjEyIixyOiIxIn1dXX0pO3ZhciBkeixMTmU9bCgoKT0+e2R6PVtbInBhdGgiLHtkOiJNNCAxOS41di0xNUEyLjUgMi41IDAgMCAxIDYuNSAySDE5YTEgMSAwIDAgMSAxIDF2MThhMSAxIDAgMCAxLTEgMUg2LjVhMSAxIDAgMCAxIDAtNUgyMCJ9XSxbInBhdGgiLHtkOiJNOC42MiA5LjhBMi4yNSAyLjI1IDAgMSAxIDEyIDYuODM2YTIuMjUgMi4yNSAwIDEgMSAzLjM4IDIuOTY2bC0yLjYyNiAyLjg1NmEuOTk4Ljk5OCAwIDAgMS0xLjUwNyAweiJ9XV19KTt2YXIgdXosRE5lPWwoKCk9Pnt1ej1bWyJwYXRoIix7ZDoibTIwIDEzLjctMi4xLTIuMWEyIDIgMCAwIDAtMi44IDBMOS43IDE3In1dLFsicGF0aCIse2Q6Ik00IDE5LjV2LTE1QTIuNSAyLjUgMCAwIDEgNi41IDJIMTlhMSAxIDAgMCAxIDEgMXYxOGExIDEgMCAwIDEtMSAxSDYuNWExIDEgMCAwIDEgMC01SDIwIn1dLFsiY2lyY2xlIix7Y3g6IjEwIixjeToiOCIscjoiMiJ9XV19KTt2YXIgZnosQU5lPWwoKCk9Pntmej1bWyJwYXRoIix7ZDoiTTEzIDJINi41QTIuNSAyLjUgMCAwIDAgNCA0LjV2MTUifV0sWyJwYXRoIix7ZDoiTTE3IDJ2NiJ9XSxbInBhdGgiLHtkOiJNMTcgNGgyIn1dLFsicGF0aCIse2Q6Ik0yMCAxNS4yVjIxYTEgMSAwIDAgMS0xIDFINi41YTEgMSAwIDAgMSAwLTVIMjAifV0sWyJjaXJjbGUiLHtjeDoiMTciLGN5OiIxMCIscjoiMiJ9XV19KTt2YXIgcHosRU5lPWwoKCk9Pntwej1bWyJwYXRoIix7ZDoiTTEwIDJ2OGwzLTMgMyAzVjIifV0sWyJwYXRoIix7ZDoiTTQgMTkuNXYtMTVBMi41IDIuNSAwIDAgMSA2LjUgMkgxOWExIDEgMCAwIDEgMSAxdjE4YTEgMSAwIDAgMS0xIDFINi41YTEgMSAwIDAgMSAwLTVIMjAifV1dfSk7dmFyIGh6LCROZT1sKCgpPT57aHo9W1sicGF0aCIse2Q6Ik0xOCA2VjRhMiAyIDAgMSAwLTQgMHYyIn1dLFsicGF0aCIse2Q6Ik0yMCAxNXY2YTEgMSAwIDAgMS0xIDFINi41YTEgMSAwIDAgMSAwLTVIMjAifV0sWyJwYXRoIix7ZDoiTTQgMTkuNXYtMTVBMi41IDIuNSAwIDAgMSA2LjUgMkgxMCJ9XSxbInJlY3QiLHt4OiIxMiIseToiNiIsd2lkdGg6IjgiLGhlaWdodDoiNSIscng6IjEifV1dfSk7dmFyIG16LFBOZT1sKCgpPT57bXo9W1sicGF0aCIse2Q6Ik00IDE5LjV2LTE1QTIuNSAyLjUgMCAwIDEgNi41IDJIMTlhMSAxIDAgMCAxIDEgMXYxOGExIDEgMCAwIDEtMSAxSDYuNWExIDEgMCAwIDEgMC01SDIwIn1dLFsicGF0aCIse2Q6Ik05IDEwaDYifV1dfSk7dmFyIGd6LElOZT1sKCgpPT57Z3o9W1sicGF0aCIse2Q6Ik0xMiAyMVY3In1dLFsicGF0aCIse2Q6Im0xNiAxMiAyIDIgNC00In1dLFsicGF0aCIse2Q6Ik0yMiA2VjRhMSAxIDAgMCAwLTEtMWgtNWE0IDQgMCAwIDAtNCA0IDQgNCAwIDAgMC00LTRIM2ExIDEgMCAwIDAtMSAxdjEzYTEgMSAwIDAgMCAxIDFoNmEzIDMgMCAwIDEgMyAzIDMgMyAwIDAgMSAzLTNoNmExIDEgMCAwIDAgMS0xdi0xLjMifV1dfSk7dmFyIHh6LE5OZT1sKCgpPT57eHo9W1sicGF0aCIse2Q6Ik0xMiA3djE0In1dLFsicGF0aCIse2Q6Ik0xNiAxMmgyIn1dLFsicGF0aCIse2Q6Ik0xNiA4aDIifV0sWyJwYXRoIix7ZDoiTTMgMThhMSAxIDAgMCAxLTEtMVY0YTEgMSAwIDAgMSAxLTFoNWE0IDQgMCAwIDEgNCA0IDQgNCAwIDAgMSA0LTRoNWExIDEgMCAwIDEgMSAxdjEzYTEgMSAwIDAgMS0xIDFoLTZhMyAzIDAgMCAwLTMgMyAzIDMgMCAwIDAtMy0zeiJ9XSxbInBhdGgiLHtkOiJNNiAxMmgyIn1dLFsicGF0aCIse2Q6Ik02IDhoMiJ9XV19KTt2YXIgYnosRk5lPWwoKCk9Pntiej1bWyJwYXRoIix7ZDoiTTEyIDd2MTQifV0sWyJwYXRoIix7ZDoiTTMgMThhMSAxIDAgMCAxLTEtMVY0YTEgMSAwIDAgMSAxLTFoNWE0IDQgMCAwIDEgNCA0IDQgNCAwIDAgMSA0LTRoNWExIDEgMCAwIDEgMSAxdjEzYTEgMSAwIDAgMS0xIDFoLTZhMyAzIDAgMCAwLTMgMyAzIDMgMCAwIDAtMy0zeiJ9XV19KTt2YXIgdnosT05lPWwoKCk9Pnt2ej1bWyJwYXRoIix7ZDoiTTEyIDd2NiJ9XSxbInBhdGgiLHtkOiJNNCAxOS41di0xNUEyLjUgMi41IDAgMCAxIDYuNSAySDE5YTEgMSAwIDAgMSAxIDF2MThhMSAxIDAgMCAxLTEgMUg2LjVhMSAxIDAgMCAxIDAtNUgyMCJ9XSxbInBhdGgiLHtkOiJNOSAxMGg2In1dXX0pO3ZhciB5eixSTmU9bCgoKT0+e3l6PVtbInBhdGgiLHtkOiJNMTEgMjJINS41YTEgMSAwIDAgMSAwLTVoNC41MDEifV0sWyJwYXRoIix7ZDoibTIxIDIyLTEuODc5LTEuODc4In1dLFsicGF0aCIse2Q6Ik0zIDE5LjV2LTE1QTIuNSAyLjUgMCAwIDEgNS41IDJIMThhMSAxIDAgMCAxIDEgMXY4In1dLFsiY2lyY2xlIix7Y3g6IjE3IixjeToiMTgiLHI6IjMifV1dfSk7dmFyIHd6LEJOZT1sKCgpPT57d3o9W1sicGF0aCIse2Q6Ik00IDE5LjV2LTE1QTIuNSAyLjUgMCAwIDEgNi41IDJIMTlhMSAxIDAgMCAxIDEgMXYxOGExIDEgMCAwIDEtMSAxSDYuNWExIDEgMCAwIDEgMC01SDIwIn1dLFsicGF0aCIse2Q6Ik04IDExaDgifV0sWyJwYXRoIix7ZDoiTTggN2g2In1dXX0pO3ZhciBNeixITmU9bCgoKT0+e016PVtbInBhdGgiLHtkOiJNMTIgMTNWNyJ9XSxbInBhdGgiLHtkOiJNMTggMmgxYTEgMSAwIDAgMSAxIDF2MThhMSAxIDAgMCAxLTEgMUg2LjVhMSAxIDAgMCAxIDAtNUgyMCJ9XSxbInBhdGgiLHtkOiJNNCAxOS41di0xNUEyLjUgMi41IDAgMCAxIDYuNSAyIn1dLFsicGF0aCIse2Q6Im05IDEwIDMtMyAzIDMifV0sWyJwYXRoIix7ZDoibTkgNSAzLTMgMyAzIn1dXX0pO3ZhciBreixxTmU9bCgoKT0+e2t6PVtbInBhdGgiLHtkOiJNMTAgMTNoNCJ9XSxbInBhdGgiLHtkOiJNMTIgNnY3In1dLFsicGF0aCIse2Q6Ik0xNiA4VjZIOHYyIn1dLFsicGF0aCIse2Q6Ik00IDE5LjV2LTE1QTIuNSAyLjUgMCAwIDEgNi41IDJIMTlhMSAxIDAgMCAxIDEgMXYxOGExIDEgMCAwIDEtMSAxSDYuNWExIDEgMCAwIDEgMC01SDIwIn1dXX0pO3ZhciBTeixqTmU9bCgoKT0+e1N6PVtbInBhdGgiLHtkOiJNMTIgMTNWNyJ9XSxbInBhdGgiLHtkOiJNNCAxOS41di0xNUEyLjUgMi41IDAgMCAxIDYuNSAySDE5YTEgMSAwIDAgMSAxIDF2MThhMSAxIDAgMCAxLTEgMUg2LjVhMSAxIDAgMCAxIDAtNUgyMCJ9XSxbInBhdGgiLHtkOiJtOSAxMCAzLTMgMyAzIn1dXX0pO3ZhciB6eixWTmU9bCgoKT0+e3p6PVtbInBhdGgiLHtkOiJNMTUgMTNhMyAzIDAgMSAwLTYgMCJ9XSxbInBhdGgiLHtkOiJNNCAxOS41di0xNUEyLjUgMi41IDAgMCAxIDYuNSAySDE5YTEgMSAwIDAgMSAxIDF2MThhMSAxIDAgMCAxLTEgMUg2LjVhMSAxIDAgMCAxIDAtNUgyMCJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjgiLHI6IjIifV1dfSk7dmFyIEN6LFVOZT1sKCgpPT57Q3o9W1sicGF0aCIse2Q6Im0xNC41IDctNSA1In1dLFsicGF0aCIse2Q6Ik00IDE5LjV2LTE1QTIuNSAyLjUgMCAwIDEgNi41IDJIMTlhMSAxIDAgMCAxIDEgMXYxOGExIDEgMCAwIDEtMSAxSDYuNWExIDEgMCAwIDEgMC01SDIwIn1dLFsicGF0aCIse2Q6Im05LjUgNyA1IDUifV1dfSk7dmFyIF96LFdOZT1sKCgpPT57X3o9W1sicGF0aCIse2Q6Ik00IDE5LjV2LTE1QTIuNSAyLjUgMCAwIDEgNi41IDJIMTlhMSAxIDAgMCAxIDEgMXYxOGExIDEgMCAwIDEtMSAxSDYuNWExIDEgMCAwIDEgMC01SDIwIn1dXX0pO3ZhciBUeixHTmU9bCgoKT0+e1R6PVtbInBhdGgiLHtkOiJNMTcgM2EyIDIgMCAwIDEgMiAydjE1YTEgMSAwIDAgMS0xLjQ5Ni44NjhsLTQuNTEyLTIuNTc4YTIgMiAwIDAgMC0xLjk4NCAwbC00LjUxMiAyLjU3OEExIDEgMCAwIDEgNSAyMFY1YTIgMiAwIDAgMSAyLTJ6In1dLFsicGF0aCIse2Q6Im05IDEwIDIgMiA0LTQifV1dfSk7dmFyIEx6LFlOZT1sKCgpPT57THo9W1sicGF0aCIse2Q6Ik0xNSAxMEg5In1dLFsicGF0aCIse2Q6Ik0xNyAzYTIgMiAwIDAgMSAyIDJ2MTVhMSAxIDAgMCAxLTEuNDk2Ljg2OGwtNC41MTItMi41NzhhMiAyIDAgMCAwLTEuOTg0IDBsLTQuNTEyIDIuNTc4QTEgMSAwIDAgMSA1IDIwVjVhMiAyIDAgMCAxIDItMnoifV1dfSk7dmFyIER6LFpOZT1sKCgpPT57RHo9W1sicGF0aCIse2Q6Ik0xMiA3djYifV0sWyJwYXRoIix7ZDoiTTE1IDEwSDkifV0sWyJwYXRoIix7ZDoiTTE3IDNhMiAyIDAgMCAxIDIgMnYxNWExIDEgMCAwIDEtMS40OTYuODY4bC00LjUxMi0yLjU3OGEyIDIgMCAwIDAtMS45ODQgMGwtNC41MTIgMi41NzhBMSAxIDAgMCAxIDUgMjBWNWEyIDIgMCAwIDEgMi0yeiJ9XV19KTt2YXIgQXosWE5lPWwoKCk9PntBej1bWyJwYXRoIix7ZDoibTE0LjUgNy41LTUgNSJ9XSxbInBhdGgiLHtkOiJNMTcgM2EyIDIgMCAwIDEgMiAydjE1YTEgMSAwIDAgMS0xLjQ5Ni44NjhsLTQuNTEyLTIuNTc4YTIgMiAwIDAgMC0xLjk4NCAwbC00LjUxMiAyLjU3OEExIDEgMCAwIDEgNSAyMFY1YTIgMiAwIDAgMSAyLTJ6In1dLFsicGF0aCIse2Q6Im05LjUgNy41IDUgNSJ9XV19KTt2YXIgRXosUU5lPWwoKCk9PntFej1bWyJwYXRoIix7ZDoiTTE3IDNhMiAyIDAgMCAxIDIgMnYxNWExIDEgMCAwIDEtMS40OTYuODY4bC00LjUxMi0yLjU3OGEyIDIgMCAwIDAtMS45ODQgMGwtNC41MTIgMi41NzhBMSAxIDAgMCAxIDUgMjBWNWEyIDIgMCAwIDEgMi0yeiJ9XV19KTt2YXIgJHosS05lPWwoKCk9Pnskej1bWyJwYXRoIix7ZDoiTTQgOVY1YTIgMiAwIDAgMSAyLTJoMTJhMiAyIDAgMCAxIDIgMnY0In1dLFsicGF0aCIse2Q6Ik04IDh2MSJ9XSxbInBhdGgiLHtkOiJNMTIgOHYxIn1dLFsicGF0aCIse2Q6Ik0xNiA4djEifV0sWyJyZWN0Iix7d2lkdGg6IjIwIixoZWlnaHQ6IjEyIix4OiIyIix5OiI5IixyeDoiMiJ9XSxbImNpcmNsZSIse2N4OiI4IixjeToiMTUiLHI6IjIifV0sWyJjaXJjbGUiLHtjeDoiMTYiLGN5OiIxNSIscjoiMiJ9XV19KTt2YXIgUHosSk5lPWwoKCk9PntQej1bWyJwYXRoIix7ZDoiTTEyIDZWMkg4In1dLFsicGF0aCIse2Q6Ik0xNSAxMXYyIn1dLFsicGF0aCIse2Q6Ik0yIDEyaDIifV0sWyJwYXRoIix7ZDoiTTIwIDEyaDIifV0sWyJwYXRoIix7ZDoiTTIwIDE2YTIgMiAwIDAgMS0yIDJIOC44MjhhMiAyIDAgMCAwLTEuNDE0LjU4NmwtMi4yMDIgMi4yMDJBLjcxLjcxIDAgMCAxIDQgMjAuMjg2VjhhMiAyIDAgMCAxIDItMmgxMmEyIDIgMCAwIDEgMiAyeiJ9XSxbInBhdGgiLHtkOiJNOSAxMXYyIn1dXX0pO3ZhciBJeixlRmU9bCgoKT0+e0l6PVtbInBhdGgiLHtkOiJNMTMuNjcgOEgxOGEyIDIgMCAwIDEgMiAydjQuMzMifV0sWyJwYXRoIix7ZDoiTTIgMTRoMiJ9XSxbInBhdGgiLHtkOiJNMjAgMTRoMiJ9XSxbInBhdGgiLHtkOiJNMjIgMjIgMiAyIn1dLFsicGF0aCIse2Q6Ik04IDhINmEyIDIgMCAwIDAtMiAydjhhMiAyIDAgMCAwIDIgMmgxMmEyIDIgMCAwIDAgMS40MTQtLjU4NiJ9XSxbInBhdGgiLHtkOiJNOSAxM3YyIn1dLFsicGF0aCIse2Q6Ik05LjY3IDRIMTJ2Mi4zMyJ9XV19KTt2YXIgTnosdEZlPWwoKCk9PntOej1bWyJwYXRoIix7ZDoiTTEyIDhWNEg4In1dLFsicmVjdCIse3dpZHRoOiIxNiIsaGVpZ2h0OiIxMiIseDoiNCIseToiOCIscng6IjIifV0sWyJwYXRoIix7ZDoiTTIgMTRoMiJ9XSxbInBhdGgiLHtkOiJNMjAgMTRoMiJ9XSxbInBhdGgiLHtkOiJNMTUgMTN2MiJ9XSxbInBhdGgiLHtkOiJNOSAxM3YyIn1dXX0pO3ZhciBGeixyRmU9bCgoKT0+e0Z6PVtbInBhdGgiLHtkOiJNMTcgM2g0djQifV0sWyJwYXRoIix7ZDoiTTE4LjU3NSAxMS4wODJhMTMgMTMgMCAwIDEgMS4wNDggOS4wMjcgMS4xNyAxLjE3IDAgMCAxLTEuOTE0LjU5N0wxNCAxNyJ9XSxbInBhdGgiLHtkOiJNNyAxMCAzLjI5IDYuMjlhMS4xNyAxLjE3IDAgMCAxIC42LTEuOTEgMTMgMTMgMCAwIDEgOS4wMyAxLjA1In1dLFsicGF0aCIse2Q6Ik03IDE0YTEuNyAxLjcgMCAwIDAtMS4yMDcuNWwtMi42NDYgMi42NDZBLjUuNSAwIDAgMCAzLjUgMThINWExIDEgMCAwIDEgMSAxdjEuNWEuNS41IDAgMCAwIC44NTQuMzU0TDkuNSAxOC4yMDdBMS43IDEuNyAwIDAgMCAxMCAxN3YtMmExIDEgMCAwIDAtMS0xeiJ9XSxbInBhdGgiLHtkOiJNOS43MDcgMTQuMjkzIDIxIDMifV1dfSk7dmFyIE96LGFGZT1sKCgpPT57T3o9W1sicGF0aCIse2Q6Ik0xMCAzYTEgMSAwIDAgMSAxLTFoMmExIDEgMCAwIDEgMSAxdjJhNiA2IDAgMCAwIDEuMiAzLjZsLjYuOEE2IDYgMCAwIDEgMTcgMTN2OGExIDEgMCAwIDEtMSAxSDhhMSAxIDAgMCAxLTEtMXYtOGE2IDYgMCAwIDEgMS4yLTMuNmwuNi0uOEE2IDYgMCAwIDAgMTAgNXoifV0sWyJwYXRoIix7ZDoiTTE3IDEzaC00YTEgMSAwIDAgMC0xIDF2M2ExIDEgMCAwIDAgMSAxaDQifV1dfSk7dmFyIFJ6LGlGZT1sKCgpPT57Uno9W1sicGF0aCIse2Q6Ik0yMSA4YTIgMiAwIDAgMC0xLTEuNzNsLTctNGEyIDIgMCAwIDAtMiAwbC03IDRBMiAyIDAgMCAwIDMgOHY4YTIgMiAwIDAgMCAxIDEuNzNsNyA0YTIgMiAwIDAgMCAyIDBsNy00QTIgMiAwIDAgMCAyMSAxNloifV0sWyJwYXRoIix7ZDoibTMuMyA3IDguNyA1IDguNy01In1dLFsicGF0aCIse2Q6Ik0xMiAyMlYxMiJ9XV19KTt2YXIgQnosb0ZlPWwoKCk9PntCej1bWyJwYXRoIix7ZDoiTTIuOTcgMTIuOTJBMiAyIDAgMCAwIDIgMTQuNjN2My4yNGEyIDIgMCAwIDAgLjk3IDEuNzFsMyAxLjhhMiAyIDAgMCAwIDIuMDYgMEwxMiAxOXYtNS41bC01LTMtNC4wMyAyLjQyWiJ9XSxbInBhdGgiLHtkOiJtNyAxNi41LTQuNzQtMi44NSJ9XSxbInBhdGgiLHtkOiJtNyAxNi41IDUtMyJ9XSxbInBhdGgiLHtkOiJNNyAxNi41djUuMTcifV0sWyJwYXRoIix7ZDoiTTEyIDEzLjVWMTlsMy45NyAyLjM4YTIgMiAwIDAgMCAyLjA2IDBsMy0xLjhhMiAyIDAgMCAwIC45Ny0xLjcxdi0zLjI0YTIgMiAwIDAgMC0uOTctMS43MUwxNyAxMC41bC01IDNaIn1dLFsicGF0aCIse2Q6Im0xNyAxNi41LTUtMyJ9XSxbInBhdGgiLHtkOiJtMTcgMTYuNSA0Ljc0LTIuODUifV0sWyJwYXRoIix7ZDoiTTE3IDE2LjV2NS4xNyJ9XSxbInBhdGgiLHtkOiJNNy45NyA0LjQyQTIgMiAwIDAgMCA3IDYuMTN2NC4zN2w1IDMgNS0zVjYuMTNhMiAyIDAgMCAwLS45Ny0xLjcxbC0zLTEuOGEyIDIgMCAwIDAtMi4wNiAwbC0zIDEuOFoifV0sWyJwYXRoIix7ZDoiTTEyIDggNy4yNiA1LjE1In1dLFsicGF0aCIse2Q6Im0xMiA4IDQuNzQtMi44NSJ9XSxbInBhdGgiLHtkOiJNMTIgMTMuNVY4In1dXX0pO3ZhciBrdSxuRmU9bCgoKT0+e2t1PVtbInBhdGgiLHtkOiJNOCAzSDdhMiAyIDAgMCAwLTIgMnY1YTIgMiAwIDAgMS0yIDIgMiAyIDAgMCAxIDIgMnY1YzAgMS4xLjkgMiAyIDJoMSJ9XSxbInBhdGgiLHtkOiJNMTYgMjFoMWEyIDIgMCAwIDAgMi0ydi01YzAtMS4xLjktMiAyLTJhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMC0yLTJoLTEifV1dfSk7dmFyIEh6LHNGZT1sKCgpPT57SHo9W1sicGF0aCIse2Q6Ik0xNiAzaDNhMSAxIDAgMCAxIDEgMXYxNmExIDEgMCAwIDEtMSAxaC0zIn1dLFsicGF0aCIse2Q6Ik04IDIxSDVhMSAxIDAgMCAxLTEtMVY0YTEgMSAwIDAgMSAxLTFoMyJ9XV19KTt2YXIgcXosbEZlPWwoKCk9Pntxej1bWyJwYXRoIix7ZDoiTTEyIDVhMyAzIDAgMSAwLTUuOTk3LjEyNSA0IDQgMCAwIDAtMi41MjYgNS43NyA0IDQgMCAwIDAgLjU1NiA2LjU4OEE0IDQgMCAxIDAgMTIgMThaIn1dLFsicGF0aCIse2Q6Ik05IDEzYTQuNSA0LjUgMCAwIDAgMy00In1dLFsicGF0aCIse2Q6Ik02LjAwMyA1LjEyNUEzIDMgMCAwIDAgNi40MDEgNi41In1dLFsicGF0aCIse2Q6Ik0zLjQ3NyAxMC44OTZhNCA0IDAgMCAxIC41ODUtLjM5NiJ9XSxbInBhdGgiLHtkOiJNNiAxOGE0IDQgMCAwIDEtMS45NjctLjUxNiJ9XSxbInBhdGgiLHtkOiJNMTIgMTNoNCJ9XSxbInBhdGgiLHtkOiJNMTIgMThoNmEyIDIgMCAwIDEgMiAydjEifV0sWyJwYXRoIix7ZDoiTTEyIDhoOCJ9XSxbInBhdGgiLHtkOiJNMTYgOFY1YTIgMiAwIDAgMSAyLTIifV0sWyJjaXJjbGUiLHtjeDoiMTYiLGN5OiIxMyIscjoiLjUifV0sWyJjaXJjbGUiLHtjeDoiMTgiLGN5OiIzIixyOiIuNSJ9XSxbImNpcmNsZSIse2N4OiIyMCIsY3k6IjIxIixyOiIuNSJ9XSxbImNpcmNsZSIse2N4OiIyMCIsY3k6IjgiLHI6Ii41In1dXX0pO3ZhciBqeixjRmU9bCgoKT0+e2p6PVtbInBhdGgiLHtkOiJNMTIgMThWNSJ9XSxbInBhdGgiLHtkOiJNMTUgMTNhNC4xNyA0LjE3IDAgMCAxLTMtNCA0LjE3IDQuMTcgMCAwIDEtMyA0In1dLFsicGF0aCIse2Q6Ik0xNy41OTggNi41QTMgMyAwIDEgMCAxMiA1YTMgMyAwIDEgMC01LjU5OCAxLjUifV0sWyJwYXRoIix7ZDoiTTE3Ljk5NyA1LjEyNWE0IDQgMCAwIDEgMi41MjYgNS43NyJ9XSxbInBhdGgiLHtkOiJNMTggMThhNCA0IDAgMCAwIDItNy40NjQifV0sWyJwYXRoIix7ZDoiTTE5Ljk2NyAxNy40ODNBNCA0IDAgMSAxIDEyIDE4YTQgNCAwIDEgMS03Ljk2Ny0uNTE3In1dLFsicGF0aCIse2Q6Ik02IDE4YTQgNCAwIDAgMS0yLTcuNDY0In1dLFsicGF0aCIse2Q6Ik02LjAwMyA1LjEyNWE0IDQgMCAwIDAtMi41MjYgNS43NyJ9XV19KTt2YXIgVnosZEZlPWwoKCk9PntWej1bWyJwYXRoIix7ZDoibTEwLjg1MiAxNC43NzItLjM4My45MjMifV0sWyJwYXRoIix7ZDoibTEwLjg1MiA5LjIyOC0uMzgzLS45MjMifV0sWyJwYXRoIix7ZDoibTEzLjE0OCAxNC43NzIuMzgyLjkyNCJ9XSxbInBhdGgiLHtkOiJtMTMuNTMxIDguMzA1LS4zODMuOTIzIn1dLFsicGF0aCIse2Q6Im0xNC43NzIgMTAuODUyLjkyMy0uMzgzIn1dLFsicGF0aCIse2Q6Im0xNC43NzIgMTMuMTQ4LjkyMy4zODMifV0sWyJwYXRoIix7ZDoiTTE3LjU5OCA2LjVBMyAzIDAgMSAwIDEyIDVhMyAzIDAgMCAwLTUuNjMtMS40NDYgMyAzIDAgMCAwLS4zNjggMS41NzEgNCA0IDAgMCAwLTIuNTI1IDUuNzcxIn1dLFsicGF0aCIse2Q6Ik0xNy45OTggNS4xMjVhNCA0IDAgMCAxIDIuNTI1IDUuNzcxIn1dLFsicGF0aCIse2Q6Ik0xOS41MDUgMTAuMjk0YTQgNCAwIDAgMS0xLjUgNy43MDYifV0sWyJwYXRoIix7ZDoiTTQuMDMyIDE3LjQ4M0E0IDQgMCAwIDAgMTEuNDY0IDIwYy4xOC0uMzExLjg5Mi0uMzExIDEuMDcyIDBhNCA0IDAgMCAwIDcuNDMyLTIuNTE2In1dLFsicGF0aCIse2Q6Ik00LjUgMTAuMjkxQTQgNCAwIDAgMCA2IDE4In1dLFsicGF0aCIse2Q6Ik02LjAwMiA1LjEyNWEzIDMgMCAwIDAgLjQgMS4zNzUifV0sWyJwYXRoIix7ZDoibTkuMjI4IDEwLjg1Mi0uOTIzLS4zODMifV0sWyJwYXRoIix7ZDoibTkuMjI4IDEzLjE0OC0uOTIzLjM4MyJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIzIn1dXX0pO3ZhciBVeix1RmU9bCgoKT0+e1V6PVtbInBhdGgiLHtkOiJNMTYgM3YyLjEwNyJ9XSxbInBhdGgiLHtkOiJNMTcgOWMxIDMgMi41IDMuNSAzLjUgNC41QTUgNSAwIDAgMSAyMiAxN2E1IDUgMCAwIDEtMTAgMGMwLS4zIDAtLjYuMS0uOWEyIDIgMCAxIDAgMy4zLTJDMTMgMTEuNSAxNiA5IDE3IDkifV0sWyJwYXRoIix7ZDoiTTIxIDguMjc0VjVhMiAyIDAgMCAwLTItMkg1YTIgMiAwIDAgMC0yIDJ2MTRhMiAyIDAgMCAwIDIgMmgzLjkzOCJ9XSxbInBhdGgiLHtkOiJNMyAxNWg1LjI1MyJ9XSxbInBhdGgiLHtkOiJNMyA5aDguMjI4In1dLFsicGF0aCIse2Q6Ik04IDE1djYifV0sWyJwYXRoIix7ZDoiTTggM3Y2In1dXX0pO3ZhciBXeixmRmU9bCgoKT0+e1d6PVtbInBhdGgiLHtkOiJNMTIgOXYxLjI1OCJ9XSxbInBhdGgiLHtkOiJNMTYgM3Y1LjQ2In1dLFsicGF0aCIse2Q6Ik0yMSA5LjExOFY1YTIgMiAwIDAgMC0yLTJINWEyIDIgMCAwIDAtMiAydjE0YTIgMiAwIDAgMCAyIDJoNS43NSJ9XSxbInBhdGgiLHtkOiJNMjIgMTcuNWMwIDIuNDk5LTEuNzUgMy43NDktMy44MyA0LjQ3NGEuNS41IDAgMCAxLS4zMzUtLjAwNWMtMi4wODUtLjcyLTMuODM1LTEuOTctMy44MzUtNC40N1YxNGEuNS41IDAgMCAxIC41LS40OTljMSAwIDIuMjUtLjYgMy4xMi0xLjM2YS42LjYgMCAwIDEgLjc2LS4wMDFjLjg3NS43NjUgMi4xMiAxLjM2IDMuMTIgMS4zNmEuNS41IDAgMCAxIC41LjV6In1dLFsicGF0aCIse2Q6Ik0zIDE1aDcifV0sWyJwYXRoIix7ZDoiTTMgOWgxMi4xNDIifV0sWyJwYXRoIix7ZDoiTTggMTV2NiJ9XSxbInBhdGgiLHtkOiJNOCAzdjYifV1dfSk7dmFyIEd6LHBGZT1sKCgpPT57R3o9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoiTTEyIDl2NiJ9XSxbInBhdGgiLHtkOiJNMTYgMTV2NiJ9XSxbInBhdGgiLHtkOiJNMTYgM3Y2In1dLFsicGF0aCIse2Q6Ik0zIDE1aDE4In1dLFsicGF0aCIse2Q6Ik0zIDloMTgifV0sWyJwYXRoIix7ZDoiTTggMTV2NiJ9XSxbInBhdGgiLHtkOiJNOCAzdjYifV1dfSk7dmFyIFl6LGhGZT1sKCgpPT57WXo9W1sicGF0aCIse2Q6Ik0xMiAxMmguMDEifV0sWyJwYXRoIix7ZDoiTTE2IDZWNGEyIDIgMCAwIDAtMi0yaC00YTIgMiAwIDAgMC0yIDJ2MiJ9XSxbInBhdGgiLHtkOiJNMjIgMTNhMTguMTUgMTguMTUgMCAwIDEtMjAgMCJ9XSxbInJlY3QiLHt3aWR0aDoiMjAiLGhlaWdodDoiMTQiLHg6IjIiLHk6IjYiLHJ4OiIyIn1dXX0pO3ZhciBaeixtRmU9bCgoKT0+e1p6PVtbInBhdGgiLHtkOiJNMTAgMjB2MiJ9XSxbInBhdGgiLHtkOiJNMTQgMjB2MiJ9XSxbInBhdGgiLHtkOiJNMTggMjB2MiJ9XSxbInBhdGgiLHtkOiJNMjEgMjBIMyJ9XSxbInBhdGgiLHtkOiJNNiAyMHYyIn1dLFsicGF0aCIse2Q6Ik04IDE2VjRhMiAyIDAgMCAxIDItMmg0YTIgMiAwIDAgMSAyIDJ2MTIifV0sWyJyZWN0Iix7eDoiNCIseToiNiIsd2lkdGg6IjE2IixoZWlnaHQ6IjEwIixyeDoiMiJ9XV19KTt2YXIgWHosZ0ZlPWwoKCk9PntYej1bWyJwYXRoIix7ZDoiTTEyIDExdjQifV0sWyJwYXRoIix7ZDoiTTE0IDEzaC00In1dLFsicGF0aCIse2Q6Ik0xNiA2VjRhMiAyIDAgMCAwLTItMmgtNGEyIDIgMCAwIDAtMiAydjIifV0sWyJwYXRoIix7ZDoiTTE4IDZ2MTQifV0sWyJwYXRoIix7ZDoiTTYgNnYxNCJ9XSxbInJlY3QiLHt3aWR0aDoiMjAiLGhlaWdodDoiMTQiLHg6IjIiLHk6IjYiLHJ4OiIyIn1dXX0pO3ZhciBReix4RmU9bCgoKT0+e1F6PVtbInBhdGgiLHtkOiJNMTYgMjBWNGEyIDIgMCAwIDAtMi0yaC00YTIgMiAwIDAgMC0yIDJ2MTYifV0sWyJyZWN0Iix7d2lkdGg6IjIwIixoZWlnaHQ6IjE0Iix4OiIyIix5OiI2IixyeDoiMiJ9XV19KTt2YXIgS3osYkZlPWwoKCk9PntLej1bWyJyZWN0Iix7eDoiOCIseToiOCIsd2lkdGg6IjgiLGhlaWdodDoiOCIscng6IjIifV0sWyJwYXRoIix7ZDoiTTQgMTBhMiAyIDAgMCAxLTItMlY0YTIgMiAwIDAgMSAyLTJoNGEyIDIgMCAwIDEgMiAyIn1dLFsicGF0aCIse2Q6Ik0xNCAyMGEyIDIgMCAwIDAgMiAyaDRhMiAyIDAgMCAwIDItMnYtNGEyIDIgMCAwIDAtMi0yIn1dXX0pO3ZhciBKeix2RmU9bCgoKT0+e0p6PVtbInBhdGgiLHtkOiJtMTYgMjItMS00In1dLFsicGF0aCIse2Q6Ik0xOSAxNGExIDEgMCAwIDAgMS0xdi0xYTIgMiAwIDAgMC0yLTJoLTNhMSAxIDAgMCAxLTEtMVY0YTIgMiAwIDAgMC00IDB2NWExIDEgMCAwIDEtMSAxSDZhMiAyIDAgMCAwLTIgMnYxYTEgMSAwIDAgMCAxIDEifV0sWyJwYXRoIix7ZDoiTTE5IDE0SDVsLTEuOTczIDYuNzY3QTEgMSAwIDAgMCA0IDIyaDE2YTEgMSAwIDAgMCAuOTczLTEuMjMzeiJ9XSxbInBhdGgiLHtkOiJtOCAyMiAxLTQifV1dfSk7dmFyIGVDLHlGZT1sKCgpPT57ZUM9W1sicGF0aCIse2Q6Im0xMSAxMCAzIDMifV0sWyJwYXRoIix7ZDoiTTYuNSAyMUEzLjUgMy41IDAgMSAwIDMgMTcuNWEyLjYyIDIuNjIgMCAwIDEtLjcwOCAxLjc5MkExIDEgMCAwIDAgMyAyMXoifV0sWyJwYXRoIix7ZDoiTTkuOTY5IDE3LjAzMSAyMS4zNzggNS42MjRhMSAxIDAgMCAwLTMuMDAyLTMuMDAyTDYuOTY3IDE0LjAzMSJ9XV19KTt2YXIgdEMsd0ZlPWwoKCk9Pnt0Qz1bWyJwYXRoIix7ZDoiTTEyIDIwdi04In1dLFsicGF0aCIse2Q6Ik0xMi42NTYgN0gxNGE0IDQgMCAwIDEgNCA0djEuMzQ0In1dLFsicGF0aCIse2Q6Ik0xNC4xMiAzLjg4IDE2IDIifV0sWyJwYXRoIix7ZDoiTTE3LjEyMyAxNy4xMjNBNiA2IDAgMCAxIDYgMTR2LTNhNCA0IDAgMCAxIDEuNzItMy4yODcifV0sWyJwYXRoIix7ZDoibTIgMiAyMCAyMCJ9XSxbInBhdGgiLHtkOiJNMjEgNWE0IDQgMCAwIDEtMy41NSAzLjk3In1dLFsicGF0aCIse2Q6Ik0yMiAxM2gtMy4zNDQifV0sWyJwYXRoIix7ZDoiTTMgMjFhNCA0IDAgMCAxIDMuODEtNCJ9XSxbInBhdGgiLHtkOiJNMyA1YTQgNCAwIDAgMCAzLjU1IDMuOTcifV0sWyJwYXRoIix7ZDoiTTYgMTNIMiJ9XSxbInBhdGgiLHtkOiJtOCAyIDEuODggMS44OCJ9XSxbInBhdGgiLHtkOiJNOS43MTIgNC4wNkEzIDMgMCAwIDEgMTUgNnYxLjEzIn1dXX0pO3ZhciByQyxNRmU9bCgoKT0+e3JDPVtbInBhdGgiLHtkOiJNNy4wMDEgMTUuMDg1QTEuNSAxLjUgMCAwIDEgOSAxNi41In1dLFsiY2lyY2xlIix7Y3g6IjE4LjUiLGN5OiI4LjUiLHI6IjMuNSJ9XSxbImNpcmNsZSIse2N4OiI3LjUiLGN5OiIxNi41IixyOiI1LjUifV0sWyJjaXJjbGUiLHtjeDoiNy41IixjeToiNC41IixyOiIyLjUifV1dfSk7dmFyIGFDLGtGZT1sKCgpPT57YUM9W1sicGF0aCIse2Q6Ik0xMCAxOS42NTVBNiA2IDAgMCAxIDYgMTR2LTNhNCA0IDAgMCAxIDQtNGg0YTQgNCAwIDAgMSA0IDMuOTcifV0sWyJwYXRoIix7ZDoiTTE0IDE1LjAwM2ExIDEgMCAwIDEgMS41MTctLjg1OWw0Ljk5NyAyLjk5N2ExIDEgMCAwIDEgMCAxLjcxOGwtNC45OTcgMi45OTdhMSAxIDAgMCAxLTEuNTE3LS44NnoifV0sWyJwYXRoIix7ZDoiTTE0LjEyIDMuODggMTYgMiJ9XSxbInBhdGgiLHtkOiJNMjEgNWE0IDQgMCAwIDEtMy41NSAzLjk3In1dLFsicGF0aCIse2Q6Ik0zIDIxYTQgNCAwIDAgMSAzLjgxLTQifV0sWyJwYXRoIix7ZDoiTTMgNWE0IDQgMCAwIDAgMy41NSAzLjk3In1dLFsicGF0aCIse2Q6Ik02IDEzSDIifV0sWyJwYXRoIix7ZDoibTggMiAxLjg4IDEuODgifV0sWyJwYXRoIix7ZDoiTTkgNy4xM1Y2YTMgMyAwIDEgMSA2IDB2MS4xMyJ9XV19KTt2YXIgaUMsU0ZlPWwoKCk9PntpQz1bWyJwYXRoIix7ZDoiTTEyIDIwdi05In1dLFsicGF0aCIse2Q6Ik0xNCA3YTQgNCAwIDAgMSA0IDR2M2E2IDYgMCAwIDEtMTIgMHYtM2E0IDQgMCAwIDEgNC00eiJ9XSxbInBhdGgiLHtkOiJNMTQuMTIgMy44OCAxNiAyIn1dLFsicGF0aCIse2Q6Ik0yMSAyMWE0IDQgMCAwIDAtMy44MS00In1dLFsicGF0aCIse2Q6Ik0yMSA1YTQgNCAwIDAgMS0zLjU1IDMuOTcifV0sWyJwYXRoIix7ZDoiTTIyIDEzaC00In1dLFsicGF0aCIse2Q6Ik0zIDIxYTQgNCAwIDAgMSAzLjgxLTQifV0sWyJwYXRoIix7ZDoiTTMgNWE0IDQgMCAwIDAgMy41NSAzLjk3In1dLFsicGF0aCIse2Q6Ik02IDEzSDIifV0sWyJwYXRoIix7ZDoibTggMiAxLjg4IDEuODgifV0sWyJwYXRoIix7ZDoiTTkgNy4xM1Y2YTMgMyAwIDEgMSA2IDB2MS4xMyJ9XV19KTt2YXIgb0MsekZlPWwoKCk9PntvQz1bWyJwYXRoIix7ZDoiTTEwIDEyaDQifV0sWyJwYXRoIix7ZDoiTTEwIDhoNCJ9XSxbInBhdGgiLHtkOiJNMTQgMjF2LTNhMiAyIDAgMCAwLTQgMHYzIn1dLFsicGF0aCIse2Q6Ik02IDEwSDRhMiAyIDAgMCAwLTIgMnY3YTIgMiAwIDAgMCAyIDJoMTZhMiAyIDAgMCAwIDItMlY5YTIgMiAwIDAgMC0yLTJoLTIifV0sWyJwYXRoIix7ZDoiTTYgMjFWNWEyIDIgMCAwIDEgMi0yaDhhMiAyIDAgMCAxIDIgMnYxNiJ9XV19KTt2YXIgbkMsQ0ZlPWwoKCk9PntuQz1bWyJwYXRoIix7ZDoiTTEyIDEwaC4wMSJ9XSxbInBhdGgiLHtkOiJNMTIgMTRoLjAxIn1dLFsicGF0aCIse2Q6Ik0xMiA2aC4wMSJ9XSxbInBhdGgiLHtkOiJNMTYgMTBoLjAxIn1dLFsicGF0aCIse2Q6Ik0xNiAxNGguMDEifV0sWyJwYXRoIix7ZDoiTTE2IDZoLjAxIn1dLFsicGF0aCIse2Q6Ik04IDEwaC4wMSJ9XSxbInBhdGgiLHtkOiJNOCAxNGguMDEifV0sWyJwYXRoIix7ZDoiTTggNmguMDEifV0sWyJwYXRoIix7ZDoiTTkgMjJ2LTNhMSAxIDAgMCAxIDEtMWg0YTEgMSAwIDAgMSAxIDF2MyJ9XSxbInJlY3QiLHt4OiI0Iix5OiIyIix3aWR0aDoiMTYiLGhlaWdodDoiMjAiLHJ4OiIyIn1dXX0pO3ZhciBzQyxfRmU9bCgoKT0+e3NDPVtbInBhdGgiLHtkOiJNNCA2IDIgNyJ9XSxbInBhdGgiLHtkOiJNMTAgNmg0In1dLFsicGF0aCIse2Q6Im0yMiA3LTItMSJ9XSxbInJlY3QiLHt3aWR0aDoiMTYiLGhlaWdodDoiMTYiLHg6IjQiLHk6IjMiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik00IDExaDE2In1dLFsicGF0aCIse2Q6Ik04IDE1aC4wMSJ9XSxbInBhdGgiLHtkOiJNMTYgMTVoLjAxIn1dLFsicGF0aCIse2Q6Ik02IDE5djIifV0sWyJwYXRoIix7ZDoiTTE4IDIxdi0yIn1dXX0pO3ZhciBsQyxURmU9bCgoKT0+e2xDPVtbInBhdGgiLHtkOiJNOCA2djYifV0sWyJwYXRoIix7ZDoiTTE1IDZ2NiJ9XSxbInBhdGgiLHtkOiJNMiAxMmgxOS42In1dLFsicGF0aCIse2Q6Ik0xOCAxOGgzcy41LTEuNy44LTIuOGMuMS0uNC4yLS44LjItMS4yIDAtLjQtLjEtLjgtLjItMS4ybC0xLjQtNUMyMC4xIDYuOCAxOS4xIDYgMTggNkg0YTIgMiAwIDAgMC0yIDJ2MTBoMyJ9XSxbImNpcmNsZSIse2N4OiI3IixjeToiMTgiLHI6IjIifV0sWyJwYXRoIix7ZDoiTTkgMThoNSJ9XSxbImNpcmNsZSIse2N4OiIxNiIsY3k6IjE4IixyOiIyIn1dXX0pO3ZhciBjQyxMRmU9bCgoKT0+e2NDPVtbInBhdGgiLHtkOiJNMTAgM2guMDEifV0sWyJwYXRoIix7ZDoiTTE0IDJoLjAxIn1dLFsicGF0aCIse2Q6Im0yIDkgMjAtNSJ9XSxbInBhdGgiLHtkOiJNMTIgMTJWNi41In1dLFsicmVjdCIse3dpZHRoOiIxNiIsaGVpZ2h0OiIxMCIseDoiNCIseToiMTIiLHJ4OiIzIn1dLFsicGF0aCIse2Q6Ik05IDEydjUifV0sWyJwYXRoIix7ZDoiTTE1IDEydjUifV0sWyJwYXRoIix7ZDoiTTQgMTdoMTYifV1dfSk7dmFyIGRDLERGZT1sKCgpPT57ZEM9W1sicGF0aCIse2Q6Ik0xNyAxOWExIDEgMCAwIDEtMS0xdi0yYTIgMiAwIDAgMSAyLTJoMmEyIDIgMCAwIDEgMiAydjJhMSAxIDAgMCAxLTEgMXoifV0sWyJwYXRoIix7ZDoiTTE3IDIxdi0yIn1dLFsicGF0aCIse2Q6Ik0xOSAxNFY2LjVhMSAxIDAgMCAwLTcgMHYxMWExIDEgMCAwIDEtNyAwVjEwIn1dLFsicGF0aCIse2Q6Ik0yMSAyMXYtMiJ9XSxbInBhdGgiLHtkOiJNMyA1VjMifV0sWyJwYXRoIix7ZDoiTTQgMTBhMiAyIDAgMCAxLTItMlY2YTEgMSAwIDAgMSAxLTFoNGExIDEgMCAwIDEgMSAxdjJhMiAyIDAgMCAxLTIgMnoifV0sWyJwYXRoIix7ZDoiTTcgNVYzIn1dXX0pO3ZhciB1QyxBRmU9bCgoKT0+e3VDPVtbInBhdGgiLHtkOiJNMTYgMTNIMyJ9XSxbInBhdGgiLHtkOiJNMTYgMTdIMyJ9XSxbInBhdGgiLHtkOiJtNy4yIDcuOS0zLjM4OCAyLjVBMiAyIDAgMCAwIDMgMTIuMDFWMjBhMSAxIDAgMCAwIDEgMWgxNmExIDEgMCAwIDAgMS0xdi04LjY1NGMwLTItMi40NC02LjAyNi02LjQ0LTguMDI2YTEgMSAwIDAgMC0xLjA4Mi4wNTdMMTAuNCA1LjYifV0sWyJjaXJjbGUiLHtjeDoiOSIsY3k6IjciLHI6IjIifV1dfSk7dmFyIGZDLEVGZT1sKCgpPT57ZkM9W1sicGF0aCIse2Q6Ik0yMCAyMXYtOGEyIDIgMCAwIDAtMi0ySDZhMiAyIDAgMCAwLTIgMnY4In1dLFsicGF0aCIse2Q6Ik00IDE2cy41LTEgMi0xIDIuNSAyIDQgMiAyLjUtMiA0LTIgMi41IDIgNCAyIDItMSAyLTEifV0sWyJwYXRoIix7ZDoiTTIgMjFoMjAifV0sWyJwYXRoIix7ZDoiTTcgOHYzIn1dLFsicGF0aCIse2Q6Ik0xMiA4djMifV0sWyJwYXRoIix7ZDoiTTE3IDh2MyJ9XSxbInBhdGgiLHtkOiJNNyA0aC4wMSJ9XSxbInBhdGgiLHtkOiJNMTIgNGguMDEifV0sWyJwYXRoIix7ZDoiTTE3IDRoLjAxIn1dXX0pO3ZhciBwQywkRmU9bCgoKT0+e3BDPVtbInJlY3QiLHt3aWR0aDoiMTYiLGhlaWdodDoiMjAiLHg6IjQiLHk6IjIiLHJ4OiIyIn1dLFsibGluZSIse3gxOiI4Iix4MjoiMTYiLHkxOiI2Iix5MjoiNiJ9XSxbImxpbmUiLHt4MToiMTYiLHgyOiIxNiIseTE6IjE0Iix5MjoiMTgifV0sWyJwYXRoIix7ZDoiTTE2IDEwaC4wMSJ9XSxbInBhdGgiLHtkOiJNMTIgMTBoLjAxIn1dLFsicGF0aCIse2Q6Ik04IDEwaC4wMSJ9XSxbInBhdGgiLHtkOiJNMTIgMTRoLjAxIn1dLFsicGF0aCIse2Q6Ik04IDE0aC4wMSJ9XSxbInBhdGgiLHtkOiJNMTIgMThoLjAxIn1dLFsicGF0aCIse2Q6Ik04IDE4aC4wMSJ9XV19KTt2YXIgaEMsUEZlPWwoKCk9PntoQz1bWyJwYXRoIix7ZDoiTTExIDE0aDF2NCJ9XSxbInBhdGgiLHtkOiJNMTYgMnY0In1dLFsicGF0aCIse2Q6Ik0zIDEwaDE4In1dLFsicGF0aCIse2Q6Ik04IDJ2NCJ9XSxbInJlY3QiLHt4OiIzIix5OiI0Iix3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHJ4OiIyIn1dXX0pO3ZhciBtQyxJRmU9bCgoKT0+e21DPVtbInBhdGgiLHtkOiJtMTQgMTggNCA0IDQtNCJ9XSxbInBhdGgiLHtkOiJNMTYgMnY0In1dLFsicGF0aCIse2Q6Ik0xOCAxNHY4In1dLFsicGF0aCIse2Q6Ik0yMSAxMS4zNTRWNmEyIDIgMCAwIDAtMi0ySDVhMiAyIDAgMCAwLTIgMnYxNGEyIDIgMCAwIDAgMiAyaDcuMzQzIn1dLFsicGF0aCIse2Q6Ik0zIDEwaDE4In1dLFsicGF0aCIse2Q6Ik04IDJ2NCJ9XV19KTt2YXIgZ0MsTkZlPWwoKCk9PntnQz1bWyJwYXRoIix7ZDoibTE0IDE4IDQtNCA0IDQifV0sWyJwYXRoIix7ZDoiTTE2IDJ2NCJ9XSxbInBhdGgiLHtkOiJNMTggMjJ2LTgifV0sWyJwYXRoIix7ZDoiTTIxIDExLjM0M1Y2YTIgMiAwIDAgMC0yLTJINWEyIDIgMCAwIDAtMiAydjE0YTIgMiAwIDAgMCAyIDJoOSJ9XSxbInBhdGgiLHtkOiJNMyAxMGgxOCJ9XSxbInBhdGgiLHtkOiJNOCAydjQifV1dfSk7dmFyIHhDLEZGZT1sKCgpPT57eEM9W1sicGF0aCIse2Q6Ik04IDJ2NCJ9XSxbInBhdGgiLHtkOiJNMTYgMnY0In1dLFsicGF0aCIse2Q6Ik0yMSAxNFY2YTIgMiAwIDAgMC0yLTJINWEyIDIgMCAwIDAtMiAydjE0YTIgMiAwIDAgMCAyIDJoOCJ9XSxbInBhdGgiLHtkOiJNMyAxMGgxOCJ9XSxbInBhdGgiLHtkOiJtMTYgMjAgMiAyIDQtNCJ9XV19KTt2YXIgYkMsT0ZlPWwoKCk9PntiQz1bWyJwYXRoIix7ZDoiTTggMnY0In1dLFsicGF0aCIse2Q6Ik0xNiAydjQifV0sWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiI0IixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNMyAxMGgxOCJ9XSxbInBhdGgiLHtkOiJtOSAxNiAyIDIgNC00In1dXX0pO3ZhciB2QyxSRmU9bCgoKT0+e3ZDPVtbInBhdGgiLHtkOiJNMTYgMTR2Mi4ybDEuNiAxIn1dLFsicGF0aCIse2Q6Ik0xNiAydjQifV0sWyJwYXRoIix7ZDoiTTIxIDcuNVY2YTIgMiAwIDAgMC0yLTJINWEyIDIgMCAwIDAtMiAydjE0YTIgMiAwIDAgMCAyIDJoMy41In1dLFsicGF0aCIse2Q6Ik0zIDEwaDUifV0sWyJwYXRoIix7ZDoiTTggMnY0In1dLFsiY2lyY2xlIix7Y3g6IjE2IixjeToiMTYiLHI6IjYifV1dfSk7dmFyIHlDLEJGZT1sKCgpPT57eUM9W1sicGF0aCIse2Q6Im0xNS4yMjggMTYuODUyLS45MjMtLjM4MyJ9XSxbInBhdGgiLHtkOiJtMTUuMjI4IDE5LjE0OC0uOTIzLjM4MyJ9XSxbInBhdGgiLHtkOiJNMTYgMnY0In1dLFsicGF0aCIse2Q6Im0xNi40NyAxNC4zMDUuMzgyLjkyMyJ9XSxbInBhdGgiLHtkOiJtMTYuODUyIDIwLjc3Mi0uMzgzLjkyNCJ9XSxbInBhdGgiLHtkOiJtMTkuMTQ4IDE1LjIyOC4zODMtLjkyMyJ9XSxbInBhdGgiLHtkOiJtMTkuNTMgMjEuNjk2LS4zODItLjkyNCJ9XSxbInBhdGgiLHtkOiJtMjAuNzcyIDE2Ljg1Mi45MjQtLjM4MyJ9XSxbInBhdGgiLHtkOiJtMjAuNzcyIDE5LjE0OC45MjQuMzgzIn1dLFsicGF0aCIse2Q6Ik0yMSAxMC41OTJWNmEyIDIgMCAwIDAtMi0ySDVhMiAyIDAgMCAwLTIgMnYxNGEyIDIgMCAwIDAgMiAyaDYifV0sWyJwYXRoIix7ZDoiTTMgMTBoMTgifV0sWyJwYXRoIix7ZDoiTTggMnY0In1dLFsiY2lyY2xlIix7Y3g6IjE4IixjeToiMTgiLHI6IjMifV1dfSk7dmFyIHdDLEhGZT1sKCgpPT57d0M9W1sicGF0aCIse2Q6Ik04IDJ2NCJ9XSxbInBhdGgiLHtkOiJNMTYgMnY0In1dLFsicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiNCIscng6IjIifV0sWyJwYXRoIix7ZDoiTTMgMTBoMTgifV0sWyJwYXRoIix7ZDoiTTggMTRoLjAxIn1dLFsicGF0aCIse2Q6Ik0xMiAxNGguMDEifV0sWyJwYXRoIix7ZDoiTTE2IDE0aC4wMSJ9XSxbInBhdGgiLHtkOiJNOCAxOGguMDEifV0sWyJwYXRoIix7ZDoiTTEyIDE4aC4wMSJ9XSxbInBhdGgiLHtkOiJNMTYgMThoLjAxIn1dXX0pO3ZhciBNQyxxRmU9bCgoKT0+e01DPVtbInBhdGgiLHtkOiJNMyAyMGEyIDIgMCAwIDAgMiAyaDEwYTIuNCAyLjQgMCAwIDAgMS43MDYtLjcwNmwzLjU4OC0zLjU4OEEyLjQgMi40IDAgMCAwIDIxIDE2VjZhMiAyIDAgMCAwLTItMkg1YTIgMiAwIDAgMC0yIDJ6In1dLFsicGF0aCIse2Q6Ik0xNSAyMnYtNWExIDEgMCAwIDEgMS0xaDUifV0sWyJwYXRoIix7ZDoiTTggMnY0In1dLFsicGF0aCIse2Q6Ik0xNiAydjQifV0sWyJwYXRoIix7ZDoiTTMgMTBoMTgifV1dfSk7dmFyIGtDLGpGZT1sKCgpPT57a0M9W1sicGF0aCIse2Q6Ik0xMi4xMjcgMjJINWEyIDIgMCAwIDEtMi0yVjZhMiAyIDAgMCAxIDItMmgxNGEyIDIgMCAwIDEgMiAydjUuMTI1In1dLFsicGF0aCIse2Q6Ik0xNC42MiAxOC44QTIuMjUgMi4yNSAwIDEgMSAxOCAxNS44MzZhMi4yNSAyLjI1IDAgMSAxIDMuMzggMi45NjZsLTIuNjI2IDIuODU2YS45OTguOTk4IDAgMCAxLTEuNTA3IDB6In1dLFsicGF0aCIse2Q6Ik0xNiAydjQifV0sWyJwYXRoIix7ZDoiTTMgMTBoMTgifV0sWyJwYXRoIix7ZDoiTTggMnY0In1dXX0pO3ZhciBTQyxWRmU9bCgoKT0+e1NDPVtbInBhdGgiLHtkOiJNOCAydjQifV0sWyJwYXRoIix7ZDoiTTE2IDJ2NCJ9XSxbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjQiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik0zIDEwaDE4In1dLFsicGF0aCIse2Q6Ik0xMCAxNmg0In1dXX0pO3ZhciB6QyxVRmU9bCgoKT0+e3pDPVtbInBhdGgiLHtkOiJNMTYgMTloNiJ9XSxbInBhdGgiLHtkOiJNMTYgMnY0In1dLFsicGF0aCIse2Q6Ik0yMSAxNVY2YTIgMiAwIDAgMC0yLTJINWEyIDIgMCAwIDAtMiAydjE0YTIgMiAwIDAgMCAyIDJoOC41In1dLFsicGF0aCIse2Q6Ik0zIDEwaDE4In1dLFsicGF0aCIse2Q6Ik04IDJ2NCJ9XV19KTt2YXIgQ0MsV0ZlPWwoKCk9PntDQz1bWyJwYXRoIix7ZDoiTTQuMiA0LjJBMiAyIDAgMCAwIDMgNnYxNGEyIDIgMCAwIDAgMiAyaDE0YTIgMiAwIDAgMCAxLjgyLTEuMTgifV0sWyJwYXRoIix7ZDoiTTIxIDE1LjVWNmEyIDIgMCAwIDAtMi0ySDkuNSJ9XSxbInBhdGgiLHtkOiJNMTYgMnY0In1dLFsicGF0aCIse2Q6Ik0zIDEwaDcifV0sWyJwYXRoIix7ZDoiTTIxIDEwaC01LjUifV0sWyJwYXRoIix7ZDoibTIgMiAyMCAyMCJ9XV19KTt2YXIgX0MsR0ZlPWwoKCk9PntfQz1bWyJwYXRoIix7ZDoiTTggMnY0In1dLFsicGF0aCIse2Q6Ik0xNiAydjQifV0sWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiI0IixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNMyAxMGgxOCJ9XSxbInBhdGgiLHtkOiJNMTAgMTZoNCJ9XSxbInBhdGgiLHtkOiJNMTIgMTR2NCJ9XV19KTt2YXIgVEMsWUZlPWwoKCk9PntUQz1bWyJwYXRoIix7ZDoiTTE2IDE5aDYifV0sWyJwYXRoIix7ZDoiTTE2IDJ2NCJ9XSxbInBhdGgiLHtkOiJNMTkgMTZ2NiJ9XSxbInBhdGgiLHtkOiJNMjEgMTIuNTk4VjZhMiAyIDAgMCAwLTItMkg1YTIgMiAwIDAgMC0yIDJ2MTRhMiAyIDAgMCAwIDIgMmg4LjUifV0sWyJwYXRoIix7ZDoiTTMgMTBoMTgifV0sWyJwYXRoIix7ZDoiTTggMnY0In1dXX0pO3ZhciBMQyxaRmU9bCgoKT0+e0xDPVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjQiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik0xNiAydjQifV0sWyJwYXRoIix7ZDoiTTMgMTBoMTgifV0sWyJwYXRoIix7ZDoiTTggMnY0In1dLFsicGF0aCIse2Q6Ik0xNyAxNGgtNiJ9XSxbInBhdGgiLHtkOiJNMTMgMThINyJ9XSxbInBhdGgiLHtkOiJNNyAxNGguMDEifV0sWyJwYXRoIix7ZDoiTTE3IDE4aC4wMSJ9XV19KTt2YXIgREMsWEZlPWwoKCk9PntEQz1bWyJwYXRoIix7ZDoiTTE2IDJ2NCJ9XSxbInBhdGgiLHtkOiJNMjEgMTEuNzVWNmEyIDIgMCAwIDAtMi0ySDVhMiAyIDAgMCAwLTIgMnYxNGEyIDIgMCAwIDAgMiAyaDcuMjUifV0sWyJwYXRoIix7ZDoibTIyIDIyLTEuODc1LTEuODc1In1dLFsicGF0aCIse2Q6Ik0zIDEwaDE4In1dLFsicGF0aCIse2Q6Ik04IDJ2NCJ9XSxbImNpcmNsZSIse2N4OiIxOCIsY3k6IjE4IixyOiIzIn1dXX0pO3ZhciBBQyxRRmU9bCgoKT0+e0FDPVtbInBhdGgiLHtkOiJNMTEgMTB2NGg0In1dLFsicGF0aCIse2Q6Im0xMSAxNCAxLjUzNS0xLjYwNWE1IDUgMCAwIDEgOCAxLjUifV0sWyJwYXRoIix7ZDoiTTE2IDJ2NCJ9XSxbInBhdGgiLHtkOiJtMjEgMTgtMS41MzUgMS42MDVhNSA1IDAgMCAxLTgtMS41In1dLFsicGF0aCIse2Q6Ik0yMSAyMnYtNGgtNCJ9XSxbInBhdGgiLHtkOiJNMjEgOC41VjZhMiAyIDAgMCAwLTItMkg1YTIgMiAwIDAgMC0yIDJ2MTRhMiAyIDAgMCAwIDIgMmg0LjMifV0sWyJwYXRoIix7ZDoiTTMgMTBoNCJ9XSxbInBhdGgiLHtkOiJNOCAydjQifV1dfSk7dmFyIEVDLEtGZT1sKCgpPT57RUM9W1sicGF0aCIse2Q6Ik04IDJ2NCJ9XSxbInBhdGgiLHtkOiJNMTYgMnY0In1dLFsicGF0aCIse2Q6Ik0yMSAxM1Y2YTIgMiAwIDAgMC0yLTJINWEyIDIgMCAwIDAtMiAydjE0YTIgMiAwIDAgMCAyIDJoOCJ9XSxbInBhdGgiLHtkOiJNMyAxMGgxOCJ9XSxbInBhdGgiLHtkOiJtMTcgMjIgNS01In1dLFsicGF0aCIse2Q6Im0xNyAxNyA1IDUifV1dfSk7dmFyICRDLEpGZT1sKCgpPT57JEM9W1sicGF0aCIse2Q6Ik04IDJ2NCJ9XSxbInBhdGgiLHtkOiJNMTYgMnY0In1dLFsicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiNCIscng6IjIifV0sWyJwYXRoIix7ZDoiTTMgMTBoMTgifV0sWyJwYXRoIix7ZDoibTE0IDE0LTQgNCJ9XSxbInBhdGgiLHtkOiJtMTAgMTQgNCA0In1dXX0pO3ZhciBQQyxlT2U9bCgoKT0+e1BDPVtbInBhdGgiLHtkOiJNOCAydjQifV0sWyJwYXRoIix7ZDoiTTE2IDJ2NCJ9XSxbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjQiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik0zIDEwaDE4In1dXX0pO3ZhciBJQyx0T2U9bCgoKT0+e0lDPVtbInBhdGgiLHtkOiJNMTIgMnYyIn1dLFsicGF0aCIse2Q6Ik0xNS43MjYgMjEuMDFBMiAyIDAgMCAxIDE0IDIySDRhMiAyIDAgMCAxLTItMlYxMGEyIDIgMCAwIDEgMi0yIn1dLFsicGF0aCIse2Q6Ik0xOCAydjIifV0sWyJwYXRoIix7ZDoiTTIgMTNoMiJ9XSxbInBhdGgiLHtkOiJNOCA4aDE0In1dLFsicmVjdCIse3g6IjgiLHk6IjMiLHdpZHRoOiIxNCIsaGVpZ2h0OiIxNCIscng6IjIifV1dfSk7dmFyIE5DLHJPZT1sKCgpPT57TkM9W1sicGF0aCIse2Q6Ik0xNC41NjQgMTQuNTU4YTMgMyAwIDEgMS00LjEyMi00LjEyMSJ9XSxbInBhdGgiLHtkOiJtMiAyIDIwIDIwIn1dLFsicGF0aCIse2Q6Ik0yMCAyMEg0YTIgMiAwIDAgMS0yLTJWOWEyIDIgMCAwIDEgMi0yaDEuOTk3YTIgMiAwIDAgMCAuODE5LS4xNzUifV0sWyJwYXRoIix7ZDoiTTkuNjk1IDQuMDI0QTIgMiAwIDAgMSAxMC4wMDQgNGgzLjk5M2EyIDIgMCAwIDEgMS43NiAxLjA1bC40ODYuOUEyIDIgMCAwIDAgMTguMDAzIDdIMjBhMiAyIDAgMCAxIDIgMnY3LjM0NCJ9XV19KTt2YXIgRkMsYU9lPWwoKCk9PntGQz1bWyJwYXRoIix7ZDoiTTEzLjk5NyA0YTIgMiAwIDAgMSAxLjc2IDEuMDVsLjQ4Ni45QTIgMiAwIDAgMCAxOC4wMDMgN0gyMGEyIDIgMCAwIDEgMiAydjlhMiAyIDAgMCAxLTIgMkg0YTIgMiAwIDAgMS0yLTJWOWEyIDIgMCAwIDEgMi0yaDEuOTk3YTIgMiAwIDAgMCAxLjc1OS0xLjA0OGwuNDg5LS45MDRBMiAyIDAgMCAxIDEwLjAwNCA0eiJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEzIixyOiIzIn1dXX0pO3ZhciBPQyxpT2U9bCgoKT0+e09DPVtbInBhdGgiLHtkOiJNNS43IDIxYTIgMiAwIDAgMS0zLjUtMmw4LjYtMTRhNiA2IDAgMCAxIDEwLjQgNiAyIDIgMCAxIDEtMy40NjQtMiAyIDIgMCAxIDAtMy40NjQtMloifV0sWyJwYXRoIix7ZDoiTTE3Ljc1IDcgMTUgMi4xIn1dLFsicGF0aCIse2Q6Ik0xMC45IDQuOCAxMyA5In1dLFsicGF0aCIse2Q6Im03LjkgOS43IDIgNC40In1dLFsicGF0aCIse2Q6Ik00LjkgMTQuNyA3IDE4LjkifV1dfSk7dmFyIFJDLG9PZT1sKCgpPT57UkM9W1sicGF0aCIse2Q6Ik0xMCAxMHY3LjkifV0sWyJwYXRoIix7ZDoiTTExLjgwMiA2LjE0NWE1IDUgMCAwIDEgNi4wNTMgNi4wNTMifV0sWyJwYXRoIix7ZDoiTTE0IDYuMXYyLjI0MyJ9XSxbInBhdGgiLHtkOiJtMTUuNSAxNS41NzEtLjk2NC45NjRhNSA1IDAgMCAxLTcuMDcxIDAgNSA1IDAgMCAxIDAtNy4wN2wuOTY0LS45NjUifV0sWyJwYXRoIix7ZDoiTTE2IDdWM2ExIDEgMCAwIDEgMS43MDctLjcwNyAyLjUgMi41IDAgMCAwIDIuMTUyLjcxNyAxIDEgMCAwIDEgMS4xMzEgMS4xMzEgMi41IDIuNSAwIDAgMCAuNzE3IDIuMTUyQTEgMSAwIDAgMSAyMSA4aC00In1dLFsicGF0aCIse2Q6Im0yIDIgMjAgMjAifV0sWyJwYXRoIix7ZDoiTTggMTd2NGExIDEgMCAwIDEtMS43MDcuNzA3IDIuNSAyLjUgMCAwIDAtMi4xNTItLjcxNyAxIDEgMCAwIDEtMS4xMzEtMS4xMzEgMi41IDIuNSAwIDAgMC0uNzE3LTIuMTUyQTEgMSAwIDAgMSAzIDE2aDQifV1dfSk7dmFyIEJDLG5PZT1sKCgpPT57QkM9W1sicGF0aCIse2Q6Ik0xMiAyMnYtNGMxLjUgMS41IDMuNSAzIDYgMyAwLTEuNS0uNS0zLjUtMi01In1dLFsicGF0aCIse2Q6Ik0xMy45ODggOC4zMjdDMTMuOTAyIDYuMDU0IDEzLjM2NSAzLjgyIDEyIDJhOS4zIDkuMyAwIDAgMC0xLjQ0NSAyLjkifV0sWyJwYXRoIix7ZDoiTTE3LjM3NSAxMS43MjVDMTguODgyIDEwLjUzIDIxIDcuODQxIDIxIDZjLTIuMzI0IDAtNS4wOCAxLjI5Ni02LjY2MiAyLjY4NCJ9XSxbInBhdGgiLHtkOiJtMiAyIDIwIDIwIn1dLFsicGF0aCIse2Q6Ik0yMS4wMjQgMTUuMzc4QTE1IDE1IDAgMCAwIDIyIDE1Yy0uNDI2LTEuMjc5LTIuNjctMi41NTctNC4yNS0yLjkwNyJ9XSxbInBhdGgiLHtkOiJNNi45OTUgNi45OTJDNS43MTQgNi40IDQuMjkgNiAzIDZjMCAyIDIuNSA1IDQgNi0xLjUgMC00LjUgMS41LTUgMyAzLjUgMS41IDYgMSA2IDEtMS41IDEuNS0yIDMuNS0yIDUgMi41IDAgNC41LTEuNSA2LTMifV1dfSk7dmFyIEhDLHNPZT1sKCgpPT57SEM9W1sicGF0aCIse2Q6Ik0xMiAyMnYtNCJ9XSxbInBhdGgiLHtkOiJNNyAxMmMtMS41IDAtNC41IDEuNS01IDMgMy41IDEuNSA2IDEgNiAxLTEuNSAxLjUtMiAzLjUtMiA1IDIuNSAwIDQuNS0xLjUgNi0zIDEuNSAxLjUgMy41IDMgNiAzIDAtMS41LS41LTMuNS0yLTUgMCAwIDIuNS41IDYtMS0uNS0xLjUtMy41LTMtNS0zIDEuNS0xIDQtNCA0LTYtMi41IDAtNS41IDEuNS03IDMgMC0yLjUtLjUtNS0yLTctMS41IDItMiA0LjUtMiA3LTEuNS0xLjUtNC41LTMtNy0zIDAgMiAyLjUgNSA0IDYifV1dfSk7dmFyIHFDLGxPZT1sKCgpPT57cUM9W1sicGF0aCIse2Q6Ik0xMCA3djEwLjkifV0sWyJwYXRoIix7ZDoiTTE0IDYuMVYxNyJ9XSxbInBhdGgiLHtkOiJNMTYgN1YzYTEgMSAwIDAgMSAxLjcwNy0uNzA3IDIuNSAyLjUgMCAwIDAgMi4xNTIuNzE3IDEgMSAwIDAgMSAxLjEzMSAxLjEzMSAyLjUgMi41IDAgMCAwIC43MTcgMi4xNTJBMSAxIDAgMCAxIDIxIDhoLTQifV0sWyJwYXRoIix7ZDoiTTE2LjUzNiA3LjQ2NWE1IDUgMCAwIDAtNy4wNzIgMGwtMiAyYTUgNSAwIDAgMCAwIDcuMDcgNSA1IDAgMCAwIDcuMDcyIDBsMi0yYTUgNSAwIDAgMCAwLTcuMDcifV0sWyJwYXRoIix7ZDoiTTggMTd2NGExIDEgMCAwIDEtMS43MDcuNzA3IDIuNSAyLjUgMCAwIDAtMi4xNTItLjcxNyAxIDEgMCAwIDEtMS4xMzEtMS4xMzEgMi41IDIuNSAwIDAgMC0uNzE3LTIuMTUyQTEgMSAwIDAgMSAzIDE2aDQifV1dfSk7dmFyIGpDLGNPZT1sKCgpPT57akM9W1sicGF0aCIse2Q6Ik0xMC41IDVIMTlhMiAyIDAgMCAxIDIgMnY4LjUifV0sWyJwYXRoIix7ZDoiTTE3IDExaC0uNSJ9XSxbInBhdGgiLHtkOiJNMTkgMTlINWEyIDIgMCAwIDEtMi0yVjdhMiAyIDAgMCAxIDItMiJ9XSxbInBhdGgiLHtkOiJtMiAyIDIwIDIwIn1dLFsicGF0aCIse2Q6Ik03IDExaDQifV0sWyJwYXRoIix7ZDoiTTcgMTVoMi41In1dXX0pO3ZhciBTdSxkT2U9bCgoKT0+e1N1PVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTQiLHg6IjMiLHk6IjUiLHJ4OiIyIixyeToiMiJ9XSxbInBhdGgiLHtkOiJNNyAxNWg0TTE1IDE1aDJNNyAxMWgyTTEzIDExaDQifV1dfSk7dmFyIFZDLHVPZT1sKCgpPT57VkM9W1sicGF0aCIse2Q6Im0yMSA4LTIgMi0xLjUtMy43QTIgMiAwIDAgMCAxNS42NDYgNUg4LjRhMiAyIDAgMCAwLTEuOTAzIDEuMjU3TDUgMTAgMyA4In1dLFsicGF0aCIse2Q6Ik03IDE0aC4wMSJ9XSxbInBhdGgiLHtkOiJNMTcgMTRoLjAxIn1dLFsicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiI4Iix4OiIzIix5OiIxMCIscng6IjIifV0sWyJwYXRoIix7ZDoiTTUgMTh2MiJ9XSxbInBhdGgiLHtkOiJNMTkgMTh2MiJ9XV19KTt2YXIgVUMsZk9lPWwoKCk9PntVQz1bWyJwYXRoIix7ZDoiTTEwIDJoNCJ9XSxbInBhdGgiLHtkOiJtMjEgOC0yIDItMS41LTMuN0EyIDIgMCAwIDAgMTUuNjQ2IDVIOC40YTIgMiAwIDAgMC0xLjkwMyAxLjI1N0w1IDEwIDMgOCJ9XSxbInBhdGgiLHtkOiJNNyAxNGguMDEifV0sWyJwYXRoIix7ZDoiTTE3IDE0aC4wMSJ9XSxbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiOCIseDoiMyIseToiMTAiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik01IDE4djIifV0sWyJwYXRoIix7ZDoiTTE5IDE4djIifV1dfSk7dmFyIFdDLHBPZT1sKCgpPT57V0M9W1sicGF0aCIse2Q6Ik0xOSAxN2gyYy42IDAgMS0uNCAxLTF2LTNjMC0uOS0uNy0xLjctMS41LTEuOUMxOC43IDEwLjYgMTYgMTAgMTYgMTBzLTEuMy0xLjQtMi4yLTIuM2MtLjUtLjQtMS4xLS43LTEuOC0uN0g1Yy0uNiAwLTEuMS40LTEuNC45bC0xLjQgMi45QTMuNyAzLjcgMCAwIDAgMiAxMnY0YzAgLjYuNCAxIDEgMWgyIn1dLFsiY2lyY2xlIix7Y3g6IjciLGN5OiIxNyIscjoiMiJ9XSxbInBhdGgiLHtkOiJNOSAxN2g2In1dLFsiY2lyY2xlIix7Y3g6IjE3IixjeToiMTciLHI6IjIifV1dfSk7dmFyIEdDLGhPZT1sKCgpPT57R0M9W1sicGF0aCIse2Q6Ik0xOCAxOVY5YTQgNCAwIDAgMC00LTRINmE0IDQgMCAwIDAtNCA0djhhMiAyIDAgMCAwIDIgMmgyIn1dLFsicGF0aCIse2Q6Ik0yIDloM2ExIDEgMCAwIDEgMSAxdjJhMSAxIDAgMCAxLTEgMUgyIn1dLFsicGF0aCIse2Q6Ik0yMiAxN3YxYTEgMSAwIDAgMS0xIDFIMTB2LTlhMSAxIDAgMCAxIDEtMWgyYTEgMSAwIDAgMSAxIDF2OSJ9XSxbImNpcmNsZSIse2N4OiI4IixjeToiMTkiLHI6IjIifV1dfSk7dmFyIFlDLG1PZT1sKCgpPT57WUM9W1sicGF0aCIse2Q6Ik0yLjI3IDIxLjdzOS44Ny0zLjUgMTIuNzMtNi4zNmE0LjUgNC41IDAgMCAwLTYuMzYtNi4zN0M1Ljc3IDExLjg0IDIuMjcgMjEuNyAyLjI3IDIxLjd6TTguNjQgMTRsLTIuMDUtMi4wNE0xNS4zNCAxNWwtMi40Ni0yLjQ2In1dLFsicGF0aCIse2Q6Ik0yMiA5cy0xLjMzLTItMy41LTJDMTYuODYgNyAxNSA5IDE1IDlzMS4zMyAyIDMuNSAyUzIyIDkgMjIgOXoifV0sWyJwYXRoIix7ZDoiTTE1IDJzLTIgMS4zMy0yIDMuNVMxNSA5IDE1IDlzMi0xLjg0IDItMy41QzE3IDMuMzMgMTUgMiAxNSAyeiJ9XV19KTt2YXIgWkMsZ09lPWwoKCk9PntaQz1bWyJwYXRoIix7ZDoiTTEyIDE0djQifV0sWyJwYXRoIix7ZDoiTTE0LjE3MiAyYTIgMiAwIDAgMSAxLjQxNC41ODZsMy44MjggMy44MjhBMiAyIDAgMCAxIDIwIDcuODI4VjIwYTIgMiAwIDAgMS0yIDJINmEyIDIgMCAwIDEtMi0yVjRhMiAyIDAgMCAxIDItMnoifV0sWyJwYXRoIix7ZDoiTTggMTRoOCJ9XSxbInJlY3QiLHt4OiI4Iix5OiIxMCIsd2lkdGg6IjgiLGhlaWdodDoiOCIscng6IjEifV1dfSk7dmFyIFhDLHhPZT1sKCgpPT57WEM9W1sicGF0aCIse2Q6Ik0xMCA5djcifV0sWyJwYXRoIix7ZDoiTTE0IDZ2MTAifV0sWyJjaXJjbGUiLHtjeDoiMTcuNSIsY3k6IjEyLjUiLHI6IjMuNSJ9XSxbImNpcmNsZSIse2N4OiI2LjUiLGN5OiIxMi41IixyOiIzLjUifV1dfSk7dmFyIFFDLGJPZT1sKCgpPT57UUM9W1sicGF0aCIse2Q6Im0yIDE2IDQuMDM5LTkuNjlhLjUuNSAwIDAgMSAuOTIzIDBMMTEgMTYifV0sWyJwYXRoIix7ZDoiTTIyIDl2NyJ9XSxbInBhdGgiLHtkOiJNMy4zMDQgMTNoNi4zOTIifV0sWyJjaXJjbGUiLHtjeDoiMTguNSIsY3k6IjEyLjUiLHI6IjMuNSJ9XV19KTt2YXIgS0Msdk9lPWwoKCk9PntLQz1bWyJwYXRoIix7ZDoiTTE1IDExaDQuNWExIDEgMCAwIDEgMCA1aC00YS41LjUgMCAwIDEtLjUtLjV2LTlhLjUuNSAwIDAgMSAuNS0uNWgzYTEgMSAwIDAgMSAwIDUifV0sWyJwYXRoIix7ZDoibTIgMTYgNC4wMzktOS42OWEuNS41IDAgMCAxIC45MjMgMEwxMSAxNiJ9XSxbInBhdGgiLHtkOiJNMy4zMDQgMTNoNi4zOTIifV1dfSk7dmFyIEpDLHlPZT1sKCgpPT57SkM9W1sicmVjdCIse3dpZHRoOiIyMCIsaGVpZ2h0OiIxNiIseDoiMiIseToiNCIscng6IjIifV0sWyJjaXJjbGUiLHtjeDoiOCIsY3k6IjEwIixyOiIyIn1dLFsicGF0aCIse2Q6Ik04IDEyaDgifV0sWyJjaXJjbGUiLHtjeDoiMTYiLGN5OiIxMCIscjoiMiJ9XSxbInBhdGgiLHtkOiJtNiAyMCAuNy0yLjlBMS40IDEuNCAwIDAgMSA4LjEgMTZoNy44YTEuNCAxLjQgMCAwIDEgMS40IDFsLjcgMyJ9XV19KTt2YXIgZV8sd09lPWwoKCk9PntlXz1bWyJwYXRoIix7ZDoiTTIgOFY2YTIgMiAwIDAgMSAyLTJoMTZhMiAyIDAgMCAxIDIgMnYxMmEyIDIgMCAwIDEtMiAyaC02In1dLFsicGF0aCIse2Q6Ik0yIDEyYTkgOSAwIDAgMSA4IDgifV0sWyJwYXRoIix7ZDoiTTIgMTZhNSA1IDAgMCAxIDQgNCJ9XSxbImxpbmUiLHt4MToiMiIseDI6IjIuMDEiLHkxOiIyMCIseTI6IjIwIn1dXX0pO3ZhciB0XyxNT2U9bCgoKT0+e3RfPVtbInBhdGgiLHtkOiJNMTIgNWMuNjcgMCAxLjM1LjA5IDIgLjI2IDEuNzgtMiA1LjAzLTIuODQgNi40Mi0yLjI2IDEuNC41OC0uNDIgNy0uNDIgNyAuNTcgMS4wNyAxIDIuMjQgMSAzLjQ0QzIxIDE3LjkgMTYuOTcgMjEgMTIgMjFzLTktMy05LTcuNTZjMC0xLjI1LjUtMi40IDEtMy40NCAwIDAtMS44OS02LjQyLS41LTcgMS4zOS0uNTggNC43Mi4yMyA2LjUgMi4yM0E5LjA0IDkuMDQgMCAwIDEgMTIgNVoifV0sWyJwYXRoIix7ZDoiTTggMTR2LjUifV0sWyJwYXRoIix7ZDoiTTE2IDE0di41In1dLFsicGF0aCIse2Q6Ik0xMS4yNSAxNi4yNWgxLjVMMTIgMTdsLS43NS0uNzVaIn1dXX0pO3ZhciByXyxrT2U9bCgoKT0+e3JfPVtbInBhdGgiLHtkOiJNMTAgNVYzIn1dLFsicGF0aCIse2Q6Ik0xNCA1VjMifV0sWyJwYXRoIix7ZDoiTTE1IDIxdi0zYTMgMyAwIDAgMC02IDB2MyJ9XSxbInBhdGgiLHtkOiJNMTggM3Y4In1dLFsicGF0aCIse2Q6Ik0xOCA1SDYifV0sWyJwYXRoIix7ZDoiTTIyIDExSDIifV0sWyJwYXRoIix7ZDoiTTIyIDl2MTBhMiAyIDAgMCAxLTIgMkg0YTIgMiAwIDAgMS0yLTJWOSJ9XSxbInBhdGgiLHtkOiJNNiAzdjgifV1dfSk7dmFyIGFfLFNPZT1sKCgpPT57YV89W1sicGF0aCIse2Q6Ik0xNi43NSAxMmgzLjYzMmExIDEgMCAwIDEgLjg5NCAxLjQ0N2wtMi4wMzQgNC4wNjlhMSAxIDAgMCAxLTEuNzA4LjEzNGwtMi4xMjQtMi45NyJ9XSxbInBhdGgiLHtkOiJNMTcuMTA2IDkuMDUzYTEgMSAwIDAgMSAuNDQ3IDEuMzQxbC0zLjEwNiA2LjIxMWExIDEgMCAwIDEtMS4zNDIuNDQ3TDMuNjEgMTIuM2EyLjkyIDIuOTIgMCAwIDEtMS4zLTMuOTFMMy42OSA1LjZhMi45MiAyLjkyIDAgMCAxIDMuOTItMS4zeiJ9XSxbInBhdGgiLHtkOiJNMiAxOWgzLjc2YTIgMiAwIDAgMCAxLjgtMS4xTDkgMTUifV0sWyJwYXRoIix7ZDoiTTIgMjF2LTQifV0sWyJwYXRoIix7ZDoiTTcgOWguMDEifV1dfSk7dmFyIHp1LHpPZT1sKCgpPT57enU9W1sicGF0aCIse2Q6Ik0zIDN2MTZhMiAyIDAgMCAwIDIgMmgxNiJ9XSxbInBhdGgiLHtkOiJNNyAxMS4yMDdhLjUuNSAwIDAgMSAuMTQ2LS4zNTNsMi0yYS41LjUgMCAwIDEgLjcwOCAwbDMuMjkyIDMuMjkyYS41LjUgMCAwIDAgLjcwOCAwbDQuMjkyLTQuMjkyYS41LjUgMCAwIDEgLjg1NC4zNTNWMTZhMSAxIDAgMCAxLTEgMUg4YTEgMSAwIDAgMS0xLTF6In1dXX0pO3ZhciBDdSxDT2U9bCgoKT0+e0N1PVtbInBhdGgiLHtkOiJNMyAzdjE2YTIgMiAwIDAgMCAyIDJoMTYifV0sWyJyZWN0Iix7eDoiNyIseToiMTMiLHdpZHRoOiI5IixoZWlnaHQ6IjQiLHJ4OiIxIn1dLFsicmVjdCIse3g6IjciLHk6IjUiLHdpZHRoOiIxMiIsaGVpZ2h0OiI0IixyeDoiMSJ9XV19KTt2YXIgaV8sX09lPWwoKCk9PntpXz1bWyJwYXRoIix7ZDoiTTMgM3YxNmEyIDIgMCAwIDAgMiAyaDE2In1dLFsicGF0aCIse2Q6Ik03IDExaDgifV0sWyJwYXRoIix7ZDoiTTcgMTZoMyJ9XSxbInBhdGgiLHtkOiJNNyA2aDEyIn1dXX0pO3ZhciBvXyxUT2U9bCgoKT0+e29fPVtbInBhdGgiLHtkOiJNMyAzdjE2YTIgMiAwIDAgMCAyIDJoMTYifV0sWyJwYXRoIix7ZDoiTTcgMTFoOCJ9XSxbInBhdGgiLHtkOiJNNyAxNmgxMiJ9XSxbInBhdGgiLHtkOiJNNyA2aDMifV1dfSk7dmFyIG5fLExPZT1sKCgpPT57bl89W1sicGF0aCIse2Q6Ik0xMSAxM3Y0In1dLFsicGF0aCIse2Q6Ik0xNSA1djQifV0sWyJwYXRoIix7ZDoiTTMgM3YxNmEyIDIgMCAwIDAgMiAyaDE2In1dLFsicmVjdCIse3g6IjciLHk6IjEzIix3aWR0aDoiOSIsaGVpZ2h0OiI0IixyeDoiMSJ9XSxbInJlY3QiLHt4OiI3Iix5OiI1Iix3aWR0aDoiMTIiLGhlaWdodDoiNCIscng6IjEifV1dfSk7dmFyIF91LERPZT1sKCgpPT57X3U9W1sicGF0aCIse2Q6Ik0zIDN2MTZhMiAyIDAgMCAwIDIgMmgxNiJ9XSxbInBhdGgiLHtkOiJNNyAxNmg4In1dLFsicGF0aCIse2Q6Ik03IDExaDEyIn1dLFsicGF0aCIse2Q6Ik03IDZoMyJ9XV19KTt2YXIgVHUsQU9lPWwoKCk9PntUdT1bWyJwYXRoIix7ZDoiTTkgNXY0In1dLFsicmVjdCIse3dpZHRoOiI0IixoZWlnaHQ6IjYiLHg6IjciLHk6IjkiLHJ4OiIxIn1dLFsicGF0aCIse2Q6Ik05IDE1djIifV0sWyJwYXRoIix7ZDoiTTE3IDN2MiJ9XSxbInJlY3QiLHt3aWR0aDoiNCIsaGVpZ2h0OiI4Iix4OiIxNSIseToiNSIscng6IjEifV0sWyJwYXRoIix7ZDoiTTE3IDEzdjMifV0sWyJwYXRoIix7ZDoiTTMgM3YxNmEyIDIgMCAwIDAgMiAyaDE2In1dXX0pO3ZhciBMdSxFT2U9bCgoKT0+e0x1PVtbInBhdGgiLHtkOiJNMyAzdjE2YTIgMiAwIDAgMCAyIDJoMTYifV0sWyJyZWN0Iix7eDoiMTUiLHk6IjUiLHdpZHRoOiI0IixoZWlnaHQ6IjEyIixyeDoiMSJ9XSxbInJlY3QiLHt4OiI3Iix5OiI4Iix3aWR0aDoiNCIsaGVpZ2h0OiI5IixyeDoiMSJ9XV19KTt2YXIgc18sJE9lPWwoKCk9PntzXz1bWyJwYXRoIix7ZDoiTTEzIDE3VjkifV0sWyJwYXRoIix7ZDoiTTE4IDE3di0zIn1dLFsicGF0aCIse2Q6Ik0zIDN2MTZhMiAyIDAgMCAwIDIgMmgxNiJ9XSxbInBhdGgiLHtkOiJNOCAxN1Y1In1dXX0pO3ZhciBEdSxQT2U9bCgoKT0+e0R1PVtbInBhdGgiLHtkOiJNMTMgMTdWOSJ9XSxbInBhdGgiLHtkOiJNMTggMTdWNSJ9XSxbInBhdGgiLHtkOiJNMyAzdjE2YTIgMiAwIDAgMCAyIDJoMTYifV0sWyJwYXRoIix7ZDoiTTggMTd2LTMifV1dfSk7dmFyIEF1LElPZT1sKCgpPT57QXU9W1sicGF0aCIse2Q6Ik0zIDN2MTZhMiAyIDAgMCAwIDIgMmgxNiJ9XSxbInBhdGgiLHtkOiJNMTggMTdWOSJ9XSxbInBhdGgiLHtkOiJNMTMgMTdWNSJ9XSxbInBhdGgiLHtkOiJNOCAxN3YtMyJ9XV19KTt2YXIgbF8sTk9lPWwoKCk9PntsXz1bWyJwYXRoIix7ZDoiTTExIDEzSDcifV0sWyJwYXRoIix7ZDoiTTE5IDloLTQifV0sWyJwYXRoIix7ZDoiTTMgM3YxNmEyIDIgMCAwIDAgMiAyaDE2In1dLFsicmVjdCIse3g6IjE1Iix5OiI1Iix3aWR0aDoiNCIsaGVpZ2h0OiIxMiIscng6IjEifV0sWyJyZWN0Iix7eDoiNyIseToiOCIsd2lkdGg6IjQiLGhlaWdodDoiOSIscng6IjEifV1dfSk7dmFyIGNfLEZPZT1sKCgpPT57Y189W1sicGF0aCIse2Q6Ik0xMCA2aDgifV0sWyJwYXRoIix7ZDoiTTEyIDE2aDYifV0sWyJwYXRoIix7ZDoiTTMgM3YxNmEyIDIgMCAwIDAgMiAyaDE2In1dLFsicGF0aCIse2Q6Ik04IDExaDcifV1dfSk7dmFyIEV1LE9PZT1sKCgpPT57RXU9W1sicGF0aCIse2Q6Ik0zIDN2MTZhMiAyIDAgMCAwIDIgMmgxNiJ9XSxbInBhdGgiLHtkOiJtMTkgOS01IDUtNC00LTMgMyJ9XV19KTt2YXIgZF8sUk9lPWwoKCk9PntkXz1bWyJwYXRoIix7ZDoibTEzLjExIDcuNjY0IDEuNzggMi42NzIifV0sWyJwYXRoIix7ZDoibTE0LjE2MiAxMi43ODgtMy4zMjQgMS40MjQifV0sWyJwYXRoIix7ZDoibTIwIDQtNi4wNiAxLjUxNSJ9XSxbInBhdGgiLHtkOiJNMyAzdjE2YTIgMiAwIDAgMCAyIDJoMTYifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiI2IixyOiIyIn1dLFsiY2lyY2xlIix7Y3g6IjE2IixjeToiMTIiLHI6IjIifV0sWyJjaXJjbGUiLHtjeDoiOSIsY3k6IjE1IixyOiIyIn1dXX0pO3ZhciB1XyxCT2U9bCgoKT0+e3VfPVtbInBhdGgiLHtkOiJNNSAyMVYzIn1dLFsicGF0aCIse2Q6Ik0xMiAyMVY5In1dLFsicGF0aCIse2Q6Ik0xOSAyMXYtNiJ9XV19KTt2YXIgJHUsSE9lPWwoKCk9PnskdT1bWyJwYXRoIix7ZDoiTTUgMjF2LTYifV0sWyJwYXRoIix7ZDoiTTEyIDIxVjkifV0sWyJwYXRoIix7ZDoiTTE5IDIxVjMifV1dfSk7dmFyIFB1LHFPZT1sKCgpPT57UHU9W1sicGF0aCIse2Q6Ik01IDIxdi02In1dLFsicGF0aCIse2Q6Ik0xMiAyMVYzIn1dLFsicGF0aCIse2Q6Ik0xOSAyMVY5In1dXX0pO3ZhciBmXyxqT2U9bCgoKT0+e2ZfPVtbInBhdGgiLHtkOiJNMTIgMTZ2NSJ9XSxbInBhdGgiLHtkOiJNMTYgMTR2NyJ9XSxbInBhdGgiLHtkOiJNMjAgMTB2MTEifV0sWyJwYXRoIix7ZDoibTIyIDMtOC42NDYgOC42NDZhLjUuNSAwIDAgMS0uNzA4IDBMOS4zNTQgOC4zNTRhLjUuNSAwIDAgMC0uNzA3IDBMMiAxNSJ9XSxbInBhdGgiLHtkOiJNNCAxOHYzIn1dLFsicGF0aCIse2Q6Ik04IDE0djcifV1dfSk7dmFyIEl1LFZPZT1sKCgpPT57SXU9W1sicGF0aCIse2Q6Ik02IDVoMTIifV0sWyJwYXRoIix7ZDoiTTQgMTJoMTAifV0sWyJwYXRoIix7ZDoiTTEyIDE5aDgifV1dfSk7dmFyIE51LFVPZT1sKCgpPT57TnU9W1sicGF0aCIse2Q6Ik0yMSAxMmMuNTUyIDAgMS4wMDUtLjQ0OS45NS0uOTk4YTEwIDEwIDAgMCAwLTguOTUzLTguOTUxYy0uNTUtLjA1NS0uOTk4LjM5OC0uOTk4Ljk1djhhMSAxIDAgMCAwIDEgMXoifV0sWyJwYXRoIix7ZDoiTTIxLjIxIDE1Ljg5QTEwIDEwIDAgMSAxIDggMi44MyJ9XV19KTt2YXIgcF8sV09lPWwoKCk9PntwXz1bWyJwYXRoIix7ZDoiTTMgM3YxNmEyIDIgMCAwIDAgMiAyaDE2In1dLFsicGF0aCIse2Q6Ik03IDE2Yy41LTIgMS41LTcgNC03IDIgMCAyIDMgNCAzIDIuNSAwIDQuNS01IDUtNyJ9XV19KTt2YXIgRnUsR09lPWwoKCk9PntGdT1bWyJjaXJjbGUiLHtjeDoiNy41IixjeToiNy41IixyOiIuNSIsZmlsbDoiY3VycmVudENvbG9yIn1dLFsiY2lyY2xlIix7Y3g6IjE4LjUiLGN5OiI1LjUiLHI6Ii41IixmaWxsOiJjdXJyZW50Q29sb3IifV0sWyJjaXJjbGUiLHtjeDoiMTEuNSIsY3k6IjExLjUiLHI6Ii41IixmaWxsOiJjdXJyZW50Q29sb3IifV0sWyJjaXJjbGUiLHtjeDoiNy41IixjeToiMTYuNSIscjoiLjUiLGZpbGw6ImN1cnJlbnRDb2xvciJ9XSxbImNpcmNsZSIse2N4OiIxNy41IixjeToiMTQuNSIscjoiLjUiLGZpbGw6ImN1cnJlbnRDb2xvciJ9XSxbInBhdGgiLHtkOiJNMyAzdjE2YTIgMiAwIDAgMCAyIDJoMTYifV1dfSk7dmFyIGhfLFlPZT1sKCgpPT57aF89W1sicGF0aCIse2Q6Ik0xOCA2IDcgMTdsLTUtNSJ9XSxbInBhdGgiLHtkOiJtMjIgMTAtNy41IDcuNUwxMyAxNiJ9XV19KTt2YXIgbV8sWk9lPWwoKCk9PnttXz1bWyJwYXRoIix7ZDoiTTIwIDRMOSAxNSJ9XSxbInBhdGgiLHtkOiJNMjEgMTlMMyAxOSJ9XSxbInBhdGgiLHtkOiJNOSAxNUw0IDEwIn1dXX0pO3ZhciBnXyxYT2U9bCgoKT0+e2dfPVtbInBhdGgiLHtkOiJNMjAgNiA5IDE3bC01LTUifV1dfSk7dmFyIHhfLFFPZT1sKCgpPT57eF89W1sicGF0aCIse2Q6Ik0xNyAyMWExIDEgMCAwIDAgMS0xdi01LjM1YzAtLjQ1Ny4zMTYtLjg0NC43MjctMS4wNDFhNCA0IDAgMCAwLTIuMTM0LTcuNTg5IDUgNSAwIDAgMC05LjE4NiAwIDQgNCAwIDAgMC0yLjEzNCA3LjU4OGMuNDExLjE5OC43MjcuNTg1LjcyNyAxLjA0MVYyMGExIDEgMCAwIDAgMSAxWiJ9XSxbInBhdGgiLHtkOiJNNiAxN2gxMiJ9XV19KTt2YXIgYl8sS09lPWwoKCk9PntiXz1bWyJwYXRoIix7ZDoiTTIgMTdhNSA1IDAgMCAwIDEwIDBjMC0yLjc2LTIuNS01LTUtMy0yLjUtMi01IC4yNC01IDNaIn1dLFsicGF0aCIse2Q6Ik0xMiAxN2E1IDUgMCAwIDAgMTAgMGMwLTIuNzYtMi41LTUtNS0zLTIuNS0yLTUgLjI0LTUgM1oifV0sWyJwYXRoIix7ZDoiTTcgMTRjMy4yMi0yLjkxIDQuMjktOC43NSA1LTEyIDEuNjYgMi4zOCA0Ljk0IDkgNSAxMiJ9XSxbInBhdGgiLHtkOiJNMjIgOWMtNC4yOSAwLTcuMTQtMi4zMy0xMC03IDUuNzEgMCAxMCA0LjY3IDEwIDdaIn1dXX0pO3ZhciB2XyxKT2U9bCgoKT0+e3ZfPVtbInBhdGgiLHtkOiJNNCAyMGEyIDIgMCAwIDEgMi0yaDEyYTIgMiAwIDAgMSAyIDJ2MWExIDEgMCAwIDEtMSAxSDVhMSAxIDAgMCAxLTEtMXoifV0sWyJwYXRoIix7ZDoibTYuNyAxOC0xLTFDNC4zNSAxNS42ODIgMyAxNC4wOSAzIDEyYTUgNSAwIDAgMSA0Ljk1LTVjMS41ODQgMCAyLjcuNDU1IDQuMDUgMS44MThDMTMuMzUgNy40NTUgMTQuNDY2IDcgMTYuMDUgN0E1IDUgMCAwIDEgMjEgMTJjMCAyLjA4Mi0xLjM1OSAzLjY3My0yLjcgNWwtMSAxIn1dLFsicGF0aCIse2Q6Ik0xMCA0aDQifV0sWyJwYXRoIix7ZDoiTTEyIDJ2Ni44MTgifV1dfSk7dmFyIHlfLGVSZT1sKCgpPT57eV89W1sicGF0aCIse2Q6Ik01IDIwYTIgMiAwIDAgMSAyLTJoMTBhMiAyIDAgMCAxIDIgMnYxYTEgMSAwIDAgMS0xIDFINmExIDEgMCAwIDEtMS0xeiJ9XSxbInBhdGgiLHtkOiJNMTUgMThjMS41LS42MTUgMy0yLjQ2MSAzLTQuOTIzQzE4IDguNzY5IDE0LjUgNC40NjIgMTIgMiA5LjUgNC40NjIgNiA4Ljc3IDYgMTMuMDc3IDYgMTUuNTM5IDcuNSAxNy4zODUgOSAxOCJ9XSxbInBhdGgiLHtkOiJtMTYgNy0yLjUgMi41In1dLFsicGF0aCIse2Q6Ik05IDJoNiJ9XV19KTt2YXIgd18sdFJlPWwoKCk9Pnt3Xz1bWyJwYXRoIix7ZDoiTTUgMjBhMiAyIDAgMCAxIDItMmgxMGEyIDIgMCAwIDEgMiAydjFhMSAxIDAgMCAxLTEgMUg2YTEgMSAwIDAgMS0xLTF6In1dLFsicGF0aCIse2Q6Ik0xNi41IDE4YzEtMiAyLjUtNSAyLjUtOWE3IDcgMCAwIDAtNy03SDYuNjM1YTEgMSAwIDAgMC0uNzY4IDEuNjRMNyA1bC0yLjMyIDUuODAyYTIgMiAwIDAgMCAuOTUgMi41MjZsMi44NyAxLjQ1NiJ9XSxbInBhdGgiLHtkOiJtMTUgNSAxLjQyNS0xLjQyNSJ9XSxbInBhdGgiLHtkOiJtMTcgOCAxLjUzLTEuNTMifV0sWyJwYXRoIix7ZDoiTTkuNzEzIDEyLjE4NSA3IDE4In1dXX0pO3ZhciBNXyxyUmU9bCgoKT0+e01fPVtbInBhdGgiLHtkOiJNNSAyMGEyIDIgMCAwIDEgMi0yaDEwYTIgMiAwIDAgMSAyIDJ2MWExIDEgMCAwIDEtMSAxSDZhMSAxIDAgMCAxLTEtMXoifV0sWyJwYXRoIix7ZDoibTE0LjUgMTAgMS41IDgifV0sWyJwYXRoIix7ZDoiTTcgMTBoMTAifV0sWyJwYXRoIix7ZDoibTggMTggMS41LTgifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiI2IixyOiI0In1dXX0pO3ZhciBrXyxhUmU9bCgoKT0+e2tfPVtbInBhdGgiLHtkOiJNNCAyMGEyIDIgMCAwIDEgMi0yaDEyYTIgMiAwIDAgMSAyIDJ2MWExIDEgMCAwIDEtMSAxSDVhMSAxIDAgMCAxLTEtMXoifV0sWyJwYXRoIix7ZDoibTEyLjQ3NCA1Ljk0MyAxLjU2NyA1LjM0YTEgMSAwIDAgMCAxLjc1LjMyOGwyLjYxNi0zLjQwMiJ9XSxbInBhdGgiLHtkOiJtMjAgOS0zIDkifV0sWyJwYXRoIix7ZDoibTUuNTk0IDguMjA5IDIuNjE1IDMuNDAzYTEgMSAwIDAgMCAxLjc1LS4zMjlsMS41NjctNS4zNCJ9XSxbInBhdGgiLHtkOiJNNyAxOCA0IDkifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiI0IixyOiIyIn1dLFsiY2lyY2xlIix7Y3g6IjIwIixjeToiNyIscjoiMiJ9XSxbImNpcmNsZSIse2N4OiI0IixjeToiNyIscjoiMiJ9XV19KTt2YXIgU18saVJlPWwoKCk9PntTXz1bWyJwYXRoIix7ZDoiTTUgMjBhMiAyIDAgMCAxIDItMmgxMGEyIDIgMCAwIDEgMiAydjFhMSAxIDAgMCAxLTEgMUg2YTEgMSAwIDAgMS0xLTF6In1dLFsicGF0aCIse2Q6Ik0xMCAydjIifV0sWyJwYXRoIix7ZDoiTTE0IDJ2MiJ9XSxbInBhdGgiLHtkOiJtMTcgMTgtMS05In1dLFsicGF0aCIse2Q6Ik02IDJ2NWEyIDIgMCAwIDAgMiAyaDhhMiAyIDAgMCAwIDItMlYyIn1dLFsicGF0aCIse2Q6Ik02IDRoMTIifV0sWyJwYXRoIix7ZDoibTcgMTggMS05In1dXX0pO3ZhciB6XyxvUmU9bCgoKT0+e3pfPVtbInBhdGgiLHtkOiJtNiA5IDYgNiA2LTYifV1dfSk7dmFyIENfLG5SZT1sKCgpPT57Q189W1sicGF0aCIse2Q6Im0xNyAxOC02LTYgNi02In1dLFsicGF0aCIse2Q6Ik03IDZ2MTIifV1dfSk7dmFyIF9fLHNSZT1sKCgpPT57X189W1sicGF0aCIse2Q6Im03IDE4IDYtNi02LTYifV0sWyJwYXRoIix7ZDoiTTE3IDZ2MTIifV1dfSk7dmFyIFRfLGxSZT1sKCgpPT57VF89W1sicGF0aCIse2Q6Im05IDE4IDYtNi02LTYifV1dfSk7dmFyIExfLGNSZT1sKCgpPT57TF89W1sicGF0aCIse2Q6Im0xNSAxOC02LTYgNi02In1dXX0pO3ZhciBEXyxkUmU9bCgoKT0+e0RfPVtbInBhdGgiLHtkOiJtMTggMTUtNi02LTYgNiJ9XV19KTt2YXIgQV8sdVJlPWwoKCk9PntBXz1bWyJwYXRoIix7ZDoibTcgMjAgNS01IDUgNSJ9XSxbInBhdGgiLHtkOiJtNyA0IDUgNSA1LTUifV1dfSk7dmFyIEVfLGZSZT1sKCgpPT57RV89W1sicGF0aCIse2Q6Im03IDYgNSA1IDUtNSJ9XSxbInBhdGgiLHtkOiJtNyAxMyA1IDUgNS01In1dXX0pO3ZhciAkXyxwUmU9bCgoKT0+eyRfPVtbInBhdGgiLHtkOiJNMTIgMTJoLjAxIn1dLFsicGF0aCIse2Q6Ik0xNiAxMmguMDEifV0sWyJwYXRoIix7ZDoibTE3IDcgNSA1LTUgNSJ9XSxbInBhdGgiLHtkOiJtNyA3LTUgNSA1IDUifV0sWyJwYXRoIix7ZDoiTTggMTJoLjAxIn1dXX0pO3ZhciBQXyxoUmU9bCgoKT0+e1BfPVtbInBhdGgiLHtkOiJtOSA3LTUgNSA1IDUifV0sWyJwYXRoIix7ZDoibTE1IDcgNSA1LTUgNSJ9XV19KTt2YXIgSV8sbVJlPWwoKCk9PntJXz1bWyJwYXRoIix7ZDoibTExIDE3LTUtNSA1LTUifV0sWyJwYXRoIix7ZDoibTE4IDE3LTUtNSA1LTUifV1dfSk7dmFyIE5fLGdSZT1sKCgpPT57Tl89W1sicGF0aCIse2Q6Im0yMCAxNy01LTUgNS01In1dLFsicGF0aCIse2Q6Im00IDE3IDUtNS01LTUifV1dfSk7dmFyIEZfLHhSZT1sKCgpPT57Rl89W1sicGF0aCIse2Q6Im02IDE3IDUtNS01LTUifV0sWyJwYXRoIix7ZDoibTEzIDE3IDUtNS01LTUifV1dfSk7dmFyIE9fLGJSZT1sKCgpPT57T189W1sicGF0aCIse2Q6Im03IDE1IDUgNSA1LTUifV0sWyJwYXRoIix7ZDoibTcgOSA1LTUgNSA1In1dXX0pO3ZhciBSXyx2UmU9bCgoKT0+e1JfPVtbInBhdGgiLHtkOiJtMTcgMTEtNS01LTUgNSJ9XSxbInBhdGgiLHtkOiJtMTcgMTgtNS01LTUgNSJ9XV19KTt2YXIgT3UseVJlPWwoKCk9PntPdT1bWyJwYXRoIix7ZDoiTTEwLjg4IDIxLjk0IDE1LjQ2IDE0In1dLFsicGF0aCIse2Q6Ik0yMS4xNyA4SDEyIn1dLFsicGF0aCIse2Q6Ik0zLjk1IDYuMDYgOC41NCAxNCJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiI0In1dXX0pO3ZhciBCXyx3UmU9bCgoKT0+e0JfPVtbInBhdGgiLHtkOiJNMTIgMTJIM2ExIDEgMCAwIDAtMSAxdjJhMSAxIDAgMCAwIDEgMWgxMyJ9XSxbInBhdGgiLHtkOiJNMTggOGMwLTIuNS0yLTIuNS0yLTUifV0sWyJwYXRoIix7ZDoibTIgMiAyMCAyMCJ9XSxbInBhdGgiLHtkOiJNMjEgMTJhMSAxIDAgMCAxIDEgMXYyYTEgMSAwIDAgMS0uNS44NjYifV0sWyJwYXRoIix7ZDoiTTIyIDhjMC0yLjUtMi0yLjUtMi01In1dLFsicGF0aCIse2Q6Ik03IDEydjQifV1dfSk7dmFyIEhfLE1SZT1sKCgpPT57SF89W1sicGF0aCIse2Q6Ik0xMCA5aDQifV0sWyJwYXRoIix7ZDoiTTEyIDd2NSJ9XSxbInBhdGgiLHtkOiJNMTQgMjF2LTNhMiAyIDAgMCAwLTQgMHYzIn1dLFsicGF0aCIse2Q6Im0xOCA5IDMuNTIgMi4xNDdhMSAxIDAgMCAxIC40OC44NTRWMTlhMiAyIDAgMCAxLTIgMkg0YTIgMiAwIDAgMS0yLTJ2LTYuOTk5YTEgMSAwIDAgMSAuNDgtLjg1NEw2IDkifV0sWyJwYXRoIix7ZDoiTTYgMjFWN2ExIDEgMCAwIDEgLjM3Ni0uNzgybDUtMy45OTlhMSAxIDAgMCAxIDEuMjQ5LjAwMWw1IDRBMSAxIDAgMCAxIDE4IDd2MTQifV1dfSk7dmFyIHFfLGtSZT1sKCgpPT57cV89W1sicGF0aCIse2Q6Ik0xNyAxMkgzYTEgMSAwIDAgMC0xIDF2MmExIDEgMCAwIDAgMSAxaDE0In1dLFsicGF0aCIse2Q6Ik0xOCA4YzAtMi41LTItMi41LTItNSJ9XSxbInBhdGgiLHtkOiJNMjEgMTZhMSAxIDAgMCAwIDEtMXYtMmExIDEgMCAwIDAtMS0xIn1dLFsicGF0aCIse2Q6Ik0yMiA4YzAtMi41LTItMi41LTItNSJ9XSxbInBhdGgiLHtkOiJNNyAxMnY0In1dXX0pO3ZhciBSdSxTUmU9bCgoKT0+e1J1PVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XSxbImxpbmUiLHt4MToiMTIiLHgyOiIxMiIseTE6IjgiLHkyOiIxMiJ9XSxbImxpbmUiLHt4MToiMTIiLHgyOiIxMi4wMSIseTE6IjE2Iix5MjoiMTYifV1dfSk7dmFyIEJ1LHpSZT1sKCgpPT57QnU9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjEwIn1dLFsicGF0aCIse2Q6Ik0xMiA4djgifV0sWyJwYXRoIix7ZDoibTggMTIgNCA0IDQtNCJ9XV19KTt2YXIgSHUsQ1JlPWwoKCk9PntIdT1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMTAifV0sWyJwYXRoIix7ZDoibTEyIDgtNCA0IDQgNCJ9XSxbInBhdGgiLHtkOiJNMTYgMTJIOCJ9XV19KTt2YXIgcXUsX1JlPWwoKCk9PntxdT1bWyJwYXRoIix7ZDoiTTIgMTJhMTAgMTAgMCAxIDEgMTAgMTAifV0sWyJwYXRoIix7ZDoibTIgMjIgMTAtMTAifV0sWyJwYXRoIix7ZDoiTTggMjJIMnYtNiJ9XV19KTt2YXIganUsVFJlPWwoKCk9PntqdT1bWyJwYXRoIix7ZDoiTTEyIDIyYTEwIDEwIDAgMSAxIDEwLTEwIn1dLFsicGF0aCIse2Q6Ik0yMiAyMiAxMiAxMiJ9XSxbInBhdGgiLHtkOiJNMjIgMTZ2NmgtNiJ9XV19KTt2YXIgVnUsTFJlPWwoKCk9PntWdT1bWyJwYXRoIix7ZDoiTTIgOFYyaDYifV0sWyJwYXRoIix7ZDoibTIgMiAxMCAxMCJ9XSxbInBhdGgiLHtkOiJNMTIgMkExMCAxMCAwIDEgMSAyIDEyIn1dXX0pO3ZhciBVdSxEUmU9bCgoKT0+e1V1PVtbInBhdGgiLHtkOiJNMjIgMTJBMTAgMTAgMCAxIDEgMTIgMiJ9XSxbInBhdGgiLHtkOiJNMjIgMiAxMiAxMiJ9XSxbInBhdGgiLHtkOiJNMTYgMmg2djYifV1dfSk7dmFyIFd1LEFSZT1sKCgpPT57V3U9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjEwIn1dLFsicGF0aCIse2Q6Im0xMiAxNiA0LTQtNC00In1dLFsicGF0aCIse2Q6Ik04IDEyaDgifV1dfSk7dmFyIEd1LEVSZT1sKCgpPT57R3U9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjEwIn1dLFsicGF0aCIse2Q6Im0xNiAxMi00LTQtNCA0In1dLFsicGF0aCIse2Q6Ik0xMiAxNlY4In1dXX0pO3ZhciBZdSwkUmU9bCgoKT0+e1l1PVtbInBhdGgiLHtkOiJNMjEuODAxIDEwQTEwIDEwIDAgMSAxIDE3IDMuMzM1In1dLFsicGF0aCIse2Q6Im05IDExIDMgM0wyMiA0In1dXX0pO3ZhciBadSxQUmU9bCgoKT0+e1p1PVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XSxbInBhdGgiLHtkOiJtOSAxMiAyIDIgNC00In1dXX0pO3ZhciBYdSxJUmU9bCgoKT0+e1h1PVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XSxbInBhdGgiLHtkOiJtMTYgMTAtNCA0LTQtNCJ9XV19KTt2YXIgUXUsTlJlPWwoKCk9PntRdT1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMTAifV0sWyJwYXRoIix7ZDoibTE0IDE2LTQtNCA0LTQifV1dfSk7dmFyIEt1LEZSZT1sKCgpPT57S3U9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjEwIn1dLFsicGF0aCIse2Q6Im0xMCA4IDQgNC00IDQifV1dfSk7dmFyIEp1LE9SZT1sKCgpPT57SnU9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjEwIn1dLFsicGF0aCIse2Q6Im04IDE0IDQtNCA0IDQifV1dfSk7dmFyIGpfLFJSZT1sKCgpPT57al89W1sicGF0aCIse2Q6Ik0xMC4xIDIuMTgyYTEwIDEwIDAgMCAxIDMuOCAwIn1dLFsicGF0aCIse2Q6Ik0xMy45IDIxLjgxOGExMCAxMCAwIDAgMS0zLjggMCJ9XSxbInBhdGgiLHtkOiJNMTcuNjA5IDMuNzIxYTEwIDEwIDAgMCAxIDIuNjkgMi43In1dLFsicGF0aCIse2Q6Ik0yLjE4MiAxMy45YTEwIDEwIDAgMCAxIDAtMy44In1dLFsicGF0aCIse2Q6Ik0yMC4yNzkgMTcuNjA5YTEwIDEwIDAgMCAxLTIuNyAyLjY5In1dLFsicGF0aCIse2Q6Ik0yMS44MTggMTAuMWExMCAxMCAwIDAgMSAwIDMuOCJ9XSxbInBhdGgiLHtkOiJNMy43MjEgNi4zOTFhMTAgMTAgMCAwIDEgMi43LTIuNjkifV0sWyJwYXRoIix7ZDoiTTYuMzkxIDIwLjI3OWExMCAxMCAwIDAgMS0yLjY5LTIuNyJ9XV19KTt2YXIgZWYsQlJlPWwoKCk9PntlZj1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMTAifV0sWyJsaW5lIix7eDE6IjgiLHgyOiIxNiIseTE6IjEyIix5MjoiMTIifV0sWyJsaW5lIix7eDE6IjEyIix4MjoiMTIiLHkxOiIxNiIseTI6IjE2In1dLFsibGluZSIse3gxOiIxMiIseDI6IjEyIix5MToiOCIseTI6IjgifV1dfSk7dmFyIFZfLEhSZT1sKCgpPT57Vl89W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjEwIn1dLFsicGF0aCIse2Q6Ik0xNiA4aC02YTIgMiAwIDEgMCAwIDRoNGEyIDIgMCAxIDEgMCA0SDgifV0sWyJwYXRoIix7ZDoiTTEyIDE4VjYifV1dfSk7dmFyIFVfLHFSZT1sKCgpPT57VV89W1sicGF0aCIse2Q6Ik0xMC4xIDIuMThhOS45MyA5LjkzIDAgMCAxIDMuOCAwIn1dLFsicGF0aCIse2Q6Ik0xNy42IDMuNzFhOS45NSA5Ljk1IDAgMCAxIDIuNjkgMi43In1dLFsicGF0aCIse2Q6Ik0yMS44MiAxMC4xYTkuOTMgOS45MyAwIDAgMSAwIDMuOCJ9XSxbInBhdGgiLHtkOiJNMjAuMjkgMTcuNmE5Ljk1IDkuOTUgMCAwIDEtMi43IDIuNjkifV0sWyJwYXRoIix7ZDoiTTEzLjkgMjEuODJhOS45NCA5Ljk0IDAgMCAxLTMuOCAwIn1dLFsicGF0aCIse2Q6Ik02LjQgMjAuMjlhOS45NSA5Ljk1IDAgMCAxLTIuNjktMi43In1dLFsicGF0aCIse2Q6Ik0yLjE4IDEzLjlhOS45MyA5LjkzIDAgMCAxIDAtMy44In1dLFsicGF0aCIse2Q6Ik0zLjcxIDYuNGE5Ljk1IDkuOTUgMCAwIDEgMi43LTIuNjkifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMSJ9XV19KTt2YXIgV18salJlPWwoKCk9PntXXz1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMTAifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMSJ9XV19KTt2YXIgR18sVlJlPWwoKCk9PntHXz1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMTAifV0sWyJwYXRoIix7ZDoiTTE3IDEyaC4wMSJ9XSxbInBhdGgiLHtkOiJNMTIgMTJoLjAxIn1dLFsicGF0aCIse2Q6Ik03IDEyaC4wMSJ9XV19KTt2YXIgWV8sVVJlPWwoKCk9PntZXz1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMTAifV0sWyJwYXRoIix7ZDoiTTcgMTBoMTAifV0sWyJwYXRoIix7ZDoiTTcgMTRoMTAifV1dfSk7dmFyIFpfLFdSZT1sKCgpPT57Wl89W1sicGF0aCIse2Q6Ik0xMiAyYTEwIDEwIDAgMCAxIDcuMzggMTYuNzUifV0sWyJwYXRoIix7ZDoibTE2IDEyLTQtNC00IDQifV0sWyJwYXRoIix7ZDoiTTEyIDE2VjgifV0sWyJwYXRoIix7ZDoiTTIuNSA4Ljg3NWExMCAxMCAwIDAgMC0uNSAzIn1dLFsicGF0aCIse2Q6Ik0yLjgzIDE2YTEwIDEwIDAgMCAwIDIuNDMgMy40In1dLFsicGF0aCIse2Q6Ik00LjYzNiA1LjIzNWExMCAxMCAwIDAgMSAuODkxLS44NTcifV0sWyJwYXRoIix7ZDoiTTguNjQ0IDIxLjQyYTEwIDEwIDAgMCAwIDcuNjMxLS4zOCJ9XV19KTt2YXIgWF8sR1JlPWwoKCk9PntYXz1bWyJwYXRoIix7ZDoiTTEyIDJhMTAgMTAgMCAwIDEgNy4zOCAxNi43NSJ9XSxbInBhdGgiLHtkOiJNMTIgOHY4In1dLFsicGF0aCIse2Q6Ik0xNiAxMkg4In1dLFsicGF0aCIse2Q6Ik0yLjUgOC44NzVhMTAgMTAgMCAwIDAtLjUgMyJ9XSxbInBhdGgiLHtkOiJNMi44MyAxNmExMCAxMCAwIDAgMCAyLjQzIDMuNCJ9XSxbInBhdGgiLHtkOiJNNC42MzYgNS4yMzVhMTAgMTAgMCAwIDEgLjg5MS0uODU3In1dLFsicGF0aCIse2Q6Ik04LjY0NCAyMS40MmExMCAxMCAwIDAgMCA3LjYzMS0uMzgifV1dfSk7dmFyIHRmLFlSZT1sKCgpPT57dGY9W1sicGF0aCIse2Q6Ik0xNS42IDIuN2ExMCAxMCAwIDEgMCA1LjcgNS43In1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjIifV0sWyJwYXRoIix7ZDoiTTEzLjQgMTAuNiAxOSA1In1dXX0pO3ZhciByZixaUmU9bCgoKT0+e3JmPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XSxbInBhdGgiLHtkOiJNOCAxMmg4In1dXX0pO3ZhciBRXyxYUmU9bCgoKT0+e1FfPVtbInBhdGgiLHtkOiJtMiAyIDIwIDIwIn1dLFsicGF0aCIse2Q6Ik04LjM1IDIuNjlBMTAgMTAgMCAwIDEgMjEuMyAxNS42NSJ9XSxbInBhdGgiLHtkOiJNMTkuMDggMTkuMDhBMTAgMTAgMCAxIDEgNC45MiA0LjkyIn1dXX0pO3ZhciBhZixRUmU9bCgoKT0+e2FmPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XSxbInBhdGgiLHtkOiJNOSAxN1Y3aDRhMyAzIDAgMCAxIDAgNkg5In1dXX0pO3ZhciBvZixLUmU9bCgoKT0+e29mPVtbInBhdGgiLHtkOiJNMTIuNjU2IDdIMTNhMyAzIDAgMCAxIDIuOTg0IDMuMzA3In1dLFsicGF0aCIse2Q6Ik0xMyAxM0g5In1dLFsicGF0aCIse2Q6Ik0xOS4wNzEgMTkuMDcxQTEgMSAwIDAgMSA0LjkzIDQuOTMifV0sWyJwYXRoIix7ZDoibTIgMiAyMCAyMCJ9XSxbInBhdGgiLHtkOiJNOC4zNTcgMi42ODdhMTAgMTAgMCAwIDEgMTIuOTU2IDEyLjk1NiJ9XSxbInBhdGgiLHtkOiJNOSAxN1Y5In1dXX0pO3ZhciBuZixKUmU9bCgoKT0+e25mPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XSxbImxpbmUiLHt4MToiMTAiLHgyOiIxMCIseTE6IjE1Iix5MjoiOSJ9XSxbImxpbmUiLHt4MToiMTQiLHgyOiIxNCIseTE6IjE1Iix5MjoiOSJ9XV19KTt2YXIgc2YsZUJlPWwoKCk9PntzZj1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMTAifV0sWyJwYXRoIix7ZDoibTE1IDktNiA2In1dLFsicGF0aCIse2Q6Ik05IDloLjAxIn1dLFsicGF0aCIse2Q6Ik0xNSAxNWguMDEifV1dfSk7dmFyIEtfLHRCZT1sKCgpPT57S189W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTkiLHI6IjIifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiI1IixyOiIyIn1dLFsiY2lyY2xlIix7Y3g6IjE2IixjeToiMTIiLHI6IjIifV0sWyJjaXJjbGUiLHtjeDoiMjAiLGN5OiIxOSIscjoiMiJ9XSxbImNpcmNsZSIse2N4OiI0IixjeToiMTkiLHI6IjIifV0sWyJjaXJjbGUiLHtjeDoiOCIsY3k6IjEyIixyOiIyIn1dXX0pO3ZhciBsZixyQmU9bCgoKT0+e2xmPVtbInBhdGgiLHtkOiJNOSA5LjAwM2ExIDEgMCAwIDEgMS41MTctLjg1OWw0Ljk5NyAyLjk5N2ExIDEgMCAwIDEgMCAxLjcxOGwtNC45OTcgMi45OTdBMSAxIDAgMCAxIDkgMTQuOTk2eiJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XV19KTt2YXIgY2YsYUJlPWwoKCk9PntjZj1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMTAifV0sWyJwYXRoIix7ZDoiTTggMTJoOCJ9XSxbInBhdGgiLHtkOiJNMTIgOHY4In1dXX0pO3ZhciBKXyxpQmU9bCgoKT0+e0pfPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XSxbInBhdGgiLHtkOiJNMTAgMTZWOS41YTEgMSAwIDAgMSA1IDAifV0sWyJwYXRoIix7ZDoiTTggMTJoNCJ9XSxbInBhdGgiLHtkOiJNOCAxNmg3In1dXX0pO3ZhciBkZixvQmU9bCgoKT0+e2RmPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XSxbInBhdGgiLHtkOiJNMTIgN3Y0In1dLFsicGF0aCIse2Q6Ik03Ljk5OCA5LjAwM2E1IDUgMCAxIDAgOC0uMDA1In1dXX0pO3ZhciBfYyxuQmU9bCgoKT0+e19jPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XSxbInBhdGgiLHtkOiJNOS4wOSA5YTMgMyAwIDAgMSA1LjgzIDFjMCAyLTMgMy0zIDMifV0sWyJwYXRoIix7ZDoiTTEyIDE3aC4wMSJ9XV19KTt2YXIgdWYsc0JlPWwoKCk9Pnt1Zj1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMTAifV0sWyJwYXRoIix7ZDoiTTIyIDIgMiAyMiJ9XV19KTt2YXIgZVQsbEJlPWwoKCk9PntlVD1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMTAifV0sWyJsaW5lIix7eDE6IjkiLHgyOiIxNSIseTE6IjE1Iix5MjoiOSJ9XV19KTt2YXIgdFQsY0JlPWwoKCk9Pnt0VD1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiNiJ9XV19KTt2YXIgclQsZEJlPWwoKCk9PntyVD1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMTAifV0sWyJwYXRoIix7ZDoiTTExLjA1MSA3LjYxNmExIDEgMCAwIDEgMS45MDkuMDI0bC43MzcgMS40NTJhMSAxIDAgMCAwIC43MzcuNTM1bDEuNjM0LjI1NmExIDEgMCAwIDEgLjU4OCAxLjgwNmwtMS4xNzIgMS4xNjhhMSAxIDAgMCAwLS4yODIuODY2bC4yNTkgMS42MTNhMSAxIDAgMCAxLTEuNTQxIDEuMTM0bC0xLjQ2NS0uNzVhMSAxIDAgMCAwLS45MTIgMGwtMS40NjUuNzVhMSAxIDAgMCAxLTEuNTM5LTEuMTMzbC4yNTgtMS42MTNhMSAxIDAgMCAwLS4yODItLjg2N2wtMS4xNTYtMS4xNTJhMSAxIDAgMCAxIC41NzItMS44MjJsMS42MzMtLjI1NmExIDEgMCAwIDAgLjczNy0uNTM1eiJ9XV19KTt2YXIgZmYsdUJlPWwoKCk9PntmZj1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMTAifV0sWyJyZWN0Iix7eDoiOSIseToiOSIsd2lkdGg6IjYiLGhlaWdodDoiNiIscng6IjEifV1dfSk7dmFyIHBmLGZCZT1sKCgpPT57cGY9W1sicGF0aCIse2Q6Ik0xOCAyMGE2IDYgMCAwIDAtMTIgMCJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEwIixyOiI0In1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjEwIn1dXX0pO3ZhciBoZixwQmU9bCgoKT0+e2hmPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEwIixyOiIzIn1dLFsicGF0aCIse2Q6Ik03IDIwLjY2MlYxOWEyIDIgMCAwIDEgMi0yaDZhMiAyIDAgMCAxIDIgMnYxLjY2MiJ9XV19KTt2YXIgbWYsaEJlPWwoKCk9PnttZj1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMTAifV0sWyJwYXRoIix7ZDoibTE1IDktNiA2In1dLFsicGF0aCIse2Q6Im05IDkgNiA2In1dXX0pO3ZhciBhVCxtQmU9bCgoKT0+e2FUPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XV19KTt2YXIgaVQsZ0JlPWwoKCk9PntpVD1bWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiIzIixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNMTEgOWg0YTIgMiAwIDAgMCAyLTJWMyJ9XSxbImNpcmNsZSIse2N4OiI5IixjeToiOSIscjoiMiJ9XSxbInBhdGgiLHtkOiJNNyAyMXYtNGEyIDIgMCAwIDEgMi0yaDQifV0sWyJjaXJjbGUiLHtjeDoiMTUiLGN5OiIxNSIscjoiMiJ9XV19KTt2YXIgb1QseEJlPWwoKCk9PntvVD1bWyJwYXRoIix7ZDoiTTIxLjY2IDE3LjY3YTEuMDggMS4wOCAwIDAgMS0uMDQgMS42QTEyIDEyIDAgMCAxIDQuNzMgMi4zOGExLjEgMS4xIDAgMCAxIDEuNjEtLjA0eiJ9XSxbInBhdGgiLHtkOiJNMTkuNjUgMTUuNjZBOCA4IDAgMCAxIDguMzUgNC4zNCJ9XSxbInBhdGgiLHtkOiJtMTQgMTAtNS41IDUuNSJ9XSxbInBhdGgiLHtkOiJNMTQgMTcuODVWMTBINi4xNSJ9XV19KTt2YXIgblQsYkJlPWwoKCk9PntuVD1bWyJwYXRoIix7ZDoibTEyLjI5NiAzLjQ2NCAzLjAyIDMuOTU2In1dLFsicGF0aCIse2Q6Ik0yMC4yIDYgMyAxMWwtLjktMi40Yy0uMy0xLjEuMy0yLjIgMS4zLTIuNWwxMy41LTRjMS4xLS4zIDIuMi4zIDIuNSAxLjN6In1dLFsicGF0aCIse2Q6Ik0zIDExaDE4djhhMiAyIDAgMCAxLTIgMkg1YTIgMiAwIDAgMS0yLTJ6In1dLFsicGF0aCIse2Q6Im02LjE4IDUuMjc2IDMuMSAzLjg5OSJ9XV19KTt2YXIgc1QsdkJlPWwoKCk9PntzVD1bWyJyZWN0Iix7d2lkdGg6IjgiLGhlaWdodDoiNCIseDoiOCIseToiMiIscng6IjEiLHJ5OiIxIn1dLFsicGF0aCIse2Q6Ik0xNiA0aDJhMiAyIDAgMCAxIDIgMnYxNGEyIDIgMCAwIDEtMiAySDZhMiAyIDAgMCAxLTItMlY2YTIgMiAwIDAgMSAyLTJoMiJ9XSxbInBhdGgiLHtkOiJtOSAxNCAyIDIgNC00In1dXX0pO3ZhciBsVCx5QmU9bCgoKT0+e2xUPVtbInBhdGgiLHtkOiJNMTYgMTR2Mi4ybDEuNiAxIn1dLFsicGF0aCIse2Q6Ik0xNiA0aDJhMiAyIDAgMCAxIDIgMnYuODMyIn1dLFsicGF0aCIse2Q6Ik04IDRINmEyIDIgMCAwIDAtMiAydjE0YTIgMiAwIDAgMCAyIDJoMiJ9XSxbImNpcmNsZSIse2N4OiIxNiIsY3k6IjE2IixyOiI2In1dLFsicmVjdCIse3g6IjgiLHk6IjIiLHdpZHRoOiI4IixoZWlnaHQ6IjQiLHJ4OiIxIn1dXX0pO3ZhciBjVCx3QmU9bCgoKT0+e2NUPVtbInJlY3QiLHt3aWR0aDoiOCIsaGVpZ2h0OiI0Iix4OiI4Iix5OiIyIixyeDoiMSIscnk6IjEifV0sWyJwYXRoIix7ZDoiTTggNEg2YTIgMiAwIDAgMC0yIDJ2MTRhMiAyIDAgMCAwIDIgMmgxMmEyIDIgMCAwIDAgMi0ydi0yIn1dLFsicGF0aCIse2Q6Ik0xNiA0aDJhMiAyIDAgMCAxIDIgMnY0In1dLFsicGF0aCIse2Q6Ik0yMSAxNEgxMSJ9XSxbInBhdGgiLHtkOiJtMTUgMTAtNCA0IDQgNCJ9XV19KTt2YXIgZFQsTUJlPWwoKCk9PntkVD1bWyJyZWN0Iix7d2lkdGg6IjgiLGhlaWdodDoiNCIseDoiOCIseToiMiIscng6IjEiLHJ5OiIxIn1dLFsicGF0aCIse2Q6Ik0xNiA0aDJhMiAyIDAgMCAxIDIgMnYxNGEyIDIgMCAwIDEtMiAySDZhMiAyIDAgMCAxLTItMlY2YTIgMiAwIDAgMSAyLTJoMiJ9XSxbInBhdGgiLHtkOiJNMTIgMTFoNCJ9XSxbInBhdGgiLHtkOiJNMTIgMTZoNCJ9XSxbInBhdGgiLHtkOiJNOCAxMWguMDEifV0sWyJwYXRoIix7ZDoiTTggMTZoLjAxIn1dXX0pO3ZhciB1VCxrQmU9bCgoKT0+e3VUPVtbInJlY3QiLHt3aWR0aDoiOCIsaGVpZ2h0OiI0Iix4OiI4Iix5OiIyIixyeDoiMSIscnk6IjEifV0sWyJwYXRoIix7ZDoiTTE2IDRoMmEyIDIgMCAwIDEgMiAydjE0YTIgMiAwIDAgMS0yIDJINmEyIDIgMCAwIDEtMi0yVjZhMiAyIDAgMCAxIDItMmgyIn1dLFsicGF0aCIse2Q6Ik05IDE0aDYifV1dfSk7dmFyIGZULFNCZT1sKCgpPT57ZlQ9W1sicGF0aCIse2Q6Ik0xMSAxNGgxMCJ9XSxbInBhdGgiLHtkOiJNMTYgNGgyYTIgMiAwIDAgMSAyIDJ2MS4zNDQifV0sWyJwYXRoIix7ZDoibTE3IDE4IDQtNC00LTQifV0sWyJwYXRoIix7ZDoiTTggNEg2YTIgMiAwIDAgMC0yIDJ2MTRhMiAyIDAgMCAwIDIgMmgxMmEyIDIgMCAwIDAgMS43OTMtMS4xMTMifV0sWyJyZWN0Iix7eDoiOCIseToiMiIsd2lkdGg6IjgiLGhlaWdodDoiNCIscng6IjEifV1dfSk7dmFyIGdmLHpCZT1sKCgpPT57Z2Y9W1sicmVjdCIse3dpZHRoOiI4IixoZWlnaHQ6IjQiLHg6IjgiLHk6IjIiLHJ4OiIxIn1dLFsicGF0aCIse2Q6Ik04IDRINmEyIDIgMCAwIDAtMiAydjE0YTIgMiAwIDAgMCAyIDJoMTJhMiAyIDAgMCAwIDItMnYtLjUifV0sWyJwYXRoIix7ZDoiTTE2IDRoMmEyIDIgMCAwIDEgMS43MyAxIn1dLFsicGF0aCIse2Q6Ik04IDE4aDEifV0sWyJwYXRoIix7ZDoiTTIxLjM3OCAxMi42MjZhMSAxIDAgMCAwLTMuMDA0LTMuMDA0bC00LjAxIDQuMDEyYTIgMiAwIDAgMC0uNTA2Ljg1NGwtLjgzNyAyLjg3YS41LjUgMCAwIDAgLjYyLjYybDIuODctLjgzN2EyIDIgMCAwIDAgLjg1NC0uNTA2eiJ9XV19KTt2YXIgeGYsQ0JlPWwoKCk9Pnt4Zj1bWyJwYXRoIix7ZDoiTTE2IDRoMmEyIDIgMCAwIDEgMiAydjIifV0sWyJwYXRoIix7ZDoiTTIxLjM0IDE1LjY2NGExIDEgMCAxIDAtMy4wMDQtMy4wMDRsLTUuMDEgNS4wMTJhMiAyIDAgMCAwLS41MDYuODU0bC0uODM3IDIuODdhLjUuNSAwIDAgMCAuNjIuNjJsMi44Ny0uODM3YTIgMiAwIDAgMCAuODU0LS41MDZ6In1dLFsicGF0aCIse2Q6Ik04IDIySDZhMiAyIDAgMCAxLTItMlY2YTIgMiAwIDAgMSAyLTJoMiJ9XSxbInJlY3QiLHt4OiI4Iix5OiIyIix3aWR0aDoiOCIsaGVpZ2h0OiI0IixyeDoiMSJ9XV19KTt2YXIgcFQsX0JlPWwoKCk9PntwVD1bWyJyZWN0Iix7d2lkdGg6IjgiLGhlaWdodDoiNCIseDoiOCIseToiMiIscng6IjEiLHJ5OiIxIn1dLFsicGF0aCIse2Q6Ik0xNiA0aDJhMiAyIDAgMCAxIDIgMnYxNGEyIDIgMCAwIDEtMiAySDZhMiAyIDAgMCAxLTItMlY2YTIgMiAwIDAgMSAyLTJoMiJ9XSxbInBhdGgiLHtkOiJNOSAxNGg2In1dLFsicGF0aCIse2Q6Ik0xMiAxN3YtNiJ9XV19KTt2YXIgaFQsVEJlPWwoKCk9PntoVD1bWyJyZWN0Iix7d2lkdGg6IjgiLGhlaWdodDoiNCIseDoiOCIseToiMiIscng6IjEiLHJ5OiIxIn1dLFsicGF0aCIse2Q6Ik0xNiA0aDJhMiAyIDAgMCAxIDIgMnYxNGEyIDIgMCAwIDEtMiAySDZhMiAyIDAgMCAxLTItMlY2YTIgMiAwIDAgMSAyLTJoMiJ9XSxbInBhdGgiLHtkOiJNOSAxMnYtMWg2djEifV0sWyJwYXRoIix7ZDoiTTExIDE3aDIifV0sWyJwYXRoIix7ZDoiTTEyIDExdjYifV1dfSk7dmFyIG1ULExCZT1sKCgpPT57bVQ9W1sicmVjdCIse3dpZHRoOiI4IixoZWlnaHQ6IjQiLHg6IjgiLHk6IjIiLHJ4OiIxIixyeToiMSJ9XSxbInBhdGgiLHtkOiJNMTYgNGgyYTIgMiAwIDAgMSAyIDJ2MTRhMiAyIDAgMCAxLTIgMkg2YTIgMiAwIDAgMS0yLTJWNmEyIDIgMCAwIDEgMi0yaDIifV0sWyJwYXRoIix7ZDoibTE1IDExLTYgNiJ9XSxbInBhdGgiLHtkOiJtOSAxMSA2IDYifV1dfSk7dmFyIGdULERCZT1sKCgpPT57Z1Q9W1sicmVjdCIse3dpZHRoOiI4IixoZWlnaHQ6IjQiLHg6IjgiLHk6IjIiLHJ4OiIxIixyeToiMSJ9XSxbInBhdGgiLHtkOiJNMTYgNGgyYTIgMiAwIDAgMSAyIDJ2MTRhMiAyIDAgMCAxLTIgMkg2YTIgMiAwIDAgMS0yLTJWNmEyIDIgMCAwIDEgMi0yaDIifV1dfSk7dmFyIHhULEFCZT1sKCgpPT57eFQ9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjEwIn1dLFsicGF0aCIse2Q6Ik0xMiA2djZsMi00In1dXX0pO3ZhciBiVCxFQmU9bCgoKT0+e2JUPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XSxbInBhdGgiLHtkOiJNMTIgNnY2bC00LTIifV1dfSk7dmFyIHZULCRCZT1sKCgpPT57dlQ9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjEwIn1dLFsicGF0aCIse2Q6Ik0xMiA2djZsLTItNCJ9XV19KTt2YXIgeVQsUEJlPWwoKCk9Pnt5VD1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMTAifV0sWyJwYXRoIix7ZDoiTTEyIDZ2NiJ9XV19KTt2YXIgd1QsSUJlPWwoKCk9Pnt3VD1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMTAifV0sWyJwYXRoIix7ZDoiTTEyIDZ2Nmg0In1dXX0pO3ZhciBNVCxOQmU9bCgoKT0+e01UPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XSxbInBhdGgiLHtkOiJNMTIgNnY2bDQtMiJ9XV19KTt2YXIga1QsRkJlPWwoKCk9PntrVD1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMTAifV0sWyJwYXRoIix7ZDoiTTEyIDZ2Nmw0IDIifV1dfSk7dmFyIFNULE9CZT1sKCgpPT57U1Q9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjEwIn1dLFsicGF0aCIse2Q6Ik0xMiA2djZsMiA0In1dXX0pO3ZhciB6VCxSQmU9bCgoKT0+e3pUPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XSxbInBhdGgiLHtkOiJNMTIgNnYxMCJ9XV19KTt2YXIgQ1QsQkJlPWwoKCk9PntDVD1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMTAifV0sWyJwYXRoIix7ZDoiTTEyIDZ2NmwtMiA0In1dXX0pO3ZhciBfVCxIQmU9bCgoKT0+e19UPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XSxbInBhdGgiLHtkOiJNMTIgNnY2SDgifV1dfSk7dmFyIFRULHFCZT1sKCgpPT57VFQ9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjEwIn1dLFsicGF0aCIse2Q6Ik0xMiA2djZsLTQgMiJ9XV19KTt2YXIgTFQsakJlPWwoKCk9PntMVD1bWyJwYXRoIix7ZDoiTTEyIDZ2Nmw0IDIifV0sWyJwYXRoIix7ZDoiTTIwIDEydjUifV0sWyJwYXRoIix7ZDoiTTIwIDIxaC4wMSJ9XSxbInBhdGgiLHtkOiJNMjEuMjUgOC4yQTEwIDEwIDAgMSAwIDE2IDIxLjE2In1dXX0pO3ZhciBEVCxWQmU9bCgoKT0+e0RUPVtbInBhdGgiLHtkOiJNMTIgNnY2bDIgMSJ9XSxbInBhdGgiLHtkOiJNMTIuMzM3IDIxLjk5NGExMCAxMCAwIDEgMSA5LjU4OC04Ljc2NyJ9XSxbInBhdGgiLHtkOiJtMTQgMTggNCA0IDQtNCJ9XSxbInBhdGgiLHtkOiJNMTggMTR2OCJ9XV19KTt2YXIgQVQsVUJlPWwoKCk9PntBVD1bWyJwYXRoIix7ZDoiTTEyIDZ2NmwxLjU2Ljc4In1dLFsicGF0aCIse2Q6Ik0xMy4yMjcgMjEuOTI1YTEwIDEwIDAgMSAxIDguNzY3LTkuNTg4In1dLFsicGF0aCIse2Q6Im0xNCAxOCA0LTQgNCA0In1dLFsicGF0aCIse2Q6Ik0xOCAyMnYtOCJ9XV19KTt2YXIgRVQsV0JlPWwoKCk9PntFVD1bWyJwYXRoIix7ZDoiTTEyIDZ2Nmw0IDIifV0sWyJwYXRoIix7ZDoiTTIyIDEyYTEwIDEwIDAgMSAwLTExIDkuOTUifV0sWyJwYXRoIix7ZDoibTIyIDE2LTUuNSA1LjVMMTQgMTkifV1dfSk7dmFyICRULEdCZT1sKCgpPT57JFQ9W1sicGF0aCIse2Q6Ik0xMiAyYTEwIDEwIDAgMCAxIDcuMzggMTYuNzUifV0sWyJwYXRoIix7ZDoiTTEyIDZ2Nmw0IDIifV0sWyJwYXRoIix7ZDoiTTIuNSA4Ljg3NWExMCAxMCAwIDAgMC0uNSAzIn1dLFsicGF0aCIse2Q6Ik0yLjgzIDE2YTEwIDEwIDAgMCAwIDIuNDMgMy40In1dLFsicGF0aCIse2Q6Ik00LjYzNiA1LjIzNWExMCAxMCAwIDAgMSAuODkxLS44NTcifV0sWyJwYXRoIix7ZDoiTTguNjQ0IDIxLjQyYTEwIDEwIDAgMCAwIDcuNjMxLS4zOCJ9XV19KTt2YXIgUFQsWUJlPWwoKCk9PntQVD1bWyJwYXRoIix7ZDoiTTEyIDZ2NmwzLjY0NCAxLjgyMiJ9XSxbInBhdGgiLHtkOiJNMTYgMTloNiJ9XSxbInBhdGgiLHtkOiJNMTkgMTZ2NiJ9XSxbInBhdGgiLHtkOiJNMjEuOTIgMTMuMjY3YTEwIDEwIDAgMSAwLTguNjUzIDguNjUzIn1dXX0pO3ZhciBJVCxaQmU9bCgoKT0+e0lUPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XSxbInBhdGgiLHtkOiJNMTIgNnY2bDQgMiJ9XV19KTt2YXIgTlQsWEJlPWwoKCk9PntOVD1bWyJwYXRoIix7ZDoiTTEyIDEydjQifV0sWyJwYXRoIix7ZDoiTTEyIDIwaC4wMSJ9XSxbInBhdGgiLHtkOiJNOC4xMjggMTYuOTQ5QTcgNyAwIDEgMSAxNS43MSA4aDEuNzlhMSAxIDAgMCAxIDAgOWgtMS42NDIifV1dfSk7dmFyIEZULFFCZT1sKCgpPT57RlQ9W1sicGF0aCIse2Q6Ik0xMCA5LjE3YTMgMyAwIDEgMCAwIDUuNjYifV0sWyJwYXRoIix7ZDoiTTE3IDkuMTdhMyAzIDAgMSAwIDAgNS42NiJ9XSxbInJlY3QiLHt4OiIyIix5OiI1Iix3aWR0aDoiMjAiLGhlaWdodDoiMTQiLHJ4OiIyIn1dXX0pO3ZhciBPVCxLQmU9bCgoKT0+e09UPVtbInBhdGgiLHtkOiJNMjEgMTUuMjUxQTQuNSA0LjUgMCAwIDAgMTcuNSA4aC0xLjc5QTcgNyAwIDEgMCAzIDEzLjYwNyJ9XSxbInBhdGgiLHtkOiJNNyAxMXY0aDQifV0sWyJwYXRoIix7ZDoiTTggMTlhNSA1IDAgMCAwIDktMyA0LjUgNC41IDAgMCAwLTQuNS00LjUgNC44MiA0LjgyIDAgMCAwLTMuNDEgMS40MUw3IDE1In1dXX0pO3ZhciBSVCxKQmU9bCgoKT0+e1JUPVtbInBhdGgiLHtkOiJtMTcgMTUtNS41IDUuNUw5IDE4In1dLFsicGF0aCIse2Q6Ik01LjUxNiAxNi4wN0E3IDcgMCAxIDEgMTUuNzEgOGgxLjc5YTQuNSA0LjUgMCAwIDEgMy41MDEgNy4zMjcifV1dfSk7dmFyIEJULGVIZT1sKCgpPT57QlQ9W1sicGF0aCIse2Q6Im0xMC44NTIgMTkuNzcyLS4zODMuOTI0In1dLFsicGF0aCIse2Q6Im0xMy4xNDggMTQuMjI4LjM4My0uOTIzIn1dLFsicGF0aCIse2Q6Ik0xMy4xNDggMTkuNzcyYTMgMyAwIDEgMC0yLjI5Ni01LjU0NGwtLjM4My0uOTIzIn1dLFsicGF0aCIse2Q6Im0xMy41MyAyMC42OTYtLjM4Mi0uOTI0YTMgMyAwIDEgMS0yLjI5Ni01LjU0NCJ9XSxbInBhdGgiLHtkOiJtMTQuNzcyIDE1Ljg1Mi45MjMtLjM4MyJ9XSxbInBhdGgiLHtkOiJtMTQuNzcyIDE4LjE0OC45MjMuMzgzIn1dLFsicGF0aCIse2Q6Ik00LjIgMTUuMWE3IDcgMCAxIDEgOS45My05Ljg1OEE3IDcgMCAwIDEgMTUuNzEgOGgxLjc5YTQuNSA0LjUgMCAwIDEgMi41IDguMiJ9XSxbInBhdGgiLHtkOiJtOS4yMjggMTUuODUyLS45MjMtLjM4MyJ9XSxbInBhdGgiLHtkOiJtOS4yMjggMTguMTQ4LS45MjMuMzgzIn1dXX0pO3ZhciBiZix0SGU9bCgoKT0+e2JmPVtbInBhdGgiLHtkOiJNMTIgMTN2OGwtNC00In1dLFsicGF0aCIse2Q6Im0xMiAyMSA0LTQifV0sWyJwYXRoIix7ZDoiTTQuMzkzIDE1LjI2OUE3IDcgMCAxIDEgMTUuNzEgOGgxLjc5YTQuNSA0LjUgMCAwIDEgMi40MzYgOC4yODQifV1dfSk7dmFyIEhULHJIZT1sKCgpPT57SFQ9W1sicGF0aCIse2Q6Ik00IDE0Ljg5OUE3IDcgMCAxIDEgMTUuNzEgOGgxLjc5YTQuNSA0LjUgMCAwIDEgMi41IDguMjQyIn1dLFsicGF0aCIse2Q6Ik04IDE5djEifV0sWyJwYXRoIix7ZDoiTTggMTR2MSJ9XSxbInBhdGgiLHtkOiJNMTYgMTl2MSJ9XSxbInBhdGgiLHtkOiJNMTYgMTR2MSJ9XSxbInBhdGgiLHtkOiJNMTIgMjF2MSJ9XSxbInBhdGgiLHtkOiJNMTIgMTZ2MSJ9XV19KTt2YXIgcVQsYUhlPWwoKCk9PntxVD1bWyJwYXRoIix7ZDoiTTQgMTQuODk5QTcgNyAwIDEgMSAxNS43MSA4aDEuNzlhNC41IDQuNSAwIDAgMSAyLjUgOC4yNDIifV0sWyJwYXRoIix7ZDoiTTE2IDE3SDcifV0sWyJwYXRoIix7ZDoiTTE3IDIxSDkifV1dfSk7dmFyIGpULGlIZT1sKCgpPT57alQ9W1sicGF0aCIse2Q6Ik00IDE0Ljg5OUE3IDcgMCAxIDEgMTUuNzEgOGgxLjc5YTQuNSA0LjUgMCAwIDEgMi41IDguMjQyIn1dLFsicGF0aCIse2Q6Ik0xNiAxNHYyIn1dLFsicGF0aCIse2Q6Ik04IDE0djIifV0sWyJwYXRoIix7ZDoiTTE2IDIwaC4wMSJ9XSxbInBhdGgiLHtkOiJNOCAyMGguMDEifV0sWyJwYXRoIix7ZDoiTTEyIDE2djIifV0sWyJwYXRoIix7ZDoiTTEyIDIyaC4wMSJ9XV19KTt2YXIgVlQsb0hlPWwoKCk9PntWVD1bWyJwYXRoIix7ZDoiTTYgMTYuMzI2QTcgNyAwIDEgMSAxNS43MSA4aDEuNzlhNC41IDQuNSAwIDAgMSAuNSA4Ljk3MyJ9XSxbInBhdGgiLHtkOiJtMTMgMTItMyA1aDRsLTMgNSJ9XV19KTt2YXIgVVQsbkhlPWwoKCk9PntVVD1bWyJwYXRoIix7ZDoiTTExIDIwdjIifV0sWyJwYXRoIix7ZDoiTTE4LjM3NiAxNC41MTJhNiA2IDAgMCAwIDMuNDYxLTQuMTI3Yy4xNDgtLjYyNS0uNjU5LS45Ny0xLjI0OC0uNzE0YTQgNCAwIDAgMS01LjI1OS01LjI2Yy4yNTUtLjU4OS0uMDktMS4zOTUtLjcxNi0xLjI0OGE2IDYgMCAwIDAtNC41OTQgNS4zNiJ9XSxbInBhdGgiLHtkOiJNMyAyMGE1IDUgMCAxIDEgOC45LTRIMTNhMyAzIDAgMCAxIDIgNS4yNCJ9XSxbInBhdGgiLHtkOiJNNyAxOXYyIn1dXX0pO3ZhciBXVCxzSGU9bCgoKT0+e1dUPVtbInBhdGgiLHtkOiJNMTMgMTZhMyAzIDAgMCAxIDAgNkg3YTUgNSAwIDEgMSA0LjktNnoifV0sWyJwYXRoIix7ZDoiTTE4LjM3NiAxNC41MTJhNiA2IDAgMCAwIDMuNDYxLTQuMTI3Yy4xNDgtLjYyNS0uNjU5LS45Ny0xLjI0OC0uNzE0YTQgNCAwIDAgMS01LjI1OS01LjI2Yy4yNTUtLjU4OS0uMDktMS4zOTUtLjcxNi0xLjI0OGE2IDYgMCAwIDAtNC41OTQgNS4zNiJ9XV19KTt2YXIgR1QsbEhlPWwoKCk9PntHVD1bWyJwYXRoIix7ZDoiTTEwLjk0IDUuMjc0QTcgNyAwIDAgMSAxNS43MSAxMGgxLjc5YTQuNSA0LjUgMCAwIDEgNC4yMjIgNi4wNTcifV0sWyJwYXRoIix7ZDoiTTE4Ljc5NiAxOC44MUE0LjUgNC41IDAgMCAxIDE3LjUgMTlIOUE3IDcgMCAwIDEgNS43OSA1Ljc4In1dLFsicGF0aCIse2Q6Im0yIDIgMjAgMjAifV1dfSk7dmFyIFlULGNIZT1sKCgpPT57WVQ9W1sicGF0aCIse2Q6Ik00IDE0Ljg5OUE3IDcgMCAxIDEgMTUuNzEgOGgxLjc5YTQuNSA0LjUgMCAwIDEgMi41IDguMjQyIn1dLFsicGF0aCIse2Q6Im05LjIgMjIgMy03In1dLFsicGF0aCIse2Q6Im05IDEzLTMgNyJ9XSxbInBhdGgiLHtkOiJtMTcgMTMtMyA3In1dXX0pO3ZhciBaVCxkSGU9bCgoKT0+e1pUPVtbInBhdGgiLHtkOiJNNCAxNC44OTlBNyA3IDAgMSAxIDE1LjcxIDhoMS43OWE0LjUgNC41IDAgMCAxIDIuNSA4LjI0MiJ9XSxbInBhdGgiLHtkOiJNMTYgMTR2NiJ9XSxbInBhdGgiLHtkOiJNOCAxNHY2In1dLFsicGF0aCIse2Q6Ik0xMiAxNnY2In1dXX0pO3ZhciBYVCx1SGU9bCgoKT0+e1hUPVtbInBhdGgiLHtkOiJNNCAxNC44OTlBNyA3IDAgMSAxIDE1LjcxIDhoMS43OWE0LjUgNC41IDAgMCAxIDIuNSA4LjI0MiJ9XSxbInBhdGgiLHtkOiJNOCAxNWguMDEifV0sWyJwYXRoIix7ZDoiTTggMTloLjAxIn1dLFsicGF0aCIse2Q6Ik0xMiAxN2guMDEifV0sWyJwYXRoIix7ZDoiTTEyIDIxaC4wMSJ9XSxbInBhdGgiLHtkOiJNMTYgMTVoLjAxIn1dLFsicGF0aCIse2Q6Ik0xNiAxOWguMDEifV1dfSk7dmFyIFFULGZIZT1sKCgpPT57UVQ9W1sicGF0aCIse2Q6Ik0xMiAydjIifV0sWyJwYXRoIix7ZDoibTQuOTMgNC45MyAxLjQxIDEuNDEifV0sWyJwYXRoIix7ZDoiTTIwIDEyaDIifV0sWyJwYXRoIix7ZDoibTE5LjA3IDQuOTMtMS40MSAxLjQxIn1dLFsicGF0aCIse2Q6Ik0xNS45NDcgMTIuNjVhNCA0IDAgMCAwLTUuOTI1LTQuMTI4In1dLFsicGF0aCIse2Q6Ik0zIDIwYTUgNSAwIDEgMSA4LjktNEgxM2EzIDMgMCAwIDEgMiA1LjI0In1dLFsicGF0aCIse2Q6Ik0xMSAyMHYyIn1dLFsicGF0aCIse2Q6Ik03IDE5djIifV1dfSk7dmFyIEtULHBIZT1sKCgpPT57S1Q9W1sicGF0aCIse2Q6Im0xNyAxOC0xLjUzNSAxLjYwNWE1IDUgMCAwIDEtOC0xLjUifV0sWyJwYXRoIix7ZDoiTTE3IDIydi00aC00In1dLFsicGF0aCIse2Q6Ik0yMC45OTYgMTUuMjUxQTQuNSA0LjUgMCAwIDAgMTcuNDk1IDhoLTEuNzlhNyA3IDAgMSAwLTEyLjcwOSA1LjYwNyJ9XSxbInBhdGgiLHtkOiJNNyAxMHY0aDQifV0sWyJwYXRoIix7ZDoibTcgMTQgMS41MzUtMS42MDVhNSA1IDAgMCAxIDggMS41In1dXX0pO3ZhciBKVCxoSGU9bCgoKT0+e0pUPVtbInBhdGgiLHtkOiJNMTIgMnYyIn1dLFsicGF0aCIse2Q6Im00LjkzIDQuOTMgMS40MSAxLjQxIn1dLFsicGF0aCIse2Q6Ik0yMCAxMmgyIn1dLFsicGF0aCIse2Q6Im0xOS4wNyA0LjkzLTEuNDEgMS40MSJ9XSxbInBhdGgiLHtkOiJNMTUuOTQ3IDEyLjY1YTQgNCAwIDAgMC01LjkyNS00LjEyOCJ9XSxbInBhdGgiLHtkOiJNMTMgMjJIN2E1IDUgMCAxIDEgNC45LTZIMTNhMyAzIDAgMCAxIDAgNloifV1dfSk7dmFyIGVMLG1IZT1sKCgpPT57ZUw9W1sicGF0aCIse2Q6Ik0xNy41IDE5SDlhNyA3IDAgMSAxIDYuNzEtOWgxLjc5YTQuNSA0LjUgMCAxIDEgMCA5WiJ9XV19KTt2YXIgdmYsZ0hlPWwoKCk9Pnt2Zj1bWyJwYXRoIix7ZDoiTTEyIDEzdjgifV0sWyJwYXRoIix7ZDoiTTQgMTQuODk5QTcgNyAwIDEgMSAxNS43MSA4aDEuNzlhNC41IDQuNSAwIDAgMSAyLjUgOC4yNDIifV0sWyJwYXRoIix7ZDoibTggMTcgNC00IDQgNCJ9XV19KTt2YXIgdEwseEhlPWwoKCk9Pnt0TD1bWyJwYXRoIix7ZDoiTTE3LjUgMTJhMSAxIDAgMSAxIDAgOUg5LjAwNmE3IDcgMCAxIDEgNi43MDItOXoifV0sWyJwYXRoIix7ZDoiTTIxLjgzMiA5QTMgMyAwIDAgMCAxOSA3aC0yLjIwN2E1LjUgNS41IDAgMCAwLTEwLjcyLjYxIn1dXX0pO3ZhciByTCxiSGU9bCgoKT0+e3JMPVtbInBhdGgiLHtkOiJNMTYuMTcgNy44MyAyIDIyIn1dLFsicGF0aCIse2Q6Ik00LjAyIDEyYTIuODI3IDIuODI3IDAgMSAxIDMuODEtNC4xN0EyLjgyNyAyLjgyNyAwIDEgMSAxMiA0LjAyYTIuODI3IDIuODI3IDAgMSAxIDQuMTcgMy44MUEyLjgyNyAyLjgyNyAwIDEgMSAxOS45OCAxMmEyLjgyNyAyLjgyNyAwIDEgMS0zLjgxIDQuMTdBMi44MjcgMi44MjcgMCAxIDEgMTIgMTkuOThhMi44MjcgMi44MjcgMCAxIDEtNC4xNy0zLjgxQTEgMSAwIDEgMSA0IDEyIn1dLFsicGF0aCIse2Q6Im03LjgzIDcuODMgOC4zNCA4LjM0In1dXX0pO3ZhciBhTCx2SGU9bCgoKT0+e2FMPVtbInBhdGgiLHtkOiJNMTcuMjggOS4wNWE1LjUgNS41IDAgMSAwLTEwLjU2IDBBNS41IDUuNSAwIDEgMCAxMiAxNy42NmE1LjUgNS41IDAgMSAwIDUuMjgtOC42WiJ9XSxbInBhdGgiLHtkOiJNMTIgMTcuNjZMMTIgMjIifV1dfSk7dmFyIHlmLHlIZT1sKCgpPT57eWY9W1sicGF0aCIse2Q6Im0xOCAxNiA0LTQtNC00In1dLFsicGF0aCIse2Q6Im02IDgtNCA0IDQgNCJ9XSxbInBhdGgiLHtkOiJtMTQuNSA0LTUgMTYifV1dfSk7dmFyIGlMLHdIZT1sKCgpPT57aUw9W1sicGF0aCIse2Q6Im0xNiAxOCA2LTYtNi02In1dLFsicGF0aCIse2Q6Im04IDYtNiA2IDYgNiJ9XV19KTt2YXIgb0wsTUhlPWwoKCk9PntvTD1bWyJwb2x5Z29uIix7cG9pbnRzOiIxMiAyIDIyIDguNSAyMiAxNS41IDEyIDIyIDIgMTUuNSAyIDguNSAxMiAyIn1dLFsibGluZSIse3gxOiIxMiIseDI6IjEyIix5MToiMjIiLHkyOiIxNS41In1dLFsicG9seWxpbmUiLHtwb2ludHM6IjIyIDguNSAxMiAxNS41IDIgOC41In1dLFsicG9seWxpbmUiLHtwb2ludHM6IjIgMTUuNSAxMiA4LjUgMjIgMTUuNSJ9XSxbImxpbmUiLHt4MToiMTIiLHgyOiIxMiIseTE6IjIiLHkyOiI4LjUifV1dfSk7dmFyIG5MLGtIZT1sKCgpPT57bkw9W1sicGF0aCIse2Q6Ik0yMSAxNlY4YTIgMiAwIDAgMC0xLTEuNzNsLTctNGEyIDIgMCAwIDAtMiAwbC03IDRBMiAyIDAgMCAwIDMgOHY4YTIgMiAwIDAgMCAxIDEuNzNsNyA0YTIgMiAwIDAgMCAyIDBsNy00QTIgMiAwIDAgMCAyMSAxNnoifV0sWyJwb2x5bGluZSIse3BvaW50czoiNy41IDQuMjEgMTIgNi44MSAxNi41IDQuMjEifV0sWyJwb2x5bGluZSIse3BvaW50czoiNy41IDE5Ljc5IDcuNSAxNC42IDMgMTIifV0sWyJwb2x5bGluZSIse3BvaW50czoiMjEgMTIgMTYuNSAxNC42IDE2LjUgMTkuNzkifV0sWyJwb2x5bGluZSIse3BvaW50czoiMy4yNyA2Ljk2IDEyIDEyLjAxIDIwLjczIDYuOTYifV0sWyJsaW5lIix7eDE6IjEyIix4MjoiMTIiLHkxOiIyMi4wOCIseTI6IjEyIn1dXX0pO3ZhciBzTCxTSGU9bCgoKT0+e3NMPVtbInBhdGgiLHtkOiJNMTAgMnYyIn1dLFsicGF0aCIse2Q6Ik0xNCAydjIifV0sWyJwYXRoIix7ZDoiTTE2IDhhMSAxIDAgMCAxIDEgMXY4YTQgNCAwIDAgMS00IDRIN2E0IDQgMCAwIDEtNC00VjlhMSAxIDAgMCAxIDEtMWgxNGE0IDQgMCAxIDEgMCA4aC0xIn1dLFsicGF0aCIse2Q6Ik02IDJ2MiJ9XV19KTt2YXIgbEwsekhlPWwoKCk9PntsTD1bWyJwYXRoIix7ZDoiTTExIDEwLjI3IDcgMy4zNCJ9XSxbInBhdGgiLHtkOiJtMTEgMTMuNzMtNCA2LjkzIn1dLFsicGF0aCIse2Q6Ik0xMiAyMnYtMiJ9XSxbInBhdGgiLHtkOiJNMTIgMnYyIn1dLFsicGF0aCIse2Q6Ik0xNCAxMmg4In1dLFsicGF0aCIse2Q6Im0xNyAyMC42Ni0xLTEuNzMifV0sWyJwYXRoIix7ZDoibTE3IDMuMzQtMSAxLjczIn1dLFsicGF0aCIse2Q6Ik0yIDEyaDIifV0sWyJwYXRoIix7ZDoibTIwLjY2IDE3LTEuNzMtMSJ9XSxbInBhdGgiLHtkOiJtMjAuNjYgNy0xLjczIDEifV0sWyJwYXRoIix7ZDoibTMuMzQgMTcgMS43My0xIn1dLFsicGF0aCIse2Q6Im0zLjM0IDcgMS43MyAxIn1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjIifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiOCJ9XV19KTt2YXIgY0wsQ0hlPWwoKCk9PntjTD1bWyJwYXRoIix7ZDoiTTEzLjc0NCAxNy43MzZhNiA2IDAgMSAxLTcuNDgtNy40OCJ9XSxbInBhdGgiLHtkOiJNMTUgNmgxdjQifV0sWyJwYXRoIix7ZDoibTYuMTM0IDE0Ljc2OC44NjYtLjUgMiAzLjQ2NCJ9XSxbImNpcmNsZSIse2N4OiIxNiIsY3k6IjgiLHI6IjYifV1dfSk7dmFyIHdmLF9IZT1sKCgpPT57d2Y9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoiTTEyIDN2MTgifV1dfSk7dmFyIFRjLFRIZT1sKCgpPT57VGM9W1sicGF0aCIse2Q6Ik0xMC41IDIxSDVhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJoMTRhMiAyIDAgMCAxIDIgMnY1LjUifV0sWyJwYXRoIix7ZDoibTE0LjMgMTkuNiAxLS40In1dLFsicGF0aCIse2Q6Ik0xNSAzdjcuNSJ9XSxbInBhdGgiLHtkOiJtMTUuMiAxNi45LS45LS4zIn1dLFsicGF0aCIse2Q6Im0xNi42IDIxLjcuMy0uOSJ9XSxbInBhdGgiLHtkOiJtMTYuOCAxNS4zLS40LTEifV0sWyJwYXRoIix7ZDoibTE5LjEgMTUuMi4zLS45In1dLFsicGF0aCIse2Q6Im0xOS42IDIxLjctLjQtMSJ9XSxbInBhdGgiLHtkOiJtMjAuNyAxNi44IDEtLjQifV0sWyJwYXRoIix7ZDoibTIxLjcgMTkuNC0uOS0uMyJ9XSxbInBhdGgiLHtkOiJNOSAzdjE4In1dLFsiY2lyY2xlIix7Y3g6IjE4IixjeToiMTgiLHI6IjMifV1dfSk7dmFyIE1mLExIZT1sKCgpPT57TWY9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoiTTkgM3YxOCJ9XSxbInBhdGgiLHtkOiJNMTUgM3YxOCJ9XV19KTt2YXIgZEwsREhlPWwoKCk9PntkTD1bWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiIzIixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNNy41IDN2MTgifV0sWyJwYXRoIix7ZDoiTTEyIDN2MTgifV0sWyJwYXRoIix7ZDoiTTE2LjUgM3YxOCJ9XV19KTt2YXIgdUwsQUhlPWwoKCk9Pnt1TD1bWyJwYXRoIix7ZDoiTTE0IDNhMSAxIDAgMCAxIDEgMXY1YTEgMSAwIDAgMS0xIDEifV0sWyJwYXRoIix7ZDoiTTE5IDNhMSAxIDAgMCAxIDEgMXY1YTEgMSAwIDAgMS0xIDEifV0sWyJwYXRoIix7ZDoibTcgMTUgMyAzIn1dLFsicGF0aCIse2Q6Im03IDIxIDMtM0g1YTIgMiAwIDAgMS0yLTJ2LTIifV0sWyJyZWN0Iix7eDoiMTQiLHk6IjE0Iix3aWR0aDoiNyIsaGVpZ2h0OiI3IixyeDoiMSJ9XSxbInJlY3QiLHt4OiIzIix5OiIzIix3aWR0aDoiNyIsaGVpZ2h0OiI3IixyeDoiMSJ9XV19KTt2YXIgZkwsRUhlPWwoKCk9PntmTD1bWyJwYXRoIix7ZDoiTTE1IDZ2MTJhMyAzIDAgMSAwIDMtM0g2YTMgMyAwIDEgMCAzIDNWNmEzIDMgMCAxIDAtMyAzaDEyYTMgMyAwIDEgMC0zLTMifV1dfSk7dmFyIHBMLCRIZT1sKCgpPT57cEw9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjEwIn1dLFsicGF0aCIse2Q6Im0xNi4yNCA3Ljc2LTEuODA0IDUuNDExYTIgMiAwIDAgMS0xLjI2NSAxLjI2NUw3Ljc2IDE2LjI0bDEuODA0LTUuNDExYTIgMiAwIDAgMSAxLjI2NS0xLjI2NXoifV1dfSk7dmFyIGhMLFBIZT1sKCgpPT57aEw9W1sicGF0aCIse2Q6Ik0xNS41MzYgMTEuMjkzYTEgMSAwIDAgMCAwIDEuNDE0bDIuMzc2IDIuMzc3YTEgMSAwIDAgMCAxLjQxNCAwbDIuMzc3LTIuMzc3YTEgMSAwIDAgMCAwLTEuNDE0bC0yLjM3Ny0yLjM3N2ExIDEgMCAwIDAtMS40MTQgMHoifV0sWyJwYXRoIix7ZDoiTTIuMjk3IDExLjI5M2ExIDEgMCAwIDAgMCAxLjQxNGwyLjM3NyAyLjM3N2ExIDEgMCAwIDAgMS40MTQgMGwyLjM3Ny0yLjM3N2ExIDEgMCAwIDAgMC0xLjQxNEw2LjA4OCA4LjkxNmExIDEgMCAwIDAtMS40MTQgMHoifV0sWyJwYXRoIix7ZDoiTTguOTE2IDE3LjkxMmExIDEgMCAwIDAgMCAxLjQxNWwyLjM3NyAyLjM3NmExIDEgMCAwIDAgMS40MTQgMGwyLjM3Ny0yLjM3NmExIDEgMCAwIDAgMC0xLjQxNWwtMi4zNzctMi4zNzZhMSAxIDAgMCAwLTEuNDE0IDB6In1dLFsicGF0aCIse2Q6Ik04LjkxNiA0LjY3NGExIDEgMCAwIDAgMCAxLjQxNGwyLjM3NyAyLjM3NmExIDEgMCAwIDAgMS40MTQgMGwyLjM3Ny0yLjM3NmExIDEgMCAwIDAgMC0xLjQxNGwtMi4zNzctMi4zNzdhMSAxIDAgMCAwLTEuNDE0IDB6In1dXX0pO3ZhciBtTCxJSGU9bCgoKT0+e21MPVtbInBhdGgiLHtkOiJNMyAyMGExIDEgMCAwIDEtMS0xdi0xYTIgMiAwIDAgMSAyLTJoMTZhMiAyIDAgMCAxIDIgMnYxYTEgMSAwIDAgMS0xIDFaIn1dLFsicGF0aCIse2Q6Ik0yMCAxNmE4IDggMCAxIDAtMTYgMCJ9XSxbInBhdGgiLHtkOiJNMTIgNHY0In1dLFsicGF0aCIse2Q6Ik0xMCA0aDQifV1dfSk7dmFyIGdMLE5IZT1sKCgpPT57Z0w9W1sicmVjdCIse3dpZHRoOiIxNCIsaGVpZ2h0OiI4Iix4OiI1Iix5OiIyIixyeDoiMiJ9XSxbInJlY3QiLHt3aWR0aDoiMjAiLGhlaWdodDoiOCIseDoiMiIseToiMTQiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik02IDE4aDIifV0sWyJwYXRoIix7ZDoiTTEyIDE4aDYifV1dfSk7dmFyIHhMLEZIZT1sKCgpPT57eEw9W1sicGF0aCIse2Q6Im0yMC45IDE4LjU1LTgtMTUuOThhMSAxIDAgMCAwLTEuOCAwbC04IDE1Ljk4In1dLFsiZWxsaXBzZSIse2N4OiIxMiIsY3k6IjE5IixyeDoiOSIscnk6IjMifV1dfSk7dmFyIGJMLE9IZT1sKCgpPT57Ykw9W1sicmVjdCIse3g6IjIiLHk6IjYiLHdpZHRoOiIyMCIsaGVpZ2h0OiI4IixyeDoiMSJ9XSxbInBhdGgiLHtkOiJNMTcgMTR2NyJ9XSxbInBhdGgiLHtkOiJNNyAxNHY3In1dLFsicGF0aCIse2Q6Ik0xNyAzdjMifV0sWyJwYXRoIix7ZDoiTTcgM3YzIn1dLFsicGF0aCIse2Q6Ik0xMCAxNCAyLjMgNi4zIn1dLFsicGF0aCIse2Q6Im0xNCA2IDcuNyA3LjcifV0sWyJwYXRoIix7ZDoibTggNiA4IDgifV1dfSk7dmFyIGtmLFJIZT1sKCgpPT57a2Y9W1sicGF0aCIse2Q6Ik0xNiAydjIifV0sWyJwYXRoIix7ZDoiTTE3LjkxNSAyMmE2IDYgMCAwIDAtMTIgMCJ9XSxbInBhdGgiLHtkOiJNOCAydjIifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiNCJ9XSxbInJlY3QiLHt4OiIzIix5OiI0Iix3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHJ4OiIyIn1dXX0pO3ZhciB2TCxCSGU9bCgoKT0+e3ZMPVtbInBhdGgiLHtkOiJNMTYgMnYyIn1dLFsicGF0aCIse2Q6Ik03IDIydi0yYTIgMiAwIDAgMSAyLTJoNmEyIDIgMCAwIDEgMiAydjIifV0sWyJwYXRoIix7ZDoiTTggMnYyIn1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiMTEiLHI6IjMifV0sWyJyZWN0Iix7eDoiMyIseToiNCIsd2lkdGg6IjE4IixoZWlnaHQ6IjE4IixyeDoiMiJ9XV19KTt2YXIgeUwsSEhlPWwoKCk9Pnt5TD1bWyJwYXRoIix7ZDoiTTIyIDcuN2MwLS42LS40LTEuMi0uOC0xLjVsLTYuMy0zLjlhMS43MiAxLjcyIDAgMCAwLTEuNyAwbC0xMC4zIDZjLS41LjItLjkuOC0uOSAxLjR2Ni42YzAgLjUuNCAxLjIuOCAxLjVsNi4zIDMuOWExLjcyIDEuNzIgMCAwIDAgMS43IDBsMTAuMy02Yy41LS4zLjktMSAuOS0xLjVaIn1dLFsicGF0aCIse2Q6Ik0xMCAyMS45VjE0TDIuMSA5LjEifV0sWyJwYXRoIix7ZDoibTEwIDE0IDExLjktNi45In1dLFsicGF0aCIse2Q6Ik0xNCAxOS44di04LjEifV0sWyJwYXRoIix7ZDoiTTE4IDE3LjVWOS40In1dXX0pO3ZhciB3TCxxSGU9bCgoKT0+e3dMPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XSxbInBhdGgiLHtkOiJNMTIgMThhNiA2IDAgMCAwIDAtMTJ2MTJ6In1dXX0pO3ZhciBNTCxqSGU9bCgoKT0+e01MPVtbInBhdGgiLHtkOiJNMTIgMmExMCAxMCAwIDEgMCAxMCAxMCA0IDQgMCAwIDEtNS01IDQgNCAwIDAgMS01LTUifV0sWyJwYXRoIix7ZDoiTTguNSA4LjV2LjAxIn1dLFsicGF0aCIse2Q6Ik0xNiAxNS41di4wMSJ9XSxbInBhdGgiLHtkOiJNMTIgMTJ2LjAxIn1dLFsicGF0aCIse2Q6Ik0xMSAxN3YuMDEifV0sWyJwYXRoIix7ZDoiTTcgMTR2LjAxIn1dXX0pO3ZhciBrTCxWSGU9bCgoKT0+e2tMPVtbInBhdGgiLHtkOiJNMiAxMmgyMCJ9XSxbInBhdGgiLHtkOiJNMjAgMTJ2OGEyIDIgMCAwIDEtMiAySDZhMiAyIDAgMCAxLTItMnYtOCJ9XSxbInBhdGgiLHtkOiJtNCA4IDE2LTQifV0sWyJwYXRoIix7ZDoibTguODYgNi43OC0uNDUtMS44MWEyIDIgMCAwIDEgMS40NS0yLjQzbDEuOTQtLjQ4YTIgMiAwIDAgMSAyLjQzIDEuNDZsLjQ1IDEuOCJ9XV19KTt2YXIgU0wsVUhlPWwoKCk9PntTTD1bWyJwYXRoIix7ZDoibTEyIDE1IDIgMiA0LTQifV0sWyJyZWN0Iix7d2lkdGg6IjE0IixoZWlnaHQ6IjE0Iix4OiI4Iix5OiI4IixyeDoiMiIscnk6IjIifV0sWyJwYXRoIix7ZDoiTTQgMTZjLTEuMSAwLTItLjktMi0yVjRjMC0xLjEuOS0yIDItMmgxMGMxLjEgMCAyIC45IDIgMiJ9XV19KTt2YXIgekwsV0hlPWwoKCk9Pnt6TD1bWyJsaW5lIix7eDE6IjEyIix4MjoiMTgiLHkxOiIxNSIseTI6IjE1In1dLFsicmVjdCIse3dpZHRoOiIxNCIsaGVpZ2h0OiIxNCIseDoiOCIseToiOCIscng6IjIiLHJ5OiIyIn1dLFsicGF0aCIse2Q6Ik00IDE2Yy0xLjEgMC0yLS45LTItMlY0YzAtMS4xLjktMiAyLTJoMTBjMS4xIDAgMiAuOSAyIDIifV1dfSk7dmFyIENMLEdIZT1sKCgpPT57Q0w9W1sibGluZSIse3gxOiIxNSIseDI6IjE1Iix5MToiMTIiLHkyOiIxOCJ9XSxbImxpbmUiLHt4MToiMTIiLHgyOiIxOCIseTE6IjE1Iix5MjoiMTUifV0sWyJyZWN0Iix7d2lkdGg6IjE0IixoZWlnaHQ6IjE0Iix4OiI4Iix5OiI4IixyeDoiMiIscnk6IjIifV0sWyJwYXRoIix7ZDoiTTQgMTZjLTEuMSAwLTItLjktMi0yVjRjMC0xLjEuOS0yIDItMmgxMGMxLjEgMCAyIC45IDIgMiJ9XV19KTt2YXIgX0wsWUhlPWwoKCk9PntfTD1bWyJsaW5lIix7eDE6IjEyIix4MjoiMTgiLHkxOiIxOCIseTI6IjEyIn1dLFsicmVjdCIse3dpZHRoOiIxNCIsaGVpZ2h0OiIxNCIseDoiOCIseToiOCIscng6IjIiLHJ5OiIyIn1dLFsicGF0aCIse2Q6Ik00IDE2Yy0xLjEgMC0yLS45LTItMlY0YzAtMS4xLjktMiAyLTJoMTBjMS4xIDAgMiAuOSAyIDIifV1dfSk7dmFyIFRMLFpIZT1sKCgpPT57VEw9W1sibGluZSIse3gxOiIxMiIseDI6IjE4Iix5MToiMTIiLHkyOiIxOCJ9XSxbImxpbmUiLHt4MToiMTIiLHgyOiIxOCIseTE6IjE4Iix5MjoiMTIifV0sWyJyZWN0Iix7d2lkdGg6IjE0IixoZWlnaHQ6IjE0Iix4OiI4Iix5OiI4IixyeDoiMiIscnk6IjIifV0sWyJwYXRoIix7ZDoiTTQgMTZjLTEuMSAwLTItLjktMi0yVjRjMC0xLjEuOS0yIDItMmgxMGMxLjEgMCAyIC45IDIgMiJ9XV19KTt2YXIgTEwsWEhlPWwoKCk9PntMTD1bWyJyZWN0Iix7d2lkdGg6IjE0IixoZWlnaHQ6IjE0Iix4OiI4Iix5OiI4IixyeDoiMiIscnk6IjIifV0sWyJwYXRoIix7ZDoiTTQgMTZjLTEuMSAwLTItLjktMi0yVjRjMC0xLjEuOS0yIDItMmgxMGMxLjEgMCAyIC45IDIgMiJ9XV19KTt2YXIgREwsUUhlPWwoKCk9PntETD1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMTAifV0sWyJwYXRoIix7ZDoiTTkuMTcgMTQuODNhNCA0IDAgMSAwIDAtNS42NiJ9XV19KTt2YXIgQUwsS0hlPWwoKCk9PntBTD1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMTAifV0sWyJwYXRoIix7ZDoiTTE0LjgzIDE0LjgzYTQgNCAwIDEgMSAwLTUuNjYifV1dfSk7dmFyIEVMLEpIZT1sKCgpPT57RUw9W1sicGF0aCIse2Q6Ik0yMCA0djdhNCA0IDAgMCAxLTQgNEg0In1dLFsicGF0aCIse2Q6Im05IDEwLTUgNSA1IDUifV1dfSk7dmFyICRMLGVxZT1sKCgpPT57JEw9W1sicGF0aCIse2Q6Im0xNSAxMCA1IDUtNSA1In1dLFsicGF0aCIse2Q6Ik00IDR2N2E0IDQgMCAwIDAgNCA0aDEyIn1dXX0pO3ZhciBQTCx0cWU9bCgoKT0+e1BMPVtbInBhdGgiLHtkOiJtMTQgMTUtNSA1LTUtNSJ9XSxbInBhdGgiLHtkOiJNMjAgNGgtN2E0IDQgMCAwIDAtNCA0djEyIn1dXX0pO3ZhciBJTCxycWU9bCgoKT0+e0lMPVtbInBhdGgiLHtkOiJNMTQgOSA5IDQgNCA5In1dLFsicGF0aCIse2Q6Ik0yMCAyMGgtN2E0IDQgMCAwIDEtNC00VjQifV1dfSk7dmFyIE5MLGFxZT1sKCgpPT57Tkw9W1sicGF0aCIse2Q6Im0xMCAxNSA1IDUgNS01In1dLFsicGF0aCIse2Q6Ik00IDRoN2E0IDQgMCAwIDEgNCA0djEyIn1dXX0pO3ZhciBGTCxpcWU9bCgoKT0+e0ZMPVtbInBhdGgiLHtkOiJtMTAgOSA1LTUgNSA1In1dLFsicGF0aCIse2Q6Ik00IDIwaDdhNCA0IDAgMCAwIDQtNFY0In1dXX0pO3ZhciBPTCxvcWU9bCgoKT0+e09MPVtbInBhdGgiLHtkOiJNMjAgMjB2LTdhNCA0IDAgMCAwLTQtNEg0In1dLFsicGF0aCIse2Q6Ik05IDE0IDQgOWw1LTUifV1dfSk7dmFyIFJMLG5xZT1sKCgpPT57Ukw9W1sicGF0aCIse2Q6Ik0xMiAyMHYyIn1dLFsicGF0aCIse2Q6Ik0xMiAydjIifV0sWyJwYXRoIix7ZDoiTTE3IDIwdjIifV0sWyJwYXRoIix7ZDoiTTE3IDJ2MiJ9XSxbInBhdGgiLHtkOiJNMiAxMmgyIn1dLFsicGF0aCIse2Q6Ik0yIDE3aDIifV0sWyJwYXRoIix7ZDoiTTIgN2gyIn1dLFsicGF0aCIse2Q6Ik0yMCAxMmgyIn1dLFsicGF0aCIse2Q6Ik0yMCAxN2gyIn1dLFsicGF0aCIse2Q6Ik0yMCA3aDIifV0sWyJwYXRoIix7ZDoiTTcgMjB2MiJ9XSxbInBhdGgiLHtkOiJNNyAydjIifV0sWyJyZWN0Iix7eDoiNCIseToiNCIsd2lkdGg6IjE2IixoZWlnaHQ6IjE2IixyeDoiMiJ9XSxbInJlY3QiLHt4OiI4Iix5OiI4Iix3aWR0aDoiOCIsaGVpZ2h0OiI4IixyeDoiMSJ9XV19KTt2YXIgQkwsc3FlPWwoKCk9PntCTD1bWyJwYXRoIix7ZDoibTE1IDE0IDUtNS01LTUifV0sWyJwYXRoIix7ZDoiTTQgMjB2LTdhNCA0IDAgMCAxIDQtNGgxMiJ9XV19KTt2YXIgSEwsbHFlPWwoKCk9PntITD1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMTAifV0sWyJwYXRoIix7ZDoiTTEwIDkuM2EyLjggMi44IDAgMCAwLTMuNSAxIDMuMSAzLjEgMCAwIDAgMCAzLjQgMi43IDIuNyAwIDAgMCAzLjUgMSJ9XSxbInBhdGgiLHtkOiJNMTcgOS4zYTIuOCAyLjggMCAwIDAtMy41IDEgMy4xIDMuMSAwIDAgMCAwIDMuNCAyLjcgMi43IDAgMCAwIDMuNSAxIn1dXX0pO3ZhciBxTCxjcWU9bCgoKT0+e3FMPVtbInJlY3QiLHt3aWR0aDoiMjAiLGhlaWdodDoiMTQiLHg6IjIiLHk6IjUiLHJ4OiIyIn1dLFsibGluZSIse3gxOiIyIix4MjoiMjIiLHkxOiIxMCIseTI6IjEwIn1dXX0pO3ZhciBqTCxkcWU9bCgoKT0+e2pMPVtbInBhdGgiLHtkOiJNMTAuMiAxOEg0Ljc3NGExLjUgMS41IDAgMCAxLTEuMzUyLS45NyAxMSAxMSAwIDAgMSAuMTMyLTYuNDg3In1dLFsicGF0aCIse2Q6Ik0xOCAxMC4yVjQuNzc0YTEuNSAxLjUgMCAwIDAtLjk3LTEuMzUyIDExIDExIDAgMCAwLTYuNDg2LjEzMiJ9XSxbInBhdGgiLHtkOiJNMTggNWE0IDMgMCAwIDEgNCAzIDIgMiAwIDAgMS0yIDIgMTAgMTAgMCAwIDAtNS4xMzkgMS40MiJ9XSxbInBhdGgiLHtkOiJNNSAxOGEzIDQgMCAwIDAgMyA0IDIgMiAwIDAgMCAyLTIgMTAgMTAgMCAwIDEgMS40Mi01LjE0In1dLFsicGF0aCIse2Q6Ik04LjcwOSAyLjU1NGExMCAxMCAwIDAgMC02LjE1NSA2LjE1NSAxLjUgMS41IDAgMCAwIC42NzYgMS42MjZsOS44MDcgNS40MmEyIDIgMCAwIDAgMi43MTgtMi43MThsLTUuNDItOS44MDdhMS41IDEuNSAwIDAgMC0xLjYyNi0uNjc2In1dXX0pO3ZhciBWTCx1cWU9bCgoKT0+e1ZMPVtbInBhdGgiLHtkOiJNNiAydjE0YTIgMiAwIDAgMCAyIDJoMTQifV0sWyJwYXRoIix7ZDoiTTE4IDIyVjhhMiAyIDAgMCAwLTItMkgyIn1dXX0pO3ZhciBVTCxmcWU9bCgoKT0+e1VMPVtbInBhdGgiLHtkOiJNNCA5YTIgMiAwIDAgMC0yIDJ2MmEyIDIgMCAwIDAgMiAyaDRhMSAxIDAgMCAxIDEgMXY0YTIgMiAwIDAgMCAyIDJoMmEyIDIgMCAwIDAgMi0ydi00YTEgMSAwIDAgMSAxLTFoNGEyIDIgMCAwIDAgMi0ydi0yYTIgMiAwIDAgMC0yLTJoLTRhMSAxIDAgMCAxLTEtMVY0YTIgMiAwIDAgMC0yLTJoLTJhMiAyIDAgMCAwLTIgMnY0YTEgMSAwIDAgMS0xIDF6In1dXX0pO3ZhciBXTCxwcWU9bCgoKT0+e1dMPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XSxbImxpbmUiLHt4MToiMjIiLHgyOiIxOCIseTE6IjEyIix5MjoiMTIifV0sWyJsaW5lIix7eDE6IjYiLHgyOiIyIix5MToiMTIiLHkyOiIxMiJ9XSxbImxpbmUiLHt4MToiMTIiLHgyOiIxMiIseTE6IjYiLHkyOiIyIn1dLFsibGluZSIse3gxOiIxMiIseDI6IjEyIix5MToiMjIiLHkyOiIxOCJ9XV19KTt2YXIgR0wsaHFlPWwoKCk9PntHTD1bWyJwYXRoIix7ZDoiTTExLjU2MiAzLjI2NmEuNS41IDAgMCAxIC44NzYgMEwxNS4zOSA4Ljg3YTEgMSAwIDAgMCAxLjUxNi4yOTRMMjEuMTgzIDUuNWEuNS41IDAgMCAxIC43OTguNTE5bC0yLjgzNCAxMC4yNDZhMSAxIDAgMCAxLS45NTYuNzM0SDUuODFhMSAxIDAgMCAxLS45NTctLjczNEwyLjAyIDYuMDJhLjUuNSAwIDAgMSAuNzk4LS41MTlsNC4yNzYgMy42NjRhMSAxIDAgMCAwIDEuNTE2LS4yOTR6In1dLFsicGF0aCIse2Q6Ik01IDIxaDE0In1dXX0pO3ZhciBZTCxtcWU9bCgoKT0+e1lMPVtbInBhdGgiLHtkOiJtNiA4IDEuNzUgMTIuMjhhMiAyIDAgMCAwIDIgMS43Mmg0LjU0YTIgMiAwIDAgMCAyLTEuNzJMMTggOCJ9XSxbInBhdGgiLHtkOiJNNSA4aDE0In1dLFsicGF0aCIse2Q6Ik03IDE1YTYuNDcgNi40NyAwIDAgMSA1IDAgNi40NyA2LjQ3IDAgMCAwIDUgMCJ9XSxbInBhdGgiLHtkOiJtMTIgOCAxLTZoMiJ9XV19KTt2YXIgWkwsZ3FlPWwoKCk9PntaTD1bWyJwYXRoIix7ZDoiTTEwIDIydi04In1dLFsicGF0aCIse2Q6Ik0yLjMzNiA4Ljg5IDEwIDE0bDExLjcxNS03LjAyOSJ9XSxbInBhdGgiLHtkOiJNMjIgMTRhMiAyIDAgMCAxLS45NzEgMS43MTVsLTEwIDZhMiAyIDAgMCAxLTIuMTM4LS4wNWwtNi00QTIgMiAwIDAgMSAyIDE2di02YTIgMiAwIDAgMSAuOTcxLTEuNzE1bDEwLTZhMiAyIDAgMCAxIDIuMTM4LjA1bDYgNEEyIDIgMCAwIDEgMjIgOHoifV1dfSk7dmFyIFhMLHhxZT1sKCgpPT57WEw9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjgifV0sWyJsaW5lIix7eDE6IjMiLHgyOiI2Iix5MToiMyIseTI6IjYifV0sWyJsaW5lIix7eDE6IjIxIix4MjoiMTgiLHkxOiIzIix5MjoiNiJ9XSxbImxpbmUiLHt4MToiMyIseDI6IjYiLHkxOiIyMSIseTI6IjE4In1dLFsibGluZSIse3gxOiIyMSIseDI6IjE4Iix5MToiMjEiLHkyOiIxOCJ9XV19KTt2YXIgUUwsYnFlPWwoKCk9PntRTD1bWyJlbGxpcHNlIix7Y3g6IjEyIixjeToiNSIscng6IjkiLHJ5OiIzIn1dLFsicGF0aCIse2Q6Ik0zIDV2MTRhOSAzIDAgMCAwIDE4IDBWNSJ9XV19KTt2YXIgS0wsdnFlPWwoKCk9PntLTD1bWyJwYXRoIix7ZDoiTTExIDExLjMxYzEuMTcuNTYgMS41NCAxLjY5IDMuNSAxLjY5IDIuNSAwIDIuNS0yIDUtMiAxLjMgMCAxLjkuNSAyLjUgMSJ9XSxbInBhdGgiLHtkOiJNMTEuNzUgMThjLjM1LjUgMS40NSAxIDIuNzUgMSAyLjUgMCAyLjUtMiA1LTIgMS4zIDAgMS45LjUgMi41IDEifV0sWyJwYXRoIix7ZDoiTTIgMTBoNCJ9XSxbInBhdGgiLHtkOiJNMiAxNGg0In1dLFsicGF0aCIse2Q6Ik0yIDE4aDQifV0sWyJwYXRoIix7ZDoiTTIgNmg0In1dLFsicGF0aCIse2Q6Ik03IDNhMSAxIDAgMCAwLTEgMXYxNmExIDEgMCAwIDAgMSAxaDRhMSAxIDAgMCAwIDEtMUwxMCA0YTEgMSAwIDAgMC0xLTF6In1dXX0pO3ZhciBKTCx5cWU9bCgoKT0+e0pMPVtbImVsbGlwc2UiLHtjeDoiMTIiLGN5OiI1IixyeDoiOSIscnk6IjMifV0sWyJwYXRoIix7ZDoiTTMgMTJhOSAzIDAgMCAwIDUgMi42OSJ9XSxbInBhdGgiLHtkOiJNMjEgOS4zVjUifV0sWyJwYXRoIix7ZDoiTTMgNXYxNGE5IDMgMCAwIDAgNi40NyAyLjg4In1dLFsicGF0aCIse2Q6Ik0xMiAxMnY0aDQifV0sWyJwYXRoIix7ZDoiTTEzIDIwYTUgNSAwIDAgMCA5LTMgNC41IDQuNSAwIDAgMC00LjUtNC41Yy0xLjMzIDAtMi41NC41NC0zLjQxIDEuNDFMMTIgMTYifV1dfSk7dmFyIGVELHdxZT1sKCgpPT57ZUQ9W1siZWxsaXBzZSIse2N4OiIxMiIsY3k6IjUiLHJ4OiI5IixyeToiMyJ9XSxbInBhdGgiLHtkOiJNMyA1VjE5QTkgMyAwIDAgMCAxNSAyMS44NCJ9XSxbInBhdGgiLHtkOiJNMjEgNVY4In1dLFsicGF0aCIse2Q6Ik0yMSAxMkwxOCAxN0gyMkwxOSAyMiJ9XSxbInBhdGgiLHtkOiJNMyAxMkE5IDMgMCAwIDAgMTQuNTkgMTQuODcifV1dfSk7dmFyIHRELE1xZT1sKCgpPT57dEQ9W1sicGF0aCIse2Q6Ik0yMSAxMS42OTNWNSJ9XSxbInBhdGgiLHtkOiJtMjIgMjItMS44NzUtMS44NzUifV0sWyJwYXRoIix7ZDoiTTMgMTJhOSAzIDAgMCAwIDguNjk3IDIuOTk4In1dLFsicGF0aCIse2Q6Ik0zIDV2MTRhOSAzIDAgMCAwIDkuMjggMi45OTkifV0sWyJjaXJjbGUiLHtjeDoiMTgiLGN5OiIxOCIscjoiMyJ9XSxbImVsbGlwc2UiLHtjeDoiMTIiLGN5OiI1IixyeDoiOSIscnk6IjMifV1dfSk7dmFyIHJELGtxZT1sKCgpPT57ckQ9W1sicGF0aCIse2Q6Im0xMyAyMS0zLTMgMy0zIn1dLFsicGF0aCIse2Q6Ik0yMCAxOEgxMCJ9XSxbInBhdGgiLHtkOiJNMyAxMWguMDEifV0sWyJyZWN0Iix7eDoiNiIseToiMyIsd2lkdGg6IjUiLGhlaWdodDoiOCIscng6IjIuNSJ9XV19KTt2YXIgYUQsU3FlPWwoKCk9PnthRD1bWyJlbGxpcHNlIix7Y3g6IjEyIixjeToiNSIscng6IjkiLHJ5OiIzIn1dLFsicGF0aCIse2Q6Ik0zIDVWMTlBOSAzIDAgMCAwIDIxIDE5VjUifV0sWyJwYXRoIix7ZDoiTTMgMTJBOSAzIDAgMCAwIDIxIDEyIn1dXX0pO3ZhciBpRCx6cWU9bCgoKT0+e2lEPVtbInBhdGgiLHtkOiJNMTAgMThoMTAifV0sWyJwYXRoIix7ZDoibTE3IDIxIDMtMy0zLTMifV0sWyJwYXRoIix7ZDoiTTMgMTFoLjAxIn1dLFsicmVjdCIse3g6IjE1Iix5OiIzIix3aWR0aDoiNSIsaGVpZ2h0OiI4IixyeDoiMi41In1dLFsicmVjdCIse3g6IjYiLHk6IjMiLHdpZHRoOiI1IixoZWlnaHQ6IjgiLHJ4OiIyLjUifV1dfSk7dmFyIG9ELENxZT1sKCgpPT57b0Q9W1sicGF0aCIse2Q6Ik0xMCA1YTIgMiAwIDAgMC0xLjM0NC41MTlsLTYuMzI4IDUuNzRhMSAxIDAgMCAwIDAgMS40ODFsNi4zMjggNS43NDFBMiAyIDAgMCAwIDEwIDE5aDEwYTIgMiAwIDAgMCAyLTJWN2EyIDIgMCAwIDAtMi0yeiJ9XSxbInBhdGgiLHtkOiJtMTIgOSA2IDYifV0sWyJwYXRoIix7ZDoibTE4IDktNiA2In1dXX0pO3ZhciBuRCxfcWU9bCgoKT0+e25EPVtbImNpcmNsZSIse2N4OiIxOSIsY3k6IjE5IixyOiIyIn1dLFsiY2lyY2xlIix7Y3g6IjUiLGN5OiI1IixyOiIyIn1dLFsicGF0aCIse2Q6Ik02LjQ4IDMuNjZhMTAgMTAgMCAwIDEgMTMuODYgMTMuODYifV0sWyJwYXRoIix7ZDoibTYuNDEgNi40MSAxMS4xOCAxMS4xOCJ9XSxbInBhdGgiLHtkOiJNMy42NiA2LjQ4YTEwIDEwIDAgMCAwIDEzLjg2IDEzLjg2In1dXX0pO3ZhciBzRCxUcWU9bCgoKT0+e3NEPVtbInBhdGgiLHtkOiJNMTAuMTYyIDMuMTY3QTEwIDEwIDAgMCAwIDIgMTNhMiAyIDAgMCAwIDQgMHYtMWEyIDIgMCAwIDEgNCAwdjRhMiAyIDAgMCAwIDQgMHYtNGEyIDIgMCAwIDEgNCAwdjFhMiAyIDAgMCAwIDQtLjAwNiAxMCAxMCAwIDAgMC04LjE2MS05LjgyNiJ9XSxbInBhdGgiLHtkOiJNMjAuODA0IDE0Ljg2OWE5IDkgMCAwIDEtMTcuNjA4IDAifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiI0IixyOiIyIn1dXX0pO3ZhciBsRCxMcWU9bCgoKT0+e2xEPVtbInBhdGgiLHtkOiJNMi43IDEwLjNhMi40MSAyLjQxIDAgMCAwIDAgMy40MWw3LjU5IDcuNTlhMi40MSAyLjQxIDAgMCAwIDMuNDEgMGw3LjU5LTcuNTlhMi40MSAyLjQxIDAgMCAwIDAtMy40MUwxMy43IDIuNzFhMi40MSAyLjQxIDAgMCAwLTMuNDEgMHoifV0sWyJwYXRoIix7ZDoiTTggMTJoOCJ9XV19KTt2YXIgU2YsRHFlPWwoKCk9PntTZj1bWyJwYXRoIix7ZDoiTTIuNyAxMC4zYTIuNDEgMi40MSAwIDAgMCAwIDMuNDFsNy41OSA3LjU5YTIuNDEgMi40MSAwIDAgMCAzLjQxIDBsNy41OS03LjU5YTIuNDEgMi40MSAwIDAgMCAwLTMuNDFMMTMuNyAyLjcxYTIuNDEgMi40MSAwIDAgMC0zLjQxIDBaIn1dLFsicGF0aCIse2Q6Ik05LjIgOS4yaC4wMSJ9XSxbInBhdGgiLHtkOiJtMTQuNSA5LjUtNSA1In1dLFsicGF0aCIse2Q6Ik0xNC43IDE0LjhoLjAxIn1dXX0pO3ZhciBjRCxBcWU9bCgoKT0+e2NEPVtbInBhdGgiLHtkOiJNMTIgOHY4In1dLFsicGF0aCIse2Q6Ik0yLjcgMTAuM2EyLjQxIDIuNDEgMCAwIDAgMCAzLjQxbDcuNTkgNy41OWEyLjQxIDIuNDEgMCAwIDAgMy40MSAwbDcuNTktNy41OWEyLjQxIDIuNDEgMCAwIDAgMC0zLjQxTDEzLjcgMi43MWEyLjQxIDIuNDEgMCAwIDAtMy40MSAweiJ9XSxbInBhdGgiLHtkOiJNOCAxMmg4In1dXX0pO3ZhciBkRCxFcWU9bCgoKT0+e2REPVtbInBhdGgiLHtkOiJNMi43IDEwLjNhMi40MSAyLjQxIDAgMCAwIDAgMy40MWw3LjU5IDcuNTlhMi40MSAyLjQxIDAgMCAwIDMuNDEgMGw3LjU5LTcuNTlhMi40MSAyLjQxIDAgMCAwIDAtMy40MWwtNy41OS03LjU5YTIuNDEgMi40MSAwIDAgMC0zLjQxIDBaIn1dXX0pO3ZhciB1RCwkcWU9bCgoKT0+e3VEPVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIixyeToiMiJ9XSxbInBhdGgiLHtkOiJNMTIgMTJoLjAxIn1dXX0pO3ZhciBmRCxQcWU9bCgoKT0+e2ZEPVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIixyeToiMiJ9XSxbInBhdGgiLHtkOiJNMTUgOWguMDEifV0sWyJwYXRoIix7ZDoiTTkgMTVoLjAxIn1dXX0pO3ZhciBwRCxJcWU9bCgoKT0+e3BEPVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIixyeToiMiJ9XSxbInBhdGgiLHtkOiJNMTYgOGguMDEifV0sWyJwYXRoIix7ZDoiTTEyIDEyaC4wMSJ9XSxbInBhdGgiLHtkOiJNOCAxNmguMDEifV1dfSk7dmFyIGhELE5xZT1sKCgpPT57aEQ9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIiLHJ5OiIyIn1dLFsicGF0aCIse2Q6Ik0xNiA4aC4wMSJ9XSxbInBhdGgiLHtkOiJNOCA4aC4wMSJ9XSxbInBhdGgiLHtkOiJNOCAxNmguMDEifV0sWyJwYXRoIix7ZDoiTTE2IDE2aC4wMSJ9XV19KTt2YXIgbUQsRnFlPWwoKCk9PnttRD1bWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiIzIixyeDoiMiIscnk6IjIifV0sWyJwYXRoIix7ZDoiTTE2IDhoLjAxIn1dLFsicGF0aCIse2Q6Ik04IDhoLjAxIn1dLFsicGF0aCIse2Q6Ik04IDE2aC4wMSJ9XSxbInBhdGgiLHtkOiJNMTYgMTZoLjAxIn1dLFsicGF0aCIse2Q6Ik0xMiAxMmguMDEifV1dfSk7dmFyIGdELE9xZT1sKCgpPT57Z0Q9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIiLHJ5OiIyIn1dLFsicGF0aCIse2Q6Ik0xNiA4aC4wMSJ9XSxbInBhdGgiLHtkOiJNMTYgMTJoLjAxIn1dLFsicGF0aCIse2Q6Ik0xNiAxNmguMDEifV0sWyJwYXRoIix7ZDoiTTggOGguMDEifV0sWyJwYXRoIix7ZDoiTTggMTJoLjAxIn1dLFsicGF0aCIse2Q6Ik04IDE2aC4wMSJ9XV19KTt2YXIgeEQsUnFlPWwoKCk9Pnt4RD1bWyJyZWN0Iix7d2lkdGg6IjEyIixoZWlnaHQ6IjEyIix4OiIyIix5OiIxMCIscng6IjIiLHJ5OiIyIn1dLFsicGF0aCIse2Q6Im0xNy45MiAxNCAzLjUtMy41YTIuMjQgMi4yNCAwIDAgMCAwLTNsLTUtNC45MmEyLjI0IDIuMjQgMCAwIDAtMyAwTDEwIDYifV0sWyJwYXRoIix7ZDoiTTYgMThoLjAxIn1dLFsicGF0aCIse2Q6Ik0xMCAxNGguMDEifV0sWyJwYXRoIix7ZDoiTTE1IDZoLjAxIn1dLFsicGF0aCIse2Q6Ik0xOCA5aC4wMSJ9XV19KTt2YXIgYkQsQnFlPWwoKCk9PntiRD1bWyJwYXRoIix7ZDoiTTEyIDN2MTQifV0sWyJwYXRoIix7ZDoiTTUgMTBoMTQifV0sWyJwYXRoIix7ZDoiTTUgMjFoMTQifV1dfSk7dmFyIHZELEhxZT1sKCgpPT57dkQ9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjEwIn1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjQifV0sWyJwYXRoIix7ZDoiTTEyIDEyaC4wMSJ9XV19KTt2YXIgeUQscXFlPWwoKCk9Pnt5RD1bWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiIzIixyeDoiMiJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiI1In1dLFsicGF0aCIse2Q6Ik0xMiAxMmguMDEifV1dfSk7dmFyIHdELGpxZT1sKCgpPT57d0Q9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjEwIn1dLFsicGF0aCIse2Q6Ik02IDEyYzAtMS43LjctMy4yIDEuOC00LjIifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMiJ9XSxbInBhdGgiLHtkOiJNMTggMTJjMCAxLjctLjcgMy4yLTEuOCA0LjIifV1dfSk7dmFyIE1ELFZxZT1sKCgpPT57TUQ9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjEwIn1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjIifV1dfSk7dmFyIGtELFVxZT1sKCgpPT57a0Q9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiNiIscjoiMSJ9XSxbImxpbmUiLHt4MToiNSIseDI6IjE5Iix5MToiMTIiLHkyOiIxMiJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjE4IixyOiIxIn1dXX0pO3ZhciBTRCxXcWU9bCgoKT0+e1NEPVtbInBhdGgiLHtkOiJNMTUgMmMtMS4zNSAxLjUtMi4wOTIgMy0yLjUgNC41TDE0IDgifV0sWyJwYXRoIix7ZDoibTE3IDYtMi44OTEtMi44OTEifV0sWyJwYXRoIix7ZDoiTTIgMTVjMy4zMzMtMyA2LjY2Ny0zIDEwLTMifV0sWyJwYXRoIix7ZDoibTIgMiAyMCAyMCJ9XSxbInBhdGgiLHtkOiJtMjAgOSAuODkxLjg5MSJ9XSxbInBhdGgiLHtkOiJNMjIgOWMtMS41IDEuMzUtMyAyLjA5Mi00LjUgMi41bC0xLTEifV0sWyJwYXRoIix7ZDoiTTMuMTA5IDE0LjEwOSA0IDE1In1dLFsicGF0aCIse2Q6Im02LjUgMTIuNSAxIDEifV0sWyJwYXRoIix7ZDoibTcgMTggMi44OTEgMi44OTEifV0sWyJwYXRoIix7ZDoiTTkgMjJjMS4zNS0xLjUgMi4wOTItMyAyLjUtNC41TDEwIDE2In1dXX0pO3ZhciB6RCxHcWU9bCgoKT0+e3pEPVtbInBhdGgiLHtkOiJNMiA4aDIwIn1dLFsicmVjdCIse3dpZHRoOiIyMCIsaGVpZ2h0OiIxNiIseDoiMiIseToiNCIscng6IjIifV0sWyJwYXRoIix7ZDoiTTYgMTZoMTIifV1dfSk7dmFyIENELFlxZT1sKCgpPT57Q0Q9W1sicGF0aCIse2Q6Im0xMCAxNiAxLjUgMS41In1dLFsicGF0aCIse2Q6Im0xNCA4LTEuNS0xLjUifV0sWyJwYXRoIix7ZDoiTTE1IDJjLTEuNzk4IDEuOTk4LTIuNTE4IDMuOTk1LTIuODA3IDUuOTkzIn1dLFsicGF0aCIse2Q6Im0xNi41IDEwLjUgMSAxIn1dLFsicGF0aCIse2Q6Im0xNyA2LTIuODkxLTIuODkxIn1dLFsicGF0aCIse2Q6Ik0yIDE1YzYuNjY3LTYgMTMuMzMzIDAgMjAtNiJ9XSxbInBhdGgiLHtkOiJtMjAgOSAuODkxLjg5MSJ9XSxbInBhdGgiLHtkOiJNMy4xMDkgMTQuMTA5IDQgMTUifV0sWyJwYXRoIix7ZDoibTYuNSAxMi41IDEgMSJ9XSxbInBhdGgiLHtkOiJtNyAxOCAyLjg5MSAyLjg5MSJ9XSxbInBhdGgiLHtkOiJNOSAyMmMxLjc5OC0xLjk5OCAyLjUxOC0zLjk5NSAyLjgwNy01Ljk5MyJ9XV19KTt2YXIgX0QsWnFlPWwoKCk9PntfRD1bWyJwYXRoIix7ZDoiTTExLjI1IDE2LjI1aDEuNUwxMiAxN3oifV0sWyJwYXRoIix7ZDoiTTE2IDE0di41In1dLFsicGF0aCIse2Q6Ik00LjQyIDExLjI0N0ExMy4xNTIgMTMuMTUyIDAgMCAwIDQgMTQuNTU2QzQgMTguNzI4IDcuNTgyIDIxIDEyIDIxczgtMi4yNzIgOC02LjQ0NGExMS43MDIgMTEuNzAyIDAgMCAwLS40OTMtMy4zMDkifV0sWyJwYXRoIix7ZDoiTTggMTR2LjUifV0sWyJwYXRoIix7ZDoiTTguNSA4LjVjLS4zODQgMS4wNS0xLjA4MyAyLjAyOC0yLjM0NCAyLjUtMS45MzEuNzIyLTMuNTc2LS4yOTctMy42NTYtMS0uMTEzLS45OTQgMS4xNzctNi41MyA0LTcgMS45MjMtLjMyMSAzLjY1MS44NDUgMy42NTEgMi4yMzVBNy40OTcgNy40OTcgMCAwIDEgMTQgNS4yNzdjMC0xLjM5IDEuODQ0LTIuNTk4IDMuNzY3LTIuMjc3IDIuODIzLjQ3IDQuMTEzIDYuMDA2IDQgNy0uMDguNzAzLTEuNzI1IDEuNzIyLTMuNjU2IDEtMS4yNjEtLjQ3Mi0xLjg1NS0xLjQ1LTIuMjM5LTIuNSJ9XV19KTt2YXIgVEQsWHFlPWwoKCk9PntURD1bWyJsaW5lIix7eDE6IjEyIix4MjoiMTIiLHkxOiIyIix5MjoiMjIifV0sWyJwYXRoIix7ZDoiTTE3IDVIOS41YTMuNSAzLjUgMCAwIDAgMCA3aDVhMy41IDMuNSAwIDAgMSAwIDdINiJ9XV19KTt2YXIgTEQsUXFlPWwoKCk9PntMRD1bWyJwYXRoIix7ZDoiTTIwLjUgMTBhMi41IDIuNSAwIDAgMS0yLjQtM0gxOGEyLjk1IDIuOTUgMCAwIDEtMi42LTQuNCAxMCAxMCAwIDEgMCA2LjMgNy4xYy0uMy4yLS44LjMtMS4yLjMifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMyJ9XV19KTt2YXIgREQsS3FlPWwoKCk9PntERD1bWyJwYXRoIix7ZDoiTTEwIDEyaC4wMSJ9XSxbInBhdGgiLHtkOiJNMTggMjBWNmEyIDIgMCAwIDAtMi0ySDhhMiAyIDAgMCAwLTIgMnYxNCJ9XSxbInBhdGgiLHtkOiJNMiAyMGgyMCJ9XV19KTt2YXIgQUQsSnFlPWwoKCk9PntBRD1bWyJwYXRoIix7ZDoiTTEwIDEyaC4wMSJ9XSxbInBhdGgiLHtkOiJNMTggOVY2YTIgMiAwIDAgMC0yLTJIOGEyIDIgMCAwIDAtMiAydjE0In1dLFsicGF0aCIse2Q6Ik0yIDIwaDgifV0sWyJwYXRoIix7ZDoiTTIwIDE3di0yYTIgMiAwIDEgMC00IDB2MiJ9XSxbInJlY3QiLHt4OiIxNCIseToiMTciLHdpZHRoOiI4IixoZWlnaHQ6IjUiLHJ4OiIxIn1dXX0pO3ZhciBFRCxlamU9bCgoKT0+e0VEPVtbInBhdGgiLHtkOiJNMTEgMjBIMiJ9XSxbInBhdGgiLHtkOiJNMTEgNC41NjJ2MTYuMTU3YTEgMSAwIDAgMCAxLjI0Mi45N0wxOSAyMFY1LjU2MmEyIDIgMCAwIDAtMS41MTUtMS45NGwtNC0xQTIgMiAwIDAgMCAxMSA0LjU2MXoifV0sWyJwYXRoIix7ZDoiTTExIDRIOGEyIDIgMCAwIDAtMiAydjE0In1dLFsicGF0aCIse2Q6Ik0xNCAxMmguMDEifV0sWyJwYXRoIix7ZDoiTTIyIDIwaC0zIn1dXX0pO3ZhciAkRCx0amU9bCgoKT0+eyREPVtbImNpcmNsZSIse2N4OiIxMi4xIixjeToiMTIuMSIscjoiMSJ9XV19KTt2YXIgUEQscmplPWwoKCk9PntQRD1bWyJwYXRoIix7ZDoiTTEyIDE1VjMifV0sWyJwYXRoIix7ZDoiTTIxIDE1djRhMiAyIDAgMCAxLTIgMkg1YTIgMiAwIDAgMS0yLTJ2LTQifV0sWyJwYXRoIix7ZDoibTcgMTAgNSA1IDUtNSJ9XV19KTt2YXIgSUQsYWplPWwoKCk9PntJRD1bWyJwYXRoIix7ZDoiTTEwIDExaC4wMSJ9XSxbInBhdGgiLHtkOiJNMTQgNmguMDEifV0sWyJwYXRoIix7ZDoiTTE4IDZoLjAxIn1dLFsicGF0aCIse2Q6Ik02LjUgMTMuMWguMDEifV0sWyJwYXRoIix7ZDoiTTIyIDVjMCA5LTQgMTItNiAxMnMtNi0zLTYtMTJjMC0yIDItMyA2LTNzNiAxIDYgMyJ9XSxbInBhdGgiLHtkOiJNMTcuNCA5LjljLS44LjgtMiAuOC0yLjggMCJ9XSxbInBhdGgiLHtkOiJNMTAuMSA3LjFDOSA3LjIgNy43IDcuNyA2IDguNmMtMy41IDItNC43IDMuOS0zLjcgNS42IDQuNSA3LjggOS41IDguNCAxMS4yIDcuNC45LS41IDEuOS0yLjEgMS45LTQuNyJ9XSxbInBhdGgiLHtkOiJNOS4xIDE2LjVjLjMtMS4xIDEuNC0xLjcgMi40LTEuNCJ9XV19KTt2YXIgTkQsaWplPWwoKCk9PntORD1bWyJwYXRoIix7ZDoibTEyLjk5IDYuNzQgMS45MyAzLjQ0In1dLFsicGF0aCIse2Q6Ik0xOS4xMzYgMTJhMTAgMTAgMCAwIDEtMTQuMjcxIDAifV0sWyJwYXRoIix7ZDoibTIxIDIxLTIuMTYtMy44NCJ9XSxbInBhdGgiLHtkOiJtMyAyMSA4LjAyLTE0LjI2In1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiNSIscjoiMiJ9XV19KTt2YXIgRkQsb2plPWwoKCk9PntGRD1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMTAifV0sWyJwYXRoIix7ZDoiTTE5LjEzIDUuMDlDMTUuMjIgOS4xNCAxMCAxMC40NCAyLjI1IDEwLjk0In1dLFsicGF0aCIse2Q6Ik0yMS43NSAxMi44NGMtNi42Mi0xLjQxLTEyLjE0IDEtMTYuMzggNi4zMiJ9XSxbInBhdGgiLHtkOiJNOC41NiAyLjc1YzQuMzcgNiA2IDkuNDIgOCAxNy43MiJ9XV19KTt2YXIgT0QsbmplPWwoKCk9PntPRD1bWyJwYXRoIix7ZDoiTTEwIDE4YTEgMSAwIDAgMSAxIDF2MmExIDEgMCAwIDEtMSAxSDVhMyAzIDAgMCAxLTMtMyAxIDEgMCAwIDEgMS0xeiJ9XSxbInBhdGgiLHtkOiJNMTMgMTBINGEyIDIgMCAwIDEtMi0yVjRhMiAyIDAgMCAxIDItMmg5YTEgMSAwIDAgMSAxIDF2NmExIDEgMCAwIDEtMSAxbC0uODEgMy4yNDJhMSAxIDAgMCAxLS45Ny43NThIOCJ9XSxbInBhdGgiLHtkOiJNMTQgNGgzYTEgMSAwIDAgMSAxIDF2MmExIDEgMCAwIDEtMSAxaC0zIn1dLFsicGF0aCIse2Q6Ik0xOCA2aDQifV0sWyJwYXRoIix7ZDoibTUgMTAtMiA4In1dLFsicGF0aCIse2Q6Im03IDE4IDItOCJ9XV19KTt2YXIgUkQsc2plPWwoKCk9PntSRD1bWyJwYXRoIix7ZDoiTTEwIDEwIDcgNyJ9XSxbInBhdGgiLHtkOiJtMTAgMTQtMyAzIn1dLFsicGF0aCIse2Q6Im0xNCAxMCAzLTMifV0sWyJwYXRoIix7ZDoibTE0IDE0IDMgMyJ9XSxbInBhdGgiLHtkOiJNMTQuMjA1IDQuMTM5YTQgNCAwIDEgMSA1LjQzOSA1Ljg2MyJ9XSxbInBhdGgiLHtkOiJNMTkuNjM3IDE0YTQgNCAwIDEgMS01LjQzMiA1Ljg2OCJ9XSxbInBhdGgiLHtkOiJNNC4zNjcgMTBhNCA0IDAgMSAxIDUuNDM4LTUuODYyIn1dLFsicGF0aCIse2Q6Ik05Ljc5NSAxOS44NjJhNCA0IDAgMSAxLTUuNDI5LTUuODczIn1dLFsicmVjdCIse3g6IjEwIix5OiI4Iix3aWR0aDoiNCIsaGVpZ2h0OiI4IixyeDoiMSJ9XV19KTt2YXIgQkQsbGplPWwoKCk9PntCRD1bWyJwYXRoIix7ZDoiTTEyIDIyYTcgNyAwIDAgMCA3LTdjMC0yLTEtMy45LTMtNS41cy0zLjUtNC00LTYuNWMtLjUgMi41LTIgNC45LTQgNi41QzYgMTEuMSA1IDEzIDUgMTVhNyA3IDAgMCAwIDcgN3oifV1dfSk7dmFyIEhELGNqZT1sKCgpPT57SEQ9W1sicGF0aCIse2Q6Ik0xOC43MTUgMTMuMTg2QzE4LjI5IDExLjg1OCAxNy4zODQgMTAuNjA3IDE2IDkuNWMtMi0xLjYtMy41LTQtNC02LjVhMTAuNyAxMC43IDAgMCAxLS44ODQgMi41ODYifV0sWyJwYXRoIix7ZDoibTIgMiAyMCAyMCJ9XSxbInBhdGgiLHtkOiJNOC43OTUgOC43OTdBMTEgMTEgMCAwIDEgOCA5LjVDNiAxMS4xIDUgMTMgNSAxNWE3IDcgMCAwIDAgMTMuMjIyIDMuMjA4In1dXX0pO3ZhciBxRCxkamU9bCgoKT0+e3FEPVtbInBhdGgiLHtkOiJNNyAxNi4zYzIuMiAwIDQtMS44MyA0LTQuMDUgMC0xLjE2LS41Ny0yLjI2LTEuNzEtMy4xOVM3LjI5IDYuNzUgNyA1LjNjLS4yOSAxLjQ1LTEuMTQgMi44NC0yLjI5IDMuNzZTMyAxMS4xIDMgMTIuMjVjMCAyLjIyIDEuOCA0LjA1IDQgNC4wNXoifV0sWyJwYXRoIix7ZDoiTTEyLjU2IDYuNkExMC45NyAxMC45NyAwIDAgMCAxNCAzLjAyYy41IDIuNSAyIDQuOSA0IDYuNXMzIDMuNSAzIDUuNWE2Ljk4IDYuOTggMCAwIDEtMTEuOTEgNC45NyJ9XV19KTt2YXIgakQsdWplPWwoKCk9PntqRD1bWyJwYXRoIix7ZDoibTIgMiA4IDgifV0sWyJwYXRoIix7ZDoibTIyIDItOCA4In1dLFsiZWxsaXBzZSIse2N4OiIxMiIsY3k6IjkiLHJ4OiIxMCIscnk6IjUifV0sWyJwYXRoIix7ZDoiTTcgMTMuNHY3LjkifV0sWyJwYXRoIix7ZDoiTTEyIDE0djgifV0sWyJwYXRoIix7ZDoiTTE3IDEzLjR2Ny45In1dLFsicGF0aCIse2Q6Ik0yIDl2OGExMCA1IDAgMCAwIDIwIDBWOSJ9XV19KTt2YXIgVkQsZmplPWwoKCk9PntWRD1bWyJwYXRoIix7ZDoiTTE1LjQgMTUuNjNhNy44NzUgNiAxMzUgMSAxIDYuMjMtNi4yMyA0LjUgMy40MyAxMzUgMCAwLTYuMjMgNi4yMyJ9XSxbInBhdGgiLHtkOiJtOC4yOSAxMi43MS0yLjYgMi42YTIuNSAyLjUgMCAxIDAtMS42NSA0LjY1QTIuNSAyLjUgMCAxIDAgOC43IDE4LjNsMi41OS0yLjU5In1dXX0pO3ZhciBVRCxwamU9bCgoKT0+e1VEPVtbInBhdGgiLHtkOiJNMTcuNTk2IDEyLjc2OGEyIDIgMCAxIDAgMi44MjktMi44MjlsLTEuNzY4LTEuNzY3YTIgMiAwIDAgMCAyLjgyOC0yLjgyOWwtMi44MjgtMi44MjhhMiAyIDAgMCAwLTIuODI5IDIuODI4bC0xLjc2Ny0xLjc2OGEyIDIgMCAxIDAtMi44MjkgMi44Mjl6In1dLFsicGF0aCIse2Q6Im0yLjUgMjEuNSAxLjQtMS40In1dLFsicGF0aCIse2Q6Im0yMC4xIDMuOSAxLjQtMS40In1dLFsicGF0aCIse2Q6Ik01LjM0MyAyMS40ODVhMiAyIDAgMSAwIDIuODI5LTIuODI4bDEuNzY3IDEuNzY4YTIgMiAwIDEgMCAyLjgyOS0yLjgyOWwtNi4zNjQtNi4zNjRhMiAyIDAgMSAwLTIuODI5IDIuODI5bDEuNzY4IDEuNzY3YTIgMiAwIDAgMC0yLjgyOCAyLjgyOXoifV0sWyJwYXRoIix7ZDoibTkuNiAxNC40IDQuOC00LjgifV1dfSk7dmFyIFdELGhqZT1sKCgpPT57V0Q9W1sicGF0aCIse2Q6Ik02IDE4LjVhMy41IDMuNSAwIDEgMCA3IDBjMC0xLjU3LjkyLTIuNTIgMi4wNC0zLjQ2In1dLFsicGF0aCIse2Q6Ik02IDguNWMwLS43NS4xMy0xLjQ3LjM2LTIuMTQifV0sWyJwYXRoIix7ZDoiTTguOCAzLjE1QTYuNSA2LjUgMCAwIDEgMTkgOC41YzAgMS42My0uNDQgMi44MS0xLjA5IDMuNzYifV0sWyJwYXRoIix7ZDoiTTEyLjUgNkEyLjUgMi41IDAgMCAxIDE1IDguNU0xMCAxM2EyIDIgMCAwIDAgMS44Mi0xLjE4In1dLFsibGluZSIse3gxOiIyIix4MjoiMjIiLHkxOiIyIix5MjoiMjIifV1dfSk7dmFyIEdELG1qZT1sKCgpPT57R0Q9W1sicGF0aCIse2Q6Ik02IDguNWE2LjUgNi41IDAgMSAxIDEzIDBjMCA2LTYgNi02IDEwYTMuNSAzLjUgMCAxIDEtNyAwIn1dLFsicGF0aCIse2Q6Ik0xNSA4LjVhMi41IDIuNSAwIDAgMC01IDB2MWEyIDIgMCAxIDEgMCA0In1dXX0pO3ZhciB6ZixnamU9bCgoKT0+e3pmPVtbInBhdGgiLHtkOiJNMjEuNTQgMTVIMTdhMiAyIDAgMCAwLTIgMnY0LjU0In1dLFsicGF0aCIse2Q6Ik03IDMuMzRWNWEzIDMgMCAwIDAgMyAzYTIgMiAwIDAgMSAyIDJjMCAxLjEuOSAyIDIgMmEyIDIgMCAwIDAgMi0yYzAtMS4xLjktMiAyLTJoMy4xNyJ9XSxbInBhdGgiLHtkOiJNMTEgMjEuOTVWMThhMiAyIDAgMCAwLTItMmEyIDIgMCAwIDEtMi0ydi0xYTIgMiAwIDAgMC0yLTJIMi4wNSJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XV19KTt2YXIgWUQseGplPWwoKCk9PntZRD1bWyJwYXRoIix7ZDoiTTcgMy4zNFY1YTMgMyAwIDAgMCAzIDMifV0sWyJwYXRoIix7ZDoiTTExIDIxLjk1VjE4YTIgMiAwIDAgMC0yLTIgMiAyIDAgMCAxLTItMnYtMWEyIDIgMCAwIDAtMi0ySDIuMDUifV0sWyJwYXRoIix7ZDoiTTIxLjU0IDE1SDE3YTIgMiAwIDAgMC0yIDJ2NC41NCJ9XSxbInBhdGgiLHtkOiJNMTIgMmExMCAxMCAwIDEgMCA5LjU0IDEzIn1dLFsicGF0aCIse2Q6Ik0yMCA2VjRhMiAyIDAgMSAwLTQgMHYyIn1dLFsicmVjdCIse3dpZHRoOiI4IixoZWlnaHQ6IjUiLHg6IjE0Iix5OiI2IixyeDoiMSJ9XV19KTt2YXIgWkQsYmplPWwoKCk9PntaRD1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMTAifV0sWyJwYXRoIix7ZDoiTTEyIDJhNyA3IDAgMSAwIDEwIDEwIn1dXX0pO3ZhciBYRCx2amU9bCgoKT0+e1hEPVtbInBhdGgiLHtkOiJtMiAyIDIwIDIwIn1dLFsicGF0aCIse2Q6Ik0yMCAxNC4zNDdWMTRjMC02LTQtMTItOC0xMi0xLjA3OCAwLTIuMTU3LjQzNi0zLjE1NyAxLjE5In1dLFsicGF0aCIse2Q6Ik02LjIwNiA2LjIxQzQuODcxIDguNCA0IDExLjIgNCAxNGE4IDggMCAwIDAgMTQuNTY4IDQuNTY4In1dXX0pO3ZhciBRRCx5amU9bCgoKT0+e1FEPVtbImNpcmNsZSIse2N4OiIxMS41IixjeToiMTIuNSIscjoiMy41In1dLFsicGF0aCIse2Q6Ik0zIDhjMC0zLjUgMi41LTYgNi41LTYgNSAwIDQuODMgMyA3LjUgNXM1IDIgNSA2YzAgNC41LTIuNSA2LjUtNyA2LjUtMi41IDAtMi41IDIuNS02IDIuNXMtNy0yLTctNS41YzAtMyAxLjUtMyAxLjUtNUMzLjUgMTAgMyA5IDMgOFoifV1dfSk7dmFyIEtELHdqZT1sKCgpPT57S0Q9W1sicGF0aCIse2Q6Ik0xMiAyQzggMiA0IDggNCAxNGE4IDggMCAwIDAgMTYgMGMwLTYtNC0xMi04LTEyIn1dXX0pO3ZhciBKRCxNamU9bCgoKT0+e0pEPVtbImVsbGlwc2UiLHtjeDoiMTIiLGN5OiIxMiIscng6IjEwIixyeToiNiJ9XV19KTt2YXIgQ2Ysa2plPWwoKCk9PntDZj1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMSJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjUiLHI6IjEifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxOSIscjoiMSJ9XV19KTt2YXIgX2YsU2plPWwoKCk9PntfZj1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMSJ9XSxbImNpcmNsZSIse2N4OiIxOSIsY3k6IjEyIixyOiIxIn1dLFsiY2lyY2xlIix7Y3g6IjUiLGN5OiIxMiIscjoiMSJ9XV19KTt2YXIgZUEsemplPWwoKCk9PntlQT1bWyJwYXRoIix7ZDoiTTUgMTVhNi41IDYuNSAwIDAgMSA3IDAgNi41IDYuNSAwIDAgMCA3IDAifV0sWyJwYXRoIix7ZDoiTTUgOWE2LjUgNi41IDAgMCAxIDcgMCA2LjUgNi41IDAgMCAwIDcgMCJ9XV19KTt2YXIgdEEsQ2plPWwoKCk9Pnt0QT1bWyJsaW5lIix7eDE6IjUiLHgyOiIxOSIseTE6IjkiLHkyOiI5In1dLFsibGluZSIse3gxOiI1Iix4MjoiMTkiLHkxOiIxNSIseTI6IjE1In1dLFsibGluZSIse3gxOiIxOSIseDI6IjUiLHkxOiI1Iix5MjoiMTkifV1dfSk7dmFyIHJBLF9qZT1sKCgpPT57ckE9W1sibGluZSIse3gxOiI1Iix4MjoiMTkiLHkxOiI5Iix5MjoiOSJ9XSxbImxpbmUiLHt4MToiNSIseDI6IjE5Iix5MToiMTUiLHkyOiIxNSJ9XV19KTt2YXIgYUEsVGplPWwoKCk9PnthQT1bWyJwYXRoIix7ZDoiTTIxIDIxSDhhMiAyIDAgMCAxLTEuNDItLjU4N2wtMy45OTQtMy45OTlhMiAyIDAgMCAxIDAtMi44MjhsMTAtMTBhMiAyIDAgMCAxIDIuODI5IDBsNS45OTkgNmEyIDIgMCAwIDEgMCAyLjgyOEwxMi44MzQgMjEifV0sWyJwYXRoIix7ZDoibTUuMDgyIDExLjA5IDguODI4IDguODI4In1dXX0pO3ZhciBpQSxMamU9bCgoKT0+e2lBPVtbInBhdGgiLHtkOiJtMTUgMjAgMy0zaDJhMiAyIDAgMCAwIDItMlY2YTIgMiAwIDAgMC0yLTJINGEyIDIgMCAwIDAtMiAydjlhMiAyIDAgMCAwIDIgMmgybDMgM3oifV0sWyJwYXRoIix7ZDoiTTYgOHYxIn1dLFsicGF0aCIse2Q6Ik0xMCA4djEifV0sWyJwYXRoIix7ZDoiTTE0IDh2MSJ9XSxbInBhdGgiLHtkOiJNMTggOHYxIn1dXX0pO3ZhciBvQSxEamU9bCgoKT0+e29BPVtbInBhdGgiLHtkOiJNNCAxMGgxMiJ9XSxbInBhdGgiLHtkOiJNNCAxNGg5In1dLFsicGF0aCIse2Q6Ik0xOSA2YTcuNyA3LjcgMCAwIDAtNS4yLTJBNy45IDcuOSAwIDAgMCA2IDEyYzAgNC40IDMuNSA4IDcuOCA4IDIgMCAzLjgtLjggNS4yLTIifV1dfSk7dmFyIG5BLEFqZT1sKCgpPT57bkE9W1sicGF0aCIse2Q6Im0xNSAxNSA2IDYifV0sWyJwYXRoIix7ZDoibTE1IDkgNi02In1dLFsicGF0aCIse2Q6Ik0yMSAxNnY1aC01In1dLFsicGF0aCIse2Q6Ik0yMSA4VjNoLTUifV0sWyJwYXRoIix7ZDoiTTMgMTZ2NWg1In1dLFsicGF0aCIse2Q6Im0zIDIxIDYtNiJ9XSxbInBhdGgiLHtkOiJNMyA4VjNoNSJ9XSxbInBhdGgiLHtkOiJNOSA5IDMgMyJ9XV19KTt2YXIgc0EsRWplPWwoKCk9PntzQT1bWyJwYXRoIix7ZDoiTTE0IDEzaDJhMiAyIDAgMCAxIDIgMnYyYTIgMiAwIDAgMCA0IDB2LTYuOTk4YTIgMiAwIDAgMC0uNTktMS40MkwxOCA1In1dLFsicGF0aCIse2Q6Ik0xNCAyMVY1YTIgMiAwIDAgMC0yLTJINWEyIDIgMCAwIDAtMiAydjE2In1dLFsicGF0aCIse2Q6Ik0yIDIxaDEzIn1dLFsicGF0aCIse2Q6Ik0zIDdoMTEifV0sWyJwYXRoIix7ZDoibTkgMTEtMiAzaDNsLTIgMyJ9XV19KTt2YXIgbEEsJGplPWwoKCk9PntsQT1bWyJwYXRoIix7ZDoiTTE1IDNoNnY2In1dLFsicGF0aCIse2Q6Ik0xMCAxNCAyMSAzIn1dLFsicGF0aCIse2Q6Ik0xOCAxM3Y2YTIgMiAwIDAgMS0yIDJINWEyIDIgMCAwIDEtMi0yVjhhMiAyIDAgMCAxIDItMmg2In1dXX0pO3ZhciBjQSxQamU9bCgoKT0+e2NBPVtbInBhdGgiLHtkOiJNMTAuNzMzIDUuMDc2YTEwLjc0NCAxMC43NDQgMCAwIDEgMTEuMjA1IDYuNTc1IDEgMSAwIDAgMSAwIC42OTYgMTAuNzQ3IDEwLjc0NyAwIDAgMS0xLjQ0NCAyLjQ5In1dLFsicGF0aCIse2Q6Ik0xNC4wODQgMTQuMTU4YTMgMyAwIDAgMS00LjI0Mi00LjI0MiJ9XSxbInBhdGgiLHtkOiJNMTcuNDc5IDE3LjQ5OWExMC43NSAxMC43NSAwIDAgMS0xNS40MTctNS4xNTEgMSAxIDAgMCAxIDAtLjY5NiAxMC43NSAxMC43NSAwIDAgMSA0LjQ0Ni01LjE0MyJ9XSxbInBhdGgiLHtkOiJtMiAyIDIwIDIwIn1dXX0pO3ZhciBkQSxJamU9bCgoKT0+e2RBPVtbInBhdGgiLHtkOiJtMTUgMTgtLjcyMi0zLjI1In1dLFsicGF0aCIse2Q6Ik0yIDhhMTAuNjQ1IDEwLjY0NSAwIDAgMCAyMCAwIn1dLFsicGF0aCIse2Q6Im0yMCAxNS0xLjcyNi0yLjA1In1dLFsicGF0aCIse2Q6Im00IDE1IDEuNzI2LTIuMDUifV0sWyJwYXRoIix7ZDoibTkgMTggLjcyMi0zLjI1In1dXX0pO3ZhciB1QSxOamU9bCgoKT0+e3VBPVtbInBhdGgiLHtkOiJNMi4wNjIgMTIuMzQ4YTEgMSAwIDAgMSAwLS42OTYgMTAuNzUgMTAuNzUgMCAwIDEgMTkuODc2IDAgMSAxIDAgMCAxIDAgLjY5NiAxMC43NSAxMC43NSAwIDAgMS0xOS44NzYgMCJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIzIn1dXX0pO3ZhciBmQSxGamU9bCgoKT0+e2ZBPVtbInBhdGgiLHtkOiJNMTggMmgtM2E1IDUgMCAwIDAtNSA1djNIN3Y0aDN2OGg0di04aDNsMS00aC00VjdhMSAxIDAgMCAxIDEtMWgzeiJ9XV19KTt2YXIgcEEsT2plPWwoKCk9PntwQT1bWyJwYXRoIix7ZDoiTTEyIDE2aC4wMSJ9XSxbInBhdGgiLHtkOiJNMTYgMTZoLjAxIn1dLFsicGF0aCIse2Q6Ik0zIDE5YTIgMiAwIDAgMCAyIDJoMTRhMiAyIDAgMCAwIDItMlY4LjVhLjUuNSAwIDAgMC0uNzY5LS40MjJsLTQuNDYyIDIuODQ0QS41LjUgMCAwIDEgMTUgMTAuNXYtMmEuNS41IDAgMCAwLS43NjktLjQyMkw5Ljc3IDEwLjkyMkEuNS41IDAgMCAxIDkgMTAuNVY1YTIgMiAwIDAgMC0yLTJINWEyIDIgMCAwIDAtMiAyeiJ9XSxbInBhdGgiLHtkOiJNOCAxNmguMDEifV1dfSk7dmFyIGhBLFJqZT1sKCgpPT57aEE9W1sicGF0aCIse2Q6Ik0xMC44MjcgMTYuMzc5YTYuMDgyIDYuMDgyIDAgMCAxLTguNjE4LTcuMDAybDUuNDEyIDEuNDVhNi4wODIgNi4wODIgMCAwIDEgNy4wMDItOC42MThsLTEuNDUgNS40MTJhNi4wODIgNi4wODIgMCAwIDEgOC42MTggNy4wMDJsLTUuNDEyLTEuNDVhNi4wODIgNi4wODIgMCAwIDEtNy4wMDIgOC42MThsMS40NS01LjQxMloifV0sWyJwYXRoIix7ZDoiTTEyIDEydi4wMSJ9XV19KTt2YXIgbUEsQmplPWwoKCk9PnttQT1bWyJwYXRoIix7ZDoiTTEyIDZhMiAyIDAgMCAxIDMuNDE0LTEuNDE0bDYgNmEyIDIgMCAwIDEgMCAyLjgyOGwtNiA2QTIgMiAwIDAgMSAxMiAxOHoifV0sWyJwYXRoIix7ZDoiTTIgNmEyIDIgMCAwIDEgMy40MTQtMS40MTRsNiA2YTIgMiAwIDAgMSAwIDIuODI4bC02IDZBMiAyIDAgMCAxIDIgMTh6In1dXX0pO3ZhciBnQSxIamU9bCgoKT0+e2dBPVtbInBhdGgiLHtkOiJNMTIuNjcgMTlhMiAyIDAgMCAwIDEuNDE2LS41ODhsNi4xNTQtNi4xNzJhNiA2IDAgMCAwLTguNDktOC40OUw1LjU4NiA5LjkxNEEyIDIgMCAwIDAgNSAxMS4zMjhWMThhMSAxIDAgMCAwIDEgMXoifV0sWyJwYXRoIix7ZDoiTTE2IDggMiAyMiJ9XSxbInBhdGgiLHtkOiJNMTcuNSAxNUg5In1dXX0pO3ZhciB4QSxxamU9bCgoKT0+e3hBPVtbInBhdGgiLHtkOiJNNCAzIDIgNXYxNWMwIC42LjQgMSAxIDFoMmMuNiAwIDEtLjQgMS0xVjVaIn1dLFsicGF0aCIse2Q6Ik02IDhoNCJ9XSxbInBhdGgiLHtkOiJNNiAxOGg0In1dLFsicGF0aCIse2Q6Im0xMiAzLTIgMnYxNWMwIC42LjQgMSAxIDFoMmMuNiAwIDEtLjQgMS0xVjVaIn1dLFsicGF0aCIse2Q6Ik0xNCA4aDQifV0sWyJwYXRoIix7ZDoiTTE0IDE4aDQifV0sWyJwYXRoIix7ZDoibTIwIDMtMiAydjE1YzAgLjYuNCAxIDEgMWgyYy42IDAgMS0uNCAxLTFWNVoifV1dfSk7dmFyIGJBLGpqZT1sKCgpPT57YkE9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjIifV0sWyJwYXRoIix7ZDoiTTEyIDJ2NCJ9XSxbInBhdGgiLHtkOiJtNi44IDE1LTMuNSAyIn1dLFsicGF0aCIse2Q6Im0yMC43IDctMy41IDIifV0sWyJwYXRoIix7ZDoiTTYuOCA5IDMuMyA3In1dLFsicGF0aCIse2Q6Im0yMC43IDE3LTMuNS0yIn1dLFsicGF0aCIse2Q6Im05IDIyIDMtOCAzIDgifV0sWyJwYXRoIix7ZDoiTTggMjJoOCJ9XSxbInBhdGgiLHtkOiJNMTggMTguN2E5IDkgMCAxIDAtMTIgMCJ9XV19KTt2YXIgdkEsVmplPWwoKCk9Pnt2QT1bWyJwYXRoIix7ZDoiTTUgNS41QTMuNSAzLjUgMCAwIDEgOC41IDJIMTJ2N0g4LjVBMy41IDMuNSAwIDAgMSA1IDUuNXoifV0sWyJwYXRoIix7ZDoiTTEyIDJoMy41YTMuNSAzLjUgMCAxIDEgMCA3SDEyVjJ6In1dLFsicGF0aCIse2Q6Ik0xMiAxMi41YTMuNSAzLjUgMCAxIDEgNyAwIDMuNSAzLjUgMCAxIDEtNyAweiJ9XSxbInBhdGgiLHtkOiJNNSAxOS41QTMuNSAzLjUgMCAwIDEgOC41IDE2SDEydjMuNWEzLjUgMy41IDAgMSAxLTcgMHoifV0sWyJwYXRoIix7ZDoiTTUgMTIuNUEzLjUgMy41IDAgMCAxIDguNSA5SDEydjdIOC41QTMuNSAzLjUgMCAwIDEgNSAxMi41eiJ9XV19KTt2YXIgeUEsVWplPWwoKCk9Pnt5QT1bWyJwYXRoIix7ZDoiTTEzLjY1OSAyMkgxOGEyIDIgMCAwIDAgMi0yVjhhMi40IDIuNCAwIDAgMC0uNzA2LTEuNzA2bC0zLjU4OC0zLjU4OEEyLjQgMi40IDAgMCAwIDE0IDJINmEyIDIgMCAwIDAtMiAydjExLjUifV0sWyJwYXRoIix7ZDoiTTE0IDJ2NWExIDEgMCAwIDAgMSAxaDUifV0sWyJwYXRoIix7ZDoiTTggMTJ2LTEifV0sWyJwYXRoIix7ZDoiTTggMTh2LTIifV0sWyJwYXRoIix7ZDoiTTggN1Y2In1dLFsiY2lyY2xlIix7Y3g6IjgiLGN5OiIyMCIscjoiMiJ9XV19KTt2YXIgVGYsV2plPWwoKCk9PntUZj1bWyJwYXRoIix7ZDoiTTYgMjJhMiAyIDAgMCAxLTItMlY0YTIgMiAwIDAgMSAyLTJoOGEyLjQgMi40IDAgMCAxIDEuNzA0LjcwNmwzLjU4OCAzLjU4OEEyLjQgMi40IDAgMCAxIDIwIDh2MTJhMiAyIDAgMCAxLTIgMnoifV0sWyJwYXRoIix7ZDoiTTE0IDJ2NWExIDEgMCAwIDAgMSAxaDUifV0sWyJwYXRoIix7ZDoibTggMTggNC00In1dLFsicGF0aCIse2Q6Ik04IDEwdjhoOCJ9XV19KTt2YXIgTGYsR2plPWwoKCk9PntMZj1bWyJwYXRoIix7ZDoiTTEzIDIyaDVhMiAyIDAgMCAwIDItMlY4YTIuNCAyLjQgMCAwIDAtLjcwNi0xLjcwNmwtMy41ODgtMy41ODhBMi40IDIuNCAwIDAgMCAxNCAySDZhMiAyIDAgMCAwLTIgMnYzLjMifV0sWyJwYXRoIix7ZDoiTTE0IDJ2NWExIDEgMCAwIDAgMSAxaDUifV0sWyJwYXRoIix7ZDoibTcuNjkgMTYuNDc5IDEuMjkgNC44OGEuNS41IDAgMCAxLS42OTguNTkxbC0xLjg0My0uODQ5YTEgMSAwIDAgMC0uODc5LjAwMWwtMS44NDYuODVhLjUuNSAwIDAgMS0uNjkyLS41OTNsMS4yOS00Ljg4In1dLFsiY2lyY2xlIix7Y3g6IjYiLGN5OiIxNCIscjoiMyJ9XV19KTt2YXIgd0EsWWplPWwoKCk9Pnt3QT1bWyJwYXRoIix7ZDoiTTE0LjUgMjJIMThhMiAyIDAgMCAwIDItMlY4YTIuNCAyLjQgMCAwIDAtLjcwNi0xLjcwNmwtMy41ODgtMy41ODhBMi40IDIuNCAwIDAgMCAxNCAySDZhMiAyIDAgMCAwLTIgMnYzLjgifV0sWyJwYXRoIix7ZDoiTTE0IDJ2NWExIDEgMCAwIDAgMSAxaDUifV0sWyJwYXRoIix7ZDoiTTExLjcgMTQuMiA3IDE3bC00LjctMi44In1dLFsicGF0aCIse2Q6Ik0zIDEzLjFhMiAyIDAgMCAwLS45OTkgMS43NnYzLjI0YTIgMiAwIDAgMCAuOTY5IDEuNzhMNiAyMS43YTIgMiAwIDAgMCAyLjAzLjAxTDExIDE5LjlhMiAyIDAgMCAwIDEtMS43NlYxNC45YTIgMiAwIDAgMC0uOTctMS43OEw4IDExLjNhMiAyIDAgMCAwLTIuMDMtLjAxeiJ9XSxbInBhdGgiLHtkOiJNNyAxN3Y1In1dXX0pO3ZhciBEZixaamU9bCgoKT0+e0RmPVtbInBhdGgiLHtkOiJNMTQgMjJoNGEyIDIgMCAwIDAgMi0yVjhhMi40IDIuNCAwIDAgMC0uNzA2LTEuNzA2bC0zLjU4OC0zLjU4OEEyLjQgMi40IDAgMCAwIDE0IDJINmEyIDIgMCAwIDAtMiAydjYifV0sWyJwYXRoIix7ZDoiTTE0IDJ2NWExIDEgMCAwIDAgMSAxaDUifV0sWyJwYXRoIix7ZDoiTTUgMTRhMSAxIDAgMCAwLTEgMXYyYTEgMSAwIDAgMS0xIDEgMSAxIDAgMCAxIDEgMXYyYTEgMSAwIDAgMCAxIDEifV0sWyJwYXRoIix7ZDoiTTkgMjJhMSAxIDAgMCAwIDEtMXYtMmExIDEgMCAwIDEgMS0xIDEgMSAwIDAgMS0xLTF2LTJhMSAxIDAgMCAwLTEtMSJ9XV19KTt2YXIgQWYsWGplPWwoKCk9PntBZj1bWyJwYXRoIix7ZDoiTTYgMjJhMiAyIDAgMCAxLTItMlY0YTIgMiAwIDAgMSAyLTJoOGEyLjQgMi40IDAgMCAxIDEuNzA0LjcwNmwzLjU4OCAzLjU4OEEyLjQgMi40IDAgMCAxIDIwIDh2MTJhMiAyIDAgMCAxLTIgMnoifV0sWyJwYXRoIix7ZDoiTTE0IDJ2NWExIDEgMCAwIDAgMSAxaDUifV0sWyJwYXRoIix7ZDoiTTEwIDEyYTEgMSAwIDAgMC0xIDF2MWExIDEgMCAwIDEtMSAxIDEgMSAwIDAgMSAxIDF2MWExIDEgMCAwIDAgMSAxIn1dLFsicGF0aCIse2Q6Ik0xNCAxOGExIDEgMCAwIDAgMS0xdi0xYTEgMSAwIDAgMSAxLTEgMSAxIDAgMCAxLTEtMXYtMWExIDEgMCAwIDAtMS0xIn1dXX0pO3ZhciBFZixRamU9bCgoKT0+e0VmPVtbInBhdGgiLHtkOiJNNiAyMmEyIDIgMCAwIDEtMi0yVjRhMiAyIDAgMCAxIDItMmg4YTIuNCAyLjQgMCAwIDEgMS43MDQuNzA2bDMuNTg4IDMuNTg4QTIuNCAyLjQgMCAwIDEgMjAgOHYxMmEyIDIgMCAwIDEtMiAyeiJ9XSxbInBhdGgiLHtkOiJNMTQgMnY1YTEgMSAwIDAgMCAxIDFoNSJ9XSxbInBhdGgiLHtkOiJNOCAxOHYtMiJ9XSxbInBhdGgiLHtkOiJNMTIgMTh2LTQifV0sWyJwYXRoIix7ZDoiTTE2IDE4di02In1dXX0pO3ZhciAkZixLamU9bCgoKT0+eyRmPVtbInBhdGgiLHtkOiJNNiAyMmEyIDIgMCAwIDEtMi0yVjRhMiAyIDAgMCAxIDItMmg4YTIuNCAyLjQgMCAwIDEgMS43MDQuNzA2bDMuNTg4IDMuNTg4QTIuNCAyLjQgMCAwIDEgMjAgOHYxMmEyIDIgMCAwIDEtMiAyeiJ9XSxbInBhdGgiLHtkOiJNMTQgMnY1YTEgMSAwIDAgMCAxIDFoNSJ9XSxbInBhdGgiLHtkOiJNOCAxOHYtMSJ9XSxbInBhdGgiLHtkOiJNMTIgMTh2LTYifV0sWyJwYXRoIix7ZDoiTTE2IDE4di0zIn1dXX0pO3ZhciBQZixKamU9bCgoKT0+e1BmPVtbInBhdGgiLHtkOiJNNiAyMmEyIDIgMCAwIDEtMi0yVjRhMiAyIDAgMCAxIDItMmg4YTIuNCAyLjQgMCAwIDEgMS43MDQuNzA2bDMuNTg4IDMuNTg4QTIuNCAyLjQgMCAwIDEgMjAgOHYxMmEyIDIgMCAwIDEtMiAyeiJ9XSxbInBhdGgiLHtkOiJNMTQgMnY1YTEgMSAwIDAgMCAxIDFoNSJ9XSxbInBhdGgiLHtkOiJtMTYgMTMtMy41IDMuNS0yLTJMOCAxNyJ9XV19KTt2YXIgSWYsZVZlPWwoKCk9PntJZj1bWyJwYXRoIix7ZDoiTTE1Ljk0MSAyMkgxOGEyIDIgMCAwIDAgMi0yVjhhMi40IDIuNCAwIDAgMC0uNzA2LTEuNzA0bC0zLjU4OC0zLjU4OEEyLjQgMi40IDAgMCAwIDE0IDJINmEyIDIgMCAwIDAtMiAydjMuNTEyIn1dLFsicGF0aCIse2Q6Ik0xNCAydjVhMSAxIDAgMCAwIDEgMWg1In1dLFsicGF0aCIse2Q6Ik00LjAxNyAxMS41MTJhNiA2IDAgMSAwIDguNDY2IDguNDc1In1dLFsicGF0aCIse2Q6Ik05IDE2YTEgMSAwIDAgMS0xLTF2LTRjMC0uNTUyLjQ1LTEuMDA4Ljk5NS0uOTE3YTYgNiAwIDAgMSA0LjkyMiA0LjkyMmMuMDkxLjU0NC0uMzY1Ljk5NS0uOTE3Ljk5NXoifV1dfSk7dmFyIE5mLHRWZT1sKCgpPT57TmY9W1sicGF0aCIse2Q6Ik0xMC41IDIySDZhMiAyIDAgMCAxLTItMlY0YTIgMiAwIDAgMSAyLTJoOGEyLjQgMi40IDAgMCAxIDEuNzA2LjcwNmwzLjU4OCAzLjU4OEEyLjQgMi40IDAgMCAxIDIwIDh2NiJ9XSxbInBhdGgiLHtkOiJNMTQgMnY1YTEgMSAwIDAgMCAxIDFoNSJ9XSxbInBhdGgiLHtkOiJtMTQgMjAgMiAyIDQtNCJ9XV19KTt2YXIgTUEsclZlPWwoKCk9PntNQT1bWyJwYXRoIix7ZDoiTTYgMjJhMiAyIDAgMCAxLTItMlY0YTIgMiAwIDAgMSAyLTJoOGEyLjQgMi40IDAgMCAxIDEuNzA0LjcwNmwzLjU4OCAzLjU4OEEyLjQgMi40IDAgMCAxIDIwIDh2MTJhMiAyIDAgMCAxLTIgMnoifV0sWyJwYXRoIix7ZDoiTTE0IDJ2NWExIDEgMCAwIDAgMSAxaDUifV0sWyJwYXRoIix7ZDoibTkgMTUgMiAyIDQtNCJ9XV19KTt2YXIgRmYsYVZlPWwoKCk9PntGZj1bWyJwYXRoIix7ZDoiTTQgMTIuMTVWNGEyIDIgMCAwIDEgMi0yaDhhMi40IDIuNCAwIDAgMSAxLjcwNi43MDZsMy41ODggMy41ODhBMi40IDIuNCAwIDAgMSAyMCA4djEyYTIgMiAwIDAgMS0yIDJoLTMuMzUifV0sWyJwYXRoIix7ZDoiTTE0IDJ2NWExIDEgMCAwIDAgMSAxaDUifV0sWyJwYXRoIix7ZDoibTUgMTYtMyAzIDMgMyJ9XSxbInBhdGgiLHtkOiJtOSAyMiAzLTMtMy0zIn1dXX0pO3ZhciBrQSxpVmU9bCgoKT0+e2tBPVtbInBhdGgiLHtkOiJNMTYgMjJoMmEyIDIgMCAwIDAgMi0yVjhhMi40IDIuNCAwIDAgMC0uNzA2LTEuNzA2bC0zLjU4OC0zLjU4OEEyLjQgMi40IDAgMCAwIDE0IDJINmEyIDIgMCAwIDAtMiAydjIuODUifV0sWyJwYXRoIix7ZDoiTTE0IDJ2NWExIDEgMCAwIDAgMSAxaDUifV0sWyJwYXRoIix7ZDoiTTggMTR2Mi4ybDEuNiAxIn1dLFsiY2lyY2xlIix7Y3g6IjgiLGN5OiIxNiIscjoiNiJ9XV19KTt2YXIgU0Esb1ZlPWwoKCk9PntTQT1bWyJwYXRoIix7ZDoiTTYgMjJhMiAyIDAgMCAxLTItMlY0YTIgMiAwIDAgMSAyLTJoOGEyLjQgMi40IDAgMCAxIDEuNzA0LjcwNmwzLjU4OCAzLjU4OEEyLjQgMi40IDAgMCAxIDIwIDh2MTJhMiAyIDAgMCAxLTIgMnoifV0sWyJwYXRoIix7ZDoiTTE0IDJ2NWExIDEgMCAwIDAgMSAxaDUifV0sWyJwYXRoIix7ZDoiTTEwIDEyLjUgOCAxNWwyIDIuNSJ9XSxbInBhdGgiLHtkOiJtMTQgMTIuNSAyIDIuNS0yIDIuNSJ9XV19KTt2YXIgT2YsblZlPWwoKCk9PntPZj1bWyJwYXRoIix7ZDoiTTE1IDhhMSAxIDAgMCAxLTEtMVYyYTIuNCAyLjQgMCAwIDEgMS43MDQuNzA2bDMuNTg4IDMuNTg4QTIuNCAyLjQgMCAwIDEgMjAgOHoifV0sWyJwYXRoIix7ZDoiTTIwIDh2MTJhMiAyIDAgMCAxLTIgMmgtNC4xODIifV0sWyJwYXRoIix7ZDoibTMuMzA1IDE5LjUzLjkyMy0uMzgyIn1dLFsicGF0aCIse2Q6Ik00IDEwLjU5MlY0YTIgMiAwIDAgMSAyLTJoOCJ9XSxbInBhdGgiLHtkOiJtNC4yMjggMTYuODUyLS45MjQtLjM4MyJ9XSxbInBhdGgiLHtkOiJtNS44NTIgMTUuMjI4LS4zODMtLjkyMyJ9XSxbInBhdGgiLHtkOiJtNS44NTIgMjAuNzcyLS4zODMuOTI0In1dLFsicGF0aCIse2Q6Im04LjE0OCAxNS4yMjguMzgzLS45MjMifV0sWyJwYXRoIix7ZDoibTguNTMgMjEuNjk2LS4zODItLjkyNCJ9XSxbInBhdGgiLHtkOiJtOS43NzMgMTYuODUyLjkyMi0uMzgzIn1dLFsicGF0aCIse2Q6Im05Ljc3MyAxOS4xNDguOTIyLjM4MyJ9XSxbImNpcmNsZSIse2N4OiI3IixjeToiMTgiLHI6IjMifV1dfSk7dmFyIHpBLHNWZT1sKCgpPT57ekE9W1sicGF0aCIse2Q6Ik00IDEyVjRhMiAyIDAgMCAxIDItMmg4YTIuNCAyLjQgMCAwIDEgMS43MDYuNzA2bDMuNTg4IDMuNTg4QTIuNCAyLjQgMCAwIDEgMjAgOHYxMmEyIDIgMCAwIDEtMiAyIn1dLFsicGF0aCIse2Q6Ik0xNCAydjVhMSAxIDAgMCAwIDEgMWg1In1dLFsicGF0aCIse2Q6Ik0xMCAxNmgydjYifV0sWyJwYXRoIix7ZDoiTTEwIDIyaDQifV0sWyJyZWN0Iix7eDoiMiIseToiMTYiLHdpZHRoOiI0IixoZWlnaHQ6IjYiLHJ4OiIyIn1dXX0pO3ZhciBDQSxsVmU9bCgoKT0+e0NBPVtbInBhdGgiLHtkOiJNNiAyMmEyIDIgMCAwIDEtMi0yVjRhMiAyIDAgMCAxIDItMmg4YTIuNCAyLjQgMCAwIDEgMS43MDQuNzA2bDMuNTg4IDMuNTg4QTIuNCAyLjQgMCAwIDEgMjAgOHYxMmEyIDIgMCAwIDEtMiAyeiJ9XSxbInBhdGgiLHtkOiJNOSAxMGg2In1dLFsicGF0aCIse2Q6Ik0xMiAxM1Y3In1dLFsicGF0aCIse2Q6Ik05IDE3aDYifV1dfSk7dmFyIF9BLGNWZT1sKCgpPT57X0E9W1sicGF0aCIse2Q6Ik02IDIyYTIgMiAwIDAgMS0yLTJWNGEyIDIgMCAwIDEgMi0yaDhhMi40IDIuNCAwIDAgMSAxLjcwNC43MDZsMy41ODggMy41ODhBMi40IDIuNCAwIDAgMSAyMCA4djEyYTIgMiAwIDAgMS0yIDJ6In1dLFsicGF0aCIse2Q6Ik0xNCAydjVhMSAxIDAgMCAwIDEgMWg1In1dLFsicGF0aCIse2Q6Ik0xMiAxOHYtNiJ9XSxbInBhdGgiLHtkOiJtOSAxNSAzIDMgMy0zIn1dXX0pO3ZhciBSZixkVmU9bCgoKT0+e1JmPVtbInBhdGgiLHtkOiJNNiAyMmEyIDIgMCAwIDEtMi0yVjRhMiAyIDAgMCAxIDItMmg4YTIuNCAyLjQgMCAwIDEgMS43MDQuNzA2bDMuNTg4IDMuNTg4QTIuNCAyLjQgMCAwIDEgMjAgOHYxMmEyIDIgMCAwIDEtMiAyeiJ9XSxbInBhdGgiLHtkOiJNMTIgOXY0In1dLFsicGF0aCIse2Q6Ik0xMiAxN2guMDEifV1dfSk7dmFyIExjLHVWZT1sKCgpPT57TGM9W1sicGF0aCIse2Q6Ik00IDYuODM1VjRhMiAyIDAgMCAxIDItMmg4YTIuNCAyLjQgMCAwIDEgMS43MDYuNzA2bDMuNTg4IDMuNTg4QTIuNCAyLjQgMCAwIDEgMjAgOHYxMmEyIDIgMCAwIDEtMiAyaC0uMzQzIn1dLFsicGF0aCIse2Q6Ik0xNCAydjVhMSAxIDAgMCAwIDEgMWg1In1dLFsicGF0aCIse2Q6Ik0yIDE5YTIgMiAwIDAgMSA0IDB2MWEyIDIgMCAwIDEtNCAwdi00YTYgNiAwIDAgMSAxMiAwdjRhMiAyIDAgMCAxLTQgMHYtMWEyIDIgMCAwIDEgNCAwIn1dXX0pO3ZhciBUQSxmVmU9bCgoKT0+e1RBPVtbInBhdGgiLHtkOiJNMTMgMjJoNWEyIDIgMCAwIDAgMi0yVjhhMi40IDIuNCAwIDAgMC0uNzA2LTEuNzA2bC0zLjU4OC0zLjU4OEEyLjQgMi40IDAgMCAwIDE0IDJINmEyIDIgMCAwIDAtMiAydjcifV0sWyJwYXRoIix7ZDoiTTE0IDJ2NWExIDEgMCAwIDAgMSAxaDUifV0sWyJwYXRoIix7ZDoiTTMuNjIgMTguOEEyLjI1IDIuMjUgMCAxIDEgNyAxNS44MzZhMi4yNSAyLjI1IDAgMSAxIDMuMzggMi45NjZsLTIuNjI2IDIuODU2YTEgMSAwIDAgMS0xLjUwNyAweiJ9XV19KTt2YXIgTEEscFZlPWwoKCk9PntMQT1bWyJwYXRoIix7ZDoiTTYgMjJhMiAyIDAgMCAxLTItMlY0YTIgMiAwIDAgMSAyLTJoOGEyLjQgMi40IDAgMCAxIDEuNzA0LjcwNmwzLjU4OCAzLjU4OEEyLjQgMi40IDAgMCAxIDIwIDh2MTJhMiAyIDAgMCAxLTIgMnoifV0sWyJwYXRoIix7ZDoiTTE0IDJ2NWExIDEgMCAwIDAgMSAxaDUifV0sWyJjaXJjbGUiLHtjeDoiMTAiLGN5OiIxMiIscjoiMiJ9XSxbInBhdGgiLHtkOiJtMjAgMTctMS4yOTYtMS4yOTZhMi40MSAyLjQxIDAgMCAwLTMuNDA4IDBMOSAyMiJ9XV19KTt2YXIgREEsaFZlPWwoKCk9PntEQT1bWyJwYXRoIix7ZDoiTTQgMTFWNGEyIDIgMCAwIDEgMi0yaDhhMi40IDIuNCAwIDAgMSAxLjcwNi43MDZsMy41ODggMy41ODhBMi40IDIuNCAwIDAgMSAyMCA4djEyYTIgMiAwIDAgMS0yIDJINmEyIDIgMCAwIDEtMi0ydi0xIn1dLFsicGF0aCIse2Q6Ik0xNCAydjVhMSAxIDAgMCAwIDEgMWg1In1dLFsicGF0aCIse2Q6Ik0yIDE1aDEwIn1dLFsicGF0aCIse2Q6Im05IDE4IDMtMy0zLTMifV1dfSk7dmFyIEJmLG1WZT1sKCgpPT57QmY9W1sicGF0aCIse2Q6Ik00IDkuOFY0YTIgMiAwIDAgMSAyLTJoOGEyLjQgMi40IDAgMCAxIDEuNzA2LjcwNmwzLjU4OCAzLjU4OEEyLjQgMi40IDAgMCAxIDIwIDh2MTJhMiAyIDAgMCAxLTIgMmgtMyJ9XSxbInBhdGgiLHtkOiJNMTQgMnY1YTEgMSAwIDAgMCAxIDFoNSJ9XSxbInBhdGgiLHtkOiJNOSAxN3YtMmEyIDIgMCAwIDAtNCAwdjIifV0sWyJyZWN0Iix7d2lkdGg6IjgiLGhlaWdodDoiNSIseDoiMyIseToiMTciLHJ4OiIxIn1dXX0pO3ZhciBIZixnVmU9bCgoKT0+e0hmPVtbInBhdGgiLHtkOiJNMTQgMnY1YTEgMSAwIDAgMCAxIDFoNSJ9XSxbInBhdGgiLHtkOiJNNCAxMnY2In1dLFsicGF0aCIse2Q6Ik00IDE0aDIifV0sWyJwYXRoIix7ZDoiTTkuNjUgMjJIMThhMiAyIDAgMCAwIDItMlY4YTIuNCAyLjQgMCAwIDAtLjcwNi0xLjcwNmwtMy41ODgtMy41ODhBMi40IDIuNCAwIDAgMCAxNCAySDZhMiAyIDAgMCAwLTIgMnY0In1dLFsiY2lyY2xlIix7Y3g6IjQiLGN5OiIyMCIscjoiMiJ9XV19KTt2YXIgcWYseFZlPWwoKCk9PntxZj1bWyJwYXRoIix7ZDoiTTIwIDE0VjhhMi40IDIuNCAwIDAgMC0uNzA2LTEuNzA2bC0zLjU4OC0zLjU4OEEyLjQgMi40IDAgMCAwIDE0IDJINmEyIDIgMCAwIDAtMiAydjE2YTIgMiAwIDAgMCAyIDJoMTIifV0sWyJwYXRoIix7ZDoiTTE0IDJ2NWExIDEgMCAwIDAgMSAxaDUifV0sWyJwYXRoIix7ZDoiTTE0IDE4aDYifV1dfSk7dmFyIEFBLGJWZT1sKCgpPT57QUE9W1sicGF0aCIse2Q6Ik02IDIyYTIgMiAwIDAgMS0yLTJWNGEyIDIgMCAwIDEgMi0yaDhhMi40IDIuNCAwIDAgMSAxLjcwNC43MDZsMy41ODggMy41ODhBMi40IDIuNCAwIDAgMSAyMCA4djEyYTIgMiAwIDAgMS0yIDJ6In1dLFsicGF0aCIse2Q6Ik0xNCAydjVhMSAxIDAgMCAwIDEgMWg1In1dLFsicGF0aCIse2Q6Ik05IDE1aDYifV1dfSk7dmFyIEVBLHZWZT1sKCgpPT57RUE9W1sicGF0aCIse2Q6Ik0xMS42NSAyMkgxOGEyIDIgMCAwIDAgMi0yVjhhMi40IDIuNCAwIDAgMC0uNzA2LTEuNzA2bC0zLjU4OC0zLjU4OEEyLjQgMi40IDAgMCAwIDE0IDJINmEyIDIgMCAwIDAtMiAydjEwLjM1In1dLFsicGF0aCIse2Q6Ik0xNCAydjVhMSAxIDAgMCAwIDEgMWg1In1dLFsicGF0aCIse2Q6Ik04IDIwdi03bDMgMS40NzQifV0sWyJjaXJjbGUiLHtjeDoiNiIsY3k6IjIwIixyOiIyIn1dXX0pO3ZhciAkQSx5VmU9bCgoKT0+eyRBPVtbInBhdGgiLHtkOiJNNC4yMjYgMjAuOTI1QTIgMiAwIDAgMCA2IDIyaDEyYTIgMiAwIDAgMCAyLTJWOGEyLjQgMi40IDAgMCAwLS43MDYtMS43MDZsLTMuNTg4LTMuNTg4QTIuNCAyLjQgMCAwIDAgMTQgMkg2YTIgMiAwIDAgMC0yIDJ2My4xMjcifV0sWyJwYXRoIix7ZDoiTTE0IDJ2NWExIDEgMCAwIDAgMSAxaDUifV0sWyJwYXRoIix7ZDoibTUgMTEtMyAzIn1dLFsicGF0aCIse2Q6Im01IDE3LTMtM2gxMCJ9XV19KTt2YXIgamYsd1ZlPWwoKCk9PntqZj1bWyJwYXRoIix7ZDoiTTE0LjM2NCAxMy42MzRhMiAyIDAgMCAwLS41MDYuODU0bC0uODM3IDIuODdhLjUuNSAwIDAgMCAuNjIuNjJsMi44Ny0uODM3YTIgMiAwIDAgMCAuODU0LS41MDZsNC4wMTMtNC4wMDlhMSAxIDAgMCAwLTMuMDA0LTMuMDA0eiJ9XSxbInBhdGgiLHtkOiJNMTQuNDg3IDcuODU4QTEgMSAwIDAgMSAxNCA3VjIifV0sWyJwYXRoIix7ZDoiTTIwIDE5LjY0NVYyMGEyIDIgMCAwIDEtMiAySDZhMiAyIDAgMCAxLTItMlY0YTIgMiAwIDAgMSAyLTJoOGEyLjQgMi40IDAgMCAxIDEuNzA0LjcwNmwyLjUxNiAyLjUxNiJ9XSxbInBhdGgiLHtkOiJNOCAxOGgxIn1dXX0pO3ZhciBWZixNVmU9bCgoKT0+e1ZmPVtbInBhdGgiLHtkOiJNMTIuNjU5IDIySDE4YTIgMiAwIDAgMCAyLTJWOGEyLjQgMi40IDAgMCAwLS43MDYtMS43MDZsLTMuNTg4LTMuNTg4QTIuNCAyLjQgMCAwIDAgMTQgMkg2YTIgMiAwIDAgMC0yIDJ2OS4zNCJ9XSxbInBhdGgiLHtkOiJNMTQgMnY1YTEgMSAwIDAgMCAxIDFoNSJ9XSxbInBhdGgiLHtkOiJNMTAuMzc4IDEyLjYyMmExIDEgMCAwIDEgMyAzLjAwM0w4LjM2IDIwLjYzN2EyIDIgMCAwIDEtLjg1NC41MDZsLTIuODY3LjgzN2EuNS41IDAgMCAxLS42Mi0uNjJsLjgzNi0yLjg2OWEyIDIgMCAwIDEgLjUwNi0uODUzeiJ9XV19KTt2YXIgVWYsa1ZlPWwoKCk9PntVZj1bWyJwYXRoIix7ZDoiTTYgMjJhMiAyIDAgMCAxLTItMlY0YTIgMiAwIDAgMSAyLTJoOGEyLjQgMi40IDAgMCAxIDEuNzA0LjcwNmwzLjU4OCAzLjU4OEEyLjQgMi40IDAgMCAxIDIwIDh2MTJhMiAyIDAgMCAxLTIgMnoifV0sWyJwYXRoIix7ZDoiTTE0IDJ2NWExIDEgMCAwIDAgMSAxaDUifV0sWyJwYXRoIix7ZDoiTTE1LjAzMyAxMy40NGEuNjQ3LjY0NyAwIDAgMSAwIDEuMTJsLTQuMDY1IDIuMzUyYS42NDUuNjQ1IDAgMCAxLS45NjgtLjU2di00LjcwNGEuNjQ1LjY0NSAwIDAgMSAuOTY3LS41NnoifV1dfSk7dmFyIFdmLFNWZT1sKCgpPT57V2Y9W1sicGF0aCIse2Q6Ik0xMS4zNSAyMkg2YTIgMiAwIDAgMS0yLTJWNGEyIDIgMCAwIDEgMi0yaDhhMi40IDIuNCAwIDAgMSAxLjcwNi43MDZsMy41ODggMy41ODhBMi40IDIuNCAwIDAgMSAyMCA4djUuMzUifV0sWyJwYXRoIix7ZDoiTTE0IDJ2NWExIDEgMCAwIDAgMSAxaDUifV0sWyJwYXRoIix7ZDoiTTE0IDE5aDYifV0sWyJwYXRoIix7ZDoiTTE3IDE2djYifV1dfSk7dmFyIFBBLHpWZT1sKCgpPT57UEE9W1sicGF0aCIse2Q6Ik02IDIyYTIgMiAwIDAgMS0yLTJWNGEyIDIgMCAwIDEgMi0yaDhhMi40IDIuNCAwIDAgMSAxLjcwNC43MDZsMy41ODggMy41ODhBMi40IDIuNCAwIDAgMSAyMCA4djEyYTIgMiAwIDAgMS0yIDJ6In1dLFsicGF0aCIse2Q6Ik0xNCAydjVhMSAxIDAgMCAwIDEgMWg1In1dLFsicGF0aCIse2Q6Ik05IDE1aDYifV0sWyJwYXRoIix7ZDoiTTEyIDE4di02In1dXX0pO3ZhciBHZixDVmU9bCgoKT0+e0dmPVtbInBhdGgiLHtkOiJNNiAyMmEyIDIgMCAwIDEtMi0yVjRhMiAyIDAgMCAxIDItMmg4YTIuNCAyLjQgMCAwIDEgMS43MDQuNzA2bDMuNTg4IDMuNTg4QTIuNCAyLjQgMCAwIDEgMjAgOHYxMmEyIDIgMCAwIDEtMiAyeiJ9XSxbInBhdGgiLHtkOiJNMTIgMTdoLjAxIn1dLFsicGF0aCIse2Q6Ik05LjEgOWEzIDMgMCAwIDEgNS44MiAxYzAgMi0zIDMtMyAzIn1dXX0pO3ZhciBJQSxfVmU9bCgoKT0+e0lBPVtbInBhdGgiLHtkOiJNMjAgMTBWOGEyLjQgMi40IDAgMCAwLS43MDYtMS43MDRsLTMuNTg4LTMuNTg4QTIuNCAyLjQgMCAwIDAgMTQgMkg2YTIgMiAwIDAgMC0yIDJ2MTZhMiAyIDAgMCAwIDIgMmg0LjM1In1dLFsicGF0aCIse2Q6Ik0xNCAydjVhMSAxIDAgMCAwIDEgMWg1In1dLFsicGF0aCIse2Q6Ik0xNiAxNGEyIDIgMCAwIDAtMiAyIn1dLFsicGF0aCIse2Q6Ik0xNiAyMmEyIDIgMCAwIDEtMi0yIn1dLFsicGF0aCIse2Q6Ik0yMCAxNGEyIDIgMCAwIDEgMiAyIn1dLFsicGF0aCIse2Q6Ik0yMCAyMmEyIDIgMCAwIDAgMi0yIn1dXX0pO3ZhciBZZixUVmU9bCgoKT0+e1lmPVtbInBhdGgiLHtkOiJNMTEuMSAyMkg2YTIgMiAwIDAgMS0yLTJWNGEyIDIgMCAwIDEgMi0yaDhhMi40IDIuNCAwIDAgMSAxLjcwNi43MDZsMy41ODkgMy41ODhBMi40IDIuNCAwIDAgMSAyMCA4djMuMjUifV0sWyJwYXRoIix7ZDoiTTE0IDJ2NWExIDEgMCAwIDAgMSAxaDUifV0sWyJwYXRoIix7ZDoibTIxIDIyLTIuODgtMi44OCJ9XSxbImNpcmNsZSIse2N4OiIxNiIsY3k6IjE3IixyOiIzIn1dXX0pO3ZhciBOQSxMVmU9bCgoKT0+e05BPVtbInBhdGgiLHtkOiJNNiAyMmEyIDIgMCAwIDEtMi0yVjRhMiAyIDAgMCAxIDItMmg4YTIuNCAyLjQgMCAwIDEgMS43MDQuNzA2bDMuNTg4IDMuNTg4QTIuNCAyLjQgMCAwIDEgMjAgOHYxMmEyIDIgMCAwIDEtMiAyeiJ9XSxbInBhdGgiLHtkOiJNMTQgMnY1YTEgMSAwIDAgMCAxIDFoNSJ9XSxbImNpcmNsZSIse2N4OiIxMS41IixjeToiMTQuNSIscjoiMi41In1dLFsicGF0aCIse2Q6Ik0xMy4zIDE2LjMgMTUgMTgifV1dfSk7dmFyIFpmLERWZT1sKCgpPT57WmY9W1sicGF0aCIse2Q6Ik02IDIyYTIgMiAwIDAgMS0yLTJWNGEyIDIgMCAwIDEgMi0yaDhhMi40IDIuNCAwIDAgMSAxLjcwNC43MDZsMy41ODggMy41ODhBMi40IDIuNCAwIDAgMSAyMCA4djEyYTIgMiAwIDAgMS0yIDJ6In1dLFsicGF0aCIse2Q6Ik0xNCAydjVhMSAxIDAgMCAwIDEgMWg1In1dLFsicGF0aCIse2Q6Ik04IDE1aC4wMSJ9XSxbInBhdGgiLHtkOiJNMTEuNSAxMy41YTIuNSAyLjUgMCAwIDEgMCAzIn1dLFsicGF0aCIse2Q6Ik0xNSAxMmE1IDUgMCAwIDEgMCA2In1dXX0pO3ZhciBGQSxBVmU9bCgoKT0+e0ZBPVtbInBhdGgiLHtkOiJNNiAyMmEyIDIgMCAwIDEtMi0yVjRhMiAyIDAgMCAxIDItMmg4YTIuNCAyLjQgMCAwIDEgMS43MDQuNzA2bDMuNTg4IDMuNTg4QTIuNCAyLjQgMCAwIDEgMjAgOHYxMmEyIDIgMCAwIDEtMiAyeiJ9XSxbInBhdGgiLHtkOiJNMTQgMnY1YTEgMSAwIDAgMCAxIDFoNSJ9XSxbInBhdGgiLHtkOiJNOCAxMmg4In1dLFsicGF0aCIse2Q6Ik0xMCAxMXYyIn1dLFsicGF0aCIse2Q6Ik04IDE3aDgifV0sWyJwYXRoIix7ZDoiTTE0IDE2djIifV1dfSk7dmFyIE9BLEVWZT1sKCgpPT57T0E9W1sicGF0aCIse2Q6Ik02IDIyYTIgMiAwIDAgMS0yLTJWNGEyIDIgMCAwIDEgMi0yaDhhMi40IDIuNCAwIDAgMSAxLjcwNC43MDZsMy41ODggMy41ODhBMi40IDIuNCAwIDAgMSAyMCA4djEyYTIgMiAwIDAgMS0yIDJ6In1dLFsicGF0aCIse2Q6Ik0xNCAydjVhMSAxIDAgMCAwIDEgMWg1In1dLFsicGF0aCIse2Q6Ik04IDEzaDIifV0sWyJwYXRoIix7ZDoiTTE0IDEzaDIifV0sWyJwYXRoIix7ZDoiTTggMTdoMiJ9XSxbInBhdGgiLHtkOiJNMTQgMTdoMiJ9XV19KTt2YXIgUkEsJFZlPWwoKCk9PntSQT1bWyJwYXRoIix7ZDoiTTExIDIxYTEgMSAwIDAgMS0xIDFINGExIDEgMCAwIDEtMS0xdi04YTEgMSAwIDAgMSAxLTEifV0sWyJwYXRoIix7ZDoiTTE2IDE2YTEgMSAwIDAgMS0xIDFIOWExIDEgMCAwIDEtMS0xVjhhMSAxIDAgMCAxIDEtMSJ9XSxbInBhdGgiLHtkOiJNMjEgNmEyIDIgMCAwIDAtLjU4Ni0xLjQxNGwtMi0yQTIgMiAwIDAgMCAxNyAyaC0zYTEgMSAwIDAgMC0xIDF2OGExIDEgMCAwIDAgMSAxaDZhMSAxIDAgMCAwIDEtMXoifV1dfSk7dmFyIEJBLFBWZT1sKCgpPT57QkE9W1sicGF0aCIse2Q6Ik00IDExVjRhMiAyIDAgMCAxIDItMmg4YTIuNCAyLjQgMCAwIDEgMS43MDYuNzA2bDMuNTg4IDMuNTg4QTIuNCAyLjQgMCAwIDEgMjAgOHYxMmEyIDIgMCAwIDEtMiAySDZhMiAyIDAgMCAxLTItMnYtM2EyIDIgMCAwIDEgMi0yaDcifV0sWyJwYXRoIix7ZDoiTTE0IDJ2NWExIDEgMCAwIDAgMSAxaDUifV0sWyJwYXRoIix7ZDoibTEwIDE4IDMtMy0zLTMifV1dfSk7dmFyIEhBLElWZT1sKCgpPT57SEE9W1sicGF0aCIse2Q6Ik02IDIyYTIgMiAwIDAgMS0yLTJWNGEyIDIgMCAwIDEgMi0yaDhhMi40IDIuNCAwIDAgMSAxLjcwNC43MDZsMy41ODggMy41ODhBMi40IDIuNCAwIDAgMSAyMCA4djEyYTIgMiAwIDAgMS0yIDJ6In1dLFsicGF0aCIse2Q6Ik0xNCAydjVhMSAxIDAgMCAwIDEgMWg1In1dLFsicGF0aCIse2Q6Ik0xMCA5SDgifV0sWyJwYXRoIix7ZDoiTTE2IDEzSDgifV0sWyJwYXRoIix7ZDoiTTE2IDE3SDgifV1dfSk7dmFyIHFBLE5WZT1sKCgpPT57cUE9W1sicGF0aCIse2Q6Ik02IDIyYTIgMiAwIDAgMS0yLTJWNGEyIDIgMCAwIDEgMi0yaDhhMi40IDIuNCAwIDAgMSAxLjcwNC43MDZsMy41ODggMy41ODhBMi40IDIuNCAwIDAgMSAyMCA4djEyYTIgMiAwIDAgMS0yIDJ6In1dLFsicGF0aCIse2Q6Ik0xNCAydjVhMSAxIDAgMCAwIDEgMWg1In1dLFsicGF0aCIse2Q6Ik0xMSAxOGgyIn1dLFsicGF0aCIse2Q6Ik0xMiAxMnY2In1dLFsicGF0aCIse2Q6Ik05IDEzdi0uNWEuNS41IDAgMCAxIC41LS41aDVhLjUuNSAwIDAgMSAuNS41di41In1dXX0pO3ZhciBqQSxGVmU9bCgoKT0+e2pBPVtbInBhdGgiLHtkOiJNNiAyMmEyIDIgMCAwIDEtMi0yVjRhMiAyIDAgMCAxIDItMmg4YTIuNCAyLjQgMCAwIDEgMS43MDQuNzA2bDMuNTg4IDMuNTg4QTIuNCAyLjQgMCAwIDEgMjAgOHYxMmEyIDIgMCAwIDEtMiAyeiJ9XSxbInBhdGgiLHtkOiJNMTQgMnY1YTEgMSAwIDAgMCAxIDFoNSJ9XSxbInBhdGgiLHtkOiJtOCAxNiAyLTItMi0yIn1dLFsicGF0aCIse2Q6Ik0xMiAxOGg0In1dXX0pO3ZhciBYZixPVmU9bCgoKT0+e1hmPVtbInBhdGgiLHtkOiJNMTIgMjJoNmEyIDIgMCAwIDAgMi0yVjhhMi40IDIuNCAwIDAgMC0uNzA2LTEuNzA2bC0zLjU4OC0zLjU4OEEyLjQgMi40IDAgMCAwIDE0IDJINmEyIDIgMCAwIDAtMiAydjYifV0sWyJwYXRoIix7ZDoiTTE0IDJ2NWExIDEgMCAwIDAgMSAxaDUifV0sWyJwYXRoIix7ZDoiTTMgMTZ2LTEuNWEuNS41IDAgMCAxIC41LS41aDdhLjUuNSAwIDAgMSAuNS41VjE2In1dLFsicGF0aCIse2Q6Ik02IDIyaDIifV0sWyJwYXRoIix7ZDoiTTcgMTR2OCJ9XV19KTt2YXIgVkEsUlZlPWwoKCk9PntWQT1bWyJwYXRoIix7ZDoiTTYgMjJhMiAyIDAgMCAxLTItMlY0YTIgMiAwIDAgMSAyLTJoOGEyLjQgMi40IDAgMCAxIDEuNzA0LjcwNmwzLjU4OCAzLjU4OEEyLjQgMi40IDAgMCAxIDIwIDh2MTJhMiAyIDAgMCAxLTIgMnoifV0sWyJwYXRoIix7ZDoiTTE0IDJ2NWExIDEgMCAwIDAgMSAxaDUifV0sWyJwYXRoIix7ZDoiTTEyIDEydjYifV0sWyJwYXRoIix7ZDoibTE1IDE1LTMtMy0zIDMifV1dfSk7dmFyIFVBLEJWZT1sKCgpPT57VUE9W1sicGF0aCIse2Q6Ik02IDIyYTIgMiAwIDAgMS0yLTJWNGEyIDIgMCAwIDEgMi0yaDhhMi40IDIuNCAwIDAgMSAxLjcwNC43MDZsMy41ODggMy41ODhBMi40IDIuNCAwIDAgMSAyMCA4djEyYTIgMiAwIDAgMS0yIDJ6In1dLFsicGF0aCIse2Q6Ik0xNCAydjVhMSAxIDAgMCAwIDEgMWg1In1dLFsicGF0aCIse2Q6Ik0xNiAyMmE0IDQgMCAwIDAtOCAwIn1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiMTUiLHI6IjMifV1dfSk7dmFyIFFmLEhWZT1sKCgpPT57UWY9W1sicGF0aCIse2Q6Ik00IDEyVjRhMiAyIDAgMCAxIDItMmg4YTIuNCAyLjQgMCAwIDEgMS43MDYuNzA2bDMuNTg4IDMuNTg4QTIuNCAyLjQgMCAwIDEgMjAgOHYxMmEyIDIgMCAwIDEtMiAyIn1dLFsicGF0aCIse2Q6Ik0xNCAydjVhMSAxIDAgMCAwIDEgMWg1In1dLFsicGF0aCIse2Q6Im0xMCAxNy44NDMgMy4wMzMtMS43NTVhLjY0LjY0IDAgMCAxIC45NjcuNTZ2NC43MDRhLjY1LjY1IDAgMCAxLS45NjcuNTZMMTAgMjAuMTU3In1dLFsicmVjdCIse3dpZHRoOiI3IixoZWlnaHQ6IjYiLHg6IjMiLHk6IjE2IixyeDoiMSJ9XV19KTt2YXIgS2YscVZlPWwoKCk9PntLZj1bWyJwYXRoIix7ZDoiTTExIDIySDZhMiAyIDAgMCAxLTItMlY0YTIgMiAwIDAgMSAyLTJoOGEyLjQgMi40IDAgMCAxIDEuNzA2LjcwNmwzLjU4OCAzLjU4OEEyLjQgMi40IDAgMCAxIDIwIDh2NSJ9XSxbInBhdGgiLHtkOiJNMTQgMnY1YTEgMSAwIDAgMCAxIDFoNSJ9XSxbInBhdGgiLHtkOiJtMTUgMTcgNSA1In1dLFsicGF0aCIse2Q6Im0yMCAxNy01IDUifV1dfSk7dmFyIFdBLGpWZT1sKCgpPT57V0E9W1sicGF0aCIse2Q6Ik00IDExLjU1VjRhMiAyIDAgMCAxIDItMmg4YTIuNCAyLjQgMCAwIDEgMS43MDYuNzA2bDMuNTg4IDMuNTg4QTIuNCAyLjQgMCAwIDEgMjAgOHYxMmEyIDIgMCAwIDEtMiAyaC0xLjk1In1dLFsicGF0aCIse2Q6Ik0xNCAydjVhMSAxIDAgMCAwIDEgMWg1In1dLFsicGF0aCIse2Q6Ik0xMiAxNWE1IDUgMCAwIDEgMCA2In1dLFsicGF0aCIse2Q6Ik04IDE0LjUwMmEuNS41IDAgMCAwLS44MjYtLjM4MWwtMS44OTMgMS42MzFhMSAxIDAgMCAxLS42NTEuMjQzSDMuNWEuNS41IDAgMCAwLS41LjUwMXYzLjAwNmEuNS41IDAgMCAwIC41LjUwMWgxLjEyOWExIDEgMCAwIDEgLjY1Mi4yNDNsMS44OTMgMS42MzNhLjUuNSAwIDAgMCAuODI2LS4zOHoifV1dfSk7dmFyIEdBLFZWZT1sKCgpPT57R0E9W1sicGF0aCIse2Q6Ik02IDIyYTIgMiAwIDAgMS0yLTJWNGEyIDIgMCAwIDEgMi0yaDhhMi40IDIuNCAwIDAgMSAxLjcwNC43MDZsMy41ODggMy41ODhBMi40IDIuNCAwIDAgMSAyMCA4djEyYTIgMiAwIDAgMS0yIDJ6In1dLFsicGF0aCIse2Q6Ik0xNCAydjVhMSAxIDAgMCAwIDEgMWg1In1dLFsicGF0aCIse2Q6Im0xNC41IDEyLjUtNSA1In1dLFsicGF0aCIse2Q6Im05LjUgMTIuNSA1IDUifV1dfSk7dmFyIFlBLFVWZT1sKCgpPT57WUE9W1sicGF0aCIse2Q6Ik02IDIyYTIgMiAwIDAgMS0yLTJWNGEyIDIgMCAwIDEgMi0yaDhhMi40IDIuNCAwIDAgMSAxLjcwNC43MDZsMy41ODggMy41ODhBMi40IDIuNCAwIDAgMSAyMCA4djEyYTIgMiAwIDAgMS0yIDJ6In1dLFsicGF0aCIse2Q6Ik0xNCAydjVhMSAxIDAgMCAwIDEgMWg1In1dXX0pO3ZhciBaQSxXVmU9bCgoKT0+e1pBPVtbInBhdGgiLHtkOiJNMTUgMmgtNGEyIDIgMCAwIDAtMiAydjExYTIgMiAwIDAgMCAyIDJoOGEyIDIgMCAwIDAgMi0yVjgifV0sWyJwYXRoIix7ZDoiTTE2LjcwNiAyLjcwNkEyLjQgMi40IDAgMCAwIDE1IDJ2NWExIDEgMCAwIDAgMSAxaDVhMi40IDIuNCAwIDAgMC0uNzA2LTEuNzA2eiJ9XSxbInBhdGgiLHtkOiJNNSA3YTIgMiAwIDAgMC0yIDJ2MTFhMiAyIDAgMCAwIDIgMmg4YTIgMiAwIDAgMCAxLjczMi0xIn1dXX0pO3ZhciBYQSxHVmU9bCgoKT0+e1hBPVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik03IDN2MTgifV0sWyJwYXRoIix7ZDoiTTMgNy41aDQifV0sWyJwYXRoIix7ZDoiTTMgMTJoMTgifV0sWyJwYXRoIix7ZDoiTTMgMTYuNWg0In1dLFsicGF0aCIse2Q6Ik0xNyAzdjE4In1dLFsicGF0aCIse2Q6Ik0xNyA3LjVoNCJ9XSxbInBhdGgiLHtkOiJNMTcgMTYuNWg0In1dXX0pO3ZhciBKZixZVmU9bCgoKT0+e0pmPVtbInBhdGgiLHtkOiJNMTIgMTBhMiAyIDAgMCAwLTIgMmMwIDEuMDItLjEgMi41MS0uMjYgNCJ9XSxbInBhdGgiLHtkOiJNMTQgMTMuMTJjMCAyLjM4IDAgNi4zOC0xIDguODgifV0sWyJwYXRoIix7ZDoiTTE3LjI5IDIxLjAyYy4xMi0uNi40My0yLjMuNS0zLjAyIn1dLFsicGF0aCIse2Q6Ik0yIDEyYTEwIDEwIDAgMCAxIDE4LTYifV0sWyJwYXRoIix7ZDoiTTIgMTZoLjAxIn1dLFsicGF0aCIse2Q6Ik0yMS44IDE2Yy4yLTIgLjEzMS01LjM1NCAwLTYifV0sWyJwYXRoIix7ZDoiTTUgMTkuNUM1LjUgMTggNiAxNSA2IDEyYTYgNiAwIDAgMSAuMzQtMiJ9XSxbInBhdGgiLHtkOiJNOC42NSAyMmMuMjEtLjY2LjQ1LTEuMzIuNTctMiJ9XSxbInBhdGgiLHtkOiJNOSA2LjhhNiA2IDAgMCAxIDkgNS4ydjIifV1dfSk7dmFyIFFBLFpWZT1sKCgpPT57UUE9W1sicGF0aCIse2Q6Ik0xNSA2LjVWM2ExIDEgMCAwIDAtMS0xaC0yYTEgMSAwIDAgMC0xIDF2My41In1dLFsicGF0aCIse2Q6Ik05IDE4aDgifV0sWyJwYXRoIix7ZDoiTTE4IDNoLTMifV0sWyJwYXRoIix7ZDoiTTExIDNhNiA2IDAgMCAwLTYgNnYxMSJ9XSxbInBhdGgiLHtkOiJNNSAxM2g0In1dLFsicGF0aCIse2Q6Ik0xNyAxMGE0IDQgMCAwIDAtOCAwdjEwYTIgMiAwIDAgMCAyIDJoNGEyIDIgMCAwIDAgMi0yWiJ9XV19KTt2YXIgS0EsWFZlPWwoKCk9PntLQT1bWyJwYXRoIix7ZDoiTTE4IDEyLjQ3di4wM20wLS41di40N20tLjQ3NSA1LjA1NkE2Ljc0NCA2Ljc0NCAwIDAgMSAxNSAxOGMtMy41NiAwLTcuNTYtMi41My04LjUtNiAuMzQ4LTEuMjggMS4xMTQtMi40MzMgMi4xMjEtMy4zOG0zLjQ0NC0yLjA4OEE4LjgwMiA4LjgwMiAwIDAgMSAxNSA2YzMuNTYgMCA2LjA2IDIuNTQgNyA2LS4zMDkgMS4xNC0uNzg2IDIuMTc3LTEuNDEzIDMuMDU4In1dLFsicGF0aCIse2Q6Ik03IDEwLjY3QzcgOCA1LjU4IDUuOTcgMi43MyA1LjVjLTEgMS41LTEgNSAuMjMgNi41LTEuMjQgMS41LTEuMjQgNS0uMjMgNi41QzUuNTggMTguMDMgNyAxNiA3IDEzLjMzbTcuNDgtNC4zNzJBOS43NyA5Ljc3IDAgMCAxIDE2IDYuMDdtMCAxMS44NmE5Ljc3IDkuNzcgMCAwIDEtMS43MjgtMy42MTgifV0sWyJwYXRoIix7ZDoibTE2LjAxIDE3LjkzLS4yMyAxLjRBMiAyIDAgMCAxIDEzLjggMjFIOS41YTUuOTYgNS45NiAwIDAgMCAxLjQ5LTMuOThNOC41MyAzaDUuMjdhMiAyIDAgMCAxIDEuOTggMS42N2wuMjMgMS40TTIgMmwyMCAyMCJ9XV19KTt2YXIgSkEsUVZlPWwoKCk9PntKQT1bWyJwYXRoIix7ZDoiTTIgMTZzOS0xNSAyMC00QzExIDIzIDIgOCAyIDgifV1dfSk7dmFyIGVFLEtWZT1sKCgpPT57ZUU9W1sicGF0aCIse2Q6Ik02LjUgMTJjLjk0LTMuNDYgNC45NC02IDguNS02IDMuNTYgMCA2LjA2IDIuNTQgNyA2LS45NCAzLjQ3LTMuNDQgNi03IDZzLTcuNTYtMi41My04LjUtNloifV0sWyJwYXRoIix7ZDoiTTE4IDEydi41In1dLFsicGF0aCIse2Q6Ik0xNiAxNy45M2E5Ljc3IDkuNzcgMCAwIDEgMC0xMS44NiJ9XSxbInBhdGgiLHtkOiJNNyAxMC42N0M3IDggNS41OCA1Ljk3IDIuNzMgNS41Yy0xIDEuNS0xIDUgLjIzIDYuNS0xLjI0IDEuNS0xLjI0IDUtLjIzIDYuNUM1LjU4IDE4LjAzIDcgMTYgNyAxMy4zMyJ9XSxbInBhdGgiLHtkOiJNMTAuNDYgNy4yNkMxMC4yIDUuODggOS4xNyA0LjI0IDggM2g1LjhhMiAyIDAgMCAxIDEuOTggMS42N2wuMjMgMS40In1dLFsicGF0aCIse2Q6Im0xNi4wMSAxNy45My0uMjMgMS40QTIgMiAwIDAgMSAxMy44IDIxSDkuNWE1Ljk2IDUuOTYgMCAwIDAgMS40OS0zLjk4In1dXX0pO3ZhciB0RSxKVmU9bCgoKT0+e3RFPVtbInBhdGgiLHtkOiJtMTcuNTg2IDExLjQxNC01LjkzIDUuOTNhMSAxIDAgMCAxLTgtOGwzLjEzNy0zLjEzN2EuNzA3LjcwNyAwIDAgMSAxLjIwNy41VjEwIn1dLFsicGF0aCIse2Q6Ik0yMC40MTQgOC41ODYgMjIgNyJ9XSxbImNpcmNsZSIse2N4OiIxOSIsY3k6IjEwIixyOiIyIn1dXX0pO3ZhciByRSxlVWU9bCgoKT0+e3JFPVtbInBhdGgiLHtkOiJNNCAxMWgxIn1dLFsicGF0aCIse2Q6Ik04IDE1YTIgMiAwIDAgMS00IDBWM2ExIDEgMCAwIDEgMS0xaC41QzE0IDIgMjAgOSAyMCAxOHY0In1dLFsiY2lyY2xlIix7Y3g6IjE4IixjeToiMTgiLHI6IjIifV1dfSk7dmFyIGFFLHRVZT1sKCgpPT57YUU9W1sicGF0aCIse2Q6Ik0xOCAyMlYyLjhhLjguOCAwIDAgMC0xLjE3LS43MUw1LjQ1IDcuNzhhLjguOCAwIDAgMCAwIDEuNDRMMTggMTUuNSJ9XV19KTt2YXIgaUUsclVlPWwoKCk9PntpRT1bWyJwYXRoIix7ZDoiTTE2IDE2Yy0zIDAtNS0yLTgtMmE2IDYgMCAwIDAtNCAxLjUyOCJ9XSxbInBhdGgiLHtkOiJtMiAyIDIwIDIwIn1dLFsicGF0aCIse2Q6Ik00IDIyVjQifV0sWyJwYXRoIix7ZDoiTTcuNjU2IDJIOGMzIDAgNSAyIDcuMzMzIDJxMiAwIDMuMDY3LS44QTEgMSAwIDAgMSAyMCA0djEwLjM0NyJ9XV19KTt2YXIgb0UsYVVlPWwoKCk9PntvRT1bWyJwYXRoIix7ZDoiTTYgMjJWMi44YS44LjggMCAwIDEgMS4xNy0uNzFsMTEuMzggNS42OWEuOC44IDAgMCAxIDAgMS40NEw2IDE1LjUifV1dfSk7dmFyIG5FLGlVZT1sKCgpPT57bkU9W1sicGF0aCIse2Q6Ik00IDIyVjRhMSAxIDAgMCAxIC40LS44QTYgNiAwIDAgMSA4IDJjMyAwIDUgMiA3LjMzMyAycTIgMCAzLjA2Ny0uOEExIDEgMCAwIDEgMjAgNHYxMGExIDEgMCAwIDEtLjQuOEE2IDYgMCAwIDEgMTYgMTZjLTMgMC01LTItOC0yYTYgNiAwIDAgMC00IDEuNTI4In1dXX0pO3ZhciBzRSxvVWU9bCgoKT0+e3NFPVtbInBhdGgiLHtkOiJNMTIgMmMxIDMgMi41IDMuNSAzLjUgNC41QTUgNSAwIDAgMSAxNyAxMGE1IDUgMCAxIDEtMTAgMGMwLS4zIDAtLjYuMS0uOWEyIDIgMCAxIDAgMy4zLTJDOCA0LjUgMTEgMiAxMiAyWiJ9XSxbInBhdGgiLHtkOiJtNSAyMiAxNC00In1dLFsicGF0aCIse2Q6Im01IDE4IDE0IDQifV1dfSk7dmFyIGxFLG5VZT1sKCgpPT57bEU9W1sicGF0aCIse2Q6Ik0xMiAzcTEgNCA0IDYuNXQzIDUuNWExIDEgMCAwIDEtMTQgMCA1IDUgMCAwIDEgMS0zIDEgMSAwIDAgMCA1IDBjMC0yLTEuNS0zLTEuNS01cTAtMiAyLjUtNCJ9XV19KTt2YXIgY0Usc1VlPWwoKCk9PntjRT1bWyJwYXRoIix7ZDoiTTExLjY1MiA2SDE4In1dLFsicGF0aCIse2Q6Ik0xMiAxM3YxIn1dLFsicGF0aCIse2Q6Ik0xNiAxNnY0YTIgMiAwIDAgMS0yIDJoLTRhMiAyIDAgMCAxLTItMnYtOGE0IDQgMCAwIDAtLjgtMi40bC0uNi0uOEEzIDMgMCAwIDEgNiA3VjYifV0sWyJwYXRoIix7ZDoibTIgMiAyMCAyMCJ9XSxbInBhdGgiLHtkOiJNNy42NDkgMkgxN2ExIDEgMCAwIDEgMSAxdjRhMyAzIDAgMCAxLS42IDEuOGwtLjYuOGE0IDQgMCAwIDAtLjU1IDEuMDA3In1dXX0pO3ZhciBkRSxsVWU9bCgoKT0+e2RFPVtbInBhdGgiLHtkOiJNMTIgMTN2MSJ9XSxbInBhdGgiLHtkOiJNMTcgMmExIDEgMCAwIDEgMSAxdjRhMyAzIDAgMCAxLS42IDEuOGwtLjYuOEE0IDQgMCAwIDAgMTYgMTJ2OGEyIDIgMCAwIDEtMiAySDEwYTIgMiAwIDAgMS0yLTJ2LThhNCA0IDAgMCAwLS44LTIuNGwtLjYtLjhBMyAzIDAgMCAxIDYgN1YzYTEgMSAwIDAgMSAxLTF6In1dLFsicGF0aCIse2Q6Ik02IDZoMTIifV1dfSk7dmFyIHVFLGNVZT1sKCgpPT57dUU9W1sicGF0aCIse2Q6Ik0xNCAydjZhMiAyIDAgMCAwIC4yNDUuOTZsNS41MSAxMC4wOEEyIDIgMCAwIDEgMTggMjJINmEyIDIgMCAwIDEtMS43NTUtMi45Nmw1LjUxLTEwLjA4QTIgMiAwIDAgMCAxMCA4VjIifV0sWyJwYXRoIix7ZDoiTTYuNDUzIDE1aDExLjA5NCJ9XSxbInBhdGgiLHtkOiJNOC41IDJoNyJ9XV19KTt2YXIgZkUsZFVlPWwoKCk9PntmRT1bWyJwYXRoIix7ZDoiTTEwIDJ2Mi4zNDMifV0sWyJwYXRoIix7ZDoiTTE0IDJ2Ni4zNDMifV0sWyJwYXRoIix7ZDoibTIgMiAyMCAyMCJ9XSxbInBhdGgiLHtkOiJNMjAgMjBhMiAyIDAgMCAxLTIgMkg2YTIgMiAwIDAgMS0xLjc1NS0yLjk2bDUuMjI3LTkuNTYzIn1dLFsicGF0aCIse2Q6Ik02LjQ1MyAxNUgxNSJ9XSxbInBhdGgiLHtkOiJNOC41IDJoNyJ9XV19KTt2YXIgcEUsdVVlPWwoKCk9PntwRT1bWyJwYXRoIix7ZDoiTTEwIDJ2Ni4yOTJhNyA3IDAgMSAwIDQgMFYyIn1dLFsicGF0aCIse2Q6Ik01IDE1aDE0In1dLFsicGF0aCIse2Q6Ik04LjUgMmg3In1dXX0pO3ZhciBoRSxmVWU9bCgoKT0+e2hFPVtbInBhdGgiLHtkOiJtMyA3IDUgNS01IDVWNyJ9XSxbInBhdGgiLHtkOiJtMjEgNy01IDUgNSA1VjcifV0sWyJwYXRoIix7ZDoiTTEyIDIwdjIifV0sWyJwYXRoIix7ZDoiTTEyIDE0djIifV0sWyJwYXRoIix7ZDoiTTEyIDh2MiJ9XSxbInBhdGgiLHtkOiJNMTIgMnYyIn1dXX0pO3ZhciBtRSxwVWU9bCgoKT0+e21FPVtbInBhdGgiLHtkOiJtMTcgMy01IDUtNS01aDEwIn1dLFsicGF0aCIse2Q6Im0xNyAyMS01LTUtNSA1aDEwIn1dLFsicGF0aCIse2Q6Ik00IDEySDIifV0sWyJwYXRoIix7ZDoiTTEwIDEySDgifV0sWyJwYXRoIix7ZDoiTTE2IDEyaC0yIn1dLFsicGF0aCIse2Q6Ik0yMiAxMmgtMiJ9XV19KTt2YXIgZ0UsaFVlPWwoKCk9PntnRT1bWyJwYXRoIix7ZDoiTTEyIDVhMyAzIDAgMSAxIDMgM20tMy0zYTMgMyAwIDEgMC0zIDNtMy0zdjFNOSA4YTMgMyAwIDEgMCAzIDNNOSA4aDFtNSAwYTMgMyAwIDEgMS0zIDNtMy0zaC0xbS0yIDN2LTEifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiI4IixyOiIyIn1dLFsicGF0aCIse2Q6Ik0xMiAxMHYxMiJ9XSxbInBhdGgiLHtkOiJNMTIgMjJjNC4yIDAgNy0xLjY2NyA3LTUtNC4yIDAtNyAxLjY2Ny03IDVaIn1dLFsicGF0aCIse2Q6Ik0xMiAyMmMtNC4yIDAtNy0xLjY2Ny03LTUgNC4yIDAgNyAxLjY2NyA3IDVaIn1dXX0pO3ZhciB4RSxtVWU9bCgoKT0+e3hFPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIzIn1dLFsicGF0aCIse2Q6Ik0xMiAxNi41QTQuNSA0LjUgMCAxIDEgNy41IDEyIDQuNSA0LjUgMCAxIDEgMTIgNy41YTQuNSA0LjUgMCAxIDEgNC41IDQuNSA0LjUgNC41IDAgMSAxLTQuNSA0LjUifV0sWyJwYXRoIix7ZDoiTTEyIDcuNVY5In1dLFsicGF0aCIse2Q6Ik03LjUgMTJIOSJ9XSxbInBhdGgiLHtkOiJNMTYuNSAxMkgxNSJ9XSxbInBhdGgiLHtkOiJNMTIgMTYuNVYxNSJ9XSxbInBhdGgiLHtkOiJtOCA4IDEuODggMS44OCJ9XSxbInBhdGgiLHtkOiJNMTQuMTIgOS44OCAxNiA4In1dLFsicGF0aCIse2Q6Im04IDE2IDEuODgtMS44OCJ9XSxbInBhdGgiLHtkOiJNMTQuMTIgMTQuMTIgMTYgMTYifV1dfSk7dmFyIGJFLGdVZT1sKCgpPT57YkU9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjMifV0sWyJwYXRoIix7ZDoiTTMgN1Y1YTIgMiAwIDAgMSAyLTJoMiJ9XSxbInBhdGgiLHtkOiJNMTcgM2gyYTIgMiAwIDAgMSAyIDJ2MiJ9XSxbInBhdGgiLHtkOiJNMjEgMTd2MmEyIDIgMCAwIDEtMiAyaC0yIn1dLFsicGF0aCIse2Q6Ik03IDIxSDVhMiAyIDAgMCAxLTItMnYtMiJ9XV19KTt2YXIgdkUseFVlPWwoKCk9Pnt2RT1bWyJwYXRoIix7ZDoiTTIgMTJoNiJ9XSxbInBhdGgiLHtkOiJNMjIgMTJoLTYifV0sWyJwYXRoIix7ZDoiTTEyIDJ2MiJ9XSxbInBhdGgiLHtkOiJNMTIgOHYyIn1dLFsicGF0aCIse2Q6Ik0xMiAxNHYyIn1dLFsicGF0aCIse2Q6Ik0xMiAyMHYyIn1dLFsicGF0aCIse2Q6Im0xOSA5LTMgMyAzIDMifV0sWyJwYXRoIix7ZDoibTUgMTUgMy0zLTMtMyJ9XV19KTt2YXIgeUUsYlVlPWwoKCk9Pnt5RT1bWyJwYXRoIix7ZDoiTTEyIDIydi02In1dLFsicGF0aCIse2Q6Ik0xMiA4VjIifV0sWyJwYXRoIix7ZDoiTTQgMTJIMiJ9XSxbInBhdGgiLHtkOiJNMTAgMTJIOCJ9XSxbInBhdGgiLHtkOiJNMTYgMTJoLTIifV0sWyJwYXRoIix7ZDoiTTIyIDEyaC0yIn1dLFsicGF0aCIse2Q6Im0xNSAxOS0zLTMtMyAzIn1dLFsicGF0aCIse2Q6Im0xNSA1LTMgMy0zLTMifV1dfSk7dmFyIHdFLHZVZT1sKCgpPT57d0U9W1siY2lyY2xlIix7Y3g6IjE1IixjeToiMTkiLHI6IjIifV0sWyJwYXRoIix7ZDoiTTIwLjkgMTkuOEEyIDIgMCAwIDAgMjIgMThWOGEyIDIgMCAwIDAtMi0yaC03LjlhMiAyIDAgMCAxLTEuNjktLjlMOS42IDMuOUEyIDIgMCAwIDAgNy45MyAzSDRhMiAyIDAgMCAwLTIgMnYxM2EyIDIgMCAwIDAgMiAyaDUuMSJ9XSxbInBhdGgiLHtkOiJNMTUgMTF2LTEifV0sWyJwYXRoIix7ZDoiTTE1IDE3di0yIn1dXX0pO3ZhciBNRSx5VWU9bCgoKT0+e01FPVtbInBhdGgiLHtkOiJNMjAgMjBhMiAyIDAgMCAwIDItMlY4YTIgMiAwIDAgMC0yLTJoLTcuOWEyIDIgMCAwIDEtMS42OS0uOUw5LjYgMy45QTIgMiAwIDAgMCA3LjkzIDNINGEyIDIgMCAwIDAtMiAydjEzYTIgMiAwIDAgMCAyIDJaIn1dLFsicGF0aCIse2Q6Im05IDEzIDIgMiA0LTQifV1dfSk7dmFyIGtFLHdVZT1sKCgpPT57a0U9W1sicGF0aCIse2Q6Ik0xNiAxNHYyLjJsMS42IDEifV0sWyJwYXRoIix7ZDoiTTcgMjBINGEyIDIgMCAwIDEtMi0yVjVhMiAyIDAgMCAxIDItMmgzLjlhMiAyIDAgMCAxIDEuNjkuOWwuODEgMS4yYTIgMiAwIDAgMCAxLjY3LjlIMjBhMiAyIDAgMCAxIDIgMiJ9XSxbImNpcmNsZSIse2N4OiIxNiIsY3k6IjE2IixyOiI2In1dXX0pO3ZhciBTRSxNVWU9bCgoKT0+e1NFPVtbInBhdGgiLHtkOiJNMjAgMjBhMiAyIDAgMCAwIDItMlY4YTIgMiAwIDAgMC0yLTJoLTcuOWEyIDIgMCAwIDEtMS42OS0uOUw5LjYgMy45QTIgMiAwIDAgMCA3LjkzIDNINGEyIDIgMCAwIDAtMiAydjEzYTIgMiAwIDAgMCAyIDJaIn1dLFsicGF0aCIse2Q6Ik0yIDEwaDIwIn1dXX0pO3ZhciB6RSxrVWU9bCgoKT0+e3pFPVtbInBhdGgiLHtkOiJNMTAgMTAuNSA4IDEzbDIgMi41In1dLFsicGF0aCIse2Q6Im0xNCAxMC41IDIgMi41LTIgMi41In1dLFsicGF0aCIse2Q6Ik0yMCAyMGEyIDIgMCAwIDAgMi0yVjhhMiAyIDAgMCAwLTItMmgtNy45YTIgMiAwIDAgMS0xLjY5LS45TDkuNiAzLjlBMiAyIDAgMCAwIDcuOTMgM0g0YTIgMiAwIDAgMC0yIDJ2MTNhMiAyIDAgMCAwIDIgMnoifV1dfSk7dmFyIGU1LFNVZT1sKCgpPT57ZTU9W1sicGF0aCIse2Q6Ik0xMC4zIDIwSDRhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJoMy45OGEyIDIgMCAwIDEgMS42OS45bC42NiAxLjJBMiAyIDAgMCAwIDEyIDZoOGEyIDIgMCAwIDEgMiAydjMuMyJ9XSxbInBhdGgiLHtkOiJtMTQuMzA1IDE5LjUzLjkyMy0uMzgyIn1dLFsicGF0aCIse2Q6Im0xNS4yMjggMTYuODUyLS45MjMtLjM4MyJ9XSxbInBhdGgiLHtkOiJtMTYuODUyIDE1LjIyOC0uMzgzLS45MjMifV0sWyJwYXRoIix7ZDoibTE2Ljg1MiAyMC43NzItLjM4My45MjQifV0sWyJwYXRoIix7ZDoibTE5LjE0OCAxNS4yMjguMzgzLS45MjMifV0sWyJwYXRoIix7ZDoibTE5LjUzIDIxLjY5Ni0uMzgyLS45MjQifV0sWyJwYXRoIix7ZDoibTIwLjc3MiAxNi44NTIuOTI0LS4zODMifV0sWyJwYXRoIix7ZDoibTIwLjc3MiAxOS4xNDguOTI0LjM4MyJ9XSxbImNpcmNsZSIse2N4OiIxOCIsY3k6IjE4IixyOiIzIn1dXX0pO3ZhciBDRSx6VWU9bCgoKT0+e0NFPVtbInBhdGgiLHtkOiJNNCAyMGgxNmEyIDIgMCAwIDAgMi0yVjhhMiAyIDAgMCAwLTItMmgtNy45M2EyIDIgMCAwIDEtMS42Ni0uOWwtLjgyLTEuMkEyIDIgMCAwIDAgNy45MyAzSDRhMiAyIDAgMCAwLTIgMnYxM2MwIDEuMS45IDIgMiAyWiJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEzIixyOiIxIn1dXX0pO3ZhciBfRSxDVWU9bCgoKT0+e19FPVtbInBhdGgiLHtkOiJNMjAgMjBhMiAyIDAgMCAwIDItMlY4YTIgMiAwIDAgMC0yLTJoLTcuOWEyIDIgMCAwIDEtMS42OS0uOUw5LjYgMy45QTIgMiAwIDAgMCA3LjkzIDNINGEyIDIgMCAwIDAtMiAydjEzYTIgMiAwIDAgMCAyIDJaIn1dLFsicGF0aCIse2Q6Ik0xMiAxMHY2In1dLFsicGF0aCIse2Q6Im0xNSAxMy0zIDMtMy0zIn1dXX0pO3ZhciBURSxfVWU9bCgoKT0+e1RFPVtbInBhdGgiLHtkOiJNMTggMTlhNSA1IDAgMCAxLTUtNXY4In1dLFsicGF0aCIse2Q6Ik05IDIwSDRhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJoMy45YTIgMiAwIDAgMSAxLjY5LjlsLjgxIDEuMmEyIDIgMCAwIDAgMS42Ny45SDIwYTIgMiAwIDAgMSAyIDJ2NSJ9XSxbImNpcmNsZSIse2N4OiIxMyIsY3k6IjEyIixyOiIyIn1dLFsiY2lyY2xlIix7Y3g6IjIwIixjeToiMTkiLHI6IjIifV1dfSk7dmFyIExFLFRVZT1sKCgpPT57TEU9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTMiLHI6IjIifV0sWyJwYXRoIix7ZDoiTTIwIDIwYTIgMiAwIDAgMCAyLTJWOGEyIDIgMCAwIDAtMi0yaC03LjlhMiAyIDAgMCAxLTEuNjktLjlMOS42IDMuOUEyIDIgMCAwIDAgNy45MyAzSDRhMiAyIDAgMCAwLTIgMnYxM2EyIDIgMCAwIDAgMiAyWiJ9XSxbInBhdGgiLHtkOiJNMTQgMTNoMyJ9XSxbInBhdGgiLHtkOiJNNyAxM2gzIn1dXX0pO3ZhciBERSxMVWU9bCgoKT0+e0RFPVtbInBhdGgiLHtkOiJNMTAuNjM4IDIwSDRhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJoMy45YTIgMiAwIDAgMSAxLjY5LjlsLjgxIDEuMmEyIDIgMCAwIDAgMS42Ny45SDIwYTIgMiAwIDAgMSAyIDJ2My40MTcifV0sWyJwYXRoIix7ZDoiTTE0LjYyIDE4LjhBMi4yNSAyLjI1IDAgMSAxIDE4IDE1LjgzNmEyLjI1IDIuMjUgMCAxIDEgMy4zOCAyLjk2NmwtMi42MjYgMi44NTZhLjk5OC45OTggMCAwIDEtMS41MDcgMHoifV1dfSk7dmFyIEFFLERVZT1sKCgpPT57QUU9W1sicGF0aCIse2Q6Ik0yIDlWNWEyIDIgMCAwIDEgMi0yaDMuOWEyIDIgMCAwIDEgMS42OS45bC44MSAxLjJhMiAyIDAgMCAwIDEuNjcuOUgyMGEyIDIgMCAwIDEgMiAydjEwYTIgMiAwIDAgMS0yIDJINGEyIDIgMCAwIDEtMi0ydi0xIn1dLFsicGF0aCIse2Q6Ik0yIDEzaDEwIn1dLFsicGF0aCIse2Q6Im05IDE2IDMtMy0zLTMifV1dfSk7dmFyIEVFLEFVZT1sKCgpPT57RUU9W1sicGF0aCIse2Q6Ik00IDIwaDE2YTIgMiAwIDAgMCAyLTJWOGEyIDIgMCAwIDAtMi0yaC03LjkzYTIgMiAwIDAgMS0xLjY2LS45bC0uODItMS4yQTIgMiAwIDAgMCA3LjkzIDNINGEyIDIgMCAwIDAtMiAydjEzYzAgMS4xLjkgMiAyIDJaIn1dLFsicGF0aCIse2Q6Ik04IDEwdjQifV0sWyJwYXRoIix7ZDoiTTEyIDEwdjIifV0sWyJwYXRoIix7ZDoiTTE2IDEwdjYifV1dfSk7dmFyICRFLEVVZT1sKCgpPT57JEU9W1sicGF0aCIse2Q6Ik0xMyAyMEg0YTIgMiAwIDAgMS0yLTJWNWEyIDIgMCAwIDEgMi0yaDMuOWEyIDIgMCAwIDEgMS42OS45bC44MSAxLjJhMiAyIDAgMCAwIDEuNjcuOUgyMGEyIDIgMCAwIDEgMiAydjEuMzYifV0sWyJwYXRoIix7ZDoiTTE5IDEydjYifV0sWyJwYXRoIix7ZDoiTTE5IDE0aDIifV0sWyJjaXJjbGUiLHtjeDoiMTkiLGN5OiIyMCIscjoiMiJ9XV19KTt2YXIgUEUsJFVlPWwoKCk9PntQRT1bWyJyZWN0Iix7d2lkdGg6IjgiLGhlaWdodDoiNSIseDoiMTQiLHk6IjE3IixyeDoiMSJ9XSxbInBhdGgiLHtkOiJNMTAgMjBINGEyIDIgMCAwIDEtMi0yVjVhMiAyIDAgMCAxIDItMmgzLjlhMiAyIDAgMCAxIDEuNjkuOWwuODEgMS4yYTIgMiAwIDAgMCAxLjY3LjlIMjBhMiAyIDAgMCAxIDIgMnYyLjUifV0sWyJwYXRoIix7ZDoiTTIwIDE3di0yYTIgMiAwIDEgMC00IDB2MiJ9XV19KTt2YXIgSUUsUFVlPWwoKCk9PntJRT1bWyJwYXRoIix7ZDoiTTkgMTNoNiJ9XSxbInBhdGgiLHtkOiJNMjAgMjBhMiAyIDAgMCAwIDItMlY4YTIgMiAwIDAgMC0yLTJoLTcuOWEyIDIgMCAwIDEtMS42OS0uOUw5LjYgMy45QTIgMiAwIDAgMCA3LjkzIDNINGEyIDIgMCAwIDAtMiAydjEzYTIgMiAwIDAgMCAyIDJaIn1dXX0pO3ZhciBORSxJVWU9bCgoKT0+e05FPVtbInBhdGgiLHtkOiJtNiAxNCAxLjQ1LTIuOUEyIDIgMCAwIDEgOS4yNCAxMEgyMGEyIDIgMCAwIDEgMS45NCAyLjVsLTEuNTUgNmEyIDIgMCAwIDEtMS45NCAxLjVINGEyIDIgMCAwIDEtMi0yVjVjMC0xLjEuOS0yIDItMmgzLjkzYTIgMiAwIDAgMSAxLjY2LjlsLjgyIDEuMmEyIDIgMCAwIDAgMS42Ni45SDE4YTIgMiAwIDAgMSAyIDJ2MiJ9XSxbImNpcmNsZSIse2N4OiIxNCIsY3k6IjE1IixyOiIxIn1dXX0pO3ZhciBGRSxOVWU9bCgoKT0+e0ZFPVtbInBhdGgiLHtkOiJtNiAxNCAxLjUtMi45QTIgMiAwIDAgMSA5LjI0IDEwSDIwYTIgMiAwIDAgMSAxLjk0IDIuNWwtMS41NCA2YTIgMiAwIDAgMS0xLjk1IDEuNUg0YTIgMiAwIDAgMS0yLTJWNWEyIDIgMCAwIDEgMi0yaDMuOWEyIDIgMCAwIDEgMS42OS45bC44MSAxLjJhMiAyIDAgMCAwIDEuNjcuOUgxOGEyIDIgMCAwIDEgMiAydjIifV1dfSk7dmFyIHQ1LEZVZT1sKCgpPT57dDU9W1sicGF0aCIse2Q6Ik0yIDExLjVWNWEyIDIgMCAwIDEgMi0yaDMuOWMuNyAwIDEuMy4zIDEuNy45bC44IDEuMmMuNC42IDEgLjkgMS43LjlIMjBhMiAyIDAgMCAxIDIgMnYxMGEyIDIgMCAwIDEtMiAyaC05LjUifV0sWyJwYXRoIix7ZDoiTTExLjM3OCAxMy42MjZhMSAxIDAgMSAwLTMuMDA0LTMuMDA0bC01LjAxIDUuMDEyYTIgMiAwIDAgMC0uNTA2Ljg1NGwtLjgzNyAyLjg3YS41LjUgMCAwIDAgLjYyLjYybDIuODctLjgzN2EyIDIgMCAwIDAgLjg1NC0uNTA2eiJ9XV19KTt2YXIgT0UsT1VlPWwoKCk9PntPRT1bWyJwYXRoIix7ZDoiTTIgNy41VjVhMiAyIDAgMCAxIDItMmgzLjlhMiAyIDAgMCAxIDEuNjkuOWwuODEgMS4yYTIgMiAwIDAgMCAxLjY3LjlIMjBhMiAyIDAgMCAxIDIgMnYxMGEyIDIgMCAwIDEtMiAySDRhMiAyIDAgMCAxLTItMS41In1dLFsicGF0aCIse2Q6Ik0yIDEzaDEwIn1dLFsicGF0aCIse2Q6Im01IDEwLTMgMyAzIDMifV1dfSk7dmFyIFJFLFJVZT1sKCgpPT57UkU9W1sicGF0aCIse2Q6Ik0xMiAxMHY2In1dLFsicGF0aCIse2Q6Ik05IDEzaDYifV0sWyJwYXRoIix7ZDoiTTIwIDIwYTIgMiAwIDAgMCAyLTJWOGEyIDIgMCAwIDAtMi0yaC03LjlhMiAyIDAgMCAxLTEuNjktLjlMOS42IDMuOUEyIDIgMCAwIDAgNy45MyAzSDRhMiAyIDAgMCAwLTIgMnYxM2EyIDIgMCAwIDAgMiAyWiJ9XV19KTt2YXIgQkUsQlVlPWwoKCk9PntCRT1bWyJwYXRoIix7ZDoiTTQgMjBoMTZhMiAyIDAgMCAwIDItMlY4YTIgMiAwIDAgMC0yLTJoLTcuOTNhMiAyIDAgMCAxLTEuNjYtLjlsLS44Mi0xLjJBMiAyIDAgMCAwIDcuOTMgM0g0YTIgMiAwIDAgMC0yIDJ2MTNjMCAxLjEuOSAyIDIgMloifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMyIscjoiMiJ9XSxbInBhdGgiLHtkOiJNMTIgMTV2NSJ9XV19KTt2YXIgSEUsSFVlPWwoKCk9PntIRT1bWyJjaXJjbGUiLHtjeDoiMTEuNSIsY3k6IjEyLjUiLHI6IjIuNSJ9XSxbInBhdGgiLHtkOiJNMjAgMjBhMiAyIDAgMCAwIDItMlY4YTIgMiAwIDAgMC0yLTJoLTcuOWEyIDIgMCAwIDEtMS42OS0uOUw5LjYgMy45QTIgMiAwIDAgMCA3LjkzIDNINGEyIDIgMCAwIDAtMiAydjEzYTIgMiAwIDAgMCAyIDJaIn1dLFsicGF0aCIse2Q6Ik0xMy4zIDE0LjMgMTUgMTYifV1dfSk7dmFyIHFFLHFVZT1sKCgpPT57cUU9W1sicGF0aCIse2Q6Ik0xMC43IDIwSDRhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJoMy45YTIgMiAwIDAgMSAxLjY5LjlsLjgxIDEuMmEyIDIgMCAwIDAgMS42Ny45SDIwYTIgMiAwIDAgMSAyIDJ2NC4xIn1dLFsicGF0aCIse2Q6Im0yMSAyMS0xLjktMS45In1dLFsiY2lyY2xlIix7Y3g6IjE3IixjeToiMTciLHI6IjMifV1dfSk7dmFyIGpFLGpVZT1sKCgpPT57akU9W1sicGF0aCIse2Q6Ik0yIDkuMzVWNWEyIDIgMCAwIDEgMi0yaDMuOWEyIDIgMCAwIDEgMS42OS45bC44MSAxLjJhMiAyIDAgMCAwIDEuNjcuOUgyMGEyIDIgMCAwIDEgMiAydjEwYTIgMiAwIDAgMS0yIDJINGEyIDIgMCAwIDEtMi0ydi0zYTIgMiAwIDAgMSAyLTJoNyJ9XSxbInBhdGgiLHtkOiJtOCAxNiAzLTMtMy0zIn1dXX0pO3ZhciBWRSxWVWU9bCgoKT0+e1ZFPVtbInBhdGgiLHtkOiJNOSAyMEg0YTIgMiAwIDAgMS0yLTJWNWEyIDIgMCAwIDEgMi0yaDMuOWEyIDIgMCAwIDEgMS42OS45bC44MSAxLjJhMiAyIDAgMCAwIDEuNjcuOUgyMGEyIDIgMCAwIDEgMiAydi41In1dLFsicGF0aCIse2Q6Ik0xMiAxMHY0aDQifV0sWyJwYXRoIix7ZDoibTEyIDE0IDEuNTM1LTEuNjA1YTUgNSAwIDAgMSA4IDEuNSJ9XSxbInBhdGgiLHtkOiJNMjIgMjJ2LTRoLTQifV0sWyJwYXRoIix7ZDoibTIyIDE4LTEuNTM1IDEuNjA1YTUgNSAwIDAgMS04LTEuNSJ9XV19KTt2YXIgVUUsVVVlPWwoKCk9PntVRT1bWyJwYXRoIix7ZDoiTTIwIDEwYTEgMSAwIDAgMCAxLTFWNmExIDEgMCAwIDAtMS0xaC0yLjVhMSAxIDAgMCAxLS44LS40bC0uOS0xLjJBMSAxIDAgMCAwIDE1IDNoLTJhMSAxIDAgMCAwLTEgMXY1YTEgMSAwIDAgMCAxIDFaIn1dLFsicGF0aCIse2Q6Ik0yMCAyMWExIDEgMCAwIDAgMS0xdi0zYTEgMSAwIDAgMC0xLTFoLTIuOWExIDEgMCAwIDEtLjg4LS41NWwtLjQyLS44NWExIDEgMCAwIDAtLjkyLS42SDEzYTEgMSAwIDAgMC0xIDF2NWExIDEgMCAwIDAgMSAxWiJ9XSxbInBhdGgiLHtkOiJNMyA1YTIgMiAwIDAgMCAyIDJoMyJ9XSxbInBhdGgiLHtkOiJNMyAzdjEzYTIgMiAwIDAgMCAyIDJoMyJ9XV19KTt2YXIgV0UsV1VlPWwoKCk9PntXRT1bWyJwYXRoIix7ZDoiTTIwIDIwYTIgMiAwIDAgMCAyLTJWOGEyIDIgMCAwIDAtMi0yaC03LjlhMiAyIDAgMCAxLTEuNjktLjlMOS42IDMuOUEyIDIgMCAwIDAgNy45MyAzSDRhMiAyIDAgMCAwLTIgMnYxM2EyIDIgMCAwIDAgMiAyWiJ9XSxbInBhdGgiLHtkOiJNMTIgMTB2NiJ9XSxbInBhdGgiLHtkOiJtOSAxMyAzLTMgMyAzIn1dXX0pO3ZhciBHRSxHVWU9bCgoKT0+e0dFPVtbInBhdGgiLHtkOiJNMjAgMjBhMiAyIDAgMCAwIDItMlY4YTIgMiAwIDAgMC0yLTJoLTcuOWEyIDIgMCAwIDEtMS42OS0uOUw5LjYgMy45QTIgMiAwIDAgMCA3LjkzIDNINGEyIDIgMCAwIDAtMiAydjEzYTIgMiAwIDAgMCAyIDJaIn1dLFsicGF0aCIse2Q6Im05LjUgMTAuNSA1IDUifV0sWyJwYXRoIix7ZDoibTE0LjUgMTAuNS01IDUifV1dfSk7dmFyIFlFLFlVZT1sKCgpPT57WUU9W1sicGF0aCIse2Q6Ik0yMCAyMGEyIDIgMCAwIDAgMi0yVjhhMiAyIDAgMCAwLTItMmgtNy45YTIgMiAwIDAgMS0xLjY5LS45TDkuNiAzLjlBMiAyIDAgMCAwIDcuOTMgM0g0YTIgMiAwIDAgMC0yIDJ2MTNhMiAyIDAgMCAwIDIgMloifV1dfSk7dmFyIFpFLFpVZT1sKCgpPT57WkU9W1sicGF0aCIse2Q6Ik0yMCA1YTIgMiAwIDAgMSAyIDJ2N2EyIDIgMCAwIDEtMiAySDlhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJoMi41YTEuNSAxLjUgMCAwIDEgMS4yLjZsLjYuOGExLjUgMS41IDAgMCAwIDEuMi42eiJ9XSxbInBhdGgiLHtkOiJNMyA4LjI2OGEyIDIgMCAwIDAtMSAxLjczOFYxOWEyIDIgMCAwIDAgMiAyaDExYTIgMiAwIDAgMCAxLjczMi0xIn1dXX0pO3ZhciBYRSxYVWU9bCgoKT0+e1hFPVtbInBhdGgiLHtkOiJNNCAxNnYtMi4zOEM0IDExLjUgMi45NyAxMC41IDMgOGMuMDMtMi43MiAxLjQ5LTYgNC41LTZDOS4zNyAyIDEwIDMuOCAxMCA1LjVjMCAzLjExLTIgNS42Ni0yIDguNjhWMTZhMiAyIDAgMSAxLTQgMFoifV0sWyJwYXRoIix7ZDoiTTIwIDIwdi0yLjM4YzAtMi4xMiAxLjAzLTMuMTIgMS01LjYyLS4wMy0yLjcyLTEuNDktNi00LjUtNkMxNC42MyA2IDE0IDcuOCAxNCA5LjVjMCAzLjExIDIgNS42NiAyIDguNjhWMjBhMiAyIDAgMSAwIDQgMFoifV0sWyJwYXRoIix7ZDoiTTE2IDE3aDQifV0sWyJwYXRoIix7ZDoiTTQgMTNoNCJ9XV19KTt2YXIgUUUsUVVlPWwoKCk9PntRRT1bWyJwYXRoIix7ZDoiTTQgMTRoNiJ9XSxbInBhdGgiLHtkOiJNNCAyaDEwIn1dLFsicmVjdCIse3g6IjQiLHk6IjE4Iix3aWR0aDoiMTYiLGhlaWdodDoiNCIscng6IjEifV0sWyJyZWN0Iix7eDoiNCIseToiNiIsd2lkdGg6IjE2IixoZWlnaHQ6IjQiLHJ4OiIxIn1dXX0pO3ZhciBLRSxLVWU9bCgoKT0+e0tFPVtbInBhdGgiLHtkOiJNMTIgMTJINWEyIDIgMCAwIDAtMiAydjUifV0sWyJwYXRoIix7ZDoiTTE1IDE5aDcifV0sWyJwYXRoIix7ZDoiTTE2IDE5VjIifV0sWyJwYXRoIix7ZDoiTTYgMTJWN2EyIDIgMCAwIDEgMi0yaDIuMTcyYTIgMiAwIDAgMSAxLjQxNC41ODZsMy44MjggMy44MjhBMiAyIDAgMCAxIDE2IDEwLjgyOCJ9XSxbInBhdGgiLHtkOiJNNyAxOWg0In1dLFsiY2lyY2xlIix7Y3g6IjEzIixjeToiMTkiLHI6IjIifV0sWyJjaXJjbGUiLHtjeDoiNSIsY3k6IjE5IixyOiIyIn1dXX0pO3ZhciBKRSxKVWU9bCgoKT0+e0pFPVtbImxpbmUiLHt4MToiMjIiLHgyOiIyIix5MToiNiIseTI6IjYifV0sWyJsaW5lIix7eDE6IjIyIix4MjoiMiIseTE6IjE4Iix5MjoiMTgifV0sWyJsaW5lIix7eDE6IjYiLHgyOiI2Iix5MToiMiIseTI6IjIyIn1dLFsibGluZSIse3gxOiIxOCIseDI6IjE4Iix5MToiMiIseTI6IjIyIn1dXX0pO3ZhciBlJCxlV2U9bCgoKT0+e2UkPVtbInBhdGgiLHtkOiJtMTUgMTcgNS01LTUtNSJ9XSxbInBhdGgiLHtkOiJNNCAxOHYtMmE0IDQgMCAwIDEgNC00aDEyIn1dXX0pO3ZhciB0JCx0V2U9bCgoKT0+e3QkPVtbInBhdGgiLHtkOiJNNSAxNlY5aDE0VjJINWwxNCAxNGgtN20tNyAwIDcgN3YtN20tNyAwaDcifV1dfSk7dmFyIHIkLHJXZT1sKCgpPT57ciQ9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjEwIn1dLFsicGF0aCIse2Q6Ik0xNiAxNnMtMS41LTItNC0yLTQgMi00IDIifV0sWyJsaW5lIix7eDE6IjkiLHgyOiI5LjAxIix5MToiOSIseTI6IjkifV0sWyJsaW5lIix7eDE6IjE1Iix4MjoiMTUuMDEiLHkxOiI5Iix5MjoiOSJ9XV19KTt2YXIgYSQsYVdlPWwoKCk9PnthJD1bWyJwYXRoIix7ZDoiTTE0IDEzaDJhMiAyIDAgMCAxIDIgMnYyYTIgMiAwIDAgMCA0IDB2LTYuOTk4YTIgMiAwIDAgMC0uNTktMS40MkwxOCA1In1dLFsicGF0aCIse2Q6Ik0xNCAyMVY1YTIgMiAwIDAgMC0yLTJINWEyIDIgMCAwIDAtMiAydjE2In1dLFsicGF0aCIse2Q6Ik0yIDIxaDEzIn1dLFsicGF0aCIse2Q6Ik0zIDloMTEifV1dfSk7dmFyIGkkLGlXZT1sKCgpPT57aSQ9W1sicGF0aCIse2Q6Ik0zIDdWNWEyIDIgMCAwIDEgMi0yaDIifV0sWyJwYXRoIix7ZDoiTTE3IDNoMmEyIDIgMCAwIDEgMiAydjIifV0sWyJwYXRoIix7ZDoiTTIxIDE3djJhMiAyIDAgMCAxLTIgMmgtMiJ9XSxbInBhdGgiLHtkOiJNNyAyMUg1YTIgMiAwIDAgMS0yLTJ2LTIifV0sWyJyZWN0Iix7d2lkdGg6IjEwIixoZWlnaHQ6IjgiLHg6IjciLHk6IjgiLHJ4OiIxIn1dXX0pO3ZhciBvJCxvV2U9bCgoKT0+e28kPVtbInBhdGgiLHtkOiJNMTMuMzU0IDNIM2ExIDEgMCAwIDAtLjc0MiAxLjY3bDcuMjI1IDcuOTg5QTIgMiAwIDAgMSAxMCAxNHY2YTEgMSAwIDAgMCAuNTUzLjg5NWwyIDFBMSAxIDAgMCAwIDE0IDIxdi03YTIgMiAwIDAgMSAuNTE3LTEuMzQxbDEuMjE4LTEuMzQ4In1dLFsicGF0aCIse2Q6Ik0xNiA2aDYifV0sWyJwYXRoIix7ZDoiTTE5IDN2NiJ9XV19KTt2YXIgcjUsbldlPWwoKCk9PntyNT1bWyJwYXRoIix7ZDoiTTEyLjUzMSAzSDNhMSAxIDAgMCAwLS43NDIgMS42N2w3LjIyNSA3Ljk4OUEyIDIgMCAwIDEgMTAgMTR2NmExIDEgMCAwIDAgLjU1My44OTVsMiAxQTEgMSAwIDAgMCAxNCAyMXYtN2EyIDIgMCAwIDEgLjUxNy0xLjM0MWwuNDI3LS40NzMifV0sWyJwYXRoIix7ZDoibTE2LjUgMy41IDUgNSJ9XSxbInBhdGgiLHtkOiJtMjEuNSAzLjUtNSA1In1dXX0pO3ZhciBhNSxzV2U9bCgoKT0+e2E1PVtbInBhdGgiLHtkOiJNMTAgMjBhMSAxIDAgMCAwIC41NTMuODk1bDIgMUExIDEgMCAwIDAgMTQgMjF2LTdhMiAyIDAgMCAxIC41MTctMS4zNDFMMjEuNzQgNC42N0ExIDEgMCAwIDAgMjEgM0gzYTEgMSAwIDAgMC0uNzQyIDEuNjdsNy4yMjUgNy45ODlBMiAyIDAgMCAxIDEwIDE0eiJ9XV19KTt2YXIgbiQsbFdlPWwoKCk9PntuJD1bWyJwYXRoIix7ZDoiTTIgN3YxMCJ9XSxbInBhdGgiLHtkOiJNNiA1djE0In1dLFsicmVjdCIse3dpZHRoOiIxMiIsaGVpZ2h0OiIxOCIseDoiMTAiLHk6IjMiLHJ4OiIyIn1dXX0pO3ZhciBzJCxjV2U9bCgoKT0+e3MkPVtbInBhdGgiLHtkOiJNMiAzdjE4In1dLFsicmVjdCIse3dpZHRoOiIxMiIsaGVpZ2h0OiIxOCIseDoiNiIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoiTTIyIDN2MTgifV1dfSk7dmFyIGwkLGRXZT1sKCgpPT57bCQ9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxNCIseDoiMyIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoiTTQgMjFoMSJ9XSxbInBhdGgiLHtkOiJNOSAyMWgxIn1dLFsicGF0aCIse2Q6Ik0xNCAyMWgxIn1dLFsicGF0aCIse2Q6Ik0xOSAyMWgxIn1dXX0pO3ZhciBjJCx1V2U9bCgoKT0+e2MkPVtbInBhdGgiLHtkOiJNNyAyaDEwIn1dLFsicGF0aCIse2Q6Ik01IDZoMTQifV0sWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjEyIix4OiIzIix5OiIxMCIscng6IjIifV1dfSk7dmFyIGQkLGZXZT1sKCgpPT57ZCQ9W1sicGF0aCIse2Q6Ik0zIDJoMTgifV0sWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjEyIix4OiIzIix5OiI2IixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNMyAyMmgxOCJ9XV19KTt2YXIgdSQscFdlPWwoKCk9Pnt1JD1bWyJsaW5lIix7eDE6IjYiLHgyOiIxMCIseTE6IjExIix5MjoiMTEifV0sWyJsaW5lIix7eDE6IjgiLHgyOiI4Iix5MToiOSIseTI6IjEzIn1dLFsibGluZSIse3gxOiIxNSIseDI6IjE1LjAxIix5MToiMTIiLHkyOiIxMiJ9XSxbImxpbmUiLHt4MToiMTgiLHgyOiIxOC4wMSIseTE6IjEwIix5MjoiMTAifV0sWyJwYXRoIix7ZDoiTTE3LjMyIDVINi42OGE0IDQgMCAwIDAtMy45NzggMy41OWMtLjAwNi4wNTItLjAxLjEwMS0uMDE3LjE1MkMyLjYwNCA5LjQxNiAyIDE0LjQ1NiAyIDE2YTMgMyAwIDAgMCAzIDNjMSAwIDEuNS0uNSAyLTFsMS40MTQtMS40MTRBMiAyIDAgMCAxIDkuODI4IDE2aDQuMzQ0YTIgMiAwIDAgMSAxLjQxNC41ODZMMTcgMThjLjUuNSAxIDEgMiAxYTMgMyAwIDAgMCAzLTNjMC0xLjU0NS0uNjA0LTYuNTg0LS42ODUtNy4yNTgtLjAwNy0uMDUtLjAxMS0uMS0uMDE3LS4xNTFBNCA0IDAgMCAwIDE3LjMyIDV6In1dXX0pO3ZhciBmJCxoV2U9bCgoKT0+e2YkPVtbInBhdGgiLHtkOiJNMTEuMTQ2IDE1Ljg1NGExLjIwNyAxLjIwNyAwIDAgMSAxLjcwOCAwbDEuNTYgMS41NkEyIDIgMCAwIDEgMTUgMTguODI4VjIxYTEgMSAwIDAgMS0xIDFoLTRhMSAxIDAgMCAxLTEtMXYtMi4xNzJhMiAyIDAgMCAxIC41ODYtMS40MTR6In1dLFsicGF0aCIse2Q6Ik0xOC44MjggMTVhMiAyIDAgMCAxLTEuNDE0LS41ODZsLTEuNTYtMS41NmExLjIwNyAxLjIwNyAwIDAgMSAwLTEuNzA4bDEuNTYtMS41NkEyIDIgMCAwIDEgMTguODI4IDlIMjFhMSAxIDAgMCAxIDEgMXY0YTEgMSAwIDAgMS0xIDF6In1dLFsicGF0aCIse2Q6Ik02LjU4NiAxNC40MTRBMiAyIDAgMCAxIDUuMTcyIDE1SDNhMSAxIDAgMCAxLTEtMXYtNGExIDEgMCAwIDEgMS0xaDIuMTcyYTIgMiAwIDAgMSAxLjQxNC41ODZsMS41NiAxLjU2YTEuMjA3IDEuMjA3IDAgMCAxIDAgMS43MDh6In1dLFsicGF0aCIse2Q6Ik05IDNhMSAxIDAgMCAxIDEtMWg0YTEgMSAwIDAgMSAxIDF2Mi4xNzJhMiAyIDAgMCAxLS41ODYgMS40MTRsLTEuNTYgMS41NmExLjIwNyAxLjIwNyAwIDAgMS0xLjcwOCAwbC0xLjU2LTEuNTZBMiAyIDAgMCAxIDkgNS4xNzJ6In1dXX0pO3ZhciBwJCxtV2U9bCgoKT0+e3AkPVtbImxpbmUiLHt4MToiNiIseDI6IjEwIix5MToiMTIiLHkyOiIxMiJ9XSxbImxpbmUiLHt4MToiOCIseDI6IjgiLHkxOiIxMCIseTI6IjE0In1dLFsibGluZSIse3gxOiIxNSIseDI6IjE1LjAxIix5MToiMTMiLHkyOiIxMyJ9XSxbImxpbmUiLHt4MToiMTgiLHgyOiIxOC4wMSIseTE6IjExIix5MjoiMTEifV0sWyJyZWN0Iix7d2lkdGg6IjIwIixoZWlnaHQ6IjEyIix4OiIyIix5OiI2IixyeDoiMiJ9XV19KTt2YXIgaCQsZ1dlPWwoKCk9PntoJD1bWyJwYXRoIix7ZDoibTEyIDE0IDQtNCJ9XSxbInBhdGgiLHtkOiJNMy4zNCAxOWExMCAxMCAwIDEgMSAxNy4zMiAwIn1dXX0pO3ZhciBtJCx4V2U9bCgoKT0+e20kPVtbInBhdGgiLHtkOiJtMTQgMTMtOC4zODEgOC4zOGExIDEgMCAwIDEtMy4wMDEtM2w4LjM4NC04LjM4MSJ9XSxbInBhdGgiLHtkOiJtMTYgMTYgNi02In1dLFsicGF0aCIse2Q6Im0yMS41IDEwLjUtOC04In1dLFsicGF0aCIse2Q6Im04IDggNi02In1dLFsicGF0aCIse2Q6Im04LjUgNy41IDggOCJ9XV19KTt2YXIgZyQsYldlPWwoKCk9PntnJD1bWyJwYXRoIix7ZDoiTTExLjUgMjFhNy41IDcuNSAwIDEgMSA3LjM1LTkifV0sWyJwYXRoIix7ZDoiTTEzIDEyVjMifV0sWyJwYXRoIix7ZDoiTTQgMjFoMTYifV0sWyJwYXRoIix7ZDoiTTkgMTJWMyJ9XV19KTt2YXIgeCQsdldlPWwoKCk9Pnt4JD1bWyJwYXRoIix7ZDoiTTEwLjUgMyA4IDlsNCAxMyA0LTEzLTIuNS02In1dLFsicGF0aCIse2Q6Ik0xNyAzYTIgMiAwIDAgMSAxLjYuOGwzIDRhMiAyIDAgMCAxIC4wMTMgMi4zODJsLTcuOTkgMTAuOTg2YTIgMiAwIDAgMS0zLjI0NyAwbC03Ljk5LTEwLjk4NkEyIDIgMCAwIDEgMi40IDcuOGwyLjk5OC0zLjk5N0EyIDIgMCAwIDEgNyAzeiJ9XSxbInBhdGgiLHtkOiJNMiA5aDIwIn1dXX0pO3ZhciBiJCx5V2U9bCgoKT0+e2IkPVtbInBhdGgiLHtkOiJNOSAxMGguMDEifV0sWyJwYXRoIix7ZDoiTTE1IDEwaC4wMSJ9XSxbInBhdGgiLHtkOiJNMTIgMmE4IDggMCAwIDAtOCA4djEybDMtMyAyLjUgMi41TDEyIDE5bDIuNSAyLjVMMTcgMTlsMyAzVjEwYTggOCAwIDAgMC04LTh6In1dXX0pO3ZhciB2JCx3V2U9bCgoKT0+e3YkPVtbInBhdGgiLHtkOiJNMTIgN3YxNCJ9XSxbInBhdGgiLHtkOiJNMjAgMTF2OGEyIDIgMCAwIDEtMiAySDZhMiAyIDAgMCAxLTItMnYtOCJ9XSxbInBhdGgiLHtkOiJNNy41IDdhMSAxIDAgMCAxIDAtNUE0LjggOCAwIDAgMSAxMiA3YTQuOCA4IDAgMCAxIDQuNS01IDEgMSAwIDAgMSAwIDUifV0sWyJyZWN0Iix7eDoiMyIseToiNyIsd2lkdGg6IjE4IixoZWlnaHQ6IjQiLHJ4OiIxIn1dXX0pO3ZhciB5JCxNV2U9bCgoKT0+e3kkPVtbInBhdGgiLHtkOiJNMTUgNmE5IDkgMCAwIDAtOSA5VjMifV0sWyJwYXRoIix7ZDoiTTIxIDE4aC02In1dLFsiY2lyY2xlIix7Y3g6IjE4IixjeToiNiIscjoiMyJ9XSxbImNpcmNsZSIse2N4OiI2IixjeToiMTgiLHI6IjMifV1dfSk7dmFyIHckLGtXZT1sKCgpPT57dyQ9W1sicGF0aCIse2Q6Ik02IDN2MTIifV0sWyJwYXRoIix7ZDoiTTE4IDlhMyAzIDAgMSAwIDAtNiAzIDMgMCAwIDAgMCA2eiJ9XSxbInBhdGgiLHtkOiJNNiAyMWEzIDMgMCAxIDAgMC02IDMgMyAwIDAgMCAwIDZ6In1dLFsicGF0aCIse2Q6Ik0xNSA2YTkgOSAwIDAgMC05IDkifV0sWyJwYXRoIix7ZDoiTTE4IDE1djYifV0sWyJwYXRoIix7ZDoiTTIxIDE4aC02In1dXX0pO3ZhciBNJCxTV2U9bCgoKT0+e00kPVtbInBhdGgiLHtkOiJNMTUgNmE5IDkgMCAwIDAtOSA5VjMifV0sWyJjaXJjbGUiLHtjeDoiMTgiLGN5OiI2IixyOiIzIn1dLFsiY2lyY2xlIix7Y3g6IjYiLGN5OiIxOCIscjoiMyJ9XV19KTt2YXIgaTUseldlPWwoKCk9PntpNT1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMyJ9XSxbImxpbmUiLHt4MToiMyIseDI6IjkiLHkxOiIxMiIseTI6IjEyIn1dLFsibGluZSIse3gxOiIxNSIseDI6IjIxIix5MToiMTIiLHkyOiIxMiJ9XV19KTt2YXIgayQsQ1dlPWwoKCk9PntrJD1bWyJwYXRoIix7ZDoiTTEyIDN2NiJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIzIn1dLFsicGF0aCIse2Q6Ik0xMiAxNXY2In1dXX0pO3ZhciBTJCxfV2U9bCgoKT0+e1MkPVtbImNpcmNsZSIse2N4OiI1IixjeToiNiIscjoiMyJ9XSxbInBhdGgiLHtkOiJNMTIgNmg1YTIgMiAwIDAgMSAyIDJ2NyJ9XSxbInBhdGgiLHtkOiJtMTUgOS0zLTMgMy0zIn1dLFsiY2lyY2xlIix7Y3g6IjE5IixjeToiMTgiLHI6IjMifV0sWyJwYXRoIix7ZDoiTTEyIDE4SDdhMiAyIDAgMCAxLTItMlY5In1dLFsicGF0aCIse2Q6Im05IDE1IDMgMy0zIDMifV1dfSk7dmFyIHokLFRXZT1sKCgpPT57eiQ9W1siY2lyY2xlIix7Y3g6IjE4IixjeToiMTgiLHI6IjMifV0sWyJjaXJjbGUiLHtjeDoiNiIsY3k6IjYiLHI6IjMifV0sWyJwYXRoIix7ZDoiTTEzIDZoM2EyIDIgMCAwIDEgMiAydjcifV0sWyJwYXRoIix7ZDoiTTExIDE4SDhhMiAyIDAgMCAxLTItMlY5In1dXX0pO3ZhciBDJCxMV2U9bCgoKT0+e0MkPVtbImNpcmNsZSIse2N4OiI1IixjeToiNiIscjoiMyJ9XSxbInBhdGgiLHtkOiJNNSA5djYifV0sWyJjaXJjbGUiLHtjeDoiNSIsY3k6IjE4IixyOiIzIn1dLFsicGF0aCIse2Q6Ik0xMiAzdjE4In1dLFsiY2lyY2xlIix7Y3g6IjE5IixjeToiNiIscjoiMyJ9XSxbInBhdGgiLHtkOiJNMTYgMTUuN0E5IDkgMCAwIDAgMTkgOSJ9XV19KTt2YXIgXyQsRFdlPWwoKCk9PntfJD1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxOCIscjoiMyJ9XSxbImNpcmNsZSIse2N4OiI2IixjeToiNiIscjoiMyJ9XSxbImNpcmNsZSIse2N4OiIxOCIsY3k6IjYiLHI6IjMifV0sWyJwYXRoIix7ZDoiTTE4IDl2MmMwIC42LS40IDEtMSAxSDdjLS42IDAtMS0uNC0xLTFWOSJ9XSxbInBhdGgiLHtkOiJNMTIgMTJ2MyJ9XV19KTt2YXIgVCQsQVdlPWwoKCk9PntUJD1bWyJwYXRoIix7ZDoiTTEyIDZoNGEyIDIgMCAwIDEgMiAydjcifV0sWyJwYXRoIix7ZDoiTTYgMTJ2OSJ9XSxbInBhdGgiLHtkOiJNOSAzIDMgOSJ9XSxbInBhdGgiLHtkOiJNOSA5IDMgMyJ9XSxbImNpcmNsZSIse2N4OiIxOCIsY3k6IjE4IixyOiIzIn1dXX0pO3ZhciBMJCxFV2U9bCgoKT0+e0wkPVtbImNpcmNsZSIse2N4OiIxOCIsY3k6IjE4IixyOiIzIn1dLFsiY2lyY2xlIix7Y3g6IjYiLGN5OiI2IixyOiIzIn1dLFsicGF0aCIse2Q6Ik02IDIxVjlhOSA5IDAgMCAwIDkgOSJ9XV19KTt2YXIgRCQsJFdlPWwoKCk9PntEJD1bWyJjaXJjbGUiLHtjeDoiNSIsY3k6IjYiLHI6IjMifV0sWyJwYXRoIix7ZDoiTTUgOXYxMiJ9XSxbImNpcmNsZSIse2N4OiIxOSIsY3k6IjE4IixyOiIzIn1dLFsicGF0aCIse2Q6Im0xNSA5LTMtMyAzLTMifV0sWyJwYXRoIix7ZDoiTTEyIDZoNWEyIDIgMCAwIDEgMiAydjcifV1dfSk7dmFyIEEkLFBXZT1sKCgpPT57QSQ9W1siY2lyY2xlIix7Y3g6IjYiLGN5OiI2IixyOiIzIn1dLFsicGF0aCIse2Q6Ik02IDl2MTIifV0sWyJwYXRoIix7ZDoibTIxIDMtNiA2In1dLFsicGF0aCIse2Q6Im0yMSA5LTYtNiJ9XSxbInBhdGgiLHtkOiJNMTggMTEuNVYxNSJ9XSxbImNpcmNsZSIse2N4OiIxOCIsY3k6IjE4IixyOiIzIn1dXX0pO3ZhciBFJCxJV2U9bCgoKT0+e0UkPVtbImNpcmNsZSIse2N4OiI1IixjeToiNiIscjoiMyJ9XSxbInBhdGgiLHtkOiJNNSA5djEyIn1dLFsicGF0aCIse2Q6Im0xNSA5LTMtMyAzLTMifV0sWyJwYXRoIix7ZDoiTTEyIDZoNWEyIDIgMCAwIDEgMiAydjMifV0sWyJwYXRoIix7ZDoiTTE5IDE1djYifV0sWyJwYXRoIix7ZDoiTTIyIDE4aC02In1dXX0pO3ZhciAkJCxOV2U9bCgoKT0+eyQkPVtbImNpcmNsZSIse2N4OiI2IixjeToiNiIscjoiMyJ9XSxbInBhdGgiLHtkOiJNNiA5djEyIn1dLFsicGF0aCIse2Q6Ik0xMyA2aDNhMiAyIDAgMCAxIDIgMnYzIn1dLFsicGF0aCIse2Q6Ik0xOCAxNXY2In1dLFsicGF0aCIse2Q6Ik0yMSAxOGgtNiJ9XV19KTt2YXIgUCQsRldlPWwoKCk9PntQJD1bWyJjaXJjbGUiLHtjeDoiMTgiLGN5OiIxOCIscjoiMyJ9XSxbImNpcmNsZSIse2N4OiI2IixjeToiNiIscjoiMyJ9XSxbInBhdGgiLHtkOiJNMTggNlY1In1dLFsicGF0aCIse2Q6Ik0xOCAxMXYtMSJ9XSxbImxpbmUiLHt4MToiNiIseDI6IjYiLHkxOiI5Iix5MjoiMjEifV1dfSk7dmFyIEkkLE9XZT1sKCgpPT57SSQ9W1siY2lyY2xlIix7Y3g6IjE4IixjeToiMTgiLHI6IjMifV0sWyJjaXJjbGUiLHtjeDoiNiIsY3k6IjYiLHI6IjMifV0sWyJwYXRoIix7ZDoiTTEzIDZoM2EyIDIgMCAwIDEgMiAydjcifV0sWyJsaW5lIix7eDE6IjYiLHgyOiI2Iix5MToiOSIseTI6IjIxIn1dXX0pO3ZhciBOJCxSV2U9bCgoKT0+e04kPVtbInBhdGgiLHtkOiJNMTUgMjJ2LTRhNC44IDQuOCAwIDAgMC0xLTMuNWMzIDAgNi0yIDYtNS41LjA4LTEuMjUtLjI3LTIuNDgtMS0zLjUuMjgtMS4xNS4yOC0yLjM1IDAtMy41IDAgMC0xIDAtMyAxLjUtMi42NC0uNS01LjM2LS41LTggMEM2IDIgNSAyIDUgMmMtLjMgMS4xNS0uMyAyLjM1IDAgMy41QTUuNDAzIDUuNDAzIDAgMCAwIDQgOWMwIDMuNSAzIDUuNSA2IDUuNS0uMzkuNDktLjY4IDEuMDUtLjg1IDEuNjUtLjE3LjYtLjIyIDEuMjMtLjE1IDEuODV2NCJ9XSxbInBhdGgiLHtkOiJNOSAxOGMtNC41MSAyLTUtMi03LTIifV1dfSk7dmFyIEYkLEJXZT1sKCgpPT57RiQ9W1sicGF0aCIse2Q6Im0yMiAxMy4yOS0zLjMzLTEwYS40Mi40MiAwIDAgMC0uMTQtLjE4LjM4LjM4IDAgMCAwLS4yMi0uMTEuMzkuMzkgMCAwIDAtLjIzLjA3LjQyLjQyIDAgMCAwLS4xNC4xOGwtMi4yNiA2LjY3SDguMzJMNi4xIDMuMjZhLjQyLjQyIDAgMCAwLS4xLS4xOC4zOC4zOCAwIDAgMC0uMjYtLjA4LjM5LjM5IDAgMCAwLS4yMy4wNy40Mi40MiAwIDAgMC0uMTQuMThMMiAxMy4yOWEuNzQuNzQgMCAwIDAgLjI3LjgzTDEyIDIxbDkuNjktNi44OGEuNzEuNzEgMCAwIDAgLjMxLS44M1oifV1dfSk7dmFyIE8kLEhXZT1sKCgpPT57TyQ9W1sicGF0aCIse2Q6Ik01LjExNiA0LjEwNEExIDEgMCAwIDEgNi4xMSAzaDExLjc4YTEgMSAwIDAgMSAuOTk0IDEuMTA1TDE3LjE5IDIwLjIxQTIgMiAwIDAgMSAxNS4yIDIySDguOGEyIDIgMCAwIDEtMi0xLjc5eiJ9XSxbInBhdGgiLHtkOiJNNiAxMmE1IDUgMCAwIDEgNiAwIDUgNSAwIDAgMCA2IDAifV1dfSk7dmFyIFIkLHFXZT1sKCgpPT57UiQ9W1sicGF0aCIse2Q6Ik0xNS42ODYgMTVBMTQuNSAxNC41IDAgMCAxIDEyIDIyYTE0LjUgMTQuNSAwIDAgMSAwLTIwIDEwIDEwIDAgMSAwIDkuNTQyIDEzIn1dLFsicGF0aCIse2Q6Ik0yIDEyaDguNSJ9XSxbInBhdGgiLHtkOiJNMjAgNlY0YTIgMiAwIDEgMC00IDB2MiJ9XSxbInJlY3QiLHt3aWR0aDoiOCIsaGVpZ2h0OiI1Iix4OiIxNCIseToiNiIscng6IjEifV1dfSk7dmFyIEIkLGpXZT1sKCgpPT57QiQ9W1siY2lyY2xlIix7Y3g6IjYiLGN5OiIxNSIscjoiNCJ9XSxbImNpcmNsZSIse2N4OiIxOCIsY3k6IjE1IixyOiI0In1dLFsicGF0aCIse2Q6Ik0xNCAxNWEyIDIgMCAwIDAtMi0yIDIgMiAwIDAgMC0yIDIifV0sWyJwYXRoIix7ZDoiTTIuNSAxMyA1IDdjLjctMS4zIDEuNC0yIDMtMiJ9XSxbInBhdGgiLHtkOiJNMjEuNSAxMyAxOSA3Yy0uNy0xLjMtMS41LTItMy0yIn1dXX0pO3ZhciBIJCxWV2U9bCgoKT0+e0gkPVtbInBhdGgiLHtkOiJtMTYgMyA1IDUifV0sWyJwYXRoIix7ZDoiTTIgMTJoMjBBMTAgMTAgMCAxIDEgMTIgMmExNC41IDE0LjUgMCAwIDAgMCAyMCAxNC41IDE0LjUgMCAwIDAgNC0xMCJ9XSxbInBhdGgiLHtkOiJtMjEgMy01IDUifV1dfSk7dmFyIHEkLFVXZT1sKCgpPT57cSQ9W1sicGF0aCIse2Q6Ik0xMC4xMTQgNC40NjJBMTQuNSAxNC41IDAgMCAxIDEyIDJhMTAgMTAgMCAwIDEgOS4zMTMgMTMuNjQzIn1dLFsicGF0aCIse2Q6Ik0xNS41NTcgMTUuNTU2QTE0LjUgMTQuNSAwIDAgMSAxMiAyMiAxMCAxMCAwIDAgMSA0LjkyOSA0LjkyOSJ9XSxbInBhdGgiLHtkOiJNMTUuODkyIDEwLjIzNEExNC41IDE0LjUgMCAwIDAgMTIgMmExMCAxMCAwIDAgMC0zLjY0My42ODcifV0sWyJwYXRoIix7ZDoiTTE3LjY1NiAxMkgyMiJ9XSxbInBhdGgiLHtkOiJNMTkuMDcxIDE5LjA3MUExMCAxMCAwIDAgMSAxMiAyMiAxNC41IDE0LjUgMCAwIDEgOC40NCA4LjQ1In1dLFsicGF0aCIse2Q6Ik0yIDEyaDEwIn1dLFsicGF0aCIse2Q6Im0yIDIgMjAgMjAifV1dfSk7dmFyIGokLFdXZT1sKCgpPT57aiQ9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjEwIn1dLFsicGF0aCIse2Q6Ik0xMiAyYTE0LjUgMTQuNSAwIDAgMCAwIDIwIDE0LjUgMTQuNSAwIDAgMCAwLTIwIn1dLFsicGF0aCIse2Q6Ik0yIDEyaDIwIn1dXX0pO3ZhciBWJCxHV2U9bCgoKT0+e1YkPVtbInBhdGgiLHtkOiJNMTIgMTNWMmw4IDQtOCA0In1dLFsicGF0aCIse2Q6Ik0yMC41NjEgMTAuMjIyYTkgOSAwIDEgMS0xMi41NS01LjI5In1dLFsicGF0aCIse2Q6Ik04LjAwMiA5Ljk5N2E1IDUgMCAxIDAgOC45IDIuMDIifV1dfSk7dmFyIFUkLFlXZT1sKCgpPT57VSQ9W1sicGF0aCIse2Q6Ik0yIDIxVjMifV0sWyJwYXRoIix7ZDoiTTIgNWgxOGEyIDIgMCAwIDEgMiAydjhhMiAyIDAgMCAxLTIgMkgyLjI2In1dLFsicGF0aCIse2Q6Ik03IDE3djNhMSAxIDAgMCAwIDEgMWg1YTEgMSAwIDAgMCAxLTF2LTMifV0sWyJjaXJjbGUiLHtjeDoiMTYiLGN5OiIxMSIscjoiMiJ9XSxbImNpcmNsZSIse2N4OiI4IixjeToiMTEiLHI6IjIifV1dfSk7dmFyIFckLFpXZT1sKCgpPT57VyQ9W1sicGF0aCIse2Q6Ik0yMS40MiAxMC45MjJhMSAxIDAgMCAwLS4wMTktMS44MzhMMTIuODMgNS4xOGEyIDIgMCAwIDAtMS42NiAwTDIuNiA5LjA4YTEgMSAwIDAgMCAwIDEuODMybDguNTcgMy45MDhhMiAyIDAgMCAwIDEuNjYgMHoifV0sWyJwYXRoIix7ZDoiTTIyIDEwdjYifV0sWyJwYXRoIix7ZDoiTTYgMTIuNVYxNmE2IDMgMCAwIDAgMTIgMHYtMy41In1dXX0pO3ZhciBvNSxYV2U9bCgoKT0+e281PVtbInBhdGgiLHtkOiJNMTIgM3YxN2ExIDEgMCAwIDEtMSAxSDVhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJoMTRhMiAyIDAgMCAxIDIgMnY2YTEgMSAwIDAgMS0xIDFIMyJ9XSxbInBhdGgiLHtkOiJtMTYgMTkgMiAyIDQtNCJ9XV19KTt2YXIgbjUsUVdlPWwoKCk9PntuNT1bWyJwYXRoIix7ZDoiTTEyIDN2MTdhMSAxIDAgMCAxLTEgMUg1YTIgMiAwIDAgMS0yLTJWNWEyIDIgMCAwIDEgMi0yaDE0YTIgMiAwIDAgMSAyIDJ2NmExIDEgMCAwIDEtMSAxSDMifV0sWyJwYXRoIix7ZDoiTTE2IDE5aDYifV0sWyJwYXRoIix7ZDoiTTE5IDIydi02In1dXX0pO3ZhciBHJCxLV2U9bCgoKT0+e0ckPVtbInBhdGgiLHtkOiJNMjIgNVYybC01Ljg5IDUuODkifV0sWyJjaXJjbGUiLHtjeDoiMTYuNiIsY3k6IjE1Ljg5IixyOiIzIn1dLFsiY2lyY2xlIix7Y3g6IjguMTEiLGN5OiI3LjQiLHI6IjMifV0sWyJjaXJjbGUiLHtjeDoiMTIuMzUiLGN5OiIxMS42NSIscjoiMyJ9XSxbImNpcmNsZSIse2N4OiIxMy45MSIsY3k6IjUuODUiLHI6IjMifV0sWyJjaXJjbGUiLHtjeDoiMTguMTUiLGN5OiIxMC4wOSIscjoiMyJ9XSxbImNpcmNsZSIse2N4OiI2LjU2IixjeToiMTMuMiIscjoiMyJ9XSxbImNpcmNsZSIse2N4OiIxMC44IixjeToiMTcuNDQiLHI6IjMifV0sWyJjaXJjbGUiLHtjeDoiNSIsY3k6IjE5IixyOiIzIn1dXX0pO3ZhciBzNSxKV2U9bCgoKT0+e3M1PVtbInBhdGgiLHtkOiJNMTIgM3YxN2ExIDEgMCAwIDEtMSAxSDVhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJoMTRhMiAyIDAgMCAxIDIgMnY2YTEgMSAwIDAgMS0xIDFIMyJ9XSxbInBhdGgiLHtkOiJtMTYgMTYgNSA1In1dLFsicGF0aCIse2Q6Im0xNiAyMSA1LTUifV1dfSk7dmFyIGw1LGVHZT1sKCgpPT57bDU9W1sicGF0aCIse2Q6Ik0xMiAzdjE4In1dLFsicGF0aCIse2Q6Ik0zIDEyaDE4In1dLFsicmVjdCIse3g6IjMiLHk6IjMiLHdpZHRoOiIxOCIsaGVpZ2h0OiIxOCIscng6IjIifV1dfSk7dmFyIFkkLHRHZT1sKCgpPT57WSQ9W1sicGF0aCIse2Q6Ik0xNSAzdjE4In1dLFsicGF0aCIse2Q6Ik0zIDEyaDE4In1dLFsicGF0aCIse2Q6Ik05IDN2MTgifV0sWyJyZWN0Iix7eDoiMyIseToiMyIsd2lkdGg6IjE4IixoZWlnaHQ6IjE4IixyeDoiMiJ9XV19KTt2YXIgRGMsckdlPWwoKCk9PntEYz1bWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiIzIixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNMyA5aDE4In1dLFsicGF0aCIse2Q6Ik0zIDE1aDE4In1dLFsicGF0aCIse2Q6Ik05IDN2MTgifV0sWyJwYXRoIix7ZDoiTTE1IDN2MTgifV1dfSk7dmFyIFokLGFHZT1sKCgpPT57WiQ9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiOSIscjoiMSJ9XSxbImNpcmNsZSIse2N4OiIxOSIsY3k6IjkiLHI6IjEifV0sWyJjaXJjbGUiLHtjeDoiNSIsY3k6IjkiLHI6IjEifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxNSIscjoiMSJ9XSxbImNpcmNsZSIse2N4OiIxOSIsY3k6IjE1IixyOiIxIn1dLFsiY2lyY2xlIix7Y3g6IjUiLGN5OiIxNSIscjoiMSJ9XV19KTt2YXIgWCQsaUdlPWwoKCk9PntYJD1bWyJjaXJjbGUiLHtjeDoiOSIsY3k6IjEyIixyOiIxIn1dLFsiY2lyY2xlIix7Y3g6IjkiLGN5OiI1IixyOiIxIn1dLFsiY2lyY2xlIix7Y3g6IjkiLGN5OiIxOSIscjoiMSJ9XSxbImNpcmNsZSIse2N4OiIxNSIsY3k6IjEyIixyOiIxIn1dLFsiY2lyY2xlIix7Y3g6IjE1IixjeToiNSIscjoiMSJ9XSxbImNpcmNsZSIse2N4OiIxNSIsY3k6IjE5IixyOiIxIn1dXX0pO3ZhciBRJCxvR2U9bCgoKT0+e1EkPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjUiLHI6IjEifV0sWyJjaXJjbGUiLHtjeDoiMTkiLGN5OiI1IixyOiIxIn1dLFsiY2lyY2xlIix7Y3g6IjUiLGN5OiI1IixyOiIxIn1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjEifV0sWyJjaXJjbGUiLHtjeDoiMTkiLGN5OiIxMiIscjoiMSJ9XSxbImNpcmNsZSIse2N4OiI1IixjeToiMTIiLHI6IjEifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxOSIscjoiMSJ9XSxbImNpcmNsZSIse2N4OiIxOSIsY3k6IjE5IixyOiIxIn1dLFsiY2lyY2xlIix7Y3g6IjUiLGN5OiIxOSIscjoiMSJ9XV19KTt2YXIgSyQsbkdlPWwoKCk9PntLJD1bWyJwYXRoIix7ZDoiTTMgN1Y1YzAtMS4xLjktMiAyLTJoMiJ9XSxbInBhdGgiLHtkOiJNMTcgM2gyYzEuMSAwIDIgLjkgMiAydjIifV0sWyJwYXRoIix7ZDoiTTIxIDE3djJjMCAxLjEtLjkgMi0yIDJoLTIifV0sWyJwYXRoIix7ZDoiTTcgMjFINWMtMS4xIDAtMi0uOS0yLTJ2LTIifV0sWyJyZWN0Iix7d2lkdGg6IjciLGhlaWdodDoiNSIseDoiNyIseToiNyIscng6IjEifV0sWyJyZWN0Iix7d2lkdGg6IjciLGhlaWdodDoiNSIseDoiMTAiLHk6IjEyIixyeDoiMSJ9XV19KTt2YXIgSiQsc0dlPWwoKCk9PntKJD1bWyJwYXRoIix7ZDoibTExLjkgMTIuMSA0LjUxNC00LjUxNCJ9XSxbInBhdGgiLHtkOiJNMjAuMSAyLjNhMSAxIDAgMCAwLTEuNCAwbC0xLjExNCAxLjExNEEyIDIgMCAwIDAgMTcgNC44Mjh2MS4zNDRhMiAyIDAgMCAxLS41ODYgMS40MTRBMiAyIDAgMCAxIDE3LjgyOCA3aDEuMzQ0YTIgMiAwIDAgMCAxLjQxNC0uNTg2TDIxLjcgNS4zYTEgMSAwIDAgMCAwLTEuNHoifV0sWyJwYXRoIix7ZDoibTYgMTYgMiAyIn1dLFsicGF0aCIse2Q6Ik04LjIzIDkuODVBMyAzIDAgMCAxIDExIDhhNSA1IDAgMCAxIDUgNSAzIDMgMCAwIDEtMS44NSAyLjc3bC0uOTIuMzhBMiAyIDAgMCAwIDEyIDE4YTQgNCAwIDAgMS00IDQgNiA2IDAgMCAxLTYtNiA0IDQgMCAwIDEgNC00IDIgMiAwIDAgMCAxLjg1LTEuMjN6In1dXX0pO3ZhciBlUCxsR2U9bCgoKT0+e2VQPVtbInBhdGgiLHtkOiJNMTMuMTQ0IDIxLjE0NEE3LjI3NCAxMC40NDUgNDUgMSAwIDIuODU2IDEwLjg1NiJ9XSxbInBhdGgiLHtkOiJNMTMuMTQ0IDIxLjE0NEE3LjI3NCA0LjM2NSA0NSAwIDAgMi44NTYgMTAuODU2YTcuMjc0IDQuMzY1IDQ1IDAgMCAxMC4yODggMTAuMjg4In1dLFsicGF0aCIse2Q6Ik0xNi41NjUgMTAuNDM1IDE4LjYgOC40YTIuNTAxIDIuNTAxIDAgMSAwIDEuNjUtNC42NSAyLjUgMi41IDAgMSAwLTQuNjYgMS42NmwtMi4wMjQgMi4wMjUifV0sWyJwYXRoIix7ZDoibTguNSAxNi41LTEtMSJ9XV19KTt2YXIgdFAsY0dlPWwoKCk9Pnt0UD1bWyJwYXRoIix7ZDoiTTEyIDE2SDRhMiAyIDAgMSAxIDAtNGgxNmEyIDIgMCAxIDEgMCA0aC00LjI1In1dLFsicGF0aCIse2Q6Ik01IDEyYTIgMiAwIDAgMS0yLTIgOSA3IDAgMCAxIDE4IDAgMiAyIDAgMCAxLTIgMiJ9XSxbInBhdGgiLHtkOiJNNSAxNmEyIDIgMCAwIDAtMiAyIDMgMyAwIDAgMCAzIDNoMTJhMyAzIDAgMCAwIDMtMyAyIDIgMCAwIDAtMi0ycTAgMCAwIDAifV0sWyJwYXRoIix7ZDoibTYuNjcgMTIgNi4xMyA0LjZhMiAyIDAgMCAwIDIuOC0uNGwzLjE1LTQuMiJ9XV19KTt2YXIgclAsZEdlPWwoKCk9PntyUD1bWyJwYXRoIix7ZDoibTE1IDEyLTkuMzczIDkuMzczYTEgMSAwIDAgMS0zLjAwMS0zTDEyIDkifV0sWyJwYXRoIix7ZDoibTE4IDE1IDQtNCJ9XSxbInBhdGgiLHtkOiJtMjEuNSAxMS41LTEuOTE0LTEuOTE0QTIgMiAwIDAgMSAxOSA4LjE3MnYtLjM0NGEyIDIgMCAwIDAtLjU4Ni0xLjQxNGwtMS42NTctMS42NTdBNiA2IDAgMCAwIDEyLjUxNiAzSDlsMS4yNDMgMS4yNDNBNiA2IDAgMCAxIDEyIDguNDg1VjEwbDIgMmgxLjE3MmEyIDIgMCAwIDEgMS40MTQuNTg2TDE4LjUgMTQuNSJ9XV19KTt2YXIgYVAsdUdlPWwoKCk9PnthUD1bWyJwYXRoIix7ZDoiTTExIDE1aDJhMiAyIDAgMSAwIDAtNGgtM2MtLjYgMC0xLjEuMi0xLjQuNkwzIDE3In1dLFsicGF0aCIse2Q6Im03IDIxIDEuNi0xLjRjLjMtLjQuOC0uNiAxLjQtLjZoNGMxLjEgMCAyLjEtLjQgMi44LTEuMmw0LjYtNC40YTIgMiAwIDAgMC0yLjc1LTIuOTFsLTQuMiAzLjkifV0sWyJwYXRoIix7ZDoibTIgMTYgNiA2In1dLFsiY2lyY2xlIix7Y3g6IjE2IixjeToiOSIscjoiMi45In1dLFsiY2lyY2xlIix7Y3g6IjYiLGN5OiI1IixyOiIzIn1dXX0pO3ZhciBpUCxmR2U9bCgoKT0+e2lQPVtbInBhdGgiLHtkOiJNMTIuMDM1IDE3LjAxMmEzIDMgMCAwIDAtMy0zbC0uMzExLS4wMDJhLjcyLjcyIDAgMCAxLS41MDUtMS4yMjlsMS4xOTUtMS4xOTVBMiAyIDAgMCAxIDEwLjgyOCAxMUgxMmEyIDIgMCAwIDAgMC00SDkuMjQzYTMgMyAwIDAgMC0yLjEyMi44NzlsLTIuNzA3IDIuNzA3QTQuODMgNC44MyAwIDAgMCAzIDE0YTggOCAwIDAgMCA4IDhoMmE4IDggMCAwIDAgOC04VjdhMiAyIDAgMSAwLTQgMHYyYTIgMiAwIDEgMCA0IDAifV0sWyJwYXRoIix7ZDoiTTEzLjg4OCA5LjY2MkEyIDIgMCAwIDAgMTcgOFY1QTIgMiAwIDEgMCAxMyA1In1dLFsicGF0aCIse2Q6Ik05IDVBMiAyIDAgMSAwIDUgNVYxMCJ9XSxbInBhdGgiLHtkOiJNOSA3VjRBMiAyIDAgMSAxIDEzIDRWNy4yNjgifV1dfSk7dmFyIGM1LHBHZT1sKCgpPT57YzU9W1sicGF0aCIse2Q6Ik0xOCAxMS41VjlhMiAyIDAgMCAwLTItMmEyIDIgMCAwIDAtMiAydjEuNCJ9XSxbInBhdGgiLHtkOiJNMTQgMTBWOGEyIDIgMCAwIDAtMi0yYTIgMiAwIDAgMC0yIDJ2MiJ9XSxbInBhdGgiLHtkOiJNMTAgOS45VjlhMiAyIDAgMCAwLTItMmEyIDIgMCAwIDAtMiAydjUifV0sWyJwYXRoIix7ZDoiTTYgMTRhMiAyIDAgMCAwLTItMmEyIDIgMCAwIDAtMiAyIn1dLFsicGF0aCIse2Q6Ik0xOCAxMWEyIDIgMCAxIDEgNCAwdjNhOCA4IDAgMCAxLTggOGgtNGE4IDggMCAwIDEtOC04IDIgMiAwIDEgMSA0IDAifV1dfSk7dmFyIG9QLGhHZT1sKCgpPT57b1A9W1sicGF0aCIse2Q6Ik0xMSAxNGgyYTIgMiAwIDAgMCAwLTRoLTNjLS42IDAtMS4xLjItMS40LjZMMyAxNiJ9XSxbInBhdGgiLHtkOiJtMTQuNDUgMTMuMzkgNS4wNS00LjY5NEMyMC4xOTYgOCAyMSA2Ljg1IDIxIDUuNzVhMi43NSAyLjc1IDAgMCAwLTQuNzk3LTEuODM3LjI3Ni4yNzYgMCAwIDEtLjQwNiAwQTIuNzUgMi43NSAwIDAgMCAxMSA1Ljc1YzAgMS4yLjgwMiAyLjI0OCAxLjUgMi45NDZMMTYgMTEuOTUifV0sWyJwYXRoIix7ZDoibTIgMTUgNiA2In1dLFsicGF0aCIse2Q6Im03IDIwIDEuNi0xLjRjLjMtLjQuOC0uNiAxLjQtLjZoNGMxLjEgMCAyLjEtLjQgMi44LTEuMmw0LjYtNC40YTEgMSAwIDAgMC0yLjc1LTIuOTEifV1dfSk7dmFyIGQ1LG1HZT1sKCgpPT57ZDU9W1sicGF0aCIse2Q6Ik0xMSAxMmgyYTIgMiAwIDEgMCAwLTRoLTNjLS42IDAtMS4xLjItMS40LjZMMyAxNCJ9XSxbInBhdGgiLHtkOiJtNyAxOCAxLjYtMS40Yy4zLS40LjgtLjYgMS40LS42aDRjMS4xIDAgMi4xLS40IDIuOC0xLjJsNC42LTQuNGEyIDIgMCAwIDAtMi43NS0yLjkxbC00LjIgMy45In1dLFsicGF0aCIse2Q6Im0yIDEzIDYgNiJ9XV19KTt2YXIgblAsZ0dlPWwoKCk9PntuUD1bWyJwYXRoIix7ZDoiTTE4IDEyLjVWMTBhMiAyIDAgMCAwLTItMmEyIDIgMCAwIDAtMiAydjEuNCJ9XSxbInBhdGgiLHtkOiJNMTQgMTFWOWEyIDIgMCAxIDAtNCAwdjIifV0sWyJwYXRoIix7ZDoiTTEwIDEwLjVWNWEyIDIgMCAxIDAtNCAwdjkifV0sWyJwYXRoIix7ZDoibTcgMTUtMS43Ni0xLjc2YTIgMiAwIDAgMC0yLjgzIDIuODJsMy42IDMuNkM3LjUgMjEuMTQgOS4yIDIyIDEyIDIyaDJhOCA4IDAgMCAwIDgtOFY3YTIgMiAwIDEgMC00IDB2NSJ9XV19KTt2YXIgc1AseEdlPWwoKCk9PntzUD1bWyJwYXRoIix7ZDoiTTEyIDNWMiJ9XSxbInBhdGgiLHtkOiJtMTUuNCAxNy40IDMuMi0yLjhhMiAyIDAgMSAxIDIuOCAyLjlsLTMuNiAzLjNjLS43LjgtMS43IDEuMi0yLjggMS4yaC00Yy0xLjEgMC0yLjEtLjQtMi44LTEuMmwtMS4zMDItMS40NjRBMSAxIDAgMCAwIDYuMTUxIDE5SDUifV0sWyJwYXRoIix7ZDoiTTIgMTRoMTJhMiAyIDAgMCAxIDAgNGgtMiJ9XSxbInBhdGgiLHtkOiJNNCAxMGgxNiJ9XSxbInBhdGgiLHtkOiJNNSAxMGE3IDcgMCAwIDEgMTQgMCJ9XSxbInBhdGgiLHtkOiJNNSAxNHY2YTEgMSAwIDAgMS0xIDFIMiJ9XV19KTt2YXIgbFAsYkdlPWwoKCk9PntsUD1bWyJwYXRoIix7ZDoiTTIuMDQ4IDE4LjU2NkEyIDIgMCAwIDAgNCAyMWgxNmEyIDIgMCAwIDAgMS45NTItMi40MzRsLTItOUEyIDIgMCAwIDAgMTggOEg2YTIgMiAwIDAgMC0xLjk1MiAxLjU2NnoifV0sWyJwYXRoIix7ZDoiTTggMTFWNmE0IDQgMCAwIDEgOCAwdjUifV1dfSk7dmFyIGNQLHZHZT1sKCgpPT57Y1A9W1sicGF0aCIse2Q6Ik0xOCAxMVY2YTIgMiAwIDAgMC0yLTJhMiAyIDAgMCAwLTIgMiJ9XSxbInBhdGgiLHtkOiJNMTQgMTBWNGEyIDIgMCAwIDAtMi0yYTIgMiAwIDAgMC0yIDJ2MiJ9XSxbInBhdGgiLHtkOiJNMTAgMTAuNVY2YTIgMiAwIDAgMC0yLTJhMiAyIDAgMCAwLTIgMnY4In1dLFsicGF0aCIse2Q6Ik0xOCA4YTIgMiAwIDEgMSA0IDB2NmE4IDggMCAwIDEtOCA4aC0yYy0yLjggMC00LjUtLjg2LTUuOTktMi4zNGwtMy42LTMuNmEyIDIgMCAwIDEgMi44My0yLjgyTDcgMTUifV1dfSk7dmFyIGRQLHlHZT1sKCgpPT57ZFA9W1sicGF0aCIse2Q6Ik0xMiAydjgifV0sWyJwYXRoIix7ZDoibTE2IDYtNCA0LTQtNCJ9XSxbInJlY3QiLHt3aWR0aDoiMjAiLGhlaWdodDoiOCIseDoiMiIseToiMTQiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik02IDE4aC4wMSJ9XSxbInBhdGgiLHtkOiJNMTAgMThoLjAxIn1dXX0pO3ZhciB1UCx3R2U9bCgoKT0+e3VQPVtbInBhdGgiLHtkOiJNMTAgMTZoLjAxIn1dLFsicGF0aCIse2Q6Ik0yLjIxMiAxMS41NzdhMiAyIDAgMCAwLS4yMTIuODk2VjE4YTIgMiAwIDAgMCAyIDJoMTZhMiAyIDAgMCAwIDItMnYtNS41MjdhMiAyIDAgMCAwLS4yMTItLjg5NkwxOC41NSA1LjExQTIgMiAwIDAgMCAxNi43NiA0SDcuMjRhMiAyIDAgMCAwLTEuNzkgMS4xMXoifV0sWyJwYXRoIix7ZDoiTTIxLjk0NiAxMi4wMTNIMi4wNTQifV0sWyJwYXRoIix7ZDoiTTYgMTZoLjAxIn1dXX0pO3ZhciBmUCxNR2U9bCgoKT0+e2ZQPVtbInBhdGgiLHtkOiJtMTEgMTcgMiAyYTEgMSAwIDEgMCAzLTMifV0sWyJwYXRoIix7ZDoibTE0IDE0IDIuNSAyLjVhMSAxIDAgMSAwIDMtM2wtMy44OC0zLjg4YTMgMyAwIDAgMC00LjI0IDBsLS44OC44OGExIDEgMCAxIDEtMy0zbDIuODEtMi44MWE1Ljc5IDUuNzkgMCAwIDEgNy4wNi0uODdsLjQ3LjI4YTIgMiAwIDAgMCAxLjQyLjI1TDIxIDQifV0sWyJwYXRoIix7ZDoibTIxIDMgMSAxMWgtMiJ9XSxbInBhdGgiLHtkOiJNMyAzIDIgMTRsNi41IDYuNWExIDEgMCAxIDAgMy0zIn1dLFsicGF0aCIse2Q6Ik0zIDRoOCJ9XV19KTt2YXIgcFAsa0dlPWwoKCk9PntwUD1bWyJwYXRoIix7ZDoibTE2IDYtNC00LTQgNCJ9XSxbInBhdGgiLHtkOiJNMTIgMnY4In1dLFsicmVjdCIse3dpZHRoOiIyMCIsaGVpZ2h0OiI4Iix4OiIyIix5OiIxNCIscng6IjIifV0sWyJwYXRoIix7ZDoiTTYgMThoLjAxIn1dLFsicGF0aCIse2Q6Ik0xMCAxOGguMDEifV1dfSk7dmFyIGhQLFNHZT1sKCgpPT57aFA9W1sicGF0aCIse2Q6Ik0xMCAxMFY1YTEgMSAwIDAgMSAxLTFoMmExIDEgMCAwIDEgMSAxdjUifV0sWyJwYXRoIix7ZDoiTTE0IDZhNiA2IDAgMCAxIDYgNnYzIn1dLFsicGF0aCIse2Q6Ik00IDE1di0zYTYgNiAwIDAgMSA2LTYifV0sWyJyZWN0Iix7eDoiMiIseToiMTUiLHdpZHRoOiIyMCIsaGVpZ2h0OiI0IixyeDoiMSJ9XV19KTt2YXIgbVAsekdlPWwoKCk9PnttUD1bWyJsaW5lIix7eDE6IjQiLHgyOiIyMCIseTE6IjkiLHkyOiI5In1dLFsibGluZSIse3gxOiI0Iix4MjoiMjAiLHkxOiIxNSIseTI6IjE1In1dLFsibGluZSIse3gxOiIxMCIseDI6IjgiLHkxOiIzIix5MjoiMjEifV0sWyJsaW5lIix7eDE6IjE2Iix4MjoiMTQiLHkxOiIzIix5MjoiMjEifV1dfSk7dmFyIGdQLENHZT1sKCgpPT57Z1A9W1sicGF0aCIse2Q6Ik0xNCAxOGEyIDIgMCAwIDAtNCAwIn1dLFsicGF0aCIse2Q6Im0xOSAxMS0yLjExLTYuNjU3YTIgMiAwIDAgMC0yLjc1Mi0xLjE0OGwtMS4yNzYuNjFBMiAyIDAgMCAxIDEyIDRIOC41YTIgMiAwIDAgMC0xLjkyNSAxLjQ1Nkw1IDExIn1dLFsicGF0aCIse2Q6Ik0yIDExaDIwIn1dLFsiY2lyY2xlIix7Y3g6IjE3IixjeToiMTgiLHI6IjMifV0sWyJjaXJjbGUiLHtjeDoiNyIsY3k6IjE4IixyOiIzIn1dXX0pO3ZhciB4UCxfR2U9bCgoKT0+e3hQPVtbInBhdGgiLHtkOiJtNS4yIDYuMiAxLjQgMS40In1dLFsicGF0aCIse2Q6Ik0yIDEzaDIifV0sWyJwYXRoIix7ZDoiTTIwIDEzaDIifV0sWyJwYXRoIix7ZDoibTE3LjQgNy42IDEuNC0xLjQifV0sWyJwYXRoIix7ZDoiTTIyIDE3SDIifV0sWyJwYXRoIix7ZDoiTTIyIDIxSDIifV0sWyJwYXRoIix7ZDoiTTE2IDEzYTQgNCAwIDAgMC04IDAifV0sWyJwYXRoIix7ZDoiTTEyIDVWMi41In1dXX0pO3ZhciBiUCxUR2U9bCgoKT0+e2JQPVtbInBhdGgiLHtkOiJNMTAgMTJINiJ9XSxbInBhdGgiLHtkOiJNMTAgMTVWOSJ9XSxbInBhdGgiLHtkOiJNMTQgMTQuNWEuNS41IDAgMCAwIC41LjVoMWEyLjUgMi41IDAgMCAwIDIuNS0yLjV2LTFBMi41IDIuNSAwIDAgMCAxNS41IDloLTFhLjUuNSAwIDAgMC0uNS41eiJ9XSxbInBhdGgiLHtkOiJNNiAxNVY5In1dLFsicmVjdCIse3g6IjIiLHk6IjUiLHdpZHRoOiIyMCIsaGVpZ2h0OiIxNCIscng6IjIifV1dfSk7dmFyIHZQLExHZT1sKCgpPT57dlA9W1sicGF0aCIse2Q6Ik0yMiA5YTEgMSAwIDAgMC0xLTFIM2ExIDEgMCAwIDAtMSAxdjRhMSAxIDAgMCAwIDEgMWgxbDIgMmgxMmwyLTJoMWExIDEgMCAwIDAgMS0xWiJ9XSxbInBhdGgiLHtkOiJNNy41IDEyaDkifV1dfSk7dmFyIHlQLERHZT1sKCgpPT57eVA9W1sicGF0aCIse2Q6Ik00IDEyaDgifV0sWyJwYXRoIix7ZDoiTTQgMThWNiJ9XSxbInBhdGgiLHtkOiJNMTIgMThWNiJ9XSxbInBhdGgiLHtkOiJtMTcgMTIgMy0ydjgifV1dfSk7dmFyIHdQLEFHZT1sKCgpPT57d1A9W1sicGF0aCIse2Q6Ik00IDEyaDgifV0sWyJwYXRoIix7ZDoiTTQgMThWNiJ9XSxbInBhdGgiLHtkOiJNMTIgMThWNiJ9XSxbInBhdGgiLHtkOiJNMjEgMThoLTRjMC00IDQtMyA0LTYgMC0xLjUtMi0yLjUtNC0xIn1dXX0pO3ZhciBNUCxFR2U9bCgoKT0+e01QPVtbInBhdGgiLHtkOiJNNCAxMmg4In1dLFsicGF0aCIse2Q6Ik00IDE4VjYifV0sWyJwYXRoIix7ZDoiTTEyIDE4VjYifV0sWyJwYXRoIix7ZDoiTTE3LjUgMTAuNWMxLjctMSAzLjUgMCAzLjUgMS41YTIgMiAwIDAgMS0yIDIifV0sWyJwYXRoIix7ZDoiTTE3IDE3LjVjMiAxLjUgNCAuMyA0LTEuNWEyIDIgMCAwIDAtMi0yIn1dXX0pO3ZhciBrUCwkR2U9bCgoKT0+e2tQPVtbInBhdGgiLHtkOiJNMTIgMThWNiJ9XSxbInBhdGgiLHtkOiJNMTcgMTB2M2ExIDEgMCAwIDAgMSAxaDMifV0sWyJwYXRoIix7ZDoiTTIxIDEwdjgifV0sWyJwYXRoIix7ZDoiTTQgMTJoOCJ9XSxbInBhdGgiLHtkOiJNNCAxOFY2In1dXX0pO3ZhciBTUCxQR2U9bCgoKT0+e1NQPVtbInBhdGgiLHtkOiJNNCAxMmg4In1dLFsicGF0aCIse2Q6Ik00IDE4VjYifV0sWyJwYXRoIix7ZDoiTTEyIDE4VjYifV0sWyJwYXRoIix7ZDoiTTE3IDEzdi0zaDQifV0sWyJwYXRoIix7ZDoiTTE3IDE3LjdjLjQuMi44LjMgMS4zLjMgMS41IDAgMi43LTEuMSAyLjctMi41UzE5LjggMTMgMTguMyAxM0gxNyJ9XV19KTt2YXIgelAsSUdlPWwoKCk9Pnt6UD1bWyJwYXRoIix7ZDoiTTYgMTJoMTIifV0sWyJwYXRoIix7ZDoiTTYgMjBWNCJ9XSxbInBhdGgiLHtkOiJNMTggMjBWNCJ9XV19KTt2YXIgQ1AsTkdlPWwoKCk9PntDUD1bWyJwYXRoIix7ZDoiTTQgMTJoOCJ9XSxbInBhdGgiLHtkOiJNNCAxOFY2In1dLFsicGF0aCIse2Q6Ik0xMiAxOFY2In1dLFsiY2lyY2xlIix7Y3g6IjE5IixjeToiMTYiLHI6IjIifV0sWyJwYXRoIix7ZDoiTTIwIDEwYy0yIDItMyAzLjUtMyA2In1dXX0pO3ZhciBfUCxGR2U9bCgoKT0+e19QPVtbInBhdGgiLHtkOiJNMyAxNGgzYTIgMiAwIDAgMSAyIDJ2M2EyIDIgMCAwIDEtMiAySDVhMiAyIDAgMCAxLTItMnYtN2E5IDkgMCAwIDEgMTggMHY3YTIgMiAwIDAgMS0yIDJoLTFhMiAyIDAgMCAxLTItMnYtM2EyIDIgMCAwIDEgMi0yaDMifV1dfSk7dmFyIFRQLE9HZT1sKCgpPT57VFA9W1sicGF0aCIse2Q6Ik0yMSAxNGgtMS4zNDMifV0sWyJwYXRoIix7ZDoiTTkuMTI4IDMuNDdBOSA5IDAgMCAxIDIxIDEydjMuMzQzIn1dLFsicGF0aCIse2Q6Im0yIDIgMjAgMjAifV0sWyJwYXRoIix7ZDoiTTIwLjQxNCAyMC40MTRBMiAyIDAgMCAxIDE5IDIxaC0xYTIgMiAwIDAgMS0yLTJ2LTMifV0sWyJwYXRoIix7ZDoiTTMgMTRoM2EyIDIgMCAwIDEgMiAydjNhMiAyIDAgMCAxLTIgMkg1YTIgMiAwIDAgMS0yLTJ2LTdhOSA5IDAgMCAxIDIuNjM2LTYuMzY0In1dXX0pO3ZhciBMUCxSR2U9bCgoKT0+e0xQPVtbInBhdGgiLHtkOiJNMyAxMWgzYTIgMiAwIDAgMSAyIDJ2M2EyIDIgMCAwIDEtMiAySDVhMiAyIDAgMCAxLTItMnYtNVptMCAwYTkgOSAwIDEgMSAxOCAwbTAgMHY1YTIgMiAwIDAgMS0yIDJoLTFhMiAyIDAgMCAxLTItMnYtM2EyIDIgMCAwIDEgMi0yaDNaIn1dLFsicGF0aCIse2Q6Ik0yMSAxNnYyYTQgNCAwIDAgMS00IDRoLTUifV1dfSk7dmFyIERQLEJHZT1sKCgpPT57RFA9W1sicGF0aCIse2Q6Ik0xOS40MTQgMTQuNDE0QzIxIDEyLjgyOCAyMiAxMS41IDIyIDkuNWE1LjUgNS41IDAgMCAwLTkuNTkxLTMuNjc2LjYuNiAwIDAgMS0uODE4LjAwMUE1LjUgNS41IDAgMCAwIDIgOS41YzAgMi4zIDEuNSA0IDMgNS41bDUuNTM1IDUuMzYyYTIgMiAwIDAgMCAyLjg3OS4wNTIgMi4xMiAyLjEyIDAgMCAwLS4wMDQtMyAyLjEyNCAyLjEyNCAwIDEgMCAzLTMgMi4xMjQgMi4xMjQgMCAwIDAgMy4wMDQgMCAyIDIgMCAwIDAgMC0yLjgyOGwtMS44ODEtMS44ODJhMi40MSAyLjQxIDAgMCAwLTMuNDA5IDBsLTEuNzEgMS43MWEyIDIgMCAwIDEtMi44MjggMCAyIDIgMCAwIDEgMC0yLjgyOGwyLjgyMy0yLjc2MiJ9XV19KTt2YXIgQVAsSEdlPWwoKCk9PntBUD1bWyJwYXRoIix7ZDoiTTEyLjQwOSA1LjgyNGMtLjcwMi43OTItMS4xNSAxLjQ5Ni0xLjQxNSAyLjE2NmwyLjE1MyAyLjE1NmEuNS41IDAgMCAxIDAgLjcwN2wtMi4yOTMgMi4yOTNhLjUuNSAwIDAgMCAwIC43MDdMMTIgMTUifV0sWyJwYXRoIix7ZDoiTTEzLjUwOCAyMC4zMTNhMiAyIDAgMCAxLTMgLjAxOUw1IDE1Yy0xLjUtMS41LTMtMy4yLTMtNS41YTUuNSA1LjUgMCAwIDEgOS41OTEtMy42NzcuNi42IDAgMCAwIC44MTguMDAxQTUuNSA1LjUgMCAwIDEgMjIgOS41YzAgMi4yOS0xLjUgNC0zIDUuNXoifV1dfSk7dmFyIEVQLHFHZT1sKCgpPT57RVA9W1sicGF0aCIse2Q6Ik0xMC41IDQuODkzYTUuNSA1LjUgMCAwIDEgMS4wOTEuOTMxLjU2LjU2IDAgMCAwIC44MTggMEE1LjQ5IDUuNDkgMCAwIDEgMjIgOS41YzAgMS44NzItMS4wMDIgMy4zNTYtMi4xODcgNC42NTUifV0sWyJwYXRoIix7ZDoibTE2Ljk2NyAxNi45NjctMy40NTkgMy4zNDZhMiAyIDAgMCAxLTMgLjAxOUw1IDE1Yy0xLjUtMS41LTMtMy4yLTMtNS41YTUuNSA1LjUgMCAwIDEgMi43NDctNC43NjEifV0sWyJwYXRoIix7ZDoibTIgMiAyMCAyMCJ9XV19KTt2YXIgJFAsakdlPWwoKCk9PnskUD1bWyJwYXRoIix7ZDoibTE0Ljg3NiAxOC45OS0xLjM2OCAxLjMyM2EyIDIgMCAwIDEtMyAuMDE5TDUgMTVjLTEuNS0xLjUtMy0zLjItMy01LjVhNS41IDUuNSAwIDAgMSA5LjU5MS0zLjY3Ni41Ni41NiAwIDAgMCAuODE4IDBBNS40OSA1LjQ5IDAgMCAxIDIyIDkuNWE1LjIgNS4yIDAgMCAxLS4yNDQgMS41NzIifV0sWyJwYXRoIix7ZDoiTTE1IDE1aDYifV1dfSk7dmFyIFBQLFZHZT1sKCgpPT57UFA9W1sicGF0aCIse2Q6Im0xNC40NzkgMTkuMzc0LS45NzEuOTM5YTIgMiAwIDAgMS0zIC4wMTlMNSAxNWMtMS41LTEuNS0zLTMuMi0zLTUuNWE1LjUgNS41IDAgMCAxIDkuNTkxLTMuNjc2LjU2LjU2IDAgMCAwIC44MTggMEE1LjQ5IDUuNDkgMCAwIDEgMjIgOS41YTUuMiA1LjIgMCAwIDEtLjIxOSAxLjQ5In1dLFsicGF0aCIse2Q6Ik0xNSAxNWg2In1dLFsicGF0aCIse2Q6Ik0xOCAxMnY2In1dXX0pO3ZhciBJUCxVR2U9bCgoKT0+e0lQPVtbInBhdGgiLHtkOiJNMiA5LjVhNS41IDUuNSAwIDAgMSA5LjU5MS0zLjY3Ni41Ni41NiAwIDAgMCAuODE4IDBBNS40OSA1LjQ5IDAgMCAxIDIyIDkuNWMwIDIuMjktMS41IDQtMyA1LjVsLTUuNDkyIDUuMzEzYTIgMiAwIDAgMS0zIC4wMTlMNSAxNWMtMS41LTEuNS0zLTMuMi0zLTUuNSJ9XSxbInBhdGgiLHtkOiJNMy4yMiAxM0g5LjVsLjUtMSAyIDQuNSAyLTcgMS41IDMuNWg1LjI3In1dXX0pO3ZhciBOUCxXR2U9bCgoKT0+e05QPVtbInBhdGgiLHtkOiJNMiA5LjVhNS41IDUuNSAwIDAgMSA5LjU5MS0zLjY3Ni41Ni41NiAwIDAgMCAuODE4IDBBNS40OSA1LjQ5IDAgMCAxIDIyIDkuNWMwIDIuMjktMS41IDQtMyA1LjVsLTUuNDkyIDUuMzEzYTIgMiAwIDAgMS0zIC4wMTlMNSAxNWMtMS41LTEuNS0zLTMuMi0zLTUuNSJ9XV19KTt2YXIgRlAsR0dlPWwoKCk9PntGUD1bWyJwYXRoIix7ZDoiTTExIDhjMi0zLTItMyAwLTYifV0sWyJwYXRoIix7ZDoiTTE1LjUgOGMyLTMtMi0zIDAtNiJ9XSxbInBhdGgiLHtkOiJNNiAxMGguMDEifV0sWyJwYXRoIix7ZDoiTTYgMTRoLjAxIn1dLFsicGF0aCIse2Q6Ik0xMCAxNnYtNCJ9XSxbInBhdGgiLHtkOiJNMTQgMTZ2LTQifV0sWyJwYXRoIix7ZDoiTTE4IDE2di00In1dLFsicGF0aCIse2Q6Ik0yMCA2YTIgMiAwIDAgMSAyIDJ2MTBhMiAyIDAgMCAxLTIgMkg0YTIgMiAwIDAgMS0yLTJWOGEyIDIgMCAwIDEgMi0yaDMifV0sWyJwYXRoIix7ZDoiTTUgMjB2MiJ9XSxbInBhdGgiLHtkOiJNMTkgMjB2MiJ9XV19KTt2YXIgT1AsWUdlPWwoKCk9PntPUD1bWyJwYXRoIix7ZDoiTTExIDE3djQifV0sWyJwYXRoIix7ZDoiTTE0IDN2OGEyIDIgMCAwIDAgMiAyaDUuODY1In1dLFsicGF0aCIse2Q6Ik0xNyAxN3Y0In1dLFsicGF0aCIse2Q6Ik0xOCAxN2E0IDQgMCAwIDAgNC00IDggNiAwIDAgMC04LTYgNiA1IDAgMCAwLTYgNXYzYTIgMiAwIDAgMCAyIDJ6In1dLFsicGF0aCIse2Q6Ik0yIDEwdjUifV0sWyJwYXRoIix7ZDoiTTYgM2gxNiJ9XSxbInBhdGgiLHtkOiJNNyAyMWgxNCJ9XSxbInBhdGgiLHtkOiJNOCAxM0gyIn1dXX0pO3ZhciBSUCxaR2U9bCgoKT0+e1JQPVtbInBhdGgiLHtkOiJNMjEgMTZWOGEyIDIgMCAwIDAtMS0xLjczbC03LTRhMiAyIDAgMCAwLTIgMGwtNyA0QTIgMiAwIDAgMCAzIDh2OGEyIDIgMCAwIDAgMSAxLjczbDcgNGEyIDIgMCAwIDAgMiAwbDctNEEyIDIgMCAwIDAgMjEgMTZ6In1dXX0pO3ZhciBCUCxYR2U9bCgoKT0+e0JQPVtbInBhdGgiLHtkOiJtOSAxMS02IDZ2M2g5bDMtMyJ9XSxbInBhdGgiLHtkOiJtMjIgMTItNC42IDQuNmEyIDIgMCAwIDEtMi44IDBsLTUuMi01LjJhMiAyIDAgMCAxIDAtMi44TDE0IDQifV1dfSk7dmFyIEhQLFFHZT1sKCgpPT57SFA9W1sicGF0aCIse2Q6Ik0zIDEyYTkgOSAwIDEgMCA5LTkgOS43NSA5Ljc1IDAgMCAwLTYuNzQgMi43NEwzIDgifV0sWyJwYXRoIix7ZDoiTTMgM3Y1aDUifV0sWyJwYXRoIix7ZDoiTTEyIDd2NWw0IDIifV1dfSk7dmFyIHFQLEtHZT1sKCgpPT57cVA9W1sicGF0aCIse2Q6Ik0xMC44MiAxNi4xMmMxLjY5LjYgMy45MS43OSA1LjE4Ljg1LjI4LjAxLjUzLS4wOS43LS4yNyJ9XSxbInBhdGgiLHtkOiJNMTEuMTQgMjAuNTdjLjUyLjI0IDIuNDQgMS4xMiA0LjA4IDEuMzcuNDYuMDYuODYtLjI1LjktLjcxLjEyLTEuNTItLjMtMy40My0uNS00LjI4In1dLFsicGF0aCIse2Q6Ik0xNi4xMyAyMS4wNWMxLjY1LjYzIDMuNjguODQgNC44Ny45MWEuOS45IDAgMCAwIC43LS4yNiJ9XSxbInBhdGgiLHtkOiJNMTcuOTkgNS41MmEyMC44MyAyMC44MyAwIDAgMSAzLjE1IDQuNS44LjggMCAwIDEtLjY4IDEuMTNjLTEuMTcuMS0yLjUuMDItMy45LS4yNSJ9XSxbInBhdGgiLHtkOiJNMjAuNTcgMTEuMTRjLjI0LjUyIDEuMTIgMi40NCAxLjM3IDQuMDguMDQuMy0uMDguNTktLjMxLjc1In1dLFsicGF0aCIse2Q6Ik00LjkzIDQuOTNhMTAgMTAgMCAwIDAtLjY3IDEzLjRjLjM1LjQzLjk2LjQgMS4xNy0uMTIuNjktMS43MSAxLjA3LTUuMDcgMS4wNy02LjcxIDEuMzQuNDUgMy4xLjkgNC44OC42MmEuODUuODUgMCAwIDAgLjQ4LS4yNCJ9XSxbInBhdGgiLHtkOiJNNS41MiAxNy45OWMxLjA1Ljk1IDIuOTEgMi40MiA0LjUgMy4xNWEuOC44IDAgMCAwIDEuMTMtLjY4Yy4yLTIuMzQtLjMzLTUuMy0xLjU3LTguMjgifV0sWyJwYXRoIix7ZDoiTTguMzUgMi42OGExMCAxMCAwIDAgMSA5Ljk4IDEuNThjLjQzLjM1LjQuOTYtLjEyIDEuMTctMS41LjYtNC4zLjk4LTYuMDcgMS4wNSJ9XSxbInBhdGgiLHtkOiJtMiAyIDIwIDIwIn1dXX0pO3ZhciBqUCxKR2U9bCgoKT0+e2pQPVtbInBhdGgiLHtkOiJNMTIgN3Y0In1dLFsicGF0aCIse2Q6Ik0xNCAyMXYtM2EyIDIgMCAwIDAtNCAwdjMifV0sWyJwYXRoIix7ZDoiTTE0IDloLTQifV0sWyJwYXRoIix7ZDoiTTE4IDExaDJhMiAyIDAgMCAxIDIgMnY2YTIgMiAwIDAgMS0yIDJINGEyIDIgMCAwIDEtMi0ydi05YTIgMiAwIDAgMSAyLTJoMiJ9XSxbInBhdGgiLHtkOiJNMTggMjFWNWEyIDIgMCAwIDAtMi0ySDhhMiAyIDAgMCAwLTIgMnYxNiJ9XV19KTt2YXIgVlAsZVllPWwoKCk9PntWUD1bWyJwYXRoIix7ZDoiTTEwLjgyIDE2LjEyYzEuNjkuNiAzLjkxLjc5IDUuMTguODUuNTUuMDMgMS0uNDIuOTctLjk3LS4wNi0xLjI3LS4yNi0zLjUtLjg1LTUuMTgifV0sWyJwYXRoIix7ZDoiTTExLjUgNi41YzEuNjQgMCA1LS4zOCA2LjcxLTEuMDcuNTItLjIuNTUtLjgyLjEyLTEuMTdBMTAgMTAgMCAwIDAgNC4yNiAxOC4zM2MuMzUuNDMuOTYuNCAxLjE3LS4xMi42OS0xLjcxIDEuMDctNS4wNyAxLjA3LTYuNzEgMS4zNC40NSAzLjEuOSA0Ljg4LjYyYS44OC44OCAwIDAgMCAuNzMtLjc0Yy4zLTIuMTQtLjE1LTMuNS0uNjEtNC44OCJ9XSxbInBhdGgiLHtkOiJNMTUuNjIgMTYuOTVjLjIuODUuNjIgMi43Ni41IDQuMjhhLjc3Ljc3IDAgMCAxLS45LjcgMTYuNjQgMTYuNjQgMCAwIDEtNC4wOC0xLjM2In1dLFsicGF0aCIse2Q6Ik0xNi4xMyAyMS4wNWMxLjY1LjYzIDMuNjguODQgNC44Ny45MWEuOS45IDAgMCAwIC45Ni0uOTYgMTcuNjggMTcuNjggMCAwIDAtLjktNC44NyJ9XSxbInBhdGgiLHtkOiJNMTYuOTQgMTUuNjJjLjg2LjIgMi43Ny42MiA0LjI5LjVhLjc3Ljc3IDAgMCAwIC43LS45IDE2LjY0IDE2LjY0IDAgMCAwLTEuMzYtNC4wOCJ9XSxbInBhdGgiLHtkOiJNMTcuOTkgNS41MmEyMC44MiAyMC44MiAwIDAgMSAzLjE1IDQuNS44LjggMCAwIDEtLjY4IDEuMTNjLTIuMzMuMi01LjMtLjMyLTguMjctMS41NyJ9XSxbInBhdGgiLHtkOiJNNC45MyA0LjkzIDMgM2EuNy43IDAgMCAxIDAtMSJ9XSxbInBhdGgiLHtkOiJNOS41OCAxMi4xOGMxLjI0IDIuOTggMS43NyA1Ljk1IDEuNTcgOC4yOGEuOC44IDAgMCAxLTEuMTMuNjggMjAuODIgMjAuODIgMCAwIDEtNC41LTMuMTUifV1dfSk7dmFyIFVQLHRZZT1sKCgpPT57VVA9W1sicGF0aCIse2Q6Ik0xMCAyMnYtNi41NyJ9XSxbInBhdGgiLHtkOiJNMTIgMTFoLjAxIn1dLFsicGF0aCIse2Q6Ik0xMiA3aC4wMSJ9XSxbInBhdGgiLHtkOiJNMTQgMTUuNDNWMjIifV0sWyJwYXRoIix7ZDoiTTE1IDE2YTUgNSAwIDAgMC02IDAifV0sWyJwYXRoIix7ZDoiTTE2IDExaC4wMSJ9XSxbInBhdGgiLHtkOiJNMTYgN2guMDEifV0sWyJwYXRoIix7ZDoiTTggMTFoLjAxIn1dLFsicGF0aCIse2Q6Ik04IDdoLjAxIn1dLFsicmVjdCIse3g6IjQiLHk6IjIiLHdpZHRoOiIxNiIsaGVpZ2h0OiIyMCIscng6IjIifV1dfSk7dmFyIFdQLHJZZT1sKCgpPT57V1A9W1sicGF0aCIse2Q6Ik01IDIyaDE0In1dLFsicGF0aCIse2Q6Ik01IDJoMTQifV0sWyJwYXRoIix7ZDoiTTE3IDIydi00LjE3MmEyIDIgMCAwIDAtLjU4Ni0xLjQxNEwxMiAxMmwtNC40MTQgNC40MTRBMiAyIDAgMCAwIDcgMTcuODI4VjIyIn1dLFsicGF0aCIse2Q6Ik03IDJ2NC4xNzJhMiAyIDAgMCAwIC41ODYgMS40MTRMMTIgMTJsNC40MTQtNC40MTRBMiAyIDAgMCAwIDE3IDYuMTcyVjIifV1dfSk7dmFyIEdQLGFZZT1sKCgpPT57R1A9W1sicGF0aCIse2Q6Ik04LjYyIDEzLjhBMi4yNSAyLjI1IDAgMSAxIDEyIDEwLjgzNmEyLjI1IDIuMjUgMCAxIDEgMy4zOCAyLjk2NmwtMi42MjYgMi44NTZhLjk5OC45OTggMCAwIDEtMS41MDcgMHoifV0sWyJwYXRoIix7ZDoiTTMgMTBhMiAyIDAgMCAxIC43MDktMS41MjhsNy02YTIgMiAwIDAgMSAyLjU4MiAwbDcgNkEyIDIgMCAwIDEgMjEgMTB2OWEyIDIgMCAwIDEtMiAySDVhMiAyIDAgMCAxLTItMnoifV1dfSk7dmFyIFlQLGlZZT1sKCgpPT57WVA9W1sicGF0aCIse2Q6Ik0xMi4zNSAyMUg1YTIgMiAwIDAgMS0yLTJ2LTlhMiAyIDAgMCAxIC43MS0xLjUzbDctNmEyIDIgMCAwIDEgMi41OCAwbDcgNkEyIDIgMCAwIDEgMjEgMTB2Mi4zNSJ9XSxbInBhdGgiLHtkOiJNMTQuOCAxMi40QTEgMSAwIDAgMCAxNCAxMmgtNGExIDEgMCAwIDAtMSAxdjgifV0sWyJwYXRoIix7ZDoiTTE1IDE4aDYifV0sWyJwYXRoIix7ZDoiTTE4IDE1djYifV1dfSk7dmFyIFpQLG9ZZT1sKCgpPT57WlA9W1sicGF0aCIse2Q6Ik0xMCAxMlY4Ljk2NCJ9XSxbInBhdGgiLHtkOiJNMTQgMTJWOC45NjQifV0sWyJwYXRoIix7ZDoiTTE1IDEyYTEgMSAwIDAgMSAxIDF2MmEyIDIgMCAwIDEtMiAyaC00YTIgMiAwIDAgMS0yLTJ2LTJhMSAxIDAgMCAxIDEtMXoifV0sWyJwYXRoIix7ZDoiTTguNSAyMUg1YTIgMiAwIDAgMS0yLTJ2LTlhMiAyIDAgMCAxIC43MDktMS41MjhsNy02YTIgMiAwIDAgMSAyLjU4MiAwbDcgNkEyIDIgMCAwIDEgMjEgMTB2OWEyIDIgMCAwIDEtMiAyaC01YTIgMiAwIDAgMS0yLTJ2LTIifV1dfSk7dmFyIFhQLG5ZZT1sKCgpPT57WFA9W1sicGF0aCIse2Q6Ik05LjUgMTMuODY2YTQgNCAwIDAgMSA1IC4wMSJ9XSxbInBhdGgiLHtkOiJNMTIgMTdoLjAxIn1dLFsicGF0aCIse2Q6Ik0zIDEwYTIgMiAwIDAgMSAuNzA5LTEuNTI4bDctNmEyIDIgMCAwIDEgMi41ODIgMGw3IDZBMiAyIDAgMCAxIDIxIDEwdjlhMiAyIDAgMCAxLTIgMkg1YTIgMiAwIDAgMS0yLTJ6In1dLFsicGF0aCIse2Q6Ik03IDEwLjc1NGE4IDggMCAwIDEgMTAgMCJ9XV19KTt2YXIgdTUsc1llPWwoKCk9Pnt1NT1bWyJwYXRoIix7ZDoiTTEyIDE3YzUgMCA4LTIuNjkgOC02SDRjMCAzLjMxIDMgNiA4IDZtLTQgNGg4bS00LTN2M001LjE0IDExYTMuNSAzLjUgMCAxIDEgNi43MSAwIn1dLFsicGF0aCIse2Q6Ik0xMi4xNCAxMWEzLjUgMy41IDAgMSAxIDYuNzEgMCJ9XSxbInBhdGgiLHtkOiJNMTUuNSA2LjVhMy41IDMuNSAwIDEgMC03IDAifV1dfSk7dmFyIGY1LGxZZT1sKCgpPT57ZjU9W1sicGF0aCIse2Q6Ik0xNSAyMXYtOGExIDEgMCAwIDAtMS0xaC00YTEgMSAwIDAgMC0xIDF2OCJ9XSxbInBhdGgiLHtkOiJNMyAxMGEyIDIgMCAwIDEgLjcwOS0xLjUyOGw3LTZhMiAyIDAgMCAxIDIuNTgyIDBsNyA2QTIgMiAwIDAgMSAyMSAxMHY5YTIgMiAwIDAgMS0yIDJINWEyIDIgMCAwIDEtMi0yeiJ9XV19KTt2YXIgcDUsY1llPWwoKCk9PntwNT1bWyJwYXRoIix7ZDoibTcgMTEgNC4wOCAxMC4zNWExIDEgMCAwIDAgMS44NCAwTDE3IDExIn1dLFsicGF0aCIse2Q6Ik0xNyA3QTUgNSAwIDAgMCA3IDcifV0sWyJwYXRoIix7ZDoiTTE3IDdhMiAyIDAgMCAxIDAgNEg3YTIgMiAwIDAgMSAwLTQifV1dfSk7dmFyIFFQLGRZZT1sKCgpPT57UVA9W1sicGF0aCIse2Q6Ik0xNiAxMGgyIn1dLFsicGF0aCIse2Q6Ik0xNiAxNGgyIn1dLFsicGF0aCIse2Q6Ik02LjE3IDE1YTMgMyAwIDAgMSA1LjY2IDAifV0sWyJjaXJjbGUiLHtjeDoiOSIsY3k6IjExIixyOiIyIn1dLFsicmVjdCIse3g6IjIiLHk6IjUiLHdpZHRoOiIyMCIsaGVpZ2h0OiIxNCIscng6IjIifV1dfSk7dmFyIEtQLHVZZT1sKCgpPT57S1A9W1sicGF0aCIse2Q6Ik0xMy41IDhoLTMifV0sWyJwYXRoIix7ZDoibTE1IDItMSAyaDNhMiAyIDAgMCAxIDIgMnYxNGEyIDIgMCAwIDEtMiAySDdhMiAyIDAgMCAxLTItMlY2YTIgMiAwIDAgMSAyLTJoMyJ9XSxbInBhdGgiLHtkOiJNMTYuODk5IDIyQTUgNSAwIDAgMCA3LjEgMjIifV0sWyJwYXRoIix7ZDoibTkgMiAzIDYifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxNSIscjoiMyJ9XV19KTt2YXIgSlAsZlllPWwoKCk9PntKUD1bWyJwYXRoIix7ZDoiTTEwLjMgMjFINWEyIDIgMCAwIDEtMi0yVjVhMiAyIDAgMCAxIDItMmgxNGEyIDIgMCAwIDEgMiAydjEwbC0zLjEtMy4xYTIgMiAwIDAgMC0yLjgxNC4wMTRMNiAyMSJ9XSxbInBhdGgiLHtkOiJtMTQgMTkgMyAzdi01LjUifV0sWyJwYXRoIix7ZDoibTE3IDIyIDMtMyJ9XSxbImNpcmNsZSIse2N4OiI5IixjeToiOSIscjoiMiJ9XV19KTt2YXIgZUkscFllPWwoKCk9PntlST1bWyJwYXRoIix7ZDoiTTIxIDl2MTBhMiAyIDAgMCAxLTIgMkg1YTIgMiAwIDAgMS0yLTJWNWEyIDIgMCAwIDEgMi0yaDcifV0sWyJsaW5lIix7eDE6IjE2Iix4MjoiMjIiLHkxOiI1Iix5MjoiNSJ9XSxbImNpcmNsZSIse2N4OiI5IixjeToiOSIscjoiMiJ9XSxbInBhdGgiLHtkOiJtMjEgMTUtMy4wODYtMy4wODZhMiAyIDAgMCAwLTIuODI4IDBMNiAyMSJ9XV19KTt2YXIgdEksaFllPWwoKCk9Pnt0ST1bWyJsaW5lIix7eDE6IjIiLHgyOiIyMiIseTE6IjIiLHkyOiIyMiJ9XSxbInBhdGgiLHtkOiJNMTAuNDEgMTAuNDFhMiAyIDAgMSAxLTIuODMtMi44MyJ9XSxbImxpbmUiLHt4MToiMTMuNSIseDI6IjYiLHkxOiIxMy41Iix5MjoiMjEifV0sWyJsaW5lIix7eDE6IjE4Iix4MjoiMjEiLHkxOiIxMiIseTI6IjE1In1dLFsicGF0aCIse2Q6Ik0zLjU5IDMuNTlBMS45OSAxLjk5IDAgMCAwIDMgNXYxNGEyIDIgMCAwIDAgMiAyaDE0Yy41NSAwIDEuMDUyLS4yMiAxLjQxLS41OSJ9XSxbInBhdGgiLHtkOiJNMjEgMTVWNWEyIDIgMCAwIDAtMi0ySDkifV1dfSk7dmFyIHJJLG1ZZT1sKCgpPT57ckk9W1sicGF0aCIse2Q6Ik0xNSAxNS4wMDNhMSAxIDAgMCAxIDEuNTE3LS44NTlsNC45OTcgMi45OTdhMSAxIDAgMCAxIDAgMS43MThsLTQuOTk3IDIuOTk3YTEgMSAwIDAgMS0xLjUxNy0uODZ6In1dLFsicGF0aCIse2Q6Ik0yMSAxMi4xN1Y1YTIgMiAwIDAgMC0yLTJINWEyIDIgMCAwIDAtMiAydjE0YTIgMiAwIDAgMCAyIDJoNiJ9XSxbInBhdGgiLHtkOiJtNiAyMSA1LTUifV0sWyJjaXJjbGUiLHtjeDoiOSIsY3k6IjkiLHI6IjIifV1dfSk7dmFyIGFJLGdZZT1sKCgpPT57YUk9W1sicGF0aCIse2Q6Ik0xNiA1aDYifV0sWyJwYXRoIix7ZDoiTTE5IDJ2NiJ9XSxbInBhdGgiLHtkOiJNMjEgMTEuNVYxOWEyIDIgMCAwIDEtMiAySDVhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJoNy41In1dLFsicGF0aCIse2Q6Im0yMSAxNS0zLjA4Ni0zLjA4NmEyIDIgMCAwIDAtMi44MjggMEw2IDIxIn1dLFsiY2lyY2xlIix7Y3g6IjkiLGN5OiI5IixyOiIyIn1dXX0pO3ZhciBpSSx4WWU9bCgoKT0+e2lJPVtbInBhdGgiLHtkOiJNMTAuMyAyMUg1YTIgMiAwIDAgMS0yLTJWNWEyIDIgMCAwIDEgMi0yaDE0YTIgMiAwIDAgMSAyIDJ2MTBsLTMuMS0zLjFhMiAyIDAgMCAwLTIuODE0LjAxNEw2IDIxIn1dLFsicGF0aCIse2Q6Im0xNCAxOS41IDMtMyAzIDMifV0sWyJwYXRoIix7ZDoiTTE3IDIydi01LjUifV0sWyJjaXJjbGUiLHtjeDoiOSIsY3k6IjkiLHI6IjIifV1dfSk7dmFyIG9JLGJZZT1sKCgpPT57b0k9W1sicGF0aCIse2Q6Ik0xNiAzaDV2NSJ9XSxbInBhdGgiLHtkOiJNMTcgMjFoMmEyIDIgMCAwIDAgMi0yIn1dLFsicGF0aCIse2Q6Ik0yMSAxMnYzIn1dLFsicGF0aCIse2Q6Im0yMSAzLTUgNSJ9XSxbInBhdGgiLHtkOiJNMyA3VjVhMiAyIDAgMCAxIDItMiJ9XSxbInBhdGgiLHtkOiJtNSAyMSA0LjE0NC00LjE0NGExLjIxIDEuMjEgMCAwIDEgMS43MTIgMEwxMyAxOSJ9XSxbInBhdGgiLHtkOiJNOSAzaDMifV0sWyJyZWN0Iix7eDoiMyIseToiMTEiLHdpZHRoOiIxMCIsaGVpZ2h0OiIxMCIscng6IjEifV1dfSk7dmFyIG5JLHZZZT1sKCgpPT57bkk9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIiLHJ5OiIyIn1dLFsiY2lyY2xlIix7Y3g6IjkiLGN5OiI5IixyOiIyIn1dLFsicGF0aCIse2Q6Im0yMSAxNS0zLjA4Ni0zLjA4NmEyIDIgMCAwIDAtMi44MjggMEw2IDIxIn1dXX0pO3ZhciBzSSx5WWU9bCgoKT0+e3NJPVtbInBhdGgiLHtkOiJtMjIgMTEtMS4yOTYtMS4yOTZhMi40IDIuNCAwIDAgMC0zLjQwOCAwTDExIDE2In1dLFsicGF0aCIse2Q6Ik00IDhhMiAyIDAgMCAwLTIgMnYxMGEyIDIgMCAwIDAgMiAyaDEwYTIgMiAwIDAgMCAyLTIifV0sWyJjaXJjbGUiLHtjeDoiMTMiLGN5OiI3IixyOiIxIixmaWxsOiJjdXJyZW50Q29sb3IifV0sWyJyZWN0Iix7eDoiOCIseToiMiIsd2lkdGg6IjE0IixoZWlnaHQ6IjE0IixyeDoiMiJ9XV19KTt2YXIgbEksd1llPWwoKCk9PntsST1bWyJwYXRoIix7ZDoiTTEyIDN2MTIifV0sWyJwYXRoIix7ZDoibTggMTEgNCA0IDQtNCJ9XSxbInBhdGgiLHtkOiJNOCA1SDRhMiAyIDAgMCAwLTIgMnYxMGEyIDIgMCAwIDAgMiAyaDE2YTIgMiAwIDAgMCAyLTJWN2EyIDIgMCAwIDAtMi0yaC00In1dXX0pO3ZhciBjSSxNWWU9bCgoKT0+e2NJPVtbInBvbHlsaW5lIix7cG9pbnRzOiIyMiAxMiAxNiAxMiAxNCAxNSAxMCAxNSA4IDEyIDIgMTIifV0sWyJwYXRoIix7ZDoiTTUuNDUgNS4xMSAyIDEydjZhMiAyIDAgMCAwIDIgMmgxNmEyIDIgMCAwIDAgMi0ydi02bC0zLjQ1LTYuODlBMiAyIDAgMCAwIDE2Ljc2IDRINy4yNGEyIDIgMCAwIDAtMS43OSAxLjExeiJ9XV19KTt2YXIgZEksa1llPWwoKCk9PntkST1bWyJwYXRoIix7ZDoiTTYgMTZjNSAwIDctOCAxMi04YTQgNCAwIDAgMSAwIDhjLTUgMC03LTgtMTItOGE0IDQgMCAxIDAgMCA4In1dXX0pO3ZhciB1SSxTWWU9bCgoKT0+e3VJPVtbInBhdGgiLHtkOiJNNiAzaDEyIn1dLFsicGF0aCIse2Q6Ik02IDhoMTIifV0sWyJwYXRoIix7ZDoibTYgMTMgOC41IDgifV0sWyJwYXRoIix7ZDoiTTYgMTNoMyJ9XSxbInBhdGgiLHtkOiJNOSAxM2M2LjY2NyAwIDYuNjY3LTEwIDAtMTAifV1dfSk7dmFyIGZJLHpZZT1sKCgpPT57Zkk9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjEwIn1dLFsicGF0aCIse2Q6Ik0xMiAxNnYtNCJ9XSxbInBhdGgiLHtkOiJNMTIgOGguMDEifV1dfSk7dmFyIHBJLENZZT1sKCgpPT57cEk9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoiTTcgN2guMDEifV0sWyJwYXRoIix7ZDoiTTE3IDdoLjAxIn1dLFsicGF0aCIse2Q6Ik03IDE3aC4wMSJ9XSxbInBhdGgiLHtkOiJNMTcgMTdoLjAxIn1dXX0pO3ZhciBoSSxfWWU9bCgoKT0+e2hJPVtbInJlY3QiLHt3aWR0aDoiMjAiLGhlaWdodDoiMjAiLHg6IjIiLHk6IjIiLHJ4OiI1IixyeToiNSJ9XSxbInBhdGgiLHtkOiJNMTYgMTEuMzdBNCA0IDAgMSAxIDEyLjYzIDggNCA0IDAgMCAxIDE2IDExLjM3eiJ9XSxbImxpbmUiLHt4MToiMTcuNSIseDI6IjE3LjUxIix5MToiNi41Iix5MjoiNi41In1dXX0pO3ZhciBtSSxUWWU9bCgoKT0+e21JPVtbImxpbmUiLHt4MToiMTkiLHgyOiIxMCIseTE6IjQiLHkyOiI0In1dLFsibGluZSIse3gxOiIxNCIseDI6IjUiLHkxOiIyMCIseTI6IjIwIn1dLFsibGluZSIse3gxOiIxNSIseDI6IjkiLHkxOiI0Iix5MjoiMjAifV1dfSk7dmFyIGdJLExZZT1sKCgpPT57Z0k9W1sicGF0aCIse2Q6Ik00IDEwYTggOCAwIDEgMSA4IDhINCJ9XSxbInBhdGgiLHtkOiJtOCAyMi00LTQgNC00In1dXX0pO3ZhciB4SSxEWWU9bCgoKT0+e3hJPVtbInBhdGgiLHtkOiJtMTYgMTQgNCA0LTQgNCJ9XSxbInBhdGgiLHtkOiJNMjAgMTBhOCA4IDAgMSAwLTggOGg4In1dXX0pO3ZhciBiSSxBWWU9bCgoKT0+e2JJPVtbInBhdGgiLHtkOiJNMjEgMTdhMiAyIDAgMCAwLTItMkg1YTIgMiAwIDAgMC0yIDJ2MmEyIDIgMCAwIDAgMiAyaDE0YTIgMiAwIDAgMCAyLTJ2LTJaIn1dLFsicGF0aCIse2Q6Ik02IDE1di0yIn1dLFsicGF0aCIse2Q6Ik0xMiAxNVY5In1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiNiIscjoiMyJ9XV19KTt2YXIgdkksRVllPWwoKCk9Pnt2ST1bWyJwYXRoIix7ZDoiTTEyIDkuNVYyMW0wLTExLjVMNiAzbTYgNi41TDE4IDMifV0sWyJwYXRoIix7ZDoiTTYgMTVoMTIifV0sWyJwYXRoIix7ZDoiTTYgMTFoMTIifV1dfSk7dmFyIHlJLCRZZT1sKCgpPT57eUk9W1sicGF0aCIse2Q6Ik01IDN2MTQifV0sWyJwYXRoIix7ZDoiTTEyIDN2OCJ9XSxbInBhdGgiLHtkOiJNMTkgM3YxOCJ9XV19KTt2YXIgd0ksUFllPWwoKCk9Pnt3ST1bWyJwYXRoIix7ZDoiTTE4IDE3YTEgMSAwIDAgMC0xIDF2MWEyIDIgMCAxIDAgMi0yeiJ9XSxbInBhdGgiLHtkOiJNMjAuOTcgMy42MWEuNDUuNDUgMCAwIDAtLjU4LS41OEMxMC4yIDYuNiA2LjYgMTAuMiAzLjAzIDIwLjM5YS40NS40NSAwIDAgMCAuNTguNThDMTMuOCAxNy40IDE3LjQgMTMuOCAyMC45NyAzLjYxIn1dLFsicGF0aCIse2Q6Im02LjcwNyA2LjcwNyAxMC41ODYgMTAuNTg2In1dLFsicGF0aCIse2Q6Ik03IDVhMiAyIDAgMSAwLTIgMmgxYTEgMSAwIDAgMCAxLTF6In1dXX0pO3ZhciBNSSxJWWU9bCgoKT0+e01JPVtbInBhdGgiLHtkOiJNMTIuNCAyLjdhMi41IDIuNSAwIDAgMSAzLjQgMGw1LjUgNS41YTIuNSAyLjUgMCAwIDEgMCAzLjRsLTMuNyAzLjdhMi41IDIuNSAwIDAgMS0zLjQgMEw4LjcgOS44YTIuNSAyLjUgMCAwIDEgMC0zLjR6In1dLFsicGF0aCIse2Q6Im0xNCA3IDMgMyJ9XSxbInBhdGgiLHtkOiJtOS40IDEwLjYtNi44MTQgNi44MTRBMiAyIDAgMCAwIDIgMTguODI4VjIxYTEgMSAwIDAgMCAxIDFoM2ExIDEgMCAwIDAgMS0xdi0xYTEgMSAwIDAgMSAxLTFoMWExIDEgMCAwIDAgMS0xdi0xYTEgMSAwIDAgMSAxLTFoLjE3MmEyIDIgMCAwIDAgMS40MTQtLjU4NmwuODE0LS44MTQifV1dfSk7dmFyIGtJLE5ZZT1sKCgpPT57a0k9W1sicGF0aCIse2Q6Ik0yLjU4NiAxNy40MTRBMiAyIDAgMCAwIDIgMTguODI4VjIxYTEgMSAwIDAgMCAxIDFoM2ExIDEgMCAwIDAgMS0xdi0xYTEgMSAwIDAgMSAxLTFoMWExIDEgMCAwIDAgMS0xdi0xYTEgMSAwIDAgMSAxLTFoLjE3MmEyIDIgMCAwIDAgMS40MTQtLjU4NmwuODE0LS44MTRhNi41IDYuNSAwIDEgMC00LTR6In1dLFsiY2lyY2xlIix7Y3g6IjE2LjUiLGN5OiI3LjUiLHI6Ii41IixmaWxsOiJjdXJyZW50Q29sb3IifV1dfSk7dmFyIFNJLEZZZT1sKCgpPT57U0k9W1sicGF0aCIse2Q6Im0xNS41IDcuNSAyLjMgMi4zYTEgMSAwIDAgMCAxLjQgMGwyLjEtMi4xYTEgMSAwIDAgMCAwLTEuNEwxOSA0In1dLFsicGF0aCIse2Q6Im0yMSAyLTkuNiA5LjYifV0sWyJjaXJjbGUiLHtjeDoiNy41IixjeToiMTUuNSIscjoiNS41In1dXX0pO3ZhciB6SSxPWWU9bCgoKT0+e3pJPVtbInBhdGgiLHtkOiJNIDIwIDQgQTIgMiAwIDAgMSAyMiA2In1dLFsicGF0aCIse2Q6Ik0gMjIgNiBMIDIyIDE2LjQxIn1dLFsicGF0aCIse2Q6Ik0gNyAxNiBMIDE2IDE2In1dLFsicGF0aCIse2Q6Ik0gOS42OSA0IEwgMjAgNCJ9XSxbInBhdGgiLHtkOiJNMTQgOGguMDEifV0sWyJwYXRoIix7ZDoiTTE4IDhoLjAxIn1dLFsicGF0aCIse2Q6Im0yIDIgMjAgMjAifV0sWyJwYXRoIix7ZDoiTTIwIDIwSDRhMiAyIDAgMCAxLTItMlY2YTIgMiAwIDAgMSAyLTIifV0sWyJwYXRoIix7ZDoiTTYgOGguMDEifV0sWyJwYXRoIix7ZDoiTTggMTJoLjAxIn1dXX0pO3ZhciBDSSxSWWU9bCgoKT0+e0NJPVtbInBhdGgiLHtkOiJNMTAgOGguMDEifV0sWyJwYXRoIix7ZDoiTTEyIDEyaC4wMSJ9XSxbInBhdGgiLHtkOiJNMTQgOGguMDEifV0sWyJwYXRoIix7ZDoiTTE2IDEyaC4wMSJ9XSxbInBhdGgiLHtkOiJNMTggOGguMDEifV0sWyJwYXRoIix7ZDoiTTYgOGguMDEifV0sWyJwYXRoIix7ZDoiTTcgMTZoMTAifV0sWyJwYXRoIix7ZDoiTTggMTJoLjAxIn1dLFsicmVjdCIse3dpZHRoOiIyMCIsaGVpZ2h0OiIxNiIseDoiMiIseToiNCIscng6IjIifV1dfSk7dmFyIF9JLEJZZT1sKCgpPT57X0k9W1sicmVjdCIse3dpZHRoOiIyMCIsaGVpZ2h0OiIxNiIseDoiMiIseToiNCIscng6IjIifV0sWyJwYXRoIix7ZDoiTTYgOGg0In1dLFsicGF0aCIse2Q6Ik0xNCA4aC4wMSJ9XSxbInBhdGgiLHtkOiJNMTggOGguMDEifV0sWyJwYXRoIix7ZDoiTTIgMTJoMjAifV0sWyJwYXRoIix7ZDoiTTYgMTJ2NCJ9XSxbInBhdGgiLHtkOiJNMTAgMTJ2NCJ9XSxbInBhdGgiLHtkOiJNMTQgMTJ2NCJ9XSxbInBhdGgiLHtkOiJNMTggMTJ2NCJ9XV19KTt2YXIgVEksSFllPWwoKCk9PntUST1bWyJwYXRoIix7ZDoiTTEyIDJ2NSJ9XSxbInBhdGgiLHtkOiJNMTQuODI5IDE1Ljk5OGEzIDMgMCAxIDEtNS42NTggMCJ9XSxbInBhdGgiLHtkOiJNMjAuOTIgMTQuNjA2QTEgMSAwIDAgMSAyMCAxNkg0YTEgMSAwIDAgMS0uOTItMS4zOTRsMy03QTEgMSAwIDAgMSA3IDdoMTBhMSAxIDAgMCAxIC45Mi42MDZ6In1dXX0pO3ZhciBMSSxxWWU9bCgoKT0+e0xJPVtbInBhdGgiLHtkOiJNMTAuMjkzIDIuMjkzYTEgMSAwIDAgMSAxLjQxNCAwbDIuNSAyLjUgNS45OTQgMS4yMjdhMSAxIDAgMCAxIC41MDYgMS42ODdsLTcgN2ExIDEgMCAwIDEtMS42ODctLjUwNmwtMS4yMjctNS45OTQtMi41LTIuNWExIDEgMCAwIDEgMC0xLjQxNHoifV0sWyJwYXRoIix7ZDoibTE0LjIwNyA0Ljc5My0zLjQxNCAzLjQxNCJ9XSxbInBhdGgiLHtkOiJNMyAyMGEyIDIgMCAwIDEgMi0yaDRhMiAyIDAgMCAxIDIgMnYxYTEgMSAwIDAgMS0xIDFINGExIDEgMCAwIDEtMS0xeiJ9XSxbInBhdGgiLHtkOiJtOS4wODYgNi41LTQuNzkzIDQuNzkzYTEgMSAwIDAgMC0uMTggMS4xN0w3IDE4In1dXX0pO3ZhciBESSxqWWU9bCgoKT0+e0RJPVtbInBhdGgiLHtkOiJNMTIgMTB2MTIifV0sWyJwYXRoIix7ZDoiTTE3LjkyOSA3LjYyOUExIDEgMCAwIDEgMTcgOUg3YTEgMSAwIDAgMS0uOTI4LTEuMzcxbDItNUExIDEgMCAwIDEgOSAyaDZhMSAxIDAgMCAxIC45MjguNjI5eiJ9XSxbInBhdGgiLHtkOiJNOSAyMmg2In1dXX0pO3ZhciBBSSxWWWU9bCgoKT0+e0FJPVtbInBhdGgiLHtkOiJNMTkuOTI5IDE4LjYyOUExIDEgMCAwIDEgMTkgMjBIOWExIDEgMCAwIDEtLjkyOC0xLjM3MWwyLTVBMSAxIDAgMCAxIDExIDEzaDZhMSAxIDAgMCAxIC45MjguNjI5eiJ9XSxbInBhdGgiLHtkOiJNNiAzYTIgMiAwIDAgMSAyIDJ2MmEyIDIgMCAwIDEtMiAySDVhMSAxIDAgMCAxLTEtMVY0YTEgMSAwIDAgMSAxLTF6In1dLFsicGF0aCIse2Q6Ik04IDZoNGEyIDIgMCAwIDEgMiAydjUifV1dfSk7dmFyIEVJLFVZZT1sKCgpPT57RUk9W1sicGF0aCIse2Q6Ik0xOS45MjkgOS42MjlBMSAxIDAgMCAxIDE5IDExSDlhMSAxIDAgMCAxLS45MjgtMS4zNzFsMi01QTEgMSAwIDAgMSAxMSA0aDZhMSAxIDAgMCAxIC45MjguNjI5eiJ9XSxbInBhdGgiLHtkOiJNNiAxNWEyIDIgMCAwIDEgMiAydjJhMiAyIDAgMCAxLTIgMkg1YTEgMSAwIDAgMS0xLTF2LTRhMSAxIDAgMCAxIDEtMXoifV0sWyJwYXRoIix7ZDoiTTggMThoNGEyIDIgMCAwIDAgMi0ydi01In1dXX0pO3ZhciAkSSxXWWU9bCgoKT0+eyRJPVtbInBhdGgiLHtkOiJtMTIgOCA2LTMtNi0zdjEwIn1dLFsicGF0aCIse2Q6Im04IDExLjk5LTUuNSAzLjE0YTEgMSAwIDAgMCAwIDEuNzRsOC41IDQuODZhMiAyIDAgMCAwIDIgMGw4LjUtNC44NmExIDEgMCAwIDAgMC0xLjc0TDE2IDEyIn1dLFsicGF0aCIse2Q6Im02LjQ5IDEyLjg1IDExLjAyIDYuMyJ9XSxbInBhdGgiLHtkOiJNMTcuNTEgMTIuODUgNi41IDE5LjE1In1dXX0pO3ZhciBQSSxHWWU9bCgoKT0+e1BJPVtbInBhdGgiLHtkOiJNMTIgMTJ2NiJ9XSxbInBhdGgiLHtkOiJNNC4wNzcgMTAuNjE1QTEgMSAwIDAgMCA1IDEyaDE0YTEgMSAwIDAgMCAuOTIzLTEuMzg1bC0zLjA3Ny03LjM4NEEyIDIgMCAwIDAgMTUgMkg5YTIgMiAwIDAgMC0xLjg0NiAxLjIzWiJ9XSxbInBhdGgiLHtkOiJNOCAyMGEyIDIgMCAwIDEgMi0yaDRhMiAyIDAgMCAxIDIgMnYxYTEgMSAwIDAgMS0xIDFIOWExIDEgMCAwIDEtMS0xeiJ9XV19KTt2YXIgSUksWVllPWwoKCk9PntJST1bWyJwYXRoIix7ZDoiTTEwIDE4di03In1dLFsicGF0aCIse2Q6Ik0xMS4xMiAyLjE5OGEyIDIgMCAwIDEgMS43Ni4wMDZsNy44NjYgMy44NDdjLjQ3Ni4yMzMuMzEuOTQ5LS4yMi45NDlIMy40NzRjLS41MyAwLS42OTUtLjcxNi0uMjItLjk0OXoifV0sWyJwYXRoIix7ZDoiTTE0IDE4di03In1dLFsicGF0aCIse2Q6Ik0xOCAxOHYtNyJ9XSxbInBhdGgiLHtkOiJNMyAyMmgxOCJ9XSxbInBhdGgiLHtkOiJNNiAxOHYtNyJ9XV19KTt2YXIgTkksWlllPWwoKCk9PntOST1bWyJwYXRoIix7ZDoibTUgOCA2IDYifV0sWyJwYXRoIix7ZDoibTQgMTQgNi02IDItMyJ9XSxbInBhdGgiLHtkOiJNMiA1aDEyIn1dLFsicGF0aCIse2Q6Ik03IDJoMSJ9XSxbInBhdGgiLHtkOiJtMjIgMjItNS0xMC01IDEwIn1dLFsicGF0aCIse2Q6Ik0xNCAxOGg2In1dXX0pO3ZhciBGSSxYWWU9bCgoKT0+e0ZJPVtbInBhdGgiLHtkOiJNMiAyMGgyMCJ9XSxbInBhdGgiLHtkOiJtOSAxMCAyIDIgNC00In1dLFsicmVjdCIse3g6IjMiLHk6IjQiLHdpZHRoOiIxOCIsaGVpZ2h0OiIxMiIscng6IjIifV1dfSk7dmFyIGg1LFFZZT1sKCgpPT57aDU9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxMiIseDoiMyIseToiNCIscng6IjIiLHJ5OiIyIn1dLFsibGluZSIse3gxOiIyIix4MjoiMjIiLHkxOiIyMCIseTI6IjIwIn1dXX0pO3ZhciBPSSxLWWU9bCgoKT0+e09JPVtbInBhdGgiLHtkOiJNMTggNWEyIDIgMCAwIDEgMiAydjguNTI2YTIgMiAwIDAgMCAuMjEyLjg5N2wxLjA2OCAyLjEyN2ExIDEgMCAwIDEtLjkgMS40NUgzLjYyYTEgMSAwIDAgMS0uOS0xLjQ1bDEuMDY4LTIuMTI3QTIgMiAwIDAgMCA0IDE1LjUyNlY3YTIgMiAwIDAgMSAyLTJ6In1dLFsicGF0aCIse2Q6Ik0yMC4wNTQgMTUuOTg3SDMuOTQ2In1dXX0pO3ZhciBSSSxKWWU9bCgoKT0+e1JJPVtbInBhdGgiLHtkOiJNNyAyMmE1IDUgMCAwIDEtMi00In1dLFsicGF0aCIse2Q6Ik03IDE2LjkzYy45Ni40MyAxLjk2Ljc0IDIuOTkuOTEifV0sWyJwYXRoIix7ZDoiTTMuMzQgMTRBNi44IDYuOCAwIDAgMSAyIDEwYzAtNC40MiA0LjQ4LTggMTAtOHMxMCAzLjU4IDEwIDhhNy4xOSA3LjE5IDAgMCAxLS4zMyAyIn1dLFsicGF0aCIse2Q6Ik01IDE4YTIgMiAwIDEgMCAwLTQgMiAyIDAgMCAwIDAgNHoifV0sWyJwYXRoIix7ZDoiTTE0LjMzIDIyaC0uMDlhLjM1LjM1IDAgMCAxLS4yNC0uMzJ2LTEwYS4zNC4zNCAwIDAgMSAuMzMtLjM0Yy4wOCAwIC4xNS4wMy4yMS4wOGw3LjM0IDZhLjMzLjMzIDAgMCAxLS4yMS41OWgtNC40OWwtMi41NyAzLjg1YS4zNS4zNSAwIDAgMS0uMjguMTR6In1dXX0pO3ZhciBCSSxlWmU9bCgoKT0+e0JJPVtbInBhdGgiLHtkOiJNMy43MDQgMTQuNDY3YTEwIDggMCAxIDEgMy4xMTUgMi4zNzUifV0sWyJwYXRoIix7ZDoiTTcgMjJhNSA1IDAgMCAxLTItMy45OTQifV0sWyJjaXJjbGUiLHtjeDoiNSIsY3k6IjE2IixyOiIyIn1dXX0pO3ZhciBISSx0WmU9bCgoKT0+e0hJPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XSxbInBhdGgiLHtkOiJNMTggMTNhNiA2IDAgMCAxLTYgNSA2IDYgMCAwIDEtNi01aDEyWiJ9XSxbImxpbmUiLHt4MToiOSIseDI6IjkuMDEiLHkxOiI5Iix5MjoiOSJ9XSxbImxpbmUiLHt4MToiMTUiLHgyOiIxNS4wMSIseTE6IjkiLHkyOiI5In1dXX0pO3ZhciBxSSxyWmU9bCgoKT0+e3FJPVtbInBhdGgiLHtkOiJNMTMgMTMuNzRhMiAyIDAgMCAxLTIgMEwyLjUgOC44N2ExIDEgMCAwIDEgMC0xLjc0TDExIDIuMjZhMiAyIDAgMCAxIDIgMGw4LjUgNC44N2ExIDEgMCAwIDEgMCAxLjc0eiJ9XSxbInBhdGgiLHtkOiJtMjAgMTQuMjg1IDEuNS44NDVhMSAxIDAgMCAxIDAgMS43NEwxMyAyMS43NGEyIDIgMCAwIDEtMiAwbC04LjUtNC44N2ExIDEgMCAwIDEgMC0xLjc0bDEuNS0uODQ1In1dXX0pO3ZhciBqSSxhWmU9bCgoKT0+e2pJPVtbInBhdGgiLHtkOiJNMTIuODMgMi4xOGEyIDIgMCAwIDAtMS42NiAwTDIuNiA2LjA4YTEgMSAwIDAgMCAwIDEuODNsOC41OCAzLjkxYTIgMiAwIDAgMCAuODMuMTggMiAyIDAgMCAwIC44My0uMThsOC41OC0zLjlhMSAxIDAgMCAwIDAtMS44MzF6In1dLFsicGF0aCIse2Q6Ik0xNiAxN2g2In1dLFsicGF0aCIse2Q6Ik0xOSAxNHY2In1dLFsicGF0aCIse2Q6Ik0yIDEyYTEgMSAwIDAgMCAuNTguOTFsOC42IDMuOTFhMiAyIDAgMCAwIC44MjUuMTc4In1dLFsicGF0aCIse2Q6Ik0yIDE3YTEgMSAwIDAgMCAuNTguOTFsOC42IDMuOTFhMiAyIDAgMCAwIDEuNjUgMGwyLjExNi0uOTYyIn1dXX0pO3ZhciBtNSxpWmU9bCgoKT0+e201PVtbInBhdGgiLHtkOiJNMTIuODMgMi4xOGEyIDIgMCAwIDAtMS42NiAwTDIuNiA2LjA4YTEgMSAwIDAgMCAwIDEuODNsOC41OCAzLjkxYTIgMiAwIDAgMCAxLjY2IDBsOC41OC0zLjlhMSAxIDAgMCAwIDAtMS44M3oifV0sWyJwYXRoIix7ZDoiTTIgMTJhMSAxIDAgMCAwIC41OC45MWw4LjYgMy45MWEyIDIgMCAwIDAgMS42NSAwbDguNTgtMy45QTEgMSAwIDAgMCAyMiAxMiJ9XSxbInBhdGgiLHtkOiJNMiAxN2ExIDEgMCAwIDAgLjU4LjkxbDguNiAzLjkxYTIgMiAwIDAgMCAxLjY1IDBsOC41OC0zLjlBMSAxIDAgMCAwIDIyIDE3In1dXX0pO3ZhciBWSSxvWmU9bCgoKT0+e1ZJPVtbInJlY3QiLHt3aWR0aDoiNyIsaGVpZ2h0OiI3Iix4OiIzIix5OiIzIixyeDoiMSJ9XSxbInJlY3QiLHt3aWR0aDoiNyIsaGVpZ2h0OiI3Iix4OiIxNCIseToiMyIscng6IjEifV0sWyJyZWN0Iix7d2lkdGg6IjciLGhlaWdodDoiNyIseDoiMTQiLHk6IjE0IixyeDoiMSJ9XSxbInJlY3QiLHt3aWR0aDoiNyIsaGVpZ2h0OiI3Iix4OiIzIix5OiIxNCIscng6IjEifV1dfSk7dmFyIFVJLG5aZT1sKCgpPT57VUk9W1sicmVjdCIse3dpZHRoOiI3IixoZWlnaHQ6IjkiLHg6IjMiLHk6IjMiLHJ4OiIxIn1dLFsicmVjdCIse3dpZHRoOiI3IixoZWlnaHQ6IjUiLHg6IjE0Iix5OiIzIixyeDoiMSJ9XSxbInJlY3QiLHt3aWR0aDoiNyIsaGVpZ2h0OiI5Iix4OiIxNCIseToiMTIiLHJ4OiIxIn1dLFsicmVjdCIse3dpZHRoOiI3IixoZWlnaHQ6IjUiLHg6IjMiLHk6IjE2IixyeDoiMSJ9XV19KTt2YXIgV0ksc1plPWwoKCk9PntXST1bWyJyZWN0Iix7d2lkdGg6IjciLGhlaWdodDoiNyIseDoiMyIseToiMyIscng6IjEifV0sWyJyZWN0Iix7d2lkdGg6IjciLGhlaWdodDoiNyIseDoiMyIseToiMTQiLHJ4OiIxIn1dLFsicGF0aCIse2Q6Ik0xNCA0aDcifV0sWyJwYXRoIix7ZDoiTTE0IDloNyJ9XSxbInBhdGgiLHtkOiJNMTQgMTVoNyJ9XSxbInBhdGgiLHtkOiJNMTQgMjBoNyJ9XV19KTt2YXIgR0ksbFplPWwoKCk9PntHST1bWyJyZWN0Iix7d2lkdGg6IjciLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIxIn1dLFsicmVjdCIse3dpZHRoOiI3IixoZWlnaHQ6IjciLHg6IjE0Iix5OiIzIixyeDoiMSJ9XSxbInJlY3QiLHt3aWR0aDoiNyIsaGVpZ2h0OiI3Iix4OiIxNCIseToiMTQiLHJ4OiIxIn1dXX0pO3ZhciBZSSxjWmU9bCgoKT0+e1lJPVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiNyIseDoiMyIseToiMyIscng6IjEifV0sWyJyZWN0Iix7d2lkdGg6IjciLGhlaWdodDoiNyIseDoiMyIseToiMTQiLHJ4OiIxIn1dLFsicmVjdCIse3dpZHRoOiI3IixoZWlnaHQ6IjciLHg6IjE0Iix5OiIxNCIscng6IjEifV1dfSk7dmFyIFpJLGRaZT1sKCgpPT57Wkk9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiI3Iix4OiIzIix5OiIzIixyeDoiMSJ9XSxbInJlY3QiLHt3aWR0aDoiOSIsaGVpZ2h0OiI3Iix4OiIzIix5OiIxNCIscng6IjEifV0sWyJyZWN0Iix7d2lkdGg6IjUiLGhlaWdodDoiNyIseDoiMTYiLHk6IjE0IixyeDoiMSJ9XV19KTt2YXIgWEksdVplPWwoKCk9PntYST1bWyJwYXRoIix7ZDoiTTIgMjJjMS4yNS0uOTg3IDIuMjctMS45NzUgMy45LTIuMmE1LjU2IDUuNTYgMCAwIDEgMy44IDEuNSA0IDQgMCAwIDAgNi4xODctMi4zNTMgMy41IDMuNSAwIDAgMCAzLjY5LTUuMTE2QTMuNSAzLjUgMCAwIDAgMjAuOTUgOCAzLjUgMy41IDAgMSAwIDE2IDMuMDVhMy41IDMuNSAwIDAgMC01LjgzMSAxLjM3MyAzLjUgMy41IDAgMCAwLTUuMTE2IDMuNjkgNCA0IDAgMCAwLTIuMzQ4IDYuMTU1QzMuNDk5IDE1LjQyIDQuNDA5IDE2LjcxMiA0LjIgMTguMSAzLjkyNiAxOS43NDMgMy4wMTQgMjAuNzMyIDIgMjIifV0sWyJwYXRoIix7ZDoiTTIgMjIgMTcgNyJ9XV19KTt2YXIgUUksZlplPWwoKCk9PntRST1bWyJwYXRoIix7ZDoiTTE2IDEyaDNhMiAyIDAgMCAwIDEuOTAyLTEuMzhsMS4wNTYtMy4zMzNBMSAxIDAgMCAwIDIxIDZIM2ExIDEgMCAwIDAtLjk1OCAxLjI4N2wxLjA1NiAzLjMzNEEyIDIgMCAwIDAgNSAxMmgzIn1dLFsicGF0aCIse2Q6Ik0xOCA2VjNhMSAxIDAgMCAwLTEtMWgtMyJ9XSxbInJlY3QiLHt3aWR0aDoiOCIsaGVpZ2h0OiIxMiIseDoiOCIseToiMTAiLHJ4OiIxIn1dXX0pO3ZhciBLSSxwWmU9bCgoKT0+e0tJPVtbInBhdGgiLHtkOiJNMTEgMjBBNyA3IDAgMCAxIDkuOCA2LjFDMTUuNSA1IDE3IDQuNDggMTkgMmMxIDIgMiA0LjE4IDIgOCAwIDUuNS00Ljc4IDEwLTEwIDEwWiJ9XSxbInBhdGgiLHtkOiJNMiAyMWMwLTMgMS44NS01LjM2IDUuMDgtNkM5LjUgMTQuNTIgMTIgMTMgMTMgMTIifV1dfSk7dmFyIEpJLGhaZT1sKCgpPT57Skk9W1sicGF0aCIse2Q6Ik03IDJhMSAxIDAgMCAwLS44IDEuNiAxNCAxNCAwIDAgMSAwIDE2LjhBMSAxIDAgMCAwIDcgMjJoMTBhMSAxIDAgMCAwIC44LTEuNiAxNCAxNCAwIDAgMSAwLTE2LjhBMSAxIDAgMCAwIDE3IDJ6In1dXX0pO3ZhciBlTixtWmU9bCgoKT0+e2VOPVtbInBhdGgiLHtkOiJNMTMuNDMzIDJhMSAxIDAgMCAxIC44MjQuNDQ4IDE4IDE4IDAgMCAxIDAgMTkuMTA0IDEgMSAwIDAgMS0uODI0LjQ0OGgtMi44NjZhMSAxIDAgMCAxLS44MjQtLjQ0OCAxOCAxOCAwIDAgMSAwLTE5LjEwNEExIDEgMCAwIDEgMTAuNTY3IDJ6In1dXX0pO3ZhciB0TixnWmU9bCgoKT0+e3ROPVtbInJlY3QiLHt3aWR0aDoiOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjEifV0sWyJwYXRoIix7ZDoiTTcgM3YxOCJ9XSxbInBhdGgiLHtkOiJNMjAuNCAxOC45Yy4yLjUtLjEgMS4xLS42IDEuM2wtMS45LjdjLS41LjItMS4xLS4xLTEuMy0uNkwxMS4xIDUuMWMtLjItLjUuMS0xLjEuNi0xLjNsMS45LS43Yy41LS4yIDEuMS4xIDEuMy42WiJ9XV19KTt2YXIgck4seFplPWwoKCk9PntyTj1bWyJwYXRoIix7ZDoibTE2IDYgNCAxNCJ9XSxbInBhdGgiLHtkOiJNMTIgNnYxNCJ9XSxbInBhdGgiLHtkOiJNOCA4djEyIn1dLFsicGF0aCIse2Q6Ik00IDR2MTYifV1dfSk7dmFyIGFOLGJaZT1sKCgpPT57YU49W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjEwIn1dLFsicGF0aCIse2Q6Im00LjkzIDQuOTMgNC4yNCA0LjI0In1dLFsicGF0aCIse2Q6Im0xNC44MyA5LjE3IDQuMjQtNC4yNCJ9XSxbInBhdGgiLHtkOiJtMTQuODMgMTQuODMgNC4yNCA0LjI0In1dLFsicGF0aCIse2Q6Im05LjE3IDE0LjgzLTQuMjQgNC4yNCJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiI0In1dXX0pO3ZhciBpTix2WmU9bCgoKT0+e2lOPVtbInBhdGgiLHtkOiJNMTQgMTJoMnY4In1dLFsicGF0aCIse2Q6Ik0xNCAyMGg0In1dLFsicGF0aCIse2Q6Ik02IDEyaDQifV0sWyJwYXRoIix7ZDoiTTYgMjBoNCJ9XSxbInBhdGgiLHtkOiJNOCAyMFY4YTQgNCAwIDAgMSA3LjQ2NC0yIn1dXX0pO3ZhciBvTix5WmU9bCgoKT0+e29OPVtbInBhdGgiLHtkOiJNMTUgMTRjLjItMSAuNy0xLjcgMS41LTIuNSAxLS45IDEuNS0yLjIgMS41LTMuNUE2IDYgMCAwIDAgNiA4YzAgMSAuMiAyLjIgMS41IDMuNS43LjcgMS4zIDEuNSAxLjUgMi41In1dLFsicGF0aCIse2Q6Ik05IDE4aDYifV0sWyJwYXRoIix7ZDoiTTEwIDIyaDQifV1dfSk7dmFyIG5OLHdaZT1sKCgpPT57bk49W1sicGF0aCIse2Q6Ik0gMyAxMiBMIDE1IDEyIn1dLFsiY2lyY2xlIix7Y3g6IjE4IixjeToiMTIiLHI6IjMifV1dfSk7dmFyIHNOLE1aZT1sKCgpPT57c049W1sicGF0aCIse2Q6Ik0xNi44IDExLjJjLjgtLjkgMS4yLTIgMS4yLTMuMmE2IDYgMCAwIDAtOS4zLTUifV0sWyJwYXRoIix7ZDoibTIgMiAyMCAyMCJ9XSxbInBhdGgiLHtkOiJNNi4zIDYuM2E0LjY3IDQuNjcgMCAwIDAgMS4yIDUuMmMuNy43IDEuMyAxLjUgMS41IDIuNSJ9XSxbInBhdGgiLHtkOiJNOSAxOGg2In1dLFsicGF0aCIse2Q6Ik0xMCAyMmg0In1dXX0pO3ZhciBsTixrWmU9bCgoKT0+e2xOPVtbInBhdGgiLHtkOiJNNyAzLjVjNS0yIDcgMi41IDMgNEMxLjUgMTAgMiAxNSA1IDE2YzUgMiA5LTEwIDE0LTdzLjUgMTMuNS00IDEyYy01LTIuNS41LTExIDYtMiJ9XV19KTt2YXIgY04sU1plPWwoKCk9PntjTj1bWyJwYXRoIix7ZDoiTTkgMTdIN0E1IDUgMCAwIDEgNyA3In1dLFsicGF0aCIse2Q6Ik0xNSA3aDJhNSA1IDAgMCAxIDQgOCJ9XSxbImxpbmUiLHt4MToiOCIseDI6IjEyIix5MToiMTIiLHkyOiIxMiJ9XSxbImxpbmUiLHt4MToiMiIseDI6IjIyIix5MToiMiIseTI6IjIyIn1dXX0pO3ZhciBkTix6WmU9bCgoKT0+e2ROPVtbInBhdGgiLHtkOiJNOSAxN0g3QTUgNSAwIDAgMSA3IDdoMiJ9XSxbInBhdGgiLHtkOiJNMTUgN2gyYTUgNSAwIDEgMSAwIDEwaC0yIn1dLFsibGluZSIse3gxOiI4Iix4MjoiMTYiLHkxOiIxMiIseTI6IjEyIn1dXX0pO3ZhciB1TixDWmU9bCgoKT0+e3VOPVtbInBhdGgiLHtkOiJNMTAgMTNhNSA1IDAgMCAwIDcuNTQuNTRsMy0zYTUgNSAwIDAgMC03LjA3LTcuMDdsLTEuNzIgMS43MSJ9XSxbInBhdGgiLHtkOiJNMTQgMTFhNSA1IDAgMCAwLTcuNTQtLjU0bC0zIDNhNSA1IDAgMCAwIDcuMDcgNy4wN2wxLjcxLTEuNzEifV1dfSk7dmFyIGZOLF9aZT1sKCgpPT57Zk49W1sicGF0aCIse2Q6Ik0xNiA4YTYgNiAwIDAgMSA2IDZ2N2gtNHYtN2EyIDIgMCAwIDAtMi0yIDIgMiAwIDAgMC0yIDJ2N2gtNHYtN2E2IDYgMCAwIDEgNi02eiJ9XSxbInJlY3QiLHt3aWR0aDoiNCIsaGVpZ2h0OiIxMiIseDoiMiIseToiOSJ9XSxbImNpcmNsZSIse2N4OiI0IixjeToiNCIscjoiMiJ9XV19KTt2YXIgcE4sVFplPWwoKCk9PntwTj1bWyJwYXRoIix7ZDoiTTE2IDVIMyJ9XSxbInBhdGgiLHtkOiJNMTYgMTJIMyJ9XSxbInBhdGgiLHtkOiJNMTEgMTlIMyJ9XSxbInBhdGgiLHtkOiJtMTUgMTggMiAyIDQtNCJ9XV19KTt2YXIgaE4sTFplPWwoKCk9PntoTj1bWyJwYXRoIix7ZDoiTTEzIDVoOCJ9XSxbInBhdGgiLHtkOiJNMTMgMTJoOCJ9XSxbInBhdGgiLHtkOiJNMTMgMTloOCJ9XSxbInBhdGgiLHtkOiJtMyAxNyAyIDIgNC00In1dLFsicGF0aCIse2Q6Im0zIDcgMiAyIDQtNCJ9XV19KTt2YXIgbU4sRFplPWwoKCk9PnttTj1bWyJwYXRoIix7ZDoiTTMgNWg4In1dLFsicGF0aCIse2Q6Ik0zIDEyaDgifV0sWyJwYXRoIix7ZDoiTTMgMTloOCJ9XSxbInBhdGgiLHtkOiJtMTUgNSAzIDMgMy0zIn1dLFsicGF0aCIse2Q6Im0xNSAxOSAzLTMgMyAzIn1dXX0pO3ZhciBnTixBWmU9bCgoKT0+e2dOPVtbInBhdGgiLHtkOiJNMTAgNWgxMSJ9XSxbInBhdGgiLHtkOiJNMTAgMTJoMTEifV0sWyJwYXRoIix7ZDoiTTEwIDE5aDExIn1dLFsicGF0aCIse2Q6Im0zIDEwIDMtMy0zLTMifV0sWyJwYXRoIix7ZDoibTMgMjAgMy0zLTMtMyJ9XV19KTt2YXIgeE4sRVplPWwoKCk9Pnt4Tj1bWyJwYXRoIix7ZDoiTTMgNWg4In1dLFsicGF0aCIse2Q6Ik0zIDEyaDgifV0sWyJwYXRoIix7ZDoiTTMgMTloOCJ9XSxbInBhdGgiLHtkOiJtMTUgOCAzLTMgMyAzIn1dLFsicGF0aCIse2Q6Im0xNSAxNiAzIDMgMy0zIn1dXX0pO3ZhciBiTiwkWmU9bCgoKT0+e2JOPVtbInBhdGgiLHtkOiJNMTYgNUgzIn1dLFsicGF0aCIse2Q6Ik0xNiAxMkgzIn1dLFsicGF0aCIse2Q6Ik05IDE5SDMifV0sWyJwYXRoIix7ZDoibTE2IDE2LTMgMyAzIDMifV0sWyJwYXRoIix7ZDoiTTIxIDV2MTJhMiAyIDAgMCAxLTIgMmgtNiJ9XV19KTt2YXIgdk4sUFplPWwoKCk9Pnt2Tj1bWyJwYXRoIix7ZDoiTTEyIDVIMiJ9XSxbInBhdGgiLHtkOiJNNiAxMmgxMiJ9XSxbInBhdGgiLHtkOiJNOSAxOWg2In1dLFsicGF0aCIse2Q6Ik0xNiA1aDYifV0sWyJwYXRoIix7ZDoiTTE5IDhWMiJ9XV19KTt2YXIgeU4sSVplPWwoKCk9Pnt5Tj1bWyJwYXRoIix7ZDoiTTIgNWgyMCJ9XSxbInBhdGgiLHtkOiJNNiAxMmgxMiJ9XSxbInBhdGgiLHtkOiJNOSAxOWg2In1dXX0pO3ZhciBBYyxOWmU9bCgoKT0+e0FjPVtbInBhdGgiLHtkOiJNMjEgNUgxMSJ9XSxbInBhdGgiLHtkOiJNMjEgMTJIMTEifV0sWyJwYXRoIix7ZDoiTTIxIDE5SDExIn1dLFsicGF0aCIse2Q6Im03IDgtNCA0IDQgNCJ9XV19KTt2YXIgRWMsRlplPWwoKCk9PntFYz1bWyJwYXRoIix7ZDoiTTIxIDVIMTEifV0sWyJwYXRoIix7ZDoiTTIxIDEySDExIn1dLFsicGF0aCIse2Q6Ik0yMSAxOUgxMSJ9XSxbInBhdGgiLHtkOiJtMyA4IDQgNC00IDQifV1dfSk7dmFyIHdOLE9aZT1sKCgpPT57d049W1sicGF0aCIse2Q6Ik0xNiA1SDMifV0sWyJwYXRoIix7ZDoiTTExIDEySDMifV0sWyJwYXRoIix7ZDoiTTExIDE5SDMifV0sWyJwYXRoIix7ZDoiTTIxIDE2VjUifV0sWyJjaXJjbGUiLHtjeDoiMTgiLGN5OiIxNiIscjoiMyJ9XV19KTt2YXIgTU4sUlplPWwoKCk9PntNTj1bWyJwYXRoIix7ZDoiTTE2IDVIMyJ9XSxbInBhdGgiLHtkOiJNMTEgMTJIMyJ9XSxbInBhdGgiLHtkOiJNMTYgMTlIMyJ9XSxbInBhdGgiLHtkOiJNMjEgMTJoLTYifV1dfSk7dmFyIGtOLEJaZT1sKCgpPT57a049W1sicGF0aCIse2Q6Ik0xMSA1aDEwIn1dLFsicGF0aCIse2Q6Ik0xMSAxMmgxMCJ9XSxbInBhdGgiLHtkOiJNMTEgMTloMTAifV0sWyJwYXRoIix7ZDoiTTQgNGgxdjUifV0sWyJwYXRoIix7ZDoiTTQgOWgyIn1dLFsicGF0aCIse2Q6Ik02LjUgMjBIMy40YzAtMSAyLjYtMS45MjUgMi42LTMuNWExLjUgMS41IDAgMCAwLTIuNi0xLjAyIn1dXX0pO3ZhciBTTixIWmU9bCgoKT0+e1NOPVtbInBhdGgiLHtkOiJNMjEgNUgzIn1dLFsicGF0aCIse2Q6Ik03IDEySDMifV0sWyJwYXRoIix7ZDoiTTcgMTlIMyJ9XSxbInBhdGgiLHtkOiJNMTIgMThhNSA1IDAgMCAwIDktMyA0LjUgNC41IDAgMCAwLTQuNS00LjVjLTEuMzMgMC0yLjU0LjU0LTMuNDEgMS40MUwxMSAxNCJ9XSxbInBhdGgiLHtkOiJNMTEgMTB2NGg0In1dXX0pO3ZhciB6TixxWmU9bCgoKT0+e3pOPVtbInBhdGgiLHtkOiJNMTYgNUgzIn1dLFsicGF0aCIse2Q6Ik0xMSAxMkgzIn1dLFsicGF0aCIse2Q6Ik0xNiAxOUgzIn1dLFsicGF0aCIse2Q6Ik0xOCA5djYifV0sWyJwYXRoIix7ZDoiTTIxIDEyaC02In1dXX0pO3ZhciBDTixqWmU9bCgoKT0+e0NOPVtbInBhdGgiLHtkOiJNMyA1aDYifV0sWyJwYXRoIix7ZDoiTTMgMTJoMTMifV0sWyJwYXRoIix7ZDoiTTMgMTloMTMifV0sWyJwYXRoIix7ZDoibTE2IDgtMy0zIDMtMyJ9XSxbInBhdGgiLHtkOiJNMjEgMTlWN2EyIDIgMCAwIDAtMi0yaC02In1dXX0pO3ZhciBfTixWWmU9bCgoKT0+e19OPVtbInBhdGgiLHtkOiJNMTMgNWg4In1dLFsicGF0aCIse2Q6Ik0xMyAxMmg4In1dLFsicGF0aCIse2Q6Ik0xMyAxOWg4In1dLFsicGF0aCIse2Q6Im0zIDE3IDIgMiA0LTQifV0sWyJyZWN0Iix7eDoiMyIseToiNCIsd2lkdGg6IjYiLGhlaWdodDoiNiIscng6IjEifV1dfSk7dmFyIFROLFVaZT1sKCgpPT57VE49W1sicGF0aCIse2Q6Ik04IDVoMTMifV0sWyJwYXRoIix7ZDoiTTEzIDEyaDgifV0sWyJwYXRoIix7ZDoiTTEzIDE5aDgifV0sWyJwYXRoIix7ZDoiTTMgMTBhMiAyIDAgMCAwIDIgMmgzIn1dLFsicGF0aCIse2Q6Ik0zIDV2MTJhMiAyIDAgMCAwIDIgMmgzIn1dXX0pO3ZhciBMTixXWmU9bCgoKT0+e0xOPVtbInBhdGgiLHtkOiJNMjEgNUgzIn1dLFsicGF0aCIse2Q6Ik0xMCAxMkgzIn1dLFsicGF0aCIse2Q6Ik0xMCAxOUgzIn1dLFsicGF0aCIse2Q6Ik0xNSAxMi4wMDNhMSAxIDAgMCAxIDEuNTE3LS44NTlsNC45OTcgMi45OTdhMSAxIDAgMCAxIDAgMS43MThsLTQuOTk3IDIuOTk3YTEgMSAwIDAgMS0xLjUxNy0uODZ6In1dXX0pO3ZhciBETixHWmU9bCgoKT0+e0ROPVtbInBhdGgiLHtkOiJNMTYgNUgzIn1dLFsicGF0aCIse2Q6Ik0xMSAxMkgzIn1dLFsicGF0aCIse2Q6Ik0xNiAxOUgzIn1dLFsicGF0aCIse2Q6Im0xNS41IDkuNSA1IDUifV0sWyJwYXRoIix7ZDoibTIwLjUgOS41LTUgNSJ9XV19KTt2YXIgQU4sWVplPWwoKCk9PntBTj1bWyJwYXRoIix7ZDoiTTMgNWguMDEifV0sWyJwYXRoIix7ZDoiTTMgMTJoLjAxIn1dLFsicGF0aCIse2Q6Ik0zIDE5aC4wMSJ9XSxbInBhdGgiLHtkOiJNOCA1aDEzIn1dLFsicGF0aCIse2Q6Ik04IDEyaDEzIn1dLFsicGF0aCIse2Q6Ik04IDE5aDEzIn1dXX0pO3ZhciBnNSxaWmU9bCgoKT0+e2c1PVtbInBhdGgiLHtkOiJNMjEgMTJhOSA5IDAgMSAxLTYuMjE5LTguNTYifV1dfSk7dmFyIEVOLFhaZT1sKCgpPT57RU49W1sicGF0aCIse2Q6Ik0yMiAxMmExIDEgMCAwIDEtMTAgMCAxIDEgMCAwIDAtMTAgMCJ9XSxbInBhdGgiLHtkOiJNNyAyMC43YTEgMSAwIDEgMSA1LTguNyAxIDEgMCAxIDAgNS04LjYifV0sWyJwYXRoIix7ZDoiTTcgMy4zYTEgMSAwIDEgMSA1IDguNiAxIDEgMCAxIDAgNSA4LjYifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMTAifV1dfSk7dmFyICROLFFaZT1sKCgpPT57JE49W1sicGF0aCIse2Q6Ik0xMiAydjQifV0sWyJwYXRoIix7ZDoibTE2LjIgNy44IDIuOS0yLjkifV0sWyJwYXRoIix7ZDoiTTE4IDEyaDQifV0sWyJwYXRoIix7ZDoibTE2LjIgMTYuMiAyLjkgMi45In1dLFsicGF0aCIse2Q6Ik0xMiAxOHY0In1dLFsicGF0aCIse2Q6Im00LjkgMTkuMSAyLjktMi45In1dLFsicGF0aCIse2Q6Ik0yIDEyaDQifV0sWyJwYXRoIix7ZDoibTQuOSA0LjkgMi45IDIuOSJ9XV19KTt2YXIgUE4sS1plPWwoKCk9PntQTj1bWyJsaW5lIix7eDE6IjIiLHgyOiI1Iix5MToiMTIiLHkyOiIxMiJ9XSxbImxpbmUiLHt4MToiMTkiLHgyOiIyMiIseTE6IjEyIix5MjoiMTIifV0sWyJsaW5lIix7eDE6IjEyIix4MjoiMTIiLHkxOiIyIix5MjoiNSJ9XSxbImxpbmUiLHt4MToiMTIiLHgyOiIxMiIseTE6IjE5Iix5MjoiMjIifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiNyJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIzIn1dXX0pO3ZhciBJTixKWmU9bCgoKT0+e0lOPVtbInBhdGgiLHtkOiJNMTIgMTl2MyJ9XSxbInBhdGgiLHtkOiJNMTIgMnYzIn1dLFsicGF0aCIse2Q6Ik0xOC44OSAxMy4yNGE3IDcgMCAwIDAtOC4xMy04LjEzIn1dLFsicGF0aCIse2Q6Ik0xOSAxMmgzIn1dLFsicGF0aCIse2Q6Ik0yIDEyaDMifV0sWyJwYXRoIix7ZDoibTIgMiAyMCAyMCJ9XSxbInBhdGgiLHtkOiJNNy4wNSA3LjA1YTcgNyAwIDAgMCA5LjkgOS45In1dXX0pO3ZhciBOTixlWGU9bCgoKT0+e05OPVtbImxpbmUiLHt4MToiMiIseDI6IjUiLHkxOiIxMiIseTI6IjEyIn1dLFsibGluZSIse3gxOiIxOSIseDI6IjIyIix5MToiMTIiLHkyOiIxMiJ9XSxbImxpbmUiLHt4MToiMTIiLHgyOiIxMiIseTE6IjIiLHkyOiI1In1dLFsibGluZSIse3gxOiIxMiIseDI6IjEyIix5MToiMTkiLHkyOiIyMiJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiI3In1dXX0pO3ZhciB4NSx0WGU9bCgoKT0+e3g1PVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjE2IixyOiIxIn1dLFsicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxMiIseDoiMyIseToiMTAiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik03IDEwVjdhNSA1IDAgMCAxIDkuMzMtMi41In1dXX0pO3ZhciBGTixyWGU9bCgoKT0+e0ZOPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjE2IixyOiIxIn1dLFsicmVjdCIse3g6IjMiLHk6IjEwIix3aWR0aDoiMTgiLGhlaWdodDoiMTIiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik03IDEwVjdhNSA1IDAgMCAxIDEwIDB2MyJ9XV19KTt2YXIgYjUsYVhlPWwoKCk9PntiNT1bWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjExIix4OiIzIix5OiIxMSIscng6IjIiLHJ5OiIyIn1dLFsicGF0aCIse2Q6Ik03IDExVjdhNSA1IDAgMCAxIDkuOS0xIn1dXX0pO3ZhciBPTixpWGU9bCgoKT0+e09OPVtbInBhdGgiLHtkOiJtMTAgMTcgNS01LTUtNSJ9XSxbInBhdGgiLHtkOiJNMTUgMTJIMyJ9XSxbInBhdGgiLHtkOiJNMTUgM2g0YTIgMiAwIDAgMSAyIDJ2MTRhMiAyIDAgMCAxLTIgMmgtNCJ9XV19KTt2YXIgUk4sb1hlPWwoKCk9PntSTj1bWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjExIix4OiIzIix5OiIxMSIscng6IjIiLHJ5OiIyIn1dLFsicGF0aCIse2Q6Ik03IDExVjdhNSA1IDAgMCAxIDEwIDB2NCJ9XV19KTt2YXIgQk4sblhlPWwoKCk9PntCTj1bWyJwYXRoIix7ZDoibTE2IDE3IDUtNS01LTUifV0sWyJwYXRoIix7ZDoiTTIxIDEySDkifV0sWyJwYXRoIix7ZDoiTTkgMjFINWEyIDIgMCAwIDEtMi0yVjVhMiAyIDAgMCAxIDItMmg0In1dXX0pO3ZhciBITixzWGU9bCgoKT0+e0hOPVtbInBhdGgiLHtkOiJNMyA1aDEifV0sWyJwYXRoIix7ZDoiTTMgMTJoMSJ9XSxbInBhdGgiLHtkOiJNMyAxOWgxIn1dLFsicGF0aCIse2Q6Ik04IDVoMSJ9XSxbInBhdGgiLHtkOiJNOCAxMmgxIn1dLFsicGF0aCIse2Q6Ik04IDE5aDEifV0sWyJwYXRoIix7ZDoiTTEzIDVoOCJ9XSxbInBhdGgiLHtkOiJNMTMgMTJoOCJ9XSxbInBhdGgiLHtkOiJNMTMgMTloOCJ9XV19KTt2YXIgcU4sbFhlPWwoKCk9PntxTj1bWyJjaXJjbGUiLHtjeDoiMTEiLGN5OiIxMSIscjoiOCJ9XSxbInBhdGgiLHtkOiJtMjEgMjEtNC4zLTQuMyJ9XSxbInBhdGgiLHtkOiJNMTEgMTFhMiAyIDAgMCAwIDQgMCA0IDQgMCAwIDAtOCAwIDYgNiAwIDAgMCAxMiAwIn1dXX0pO3ZhciBqTixjWGU9bCgoKT0+e2pOPVtbInBhdGgiLHtkOiJNNiAyMGEyIDIgMCAwIDEtMi0yVjhhMiAyIDAgMCAxIDItMmgxMmEyIDIgMCAwIDEgMiAydjEwYTIgMiAwIDAgMS0yIDIifV0sWyJwYXRoIix7ZDoiTTggMThWNGEyIDIgMCAwIDEgMi0yaDRhMiAyIDAgMCAxIDIgMnYxNCJ9XSxbInBhdGgiLHtkOiJNMTAgMjBoNCJ9XSxbImNpcmNsZSIse2N4OiIxNiIsY3k6IjIwIixyOiIyIn1dLFsiY2lyY2xlIix7Y3g6IjgiLGN5OiIyMCIscjoiMiJ9XV19KTt2YXIgVk4sZFhlPWwoKCk9PntWTj1bWyJwYXRoIix7ZDoibTEyIDE1IDQgNCJ9XSxbInBhdGgiLHtkOiJNMi4zNTIgMTAuNjQ4YTEuMjA1IDEuMjA1IDAgMCAwIDAgMS43MDRsMi4yOTYgMi4yOTZhMS4yMDUgMS4yMDUgMCAwIDAgMS43MDQgMGw2LjAyOS02LjAyOWExIDEgMCAxIDEgMyAzbC02LjAyOSA2LjAyOWExLjIwNSAxLjIwNSAwIDAgMCAwIDEuNzA0bDIuMjk2IDIuMjk2YTEuMjA1IDEuMjA1IDAgMCAwIDEuNzA0IDBsNi4zNjUtNi4zNjdBMSAxIDAgMCAwIDguNzE2IDQuMjgyeiJ9XSxbInBhdGgiLHtkOiJtNSA4IDQgNCJ9XV19KTt2YXIgVU4sdVhlPWwoKCk9PntVTj1bWyJwYXRoIix7ZDoiTTIyIDEzVjZhMiAyIDAgMCAwLTItMkg0YTIgMiAwIDAgMC0yIDJ2MTJjMCAxLjEuOSAyIDIgMmg4In1dLFsicGF0aCIse2Q6Im0yMiA3LTguOTcgNS43YTEuOTQgMS45NCAwIDAgMS0yLjA2IDBMMiA3In1dLFsicGF0aCIse2Q6Im0xNiAxOSAyIDIgNC00In1dXX0pO3ZhciBXTixmWGU9bCgoKT0+e1dOPVtbInBhdGgiLHtkOiJNMjIgMTVWNmEyIDIgMCAwIDAtMi0ySDRhMiAyIDAgMCAwLTIgMnYxMmMwIDEuMS45IDIgMiAyaDgifV0sWyJwYXRoIix7ZDoibTIyIDctOC45NyA1LjdhMS45NCAxLjk0IDAgMCAxLTIuMDYgMEwyIDcifV0sWyJwYXRoIix7ZDoiTTE2IDE5aDYifV1dfSk7dmFyIEdOLHBYZT1sKCgpPT57R049W1sicGF0aCIse2Q6Ik0yMS4yIDguNGMuNS4zOC44Ljk3LjggMS42djEwYTIgMiAwIDAgMS0yIDJINGEyIDIgMCAwIDEtMi0yVjEwYTIgMiAwIDAgMSAuOC0xLjZsOC02YTIgMiAwIDAgMSAyLjQgMGw4IDZaIn1dLFsicGF0aCIse2Q6Im0yMiAxMC04Ljk3IDUuN2ExLjk0IDEuOTQgMCAwIDEtMi4wNiAwTDIgMTAifV1dfSk7dmFyIFlOLGhYZT1sKCgpPT57WU49W1sicGF0aCIse2Q6Ik0yMiAxM1Y2YTIgMiAwIDAgMC0yLTJINGEyIDIgMCAwIDAtMiAydjEyYzAgMS4xLjkgMiAyIDJoOCJ9XSxbInBhdGgiLHtkOiJtMjIgNy04Ljk3IDUuN2ExLjk0IDEuOTQgMCAwIDEtMi4wNiAwTDIgNyJ9XSxbInBhdGgiLHtkOiJNMTkgMTZ2NiJ9XSxbInBhdGgiLHtkOiJNMTYgMTloNiJ9XV19KTt2YXIgdjUsbVhlPWwoKCk9Pnt2NT1bWyJwYXRoIix7ZDoiTTIyIDEwLjVWNmEyIDIgMCAwIDAtMi0ySDRhMiAyIDAgMCAwLTIgMnYxMmMwIDEuMS45IDIgMiAyaDEyLjUifV0sWyJwYXRoIix7ZDoibTIyIDctOC45NyA1LjdhMS45NCAxLjk0IDAgMCAxLTIuMDYgMEwyIDcifV0sWyJwYXRoIix7ZDoiTTE4IDE1LjI4Yy4yLS40LjUtLjguOS0xYTIuMSAyLjEgMCAwIDEgMi42LjRjLjMuNC41LjguNSAxLjMgMCAxLjMtMiAyLTIgMiJ9XSxbInBhdGgiLHtkOiJNMjAgMjJ2LjAxIn1dXX0pO3ZhciBaTixnWGU9bCgoKT0+e1pOPVtbInBhdGgiLHtkOiJNMjIgMTIuNVY2YTIgMiAwIDAgMC0yLTJINGEyIDIgMCAwIDAtMiAydjEyYzAgMS4xLjkgMiAyIDJoNy41In1dLFsicGF0aCIse2Q6Im0yMiA3LTguOTcgNS43YTEuOTQgMS45NCAwIDAgMS0yLjA2IDBMMiA3In1dLFsicGF0aCIse2Q6Ik0xOCAyMWEzIDMgMCAxIDAgMC02IDMgMyAwIDAgMCAwIDZaIn1dLFsiY2lyY2xlIix7Y3g6IjE4IixjeToiMTgiLHI6IjMifV0sWyJwYXRoIix7ZDoibTIyIDIyLTEuNS0xLjUifV1dfSk7dmFyIFhOLHhYZT1sKCgpPT57WE49W1sicGF0aCIse2Q6Ik0yMiAxMC41VjZhMiAyIDAgMCAwLTItMkg0YTIgMiAwIDAgMC0yIDJ2MTJjMCAxLjEuOSAyIDIgMmgxMi41In1dLFsicGF0aCIse2Q6Im0yMiA3LTguOTcgNS43YTEuOTQgMS45NCAwIDAgMS0yLjA2IDBMMiA3In1dLFsicGF0aCIse2Q6Ik0yMCAxNHY0In1dLFsicGF0aCIse2Q6Ik0yMCAyMnYuMDEifV1dfSk7dmFyIFFOLGJYZT1sKCgpPT57UU49W1sicGF0aCIse2Q6Ik0yMiAxM1Y2YTIgMiAwIDAgMC0yLTJINGEyIDIgMCAwIDAtMiAydjEyYzAgMS4xLjkgMiAyIDJoOSJ9XSxbInBhdGgiLHtkOiJtMjIgNy04Ljk3IDUuN2ExLjk0IDEuOTQgMCAwIDEtMi4wNiAwTDIgNyJ9XSxbInBhdGgiLHtkOiJtMTcgMTcgNCA0In1dLFsicGF0aCIse2Q6Im0yMSAxNy00IDQifV1dfSk7dmFyIEtOLHZYZT1sKCgpPT57S049W1sicGF0aCIse2Q6Im0yMiA3LTguOTkxIDUuNzI3YTIgMiAwIDAgMS0yLjAwOSAwTDIgNyJ9XSxbInJlY3QiLHt4OiIyIix5OiI0Iix3aWR0aDoiMjAiLGhlaWdodDoiMTYiLHJ4OiIyIn1dXX0pO3ZhciBKTix5WGU9bCgoKT0+e0pOPVtbInBhdGgiLHtkOiJNMjIgMTdhMiAyIDAgMCAxLTIgMkg0YTIgMiAwIDAgMS0yLTJWOS41QzIgNyA0IDUgNi41IDVIMThjMi4yIDAgNCAxLjggNCA0djhaIn1dLFsicG9seWxpbmUiLHtwb2ludHM6IjE1LDkgMTgsOSAxOCwxMSJ9XSxbInBhdGgiLHtkOiJNNi41IDVDOSA1IDExIDcgMTEgOS41VjE3YTIgMiAwIDAgMS0yIDIifV0sWyJsaW5lIix7eDE6IjYiLHgyOiI3Iix5MToiMTAiLHkyOiIxMCJ9XV19KTt2YXIgZUYsd1hlPWwoKCk9PntlRj1bWyJwYXRoIix7ZDoiTTE3IDE5YTIgMiAwIDAgMS0yIDJINGEyIDIgMCAwIDEtMi0ydi04YTIgMiAwIDAgMSAxLTEuNzMyIn1dLFsicGF0aCIse2Q6Im0yMiA1LjUtNi40MTkgNC4xNzlhMiAyIDAgMCAxLTIuMTYyIDBMNyA1LjUifV0sWyJyZWN0Iix7eDoiNyIseToiMyIsd2lkdGg6IjE1IixoZWlnaHQ6IjEyIixyeDoiMiJ9XV19KTt2YXIgdEYsTVhlPWwoKCk9Pnt0Rj1bWyJwYXRoIix7ZDoibTExIDE5LTEuMTA2LS41NTJhMiAyIDAgMCAwLTEuNzg4IDBsLTMuNjU5IDEuODNBMSAxIDAgMCAxIDMgMTkuMzgxVjYuNjE4YTEgMSAwIDAgMSAuNTUzLS44OTRsNC41NTMtMi4yNzdhMiAyIDAgMCAxIDEuNzg4IDBsNC4yMTIgMi4xMDZhMiAyIDAgMCAwIDEuNzg4IDBsMy42NTktMS44M0ExIDEgMCAwIDEgMjEgNC42MTlWMTQifV0sWyJwYXRoIix7ZDoiTTE1IDUuNzY0VjE0In1dLFsicGF0aCIse2Q6Ik0yMSAxOGgtNiJ9XSxbInBhdGgiLHtkOiJNOSAzLjIzNnYxNSJ9XV19KTt2YXIgckYsa1hlPWwoKCk9PntyRj1bWyJwYXRoIix7ZDoiTTIwIDEwYzAgNC45OTMtNS41MzkgMTAuMTkzLTcuMzk5IDExLjc5OWExIDEgMCAwIDEtMS4yMDIgMEM5LjUzOSAyMC4xOTMgNCAxNC45OTMgNCAxMGE4IDggMCAwIDEgMTYgMCJ9XSxbInBhdGgiLHtkOiJtOSAxMCAyIDIgNC00In1dXX0pO3ZhciBhRixTWGU9bCgoKT0+e2FGPVtbInBhdGgiLHtkOiJNMTUgMjJhMSAxIDAgMCAxLTEtMXYtNGExIDEgMCAwIDEgLjQ0NS0uODMybDMtMmExIDEgMCAwIDEgMS4xMSAwbDMgMkExIDEgMCAwIDEgMjIgMTd2NGExIDEgMCAwIDEtMSAxeiJ9XSxbInBhdGgiLHtkOiJNMTggMTBhOCA4IDAgMCAwLTE2IDBjMCA0Ljk5MyA1LjUzOSAxMC4xOTMgNy4zOTkgMTEuNzk5YTEgMSAwIDAgMCAuNjAxLjIifV0sWyJwYXRoIix7ZDoiTTE4IDIydi0zIn1dLFsiY2lyY2xlIix7Y3g6IjEwIixjeToiMTAiLHI6IjMifV1dfSk7dmFyIGlGLHpYZT1sKCgpPT57aUY9W1sicGF0aCIse2Q6Ik0xOS40MyAxMi45MzVjLjM1Ny0uOTY3LjU3LTEuOTU1LjU3LTIuOTM1YTggOCAwIDAgMC0xNiAwYzAgNC45OTMgNS41MzkgMTAuMTkzIDcuMzk5IDExLjc5OWExIDEgMCAwIDAgMS4yMDIgMCAzMi4xOTcgMzIuMTk3IDAgMCAwIC44MTMtLjcyOCJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEwIixyOiIzIn1dLFsicGF0aCIse2Q6Im0xNiAxOCAyIDIgNC00In1dXX0pO3ZhciBvRixDWGU9bCgoKT0+e29GPVtbInBhdGgiLHtkOiJNMjAgMTBjMCA0Ljk5My01LjUzOSAxMC4xOTMtNy4zOTkgMTEuNzk5YTEgMSAwIDAgMS0xLjIwMiAwQzkuNTM5IDIwLjE5MyA0IDE0Ljk5MyA0IDEwYTggOCAwIDAgMSAxNiAwIn1dLFsicGF0aCIse2Q6Ik05IDEwaDYifV1dfSk7dmFyIG5GLF9YZT1sKCgpPT57bkY9W1sicGF0aCIse2Q6Ik0xOC45NzcgMTRDMTkuNiAxMi43MDEgMjAgMTEuMzQzIDIwIDEwYTggOCAwIDAgMC0xNiAwYzAgNC45OTMgNS41MzkgMTAuMTkzIDcuMzk5IDExLjc5OWExIDEgMCAwIDAgMS4yMDIgMCAzMiAzMiAwIDAgMCAuODI0LS43MzgifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMCIscjoiMyJ9XSxbInBhdGgiLHtkOiJNMTYgMThoNiJ9XV19KTt2YXIgc0YsVFhlPWwoKCk9PntzRj1bWyJwYXRoIix7ZDoiTTEyLjc1IDcuMDlhMyAzIDAgMCAxIDIuMTYgMi4xNiJ9XSxbInBhdGgiLHtkOiJNMTcuMDcyIDE3LjA3MmMtMS42MzQgMi4xNy0zLjUyNyAzLjkxMi00LjQ3MSA0LjcyN2ExIDEgMCAwIDEtMS4yMDIgMEM5LjUzOSAyMC4xOTMgNCAxNC45OTMgNCAxMGE4IDggMCAwIDEgMS40MzItNC41NjgifV0sWyJwYXRoIix7ZDoibTIgMiAyMCAyMCJ9XSxbInBhdGgiLHtkOiJNOC40NzUgMi44MThBOCA4IDAgMCAxIDIwIDEwYzAgMS4xODMtLjMxIDIuMzc3LS44MSAzLjUzMyJ9XSxbInBhdGgiLHtkOiJNOS4xMyA5LjEzYTMgMyAwIDAgMCAzLjc0IDMuNzQifV1dfSk7dmFyIHk1LExYZT1sKCgpPT57eTU9W1sicGF0aCIse2Q6Ik0xNy45NyA5LjMwNEE4IDggMCAwIDAgMiAxMGMwIDQuNjkgNC44ODcgOS41NjIgNy4wMjIgMTEuNDY4In1dLFsicGF0aCIse2Q6Ik0yMS4zNzggMTYuNjI2YTEgMSAwIDAgMC0zLjAwNC0zLjAwNGwtNC4wMSA0LjAxMmEyIDIgMCAwIDAtLjUwNi44NTRsLS44MzcgMi44N2EuNS41IDAgMCAwIC42Mi42MmwyLjg3LS44MzdhMiAyIDAgMCAwIC44NTQtLjUwNnoifV0sWyJjaXJjbGUiLHtjeDoiMTAiLGN5OiIxMCIscjoiMyJ9XV19KTt2YXIgbEYsRFhlPWwoKCk9PntsRj1bWyJwYXRoIix7ZDoiTTE5LjkxNCAxMS4xMDVBNy4yOTggNy4yOTggMCAwIDAgMjAgMTBhOCA4IDAgMCAwLTE2IDBjMCA0Ljk5MyA1LjUzOSAxMC4xOTMgNy4zOTkgMTEuNzk5YTEgMSAwIDAgMCAxLjIwMiAwIDMyIDMyIDAgMCAwIC44MjQtLjczOCJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEwIixyOiIzIn1dLFsicGF0aCIse2Q6Ik0xNiAxOGg2In1dLFsicGF0aCIse2Q6Ik0xOSAxNXY2In1dXX0pO3ZhciBjRixBWGU9bCgoKT0+e2NGPVtbInBhdGgiLHtkOiJNMjAgMTBjMCA0Ljk5My01LjUzOSAxMC4xOTMtNy4zOTkgMTEuNzk5YTEgMSAwIDAgMS0xLjIwMiAwQzkuNTM5IDIwLjE5MyA0IDE0Ljk5MyA0IDEwYTggOCAwIDAgMSAxNiAwIn1dLFsicGF0aCIse2Q6Ik0xMiA3djYifV0sWyJwYXRoIix7ZDoiTTkgMTBoNiJ9XV19KTt2YXIgZEYsRVhlPWwoKCk9PntkRj1bWyJwYXRoIix7ZDoiTTIwIDEwYzAgNC45OTMtNS41MzkgMTAuMTkzLTcuMzk5IDExLjc5OWExIDEgMCAwIDEtMS4yMDIgMEM5LjUzOSAyMC4xOTMgNCAxNC45OTMgNCAxMGE4IDggMCAwIDEgMTYgMCJ9XSxbInBhdGgiLHtkOiJtMTQuNSA3LjUtNSA1In1dLFsicGF0aCIse2Q6Im05LjUgNy41IDUgNSJ9XV19KTt2YXIgdUYsJFhlPWwoKCk9Pnt1Rj1bWyJwYXRoIix7ZDoiTTE5Ljc1MiAxMS45MDFBNy43OCA3Ljc4IDAgMCAwIDIwIDEwYTggOCAwIDAgMC0xNiAwYzAgNC45OTMgNS41MzkgMTAuMTkzIDcuMzk5IDExLjc5OWExIDEgMCAwIDAgMS4yMDIgMCAxOSAxOSAwIDAgMCAuMDktLjA3NyJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEwIixyOiIzIn1dLFsicGF0aCIse2Q6Im0yMS41IDE1LjUtNSA1In1dLFsicGF0aCIse2Q6Im0yMS41IDIwLjUtNS01In1dXX0pO3ZhciBmRixQWGU9bCgoKT0+e2ZGPVtbInBhdGgiLHtkOiJNMjAgMTBjMCA0Ljk5My01LjUzOSAxMC4xOTMtNy4zOTkgMTEuNzk5YTEgMSAwIDAgMS0xLjIwMiAwQzkuNTM5IDIwLjE5MyA0IDE0Ljk5MyA0IDEwYTggOCAwIDAgMSAxNiAwIn1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiMTAiLHI6IjMifV1dfSk7dmFyIHBGLElYZT1sKCgpPT57cEY9W1sicGF0aCIse2Q6Ik0xOCA4YzAgMy42MTMtMy44NjkgNy40MjktNS4zOTMgOC43OTVhMSAxIDAgMCAxLTEuMjE0IDBDOS44NyAxNS40MjkgNiAxMS42MTMgNiA4YTYgNiAwIDAgMSAxMiAwIn1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiOCIscjoiMiJ9XSxbInBhdGgiLHtkOiJNOC43MTQgMTRoLTMuNzFhMSAxIDAgMCAwLS45NDguNjgzbC0yLjAwNCA2QTEgMSAwIDAgMCAzIDIyaDE4YTEgMSAwIDAgMCAuOTQ4LTEuMzE2bC0yLTZhMSAxIDAgMCAwLS45NDktLjY4NGgtMy43MTIifV1dfSk7dmFyIGhGLE5YZT1sKCgpPT57aEY9W1sicGF0aCIse2Q6Im0xMSAxOS0xLjEwNi0uNTUyYTIgMiAwIDAgMC0xLjc4OCAwbC0zLjY1OSAxLjgzQTEgMSAwIDAgMSAzIDE5LjM4MVY2LjYxOGExIDEgMCAwIDEgLjU1My0uODk0bDQuNTUzLTIuMjc3YTIgMiAwIDAgMSAxLjc4OCAwbDQuMjEyIDIuMTA2YTIgMiAwIDAgMCAxLjc4OCAwbDMuNjU5LTEuODNBMSAxIDAgMCAxIDIxIDQuNjE5VjEyIn1dLFsicGF0aCIse2Q6Ik0xNSA1Ljc2NFYxMiJ9XSxbInBhdGgiLHtkOiJNMTggMTV2NiJ9XSxbInBhdGgiLHtkOiJNMjEgMThoLTYifV0sWyJwYXRoIix7ZDoiTTkgMy4yMzZ2MTUifV1dfSk7dmFyIG1GLEZYZT1sKCgpPT57bUY9W1sicGF0aCIse2Q6Im0xNCA2IDQgNCJ9XSxbInBhdGgiLHtkOiJNMTcgM2g0djQifV0sWyJwYXRoIix7ZDoibTIxIDMtNy43NSA3Ljc1In1dLFsiY2lyY2xlIix7Y3g6IjkiLGN5OiIxNSIscjoiNiJ9XV19KTt2YXIgZ0YsT1hlPWwoKCk9PntnRj1bWyJwYXRoIix7ZDoiTTE0LjEwNiA1LjU1M2EyIDIgMCAwIDAgMS43ODggMGwzLjY1OS0xLjgzQTEgMSAwIDAgMSAyMSA0LjYxOXYxMi43NjRhMSAxIDAgMCAxLS41NTMuODk0bC00LjU1MyAyLjI3N2EyIDIgMCAwIDEtMS43ODggMGwtNC4yMTItMi4xMDZhMiAyIDAgMCAwLTEuNzg4IDBsLTMuNjU5IDEuODNBMSAxIDAgMCAxIDMgMTkuMzgxVjYuNjE4YTEgMSAwIDAgMSAuNTUzLS44OTRsNC41NTMtMi4yNzdhMiAyIDAgMCAxIDEuNzg4IDB6In1dLFsicGF0aCIse2Q6Ik0xNSA1Ljc2NHYxNSJ9XSxbInBhdGgiLHtkOiJNOSAzLjIzNnYxNSJ9XV19KTt2YXIgeEYsUlhlPWwoKCk9Pnt4Rj1bWyJwYXRoIix7ZDoiTTE2IDNoNXY1In1dLFsicGF0aCIse2Q6Im0yMSAzLTYuNzUgNi43NSJ9XSxbImNpcmNsZSIse2N4OiIxMCIsY3k6IjE0IixyOiI2In1dXX0pO3ZhciBiRixCWGU9bCgoKT0+e2JGPVtbInBhdGgiLHtkOiJNOCAyMmg4In1dLFsicGF0aCIse2Q6Ik0xMiAxMXYxMSJ9XSxbInBhdGgiLHtkOiJtMTkgMy03IDgtNy04WiJ9XV19KTt2YXIgdkYsSFhlPWwoKCk9Pnt2Rj1bWyJwYXRoIix7ZDoiTTE1IDNoNnY2In1dLFsicGF0aCIse2Q6Im0yMSAzLTcgNyJ9XSxbInBhdGgiLHtkOiJtMyAyMSA3LTcifV0sWyJwYXRoIix7ZDoiTTkgMjFIM3YtNiJ9XV19KTt2YXIgeUYscVhlPWwoKCk9Pnt5Rj1bWyJwYXRoIix7ZDoiTTggM0g1YTIgMiAwIDAgMC0yIDJ2MyJ9XSxbInBhdGgiLHtkOiJNMjEgOFY1YTIgMiAwIDAgMC0yLTJoLTMifV0sWyJwYXRoIix7ZDoiTTMgMTZ2M2EyIDIgMCAwIDAgMiAyaDMifV0sWyJwYXRoIix7ZDoiTTE2IDIxaDNhMiAyIDAgMCAwIDItMnYtMyJ9XV19KTt2YXIgd0YsalhlPWwoKCk9Pnt3Rj1bWyJwYXRoIix7ZDoiTTExLjYzNiA2QTEzIDEzIDAgMCAwIDE5LjQgMy4yIDEgMSAwIDAgMSAyMSA0djExLjM0NCJ9XSxbInBhdGgiLHtkOiJNMTQuMzc4IDE0LjM1N0ExMyAxMyAwIDAgMCAxMSAxNEg1YTIgMiAwIDAgMS0yLTJWOGEyIDIgMCAwIDEgMi0yaDEifV0sWyJwYXRoIix7ZDoibTIgMiAyMCAyMCJ9XSxbInBhdGgiLHtkOiJNNiAxNGExMiAxMiAwIDAgMCAyLjQgNy4yIDIgMiAwIDAgMCAzLjItMi40QTggOCAwIDAgMSAxMCAxNCJ9XSxbInBhdGgiLHtkOiJNOCA4djYifV1dfSk7dmFyIE1GLFZYZT1sKCgpPT57TUY9W1sicGF0aCIse2Q6Ik03LjIxIDE1IDIuNjYgNy4xNGEyIDIgMCAwIDEgLjEzLTIuMkw0LjQgMi44QTIgMiAwIDAgMSA2IDJoMTJhMiAyIDAgMCAxIDEuNi44bDEuNiAyLjE0YTIgMiAwIDAgMSAuMTQgMi4yTDE2Ljc5IDE1In1dLFsicGF0aCIse2Q6Ik0xMSAxMiA1LjEyIDIuMiJ9XSxbInBhdGgiLHtkOiJtMTMgMTIgNS44OC05LjgifV0sWyJwYXRoIix7ZDoiTTggN2g4In1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiMTciLHI6IjUifV0sWyJwYXRoIix7ZDoiTTEyIDE4di0yaC0uNSJ9XV19KTt2YXIga0YsVVhlPWwoKCk9PntrRj1bWyJwYXRoIix7ZDoiTTExIDZhMTMgMTMgMCAwIDAgOC40LTIuOEExIDEgMCAwIDEgMjEgNHYxMmExIDEgMCAwIDEtMS42LjhBMTMgMTMgMCAwIDAgMTEgMTRINWEyIDIgMCAwIDEtMi0yVjhhMiAyIDAgMCAxIDItMnoifV0sWyJwYXRoIix7ZDoiTTYgMTRhMTIgMTIgMCAwIDAgMi40IDcuMiAyIDIgMCAwIDAgMy4yLTIuNEE4IDggMCAwIDEgMTAgMTQifV0sWyJwYXRoIix7ZDoiTTggNnY4In1dXX0pO3ZhciBTRixXWGU9bCgoKT0+e1NGPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XSxbImxpbmUiLHt4MToiOCIseDI6IjE2Iix5MToiMTUiLHkyOiIxNSJ9XSxbImxpbmUiLHt4MToiOSIseDI6IjkuMDEiLHkxOiI5Iix5MjoiOSJ9XSxbImxpbmUiLHt4MToiMTUiLHgyOiIxNS4wMSIseTE6IjkiLHkyOiI5In1dXX0pO3ZhciB6RixHWGU9bCgoKT0+e3pGPVtbInBhdGgiLHtkOiJNNCA1aDE2In1dLFsicGF0aCIse2Q6Ik00IDEyaDE2In1dLFsicGF0aCIse2Q6Ik00IDE5aDE2In1dXX0pO3ZhciBDRixZWGU9bCgoKT0+e0NGPVtbInBhdGgiLHtkOiJNMTIgMTJ2LTIifV0sWyJwYXRoIix7ZDoiTTEyIDE4di0yIn1dLFsicGF0aCIse2Q6Ik0xNiAxMnYtMiJ9XSxbInBhdGgiLHtkOiJNMTYgMTh2LTIifV0sWyJwYXRoIix7ZDoiTTIgMTFoMS41In1dLFsicGF0aCIse2Q6Ik0yMCAxOHYtMiJ9XSxbInBhdGgiLHtkOiJNMjAuNSAxMUgyMiJ9XSxbInBhdGgiLHtkOiJNNCAxOHYtMiJ9XSxbInBhdGgiLHtkOiJNOCAxMnYtMiJ9XSxbInBhdGgiLHtkOiJNOCAxOHYtMiJ9XSxbInJlY3QiLHt4OiIyIix5OiI2Iix3aWR0aDoiMjAiLGhlaWdodDoiMTAiLHJ4OiIyIn1dXX0pO3ZhciBfRixaWGU9bCgoKT0+e19GPVtbInBhdGgiLHtkOiJtOCA2IDQtNCA0IDQifV0sWyJwYXRoIix7ZDoiTTEyIDJ2MTAuM2E0IDQgMCAwIDEtMS4xNzIgMi44NzJMNCAyMiJ9XSxbInBhdGgiLHtkOiJtMjAgMjItNS01In1dXX0pO3ZhciBURixYWGU9bCgoKT0+e1RGPVtbInBhdGgiLHtkOiJNMi45OTIgMTYuMzQyYTIgMiAwIDAgMSAuMDk0IDEuMTY3bC0xLjA2NSAzLjI5YTEgMSAwIDAgMCAxLjIzNiAxLjE2OGwzLjQxMy0uOTk4YTIgMiAwIDAgMSAxLjA5OS4wOTIgMTAgMTAgMCAxIDAtNC43NzctNC43MTkifV0sWyJwYXRoIix7ZDoibTkgMTIgMiAyIDQtNCJ9XV19KTt2YXIgTEYsUVhlPWwoKCk9PntMRj1bWyJwYXRoIix7ZDoibTEwIDktMyAzIDMgMyJ9XSxbInBhdGgiLHtkOiJtMTQgMTUgMy0zLTMtMyJ9XSxbInBhdGgiLHtkOiJNMi45OTIgMTYuMzQyYTIgMiAwIDAgMSAuMDk0IDEuMTY3bC0xLjA2NSAzLjI5YTEgMSAwIDAgMCAxLjIzNiAxLjE2OGwzLjQxMy0uOTk4YTIgMiAwIDAgMSAxLjA5OS4wOTIgMTAgMTAgMCAxIDAtNC43NzctNC43MTkifV1dfSk7dmFyIERGLEtYZT1sKCgpPT57REY9W1sicGF0aCIse2Q6Ik0xMC4xIDIuMTgyYTEwIDEwIDAgMCAxIDMuOCAwIn1dLFsicGF0aCIse2Q6Ik0xMy45IDIxLjgxOGExMCAxMCAwIDAgMS0zLjggMCJ9XSxbInBhdGgiLHtkOiJNMTcuNjA5IDMuNzJhMTAgMTAgMCAwIDEgMi42OSAyLjcifV0sWyJwYXRoIix7ZDoiTTIuMTgyIDEzLjlhMTAgMTAgMCAwIDEgMC0zLjgifV0sWyJwYXRoIix7ZDoiTTIwLjI4IDE3LjYxYTEwIDEwIDAgMCAxLTIuNyAyLjY5In1dLFsicGF0aCIse2Q6Ik0yMS44MTggMTAuMWExMCAxMCAwIDAgMSAwIDMuOCJ9XSxbInBhdGgiLHtkOiJNMy43MjEgNi4zOTFhMTAgMTAgMCAwIDEgMi43LTIuNjkifV0sWyJwYXRoIix7ZDoibTYuMTYzIDIxLjExNy0yLjkwNi44NWExIDEgMCAwIDEtMS4yMzYtMS4xNjlsLjk2NS0yLjk4In1dXX0pO3ZhciBBRixKWGU9bCgoKT0+e0FGPVtbInBhdGgiLHtkOiJNMi45OTIgMTYuMzQyYTIgMiAwIDAgMSAuMDk0IDEuMTY3bC0xLjA2NSAzLjI5YTEgMSAwIDAgMCAxLjIzNiAxLjE2OGwzLjQxMy0uOTk4YTIgMiAwIDAgMSAxLjA5OS4wOTIgMTAgMTAgMCAxIDAtNC43NzctNC43MTkifV0sWyJwYXRoIix7ZDoiTTcuODI4IDEzLjA3QTMgMyAwIDAgMSAxMiA4Ljc2NGEzIDMgMCAwIDEgNS4wMDQgMi4yMjQgMyAzIDAgMCAxLS44MzIgMi4wODNsLTMuNDQ3IDMuNjJhMSAxIDAgMCAxLTEuNDUtLjAwMXoifV1dfSk7dmFyIEVGLGVRZT1sKCgpPT57RUY9W1sicGF0aCIse2Q6Ik0yLjk5MiAxNi4zNDJhMiAyIDAgMCAxIC4wOTQgMS4xNjdsLTEuMDY1IDMuMjlhMSAxIDAgMCAwIDEuMjM2IDEuMTY4bDMuNDEzLS45OThhMiAyIDAgMCAxIDEuMDk5LjA5MiAxMCAxMCAwIDEgMC00Ljc3Ny00LjcxOSJ9XSxbInBhdGgiLHtkOiJNOCAxMmguMDEifV0sWyJwYXRoIix7ZDoiTTEyIDEyaC4wMSJ9XSxbInBhdGgiLHtkOiJNMTYgMTJoLjAxIn1dXX0pO3ZhciAkRix0UWU9bCgoKT0+eyRGPVtbInBhdGgiLHtkOiJtMiAyIDIwIDIwIn1dLFsicGF0aCIse2Q6Ik00LjkzIDQuOTI5YTEwIDEwIDAgMCAwLTEuOTM4IDExLjQxMiAyIDIgMCAwIDEgLjA5NCAxLjE2N2wtMS4wNjUgMy4yOWExIDEgMCAwIDAgMS4yMzYgMS4xNjhsMy40MTMtLjk5OGEyIDIgMCAwIDEgMS4wOTkuMDkyIDEwIDEwIDAgMCAwIDExLjMwMi0xLjk4OSJ9XSxbInBhdGgiLHtkOiJNOC4zNSAyLjY5QTEwIDEwIDAgMCAxIDIxLjMgMTUuNjUifV1dfSk7dmFyIFBGLHJRZT1sKCgpPT57UEY9W1sicGF0aCIse2Q6Ik0yLjk5MiAxNi4zNDJhMiAyIDAgMCAxIC4wOTQgMS4xNjdsLTEuMDY1IDMuMjlhMSAxIDAgMCAwIDEuMjM2IDEuMTY4bDMuNDEzLS45OThhMiAyIDAgMCAxIDEuMDk5LjA5MiAxMCAxMCAwIDEgMC00Ljc3Ny00LjcxOSJ9XSxbInBhdGgiLHtkOiJNOCAxMmg4In1dLFsicGF0aCIse2Q6Ik0xMiA4djgifV1dfSk7dmFyIHc1LGFRZT1sKCgpPT57dzU9W1sicGF0aCIse2Q6Ik0yLjk5MiAxNi4zNDJhMiAyIDAgMCAxIC4wOTQgMS4xNjdsLTEuMDY1IDMuMjlhMSAxIDAgMCAwIDEuMjM2IDEuMTY4bDMuNDEzLS45OThhMiAyIDAgMCAxIDEuMDk5LjA5MiAxMCAxMCAwIDEgMC00Ljc3Ny00LjcxOSJ9XSxbInBhdGgiLHtkOiJNOS4wOSA5YTMgMyAwIDAgMSA1LjgzIDFjMCAyLTMgMy0zIDMifV0sWyJwYXRoIix7ZDoiTTEyIDE3aC4wMSJ9XV19KTt2YXIgSUYsaVFlPWwoKCk9PntJRj1bWyJwYXRoIix7ZDoiTTIuOTkyIDE2LjM0MmEyIDIgMCAwIDEgLjA5NCAxLjE2N2wtMS4wNjUgMy4yOWExIDEgMCAwIDAgMS4yMzYgMS4xNjhsMy40MTMtLjk5OGEyIDIgMCAwIDEgMS4wOTkuMDkyIDEwIDEwIDAgMSAwLTQuNzc3LTQuNzE5In1dLFsicGF0aCIse2Q6Im0xMCAxNS0zLTMgMy0zIn1dLFsicGF0aCIse2Q6Ik03IDEyaDhhMiAyIDAgMCAxIDIgMnYxIn1dXX0pO3ZhciBORixvUWU9bCgoKT0+e05GPVtbInBhdGgiLHtkOiJNMi45OTIgMTYuMzQyYTIgMiAwIDAgMSAuMDk0IDEuMTY3bC0xLjA2NSAzLjI5YTEgMSAwIDAgMCAxLjIzNiAxLjE2OGwzLjQxMy0uOTk4YTIgMiAwIDAgMSAxLjA5OS4wOTIgMTAgMTAgMCAxIDAtNC43NzctNC43MTkifV0sWyJwYXRoIix7ZDoiTTEyIDh2NCJ9XSxbInBhdGgiLHtkOiJNMTIgMTZoLjAxIn1dXX0pO3ZhciBGRixuUWU9bCgoKT0+e0ZGPVtbInBhdGgiLHtkOiJNMi45OTIgMTYuMzQyYTIgMiAwIDAgMSAuMDk0IDEuMTY3bC0xLjA2NSAzLjI5YTEgMSAwIDAgMCAxLjIzNiAxLjE2OGwzLjQxMy0uOTk4YTIgMiAwIDAgMSAxLjA5OS4wOTIgMTAgMTAgMCAxIDAtNC43NzctNC43MTkifV0sWyJwYXRoIix7ZDoibTE1IDktNiA2In1dLFsicGF0aCIse2Q6Im05IDkgNiA2In1dXX0pO3ZhciBPRixzUWU9bCgoKT0+e09GPVtbInBhdGgiLHtkOiJNMi45OTIgMTYuMzQyYTIgMiAwIDAgMSAuMDk0IDEuMTY3bC0xLjA2NSAzLjI5YTEgMSAwIDAgMCAxLjIzNiAxLjE2OGwzLjQxMy0uOTk4YTIgMiAwIDAgMSAxLjA5OS4wOTIgMTAgMTAgMCAxIDAtNC43NzctNC43MTkifV1dfSk7dmFyIFJGLGxRZT1sKCgpPT57UkY9W1sicGF0aCIse2Q6Ik0yMiAxN2EyIDIgMCAwIDEtMiAySDYuODI4YTIgMiAwIDAgMC0xLjQxNC41ODZsLTIuMjAyIDIuMjAyQS43LjcgMCAwIDEgMiAyMS4yODZWNWEyIDIgMCAwIDEgMi0yaDE2YTIgMiAwIDAgMSAyIDJ6In1dLFsicGF0aCIse2Q6Im05IDExIDIgMiA0LTQifV1dfSk7dmFyIEJGLGNRZT1sKCgpPT57QkY9W1sicGF0aCIse2Q6Ik0yMiAxN2EyIDIgMCAwIDEtMiAySDYuODI4YTIgMiAwIDAgMC0xLjQxNC41ODZsLTIuMjAyIDIuMjAyQS43MS43MSAwIDAgMSAyIDIxLjI4NlY1YTIgMiAwIDAgMSAyLTJoMTZhMiAyIDAgMCAxIDIgMnoifV0sWyJwYXRoIix7ZDoibTEwIDgtMyAzIDMgMyJ9XSxbInBhdGgiLHtkOiJtMTQgMTQgMy0zLTMtMyJ9XV19KTt2YXIgSEYsZFFlPWwoKCk9PntIRj1bWyJwYXRoIix7ZDoiTTE0IDNoMiJ9XSxbInBhdGgiLHtkOiJNMTYgMTloLTIifV0sWyJwYXRoIix7ZDoiTTIgMTJ2LTIifV0sWyJwYXRoIix7ZDoiTTIgMTZ2NS4yODZhLjcxLjcxIDAgMCAwIDEuMjEyLjUwMmwxLjE0OS0xLjE0OSJ9XSxbInBhdGgiLHtkOiJNMjAgMTlhMiAyIDAgMCAwIDItMnYtMSJ9XSxbInBhdGgiLHtkOiJNMjIgMTB2MiJ9XSxbInBhdGgiLHtkOiJNMjIgNlY1YTIgMiAwIDAgMC0yLTIifV0sWyJwYXRoIix7ZDoiTTQgM2EyIDIgMCAwIDAtMiAydjEifV0sWyJwYXRoIix7ZDoiTTggMTloMiJ9XSxbInBhdGgiLHtkOiJNOCAzaDIifV1dfSk7dmFyIHFGLHVRZT1sKCgpPT57cUY9W1sicGF0aCIse2Q6Ik0yMiAxN2EyIDIgMCAwIDEtMiAySDYuODI4YTIgMiAwIDAgMC0xLjQxNC41ODZsLTIuMjAyIDIuMjAyQS43MS43MSAwIDAgMSAyIDIxLjI4NlY1YTIgMiAwIDAgMSAyLTJoMTZhMiAyIDAgMCAxIDIgMnoifV0sWyJwYXRoIix7ZDoiTTEwIDE1aDQifV0sWyJwYXRoIix7ZDoiTTEwIDloNCJ9XSxbInBhdGgiLHtkOiJNMTIgN3Y0In1dXX0pO3ZhciBqRixmUWU9bCgoKT0+e2pGPVtbInBhdGgiLHtkOiJNMTIuNyAzSDRhMiAyIDAgMCAwLTIgMnYxNi4yODZhLjcxLjcxIDAgMCAwIDEuMjEyLjUwMmwyLjIwMi0yLjIwMkEyIDIgMCAwIDEgNi44MjggMTlIMjBhMiAyIDAgMCAwIDItMnYtNC43In1dLFsiY2lyY2xlIix7Y3g6IjE5IixjeToiNiIscjoiMyJ9XV19KTt2YXIgVkYscFFlPWwoKCk9PntWRj1bWyJwYXRoIix7ZDoiTTIyIDE3YTIgMiAwIDAgMS0yIDJINi44MjhhMiAyIDAgMCAwLTEuNDE0LjU4NmwtMi4yMDIgMi4yMDJBLjcxLjcxIDAgMCAxIDIgMjEuMjg2VjVhMiAyIDAgMCAxIDItMmgxNmEyIDIgMCAwIDEgMiAyeiJ9XSxbInBhdGgiLHtkOiJNNy41IDkuNWMwIC42ODcuMjY1IDEuMzgzLjY5NyAxLjg0NGwzLjAwOSAzLjI2NGExLjE0IDEuMTQgMCAwIDAgLjQwNy4zMTQgMSAxIDAgMCAwIC43ODMtLjAwNCAxLjE0IDEuMTQgMCAwIDAgLjM5OC0uMzFsMy4wMDgtMy4yNjRBMi43NyAyLjc3IDAgMCAwIDE2LjUgOS41IDIuNSAyLjUgMCAwIDAgMTIgOGEyLjUgMi41IDAgMCAwLTQuNSAxLjUifV1dfSk7dmFyIFVGLGhRZT1sKCgpPT57VUY9W1sicGF0aCIse2Q6Ik0yMiA4LjVWNWEyIDIgMCAwIDAtMi0ySDRhMiAyIDAgMCAwLTIgMnYxNi4yODZhLjcxLjcxIDAgMCAwIDEuMjEyLjUwMmwyLjIwMi0yLjIwMkEyIDIgMCAwIDEgNi44MjggMTlIMTAifV0sWyJwYXRoIix7ZDoiTTIwIDE1di0yYTIgMiAwIDAgMC00IDB2MiJ9XSxbInJlY3QiLHt4OiIxNCIseToiMTUiLHdpZHRoOiI4IixoZWlnaHQ6IjUiLHJ4OiIxIn1dXX0pO3ZhciBXRixtUWU9bCgoKT0+e1dGPVtbInBhdGgiLHtkOiJNMjIgMTdhMiAyIDAgMCAxLTIgMkg2LjgyOGEyIDIgMCAwIDAtMS40MTQuNTg2bC0yLjIwMiAyLjIwMkEuNzEuNzEgMCAwIDEgMiAyMS4yODZWNWEyIDIgMCAwIDEgMi0yaDE2YTIgMiAwIDAgMSAyIDJ6In1dLFsicGF0aCIse2Q6Ik0xMiAxMWguMDEifV0sWyJwYXRoIix7ZDoiTTE2IDExaC4wMSJ9XSxbInBhdGgiLHtkOiJNOCAxMWguMDEifV1dfSk7dmFyIEdGLGdRZT1sKCgpPT57R0Y9W1sicGF0aCIse2Q6Ik0xOSAxOUg2LjgyOGEyIDIgMCAwIDAtMS40MTQuNTg2bC0yLjIwMiAyLjIwMkEuNy43IDAgMCAxIDIgMjEuMjg2VjVhMiAyIDAgMCAxIDEuMTg0LTEuODI2In1dLFsicGF0aCIse2Q6Im0yIDIgMjAgMjAifV0sWyJwYXRoIix7ZDoiTTguNjU2IDNIMjBhMiAyIDAgMCAxIDIgMnYxMS4zNDQifV1dfSk7dmFyIFlGLHhRZT1sKCgpPT57WUY9W1sicGF0aCIse2Q6Ik0yMiAxN2EyIDIgMCAwIDEtMiAySDYuODI4YTIgMiAwIDAgMC0xLjQxNC41ODZsLTIuMjAyIDIuMjAyQS43MS43MSAwIDAgMSAyIDIxLjI4NlY1YTIgMiAwIDAgMSAyLTJoMTZhMiAyIDAgMCAxIDIgMnoifV0sWyJwYXRoIix7ZDoiTTEyIDh2NiJ9XSxbInBhdGgiLHtkOiJNOSAxMWg2In1dXX0pO3ZhciBaRixiUWU9bCgoKT0+e1pGPVtbInBhdGgiLHtkOiJNMTQgMTRhMiAyIDAgMCAwIDItMlY4aC0yIn1dLFsicGF0aCIse2Q6Ik0yMiAxN2EyIDIgMCAwIDEtMiAySDYuODI4YTIgMiAwIDAgMC0xLjQxNC41ODZsLTIuMjAyIDIuMjAyQS43MS43MSAwIDAgMSAyIDIxLjI4NlY1YTIgMiAwIDAgMSAyLTJoMTZhMiAyIDAgMCAxIDIgMnoifV0sWyJwYXRoIix7ZDoiTTggMTRhMiAyIDAgMCAwIDItMlY4SDgifV1dfSk7dmFyIFhGLHZRZT1sKCgpPT57WEY9W1sicGF0aCIse2Q6Ik0yMiAxN2EyIDIgMCAwIDEtMiAySDYuODI4YTIgMiAwIDAgMC0xLjQxNC41ODZsLTIuMjAyIDIuMjAyQS43MS43MSAwIDAgMSAyIDIxLjI4NlY1YTIgMiAwIDAgMSAyLTJoMTZhMiAyIDAgMCAxIDIgMnoifV0sWyJwYXRoIix7ZDoibTEwIDgtMyAzIDMgMyJ9XSxbInBhdGgiLHtkOiJNMTcgMTR2LTFhMiAyIDAgMCAwLTItMkg3In1dXX0pO3ZhciBRRix5UWU9bCgoKT0+e1FGPVtbInBhdGgiLHtkOiJNMTIgM0g0YTIgMiAwIDAgMC0yIDJ2MTYuMjg2YS43MS43MSAwIDAgMCAxLjIxMi41MDJsMi4yMDItMi4yMDJBMiAyIDAgMCAxIDYuODI4IDE5SDIwYTIgMiAwIDAgMCAyLTJ2LTQifV0sWyJwYXRoIix7ZDoiTTE2IDNoNnY2In1dLFsicGF0aCIse2Q6Im0xNiA5IDYtNiJ9XV19KTt2YXIgS0Ysd1FlPWwoKCk9PntLRj1bWyJwYXRoIix7ZDoiTTIyIDE3YTIgMiAwIDAgMS0yIDJINi44MjhhMiAyIDAgMCAwLTEuNDE0LjU4NmwtMi4yMDIgMi4yMDJBLjcxLjcxIDAgMCAxIDIgMjEuMjg2VjVhMiAyIDAgMCAxIDItMmgxNmEyIDIgMCAwIDEgMiAyeiJ9XSxbInBhdGgiLHtkOiJNNyAxMWgxMCJ9XSxbInBhdGgiLHtkOiJNNyAxNWg2In1dLFsicGF0aCIse2Q6Ik03IDdoOCJ9XV19KTt2YXIgSkYsTVFlPWwoKCk9PntKRj1bWyJwYXRoIix7ZDoiTTIyIDE3YTIgMiAwIDAgMS0yIDJINi44MjhhMiAyIDAgMCAwLTEuNDE0LjU4NmwtMi4yMDIgMi4yMDJBLjcxLjcxIDAgMCAxIDIgMjEuMjg2VjVhMiAyIDAgMCAxIDItMmgxNmEyIDIgMCAwIDEgMiAyeiJ9XSxbInBhdGgiLHtkOiJNMTIgMTVoLjAxIn1dLFsicGF0aCIse2Q6Ik0xMiA3djQifV1dfSk7dmFyIGVPLGtRZT1sKCgpPT57ZU89W1sicGF0aCIse2Q6Ik0yMiAxN2EyIDIgMCAwIDEtMiAySDYuODI4YTIgMiAwIDAgMC0xLjQxNC41ODZsLTIuMjAyIDIuMjAyQS43MS43MSAwIDAgMSAyIDIxLjI4NlY1YTIgMiAwIDAgMSAyLTJoMTZhMiAyIDAgMCAxIDIgMnoifV0sWyJwYXRoIix7ZDoibTE0LjUgOC41LTUgNSJ9XSxbInBhdGgiLHtkOiJtOS41IDguNSA1IDUifV1dfSk7dmFyIHRPLFNRZT1sKCgpPT57dE89W1sicGF0aCIse2Q6Ik0yMiAxN2EyIDIgMCAwIDEtMiAySDYuODI4YTIgMiAwIDAgMC0xLjQxNC41ODZsLTIuMjAyIDIuMjAyQS43MS43MSAwIDAgMSAyIDIxLjI4NlY1YTIgMiAwIDAgMSAyLTJoMTZhMiAyIDAgMCAxIDIgMnoifV1dfSk7dmFyIHJPLHpRZT1sKCgpPT57ck89W1sicGF0aCIse2Q6Ik0xNiAxMGEyIDIgMCAwIDEtMiAySDYuODI4YTIgMiAwIDAgMC0xLjQxNC41ODZsLTIuMjAyIDIuMjAyQS43MS43MSAwIDAgMSAyIDE0LjI4NlY0YTIgMiAwIDAgMSAyLTJoMTBhMiAyIDAgMCAxIDIgMnoifV0sWyJwYXRoIix7ZDoiTTIwIDlhMiAyIDAgMCAxIDIgMnYxMC4yODZhLjcxLjcxIDAgMCAxLTEuMjEyLjUwMmwtMi4yMDItMi4yMDJBMiAyIDAgMCAwIDE3LjE3MiAxOUgxMGEyIDIgMCAwIDEtMi0ydi0xIn1dXX0pO3ZhciBhTyxDUWU9bCgoKT0+e2FPPVtbInBhdGgiLHtkOiJNMTIgMTEuNFY5LjEifV0sWyJwYXRoIix7ZDoibTEyIDE3IDYuNTktNi41OSJ9XSxbInBhdGgiLHtkOiJtMTUuMDUgNS43LS4yMTgtLjY5MWEzIDMgMCAwIDAtNS42NjMgMEw0LjQxOCAxOS42OTVBMSAxIDAgMCAwIDUuMzcgMjFoMTMuMjUzYTEgMSAwIDAgMCAuOTUxLTEuMzFMMTguNDUgMTYuMiJ9XSxbImNpcmNsZSIse2N4OiIyMCIsY3k6IjkiLHI6IjIifV1dfSk7dmFyIGlPLF9RZT1sKCgpPT57aU89W1sicGF0aCIse2Q6Ik0xMiAxOXYzIn1dLFsicGF0aCIse2Q6Ik0xNSA5LjM0VjVhMyAzIDAgMCAwLTUuNjgtMS4zMyJ9XSxbInBhdGgiLHtkOiJNMTYuOTUgMTYuOTVBNyA3IDAgMCAxIDUgMTJ2LTIifV0sWyJwYXRoIix7ZDoiTTE4Ljg5IDEzLjIzQTcgNyAwIDAgMCAxOSAxMnYtMiJ9XSxbInBhdGgiLHtkOiJtMiAyIDIwIDIwIn1dLFsicGF0aCIse2Q6Ik05IDl2M2EzIDMgMCAwIDAgNS4xMiAyLjEyIn1dXX0pO3ZhciBNNSxUUWU9bCgoKT0+e001PVtbInBhdGgiLHtkOiJtMTEgNy42MDEtNS45OTQgOC4xOWExIDEgMCAwIDAgLjEgMS4yOThsLjgxNy44MThhMSAxIDAgMCAwIDEuMzE0LjA4N0wxNS4wOSAxMiJ9XSxbInBhdGgiLHtkOiJNMTYuNSAyMS4xNzRDMTUuNSAyMC41IDE0LjM3MiAyMCAxMyAyMGMtMi4wNTggMC0zLjkyOCAyLjM1Ni02IDItMi4wNzItLjM1Ni0yLjc3NS0zLjM2OS0xLjUtNC41In1dLFsiY2lyY2xlIix7Y3g6IjE2IixjeToiNyIscjoiNSJ9XV19KTt2YXIgb08sTFFlPWwoKCk9PntvTz1bWyJwYXRoIix7ZDoiTTEyIDE5djMifV0sWyJwYXRoIix7ZDoiTTE5IDEwdjJhNyA3IDAgMCAxLTE0IDB2LTIifV0sWyJyZWN0Iix7eDoiOSIseToiMiIsd2lkdGg6IjYiLGhlaWdodDoiMTMiLHJ4OiIzIn1dXX0pO3ZhciBuTyxEUWU9bCgoKT0+e25PPVtbInBhdGgiLHtkOiJNMTAgMTJoNCJ9XSxbInBhdGgiLHtkOiJNMTAgMTdoNCJ9XSxbInBhdGgiLHtkOiJNMTAgN2g0In1dLFsicGF0aCIse2Q6Ik0xOCAxMmgyIn1dLFsicGF0aCIse2Q6Ik0xOCAxOGgyIn1dLFsicGF0aCIse2Q6Ik0xOCA2aDIifV0sWyJwYXRoIix7ZDoiTTQgMTJoMiJ9XSxbInBhdGgiLHtkOiJNNCAxOGgyIn1dLFsicGF0aCIse2Q6Ik00IDZoMiJ9XSxbInJlY3QiLHt4OiI2Iix5OiIyIix3aWR0aDoiMTIiLGhlaWdodDoiMjAiLHJ4OiIyIn1dXX0pO3ZhciBzTyxBUWU9bCgoKT0+e3NPPVtbInJlY3QiLHt3aWR0aDoiMjAiLGhlaWdodDoiMTUiLHg6IjIiLHk6IjQiLHJ4OiIyIn1dLFsicmVjdCIse3dpZHRoOiI4IixoZWlnaHQ6IjciLHg6IjYiLHk6IjgiLHJ4OiIxIn1dLFsicGF0aCIse2Q6Ik0xOCA4djcifV0sWyJwYXRoIix7ZDoiTTYgMTl2MiJ9XSxbInBhdGgiLHtkOiJNMTggMTl2MiJ9XV19KTt2YXIgbE8sRVFlPWwoKCk9PntsTz1bWyJwYXRoIix7ZDoiTTEyIDEzdjgifV0sWyJwYXRoIix7ZDoiTTEyIDN2MyJ9XSxbInBhdGgiLHtkOiJNNCA2YTEgMSAwIDAgMC0xIDF2NWExIDEgMCAwIDAgMSAxaDEzYTIgMiAwIDAgMCAxLjE1Mi0uMzY1bDMuNDI0LTIuMzE3YTEgMSAwIDAgMCAwLTEuNjM1bC0zLjQyNC0yLjMxOEEyIDIgMCAwIDAgMTcgNnoifV1dfSk7dmFyIGNPLCRRZT1sKCgpPT57Y089W1sicGF0aCIse2Q6Ik02IDE4aDgifV0sWyJwYXRoIix7ZDoiTTMgMjJoMTgifV0sWyJwYXRoIix7ZDoiTTE0IDIyYTcgNyAwIDEgMCAwLTE0aC0xIn1dLFsicGF0aCIse2Q6Ik05IDE0aDIifV0sWyJwYXRoIix7ZDoiTTkgMTJhMiAyIDAgMCAxLTItMlY2aDZ2NGEyIDIgMCAwIDEtMiAyWiJ9XSxbInBhdGgiLHtkOiJNMTIgNlYzYTEgMSAwIDAgMC0xLTFIOWExIDEgMCAwIDAtMSAxdjMifV1dfSk7dmFyIGRPLFBRZT1sKCgpPT57ZE89W1sicGF0aCIse2Q6Ik04IDJoOCJ9XSxbInBhdGgiLHtkOiJNOSAydjEuMzQzTTE1IDJ2Mi43ODlhNCA0IDAgMCAwIC42NzIgMi4yMTlsLjY1Ni45ODRhNCA0IDAgMCAxIC42NzIgMi4yMnYxLjEzMU03LjggNy44bC0uMTI4LjE5MkE0IDQgMCAwIDAgNyAxMC4yMTJWMjBhMiAyIDAgMCAwIDIgMmg2YTIgMiAwIDAgMCAyLTJ2LTMifV0sWyJwYXRoIix7ZDoiTTcgMTVhNi40NyA2LjQ3IDAgMCAxIDUgMCA2LjQ3MiA2LjQ3MiAwIDAgMCAzLjQzNS40MzUifV0sWyJsaW5lIix7eDE6IjIiLHgyOiIyMiIseTE6IjIiLHkyOiIyMiJ9XV19KTt2YXIgdU8sSVFlPWwoKCk9Pnt1Tz1bWyJwYXRoIix7ZDoibTE0IDEwIDctNyJ9XSxbInBhdGgiLHtkOiJNMjAgMTBoLTZWNCJ9XSxbInBhdGgiLHtkOiJtMyAyMSA3LTcifV0sWyJwYXRoIix7ZDoiTTQgMTRoNnY2In1dXX0pO3ZhciBmTyxOUWU9bCgoKT0+e2ZPPVtbInBhdGgiLHtkOiJNOCAyaDgifV0sWyJwYXRoIix7ZDoiTTkgMnYyLjc4OWE0IDQgMCAwIDEtLjY3MiAyLjIxOWwtLjY1Ni45ODRBNCA0IDAgMCAwIDcgMTAuMjEyVjIwYTIgMiAwIDAgMCAyIDJoNmEyIDIgMCAwIDAgMi0ydi05Ljc4OWE0IDQgMCAwIDAtLjY3Mi0yLjIxOWwtLjY1Ni0uOTg0QTQgNCAwIDAgMSAxNSA0Ljc4OFYyIn1dLFsicGF0aCIse2Q6Ik03IDE1YTYuNDcyIDYuNDcyIDAgMCAxIDUgMCA2LjQ3IDYuNDcgMCAwIDAgNSAwIn1dXX0pO3ZhciBwTyxGUWU9bCgoKT0+e3BPPVtbInBhdGgiLHtkOiJNOCAzdjNhMiAyIDAgMCAxLTIgMkgzIn1dLFsicGF0aCIse2Q6Ik0yMSA4aC0zYTIgMiAwIDAgMS0yLTJWMyJ9XSxbInBhdGgiLHtkOiJNMyAxNmgzYTIgMiAwIDAgMSAyIDJ2MyJ9XSxbInBhdGgiLHtkOiJNMTYgMjF2LTNhMiAyIDAgMCAxIDItMmgzIn1dXX0pO3ZhciBoTyxPUWU9bCgoKT0+e2hPPVtbInBhdGgiLHtkOiJNNSAxMmgxNCJ9XV19KTt2YXIgbU8sUlFlPWwoKCk9PnttTz1bWyJwYXRoIix7ZDoiTTExIDYgOCA5In1dLFsicGF0aCIse2Q6Im0xNiA3LTggOCJ9XSxbInJlY3QiLHt4OiI0Iix5OiIyIix3aWR0aDoiMTYiLGhlaWdodDoiMjAiLHJ4OiIyIn1dXX0pO3ZhciBnTyxCUWU9bCgoKT0+e2dPPVtbInBhdGgiLHtkOiJNMTAgNi42IDguNiA4In1dLFsicGF0aCIse2Q6Ik0xMiAxOHY0In1dLFsicGF0aCIse2Q6Ik0xNSA3LjUgOS41IDEzIn1dLFsicGF0aCIse2Q6Ik03IDIyaDEwIn1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiMTAiLHI6IjgifV1dfSk7dmFyIHhPLEhRZT1sKCgpPT57eE89W1sicGF0aCIse2Q6Im05IDEwIDIgMiA0LTQifV0sWyJyZWN0Iix7d2lkdGg6IjIwIixoZWlnaHQ6IjE0Iix4OiIyIix5OiIzIixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNMTIgMTd2NCJ9XSxbInBhdGgiLHtkOiJNOCAyMWg4In1dXX0pO3ZhciBiTyxxUWU9bCgoKT0+e2JPPVtbInBhdGgiLHtkOiJNMTEgMTNhMyAzIDAgMSAxIDIuODMtNEgxNGEyIDIgMCAwIDEgMCA0eiJ9XSxbInBhdGgiLHtkOiJNMTIgMTd2NCJ9XSxbInBhdGgiLHtkOiJNOCAyMWg4In1dLFsicmVjdCIse3g6IjIiLHk6IjMiLHdpZHRoOiIyMCIsaGVpZ2h0OiIxNCIscng6IjIifV1dfSk7dmFyIHZPLGpRZT1sKCgpPT57dk89W1sicGF0aCIse2Q6Ik0xMiAxN3Y0In1dLFsicGF0aCIse2Q6Im0xNC4zMDUgNy41My45MjMtLjM4MiJ9XSxbInBhdGgiLHtkOiJtMTUuMjI4IDQuODUyLS45MjMtLjM4MyJ9XSxbInBhdGgiLHtkOiJtMTYuODUyIDMuMjI4LS4zODMtLjkyNCJ9XSxbInBhdGgiLHtkOiJtMTYuODUyIDguNzcyLS4zODMuOTIzIn1dLFsicGF0aCIse2Q6Im0xOS4xNDggMy4yMjguMzgzLS45MjQifV0sWyJwYXRoIix7ZDoibTE5LjUzIDkuNjk2LS4zODItLjkyNCJ9XSxbInBhdGgiLHtkOiJtMjAuNzcyIDQuODUyLjkyNC0uMzgzIn1dLFsicGF0aCIse2Q6Im0yMC43NzIgNy4xNDguOTI0LjM4MyJ9XSxbInBhdGgiLHtkOiJNMjIgMTN2MmEyIDIgMCAwIDEtMiAySDRhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJoNyJ9XSxbInBhdGgiLHtkOiJNOCAyMWg4In1dLFsiY2lyY2xlIix7Y3g6IjE4IixjeToiNiIscjoiMyJ9XV19KTt2YXIgeU8sVlFlPWwoKCk9Pnt5Tz1bWyJwYXRoIix7ZDoiTTEyIDE3djQifV0sWyJwYXRoIix7ZDoiTTIyIDEyLjMwN1YxNWEyIDIgMCAwIDEtMiAySDRhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJoOC42OTMifV0sWyJwYXRoIix7ZDoiTTggMjFoOCJ9XSxbImNpcmNsZSIse2N4OiIxOSIsY3k6IjYiLHI6IjMifV1dfSk7dmFyIHdPLFVRZT1sKCgpPT57d089W1sicGF0aCIse2Q6Ik0xMiAxM1Y3In1dLFsicGF0aCIse2Q6Im0xNSAxMC0zIDMtMy0zIn1dLFsicmVjdCIse3dpZHRoOiIyMCIsaGVpZ2h0OiIxNCIseDoiMiIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoiTTEyIDE3djQifV0sWyJwYXRoIix7ZDoiTTggMjFoOCJ9XV19KTt2YXIgTU8sV1FlPWwoKCk9PntNTz1bWyJwYXRoIix7ZDoiTTEyIDE3djQifV0sWyJwYXRoIix7ZDoiTTE3IDE3SDRhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAxLjE4NC0xLjgyNiJ9XSxbInBhdGgiLHtkOiJtMiAyIDIwIDIwIn1dLFsicGF0aCIse2Q6Ik04IDIxaDgifV0sWyJwYXRoIix7ZDoiTTguNjU2IDNIMjBhMiAyIDAgMCAxIDIgMnYxMGEyIDIgMCAwIDEtLjI5MyAxLjA0MiJ9XV19KTt2YXIga08sR1FlPWwoKCk9PntrTz1bWyJwYXRoIix7ZDoiTTEwIDEzVjcifV0sWyJwYXRoIix7ZDoiTTE0IDEzVjcifV0sWyJyZWN0Iix7d2lkdGg6IjIwIixoZWlnaHQ6IjE0Iix4OiIyIix5OiIzIixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNMTIgMTd2NCJ9XSxbInBhdGgiLHtkOiJNOCAyMWg4In1dXX0pO3ZhciBTTyxZUWU9bCgoKT0+e1NPPVtbInBhdGgiLHtkOiJNMTUuMDMzIDkuNDRhLjY0Ny42NDcgMCAwIDEgMCAxLjEybC00LjA2NSAyLjM1MmEuNjQ1LjY0NSAwIDAgMS0uOTY4LS41NlY3LjY0OGEuNjQ1LjY0NSAwIDAgMSAuOTY3LS41NnoifV0sWyJwYXRoIix7ZDoiTTEyIDE3djQifV0sWyJwYXRoIix7ZDoiTTggMjFoOCJ9XSxbInJlY3QiLHt4OiIyIix5OiIzIix3aWR0aDoiMjAiLGhlaWdodDoiMTQiLHJ4OiIyIn1dXX0pO3ZhciB6TyxaUWU9bCgoKT0+e3pPPVtbInBhdGgiLHtkOiJNMTggOFY2YTIgMiAwIDAgMC0yLTJINGEyIDIgMCAwIDAtMiAydjdhMiAyIDAgMCAwIDIgMmg4In1dLFsicGF0aCIse2Q6Ik0xMCAxOXYtMy45NiAzLjE1In1dLFsicGF0aCIse2Q6Ik03IDE5aDUifV0sWyJyZWN0Iix7d2lkdGg6IjYiLGhlaWdodDoiMTAiLHg6IjE2Iix5OiIxMiIscng6IjIifV1dfSk7dmFyIENPLFhRZT1sKCgpPT57Q089W1sicGF0aCIse2Q6Ik01LjUgMjBIOCJ9XSxbInBhdGgiLHtkOiJNMTcgOWguMDEifV0sWyJyZWN0Iix7d2lkdGg6IjEwIixoZWlnaHQ6IjE2Iix4OiIxMiIseToiNCIscng6IjIifV0sWyJwYXRoIix7ZDoiTTggNkg0YTIgMiAwIDAgMC0yIDJ2NmEyIDIgMCAwIDAgMiAyaDQifV0sWyJjaXJjbGUiLHtjeDoiMTciLGN5OiIxNSIscjoiMSJ9XV19KTt2YXIgX08sUVFlPWwoKCk9PntfTz1bWyJwYXRoIix7ZDoiTTEyIDE3djQifV0sWyJwYXRoIix7ZDoiTTggMjFoOCJ9XSxbInJlY3QiLHt4OiIyIix5OiIzIix3aWR0aDoiMjAiLGhlaWdodDoiMTQiLHJ4OiIyIn1dLFsicmVjdCIse3g6IjkiLHk6IjciLHdpZHRoOiI2IixoZWlnaHQ6IjYiLHJ4OiIxIn1dXX0pO3ZhciBUTyxLUWU9bCgoKT0+e1RPPVtbInBhdGgiLHtkOiJtOSAxMCAzLTMgMyAzIn1dLFsicGF0aCIse2Q6Ik0xMiAxM1Y3In1dLFsicmVjdCIse3dpZHRoOiIyMCIsaGVpZ2h0OiIxNCIseDoiMiIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoiTTEyIDE3djQifV0sWyJwYXRoIix7ZDoiTTggMjFoOCJ9XV19KTt2YXIgTE8sSlFlPWwoKCk9PntMTz1bWyJwYXRoIix7ZDoibTE0LjUgMTIuNS01LTUifV0sWyJwYXRoIix7ZDoibTkuNSAxMi41IDUtNSJ9XSxbInJlY3QiLHt3aWR0aDoiMjAiLGhlaWdodDoiMTQiLHg6IjIiLHk6IjMiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik0xMiAxN3Y0In1dLFsicGF0aCIse2Q6Ik04IDIxaDgifV1dfSk7dmFyIERPLGVLZT1sKCgpPT57RE89W1sicmVjdCIse3dpZHRoOiIyMCIsaGVpZ2h0OiIxNCIseDoiMiIseToiMyIscng6IjIifV0sWyJsaW5lIix7eDE6IjgiLHgyOiIxNiIseTE6IjIxIix5MjoiMjEifV0sWyJsaW5lIix7eDE6IjEyIix4MjoiMTIiLHkxOiIxNyIseTI6IjIxIn1dXX0pO3ZhciBBTyx0S2U9bCgoKT0+e0FPPVtbInBhdGgiLHtkOiJNMTggNWg0In1dLFsicGF0aCIse2Q6Ik0yMCAzdjQifV0sWyJwYXRoIix7ZDoiTTIwLjk4NSAxMi40ODZhOSA5IDAgMSAxLTkuNDczLTkuNDcyYy40MDUtLjAyMi42MTcuNDYuNDAyLjgwM2E2IDYgMCAwIDAgOC4yNjggOC4yNjhjLjM0NC0uMjE1LjgyNS0uMDA0LjgwMy40MDEifV1dfSk7dmFyIEVPLHJLZT1sKCgpPT57RU89W1sicGF0aCIse2Q6Ik0yMC45ODUgMTIuNDg2YTkgOSAwIDEgMS05LjQ3My05LjQ3MmMuNDA1LS4wMjIuNjE3LjQ2LjQwMi44MDNhNiA2IDAgMCAwIDguMjY4IDguMjY4Yy4zNDQtLjIxNS44MjUtLjAwNC44MDMuNDAxIn1dXX0pO3ZhciAkTyxhS2U9bCgoKT0+eyRPPVtbInBhdGgiLHtkOiJtMTggMTQtMS0zIn1dLFsicGF0aCIse2Q6Im0zIDkgNiAyYTIgMiAwIDAgMSAyLTJoMmEyIDIgMCAwIDEgMS45OSAxLjgxIn1dLFsicGF0aCIse2Q6Ik04IDE3aDNhMSAxIDAgMCAwIDEtMSA2IDYgMCAwIDEgNi02IDEgMSAwIDAgMCAxLTF2LS43NUE1IDUgMCAwIDAgMTcgNSJ9XSxbImNpcmNsZSIse2N4OiIxOSIsY3k6IjE3IixyOiIzIn1dLFsiY2lyY2xlIix7Y3g6IjUiLGN5OiIxNyIscjoiMyJ9XV19KTt2YXIgUE8saUtlPWwoKCk9PntQTz1bWyJwYXRoIix7ZDoibTggMyA0IDggNS01IDUgMTVIMkw4IDN6In1dLFsicGF0aCIse2Q6Ik00LjE0IDE1LjA4YzIuNjItMS41NyA1LjI0LTEuNDMgNy44Ni40MiAyLjc0IDEuOTQgNS40OSAyIDguMjMuMTkifV1dfSk7dmFyIElPLG9LZT1sKCgpPT57SU89W1sicGF0aCIse2Q6Im04IDMgNCA4IDUtNSA1IDE1SDJMOCAzeiJ9XV19KTt2YXIgTk8sbktlPWwoKCk9PntOTz1bWyJwYXRoIix7ZDoiTTEyIDcuMzE4VjEwIn1dLFsicGF0aCIse2Q6Ik01IDEwdjVhNyA3IDAgMCAwIDE0IDBWOWMwLTMuNTI3LTIuNjA4LTYuNTE1LTYtNyJ9XSxbImNpcmNsZSIse2N4OiI3IixjeToiNCIscjoiMiJ9XV19KTt2YXIgRk8sc0tlPWwoKCk9PntGTz1bWyJwYXRoIix7ZDoiTTEyIDZ2LjM0MyJ9XSxbInBhdGgiLHtkOiJNMTguMjE4IDE4LjIxOEE3IDcgMCAwIDEgNSAxNVY5YTcgNyAwIDAgMSAuNzgyLTMuMjE4In1dLFsicGF0aCIse2Q6Ik0xOSAxMy4zNDNWOUE3IDcgMCAwIDAgOC41NiAyLjkwMiJ9XSxbInBhdGgiLHtkOiJNMjIgMjIgMiAyIn1dXX0pO3ZhciBPTyxsS2U9bCgoKT0+e09PPVtbInBhdGgiLHtkOiJtMTUuNTUgOC40NSA1LjEzOCAyLjA4N2EuNS41IDAgMCAxLS4wNjMuOTQ3bC02LjEyNCAxLjU4YTIgMiAwIDAgMC0xLjQzOCAxLjQzNWwtMS41NzkgNi4xMjZhLjUuNSAwIDAgMS0uOTQ3LjA2M0w4LjQ1IDE1LjU1MSJ9XSxbInBhdGgiLHtkOiJNMjIgMiAyIDIyIn1dLFsicGF0aCIse2Q6Im02LjgxNiAxMS41MjgtMi43NzktNi44NGEuNDk1LjQ5NSAwIDAgMSAuNjUxLS42NTFsNi44NCAyLjc3OSJ9XV19KTt2YXIgUk8sY0tlPWwoKCk9PntSTz1bWyJwYXRoIix7ZDoiTTQuMDM3IDQuNjg4YS40OTUuNDk1IDAgMCAxIC42NTEtLjY1MWwxNiA2LjVhLjUuNSAwIDAgMS0uMDYzLjk0N2wtNi4xMjQgMS41OGEyIDIgMCAwIDAtMS40MzggMS40MzVsLTEuNTc5IDYuMTI2YS41LjUgMCAwIDEtLjk0Ny4wNjN6In1dXX0pO3ZhciBCTyxkS2U9bCgoKT0+e0JPPVtbInBhdGgiLHtkOiJNMi4wMzQgMi42ODFhLjQ5OC40OTggMCAwIDEgLjY0Ny0uNjQ3bDkgMy41YS41LjUgMCAwIDEtLjAzMy45NDRMOC4yMDQgNy41NDVhMSAxIDAgMCAwLS42Ni42NmwtMS4wNjYgMy40NDNhLjUuNSAwIDAgMS0uOTQ0LjAzM3oifV0sWyJjaXJjbGUiLHtjeDoiMTYiLGN5OiIxNiIscjoiNiJ9XSxbInBhdGgiLHtkOiJtMTEuOCAxMS44IDguNCA4LjQifV1dfSk7dmFyIEhPLHVLZT1sKCgpPT57SE89W1sicGF0aCIse2Q6Ik0xNCA0LjEgMTIgNiJ9XSxbInBhdGgiLHtkOiJtNS4xIDgtMi45LS44In1dLFsicGF0aCIse2Q6Im02IDEyLTEuOSAyIn1dLFsicGF0aCIse2Q6Ik03LjIgMi4yIDggNS4xIn1dLFsicGF0aCIse2Q6Ik05LjAzNyA5LjY5YS40OTguNDk4IDAgMCAxIC42NTMtLjY1M2wxMSA0LjVhLjUuNSAwIDAgMS0uMDc0Ljk0OWwtNC4zNDkgMS4wNDFhMSAxIDAgMCAwLS43NC43MzlsLTEuMDQgNC4zNWEuNS41IDAgMCAxLS45NS4wNzR6In1dXX0pO3ZhciBxTyxmS2U9bCgoKT0+e3FPPVtbInBhdGgiLHtkOiJNMTIuNTg2IDEyLjU4NiAxOSAxOSJ9XSxbInBhdGgiLHtkOiJNMy42ODggMy4wMzdhLjQ5Ny40OTcgMCAwIDAtLjY1MS42NTFsNi41IDE1Ljk5OWEuNTAxLjUwMSAwIDAgMCAuOTQ3LS4wNjJsMS41NjktNi4wODNhMiAyIDAgMCAxIDEuNDQ4LTEuNDc5bDYuMTI0LTEuNTc5YS41LjUgMCAwIDAgLjA2My0uOTQ3eiJ9XV19KTt2YXIgak8scEtlPWwoKCk9PntqTz1bWyJwYXRoIix7ZDoiTTEyIDcuMzE4VjEwIn1dLFsicGF0aCIse2Q6Ik0xOSAxMHY1YTcgNyAwIDAgMS0xNCAwVjljMC0zLjUyNyAyLjYwOC02LjUxNSA2LTcifV0sWyJjaXJjbGUiLHtjeDoiMTciLGN5OiI0IixyOiIyIn1dXX0pO3ZhciBrNSxoS2U9bCgoKT0+e2s1PVtbInBhdGgiLHtkOiJNNSAzdjE2aDE2In1dLFsicGF0aCIse2Q6Im01IDE5IDYtNiJ9XSxbInBhdGgiLHtkOiJtMiA2IDMtMyAzIDMifV0sWyJwYXRoIix7ZDoibTE4IDE2IDMgMy0zIDMifV1dfSk7dmFyIFZPLG1LZT1sKCgpPT57Vk89W1sicmVjdCIse3g6IjUiLHk6IjIiLHdpZHRoOiIxNCIsaGVpZ2h0OiIyMCIscng6IjcifV0sWyJwYXRoIix7ZDoiTTEyIDZ2NCJ9XV19KTt2YXIgVU8sZ0tlPWwoKCk9PntVTz1bWyJwYXRoIix7ZDoiTTE5IDEzdjZoLTYifV0sWyJwYXRoIix7ZDoiTTUgMTFWNWg2In1dLFsicGF0aCIse2Q6Im01IDUgMTQgMTQifV1dfSk7dmFyIFdPLHhLZT1sKCgpPT57V089W1sicGF0aCIse2Q6Ik0xMSAxOUg1di02In1dLFsicGF0aCIse2Q6Ik0xMyA1aDZ2NiJ9XSxbInBhdGgiLHtkOiJNMTkgNSA1IDE5In1dXX0pO3ZhciBHTyxiS2U9bCgoKT0+e0dPPVtbInBhdGgiLHtkOiJNMTkgMTNWMTlIMTMifV0sWyJwYXRoIix7ZDoiTTUgNUwxOSAxOSJ9XV19KTt2YXIgWU8sdktlPWwoKCk9PntZTz1bWyJwYXRoIix7ZDoiTTExIDE5SDVWMTMifV0sWyJwYXRoIix7ZDoiTTE5IDVMNSAxOSJ9XV19KTt2YXIgWk8seUtlPWwoKCk9PntaTz1bWyJwYXRoIix7ZDoiTTggMThMMTIgMjJMMTYgMTgifV0sWyJwYXRoIix7ZDoiTTEyIDJWMjIifV1dfSk7dmFyIFhPLHdLZT1sKCgpPT57WE89W1sicGF0aCIse2Q6Im0xOCA4IDQgNC00IDQifV0sWyJwYXRoIix7ZDoiTTIgMTJoMjAifV0sWyJwYXRoIix7ZDoibTYgOC00IDQgNCA0In1dXX0pO3ZhciBRTyxNS2U9bCgoKT0+e1FPPVtbInBhdGgiLHtkOiJNMTggOEwyMiAxMkwxOCAxNiJ9XSxbInBhdGgiLHtkOiJNMiAxMkgyMiJ9XV19KTt2YXIgS08sa0tlPWwoKCk9PntLTz1bWyJwYXRoIix7ZDoiTTYgOEwyIDEyTDYgMTYifV0sWyJwYXRoIix7ZDoiTTIgMTJIMjIifV1dfSk7dmFyIEpPLFNLZT1sKCgpPT57Sk89W1sicGF0aCIse2Q6Ik01IDExVjVIMTEifV0sWyJwYXRoIix7ZDoiTTUgNUwxOSAxOSJ9XV19KTt2YXIgZVIsektlPWwoKCk9PntlUj1bWyJwYXRoIix7ZDoiTTEzIDVIMTlWMTEifV0sWyJwYXRoIix7ZDoiTTE5IDVMNSAxOSJ9XV19KTt2YXIgdFIsQ0tlPWwoKCk9Pnt0Uj1bWyJwYXRoIix7ZDoiTTggNkwxMiAyTDE2IDYifV0sWyJwYXRoIix7ZDoiTTEyIDJWMjIifV1dfSk7dmFyIHJSLF9LZT1sKCgpPT57clI9W1sicGF0aCIse2Q6Ik0xMiAydjIwIn1dLFsicGF0aCIse2Q6Im04IDE4IDQgNCA0LTQifV0sWyJwYXRoIix7ZDoibTggNiA0LTQgNCA0In1dXX0pO3ZhciBhUixUS2U9bCgoKT0+e2FSPVtbInBhdGgiLHtkOiJNMTIgMnYyMCJ9XSxbInBhdGgiLHtkOiJtMTUgMTktMyAzLTMtMyJ9XSxbInBhdGgiLHtkOiJtMTkgOSAzIDMtMyAzIn1dLFsicGF0aCIse2Q6Ik0yIDEyaDIwIn1dLFsicGF0aCIse2Q6Im01IDktMyAzIDMgMyJ9XSxbInBhdGgiLHtkOiJtOSA1IDMtMyAzIDMifV1dfSk7dmFyIGlSLExLZT1sKCgpPT57aVI9W1siY2lyY2xlIix7Y3g6IjgiLGN5OiIxOCIscjoiNCJ9XSxbInBhdGgiLHtkOiJNMTIgMThWMmw3IDQifV1dfSk7dmFyIG9SLERLZT1sKCgpPT57b1I9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTgiLHI6IjQifV0sWyJwYXRoIix7ZDoiTTE2IDE4VjIifV1dfSk7dmFyIG5SLEFLZT1sKCgpPT57blI9W1sicGF0aCIse2Q6Ik05IDE4VjVsMTItMnYxMyJ9XSxbInBhdGgiLHtkOiJtOSA5IDEyLTIifV0sWyJjaXJjbGUiLHtjeDoiNiIsY3k6IjE4IixyOiIzIn1dLFsiY2lyY2xlIix7Y3g6IjE4IixjeToiMTYiLHI6IjMifV1dfSk7dmFyIHNSLEVLZT1sKCgpPT57c1I9W1sicGF0aCIse2Q6Ik05IDE4VjVsMTItMnYxMyJ9XSxbImNpcmNsZSIse2N4OiI2IixjeToiMTgiLHI6IjMifV0sWyJjaXJjbGUiLHtjeDoiMTgiLGN5OiIxNiIscjoiMyJ9XV19KTt2YXIgbFIsJEtlPWwoKCk9PntsUj1bWyJwYXRoIix7ZDoiTTkuMzEgOS4zMSA1IDIxbDctNCA3IDQtMS4xNy0zLjE3In1dLFsicGF0aCIse2Q6Ik0xNC41MyA4Ljg4IDEyIDJsLTEuMTcgMy4xNyJ9XSxbImxpbmUiLHt4MToiMiIseDI6IjIyIix5MToiMiIseTI6IjIyIn1dXX0pO3ZhciBjUixQS2U9bCgoKT0+e2NSPVtbInBvbHlnb24iLHtwb2ludHM6IjEyIDIgMTkgMjEgMTIgMTcgNSAyMSAxMiAyIn1dXX0pO3ZhciBkUixJS2U9bCgoKT0+e2RSPVtbInBhdGgiLHtkOiJNOC40MyA4LjQzIDMgMTFsOCAyIDIgOCAyLjU3LTUuNDMifV0sWyJwYXRoIix7ZDoiTTE3LjM5IDExLjczIDIyIDJsLTkuNzMgNC42MSJ9XSxbImxpbmUiLHt4MToiMiIseDI6IjIyIix5MToiMiIseTI6IjIyIn1dXX0pO3ZhciB1UixOS2U9bCgoKT0+e3VSPVtbInBvbHlnb24iLHtwb2ludHM6IjMgMTEgMjIgMiAxMyAyMSAxMSAxMyAzIDExIn1dXX0pO3ZhciBmUixGS2U9bCgoKT0+e2ZSPVtbInJlY3QiLHt4OiIxNiIseToiMTYiLHdpZHRoOiI2IixoZWlnaHQ6IjYiLHJ4OiIxIn1dLFsicmVjdCIse3g6IjIiLHk6IjE2Iix3aWR0aDoiNiIsaGVpZ2h0OiI2IixyeDoiMSJ9XSxbInJlY3QiLHt4OiI5Iix5OiIyIix3aWR0aDoiNiIsaGVpZ2h0OiI2IixyeDoiMSJ9XSxbInBhdGgiLHtkOiJNNSAxNnYtM2ExIDEgMCAwIDEgMS0xaDEyYTEgMSAwIDAgMSAxIDF2MyJ9XSxbInBhdGgiLHtkOiJNMTIgMTJWOCJ9XV19KTt2YXIgcFIsT0tlPWwoKCk9PntwUj1bWyJwYXRoIix7ZDoiTTYgOC4zMmE3LjQzIDcuNDMgMCAwIDEgMCA3LjM2In1dLFsicGF0aCIse2Q6Ik05LjQ2IDYuMjFhMTEuNzYgMTEuNzYgMCAwIDEgMCAxMS41OCJ9XSxbInBhdGgiLHtkOiJNMTIuOTEgNC4xYTE1LjkxIDE1LjkxIDAgMCAxIC4wMSAxNS44In1dLFsicGF0aCIse2Q6Ik0xNi4zNyAyYTIwLjE2IDIwLjE2IDAgMCAxIDAgMjAifV1dfSk7dmFyIGhSLFJLZT1sKCgpPT57aFI9W1sicGF0aCIse2Q6Ik0xNSAxOGgtNSJ9XSxbInBhdGgiLHtkOiJNMTggMTRoLTgifV0sWyJwYXRoIix7ZDoiTTQgMjJoMTZhMiAyIDAgMCAwIDItMlY0YTIgMiAwIDAgMC0yLTJIOGEyIDIgMCAwIDAtMiAydjE2YTIgMiAwIDAgMS00IDB2LTlhMiAyIDAgMCAxIDItMmgyIn1dLFsicmVjdCIse3dpZHRoOiI4IixoZWlnaHQ6IjQiLHg6IjEwIix5OiI2IixyeDoiMSJ9XV19KTt2YXIgbVIsQktlPWwoKCk9PnttUj1bWyJwYXRoIix7ZDoiTTEyIDJ2MTAifV0sWyJwYXRoIix7ZDoibTguNSA0IDcgNCJ9XSxbInBhdGgiLHtkOiJtOC41IDggNy00In1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiMTciLHI6IjUifV1dfSk7dmFyIGdSLEhLZT1sKCgpPT57Z1I9W1sicGF0aCIse2Q6Ik0xMy40IDJINmEyIDIgMCAwIDAtMiAydjE2YTIgMiAwIDAgMCAyIDJoMTJhMiAyIDAgMCAwIDItMnYtNy40In1dLFsicGF0aCIse2Q6Ik0yIDZoNCJ9XSxbInBhdGgiLHtkOiJNMiAxMGg0In1dLFsicGF0aCIse2Q6Ik0yIDE0aDQifV0sWyJwYXRoIix7ZDoiTTIgMThoNCJ9XSxbInBhdGgiLHtkOiJNMjEuMzc4IDUuNjI2YTEgMSAwIDEgMC0zLjAwNC0zLjAwNGwtNS4wMSA1LjAxMmEyIDIgMCAwIDAtLjUwNi44NTRsLS44MzcgMi44N2EuNS41IDAgMCAwIC42Mi42MmwyLjg3LS44MzdhMiAyIDAgMCAwIC44NTQtLjUwNnoifV1dfSk7dmFyIHhSLHFLZT1sKCgpPT57eFI9W1sicGF0aCIse2Q6Ik0yIDZoNCJ9XSxbInBhdGgiLHtkOiJNMiAxMGg0In1dLFsicGF0aCIse2Q6Ik0yIDE0aDQifV0sWyJwYXRoIix7ZDoiTTIgMThoNCJ9XSxbInJlY3QiLHt3aWR0aDoiMTYiLGhlaWdodDoiMjAiLHg6IjQiLHk6IjIiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik0xNSAydjIwIn1dLFsicGF0aCIse2Q6Ik0xNSA3aDUifV0sWyJwYXRoIix7ZDoiTTE1IDEyaDUifV0sWyJwYXRoIix7ZDoiTTE1IDE3aDUifV1dfSk7dmFyIGJSLGpLZT1sKCgpPT57YlI9W1sicGF0aCIse2Q6Ik0yIDZoNCJ9XSxbInBhdGgiLHtkOiJNMiAxMGg0In1dLFsicGF0aCIse2Q6Ik0yIDE0aDQifV0sWyJwYXRoIix7ZDoiTTIgMThoNCJ9XSxbInJlY3QiLHt3aWR0aDoiMTYiLGhlaWdodDoiMjAiLHg6IjQiLHk6IjIiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik05LjUgOGg1In1dLFsicGF0aCIse2Q6Ik05LjUgMTJIMTYifV0sWyJwYXRoIix7ZDoiTTkuNSAxNkgxNCJ9XV19KTt2YXIgdlIsVktlPWwoKCk9Pnt2Uj1bWyJwYXRoIix7ZDoiTTggMnY0In1dLFsicGF0aCIse2Q6Ik0xMiAydjQifV0sWyJwYXRoIix7ZDoiTTE2IDJ2NCJ9XSxbInBhdGgiLHtkOiJNMTYgNGgyYTIgMiAwIDAgMSAyIDJ2MiJ9XSxbInBhdGgiLHtkOiJNMjAgMTJ2MiJ9XSxbInBhdGgiLHtkOiJNMjAgMTh2MmEyIDIgMCAwIDEtMiAyaC0xIn1dLFsicGF0aCIse2Q6Ik0xMyAyMmgtMiJ9XSxbInBhdGgiLHtkOiJNNyAyMkg2YTIgMiAwIDAgMS0yLTJ2LTIifV0sWyJwYXRoIix7ZDoiTTQgMTR2LTIifV0sWyJwYXRoIix7ZDoiTTQgOFY2YTIgMiAwIDAgMSAyLTJoMiJ9XSxbInBhdGgiLHtkOiJNOCAxMGg2In1dLFsicGF0aCIse2Q6Ik04IDE0aDgifV0sWyJwYXRoIix7ZDoiTTggMThoNSJ9XV19KTt2YXIgeVIsVUtlPWwoKCk9Pnt5Uj1bWyJwYXRoIix7ZDoiTTggMnY0In1dLFsicGF0aCIse2Q6Ik0xMiAydjQifV0sWyJwYXRoIix7ZDoiTTE2IDJ2NCJ9XSxbInJlY3QiLHt3aWR0aDoiMTYiLGhlaWdodDoiMTgiLHg6IjQiLHk6IjQiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik04IDEwaDYifV0sWyJwYXRoIix7ZDoiTTggMTRoOCJ9XSxbInBhdGgiLHtkOiJNOCAxOGg1In1dXX0pO3ZhciB3UixXS2U9bCgoKT0+e3dSPVtbInBhdGgiLHtkOiJNMiA2aDQifV0sWyJwYXRoIix7ZDoiTTIgMTBoNCJ9XSxbInBhdGgiLHtkOiJNMiAxNGg0In1dLFsicGF0aCIse2Q6Ik0yIDE4aDQifV0sWyJyZWN0Iix7d2lkdGg6IjE2IixoZWlnaHQ6IjIwIix4OiI0Iix5OiIyIixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNMTYgMnYyMCJ9XV19KTt2YXIgTVIsR0tlPWwoKCk9PntNUj1bWyJwYXRoIix7ZDoiTTEyIDRWMiJ9XSxbInBhdGgiLHtkOiJNNSAxMHY0YTcuMDA0IDcuMDA0IDAgMCAwIDUuMjc3IDYuNzg3Yy40MTIuMTA0LjgwMi4yOTIgMS4xMDIuNTkyTDEyIDIybC42MjEtLjYyMWMuMy0uMy42OS0uNDg4IDEuMTAyLS41OTJhNy4wMSA3LjAxIDAgMCAwIDQuMTI1LTIuOTM5In1dLFsicGF0aCIse2Q6Ik0xOSAxMHYzLjM0MyJ9XSxbInBhdGgiLHtkOiJNMTIgMTJjLTEuMzQ5LS41NzMtMS45MDUtMS4wMDUtMi41LTItLjU0Ni45MDItMS4wNDggMS4zNTMtMi41IDItMS4wMTgtLjY0NC0xLjQ2LTEuMDgtMi0yLTEuMDI4LjcxLTEuNjkuOTE4LTMgMSAxLjA4MS0xLjA0OCAxLjc1Ny0yLjAzIDItMyAuMTk0LS43NzYuODQtMS41NTEgMS43OS0yLjIxbTExLjY1NCA1Ljk5N2MuODg3LS40NTcgMS4yOC0uODkxIDEuNTU2LTEuNzg3IDEuMDMyLjkxNiAxLjY4MyAxLjE1NyAzIDEtMS4yOTctMS4wMzYtMS43NTgtMi4wMy0yLTMtLjUtMi00LTQtOC00LS43NCAwLTEuNDYxLjA2OC0yLjE1LjE5MiJ9XSxbImxpbmUiLHt4MToiMiIseDI6IjIyIix5MToiMiIseTI6IjIyIn1dXX0pO3ZhciBrUixZS2U9bCgoKT0+e2tSPVtbInBhdGgiLHtkOiJNMi41ODYgMTYuNzI2QTIgMiAwIDAgMSAyIDE1LjMxMlY4LjY4OGEyIDIgMCAwIDEgLjU4Ni0xLjQxNGw0LjY4OC00LjY4OEEyIDIgMCAwIDEgOC42ODggMmg2LjYyNGEyIDIgMCAwIDEgMS40MTQuNTg2bDQuNjg4IDQuNjg4QTIgMiAwIDAgMSAyMiA4LjY4OHY2LjYyNGEyIDIgMCAwIDEtLjU4NiAxLjQxNGwtNC42ODggNC42ODhhMiAyIDAgMCAxLTEuNDE0LjU4Nkg4LjY4OGEyIDIgMCAwIDEtMS40MTQtLjU4NnoifV0sWyJwYXRoIix7ZDoiTTggMTJoOCJ9XV19KTt2YXIgU1IsWktlPWwoKCk9PntTUj1bWyJwYXRoIix7ZDoiTTEyIDRWMiJ9XSxbInBhdGgiLHtkOiJNNSAxMHY0YTcuMDA0IDcuMDA0IDAgMCAwIDUuMjc3IDYuNzg3Yy40MTIuMTA0LjgwMi4yOTIgMS4xMDIuNTkyTDEyIDIybC42MjEtLjYyMWMuMy0uMy42OS0uNDg4IDEuMTAyLS41OTJBNy4wMDMgNy4wMDMgMCAwIDAgMTkgMTR2LTQifV0sWyJwYXRoIix7ZDoiTTEyIDRDOCA0IDQuNSA2IDQgOGMtLjI0My45Ny0uOTE5IDEuOTUyLTIgMyAxLjMxLS4wODIgMS45NzItLjI5IDMtMSAuNTQuOTIuOTgyIDEuMzU2IDIgMiAxLjQ1Mi0uNjQ3IDEuOTU0LTEuMDk4IDIuNS0yIC41OTUuOTk1IDEuMTUxIDEuNDI3IDIuNSAyIDEuMzEtLjYyMSAxLjg2Mi0xLjA1OCAyLjUtMiAuNjI5Ljk3NyAxLjE2MiAxLjQyMyAyLjUgMiAxLjIwOS0uNTQ4IDEuNjgtLjk2NyAyLTIgMS4wMzIuOTE2IDEuNjgzIDEuMTU3IDMgMS0xLjI5Ny0xLjAzNi0xLjc1OC0yLjAzLTItMy0uNS0yLTQtNC04LTRaIn1dXX0pO3ZhciBTNSxYS2U9bCgoKT0+e1M1PVtbInBhdGgiLHtkOiJNMTIgMTZoLjAxIn1dLFsicGF0aCIse2Q6Ik0xMiA4djQifV0sWyJwYXRoIix7ZDoiTTE1LjMxMiAyYTIgMiAwIDAgMSAxLjQxNC41ODZsNC42ODggNC42ODhBMiAyIDAgMCAxIDIyIDguNjg4djYuNjI0YTIgMiAwIDAgMS0uNTg2IDEuNDE0bC00LjY4OCA0LjY4OGEyIDIgMCAwIDEtMS40MTQuNTg2SDguNjg4YTIgMiAwIDAgMS0xLjQxNC0uNTg2bC00LjY4OC00LjY4OEEyIDIgMCAwIDEgMiAxNS4zMTJWOC42ODhhMiAyIDAgMCAxIC41ODYtMS40MTRsNC42ODgtNC42ODhBMiAyIDAgMCAxIDguNjg4IDJ6In1dXX0pO3ZhciB6NSxRS2U9bCgoKT0+e3o1PVtbInBhdGgiLHtkOiJNMTAgMTVWOSJ9XSxbInBhdGgiLHtkOiJNMTQgMTVWOSJ9XSxbInBhdGgiLHtkOiJNMi41ODYgMTYuNzI2QTIgMiAwIDAgMSAyIDE1LjMxMlY4LjY4OGEyIDIgMCAwIDEgLjU4Ni0xLjQxNGw0LjY4OC00LjY4OEEyIDIgMCAwIDEgOC42ODggMmg2LjYyNGEyIDIgMCAwIDEgMS40MTQuNTg2bDQuNjg4IDQuNjg4QTIgMiAwIDAgMSAyMiA4LjY4OHY2LjYyNGEyIDIgMCAwIDEtLjU4NiAxLjQxNGwtNC42ODggNC42ODhhMiAyIDAgMCAxLTEuNDE0LjU4Nkg4LjY4OGEyIDIgMCAwIDEtMS40MTQtLjU4NnoifV1dfSk7dmFyIEM1LEtLZT1sKCgpPT57QzU9W1sicGF0aCIse2Q6Im0xNSA5LTYgNiJ9XSxbInBhdGgiLHtkOiJNMi41ODYgMTYuNzI2QTIgMiAwIDAgMSAyIDE1LjMxMlY4LjY4OGEyIDIgMCAwIDEgLjU4Ni0xLjQxNGw0LjY4OC00LjY4OEEyIDIgMCAwIDEgOC42ODggMmg2LjYyNGEyIDIgMCAwIDEgMS40MTQuNTg2bDQuNjg4IDQuNjg4QTIgMiAwIDAgMSAyMiA4LjY4OHY2LjYyNGEyIDIgMCAwIDEtLjU4NiAxLjQxNGwtNC42ODggNC42ODhhMiAyIDAgMCAxLTEuNDE0LjU4Nkg4LjY4OGEyIDIgMCAwIDEtMS40MTQtLjU4NnoifV0sWyJwYXRoIix7ZDoibTkgOSA2IDYifV1dfSk7dmFyIHpSLEpLZT1sKCgpPT57elI9W1sicGF0aCIse2Q6Ik0yLjU4NiAxNi43MjZBMiAyIDAgMCAxIDIgMTUuMzEyVjguNjg4YTIgMiAwIDAgMSAuNTg2LTEuNDE0bDQuNjg4LTQuNjg4QTIgMiAwIDAgMSA4LjY4OCAyaDYuNjI0YTIgMiAwIDAgMSAxLjQxNC41ODZsNC42ODggNC42ODhBMiAyIDAgMCAxIDIyIDguNjg4djYuNjI0YTIgMiAwIDAgMS0uNTg2IDEuNDE0bC00LjY4OCA0LjY4OGEyIDIgMCAwIDEtMS40MTQuNTg2SDguNjg4YTIgMiAwIDAgMS0xLjQxNC0uNTg2eiJ9XV19KTt2YXIgQ1IsZUplPWwoKCk9PntDUj1bWyJwYXRoIix7ZDoiTTMgMjBoNC41YS41LjUgMCAwIDAgLjUtLjV2LS4yODJhLjUyLjUyIDAgMCAwLS4yNDctLjQzNyA4IDggMCAxIDEgOC40OTQtLjAwMS41Mi41MiAwIDAgMC0uMjQ3LjQzOHYuMjgyYS41LjUgMCAwIDAgLjUuNUgyMSJ9XV19KTt2YXIgX1IsdEplPWwoKCk9PntfUj1bWyJwYXRoIix7ZDoiTTMgM2g2bDYgMThoNiJ9XSxbInBhdGgiLHtkOiJNMTQgM2g3In1dXX0pO3ZhciBUUixySmU9bCgoKT0+e1RSPVtbInBhdGgiLHtkOiJNMjAuMzQxIDYuNDg0QTEwIDEwIDAgMCAxIDEwLjI2NiAyMS44NSJ9XSxbInBhdGgiLHtkOiJNMy42NTkgMTcuNTE2QTEwIDEwIDAgMCAxIDEzLjc0IDIuMTUyIn1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjMifV0sWyJjaXJjbGUiLHtjeDoiMTkiLGN5OiI1IixyOiIyIn1dLFsiY2lyY2xlIix7Y3g6IjUiLGN5OiIxOSIscjoiMiJ9XV19KTt2YXIgTFIsYUplPWwoKCk9PntMUj1bWyJwYXRoIix7ZDoiTTEyIDEyVjRhMSAxIDAgMCAxIDEtMWg2LjI5N2ExIDEgMCAwIDEgLjY1MSAxLjc1OWwtNC42OTYgNC4wMjUifV0sWyJwYXRoIix7ZDoibTEyIDIxLTcuNDE0LTcuNDE0QTIgMiAwIDAgMSA0IDEyLjE3MlY2LjQxNWExLjAwMiAxLjAwMiAwIDAgMSAxLjcwNy0uNzA3TDIwIDIwLjAwOSJ9XSxbInBhdGgiLHtkOiJtMTIuMjE0IDMuMzgxIDguNDE0IDE0Ljk2NmExIDEgMCAwIDEtLjE2NyAxLjE5OWwtMS4xNjggMS4xNjNhMSAxIDAgMCAxLS43MDYuMjkxSDYuMzUxYTEgMSAwIDAgMS0uNjI1LS4yMTlMMy4yNSAxOC44YTEgMSAwIDAgMSAuNjMxLTEuNzgxbDQuMTY1LjAyNyJ9XV19KTt2YXIgRFIsaUplPWwoKCk9PntEUj1bWyJwYXRoIix7ZDoiTTEyIDN2NiJ9XSxbInBhdGgiLHtkOiJNMTYuNzYgM2EyIDIgMCAwIDEgMS44IDEuMWwyLjIzIDQuNDc5YTIgMiAwIDAgMSAuMjEuODkxVjE5YTIgMiAwIDAgMS0yIDJINWEyIDIgMCAwIDEtMi0yVjkuNDcyYTIgMiAwIDAgMSAuMjExLS44OTRMNS40NSA0LjFBMiAyIDAgMCAxIDcuMjQgM3oifV0sWyJwYXRoIix7ZDoiTTMuMDU0IDkuMDEzaDE3Ljg5MyJ9XV19KTt2YXIgQVIsb0plPWwoKCk9PntBUj1bWyJwYXRoIix7ZDoiTTEyIDIyVjEyIn1dLFsicGF0aCIse2Q6Im0xNiAxNyAyIDIgNC00In1dLFsicGF0aCIse2Q6Ik0yMSAxMS4xMjdWOGEyIDIgMCAwIDAtMS0xLjczbC03LTRhMiAyIDAgMCAwLTIgMGwtNyA0QTIgMiAwIDAgMCAzIDh2OGEyIDIgMCAwIDAgMSAxLjcyOWw3IDRhMiAyIDAgMCAwIDIgLjAwMWwxLjMyLS43NTMifV0sWyJwYXRoIix7ZDoiTTMuMjkgNyAxMiAxMmw4LjcxLTUifV0sWyJwYXRoIix7ZDoibTcuNSA0LjI3IDguOTk3IDUuMTQ4In1dXX0pO3ZhciBFUixuSmU9bCgoKT0+e0VSPVtbInBhdGgiLHtkOiJNMTIgMjJWMTIifV0sWyJwYXRoIix7ZDoiTTE2IDE3aDYifV0sWyJwYXRoIix7ZDoiTTIxIDEzVjhhMiAyIDAgMCAwLTEtMS43M2wtNy00YTIgMiAwIDAgMC0yIDBsLTcgNEEyIDIgMCAwIDAgMyA4djhhMiAyIDAgMCAwIDEgMS43MjlsNyA0YTIgMiAwIDAgMCAyIC4wMDFsMS42NzUtLjk1NSJ9XSxbInBhdGgiLHtkOiJNMy4yOSA3IDEyIDEybDguNzEtNSJ9XSxbInBhdGgiLHtkOiJtNy41IDQuMjcgOC45OTcgNS4xNDgifV1dfSk7dmFyICRSLHNKZT1sKCgpPT57JFI9W1sicGF0aCIse2Q6Ik0xMiAyMnYtOSJ9XSxbInBhdGgiLHtkOiJNMTUuMTcgMi4yMWExLjY3IDEuNjcgMCAwIDEgMS42MyAwTDIxIDQuNTdhMS45MyAxLjkzIDAgMCAxIDAgMy4zNkw4LjgyIDE0Ljc5YTEuNjU1IDEuNjU1IDAgMCAxLTEuNjQgMEwzIDEyLjQzYTEuOTMgMS45MyAwIDAgMSAwLTMuMzZ6In1dLFsicGF0aCIse2Q6Ik0yMCAxM3YzLjg3YTIuMDYgMi4wNiAwIDAgMS0xLjExIDEuODNsLTYgMy4wOGExLjkzIDEuOTMgMCAwIDEtMS43OCAwbC02LTMuMDhBMi4wNiAyLjA2IDAgMCAxIDQgMTYuODdWMTMifV0sWyJwYXRoIix7ZDoiTTIxIDEyLjQzYTEuOTMgMS45MyAwIDAgMCAwLTMuMzZMOC44MyAyLjJhMS42NCAxLjY0IDAgMCAwLTEuNjMgMEwzIDQuNTdhMS45MyAxLjkzIDAgMCAwIDAgMy4zNmwxMi4xOCA2Ljg2YTEuNjM2IDEuNjM2IDAgMCAwIDEuNjMgMHoifV1dfSk7dmFyIFBSLGxKZT1sKCgpPT57UFI9W1sicGF0aCIse2Q6Ik0xMiAyMlYxMiJ9XSxbInBhdGgiLHtkOiJNMTYgMTdoNiJ9XSxbInBhdGgiLHtkOiJNMTkgMTR2NiJ9XSxbInBhdGgiLHtkOiJNMjEgMTAuNTM1VjhhMiAyIDAgMCAwLTEtMS43M2wtNy00YTIgMiAwIDAgMC0yIDBsLTcgNEEyIDIgMCAwIDAgMyA4djhhMiAyIDAgMCAwIDEgMS43MjlsNyA0YTIgMiAwIDAgMCAyIC4wMDFsMS42NzUtLjk1NSJ9XSxbInBhdGgiLHtkOiJNMy4yOSA3IDEyIDEybDguNzEtNSJ9XSxbInBhdGgiLHtkOiJtNy41IDQuMjcgOC45OTcgNS4xNDgifV1dfSk7dmFyIElSLGNKZT1sKCgpPT57SVI9W1sicGF0aCIse2Q6Ik0xMiAyMlYxMiJ9XSxbInBhdGgiLHtkOiJNMjAuMjcgMTguMjcgMjIgMjAifV0sWyJwYXRoIix7ZDoiTTIxIDEwLjQ5OFY4YTIgMiAwIDAgMC0xLTEuNzNsLTctNGEyIDIgMCAwIDAtMiAwbC03IDRBMiAyIDAgMCAwIDMgOHY4YTIgMiAwIDAgMCAxIDEuNzI5bDcgNGEyIDIgMCAwIDAgMiAuMDAxbC45OC0uNTU5In1dLFsicGF0aCIse2Q6Ik0zLjI5IDcgMTIgMTJsOC43MS01In1dLFsicGF0aCIse2Q6Im03LjUgNC4yNyA4Ljk5NyA1LjE0OCJ9XSxbImNpcmNsZSIse2N4OiIxOC41IixjeToiMTYuNSIscjoiMi41In1dXX0pO3ZhciBOUixkSmU9bCgoKT0+e05SPVtbInBhdGgiLHtkOiJNMTIgMjJWMTIifV0sWyJwYXRoIix7ZDoibTE2LjUgMTQuNSA1IDUifV0sWyJwYXRoIix7ZDoibTE2LjUgMTkuNSA1LTUifV0sWyJwYXRoIix7ZDoiTTIxIDEwLjVWOGEyIDIgMCAwIDAtMS0xLjczbC03LTRhMiAyIDAgMCAwLTIgMGwtNyA0QTIgMiAwIDAgMCAzIDh2OGEyIDIgMCAwIDAgMSAxLjcyOWw3IDRhMiAyIDAgMCAwIDIgLjAwMWwuMTMtLjA3NCJ9XSxbInBhdGgiLHtkOiJNMy4yOSA3IDEyIDEybDguNzEtNSJ9XSxbInBhdGgiLHtkOiJtNy41IDQuMjcgOC45OTcgNS4xNDgifV1dfSk7dmFyIEZSLHVKZT1sKCgpPT57RlI9W1sicGF0aCIse2Q6Ik0xMSAyMS43M2EyIDIgMCAwIDAgMiAwbDctNEEyIDIgMCAwIDAgMjEgMTZWOGEyIDIgMCAwIDAtMS0xLjczbC03LTRhMiAyIDAgMCAwLTIgMGwtNyA0QTIgMiAwIDAgMCAzIDh2OGEyIDIgMCAwIDAgMSAxLjczeiJ9XSxbInBhdGgiLHtkOiJNMTIgMjJWMTIifV0sWyJwb2x5bGluZSIse3BvaW50czoiMy4yOSA3IDEyIDEyIDIwLjcxIDcifV0sWyJwYXRoIix7ZDoibTcuNSA0LjI3IDkgNS4xNSJ9XV19KTt2YXIgT1IsZkplPWwoKCk9PntPUj1bWyJwYXRoIix7ZDoiTTExIDcgNiAyIn1dLFsicGF0aCIse2Q6Ik0xOC45OTIgMTJIMi4wNDEifV0sWyJwYXRoIix7ZDoiTTIxLjE0NSAxOC4zOEEzLjM0IDMuMzQgMCAwIDEgMjAgMTYuNWEzLjMgMy4zIDAgMCAxLTEuMTQ1IDEuODhjLS41NzUuNDYtLjg1NSAxLjAyLS44NTUgMS41OTVBMiAyIDAgMCAwIDIwIDIyYTIgMiAwIDAgMCAyLTIuMDI1YzAtLjU4LS4yODUtMS4xMy0uODU1LTEuNTk1In1dLFsicGF0aCIse2Q6Im04LjUgNC41IDIuMTQ4LTIuMTQ4YTEuMjA1IDEuMjA1IDAgMCAxIDEuNzA0IDBsNy4yOTYgNy4yOTZhMS4yMDUgMS4yMDUgMCAwIDEgMCAxLjcwNGwtNy41OTIgNy41OTJhMy42MTUgMy42MTUgMCAwIDEtNS4xMTIgMGwtMy44ODgtMy44ODhhMy42MTUgMy42MTUgMCAwIDEgMC01LjExMkw1LjY3IDcuMzMifV1dfSk7dmFyIFJSLHBKZT1sKCgpPT57UlI9W1sicmVjdCIse3dpZHRoOiIxNiIsaGVpZ2h0OiI2Iix4OiIyIix5OiIyIixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNMTAgMTZ2LTJhMiAyIDAgMCAxIDItMmg4YTIgMiAwIDAgMCAyLTJWN2EyIDIgMCAwIDAtMi0yaC0yIn1dLFsicmVjdCIse3dpZHRoOiI0IixoZWlnaHQ6IjYiLHg6IjgiLHk6IjE2IixyeDoiMSJ9XV19KTt2YXIgXzUsaEplPWwoKCk9PntfNT1bWyJwYXRoIix7ZDoiTTEwIDJ2MiJ9XSxbInBhdGgiLHtkOiJNMTQgMnY0In1dLFsicGF0aCIse2Q6Ik0xNyAyYTEgMSAwIDAgMSAxIDF2OUg2VjNhMSAxIDAgMCAxIDEtMXoifV0sWyJwYXRoIix7ZDoiTTYgMTJhMSAxIDAgMCAwLTEgMXYxYTIgMiAwIDAgMCAyIDJoMmExIDEgMCAwIDEgMSAxdjIuOWEyIDIgMCAxIDAgNCAwVjE3YTEgMSAwIDAgMSAxLTFoMmEyIDIgMCAwIDAgMi0ydi0xYTEgMSAwIDAgMC0xLTEifV1dfSk7dmFyIEJSLG1KZT1sKCgpPT57QlI9W1sicGF0aCIse2Q6Im0xNC42MjIgMTcuODk3LTEwLjY4LTIuOTEzIn1dLFsicGF0aCIse2Q6Ik0xOC4zNzYgMi42MjJhMSAxIDAgMSAxIDMuMDAyIDMuMDAyTDE3LjM2IDkuNjQzYS41LjUgMCAwIDAgMCAuNzA3bC45NDQuOTQ0YTIuNDEgMi40MSAwIDAgMSAwIDMuNDA4bC0uOTQ0Ljk0NGEuNS41IDAgMCAxLS43MDcgMEw4LjM1NCA3LjM0OGEuNS41IDAgMCAxIDAtLjcwN2wuOTQ0LS45NDRhMi40MSAyLjQxIDAgMCAxIDMuNDA4IDBsLjk0NC45NDRhLjUuNSAwIDAgMCAuNzA3IDB6In1dLFsicGF0aCIse2Q6Ik05IDhjLTEuODA0IDIuNzEtMy45NyAzLjQ2LTYuNTgzIDMuOTQ4YS41MDcuNTA3IDAgMCAwLS4zMDIuODE5bDcuMzIgOC44ODNhMSAxIDAgMCAwIDEuMTg1LjIwNEMxMi43MzUgMjAuNDA1IDE2IDE2Ljc5MiAxNiAxNSJ9XV19KTt2YXIgSFIsZ0plPWwoKCk9PntIUj1bWyJwYXRoIix7ZDoiTTEyIDIyYTEgMSAwIDAgMSAwLTIwIDEwIDkgMCAwIDEgMTAgOSA1IDUgMCAwIDEtNSA1aC0yLjI1YTEuNzUgMS43NSAwIDAgMC0xLjQgMi44bC4zLjRhMS43NSAxLjc1IDAgMCAxLTEuNCAyLjh6In1dLFsiY2lyY2xlIix7Y3g6IjEzLjUiLGN5OiI2LjUiLHI6Ii41IixmaWxsOiJjdXJyZW50Q29sb3IifV0sWyJjaXJjbGUiLHtjeDoiMTcuNSIsY3k6IjEwLjUiLHI6Ii41IixmaWxsOiJjdXJyZW50Q29sb3IifV0sWyJjaXJjbGUiLHtjeDoiNi41IixjeToiMTIuNSIscjoiLjUiLGZpbGw6ImN1cnJlbnRDb2xvciJ9XSxbImNpcmNsZSIse2N4OiI4LjUiLGN5OiI3LjUiLHI6Ii41IixmaWxsOiJjdXJyZW50Q29sb3IifV1dfSk7dmFyIHFSLHhKZT1sKCgpPT57cVI9W1sicGF0aCIse2Q6Ik0xMS4yNSAxNy4yNWgxLjVMMTIgMTh6In1dLFsicGF0aCIse2Q6Im0xNSAxMiAyIDIifV0sWyJwYXRoIix7ZDoiTTE4IDYuNWEuNS41IDAgMCAwLS41LS41In1dLFsicGF0aCIse2Q6Ik0yMC42OSA5LjY3YTQuNSA0LjUgMCAxIDAtNy4wNC01LjUgOC4zNSA4LjM1IDAgMCAwLTMuMyAwIDQuNSA0LjUgMCAxIDAtNy4wNCA1LjVDMi40OSAxMS4yIDIgMTIuODggMiAxNC41IDIgMTkuNDcgNi40OCAyMiAxMiAyMnMxMC0yLjUzIDEwLTcuNWMwLTEuNjItLjQ4LTMuMy0xLjMtNC44MyJ9XSxbInBhdGgiLHtkOiJNNiA2LjVhLjQ5NS40OTUgMCAwIDEgLjUtLjUifV0sWyJwYXRoIix7ZDoibTkgMTItMiAyIn1dXX0pO3ZhciBqUixiSmU9bCgoKT0+e2pSPVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik0zIDE1aDE4In1dLFsicGF0aCIse2Q6Im0xNSA4LTMgMy0zLTMifV1dfSk7dmFyIFQ1LHZKZT1sKCgpPT57VDU9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoiTTE0IDE1aDEifV0sWyJwYXRoIix7ZDoiTTE5IDE1aDIifV0sWyJwYXRoIix7ZDoiTTMgMTVoMiJ9XSxbInBhdGgiLHtkOiJNOSAxNWgxIn1dXX0pO3ZhciBWUix5SmU9bCgoKT0+e1ZSPVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik0zIDE1aDE4In1dLFsicGF0aCIse2Q6Im05IDEwIDMtMyAzIDMifV1dfSk7dmFyIFVSLHdKZT1sKCgpPT57VVI9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoiTTMgMTVoMTgifV1dfSk7dmFyIEw1LE1KZT1sKCgpPT57TDU9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoiTTkgM3YxOCJ9XSxbInBhdGgiLHtkOiJtMTYgMTUtMy0zIDMtMyJ9XV19KTt2YXIgRDUsa0plPWwoKCk9PntENT1bWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiIzIixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNOSAxNHYxIn1dLFsicGF0aCIse2Q6Ik05IDE5djIifV0sWyJwYXRoIix7ZDoiTTkgM3YyIn1dLFsicGF0aCIse2Q6Ik05IDl2MSJ9XV19KTt2YXIgQTUsU0plPWwoKCk9PntBNT1bWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiIzIixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNOSAzdjE4In1dLFsicGF0aCIse2Q6Im0xNCA5IDMgMy0zIDMifV1dfSk7dmFyIFdSLHpKZT1sKCgpPT57V1I9W1sicGF0aCIse2Q6Ik0xNSAxMFY5In1dLFsicGF0aCIse2Q6Ik0xNSAxNXYtMSJ9XSxbInBhdGgiLHtkOiJNMTUgMjF2LTIifV0sWyJwYXRoIix7ZDoiTTE1IDVWMyJ9XSxbInBhdGgiLHtkOiJNOSAxMFY5In1dLFsicGF0aCIse2Q6Ik05IDE1di0xIn1dLFsicGF0aCIse2Q6Ik05IDIxdi0yIn1dLFsicGF0aCIse2Q6Ik05IDVWMyJ9XSxbInJlY3QiLHt4OiIzIix5OiIzIix3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHJ4OiIyIn1dXX0pO3ZhciBFNSxDSmU9bCgoKT0+e0U1PVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik05IDN2MTgifV1dfSk7dmFyIEdSLF9KZT1sKCgpPT57R1I9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoiTTE1IDN2MTgifV0sWyJwYXRoIix7ZDoibTggOSAzIDMtMyAzIn1dXX0pO3ZhciAkNSxUSmU9bCgoKT0+eyQ1PVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik0xNSAxNHYxIn1dLFsicGF0aCIse2Q6Ik0xNSAxOXYyIn1dLFsicGF0aCIse2Q6Ik0xNSAzdjIifV0sWyJwYXRoIix7ZDoiTTE1IDl2MSJ9XV19KTt2YXIgWVIsTEplPWwoKCk9PntZUj1bWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiIzIixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNMTUgM3YxOCJ9XSxbInBhdGgiLHtkOiJtMTAgMTUtMy0zIDMtMyJ9XV19KTt2YXIgWlIsREplPWwoKCk9PntaUj1bWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiIzIixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNMTUgM3YxOCJ9XV19KTt2YXIgWFIsQUplPWwoKCk9PntYUj1bWyJwYXRoIix7ZDoiTTE0IDE1aDEifV0sWyJwYXRoIix7ZDoiTTE0IDloMSJ9XSxbInBhdGgiLHtkOiJNMTkgMTVoMiJ9XSxbInBhdGgiLHtkOiJNMTkgOWgyIn1dLFsicGF0aCIse2Q6Ik0zIDE1aDIifV0sWyJwYXRoIix7ZDoiTTMgOWgyIn1dLFsicGF0aCIse2Q6Ik05IDE1aDEifV0sWyJwYXRoIix7ZDoiTTkgOWgxIn1dLFsicmVjdCIse3g6IjMiLHk6IjMiLHdpZHRoOiIxOCIsaGVpZ2h0OiIxOCIscng6IjIifV1dfSk7dmFyIFFSLEVKZT1sKCgpPT57UVI9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoiTTMgOWgxOCJ9XSxbInBhdGgiLHtkOiJtOSAxNiAzLTMgMyAzIn1dXX0pO3ZhciBLUiwkSmU9bCgoKT0+e0tSPVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik0zIDloMTgifV0sWyJwYXRoIix7ZDoibTE1IDE0LTMgMy0zLTMifV1dfSk7dmFyIFA1LFBKZT1sKCgpPT57UDU9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoiTTE0IDloMSJ9XSxbInBhdGgiLHtkOiJNMTkgOWgyIn1dLFsicGF0aCIse2Q6Ik0zIDloMiJ9XSxbInBhdGgiLHtkOiJNOSA5aDEifV1dfSk7dmFyIEpSLElKZT1sKCgpPT57SlI9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoiTTMgOWgxOCJ9XV19KTt2YXIgZUIsTkplPWwoKCk9PntlQj1bWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiIzIixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNOSAzdjE4In1dLFsicGF0aCIse2Q6Ik05IDE1aDEyIn1dXX0pO3ZhciB0QixGSmU9bCgoKT0+e3RCPVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik0zIDE1aDEyIn1dLFsicGF0aCIse2Q6Ik0xNSAzdjE4In1dXX0pO3ZhciBJNSxPSmU9bCgoKT0+e0k1PVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik0zIDloMTgifV0sWyJwYXRoIix7ZDoiTTkgMjFWOSJ9XV19KTt2YXIgckIsUkplPWwoKCk9PntyQj1bWyJwYXRoIix7ZDoibTE2IDYtOC40MTQgOC41ODZhMiAyIDAgMCAwIDIuODI5IDIuODI5bDguNDE0LTguNTg2YTQgNCAwIDEgMC01LjY1Ny01LjY1N2wtOC4zNzkgOC41NTFhNiA2IDAgMSAwIDguNDg1IDguNDg1bDguMzc5LTguNTUxIn1dXX0pO3ZhciBhQixCSmU9bCgoKT0+e2FCPVtbInBhdGgiLHtkOiJNOCAyMXMtNC0zLTQtOSA0LTkgNC05In1dLFsicGF0aCIse2Q6Ik0xNiAzczQgMyA0IDktNCA5LTQgOSJ9XV19KTt2YXIgaUIsSEplPWwoKCk9PntpQj1bWyJwYXRoIix7ZDoiTTExIDE1aDIifV0sWyJwYXRoIix7ZDoiTTEyIDEydjMifV0sWyJwYXRoIix7ZDoiTTEyIDE5djMifV0sWyJwYXRoIix7ZDoiTTE1LjI4MiAxOWExIDEgMCAwIDAgLjk0OC0uNjhsMi4zNy02Ljk4OGE3IDcgMCAxIDAtMTMuMiAwbDIuMzcgNi45ODhhMSAxIDAgMCAwIC45NDguNjh6In1dLFsicGF0aCIse2Q6Ik05IDlhMyAzIDAgMSAxIDYgMCJ9XV19KTt2YXIgb0IscUplPWwoKCk9PntvQj1bWyJwYXRoIix7ZDoiTTUuOCAxMS4zIDIgMjJsMTAuNy0zLjc5In1dLFsicGF0aCIse2Q6Ik00IDNoLjAxIn1dLFsicGF0aCIse2Q6Ik0yMiA4aC4wMSJ9XSxbInBhdGgiLHtkOiJNMTUgMmguMDEifV0sWyJwYXRoIix7ZDoiTTIyIDIwaC4wMSJ9XSxbInBhdGgiLHtkOiJtMjIgMi0yLjI0Ljc1YTIuOSAyLjkgMCAwIDAtMS45NiAzLjEyYy4xLjg2LS41NyAxLjYzLTEuNDUgMS42M2gtLjM4Yy0uODYgMC0xLjYuNi0xLjc2IDEuNDRMMTQgMTAifV0sWyJwYXRoIix7ZDoibTIyIDEzLS44Mi0uMzNjLS44Ni0uMzQtMS44Mi4yLTEuOTggMS4xMWMtLjExLjctLjcyIDEuMjItMS40MyAxLjIySDE3In1dLFsicGF0aCIse2Q6Im0xMSAyIC4zMy44MmMuMzQuODYtLjIgMS44Mi0xLjExIDEuOThDOS41MiA0LjkgOSA1LjUyIDkgNi4yM1Y3In1dLFsicGF0aCIse2Q6Ik0xMSAxM2MxLjkzIDEuOTMgMi44MyA0LjE3IDIgNS0uODMuODMtMy4wNy0uMDctNS0yLTEuOTMtMS45My0yLjgzLTQuMTctMi01IC44My0uODMgMy4wNy4wNyA1IDJaIn1dXX0pO3ZhciBuQixqSmU9bCgoKT0+e25CPVtbInJlY3QiLHt4OiIxNCIseToiMyIsd2lkdGg6IjUiLGhlaWdodDoiMTgiLHJ4OiIxIn1dLFsicmVjdCIse3g6IjUiLHk6IjMiLHdpZHRoOiI1IixoZWlnaHQ6IjE4IixyeDoiMSJ9XV19KTt2YXIgc0IsVkplPWwoKCk9PntzQj1bWyJjaXJjbGUiLHtjeDoiMTEiLGN5OiI0IixyOiIyIn1dLFsiY2lyY2xlIix7Y3g6IjE4IixjeToiOCIscjoiMiJ9XSxbImNpcmNsZSIse2N4OiIyMCIsY3k6IjE2IixyOiIyIn1dLFsicGF0aCIse2Q6Ik05IDEwYTUgNSAwIDAgMSA1IDV2My41YTMuNSAzLjUgMCAwIDEtNi44NCAxLjA0NVE2LjUyIDE3LjQ4IDQuNDYgMTYuODRBMy41IDMuNSAwIDAgMSA1LjUgMTBaIn1dXX0pO3ZhciBsQixVSmU9bCgoKT0+e2xCPVtbInJlY3QiLHt3aWR0aDoiMTQiLGhlaWdodDoiMjAiLHg6IjUiLHk6IjIiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik0xNSAxNGguMDEifV0sWyJwYXRoIix7ZDoiTTkgNmg2In1dLFsicGF0aCIse2Q6Ik05IDEwaDYifV1dfSk7dmFyIE41LFdKZT1sKCgpPT57TjU9W1sicGF0aCIse2Q6Ik0xMyAyMWg4In1dLFsicGF0aCIse2Q6Ik0yMS4xNzQgNi44MTJhMSAxIDAgMCAwLTMuOTg2LTMuOTg3TDMuODQyIDE2LjE3NGEyIDIgMCAwIDAtLjUuODNsLTEuMzIxIDQuMzUyYS41LjUgMCAwIDAgLjYyMy42MjJsNC4zNTMtMS4zMmEyIDIgMCAwIDAgLjgzLS40OTd6In1dXX0pO3ZhciBjQixHSmU9bCgoKT0+e2NCPVtbInBhdGgiLHtkOiJtMTAgMTAtNi4xNTcgNi4xNjJhMiAyIDAgMCAwLS41LjgzM2wtMS4zMjIgNC4zNmEuNS41IDAgMCAwIC42MjIuNjI0bDQuMzU4LTEuMzIzYTIgMiAwIDAgMCAuODMtLjVMMTQgMTMuOTgyIn1dLFsicGF0aCIse2Q6Im0xMi44MjkgNy4xNzIgNC4zNTktNC4zNDZhMSAxIDAgMSAxIDMuOTg2IDMuOTg2bC00LjM1MyA0LjM1MyJ9XSxbInBhdGgiLHtkOiJtMiAyIDIwIDIwIn1dXX0pO3ZhciBkQixZSmU9bCgoKT0+e2RCPVtbInBhdGgiLHtkOiJNMTUuNzA3IDIxLjI5M2ExIDEgMCAwIDEtMS40MTQgMGwtMS41ODYtMS41ODZhMSAxIDAgMCAxIDAtMS40MTRsNS41ODYtNS41ODZhMSAxIDAgMCAxIDEuNDE0IDBsMS41ODYgMS41ODZhMSAxIDAgMCAxIDAgMS40MTR6In1dLFsicGF0aCIse2Q6Im0xOCAxMy0xLjM3NS02Ljg3NGExIDEgMCAwIDAtLjc0Ni0uNzc2TDMuMjM1IDIuMDI4YTEgMSAwIDAgMC0xLjIwNyAxLjIwN0w1LjM1IDE1Ljg3OWExIDEgMCAwIDAgLjc3Ni43NDZMMTMgMTgifV0sWyJwYXRoIix7ZDoibTIuMyAyLjMgNy4yODYgNy4yODYifV0sWyJjaXJjbGUiLHtjeDoiMTEiLGN5OiIxMSIscjoiMiJ9XV19KTt2YXIgRjUsWkplPWwoKCk9PntGNT1bWyJwYXRoIix7ZDoiTTIxLjE3NCA2LjgxMmExIDEgMCAwIDAtMy45ODYtMy45ODdMMy44NDIgMTYuMTc0YTIgMiAwIDAgMC0uNS44M2wtMS4zMjEgNC4zNTJhLjUuNSAwIDAgMCAuNjIzLjYyMmw0LjM1My0xLjMyYTIgMiAwIDAgMCAuODMtLjQ5N3oifV1dfSk7dmFyIHVCLFhKZT1sKCgpPT57dUI9W1sicGF0aCIse2Q6Ik0xMyAyMWg4In1dLFsicGF0aCIse2Q6Im0xNSA1IDQgNCJ9XSxbInBhdGgiLHtkOiJNMjEuMTc0IDYuODEyYTEgMSAwIDAgMC0zLjk4Ni0zLjk4N0wzLjg0MiAxNi4xNzRhMiAyIDAgMCAwLS41LjgzbC0xLjMyMSA0LjM1MmEuNS41IDAgMCAwIC42MjMuNjIybDQuMzUzLTEuMzJhMiAyIDAgMCAwIC44My0uNDk3eiJ9XV19KTt2YXIgZkIsUUplPWwoKCk9PntmQj1bWyJwYXRoIix7ZDoibTEwIDEwLTYuMTU3IDYuMTYyYTIgMiAwIDAgMC0uNS44MzNsLTEuMzIyIDQuMzZhLjUuNSAwIDAgMCAuNjIyLjYyNGw0LjM1OC0xLjMyM2EyIDIgMCAwIDAgLjgzLS41TDE0IDEzLjk4MiJ9XSxbInBhdGgiLHtkOiJtMTIuODI5IDcuMTcyIDQuMzU5LTQuMzQ2YTEgMSAwIDEgMSAzLjk4NiAzLjk4NmwtNC4zNTMgNC4zNTMifV0sWyJwYXRoIix7ZDoibTE1IDUgNCA0In1dLFsicGF0aCIse2Q6Im0yIDIgMjAgMjAifV1dfSk7dmFyIHBCLEtKZT1sKCgpPT57cEI9W1sicGF0aCIse2Q6Ik0xMyA3IDguNyAyLjdhMi40MSAyLjQxIDAgMCAwLTMuNCAwTDIuNyA1LjNhMi40MSAyLjQxIDAgMCAwIDAgMy40TDcgMTMifV0sWyJwYXRoIix7ZDoibTggNiAyLTIifV0sWyJwYXRoIix7ZDoibTE4IDE2IDItMiJ9XSxbInBhdGgiLHtkOiJtMTcgMTEgNC4zIDQuM2MuOTQuOTQuOTQgMi40NiAwIDMuNGwtMi42IDIuNmMtLjk0Ljk0LTIuNDYuOTQtMy40IDBMMTEgMTcifV0sWyJwYXRoIix7ZDoiTTIxLjE3NCA2LjgxMmExIDEgMCAwIDAtMy45ODYtMy45ODdMMy44NDIgMTYuMTc0YTIgMiAwIDAgMC0uNS44M2wtMS4zMjEgNC4zNTJhLjUuNSAwIDAgMCAuNjIzLjYyMmw0LjM1My0xLjMyYTIgMiAwIDAgMCAuODMtLjQ5N3oifV0sWyJwYXRoIix7ZDoibTE1IDUgNCA0In1dXX0pO3ZhciBoQixKSmU9bCgoKT0+e2hCPVtbInBhdGgiLHtkOiJNMjEuMTc0IDYuODEyYTEgMSAwIDAgMC0zLjk4Ni0zLjk4N0wzLjg0MiAxNi4xNzRhMiAyIDAgMCAwLS41LjgzbC0xLjMyMSA0LjM1MmEuNS41IDAgMCAwIC42MjMuNjIybDQuMzUzLTEuMzJhMiAyIDAgMCAwIC44My0uNDk3eiJ9XSxbInBhdGgiLHtkOiJtMTUgNSA0IDQifV1dfSk7dmFyIG1CLGVldD1sKCgpPT57bUI9W1sibGluZSIse3gxOiIxOSIseDI6IjUiLHkxOiI1Iix5MjoiMTkifV0sWyJjaXJjbGUiLHtjeDoiNi41IixjeToiNi41IixyOiIyLjUifV0sWyJjaXJjbGUiLHtjeDoiMTcuNSIsY3k6IjE3LjUiLHI6IjIuNSJ9XV19KTt2YXIgZ0IsdGV0PWwoKCk9PntnQj1bWyJwYXRoIix7ZDoiTTEwLjgzIDIuMzhhMiAyIDAgMCAxIDIuMzQgMGw4IDUuNzRhMiAyIDAgMCAxIC43MyAyLjI1bC0zLjA0IDkuMjZhMiAyIDAgMCAxLTEuOSAxLjM3SDcuMDRhMiAyIDAgMCAxLTEuOS0xLjM3TDIuMSAxMC4zN2EyIDIgMCAwIDEgLjczLTIuMjV6In1dXX0pO3ZhciB4QixyZXQ9bCgoKT0+e3hCPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjUiLHI6IjEifV0sWyJwYXRoIix7ZDoibTkgMjAgMy02IDMgNiJ9XSxbInBhdGgiLHtkOiJtNiA4IDYgMiA2LTIifV0sWyJwYXRoIix7ZDoiTTEyIDEwdjQifV1dfSk7dmFyIGJCLGFldD1sKCgpPT57YkI9W1sicGF0aCIse2Q6Ik0yMCAxMUg0In1dLFsicGF0aCIse2Q6Ik0yMCA3SDQifV0sWyJwYXRoIix7ZDoiTTcgMjFWNGExIDEgMCAwIDEgMS0xaDRhMSAxIDAgMCAxIDAgMTJINyJ9XV19KTt2YXIgdkIsaWV0PWwoKCk9Pnt2Qj1bWyJwYXRoIix7ZDoiTTEzIDJhOSA5IDAgMCAxIDkgOSJ9XSxbInBhdGgiLHtkOiJNMTMgNmE1IDUgMCAwIDEgNSA1In1dLFsicGF0aCIse2Q6Ik0xMy44MzIgMTYuNTY4YTEgMSAwIDAgMCAxLjIxMy0uMzAzbC4zNTUtLjQ2NUEyIDIgMCAwIDEgMTcgMTVoM2EyIDIgMCAwIDEgMiAydjNhMiAyIDAgMCAxLTIgMkExOCAxOCAwIDAgMSAyIDRhMiAyIDAgMCAxIDItMmgzYTIgMiAwIDAgMSAyIDJ2M2EyIDIgMCAwIDEtLjggMS42bC0uNDY4LjM1MWExIDEgMCAwIDAtLjI5MiAxLjIzMyAxNCAxNCAwIDAgMCA2LjM5MiA2LjM4NCJ9XV19KTt2YXIgeUIsb2V0PWwoKCk9Pnt5Qj1bWyJwYXRoIix7ZDoiTTE0IDZoOCJ9XSxbInBhdGgiLHtkOiJtMTggMiA0IDQtNCA0In1dLFsicGF0aCIse2Q6Ik0xMy44MzIgMTYuNTY4YTEgMSAwIDAgMCAxLjIxMy0uMzAzbC4zNTUtLjQ2NUEyIDIgMCAwIDEgMTcgMTVoM2EyIDIgMCAwIDEgMiAydjNhMiAyIDAgMCAxLTIgMkExOCAxOCAwIDAgMSAyIDRhMiAyIDAgMCAxIDItMmgzYTIgMiAwIDAgMSAyIDJ2M2EyIDIgMCAwIDEtLjggMS42bC0uNDY4LjM1MWExIDEgMCAwIDAtLjI5MiAxLjIzMyAxNCAxNCAwIDAgMCA2LjM5MiA2LjM4NCJ9XV19KTt2YXIgd0IsbmV0PWwoKCk9Pnt3Qj1bWyJwYXRoIix7ZDoiTTE2IDJ2Nmg2In1dLFsicGF0aCIse2Q6Im0yMiAyLTYgNiJ9XSxbInBhdGgiLHtkOiJNMTMuODMyIDE2LjU2OGExIDEgMCAwIDAgMS4yMTMtLjMwM2wuMzU1LS40NjVBMiAyIDAgMCAxIDE3IDE1aDNhMiAyIDAgMCAxIDIgMnYzYTIgMiAwIDAgMS0yIDJBMTggMTggMCAwIDEgMiA0YTIgMiAwIDAgMSAyLTJoM2EyIDIgMCAwIDEgMiAydjNhMiAyIDAgMCAxLS44IDEuNmwtLjQ2OC4zNTFhMSAxIDAgMCAwLS4yOTIgMS4yMzMgMTQgMTQgMCAwIDAgNi4zOTIgNi4zODQifV1dfSk7dmFyIE1CLHNldD1sKCgpPT57TUI9W1sicGF0aCIse2Q6Im0xNiAyIDYgNiJ9XSxbInBhdGgiLHtkOiJtMjIgMi02IDYifV0sWyJwYXRoIix7ZDoiTTEzLjgzMiAxNi41NjhhMSAxIDAgMCAwIDEuMjEzLS4zMDNsLjM1NS0uNDY1QTIgMiAwIDAgMSAxNyAxNWgzYTIgMiAwIDAgMSAyIDJ2M2EyIDIgMCAwIDEtMiAyQTE4IDE4IDAgMCAxIDIgNGEyIDIgMCAwIDEgMi0yaDNhMiAyIDAgMCAxIDIgMnYzYTIgMiAwIDAgMS0uOCAxLjZsLS40NjguMzUxYTEgMSAwIDAgMC0uMjkyIDEuMjMzIDE0IDE0IDAgMCAwIDYuMzkyIDYuMzg0In1dXX0pO3ZhciBrQixjZXQ9bCgoKT0+e2tCPVtbInBhdGgiLHtkOiJNMTAuMSAxMy45YTE0IDE0IDAgMCAwIDMuNzMyIDIuNjY4IDEgMSAwIDAgMCAxLjIxMy0uMzAzbC4zNTUtLjQ2NUEyIDIgMCAwIDEgMTcgMTVoM2EyIDIgMCAwIDEgMiAydjNhMiAyIDAgMCAxLTIgMiAxOCAxOCAwIDAgMS0xMi43MjgtNS4yNzIifV0sWyJwYXRoIix7ZDoiTTIyIDIgMiAyMiJ9XSxbInBhdGgiLHtkOiJNNC43NiAxMy41ODJBMTggMTggMCAwIDEgMiA0YTIgMiAwIDAgMSAyLTJoM2EyIDIgMCAwIDEgMiAydjNhMiAyIDAgMCAxLS44IDEuNmwtLjQ2OC4zNTFhMSAxIDAgMCAwLS4yOTIgMS4yMzMgMTQgMTQgMCAwIDAgLjI0NC40NzMifV1dfSk7dmFyIFNCLGRldD1sKCgpPT57U0I9W1sicGF0aCIse2Q6Im0xNiA4IDYtNiJ9XSxbInBhdGgiLHtkOiJNMjIgOFYyaC02In1dLFsicGF0aCIse2Q6Ik0xMy44MzIgMTYuNTY4YTEgMSAwIDAgMCAxLjIxMy0uMzAzbC4zNTUtLjQ2NUEyIDIgMCAwIDEgMTcgMTVoM2EyIDIgMCAwIDEgMiAydjNhMiAyIDAgMCAxLTIgMkExOCAxOCAwIDAgMSAyIDRhMiAyIDAgMCAxIDItMmgzYTIgMiAwIDAgMSAyIDJ2M2EyIDIgMCAwIDEtLjggMS42bC0uNDY4LjM1MWExIDEgMCAwIDAtLjI5MiAxLjIzMyAxNCAxNCAwIDAgMCA2LjM5MiA2LjM4NCJ9XV19KTt2YXIgekIsdWV0PWwoKCk9Pnt6Qj1bWyJwYXRoIix7ZDoiTTEzLjgzMiAxNi41NjhhMSAxIDAgMCAwIDEuMjEzLS4zMDNsLjM1NS0uNDY1QTIgMiAwIDAgMSAxNyAxNWgzYTIgMiAwIDAgMSAyIDJ2M2EyIDIgMCAwIDEtMiAyQTE4IDE4IDAgMCAxIDIgNGEyIDIgMCAwIDEgMi0yaDNhMiAyIDAgMCAxIDIgMnYzYTIgMiAwIDAgMS0uOCAxLjZsLS40NjguMzUxYTEgMSAwIDAgMC0uMjkyIDEuMjMzIDE0IDE0IDAgMCAwIDYuMzkyIDYuMzg0In1dXX0pO3ZhciBDQixmZXQ9bCgoKT0+e0NCPVtbImxpbmUiLHt4MToiOSIseDI6IjkiLHkxOiI0Iix5MjoiMjAifV0sWyJwYXRoIix7ZDoiTTQgN2MwLTEuNyAxLjMtMyAzLTNoMTMifV0sWyJwYXRoIix7ZDoiTTE4IDIwYy0xLjcgMC0zLTEuMy0zLTNWNCJ9XV19KTt2YXIgX0IscGV0PWwoKCk9PntfQj1bWyJwYXRoIix7ZDoiTTE4LjUgOGMtMS40IDAtMi42LS44LTMuMi0yQTYuODcgNi44NyAwIDAgMCAyIDl2MTFhMiAyIDAgMCAwIDIgMmgxNmEyIDIgMCAwIDAgMi0ydi04LjVDMjIgOS42IDIwLjQgOCAxOC41IDgifV0sWyJwYXRoIix7ZDoiTTIgMTRoMjAifV0sWyJwYXRoIix7ZDoiTTYgMTR2NCJ9XSxbInBhdGgiLHtkOiJNMTAgMTR2NCJ9XSxbInBhdGgiLHtkOiJNMTQgMTR2NCJ9XSxbInBhdGgiLHtkOiJNMTggMTR2NCJ9XV19KTt2YXIgVEIsaGV0PWwoKCk9PntUQj1bWyJwYXRoIix7ZDoibTE0IDEzLTguMzgxIDguMzhhMSAxIDAgMCAxLTMuMDAxLTNMMTEgOS45OTkifV0sWyJwYXRoIix7ZDoiTTE1Ljk3MyA0LjAyN0ExMyAxMyAwIDAgMCA1LjkwMiAyLjM3M2MtMS4zOTguMzQyLTEuMDkyIDIuMTU4LjI3NyAyLjYwMWExOS45IDE5LjkgMCAwIDEgNS44MjIgMy4wMjQifV0sWyJwYXRoIix7ZDoiTTE2LjAwMSAxMS45OTlhMTkuOSAxOS45IDAgMCAxIDMuMDI0IDUuODI0Yy40NDQgMS4zNjkgMi4yNiAxLjY3NiAyLjYwMy4yNzhBMTMgMTMgMCAwIDAgMjAgOC4wNjkifV0sWyJwYXRoIix7ZDoiTTE4LjM1MiAzLjM1MmExLjIwNSAxLjIwNSAwIDAgMC0xLjcwNCAwbC01LjI5NiA1LjI5NmExLjIwNSAxLjIwNSAwIDAgMCAwIDEuNzA0bDIuMjk2IDIuMjk2YTEuMjA1IDEuMjA1IDAgMCAwIDEuNzA0IDBsNS4yOTYtNS4yOTZhMS4yMDUgMS4yMDUgMCAwIDAgMC0xLjcwNHoifV1dfSk7dmFyIExCLG1ldD1sKCgpPT57TEI9W1sicGF0aCIse2Q6Ik0yMSA5VjZhMiAyIDAgMCAwLTItMkg0YTIgMiAwIDAgMC0yIDJ2MTBjMCAxLjEuOSAyIDIgMmg0In1dLFsicmVjdCIse3dpZHRoOiIxMCIsaGVpZ2h0OiI3Iix4OiIxMiIseToiMTMiLHJ4OiIyIn1dXX0pO3ZhciBEQixnZXQ9bCgoKT0+e0RCPVtbInBhdGgiLHtkOiJNMiAxMGg2VjQifV0sWyJwYXRoIix7ZDoibTIgNCA2IDYifV0sWyJwYXRoIix7ZDoiTTIxIDEwVjdhMiAyIDAgMCAwLTItMmgtNyJ9XSxbInBhdGgiLHtkOiJNMyAxNHYyYTIgMiAwIDAgMCAyIDJoMyJ9XSxbInJlY3QiLHt4OiIxMiIseToiMTQiLHdpZHRoOiIxMCIsaGVpZ2h0OiI3IixyeDoiMSJ9XV19KTt2YXIgQUIseGV0PWwoKCk9PntBQj1bWyJwYXRoIix7ZDoiTTExIDE3aDN2MmExIDEgMCAwIDAgMSAxaDJhMSAxIDAgMCAwIDEtMXYtM2EzLjE2IDMuMTYgMCAwIDAgMi0yaDFhMSAxIDAgMCAwIDEtMXYtMmExIDEgMCAwIDAtMS0xaC0xYTUgNSAwIDAgMC0yLTRWM2E0IDQgMCAwIDAtMy4yIDEuNmwtLjMuNEgxMWE2IDYgMCAwIDAtNiA2djFhNSA1IDAgMCAwIDIgNHYzYTEgMSAwIDAgMCAxIDFoMmExIDEgMCAwIDAgMS0xeiJ9XSxbInBhdGgiLHtkOiJNMTYgMTBoLjAxIn1dLFsicGF0aCIse2Q6Ik0yIDh2MWEyIDIgMCAwIDAgMiAyaDEifV1dfSk7dmFyIEVCLGJldD1sKCgpPT57RUI9W1sicGF0aCIse2Q6Ik0xNCAzdjExIn1dLFsicGF0aCIse2Q6Ik0xNCA5aC0zYTMgMyAwIDAgMSAwLTZoOSJ9XSxbInBhdGgiLHtkOiJNMTggM3YxMSJ9XSxbInBhdGgiLHtkOiJNMjIgMThIMmw0LTQifV0sWyJwYXRoIix7ZDoibTYgMjItNC00In1dXX0pO3ZhciAkQix2ZXQ9bCgoKT0+eyRCPVtbInBhdGgiLHtkOiJNMTAgM3YxMSJ9XSxbInBhdGgiLHtkOiJNMTAgOUg3YTEgMSAwIDAgMSAwLTZoOCJ9XSxbInBhdGgiLHtkOiJNMTQgM3YxMSJ9XSxbInBhdGgiLHtkOiJtMTggMTQgNCA0SDIifV0sWyJwYXRoIix7ZDoibTIyIDE4LTQgNCJ9XV19KTt2YXIgUEIseWV0PWwoKCk9PntQQj1bWyJwYXRoIix7ZDoiTTEzIDR2MTYifV0sWyJwYXRoIix7ZDoiTTE3IDR2MTYifV0sWyJwYXRoIix7ZDoiTTE5IDRIOS41YTQuNSA0LjUgMCAwIDAgMCA5SDEzIn1dXX0pO3ZhciBJQix3ZXQ9bCgoKT0+e0lCPVtbInBhdGgiLHtkOiJNMTggMTFoLTRhMSAxIDAgMCAwLTEgMXY1YTEgMSAwIDAgMCAxIDFoNCJ9XSxbInBhdGgiLHtkOiJNNiA3djEzYTIgMiAwIDAgMCAyIDJoOGEyIDIgMCAwIDAgMi0yVjcifV0sWyJyZWN0Iix7d2lkdGg6IjE2IixoZWlnaHQ6IjUiLHg6IjQiLHk6IjIiLHJ4OiIxIn1dXX0pO3ZhciBOQixNZXQ9bCgoKT0+e05CPVtbInBhdGgiLHtkOiJtMTAuNSAyMC41IDEwLTEwYTQuOTUgNC45NSAwIDEgMC03LTdsLTEwIDEwYTQuOTUgNC45NSAwIDEgMCA3IDdaIn1dLFsicGF0aCIse2Q6Im04LjUgOC41IDcgNyJ9XV19KTt2YXIgRkIsa2V0PWwoKCk9PntGQj1bWyJwYXRoIix7ZDoiTTEyIDE3djUifV0sWyJwYXRoIix7ZDoiTTE1IDkuMzRWN2ExIDEgMCAwIDEgMS0xIDIgMiAwIDAgMCAwLTRINy44OSJ9XSxbInBhdGgiLHtkOiJtMiAyIDIwIDIwIn1dLFsicGF0aCIse2Q6Ik05IDl2MS43NmEyIDIgMCAwIDEtMS4xMSAxLjc5bC0xLjc4LjlBMiAyIDAgMCAwIDUgMTUuMjRWMTZhMSAxIDAgMCAwIDEgMWgxMSJ9XV19KTt2YXIgT0IsemV0PWwoKCk9PntPQj1bWyJwYXRoIix7ZDoiTTEyIDE3djUifV0sWyJwYXRoIix7ZDoiTTkgMTAuNzZhMiAyIDAgMCAxLTEuMTEgMS43OWwtMS43OC45QTIgMiAwIDAgMCA1IDE1LjI0VjE2YTEgMSAwIDAgMCAxIDFoMTJhMSAxIDAgMCAwIDEtMXYtLjc2YTIgMiAwIDAgMC0xLjExLTEuNzlsLTEuNzgtLjlBMiAyIDAgMCAxIDE1IDEwLjc2VjdhMSAxIDAgMCAxIDEtMSAyIDIgMCAwIDAgMC00SDhhMiAyIDAgMCAwIDAgNCAxIDEgMCAwIDEgMSAxeiJ9XV19KTt2YXIgUkIsQ2V0PWwoKCk9PntSQj1bWyJwYXRoIix7ZDoibTEyIDktOC40MTQgOC40MTRBMiAyIDAgMCAwIDMgMTguODI4djEuMzQ0YTIgMiAwIDAgMS0uNTg2IDEuNDE0QTIgMiAwIDAgMSAzLjgyOCAyMWgxLjM0NGEyIDIgMCAwIDAgMS40MTQtLjU4NkwxNSAxMiJ9XSxbInBhdGgiLHtkOiJtMTggOSAuNC40YTEgMSAwIDEgMS0zIDNsLTMuOC0zLjhhMSAxIDAgMSAxIDMtM2wuNC40IDMuNC0zLjRhMSAxIDAgMSAxIDMgM3oifV0sWyJwYXRoIix7ZDoibTIgMjIgLjQxNC0uNDE0In1dXX0pO3ZhciBCQixfZXQ9bCgoKT0+e0JCPVtbInBhdGgiLHtkOiJtMTIgMTQtMSAxIn1dLFsicGF0aCIse2Q6Im0xMy43NSAxOC4yNS0xLjI1IDEuNDIifV0sWyJwYXRoIix7ZDoiTTE3Ljc3NSA1LjY1NGExNS42OCAxNS42OCAwIDAgMC0xMi4xMjEgMTIuMTIifV0sWyJwYXRoIix7ZDoiTTE4LjggOS4zYTEgMSAwIDAgMCAyLjEgNy43In1dLFsicGF0aCIse2Q6Ik0yMS45NjQgMjAuNzMyYTEgMSAwIDAgMS0xLjIzMiAxLjIzMmwtMTgtNWExIDEgMCAwIDEtLjY5NS0xLjIzMkExOS42OCAxOS42OCAwIDAgMSAxNS43MzIgMi4wMzdhMSAxIDAgMCAxIDEuMjMyLjY5NXoifV1dfSk7dmFyIEhCLFRldD1sKCgpPT57SEI9W1sicGF0aCIse2Q6Ik0yIDIyaDIwIn1dLFsicGF0aCIse2Q6Ik0zLjc3IDEwLjc3IDIgOWwyLTQuNSAxLjEuNTVjLjU1LjI4LjkuODQuOSAxLjQ1cy4zNSAxLjE3LjkgMS40NUw4IDguNWwzLTYgMS4wNS41M2EyIDIgMCAwIDEgMS4wOSAxLjUybC43MiA1LjRhMiAyIDAgMCAwIDEuMDkgMS41Mmw0LjQgMi4yYy40Mi4yMi43OC41NSAxLjAxLjk2bC42IDEuMDNjLjQ5Ljg4LS4wNiAxLjk4LTEuMDYgMi4xbC0xLjE4LjE1Yy0uNDcuMDYtLjk1LS4wMi0xLjM3LS4yNEw0LjI5IDExLjE1YTIgMiAwIDAgMS0uNTItLjM4WiJ9XV19KTt2YXIgcUIsTGV0PWwoKCk9PntxQj1bWyJwYXRoIix7ZDoiTTIgMjJoMjAifV0sWyJwYXRoIix7ZDoiTTYuMzYgMTcuNCA0IDE3bC0yLTQgMS4xLS41NWEyIDIgMCAwIDEgMS44IDBsLjE3LjFhMiAyIDAgMCAwIDEuOCAwTDggMTIgNSA2bC45LS40NWEyIDIgMCAwIDEgMi4wOS4ybDQuMDIgM2EyIDIgMCAwIDAgMi4xLjJsNC4xOS0yLjA2YTIuNDEgMi40MSAwIDAgMSAxLjczLS4xN0wyMSA3YTEuNCAxLjQgMCAwIDEgLjg3IDEuOTlsLS4zOC43NmMtLjIzLjQ2LS42Ljg0LTEuMDcgMS4wOEw3LjU4IDE3LjJhMiAyIDAgMCAxLTEuMjIuMThaIn1dXX0pO3ZhciBqQixEZXQ9bCgoKT0+e2pCPVtbInBhdGgiLHtkOiJNMTcuOCAxOS4yIDE2IDExbDMuNS0zLjVDMjEgNiAyMS41IDQgMjEgM2MtMS0uNS0zIDAtNC41IDEuNUwxMyA4IDQuOCA2LjJjLS41LS4xLS45LjEtMS4xLjVsLS4zLjVjLS4yLjUtLjEgMSAuMyAxLjNMOSAxMmwtMiAzSDRsLTEgMSAzIDIgMiAzIDEtMXYtM2wzLTIgMy41IDUuM2MuMy40LjguNSAxLjMuM2wuNS0uMmMuNC0uMy42LS43LjUtMS4yeiJ9XV19KTt2YXIgVkIsQWV0PWwoKCk9PntWQj1bWyJwYXRoIix7ZDoiTTUgNWEyIDIgMCAwIDEgMy4wMDgtMS43MjhsMTEuOTk3IDYuOTk4YTIgMiAwIDAgMSAuMDAzIDMuNDU4bC0xMiA3QTIgMiAwIDAgMSA1IDE5eiJ9XV19KTt2YXIgVUIsRWV0PWwoKCk9PntVQj1bWyJwYXRoIix7ZDoiTTkgMnY2In1dLFsicGF0aCIse2Q6Ik0xNSAydjYifV0sWyJwYXRoIix7ZDoiTTEyIDE3djUifV0sWyJwYXRoIix7ZDoiTTUgOGgxNCJ9XSxbInBhdGgiLHtkOiJNNiAxMVY4aDEydjNhNiA2IDAgMSAxLTEyIDBaIn1dXX0pO3ZhciBPNSwkZXQ9bCgoKT0+e081PVtbInBhdGgiLHtkOiJNNi4zIDIwLjNhMi40IDIuNCAwIDAgMCAzLjQgMEwxMiAxOGwtNi02LTIuMyAyLjNhMi40IDIuNCAwIDAgMCAwIDMuNFoifV0sWyJwYXRoIix7ZDoibTIgMjIgMy0zIn1dLFsicGF0aCIse2Q6Ik03LjUgMTMuNSAxMCAxMSJ9XSxbInBhdGgiLHtkOiJNMTAuNSAxNi41IDEzIDE0In1dLFsicGF0aCIse2Q6Im0xOCAzLTQgNGg2bC00IDQifV1dfSk7dmFyIFdCLFBldD1sKCgpPT57V0I9W1sicGF0aCIse2Q6Ik0xMiAyMnYtNSJ9XSxbInBhdGgiLHtkOiJNMTUgOFYyIn1dLFsicGF0aCIse2Q6Ik0xNyA4YTEgMSAwIDAgMSAxIDF2NGE0IDQgMCAwIDEtNCA0aC00YTQgNCAwIDAgMS00LTRWOWExIDEgMCAwIDEgMS0xeiJ9XSxbInBhdGgiLHtkOiJNOSA4VjIifV1dfSk7dmFyIEdCLElldD1sKCgpPT57R0I9W1sicGF0aCIse2Q6Ik01IDEyaDE0In1dLFsicGF0aCIse2Q6Ik0xMiA1djE0In1dXX0pO3ZhciBZQixOZXQ9bCgoKT0+e1lCPVtbInBhdGgiLHtkOiJNMyAydjFjMCAxIDIgMSAyIDJTMyA2IDMgN3MyIDEgMiAyLTIgMS0yIDIgMiAxIDIgMiJ9XSxbInBhdGgiLHtkOiJNMTggNmguMDEifV0sWyJwYXRoIix7ZDoiTTYgMThoLjAxIn1dLFsicGF0aCIse2Q6Ik0yMC44MyA4LjgzYTQgNCAwIDAgMC01LjY2LTUuNjZsLTEyIDEyYTQgNCAwIDEgMCA1LjY2IDUuNjZaIn1dLFsicGF0aCIse2Q6Ik0xOCAxMS42NlYyMmE0IDQgMCAwIDAgNC00VjYifV1dfSk7dmFyIFpCLEZldD1sKCgpPT57WkI9W1sicGF0aCIse2Q6Ik0yMCAzYTIgMiAwIDAgMSAyIDJ2NmExIDEgMCAwIDEtMjAgMFY1YTIgMiAwIDAgMSAyLTJ6In1dLFsicGF0aCIse2Q6Im04IDEwIDQgNCA0LTQifV1dfSk7dmFyIFhCLE9ldD1sKCgpPT57WEI9W1sicGF0aCIse2Q6Ik0xMyAxN2ExIDEgMCAxIDAtMiAwbC41IDQuNWEwLjUgMC41IDAgMCAwIDEgMHoiLGZpbGw6ImN1cnJlbnRDb2xvciJ9XSxbInBhdGgiLHtkOiJNMTYuODUgMTguNThhOSA5IDAgMSAwLTkuNyAwIn1dLFsicGF0aCIse2Q6Ik04IDE0YTUgNSAwIDEgMSA4IDAifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMSIscjoiMSIsZmlsbDoiY3VycmVudENvbG9yIn1dXX0pO3ZhciBRQixSZXQ9bCgoKT0+e1FCPVtbInBhdGgiLHtkOiJNMjIgMTRhOCA4IDAgMCAxLTggOCJ9XSxbInBhdGgiLHtkOiJNMTggMTF2LTFhMiAyIDAgMCAwLTItMmEyIDIgMCAwIDAtMiAyIn1dLFsicGF0aCIse2Q6Ik0xNCAxMFY5YTIgMiAwIDAgMC0yLTJhMiAyIDAgMCAwLTIgMnYxIn1dLFsicGF0aCIse2Q6Ik0xMCA5LjVWNGEyIDIgMCAwIDAtMi0yYTIgMiAwIDAgMC0yIDJ2MTAifV0sWyJwYXRoIix7ZDoiTTE4IDExYTIgMiAwIDEgMSA0IDB2M2E4IDggMCAwIDEtOCA4aC0yYy0yLjggMC00LjUtLjg2LTUuOTktMi4zNGwtMy42LTMuNmEyIDIgMCAwIDEgMi44My0yLjgyTDcgMTUifV1dfSk7dmFyIEtCLEJldD1sKCgpPT57S0I9W1sicGF0aCIse2Q6Ik0xMCA0LjVWNGEyIDIgMCAwIDAtMi40MS0xLjk1NyJ9XSxbInBhdGgiLHtkOiJNMTMuOSA4LjRhMiAyIDAgMCAwLTEuMjYtMS4yOTUifV0sWyJwYXRoIix7ZDoiTTIxLjcgMTYuMkE4IDggMCAwIDAgMjIgMTR2LTNhMiAyIDAgMSAwLTQgMHYtMWEyIDIgMCAwIDAtMy42My0xLjE1OCJ9XSxbInBhdGgiLHtkOiJtNyAxNS0xLjgtMS44YTIgMiAwIDAgMC0yLjc5IDIuODZMNiAxOS43YTcuNzQgNy43NCAwIDAgMCA2IDIuM2gyYTggOCAwIDAgMCA1LjY1Ny0yLjM0MyJ9XSxbInBhdGgiLHtkOiJNNiA2djgifV0sWyJwYXRoIix7ZDoibTIgMiAyMCAyMCJ9XV19KTt2YXIgSkIsSGV0PWwoKCk9PntKQj1bWyJwYXRoIix7ZDoiTTE4IDhhMiAyIDAgMCAwIDAtNCAyIDIgMCAwIDAtNCAwIDIgMiAwIDAgMC00IDAgMiAyIDAgMCAwLTQgMCAyIDIgMCAwIDAgMCA0In1dLFsicGF0aCIse2Q6Ik0xMCAyMiA5IDgifV0sWyJwYXRoIix7ZDoibTE0IDIyIDEtMTQifV0sWyJwYXRoIix7ZDoiTTIwIDhjLjUgMCAuOS40LjggMWwtMi42IDEyYy0uMS41LS43IDEtMS4yIDFIN2MtLjYgMC0xLjEtLjQtMS4yLTFMMy4yIDljLS4xLS42LjMtMSAuOC0xWiJ9XV19KTt2YXIgZUgscWV0PWwoKCk9PntlSD1bWyJwYXRoIix7ZDoiTTE4LjYgMTQuNGMuOC0uOC44LTIgMC0yLjhsLTguMS04LjFhNC45NSA0Ljk1IDAgMSAwLTcuMSA3LjFsOC4xIDguMWMuOS43IDIuMS43IDIuOS0uMVoifV0sWyJwYXRoIix7ZDoibTIyIDIyLTUuNS01LjUifV1dfSk7dmFyIHRILGpldD1sKCgpPT57dEg9W1sicGF0aCIse2Q6Ik0xOCA3YzAtNS4zMzMtOC01LjMzMy04IDAifV0sWyJwYXRoIix7ZDoiTTEwIDd2MTQifV0sWyJwYXRoIix7ZDoiTTYgMjFoMTIifV0sWyJwYXRoIix7ZDoiTTYgMTNoMTAifV1dfSk7dmFyIHJILFZldD1sKCgpPT57ckg9W1sicGF0aCIse2Q6Ik0xOC4zNiA2LjY0QTkgOSAwIDAgMSAyMC43NyAxNSJ9XSxbInBhdGgiLHtkOiJNNi4xNiA2LjE2YTkgOSAwIDEgMCAxMi42OCAxMi42OCJ9XSxbInBhdGgiLHtkOiJNMTIgMnY0In1dLFsicGF0aCIse2Q6Im0yIDIgMjAgMjAifV1dfSk7dmFyIGFILFVldD1sKCgpPT57YUg9W1sicGF0aCIse2Q6Ik0xMiAydjEwIn1dLFsicGF0aCIse2Q6Ik0xOC40IDYuNmE5IDkgMCAxIDEtMTIuNzcuMDQifV1dfSk7dmFyIGlILFdldD1sKCgpPT57aUg9W1sicGF0aCIse2Q6Ik0yIDNoMjAifV0sWyJwYXRoIix7ZDoiTTIxIDN2MTFhMiAyIDAgMCAxLTIgMkg1YTIgMiAwIDAgMS0yLTJWMyJ9XSxbInBhdGgiLHtkOiJtNyAyMSA1LTUgNSA1In1dXX0pO3ZhciBvSCxHZXQ9bCgoKT0+e29IPVtbInBhdGgiLHtkOiJNMTMuNSAyMkg3YTEgMSAwIDAgMS0xLTF2LTZhMSAxIDAgMCAxIDEtMWgxMGExIDEgMCAwIDEgMSAxdi41In1dLFsicGF0aCIse2Q6Im0xNiAxOSAyIDIgNC00In1dLFsicGF0aCIse2Q6Ik02IDE4SDRhMiAyIDAgMCAxLTItMnYtNWEyIDIgMCAwIDEgMi0yaDE2YTIgMiAwIDAgMSAyIDJ2MiJ9XSxbInBhdGgiLHtkOiJNNiA5VjNhMSAxIDAgMCAxIDEtMWgxMGExIDEgMCAwIDEgMSAxdjYifV1dfSk7dmFyIG5ILFlldD1sKCgpPT57bkg9W1sicGF0aCIse2Q6Ik0xMi41MzEgMjJIN2ExIDEgMCAwIDEtMS0xdi02YTEgMSAwIDAgMSAxLTFoNi4zNzcifV0sWyJwYXRoIix7ZDoibTE2LjUgMTYuNSA1IDUifV0sWyJwYXRoIix7ZDoibTE2LjUgMjEuNSA1LTUifV0sWyJwYXRoIix7ZDoiTTYgMThINGEyIDIgMCAwIDEtMi0ydi01YTIgMiAwIDAgMSAyLTJoMTZhMiAyIDAgMCAxIDIgMnYxLjUifV0sWyJwYXRoIix7ZDoiTTYgOVYzYTEgMSAwIDAgMSAxLTFoMTBhMSAxIDAgMCAxIDEgMXY2In1dXX0pO3ZhciBzSCxaZXQ9bCgoKT0+e3NIPVtbInBhdGgiLHtkOiJNNiAxOEg0YTIgMiAwIDAgMS0yLTJ2LTVhMiAyIDAgMCAxIDItMmgxNmEyIDIgMCAwIDEgMiAydjVhMiAyIDAgMCAxLTIgMmgtMiJ9XSxbInBhdGgiLHtkOiJNNiA5VjNhMSAxIDAgMCAxIDEtMWgxMGExIDEgMCAwIDEgMSAxdjYifV0sWyJyZWN0Iix7eDoiNiIseToiMTQiLHdpZHRoOiIxMiIsaGVpZ2h0OiI4IixyeDoiMSJ9XV19KTt2YXIgbEgsWGV0PWwoKCk9PntsSD1bWyJwYXRoIix7ZDoiTTUgNyAzIDUifV0sWyJwYXRoIix7ZDoiTTkgNlYzIn1dLFsicGF0aCIse2Q6Im0xMyA3IDItMiJ9XSxbImNpcmNsZSIse2N4OiI5IixjeToiMTMiLHI6IjMifV0sWyJwYXRoIix7ZDoiTTExLjgzIDEySDIwYTIgMiAwIDAgMSAyIDJ2NGEyIDIgMCAwIDEtMiAySDRhMiAyIDAgMCAxLTItMnYtNGEyIDIgMCAwIDEgMi0yaDIuMTcifV0sWyJwYXRoIix7ZDoiTTE2IDE2aDIifV1dfSk7dmFyIGNILFFldD1sKCgpPT57Y0g9W1sicmVjdCIse3dpZHRoOiIyMCIsaGVpZ2h0OiIxNiIseDoiMiIseToiNCIscng6IjIifV0sWyJwYXRoIix7ZDoiTTEyIDl2MTEifV0sWyJwYXRoIix7ZDoiTTIgOWgxM2EyIDIgMCAwIDEgMiAydjkifV1dfSk7dmFyIGRILEtldD1sKCgpPT57ZEg9W1sicGF0aCIse2Q6Ik0xNS4zOSA0LjM5YTEgMSAwIDAgMCAxLjY4LS40NzQgMi41IDIuNSAwIDEgMSAzLjAxNCAzLjAxNSAxIDEgMCAwIDAtLjQ3NCAxLjY4bDEuNjgzIDEuNjgyYTIuNDE0IDIuNDE0IDAgMCAxIDAgMy40MTRMMTkuNjEgMTUuMzlhMSAxIDAgMCAxLTEuNjgtLjQ3NCAyLjUgMi41IDAgMSAwLTMuMDE0IDMuMDE1IDEgMSAwIDAgMSAuNDc0IDEuNjhsLTEuNjgzIDEuNjgyYTIuNDE0IDIuNDE0IDAgMCAxLTMuNDE0IDBMOC42MSAxOS42MWExIDEgMCAwIDAtMS42OC40NzQgMi41IDIuNSAwIDEgMS0zLjAxNC0zLjAxNSAxIDEgMCAwIDAgLjQ3NC0xLjY4bC0xLjY4My0xLjY4MmEyLjQxNCAyLjQxNCAwIDAgMSAwLTMuNDE0TDQuMzkgOC42MWExIDEgMCAwIDEgMS42OC40NzQgMi41IDIuNSAwIDEgMCAzLjAxNC0zLjAxNSAxIDEgMCAwIDEtLjQ3NC0xLjY4bDEuNjgzLTEuNjgyYTIuNDE0IDIuNDE0IDAgMCAxIDMuNDE0IDB6In1dXX0pO3ZhciB1SCxKZXQ9bCgoKT0+e3VIPVtbInBhdGgiLHtkOiJNMi41IDE2Ljg4YTEgMSAwIDAgMS0uMzItMS40M2w5LTEzLjAyYTEgMSAwIDAgMSAxLjY0IDBsOSAxMy4wMWExIDEgMCAwIDEtLjMyIDEuNDRsLTguNTEgNC44NmEyIDIgMCAwIDEtMS45OCAwWiJ9XSxbInBhdGgiLHtkOiJNMTIgMnYyMCJ9XV19KTt2YXIgZkgsZXR0PWwoKCk9PntmSD1bWyJyZWN0Iix7d2lkdGg6IjUiLGhlaWdodDoiNSIseDoiMyIseToiMyIscng6IjEifV0sWyJyZWN0Iix7d2lkdGg6IjUiLGhlaWdodDoiNSIseDoiMTYiLHk6IjMiLHJ4OiIxIn1dLFsicmVjdCIse3dpZHRoOiI1IixoZWlnaHQ6IjUiLHg6IjMiLHk6IjE2IixyeDoiMSJ9XSxbInBhdGgiLHtkOiJNMjEgMTZoLTNhMiAyIDAgMCAwLTIgMnYzIn1dLFsicGF0aCIse2Q6Ik0yMSAyMXYuMDEifV0sWyJwYXRoIix7ZDoiTTEyIDd2M2EyIDIgMCAwIDEtMiAySDcifV0sWyJwYXRoIix7ZDoiTTMgMTJoLjAxIn1dLFsicGF0aCIse2Q6Ik0xMiAzaC4wMSJ9XSxbInBhdGgiLHtkOiJNMTIgMTZ2LjAxIn1dLFsicGF0aCIse2Q6Ik0xNiAxMmgxIn1dLFsicGF0aCIse2Q6Ik0yMSAxMnYuMDEifV0sWyJwYXRoIix7ZDoiTTEyIDIxdi0xIn1dXX0pO3ZhciBwSCx0dHQ9bCgoKT0+e3BIPVtbInBhdGgiLHtkOiJNMTMgMTZhMyAzIDAgMCAxIDIuMjQgNSJ9XSxbInBhdGgiLHtkOiJNMTggMTJoLjAxIn1dLFsicGF0aCIse2Q6Ik0xOCAyMWgtOGE0IDQgMCAwIDEtNC00IDcgNyAwIDAgMSA3LTdoLjJMOS42IDYuNGExIDEgMCAxIDEgMi44LTIuOEwxNS44IDdoLjJjMy4zIDAgNiAyLjcgNiA2djFhMiAyIDAgMCAxLTIgMmgtMWEzIDMgMCAwIDAtMyAzIn1dLFsicGF0aCIse2Q6Ik0yMCA4LjU0VjRhMiAyIDAgMSAwLTQgMHYzIn1dLFsicGF0aCIse2Q6Ik03LjYxMiAxMi41MjRhMyAzIDAgMSAwLTEuNiA0LjMifV1dfSk7dmFyIGhILHJ0dD1sKCgpPT57aEg9W1sicGF0aCIse2Q6Ik0xNiAzYTIgMiAwIDAgMC0yIDJ2NmEyIDIgMCAwIDAgMiAyIDEgMSAwIDAgMSAxIDF2MWEyIDIgMCAwIDEtMiAyIDEgMSAwIDAgMC0xIDF2MmExIDEgMCAwIDAgMSAxIDYgNiAwIDAgMCA2LTZWNWEyIDIgMCAwIDAtMi0yeiJ9XSxbInBhdGgiLHtkOiJNNSAzYTIgMiAwIDAgMC0yIDJ2NmEyIDIgMCAwIDAgMiAyIDEgMSAwIDAgMSAxIDF2MWEyIDIgMCAwIDEtMiAyIDEgMSAwIDAgMC0xIDF2MmExIDEgMCAwIDAgMSAxIDYgNiAwIDAgMCA2LTZWNWEyIDIgMCAwIDAtMi0yeiJ9XV19KTt2YXIgbUgsYXR0PWwoKCk9PnttSD1bWyJwYXRoIix7ZDoiTTE5LjA3IDQuOTNBMTAgMTAgMCAwIDAgNi45OSAzLjM0In1dLFsicGF0aCIse2Q6Ik00IDZoLjAxIn1dLFsicGF0aCIse2Q6Ik0yLjI5IDkuNjJBMTAgMTAgMCAxIDAgMjEuMzEgOC4zNSJ9XSxbInBhdGgiLHtkOiJNMTYuMjQgNy43NkE2IDYgMCAxIDAgOC4yMyAxNi42NyJ9XSxbInBhdGgiLHtkOiJNMTIgMThoLjAxIn1dLFsicGF0aCIse2Q6Ik0xNy45OSAxMS42NkE2IDYgMCAwIDEgMTUuNzcgMTYuNjcifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMiJ9XSxbInBhdGgiLHtkOiJtMTMuNDEgMTAuNTkgNS42Ni01LjY2In1dXX0pO3ZhciBnSCxpdHQ9bCgoKT0+e2dIPVtbInBhdGgiLHtkOiJNMTIgMTJoLjAxIn1dLFsicGF0aCIse2Q6Ik0xNCAxNS40NjQxYTQgNCAwIDAgMS00IDBMNy41Mjc4NiAxOS43NDU5NyBBIDEgMSAwIDAgMCA3Ljk5MzAzIDIxLjE2MjExIDEwIDEwIDAgMCAwIDE2LjAwNjk3IDIxLjE2MjExIDEgMSAwIDAgMCAxNi40NzIxNCAxOS43NDU5N3oifV0sWyJwYXRoIix7ZDoiTTE2IDEyYTQgNCAwIDAgMC0yLTMuNDY0bDIuNDcyLTQuMjgyYTEgMSAwIDAgMSAxLjQ2LS4zMDUgMTAgMTAgMCAwIDEgNC4wMDYgNi45NEExIDEgMCAwIDEgMjEgMTJ6In1dLFsicGF0aCIse2Q6Ik04IDEyYTQgNCAwIDAgMSAyLTMuNDY0TDcuNTI4IDQuMjU0YTEgMSAwIDAgMC0xLjQ2LS4zMDUgMTAgMTAgMCAwIDAtNC4wMDYgNi45NEExIDEgMCAwIDAgMyAxMnoifV1dfSk7dmFyIHhILG90dD1sKCgpPT57eEg9W1sicGF0aCIse2Q6Ik0zIDEyaDMuMjhhMSAxIDAgMCAxIC45NDguNjg0bDIuMjk4IDcuOTM0YS41LjUgMCAwIDAgLjk2LS4wNDRMMTMuODIgNC43NzFBMSAxIDAgMCAxIDE0Ljc5MiA0SDIxIn1dXX0pO3ZhciBiSCxudHQ9bCgoKT0+e2JIPVtbInBhdGgiLHtkOiJNNSAxNnYyIn1dLFsicGF0aCIse2Q6Ik0xOSAxNnYyIn1dLFsicmVjdCIse3dpZHRoOiIyMCIsaGVpZ2h0OiI4Iix4OiIyIix5OiI4IixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNMTggMTJoLjAxIn1dXX0pO3ZhciB2SCxzdHQ9bCgoKT0+e3ZIPVtbInBhdGgiLHtkOiJNMTYuMjQ3IDcuNzYxYTYgNiAwIDAgMSAwIDguNDc4In1dLFsicGF0aCIse2Q6Ik0xOS4wNzUgNC45MzNhMTAgMTAgMCAwIDEgMCAxNC4xMzQifV0sWyJwYXRoIix7ZDoiTTQuOTI1IDE5LjA2N2ExMCAxMCAwIDAgMSAwLTE0LjEzNCJ9XSxbInBhdGgiLHtkOiJNNy43NTMgMTYuMjM5YTYgNiAwIDAgMSAwLTguNDc4In1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjIifV1dfSk7dmFyIHlILGx0dD1sKCgpPT57eUg9W1sicGF0aCIse2Q6Ik00LjkgMTYuMUMxIDEyLjIgMSA1LjggNC45IDEuOSJ9XSxbInBhdGgiLHtkOiJNNy44IDQuN2E2LjE0IDYuMTQgMCAwIDAtLjggNy41In1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiOSIscjoiMiJ9XSxbInBhdGgiLHtkOiJNMTYuMiA0LjhjMiAyIDIuMjYgNS4xMS44IDcuNDcifV0sWyJwYXRoIix7ZDoiTTE5LjEgMS45YTkuOTYgOS45NiAwIDAgMSAwIDE0LjEifV0sWyJwYXRoIix7ZDoiTTkuNSAxOGg1In1dLFsicGF0aCIse2Q6Im04IDIyIDQtMTEgNCAxMSJ9XV19KTt2YXIgd0gsY3R0PWwoKCk9Pnt3SD1bWyJwYXRoIix7ZDoiTTIwLjM0IDE3LjUyYTEwIDEwIDAgMSAwLTIuODIgMi44MiJ9XSxbImNpcmNsZSIse2N4OiIxOSIsY3k6IjE5IixyOiIyIn1dLFsicGF0aCIse2Q6Im0xMy40MSAxMy40MSA0LjE4IDQuMTgifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMiJ9XV19KTt2YXIgTUgsZHR0PWwoKCk9PntNSD1bWyJwYXRoIix7ZDoiTTUgMTVoMTQifV0sWyJwYXRoIix7ZDoiTTUgOWgxNCJ9XSxbInBhdGgiLHtkOiJtMTQgMjAtNS01IDYtNi01LTUifV1dfSk7dmFyIGtILHV0dD1sKCgpPT57a0g9W1sicGF0aCIse2Q6Ik0yMiAxN2ExMCAxMCAwIDAgMC0yMCAwIn1dLFsicGF0aCIse2Q6Ik02IDE3YTYgNiAwIDAgMSAxMiAwIn1dLFsicGF0aCIse2Q6Ik0xMCAxN2EyIDIgMCAwIDEgNCAwIn1dXX0pO3ZhciBTSCxmdHQ9bCgoKT0+e1NIPVtbInBhdGgiLHtkOiJNMTMgMjJINGEyIDIgMCAwIDEgMC00aDEyIn1dLFsicGF0aCIse2Q6Ik0xMy4yMzYgMThhMyAzIDAgMCAwLTIuMi01In1dLFsicGF0aCIse2Q6Ik0xNiA5aC4wMSJ9XSxbInBhdGgiLHtkOiJNMTYuODIgMy45NGEzIDMgMCAxIDEgMy4yMzcgNC44NjhsMS44MTUgMi41ODdhMS41IDEuNSAwIDAgMS0xLjUgMi4xbC0yLjg3Mi0uNDUzYTMgMyAwIDAgMC0zLjUgMyJ9XSxbInBhdGgiLHtkOiJNMTcgNC45ODhhMyAzIDAgMSAwLTUuMiAyLjA1MkE3IDcgMCAwIDAgNCAxNC4wMTUgNCA0IDAgMCAwIDggMTgifV1dfSk7dmFyIHpILHB0dD1sKCgpPT57ekg9W1sicmVjdCIse3dpZHRoOiIxMiIsaGVpZ2h0OiIyMCIseDoiNiIseToiMiIscng6IjIifV0sWyJyZWN0Iix7d2lkdGg6IjIwIixoZWlnaHQ6IjEyIix4OiIyIix5OiI2IixyeDoiMiJ9XV19KTt2YXIgQ0gsaHR0PWwoKCk9PntDSD1bWyJwYXRoIix7ZDoiTTE1LjgyOCAxNC44MjlhNCA0IDAgMCAxLTUuNjU2IDAgNCA0IDAgMCAxIDAtNS42NTcgNCA0IDAgMCAxIDUuNjU2IDAifV0sWyJwYXRoIix7ZDoiTTQgM2ExIDEgMCAwIDEgMS0xIDEuMyAxLjMgMCAwIDEgLjcuMmwuOTMzLjZhMS4zIDEuMyAwIDAgMCAxLjQgMGwuOTM0LS42YTEuMyAxLjMgMCAwIDEgMS40IDBsLjkzMy42YTEuMyAxLjMgMCAwIDAgMS40IDBsLjkzMy0uNmExLjMgMS4zIDAgMCAxIDEuNCAwbC45MzQuNmExLjMgMS4zIDAgMCAwIDEuNCAwbC45MzMtLjZBMS4zIDEuMyAwIDAgMSAxOSAyYTEgMSAwIDAgMSAxIDF2MThhMSAxIDAgMCAxLTEgMSAxLjMgMS4zIDAgMCAxLS43LS4ybC0uOTMzLS42YTEuMyAxLjMgMCAwIDAtMS40IDBsLS45MzQuNmExLjMgMS4zIDAgMCAxLTEuNCAwbC0uOTMzLS42YTEuMyAxLjMgMCAwIDAtMS40IDBsLS45MzMuNmExLjMgMS4zIDAgMCAxLTEuNCAwbC0uOTM0LS42YTEuMyAxLjMgMCAwIDAtMS40IDBsLS45MzMuNmExLjMgMS4zIDAgMCAxLS43LjIgMSAxIDAgMCAxLTEtMXoifV0sWyJwYXRoIix7ZDoiTTggMTJoNSJ9XV19KTt2YXIgX0gsbXR0PWwoKCk9PntfSD1bWyJwYXRoIix7ZDoiTTEyIDd2MTAifV0sWyJwYXRoIix7ZDoiTTE0LjgyOCAxNC44MjlhNCA0IDAgMCAxLTUuNjU2IDAgNCA0IDAgMCAxIDAtNS42NTcgNCA0IDAgMCAxIDUuNjU2IDAifV0sWyJwYXRoIix7ZDoiTTQgM2ExIDEgMCAwIDEgMS0xIDEuMyAxLjMgMCAwIDEgLjcuMmwuOTMzLjZhMS4zIDEuMyAwIDAgMCAxLjQgMGwuOTM0LS42YTEuMyAxLjMgMCAwIDEgMS40IDBsLjkzMy42YTEuMyAxLjMgMCAwIDAgMS40IDBsLjkzMy0uNmExLjMgMS4zIDAgMCAxIDEuNCAwbC45MzQuNmExLjMgMS4zIDAgMCAwIDEuNCAwbC45MzMtLjZBMS4zIDEuMyAwIDAgMSAxOSAyYTEgMSAwIDAgMSAxIDF2MThhMSAxIDAgMCAxLTEgMSAxLjMgMS4zIDAgMCAxLS43LS4ybC0uOTMzLS42YTEuMyAxLjMgMCAwIDAtMS40IDBsLS45MzQuNmExLjMgMS4zIDAgMCAxLTEuNCAwbC0uOTMzLS42YTEuMyAxLjMgMCAwIDAtMS40IDBsLS45MzMuNmExLjMgMS4zIDAgMCAxLTEuNCAwbC0uOTM0LS42YTEuMyAxLjMgMCAwIDAtMS40IDBsLS45MzMuNmExLjMgMS4zIDAgMCAxLS43LjIgMSAxIDAgMCAxLTEtMXoifV1dfSk7dmFyIFRILGd0dD1sKCgpPT57VEg9W1sicGF0aCIse2Q6Ik00IDNhMSAxIDAgMCAxIDEtMSAxLjMgMS4zIDAgMCAxIC43LjJsLjkzMy42YTEuMyAxLjMgMCAwIDAgMS40IDBsLjkzNC0uNmExLjMgMS4zIDAgMCAxIDEuNCAwbC45MzMuNmExLjMgMS4zIDAgMCAwIDEuNCAwbC45MzMtLjZhMS4zIDEuMyAwIDAgMSAxLjQgMGwuOTM0LjZhMS4zIDEuMyAwIDAgMCAxLjQgMGwuOTMzLS42QTEuMyAxLjMgMCAwIDEgMTkgMmExIDEgMCAwIDEgMSAxdjE4YTEgMSAwIDAgMS0xIDEgMS4zIDEuMyAwIDAgMS0uNy0uMmwtLjkzMy0uNmExLjMgMS4zIDAgMCAwLTEuNCAwbC0uOTM0LjZhMS4zIDEuMyAwIDAgMS0xLjQgMGwtLjkzMy0uNmExLjMgMS4zIDAgMCAwLTEuNCAwbC0uOTMzLjZhMS4zIDEuMyAwIDAgMS0xLjQgMGwtLjkzNC0uNmExLjMgMS4zIDAgMCAwLTEuNCAwbC0uOTMzLjZhMS4zIDEuMyAwIDAgMS0uNy4yIDEgMSAwIDAgMS0xLTF6In1dLFsicGF0aCIse2Q6Ik04IDExaDgifV0sWyJwYXRoIix7ZDoiTTggN2g4In1dLFsicGF0aCIse2Q6Ik05IDdhNCA0IDAgMCAxIDAgOEg4bDMgMiJ9XV19KTt2YXIgTEgseHR0PWwoKCk9PntMSD1bWyJwYXRoIix7ZDoibTEyIDEwIDMtMyJ9XSxbInBhdGgiLHtkOiJNNCAzYTEgMSAwIDAgMSAxLTEgMS4zIDEuMyAwIDAgMSAuNy4ybC45MzMuNmExLjMgMS4zIDAgMCAwIDEuNCAwbC45MzQtLjZhMS4zIDEuMyAwIDAgMSAxLjQgMGwuOTMzLjZhMS4zIDEuMyAwIDAgMCAxLjQgMGwuOTMzLS42YTEuMyAxLjMgMCAwIDEgMS40IDBsLjkzNC42YTEuMyAxLjMgMCAwIDAgMS40IDBsLjkzMy0uNkExLjMgMS4zIDAgMCAxIDE5IDJhMSAxIDAgMCAxIDEgMXYxOGExIDEgMCAwIDEtMSAxIDEuMyAxLjMgMCAwIDEtLjctLjJsLS45MzMtLjZhMS4zIDEuMyAwIDAgMC0xLjQgMGwtLjkzNC42YTEuMyAxLjMgMCAwIDEtMS40IDBsLS45MzMtLjZhMS4zIDEuMyAwIDAgMC0xLjQgMGwtLjkzMy42YTEuMyAxLjMgMCAwIDEtMS40IDBsLS45MzQtLjZhMS4zIDEuMyAwIDAgMC0xLjQgMGwtLjkzMy42YTEuMyAxLjMgMCAwIDEtLjcuMiAxIDEgMCAwIDEtMS0xeiJ9XSxbInBhdGgiLHtkOiJNOSAxMWg2In1dLFsicGF0aCIse2Q6Ik05IDE1aDYifV0sWyJwYXRoIix7ZDoibTkgNyAzIDN2NyJ9XV19KTt2YXIgREgsYnR0PWwoKCk9PntESD1bWyJwYXRoIix7ZDoiTTEwIDE3VjkuNWExIDEgMCAwIDEgNSAwIn1dLFsicGF0aCIse2Q6Ik00IDNhMSAxIDAgMCAxIDEtMSAxLjMgMS4zIDAgMCAxIC43LjJsLjkzMy42YTEuMyAxLjMgMCAwIDAgMS40IDBsLjkzNC0uNmExLjMgMS4zIDAgMCAxIDEuNCAwbC45MzMuNmExLjMgMS4zIDAgMCAwIDEuNCAwbC45MzMtLjZhMS4zIDEuMyAwIDAgMSAxLjQgMGwuOTM0LjZhMS4zIDEuMyAwIDAgMCAxLjQgMGwuOTMzLS42QTEuMyAxLjMgMCAwIDEgMTkgMmExIDEgMCAwIDEgMSAxdjE4YTEgMSAwIDAgMS0xIDEgMS4zIDEuMyAwIDAgMS0uNy0uMmwtLjkzMy0uNmExLjMgMS4zIDAgMCAwLTEuNCAwbC0uOTM0LjZhMS4zIDEuMyAwIDAgMS0xLjQgMGwtLjkzMy0uNmExLjMgMS4zIDAgMCAwLTEuNCAwbC0uOTMzLjZhMS4zIDEuMyAwIDAgMS0xLjQgMGwtLjkzNC0uNmExLjMgMS4zIDAgMCAwLTEuNCAwbC0uOTMzLjZhMS4zIDEuMyAwIDAgMS0uNy4yIDEgMSAwIDAgMS0xLTF6In1dLFsicGF0aCIse2Q6Ik04IDEzaDUifV0sWyJwYXRoIix7ZDoiTTggMTdoNyJ9XV19KTt2YXIgQUgsdnR0PWwoKCk9PntBSD1bWyJwYXRoIix7ZDoiTTQgM2ExIDEgMCAwIDEgMS0xIDEuMyAxLjMgMCAwIDEgLjcuMmwuOTMzLjZhMS4zIDEuMyAwIDAgMCAxLjQgMGwuOTM0LS42YTEuMyAxLjMgMCAwIDEgMS40IDBsLjkzMy42YTEuMyAxLjMgMCAwIDAgMS40IDBsLjkzMy0uNmExLjMgMS4zIDAgMCAxIDEuNCAwbC45MzQuNmExLjMgMS4zIDAgMCAwIDEuNCAwbC45MzMtLjZBMS4zIDEuMyAwIDAgMSAxOSAyYTEgMSAwIDAgMSAxIDF2MThhMSAxIDAgMCAxLTEgMSAxLjMgMS4zIDAgMCAxLS43LS4ybC0uOTMzLS42YTEuMyAxLjMgMCAwIDAtMS40IDBsLS45MzQuNmExLjMgMS4zIDAgMCAxLTEuNCAwbC0uOTMzLS42YTEuMyAxLjMgMCAwIDAtMS40IDBsLS45MzMuNmExLjMgMS4zIDAgMCAxLTEuNCAwbC0uOTM0LS42YTEuMyAxLjMgMCAwIDAtMS40IDBsLS45MzMuNmExLjMgMS4zIDAgMCAxLS43LjIgMSAxIDAgMCAxLTEtMXoifV0sWyJwYXRoIix7ZDoiTTggMTFoNWEyIDIgMCAwIDAgMC00aC0zdjEwIn1dLFsicGF0aCIse2Q6Ik04IDE1aDUifV1dfSk7dmFyIEVILHl0dD1sKCgpPT57RUg9W1sicGF0aCIse2Q6Ik0xMyAxNkg4In1dLFsicGF0aCIse2Q6Ik0xNCA4SDgifV0sWyJwYXRoIix7ZDoiTTE2IDEySDgifV0sWyJwYXRoIix7ZDoiTTQgM2ExIDEgMCAwIDEgMS0xIDEuMyAxLjMgMCAwIDEgLjcuMmwuOTMzLjZhMS4zIDEuMyAwIDAgMCAxLjQgMGwuOTM0LS42YTEuMyAxLjMgMCAwIDEgMS40IDBsLjkzMy42YTEuMyAxLjMgMCAwIDAgMS40IDBsLjkzMy0uNmExLjMgMS4zIDAgMCAxIDEuNCAwbC45MzQuNmExLjMgMS4zIDAgMCAwIDEuNCAwbC45MzMtLjZBMS4zIDEuMyAwIDAgMSAxOSAyYTEgMSAwIDAgMSAxIDF2MThhMSAxIDAgMCAxLTEgMSAxLjMgMS4zIDAgMCAxLS43LS4ybC0uOTMzLS42YTEuMyAxLjMgMCAwIDAtMS40IDBsLS45MzQuNmExLjMgMS4zIDAgMCAxLTEuNCAwbC0uOTMzLS42YTEuMyAxLjMgMCAwIDAtMS40IDBsLS45MzMuNmExLjMgMS4zIDAgMCAxLTEuNCAwbC0uOTM0LS42YTEuMyAxLjMgMCAwIDAtMS40IDBsLS45MzMuNmExLjMgMS4zIDAgMCAxLS43LjIgMSAxIDAgMCAxLTEtMXoifV1dfSk7dmFyICRILHd0dD1sKCgpPT57JEg9W1sicGF0aCIse2Q6Ik0xMCAxMWg0In1dLFsicGF0aCIse2Q6Ik0xMCAxN1Y3aDUifV0sWyJwYXRoIix7ZDoiTTQgM2ExIDEgMCAwIDEgMS0xIDEuMyAxLjMgMCAwIDEgLjcuMmwuOTMzLjZhMS4zIDEuMyAwIDAgMCAxLjQgMGwuOTM0LS42YTEuMyAxLjMgMCAwIDEgMS40IDBsLjkzMy42YTEuMyAxLjMgMCAwIDAgMS40IDBsLjkzMy0uNmExLjMgMS4zIDAgMCAxIDEuNCAwbC45MzQuNmExLjMgMS4zIDAgMCAwIDEuNCAwbC45MzMtLjZBMS4zIDEuMyAwIDAgMSAxOSAyYTEgMSAwIDAgMSAxIDF2MThhMSAxIDAgMCAxLTEgMSAxLjMgMS4zIDAgMCAxLS43LS4ybC0uOTMzLS42YTEuMyAxLjMgMCAwIDAtMS40IDBsLS45MzQuNmExLjMgMS4zIDAgMCAxLTEuNCAwbC0uOTMzLS42YTEuMyAxLjMgMCAwIDAtMS40IDBsLS45MzMuNmExLjMgMS4zIDAgMCAxLTEuNCAwbC0uOTM0LS42YTEuMyAxLjMgMCAwIDAtMS40IDBsLS45MzMuNmExLjMgMS4zIDAgMCAxLS43LjIgMSAxIDAgMCAxLTEtMXoifV0sWyJwYXRoIix7ZDoiTTggMTVoNSJ9XV19KTt2YXIgUEgsTXR0PWwoKCk9PntQSD1bWyJwYXRoIix7ZDoiTTEwIDd2MTBhNSA1IDAgMCAwIDUtNSJ9XSxbInBhdGgiLHtkOiJtMTQgOC02IDMifV0sWyJwYXRoIix7ZDoiTTQgM2ExIDEgMCAwIDEgMS0xIDEuMyAxLjMgMCAwIDEgLjcuMmwuOTMzLjZhMS4zIDEuMyAwIDAgMCAxLjQgMGwuOTM0LS42YTEuMyAxLjMgMCAwIDEgMS40IDBsLjkzMy42YTEuMyAxLjMgMCAwIDAgMS40IDBsLjkzMy0uNmExLjMgMS4zIDAgMCAxIDEuNCAwbC45MzQuNmExLjMgMS4zIDAgMCAwIDEuNCAwbC45MzMtLjZBMS4zIDEuMyAwIDAgMSAxOSAyYTEgMSAwIDAgMSAxIDF2MThhMSAxIDAgMCAxLTEgMSAxLjMgMS4zIDAgMCAxLS43LS4ybC0uOTMzLS42YTEuMyAxLjMgMCAwIDAtMS40IDBsLS45MzQuNmExLjMgMS4zIDAgMCAxLTEuNCAwbC0uOTMzLS42YTEuMyAxLjMgMCAwIDAtMS40IDBsLS45MzMuNmExLjMgMS4zIDAgMCAxLTEuNCAwbC0uOTM0LS42YTEuMyAxLjMgMCAwIDAtMS40IDBsLS45MzMuNmExLjMgMS4zIDAgMCAxLS43LjIgMSAxIDAgMCAxLTEtMXoifV1dfSk7dmFyIElILGt0dD1sKCgpPT57SUg9W1sicGF0aCIse2Q6Ik0xMiAxN1Y3In1dLFsicGF0aCIse2Q6Ik0xNiA4aC02YTIgMiAwIDAgMCAwIDRoNGEyIDIgMCAwIDEgMCA0SDgifV0sWyJwYXRoIix7ZDoiTTQgM2ExIDEgMCAwIDEgMS0xIDEuMyAxLjMgMCAwIDEgLjcuMmwuOTMzLjZhMS4zIDEuMyAwIDAgMCAxLjQgMGwuOTM0LS42YTEuMyAxLjMgMCAwIDEgMS40IDBsLjkzMy42YTEuMyAxLjMgMCAwIDAgMS40IDBsLjkzMy0uNmExLjMgMS4zIDAgMCAxIDEuNCAwbC45MzQuNmExLjMgMS4zIDAgMCAwIDEuNCAwbC45MzMtLjZBMS4zIDEuMyAwIDAgMSAxOSAyYTEgMSAwIDAgMSAxIDF2MThhMSAxIDAgMCAxLTEgMSAxLjMgMS4zIDAgMCAxLS43LS4ybC0uOTMzLS42YTEuMyAxLjMgMCAwIDAtMS40IDBsLS45MzQuNmExLjMgMS4zIDAgMCAxLTEuNCAwbC0uOTMzLS42YTEuMyAxLjMgMCAwIDAtMS40IDBsLS45MzMuNmExLjMgMS4zIDAgMCAxLTEuNCAwbC0uOTM0LS42YTEuMyAxLjMgMCAwIDAtMS40IDBsLS45MzMuNmExLjMgMS4zIDAgMCAxLS43LjIgMSAxIDAgMCAxLTEtMXoifV1dfSk7dmFyIE5ILFN0dD1sKCgpPT57Tkg9W1sicGF0aCIse2Q6Ik0xNCA0djE2SDNhMSAxIDAgMCAxLTEtMVY1YTEgMSAwIDAgMSAxLTF6In1dLFsiY2lyY2xlIix7Y3g6IjE0IixjeToiMTIiLHI6IjgifV1dfSk7dmFyIFI1LHp0dD1sKCgpPT57UjU9W1sicmVjdCIse3dpZHRoOiIyMCIsaGVpZ2h0OiIxMiIseDoiMiIseToiNiIscng6IjIifV0sWyJwYXRoIix7ZDoiTTEyIDEyaC4wMSJ9XSxbInBhdGgiLHtkOiJNMTcgMTJoLjAxIn1dLFsicGF0aCIse2Q6Ik03IDEyaC4wMSJ9XV19KTt2YXIgRkgsQ3R0PWwoKCk9PntGSD1bWyJwYXRoIix7ZDoiTTIwIDZhMiAyIDAgMCAxIDIgMnY4YTIgMiAwIDAgMS0yIDJoLTRhMiAyIDAgMCAxLTEuNi0uOGwtMS42LTIuMTNhMSAxIDAgMCAwLTEuNiAwTDkuNiAxNy4yQTIgMiAwIDAgMSA4IDE4SDRhMiAyIDAgMCAxLTItMlY4YTIgMiAwIDAgMSAyLTJ6In1dXX0pO3ZhciBPSCxfdHQ9bCgoKT0+e09IPVtbInJlY3QiLHt3aWR0aDoiMjAiLGhlaWdodDoiMTIiLHg6IjIiLHk6IjYiLHJ4OiIyIn1dXX0pO3ZhciBSSCxUdHQ9bCgoKT0+e1JIPVtbInBhdGgiLHtkOiJNNyAxOUg0LjgxNWExLjgzIDEuODMgMCAwIDEtMS41Ny0uODgxIDEuNzg1IDEuNzg1IDAgMCAxLS4wMDQtMS43ODRMNy4xOTYgOS41In1dLFsicGF0aCIse2Q6Ik0xMSAxOWg4LjIwM2ExLjgzIDEuODMgMCAwIDAgMS41NTYtLjg5IDEuNzg0IDEuNzg0IDAgMCAwIDAtMS43NzVsLTEuMjI2LTIuMTIifV0sWyJwYXRoIix7ZDoibTE0IDE2LTMgMyAzIDMifV0sWyJwYXRoIix7ZDoiTTguMjkzIDEzLjU5NiA3LjE5NiA5LjUgMy4xIDEwLjU5OCJ9XSxbInBhdGgiLHtkOiJtOS4zNDQgNS44MTEgMS4wOTMtMS44OTJBMS44MyAxLjgzIDAgMCAxIDExLjk4NSAzYTEuNzg0IDEuNzg0IDAgMCAxIDEuNTQ2Ljg4OGwzLjk0MyA2Ljg0MyJ9XSxbInBhdGgiLHtkOiJtMTMuMzc4IDkuNjMzIDQuMDk2IDEuMDk4IDEuMDk3LTQuMDk2In1dXX0pO3ZhciBCSCxMdHQ9bCgoKT0+e0JIPVtbInJlY3QiLHt3aWR0aDoiMTIiLGhlaWdodDoiMjAiLHg6IjYiLHk6IjIiLHJ4OiIyIn1dXX0pO3ZhciBISCxEdHQ9bCgoKT0+e0hIPVtbInBhdGgiLHtkOiJtMTUgMTQgNS01LTUtNSJ9XSxbInBhdGgiLHtkOiJNMjAgOUg5LjVBNS41IDUuNSAwIDAgMCA0IDE0LjVBNS41IDUuNSAwIDAgMCA5LjUgMjBIMTMifV1dfSk7dmFyIHFILEF0dD1sKCgpPT57cUg9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTciLHI6IjEifV0sWyJwYXRoIix7ZDoiTTIxIDd2NmgtNiJ9XSxbInBhdGgiLHtkOiJNMyAxN2E5IDkgMCAwIDEgOS05IDkgOSAwIDAgMSA2IDIuM2wzIDIuNyJ9XV19KTt2YXIgakgsRXR0PWwoKCk9PntqSD1bWyJwYXRoIix7ZDoiTTIxIDd2NmgtNiJ9XSxbInBhdGgiLHtkOiJNMyAxN2E5IDkgMCAwIDEgOS05IDkgOSAwIDAgMSA2IDIuM2wzIDIuNyJ9XV19KTt2YXIgVkgsJHR0PWwoKCk9PntWSD1bWyJwYXRoIix7ZDoiTTIxIDEyYTkgOSAwIDAgMC05LTkgOS43NSA5Ljc1IDAgMCAwLTYuNzQgMi43NEwzIDgifV0sWyJwYXRoIix7ZDoiTTMgM3Y1aDUifV0sWyJwYXRoIix7ZDoiTTMgMTJhOSA5IDAgMCAwIDkgOSA5Ljc1IDkuNzUgMCAwIDAgNi43NC0yLjc0TDIxIDE2In1dLFsicGF0aCIse2Q6Ik0xNiAxNmg1djUifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMSJ9XV19KTt2YXIgVUgsUHR0PWwoKCk9PntVSD1bWyJwYXRoIix7ZDoiTTIxIDEyYTkgOSAwIDAgMC05LTkgOS43NSA5Ljc1IDAgMCAwLTYuNzQgMi43NEwzIDgifV0sWyJwYXRoIix7ZDoiTTMgM3Y1aDUifV0sWyJwYXRoIix7ZDoiTTMgMTJhOSA5IDAgMCAwIDkgOSA5Ljc1IDkuNzUgMCAwIDAgNi43NC0yLjc0TDIxIDE2In1dLFsicGF0aCIse2Q6Ik0xNiAxNmg1djUifV1dfSk7dmFyIFdILEl0dD1sKCgpPT57V0g9W1sicGF0aCIse2Q6Ik0yMSA4TDE4Ljc0IDUuNzRBOS43NSA5Ljc1IDAgMCAwIDEyIDNDMTEgMyAxMC4wMyAzLjE2IDkuMTMgMy40NyJ9XSxbInBhdGgiLHtkOiJNOCAxNkgzdjUifV0sWyJwYXRoIix7ZDoiTTMgMTJDMyA5LjUxIDQgNy4yNiA1LjY0IDUuNjQifV0sWyJwYXRoIix7ZDoibTMgMTYgMi4yNiAyLjI2QTkuNzUgOS43NSAwIDAgMCAxMiAyMWMyLjQ5IDAgNC43NC0xIDYuMzYtMi42NCJ9XSxbInBhdGgiLHtkOiJNMjEgMTJjMCAxLS4xNiAxLjk3LS40NyAyLjg3In1dLFsicGF0aCIse2Q6Ik0yMSAzdjVoLTUifV0sWyJwYXRoIix7ZDoiTTIyIDIyIDIgMiJ9XV19KTt2YXIgR0gsTnR0PWwoKCk9PntHSD1bWyJwYXRoIix7ZDoiTTMgMTJhOSA5IDAgMCAxIDktOSA5Ljc1IDkuNzUgMCAwIDEgNi43NCAyLjc0TDIxIDgifV0sWyJwYXRoIix7ZDoiTTIxIDN2NWgtNSJ9XSxbInBhdGgiLHtkOiJNMjEgMTJhOSA5IDAgMCAxLTkgOSA5Ljc1IDkuNzUgMCAwIDEtNi43NC0yLjc0TDMgMTYifV0sWyJwYXRoIix7ZDoiTTggMTZIM3Y1In1dXX0pO3ZhciBZSCxGdHQ9bCgoKT0+e1lIPVtbInBhdGgiLHtkOiJNNSA2YTQgNCAwIDAgMSA0LTRoNmE0IDQgMCAwIDEgNCA0djE0YTIgMiAwIDAgMS0yIDJIN2EyIDIgMCAwIDEtMi0yVjZaIn1dLFsicGF0aCIse2Q6Ik01IDEwaDE0In1dLFsicGF0aCIse2Q6Ik0xNSA3djYifV1dfSk7dmFyIFpILE90dD1sKCgpPT57Wkg9W1sicGF0aCIse2Q6Ik0xNyAzdjEwIn1dLFsicGF0aCIse2Q6Im0xMi42NyA1LjUgOC42NiA1In1dLFsicGF0aCIse2Q6Im0xMi42NyAxMC41IDguNjYtNSJ9XSxbInBhdGgiLHtkOiJNOSAxN2EyIDIgMCAwIDAtMi0ySDVhMiAyIDAgMCAwLTIgMnYyYTIgMiAwIDAgMCAyIDJoMmEyIDIgMCAwIDAgMi0ydi0yeiJ9XV19KTt2YXIgWEgsUnR0PWwoKCk9PntYSD1bWyJwYXRoIix7ZDoiTTQgN1Y0aDE2djMifV0sWyJwYXRoIix7ZDoiTTUgMjBoNiJ9XSxbInBhdGgiLHtkOiJNMTMgNCA4IDIwIn1dLFsicGF0aCIse2Q6Im0xNSAxNSA1IDUifV0sWyJwYXRoIix7ZDoibTIwIDE1LTUgNSJ9XV19KTt2YXIgUUgsQnR0PWwoKCk9PntRSD1bWyJwYXRoIix7ZDoibTE3IDIgNCA0LTQgNCJ9XSxbInBhdGgiLHtkOiJNMyAxMXYtMWE0IDQgMCAwIDEgNC00aDE0In1dLFsicGF0aCIse2Q6Im03IDIyLTQtNCA0LTQifV0sWyJwYXRoIix7ZDoiTTIxIDEzdjFhNCA0IDAgMCAxLTQgNEgzIn1dLFsicGF0aCIse2Q6Ik0xMSAxMGgxdjQifV1dfSk7dmFyIEtILEh0dD1sKCgpPT57S0g9W1sicGF0aCIse2Q6Im0yIDkgMy0zIDMgMyJ9XSxbInBhdGgiLHtkOiJNMTMgMThIN2EyIDIgMCAwIDEtMi0yVjYifV0sWyJwYXRoIix7ZDoibTIyIDE1LTMgMy0zLTMifV0sWyJwYXRoIix7ZDoiTTExIDZoNmEyIDIgMCAwIDEgMiAydjEwIn1dXX0pO3ZhciBKSCxxdHQ9bCgoKT0+e0pIPVtbInBhdGgiLHtkOiJtMTcgMiA0IDQtNCA0In1dLFsicGF0aCIse2Q6Ik0zIDExdi0xYTQgNCAwIDAgMSA0LTRoMTQifV0sWyJwYXRoIix7ZDoibTcgMjItNC00IDQtNCJ9XSxbInBhdGgiLHtkOiJNMjEgMTN2MWE0IDQgMCAwIDEtNCA0SDMifV1dfSk7dmFyIGVxLGp0dD1sKCgpPT57ZXE9W1sicGF0aCIse2Q6Ik0xNCAxNGExIDEgMCAwIDEgMSAxdjVhMSAxIDAgMCAxLTEgMSJ9XSxbInBhdGgiLHtkOiJNMTQgNGExIDEgMCAwIDEgMS0xIn1dLFsicGF0aCIse2Q6Ik0xNSAxMGExIDEgMCAwIDEtMS0xIn1dLFsicGF0aCIse2Q6Ik0xOSAxNGExIDEgMCAwIDEgMSAxdjVhMSAxIDAgMCAxLTEgMSJ9XSxbInBhdGgiLHtkOiJNMjEgNGExIDEgMCAwIDAtMS0xIn1dLFsicGF0aCIse2Q6Ik0yMSA5YTEgMSAwIDAgMS0xIDEifV0sWyJwYXRoIix7ZDoibTMgNyAzIDMgMy0zIn1dLFsicGF0aCIse2Q6Ik02IDEwVjVhMiAyIDAgMCAxIDItMmgyIn1dLFsicmVjdCIse3g6IjMiLHk6IjE0Iix3aWR0aDoiNyIsaGVpZ2h0OiI3IixyeDoiMSJ9XV19KTt2YXIgdHEsVnR0PWwoKCk9Pnt0cT1bWyJwYXRoIix7ZDoiTTE0IDRhMSAxIDAgMCAxIDEtMSJ9XSxbInBhdGgiLHtkOiJNMTUgMTBhMSAxIDAgMCAxLTEtMSJ9XSxbInBhdGgiLHtkOiJNMjEgNGExIDEgMCAwIDAtMS0xIn1dLFsicGF0aCIse2Q6Ik0yMSA5YTEgMSAwIDAgMS0xIDEifV0sWyJwYXRoIix7ZDoibTMgNyAzIDMgMy0zIn1dLFsicGF0aCIse2Q6Ik02IDEwVjVhMiAyIDAgMCAxIDItMmgyIn1dLFsicmVjdCIse3g6IjMiLHk6IjE0Iix3aWR0aDoiNyIsaGVpZ2h0OiI3IixyeDoiMSJ9XV19KTt2YXIgcnEsVXR0PWwoKCk9PntycT1bWyJwYXRoIix7ZDoibTEyIDE3LTUtNSA1LTUifV0sWyJwYXRoIix7ZDoiTTIyIDE4di0yYTQgNCAwIDAgMC00LTRINyJ9XSxbInBhdGgiLHtkOiJtNyAxNy01LTUgNS01In1dXX0pO3ZhciBhcSxXdHQ9bCgoKT0+e2FxPVtbInBhdGgiLHtkOiJNMTIgNmEyIDIgMCAwIDAtMy40MTQtMS40MTRsLTYgNmEyIDIgMCAwIDAgMCAyLjgyOGw2IDZBMiAyIDAgMCAwIDEyIDE4eiJ9XSxbInBhdGgiLHtkOiJNMjIgNmEyIDIgMCAwIDAtMy40MTQtMS40MTRsLTYgNmEyIDIgMCAwIDAgMCAyLjgyOGw2IDZBMiAyIDAgMCAwIDIyIDE4eiJ9XV19KTt2YXIgaXEsR3R0PWwoKCk9PntpcT1bWyJwYXRoIix7ZDoiTTIwIDE4di0yYTQgNCAwIDAgMC00LTRINCJ9XSxbInBhdGgiLHtkOiJtOSAxNy01LTUgNS01In1dXX0pO3ZhciBvcSxZdHQ9bCgoKT0+e29xPVtbInBhdGgiLHtkOiJNMTIgMTEuMjJDMTEgOS45OTcgMTAgOSAxMCA4YTIgMiAwIDAgMSA0IDBjMCAxLS45OTggMi4wMDItMi4wMSAzLjIyIn1dLFsicGF0aCIse2Q6Im0xMiAxOCAyLjU3LTMuNSJ9XSxbInBhdGgiLHtkOiJNNi4yNDMgOS4wMTZhNyA3IDAgMCAxIDExLjUwNy0uMDA5In1dLFsicGF0aCIse2Q6Ik05LjM1IDE0LjUzIDEyIDExLjIyIn1dLFsicGF0aCIse2Q6Ik05LjM1IDE0LjUzQzcuNzI4IDEyLjI0NiA2IDEwLjIyMSA2IDdhNiA1IDAgMCAxIDEyIDBjLS4wMDUgMy4yMi0xLjc3OCA1LjIzNS0zLjQzIDcuNWwzLjU1NyA0LjUyN2ExIDEgMCAwIDEtLjIwMyAxLjQzbC0xLjg5NCAxLjM2YTEgMSAwIDAgMS0xLjM4NC0uMjE1TDEyIDE4bC0yLjY3OSAzLjU5M2ExIDEgMCAwIDEtMS4zOS4yMTNsLTEuODY1LTEuMzUzYTEgMSAwIDAgMS0uMjAzLTEuNDIyeiJ9XV19KTt2YXIgbnEsWnR0PWwoKCk9PntucT1bWyJwYXRoIix7ZDoiTTEyIDE1djVzMy4wMy0uNTUgNC0yYzEuMDgtMS42MiAwLTUgMC01In1dLFsicGF0aCIse2Q6Ik00LjUgMTYuNWMtMS41IDEuMjYtMiA1LTIgNXMzLjc0LS41IDUtMmMuNzEtLjg0LjctMi4xMy0uMDktMi45MWEyLjE4IDIuMTggMCAwIDAtMi45MS0uMDkifV0sWyJwYXRoIix7ZDoiTTkgMTJhMjIgMjIgMCAwIDEgMi0zLjk1QTEyLjg4IDEyLjg4IDAgMCAxIDIyIDJjMCAyLjcyLS43OCA3LjUtNiAxMWEyMi40IDIyLjQgMCAwIDEtNCAyeiJ9XSxbInBhdGgiLHtkOiJNOSAxMkg0cy41NS0zLjAzIDItNGMxLjYyLTEuMDggNSAuMDUgNSAuMDUifV1dfSk7dmFyIHNxLFh0dD1sKCgpPT57c3E9W1sicGF0aCIse2Q6Im0xNSAxMyAzLjcwOCA3LjQxNiJ9XSxbInBhdGgiLHtkOiJNMyAxOWExNSAxNSAwIDAgMCAxOCAwIn1dLFsicGF0aCIse2Q6Im0zIDIgMy4yMSA5LjYzM0EyIDIgMCAwIDAgOC4xMDkgMTNIMTgifV0sWyJwYXRoIix7ZDoibTkgMTMtMy43MDggNy40MTYifV1dfSk7dmFyIGxxLFF0dD1sKCgpPT57bHE9W1sicGF0aCIse2Q6Ik02IDE5VjUifV0sWyJwYXRoIix7ZDoiTTEwIDE5VjYuOCJ9XSxbInBhdGgiLHtkOiJNMTQgMTl2LTcuOCJ9XSxbInBhdGgiLHtkOiJNMTggNXY0In1dLFsicGF0aCIse2Q6Ik0xOCAxOXYtNiJ9XSxbInBhdGgiLHtkOiJNMjIgMTlWOSJ9XSxbInBhdGgiLHtkOiJNMiAxOVY5YTQgNCAwIDAgMSA0LTRjMiAwIDQgMS4zMyA2IDRzNCA0IDYgNGE0IDQgMCAxIDAtMy02LjY1In1dXX0pO3ZhciBjcSxLdHQ9bCgoKT0+e2NxPVtbInBhdGgiLHtkOiJNMTcgMTBoLTFhNCA0IDAgMSAxIDQtNHYuNTM0In1dLFsicGF0aCIse2Q6Ik0xNyA2aDFhNCA0IDAgMCAxIDEuNDIgNy43NGwtMi4yOS44N2E2IDYgMCAwIDEtNS4zMzktMTAuNjhsMi4wNjktMS4zMSJ9XSxbInBhdGgiLHtkOiJNNC41IDE3YzIuOC0uNSA0LjQgMCA1LjUuOHMxLjggMi4yIDIuMyAzLjdjLTIgLjQtMy41LjQtNC44LS4zLTEuMi0uNi0yLjMtMS45LTMtNC4yIn1dLFsicGF0aCIse2Q6Ik05Ljc3IDEyQzQgMTUgMiAyMiAyIDIyIn1dLFsiY2lyY2xlIix7Y3g6IjE3IixjeToiOCIscjoiMiJ9XV19KTt2YXIgQjUsSnR0PWwoKCk9PntCNT1bWyJwYXRoIix7ZDoiTTE2LjQ2NiA3LjVDMTUuNjQzIDQuMjM3IDEzLjk1MiAyIDEyIDIgOS4yMzkgMiA3IDYuNDc3IDcgMTJzMi4yMzkgMTAgNSAxMGMuMzQyIDAgLjY3Ny0uMDY5IDEtLjIifV0sWyJwYXRoIix7ZDoibTE1LjE5NCAxMy43MDcgMy44MTQgMS44Ni0xLjg2IDMuODE0In1dLFsicGF0aCIse2Q6Ik0xOSAxNS41N2MtMS44MDQuODg1LTQuMjc0IDEuNDMtNyAxLjQzLTUuNTIzIDAtMTAtMi4yMzktMTAtNXM0LjQ3Ny01IDEwLTVjNC44MzggMCA4Ljg3MyAxLjcxOCA5LjggNCJ9XV19KTt2YXIgZHEsZXJ0PWwoKCk9PntkcT1bWyJwYXRoIix7ZDoiTTEyIDd2NiJ9XSxbInBhdGgiLHtkOiJNMTIgOWgyIn1dLFsicGF0aCIse2Q6Ik0zIDEyYTkgOSAwIDEgMCA5LTkgOS43NCA5Ljc0IDAgMCAwLTYuNzQgMi43NEwzIDgifV0sWyJwYXRoIix7ZDoiTTMgM3Y1aDUifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxNSIscjoiMiJ9XV19KTt2YXIgdXEsdHJ0PWwoKCk9Pnt1cT1bWyJwYXRoIix7ZDoiTTIwIDlWN2EyIDIgMCAwIDAtMi0yaC02In1dLFsicGF0aCIse2Q6Im0xNSAyLTMgMyAzIDMifV0sWyJwYXRoIix7ZDoiTTIwIDEzdjVhMiAyIDAgMCAxLTIgMkg2YTIgMiAwIDAgMS0yLTJWN2EyIDIgMCAwIDEgMi0yaDIifV1dfSk7dmFyIGZxLHJydD1sKCgpPT57ZnE9W1sicGF0aCIse2Q6Ik0zIDEyYTkgOSAwIDEgMCA5LTkgOS43NSA5Ljc1IDAgMCAwLTYuNzQgMi43NEwzIDgifV0sWyJwYXRoIix7ZDoiTTMgM3Y1aDUifV1dfSk7dmFyIHBxLGFydD1sKCgpPT57cHE9W1sicGF0aCIse2Q6Ik0yMSAxMmE5IDkgMCAxIDEtOS05YzIuNTIgMCA0LjkzIDEgNi43NCAyLjc0TDIxIDgifV0sWyJwYXRoIix7ZDoiTTIxIDN2NWgtNSJ9XV19KTt2YXIgaHEsaXJ0PWwoKCk9PntocT1bWyJwYXRoIix7ZDoiTTEyIDVINmEyIDIgMCAwIDAtMiAydjMifV0sWyJwYXRoIix7ZDoibTkgOCAzLTMtMy0zIn1dLFsicGF0aCIse2Q6Ik00IDE0djRhMiAyIDAgMCAwIDIgMmgxMmEyIDIgMCAwIDAgMi0yVjdhMiAyIDAgMCAwLTItMmgtMiJ9XV19KTt2YXIgbXEsb3J0PWwoKCk9PnttcT1bWyJjaXJjbGUiLHtjeDoiNiIsY3k6IjE5IixyOiIzIn1dLFsicGF0aCIse2Q6Ik05IDE5aDguNWEzLjUgMy41IDAgMCAwIDAtN2gtMTFhMy41IDMuNSAwIDAgMSAwLTdIMTUifV0sWyJjaXJjbGUiLHtjeDoiMTgiLGN5OiI1IixyOiIzIn1dXX0pO3ZhciBncSxucnQ9bCgoKT0+e2dxPVtbImNpcmNsZSIse2N4OiI2IixjeToiMTkiLHI6IjMifV0sWyJwYXRoIix7ZDoiTTkgMTloOC41Yy40IDAgLjktLjEgMS4zLS4yIn1dLFsicGF0aCIse2Q6Ik01LjIgNS4yQTMuNSAzLjUzIDAgMCAwIDYuNSAxMkgxMiJ9XSxbInBhdGgiLHtkOiJtMiAyIDIwIDIwIn1dLFsicGF0aCIse2Q6Ik0yMSAxNS4zYTMuNSAzLjUgMCAwIDAtMy4zLTMuMyJ9XSxbInBhdGgiLHtkOiJNMTUgNWgtNC4zIn1dLFsiY2lyY2xlIix7Y3g6IjE4IixjeToiNSIscjoiMyJ9XV19KTt2YXIgeHEsc3J0PWwoKCk9Pnt4cT1bWyJyZWN0Iix7d2lkdGg6IjIwIixoZWlnaHQ6IjgiLHg6IjIiLHk6IjE0IixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNNi4wMSAxOEg2In1dLFsicGF0aCIse2Q6Ik0xMC4wMSAxOEgxMCJ9XSxbInBhdGgiLHtkOiJNMTUgMTB2NCJ9XSxbInBhdGgiLHtkOiJNMTcuODQgNy4xN2E0IDQgMCAwIDAtNS42NiAwIn1dLFsicGF0aCIse2Q6Ik0yMC42NiA0LjM0YTggOCAwIDAgMC0xMS4zMSAwIn1dXX0pO3ZhciBINSxscnQ9bCgoKT0+e0g1PVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik0zIDEyaDE4In1dXX0pO3ZhciBxNSxjcnQ9bCgoKT0+e3E1PVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik0yMSA5SDMifV0sWyJwYXRoIix7ZDoiTTIxIDE1SDMifV1dfSk7dmFyIGJxLGRydD1sKCgpPT57YnE9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoiTTIxIDcuNUgzIn1dLFsicGF0aCIse2Q6Ik0yMSAxMkgzIn1dLFsicGF0aCIse2Q6Ik0yMSAxNi41SDMifV1dfSk7dmFyIHZxLHVydD1sKCgpPT57dnE9W1sicGF0aCIse2Q6Ik00IDExYTkgOSAwIDAgMSA5IDkifV0sWyJwYXRoIix7ZDoiTTQgNGExNiAxNiAwIDAgMSAxNiAxNiJ9XSxbImNpcmNsZSIse2N4OiI1IixjeToiMTkiLHI6IjEifV1dfSk7dmFyIHlxLGZydD1sKCgpPT57eXE9W1sicGF0aCIse2Q6Ik0xMCAxNXYtMyJ9XSxbInBhdGgiLHtkOiJNMTQgMTV2LTMifV0sWyJwYXRoIix7ZDoiTTE4IDE1di0zIn1dLFsicGF0aCIse2Q6Ik0yIDhWNCJ9XSxbInBhdGgiLHtkOiJNMjIgNkgyIn1dLFsicGF0aCIse2Q6Ik0yMiA4VjQifV0sWyJwYXRoIix7ZDoiTTYgMTV2LTMifV0sWyJyZWN0Iix7eDoiMiIseToiMTIiLHdpZHRoOiIyMCIsaGVpZ2h0OiI4IixyeDoiMiJ9XV19KTt2YXIgd3EscHJ0PWwoKCk9Pnt3cT1bWyJwYXRoIix7ZDoiTTIxLjMgMTUuM2EyLjQgMi40IDAgMCAxIDAgMy40bC0yLjYgMi42YTIuNCAyLjQgMCAwIDEtMy40IDBMMi43IDguN2EyLjQxIDIuNDEgMCAwIDEgMC0zLjRsMi42LTIuNmEyLjQxIDIuNDEgMCAwIDEgMy40IDBaIn1dLFsicGF0aCIse2Q6Im0xNC41IDEyLjUgMi0yIn1dLFsicGF0aCIse2Q6Im0xMS41IDkuNSAyLTIifV0sWyJwYXRoIix7ZDoibTguNSA2LjUgMi0yIn1dLFsicGF0aCIse2Q6Im0xNy41IDE1LjUgMi0yIn1dXX0pO3ZhciBNcSxocnQ9bCgoKT0+e01xPVtbInBhdGgiLHtkOiJNNiAxMWg4YTQgNCAwIDAgMCAwLThIOXYxOCJ9XSxbInBhdGgiLHtkOiJNNiAxNWg4In1dXX0pO3ZhciBrcSxtcnQ9bCgoKT0+e2txPVtbInBhdGgiLHtkOiJNMTAgMnYxNSJ9XSxbInBhdGgiLHtkOiJNNyAyMmE0IDQgMCAwIDEtNC00IDEgMSAwIDAgMSAxLTFoMTZhMSAxIDAgMCAxIDEgMSA0IDQgMCAwIDEtNCA0eiJ9XSxbInBhdGgiLHtkOiJNOS4xNTkgMi40NmExIDEgMCAwIDEgMS41MjEtLjE5M2w5Ljk3NyA4Ljk4QTEgMSAwIDAgMSAyMCAxM0g0YTEgMSAwIDAgMS0uODI0LTEuNTY3eiJ9XV19KTt2YXIgU3EsZ3J0PWwoKCk9PntTcT1bWyJwYXRoIix7ZDoiTTcgMjFoMTAifV0sWyJwYXRoIix7ZDoiTTEyIDIxYTkgOSAwIDAgMCA5LTlIM2E5IDkgMCAwIDAgOSA5WiJ9XSxbInBhdGgiLHtkOiJNMTEuMzggMTJhMi40IDIuNCAwIDAgMS0uNC00Ljc3IDIuNCAyLjQgMCAwIDEgMy4yLTIuNzcgMi40IDIuNCAwIDAgMSAzLjQ3LS42MyAyLjQgMi40IDAgMCAxIDMuMzcgMy4zNyAyLjQgMi40IDAgMCAxLTEuMSAzLjcgMi41MSAyLjUxIDAgMCAxIC4wMyAxLjEifV0sWyJwYXRoIix7ZDoibTEzIDEyIDQtNCJ9XSxbInBhdGgiLHtkOiJNMTAuOSA3LjI1QTMuOTkgMy45OSAwIDAgMCA0IDEwYzAgLjczLjIgMS40MS41NCAyIn1dXX0pO3ZhciB6cSx4cnQ9bCgoKT0+e3pxPVtbInBhdGgiLHtkOiJtMi4zNyAxMS4yMjMgOC4zNzItNi43NzdhMiAyIDAgMCAxIDIuNTE2IDBsOC4zNzEgNi43NzcifV0sWyJwYXRoIix7ZDoiTTIxIDE1YTEgMSAwIDAgMSAxIDF2MmExIDEgMCAwIDEtMSAxaC01LjI1In1dLFsicGF0aCIse2Q6Ik0zIDE1YTEgMSAwIDAgMC0xIDF2MmExIDEgMCAwIDAgMSAxaDkifV0sWyJwYXRoIix7ZDoibTYuNjcgMTUgNi4xMyA0LjZhMiAyIDAgMCAwIDIuOC0uNGwzLjE1LTQuMiJ9XSxbInJlY3QiLHt3aWR0aDoiMjAiLGhlaWdodDoiNCIseDoiMiIseToiMTEiLHJ4OiIxIn1dXX0pO3ZhciBDcSxicnQ9bCgoKT0+e0NxPVtbInBhdGgiLHtkOiJNNCAxMGE3LjMxIDcuMzEgMCAwIDAgMTAgMTBaIn1dLFsicGF0aCIse2Q6Im05IDE1IDMtMyJ9XSxbInBhdGgiLHtkOiJNMTcgMTNhNiA2IDAgMCAwLTYtNiJ9XSxbInBhdGgiLHtkOiJNMjEgMTNBMTAgMTAgMCAwIDAgMTEgMyJ9XV19KTt2YXIgX3EsdnJ0PWwoKCk9PntfcT1bWyJwYXRoIix7ZDoibTEzLjUgNi41LTMuMTQ4LTMuMTQ4YTEuMjA1IDEuMjA1IDAgMCAwLTEuNzA0IDBMNi4zNTIgNS42NDhhMS4yMDUgMS4yMDUgMCAwIDAgMCAxLjcwNEw5LjUgMTAuNSJ9XSxbInBhdGgiLHtkOiJNMTYuNSA3LjUgMTkgNSJ9XSxbInBhdGgiLHtkOiJtMTcuNSAxMC41IDMuMTQ4IDMuMTQ4YTEuMjA1IDEuMjA1IDAgMCAxIDAgMS43MDRsLTIuMjk2IDIuMjk2YTEuMjA1IDEuMjA1IDAgMCAxLTEuNzA0IDBMMTMuNSAxNC41In1dLFsicGF0aCIse2Q6Ik05IDIxYTYgNiAwIDAgMC02LTYifV0sWyJwYXRoIix7ZDoiTTkuMzUyIDEwLjY0OGExLjIwNSAxLjIwNSAwIDAgMCAwIDEuNzA0bDIuMjk2IDIuMjk2YTEuMjA1IDEuMjA1IDAgMCAwIDEuNzA0IDBsNC4yOTYtNC4yOTZhMS4yMDUgMS4yMDUgMCAwIDAgMC0xLjcwNGwtMi4yOTYtMi4yOTZhMS4yMDUgMS4yMDUgMCAwIDAtMS43MDQgMHoifV1dfSk7dmFyIFRxLHlydD1sKCgpPT57VHE9W1sicGF0aCIse2Q6Im0yMCAxOS41LTUuNSAxLjIifV0sWyJwYXRoIix7ZDoiTTE0LjUgNHYxMS4yMmExIDEgMCAwIDAgMS4yNDIuOTdMMjAgMTUuMiJ9XSxbInBhdGgiLHtkOiJtMi45NzggMTkuMzUxIDUuNTQ5LTEuMzYzQTIgMiAwIDAgMCAxMCAxNlYyIn1dLFsicGF0aCIse2Q6Ik0yMCAxMCA0IDEzLjUifV1dfSk7dmFyIExxLHdydD1sKCgpPT57THE9W1sicGF0aCIse2Q6Ik0xMyAxM0g4YTEgMSAwIDAgMC0xIDF2NyJ9XSxbInBhdGgiLHtkOiJNMTQgOGgxIn1dLFsicGF0aCIse2Q6Ik0xNyAyMXYtNCJ9XSxbInBhdGgiLHtkOiJtMiAyIDIwIDIwIn1dLFsicGF0aCIse2Q6Ik0yMC40MSAyMC40MUEyIDIgMCAwIDEgMTkgMjFINWEyIDIgMCAwIDEtMi0yVjVhMiAyIDAgMCAxIC41OS0xLjQxIn1dLFsicGF0aCIse2Q6Ik0yOS41IDExLjVzNSA1IDQgNSJ9XSxbInBhdGgiLHtkOiJNOSAzaDYuMmEyIDIgMCAwIDEgMS40LjZsMy44IDMuOGEyIDIgMCAwIDEgLjYgMS40VjE1In1dXX0pO3ZhciBEcSxNcnQ9bCgoKT0+e0RxPVtbInBhdGgiLHtkOiJNMTAgMnYzYTEgMSAwIDAgMCAxIDFoNSJ9XSxbInBhdGgiLHtkOiJNMTggMTh2LTZhMSAxIDAgMCAwLTEtMWgtNmExIDEgMCAwIDAtMSAxdjYifV0sWyJwYXRoIix7ZDoiTTE4IDIySDRhMiAyIDAgMCAxLTItMlY2In1dLFsicGF0aCIse2Q6Ik04IDE4YTIgMiAwIDAgMS0yLTJWNGEyIDIgMCAwIDEgMi0yaDkuMTcyYTIgMiAwIDAgMSAxLjQxNC41ODZsMi44MjggMi44MjhBMiAyIDAgMCAxIDIyIDYuODI4VjE2YTIgMiAwIDAgMS0yLjAxIDJ6In1dXX0pO3ZhciBBcSxrcnQ9bCgoKT0+e0FxPVtbInBhdGgiLHtkOiJNMTUuMiAzYTIgMiAwIDAgMSAxLjQuNmwzLjggMy44YTIgMiAwIDAgMSAuNiAxLjRWMTlhMiAyIDAgMCAxLTIgMkg1YTIgMiAwIDAgMS0yLTJWNWEyIDIgMCAwIDEgMi0yeiJ9XSxbInBhdGgiLHtkOiJNMTcgMjF2LTdhMSAxIDAgMCAwLTEtMUg4YTEgMSAwIDAgMC0xIDF2NyJ9XSxbInBhdGgiLHtkOiJNNyAzdjRhMSAxIDAgMCAwIDEgMWg3In1dXX0pO3ZhciBqNSxTcnQ9bCgoKT0+e2o1PVtbInBhdGgiLHtkOiJNNSA3djExYTEgMSAwIDAgMCAxIDFoMTEifV0sWyJwYXRoIix7ZDoiTTUuMjkzIDE4LjcwNyAxMSAxMyJ9XSxbImNpcmNsZSIse2N4OiIxOSIsY3k6IjE5IixyOiIyIn1dLFsiY2lyY2xlIix7Y3g6IjUiLGN5OiI1IixyOiIyIn1dXX0pO3ZhciBFcSx6cnQ9bCgoKT0+e0VxPVtbInBhdGgiLHtkOiJNMTIgM3YxOCJ9XSxbInBhdGgiLHtkOiJtMTkgOCAzIDhhNSA1IDAgMCAxLTYgMHpWNyJ9XSxbInBhdGgiLHtkOiJNMyA3aDFhMTcgMTcgMCAwIDAgOC0yIDE3IDE3IDAgMCAwIDggMmgxIn1dLFsicGF0aCIse2Q6Im01IDggMyA4YTUgNSAwIDAgMS02IDB6VjcifV0sWyJwYXRoIix7ZDoiTTcgMjFoMTAifV1dfSk7dmFyICRxLENydD1sKCgpPT57JHE9W1sicGF0aCIse2Q6Ik0xMiAzSDVhMiAyIDAgMCAwLTIgMnYxNGEyIDIgMCAwIDAgMiAyaDE0YTIgMiAwIDAgMCAyLTJ2LTcifV0sWyJwYXRoIix7ZDoiTTE0IDE1SDl2LTUifV0sWyJwYXRoIix7ZDoiTTE2IDNoNXY1In1dLFsicGF0aCIse2Q6Ik0yMSAzIDkgMTUifV1dfSk7dmFyIFBxLF9ydD1sKCgpPT57UHE9W1sicGF0aCIse2Q6Ik0zIDdWNWEyIDIgMCAwIDEgMi0yaDIifV0sWyJwYXRoIix7ZDoiTTE3IDNoMmEyIDIgMCAwIDEgMiAydjIifV0sWyJwYXRoIix7ZDoiTTIxIDE3djJhMiAyIDAgMCAxLTIgMmgtMiJ9XSxbInBhdGgiLHtkOiJNNyAyMUg1YTIgMiAwIDAgMS0yLTJ2LTIifV0sWyJwYXRoIix7ZDoiTTggN3YxMCJ9XSxbInBhdGgiLHtkOiJNMTIgN3YxMCJ9XSxbInBhdGgiLHtkOiJNMTcgN3YxMCJ9XV19KTt2YXIgSXEsVHJ0PWwoKCk9PntJcT1bWyJwYXRoIix7ZDoiTTMgN1Y1YTIgMiAwIDAgMSAyLTJoMiJ9XSxbInBhdGgiLHtkOiJNMTcgM2gyYTIgMiAwIDAgMSAyIDJ2MiJ9XSxbInBhdGgiLHtkOiJNMjEgMTd2MmEyIDIgMCAwIDEtMiAyaC0yIn1dLFsicGF0aCIse2Q6Ik03IDIxSDVhMiAyIDAgMCAxLTItMnYtMiJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxIn1dLFsicGF0aCIse2Q6Ik0xOC45NDQgMTIuMzNhMSAxIDAgMCAwIDAtLjY2IDcuNSA3LjUgMCAwIDAtMTMuODg4IDAgMSAxIDAgMCAwIDAgLjY2IDcuNSA3LjUgMCAwIDAgMTMuODg4IDAifV1dfSk7dmFyIE5xLExydD1sKCgpPT57TnE9W1sicGF0aCIse2Q6Ik0zIDdWNWEyIDIgMCAwIDEgMi0yaDIifV0sWyJwYXRoIix7ZDoiTTE3IDNoMmEyIDIgMCAwIDEgMiAydjIifV0sWyJwYXRoIix7ZDoiTTIxIDE3djJhMiAyIDAgMCAxLTIgMmgtMiJ9XSxbInBhdGgiLHtkOiJNNyAyMUg1YTIgMiAwIDAgMS0yLTJ2LTIifV0sWyJwYXRoIix7ZDoiTTggMTRzMS41IDIgNCAyIDQtMiA0LTIifV0sWyJwYXRoIix7ZDoiTTkgOWguMDEifV0sWyJwYXRoIix7ZDoiTTE1IDloLjAxIn1dXX0pO3ZhciBGcSxEcnQ9bCgoKT0+e0ZxPVtbInBhdGgiLHtkOiJNMTcgM2gyYTIgMiAwIDAgMSAyIDJ2MiJ9XSxbInBhdGgiLHtkOiJNMjEgMTd2MmEyIDIgMCAwIDEtMiAyaC0yIn1dLFsicGF0aCIse2Q6Ik0zIDdWNWEyIDIgMCAwIDEgMi0yaDIifV0sWyJwYXRoIix7ZDoiTTcgMjFINWEyIDIgMCAwIDEtMi0ydi0yIn1dLFsicGF0aCIse2Q6Ik03LjgyOCAxMy4wN0EzIDMgMCAwIDEgMTIgOC43NjRhMyAzIDAgMCAxIDQuMTcyIDQuMzA2bC0zLjQ0NyAzLjYyYTEgMSAwIDAgMS0xLjQ0OSAweiJ9XV19KTt2YXIgT3EsQXJ0PWwoKCk9PntPcT1bWyJwYXRoIix7ZDoiTTMgN1Y1YTIgMiAwIDAgMSAyLTJoMiJ9XSxbInBhdGgiLHtkOiJNMTcgM2gyYTIgMiAwIDAgMSAyIDJ2MiJ9XSxbInBhdGgiLHtkOiJNMjEgMTd2MmEyIDIgMCAwIDEtMiAyaC0yIn1dLFsicGF0aCIse2Q6Ik03IDIxSDVhMiAyIDAgMCAxLTItMnYtMiJ9XSxbInBhdGgiLHtkOiJNNyAxMmgxMCJ9XV19KTt2YXIgUnEsRXJ0PWwoKCk9PntScT1bWyJwYXRoIix7ZDoiTTE3IDEydjRhMSAxIDAgMCAxLTEgMWgtNCJ9XSxbInBhdGgiLHtkOiJNMTcgM2gyYTIgMiAwIDAgMSAyIDJ2MiJ9XSxbInBhdGgiLHtkOiJNMTcgOFY3In1dLFsicGF0aCIse2Q6Ik0yMSAxN3YyYTIgMiAwIDAgMS0yIDJoLTIifV0sWyJwYXRoIix7ZDoiTTMgN1Y1YTIgMiAwIDAgMSAyLTJoMiJ9XSxbInBhdGgiLHtkOiJNNyAxN2guMDEifV0sWyJwYXRoIix7ZDoiTTcgMjFINWEyIDIgMCAwIDEtMi0ydi0yIn1dLFsicmVjdCIse3g6IjciLHk6IjciLHdpZHRoOiI1IixoZWlnaHQ6IjUiLHJ4OiIxIn1dXX0pO3ZhciBCcSwkcnQ9bCgoKT0+e0JxPVtbInBhdGgiLHtkOiJNMyA3VjVhMiAyIDAgMCAxIDItMmgyIn1dLFsicGF0aCIse2Q6Ik0xNyAzaDJhMiAyIDAgMCAxIDIgMnYyIn1dLFsicGF0aCIse2Q6Ik0yMSAxN3YyYTIgMiAwIDAgMS0yIDJoLTIifV0sWyJwYXRoIix7ZDoiTTcgMjFINWEyIDIgMCAwIDEtMi0ydi0yIn1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjMifV0sWyJwYXRoIix7ZDoibTE2IDE2LTEuOS0xLjkifV1dfSk7dmFyIEhxLFBydD1sKCgpPT57SHE9W1sicGF0aCIse2Q6Ik0zIDdWNWEyIDIgMCAwIDEgMi0yaDIifV0sWyJwYXRoIix7ZDoiTTE3IDNoMmEyIDIgMCAwIDEgMiAydjIifV0sWyJwYXRoIix7ZDoiTTIxIDE3djJhMiAyIDAgMCAxLTIgMmgtMiJ9XSxbInBhdGgiLHtkOiJNNyAyMUg1YTIgMiAwIDAgMS0yLTJ2LTIifV0sWyJwYXRoIix7ZDoiTTcgOGg4In1dLFsicGF0aCIse2Q6Ik03IDEyaDEwIn1dLFsicGF0aCIse2Q6Ik03IDE2aDYifV1dfSk7dmFyIHFxLElydD1sKCgpPT57cXE9W1sicGF0aCIse2Q6Ik0zIDdWNWEyIDIgMCAwIDEgMi0yaDIifV0sWyJwYXRoIix7ZDoiTTE3IDNoMmEyIDIgMCAwIDEgMiAydjIifV0sWyJwYXRoIix7ZDoiTTIxIDE3djJhMiAyIDAgMCAxLTIgMmgtMiJ9XSxbInBhdGgiLHtkOiJNNyAyMUg1YTIgMiAwIDAgMS0yLTJ2LTIifV1dfSk7dmFyIGpxLE5ydD1sKCgpPT57anE9W1sicGF0aCIse2Q6Ik0xNCAyMXYtM2EyIDIgMCAwIDAtNCAwdjMifV0sWyJwYXRoIix7ZDoiTTE4IDV2MTYifV0sWyJwYXRoIix7ZDoibTQgNiA3LjEwNi0zLjc5YTIgMiAwIDAgMSAxLjc4OCAwTDIwIDYifV0sWyJwYXRoIix7ZDoibTYgMTEtMy41MiAyLjE0N2ExIDEgMCAwIDAtLjQ4Ljg1NFYxOWEyIDIgMCAwIDAgMiAyaDE2YTIgMiAwIDAgMCAyLTJ2LTVhMSAxIDAgMCAwLS40OC0uODUzTDE4IDExIn1dLFsicGF0aCIse2Q6Ik02IDV2MTYifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiI5IixyOiIyIn1dXX0pO3ZhciBWcSxGcnQ9bCgoKT0+e1ZxPVtbInBhdGgiLHtkOiJNNS40MiA5LjQyIDggMTIifV0sWyJjaXJjbGUiLHtjeDoiNCIsY3k6IjgiLHI6IjIifV0sWyJwYXRoIix7ZDoibTE0IDYtOC41OCA4LjU4In1dLFsiY2lyY2xlIix7Y3g6IjQiLGN5OiIxNiIscjoiMiJ9XSxbInBhdGgiLHtkOiJNMTAuOCAxNC44IDE0IDE4In1dLFsicGF0aCIse2Q6Ik0xNiAxMmgtMiJ9XSxbInBhdGgiLHtkOiJNMjIgMTJoLTIifV1dfSk7dmFyIFVxLE9ydD1sKCgpPT57VXE9W1siY2lyY2xlIix7Y3g6IjYiLGN5OiI2IixyOiIzIn1dLFsicGF0aCIse2Q6Ik04LjEyIDguMTIgMTIgMTIifV0sWyJwYXRoIix7ZDoiTTIwIDQgOC4xMiAxNS44OCJ9XSxbImNpcmNsZSIse2N4OiI2IixjeToiMTgiLHI6IjMifV0sWyJwYXRoIix7ZDoiTTE0LjggMTQuOCAyMCAyMCJ9XV19KTt2YXIgV3EsUnJ0PWwoKCk9PntXcT1bWyJwYXRoIix7ZDoiTTIxIDRoLTMuNWwyIDExLjA1In1dLFsicGF0aCIse2Q6Ik02Ljk1IDE3aDUuMTQyYy41MjMgMCAuOTUtLjQwNiAxLjA2My0uOTE2YTYuNSA2LjUgMCAwIDEgNS4zNDUtNS4wMDkifV0sWyJjaXJjbGUiLHtjeDoiMTkuNSIsY3k6IjE3LjUiLHI6IjIuNSJ9XSxbImNpcmNsZSIse2N4OiI0LjUiLGN5OiIxNy41IixyOiIyLjUifV1dfSk7dmFyIEdxLEJydD1sKCgpPT57R3E9W1sicGF0aCIse2Q6Ik0xMyAzSDRhMiAyIDAgMCAwLTIgMnYxMGEyIDIgMCAwIDAgMiAyaDE2YTIgMiAwIDAgMCAyLTJ2LTMifV0sWyJwYXRoIix7ZDoiTTggMjFoOCJ9XSxbInBhdGgiLHtkOiJNMTIgMTd2NCJ9XSxbInBhdGgiLHtkOiJtMjIgMy01IDUifV0sWyJwYXRoIix7ZDoibTE3IDMgNSA1In1dXX0pO3ZhciBZcSxIcnQ9bCgoKT0+e1lxPVtbInBhdGgiLHtkOiJNMTMgM0g0YTIgMiAwIDAgMC0yIDJ2MTBhMiAyIDAgMCAwIDIgMmgxNmEyIDIgMCAwIDAgMi0ydi0zIn1dLFsicGF0aCIse2Q6Ik04IDIxaDgifV0sWyJwYXRoIix7ZDoiTTEyIDE3djQifV0sWyJwYXRoIix7ZDoibTE3IDggNS01In1dLFsicGF0aCIse2Q6Ik0xNyAzaDV2NSJ9XV19KTt2YXIgWnEscXJ0PWwoKCk9PntacT1bWyJwYXRoIix7ZDoiTTE1IDEyaC01In1dLFsicGF0aCIse2Q6Ik0xNSA4aC01In1dLFsicGF0aCIse2Q6Ik0xOSAxN1Y1YTIgMiAwIDAgMC0yLTJINCJ9XSxbInBhdGgiLHtkOiJNOCAyMWgxMmEyIDIgMCAwIDAgMi0ydi0xYTEgMSAwIDAgMC0xLTFIMTFhMSAxIDAgMCAwLTEgMXYxYTIgMiAwIDEgMS00IDBWNWEyIDIgMCAxIDAtNCAwdjJhMSAxIDAgMCAwIDEgMWgzIn1dXX0pO3ZhciBYcSxqcnQ9bCgoKT0+e1hxPVtbInBhdGgiLHtkOiJNMTkgMTdWNWEyIDIgMCAwIDAtMi0ySDQifV0sWyJwYXRoIix7ZDoiTTggMjFoMTJhMiAyIDAgMCAwIDItMnYtMWExIDEgMCAwIDAtMS0xSDExYTEgMSAwIDAgMC0xIDF2MWEyIDIgMCAxIDEtNCAwVjVhMiAyIDAgMSAwLTQgMHYyYTEgMSAwIDAgMCAxIDFoMyJ9XV19KTt2YXIgUXEsVnJ0PWwoKCk9PntRcT1bWyJjaXJjbGUiLHtjeDoiMTEiLGN5OiIxMSIscjoiOCJ9XSxbInBhdGgiLHtkOiJtMjEgMjEtNC4zLTQuMyJ9XSxbInBhdGgiLHtkOiJNMTEgN3Y0In1dLFsicGF0aCIse2Q6Ik0xMSAxNWguMDEifV1dfSk7dmFyIEtxLFVydD1sKCgpPT57S3E9W1sicGF0aCIse2Q6Im04IDExIDIgMiA0LTQifV0sWyJjaXJjbGUiLHtjeDoiMTEiLGN5OiIxMSIscjoiOCJ9XSxbInBhdGgiLHtkOiJtMjEgMjEtNC4zLTQuMyJ9XV19KTt2YXIgSnEsV3J0PWwoKCk9PntKcT1bWyJwYXRoIix7ZDoibTEzIDEzLjUgMi0yLjUtMi0yLjUifV0sWyJwYXRoIix7ZDoibTIxIDIxLTQuMy00LjMifV0sWyJwYXRoIix7ZDoiTTkgOC41IDcgMTFsMiAyLjUifV0sWyJjaXJjbGUiLHtjeDoiMTEiLGN5OiIxMSIscjoiOCJ9XV19KTt2YXIgZWosR3J0PWwoKCk9Pntlaj1bWyJwYXRoIix7ZDoibTEzLjUgOC41LTUgNSJ9XSxbInBhdGgiLHtkOiJtOC41IDguNSA1IDUifV0sWyJjaXJjbGUiLHtjeDoiMTEiLGN5OiIxMSIscjoiOCJ9XSxbInBhdGgiLHtkOiJtMjEgMjEtNC4zLTQuMyJ9XV19KTt2YXIgdGosWXJ0PWwoKCk9Pnt0aj1bWyJwYXRoIix7ZDoibTEzLjUgOC41LTUgNSJ9XSxbImNpcmNsZSIse2N4OiIxMSIsY3k6IjExIixyOiI4In1dLFsicGF0aCIse2Q6Im0yMSAyMS00LjMtNC4zIn1dXX0pO3ZhciByaixacnQ9bCgoKT0+e3JqPVtbInBhdGgiLHtkOiJNMTYgNWE0IDMgMCAwIDAtOCAwYzAgNCA4IDMgOCA3YTQgMyAwIDAgMS04IDAifV0sWyJwYXRoIix7ZDoiTTggMTlhNCAzIDAgMCAwIDggMGMwLTQtOC0zLTgtN2E0IDMgMCAwIDEgOCAwIn1dXX0pO3ZhciBhaixYcnQ9bCgoKT0+e2FqPVtbInBhdGgiLHtkOiJtMjEgMjEtNC4zNC00LjM0In1dLFsiY2lyY2xlIix7Y3g6IjExIixjeToiMTEiLHI6IjgifV1dfSk7dmFyIFY1LFFydD1sKCgpPT57VjU9W1sicGF0aCIse2Q6Ik0zLjcxNCAzLjA0OGEuNDk4LjQ5OCAwIDAgMC0uNjgzLjYyN2wyLjg0MyA3LjYyN2EyIDIgMCAwIDEgMCAxLjM5NmwtMi44NDIgNy42MjdhLjQ5OC40OTggMCAwIDAgLjY4Mi42MjdsMTgtOC41YS41LjUgMCAwIDAgMC0uOTA0eiJ9XSxbInBhdGgiLHtkOiJNNiAxMmgxNiJ9XV19KTt2YXIgaWosS3J0PWwoKCk9Pntpaj1bWyJyZWN0Iix7eDoiMTQiLHk6IjE0Iix3aWR0aDoiOCIsaGVpZ2h0OiI4IixyeDoiMiJ9XSxbInJlY3QiLHt4OiIyIix5OiIyIix3aWR0aDoiOCIsaGVpZ2h0OiI4IixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNNyAxNHYxYTIgMiAwIDAgMCAyIDJoMSJ9XSxbInBhdGgiLHtkOiJNMTQgN2gxYTIgMiAwIDAgMSAyIDJ2MSJ9XV19KTt2YXIgb2osSnJ0PWwoKCk9Pntvaj1bWyJwYXRoIix7ZDoiTTE0LjUzNiAyMS42ODZhLjUuNSAwIDAgMCAuOTM3LS4wMjRsNi41LTE5YS40OTYuNDk2IDAgMCAwLS42MzUtLjYzNWwtMTkgNi41YS41LjUgMCAwIDAtLjAyNC45MzdsNy45MyAzLjE4YTIgMiAwIDAgMSAxLjExMiAxLjExeiJ9XSxbInBhdGgiLHtkOiJtMjEuODU0IDIuMTQ3LTEwLjk0IDEwLjkzOSJ9XV19KTt2YXIgbmosZWF0PWwoKCk9Pntuaj1bWyJwYXRoIix7ZDoibTE2IDE2LTQgNC00LTQifV0sWyJwYXRoIix7ZDoiTTMgMTJoMTgifV0sWyJwYXRoIix7ZDoibTggOCA0LTQgNCA0In1dXX0pO3ZhciBzaix0YXQ9bCgoKT0+e3NqPVtbInBhdGgiLHtkOiJNMTIgM3YxOCJ9XSxbInBhdGgiLHtkOiJtMTYgMTYgNC00LTQtNCJ9XSxbInBhdGgiLHtkOiJtOCA4LTQgNCA0IDQifV1dfSk7dmFyIGxqLHJhdD1sKCgpPT57bGo9W1sicGF0aCIse2Q6Im0xMC44NTIgMTQuNzcyLS4zODMuOTIzIn1dLFsicGF0aCIse2Q6Ik0xMy4xNDggMTQuNzcyYTMgMyAwIDEgMC0yLjI5Ni01LjU0NGwtLjM4My0uOTIzIn1dLFsicGF0aCIse2Q6Im0xMy4xNDggOS4yMjguMzgzLS45MjMifV0sWyJwYXRoIix7ZDoibTEzLjUzIDE1LjY5Ni0uMzgyLS45MjRhMyAzIDAgMSAxLTIuMjk2LTUuNTQ0In1dLFsicGF0aCIse2Q6Im0xNC43NzIgMTAuODUyLjkyMy0uMzgzIn1dLFsicGF0aCIse2Q6Im0xNC43NzIgMTMuMTQ4LjkyMy4zODMifV0sWyJwYXRoIix7ZDoiTTQuNSAxMEg0YTIgMiAwIDAgMS0yLTJWNGEyIDIgMCAwIDEgMi0yaDE2YTIgMiAwIDAgMSAyIDJ2NGEyIDIgMCAwIDEtMiAyaC0uNSJ9XSxbInBhdGgiLHtkOiJNNC41IDE0SDRhMiAyIDAgMCAwLTIgMnY0YTIgMiAwIDAgMCAyIDJoMTZhMiAyIDAgMCAwIDItMnYtNGEyIDIgMCAwIDAtMi0yaC0uNSJ9XSxbInBhdGgiLHtkOiJNNiAxOGguMDEifV0sWyJwYXRoIix7ZDoiTTYgNmguMDEifV0sWyJwYXRoIix7ZDoibTkuMjI4IDEwLjg1Mi0uOTIzLS4zODMifV0sWyJwYXRoIix7ZDoibTkuMjI4IDEzLjE0OC0uOTIzLjM4MyJ9XV19KTt2YXIgY2osYWF0PWwoKCk9Pntjaj1bWyJwYXRoIix7ZDoiTTYgMTBINGEyIDIgMCAwIDEtMi0yVjRhMiAyIDAgMCAxIDItMmgxNmEyIDIgMCAwIDEgMiAydjRhMiAyIDAgMCAxLTIgMmgtMiJ9XSxbInBhdGgiLHtkOiJNNiAxNEg0YTIgMiAwIDAgMC0yIDJ2NGEyIDIgMCAwIDAgMiAyaDE2YTIgMiAwIDAgMCAyLTJ2LTRhMiAyIDAgMCAwLTItMmgtMiJ9XSxbInBhdGgiLHtkOiJNNiA2aC4wMSJ9XSxbInBhdGgiLHtkOiJNNiAxOGguMDEifV0sWyJwYXRoIix7ZDoibTEzIDYtNCA2aDZsLTQgNiJ9XV19KTt2YXIgZGosaWF0PWwoKCk9Pntkaj1bWyJwYXRoIix7ZDoiTTcgMmgxM2EyIDIgMCAwIDEgMiAydjRhMiAyIDAgMCAxLTIgMmgtNSJ9XSxbInBhdGgiLHtkOiJNMTAgMTAgMi41IDIuNUMyIDIgMiAyLjUgMiA1djNhMiAyIDAgMCAwIDIgMmg2eiJ9XSxbInBhdGgiLHtkOiJNMjIgMTd2LTFhMiAyIDAgMCAwLTItMmgtMSJ9XSxbInBhdGgiLHtkOiJNNCAxNGEyIDIgMCAwIDAtMiAydjRhMiAyIDAgMCAwIDIgMmgxNi41bDEtLjUuNS41LTgtOEg0eiJ9XSxbInBhdGgiLHtkOiJNNiAxOGguMDEifV0sWyJwYXRoIix7ZDoibTIgMiAyMCAyMCJ9XV19KTt2YXIgdWosb2F0PWwoKCk9Pnt1aj1bWyJyZWN0Iix7d2lkdGg6IjIwIixoZWlnaHQ6IjgiLHg6IjIiLHk6IjIiLHJ4OiIyIixyeToiMiJ9XSxbInJlY3QiLHt3aWR0aDoiMjAiLGhlaWdodDoiOCIseDoiMiIseToiMTQiLHJ4OiIyIixyeToiMiJ9XSxbImxpbmUiLHt4MToiNiIseDI6IjYuMDEiLHkxOiI2Iix5MjoiNiJ9XSxbImxpbmUiLHt4MToiNiIseDI6IjYuMDEiLHkxOiIxOCIseTI6IjE4In1dXX0pO3ZhciBmaixuYXQ9bCgoKT0+e2ZqPVtbInBhdGgiLHtkOiJNMTQgMTdINSJ9XSxbInBhdGgiLHtkOiJNMTkgN2gtOSJ9XSxbImNpcmNsZSIse2N4OiIxNyIsY3k6IjE3IixyOiIzIn1dLFsiY2lyY2xlIix7Y3g6IjciLGN5OiI3IixyOiIzIn1dXX0pO3ZhciBwaixzYXQ9bCgoKT0+e3BqPVtbInBhdGgiLHtkOiJNOS42NzEgNC4xMzZhMi4zNCAyLjM0IDAgMCAxIDQuNjU5IDAgMi4zNCAyLjM0IDAgMCAwIDMuMzE5IDEuOTE1IDIuMzQgMi4zNCAwIDAgMSAyLjMzIDQuMDMzIDIuMzQgMi4zNCAwIDAgMCAwIDMuODMxIDIuMzQgMi4zNCAwIDAgMS0yLjMzIDQuMDMzIDIuMzQgMi4zNCAwIDAgMC0zLjMxOSAxLjkxNSAyLjM0IDIuMzQgMCAwIDEtNC42NTkgMCAyLjM0IDIuMzQgMCAwIDAtMy4zMi0xLjkxNSAyLjM0IDIuMzQgMCAwIDEtMi4zMy00LjAzMyAyLjM0IDIuMzQgMCAwIDAgMC0zLjgzMUEyLjM0IDIuMzQgMCAwIDEgNi4zNSA2LjA1MWEyLjM0IDIuMzQgMCAwIDAgMy4zMTktMS45MTUifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMyJ9XV19KTt2YXIgaGosbGF0PWwoKCk9Pntoaj1bWyJwYXRoIix7ZDoiTTguMyAxMGEuNy43IDAgMCAxLS42MjYtMS4wNzlMMTEuNCAzYS43LjcgMCAwIDEgMS4xOTgtLjA0M0wxNi4zIDguOWEuNy43IDAgMCAxLS41NzIgMS4xWiJ9XSxbInJlY3QiLHt4OiIzIix5OiIxNCIsd2lkdGg6IjciLGhlaWdodDoiNyIscng6IjEifV0sWyJjaXJjbGUiLHtjeDoiMTcuNSIsY3k6IjE3LjUiLHI6IjMuNSJ9XV19KTt2YXIgbWosY2F0PWwoKCk9Pnttaj1bWyJjaXJjbGUiLHtjeDoiMTgiLGN5OiI1IixyOiIzIn1dLFsiY2lyY2xlIix7Y3g6IjYiLGN5OiIxMiIscjoiMyJ9XSxbImNpcmNsZSIse2N4OiIxOCIsY3k6IjE5IixyOiIzIn1dLFsibGluZSIse3gxOiI4LjU5Iix4MjoiMTUuNDIiLHkxOiIxMy41MSIseTI6IjE3LjQ5In1dLFsibGluZSIse3gxOiIxNS40MSIseDI6IjguNTkiLHkxOiI2LjUxIix5MjoiMTAuNDkifV1dfSk7dmFyIGdqLGRhdD1sKCgpPT57Z2o9W1sicGF0aCIse2Q6Ik0xMiAydjEzIn1dLFsicGF0aCIse2Q6Im0xNiA2LTQtNC00IDQifV0sWyJwYXRoIix7ZDoiTTQgMTJ2OGEyIDIgMCAwIDAgMiAyaDEyYTIgMiAwIDAgMCAyLTJ2LTgifV1dfSk7dmFyIHhqLHVhdD1sKCgpPT57eGo9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIiLHJ5OiIyIn1dLFsibGluZSIse3gxOiIzIix4MjoiMjEiLHkxOiI5Iix5MjoiOSJ9XSxbImxpbmUiLHt4MToiMyIseDI6IjIxIix5MToiMTUiLHkyOiIxNSJ9XSxbImxpbmUiLHt4MToiOSIseDI6IjkiLHkxOiI5Iix5MjoiMjEifV0sWyJsaW5lIix7eDE6IjE1Iix4MjoiMTUiLHkxOiI5Iix5MjoiMjEifV1dfSk7dmFyIGJqLGZhdD1sKCgpPT57Ymo9W1sicGF0aCIse2Q6Ik0xNCAxMWEyIDIgMCAxIDEtNCAwIDQgNCAwIDAgMSA4IDAgNiA2IDAgMCAxLTEyIDAgOCA4IDAgMCAxIDE2IDAgMTAgMTAgMCAxIDEtMjAgMCAxMS45MyAxMS45MyAwIDAgMSAyLjQyLTcuMjIgMiAyIDAgMSAxIDMuMTYgMi40NCJ9XV19KTt2YXIgdmoscGF0PWwoKCk9Pnt2aj1bWyJwYXRoIix7ZDoiTTEyIDEyVjlhMSAxIDAgMCAwLTEtMUg5YTEgMSAwIDAgMC0xIDF2MyJ9XSxbInBhdGgiLHtkOiJNMTYgMjB2LTNhMSAxIDAgMCAwLTEtMWgtMmExIDEgMCAwIDAtMSAxdjMifV0sWyJwYXRoIix7ZDoiTTIwIDIyVjIifV0sWyJwYXRoIix7ZDoiTTQgMTJoMTYifV0sWyJwYXRoIix7ZDoiTTQgMjBoMTYifV0sWyJwYXRoIix7ZDoiTTQgMnYyMCJ9XSxbInBhdGgiLHtkOiJNNCA0aDE2In1dXX0pO3ZhciB5aixoYXQ9bCgoKT0+e3lqPVtbInBhdGgiLHtkOiJNMjAgMTNjMCA1LTMuNSA3LjUtNy42NiA4Ljk1YTEgMSAwIDAgMS0uNjctLjAxQzcuNSAyMC41IDQgMTggNCAxM1Y2YTEgMSAwIDAgMSAxLTFjMiAwIDQuNS0xLjIgNi4yNC0yLjcyYTEuMTcgMS4xNyAwIDAgMSAxLjUyIDBDMTQuNTEgMy44MSAxNyA1IDE5IDVhMSAxIDAgMCAxIDEgMXoifV0sWyJwYXRoIix7ZDoiTTEyIDh2NCJ9XSxbInBhdGgiLHtkOiJNMTIgMTZoLjAxIn1dXX0pO3ZhciB3aixtYXQ9bCgoKT0+e3dqPVtbInBhdGgiLHtkOiJNMjAgMTNjMCA1LTMuNSA3LjUtNy42NiA4Ljk1YTEgMSAwIDAgMS0uNjctLjAxQzcuNSAyMC41IDQgMTggNCAxM1Y2YTEgMSAwIDAgMSAxLTFjMiAwIDQuNS0xLjIgNi4yNC0yLjcyYTEuMTcgMS4xNyAwIDAgMSAxLjUyIDBDMTQuNTEgMy44MSAxNyA1IDE5IDVhMSAxIDAgMCAxIDEgMXoifV0sWyJwYXRoIix7ZDoibTQuMjQzIDUuMjEgMTQuMzkgMTIuNDcyIn1dXX0pO3ZhciBNaixnYXQ9bCgoKT0+e01qPVtbInBhdGgiLHtkOiJNMjAgMTNjMCA1LTMuNSA3LjUtNy42NiA4Ljk1YTEgMSAwIDAgMS0uNjctLjAxQzcuNSAyMC41IDQgMTggNCAxM1Y2YTEgMSAwIDAgMSAxLTFjMiAwIDQuNS0xLjIgNi4yNC0yLjcyYTEuMTcgMS4xNyAwIDAgMSAxLjUyIDBDMTQuNTEgMy44MSAxNyA1IDE5IDVhMSAxIDAgMCAxIDEgMXoifV0sWyJwYXRoIix7ZDoiTTggMTJoLjAxIn1dLFsicGF0aCIse2Q6Ik0xMiAxMmguMDEifV0sWyJwYXRoIix7ZDoiTTE2IDEyaC4wMSJ9XV19KTt2YXIga2oseGF0PWwoKCk9Pntraj1bWyJwYXRoIix7ZDoiTTIwIDEzYzAgNS0zLjUgNy41LTcuNjYgOC45NWExIDEgMCAwIDEtLjY3LS4wMUM3LjUgMjAuNSA0IDE4IDQgMTNWNmExIDEgMCAwIDEgMS0xYzIgMCA0LjUtMS4yIDYuMjQtMi43MmExLjE3IDEuMTcgMCAwIDEgMS41MiAwQzE0LjUxIDMuODEgMTcgNSAxOSA1YTEgMSAwIDAgMSAxIDF6In1dLFsicGF0aCIse2Q6Im05IDEyIDIgMiA0LTQifV1dfSk7dmFyIFNqLGJhdD1sKCgpPT57U2o9W1sicGF0aCIse2Q6Ik0yMCAxM2MwIDUtMy41IDcuNS03LjY2IDguOTVhMSAxIDAgMCAxLS42Ny0uMDFDNy41IDIwLjUgNCAxOCA0IDEzVjZhMSAxIDAgMCAxIDEtMWMyIDAgNC41LTEuMiA2LjI0LTIuNzJhMS4xNyAxLjE3IDAgMCAxIDEuNTIgMEMxNC41MSAzLjgxIDE3IDUgMTkgNWExIDEgMCAwIDEgMSAxeiJ9XSxbInBhdGgiLHtkOiJNMTIgMjJWMiJ9XV19KTt2YXIgemosdmF0PWwoKCk9Pnt6aj1bWyJwYXRoIix7ZDoiTTIwIDEzYzAgNS0zLjUgNy41LTcuNjYgOC45NWExIDEgMCAwIDEtLjY3LS4wMUM3LjUgMjAuNSA0IDE4IDQgMTNWNmExIDEgMCAwIDEgMS0xYzIgMCA0LjUtMS4yIDYuMjQtMi43MmExLjE3IDEuMTcgMCAwIDEgMS41MiAwQzE0LjUxIDMuODEgMTcgNSAxOSA1YTEgMSAwIDAgMSAxIDF6In1dLFsicGF0aCIse2Q6Ik05IDEyaDYifV1dfSk7dmFyIENqLHlhdD1sKCgpPT57Q2o9W1sicGF0aCIse2Q6Im0yIDIgMjAgMjAifV0sWyJwYXRoIix7ZDoiTTUgNWExIDEgMCAwIDAtMSAxdjdjMCA1IDMuNSA3LjUgNy42NyA4Ljk0YTEgMSAwIDAgMCAuNjcuMDFjMi4zNS0uODIgNC40OC0xLjk3IDUuOS0zLjcxIn1dLFsicGF0aCIse2Q6Ik05LjMwOSAzLjY1MkExMi4yNTIgMTIuMjUyIDAgMCAwIDExLjI0IDIuMjhhMS4xNyAxLjE3IDAgMCAxIDEuNTIgMEMxNC41MSAzLjgxIDE3IDUgMTkgNWExIDEgMCAwIDEgMSAxdjdhOS43ODQgOS43ODQgMCAwIDEtLjA4IDEuMjY0In1dXX0pO3ZhciBfaix3YXQ9bCgoKT0+e19qPVtbInBhdGgiLHtkOiJNMjAgMTNjMCA1LTMuNSA3LjUtNy42NiA4Ljk1YTEgMSAwIDAgMS0uNjctLjAxQzcuNSAyMC41IDQgMTggNCAxM1Y2YTEgMSAwIDAgMSAxLTFjMiAwIDQuNS0xLjIgNi4yNC0yLjcyYTEuMTcgMS4xNyAwIDAgMSAxLjUyIDBDMTQuNTEgMy44MSAxNyA1IDE5IDVhMSAxIDAgMCAxIDEgMXoifV0sWyJwYXRoIix7ZDoiTTkgMTJoNiJ9XSxbInBhdGgiLHtkOiJNMTIgOXY2In1dXX0pO3ZhciBVNSxNYXQ9bCgoKT0+e1U1PVtbInBhdGgiLHtkOiJNMjAgMTNjMCA1LTMuNSA3LjUtNy42NiA4Ljk1YTEgMSAwIDAgMS0uNjctLjAxQzcuNSAyMC41IDQgMTggNCAxM1Y2YTEgMSAwIDAgMSAxLTFjMiAwIDQuNS0xLjIgNi4yNC0yLjcyYTEuMTcgMS4xNyAwIDAgMSAxLjUyIDBDMTQuNTEgMy44MSAxNyA1IDE5IDVhMSAxIDAgMCAxIDEgMXoifV0sWyJwYXRoIix7ZDoiTTkuMSA5YTMgMyAwIDAgMSA1LjgyIDFjMCAyLTMgMy0zIDMifV0sWyJwYXRoIix7ZDoiTTEyIDE3aC4wMSJ9XV19KTt2YXIgVGosa2F0PWwoKCk9PntUaj1bWyJwYXRoIix7ZDoiTTIwIDEzYzAgNS0zLjUgNy41LTcuNjYgOC45NWExIDEgMCAwIDEtLjY3LS4wMUM3LjUgMjAuNSA0IDE4IDQgMTNWNmExIDEgMCAwIDEgMS0xYzIgMCA0LjUtMS4yIDYuMjQtMi43MmExLjE3IDEuMTcgMCAwIDEgMS41MiAwQzE0LjUxIDMuODEgMTcgNSAxOSA1YTEgMSAwIDAgMSAxIDF6In1dLFsicGF0aCIse2Q6Ik02LjM3NiAxOC45MWE2IDYgMCAwIDEgMTEuMjQ5LjAwMyJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjExIixyOiI0In1dXX0pO3ZhciBXNSxTYXQ9bCgoKT0+e1c1PVtbInBhdGgiLHtkOiJNMjAgMTNjMCA1LTMuNSA3LjUtNy42NiA4Ljk1YTEgMSAwIDAgMS0uNjctLjAxQzcuNSAyMC41IDQgMTggNCAxM1Y2YTEgMSAwIDAgMSAxLTFjMiAwIDQuNS0xLjIgNi4yNC0yLjcyYTEuMTcgMS4xNyAwIDAgMSAxLjUyIDBDMTQuNTEgMy44MSAxNyA1IDE5IDVhMSAxIDAgMCAxIDEgMXoifV0sWyJwYXRoIix7ZDoibTE0LjUgOS41LTUgNSJ9XSxbInBhdGgiLHtkOiJtOS41IDkuNSA1IDUifV1dfSk7dmFyIExqLHphdD1sKCgpPT57TGo9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjgifV0sWyJwYXRoIix7ZDoiTTEyIDJ2Ny41In1dLFsicGF0aCIse2Q6Im0xOSA1LTUuMjMgNS4yMyJ9XSxbInBhdGgiLHtkOiJNMjIgMTJoLTcuNSJ9XSxbInBhdGgiLHtkOiJtMTkgMTktNS4yMy01LjIzIn1dLFsicGF0aCIse2Q6Ik0xMiAxNC41VjIyIn1dLFsicGF0aCIse2Q6Ik0xMC4yMyAxMy43NyA1IDE5In1dLFsicGF0aCIse2Q6Ik05LjUgMTJIMiJ9XSxbInBhdGgiLHtkOiJNMTAuMjMgMTAuMjMgNSA1In1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjIuNSJ9XV19KTt2YXIgRGosQ2F0PWwoKCk9PntEaj1bWyJwYXRoIix7ZDoiTTIwIDEzYzAgNS0zLjUgNy41LTcuNjYgOC45NWExIDEgMCAwIDEtLjY3LS4wMUM3LjUgMjAuNSA0IDE4IDQgMTNWNmExIDEgMCAwIDEgMS0xYzIgMCA0LjUtMS4yIDYuMjQtMi43MmExLjE3IDEuMTcgMCAwIDEgMS41MiAwQzE0LjUxIDMuODEgMTcgNSAxOSA1YTEgMSAwIDAgMSAxIDF6In1dXX0pO3ZhciBBaixfYXQ9bCgoKT0+e0FqPVtbInBhdGgiLHtkOiJNMTIgMTAuMTg5VjE0In1dLFsicGF0aCIse2Q6Ik0xMiAydjMifV0sWyJwYXRoIix7ZDoiTTE5IDEzVjdhMiAyIDAgMCAwLTItMkg3YTIgMiAwIDAgMC0yIDJ2NiJ9XSxbInBhdGgiLHtkOiJNMTkuMzggMjBBMTEuNiAxMS42IDAgMCAwIDIxIDE0bC04LjE4OC0zLjYzOWEyIDIgMCAwIDAtMS42MjQgMEwzIDE0YTExLjYgMTEuNiAwIDAgMCAyLjgxIDcuNzYifV0sWyJwYXRoIix7ZDoiTTIgMjFjLjYuNSAxLjIgMSAyLjUgMSAyLjUgMCAyLjUtMiA1LTIgMS4zIDAgMS45LjUgMi41IDFzMS4yIDEgMi41IDFjMi41IDAgMi41LTIgNS0yIDEuMyAwIDEuOS41IDIuNSAxIn1dXX0pO3ZhciBFaixUYXQ9bCgoKT0+e0VqPVtbInBhdGgiLHtkOiJNMjAuMzggMy40NiAxNiAyYTQgNCAwIDAgMS04IDBMMy42MiAzLjQ2YTIgMiAwIDAgMC0xLjM0IDIuMjNsLjU4IDMuNDdhMSAxIDAgMCAwIC45OS44NEg2djEwYzAgMS4xLjkgMiAyIDJoOGEyIDIgMCAwIDAgMi0yVjEwaDIuMTVhMSAxIDAgMCAwIC45OS0uODRsLjU4LTMuNDdhMiAyIDAgMCAwLTEuMzQtMi4yM3oifV1dfSk7dmFyICRqLExhdD1sKCgpPT57JGo9W1sicGF0aCIse2Q6Ik0xNiAxMGE0IDQgMCAwIDEtOCAwIn1dLFsicGF0aCIse2Q6Ik0zLjEwMyA2LjAzNGgxNy43OTQifV0sWyJwYXRoIix7ZDoiTTMuNCA1LjQ2N2EyIDIgMCAwIDAtLjQgMS4yVjIwYTIgMiAwIDAgMCAyIDJoMTRhMiAyIDAgMCAwIDItMlY2LjY2N2EyIDIgMCAwIDAtLjQtMS4ybC0yLTIuNjY3QTIgMiAwIDAgMCAxNyAySDdhMiAyIDAgMCAwLTEuNi44eiJ9XV19KTt2YXIgUGosRGF0PWwoKCk9PntQaj1bWyJwYXRoIix7ZDoibTE1IDExLTEgOSJ9XSxbInBhdGgiLHtkOiJtMTkgMTEtNC03In1dLFsicGF0aCIse2Q6Ik0yIDExaDIwIn1dLFsicGF0aCIse2Q6Im0zLjUgMTEgMS42IDcuNGEyIDIgMCAwIDAgMiAxLjZoOS44YTIgMiAwIDAgMCAyLTEuNmwxLjctNy40In1dLFsicGF0aCIse2Q6Ik00LjUgMTUuNWgxNSJ9XSxbInBhdGgiLHtkOiJtNSAxMSA0LTcifV0sWyJwYXRoIix7ZDoibTkgMTEgMSA5In1dXX0pO3ZhciBJaixBYXQ9bCgoKT0+e0lqPVtbImNpcmNsZSIse2N4OiI4IixjeToiMjEiLHI6IjEifV0sWyJjaXJjbGUiLHtjeDoiMTkiLGN5OiIyMSIscjoiMSJ9XSxbInBhdGgiLHtkOiJNMi4wNSAyLjA1aDJsMi42NiAxMi40MmEyIDIgMCAwIDAgMiAxLjU4aDkuNzhhMiAyIDAgMCAwIDEuOTUtMS41N2wxLjY1LTcuNDNINS4xMiJ9XV19KTt2YXIgTmosRWF0PWwoKCk9PntOaj1bWyJwYXRoIix7ZDoiTTIxLjU2IDQuNTZhMS41IDEuNSAwIDAgMSAwIDIuMTIybC0uNDcuNDdhMyAzIDAgMCAxLTQuMjEyLS4wMyAzIDMgMCAwIDEgMC00LjI0M2wuNDQtLjQ0YTEuNSAxLjUgMCAwIDEgMi4xMjEgMHoifV0sWyJwYXRoIix7ZDoiTTMgMjJhMSAxIDAgMCAxLTEtMXYtMy41ODZhMSAxIDAgMCAxIC4yOTMtLjcwN2wzLjM1NS0zLjM1NWExLjIwNSAxLjIwNSAwIDAgMSAxLjcwNCAwbDMuMjk2IDMuMjk2YTEuMjA1IDEuMjA1IDAgMCAxIDAgMS43MDRsLTMuMzU1IDMuMzU1YTEgMSAwIDAgMS0uNzA3LjI5M3oifV0sWyJwYXRoIix7ZDoibTkgMTUgNy44NzktNy44NzgifV1dfSk7dmFyIEZqLCRhdD1sKCgpPT57Rmo9W1sicGF0aCIse2Q6Im00IDQgMi41IDIuNSJ9XSxbInBhdGgiLHtkOiJNMTMuNSA2LjVhNC45NSA0Ljk1IDAgMCAwLTcgNyJ9XSxbInBhdGgiLHtkOiJNMTUgNSA1IDE1In1dLFsicGF0aCIse2Q6Ik0xNCAxN3YuMDEifV0sWyJwYXRoIix7ZDoiTTEwIDE2di4wMSJ9XSxbInBhdGgiLHtkOiJNMTMgMTN2LjAxIn1dLFsicGF0aCIse2Q6Ik0xNiAxMHYuMDEifV0sWyJwYXRoIix7ZDoiTTExIDIwdi4wMSJ9XSxbInBhdGgiLHtkOiJNMTcgMTR2LjAxIn1dLFsicGF0aCIse2Q6Ik0yMCAxMXYuMDEifV1dfSk7dmFyIE9qLFBhdD1sKCgpPT57T2o9W1sicGF0aCIse2Q6Ik00IDEzVjRhMiAyIDAgMCAxIDItMmg4YTIuNCAyLjQgMCAwIDEgMS43MDYuNzA2bDMuNTg4IDMuNTg4QTIuNCAyLjQgMCAwIDEgMjAgOHY1In1dLFsicGF0aCIse2Q6Ik0xNCAydjVhMSAxIDAgMCAwIDEgMWg1In1dLFsicGF0aCIse2Q6Ik0xMCAyMnYtNSJ9XSxbInBhdGgiLHtkOiJNMTQgMTl2LTIifV0sWyJwYXRoIix7ZDoiTTE4IDIwdi0zIn1dLFsicGF0aCIse2Q6Ik0yIDEzaDIwIn1dLFsicGF0aCIse2Q6Ik02IDIwdi0zIn1dXX0pO3ZhciBSaixJYXQ9bCgoKT0+e1JqPVtbInBhdGgiLHtkOiJNMTEgMTJoLjAxIn1dLFsicGF0aCIse2Q6Ik0xMyAyMmMuNS0uNSAxLjEyLTEgMi41LTEtMS4zOCAwLTItLjUtMi41LTEifV0sWyJwYXRoIix7ZDoiTTE0IDJhMy4yOCAzLjI4IDAgMCAxLTMuMjI3IDEuNzk4bC02LjE3LS41NjFBMi4zODcgMi4zODcgMCAxIDAgNC4zODcgOEgxNS41YTEgMSAwIDAgMSAwIDEzIDEgMSAwIDAgMCAwLTVIMTJhNyA3IDAgMCAxLTctN1Y4In1dLFsicGF0aCIse2Q6Ik0xNCA4YTguNSA4LjUgMCAwIDEgMCA4In1dLFsicGF0aCIse2Q6Ik0xNiAxNmMyIDAgNC41LTQgNC02In1dXX0pO3ZhciBCaixOYXQ9bCgoKT0+e0JqPVtbInBhdGgiLHtkOiJtMTUgMTUgNiA2bS02LTZ2NC44bTAtNC44aDQuOCJ9XSxbInBhdGgiLHtkOiJNOSAxOS44VjE1bTAgMEg0LjJNOSAxNWwtNiA2In1dLFsicGF0aCIse2Q6Ik0xNSA0LjJWOW0wIDBoNC44TTE1IDlsNi02In1dLFsicGF0aCIse2Q6Ik05IDQuMlY5bTAgMEg0LjJNOSA5IDMgMyJ9XV19KTt2YXIgSGosRmF0PWwoKCk9PntIaj1bWyJwYXRoIix7ZDoiTTEyIDIydi01LjE3MmEyIDIgMCAwIDAtLjU4Ni0xLjQxNEw5LjUgMTMuNSJ9XSxbInBhdGgiLHtkOiJNMTQuNSAxNC41IDEyIDE3In1dLFsicGF0aCIse2Q6Ik0xNyA4LjhBNiA2IDAgMCAxIDEzLjggMjBIMTBBNi41IDYuNSAwIDAgMSA3IDhhNSA1IDAgMCAxIDEwIDB6In1dXX0pO3ZhciBxaixPYXQ9bCgoKT0+e3FqPVtbInBhdGgiLHtkOiJtMTggMTQgNCA0LTQgNCJ9XSxbInBhdGgiLHtkOiJtMTggMiA0IDQtNCA0In1dLFsicGF0aCIse2Q6Ik0yIDE4aDEuOTczYTQgNCAwIDAgMCAzLjMtMS43bDUuNDU0LTguNmE0IDQgMCAwIDEgMy4zLTEuN0gyMiJ9XSxbInBhdGgiLHtkOiJNMiA2aDEuOTcyYTQgNCAwIDAgMSAzLjYgMi4yIn1dLFsicGF0aCIse2Q6Ik0yMiAxOGgtNi4wNDFhNCA0IDAgMCAxLTMuMy0xLjhsLS4zNTktLjQ1In1dXX0pO3ZhciBqaixSYXQ9bCgoKT0+e2pqPVtbInBhdGgiLHtkOiJNMTggN1Y1YTEgMSAwIDAgMC0xLTFINi41YS41LjUgMCAwIDAtLjQuOGw0LjUgNmEyIDIgMCAwIDEgMCAyLjRsLTQuNSA2YS41LjUgMCAwIDAgLjQuOEgxN2ExIDEgMCAwIDAgMS0xdi0yIn1dXX0pO3ZhciBWaixCYXQ9bCgoKT0+e1ZqPVtbInBhdGgiLHtkOiJNMiAyMGguMDEifV0sWyJwYXRoIix7ZDoiTTcgMjB2LTQifV0sWyJwYXRoIix7ZDoiTTEyIDIwdi04In1dLFsicGF0aCIse2Q6Ik0xNyAyMFY4In1dXX0pO3ZhciBVaixIYXQ9bCgoKT0+e1VqPVtbInBhdGgiLHtkOiJNMiAyMGguMDEifV0sWyJwYXRoIix7ZDoiTTcgMjB2LTQifV1dfSk7dmFyIFdqLHFhdD1sKCgpPT57V2o9W1sicGF0aCIse2Q6Ik0yIDIwaC4wMSJ9XSxbInBhdGgiLHtkOiJNNyAyMHYtNCJ9XSxbInBhdGgiLHtkOiJNMTIgMjB2LTgifV1dfSk7dmFyIEdqLGphdD1sKCgpPT57R2o9W1sicGF0aCIse2Q6Ik0yIDIwaC4wMSJ9XV19KTt2YXIgWWosVmF0PWwoKCk9PntZaj1bWyJwYXRoIix7ZDoiTTIgMjBoLjAxIn1dLFsicGF0aCIse2Q6Ik03IDIwdi00In1dLFsicGF0aCIse2Q6Ik0xMiAyMHYtOCJ9XSxbInBhdGgiLHtkOiJNMTcgMjBWOCJ9XSxbInBhdGgiLHtkOiJNMjIgNHYxNiJ9XV19KTt2YXIgWmosVWF0PWwoKCk9Pntaaj1bWyJwYXRoIix7ZDoibTIxIDE3LTIuMTU2LTEuODY4QS41LjUgMCAwIDAgMTggMTUuNXYuNWExIDEgMCAwIDEtMSAxaC0yYTEgMSAwIDAgMS0xLTFjMC0yLjU0NS0zLjk5MS0zLjk3LTguNS00YTEgMSAwIDAgMCAwIDVjNC4xNTMgMCA0Ljc0NS0xMS4yOTUgNS43MDgtMTMuNWEyLjUgMi41IDAgMSAxIDMuMzEgMy4yODQifV0sWyJwYXRoIix7ZDoiTTMgMjFoMTgifV1dfSk7dmFyIFhqLFdhdD1sKCgpPT57WGo9W1sicGF0aCIse2Q6Ik0xMiAxM3Y4In1dLFsicGF0aCIse2Q6Ik0xMiAzdjMifV0sWyJwYXRoIix7ZDoiTTE4IDZhMiAyIDAgMCAxIDEuMzg3LjU2bDIuMzA3IDIuMjJhMSAxIDAgMCAxIDAgMS40NGwtMi4zMDcgMi4yMkEyIDIgMCAwIDEgMTggMTNINmEyIDIgMCAwIDEtMS4zODctLjU2bC0yLjMwNi0yLjIyYTEgMSAwIDAgMSAwLTEuNDRsMi4zMDYtMi4yMkEyIDIgMCAwIDEgNiA2eiJ9XV19KTt2YXIgUWosR2F0PWwoKCk9PntRaj1bWyJwYXRoIix7ZDoiTTcgMTh2LTZhNSA1IDAgMSAxIDEwIDB2NiJ9XSxbInBhdGgiLHtkOiJNNSAyMWExIDEgMCAwIDAgMSAxaDEyYTEgMSAwIDAgMCAxLTF2LTFhMiAyIDAgMCAwLTItMkg3YTIgMiAwIDAgMC0yIDJ6In1dLFsicGF0aCIse2Q6Ik0yMSAxMmgxIn1dLFsicGF0aCIse2Q6Ik0xOC41IDQuNSAxOCA1In1dLFsicGF0aCIse2Q6Ik0yIDEyaDEifV0sWyJwYXRoIix7ZDoiTTEyIDJ2MSJ9XSxbInBhdGgiLHtkOiJtNC45MjkgNC45MjkuNzA3LjcwNyJ9XSxbInBhdGgiLHtkOiJNMTIgMTJ2NiJ9XV19KTt2YXIgS2osWWF0PWwoKCk9PntLaj1bWyJwYXRoIix7ZDoiTTEwIDlINEwyIDdsMi0yaDYifV0sWyJwYXRoIix7ZDoiTTE0IDVoNmwyIDItMiAyaC02In1dLFsicGF0aCIse2Q6Ik0xMCAyMlY0YTIgMiAwIDEgMSA0IDB2MTgifV0sWyJwYXRoIix7ZDoiTTggMjJoOCJ9XV19KTt2YXIgSmosWmF0PWwoKCk9PntKaj1bWyJwYXRoIix7ZDoiTTE3Ljk3MSA0LjI4NUEyIDIgMCAwIDEgMjEgNnYxMmEyIDIgMCAwIDEtMy4wMjkgMS43MTVsLTkuOTk3LTUuOTk4YTIgMiAwIDAgMS0uMDAzLTMuNDMyeiJ9XSxbInBhdGgiLHtkOiJNMyAyMFY0In1dXX0pO3ZhciBlVixYYXQ9bCgoKT0+e2VWPVtbInBhdGgiLHtkOiJNMjEgNHYxNiJ9XSxbInBhdGgiLHtkOiJNNi4wMjkgNC4yODVBMiAyIDAgMCAwIDMgNnYxMmEyIDIgMCAwIDAgMy4wMjkgMS43MTVsOS45OTctNS45OThhMiAyIDAgMCAwIC4wMDMtMy40MzJ6In1dXX0pO3ZhciB0VixRYXQ9bCgoKT0+e3RWPVtbInJlY3QiLHt3aWR0aDoiMyIsaGVpZ2h0OiI4Iix4OiIxMyIseToiMiIscng6IjEuNSJ9XSxbInBhdGgiLHtkOiJNMTkgOC41VjEwaDEuNUExLjUgMS41IDAgMSAwIDE5IDguNSJ9XSxbInJlY3QiLHt3aWR0aDoiMyIsaGVpZ2h0OiI4Iix4OiI4Iix5OiIxNCIscng6IjEuNSJ9XSxbInBhdGgiLHtkOiJNNSAxNS41VjE0SDMuNUExLjUgMS41IDAgMSAwIDUgMTUuNSJ9XSxbInJlY3QiLHt3aWR0aDoiOCIsaGVpZ2h0OiIzIix4OiIxNCIseToiMTMiLHJ4OiIxLjUifV0sWyJwYXRoIix7ZDoiTTE1LjUgMTlIMTR2MS41YTEuNSAxLjUgMCAxIDAgMS41LTEuNSJ9XSxbInJlY3QiLHt3aWR0aDoiOCIsaGVpZ2h0OiIzIix4OiIyIix5OiI4IixyeDoiMS41In1dLFsicGF0aCIse2Q6Ik04LjUgNUgxMFYzLjVBMS41IDEuNSAwIDEgMCA4LjUgNSJ9XV19KTt2YXIgclYsS2F0PWwoKCk9PntyVj1bWyJwYXRoIix7ZDoiTTIyIDIgMiAyMiJ9XV19KTt2YXIgYVYsSmF0PWwoKCk9PnthVj1bWyJwYXRoIix7ZDoibTEyLjUgMTctLjUtMS0uNSAxaDF6In1dLFsicGF0aCIse2Q6Ik0xNSAyMmExIDEgMCAwIDAgMS0xdi0xYTIgMiAwIDAgMCAxLjU2LTMuMjUgOCA4IDAgMSAwLTExLjEyIDBBMiAyIDAgMCAwIDggMjB2MWExIDEgMCAwIDAgMSAxeiJ9XSxbImNpcmNsZSIse2N4OiIxNSIsY3k6IjEyIixyOiIxIn1dLFsiY2lyY2xlIix7Y3g6IjkiLGN5OiIxMiIscjoiMSJ9XV19KTt2YXIgaVYsZWl0PWwoKCk9PntpVj1bWyJwYXRoIix7ZDoiTTExIDE2LjU4NlYxOWExIDEgMCAwIDEtMSAxSDJMMTguMzcgMy42M2ExIDEgMCAxIDEgMyAzbC05LjY2MyA5LjY2M2ExIDEgMCAwIDEtMS40MTQgMEw4IDE0In1dXX0pO3ZhciBHNSx0aXQ9bCgoKT0+e0c1PVtbInBhdGgiLHtkOiJNMTAgOGg0In1dLFsicGF0aCIse2Q6Ik0xMiAyMXYtOSJ9XSxbInBhdGgiLHtkOiJNMTIgOFYzIn1dLFsicGF0aCIse2Q6Ik0xNyAxNmg0In1dLFsicGF0aCIse2Q6Ik0xOSAxMlYzIn1dLFsicGF0aCIse2Q6Ik0xOSAyMXYtNSJ9XSxbInBhdGgiLHtkOiJNMyAxNGg0In1dLFsicGF0aCIse2Q6Ik01IDEwVjMifV0sWyJwYXRoIix7ZDoiTTUgMjF2LTcifV1dfSk7dmFyIG9WLHJpdD1sKCgpPT57b1Y9W1sicGF0aCIse2Q6Ik0xMCA1SDMifV0sWyJwYXRoIix7ZDoiTTEyIDE5SDMifV0sWyJwYXRoIix7ZDoiTTE0IDN2NCJ9XSxbInBhdGgiLHtkOiJNMTYgMTd2NCJ9XSxbInBhdGgiLHtkOiJNMjEgMTJoLTkifV0sWyJwYXRoIix7ZDoiTTIxIDE5aC01In1dLFsicGF0aCIse2Q6Ik0yMSA1aC03In1dLFsicGF0aCIse2Q6Ik04IDEwdjQifV0sWyJwYXRoIix7ZDoiTTggMTJIMyJ9XV19KTt2YXIgblYsYWl0PWwoKCk9PntuVj1bWyJyZWN0Iix7d2lkdGg6IjE0IixoZWlnaHQ6IjIwIix4OiI1Iix5OiIyIixyeDoiMiIscnk6IjIifV0sWyJwYXRoIix7ZDoiTTEyLjY2NyA4IDEwIDEyaDRsLTIuNjY3IDQifV1dfSk7dmFyIHNWLGlpdD1sKCgpPT57c1Y9W1sicmVjdCIse3dpZHRoOiI3IixoZWlnaHQ6IjEyIix4OiIyIix5OiI2IixyeDoiMSJ9XSxbInBhdGgiLHtkOiJNMTMgOC4zMmE3LjQzIDcuNDMgMCAwIDEgMCA3LjM2In1dLFsicGF0aCIse2Q6Ik0xNi40NiA2LjIxYTExLjc2IDExLjc2IDAgMCAxIDAgMTEuNTgifV0sWyJwYXRoIix7ZDoiTTE5LjkxIDQuMWExNS45MSAxNS45MSAwIDAgMSAuMDEgMTUuOCJ9XV19KTt2YXIgbFYsb2l0PWwoKCk9PntsVj1bWyJyZWN0Iix7d2lkdGg6IjE0IixoZWlnaHQ6IjIwIix4OiI1Iix5OiIyIixyeDoiMiIscnk6IjIifV0sWyJwYXRoIix7ZDoiTTEyIDE4aC4wMSJ9XV19KTt2YXIgY1Ysbml0PWwoKCk9PntjVj1bWyJwYXRoIix7ZDoiTTIyIDExdjFhMTAgMTAgMCAxIDEtOS0xMCJ9XSxbInBhdGgiLHtkOiJNOCAxNHMxLjUgMiA0IDIgNC0yIDQtMiJ9XSxbImxpbmUiLHt4MToiOSIseDI6IjkuMDEiLHkxOiI5Iix5MjoiOSJ9XSxbImxpbmUiLHt4MToiMTUiLHgyOiIxNS4wMSIseTE6IjkiLHkyOiI5In1dLFsicGF0aCIse2Q6Ik0xNiA1aDYifV0sWyJwYXRoIix7ZDoiTTE5IDJ2NiJ9XV19KTt2YXIgZFYsc2l0PWwoKCk9PntkVj1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiMTAifV0sWyJwYXRoIix7ZDoiTTggMTRzMS41IDIgNCAyIDQtMiA0LTIifV0sWyJsaW5lIix7eDE6IjkiLHgyOiI5LjAxIix5MToiOSIseTI6IjkifV0sWyJsaW5lIix7eDE6IjE1Iix4MjoiMTUuMDEiLHkxOiI5Iix5MjoiOSJ9XV19KTt2YXIgdVYsbGl0PWwoKCk9Pnt1Vj1bWyJwYXRoIix7ZDoibTEwIDIwLTEuMjUtMi41TDYgMTgifV0sWyJwYXRoIix7ZDoiTTEwIDQgOC43NSA2LjUgNiA2In1dLFsicGF0aCIse2Q6Im0xNCAyMCAxLjI1LTIuNUwxOCAxOCJ9XSxbInBhdGgiLHtkOiJtMTQgNCAxLjI1IDIuNUwxOCA2In1dLFsicGF0aCIse2Q6Im0xNyAyMS0zLTZoLTQifV0sWyJwYXRoIix7ZDoibTE3IDMtMyA2IDEuNSAzIn1dLFsicGF0aCIse2Q6Ik0yIDEyaDYuNUwxMCA5In1dLFsicGF0aCIse2Q6Im0yMCAxMC0xLjUgMiAxLjUgMiJ9XSxbInBhdGgiLHtkOiJNMjIgMTJoLTYuNUwxNCAxNSJ9XSxbInBhdGgiLHtkOiJtNCAxMCAxLjUgMkw0IDE0In1dLFsicGF0aCIse2Q6Im03IDIxIDMtNi0xLjUtMyJ9XSxbInBhdGgiLHtkOiJtNyAzIDMgNmg0In1dXX0pO3ZhciBmVixjaXQ9bCgoKT0+e2ZWPVtbInBhdGgiLHtkOiJNMTAuNSAydjQifV0sWyJwYXRoIix7ZDoiTTE0IDJIN2EyIDIgMCAwIDAtMiAyIn1dLFsicGF0aCIse2Q6Ik0xOS4yOSAxNC43NkE2LjY3IDYuNjcgMCAwIDEgMTcgMTFhNi42IDYuNiAwIDAgMS0yLjI5IDMuNzZjLTEuMTUuOTItMS43MSAyLjA0LTEuNzEgMy4xOSAwIDIuMjIgMS44IDQuMDUgNCA0LjA1czQtMS44MyA0LTQuMDVjMC0xLjE2LS41Ny0yLjI2LTEuNzEtMy4xOSJ9XSxbInBhdGgiLHtkOiJNOS42MDcgMjFINmEyIDIgMCAwIDEtMi0ydi03YTIgMiAwIDAgMSAyLTJoN1Y3YTEgMSAwIDAgMC0xLTFIOWExIDEgMCAwIDAtMSAxdjMifV1dfSk7dmFyIHBWLGRpdD1sKCgpPT57cFY9W1sicGF0aCIse2Q6Ik0yIDEzYTYgNiAwIDEgMCAxMiAwIDQgNCAwIDEgMC04IDAgMiAyIDAgMCAwIDQgMCJ9XSxbImNpcmNsZSIse2N4OiIxMCIsY3k6IjEzIixyOiI4In1dLFsicGF0aCIse2Q6Ik0yIDIxaDEyYzQuNCAwIDgtMy42IDgtOFY3YTIgMiAwIDEgMC00IDB2NiJ9XSxbInBhdGgiLHtkOiJNMTggMyAxOS4xIDUuMiJ9XSxbInBhdGgiLHtkOiJNMjIgMyAyMC45IDUuMiJ9XV19KTt2YXIgaFYsdWl0PWwoKCk9PntoVj1bWyJwYXRoIix7ZDoiTTIwIDlWNmEyIDIgMCAwIDAtMi0ySDZhMiAyIDAgMCAwLTIgMnYzIn1dLFsicGF0aCIse2Q6Ik0yIDE2YTIgMiAwIDAgMCAyIDJoMTZhMiAyIDAgMCAwIDItMnYtNWEyIDIgMCAwIDAtNCAwdjEuNWEuNS41IDAgMCAxLS41LjVoLTExYS41LjUgMCAwIDEtLjUtLjVWMTFhMiAyIDAgMCAwLTQgMHoifV0sWyJwYXRoIix7ZDoiTTQgMTh2MiJ9XSxbInBhdGgiLHtkOiJNMjAgMTh2MiJ9XSxbInBhdGgiLHtkOiJNMTIgNHY5In1dXX0pO3ZhciBtVixmaXQ9bCgoKT0+e21WPVtbInBhdGgiLHtkOiJNMTEgMmgyIn1dLFsicGF0aCIse2Q6Im0xNC4yOCAxNC00LjU2IDgifV0sWyJwYXRoIix7ZDoibTIxIDIyLTEuNTU4LTRINC41NTgifV0sWyJwYXRoIix7ZDoiTTMgMTB2MiJ9XSxbInBhdGgiLHtkOiJNNi4yNDUgMTUuMDRBMiAyIDAgMCAxIDggMTRoMTJhMSAxIDAgMCAxIC44NjQgMS41MDVsLTMuMTEgNS40NTdBMiAyIDAgMCAxIDE2IDIySDRhMSAxIDAgMCAxLS44NjMtMS41MDZ6In1dLFsicGF0aCIse2Q6Ik03IDJhNCA0IDAgMCAxLTQgNCJ9XSxbInBhdGgiLHtkOiJtOC42NiA3LjY2IDEuNDEgMS40MSJ9XV19KTt2YXIgZ1YscGl0PWwoKCk9PntnVj1bWyJwYXRoIix7ZDoiTTEyIDIxYTkgOSAwIDAgMCA5LTlIM2E5IDkgMCAwIDAgOSA5WiJ9XSxbInBhdGgiLHtkOiJNNyAyMWgxMCJ9XSxbInBhdGgiLHtkOiJNMTkuNSAxMiAyMiA2In1dLFsicGF0aCIse2Q6Ik0xNi4yNSAzYy4yNy4xLjguNTMuNzUgMS4zNi0uMDYuODMtLjkzIDEuMi0xIDIuMDItLjA1Ljc4LjM0IDEuMjQuNzMgMS42MiJ9XSxbInBhdGgiLHtkOiJNMTEuMjUgM2MuMjcuMS44LjUzLjc0IDEuMzYtLjA1LjgzLS45MyAxLjItLjk4IDIuMDItLjA2Ljc4LjMzIDEuMjQuNzIgMS42MiJ9XSxbInBhdGgiLHtkOiJNNi4yNSAzYy4yNy4xLjguNTMuNzUgMS4zNi0uMDYuODMtLjkzIDEuMi0xIDIuMDItLjA1Ljc4LjM0IDEuMjQuNzQgMS42MiJ9XV19KTt2YXIgeFYsaGl0PWwoKCk9Pnt4Vj1bWyJwYXRoIix7ZDoiTTIyIDE3djFjMCAuNS0uNSAxLTEgMUgzYy0uNSAwLTEtLjUtMS0xdi0xIn1dXX0pO3ZhciBiVixtaXQ9bCgoKT0+e2JWPVtbInBhdGgiLHtkOiJNMTIgMTh2NCJ9XSxbInBhdGgiLHtkOiJNMiAxNC40OTlhNS41IDUuNSAwIDAgMCA5LjU5MSAzLjY3NS42LjYgMCAwIDEgLjgxOC4wMDFBNS41IDUuNSAwIDAgMCAyMiAxNC41YzAtMi4yOS0xLjUtNC0zLTUuNWwtNS40OTItNS4zMTJhMiAyIDAgMCAwLTMtLjAyTDUgOC45OTljLTEuNSAxLjUtMyAzLjItMyA1LjUifV1dfSk7dmFyIHZWLGdpdD1sKCgpPT57dlY9W1sicGF0aCIse2Q6Ik0xMS4wMTcgMi44MTRhMSAxIDAgMCAxIDEuOTY2IDBsMS4wNTEgNS41NThhMiAyIDAgMCAwIDEuNTk0IDEuNTk0bDUuNTU4IDEuMDUxYTEgMSAwIDAgMSAwIDEuOTY2bC01LjU1OCAxLjA1MWEyIDIgMCAwIDAtMS41OTQgMS41OTRsLTEuMDUxIDUuNTU4YTEgMSAwIDAgMS0xLjk2NiAwbC0xLjA1MS01LjU1OGEyIDIgMCAwIDAtMS41OTQtMS41OTRsLTUuNTU4LTEuMDUxYTEgMSAwIDAgMSAwLTEuOTY2bDUuNTU4LTEuMDUxYTIgMiAwIDAgMCAxLjU5NC0xLjU5NHoifV1dfSk7dmFyIFk1LHhpdD1sKCgpPT57WTU9W1sicGF0aCIse2Q6Ik0xMS4wMTcgMi44MTRhMSAxIDAgMCAxIDEuOTY2IDBsMS4wNTEgNS41NThhMiAyIDAgMCAwIDEuNTk0IDEuNTk0bDUuNTU4IDEuMDUxYTEgMSAwIDAgMSAwIDEuOTY2bC01LjU1OCAxLjA1MWEyIDIgMCAwIDAtMS41OTQgMS41OTRsLTEuMDUxIDUuNTU4YTEgMSAwIDAgMS0xLjk2NiAwbC0xLjA1MS01LjU1OGEyIDIgMCAwIDAtMS41OTQtMS41OTRsLTUuNTU4LTEuMDUxYTEgMSAwIDAgMSAwLTEuOTY2bDUuNTU4LTEuMDUxYTIgMiAwIDAgMCAxLjU5NC0xLjU5NHoifV0sWyJwYXRoIix7ZDoiTTIwIDJ2NCJ9XSxbInBhdGgiLHtkOiJNMjIgNGgtNCJ9XSxbImNpcmNsZSIse2N4OiI0IixjeToiMjAiLHI6IjIifV1dfSk7dmFyIHlWLGJpdD1sKCgpPT57eVY9W1sicmVjdCIse3dpZHRoOiIxNiIsaGVpZ2h0OiIyMCIseDoiNCIseToiMiIscng6IjIifV0sWyJwYXRoIix7ZDoiTTEyIDZoLjAxIn1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiMTQiLHI6IjQifV0sWyJwYXRoIix7ZDoiTTEyIDE0aC4wMSJ9XV19KTt2YXIgd1Ysdml0PWwoKCk9Pnt3Vj1bWyJwYXRoIix7ZDoiTTguOCAyMHYtNC4xbDEuOS4yYTIuMyAyLjMgMCAwIDAgMi4xNjQtMi4xVjguM0E1LjM3IDUuMzcgMCAwIDAgMiA4LjI1YzAgMi44LjY1NiAzLjA1NCAxIDQuNTVhNS43NyA1Ljc3IDAgMCAxIC4wMjkgMi43NThMMiAyMCJ9XSxbInBhdGgiLHtkOiJNMTkuOCAxNy44YTcuNSA3LjUgMCAwIDAgLjAwMy0xMC42MDMifV0sWyJwYXRoIix7ZDoiTTE3IDE1YTMuNSAzLjUgMCAwIDAtLjAyNS00Ljk3NSJ9XV19KTt2YXIgTVYseWl0PWwoKCk9PntNVj1bWyJwYXRoIix7ZDoibTYgMTYgNi0xMiA2IDEyIn1dLFsicGF0aCIse2Q6Ik04IDEyaDgifV0sWyJwYXRoIix7ZDoiTTQgMjFjMS4xIDAgMS4xLTEgMi4zLTFzMS4xIDEgMi4zIDFjMS4xIDAgMS4xLTEgMi4zLTEgMS4xIDAgMS4xIDEgMi4zIDEgMS4xIDAgMS4xLTEgMi4zLTEgMS4xIDAgMS4xIDEgMi4zIDEgMS4xIDAgMS4xLTEgMi4zLTEifV1dfSk7dmFyIGtWLHdpdD1sKCgpPT57a1Y9W1sicGF0aCIse2Q6Ik0xMi4wMzQgMTIuNjgxYS40OTguNDk4IDAgMCAxIC42NDctLjY0N2w5IDMuNWEuNS41IDAgMCAxLS4wMzMuOTQzbC0zLjQ0NCAxLjA2OGExIDEgMCAwIDAtLjY2LjY2bC0xLjA2NyAzLjQ0M2EuNS41IDAgMCAxLS45NDMuMDMzeiJ9XSxbInBhdGgiLHtkOiJNNSAxN0ExMiAxMiAwIDAgMSAxNyA1In1dLFsiY2lyY2xlIix7Y3g6IjE5IixjeToiNSIscjoiMiJ9XSxbImNpcmNsZSIse2N4OiI1IixjeToiMTkiLHI6IjIifV1dfSk7dmFyIFNWLE1pdD1sKCgpPT57U1Y9W1sicGF0aCIse2Q6Im02IDE2IDYtMTIgNiAxMiJ9XSxbInBhdGgiLHtkOiJNOCAxMmg4In1dLFsicGF0aCIse2Q6Im0xNiAyMCAyIDIgNC00In1dXX0pO3ZhciB6VixraXQ9bCgoKT0+e3pWPVtbImNpcmNsZSIse2N4OiIxOSIsY3k6IjUiLHI6IjIifV0sWyJjaXJjbGUiLHtjeDoiNSIsY3k6IjE5IixyOiIyIn1dLFsicGF0aCIse2Q6Ik01IDE3QTEyIDEyIDAgMCAxIDE3IDUifV1dfSk7dmFyIENWLFNpdD1sKCgpPT57Q1Y9W1sicGF0aCIse2Q6Ik0xNiAzaDV2NSJ9XSxbInBhdGgiLHtkOiJNOCAzSDN2NSJ9XSxbInBhdGgiLHtkOiJNMTIgMjJ2LTguM2E0IDQgMCAwIDAtMS4xNzItMi44NzJMMyAzIn1dLFsicGF0aCIse2Q6Im0xNSA5IDYtNiJ9XV19KTt2YXIgX1Yseml0PWwoKCk9PntfVj1bWyJwYXRoIix7ZDoiTTE3IDEzLjQ0IDQuNDQyIDE3LjA4MkEyIDIgMCAwIDAgNC45ODIgMjFIMTlhMiAyIDAgMCAwIC41NTgtMy45MjFsLTEuMTE1LS4zMkEyIDIgMCAwIDEgMTcgMTQuODM3VjcuNjYifV0sWyJwYXRoIix7ZDoibTcgMTAuNTYgMTIuNTU4LTMuNjQyQTIgMiAwIDAgMCAxOS4wMTggM0g1YTIgMiAwIDAgMC0uNTU4IDMuOTIxbDEuMTE1LjMyQTIgMiAwIDAgMSA3IDkuMTYzdjcuMTc4In1dXX0pO3ZhciBUVixDaXQ9bCgoKT0+e1RWPVtbInBhdGgiLHtkOiJNMyAzaC4wMSJ9XSxbInBhdGgiLHtkOiJNNyA1aC4wMSJ9XSxbInBhdGgiLHtkOiJNMTEgN2guMDEifV0sWyJwYXRoIix7ZDoiTTMgN2guMDEifV0sWyJwYXRoIix7ZDoiTTcgOWguMDEifV0sWyJwYXRoIix7ZDoiTTMgMTFoLjAxIn1dLFsicmVjdCIse3dpZHRoOiI0IixoZWlnaHQ6IjQiLHg6IjE1Iix5OiI1In1dLFsicGF0aCIse2Q6Im0xOSA5IDIgMnYxMGMwIC42LS40IDEtMSAxaC02Yy0uNiAwLTEtLjQtMS0xVjExbDItMiJ9XSxbInBhdGgiLHtkOiJtMTMgMTQgOC0yIn1dLFsicGF0aCIse2Q6Im0xMyAxOSA4LTIifV1dfSk7dmFyIExWLF9pdD1sKCgpPT57TFY9W1sicGF0aCIse2Q6Ik0xNS4yOTUgMTkuNTYyIDE2IDIyIn1dLFsicGF0aCIse2Q6Im0xNyAxNiAzLjc1OCAyLjA5OCJ9XSxbInBhdGgiLHtkOiJtMTkgMTIuNSAzLjAyNi0uNTk4In1dLFsicGF0aCIse2Q6Ik03LjYxIDYuM2EzIDMgMCAwIDAtMy45MiAxLjNsLTEuMzggMi43OWEzIDMgMCAwIDAgMS4zIDMuOTFsNi44OSAzLjU5N2ExIDEgMCAwIDAgMS4zNDItLjQ0N2wzLjEwNi02LjIxMWExIDEgMCAwIDAtLjQ0Ny0xLjM0MXoifV0sWyJwYXRoIix7ZDoiTTggOVYyIn1dXX0pO3ZhciBEVixUaXQ9bCgoKT0+e0RWPVtbInBhdGgiLHtkOiJNMTQgOS41MzZWN2E0IDQgMCAwIDEgNC00aDEuNWEuNS41IDAgMCAxIC41LjVWNWE0IDQgMCAwIDEtNCA0IDQgNCAwIDAgMC00IDRjMCAyIDEgMyAxIDVhNSA1IDAgMCAxLTEgMyJ9XSxbInBhdGgiLHtkOiJNNCA5YTUgNSAwIDAgMSA4IDQgNSA1IDAgMCAxLTgtNCJ9XSxbInBhdGgiLHtkOiJNNSAyMWgxNCJ9XV19KTt2YXIgWjUsTGl0PWwoKCk9PntaNT1bWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiIzIixyeDoiMiJ9XSxbInBhdGgiLHtkOiJtMTYgOC04IDgifV0sWyJwYXRoIix7ZDoiTTE2IDE2SDhWOCJ9XV19KTt2YXIgWDUsRGl0PWwoKCk9PntYNT1bWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiIzIixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNMTcgMTJoLTJsLTIgNS0yLTEwLTIgNUg3In1dXX0pO3ZhciBRNSxBaXQ9bCgoKT0+e1E1PVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Im04IDggOCA4In1dLFsicGF0aCIse2Q6Ik0xNiA4djhIOCJ9XV19KTt2YXIgSzUsRWl0PWwoKCk9PntLNT1bWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiIzIixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNMTIgOHY4In1dLFsicGF0aCIse2Q6Im04IDEyIDQgNCA0LTQifV1dfSk7dmFyIEo1LCRpdD1sKCgpPT57SjU9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoibTEyIDgtNCA0IDQgNCJ9XSxbInBhdGgiLHtkOiJNMTYgMTJIOCJ9XV19KTt2YXIgZXAsUGl0PWwoKCk9PntlcD1bWyJwYXRoIix7ZDoiTTEzIDIxaDZhMiAyIDAgMCAwIDItMlY1YTIgMiAwIDAgMC0yLTJINWEyIDIgMCAwIDAtMiAydjYifV0sWyJwYXRoIix7ZDoibTMgMjEgOS05In1dLFsicGF0aCIse2Q6Ik05IDIxSDN2LTYifV1dfSk7dmFyIHRwLElpdD1sKCgpPT57dHA9W1sicGF0aCIse2Q6Ik0yMSAxMVY1YTIgMiAwIDAgMC0yLTJINWEyIDIgMCAwIDAtMiAydjE0YTIgMiAwIDAgMCAyIDJoNiJ9XSxbInBhdGgiLHtkOiJtMjEgMjEtOS05In1dLFsicGF0aCIse2Q6Ik0yMSAxNXY2aC02In1dXX0pO3ZhciBycCxOaXQ9bCgoKT0+e3JwPVtbInBhdGgiLHtkOiJNMTMgM2g2YTIgMiAwIDAgMSAyIDJ2MTRhMiAyIDAgMCAxLTIgMkg1YTIgMiAwIDAgMS0yLTJ2LTYifV0sWyJwYXRoIix7ZDoibTMgMyA5IDkifV0sWyJwYXRoIix7ZDoiTTMgOVYzaDYifV1dfSk7dmFyIGFwLEZpdD1sKCgpPT57YXA9W1sicGF0aCIse2Q6Ik0yMSAxM3Y2YTIgMiAwIDAgMS0yIDJINWEyIDIgMCAwIDEtMi0yVjVhMiAyIDAgMCAxIDItMmg2In1dLFsicGF0aCIse2Q6Im0yMSAzLTkgOSJ9XSxbInBhdGgiLHtkOiJNMTUgM2g2djYifV1dfSk7dmFyIEFWLE9pdD1sKCgpPT57QVY9W1sicGF0aCIse2Q6Im0xMCAxNiA0LTQtNC00In1dLFsicGF0aCIse2Q6Ik0zIDEyaDExIn1dLFsicGF0aCIse2Q6Ik0zIDhWNWEyIDIgMCAwIDEgMi0yaDE0YTIgMiAwIDAgMSAyIDJ2MTRhMiAyIDAgMCAxLTIgMkg1YTIgMiAwIDAgMS0yLTJ2LTMifV1dfSk7dmFyIEVWLFJpdD1sKCgpPT57RVY9W1sicGF0aCIse2Q6Ik0xMCAxMmgxMSJ9XSxbInBhdGgiLHtkOiJtMTcgMTYgNC00LTQtNCJ9XSxbInBhdGgiLHtkOiJNMjEgNi4zNDRWNWEyIDIgMCAwIDAtMi0ySDVhMiAyIDAgMCAwLTIgMnYxNGEyIDIgMCAwIDAgMiAyaDE0YTIgMiAwIDAgMCAyLTJ2LTEuMzQ0In1dXX0pO3ZhciBpcCxCaXQ9bCgoKT0+e2lwPVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik04IDEyaDgifV0sWyJwYXRoIix7ZDoibTEyIDE2IDQtNC00LTQifV1dfSk7dmFyIG9wLEhpdD1sKCgpPT57b3A9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoiTTggMTZWOGg4In1dLFsicGF0aCIse2Q6Ik0xNiAxNiA4IDgifV1dfSk7dmFyIG5wLHFpdD1sKCgpPT57bnA9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoiTTggOGg4djgifV0sWyJwYXRoIix7ZDoibTggMTYgOC04In1dXX0pO3ZhciBzcCxqaXQ9bCgoKT0+e3NwPVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Im0xNiAxMi00LTQtNCA0In1dLFsicGF0aCIse2Q6Ik0xMiAxNlY4In1dXX0pO3ZhciBscCxWaXQ9bCgoKT0+e2xwPVtbInBhdGgiLHtkOiJNOCAzSDVhMiAyIDAgMCAwLTIgMnYxNGMwIDEuMS45IDIgMiAyaDMifV0sWyJwYXRoIix7ZDoiTTE2IDNoM2EyIDIgMCAwIDEgMiAydjE0YTIgMiAwIDAgMS0yIDJoLTMifV0sWyJwYXRoIix7ZDoiTTEyIDIwdjIifV0sWyJwYXRoIix7ZDoiTTEyIDE0djIifV0sWyJwYXRoIix7ZDoiTTEyIDh2MiJ9XSxbInBhdGgiLHtkOiJNMTIgMnYyIn1dXX0pO3ZhciBjcCxVaXQ9bCgoKT0+e2NwPVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik0xMiA4djgifV0sWyJwYXRoIix7ZDoibTguNSAxNCA3LTQifV0sWyJwYXRoIix7ZDoibTguNSAxMCA3IDQifV1dfSk7dmFyIGRwLFdpdD1sKCgpPT57ZHA9W1sibGluZSIse3gxOiI1Iix5MToiMyIseDI6IjE5Iix5MjoiMyJ9XSxbImxpbmUiLHt4MToiMyIseTE6IjUiLHgyOiIzIix5MjoiMTkifV0sWyJsaW5lIix7eDE6IjIxIix5MToiNSIseDI6IjIxIix5MjoiMTkifV0sWyJsaW5lIix7eDE6IjkiLHkxOiIyMSIseDI6IjEwIix5MjoiMjEifV0sWyJsaW5lIix7eDE6IjE0Iix5MToiMjEiLHgyOiIxNSIseTI6IjIxIn1dLFsicGF0aCIse2Q6Ik0gMyA1IEEyIDIgMCAwIDEgNSAzIn1dLFsicGF0aCIse2Q6Ik0gMTkgMyBBMiAyIDAgMCAxIDIxIDUifV0sWyJwYXRoIix7ZDoiTSA1IDIxIEEyIDIgMCAwIDEgMyAxOSJ9XSxbInBhdGgiLHtkOiJNIDIxIDE5IEEyIDIgMCAwIDEgMTkgMjEifV0sWyJjaXJjbGUiLHtjeDoiOC41IixjeToiOC41IixyOiIxLjUifV0sWyJsaW5lIix7eDE6IjkuNTYwNjYiLHkxOiI5LjU2MDY2Iix4MjoiMTIiLHkyOiIxMiJ9XSxbImxpbmUiLHt4MToiMTciLHkxOiIxNyIseDI6IjE0LjgyIix5MjoiMTQuODIifV0sWyJjaXJjbGUiLHtjeDoiOC41IixjeToiMTUuNSIscjoiMS41In1dLFsibGluZSIse3gxOiI5LjU2MDY2Iix5MToiMTQuNDM5MzQiLHgyOiIxNyIseTI6IjcifV1dfSk7dmFyIHVwLEdpdD1sKCgpPT57dXA9W1sicGF0aCIse2Q6Ik0yMSA4VjVhMiAyIDAgMCAwLTItMkg1YTIgMiAwIDAgMC0yIDJ2MyJ9XSxbInBhdGgiLHtkOiJNMjEgMTZ2M2EyIDIgMCAwIDEtMiAySDVhMiAyIDAgMCAxLTItMnYtMyJ9XSxbInBhdGgiLHtkOiJNNCAxMkgyIn1dLFsicGF0aCIse2Q6Ik0xMCAxMkg4In1dLFsicGF0aCIse2Q6Ik0xNiAxMmgtMiJ9XSxbInBhdGgiLHtkOiJNMjIgMTJoLTIifV1dfSk7dmFyICRjLFlpdD1sKCgpPT57JGM9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoiTTkgOGg3In1dLFsicGF0aCIse2Q6Ik04IDEyaDYifV0sWyJwYXRoIix7ZDoiTTExIDE2aDUifV1dfSk7dmFyIGZwLFppdD1sKCgpPT57ZnA9W1sicGF0aCIse2Q6Ik0yMSAxMC42NTZWMTlhMiAyIDAgMCAxLTIgMkg1YTIgMiAwIDAgMS0yLTJWNWEyIDIgMCAwIDEgMi0yaDEyLjM0NCJ9XSxbInBhdGgiLHtkOiJtOSAxMSAzIDNMMjIgNCJ9XV19KTt2YXIgcHAsWGl0PWwoKCk9PntwcD1bWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiIzIixyeDoiMiJ9XSxbInBhdGgiLHtkOiJtOSAxMiAyIDIgNC00In1dXX0pO3ZhciBocCxRaXQ9bCgoKT0+e2hwPVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Im0xNiAxMC00IDQtNC00In1dXX0pO3ZhciBtcCxLaXQ9bCgoKT0+e21wPVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Im0xNCAxNi00LTQgNC00In1dXX0pO3ZhciBncCxKaXQ9bCgoKT0+e2dwPVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Im0xMCA4IDQgNC00IDQifV1dfSk7dmFyIHhwLGUxdD1sKCgpPT57eHA9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoibTggMTQgNC00IDQgNCJ9XV19KTt2YXIgYnAsdDF0PWwoKCk9PnticD1bWyJwYXRoIix7ZDoibTEwIDktMyAzIDMgMyJ9XSxbInBhdGgiLHtkOiJtMTQgMTUgMy0zLTMtMyJ9XSxbInJlY3QiLHt4OiIzIix5OiIzIix3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHJ4OiIyIn1dXX0pO3ZhciAkVixyMXQ9bCgoKT0+eyRWPVtbInBhdGgiLHtkOiJNMTAgOS41IDggMTJsMiAyLjUifV0sWyJwYXRoIix7ZDoiTTE0IDIxaDEifV0sWyJwYXRoIix7ZDoibTE0IDkuNSAyIDIuNS0yIDIuNSJ9XSxbInBhdGgiLHtkOiJNNSAyMWEyIDIgMCAwIDEtMi0yVjVhMiAyIDAgMCAxIDItMmgxNGEyIDIgMCAwIDEgMiAydjE0YTIgMiAwIDAgMS0yIDIifV0sWyJwYXRoIix7ZDoiTTkgMjFoMSJ9XV19KTt2YXIgUFYsYTF0PWwoKCk9PntQVj1bWyJwYXRoIix7ZDoiTTUgMjFhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJoMTRhMiAyIDAgMCAxIDIgMnYxNGEyIDIgMCAwIDEtMiAyIn1dLFsicGF0aCIse2Q6Ik05IDIxaDEifV0sWyJwYXRoIix7ZDoiTTE0IDIxaDEifV1dfSk7dmFyIHZwLGkxdD1sKCgpPT57dnA9W1sicGF0aCIse2Q6Ik04IDd2NyJ9XSxbInBhdGgiLHtkOiJNMTIgN3Y0In1dLFsicGF0aCIse2Q6Ik0xNiA3djkifV0sWyJwYXRoIix7ZDoiTTUgM2EyIDIgMCAwIDAtMiAyIn1dLFsicGF0aCIse2Q6Ik05IDNoMSJ9XSxbInBhdGgiLHtkOiJNMTQgM2gxIn1dLFsicGF0aCIse2Q6Ik0xOSAzYTIgMiAwIDAgMSAyIDIifV0sWyJwYXRoIix7ZDoiTTIxIDl2MSJ9XSxbInBhdGgiLHtkOiJNMjEgMTR2MSJ9XSxbInBhdGgiLHtkOiJNMjEgMTlhMiAyIDAgMCAxLTIgMiJ9XSxbInBhdGgiLHtkOiJNMTQgMjFoMSJ9XSxbInBhdGgiLHtkOiJNOSAyMWgxIn1dLFsicGF0aCIse2Q6Ik01IDIxYTIgMiAwIDAgMS0yLTIifV0sWyJwYXRoIix7ZDoiTTMgMTR2MSJ9XSxbInBhdGgiLHtkOiJNMyA5djEifV1dfSk7dmFyIHlwLG8xdD1sKCgpPT57eXA9W1sicGF0aCIse2Q6Ik0xMi4wMzQgMTIuNjgxYS40OTguNDk4IDAgMCAxIC42NDctLjY0N2w5IDMuNWEuNS41IDAgMCAxLS4wMzMuOTQzbC0zLjQ0NCAxLjA2OGExIDEgMCAwIDAtLjY2LjY2bC0xLjA2NyAzLjQ0M2EuNS41IDAgMCAxLS45NDMuMDMzeiJ9XSxbInBhdGgiLHtkOiJNNSAzYTIgMiAwIDAgMC0yIDIifV0sWyJwYXRoIix7ZDoiTTE5IDNhMiAyIDAgMCAxIDIgMiJ9XSxbInBhdGgiLHtkOiJNNSAyMWEyIDIgMCAwIDEtMi0yIn1dLFsicGF0aCIse2Q6Ik05IDNoMSJ9XSxbInBhdGgiLHtkOiJNOSAyMWgyIn1dLFsicGF0aCIse2Q6Ik0xNCAzaDEifV0sWyJwYXRoIix7ZDoiTTMgOXYxIn1dLFsicGF0aCIse2Q6Ik0yMSA5djIifV0sWyJwYXRoIix7ZDoiTTMgMTR2MSJ9XV19KTt2YXIgSVYsbjF0PWwoKCk9PntJVj1bWyJwYXRoIix7ZDoiTTE0IDIxaDEifV0sWyJwYXRoIix7ZDoiTTIxIDE0djEifV0sWyJwYXRoIix7ZDoiTTIxIDE5YTIgMiAwIDAgMS0yIDIifV0sWyJwYXRoIix7ZDoiTTIxIDl2MSJ9XSxbInBhdGgiLHtkOiJNMyAxNHYxIn1dLFsicGF0aCIse2Q6Ik0zIDVhMiAyIDAgMCAxIDItMmgxNGEyIDIgMCAwIDEgMiAyIn1dLFsicGF0aCIse2Q6Ik0zIDl2MSJ9XSxbInBhdGgiLHtkOiJNNSAyMWEyIDIgMCAwIDEtMi0yIn1dLFsicGF0aCIse2Q6Ik05IDIxaDEifV1dfSk7dmFyIHdwLHMxdD1sKCgpPT57d3A9W1sicGF0aCIse2Q6Ik01IDNhMiAyIDAgMCAwLTIgMiJ9XSxbInBhdGgiLHtkOiJNMTkgM2EyIDIgMCAwIDEgMiAyIn1dLFsicGF0aCIse2Q6Ik0yMSAxOWEyIDIgMCAwIDEtMiAyIn1dLFsicGF0aCIse2Q6Ik01IDIxYTIgMiAwIDAgMS0yLTIifV0sWyJwYXRoIix7ZDoiTTkgM2gxIn1dLFsicGF0aCIse2Q6Ik05IDIxaDEifV0sWyJwYXRoIix7ZDoiTTE0IDNoMSJ9XSxbInBhdGgiLHtkOiJNMTQgMjFoMSJ9XSxbInBhdGgiLHtkOiJNMyA5djEifV0sWyJwYXRoIix7ZDoiTTIxIDl2MSJ9XSxbInBhdGgiLHtkOiJNMyAxNHYxIn1dLFsicGF0aCIse2Q6Ik0yMSAxNHYxIn1dXX0pO3ZhciBNcCxsMXQ9bCgoKT0+e01wPVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIixyeToiMiJ9XSxbImxpbmUiLHt4MToiOCIseDI6IjE2Iix5MToiMTIiLHkyOiIxMiJ9XSxbImxpbmUiLHt4MToiMTIiLHgyOiIxMiIseTE6IjE2Iix5MjoiMTYifV0sWyJsaW5lIix7eDE6IjEyIix4MjoiMTIiLHkxOiI4Iix5MjoiOCJ9XV19KTt2YXIga3AsYzF0PWwoKCk9PntrcD1bWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiIzIixyeDoiMiJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxIn1dXX0pO3ZhciBTcCxkMXQ9bCgoKT0+e1NwPVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik03IDEwaDEwIn1dLFsicGF0aCIse2Q6Ik03IDE0aDEwIn1dXX0pO3ZhciB6cCx1MXQ9bCgoKT0+e3pwPVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIixyeToiMiJ9XSxbInBhdGgiLHtkOiJNOSAxN2MyIDAgMi44LTEgMi44LTIuOFYxMGMwLTIgMS0zLjMgMy4yLTMifV0sWyJwYXRoIix7ZDoiTTkgMTEuMmg1LjcifV1dfSk7dmFyIENwLGYxdD1sKCgpPT57Q3A9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoiTTggN3Y3In1dLFsicGF0aCIse2Q6Ik0xMiA3djQifV0sWyJwYXRoIix7ZDoiTTE2IDd2OSJ9XV19KTt2YXIgX3AscDF0PWwoKCk9PntfcD1bWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiIzIixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNNyA3djEwIn1dLFsicGF0aCIse2Q6Ik0xMSA3djEwIn1dLFsicGF0aCIse2Q6Im0xNSA3IDIgMTAifV1dfSk7dmFyIFRwLGgxdD1sKCgpPT57VHA9W1sicGF0aCIse2Q6Ik04IDE2VjguNWEuNS41IDAgMCAxIC45LS4zbDIuNyAzLjU5OWEuNS41IDAgMCAwIC44IDBsMi43LTMuNmEuNS41IDAgMCAxIC45LjNWMTYifV0sWyJyZWN0Iix7eDoiMyIseToiMyIsd2lkdGg6IjE4IixoZWlnaHQ6IjE4IixyeDoiMiJ9XV19KTt2YXIgTHAsbTF0PWwoKCk9PntMcD1bWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiIzIixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNNyA4aDEwIn1dLFsicGF0aCIse2Q6Ik03IDEyaDEwIn1dLFsicGF0aCIse2Q6Ik03IDE2aDEwIn1dXX0pO3ZhciBEcCxnMXQ9bCgoKT0+e0RwPVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik04IDEyaDgifV1dfSk7dmFyIEFwLHgxdD1sKCgpPT57QXA9W1sicGF0aCIse2Q6Ik0xMi4wMzQgMTIuNjgxYS40OTguNDk4IDAgMCAxIC42NDctLjY0N2w5IDMuNWEuNS41IDAgMCAxLS4wMzMuOTQzbC0zLjQ0NCAxLjA2OGExIDEgMCAwIDAtLjY2LjY2bC0xLjA2NyAzLjQ0M2EuNS41IDAgMCAxLS45NDMuMDMzeiJ9XSxbInBhdGgiLHtkOiJNMjEgMTFWNWEyIDIgMCAwIDAtMi0ySDVhMiAyIDAgMCAwLTIgMnYxNGEyIDIgMCAwIDAgMiAyaDYifV1dfSk7dmFyIEVwLGIxdD1sKCgpPT57RXA9W1sicGF0aCIse2Q6Ik0zLjYgMy42QTIgMiAwIDAgMSA1IDNoMTRhMiAyIDAgMCAxIDIgMnYxNGEyIDIgMCAwIDEtLjU5IDEuNDEifV0sWyJwYXRoIix7ZDoiTTMgOC43VjE5YTIgMiAwIDAgMCAyIDJoMTAuMyJ9XSxbInBhdGgiLHtkOiJtMiAyIDIwIDIwIn1dLFsicGF0aCIse2Q6Ik0xMyAxM2EzIDMgMCAxIDAgMC02SDl2MiJ9XSxbInBhdGgiLHtkOiJNOSAxN3YtMi4zIn1dXX0pO3ZhciAkcCx2MXQ9bCgoKT0+eyRwPVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik05IDE3VjdoNGEzIDMgMCAwIDEgMCA2SDkifV1dfSk7dmFyIE5WLHkxdD1sKCgpPT57TlY9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIifV0sWyJsaW5lIix7eDE6IjEwIix4MjoiMTAiLHkxOiIxNSIseTI6IjkifV0sWyJsaW5lIix7eDE6IjE0Iix4MjoiMTQiLHkxOiIxNSIseTI6IjkifV1dfSk7dmFyICRzLHcxdD1sKCgpPT57JHM9W1sicGF0aCIse2Q6Ik0xMiAzSDVhMiAyIDAgMCAwLTIgMnYxNGEyIDIgMCAwIDAgMiAyaDE0YTIgMiAwIDAgMCAyLTJ2LTcifV0sWyJwYXRoIix7ZDoiTTE4LjM3NSAyLjYyNWExIDEgMCAwIDEgMyAzbC05LjAxMyA5LjAxNGEyIDIgMCAwIDEtLjg1My41MDVsLTIuODczLjg0YS41LjUgMCAwIDEtLjYyLS42MmwuODQtMi44NzNhMiAyIDAgMCAxIC41MDYtLjg1MnoifV1dfSk7dmFyIFBwLE0xdD1sKCgpPT57UHA9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoibTE1IDktNiA2In1dLFsicGF0aCIse2Q6Ik05IDloLjAxIn1dLFsicGF0aCIse2Q6Ik0xNSAxNWguMDEifV1dfSk7dmFyIElwLGsxdD1sKCgpPT57SXA9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoiTTcgN2gxMCJ9XSxbInBhdGgiLHtkOiJNMTAgN3YxMCJ9XSxbInBhdGgiLHtkOiJNMTYgMTdhMiAyIDAgMCAxLTItMlY3In1dXX0pO3ZhciBOcCxTMXQ9bCgoKT0+e05wPVtbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik0xMiAxMkg5LjVhMi41IDIuNSAwIDAgMSAwLTVIMTcifV0sWyJwYXRoIix7ZDoiTTEyIDd2MTAifV0sWyJwYXRoIix7ZDoiTTE2IDd2MTAifV1dfSk7dmFyIEZwLHoxdD1sKCgpPT57RnA9W1sicmVjdCIse3g6IjMiLHk6IjMiLHdpZHRoOiIxOCIsaGVpZ2h0OiIxOCIscng6IjIifV0sWyJwYXRoIix7ZDoiTTkgOS4wMDNhMSAxIDAgMCAxIDEuNTE3LS44NTlsNC45OTcgMi45OTdhMSAxIDAgMCAxIDAgMS43MThsLTQuOTk3IDIuOTk3QTEgMSAwIDAgMSA5IDE0Ljk5NnoifV1dfSk7dmFyIE9wLEMxdD1sKCgpPT57T3A9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoiTTggMTJoOCJ9XSxbInBhdGgiLHtkOiJNMTIgOHY4In1dXX0pO3ZhciBScCxfMXQ9bCgoKT0+e1JwPVtbInBhdGgiLHtkOiJNMTIgN3Y0In1dLFsicGF0aCIse2Q6Ik03Ljk5OCA5LjAwM2E1IDUgMCAxIDAgOC0uMDA1In1dLFsicmVjdCIse3g6IjMiLHk6IjMiLHdpZHRoOiIxOCIsaGVpZ2h0OiIxOCIscng6IjIifV1dfSk7dmFyIEZWLFQxdD1sKCgpPT57RlY9W1sicGF0aCIse2Q6Ik03IDEyaDJsMiA1IDItMTBoNCJ9XSxbInJlY3QiLHt4OiIzIix5OiIzIix3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHJ4OiIyIn1dXX0pO3ZhciBPVixMMXQ9bCgoKT0+e09WPVtbInBhdGgiLHtkOiJNMjEgMTFhOCA4IDAgMCAwLTgtOCJ9XSxbInBhdGgiLHtkOiJNMjEgMTV2NGEyIDIgMCAwIDEtMiAySDVhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJoNCJ9XV19KTt2YXIgQnAsRDF0PWwoKCk9PntCcD1bWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiIzIixyeDoiMiJ9XSxbImNpcmNsZSIse2N4OiI4LjUiLGN5OiI4LjUiLHI6IjEuNSJ9XSxbImxpbmUiLHt4MToiOS41NjA2NiIseTE6IjkuNTYwNjYiLHgyOiIxMiIseTI6IjEyIn1dLFsibGluZSIse3gxOiIxNyIseTE6IjE3Iix4MjoiMTQuODIiLHkyOiIxNC44MiJ9XSxbImNpcmNsZSIse2N4OiI4LjUiLGN5OiIxNS41IixyOiIxLjUifV0sWyJsaW5lIix7eDE6IjkuNTYwNjYiLHkxOiIxNC40MzkzNCIseDI6IjE3Iix5MjoiNyJ9XV19KTt2YXIgSHAsQTF0PWwoKCk9PntIcD1bWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiIzIixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNMTYgOC45VjdIOGw0IDUtNCA1aDh2LTEuOSJ9XV19KTt2YXIgcXAsRTF0PWwoKCk9PntxcD1bWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiIzIixyeDoiMiJ9XSxbImxpbmUiLHt4MToiOSIseDI6IjE1Iix5MToiMTUiLHkyOiI5In1dXX0pO3ZhciBqcCwkMXQ9bCgoKT0+e2pwPVtbInBhdGgiLHtkOiJNOCAxOUg1Yy0xIDAtMi0xLTItMlY3YzAtMSAxLTIgMi0yaDMifV0sWyJwYXRoIix7ZDoiTTE2IDVoM2MxIDAgMiAxIDIgMnYxMGMwIDEtMSAyLTIgMmgtMyJ9XSxbImxpbmUiLHt4MToiMTIiLHgyOiIxMiIseTE6IjQiLHkyOiIyMCJ9XV19KTt2YXIgVnAsUDF0PWwoKCk9PntWcD1bWyJwYXRoIix7ZDoiTTUgOFY1YzAtMSAxLTIgMi0yaDEwYzEgMCAyIDEgMiAydjMifV0sWyJwYXRoIix7ZDoiTTE5IDE2djNjMCAxLTEgMi0yIDJIN2MtMSAwLTItMS0yLTJ2LTMifV0sWyJsaW5lIix7eDE6IjQiLHgyOiIyMCIseTE6IjEyIix5MjoiMTIifV1dfSk7dmFyIFJWLEkxdD1sKCgpPT57UlY9W1sicmVjdCIse3g6IjMiLHk6IjMiLHdpZHRoOiIxOCIsaGVpZ2h0OiIxOCIscng6IjIifV0sWyJyZWN0Iix7eDoiOCIseToiOCIsd2lkdGg6IjgiLGhlaWdodDoiOCIscng6IjEifV1dfSk7dmFyIEJWLE4xdD1sKCgpPT57QlY9W1sicGF0aCIse2Q6Ik00IDEwYy0xLjEgMC0yLS45LTItMlY0YzAtMS4xLjktMiAyLTJoNGMxLjEgMCAyIC45IDIgMiJ9XSxbInBhdGgiLHtkOiJNMTAgMTZjLTEuMSAwLTItLjktMi0ydi00YzAtMS4xLjktMiAyLTJoNGMxLjEgMCAyIC45IDIgMiJ9XSxbInJlY3QiLHt3aWR0aDoiOCIsaGVpZ2h0OiI4Iix4OiIxNCIseToiMTQiLHJ4OiIyIn1dXX0pO3ZhciBIVixGMXQ9bCgoKT0+e0hWPVtbInBhdGgiLHtkOiJNMTEuMDM1IDcuNjlhMSAxIDAgMCAxIDEuOTA5LjAyNGwuNzM3IDEuNDUyYTEgMSAwIDAgMCAuNzM3LjUzNWwxLjYzNC4yNTZhMSAxIDAgMCAxIC41ODggMS44MDZsLTEuMTcyIDEuMTY4YTEgMSAwIDAgMC0uMjgyLjg2NmwuMjU5IDEuNjEzYTEgMSAwIDAgMS0xLjU0MSAxLjEzNGwtMS40NjUtLjc1YTEgMSAwIDAgMC0uOTEyIDBsLTEuNDY1Ljc1YTEgMSAwIDAgMS0xLjUzOS0xLjEzM2wuMjU4LTEuNjEzYTEgMSAwIDAgMC0uMjgyLS44NjZsLTEuMTU2LTEuMTUzYTEgMSAwIDAgMSAuNTcyLTEuODIybDEuNjMzLS4yNTZhMSAxIDAgMCAwIC43MzctLjUzNXoifV0sWyJyZWN0Iix7eDoiMyIseToiMyIsd2lkdGg6IjE4IixoZWlnaHQ6IjE4IixyeDoiMiJ9XV19KTt2YXIgcVYsTzF0PWwoKCk9PntxVj1bWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiIzIixyeDoiMiJ9XSxbInJlY3QiLHt4OiI5Iix5OiI5Iix3aWR0aDoiNiIsaGVpZ2h0OiI2IixyeDoiMSJ9XV19KTt2YXIgVXAsUjF0PWwoKCk9PntVcD1bWyJwYXRoIix7ZDoiTTE4IDIxYTYgNiAwIDAgMC0xMiAwIn1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiMTEiLHI6IjQifV0sWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiIzIixyeDoiMiJ9XV19KTt2YXIgV3AsQjF0PWwoKCk9PntXcD1bWyJwYXRoIix7ZDoibTcgMTEgMi0yLTItMiJ9XSxbInBhdGgiLHtkOiJNMTEgMTNoNCJ9XSxbInJlY3QiLHt3aWR0aDoiMTgiLGhlaWdodDoiMTgiLHg6IjMiLHk6IjMiLHJ4OiIyIixyeToiMiJ9XV19KTt2YXIgR3AsSDF0PWwoKCk9PntHcD1bWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiIzIixyeDoiMiJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEwIixyOiIzIn1dLFsicGF0aCIse2Q6Ik03IDIxdi0yYTIgMiAwIDAgMSAyLTJoNmEyIDIgMCAwIDEgMiAydjIifV1dfSk7dmFyIFlwLHExdD1sKCgpPT57WXA9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIiLHJ5OiIyIn1dLFsicGF0aCIse2Q6Im0xNSA5LTYgNiJ9XSxbInBhdGgiLHtkOiJtOSA5IDYgNiJ9XV19KTt2YXIgalYsajF0PWwoKCk9PntqVj1bWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiIzIixyeDoiMiJ9XV19KTt2YXIgVlYsVjF0PWwoKCk9PntWVj1bWyJwYXRoIix7ZDoiTTE2IDEydjJhMiAyIDAgMCAxLTIgMkg5YTEgMSAwIDAgMC0xIDF2M2EyIDIgMCAwIDAgMiAyaDEwYTIgMiAwIDAgMCAyLTJWMTBhMiAyIDAgMCAwLTItMmgwIn1dLFsicGF0aCIse2Q6Ik00IDE2YTIgMiAwIDAgMS0yLTJWNGEyIDIgMCAwIDEgMi0yaDEwYTIgMiAwIDAgMSAyIDJ2M2ExIDEgMCAwIDEtMSAxaC01YTIgMiAwIDAgMC0yIDJ2MiJ9XV19KTt2YXIgVVYsVTF0PWwoKCk9PntVVj1bWyJwYXRoIix7ZDoiTTEwIDIyYTIgMiAwIDAgMS0yLTIifV0sWyJwYXRoIix7ZDoiTTE0IDJhMiAyIDAgMCAxIDIgMiJ9XSxbInBhdGgiLHtkOiJNMTYgMjJoLTIifV0sWyJwYXRoIix7ZDoiTTIgMTBWOCJ9XSxbInBhdGgiLHtkOiJNMiA0YTIgMiAwIDAgMSAyLTIifV0sWyJwYXRoIix7ZDoiTTIwIDhhMiAyIDAgMCAxIDIgMiJ9XSxbInBhdGgiLHtkOiJNMjIgMTR2MiJ9XSxbInBhdGgiLHtkOiJNMjIgMjBhMiAyIDAgMCAxLTIgMiJ9XSxbInBhdGgiLHtkOiJNNCAxNmEyIDIgMCAwIDEtMi0yIn1dLFsicGF0aCIse2Q6Ik04IDEwYTIgMiAwIDAgMSAyLTJoNWExIDEgMCAwIDEgMSAxdjVhMiAyIDAgMCAxLTIgMkg5YTEgMSAwIDAgMS0xLTF6In1dLFsicGF0aCIse2Q6Ik04IDJoMiJ9XV19KTt2YXIgV1YsVzF0PWwoKCk9PntXVj1bWyJwYXRoIix7ZDoiTTEwIDIyYTIgMiAwIDAgMS0yLTIifV0sWyJwYXRoIix7ZDoiTTE2IDIyaC0yIn1dLFsicGF0aCIse2Q6Ik0xNiA0YTIgMiAwIDAgMC0yLTJINGEyIDIgMCAwIDAtMiAydjEwYTIgMiAwIDAgMCAyIDJoM2ExIDEgMCAwIDAgMS0xdi01YTIgMiAwIDAgMSAyLTJoNWExIDEgMCAwIDAgMS0xeiJ9XSxbInBhdGgiLHtkOiJNMjAgOGEyIDIgMCAwIDEgMiAyIn1dLFsicGF0aCIse2Q6Ik0yMiAxNHYyIn1dLFsicGF0aCIse2Q6Ik0yMiAyMGEyIDIgMCAwIDEtMiAyIn1dXX0pO3ZhciBHVixHMXQ9bCgoKT0+e0dWPVtbInBhdGgiLHtkOiJNNCAxNmEyIDIgMCAwIDEtMi0yVjRhMiAyIDAgMCAxIDItMmgxMGEyIDIgMCAwIDEgMiAydjNhMSAxIDAgMCAwIDEgMWgzYTIgMiAwIDAgMSAyIDJ2MTBhMiAyIDAgMCAxLTIgMkgxMGEyIDIgMCAwIDEtMi0ydi0zYTEgMSAwIDAgMC0xLTF6In1dXX0pO3ZhciBZVixZMXQ9bCgoKT0+e1lWPVtbInBhdGgiLHtkOiJNMTMuNzcgMy4wNDNhMzQgMzQgMCAwIDAtMy41NCAwIn1dLFsicGF0aCIse2Q6Ik0xMy43NzEgMjAuOTU2YTMzIDMzIDAgMCAxLTMuNTQxLjAwMSJ9XSxbInBhdGgiLHtkOiJNMjAuMTggMTcuNzRjLS41MSAxLjE1LTEuMjkgMS45My0yLjQzOSAyLjQ0In1dLFsicGF0aCIse2Q6Ik0yMC4xOCA2LjI1OWMtLjUxLTEuMTQ4LTEuMjkxLTEuOTI5LTIuNDQtMi40MzgifV0sWyJwYXRoIix7ZDoiTTIwLjk1NyAxMC4yM2EzMyAzMyAwIDAgMSAwIDMuNTQifV0sWyJwYXRoIix7ZDoiTTMuMDQzIDEwLjIzYTM0IDM0IDAgMCAwIC4wMDEgMy41NDEifV0sWyJwYXRoIix7ZDoiTTYuMjYgMjAuMTc5Yy0xLjE1LS41MDgtMS45My0xLjI5LTIuNDQtMi40MzgifV0sWyJwYXRoIix7ZDoiTTYuMjYgMy44MmMtMS4xNDkuNTEtMS45MyAxLjI5MS0yLjQ0IDIuNDQifV1dfSk7dmFyIFpWLFoxdD1sKCgpPT57WlY9W1sicGF0aCIse2Q6Ik0xMiAzYzcuMiAwIDkgMS44IDkgOXMtMS44IDktOSA5LTktMS44LTktOSAxLjgtOSA5LTkifV1dfSk7dmFyIFhWLFgxdD1sKCgpPT57WFY9W1sicGF0aCIse2Q6Ik0xNCAxM1Y4LjVDMTQgNyAxNSA3IDE1IDVhMyAzIDAgMCAwLTYgMGMwIDIgMSAyIDEgMy41VjEzIn1dLFsicGF0aCIse2Q6Ik0yMCAxNS41YTIuNSAyLjUgMCAwIDAtMi41LTIuNWgtMTFBMi41IDIuNSAwIDAgMCA0IDE1LjVWMTdhMSAxIDAgMCAwIDEgMWgxNGExIDEgMCAwIDAgMS0xeiJ9XSxbInBhdGgiLHtkOiJNNSAyMmgxNCJ9XV19KTt2YXIgUVYsUTF0PWwoKCk9PntRVj1bWyJwYXRoIix7ZDoiTTE1LjIzNiAyMmEzIDMgMCAwIDAtMi4yLTUifV0sWyJwYXRoIix7ZDoiTTE2IDIwYTMgMyAwIDAgMSAzLTNoMWEyIDIgMCAwIDAgMi0ydi0yYTQgNCAwIDAgMC00LTRWNCJ9XSxbInBhdGgiLHtkOiJNMTggMTNoLjAxIn1dLFsicGF0aCIse2Q6Ik0xOCA2YTQgNCAwIDAgMC00IDQgNyA3IDAgMCAwLTcgN2MwLTUgNC01IDQtMTAuNWE0LjUgNC41IDAgMSAwLTkgMCAyLjUgMi41IDAgMCAwIDUgMEM3IDEwIDMgMTEgMyAxN2MwIDIuOCAyLjIgNSA1IDVoMTAifV1dfSk7dmFyIEtWLEsxdD1sKCgpPT57S1Y9W1sicGF0aCIse2Q6Ik0xMiAxOC4zMzhhMi4xIDIuMSAwIDAgMC0uOTg3LjI0NEw2LjM5NiAyMS4wMWEuNTMuNTMgMCAwIDEtLjc3LS41NmwuODgxLTUuMTM5YTIuMTIgMi4xMiAwIDAgMC0uNjExLTEuODc5TDIuMTYgOS43OTVhLjUzLjUzIDAgMCAxIC4yOTQtLjkwNmw1LjE2NS0uNzU1YTIuMTIgMi4xMiAwIDAgMCAxLjU5Ny0xLjE2bDIuMzA5LTQuNjc5QS41My41MyAwIDAgMSAxMiAyIn1dXX0pO3ZhciBKVixKMXQ9bCgoKT0+e0pWPVtbInBhdGgiLHtkOiJtMTAuMzQ0IDQuNjg4IDEuMTgxLTIuMzkzYS41My41MyAwIDAgMSAuOTUgMGwyLjMxIDQuNjc5YTIuMTIgMi4xMiAwIDAgMCAxLjU5NSAxLjE2bDUuMTY2Ljc1NmEuNTMuNTMgMCAwIDEgLjI5NC45MDRsLTMuMjM3IDMuMTUyIn1dLFsicGF0aCIse2Q6Im0xNy45NDUgMTcuOTQ1LjQzIDIuNTA1YS41My41MyAwIDAgMS0uNzcxLjU2bC00LjYxOC0yLjQyOGEyLjEyIDIuMTIgMCAwIDAtMS45NzMgMEw2LjM5NiAyMS4wMWEuNTMuNTMgMCAwIDEtLjc3LS41NmwuODgxLTUuMTM5YTIuMTIgMi4xMiAwIDAgMC0uNjExLTEuODc5TDIuMTYgOS43OTVhLjUzLjUzIDAgMCAxIC4yOTQtLjkwNmw1LjE2NS0uNzU1YTggOCAwIDAgMCAuNC0uMDk5In1dLFsicGF0aCIse2Q6Im0yIDIgMjAgMjAifV1dfSk7dmFyIGVVLGVvdD1sKCgpPT57ZVU9W1sicGF0aCIse2Q6Ik0xMS41MjUgMi4yOTVhLjUzLjUzIDAgMCAxIC45NSAwbDIuMzEgNC42NzlhMi4xMjMgMi4xMjMgMCAwIDAgMS41OTUgMS4xNmw1LjE2Ni43NTZhLjUzLjUzIDAgMCAxIC4yOTQuOTA0bC0zLjczNiAzLjYzOGEyLjEyMyAyLjEyMyAwIDAgMC0uNjExIDEuODc4bC44ODIgNS4xNGEuNTMuNTMgMCAwIDEtLjc3MS41NmwtNC42MTgtMi40MjhhMi4xMjIgMi4xMjIgMCAwIDAtMS45NzMgMEw2LjM5NiAyMS4wMWEuNTMuNTMgMCAwIDEtLjc3LS41NmwuODgxLTUuMTM5YTIuMTIyIDIuMTIyIDAgMCAwLS42MTEtMS44NzlMMi4xNiA5Ljc5NWEuNTMuNTMgMCAwIDEgLjI5NC0uOTA2bDUuMTY1LS43NTVhMi4xMjIgMi4xMjIgMCAwIDAgMS41OTctMS4xNnoifV1dfSk7dmFyIHRVLHRvdD1sKCgpPT57dFU9W1sicGF0aCIse2Q6Ik0xMy45NzEgNC4yODVBMiAyIDAgMCAxIDE3IDZ2MTJhMiAyIDAgMCAxLTMuMDI5IDEuNzE1bC05Ljk5Ny01Ljk5OGEyIDIgMCAwIDEtLjAwMy0zLjQzMnoifV0sWyJwYXRoIix7ZDoiTTIxIDIwVjQifV1dfSk7dmFyIHJVLHJvdD1sKCgpPT57clU9W1sicGF0aCIse2Q6Ik0xMC4wMjkgNC4yODVBMiAyIDAgMCAwIDcgNnYxMmEyIDIgMCAwIDAgMy4wMjkgMS43MTVsOS45OTctNS45OThhMiAyIDAgMCAwIC4wMDMtMy40MzJ6In1dLFsicGF0aCIse2Q6Ik0zIDR2MTYifV1dfSk7dmFyIGFVLGFvdD1sKCgpPT57YVU9W1sicGF0aCIse2Q6Ik0xMSAydjIifV0sWyJwYXRoIix7ZDoiTTUgMnYyIn1dLFsicGF0aCIse2Q6Ik01IDNINGEyIDIgMCAwIDAtMiAydjRhNiA2IDAgMCAwIDEyIDBWNWEyIDIgMCAwIDAtMi0yaC0xIn1dLFsicGF0aCIse2Q6Ik04IDE1YTYgNiAwIDAgMCAxMiAwdi0zIn1dLFsiY2lyY2xlIix7Y3g6IjIwIixjeToiMTAiLHI6IjIifV1dfSk7dmFyIGlVLGlvdD1sKCgpPT57aVU9W1sicGF0aCIse2Q6Ik0yMSA5YTIuNCAyLjQgMCAwIDAtLjcwNi0xLjcwNmwtMy41ODgtMy41ODhBMi40IDIuNCAwIDAgMCAxNSAzSDVhMiAyIDAgMCAwLTIgMnYxNGEyIDIgMCAwIDAgMiAyaDE0YTIgMiAwIDAgMCAyLTJ6In1dLFsicGF0aCIse2Q6Ik0xNSAzdjVhMSAxIDAgMCAwIDEgMWg1In1dLFsicGF0aCIse2Q6Ik04IDEzaC4wMSJ9XSxbInBhdGgiLHtkOiJNMTYgMTNoLjAxIn1dLFsicGF0aCIse2Q6Ik0xMCAxNnMuOCAxIDIgMWMxLjMgMCAyLTEgMi0xIn1dXX0pO3ZhciBvVSxvb3Q9bCgoKT0+e29VPVtbInBhdGgiLHtkOiJNMjEgOWEyLjQgMi40IDAgMCAwLS43MDYtMS43MDZsLTMuNTg4LTMuNTg4QTIuNCAyLjQgMCAwIDAgMTUgM0g1YTIgMiAwIDAgMC0yIDJ2MTRhMiAyIDAgMCAwIDIgMmgxNGEyIDIgMCAwIDAgMi0yeiJ9XSxbInBhdGgiLHtkOiJNMTUgM3Y1YTEgMSAwIDAgMCAxIDFoNSJ9XV19KTt2YXIgblUsbm90PWwoKCk9PntuVT1bWyJwYXRoIix7ZDoiTTExLjI2NCAyLjIwNUE0IDQgMCAwIDAgNi40MiA0LjIxMWwtNCA4YTQgNCAwIDAgMCAxLjM1OSA1LjExN2w2IDRhNCA0IDAgMCAwIDQuNDM4IDBsNi00YTQgNCAwIDAgMCAxLjU3Ni00LjU5MmwtMi02YTQgNCAwIDAgMC0yLjUzLTIuNTN6In1dLFsicGF0aCIse2Q6Ik0xMS45OSAyMiAxNCAxMmw3LjgyMiAzLjE4NCJ9XSxbInBhdGgiLHtkOiJNMTQgMTIgOC40NyAyLjMwMiJ9XV19KTt2YXIgc1Usc290PWwoKCk9PntzVT1bWyJwYXRoIix7ZDoiTTE1IDIxdi01YTEgMSAwIDAgMC0xLTFoLTRhMSAxIDAgMCAwLTEgMXY1In1dLFsicGF0aCIse2Q6Ik0xNy43NzQgMTAuMzFhMS4xMiAxLjEyIDAgMCAwLTEuNTQ5IDAgMi41IDIuNSAwIDAgMS0zLjQ1MSAwIDEuMTIgMS4xMiAwIDAgMC0xLjU0OCAwIDIuNSAyLjUgMCAwIDEtMy40NTIgMCAxLjEyIDEuMTIgMCAwIDAtMS41NDkgMCAyLjUgMi41IDAgMCAxLTMuNzctMy4yNDhsMi44ODktNC4xODRBMiAyIDAgMCAxIDcgMmgxMGEyIDIgMCAwIDEgMS42NTMuODczbDIuODk1IDQuMTkyYTIuNSAyLjUgMCAwIDEtMy43NzQgMy4yNDQifV0sWyJwYXRoIix7ZDoiTTQgMTAuOTVWMTlhMiAyIDAgMCAwIDIgMmgxMmEyIDIgMCAwIDAgMi0ydi04LjA1In1dXX0pO3ZhciBsVSxsb3Q9bCgoKT0+e2xVPVtbInJlY3QiLHt3aWR0aDoiMjAiLGhlaWdodDoiNiIseDoiMiIseToiNCIscng6IjIifV0sWyJyZWN0Iix7d2lkdGg6IjIwIixoZWlnaHQ6IjYiLHg6IjIiLHk6IjE0IixyeDoiMiJ9XV19KTt2YXIgY1UsY290PWwoKCk9PntjVT1bWyJyZWN0Iix7d2lkdGg6IjYiLGhlaWdodDoiMjAiLHg6IjQiLHk6IjIiLHJ4OiIyIn1dLFsicmVjdCIse3dpZHRoOiI2IixoZWlnaHQ6IjIwIix4OiIxNCIseToiMiIscng6IjIifV1dfSk7dmFyIGRVLGRvdD1sKCgpPT57ZFU9W1sicGF0aCIse2Q6Ik0xNiA0SDlhMyAzIDAgMCAwLTIuODMgNCJ9XSxbInBhdGgiLHtkOiJNMTQgMTJhNCA0IDAgMCAxIDAgOEg2In1dLFsibGluZSIse3gxOiI0Iix4MjoiMjAiLHkxOiIxMiIseTI6IjEyIn1dXX0pO3ZhciB1VSx1b3Q9bCgoKT0+e3VVPVtbInBhdGgiLHtkOiJtNCA1IDggOCJ9XSxbInBhdGgiLHtkOiJtMTIgNS04IDgifV0sWyJwYXRoIix7ZDoiTTIwIDE5aC00YzAtMS41LjQ0LTIgMS41LTIuNVMyMCAxNS4zMyAyMCAxNGMwLS40Ny0uMTctLjkzLS40OC0xLjI5YTIuMTEgMi4xMSAwIDAgMC0yLjYyLS40NGMtLjQyLjI0LS43NC42Mi0uOSAxLjA3In1dXX0pO3ZhciBmVSxmb3Q9bCgoKT0+e2ZVPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiI0In1dLFsicGF0aCIse2Q6Ik0xMiA0aC4wMSJ9XSxbInBhdGgiLHtkOiJNMjAgMTJoLjAxIn1dLFsicGF0aCIse2Q6Ik0xMiAyMGguMDEifV0sWyJwYXRoIix7ZDoiTTQgMTJoLjAxIn1dLFsicGF0aCIse2Q6Ik0xNy42NTcgNi4zNDNoLjAxIn1dLFsicGF0aCIse2Q6Ik0xNy42NTcgMTcuNjU3aC4wMSJ9XSxbInBhdGgiLHtkOiJNNi4zNDMgMTcuNjU3aC4wMSJ9XSxbInBhdGgiLHtkOiJNNi4zNDMgNi4zNDNoLjAxIn1dXX0pO3ZhciBwVSxwb3Q9bCgoKT0+e3BVPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiI0In1dLFsicGF0aCIse2Q6Ik0xMiAzdjEifV0sWyJwYXRoIix7ZDoiTTEyIDIwdjEifV0sWyJwYXRoIix7ZDoiTTMgMTJoMSJ9XSxbInBhdGgiLHtkOiJNMjAgMTJoMSJ9XSxbInBhdGgiLHtkOiJtMTguMzY0IDUuNjM2LS43MDcuNzA3In1dLFsicGF0aCIse2Q6Im02LjM0MyAxNy42NTctLjcwNy43MDcifV0sWyJwYXRoIix7ZDoibTUuNjM2IDUuNjM2LjcwNy43MDcifV0sWyJwYXRoIix7ZDoibTE3LjY1NyAxNy42NTcuNzA3LjcwNyJ9XV19KTt2YXIgaFUsaG90PWwoKCk9PntoVT1bWyJwYXRoIix7ZDoiTTEyIDJ2MiJ9XSxbInBhdGgiLHtkOiJNMTQuODM3IDE2LjM4NWE2IDYgMCAxIDEtNy4yMjMtNy4yMjJjLjYyNC0uMTQ3Ljk3LjY2LjcxNSAxLjI0OGE0IDQgMCAwIDAgNS4yNiA1LjI1OWMuNTg5LS4yNTUgMS4zOTYuMDkgMS4yNDguNzE1In1dLFsicGF0aCIse2Q6Ik0xNiAxMmE0IDQgMCAwIDAtNC00In1dLFsicGF0aCIse2Q6Im0xOSA1LTEuMjU2IDEuMjU2In1dLFsicGF0aCIse2Q6Ik0yMCAxMmgyIn1dXX0pO3ZhciBtVSxtb3Q9bCgoKT0+e21VPVtbInBhdGgiLHtkOiJNMTAgMjF2LTEifV0sWyJwYXRoIix7ZDoiTTEwIDRWMyJ9XSxbInBhdGgiLHtkOiJNMTAgOWEzIDMgMCAwIDAgMCA2In1dLFsicGF0aCIse2Q6Im0xNCAyMCAxLjI1LTIuNUwxOCAxOCJ9XSxbInBhdGgiLHtkOiJtMTQgNCAxLjI1IDIuNUwxOCA2In1dLFsicGF0aCIse2Q6Im0xNyAyMS0zLTYgMS41LTNIMjIifV0sWyJwYXRoIix7ZDoibTE3IDMtMyA2IDEuNSAzIn1dLFsicGF0aCIse2Q6Ik0yIDEyaDEifV0sWyJwYXRoIix7ZDoibTIwIDEwLTEuNSAyIDEuNSAyIn1dLFsicGF0aCIse2Q6Im0zLjY0IDE4LjM2LjctLjcifV0sWyJwYXRoIix7ZDoibTQuMzQgNi4zNC0uNy0uNyJ9XV19KTt2YXIgZ1UsZ290PWwoKCk9PntnVT1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiNCJ9XSxbInBhdGgiLHtkOiJNMTIgMnYyIn1dLFsicGF0aCIse2Q6Ik0xMiAyMHYyIn1dLFsicGF0aCIse2Q6Im00LjkzIDQuOTMgMS40MSAxLjQxIn1dLFsicGF0aCIse2Q6Im0xNy42NiAxNy42NiAxLjQxIDEuNDEifV0sWyJwYXRoIix7ZDoiTTIgMTJoMiJ9XSxbInBhdGgiLHtkOiJNMjAgMTJoMiJ9XSxbInBhdGgiLHtkOiJtNi4zNCAxNy42Ni0xLjQxIDEuNDEifV0sWyJwYXRoIix7ZDoibTE5LjA3IDQuOTMtMS40MSAxLjQxIn1dXX0pO3ZhciB4VSx4b3Q9bCgoKT0+e3hVPVtbInBhdGgiLHtkOiJNMTIgMnY4In1dLFsicGF0aCIse2Q6Im00LjkzIDEwLjkzIDEuNDEgMS40MSJ9XSxbInBhdGgiLHtkOiJNMiAxOGgyIn1dLFsicGF0aCIse2Q6Ik0yMCAxOGgyIn1dLFsicGF0aCIse2Q6Im0xOS4wNyAxMC45My0xLjQxIDEuNDEifV0sWyJwYXRoIix7ZDoiTTIyIDIySDIifV0sWyJwYXRoIix7ZDoibTggNiA0LTQgNCA0In1dLFsicGF0aCIse2Q6Ik0xNiAxOGE0IDQgMCAwIDAtOCAwIn1dXX0pO3ZhciBiVSxib3Q9bCgoKT0+e2JVPVtbInBhdGgiLHtkOiJNMTIgMTBWMiJ9XSxbInBhdGgiLHtkOiJtNC45MyAxMC45MyAxLjQxIDEuNDEifV0sWyJwYXRoIix7ZDoiTTIgMThoMiJ9XSxbInBhdGgiLHtkOiJNMjAgMThoMiJ9XSxbInBhdGgiLHtkOiJtMTkuMDcgMTAuOTMtMS40MSAxLjQxIn1dLFsicGF0aCIse2Q6Ik0yMiAyMkgyIn1dLFsicGF0aCIse2Q6Im0xNiA2LTQgNC00LTQifV0sWyJwYXRoIix7ZDoiTTE2IDE4YTQgNCAwIDAgMC04IDAifV1dfSk7dmFyIHZVLHZvdD1sKCgpPT57dlU9W1sicGF0aCIse2Q6Im00IDE5IDgtOCJ9XSxbInBhdGgiLHtkOiJtMTIgMTktOC04In1dLFsicGF0aCIse2Q6Ik0yMCAxMmgtNGMwLTEuNS40NDItMiAxLjUtMi41UzIwIDguMzM0IDIwIDcuMDAyYzAtLjQ3Mi0uMTctLjkzLS40ODQtMS4yOWEyLjEwNSAyLjEwNSAwIDAgMC0yLjYxNy0uNDM2Yy0uNDIuMjM5LS43MzguNjE0LS44OTkgMS4wNiJ9XV19KTt2YXIgeVUseW90PWwoKCk9Pnt5VT1bWyJwYXRoIix7ZDoiTTExIDE3YTQgNCAwIDAgMS04IDBWNWEyIDIgMCAwIDEgMi0yaDRhMiAyIDAgMCAxIDIgMloifV0sWyJwYXRoIix7ZDoiTTE2LjcgMTNIMTlhMiAyIDAgMCAxIDIgMnY0YTIgMiAwIDAgMS0yIDJINyJ9XSxbInBhdGgiLHtkOiJNIDcgMTdoLjAxIn1dLFsicGF0aCIse2Q6Im0xMSA4IDIuMy0yLjNhMi40IDIuNCAwIDAgMSAzLjQwNC4wMDRMMTguNiA3LjZhMi40IDIuNCAwIDAgMSAuMDI2IDMuNDM0TDkuOSAxOS44In1dXX0pO3ZhciB3VSx3b3Q9bCgoKT0+e3dVPVtbInBhdGgiLHtkOiJNMTEgMTlINGEyIDIgMCAwIDEtMi0yVjdhMiAyIDAgMCAxIDItMmg1In1dLFsicGF0aCIse2Q6Ik0xMyA1aDdhMiAyIDAgMCAxIDIgMnYxMGEyIDIgMCAwIDEtMiAyaC01In1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjMifV0sWyJwYXRoIix7ZDoibTE4IDIyLTMtMyAzLTMifV0sWyJwYXRoIix7ZDoibTYgMiAzIDMtMyAzIn1dXX0pO3ZhciBNVSxNb3Q9bCgoKT0+e01VPVtbInBhdGgiLHtkOiJNMTAgMjFWM2g4In1dLFsicGF0aCIse2Q6Ik02IDE2aDkifV0sWyJwYXRoIix7ZDoiTTEwIDkuNWg3In1dXX0pO3ZhciBrVSxrb3Q9bCgoKT0+e2tVPVtbInBhdGgiLHtkOiJtMTEgMTktNi02In1dLFsicGF0aCIse2Q6Im01IDIxLTItMiJ9XSxbInBhdGgiLHtkOiJtOCAxNi00IDQifV0sWyJwYXRoIix7ZDoiTTkuNSAxNy41IDIxIDZWM2gtM0w2LjUgMTQuNSJ9XV19KTt2YXIgU1UsU290PWwoKCk9PntTVT1bWyJwYXRoIix7ZDoiTTkgM0g1YTIgMiAwIDAgMC0yIDJ2NG02LTZoMTBhMiAyIDAgMCAxIDIgMnY0TTkgM3YxOG0wIDBoMTBhMiAyIDAgMCAwIDItMlY5TTkgMjFINWEyIDIgMCAwIDEtMi0yVjltMCAwaDE4In1dXX0pO3ZhciB6VSx6b3Q9bCgoKT0+e3pVPVtbInBhdGgiLHtkOiJNMTIgMjF2LTYifV0sWyJwYXRoIix7ZDoiTTEyIDlWMyJ9XSxbInBhdGgiLHtkOiJNMyAxNWgxOCJ9XSxbInBhdGgiLHtkOiJNMyA5aDE4In1dLFsicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIifV1dfSk7dmFyIENVLENvdD1sKCgpPT57Q1U9W1sicG9seWxpbmUiLHtwb2ludHM6IjE0LjUgMTcuNSAzIDYgMyAzIDYgMyAxNy41IDE0LjUifV0sWyJsaW5lIix7eDE6IjEzIix4MjoiMTkiLHkxOiIxOSIseTI6IjEzIn1dLFsibGluZSIse3gxOiIxNiIseDI6IjIwIix5MToiMTYiLHkyOiIyMCJ9XSxbImxpbmUiLHt4MToiMTkiLHgyOiIyMSIseTE6IjIxIix5MjoiMTkifV0sWyJwb2x5bGluZSIse3BvaW50czoiMTQuNSA2LjUgMTggMyAyMSAzIDIxIDYgMTcuNSA5LjUifV0sWyJsaW5lIix7eDE6IjUiLHgyOiI5Iix5MToiMTQiLHkyOiIxOCJ9XSxbImxpbmUiLHt4MToiNyIseDI6IjQiLHkxOiIxNyIseTI6IjIwIn1dLFsibGluZSIse3gxOiIzIix4MjoiNSIseTE6IjE5Iix5MjoiMjEifV1dfSk7dmFyIF9VLF9vdD1sKCgpPT57X1U9W1sicGF0aCIse2Q6Im0xOCAyIDQgNCJ9XSxbInBhdGgiLHtkOiJtMTcgNyAzLTMifV0sWyJwYXRoIix7ZDoiTTE5IDkgOC43IDE5LjNjLTEgMS0yLjUgMS0zLjQgMGwtLjYtLjZjLTEtMS0xLTIuNSAwLTMuNEwxNSA1In1dLFsicGF0aCIse2Q6Im05IDExIDQgNCJ9XSxbInBhdGgiLHtkOiJtNSAxOS0zIDMifV0sWyJwYXRoIix7ZDoibTE0IDQgNiA2In1dXX0pO3ZhciBUVSxUb3Q9bCgoKT0+e1RVPVtbInBhdGgiLHtkOiJNMTIgMTVWOSJ9XSxbInBhdGgiLHtkOiJNMyAxNWgxOCJ9XSxbInBhdGgiLHtkOiJNMyA5aDE4In1dLFsicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIifV1dfSk7dmFyIExVLExvdD1sKCgpPT57TFU9W1sicGF0aCIse2Q6Ik0xNCAxNHYyIn1dLFsicGF0aCIse2Q6Ik0xNCAyMHYyIn1dLFsicGF0aCIse2Q6Ik0xNCAydjIifV0sWyJwYXRoIix7ZDoiTTE0IDh2MiJ9XSxbInBhdGgiLHtkOiJNMiAxNWg4In1dLFsicGF0aCIse2Q6Ik0yIDNoNmEyIDIgMCAwIDEgMiAydjE0YTIgMiAwIDAgMS0yIDJIMiJ9XSxbInBhdGgiLHtkOiJNMiA5aDgifV0sWyJwYXRoIix7ZDoiTTIyIDE1aC00In1dLFsicGF0aCIse2Q6Ik0yMiAzaC0yYTIgMiAwIDAgMC0yIDJ2MTRhMiAyIDAgMCAwIDIgMmgyIn1dLFsicGF0aCIse2Q6Ik0yMiA5aC00In1dLFsicGF0aCIse2Q6Ik01IDN2MTgifV1dfSk7dmFyIERVLERvdD1sKCgpPT57RFU9W1sicGF0aCIse2Q6Ik0xNiA1SDMifV0sWyJwYXRoIix7ZDoiTTE2IDEySDMifV0sWyJwYXRoIix7ZDoiTTE2IDE5SDMifV0sWyJwYXRoIix7ZDoiTTIxIDVoLjAxIn1dLFsicGF0aCIse2Q6Ik0yMSAxMmguMDEifV0sWyJwYXRoIix7ZDoiTTIxIDE5aC4wMSJ9XV19KTt2YXIgQVUsQW90PWwoKCk9PntBVT1bWyJwYXRoIix7ZDoiTTE1IDN2MTgifV0sWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiIzIixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNMjEgOUgzIn1dLFsicGF0aCIse2Q6Ik0yMSAxNUgzIn1dXX0pO3ZhciBFVSxFb3Q9bCgoKT0+e0VVPVtbInBhdGgiLHtkOiJNMTQgMTBoMiJ9XSxbInBhdGgiLHtkOiJNMTUgMjJ2LTgifV0sWyJwYXRoIix7ZDoiTTE1IDJ2NCJ9XSxbInBhdGgiLHtkOiJNMiAxMGgyIn1dLFsicGF0aCIse2Q6Ik0yMCAxMGgyIn1dLFsicGF0aCIse2Q6Ik0zIDE5aDE4In1dLFsicGF0aCIse2Q6Ik0zIDIydi02YTIgMiAxMzUgMCAxIDItMmgxNGEyIDIgNDUgMCAxIDIgMnY2In1dLFsicGF0aCIse2Q6Ik0zIDJ2MmEyIDIgNDUgMCAwIDIgMmgxNGEyIDIgMTM1IDAgMCAyLTJWMiJ9XSxbInBhdGgiLHtkOiJNOCAxMGgyIn1dLFsicGF0aCIse2Q6Ik05IDIydi04In1dLFsicGF0aCIse2Q6Ik05IDJ2NCJ9XV19KTt2YXIgJFUsJG90PWwoKCk9PnskVT1bWyJwYXRoIix7ZDoiTTEyIDN2MTgifV0sWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiIzIixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNMyA5aDE4In1dLFsicGF0aCIse2Q6Ik0zIDE1aDE4In1dXX0pO3ZhciBQVSxQb3Q9bCgoKT0+e1BVPVtbInJlY3QiLHt3aWR0aDoiMTAiLGhlaWdodDoiMTQiLHg6IjMiLHk6IjgiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik01IDRhMiAyIDAgMCAxIDItMmgxMmEyIDIgMCAwIDEgMiAydjE2YTIgMiAwIDAgMS0yIDJoLTIuNCJ9XSxbInBhdGgiLHtkOiJNOCAxOGguMDEifV1dfSk7dmFyIElVLElvdD1sKCgpPT57SVU9W1sicmVjdCIse3dpZHRoOiIxNiIsaGVpZ2h0OiIyMCIseDoiNCIseToiMiIscng6IjIiLHJ5OiIyIn1dLFsibGluZSIse3gxOiIxMiIseDI6IjEyLjAxIix5MToiMTgiLHkyOiIxOCJ9XV19KTt2YXIgTlUsTm90PWwoKCk9PntOVT1bWyJjaXJjbGUiLHtjeDoiNyIsY3k6IjciLHI6IjUifV0sWyJjaXJjbGUiLHtjeDoiMTciLGN5OiIxNyIscjoiNSJ9XSxbInBhdGgiLHtkOiJNMTIgMTdoMTAifV0sWyJwYXRoIix7ZDoibTMuNDYgMTAuNTQgNy4wOC03LjA4In1dXX0pO3ZhciBGVSxGb3Q9bCgoKT0+e0ZVPVtbInBhdGgiLHtkOiJNMTIuNTg2IDIuNTg2QTIgMiAwIDAgMCAxMS4xNzIgMkg0YTIgMiAwIDAgMC0yIDJ2Ny4xNzJhMiAyIDAgMCAwIC41ODYgMS40MTRsOC43MDQgOC43MDRhMi40MjYgMi40MjYgMCAwIDAgMy40MiAwbDYuNTgtNi41OGEyLjQyNiAyLjQyNiAwIDAgMCAwLTMuNDJ6In1dLFsiY2lyY2xlIix7Y3g6IjcuNSIsY3k6IjcuNSIscjoiLjUiLGZpbGw6ImN1cnJlbnRDb2xvciJ9XV19KTt2YXIgT1UsT290PWwoKCk9PntPVT1bWyJwYXRoIix7ZDoiTTEzLjE3MiAyYTIgMiAwIDAgMSAxLjQxNC41ODZsNi43MSA2LjcxYTIuNCAyLjQgMCAwIDEgMCAzLjQwOGwtNC41OTIgNC41OTJhMi40IDIuNCAwIDAgMS0zLjQwOCAwbC02LjcxLTYuNzFBMiAyIDAgMCAxIDYgOS4xNzJWM2ExIDEgMCAwIDEgMS0xeiJ9XSxbInBhdGgiLHtkOiJNMiA3djYuMTcyYTIgMiAwIDAgMCAuNTg2IDEuNDE0bDYuNzEgNi43MWEyLjQgMi40IDAgMCAwIDMuMTkxLjE5MyJ9XSxbImNpcmNsZSIse2N4OiIxMC41IixjeToiNi41IixyOiIuNSIsZmlsbDoiY3VycmVudENvbG9yIn1dXX0pO3ZhciBSVSxSb3Q9bCgoKT0+e1JVPVtbInBhdGgiLHtkOiJNNCA0djE2In1dXX0pO3ZhciBCVSxCb3Q9bCgoKT0+e0JVPVtbInBhdGgiLHtkOiJNNCA0djE2In1dLFsicGF0aCIse2Q6Ik05IDR2MTYifV1dfSk7dmFyIEhVLEhvdD1sKCgpPT57SFU9W1sicGF0aCIse2Q6Ik00IDR2MTYifV0sWyJwYXRoIix7ZDoiTTkgNHYxNiJ9XSxbInBhdGgiLHtkOiJNMTQgNHYxNiJ9XV19KTt2YXIgcVUscW90PWwoKCk9PntxVT1bWyJwYXRoIix7ZDoiTTQgNHYxNiJ9XSxbInBhdGgiLHtkOiJNOSA0djE2In1dLFsicGF0aCIse2Q6Ik0xNCA0djE2In1dLFsicGF0aCIse2Q6Ik0xOSA0djE2In1dXX0pO3ZhciBqVSxqb3Q9bCgoKT0+e2pVPVtbInBhdGgiLHtkOiJNNCA0djE2In1dLFsicGF0aCIse2Q6Ik05IDR2MTYifV0sWyJwYXRoIix7ZDoiTTE0IDR2MTYifV0sWyJwYXRoIix7ZDoiTTE5IDR2MTYifV0sWyJwYXRoIix7ZDoiTTIyIDYgMiAxOCJ9XV19KTt2YXIgVlUsVm90PWwoKCk9PntWVT1bWyJjaXJjbGUiLHtjeDoiMTciLGN5OiI0IixyOiIyIn1dLFsicGF0aCIse2Q6Ik0xNS41OSA1LjQxIDUuNDEgMTUuNTkifV0sWyJjaXJjbGUiLHtjeDoiNCIsY3k6IjE3IixyOiIyIn1dLFsicGF0aCIse2Q6Ik0xMiAyMnMtNC05LTEuNS0xMS41UzIyIDEyIDIyIDEyIn1dXX0pO3ZhciBVVSxVb3Q9bCgoKT0+e1VVPVtbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiI2In1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjIifV1dfSk7dmFyIFdVLFdvdD1sKCgpPT57V1U9W1sicGF0aCIse2Q6Im0xMC4wNjUgMTIuNDkzLTYuMTggMS4zMThhLjkzNC45MzQgMCAwIDEtMS4xMDgtLjcwMmwtLjUzNy0yLjE1YTEuMDcgMS4wNyAwIDAgMSAuNjkxLTEuMjY1bDEzLjUwNC00LjQ0In1dLFsicGF0aCIse2Q6Im0xMy41NiAxMS43NDcgNC4zMzItLjkyNCJ9XSxbInBhdGgiLHtkOiJtMTYgMjEtMy4xMDUtNi4yMSJ9XSxbInBhdGgiLHtkOiJNMTYuNDg1IDUuOTRhMiAyIDAgMCAxIDEuNDU1LTIuNDI1bDEuMDktLjI3MmExIDEgMCAwIDEgMS4yMTIuNzI3bDEuNTE1IDYuMDZhMSAxIDAgMCAxLS43MjcgMS4yMTNsLTEuMDkuMjcyYTIgMiAwIDAgMS0yLjQyNS0xLjQ1NXoifV0sWyJwYXRoIix7ZDoibTYuMTU4IDguNjMzIDEuMTE0IDQuNDU2In1dLFsicGF0aCIse2Q6Im04IDIxIDMuMTA1LTYuMjEifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMyIscjoiMiJ9XV19KTt2YXIgR1UsR290PWwoKCk9PntHVT1bWyJjaXJjbGUiLHtjeDoiNCIsY3k6IjQiLHI6IjIifV0sWyJwYXRoIix7ZDoibTE0IDUgMy0zIDMgMyJ9XSxbInBhdGgiLHtkOiJtMTQgMTAgMy0zIDMgMyJ9XSxbInBhdGgiLHtkOiJNMTcgMTRWMiJ9XSxbInBhdGgiLHtkOiJNMTcgMTRIN2wtNSA4aDIwWiJ9XSxbInBhdGgiLHtkOiJNOCAxNHY4In1dLFsicGF0aCIse2Q6Im05IDE0IDUgOCJ9XV19KTt2YXIgWVUsWW90PWwoKCk9PntZVT1bWyJwYXRoIix7ZDoiTTMuNSAyMSAxNCAzIn1dLFsicGF0aCIse2Q6Ik0yMC41IDIxIDEwIDMifV0sWyJwYXRoIix7ZDoiTTE1LjUgMjEgMTIgMTVsLTMuNSA2In1dLFsicGF0aCIse2Q6Ik0yIDIxaDIwIn1dXX0pO3ZhciBaVSxab3Q9bCgoKT0+e1pVPVtbInBhdGgiLHtkOiJNMTIgMTloOCJ9XSxbInBhdGgiLHtkOiJtNCAxNyA2LTYtNi02In1dXX0pO3ZhciBacCxYb3Q9bCgoKT0+e1pwPVtbInBhdGgiLHtkOiJNMjEgNyA2LjgyIDIxLjE4YTIuODMgMi44MyAwIDAgMS0zLjk5LS4wMWEyLjgzIDIuODMgMCAwIDEgMC00TDE3IDMifV0sWyJwYXRoIix7ZDoibTE2IDIgNiA2In1dLFsicGF0aCIse2Q6Ik0xMiAxNkg0In1dXX0pO3ZhciBYVSxRb3Q9bCgoKT0+e1hVPVtbInBhdGgiLHtkOiJNMTQuNSAydjE3LjVjMCAxLjQtMS4xIDIuNS0yLjUgMi41Yy0xLjQgMC0yLjUtMS4xLTIuNS0yLjVWMiJ9XSxbInBhdGgiLHtkOiJNOC41IDJoNyJ9XSxbInBhdGgiLHtkOiJNMTQuNSAxNmgtNSJ9XV19KTt2YXIgUVUsS290PWwoKCk9PntRVT1bWyJwYXRoIix7ZDoiTTkgMnYxNy41QTIuNSAyLjUgMCAwIDEgNi41IDIyQTIuNSAyLjUgMCAwIDEgNCAxOS41VjIifV0sWyJwYXRoIix7ZDoiTTIwIDJ2MTcuNWEyLjUgMi41IDAgMCAxLTIuNSAyLjVhMi41IDIuNSAwIDAgMS0yLjUtMi41VjIifV0sWyJwYXRoIix7ZDoiTTMgMmg3In1dLFsicGF0aCIse2Q6Ik0xNCAyaDcifV0sWyJwYXRoIix7ZDoiTTkgMTZINCJ9XSxbInBhdGgiLHtkOiJNMjAgMTZoLTUifV1dfSk7dmFyIFhwLEpvdD1sKCgpPT57WHA9W1sicGF0aCIse2Q6Ik0yMSA1SDMifV0sWyJwYXRoIix7ZDoiTTE3IDEySDcifV0sWyJwYXRoIix7ZDoiTTE5IDE5SDUifV1dfSk7dmFyIFFwLGVudD1sKCgpPT57UXA9W1sicGF0aCIse2Q6Ik0yMSA1SDMifV0sWyJwYXRoIix7ZDoiTTIxIDEySDkifV0sWyJwYXRoIix7ZDoiTTIxIDE5SDcifV1dfSk7dmFyIEtwLHRudD1sKCgpPT57S3A9W1sicGF0aCIse2Q6Ik0zIDVoMTgifV0sWyJwYXRoIix7ZDoiTTMgMTJoMTgifV0sWyJwYXRoIix7ZDoiTTMgMTloMTgifV1dfSk7dmFyIFBjLHJudD1sKCgpPT57UGM9W1sicGF0aCIse2Q6Ik0yMSA1SDMifV0sWyJwYXRoIix7ZDoiTTE1IDEySDMifV0sWyJwYXRoIix7ZDoiTTE3IDE5SDMifV1dfSk7dmFyIEtVLGFudD1sKCgpPT57S1U9W1sicGF0aCIse2Q6Ik0xMiAyMGgtMWEyIDIgMCAwIDEtMi0yIDIgMiAwIDAgMS0yIDJINiJ9XSxbInBhdGgiLHtkOiJNMTMgOGg3YTIgMiAwIDAgMSAyIDJ2NGEyIDIgMCAwIDEtMiAyaC03In1dLFsicGF0aCIse2Q6Ik01IDE2SDRhMiAyIDAgMCAxLTItMnYtNGEyIDIgMCAwIDEgMi0yaDEifV0sWyJwYXRoIix7ZDoiTTYgNGgxYTIgMiAwIDAgMSAyIDIgMiAyIDAgMCAxIDItMmgxIn1dLFsicGF0aCIse2Q6Ik05IDZ2MTIifV1dfSk7dmFyIEpVLGludD1sKCgpPT57SlU9W1sicGF0aCIse2Q6Ik0xNyAyMmgtMWE0IDQgMCAwIDEtNC00VjZhNCA0IDAgMCAxIDQtNGgxIn1dLFsicGF0aCIse2Q6Ik03IDIyaDFhNCA0IDAgMCAwIDQtNHYtMSJ9XSxbInBhdGgiLHtkOiJNNyAyaDFhNCA0IDAgMCAxIDQgNHYxIn1dXX0pO3ZhciBKcCxvbnQ9bCgoKT0+e0pwPVtbInBhdGgiLHtkOiJNMTUgNWg2In1dLFsicGF0aCIse2Q6Ik0xNSAxMmg2In1dLFsicGF0aCIse2Q6Ik0zIDE5aDE4In1dLFsicGF0aCIse2Q6Im0zIDEyIDMuNTUzLTcuNzI0YS41LjUgMCAwIDEgLjg5NCAwTDExIDEyIn1dLFsicGF0aCIse2Q6Ik0zLjkyIDEwaDYuMTYifV1dfSk7dmFyIGVXLG5udD1sKCgpPT57ZVc9W1sicGF0aCIse2Q6Ik0xNyA1SDMifV0sWyJwYXRoIix7ZDoiTTIxIDEySDgifV0sWyJwYXRoIix7ZDoiTTIxIDE5SDgifV0sWyJwYXRoIix7ZDoiTTMgMTJ2NyJ9XV19KTt2YXIgdFcsc250PWwoKCk9Pnt0Vz1bWyJwYXRoIix7ZDoiTTIxIDVIMyJ9XSxbInBhdGgiLHtkOiJNMTAgMTJIMyJ9XSxbInBhdGgiLHtkOiJNMTAgMTlIMyJ9XSxbImNpcmNsZSIse2N4OiIxNyIsY3k6IjE1IixyOiIzIn1dLFsicGF0aCIse2Q6Im0yMSAxOS0xLjktMS45In1dXX0pO3ZhciBlOCxsbnQ9bCgoKT0+e2U4PVtbInBhdGgiLHtkOiJNMTQgMjFoMSJ9XSxbInBhdGgiLHtkOiJNMTQgM2gxIn1dLFsicGF0aCIse2Q6Ik0xOSAzYTIgMiAwIDAgMSAyIDIifV0sWyJwYXRoIix7ZDoiTTIxIDE0djEifV0sWyJwYXRoIix7ZDoiTTIxIDE5YTIgMiAwIDAgMS0yIDIifV0sWyJwYXRoIix7ZDoiTTIxIDl2MSJ9XSxbInBhdGgiLHtkOiJNMyAxNHYxIn1dLFsicGF0aCIse2Q6Ik0zIDl2MSJ9XSxbInBhdGgiLHtkOiJNNSAyMWEyIDIgMCAwIDEtMi0yIn1dLFsicGF0aCIse2Q6Ik01IDNhMiAyIDAgMCAwLTIgMiJ9XSxbInBhdGgiLHtkOiJNNyAxMmgxMCJ9XSxbInBhdGgiLHtkOiJNNyAxNmg2In1dLFsicGF0aCIse2Q6Ik03IDhoOCJ9XSxbInBhdGgiLHtkOiJNOSAyMWgxIn1dLFsicGF0aCIse2Q6Ik05IDNoMSJ9XV19KTt2YXIgdDgsY250PWwoKCk9Pnt0OD1bWyJwYXRoIix7ZDoibTE2IDE2LTMgMyAzIDMifV0sWyJwYXRoIix7ZDoiTTMgMTJoMTQuNWExIDEgMCAwIDEgMCA3SDEzIn1dLFsicGF0aCIse2Q6Ik0zIDE5aDYifV0sWyJwYXRoIix7ZDoiTTMgNWgxOCJ9XV19KTt2YXIgclcsZG50PWwoKCk9PntyVz1bWyJwYXRoIix7ZDoiTTIgMTBzMy0zIDMtOCJ9XSxbInBhdGgiLHtkOiJNMjIgMTBzLTMtMy0zLTgifV0sWyJwYXRoIix7ZDoiTTEwIDJjMCA0LjQtMy42IDgtOCA4In1dLFsicGF0aCIse2Q6Ik0xNCAyYzAgNC40IDMuNiA4IDggOCJ9XSxbInBhdGgiLHtkOiJNMiAxMHMyIDIgMiA1In1dLFsicGF0aCIse2Q6Ik0yMiAxMHMtMiAyLTIgNSJ9XSxbInBhdGgiLHtkOiJNOCAxNWg4In1dLFsicGF0aCIse2Q6Ik0yIDIydi0xYTIgMiAwIDAgMSAyLTJoNGEyIDIgMCAwIDEgMiAydjEifV0sWyJwYXRoIix7ZDoiTTE0IDIydi0xYTIgMiAwIDAgMSAyLTJoNGEyIDIgMCAwIDEgMiAydjEifV1dfSk7dmFyIGFXLHVudD1sKCgpPT57YVc9W1sicGF0aCIse2Q6Im0xMCAyMC0xLjI1LTIuNUw2IDE4In1dLFsicGF0aCIse2Q6Ik0xMCA0IDguNzUgNi41IDYgNiJ9XSxbInBhdGgiLHtkOiJNMTAuNTg1IDE1SDEwIn1dLFsicGF0aCIse2Q6Ik0yIDEyaDYuNUwxMCA5In1dLFsicGF0aCIse2Q6Ik0yMCAxNC41NGE0IDQgMCAxIDEtNCAwVjRhMiAyIDAgMCAxIDQgMHoifV0sWyJwYXRoIix7ZDoibTQgMTAgMS41IDJMNCAxNCJ9XSxbInBhdGgiLHtkOiJtNyAyMSAzLTYtMS41LTMifV0sWyJwYXRoIix7ZDoibTcgMyAzIDZoMiJ9XV19KTt2YXIgaVcsZm50PWwoKCk9PntpVz1bWyJwYXRoIix7ZDoiTTEyIDJ2MiJ9XSxbInBhdGgiLHtkOiJNMTIgOGE0IDQgMCAwIDAtMS42NDUgNy42NDcifV0sWyJwYXRoIix7ZDoiTTIgMTJoMiJ9XSxbInBhdGgiLHtkOiJNMjAgMTQuNTRhNCA0IDAgMSAxLTQgMFY0YTIgMiAwIDAgMSA0IDB6In1dLFsicGF0aCIse2Q6Im00LjkzIDQuOTMgMS40MSAxLjQxIn1dLFsicGF0aCIse2Q6Im02LjM0IDE3LjY2LTEuNDEgMS40MSJ9XV19KTt2YXIgb1cscG50PWwoKCk9PntvVz1bWyJwYXRoIix7ZDoiTTE0IDR2MTAuNTRhNCA0IDAgMSAxLTQgMFY0YTIgMiAwIDAgMSA0IDBaIn1dXX0pO3ZhciBuVyxobnQ9bCgoKT0+e25XPVtbInBhdGgiLHtkOiJNOSAxOC4xMiAxMCAxNEg0LjE3YTIgMiAwIDAgMS0xLjkyLTIuNTZsMi4zMy04QTIgMiAwIDAgMSA2LjUgMkgyMGEyIDIgMCAwIDEgMiAydjhhMiAyIDAgMCAxLTIgMmgtMi43NmEyIDIgMCAwIDAtMS43OSAxLjExTDEyIDIyYTMuMTMgMy4xMyAwIDAgMS0zLTMuODhaIn1dLFsicGF0aCIse2Q6Ik0xNyAxNFYyIn1dXX0pO3ZhciBzVyxtbnQ9bCgoKT0+e3NXPVtbInBhdGgiLHtkOiJNMTUgNS44OCAxNCAxMGg1LjgzYTIgMiAwIDAgMSAxLjkyIDIuNTZsLTIuMzMgOEEyIDIgMCAwIDEgMTcuNSAyMkg0YTIgMiAwIDAgMS0yLTJ2LThhMiAyIDAgMCAxIDItMmgyLjc2YTIgMiAwIDAgMCAxLjc5LTEuMTFMMTIgMmEzLjEzIDMuMTMgMCAwIDEgMyAzLjg4WiJ9XSxbInBhdGgiLHtkOiJNNyAxMHYxMiJ9XV19KTt2YXIgbFcsZ250PWwoKCk9PntsVz1bWyJwYXRoIix7ZDoiTTIgOWEzIDMgMCAwIDEgMCA2djJhMiAyIDAgMCAwIDIgMmgxNmEyIDIgMCAwIDAgMi0ydi0yYTMgMyAwIDAgMSAwLTZWN2EyIDIgMCAwIDAtMi0ySDRhMiAyIDAgMCAwLTIgMloifV0sWyJwYXRoIix7ZDoibTkgMTIgMiAyIDQtNCJ9XV19KTt2YXIgY1cseG50PWwoKCk9PntjVz1bWyJwYXRoIix7ZDoiTTIgOWEzIDMgMCAwIDEgMCA2djJhMiAyIDAgMCAwIDIgMmgxNmEyIDIgMCAwIDAgMi0ydi0yYTMgMyAwIDAgMSAwLTZWN2EyIDIgMCAwIDAtMi0ySDRhMiAyIDAgMCAwLTIgMloifV0sWyJwYXRoIix7ZDoiTTkgMTJoNiJ9XV19KTt2YXIgZFcsYm50PWwoKCk9PntkVz1bWyJwYXRoIix7ZDoiTTIgOWEzIDMgMCAxIDEgMCA2djJhMiAyIDAgMCAwIDIgMmgxNmEyIDIgMCAwIDAgMi0ydi0yYTMgMyAwIDEgMSAwLTZWN2EyIDIgMCAwIDAtMi0ySDRhMiAyIDAgMCAwLTIgMloifV0sWyJwYXRoIix7ZDoiTTkgOWguMDEifV0sWyJwYXRoIix7ZDoibTE1IDktNiA2In1dLFsicGF0aCIse2Q6Ik0xNSAxNWguMDEifV1dfSk7dmFyIHVXLHZudD1sKCgpPT57dVc9W1sicGF0aCIse2Q6Ik0yIDlhMyAzIDAgMCAxIDAgNnYyYTIgMiAwIDAgMCAyIDJoMTZhMiAyIDAgMCAwIDItMnYtMmEzIDMgMCAwIDEgMC02VjdhMiAyIDAgMCAwLTItMkg0YTIgMiAwIDAgMC0yIDJaIn1dLFsicGF0aCIse2Q6Ik05IDEyaDYifV0sWyJwYXRoIix7ZDoiTTEyIDl2NiJ9XV19KTt2YXIgZlcseW50PWwoKCk9PntmVz1bWyJwYXRoIix7ZDoiTTIgOWEzIDMgMCAwIDEgMCA2djJhMiAyIDAgMCAwIDIgMmgxNmEyIDIgMCAwIDAgMi0ydi0yYTMgMyAwIDAgMSAwLTZWN2EyIDIgMCAwIDAtMi0ySDRhMiAyIDAgMCAwLTIgMloifV0sWyJwYXRoIix7ZDoibTkuNSAxNC41IDUtNSJ9XV19KTt2YXIgcFcsd250PWwoKCk9PntwVz1bWyJwYXRoIix7ZDoiTTIgOWEzIDMgMCAwIDEgMCA2djJhMiAyIDAgMCAwIDIgMmgxNmEyIDIgMCAwIDAgMi0ydi0yYTMgMyAwIDAgMSAwLTZWN2EyIDIgMCAwIDAtMi0ySDRhMiAyIDAgMCAwLTIgMloifV0sWyJwYXRoIix7ZDoibTkuNSAxNC41IDUtNSJ9XSxbInBhdGgiLHtkOiJtOS41IDkuNSA1IDUifV1dfSk7dmFyIGhXLE1udD1sKCgpPT57aFc9W1sicGF0aCIse2Q6Ik0yIDlhMyAzIDAgMCAxIDAgNnYyYTIgMiAwIDAgMCAyIDJoMTZhMiAyIDAgMCAwIDItMnYtMmEzIDMgMCAwIDEgMC02VjdhMiAyIDAgMCAwLTItMkg0YTIgMiAwIDAgMC0yIDJaIn1dLFsicGF0aCIse2Q6Ik0xMyA1djIifV0sWyJwYXRoIix7ZDoiTTEzIDE3djIifV0sWyJwYXRoIix7ZDoiTTEzIDExdjIifV1dfSk7dmFyIG1XLGtudD1sKCgpPT57bVc9W1sicGF0aCIse2Q6Ik0xMC41IDE3aDEuMjI3YTIgMiAwIDAgMCAxLjM0NS0uNTJMMTggMTIifV0sWyJwYXRoIix7ZDoibTEyIDEzLjUgMy43OTQuNTA2In1dLFsicGF0aCIse2Q6Im0zLjE3MyA4LjE4IDExLTVhMiAyIDAgMCAxIDIuNjQ3Ljk5M0wxOC41NiA4In1dLFsicGF0aCIse2Q6Ik02IDEwVjgifV0sWyJwYXRoIix7ZDoiTTYgMTR2MSJ9XSxbInBhdGgiLHtkOiJNNiAxOXYyIn1dLFsicmVjdCIse3g6IjIiLHk6IjgiLHdpZHRoOiIyMCIsaGVpZ2h0OiIxMyIscng6IjIifV1dfSk7dmFyIGdXLFNudD1sKCgpPT57Z1c9W1sicGF0aCIse2Q6Im0zLjE3MyA4LjE4IDExLTVhMiAyIDAgMCAxIDIuNjQ3Ljk5M0wxOC41NiA4In1dLFsicGF0aCIse2Q6Ik02IDEwVjgifV0sWyJwYXRoIix7ZDoiTTYgMTR2MSJ9XSxbInBhdGgiLHtkOiJNNiAxOXYyIn1dLFsicmVjdCIse3g6IjIiLHk6IjgiLHdpZHRoOiIyMCIsaGVpZ2h0OiIxMyIscng6IjIifV1dfSk7dmFyIHhXLHpudD1sKCgpPT57eFc9W1sicGF0aCIse2Q6Ik0xMCAyaDQifV0sWyJwYXRoIix7ZDoiTTEyIDE0di00In1dLFsicGF0aCIse2Q6Ik00IDEzYTggOCAwIDAgMSA4LTcgOCA4IDAgMSAxLTUuMyAxNEw0IDE3LjYifV0sWyJwYXRoIix7ZDoiTTkgMTdINHY1In1dXX0pO3ZhciBiVyxDbnQ9bCgoKT0+e2JXPVtbInBhdGgiLHtkOiJNMTAgMmg0In1dLFsicGF0aCIse2Q6Ik00LjYgMTFhOCA4IDAgMCAwIDEuNyA4LjcgOCA4IDAgMCAwIDguNyAxLjcifV0sWyJwYXRoIix7ZDoiTTcuNCA3LjRhOCA4IDAgMCAxIDEwLjMgMSA4IDggMCAwIDEgLjkgMTAuMiJ9XSxbInBhdGgiLHtkOiJtMiAyIDIwIDIwIn1dLFsicGF0aCIse2Q6Ik0xMiAxMnYtMiJ9XV19KTt2YXIgdlcsX250PWwoKCk9Pnt2Vz1bWyJsaW5lIix7eDE6IjEwIix4MjoiMTQiLHkxOiIyIix5MjoiMiJ9XSxbImxpbmUiLHt4MToiMTIiLHgyOiIxNSIseTE6IjE0Iix5MjoiMTEifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxNCIscjoiOCJ9XV19KTt2YXIgeVcsVG50PWwoKCk9Pnt5Vz1bWyJjaXJjbGUiLHtjeDoiOSIsY3k6IjEyIixyOiIzIn1dLFsicmVjdCIse3dpZHRoOiIyMCIsaGVpZ2h0OiIxNCIseDoiMiIseToiNSIscng6IjcifV1dfSk7dmFyIHdXLExudD1sKCgpPT57d1c9W1sicGF0aCIse2Q6Ik03IDEyaDEzYTEgMSAwIDAgMSAxIDEgNSA1IDAgMCAxLTUgNWgtLjU5OGEuNS41IDAgMCAwLS40MjQuNzY1bDEuNTQ0IDIuNDdhLjUuNSAwIDAgMS0uNDI0Ljc2NUg1LjQwMmEuNS41IDAgMCAxLS40MjQtLjc2NUw3IDE4In1dLFsicGF0aCIse2Q6Ik04IDE4YTUgNSAwIDAgMS01LTVWNGEyIDIgMCAwIDEgMi0yaDhhMiAyIDAgMCAxIDIgMnY4In1dXX0pO3ZhciBNVyxEbnQ9bCgoKT0+e01XPVtbImNpcmNsZSIse2N4OiIxNSIsY3k6IjEyIixyOiIzIn1dLFsicmVjdCIse3dpZHRoOiIyMCIsaGVpZ2h0OiIxNCIseDoiMiIseToiNSIscng6IjcifV1dfSk7dmFyIGtXLEFudD1sKCgpPT57a1c9W1sicGF0aCIse2Q6Ik0xMCAxNWg0In1dLFsicGF0aCIse2Q6Im0xNC44MTcgMTAuOTk1LS45NzEtMS40NSAxLjAzNC0xLjIzMmEyIDIgMCAwIDAtMi4wMjUtMy4yMzhsLTEuODIuMzY0TDkuOTEgMy44ODVhMiAyIDAgMCAwLTMuNjI1Ljc0OEw2LjE0MSA2LjU1bC0xLjcyNS40MjZhMiAyIDAgMCAwLS4xOSAzLjc1NmwuNjU3LjI3In1dLFsicGF0aCIse2Q6Im0xOC44MjIgMTAuOTk1IDIuMjYtNS4zOGExIDEgMCAwIDAtLjU1Ny0xLjMxOEwxNi45NTQgMi45YTEgMSAwIDAgMC0xLjI4MS41MzNsLS45MjQgMi4xMjIifV0sWyJwYXRoIix7ZDoiTTQgMTIuMDA2QTEgMSAwIDAgMSA0Ljk5NCAxMUgxOWExIDEgMCAwIDEgMSAxdjdhMiAyIDAgMCAxLTIgMkg2YTIgMiAwIDAgMS0yLTJ6In1dXX0pO3ZhciBTVyxFbnQ9bCgoKT0+e1NXPVtbInBhdGgiLHtkOiJNMTYgMTJ2NCJ9XSxbInBhdGgiLHtkOiJNMTYgNmEyIDIgMCAwIDEgMS40MTQuNTg2bDQgNEEyIDIgMCAwIDEgMjIgMTJ2N2EyIDIgMCAwIDEtMiAySDRhMiAyIDAgMCAxLTItMnYtN2EyIDIgMCAwIDEgLjU4Ni0xLjQxNGw0LTRBMiAyIDAgMCAxIDggNnoifV0sWyJwYXRoIix7ZDoiTTE2IDZWNGEyIDIgMCAwIDAtMi0yaC00YTIgMiAwIDAgMC0yIDJ2MiJ9XSxbInBhdGgiLHtkOiJNMiAxNGgyMCJ9XSxbInBhdGgiLHtkOiJNOCAxMnY0In1dXX0pO3ZhciB6VywkbnQ9bCgoKT0+e3pXPVtbInBhdGgiLHtkOiJNMjEgNEgzIn1dLFsicGF0aCIse2Q6Ik0xOCA4SDYifV0sWyJwYXRoIix7ZDoiTTE5IDEySDkifV0sWyJwYXRoIix7ZDoiTTE2IDE2aC02In1dLFsicGF0aCIse2Q6Ik0xMSAyMEg5In1dXX0pO3ZhciBDVyxQbnQ9bCgoKT0+e0NXPVtbImVsbGlwc2UiLHtjeDoiMTIiLGN5OiIxMSIscng6IjMiLHJ5OiIyIn1dLFsiZWxsaXBzZSIse2N4OiIxMiIsY3k6IjEyLjUiLHJ4OiIxMCIscnk6IjguNSJ9XV19KTt2YXIgX1csSW50PWwoKCk9PntfVz1bWyJwYXRoIix7ZDoiTTEyIDIwdi02In1dLFsicGF0aCIse2Q6Ik0xOS42NTYgMTRIMjIifV0sWyJwYXRoIix7ZDoiTTIgMTRoMTIifV0sWyJwYXRoIix7ZDoibTIgMiAyMCAyMCJ9XSxbInBhdGgiLHtkOiJNMjAgMjBINGEyIDIgMCAwIDEtMi0yVjZhMiAyIDAgMCAxIDItMiJ9XSxbInBhdGgiLHtkOiJNOS42NTYgNEgyMGEyIDIgMCAwIDEgMiAydjEwLjM0NCJ9XV19KTt2YXIgVFcsTm50PWwoKCk9PntUVz1bWyJyZWN0Iix7d2lkdGg6IjIwIixoZWlnaHQ6IjE2Iix4OiIyIix5OiI0IixyeDoiMiJ9XSxbInBhdGgiLHtkOiJNMiAxNGgyMCJ9XSxbInBhdGgiLHtkOiJNMTIgMjB2LTYifV1dfSk7dmFyIExXLEZudD1sKCgpPT57TFc9W1sicGF0aCIse2Q6Ik0yMiA3aC0yIn1dLFsicGF0aCIse2Q6Ik02LjUgM2gxMUEyLjUgMi41IDAgMCAxIDIwIDUuNVYyMGExIDEgMCAwIDEtMSAxaC05YTEgMSAwIDAgMS0xLTFWNS41YTEgMSAwIDAgMC01IDBWMTdhMSAxIDAgMCAwIDEgMWg0In1dLFsicGF0aCIse2Q6Ik05IDdIMiJ9XV19KTt2YXIgRFcsT250PWwoKCk9PntEVz1bWyJwYXRoIix7ZDoiTTE4LjIgMTIuMjcgMjAgNkg0bDEuOCA2LjI3YTEgMSAwIDAgMCAuOTUuNzNoMTAuNWExIDEgMCAwIDAgLjk2LS43M1oifV0sWyJwYXRoIix7ZDoiTTggMTN2OSJ9XSxbInBhdGgiLHtkOiJNMTYgMjJ2LTkifV0sWyJwYXRoIix7ZDoibTkgNiAxIDcifV0sWyJwYXRoIix7ZDoibTE1IDYtMSA3In1dLFsicGF0aCIse2Q6Ik0xMiA2VjIifV0sWyJwYXRoIix7ZDoiTTEzIDJoLTIifV1dfSk7dmFyIEFXLFJudD1sKCgpPT57QVc9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxMiIseDoiMyIseToiOCIscng6IjEifV0sWyJwYXRoIix7ZDoiTTEwIDhWNWMwLS42LS40LTEtMS0xSDZhMSAxIDAgMCAwLTEgMXYzIn1dLFsicGF0aCIse2Q6Ik0xOSA4VjVjMC0uNi0uNC0xLTEtMWgtM2ExIDEgMCAwIDAtMSAxdjMifV1dfSk7dmFyIEVXLEJudD1sKCgpPT57RVc9W1sicGF0aCIse2Q6Im0xMCAxMSAxMSAuOWExIDEgMCAwIDEgLjggMS4xbC0uNjY1IDQuMTU4YTEgMSAwIDAgMS0uOTg4Ljg0MkgyMCJ9XSxbInBhdGgiLHtkOiJNMTYgMThoLTUifV0sWyJwYXRoIix7ZDoiTTE4IDVhMSAxIDAgMCAwLTEgMXY1LjU3MyJ9XSxbInBhdGgiLHtkOiJNMyA0aDguMTI5YTEgMSAwIDAgMSAuOTkuODYzTDEzIDExLjI0NiJ9XSxbInBhdGgiLHtkOiJNNCAxMVY0In1dLFsicGF0aCIse2Q6Ik03IDE1aC4wMSJ9XSxbInBhdGgiLHtkOiJNOCAxMC4xVjQifV0sWyJjaXJjbGUiLHtjeDoiMTgiLGN5OiIxOCIscjoiMiJ9XSxbImNpcmNsZSIse2N4OiI3IixjeToiMTUiLHI6IjUifV1dfSk7dmFyICRXLEhudD1sKCgpPT57JFc9W1sicGF0aCIse2Q6Ik0xNi4wNSAxMC45NjZhNSAyLjUgMCAwIDEtOC4xIDAifV0sWyJwYXRoIix7ZDoibTE2LjkyMyAxNC4wNDkgNC40OCAyLjA0YTEgMSAwIDAgMSAuMDAxIDEuODMxbC04LjU3NCAzLjlhMiAyIDAgMCAxLTEuNjYgMGwtOC41NzQtMy45MWExIDEgMCAwIDEgMC0xLjgzbDQuNDg0LTIuMDQifV0sWyJwYXRoIix7ZDoiTTE2Ljk0OSAxNC4xNGE1IDIuNSAwIDEgMS05LjkgMEwxMC4wNjMgMy41YTIgMiAwIDAgMSAzLjg3NCAweiJ9XSxbInBhdGgiLHtkOiJNOS4xOTQgNi41N2E1IDIuNSAwIDAgMCA1LjYxIDAifV1dfSk7dmFyIFBXLHFudD1sKCgpPT57UFc9W1sicGF0aCIse2Q6Ik0yIDIyVjEyYTEwIDEwIDAgMSAxIDIwIDB2MTAifV0sWyJwYXRoIix7ZDoiTTE1IDYuOHYxLjRhMyAyLjggMCAxIDEtNiAwVjYuOCJ9XSxbInBhdGgiLHtkOiJNMTAgMTVoLjAxIn1dLFsicGF0aCIse2Q6Ik0xNCAxNWguMDEifV0sWyJwYXRoIix7ZDoiTTEwIDE5YTQgNCAwIDAgMS00LTR2LTNhNiA2IDAgMSAxIDEyIDB2M2E0IDQgMCAwIDEtNCA0WiJ9XSxbInBhdGgiLHtkOiJtOSAxOS0yIDMifV0sWyJwYXRoIix7ZDoibTE1IDE5IDIgMyJ9XV19KTt2YXIgSVcsam50PWwoKCk9PntJVz1bWyJwYXRoIix7ZDoiTTggMy4xVjdhNCA0IDAgMCAwIDggMFYzLjEifV0sWyJwYXRoIix7ZDoibTkgMTUtMS0xIn1dLFsicGF0aCIse2Q6Im0xNSAxNSAxLTEifV0sWyJwYXRoIix7ZDoiTTkgMTljLTIuOCAwLTUtMi4yLTUtNXYtNGE4IDggMCAwIDEgMTYgMHY0YzAgMi44LTIuMiA1LTUgNVoifV0sWyJwYXRoIix7ZDoibTggMTktMiAzIn1dLFsicGF0aCIse2Q6Im0xNiAxOSAyIDMifV1dfSk7dmFyIE5XLFZudD1sKCgpPT57Tlc9W1sicGF0aCIse2Q6Ik0yIDE3IDE3IDIifV0sWyJwYXRoIix7ZDoibTIgMTQgOCA4In1dLFsicGF0aCIse2Q6Im01IDExIDggOCJ9XSxbInBhdGgiLHtkOiJtOCA4IDggOCJ9XSxbInBhdGgiLHtkOiJtMTEgNSA4IDgifV0sWyJwYXRoIix7ZDoibTE0IDIgOCA4In1dLFsicGF0aCIse2Q6Ik03IDIyIDIyIDcifV1dfSk7dmFyIHI4LFVudD1sKCgpPT57cjg9W1sicmVjdCIse3dpZHRoOiIxNiIsaGVpZ2h0OiIxNiIseDoiNCIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoiTTQgMTFoMTYifV0sWyJwYXRoIix7ZDoiTTEyIDN2OCJ9XSxbInBhdGgiLHtkOiJtOCAxOS0yIDMifV0sWyJwYXRoIix7ZDoibTE4IDIyLTItMyJ9XSxbInBhdGgiLHtkOiJNOCAxNWguMDEifV0sWyJwYXRoIix7ZDoiTTE2IDE1aC4wMSJ9XV19KTt2YXIgRlcsV250PWwoKCk9PntGVz1bWyJwYXRoIix7ZDoiTTEyIDE2djYifV0sWyJwYXRoIix7ZDoiTTE0IDIwaC00In1dLFsicGF0aCIse2Q6Ik0xOCAyaDR2NCJ9XSxbInBhdGgiLHtkOiJtMiAyIDcuMTcgNy4xNyJ9XSxbInBhdGgiLHtkOiJNMiA1LjM1NVYyaDMuMzU3In1dLFsicGF0aCIse2Q6Im0yMiAyLTcuMTcgNy4xNyJ9XSxbInBhdGgiLHtkOiJNOCA1IDUgOCJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiI0In1dXX0pO3ZhciBPVyxHbnQ9bCgoKT0+e09XPVtbInBhdGgiLHtkOiJNMTAgMTF2NiJ9XSxbInBhdGgiLHtkOiJNMTQgMTF2NiJ9XSxbInBhdGgiLHtkOiJNMTkgNnYxNGEyIDIgMCAwIDEtMiAySDdhMiAyIDAgMCAxLTItMlY2In1dLFsicGF0aCIse2Q6Ik0zIDZoMTgifV0sWyJwYXRoIix7ZDoiTTggNlY0YTIgMiAwIDAgMSAyLTJoNGEyIDIgMCAwIDEgMiAydjIifV1dfSk7dmFyIFJXLFludD1sKCgpPT57Ulc9W1sicGF0aCIse2Q6Ik0xOSA2djE0YTIgMiAwIDAgMS0yIDJIN2EyIDIgMCAwIDEtMi0yVjYifV0sWyJwYXRoIix7ZDoiTTMgNmgxOCJ9XSxbInBhdGgiLHtkOiJNOCA2VjRhMiAyIDAgMCAxIDItMmg0YTIgMiAwIDAgMSAyIDJ2MiJ9XV19KTt2YXIgYTgsWm50PWwoKCk9PnthOD1bWyJwYXRoIix7ZDoiTTEzIDhjMC0yLjc2LTIuNDYtNS01LjUtNVMyIDUuMjQgMiA4aDJsMS0xIDEgMWg0In1dLFsicGF0aCIse2Q6Ik0xMyA3LjE0QTUuODIgNS44MiAwIDAgMSAxNi41IDZjMy4wNCAwIDUuNSAyLjI0IDUuNSA1aC0zbC0xLTEtMSAxaC0zIn1dLFsicGF0aCIse2Q6Ik01Ljg5IDkuNzFjLTIuMTUgMi4xNS0yLjMgNS40Ny0uMzUgNy40M2w0LjI0LTQuMjUuNy0uNy43MS0uNzEgMi4xMi0yLjEyYy0xLjk1LTEuOTYtNS4yNy0xLjgtNy40Mi4zNSJ9XSxbInBhdGgiLHtkOiJNMTEgMTUuNWMuNSAyLjUtLjE3IDQuNS0xIDYuNWg0YzItNS41LS41LTEyLTEtMTQifV1dfSk7dmFyIEJXLFhudD1sKCgpPT57Qlc9W1sicGF0aCIse2Q6Ik04IDE5YTQgNCAwIDAgMS0yLjI0LTcuMzJBMy41IDMuNSAwIDAgMSA5IDYuMDNWNmEzIDMgMCAxIDEgNiAwdi4wNGEzLjUgMy41IDAgMCAxIDMuMjQgNS42NUE0IDQgMCAwIDEgMTYgMTlaIn1dLFsicGF0aCIse2Q6Ik0xMiAxOXYzIn1dXX0pO3ZhciBIVyxRbnQ9bCgoKT0+e0hXPVtbInBhdGgiLHtkOiJtMTcgMTQgMyAzLjNhMSAxIDAgMCAxLS43IDEuN0g0LjdhMSAxIDAgMCAxLS43LTEuN0w3IDE0aC0uM2ExIDEgMCAwIDEtLjctMS43TDkgOWgtLjJBMSAxIDAgMCAxIDggNy4zTDEyIDNsNCA0LjNhMSAxIDAgMCAxLS44IDEuN0gxNWwzIDMuM2ExIDEgMCAwIDEtLjcgMS43SDE3WiJ9XSxbInBhdGgiLHtkOiJNMTIgMjJ2LTMifV1dfSk7dmFyIHFXLEtudD1sKCgpPT57cVc9W1sicGF0aCIse2Q6Ik0xMCAxMHYuMkEzIDMgMCAwIDEgOC45IDE2SDVhMyAzIDAgMCAxLTEtNS44VjEwYTMgMyAwIDAgMSA2IDBaIn1dLFsicGF0aCIse2Q6Ik03IDE2djYifV0sWyJwYXRoIix7ZDoiTTEzIDE5djMifV0sWyJwYXRoIix7ZDoiTTEyIDE5aDguM2ExIDEgMCAwIDAgLjctMS43TDE4IDE0aC4zYTEgMSAwIDAgMCAuNy0xLjdMMTYgOWguMmExIDEgMCAwIDAgLjgtMS43TDEzIDNsLTEuNCAxLjUifV1dfSk7dmFyIGpXLEpudD1sKCgpPT57alc9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIiLHJ5OiIyIn1dLFsicmVjdCIse3dpZHRoOiIzIixoZWlnaHQ6IjkiLHg6IjciLHk6IjcifV0sWyJyZWN0Iix7d2lkdGg6IjMiLGhlaWdodDoiNSIseDoiMTQiLHk6IjcifV1dfSk7dmFyIFZXLGVzdD1sKCgpPT57Vlc9W1sicGF0aCIse2Q6Ik0xNiAxN2g2di02In1dLFsicGF0aCIse2Q6Im0yMiAxNy04LjUtOC41LTUgNUwyIDcifV1dfSk7dmFyIFVXLHRzdD1sKCgpPT57VVc9W1sicGF0aCIse2Q6Ik0xNC44MjggMTQuODI4IDIxIDIxIn1dLFsicGF0aCIse2Q6Ik0yMSAxNnY1aC01In1dLFsicGF0aCIse2Q6Im0yMSAzLTkgOS00LTQtNiA2In1dLFsicGF0aCIse2Q6Ik0yMSA4VjNoLTUifV1dfSk7dmFyIFdXLHJzdD1sKCgpPT57V1c9W1sicGF0aCIse2Q6Ik0xNiA3aDZ2NiJ9XSxbInBhdGgiLHtkOiJtMjIgNy04LjUgOC41LTUtNUwyIDE3In1dXX0pO3ZhciBpOCxhc3Q9bCgoKT0+e2k4PVtbInBhdGgiLHtkOiJtMjEuNzMgMTgtOC0xNGEyIDIgMCAwIDAtMy40OCAwbC04IDE0QTIgMiAwIDAgMCA0IDIxaDE2YTIgMiAwIDAgMCAxLjczLTMifV0sWyJwYXRoIix7ZDoiTTEyIDl2NCJ9XSxbInBhdGgiLHtkOiJNMTIgMTdoLjAxIn1dXX0pO3ZhciBHVyxpc3Q9bCgoKT0+e0dXPVtbInBhdGgiLHtkOiJNMTAuMTcgNC4xOTNhMiAyIDAgMCAxIDMuNjY2LjAxMyJ9XSxbInBhdGgiLHtkOiJNMTQgMjFoMiJ9XSxbInBhdGgiLHtkOiJtMTUuODc0IDcuNzQzIDEgMS43MzIifV0sWyJwYXRoIix7ZDoibTE4Ljg0OSAxMi45NTIgMSAxLjczMiJ9XSxbInBhdGgiLHtkOiJNMjEuODI0IDE4LjE4YTIgMiAwIDAgMS0xLjgzNSAyLjgyNCJ9XSxbInBhdGgiLHtkOiJNNC4wMjQgMjFhMiAyIDAgMCAxLTEuODM5LTIuODM5In1dLFsicGF0aCIse2Q6Im01LjEzNiAxMi45NTItMSAxLjczMiJ9XSxbInBhdGgiLHtkOiJNOCAyMWgyIn1dLFsicGF0aCIse2Q6Im04LjEwMiA3Ljc0My0xIDEuNzMyIn1dXX0pO3ZhciBZVyxvc3Q9bCgoKT0+e1lXPVtbInBhdGgiLHtkOiJNMjIgMThhMiAyIDAgMCAxLTIgMkgzYy0xLjEgMC0xLjMtLjYtLjQtMS4zTDIwLjQgNC4zYy45LS43IDEuNi0uNCAxLjYuN1oifV1dfSk7dmFyIFpXLG5zdD1sKCgpPT57Wlc9W1sicGF0aCIse2Q6Ik0xMy43MyA0YTIgMiAwIDAgMC0zLjQ2IDBsLTggMTRBMiAyIDAgMCAwIDQgMjFoMTZhMiAyIDAgMCAwIDEuNzMtM1oifV1dfSk7dmFyIFhXLHNzdD1sKCgpPT57WFc9W1sicGF0aCIse2Q6Ik0xMCAxNC42NnYxLjYyNmEyIDIgMCAwIDEtLjk3NiAxLjY5NkE1IDUgMCAwIDAgNyAyMS45NzgifV0sWyJwYXRoIix7ZDoiTTE0IDE0LjY2djEuNjI2YTIgMiAwIDAgMCAuOTc2IDEuNjk2QTUgNSAwIDAgMSAxNyAyMS45NzgifV0sWyJwYXRoIix7ZDoiTTE4IDloMS41YTEgMSAwIDAgMCAwLTVIMTgifV0sWyJwYXRoIix7ZDoiTTQgMjJoMTYifV0sWyJwYXRoIix7ZDoiTTYgOWE2IDYgMCAwIDAgMTIgMFYzYTEgMSAwIDAgMC0xLTFIN2ExIDEgMCAwIDAtMSAxeiJ9XSxbInBhdGgiLHtkOiJNNiA5SDQuNWExIDEgMCAwIDEgMC01SDYifV1dfSk7dmFyIFFXLGxzdD1sKCgpPT57UVc9W1sicGF0aCIse2Q6Ik0xNCAxOVY3YTIgMiAwIDAgMC0yLTJIOSJ9XSxbInBhdGgiLHtkOiJNMTUgMTlIOSJ9XSxbInBhdGgiLHtkOiJNMTkgMTloMmExIDEgMCAwIDAgMS0xdi0zLjY1YTEgMSAwIDAgMC0uMjItLjYyTDE4LjMgOS4zOGExIDEgMCAwIDAtLjc4LS4zOEgxNCJ9XSxbInBhdGgiLHtkOiJNMiAxM3Y1YTEgMSAwIDAgMCAxIDFoMiJ9XSxbInBhdGgiLHtkOiJNNCAzIDIuMTUgNS4xNWEuNDk1LjQ5NSAwIDAgMCAuMzUuODZoMi4xNWEuNDcuNDcgMCAwIDEgLjM1Ljg2TDMgOS4wMiJ9XSxbImNpcmNsZSIse2N4OiIxNyIsY3k6IjE5IixyOiIyIn1dLFsiY2lyY2xlIix7Y3g6IjciLGN5OiIxOSIscjoiMiJ9XV19KTt2YXIgS1csY3N0PWwoKCk9PntLVz1bWyJwYXRoIix7ZDoiTTE0IDE4VjZhMiAyIDAgMCAwLTItMkg0YTIgMiAwIDAgMC0yIDJ2MTFhMSAxIDAgMCAwIDEgMWgyIn1dLFsicGF0aCIse2Q6Ik0xNSAxOEg5In1dLFsicGF0aCIse2Q6Ik0xOSAxOGgyYTEgMSAwIDAgMCAxLTF2LTMuNjVhMSAxIDAgMCAwLS4yMi0uNjI0bC0zLjQ4LTQuMzVBMSAxIDAgMCAwIDE3LjUyIDhIMTQifV0sWyJjaXJjbGUiLHtjeDoiMTciLGN5OiIxOCIscjoiMiJ9XSxbImNpcmNsZSIse2N4OiI3IixjeToiMTgiLHI6IjIifV1dfSk7dmFyIEpXLGRzdD1sKCgpPT57Slc9W1sicGF0aCIse2Q6Ik0xNSA0IDUgOSJ9XSxbInBhdGgiLHtkOiJtMTUgOC41LTEwIDUifV0sWyJwYXRoIix7ZDoiTTE4IDEyYTkgOSAwIDAgMS05IDlWMyJ9XV19KTt2YXIgZUcsdXN0PWwoKCk9PntlRz1bWyJwYXRoIix7ZDoiTTEwIDEyLjAxaC4wMSJ9XSxbInBhdGgiLHtkOiJNMTggOHY0YTggOCAwIDAgMS0xLjA3IDQifV0sWyJjaXJjbGUiLHtjeDoiMTAiLGN5OiIxMiIscjoiNCJ9XSxbInJlY3QiLHt4OiIyIix5OiI0Iix3aWR0aDoiMjAiLGhlaWdodDoiMTYiLHJ4OiIyIn1dXX0pO3ZhciB0Ryxmc3Q9bCgoKT0+e3RHPVtbInBhdGgiLHtkOiJtMTIgMTAgMiA0djNhMSAxIDAgMCAwIDEgMWgyYTEgMSAwIDAgMCAxLTF2LTNhOCA4IDAgMSAwLTE2IDB2M2ExIDEgMCAwIDAgMSAxaDJhMSAxIDAgMCAwIDEtMXYtM2wyLTRoNFoifV0sWyJwYXRoIix7ZDoiTTQuODIgNy45IDggMTAifV0sWyJwYXRoIix7ZDoiTTE1LjE4IDcuOSAxMiAxMCJ9XSxbInBhdGgiLHtkOiJNMTYuOTMgMTBIMjBhMiAyIDAgMCAxIDAgNEgyIn1dXX0pO3ZhciByRyxwc3Q9bCgoKT0+e3JHPVtbInBhdGgiLHtkOiJNMTUuMDMzIDkuNDRhLjY0Ny42NDcgMCAwIDEgMCAxLjEybC00LjA2NSAyLjM1MmEuNjQ1LjY0NSAwIDAgMS0uOTY4LS41NlY3LjY0OGEuNjQ1LjY0NSAwIDAgMSAuOTY3LS41NnoifV0sWyJwYXRoIix7ZDoiTTcgMjFoMTAifV0sWyJyZWN0Iix7d2lkdGg6IjIwIixoZWlnaHQ6IjE0Iix4OiIyIix5OiIzIixyeDoiMiJ9XV19KTt2YXIgbzgsaHN0PWwoKCk9PntvOD1bWyJwYXRoIix7ZDoiTTcgMjFoMTAifV0sWyJyZWN0Iix7d2lkdGg6IjIwIixoZWlnaHQ6IjE0Iix4OiIyIix5OiIzIixyeDoiMiJ9XV19KTt2YXIgYUcsbXN0PWwoKCk9PnthRz1bWyJwYXRoIix7ZDoibTE3IDItNSA1LTUtNSJ9XSxbInJlY3QiLHt3aWR0aDoiMjAiLGhlaWdodDoiMTUiLHg6IjIiLHk6IjciLHJ4OiIyIn1dXX0pO3ZhciBpRyxnc3Q9bCgoKT0+e2lHPVtbInBhdGgiLHtkOiJNMjEgMkgzdjE2aDV2NGw0LTRoNWw0LTRWMnptLTEwIDlWN201IDRWNyJ9XV19KTt2YXIgb0cseHN0PWwoKCk9PntvRz1bWyJwYXRoIix7ZDoiTTIyIDRzLS43IDIuMS0yIDMuNGMxLjYgMTAtOS40IDE3LjMtMTggMTEuNiAyLjIuMSA0LjQtLjYgNi0yQzMgMTUuNS41IDkuNiAzIDVjMi4yIDIuNiA1LjYgNC4xIDkgNC0uOS00LjIgNC02LjYgNy0zLjggMS4xIDAgMy0xLjIgMy0xLjJ6In1dXX0pO3ZhciBuRyxic3Q9bCgoKT0+e25HPVtbInBhdGgiLHtkOiJNMTQgMTYuNWEuNS41IDAgMCAwIC41LjVoLjVhMiAyIDAgMCAxIDAgNEg5YTIgMiAwIDAgMSAwLTRoLjVhLjUuNSAwIDAgMCAuNS0uNXYtOWEuNS41IDAgMCAwLS41LS41aC0zYS41LjUgMCAwIDAtLjUuNVY4YTIgMiAwIDAgMS00IDBWNWEyIDIgMCAwIDEgMi0yaDE2YTIgMiAwIDAgMSAyIDJ2M2EyIDIgMCAwIDEtNCAwdi0uNWEuNS41IDAgMCAwLS41LS41aC0zYS41LjUgMCAwIDAtLjUuNVoifV1dfSk7dmFyIHNHLHZzdD1sKCgpPT57c0c9W1sicGF0aCIse2Q6Ik0xMiA0djE2In1dLFsicGF0aCIse2Q6Ik00IDdWNWExIDEgMCAwIDEgMS0xaDE0YTEgMSAwIDAgMSAxIDF2MiJ9XSxbInBhdGgiLHtkOiJNOSAyMGg2In1dXX0pO3ZhciBsRyx5c3Q9bCgoKT0+e2xHPVtbInBhdGgiLHtkOiJNMTIgMTN2N2EyIDIgMCAwIDAgNCAwIn1dLFsicGF0aCIse2Q6Ik0xMiAydjIifV0sWyJwYXRoIix7ZDoiTTIwLjk5MiAxM2ExIDEgMCAwIDAgLjk3LTEuMjc0IDEwLjI4NCAxMC4yODQgMCAwIDAtMTkuOTIzIDBBMSAxIDAgMCAwIDMgMTN6In1dXX0pO3ZhciBjRyx3c3Q9bCgoKT0+e2NHPVtbInBhdGgiLHtkOiJNMTIgMTN2N2EyIDIgMCAwIDAgNCAwIn1dLFsicGF0aCIse2Q6Ik0xMiAydjIifV0sWyJwYXRoIix7ZDoiTTE4LjY1NiAxM2gyLjMzNmExIDEgMCAwIDAgLjk3LTEuMjc0IDEwLjI4NCAxMC4yODQgMCAwIDAtMTIuMDctNy41MSJ9XSxbInBhdGgiLHtkOiJtMiAyIDIwIDIwIn1dLFsicGF0aCIse2Q6Ik01Ljk2MSA1Ljk1N2ExMC4yOCAxMC4yOCAwIDAgMC0zLjkyMiA1Ljc2OUExIDEgMCAwIDAgMyAxM2gxMCJ9XV19KTt2YXIgZEcsTXN0PWwoKCk9PntkRz1bWyJwYXRoIix7ZDoiTTYgNHY2YTYgNiAwIDAgMCAxMiAwVjQifV0sWyJsaW5lIix7eDE6IjQiLHgyOiIyMCIseTE6IjIwIix5MjoiMjAifV1dfSk7dmFyIHVHLGtzdD1sKCgpPT57dUc9W1sicGF0aCIse2Q6Ik05IDE0IDQgOWw1LTUifV0sWyJwYXRoIix7ZDoiTTQgOWgxMC41YTUuNSA1LjUgMCAwIDEgNS41IDUuNWE1LjUgNS41IDAgMCAxLTUuNSA1LjVIMTEifV1dfSk7dmFyIGZHLFNzdD1sKCgpPT57Zkc9W1sicGF0aCIse2Q6Ik0yMSAxN2E5IDkgMCAwIDAtMTUtNi43TDMgMTMifV0sWyJwYXRoIix7ZDoiTTMgN3Y2aDYifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxNyIscjoiMSJ9XV19KTt2YXIgcEcsenN0PWwoKCk9PntwRz1bWyJwYXRoIix7ZDoiTTMgN3Y2aDYifV0sWyJwYXRoIix7ZDoiTTIxIDE3YTkgOSAwIDAgMC05LTkgOSA5IDAgMCAwLTYgMi4zTDMgMTMifV1dfSk7dmFyIGhHLENzdD1sKCgpPT57aEc9W1sicGF0aCIse2Q6Ik0xNiAxMmg2In1dLFsicGF0aCIse2Q6Ik04IDEySDIifV0sWyJwYXRoIix7ZDoiTTEyIDJ2MiJ9XSxbInBhdGgiLHtkOiJNMTIgOHYyIn1dLFsicGF0aCIse2Q6Ik0xMiAxNHYyIn1dLFsicGF0aCIse2Q6Ik0xMiAyMHYyIn1dLFsicGF0aCIse2Q6Im0xOSAxNSAzLTMtMy0zIn1dLFsicGF0aCIse2Q6Im01IDktMyAzIDMgMyJ9XV19KTt2YXIgbUcsX3N0PWwoKCk9PnttRz1bWyJwYXRoIix7ZDoiTTEyIDIydi02In1dLFsicGF0aCIse2Q6Ik0xMiA4VjIifV0sWyJwYXRoIix7ZDoiTTQgMTJIMiJ9XSxbInBhdGgiLHtkOiJNMTAgMTJIOCJ9XSxbInBhdGgiLHtkOiJNMTYgMTJoLTIifV0sWyJwYXRoIix7ZDoiTTIyIDEyaC0yIn1dLFsicGF0aCIse2Q6Im0xNSAxOS0zIDMtMy0zIn1dLFsicGF0aCIse2Q6Im0xNSA1LTMtMy0zIDMifV1dfSk7dmFyIGdHLFRzdD1sKCgpPT57Z0c9W1sicmVjdCIse3dpZHRoOiI4IixoZWlnaHQ6IjYiLHg6IjUiLHk6IjQiLHJ4OiIxIn1dLFsicmVjdCIse3dpZHRoOiI4IixoZWlnaHQ6IjYiLHg6IjExIix5OiIxNCIscng6IjEifV1dfSk7dmFyIG44LExzdD1sKCgpPT57bjg9W1sicGF0aCIse2Q6Ik0xNCAyMXYtM2EyIDIgMCAwIDAtNCAwdjMifV0sWyJwYXRoIix7ZDoiTTE4IDEyaC4wMSJ9XSxbInBhdGgiLHtkOiJNMTggMTZoLjAxIn1dLFsicGF0aCIse2Q6Ik0yMiA3YTEgMSAwIDAgMC0xLTFoLTJhMiAyIDAgMCAxLTEuMTQzLS4zNTlMMTMuMTQzIDIuMzZhMiAyIDAgMCAwLTIuMjg2LS4wMDFMNi4xNDMgNS42NEEyIDIgMCAwIDEgNSA2SDNhMSAxIDAgMCAwLTEgMXYxMmEyIDIgMCAwIDAgMiAyaDE2YTIgMiAwIDAgMCAyLTJ6In1dLFsicGF0aCIse2Q6Ik02IDEyaC4wMSJ9XSxbInBhdGgiLHtkOiJNNiAxNmguMDEifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMCIscjoiMiJ9XV19KTt2YXIgeEcsRHN0PWwoKCk9Pnt4Rz1bWyJwYXRoIix7ZDoibTE4Ljg0IDEyLjI1IDEuNzItMS43MWgtLjAyYTUuMDA0IDUuMDA0IDAgMCAwLS4xMi03LjA3IDUuMDA2IDUuMDA2IDAgMCAwLTYuOTUgMGwtMS43MiAxLjcxIn1dLFsicGF0aCIse2Q6Im01LjE3IDExLjc1LTEuNzEgMS43MWE1LjAwNCA1LjAwNCAwIDAgMCAuMTIgNy4wNyA1LjAwNiA1LjAwNiAwIDAgMCA2Ljk1IDBsMS43MS0xLjcxIn1dLFsibGluZSIse3gxOiI4Iix4MjoiOCIseTE6IjIiLHkyOiI1In1dLFsibGluZSIse3gxOiIyIix4MjoiNSIseTE6IjgiLHkyOiI4In1dLFsibGluZSIse3gxOiIxNiIseDI6IjE2Iix5MToiMTkiLHkyOiIyMiJ9XSxbImxpbmUiLHt4MToiMTkiLHgyOiIyMiIseTE6IjE2Iix5MjoiMTYifV1dfSk7dmFyIGJHLEFzdD1sKCgpPT57Ykc9W1sicGF0aCIse2Q6Im0xOSA1IDMtMyJ9XSxbInBhdGgiLHtkOiJtMiAyMiAzLTMifV0sWyJwYXRoIix7ZDoiTTYuMyAyMC4zYTIuNCAyLjQgMCAwIDAgMy40IDBMMTIgMThsLTYtNi0yLjMgMi4zYTIuNCAyLjQgMCAwIDAgMCAzLjRaIn1dLFsicGF0aCIse2Q6Ik03LjUgMTMuNSAxMCAxMSJ9XSxbInBhdGgiLHtkOiJNMTAuNSAxNi41IDEzIDE0In1dLFsicGF0aCIse2Q6Im0xMiA2IDYgNiAyLjMtMi4zYTIuNCAyLjQgMCAwIDAgMC0zLjRsLTIuNi0yLjZhMi40IDIuNCAwIDAgMC0zLjQgMFoifV1dfSk7dmFyIHZHLEVzdD1sKCgpPT57dkc9W1sicGF0aCIse2Q6Ik0xNSA3aDJhNSA1IDAgMCAxIDAgMTBoLTJtLTYgMEg3QTUgNSAwIDAgMSA3IDdoMiJ9XV19KTt2YXIgeUcsJHN0PWwoKCk9Pnt5Rz1bWyJwYXRoIix7ZDoiTTEyIDN2MTIifV0sWyJwYXRoIix7ZDoibTE3IDgtNS01LTUgNSJ9XSxbInBhdGgiLHtkOiJNMjEgMTV2NGEyIDIgMCAwIDEtMiAySDVhMiAyIDAgMCAxLTItMnYtNCJ9XV19KTt2YXIgd0csUHN0PWwoKCk9Pnt3Rz1bWyJjaXJjbGUiLHtjeDoiMTAiLGN5OiI3IixyOiIxIn1dLFsiY2lyY2xlIix7Y3g6IjQiLGN5OiIyMCIscjoiMSJ9XSxbInBhdGgiLHtkOiJNNC43IDE5LjMgMTkgNSJ9XSxbInBhdGgiLHtkOiJtMjEgMy0zIDEgMiAyWiJ9XSxbInBhdGgiLHtkOiJNOS4yNiA3LjY4IDUgMTJsMiA1In1dLFsicGF0aCIse2Q6Im0xMCAxNCA1IDIgMy41LTMuNSJ9XSxbInBhdGgiLHtkOiJtMTggMTIgMS0xIDEgMS0xIDFaIn1dXX0pO3ZhciBNRyxJc3Q9bCgoKT0+e01HPVtbInBhdGgiLHtkOiJtMTYgMTEgMiAyIDQtNCJ9XSxbInBhdGgiLHtkOiJNMTYgMjF2LTJhNCA0IDAgMCAwLTQtNEg2YTQgNCAwIDAgMC00IDR2MiJ9XSxbImNpcmNsZSIse2N4OiI5IixjeToiNyIscjoiNCJ9XV19KTt2YXIga0csTnN0PWwoKCk9PntrRz1bWyJwYXRoIix7ZDoiTTEwIDE1SDZhNCA0IDAgMCAwLTQgNHYyIn1dLFsicGF0aCIse2Q6Im0xNC4zMDUgMTYuNTMuOTIzLS4zODIifV0sWyJwYXRoIix7ZDoibTE1LjIyOCAxMy44NTItLjkyMy0uMzgzIn1dLFsicGF0aCIse2Q6Im0xNi44NTIgMTIuMjI4LS4zODMtLjkyMyJ9XSxbInBhdGgiLHtkOiJtMTYuODUyIDE3Ljc3Mi0uMzgzLjkyNCJ9XSxbInBhdGgiLHtkOiJtMTkuMTQ4IDEyLjIyOC4zODMtLjkyMyJ9XSxbInBhdGgiLHtkOiJtMTkuNTMgMTguNjk2LS4zODItLjkyNCJ9XSxbInBhdGgiLHtkOiJtMjAuNzcyIDEzLjg1Mi45MjQtLjM4MyJ9XSxbInBhdGgiLHtkOiJtMjAuNzcyIDE2LjE0OC45MjQuMzgzIn1dLFsiY2lyY2xlIix7Y3g6IjE4IixjeToiMTUiLHI6IjMifV0sWyJjaXJjbGUiLHtjeDoiOSIsY3k6IjciLHI6IjQifV1dfSk7dmFyIFNHLEZzdD1sKCgpPT57U0c9W1sicGF0aCIse2Q6Ik0yMCAxMXY2In1dLFsicGF0aCIse2Q6Ik0yMCAxM2gyIn1dLFsicGF0aCIse2Q6Ik0zIDIxdi0yYTQgNCAwIDAgMSA0LTRoNmE0IDQgMCAwIDEgMi4wNzIuNTc4In1dLFsiY2lyY2xlIix7Y3g6IjEwIixjeToiNyIscjoiNCJ9XSxbImNpcmNsZSIse2N4OiIyMCIsY3k6IjE5IixyOiIyIn1dXX0pO3ZhciB6RyxPc3Q9bCgoKT0+e3pHPVtbInBhdGgiLHtkOiJNMTkgMTZ2LTJhMiAyIDAgMCAwLTQgMHYyIn1dLFsicGF0aCIse2Q6Ik05LjUgMTVIN2E0IDQgMCAwIDAtNCA0djIifV0sWyJjaXJjbGUiLHtjeDoiMTAiLGN5OiI3IixyOiI0In1dLFsicmVjdCIse3g6IjEzIix5OiIxNiIsd2lkdGg6IjgiLGhlaWdodDoiNSIscng6Ii44OTkifV1dfSk7dmFyIENHLFJzdD1sKCgpPT57Q0c9W1sicGF0aCIse2Q6Ik0xNiAyMXYtMmE0IDQgMCAwIDAtNC00SDZhNCA0IDAgMCAwLTQgNHYyIn1dLFsiY2lyY2xlIix7Y3g6IjkiLGN5OiI3IixyOiI0In1dLFsibGluZSIse3gxOiIyMiIseDI6IjE2Iix5MToiMTEiLHkyOiIxMSJ9XV19KTt2YXIgX0csQnN0PWwoKCk9PntfRz1bWyJwYXRoIix7ZDoiTTE2IDIxdi0yYTQgNCAwIDAgMC00LTRINmE0IDQgMCAwIDAtNCA0djIifV0sWyJjaXJjbGUiLHtjeDoiOSIsY3k6IjciLHI6IjQifV0sWyJsaW5lIix7eDE6IjE5Iix4MjoiMTkiLHkxOiI4Iix5MjoiMTQifV0sWyJsaW5lIix7eDE6IjIyIix4MjoiMTYiLHkxOiIxMSIseTI6IjExIn1dXX0pO3ZhciBURyxIc3Q9bCgoKT0+e1RHPVtbInBhdGgiLHtkOiJNMTEuNSAxNUg3YTQgNCAwIDAgMC00IDR2MiJ9XSxbInBhdGgiLHtkOiJNMjEuMzc4IDE2LjYyNmExIDEgMCAwIDAtMy4wMDQtMy4wMDRsLTQuMDEgNC4wMTJhMiAyIDAgMCAwLS41MDYuODU0bC0uODM3IDIuODdhLjUuNSAwIDAgMCAuNjIuNjJsMi44Ny0uODM3YTIgMiAwIDAgMCAuODU0LS41MDZ6In1dLFsiY2lyY2xlIix7Y3g6IjEwIixjeToiNyIscjoiNCJ9XV19KTt2YXIgczgscXN0PWwoKCk9PntzOD1bWyJwYXRoIix7ZDoiTTIgMjFhOCA4IDAgMCAxIDEzLjI5Mi02In1dLFsiY2lyY2xlIix7Y3g6IjEwIixjeToiOCIscjoiNSJ9XSxbInBhdGgiLHtkOiJtMTYgMTkgMiAyIDQtNCJ9XV19KTt2YXIgbDgsanN0PWwoKCk9PntsOD1bWyJwYXRoIix7ZDoibTE0LjMwNSAxOS41My45MjMtLjM4MiJ9XSxbInBhdGgiLHtkOiJtMTUuMjI4IDE2Ljg1Mi0uOTIzLS4zODMifV0sWyJwYXRoIix7ZDoibTE2Ljg1MiAxNS4yMjgtLjM4My0uOTIzIn1dLFsicGF0aCIse2Q6Im0xNi44NTIgMjAuNzcyLS4zODMuOTI0In1dLFsicGF0aCIse2Q6Im0xOS4xNDggMTUuMjI4LjM4My0uOTIzIn1dLFsicGF0aCIse2Q6Im0xOS41MyAyMS42OTYtLjM4Mi0uOTI0In1dLFsicGF0aCIse2Q6Ik0yIDIxYTggOCAwIDAgMSAxMC40MzQtNy42MiJ9XSxbInBhdGgiLHtkOiJtMjAuNzcyIDE2Ljg1Mi45MjQtLjM4MyJ9XSxbInBhdGgiLHtkOiJtMjAuNzcyIDE5LjE0OC45MjQuMzgzIn1dLFsiY2lyY2xlIix7Y3g6IjEwIixjeToiOCIscjoiNSJ9XSxbImNpcmNsZSIse2N4OiIxOCIsY3k6IjE4IixyOiIzIn1dXX0pO3ZhciBMRyxWc3Q9bCgoKT0+e0xHPVtbInBhdGgiLHtkOiJNMTkgMTF2NiJ9XSxbInBhdGgiLHtkOiJNMTkgMTNoMiJ9XSxbInBhdGgiLHtkOiJNMiAyMWE4IDggMCAwIDEgMTIuODY4LTYuMzQ5In1dLFsiY2lyY2xlIix7Y3g6IjEwIixjeToiOCIscjoiNSJ9XSxbImNpcmNsZSIse2N4OiIxOSIsY3k6IjE5IixyOiIyIn1dXX0pO3ZhciBjOCxVc3Q9bCgoKT0+e2M4PVtbInBhdGgiLHtkOiJNMiAyMWE4IDggMCAwIDEgMTMuMjkyLTYifV0sWyJjaXJjbGUiLHtjeDoiMTAiLGN5OiI4IixyOiI1In1dLFsicGF0aCIse2Q6Ik0yMiAxOWgtNiJ9XV19KTt2YXIgREcsV3N0PWwoKCk9PntERz1bWyJwYXRoIix7ZDoiTTIgMjFhOCA4IDAgMCAxIDEwLjgyMS03LjQ4NyJ9XSxbInBhdGgiLHtkOiJNMjEuMzc4IDE2LjYyNmExIDEgMCAwIDAtMy4wMDQtMy4wMDRsLTQuMDEgNC4wMTJhMiAyIDAgMCAwLS41MDYuODU0bC0uODM3IDIuODdhLjUuNSAwIDAgMCAuNjIuNjJsMi44Ny0uODM3YTIgMiAwIDAgMCAuODU0LS41MDZ6In1dLFsiY2lyY2xlIix7Y3g6IjEwIixjeToiOCIscjoiNSJ9XV19KTt2YXIgZDgsR3N0PWwoKCk9PntkOD1bWyJwYXRoIix7ZDoiTTIgMjFhOCA4IDAgMCAxIDEzLjI5Mi02In1dLFsiY2lyY2xlIix7Y3g6IjEwIixjeToiOCIscjoiNSJ9XSxbInBhdGgiLHtkOiJNMTkgMTZ2NiJ9XSxbInBhdGgiLHtkOiJNMjIgMTloLTYifV1dfSk7dmFyIEFHLFlzdD1sKCgpPT57QUc9W1siY2lyY2xlIix7Y3g6IjEwIixjeToiOCIscjoiNSJ9XSxbInBhdGgiLHtkOiJNMiAyMWE4IDggMCAwIDEgMTAuNDM0LTcuNjIifV0sWyJjaXJjbGUiLHtjeDoiMTgiLGN5OiIxOCIscjoiMyJ9XSxbInBhdGgiLHtkOiJtMjIgMjItMS45LTEuOSJ9XV19KTt2YXIgdTgsWnN0PWwoKCk9Pnt1OD1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiI4IixyOiI1In1dLFsicGF0aCIse2Q6Ik0yMCAyMWE4IDggMCAwIDAtMTYgMCJ9XV19KTt2YXIgZjgsWHN0PWwoKCk9PntmOD1bWyJwYXRoIix7ZDoiTTIgMjFhOCA4IDAgMCAxIDExLjg3My03In1dLFsiY2lyY2xlIix7Y3g6IjEwIixjeToiOCIscjoiNSJ9XSxbInBhdGgiLHtkOiJtMTcgMTcgNSA1In1dLFsicGF0aCIse2Q6Im0yMiAxNy01IDUifV1dfSk7dmFyIEVHLFFzdD1sKCgpPT57RUc9W1siY2lyY2xlIix7Y3g6IjEwIixjeToiNyIscjoiNCJ9XSxbInBhdGgiLHtkOiJNMTAuMyAxNUg3YTQgNCAwIDAgMC00IDR2MiJ9XSxbImNpcmNsZSIse2N4OiIxNyIsY3k6IjE3IixyOiIzIn1dLFsicGF0aCIse2Q6Im0yMSAyMS0xLjktMS45In1dXX0pO3ZhciAkRyxLc3Q9bCgoKT0+eyRHPVtbInBhdGgiLHtkOiJNMTYuMDUxIDEyLjYxNmExIDEgMCAwIDEgMS45MDkuMDI0bC43MzcgMS40NTJhMSAxIDAgMCAwIC43MzcuNTM1bDEuNjM0LjI1NmExIDEgMCAwIDEgLjU4OCAxLjgwNmwtMS4xNzIgMS4xNjhhMSAxIDAgMCAwLS4yODIuODY2bC4yNTkgMS42MTNhMSAxIDAgMCAxLTEuNTQxIDEuMTM0bC0xLjQ2NS0uNzVhMSAxIDAgMCAwLS45MTIgMGwtMS40NjUuNzVhMSAxIDAgMCAxLTEuNTM5LTEuMTMzbC4yNTgtMS42MTNhMSAxIDAgMCAwLS4yODItLjg2NmwtMS4xNTYtMS4xNTNhMSAxIDAgMCAxIC41NzItMS44MjJsMS42MzMtLjI1NmExIDEgMCAwIDAgLjczNy0uNTM1eiJ9XSxbInBhdGgiLHtkOiJNOCAxNUg3YTQgNCAwIDAgMC00IDR2MiJ9XSxbImNpcmNsZSIse2N4OiIxMCIsY3k6IjciLHI6IjQifV1dfSk7dmFyIFBHLEpzdD1sKCgpPT57UEc9W1sicGF0aCIse2Q6Ik0xNiAyMXYtMmE0IDQgMCAwIDAtNC00SDZhNCA0IDAgMCAwLTQgNHYyIn1dLFsiY2lyY2xlIix7Y3g6IjkiLGN5OiI3IixyOiI0In1dLFsibGluZSIse3gxOiIxNyIseDI6IjIyIix5MToiOCIseTI6IjEzIn1dLFsibGluZSIse3gxOiIyMiIseDI6IjE3Iix5MToiOCIseTI6IjEzIn1dXX0pO3ZhciBJRyxlMnQ9bCgoKT0+e0lHPVtbInBhdGgiLHtkOiJNMTkgMjF2LTJhNCA0IDAgMCAwLTQtNEg5YTQgNCAwIDAgMC00IDR2MiJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjciLHI6IjQifV1dfSk7dmFyIHA4LHQydD1sKCgpPT57cDg9W1sicGF0aCIse2Q6Ik0xOCAyMWE4IDggMCAwIDAtMTYgMCJ9XSxbImNpcmNsZSIse2N4OiIxMCIsY3k6IjgiLHI6IjUifV0sWyJwYXRoIix7ZDoiTTIyIDIwYzAtMy4zNy0yLTYuNS00LThhNSA1IDAgMCAwLS40NS04LjMifV1dfSk7dmFyIGg4LHIydD1sKCgpPT57aDg9W1sicGF0aCIse2Q6Im0xNiAyLTIuMyAyLjNhMyAzIDAgMCAwIDAgNC4ybDEuOCAxLjhhMyAzIDAgMCAwIDQuMiAwTDIyIDgifV0sWyJwYXRoIix7ZDoiTTE1IDE1IDMuMyAzLjNhNC4yIDQuMiAwIDAgMCAwIDZsNy4zIDcuM2MuNy43IDIgLjcgMi44IDBMMTUgMTVabTAgMCA3IDcifV0sWyJwYXRoIix7ZDoibTIuMSAyMS44IDYuNC02LjMifV0sWyJwYXRoIix7ZDoibTE5IDUtNyA3In1dXX0pO3ZhciBORyxhMnQ9bCgoKT0+e05HPVtbInBhdGgiLHtkOiJNMTYgMjF2LTJhNCA0IDAgMCAwLTQtNEg2YTQgNCAwIDAgMC00IDR2MiJ9XSxbInBhdGgiLHtkOiJNMTYgMy4xMjhhNCA0IDAgMCAxIDAgNy43NDQifV0sWyJwYXRoIix7ZDoiTTIyIDIxdi0yYTQgNCAwIDAgMC0zLTMuODcifV0sWyJjaXJjbGUiLHtjeDoiOSIsY3k6IjciLHI6IjQifV1dfSk7dmFyIEZHLGkydD1sKCgpPT57Rkc9W1sicGF0aCIse2Q6Ik0xMiAydjIwIn1dLFsicGF0aCIse2Q6Ik0yIDVoMjAifV0sWyJwYXRoIix7ZDoiTTMgM3YyIn1dLFsicGF0aCIse2Q6Ik03IDN2MiJ9XSxbInBhdGgiLHtkOiJNMTcgM3YyIn1dLFsicGF0aCIse2Q6Ik0yMSAzdjIifV0sWyJwYXRoIix7ZDoibTE5IDUtNyA3LTctNyJ9XV19KTt2YXIgbTgsbzJ0PWwoKCk9PnttOD1bWyJwYXRoIix7ZDoiTTMgMnY3YzAgMS4xLjkgMiAyIDJoNGEyIDIgMCAwIDAgMi0yVjIifV0sWyJwYXRoIix7ZDoiTTcgMnYyMCJ9XSxbInBhdGgiLHtkOiJNMjEgMTVWMmE1IDUgMCAwIDAtNSA1djZjMCAxLjEuOSAyIDIgMmgzWm0wIDB2NyJ9XV19KTt2YXIgT0csbjJ0PWwoKCk9PntPRz1bWyJwYXRoIix7ZDoiTTEzIDZ2NWExIDEgMCAwIDAgMSAxaDYuMTAyYTEgMSAwIDAgMSAuNzEyLjI5OGwuODk4LjkxYTEgMSAwIDAgMSAuMjg4LjcwMlYxN2ExIDEgMCAwIDEtMSAxaC0zIn1dLFsicGF0aCIse2Q6Ik01IDE4SDNhMSAxIDAgMCAxLTEtMVY4YTIgMiAwIDAgMSAyLTJoMTJjMS4xIDAgMi4xLjggMi40IDEuOGwxLjE3NiA0LjIifV0sWyJwYXRoIix7ZDoiTTkgMThoNSJ9XSxbImNpcmNsZSIse2N4OiIxNiIsY3k6IjE4IixyOiIyIn1dLFsiY2lyY2xlIix7Y3g6IjciLGN5OiIxOCIscjoiMiJ9XV19KTt2YXIgUkcsczJ0PWwoKCk9PntSRz1bWyJwYXRoIix7ZDoiTTggMjFzLTQtMy00LTkgNC05IDQtOSJ9XSxbInBhdGgiLHtkOiJNMTYgM3M0IDMgNCA5LTQgOS00IDkifV0sWyJsaW5lIix7eDE6IjE1Iix4MjoiOSIseTE6IjkiLHkyOiIxNSJ9XSxbImxpbmUiLHt4MToiOSIseDI6IjE1Iix5MToiOSIseTI6IjE1In1dXX0pO3ZhciBCRyxsMnQ9bCgoKT0+e0JHPVtbInBhdGgiLHtkOiJNMTkuNSA3YTI0IDI0IDAgMCAxIDAgMTAifV0sWyJwYXRoIix7ZDoiTTQuNSA3YTI0IDI0IDAgMCAwIDAgMTAifV0sWyJwYXRoIix7ZDoiTTcgMTkuNWEyNCAyNCAwIDAgMCAxMCAwIn1dLFsicGF0aCIse2Q6Ik03IDQuNWEyNCAyNCAwIDAgMSAxMCAwIn1dLFsicmVjdCIse3g6IjE3Iix5OiIxNyIsd2lkdGg6IjUiLGhlaWdodDoiNSIscng6IjEifV0sWyJyZWN0Iix7eDoiMTciLHk6IjIiLHdpZHRoOiI1IixoZWlnaHQ6IjUiLHJ4OiIxIn1dLFsicmVjdCIse3g6IjIiLHk6IjE3Iix3aWR0aDoiNSIsaGVpZ2h0OiI1IixyeDoiMSJ9XSxbInJlY3QiLHt4OiIyIix5OiIyIix3aWR0aDoiNSIsaGVpZ2h0OiI1IixyeDoiMSJ9XV19KTt2YXIgSEcsYzJ0PWwoKCk9PntIRz1bWyJyZWN0Iix7d2lkdGg6IjE4IixoZWlnaHQ6IjE4Iix4OiIzIix5OiIzIixyeDoiMiJ9XSxbImNpcmNsZSIse2N4OiI3LjUiLGN5OiI3LjUiLHI6Ii41IixmaWxsOiJjdXJyZW50Q29sb3IifV0sWyJwYXRoIix7ZDoibTcuOSA3LjkgMi43IDIuNyJ9XSxbImNpcmNsZSIse2N4OiIxNi41IixjeToiNy41IixyOiIuNSIsZmlsbDoiY3VycmVudENvbG9yIn1dLFsicGF0aCIse2Q6Im0xMy40IDEwLjYgMi43LTIuNyJ9XSxbImNpcmNsZSIse2N4OiI3LjUiLGN5OiIxNi41IixyOiIuNSIsZmlsbDoiY3VycmVudENvbG9yIn1dLFsicGF0aCIse2Q6Im03LjkgMTYuMSAyLjctMi43In1dLFsiY2lyY2xlIix7Y3g6IjE2LjUiLGN5OiIxNi41IixyOiIuNSIsZmlsbDoiY3VycmVudENvbG9yIn1dLFsicGF0aCIse2Q6Im0xMy40IDEzLjQgMi43IDIuNyJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIyIn1dXX0pO3ZhciBxRyxkMnQ9bCgoKT0+e3FHPVtbInBhdGgiLHtkOiJNMTYgOHE2IDAgNi02LTYgMC02IDYifV0sWyJwYXRoIix7ZDoiTTE3LjQxIDMuNTlhMTAgMTAgMCAxIDAgMyAzIn1dLFsicGF0aCIse2Q6Ik0yIDJhMjYuNiAyNi42IDAgMCAxIDEwIDIwYy45LTYuODIgMS41LTkuNSA0LTE0In1dXX0pO3ZhciBqRyx1MnQ9bCgoKT0+e2pHPVtbInBhdGgiLHtkOiJNMTggMTFjLTEuNSAwLTIuNS41LTMgMiJ9XSxbInBhdGgiLHtkOiJNNCA2YTIgMiAwIDAgMC0yIDJ2NGE1IDUgMCAwIDAgNSA1IDggOCAwIDAgMSA1IDIgOCA4IDAgMCAxIDUtMiA1IDUgMCAwIDAgNS01VjhhMiAyIDAgMCAwLTItMmgtM2E4IDggMCAwIDAtNSAyIDggOCAwIDAgMC01LTJ6In1dLFsicGF0aCIse2Q6Ik02IDExYzEuNSAwIDIuNS41IDMgMiJ9XV19KTt2YXIgVkcsZjJ0PWwoKCk9PntWRz1bWyJwYXRoIix7ZDoiTTEwIDIwaDQifV0sWyJwYXRoIix7ZDoiTTEyIDE2djYifV0sWyJwYXRoIix7ZDoiTTE3IDJoNHY0In1dLFsicGF0aCIse2Q6Im0yMSAyLTUuNDYgNS40NiJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjExIixyOiI1In1dXX0pO3ZhciBVRyxwMnQ9bCgoKT0+e1VHPVtbInBhdGgiLHtkOiJNMTIgMTV2NyJ9XSxbInBhdGgiLHtkOiJNOSAxOWg2In1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiOSIscjoiNiJ9XV19KTt2YXIgV0csaDJ0PWwoKCk9PntXRz1bWyJwYXRoIix7ZDoibTIgOCAyIDItMiAyIDIgMi0yIDIifV0sWyJwYXRoIix7ZDoibTIyIDgtMiAyIDIgMi0yIDIgMiAyIn1dLFsicGF0aCIse2Q6Ik04IDh2MTBjMCAuNTUuNDUgMSAxIDFoNmMuNTUgMCAxLS40NSAxLTF2LTIifV0sWyJwYXRoIix7ZDoiTTE2IDEwLjM0VjZjMC0uNTUtLjQ1LTEtMS0xaC00LjM0In1dLFsibGluZSIse3gxOiIyIix4MjoiMjIiLHkxOiIyIix5MjoiMjIifV1dfSk7dmFyIEdHLG0ydD1sKCgpPT57R0c9W1sicGF0aCIse2Q6Im0yIDggMiAyLTIgMiAyIDItMiAyIn1dLFsicGF0aCIse2Q6Im0yMiA4LTIgMiAyIDItMiAyIDIgMiJ9XSxbInJlY3QiLHt3aWR0aDoiOCIsaGVpZ2h0OiIxNCIseDoiOCIseToiNSIscng6IjEifV1dfSk7dmFyIFlHLGcydD1sKCgpPT57WUc9W1sicGF0aCIse2Q6Ik0xMC42NiA2SDE0YTIgMiAwIDAgMSAyIDJ2Mi41bDUuMjQ4LTMuMDYyQS41LjUgMCAwIDEgMjIgNy44N3Y4LjE5NiJ9XSxbInBhdGgiLHtkOiJNMTYgMTZhMiAyIDAgMCAxLTIgMkg0YTIgMiAwIDAgMS0yLTJWOGEyIDIgMCAwIDEgMi0yaDIifV0sWyJwYXRoIix7ZDoibTIgMiAyMCAyMCJ9XV19KTt2YXIgWkcseDJ0PWwoKCk9PntaRz1bWyJwYXRoIix7ZDoibTE2IDEzIDUuMjIzIDMuNDgyYS41LjUgMCAwIDAgLjc3Ny0uNDE2VjcuODdhLjUuNSAwIDAgMC0uNzUyLS40MzJMMTYgMTAuNSJ9XSxbInJlY3QiLHt4OiIyIix5OiI2Iix3aWR0aDoiMTQiLGhlaWdodDoiMTIiLHJ4OiIyIn1dXX0pO3ZhciBYRyxiMnQ9bCgoKT0+e1hHPVtbInJlY3QiLHt3aWR0aDoiMjAiLGhlaWdodDoiMTYiLHg6IjIiLHk6IjQiLHJ4OiIyIn1dLFsicGF0aCIse2Q6Ik0yIDhoMjAifV0sWyJjaXJjbGUiLHtjeDoiOCIsY3k6IjE0IixyOiIyIn1dLFsicGF0aCIse2Q6Ik04IDEyaDgifV0sWyJjaXJjbGUiLHtjeDoiMTYiLGN5OiIxNCIscjoiMiJ9XV19KTt2YXIgUUcsdjJ0PWwoKCk9PntRRz1bWyJwYXRoIix7ZDoiTTIxIDE3djJhMiAyIDAgMCAxLTIgMkg1YTIgMiAwIDAgMS0yLTJ2LTIifV0sWyJwYXRoIix7ZDoiTTIxIDdWNWEyIDIgMCAwIDAtMi0ySDVhMiAyIDAgMCAwLTIgMnYyIn1dLFsiY2lyY2xlIix7Y3g6IjEyIixjeToiMTIiLHI6IjEifV0sWyJwYXRoIix7ZDoiTTE4Ljk0NCAxMi4zM2ExIDEgMCAwIDAgMC0uNjYgNy41IDcuNSAwIDAgMC0xMy44ODggMCAxIDEgMCAwIDAgMCAuNjYgNy41IDcuNSAwIDAgMCAxMy44ODggMCJ9XV19KTt2YXIgS0cseTJ0PWwoKCk9PntLRz1bWyJjaXJjbGUiLHtjeDoiNiIsY3k6IjEyIixyOiI0In1dLFsiY2lyY2xlIix7Y3g6IjE4IixjeToiMTIiLHI6IjQifV0sWyJsaW5lIix7eDE6IjYiLHgyOiIxOCIseTE6IjE2Iix5MjoiMTYifV1dfSk7dmFyIEpHLHcydD1sKCgpPT57Skc9W1sicGF0aCIse2Q6Ik0xMS4xIDcuMWExNi41NSAxNi41NSAwIDAgMSAxMC45IDQifV0sWyJwYXRoIix7ZDoiTTEyIDEyYTEyLjYgMTIuNiAwIDAgMS04LjcgNSJ9XSxbInBhdGgiLHtkOiJNMTYuOCAxMy42YTE2LjU1IDE2LjU1IDAgMCAxLTkgNy41In1dLFsicGF0aCIse2Q6Ik0yMC43IDE3YTEyLjggMTIuOCAwIDAgMC04LjctNSAxMy4zIDEzLjMgMCAwIDEgMC0xMCJ9XSxbInBhdGgiLHtkOiJNNi4zIDMuOGExNi41NSAxNi41NSAwIDAgMCAxLjkgMTEuNSJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjEyIixyOiIxMCJ9XV19KTt2YXIgZVksTTJ0PWwoKCk9PntlWT1bWyJwYXRoIix7ZDoiTTExIDQuNzAyYS43MDUuNzA1IDAgMCAwLTEuMjAzLS40OThMNi40MTMgNy41ODdBMS40IDEuNCAwIDAgMSA1LjQxNiA4SDNhMSAxIDAgMCAwLTEgMXY2YTEgMSAwIDAgMCAxIDFoMi40MTZhMS40IDEuNCAwIDAgMSAuOTk3LjQxM2wzLjM4MyAzLjM4NEEuNzA1LjcwNSAwIDAgMCAxMSAxOS4yOTh6In1dLFsicGF0aCIse2Q6Ik0xNiA5YTUgNSAwIDAgMSAwIDYifV1dfSk7dmFyIHRZLGsydD1sKCgpPT57dFk9W1sicGF0aCIse2Q6Ik0xMSA0LjcwMmEuNzA1LjcwNSAwIDAgMC0xLjIwMy0uNDk4TDYuNDEzIDcuNTg3QTEuNCAxLjQgMCAwIDEgNS40MTYgOEgzYTEgMSAwIDAgMC0xIDF2NmExIDEgMCAwIDAgMSAxaDIuNDE2YTEuNCAxLjQgMCAwIDEgLjk5Ny40MTNsMy4zODMgMy4zODRBLjcwNS43MDUgMCAwIDAgMTEgMTkuMjk4eiJ9XSxbInBhdGgiLHtkOiJNMTYgOWE1IDUgMCAwIDEgMCA2In1dLFsicGF0aCIse2Q6Ik0xOS4zNjQgMTguMzY0YTkgOSAwIDAgMCAwLTEyLjcyOCJ9XV19KTt2YXIgclksUzJ0PWwoKCk9PntyWT1bWyJwYXRoIix7ZDoiTTExIDQuNzAyYS43MDUuNzA1IDAgMCAwLTEuMjAzLS40OThMNi40MTMgNy41ODdBMS40IDEuNCAwIDAgMSA1LjQxNiA4SDNhMSAxIDAgMCAwLTEgMXY2YTEgMSAwIDAgMCAxIDFoMi40MTZhMS40IDEuNCAwIDAgMSAuOTk3LjQxM2wzLjM4MyAzLjM4NEEuNzA1LjcwNSAwIDAgMCAxMSAxOS4yOTh6In1dLFsibGluZSIse3gxOiIyMiIseDI6IjE2Iix5MToiOSIseTI6IjE1In1dLFsibGluZSIse3gxOiIxNiIseDI6IjIyIix5MToiOSIseTI6IjE1In1dXX0pO3ZhciBhWSx6MnQ9bCgoKT0+e2FZPVtbInBhdGgiLHtkOiJNMTYgOWE1IDUgMCAwIDEgLjk1IDIuMjkzIn1dLFsicGF0aCIse2Q6Ik0xOS4zNjQgNS42MzZhOSA5IDAgMCAxIDEuODg5IDkuOTYifV0sWyJwYXRoIix7ZDoibTIgMiAyMCAyMCJ9XSxbInBhdGgiLHtkOiJtNyA3LS41ODcuNTg3QTEuNCAxLjQgMCAwIDEgNS40MTYgOEgzYTEgMSAwIDAgMC0xIDF2NmExIDEgMCAwIDAgMSAxaDIuNDE2YTEuNCAxLjQgMCAwIDEgLjk5Ny40MTNsMy4zODMgMy4zODRBLjcwNS43MDUgMCAwIDAgMTEgMTkuMjk4VjExIn1dLFsicGF0aCIse2Q6Ik05LjgyOCA0LjE3MkEuNjg2LjY4NiAwIDAgMSAxMSA0LjY1N3YuNjg2In1dXX0pO3ZhciBpWSxDMnQ9bCgoKT0+e2lZPVtbInBhdGgiLHtkOiJNMTEgNC43MDJhLjcwNS43MDUgMCAwIDAtMS4yMDMtLjQ5OEw2LjQxMyA3LjU4N0ExLjQgMS40IDAgMCAxIDUuNDE2IDhIM2ExIDEgMCAwIDAtMSAxdjZhMSAxIDAgMCAwIDEgMWgyLjQxNmExLjQgMS40IDAgMCAxIC45OTcuNDEzbDMuMzgzIDMuMzg0QS43MDUuNzA1IDAgMCAwIDExIDE5LjI5OHoifV1dfSk7dmFyIG9ZLF8ydD1sKCgpPT57b1k9W1sicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIxOCIseDoiMyIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoiTTMgOWEyIDIgMCAwIDEgMi0yaDE0YTIgMiAwIDAgMSAyIDIifV0sWyJwYXRoIix7ZDoiTTMgMTFoM2MuOCAwIDEuNi4zIDIuMS45bDEuMS45YzEuNiAxLjYgNC4xIDEuNiA1LjcgMGwxLjEtLjljLjUtLjUgMS4zLS45IDIuMS0uOUgyMSJ9XV19KTt2YXIgblksVDJ0PWwoKCk9PntuWT1bWyJwYXRoIix7ZDoibTkgMTIgMiAyIDQtNCJ9XSxbInBhdGgiLHtkOiJNNSA3YzAtMS4xLjktMiAyLTJoMTBhMiAyIDAgMCAxIDIgMnYxMkg1VjdaIn1dLFsicGF0aCIse2Q6Ik0yMiAxOUgyIn1dXX0pO3ZhciBnOCxMMnQ9bCgoKT0+e2c4PVtbInBhdGgiLHtkOiJNMTcgMTRoLjAxIn1dLFsicGF0aCIse2Q6Ik03IDdoMTJhMiAyIDAgMCAxIDIgMnYxMGEyIDIgMCAwIDEtMiAySDVhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJoMTQifV1dfSk7dmFyIHNZLEQydD1sKCgpPT57c1k9W1sicGF0aCIse2Q6Ik0xOSA3VjRhMSAxIDAgMCAwLTEtMUg1YTIgMiAwIDAgMCAwIDRoMTVhMSAxIDAgMCAxIDEgMXY0aC0zYTIgMiAwIDAgMCAwIDRoM2ExIDEgMCAwIDAgMS0xdi0yYTEgMSAwIDAgMC0xLTEifV0sWyJwYXRoIix7ZDoiTTMgNXYxNGEyIDIgMCAwIDAgMiAyaDE1YTEgMSAwIDAgMCAxLTF2LTQifV1dfSk7dmFyIGxZLEEydD1sKCgpPT57bFk9W1sicGF0aCIse2Q6Ik0xMiAxN3Y0In1dLFsicGF0aCIse2Q6Ik04IDIxaDgifV0sWyJwYXRoIix7ZDoibTkgMTcgNi4xLTYuMWEyIDIgMCAwIDEgMi44MS4wMUwyMiAxNSJ9XSxbImNpcmNsZSIse2N4OiI4IixjeToiOSIscjoiMiJ9XSxbInJlY3QiLHt4OiIyIix5OiIzIix3aWR0aDoiMjAiLGhlaWdodDoiMTQiLHJ4OiIyIn1dXX0pO3ZhciB4OCxFMnQ9bCgoKT0+e3g4PVtbInBhdGgiLHtkOiJtMjEuNjQgMy42NC0xLjI4LTEuMjhhMS4yMSAxLjIxIDAgMCAwLTEuNzIgMEwyLjM2IDE4LjY0YTEuMjEgMS4yMSAwIDAgMCAwIDEuNzJsMS4yOCAxLjI4YTEuMiAxLjIgMCAwIDAgMS43MiAwTDIxLjY0IDUuMzZhMS4yIDEuMiAwIDAgMCAwLTEuNzIifV0sWyJwYXRoIix7ZDoibTE0IDcgMyAzIn1dLFsicGF0aCIse2Q6Ik01IDZ2NCJ9XSxbInBhdGgiLHtkOiJNMTkgMTR2NCJ9XSxbInBhdGgiLHtkOiJNMTAgMnYyIn1dLFsicGF0aCIse2Q6Ik03IDhIMyJ9XSxbInBhdGgiLHtkOiJNMjEgMTZoLTQifV0sWyJwYXRoIix7ZDoiTTExIDNIOSJ9XV19KTt2YXIgY1ksJDJ0PWwoKCk9PntjWT1bWyJwYXRoIix7ZDoiTTE1IDRWMiJ9XSxbInBhdGgiLHtkOiJNMTUgMTZ2LTIifV0sWyJwYXRoIix7ZDoiTTggOWgyIn1dLFsicGF0aCIse2Q6Ik0yMCA5aDIifV0sWyJwYXRoIix7ZDoiTTE3LjggMTEuOCAxOSAxMyJ9XSxbInBhdGgiLHtkOiJNMTUgOWguMDEifV0sWyJwYXRoIix7ZDoiTTE3LjggNi4yIDE5IDUifV0sWyJwYXRoIix7ZDoibTMgMjEgOS05In1dLFsicGF0aCIse2Q6Ik0xMi4yIDYuMiAxMSA1In1dXX0pO3ZhciBkWSxQMnQ9bCgoKT0+e2RZPVtbInBhdGgiLHtkOiJNMTggMjFWMTBhMSAxIDAgMCAwLTEtMUg3YTEgMSAwIDAgMC0xIDF2MTEifV0sWyJwYXRoIix7ZDoiTTIyIDE5YTIgMiAwIDAgMS0yIDJINGEyIDIgMCAwIDEtMi0yVjhhMiAyIDAgMCAxIDEuMTMyLTEuODAzbDcuOTUtMy45NzRhMiAyIDAgMCAxIDEuODM3IDBsNy45NDggMy45NzRBMiAyIDAgMCAxIDIyIDh6In1dLFsicGF0aCIse2Q6Ik02IDEzaDEyIn1dLFsicGF0aCIse2Q6Ik02IDE3aDEyIn1dXX0pO3ZhciB1WSxJMnQ9bCgoKT0+e3VZPVtbInBhdGgiLHtkOiJNMyA2aDMifV0sWyJwYXRoIix7ZDoiTTE3IDZoLjAxIn1dLFsicmVjdCIse3dpZHRoOiIxOCIsaGVpZ2h0OiIyMCIseDoiMyIseToiMiIscng6IjIifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMyIscjoiNSJ9XSxbInBhdGgiLHtkOiJNMTIgMThhMi41IDIuNSAwIDAgMCAwLTUgMi41IDIuNSAwIDAgMSAwLTUifV1dfSk7dmFyIGZZLE4ydD1sKCgpPT57Zlk9W1sicGF0aCIse2Q6Ik0xMiAxMHYyLjJsMS42IDEifV0sWyJwYXRoIix7ZDoibTE2LjEzIDcuNjYtLjgxLTQuMDVhMiAyIDAgMCAwLTItMS42MWgtMi42OGEyIDIgMCAwIDAtMiAxLjYxbC0uNzggNC4wNSJ9XSxbInBhdGgiLHtkOiJtNy44OCAxNi4zNi44IDRhMiAyIDAgMCAwIDIgMS42MWgyLjcyYTIgMiAwIDAgMCAyLTEuNjFsLjgxLTQuMDUifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMiIscjoiNiJ9XV19KTt2YXIgcFksRjJ0PWwoKCk9PntwWT1bWyJwYXRoIix7ZDoiTTEyIDEwTDEyIDIifV0sWyJwYXRoIix7ZDoiTTE2IDZMMTIgMTBMOCA2In1dLFsicGF0aCIse2Q6Ik0yIDE1QzIuNiAxNS41IDMuMiAxNiA0LjUgMTZDNyAxNiA3IDE0IDkuNSAxNEMxMi4xIDE0IDExLjkgMTYgMTQuNSAxNkMxNyAxNiAxNyAxNCAxOS41IDE0QzIwLjggMTQgMjEuNCAxNC41IDIyIDE1In1dLFsicGF0aCIse2Q6Ik0yIDIxQzIuNiAyMS41IDMuMiAyMiA0LjUgMjJDNyAyMiA3IDIwIDkuNSAyMEMxMi4xIDIwIDExLjkgMjIgMTQuNSAyMkMxNyAyMiAxNyAyMCAxOS41IDIwQzIwLjggMjAgMjEuNCAyMC41IDIyIDIxIn1dXX0pO3ZhciBoWSxPMnQ9bCgoKT0+e2hZPVtbInBhdGgiLHtkOiJNMTkgNWEyIDIgMCAwIDAtMiAydjExIn1dLFsicGF0aCIse2Q6Ik0yIDE4Yy42LjUgMS4yIDEgMi41IDEgMi41IDAgMi41LTIgNS0yIDIuNiAwIDIuNCAyIDUgMiAyLjUgMCAyLjUtMiA1LTIgMS4zIDAgMS45LjUgMi41IDEifV0sWyJwYXRoIix7ZDoiTTcgMTNoMTAifV0sWyJwYXRoIix7ZDoiTTcgOWgxMCJ9XSxbInBhdGgiLHtkOiJNOSA1YTIgMiAwIDAgMC0yIDJ2MTEifV1dfSk7dmFyIG1ZLFIydD1sKCgpPT57bVk9W1sicGF0aCIse2Q6Ik0xMiAydjgifV0sWyJwYXRoIix7ZDoiTTIgMTVjLjYuNSAxLjIgMSAyLjUgMSAyLjUgMCAyLjUtMiA1LTIgMi42IDAgMi40IDIgNSAyIDIuNSAwIDIuNS0yIDUtMiAxLjMgMCAxLjkuNSAyLjUgMSJ9XSxbInBhdGgiLHtkOiJNMiAyMWMuNi41IDEuMiAxIDIuNSAxIDIuNSAwIDIuNS0yIDUtMiAyLjYgMCAyLjQgMiA1IDIgMi41IDAgMi41LTIgNS0yIDEuMyAwIDEuOS41IDIuNSAxIn1dLFsicGF0aCIse2Q6Im04IDYgNC00IDQgNCJ9XV19KTt2YXIgZ1ksQjJ0PWwoKCk9PntnWT1bWyJwYXRoIix7ZDoiTTIgNmMuNi41IDEuMiAxIDIuNSAxQzcgNyA3IDUgOS41IDVjMi42IDAgMi40IDIgNSAyIDIuNSAwIDIuNS0yIDUtMiAxLjMgMCAxLjkuNSAyLjUgMSJ9XSxbInBhdGgiLHtkOiJNMiAxMmMuNi41IDEuMiAxIDIuNSAxIDIuNSAwIDIuNS0yIDUtMiAyLjYgMCAyLjQgMiA1IDIgMi41IDAgMi41LTIgNS0yIDEuMyAwIDEuOS41IDIuNSAxIn1dLFsicGF0aCIse2Q6Ik0yIDE4Yy42LjUgMS4yIDEgMi41IDEgMi41IDAgMi41LTIgNS0yIDIuNiAwIDIuNCAyIDUgMiAyLjUgMCAyLjUtMiA1LTIgMS4zIDAgMS45LjUgMi41IDEifV1dfSk7dmFyIHhZLEgydD1sKCgpPT57eFk9W1sicGF0aCIse2Q6Im0xMC41ODYgNS40MTQtNS4xNzIgNS4xNzIifV0sWyJwYXRoIix7ZDoibTE4LjU4NiAxMy40MTQtNS4xNzIgNS4xNzIifV0sWyJwYXRoIix7ZDoiTTYgMTJoMTIifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIyMCIscjoiMiJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjQiLHI6IjIifV0sWyJjaXJjbGUiLHtjeDoiMjAiLGN5OiIxMiIscjoiMiJ9XSxbImNpcmNsZSIse2N4OiI0IixjeToiMTIiLHI6IjIifV1dfSk7dmFyIGJZLHEydD1sKCgpPT57Ylk9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiMTAiLHI6IjgifV0sWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxMCIscjoiMyJ9XSxbInBhdGgiLHtkOiJNNyAyMmgxMCJ9XSxbInBhdGgiLHtkOiJNMTIgMjJ2LTQifV1dfSk7dmFyIHZZLGoydD1sKCgpPT57dlk9W1sicGF0aCIse2Q6Ik0xNyAxN2gtNWMtMS4wOS0uMDItMS45NC45Mi0yLjUgMS45QTMgMyAwIDEgMSAyLjU3IDE1In1dLFsicGF0aCIse2Q6Ik05IDMuNGE0IDQgMCAwIDEgNi41Mi42NiJ9XSxbInBhdGgiLHtkOiJtNiAxNyAzLjEtNS44YTIuNSAyLjUgMCAwIDAgLjA1Ny0yLjA1In1dLFsicGF0aCIse2Q6Ik0yMC4zIDIwLjNhNCA0IDAgMCAxLTIuMy43In1dLFsicGF0aCIse2Q6Ik0xOC42IDEzYTQgNCAwIDAgMSAzLjM1NyAzLjQxNCJ9XSxbInBhdGgiLHtkOiJtMTIgNiAuNiAxIn1dLFsicGF0aCIse2Q6Im0yIDIgMjAgMjAifV1dfSk7dmFyIHlZLFYydD1sKCgpPT57eVk9W1sicGF0aCIse2Q6Ik0xOCAxNi45OGgtNS45OWMtMS4xIDAtMS45NS45NC0yLjQ4IDEuOUE0IDQgMCAwIDEgMiAxN2MuMDEtLjcuMi0xLjQuNTctMiJ9XSxbInBhdGgiLHtkOiJtNiAxNyAzLjEzLTUuNzhjLjUzLS45Ny4xLTIuMTgtLjUtMy4xYTQgNCAwIDEgMSA2Ljg5LTQuMDYifV0sWyJwYXRoIix7ZDoibTEyIDYgMy4xMyA1LjczQzE1LjY2IDEyLjcgMTYuOSAxMyAxOCAxM2E0IDQgMCAwIDEgMCA4In1dXX0pO3ZhciB3WSxVMnQ9bCgoKT0+e3dZPVtbInBhdGgiLHtkOiJNNi41IDhhMiAyIDAgMCAwLTEuOTA2IDEuNDZMMi4xIDE4LjVBMiAyIDAgMCAwIDQgMjFoMTZhMiAyIDAgMCAwIDEuOTI1LTIuNTRMMTkuNCA5LjVBMiAyIDAgMCAwIDE3LjQ4IDh6In1dLFsicGF0aCIse2Q6Ik03Ljk5OSAxNWEyLjUgMi41IDAgMCAxIDQgMCAyLjUgMi41IDAgMCAwIDQgMCJ9XSxbImNpcmNsZSIse2N4OiIxMiIsY3k6IjUiLHI6IjMifV1dfSk7dmFyIE1ZLFcydD1sKCgpPT57TVk9W1sicGF0aCIse2Q6Im0yIDIyIDEwLTEwIn1dLFsicGF0aCIse2Q6Im0xNiA4LTEuMTcgMS4xNyJ9XSxbInBhdGgiLHtkOiJNMy40NyAxMi41MyA1IDExbDEuNTMgMS41M2EzLjUgMy41IDAgMCAxIDAgNC45NEw1IDE5bC0xLjUzLTEuNTNhMy41IDMuNSAwIDAgMSAwLTQuOTRaIn1dLFsicGF0aCIse2Q6Im04IDgtLjUzLjUzYTMuNSAzLjUgMCAwIDAgMCA0Ljk0TDkgMTVsMS41My0xLjUzYy41NS0uNTUuODgtMS4yNS45OC0xLjk3In1dLFsicGF0aCIse2Q6Ik0xMC45MSA1LjI2Yy4xNS0uMjYuMzQtLjUxLjU2LS43M0wxMyAzbDEuNTMgMS41M2EzLjUgMy41IDAgMCAxIC4yOCA0LjYyIn1dLFsicGF0aCIse2Q6Ik0yMCAyaDJ2MmE0IDQgMCAwIDEtNCA0aC0yVjZhNCA0IDAgMCAxIDQtNFoifV0sWyJwYXRoIix7ZDoiTTExLjQ3IDE3LjQ3IDEzIDE5bC0xLjUzIDEuNTNhMy41IDMuNSAwIDAgMS00Ljk0IDBMNSAxOWwxLjUzLTEuNTNhMy41IDMuNSAwIDAgMSA0Ljk0IDBaIn1dLFsicGF0aCIse2Q6Im0xNiAxNi0uNTMuNTNhMy41IDMuNSAwIDAgMS00Ljk0IDBMOSAxNWwxLjUzLTEuNTNhMy40OSAzLjQ5IDAgMCAxIDEuOTctLjk4In1dLFsicGF0aCIse2Q6Ik0xOC43NCAxMy4wOWMuMjYtLjE1LjUxLS4zNC43My0uNTZMMjEgMTFsLTEuNTMtMS41M2EzLjUgMy41IDAgMCAwLTQuNjItLjI4In1dLFsibGluZSIse3gxOiIyIix4MjoiMjIiLHkxOiIyIix5MjoiMjIifV1dfSk7dmFyIGtZLEcydD1sKCgpPT57a1k9W1siY2lyY2xlIix7Y3g6IjEyIixjeToiNSIscjoiMyJ9XSxbInBhdGgiLHtkOiJNNi41IDhhMiAyIDAgMCAwLTEuOTA1IDEuNDZMMi4xIDE4LjVBMiAyIDAgMCAwIDQgMjFoMTZhMiAyIDAgMCAwIDEuOTI1LTIuNTRMMTkuNCA5LjVBMiAyIDAgMCAwIDE3LjQ4IDhaIn1dXX0pO3ZhciBTWSxZMnQ9bCgoKT0+e1NZPVtbInBhdGgiLHtkOiJNMiAyMiAxNiA4In1dLFsicGF0aCIse2Q6Ik0zLjQ3IDEyLjUzIDUgMTFsMS41MyAxLjUzYTMuNSAzLjUgMCAwIDEgMCA0Ljk0TDUgMTlsLTEuNTMtMS41M2EzLjUgMy41IDAgMCAxIDAtNC45NFoifV0sWyJwYXRoIix7ZDoiTTcuNDcgOC41MyA5IDdsMS41MyAxLjUzYTMuNSAzLjUgMCAwIDEgMCA0Ljk0TDkgMTVsLTEuNTMtMS41M2EzLjUgMy41IDAgMCAxIDAtNC45NFoifV0sWyJwYXRoIix7ZDoiTTExLjQ3IDQuNTMgMTMgM2wxLjUzIDEuNTNhMy41IDMuNSAwIDAgMSAwIDQuOTRMMTMgMTFsLTEuNTMtMS41M2EzLjUgMy41IDAgMCAxIDAtNC45NFoifV0sWyJwYXRoIix7ZDoiTTIwIDJoMnYyYTQgNCAwIDAgMS00IDRoLTJWNmE0IDQgMCAwIDEgNC00WiJ9XSxbInBhdGgiLHtkOiJNMTEuNDcgMTcuNDcgMTMgMTlsLTEuNTMgMS41M2EzLjUgMy41IDAgMCAxLTQuOTQgMEw1IDE5bDEuNTMtMS41M2EzLjUgMy41IDAgMCAxIDQuOTQgMFoifV0sWyJwYXRoIix7ZDoiTTE1LjQ3IDEzLjQ3IDE3IDE1bC0xLjUzIDEuNTNhMy41IDMuNSAwIDAgMS00Ljk0IDBMOSAxNWwxLjUzLTEuNTNhMy41IDMuNSAwIDAgMSA0Ljk0IDBaIn1dLFsicGF0aCIse2Q6Ik0xOS40NyA5LjQ3IDIxIDExbC0xLjUzIDEuNTNhMy41IDMuNSAwIDAgMS00Ljk0IDBMMTMgMTFsMS41My0xLjUzYTMuNSAzLjUgMCAwIDEgNC45NCAwWiJ9XV19KTt2YXIgelksWjJ0PWwoKCk9Pnt6WT1bWyJjaXJjbGUiLHtjeDoiNyIsY3k6IjEyIixyOiIzIn1dLFsicGF0aCIse2Q6Ik0xMCA5djYifV0sWyJjaXJjbGUiLHtjeDoiMTciLGN5OiIxMiIscjoiMyJ9XSxbInBhdGgiLHtkOiJNMTQgN3Y4In1dLFsicGF0aCIse2Q6Ik0yMiAxN3YxYzAgLjUtLjUgMS0xIDFIM2MtLjUgMC0xLS41LTEtMXYtMSJ9XV19KTt2YXIgQ1ksWDJ0PWwoKCk9PntDWT1bWyJwYXRoIix7ZDoibTE0LjMwNSAxOS41My45MjMtLjM4MiJ9XSxbInBhdGgiLHtkOiJtMTUuMjI4IDE2Ljg1Mi0uOTIzLS4zODMifV0sWyJwYXRoIix7ZDoibTE2Ljg1MiAxNS4yMjgtLjM4My0uOTIzIn1dLFsicGF0aCIse2Q6Im0xNi44NTIgMjAuNzcyLS4zODMuOTI0In1dLFsicGF0aCIse2Q6Im0xOS4xNDggMTUuMjI4LjM4My0uOTIzIn1dLFsicGF0aCIse2Q6Im0xOS41MyAyMS42OTYtLjM4Mi0uOTI0In1dLFsicGF0aCIse2Q6Ik0yIDcuODJhMTUgMTUgMCAwIDEgMjAgMCJ9XSxbInBhdGgiLHtkOiJtMjAuNzcyIDE2Ljg1Mi45MjQtLjM4MyJ9XSxbInBhdGgiLHtkOiJtMjAuNzcyIDE5LjE0OC45MjQuMzgzIn1dLFsicGF0aCIse2Q6Ik01IDExLjg1OGExMCAxMCAwIDAgMSAxMS41LTEuNzg1In1dLFsicGF0aCIse2Q6Ik04LjUgMTUuNDI5YTUgNSAwIDAgMSAyLjQxMy0xLjMxIn1dLFsiY2lyY2xlIix7Y3g6IjE4IixjeToiMTgiLHI6IjMifV1dfSk7dmFyIF9ZLFEydD1sKCgpPT57X1k9W1sicGF0aCIse2Q6Ik0xMiAyMGguMDEifV0sWyJwYXRoIix7ZDoiTTUgMTIuODU5YTEwIDEwIDAgMCAxIDE0IDAifV0sWyJwYXRoIix7ZDoiTTguNSAxNi40MjlhNSA1IDAgMCAxIDcgMCJ9XV19KTt2YXIgVFksSzJ0PWwoKCk9PntUWT1bWyJwYXRoIix7ZDoiTTEyIDIwaC4wMSJ9XSxbInBhdGgiLHtkOiJNOC41IDE2LjQyOWE1IDUgMCAwIDEgNyAwIn1dXX0pO3ZhciBMWSxKMnQ9bCgoKT0+e0xZPVtbInBhdGgiLHtkOiJNMiA4LjgyYTE1IDE1IDAgMCAxIDIwIDAifV0sWyJwYXRoIix7ZDoiTTIxLjM3OCAxNi42MjZhMSAxIDAgMCAwLTMuMDA0LTMuMDA0bC00LjAxIDQuMDEyYTIgMiAwIDAgMC0uNTA2Ljg1NGwtLjgzNyAyLjg3YS41LjUgMCAwIDAgLjYyLjYybDIuODctLjgzN2EyIDIgMCAwIDAgLjg1NC0uNTA2eiJ9XSxbInBhdGgiLHtkOiJNNSAxMi44NTlhMTAgMTAgMCAwIDEgMTAuNS0yLjIyMiJ9XSxbInBhdGgiLHtkOiJNOC41IDE2LjQyOWE1IDUgMCAwIDEgMy0xLjQwNiJ9XV19KTt2YXIgRFksZWx0PWwoKCk9PntEWT1bWyJwYXRoIix7ZDoiTTEyIDIwaC4wMSJ9XSxbInBhdGgiLHtkOiJNOC41IDE2LjQyOWE1IDUgMCAwIDEgNyAwIn1dLFsicGF0aCIse2Q6Ik01IDEyLjg1OWExMCAxMCAwIDAgMSA1LjE3LTIuNjkifV0sWyJwYXRoIix7ZDoiTTE5IDEyLjg1OWExMCAxMCAwIDAgMC0yLjAwNy0xLjUyMyJ9XSxbInBhdGgiLHtkOiJNMiA4LjgyYTE1IDE1IDAgMCAxIDQuMTc3LTIuNjQzIn1dLFsicGF0aCIse2Q6Ik0yMiA4LjgyYTE1IDE1IDAgMCAwLTExLjI4OC0zLjc2NCJ9XSxbInBhdGgiLHtkOiJtMiAyIDIwIDIwIn1dXX0pO3ZhciBBWSx0bHQ9bCgoKT0+e0FZPVtbInBhdGgiLHtkOiJNMTIgMjBoLjAxIn1dXX0pO3ZhciBFWSxybHQ9bCgoKT0+e0VZPVtbInBhdGgiLHtkOiJNMTEuOTY1IDEwLjEwNXY0TDEzLjUgMTIuNWE1IDUgMCAwIDEgOCAxLjUifV0sWyJwYXRoIix7ZDoiTTExLjk2NSAxNC4xMDVoNCJ9XSxbInBhdGgiLHtkOiJNMTcuOTY1IDE4LjEwNWg0TDIwLjQzIDE5LjcxYTUgNSAwIDAgMS04LTEuNSJ9XSxbInBhdGgiLHtkOiJNMiA4LjgyYTE1IDE1IDAgMCAxIDIwIDAifV0sWyJwYXRoIix7ZDoiTTIxLjk2NSAyMi4xMDV2LTQifV0sWyJwYXRoIix7ZDoiTTUgMTIuODZhMTAgMTAgMCAwIDEgMy0yLjAzMiJ9XSxbInBhdGgiLHtkOiJNOC41IDE2LjQyOWguMDEifV1dfSk7dmFyICRZLGFsdD1sKCgpPT57JFk9W1sicGF0aCIse2Q6Ik0xMiAyMGguMDEifV0sWyJwYXRoIix7ZDoiTTIgOC44MmExNSAxNSAwIDAgMSAyMCAwIn1dLFsicGF0aCIse2Q6Ik01IDEyLjg1OWExMCAxMCAwIDAgMSAxNCAwIn1dLFsicGF0aCIse2Q6Ik04LjUgMTYuNDI5YTUgNSAwIDAgMSA3IDAifV1dfSk7dmFyIFBZLGlsdD1sKCgpPT57UFk9W1sicGF0aCIse2Q6Ik0xMCAydjgifV0sWyJwYXRoIix7ZDoiTTEyLjggMjEuNkEyIDIgMCAxIDAgMTQgMThIMiJ9XSxbInBhdGgiLHtkOiJNMTcuNSAxMGEyLjUgMi41IDAgMSAxIDIgNEgyIn1dLFsicGF0aCIse2Q6Im02IDYgNCA0IDQtNCJ9XV19KTt2YXIgSVksb2x0PWwoKCk9PntJWT1bWyJwYXRoIix7ZDoiTTEyLjggMTkuNkEyIDIgMCAxIDAgMTQgMTZIMiJ9XSxbInBhdGgiLHtkOiJNMTcuNSA4YTIuNSAyLjUgMCAxIDEgMiA0SDIifV0sWyJwYXRoIix7ZDoiTTkuOCA0LjRBMiAyIDAgMSAxIDExIDhIMiJ9XV19KTt2YXIgTlksbmx0PWwoKCk9PntOWT1bWyJwYXRoIix7ZDoiTTggMjJoOCJ9XSxbInBhdGgiLHtkOiJNNyAxMGgzbTcgMGgtMS4zNDMifV0sWyJwYXRoIix7ZDoiTTEyIDE1djcifV0sWyJwYXRoIix7ZDoiTTcuMzA3IDcuMzA3QTEyLjMzIDEyLjMzIDAgMCAwIDcgMTBhNSA1IDAgMCAwIDcuMzkxIDQuMzkxTTguNjM4IDIuOTgxQzguNzUgMi42NjggOC44NzIgMi4zNCA5IDJoNmMxLjUgNCAyIDYgMiA4IDAgLjQwNy0uMDUuODA5LS4xNDUgMS4xOTgifV0sWyJsaW5lIix7eDE6IjIiLHgyOiIyMiIseTE6IjIiLHkyOiIyMiJ9XV19KTt2YXIgRlksc2x0PWwoKCk9PntGWT1bWyJwYXRoIix7ZDoiTTggMjJoOCJ9XSxbInBhdGgiLHtkOiJNNyAxMGgxMCJ9XSxbInBhdGgiLHtkOiJNMTIgMTV2NyJ9XSxbInBhdGgiLHtkOiJNMTIgMTVhNSA1IDAgMCAwIDUtNWMwLTItLjUtNC0yLThIOWMtMS41IDQtMiA2LTIgOGE1IDUgMCAwIDAgNSA1WiJ9XV19KTt2YXIgT1ksbGx0PWwoKCk9PntPWT1bWyJyZWN0Iix7d2lkdGg6IjgiLGhlaWdodDoiOCIseDoiMyIseToiMyIscng6IjIifV0sWyJwYXRoIix7ZDoiTTcgMTF2NGEyIDIgMCAwIDAgMiAyaDQifV0sWyJyZWN0Iix7d2lkdGg6IjgiLGhlaWdodDoiOCIseDoiMTMiLHk6IjEzIixyeDoiMiJ9XV19KTt2YXIgUlksY2x0PWwoKCk9PntSWT1bWyJwYXRoIix7ZDoibTE5IDEyLTEuNSAzIn1dLFsicGF0aCIse2Q6Ik0xOS42MyAxOC44MSAyMiAyMCJ9XSxbInBhdGgiLHtkOiJNNi40NyA4LjIzYTEuNjggMS42OCAwIDAgMSAyLjQ0IDEuOTNsLS42NCAyLjA4YTYuNzYgNi43NiAwIDAgMCAxMC4xNiA3LjY3bC40Mi0uMjdhMSAxIDAgMSAwLTIuNzMtNC4yMWwtLjQyLjI3YTEuNzYgMS43NiAwIDAgMS0yLjYzLTEuOTlsLjY0LTIuMDhBNi42NiA2LjY2IDAgMCAwIDMuOTQgMy45bC0uNy40YTEgMSAwIDEgMCAyLjU1IDQuMzR6In1dXX0pO3ZhciBCWSxkbHQ9bCgoKT0+e0JZPVtbInBhdGgiLHtkOiJNMTQuNyA2LjNhMSAxIDAgMCAwIDAgMS40bDEuNiAxLjZhMSAxIDAgMCAwIDEuNCAwbDMuMTA2LTMuMTA1Yy4zMi0uMzIyLjg2My0uMjIuOTgzLjIxOGE2IDYgMCAwIDEtOC4yNTkgNy4wNTdsLTcuOTEgNy45MWExIDEgMCAwIDEtMi45OTktM2w3LjkxLTcuOTFhNiA2IDAgMCAxIDcuMDU3LTguMjU5Yy40MzguMTIuNTQuNjYyLjIxOS45ODR6In1dXX0pO3ZhciBIWSx1bHQ9bCgoKT0+e0hZPVtbInBhdGgiLHtkOiJNMTggNEg2In1dLFsicGF0aCIse2Q6Ik0xOCA4IDYgMjAifV0sWyJwYXRoIix7ZDoibTYgOCAxMiAxMiJ9XV19KTt2YXIgcVksZmx0PWwoKCk9PntxWT1bWyJwYXRoIix7ZDoiTTE4IDYgNiAxOCJ9XSxbInBhdGgiLHtkOiJtNiA2IDEyIDEyIn1dXX0pO3ZhciBqWSxwbHQ9bCgoKT0+e2pZPVtbInBhdGgiLHtkOiJNMi41IDE3YTI0LjEyIDI0LjEyIDAgMCAxIDAtMTAgMiAyIDAgMCAxIDEuNC0xLjQgNDkuNTYgNDkuNTYgMCAwIDEgMTYuMiAwQTIgMiAwIDAgMSAyMS41IDdhMjQuMTIgMjQuMTIgMCAwIDEgMCAxMCAyIDIgMCAwIDEtMS40IDEuNCA0OS41NSA0OS41NSAwIDAgMS0xNi4yIDBBMiAyIDAgMCAxIDIuNSAxNyJ9XSxbInBhdGgiLHtkOiJtMTAgMTUgNS0zLTUtM3oifV1dfSk7dmFyIFZZLGhsdD1sKCgpPT57Vlk9W1sicGF0aCIse2Q6Ik0xMC41MTMgNC44NTYgMTMuMTIgMi4xN2EuNS41IDAgMCAxIC44Ni40NmwtMS4zNzcgNC4zMTcifV0sWyJwYXRoIix7ZDoiTTE1LjY1NiAxMEgyMGExIDEgMCAwIDEgLjc4IDEuNjNsLTEuNzIgMS43NzMifV0sWyJwYXRoIix7ZDoiTTE2LjI3MyAxNi4yNzMgMTAuODggMjEuODNhLjUuNSAwIDAgMS0uODYtLjQ2bDEuOTItNi4wMkExIDEgMCAwIDAgMTEgMTRINGExIDEgMCAwIDEtLjc4LTEuNjNsNC41MDctNC42NDMifV0sWyJwYXRoIix7ZDoibTIgMiAyMCAyMCJ9XV19KTt2YXIgVVksbWx0PWwoKCk9PntVWT1bWyJwYXRoIix7ZDoiTTQgMTRhMSAxIDAgMCAxLS43OC0xLjYzbDkuOS0xMC4yYS41LjUgMCAwIDEgLjg2LjQ2bC0xLjkyIDYuMDJBMSAxIDAgMCAwIDEzIDEwaDdhMSAxIDAgMCAxIC43OCAxLjYzbC05LjkgMTAuMmEuNS41IDAgMCAxLS44Ni0uNDZsMS45Mi02LjAyQTEgMSAwIDAgMCAxMSAxNHoifV1dfSk7dmFyIFdZLGdsdD1sKCgpPT57V1k9W1sicGF0aCIse2Q6Im0yIDEwIDIuNDU2LTMuNjg0YS43LjcgMCAwIDEgMS4xMDYtLjAxM2wyLjM5IDMuNDEzYS43LjcgMCAwIDAgMS4wOTYtLjAwMWwyLjQwMi0zLjQzMmEuNy43IDAgMCAxIDEuMDk4IDBsMi40MDIgMy40MzJhLjcuNyAwIDAgMCAxLjA5OCAwbDIuMzg5LTMuNDEzYS43LjcgMCAwIDEgMS4xMDYuMDEzTDIyIDEwIn1dLFsicGF0aCIse2Q6Im0yIDE4LjAwMiAyLjQ1Ni0zLjY4NGEuNy43IDAgMCAxIDEuMTA2LS4wMTNsMi4zOSAzLjQxM2EuNy43IDAgMCAwIDEuMDk3IDBsMi40MDItMy40MzJhLjcuNyAwIDAgMSAxLjA5OCAwbDIuNDAyIDMuNDMyYS43LjcgMCAwIDAgMS4wOTggMGwyLjM4OS0zLjQxM2EuNy43IDAgMCAxIDEuMTA2LjAxM0wyMiAxOC4wMDIifV1dfSk7dmFyIEdZLHhsdD1sKCgpPT57R1k9W1sicGF0aCIse2Q6Ik0xMiA3LjVhNC41IDQuNSAwIDEgMSA1IDQuNSJ9XSxbInBhdGgiLHtkOiJNNyAxMmE0LjUgNC41IDAgMSAxIDUtNC41VjIxIn1dXX0pO3ZhciBZWSxibHQ9bCgoKT0+e1lZPVtbInBhdGgiLHtkOiJNMjEgMTQuNUE5IDYuNSAwIDAgMSA1LjUgMTkifV0sWyJwYXRoIix7ZDoiTTMgOS41QTkgNi41IDAgMCAxIDE4LjUgNSJ9XSxbImNpcmNsZSIse2N4OiIxNy41IixjeToiMTQuNSIscjoiMy41In1dLFsiY2lyY2xlIix7Y3g6IjYuNSIsY3k6IjkuNSIscjoiMy41In1dXX0pO3ZhciBaWSx2bHQ9bCgoKT0+e1pZPVtbInBhdGgiLHtkOiJNMTEgMjFhMyAzIDAgMCAwIDMtM1Y2LjVhMSAxIDAgMCAwLTcgMCJ9XSxbInBhdGgiLHtkOiJNNyAxOVY2YTMgMyAwIDAgMC0zLTNoMCJ9XSxbImNpcmNsZSIse2N4OiIxNyIsY3k6IjE3IixyOiIzIn1dXX0pO3ZhciBYWSx5bHQ9bCgoKT0+e1hZPVtbInBhdGgiLHtkOiJNMTAgMTZjMC00LTMtNC41LTMtOGE1IDUgMCAwIDEgMTAgMGMwIDMuNDY2LTMgNi4xOTYtMyAxMGEzIDMgMCAwIDAgNiAwIn1dLFsiY2lyY2xlIix7Y3g6IjciLGN5OiIxNiIscjoiMyJ9XV19KTt2YXIgUVksd2x0PWwoKCk9PntRWT1bWyJwYXRoIix7ZDoiTTE2IDQuNTI1djE0Ljk0OCJ9XSxbInBhdGgiLHtkOiJNMjAgM0ExNyAxNyAwIDAgMSA0IDMifV0sWyJwYXRoIix7ZDoiTTQgMjFhMTcgMTcgMCAwIDEgMTYgMCJ9XSxbInBhdGgiLHtkOiJNOCA0LjUyNXYxNC45NDgifV1dfSk7dmFyIEtZLE1sdD1sKCgpPT57S1k9W1sicGF0aCIse2Q6Ik0zIDE2aDYuODU3Yy4xNjItLjAxMi4xOS0uMzIzLjAzOC0uMzhhNiA2IDAgMSAxIDQuMjEyIDBjLS4xNTMuMDU3LS4xMjUuMzY4LjAzOC4zOEgyMSJ9XSxbInBhdGgiLHtkOiJNMyAyMGgxOCJ9XV19KTt2YXIgSlksa2x0PWwoKCk9PntKWT1bWyJwYXRoIix7ZDoiTTMgMTBBNi4wNiA2LjA2IDAgMCAxIDEyIDEwIEE2LjA2IDYuMDYgMCAwIDAgMjEgMTAifV0sWyJwYXRoIix7ZDoiTTYgM3YxMmE2IDYgMCAwIDAgMTIgMFYzIn1dXX0pO3ZhciBlWixTbHQ9bCgoKT0+e2VaPVtbInBhdGgiLHtkOiJNMTkgMjFhMTUgMTUgMCAwIDEgMC0xOCJ9XSxbInBhdGgiLHtkOiJNMjAgMTJINCJ9XSxbInBhdGgiLHtkOiJNNSAzYTE1IDE1IDAgMCAxIDAgMTgifV1dfSk7dmFyIHRaLHpsdD1sKCgpPT57dFo9W1sicGF0aCIse2Q6Ik0xNSAzaDZ2NiJ9XSxbInBhdGgiLHtkOiJNMjEgMyAzIDIxIn1dLFsicGF0aCIse2Q6Im05IDkgNiA2In1dXX0pO3ZhciByWixDbHQ9bCgoKT0+e3JaPVtbInBhdGgiLHtkOiJNMTAgMTlWNS41YTEgMSAwIDAgMSA1IDBWMTdhMiAyIDAgMCAwIDIgMmg1bC0zLTMifV0sWyJwYXRoIix7ZDoibTIyIDE5LTMgMyJ9XSxbInBhdGgiLHtkOiJNNSAxOVY1LjVhMSAxIDAgMCAxIDUgMCJ9XSxbInBhdGgiLHtkOiJNNSA1LjVBMi41IDIuNSAwIDAgMCAyLjUgMyJ9XV19KTt2YXIgYVosX2x0PWwoKCk9PnthWj1bWyJjaXJjbGUiLHtjeDoiMTIiLGN5OiIxNSIscjoiNiJ9XSxbInBhdGgiLHtkOiJNMTggM0E2IDYgMCAwIDEgNiAzIn1dXX0pO3ZhciBpWixUbHQ9bCgoKT0+e2laPVtbInBhdGgiLHtkOiJNMTEgNS41YTEgMSAwIDAgMSA1IDBWMTZhNSA1IDAgMCAwIDUgNSJ9XSxbInBhdGgiLHtkOiJNMTYgMTEuNWExIDEgMCAwIDEgNSAwVjE2YTUgNSAwIDAgMS01IDUifV0sWyJwYXRoIix7ZDoiTTYgMTlWNmEzIDMgMCAwIDAtMy0zaDAifV0sWyJwYXRoIix7ZDoiTTYgNS41YTEgMSAwIDAgMSA1IDBWMTkifV1dfSk7dmFyIG9aLExsdD1sKCgpPT57b1o9W1siY2lyY2xlIix7Y3g6IjExIixjeToiMTEiLHI6IjgifV0sWyJsaW5lIix7eDE6IjIxIix4MjoiMTYuNjUiLHkxOiIyMSIseTI6IjE2LjY1In1dLFsibGluZSIse3gxOiIxMSIseDI6IjExIix5MToiOCIseTI6IjE0In1dLFsibGluZSIse3gxOiI4Iix4MjoiMTQiLHkxOiIxMSIseTI6IjExIn1dXX0pO3ZhciBuWixEbHQ9bCgoKT0+e25aPVtbImNpcmNsZSIse2N4OiIxMSIsY3k6IjExIixyOiI4In1dLFsibGluZSIse3gxOiIyMSIseDI6IjE2LjY1Iix5MToiMjEiLHkyOiIxNi42NSJ9XSxbImxpbmUiLHt4MToiOCIseDI6IjE0Iix5MToiMTEiLHkyOiIxMSJ9XV19KTt2YXIgYjg9e307cWUoYjgse0FBcnJvd0Rvd246KCk9Plh3LEFBcnJvd1VwOigpPT5RdyxBTGFyZ2VTbWFsbDooKT0+S3csQWNjZXNzaWJpbGl0eTooKT0+SncsQWN0aXZpdHk6KCk9PmVNLEFjdGl2aXR5U3F1YXJlOigpPT5YNSxBaXJWZW50OigpPT50TSxBaXJwbGF5OigpPT5yTSxBbGFybUNoZWNrOigpPT5jdSxBbGFybUNsb2NrOigpPT5pTSxBbGFybUNsb2NrQ2hlY2s6KCk9PmN1LEFsYXJtQ2xvY2tNaW51czooKT0+bHUsQWxhcm1DbG9ja09mZjooKT0+YU0sQWxhcm1DbG9ja1BsdXM6KCk9PmR1LEFsYXJtTWludXM6KCk9Pmx1LEFsYXJtUGx1czooKT0+ZHUsQWxhcm1TbW9rZTooKT0+b00sQWxidW06KCk9Pm5NLEFsZXJ0Q2lyY2xlOigpPT5SdSxBbGVydE9jdGFnb246KCk9PlM1LEFsZXJ0VHJpYW5nbGU6KCk9Pmk4LEFsaWduQ2VudGVyOigpPT5YcCxBbGlnbkNlbnRlckhvcml6b250YWw6KCk9PnNNLEFsaWduQ2VudGVyVmVydGljYWw6KCk9PmxNLEFsaWduRW5kSG9yaXpvbnRhbDooKT0+Y00sQWxpZ25FbmRWZXJ0aWNhbDooKT0+ZE0sQWxpZ25Ib3Jpem9udGFsRGlzdHJpYnV0ZUNlbnRlcjooKT0+dU0sQWxpZ25Ib3Jpem9udGFsRGlzdHJpYnV0ZUVuZDooKT0+Zk0sQWxpZ25Ib3Jpem9udGFsRGlzdHJpYnV0ZVN0YXJ0OigpPT5wTSxBbGlnbkhvcml6b250YWxKdXN0aWZ5Q2VudGVyOigpPT5oTSxBbGlnbkhvcml6b250YWxKdXN0aWZ5RW5kOigpPT5tTSxBbGlnbkhvcml6b250YWxKdXN0aWZ5U3RhcnQ6KCk9PmdNLEFsaWduSG9yaXpvbnRhbFNwYWNlQXJvdW5kOigpPT54TSxBbGlnbkhvcml6b250YWxTcGFjZUJldHdlZW46KCk9PmJNLEFsaWduSnVzdGlmeTooKT0+S3AsQWxpZ25MZWZ0OigpPT5QYyxBbGlnblJpZ2h0OigpPT5RcCxBbGlnblN0YXJ0SG9yaXpvbnRhbDooKT0+dk0sQWxpZ25TdGFydFZlcnRpY2FsOigpPT55TSxBbGlnblZlcnRpY2FsRGlzdHJpYnV0ZUNlbnRlcjooKT0+d00sQWxpZ25WZXJ0aWNhbERpc3RyaWJ1dGVFbmQ6KCk9Pk1NLEFsaWduVmVydGljYWxEaXN0cmlidXRlU3RhcnQ6KCk9PmtNLEFsaWduVmVydGljYWxKdXN0aWZ5Q2VudGVyOigpPT5TTSxBbGlnblZlcnRpY2FsSnVzdGlmeUVuZDooKT0+ek0sQWxpZ25WZXJ0aWNhbEp1c3RpZnlTdGFydDooKT0+Q00sQWxpZ25WZXJ0aWNhbFNwYWNlQXJvdW5kOigpPT5fTSxBbGlnblZlcnRpY2FsU3BhY2VCZXR3ZWVuOigpPT5UTSxBbWJ1bGFuY2U6KCk9PkRNLEFtcGVyc2FuZDooKT0+TE0sQW1wZXJzYW5kczooKT0+QU0sQW1waG9yYTooKT0+RU0sQW5jaG9yOigpPT4kTSxBbmdyeTooKT0+UE0sQW5ub3llZDooKT0+SU0sQW50ZW5uYTooKT0+Tk0sQW52aWw6KCk9PkZNLEFwZXJ0dXJlOigpPT5PTSxBcHBXaW5kb3c6KCk9PkJNLEFwcFdpbmRvd01hYzooKT0+Uk0sQXBwbGU6KCk9PkhNLEFyY2hpdmU6KCk9PlZNLEFyY2hpdmVSZXN0b3JlOigpPT5xTSxBcmNoaXZlWDooKT0+ak0sQXJlYUNoYXJ0OigpPT56dSxBcm1jaGFpcjooKT0+VU0sQXJyb3dCaWdEb3duOigpPT5HTSxBcnJvd0JpZ0Rvd25EYXNoOigpPT5XTSxBcnJvd0JpZ0xlZnQ6KCk9PlpNLEFycm93QmlnTGVmdERhc2g6KCk9PllNLEFycm93QmlnUmlnaHQ6KCk9PlFNLEFycm93QmlnUmlnaHREYXNoOigpPT5YTSxBcnJvd0JpZ1VwOigpPT5layxBcnJvd0JpZ1VwRGFzaDooKT0+S00sQXJyb3dEb3duOigpPT5jayxBcnJvd0Rvd24wMTooKT0+Sk0sQXJyb3dEb3duMTA6KCk9PnRrLEFycm93RG93bkFaOigpPT51dSxBcnJvd0Rvd25BejooKT0+dXUsQXJyb3dEb3duQ2lyY2xlOigpPT5CdSxBcnJvd0Rvd25Gcm9tTGluZTooKT0+cmssQXJyb3dEb3duTGVmdDooKT0+YWssQXJyb3dEb3duTGVmdEZyb21DaXJjbGU6KCk9PnF1LEFycm93RG93bkxlZnRGcm9tU3F1YXJlOigpPT5lcCxBcnJvd0Rvd25MZWZ0U3F1YXJlOigpPT5aNSxBcnJvd0Rvd25OYXJyb3dXaWRlOigpPT5payxBcnJvd0Rvd25SaWdodDooKT0+b2ssQXJyb3dEb3duUmlnaHRGcm9tQ2lyY2xlOigpPT5qdSxBcnJvd0Rvd25SaWdodEZyb21TcXVhcmU6KCk9PnRwLEFycm93RG93blJpZ2h0U3F1YXJlOigpPT5RNSxBcnJvd0Rvd25TcXVhcmU6KCk9Pks1LEFycm93RG93blRvRG90OigpPT5uayxBcnJvd0Rvd25Ub0xpbmU6KCk9PnNrLEFycm93RG93blVwOigpPT5sayxBcnJvd0Rvd25XaWRlTmFycm93OigpPT5mdSxBcnJvd0Rvd25aQTooKT0+cHUsQXJyb3dEb3duWmE6KCk9PnB1LEFycm93TGVmdDooKT0+cGssQXJyb3dMZWZ0Q2lyY2xlOigpPT5IdSxBcnJvd0xlZnRGcm9tTGluZTooKT0+ZGssQXJyb3dMZWZ0UmlnaHQ6KCk9PnVrLEFycm93TGVmdFNxdWFyZTooKT0+SjUsQXJyb3dMZWZ0VG9MaW5lOigpPT5mayxBcnJvd1JpZ2h0OigpPT54ayxBcnJvd1JpZ2h0Q2lyY2xlOigpPT5XdSxBcnJvd1JpZ2h0RnJvbUxpbmU6KCk9PmhrLEFycm93UmlnaHRMZWZ0OigpPT5tayxBcnJvd1JpZ2h0U3F1YXJlOigpPT5pcCxBcnJvd1JpZ2h0VG9MaW5lOigpPT5nayxBcnJvd1VwOigpPT5fayxBcnJvd1VwMDE6KCk9PmJrLEFycm93VXAxMDooKT0+dmssQXJyb3dVcEFaOigpPT5odSxBcnJvd1VwQXo6KCk9Pmh1LEFycm93VXBDaXJjbGU6KCk9Pkd1LEFycm93VXBEb3duOigpPT55ayxBcnJvd1VwRnJvbURvdDooKT0+d2ssQXJyb3dVcEZyb21MaW5lOigpPT5NayxBcnJvd1VwTGVmdDooKT0+a2ssQXJyb3dVcExlZnRGcm9tQ2lyY2xlOigpPT5WdSxBcnJvd1VwTGVmdEZyb21TcXVhcmU6KCk9PnJwLEFycm93VXBMZWZ0U3F1YXJlOigpPT5vcCxBcnJvd1VwTmFycm93V2lkZTooKT0+bXUsQXJyb3dVcFJpZ2h0OigpPT5TayxBcnJvd1VwUmlnaHRGcm9tQ2lyY2xlOigpPT5VdSxBcnJvd1VwUmlnaHRGcm9tU3F1YXJlOigpPT5hcCxBcnJvd1VwUmlnaHRTcXVhcmU6KCk9Pm5wLEFycm93VXBTcXVhcmU6KCk9PnNwLEFycm93VXBUb0xpbmU6KCk9PnprLEFycm93VXBXaWRlTmFycm93OigpPT5DayxBcnJvd1VwWkE6KCk9Pmd1LEFycm93VXBaYTooKT0+Z3UsQXJyb3dzVXBGcm9tTGluZTooKT0+VGssQXN0ZXJpc2s6KCk9PkRrLEFzdGVyaXNrU3F1YXJlOigpPT5jcCxBdFNpZ246KCk9PkxrLEF0b206KCk9PkFrLEF1ZGlvTGluZXM6KCk9PkVrLEF1ZGlvV2F2ZWZvcm06KCk9PiRrLEF3YXJkOigpPT5QayxBeGU6KCk9PklrLEF4aXMzRDooKT0+eHUsQXhpczNkOigpPT54dSxCYWJ5OigpPT5OayxCYWNrcGFjazooKT0+RmssQmFkZ2U6KCk9PkprLEJhZGdlQWxlcnQ6KCk9Pk9rLEJhZGdlQ2VudDooKT0+UmssQmFkZ2VDaGVjazooKT0+YnUsQmFkZ2VEb2xsYXJTaWduOigpPT5IayxCYWRnZUV1cm86KCk9PkJrLEJhZGdlSGVscDooKT0+dnUsQmFkZ2VJbmRpYW5SdXBlZTooKT0+cWssQmFkZ2VJbmZvOigpPT5qayxCYWRnZUphcGFuZXNlWWVuOigpPT5WayxCYWRnZU1pbnVzOigpPT5VayxCYWRnZVBlcmNlbnQ6KCk9PldrLEJhZGdlUGx1czooKT0+WWssQmFkZ2VQb3VuZFN0ZXJsaW5nOigpPT5HayxCYWRnZVF1ZXN0aW9uTWFyazooKT0+dnUsQmFkZ2VSdXNzaWFuUnVibGU6KCk9PlprLEJhZGdlU3dpc3NGcmFuYzooKT0+WGssQmFkZ2VUdXJraXNoTGlyYTooKT0+UWssQmFkZ2VYOigpPT5LayxCYWdnYWdlQ2xhaW06KCk9PmVTLEJhbGxvb246KCk9PnRTLEJhbjooKT0+clMsQmFuYW5hOigpPT5hUyxCYW5kYWdlOigpPT5pUyxCYW5rbm90ZTooKT0+bFMsQmFua25vdGVBcnJvd0Rvd246KCk9Pm9TLEJhbmtub3RlQXJyb3dVcDooKT0+blMsQmFua25vdGVYOigpPT5zUyxCYXJDaGFydDooKT0+JHUsQmFyQ2hhcnQyOigpPT5QdSxCYXJDaGFydDM6KCk9PkF1LEJhckNoYXJ0NDooKT0+RHUsQmFyQ2hhcnRCaWc6KCk9Pkx1LEJhckNoYXJ0SG9yaXpvbnRhbDooKT0+X3UsQmFyQ2hhcnRIb3Jpem9udGFsQmlnOigpPT5DdSxCYXJjb2RlOigpPT5jUyxCYXJyZWw6KCk9PmRTLEJhc2VsaW5lOigpPT51UyxCYXRoOigpPT5mUyxCYXR0ZXJ5OigpPT52UyxCYXR0ZXJ5Q2hhcmdpbmc6KCk9PnBTLEJhdHRlcnlGdWxsOigpPT5oUyxCYXR0ZXJ5TG93OigpPT5tUyxCYXR0ZXJ5TWVkaXVtOigpPT5nUyxCYXR0ZXJ5UGx1czooKT0+eFMsQmF0dGVyeVdhcm5pbmc6KCk9PmJTLEJlYWtlcjooKT0+eVMsQmVhbjooKT0+TVMsQmVhbk9mZjooKT0+d1MsQmVkOigpPT56UyxCZWREb3VibGU6KCk9PmtTLEJlZFNpbmdsZTooKT0+U1MsQmVlZjooKT0+Q1MsQmVlcjooKT0+VFMsQmVlck9mZjooKT0+X1MsQmVsbDooKT0+SVMsQmVsbERvdDooKT0+TFMsQmVsbEVsZWN0cmljOigpPT5BUyxCZWxsTWludXM6KCk9PkVTLEJlbGxPZmY6KCk9PkRTLEJlbGxQbHVzOigpPT4kUyxCZWxsUmluZzooKT0+UFMsQmV0d2Vlbkhvcml6b25hbEVuZDooKT0+eXUsQmV0d2Vlbkhvcml6b25hbFN0YXJ0OigpPT53dSxCZXR3ZWVuSG9yaXpvbnRhbEVuZDooKT0+eXUsQmV0d2Vlbkhvcml6b250YWxTdGFydDooKT0+d3UsQmV0d2VlblZlcnRpY2FsRW5kOigpPT5OUyxCZXR3ZWVuVmVydGljYWxTdGFydDooKT0+RlMsQmljZXBzRmxleGVkOigpPT5SUyxCaWtlOigpPT5PUyxCaW5hcnk6KCk9PkJTLEJpbm9jdWxhcnM6KCk9PnFTLEJpb2hhemFyZDooKT0+SFMsQmlyZDooKT0+alMsQmlyZGhvdXNlOigpPT5VUyxCaXRjb2luOigpPT5WUyxCbGVuZDooKT0+V1MsQmxpbmRzOigpPT5HUyxCbG9ja3M6KCk9PllTLEJsdWV0b290aDooKT0+S1MsQmx1ZXRvb3RoQ29ubmVjdGVkOigpPT5aUyxCbHVldG9vdGhPZmY6KCk9PlhTLEJsdWV0b290aFNlYXJjaGluZzooKT0+UVMsQm9sZDooKT0+SlMsQm9sdDooKT0+ZXosQm9tYjooKT0+dHosQm9uZTooKT0+cnosQm9vazooKT0+X3osQm9va0E6KCk9PmF6LEJvb2tBbGVydDooKT0+aXosQm9va0F1ZGlvOigpPT5veixCb29rQ2hlY2s6KCk9Pm56LEJvb2tDb3B5OigpPT5zeixCb29rRGFzaGVkOigpPT5NdSxCb29rRG93bjooKT0+bHosQm9va0hlYWRwaG9uZXM6KCk9PmN6LEJvb2tIZWFydDooKT0+ZHosQm9va0ltYWdlOigpPT51eixCb29rS2V5OigpPT5meixCb29rTG9jazooKT0+aHosQm9va01hcmtlZDooKT0+cHosQm9va01pbnVzOigpPT5teixCb29rT3BlbjooKT0+YnosQm9va09wZW5DaGVjazooKT0+Z3osQm9va09wZW5UZXh0OigpPT54eixCb29rUGx1czooKT0+dnosQm9va1NlYXJjaDooKT0+eXosQm9va1RlbXBsYXRlOigpPT5NdSxCb29rVGV4dDooKT0+d3osQm9va1R5cGU6KCk9Pmt6LEJvb2tVcDooKT0+U3osQm9va1VwMjooKT0+TXosQm9va1VzZXI6KCk9Pnp6LEJvb2tYOigpPT5DeixCb29rbWFyazooKT0+RXosQm9va21hcmtDaGVjazooKT0+VHosQm9va21hcmtNaW51czooKT0+THosQm9va21hcmtQbHVzOigpPT5EeixCb29rbWFya1g6KCk9PkF6LEJvb21Cb3g6KCk9PiR6LEJvdDooKT0+TnosQm90TWVzc2FnZVNxdWFyZTooKT0+UHosQm90T2ZmOigpPT5JeixCb3R0bGVXaW5lOigpPT5PeixCb3dBcnJvdzooKT0+RnosQm94OigpPT5SeixCb3hTZWxlY3Q6KCk9PndwLEJveGVzOigpPT5CeixCcmFjZXM6KCk9Pmt1LEJyYWNrZXRzOigpPT5IeixCcmFpbjooKT0+anosQnJhaW5DaXJjdWl0OigpPT5xeixCcmFpbkNvZzooKT0+VnosQnJpY2tXYWxsOigpPT5HeixCcmlja1dhbGxGaXJlOigpPT5VeixCcmlja1dhbGxTaGllbGQ6KCk9Pld6LEJyaWVmY2FzZTooKT0+UXosQnJpZWZjYXNlQnVzaW5lc3M6KCk9Pll6LEJyaWVmY2FzZUNvbnZleW9yQmVsdDooKT0+WnosQnJpZWZjYXNlTWVkaWNhbDooKT0+WHosQnJpbmdUb0Zyb250OigpPT5LeixCcnVzaDooKT0+ZUMsQnJ1c2hDbGVhbmluZzooKT0+SnosQnViYmxlczooKT0+ckMsQnVnOigpPT5pQyxCdWdPZmY6KCk9PnRDLEJ1Z1BsYXk6KCk9PmFDLEJ1aWxkaW5nOigpPT5uQyxCdWlsZGluZzI6KCk9Pm9DLEJ1czooKT0+bEMsQnVzRnJvbnQ6KCk9PnNDLENhYmxlOigpPT5kQyxDYWJsZUNhcjooKT0+Y0MsQ2FrZTooKT0+ZkMsQ2FrZVNsaWNlOigpPT51QyxDYWxjdWxhdG9yOigpPT5wQyxDYWxlbmRhcjooKT0+UEMsQ2FsZW5kYXIxOigpPT5oQyxDYWxlbmRhckFycm93RG93bjooKT0+bUMsQ2FsZW5kYXJBcnJvd1VwOigpPT5nQyxDYWxlbmRhckNoZWNrOigpPT5iQyxDYWxlbmRhckNoZWNrMjooKT0+eEMsQ2FsZW5kYXJDbG9jazooKT0+dkMsQ2FsZW5kYXJDb2c6KCk9PnlDLENhbGVuZGFyRGF5czooKT0+d0MsQ2FsZW5kYXJGb2xkOigpPT5NQyxDYWxlbmRhckhlYXJ0OigpPT5rQyxDYWxlbmRhck1pbnVzOigpPT56QyxDYWxlbmRhck1pbnVzMjooKT0+U0MsQ2FsZW5kYXJPZmY6KCk9PkNDLENhbGVuZGFyUGx1czooKT0+VEMsQ2FsZW5kYXJQbHVzMjooKT0+X0MsQ2FsZW5kYXJSYW5nZTooKT0+TEMsQ2FsZW5kYXJTZWFyY2g6KCk9PkRDLENhbGVuZGFyU3luYzooKT0+QUMsQ2FsZW5kYXJYOigpPT4kQyxDYWxlbmRhclgyOigpPT5FQyxDYWxlbmRhcnM6KCk9PklDLENhbWVyYTooKT0+RkMsQ2FtZXJhT2ZmOigpPT5OQyxDYW5kbGVzdGlja0NoYXJ0OigpPT5UdSxDYW5keTooKT0+cUMsQ2FuZHlDYW5lOigpPT5PQyxDYW5keU9mZjooKT0+UkMsQ2FubmFiaXM6KCk9PkhDLENhbm5hYmlzT2ZmOigpPT5CQyxDYXB0aW9uczooKT0+U3UsQ2FwdGlvbnNPZmY6KCk9PmpDLENhcjooKT0+V0MsQ2FyRnJvbnQ6KCk9PlZDLENhclRheGlGcm9udDooKT0+VUMsQ2FyYXZhbjooKT0+R0MsQ2FyZFNpbTooKT0+WkMsQ2Fycm90OigpPT5ZQyxDYXNlTG93ZXI6KCk9PlhDLENhc2VTZW5zaXRpdmU6KCk9PlFDLENhc2VVcHBlcjooKT0+S0MsQ2Fzc2V0dGVUYXBlOigpPT5KQyxDYXN0OigpPT5lXyxDYXN0bGU6KCk9PnJfLENhdDooKT0+dF8sQ2N0djooKT0+YV8sQ2hhcnRBcmVhOigpPT56dSxDaGFydEJhcjooKT0+X3UsQ2hhcnRCYXJCaWc6KCk9PkN1LENoYXJ0QmFyRGVjcmVhc2luZzooKT0+aV8sQ2hhcnRCYXJJbmNyZWFzaW5nOigpPT5vXyxDaGFydEJhclN0YWNrZWQ6KCk9Pm5fLENoYXJ0Q2FuZGxlc3RpY2s6KCk9PlR1LENoYXJ0Q29sdW1uOigpPT5BdSxDaGFydENvbHVtbkJpZzooKT0+THUsQ2hhcnRDb2x1bW5EZWNyZWFzaW5nOigpPT5zXyxDaGFydENvbHVtbkluY3JlYXNpbmc6KCk9PkR1LENoYXJ0Q29sdW1uU3RhY2tlZDooKT0+bF8sQ2hhcnRHYW50dDooKT0+Y18sQ2hhcnRMaW5lOigpPT5FdSxDaGFydE5ldHdvcms6KCk9PmRfLENoYXJ0Tm9BeGVzQ29sdW1uOigpPT5QdSxDaGFydE5vQXhlc0NvbHVtbkRlY3JlYXNpbmc6KCk9PnVfLENoYXJ0Tm9BeGVzQ29sdW1uSW5jcmVhc2luZzooKT0+JHUsQ2hhcnROb0F4ZXNDb21iaW5lZDooKT0+Zl8sQ2hhcnROb0F4ZXNHYW50dDooKT0+SXUsQ2hhcnRQaWU6KCk9Pk51LENoYXJ0U2NhdHRlcjooKT0+RnUsQ2hhcnRTcGxpbmU6KCk9PnBfLENoZWNrOigpPT5nXyxDaGVja0NoZWNrOigpPT5oXyxDaGVja0NpcmNsZTooKT0+WXUsQ2hlY2tDaXJjbGUyOigpPT5adSxDaGVja0xpbmU6KCk9Pm1fLENoZWNrU3F1YXJlOigpPT5mcCxDaGVja1NxdWFyZTI6KCk9PnBwLENoZWZIYXQ6KCk9PnhfLENoZXJyeTooKT0+Yl8sQ2hlc3NCaXNob3A6KCk9PnlfLENoZXNzS2luZzooKT0+dl8sQ2hlc3NLbmlnaHQ6KCk9PndfLENoZXNzUGF3bjooKT0+TV8sQ2hlc3NRdWVlbjooKT0+a18sQ2hlc3NSb29rOigpPT5TXyxDaGV2cm9uRG93bjooKT0+el8sQ2hldnJvbkRvd25DaXJjbGU6KCk9Plh1LENoZXZyb25Eb3duU3F1YXJlOigpPT5ocCxDaGV2cm9uRmlyc3Q6KCk9PkNfLENoZXZyb25MYXN0OigpPT5fXyxDaGV2cm9uTGVmdDooKT0+TF8sQ2hldnJvbkxlZnRDaXJjbGU6KCk9PlF1LENoZXZyb25MZWZ0U3F1YXJlOigpPT5tcCxDaGV2cm9uUmlnaHQ6KCk9PlRfLENoZXZyb25SaWdodENpcmNsZTooKT0+S3UsQ2hldnJvblJpZ2h0U3F1YXJlOigpPT5ncCxDaGV2cm9uVXA6KCk9PkRfLENoZXZyb25VcENpcmNsZTooKT0+SnUsQ2hldnJvblVwU3F1YXJlOigpPT54cCxDaGV2cm9uc0Rvd246KCk9PkVfLENoZXZyb25zRG93blVwOigpPT5BXyxDaGV2cm9uc0xlZnQ6KCk9PklfLENoZXZyb25zTGVmdFJpZ2h0OigpPT5QXyxDaGV2cm9uc0xlZnRSaWdodEVsbGlwc2lzOigpPT4kXyxDaGV2cm9uc1JpZ2h0OigpPT5GXyxDaGV2cm9uc1JpZ2h0TGVmdDooKT0+Tl8sQ2hldnJvbnNVcDooKT0+Ul8sQ2hldnJvbnNVcERvd246KCk9Pk9fLENocm9tZTooKT0+T3UsQ2hyb21pdW06KCk9Pk91LENodXJjaDooKT0+SF8sQ2lnYXJldHRlOigpPT5xXyxDaWdhcmV0dGVPZmY6KCk9PkJfLENpcmNsZTooKT0+YVQsQ2lyY2xlQWxlcnQ6KCk9PlJ1LENpcmNsZUFycm93RG93bjooKT0+QnUsQ2lyY2xlQXJyb3dMZWZ0OigpPT5IdSxDaXJjbGVBcnJvd091dERvd25MZWZ0OigpPT5xdSxDaXJjbGVBcnJvd091dERvd25SaWdodDooKT0+anUsQ2lyY2xlQXJyb3dPdXRVcExlZnQ6KCk9PlZ1LENpcmNsZUFycm93T3V0VXBSaWdodDooKT0+VXUsQ2lyY2xlQXJyb3dSaWdodDooKT0+V3UsQ2lyY2xlQXJyb3dVcDooKT0+R3UsQ2lyY2xlQ2hlY2s6KCk9Plp1LENpcmNsZUNoZWNrQmlnOigpPT5ZdSxDaXJjbGVDaGV2cm9uRG93bjooKT0+WHUsQ2lyY2xlQ2hldnJvbkxlZnQ6KCk9PlF1LENpcmNsZUNoZXZyb25SaWdodDooKT0+S3UsQ2lyY2xlQ2hldnJvblVwOigpPT5KdSxDaXJjbGVEYXNoZWQ6KCk9PmpfLENpcmNsZURpdmlkZTooKT0+ZWYsQ2lyY2xlRG9sbGFyU2lnbjooKT0+Vl8sQ2lyY2xlRG90OigpPT5XXyxDaXJjbGVEb3REYXNoZWQ6KCk9PlVfLENpcmNsZUVsbGlwc2lzOigpPT5HXyxDaXJjbGVFcXVhbDooKT0+WV8sQ2lyY2xlRmFkaW5nQXJyb3dVcDooKT0+Wl8sQ2lyY2xlRmFkaW5nUGx1czooKT0+WF8sQ2lyY2xlR2F1Z2U6KCk9PnRmLENpcmNsZUhlbHA6KCk9Pl9jLENpcmNsZU1pbnVzOigpPT5yZixDaXJjbGVPZmY6KCk9PlFfLENpcmNsZVBhcmtpbmc6KCk9PmFmLENpcmNsZVBhcmtpbmdPZmY6KCk9Pm9mLENpcmNsZVBhdXNlOigpPT5uZixDaXJjbGVQZXJjZW50OigpPT5zZixDaXJjbGVQaWxlOigpPT5LXyxDaXJjbGVQbGF5OigpPT5sZixDaXJjbGVQbHVzOigpPT5jZixDaXJjbGVQb3VuZFN0ZXJsaW5nOigpPT5KXyxDaXJjbGVQb3dlcjooKT0+ZGYsQ2lyY2xlUXVlc3Rpb25NYXJrOigpPT5fYyxDaXJjbGVTbGFzaDooKT0+ZVQsQ2lyY2xlU2xhc2gyOigpPT51ZixDaXJjbGVTbGFzaGVkOigpPT51ZixDaXJjbGVTbWFsbDooKT0+dFQsQ2lyY2xlU3RhcjooKT0+clQsQ2lyY2xlU3RvcDooKT0+ZmYsQ2lyY2xlVXNlcjooKT0+aGYsQ2lyY2xlVXNlclJvdW5kOigpPT5wZixDaXJjbGVYOigpPT5tZixDaXJjdWl0Qm9hcmQ6KCk9PmlULENpdHJ1czooKT0+b1QsQ2xhcHBlcmJvYXJkOigpPT5uVCxDbGlwYm9hcmQ6KCk9PmdULENsaXBib2FyZENoZWNrOigpPT5zVCxDbGlwYm9hcmRDbG9jazooKT0+bFQsQ2xpcGJvYXJkQ29weTooKT0+Y1QsQ2xpcGJvYXJkRWRpdDooKT0+eGYsQ2xpcGJvYXJkTGlzdDooKT0+ZFQsQ2xpcGJvYXJkTWludXM6KCk9PnVULENsaXBib2FyZFBhc3RlOigpPT5mVCxDbGlwYm9hcmRQZW46KCk9PnhmLENsaXBib2FyZFBlbkxpbmU6KCk9PmdmLENsaXBib2FyZFBsdXM6KCk9PnBULENsaXBib2FyZFNpZ25hdHVyZTooKT0+Z2YsQ2xpcGJvYXJkVHlwZTooKT0+aFQsQ2xpcGJvYXJkWDooKT0+bVQsQ2xvY2s6KCk9PklULENsb2NrMTooKT0+eFQsQ2xvY2sxMDooKT0+YlQsQ2xvY2sxMTooKT0+dlQsQ2xvY2sxMjooKT0+eVQsQ2xvY2syOigpPT5NVCxDbG9jazM6KCk9PndULENsb2NrNDooKT0+a1QsQ2xvY2s1OigpPT5TVCxDbG9jazY6KCk9PnpULENsb2NrNzooKT0+Q1QsQ2xvY2s4OigpPT5UVCxDbG9jazk6KCk9Pl9ULENsb2NrQWxlcnQ6KCk9PkxULENsb2NrQXJyb3dEb3duOigpPT5EVCxDbG9ja0Fycm93VXA6KCk9PkFULENsb2NrQ2hlY2s6KCk9PkVULENsb2NrRmFkaW5nOigpPT4kVCxDbG9ja1BsdXM6KCk9PlBULENsb3NlZENhcHRpb246KCk9PkZULENsb3VkOigpPT5lTCxDbG91ZEFsZXJ0OigpPT5OVCxDbG91ZEJhY2t1cDooKT0+T1QsQ2xvdWRDaGVjazooKT0+UlQsQ2xvdWRDb2c6KCk9PkJULENsb3VkRG93bmxvYWQ6KCk9PmJmLENsb3VkRHJpenpsZTooKT0+SFQsQ2xvdWRGb2c6KCk9PnFULENsb3VkSGFpbDooKT0+alQsQ2xvdWRMaWdodG5pbmc6KCk9PlZULENsb3VkTW9vbjooKT0+V1QsQ2xvdWRNb29uUmFpbjooKT0+VVQsQ2xvdWRPZmY6KCk9PkdULENsb3VkUmFpbjooKT0+WlQsQ2xvdWRSYWluV2luZDooKT0+WVQsQ2xvdWRTbm93OigpPT5YVCxDbG91ZFN1bjooKT0+SlQsQ2xvdWRTdW5SYWluOigpPT5RVCxDbG91ZFN5bmM6KCk9PktULENsb3VkVXBsb2FkOigpPT52ZixDbG91ZHk6KCk9PnRMLENsb3ZlcjooKT0+ckwsQ2x1YjooKT0+YUwsQ29kZTooKT0+aUwsQ29kZTI6KCk9PnlmLENvZGVTcXVhcmU6KCk9PmJwLENvZGVYbWw6KCk9PnlmLENvZGVwZW46KCk9Pm9MLENvZGVzYW5kYm94OigpPT5uTCxDb2ZmZWU6KCk9PnNMLENvZzooKT0+bEwsQ29pbnM6KCk9PmNMLENvbHVtbnM6KCk9PndmLENvbHVtbnMyOigpPT53ZixDb2x1bW5zMzooKT0+TWYsQ29sdW1uczNDb2c6KCk9PlRjLENvbHVtbnM0OigpPT5kTCxDb2x1bW5zU2V0dGluZ3M6KCk9PlRjLENvbWJpbmU6KCk9PnVMLENvbW1hbmQ6KCk9PmZMLENvbXBhc3M6KCk9PnBMLENvbXBvbmVudDooKT0+aEwsQ29tcHV0ZXI6KCk9PmdMLENvbmNpZXJnZUJlbGw6KCk9Pm1MLENvbmU6KCk9PnhMLENvbnN0cnVjdGlvbjooKT0+YkwsQ29udGFjdDooKT0+dkwsQ29udGFjdDI6KCk9PmtmLENvbnRhY3RSb3VuZDooKT0+a2YsQ29udGFpbmVyOigpPT55TCxDb250cmFzdDooKT0+d0wsQ29va2llOigpPT5NTCxDb29raW5nUG90OigpPT5rTCxDb3B5OigpPT5MTCxDb3B5Q2hlY2s6KCk9PlNMLENvcHlNaW51czooKT0+ekwsQ29weVBsdXM6KCk9PkNMLENvcHlTbGFzaDooKT0+X0wsQ29weVg6KCk9PlRMLENvcHlsZWZ0OigpPT5ETCxDb3B5cmlnaHQ6KCk9PkFMLENvcm5lckRvd25MZWZ0OigpPT5FTCxDb3JuZXJEb3duUmlnaHQ6KCk9PiRMLENvcm5lckxlZnREb3duOigpPT5QTCxDb3JuZXJMZWZ0VXA6KCk9PklMLENvcm5lclJpZ2h0RG93bjooKT0+TkwsQ29ybmVyUmlnaHRVcDooKT0+RkwsQ29ybmVyVXBMZWZ0OigpPT5PTCxDb3JuZXJVcFJpZ2h0OigpPT5CTCxDcHU6KCk9PlJMLENyZWF0aXZlQ29tbW9uczooKT0+SEwsQ3JlZGl0Q2FyZDooKT0+cUwsQ3JvaXNzYW50OigpPT5qTCxDcm9wOigpPT5WTCxDcm9zczooKT0+VUwsQ3Jvc3NoYWlyOigpPT5XTCxDcm93bjooKT0+R0wsQ3Vib2lkOigpPT5aTCxDdXBTb2RhOigpPT5ZTCxDdXJseUJyYWNlczooKT0+a3UsQ3VycmVuY3k6KCk9PlhMLEN5bGluZGVyOigpPT5RTCxEYW06KCk9PktMLERhdGFiYXNlOigpPT5hRCxEYXRhYmFzZUJhY2t1cDooKT0+SkwsRGF0YWJhc2VTZWFyY2g6KCk9PnRELERhdGFiYXNlWmFwOigpPT5lRCxEZWNpbWFsc0Fycm93TGVmdDooKT0+ckQsRGVjaW1hbHNBcnJvd1JpZ2h0OigpPT5pRCxEZWxldGU6KCk9Pm9ELERlc3NlcnQ6KCk9PnNELERpYW1ldGVyOigpPT5uRCxEaWFtb25kOigpPT5kRCxEaWFtb25kTWludXM6KCk9PmxELERpYW1vbmRQZXJjZW50OigpPT5TZixEaWFtb25kUGx1czooKT0+Y0QsRGljZTE6KCk9PnVELERpY2UyOigpPT5mRCxEaWNlMzooKT0+cEQsRGljZTQ6KCk9PmhELERpY2U1OigpPT5tRCxEaWNlNjooKT0+Z0QsRGljZXM6KCk9PnhELERpZmY6KCk9PmJELERpc2M6KCk9Pk1ELERpc2MyOigpPT52RCxEaXNjMzooKT0+d0QsRGlzY0FsYnVtOigpPT55RCxEaXZpZGU6KCk9PmtELERpdmlkZUNpcmNsZTooKT0+ZWYsRGl2aWRlU3F1YXJlOigpPT5NcCxEbmE6KCk9PkNELERuYU9mZjooKT0+U0QsRG9jazooKT0+ekQsRG9nOigpPT5fRCxEb2xsYXJTaWduOigpPT5URCxEb251dDooKT0+TEQsRG9vckNsb3NlZDooKT0+REQsRG9vckNsb3NlZExvY2tlZDooKT0+QUQsRG9vck9wZW46KCk9PkVELERvdDooKT0+JEQsRG90U3F1YXJlOigpPT5rcCxEb3dubG9hZDooKT0+UEQsRG93bmxvYWRDbG91ZDooKT0+YmYsRHJhZnRpbmdDb21wYXNzOigpPT5ORCxEcmFtYTooKT0+SUQsRHJpYmJibGU6KCk9PkZELERyaWxsOigpPT5PRCxEcm9uZTooKT0+UkQsRHJvcGxldDooKT0+QkQsRHJvcGxldE9mZjooKT0+SEQsRHJvcGxldHM6KCk9PnFELERydW06KCk9PmpELERydW1zdGljazooKT0+VkQsRHVtYmJlbGw6KCk9PlVELEVhcjooKT0+R0QsRWFyT2ZmOigpPT5XRCxFYXJ0aDooKT0+emYsRWFydGhMb2NrOigpPT5ZRCxFY2xpcHNlOigpPT5aRCxFZGl0OigpPT4kcyxFZGl0MjooKT0+RjUsRWRpdDM6KCk9Pk41LEVnZzooKT0+S0QsRWdnRnJpZWQ6KCk9PlFELEVnZ09mZjooKT0+WEQsRWxsaXBzZTooKT0+SkQsRWxsaXBzaXM6KCk9Pl9mLEVsbGlwc2lzVmVydGljYWw6KCk9PkNmLEVxdWFsOigpPT5yQSxFcXVhbEFwcHJveGltYXRlbHk6KCk9PmVBLEVxdWFsTm90OigpPT50QSxFcXVhbFNxdWFyZTooKT0+U3AsRXJhc2VyOigpPT5hQSxFdGhlcm5ldFBvcnQ6KCk9PmlBLEV1cm86KCk9Pm9BLEV2Q2hhcmdlcjooKT0+c0EsRXhwYW5kOigpPT5uQSxFeHRlcm5hbExpbms6KCk9PmxBLEV5ZTooKT0+dUEsRXllQ2xvc2VkOigpPT5kQSxFeWVPZmY6KCk9PmNBLEZhY2Vib29rOigpPT5mQSxGYWN0b3J5OigpPT5wQSxGYW46KCk9PmhBLEZhc3RGb3J3YXJkOigpPT5tQSxGZWF0aGVyOigpPT5nQSxGZW5jZTooKT0+eEEsRmVycmlzV2hlZWw6KCk9PmJBLEZpZ21hOigpPT52QSxGaWxlOigpPT5ZQSxGaWxlQXJjaGl2ZTooKT0+eUEsRmlsZUF1ZGlvOigpPT5MYyxGaWxlQXVkaW8yOigpPT5MYyxGaWxlQXhpczNEOigpPT5UZixGaWxlQXhpczNkOigpPT5UZixGaWxlQmFkZ2U6KCk9PkxmLEZpbGVCYWRnZTI6KCk9PkxmLEZpbGVCYXJDaGFydDooKT0+RWYsRmlsZUJhckNoYXJ0MjooKT0+JGYsRmlsZUJveDooKT0+d0EsRmlsZUJyYWNlczooKT0+QWYsRmlsZUJyYWNlc0Nvcm5lcjooKT0+RGYsRmlsZUNoYXJ0Q29sdW1uOigpPT4kZixGaWxlQ2hhcnRDb2x1bW5JbmNyZWFzaW5nOigpPT5FZixGaWxlQ2hhcnRMaW5lOigpPT5QZixGaWxlQ2hhcnRQaWU6KCk9PklmLEZpbGVDaGVjazooKT0+TUEsRmlsZUNoZWNrMjooKT0+TmYsRmlsZUNoZWNrQ29ybmVyOigpPT5OZixGaWxlQ2xvY2s6KCk9PmtBLEZpbGVDb2RlOigpPT5TQSxGaWxlQ29kZTI6KCk9PkZmLEZpbGVDb2RlQ29ybmVyOigpPT5GZixGaWxlQ29nOigpPT5PZixGaWxlQ29nMjooKT0+T2YsRmlsZURpZmY6KCk9PkNBLEZpbGVEaWdpdDooKT0+ekEsRmlsZURvd246KCk9Pl9BLEZpbGVFZGl0OigpPT5WZixGaWxlRXhjbGFtYXRpb25Qb2ludDooKT0+UmYsRmlsZUhlYWRwaG9uZTooKT0+TGMsRmlsZUhlYXJ0OigpPT5UQSxGaWxlSW1hZ2U6KCk9PkxBLEZpbGVJbnB1dDooKT0+REEsRmlsZUpzb246KCk9PkFmLEZpbGVKc29uMjooKT0+RGYsRmlsZUtleTooKT0+SGYsRmlsZUtleTI6KCk9PkhmLEZpbGVMaW5lQ2hhcnQ6KCk9PlBmLEZpbGVMb2NrOigpPT5CZixGaWxlTG9jazI6KCk9PkJmLEZpbGVNaW51czooKT0+QUEsRmlsZU1pbnVzMjooKT0+cWYsRmlsZU1pbnVzQ29ybmVyOigpPT5xZixGaWxlTXVzaWM6KCk9PkVBLEZpbGVPdXRwdXQ6KCk9PiRBLEZpbGVQZW46KCk9PlZmLEZpbGVQZW5MaW5lOigpPT5qZixGaWxlUGllQ2hhcnQ6KCk9PklmLEZpbGVQbGF5OigpPT5VZixGaWxlUGx1czooKT0+UEEsRmlsZVBsdXMyOigpPT5XZixGaWxlUGx1c0Nvcm5lcjooKT0+V2YsRmlsZVF1ZXN0aW9uOigpPT5HZixGaWxlUXVlc3Rpb25NYXJrOigpPT5HZixGaWxlU2NhbjooKT0+SUEsRmlsZVNlYXJjaDooKT0+TkEsRmlsZVNlYXJjaDI6KCk9PllmLEZpbGVTZWFyY2hDb3JuZXI6KCk9PllmLEZpbGVTaWduYWw6KCk9PlpmLEZpbGVTaWduYXR1cmU6KCk9PmpmLEZpbGVTbGlkZXJzOigpPT5GQSxGaWxlU3ByZWFkc2hlZXQ6KCk9Pk9BLEZpbGVTdGFjazooKT0+UkEsRmlsZVN5bWxpbms6KCk9PkJBLEZpbGVUZXJtaW5hbDooKT0+akEsRmlsZVRleHQ6KCk9PkhBLEZpbGVUeXBlOigpPT5xQSxGaWxlVHlwZTI6KCk9PlhmLEZpbGVUeXBlQ29ybmVyOigpPT5YZixGaWxlVXA6KCk9PlZBLEZpbGVVc2VyOigpPT5VQSxGaWxlVmlkZW86KCk9PlVmLEZpbGVWaWRlbzI6KCk9PlFmLEZpbGVWaWRlb0NhbWVyYTooKT0+UWYsRmlsZVZvbHVtZTooKT0+V0EsRmlsZVZvbHVtZTI6KCk9PlpmLEZpbGVXYXJuaW5nOigpPT5SZixGaWxlWDooKT0+R0EsRmlsZVgyOigpPT5LZixGaWxlWENvcm5lcjooKT0+S2YsRmlsZXM6KCk9PlpBLEZpbG06KCk9PlhBLEZpbHRlcjooKT0+YTUsRmlsdGVyWDooKT0+cjUsRmluZ2VycHJpbnQ6KCk9PkpmLEZpbmdlcnByaW50UGF0dGVybjooKT0+SmYsRmlyZUV4dGluZ3Vpc2hlcjooKT0+UUEsRmlzaDooKT0+ZUUsRmlzaE9mZjooKT0+S0EsRmlzaFN5bWJvbDooKT0+SkEsRmlzaGluZ0hvb2s6KCk9PnRFLEZpc2hpbmdSb2Q6KCk9PnJFLEZsYWc6KCk9Pm5FLEZsYWdPZmY6KCk9PmlFLEZsYWdUcmlhbmdsZUxlZnQ6KCk9PmFFLEZsYWdUcmlhbmdsZVJpZ2h0OigpPT5vRSxGbGFtZTooKT0+bEUsRmxhbWVLaW5kbGluZzooKT0+c0UsRmxhc2hsaWdodDooKT0+ZEUsRmxhc2hsaWdodE9mZjooKT0+Y0UsRmxhc2tDb25pY2FsOigpPT51RSxGbGFza0NvbmljYWxPZmY6KCk9PmZFLEZsYXNrUm91bmQ6KCk9PnBFLEZsaXBIb3Jpem9udGFsOigpPT5scCxGbGlwSG9yaXpvbnRhbDI6KCk9PmhFLEZsaXBWZXJ0aWNhbDooKT0+dXAsRmxpcFZlcnRpY2FsMjooKT0+bUUsRmxvd2VyOigpPT54RSxGbG93ZXIyOigpPT5nRSxGb2N1czooKT0+YkUsRm9sZEhvcml6b250YWw6KCk9PnZFLEZvbGRWZXJ0aWNhbDooKT0+eUUsRm9sZGVyOigpPT5ZRSxGb2xkZXJBcmNoaXZlOigpPT53RSxGb2xkZXJDaGVjazooKT0+TUUsRm9sZGVyQ2xvY2s6KCk9PmtFLEZvbGRlckNsb3NlZDooKT0+U0UsRm9sZGVyQ29kZTooKT0+ekUsRm9sZGVyQ29nOigpPT5lNSxGb2xkZXJDb2cyOigpPT5lNSxGb2xkZXJEb3Q6KCk9PkNFLEZvbGRlckRvd246KCk9Pl9FLEZvbGRlckVkaXQ6KCk9PnQ1LEZvbGRlckdpdDooKT0+TEUsRm9sZGVyR2l0MjooKT0+VEUsRm9sZGVySGVhcnQ6KCk9PkRFLEZvbGRlcklucHV0OigpPT5BRSxGb2xkZXJLYW5iYW46KCk9PkVFLEZvbGRlcktleTooKT0+JEUsRm9sZGVyTG9jazooKT0+UEUsRm9sZGVyTWludXM6KCk9PklFLEZvbGRlck9wZW46KCk9PkZFLEZvbGRlck9wZW5Eb3Q6KCk9Pk5FLEZvbGRlck91dHB1dDooKT0+T0UsRm9sZGVyUGVuOigpPT50NSxGb2xkZXJQbHVzOigpPT5SRSxGb2xkZXJSb290OigpPT5CRSxGb2xkZXJTZWFyY2g6KCk9PnFFLEZvbGRlclNlYXJjaDI6KCk9PkhFLEZvbGRlclN5bWxpbms6KCk9PmpFLEZvbGRlclN5bmM6KCk9PlZFLEZvbGRlclRyZWU6KCk9PlVFLEZvbGRlclVwOigpPT5XRSxGb2xkZXJYOigpPT5HRSxGb2xkZXJzOigpPT5aRSxGb290cHJpbnRzOigpPT5YRSxGb3JrS25pZmU6KCk9Pm04LEZvcmtLbmlmZUNyb3NzZWQ6KCk9Pmg4LEZvcmtsaWZ0OigpPT5LRSxGb3JtOigpPT5RRSxGb3JtSW5wdXQ6KCk9PlI1LEZvcndhcmQ6KCk9PmUkLEZyYW1lOigpPT5KRSxGcmFtZXI6KCk9PnQkLEZyb3duOigpPT5yJCxGdWVsOigpPT5hJCxGdWxsc2NyZWVuOigpPT5pJCxGdW5jdGlvblNxdWFyZTooKT0+enAsRnVubmVsOigpPT5hNSxGdW5uZWxQbHVzOigpPT5vJCxGdW5uZWxYOigpPT5yNSxHYWxsZXJ5SG9yaXpvbnRhbDooKT0+cyQsR2FsbGVyeUhvcml6b250YWxFbmQ6KCk9Pm4kLEdhbGxlcnlUaHVtYm5haWxzOigpPT5sJCxHYWxsZXJ5VmVydGljYWw6KCk9PmQkLEdhbGxlcnlWZXJ0aWNhbEVuZDooKT0+YyQsR2FtZXBhZDooKT0+cCQsR2FtZXBhZDI6KCk9PnUkLEdhbWVwYWREaXJlY3Rpb25hbDooKT0+ZiQsR2FudHRDaGFydDooKT0+SXUsR2FudHRDaGFydFNxdWFyZTooKT0+JGMsR2F1Z2U6KCk9PmgkLEdhdWdlQ2lyY2xlOigpPT50ZixHYXZlbDooKT0+bSQsR2VtOigpPT54JCxHZW9yZ2lhbkxhcmk6KCk9PmckLEdob3N0OigpPT5iJCxHaWZ0OigpPT52JCxHaXRCcmFuY2g6KCk9Pk0kLEdpdEJyYW5jaE1pbnVzOigpPT55JCxHaXRCcmFuY2hQbHVzOigpPT53JCxHaXRDb21taXQ6KCk9Pmk1LEdpdENvbW1pdEhvcml6b250YWw6KCk9Pmk1LEdpdENvbW1pdFZlcnRpY2FsOigpPT5rJCxHaXRDb21wYXJlOigpPT56JCxHaXRDb21wYXJlQXJyb3dzOigpPT5TJCxHaXRGb3JrOigpPT5fJCxHaXRHcmFwaDooKT0+QyQsR2l0TWVyZ2U6KCk9PkwkLEdpdE1lcmdlQ29uZmxpY3Q6KCk9PlQkLEdpdFB1bGxSZXF1ZXN0OigpPT5JJCxHaXRQdWxsUmVxdWVzdEFycm93OigpPT5EJCxHaXRQdWxsUmVxdWVzdENsb3NlZDooKT0+QSQsR2l0UHVsbFJlcXVlc3RDcmVhdGU6KCk9PiQkLEdpdFB1bGxSZXF1ZXN0Q3JlYXRlQXJyb3c6KCk9PkUkLEdpdFB1bGxSZXF1ZXN0RHJhZnQ6KCk9PlAkLEdpdGh1YjooKT0+TiQsR2l0bGFiOigpPT5GJCxHbGFzc1dhdGVyOigpPT5PJCxHbGFzc2VzOigpPT5CJCxHbG9iZTooKT0+aiQsR2xvYmUyOigpPT56ZixHbG9iZUxvY2s6KCk9PlIkLEdsb2JlT2ZmOigpPT5xJCxHbG9iZVg6KCk9PkgkLEdvYWw6KCk9PlYkLEdwdTooKT0+VSQsR3JhYjooKT0+YzUsR3JhZHVhdGlvbkNhcDooKT0+VyQsR3JhcGU6KCk9PkckLEdyaWQ6KCk9PkRjLEdyaWQyWDI6KCk9Pmw1LEdyaWQyWDJDaGVjazooKT0+bzUsR3JpZDJYMlBsdXM6KCk9Pm41LEdyaWQyWDJYOigpPT5zNSxHcmlkMngyOigpPT5sNSxHcmlkMngyQ2hlY2s6KCk9Pm81LEdyaWQyeDJQbHVzOigpPT5uNSxHcmlkMngyWDooKT0+czUsR3JpZDNYMzooKT0+RGMsR3JpZDN4MjooKT0+WSQsR3JpZDN4MzooKT0+RGMsR3JpcDooKT0+USQsR3JpcEhvcml6b250YWw6KCk9PlokLEdyaXBWZXJ0aWNhbDooKT0+WCQsR3JvdXA6KCk9PkskLEd1aXRhcjooKT0+SiQsSGFtOigpPT5lUCxIYW1idXJnZXI6KCk9PnRQLEhhbW1lcjooKT0+clAsSGFuZDooKT0+Y1AsSGFuZENvaW5zOigpPT5hUCxIYW5kRmlzdDooKT0+aVAsSGFuZEdyYWI6KCk9PmM1LEhhbmRIZWFydDooKT0+b1AsSGFuZEhlbHBpbmc6KCk9PmQ1LEhhbmRNZXRhbDooKT0+blAsSGFuZFBsYXR0ZXI6KCk9PnNQLEhhbmRiYWc6KCk9PmxQLEhhbmRzaGFrZTooKT0+ZlAsSGFyZERyaXZlOigpPT51UCxIYXJkRHJpdmVEb3dubG9hZDooKT0+ZFAsSGFyZERyaXZlVXBsb2FkOigpPT5wUCxIYXJkSGF0OigpPT5oUCxIYXNoOigpPT5tUCxIYXRHbGFzc2VzOigpPT5nUCxIYXplOigpPT54UCxIZDooKT0+YlAsSGRtaVBvcnQ6KCk9PnZQLEhlYWRpbmc6KCk9PnpQLEhlYWRpbmcxOigpPT55UCxIZWFkaW5nMjooKT0+d1AsSGVhZGluZzM6KCk9Pk1QLEhlYWRpbmc0OigpPT5rUCxIZWFkaW5nNTooKT0+U1AsSGVhZGluZzY6KCk9PkNQLEhlYWRwaG9uZU9mZjooKT0+VFAsSGVhZHBob25lczooKT0+X1AsSGVhZHNldDooKT0+TFAsSGVhcnQ6KCk9Pk5QLEhlYXJ0Q3JhY2s6KCk9PkFQLEhlYXJ0SGFuZHNoYWtlOigpPT5EUCxIZWFydE1pbnVzOigpPT4kUCxIZWFydE9mZjooKT0+RVAsSGVhcnRQbHVzOigpPT5QUCxIZWFydFB1bHNlOigpPT5JUCxIZWF0ZXI6KCk9PkZQLEhlbGljb3B0ZXI6KCk9Pk9QLEhlbHBDaXJjbGU6KCk9Pl9jLEhlbHBpbmdIYW5kOigpPT5kNSxIZXhhZ29uOigpPT5SUCxIaWdobGlnaHRlcjooKT0+QlAsSGlzdG9yeTooKT0+SFAsSG9tZTooKT0+ZjUsSG9wOigpPT5WUCxIb3BPZmY6KCk9PnFQLEhvc3BpdGFsOigpPT5qUCxIb3RlbDooKT0+VVAsSG91cmdsYXNzOigpPT5XUCxIb3VzZTooKT0+ZjUsSG91c2VIZWFydDooKT0+R1AsSG91c2VQbHVnOigpPT5aUCxIb3VzZVBsdXM6KCk9PllQLEhvdXNlV2lmaTooKT0+WFAsSWNlQ3JlYW06KCk9PnA1LEljZUNyZWFtMjooKT0+dTUsSWNlQ3JlYW1Cb3dsOigpPT51NSxJY2VDcmVhbUNvbmU6KCk9PnA1LElkQ2FyZDooKT0+UVAsSWRDYXJkTGFueWFyZDooKT0+S1AsSW1hZ2U6KCk9Pm5JLEltYWdlRG93bjooKT0+SlAsSW1hZ2VNaW51czooKT0+ZUksSW1hZ2VPZmY6KCk9PnRJLEltYWdlUGxheTooKT0+ckksSW1hZ2VQbHVzOigpPT5hSSxJbWFnZVVwOigpPT5pSSxJbWFnZVVwc2NhbGU6KCk9Pm9JLEltYWdlczooKT0+c0ksSW1wb3J0OigpPT5sSSxJbmJveDooKT0+Y0ksSW5kZW50OigpPT5FYyxJbmRlbnREZWNyZWFzZTooKT0+QWMsSW5kZW50SW5jcmVhc2U6KCk9PkVjLEluZGlhblJ1cGVlOigpPT51SSxJbmZpbml0eTooKT0+ZEksSW5mbzooKT0+ZkksSW5zcGVjdDooKT0+QXAsSW5zcGVjdGlvblBhbmVsOigpPT5wSSxJbnN0YWdyYW06KCk9PmhJLEl0YWxpYzooKT0+bUksSXRlcmF0aW9uQ2N3OigpPT54SSxJdGVyYXRpb25DdzooKT0+Z0ksSmFwYW5lc2VZZW46KCk9PnZJLEpveXN0aWNrOigpPT5iSSxLYW5iYW46KCk9PnlJLEthbmJhblNxdWFyZTooKT0+Q3AsS2FuYmFuU3F1YXJlRGFzaGVkOigpPT52cCxLYXlhazooKT0+d0ksS2V5OigpPT5TSSxLZXlSb3VuZDooKT0+a0ksS2V5U3F1YXJlOigpPT5NSSxLZXlib2FyZDooKT0+Q0ksS2V5Ym9hcmRNdXNpYzooKT0+X0ksS2V5Ym9hcmRPZmY6KCk9PnpJLExhbXA6KCk9PlBJLExhbXBDZWlsaW5nOigpPT5USSxMYW1wRGVzazooKT0+TEksTGFtcEZsb29yOigpPT5ESSxMYW1wV2FsbERvd246KCk9PkFJLExhbXBXYWxsVXA6KCk9PkVJLExhbmRQbG90OigpPT4kSSxMYW5kbWFyazooKT0+SUksTGFuZ3VhZ2VzOigpPT5OSSxMYXB0b3A6KCk9Pk9JLExhcHRvcDI6KCk9Pmg1LExhcHRvcE1pbmltYWw6KCk9Pmg1LExhcHRvcE1pbmltYWxDaGVjazooKT0+RkksTGFzc286KCk9PkJJLExhc3NvU2VsZWN0OigpPT5SSSxMYXVnaDooKT0+SEksTGF5ZXJzOigpPT5tNSxMYXllcnMyOigpPT5xSSxMYXllcnMzOigpPT5tNSxMYXllcnNQbHVzOigpPT5qSSxMYXlvdXQ6KCk9Pkk1LExheW91dERhc2hib2FyZDooKT0+VUksTGF5b3V0R3JpZDooKT0+VkksTGF5b3V0TGlzdDooKT0+V0ksTGF5b3V0UGFuZWxMZWZ0OigpPT5HSSxMYXlvdXRQYW5lbFRvcDooKT0+WUksTGF5b3V0VGVtcGxhdGU6KCk9PlpJLExlYWY6KCk9PktJLExlYWZ5R3JlZW46KCk9PlhJLExlY3Rlcm46KCk9PlFJLExlbnNDb25jYXZlOigpPT5KSSxMZW5zQ29udmV4OigpPT5lTixMZXR0ZXJUZXh0OigpPT5KcCxMaWJyYXJ5OigpPT5yTixMaWJyYXJ5QmlnOigpPT50TixMaWJyYXJ5U3F1YXJlOigpPT5fcCxMaWZlQnVveTooKT0+YU4sTGlnYXR1cmU6KCk9PmlOLExpZ2h0YnVsYjooKT0+b04sTGlnaHRidWxiT2ZmOigpPT5zTixMaW5lQ2hhcnQ6KCk9PkV1LExpbmVEb3RSaWdodEhvcml6b250YWw6KCk9Pm5OLExpbmVTcXVpZ2dsZTooKT0+bE4sTGluazooKT0+dU4sTGluazI6KCk9PmROLExpbmsyT2ZmOigpPT5jTixMaW5rZWRpbjooKT0+Zk4sTGlzdDooKT0+QU4sTGlzdENoZWNrOigpPT5wTixMaXN0Q2hlY2tzOigpPT5oTixMaXN0Q2hldnJvbnNEb3duVXA6KCk9Pm1OLExpc3RDaGV2cm9uc1VwRG93bjooKT0+eE4sTGlzdENvbGxhcHNlOigpPT5nTixMaXN0RW5kOigpPT5iTixMaXN0RmlsdGVyOigpPT55TixMaXN0RmlsdGVyUGx1czooKT0+dk4sTGlzdEluZGVudERlY3JlYXNlOigpPT5BYyxMaXN0SW5kZW50SW5jcmVhc2U6KCk9PkVjLExpc3RNaW51czooKT0+TU4sTGlzdE11c2ljOigpPT53TixMaXN0T3JkZXJlZDooKT0+a04sTGlzdFBsdXM6KCk9PnpOLExpc3RSZXN0YXJ0OigpPT5TTixMaXN0U3RhcnQ6KCk9PkNOLExpc3RUb2RvOigpPT5fTixMaXN0VHJlZTooKT0+VE4sTGlzdFZpZGVvOigpPT5MTixMaXN0WDooKT0+RE4sTG9hZGVyOigpPT4kTixMb2FkZXIyOigpPT5nNSxMb2FkZXJDaXJjbGU6KCk9Pmc1LExvYWRlclBpbndoZWVsOigpPT5FTixMb2NhdGU6KCk9Pk5OLExvY2F0ZUZpeGVkOigpPT5QTixMb2NhdGVPZmY6KCk9PklOLExvY2F0aW9uRWRpdDooKT0+eTUsTG9jazooKT0+Uk4sTG9ja0tleWhvbGU6KCk9PkZOLExvY2tLZXlob2xlT3BlbjooKT0+eDUsTG9ja09wZW46KCk9PmI1LExvZ0luOigpPT5PTixMb2dPdXQ6KCk9PkJOLExvZ3M6KCk9PkhOLExvbGxpcG9wOigpPT5xTixMdWdnYWdlOigpPT5qTixNU3F1YXJlOigpPT5UcCxNYWduZXQ6KCk9PlZOLE1haWw6KCk9PktOLE1haWxDaGVjazooKT0+VU4sTWFpbE1pbnVzOigpPT5XTixNYWlsT3BlbjooKT0+R04sTWFpbFBsdXM6KCk9PllOLE1haWxRdWVzdGlvbjooKT0+djUsTWFpbFF1ZXN0aW9uTWFyazooKT0+djUsTWFpbFNlYXJjaDooKT0+Wk4sTWFpbFdhcm5pbmc6KCk9PlhOLE1haWxYOigpPT5RTixNYWlsYm94OigpPT5KTixNYWlsczooKT0+ZUYsTWFwOigpPT5nRixNYXBNaW51czooKT0+dEYsTWFwUGluOigpPT5mRixNYXBQaW5DaGVjazooKT0+aUYsTWFwUGluQ2hlY2tJbnNpZGU6KCk9PnJGLE1hcFBpbkhvdXNlOigpPT5hRixNYXBQaW5NaW51czooKT0+bkYsTWFwUGluTWludXNJbnNpZGU6KCk9Pm9GLE1hcFBpbk9mZjooKT0+c0YsTWFwUGluUGVuOigpPT55NSxNYXBQaW5QbHVzOigpPT5sRixNYXBQaW5QbHVzSW5zaWRlOigpPT5jRixNYXBQaW5YOigpPT51RixNYXBQaW5YSW5zaWRlOigpPT5kRixNYXBQaW5uZWQ6KCk9PnBGLE1hcFBsdXM6KCk9PmhGLE1hcnM6KCk9PnhGLE1hcnNTdHJva2U6KCk9Pm1GLE1hcnRpbmk6KCk9PmJGLE1heGltaXplOigpPT55RixNYXhpbWl6ZTI6KCk9PnZGLE1lZGFsOigpPT5NRixNZWdhcGhvbmU6KCk9PmtGLE1lZ2FwaG9uZU9mZjooKT0+d0YsTWVoOigpPT5TRixNZW1vcnlTdGljazooKT0+Q0YsTWVudTooKT0+ekYsTWVudVNxdWFyZTooKT0+THAsTWVyZ2U6KCk9Pl9GLE1lc3NhZ2VDaXJjbGU6KCk9Pk9GLE1lc3NhZ2VDaXJjbGVDaGVjazooKT0+VEYsTWVzc2FnZUNpcmNsZUNvZGU6KCk9PkxGLE1lc3NhZ2VDaXJjbGVEYXNoZWQ6KCk9PkRGLE1lc3NhZ2VDaXJjbGVIZWFydDooKT0+QUYsTWVzc2FnZUNpcmNsZU1vcmU6KCk9PkVGLE1lc3NhZ2VDaXJjbGVPZmY6KCk9PiRGLE1lc3NhZ2VDaXJjbGVQbHVzOigpPT5QRixNZXNzYWdlQ2lyY2xlUXVlc3Rpb246KCk9Pnc1LE1lc3NhZ2VDaXJjbGVRdWVzdGlvbk1hcms6KCk9Pnc1LE1lc3NhZ2VDaXJjbGVSZXBseTooKT0+SUYsTWVzc2FnZUNpcmNsZVdhcm5pbmc6KCk9Pk5GLE1lc3NhZ2VDaXJjbGVYOigpPT5GRixNZXNzYWdlU3F1YXJlOigpPT50TyxNZXNzYWdlU3F1YXJlQ2hlY2s6KCk9PlJGLE1lc3NhZ2VTcXVhcmVDb2RlOigpPT5CRixNZXNzYWdlU3F1YXJlRGFzaGVkOigpPT5IRixNZXNzYWdlU3F1YXJlRGlmZjooKT0+cUYsTWVzc2FnZVNxdWFyZURvdDooKT0+akYsTWVzc2FnZVNxdWFyZUhlYXJ0OigpPT5WRixNZXNzYWdlU3F1YXJlTG9jazooKT0+VUYsTWVzc2FnZVNxdWFyZU1vcmU6KCk9PldGLE1lc3NhZ2VTcXVhcmVPZmY6KCk9PkdGLE1lc3NhZ2VTcXVhcmVQbHVzOigpPT5ZRixNZXNzYWdlU3F1YXJlUXVvdGU6KCk9PlpGLE1lc3NhZ2VTcXVhcmVSZXBseTooKT0+WEYsTWVzc2FnZVNxdWFyZVNoYXJlOigpPT5RRixNZXNzYWdlU3F1YXJlVGV4dDooKT0+S0YsTWVzc2FnZVNxdWFyZVdhcm5pbmc6KCk9PkpGLE1lc3NhZ2VTcXVhcmVYOigpPT5lTyxNZXNzYWdlc1NxdWFyZTooKT0+ck8sTWV0cm9ub21lOigpPT5hTyxNaWM6KCk9Pm9PLE1pYzI6KCk9Pk01LE1pY09mZjooKT0+aU8sTWljVm9jYWw6KCk9Pk01LE1pY3JvY2hpcDooKT0+bk8sTWljcm9zY29wZTooKT0+Y08sTWljcm93YXZlOigpPT5zTyxNaWxlc3RvbmU6KCk9PmxPLE1pbGs6KCk9PmZPLE1pbGtPZmY6KCk9PmRPLE1pbmltaXplOigpPT5wTyxNaW5pbWl6ZTI6KCk9PnVPLE1pbnVzOigpPT5oTyxNaW51c0NpcmNsZTooKT0+cmYsTWludXNTcXVhcmU6KCk9PkRwLE1pcnJvclJlY3Rhbmd1bGFyOigpPT5tTyxNaXJyb3JSb3VuZDooKT0+Z08sTW9uaXRvcjooKT0+RE8sTW9uaXRvckNoZWNrOigpPT54TyxNb25pdG9yQ2xvdWQ6KCk9PmJPLE1vbml0b3JDb2c6KCk9PnZPLE1vbml0b3JEb3Q6KCk9PnlPLE1vbml0b3JEb3duOigpPT53TyxNb25pdG9yT2ZmOigpPT5NTyxNb25pdG9yUGF1c2U6KCk9PmtPLE1vbml0b3JQbGF5OigpPT5TTyxNb25pdG9yU21hcnRwaG9uZTooKT0+ek8sTW9uaXRvclNwZWFrZXI6KCk9PkNPLE1vbml0b3JTdG9wOigpPT5fTyxNb25pdG9yVXA6KCk9PlRPLE1vbml0b3JYOigpPT5MTyxNb29uOigpPT5FTyxNb29uU3RhcjooKT0+QU8sTW9yZUhvcml6b250YWw6KCk9Pl9mLE1vcmVWZXJ0aWNhbDooKT0+Q2YsTW90b3JiaWtlOigpPT4kTyxNb3VudGFpbjooKT0+SU8sTW91bnRhaW5Tbm93OigpPT5QTyxNb3VzZTooKT0+Vk8sTW91c2VMZWZ0OigpPT5OTyxNb3VzZU9mZjooKT0+Rk8sTW91c2VQb2ludGVyOigpPT5xTyxNb3VzZVBvaW50ZXIyOigpPT5STyxNb3VzZVBvaW50ZXIyT2ZmOigpPT5PTyxNb3VzZVBvaW50ZXJCYW46KCk9PkJPLE1vdXNlUG9pbnRlckNsaWNrOigpPT5ITyxNb3VzZVBvaW50ZXJTcXVhcmVEYXNoZWQ6KCk9PnlwLE1vdXNlUmlnaHQ6KCk9PmpPLE1vdmU6KCk9PmFSLE1vdmUzRDooKT0+azUsTW92ZTNkOigpPT5rNSxNb3ZlRGlhZ29uYWw6KCk9PldPLE1vdmVEaWFnb25hbDI6KCk9PlVPLE1vdmVEb3duOigpPT5aTyxNb3ZlRG93bkxlZnQ6KCk9PllPLE1vdmVEb3duUmlnaHQ6KCk9PkdPLE1vdmVIb3Jpem9udGFsOigpPT5YTyxNb3ZlTGVmdDooKT0+S08sTW92ZVJpZ2h0OigpPT5RTyxNb3ZlVXA6KCk9PnRSLE1vdmVVcExlZnQ6KCk9PkpPLE1vdmVVcFJpZ2h0OigpPT5lUixNb3ZlVmVydGljYWw6KCk9PnJSLE11c2ljOigpPT5zUixNdXNpYzI6KCk9PmlSLE11c2ljMzooKT0+b1IsTXVzaWM0OigpPT5uUixOYXZpZ2F0aW9uOigpPT51UixOYXZpZ2F0aW9uMjooKT0+Y1IsTmF2aWdhdGlvbjJPZmY6KCk9PmxSLE5hdmlnYXRpb25PZmY6KCk9PmRSLE5ldHdvcms6KCk9PmZSLE5ld3NwYXBlcjooKT0+aFIsTmZjOigpPT5wUixOb25CaW5hcnk6KCk9Pm1SLE5vdGVib29rOigpPT53UixOb3RlYm9va1BlbjooKT0+Z1IsTm90ZWJvb2tUYWJzOigpPT54UixOb3RlYm9va1RleHQ6KCk9PmJSLE5vdGVwYWRUZXh0OigpPT55UixOb3RlcGFkVGV4dERhc2hlZDooKT0+dlIsTnV0OigpPT5TUixOdXRPZmY6KCk9Pk1SLE9jdGFnb246KCk9PnpSLE9jdGFnb25BbGVydDooKT0+UzUsT2N0YWdvbk1pbnVzOigpPT5rUixPY3RhZ29uUGF1c2U6KCk9Pno1LE9jdGFnb25YOigpPT5DNSxPbWVnYTooKT0+Q1IsT3B0aW9uOigpPT5fUixPcmJpdDooKT0+VFIsT3JpZ2FtaTooKT0+TFIsT3V0ZGVudDooKT0+QWMsUGFja2FnZTooKT0+RlIsUGFja2FnZTI6KCk9PkRSLFBhY2thZ2VDaGVjazooKT0+QVIsUGFja2FnZU1pbnVzOigpPT5FUixQYWNrYWdlT3BlbjooKT0+JFIsUGFja2FnZVBsdXM6KCk9PlBSLFBhY2thZ2VTZWFyY2g6KCk9PklSLFBhY2thZ2VYOigpPT5OUixQYWludEJ1Y2tldDooKT0+T1IsUGFpbnRSb2xsZXI6KCk9PlJSLFBhaW50YnJ1c2g6KCk9PkJSLFBhaW50YnJ1c2gyOigpPT5fNSxQYWludGJydXNoVmVydGljYWw6KCk9Pl81LFBhbGV0dGU6KCk9PkhSLFBhbG10cmVlOigpPT5hOCxQYW5kYTooKT0+cVIsUGFuZWxCb3R0b206KCk9PlVSLFBhbmVsQm90dG9tQ2xvc2U6KCk9PmpSLFBhbmVsQm90dG9tRGFzaGVkOigpPT5UNSxQYW5lbEJvdHRvbUluYWN0aXZlOigpPT5UNSxQYW5lbEJvdHRvbU9wZW46KCk9PlZSLFBhbmVsTGVmdDooKT0+RTUsUGFuZWxMZWZ0Q2xvc2U6KCk9Pkw1LFBhbmVsTGVmdERhc2hlZDooKT0+RDUsUGFuZWxMZWZ0SW5hY3RpdmU6KCk9PkQ1LFBhbmVsTGVmdE9wZW46KCk9PkE1LFBhbmVsTGVmdFJpZ2h0RGFzaGVkOigpPT5XUixQYW5lbFJpZ2h0OigpPT5aUixQYW5lbFJpZ2h0Q2xvc2U6KCk9PkdSLFBhbmVsUmlnaHREYXNoZWQ6KCk9PiQ1LFBhbmVsUmlnaHRJbmFjdGl2ZTooKT0+JDUsUGFuZWxSaWdodE9wZW46KCk9PllSLFBhbmVsVG9wOigpPT5KUixQYW5lbFRvcEJvdHRvbURhc2hlZDooKT0+WFIsUGFuZWxUb3BDbG9zZTooKT0+UVIsUGFuZWxUb3BEYXNoZWQ6KCk9PlA1LFBhbmVsVG9wSW5hY3RpdmU6KCk9PlA1LFBhbmVsVG9wT3BlbjooKT0+S1IsUGFuZWxzTGVmdEJvdHRvbTooKT0+ZUIsUGFuZWxzTGVmdFJpZ2h0OigpPT5NZixQYW5lbHNSaWdodEJvdHRvbTooKT0+dEIsUGFuZWxzVG9wQm90dG9tOigpPT5xNSxQYW5lbHNUb3BMZWZ0OigpPT5JNSxQYXBlcmNsaXA6KCk9PnJCLFBhcmVudGhlc2VzOigpPT5hQixQYXJraW5nQ2lyY2xlOigpPT5hZixQYXJraW5nQ2lyY2xlT2ZmOigpPT5vZixQYXJraW5nTWV0ZXI6KCk9PmlCLFBhcmtpbmdTcXVhcmU6KCk9PiRwLFBhcmtpbmdTcXVhcmVPZmY6KCk9PkVwLFBhcnR5UG9wcGVyOigpPT5vQixQYXVzZTooKT0+bkIsUGF1c2VDaXJjbGU6KCk9Pm5mLFBhdXNlT2N0YWdvbjooKT0+ejUsUGF3UHJpbnQ6KCk9PnNCLFBjQ2FzZTooKT0+bEIsUGVuOigpPT5GNSxQZW5Cb3g6KCk9PiRzLFBlbkxpbmU6KCk9Pk41LFBlbk9mZjooKT0+Y0IsUGVuU3F1YXJlOigpPT4kcyxQZW5Ub29sOigpPT5kQixQZW5jaWw6KCk9PmhCLFBlbmNpbExpbmU6KCk9PnVCLFBlbmNpbE9mZjooKT0+ZkIsUGVuY2lsUnVsZXI6KCk9PnBCLFBlbnRhZ29uOigpPT5nQixQZXJjZW50OigpPT5tQixQZXJjZW50Q2lyY2xlOigpPT5zZixQZXJjZW50RGlhbW9uZDooKT0+U2YsUGVyY2VudFNxdWFyZTooKT0+UHAsUGVyc29uU3RhbmRpbmc6KCk9PnhCLFBoaWxpcHBpbmVQZXNvOigpPT5iQixQaG9uZTooKT0+ekIsUGhvbmVDYWxsOigpPT52QixQaG9uZUZvcndhcmRlZDooKT0+eUIsUGhvbmVJbmNvbWluZzooKT0+d0IsUGhvbmVNaXNzZWQ6KCk9Pk1CLFBob25lT2ZmOigpPT5rQixQaG9uZU91dGdvaW5nOigpPT5TQixQaTooKT0+Q0IsUGlTcXVhcmU6KCk9PklwLFBpYW5vOigpPT5fQixQaWNrYXhlOigpPT5UQixQaWN0dXJlSW5QaWN0dXJlOigpPT5EQixQaWN0dXJlSW5QaWN0dXJlMjooKT0+TEIsUGllQ2hhcnQ6KCk9Pk51LFBpZ2d5QmFuazooKT0+QUIsUGlsY3JvdzooKT0+UEIsUGlsY3Jvd0xlZnQ6KCk9PkVCLFBpbGNyb3dSaWdodDooKT0+JEIsUGlsY3Jvd1NxdWFyZTooKT0+TnAsUGlsbDooKT0+TkIsUGlsbEJvdHRsZTooKT0+SUIsUGluOigpPT5PQixQaW5PZmY6KCk9PkZCLFBpcGV0dGU6KCk9PlJCLFBpenphOigpPT5CQixQbGFuZTooKT0+akIsUGxhbmVMYW5kaW5nOigpPT5IQixQbGFuZVRha2VvZmY6KCk9PnFCLFBsYXk6KCk9PlZCLFBsYXlDaXJjbGU6KCk9PmxmLFBsYXlTcXVhcmU6KCk9PkZwLFBsdWc6KCk9PldCLFBsdWcyOigpPT5VQixQbHVnWmFwOigpPT5PNSxQbHVnWmFwMjooKT0+TzUsUGx1czooKT0+R0IsUGx1c0NpcmNsZTooKT0+Y2YsUGx1c1NxdWFyZTooKT0+T3AsUG9ja2V0OigpPT5aQixQb2NrZXRLbmlmZTooKT0+WUIsUG9kY2FzdDooKT0+WEIsUG9pbnRlcjooKT0+UUIsUG9pbnRlck9mZjooKT0+S0IsUG9wY29ybjooKT0+SkIsUG9wc2ljbGU6KCk9PmVILFBvdW5kU3Rlcmxpbmc6KCk9PnRILFBvd2VyOigpPT5hSCxQb3dlckNpcmNsZTooKT0+ZGYsUG93ZXJPZmY6KCk9PnJILFBvd2VyU3F1YXJlOigpPT5ScCxQcmVzZW50YXRpb246KCk9PmlILFByaW50ZXI6KCk9PnNILFByaW50ZXJDaGVjazooKT0+b0gsUHJpbnRlclg6KCk9Pm5ILFByb2plY3RvcjooKT0+bEgsUHJvcG9ydGlvbnM6KCk9PmNILFB1enpsZTooKT0+ZEgsUHlyYW1pZDooKT0+dUgsUXJDb2RlOigpPT5mSCxRdW90ZTooKT0+aEgsUmFiYml0OigpPT5wSCxSYWRhcjooKT0+bUgsUmFkaWF0aW9uOigpPT5nSCxSYWRpY2FsOigpPT54SCxSYWRpbzooKT0+dkgsUmFkaW9SZWNlaXZlcjooKT0+YkgsUmFkaW9Ub3dlcjooKT0+eUgsUmFkaXVzOigpPT53SCxSYWlsU3ltYm9sOigpPT5NSCxSYWluYm93OigpPT5rSCxSYXQ6KCk9PlNILFJhdGlvOigpPT56SCxSZWNlaXB0OigpPT5JSCxSZWNlaXB0Q2VudDooKT0+X0gsUmVjZWlwdEV1cm86KCk9PkNILFJlY2VpcHRJbmRpYW5SdXBlZTooKT0+VEgsUmVjZWlwdEphcGFuZXNlWWVuOigpPT5MSCxSZWNlaXB0UG91bmRTdGVybGluZzooKT0+REgsUmVjZWlwdFJ1c3NpYW5SdWJsZTooKT0+QUgsUmVjZWlwdFN3aXNzRnJhbmM6KCk9PiRILFJlY2VpcHRUZXh0OigpPT5FSCxSZWNlaXB0VHVya2lzaExpcmE6KCk9PlBILFJlY3RhbmdsZUNpcmNsZTooKT0+TkgsUmVjdGFuZ2xlRWxsaXBzaXM6KCk9PlI1LFJlY3RhbmdsZUdvZ2dsZXM6KCk9PkZILFJlY3RhbmdsZUhvcml6b250YWw6KCk9Pk9ILFJlY3RhbmdsZVZlcnRpY2FsOigpPT5CSCxSZWN5Y2xlOigpPT5SSCxSZWRvOigpPT5qSCxSZWRvMjooKT0+SEgsUmVkb0RvdDooKT0+cUgsUmVmcmVzaENjdzooKT0+VUgsUmVmcmVzaENjd0RvdDooKT0+VkgsUmVmcmVzaEN3OigpPT5HSCxSZWZyZXNoQ3dPZmY6KCk9PldILFJlZnJpZ2VyYXRvcjooKT0+WUgsUmVnZXg6KCk9PlpILFJlbW92ZUZvcm1hdHRpbmc6KCk9PlhILFJlcGVhdDooKT0+SkgsUmVwZWF0MTooKT0+UUgsUmVwZWF0MjooKT0+S0gsUmVwbGFjZTooKT0+dHEsUmVwbGFjZUFsbDooKT0+ZXEsUmVwbHk6KCk9PmlxLFJlcGx5QWxsOigpPT5ycSxSZXdpbmQ6KCk9PmFxLFJpYmJvbjooKT0+b3EsUm9ja2V0OigpPT5ucSxSb2NraW5nQ2hhaXI6KCk9PnNxLFJvbGxlckNvYXN0ZXI6KCk9PmxxLFJvc2U6KCk9PmNxLFJvdGF0ZTNEOigpPT5CNSxSb3RhdGUzZDooKT0+QjUsUm90YXRlQ2N3OigpPT5mcSxSb3RhdGVDY3dLZXk6KCk9PmRxLFJvdGF0ZUNjd1NxdWFyZTooKT0+dXEsUm90YXRlQ3c6KCk9PnBxLFJvdGF0ZUN3U3F1YXJlOigpPT5ocSxSb3V0ZTooKT0+bXEsUm91dGVPZmY6KCk9PmdxLFJvdXRlcjooKT0+eHEsUm93czooKT0+SDUsUm93czI6KCk9Pkg1LFJvd3MzOigpPT5xNSxSb3dzNDooKT0+YnEsUnNzOigpPT52cSxSdWxlcjooKT0+d3EsUnVsZXJEaW1lbnNpb25MaW5lOigpPT55cSxSdXNzaWFuUnVibGU6KCk9Pk1xLFNhaWxib2F0OigpPT5rcSxTYWxhZDooKT0+U3EsU2FuZHdpY2g6KCk9PnpxLFNhdGVsbGl0ZTooKT0+X3EsU2F0ZWxsaXRlRGlzaDooKT0+Q3EsU2F1ZGlSaXlhbDooKT0+VHEsU2F2ZTooKT0+QXEsU2F2ZUFsbDooKT0+RHEsU2F2ZU9mZjooKT0+THEsU2NhbGU6KCk9PkVxLFNjYWxlM0Q6KCk9Pmo1LFNjYWxlM2Q6KCk9Pmo1LFNjYWxpbmc6KCk9PiRxLFNjYW46KCk9PnFxLFNjYW5CYXJjb2RlOigpPT5QcSxTY2FuRXllOigpPT5JcSxTY2FuRmFjZTooKT0+TnEsU2NhbkhlYXJ0OigpPT5GcSxTY2FuTGluZTooKT0+T3EsU2NhblFyQ29kZTooKT0+UnEsU2NhblNlYXJjaDooKT0+QnEsU2NhblRleHQ6KCk9PkhxLFNjYXR0ZXJDaGFydDooKT0+RnUsU2Nob29sOigpPT5qcSxTY2hvb2wyOigpPT5uOCxTY2lzc29yczooKT0+VXEsU2Npc3NvcnNMaW5lRGFzaGVkOigpPT5WcSxTY2lzc29yc1NxdWFyZTooKT0+QnAsU2Npc3NvcnNTcXVhcmVEYXNoZWRCb3R0b206KCk9PmRwLFNjb290ZXI6KCk9PldxLFNjcmVlblNoYXJlOigpPT5ZcSxTY3JlZW5TaGFyZU9mZjooKT0+R3EsU2Nyb2xsOigpPT5YcSxTY3JvbGxUZXh0OigpPT5acSxTZWFyY2g6KCk9PmFqLFNlYXJjaEFsZXJ0OigpPT5RcSxTZWFyY2hDaGVjazooKT0+S3EsU2VhcmNoQ29kZTooKT0+SnEsU2VhcmNoU2xhc2g6KCk9PnRqLFNlYXJjaFg6KCk9PmVqLFNlY3Rpb246KCk9PnJqLFNlbmQ6KCk9Pm9qLFNlbmRIb3Jpem9uYWw6KCk9PlY1LFNlbmRIb3Jpem9udGFsOigpPT5WNSxTZW5kVG9CYWNrOigpPT5paixTZXBhcmF0b3JIb3Jpem9udGFsOigpPT5uaixTZXBhcmF0b3JWZXJ0aWNhbDooKT0+c2osU2VydmVyOigpPT51aixTZXJ2ZXJDb2c6KCk9PmxqLFNlcnZlckNyYXNoOigpPT5jaixTZXJ2ZXJPZmY6KCk9PmRqLFNldHRpbmdzOigpPT5waixTZXR0aW5nczI6KCk9PmZqLFNoYXBlczooKT0+aGosU2hhcmU6KCk9PmdqLFNoYXJlMjooKT0+bWosU2hlZXQ6KCk9PnhqLFNoZWxsOigpPT5iaixTaGVsdmluZ1VuaXQ6KCk9PnZqLFNoaWVsZDooKT0+RGosU2hpZWxkQWxlcnQ6KCk9PnlqLFNoaWVsZEJhbjooKT0+d2osU2hpZWxkQ2hlY2s6KCk9PmtqLFNoaWVsZENsb3NlOigpPT5XNSxTaGllbGRFbGxpcHNpczooKT0+TWosU2hpZWxkSGFsZjooKT0+U2osU2hpZWxkTWludXM6KCk9PnpqLFNoaWVsZE9mZjooKT0+Q2osU2hpZWxkUGx1czooKT0+X2osU2hpZWxkUXVlc3Rpb246KCk9PlU1LFNoaWVsZFF1ZXN0aW9uTWFyazooKT0+VTUsU2hpZWxkVXNlcjooKT0+VGosU2hpZWxkWDooKT0+VzUsU2hpcDooKT0+QWosU2hpcFdoZWVsOigpPT5MaixTaGlydDooKT0+RWosU2hvcHBpbmdCYWc6KCk9PiRqLFNob3BwaW5nQmFza2V0OigpPT5QaixTaG9wcGluZ0NhcnQ6KCk9PklqLFNob3ZlbDooKT0+TmosU2hvd2VySGVhZDooKT0+RmosU2hyZWRkZXI6KCk9Pk9qLFNocmltcDooKT0+UmosU2hyaW5rOigpPT5CaixTaHJ1YjooKT0+SGosU2h1ZmZsZTooKT0+cWosU2lkZWJhcjooKT0+RTUsU2lkZWJhckNsb3NlOigpPT5MNSxTaWRlYmFyT3BlbjooKT0+QTUsU2lnbWE6KCk9PmpqLFNpZ21hU3F1YXJlOigpPT5IcCxTaWduYWw6KCk9PllqLFNpZ25hbEhpZ2g6KCk9PlZqLFNpZ25hbExvdzooKT0+VWosU2lnbmFsTWVkaXVtOigpPT5XaixTaWduYWxaZXJvOigpPT5HaixTaWduYXR1cmU6KCk9PlpqLFNpZ25wb3N0OigpPT5YaixTaWducG9zdEJpZzooKT0+S2osU2lyZW46KCk9PlFqLFNraXBCYWNrOigpPT5KaixTa2lwRm9yd2FyZDooKT0+ZVYsU2t1bGw6KCk9PmFWLFNsYWNrOigpPT50VixTbGFzaDooKT0+clYsU2xhc2hTcXVhcmU6KCk9PnFwLFNsaWNlOigpPT5pVixTbGlkZXJzOigpPT5HNSxTbGlkZXJzSG9yaXpvbnRhbDooKT0+b1YsU2xpZGVyc1ZlcnRpY2FsOigpPT5HNSxTbWFydHBob25lOigpPT5sVixTbWFydHBob25lQ2hhcmdpbmc6KCk9Pm5WLFNtYXJ0cGhvbmVOZmM6KCk9PnNWLFNtaWxlOigpPT5kVixTbWlsZVBsdXM6KCk9PmNWLFNuYWlsOigpPT5wVixTbm93Zmxha2U6KCk9PnVWLFNvYXBEaXNwZW5zZXJEcm9wbGV0OigpPT5mVixTb2ZhOigpPT5oVixTb2xhclBhbmVsOigpPT5tVixTb3J0QXNjOigpPT5tdSxTb3J0RGVzYzooKT0+ZnUsU291cDooKT0+Z1YsU3BhY2U6KCk9PnhWLFNwYWRlOigpPT5iVixTcGFya2xlOigpPT52VixTcGFya2xlczooKT0+WTUsU3BlYWtlcjooKT0+eVYsU3BlZWNoOigpPT53VixTcGVsbENoZWNrOigpPT5TVixTcGVsbENoZWNrMjooKT0+TVYsU3BsaW5lOigpPT56VixTcGxpbmVQb2ludGVyOigpPT5rVixTcGxpdDooKT0+Q1YsU3BsaXRTcXVhcmVIb3Jpem9udGFsOigpPT5qcCxTcGxpdFNxdWFyZVZlcnRpY2FsOigpPT5WcCxTcG9vbDooKT0+X1YsU3BvdGxpZ2h0OigpPT5MVixTcHJheUNhbjooKT0+VFYsU3Byb3V0OigpPT5EVixTcXVhcmU6KCk9PmpWLFNxdWFyZUFjdGl2aXR5OigpPT5YNSxTcXVhcmVBcnJvd0Rvd246KCk9Pks1LFNxdWFyZUFycm93RG93bkxlZnQ6KCk9Plo1LFNxdWFyZUFycm93RG93blJpZ2h0OigpPT5RNSxTcXVhcmVBcnJvd0xlZnQ6KCk9Pko1LFNxdWFyZUFycm93T3V0RG93bkxlZnQ6KCk9PmVwLFNxdWFyZUFycm93T3V0RG93blJpZ2h0OigpPT50cCxTcXVhcmVBcnJvd091dFVwTGVmdDooKT0+cnAsU3F1YXJlQXJyb3dPdXRVcFJpZ2h0OigpPT5hcCxTcXVhcmVBcnJvd1JpZ2h0OigpPT5pcCxTcXVhcmVBcnJvd1JpZ2h0RW50ZXI6KCk9PkFWLFNxdWFyZUFycm93UmlnaHRFeGl0OigpPT5FVixTcXVhcmVBcnJvd1VwOigpPT5zcCxTcXVhcmVBcnJvd1VwTGVmdDooKT0+b3AsU3F1YXJlQXJyb3dVcFJpZ2h0OigpPT5ucCxTcXVhcmVBc3RlcmlzazooKT0+Y3AsU3F1YXJlQm90dG9tRGFzaGVkU2Npc3NvcnM6KCk9PmRwLFNxdWFyZUNlbnRlcmxpbmVEYXNoZWRIb3Jpem9udGFsOigpPT5scCxTcXVhcmVDZW50ZXJsaW5lRGFzaGVkVmVydGljYWw6KCk9PnVwLFNxdWFyZUNoYXJ0R2FudHQ6KCk9PiRjLFNxdWFyZUNoZWNrOigpPT5wcCxTcXVhcmVDaGVja0JpZzooKT0+ZnAsU3F1YXJlQ2hldnJvbkRvd246KCk9PmhwLFNxdWFyZUNoZXZyb25MZWZ0OigpPT5tcCxTcXVhcmVDaGV2cm9uUmlnaHQ6KCk9PmdwLFNxdWFyZUNoZXZyb25VcDooKT0+eHAsU3F1YXJlQ29kZTooKT0+YnAsU3F1YXJlRGFzaGVkOigpPT53cCxTcXVhcmVEYXNoZWRCb3R0b206KCk9PlBWLFNxdWFyZURhc2hlZEJvdHRvbUNvZGU6KCk9PiRWLFNxdWFyZURhc2hlZEthbmJhbjooKT0+dnAsU3F1YXJlRGFzaGVkTW91c2VQb2ludGVyOigpPT55cCxTcXVhcmVEYXNoZWRUb3BTb2xpZDooKT0+SVYsU3F1YXJlRGl2aWRlOigpPT5NcCxTcXVhcmVEb3Q6KCk9PmtwLFNxdWFyZUVxdWFsOigpPT5TcCxTcXVhcmVGdW5jdGlvbjooKT0+enAsU3F1YXJlR2FudHRDaGFydDooKT0+JGMsU3F1YXJlS2FuYmFuOigpPT5DcCxTcXVhcmVMaWJyYXJ5OigpPT5fcCxTcXVhcmVNOigpPT5UcCxTcXVhcmVNZW51OigpPT5McCxTcXVhcmVNaW51czooKT0+RHAsU3F1YXJlTW91c2VQb2ludGVyOigpPT5BcCxTcXVhcmVQYXJraW5nOigpPT4kcCxTcXVhcmVQYXJraW5nT2ZmOigpPT5FcCxTcXVhcmVQYXVzZTooKT0+TlYsU3F1YXJlUGVuOigpPT4kcyxTcXVhcmVQZXJjZW50OigpPT5QcCxTcXVhcmVQaTooKT0+SXAsU3F1YXJlUGlsY3JvdzooKT0+TnAsU3F1YXJlUGxheTooKT0+RnAsU3F1YXJlUGx1czooKT0+T3AsU3F1YXJlUG93ZXI6KCk9PlJwLFNxdWFyZVJhZGljYWw6KCk9PkZWLFNxdWFyZVJvdW5kQ29ybmVyOigpPT5PVixTcXVhcmVTY2lzc29yczooKT0+QnAsU3F1YXJlU2lnbWE6KCk9PkhwLFNxdWFyZVNsYXNoOigpPT5xcCxTcXVhcmVTcGxpdEhvcml6b250YWw6KCk9PmpwLFNxdWFyZVNwbGl0VmVydGljYWw6KCk9PlZwLFNxdWFyZVNxdWFyZTooKT0+UlYsU3F1YXJlU3RhY2s6KCk9PkJWLFNxdWFyZVN0YXI6KCk9PkhWLFNxdWFyZVN0b3A6KCk9PnFWLFNxdWFyZVRlcm1pbmFsOigpPT5XcCxTcXVhcmVVc2VyOigpPT5HcCxTcXVhcmVVc2VyUm91bmQ6KCk9PlVwLFNxdWFyZVg6KCk9PllwLFNxdWFyZXNFeGNsdWRlOigpPT5WVixTcXVhcmVzSW50ZXJzZWN0OigpPT5VVixTcXVhcmVzU3VidHJhY3Q6KCk9PldWLFNxdWFyZXNVbml0ZTooKT0+R1YsU3F1aXJjbGU6KCk9PlpWLFNxdWlyY2xlRGFzaGVkOigpPT5ZVixTcXVpcnJlbDooKT0+UVYsU3RhbXA6KCk9PlhWLFN0YXI6KCk9PmVVLFN0YXJIYWxmOigpPT5LVixTdGFyT2ZmOigpPT5KVixTdGFyczooKT0+WTUsU3RlcEJhY2s6KCk9PnRVLFN0ZXBGb3J3YXJkOigpPT5yVSxTdGV0aG9zY29wZTooKT0+YVUsU3RpY2tlcjooKT0+aVUsU3RpY2t5Tm90ZTooKT0+b1UsU3RvbmU6KCk9Pm5VLFN0b3BDaXJjbGU6KCk9PmZmLFN0b3JlOigpPT5zVSxTdHJldGNoSG9yaXpvbnRhbDooKT0+bFUsU3RyZXRjaFZlcnRpY2FsOigpPT5jVSxTdHJpa2V0aHJvdWdoOigpPT5kVSxTdWJzY3JpcHQ6KCk9PnVVLFN1YnRpdGxlczooKT0+U3UsU3VuOigpPT5nVSxTdW5EaW06KCk9PmZVLFN1bk1lZGl1bTooKT0+cFUsU3VuTW9vbjooKT0+aFUsU3VuU25vdzooKT0+bVUsU3VucmlzZTooKT0+eFUsU3Vuc2V0OigpPT5iVSxTdXBlcnNjcmlwdDooKT0+dlUsU3dhdGNoQm9vazooKT0+eVUsU3dpc3NGcmFuYzooKT0+TVUsU3dpdGNoQ2FtZXJhOigpPT53VSxTd29yZDooKT0+a1UsU3dvcmRzOigpPT5DVSxTeXJpbmdlOigpPT5fVSxUYWJsZTooKT0+JFUsVGFibGUyOigpPT5TVSxUYWJsZUNlbGxzTWVyZ2U6KCk9PnpVLFRhYmxlQ2VsbHNTcGxpdDooKT0+VFUsVGFibGVDb2x1bW5zU3BsaXQ6KCk9PkxVLFRhYmxlQ29uZmlnOigpPT5UYyxUYWJsZU9mQ29udGVudHM6KCk9PkRVLFRhYmxlUHJvcGVydGllczooKT0+QVUsVGFibGVSb3dzU3BsaXQ6KCk9PkVVLFRhYmxldDooKT0+SVUsVGFibGV0U21hcnRwaG9uZTooKT0+UFUsVGFibGV0czooKT0+TlUsVGFnOigpPT5GVSxUYWdzOigpPT5PVSxUYWxseTE6KCk9PlJVLFRhbGx5MjooKT0+QlUsVGFsbHkzOigpPT5IVSxUYWxseTQ6KCk9PnFVLFRhbGx5NTooKT0+alUsVGFuZ2VudDooKT0+VlUsVGFyZ2V0OigpPT5VVSxUZWxlc2NvcGU6KCk9PldVLFRlbnQ6KCk9PllVLFRlbnRUcmVlOigpPT5HVSxUZXJtaW5hbDooKT0+WlUsVGVybWluYWxTcXVhcmU6KCk9PldwLFRlc3RUdWJlOigpPT5YVSxUZXN0VHViZTI6KCk9PlpwLFRlc3RUdWJlRGlhZ29uYWw6KCk9PlpwLFRlc3RUdWJlczooKT0+UVUsVGV4dDooKT0+UGMsVGV4dEFsaWduQ2VudGVyOigpPT5YcCxUZXh0QWxpZ25FbmQ6KCk9PlFwLFRleHRBbGlnbkp1c3RpZnk6KCk9PktwLFRleHRBbGlnblN0YXJ0OigpPT5QYyxUZXh0Q3Vyc29yOigpPT5KVSxUZXh0Q3Vyc29ySW5wdXQ6KCk9PktVLFRleHRJbml0aWFsOigpPT5KcCxUZXh0UXVvdGU6KCk9PmVXLFRleHRTZWFyY2g6KCk9PnRXLFRleHRTZWxlY3Q6KCk9PmU4LFRleHRTZWxlY3Rpb246KCk9PmU4LFRleHRXcmFwOigpPT50OCxUaGVhdGVyOigpPT5yVyxUaGVybW9tZXRlcjooKT0+b1csVGhlcm1vbWV0ZXJTbm93Zmxha2U6KCk9PmFXLFRoZXJtb21ldGVyU3VuOigpPT5pVyxUaHVtYnNEb3duOigpPT5uVyxUaHVtYnNVcDooKT0+c1csVGlja2V0OigpPT5oVyxUaWNrZXRDaGVjazooKT0+bFcsVGlja2V0TWludXM6KCk9PmNXLFRpY2tldFBlcmNlbnQ6KCk9PmRXLFRpY2tldFBsdXM6KCk9PnVXLFRpY2tldFNsYXNoOigpPT5mVyxUaWNrZXRYOigpPT5wVyxUaWNrZXRzOigpPT5nVyxUaWNrZXRzUGxhbmU6KCk9Pm1XLFRpbWVyOigpPT52VyxUaW1lck9mZjooKT0+YlcsVGltZXJSZXNldDooKT0+eFcsVG9nZ2xlTGVmdDooKT0+eVcsVG9nZ2xlUmlnaHQ6KCk9Pk1XLFRvaWxldDooKT0+d1csVG9vbENhc2U6KCk9PmtXLFRvb2xib3g6KCk9PlNXLFRvcm5hZG86KCk9PnpXLFRvcnVzOigpPT5DVyxUb3VjaHBhZDooKT0+VFcsVG91Y2hwYWRPZmY6KCk9Pl9XLFRvd2VsUmFjazooKT0+TFcsVG93ZXJDb250cm9sOigpPT5EVyxUb3lCcmljazooKT0+QVcsVHJhY3RvcjooKT0+RVcsVHJhZmZpY0NvbmU6KCk9PiRXLFRyYWluOigpPT5yOCxUcmFpbkZyb250OigpPT5JVyxUcmFpbkZyb250VHVubmVsOigpPT5QVyxUcmFpblRyYWNrOigpPT5OVyxUcmFtRnJvbnQ6KCk9PnI4LFRyYW5zZ2VuZGVyOigpPT5GVyxUcmFzaDooKT0+UlcsVHJhc2gyOigpPT5PVyxUcmVlRGVjaWR1b3VzOigpPT5CVyxUcmVlUGFsbTooKT0+YTgsVHJlZVBpbmU6KCk9PkhXLFRyZWVzOigpPT5xVyxUcmVsbG86KCk9PmpXLFRyZW5kaW5nRG93bjooKT0+VlcsVHJlbmRpbmdVcDooKT0+V1csVHJlbmRpbmdVcERvd246KCk9PlVXLFRyaWFuZ2xlOigpPT5aVyxUcmlhbmdsZUFsZXJ0OigpPT5pOCxUcmlhbmdsZURhc2hlZDooKT0+R1csVHJpYW5nbGVSaWdodDooKT0+WVcsVHJvcGh5OigpPT5YVyxUcnVjazooKT0+S1csVHJ1Y2tFbGVjdHJpYzooKT0+UVcsVHVya2lzaExpcmE6KCk9PkpXLFR1cm50YWJsZTooKT0+ZUcsVHVydGxlOigpPT50RyxUdjooKT0+YUcsVHYyOigpPT5vOCxUdk1pbmltYWw6KCk9Pm84LFR2TWluaW1hbFBsYXk6KCk9PnJHLFR3aXRjaDooKT0+aUcsVHdpdHRlcjooKT0+b0csVHlwZTooKT0+c0csVHlwZU91dGxpbmU6KCk9Pm5HLFVtYnJlbGxhOigpPT5sRyxVbWJyZWxsYU9mZjooKT0+Y0csVW5kZXJsaW5lOigpPT5kRyxVbmRvOigpPT5wRyxVbmRvMjooKT0+dUcsVW5kb0RvdDooKT0+ZkcsVW5mb2xkSG9yaXpvbnRhbDooKT0+aEcsVW5mb2xkVmVydGljYWw6KCk9Pm1HLFVuZ3JvdXA6KCk9PmdHLFVuaXZlcnNpdHk6KCk9Pm44LFVubGluazooKT0+eEcsVW5saW5rMjooKT0+dkcsVW5sb2NrOigpPT5iNSxVbmxvY2tLZXlob2xlOigpPT54NSxVbnBsdWc6KCk9PmJHLFVwbG9hZDooKT0+eUcsVXBsb2FkQ2xvdWQ6KCk9PnZmLFVzYjooKT0+d0csVXNlcjooKT0+SUcsVXNlcjI6KCk9PnU4LFVzZXJDaGVjazooKT0+TUcsVXNlckNoZWNrMjooKT0+czgsVXNlckNpcmNsZTooKT0+aGYsVXNlckNpcmNsZTI6KCk9PnBmLFVzZXJDb2c6KCk9PmtHLFVzZXJDb2cyOigpPT5sOCxVc2VyS2V5OigpPT5TRyxVc2VyTG9jazooKT0+ekcsVXNlck1pbnVzOigpPT5DRyxVc2VyTWludXMyOigpPT5jOCxVc2VyUGVuOigpPT5URyxVc2VyUGx1czooKT0+X0csVXNlclBsdXMyOigpPT5kOCxVc2VyUm91bmQ6KCk9PnU4LFVzZXJSb3VuZENoZWNrOigpPT5zOCxVc2VyUm91bmRDb2c6KCk9Pmw4LFVzZXJSb3VuZEtleTooKT0+TEcsVXNlclJvdW5kTWludXM6KCk9PmM4LFVzZXJSb3VuZFBlbjooKT0+REcsVXNlclJvdW5kUGx1czooKT0+ZDgsVXNlclJvdW5kU2VhcmNoOigpPT5BRyxVc2VyUm91bmRYOigpPT5mOCxVc2VyU2VhcmNoOigpPT5FRyxVc2VyU3F1YXJlOigpPT5HcCxVc2VyU3F1YXJlMjooKT0+VXAsVXNlclN0YXI6KCk9PiRHLFVzZXJYOigpPT5QRyxVc2VyWDI6KCk9PmY4LFVzZXJzOigpPT5ORyxVc2VyczI6KCk9PnA4LFVzZXJzUm91bmQ6KCk9PnA4LFV0ZW5zaWxzOigpPT5tOCxVdGVuc2lsc0Nyb3NzZWQ6KCk9Pmg4LFV0aWxpdHlQb2xlOigpPT5GRyxWYW46KCk9Pk9HLFZhcmlhYmxlOigpPT5SRyxWYXVsdDooKT0+SEcsVmVjdG9yU3F1YXJlOigpPT5CRyxWZWdhbjooKT0+cUcsVmVuZXRpYW5NYXNrOigpPT5qRyxWZW51czooKT0+VUcsVmVudXNBbmRNYXJzOigpPT5WRyxWZXJpZmllZDooKT0+YnUsVmlicmF0ZTooKT0+R0csVmlicmF0ZU9mZjooKT0+V0csVmlkZW86KCk9PlpHLFZpZGVvT2ZmOigpPT5ZRyxWaWRlb3RhcGU6KCk9PlhHLFZpZXc6KCk9PlFHLFZvaWNlbWFpbDooKT0+S0csVm9sbGV5YmFsbDooKT0+SkcsVm9sdW1lOigpPT5pWSxWb2x1bWUxOigpPT5lWSxWb2x1bWUyOigpPT50WSxWb2x1bWVPZmY6KCk9PmFZLFZvbHVtZVg6KCk9PnJZLFZvdGU6KCk9Pm5ZLFdhbGxldDooKT0+c1ksV2FsbGV0MjooKT0+ZzgsV2FsbGV0Q2FyZHM6KCk9Pm9ZLFdhbGxldE1pbmltYWw6KCk9Pmc4LFdhbGxwYXBlcjooKT0+bFksV2FuZDooKT0+Y1ksV2FuZDI6KCk9Png4LFdhbmRTcGFya2xlczooKT0+eDgsV2FyZWhvdXNlOigpPT5kWSxXYXNoaW5nTWFjaGluZTooKT0+dVksV2F0Y2g6KCk9PmZZLFdhdmVzOigpPT5nWSxXYXZlc0Fycm93RG93bjooKT0+cFksV2F2ZXNBcnJvd1VwOigpPT5tWSxXYXZlc0xhZGRlcjooKT0+aFksV2F5cG9pbnRzOigpPT54WSxXZWJjYW06KCk9PmJZLFdlYmhvb2s6KCk9PnlZLFdlYmhvb2tPZmY6KCk9PnZZLFdlaWdodDooKT0+a1ksV2VpZ2h0VGlsZGU6KCk9PndZLFdoZWF0OigpPT5TWSxXaGVhdE9mZjooKT0+TVksV2hvbGVXb3JkOigpPT56WSxXaWZpOigpPT4kWSxXaWZpQ29nOigpPT5DWSxXaWZpSGlnaDooKT0+X1ksV2lmaUxvdzooKT0+VFksV2lmaU9mZjooKT0+RFksV2lmaVBlbjooKT0+TFksV2lmaVN5bmM6KCk9PkVZLFdpZmlaZXJvOigpPT5BWSxXaW5kOigpPT5JWSxXaW5kQXJyb3dEb3duOigpPT5QWSxXaW5lOigpPT5GWSxXaW5lT2ZmOigpPT5OWSxXb3JrZmxvdzooKT0+T1ksV29ybTooKT0+UlksV3JhcFRleHQ6KCk9PnQ4LFdyZW5jaDooKT0+QlksWDooKT0+cVksWENpcmNsZTooKT0+bWYsWExpbmVUb3A6KCk9PkhZLFhPY3RhZ29uOigpPT5DNSxYU3F1YXJlOigpPT5ZcCxZb3V0dWJlOigpPT5qWSxaYXA6KCk9PlVZLFphcE9mZjooKT0+VlksWm9kaWFjQXF1YXJpdXM6KCk9PldZLFpvZGlhY0FyaWVzOigpPT5HWSxab2RpYWNDYW5jZXI6KCk9PllZLFpvZGlhY0NhcHJpY29ybjooKT0+WlksWm9kaWFjR2VtaW5pOigpPT5RWSxab2RpYWNMZW86KCk9PlhZLFpvZGlhY0xpYnJhOigpPT5LWSxab2RpYWNPcGhpdWNodXM6KCk9PkpZLFpvZGlhY1Bpc2NlczooKT0+ZVosWm9kaWFjU2FnaXR0YXJpdXM6KCk9PnRaLFpvZGlhY1Njb3JwaW86KCk9PnJaLFpvZGlhY1RhdXJ1czooKT0+YVosWm9kaWFjVmlyZ286KCk9PmlaLFpvb21JbjooKT0+b1osWm9vbU91dDooKT0+blp9KTt2YXIgSEFyPWwoKCk9PntlJGUoKTt0JGUoKTtyJGUoKTthJGUoKTtpJGUoKTtvJGUoKTtuJGUoKTtzJGUoKTtsJGUoKTtjJGUoKTtkJGUoKTt1JGUoKTtmJGUoKTtwJGUoKTtoJGUoKTttJGUoKTtnJGUoKTt4JGUoKTtiJGUoKTt2JGUoKTt5JGUoKTt3JGUoKTtNJGUoKTtrJGUoKTtTJGUoKTt6JGUoKTtDJGUoKTtfJGUoKTtUJGUoKTtMJGUoKTtEJGUoKTtBJGUoKTtFJGUoKTskJGUoKTtQJGUoKTtJJGUoKTtOJGUoKTtGJGUoKTtPJGUoKTtSJGUoKTtCJGUoKTtIJGUoKTtxJGUoKTtqJGUoKTtWJGUoKTtVJGUoKTtXJGUoKTtHJGUoKTtZJGUoKTtaJGUoKTtYJGUoKTtRJGUoKTtLJGUoKTtKJGUoKTtlUGUoKTt0UGUoKTtyUGUoKTthUGUoKTtpUGUoKTtvUGUoKTtuUGUoKTtzUGUoKTtsUGUoKTtjUGUoKTtkUGUoKTt1UGUoKTtmUGUoKTtwUGUoKTtoUGUoKTttUGUoKTtnUGUoKTt4UGUoKTtiUGUoKTt2UGUoKTt5UGUoKTt3UGUoKTtNUGUoKTtrUGUoKTtTUGUoKTt6UGUoKTtDUGUoKTtfUGUoKTtUUGUoKTtMUGUoKTtEUGUoKTtBUGUoKTtFUGUoKTskUGUoKTtQUGUoKTtJUGUoKTtOUGUoKTtGUGUoKTtPUGUoKTtSUGUoKTtCUGUoKTtIUGUoKTtxUGUoKTtqUGUoKTtWUGUoKTtVUGUoKTtXUGUoKTtHUGUoKTtZUGUoKTtaUGUoKTtYUGUoKTtRUGUoKTtLUGUoKTtKUGUoKTtlSWUoKTt0SWUoKTtySWUoKTthSWUoKTtpSWUoKTtvSWUoKTtuSWUoKTtzSWUoKTtsSWUoKTtjSWUoKTtkSWUoKTt1SWUoKTtmSWUoKTtwSWUoKTtoSWUoKTttSWUoKTtnSWUoKTt4SWUoKTtiSWUoKTt2SWUoKTt5SWUoKTt3SWUoKTtNSWUoKTtrSWUoKTtTSWUoKTt6SWUoKTtDSWUoKTtfSWUoKTtUSWUoKTtMSWUoKTtESWUoKTtBSWUoKTtFSWUoKTskSWUoKTtQSWUoKTtJSWUoKTtOSWUoKTtGSWUoKTtPSWUoKTtSSWUoKTtCSWUoKTtISWUoKTtxSWUoKTtqSWUoKTtWSWUoKTtVSWUoKTtXSWUoKTtHSWUoKTtZSWUoKTtaSWUoKTtYSWUoKTtRSWUoKTtLSWUoKTtKSWUoKTtlTmUoKTt0TmUoKTtyTmUoKTthTmUoKTtpTmUoKTtvTmUoKTtuTmUoKTtzTmUoKTtsTmUoKTtjTmUoKTtkTmUoKTt1TmUoKTtmTmUoKTtwTmUoKTtoTmUoKTttTmUoKTtnTmUoKTt4TmUoKTtiTmUoKTt2TmUoKTt5TmUoKTt3TmUoKTtNTmUoKTtrTmUoKTtTTmUoKTt6TmUoKTtDTmUoKTtfTmUoKTtUTmUoKTtMTmUoKTtETmUoKTtBTmUoKTtFTmUoKTskTmUoKTtQTmUoKTtJTmUoKTtOTmUoKTtGTmUoKTtPTmUoKTtSTmUoKTtCTmUoKTtITmUoKTtxTmUoKTtqTmUoKTtWTmUoKTtVTmUoKTtXTmUoKTtHTmUoKTtZTmUoKTtaTmUoKTtYTmUoKTtRTmUoKTtLTmUoKTtKTmUoKTtlRmUoKTt0RmUoKTtyRmUoKTthRmUoKTtpRmUoKTtvRmUoKTtuRmUoKTtzRmUoKTtsRmUoKTtjRmUoKTtkRmUoKTt1RmUoKTtmRmUoKTtwRmUoKTtoRmUoKTttRmUoKTtnRmUoKTt4RmUoKTtiRmUoKTt2RmUoKTt5RmUoKTt3RmUoKTtNRmUoKTtrRmUoKTtTRmUoKTt6RmUoKTtDRmUoKTtfRmUoKTtURmUoKTtMRmUoKTtERmUoKTtBRmUoKTtFRmUoKTskRmUoKTtQRmUoKTtJRmUoKTtORmUoKTtGRmUoKTtPRmUoKTtSRmUoKTtCRmUoKTtIRmUoKTtxRmUoKTtqRmUoKTtWRmUoKTtVRmUoKTtXRmUoKTtHRmUoKTtZRmUoKTtaRmUoKTtYRmUoKTtRRmUoKTtLRmUoKTtKRmUoKTtlT2UoKTt0T2UoKTtyT2UoKTthT2UoKTtpT2UoKTtvT2UoKTtuT2UoKTtzT2UoKTtsT2UoKTtjT2UoKTtkT2UoKTt1T2UoKTtmT2UoKTtwT2UoKTtoT2UoKTttT2UoKTtnT2UoKTt4T2UoKTtiT2UoKTt2T2UoKTt5T2UoKTt3T2UoKTtNT2UoKTtrT2UoKTtTT2UoKTt6T2UoKTtDT2UoKTtfT2UoKTtUT2UoKTtMT2UoKTtET2UoKTtBT2UoKTtFT2UoKTskT2UoKTtQT2UoKTtJT2UoKTtOT2UoKTtGT2UoKTtPT2UoKTtST2UoKTtCT2UoKTtIT2UoKTtxT2UoKTtqT2UoKTtWT2UoKTtVT2UoKTtXT2UoKTtHT2UoKTtZT2UoKTtaT2UoKTtYT2UoKTtRT2UoKTtLT2UoKTtKT2UoKTtlUmUoKTt0UmUoKTtyUmUoKTthUmUoKTtpUmUoKTtvUmUoKTtuUmUoKTtzUmUoKTtsUmUoKTtjUmUoKTtkUmUoKTt1UmUoKTtmUmUoKTtwUmUoKTtoUmUoKTttUmUoKTtnUmUoKTt4UmUoKTtiUmUoKTt2UmUoKTt5UmUoKTt3UmUoKTtNUmUoKTtrUmUoKTtTUmUoKTt6UmUoKTtDUmUoKTtfUmUoKTtUUmUoKTtMUmUoKTtEUmUoKTtBUmUoKTtFUmUoKTskUmUoKTtQUmUoKTtJUmUoKTtOUmUoKTtGUmUoKTtPUmUoKTtSUmUoKTtCUmUoKTtIUmUoKTtxUmUoKTtqUmUoKTtWUmUoKTtVUmUoKTtXUmUoKTtHUmUoKTtZUmUoKTtaUmUoKTtYUmUoKTtRUmUoKTtLUmUoKTtKUmUoKTtlQmUoKTt0QmUoKTtyQmUoKTthQmUoKTtpQmUoKTtvQmUoKTtuQmUoKTtzQmUoKTtsQmUoKTtjQmUoKTtkQmUoKTt1QmUoKTtmQmUoKTtwQmUoKTtoQmUoKTttQmUoKTtnQmUoKTt4QmUoKTtiQmUoKTt2QmUoKTt5QmUoKTt3QmUoKTtNQmUoKTtrQmUoKTtTQmUoKTt6QmUoKTtDQmUoKTtfQmUoKTtUQmUoKTtMQmUoKTtEQmUoKTtBQmUoKTtFQmUoKTskQmUoKTtQQmUoKTtJQmUoKTtOQmUoKTtGQmUoKTtPQmUoKTtSQmUoKTtCQmUoKTtIQmUoKTtxQmUoKTtqQmUoKTtWQmUoKTtVQmUoKTtXQmUoKTtHQmUoKTtZQmUoKTtaQmUoKTtYQmUoKTtRQmUoKTtLQmUoKTtKQmUoKTtlSGUoKTt0SGUoKTtySGUoKTthSGUoKTtpSGUoKTtvSGUoKTtuSGUoKTtzSGUoKTtsSGUoKTtjSGUoKTtkSGUoKTt1SGUoKTtmSGUoKTtwSGUoKTtoSGUoKTttSGUoKTtnSGUoKTt4SGUoKTtiSGUoKTt2SGUoKTt5SGUoKTt3SGUoKTtNSGUoKTtrSGUoKTtTSGUoKTt6SGUoKTtDSGUoKTtfSGUoKTtUSGUoKTtMSGUoKTtESGUoKTtBSGUoKTtFSGUoKTskSGUoKTtQSGUoKTtJSGUoKTtOSGUoKTtGSGUoKTtPSGUoKTtSSGUoKTtCSGUoKTtISGUoKTtxSGUoKTtqSGUoKTtWSGUoKTtVSGUoKTtXSGUoKTtHSGUoKTtZSGUoKTtaSGUoKTtYSGUoKTtRSGUoKTtLSGUoKTtKSGUoKTtlcWUoKTt0cWUoKTtycWUoKTthcWUoKTtpcWUoKTtvcWUoKTtucWUoKTtzcWUoKTtscWUoKTtjcWUoKTtkcWUoKTt1cWUoKTtmcWUoKTtwcWUoKTtocWUoKTttcWUoKTtncWUoKTt4cWUoKTticWUoKTt2cWUoKTt5cWUoKTt3cWUoKTtNcWUoKTtrcWUoKTtTcWUoKTt6cWUoKTtDcWUoKTtfcWUoKTtUcWUoKTtMcWUoKTtEcWUoKTtBcWUoKTtFcWUoKTskcWUoKTtQcWUoKTtJcWUoKTtOcWUoKTtGcWUoKTtPcWUoKTtScWUoKTtCcWUoKTtIcWUoKTtxcWUoKTtqcWUoKTtWcWUoKTtVcWUoKTtXcWUoKTtHcWUoKTtZcWUoKTtacWUoKTtYcWUoKTtRcWUoKTtLcWUoKTtKcWUoKTtlamUoKTt0amUoKTtyamUoKTthamUoKTtpamUoKTtvamUoKTtuamUoKTtzamUoKTtsamUoKTtjamUoKTtkamUoKTt1amUoKTtmamUoKTtwamUoKTtoamUoKTttamUoKTtnamUoKTt4amUoKTtiamUoKTt2amUoKTt5amUoKTt3amUoKTtNamUoKTtramUoKTtTamUoKTt6amUoKTtDamUoKTtfamUoKTtUamUoKTtMamUoKTtEamUoKTtBamUoKTtFamUoKTskamUoKTtQamUoKTtJamUoKTtOamUoKTtGamUoKTtPamUoKTtSamUoKTtCamUoKTtIamUoKTtxamUoKTtqamUoKTtWamUoKTtVamUoKTtXamUoKTtHamUoKTtZamUoKTtaamUoKTtYamUoKTtRamUoKTtLamUoKTtKamUoKTtlVmUoKTt0VmUoKTtyVmUoKTthVmUoKTtpVmUoKTtvVmUoKTtuVmUoKTtzVmUoKTtsVmUoKTtjVmUoKTtkVmUoKTt1VmUoKTtmVmUoKTtwVmUoKTtoVmUoKTttVmUoKTtnVmUoKTt4VmUoKTtiVmUoKTt2VmUoKTt5VmUoKTt3VmUoKTtNVmUoKTtrVmUoKTtTVmUoKTt6VmUoKTtDVmUoKTtfVmUoKTtUVmUoKTtMVmUoKTtEVmUoKTtBVmUoKTtFVmUoKTskVmUoKTtQVmUoKTtJVmUoKTtOVmUoKTtGVmUoKTtPVmUoKTtSVmUoKTtCVmUoKTtIVmUoKTtxVmUoKTtqVmUoKTtWVmUoKTtVVmUoKTtXVmUoKTtHVmUoKTtZVmUoKTtaVmUoKTtYVmUoKTtRVmUoKTtLVmUoKTtKVmUoKTtlVWUoKTt0VWUoKTtyVWUoKTthVWUoKTtpVWUoKTtvVWUoKTtuVWUoKTtzVWUoKTtsVWUoKTtjVWUoKTtkVWUoKTt1VWUoKTtmVWUoKTtwVWUoKTtoVWUoKTttVWUoKTtnVWUoKTt4VWUoKTtiVWUoKTt2VWUoKTt5VWUoKTt3VWUoKTtNVWUoKTtrVWUoKTtTVWUoKTt6VWUoKTtDVWUoKTtfVWUoKTtUVWUoKTtMVWUoKTtEVWUoKTtBVWUoKTtFVWUoKTskVWUoKTtQVWUoKTtJVWUoKTtOVWUoKTtGVWUoKTtPVWUoKTtSVWUoKTtCVWUoKTtIVWUoKTtxVWUoKTtqVWUoKTtWVWUoKTtVVWUoKTtXVWUoKTtHVWUoKTtZVWUoKTtaVWUoKTtYVWUoKTtRVWUoKTtLVWUoKTtKVWUoKTtlV2UoKTt0V2UoKTtyV2UoKTthV2UoKTtpV2UoKTtvV2UoKTtuV2UoKTtzV2UoKTtsV2UoKTtjV2UoKTtkV2UoKTt1V2UoKTtmV2UoKTtwV2UoKTtoV2UoKTttV2UoKTtnV2UoKTt4V2UoKTtiV2UoKTt2V2UoKTt5V2UoKTt3V2UoKTtNV2UoKTtrV2UoKTtTV2UoKTt6V2UoKTtDV2UoKTtfV2UoKTtUV2UoKTtMV2UoKTtEV2UoKTtBV2UoKTtFV2UoKTskV2UoKTtQV2UoKTtJV2UoKTtOV2UoKTtGV2UoKTtPV2UoKTtSV2UoKTtCV2UoKTtIV2UoKTtxV2UoKTtqV2UoKTtWV2UoKTtVV2UoKTtXV2UoKTtHV2UoKTtZV2UoKTtaV2UoKTtYV2UoKTtRV2UoKTtLV2UoKTtKV2UoKTtlR2UoKTt0R2UoKTtyR2UoKTthR2UoKTtpR2UoKTtvR2UoKTtuR2UoKTtzR2UoKTtsR2UoKTtjR2UoKTtkR2UoKTt1R2UoKTtmR2UoKTtwR2UoKTtoR2UoKTttR2UoKTtnR2UoKTt4R2UoKTtiR2UoKTt2R2UoKTt5R2UoKTt3R2UoKTtNR2UoKTtrR2UoKTtTR2UoKTt6R2UoKTtDR2UoKTtfR2UoKTtUR2UoKTtMR2UoKTtER2UoKTtBR2UoKTtFR2UoKTskR2UoKTtQR2UoKTtJR2UoKTtOR2UoKTtGR2UoKTtPR2UoKTtSR2UoKTtCR2UoKTtIR2UoKTtxR2UoKTtqR2UoKTtWR2UoKTtVR2UoKTtXR2UoKTtHR2UoKTtZR2UoKTtaR2UoKTtYR2UoKTtRR2UoKTtLR2UoKTtKR2UoKTtlWWUoKTt0WWUoKTtyWWUoKTthWWUoKTtpWWUoKTtvWWUoKTtuWWUoKTtzWWUoKTtsWWUoKTtjWWUoKTtkWWUoKTt1WWUoKTtmWWUoKTtwWWUoKTtoWWUoKTttWWUoKTtnWWUoKTt4WWUoKTtiWWUoKTt2WWUoKTt5WWUoKTt3WWUoKTtNWWUoKTtrWWUoKTtTWWUoKTt6WWUoKTtDWWUoKTtfWWUoKTtUWWUoKTtMWWUoKTtEWWUoKTtBWWUoKTtFWWUoKTskWWUoKTtQWWUoKTtJWWUoKTtOWWUoKTtGWWUoKTtPWWUoKTtSWWUoKTtCWWUoKTtIWWUoKTtxWWUoKTtqWWUoKTtWWWUoKTtVWWUoKTtXWWUoKTtHWWUoKTtZWWUoKTtaWWUoKTtYWWUoKTtRWWUoKTtLWWUoKTtKWWUoKTtlWmUoKTt0WmUoKTtyWmUoKTthWmUoKTtpWmUoKTtvWmUoKTtuWmUoKTtzWmUoKTtsWmUoKTtjWmUoKTtkWmUoKTt1WmUoKTtmWmUoKTtwWmUoKTtoWmUoKTttWmUoKTtnWmUoKTt4WmUoKTtiWmUoKTt2WmUoKTt5WmUoKTt3WmUoKTtNWmUoKTtrWmUoKTtTWmUoKTt6WmUoKTtDWmUoKTtfWmUoKTtUWmUoKTtMWmUoKTtEWmUoKTtBWmUoKTtFWmUoKTskWmUoKTtQWmUoKTtJWmUoKTtOWmUoKTtGWmUoKTtPWmUoKTtSWmUoKTtCWmUoKTtIWmUoKTtxWmUoKTtqWmUoKTtWWmUoKTtVWmUoKTtXWmUoKTtHWmUoKTtZWmUoKTtaWmUoKTtYWmUoKTtRWmUoKTtLWmUoKTtKWmUoKTtlWGUoKTt0WGUoKTtyWGUoKTthWGUoKTtpWGUoKTtvWGUoKTtuWGUoKTtzWGUoKTtsWGUoKTtjWGUoKTtkWGUoKTt1WGUoKTtmWGUoKTtwWGUoKTtoWGUoKTttWGUoKTtnWGUoKTt4WGUoKTtiWGUoKTt2WGUoKTt5WGUoKTt3WGUoKTtNWGUoKTtrWGUoKTtTWGUoKTt6WGUoKTtDWGUoKTtfWGUoKTtUWGUoKTtMWGUoKTtEWGUoKTtBWGUoKTtFWGUoKTskWGUoKTtQWGUoKTtJWGUoKTtOWGUoKTtGWGUoKTtPWGUoKTtSWGUoKTtCWGUoKTtIWGUoKTtxWGUoKTtqWGUoKTtWWGUoKTtVWGUoKTtXWGUoKTtHWGUoKTtZWGUoKTtaWGUoKTtYWGUoKTtRWGUoKTtLWGUoKTtKWGUoKTtlUWUoKTt0UWUoKTtyUWUoKTthUWUoKTtpUWUoKTtvUWUoKTtuUWUoKTtzUWUoKTtsUWUoKTtjUWUoKTtkUWUoKTt1UWUoKTtmUWUoKTtwUWUoKTtoUWUoKTttUWUoKTtnUWUoKTt4UWUoKTtiUWUoKTt2UWUoKTt5UWUoKTt3UWUoKTtNUWUoKTtrUWUoKTtTUWUoKTt6UWUoKTtDUWUoKTtfUWUoKTtUUWUoKTtMUWUoKTtEUWUoKTtBUWUoKTtFUWUoKTskUWUoKTtQUWUoKTtJUWUoKTtOUWUoKTtGUWUoKTtPUWUoKTtSUWUoKTtCUWUoKTtIUWUoKTtxUWUoKTtqUWUoKTtWUWUoKTtVUWUoKTtXUWUoKTtHUWUoKTtZUWUoKTtaUWUoKTtYUWUoKTtRUWUoKTtLUWUoKTtKUWUoKTtlS2UoKTt0S2UoKTtyS2UoKTthS2UoKTtpS2UoKTtvS2UoKTtuS2UoKTtzS2UoKTtsS2UoKTtjS2UoKTtkS2UoKTt1S2UoKTtmS2UoKTtwS2UoKTtoS2UoKTttS2UoKTtnS2UoKTt4S2UoKTtiS2UoKTt2S2UoKTt5S2UoKTt3S2UoKTtNS2UoKTtrS2UoKTtTS2UoKTt6S2UoKTtDS2UoKTtfS2UoKTtUS2UoKTtMS2UoKTtES2UoKTtBS2UoKTtFS2UoKTskS2UoKTtQS2UoKTtJS2UoKTtOS2UoKTtGS2UoKTtPS2UoKTtSS2UoKTtCS2UoKTtIS2UoKTtxS2UoKTtqS2UoKTtWS2UoKTtVS2UoKTtXS2UoKTtHS2UoKTtZS2UoKTtaS2UoKTtYS2UoKTtRS2UoKTtLS2UoKTtKS2UoKTtlSmUoKTt0SmUoKTtySmUoKTthSmUoKTtpSmUoKTtvSmUoKTtuSmUoKTtzSmUoKTtsSmUoKTtjSmUoKTtkSmUoKTt1SmUoKTtmSmUoKTtwSmUoKTtoSmUoKTttSmUoKTtnSmUoKTt4SmUoKTtiSmUoKTt2SmUoKTt5SmUoKTt3SmUoKTtNSmUoKTtrSmUoKTtTSmUoKTt6SmUoKTtDSmUoKTtfSmUoKTtUSmUoKTtMSmUoKTtESmUoKTtBSmUoKTtFSmUoKTskSmUoKTtQSmUoKTtJSmUoKTtOSmUoKTtGSmUoKTtPSmUoKTtSSmUoKTtCSmUoKTtISmUoKTtxSmUoKTtqSmUoKTtWSmUoKTtVSmUoKTtXSmUoKTtHSmUoKTtZSmUoKTtaSmUoKTtYSmUoKTtRSmUoKTtLSmUoKTtKSmUoKTtlZXQoKTt0ZXQoKTtyZXQoKTthZXQoKTtpZXQoKTtvZXQoKTtuZXQoKTtzZXQoKTtjZXQoKTtkZXQoKTt1ZXQoKTtmZXQoKTtwZXQoKTtoZXQoKTttZXQoKTtnZXQoKTt4ZXQoKTtiZXQoKTt2ZXQoKTt5ZXQoKTt3ZXQoKTtNZXQoKTtrZXQoKTt6ZXQoKTtDZXQoKTtfZXQoKTtUZXQoKTtMZXQoKTtEZXQoKTtBZXQoKTtFZXQoKTskZXQoKTtQZXQoKTtJZXQoKTtOZXQoKTtGZXQoKTtPZXQoKTtSZXQoKTtCZXQoKTtIZXQoKTtxZXQoKTtqZXQoKTtWZXQoKTtVZXQoKTtXZXQoKTtHZXQoKTtZZXQoKTtaZXQoKTtYZXQoKTtRZXQoKTtLZXQoKTtKZXQoKTtldHQoKTt0dHQoKTtydHQoKTthdHQoKTtpdHQoKTtvdHQoKTtudHQoKTtzdHQoKTtsdHQoKTtjdHQoKTtkdHQoKTt1dHQoKTtmdHQoKTtwdHQoKTtodHQoKTttdHQoKTtndHQoKTt4dHQoKTtidHQoKTt2dHQoKTt5dHQoKTt3dHQoKTtNdHQoKTtrdHQoKTtTdHQoKTt6dHQoKTtDdHQoKTtfdHQoKTtUdHQoKTtMdHQoKTtEdHQoKTtBdHQoKTtFdHQoKTskdHQoKTtQdHQoKTtJdHQoKTtOdHQoKTtGdHQoKTtPdHQoKTtSdHQoKTtCdHQoKTtIdHQoKTtxdHQoKTtqdHQoKTtWdHQoKTtVdHQoKTtXdHQoKTtHdHQoKTtZdHQoKTtadHQoKTtYdHQoKTtRdHQoKTtLdHQoKTtKdHQoKTtlcnQoKTt0cnQoKTtycnQoKTthcnQoKTtpcnQoKTtvcnQoKTtucnQoKTtzcnQoKTtscnQoKTtjcnQoKTtkcnQoKTt1cnQoKTtmcnQoKTtwcnQoKTtocnQoKTttcnQoKTtncnQoKTt4cnQoKTticnQoKTt2cnQoKTt5cnQoKTt3cnQoKTtNcnQoKTtrcnQoKTtTcnQoKTt6cnQoKTtDcnQoKTtfcnQoKTtUcnQoKTtMcnQoKTtEcnQoKTtBcnQoKTtFcnQoKTskcnQoKTtQcnQoKTtJcnQoKTtOcnQoKTtGcnQoKTtPcnQoKTtScnQoKTtCcnQoKTtIcnQoKTtxcnQoKTtqcnQoKTtWcnQoKTtVcnQoKTtXcnQoKTtHcnQoKTtZcnQoKTtacnQoKTtYcnQoKTtRcnQoKTtLcnQoKTtKcnQoKTtlYXQoKTt0YXQoKTtyYXQoKTthYXQoKTtpYXQoKTtvYXQoKTtuYXQoKTtzYXQoKTtsYXQoKTtjYXQoKTtkYXQoKTt1YXQoKTtmYXQoKTtwYXQoKTtoYXQoKTttYXQoKTtnYXQoKTt4YXQoKTtiYXQoKTt2YXQoKTt5YXQoKTt3YXQoKTtNYXQoKTtrYXQoKTtTYXQoKTt6YXQoKTtDYXQoKTtfYXQoKTtUYXQoKTtMYXQoKTtEYXQoKTtBYXQoKTtFYXQoKTskYXQoKTtQYXQoKTtJYXQoKTtOYXQoKTtGYXQoKTtPYXQoKTtSYXQoKTtCYXQoKTtIYXQoKTtxYXQoKTtqYXQoKTtWYXQoKTtVYXQoKTtXYXQoKTtHYXQoKTtZYXQoKTtaYXQoKTtYYXQoKTtRYXQoKTtLYXQoKTtKYXQoKTtlaXQoKTt0aXQoKTtyaXQoKTthaXQoKTtpaXQoKTtvaXQoKTtuaXQoKTtzaXQoKTtsaXQoKTtjaXQoKTtkaXQoKTt1aXQoKTtmaXQoKTtwaXQoKTtoaXQoKTttaXQoKTtnaXQoKTt4aXQoKTtiaXQoKTt2aXQoKTt5aXQoKTt3aXQoKTtNaXQoKTtraXQoKTtTaXQoKTt6aXQoKTtDaXQoKTtfaXQoKTtUaXQoKTtMaXQoKTtEaXQoKTtBaXQoKTtFaXQoKTskaXQoKTtQaXQoKTtJaXQoKTtOaXQoKTtGaXQoKTtPaXQoKTtSaXQoKTtCaXQoKTtIaXQoKTtxaXQoKTtqaXQoKTtWaXQoKTtVaXQoKTtXaXQoKTtHaXQoKTtZaXQoKTtaaXQoKTtYaXQoKTtRaXQoKTtLaXQoKTtKaXQoKTtlMXQoKTt0MXQoKTtyMXQoKTthMXQoKTtpMXQoKTtvMXQoKTtuMXQoKTtzMXQoKTtsMXQoKTtjMXQoKTtkMXQoKTt1MXQoKTtmMXQoKTtwMXQoKTtoMXQoKTttMXQoKTtnMXQoKTt4MXQoKTtiMXQoKTt2MXQoKTt5MXQoKTt3MXQoKTtNMXQoKTtrMXQoKTtTMXQoKTt6MXQoKTtDMXQoKTtfMXQoKTtUMXQoKTtMMXQoKTtEMXQoKTtBMXQoKTtFMXQoKTskMXQoKTtQMXQoKTtJMXQoKTtOMXQoKTtGMXQoKTtPMXQoKTtSMXQoKTtCMXQoKTtIMXQoKTtxMXQoKTtqMXQoKTtWMXQoKTtVMXQoKTtXMXQoKTtHMXQoKTtZMXQoKTtaMXQoKTtYMXQoKTtRMXQoKTtLMXQoKTtKMXQoKTtlb3QoKTt0b3QoKTtyb3QoKTthb3QoKTtpb3QoKTtvb3QoKTtub3QoKTtzb3QoKTtsb3QoKTtjb3QoKTtkb3QoKTt1b3QoKTtmb3QoKTtwb3QoKTtob3QoKTttb3QoKTtnb3QoKTt4b3QoKTtib3QoKTt2b3QoKTt5b3QoKTt3b3QoKTtNb3QoKTtrb3QoKTtTb3QoKTt6b3QoKTtDb3QoKTtfb3QoKTtUb3QoKTtMb3QoKTtEb3QoKTtBb3QoKTtFb3QoKTskb3QoKTtQb3QoKTtJb3QoKTtOb3QoKTtGb3QoKTtPb3QoKTtSb3QoKTtCb3QoKTtIb3QoKTtxb3QoKTtqb3QoKTtWb3QoKTtVb3QoKTtXb3QoKTtHb3QoKTtZb3QoKTtab3QoKTtYb3QoKTtRb3QoKTtLb3QoKTtKb3QoKTtlbnQoKTt0bnQoKTtybnQoKTthbnQoKTtpbnQoKTtvbnQoKTtubnQoKTtzbnQoKTtsbnQoKTtjbnQoKTtkbnQoKTt1bnQoKTtmbnQoKTtwbnQoKTtobnQoKTttbnQoKTtnbnQoKTt4bnQoKTtibnQoKTt2bnQoKTt5bnQoKTt3bnQoKTtNbnQoKTtrbnQoKTtTbnQoKTt6bnQoKTtDbnQoKTtfbnQoKTtUbnQoKTtMbnQoKTtEbnQoKTtBbnQoKTtFbnQoKTskbnQoKTtQbnQoKTtJbnQoKTtObnQoKTtGbnQoKTtPbnQoKTtSbnQoKTtCbnQoKTtIbnQoKTtxbnQoKTtqbnQoKTtWbnQoKTtVbnQoKTtXbnQoKTtHbnQoKTtZbnQoKTtabnQoKTtYbnQoKTtRbnQoKTtLbnQoKTtKbnQoKTtlc3QoKTt0c3QoKTtyc3QoKTthc3QoKTtpc3QoKTtvc3QoKTtuc3QoKTtzc3QoKTtsc3QoKTtjc3QoKTtkc3QoKTt1c3QoKTtmc3QoKTtwc3QoKTtoc3QoKTttc3QoKTtnc3QoKTt4c3QoKTtic3QoKTt2c3QoKTt5c3QoKTt3c3QoKTtNc3QoKTtrc3QoKTtTc3QoKTt6c3QoKTtDc3QoKTtfc3QoKTtUc3QoKTtMc3QoKTtEc3QoKTtBc3QoKTtFc3QoKTskc3QoKTtQc3QoKTtJc3QoKTtOc3QoKTtGc3QoKTtPc3QoKTtSc3QoKTtCc3QoKTtIc3QoKTtxc3QoKTtqc3QoKTtWc3QoKTtVc3QoKTtXc3QoKTtHc3QoKTtZc3QoKTtac3QoKTtYc3QoKTtRc3QoKTtLc3QoKTtKc3QoKTtlMnQoKTt0MnQoKTtyMnQoKTthMnQoKTtpMnQoKTtvMnQoKTtuMnQoKTtzMnQoKTtsMnQoKTtjMnQoKTtkMnQoKTt1MnQoKTtmMnQoKTtwMnQoKTtoMnQoKTttMnQoKTtnMnQoKTt4MnQoKTtiMnQoKTt2MnQoKTt5MnQoKTt3MnQoKTtNMnQoKTtrMnQoKTtTMnQoKTt6MnQoKTtDMnQoKTtfMnQoKTtUMnQoKTtMMnQoKTtEMnQoKTtBMnQoKTtFMnQoKTskMnQoKTtQMnQoKTtJMnQoKTtOMnQoKTtGMnQoKTtPMnQoKTtSMnQoKTtCMnQoKTtIMnQoKTtxMnQoKTtqMnQoKTtWMnQoKTtVMnQoKTtXMnQoKTtHMnQoKTtZMnQoKTtaMnQoKTtYMnQoKTtRMnQoKTtLMnQoKTtKMnQoKTtlbHQoKTt0bHQoKTtybHQoKTthbHQoKTtpbHQoKTtvbHQoKTtubHQoKTtzbHQoKTtsbHQoKTtjbHQoKTtkbHQoKTt1bHQoKTtmbHQoKTtwbHQoKTtobHQoKTttbHQoKTtnbHQoKTt4bHQoKTtibHQoKTt2bHQoKTt5bHQoKTt3bHQoKTtNbHQoKTtrbHQoKTtTbHQoKTt6bHQoKTtDbHQoKTtfbHQoKTtUbHQoKTtMbHQoKTtEbHQoKTt9KTt2YXIgY2w9e307cWUoY2wse0FBcnJvd0Rvd246KCk9Plh3LEFBcnJvd1VwOigpPT5RdyxBTGFyZ2VTbWFsbDooKT0+S3csQWNjZXNzaWJpbGl0eTooKT0+SncsQWN0aXZpdHk6KCk9PmVNLEFjdGl2aXR5U3F1YXJlOigpPT5YNSxBaXJWZW50OigpPT50TSxBaXJwbGF5OigpPT5yTSxBbGFybUNoZWNrOigpPT5jdSxBbGFybUNsb2NrOigpPT5pTSxBbGFybUNsb2NrQ2hlY2s6KCk9PmN1LEFsYXJtQ2xvY2tNaW51czooKT0+bHUsQWxhcm1DbG9ja09mZjooKT0+YU0sQWxhcm1DbG9ja1BsdXM6KCk9PmR1LEFsYXJtTWludXM6KCk9Pmx1LEFsYXJtUGx1czooKT0+ZHUsQWxhcm1TbW9rZTooKT0+b00sQWxidW06KCk9Pm5NLEFsZXJ0Q2lyY2xlOigpPT5SdSxBbGVydE9jdGFnb246KCk9PlM1LEFsZXJ0VHJpYW5nbGU6KCk9Pmk4LEFsaWduQ2VudGVyOigpPT5YcCxBbGlnbkNlbnRlckhvcml6b250YWw6KCk9PnNNLEFsaWduQ2VudGVyVmVydGljYWw6KCk9PmxNLEFsaWduRW5kSG9yaXpvbnRhbDooKT0+Y00sQWxpZ25FbmRWZXJ0aWNhbDooKT0+ZE0sQWxpZ25Ib3Jpem9udGFsRGlzdHJpYnV0ZUNlbnRlcjooKT0+dU0sQWxpZ25Ib3Jpem9udGFsRGlzdHJpYnV0ZUVuZDooKT0+Zk0sQWxpZ25Ib3Jpem9udGFsRGlzdHJpYnV0ZVN0YXJ0OigpPT5wTSxBbGlnbkhvcml6b250YWxKdXN0aWZ5Q2VudGVyOigpPT5oTSxBbGlnbkhvcml6b250YWxKdXN0aWZ5RW5kOigpPT5tTSxBbGlnbkhvcml6b250YWxKdXN0aWZ5U3RhcnQ6KCk9PmdNLEFsaWduSG9yaXpvbnRhbFNwYWNlQXJvdW5kOigpPT54TSxBbGlnbkhvcml6b250YWxTcGFjZUJldHdlZW46KCk9PmJNLEFsaWduSnVzdGlmeTooKT0+S3AsQWxpZ25MZWZ0OigpPT5QYyxBbGlnblJpZ2h0OigpPT5RcCxBbGlnblN0YXJ0SG9yaXpvbnRhbDooKT0+dk0sQWxpZ25TdGFydFZlcnRpY2FsOigpPT55TSxBbGlnblZlcnRpY2FsRGlzdHJpYnV0ZUNlbnRlcjooKT0+d00sQWxpZ25WZXJ0aWNhbERpc3RyaWJ1dGVFbmQ6KCk9Pk1NLEFsaWduVmVydGljYWxEaXN0cmlidXRlU3RhcnQ6KCk9PmtNLEFsaWduVmVydGljYWxKdXN0aWZ5Q2VudGVyOigpPT5TTSxBbGlnblZlcnRpY2FsSnVzdGlmeUVuZDooKT0+ek0sQWxpZ25WZXJ0aWNhbEp1c3RpZnlTdGFydDooKT0+Q00sQWxpZ25WZXJ0aWNhbFNwYWNlQXJvdW5kOigpPT5fTSxBbGlnblZlcnRpY2FsU3BhY2VCZXR3ZWVuOigpPT5UTSxBbWJ1bGFuY2U6KCk9PkRNLEFtcGVyc2FuZDooKT0+TE0sQW1wZXJzYW5kczooKT0+QU0sQW1waG9yYTooKT0+RU0sQW5jaG9yOigpPT4kTSxBbmdyeTooKT0+UE0sQW5ub3llZDooKT0+SU0sQW50ZW5uYTooKT0+Tk0sQW52aWw6KCk9PkZNLEFwZXJ0dXJlOigpPT5PTSxBcHBXaW5kb3c6KCk9PkJNLEFwcFdpbmRvd01hYzooKT0+Uk0sQXBwbGU6KCk9PkhNLEFyY2hpdmU6KCk9PlZNLEFyY2hpdmVSZXN0b3JlOigpPT5xTSxBcmNoaXZlWDooKT0+ak0sQXJlYUNoYXJ0OigpPT56dSxBcm1jaGFpcjooKT0+VU0sQXJyb3dCaWdEb3duOigpPT5HTSxBcnJvd0JpZ0Rvd25EYXNoOigpPT5XTSxBcnJvd0JpZ0xlZnQ6KCk9PlpNLEFycm93QmlnTGVmdERhc2g6KCk9PllNLEFycm93QmlnUmlnaHQ6KCk9PlFNLEFycm93QmlnUmlnaHREYXNoOigpPT5YTSxBcnJvd0JpZ1VwOigpPT5layxBcnJvd0JpZ1VwRGFzaDooKT0+S00sQXJyb3dEb3duOigpPT5jayxBcnJvd0Rvd24wMTooKT0+Sk0sQXJyb3dEb3duMTA6KCk9PnRrLEFycm93RG93bkFaOigpPT51dSxBcnJvd0Rvd25BejooKT0+dXUsQXJyb3dEb3duQ2lyY2xlOigpPT5CdSxBcnJvd0Rvd25Gcm9tTGluZTooKT0+cmssQXJyb3dEb3duTGVmdDooKT0+YWssQXJyb3dEb3duTGVmdEZyb21DaXJjbGU6KCk9PnF1LEFycm93RG93bkxlZnRGcm9tU3F1YXJlOigpPT5lcCxBcnJvd0Rvd25MZWZ0U3F1YXJlOigpPT5aNSxBcnJvd0Rvd25OYXJyb3dXaWRlOigpPT5payxBcnJvd0Rvd25SaWdodDooKT0+b2ssQXJyb3dEb3duUmlnaHRGcm9tQ2lyY2xlOigpPT5qdSxBcnJvd0Rvd25SaWdodEZyb21TcXVhcmU6KCk9PnRwLEFycm93RG93blJpZ2h0U3F1YXJlOigpPT5RNSxBcnJvd0Rvd25TcXVhcmU6KCk9Pks1LEFycm93RG93blRvRG90OigpPT5uayxBcnJvd0Rvd25Ub0xpbmU6KCk9PnNrLEFycm93RG93blVwOigpPT5sayxBcnJvd0Rvd25XaWRlTmFycm93OigpPT5mdSxBcnJvd0Rvd25aQTooKT0+cHUsQXJyb3dEb3duWmE6KCk9PnB1LEFycm93TGVmdDooKT0+cGssQXJyb3dMZWZ0Q2lyY2xlOigpPT5IdSxBcnJvd0xlZnRGcm9tTGluZTooKT0+ZGssQXJyb3dMZWZ0UmlnaHQ6KCk9PnVrLEFycm93TGVmdFNxdWFyZTooKT0+SjUsQXJyb3dMZWZ0VG9MaW5lOigpPT5mayxBcnJvd1JpZ2h0OigpPT54ayxBcnJvd1JpZ2h0Q2lyY2xlOigpPT5XdSxBcnJvd1JpZ2h0RnJvbUxpbmU6KCk9PmhrLEFycm93UmlnaHRMZWZ0OigpPT5tayxBcnJvd1JpZ2h0U3F1YXJlOigpPT5pcCxBcnJvd1JpZ2h0VG9MaW5lOigpPT5nayxBcnJvd1VwOigpPT5fayxBcnJvd1VwMDE6KCk9PmJrLEFycm93VXAxMDooKT0+dmssQXJyb3dVcEFaOigpPT5odSxBcnJvd1VwQXo6KCk9Pmh1LEFycm93VXBDaXJjbGU6KCk9Pkd1LEFycm93VXBEb3duOigpPT55ayxBcnJvd1VwRnJvbURvdDooKT0+d2ssQXJyb3dVcEZyb21MaW5lOigpPT5NayxBcnJvd1VwTGVmdDooKT0+a2ssQXJyb3dVcExlZnRGcm9tQ2lyY2xlOigpPT5WdSxBcnJvd1VwTGVmdEZyb21TcXVhcmU6KCk9PnJwLEFycm93VXBMZWZ0U3F1YXJlOigpPT5vcCxBcnJvd1VwTmFycm93V2lkZTooKT0+bXUsQXJyb3dVcFJpZ2h0OigpPT5TayxBcnJvd1VwUmlnaHRGcm9tQ2lyY2xlOigpPT5VdSxBcnJvd1VwUmlnaHRGcm9tU3F1YXJlOigpPT5hcCxBcnJvd1VwUmlnaHRTcXVhcmU6KCk9Pm5wLEFycm93VXBTcXVhcmU6KCk9PnNwLEFycm93VXBUb0xpbmU6KCk9PnprLEFycm93VXBXaWRlTmFycm93OigpPT5DayxBcnJvd1VwWkE6KCk9Pmd1LEFycm93VXBaYTooKT0+Z3UsQXJyb3dzVXBGcm9tTGluZTooKT0+VGssQXN0ZXJpc2s6KCk9PkRrLEFzdGVyaXNrU3F1YXJlOigpPT5jcCxBdFNpZ246KCk9PkxrLEF0b206KCk9PkFrLEF1ZGlvTGluZXM6KCk9PkVrLEF1ZGlvV2F2ZWZvcm06KCk9PiRrLEF3YXJkOigpPT5QayxBeGU6KCk9PklrLEF4aXMzRDooKT0+eHUsQXhpczNkOigpPT54dSxCYWJ5OigpPT5OayxCYWNrcGFjazooKT0+RmssQmFkZ2U6KCk9PkprLEJhZGdlQWxlcnQ6KCk9Pk9rLEJhZGdlQ2VudDooKT0+UmssQmFkZ2VDaGVjazooKT0+YnUsQmFkZ2VEb2xsYXJTaWduOigpPT5IayxCYWRnZUV1cm86KCk9PkJrLEJhZGdlSGVscDooKT0+dnUsQmFkZ2VJbmRpYW5SdXBlZTooKT0+cWssQmFkZ2VJbmZvOigpPT5qayxCYWRnZUphcGFuZXNlWWVuOigpPT5WayxCYWRnZU1pbnVzOigpPT5VayxCYWRnZVBlcmNlbnQ6KCk9PldrLEJhZGdlUGx1czooKT0+WWssQmFkZ2VQb3VuZFN0ZXJsaW5nOigpPT5HayxCYWRnZVF1ZXN0aW9uTWFyazooKT0+dnUsQmFkZ2VSdXNzaWFuUnVibGU6KCk9PlprLEJhZGdlU3dpc3NGcmFuYzooKT0+WGssQmFkZ2VUdXJraXNoTGlyYTooKT0+UWssQmFkZ2VYOigpPT5LayxCYWdnYWdlQ2xhaW06KCk9PmVTLEJhbGxvb246KCk9PnRTLEJhbjooKT0+clMsQmFuYW5hOigpPT5hUyxCYW5kYWdlOigpPT5pUyxCYW5rbm90ZTooKT0+bFMsQmFua25vdGVBcnJvd0Rvd246KCk9Pm9TLEJhbmtub3RlQXJyb3dVcDooKT0+blMsQmFua25vdGVYOigpPT5zUyxCYXJDaGFydDooKT0+JHUsQmFyQ2hhcnQyOigpPT5QdSxCYXJDaGFydDM6KCk9PkF1LEJhckNoYXJ0NDooKT0+RHUsQmFyQ2hhcnRCaWc6KCk9Pkx1LEJhckNoYXJ0SG9yaXpvbnRhbDooKT0+X3UsQmFyQ2hhcnRIb3Jpem9udGFsQmlnOigpPT5DdSxCYXJjb2RlOigpPT5jUyxCYXJyZWw6KCk9PmRTLEJhc2VsaW5lOigpPT51UyxCYXRoOigpPT5mUyxCYXR0ZXJ5OigpPT52UyxCYXR0ZXJ5Q2hhcmdpbmc6KCk9PnBTLEJhdHRlcnlGdWxsOigpPT5oUyxCYXR0ZXJ5TG93OigpPT5tUyxCYXR0ZXJ5TWVkaXVtOigpPT5nUyxCYXR0ZXJ5UGx1czooKT0+eFMsQmF0dGVyeVdhcm5pbmc6KCk9PmJTLEJlYWtlcjooKT0+eVMsQmVhbjooKT0+TVMsQmVhbk9mZjooKT0+d1MsQmVkOigpPT56UyxCZWREb3VibGU6KCk9PmtTLEJlZFNpbmdsZTooKT0+U1MsQmVlZjooKT0+Q1MsQmVlcjooKT0+VFMsQmVlck9mZjooKT0+X1MsQmVsbDooKT0+SVMsQmVsbERvdDooKT0+TFMsQmVsbEVsZWN0cmljOigpPT5BUyxCZWxsTWludXM6KCk9PkVTLEJlbGxPZmY6KCk9PkRTLEJlbGxQbHVzOigpPT4kUyxCZWxsUmluZzooKT0+UFMsQmV0d2Vlbkhvcml6b25hbEVuZDooKT0+eXUsQmV0d2Vlbkhvcml6b25hbFN0YXJ0OigpPT53dSxCZXR3ZWVuSG9yaXpvbnRhbEVuZDooKT0+eXUsQmV0d2Vlbkhvcml6b250YWxTdGFydDooKT0+d3UsQmV0d2VlblZlcnRpY2FsRW5kOigpPT5OUyxCZXR3ZWVuVmVydGljYWxTdGFydDooKT0+RlMsQmljZXBzRmxleGVkOigpPT5SUyxCaWtlOigpPT5PUyxCaW5hcnk6KCk9PkJTLEJpbm9jdWxhcnM6KCk9PnFTLEJpb2hhemFyZDooKT0+SFMsQmlyZDooKT0+alMsQmlyZGhvdXNlOigpPT5VUyxCaXRjb2luOigpPT5WUyxCbGVuZDooKT0+V1MsQmxpbmRzOigpPT5HUyxCbG9ja3M6KCk9PllTLEJsdWV0b290aDooKT0+S1MsQmx1ZXRvb3RoQ29ubmVjdGVkOigpPT5aUyxCbHVldG9vdGhPZmY6KCk9PlhTLEJsdWV0b290aFNlYXJjaGluZzooKT0+UVMsQm9sZDooKT0+SlMsQm9sdDooKT0+ZXosQm9tYjooKT0+dHosQm9uZTooKT0+cnosQm9vazooKT0+X3osQm9va0E6KCk9PmF6LEJvb2tBbGVydDooKT0+aXosQm9va0F1ZGlvOigpPT5veixCb29rQ2hlY2s6KCk9Pm56LEJvb2tDb3B5OigpPT5zeixCb29rRGFzaGVkOigpPT5NdSxCb29rRG93bjooKT0+bHosQm9va0hlYWRwaG9uZXM6KCk9PmN6LEJvb2tIZWFydDooKT0+ZHosQm9va0ltYWdlOigpPT51eixCb29rS2V5OigpPT5meixCb29rTG9jazooKT0+aHosQm9va01hcmtlZDooKT0+cHosQm9va01pbnVzOigpPT5teixCb29rT3BlbjooKT0+YnosQm9va09wZW5DaGVjazooKT0+Z3osQm9va09wZW5UZXh0OigpPT54eixCb29rUGx1czooKT0+dnosQm9va1NlYXJjaDooKT0+eXosQm9va1RlbXBsYXRlOigpPT5NdSxCb29rVGV4dDooKT0+d3osQm9va1R5cGU6KCk9Pmt6LEJvb2tVcDooKT0+U3osQm9va1VwMjooKT0+TXosQm9va1VzZXI6KCk9Pnp6LEJvb2tYOigpPT5DeixCb29rbWFyazooKT0+RXosQm9va21hcmtDaGVjazooKT0+VHosQm9va21hcmtNaW51czooKT0+THosQm9va21hcmtQbHVzOigpPT5EeixCb29rbWFya1g6KCk9PkF6LEJvb21Cb3g6KCk9PiR6LEJvdDooKT0+TnosQm90TWVzc2FnZVNxdWFyZTooKT0+UHosQm90T2ZmOigpPT5JeixCb3R0bGVXaW5lOigpPT5PeixCb3dBcnJvdzooKT0+RnosQm94OigpPT5SeixCb3hTZWxlY3Q6KCk9PndwLEJveGVzOigpPT5CeixCcmFjZXM6KCk9Pmt1LEJyYWNrZXRzOigpPT5IeixCcmFpbjooKT0+anosQnJhaW5DaXJjdWl0OigpPT5xeixCcmFpbkNvZzooKT0+VnosQnJpY2tXYWxsOigpPT5HeixCcmlja1dhbGxGaXJlOigpPT5VeixCcmlja1dhbGxTaGllbGQ6KCk9Pld6LEJyaWVmY2FzZTooKT0+UXosQnJpZWZjYXNlQnVzaW5lc3M6KCk9Pll6LEJyaWVmY2FzZUNvbnZleW9yQmVsdDooKT0+WnosQnJpZWZjYXNlTWVkaWNhbDooKT0+WHosQnJpbmdUb0Zyb250OigpPT5LeixCcnVzaDooKT0+ZUMsQnJ1c2hDbGVhbmluZzooKT0+SnosQnViYmxlczooKT0+ckMsQnVnOigpPT5pQyxCdWdPZmY6KCk9PnRDLEJ1Z1BsYXk6KCk9PmFDLEJ1aWxkaW5nOigpPT5uQyxCdWlsZGluZzI6KCk9Pm9DLEJ1czooKT0+bEMsQnVzRnJvbnQ6KCk9PnNDLENhYmxlOigpPT5kQyxDYWJsZUNhcjooKT0+Y0MsQ2FrZTooKT0+ZkMsQ2FrZVNsaWNlOigpPT51QyxDYWxjdWxhdG9yOigpPT5wQyxDYWxlbmRhcjooKT0+UEMsQ2FsZW5kYXIxOigpPT5oQyxDYWxlbmRhckFycm93RG93bjooKT0+bUMsQ2FsZW5kYXJBcnJvd1VwOigpPT5nQyxDYWxlbmRhckNoZWNrOigpPT5iQyxDYWxlbmRhckNoZWNrMjooKT0+eEMsQ2FsZW5kYXJDbG9jazooKT0+dkMsQ2FsZW5kYXJDb2c6KCk9PnlDLENhbGVuZGFyRGF5czooKT0+d0MsQ2FsZW5kYXJGb2xkOigpPT5NQyxDYWxlbmRhckhlYXJ0OigpPT5rQyxDYWxlbmRhck1pbnVzOigpPT56QyxDYWxlbmRhck1pbnVzMjooKT0+U0MsQ2FsZW5kYXJPZmY6KCk9PkNDLENhbGVuZGFyUGx1czooKT0+VEMsQ2FsZW5kYXJQbHVzMjooKT0+X0MsQ2FsZW5kYXJSYW5nZTooKT0+TEMsQ2FsZW5kYXJTZWFyY2g6KCk9PkRDLENhbGVuZGFyU3luYzooKT0+QUMsQ2FsZW5kYXJYOigpPT4kQyxDYWxlbmRhclgyOigpPT5FQyxDYWxlbmRhcnM6KCk9PklDLENhbWVyYTooKT0+RkMsQ2FtZXJhT2ZmOigpPT5OQyxDYW5kbGVzdGlja0NoYXJ0OigpPT5UdSxDYW5keTooKT0+cUMsQ2FuZHlDYW5lOigpPT5PQyxDYW5keU9mZjooKT0+UkMsQ2FubmFiaXM6KCk9PkhDLENhbm5hYmlzT2ZmOigpPT5CQyxDYXB0aW9uczooKT0+U3UsQ2FwdGlvbnNPZmY6KCk9PmpDLENhcjooKT0+V0MsQ2FyRnJvbnQ6KCk9PlZDLENhclRheGlGcm9udDooKT0+VUMsQ2FyYXZhbjooKT0+R0MsQ2FyZFNpbTooKT0+WkMsQ2Fycm90OigpPT5ZQyxDYXNlTG93ZXI6KCk9PlhDLENhc2VTZW5zaXRpdmU6KCk9PlFDLENhc2VVcHBlcjooKT0+S0MsQ2Fzc2V0dGVUYXBlOigpPT5KQyxDYXN0OigpPT5lXyxDYXN0bGU6KCk9PnJfLENhdDooKT0+dF8sQ2N0djooKT0+YV8sQ2hhcnRBcmVhOigpPT56dSxDaGFydEJhcjooKT0+X3UsQ2hhcnRCYXJCaWc6KCk9PkN1LENoYXJ0QmFyRGVjcmVhc2luZzooKT0+aV8sQ2hhcnRCYXJJbmNyZWFzaW5nOigpPT5vXyxDaGFydEJhclN0YWNrZWQ6KCk9Pm5fLENoYXJ0Q2FuZGxlc3RpY2s6KCk9PlR1LENoYXJ0Q29sdW1uOigpPT5BdSxDaGFydENvbHVtbkJpZzooKT0+THUsQ2hhcnRDb2x1bW5EZWNyZWFzaW5nOigpPT5zXyxDaGFydENvbHVtbkluY3JlYXNpbmc6KCk9PkR1LENoYXJ0Q29sdW1uU3RhY2tlZDooKT0+bF8sQ2hhcnRHYW50dDooKT0+Y18sQ2hhcnRMaW5lOigpPT5FdSxDaGFydE5ldHdvcms6KCk9PmRfLENoYXJ0Tm9BeGVzQ29sdW1uOigpPT5QdSxDaGFydE5vQXhlc0NvbHVtbkRlY3JlYXNpbmc6KCk9PnVfLENoYXJ0Tm9BeGVzQ29sdW1uSW5jcmVhc2luZzooKT0+JHUsQ2hhcnROb0F4ZXNDb21iaW5lZDooKT0+Zl8sQ2hhcnROb0F4ZXNHYW50dDooKT0+SXUsQ2hhcnRQaWU6KCk9Pk51LENoYXJ0U2NhdHRlcjooKT0+RnUsQ2hhcnRTcGxpbmU6KCk9PnBfLENoZWNrOigpPT5nXyxDaGVja0NoZWNrOigpPT5oXyxDaGVja0NpcmNsZTooKT0+WXUsQ2hlY2tDaXJjbGUyOigpPT5adSxDaGVja0xpbmU6KCk9Pm1fLENoZWNrU3F1YXJlOigpPT5mcCxDaGVja1NxdWFyZTI6KCk9PnBwLENoZWZIYXQ6KCk9PnhfLENoZXJyeTooKT0+Yl8sQ2hlc3NCaXNob3A6KCk9PnlfLENoZXNzS2luZzooKT0+dl8sQ2hlc3NLbmlnaHQ6KCk9PndfLENoZXNzUGF3bjooKT0+TV8sQ2hlc3NRdWVlbjooKT0+a18sQ2hlc3NSb29rOigpPT5TXyxDaGV2cm9uRG93bjooKT0+el8sQ2hldnJvbkRvd25DaXJjbGU6KCk9Plh1LENoZXZyb25Eb3duU3F1YXJlOigpPT5ocCxDaGV2cm9uRmlyc3Q6KCk9PkNfLENoZXZyb25MYXN0OigpPT5fXyxDaGV2cm9uTGVmdDooKT0+TF8sQ2hldnJvbkxlZnRDaXJjbGU6KCk9PlF1LENoZXZyb25MZWZ0U3F1YXJlOigpPT5tcCxDaGV2cm9uUmlnaHQ6KCk9PlRfLENoZXZyb25SaWdodENpcmNsZTooKT0+S3UsQ2hldnJvblJpZ2h0U3F1YXJlOigpPT5ncCxDaGV2cm9uVXA6KCk9PkRfLENoZXZyb25VcENpcmNsZTooKT0+SnUsQ2hldnJvblVwU3F1YXJlOigpPT54cCxDaGV2cm9uc0Rvd246KCk9PkVfLENoZXZyb25zRG93blVwOigpPT5BXyxDaGV2cm9uc0xlZnQ6KCk9PklfLENoZXZyb25zTGVmdFJpZ2h0OigpPT5QXyxDaGV2cm9uc0xlZnRSaWdodEVsbGlwc2lzOigpPT4kXyxDaGV2cm9uc1JpZ2h0OigpPT5GXyxDaGV2cm9uc1JpZ2h0TGVmdDooKT0+Tl8sQ2hldnJvbnNVcDooKT0+Ul8sQ2hldnJvbnNVcERvd246KCk9Pk9fLENocm9tZTooKT0+T3UsQ2hyb21pdW06KCk9Pk91LENodXJjaDooKT0+SF8sQ2lnYXJldHRlOigpPT5xXyxDaWdhcmV0dGVPZmY6KCk9PkJfLENpcmNsZTooKT0+YVQsQ2lyY2xlQWxlcnQ6KCk9PlJ1LENpcmNsZUFycm93RG93bjooKT0+QnUsQ2lyY2xlQXJyb3dMZWZ0OigpPT5IdSxDaXJjbGVBcnJvd091dERvd25MZWZ0OigpPT5xdSxDaXJjbGVBcnJvd091dERvd25SaWdodDooKT0+anUsQ2lyY2xlQXJyb3dPdXRVcExlZnQ6KCk9PlZ1LENpcmNsZUFycm93T3V0VXBSaWdodDooKT0+VXUsQ2lyY2xlQXJyb3dSaWdodDooKT0+V3UsQ2lyY2xlQXJyb3dVcDooKT0+R3UsQ2lyY2xlQ2hlY2s6KCk9Plp1LENpcmNsZUNoZWNrQmlnOigpPT5ZdSxDaXJjbGVDaGV2cm9uRG93bjooKT0+WHUsQ2lyY2xlQ2hldnJvbkxlZnQ6KCk9PlF1LENpcmNsZUNoZXZyb25SaWdodDooKT0+S3UsQ2lyY2xlQ2hldnJvblVwOigpPT5KdSxDaXJjbGVEYXNoZWQ6KCk9PmpfLENpcmNsZURpdmlkZTooKT0+ZWYsQ2lyY2xlRG9sbGFyU2lnbjooKT0+Vl8sQ2lyY2xlRG90OigpPT5XXyxDaXJjbGVEb3REYXNoZWQ6KCk9PlVfLENpcmNsZUVsbGlwc2lzOigpPT5HXyxDaXJjbGVFcXVhbDooKT0+WV8sQ2lyY2xlRmFkaW5nQXJyb3dVcDooKT0+Wl8sQ2lyY2xlRmFkaW5nUGx1czooKT0+WF8sQ2lyY2xlR2F1Z2U6KCk9PnRmLENpcmNsZUhlbHA6KCk9Pl9jLENpcmNsZU1pbnVzOigpPT5yZixDaXJjbGVPZmY6KCk9PlFfLENpcmNsZVBhcmtpbmc6KCk9PmFmLENpcmNsZVBhcmtpbmdPZmY6KCk9Pm9mLENpcmNsZVBhdXNlOigpPT5uZixDaXJjbGVQZXJjZW50OigpPT5zZixDaXJjbGVQaWxlOigpPT5LXyxDaXJjbGVQbGF5OigpPT5sZixDaXJjbGVQbHVzOigpPT5jZixDaXJjbGVQb3VuZFN0ZXJsaW5nOigpPT5KXyxDaXJjbGVQb3dlcjooKT0+ZGYsQ2lyY2xlUXVlc3Rpb25NYXJrOigpPT5fYyxDaXJjbGVTbGFzaDooKT0+ZVQsQ2lyY2xlU2xhc2gyOigpPT51ZixDaXJjbGVTbGFzaGVkOigpPT51ZixDaXJjbGVTbWFsbDooKT0+dFQsQ2lyY2xlU3RhcjooKT0+clQsQ2lyY2xlU3RvcDooKT0+ZmYsQ2lyY2xlVXNlcjooKT0+aGYsQ2lyY2xlVXNlclJvdW5kOigpPT5wZixDaXJjbGVYOigpPT5tZixDaXJjdWl0Qm9hcmQ6KCk9PmlULENpdHJ1czooKT0+b1QsQ2xhcHBlcmJvYXJkOigpPT5uVCxDbGlwYm9hcmQ6KCk9PmdULENsaXBib2FyZENoZWNrOigpPT5zVCxDbGlwYm9hcmRDbG9jazooKT0+bFQsQ2xpcGJvYXJkQ29weTooKT0+Y1QsQ2xpcGJvYXJkRWRpdDooKT0+eGYsQ2xpcGJvYXJkTGlzdDooKT0+ZFQsQ2xpcGJvYXJkTWludXM6KCk9PnVULENsaXBib2FyZFBhc3RlOigpPT5mVCxDbGlwYm9hcmRQZW46KCk9PnhmLENsaXBib2FyZFBlbkxpbmU6KCk9PmdmLENsaXBib2FyZFBsdXM6KCk9PnBULENsaXBib2FyZFNpZ25hdHVyZTooKT0+Z2YsQ2xpcGJvYXJkVHlwZTooKT0+aFQsQ2xpcGJvYXJkWDooKT0+bVQsQ2xvY2s6KCk9PklULENsb2NrMTooKT0+eFQsQ2xvY2sxMDooKT0+YlQsQ2xvY2sxMTooKT0+dlQsQ2xvY2sxMjooKT0+eVQsQ2xvY2syOigpPT5NVCxDbG9jazM6KCk9PndULENsb2NrNDooKT0+a1QsQ2xvY2s1OigpPT5TVCxDbG9jazY6KCk9PnpULENsb2NrNzooKT0+Q1QsQ2xvY2s4OigpPT5UVCxDbG9jazk6KCk9Pl9ULENsb2NrQWxlcnQ6KCk9PkxULENsb2NrQXJyb3dEb3duOigpPT5EVCxDbG9ja0Fycm93VXA6KCk9PkFULENsb2NrQ2hlY2s6KCk9PkVULENsb2NrRmFkaW5nOigpPT4kVCxDbG9ja1BsdXM6KCk9PlBULENsb3NlZENhcHRpb246KCk9PkZULENsb3VkOigpPT5lTCxDbG91ZEFsZXJ0OigpPT5OVCxDbG91ZEJhY2t1cDooKT0+T1QsQ2xvdWRDaGVjazooKT0+UlQsQ2xvdWRDb2c6KCk9PkJULENsb3VkRG93bmxvYWQ6KCk9PmJmLENsb3VkRHJpenpsZTooKT0+SFQsQ2xvdWRGb2c6KCk9PnFULENsb3VkSGFpbDooKT0+alQsQ2xvdWRMaWdodG5pbmc6KCk9PlZULENsb3VkTW9vbjooKT0+V1QsQ2xvdWRNb29uUmFpbjooKT0+VVQsQ2xvdWRPZmY6KCk9PkdULENsb3VkUmFpbjooKT0+WlQsQ2xvdWRSYWluV2luZDooKT0+WVQsQ2xvdWRTbm93OigpPT5YVCxDbG91ZFN1bjooKT0+SlQsQ2xvdWRTdW5SYWluOigpPT5RVCxDbG91ZFN5bmM6KCk9PktULENsb3VkVXBsb2FkOigpPT52ZixDbG91ZHk6KCk9PnRMLENsb3ZlcjooKT0+ckwsQ2x1YjooKT0+YUwsQ29kZTooKT0+aUwsQ29kZTI6KCk9PnlmLENvZGVTcXVhcmU6KCk9PmJwLENvZGVYbWw6KCk9PnlmLENvZGVwZW46KCk9Pm9MLENvZGVzYW5kYm94OigpPT5uTCxDb2ZmZWU6KCk9PnNMLENvZzooKT0+bEwsQ29pbnM6KCk9PmNMLENvbHVtbnM6KCk9PndmLENvbHVtbnMyOigpPT53ZixDb2x1bW5zMzooKT0+TWYsQ29sdW1uczNDb2c6KCk9PlRjLENvbHVtbnM0OigpPT5kTCxDb2x1bW5zU2V0dGluZ3M6KCk9PlRjLENvbWJpbmU6KCk9PnVMLENvbW1hbmQ6KCk9PmZMLENvbXBhc3M6KCk9PnBMLENvbXBvbmVudDooKT0+aEwsQ29tcHV0ZXI6KCk9PmdMLENvbmNpZXJnZUJlbGw6KCk9Pm1MLENvbmU6KCk9PnhMLENvbnN0cnVjdGlvbjooKT0+YkwsQ29udGFjdDooKT0+dkwsQ29udGFjdDI6KCk9PmtmLENvbnRhY3RSb3VuZDooKT0+a2YsQ29udGFpbmVyOigpPT55TCxDb250cmFzdDooKT0+d0wsQ29va2llOigpPT5NTCxDb29raW5nUG90OigpPT5rTCxDb3B5OigpPT5MTCxDb3B5Q2hlY2s6KCk9PlNMLENvcHlNaW51czooKT0+ekwsQ29weVBsdXM6KCk9PkNMLENvcHlTbGFzaDooKT0+X0wsQ29weVg6KCk9PlRMLENvcHlsZWZ0OigpPT5ETCxDb3B5cmlnaHQ6KCk9PkFMLENvcm5lckRvd25MZWZ0OigpPT5FTCxDb3JuZXJEb3duUmlnaHQ6KCk9PiRMLENvcm5lckxlZnREb3duOigpPT5QTCxDb3JuZXJMZWZ0VXA6KCk9PklMLENvcm5lclJpZ2h0RG93bjooKT0+TkwsQ29ybmVyUmlnaHRVcDooKT0+RkwsQ29ybmVyVXBMZWZ0OigpPT5PTCxDb3JuZXJVcFJpZ2h0OigpPT5CTCxDcHU6KCk9PlJMLENyZWF0aXZlQ29tbW9uczooKT0+SEwsQ3JlZGl0Q2FyZDooKT0+cUwsQ3JvaXNzYW50OigpPT5qTCxDcm9wOigpPT5WTCxDcm9zczooKT0+VUwsQ3Jvc3NoYWlyOigpPT5XTCxDcm93bjooKT0+R0wsQ3Vib2lkOigpPT5aTCxDdXBTb2RhOigpPT5ZTCxDdXJseUJyYWNlczooKT0+a3UsQ3VycmVuY3k6KCk9PlhMLEN5bGluZGVyOigpPT5RTCxEYW06KCk9PktMLERhdGFiYXNlOigpPT5hRCxEYXRhYmFzZUJhY2t1cDooKT0+SkwsRGF0YWJhc2VTZWFyY2g6KCk9PnRELERhdGFiYXNlWmFwOigpPT5lRCxEZWNpbWFsc0Fycm93TGVmdDooKT0+ckQsRGVjaW1hbHNBcnJvd1JpZ2h0OigpPT5pRCxEZWxldGU6KCk9Pm9ELERlc3NlcnQ6KCk9PnNELERpYW1ldGVyOigpPT5uRCxEaWFtb25kOigpPT5kRCxEaWFtb25kTWludXM6KCk9PmxELERpYW1vbmRQZXJjZW50OigpPT5TZixEaWFtb25kUGx1czooKT0+Y0QsRGljZTE6KCk9PnVELERpY2UyOigpPT5mRCxEaWNlMzooKT0+cEQsRGljZTQ6KCk9PmhELERpY2U1OigpPT5tRCxEaWNlNjooKT0+Z0QsRGljZXM6KCk9PnhELERpZmY6KCk9PmJELERpc2M6KCk9Pk1ELERpc2MyOigpPT52RCxEaXNjMzooKT0+d0QsRGlzY0FsYnVtOigpPT55RCxEaXZpZGU6KCk9PmtELERpdmlkZUNpcmNsZTooKT0+ZWYsRGl2aWRlU3F1YXJlOigpPT5NcCxEbmE6KCk9PkNELERuYU9mZjooKT0+U0QsRG9jazooKT0+ekQsRG9nOigpPT5fRCxEb2xsYXJTaWduOigpPT5URCxEb251dDooKT0+TEQsRG9vckNsb3NlZDooKT0+REQsRG9vckNsb3NlZExvY2tlZDooKT0+QUQsRG9vck9wZW46KCk9PkVELERvdDooKT0+JEQsRG90U3F1YXJlOigpPT5rcCxEb3dubG9hZDooKT0+UEQsRG93bmxvYWRDbG91ZDooKT0+YmYsRHJhZnRpbmdDb21wYXNzOigpPT5ORCxEcmFtYTooKT0+SUQsRHJpYmJibGU6KCk9PkZELERyaWxsOigpPT5PRCxEcm9uZTooKT0+UkQsRHJvcGxldDooKT0+QkQsRHJvcGxldE9mZjooKT0+SEQsRHJvcGxldHM6KCk9PnFELERydW06KCk9PmpELERydW1zdGljazooKT0+VkQsRHVtYmJlbGw6KCk9PlVELEVhcjooKT0+R0QsRWFyT2ZmOigpPT5XRCxFYXJ0aDooKT0+emYsRWFydGhMb2NrOigpPT5ZRCxFY2xpcHNlOigpPT5aRCxFZGl0OigpPT4kcyxFZGl0MjooKT0+RjUsRWRpdDM6KCk9Pk41LEVnZzooKT0+S0QsRWdnRnJpZWQ6KCk9PlFELEVnZ09mZjooKT0+WEQsRWxsaXBzZTooKT0+SkQsRWxsaXBzaXM6KCk9Pl9mLEVsbGlwc2lzVmVydGljYWw6KCk9PkNmLEVxdWFsOigpPT5yQSxFcXVhbEFwcHJveGltYXRlbHk6KCk9PmVBLEVxdWFsTm90OigpPT50QSxFcXVhbFNxdWFyZTooKT0+U3AsRXJhc2VyOigpPT5hQSxFdGhlcm5ldFBvcnQ6KCk9PmlBLEV1cm86KCk9Pm9BLEV2Q2hhcmdlcjooKT0+c0EsRXhwYW5kOigpPT5uQSxFeHRlcm5hbExpbms6KCk9PmxBLEV5ZTooKT0+dUEsRXllQ2xvc2VkOigpPT5kQSxFeWVPZmY6KCk9PmNBLEZhY2Vib29rOigpPT5mQSxGYWN0b3J5OigpPT5wQSxGYW46KCk9PmhBLEZhc3RGb3J3YXJkOigpPT5tQSxGZWF0aGVyOigpPT5nQSxGZW5jZTooKT0+eEEsRmVycmlzV2hlZWw6KCk9PmJBLEZpZ21hOigpPT52QSxGaWxlOigpPT5ZQSxGaWxlQXJjaGl2ZTooKT0+eUEsRmlsZUF1ZGlvOigpPT5MYyxGaWxlQXVkaW8yOigpPT5MYyxGaWxlQXhpczNEOigpPT5UZixGaWxlQXhpczNkOigpPT5UZixGaWxlQmFkZ2U6KCk9PkxmLEZpbGVCYWRnZTI6KCk9PkxmLEZpbGVCYXJDaGFydDooKT0+RWYsRmlsZUJhckNoYXJ0MjooKT0+JGYsRmlsZUJveDooKT0+d0EsRmlsZUJyYWNlczooKT0+QWYsRmlsZUJyYWNlc0Nvcm5lcjooKT0+RGYsRmlsZUNoYXJ0Q29sdW1uOigpPT4kZixGaWxlQ2hhcnRDb2x1bW5JbmNyZWFzaW5nOigpPT5FZixGaWxlQ2hhcnRMaW5lOigpPT5QZixGaWxlQ2hhcnRQaWU6KCk9PklmLEZpbGVDaGVjazooKT0+TUEsRmlsZUNoZWNrMjooKT0+TmYsRmlsZUNoZWNrQ29ybmVyOigpPT5OZixGaWxlQ2xvY2s6KCk9PmtBLEZpbGVDb2RlOigpPT5TQSxGaWxlQ29kZTI6KCk9PkZmLEZpbGVDb2RlQ29ybmVyOigpPT5GZixGaWxlQ29nOigpPT5PZixGaWxlQ29nMjooKT0+T2YsRmlsZURpZmY6KCk9PkNBLEZpbGVEaWdpdDooKT0+ekEsRmlsZURvd246KCk9Pl9BLEZpbGVFZGl0OigpPT5WZixGaWxlRXhjbGFtYXRpb25Qb2ludDooKT0+UmYsRmlsZUhlYWRwaG9uZTooKT0+TGMsRmlsZUhlYXJ0OigpPT5UQSxGaWxlSW1hZ2U6KCk9PkxBLEZpbGVJbnB1dDooKT0+REEsRmlsZUpzb246KCk9PkFmLEZpbGVKc29uMjooKT0+RGYsRmlsZUtleTooKT0+SGYsRmlsZUtleTI6KCk9PkhmLEZpbGVMaW5lQ2hhcnQ6KCk9PlBmLEZpbGVMb2NrOigpPT5CZixGaWxlTG9jazI6KCk9PkJmLEZpbGVNaW51czooKT0+QUEsRmlsZU1pbnVzMjooKT0+cWYsRmlsZU1pbnVzQ29ybmVyOigpPT5xZixGaWxlTXVzaWM6KCk9PkVBLEZpbGVPdXRwdXQ6KCk9PiRBLEZpbGVQZW46KCk9PlZmLEZpbGVQZW5MaW5lOigpPT5qZixGaWxlUGllQ2hhcnQ6KCk9PklmLEZpbGVQbGF5OigpPT5VZixGaWxlUGx1czooKT0+UEEsRmlsZVBsdXMyOigpPT5XZixGaWxlUGx1c0Nvcm5lcjooKT0+V2YsRmlsZVF1ZXN0aW9uOigpPT5HZixGaWxlUXVlc3Rpb25NYXJrOigpPT5HZixGaWxlU2NhbjooKT0+SUEsRmlsZVNlYXJjaDooKT0+TkEsRmlsZVNlYXJjaDI6KCk9PllmLEZpbGVTZWFyY2hDb3JuZXI6KCk9PllmLEZpbGVTaWduYWw6KCk9PlpmLEZpbGVTaWduYXR1cmU6KCk9PmpmLEZpbGVTbGlkZXJzOigpPT5GQSxGaWxlU3ByZWFkc2hlZXQ6KCk9Pk9BLEZpbGVTdGFjazooKT0+UkEsRmlsZVN5bWxpbms6KCk9PkJBLEZpbGVUZXJtaW5hbDooKT0+akEsRmlsZVRleHQ6KCk9PkhBLEZpbGVUeXBlOigpPT5xQSxGaWxlVHlwZTI6KCk9PlhmLEZpbGVUeXBlQ29ybmVyOigpPT5YZixGaWxlVXA6KCk9PlZBLEZpbGVVc2VyOigpPT5VQSxGaWxlVmlkZW86KCk9PlVmLEZpbGVWaWRlbzI6KCk9PlFmLEZpbGVWaWRlb0NhbWVyYTooKT0+UWYsRmlsZVZvbHVtZTooKT0+V0EsRmlsZVZvbHVtZTI6KCk9PlpmLEZpbGVXYXJuaW5nOigpPT5SZixGaWxlWDooKT0+R0EsRmlsZVgyOigpPT5LZixGaWxlWENvcm5lcjooKT0+S2YsRmlsZXM6KCk9PlpBLEZpbG06KCk9PlhBLEZpbHRlcjooKT0+YTUsRmlsdGVyWDooKT0+cjUsRmluZ2VycHJpbnQ6KCk9PkpmLEZpbmdlcnByaW50UGF0dGVybjooKT0+SmYsRmlyZUV4dGluZ3Vpc2hlcjooKT0+UUEsRmlzaDooKT0+ZUUsRmlzaE9mZjooKT0+S0EsRmlzaFN5bWJvbDooKT0+SkEsRmlzaGluZ0hvb2s6KCk9PnRFLEZpc2hpbmdSb2Q6KCk9PnJFLEZsYWc6KCk9Pm5FLEZsYWdPZmY6KCk9PmlFLEZsYWdUcmlhbmdsZUxlZnQ6KCk9PmFFLEZsYWdUcmlhbmdsZVJpZ2h0OigpPT5vRSxGbGFtZTooKT0+bEUsRmxhbWVLaW5kbGluZzooKT0+c0UsRmxhc2hsaWdodDooKT0+ZEUsRmxhc2hsaWdodE9mZjooKT0+Y0UsRmxhc2tDb25pY2FsOigpPT51RSxGbGFza0NvbmljYWxPZmY6KCk9PmZFLEZsYXNrUm91bmQ6KCk9PnBFLEZsaXBIb3Jpem9udGFsOigpPT5scCxGbGlwSG9yaXpvbnRhbDI6KCk9PmhFLEZsaXBWZXJ0aWNhbDooKT0+dXAsRmxpcFZlcnRpY2FsMjooKT0+bUUsRmxvd2VyOigpPT54RSxGbG93ZXIyOigpPT5nRSxGb2N1czooKT0+YkUsRm9sZEhvcml6b250YWw6KCk9PnZFLEZvbGRWZXJ0aWNhbDooKT0+eUUsRm9sZGVyOigpPT5ZRSxGb2xkZXJBcmNoaXZlOigpPT53RSxGb2xkZXJDaGVjazooKT0+TUUsRm9sZGVyQ2xvY2s6KCk9PmtFLEZvbGRlckNsb3NlZDooKT0+U0UsRm9sZGVyQ29kZTooKT0+ekUsRm9sZGVyQ29nOigpPT5lNSxGb2xkZXJDb2cyOigpPT5lNSxGb2xkZXJEb3Q6KCk9PkNFLEZvbGRlckRvd246KCk9Pl9FLEZvbGRlckVkaXQ6KCk9PnQ1LEZvbGRlckdpdDooKT0+TEUsRm9sZGVyR2l0MjooKT0+VEUsRm9sZGVySGVhcnQ6KCk9PkRFLEZvbGRlcklucHV0OigpPT5BRSxGb2xkZXJLYW5iYW46KCk9PkVFLEZvbGRlcktleTooKT0+JEUsRm9sZGVyTG9jazooKT0+UEUsRm9sZGVyTWludXM6KCk9PklFLEZvbGRlck9wZW46KCk9PkZFLEZvbGRlck9wZW5Eb3Q6KCk9Pk5FLEZvbGRlck91dHB1dDooKT0+T0UsRm9sZGVyUGVuOigpPT50NSxGb2xkZXJQbHVzOigpPT5SRSxGb2xkZXJSb290OigpPT5CRSxGb2xkZXJTZWFyY2g6KCk9PnFFLEZvbGRlclNlYXJjaDI6KCk9PkhFLEZvbGRlclN5bWxpbms6KCk9PmpFLEZvbGRlclN5bmM6KCk9PlZFLEZvbGRlclRyZWU6KCk9PlVFLEZvbGRlclVwOigpPT5XRSxGb2xkZXJYOigpPT5HRSxGb2xkZXJzOigpPT5aRSxGb290cHJpbnRzOigpPT5YRSxGb3JrS25pZmU6KCk9Pm04LEZvcmtLbmlmZUNyb3NzZWQ6KCk9Pmg4LEZvcmtsaWZ0OigpPT5LRSxGb3JtOigpPT5RRSxGb3JtSW5wdXQ6KCk9PlI1LEZvcndhcmQ6KCk9PmUkLEZyYW1lOigpPT5KRSxGcmFtZXI6KCk9PnQkLEZyb3duOigpPT5yJCxGdWVsOigpPT5hJCxGdWxsc2NyZWVuOigpPT5pJCxGdW5jdGlvblNxdWFyZTooKT0+enAsRnVubmVsOigpPT5hNSxGdW5uZWxQbHVzOigpPT5vJCxGdW5uZWxYOigpPT5yNSxHYWxsZXJ5SG9yaXpvbnRhbDooKT0+cyQsR2FsbGVyeUhvcml6b250YWxFbmQ6KCk9Pm4kLEdhbGxlcnlUaHVtYm5haWxzOigpPT5sJCxHYWxsZXJ5VmVydGljYWw6KCk9PmQkLEdhbGxlcnlWZXJ0aWNhbEVuZDooKT0+YyQsR2FtZXBhZDooKT0+cCQsR2FtZXBhZDI6KCk9PnUkLEdhbWVwYWREaXJlY3Rpb25hbDooKT0+ZiQsR2FudHRDaGFydDooKT0+SXUsR2FudHRDaGFydFNxdWFyZTooKT0+JGMsR2F1Z2U6KCk9PmgkLEdhdWdlQ2lyY2xlOigpPT50ZixHYXZlbDooKT0+bSQsR2VtOigpPT54JCxHZW9yZ2lhbkxhcmk6KCk9PmckLEdob3N0OigpPT5iJCxHaWZ0OigpPT52JCxHaXRCcmFuY2g6KCk9Pk0kLEdpdEJyYW5jaE1pbnVzOigpPT55JCxHaXRCcmFuY2hQbHVzOigpPT53JCxHaXRDb21taXQ6KCk9Pmk1LEdpdENvbW1pdEhvcml6b250YWw6KCk9Pmk1LEdpdENvbW1pdFZlcnRpY2FsOigpPT5rJCxHaXRDb21wYXJlOigpPT56JCxHaXRDb21wYXJlQXJyb3dzOigpPT5TJCxHaXRGb3JrOigpPT5fJCxHaXRHcmFwaDooKT0+QyQsR2l0TWVyZ2U6KCk9PkwkLEdpdE1lcmdlQ29uZmxpY3Q6KCk9PlQkLEdpdFB1bGxSZXF1ZXN0OigpPT5JJCxHaXRQdWxsUmVxdWVzdEFycm93OigpPT5EJCxHaXRQdWxsUmVxdWVzdENsb3NlZDooKT0+QSQsR2l0UHVsbFJlcXVlc3RDcmVhdGU6KCk9PiQkLEdpdFB1bGxSZXF1ZXN0Q3JlYXRlQXJyb3c6KCk9PkUkLEdpdFB1bGxSZXF1ZXN0RHJhZnQ6KCk9PlAkLEdpdGh1YjooKT0+TiQsR2l0bGFiOigpPT5GJCxHbGFzc1dhdGVyOigpPT5PJCxHbGFzc2VzOigpPT5CJCxHbG9iZTooKT0+aiQsR2xvYmUyOigpPT56ZixHbG9iZUxvY2s6KCk9PlIkLEdsb2JlT2ZmOigpPT5xJCxHbG9iZVg6KCk9PkgkLEdvYWw6KCk9PlYkLEdwdTooKT0+VSQsR3JhYjooKT0+YzUsR3JhZHVhdGlvbkNhcDooKT0+VyQsR3JhcGU6KCk9PkckLEdyaWQ6KCk9PkRjLEdyaWQyWDI6KCk9Pmw1LEdyaWQyWDJDaGVjazooKT0+bzUsR3JpZDJYMlBsdXM6KCk9Pm41LEdyaWQyWDJYOigpPT5zNSxHcmlkMngyOigpPT5sNSxHcmlkMngyQ2hlY2s6KCk9Pm81LEdyaWQyeDJQbHVzOigpPT5uNSxHcmlkMngyWDooKT0+czUsR3JpZDNYMzooKT0+RGMsR3JpZDN4MjooKT0+WSQsR3JpZDN4MzooKT0+RGMsR3JpcDooKT0+USQsR3JpcEhvcml6b250YWw6KCk9PlokLEdyaXBWZXJ0aWNhbDooKT0+WCQsR3JvdXA6KCk9PkskLEd1aXRhcjooKT0+SiQsSGFtOigpPT5lUCxIYW1idXJnZXI6KCk9PnRQLEhhbW1lcjooKT0+clAsSGFuZDooKT0+Y1AsSGFuZENvaW5zOigpPT5hUCxIYW5kRmlzdDooKT0+aVAsSGFuZEdyYWI6KCk9PmM1LEhhbmRIZWFydDooKT0+b1AsSGFuZEhlbHBpbmc6KCk9PmQ1LEhhbmRNZXRhbDooKT0+blAsSGFuZFBsYXR0ZXI6KCk9PnNQLEhhbmRiYWc6KCk9PmxQLEhhbmRzaGFrZTooKT0+ZlAsSGFyZERyaXZlOigpPT51UCxIYXJkRHJpdmVEb3dubG9hZDooKT0+ZFAsSGFyZERyaXZlVXBsb2FkOigpPT5wUCxIYXJkSGF0OigpPT5oUCxIYXNoOigpPT5tUCxIYXRHbGFzc2VzOigpPT5nUCxIYXplOigpPT54UCxIZDooKT0+YlAsSGRtaVBvcnQ6KCk9PnZQLEhlYWRpbmc6KCk9PnpQLEhlYWRpbmcxOigpPT55UCxIZWFkaW5nMjooKT0+d1AsSGVhZGluZzM6KCk9Pk1QLEhlYWRpbmc0OigpPT5rUCxIZWFkaW5nNTooKT0+U1AsSGVhZGluZzY6KCk9PkNQLEhlYWRwaG9uZU9mZjooKT0+VFAsSGVhZHBob25lczooKT0+X1AsSGVhZHNldDooKT0+TFAsSGVhcnQ6KCk9Pk5QLEhlYXJ0Q3JhY2s6KCk9PkFQLEhlYXJ0SGFuZHNoYWtlOigpPT5EUCxIZWFydE1pbnVzOigpPT4kUCxIZWFydE9mZjooKT0+RVAsSGVhcnRQbHVzOigpPT5QUCxIZWFydFB1bHNlOigpPT5JUCxIZWF0ZXI6KCk9PkZQLEhlbGljb3B0ZXI6KCk9Pk9QLEhlbHBDaXJjbGU6KCk9Pl9jLEhlbHBpbmdIYW5kOigpPT5kNSxIZXhhZ29uOigpPT5SUCxIaWdobGlnaHRlcjooKT0+QlAsSGlzdG9yeTooKT0+SFAsSG9tZTooKT0+ZjUsSG9wOigpPT5WUCxIb3BPZmY6KCk9PnFQLEhvc3BpdGFsOigpPT5qUCxIb3RlbDooKT0+VVAsSG91cmdsYXNzOigpPT5XUCxIb3VzZTooKT0+ZjUsSG91c2VIZWFydDooKT0+R1AsSG91c2VQbHVnOigpPT5aUCxIb3VzZVBsdXM6KCk9PllQLEhvdXNlV2lmaTooKT0+WFAsSWNlQ3JlYW06KCk9PnA1LEljZUNyZWFtMjooKT0+dTUsSWNlQ3JlYW1Cb3dsOigpPT51NSxJY2VDcmVhbUNvbmU6KCk9PnA1LElkQ2FyZDooKT0+UVAsSWRDYXJkTGFueWFyZDooKT0+S1AsSW1hZ2U6KCk9Pm5JLEltYWdlRG93bjooKT0+SlAsSW1hZ2VNaW51czooKT0+ZUksSW1hZ2VPZmY6KCk9PnRJLEltYWdlUGxheTooKT0+ckksSW1hZ2VQbHVzOigpPT5hSSxJbWFnZVVwOigpPT5pSSxJbWFnZVVwc2NhbGU6KCk9Pm9JLEltYWdlczooKT0+c0ksSW1wb3J0OigpPT5sSSxJbmJveDooKT0+Y0ksSW5kZW50OigpPT5FYyxJbmRlbnREZWNyZWFzZTooKT0+QWMsSW5kZW50SW5jcmVhc2U6KCk9PkVjLEluZGlhblJ1cGVlOigpPT51SSxJbmZpbml0eTooKT0+ZEksSW5mbzooKT0+ZkksSW5zcGVjdDooKT0+QXAsSW5zcGVjdGlvblBhbmVsOigpPT5wSSxJbnN0YWdyYW06KCk9PmhJLEl0YWxpYzooKT0+bUksSXRlcmF0aW9uQ2N3OigpPT54SSxJdGVyYXRpb25DdzooKT0+Z0ksSmFwYW5lc2VZZW46KCk9PnZJLEpveXN0aWNrOigpPT5iSSxLYW5iYW46KCk9PnlJLEthbmJhblNxdWFyZTooKT0+Q3AsS2FuYmFuU3F1YXJlRGFzaGVkOigpPT52cCxLYXlhazooKT0+d0ksS2V5OigpPT5TSSxLZXlSb3VuZDooKT0+a0ksS2V5U3F1YXJlOigpPT5NSSxLZXlib2FyZDooKT0+Q0ksS2V5Ym9hcmRNdXNpYzooKT0+X0ksS2V5Ym9hcmRPZmY6KCk9PnpJLExhbXA6KCk9PlBJLExhbXBDZWlsaW5nOigpPT5USSxMYW1wRGVzazooKT0+TEksTGFtcEZsb29yOigpPT5ESSxMYW1wV2FsbERvd246KCk9PkFJLExhbXBXYWxsVXA6KCk9PkVJLExhbmRQbG90OigpPT4kSSxMYW5kbWFyazooKT0+SUksTGFuZ3VhZ2VzOigpPT5OSSxMYXB0b3A6KCk9Pk9JLExhcHRvcDI6KCk9Pmg1LExhcHRvcE1pbmltYWw6KCk9Pmg1LExhcHRvcE1pbmltYWxDaGVjazooKT0+RkksTGFzc286KCk9PkJJLExhc3NvU2VsZWN0OigpPT5SSSxMYXVnaDooKT0+SEksTGF5ZXJzOigpPT5tNSxMYXllcnMyOigpPT5xSSxMYXllcnMzOigpPT5tNSxMYXllcnNQbHVzOigpPT5qSSxMYXlvdXQ6KCk9Pkk1LExheW91dERhc2hib2FyZDooKT0+VUksTGF5b3V0R3JpZDooKT0+VkksTGF5b3V0TGlzdDooKT0+V0ksTGF5b3V0UGFuZWxMZWZ0OigpPT5HSSxMYXlvdXRQYW5lbFRvcDooKT0+WUksTGF5b3V0VGVtcGxhdGU6KCk9PlpJLExlYWY6KCk9PktJLExlYWZ5R3JlZW46KCk9PlhJLExlY3Rlcm46KCk9PlFJLExlbnNDb25jYXZlOigpPT5KSSxMZW5zQ29udmV4OigpPT5lTixMZXR0ZXJUZXh0OigpPT5KcCxMaWJyYXJ5OigpPT5yTixMaWJyYXJ5QmlnOigpPT50TixMaWJyYXJ5U3F1YXJlOigpPT5fcCxMaWZlQnVveTooKT0+YU4sTGlnYXR1cmU6KCk9PmlOLExpZ2h0YnVsYjooKT0+b04sTGlnaHRidWxiT2ZmOigpPT5zTixMaW5lQ2hhcnQ6KCk9PkV1LExpbmVEb3RSaWdodEhvcml6b250YWw6KCk9Pm5OLExpbmVTcXVpZ2dsZTooKT0+bE4sTGluazooKT0+dU4sTGluazI6KCk9PmROLExpbmsyT2ZmOigpPT5jTixMaW5rZWRpbjooKT0+Zk4sTGlzdDooKT0+QU4sTGlzdENoZWNrOigpPT5wTixMaXN0Q2hlY2tzOigpPT5oTixMaXN0Q2hldnJvbnNEb3duVXA6KCk9Pm1OLExpc3RDaGV2cm9uc1VwRG93bjooKT0+eE4sTGlzdENvbGxhcHNlOigpPT5nTixMaXN0RW5kOigpPT5iTixMaXN0RmlsdGVyOigpPT55TixMaXN0RmlsdGVyUGx1czooKT0+dk4sTGlzdEluZGVudERlY3JlYXNlOigpPT5BYyxMaXN0SW5kZW50SW5jcmVhc2U6KCk9PkVjLExpc3RNaW51czooKT0+TU4sTGlzdE11c2ljOigpPT53TixMaXN0T3JkZXJlZDooKT0+a04sTGlzdFBsdXM6KCk9PnpOLExpc3RSZXN0YXJ0OigpPT5TTixMaXN0U3RhcnQ6KCk9PkNOLExpc3RUb2RvOigpPT5fTixMaXN0VHJlZTooKT0+VE4sTGlzdFZpZGVvOigpPT5MTixMaXN0WDooKT0+RE4sTG9hZGVyOigpPT4kTixMb2FkZXIyOigpPT5nNSxMb2FkZXJDaXJjbGU6KCk9Pmc1LExvYWRlclBpbndoZWVsOigpPT5FTixMb2NhdGU6KCk9Pk5OLExvY2F0ZUZpeGVkOigpPT5QTixMb2NhdGVPZmY6KCk9PklOLExvY2F0aW9uRWRpdDooKT0+eTUsTG9jazooKT0+Uk4sTG9ja0tleWhvbGU6KCk9PkZOLExvY2tLZXlob2xlT3BlbjooKT0+eDUsTG9ja09wZW46KCk9PmI1LExvZ0luOigpPT5PTixMb2dPdXQ6KCk9PkJOLExvZ3M6KCk9PkhOLExvbGxpcG9wOigpPT5xTixMdWdnYWdlOigpPT5qTixNU3F1YXJlOigpPT5UcCxNYWduZXQ6KCk9PlZOLE1haWw6KCk9PktOLE1haWxDaGVjazooKT0+VU4sTWFpbE1pbnVzOigpPT5XTixNYWlsT3BlbjooKT0+R04sTWFpbFBsdXM6KCk9PllOLE1haWxRdWVzdGlvbjooKT0+djUsTWFpbFF1ZXN0aW9uTWFyazooKT0+djUsTWFpbFNlYXJjaDooKT0+Wk4sTWFpbFdhcm5pbmc6KCk9PlhOLE1haWxYOigpPT5RTixNYWlsYm94OigpPT5KTixNYWlsczooKT0+ZUYsTWFwOigpPT5nRixNYXBNaW51czooKT0+dEYsTWFwUGluOigpPT5mRixNYXBQaW5DaGVjazooKT0+aUYsTWFwUGluQ2hlY2tJbnNpZGU6KCk9PnJGLE1hcFBpbkhvdXNlOigpPT5hRixNYXBQaW5NaW51czooKT0+bkYsTWFwUGluTWludXNJbnNpZGU6KCk9Pm9GLE1hcFBpbk9mZjooKT0+c0YsTWFwUGluUGVuOigpPT55NSxNYXBQaW5QbHVzOigpPT5sRixNYXBQaW5QbHVzSW5zaWRlOigpPT5jRixNYXBQaW5YOigpPT51RixNYXBQaW5YSW5zaWRlOigpPT5kRixNYXBQaW5uZWQ6KCk9PnBGLE1hcFBsdXM6KCk9PmhGLE1hcnM6KCk9PnhGLE1hcnNTdHJva2U6KCk9Pm1GLE1hcnRpbmk6KCk9PmJGLE1heGltaXplOigpPT55RixNYXhpbWl6ZTI6KCk9PnZGLE1lZGFsOigpPT5NRixNZWdhcGhvbmU6KCk9PmtGLE1lZ2FwaG9uZU9mZjooKT0+d0YsTWVoOigpPT5TRixNZW1vcnlTdGljazooKT0+Q0YsTWVudTooKT0+ekYsTWVudVNxdWFyZTooKT0+THAsTWVyZ2U6KCk9Pl9GLE1lc3NhZ2VDaXJjbGU6KCk9Pk9GLE1lc3NhZ2VDaXJjbGVDaGVjazooKT0+VEYsTWVzc2FnZUNpcmNsZUNvZGU6KCk9PkxGLE1lc3NhZ2VDaXJjbGVEYXNoZWQ6KCk9PkRGLE1lc3NhZ2VDaXJjbGVIZWFydDooKT0+QUYsTWVzc2FnZUNpcmNsZU1vcmU6KCk9PkVGLE1lc3NhZ2VDaXJjbGVPZmY6KCk9PiRGLE1lc3NhZ2VDaXJjbGVQbHVzOigpPT5QRixNZXNzYWdlQ2lyY2xlUXVlc3Rpb246KCk9Pnc1LE1lc3NhZ2VDaXJjbGVRdWVzdGlvbk1hcms6KCk9Pnc1LE1lc3NhZ2VDaXJjbGVSZXBseTooKT0+SUYsTWVzc2FnZUNpcmNsZVdhcm5pbmc6KCk9Pk5GLE1lc3NhZ2VDaXJjbGVYOigpPT5GRixNZXNzYWdlU3F1YXJlOigpPT50TyxNZXNzYWdlU3F1YXJlQ2hlY2s6KCk9PlJGLE1lc3NhZ2VTcXVhcmVDb2RlOigpPT5CRixNZXNzYWdlU3F1YXJlRGFzaGVkOigpPT5IRixNZXNzYWdlU3F1YXJlRGlmZjooKT0+cUYsTWVzc2FnZVNxdWFyZURvdDooKT0+akYsTWVzc2FnZVNxdWFyZUhlYXJ0OigpPT5WRixNZXNzYWdlU3F1YXJlTG9jazooKT0+VUYsTWVzc2FnZVNxdWFyZU1vcmU6KCk9PldGLE1lc3NhZ2VTcXVhcmVPZmY6KCk9PkdGLE1lc3NhZ2VTcXVhcmVQbHVzOigpPT5ZRixNZXNzYWdlU3F1YXJlUXVvdGU6KCk9PlpGLE1lc3NhZ2VTcXVhcmVSZXBseTooKT0+WEYsTWVzc2FnZVNxdWFyZVNoYXJlOigpPT5RRixNZXNzYWdlU3F1YXJlVGV4dDooKT0+S0YsTWVzc2FnZVNxdWFyZVdhcm5pbmc6KCk9PkpGLE1lc3NhZ2VTcXVhcmVYOigpPT5lTyxNZXNzYWdlc1NxdWFyZTooKT0+ck8sTWV0cm9ub21lOigpPT5hTyxNaWM6KCk9Pm9PLE1pYzI6KCk9Pk01LE1pY09mZjooKT0+aU8sTWljVm9jYWw6KCk9Pk01LE1pY3JvY2hpcDooKT0+bk8sTWljcm9zY29wZTooKT0+Y08sTWljcm93YXZlOigpPT5zTyxNaWxlc3RvbmU6KCk9PmxPLE1pbGs6KCk9PmZPLE1pbGtPZmY6KCk9PmRPLE1pbmltaXplOigpPT5wTyxNaW5pbWl6ZTI6KCk9PnVPLE1pbnVzOigpPT5oTyxNaW51c0NpcmNsZTooKT0+cmYsTWludXNTcXVhcmU6KCk9PkRwLE1pcnJvclJlY3Rhbmd1bGFyOigpPT5tTyxNaXJyb3JSb3VuZDooKT0+Z08sTW9uaXRvcjooKT0+RE8sTW9uaXRvckNoZWNrOigpPT54TyxNb25pdG9yQ2xvdWQ6KCk9PmJPLE1vbml0b3JDb2c6KCk9PnZPLE1vbml0b3JEb3Q6KCk9PnlPLE1vbml0b3JEb3duOigpPT53TyxNb25pdG9yT2ZmOigpPT5NTyxNb25pdG9yUGF1c2U6KCk9PmtPLE1vbml0b3JQbGF5OigpPT5TTyxNb25pdG9yU21hcnRwaG9uZTooKT0+ek8sTW9uaXRvclNwZWFrZXI6KCk9PkNPLE1vbml0b3JTdG9wOigpPT5fTyxNb25pdG9yVXA6KCk9PlRPLE1vbml0b3JYOigpPT5MTyxNb29uOigpPT5FTyxNb29uU3RhcjooKT0+QU8sTW9yZUhvcml6b250YWw6KCk9Pl9mLE1vcmVWZXJ0aWNhbDooKT0+Q2YsTW90b3JiaWtlOigpPT4kTyxNb3VudGFpbjooKT0+SU8sTW91bnRhaW5Tbm93OigpPT5QTyxNb3VzZTooKT0+Vk8sTW91c2VMZWZ0OigpPT5OTyxNb3VzZU9mZjooKT0+Rk8sTW91c2VQb2ludGVyOigpPT5xTyxNb3VzZVBvaW50ZXIyOigpPT5STyxNb3VzZVBvaW50ZXIyT2ZmOigpPT5PTyxNb3VzZVBvaW50ZXJCYW46KCk9PkJPLE1vdXNlUG9pbnRlckNsaWNrOigpPT5ITyxNb3VzZVBvaW50ZXJTcXVhcmVEYXNoZWQ6KCk9PnlwLE1vdXNlUmlnaHQ6KCk9PmpPLE1vdmU6KCk9PmFSLE1vdmUzRDooKT0+azUsTW92ZTNkOigpPT5rNSxNb3ZlRGlhZ29uYWw6KCk9PldPLE1vdmVEaWFnb25hbDI6KCk9PlVPLE1vdmVEb3duOigpPT5aTyxNb3ZlRG93bkxlZnQ6KCk9PllPLE1vdmVEb3duUmlnaHQ6KCk9PkdPLE1vdmVIb3Jpem9udGFsOigpPT5YTyxNb3ZlTGVmdDooKT0+S08sTW92ZVJpZ2h0OigpPT5RTyxNb3ZlVXA6KCk9PnRSLE1vdmVVcExlZnQ6KCk9PkpPLE1vdmVVcFJpZ2h0OigpPT5lUixNb3ZlVmVydGljYWw6KCk9PnJSLE11c2ljOigpPT5zUixNdXNpYzI6KCk9PmlSLE11c2ljMzooKT0+b1IsTXVzaWM0OigpPT5uUixOYXZpZ2F0aW9uOigpPT51UixOYXZpZ2F0aW9uMjooKT0+Y1IsTmF2aWdhdGlvbjJPZmY6KCk9PmxSLE5hdmlnYXRpb25PZmY6KCk9PmRSLE5ldHdvcms6KCk9PmZSLE5ld3NwYXBlcjooKT0+aFIsTmZjOigpPT5wUixOb25CaW5hcnk6KCk9Pm1SLE5vdGVib29rOigpPT53UixOb3RlYm9va1BlbjooKT0+Z1IsTm90ZWJvb2tUYWJzOigpPT54UixOb3RlYm9va1RleHQ6KCk9PmJSLE5vdGVwYWRUZXh0OigpPT55UixOb3RlcGFkVGV4dERhc2hlZDooKT0+dlIsTnV0OigpPT5TUixOdXRPZmY6KCk9Pk1SLE9jdGFnb246KCk9PnpSLE9jdGFnb25BbGVydDooKT0+UzUsT2N0YWdvbk1pbnVzOigpPT5rUixPY3RhZ29uUGF1c2U6KCk9Pno1LE9jdGFnb25YOigpPT5DNSxPbWVnYTooKT0+Q1IsT3B0aW9uOigpPT5fUixPcmJpdDooKT0+VFIsT3JpZ2FtaTooKT0+TFIsT3V0ZGVudDooKT0+QWMsUGFja2FnZTooKT0+RlIsUGFja2FnZTI6KCk9PkRSLFBhY2thZ2VDaGVjazooKT0+QVIsUGFja2FnZU1pbnVzOigpPT5FUixQYWNrYWdlT3BlbjooKT0+JFIsUGFja2FnZVBsdXM6KCk9PlBSLFBhY2thZ2VTZWFyY2g6KCk9PklSLFBhY2thZ2VYOigpPT5OUixQYWludEJ1Y2tldDooKT0+T1IsUGFpbnRSb2xsZXI6KCk9PlJSLFBhaW50YnJ1c2g6KCk9PkJSLFBhaW50YnJ1c2gyOigpPT5fNSxQYWludGJydXNoVmVydGljYWw6KCk9Pl81LFBhbGV0dGU6KCk9PkhSLFBhbG10cmVlOigpPT5hOCxQYW5kYTooKT0+cVIsUGFuZWxCb3R0b206KCk9PlVSLFBhbmVsQm90dG9tQ2xvc2U6KCk9PmpSLFBhbmVsQm90dG9tRGFzaGVkOigpPT5UNSxQYW5lbEJvdHRvbUluYWN0aXZlOigpPT5UNSxQYW5lbEJvdHRvbU9wZW46KCk9PlZSLFBhbmVsTGVmdDooKT0+RTUsUGFuZWxMZWZ0Q2xvc2U6KCk9Pkw1LFBhbmVsTGVmdERhc2hlZDooKT0+RDUsUGFuZWxMZWZ0SW5hY3RpdmU6KCk9PkQ1LFBhbmVsTGVmdE9wZW46KCk9PkE1LFBhbmVsTGVmdFJpZ2h0RGFzaGVkOigpPT5XUixQYW5lbFJpZ2h0OigpPT5aUixQYW5lbFJpZ2h0Q2xvc2U6KCk9PkdSLFBhbmVsUmlnaHREYXNoZWQ6KCk9PiQ1LFBhbmVsUmlnaHRJbmFjdGl2ZTooKT0+JDUsUGFuZWxSaWdodE9wZW46KCk9PllSLFBhbmVsVG9wOigpPT5KUixQYW5lbFRvcEJvdHRvbURhc2hlZDooKT0+WFIsUGFuZWxUb3BDbG9zZTooKT0+UVIsUGFuZWxUb3BEYXNoZWQ6KCk9PlA1LFBhbmVsVG9wSW5hY3RpdmU6KCk9PlA1LFBhbmVsVG9wT3BlbjooKT0+S1IsUGFuZWxzTGVmdEJvdHRvbTooKT0+ZUIsUGFuZWxzTGVmdFJpZ2h0OigpPT5NZixQYW5lbHNSaWdodEJvdHRvbTooKT0+dEIsUGFuZWxzVG9wQm90dG9tOigpPT5xNSxQYW5lbHNUb3BMZWZ0OigpPT5JNSxQYXBlcmNsaXA6KCk9PnJCLFBhcmVudGhlc2VzOigpPT5hQixQYXJraW5nQ2lyY2xlOigpPT5hZixQYXJraW5nQ2lyY2xlT2ZmOigpPT5vZixQYXJraW5nTWV0ZXI6KCk9PmlCLFBhcmtpbmdTcXVhcmU6KCk9PiRwLFBhcmtpbmdTcXVhcmVPZmY6KCk9PkVwLFBhcnR5UG9wcGVyOigpPT5vQixQYXVzZTooKT0+bkIsUGF1c2VDaXJjbGU6KCk9Pm5mLFBhdXNlT2N0YWdvbjooKT0+ejUsUGF3UHJpbnQ6KCk9PnNCLFBjQ2FzZTooKT0+bEIsUGVuOigpPT5GNSxQZW5Cb3g6KCk9PiRzLFBlbkxpbmU6KCk9Pk41LFBlbk9mZjooKT0+Y0IsUGVuU3F1YXJlOigpPT4kcyxQZW5Ub29sOigpPT5kQixQZW5jaWw6KCk9PmhCLFBlbmNpbExpbmU6KCk9PnVCLFBlbmNpbE9mZjooKT0+ZkIsUGVuY2lsUnVsZXI6KCk9PnBCLFBlbnRhZ29uOigpPT5nQixQZXJjZW50OigpPT5tQixQZXJjZW50Q2lyY2xlOigpPT5zZixQZXJjZW50RGlhbW9uZDooKT0+U2YsUGVyY2VudFNxdWFyZTooKT0+UHAsUGVyc29uU3RhbmRpbmc6KCk9PnhCLFBoaWxpcHBpbmVQZXNvOigpPT5iQixQaG9uZTooKT0+ekIsUGhvbmVDYWxsOigpPT52QixQaG9uZUZvcndhcmRlZDooKT0+eUIsUGhvbmVJbmNvbWluZzooKT0+d0IsUGhvbmVNaXNzZWQ6KCk9Pk1CLFBob25lT2ZmOigpPT5rQixQaG9uZU91dGdvaW5nOigpPT5TQixQaTooKT0+Q0IsUGlTcXVhcmU6KCk9PklwLFBpYW5vOigpPT5fQixQaWNrYXhlOigpPT5UQixQaWN0dXJlSW5QaWN0dXJlOigpPT5EQixQaWN0dXJlSW5QaWN0dXJlMjooKT0+TEIsUGllQ2hhcnQ6KCk9Pk51LFBpZ2d5QmFuazooKT0+QUIsUGlsY3JvdzooKT0+UEIsUGlsY3Jvd0xlZnQ6KCk9PkVCLFBpbGNyb3dSaWdodDooKT0+JEIsUGlsY3Jvd1NxdWFyZTooKT0+TnAsUGlsbDooKT0+TkIsUGlsbEJvdHRsZTooKT0+SUIsUGluOigpPT5PQixQaW5PZmY6KCk9PkZCLFBpcGV0dGU6KCk9PlJCLFBpenphOigpPT5CQixQbGFuZTooKT0+akIsUGxhbmVMYW5kaW5nOigpPT5IQixQbGFuZVRha2VvZmY6KCk9PnFCLFBsYXk6KCk9PlZCLFBsYXlDaXJjbGU6KCk9PmxmLFBsYXlTcXVhcmU6KCk9PkZwLFBsdWc6KCk9PldCLFBsdWcyOigpPT5VQixQbHVnWmFwOigpPT5PNSxQbHVnWmFwMjooKT0+TzUsUGx1czooKT0+R0IsUGx1c0NpcmNsZTooKT0+Y2YsUGx1c1NxdWFyZTooKT0+T3AsUG9ja2V0OigpPT5aQixQb2NrZXRLbmlmZTooKT0+WUIsUG9kY2FzdDooKT0+WEIsUG9pbnRlcjooKT0+UUIsUG9pbnRlck9mZjooKT0+S0IsUG9wY29ybjooKT0+SkIsUG9wc2ljbGU6KCk9PmVILFBvdW5kU3Rlcmxpbmc6KCk9PnRILFBvd2VyOigpPT5hSCxQb3dlckNpcmNsZTooKT0+ZGYsUG93ZXJPZmY6KCk9PnJILFBvd2VyU3F1YXJlOigpPT5ScCxQcmVzZW50YXRpb246KCk9PmlILFByaW50ZXI6KCk9PnNILFByaW50ZXJDaGVjazooKT0+b0gsUHJpbnRlclg6KCk9Pm5ILFByb2plY3RvcjooKT0+bEgsUHJvcG9ydGlvbnM6KCk9PmNILFB1enpsZTooKT0+ZEgsUHlyYW1pZDooKT0+dUgsUXJDb2RlOigpPT5mSCxRdW90ZTooKT0+aEgsUmFiYml0OigpPT5wSCxSYWRhcjooKT0+bUgsUmFkaWF0aW9uOigpPT5nSCxSYWRpY2FsOigpPT54SCxSYWRpbzooKT0+dkgsUmFkaW9SZWNlaXZlcjooKT0+YkgsUmFkaW9Ub3dlcjooKT0+eUgsUmFkaXVzOigpPT53SCxSYWlsU3ltYm9sOigpPT5NSCxSYWluYm93OigpPT5rSCxSYXQ6KCk9PlNILFJhdGlvOigpPT56SCxSZWNlaXB0OigpPT5JSCxSZWNlaXB0Q2VudDooKT0+X0gsUmVjZWlwdEV1cm86KCk9PkNILFJlY2VpcHRJbmRpYW5SdXBlZTooKT0+VEgsUmVjZWlwdEphcGFuZXNlWWVuOigpPT5MSCxSZWNlaXB0UG91bmRTdGVybGluZzooKT0+REgsUmVjZWlwdFJ1c3NpYW5SdWJsZTooKT0+QUgsUmVjZWlwdFN3aXNzRnJhbmM6KCk9PiRILFJlY2VpcHRUZXh0OigpPT5FSCxSZWNlaXB0VHVya2lzaExpcmE6KCk9PlBILFJlY3RhbmdsZUNpcmNsZTooKT0+TkgsUmVjdGFuZ2xlRWxsaXBzaXM6KCk9PlI1LFJlY3RhbmdsZUdvZ2dsZXM6KCk9PkZILFJlY3RhbmdsZUhvcml6b250YWw6KCk9Pk9ILFJlY3RhbmdsZVZlcnRpY2FsOigpPT5CSCxSZWN5Y2xlOigpPT5SSCxSZWRvOigpPT5qSCxSZWRvMjooKT0+SEgsUmVkb0RvdDooKT0+cUgsUmVmcmVzaENjdzooKT0+VUgsUmVmcmVzaENjd0RvdDooKT0+VkgsUmVmcmVzaEN3OigpPT5HSCxSZWZyZXNoQ3dPZmY6KCk9PldILFJlZnJpZ2VyYXRvcjooKT0+WUgsUmVnZXg6KCk9PlpILFJlbW92ZUZvcm1hdHRpbmc6KCk9PlhILFJlcGVhdDooKT0+SkgsUmVwZWF0MTooKT0+UUgsUmVwZWF0MjooKT0+S0gsUmVwbGFjZTooKT0+dHEsUmVwbGFjZUFsbDooKT0+ZXEsUmVwbHk6KCk9PmlxLFJlcGx5QWxsOigpPT5ycSxSZXdpbmQ6KCk9PmFxLFJpYmJvbjooKT0+b3EsUm9ja2V0OigpPT5ucSxSb2NraW5nQ2hhaXI6KCk9PnNxLFJvbGxlckNvYXN0ZXI6KCk9PmxxLFJvc2U6KCk9PmNxLFJvdGF0ZTNEOigpPT5CNSxSb3RhdGUzZDooKT0+QjUsUm90YXRlQ2N3OigpPT5mcSxSb3RhdGVDY3dLZXk6KCk9PmRxLFJvdGF0ZUNjd1NxdWFyZTooKT0+dXEsUm90YXRlQ3c6KCk9PnBxLFJvdGF0ZUN3U3F1YXJlOigpPT5ocSxSb3V0ZTooKT0+bXEsUm91dGVPZmY6KCk9PmdxLFJvdXRlcjooKT0+eHEsUm93czooKT0+SDUsUm93czI6KCk9Pkg1LFJvd3MzOigpPT5xNSxSb3dzNDooKT0+YnEsUnNzOigpPT52cSxSdWxlcjooKT0+d3EsUnVsZXJEaW1lbnNpb25MaW5lOigpPT55cSxSdXNzaWFuUnVibGU6KCk9Pk1xLFNhaWxib2F0OigpPT5rcSxTYWxhZDooKT0+U3EsU2FuZHdpY2g6KCk9PnpxLFNhdGVsbGl0ZTooKT0+X3EsU2F0ZWxsaXRlRGlzaDooKT0+Q3EsU2F1ZGlSaXlhbDooKT0+VHEsU2F2ZTooKT0+QXEsU2F2ZUFsbDooKT0+RHEsU2F2ZU9mZjooKT0+THEsU2NhbGU6KCk9PkVxLFNjYWxlM0Q6KCk9Pmo1LFNjYWxlM2Q6KCk9Pmo1LFNjYWxpbmc6KCk9PiRxLFNjYW46KCk9PnFxLFNjYW5CYXJjb2RlOigpPT5QcSxTY2FuRXllOigpPT5JcSxTY2FuRmFjZTooKT0+TnEsU2NhbkhlYXJ0OigpPT5GcSxTY2FuTGluZTooKT0+T3EsU2NhblFyQ29kZTooKT0+UnEsU2NhblNlYXJjaDooKT0+QnEsU2NhblRleHQ6KCk9PkhxLFNjYXR0ZXJDaGFydDooKT0+RnUsU2Nob29sOigpPT5qcSxTY2hvb2wyOigpPT5uOCxTY2lzc29yczooKT0+VXEsU2Npc3NvcnNMaW5lRGFzaGVkOigpPT5WcSxTY2lzc29yc1NxdWFyZTooKT0+QnAsU2Npc3NvcnNTcXVhcmVEYXNoZWRCb3R0b206KCk9PmRwLFNjb290ZXI6KCk9PldxLFNjcmVlblNoYXJlOigpPT5ZcSxTY3JlZW5TaGFyZU9mZjooKT0+R3EsU2Nyb2xsOigpPT5YcSxTY3JvbGxUZXh0OigpPT5acSxTZWFyY2g6KCk9PmFqLFNlYXJjaEFsZXJ0OigpPT5RcSxTZWFyY2hDaGVjazooKT0+S3EsU2VhcmNoQ29kZTooKT0+SnEsU2VhcmNoU2xhc2g6KCk9PnRqLFNlYXJjaFg6KCk9PmVqLFNlY3Rpb246KCk9PnJqLFNlbmQ6KCk9Pm9qLFNlbmRIb3Jpem9uYWw6KCk9PlY1LFNlbmRIb3Jpem9udGFsOigpPT5WNSxTZW5kVG9CYWNrOigpPT5paixTZXBhcmF0b3JIb3Jpem9udGFsOigpPT5uaixTZXBhcmF0b3JWZXJ0aWNhbDooKT0+c2osU2VydmVyOigpPT51aixTZXJ2ZXJDb2c6KCk9PmxqLFNlcnZlckNyYXNoOigpPT5jaixTZXJ2ZXJPZmY6KCk9PmRqLFNldHRpbmdzOigpPT5waixTZXR0aW5nczI6KCk9PmZqLFNoYXBlczooKT0+aGosU2hhcmU6KCk9PmdqLFNoYXJlMjooKT0+bWosU2hlZXQ6KCk9PnhqLFNoZWxsOigpPT5iaixTaGVsdmluZ1VuaXQ6KCk9PnZqLFNoaWVsZDooKT0+RGosU2hpZWxkQWxlcnQ6KCk9PnlqLFNoaWVsZEJhbjooKT0+d2osU2hpZWxkQ2hlY2s6KCk9PmtqLFNoaWVsZENsb3NlOigpPT5XNSxTaGllbGRFbGxpcHNpczooKT0+TWosU2hpZWxkSGFsZjooKT0+U2osU2hpZWxkTWludXM6KCk9PnpqLFNoaWVsZE9mZjooKT0+Q2osU2hpZWxkUGx1czooKT0+X2osU2hpZWxkUXVlc3Rpb246KCk9PlU1LFNoaWVsZFF1ZXN0aW9uTWFyazooKT0+VTUsU2hpZWxkVXNlcjooKT0+VGosU2hpZWxkWDooKT0+VzUsU2hpcDooKT0+QWosU2hpcFdoZWVsOigpPT5MaixTaGlydDooKT0+RWosU2hvcHBpbmdCYWc6KCk9PiRqLFNob3BwaW5nQmFza2V0OigpPT5QaixTaG9wcGluZ0NhcnQ6KCk9PklqLFNob3ZlbDooKT0+TmosU2hvd2VySGVhZDooKT0+RmosU2hyZWRkZXI6KCk9Pk9qLFNocmltcDooKT0+UmosU2hyaW5rOigpPT5CaixTaHJ1YjooKT0+SGosU2h1ZmZsZTooKT0+cWosU2lkZWJhcjooKT0+RTUsU2lkZWJhckNsb3NlOigpPT5MNSxTaWRlYmFyT3BlbjooKT0+QTUsU2lnbWE6KCk9PmpqLFNpZ21hU3F1YXJlOigpPT5IcCxTaWduYWw6KCk9PllqLFNpZ25hbEhpZ2g6KCk9PlZqLFNpZ25hbExvdzooKT0+VWosU2lnbmFsTWVkaXVtOigpPT5XaixTaWduYWxaZXJvOigpPT5HaixTaWduYXR1cmU6KCk9PlpqLFNpZ25wb3N0OigpPT5YaixTaWducG9zdEJpZzooKT0+S2osU2lyZW46KCk9PlFqLFNraXBCYWNrOigpPT5KaixTa2lwRm9yd2FyZDooKT0+ZVYsU2t1bGw6KCk9PmFWLFNsYWNrOigpPT50VixTbGFzaDooKT0+clYsU2xhc2hTcXVhcmU6KCk9PnFwLFNsaWNlOigpPT5pVixTbGlkZXJzOigpPT5HNSxTbGlkZXJzSG9yaXpvbnRhbDooKT0+b1YsU2xpZGVyc1ZlcnRpY2FsOigpPT5HNSxTbWFydHBob25lOigpPT5sVixTbWFydHBob25lQ2hhcmdpbmc6KCk9Pm5WLFNtYXJ0cGhvbmVOZmM6KCk9PnNWLFNtaWxlOigpPT5kVixTbWlsZVBsdXM6KCk9PmNWLFNuYWlsOigpPT5wVixTbm93Zmxha2U6KCk9PnVWLFNvYXBEaXNwZW5zZXJEcm9wbGV0OigpPT5mVixTb2ZhOigpPT5oVixTb2xhclBhbmVsOigpPT5tVixTb3J0QXNjOigpPT5tdSxTb3J0RGVzYzooKT0+ZnUsU291cDooKT0+Z1YsU3BhY2U6KCk9PnhWLFNwYWRlOigpPT5iVixTcGFya2xlOigpPT52VixTcGFya2xlczooKT0+WTUsU3BlYWtlcjooKT0+eVYsU3BlZWNoOigpPT53VixTcGVsbENoZWNrOigpPT5TVixTcGVsbENoZWNrMjooKT0+TVYsU3BsaW5lOigpPT56VixTcGxpbmVQb2ludGVyOigpPT5rVixTcGxpdDooKT0+Q1YsU3BsaXRTcXVhcmVIb3Jpem9udGFsOigpPT5qcCxTcGxpdFNxdWFyZVZlcnRpY2FsOigpPT5WcCxTcG9vbDooKT0+X1YsU3BvdGxpZ2h0OigpPT5MVixTcHJheUNhbjooKT0+VFYsU3Byb3V0OigpPT5EVixTcXVhcmU6KCk9PmpWLFNxdWFyZUFjdGl2aXR5OigpPT5YNSxTcXVhcmVBcnJvd0Rvd246KCk9Pks1LFNxdWFyZUFycm93RG93bkxlZnQ6KCk9Plo1LFNxdWFyZUFycm93RG93blJpZ2h0OigpPT5RNSxTcXVhcmVBcnJvd0xlZnQ6KCk9Pko1LFNxdWFyZUFycm93T3V0RG93bkxlZnQ6KCk9PmVwLFNxdWFyZUFycm93T3V0RG93blJpZ2h0OigpPT50cCxTcXVhcmVBcnJvd091dFVwTGVmdDooKT0+cnAsU3F1YXJlQXJyb3dPdXRVcFJpZ2h0OigpPT5hcCxTcXVhcmVBcnJvd1JpZ2h0OigpPT5pcCxTcXVhcmVBcnJvd1JpZ2h0RW50ZXI6KCk9PkFWLFNxdWFyZUFycm93UmlnaHRFeGl0OigpPT5FVixTcXVhcmVBcnJvd1VwOigpPT5zcCxTcXVhcmVBcnJvd1VwTGVmdDooKT0+b3AsU3F1YXJlQXJyb3dVcFJpZ2h0OigpPT5ucCxTcXVhcmVBc3RlcmlzazooKT0+Y3AsU3F1YXJlQm90dG9tRGFzaGVkU2Npc3NvcnM6KCk9PmRwLFNxdWFyZUNlbnRlcmxpbmVEYXNoZWRIb3Jpem9udGFsOigpPT5scCxTcXVhcmVDZW50ZXJsaW5lRGFzaGVkVmVydGljYWw6KCk9PnVwLFNxdWFyZUNoYXJ0R2FudHQ6KCk9PiRjLFNxdWFyZUNoZWNrOigpPT5wcCxTcXVhcmVDaGVja0JpZzooKT0+ZnAsU3F1YXJlQ2hldnJvbkRvd246KCk9PmhwLFNxdWFyZUNoZXZyb25MZWZ0OigpPT5tcCxTcXVhcmVDaGV2cm9uUmlnaHQ6KCk9PmdwLFNxdWFyZUNoZXZyb25VcDooKT0+eHAsU3F1YXJlQ29kZTooKT0+YnAsU3F1YXJlRGFzaGVkOigpPT53cCxTcXVhcmVEYXNoZWRCb3R0b206KCk9PlBWLFNxdWFyZURhc2hlZEJvdHRvbUNvZGU6KCk9PiRWLFNxdWFyZURhc2hlZEthbmJhbjooKT0+dnAsU3F1YXJlRGFzaGVkTW91c2VQb2ludGVyOigpPT55cCxTcXVhcmVEYXNoZWRUb3BTb2xpZDooKT0+SVYsU3F1YXJlRGl2aWRlOigpPT5NcCxTcXVhcmVEb3Q6KCk9PmtwLFNxdWFyZUVxdWFsOigpPT5TcCxTcXVhcmVGdW5jdGlvbjooKT0+enAsU3F1YXJlR2FudHRDaGFydDooKT0+JGMsU3F1YXJlS2FuYmFuOigpPT5DcCxTcXVhcmVMaWJyYXJ5OigpPT5fcCxTcXVhcmVNOigpPT5UcCxTcXVhcmVNZW51OigpPT5McCxTcXVhcmVNaW51czooKT0+RHAsU3F1YXJlTW91c2VQb2ludGVyOigpPT5BcCxTcXVhcmVQYXJraW5nOigpPT4kcCxTcXVhcmVQYXJraW5nT2ZmOigpPT5FcCxTcXVhcmVQYXVzZTooKT0+TlYsU3F1YXJlUGVuOigpPT4kcyxTcXVhcmVQZXJjZW50OigpPT5QcCxTcXVhcmVQaTooKT0+SXAsU3F1YXJlUGlsY3JvdzooKT0+TnAsU3F1YXJlUGxheTooKT0+RnAsU3F1YXJlUGx1czooKT0+T3AsU3F1YXJlUG93ZXI6KCk9PlJwLFNxdWFyZVJhZGljYWw6KCk9PkZWLFNxdWFyZVJvdW5kQ29ybmVyOigpPT5PVixTcXVhcmVTY2lzc29yczooKT0+QnAsU3F1YXJlU2lnbWE6KCk9PkhwLFNxdWFyZVNsYXNoOigpPT5xcCxTcXVhcmVTcGxpdEhvcml6b250YWw6KCk9PmpwLFNxdWFyZVNwbGl0VmVydGljYWw6KCk9PlZwLFNxdWFyZVNxdWFyZTooKT0+UlYsU3F1YXJlU3RhY2s6KCk9PkJWLFNxdWFyZVN0YXI6KCk9PkhWLFNxdWFyZVN0b3A6KCk9PnFWLFNxdWFyZVRlcm1pbmFsOigpPT5XcCxTcXVhcmVVc2VyOigpPT5HcCxTcXVhcmVVc2VyUm91bmQ6KCk9PlVwLFNxdWFyZVg6KCk9PllwLFNxdWFyZXNFeGNsdWRlOigpPT5WVixTcXVhcmVzSW50ZXJzZWN0OigpPT5VVixTcXVhcmVzU3VidHJhY3Q6KCk9PldWLFNxdWFyZXNVbml0ZTooKT0+R1YsU3F1aXJjbGU6KCk9PlpWLFNxdWlyY2xlRGFzaGVkOigpPT5ZVixTcXVpcnJlbDooKT0+UVYsU3RhbXA6KCk9PlhWLFN0YXI6KCk9PmVVLFN0YXJIYWxmOigpPT5LVixTdGFyT2ZmOigpPT5KVixTdGFyczooKT0+WTUsU3RlcEJhY2s6KCk9PnRVLFN0ZXBGb3J3YXJkOigpPT5yVSxTdGV0aG9zY29wZTooKT0+YVUsU3RpY2tlcjooKT0+aVUsU3RpY2t5Tm90ZTooKT0+b1UsU3RvbmU6KCk9Pm5VLFN0b3BDaXJjbGU6KCk9PmZmLFN0b3JlOigpPT5zVSxTdHJldGNoSG9yaXpvbnRhbDooKT0+bFUsU3RyZXRjaFZlcnRpY2FsOigpPT5jVSxTdHJpa2V0aHJvdWdoOigpPT5kVSxTdWJzY3JpcHQ6KCk9PnVVLFN1YnRpdGxlczooKT0+U3UsU3VuOigpPT5nVSxTdW5EaW06KCk9PmZVLFN1bk1lZGl1bTooKT0+cFUsU3VuTW9vbjooKT0+aFUsU3VuU25vdzooKT0+bVUsU3VucmlzZTooKT0+eFUsU3Vuc2V0OigpPT5iVSxTdXBlcnNjcmlwdDooKT0+dlUsU3dhdGNoQm9vazooKT0+eVUsU3dpc3NGcmFuYzooKT0+TVUsU3dpdGNoQ2FtZXJhOigpPT53VSxTd29yZDooKT0+a1UsU3dvcmRzOigpPT5DVSxTeXJpbmdlOigpPT5fVSxUYWJsZTooKT0+JFUsVGFibGUyOigpPT5TVSxUYWJsZUNlbGxzTWVyZ2U6KCk9PnpVLFRhYmxlQ2VsbHNTcGxpdDooKT0+VFUsVGFibGVDb2x1bW5zU3BsaXQ6KCk9PkxVLFRhYmxlQ29uZmlnOigpPT5UYyxUYWJsZU9mQ29udGVudHM6KCk9PkRVLFRhYmxlUHJvcGVydGllczooKT0+QVUsVGFibGVSb3dzU3BsaXQ6KCk9PkVVLFRhYmxldDooKT0+SVUsVGFibGV0U21hcnRwaG9uZTooKT0+UFUsVGFibGV0czooKT0+TlUsVGFnOigpPT5GVSxUYWdzOigpPT5PVSxUYWxseTE6KCk9PlJVLFRhbGx5MjooKT0+QlUsVGFsbHkzOigpPT5IVSxUYWxseTQ6KCk9PnFVLFRhbGx5NTooKT0+alUsVGFuZ2VudDooKT0+VlUsVGFyZ2V0OigpPT5VVSxUZWxlc2NvcGU6KCk9PldVLFRlbnQ6KCk9PllVLFRlbnRUcmVlOigpPT5HVSxUZXJtaW5hbDooKT0+WlUsVGVybWluYWxTcXVhcmU6KCk9PldwLFRlc3RUdWJlOigpPT5YVSxUZXN0VHViZTI6KCk9PlpwLFRlc3RUdWJlRGlhZ29uYWw6KCk9PlpwLFRlc3RUdWJlczooKT0+UVUsVGV4dDooKT0+UGMsVGV4dEFsaWduQ2VudGVyOigpPT5YcCxUZXh0QWxpZ25FbmQ6KCk9PlFwLFRleHRBbGlnbkp1c3RpZnk6KCk9PktwLFRleHRBbGlnblN0YXJ0OigpPT5QYyxUZXh0Q3Vyc29yOigpPT5KVSxUZXh0Q3Vyc29ySW5wdXQ6KCk9PktVLFRleHRJbml0aWFsOigpPT5KcCxUZXh0UXVvdGU6KCk9PmVXLFRleHRTZWFyY2g6KCk9PnRXLFRleHRTZWxlY3Q6KCk9PmU4LFRleHRTZWxlY3Rpb246KCk9PmU4LFRleHRXcmFwOigpPT50OCxUaGVhdGVyOigpPT5yVyxUaGVybW9tZXRlcjooKT0+b1csVGhlcm1vbWV0ZXJTbm93Zmxha2U6KCk9PmFXLFRoZXJtb21ldGVyU3VuOigpPT5pVyxUaHVtYnNEb3duOigpPT5uVyxUaHVtYnNVcDooKT0+c1csVGlja2V0OigpPT5oVyxUaWNrZXRDaGVjazooKT0+bFcsVGlja2V0TWludXM6KCk9PmNXLFRpY2tldFBlcmNlbnQ6KCk9PmRXLFRpY2tldFBsdXM6KCk9PnVXLFRpY2tldFNsYXNoOigpPT5mVyxUaWNrZXRYOigpPT5wVyxUaWNrZXRzOigpPT5nVyxUaWNrZXRzUGxhbmU6KCk9Pm1XLFRpbWVyOigpPT52VyxUaW1lck9mZjooKT0+YlcsVGltZXJSZXNldDooKT0+eFcsVG9nZ2xlTGVmdDooKT0+eVcsVG9nZ2xlUmlnaHQ6KCk9Pk1XLFRvaWxldDooKT0+d1csVG9vbENhc2U6KCk9PmtXLFRvb2xib3g6KCk9PlNXLFRvcm5hZG86KCk9PnpXLFRvcnVzOigpPT5DVyxUb3VjaHBhZDooKT0+VFcsVG91Y2hwYWRPZmY6KCk9Pl9XLFRvd2VsUmFjazooKT0+TFcsVG93ZXJDb250cm9sOigpPT5EVyxUb3lCcmljazooKT0+QVcsVHJhY3RvcjooKT0+RVcsVHJhZmZpY0NvbmU6KCk9PiRXLFRyYWluOigpPT5yOCxUcmFpbkZyb250OigpPT5JVyxUcmFpbkZyb250VHVubmVsOigpPT5QVyxUcmFpblRyYWNrOigpPT5OVyxUcmFtRnJvbnQ6KCk9PnI4LFRyYW5zZ2VuZGVyOigpPT5GVyxUcmFzaDooKT0+UlcsVHJhc2gyOigpPT5PVyxUcmVlRGVjaWR1b3VzOigpPT5CVyxUcmVlUGFsbTooKT0+YTgsVHJlZVBpbmU6KCk9PkhXLFRyZWVzOigpPT5xVyxUcmVsbG86KCk9PmpXLFRyZW5kaW5nRG93bjooKT0+VlcsVHJlbmRpbmdVcDooKT0+V1csVHJlbmRpbmdVcERvd246KCk9PlVXLFRyaWFuZ2xlOigpPT5aVyxUcmlhbmdsZUFsZXJ0OigpPT5pOCxUcmlhbmdsZURhc2hlZDooKT0+R1csVHJpYW5nbGVSaWdodDooKT0+WVcsVHJvcGh5OigpPT5YVyxUcnVjazooKT0+S1csVHJ1Y2tFbGVjdHJpYzooKT0+UVcsVHVya2lzaExpcmE6KCk9PkpXLFR1cm50YWJsZTooKT0+ZUcsVHVydGxlOigpPT50RyxUdjooKT0+YUcsVHYyOigpPT5vOCxUdk1pbmltYWw6KCk9Pm84LFR2TWluaW1hbFBsYXk6KCk9PnJHLFR3aXRjaDooKT0+aUcsVHdpdHRlcjooKT0+b0csVHlwZTooKT0+c0csVHlwZU91dGxpbmU6KCk9Pm5HLFVtYnJlbGxhOigpPT5sRyxVbWJyZWxsYU9mZjooKT0+Y0csVW5kZXJsaW5lOigpPT5kRyxVbmRvOigpPT5wRyxVbmRvMjooKT0+dUcsVW5kb0RvdDooKT0+ZkcsVW5mb2xkSG9yaXpvbnRhbDooKT0+aEcsVW5mb2xkVmVydGljYWw6KCk9Pm1HLFVuZ3JvdXA6KCk9PmdHLFVuaXZlcnNpdHk6KCk9Pm44LFVubGluazooKT0+eEcsVW5saW5rMjooKT0+dkcsVW5sb2NrOigpPT5iNSxVbmxvY2tLZXlob2xlOigpPT54NSxVbnBsdWc6KCk9PmJHLFVwbG9hZDooKT0+eUcsVXBsb2FkQ2xvdWQ6KCk9PnZmLFVzYjooKT0+d0csVXNlcjooKT0+SUcsVXNlcjI6KCk9PnU4LFVzZXJDaGVjazooKT0+TUcsVXNlckNoZWNrMjooKT0+czgsVXNlckNpcmNsZTooKT0+aGYsVXNlckNpcmNsZTI6KCk9PnBmLFVzZXJDb2c6KCk9PmtHLFVzZXJDb2cyOigpPT5sOCxVc2VyS2V5OigpPT5TRyxVc2VyTG9jazooKT0+ekcsVXNlck1pbnVzOigpPT5DRyxVc2VyTWludXMyOigpPT5jOCxVc2VyUGVuOigpPT5URyxVc2VyUGx1czooKT0+X0csVXNlclBsdXMyOigpPT5kOCxVc2VyUm91bmQ6KCk9PnU4LFVzZXJSb3VuZENoZWNrOigpPT5zOCxVc2VyUm91bmRDb2c6KCk9Pmw4LFVzZXJSb3VuZEtleTooKT0+TEcsVXNlclJvdW5kTWludXM6KCk9PmM4LFVzZXJSb3VuZFBlbjooKT0+REcsVXNlclJvdW5kUGx1czooKT0+ZDgsVXNlclJvdW5kU2VhcmNoOigpPT5BRyxVc2VyUm91bmRYOigpPT5mOCxVc2VyU2VhcmNoOigpPT5FRyxVc2VyU3F1YXJlOigpPT5HcCxVc2VyU3F1YXJlMjooKT0+VXAsVXNlclN0YXI6KCk9PiRHLFVzZXJYOigpPT5QRyxVc2VyWDI6KCk9PmY4LFVzZXJzOigpPT5ORyxVc2VyczI6KCk9PnA4LFVzZXJzUm91bmQ6KCk9PnA4LFV0ZW5zaWxzOigpPT5tOCxVdGVuc2lsc0Nyb3NzZWQ6KCk9Pmg4LFV0aWxpdHlQb2xlOigpPT5GRyxWYW46KCk9Pk9HLFZhcmlhYmxlOigpPT5SRyxWYXVsdDooKT0+SEcsVmVjdG9yU3F1YXJlOigpPT5CRyxWZWdhbjooKT0+cUcsVmVuZXRpYW5NYXNrOigpPT5qRyxWZW51czooKT0+VUcsVmVudXNBbmRNYXJzOigpPT5WRyxWZXJpZmllZDooKT0+YnUsVmlicmF0ZTooKT0+R0csVmlicmF0ZU9mZjooKT0+V0csVmlkZW86KCk9PlpHLFZpZGVvT2ZmOigpPT5ZRyxWaWRlb3RhcGU6KCk9PlhHLFZpZXc6KCk9PlFHLFZvaWNlbWFpbDooKT0+S0csVm9sbGV5YmFsbDooKT0+SkcsVm9sdW1lOigpPT5pWSxWb2x1bWUxOigpPT5lWSxWb2x1bWUyOigpPT50WSxWb2x1bWVPZmY6KCk9PmFZLFZvbHVtZVg6KCk9PnJZLFZvdGU6KCk9Pm5ZLFdhbGxldDooKT0+c1ksV2FsbGV0MjooKT0+ZzgsV2FsbGV0Q2FyZHM6KCk9Pm9ZLFdhbGxldE1pbmltYWw6KCk9Pmc4LFdhbGxwYXBlcjooKT0+bFksV2FuZDooKT0+Y1ksV2FuZDI6KCk9Png4LFdhbmRTcGFya2xlczooKT0+eDgsV2FyZWhvdXNlOigpPT5kWSxXYXNoaW5nTWFjaGluZTooKT0+dVksV2F0Y2g6KCk9PmZZLFdhdmVzOigpPT5nWSxXYXZlc0Fycm93RG93bjooKT0+cFksV2F2ZXNBcnJvd1VwOigpPT5tWSxXYXZlc0xhZGRlcjooKT0+aFksV2F5cG9pbnRzOigpPT54WSxXZWJjYW06KCk9PmJZLFdlYmhvb2s6KCk9PnlZLFdlYmhvb2tPZmY6KCk9PnZZLFdlaWdodDooKT0+a1ksV2VpZ2h0VGlsZGU6KCk9PndZLFdoZWF0OigpPT5TWSxXaGVhdE9mZjooKT0+TVksV2hvbGVXb3JkOigpPT56WSxXaWZpOigpPT4kWSxXaWZpQ29nOigpPT5DWSxXaWZpSGlnaDooKT0+X1ksV2lmaUxvdzooKT0+VFksV2lmaU9mZjooKT0+RFksV2lmaVBlbjooKT0+TFksV2lmaVN5bmM6KCk9PkVZLFdpZmlaZXJvOigpPT5BWSxXaW5kOigpPT5JWSxXaW5kQXJyb3dEb3duOigpPT5QWSxXaW5lOigpPT5GWSxXaW5lT2ZmOigpPT5OWSxXb3JrZmxvdzooKT0+T1ksV29ybTooKT0+UlksV3JhcFRleHQ6KCk9PnQ4LFdyZW5jaDooKT0+QlksWDooKT0+cVksWENpcmNsZTooKT0+bWYsWExpbmVUb3A6KCk9PkhZLFhPY3RhZ29uOigpPT5DNSxYU3F1YXJlOigpPT5ZcCxZb3V0dWJlOigpPT5qWSxaYXA6KCk9PlVZLFphcE9mZjooKT0+VlksWm9kaWFjQXF1YXJpdXM6KCk9PldZLFpvZGlhY0FyaWVzOigpPT5HWSxab2RpYWNDYW5jZXI6KCk9PllZLFpvZGlhY0NhcHJpY29ybjooKT0+WlksWm9kaWFjR2VtaW5pOigpPT5RWSxab2RpYWNMZW86KCk9PlhZLFpvZGlhY0xpYnJhOigpPT5LWSxab2RpYWNPcGhpdWNodXM6KCk9PkpZLFpvZGlhY1Bpc2NlczooKT0+ZVosWm9kaWFjU2FnaXR0YXJpdXM6KCk9PnRaLFpvZGlhY1Njb3JwaW86KCk9PnJaLFpvZGlhY1RhdXJ1czooKT0+YVosWm9kaWFjVmlyZ286KCk9PmlaLFpvb21JbjooKT0+b1osWm9vbU91dDooKT0+blosY3JlYXRlRWxlbWVudDooKT0+YTMsY3JlYXRlSWNvbnM6KCk9PkFsdCxpY29uczooKT0+Yjh9KTt2YXIgQWx0LHZsZT1sKCgpPT57QkFyKCk7SEFyKCk7WUVlKCk7ZSRlKCk7dCRlKCk7ciRlKCk7YSRlKCk7aSRlKCk7byRlKCk7biRlKCk7cyRlKCk7bCRlKCk7YyRlKCk7ZCRlKCk7dSRlKCk7ZiRlKCk7cCRlKCk7aCRlKCk7bSRlKCk7ZyRlKCk7eCRlKCk7YiRlKCk7diRlKCk7eSRlKCk7dyRlKCk7TSRlKCk7ayRlKCk7UyRlKCk7eiRlKCk7QyRlKCk7XyRlKCk7VCRlKCk7TCRlKCk7RCRlKCk7QSRlKCk7RSRlKCk7JCRlKCk7UCRlKCk7SSRlKCk7TiRlKCk7RiRlKCk7TyRlKCk7UiRlKCk7QiRlKCk7SCRlKCk7cSRlKCk7aiRlKCk7ViRlKCk7VSRlKCk7VyRlKCk7RyRlKCk7WSRlKCk7WiRlKCk7WCRlKCk7USRlKCk7SyRlKCk7SiRlKCk7ZVBlKCk7dFBlKCk7clBlKCk7YVBlKCk7aVBlKCk7b1BlKCk7blBlKCk7c1BlKCk7bFBlKCk7Y1BlKCk7ZFBlKCk7dVBlKCk7ZlBlKCk7cFBlKCk7aFBlKCk7bVBlKCk7Z1BlKCk7eFBlKCk7YlBlKCk7dlBlKCk7eVBlKCk7d1BlKCk7TVBlKCk7a1BlKCk7U1BlKCk7elBlKCk7Q1BlKCk7X1BlKCk7VFBlKCk7TFBlKCk7RFBlKCk7QVBlKCk7RVBlKCk7JFBlKCk7UFBlKCk7SVBlKCk7TlBlKCk7RlBlKCk7T1BlKCk7UlBlKCk7QlBlKCk7SFBlKCk7cVBlKCk7alBlKCk7VlBlKCk7VVBlKCk7V1BlKCk7R1BlKCk7WVBlKCk7WlBlKCk7WFBlKCk7UVBlKCk7S1BlKCk7SlBlKCk7ZUllKCk7dEllKCk7ckllKCk7YUllKCk7aUllKCk7b0llKCk7bkllKCk7c0llKCk7bEllKCk7Y0llKCk7ZEllKCk7dUllKCk7ZkllKCk7cEllKCk7aEllKCk7bUllKCk7Z0llKCk7eEllKCk7YkllKCk7dkllKCk7eUllKCk7d0llKCk7TUllKCk7a0llKCk7U0llKCk7ekllKCk7Q0llKCk7X0llKCk7VEllKCk7TEllKCk7REllKCk7QUllKCk7RUllKCk7JEllKCk7UEllKCk7SUllKCk7TkllKCk7RkllKCk7T0llKCk7UkllKCk7QkllKCk7SEllKCk7cUllKCk7akllKCk7VkllKCk7VUllKCk7V0llKCk7R0llKCk7WUllKCk7WkllKCk7WEllKCk7UUllKCk7S0llKCk7SkllKCk7ZU5lKCk7dE5lKCk7ck5lKCk7YU5lKCk7aU5lKCk7b05lKCk7bk5lKCk7c05lKCk7bE5lKCk7Y05lKCk7ZE5lKCk7dU5lKCk7Zk5lKCk7cE5lKCk7aE5lKCk7bU5lKCk7Z05lKCk7eE5lKCk7Yk5lKCk7dk5lKCk7eU5lKCk7d05lKCk7TU5lKCk7a05lKCk7U05lKCk7ek5lKCk7Q05lKCk7X05lKCk7VE5lKCk7TE5lKCk7RE5lKCk7QU5lKCk7RU5lKCk7JE5lKCk7UE5lKCk7SU5lKCk7Tk5lKCk7Rk5lKCk7T05lKCk7Uk5lKCk7Qk5lKCk7SE5lKCk7cU5lKCk7ak5lKCk7Vk5lKCk7VU5lKCk7V05lKCk7R05lKCk7WU5lKCk7Wk5lKCk7WE5lKCk7UU5lKCk7S05lKCk7Sk5lKCk7ZUZlKCk7dEZlKCk7ckZlKCk7YUZlKCk7aUZlKCk7b0ZlKCk7bkZlKCk7c0ZlKCk7bEZlKCk7Y0ZlKCk7ZEZlKCk7dUZlKCk7ZkZlKCk7cEZlKCk7aEZlKCk7bUZlKCk7Z0ZlKCk7eEZlKCk7YkZlKCk7dkZlKCk7eUZlKCk7d0ZlKCk7TUZlKCk7a0ZlKCk7U0ZlKCk7ekZlKCk7Q0ZlKCk7X0ZlKCk7VEZlKCk7TEZlKCk7REZlKCk7QUZlKCk7RUZlKCk7JEZlKCk7UEZlKCk7SUZlKCk7TkZlKCk7RkZlKCk7T0ZlKCk7UkZlKCk7QkZlKCk7SEZlKCk7cUZlKCk7akZlKCk7VkZlKCk7VUZlKCk7V0ZlKCk7R0ZlKCk7WUZlKCk7WkZlKCk7WEZlKCk7UUZlKCk7S0ZlKCk7SkZlKCk7ZU9lKCk7dE9lKCk7ck9lKCk7YU9lKCk7aU9lKCk7b09lKCk7bk9lKCk7c09lKCk7bE9lKCk7Y09lKCk7ZE9lKCk7dU9lKCk7Zk9lKCk7cE9lKCk7aE9lKCk7bU9lKCk7Z09lKCk7eE9lKCk7Yk9lKCk7dk9lKCk7eU9lKCk7d09lKCk7TU9lKCk7a09lKCk7U09lKCk7ek9lKCk7Q09lKCk7X09lKCk7VE9lKCk7TE9lKCk7RE9lKCk7QU9lKCk7RU9lKCk7JE9lKCk7UE9lKCk7SU9lKCk7Tk9lKCk7Rk9lKCk7T09lKCk7Uk9lKCk7Qk9lKCk7SE9lKCk7cU9lKCk7ak9lKCk7Vk9lKCk7VU9lKCk7V09lKCk7R09lKCk7WU9lKCk7Wk9lKCk7WE9lKCk7UU9lKCk7S09lKCk7Sk9lKCk7ZVJlKCk7dFJlKCk7clJlKCk7YVJlKCk7aVJlKCk7b1JlKCk7blJlKCk7c1JlKCk7bFJlKCk7Y1JlKCk7ZFJlKCk7dVJlKCk7ZlJlKCk7cFJlKCk7aFJlKCk7bVJlKCk7Z1JlKCk7eFJlKCk7YlJlKCk7dlJlKCk7eVJlKCk7d1JlKCk7TVJlKCk7a1JlKCk7U1JlKCk7elJlKCk7Q1JlKCk7X1JlKCk7VFJlKCk7TFJlKCk7RFJlKCk7QVJlKCk7RVJlKCk7JFJlKCk7UFJlKCk7SVJlKCk7TlJlKCk7RlJlKCk7T1JlKCk7UlJlKCk7QlJlKCk7SFJlKCk7cVJlKCk7alJlKCk7VlJlKCk7VVJlKCk7V1JlKCk7R1JlKCk7WVJlKCk7WlJlKCk7WFJlKCk7UVJlKCk7S1JlKCk7SlJlKCk7ZUJlKCk7dEJlKCk7ckJlKCk7YUJlKCk7aUJlKCk7b0JlKCk7bkJlKCk7c0JlKCk7bEJlKCk7Y0JlKCk7ZEJlKCk7dUJlKCk7ZkJlKCk7cEJlKCk7aEJlKCk7bUJlKCk7Z0JlKCk7eEJlKCk7YkJlKCk7dkJlKCk7eUJlKCk7d0JlKCk7TUJlKCk7a0JlKCk7U0JlKCk7ekJlKCk7Q0JlKCk7X0JlKCk7VEJlKCk7TEJlKCk7REJlKCk7QUJlKCk7RUJlKCk7JEJlKCk7UEJlKCk7SUJlKCk7TkJlKCk7RkJlKCk7T0JlKCk7UkJlKCk7QkJlKCk7SEJlKCk7cUJlKCk7akJlKCk7VkJlKCk7VUJlKCk7V0JlKCk7R0JlKCk7WUJlKCk7WkJlKCk7WEJlKCk7UUJlKCk7S0JlKCk7SkJlKCk7ZUhlKCk7dEhlKCk7ckhlKCk7YUhlKCk7aUhlKCk7b0hlKCk7bkhlKCk7c0hlKCk7bEhlKCk7Y0hlKCk7ZEhlKCk7dUhlKCk7ZkhlKCk7cEhlKCk7aEhlKCk7bUhlKCk7Z0hlKCk7eEhlKCk7YkhlKCk7dkhlKCk7eUhlKCk7d0hlKCk7TUhlKCk7a0hlKCk7U0hlKCk7ekhlKCk7Q0hlKCk7X0hlKCk7VEhlKCk7TEhlKCk7REhlKCk7QUhlKCk7RUhlKCk7JEhlKCk7UEhlKCk7SUhlKCk7TkhlKCk7RkhlKCk7T0hlKCk7UkhlKCk7QkhlKCk7SEhlKCk7cUhlKCk7akhlKCk7VkhlKCk7VUhlKCk7V0hlKCk7R0hlKCk7WUhlKCk7WkhlKCk7WEhlKCk7UUhlKCk7S0hlKCk7SkhlKCk7ZXFlKCk7dHFlKCk7cnFlKCk7YXFlKCk7aXFlKCk7b3FlKCk7bnFlKCk7c3FlKCk7bHFlKCk7Y3FlKCk7ZHFlKCk7dXFlKCk7ZnFlKCk7cHFlKCk7aHFlKCk7bXFlKCk7Z3FlKCk7eHFlKCk7YnFlKCk7dnFlKCk7eXFlKCk7d3FlKCk7TXFlKCk7a3FlKCk7U3FlKCk7enFlKCk7Q3FlKCk7X3FlKCk7VHFlKCk7THFlKCk7RHFlKCk7QXFlKCk7RXFlKCk7JHFlKCk7UHFlKCk7SXFlKCk7TnFlKCk7RnFlKCk7T3FlKCk7UnFlKCk7QnFlKCk7SHFlKCk7cXFlKCk7anFlKCk7VnFlKCk7VXFlKCk7V3FlKCk7R3FlKCk7WXFlKCk7WnFlKCk7WHFlKCk7UXFlKCk7S3FlKCk7SnFlKCk7ZWplKCk7dGplKCk7cmplKCk7YWplKCk7aWplKCk7b2plKCk7bmplKCk7c2plKCk7bGplKCk7Y2plKCk7ZGplKCk7dWplKCk7ZmplKCk7cGplKCk7aGplKCk7bWplKCk7Z2plKCk7eGplKCk7YmplKCk7dmplKCk7eWplKCk7d2plKCk7TWplKCk7a2plKCk7U2plKCk7emplKCk7Q2plKCk7X2plKCk7VGplKCk7TGplKCk7RGplKCk7QWplKCk7RWplKCk7JGplKCk7UGplKCk7SWplKCk7TmplKCk7RmplKCk7T2plKCk7UmplKCk7QmplKCk7SGplKCk7cWplKCk7amplKCk7VmplKCk7VWplKCk7V2plKCk7R2plKCk7WWplKCk7WmplKCk7WGplKCk7UWplKCk7S2plKCk7SmplKCk7ZVZlKCk7dFZlKCk7clZlKCk7YVZlKCk7aVZlKCk7b1ZlKCk7blZlKCk7c1ZlKCk7bFZlKCk7Y1ZlKCk7ZFZlKCk7dVZlKCk7ZlZlKCk7cFZlKCk7aFZlKCk7bVZlKCk7Z1ZlKCk7eFZlKCk7YlZlKCk7dlZlKCk7eVZlKCk7d1ZlKCk7TVZlKCk7a1ZlKCk7U1ZlKCk7elZlKCk7Q1ZlKCk7X1ZlKCk7VFZlKCk7TFZlKCk7RFZlKCk7QVZlKCk7RVZlKCk7JFZlKCk7UFZlKCk7SVZlKCk7TlZlKCk7RlZlKCk7T1ZlKCk7UlZlKCk7QlZlKCk7SFZlKCk7cVZlKCk7alZlKCk7VlZlKCk7VVZlKCk7V1ZlKCk7R1ZlKCk7WVZlKCk7WlZlKCk7WFZlKCk7UVZlKCk7S1ZlKCk7SlZlKCk7ZVVlKCk7dFVlKCk7clVlKCk7YVVlKCk7aVVlKCk7b1VlKCk7blVlKCk7c1VlKCk7bFVlKCk7Y1VlKCk7ZFVlKCk7dVVlKCk7ZlVlKCk7cFVlKCk7aFVlKCk7bVVlKCk7Z1VlKCk7eFVlKCk7YlVlKCk7dlVlKCk7eVVlKCk7d1VlKCk7TVVlKCk7a1VlKCk7U1VlKCk7elVlKCk7Q1VlKCk7X1VlKCk7VFVlKCk7TFVlKCk7RFVlKCk7QVVlKCk7RVVlKCk7JFVlKCk7UFVlKCk7SVVlKCk7TlVlKCk7RlVlKCk7T1VlKCk7UlVlKCk7QlVlKCk7SFVlKCk7cVVlKCk7alVlKCk7VlVlKCk7VVVlKCk7V1VlKCk7R1VlKCk7WVVlKCk7WlVlKCk7WFVlKCk7UVVlKCk7S1VlKCk7SlVlKCk7ZVdlKCk7dFdlKCk7cldlKCk7YVdlKCk7aVdlKCk7b1dlKCk7bldlKCk7c1dlKCk7bFdlKCk7Y1dlKCk7ZFdlKCk7dVdlKCk7ZldlKCk7cFdlKCk7aFdlKCk7bVdlKCk7Z1dlKCk7eFdlKCk7YldlKCk7dldlKCk7eVdlKCk7d1dlKCk7TVdlKCk7a1dlKCk7U1dlKCk7eldlKCk7Q1dlKCk7X1dlKCk7VFdlKCk7TFdlKCk7RFdlKCk7QVdlKCk7RVdlKCk7JFdlKCk7UFdlKCk7SVdlKCk7TldlKCk7RldlKCk7T1dlKCk7UldlKCk7QldlKCk7SFdlKCk7cVdlKCk7aldlKCk7VldlKCk7VVdlKCk7V1dlKCk7R1dlKCk7WVdlKCk7WldlKCk7WFdlKCk7UVdlKCk7S1dlKCk7SldlKCk7ZUdlKCk7dEdlKCk7ckdlKCk7YUdlKCk7aUdlKCk7b0dlKCk7bkdlKCk7c0dlKCk7bEdlKCk7Y0dlKCk7ZEdlKCk7dUdlKCk7ZkdlKCk7cEdlKCk7aEdlKCk7bUdlKCk7Z0dlKCk7eEdlKCk7YkdlKCk7dkdlKCk7eUdlKCk7d0dlKCk7TUdlKCk7a0dlKCk7U0dlKCk7ekdlKCk7Q0dlKCk7X0dlKCk7VEdlKCk7TEdlKCk7REdlKCk7QUdlKCk7RUdlKCk7JEdlKCk7UEdlKCk7SUdlKCk7TkdlKCk7RkdlKCk7T0dlKCk7UkdlKCk7QkdlKCk7SEdlKCk7cUdlKCk7akdlKCk7VkdlKCk7VUdlKCk7V0dlKCk7R0dlKCk7WUdlKCk7WkdlKCk7WEdlKCk7UUdlKCk7S0dlKCk7SkdlKCk7ZVllKCk7dFllKCk7clllKCk7YVllKCk7aVllKCk7b1llKCk7blllKCk7c1llKCk7bFllKCk7Y1llKCk7ZFllKCk7dVllKCk7ZlllKCk7cFllKCk7aFllKCk7bVllKCk7Z1llKCk7eFllKCk7YlllKCk7dlllKCk7eVllKCk7d1llKCk7TVllKCk7a1llKCk7U1llKCk7elllKCk7Q1llKCk7X1llKCk7VFllKCk7TFllKCk7RFllKCk7QVllKCk7RVllKCk7JFllKCk7UFllKCk7SVllKCk7TlllKCk7RlllKCk7T1llKCk7UlllKCk7QlllKCk7SFllKCk7cVllKCk7alllKCk7VlllKCk7VVllKCk7V1llKCk7R1llKCk7WVllKCk7WlllKCk7WFllKCk7UVllKCk7S1llKCk7SlllKCk7ZVplKCk7dFplKCk7clplKCk7YVplKCk7aVplKCk7b1plKCk7blplKCk7c1plKCk7bFplKCk7Y1plKCk7ZFplKCk7dVplKCk7ZlplKCk7cFplKCk7aFplKCk7bVplKCk7Z1plKCk7eFplKCk7YlplKCk7dlplKCk7eVplKCk7d1plKCk7TVplKCk7a1plKCk7U1plKCk7elplKCk7Q1plKCk7X1plKCk7VFplKCk7TFplKCk7RFplKCk7QVplKCk7RVplKCk7JFplKCk7UFplKCk7SVplKCk7TlplKCk7RlplKCk7T1plKCk7UlplKCk7QlplKCk7SFplKCk7cVplKCk7alplKCk7VlplKCk7VVplKCk7V1plKCk7R1plKCk7WVplKCk7WlplKCk7WFplKCk7UVplKCk7S1plKCk7SlplKCk7ZVhlKCk7dFhlKCk7clhlKCk7YVhlKCk7aVhlKCk7b1hlKCk7blhlKCk7c1hlKCk7bFhlKCk7Y1hlKCk7ZFhlKCk7dVhlKCk7ZlhlKCk7cFhlKCk7aFhlKCk7bVhlKCk7Z1hlKCk7eFhlKCk7YlhlKCk7dlhlKCk7eVhlKCk7d1hlKCk7TVhlKCk7a1hlKCk7U1hlKCk7elhlKCk7Q1hlKCk7X1hlKCk7VFhlKCk7TFhlKCk7RFhlKCk7QVhlKCk7RVhlKCk7JFhlKCk7UFhlKCk7SVhlKCk7TlhlKCk7RlhlKCk7T1hlKCk7UlhlKCk7QlhlKCk7SFhlKCk7cVhlKCk7alhlKCk7VlhlKCk7VVhlKCk7V1hlKCk7R1hlKCk7WVhlKCk7WlhlKCk7WFhlKCk7UVhlKCk7S1hlKCk7SlhlKCk7ZVFlKCk7dFFlKCk7clFlKCk7YVFlKCk7aVFlKCk7b1FlKCk7blFlKCk7c1FlKCk7bFFlKCk7Y1FlKCk7ZFFlKCk7dVFlKCk7ZlFlKCk7cFFlKCk7aFFlKCk7bVFlKCk7Z1FlKCk7eFFlKCk7YlFlKCk7dlFlKCk7eVFlKCk7d1FlKCk7TVFlKCk7a1FlKCk7U1FlKCk7elFlKCk7Q1FlKCk7X1FlKCk7VFFlKCk7TFFlKCk7RFFlKCk7QVFlKCk7RVFlKCk7JFFlKCk7UFFlKCk7SVFlKCk7TlFlKCk7RlFlKCk7T1FlKCk7UlFlKCk7QlFlKCk7SFFlKCk7cVFlKCk7alFlKCk7VlFlKCk7VVFlKCk7V1FlKCk7R1FlKCk7WVFlKCk7WlFlKCk7WFFlKCk7UVFlKCk7S1FlKCk7SlFlKCk7ZUtlKCk7dEtlKCk7cktlKCk7YUtlKCk7aUtlKCk7b0tlKCk7bktlKCk7c0tlKCk7bEtlKCk7Y0tlKCk7ZEtlKCk7dUtlKCk7ZktlKCk7cEtlKCk7aEtlKCk7bUtlKCk7Z0tlKCk7eEtlKCk7YktlKCk7dktlKCk7eUtlKCk7d0tlKCk7TUtlKCk7a0tlKCk7U0tlKCk7ektlKCk7Q0tlKCk7X0tlKCk7VEtlKCk7TEtlKCk7REtlKCk7QUtlKCk7RUtlKCk7JEtlKCk7UEtlKCk7SUtlKCk7TktlKCk7RktlKCk7T0tlKCk7UktlKCk7QktlKCk7SEtlKCk7cUtlKCk7aktlKCk7VktlKCk7VUtlKCk7V0tlKCk7R0tlKCk7WUtlKCk7WktlKCk7WEtlKCk7UUtlKCk7S0tlKCk7SktlKCk7ZUplKCk7dEplKCk7ckplKCk7YUplKCk7aUplKCk7b0plKCk7bkplKCk7c0plKCk7bEplKCk7Y0plKCk7ZEplKCk7dUplKCk7ZkplKCk7cEplKCk7aEplKCk7bUplKCk7Z0plKCk7eEplKCk7YkplKCk7dkplKCk7eUplKCk7d0plKCk7TUplKCk7a0plKCk7U0plKCk7ekplKCk7Q0plKCk7X0plKCk7VEplKCk7TEplKCk7REplKCk7QUplKCk7RUplKCk7JEplKCk7UEplKCk7SUplKCk7TkplKCk7RkplKCk7T0plKCk7UkplKCk7QkplKCk7SEplKCk7cUplKCk7akplKCk7VkplKCk7VUplKCk7V0plKCk7R0plKCk7WUplKCk7WkplKCk7WEplKCk7UUplKCk7S0plKCk7SkplKCk7ZWV0KCk7dGV0KCk7cmV0KCk7YWV0KCk7aWV0KCk7b2V0KCk7bmV0KCk7c2V0KCk7Y2V0KCk7ZGV0KCk7dWV0KCk7ZmV0KCk7cGV0KCk7aGV0KCk7bWV0KCk7Z2V0KCk7eGV0KCk7YmV0KCk7dmV0KCk7eWV0KCk7d2V0KCk7TWV0KCk7a2V0KCk7emV0KCk7Q2V0KCk7X2V0KCk7VGV0KCk7TGV0KCk7RGV0KCk7QWV0KCk7RWV0KCk7JGV0KCk7UGV0KCk7SWV0KCk7TmV0KCk7RmV0KCk7T2V0KCk7UmV0KCk7QmV0KCk7SGV0KCk7cWV0KCk7amV0KCk7VmV0KCk7VWV0KCk7V2V0KCk7R2V0KCk7WWV0KCk7WmV0KCk7WGV0KCk7UWV0KCk7S2V0KCk7SmV0KCk7ZXR0KCk7dHR0KCk7cnR0KCk7YXR0KCk7aXR0KCk7b3R0KCk7bnR0KCk7c3R0KCk7bHR0KCk7Y3R0KCk7ZHR0KCk7dXR0KCk7ZnR0KCk7cHR0KCk7aHR0KCk7bXR0KCk7Z3R0KCk7eHR0KCk7YnR0KCk7dnR0KCk7eXR0KCk7d3R0KCk7TXR0KCk7a3R0KCk7U3R0KCk7enR0KCk7Q3R0KCk7X3R0KCk7VHR0KCk7THR0KCk7RHR0KCk7QXR0KCk7RXR0KCk7JHR0KCk7UHR0KCk7SXR0KCk7TnR0KCk7RnR0KCk7T3R0KCk7UnR0KCk7QnR0KCk7SHR0KCk7cXR0KCk7anR0KCk7VnR0KCk7VXR0KCk7V3R0KCk7R3R0KCk7WXR0KCk7WnR0KCk7WHR0KCk7UXR0KCk7S3R0KCk7SnR0KCk7ZXJ0KCk7dHJ0KCk7cnJ0KCk7YXJ0KCk7aXJ0KCk7b3J0KCk7bnJ0KCk7c3J0KCk7bHJ0KCk7Y3J0KCk7ZHJ0KCk7dXJ0KCk7ZnJ0KCk7cHJ0KCk7aHJ0KCk7bXJ0KCk7Z3J0KCk7eHJ0KCk7YnJ0KCk7dnJ0KCk7eXJ0KCk7d3J0KCk7TXJ0KCk7a3J0KCk7U3J0KCk7enJ0KCk7Q3J0KCk7X3J0KCk7VHJ0KCk7THJ0KCk7RHJ0KCk7QXJ0KCk7RXJ0KCk7JHJ0KCk7UHJ0KCk7SXJ0KCk7TnJ0KCk7RnJ0KCk7T3J0KCk7UnJ0KCk7QnJ0KCk7SHJ0KCk7cXJ0KCk7anJ0KCk7VnJ0KCk7VXJ0KCk7V3J0KCk7R3J0KCk7WXJ0KCk7WnJ0KCk7WHJ0KCk7UXJ0KCk7S3J0KCk7SnJ0KCk7ZWF0KCk7dGF0KCk7cmF0KCk7YWF0KCk7aWF0KCk7b2F0KCk7bmF0KCk7c2F0KCk7bGF0KCk7Y2F0KCk7ZGF0KCk7dWF0KCk7ZmF0KCk7cGF0KCk7aGF0KCk7bWF0KCk7Z2F0KCk7eGF0KCk7YmF0KCk7dmF0KCk7eWF0KCk7d2F0KCk7TWF0KCk7a2F0KCk7U2F0KCk7emF0KCk7Q2F0KCk7X2F0KCk7VGF0KCk7TGF0KCk7RGF0KCk7QWF0KCk7RWF0KCk7JGF0KCk7UGF0KCk7SWF0KCk7TmF0KCk7RmF0KCk7T2F0KCk7UmF0KCk7QmF0KCk7SGF0KCk7cWF0KCk7amF0KCk7VmF0KCk7VWF0KCk7V2F0KCk7R2F0KCk7WWF0KCk7WmF0KCk7WGF0KCk7UWF0KCk7S2F0KCk7SmF0KCk7ZWl0KCk7dGl0KCk7cml0KCk7YWl0KCk7aWl0KCk7b2l0KCk7bml0KCk7c2l0KCk7bGl0KCk7Y2l0KCk7ZGl0KCk7dWl0KCk7Zml0KCk7cGl0KCk7aGl0KCk7bWl0KCk7Z2l0KCk7eGl0KCk7Yml0KCk7dml0KCk7eWl0KCk7d2l0KCk7TWl0KCk7a2l0KCk7U2l0KCk7eml0KCk7Q2l0KCk7X2l0KCk7VGl0KCk7TGl0KCk7RGl0KCk7QWl0KCk7RWl0KCk7JGl0KCk7UGl0KCk7SWl0KCk7Tml0KCk7Rml0KCk7T2l0KCk7Uml0KCk7Qml0KCk7SGl0KCk7cWl0KCk7aml0KCk7Vml0KCk7VWl0KCk7V2l0KCk7R2l0KCk7WWl0KCk7Wml0KCk7WGl0KCk7UWl0KCk7S2l0KCk7Sml0KCk7ZTF0KCk7dDF0KCk7cjF0KCk7YTF0KCk7aTF0KCk7bzF0KCk7bjF0KCk7czF0KCk7bDF0KCk7YzF0KCk7ZDF0KCk7dTF0KCk7ZjF0KCk7cDF0KCk7aDF0KCk7bTF0KCk7ZzF0KCk7eDF0KCk7YjF0KCk7djF0KCk7eTF0KCk7dzF0KCk7TTF0KCk7azF0KCk7UzF0KCk7ejF0KCk7QzF0KCk7XzF0KCk7VDF0KCk7TDF0KCk7RDF0KCk7QTF0KCk7RTF0KCk7JDF0KCk7UDF0KCk7STF0KCk7TjF0KCk7RjF0KCk7TzF0KCk7UjF0KCk7QjF0KCk7SDF0KCk7cTF0KCk7ajF0KCk7VjF0KCk7VTF0KCk7VzF0KCk7RzF0KCk7WTF0KCk7WjF0KCk7WDF0KCk7UTF0KCk7SzF0KCk7SjF0KCk7ZW90KCk7dG90KCk7cm90KCk7YW90KCk7aW90KCk7b290KCk7bm90KCk7c290KCk7bG90KCk7Y290KCk7ZG90KCk7dW90KCk7Zm90KCk7cG90KCk7aG90KCk7bW90KCk7Z290KCk7eG90KCk7Ym90KCk7dm90KCk7eW90KCk7d290KCk7TW90KCk7a290KCk7U290KCk7em90KCk7Q290KCk7X290KCk7VG90KCk7TG90KCk7RG90KCk7QW90KCk7RW90KCk7JG90KCk7UG90KCk7SW90KCk7Tm90KCk7Rm90KCk7T290KCk7Um90KCk7Qm90KCk7SG90KCk7cW90KCk7am90KCk7Vm90KCk7VW90KCk7V290KCk7R290KCk7WW90KCk7Wm90KCk7WG90KCk7UW90KCk7S290KCk7Sm90KCk7ZW50KCk7dG50KCk7cm50KCk7YW50KCk7aW50KCk7b250KCk7bm50KCk7c250KCk7bG50KCk7Y250KCk7ZG50KCk7dW50KCk7Zm50KCk7cG50KCk7aG50KCk7bW50KCk7Z250KCk7eG50KCk7Ym50KCk7dm50KCk7eW50KCk7d250KCk7TW50KCk7a250KCk7U250KCk7em50KCk7Q250KCk7X250KCk7VG50KCk7TG50KCk7RG50KCk7QW50KCk7RW50KCk7JG50KCk7UG50KCk7SW50KCk7Tm50KCk7Rm50KCk7T250KCk7Um50KCk7Qm50KCk7SG50KCk7cW50KCk7am50KCk7Vm50KCk7VW50KCk7V250KCk7R250KCk7WW50KCk7Wm50KCk7WG50KCk7UW50KCk7S250KCk7Sm50KCk7ZXN0KCk7dHN0KCk7cnN0KCk7YXN0KCk7aXN0KCk7b3N0KCk7bnN0KCk7c3N0KCk7bHN0KCk7Y3N0KCk7ZHN0KCk7dXN0KCk7ZnN0KCk7cHN0KCk7aHN0KCk7bXN0KCk7Z3N0KCk7eHN0KCk7YnN0KCk7dnN0KCk7eXN0KCk7d3N0KCk7TXN0KCk7a3N0KCk7U3N0KCk7enN0KCk7Q3N0KCk7X3N0KCk7VHN0KCk7THN0KCk7RHN0KCk7QXN0KCk7RXN0KCk7JHN0KCk7UHN0KCk7SXN0KCk7TnN0KCk7RnN0KCk7T3N0KCk7UnN0KCk7QnN0KCk7SHN0KCk7cXN0KCk7anN0KCk7VnN0KCk7VXN0KCk7V3N0KCk7R3N0KCk7WXN0KCk7WnN0KCk7WHN0KCk7UXN0KCk7S3N0KCk7SnN0KCk7ZTJ0KCk7dDJ0KCk7cjJ0KCk7YTJ0KCk7aTJ0KCk7bzJ0KCk7bjJ0KCk7czJ0KCk7bDJ0KCk7YzJ0KCk7ZDJ0KCk7dTJ0KCk7ZjJ0KCk7cDJ0KCk7aDJ0KCk7bTJ0KCk7ZzJ0KCk7eDJ0KCk7YjJ0KCk7djJ0KCk7eTJ0KCk7dzJ0KCk7TTJ0KCk7azJ0KCk7UzJ0KCk7ejJ0KCk7QzJ0KCk7XzJ0KCk7VDJ0KCk7TDJ0KCk7RDJ0KCk7QTJ0KCk7RTJ0KCk7JDJ0KCk7UDJ0KCk7STJ0KCk7TjJ0KCk7RjJ0KCk7TzJ0KCk7UjJ0KCk7QjJ0KCk7SDJ0KCk7cTJ0KCk7ajJ0KCk7VjJ0KCk7VTJ0KCk7VzJ0KCk7RzJ0KCk7WTJ0KCk7WjJ0KCk7WDJ0KCk7UTJ0KCk7SzJ0KCk7SjJ0KCk7ZWx0KCk7dGx0KCk7cmx0KCk7YWx0KCk7aWx0KCk7b2x0KCk7bmx0KCk7c2x0KCk7bGx0KCk7Y2x0KCk7ZGx0KCk7dWx0KCk7Zmx0KCk7cGx0KCk7aGx0KCk7bWx0KCk7Z2x0KCk7eGx0KCk7Ymx0KCk7dmx0KCk7eWx0KCk7d2x0KCk7TWx0KCk7a2x0KCk7U2x0KCk7emx0KCk7Q2x0KCk7X2x0KCk7VGx0KCk7TGx0KCk7RGx0KCk7QWx0PSh7aWNvbnM6ZT17fSxuYW1lQXR0cjp0PSJkYXRhLWx1Y2lkZSIsYXR0cnM6cj17fSxyb290OmE9ZG9jdW1lbnQsaW5UZW1wbGF0ZXM6aX09e30pPT57aWYoIU9iamVjdC52YWx1ZXMoZSkubGVuZ3RoKXRocm93IG5ldyBFcnJvcihgUGxlYXNlIHByb3ZpZGUgYW4gaWNvbnMgb2JqZWN0LgpJZiB5b3Ugd2FudCB0byB1c2UgYWxsIHRoZSBpY29ucyB5b3UgY2FuIGltcG9ydCBpdCBsaWtlOgogXGBpbXBvcnQgeyBjcmVhdGVJY29ucywgaWNvbnMgfSBmcm9tICdsdWNpZGUnOwpsdWNpZGUuY3JlYXRlSWNvbnMoe2ljb25zfSk7XGBgKTtpZih0eXBlb2YgYT4idSIpdGhyb3cgbmV3IEVycm9yKCJgY3JlYXRlSWNvbnMoKWAgb25seSB3b3JrcyBpbiBhIGJyb3dzZXIgZW52aXJvbm1lbnQuIik7aWYoQXJyYXkuZnJvbShhLnF1ZXJ5U2VsZWN0b3JBbGwoYFske3R9XWApKS5mb3JFYWNoKG49PmJsZShuLHtuYW1lQXR0cjp0LGljb25zOmUsYXR0cnM6cn0pKSxpJiZBcnJheS5mcm9tKGEucXVlcnlTZWxlY3RvckFsbCgidGVtcGxhdGUiKSkuZm9yRWFjaChzPT5BbHQoe2ljb25zOmUsbmFtZUF0dHI6dCxhdHRyczpyLHJvb3Q6cy5jb250ZW50LGluVGVtcGxhdGVzOml9KSksdD09PSJkYXRhLWx1Y2lkZSIpe2xldCBuPWEucXVlcnlTZWxlY3RvckFsbCgiW2ljb24tbmFtZV0iKTtuLmxlbmd0aD4wJiYoY29uc29sZS53YXJuKCJbTHVjaWRlXSBTb21lIGljb25zIHdlcmUgZm91bmQgd2l0aCB0aGUgbm93IGRlcHJlY2F0ZWQgaWNvbi1uYW1lIGF0dHJpYnV0ZS4gVGhlc2Ugd2lsbCBzdGlsbCBiZSByZXBsYWNlZCBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHksIGJ1dCB3aWxsIG5vIGxvbmdlciBiZSBzdXBwb3J0ZWQgaW4gdjEuMCBhbmQgeW91IHNob3VsZCBzd2l0Y2ggdG8gZGF0YS1sdWNpZGUiKSxBcnJheS5mcm9tKG4pLmZvckVhY2gocz0+YmxlKHMse25hbWVBdHRyOiJpY29uLW5hbWUiLGljb25zOmUsYXR0cnM6cn0pKSl9fX0pO3ZhciBxQXIsakFyPWwoKCk9PntTZSgpO2JyKCk7dmxlKCk7cUFyPSgpPT57bGV0IGU9T2JqZWN0LmtleXMoeWxlLmZhKTtjb25zb2xlLmxvZygiRmlyc3QgZmV3IEx1Y2lkZSBrZXlzOiIsT2JqZWN0LmtleXMoY2wpLnNsaWNlKDAsNSkpO2xldCB0PU9iamVjdC5rZXlzKGNsKS5maWx0ZXIobz0+e2xldCBuPW9bMF09PT1vWzBdLnRvVXBwZXJDYXNlKCkmJm9bMF0hPT1vWzBdLnRvTG93ZXJDYXNlKCkscz10eXBlb2YgY2xbb109PSJmdW5jdGlvbiIsYz0hWyJjcmVhdGVFbGVtZW50IiwiY3JlYXRlSWNvbnMiLCJkZWZhdWx0Il0uaW5jbHVkZXMobyk7cmV0dXJuIHMmJm4mJmN9KS5tYXAobz0+by5jaGFyQXQoMCkudG9Mb3dlckNhc2UoKStvLnNsaWNlKDEpKTtpZihjb25zb2xlLmxvZyhgRm91bmQgJHt0Lmxlbmd0aH0gTHVjaWRlIGljb25zYCksdC5sZW5ndGg9PT0wJiYoY29uc29sZS5sb2coIlRyeWluZyBhbHRlcm5hdGl2ZSBhcHByb2FjaCB0byBmaW5kIEx1Y2lkZSBpY29ucyIpLGI4KSl7bGV0IG89Yjh8fHt9O3QucHVzaCguLi5PYmplY3Qua2V5cyhvKSksY29uc29sZS5sb2coYEZvdW5kICR7dC5sZW5ndGh9IGljb25zIHZpYSBhbHRlcm5hdGl2ZSBtZXRob2RgKX1sZXQgcj0oKT0+e2xldCBvPWUubWFwKGQ9PmBmYToke2R9YCksbj10Lm1hcChkPT5gbHVjaWRlOiR7ZH1gKSxzPVsuLi5vLC4uLm5dLGM9cy5qb2luKGAKYCk7bmF2aWdhdG9yLmNsaXBib2FyZC53cml0ZVRleHQoYykudGhlbigoKT0+e2xldCBmPXdpbmRvdy5ldmVudC5jdXJyZW50VGFyZ2V0LHU9Zi50ZXh0Q29udGVudDtmLnRleHRDb250ZW50PWBcdTI3MTMgQ29waWVkICR7cy5sZW5ndGh9IGljb24gbmFtZXMhYCxzZXRUaW1lb3V0KCgpPT57Zi50ZXh0Q29udGVudD11fSwyZTMpfSl9LGE9bz0+e2xldCBuPW8udGFyZ2V0LnZhbHVlLnRvTG93ZXJDYXNlKCkudHJpbSgpLHM9by50YXJnZXQuY2xvc2VzdCgiLmRlbW9Db250YWluZXIiKTtzLnF1ZXJ5U2VsZWN0b3JBbGwoIi5pY29uQ29udGFpbmVyIikuZm9yRWFjaChkPT57bGV0IGY9ZC5nZXRBdHRyaWJ1dGUoImRhdGEtbmFtZSIpO249PT0iInx8ZiYmZi5pbmNsdWRlcyhuKT9kLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpOmQuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIil9KSxzLnF1ZXJ5U2VsZWN0b3JBbGwoIi5zZWN0aW9uLWNvbnRhaW5lciIpLmZvckVhY2goZD0+e2xldCBmPWQucXVlcnlTZWxlY3RvckFsbCgiLmljb25Db250YWluZXI6bm90KC5oaWRkZW4pIikubGVuZ3RoLHU9ZC5xdWVyeVNlbGVjdG9yKCIuaWNvbi1jb3VudCIpO2lmKHUpe2xldCBwPWQuY2xhc3NMaXN0LmNvbnRhaW5zKCJmYS1zZWN0aW9uIik/ZS5sZW5ndGg6dC5sZW5ndGg7dS50ZXh0Q29udGVudD1mPT09cD9gJHtwfSBpY29uc2A6YCR7Zn0gb2YgJHtwfSBpY29uc2B9fSl9LGk9KG8sbik9PntsZXQgcz1gJHtufToke299YDtuYXZpZ2F0b3IuY2xpcGJvYXJkLndyaXRlVGV4dChzKS50aGVuKCgpPT57bGV0IGY9d2luZG93LmV2ZW50LmN1cnJlbnRUYXJnZXQucXVlcnlTZWxlY3RvcigiLmNvcHktdG9vbHRpcCIpO2YmJihmLnRleHRDb250ZW50PSJDb3BpZWQhIixzZXRUaW1lb3V0KCgpPT57Zi50ZXh0Q29udGVudD0iQ2xpY2sgdG8gY29weSJ9LDJlMykpfSl9O3JldHVybiBTYAogIDxzdHlsZT4KICAgIC5kZW1vQ29udGFpbmVyIHsKICAgICAgd2lkdGg6IDEwMCU7CiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgIGZsZXgtd3JhcDogd3JhcDsKICAgICAgYmFja2dyb3VuZDogIzExMTExMTsKICAgICAgcGFkZGluZzogMjBweDsKICAgICAgZm9udC1zaXplOiAzMHB4OwogICAgICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAiU2Vnb2UgVUkiLCBSb2JvdG8sIE94eWdlbi1TYW5zLCBVYnVudHUsIENhbnRhcmVsbCwgIkhlbHZldGljYSBOZXVlIiwgc2Fucy1zZXJpZjsKICAgIH0KICAgIAogICAgLnNlYXJjaC1jb250YWluZXIgewogICAgICB3aWR0aDogMTAwJTsKICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsKICAgICAgZGlzcGxheTogZmxleDsKICAgICAgZ2FwOiAxMHB4OwogICAgfQogICAgCiAgICAjaWNvblNlYXJjaCB7CiAgICAgIGZsZXg6IDE7CiAgICAgIHBhZGRpbmc6IDEycHggMTZweDsKICAgICAgZm9udC1zaXplOiAxNnB4OwogICAgICBib3JkZXI6IG5vbmU7CiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgYmFja2dyb3VuZDogIzIyMjsKICAgICAgY29sb3I6ICNmZmY7CiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMzMzM7CiAgICB9CiAgICAKICAgICNpY29uU2VhcmNoOmZvY3VzIHsKICAgICAgb3V0bGluZTogbm9uZTsKICAgICAgYm9yZGVyLWNvbG9yOiAjZTQwMDJiOwogICAgfQogICAgCiAgICAuY29weS1hbGwtYnV0dG9uIHsKICAgICAgcGFkZGluZzogMTJweCAyMHB4OwogICAgICBmb250LXNpemU6IDE2cHg7CiAgICAgIGJvcmRlcjogbm9uZTsKICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICBiYWNrZ3JvdW5kOiAjZTQwMDJiOwogICAgICBjb2xvcjogI2ZmZjsKICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICB0cmFuc2l0aW9uOiBhbGwgMC4yczsKICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKICAgIH0KICAgIAogICAgLmNvcHktYWxsLWJ1dHRvbjpob3ZlciB7CiAgICAgIGJhY2tncm91bmQ6ICNjNDAwMWI7CiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTsKICAgIH0KICAgIAogICAgLmNvcHktYWxsLWJ1dHRvbjphY3RpdmUgewogICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgICB9CiAgICAKICAgIGRlZXMtaWNvbiB7CiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7CiAgICAgIGNvbG9yOiAjZmZmZmZmOwogICAgfQoKICAgIC5pY29uQ29udGFpbmVyIHsKICAgICAgZGlzcGxheTogZmxleDsKICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgcGFkZGluZzogMjBweCAxNnB4IDBweCAxNnB4OwogICAgICBib3JkZXI6IDFweCBzb2xpZCAjMzMzMzMzOwogICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7CiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7CiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzOwogICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIH0KICAgIAogICAgLmljb25Db250YWluZXI6aG92ZXIgewogICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyOwogICAgfQoKICAgIC5pY29uTmFtZSB7CiAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICBjb2xvcjogI2NjYzsKICAgICAgYmFja2dyb3VuZDogIzMzMzMzMzsKICAgICAgcGFkZGluZzogNnB4IDEwcHg7CiAgICAgIG1hcmdpbi1sZWZ0OiAtMTZweDsKICAgICAgbWFyZ2luLXJpZ2h0OiAtMTZweDsKICAgICAgbWFyZ2luLXRvcDogMjBweDsKICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7CiAgICAgIG1heC13aWR0aDogMTIwcHg7CiAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCA0cHggNHB4OwogICAgfQoKICAgIC5zZWN0aW9uLXRpdGxlIHsKICAgICAgd2lkdGg6IDEwMCU7CiAgICAgIGNvbG9yOiAjZmZmZmZmOwogICAgICBmb250LXNpemU6IDI0cHg7CiAgICAgIG1hcmdpbjogMjBweCAwOwogICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDsKICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMzMzMzMzM7CiAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIH0KICAgIAogICAgLmFwaS1ub3RlIHsKICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICBjb2xvcjogI2U0MDAyYjsKICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsKICAgICAgcGFkZGluZzogMTBweDsKICAgICAgYm9yZGVyOiAxcHggc29saWQgI2U0MDAyYjsKICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIyOCwgMCwgNDMsIDAuMSk7CiAgICB9CiAgICAKICAgIC5pY29uLWNvdW50IHsKICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICBjb2xvcjogIzg4ODsKICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDsKICAgICAgYmFja2dyb3VuZDogIzIyMjsKICAgICAgcGFkZGluZzogNXB4IDEwcHg7CiAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7CiAgICB9CiAgICAKICAgIC5pY29ucy1ncmlkIHsKICAgICAgZGlzcGxheTogZmxleDsKICAgICAgZmxleC13cmFwOiB3cmFwOwogICAgICB3aWR0aDogMTAwJTsKICAgIH0KICAgIAogICAgLnNlY3Rpb24tY29udGFpbmVyIHsKICAgICAgd2lkdGg6IDEwMCU7CiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7CiAgICB9CiAgICAKICAgIC5jb3B5LXRvb2x0aXAgewogICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgIGJhY2tncm91bmQ6ICMzMzM7CiAgICAgIGNvbG9yOiB3aGl0ZTsKICAgICAgcGFkZGluZzogNXB4IDEwcHg7CiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICB0b3A6IC0zMHB4OwogICAgICBvcGFjaXR5OiAwOwogICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3M7CiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgfQogICAgCiAgICAuaWNvbkNvbnRhaW5lcjpob3ZlciAuY29weS10b29sdGlwIHsKICAgICAgb3BhY2l0eTogMTsKICAgIH0KCiAgICAuaWNvbkNvbnRhaW5lcjpob3ZlciBkZWVzLWljb24gewogICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7CiAgICB9CiAgICAKICAgIC5oaWRkZW4gewogICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7CiAgICB9CiAgPC9zdHlsZT4KICAKICA8ZGl2IGNsYXNzPSJkZW1vQ29udGFpbmVyIj4KICAgIDxkaXYgY2xhc3M9InNlYXJjaC1jb250YWluZXIiPgogICAgICA8aW5wdXQgdHlwZT0idGV4dCIgaWQ9Imljb25TZWFyY2giIHBsYWNlaG9sZGVyPSJTZWFyY2ggaWNvbnMuLi4iIEBpbnB1dD0ke2F9PgogICAgICA8YnV0dG9uIGNsYXNzPSJjb3B5LWFsbC1idXR0b24iIEBjbGljaz0ke3J9PvCfk4sgQ29weSBBbGwgSWNvbiBOYW1lczwvYnV0dG9uPgogICAgPC9kaXY+CiAgICAKICAgIDxkaXYgY2xhc3M9ImFwaS1ub3RlIj4KICAgICAgTmV3IEFQSTogVXNlIDxjb2RlPmljb249ImZhOmljb25OYW1lIjwvY29kZT4gb3IgPGNvZGU+aWNvbj0ibHVjaWRlOmljb25OYW1lIjwvY29kZT4gaW5zdGVhZCBvZiA8Y29kZT5pY29uRkE8L2NvZGU+LiAKICAgICAgQ2xpY2sgYW55IGljb24gdG8gY29weSBpdHMgbmV3IGZvcm1hdCB0byBjbGlwYm9hcmQuCiAgICA8L2Rpdj4KICAgIAogICAgPGRpdiBjbGFzcz0ic2VjdGlvbi1jb250YWluZXIgZmEtc2VjdGlvbiI+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tdGl0bGUiPgogICAgICAgIEZvbnRBd2Vzb21lIEljb25zCiAgICAgICAgPHNwYW4gY2xhc3M9Imljb24tY291bnQiPiR7ZS5sZW5ndGh9IGljb25zPC9zcGFuPgogICAgICA8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0iaWNvbnMtZ3JpZCI+CiAgICAgICAgJHtlLm1hcChvPT57bGV0IG49YGZhOiR7b31gO3JldHVybiBTYAogICAgICAgICAgICAgIDxkaXYgY2xhc3M9Imljb25Db250YWluZXIgZmEtaWNvbiIgZGF0YS1uYW1lPSR7by50b0xvd2VyQ2FzZSgpfSBAY2xpY2s9JHsoKT0+aShvLCJmYSIpfT4KICAgICAgICAgICAgICAgIDxkZWVzLWljb24gLmljb249JHtufSBpY29uU2l6ZT0iMjQiPjwvZGVlcy1pY29uPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaWNvbk5hbWUiPmZhOiR7b308L2Rpdj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJjb3B5LXRvb2x0aXAiPkNsaWNrIHRvIGNvcHk8L3NwYW4+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIGB9KX0KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KCiAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uLWNvbnRhaW5lciBsdWNpZGUtc2VjdGlvbiI+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tdGl0bGUiPgogICAgICAgIEx1Y2lkZSBJY29ucwogICAgICAgIDxzcGFuIGNsYXNzPSJpY29uLWNvdW50Ij4ke3QubGVuZ3RofSBpY29uczwvc3Bhbj4KICAgICAgPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9Imljb25zLWdyaWQiPgogICAgICAgICR7dC5tYXAobz0+e2xldCBuPWBsdWNpZGU6JHtvfWA7cmV0dXJuIFNgCiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaWNvbkNvbnRhaW5lciBsdWNpZGUtaWNvbiIgZGF0YS1uYW1lPSR7by50b0xvd2VyQ2FzZSgpfSBAY2xpY2s9JHsoKT0+aShvLCJsdWNpZGUiKX0+CiAgICAgICAgICAgICAgICA8ZGVlcy1pY29uIC5pY29uPSR7bn0gaWNvblNpemU9IjI0Ij48L2RlZXMtaWNvbj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Imljb25OYW1lIj5sdWNpZGU6JHtvfTwvZGl2PgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImNvcHktdG9vbHRpcCI+Q2xpY2sgdG8gY29weTwvc3Bhbj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgYH0pfQogICAgICA8L2Rpdj4KICAgIDwvZGl2PgogIDwvZGl2PgogIGB9fSk7ZnVuY3Rpb24gRmJhKCl7Qjkuc2l6ZT5WQXImJkFycmF5LmZyb20oQjkua2V5cygpKS5zbGljZSgwLFZBci81KS5mb3JFYWNoKHQ9PkI5LmRlbGV0ZSh0KSl9dmFyIFI5LFBzLE5iYSx5bGUsQjksVkFyLFVBcixicj1sKCgpPT57U2UoKTtlcigpO290KCk7eGVyKCk7U2xyKCk7ajRyKCk7JEFyKCk7akFyKCk7dmxlKCk7dmxlKCk7Ujk9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxQcz1mdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MixpPTA7aTx0Lmxlbmd0aDtpKyspcj1hP3RbaV0uY2FsbChlLHIpOnRbaV0uY2FsbChlKTtyZXR1cm4gYT9yOnZvaWQgMH0sTmJhPXthcnJvd1JpZ2h0OnVsZSxhcnJvd1VwUmlnaHRGcm9tU3F1YXJlOlV3LGJlbGw6SjJlLGJ1ZzpobGUsYnVpbGRpbmc6bGxlLGNhcmV0TGVmdDpybGUsY2FyZXRSaWdodDpLMmUsY2hlY2s6ZGxlLGNpcmNsZUluZm86R3csY2lyY2xlQ2hlY2s6bXcsY2lyY2xlQ2hlY2tTb2xpZDpIdyxjaXJjbGVYbWFyazpFOSxjaXJjbGVYbWFya1NvbGlkOkY5LGNsb2NrUm90YXRlTGVmdDpxdyxjb3B5OmUyZSxjb3B5U29saWQ6bWxlLGRlc2t0b3A6V3csZXllOnRsZSxleWVTbGFzaDpnbGUsZmlsZUludm9pY2U6ZmxlLGZpbGVJbnZvaWNlRG9sbGVyOnBsZSxnZWFyOlJ3LGdyaXA6TzksbWFnbmlmeWluZ0dsYXNzOk53LG1lc3NhZ2U6cHcsbWVzc2FnZVNvbGlkOlB3LG1vbmV5Q2hlY2tEb2xsYXI6VncsbXVnSG90OnhsZSxtaW51czokdyxuZXR3b3JrV2lyZWQ6bmxlLHBhcGVyY2xpcDpjbGUscGFzdGU6ZncscGFzdGVTb2xpZDpFdyxwZW5Ub1NxdWFyZTpGdyxwbHVzOmp3LHJlY2VpcHQ6YWxlLHJzczpJdyxzaGFyZTpPdyxzdW46SnNlLHN1blNvbGlkOm9sZSx0ZXJtaW5hbDpzbGUsdHJhc2g6WXcsdHJhc2hTb2xpZDpZdyx0cmFzaENhbjpodyx0cmFzaENhblNvbGlkOkJ3LHVzZXJzOmlsZSx3YWxsZXQ6ZWxlLHhtYXJrOnIzLGZhY2Vib29rOkJzZSxnb29nbGU6T3NlLGluc3RhZ3JhbTpqc2UsbGlua2VkaW46UnNlLG1lZGl1bTpjdyxzbGFjazpIc2UsdGlrdG9rOnFzZSx0d2l0dGVyOlZzZX0seWxlPXtmYTpOYmF9LEI5PW5ldyBNYXAsVkFyPTUwMDtVQXI9KCgpPT57bGV0IGU9W3plKCJkZWVzLWljb24iKV0sdCxyPVtdLGEsaT1EZSxvLG49W10scz1bXSxjLGQ9W10sZj1bXSx1LHA9W10saD1bXSxiLHg9W10sZz1bXSx2LHc9W10sTT1bXTt2YXIgRj1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IEM9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baih7dHlwZTpTdHJpbmcsY29udmVydGVyOntmcm9tQXR0cmlidXRlOms9PmssdG9BdHRyaWJ1dGU6az0+a319KV0sYz1baih7dHlwZTpTdHJpbmcsY29udmVydGVyOntmcm9tQXR0cmlidXRlOms9PmssdG9BdHRyaWJ1dGU6az0+a319KV0sdT1baih7dHlwZTpOdW1iZXJ9KV0sYj1baih7dHlwZTpTdHJpbmd9KV0sdj1baih7dHlwZTpOdW1iZXJ9KV0sUjkodGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJpY29uRkEiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOms9PiJpY29uRkEiaW4gayxnZXQ6az0+ay5pY29uRkEsc2V0OihrLE4pPT57ay5pY29uRkE9Tn19LG1ldGFkYXRhOkN9LG4scyksUjkodGhpcyxudWxsLGMse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJpY29uIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczprPT4iaWNvbiJpbiBrLGdldDprPT5rLmljb24sc2V0OihrLE4pPT57ay5pY29uPU59fSxtZXRhZGF0YTpDfSxkLGYpLFI5KHRoaXMsbnVsbCx1LHtraW5kOiJhY2Nlc3NvciIsbmFtZToiaWNvblNpemUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOms9PiJpY29uU2l6ZSJpbiBrLGdldDprPT5rLmljb25TaXplLHNldDooayxOKT0+e2suaWNvblNpemU9Tn19LG1ldGFkYXRhOkN9LHAsaCksUjkodGhpcyxudWxsLGIse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJjb2xvciIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6az0+ImNvbG9yImluIGssZ2V0Oms9PmsuY29sb3Isc2V0OihrLE4pPT57ay5jb2xvcj1OfX0sbWV0YWRhdGE6Q30seCxnKSxSOSh0aGlzLG51bGwsdix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InN0cm9rZVdpZHRoIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczprPT4ic3Ryb2tlV2lkdGgiaW4gayxnZXQ6az0+ay5zdHJva2VXaWR0aCxzZXQ6KGssTik9PntrLnN0cm9rZVdpZHRoPU59fSxtZXRhZGF0YTpDfSx3LE0pLFI5KG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOkN9LG51bGwsciksRj1hPXQudmFsdWUsQyYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpDfSl9c3RhdGljIGRlbW89cUFyO3N0YXRpYyBkZW1vR3JvdXBzPVsiVXRpbGl0eSJdOyNlPVBzKHRoaXMsbix2b2lkIDApO2dldCBpY29uRkEoKXtyZXR1cm4gdGhpcy4jZX1zZXQgaWNvbkZBKEMpe3RoaXMuI2U9Q30jdD0oUHModGhpcyxzKSxQcyh0aGlzLGQsdm9pZCAwKSk7Z2V0IGljb24oKXtyZXR1cm4gdGhpcy4jdH1zZXQgaWNvbihDKXt0aGlzLiN0PUN9I3I9KFBzKHRoaXMsZiksUHModGhpcyxwLHZvaWQgMCkpO2dldCBpY29uU2l6ZSgpe3JldHVybiB0aGlzLiNyfXNldCBpY29uU2l6ZShDKXt0aGlzLiNyPUN9I2E9KFBzKHRoaXMsaCksUHModGhpcyx4LCJjdXJyZW50Q29sb3IiKSk7Z2V0IGNvbG9yKCl7cmV0dXJuIHRoaXMuI2F9c2V0IGNvbG9yKEMpe3RoaXMuI2E9Q30jaT0oUHModGhpcyxnKSxQcyh0aGlzLHcsMikpO2dldCBzdHJva2VXaWR0aCgpe3JldHVybiB0aGlzLiNpfXNldCBzdHJva2VXaWR0aChDKXt0aGlzLiNpPUN9bGFzdEljb249KFBzKHRoaXMsTSksbnVsbCk7bGFzdEljb25TaXplPW51bGw7bGFzdENvbG9yPW51bGw7bGFzdFN0cm9rZVdpZHRoPW51bGw7Y29uc3RydWN0b3IoKXtzdXBlcigpLGthLnNldHVwKCl9Z2V0RWZmZWN0aXZlSWNvbigpe3JldHVybiB0aGlzLmljb24/dGhpcy5pY29uOnRoaXMuaWNvbkZBP3RoaXMuaWNvbkZBLnN0YXJ0c1dpdGgoImx1Y2lkZToiKT90aGlzLmljb25GQTpgZmE6JHt0aGlzLmljb25GQX1gOm51bGx9cGFyc2VJY29uU3RyaW5nKEMpe2xldCBrPUMudG9Mb3dlckNhc2UoKTtyZXR1cm4gay5zdGFydHNXaXRoKCJmYToiKT97dHlwZToiZmEiLG5hbWU6Qy5zdWJzdHJpbmcoMyl9Omsuc3RhcnRzV2l0aCgibHVjaWRlOiIpP3t0eXBlOiJsdWNpZGUiLG5hbWU6Qy5zdWJzdHJpbmcoNyl9Ont0eXBlOiJsdWNpZGUiLG5hbWU6Q319cmVuZGVyTHVjaWRlSWNvbihDKXtsZXQgaz1gbHVjaWRlOiR7Q306JHt0aGlzLmljb25TaXplfToke3RoaXMuY29sb3J9OiR7dGhpcy5zdHJva2VXaWR0aH1gO2lmKEI5LmhhcyhrKSlyZXR1cm4gQjkuZ2V0KGspfHwiIjt0cnl7bGV0IE49Qy5jaGFyQXQoMCkudG9VcHBlckNhc2UoKStDLnNsaWNlKDEpO2lmKCFjbFtOXSlyZXR1cm4gY29uc29sZS53YXJuKGBMdWNpZGUgaWNvbiAnJHtOfScgbm90IGZvdW5kIGluIGx1Y2lkZUljb25zIG9iamVjdGApLCIiO2xldCAkPWEzKGNsW05dLHtjb2xvcjp0aGlzLmNvbG9yLHNpemU6dGhpcy5pY29uU2l6ZSxzdHJva2VXaWR0aDp0aGlzLnN0cm9rZVdpZHRofSk7aWYoISQpcmV0dXJuIGNvbnNvbGUud2FybihgY3JlYXRlRWxlbWVudCByZXR1cm5lZCBlbXB0eSByZXN1bHQgZm9yICR7Tn1gKSwiIjtsZXQgST0kLm91dGVySFRNTDtyZXR1cm4gQjkuc2V0KGssSSksRmJhKCksSX1jYXRjaChOKXtyZXR1cm4gY29uc29sZS5lcnJvcihgRXJyb3IgcmVuZGVyaW5nIEx1Y2lkZSBpY29uICR7Q306YCxOKSxgPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIke3RoaXMuaWNvblNpemV9IiBoZWlnaHQ9IiR7dGhpcy5pY29uU2l6ZX0iIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIke3RoaXMuY29sb3J9IiBzdHJva2Utd2lkdGg9IiR7dGhpcy5zdHJva2VXaWR0aH0iIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+CiAgICAgICAgPHRleHQgeD0iNTAlIiB5PSI1MCUiIGZvbnQtc2l6ZT0iNiIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZG9taW5hbnQtYmFzZWxpbmU9Im1pZGRsZSIgZmlsbD0iJHt0aGlzLmNvbG9yfSI+JHtDfTwvdGV4dD4KICAgICAgPC9zdmc+YH19c3RhdGljIHN0eWxlcz1bUGUsbS5kZWZhdWx0U3R5bGVzLGxlYAogICAgICAvKiBUT0RPOiBNaWdyYXRlIGhhcmRjb2RlZCB2YWx1ZXMgdG8gLS1kZWVzLSogQ1NTIHZhcmlhYmxlcyAqLwogICAgICA6aG9zdCB7CiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICBsaW5lLWhlaWdodDogMTsKICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogICAgICB9CgogICAgICAvKiBJbXByb3ZlIHJlbmRlcmluZyBwZXJmb3JtYW5jZSAqLwogICAgICAjaWNvbkNvbnRhaW5lciBzdmcgewogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtOyAvKiBIZWxwcyB3aXRoIGFuaW1hdGlvbnMgKi8KICAgICAgICBjb250YWluOiBzdHJpY3Q7IC8qIFBlcmZvcm1hbmNlIG9wdGltaXphdGlvbiAqLwogICAgICB9CiAgICBgXTtyZW5kZXIoKXtyZXR1cm4gU2AKICAgICAgJHtrYS5zdHlsZXN9CiAgICAgIDxzdHlsZT4KICAgICAgICAjaWNvbkNvbnRhaW5lciB7CiAgICAgICAgICB3aWR0aDogJHt0aGlzLmljb25TaXplfXB4OwogICAgICAgICAgaGVpZ2h0OiAke3RoaXMuaWNvblNpemV9cHg7CiAgICAgICAgfQogICAgICA8L3N0eWxlPgogICAgICA8ZGl2IGlkPSJpY29uQ29udGFpbmVyIj48L2Rpdj4KICAgIGB9dXBkYXRlZCgpe3RoaXMuaWNvblNpemV8fCh0aGlzLmljb25TaXplPXBhcnNlSW50KGdsb2JhbFRoaXMuZ2V0Q29tcHV0ZWRTdHlsZSh0aGlzKS5mb250U2l6ZS5yZXBsYWNlKC9cRC9nLCIiKSkpO2xldCBDPXRoaXMuZ2V0RWZmZWN0aXZlSWNvbigpO2lmKHRoaXMubGFzdEljb249PT1DJiZ0aGlzLmxhc3RJY29uU2l6ZT09PXRoaXMuaWNvblNpemUmJnRoaXMubGFzdENvbG9yPT09dGhpcy5jb2xvciYmdGhpcy5sYXN0U3Ryb2tlV2lkdGg9PT10aGlzLnN0cm9rZVdpZHRoKXJldHVybjt0aGlzLmxhc3RJY29uPUMsdGhpcy5sYXN0SWNvblNpemU9dGhpcy5pY29uU2l6ZSx0aGlzLmxhc3RDb2xvcj10aGlzLmNvbG9yLHRoaXMubGFzdFN0cm9rZVdpZHRoPXRoaXMuc3Ryb2tlV2lkdGg7bGV0IGs9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCIjaWNvbkNvbnRhaW5lciIpO2lmKCEoIWt8fCFDKSl0cnl7bGV0e3R5cGU6TixuYW1lOiR9PXRoaXMucGFyc2VJY29uU3RyaW5nKEMpO2lmKE49PT0ibHVjaWRlIil7ay5pbm5lckhUTUw9IiI7dHJ5e2xldCBJPSQuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkrJC5zbGljZSgxKTtpZihjbFtJXSl7bGV0IEI9YTMoY2xbSV0se2NvbG9yOnRoaXMuY29sb3Isc2l6ZTp0aGlzLmljb25TaXplLHN0cm9rZVdpZHRoOnRoaXMuc3Ryb2tlV2lkdGh9KTtpZihCKXtrLmFwcGVuZENoaWxkKEIpO3JldHVybn19dGhyb3cgbmV3IEVycm9yKGBDb3VsZCBub3QgY3JlYXRlIGVsZW1lbnQgZm9yICR7SX1gKX1jYXRjaChJKXtjb25zb2xlLmVycm9yKCJFcnJvciByZW5kZXJpbmcgTHVjaWRlIGljb246IixJKTtsZXQgQj10aGlzLnJlbmRlckx1Y2lkZUljb24oJCk7QiYmKGsuaW5uZXJIVE1MPUIpfX1lbHNle2xldCBJPXlsZS5mYVskXTtpZihJKXtsZXQgQj1Qa2UoSSkuaHRtbFswXTtrLmlubmVySFRNTD1CfWVsc2UgY29uc29sZS53YXJuKGBGb250QXdlc29tZSBpY29uIG5vdCBmb3VuZDogJHskfWApfX1jYXRjaChOKXtjb25zb2xlLmVycm9yKGBFcnJvciB1cGRhdGluZyBpY29uICR7Q306YCxOKX19YXN5bmMgZGlzY29ubmVjdGVkQ2FsbGJhY2soKXtzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpLHRoaXMubGFzdEljb249bnVsbCx0aGlzLmxhc3RJY29uU2l6ZT1udWxsLHRoaXMubGFzdENvbG9yPW51bGwsdGhpcy5sYXN0U3Ryb2tlV2lkdGg9bnVsbH1zdGF0aWN7UHMoYSxyKX19O3JldHVybiBGPWF9KSgpfSk7dmFyIFdBcixFbHQsdHIsYmk9bCgoKT0+e09pKCk7Tkt0KCk7U2UoKTtlcigpO2tjKCk7VG4oKTticigpO290KCk7V0FyPWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sRWx0PWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSx0cj0oKCk9PntsZXQgZT1bemUoImRlZXMtY29udGV4dG1lbnUiKV0sdCxyPVtdLGEsaT1EZSxvLG49W10scz1bXTt2YXIgYz1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IGQ9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baih7dHlwZTpBcnJheX0pXSxXQXIodGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJtZW51SXRlbXMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmY9PiJtZW51SXRlbXMiaW4gZixnZXQ6Zj0+Zi5tZW51SXRlbXMsc2V0OihmLHUpPT57Zi5tZW51SXRlbXM9dX19LG1ldGFkYXRhOmR9LG4scyksV0FyKG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOmR9LG51bGwsciksYz1hPXQudmFsdWUsZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpkfSl9c3RhdGljIGRlbW89SUt0O3N0YXRpYyBkZW1vR3JvdXBzPVsiT3ZlcmxheSJdO3N0YXRpYyBjb250ZXh0TWVudURlYWN0aXZhdGVkPSExO3N0YXRpYyBhY2N1bXVsYXRlZE1lbnVJdGVtcz1bXTtzdGF0aWMgaW5pdGlhbGl6ZUdsb2JhbExpc3RlbmVyKCl7ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY29udGV4dG1lbnUiLGQ9PntpZih0aGlzLmNvbnRleHRNZW51RGVhY3RpdmF0ZWQpcmV0dXJuO2QucHJldmVudERlZmF1bHQoKSxjLmFjY3VtdWxhdGVkTWVudUl0ZW1zPVtdO2xldCBmPWQuY29tcG9zZWRQYXRoKCk7Zm9yKGxldCB1IG9mIGYpaWYodS5nZXRDb250ZXh0TWVudUl0ZW1zKXtsZXQgcD11LmdldENvbnRleHRNZW51SXRlbXMoKTtwJiZwLmxlbmd0aD4wJiYoYy5hY2N1bXVsYXRlZE1lbnVJdGVtcy5sZW5ndGg+MCYmYy5hY2N1bXVsYXRlZE1lbnVJdGVtcy5wdXNoKHtkaXZpZGVyOiEwfSksYy5hY2N1bXVsYXRlZE1lbnVJdGVtcy5wdXNoKC4uLnApKX1jLm9wZW5Db250ZXh0TWVudVdpdGhPcHRpb25zKGQsYy5hY2N1bXVsYXRlZE1lbnVJdGVtcyl9KX1zdGF0aWMgYXN5bmMgb3BlbkNvbnRleHRNZW51V2l0aE9wdGlvbnMoZCxmKXtpZih0aGlzLmNvbnRleHRNZW51RGVhY3RpdmF0ZWQpcmV0dXJuO2QucHJldmVudERlZmF1bHQoKSxkLnN0b3BQcm9wYWdhdGlvbigpO2xldCB1PW5ldyBjO3Uuc3R5bGUucG9zaXRpb249ImZpeGVkIix1LnN0eWxlLnpJbmRleD1TdHJpbmcoTGkub3ZlcmxheS5jb250ZXh0TWVudSksdS5zdHlsZS5vcGFjaXR5PSIwIix1LnN0eWxlLnRyYW5zZm9ybT0ic2NhbGUoMC45NSkgdHJhbnNsYXRlWSgtMTBweCkiLHUubWVudUl0ZW1zPWYsdS53aW5kb3dMYXllcj1hd2FpdCBxbi5jcmVhdGVBbmRTaG93KCksdS53aW5kb3dMYXllci5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsYXN5bmMgdj0+e3YudGFyZ2V0LmNsb3Nlc3QoImRlZXMtY29udGV4dG1lbnUiKXx8YXdhaXQgdS5kZXN0cm95KCl9KSxkb2N1bWVudC5ib2R5LmFwcGVuZCh1KSxhd2FpdCBKdC5zbWFydGRlbGF5LmRlbGF5Rm9yKDApO2xldCBwPXUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksaD13aW5kb3cuaW5uZXJXaWR0aCxiPXdpbmRvdy5pbm5lckhlaWdodCx4PWQuY2xpZW50WSxnPWQuY2xpZW50WDtnK3Aud2lkdGg+aCYmKGc9aC1wLndpZHRoLTEwKSx4K3AuaGVpZ2h0PmImJih4PWItcC5oZWlnaHQtMTApLGc8MTAmJihnPTEwKSx4PDEwJiYoeD0xMCksdS5zdHlsZS50b3A9YCR7eH1weGAsdS5zdHlsZS5sZWZ0PWAke2d9cHhgLHUuc3R5bGUudHJhbnNmb3JtT3JpZ2luPSJ0b3AgbGVmdCIsYXdhaXQgSnQuc21hcnRkZWxheS5kZWxheUZvcigwKSx1LnN0eWxlLm9wYWNpdHk9IjEiLHUuc3R5bGUudHJhbnNmb3JtPSJzY2FsZSgxKSB0cmFuc2xhdGVZKDApIn0jZT1FbHQodGhpcyxuLFtdKTtnZXQgbWVudUl0ZW1zKCl7cmV0dXJuIHRoaXMuI2V9c2V0IG1lbnVJdGVtcyhkKXt0aGlzLiNlPWR9d2luZG93TGF5ZXI9RWx0KHRoaXMscyk7c3VibWVudT1udWxsO3N1Ym1lbnVUaW1lb3V0PW51bGw7cGFyZW50TWVudT1udWxsO2lzRGVzdHJveWluZz0hMTtjb25zdHJ1Y3Rvcigpe3N1cGVyKCksdGhpcy50YWJJbmRleD0wfXN0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgLyogVE9ETzogTWlncmF0ZSBoYXJkY29kZWQgdmFsdWVzIHRvIC0tZGVlcy0qIENTUyB2YXJpYWJsZXMgKi8KICAgICAgOmhvc3QgewogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycywgdHJhbnNmb3JtIDAuMnM7CiAgICAgICAgb3V0bGluZTogbm9uZTsKICAgICAgfQoKICAgICAgLm1haW5ib3ggewogICAgICAgIG1pbi13aWR0aDogMjAwcHg7CiAgICAgICAgbWF4LXdpZHRoOiAyODBweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2ZmZmZmZiIsIiMwMDAwMDAiKX07CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlMGUwZTAiLCIjMjAyMDIwIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgICBib3gtc2hhZG93OiAke20uYmRUaGVtZSgiMCA0cHggMTJweCByZ2JhKDAsIDAsIDAsIDAuMTUpIiwiMCA0cHggMTJweCByZ2JhKDAsIDAsIDAsIDAuMykiKX07CiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgICAgcGFkZGluZzogNHB4IDA7CiAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzMzMyIsIiNjY2MiKX07CiAgICAgIH0KCiAgICAgIC5tZW51aXRlbSB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogOHB4OwogICAgICAgIHBhZGRpbmc6IDhweCAxMnB4OwogICAgICAgIGN1cnNvcjogZGVmYXVsdDsKICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMXM7CiAgICAgICAgbGluZS1oZWlnaHQ6IDE7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICB9CgogICAgICAubWVudWl0ZW06aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDAsIDAsIDAsIDAuMDQpIiwicmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KSIpfTsKICAgICAgfQogICAgICAKICAgICAgLm1lbnVpdGVtLmhhcy1zdWJtZW51OjphZnRlciB7CiAgICAgICAgY29udGVudDogJ+KAuic7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHJpZ2h0OiA4cHg7CiAgICAgICAgZm9udC1zaXplOiAxNnB4OwogICAgICAgIG9wYWNpdHk6IDAuNTsKICAgICAgfQoKICAgICAgLm1lbnVpdGVtOmFjdGl2ZTpub3QoLmhhcy1zdWJtZW51KSB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoMCwgMCwgMCwgMC4wOCkiLCJyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTIpIil9OwogICAgICB9CiAgICAgIAogICAgICAubWVudWl0ZW0uZGlzYWJsZWQgewogICAgICAgIG9wYWNpdHk6IDAuNTsKICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOwogICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgICB9CgogICAgICAubWVudWl0ZW0gZGVlcy1pY29uIHsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgb3BhY2l0eTogMC43OwogICAgICB9CgogICAgICAubWVudWl0ZW0tdGV4dCB7CiAgICAgICAgZmxleDogMTsKICAgICAgfQoKICAgICAgLm1lbnVpdGVtLXNob3J0Y3V0IHsKICAgICAgICBmb250LXNpemU6IDExcHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjOTk5IiwiIzY2NiIpfTsKICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsKICAgICAgICBvcGFjaXR5OiAwLjc7CiAgICAgIH0KCiAgICAgIC5tZW51LWRpdmlkZXIgewogICAgICAgIGhlaWdodDogMXB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZTBlMGUwIiwiIzIwMjAyMCIpfTsKICAgICAgICBtYXJnaW46IDRweCAwOwogICAgICB9CiAgICBgXTtyZW5kZXIoKXtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0ibWFpbmJveCI+CiAgICAgICAgJHt0aGlzLm1lbnVJdGVtcy5tYXAoZD0+e2lmKCJkaXZpZGVyImluIGQmJmQuZGl2aWRlcilyZXR1cm4gU2A8ZGl2IGNsYXNzPSJtZW51LWRpdmlkZXIiPjwvZGl2PmA7bGV0IGY9ZCx1PWYuc3VibWVudSYmZi5zdWJtZW51Lmxlbmd0aD4wO3JldHVybiBTYAogICAgICAgICAgICA8ZGl2IAogICAgICAgICAgICAgIGNsYXNzPSJtZW51aXRlbSAke2YuZGlzYWJsZWQ/ImRpc2FibGVkIjoiIn0gJHt1PyJoYXMtc3VibWVudSI6IiJ9IiAKICAgICAgICAgICAgICBAY2xpY2s9JHsoKT0+IWYuZGlzYWJsZWQmJiF1JiZ0aGlzLmhhbmRsZUNsaWNrKGYpfQogICAgICAgICAgICAgIEBtb3VzZWVudGVyPSR7KCk9PnRoaXMuaGFuZGxlTWVudUl0ZW1Ib3ZlcihmLHUpfQogICAgICAgICAgICAgIEBtb3VzZWxlYXZlPSR7KCk9PnRoaXMuaGFuZGxlTWVudUl0ZW1MZWF2ZSgpfQogICAgICAgICAgICA+CiAgICAgICAgICAgICAgJHtmLmljb25OYW1lP1NgCiAgICAgICAgICAgICAgICA8ZGVlcy1pY29uIC5pY29uPSIke2YuaWNvbk5hbWV9Ij48L2RlZXMtaWNvbj4KICAgICAgICAgICAgICBgOiIifQogICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJtZW51aXRlbS10ZXh0Ij4ke2YubmFtZX08L3NwYW4+CiAgICAgICAgICAgICAgJHtmLnNob3J0Y3V0JiYhdT9TYAogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im1lbnVpdGVtLXNob3J0Y3V0Ij4ke2Yuc2hvcnRjdXR9PC9zcGFuPgogICAgICAgICAgICAgIGA6IiJ9CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgYH0pfQogICAgICAgICR7dGhpcy5tZW51SXRlbXMubGVuZ3RoPT09MD9TYAogICAgICAgICAgICA8ZGl2IGNsYXNzPSJtZW51aXRlbSIgQGNsaWNrPSR7KCk9PntjLmNvbnRleHRNZW51RGVhY3RpdmF0ZWQ9ITAsdGhpcy5kZXN0cm95KCl9fT4KICAgICAgICAgICAgICA8ZGVlcy1pY29uIC5pY29uPSJsdWNpZGU6eCI+PC9kZWVzLWljb24+CiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im1lbnVpdGVtLXRleHQiPkFsbG93IG5hdGl2ZSBjb250ZXh0PC9zcGFuPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICBgOlNgYH0KICAgICAgPC9kaXY+CiAgICBgfWFzeW5jIGZpcnN0VXBkYXRlZCgpe3RoaXMuZm9jdXMoKSx0aGlzLmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLHRoaXMuaGFuZGxlS2V5ZG93bil9aGFuZGxlS2V5ZG93bj1kPT57bGV0IGY9QXJyYXkuZnJvbSh0aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvckFsbCgiLm1lbnVpdGVtOm5vdCguZGlzYWJsZWQpIikpLHU9Zi5maW5kSW5kZXgocD0+cC5tYXRjaGVzKCI6aG92ZXIiKSk7c3dpdGNoKGQua2V5KXtjYXNlIkFycm93RG93biI6ZC5wcmV2ZW50RGVmYXVsdCgpO2xldCBwPXUrMTxmLmxlbmd0aD91KzE6MDtmW3BdLmRpc3BhdGNoRXZlbnQobmV3IE1vdXNlRXZlbnQoIm1vdXNlZW50ZXIiKSk7YnJlYWs7Y2FzZSJBcnJvd1VwIjpkLnByZXZlbnREZWZhdWx0KCk7bGV0IGg9dS0xPj0wP3UtMTpmLmxlbmd0aC0xO2ZbaF0uZGlzcGF0Y2hFdmVudChuZXcgTW91c2VFdmVudCgibW91c2VlbnRlciIpKTticmVhaztjYXNlIkVudGVyIjpkLnByZXZlbnREZWZhdWx0KCksdT49MCYmZlt1XS5jbGljaygpO2JyZWFrO2Nhc2UiRXNjYXBlIjpkLnByZXZlbnREZWZhdWx0KCksdGhpcy5kZXN0cm95KCk7YnJlYWt9fTthc3luYyBoYW5kbGVDbGljayhkKXtkLmFjdGlvbigpLGF3YWl0IHRoaXMuZGVzdHJveUFsbCgpfWFzeW5jIGhhbmRsZU1lbnVJdGVtSG92ZXIoZCxmKXt0aGlzLnN1Ym1lbnVUaW1lb3V0JiYoY2xlYXJUaW1lb3V0KHRoaXMuc3VibWVudVRpbWVvdXQpLHRoaXMuc3VibWVudVRpbWVvdXQ9bnVsbCksdGhpcy5zdWJtZW51JiZhd2FpdCB0aGlzLmhpZGVTdWJtZW51KCksZiYmZC5zdWJtZW51JiYodGhpcy5zdWJtZW51VGltZW91dD1zZXRUaW1lb3V0KCgpPT57dGhpcy5zaG93U3VibWVudShkKX0sMjAwKSl9aGFuZGxlTWVudUl0ZW1MZWF2ZSgpe3RoaXMuc3VibWVudVRpbWVvdXQmJmNsZWFyVGltZW91dCh0aGlzLnN1Ym1lbnVUaW1lb3V0KSx0aGlzLnN1Ym1lbnVUaW1lb3V0PXNldFRpbWVvdXQoKCk9Pnt0aGlzLnN1Ym1lbnUmJiF0aGlzLnN1Ym1lbnUubWF0Y2hlcygiOmhvdmVyIikmJnRoaXMuaGlkZVN1Ym1lbnUoKX0sMzAwKX1hc3luYyBzaG93U3VibWVudShkKXtpZighZC5zdWJtZW51fHxkLnN1Ym1lbnUubGVuZ3RoPT09MClyZXR1cm47bGV0IHU9QXJyYXkuZnJvbSh0aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvckFsbCgiLm1lbnVpdGVtIikpLmZpbmQodz0+dy5xdWVyeVNlbGVjdG9yKCIubWVudWl0ZW0tdGV4dCIpPy50ZXh0Q29udGVudD09PWQubmFtZSk7aWYoIXUpcmV0dXJuO3RoaXMuc3VibWVudT1uZXcgYyx0aGlzLnN1Ym1lbnUubWVudUl0ZW1zPWQuc3VibWVudSx0aGlzLnN1Ym1lbnUucGFyZW50TWVudT10aGlzLHRoaXMuc3VibWVudS5zdHlsZS5wb3NpdGlvbj0iZml4ZWQiLHRoaXMuc3VibWVudS5zdHlsZS56SW5kZXg9U3RyaW5nKHBhcnNlSW50KHRoaXMuc3R5bGUuekluZGV4KSsxKSx0aGlzLnN1Ym1lbnUuc3R5bGUub3BhY2l0eT0iMCIsdGhpcy5zdWJtZW51LnN0eWxlLnRyYW5zZm9ybT0ic2NhbGUoMC45NSkiLGRvY3VtZW50LmJvZHkuYXBwZW5kKHRoaXMuc3VibWVudSksYXdhaXQgSnQuc21hcnRkZWxheS5kZWxheUZvcigwKTtsZXQgcD11LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLGg9dGhpcy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxiPXRoaXMuc3VibWVudS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSx4PXdpbmRvdy5pbm5lcldpZHRoLGc9aC5yaWdodC00LHY9cC50b3A7ZytiLndpZHRoPngtMTAmJihnPWgubGVmdC1iLndpZHRoKzQpLHYrYi5oZWlnaHQ+d2luZG93LmlubmVySGVpZ2h0LTEwJiYodj13aW5kb3cuaW5uZXJIZWlnaHQtYi5oZWlnaHQtMTApLHRoaXMuc3VibWVudS5zdHlsZS5sZWZ0PWAke2d9cHhgLHRoaXMuc3VibWVudS5zdHlsZS50b3A9YCR7dn1weGAsYXdhaXQgSnQuc21hcnRkZWxheS5kZWxheUZvcigwKSx0aGlzLnN1Ym1lbnUuc3R5bGUub3BhY2l0eT0iMSIsdGhpcy5zdWJtZW51LnN0eWxlLnRyYW5zZm9ybT0ic2NhbGUoMSkiLHRoaXMuc3VibWVudS5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWVudGVyIiwoKT0+e3RoaXMuc3VibWVudVRpbWVvdXQmJihjbGVhclRpbWVvdXQodGhpcy5zdWJtZW51VGltZW91dCksdGhpcy5zdWJtZW51VGltZW91dD1udWxsKX0pLHRoaXMuc3VibWVudS5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIiwoKT0+e3RoaXMuaGFuZGxlTWVudUl0ZW1MZWF2ZSgpfSl9YXN5bmMgaGlkZVN1Ym1lbnUoKXt0aGlzLnN1Ym1lbnUmJihhd2FpdCB0aGlzLnN1Ym1lbnUuZGVzdHJveSgpLHRoaXMuc3VibWVudT1udWxsKX1hc3luYyBkZXN0cm95KCl7dGhpcy5pc0Rlc3Ryb3lpbmd8fCh0aGlzLmlzRGVzdHJveWluZz0hMCx0aGlzLnN1Ym1lbnVUaW1lb3V0JiYoY2xlYXJUaW1lb3V0KHRoaXMuc3VibWVudVRpbWVvdXQpLHRoaXMuc3VibWVudVRpbWVvdXQ9bnVsbCksdGhpcy5zdWJtZW51JiYoYXdhaXQgdGhpcy5zdWJtZW51LmRlc3Ryb3koKSx0aGlzLnN1Ym1lbnU9bnVsbCksdGhpcy53aW5kb3dMYXllciYmIXRoaXMucGFyZW50TWVudSYmdGhpcy53aW5kb3dMYXllci5kZXN0cm95KCksdGhpcy5zdHlsZS5vcGFjaXR5PSIwIix0aGlzLnN0eWxlLnRyYW5zZm9ybT0ic2NhbGUoMC45NSkgdHJhbnNsYXRlWSgtMTBweCkiLGF3YWl0IEp0LnNtYXJ0ZGVsYXkuZGVsYXlGb3IoMTAwKSx0aGlzLnBhcmVudEVsZW1lbnQmJnRoaXMucGFyZW50RWxlbWVudC5yZW1vdmVDaGlsZCh0aGlzKSl9YXN5bmMgZGVzdHJveUFsbCgpe2xldCBkPXRoaXM7Zm9yKDtkLnBhcmVudE1lbnU7KWQ9ZC5wYXJlbnRNZW51O2F3YWl0IGQuZGVzdHJveSgpfXN0YXRpY3tFbHQoYSxyKX19O3JldHVybiBjPWF9KSgpO3RyLmluaXRpYWxpemVHbG9iYWxMaXN0ZW5lcigpfSk7dmFyIEdBciwkbHQsT2JhLFlBcj1sKCgpPT57U2UoKTtHQXI9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSwkbHQ9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LE9iYT0oKCk9PntsZXQgZT1bemUoImRlZXMtZGVtb3dyYXBwZXIiKV0sdCxyPVtdLGEsaT1EZSxvLG49W10scz1bXTt2YXIgYz1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IGQ9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baih7YXR0cmlidXRlOiExfSldLEdBcih0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InJ1bkFmdGVyUmVuZGVyIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpmPT4icnVuQWZ0ZXJSZW5kZXIiaW4gZixnZXQ6Zj0+Zi5ydW5BZnRlclJlbmRlcixzZXQ6KGYsdSk9PntmLnJ1bkFmdGVyUmVuZGVyPXV9fSxtZXRhZGF0YTpkfSxuLHMpLEdBcihudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTpkfSxudWxsLHIpLGM9YT10LnZhbHVlLGQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6ZH0pfSNlPSRsdCh0aGlzLG4sdm9pZCAwKTtnZXQgcnVuQWZ0ZXJSZW5kZXIoKXtyZXR1cm4gdGhpcy4jZX1zZXQgcnVuQWZ0ZXJSZW5kZXIoZCl7dGhpcy4jZT1kfXN0YXRpYyBzdHlsZXM9W2xlYAogICAgICA6aG9zdCB7CiAgICAgICAgZGlzcGxheTogY29udGVudHM7CiAgICAgIH0KICAgIGBdO3JlbmRlcigpe3JldHVybiBTYAogICAgICA8c2xvdD48L3Nsb3Q+CiAgICBgfWFzeW5jIGZpcnN0VXBkYXRlZCgpe2lmKGF3YWl0IHRoaXMudXBkYXRlQ29tcGxldGUsYXdhaXQgbmV3IFByb21pc2UoZD0+c2V0VGltZW91dChkLDUwKSksdGhpcy5jaGlsZHJlbi5sZW5ndGg+MCYmdGhpcy5ydW5BZnRlclJlbmRlcil0cnl7YXdhaXQgdGhpcy5ydW5BZnRlclJlbmRlcih0aGlzKX1jYXRjaChkKXtjb25zb2xlLmVycm9yKCJFcnJvciBpbiBydW5BZnRlclJlbmRlcjoiLGQpfX1jb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyksJGx0KHRoaXMscyl9c3RhdGljeyRsdChhLHIpfX07cmV0dXJuIGM9YX0pKCl9KTt2YXIgemE9bCgoKT0+e1lBcigpfSk7dmFyIFpBcixYQXI9bCgoKT0+e1NlKCk7emEoKTtaQXI9KCk9PntsZXQgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkZWVzLWFwcHVpLWFjdGl2aXR5bG9nIik7cmV0dXJuIHNldFRpbWVvdXQoKCk9PntlLmFkZE1hbnkoW3t0eXBlOiJsb2dpbiIsdXNlcjoiSm9obiBEb2UiLG1lc3NhZ2U6ImxvZ2dlZCBpbiBmcm9tIENocm9tZSBvbiBtYWNPUyJ9LHt0eXBlOiJjcmVhdGUiLHVzZXI6IkpvaG4gRG9lIixtZXNzYWdlOidjcmVhdGVkIGEgbmV3IHByb2plY3QgIkZyb250ZW5kIEFwcCInfSx7dHlwZToidXBkYXRlIix1c2VyOiJKYW5lIFNtaXRoIixtZXNzYWdlOiJ1cGRhdGVkIEFQSSBkb2N1bWVudGF0aW9uIn0se3R5cGU6InZpZXciLHVzZXI6IkpvaG4gRG9lIixtZXNzYWdlOiJ2aWV3ZWQgZGFzaGJvYXJkIGFuYWx5dGljcyJ9LHt0eXBlOiJkZWxldGUiLHVzZXI6IkFkbWluIixtZXNzYWdlOiJyZW1vdmVkIGRlcHJlY2F0ZWQgZW5kcG9pbnQifSx7dHlwZToiY3VzdG9tIix1c2VyOiJTeXN0ZW0iLG1lc3NhZ2U6InNjaGVkdWxlZCBiYWNrdXAgY29tcGxldGVkIixpY29uTmFtZToibHVjaWRlOmRhdGFiYXNlIn0se3R5cGU6ImxvZ291dCIsdXNlcjoiQWxpY2UgQnJvd24iLG1lc3NhZ2U6ImxvZ2dlZCBvdXQifSx7dHlwZToiY3JlYXRlIix1c2VyOiJKYW5lIFNtaXRoIixtZXNzYWdlOiJjcmVhdGVkIGludm9pY2UgIzEyMzQifV0pLGUuZW50cmllcyQuc3Vic2NyaWJlKHQ9Pntjb25zb2xlLmxvZygiQWN0aXZpdHkgbG9nIHVwZGF0ZWQ6Iix0Lmxlbmd0aCwiZW50cmllcyIpfSl9LDEwMCksU2AKICAgIDxkZWVzLWRlbW93cmFwcGVyPgogICAgICA8c3R5bGU+CiAgICAgICAgLmRlbW8tY29udGFpbmVyIHsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgICBoZWlnaHQ6IDYwMHB4OwogICAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmNGY0ZjUiLCIjMDkwOTBiIil9OwogICAgICAgICAgcGFkZGluZzogMzJweDsKICAgICAgICB9CiAgICAgIDwvc3R5bGU+CiAgICAgIDxkaXYgY2xhc3M9ImRlbW8tY29udGFpbmVyIj4KICAgICAgICAke2V9CiAgICAgIDwvZGl2PgogICAgPC9kZWVzLWRlbW93cmFwcGVyPgogIGB9fSk7dmFyIHdsZSx2OCxRQXIsUGx0PWwoKCk9PntTZSgpO2VyKCk7YmkoKTticigpO1hBcigpO290KCk7d2xlPWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sdjg9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LFFBcj0oKCk9PntsZXQgZT1bemUoImRlZXMtYXBwdWktYWN0aXZpdHlsb2ciKV0sdCxyPVtdLGEsaT1EZSxvLG49W10scz1bXSxjLGQ9W10sZj1bXSx1LHA9W10saD1bXTt2YXIgYj1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IHg9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1bcmUoKV0sYz1bcmUoKV0sdT1bcmUoKV0sd2xlKHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZW50cmllcyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Zz0+ImVudHJpZXMiaW4gZyxnZXQ6Zz0+Zy5lbnRyaWVzLHNldDooZyx2KT0+e2cuZW50cmllcz12fX0sbWV0YWRhdGE6eH0sbixzKSx3bGUodGhpcyxudWxsLGMse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzZWFyY2hRdWVyeSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Zz0+InNlYXJjaFF1ZXJ5ImluIGcsZ2V0Omc9Pmcuc2VhcmNoUXVlcnksc2V0OihnLHYpPT57Zy5zZWFyY2hRdWVyeT12fX0sbWV0YWRhdGE6eH0sZCxmKSx3bGUodGhpcyxudWxsLHUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJmaWx0ZXJDcml0ZXJpYSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Zz0+ImZpbHRlckNyaXRlcmlhImluIGcsZ2V0Omc9PmcuZmlsdGVyQ3JpdGVyaWEsc2V0OihnLHYpPT57Zy5maWx0ZXJDcml0ZXJpYT12fX0sbWV0YWRhdGE6eH0scCxoKSx3bGUobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6eH0sbnVsbCxyKSxiPWE9dC52YWx1ZSx4JiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnh9KX1zdGF0aWMgZGVtbz1aQXI7c3RhdGljIGRlbW9Hcm91cHM9WyJBcHAgVUkiXTsjZT12OCh0aGlzLG4sW10pO2dldCBlbnRyaWVzKCl7cmV0dXJuIHRoaXMuI2V9c2V0IGVudHJpZXMoeCl7dGhpcy4jZT14fSN0PSh2OCh0aGlzLHMpLHY4KHRoaXMsZCwiIikpO2dldCBzZWFyY2hRdWVyeSgpe3JldHVybiB0aGlzLiN0fXNldCBzZWFyY2hRdWVyeSh4KXt0aGlzLiN0PXh9I3I9KHY4KHRoaXMsZiksdjgodGhpcyxwLHt9KSk7Z2V0IGZpbHRlckNyaXRlcmlhKCl7cmV0dXJuIHRoaXMuI3J9c2V0IGZpbHRlckNyaXRlcmlhKHgpe3RoaXMuI3I9eH1lbnRyaWVzJD0odjgodGhpcyxoKSxuZXcgSnQuc21hcnRyeC5yeGpzLlN1YmplY3QpO3N0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgOmhvc3QgewogICAgICAgIC8qIENTUyBWYXJpYWJsZXMgYWxpZ25lZCB3aXRoIHNlY29uZGFyeSBtZW51ICovCiAgICAgICAgLS1hY3Rpdml0eWxvZy1iZzogJHttLmJkVGhlbWUoIiNmYWZhZmEiLCIjMGEwYTBhIil9OwogICAgICAgIC0tYWN0aXZpdHlsb2ctZmc6ICR7bS5iZFRoZW1lKCIjNTI1MjUyIiwiI2EzYTNhMyIpfTsKICAgICAgICAtLWFjdGl2aXR5bG9nLWZnLW11dGVkOiAke20uYmRUaGVtZSgiIzczNzM3MyIsIiM3MzczNzMiKX07CiAgICAgICAgLS1hY3Rpdml0eWxvZy1mZy1hY3RpdmU6ICR7bS5iZFRoZW1lKCIjMGEwYTBhIiwiI2ZhZmFmYSIpfTsKICAgICAgICAtLWFjdGl2aXR5bG9nLWJvcmRlcjogJHttLmJkVGhlbWUoIiNlNWU1ZTUiLCIjMWExYTFhIil9OwogICAgICAgIC0tYWN0aXZpdHlsb2ctaG92ZXI6ICR7bS5iZFRoZW1lKCJyZ2JhKDAsIDAsIDAsIDAuMDQpIiwicmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA2KSIpfTsKICAgICAgICAtLWFjdGl2aXR5bG9nLWFjY2VudDogJHttLmJkVGhlbWUoIiM3ODcxNmMiLCIjYjVhOTlhIil9OwoKICAgICAgICBjb2xvcjogdmFyKC0tYWN0aXZpdHlsb2ctZmcpOwogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYWN0aXZpdHlsb2ctYmcpOwogICAgICAgIGZvbnQtZmFtaWx5OiAnR2Vpc3QgU2FucycsIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgc2Fucy1zZXJpZjsKICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWFjdGl2aXR5bG9nLWJvcmRlcik7CiAgICAgICAgY3Vyc29yOiBkZWZhdWx0OwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgIH0KCiAgICAgIC5tYWluY29udGFpbmVyIHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgdG9wOiAwcHg7CiAgICAgICAgbGVmdDogMHB4OwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICB3aWR0aDogMjgwcHg7CiAgICAgIH0KCiAgICAgIC8qIEhlYWRlciB3aXRoIHN0cmVhbWluZyBpbmRpY2F0b3IgKi8KICAgICAgLnRvcGJhciB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHRvcDogMHB4OwogICAgICAgIGhlaWdodDogNDhweDsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBwYWRkaW5nOiAwcHggMTJweDsKICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1hY3Rpdml0eWxvZy1iZyk7CiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWFjdGl2aXR5bG9nLWJvcmRlcik7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgICB9CgogICAgICAudG9wYmFyIC5oZWFkaW5nIHsKICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBjb2xvcjogdmFyKC0tYWN0aXZpdHlsb2ctZmctYWN0aXZlKTsKICAgICAgfQoKICAgICAgLmxpdmUtaW5kaWNhdG9yIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgZ2FwOiA2cHg7CiAgICAgICAgZm9udC1zaXplOiAxMHB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsKICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wNWVtOwogICAgICAgIGNvbG9yOiB2YXIoLS1hY3Rpdml0eWxvZy1mZy1tdXRlZCk7CiAgICAgIH0KCiAgICAgIC5saXZlLWluZGljYXRvciAuZG90IHsKICAgICAgICB3aWR0aDogNnB4OwogICAgICAgIGhlaWdodDogNnB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjMjJjNTVlIiwiIzIyYzU1ZSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICAgICAgYW5pbWF0aW9uOiBwdWxzZSAycyBlYXNlLWluLW91dCBpbmZpbml0ZTsKICAgICAgfQoKICAgICAgQGtleWZyYW1lcyBwdWxzZSB7CiAgICAgICAgMCUsIDEwMCUgeyBvcGFjaXR5OiAwLjU7IHRyYW5zZm9ybTogc2NhbGUoMC45KTsgfQogICAgICAgIDUwJSB7IG9wYWNpdHk6IDE7IHRyYW5zZm9ybTogc2NhbGUoMS4xKTsgfQogICAgICB9CgogICAgICAvKiBBY3Rpdml0eSBjb250YWluZXIgKi8KICAgICAgLmFjdGl2aXR5Q29udGFpbmVyIHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgdG9wOiA0OHB4OwogICAgICAgIGJvdHRvbTogNDhweDsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBwYWRkaW5nOiA4cHggMDsKICAgICAgICBvdmVyZmxvdy15OiBhdXRvOwogICAgICAgIG92ZXJzY3JvbGwtYmVoYXZpb3I6IGNvbnRhaW47CiAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiB0aGluOwogICAgICAgIHNjcm9sbGJhci1jb2xvcjogJHttLmJkVGhlbWUoIiNkNGQ0ZDQiLCIjMzMzMzMzIil9IHRyYW5zcGFyZW50OwogICAgICB9CgogICAgICAuYWN0aXZpdHlDb250YWluZXI6Oi13ZWJraXQtc2Nyb2xsYmFyIHsKICAgICAgICB3aWR0aDogNnB4OwogICAgICB9CgogICAgICAuYWN0aXZpdHlDb250YWluZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgfQoKICAgICAgLmFjdGl2aXR5Q29udGFpbmVyOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNkNGQ0ZDQiLCIjMzMzMzMzIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDsKICAgICAgfQoKICAgICAgLmFjdGl2aXR5Q29udGFpbmVyOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNhM2EzYTMiLCIjNTI1MjUyIil9OwogICAgICB9CgogICAgICAuZW1wdHktc3RhdGUgewogICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgcGFkZGluZzogNDBweCAxNnB4OwogICAgICAgIGNvbG9yOiB2YXIoLS1hY3Rpdml0eWxvZy1mZy1tdXRlZCk7CiAgICAgIH0KCiAgICAgIC8qIERhdGUgc2VwYXJhdG9yIC0gd2FybSB0YXVwZSBzdHlsaW5nICovCiAgICAgIC5kYXRlLXNlcGFyYXRvciB7CiAgICAgICAgcGFkZGluZzogMTJweCAxMnB4IDZweDsKICAgICAgICBmb250LXNpemU6IDEwcHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwogICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDsKICAgICAgICBjb2xvcjogdmFyKC0tYWN0aXZpdHlsb2ctYWNjZW50KTsKICAgICAgICBwb3NpdGlvbjogc3RpY2t5OwogICAgICAgIHRvcDogMDsKICAgICAgICB6LWluZGV4OiAxOwogICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWFjdGl2aXR5bG9nLWJnKTsKICAgICAgfQoKICAgICAgLyogQWN0aXZpdHkgZW50cnkgLSBtb2Rlcm4gc3RhY2tlZCBsYXlvdXQgKi8KICAgICAgLmFjdGl2aXR5ZW50cnkgewogICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICBwYWRkaW5nOiA4cHggMTJweDsKICAgICAgICBtYXJnaW46IDJweCA0cHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xNXMgZWFzZTsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OwogICAgICAgIGdhcDogMTBweDsKICAgICAgICBsaW5lLWhlaWdodDogMS40OwogICAgICAgIGFuaW1hdGlvbjogZmFkZUluIDAuMnMgZWFzZS1vdXQ7CiAgICAgIH0KCiAgICAgIEBrZXlmcmFtZXMgZmFkZUluIHsKICAgICAgICBmcm9tIHsKICAgICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7CiAgICAgICAgfQogICAgICAgIHRvIHsKICAgICAgICAgIG9wYWNpdHk6IDE7CiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgICAgICAgfQogICAgICB9CgogICAgICAuYWN0aXZpdHllbnRyeTpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYWN0aXZpdHlsb2ctaG92ZXIpOwogICAgICB9CgogICAgICAuYWN0aXZpdHktaWNvbiB7CiAgICAgICAgd2lkdGg6IDI4cHg7CiAgICAgICAgaGVpZ2h0OiAyOHB4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgicmdiYSgwLCAwLCAwLCAwLjA0KSIsInJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNikiKX07CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICBjb2xvcjogdmFyKC0tYWN0aXZpdHlsb2ctZmctbXV0ZWQpOwogICAgICAgIG1hcmdpbi10b3A6IDFweDsKICAgICAgfQoKICAgICAgLmFjdGl2aXR5LWljb24ubG9naW4gewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDM0LCAxOTcsIDk0LCAwLjA4KSIsInJnYmEoMzQsIDE5NywgOTQsIDAuMTIpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzE2YTM0YSIsIiM0YWRlODAiKX07CiAgICAgIH0KCiAgICAgIC5hY3Rpdml0eS1pY29uLmxvZ291dCB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoMjM5LCA2OCwgNjgsIDAuMDgpIiwicmdiYSgyMzksIDY4LCA2OCwgMC4xMikiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjZGMyNjI2IiwiI2Y4NzE3MSIpfTsKICAgICAgfQoKICAgICAgLmFjdGl2aXR5LWljb24udmlldyB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoNTksIDEzMCwgMjQ2LCAwLjA4KSIsInJnYmEoNTksIDEzMCwgMjQ2LCAwLjEyKSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMyNTYzZWIiLCIjNjBhNWZhIil9OwogICAgICB9CgogICAgICAuYWN0aXZpdHktaWNvbi5jcmVhdGUgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDE2OCwgODUsIDI0NywgMC4wOCkiLCJyZ2JhKDE2OCwgODUsIDI0NywgMC4xMikiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjOTMzM2VhIiwiI2MwODRmYyIpfTsKICAgICAgfQoKICAgICAgLmFjdGl2aXR5LWljb24udXBkYXRlIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgicmdiYSgyNTEsIDE0NiwgNjAsIDAuMDgpIiwicmdiYSgyNTEsIDE0NiwgNjAsIDAuMTIpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiI2VhNTgwYyIsIiNmYjkyM2MiKX07CiAgICAgIH0KCiAgICAgIC5hY3Rpdml0eS1pY29uLmRlbGV0ZSB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoMjM5LCA2OCwgNjgsIDAuMDgpIiwicmdiYSgyMzksIDY4LCA2OCwgMC4xMikiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjZGMyNjI2IiwiI2Y4NzE3MSIpfTsKICAgICAgfQoKICAgICAgLmFjdGl2aXR5LWljb24uY3VzdG9tIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgicmdiYSgxMDAsIDExNiwgMTM5LCAwLjA4KSIsInJnYmEoMTAwLCAxMTYsIDEzOSwgMC4xMikiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNDc1NTY5IiwiIzk0YTNiOCIpfTsKICAgICAgfQoKICAgICAgLmFjdGl2aXR5LWNvbnRlbnQgewogICAgICAgIGZsZXg6IDE7CiAgICAgICAgbWluLXdpZHRoOiAwOwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBnYXA6IDJweDsKICAgICAgfQoKICAgICAgLmFjdGl2aXR5LWhlYWRlciB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogNnB4OwogICAgICB9CgogICAgICAuYWN0aXZpdHktdXNlciB7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgY29sb3I6IHZhcigtLWFjdGl2aXR5bG9nLWZnLWFjdGl2ZSk7CiAgICAgIH0KCiAgICAgIC5hY3Rpdml0eS1zZXBhcmF0b3IgewogICAgICAgIGNvbG9yOiB2YXIoLS1hY3Rpdml0eWxvZy1mZy1tdXRlZCk7CiAgICAgICAgZm9udC1zaXplOiAxMHB4OwogICAgICB9CgogICAgICAudGltZXN0YW1wIHsKICAgICAgICBjb2xvcjogdmFyKC0tYWN0aXZpdHlsb2ctZmctbXV0ZWQpOwogICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7CiAgICAgICAgZm9udC1zaXplOiAxMXB4OwogICAgICAgIGZvbnQtdmFyaWFudC1udW1lcmljOiB0YWJ1bGFyLW51bXM7CiAgICAgICAgZm9udC1mYW1pbHk6ICdHZWlzdCBNb25vJywgbW9ub3NwYWNlOwogICAgICB9CgogICAgICAuYWN0aXZpdHktbWVzc2FnZSB7CiAgICAgICAgY29sb3I6IHZhcigtLWFjdGl2aXR5bG9nLWZnKTsKICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTsKICAgICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkOwogICAgICB9CgogICAgICAvKiBTZWFyY2ggYm94IC0gcmVmaW5lZCBzdHlsaW5nICovCiAgICAgIC5zZWFyY2hib3ggewogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICBib3R0b206IDBweDsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBoZWlnaHQ6IDQ4cHg7CiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYWN0aXZpdHlsb2ctYmcpOwogICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1hY3Rpdml0eWxvZy1ib3JkZXIpOwogICAgICAgIHBhZGRpbmc6IDhweCAxMnB4OwogICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgIH0KCiAgICAgIC5zZWFyY2gtd3JhcHBlciB7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGhlaWdodDogMzJweDsKICAgICAgfQoKICAgICAgLnNlYXJjaC1pY29uIHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgbGVmdDogMTBweDsKICAgICAgICB0b3A6IDUwJTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICAgICAgY29sb3I6IHZhcigtLWFjdGl2aXR5bG9nLWZnLW11dGVkKTsKICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZTsKICAgICAgfQoKICAgICAgLnNlYXJjaGJveCBpbnB1dCB7CiAgICAgICAgY29sb3I6IHZhcigtLWFjdGl2aXR5bG9nLWZnLWFjdGl2ZSk7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoMCwgMCwgMCwgMC4wMykiLCJyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDQpIil9OwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgicmdiYSgwLCAwLCAwLCAwLjA4KSIsInJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCkiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgIHBhZGRpbmc6IDAgMTJweCAwIDM0cHg7CiAgICAgICAgZm9udC1mYW1pbHk6ICdHZWlzdCBTYW5zJywgc2Fucy1zZXJpZjsKICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgIH0KCiAgICAgIC5zZWFyY2hib3ggaW5wdXQ6OnBsYWNlaG9sZGVyIHsKICAgICAgICBjb2xvcjogdmFyKC0tYWN0aXZpdHlsb2ctZmctbXV0ZWQpOwogICAgICB9CgogICAgICAuc2VhcmNoYm94IGlucHV0OmZvY3VzIHsKICAgICAgICBvdXRsaW5lOiBub25lOwogICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoInJnYmEoMCwgMCwgMCwgMC4xNSkiLCJyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIil9OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDAsIDAsIDAsIDAuMDIpIiwicmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA2KSIpfTsKICAgICAgfQoKICAgICAgLnNlYXJjaC13cmFwcGVyOmhhcyhpbnB1dDpmb2N1cykgLnNlYXJjaC1pY29uIHsKICAgICAgICBjb2xvcjogdmFyKC0tYWN0aXZpdHlsb2ctZmcpOwogICAgICB9CiAgICBgXTtyZW5kZXIoKXtsZXQgeD10aGlzLmdldEZpbHRlcmVkRW50cmllcygpLGc9dGhpcy5ncm91cEVudHJpZXNCeURhdGUoeCk7cmV0dXJuIFNgCiAgICAgICR7a2Euc3R5bGVzfQogICAgICA8c3R5bGU+PC9zdHlsZT4KICAgICAgPGRpdiBjbGFzcz0ibWFpbmNvbnRhaW5lciI+CiAgICAgICAgPGRpdiBjbGFzcz0idG9wYmFyIj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImhlYWRpbmciPkFjdGl2aXR5IExvZzwvZGl2PgogICAgICAgICAgJHt4Lmxlbmd0aD4wP1NgPGRpdiBjbGFzcz0ibGl2ZS1pbmRpY2F0b3IiPjxzcGFuIGNsYXNzPSJkb3QiPjwvc3Bhbj5MaXZlPC9kaXY+YDoiIn0KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJhY3Rpdml0eUNvbnRhaW5lciI+CiAgICAgICAgICAke3gubGVuZ3RoPT09MD9TYDxkaXYgY2xhc3M9ImVtcHR5LXN0YXRlIj5ObyBhY3Rpdml0eSBlbnRyaWVzPC9kaXY+YDpnLm1hcCh2PT5TYAogICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJkYXRlLXNlcGFyYXRvciI+JHt2LmxhYmVsfTwvZGl2PgogICAgICAgICAgICAgICAgICAke3YuZW50cmllcy5tYXAodz0+dGhpcy5yZW5kZXJBY3Rpdml0eUVudHJ5KHcpKX0KICAgICAgICAgICAgICAgIGApfQogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InNlYXJjaGJveCI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtd3JhcHBlciI+CiAgICAgICAgICAgIDxkZWVzLWljb24gY2xhc3M9InNlYXJjaC1pY29uIiAuaWNvbj0keyJsdWNpZGU6c2VhcmNoIn0+PC9kZWVzLWljb24+CiAgICAgICAgICAgIDxpbnB1dAogICAgICAgICAgICAgIHR5cGU9InRleHQiCiAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9IlNlYXJjaCBhY3Rpdml0aWVzLCB1c2Vycy4uLiIKICAgICAgICAgICAgICAudmFsdWU9JHt0aGlzLnNlYXJjaFF1ZXJ5fQogICAgICAgICAgICAgIEBpbnB1dD0ke3RoaXMuaGFuZGxlU2VhcmNoSW5wdXR9CiAgICAgICAgICAgIC8+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICBgfXJlbmRlckFjdGl2aXR5RW50cnkoeCl7bGV0IGc9eC50aW1lc3RhbXB8fG5ldyBEYXRlLHY9dGhpcy5mb3JtYXRUaW1lKGcpLHc9eC5pY29uTmFtZXx8dGhpcy5nZXRJY29uRm9yVHlwZSh4LnR5cGUpO3JldHVybiBTYAogICAgICA8ZGl2CiAgICAgICAgY2xhc3M9ImFjdGl2aXR5ZW50cnkiCiAgICAgICAgQGNvbnRleHRtZW51PSR7TT0+dGhpcy5oYW5kbGVDb250ZXh0TWVudShNLHgpfQogICAgICA+CiAgICAgICAgPGRpdiBjbGFzcz0iYWN0aXZpdHktaWNvbiAke3gudHlwZX0iPgogICAgICAgICAgPGRlZXMtaWNvbiAuaWNvbj0ke3d9PjwvZGVlcy1pY29uPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImFjdGl2aXR5LWNvbnRlbnQiPgogICAgICAgICAgPGRpdiBjbGFzcz0iYWN0aXZpdHktaGVhZGVyIj4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFjdGl2aXR5LXVzZXIiPiR7eC51c2VyfTwvc3Bhbj4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImFjdGl2aXR5LXNlcGFyYXRvciI+wrc8L3NwYW4+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0aW1lc3RhbXAiPiR7dn08L3NwYW4+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImFjdGl2aXR5LW1lc3NhZ2UiPiR7eC5tZXNzYWdlfTwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIGB9YWRkKHgpe2xldCBnPXsuLi54LGlkOnguaWR8fHRoaXMuZ2VuZXJhdGVJZCgpLHRpbWVzdGFtcDp4LnRpbWVzdGFtcHx8bmV3IERhdGV9O3RoaXMuZW50cmllcz1bZywuLi50aGlzLmVudHJpZXNdLHRoaXMuZW50cmllcyQubmV4dCh0aGlzLmVudHJpZXMpfWFkZE1hbnkoeCl7bGV0IGc9eC5tYXAodj0+KHsuLi52LGlkOnYuaWR8fHRoaXMuZ2VuZXJhdGVJZCgpLHRpbWVzdGFtcDp2LnRpbWVzdGFtcHx8bmV3IERhdGV9KSk7dGhpcy5lbnRyaWVzPVsuLi5nLnJldmVyc2UoKSwuLi50aGlzLmVudHJpZXNdLHRoaXMuZW50cmllcyQubmV4dCh0aGlzLmVudHJpZXMpfWNsZWFyKCl7dGhpcy5lbnRyaWVzPVtdLHRoaXMuZW50cmllcyQubmV4dCh0aGlzLmVudHJpZXMpfWdldEVudHJpZXMoKXtyZXR1cm5bLi4udGhpcy5lbnRyaWVzXX1maWx0ZXIoeCl7cmV0dXJuIHRoaXMuZW50cmllcy5maWx0ZXIoZz0+ISh4LnVzZXImJmcudXNlciE9PXgudXNlcnx8eC50eXBlJiZnLnR5cGUhPT14LnR5cGUpKX1zZWFyY2goeCl7bGV0IGc9eC50b0xvd2VyQ2FzZSgpO3JldHVybiB0aGlzLmVudHJpZXMuZmlsdGVyKHY9PnYubWVzc2FnZS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKGcpfHx2LnVzZXIudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhnKSl9Z2VuZXJhdGVJZCgpe3JldHVybmBhY3Rpdml0eS0ke0RhdGUubm93KCl9LSR7TWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc3Vic3RyKDIsOSl9YH1nZXRGaWx0ZXJlZEVudHJpZXMoKXtsZXQgeD10aGlzLmVudHJpZXM7aWYodGhpcy5zZWFyY2hRdWVyeSl7bGV0IGc9dGhpcy5zZWFyY2hRdWVyeS50b0xvd2VyQ2FzZSgpO3g9eC5maWx0ZXIodj0+di5tZXNzYWdlLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoZyl8fHYudXNlci50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKGcpKX1yZXR1cm4odGhpcy5maWx0ZXJDcml0ZXJpYS51c2VyfHx0aGlzLmZpbHRlckNyaXRlcmlhLnR5cGUpJiYoeD14LmZpbHRlcihnPT4hKHRoaXMuZmlsdGVyQ3JpdGVyaWEudXNlciYmZy51c2VyIT09dGhpcy5maWx0ZXJDcml0ZXJpYS51c2VyfHx0aGlzLmZpbHRlckNyaXRlcmlhLnR5cGUmJmcudHlwZSE9PXRoaXMuZmlsdGVyQ3JpdGVyaWEudHlwZSkpKSx4fWdyb3VwRW50cmllc0J5RGF0ZSh4KXtsZXQgZz1uZXcgTWFwLHY9bmV3IERhdGUsdz1uZXcgRGF0ZSh2KTt3LnNldERhdGUody5nZXREYXRlKCktMSk7Zm9yKGxldCBNIG9mIHgpe2xldCBGPU0udGltZXN0YW1wfHxuZXcgRGF0ZSxDO3RoaXMuaXNTYW1lRGF5KEYsdik/Qz0iVG9kYXkiOnRoaXMuaXNTYW1lRGF5KEYsdyk/Qz0iWWVzdGVyZGF5IjpDPUYudG9Mb2NhbGVEYXRlU3RyaW5nKCJlbi1VUyIse21vbnRoOiJzaG9ydCIsZGF5OiJudW1lcmljIix5ZWFyOkYuZ2V0RnVsbFllYXIoKSE9PXYuZ2V0RnVsbFllYXIoKT8ibnVtZXJpYyI6dm9pZCAwfSksZy5oYXMoQyl8fGcuc2V0KEMsW10pLGcuZ2V0KEMpLnB1c2goTSl9cmV0dXJuIEFycmF5LmZyb20oZy5lbnRyaWVzKCkpLm1hcCgoW00sRl0pPT4oe2xhYmVsOk0sZW50cmllczpGfSkpfWlzU2FtZURheSh4LGcpe3JldHVybiB4LmdldEZ1bGxZZWFyKCk9PT1nLmdldEZ1bGxZZWFyKCkmJnguZ2V0TW9udGgoKT09PWcuZ2V0TW9udGgoKSYmeC5nZXREYXRlKCk9PT1nLmdldERhdGUoKX1mb3JtYXRUaW1lKHgpe3JldHVybiB4LnRvTG9jYWxlVGltZVN0cmluZygiZW4tVVMiLHtob3VyOiIyLWRpZ2l0IixtaW51dGU6IjItZGlnaXQiLGhvdXIxMjohMX0pfWdldEljb25Gb3JUeXBlKHgpe2xldCBnPXtsb2dpbjoibHVjaWRlOmxvZ0luIixsb2dvdXQ6Imx1Y2lkZTpsb2dPdXQiLHZpZXc6Imx1Y2lkZTpleWUiLGNyZWF0ZToibHVjaWRlOnBsdXMiLHVwZGF0ZToibHVjaWRlOmVkaXQiLGRlbGV0ZToibHVjaWRlOnRyYXNoMiIsY3VzdG9tOiJsdWNpZGU6YWN0aXZpdHkifTtyZXR1cm4gZ1t4XXx8Zy5jdXN0b219aGFuZGxlU2VhcmNoSW5wdXQoeCl7bGV0IGc9eC50YXJnZXQ7dGhpcy5zZWFyY2hRdWVyeT1nLnZhbHVlfWhhbmRsZUNvbnRleHRNZW51KHgsZyl7eC5wcmV2ZW50RGVmYXVsdCgpLHRyLm9wZW5Db250ZXh0TWVudVdpdGhPcHRpb25zKHgsW3tuYW1lOiJDb3B5IGFjdGl2aXR5IixpY29uTmFtZToibHVjaWRlOmNvcHkiLGFjdGlvbjphc3luYygpPT57YXdhaXQgbmF2aWdhdG9yLmNsaXBib2FyZC53cml0ZVRleHQoYCR7Zy51c2VyfSAke2cubWVzc2FnZX1gKX19LHtuYW1lOiJGaWx0ZXIgYnkgdXNlciIsaWNvbk5hbWU6Imx1Y2lkZTp1c2VyIixhY3Rpb246YXN5bmMoKT0+e3RoaXMuZmlsdGVyQ3JpdGVyaWE9e3VzZXI6Zy51c2VyfX19LHtuYW1lOiJGaWx0ZXIgYnkgdHlwZSIsaWNvbk5hbWU6Imx1Y2lkZTpmaWx0ZXIiLGFjdGlvbjphc3luYygpPT57dGhpcy5maWx0ZXJDcml0ZXJpYT17dHlwZTpnLnR5cGV9fX0se25hbWU6IkNsZWFyIGZpbHRlcnMiLGljb25OYW1lOiJsdWNpZGU6eCIsYWN0aW9uOmFzeW5jKCk9Pnt0aGlzLmZpbHRlckNyaXRlcmlhPXt9LHRoaXMuc2VhcmNoUXVlcnk9IiJ9fV0pfXN0YXRpY3t2OChhLHIpfX07cmV0dXJuIGI9YX0pKCl9KTt2YXIgS0FyPWwoKCk9PntQbHQoKX0pO3ZhciBKQXI9bCgoKT0+e30pO3ZhciBlRXI9bCgoKT0+e09pKCl9KTt2YXIgdEVyPWwoKCk9Pnt9KTt2YXIgckVyPWwoKCk9Pnt9KTt2YXIgYUVyPWwoKCk9Pnt9KTt2YXIgaTM9bCgoKT0+e0pBcigpO2VFcigpO3RFcigpO3JFcigpO2FFcigpfSk7dmFyIGlFcixvRXI9bCgoKT0+e1NlKCk7emEoKTtJbHQoKTtpRXI9KCk9PntsZXQgZT1be25hbWU6IkZpbGUiLGFjdGlvbjphc3luYygpPT57fSxzdWJtZW51Olt7bmFtZToiTmV3IEZpbGUiLHNob3J0Y3V0OiJDbWQrTiIsaWNvbk5hbWU6ImZpbGUtcGx1cyIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJOZXcgZmlsZSIpfSx7bmFtZToiT3Blbi4uLiIsc2hvcnRjdXQ6IkNtZCtPIixpY29uTmFtZToiZm9sZGVyLW9wZW4iLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiT3BlbiIpfSx7bmFtZToiT3BlbiBSZWNlbnQiLGFjdGlvbjphc3luYygpPT57fSxzdWJtZW51Olt7bmFtZToicHJvamVjdC1hbHBoYS50cyIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJPcGVuIHJlY2VudCAxIil9LHtuYW1lOiJjb25maWcuanNvbiIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJPcGVuIHJlY2VudCAyIil9LHtuYW1lOiJyZWFkbWUubWQiLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiT3BlbiByZWNlbnQgMyIpfV19LHtkaXZpZGVyOiEwfSx7bmFtZToiU2F2ZSIsc2hvcnRjdXQ6IkNtZCtTIixpY29uTmFtZToic2F2ZSIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJTYXZlIil9LHtuYW1lOiJTYXZlIEFzLi4uIixzaG9ydGN1dDoiQ21kK1NoaWZ0K1MiLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiU2F2ZSBhcyIpLGRpc2FibGVkOiEwfSx7ZGl2aWRlcjohMH0se25hbWU6IkV4aXQiLHNob3J0Y3V0OiJDbWQrUSIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJFeGl0Iil9XX0se25hbWU6IkVkaXQiLGFjdGlvbjphc3luYygpPT57fSxzdWJtZW51Olt7bmFtZToiVW5kbyIsc2hvcnRjdXQ6IkNtZCtaIixpY29uTmFtZToidW5kbyIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJVbmRvIil9LHtuYW1lOiJSZWRvIixzaG9ydGN1dDoiQ21kK1NoaWZ0K1oiLGljb25OYW1lOiJyZWRvIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIlJlZG8iKX0se2RpdmlkZXI6ITB9LHtuYW1lOiJDdXQiLHNob3J0Y3V0OiJDbWQrWCIsaWNvbk5hbWU6InNjaXNzb3JzIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIkN1dCIpfSx7bmFtZToiQ29weSIsc2hvcnRjdXQ6IkNtZCtDIixpY29uTmFtZToiY29weSIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJDb3B5Iil9LHtuYW1lOiJQYXN0ZSIsc2hvcnRjdXQ6IkNtZCtWIixpY29uTmFtZToiY2xpcGJvYXJkIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIlBhc3RlIil9LHtkaXZpZGVyOiEwfSx7bmFtZToiRmluZCIsc2hvcnRjdXQ6IkNtZCtGIixpY29uTmFtZToic2VhcmNoIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIkZpbmQiKX0se25hbWU6IlJlcGxhY2UiLHNob3J0Y3V0OiJDbWQrSCIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJSZXBsYWNlIil9XX0se25hbWU6IlZpZXciLGFjdGlvbjphc3luYygpPT57fSxzdWJtZW51Olt7bmFtZToiVG9nZ2xlIEZ1bGxzY3JlZW4iLHNob3J0Y3V0OiJGMTEiLGljb25OYW1lOiJleHBhbmQiLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiRnVsbHNjcmVlbiIpfSx7bmFtZToiWm9vbSBJbiIsc2hvcnRjdXQ6IkNtZCsrIixpY29uTmFtZToiem9vbS1pbiIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJab29tIGluIil9LHtuYW1lOiJab29tIE91dCIsc2hvcnRjdXQ6IkNtZCstIixpY29uTmFtZToiem9vbS1vdXQiLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiWm9vbSBvdXQiKX0se25hbWU6IlJlc2V0IFpvb20iLHNob3J0Y3V0OiJDbWQrMCIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJSZXNldCB6b29tIil9LHtkaXZpZGVyOiEwfSx7bmFtZToiVG9nZ2xlIFNpZGViYXIiLHNob3J0Y3V0OiJDbWQrQiIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJUb2dnbGUgc2lkZWJhciIpfSx7bmFtZToiVG9nZ2xlIFRlcm1pbmFsIixzaG9ydGN1dDoiQ21kK0oiLGljb25OYW1lOiJ0ZXJtaW5hbCIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJUb2dnbGUgdGVybWluYWwiKX1dfSx7bmFtZToiSGVscCIsYWN0aW9uOmFzeW5jKCk9Pnt9LHN1Ym1lbnU6W3tuYW1lOiJEb2N1bWVudGF0aW9uIixpY29uTmFtZToiYm9vayIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJEb2N1bWVudGF0aW9uIil9LHtuYW1lOiJSZWxlYXNlIE5vdGVzIixpY29uTmFtZToiZmlsZS10ZXh0IixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIlJlbGVhc2Ugbm90ZXMiKX0se2RpdmlkZXI6ITB9LHtuYW1lOiJSZXBvcnQgSXNzdWUiLGljb25OYW1lOiJidWciLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiUmVwb3J0IGlzc3VlIil9LHtuYW1lOiJBYm91dCIsaWNvbk5hbWU6ImluZm8iLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiQWJvdXQiKX1dfV07cmV0dXJuIFNgCiAgICA8ZGVlcy1kZW1vd3JhcHBlciAucnVuQWZ0ZXJSZW5kZXI9JHthc3luYyB0PT57bGV0IHI9dC5xdWVyeVNlbGVjdG9yKCIjYXBwYmFyIiksYT10LnF1ZXJ5U2VsZWN0b3JBbGwoIi5zdGF0dXMtdG9nZ2xlIGRlZXMtYnV0dG9uIik7YVswXS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKCk9PntyLnVzZXI9ey4uLnIudXNlcixzdGF0dXM6Im9ubGluZSJ9fSksYVsxXS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKCk9PntyLnVzZXI9ey4uLnIudXNlcixzdGF0dXM6ImJ1c3kifX0pLGFbMl0uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCgpPT57ci51c2VyPXsuLi5yLnVzZXIsc3RhdHVzOiJhd2F5In19KSxhWzNdLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwoKT0+e3IudXNlcj17Li4uci51c2VyLHN0YXR1czoib2ZmbGluZSJ9fSksdC5xdWVyeVNlbGVjdG9yKCIud2luZG93LWNvbnRyb2xzLXRvZ2dsZSBkZWVzLWJ1dHRvbiIpLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwoKT0+e3Iuc2hvd1dpbmRvd0NvbnRyb2xzPSFyLnNob3dXaW5kb3dDb250cm9sc30pO2xldCBvPXQucXVlcnlTZWxlY3RvckFsbCgiLmJyZWFkY3J1bWItdG9nZ2xlIGRlZXMtYnV0dG9uIik7b1swXS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKCk9PntyLmJyZWFkY3J1bWJzPSJIb21lID4gRG9jdW1lbnRzID4gUHJvamVjdHMgPiBNeUFwcCA+IHNyYyA+IGluZGV4LnRzIn0pLG9bMV0uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCgpPT57ci5icmVhZGNydW1icz0iRGFzaGJvYXJkIn0pfX0+CiAgICAgIDxzdHlsZT4KICAgICAgICAke2xlYAogICAgICAgIC5kZW1vLWNvbnRhaW5lciB7CiAgICAgICAgICBoZWlnaHQ6IDYwMHB4OwogICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgICBiYWNrZ3JvdW5kOiAjMWExYTFhOwogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5jb250ZW50IHsKICAgICAgICAgIGZsZXg6IDE7CiAgICAgICAgICBwYWRkaW5nOiAyMHB4OwogICAgICAgICAgY29sb3I6ICNjY2M7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5jb250cm9scyB7CiAgICAgICAgICBwYWRkaW5nOiAyMHB4OwogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGdhcDogMTZweDsKICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLmNvbnRyb2wtZ3JvdXAgewogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgICBnYXA6IDhweDsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLmNvbnRyb2wtZ3JvdXAgbGFiZWwgewogICAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgICAgY29sb3I6ICM4ODg7CiAgICAgICAgfQogICAgICBgfQogICAgPC9zdHlsZT4KICAgIAogICAgPGRpdiBjbGFzcz0iZGVtby1jb250YWluZXIiPgogICAgICA8ZGVlcy1hcHB1aS1hcHBiYXIKICAgICAgICBpZD0iYXBwYmFyIgogICAgICAgIC5tZW51SXRlbXM9JHtlfQogICAgICAgIC5icmVhZGNydW1icz0keyJQcm9qZWN0ID4gc3JjID4gY29tcG9uZW50cyA+IEFwcEJhci50cyJ9CiAgICAgICAgLmJyZWFkY3J1bWJTZXBhcmF0b3I9JHsiID4gIn0KICAgICAgICAuc2hvd1dpbmRvd0NvbnRyb2xzPSR7ITB9CiAgICAgICAgLnNob3dTZWFyY2g9JHshMH0KICAgICAgICAudGhlbWU9JHsiZGFyayJ9CiAgICAgICAgLnVzZXI9JHt7bmFtZToiSm9obiBEb2UiLHN0YXR1czoib25saW5lIn19CiAgICAgICAgQG1lbnUtc2VsZWN0PSR7dD0+Y29uc29sZS5sb2coIk1lbnUgc2VsZWN0ZWQ6Iix0LmRldGFpbC5pdGVtKX0KICAgICAgICBAYnJlYWRjcnVtYi1uYXZpZ2F0ZT0ke3Q9PmNvbnNvbGUubG9nKCJCcmVhZGNydW1iIGNsaWNrZWQ6Iix0LmRldGFpbCl9CiAgICAgICAgQHNlYXJjaC1jbGljaz0keygpPT5jb25zb2xlLmxvZygiU2VhcmNoIGNsaWNrZWQiKX0KICAgICAgICBAdXNlci1tZW51LW9wZW49JHsoKT0+Y29uc29sZS5sb2coIlVzZXIgbWVudSBjbGlja2VkIil9CiAgICAgID48L2RlZXMtYXBwdWktYXBwYmFyPgogICAgICAKICAgICAgPGRpdiBjbGFzcz0iY29udGVudCI+CiAgICAgICAgPGgyPkFwcCBCYXIgRGVtbzwvaDI+CiAgICAgICAgPHA+VGhpcyBkZW1vIHNob3dzIHZhcmlvdXMgZmVhdHVyZXMgb2YgdGhlIGFwcCBiYXIgY29tcG9uZW50OjwvcD4KICAgICAgICA8dWw+CiAgICAgICAgICA8bGk+RHluYW1pYyBtZW51IGl0ZW1zIHdpdGggaWNvbnMsIHNob3J0Y3V0cywgYW5kIHN1Ym1lbnVzPC9saT4KICAgICAgICAgIDxsaT5CcmVhZGNydW1iIG5hdmlnYXRpb248L2xpPgogICAgICAgICAgPGxpPlVzZXIgYWNjb3VudCBzZWN0aW9uIHdpdGggc3RhdHVzIGluZGljYXRvcjwvbGk+CiAgICAgICAgICA8bGk+U2VhcmNoIGljb248L2xpPgogICAgICAgICAgPGxpPldpbmRvdyBjb250cm9scyAocGxhdGZvcm0tc3BlY2lmaWMpPC9saT4KICAgICAgICAgIDxsaT5EYXJrL2xpZ2h0IHRoZW1lIHN1cHBvcnQ8L2xpPgogICAgICAgICAgPGxpPktleWJvYXJkIG5hdmlnYXRpb24gKFRhYiwgRW50ZXIsIEVzY2FwZSk8L2xpPgogICAgICAgICAgPGxpPkN1c3RvbSBldmVudHMgZm9yIGFsbCBpbnRlcmFjdGlvbnM8L2xpPgogICAgICAgIDwvdWw+CiAgICAgIDwvZGl2PgogICAgICAKICAgICAgPGRpdiBjbGFzcz0iY29udHJvbHMiPgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRyb2wtZ3JvdXAiPgogICAgICAgICAgPGxhYmVsPlRoZW1lPC9sYWJlbD4KICAgICAgICAgIDxkZWVzLWJ1dHRvbi1ncm91cCBjbGFzcz0idGhlbWUtdG9nZ2xlIj4KICAgICAgICAgICAgPGRlZXMtYnV0dG9uPkRhcms8L2RlZXMtYnV0dG9uPgogICAgICAgICAgICA8ZGVlcy1idXR0b24+TGlnaHQ8L2RlZXMtYnV0dG9uPgogICAgICAgICAgPC9kZWVzLWJ1dHRvbi1ncm91cD4KICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJjb250cm9sLWdyb3VwIj4KICAgICAgICAgIDxsYWJlbD5Vc2VyIFN0YXR1czwvbGFiZWw+CiAgICAgICAgICA8ZGVlcy1idXR0b24tZ3JvdXAgY2xhc3M9InN0YXR1cy10b2dnbGUiPgogICAgICAgICAgICA8ZGVlcy1idXR0b24+T25saW5lPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgICAgPGRlZXMtYnV0dG9uPkJ1c3k8L2RlZXMtYnV0dG9uPgogICAgICAgICAgICA8ZGVlcy1idXR0b24+QXdheTwvZGVlcy1idXR0b24+CiAgICAgICAgICAgIDxkZWVzLWJ1dHRvbj5PZmZsaW5lPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIDwvZGVlcy1idXR0b24tZ3JvdXA+CiAgICAgICAgPC9kaXY+CiAgICAgICAgCiAgICAgICAgPGRpdiBjbGFzcz0iY29udHJvbC1ncm91cCI+CiAgICAgICAgICA8bGFiZWw+V2luZG93IENvbnRyb2xzPC9sYWJlbD4KICAgICAgICAgIDxkZWVzLWJ1dHRvbi1ncm91cCBjbGFzcz0id2luZG93LWNvbnRyb2xzLXRvZ2dsZSI+CiAgICAgICAgICAgIDxkZWVzLWJ1dHRvbj5Ub2dnbGU8L2RlZXMtYnV0dG9uPgogICAgICAgICAgPC9kZWVzLWJ1dHRvbi1ncm91cD4KICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJjb250cm9sLWdyb3VwIj4KICAgICAgICAgIDxsYWJlbD5CcmVhZGNydW1iczwvbGFiZWw+CiAgICAgICAgICA8ZGVlcy1idXR0b24tZ3JvdXAgY2xhc3M9ImJyZWFkY3J1bWItdG9nZ2xlIj4KICAgICAgICAgICAgPGRlZXMtYnV0dG9uPkxvbmcgUGF0aDwvZGVlcy1idXR0b24+CiAgICAgICAgICAgIDxkZWVzLWJ1dHRvbj5TaG9ydCBQYXRoPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIDwvZGVlcy1idXR0b24tZ3JvdXA+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgICA8L2RlZXMtZGVtb3dyYXBwZXI+CiAgYH19KTt2YXIgbkVyLHNFcj1sKCgpPT57U2UoKTtuRXI9W20uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgOmhvc3QgewogICAgICAgIC8qIENTUyBWYXJpYWJsZXMgZm9yIHRoZW1pbmcgKi8KICAgICAgICAtLWFwcGJhci1oZWlnaHQ6IDQwcHg7CiAgICAgICAgLS1hcHBiYXItZm9udC1zaXplOiAxMnB4OwogICAgICAgIAogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBoZWlnaHQ6IHZhcigtLWFwcGJhci1oZWlnaHQpOwogICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2UwZTBlMCIsIiMyMDIwMjAiKX07CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmZmZmZmYiLCIjMDAwMDAwIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzAwMDAwMDgwIiwiI2ZmZmZmZjgwIil9OwogICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tYXBwYmFyLWZvbnQtc2l6ZSk7CiAgICAgICAgZGlzcGxheTogZ3JpZDsKICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMWZyIGF1dG87CiAgICAgICAgLXdlYmtpdC1hcHAtcmVnaW9uOiBkcmFnOwogICAgICAgIHVzZXItc2VsZWN0OiBub25lOwogICAgICB9CgogICAgICAubWVudXMgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDRweDsKICAgICAgICBwYWRkaW5nOiAwIDhweDsKICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7CiAgICAgIH0KCiAgICAgIC5tZW51SXRlbSB7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4OwogICAgICAgIHBhZGRpbmc6IDBweCAxMnB4OwogICAgICAgIG1hcmdpbjogOHB4IDBweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgLXdlYmtpdC1hcHAtcmVnaW9uOiBuby1kcmFnOwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7CiAgICAgICAgY3Vyc29yOiBkZWZhdWx0OwogICAgICAgIG91dGxpbmU6IG5vbmU7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogNHB4OwogICAgICB9CgogICAgICAvKiBPcHRpb25hbDogU3R5bGUgZm9yIG1lbnUgaXRlbXMgd2l0aCBpY29ucyAobm90IHR5cGljYWxseSB1c2VkIGZvciB0b3AtbGV2ZWwgaXRlbXMpICovCiAgICAgIC5tZW51SXRlbSBkZWVzLWljb24gewogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBvcGFjaXR5OiAwLjg7CiAgICAgIH0KCiAgICAgIC5tZW51SXRlbTpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiMwMDAwMDAxMCIsIiNmZmZmZmYyMCIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwMDAwMDAiLCIjZmZmZmZmIil9OwogICAgICB9CgogICAgICAubWVudUl0ZW0uYWN0aXZlIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiIzAwMDAwMDIwIiwiI2ZmZmZmZjMwIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzAwMDAwMCIsIiNmZmZmZmYiKX07CiAgICAgIH0KCiAgICAgIC5tZW51SXRlbVtkaXNhYmxlZF0gewogICAgICAgIG9wYWNpdHk6IDAuNTsKICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOwogICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgICB9CgogICAgICAubWVudUl0ZW06Zm9jdXMtdmlzaWJsZSB7CiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICR7bS5iZFRoZW1lKCIjMDAwMDAwODAiLCIjZmZmZmZmODAiKX07CiAgICAgIH0KCgogICAgICAvKiBEcm9wZG93biBzdHlsZXMgKi8KICAgICAgLmRyb3Bkb3duIHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgdG9wOiAxMDAlOwogICAgICAgIGxlZnQ6IDA7CiAgICAgICAgbWluLXdpZHRoOiAyMDBweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2ZmZmZmZiIsIiMwMDAwMDAiKX07CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlMGUwZTAiLCIjMjAyMDIwIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgICBib3gtc2hhZG93OiAke20uYmRUaGVtZSgiMCA0cHggMTJweCByZ2JhKDAsIDAsIDAsIDAuMTUpIiwiMCA0cHggMTJweCByZ2JhKDAsIDAsIDAsIDAuMykiKX07CiAgICAgICAgbWFyZ2luLXRvcDogNHB4OwogICAgICAgIHotaW5kZXg6IDEwMDA7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpOwogICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycywgdHJhbnNmb3JtIDAuMnM7CiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgICAgIH0KCiAgICAgIC5kcm9wZG93bi5vcGVuIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bzsKICAgICAgfQoKICAgICAgLmRyb3Bkb3duLWl0ZW0gewogICAgICAgIHBhZGRpbmc6IDhweCAxNnB4OwogICAgICAgIGN1cnNvcjogZGVmYXVsdDsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgZ2FwOiA4cHg7CiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjFzOwogICAgICB9CgogICAgICAuZHJvcGRvd24taXRlbTpob3ZlciwKICAgICAgLmRyb3Bkb3duLWl0ZW0uZm9jdXNlZCB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiMwMDAwMDAxMCIsIiNmZmZmZmYyMCIpfTsKICAgICAgfQoKICAgICAgLmRyb3Bkb3duLWRpdmlkZXIgewogICAgICAgIGhlaWdodDogMXB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZTBlMGUwIiwiIzIwMjAyMCIpfTsKICAgICAgICBtYXJnaW46IDRweCAwOwogICAgICB9CgogICAgICAuZHJvcGRvd24taXRlbVtkaXNhYmxlZF0gewogICAgICAgIG9wYWNpdHk6IDAuNTsKICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOwogICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgICB9CgogICAgICAuZHJvcGRvd24taXRlbSAuc2hvcnRjdXQgewogICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOwogICAgICAgIG9wYWNpdHk6IDAuNjsKICAgICAgICBmb250LXNpemU6IDExcHg7CiAgICAgIH0KCiAgICAgIC8qIEJyZWFkY3J1bWJzICovCiAgICAgIC5icmVhZGNydW1icyB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICBwYWRkaW5nOiAwIDE2cHg7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsKICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgICB9CgogICAgICAuYnJlYWRjcnVtYi1pdGVtIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwMDAwMDA4MCIsIiNmZmZmZmY4MCIpfTsKICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7CiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4yczsKICAgICAgfQoKICAgICAgLmJyZWFkY3J1bWItaXRlbTpob3ZlciB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMDAwMDAwIiwiI2ZmZmZmZiIpfTsKICAgICAgfQoKICAgICAgLmJyZWFkY3J1bWItc2VwYXJhdG9yIHsKICAgICAgICBtYXJnaW46IDAgOHB4OwogICAgICAgIG9wYWNpdHk6IDAuNTsKICAgICAgfQoKICAgICAgLyogQWNjb3VudCBzZWN0aW9uICovCiAgICAgIC5hY2NvdW50IHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsKICAgICAgICBwYWRkaW5nOiAwIDE2cHg7CiAgICAgICAgZ2FwOiAxMnB4OwogICAgICB9CgogICAgICAuc2VhcmNoLWljb24gewogICAgICAgIGN1cnNvcjogZGVmYXVsdDsKICAgICAgICBvcGFjaXR5OiAwLjc7CiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzOwogICAgICB9CgogICAgICAuc2VhcmNoLWljb246aG92ZXIgewogICAgICAgIG9wYWNpdHk6IDE7CiAgICAgIH0KCiAgICAgIC51c2VyLWluZm8gewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDhweDsKICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7CiAgICAgICAgcGFkZGluZzogNHB4IDhweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzOwogICAgICB9CgogICAgICAudXNlci1pbmZvOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiIzAwMDAwMDEwIiwiI2ZmZmZmZjIwIil9OwogICAgICB9CgogICAgICAudXNlci1hdmF0YXIgewogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICB3aWR0aDogMjRweDsKICAgICAgICBoZWlnaHQ6IDI0cHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjMDAwMDAwMjAiLCIjZmZmZmZmMzAiKX07CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIGZvbnQtc2l6ZTogMTBweDsKICAgICAgICBmb250LXdlaWdodDogYm9sZDsKICAgICAgfQoKICAgICAgLnVzZXItYXZhdGFyIGltZyB7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsKICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjsKICAgICAgfQoKICAgICAgLnVzZXItc3RhdHVzIHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgYm90dG9tOiAtMnB4OwogICAgICAgIHJpZ2h0OiAtMnB4OwogICAgICAgIHdpZHRoOiA4cHg7CiAgICAgICAgaGVpZ2h0OiA4cHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZmZmZmZmIiwiIzAwMDAwMCIpfTsKICAgICAgfQoKICAgICAgLnVzZXItc3RhdHVzLm9ubGluZSB7CiAgICAgICAgYmFja2dyb3VuZDogIzRjYWY1MDsKICAgICAgfQoKICAgICAgLnVzZXItc3RhdHVzLm9mZmxpbmUgewogICAgICAgIGJhY2tncm91bmQ6ICM3NTc1NzU7CiAgICAgIH0KCiAgICAgIC51c2VyLXN0YXR1cy5idXN5IHsKICAgICAgICBiYWNrZ3JvdW5kOiAjZjQ0MzM2OwogICAgICB9CgogICAgICAudXNlci1zdGF0dXMuYXdheSB7CiAgICAgICAgYmFja2dyb3VuZDogI2ZmOTgwMDsKICAgICAgfQoKICAgICAgLyogQWN0aXZpdHkgbG9nIHRvZ2dsZSBidXR0b24gKi8KICAgICAgLmFjdGl2aXR5LXRvZ2dsZSB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogMnB4OwogICAgICAgIGhlaWdodDogMjhweDsKICAgICAgICBwYWRkaW5nOiAwIDhweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgY3Vyc29yOiBkZWZhdWx0OwogICAgICAgIC13ZWJraXQtYXBwLXJlZ2lvbjogbm8tZHJhZzsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwMDAwMDA2MCIsIiNmZmZmZmY2MCIpfTsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgicmdiYSgwLCAwLCAwLCAwLjEpIiwicmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpIil9OwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICB9CgogICAgICAuYWN0aXZpdHktdG9nZ2xlOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiIzAwMDAwMDEwIiwiI2ZmZmZmZjE1Iil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzAwMDAwMCIsIiNmZmZmZmYiKX07CiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsKICAgICAgfQoKICAgICAgLmFjdGl2aXR5LXRvZ2dsZS5hY3RpdmUgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjMDAwMDAwMTUiLCIjZmZmZmZmMjAiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMDAwMDAwIiwiI2ZmZmZmZiIpfTsKICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OwogICAgICB9CgogICAgICAuYWN0aXZpdHktdG9nZ2xlIGRlZXMtaWNvbiB7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICB9CgogICAgICAuYWN0aXZpdHktYmFkZ2UgewogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICBtYXJnaW4tbGVmdDogNHB4OwogICAgICAgIG1pbi13aWR0aDogMTZweDsKICAgICAgICBoZWlnaHQ6IDE2cHg7CiAgICAgICAgcGFkZGluZzogMCA0cHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiM1MjUyNTIiLCIjNTI1MjUyIil9OwogICAgICAgIGNvbG9yOiAjZmFmYWZhOwogICAgICAgIGZvbnQtc2l6ZTogMTBweDsKICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgbGluZS1oZWlnaHQ6IDE7CiAgICAgIH0KICAgIGBdfSk7dmFyIGxFcixjRXI9bCgoKT0+e1NlKCk7bEVyPWU9PlNgCiAgICAgICAgPGRpdiBjbGFzcz0ibWVudXMiPgogICAgICAgICAgJHtlLnNob3dXaW5kb3dDb250cm9scz9TYDxkZWVzLXdpbmRvd2NvbnRyb2xzPjwvZGVlcy13aW5kb3djb250cm9scz5gOiIifQogICAgICAgICAgJHtlLnJlbmRlck1lbnVJdGVtcygpfQogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImJyZWFkY3J1bWJzIj4KICAgICAgICAgICR7ZS5yZW5kZXJCcmVhZGNydW1icygpfQogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImFjY291bnQiPgogICAgICAgICAgJHtlLnJlbmRlckFjY291bnRTZWN0aW9uKCl9CiAgICAgICAgPC9kaXY+CiAgICAgIGB9KTt2YXIgTmx0LHNaLGRFcixGbHQ9bCgoKT0+e1NlKCk7b3QoKTtObHQ9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxzWj1mdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MixpPTA7aTx0Lmxlbmd0aDtpKyspcj1hP3RbaV0uY2FsbChlLHIpOnRbaV0uY2FsbChlKTtyZXR1cm4gYT9yOnZvaWQgMH0sZEVyPSgoKT0+e2xldCBlPVt6ZSgiZGVlcy13aW5kb3djb250cm9scyIpXSx0LHI9W10sYSxpPURlLG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdO3ZhciB1PWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgcD10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHtyZWZsZWN0OiEwfSldLGM9W2ooe3JlZmxlY3Q6ITB9KV0sTmx0KHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToidHlwZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6aD0+InR5cGUiaW4gaCxnZXQ6aD0+aC50eXBlLHNldDooaCxiKT0+e2gudHlwZT1ifX0sbWV0YWRhdGE6cH0sbixzKSxObHQodGhpcyxudWxsLGMse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJwb3NpdGlvbiIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6aD0+InBvc2l0aW9uImluIGgsZ2V0Omg9PmgucG9zaXRpb24sc2V0OihoLGIpPT57aC5wb3NpdGlvbj1ifX0sbWV0YWRhdGE6cH0sZCxmKSxObHQobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6cH0sbnVsbCxyKSx1PWE9dC52YWx1ZSxwJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnB9KX1zdGF0aWMgZGVtbz0oKT0+U2A8ZGVlcy13aW5kb3djb250cm9scz48L2RlZXMtd2luZG93Y29udHJvbHM+YDtzdGF0aWMgZGVtb0dyb3Vwcz1bIlV0aWxpdHkiXTsjZT1zWih0aGlzLG4sIm1hYyIpO2dldCB0eXBlKCl7cmV0dXJuIHRoaXMuI2V9c2V0IHR5cGUocCl7dGhpcy4jZT1wfSN0PShzWih0aGlzLHMpLHNaKHRoaXMsZCwibGVmdCIpKTtnZXQgcG9zaXRpb24oKXtyZXR1cm4gdGhpcy4jdH1zZXQgcG9zaXRpb24ocCl7dGhpcy4jdD1wfXN0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgLyogVE9ETzogTWlncmF0ZSBoYXJkY29kZWQgdmFsdWVzIHRvIC0tZGVlcy0qIENTUyB2YXJpYWJsZXMgKi8KICAgICAgOmhvc3QgewogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgICAgIHBhZGRpbmctbGVmdDogMTZweDsKICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNnB4OwogICAgICB9CgogICAgICAud2luZG93Q29udHJvbHMgewogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICB9CgogICAgICAud2luZG93Q29udHJvbHMgZGl2IHsKICAgICAgICB3aWR0aDogMTJweDsKICAgICAgICBoZWlnaHQ6IDEycHg7CiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsKICAgICAgICBtYXJnaW46IDBweDsKICAgICAgICBwYWRkaW5nOiAwcHg7CiAgICAgICAgYmFja2dyb3VuZDogIzIyMjIyMjsKICAgICAgfQoKICAgICAgLndpbmRvd0NvbnRyb2xzIGRpdi5jbG9zZSB7CiAgICAgICAgYmFja2dyb3VuZDogI2ZmNWY1NzsKICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7CiAgICAgIH0KCiAgICAgIC53aW5kb3dDb250cm9scyBkaXYudG9Eb2NrIHsKICAgICAgICBiYWNrZ3JvdW5kOiAjZmZiZDJlOwogICAgICAgIG1hcmdpbi1yaWdodDogMTJweDsKICAgICAgfQoKICAgICAgLndpbmRvd0NvbnRyb2xzIGRpdi5taW5NYXggewogICAgICAgIGJhY2tncm91bmQ6ICMyN2M5M2Y7CiAgICAgIH0KCiAgICAgIC53aW5kb3dDb250cm9scyBkaXY6aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICMzMzMzMzM7CiAgICAgIH0KICAgIGBdO3JlbmRlcigpe3JldHVybiBTYAogICAgICAke3RoaXMudHlwZT09PSJtYWMiJiZ0aGlzLnBvc2l0aW9uPT09ImxlZnQifHwodGhpcy50eXBlPT09ImxpbnV4Inx8dGhpcy50eXBlPT09IndpbmRvd3MiKSYmdGhpcy5wb3NpdGlvbj09PSJyaWdodCI/U2AKICAgICAgICAgICAgPGRpdiBjbGFzcz0id2luZG93Q29udHJvbHMiPgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNsb3NlIj48L2Rpdj4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0b0RvY2siPjwvZGl2PgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1pbk1heCI+PC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgYDpTYGB9CiAgICBgfWNvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKSxzWih0aGlzLGYpfXN0YXRpY3tzWihhLHIpfX07cmV0dXJuIHU9YX0pKCl9KTt2YXIgbFosSWMsdUVyLE9sdD1sKCgpPT57T2koKTtUbigpO1NlKCk7b3QoKTtsWj1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LEljPWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSx1RXI9KCgpPT57bGV0IGU9W3plKCJkZWVzLWFwcHVpLXByb2ZpbGVkcm9wZG93biIpXSx0LHI9W10sYSxpPURlLG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdLHUscD1bXSxoPVtdLGIseD1bXSxnPVtdO3ZhciB2PWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgdz10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHt0eXBlOk9iamVjdH0pXSxjPVtqKHt0eXBlOkFycmF5fSldLHU9W2ooe3R5cGU6Qm9vbGVhbixyZWZsZWN0OiEwfSldLGI9W2ooe3R5cGU6U3RyaW5nfSldLGxaKHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToidXNlciIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6TT0+InVzZXIiaW4gTSxnZXQ6TT0+TS51c2VyLHNldDooTSxGKT0+e00udXNlcj1GfX0sbWV0YWRhdGE6d30sbixzKSxsWih0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im1lbnVJdGVtcyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6TT0+Im1lbnVJdGVtcyJpbiBNLGdldDpNPT5NLm1lbnVJdGVtcyxzZXQ6KE0sRik9PntNLm1lbnVJdGVtcz1GfX0sbWV0YWRhdGE6d30sZCxmKSxsWih0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImlzT3BlbiIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6TT0+ImlzT3BlbiJpbiBNLGdldDpNPT5NLmlzT3BlbixzZXQ6KE0sRik9PntNLmlzT3Blbj1GfX0sbWV0YWRhdGE6d30scCxoKSxsWih0aGlzLG51bGwsYix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InBvc2l0aW9uIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpNPT4icG9zaXRpb24iaW4gTSxnZXQ6TT0+TS5wb3NpdGlvbixzZXQ6KE0sRik9PntNLnBvc2l0aW9uPUZ9fSxtZXRhZGF0YTp3fSx4LGcpLGxaKG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOnd9LG51bGwsciksdj1hPXQudmFsdWUsdyYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTp3fSl9c3RhdGljIGRlbW89KCk9PlNgCiAgICA8ZGVlcy1hcHB1aS1wcm9maWxlZHJvcGRvd24KICAgICAgLnVzZXI9JHt7bmFtZToiSm9obiBEb2UiLGVtYWlsOiJqb2huLmRvZUBleGFtcGxlLmNvbSIsYXZhdGFyOiJodHRwczovL3JhbmRvbXVzZXIubWUvYXBpL3BvcnRyYWl0cy9tZW4vMS5qcGciLHN0YXR1czoib25saW5lIn19CiAgICAgIC5tZW51SXRlbXM9JHtbe25hbWU6IlByb2ZpbGUgU2V0dGluZ3MiLGljb25OYW1lOiJ1c2VyIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIlByb2ZpbGUiKX0se25hbWU6IkFjY291bnQiLGljb25OYW1lOiJzZXR0aW5ncyIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJBY2NvdW50Iil9LHtkaXZpZGVyOiEwfSx7bmFtZToiSGVscCAmIFN1cHBvcnQiLGljb25OYW1lOiJoZWxwQ2lyY2xlIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIkhlbHAiKX0se25hbWU6IktleWJvYXJkIFNob3J0Y3V0cyIsaWNvbk5hbWU6ImtleWJvYXJkIixzaG9ydGN1dDoiQ21kK0siLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiU2hvcnRjdXRzIil9LHtkaXZpZGVyOiEwfSx7bmFtZToiU2lnbiBPdXQiLGljb25OYW1lOiJsb2dPdXQiLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiU2lnbiBvdXQiKX1dfQogICAgICAuaXNPcGVuPSR7ITB9CiAgICA+PC9kZWVzLWFwcHVpLXByb2ZpbGVkcm9wZG93bj4KICBgO3N0YXRpYyBkZW1vR3JvdXBzPVsiQXBwIFVJIl07I2U9SWModGhpcyxuLHZvaWQgMCk7Z2V0IHVzZXIoKXtyZXR1cm4gdGhpcy4jZX1zZXQgdXNlcih3KXt0aGlzLiNlPXd9I3Q9KEljKHRoaXMscyksSWModGhpcyxkLFtdKSk7Z2V0IG1lbnVJdGVtcygpe3JldHVybiB0aGlzLiN0fXNldCBtZW51SXRlbXModyl7dGhpcy4jdD13fSNyPShJYyh0aGlzLGYpLEljKHRoaXMscCwhMSkpO2dldCBpc09wZW4oKXtyZXR1cm4gdGhpcy4jcn1zZXQgaXNPcGVuKHcpe3RoaXMuI3I9d30jYT0oSWModGhpcyxoKSxJYyh0aGlzLHgsInRvcC1yaWdodCIpKTtnZXQgcG9zaXRpb24oKXtyZXR1cm4gdGhpcy4jYX1zZXQgcG9zaXRpb24odyl7dGhpcy4jYT13fXN0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgLyogVE9ETzogTWlncmF0ZSBoYXJkY29kZWQgdmFsdWVzIHRvIC0tZGVlcy0qIENTUyB2YXJpYWJsZXMgKi8KICAgICAgOmhvc3QgewogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICB0b3A6IDEwMCU7CiAgICAgICAgbGVmdDogMDsKICAgICAgICByaWdodDogMDsKICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAgICAgfQoKICAgICAgLmRyb3Bkb3duIHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgbWluLXdpZHRoOiAyMjBweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2ZmZmZmZiIsIiMwMDAwMDAiKX07CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlMGUwZTAiLCIjMjAyMDIwIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgICBib3gtc2hhZG93OiAke20uYmRUaGVtZSgiMCA0cHggMTJweCByZ2JhKDAsIDAsIDAsIDAuMTUpIiwiMCA0cHggMTJweCByZ2JhKDAsIDAsIDAsIDAuMykiKX07CiAgICAgICAgei1pbmRleDogJHtMaS5vdmVybGF5LmRyb3Bkb3dufTsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSkgdHJhbnNsYXRlWSgtMTBweCk7CiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzLCB0cmFuc2Zvcm0gMC4yczsKICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgfQoKICAgICAgOmhvc3QoW2lzb3Blbl0pIC5kcm9wZG93biB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpIHRyYW5zbGF0ZVkoMCk7CiAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87CiAgICAgIH0KICAgICAgCiAgICAgIC5iYWNrZHJvcCB7CiAgICAgICAgZGlzcGxheTogbm9uZTsKICAgICAgfQoKICAgICAgLyogUG9zaXRpb24gdmFyaWFudHMgKi8KICAgICAgLmRyb3Bkb3duLnRvcC1yaWdodCB7CiAgICAgICAgdG9wOiAxMDAlOwogICAgICAgIHJpZ2h0OiAwOwogICAgICAgIG1hcmdpbi10b3A6IDRweDsKICAgICAgfQoKICAgICAgLmRyb3Bkb3duLnRvcC1sZWZ0IHsKICAgICAgICB0b3A6IDEwMCU7CiAgICAgICAgbGVmdDogMDsKICAgICAgICBtYXJnaW4tdG9wOiA4cHg7CiAgICAgIH0KCiAgICAgIC5kcm9wZG93bi5ib3R0b20tcmlnaHQgewogICAgICAgIGJvdHRvbTogMTAwJTsKICAgICAgICByaWdodDogMDsKICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7CiAgICAgIH0KCiAgICAgIC5kcm9wZG93bi5ib3R0b20tbGVmdCB7CiAgICAgICAgYm90dG9tOiAxMDAlOwogICAgICAgIGxlZnQ6IDA7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4OwogICAgICB9CgogICAgICAvKiBVc2VyIHNlY3Rpb24gKi8KICAgICAgLnVzZXItc2VjdGlvbiB7CiAgICAgICAgcGFkZGluZzogMTJweDsKICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlMGUwZTAiLCIjMjAyMDIwIil9OwogICAgICB9CgogICAgICAudXNlci1pbmZvIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgZ2FwOiAxMHB4OwogICAgICB9CgogICAgICAudXNlci1hdmF0YXIgewogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICB3aWR0aDogMzZweDsKICAgICAgICBoZWlnaHQ6IDM2cHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjBmMGYwIiwiIzFhMWExYSIpfTsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNjY2IiwiIzk5OSIpfTsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICB9CgogICAgICAudXNlci1hdmF0YXIgaW1nIHsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7CiAgICAgIH0KCiAgICAgIC51c2VyLXN0YXR1cyB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIGJvdHRvbTogMDsKICAgICAgICByaWdodDogMDsKICAgICAgICB3aWR0aDogMTBweDsKICAgICAgICBoZWlnaHQ6IDEwcHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZmZmZmZmIiwiIzAwMDAwMCIpfTsKICAgICAgfQoKICAgICAgLnVzZXItc3RhdHVzLm9ubGluZSB7CiAgICAgICAgYmFja2dyb3VuZDogIzRjYWY1MDsKICAgICAgfQoKICAgICAgLnVzZXItc3RhdHVzLm9mZmxpbmUgewogICAgICAgIGJhY2tncm91bmQ6ICM3NTc1NzU7CiAgICAgIH0KCiAgICAgIC51c2VyLXN0YXR1cy5idXN5IHsKICAgICAgICBiYWNrZ3JvdW5kOiAjZjQ0MzM2OwogICAgICB9CgogICAgICAudXNlci1zdGF0dXMuYXdheSB7CiAgICAgICAgYmFja2dyb3VuZDogI2ZmOTgwMDsKICAgICAgfQoKICAgICAgLnVzZXItZGV0YWlscyB7CiAgICAgICAgZmxleDogMTsKICAgICAgICBtaW4td2lkdGg6IDA7CiAgICAgIH0KCiAgICAgIC51c2VyLW5hbWUgewogICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzAwMCIsIiNmZmYiKX07CiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjsKICAgICAgICBtYXJnaW46IDA7CiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOwogICAgICB9CgogICAgICAudXNlci1lbWFpbCB7CiAgICAgICAgZm9udC1zaXplOiAxMXB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzY2NiIsIiM5OTkiKX07CiAgICAgICAgbWFyZ2luLXRvcDogMnB4OwogICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsKICAgICAgfQoKICAgICAgLyogTWVudSBzZWN0aW9uICovCiAgICAgIC5tZW51LXNlY3Rpb24gewogICAgICAgIHBhZGRpbmc6IDRweCAwOwogICAgICB9CgogICAgICAubWVudS1pdGVtIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgZ2FwOiA4cHg7CiAgICAgICAgcGFkZGluZzogOHB4IDEycHg7CiAgICAgICAgY3Vyc29yOiBkZWZhdWx0OwogICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xczsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMzMzMiLCIjY2NjIil9OwogICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICBsaW5lLWhlaWdodDogMTsKICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTsKICAgICAgfQoKICAgICAgLm1lbnUtaXRlbTpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoMCwgMCwgMCwgMC4wNCkiLCJyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDgpIil9OwogICAgICB9CgogICAgICAubWVudS1pdGVtOmFjdGl2ZSB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoMCwgMCwgMCwgMC4wOCkiLCJyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTIpIil9OwogICAgICB9CgogICAgICAubWVudS1pdGVtIGRlZXMtaWNvbiB7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIG9wYWNpdHk6IDAuNzsKICAgICAgfQoKICAgICAgLm1lbnUtaXRlbS10ZXh0IHsKICAgICAgICBmbGV4OiAxOwogICAgICB9CgogICAgICAubWVudS1zaG9ydGN1dCB7CiAgICAgICAgZm9udC1zaXplOiAxMXB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzk5OSIsIiM2NjYiKX07CiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87CiAgICAgICAgb3BhY2l0eTogMC43OwogICAgICB9CgogICAgICAubWVudS1kaXZpZGVyIHsKICAgICAgICBoZWlnaHQ6IDFweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2UwZTBlMCIsIiMyMDIwMjAiKX07CiAgICAgICAgbWFyZ2luOiA0cHggMDsKICAgICAgfQoKICAgICAgLyogQmFja2Ryb3AgZm9yIG1vYmlsZSAqLwogICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHsKICAgICAgICAuYmFja2Ryb3AgewogICAgICAgICAgcG9zaXRpb246IGZpeGVkOwogICAgICAgICAgdG9wOiAwOwogICAgICAgICAgbGVmdDogMDsKICAgICAgICAgIHJpZ2h0OiAwOwogICAgICAgICAgYm90dG9tOiAwOwogICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjMpOwogICAgICAgICAgei1pbmRleDogJHtMaS5iYWNrZHJvcC5kcm9wZG93bn07CiAgICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzOwogICAgICAgICAgZGlzcGxheTogbm9uZTsKICAgICAgICB9CgogICAgICAgIDpob3N0KFtpc29wZW5dKSAuYmFja2Ryb3AgewogICAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87CiAgICAgICAgfQoKICAgICAgICAuZHJvcGRvd24gewogICAgICAgICAgcG9zaXRpb246IGZpeGVkOwogICAgICAgICAgdG9wOiA1MCU7CiAgICAgICAgICBsZWZ0OiA1MCU7CiAgICAgICAgICByaWdodDogYXV0bzsKICAgICAgICAgIGJvdHRvbTogYXV0bzsKICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDAuOTUpOwogICAgICAgICAgbWFyZ2luOiAwOwogICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMHZ3IC0gMzJweCk7CiAgICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMzJweCk7CiAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvOwogICAgICAgICAgb3ZlcnNjcm9sbC1iZWhhdmlvcjogY29udGFpbjsKICAgICAgICB9CgogICAgICAgIDpob3N0KFtpc29wZW5dKSAuZHJvcGRvd24gewogICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMSk7CiAgICAgICAgfQogICAgICB9CiAgICBgXTtyZW5kZXIoKXtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0iYmFja2Ryb3AiIEBjbGljaz0keygpPT50aGlzLmNsb3NlKCl9PjwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJkcm9wZG93biAke3RoaXMucG9zaXRpb259Ij4KICAgICAgICAke3RoaXMudXNlcj9TYAogICAgICAgICAgPGRpdiBjbGFzcz0idXNlci1zZWN0aW9uIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idXNlci1pbmZvIj4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ1c2VyLWF2YXRhciI+CiAgICAgICAgICAgICAgICAke3RoaXMudXNlci5hdmF0YXI/U2A8aW1nIHNyYz0iJHt0aGlzLnVzZXIuYXZhdGFyfSIgYWx0PSIke3RoaXMudXNlci5uYW1lfSI+YDp0aGlzLmdldEluaXRpYWxzKHRoaXMudXNlci5uYW1lKX0KICAgICAgICAgICAgICAgICR7dGhpcy51c2VyLnN0YXR1cz9TYAogICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ1c2VyLXN0YXR1cyAke3RoaXMudXNlci5zdGF0dXN9Ij48L2Rpdj4KICAgICAgICAgICAgICAgIGA6IiJ9CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idXNlci1kZXRhaWxzIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InVzZXItbmFtZSI+JHt0aGlzLnVzZXIubmFtZX08L2Rpdj4KICAgICAgICAgICAgICAgICR7dGhpcy51c2VyLmVtYWlsP1NgCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InVzZXItZW1haWwiPiR7dGhpcy51c2VyLmVtYWlsfTwvZGl2PgogICAgICAgICAgICAgICAgYDoiIn0KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICBgOiIifQogICAgICAgIAogICAgICAgIDxkaXYgY2xhc3M9Im1lbnUtc2VjdGlvbiI+CiAgICAgICAgICAke3RoaXMubWVudUl0ZW1zLm1hcCh3PT50aGlzLnJlbmRlck1lbnVJdGVtKHcpKX0KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICBgfXJlbmRlck1lbnVJdGVtKHcpe2lmKCJkaXZpZGVyImluIHcmJncuZGl2aWRlcilyZXR1cm4gU2A8ZGl2IGNsYXNzPSJtZW51LWRpdmlkZXIiPjwvZGl2PmA7bGV0IE09dztyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0ibWVudS1pdGVtIiBAY2xpY2s9JHsoKT0+dGhpcy5oYW5kbGVNZW51Q2xpY2soTSl9PgogICAgICAgICR7TS5pY29uTmFtZT9TYAogICAgICAgICAgPGRlZXMtaWNvbiAuaWNvbj0iJHtgbHVjaWRlOiR7TS5pY29uTmFtZX1gfSI+PC9kZWVzLWljb24+CiAgICAgICAgYDoiIn0KICAgICAgICA8c3BhbiBjbGFzcz0ibWVudS1pdGVtLXRleHQiPiR7TS5uYW1lfTwvc3Bhbj4KICAgICAgICAke00uc2hvcnRjdXQ/U2AKICAgICAgICAgIDxzcGFuIGNsYXNzPSJtZW51LXNob3J0Y3V0Ij4ke00uc2hvcnRjdXR9PC9zcGFuPgogICAgICAgIGA6IiJ9CiAgICAgIDwvZGl2PgogICAgYH1nZXRJbml0aWFscyh3KXtyZXR1cm4gdy5zcGxpdCgiICIpLm1hcChNPT5NWzBdKS5qb2luKCIiKS50b1VwcGVyQ2FzZSgpLnNsaWNlKDAsMil9YXN5bmMgaGFuZGxlTWVudUNsaWNrKHcpe2F3YWl0IHcuYWN0aW9uKCksdGhpcy5jbG9zZSgpLHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoIm1lbnUtc2VsZWN0Iix7ZGV0YWlsOntpdGVtOnd9LGJ1YmJsZXM6ITAsY29tcG9zZWQ6ITB9KSl9b3Blbigpe3RoaXMuaXNPcGVuPSEwfWNsb3NlKCl7dGhpcy5pc09wZW49ITF9dG9nZ2xlKCl7dGhpcy5pc09wZW49IXRoaXMuaXNPcGVufWFzeW5jIGNvbm5lY3RlZENhbGxiYWNrKCl7YXdhaXQgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKSx0aGlzLmhhbmRsZU91dHNpZGVDbGljaz10aGlzLmhhbmRsZU91dHNpZGVDbGljay5iaW5kKHRoaXMpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIix0aGlzLmhhbmRsZU91dHNpZGVDbGljayl9YXN5bmMgZGlzY29ubmVjdGVkQ2FsbGJhY2soKXthd2FpdCBzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImNsaWNrIix0aGlzLmhhbmRsZU91dHNpZGVDbGljayl9aGFuZGxlT3V0c2lkZUNsaWNrKHcpe2lmKHRoaXMuaXNPcGVuJiYhdGhpcy5jb250YWlucyh3LnRhcmdldCkpe2xldCBNPXRoaXMucGFyZW50RWxlbWVudDtpZihNJiZNLmNvbnRhaW5zKHcudGFyZ2V0KSlyZXR1cm47dGhpcy5jbG9zZSgpfX1jb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyksSWModGhpcyxnKX1zdGF0aWN7SWMoYSxyKX19O3JldHVybiB2PWF9KSgpfSk7dmFyIFgxLEJyLGZFcixJbHQ9bCgoKT0+e1NlKCk7ZXIoKTtpMygpO09pKCk7b0VyKCk7c0VyKCk7Y0VyKCk7YnIoKTtGbHQoKTtPbHQoKTtYMT1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LEJyPWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSxmRXI9KCgpPT57bGV0IGU9W3plKCJkZWVzLWFwcHVpLWFwcGJhciIpXSx0LHI9W10sYSxpPURlLG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdLHUscD1bXSxoPVtdLGIseD1bXSxnPVtdLHYsdz1bXSxNPVtdLEYsQz1bXSxrPVtdLE4sJD1bXSxJPVtdLEIsej1bXSx5PVtdLEUsXz1bXSxQPVtdLFYsSD1bXSxXPVtdLGFlLFQ9W10sSj1bXSxmZSxMPVtdLFE9W10sa2UsRz1bXSxBPVtdLEQsUj1bXSxPPVtdLFksdWU9W10seWU9W107dmFyICRlPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgVT10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHt0eXBlOkFycmF5fSldLGM9W2ooe3R5cGU6U3RyaW5nfSldLHU9W2ooe3R5cGU6U3RyaW5nfSldLGI9W2ooe3R5cGU6Qm9vbGVhbn0pXSx2PVtqKHt0eXBlOk9iamVjdH0pXSxGPVtqKHt0eXBlOkFycmF5fSldLE49W2ooe3R5cGU6Qm9vbGVhbn0pXSxCPVtqKHt0eXBlOkJvb2xlYW59KV0sRT1baih7dHlwZTpOdW1iZXJ9KV0sVj1baih7dHlwZTpCb29sZWFufSldLGFlPVtyZSgpXSxmZT1bcmUoKV0sa2U9W3JlKCldLEQ9W3JlKCldLFk9W3JlKCldLFgxKHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibWVudUl0ZW1zIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpxPT4ibWVudUl0ZW1zImluIHEsZ2V0OnE9PnEubWVudUl0ZW1zLHNldDoocSxpZSk9PntxLm1lbnVJdGVtcz1pZX19LG1ldGFkYXRhOlV9LG4scyksWDEodGhpcyxudWxsLGMse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJicmVhZGNydW1icyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cT0+ImJyZWFkY3J1bWJzImluIHEsZ2V0OnE9PnEuYnJlYWRjcnVtYnMsc2V0OihxLGllKT0+e3EuYnJlYWRjcnVtYnM9aWV9fSxtZXRhZGF0YTpVfSxkLGYpLFgxKHRoaXMsbnVsbCx1LHtraW5kOiJhY2Nlc3NvciIsbmFtZToiYnJlYWRjcnVtYlNlcGFyYXRvciIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cT0+ImJyZWFkY3J1bWJTZXBhcmF0b3IiaW4gcSxnZXQ6cT0+cS5icmVhZGNydW1iU2VwYXJhdG9yLHNldDoocSxpZSk9PntxLmJyZWFkY3J1bWJTZXBhcmF0b3I9aWV9fSxtZXRhZGF0YTpVfSxwLGgpLFgxKHRoaXMsbnVsbCxiLHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2hvd1dpbmRvd0NvbnRyb2xzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpxPT4ic2hvd1dpbmRvd0NvbnRyb2xzImluIHEsZ2V0OnE9PnEuc2hvd1dpbmRvd0NvbnRyb2xzLHNldDoocSxpZSk9PntxLnNob3dXaW5kb3dDb250cm9scz1pZX19LG1ldGFkYXRhOlV9LHgsZyksWDEodGhpcyxudWxsLHYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ1c2VyIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpxPT4idXNlciJpbiBxLGdldDpxPT5xLnVzZXIsc2V0OihxLGllKT0+e3EudXNlcj1pZX19LG1ldGFkYXRhOlV9LHcsTSksWDEodGhpcyxudWxsLEYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJwcm9maWxlTWVudUl0ZW1zIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpxPT4icHJvZmlsZU1lbnVJdGVtcyJpbiBxLGdldDpxPT5xLnByb2ZpbGVNZW51SXRlbXMsc2V0OihxLGllKT0+e3EucHJvZmlsZU1lbnVJdGVtcz1pZX19LG1ldGFkYXRhOlV9LEMsayksWDEodGhpcyxudWxsLE4se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzaG93U2VhcmNoIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpxPT4ic2hvd1NlYXJjaCJpbiBxLGdldDpxPT5xLnNob3dTZWFyY2gsc2V0OihxLGllKT0+e3Euc2hvd1NlYXJjaD1pZX19LG1ldGFkYXRhOlV9LCQsSSksWDEodGhpcyxudWxsLEIse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzaG93QWN0aXZpdHlMb2dUb2dnbGUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnE9PiJzaG93QWN0aXZpdHlMb2dUb2dnbGUiaW4gcSxnZXQ6cT0+cS5zaG93QWN0aXZpdHlMb2dUb2dnbGUsc2V0OihxLGllKT0+e3Euc2hvd0FjdGl2aXR5TG9nVG9nZ2xlPWllfX0sbWV0YWRhdGE6VX0seix5KSxYMSh0aGlzLG51bGwsRSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImFjdGl2aXR5TG9nQ291bnQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnE9PiJhY3Rpdml0eUxvZ0NvdW50ImluIHEsZ2V0OnE9PnEuYWN0aXZpdHlMb2dDb3VudCxzZXQ6KHEsaWUpPT57cS5hY3Rpdml0eUxvZ0NvdW50PWllfX0sbWV0YWRhdGE6VX0sXyxQKSxYMSh0aGlzLG51bGwsVix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImFjdGl2aXR5TG9nQWN0aXZlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpxPT4iYWN0aXZpdHlMb2dBY3RpdmUiaW4gcSxnZXQ6cT0+cS5hY3Rpdml0eUxvZ0FjdGl2ZSxzZXQ6KHEsaWUpPT57cS5hY3Rpdml0eUxvZ0FjdGl2ZT1pZX19LG1ldGFkYXRhOlV9LEgsVyksWDEodGhpcyxudWxsLGFlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiYWN0aXZlTWVudSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cT0+ImFjdGl2ZU1lbnUiaW4gcSxnZXQ6cT0+cS5hY3RpdmVNZW51LHNldDoocSxpZSk9PntxLmFjdGl2ZU1lbnU9aWV9fSxtZXRhZGF0YTpVfSxULEopLFgxKHRoaXMsbnVsbCxmZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im9wZW5Ecm9wZG93bnMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnE9PiJvcGVuRHJvcGRvd25zImluIHEsZ2V0OnE9PnEub3BlbkRyb3Bkb3ducyxzZXQ6KHEsaWUpPT57cS5vcGVuRHJvcGRvd25zPWllfX0sbWV0YWRhdGE6VX0sTCxRKSxYMSh0aGlzLG51bGwsa2Use2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJmb2N1c2VkSXRlbSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cT0+ImZvY3VzZWRJdGVtImluIHEsZ2V0OnE9PnEuZm9jdXNlZEl0ZW0sc2V0OihxLGllKT0+e3EuZm9jdXNlZEl0ZW09aWV9fSxtZXRhZGF0YTpVfSxHLEEpLFgxKHRoaXMsbnVsbCxELHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZm9jdXNlZERyb3Bkb3duSXRlbSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cT0+ImZvY3VzZWREcm9wZG93bkl0ZW0iaW4gcSxnZXQ6cT0+cS5mb2N1c2VkRHJvcGRvd25JdGVtLHNldDoocSxpZSk9PntxLmZvY3VzZWREcm9wZG93bkl0ZW09aWV9fSxtZXRhZGF0YTpVfSxSLE8pLFgxKHRoaXMsbnVsbCxZLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiaXNQcm9maWxlRHJvcGRvd25PcGVuIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpxPT4iaXNQcm9maWxlRHJvcGRvd25PcGVuImluIHEsZ2V0OnE9PnEuaXNQcm9maWxlRHJvcGRvd25PcGVuLHNldDoocSxpZSk9PntxLmlzUHJvZmlsZURyb3Bkb3duT3Blbj1pZX19LG1ldGFkYXRhOlV9LHVlLHllKSxYMShudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTpVfSxudWxsLHIpLCRlPWE9dC52YWx1ZSxVJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOlV9KX1zdGF0aWMgZGVtbz1pRXI7c3RhdGljIGRlbW9Hcm91cHM9WyJBcHAgVUkiXTsjZT1Ccih0aGlzLG4sW10pO2dldCBtZW51SXRlbXMoKXtyZXR1cm4gdGhpcy4jZX1zZXQgbWVudUl0ZW1zKFUpe3RoaXMuI2U9VX0jdD0oQnIodGhpcyxzKSxCcih0aGlzLGQsIiIpKTtnZXQgYnJlYWRjcnVtYnMoKXtyZXR1cm4gdGhpcy4jdH1zZXQgYnJlYWRjcnVtYnMoVSl7dGhpcy4jdD1VfSNyPShCcih0aGlzLGYpLEJyKHRoaXMscCwiID4gIikpO2dldCBicmVhZGNydW1iU2VwYXJhdG9yKCl7cmV0dXJuIHRoaXMuI3J9c2V0IGJyZWFkY3J1bWJTZXBhcmF0b3IoVSl7dGhpcy4jcj1VfSNhPShCcih0aGlzLGgpLEJyKHRoaXMseCwhMCkpO2dldCBzaG93V2luZG93Q29udHJvbHMoKXtyZXR1cm4gdGhpcy4jYX1zZXQgc2hvd1dpbmRvd0NvbnRyb2xzKFUpe3RoaXMuI2E9VX0jaT0oQnIodGhpcyxnKSxCcih0aGlzLHcsdm9pZCAwKSk7Z2V0IHVzZXIoKXtyZXR1cm4gdGhpcy4jaX1zZXQgdXNlcihVKXt0aGlzLiNpPVV9I289KEJyKHRoaXMsTSksQnIodGhpcyxDLFtdKSk7Z2V0IHByb2ZpbGVNZW51SXRlbXMoKXtyZXR1cm4gdGhpcy4jb31zZXQgcHJvZmlsZU1lbnVJdGVtcyhVKXt0aGlzLiNvPVV9I249KEJyKHRoaXMsayksQnIodGhpcywkLCExKSk7Z2V0IHNob3dTZWFyY2goKXtyZXR1cm4gdGhpcy4jbn1zZXQgc2hvd1NlYXJjaChVKXt0aGlzLiNuPVV9I3M9KEJyKHRoaXMsSSksQnIodGhpcyx6LCExKSk7Z2V0IHNob3dBY3Rpdml0eUxvZ1RvZ2dsZSgpe3JldHVybiB0aGlzLiNzfXNldCBzaG93QWN0aXZpdHlMb2dUb2dnbGUoVSl7dGhpcy4jcz1VfSNsPShCcih0aGlzLHkpLEJyKHRoaXMsXywwKSk7Z2V0IGFjdGl2aXR5TG9nQ291bnQoKXtyZXR1cm4gdGhpcy4jbH1zZXQgYWN0aXZpdHlMb2dDb3VudChVKXt0aGlzLiNsPVV9I2M9KEJyKHRoaXMsUCksQnIodGhpcyxILCExKSk7Z2V0IGFjdGl2aXR5TG9nQWN0aXZlKCl7cmV0dXJuIHRoaXMuI2N9c2V0IGFjdGl2aXR5TG9nQWN0aXZlKFUpe3RoaXMuI2M9VX0jZD0oQnIodGhpcyxXKSxCcih0aGlzLFQsbnVsbCkpO2dldCBhY3RpdmVNZW51KCl7cmV0dXJuIHRoaXMuI2R9c2V0IGFjdGl2ZU1lbnUoVSl7dGhpcy4jZD1VfSN1PShCcih0aGlzLEopLEJyKHRoaXMsTCxuZXcgU2V0KSk7Z2V0IG9wZW5Ecm9wZG93bnMoKXtyZXR1cm4gdGhpcy4jdX1zZXQgb3BlbkRyb3Bkb3ducyhVKXt0aGlzLiN1PVV9I2Y9KEJyKHRoaXMsUSksQnIodGhpcyxHLG51bGwpKTtnZXQgZm9jdXNlZEl0ZW0oKXtyZXR1cm4gdGhpcy4jZn1zZXQgZm9jdXNlZEl0ZW0oVSl7dGhpcy4jZj1VfSNwPShCcih0aGlzLEEpLEJyKHRoaXMsUiwtMSkpO2dldCBmb2N1c2VkRHJvcGRvd25JdGVtKCl7cmV0dXJuIHRoaXMuI3B9c2V0IGZvY3VzZWREcm9wZG93bkl0ZW0oVSl7dGhpcy4jcD1VfSNoPShCcih0aGlzLE8pLEJyKHRoaXMsdWUsITEpKTtnZXQgaXNQcm9maWxlRHJvcGRvd25PcGVuKCl7cmV0dXJuIHRoaXMuI2h9c2V0IGlzUHJvZmlsZURyb3Bkb3duT3BlbihVKXt0aGlzLiNoPVV9c3RhdGljIHN0eWxlcz1uRXI7cmVuZGVyKCl7cmV0dXJuIGxFcih0aGlzKX1yZW5kZXJNZW51SXRlbXMoKXtyZXR1cm4gU2AKICAgICAgJHt0aGlzLm1lbnVJdGVtcy5tYXAoKFUscSk9PnRoaXMucmVuZGVyTWVudUl0ZW0oVSxgbWVudS0ke3F9YCkpfQogICAgYH1yZW5kZXJNZW51SXRlbShVLHEpe2lmKCJkaXZpZGVyImluIFUmJlUuZGl2aWRlcilyZXR1cm4gU2A8ZGl2IGNsYXNzPSJkcm9wZG93bi1kaXZpZGVyIj48L2Rpdj5gO2xldCBpZT1VLHdlPXRoaXMuYWN0aXZlTWVudT09PXEsZ2U9aWUuc3VibWVudSYmaWUuc3VibWVudS5sZW5ndGg+MDtyZXR1cm4gU2AKICAgICAgPGRpdgogICAgICAgIGNsYXNzPSJtZW51SXRlbSAke3dlPyJhY3RpdmUiOiIifSIKICAgICAgICA/ZGlzYWJsZWQ9JHtpZS5kaXNhYmxlZH0KICAgICAgICB0YWJpbmRleD0iJHtpZS5kaXNhYmxlZD8tMTowfSIKICAgICAgICBkYXRhLWl0ZW0taWQ9IiR7cX0iCiAgICAgICAgQGNsaWNrPSR7KCk9PnRoaXMuaGFuZGxlTWVudUNsaWNrKGllLHEpfQogICAgICAgIEBrZXlkb3duPSR7QWU9PnRoaXMuaGFuZGxlTWVudUtleWRvd24oQWUsaWUscSl9CiAgICAgICAgcm9sZT0ibWVudWl0ZW0iCiAgICAgICAgYXJpYS1oYXNwb3B1cD0iJHtnZX0iCiAgICAgICAgYXJpYS1leHBhbmRlZD0iJHt3ZX0iCiAgICAgID4KICAgICAgICAke2llLmljb25OYW1lP1NgPGRlZXMtaWNvbiAuaWNvbj0iJHtgbHVjaWRlOiR7aWUuaWNvbk5hbWV9YH0iPjwvZGVlcy1pY29uPmA6IiJ9CiAgICAgICAgJHtpZS5uYW1lfQogICAgICAgICR7Z2U/dGhpcy5yZW5kZXJEcm9wZG93bihpZS5zdWJtZW51LHEsd2UpOiIifQogICAgICA8L2Rpdj4KICAgIGB9cmVuZGVyRHJvcGRvd24oVSxxLGllKXtyZXR1cm4gU2AKICAgICAgPGRpdiAKICAgICAgICBjbGFzcz0iZHJvcGRvd24gJHtpZT8ib3BlbiI6IiJ9IiAKICAgICAgICBAY2xpY2s9JHt3ZT0+d2Uuc3RvcFByb3BhZ2F0aW9uKCl9CiAgICAgICAgQGtleWRvd249JHt3ZT0+dGhpcy5oYW5kbGVEcm9wZG93bktleWRvd24od2UsVSxxKX0KICAgICAgICB0YWJpbmRleD0iJHtpZT8wOi0xfSIKICAgICAgICByb2xlPSJtZW51IgogICAgICA+CiAgICAgICAgJHtVLm1hcCgod2UsZ2UpPT50aGlzLnJlbmRlckRyb3Bkb3duSXRlbSh3ZSxgJHtxfS0ke2dlfWApKX0KICAgICAgPC9kaXY+CiAgICBgfXJlbmRlckRyb3Bkb3duSXRlbShVLHEpe2lmKCJkaXZpZGVyImluIFUmJlUuZGl2aWRlcilyZXR1cm4gU2A8ZGl2IGNsYXNzPSJkcm9wZG93bi1kaXZpZGVyIj48L2Rpdj5gO2xldCBpZT1VLHdlPXBhcnNlSW50KHEuc3BsaXQoIi0iKS5wb3AoKXx8IjAiKSxnZT10aGlzLmZvY3VzZWREcm9wZG93bkl0ZW09PT13ZTtyZXR1cm4gU2AKICAgICAgPGRpdgogICAgICAgIGNsYXNzPSJkcm9wZG93bi1pdGVtICR7Z2U/ImZvY3VzZWQiOiIifSIKICAgICAgICA/ZGlzYWJsZWQ9JHtpZS5kaXNhYmxlZH0KICAgICAgICBAY2xpY2s9JHsoKT0+dGhpcy5oYW5kbGVEcm9wZG93bkl0ZW1DbGljayhpZSl9CiAgICAgICAgQG1vdXNlZW50ZXI9JHsoKT0+dGhpcy5mb2N1c2VkRHJvcGRvd25JdGVtPXdlfQogICAgICAgIHJvbGU9Im1lbnVpdGVtIgogICAgICAgIHRhYmluZGV4PSIke2llLmRpc2FibGVkPy0xOjB9IgogICAgICA+CiAgICAgICAgJHtpZS5pY29uTmFtZT9TYDxkZWVzLWljb24gLmljb249IiR7YGx1Y2lkZToke2llLmljb25OYW1lfWB9Ij48L2RlZXMtaWNvbj5gOiIifQogICAgICAgIDxzcGFuPiR7aWUubmFtZX08L3NwYW4+CiAgICAgICAgJHtpZS5zaG9ydGN1dD9TYDxzcGFuIGNsYXNzPSJzaG9ydGN1dCI+JHtpZS5zaG9ydGN1dH08L3NwYW4+YDoiIn0KICAgICAgPC9kaXY+CiAgICBgfXJlbmRlckJyZWFkY3J1bWJzKCl7aWYoIXRoaXMuYnJlYWRjcnVtYnMpcmV0dXJuIFNgYDtsZXQgVT10aGlzLmJyZWFkY3J1bWJzLnNwbGl0KHRoaXMuYnJlYWRjcnVtYlNlcGFyYXRvcik7cmV0dXJuIFNgCiAgICAgICR7VS5tYXAoKHEsaWUpPT5TYAogICAgICAgICR7aWU+MD9TYDxzcGFuIGNsYXNzPSJicmVhZGNydW1iLXNlcGFyYXRvciI+JHt0aGlzLmJyZWFkY3J1bWJTZXBhcmF0b3J9PC9zcGFuPmA6IiJ9CiAgICAgICAgPHNwYW4gCiAgICAgICAgICBjbGFzcz0iYnJlYWRjcnVtYi1pdGVtIiAKICAgICAgICAgIEBjbGljaz0keygpPT50aGlzLmhhbmRsZUJyZWFkY3J1bWJDbGljayhxLGllKX0KICAgICAgICA+CiAgICAgICAgICAke3F9CiAgICAgICAgPC9zcGFuPgogICAgICBgKX0KICAgIGB9cmVuZGVyQWNjb3VudFNlY3Rpb24oKXtyZXR1cm4gU2AKICAgICAgJHt0aGlzLnNob3dTZWFyY2g/U2AKICAgICAgICA8ZGVlcy1pY29uCiAgICAgICAgICBjbGFzcz0ic2VhcmNoLWljb24iCiAgICAgICAgICAuaWNvbj0keyJsdWNpZGU6c2VhcmNoIn0KICAgICAgICAgIEBjbGljaz0ke3RoaXMuaGFuZGxlU2VhcmNoQ2xpY2t9CiAgICAgICAgPjwvZGVlcy1pY29uPgogICAgICBgOiIifQogICAgICAke3RoaXMudXNlcj9TYAogICAgICAgIDxkaXYgc3R5bGU9InBvc2l0aW9uOiByZWxhdGl2ZTsiPgogICAgICAgICAgPGRpdiBjbGFzcz0idXNlci1pbmZvIiBAY2xpY2s9JHt0aGlzLmhhbmRsZVVzZXJDbGlja30+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InVzZXItYXZhdGFyIj4KICAgICAgICAgICAgICAke3RoaXMudXNlci5hdmF0YXI/U2A8aW1nIHNyYz0iJHt0aGlzLnVzZXIuYXZhdGFyfSIgYWx0PSIke3RoaXMudXNlci5uYW1lfSI+YDpTYCR7dGhpcy51c2VyLm5hbWUuY2hhckF0KDApLnRvVXBwZXJDYXNlKCl9YH0KICAgICAgICAgICAgICAke3RoaXMudXNlci5zdGF0dXM/U2AKICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InVzZXItc3RhdHVzICR7dGhpcy51c2VyLnN0YXR1c30iPjwvZGl2PgogICAgICAgICAgICAgIGA6IiJ9CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8c3Bhbj4ke3RoaXMudXNlci5uYW1lfTwvc3Bhbj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRlZXMtYXBwdWktcHJvZmlsZWRyb3Bkb3duCiAgICAgICAgICAgIC51c2VyPSR7dGhpcy51c2VyfQogICAgICAgICAgICAubWVudUl0ZW1zPSR7dGhpcy5wcm9maWxlTWVudUl0ZW1zfQogICAgICAgICAgICAuaXNPcGVuPSR7dGhpcy5pc1Byb2ZpbGVEcm9wZG93bk9wZW59CiAgICAgICAgICAgIC5wb3NpdGlvbj0keyJ0b3AtcmlnaHQifQogICAgICAgICAgICBAbWVudS1zZWxlY3Q9JHtVPT50aGlzLmhhbmRsZVByb2ZpbGVNZW51U2VsZWN0KFUpfQogICAgICAgICAgPjwvZGVlcy1hcHB1aS1wcm9maWxlZHJvcGRvd24+CiAgICAgICAgPC9kaXY+CiAgICAgIGA6IiJ9CiAgICAgICR7dGhpcy5zaG93QWN0aXZpdHlMb2dUb2dnbGU/U2AKICAgICAgICA8ZGl2CiAgICAgICAgICBjbGFzcz0iYWN0aXZpdHktdG9nZ2xlICR7dGhpcy5hY3Rpdml0eUxvZ0FjdGl2ZT8iYWN0aXZlIjoiIn0iCiAgICAgICAgICBAY2xpY2s9JHt0aGlzLmhhbmRsZUFjdGl2aXR5VG9nZ2xlfQogICAgICAgICAgdGl0bGU9IkFjdGl2aXR5IExvZyIKICAgICAgICA+CiAgICAgICAgICA8ZGVlcy1pY29uIC5pY29uPSR7Imx1Y2lkZTphY3Rpdml0eSJ9PjwvZGVlcy1pY29uPgogICAgICAgICAgJHt0aGlzLmFjdGl2aXR5TG9nQ291bnQ+MD9TYAogICAgICAgICAgICA8c3BhbiBjbGFzcz0iYWN0aXZpdHktYmFkZ2UiPiR7dGhpcy5hY3Rpdml0eUxvZ0NvdW50Pjk5PyI5OSsiOnRoaXMuYWN0aXZpdHlMb2dDb3VudH08L3NwYW4+CiAgICAgICAgICBgOiIifQogICAgICAgIDwvZGl2PgogICAgICBgOiIifQogICAgYH1oYW5kbGVNZW51Q2xpY2soVSxxKXtVLmRpc2FibGVkfHwoVS5zdWJtZW51JiZVLnN1Ym1lbnUubGVuZ3RoPjA/dGhpcy5hY3RpdmVNZW51PT09cT90aGlzLmFjdGl2ZU1lbnU9bnVsbDp0aGlzLmFjdGl2ZU1lbnU9cToodGhpcy5hY3RpdmVNZW51PW51bGwsVS5hY3Rpb24mJlUuYWN0aW9uKCksdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgibWVudS1zZWxlY3QiLHtkZXRhaWw6e2l0ZW06VX0sYnViYmxlczohMCxjb21wb3NlZDohMH0pKSkpfWhhbmRsZURyb3Bkb3duSXRlbUNsaWNrKFUpe1UuZGlzYWJsZWR8fCh0aGlzLmFjdGl2ZU1lbnU9bnVsbCxVLmFjdGlvbiYmVS5hY3Rpb24oKSx0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJtZW51LXNlbGVjdCIse2RldGFpbDp7aXRlbTpVfSxidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpKX1oYW5kbGVNZW51S2V5ZG93bihVLHEsaWUpe3N3aXRjaChVLmtleSl7Y2FzZSJFbnRlciI6Y2FzZSIgIjpVLnByZXZlbnREZWZhdWx0KCksdGhpcy5oYW5kbGVNZW51Q2xpY2socSxpZSk7YnJlYWs7Y2FzZSJBcnJvd0Rvd24iOmlmKHEuc3VibWVudSYmdGhpcy5hY3RpdmVNZW51PT09aWUpe1UucHJldmVudERlZmF1bHQoKSx0aGlzLmZvY3VzZWREcm9wZG93bkl0ZW09MDtsZXQgd2U9dGhpcy5maW5kTmV4dFZhbGlkSXRlbShxLnN1Ym1lbnUsLTEsMSk7d2UhPT0tMSYmKHRoaXMuZm9jdXNlZERyb3Bkb3duSXRlbT13ZSxzZXRUaW1lb3V0KCgpPT57bGV0IGdlPXRoaXMucmVuZGVyUm9vdC5xdWVyeVNlbGVjdG9yKCIuZHJvcGRvd24ub3BlbiIpO2dlJiZnZS5mb2N1cygpfSwwKSl9YnJlYWs7Y2FzZSJFc2NhcGUiOnRoaXMuYWN0aXZlTWVudT1udWxsLHRoaXMuZm9jdXNlZERyb3Bkb3duSXRlbT0tMTticmVhaztjYXNlIlRhYiI6dGhpcy5hY3RpdmVNZW51PT09aWUmJih0aGlzLmFjdGl2ZU1lbnU9bnVsbCx0aGlzLmZvY3VzZWREcm9wZG93bkl0ZW09LTEpO2JyZWFrO2Nhc2UiQXJyb3dSaWdodCI6VS5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuZm9jdXNOZXh0TWVudUl0ZW0oaWUsMSk7YnJlYWs7Y2FzZSJBcnJvd0xlZnQiOlUucHJldmVudERlZmF1bHQoKSx0aGlzLmZvY3VzTmV4dE1lbnVJdGVtKGllLC0xKTticmVha319aGFuZGxlQnJlYWRjcnVtYkNsaWNrKFUscSl7dGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgiYnJlYWRjcnVtYi1uYXZpZ2F0ZSIse2RldGFpbDp7YnJlYWRjcnVtYjpVLGluZGV4OnF9LGJ1YmJsZXM6ITAsY29tcG9zZWQ6ITB9KSl9aGFuZGxlU2VhcmNoQ2xpY2soKXt0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJzZWFyY2gtY2xpY2siLHtidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpfWhhbmRsZUFjdGl2aXR5VG9nZ2xlKCl7dGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgiYWN0aXZpdHktdG9nZ2xlIix7YnViYmxlczohMCxjb21wb3NlZDohMH0pKX1oYW5kbGVVc2VyQ2xpY2soKXt0aGlzLmlzUHJvZmlsZURyb3Bkb3duT3Blbj0hdGhpcy5pc1Byb2ZpbGVEcm9wZG93bk9wZW4sdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgidXNlci1tZW51LW9wZW4iLHtidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpfWhhbmRsZVByb2ZpbGVNZW51U2VsZWN0KFUpe3RoaXMuaXNQcm9maWxlRHJvcGRvd25PcGVuPSExLHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoInByb2ZpbGUtbWVudS1zZWxlY3QiLHtkZXRhaWw6VS5kZXRhaWwsYnViYmxlczohMCxjb21wb3NlZDohMH0pKX1hc3luYyBjb25uZWN0ZWRDYWxsYmFjaygpe2F3YWl0IHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCksdGhpcy5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsdGhpcy5oYW5kbGVHbG9iYWxDbGljayksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLHRoaXMuaGFuZGxlRG9jdW1lbnRDbGljayl9YXN5bmMgZGlzY29ubmVjdGVkQ2FsbGJhY2soKXthd2FpdCBzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImNsaWNrIix0aGlzLmhhbmRsZURvY3VtZW50Q2xpY2spfWhhbmRsZUdsb2JhbENsaWNrPShCcih0aGlzLHllKSxVPT57VS5zdG9wUHJvcGFnYXRpb24oKX0pO2hhbmRsZURvY3VtZW50Q2xpY2s9KCk9Pnt0aGlzLmFjdGl2ZU1lbnU9bnVsbCx0aGlzLmZvY3VzZWREcm9wZG93bkl0ZW09LTF9O2hhbmRsZURyb3Bkb3duS2V5ZG93bihVLHEsaWUpe2xldCB3ZT1xLmZpbHRlcihnZT0+ISgiZGl2aWRlciJpbiBnZSYmZ2UuZGl2aWRlcikpO3N3aXRjaChVLmtleSl7Y2FzZSJBcnJvd0Rvd24iOlUucHJldmVudERlZmF1bHQoKTtsZXQgZ2U9dGhpcy5maW5kTmV4dFZhbGlkSXRlbShxLHRoaXMuZm9jdXNlZERyb3Bkb3duSXRlbSwxKTtnZSE9PS0xJiYodGhpcy5mb2N1c2VkRHJvcGRvd25JdGVtPWdlKTticmVhaztjYXNlIkFycm93VXAiOlUucHJldmVudERlZmF1bHQoKTtsZXQgQWU9dGhpcy5maW5kTmV4dFZhbGlkSXRlbShxLHRoaXMuZm9jdXNlZERyb3Bkb3duSXRlbSwtMSk7QWUhPT0tMSYmKHRoaXMuZm9jdXNlZERyb3Bkb3duSXRlbT1BZSk7YnJlYWs7Y2FzZSJFbnRlciI6aWYoVS5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuZm9jdXNlZERyb3Bkb3duSXRlbSE9PS0xKXtsZXQgT2U9d2VbdGhpcy5mb2N1c2VkRHJvcGRvd25JdGVtXTtPZSYmImFjdGlvbiJpbiBPZSYmIU9lLmRpc2FibGVkJiZ0aGlzLmhhbmRsZURyb3Bkb3duSXRlbUNsaWNrKE9lKX1icmVhaztjYXNlIkhvbWUiOlUucHJldmVudERlZmF1bHQoKTtsZXQgeGU9dGhpcy5maW5kTmV4dFZhbGlkSXRlbShxLC0xLDEpO3hlIT09LTEmJih0aGlzLmZvY3VzZWREcm9wZG93bkl0ZW09eGUpO2JyZWFrO2Nhc2UiRW5kIjpVLnByZXZlbnREZWZhdWx0KCk7bGV0IG5lPXRoaXMuZmluZE5leHRWYWxpZEl0ZW0ocSxxLmxlbmd0aCwtMSk7bmUhPT0tMSYmKHRoaXMuZm9jdXNlZERyb3Bkb3duSXRlbT1uZSk7YnJlYWs7Y2FzZSJFc2NhcGUiOlUucHJldmVudERlZmF1bHQoKSx0aGlzLmFjdGl2ZU1lbnU9bnVsbCx0aGlzLmZvY3VzZWREcm9wZG93bkl0ZW09LTE7bGV0IExlPXRoaXMucmVuZGVyUm9vdC5xdWVyeVNlbGVjdG9yKCIubWVudUl0ZW0uYWN0aXZlIik7TGUmJkxlLmZvY3VzKCk7YnJlYWt9fWZpbmROZXh0VmFsaWRJdGVtKFUscSxpZSl7bGV0IHdlPXEraWU7Zm9yKDt3ZT49MCYmd2U8VS5sZW5ndGg7KXtsZXQgZ2U9VVt3ZV07aWYoISgiZGl2aWRlciJpbiBnZSYmZ2UuZGl2aWRlcikmJiEoImRpc2FibGVkImluIGdlJiZnZS5kaXNhYmxlZCkpcmV0dXJuIHdlO3dlKz1pZX1yZXR1cm4tMX1mb2N1c05leHRNZW51SXRlbShVLHEpe2xldCBpZT1BcnJheS5mcm9tKHRoaXMucmVuZGVyUm9vdC5xdWVyeVNlbGVjdG9yQWxsKCIubWVudUl0ZW0iKSksd2U9aWUuZmluZEluZGV4KHhlPT54ZS5nZXRBdHRyaWJ1dGUoImRhdGEtaXRlbS1pZCIpPT09VSk7aWYod2U9PT0tMSlyZXR1cm47bGV0IGdlPXdlK3E7Z2U8MD9nZT1pZS5sZW5ndGgtMTpnZT49aWUubGVuZ3RoJiYoZ2U9MCk7bGV0IEFlPTA7Zm9yKDtBZTxpZS5sZW5ndGg7KXtsZXQgeGU9aWVbZ2VdO2lmKCF4ZS5oYXNBdHRyaWJ1dGUoImRpc2FibGVkIikpe3hlLmZvY3VzKCksdGhpcy5hY3RpdmVNZW51JiYodGhpcy5hY3RpdmVNZW51PW51bGwsdGhpcy5mb2N1c2VkRHJvcGRvd25JdGVtPS0xKTticmVha31nZT0oZ2UrcStpZS5sZW5ndGgpJWllLmxlbmd0aCxBZSsrfX1zdGF0aWN7QnIoYSxyKX19O3JldHVybiAkZT1hfSkoKX0pO3ZhciBSbHQ9bCgoKT0+e0lsdCgpfSk7dmFyIHBFcixoRXIsbUVyPWwoKCk9PntTZSgpO3phKCk7aEVyPSgpPT5TKHBFcnx8KHBFcj1laChbYAogICAgPGRlZXMtZGVtb3dyYXBwZXI+CiAgICAgIDxzdHlsZT4KICAgICAgICAuZGVtby1jb250YWluZXIgewogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgICBnYXA6IDI0cHg7CiAgICAgICAgICBwYWRkaW5nOiAyNHB4OwogICAgICAgICAgYmFja2dyb3VuZDogIzFhMWExYTsKICAgICAgICB9CgogICAgICAgIC5kZW1vLXNlY3Rpb24gewogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgICBnYXA6IDhweDsKICAgICAgICB9CgogICAgICAgIC5kZW1vLWxhYmVsIHsKICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICAgIGNvbG9yOiAjNzM3MzczOwogICAgICAgICAgZm9udC1mYW1pbHk6ICdHZWlzdCBTYW5zJywgc2Fucy1zZXJpZjsKICAgICAgICB9CgogICAgICAgIC5kZW1vLWJvdHRvbWJhci13cmFwcGVyIHsKICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGhzbCgwIDAlIDIwJSk7CiAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIH0KICAgICAgPC9zdHlsZT4KICAgICAgPGRpdiBjbGFzcz0iZGVtby1jb250YWluZXIiPgogICAgICAgIDxkaXYgY2xhc3M9ImRlbW8tc2VjdGlvbiI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJkZW1vLWxhYmVsIj5Cb3R0b20gYmFyIHdpdGggc3RhdHVzIHdpZGdldHMgYW5kIGFjdGlvbnM8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImRlbW8tYm90dG9tYmFyLXdyYXBwZXIiPgogICAgICAgICAgICA8ZGVlcy1hcHB1aS1ib3R0b21iYXIKICAgICAgICAgICAgICBpZD0iZGVtby1ib3R0b21iYXIiCiAgICAgICAgICAgID48L2RlZXMtYXBwdWktYm90dG9tYmFyPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CgogICAgICAgIDxkaXYgY2xhc3M9ImRlbW8tc2VjdGlvbiI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJkZW1vLWxhYmVsIj5Db250cm9sczwvZGl2PgogICAgICAgICAgPGRpdiBzdHlsZT0iZGlzcGxheTogZmxleDsgZ2FwOiA4cHg7IGZsZXgtd3JhcDogd3JhcDsiPgogICAgICAgICAgICA8YnV0dG9uIG9uY2xpY2s9ImFkZFN1Y2Nlc3NXaWRnZXQoKSI+QWRkIFN1Y2Nlc3MgV2lkZ2V0PC9idXR0b24+CiAgICAgICAgICAgIDxidXR0b24gb25jbGljaz0iYWRkV2FybmluZ1dpZGdldCgpIj5BZGQgV2FybmluZyBXaWRnZXQ8L2J1dHRvbj4KICAgICAgICAgICAgPGJ1dHRvbiBvbmNsaWNrPSJhZGRFcnJvcldpZGdldCgpIj5BZGQgRXJyb3IgV2lkZ2V0PC9idXR0b24+CiAgICAgICAgICAgIDxidXR0b24gb25jbGljaz0iYWRkTG9hZGluZ1dpZGdldCgpIj5BZGQgTG9hZGluZyBXaWRnZXQ8L2J1dHRvbj4KICAgICAgICAgICAgPGJ1dHRvbiBvbmNsaWNrPSJhZGRSaWdodFdpZGdldCgpIj5BZGQgUmlnaHQgV2lkZ2V0PC9idXR0b24+CiAgICAgICAgICAgIDxidXR0b24gb25jbGljaz0iYWRkQWN0aW9uKCkiPkFkZCBBY3Rpb248L2J1dHRvbj4KICAgICAgICAgICAgPGJ1dHRvbiBvbmNsaWNrPSJjbGVhckFsbCgpIj5DbGVhciBBbGw8L2J1dHRvbj4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgICAgPHNjcmlwdCB0eXBlPSJtb2R1bGUiPgogICAgICAgIGNvbnN0IGJvdHRvbWJhciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkZW1vLWJvdHRvbWJhcicpOwoKICAgICAgICAvLyBXYWl0IGZvciBjb21wb25lbnQgdG8gaW5pdGlhbGl6ZQogICAgICAgIGF3YWl0IGJvdHRvbWJhci51cGRhdGVDb21wbGV0ZTsKCiAgICAgICAgLy8gQWRkIGluaXRpYWwgd2lkZ2V0cwogICAgICAgIGJvdHRvbWJhci5hZGRXaWRnZXQoewogICAgICAgICAgaWQ6ICdzdGF0dXMnLAogICAgICAgICAgaWNvbk5hbWU6ICdsdWNpZGU6YWN0aXZpdHknLAogICAgICAgICAgbGFiZWw6ICdTeXN0ZW0gT25saW5lJywKICAgICAgICAgIHN0YXR1czogJ3N1Y2Nlc3MnLAogICAgICAgICAgdG9vbHRpcDogJ0FsbCBzeXN0ZW1zIG9wZXJhdGlvbmFsJywKICAgICAgICAgIG9uQ2xpY2s6ICgpID0+IGNvbnNvbGUubG9nKCdTdGF0dXMgY2xpY2tlZCcpLAogICAgICAgICAgY29udGV4dE1lbnVJdGVtczogWwogICAgICAgICAgICB7IG5hbWU6ICdWaWV3IERldGFpbHMnLCBpY29uTmFtZTogJ2x1Y2lkZTppbmZvJywgYWN0aW9uOiAoKSA9PiBhbGVydCgnU3lzdGVtIGRldGFpbHMnKSB9LAogICAgICAgICAgICB7IGRpdmlkZXI6IHRydWUgfSwKICAgICAgICAgICAgeyBuYW1lOiAnUmVmcmVzaCBTdGF0dXMnLCBpY29uTmFtZTogJ2x1Y2lkZTpyZWZyZXNoQ3cnLCBhY3Rpb246ICgpID0+IGFsZXJ0KCdSZWZyZXNoaW5nLi4uJykgfSwKICAgICAgICAgIF0sCiAgICAgICAgfSk7CgogICAgICAgIGJvdHRvbWJhci5hZGRXaWRnZXQoewogICAgICAgICAgaWQ6ICdub3RpZmljYXRpb25zJywKICAgICAgICAgIGljb25OYW1lOiAnbHVjaWRlOmJlbGwnLAogICAgICAgICAgbGFiZWw6ICczIG5vdGlmaWNhdGlvbnMnLAogICAgICAgICAgc3RhdHVzOiAnd2FybmluZycsCiAgICAgICAgICB0b29sdGlwOiAnWW91IGhhdmUgdW5yZWFkIG5vdGlmaWNhdGlvbnMnLAogICAgICAgICAgb25DbGljazogKCkgPT4gY29uc29sZS5sb2coJ05vdGlmaWNhdGlvbnMgY2xpY2tlZCcpLAogICAgICAgIH0pOwoKICAgICAgICBib3R0b21iYXIuYWRkV2lkZ2V0KHsKICAgICAgICAgIGlkOiAndmVyc2lvbicsCiAgICAgICAgICBpY29uTmFtZTogJ2x1Y2lkZTpnaXRCcmFuY2gnLAogICAgICAgICAgbGFiZWw6ICd2MS4yLjMnLAogICAgICAgICAgdG9vbHRpcDogJ0N1cnJlbnQgdmVyc2lvbicsCiAgICAgICAgICBwb3NpdGlvbjogJ3JpZ2h0JywKICAgICAgICAgIG9uQ2xpY2s6ICgpID0+IGNvbnNvbGUubG9nKCdWZXJzaW9uIGNsaWNrZWQnKSwKICAgICAgICB9KTsKCiAgICAgICAgLy8gQWRkIGluaXRpYWwgYWN0aW9ucwogICAgICAgIGJvdHRvbWJhci5hZGRBY3Rpb24oewogICAgICAgICAgaWQ6ICdzZXR0aW5ncycsCiAgICAgICAgICBpY29uTmFtZTogJ2x1Y2lkZTpzZXR0aW5ncycsCiAgICAgICAgICB0b29sdGlwOiAnU2V0dGluZ3MnLAogICAgICAgICAgcG9zaXRpb246ICdyaWdodCcsCiAgICAgICAgICBvbkNsaWNrOiAoKSA9PiBhbGVydCgnU2V0dGluZ3MgY2xpY2tlZCcpLAogICAgICAgIH0pOwoKICAgICAgICBib3R0b21iYXIuYWRkQWN0aW9uKHsKICAgICAgICAgIGlkOiAnaGVscCcsCiAgICAgICAgICBpY29uTmFtZTogJ2x1Y2lkZTpoZWxwQ2lyY2xlJywKICAgICAgICAgIHRvb2x0aXA6ICdIZWxwJywKICAgICAgICAgIHBvc2l0aW9uOiAncmlnaHQnLAogICAgICAgICAgb25DbGljazogKCkgPT4gYWxlcnQoJ0hlbHAgY2xpY2tlZCcpLAogICAgICAgIH0pOwoKICAgICAgICAvLyBEZW1vIGNvbnRyb2wgZnVuY3Rpb25zCiAgICAgICAgbGV0IHdpZGdldENvdW50ZXIgPSAwOwogICAgICAgIGxldCBhY3Rpb25Db3VudGVyID0gMDsKCiAgICAgICAgd2luZG93LmFkZFN1Y2Nlc3NXaWRnZXQgPSAoKSA9PiB7CiAgICAgICAgICB3aWRnZXRDb3VudGVyKys7CiAgICAgICAgICBib3R0b21iYXIuYWRkV2lkZ2V0KHsKICAgICAgICAgICAgaWQ6ICdzdWNjZXNzLScgKyB3aWRnZXRDb3VudGVyLAogICAgICAgICAgICBpY29uTmFtZTogJ2x1Y2lkZTpjaGVja0NpcmNsZScsCiAgICAgICAgICAgIGxhYmVsOiAnU3VjY2VzcyAnICsgd2lkZ2V0Q291bnRlciwKICAgICAgICAgICAgc3RhdHVzOiAnc3VjY2VzcycsCiAgICAgICAgICAgIHRvb2x0aXA6ICdTdWNjZXNzIHdpZGdldCcsCiAgICAgICAgICAgIG9uQ2xpY2s6ICgpID0+IGJvdHRvbWJhci5yZW1vdmVXaWRnZXQoJ3N1Y2Nlc3MtJyArIHdpZGdldENvdW50ZXIpLAogICAgICAgICAgfSk7CiAgICAgICAgfTsKCiAgICAgICAgd2luZG93LmFkZFdhcm5pbmdXaWRnZXQgPSAoKSA9PiB7CiAgICAgICAgICB3aWRnZXRDb3VudGVyKys7CiAgICAgICAgICBib3R0b21iYXIuYWRkV2lkZ2V0KHsKICAgICAgICAgICAgaWQ6ICd3YXJuaW5nLScgKyB3aWRnZXRDb3VudGVyLAogICAgICAgICAgICBpY29uTmFtZTogJ2x1Y2lkZTphbGVydFRyaWFuZ2xlJywKICAgICAgICAgICAgbGFiZWw6ICdXYXJuaW5nICcgKyB3aWRnZXRDb3VudGVyLAogICAgICAgICAgICBzdGF0dXM6ICd3YXJuaW5nJywKICAgICAgICAgICAgdG9vbHRpcDogJ1dhcm5pbmcgd2lkZ2V0JywKICAgICAgICAgICAgb25DbGljazogKCkgPT4gYm90dG9tYmFyLnJlbW92ZVdpZGdldCgnd2FybmluZy0nICsgd2lkZ2V0Q291bnRlciksCiAgICAgICAgICB9KTsKICAgICAgICB9OwoKICAgICAgICB3aW5kb3cuYWRkRXJyb3JXaWRnZXQgPSAoKSA9PiB7CiAgICAgICAgICB3aWRnZXRDb3VudGVyKys7CiAgICAgICAgICBib3R0b21iYXIuYWRkV2lkZ2V0KHsKICAgICAgICAgICAgaWQ6ICdlcnJvci0nICsgd2lkZ2V0Q291bnRlciwKICAgICAgICAgICAgaWNvbk5hbWU6ICdsdWNpZGU6eENpcmNsZScsCiAgICAgICAgICAgIGxhYmVsOiAnRXJyb3IgJyArIHdpZGdldENvdW50ZXIsCiAgICAgICAgICAgIHN0YXR1czogJ2Vycm9yJywKICAgICAgICAgICAgdG9vbHRpcDogJ0Vycm9yIHdpZGdldCcsCiAgICAgICAgICAgIG9uQ2xpY2s6ICgpID0+IGJvdHRvbWJhci5yZW1vdmVXaWRnZXQoJ2Vycm9yLScgKyB3aWRnZXRDb3VudGVyKSwKICAgICAgICAgIH0pOwogICAgICAgIH07CgogICAgICAgIHdpbmRvdy5hZGRMb2FkaW5nV2lkZ2V0ID0gKCkgPT4gewogICAgICAgICAgd2lkZ2V0Q291bnRlcisrOwogICAgICAgICAgY29uc3QgaWQgPSAnbG9hZGluZy0nICsgd2lkZ2V0Q291bnRlcjsKICAgICAgICAgIGJvdHRvbWJhci5hZGRXaWRnZXQoewogICAgICAgICAgICBpZDogaWQsCiAgICAgICAgICAgIGljb25OYW1lOiAnbHVjaWRlOmxvYWRlcjInLAogICAgICAgICAgICBsYWJlbDogJ0xvYWRpbmcuLi4nLAogICAgICAgICAgICBzdGF0dXM6ICdhY3RpdmUnLAogICAgICAgICAgICBsb2FkaW5nOiB0cnVlLAogICAgICAgICAgICB0b29sdGlwOiAnTG9hZGluZyBpbiBwcm9ncmVzcycsCiAgICAgICAgICB9KTsKCiAgICAgICAgICAvLyBTaW11bGF0ZSBjb21wbGV0aW9uIGFmdGVyIDMgc2Vjb25kcwogICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7CiAgICAgICAgICAgIGJvdHRvbWJhci51cGRhdGVXaWRnZXQoaWQsIHsKICAgICAgICAgICAgICBpY29uTmFtZTogJ2x1Y2lkZTpjaGVjaycsCiAgICAgICAgICAgICAgbGFiZWw6ICdEb25lIScsCiAgICAgICAgICAgICAgc3RhdHVzOiAnc3VjY2VzcycsCiAgICAgICAgICAgICAgbG9hZGluZzogZmFsc2UsCiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSwgMzAwMCk7CiAgICAgICAgfTsKCiAgICAgICAgd2luZG93LmFkZFJpZ2h0V2lkZ2V0ID0gKCkgPT4gewogICAgICAgICAgd2lkZ2V0Q291bnRlcisrOwogICAgICAgICAgYm90dG9tYmFyLmFkZFdpZGdldCh7CiAgICAgICAgICAgIGlkOiAncmlnaHQtJyArIHdpZGdldENvdW50ZXIsCiAgICAgICAgICAgIGljb25OYW1lOiAnbHVjaWRlOmluZm8nLAogICAgICAgICAgICBsYWJlbDogJ1JpZ2h0ICcgKyB3aWRnZXRDb3VudGVyLAogICAgICAgICAgICBwb3NpdGlvbjogJ3JpZ2h0JywKICAgICAgICAgICAgb25DbGljazogKCkgPT4gYm90dG9tYmFyLnJlbW92ZVdpZGdldCgncmlnaHQtJyArIHdpZGdldENvdW50ZXIpLAogICAgICAgICAgfSk7CiAgICAgICAgfTsKCiAgICAgICAgd2luZG93LmFkZEFjdGlvbiA9ICgpID0+IHsKICAgICAgICAgIGFjdGlvbkNvdW50ZXIrKzsKICAgICAgICAgIGJvdHRvbWJhci5hZGRBY3Rpb24oewogICAgICAgICAgICBpZDogJ2FjdGlvbi0nICsgYWN0aW9uQ291bnRlciwKICAgICAgICAgICAgaWNvbk5hbWU6ICdsdWNpZGU6emFwJywKICAgICAgICAgICAgdG9vbHRpcDogJ0FjdGlvbiAnICsgYWN0aW9uQ291bnRlciwKICAgICAgICAgICAgb25DbGljazogKCkgPT4gewogICAgICAgICAgICAgIGFsZXJ0KCdBY3Rpb24gJyArIGFjdGlvbkNvdW50ZXIgKyAnIGNsaWNrZWQnKTsKICAgICAgICAgICAgICBib3R0b21iYXIucmVtb3ZlQWN0aW9uKCdhY3Rpb24tJyArIGFjdGlvbkNvdW50ZXIpOwogICAgICAgICAgICB9LAogICAgICAgICAgfSk7CiAgICAgICAgfTsKCiAgICAgICAgd2luZG93LmNsZWFyQWxsID0gKCkgPT4gewogICAgICAgICAgYm90dG9tYmFyLmNsZWFyV2lkZ2V0cygpOwogICAgICAgICAgYm90dG9tYmFyLmNsZWFyQWN0aW9ucygpOwogICAgICAgICAgd2lkZ2V0Q291bnRlciA9IDA7CiAgICAgICAgICBhY3Rpb25Db3VudGVyID0gMDsKICAgICAgICB9OwogICAgICA8XC9zY3JpcHQ+CiAgICA8L2RlZXMtZGVtb3dyYXBwZXI+CiAgYF0pKSl9KTt2YXIgQmx0LGNaLGdFcixIbHQ9bCgoKT0+e1NlKCk7b3QoKTticigpO2JpKCk7bUVyKCk7Qmx0PWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sY1o9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LGdFcj0oKCk9PntsZXQgZT1bemUoImRlZXMtYXBwdWktYm90dG9tYmFyIildLHQscj1bXSxhLGk9RGUsbyxuPVtdLHM9W10sYyxkPVtdLGY9W107dmFyIHU9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCBwPXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO289W3JlKCldLGM9W3JlKCldLEJsdCh0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6IndpZGdldHMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmg9PiJ3aWRnZXRzImluIGgsZ2V0Omg9Pmgud2lkZ2V0cyxzZXQ6KGgsYik9PntoLndpZGdldHM9Yn19LG1ldGFkYXRhOnB9LG4scyksQmx0KHRoaXMsbnVsbCxjLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiYWN0aW9ucyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6aD0+ImFjdGlvbnMiaW4gaCxnZXQ6aD0+aC5hY3Rpb25zLHNldDooaCxiKT0+e2guYWN0aW9ucz1ifX0sbWV0YWRhdGE6cH0sZCxmKSxCbHQobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6cH0sbnVsbCxyKSx1PWE9dC52YWx1ZSxwJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnB9KX1zdGF0aWMgZGVtbz1oRXI7c3RhdGljIGRlbW9Hcm91cHM9WyJBcHAgVUkiXTsjZT1jWih0aGlzLG4sW10pO2dldCB3aWRnZXRzKCl7cmV0dXJuIHRoaXMuI2V9c2V0IHdpZGdldHMocCl7dGhpcy4jZT1wfSN0PShjWih0aGlzLHMpLGNaKHRoaXMsZCxbXSkpO2dldCBhY3Rpb25zKCl7cmV0dXJuIHRoaXMuI3R9c2V0IGFjdGlvbnMocCl7dGhpcy4jdD1wfXN0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgOmhvc3QgewogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIGhlaWdodDogMjRweDsKICAgICAgICBmbGV4LXNocmluazogMDsKICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTsKICAgICAgfQoKICAgICAgLmJvdHRvbS1iYXIgewogICAgICAgIGhlaWdodDogMjRweDsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgcGFkZGluZzogMCA4cHg7CiAgICAgICAgZ2FwOiA0cHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk0JSkiLCJoc2woMCAwJSA2JSkiKX07CiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4NSUpIiwiaHNsKDAgMCUgMTUlKSIpfTsKICAgICAgICBmb250LXNpemU6IDExcHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA0MCUpIiwiaHNsKDAgMCUgNjAlKSIpfTsKICAgICAgfQoKICAgICAgLndpZGdldCB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogNHB4OwogICAgICAgIHBhZGRpbmc6IDJweCA2cHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4OwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMTVzIGVhc2UsIGNvbG9yIDAuMTVzIGVhc2U7CiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKICAgICAgfQoKICAgICAgLndpZGdldDpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDg4JSkiLCJoc2woMCAwJSAxMiUpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMjAlKSIsImhzbCgwIDAlIDgwJSkiKX07CiAgICAgIH0KCiAgICAgIC53aWRnZXQgZGVlcy1pY29uIHsKICAgICAgICBmbGV4LXNocmluazogMDsKICAgICAgfQoKICAgICAgLndpZGdldC1zZXBhcmF0b3IgewogICAgICAgIHdpZHRoOiAxcHg7CiAgICAgICAgaGVpZ2h0OiAxNHB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4MCUpIiwiaHNsKDAgMCUgMjAlKSIpfTsKICAgICAgICBtYXJnaW46IDAgNHB4OwogICAgICB9CgogICAgICAvKiBTdGF0dXMgY29sb3JzIG1hdGNoaW5nIGRlZXMtd29ya3NwYWNlLWJvdHRvbWJhciAqLwogICAgICAud2lkZ2V0LmFjdGl2ZSB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjEwIDEwMCUgNDUlKSIsImhzbCgyMTAgMTAwJSA2MCUpIil9OwogICAgICB9CgogICAgICAud2lkZ2V0LnN1Y2Nlc3MgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDE0MiA3MCUgMzUlKSIsImhzbCgxNDIgNzAlIDUwJSkiKX07CiAgICAgIH0KCiAgICAgIC53aWRnZXQud2FybmluZyB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMzggOTIlIDQ1JSkiLCJoc2woMzggOTIlIDU1JSkiKX07CiAgICAgIH0KCiAgICAgIC53aWRnZXQuZXJyb3IgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgNzAlIDUwJSkiLCJoc2woMCA3MCUgNjAlKSIpfTsKICAgICAgfQoKICAgICAgQGtleWZyYW1lcyBzcGluIHsKICAgICAgICBmcm9tIHsgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH0KICAgICAgICB0byB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0KICAgICAgfQoKICAgICAgLnNwaW5uaW5nIHsKICAgICAgICBhbmltYXRpb246IHNwaW4gMXMgbGluZWFyIGluZmluaXRlOwogICAgICB9CgogICAgICAuc3BhY2VyIHsKICAgICAgICBmbGV4OiAxOwogICAgICB9CgogICAgICAuYWN0aW9uLWJ1dHRvbiB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIHdpZHRoOiAyMHB4OwogICAgICAgIGhlaWdodDogMjBweDsKICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xNXMgZWFzZTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDQwJSkiLCJoc2woMCAwJSA2MCUpIil9OwogICAgICB9CgogICAgICAuYWN0aW9uLWJ1dHRvbjpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDg4JSkiLCJoc2woMCAwJSAxMiUpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMjAlKSIsImhzbCgwIDAlIDgwJSkiKX07CiAgICAgIH0KCiAgICAgIC5hY3Rpb24tYnV0dG9uLmRpc2FibGVkIHsKICAgICAgICBvcGFjaXR5OiAwLjU7CiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsKICAgICAgfQoKICAgICAgLmFjdGlvbi1idXR0b24uZGlzYWJsZWQ6aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNDAlKSIsImhzbCgwIDAlIDYwJSkiKX07CiAgICAgIH0KICAgIGBdO3JlbmRlcigpe2xldCBwPXRoaXMud2lkZ2V0cy5maWx0ZXIoZz0+Zy5wb3NpdGlvbiE9PSJyaWdodCIpLnNvcnQoKGcsdik9PihnLm9yZGVyfHwwKS0odi5vcmRlcnx8MCkpLGg9dGhpcy53aWRnZXRzLmZpbHRlcihnPT5nLnBvc2l0aW9uPT09InJpZ2h0Iikuc29ydCgoZyx2KT0+KGcub3JkZXJ8fDApLSh2Lm9yZGVyfHwwKSksYj10aGlzLmFjdGlvbnMuZmlsdGVyKGc9PmcucG9zaXRpb249PT0ibGVmdCIpLHg9dGhpcy5hY3Rpb25zLmZpbHRlcihnPT5nLnBvc2l0aW9uIT09ImxlZnQiKTtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0iYm90dG9tLWJhciI+CiAgICAgICAgPCEtLSBMZWZ0IGFjdGlvbnMgLS0+CiAgICAgICAgJHtiLm1hcChnPT50aGlzLnJlbmRlckFjdGlvbihnKSl9CgogICAgICAgIDwhLS0gTGVmdCB3aWRnZXRzIC0tPgogICAgICAgICR7cC5tYXAoKGcsdik9PlNgCiAgICAgICAgICAke3Y+MHx8Yi5sZW5ndGg+MD9TYDxkaXYgY2xhc3M9IndpZGdldC1zZXBhcmF0b3IiPjwvZGl2PmA6IiJ9CiAgICAgICAgICAke3RoaXMucmVuZGVyV2lkZ2V0KGcpfQogICAgICAgIGApfQoKICAgICAgICA8ZGl2IGNsYXNzPSJzcGFjZXIiPjwvZGl2PgoKICAgICAgICA8IS0tIFJpZ2h0IHdpZGdldHMgLS0+CiAgICAgICAgJHtoLm1hcCgoZyx2KT0+U2AKICAgICAgICAgICR7dGhpcy5yZW5kZXJXaWRnZXQoZyl9CiAgICAgICAgICAke3Y8aC5sZW5ndGgtMXx8eC5sZW5ndGg+MD9TYDxkaXYgY2xhc3M9IndpZGdldC1zZXBhcmF0b3IiPjwvZGl2PmA6IiJ9CiAgICAgICAgYCl9CgogICAgICAgIDwhLS0gUmlnaHQgYWN0aW9ucyAtLT4KICAgICAgICAke3gubWFwKGc9PnRoaXMucmVuZGVyQWN0aW9uKGcpKX0KICAgICAgPC9kaXY+CiAgICBgfXJlbmRlcldpZGdldChwKXtsZXQgaD1wLnN0YXR1cyYmcC5zdGF0dXMhPT0iaWRsZSI/cC5zdGF0dXM6IiIsYj1wLmljb25OYW1lP3AuaWNvbk5hbWUuc3RhcnRzV2l0aCgibHVjaWRlOiIpP3AuaWNvbk5hbWU6YGx1Y2lkZToke3AuaWNvbk5hbWV9YDoiIjtyZXR1cm4gU2AKICAgICAgPGRpdgogICAgICAgIGNsYXNzPSJ3aWRnZXQgJHtofSIKICAgICAgICB0aXRsZT0iJHtwLnRvb2x0aXB8fCIifSIKICAgICAgICBAY2xpY2s9JHsoKT0+cC5vbkNsaWNrPy4oKX0KICAgICAgICBAY29udGV4dG1lbnU9JHt4PT50aGlzLmhhbmRsZVdpZGdldENvbnRleHRNZW51KHgscCl9CiAgICAgID4KICAgICAgICAke2I/U2AKICAgICAgICAgIDxkZWVzLWljb24KICAgICAgICAgICAgLmljb249JHtifQogICAgICAgICAgICBpY29uU2l6ZT0iMTIiCiAgICAgICAgICAgIGNsYXNzPSIke3AubG9hZGluZz8ic3Bpbm5pbmciOiIifSIKICAgICAgICAgID48L2RlZXMtaWNvbj4KICAgICAgICBgOiIifQogICAgICAgICR7cC5sYWJlbD9TYDxzcGFuPiR7cC5sYWJlbH08L3NwYW4+YDoiIn0KICAgICAgPC9kaXY+CiAgICBgfXJlbmRlckFjdGlvbihwKXtsZXQgaD1wLmljb25OYW1lLnN0YXJ0c1dpdGgoImx1Y2lkZToiKT9wLmljb25OYW1lOmBsdWNpZGU6JHtwLmljb25OYW1lfWA7cmV0dXJuIFNgCiAgICAgIDxkaXYKICAgICAgICBjbGFzcz0iYWN0aW9uLWJ1dHRvbiAke3AuZGlzYWJsZWQ/ImRpc2FibGVkIjoiIn0iCiAgICAgICAgdGl0bGU9IiR7cC50b29sdGlwfHwiIn0iCiAgICAgICAgQGNsaWNrPSR7KCk9PiFwLmRpc2FibGVkJiZwLm9uQ2xpY2s/LigpfQogICAgICA+CiAgICAgICAgPGRlZXMtaWNvbgogICAgICAgICAgLmljb249JHtofQogICAgICAgICAgaWNvblNpemU9IjEyIgogICAgICAgID48L2RlZXMtaWNvbj4KICAgICAgPC9kaXY+CiAgICBgfWFzeW5jIGhhbmRsZVdpZGdldENvbnRleHRNZW51KHAsaCl7aWYoIWguY29udGV4dE1lbnVJdGVtc3x8aC5jb250ZXh0TWVudUl0ZW1zLmxlbmd0aD09PTApcmV0dXJuO3AucHJldmVudERlZmF1bHQoKTtsZXQgYj1bXTtmb3IobGV0IHggb2YgaC5jb250ZXh0TWVudUl0ZW1zKXguZGl2aWRlcj9iLnB1c2goe2RpdmlkZXI6ITB9KTpiLnB1c2goe25hbWU6eC5uYW1lLGljb25OYW1lOnguaWNvbk5hbWUsYWN0aW9uOmFzeW5jKCk9Pnthd2FpdCB4LmFjdGlvbigpfSxkaXNhYmxlZDp4LmRpc2FibGVkfSk7YXdhaXQgdHIub3BlbkNvbnRleHRNZW51V2l0aE9wdGlvbnMocCxiKX1hZGRXaWRnZXQocCl7dGhpcy53aWRnZXRzPXRoaXMud2lkZ2V0cy5maWx0ZXIoaD0+aC5pZCE9PXAuaWQpLHRoaXMud2lkZ2V0cz1bLi4udGhpcy53aWRnZXRzLHBdfXVwZGF0ZVdpZGdldChwLGgpe3RoaXMud2lkZ2V0cz10aGlzLndpZGdldHMubWFwKGI9PmIuaWQ9PT1wP3suLi5iLC4uLmh9OmIpfXJlbW92ZVdpZGdldChwKXt0aGlzLndpZGdldHM9dGhpcy53aWRnZXRzLmZpbHRlcihoPT5oLmlkIT09cCl9Z2V0V2lkZ2V0KHApe3JldHVybiB0aGlzLndpZGdldHMuZmluZChoPT5oLmlkPT09cCl9Y2xlYXJXaWRnZXRzKCl7dGhpcy53aWRnZXRzPVtdfWFkZEFjdGlvbihwKXt0aGlzLmFjdGlvbnM9dGhpcy5hY3Rpb25zLmZpbHRlcihoPT5oLmlkIT09cC5pZCksdGhpcy5hY3Rpb25zPVsuLi50aGlzLmFjdGlvbnMscF19cmVtb3ZlQWN0aW9uKHApe3RoaXMuYWN0aW9ucz10aGlzLmFjdGlvbnMuZmlsdGVyKGg9PmguaWQhPT1wKX1jbGVhckFjdGlvbnMoKXt0aGlzLmFjdGlvbnM9W119Y29uc3RydWN0b3IoKXtzdXBlciguLi5hcmd1bWVudHMpLGNaKHRoaXMsZil9c3RhdGlje2NaKGEscil9fTtyZXR1cm4gdT1hfSkoKX0pO3ZhciB4RXI9bCgoKT0+e0hsdCgpfSk7dmFyIGJFcix2RXI9bCgoKT0+e1NlKCk7YkVyPSgpPT5TYAogIDxzdHlsZT4KICAgICR7bGVgCiAgICAgIC5kZW1vLWJhY2tncm91bmQgewogICAgICAgIHBhZGRpbmc6IDI0cHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk1JSkiLCJoc2woMCAwJSA1JSkiKX07CiAgICAgICAgbWluLWhlaWdodDogMTAwdmg7CiAgICAgIH0KICAgICAgCiAgICAgIC5kZW1vLWNvbnRhaW5lciB7CiAgICAgICAgbWF4LXdpZHRoOiAxMjAwcHg7CiAgICAgICAgbWFyZ2luOiAwIGF1dG87CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGdhcDogMjRweDsKICAgICAgfQogICAgICAKICAgICAgLnNlY3Rpb24tdGl0bGUgewogICAgICAgIGZvbnQtc2l6ZTogMjRweDsKICAgICAgICBmb250LXdlaWdodDogNzAwOwogICAgICAgIG1hcmdpbjogMzJweCAwIDE2cHggMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDklKSIsImhzbCgwIDAlIDk1JSkiKX07CiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyNWVtOwogICAgICB9CiAgICAgIAogICAgICAuc2VjdGlvbi10aXRsZTpmaXJzdC1jaGlsZCB7CiAgICAgICAgbWFyZ2luLXRvcDogMDsKICAgICAgfQogICAgICAKICAgICAgLmdyaWQtbGF5b3V0IHsKICAgICAgICBkaXNwbGF5OiBncmlkOwogICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjsKICAgICAgICBnYXA6IDI0cHg7CiAgICAgIH0KICAgICAgCiAgICAgIC5ncmlkLTNjb2wgewogICAgICAgIGRpc3BsYXk6IGdyaWQ7CiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjsKICAgICAgICBnYXA6IDI0cHg7CiAgICAgIH0KICAgICAgCiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5NjhweCkgewogICAgICAgIC5ncmlkLTNjb2wgewogICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7CiAgICAgICAgfQogICAgICB9CiAgICAgIAogICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHsKICAgICAgICAuZ3JpZC1sYXlvdXQgewogICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7CiAgICAgICAgfQogICAgICB9CiAgICAgIAogICAgICBjb2RlIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgIHBhZGRpbmc6IDJweCA2cHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4OwogICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgfQogICAgYH0KICA8L3N0eWxlPgogIAogIDxkaXYgY2xhc3M9ImRlbW8tYmFja2dyb3VuZCI+CiAgICA8ZGl2IGNsYXNzPSJkZW1vLWNvbnRhaW5lciI+CiAgICAgIDxoMiBjbGFzcz0ic2VjdGlvbi10aXRsZSI+RGVmYXVsdCBQYW5lbHM8L2gyPgogICAgICAKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IlBhbmVsIENvbXBvbmVudCJ9IC5zdWJ0aXRsZT0keyJUaGUgZGVmYXVsdCBwYW5lbCB2YXJpYW50IHdpdGggc2hhZGNuLWluc3BpcmVkIHN0eWxpbmcifT4KICAgICAgICA8cD5UaGUgcGFuZWwgY29tcG9uZW50IGF1dG9tYXRpY2FsbHkgZm9sbG93cyB0aGUgdGhlbWUgYW5kIHByb3ZpZGVzIGNvbnNpc3RlbnQgc3R5bGluZyBmb3IgZ3JvdXBlZCBjb250ZW50LjwvcD4KICAgICAgICA8cD5JdCdzIHBlcmZlY3QgZm9yIGNyZWF0aW5nIHNlY3Rpb25zIGluIHlvdXIgYXBwbGljYXRpb24gd2l0aCBwcm9wZXIgc3BhY2luZyBhbmQgYm9yZGVycy48L3A+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgICAgCiAgICAgIDxkaXYgY2xhc3M9ImdyaWQtbGF5b3V0Ij4KICAgICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiRmVhdHVyZSBPdmVydmlldyJ9IC5zdWJ0aXRsZT0keyJLZXkgY2FwYWJpbGl0aWVzIn0+CiAgICAgICAgICA8cD5HcmlkIGxheW91dHMgd29yayBncmVhdCB3aXRoIHBhbmVscyBmb3IgY3JlYXRpbmcgZGFzaGJvYXJkcyBhbmQgZmVhdHVyZSBzZWN0aW9ucy48L3A+CiAgICAgICAgICA8ZGVlcy1idXR0b24+TGVhcm4gTW9yZTwvZGVlcy1idXR0b24+CiAgICAgICAgPC9kZWVzLXBhbmVsPgogICAgICAgIAogICAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyJRdWljayBBY3Rpb25zIn0gLnN1YnRpdGxlPSR7IkNvbW1vbiB0YXNrcyJ9PgogICAgICAgICAgPHA+RWFjaCBwYW5lbCBtYWludGFpbnMgY29uc2lzdGVudCBzcGFjaW5nIGFuZCBzdHlsaW5nIGFjcm9zcyB5b3VyIGFwcGxpY2F0aW9uLjwvcD4KICAgICAgICAgIDxkZWVzLWJ1dHRvbj5HZXQgU3RhcnRlZDwvZGVlcy1idXR0b24+CiAgICAgICAgPC9kZWVzLXBhbmVsPgogICAgICA8L2Rpdj4KICAgICAgCiAgICAgIDxoMiBjbGFzcz0ic2VjdGlvbi10aXRsZSI+UGFuZWwgVmFyaWFudHM8L2gyPgogICAgICAKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IkRlZmF1bHQgVmFyaWFudCJ9IC52YXJpYW50PSR7ImRlZmF1bHQifT4KICAgICAgICA8cD5UaGUgZGVmYXVsdCB2YXJpYW50IGhhcyBhIHdoaXRlIGJhY2tncm91bmQsIHN1YnRsZSBib3JkZXIsIGFuZCBtaW5pbWFsIHNoYWRvdy4gSXQncyB0aGUgc3RhbmRhcmQgY2hvaWNlIGZvciBtb3N0IGNvbnRlbnQuPC9wPgogICAgICAgIDxwPlVzZSA8Y29kZT52YXJpYW50PSJkZWZhdWx0IjwvY29kZT4gb3Igb21pdCB0aGUgdmFyaWFudCBwcm9wZXJ0eS48L3A+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgICAgCiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyJPdXRsaW5lIFZhcmlhbnQifSAuc3VidGl0bGU9JHsiVHJhbnNwYXJlbnQgYmFja2dyb3VuZCB3aXRoIGJvcmRlciJ9IC52YXJpYW50PSR7Im91dGxpbmUifT4KICAgICAgICA8cD5UaGUgb3V0bGluZSB2YXJpYW50IHJlbW92ZXMgdGhlIGJhY2tncm91bmQgY29sb3IgYW5kIHNoYWRvdywga2VlcGluZyBvbmx5IHRoZSBib3JkZXIuPC9wPgogICAgICAgIDxwPlVzZSA8Y29kZT52YXJpYW50PSJvdXRsaW5lIjwvY29kZT4gZm9yIGEgbGlnaHRlciB2aXN1YWwgd2VpZ2h0LjwvcD4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgICAKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7Ikdob3N0IFZhcmlhbnQifSAuc3VidGl0bGU9JHsiTWluaW1hbCBzdHlsaW5nIGZvciBzdWJ0bGUgc2VjdGlvbnMifSAudmFyaWFudD0keyJnaG9zdCJ9PgogICAgICAgIDxwPlRoZSBnaG9zdCB2YXJpYW50IGhhcyBubyBib3JkZXIgb3IgYmFja2dyb3VuZCBieSBkZWZhdWx0LCBvbmx5IHNob3dpbmcgYSBzdWJ0bGUgYmFja2dyb3VuZCBvbiBob3Zlci48L3A+CiAgICAgICAgPHA+VXNlIDxjb2RlPnZhcmlhbnQ9Imdob3N0IjwvY29kZT4gZm9yIHRoZSBtb3N0IG1pbmltYWwgYXBwZWFyYW5jZS48L3A+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgICAgCiAgICAgIDxoMiBjbGFzcz0ic2VjdGlvbi10aXRsZSI+UGFuZWwgU2l6ZXM8L2gyPgogICAgICAKICAgICAgPGRpdiBjbGFzcz0iZ3JpZC0zY29sIj4KICAgICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiU21hbGwgUGFuZWwifSAuc2l6ZT0keyJzbSJ9PgogICAgICAgICAgPHA+Q29tcGFjdCBwYWRkaW5nIGZvciBkZW5zZSBsYXlvdXRzLjwvcD4KICAgICAgICAgIDxwPlVzZSA8Y29kZT5zaXplPSJzbSI8L2NvZGU+PC9wPgogICAgICAgIDwvZGVlcy1wYW5lbD4KICAgICAgICAKICAgICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiTWVkaXVtIFBhbmVsIn0gLnNpemU9JHsibWQifT4KICAgICAgICAgIDxwPkRlZmF1bHQgc2l6ZSB3aXRoIGJhbGFuY2VkIHNwYWNpbmcuPC9wPgogICAgICAgICAgPHA+VXNlIDxjb2RlPnNpemU9Im1kIjwvY29kZT4gb3Igb21pdC48L3A+CiAgICAgICAgPC9kZWVzLXBhbmVsPgogICAgICAgIAogICAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyJMYXJnZSBQYW5lbCJ9IC5zaXplPSR7ImxnIn0+CiAgICAgICAgICA8cD5HZW5lcm91cyBwYWRkaW5nIGZvciBwcm9taW5lbnQgc2VjdGlvbnMuPC9wPgogICAgICAgICAgPHA+VXNlIDxjb2RlPnNpemU9ImxnIjwvY29kZT48L3A+CiAgICAgICAgPC9kZWVzLXBhbmVsPgogICAgICA8L2Rpdj4KICAgICAgCiAgICAgIDxoMiBjbGFzcz0ic2VjdGlvbi10aXRsZSI+Q29tcGxleCBFeGFtcGxlczwvaDI+CiAgICAgIAogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiRm9ybSBFeGFtcGxlIn0gLnN1YnRpdGxlPSR7IlBhbmVscyB3b3JrIGdyZWF0IGZvciBvcmdhbml6aW5nIGZvcm0gc2VjdGlvbnMifT4KICAgICAgICA8ZGVlcy1mb3JtPgogICAgICAgICAgPGRlZXMtaW5wdXQtdGV4dCAubGFiZWw9JHsiUHJvamVjdCBOYW1lIn0gLnJlcXVpcmVkPSR7ITB9PjwvZGVlcy1pbnB1dC10ZXh0PgogICAgICAgICAgPGRlZXMtaW5wdXQtdGV4dCAubGFiZWw9JHsiRGVzY3JpcHRpb24ifSAuaW5wdXRUeXBlPSR7InRleHRhcmVhIn0+PC9kZWVzLWlucHV0LXRleHQ+CiAgICAgICAgICA8ZGVlcy1pbnB1dC1kcm9wZG93biAKICAgICAgICAgICAgLmxhYmVsPSR7IkNhdGVnb3J5In0gCiAgICAgICAgICAgIC5vcHRpb25zPSR7W3tvcHRpb246IldlYiBEZXZlbG9wbWVudCIsa2V5OiJ3ZWIifSx7b3B0aW9uOiJNb2JpbGUgQXBwIixrZXk6Im1vYmlsZSJ9LHtvcHRpb246IkRlc2t0b3AgU29mdHdhcmUiLGtleToiZGVza3RvcCJ9XX0KICAgICAgICAgID48L2RlZXMtaW5wdXQtZHJvcGRvd24+CiAgICAgICAgICA8ZGVlcy1mb3JtLXN1Ym1pdD5DcmVhdGUgUHJvamVjdDwvZGVlcy1mb3JtLXN1Ym1pdD4KICAgICAgICA8L2RlZXMtZm9ybT4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgICAKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7Ik5lc3RlZCBQYW5lbHMifSAuc3VidGl0bGU9JHsiUGFuZWxzIGNhbiBiZSBuZXN0ZWQgZm9yIGhpZXJhcmNoaWNhbCBvcmdhbml6YXRpb24ifT4KICAgICAgICA8cD5Zb3UgY2FuIG5lc3QgcGFuZWxzIHRvIGNyZWF0ZSBtb3JlIGNvbXBsZXggbGF5b3V0czo8L3A+CiAgICAgICAgCiAgICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7Ik5lc3RlZCBQYW5lbCAxIn0gLnZhcmlhbnQ9JHsib3V0bGluZSJ9IC5zaXplPSR7InNtIn0+CiAgICAgICAgICA8cD5UaGlzIGlzIGEgbmVzdGVkIHBhbmVsIHdpdGggb3V0bGluZSB2YXJpYW50IGFuZCBzbWFsbCBzaXplLjwvcD4KICAgICAgICA8L2RlZXMtcGFuZWw+CiAgICAgICAgCiAgICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7Ik5lc3RlZCBQYW5lbCAyIn0gLnZhcmlhbnQ9JHsiZ2hvc3QifSAuc2l6ZT0keyJzbSJ9PgogICAgICAgICAgPHA+VGhpcyBpcyBhbm90aGVyIG5lc3RlZCBwYW5lbCB3aXRoIGdob3N0IHZhcmlhbnQuPC9wPgogICAgICAgIDwvZGVlcy1wYW5lbD4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgICAKICAgICAgPGgyIGNsYXNzPSJzZWN0aW9uLXRpdGxlIj5VbnRpdGxlZCBQYW5lbHM8L2gyPgogICAgICAKICAgICAgPGRlZXMtcGFuZWw+CiAgICAgICAgPHA+UGFuZWxzIHdvcmsgZ3JlYXQgZXZlbiB3aXRob3V0IGEgdGl0bGUgZm9yIHNpbXBsZSBjb250ZW50IGdyb3VwaW5nLjwvcD4KICAgICAgICA8cD5UaGV5IHByb3ZpZGUgdmlzdWFsIHNlcGFyYXRpb24gYW5kIGNvbnNpc3RlbnQgcGFkZGluZyB0aHJvdWdob3V0IHlvdXIgaW50ZXJmYWNlLjwvcD4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgICAKICAgICAgPGRpdiBjbGFzcz0iZ3JpZC1sYXlvdXQiPgogICAgICAgIDxkZWVzLXBhbmVsIC52YXJpYW50PSR7Im91dGxpbmUifT4KICAgICAgICAgIDxoNCBzdHlsZT0ibWFyZ2luLXRvcDogMDsiPkN1c3RvbSBDb250ZW50PC9oND4KICAgICAgICAgIDxwPllvdSBjYW4gYWRkIHlvdXIgb3duIGhlYWRpbmdzIGFuZCBzdHJ1Y3R1cmUgd2l0aGluIHVudGl0bGVkIHBhbmVscy48L3A+CiAgICAgICAgPC9kZWVzLXBhbmVsPgogICAgICAgIAogICAgICAgIDxkZWVzLXBhbmVsIC52YXJpYW50PSR7Imdob3N0In0+CiAgICAgICAgICA8aDQgc3R5bGU9Im1hcmdpbi10b3A6IDA7Ij5NaW5pbWFsIFN0eWxlPC9oND4KICAgICAgICAgIDxwPkdob3N0IHBhbmVscyB3aXRob3V0IHRpdGxlcyBjcmVhdGUgdmVyeSBzdWJ0bGUgY29udGVudCBzZWN0aW9ucy48L3A+CiAgICAgICAgPC9kZWVzLXBhbmVsPgogICAgICA8L2Rpdj4KICAgIDwvZGl2PgogIDwvZGl2PgpgfSk7dmFyIFJiYSxCYmEscWx0LEhiYSxYcix5OCxxYmEsamJhLHlFcixWYmEsVWJhLEJhbixIYW4sdW89bCgoKT0+e1NlKCk7UmJhPSJHZWlzdCBTYW5zIixCYmE9IkludGVsIE9uZSBNb25vIixxbHQ9YCcke1JiYX0nLCAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsICdTZWdvZSBVSScsICdSb2JvdG8nLCAnT3h5Z2VuJywgJ1VidW50dScsICdDYW50YXJlbGwnLCAnRmlyYSBTYW5zJywgJ0Ryb2lkIFNhbnMnLCAnSGVsdmV0aWNhIE5ldWUnLCBzYW5zLXNlcmlmYCxIYmE9YCcke0JiYX0nLCAnU0YgTW9ubycsICdNb25hY28nLCAnSW5jb25zb2xhdGEnLCAnRmlyYSBDb2RlJywgJ0ZpcmEgTW9ubycsICdEcm9pZCBTYW5zIE1vbm8nLCAnQ291cmllciBOZXcnLCBtb25vc3BhY2VgLFhyPWZyKHFsdCkseTg9ZnIoSGJhKSxxYmE9IkNhbCBTYW5zIixqYmE9YCcke3FiYX0nLCAke3FsdH1gLHlFcj1mcihqYmEpLFZiYT0iUm9ib3RvIFNsYWIiLFViYT1gJyR7VmJhfScsIEdlb3JnaWEsIHNlcmlmYCxCYW49ZnIoVWJhKSxIYW49ZnIoYAogIGZvbnQtZmFtaWx5OiAke3FsdH07CiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7CiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsKICBmb250LWZlYXR1cmUtc2V0dGluZ3M6ICdjdjExJywgJ3RudW0nLCAnY3YwNScgMTsKYCl9KTt2YXIgSDksSXMsd0VyLHQxPWwoKCk9PntTZSgpO3ZFcigpO3VvKCk7b3QoKTtIOT1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LElzPWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSx3RXI9KCgpPT57bGV0IGU9W3plKCJkZWVzLXBhbmVsIildLHQscj1bXSxhLGk9RGUsbyxuPVtdLHM9W10sYyxkPVtdLGY9W10sdSxwPVtdLGg9W10sYix4PVtdLGc9W10sdix3PVtdLE09W107dmFyIEY9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCBDPXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO289W2ooe3R5cGU6U3RyaW5nfSldLGM9W2ooe3R5cGU6U3RyaW5nfSldLHU9W2ooe3R5cGU6U3RyaW5nfSldLGI9W2ooe3R5cGU6U3RyaW5nfSldLHY9W2ooe2F0dHJpYnV0ZTohMX0pXSxIOSh0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InRpdGxlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczprPT4idGl0bGUiaW4gayxnZXQ6az0+ay50aXRsZSxzZXQ6KGssTik9PntrLnRpdGxlPU59fSxtZXRhZGF0YTpDfSxuLHMpLEg5KHRoaXMsbnVsbCxjLHtraW5kOiJhY2Nlc3NvciIsbmFtZToic3VidGl0bGUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOms9PiJzdWJ0aXRsZSJpbiBrLGdldDprPT5rLnN1YnRpdGxlLHNldDooayxOKT0+e2suc3VidGl0bGU9Tn19LG1ldGFkYXRhOkN9LGQsZiksSDkodGhpcyxudWxsLHUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ2YXJpYW50IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczprPT4idmFyaWFudCJpbiBrLGdldDprPT5rLnZhcmlhbnQsc2V0OihrLE4pPT57ay52YXJpYW50PU59fSxtZXRhZGF0YTpDfSxwLGgpLEg5KHRoaXMsbnVsbCxiLHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2l6ZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6az0+InNpemUiaW4gayxnZXQ6az0+ay5zaXplLHNldDooayxOKT0+e2suc2l6ZT1OfX0sbWV0YWRhdGE6Q30seCxnKSxIOSh0aGlzLG51bGwsdix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InJ1bkFmdGVyUmVuZGVyIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczprPT4icnVuQWZ0ZXJSZW5kZXIiaW4gayxnZXQ6az0+ay5ydW5BZnRlclJlbmRlcixzZXQ6KGssTik9PntrLnJ1bkFmdGVyUmVuZGVyPU59fSxtZXRhZGF0YTpDfSx3LE0pLEg5KG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOkN9LG51bGwsciksRj1hPXQudmFsdWUsQyYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpDfSl9c3RhdGljIGRlbW89YkVyO3N0YXRpYyBkZW1vR3JvdXBzPVsiTGF5b3V0Il07I2U9SXModGhpcyxuLCIiKTtnZXQgdGl0bGUoKXtyZXR1cm4gdGhpcy4jZX1zZXQgdGl0bGUoQyl7dGhpcy4jZT1DfSN0PShJcyh0aGlzLHMpLElzKHRoaXMsZCwiIikpO2dldCBzdWJ0aXRsZSgpe3JldHVybiB0aGlzLiN0fXNldCBzdWJ0aXRsZShDKXt0aGlzLiN0PUN9I3I9KElzKHRoaXMsZiksSXModGhpcyxwLCJkZWZhdWx0IikpO2dldCB2YXJpYW50KCl7cmV0dXJuIHRoaXMuI3J9c2V0IHZhcmlhbnQoQyl7dGhpcy4jcj1DfSNhPShJcyh0aGlzLGgpLElzKHRoaXMseCwibWQiKSk7Z2V0IHNpemUoKXtyZXR1cm4gdGhpcy4jYX1zZXQgc2l6ZShDKXt0aGlzLiNhPUN9I2k9KElzKHRoaXMsZyksSXModGhpcyx3LHZvaWQgMCkpO2dldCBydW5BZnRlclJlbmRlcigpe3JldHVybiB0aGlzLiNpfXNldCBydW5BZnRlclJlbmRlcihDKXt0aGlzLiNpPUN9c3RhdGljIHN0eWxlcz1bUGUsbS5kZWZhdWx0U3R5bGVzLGxlYAogICAgICAvKiBUT0RPOiBNaWdyYXRlIGhhcmRjb2RlZCB2YWx1ZXMgdG8gLS1kZWVzLSogQ1NTIHZhcmlhYmxlcyAqLwogICAgICA6aG9zdCB7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgZm9udC1mYW1pbHk6ICR7WHJ9OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAxMDAlKSIsImhzbCgwIDAlIDMuOSUpIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICBwYWRkaW5nOiAyNHB4OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OS44JSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTsKICAgICAgfQoKICAgICAgLyogVmFyaWFudDogZGVmYXVsdCAqLwogICAgICA6aG9zdChbdmFyaWFudD0iZGVmYXVsdCJdKSB7CiAgICAgICAgYm94LXNoYWRvdzogMCAxcHggMnB4IDAgaHNsKDAgMCUgMCUgLyAwLjA1KTsKICAgICAgfQoKICAgICAgLyogVmFyaWFudDogb3V0bGluZSAqLwogICAgICA6aG9zdChbdmFyaWFudD0ib3V0bGluZSJdKSB7CiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgICAgYm94LXNoYWRvdzogbm9uZTsKICAgICAgfQoKICAgICAgLyogVmFyaWFudDogZ2hvc3QgKi8KICAgICAgOmhvc3QoW3ZhcmlhbnQ9Imdob3N0Il0pIHsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OwogICAgICAgIGJveC1zaGFkb3c6IG5vbmU7CiAgICAgICAgcGFkZGluZzogMTZweDsKICAgICAgfQoKICAgICAgLyogU2l6ZSB2YXJpYXRpb25zICovCiAgICAgIDpob3N0KFtzaXplPSJzbSJdKSB7CiAgICAgICAgcGFkZGluZzogMTZweDsKICAgICAgfQoKICAgICAgOmhvc3QoW3NpemU9ImxnIl0pIHsKICAgICAgICBwYWRkaW5nOiAzMnB4OwogICAgICB9CgogICAgICAuaGVhZGVyIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4OwogICAgICB9CgogICAgICAuaGVhZGVyOmVtcHR5IHsKICAgICAgICBkaXNwbGF5OiBub25lOwogICAgICB9CgogICAgICAudGl0bGUgewogICAgICAgIG1hcmdpbjogMDsKICAgICAgICBmb250LXNpemU6IDE4cHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDklKSIsImhzbCgwIDAlIDk1JSkiKX07CiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyNWVtOwogICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7CiAgICAgIH0KCiAgICAgIC8qIFRpdGxlIHNpemUgdmFyaWF0aW9ucyAqLwogICAgICA6aG9zdChbc2l6ZT0ic20iXSkgLnRpdGxlIHsKICAgICAgICBmb250LXNpemU6IDE2cHg7CiAgICAgIH0KCiAgICAgIDpob3N0KFtzaXplPSJsZyJdKSAudGl0bGUgewogICAgICAgIGZvbnQtc2l6ZTogMjBweDsKICAgICAgfQoKICAgICAgLnN1YnRpdGxlIHsKICAgICAgICBtYXJnaW46IDRweCAwIDAgMDsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE1LjQgMTYuMyUgNTYuOSUpIiwiaHNsKDIxNSAyMC4yJSA1NS4xJSkiKX07CiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAwNmVtOwogICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7CiAgICAgIH0KCiAgICAgIC8qIFN1YnRpdGxlIHNpemUgdmFyaWF0aW9ucyAqLwogICAgICA6aG9zdChbc2l6ZT0ic20iXSkgLnN1YnRpdGxlIHsKICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgIH0KCiAgICAgIDpob3N0KFtzaXplPSJsZyJdKSAuc3VidGl0bGUgewogICAgICAgIGZvbnQtc2l6ZTogMTVweDsKICAgICAgICBtYXJnaW4tdG9wOiA2cHg7CiAgICAgIH0KCiAgICAgIC5jb250ZW50IHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuMyAyNSUgMjYuNyUpIiwiaHNsKDIxNy45IDEwLjYlIDg0LjklKSIpfTsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjsKICAgICAgfQoKICAgICAgLyogQ29udGVudCBzaXplIHZhcmlhdGlvbnMgKi8KICAgICAgOmhvc3QoW3NpemU9InNtIl0pIC5jb250ZW50IHsKICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgIH0KCiAgICAgIDpob3N0KFtzaXplPSJsZyJdKSAuY29udGVudCB7CiAgICAgICAgZm9udC1zaXplOiAxNXB4OwogICAgICB9CgogICAgICAvKiBSZW1vdmUgbWFyZ2lucyBmcm9tIGZpcnN0IGFuZCBsYXN0IGNoaWxkcmVuICovCiAgICAgIC5jb250ZW50IDo6c2xvdHRlZCgqOmZpcnN0LWNoaWxkKSB7CiAgICAgICAgbWFyZ2luLXRvcDogMDsKICAgICAgfQoKICAgICAgLmNvbnRlbnQgOjpzbG90dGVkKCo6bGFzdC1jaGlsZCkgewogICAgICAgIG1hcmdpbi1ib3R0b206IDA7CiAgICAgIH0KCiAgICAgIC8qIEludGVyYWN0aXZlIHN0YXRlcyBmb3IgZGVmYXVsdCB2YXJpYW50ICovCiAgICAgIDpob3N0KFt2YXJpYW50PSJkZWZhdWx0Il06aG92ZXIpIHsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA3OS44JSkiLCJoc2woMCAwJSAyMC45JSkiKX07CiAgICAgICAgYm94LXNoYWRvdzogMCA0cHggNnB4IC0xcHggaHNsKDAgMCUgMCUgLyAwLjEpLCAwIDJweCA0cHggLTJweCBoc2woMCAwJSAwJSAvIDAuMSk7CiAgICAgIH0KCiAgICAgIC8qIEludGVyYWN0aXZlIHN0YXRlcyBmb3Igb3V0bGluZSB2YXJpYW50ICovCiAgICAgIDpob3N0KFt2YXJpYW50PSJvdXRsaW5lIl06aG92ZXIpIHsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA3OS44JSkiLCJoc2woMCAwJSAyMC45JSkiKX07CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk4JSkiLCJoc2woMCAwJSA3LjglKSIpfTsKICAgICAgfQoKICAgICAgLyogSW50ZXJhY3RpdmUgc3RhdGVzIGZvciBnaG9zdCB2YXJpYW50ICovCiAgICAgIDpob3N0KFt2YXJpYW50PSJnaG9zdCJdOmhvdmVyKSB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk1LjElKSIsImhzbCgwIDAlIDE0LjklKSIpfTsKICAgICAgfQoKICAgICAgLyogRm9jdXMgc3RhdGVzICovCiAgICAgIDpob3N0KDpmb2N1cy13aXRoaW4pIHsKICAgICAgICBvdXRsaW5lOiBub25lOwogICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMjIuMiA0Ny40JSA1MS4yJSkiLCJoc2woMjE3LjIgOTEuMiUgNTkuOCUpIil9OwogICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCAke20uYmRUaGVtZSgiaHNsKDIyMi4yIDQ3LjQlIDUxLjIlIC8gMC4xKSIsImhzbCgyMTcuMiA5MS4yJSA1OS44JSAvIDAuMSkiKX07CiAgICAgIH0KCiAgICAgIC8qIE5lc3RlZCBwYW5lbHMgc3BhY2luZyAqLwogICAgICA6OnNsb3R0ZWQoZGVlcy1wYW5lbCkgewogICAgICAgIG1hcmdpbi10b3A6IDE2cHg7CiAgICAgIH0KCiAgICAgIDo6c2xvdHRlZChkZWVzLXBhbmVsOmZpcnN0LWNoaWxkKSB7CiAgICAgICAgbWFyZ2luLXRvcDogMDsKICAgICAgfQogICAgYF07cmVuZGVyKCl7cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9ImhlYWRlciI+CiAgICAgICAgJHt0aGlzLnRpdGxlP1NgPGgzIGNsYXNzPSJ0aXRsZSI+JHt0aGlzLnRpdGxlfTwvaDM+YDoiIn0KICAgICAgICAke3RoaXMuc3VidGl0bGU/U2A8cCBjbGFzcz0ic3VidGl0bGUiPiR7dGhpcy5zdWJ0aXRsZX08L3A+YDoiIn0KICAgICAgPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9ImNvbnRlbnQiPgogICAgICAgIDxzbG90Pjwvc2xvdD4KICAgICAgPC9kaXY+CiAgICBgfWFzeW5jIGZpcnN0VXBkYXRlZCgpe3RoaXMucnVuQWZ0ZXJSZW5kZXImJmF3YWl0IHRoaXMucnVuQWZ0ZXJSZW5kZXIodGhpcyl9Y29uc3RydWN0b3IoKXtzdXBlciguLi5hcmd1bWVudHMpLElzKHRoaXMsTSl9c3RhdGlje0lzKGEscil9fTtyZXR1cm4gRj1hfSkoKX0pO3ZhciBNRXIsamx0LGtFcixTRXI9bCgoKT0+e1NlKCk7emEoKTt0MSgpO2psdD1lPT5BcnJheS5mcm9tKHtsZW5ndGg6ZX0sKHQscik9Pih7aWQ6cix1c2FnZTpNYXRoLnJvdW5kKE1hdGgucmFuZG9tKCkqMTAwKSxsYWJlbDpgJHtyfWB9KSksa0VyPSgpPT5TKE1Fcnx8KE1Fcj1laChbYAogIDxkZWVzLWRlbW93cmFwcGVyPgogICAgPHN0eWxlPgogICAgICBgLGAKICAgIDwvc3R5bGU+CiAgICAKICAgIDxkaXYgY2xhc3M9ImRlbW8tY29udGFpbmVyIj4KICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPWAsIiAuc3VidGl0bGU9IixgPgogICAgICAgIDxkZWVzLXN0YXRzZ3JpZAogICAgICAgICAgLnRpbGVzPWAsYAogICAgICAgICAgLmdyaWRBY3Rpb25zPWAsYAogICAgICAgICAgLm1pblRpbGVXaWR0aD1gLGAKICAgICAgICAgIC5nYXA9YCxgCiAgICAgICAgPjwvZGVlcy1zdGF0c2dyaWQ+CiAgICAgICAgCiAgICAgICAgPGRpdiBpZD0iYWN0aW9uLW91dHB1dCIgc3R5bGU9Im1hcmdpbi10b3A6IDE2cHg7IHBhZGRpbmc6IDEycHg7IGJhY2tncm91bmQ6IGAsIjsgYm9yZGVyLXJhZGl1czogNnB4OyBmb250LXNpemU6IDE0cHg7IGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7IGNvbG9yOiAiLGA7Ij4KICAgICAgICAgIDxlbT5DbGljayBvbiB0aWxlIGFjdGlvbnMgb3IgZ3JpZCBhY3Rpb25zIHRvIHNlZSB0aGUgcmVzdWx0Li4uPC9lbT4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgICAKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPWAsIiAuc3VidGl0bGU9IixgPgogICAgICAgIDxkZWVzLXN0YXRzZ3JpZAogICAgICAgICAgLnRpbGVzPWAsYAogICAgICAgICAgLm1pblRpbGVXaWR0aD1gLGAKICAgICAgICAgIC5nYXA9YCxgCiAgICAgICAgPjwvZGVlcy1zdGF0c2dyaWQ+CiAgICAgICAgCiAgICAgICAgPGRpdiBjbGFzcz0idGlsZS1jb25maWciPgogICAgICAgICAgPGRpdiBjbGFzcz0iY29uZmlnLXNlY3Rpb24iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb25maWctdGl0bGUiPkNvbmZpZ3VyYXRpb24gT3B0aW9uczwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb25maWctZGVzY3JpcHRpb24iPgogICAgICAgICAgICAgIEVhY2ggdGlsZSB0eXBlIHN1cHBvcnRzIGRpZmZlcmVudCBwcm9wZXJ0aWVzOgogICAgICAgICAgICAgIDx1bCBzdHlsZT0ibWFyZ2luOiA4cHggMDsgcGFkZGluZy1sZWZ0OiAyMHB4OyI+CiAgICAgICAgICAgICAgICA8bGk+PHN0cm9uZz5OdW1iZXI6PC9zdHJvbmc+IHZhbHVlLCB1bml0LCBjb2xvciwgZGVzY3JpcHRpb248L2xpPgogICAgICAgICAgICAgICAgPGxpPjxzdHJvbmc+R2F1Z2U6PC9zdHJvbmc+IHZhbHVlLCB1bml0LCBnYXVnZU9wdGlvbnMgKG1pbiwgbWF4LCB0aHJlc2hvbGRzKTwvbGk+CiAgICAgICAgICAgICAgICA8bGk+PHN0cm9uZz5QZXJjZW50YWdlOjwvc3Ryb25nPiB2YWx1ZSAoMC0xMDApLCBjb2xvciwgZGVzY3JpcHRpb248L2xpPgogICAgICAgICAgICAgICAgPGxpPjxzdHJvbmc+VHJlbmQ6PC9zdHJvbmc+IHZhbHVlLCB1bml0LCB0cmVuZERhdGEgYXJyYXksIGRlc2NyaXB0aW9uPC9saT4KICAgICAgICAgICAgICAgIDxsaT48c3Ryb25nPlRleHQ6PC9zdHJvbmc+IHZhbHVlIChzdHJpbmcpLCBjb2xvciwgZGVzY3JpcHRpb248L2xpPgogICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgICAgCiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT1gLCIgLnN1YnRpdGxlPSIsYD4KICAgICAgICA8aDQgc3R5bGU9Im1hcmdpbjogMCAwIDE2cHggMDsgZm9udC1zaXplOiAxNnB4OyBmb250LXdlaWdodDogNjAwOyI+Q29tcGFjdCBMYXlvdXQgKDE4MHB4IHRpbGVzKTwvaDQ+CiAgICAgICAgPGRlZXMtc3RhdHNncmlkCiAgICAgICAgICAudGlsZXM9YCxgCiAgICAgICAgICAubWluVGlsZVdpZHRoPWAsYAogICAgICAgICAgLmdhcD1gLGAKICAgICAgICA+PC9kZWVzLXN0YXRzZ3JpZD4KICAgICAgICAKICAgICAgICA8aDQgc3R5bGU9Im1hcmdpbjogMjRweCAwIDE2cHggMDsgZm9udC1zaXplOiAxNnB4OyBmb250LXdlaWdodDogNjAwOyI+U3BhY2lvdXMgTGF5b3V0ICgzMjBweCB0aWxlcyk8L2g0PgogICAgICAgIDxkZWVzLXN0YXRzZ3JpZAogICAgICAgICAgLnRpbGVzPWAsYAogICAgICAgICAgLm1pblRpbGVXaWR0aD1gLGAKICAgICAgICAgIC5nYXA9YCxgCiAgICAgICAgPjwvZGVlcy1zdGF0c2dyaWQ+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgICAgCiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT1gLCIgLnN1YnRpdGxlPSIsYD4KICAgICAgICA8ZGVlcy1zdGF0c2dyaWQKICAgICAgICAgIGlkPSJjcHUtY29yZXMtZ3JpZCIKICAgICAgICAgIC50aWxlcz1gLGAKICAgICAgICAgIC5ncmlkQWN0aW9ucz1gLGAKICAgICAgICAgIC5taW5UaWxlV2lkdGg9YCxgCiAgICAgICAgICAuZ2FwPWAsYAogICAgICAgID48L2RlZXMtc3RhdHNncmlkPgogICAgICA8L2RlZXMtcGFuZWw+CgogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9YCwiIC5zdWJ0aXRsZT0iLGA+CiAgICAgICAgPGRlZXMtc3RhdHNncmlkCiAgICAgICAgICBpZD0iaW50ZXJhY3RpdmUtZ3JpZCIKICAgICAgICAgIC50aWxlcz1gLGAKICAgICAgICAgIC5ncmlkQWN0aW9ucz1gLGAKICAgICAgICAgIC5taW5UaWxlV2lkdGg9YCxgCiAgICAgICAgICAuZ2FwPWAsYAogICAgICAgID48L2RlZXMtc3RhdHNncmlkPgogICAgICA8L2RlZXMtcGFuZWw+CiAgICAgIAogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9YCwiIC5zdWJ0aXRsZT0iLGA+CiAgICAgICAgPGRpdiBjbGFzcz0iY29kZS1ibG9jayI+YCxgPC9kaXY+CiAgICAgIDwvZGVlcy1wYW5lbD4KCiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT1gLCIgLnN1YnRpdGxlPSIsYD4KICAgICAgICA8ZGVlcy1zdGF0c2dyaWQKICAgICAgICAgIC50aWxlcz1gLGAKICAgICAgICAgIC5taW5UaWxlV2lkdGg9YCxgCiAgICAgICAgICAuZ2FwPWAsYAogICAgICAgID48L2RlZXMtc3RhdHNncmlkPgoKICAgICAgICA8ZGl2IGNsYXNzPSJ0aWxlLWNvbmZpZyI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjb25maWctc2VjdGlvbiI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbmZpZy10aXRsZSI+UGFydGl0aW9uIFRpbGUgUHJvcGVydGllczwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb25maWctZGVzY3JpcHRpb24iPgogICAgICAgICAgICAgIDx1bCBzdHlsZT0ibWFyZ2luOiA4cHggMDsgcGFkZGluZy1sZWZ0OiAyMHB4OyI+CiAgICAgICAgICAgICAgICA8bGk+PHN0cm9uZz5wYXJ0aXRpb25EYXRhLnVzZWQ6PC9zdHJvbmc+IFVzZWQgc3BhY2UgaW4gYnl0ZXMgKGF1dG8tZm9ybWF0dGVkKTwvbGk+CiAgICAgICAgICAgICAgICA8bGk+PHN0cm9uZz5wYXJ0aXRpb25EYXRhLnRvdGFsOjwvc3Ryb25nPiBUb3RhbCBjYXBhY2l0eSBpbiBieXRlczwvbGk+CiAgICAgICAgICAgICAgICA8bGk+PHN0cm9uZz5wYXJ0aXRpb25EYXRhLmZpbGVzeXN0ZW06PC9zdHJvbmc+IEZpbGVzeXN0ZW0gdHlwZSAoZXh0NCwgeGZzLCBudGZzKTwvbGk+CiAgICAgICAgICAgICAgICA8bGk+PHN0cm9uZz5wYXJ0aXRpb25EYXRhLm1vdW50UG9pbnQ6PC9zdHJvbmc+IE1vdW50IHBvaW50IHBhdGggKG9wdGlvbmFsKTwvbGk+CiAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICBDb2xvciB0aHJlc2hvbGRzOiBOb3JtYWwgKCZsdDs3NSUpLCBXYXJuaW5nICg3NS05MCUpLCBDcml0aWNhbCAoJmd0OzkwJSkKICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbmZpZy1zZWN0aW9uIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29uZmlnLXRpdGxlIj5EaXNrIFRpbGUgUHJvcGVydGllczwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb25maWctZGVzY3JpcHRpb24iPgogICAgICAgICAgICAgIDx1bCBzdHlsZT0ibWFyZ2luOiA4cHggMDsgcGFkZGluZy1sZWZ0OiAyMHB4OyI+CiAgICAgICAgICAgICAgICA8bGk+PHN0cm9uZz5kaXNrRGF0YS5jYXBhY2l0eTo8L3N0cm9uZz4gVG90YWwgY2FwYWNpdHkgaW4gYnl0ZXM8L2xpPgogICAgICAgICAgICAgICAgPGxpPjxzdHJvbmc+ZGlza0RhdGEubW9kZWw6PC9zdHJvbmc+IERpc2sgbW9kZWwgbmFtZSAob3B0aW9uYWwpPC9saT4KICAgICAgICAgICAgICAgIDxsaT48c3Ryb25nPmRpc2tEYXRhLnR5cGU6PC9zdHJvbmc+IERpc2sgdHlwZTogJ3NzZCcsICdoZGQnLCBvciAnbnZtZSc8L2xpPgogICAgICAgICAgICAgICAgPGxpPjxzdHJvbmc+ZGlza0RhdGEuaW9wczo8L3N0cm9uZz4gUmVhZC93cml0ZSBJT1BTIChvcHRpb25hbCk8L2xpPgogICAgICAgICAgICAgICAgPGxpPjxzdHJvbmc+ZGlza0RhdGEuaGVhbHRoOjwvc3Ryb25nPiBIZWFsdGggcGVyY2VudGFnZSAwLTEwMCAob3B0aW9uYWwpPC9saT4KICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgIEhlYWx0aCB0aHJlc2hvbGRzOiBHb29kICg3MC0xMDAlKSwgV2FybmluZyAoMzAtNzAlKSwgQ3JpdGljYWwgKCZsdDszMCUpCiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgIDwvZGl2PgoKICAgIDxzY3JpcHQ+CiAgICAgIC8vIENsZWFudXAgbGl2ZSB1cGRhdGVzIG9uIHBhZ2UgdW5sb2FkCiAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdiZWZvcmV1bmxvYWQnLCAoKSA9PiB7CiAgICAgICAgaWYgKCh3aW5kb3cgYXMgYW55KS5saXZlVXBkYXRlSW50ZXJ2YWwpIHsKICAgICAgICAgIGNsZWFySW50ZXJ2YWwoKHdpbmRvdyBhcyBhbnkpLmxpdmVVcGRhdGVJbnRlcnZhbCk7CiAgICAgICAgfQogICAgICB9KTsKICAgIDxcL3NjcmlwdD4KICA8L2RlZXMtZGVtb3dyYXBwZXI+CiAgYF0pKSxsZWAKICAgICAgICAuZGVtby1jb250YWluZXIgewogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgICBnYXA6IDI0cHg7CiAgICAgICAgICBwYWRkaW5nOiAyNHB4OwogICAgICAgICAgbWF4LXdpZHRoOiAxNDAwcHg7CiAgICAgICAgICBtYXJnaW46IDAgYXV0bzsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgZGVlcy1wYW5lbCB7CiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNHB4OwogICAgICAgIH0KICAgICAgICAKICAgICAgICBkZWVzLXBhbmVsOmxhc3QtY2hpbGQgewogICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLnRpbGUtY29uZmlnIHsKICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7CiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDMwMHB4LCAxZnIpKTsKICAgICAgICAgIGdhcDogMTZweDsKICAgICAgICAgIG1hcmdpbi10b3A6IDE2cHg7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5jb25maWctc2VjdGlvbiB7CiAgICAgICAgICBwYWRkaW5nOiAxNnB4OwogICAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTAgNDAlIDk2LjElKSIsImhzbCgyMTUgMjAuMiUgMTYuOCUpIil9OwogICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgIH0KICAgICAgICAKICAgICAgICAuY29uZmlnLXRpdGxlIHsKICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7CiAgICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuMyAyNSUgOC44JSkiLCJoc2woMjEwIDQwJSA5OCUpIil9OwogICAgICAgIH0KICAgICAgICAKICAgICAgICAuY29uZmlnLWRlc2NyaXB0aW9uIHsKICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNS40IDE2LjMlIDU2LjklKSIsImhzbCgyMTUgMjAuMiUgNTUuMSUpIil9OwogICAgICAgIH0KICAgICAgICAKICAgICAgICAuY29kZS1ibG9jayB7CiAgICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDIxMCA0MCUgOTYuMSUpIiwiaHNsKDIxNSAyMC4yJSAxMS44JSkiKX07CiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDIxNC4zIDMxLjglIDkxLjQlKSIsImhzbCgyMTUgMjAuMiUgMTYuOCUpIil9OwogICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgICAgcGFkZGluZzogMTZweDsKICAgICAgICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7CiAgICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgICBvdmVyZmxvdy14OiBhdXRvOwogICAgICAgICAgd2hpdGUtc3BhY2U6IHByZTsKICAgICAgICB9CiAgICAgIGAsIjEuIENvbXByZWhlbnNpdmUgRGFzaGJvYXJkIiwiRnVsbC1mZWF0dXJlZCBzdGF0cyBncmlkIHdpdGggdmFyaW91cyB0aWxlIHR5cGVzLCBhY3Rpb25zLCBhbmQgTHVjaWRlIGljb25zIixbe2lkOiJyZXZlbnVlIix0aXRsZToiVG90YWwgUmV2ZW51ZSIsdmFsdWU6MTI1NDIwLHVuaXQ6IiQiLHR5cGU6Im51bWJlciIsaWNvbjoibHVjaWRlOmRvbGxhci1zaWduIixkZXNjcmlwdGlvbjoiKzEyLjUlIGZyb20gbGFzdCBtb250aCIsYWN0aW9uczpbe25hbWU6IlZpZXcgRGV0YWlscyIsaWNvbk5hbWU6Imx1Y2lkZTp0cmVuZGluZy11cCIsYWN0aW9uOmFzeW5jKCk9PntsZXQgZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjYWN0aW9uLW91dHB1dCIpO2UmJihlLnRleHRDb250ZW50PSJWaWV3aW5nIHJldmVudWUgZGV0YWlsczogJDEyNSw0MjAgKCsxMi41JSkiKX19LHtuYW1lOiJFeHBvcnQgRGF0YSIsaWNvbk5hbWU6Imx1Y2lkZTpkb3dubG9hZCIsYWN0aW9uOmFzeW5jKCk9PntsZXQgZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjYWN0aW9uLW91dHB1dCIpO2UmJihlLnRleHRDb250ZW50PSJFeHBvcnRpbmcgcmV2ZW51ZSBkYXRhIHRvIENTVi4uLiIpfX1dfSx7aWQ6InVzZXJzIix0aXRsZToiQWN0aXZlIFVzZXJzIix2YWx1ZTozODQ3LHR5cGU6Im51bWJlciIsaWNvbjoibHVjaWRlOnVzZXJzIixkZXNjcmlwdGlvbjoiMzI0IG5ldyB0aGlzIHdlZWsiLGFjdGlvbnM6W3tuYW1lOiJWaWV3IFVzZXIgTGlzdCIsaWNvbk5hbWU6Imx1Y2lkZTpsaXN0IixhY3Rpb246YXN5bmMoKT0+e2xldCBlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNhY3Rpb24tb3V0cHV0Iik7ZSYmKGUudGV4dENvbnRlbnQ9Ik9wZW5pbmcgdXNlciBsaXN0Li4uIil9fV19LHtpZDoiY3B1Iix0aXRsZToiQ1BVIFVzYWdlIix2YWx1ZTo3Myx1bml0OiIlIix0eXBlOiJnYXVnZSIsaWNvbjoibHVjaWRlOmNwdSIsZ2F1Z2VPcHRpb25zOnttaW46MCxtYXg6MTAwLHRocmVzaG9sZHM6W3t2YWx1ZTowLGNvbG9yOiJoc2woMTQyLjEgNzYuMiUgMzYuMyUpIn0se3ZhbHVlOjYwLGNvbG9yOiJoc2woNDUuNCA5My40JSA0Ny41JSkifSx7dmFsdWU6ODAsY29sb3I6ImhzbCgwIDg0LjIlIDYwLjIlKSJ9XX19LHtpZDoic3RvcmFnZSIsdGl0bGU6IlN0b3JhZ2UgVXNlZCIsdmFsdWU6NjUsdHlwZToicGVyY2VudGFnZSIsaWNvbjoibHVjaWRlOmhhcmQtZHJpdmUiLGRlc2NyaXB0aW9uOiI2NTAgR0Igb2YgMSBUQiJ9LHtpZDoibGF0ZW5jeSIsdGl0bGU6IlJlc3BvbnNlIFRpbWUiLHZhbHVlOjE0Mix1bml0OiJtcyIsdHlwZToidHJlbmQiLGljb246Imx1Y2lkZTphY3Rpdml0eSIsdHJlbmREYXRhOlsxNTAsMTQ1LDE0OCwxNDIsMTM4LDE0MCwxMzUsMTQ1LDE0Ml0sZGVzY3JpcHRpb246IlA5NSJ9LHtpZDoidXB0aW1lIix0aXRsZToiU3lzdGVtIFVwdGltZSIsdmFsdWU6Ijk5Ljk1JSIsdHlwZToidGV4dCIsaWNvbjoibHVjaWRlOmNoZWNrLWNpcmNsZSIsY29sb3I6ImhzbCgxNDIuMSA3Ni4yJSAzNi4zJSkiLGRlc2NyaXB0aW9uOiJMYXN0IDMwIGRheXMifV0sW3tuYW1lOiJSZWZyZXNoIixpY29uTmFtZToibHVjaWRlOnJlZnJlc2gtY3ciLGFjdGlvbjphc3luYygpPT57bGV0IGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiZGVlcy1zdGF0c2dyaWQiKTtlJiYoZS5zdHlsZS5vcGFjaXR5PSIwLjUiLHNldFRpbWVvdXQoKCk9PntlLnN0eWxlLm9wYWNpdHk9IjEifSwzMDApKX19LHtuYW1lOiJFeHBvcnQiLGljb25OYW1lOiJsdWNpZGU6c2hhcmUiLGFjdGlvbjphc3luYygpPT57bGV0IGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2FjdGlvbi1vdXRwdXQiKTtlJiYoZS50ZXh0Q29udGVudD0iRXhwb3J0aW5nIGRhc2hib2FyZCByZXBvcnQuLi4iKX19LHtuYW1lOiJTZXR0aW5ncyIsaWNvbk5hbWU6Imx1Y2lkZTpzZXR0aW5ncyIsYWN0aW9uOmFzeW5jKCk9PntsZXQgZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjYWN0aW9uLW91dHB1dCIpO2UmJihlLnRleHRDb250ZW50PSJPcGVuaW5nIGRhc2hib2FyZCBzZXR0aW5ncy4uLiIpfX1dLDI1MCwxNixtLmJkVGhlbWUoImhzbCgyMTAgNDAlIDk2LjElKSIsImhzbCgyMTUgMjAuMiUgMTYuOCUpIiksbS5iZFRoZW1lKCJoc2woMjE1LjMgMjUlIDguOCUpIiwiaHNsKDIxMCA0MCUgOTglKSIpLCIyLiBUaWxlIFR5cGVzIiwiRGlmZmVyZW50IHZpc3VhbGl6YXRpb24gdHlwZXMgYXZhaWxhYmxlIGluIHRoZSBzdGF0cyBncmlkIixbe2lkOiJudW1iZXItZXhhbXBsZSIsdGl0bGU6Ik51bWJlciBUaWxlIix2YWx1ZTo0MjE5NSx1bml0OiIkIix0eXBlOiJudW1iZXIiLGljb246Imx1Y2lkZTpoYXNoIixkZXNjcmlwdGlvbjoiU2ltcGxlIG51bWVyaWMgZGlzcGxheSJ9LHtpZDoiZ2F1Z2UtZXhhbXBsZSIsdGl0bGU6IkdhdWdlIFRpbGUiLHZhbHVlOjY4LHVuaXQ6IiUiLHR5cGU6ImdhdWdlIixpY29uOiJsdWNpZGU6Z2F1Z2UiLGdhdWdlT3B0aW9uczp7bWluOjAsbWF4OjEwMCx0aHJlc2hvbGRzOlt7dmFsdWU6MCxjb2xvcjoiaHNsKDE0Mi4xIDc2LjIlIDM2LjMlKSJ9LHt2YWx1ZTo1MCxjb2xvcjoiaHNsKDQ1LjQgOTMuNCUgNDcuNSUpIn0se3ZhbHVlOjgwLGNvbG9yOiJoc2woMCA4NC4yJSA2MC4yJSkifV19fSx7aWQ6InBlcmNlbnRhZ2UtZXhhbXBsZSIsdGl0bGU6IlBlcmNlbnRhZ2UgVGlsZSIsdmFsdWU6NzgsdHlwZToicGVyY2VudGFnZSIsaWNvbjoibHVjaWRlOnBlcmNlbnQiLGRlc2NyaXB0aW9uOiJQcm9ncmVzcyBiYXIgdmlzdWFsaXphdGlvbiJ9LHtpZDoidHJlbmQtZXhhbXBsZSIsdGl0bGU6IlRyZW5kIFRpbGUiLHZhbHVlOjg5Mix1bml0OiJvcHMvcyIsdHlwZToidHJlbmQiLGljb246Imx1Y2lkZTp0cmVuZGluZy11cCIsdHJlbmREYXRhOls3MjAsNzUwLDc4MCw3OTUsODEwLDgzNSw4NTAsODY1LDg4MCw4OTJdLGRlc2NyaXB0aW9uOiJhdmcifSx7aWQ6InRleHQtZXhhbXBsZSIsdGl0bGU6IlRleHQgVGlsZSIsdmFsdWU6Ik9wZXJhdGlvbmFsIix0eXBlOiJ0ZXh0IixpY29uOiJsdWNpZGU6aW5mbyIsY29sb3I6ImhzbCgxNDIuMSA3Ni4yJSAzNi4zJSkiLGRlc2NyaXB0aW9uOiJTdGF0dXMgZGlzcGxheSJ9XSwyODAsMTYsIjMuIEdyaWQgQ29uZmlndXJhdGlvbnMiLCJEaWZmZXJlbnQgbGF5b3V0IG9wdGlvbnMgYW5kIHJlc3BvbnNpdmUgYmVoYXZpb3IiLFt7aWQ6IjEiLHRpdGxlOiJPcmRlcnMiLHZhbHVlOjE1Nix0eXBlOiJudW1iZXIiLGljb246Imx1Y2lkZTpzaG9wcGluZy1jYXJ0In0se2lkOiIyIix0aXRsZToiUmV2ZW51ZSIsdmFsdWU6ODQyMCx1bml0OiIkIix0eXBlOiJudW1iZXIiLGljb246Imx1Y2lkZTpkb2xsYXItc2lnbiJ9LHtpZDoiMyIsdGl0bGU6IlVzZXJzIix2YWx1ZTo0MjMsdHlwZToibnVtYmVyIixpY29uOiJsdWNpZGU6dXNlcnMifSx7aWQ6IjQiLHRpdGxlOiJHcm93dGgiLHZhbHVlOjEyLjUsdW5pdDoiJSIsdHlwZToibnVtYmVyIixpY29uOiJsdWNpZGU6dHJlbmRpbmctdXAiLGNvbG9yOiJoc2woMTQyLjEgNzYuMiUgMzYuMyUpIn1dLDE4MCwxMixbe2lkOiJzcGFjaW91czEiLHRpdGxlOiJNb250aGx5IFJldmVudWUiLHZhbHVlOjE4NDUwMCx1bml0OiIkIix0eXBlOiJudW1iZXIiLGljb246Imx1Y2lkZTpjcmVkaXQtY2FyZCIsZGVzY3JpcHRpb246IlRvdGFsIHJldmVudWUgdGhpcyBtb250aCJ9LHtpZDoic3BhY2lvdXMyIix0aXRsZToiQ3VzdG9tZXIgU2F0aXNmYWN0aW9uIix2YWx1ZTo5NCx0eXBlOiJwZXJjZW50YWdlIixpY29uOiJsdWNpZGU6c21pbGUiLGRlc2NyaXB0aW9uOiJCYXNlZCBvbiAxLDIzNCByZXZpZXdzIn0se2lkOiJzcGFjaW91czMiLHRpdGxlOiJTZXJ2ZXIgUmVzcG9uc2UiLHZhbHVlOjk4LHVuaXQ6Im1zIix0eXBlOiJ0cmVuZCIsaWNvbjoibHVjaWRlOnNlcnZlciIsdHJlbmREYXRhOlsxMDUsMTAyLDEwMCw5OSw5OCw5OCw5Nyw5OF0sZGVzY3JpcHRpb246ImF2ZyByZXNwb25zZSB0aW1lIn1dLDMyMCwyMCwiNC4gQ1BVIENvcmVzIFZpc3VhbGl6YXRpb24iLCJWZXJ0aWNhbCBiYXIgdmlzdWFsaXphdGlvbiBmb3IgbXVsdGktY29yZSBDUFUgdXNhZ2Ugd2l0aCBjb2x1bW4gc3Bhbm5pbmciLFt7aWQ6ImNwdS1jb3Jlcy04Iix0aXRsZToiQ1BVIENvcmVzICg4LWNvcmUpIix2YWx1ZTowLHR5cGU6ImNwdUNvcmVzIixpY29uOiJsdWNpZGU6Y3B1Iixjb2x1bW5TcGFuOjIsY29yZXNEYXRhOmpsdCg4KSxkZXNjcmlwdGlvbjoiSW50ZWwgaTcgLSA4IGNvcmVzIn0se2lkOiJtZW1vcnkiLHRpdGxlOiJNZW1vcnkgVXNhZ2UiLHZhbHVlOjY4LHR5cGU6InBlcmNlbnRhZ2UiLGljb246Imx1Y2lkZTpkYXRhYmFzZSIsZGVzY3JpcHRpb246IjEzLjYgR0Igb2YgMjAgR0IifSx7aWQ6ImNwdS1jb3Jlcy0xNiIsdGl0bGU6IkNQVSBDb3JlcyAoMTYtY29yZSkiLHZhbHVlOjAsdHlwZToiY3B1Q29yZXMiLGljb246Imx1Y2lkZTpjcHUiLGNvbHVtblNwYW46Mixjb3Jlc0RhdGE6amx0KDE2KSxkZXNjcmlwdGlvbjoiQU1EIFJ5emVuIDkgLSAxNiBjb3JlcyJ9LHtpZDoibmV0d29yayIsdGl0bGU6Ik5ldHdvcmsgSS9PIix2YWx1ZToyNDUsdW5pdDoiTUIvcyIsdHlwZToidHJlbmQiLGljb246Imx1Y2lkZTpuZXR3b3JrIix0cmVuZERhdGE6WzIwMCwyMjAsMjM1LDI0MCwyMzgsMjQ1XSxkZXNjcmlwdGlvbjoidGhyb3VnaHB1dCJ9LHtpZDoiY3B1LWNvcmVzLTMyIix0aXRsZToiU2VydmVyIENQVSAoMzItY29yZSkiLHZhbHVlOjAsdHlwZToiY3B1Q29yZXMiLGljb246Imx1Y2lkZTpzZXJ2ZXIiLGNvbHVtblNwYW46Myxjb3Jlc0RhdGE6amx0KDMyKSxkZXNjcmlwdGlvbjoiQU1EIEVQWUMgLSAzMiBjb3JlcyJ9LHtpZDoiZGlzayIsdGl0bGU6IkRpc2sgVXNhZ2UiLHZhbHVlOjQyLHR5cGU6InBlcmNlbnRhZ2UiLGljb246Imx1Y2lkZTpoYXJkLWRyaXZlIixkZXNjcmlwdGlvbjoiNDIwIEdCIG9mIDEgVEIifV0sW3tuYW1lOiJSYW5kb21pemUiLGljb25OYW1lOiJsdWNpZGU6c2h1ZmZsZSIsYWN0aW9uOmFzeW5jKCk9PntsZXQgZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjY3B1LWNvcmVzLWdyaWQiKTtpZighZSlyZXR1cm47bGV0IHQ9ZS50aWxlcy5tYXAocj0+ci50eXBlPT09ImNwdUNvcmVzIiYmci5jb3Jlc0RhdGE/ey4uLnIsY29yZXNEYXRhOnIuY29yZXNEYXRhLm1hcChhPT4oey4uLmEsdXNhZ2U6TWF0aC5yb3VuZChNYXRoLnJhbmRvbSgpKjEwMCl9KSl9OnIpO2UudGlsZXM9dH19XSwyNTAsMTYsIjUuIEludGVyYWN0aXZlIEZlYXR1cmVzIiwiVGlsZXMgd2l0aCBhY3Rpb25zIGFuZCByZWFsLXRpbWUgdXBkYXRlcyIsW3tpZDoibGl2ZS1jcHUiLHRpdGxlOiJMaXZlIENQVSIsdmFsdWU6NDUsdW5pdDoiJSIsdHlwZToiZ2F1Z2UiLGljb246Imx1Y2lkZTpjcHUiLGdhdWdlT3B0aW9uczp7bWluOjAsbWF4OjEwMCx0aHJlc2hvbGRzOlt7dmFsdWU6MCxjb2xvcjoiaHNsKDE0Mi4xIDc2LjIlIDM2LjMlKSJ9LHt2YWx1ZTo2MCxjb2xvcjoiaHNsKDQ1LjQgOTMuNCUgNDcuNSUpIn0se3ZhbHVlOjgwLGNvbG9yOiJoc2woMCA4NC4yJSA2MC4yJSkifV19fSx7aWQ6ImxpdmUtcmVxdWVzdHMiLHRpdGxlOiJSZXF1ZXN0cy9zZWMiLHZhbHVlOjg5Mix0eXBlOiJ0cmVuZCIsaWNvbjoibHVjaWRlOmFjdGl2aXR5Iix0cmVuZERhdGE6Wzg1MCw4NjAsODcwLDg4MCw4ODUsODkwLDg5Ml19LHtpZDoibGl2ZS1tZW1vcnkiLHRpdGxlOiJNZW1vcnkgVXNhZ2UiLHZhbHVlOjYyLHR5cGU6InBlcmNlbnRhZ2UiLGljb246Imx1Y2lkZTpkYXRhYmFzZSJ9LHtpZDoiY291bnRlciIsdGl0bGU6IkV2ZW50IENvdW50ZXIiLHZhbHVlOjAsdHlwZToibnVtYmVyIixpY29uOiJsdWNpZGU6emFwIixhY3Rpb25zOlt7bmFtZToiSW5jcmVtZW50IixpY29uTmFtZToibHVjaWRlOnBsdXMiLGFjdGlvbjphc3luYygpPT57bGV0IGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2ludGVyYWN0aXZlLWdyaWQiKTtpZighZSlyZXR1cm47bGV0IHQ9ZS50aWxlcy5maW5kKHI9PnIuaWQ9PT0iY291bnRlciIpO3QudmFsdWU9dHlwZW9mIHQudmFsdWU9PSJudW1iZXIiP3QudmFsdWUrMToxLGUudGlsZXM9Wy4uLmUudGlsZXNdfX0se25hbWU6IlJlc2V0IixpY29uTmFtZToibHVjaWRlOnJvdGF0ZS1jY3ciLGFjdGlvbjphc3luYygpPT57bGV0IGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2ludGVyYWN0aXZlLWdyaWQiKTtpZighZSlyZXR1cm47bGV0IHQ9ZS50aWxlcy5maW5kKHI9PnIuaWQ9PT0iY291bnRlciIpO3QudmFsdWU9MCxlLnRpbGVzPVsuLi5lLnRpbGVzXX19XX1dLFt7bmFtZToiU3RhcnQgTGl2ZSBVcGRhdGVzIixpY29uTmFtZToibHVjaWRlOnBsYXkiLGFjdGlvbjphc3luYyBmdW5jdGlvbigpe3dpbmRvdy5saXZlVXBkYXRlSW50ZXJ2YWw/KGNsZWFySW50ZXJ2YWwod2luZG93LmxpdmVVcGRhdGVJbnRlcnZhbCksd2luZG93LmxpdmVVcGRhdGVJbnRlcnZhbD1udWxsLHRoaXMubmFtZT0iU3RhcnQgTGl2ZSBVcGRhdGVzIix0aGlzLmljb25OYW1lPSJsdWNpZGU6cGxheSIpOih3aW5kb3cubGl2ZVVwZGF0ZUludGVydmFsPXNldEludGVydmFsKCgpPT57bGV0IGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2ludGVyYWN0aXZlLWdyaWQiKTtpZihlKXtsZXQgdD1bLi4uZS50aWxlc10scj10LmZpbmQobj0+bi5pZD09PSJsaXZlLWNwdSIpO3IudmFsdWU9TWF0aC5tYXgoMCxNYXRoLm1pbigxMDAsci52YWx1ZSsoTWF0aC5yYW5kb20oKSoyMC0xMCkpKTtsZXQgYT10LmZpbmQobj0+bi5pZD09PSJsaXZlLXJlcXVlc3RzIiksaT1hLnZhbHVlK01hdGgucm91bmQoTWF0aC5yYW5kb20oKSo1MC0yNSk7YS52YWx1ZT1NYXRoLm1heCg4MDAsaSksYS50cmVuZERhdGE9Wy4uLmEudHJlbmREYXRhLnNsaWNlKDEpLGEudmFsdWVdO2xldCBvPXQuZmluZChuPT5uLmlkPT09ImxpdmUtbWVtb3J5Iik7by52YWx1ZT1NYXRoLm1heCgwLE1hdGgubWluKDEwMCxvLnZhbHVlKyhNYXRoLnJhbmRvbSgpKjEwLTUpKSksZS50aWxlcz10fX0sMWUzKSx0aGlzLm5hbWU9IlN0b3AgTGl2ZSBVcGRhdGVzIix0aGlzLmljb25OYW1lPSJsdWNpZGU6cGF1c2UiKX19XSwyNTAsMTYsIjYuIENvZGUgRXhhbXBsZSIsIkhvdyB0byBpbXBsZW1lbnQgYSBzdGF0cyBncmlkIHdpdGggVHlwZVNjcmlwdCIsYGNvbnN0IHRpbGVzOiBJU3RhdHNUaWxlW10gPSBbCiAgewogICAgaWQ6ICdyZXZlbnVlJywKICAgIHRpdGxlOiAnVG90YWwgUmV2ZW51ZScsCiAgICB2YWx1ZTogMTI1NDIwLAogICAgdW5pdDogJyQnLAogICAgdHlwZTogJ251bWJlcicsCiAgICBpY29uOiAnbHVjaWRlOmRvbGxhci1zaWduJywKICAgIGRlc2NyaXB0aW9uOiAnKzEyLjUlIGZyb20gbGFzdCBtb250aCcsCiAgICBhY3Rpb25zOiBbCiAgICAgIHsKICAgICAgICBuYW1lOiAnVmlldyBEZXRhaWxzJywKICAgICAgICBpY29uTmFtZTogJ2x1Y2lkZTp0cmVuZGluZy11cCcsCiAgICAgICAgYWN0aW9uOiBhc3luYyAoKSA9PiB7CiAgICAgICAgICBjb25zb2xlLmxvZygnVmlldyByZXZlbnVlIGRldGFpbHMnKTsKICAgICAgICB9CiAgICAgIH0KICAgIF0KICB9LAogIHsKICAgIGlkOiAnY3B1JywKICAgIHRpdGxlOiAnQ1BVIFVzYWdlJywKICAgIHZhbHVlOiA3MywKICAgIHVuaXQ6ICclJywKICAgIHR5cGU6ICdnYXVnZScsCiAgICBpY29uOiAnbHVjaWRlOmNwdScsCiAgICBnYXVnZU9wdGlvbnM6IHsKICAgICAgbWluOiAwLAogICAgICBtYXg6IDEwMCwKICAgICAgdGhyZXNob2xkczogWwogICAgICAgIHsgdmFsdWU6IDAsIGNvbG9yOiAnaHNsKDE0Mi4xIDc2LjIlIDM2LjMlKScgfSwKICAgICAgICB7IHZhbHVlOiA2MCwgY29sb3I6ICdoc2woNDUuNCA5My40JSA0Ny41JSknIH0sCiAgICAgICAgeyB2YWx1ZTogODAsIGNvbG9yOiAnaHNsKDAgODQuMiUgNjAuMiUpJyB9CiAgICAgIF0KICAgIH0KICB9Cl07CgovLyBSZW5kZXIgdGhlIHN0YXRzIGdyaWQKaHRtbFxgCiAgPGRlZXMtc3RhdHNncmlkCiAgICAudGlsZXM9XCR7dGlsZXN9CiAgICAubWluVGlsZVdpZHRoPVwkezI1MH0KICAgIC5nYXA9XCR7MTZ9CiAgICAuZ3JpZEFjdGlvbnM9XCR7WwogICAgICB7CiAgICAgICAgbmFtZTogJ1JlZnJlc2gnLAogICAgICAgIGljb25OYW1lOiAnbHVjaWRlOnJlZnJlc2gtY3cnLAogICAgICAgIGFjdGlvbjogYXN5bmMgKCkgPT4gY29uc29sZS5sb2coJ1JlZnJlc2gnKQogICAgICB9CiAgICBdfQogID48L2RlZXMtc3RhdHNncmlkPgpcYDtgLCI3LiBEaXNrICYgU3RvcmFnZSBUaWxlcyIsIlBhcnRpdGlvbiBhbmQgcGh5c2ljYWwgZGlzayB2aXN1YWxpemF0aW9uIHRpbGVzIixbe2lkOiJyb290LXBhcnRpdGlvbiIsdGl0bGU6IlJvb3QgUGFydGl0aW9uIix2YWx1ZTowLHR5cGU6InBhcnRpdGlvbiIsaWNvbjoibHVjaWRlOmZvbGRlci1yb290IixwYXJ0aXRpb25EYXRhOnt1c2VkOjY5ODM0MTQyNTE1Mix0b3RhbDoxMDczNzQxODI0ZTMsZmlsZXN5c3RlbToiZXh0NCIsbW91bnRQb2ludDoiLyJ9fSx7aWQ6ImhvbWUtcGFydGl0aW9uIix0aXRsZToiSG9tZSBQYXJ0aXRpb24iLHZhbHVlOjAsdHlwZToicGFydGl0aW9uIixpY29uOiJsdWNpZGU6aG9tZSIscGFydGl0aW9uRGF0YTp7dXNlZDoyMTQ3NDgzNjQ4MDAsdG90YWw6NTM2ODcwOTEyZTMsZmlsZXN5c3RlbToiZXh0NCIsbW91bnRQb2ludDoiL2hvbWUifX0se2lkOiJkYXRhLXBhcnRpdGlvbiIsdGl0bGU6IkRhdGEgUGFydGl0aW9uIix2YWx1ZTowLHR5cGU6InBhcnRpdGlvbiIsaWNvbjoibHVjaWRlOmRhdGFiYXNlIixwYXJ0aXRpb25EYXRhOnt1c2VkOjE5MzI3MzUyODMyMDAsdG90YWw6MjE0NzQ4MzY0OGUzLGZpbGVzeXN0ZW06InhmcyIsbW91bnRQb2ludDoiL2RhdGEifX0se2lkOiJudm1lLXNzZCIsdGl0bGU6IlByaW1hcnkgTlZNZSIsdmFsdWU6MCx0eXBlOiJkaXNrIixpY29uOiJsdWNpZGU6aGFyZC1kcml2ZSIsY29sdW1uU3BhbjoyLGRpc2tEYXRhOntjYXBhY2l0eToyZTEyLG1vZGVsOiJTYW1zdW5nIDk5MCBQcm8iLHR5cGU6Im52bWUiLGlvcHM6e3JlYWQ6NzQ1MCx3cml0ZTo2OTAwfSxoZWFsdGg6OTh9fSx7aWQ6InNhdGEtc3NkIix0aXRsZToiU2Vjb25kYXJ5IFNTRCIsdmFsdWU6MCx0eXBlOiJkaXNrIixpY29uOiJsdWNpZGU6aGFyZC1kcml2ZSIsZGlza0RhdGE6e2NhcGFjaXR5OjFlMTIsbW9kZWw6IkNydWNpYWwgTVg1MDAiLHR5cGU6InNzZCIsaW9wczp7cmVhZDo1NjAsd3JpdGU6NTEwfSxoZWFsdGg6ODV9fSx7aWQ6ImhkZC1zdG9yYWdlIix0aXRsZToiQmFja3VwIEhERCIsdmFsdWU6MCx0eXBlOiJkaXNrIixpY29uOiJsdWNpZGU6YXJjaGl2ZSIsZGlza0RhdGE6e2NhcGFjaXR5OjhlMTIsbW9kZWw6IlNlYWdhdGUgSXJvbldvbGYiLHR5cGU6ImhkZCIsaW9wczp7cmVhZDoyMTAsd3JpdGU6MTk1fSxoZWFsdGg6NDJ9fV0sMjgwLDE2KX0pO3ZhciB3OCxGbyxodCxQYT1sKCgpPT57U2UoKTtlcigpO3c4PWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sRm89ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LGh0PSgoKT0+e2xldCBlPURlLHQscj1bXSxhPVtdLGksbz1bXSxuPVtdLHMsYz1bXSxkPVtdLGYsdT1bXSxwPVtdLGgsYj1bXSx4PVtdLGcsdj1bXSx3PVtdLE0sRj1bXSxDPVtdO3JldHVybiBjbGFzcyBleHRlbmRzIGV7c3RhdGlje2xldCBOPXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGVbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO3Q9W2ooe3R5cGU6U3RyaW5nfSldLGk9W2ooe3R5cGU6U3RyaW5nfSldLHM9W2ooe3R5cGU6U3RyaW5nfSldLGY9W2ooe3R5cGU6U3RyaW5nfSldLGg9W2ooe3R5cGU6Qm9vbGVhbn0pXSxnPVtqKHt0eXBlOkJvb2xlYW59KV0sTT1baih7dHlwZTpTdHJpbmd9KV0sdzgodGhpcyxudWxsLHQse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJsYXlvdXRNb2RlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczokPT4ibGF5b3V0TW9kZSJpbiAkLGdldDokPT4kLmxheW91dE1vZGUsc2V0OigkLEkpPT57JC5sYXlvdXRNb2RlPUl9fSxtZXRhZGF0YTpOfSxyLGEpLHc4KHRoaXMsbnVsbCxpLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibGFiZWxQb3NpdGlvbiIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6JD0+ImxhYmVsUG9zaXRpb24iaW4gJCxnZXQ6JD0+JC5sYWJlbFBvc2l0aW9uLHNldDooJCxJKT0+eyQubGFiZWxQb3NpdGlvbj1JfX0sbWV0YWRhdGE6Tn0sbyxuKSx3OCh0aGlzLG51bGwscyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImtleSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6JD0+ImtleSJpbiAkLGdldDokPT4kLmtleSxzZXQ6KCQsSSk9PnskLmtleT1JfX0sbWV0YWRhdGE6Tn0sYyxkKSx3OCh0aGlzLG51bGwsZix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImxhYmVsIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczokPT4ibGFiZWwiaW4gJCxnZXQ6JD0+JC5sYWJlbCxzZXQ6KCQsSSk9PnskLmxhYmVsPUl9fSxtZXRhZGF0YTpOfSx1LHApLHc4KHRoaXMsbnVsbCxoLHtraW5kOiJhY2Nlc3NvciIsbmFtZToicmVxdWlyZWQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOiQ9PiJyZXF1aXJlZCJpbiAkLGdldDokPT4kLnJlcXVpcmVkLHNldDooJCxJKT0+eyQucmVxdWlyZWQ9SX19LG1ldGFkYXRhOk59LGIseCksdzgodGhpcyxudWxsLGcse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJkaXNhYmxlZCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6JD0+ImRpc2FibGVkImluICQsZ2V0OiQ9PiQuZGlzYWJsZWQsc2V0OigkLEkpPT57JC5kaXNhYmxlZD1JfX0sbWV0YWRhdGE6Tn0sdix3KSx3OCh0aGlzLG51bGwsTSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImRlc2NyaXB0aW9uIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczokPT4iZGVzY3JpcHRpb24iaW4gJCxnZXQ6JD0+JC5kZXNjcmlwdGlvbixzZXQ6KCQsSSk9PnskLmRlc2NyaXB0aW9uPUl9fSxtZXRhZGF0YTpOfSxGLEMpLE4mJk9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6Tn0pfSNlPUZvKHRoaXMsciwiYXV0byIpO2dldCBsYXlvdXRNb2RlKCl7cmV0dXJuIHRoaXMuI2V9c2V0IGxheW91dE1vZGUoTil7dGhpcy4jZT1OfSN0PShGbyh0aGlzLGEpLEZvKHRoaXMsbywidG9wIikpO2dldCBsYWJlbFBvc2l0aW9uKCl7cmV0dXJuIHRoaXMuI3R9c2V0IGxhYmVsUG9zaXRpb24oTil7dGhpcy4jdD1OfSNyPShGbyh0aGlzLG4pLEZvKHRoaXMsYyx2b2lkIDApKTtnZXQga2V5KCl7cmV0dXJuIHRoaXMuI3J9c2V0IGtleShOKXt0aGlzLiNyPU59I2E9KEZvKHRoaXMsZCksRm8odGhpcyx1LHZvaWQgMCkpO2dldCBsYWJlbCgpe3JldHVybiB0aGlzLiNhfXNldCBsYWJlbChOKXt0aGlzLiNhPU59I2k9KEZvKHRoaXMscCksRm8odGhpcyxiLCExKSk7Z2V0IHJlcXVpcmVkKCl7cmV0dXJuIHRoaXMuI2l9c2V0IHJlcXVpcmVkKE4pe3RoaXMuI2k9Tn0jbz0oRm8odGhpcyx4KSxGbyh0aGlzLHYsITEpKTtnZXQgZGlzYWJsZWQoKXtyZXR1cm4gdGhpcy4jb31zZXQgZGlzYWJsZWQoTil7dGhpcy4jbz1OfSNuPShGbyh0aGlzLHcpLEZvKHRoaXMsRix2b2lkIDApKTtnZXQgZGVzY3JpcHRpb24oKXtyZXR1cm4gdGhpcy4jbn1zZXQgZGVzY3JpcHRpb24oTil7dGhpcy4jbj1OfXN0YXRpYyBnZXQgYmFzZVN0eWxlcygpe3JldHVybltsZWAKICAgICAgICAvKiBDU1MgVmFyaWFibGVzIGZvciBjb25zaXN0ZW50IHNwYWNpbmcgKi8KICAgICAgICA6aG9zdCB7CiAgICAgICAgICAtLWRlZXMtaW5wdXQtc3BhY2luZy11bml0OiA4cHg7CiAgICAgICAgICAtLWRlZXMtaW5wdXQtbGFiZWwtZ2FwOiB2YXIoLS1kZWVzLWlucHV0LXNwYWNpbmctdW5pdCk7IC8qIDhweCAqLwogICAgICAgIH0KCiAgICAgICAgLyogRGVmYXVsdCBibG9jayBkaXNwbGF5IHdpdGggbm8gbWFyZ2lucyAtIHNwYWNpbmcgaXMgY29udGFpbmVyLWRyaXZlbiAqLwogICAgICAgIDpob3N0IHsKICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgICAgbWFyZ2luOiAwOwogICAgICAgIH0KCiAgICAgICAgLyogSG9yaXpvbnRhbCBsYXlvdXQgbW9kZSAtIGFjdGl2YXRlZCBieSBhdHRyaWJ1dGUgKi8KICAgICAgICA6aG9zdChbbGF5b3V0LW1vZGU9Imhvcml6b250YWwiXSkgewogICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgICAgIH0KCiAgICAgICAgLyogTGFiZWwgcG9zaXRpb24gdmFyaWF0aW9ucyAqLwogICAgICAgIDpob3N0KFtsYWJlbC1wb3NpdGlvbj0ibGVmdCJdKSAuaW5wdXQtd3JhcHBlciB7CiAgICAgICAgICBkaXNwbGF5OiBncmlkOwogICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIDFmcjsKICAgICAgICAgIGdhcDogdmFyKC0tZGVlcy1pbnB1dC1sYWJlbC1nYXApOwogICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICB9CgogICAgICAgIDpob3N0KFtsYWJlbC1wb3NpdGlvbj0icmlnaHQiXSkgLmlucHV0LXdyYXBwZXIgewogICAgICAgICAgZGlzcGxheTogZ3JpZDsKICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIGF1dG87CiAgICAgICAgICBnYXA6IHZhcigtLWRlZXMtaW5wdXQtbGFiZWwtZ2FwKTsKICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgfQoKICAgICAgICA6aG9zdChbbGFiZWwtcG9zaXRpb249InRvcCJdKSAuaW5wdXQtd3JhcHBlciB7CiAgICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICB9CgogICAgICAgIDpob3N0KFtsYWJlbC1wb3NpdGlvbj0ibm9uZSJdKSBkZWVzLWxhYmVsIHsKICAgICAgICAgIGRpc3BsYXk6IG5vbmU7CiAgICAgICAgfQogICAgICBgXX1jaGFuZ2VTdWJqZWN0PShGbyh0aGlzLEMpLG5ldyBKdC5zbWFydHJ4LnJ4anMuU3ViamVjdCk7YXN5bmMgY29ubmVjdGVkQ2FsbGJhY2soKXthd2FpdCBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpLHRoaXMuZGV0ZWN0TGF5b3V0TW9kZSgpfWRldGVjdExheW91dE1vZGUoKXtpZih0aGlzLmxheW91dE1vZGUhPT0iYXV0byIpe3RoaXMuc2V0QXR0cmlidXRlKCJsYXlvdXQtbW9kZSIsdGhpcy5sYXlvdXRNb2RlKTtyZXR1cm59bGV0IE49dGhpcy5jbG9zZXN0KCJkZWVzLWZvcm0iKTtOJiZOLmhhc0F0dHJpYnV0ZSgiaG9yaXpvbnRhbC1sYXlvdXQiKT90aGlzLnNldEF0dHJpYnV0ZSgibGF5b3V0LW1vZGUiLCJob3Jpem9udGFsIik6dGhpcy5zZXRBdHRyaWJ1dGUoImxheW91dC1tb2RlIiwidmVydGljYWwiKX11cGRhdGVkKE4pe3N1cGVyLnVwZGF0ZWQoTiksTi5oYXMoImxheW91dE1vZGUiKSYmdGhpcy5kZXRlY3RMYXlvdXRNb2RlKCksTi5oYXMoImxhYmVsUG9zaXRpb24iKSYmdGhpcy5zZXRBdHRyaWJ1dGUoImxhYmVsLXBvc2l0aW9uIix0aGlzLmxhYmVsUG9zaXRpb24pfWFzeW5jIGZyZWV6ZSgpe3RoaXMuZGlzYWJsZWQ9ITB9YXN5bmMgdW5mcmVlemUoKXt0aGlzLmRpc2FibGVkPSExfX19KSgpfSk7dmFyIHpFcixDRXI9bCgoKT0+e1NlKCk7emEoKTt0MSgpO28zKCk7ekVyPSgpPT5TYAogIDxkZWVzLWRlbW93cmFwcGVyIC5ydW5BZnRlclJlbmRlcj0ke2FzeW5jIGU9PntsZXQgdD1lLnF1ZXJ5U2VsZWN0b3JBbGwoImRlZXMtaW5wdXQtY2hlY2tib3giKSxyPWUucXVlcnlTZWxlY3RvcigiI3NlbGVjdC1hbGwtYnRuIiksYT1lLnF1ZXJ5U2VsZWN0b3IoIiNjbGVhci1hbGwtYnRuIik7ciYmYSYmKHIuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCgpPT57dC5mb3JFYWNoKGk9PnshaS5kaXNhYmxlZCYmaS5rZXk/LnN0YXJ0c1dpdGgoImZlYXR1cmUiKSYmKGkudmFsdWU9ITApfSl9KSxhLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwoKT0+e3QuZm9yRWFjaChpPT57IWkuZGlzYWJsZWQmJmkua2V5Py5zdGFydHNXaXRoKCJmZWF0dXJlIikmJihpLnZhbHVlPSExKX0pfSkpfX0+CiAgICA8c3R5bGU+CiAgICAgICR7bGVgCiAgICAgICAgLmRlbW8tY29udGFpbmVyIHsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgICAgZ2FwOiAyNHB4OwogICAgICAgICAgcGFkZGluZzogMjRweDsKICAgICAgICAgIG1heC13aWR0aDogMTIwMHB4OwogICAgICAgICAgbWFyZ2luOiAwIGF1dG87CiAgICAgICAgfQogICAgICAgIAogICAgICAgIGRlZXMtcGFuZWwgewogICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgZGVlcy1wYW5lbDpsYXN0LWNoaWxkIHsKICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5jaGVja2JveC1ncm91cCB7CiAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICAgIGdhcDogMTJweDsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLmhvcml6b250YWwtY2hlY2tib3hlcyB7CiAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgZ2FwOiAyNHB4OwogICAgICAgICAgZmxleC13cmFwOiB3cmFwOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAuaW50ZXJhY3RpdmUtc2VjdGlvbiB7CiAgICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDIxMCA0MCUgOTYuMSUpIiwiaHNsKDIxNSAyMC4yJSAxNi44JSkiKX07CiAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7CiAgICAgICAgICBwYWRkaW5nOiAxNnB4OwogICAgICAgICAgbWFyZ2luLXRvcDogMTZweDsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLm91dHB1dC10ZXh0IHsKICAgICAgICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7CiAgICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuMyAyNSUgMjYuNyUpIiwiaHNsKDIxMCA0MCUgODAlKSIpfTsKICAgICAgICAgIHBhZGRpbmc6IDhweDsKICAgICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjEwIDQwJSA5OCUpIiwiaHNsKDIxNSAyMC4yJSAxMS44JSkiKX07CiAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgICBtaW4taGVpZ2h0OiAyNHB4OwogICAgICAgIH0KICAgICAgICAKICAgICAgICAuZm9ybS1zZWN0aW9uIHsKICAgICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5NyUpIiwiaHNsKDAgMCUgNyUpIil9OwogICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgwIDAlIDg5LjglKSIsImhzbCgwIDAlIDE0LjklKSIpfTsKICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgICAgIHBhZGRpbmc6IDIwcHg7CiAgICAgICAgICBtYXJnaW4tdG9wOiAxNnB4OwogICAgICAgIH0KICAgICAgICAKICAgICAgICAuYnV0dG9uLWdyb3VwIHsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBnYXA6IDhweDsKICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5mZWF0dXJlLWxpc3QgewogICAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTAgNDAlIDk2LjElKSIsImhzbCgyMTUgMjAuMiUgMTEuOCUpIil9OwogICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgyMTQuMyAzMS44JSA5MS40JSkiLCJoc2woMjE1IDIwLjIlIDE2LjglKSIpfTsKICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICAgIHBhZGRpbmc6IDE2cHg7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5zZWN0aW9uLXRpdGxlIHsKICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsKICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4OwogICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE1LjMgMjUlIDguOCUpIiwiaHNsKDIxMCA0MCUgOTglKSIpfTsKICAgICAgICB9CiAgICAgIGB9CiAgICA8L3N0eWxlPgogICAgCiAgICA8ZGl2IGNsYXNzPSJkZW1vLWNvbnRhaW5lciI+CiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyJCYXNpYyBDaGVja2JveGVzIn0gLnN1YnRpdGxlPSR7IlNpbXBsZSBjaGVja2JveCBleGFtcGxlcyB3aXRoIHZhcmlvdXMgbGFiZWxzIn0+CiAgICAgICAgPGRpdiBjbGFzcz0iY2hlY2tib3gtZ3JvdXAiPgogICAgICAgICAgPGRlZXMtaW5wdXQtY2hlY2tib3ggCiAgICAgICAgICAgIC5sYWJlbD0keyJJIGFncmVlIHRvIHRoZSBUZXJtcyBhbmQgQ29uZGl0aW9ucyJ9IAogICAgICAgICAgICAudmFsdWU9JHshMH0KICAgICAgICAgICAgLmtleT0keyJ0ZXJtcyJ9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LWNoZWNrYm94PgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1pbnB1dC1jaGVja2JveCAKICAgICAgICAgICAgLmxhYmVsPSR7IlN1YnNjcmliZSB0byBuZXdzbGV0dGVyIn0gCiAgICAgICAgICAgIC52YWx1ZT0keyExfQogICAgICAgICAgICAua2V5PSR7Im5ld3NsZXR0ZXIifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC1jaGVja2JveD4KICAgICAgICAgIAogICAgICAgICAgPGRlZXMtaW5wdXQtY2hlY2tib3ggCiAgICAgICAgICAgIC5sYWJlbD0keyJFbmFibGUgbm90aWZpY2F0aW9ucyJ9IAogICAgICAgICAgICAudmFsdWU9JHshMX0KICAgICAgICAgICAgLmRlc2NyaXB0aW9uPSR7IlJlY2VpdmUgZW1haWwgdXBkYXRlcyBhYm91dCB5b3VyIGFjY291bnQifQogICAgICAgICAgICAua2V5PSR7Im5vdGlmaWNhdGlvbnMifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC1jaGVja2JveD4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgICAKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IkNoZWNrYm94IFN0YXRlcyJ9IC5zdWJ0aXRsZT0keyJEaWZmZXJlbnQgY2hlY2tib3ggc3RhdGVzIGFuZCBjb25maWd1cmF0aW9ucyJ9PgogICAgICAgIDxkaXYgY2xhc3M9ImNoZWNrYm94LWdyb3VwIj4KICAgICAgICAgIDxkZWVzLWlucHV0LWNoZWNrYm94IAogICAgICAgICAgICAubGFiZWw9JHsiRGVmYXVsdCBzdGF0ZSJ9IAogICAgICAgICAgICAudmFsdWU9JHshMX0KICAgICAgICAgID48L2RlZXMtaW5wdXQtY2hlY2tib3g+CiAgICAgICAgICAKICAgICAgICAgIDxkZWVzLWlucHV0LWNoZWNrYm94IAogICAgICAgICAgICAubGFiZWw9JHsiQ2hlY2tlZCBzdGF0ZSJ9IAogICAgICAgICAgICAudmFsdWU9JHshMH0KICAgICAgICAgID48L2RlZXMtaW5wdXQtY2hlY2tib3g+CiAgICAgICAgICAKICAgICAgICAgIDxkZWVzLWlucHV0LWNoZWNrYm94IAogICAgICAgICAgICAubGFiZWw9JHsiRGlzYWJsZWQgdW5jaGVja2VkIn0gCiAgICAgICAgICAgIC52YWx1ZT0keyExfQogICAgICAgICAgICAuZGlzYWJsZWQ9JHshMH0KICAgICAgICAgID48L2RlZXMtaW5wdXQtY2hlY2tib3g+CiAgICAgICAgICAKICAgICAgICAgIDxkZWVzLWlucHV0LWNoZWNrYm94IAogICAgICAgICAgICAubGFiZWw9JHsiRGlzYWJsZWQgY2hlY2tlZCJ9IAogICAgICAgICAgICAudmFsdWU9JHshMH0KICAgICAgICAgICAgLmRpc2FibGVkPSR7ITB9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LWNoZWNrYm94PgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1pbnB1dC1jaGVja2JveCAKICAgICAgICAgICAgLmxhYmVsPSR7IlJlcXVpcmVkIGNoZWNrYm94In0gCiAgICAgICAgICAgIC5yZXF1aXJlZD0keyEwfQogICAgICAgICAgICAua2V5PSR7InJlcXVpcmVkIn0KICAgICAgICAgID48L2RlZXMtaW5wdXQtY2hlY2tib3g+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgICAgCiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyJIb3Jpem9udGFsIExheW91dCJ9IC5zdWJ0aXRsZT0keyJDaGVja2JveGVzIGFycmFuZ2VkIGhvcml6b250YWxseSBmb3IgY29tcGFjdCBmb3JtcyJ9PgogICAgICAgIDxkaXYgY2xhc3M9Imhvcml6b250YWwtY2hlY2tib3hlcyI+CiAgICAgICAgICA8ZGVlcy1pbnB1dC1jaGVja2JveCAKICAgICAgICAgICAgLmxhYmVsPSR7Ik9wdGlvbiBBIn0gCiAgICAgICAgICAgIC52YWx1ZT0keyExfQogICAgICAgICAgICAubGF5b3V0TW9kZT0keyJob3Jpem9udGFsIn0KICAgICAgICAgICAgLmtleT0keyJvcHRpb25BIn0KICAgICAgICAgID48L2RlZXMtaW5wdXQtY2hlY2tib3g+CiAgICAgICAgICAKICAgICAgICAgIDxkZWVzLWlucHV0LWNoZWNrYm94IAogICAgICAgICAgICAubGFiZWw9JHsiT3B0aW9uIEIifSAKICAgICAgICAgICAgLnZhbHVlPSR7ITB9CiAgICAgICAgICAgIC5sYXlvdXRNb2RlPSR7Imhvcml6b250YWwifQogICAgICAgICAgICAua2V5PSR7Im9wdGlvbkIifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC1jaGVja2JveD4KICAgICAgICAgIAogICAgICAgICAgPGRlZXMtaW5wdXQtY2hlY2tib3ggCiAgICAgICAgICAgIC5sYWJlbD0keyJPcHRpb24gQyJ9IAogICAgICAgICAgICAudmFsdWU9JHshMX0KICAgICAgICAgICAgLmxheW91dE1vZGU9JHsiaG9yaXpvbnRhbCJ9CiAgICAgICAgICAgIC5rZXk9JHsib3B0aW9uQyJ9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LWNoZWNrYm94PgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1pbnB1dC1jaGVja2JveCAKICAgICAgICAgICAgLmxhYmVsPSR7Ik9wdGlvbiBEIn0gCiAgICAgICAgICAgIC52YWx1ZT0keyEwfQogICAgICAgICAgICAubGF5b3V0TW9kZT0keyJob3Jpem9udGFsIn0KICAgICAgICAgICAgLmtleT0keyJvcHRpb25EIn0KICAgICAgICAgID48L2RlZXMtaW5wdXQtY2hlY2tib3g+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgICAgCiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyJGZWF0dXJlIFNlbGVjdGlvbiBFeGFtcGxlIn0gLnN1YnRpdGxlPSR7IkNvbW1vbiB1c2UgY2FzZSBmb3IgZmVhdHVyZSB0b2dnbGVzIHdpdGggYmF0Y2ggb3BlcmF0aW9ucyJ9PgogICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ncm91cCI+CiAgICAgICAgICA8ZGVlcy1idXR0b24gaWQ9InNlbGVjdC1hbGwtYnRuIiB0eXBlPSJzZWNvbmRhcnkiPlNlbGVjdCBBbGw8L2RlZXMtYnV0dG9uPgogICAgICAgICAgPGRlZXMtYnV0dG9uIGlkPSJjbGVhci1hbGwtYnRuIiB0eXBlPSJzZWNvbmRhcnkiPkNsZWFyIEFsbDwvZGVlcy1idXR0b24+CiAgICAgICAgPC9kaXY+CiAgICAgICAgCiAgICAgICAgPGRpdiBjbGFzcz0iZmVhdHVyZS1saXN0Ij4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNoZWNrYm94LWdyb3VwIj4KICAgICAgICAgICAgPGRlZXMtaW5wdXQtY2hlY2tib3ggCiAgICAgICAgICAgICAgLmxhYmVsPSR7IkRhcmsgTW9kZSBTdXBwb3J0In0gCiAgICAgICAgICAgICAgLnZhbHVlPSR7ITB9CiAgICAgICAgICAgICAgLmtleT0keyJmZWF0dXJlMSJ9CiAgICAgICAgICAgID48L2RlZXMtaW5wdXQtY2hlY2tib3g+CiAgICAgICAgICAgIAogICAgICAgICAgICA8ZGVlcy1pbnB1dC1jaGVja2JveCAKICAgICAgICAgICAgICAubGFiZWw9JHsiRW1haWwgTm90aWZpY2F0aW9ucyJ9IAogICAgICAgICAgICAgIC52YWx1ZT0keyEwfQogICAgICAgICAgICAgIC5rZXk9JHsiZmVhdHVyZTIifQogICAgICAgICAgICA+PC9kZWVzLWlucHV0LWNoZWNrYm94PgogICAgICAgICAgICAKICAgICAgICAgICAgPGRlZXMtaW5wdXQtY2hlY2tib3ggCiAgICAgICAgICAgICAgLmxhYmVsPSR7IlR3by1GYWN0b3IgQXV0aGVudGljYXRpb24ifSAKICAgICAgICAgICAgICAudmFsdWU9JHshMX0KICAgICAgICAgICAgICAua2V5PSR7ImZlYXR1cmUzIn0KICAgICAgICAgICAgPjwvZGVlcy1pbnB1dC1jaGVja2JveD4KICAgICAgICAgICAgCiAgICAgICAgICAgIDxkZWVzLWlucHV0LWNoZWNrYm94IAogICAgICAgICAgICAgIC5sYWJlbD0keyJBUEkgQWNjZXNzIn0gCiAgICAgICAgICAgICAgLnZhbHVlPSR7ITB9CiAgICAgICAgICAgICAgLmtleT0keyJmZWF0dXJlNCJ9CiAgICAgICAgICAgID48L2RlZXMtaW5wdXQtY2hlY2tib3g+CiAgICAgICAgICAgIAogICAgICAgICAgICA8ZGVlcy1pbnB1dC1jaGVja2JveCAKICAgICAgICAgICAgICAubGFiZWw9JHsiQWR2YW5jZWQgQW5hbHl0aWNzIn0gCiAgICAgICAgICAgICAgLnZhbHVlPSR7ITF9CiAgICAgICAgICAgICAgLmtleT0keyJmZWF0dXJlNSJ9CiAgICAgICAgICAgID48L2RlZXMtaW5wdXQtY2hlY2tib3g+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgICAKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IlByaXZhY3kgU2V0dGluZ3MgRXhhbXBsZSJ9IC5zdWJ0aXRsZT0keyJDaGVja2JveGVzIGluIGEgdHlwaWNhbCBmb3JtIGNvbnRleHQifT4KICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLXNlY3Rpb24iPgogICAgICAgICAgPGg0IGNsYXNzPSJzZWN0aW9uLXRpdGxlIj5Qcml2YWN5IFByZWZlcmVuY2VzPC9oND4KICAgICAgICAgIAogICAgICAgICAgPGRpdiBjbGFzcz0iY2hlY2tib3gtZ3JvdXAiPgogICAgICAgICAgICA8ZGVlcy1pbnB1dC1jaGVja2JveCAKICAgICAgICAgICAgICAubGFiZWw9JHsiU2hhcmUgYW5hbHl0aWNzIGRhdGEifSAKICAgICAgICAgICAgICAudmFsdWU9JHshMH0KICAgICAgICAgICAgICAuZGVzY3JpcHRpb249JHsiSGVscCB1cyBpbXByb3ZlIGJ5IHNoYXJpbmcgYW5vbnltb3VzIHVzYWdlIGRhdGEifQogICAgICAgICAgICA+PC9kZWVzLWlucHV0LWNoZWNrYm94PgogICAgICAgICAgICAKICAgICAgICAgICAgPGRlZXMtaW5wdXQtY2hlY2tib3ggCiAgICAgICAgICAgICAgLmxhYmVsPSR7IlBlcnNvbmFsaXplZCByZWNvbW1lbmRhdGlvbnMifSAKICAgICAgICAgICAgICAudmFsdWU9JHshMH0KICAgICAgICAgICAgICAuZGVzY3JpcHRpb249JHsiR2V0IHN1Z2dlc3Rpb25zIGJhc2VkIG9uIHlvdXIgYWN0aXZpdHkifQogICAgICAgICAgICA+PC9kZWVzLWlucHV0LWNoZWNrYm94PgogICAgICAgICAgICAKICAgICAgICAgICAgPGRlZXMtaW5wdXQtY2hlY2tib3ggCiAgICAgICAgICAgICAgLmxhYmVsPSR7Ik1hcmtldGluZyBjb21tdW5pY2F0aW9ucyJ9IAogICAgICAgICAgICAgIC52YWx1ZT0keyExfQogICAgICAgICAgICAgIC5kZXNjcmlwdGlvbj0keyJSZWNlaXZlIHByb21vdGlvbmFsIGVtYWlscyBhbmQgc3BlY2lhbCBvZmZlcnMifQogICAgICAgICAgICA+PC9kZWVzLWlucHV0LWNoZWNrYm94PgogICAgICAgICAgICAKICAgICAgICAgICAgPGRlZXMtaW5wdXQtY2hlY2tib3ggCiAgICAgICAgICAgICAgLmxhYmVsPSR7IlRoaXJkLXBhcnR5IGludGVncmF0aW9ucyJ9IAogICAgICAgICAgICAgIC52YWx1ZT0keyExfQogICAgICAgICAgICAgIC5kZXNjcmlwdGlvbj0keyJBbGxvdyBhcHByb3ZlZCBwYXJ0bmVycyB0byBhY2Nlc3MgeW91ciBkYXRhIn0KICAgICAgICAgICAgPjwvZGVlcy1pbnB1dC1jaGVja2JveD4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2RlZXMtcGFuZWw+CiAgICAgIAogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiSW50ZXJhY3RpdmUgRXhhbXBsZSJ9IC5zdWJ0aXRsZT0keyJDbGljayBjaGVja2JveGVzIHRvIHNlZSB2YWx1ZSBjaGFuZ2VzIn0+CiAgICAgICAgPGRpdiBjbGFzcz0iY2hlY2tib3gtZ3JvdXAiPgogICAgICAgICAgPGRlZXMtaW5wdXQtY2hlY2tib3ggCiAgICAgICAgICAgIC5sYWJlbD0keyJGZWF0dXJlIHRvZ2dsZSJ9IAogICAgICAgICAgICAudmFsdWU9JHshMX0KICAgICAgICAgICAgQGNoYW5nZVN1YmplY3Q9JHtlPT57bGV0IHQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2NoZWNrYm94LW91dHB1dCIpO2lmKHQmJmUuZGV0YWlsKXtsZXQgcj1lLmRldGFpbC5nZXRWYWx1ZSgpO3QudGV4dENvbnRlbnQ9YEZlYXR1cmUgaXMgJHtyPyJlbmFibGVkIjoiZGlzYWJsZWQifWB9fX0KICAgICAgICAgID48L2RlZXMtaW5wdXQtY2hlY2tib3g+CiAgICAgICAgICAKICAgICAgICAgIDxkZWVzLWlucHV0LWNoZWNrYm94IAogICAgICAgICAgICAubGFiZWw9JHsiRGVidWcgbW9kZSJ9IAogICAgICAgICAgICAudmFsdWU9JHshMX0KICAgICAgICAgICAgQGNoYW5nZVN1YmplY3Q9JHtlPT57bGV0IHQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2RlYnVnLW91dHB1dCIpO2lmKHQmJmUuZGV0YWlsKXtsZXQgcj1lLmRldGFpbC5nZXRWYWx1ZSgpO3QudGV4dENvbnRlbnQ9YERlYnVnIG1vZGU6ICR7cj8iT04iOiJPRkYifWB9fX0KICAgICAgICAgID48L2RlZXMtaW5wdXQtY2hlY2tib3g+CiAgICAgICAgPC9kaXY+CiAgICAgICAgCiAgICAgICAgPGRpdiBjbGFzcz0iaW50ZXJhY3RpdmUtc2VjdGlvbiI+CiAgICAgICAgICA8ZGl2IGlkPSJjaGVja2JveC1vdXRwdXQiIGNsYXNzPSJvdXRwdXQtdGV4dCI+RmVhdHVyZSBpcyBkaXNhYmxlZDwvZGl2PgogICAgICAgICAgPGRpdiBpZD0iZGVidWctb3V0cHV0IiBjbGFzcz0ib3V0cHV0LXRleHQiIHN0eWxlPSJtYXJnaW4tdG9wOiA4cHg7Ij5EZWJ1ZyBtb2RlOiBPRkY8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgPC9kaXY+CiAgPC9kZWVzLWRlbW93cmFwcGVyPgpgfSk7dmFyIFZsdCxkWixNbGUsa2xlPWwoKCk9PntTZSgpO1BhKCk7Q0VyKCk7dW8oKTtvdCgpO1ZsdD1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LGRaPWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSxNbGU9KCgpPT57bGV0IGU9W3plKCJkZWVzLWlucHV0LWNoZWNrYm94IildLHQscj1bXSxhLGk9aHQsbyxuPVtdLHM9W10sYyxkPVtdLGY9W107dmFyIHU9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCBwPXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO289W2ooe3R5cGU6Qm9vbGVhbn0pXSxjPVtqKHt0eXBlOkJvb2xlYW59KV0sVmx0KHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToidmFsdWUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmg9PiJ2YWx1ZSJpbiBoLGdldDpoPT5oLnZhbHVlLHNldDooaCxiKT0+e2gudmFsdWU9Yn19LG1ldGFkYXRhOnB9LG4scyksVmx0KHRoaXMsbnVsbCxjLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiaW5kZXRlcm1pbmF0ZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6aD0+ImluZGV0ZXJtaW5hdGUiaW4gaCxnZXQ6aD0+aC5pbmRldGVybWluYXRlLHNldDooaCxiKT0+e2guaW5kZXRlcm1pbmF0ZT1ifX0sbWV0YWRhdGE6cH0sZCxmKSxWbHQobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6cH0sbnVsbCxyKSx1PWE9dC52YWx1ZSxwJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnB9KX1zdGF0aWMgZGVtbz16RXI7c3RhdGljIGRlbW9Hcm91cHM9WyJJbnB1dCJdOyNlPWRaKHRoaXMsbiwhMSk7Z2V0IHZhbHVlKCl7cmV0dXJuIHRoaXMuI2V9c2V0IHZhbHVlKHApe3RoaXMuI2U9cH0jdD0oZFoodGhpcyxzKSxkWih0aGlzLGQsITEpKTtnZXQgaW5kZXRlcm1pbmF0ZSgpe3JldHVybiB0aGlzLiN0fXNldCBpbmRldGVybWluYXRlKHApe3RoaXMuI3Q9cH1jb25zdHJ1Y3Rvcigpe3N1cGVyKCksZFoodGhpcyxmKSx0aGlzLmxhYmVsUG9zaXRpb249InJpZ2h0In1zdGF0aWMgc3R5bGVzPVtQZSwuLi5odC5iYXNlU3R5bGVzLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgICAvKiBUT0RPOiBNaWdyYXRlIGhhcmRjb2RlZCB2YWx1ZXMgdG8gLS1kZWVzLSogQ1NTIHZhcmlhYmxlcyAqLwogICAgICAgICogewogICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAgICB9CgogICAgICAgIDpob3N0IHsKICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDsKICAgICAgICAgIGZvbnQtZmFtaWx5OiAke1hyfTsKICAgICAgICB9CgogICAgICAgIC5tYWluY29udGFpbmVyIHsKICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OwogICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7CiAgICAgICAgICBnYXA6IDhweDsKICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lOwogICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgICAgfQoKICAgICAgICAuY2hlY2tib3ggewogICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgICAgaGVpZ2h0OiAxOHB4OwogICAgICAgICAgd2lkdGg6IDE4cHg7CiAgICAgICAgICBmbGV4LXNocmluazogMDsKICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OS44JSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTAwJSkiLCJoc2woMCAwJSAzLjklKSIpfTsKICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICAgICAgbWFyZ2luLXRvcDogMXB4OwogICAgICAgIH0KCiAgICAgICAgLm1haW5jb250YWluZXI6aG92ZXIgLmNoZWNrYm94IHsKICAgICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDc5LjglKSIsImhzbCgwIDAlIDIwLjklKSIpfTsKICAgICAgICB9CgogICAgICAgIC5jaGVja2JveC5zZWxlY3RlZCB7CiAgICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDIyMi4yIDQ3LjQlIDUxLjIlKSIsImhzbCgyMTcuMiA5MS4yJSA1OS44JSkiKX07CiAgICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjIyLjIgNDcuNCUgNTEuMiUpIiwiaHNsKDIxNy4yIDkxLjIlIDU5LjglKSIpfTsKICAgICAgICB9CgogICAgICAgIC5jaGVja2JveDpmb2N1cy12aXNpYmxlIHsKICAgICAgICAgIG91dGxpbmU6IG5vbmU7CiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggJHttLmJkVGhlbWUoImhzbCgyMjIuMiA0Ny40JSA1MS4yJSAvIDAuMSkiLCJoc2woMjE3LjIgOTEuMiUgNTkuOCUgLyAwLjEpIil9OwogICAgICAgIH0KCiAgICAgICAgLyogQ2hlY2ttYXJrIHVzaW5nIEx1Y2lkZSBpY29uIHN0eWxlICovCiAgICAgICAgLmNoZWNrYm94IC5jaGVja21hcmsgewogICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgICAgdG9wOiA1MCU7CiAgICAgICAgICBsZWZ0OiA1MCU7CiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsKICAgICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2U7CiAgICAgICAgfQoKICAgICAgICAuY2hlY2tib3guc2VsZWN0ZWQgLmNoZWNrbWFyayB7CiAgICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIH0KCiAgICAgICAgLmNoZWNrYm94IC5jaGVja21hcmsgc3ZnIHsKICAgICAgICAgIHdpZHRoOiAxMnB4OwogICAgICAgICAgaGVpZ2h0OiAxMnB4OwogICAgICAgICAgc3Ryb2tlOiB3aGl0ZTsKICAgICAgICAgIHN0cm9rZS13aWR0aDogMzsKICAgICAgICB9CgogICAgICAgIC8qIERpc2FibGVkIHN0YXRlICovCiAgICAgICAgLm1haW5jb250YWluZXIuZGlzYWJsZWQgewogICAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsKICAgICAgICAgIG9wYWNpdHk6IDAuNTsKICAgICAgICB9CgogICAgICAgIC5jaGVja2JveC5kaXNhYmxlZCB7CiAgICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOTUuMSUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgIH0KCiAgICAgICAgLyogTGFiZWwgKi8KICAgICAgICAubGFiZWwtY29udGFpbmVyIHsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgICAgZ2FwOiAycHg7CiAgICAgICAgICBmbGV4OiAxOwogICAgICAgIH0KCiAgICAgICAgLmNoZWNrYm94LWxhYmVsIHsKICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDsKICAgICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTUlKSIsImhzbCgwIDAlIDkwJSkiKX07CiAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBlYXNlOwogICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07CiAgICAgICAgfQoKICAgICAgICAubWFpbmNvbnRhaW5lcjpob3ZlciAuY2hlY2tib3gtbGFiZWwgewogICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5JSkiLCJoc2woMCAwJSA5NSUpIil9OwogICAgICAgIH0KCiAgICAgICAgLm1haW5jb250YWluZXIuZGlzYWJsZWQ6aG92ZXIgLmNoZWNrYm94LWxhYmVsIHsKICAgICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTUlKSIsImhzbCgwIDAlIDkwJSkiKX07CiAgICAgICAgfQoKICAgICAgICAvKiBEZXNjcmlwdGlvbiAqLwogICAgICAgIC5kZXNjcmlwdGlvbi10ZXh0IHsKICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNDUuMSUpIiwiaHNsKDAgMCUgNjMuOSUpIil9OwogICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTsKICAgICAgICB9CiAgICBgXTtyZW5kZXIoKXtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0iaW5wdXQtd3JhcHBlciI+CiAgICAgICAgPGRpdiBjbGFzcz0ibWFpbmNvbnRhaW5lciAke3RoaXMuZGlzYWJsZWQ/ImRpc2FibGVkIjoiIn0iIEBjbGljaz0iJHt0aGlzLnRvZ2dsZVNlbGVjdGVkfSI+CiAgICAgICAgICA8ZGl2IAogICAgICAgICAgICBjbGFzcz0iY2hlY2tib3ggJHt0aGlzLnZhbHVlPyJzZWxlY3RlZCI6IiJ9ICR7dGhpcy5kaXNhYmxlZD8iZGlzYWJsZWQiOiIifSIgCiAgICAgICAgICAgIHRhYmluZGV4PSIke3RoaXMuZGlzYWJsZWQ/Ii0xIjoiMCJ9IgogICAgICAgICAgICBAa2V5ZG93bj0iJHt0aGlzLmhhbmRsZUtleWRvd259IgogICAgICAgICAgPgogICAgICAgICAgICAke3RoaXMudmFsdWU/U2AKICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImNoZWNrbWFyayI+CiAgICAgICAgICAgICAgICAgICAgPHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMjAgNkw5IDE3TDQgMTIiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KICAgICAgICAgICAgICAgICAgICA8L3N2Zz4KICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgYDp0aGlzLmluZGV0ZXJtaW5hdGU/U2AKICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iY2hlY2ttYXJrIj4KICAgICAgICAgICAgICAgICAgICAgIDxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNNSAxMkgxOSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgogICAgICAgICAgICAgICAgICAgICAgPC9zdmc+CiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgICBgOlNgYH0KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0ibGFiZWwtY29udGFpbmVyIj4KICAgICAgICAgICAgJHt0aGlzLmxhYmVsP1NgPGRpdiBjbGFzcz0iY2hlY2tib3gtbGFiZWwiPiR7dGhpcy5sYWJlbH08L2Rpdj5gOiIifQogICAgICAgICAgICAke3RoaXMuZGVzY3JpcHRpb24/U2A8ZGl2IGNsYXNzPSJkZXNjcmlwdGlvbi10ZXh0Ij4ke3RoaXMuZGVzY3JpcHRpb259PC9kaXY+YDoiIn0KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIGB9YXN5bmMgdG9nZ2xlU2VsZWN0ZWQoKXt0aGlzLmRpc2FibGVkfHwodGhpcy52YWx1ZT0hdGhpcy52YWx1ZSx0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJuZXdWYWx1ZSIse2RldGFpbDp0aGlzLnZhbHVlLGJ1YmJsZXM6ITB9KSksdGhpcy5jaGFuZ2VTdWJqZWN0Lm5leHQodGhpcykpfWdldFZhbHVlKCl7cmV0dXJuIHRoaXMudmFsdWV9c2V0VmFsdWUocCl7dGhpcy52YWx1ZT1wfWZvY3VzKCl7bGV0IHA9dGhpcy5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoIi5jaGVja2JveCIpO3AmJnAuZm9jdXMoKX1oYW5kbGVLZXlkb3duKHApeyhwLmtleT09PSIgInx8cC5rZXk9PT0iRW50ZXIiKSYmKHAucHJldmVudERlZmF1bHQoKSx0aGlzLnRvZ2dsZVNlbGVjdGVkKCkpfXN0YXRpY3tkWihhLHIpfX07cmV0dXJuIHU9YX0pKCl9KTt2YXIgazg9e307cWUoazgse2JyaWdodDooKT0+TTgsZGFyazooKT0+am59KTt2YXIgam4sTTgsVm49bCgoKT0+e2puPXtibHVlOiIjMDA1MGI5IixibHVlQWN0aXZlOiIjMDA2OWYyIixibHVlTXV0ZWQ6IiMwMTI0NTIiLHRleHQ6IiNmZmZmZmYifSxNOD17Ymx1ZToiIzAwNTBiOSIsYmx1ZUFjdGl2ZToiIzAwNjlmMiIsYmx1ZU11dGVkOiIjMDA2OWYyIix0ZXh0OiIjMzMzMzMzIn19KTt2YXIgX0VyLFRFcj1sKCgpPT57U2UoKTtTOCgpO19Fcj0oKT0+U2AKICA8c3R5bGU+CiAgICAke2xlYAogICAgICAuZGVtby1jb250YWluZXIgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBnYXA6IDI0cHg7CiAgICAgICAgcGFkZGluZzogMjRweDsKICAgICAgICBtYXgtd2lkdGg6IDEyMDBweDsKICAgICAgICBtYXJnaW46IDAgYXV0bzsKICAgICAgfQogICAgICAKICAgICAgLmRlbW8tc2VjdGlvbiB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmOGY5ZmEiLCIjMWExYTFhIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgICBwYWRkaW5nOiAyNHB4OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZTBlMGUwIiwiIzMzMyIpfTsKICAgICAgfQogICAgICAKICAgICAgLmRlbW8tc2VjdGlvbiBoMyB7CiAgICAgICAgbWFyZ2luLXRvcDogMDsKICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzMzMyIsIiNmZmYiKX07CiAgICAgIH0KICAgICAgCiAgICAgIC5kZW1vLXNlY3Rpb24gcCB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNjY2IiwiIzk5OSIpfTsKICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4OwogICAgICB9CiAgICAgIAogICAgICAuYnV0dG9uLWdyaWQgewogICAgICAgIGRpc3BsYXk6IGdyaWQ7CiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgxNTBweCwgMWZyKSk7CiAgICAgICAgZ2FwOiAxNnB4OwogICAgICB9CiAgICBgfQogIDwvc3R5bGU+CiAgCiAgPGRpdiBjbGFzcz0iZGVtby1jb250YWluZXIiPgogICAgPGRpdiBjbGFzcz0iZGVtby1zZWN0aW9uIj4KICAgICAgPGgzPkhlYWRlciBCdXR0b25zPC9oMz4KICAgICAgPHA+TW9kYWxzIGNhbiBoYXZlIG9wdGlvbmFsIGhlYWRlciBidXR0b25zIGZvciBoZWxwIGFuZCBjbG9zaW5nLjwvcD4KICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWdyaWQiPgogICAgICAgIDxkZWVzLWJ1dHRvbiBAY2xpY2s9JHsoKT0+e0d0LmNyZWF0ZUFuZFNob3coe2hlYWRpbmc6IldpdGggSGVscCBCdXR0b24iLHNob3dIZWxwQnV0dG9uOiEwLG9uSGVscDphc3luYygpPT57bGV0IGU9YXdhaXQgR3QuY3JlYXRlQW5kU2hvdyh7aGVhZGluZzoiSGVscCIsd2lkdGg6InNtYWxsIixzaG93Q2xvc2VCdXR0b246ITAsc2hvd0hlbHBCdXR0b246ITEsY29udGVudDpTYAogICAgICAgICAgICAgICAgICA8cD5UaGlzIGlzIHRoZSBoZWxwIGNvbnRlbnQgZm9yIHRoZSBtb2RhbC48L3A+CiAgICAgICAgICAgICAgICAgIDxwPllvdSBjYW4gcHJvdmlkZSBjb250ZXh0LXNwZWNpZmljIGhlbHAgaGVyZS48L3A+CiAgICAgICAgICAgICAgICBgLG1lbnVPcHRpb25zOlt7bmFtZToiR290IGl0IixhY3Rpb246YXN5bmMgdD0+dC5kZXN0cm95KCl9XX0pfSxjb250ZW50OlNgCiAgICAgICAgICAgICAgPHA+VGhpcyBtb2RhbCBoYXMgYSBoZWxwIGJ1dHRvbiBpbiB0aGUgaGVhZGVyLiBDbGljayBpdCB0byBzZWUgaGVscCBjb250ZW50LjwvcD4KICAgICAgICAgICAgICA8cD5UaGUgY2xvc2UgYnV0dG9uIGlzIGFsc28gdmlzaWJsZSBieSBkZWZhdWx0LjwvcD4KICAgICAgICAgICAgYCxtZW51T3B0aW9uczpbe25hbWU6Ik9LIixhY3Rpb246YXN5bmMgZT0+ZS5kZXN0cm95KCl9XX0pfX0+V2l0aCBIZWxwIEJ1dHRvbjwvZGVlcy1idXR0b24+CiAgICAgICAgCiAgICAgICAgPGRlZXMtYnV0dG9uIEBjbGljaz0keygpPT57R3QuY3JlYXRlQW5kU2hvdyh7aGVhZGluZzoiTm8gQ2xvc2UgQnV0dG9uIixzaG93Q2xvc2VCdXR0b246ITEsY29udGVudDpTYAogICAgICAgICAgICAgIDxwPlRoaXMgbW9kYWwgaGFzIG5vIGNsb3NlIGJ1dHRvbiBpbiB0aGUgaGVhZGVyLjwvcD4KICAgICAgICAgICAgICA8cD5Zb3UgbXVzdCB1c2UgdGhlIGFjdGlvbiBidXR0b25zIG9yIGNsaWNrIG91dHNpZGUgdG8gY2xvc2UgaXQuPC9wPgogICAgICAgICAgICBgLG1lbnVPcHRpb25zOlt7bmFtZToiQ2xvc2UiLGFjdGlvbjphc3luYyBlPT5lLmRlc3Ryb3koKX1dfSl9fT5ObyBDbG9zZSBCdXR0b248L2RlZXMtYnV0dG9uPgogICAgICAgIAogICAgICAgIDxkZWVzLWJ1dHRvbiBAY2xpY2s9JHsoKT0+e0d0LmNyZWF0ZUFuZFNob3coe2hlYWRpbmc6IkJvdGggQnV0dG9ucyIsc2hvd0hlbHBCdXR0b246ITAsc2hvd0Nsb3NlQnV0dG9uOiEwLG9uSGVscDooKT0+YWxlcnQoIkhlbHAgY2xpY2tlZCEiKSxjb250ZW50OlNgCiAgICAgICAgICAgICAgPHA+VGhpcyBtb2RhbCBoYXMgYm90aCBoZWxwIGFuZCBjbG9zZSBidXR0b25zLjwvcD4KICAgICAgICAgICAgYCxtZW51T3B0aW9uczpbe25hbWU6IkRvbmUiLGFjdGlvbjphc3luYyBlPT5lLmRlc3Ryb3koKX1dfSl9fT5Cb3RoIEJ1dHRvbnM8L2RlZXMtYnV0dG9uPgogICAgICAgIAogICAgICAgIDxkZWVzLWJ1dHRvbiBAY2xpY2s9JHsoKT0+e0d0LmNyZWF0ZUFuZFNob3coe2hlYWRpbmc6IkNsZWFuIEhlYWRlciIsc2hvd0Nsb3NlQnV0dG9uOiExLHNob3dIZWxwQnV0dG9uOiExLGNvbnRlbnQ6U2AKICAgICAgICAgICAgICA8cD5UaGlzIG1vZGFsIGhhcyBhIGNsZWFuIGhlYWRlciB3aXRoIG5vIGJ1dHRvbnMuPC9wPgogICAgICAgICAgICBgLG1lbnVPcHRpb25zOlt7bmFtZToiQ2xvc2UiLGFjdGlvbjphc3luYyBlPT5lLmRlc3Ryb3koKX1dfSl9fT5DbGVhbiBIZWFkZXI8L2RlZXMtYnV0dG9uPgogICAgICA8L2Rpdj4KICAgIDwvZGl2PgogICAgCiAgICA8ZGl2IGNsYXNzPSJkZW1vLXNlY3Rpb24iPgogICAgICA8aDM+TW9kYWwgV2lkdGggVmFyaWF0aW9uczwvaDM+CiAgICAgIDxwPk1vZGFscyBjYW4gaGF2ZSBkaWZmZXJlbnQgd2lkdGhzOiBzbWFsbCwgbWVkaXVtLCBsYXJnZSwgZnVsbHNjcmVlbiwgb3IgY3VzdG9tIHBpeGVsIHZhbHVlcy48L3A+CiAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ncmlkIj4KICAgICAgICA8ZGVlcy1idXR0b24gQGNsaWNrPSR7KCk9PntHdC5jcmVhdGVBbmRTaG93KHtoZWFkaW5nOiJTbWFsbCBNb2RhbCIsd2lkdGg6InNtYWxsIixjb250ZW50OlNgCiAgICAgICAgICAgICAgPHA+VGhpcyBpcyBhIHNtYWxsIG1vZGFsIHdpdGggYSB3aWR0aCBvZiAzODBweC4gUGVyZmVjdCBmb3Igc2ltcGxlIGNvbmZpcm1hdGlvbnMgb3IgYnJpZWYgbWVzc2FnZXMuPC9wPgogICAgICAgICAgICBgLG1lbnVPcHRpb25zOlt7bmFtZToiQ2FuY2VsIixhY3Rpb246YXN5bmMgZT0+ZS5kZXN0cm95KCl9LHtuYW1lOiJPSyIsYWN0aW9uOmFzeW5jIGU9PmUuZGVzdHJveSgpfV19KX19PlNtYWxsIE1vZGFsPC9kZWVzLWJ1dHRvbj4KICAgICAgICAKICAgICAgICA8ZGVlcy1idXR0b24gQGNsaWNrPSR7KCk9PntHdC5jcmVhdGVBbmRTaG93KHtoZWFkaW5nOiJNZWRpdW0gTW9kYWwgKERlZmF1bHQpIix3aWR0aDoibWVkaXVtIixjb250ZW50OlNgCiAgICAgICAgICAgICAgPGRlZXMtZm9ybT4KICAgICAgICAgICAgICAgIDxkZWVzLWlucHV0LXRleHQgLmxhYmVsPSR7IlVzZXJuYW1lIn0+PC9kZWVzLWlucHV0LXRleHQ+CiAgICAgICAgICAgICAgICA8ZGVlcy1pbnB1dC10ZXh0IC5sYWJlbD0keyJFbWFpbCJ9IC5pbnB1dFR5cGU9JHsiZW1haWwifT48L2RlZXMtaW5wdXQtdGV4dD4KICAgICAgICAgICAgICAgIDxkZWVzLWlucHV0LXRleHQgLmxhYmVsPSR7IlBhc3N3b3JkIn0gLmlucHV0VHlwZT0keyJwYXNzd29yZCJ9PjwvZGVlcy1pbnB1dC10ZXh0PgogICAgICAgICAgICAgIDwvZGVlcy1mb3JtPgogICAgICAgICAgICBgLG1lbnVPcHRpb25zOlt7bmFtZToiQ2FuY2VsIixhY3Rpb246YXN5bmMgZT0+ZS5kZXN0cm95KCl9LHtuYW1lOiJTaWduIFVwIixhY3Rpb246YXN5bmMgZT0+ZS5kZXN0cm95KCl9XX0pfX0+TWVkaXVtIE1vZGFsPC9kZWVzLWJ1dHRvbj4KICAgICAgICAKICAgICAgICA8ZGVlcy1idXR0b24gQGNsaWNrPSR7KCk9PntHdC5jcmVhdGVBbmRTaG93KHtoZWFkaW5nOiJMYXJnZSBNb2RhbCIsd2lkdGg6ImxhcmdlIixjb250ZW50OlNgCiAgICAgICAgICAgICAgPGg0PldpZGUgQ29udGVudCBBcmVhPC9oND4KICAgICAgICAgICAgICA8cD5UaGlzIGxhcmdlIG1vZGFsIGlzIDgwMHB4IHdpZGUgYW5kIHBlcmZlY3QgZm9yIGRpc3BsYXlpbmcgbW9yZSBjb21wbGV4IGNvbnRlbnQgbGlrZSBmb3JtcyB3aXRoIG11bHRpcGxlIGNvbHVtbnMsIHRhYmxlcywgb3IgZGV0YWlsZWQgaW5mb3JtYXRpb24uPC9wPgogICAgICAgICAgICAgIDxkaXYgc3R5bGU9ImRpc3BsYXk6IGdyaWQ7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjsgZ2FwOiAxNnB4OyBtYXJnaW4tdG9wOiAxNnB4OyI+CiAgICAgICAgICAgICAgICA8ZGVlcy1pbnB1dC10ZXh0IC5sYWJlbD0keyJGaXJzdCBOYW1lIn0+PC9kZWVzLWlucHV0LXRleHQ+CiAgICAgICAgICAgICAgICA8ZGVlcy1pbnB1dC10ZXh0IC5sYWJlbD0keyJMYXN0IE5hbWUifT48L2RlZXMtaW5wdXQtdGV4dD4KICAgICAgICAgICAgICAgIDxkZWVzLWlucHV0LXRleHQgLmxhYmVsPSR7IkNvbXBhbnkifT48L2RlZXMtaW5wdXQtdGV4dD4KICAgICAgICAgICAgICAgIDxkZWVzLWlucHV0LXRleHQgLmxhYmVsPSR7IlBvc2l0aW9uIn0+PC9kZWVzLWlucHV0LXRleHQ+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIGAsbWVudU9wdGlvbnM6W3tuYW1lOiJDYW5jZWwiLGFjdGlvbjphc3luYyBlPT5lLmRlc3Ryb3koKX0se25hbWU6IlNhdmUiLGFjdGlvbjphc3luYyBlPT5lLmRlc3Ryb3koKX1dfSl9fT5MYXJnZSBNb2RhbDwvZGVlcy1idXR0b24+CiAgICAgICAgCiAgICAgICAgPGRlZXMtYnV0dG9uIEBjbGljaz0keygpPT57R3QuY3JlYXRlQW5kU2hvdyh7aGVhZGluZzoiRnVsbHNjcmVlbiBFZGl0b3IiLHdpZHRoOiJmdWxsc2NyZWVuIixzaG93SGVscEJ1dHRvbjohMCxvbkhlbHA6YXN5bmMoKT0+e2FsZXJ0KCJJbiBhIHJlYWwgYXBwLCB0aGlzIHdvdWxkIHNob3cgZWRpdG9yIGRvY3VtZW50YXRpb24iKX0sY29udGVudDpTYAogICAgICAgICAgICAgIDxoND5GdWxsc2NyZWVuIEV4cGVyaWVuY2Ugd2l0aCBIZWFkZXIgQ29udHJvbHM8L2g0PgogICAgICAgICAgICAgIDxwPlRoaXMgbW9kYWwgdGFrZXMgdXAgYWxtb3N0IHRoZSBlbnRpcmUgdmlld3BvcnQgd2l0aCBhIDIwcHggbWFyZ2luIG9uIGFsbCBzaWRlcy4gVGhlIGhlYWRlciBidXR0b25zIGFyZSBwYXJ0aWN1bGFybHkgdXNlZnVsIGluIGZ1bGxzY3JlZW4gbW9kZS48L3A+CiAgICAgICAgICAgICAgPHA+VGhlIGNvbnRlbnQgYXJlYSBjYW4gYmUgYXMgdGFsbCBhcyBuZWVkZWQgYW5kIHdpbGwgc2Nyb2xsIGlmIG5lY2Vzc2FyeS48L3A+CiAgICAgICAgICAgICAgPGRpdiBzdHlsZT0iaGVpZ2h0OiAyMDBweDsgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmMGYwZjAiLCIjMmEyYTJhIil9OyBib3JkZXItcmFkaXVzOiA4cHg7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGp1c3RpZnktY29udGVudDogY2VudGVyOyBtYXJnaW4tdG9wOiAxNnB4OyI+CiAgICAgICAgICAgICAgICA8c3BhbiBzdHlsZT0iY29sb3I6ICR7bS5iZFRoZW1lKCIjOTk5IiwiIzY2NiIpfSI+TGFyZ2UgY29udGVudCBhcmVhPC9zcGFuPgogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICBgLG1lbnVPcHRpb25zOlt7bmFtZToiU2F2ZSIsYWN0aW9uOmFzeW5jIGU9PmUuZGVzdHJveSgpfSx7bmFtZToiQ2FuY2VsIixhY3Rpb246YXN5bmMgZT0+ZS5kZXN0cm95KCl9XX0pfX0+RnVsbHNjcmVlbiBNb2RhbDwvZGVlcy1idXR0b24+CiAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgICAKICAgIDxkaXYgY2xhc3M9ImRlbW8tc2VjdGlvbiI+CiAgICAgIDxoMz5DdXN0b20gV2lkdGggJiBDb25zdHJhaW50czwvaDM+CiAgICAgIDxwPllvdSBjYW4gYWxzbyBzZXQgY3VzdG9tIHBpeGVsIHdpZHRocyBhbmQgbWluL21heCBjb25zdHJhaW50cy48L3A+CiAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ncmlkIj4KICAgICAgICA8ZGVlcy1idXR0b24gQGNsaWNrPSR7KCk9PntHdC5jcmVhdGVBbmRTaG93KHtoZWFkaW5nOiJDdXN0b20gV2lkdGggKDcwMHB4KSIsd2lkdGg6NzAwLGNvbnRlbnQ6U2AKICAgICAgICAgICAgICA8cD5UaGlzIG1vZGFsIGhhcyBhIGN1c3RvbSB3aWR0aCBvZiBleGFjdGx5IDcwMCBwaXhlbHMuPC9wPgogICAgICAgICAgICBgLG1lbnVPcHRpb25zOlt7bmFtZToiQ2xvc2UiLGFjdGlvbjphc3luYyBlPT5lLmRlc3Ryb3koKX1dfSl9fT5DdXN0b20gNzAwcHg8L2RlZXMtYnV0dG9uPgogICAgICAgIAogICAgICAgIDxkZWVzLWJ1dHRvbiBAY2xpY2s9JHsoKT0+e0d0LmNyZWF0ZUFuZFNob3coe2hlYWRpbmc6IldpdGggTWF4IFdpZHRoIix3aWR0aDoibGFyZ2UiLG1heFdpZHRoOjYwMCxjb250ZW50OlNgCiAgICAgICAgICAgICAgPHA+VGhpcyBtb2RhbCBpcyBzZXQgdG8gJ2xhcmdlJyBidXQgY29uc3RyYWluZWQgYnkgYSBtYXhXaWR0aCBvZiA2MDBweC48L3A+CiAgICAgICAgICAgIGAsbWVudU9wdGlvbnM6W3tuYW1lOiJHb3QgaXQiLGFjdGlvbjphc3luYyBlPT5lLmRlc3Ryb3koKX1dfSl9fT5NYXggV2lkdGggNjAwcHg8L2RlZXMtYnV0dG9uPgogICAgICAgIAogICAgICAgIDxkZWVzLWJ1dHRvbiBAY2xpY2s9JHsoKT0+e0d0LmNyZWF0ZUFuZFNob3coe2hlYWRpbmc6IldpdGggTWluIFdpZHRoIix3aWR0aDozMDAsbWluV2lkdGg6NDAwLGNvbnRlbnQ6U2AKICAgICAgICAgICAgICA8cD5UaGlzIG1vZGFsIHdpZHRoIGlzIHNldCB0byAzMDBweCBidXQgaGFzIGEgbWluV2lkdGggb2YgNDAwcHgsIHNvIGl0IHdpbGwgYmUgNDAwcHggd2lkZS48L3A+CiAgICAgICAgICAgIGAsbWVudU9wdGlvbnM6W3tuYW1lOiJPSyIsYWN0aW9uOmFzeW5jIGU9PmUuZGVzdHJveSgpfV19KX19Pk1pbiBXaWR0aCA0MDBweDwvZGVlcy1idXR0b24+CiAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgICAKICAgIDxkaXYgY2xhc3M9ImRlbW8tc2VjdGlvbiI+CiAgICAgIDxoMz5CdXR0b24gVmFyaWF0aW9uczwvaDM+CiAgICAgIDxwPk1vZGFscyBjYW4gaGF2ZSBkaWZmZXJlbnQgYnV0dG9uIGNvbmZpZ3VyYXRpb25zIHdpdGggcHJvcGVyIHNwYWNpbmcuPC9wPgogICAgICA8ZGl2IGNsYXNzPSJidXR0b24tZ3JpZCI+CiAgICAgICAgPGRlZXMtYnV0dG9uIEBjbGljaz0keygpPT57R3QuY3JlYXRlQW5kU2hvdyh7aGVhZGluZzoiTXVsdGlwbGUgQWN0aW9ucyIsY29udGVudDpTYAogICAgICAgICAgICAgIDxwPlRoaXMgbW9kYWwgZGVtb25zdHJhdGVzIG11bHRpcGxlIGJ1dHRvbnMgd2l0aCBwcm9wZXIgc3BhY2luZyBiZXR3ZWVuIHRoZW0uPC9wPgogICAgICAgICAgICBgLG1lbnVPcHRpb25zOlt7bmFtZToiRGVsZXRlIixhY3Rpb246YXN5bmMgZT0+ZS5kZXN0cm95KCl9LHtuYW1lOiJDYW5jZWwiLGFjdGlvbjphc3luYyBlPT5lLmRlc3Ryb3koKX0se25hbWU6IlNhdmUgQ2hhbmdlcyIsYWN0aW9uOmFzeW5jIGU9PmUuZGVzdHJveSgpfV19KX19PlRocmVlIEJ1dHRvbnM8L2RlZXMtYnV0dG9uPgogICAgICAgIAogICAgICAgIDxkZWVzLWJ1dHRvbiBAY2xpY2s9JHsoKT0+e0d0LmNyZWF0ZUFuZFNob3coe2hlYWRpbmc6IlNpbmdsZSBBY3Rpb24iLGNvbnRlbnQ6U2AKICAgICAgICAgICAgICA8cD5Tb21ldGltZXMgeW91IGp1c3QgbmVlZCBvbmUgYnV0dG9uLjwvcD4KICAgICAgICAgICAgYCxtZW51T3B0aW9uczpbe25hbWU6IkFja25vd2xlZGdlIixhY3Rpb246YXN5bmMgZT0+ZS5kZXN0cm95KCl9XX0pfX0+U2luZ2xlIEJ1dHRvbjwvZGVlcy1idXR0b24+CiAgICAgICAgCiAgICAgICAgPGRlZXMtYnV0dG9uIEBjbGljaz0keygpPT57R3QuY3JlYXRlQW5kU2hvdyh7aGVhZGluZzoiTm8gQWN0aW9ucyIsY29udGVudDpTYAogICAgICAgICAgICAgIDxwPlRoaXMgbW9kYWwgaGFzIG5vIGJvdHRvbSBidXR0b25zLiBVc2UgdGhlIFggYnV0dG9uIG9yIGNsaWNrIG91dHNpZGUgdG8gY2xvc2UuPC9wPgogICAgICAgICAgICAgIDxwIHN0eWxlPSJtYXJnaW4tdG9wOiAxNnB4OyBjb2xvcjogJHttLmJkVGhlbWUoIiM2NjYiLCIjOTk5Iil9OyI+VGhpcyBpcyB1c2VmdWwgZm9yIGluZm9ybWF0aW9uYWwgbW9kYWxzIHRoYXQgZG9uJ3QgcmVxdWlyZSB1c2VyIGFjdGlvbi48L3A+CiAgICAgICAgICAgIGAsbWVudU9wdGlvbnM6W119KX19Pk5vIEJ1dHRvbnM8L2RlZXMtYnV0dG9uPgogICAgICAgIAogICAgICAgIDxkZWVzLWJ1dHRvbiBAY2xpY2s9JHsoKT0+e0d0LmNyZWF0ZUFuZFNob3coe2hlYWRpbmc6IkxvbmcgQnV0dG9uIExhYmVscyIsY29udGVudDpTYAogICAgICAgICAgICAgIDxwPlRlc3RpbmcgYnV0dG9uIGxheW91dCB3aXRoIGxvbmdlciBsYWJlbHMuPC9wPgogICAgICAgICAgICBgLG1lbnVPcHRpb25zOlt7bmFtZToiRGlzY2FyZCBBbGwgQ2hhbmdlcyIsYWN0aW9uOmFzeW5jIGU9PmUuZGVzdHJveSgpfSx7bmFtZToiU2F2ZSBhbmQgQ29udGludWUgRWRpdGluZyIsYWN0aW9uOmFzeW5jIGU9PmUuZGVzdHJveSgpfV19KX19PkxvbmcgTGFiZWxzPC9kZWVzLWJ1dHRvbj4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICAgIAogICAgPGRpdiBjbGFzcz0iZGVtby1zZWN0aW9uIj4KICAgICAgPGgzPlJlc3BvbnNpdmUgQmVoYXZpb3I8L2gzPgogICAgICA8cD5BbGwgbW9kYWxzIGF1dG9tYXRpY2FsbHkgYmVjb21lIGZ1bGwtd2lkdGggb24gbW9iaWxlIGRldmljZXMgKDwgNzY4cHggdmlld3BvcnQgd2lkdGgpIGZvciBiZXR0ZXIgdXNhYmlsaXR5LjwvcD4KICAgICAgPGRlZXMtYnV0dG9uIEBjbGljaz0keygpPT57R3QuY3JlYXRlQW5kU2hvdyh7aGVhZGluZzoiUmVzcG9uc2l2ZSBNb2RhbCIsd2lkdGg6ImxhcmdlIixzaG93SGVscEJ1dHRvbjohMCxvbkhlbHA6KCk9PmNvbnNvbGUubG9nKCJIZWxwIHJlcXVlc3RlZCBmb3IgcmVzcG9uc2l2ZSBtb2RhbCIpLGNvbnRlbnQ6U2AKICAgICAgICAgICAgPHA+UmVzaXplIHlvdXIgYnJvd3NlciB3aW5kb3cgdG8gc2VlIGhvdyB0aGlzIG1vZGFsIGFkYXB0cy4gT24gbW9iaWxlIHZpZXdwb3J0cywgaXQgd2lsbCBhdXRvbWF0aWNhbGx5IHRha2UgdGhlIGZ1bGwgd2lkdGggbWludXMgbWFyZ2lucy48L3A+CiAgICAgICAgICAgIDxwPlRoZSBoZWFkZXIgYnV0dG9ucyByZW1haW4gYWNjZXNzaWJsZSBhdCBhbGwgdmlld3BvcnQgc2l6ZXMuPC9wPgogICAgICAgICAgYCxtZW51T3B0aW9uczpbe25hbWU6IkNsb3NlIixhY3Rpb246YXN5bmMgZT0+ZS5kZXN0cm95KCl9XX0pfX0+VGVzdCBSZXNwb25zaXZlPC9kZWVzLWJ1dHRvbj4KICAgIDwvZGl2PgogIDwvZGl2PgpgfSk7dmFyIG5uLENhLEd0LFM4PWwoKCk9PntWbigpO09pKCk7VG4oKTt1bygpO1RFcigpO1NlKCk7ZXIoKTtrYygpO2JyKCk7b3QoKTtubj1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LENhPWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSxHdD0oKCk9PntsZXQgZT1bemUoImRlZXMtbW9kYWwiKV0sdCxyPVtdLGEsaT1EZSxvLG49W10scz1bXSxjLGQ9W10sZj1bXSx1LHA9W10saD1bXSxiLHg9W10sZz1bXSx2LHc9W10sTT1bXSxGLEM9W10saz1bXSxOLCQ9W10sST1bXSxCLHo9W10seT1bXSxFLF89W10sUD1bXSxWLEg9W10sVz1bXSxhZSxUPVtdLEo9W10sZmUsTD1bXSxRPVtdO3ZhciBrZT1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IEc9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baih7dHlwZTpTdHJpbmd9KV0sYz1bcmUoe30pXSx1PVtyZSh7fSldLGI9W2ooe3R5cGU6U3RyaW5nfSldLHY9W2ooe3R5cGU6TnVtYmVyfSldLEY9W2ooe3R5cGU6TnVtYmVyfSldLE49W2ooe3R5cGU6Qm9vbGVhbn0pXSxCPVtqKHt0eXBlOkJvb2xlYW59KV0sRT1baih7YXR0cmlidXRlOiExfSldLFY9W2ooe3R5cGU6Qm9vbGVhbn0pXSxhZT1baih7dHlwZTpOdW1iZXJ9KV0sZmU9W3JlKCldLG5uKHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiaGVhZGluZyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6QT0+ImhlYWRpbmciaW4gQSxnZXQ6QT0+QS5oZWFkaW5nLHNldDooQSxEKT0+e0EuaGVhZGluZz1EfX0sbWV0YWRhdGE6R30sbixzKSxubih0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImNvbnRlbnQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOkE9PiJjb250ZW50ImluIEEsZ2V0OkE9PkEuY29udGVudCxzZXQ6KEEsRCk9PntBLmNvbnRlbnQ9RH19LG1ldGFkYXRhOkd9LGQsZiksbm4odGhpcyxudWxsLHUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJtZW51T3B0aW9ucyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6QT0+Im1lbnVPcHRpb25zImluIEEsZ2V0OkE9PkEubWVudU9wdGlvbnMsc2V0OihBLEQpPT57QS5tZW51T3B0aW9ucz1EfX0sbWV0YWRhdGE6R30scCxoKSxubih0aGlzLG51bGwsYix7a2luZDoiYWNjZXNzb3IiLG5hbWU6IndpZHRoIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpBPT4id2lkdGgiaW4gQSxnZXQ6QT0+QS53aWR0aCxzZXQ6KEEsRCk9PntBLndpZHRoPUR9fSxtZXRhZGF0YTpHfSx4LGcpLG5uKHRoaXMsbnVsbCx2LHtraW5kOiJhY2Nlc3NvciIsbmFtZToibWF4V2lkdGgiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOkE9PiJtYXhXaWR0aCJpbiBBLGdldDpBPT5BLm1heFdpZHRoLHNldDooQSxEKT0+e0EubWF4V2lkdGg9RH19LG1ldGFkYXRhOkd9LHcsTSksbm4odGhpcyxudWxsLEYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJtaW5XaWR0aCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6QT0+Im1pbldpZHRoImluIEEsZ2V0OkE9PkEubWluV2lkdGgsc2V0OihBLEQpPT57QS5taW5XaWR0aD1EfX0sbWV0YWRhdGE6R30sQyxrKSxubih0aGlzLG51bGwsTix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNob3dDbG9zZUJ1dHRvbiIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6QT0+InNob3dDbG9zZUJ1dHRvbiJpbiBBLGdldDpBPT5BLnNob3dDbG9zZUJ1dHRvbixzZXQ6KEEsRCk9PntBLnNob3dDbG9zZUJ1dHRvbj1EfX0sbWV0YWRhdGE6R30sJCxJKSxubih0aGlzLG51bGwsQix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNob3dIZWxwQnV0dG9uIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpBPT4ic2hvd0hlbHBCdXR0b24iaW4gQSxnZXQ6QT0+QS5zaG93SGVscEJ1dHRvbixzZXQ6KEEsRCk9PntBLnNob3dIZWxwQnV0dG9uPUR9fSxtZXRhZGF0YTpHfSx6LHkpLG5uKHRoaXMsbnVsbCxFLHtraW5kOiJhY2Nlc3NvciIsbmFtZToib25IZWxwIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpBPT4ib25IZWxwImluIEEsZ2V0OkE9PkEub25IZWxwLHNldDooQSxEKT0+e0Eub25IZWxwPUR9fSxtZXRhZGF0YTpHfSxfLFApLG5uKHRoaXMsbnVsbCxWLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibW9iaWxlRnVsbHNjcmVlbiIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6QT0+Im1vYmlsZUZ1bGxzY3JlZW4iaW4gQSxnZXQ6QT0+QS5tb2JpbGVGdWxsc2NyZWVuLHNldDooQSxEKT0+e0EubW9iaWxlRnVsbHNjcmVlbj1EfX0sbWV0YWRhdGE6R30sSCxXKSxubih0aGlzLG51bGwsYWUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJjb250ZW50UGFkZGluZyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6QT0+ImNvbnRlbnRQYWRkaW5nImluIEEsZ2V0OkE9PkEuY29udGVudFBhZGRpbmcsc2V0OihBLEQpPT57QS5jb250ZW50UGFkZGluZz1EfX0sbWV0YWRhdGE6R30sVCxKKSxubih0aGlzLG51bGwsZmUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJtb2RhbFpJbmRleCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6QT0+Im1vZGFsWkluZGV4ImluIEEsZ2V0OkE9PkEubW9kYWxaSW5kZXgsc2V0OihBLEQpPT57QS5tb2RhbFpJbmRleD1EfX0sbWV0YWRhdGE6R30sTCxRKSxubihudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTpHfSxudWxsLHIpLGtlPWE9dC52YWx1ZSxHJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOkd9KX1zdGF0aWMgZGVtbz1fRXI7c3RhdGljIGRlbW9Hcm91cHM9WyJPdmVybGF5Il07c3RhdGljIGFzeW5jIGNyZWF0ZUFuZFNob3coRyl7bGV0IEE9ZG9jdW1lbnQuYm9keSxEPW5ldyBrZTtyZXR1cm4gRC5oZWFkaW5nPUcuaGVhZGluZyxELmNvbnRlbnQ9Ry5jb250ZW50LEQubWVudU9wdGlvbnM9Ry5tZW51T3B0aW9ucyxHLndpZHRoJiYoRC53aWR0aD1HLndpZHRoKSxHLm1heFdpZHRoJiYoRC5tYXhXaWR0aD1HLm1heFdpZHRoKSxHLm1pbldpZHRoJiYoRC5taW5XaWR0aD1HLm1pbldpZHRoKSxHLnNob3dDbG9zZUJ1dHRvbiE9PXZvaWQgMCYmKEQuc2hvd0Nsb3NlQnV0dG9uPUcuc2hvd0Nsb3NlQnV0dG9uKSxHLnNob3dIZWxwQnV0dG9uIT09dm9pZCAwJiYoRC5zaG93SGVscEJ1dHRvbj1HLnNob3dIZWxwQnV0dG9uKSxHLm9uSGVscCYmKEQub25IZWxwPUcub25IZWxwKSxHLm1vYmlsZUZ1bGxzY3JlZW4hPT12b2lkIDAmJihELm1vYmlsZUZ1bGxzY3JlZW49Ry5tb2JpbGVGdWxsc2NyZWVuKSxHLmNvbnRlbnRQYWRkaW5nIT09dm9pZCAwJiYoRC5jb250ZW50UGFkZGluZz1HLmNvbnRlbnRQYWRkaW5nKSxELndpbmRvd0xheWVyPWF3YWl0IHFuLmNyZWF0ZUFuZFNob3coe2JsdXI6ITB9KSxELndpbmRvd0xheWVyLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixhc3luYygpPT57YXdhaXQgRC5kZXN0cm95KCl9KSxBLmFwcGVuZChELndpbmRvd0xheWVyKSxBLmFwcGVuZChEKSxELm1vZGFsWkluZGV4PWNhLmdldE5leHRaSW5kZXgoKSxjYS5yZWdpc3RlcihELEQubW9kYWxaSW5kZXgpLER9I2U9Q2EodGhpcyxuLCIiKTtnZXQgaGVhZGluZygpe3JldHVybiB0aGlzLiNlfXNldCBoZWFkaW5nKEcpe3RoaXMuI2U9R30jdD0oQ2EodGhpcyxzKSxDYSh0aGlzLGQsdm9pZCAwKSk7Z2V0IGNvbnRlbnQoKXtyZXR1cm4gdGhpcy4jdH1zZXQgY29udGVudChHKXt0aGlzLiN0PUd9I3I9KENhKHRoaXMsZiksQ2EodGhpcyxwLFtdKSk7Z2V0IG1lbnVPcHRpb25zKCl7cmV0dXJuIHRoaXMuI3J9c2V0IG1lbnVPcHRpb25zKEcpe3RoaXMuI3I9R30jYT0oQ2EodGhpcyxoKSxDYSh0aGlzLHgsIm1lZGl1bSIpKTtnZXQgd2lkdGgoKXtyZXR1cm4gdGhpcy4jYX1zZXQgd2lkdGgoRyl7dGhpcy4jYT1HfSNpPShDYSh0aGlzLGcpLENhKHRoaXMsdyx2b2lkIDApKTtnZXQgbWF4V2lkdGgoKXtyZXR1cm4gdGhpcy4jaX1zZXQgbWF4V2lkdGgoRyl7dGhpcy4jaT1HfSNvPShDYSh0aGlzLE0pLENhKHRoaXMsQyx2b2lkIDApKTtnZXQgbWluV2lkdGgoKXtyZXR1cm4gdGhpcy4jb31zZXQgbWluV2lkdGgoRyl7dGhpcy4jbz1HfSNuPShDYSh0aGlzLGspLENhKHRoaXMsJCwhMCkpO2dldCBzaG93Q2xvc2VCdXR0b24oKXtyZXR1cm4gdGhpcy4jbn1zZXQgc2hvd0Nsb3NlQnV0dG9uKEcpe3RoaXMuI249R30jcz0oQ2EodGhpcyxJKSxDYSh0aGlzLHosITEpKTtnZXQgc2hvd0hlbHBCdXR0b24oKXtyZXR1cm4gdGhpcy4jc31zZXQgc2hvd0hlbHBCdXR0b24oRyl7dGhpcy4jcz1HfSNsPShDYSh0aGlzLHkpLENhKHRoaXMsXyx2b2lkIDApKTtnZXQgb25IZWxwKCl7cmV0dXJuIHRoaXMuI2x9c2V0IG9uSGVscChHKXt0aGlzLiNsPUd9I2M9KENhKHRoaXMsUCksQ2EodGhpcyxILCExKSk7Z2V0IG1vYmlsZUZ1bGxzY3JlZW4oKXtyZXR1cm4gdGhpcy4jY31zZXQgbW9iaWxlRnVsbHNjcmVlbihHKXt0aGlzLiNjPUd9I2Q9KENhKHRoaXMsVyksQ2EodGhpcyxULDE2KSk7Z2V0IGNvbnRlbnRQYWRkaW5nKCl7cmV0dXJuIHRoaXMuI2R9c2V0IGNvbnRlbnRQYWRkaW5nKEcpe3RoaXMuI2Q9R30jdT0oQ2EodGhpcyxKKSxDYSh0aGlzLEwsMWUzKSk7Z2V0IG1vZGFsWkluZGV4KCl7cmV0dXJuIHRoaXMuI3V9c2V0IG1vZGFsWkluZGV4KEcpe3RoaXMuI3U9R31jb25zdHJ1Y3Rvcigpe3N1cGVyKCl9c3RhdGljIHN0eWxlcz1bUGUsbS5kZWZhdWx0U3R5bGVzLGxlYAogICAgICAvKiBUT0RPOiBNaWdyYXRlIGhhcmRjb2RlZCB2YWx1ZXMgdG8gLS1kZWVzLSogQ1NTIHZhcmlhYmxlcyAqLwogICAgICA6aG9zdCB7CiAgICAgICAgZm9udC1mYW1pbHk6ICR7WHJ9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzMzMyIsIiNmZmYiKX07CiAgICAgICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTsKICAgICAgfQogICAgICAubW9kYWxDb250YWluZXIgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgcG9zaXRpb246IGZpeGVkOwogICAgICAgIHRvcDogMHB4OwogICAgICAgIGxlZnQ6IDBweDsKICAgICAgICB3aWR0aDogMTAwdnc7CiAgICAgICAgaGVpZ2h0OiAxMDB2aDsKICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgIH0KICAgICAgLm1vZGFsIHsKICAgICAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpIHNjYWxlKDAuOTUpOwogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgbWluLWhlaWdodDogMTIwcHg7CiAgICAgICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDQwcHgpOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZmZmZmZmIiwiIzA5MDkwYiIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjMjcyNzJhIil9OwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICBib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjEpLCAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjA2KTsKICAgICAgICBtYXJnaW46IDIwcHg7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIG92ZXJzY3JvbGwtYmVoYXZpb3I6IGNvbnRhaW47CiAgICAgIH0KCiAgICAgIC8qIFdpZHRoIHZhcmlhdGlvbnMgKi8KICAgICAgLm1vZGFsLndpZHRoLXNtYWxsIHsKICAgICAgICB3aWR0aDogMzgwcHg7CiAgICAgIH0KCiAgICAgIC5tb2RhbC53aWR0aC1tZWRpdW0gewogICAgICAgIHdpZHRoOiA1NjBweDsKICAgICAgfQoKICAgICAgLm1vZGFsLndpZHRoLWxhcmdlIHsKICAgICAgICB3aWR0aDogODAwcHg7CiAgICAgIH0KCiAgICAgIC5tb2RhbC53aWR0aC1mdWxsc2NyZWVuIHsKICAgICAgICB3aWR0aDogY2FsYygxMDB2dyAtIDQwcHgpOwogICAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDQwcHgpOwogICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSA0MHB4KTsKICAgICAgfQoKICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7CiAgICAgICAgLm1vZGFsIHsKICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMHZ3IC0gNDBweCkgIWltcG9ydGFudDsKICAgICAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50OwogICAgICAgIH0KICAgICAgICAKICAgICAgICAvKiBBbGxvdyBmdWxsIGhlaWdodCBvbiBtb2JpbGUgd2hlbiBjb250ZW50IG5lZWRzIGl0ICovCiAgICAgICAgLm1vZGFsQ29udGFpbmVyIHsKICAgICAgICAgIHBhZGRpbmc6IDEwcHg7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5tb2RhbCB7CiAgICAgICAgICBtYXJnaW46IDEwcHg7CiAgICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMjBweCk7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC8qIEZ1bGwgc2NyZWVuIG1vZGUgb24gbW9iaWxlICovCiAgICAgICAgLm1vZGFsLm1vYmlsZS1mdWxsc2NyZWVuIHsKICAgICAgICAgIHdpZHRoOiAxMDB2dyAhaW1wb3J0YW50OwogICAgICAgICAgaGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50OwogICAgICAgICAgbWF4LWhlaWdodDogMTAwdmggIWltcG9ydGFudDsKICAgICAgICAgIG1hcmdpbjogMDsKICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7CiAgICAgICAgICBib3JkZXI6IG5vbmU7CiAgICAgICAgfQogICAgICB9CgogICAgICAubW9kYWwuc2hvdyB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KSBzY2FsZSgxKTsKICAgICAgfQoKICAgICAgLm1vZGFsLnNob3cucHJlZGVzdHJveSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCkgc2NhbGUoMSk7CiAgICAgIH0KCiAgICAgIC5tb2RhbCAuaGVhZGluZyB7CiAgICAgICAgaGVpZ2h0OiA0MHB4OwogICAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7CiAgICAgICAgZm9udC1mYW1pbHk6ICR7WHJ9OwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47CiAgICAgICAgcGFkZGluZzogMCAxMnB4OwogICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiMyNzI3MmEiKX07CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgICB9CgogICAgICAubW9kYWwgLmhlYWRpbmcgLmhlYWRlci1idXR0b25zIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgZ2FwOiA0cHg7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHJpZ2h0OiA4cHg7CiAgICAgICAgdG9wOiA1MCU7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgICB9CgogICAgICAubW9kYWwgLmhlYWRpbmcgLmhlYWRlci1idXR0b24gewogICAgICAgIHdpZHRoOiAyOHB4OwogICAgICAgIGhlaWdodDogMjhweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM3MTcxN2EiLCIjYTFhMWFhIil9OwogICAgICB9CgogICAgICAubW9kYWwgLmhlYWRpbmcgLmhlYWRlci1idXR0b246aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjRmNGY1IiwiIzI3MjcyYSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwOTA5MGIiLCIjZmFmYWZhIil9OwogICAgICB9CgogICAgICAubW9kYWwgLmhlYWRpbmcgLmhlYWRlci1idXR0b246YWN0aXZlIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiMzZjNmNDYiKX07CiAgICAgIH0KCiAgICAgIC5tb2RhbCAuaGVhZGluZyAuaGVhZGVyLWJ1dHRvbiBkZWVzLWljb24gewogICAgICAgIHdpZHRoOiAxNnB4OwogICAgICAgIGhlaWdodDogMTZweDsKICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgfQoKICAgICAgLm1vZGFsIC5oZWFkaW5nIC5oZWFkaW5nLXRleHQgewogICAgICAgIGZsZXg6IDE7CiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4OwogICAgICAgIHBhZGRpbmc6IDAgNDBweDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwOTA5MGIiLCIjZmFmYWZhIil9OwogICAgICB9CgogICAgICAubW9kYWwgLmNvbnRlbnQgewogICAgICAgIGZsZXg6IDE7CiAgICAgICAgb3ZlcmZsb3cteTogYXV0bzsKICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47CiAgICAgICAgb3ZlcnNjcm9sbC1iZWhhdmlvcjogY29udGFpbjsKICAgICAgfQogICAgICAubW9kYWwgLmJvdHRvbUJ1dHRvbnMgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsKICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjMjcyNzJhIil9OwogICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7CiAgICAgICAgZ2FwOiA4cHg7CiAgICAgICAgcGFkZGluZzogOHB4OwogICAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgICB9CgogICAgICAubW9kYWwgLmJvdHRvbUJ1dHRvbnMgLmJvdHRvbUJ1dHRvbiB7CiAgICAgICAgcGFkZGluZzogOHB4IDE2cHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4OwogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmZmZmZmYiLCIjMjcyNzJhIil9OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZTVlN2ViIiwiIzNmM2Y0NiIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwOTA5MGIiLCIjZmFmYWZhIil9OwogICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgICAgIH0KCiAgICAgIC5tb2RhbCAuYm90dG9tQnV0dG9ucyAuYm90dG9tQnV0dG9uOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2Y0ZjRmNSIsIiMzZjNmNDYiKX07CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiI2QxZDVkYiIsIiM1MjUyNWIiKX07CiAgICAgIH0KICAgICAgLm1vZGFsIC5ib3R0b21CdXR0b25zIC5ib3R0b21CdXR0b246YWN0aXZlIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiM1MjUyNWIiKX07CiAgICAgIH0KICAgICAgLm1vZGFsIC5ib3R0b21CdXR0b25zIC5ib3R0b21CdXR0b246bGFzdC1jaGlsZCB7CiAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lOwogICAgICB9CgogICAgICAubW9kYWwgLmJvdHRvbUJ1dHRvbnMgLmJvdHRvbUJ1dHRvbi5wcmltYXJ5IHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiIzNiODJmNiIsIiMzYjgyZjYiKX07CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiIzNiODJmNiIsIiMzYjgyZjYiKX07CiAgICAgICAgY29sb3I6ICNmZmZmZmY7CiAgICAgIH0KICAgICAgLm1vZGFsIC5ib3R0b21CdXR0b25zIC5ib3R0b21CdXR0b24ucHJpbWFyeTpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiMyNTYzZWIiLCIjMjU2M2ViIil9OwogICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoIiMyNTYzZWIiLCIjMjU2M2ViIil9OwogICAgICB9CiAgICAgIC5tb2RhbCAuYm90dG9tQnV0dG9ucyAuYm90dG9tQnV0dG9uLnByaW1hcnk6YWN0aXZlIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiIzFkNGVkOCIsIiMxZDRlZDgiKX07CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiIzFkNGVkOCIsIiMxZDRlZDgiKX07CiAgICAgIH0KICAgIGBdO3JlbmRlcigpe2xldCBHPXR5cGVvZiB0aGlzLndpZHRoPT0ic3RyaW5nIj9gd2lkdGgtJHt0aGlzLndpZHRofWA6IiIsQT10eXBlb2YgdGhpcy53aWR0aD09Im51bWJlciI/YCR7dGhpcy53aWR0aH1weGA6IiIsRD10aGlzLm1heFdpZHRoP2Ake3RoaXMubWF4V2lkdGh9cHhgOiIiLFI9dGhpcy5taW5XaWR0aD9gJHt0aGlzLm1pbldpZHRofXB4YDoiIixPPXRoaXMubW9iaWxlRnVsbHNjcmVlbj8ibW9iaWxlLWZ1bGxzY3JlZW4iOiIiO3JldHVybiBTYAogICAgICA8c3R5bGU+CiAgICAgICAgJHtBP2AubW9kYWwgeyB3aWR0aDogJHtBfTsgfWA6IiJ9CiAgICAgICAgJHtEP2AubW9kYWwgeyBtYXgtd2lkdGg6ICR7RH07IH1gOiIifQogICAgICAgICR7Uj9gLm1vZGFsIHsgbWluLXdpZHRoOiAke1J9OyB9YDoiIn0KICAgICAgPC9zdHlsZT4KICAgICAgPGRpdiBjbGFzcz0ibW9kYWxDb250YWluZXIiIEBjbGljaz0ke3RoaXMuaGFuZGxlT3V0c2lkZUNsaWNrfSBzdHlsZT0iei1pbmRleDogJHt0aGlzLm1vZGFsWkluZGV4fSI+CiAgICAgICAgPGRpdiBjbGFzcz0ibW9kYWwgJHtHfSAke099Ij4KICAgICAgICAgIDxkaXYgY2xhc3M9ImhlYWRpbmciPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJoZWFkaW5nLXRleHQiPiR7dGhpcy5oZWFkaW5nfTwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJoZWFkZXItYnV0dG9ucyI+CiAgICAgICAgICAgICAgJHt0aGlzLnNob3dIZWxwQnV0dG9uP1NgCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJoZWFkZXItYnV0dG9uIiBAY2xpY2s9JHt0aGlzLmhhbmRsZUhlbHB9IHRpdGxlPSJIZWxwIj4KICAgICAgICAgICAgICAgICAgPGRlZXMtaWNvbiAuaWNvbj0keyJsdWNpZGU6aGVscENpcmNsZSJ9PjwvZGVlcy1pY29uPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgYDoiIn0KICAgICAgICAgICAgICAke3RoaXMuc2hvd0Nsb3NlQnV0dG9uP1NgCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJoZWFkZXItYnV0dG9uIiBAY2xpY2s9JHsoKT0+dGhpcy5kZXN0cm95KCl9IHRpdGxlPSJDbG9zZSI+CiAgICAgICAgICAgICAgICAgIDxkZWVzLWljb24gLmljb249JHsibHVjaWRlOngifT48L2RlZXMtaWNvbj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgIGA6IiJ9CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250ZW50IiBzdHlsZT0icGFkZGluZzogJHt0aGlzLmNvbnRlbnRQYWRkaW5nfXB4OyI+JHt0aGlzLmNvbnRlbnR9PC9kaXY+CiAgICAgICAgICAke3RoaXMubWVudU9wdGlvbnMubGVuZ3RoPjA/U2AKICAgICAgICAgICAgPGRpdiBjbGFzcz0iYm90dG9tQnV0dG9ucyI+CiAgICAgICAgICAgICAgJHt0aGlzLm1lbnVPcHRpb25zLm1hcCgoWSx1ZSk9PlNgCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJvdHRvbUJ1dHRvbiAke3VlPT09dGhpcy5tZW51T3B0aW9ucy5sZW5ndGgtMT8icHJpbWFyeSI6IiJ9ICR7WS5uYW1lPT09Ik9LIj8ib2siOiIifSIgQGNsaWNrPSR7KCk9PntZLmFjdGlvbih0aGlzKX19PiR7WS5uYW1lfTwvZGl2PgogICAgICAgICAgICAgICAgYCl9CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgYDoiIn0KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICBgfXdpbmRvd0xheWVyPUNhKHRoaXMsUSk7YXN5bmMgZmlyc3RVcGRhdGVkKEcpe3N1cGVyLmZpcnN0VXBkYXRlZChHKSxhd2FpdChhd2FpdCB0aGlzLmRvbXRvb2xzUHJvbWlzZSkuY29udmVuaWVuY2Uuc21hcnRkZWxheS5kZWxheUZvcigzMCksdGhpcy5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoIi5tb2RhbCIpLmNsYXNzTGlzdC5hZGQoInNob3ciKX1hc3luYyBoYW5kbGVPdXRzaWRlQ2xpY2soRyl7Ry5zdG9wUHJvcGFnYXRpb24oKTtsZXQgQT10aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcigiLm1vZGFsQ29udGFpbmVyIik7Ry50YXJnZXQ9PT1BJiZhd2FpdCB0aGlzLmRlc3Ryb3koKX1hc3luYyBkZXN0cm95KCl7bGV0IEc9YXdhaXQgdGhpcy5kb210b29sc1Byb21pc2U7dGhpcy5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoIi5tb2RhbCIpLmNsYXNzTGlzdC5hZGQoInByZWRlc3Ryb3kiKSxhd2FpdCBHLmNvbnZlbmllbmNlLnNtYXJ0ZGVsYXkuZGVsYXlGb3IoMjAwKSxkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHRoaXMpLGF3YWl0IHRoaXMud2luZG93TGF5ZXIuZGVzdHJveSgpLGNhLnVucmVnaXN0ZXIodGhpcyl9YXN5bmMgaGFuZGxlSGVscCgpe3RoaXMub25IZWxwJiZhd2FpdCB0aGlzLm9uSGVscCgpfXN0YXRpY3tDYShhLHIpfX07cmV0dXJuIGtlPWF9KSgpfSk7dmFyIExFcixERXI9bCgoKT0+e1NlKCk7TEVyPSgpPT5TYAogICAgPGRlZXMtbGFiZWwgLmxhYmVsPSR7ImEgbGFiZWwifT48L2RlZXMtbGFiZWw+CiAgYH0pO3ZhciBTbGUsejgsQUVyLHE5PWwoKCk9PntPaSgpO1ZuKCk7U2UoKTtERXIoKTtvdCgpO1NsZT1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LHo4PWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSxBRXI9KCgpPT57bGV0IGU9W3plKCJkZWVzLWxhYmVsIildLHQscj1bXSxhLGk9RGUsbyxuPVtdLHM9W10sYyxkPVtdLGY9W10sdSxwPVtdLGg9W107dmFyIGI9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCB4PXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO289W2ooe3R5cGU6U3RyaW5nLHJlZmxlY3Q6ITB9KV0sYz1baih7dHlwZTpTdHJpbmcscmVmbGVjdDohMH0pXSx1PVtqKHt0eXBlOkJvb2xlYW4scmVmbGVjdDohMH0pXSxTbGUodGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJsYWJlbCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Zz0+ImxhYmVsImluIGcsZ2V0Omc9PmcubGFiZWwsc2V0OihnLHYpPT57Zy5sYWJlbD12fX0sbWV0YWRhdGE6eH0sbixzKSxTbGUodGhpcyxudWxsLGMse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJkZXNjcmlwdGlvbiIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Zz0+ImRlc2NyaXB0aW9uImluIGcsZ2V0Omc9PmcuZGVzY3JpcHRpb24sc2V0OihnLHYpPT57Zy5kZXNjcmlwdGlvbj12fX0sbWV0YWRhdGE6eH0sZCxmKSxTbGUodGhpcyxudWxsLHUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJyZXF1aXJlZCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Zz0+InJlcXVpcmVkImluIGcsZ2V0Omc9PmcucmVxdWlyZWQsc2V0OihnLHYpPT57Zy5yZXF1aXJlZD12fX0sbWV0YWRhdGE6eH0scCxoKSxTbGUobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6eH0sbnVsbCxyKSxiPWE9dC52YWx1ZSx4JiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnh9KX1zdGF0aWMgZGVtbz1MRXI7c3RhdGljIGRlbW9Hcm91cHM9WyJMYXlvdXQiLCJJbnB1dCJdOyNlPXo4KHRoaXMsbiwiIik7Z2V0IGxhYmVsKCl7cmV0dXJuIHRoaXMuI2V9c2V0IGxhYmVsKHgpe3RoaXMuI2U9eH0jdD0oejgodGhpcyxzKSx6OCh0aGlzLGQsdm9pZCAwKSk7Z2V0IGRlc2NyaXB0aW9uKCl7cmV0dXJuIHRoaXMuI3R9c2V0IGRlc2NyaXB0aW9uKHgpe3RoaXMuI3Q9eH0jcj0oejgodGhpcyxmKSx6OCh0aGlzLHAsITEpKTtnZXQgcmVxdWlyZWQoKXtyZXR1cm4gdGhpcy4jcn1zZXQgcmVxdWlyZWQoeCl7dGhpcy4jcj14fXN0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgLyogVE9ETzogTWlncmF0ZSBoYXJkY29kZWQgdmFsdWVzIHRvIC0tZGVlcy0qIENTUyB2YXJpYWJsZXMgKi8KICAgICAgOmhvc3QgewogICAgICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsICdTZWdvZSBVSScsICdSb2JvdG8nLCBzYW5zLXNlcmlmOwogICAgICB9CgogICAgICAubGFiZWwgewogICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDE1JSkiLCJoc2woMCAwJSA5MCUpIil9OwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogNnB4OwogICAgICAgIGN1cnNvcjogZGVmYXVsdDsKICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTsKICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTsKICAgICAgfQoKICAgICAgLnJlcXVpcmVkIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDg0LjIlIDYwLjIlKSIsImhzbCgwIDcyLjIlIDUwLjYlKSIpfTsKICAgICAgICBtYXJnaW4tbGVmdDogMnB4OwogICAgICB9CgogICAgICBkZWVzLWljb24gewogICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFweCk7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDQ1LjElKSIsImhzbCgwIDAlIDYzLjklKSIpfTsKICAgICAgICBjdXJzb3I6IGhlbHA7CiAgICAgIH0KICAgIGBdO3JlbmRlcigpe3JldHVybiBTYAogICAgICAke3RoaXMubGFiZWw/U2AKICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFiZWwiPgogICAgICAgICAgICAgICR7dGhpcy5sYWJlbH0KICAgICAgICAgICAgICAke3RoaXMucmVxdWlyZWQ/U2A8c3BhbiBjbGFzcz0icmVxdWlyZWQiPio8L3NwYW4+YDoiIn0KICAgICAgICAgICAgICAke3RoaXMuZGVzY3JpcHRpb24/U2AKICAgICAgICAgICAgICAgICAgICA8ZGVlcy1pY29uIC5pY29uPSR7Imx1Y2lkZTppbmZvIn0+PC9kZWVzLWljb24+CiAgICAgICAgICAgICAgICAgICAgPGRlZXMtc3BlZWNoYnViYmxlIC50ZXh0PSR7dGhpcy5kZXNjcmlwdGlvbn0+PC9kZWVzLXNwZWVjaGJ1YmJsZT4KICAgICAgICAgICAgICAgICAgYDpTYGB9CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgYDpTYGB9CiAgICBgfWNvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKSx6OCh0aGlzLGgpfXN0YXRpY3t6OChhLHIpfX07cmV0dXJuIGI9YX0pKCl9KTt2YXIgemxlLFVsdD1sKCgpPT57emxlPSIwLjU1LjEifSk7dmFyIGo5LE5zLEVFcixDOD1sKCgpPT57U2UoKTtlcigpO1VsdCgpO290KCk7ajk9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxOcz1mdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MixpPTA7aTx0Lmxlbmd0aDtpKyspcj1hP3RbaV0uY2FsbChlLHIpOnRbaV0uY2FsbChlKTtyZXR1cm4gYT9yOnZvaWQgMH0sRUVyPSgoKT0+e2xldCBlPVt6ZSgiZGVlcy13b3Jrc3BhY2UtbW9uYWNvIildLHQscj1bXSxhLGk9RGUsbyxuPVtdLHM9W10sYyxkPVtdLGY9W10sdSxwPVtdLGg9W10sYix4PVtdLGc9W10sdix3PVtdLE09W107dmFyIEY9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCBDPXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO289W2ooe3R5cGU6U3RyaW5nfSldLGM9W2ooe3R5cGU6U3RyaW5nfSldLHU9W2ooe3R5cGU6U3RyaW5nfSldLGI9W2ooe3R5cGU6T2JqZWN0fSldLHY9W2ooe3R5cGU6Qm9vbGVhbn0pXSxqOSh0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImNvbnRlbnQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOms9PiJjb250ZW50ImluIGssZ2V0Oms9PmsuY29udGVudCxzZXQ6KGssTik9PntrLmNvbnRlbnQ9Tn19LG1ldGFkYXRhOkN9LG4scyksajkodGhpcyxudWxsLGMse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJsYW5ndWFnZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6az0+Imxhbmd1YWdlImluIGssZ2V0Oms9PmsubGFuZ3VhZ2Usc2V0OihrLE4pPT57ay5sYW5ndWFnZT1OfX0sbWV0YWRhdGE6Q30sZCxmKSxqOSh0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImZpbGVQYXRoIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczprPT4iZmlsZVBhdGgiaW4gayxnZXQ6az0+ay5maWxlUGF0aCxzZXQ6KGssTik9PntrLmZpbGVQYXRoPU59fSxtZXRhZGF0YTpDfSxwLGgpLGo5KHRoaXMsbnVsbCxiLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiY29udGVudFN1YmplY3QiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOms9PiJjb250ZW50U3ViamVjdCJpbiBrLGdldDprPT5rLmNvbnRlbnRTdWJqZWN0LHNldDooayxOKT0+e2suY29udGVudFN1YmplY3Q9Tn19LG1ldGFkYXRhOkN9LHgsZyksajkodGhpcyxudWxsLHYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ3b3JkV3JhcCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6az0+IndvcmRXcmFwImluIGssZ2V0Oms9Pmsud29yZFdyYXAsc2V0OihrLE4pPT57ay53b3JkV3JhcD1OfX0sbWV0YWRhdGE6Q30sdyxNKSxqOShudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTpDfSxudWxsLHIpLEY9YT10LnZhbHVlLEMmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6Q30pfXN0YXRpYyBkZW1vPSgpPT5TYDxkZWVzLXdvcmtzcGFjZS1tb25hY28+PC9kZWVzLXdvcmtzcGFjZS1tb25hY28+YDtzdGF0aWMgZGVtb0dyb3Vwcz1bIldvcmtzcGFjZSJdO3N0YXRpYyBtb25hY29EZWZlcnJlZDtlZGl0b3JEZWZlcnJlZD1KdC5zbWFydHByb21pc2UuZGVmZXIoKTsjZT1Ocyh0aGlzLG4sYGZ1bmN0aW9uIGhlbGxvKCkgewoJYWxlcnQoJ0hlbGxvIHdvcmxkIScpOwp9YCk7Z2V0IGNvbnRlbnQoKXtyZXR1cm4gdGhpcy4jZX1zZXQgY29udGVudChDKXt0aGlzLiNlPUN9I3Q9KE5zKHRoaXMscyksTnModGhpcyxkLCJ0eXBlc2NyaXB0IikpO2dldCBsYW5ndWFnZSgpe3JldHVybiB0aGlzLiN0fXNldCBsYW5ndWFnZShDKXt0aGlzLiN0PUN9I3I9KE5zKHRoaXMsZiksTnModGhpcyxwLCIiKSk7Z2V0IGZpbGVQYXRoKCl7cmV0dXJuIHRoaXMuI3J9c2V0IGZpbGVQYXRoKEMpe3RoaXMuI3I9Q30jYT0oTnModGhpcyxoKSxOcyh0aGlzLHgsbmV3IEp0LnNtYXJ0cngucnhqcy5TdWJqZWN0KSk7Z2V0IGNvbnRlbnRTdWJqZWN0KCl7cmV0dXJuIHRoaXMuI2F9c2V0IGNvbnRlbnRTdWJqZWN0KEMpe3RoaXMuI2E9Q30jaT0oTnModGhpcyxnKSxOcyh0aGlzLHcsIm9mZiIpKTtnZXQgd29yZFdyYXAoKXtyZXR1cm4gdGhpcy4jaX1zZXQgd29yZFdyYXAoQyl7dGhpcy4jaT1DfW1vbmFjb1RoZW1lU3Vic2NyaXB0aW9uPShOcyh0aGlzLE0pLG51bGwpO2lzVXBkYXRpbmdGcm9tRXh0ZXJuYWw9ITE7Y29uc3RydWN0b3IoKXtzdXBlcigpLFkxLnNldHVwRG9tVG9vbHMoKX1zdGF0aWMgc3R5bGVzPVtQZSxtLmRlZmF1bHRTdHlsZXMsbGVgCiAgICAgIC8qIFRPRE86IE1pZ3JhdGUgaGFyZGNvZGVkIHZhbHVlcyB0byAtLWRlZXMtKiBDU1MgdmFyaWFibGVzICovCiAgICAgIDpob3N0IHsKICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICB9CgogICAgICAqIHsKICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgICB9CgogICAgICAubWFpbmJveCB7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgfQoKICAgICAgI2NvbnRhaW5lciB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgfQogICAgYF07cmVuZGVyKCl7cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9Im1haW5ib3giPgogICAgICAgIDxkaXYgaWQ9ImNvbnRhaW5lciI+PC9kaXY+CiAgICAgIDwvZGl2PgogICAgYH1hc3luYyBmaXJzdFVwZGF0ZWQoQyl7c3VwZXIuZmlyc3RVcGRhdGVkKEMpO2xldCBrPXRoaXMuc2hhZG93Um9vdC5nZXRFbGVtZW50QnlJZCgiY29udGFpbmVyIiksTj1gaHR0cHM6Ly9jZG4uanNkZWxpdnIubmV0L25wbS9tb25hY28tZWRpdG9yQCR7emxlfWA7aWYoIUYubW9uYWNvRGVmZXJyZWQpe0YubW9uYWNvRGVmZXJyZWQ9SnQuc21hcnRwcm9taXNlLmRlZmVyKCk7bGV0IHo9YCR7Tn0vbWluL3ZzL2xvYWRlci5qc2AseT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTt5LnNyYz16LHkub25sb2FkPSgpPT57Ri5tb25hY29EZWZlcnJlZC5yZXNvbHZlKCl9LGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoeSl9YXdhaXQgRi5tb25hY29EZWZlcnJlZC5wcm9taXNlLHdpbmRvdy5yZXF1aXJlLmNvbmZpZyh7cGF0aHM6e3ZzOmAke059L21pbi92c2B9fSksd2luZG93LnJlcXVpcmUoWyJ2cy9lZGl0b3IvZWRpdG9yLm1haW4iXSxhc3luYygpPT57bGV0IHo9YXdhaXQgdGhpcy5kb210b29sc1Byb21pc2UsRT16LnRoZW1lTWFuYWdlci5nb0JyaWdodEJvb2xlYW4/InZzIjoidnMtZGFyayIsXz13aW5kb3cubW9uYWNvLFA9bnVsbDtpZih0aGlzLmZpbGVQYXRoKXtsZXQgSD1fLlVyaS5wYXJzZShgZmlsZTovLyR7dGhpcy5maWxlUGF0aH1gKTtQPV8uZWRpdG9yLmdldE1vZGVsKEgpLFA/UC5zZXRWYWx1ZSh0aGlzLmNvbnRlbnQpOlA9Xy5lZGl0b3IuY3JlYXRlTW9kZWwodGhpcy5jb250ZW50LHRoaXMubGFuZ3VhZ2UsSCl9bGV0IFY9Xy5lZGl0b3IuY3JlYXRlKGsse21vZGVsOlB8fHZvaWQgMCx2YWx1ZTpQP3ZvaWQgMDp0aGlzLmNvbnRlbnQsbGFuZ3VhZ2U6UD92b2lkIDA6dGhpcy5sYW5ndWFnZSx0aGVtZTpFLHVzZVNoYWRvd0RPTTohMCxmb250U2l6ZToxNixhdXRvbWF0aWNMYXlvdXQ6ITAsd29yZFdyYXA6dGhpcy53b3JkV3JhcCxob3Zlcjp7ZW5hYmxlZDohMCxkZWxheTozMDAsc3RpY2t5OiEwLGFib3ZlOiExfX0pO3RoaXMubW9uYWNvVGhlbWVTdWJzY3JpcHRpb249ei50aGVtZU1hbmFnZXIudGhlbWVPYnNlcnZhYmxlLnN1YnNjcmliZShIPT57bGV0IFc9SD8idnMiOiJ2cy1kYXJrIjtWLnVwZGF0ZU9wdGlvbnMoe3RoZW1lOld9KX0pLHRoaXMuZWRpdG9yRGVmZXJyZWQucmVzb2x2ZShWKX0pO2xldCAkPWF3YWl0KGF3YWl0IGZldGNoKGAke059L21pbi92cy9lZGl0b3IvZWRpdG9yLm1haW4uY3NzYCkpLnRleHQoKSxJPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInN0eWxlIik7SS50ZXh0Q29udGVudD0kLHRoaXMuc2hhZG93Um9vdC5hcHBlbmQoSSk7bGV0IEI9YXdhaXQgdGhpcy5lZGl0b3JEZWZlcnJlZC5wcm9taXNlO0Iub25EaWRDaGFuZ2VNb2RlbENvbnRlbnQoYXN5bmMgej0+e2lmKHRoaXMuaXNVcGRhdGluZ0Zyb21FeHRlcm5hbClyZXR1cm47bGV0IHk9Qi5nZXRWYWx1ZSgpO3RoaXMuY29udGVudFN1YmplY3QubmV4dCh5KSx0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJjb250ZW50LWNoYW5nZSIse2RldGFpbDp5LGJ1YmJsZXM6ITAsY29tcG9zZWQ6ITB9KSl9KSx0aGlzLmNvbnRlbnRTdWJqZWN0Lm5leHQoQi5nZXRWYWx1ZSgpKX1hc3luYyB1cGRhdGVkKEMpe3N1cGVyLnVwZGF0ZWQoQyk7bGV0IGs9d2luZG93Lm1vbmFjbztpZihrKXtpZihDLmhhcygiZmlsZVBhdGgiKSYmdGhpcy5maWxlUGF0aCl7bGV0IE49YXdhaXQgdGhpcy5lZGl0b3JEZWZlcnJlZC5wcm9taXNlLCQ9ay5VcmkucGFyc2UoYGZpbGU6Ly8ke3RoaXMuZmlsZVBhdGh9YCksST1rLmVkaXRvci5nZXRNb2RlbCgkKTtJP0kuZ2V0VmFsdWUoKSE9PXRoaXMuY29udGVudCYmKHRoaXMuaXNVcGRhdGluZ0Zyb21FeHRlcm5hbD0hMCxJLnNldFZhbHVlKHRoaXMuY29udGVudCksdGhpcy5pc1VwZGF0aW5nRnJvbUV4dGVybmFsPSExKTpJPWsuZWRpdG9yLmNyZWF0ZU1vZGVsKHRoaXMuY29udGVudCx0aGlzLmxhbmd1YWdlLCQpLE4uZ2V0TW9kZWwoKT8udXJpLnRvU3RyaW5nKCkhPT0kLnRvU3RyaW5nKCkmJk4uc2V0TW9kZWwoSSk7cmV0dXJufWlmKEMuaGFzKCJjb250ZW50Iikpe2xldCBOPWF3YWl0IHRoaXMuZWRpdG9yRGVmZXJyZWQucHJvbWlzZTtOLmdldFZhbHVlKCkhPT10aGlzLmNvbnRlbnQmJih0aGlzLmlzVXBkYXRpbmdGcm9tRXh0ZXJuYWw9ITAsTi5zZXRWYWx1ZSh0aGlzLmNvbnRlbnQpLHRoaXMuaXNVcGRhdGluZ0Zyb21FeHRlcm5hbD0hMSl9aWYoQy5oYXMoImxhbmd1YWdlIikpe2xldCAkPShhd2FpdCB0aGlzLmVkaXRvckRlZmVycmVkLnByb21pc2UpLmdldE1vZGVsKCk7JCYmay5lZGl0b3Iuc2V0TW9kZWxMYW5ndWFnZSgkLHRoaXMubGFuZ3VhZ2UpfX19YXN5bmMgZGlzY29ubmVjdGVkQ2FsbGJhY2soKXthd2FpdCBzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpLHRoaXMubW9uYWNvVGhlbWVTdWJzY3JpcHRpb24mJih0aGlzLm1vbmFjb1RoZW1lU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCksdGhpcy5tb25hY29UaGVtZVN1YnNjcmlwdGlvbj1udWxsKX1hc3luYyBzZXRDb250ZW50RXh0ZXJuYWwoQyxrPSEwKXtsZXQgTj1hd2FpdCB0aGlzLmVkaXRvckRlZmVycmVkLnByb21pc2U7aWYoTi5nZXRWYWx1ZSgpPT09QylyZXR1cm47bGV0IEk9az9OLmdldFBvc2l0aW9uKCk6bnVsbCxCPWs/Ti5nZXRTZWxlY3Rpb25zKCk6bnVsbCx6PWs/Ti5nZXRTY3JvbGxUb3AoKTowLHk9az9OLmdldFNjcm9sbExlZnQoKTowO2lmKHRoaXMuaXNVcGRhdGluZ0Zyb21FeHRlcm5hbD0hMCxOLnNldFZhbHVlKEMpLHRoaXMuaXNVcGRhdGluZ0Zyb21FeHRlcm5hbD0hMSxrKXtpZihJKXtsZXQgRT1OLmdldE1vZGVsKCksXz1FPy5nZXRMaW5lQ291bnQoKXx8MSxQPU1hdGgubWluKEkubGluZU51bWJlcixfKSxWPUU/LmdldExpbmVNYXhDb2x1bW4oUCl8fDEsSD1NYXRoLm1pbihJLmNvbHVtbixWKTtOLnNldFBvc2l0aW9uKHtsaW5lTnVtYmVyOlAsY29sdW1uOkh9KX1pZihCJiZCLmxlbmd0aD4wKXRyeXtOLnNldFNlbGVjdGlvbnMoQil9Y2F0Y2h7fU4uc2V0U2Nyb2xsUG9zaXRpb24oe3Njcm9sbFRvcDp6LHNjcm9sbExlZnQ6eX0pfX1zdGF0aWN7TnMoYSxyKX19O3JldHVybiBGPWF9KSgpfSk7dmFyIG4zLGZvLHVaLENsZSxXbHQ9bCgoKT0+e1BhKCk7U2UoKTtvdCgpO1M4KCk7YnIoKTtxOSgpO0M4KCk7QzgoKTtuMz1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LGZvPWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSx1Wj1be2tleToidHlwZXNjcmlwdCIsbGFiZWw6IlR5cGVTY3JpcHQifSx7a2V5OiJqYXZhc2NyaXB0IixsYWJlbDoiSmF2YVNjcmlwdCJ9LHtrZXk6Impzb24iLGxhYmVsOiJKU09OIn0se2tleToiaHRtbCIsbGFiZWw6IkhUTUwifSx7a2V5OiJjc3MiLGxhYmVsOiJDU1MifSx7a2V5OiJzY3NzIixsYWJlbDoiU0NTUyJ9LHtrZXk6Im1hcmtkb3duIixsYWJlbDoiTWFya2Rvd24ifSx7a2V5OiJ5YW1sIixsYWJlbDoiWUFNTCJ9LHtrZXk6InhtbCIsbGFiZWw6IlhNTCJ9LHtrZXk6InNxbCIsbGFiZWw6IlNRTCJ9LHtrZXk6InB5dGhvbiIsbGFiZWw6IlB5dGhvbiJ9LHtrZXk6ImphdmEiLGxhYmVsOiJKYXZhIn0se2tleToiY3NoYXJwIixsYWJlbDoiQyMifSx7a2V5OiJjcHAiLGxhYmVsOiJDKysifSx7a2V5OiJnbyIsbGFiZWw6IkdvIn0se2tleToicnVzdCIsbGFiZWw6IlJ1c3QifSx7a2V5OiJzaGVsbCIsbGFiZWw6IlNoZWxsIn0se2tleToicGxhaW50ZXh0IixsYWJlbDoiUGxhaW4gVGV4dCJ9XSxDbGU9KCgpPT57bGV0IGU9W3plKCJkZWVzLWlucHV0LWNvZGUiKV0sdCxyPVtdLGEsaT1odCxvLG49W10scz1bXSxjLGQ9W10sZj1bXSx1LHA9W10saD1bXSxiLHg9W10sZz1bXSx2LHc9W10sTT1bXSxGLEM9W10saz1bXSxOLCQ9W10sST1bXTt2YXIgQj1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IHo9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baih7dHlwZTpTdHJpbmd9KV0sYz1baih7dHlwZTpTdHJpbmd9KV0sdT1baih7dHlwZTpTdHJpbmd9KV0sYj1baih7dHlwZTpTdHJpbmd9KV0sdj1baih7dHlwZTpCb29sZWFufSldLEY9W3JlKCldLE49W3JlKCldLG4zKHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToidmFsdWUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnk9PiJ2YWx1ZSJpbiB5LGdldDp5PT55LnZhbHVlLHNldDooeSxFKT0+e3kudmFsdWU9RX19LG1ldGFkYXRhOnp9LG4scyksbjModGhpcyxudWxsLGMse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJsYW5ndWFnZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eT0+Imxhbmd1YWdlImluIHksZ2V0Onk9PnkubGFuZ3VhZ2Usc2V0Oih5LEUpPT57eS5sYW5ndWFnZT1FfX0sbWV0YWRhdGE6en0sZCxmKSxuMyh0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImhlaWdodCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eT0+ImhlaWdodCJpbiB5LGdldDp5PT55LmhlaWdodCxzZXQ6KHksRSk9Pnt5LmhlaWdodD1FfX0sbWV0YWRhdGE6en0scCxoKSxuMyh0aGlzLG51bGwsYix7a2luZDoiYWNjZXNzb3IiLG5hbWU6IndvcmRXcmFwIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5PT4id29yZFdyYXAiaW4geSxnZXQ6eT0+eS53b3JkV3JhcCxzZXQ6KHksRSk9Pnt5LndvcmRXcmFwPUV9fSxtZXRhZGF0YTp6fSx4LGcpLG4zKHRoaXMsbnVsbCx2LHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2hvd0xpbmVOdW1iZXJzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5PT4ic2hvd0xpbmVOdW1iZXJzImluIHksZ2V0Onk9Pnkuc2hvd0xpbmVOdW1iZXJzLHNldDooeSxFKT0+e3kuc2hvd0xpbmVOdW1iZXJzPUV9fSxtZXRhZGF0YTp6fSx3LE0pLG4zKHRoaXMsbnVsbCxGLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiaXNMYW5ndWFnZURyb3Bkb3duT3BlbiIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eT0+ImlzTGFuZ3VhZ2VEcm9wZG93bk9wZW4iaW4geSxnZXQ6eT0+eS5pc0xhbmd1YWdlRHJvcGRvd25PcGVuLHNldDooeSxFKT0+e3kuaXNMYW5ndWFnZURyb3Bkb3duT3Blbj1FfX0sbWV0YWRhdGE6en0sQyxrKSxuMyh0aGlzLG51bGwsTix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImNvcHlTdWNjZXNzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5PT4iY29weVN1Y2Nlc3MiaW4geSxnZXQ6eT0+eS5jb3B5U3VjY2VzcyxzZXQ6KHksRSk9Pnt5LmNvcHlTdWNjZXNzPUV9fSxtZXRhZGF0YTp6fSwkLEkpLG4zKG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOnp9LG51bGwsciksQj1hPXQudmFsdWUseiYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTp6fSl9c3RhdGljIGRlbW89KCk9PlNgCiAgICA8ZGVlcy1pbnB1dC1jb2RlCiAgICAgIGxhYmVsPSJUeXBlU2NyaXB0IENvZGUiCiAgICAgIGtleT0iY29kZSIKICAgICAgbGFuZ3VhZ2U9InR5cGVzY3JpcHQiCiAgICAgIGhlaWdodD0iMzAwcHgiCiAgICAgIC52YWx1ZT0ke2Bjb25zdCBncmVldGluZzogc3RyaW5nID0gIkhlbGxvIFdvcmxkIjsKY29uc29sZS5sb2coZ3JlZXRpbmcpO2B9CiAgICA+PC9kZWVzLWlucHV0LWNvZGU+CiAgYDtzdGF0aWMgZGVtb0dyb3Vwcz1bIklucHV0IiwiV29ya3NwYWNlIl07I2U9Zm8odGhpcyxuLCIiKTtnZXQgdmFsdWUoKXtyZXR1cm4gdGhpcy4jZX1zZXQgdmFsdWUoeil7dGhpcy4jZT16fSN0PShmbyh0aGlzLHMpLGZvKHRoaXMsZCwidHlwZXNjcmlwdCIpKTtnZXQgbGFuZ3VhZ2UoKXtyZXR1cm4gdGhpcy4jdH1zZXQgbGFuZ3VhZ2Uoeil7dGhpcy4jdD16fSNyPShmbyh0aGlzLGYpLGZvKHRoaXMscCwiMjAwcHgiKSk7Z2V0IGhlaWdodCgpe3JldHVybiB0aGlzLiNyfXNldCBoZWlnaHQoeil7dGhpcy4jcj16fSNhPShmbyh0aGlzLGgpLGZvKHRoaXMseCwib2ZmIikpO2dldCB3b3JkV3JhcCgpe3JldHVybiB0aGlzLiNhfXNldCB3b3JkV3JhcCh6KXt0aGlzLiNhPXp9I2k9KGZvKHRoaXMsZyksZm8odGhpcyx3LCEwKSk7Z2V0IHNob3dMaW5lTnVtYmVycygpe3JldHVybiB0aGlzLiNpfXNldCBzaG93TGluZU51bWJlcnMoeil7dGhpcy4jaT16fSNvPShmbyh0aGlzLE0pLGZvKHRoaXMsQywhMSkpO2dldCBpc0xhbmd1YWdlRHJvcGRvd25PcGVuKCl7cmV0dXJuIHRoaXMuI299c2V0IGlzTGFuZ3VhZ2VEcm9wZG93bk9wZW4oeil7dGhpcy4jbz16fSNuPShmbyh0aGlzLGspLGZvKHRoaXMsJCwhMSkpO2dldCBjb3B5U3VjY2Vzcygpe3JldHVybiB0aGlzLiNufXNldCBjb3B5U3VjY2Vzcyh6KXt0aGlzLiNuPXp9ZWRpdG9yRWxlbWVudD0oZm8odGhpcyxJKSxudWxsKTtzdGF0aWMgc3R5bGVzPVtQZSwuLi5odC5iYXNlU3R5bGVzLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgKiB7CiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAgfQoKICAgICAgOmhvc3QgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBtaW4taGVpZ2h0OiAwOwogICAgICB9CgogICAgICAuaW5wdXQtd3JhcHBlciwKICAgICAgOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSJ0b3AiXSkgLmlucHV0LXdyYXBwZXIsCiAgICAgIDpob3N0KFtsYWJlbC1wb3NpdGlvbj0ibGVmdCJdKSAuaW5wdXQtd3JhcHBlciwKICAgICAgOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSJyaWdodCJdKSAuaW5wdXQtd3JhcHBlciB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGZsZXg6IDE7CiAgICAgICAgbWluLWhlaWdodDogMDsKICAgICAgfQoKICAgICAgLmNvZGUtY29udGFpbmVyIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgZmxleDogMTsKICAgICAgICBtaW4taGVpZ2h0OiAwOwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OS44JSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDEwMCUpIiwiaHNsKDAgMCUgOSUpIil9OwogICAgICB9CgogICAgICAudG9vbGJhciB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICAgICAgICBwYWRkaW5nOiA4cHggMTJweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOTclKSIsImhzbCgwIDAlIDclKSIpfTsKICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgwIDAlIDg5LjglKSIsImhzbCgwIDAlIDE0LjklKSIpfTsKICAgICAgICBnYXA6IDhweDsKICAgICAgfQoKICAgICAgLnRvb2xiYXItbGVmdCB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogOHB4OwogICAgICB9CgogICAgICAudG9vbGJhci1yaWdodCB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogNHB4OwogICAgICB9CgogICAgICAubGFuZ3VhZ2Utc2VsZWN0b3IgewogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgfQoKICAgICAgLmxhbmd1YWdlLWJ1dHRvbiB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogNnB4OwogICAgICAgIHBhZGRpbmc6IDRweCAxMHB4OwogICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAxMDAlKSIsImhzbCgwIDAlIDEyJSkiKX07CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgwIDAlIDg5LjglKSIsImhzbCgwIDAlIDIwJSkiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDIwJSkiLCJoc2woMCAwJSA5MCUpIil9OwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICB9CgogICAgICAubGFuZ3VhZ2UtYnV0dG9uOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOTUlKSIsImhzbCgwIDAlIDE1JSkiKX07CiAgICAgIH0KCiAgICAgIC5sYW5ndWFnZS1kcm9wZG93biB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHRvcDogMTAwJTsKICAgICAgICBsZWZ0OiAwOwogICAgICAgIG1hcmdpbi10b3A6IDRweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTAwJSkiLCJoc2woMCAwJSA5JSkiKX07CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgwIDAlIDg5LjglKSIsImhzbCgwIDAlIDIwJSkiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDEycHggcmdiYSgwLCAwLCAwLCAwLjE1KTsKICAgICAgICB6LWluZGV4OiAxMDA7CiAgICAgICAgbWF4LWhlaWdodDogMjUwcHg7CiAgICAgICAgb3ZlcmZsb3cteTogYXV0bzsKICAgICAgICBtaW4td2lkdGg6IDE0MHB4OwogICAgICB9CgogICAgICAubGFuZ3VhZ2Utb3B0aW9uIHsKICAgICAgICBwYWRkaW5nOiA4cHggMTJweDsKICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMjAlKSIsImhzbCgwIDAlIDkwJSkiKX07CiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1cyBlYXNlOwogICAgICB9CgogICAgICAubGFuZ3VhZ2Utb3B0aW9uOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOTUlKSIsImhzbCgwIDAlIDE1JSkiKX07CiAgICAgIH0KCiAgICAgIC5sYW5ndWFnZS1vcHRpb24uc2VsZWN0ZWQgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5MCUpIiwiaHNsKDAgMCUgMjAlKSIpfTsKICAgICAgfQoKICAgICAgLnRvb2xiYXItYnV0dG9uIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgd2lkdGg6IDMycHg7CiAgICAgICAgaGVpZ2h0OiAzMnB4OwogICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogICAgICAgIGJvcmRlcjogbm9uZTsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNDUlKSIsImhzbCgwIDAlIDYwJSkiKX07CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgIH0KCiAgICAgIC50b29sYmFyLWJ1dHRvbjpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDkwJSkiLCJoc2woMCAwJSAxNSUpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMjAlKSIsImhzbCgwIDAlIDkwJSkiKX07CiAgICAgIH0KCiAgICAgIC50b29sYmFyLWJ1dHRvbi5hY3RpdmUgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4NSUpIiwiaHNsKDAgMCUgMjAlKSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDIwJSkiLCJoc2woMCAwJSA5MCUpIil9OwogICAgICB9CgogICAgICAudG9vbGJhci1idXR0b24uc3VjY2VzcyB7CiAgICAgICAgY29sb3I6IGhzbCgxNDIuMSA3Ni4yJSAzNi4zJSk7CiAgICAgIH0KCiAgICAgIC5lZGl0b3Itd3JhcHBlciB7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIGZsZXg6IDE7CiAgICAgICAgbWluLWhlaWdodDogMDsKICAgICAgfQoKICAgICAgZGVlcy13b3Jrc3BhY2UtbW9uYWNvIHsKICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgIH0KCiAgICAgIC50b29sYmFyLWRpdmlkZXIgewogICAgICAgIHdpZHRoOiAxcHg7CiAgICAgICAgaGVpZ2h0OiAyMHB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4NSUpIiwiaHNsKDAgMCUgMjAlKSIpfTsKICAgICAgICBtYXJnaW46IDAgNHB4OwogICAgICB9CgogICAgICA6aG9zdChbZGlzYWJsZWRdKSAuY29kZS1jb250YWluZXIgewogICAgICAgIG9wYWNpdHk6IDAuNTsKICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAgICAgfQogICAgYF07cmVuZGVyKCl7bGV0IHo9dVouZmluZCh5PT55LmtleT09PXRoaXMubGFuZ3VhZ2UpfHx1WlswXTtyZXR1cm4gU2AKICAgICAgPHN0eWxlPgogICAgICAgIDpob3N0IHsKICAgICAgICAgIGhlaWdodDogJHt0aGlzLmhlaWdodH07CiAgICAgICAgfQogICAgICA8L3N0eWxlPgogICAgICA8ZGl2IGNsYXNzPSJpbnB1dC13cmFwcGVyIj4KICAgICAgICA8ZGVlcy1sYWJlbCAubGFiZWw9JHt0aGlzLmxhYmVsfSAuZGVzY3JpcHRpb249JHt0aGlzLmRlc2NyaXB0aW9ufSAucmVxdWlyZWQ9JHt0aGlzLnJlcXVpcmVkfT48L2RlZXMtbGFiZWw+CiAgICAgICAgPGRpdiBjbGFzcz0iY29kZS1jb250YWluZXIiPgogICAgICAgICAgPGRpdiBjbGFzcz0idG9vbGJhciI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRvb2xiYXItbGVmdCI+CiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGFuZ3VhZ2Utc2VsZWN0b3IiPgogICAgICAgICAgICAgICAgPGJ1dHRvbgogICAgICAgICAgICAgICAgICBjbGFzcz0ibGFuZ3VhZ2UtYnV0dG9uIgogICAgICAgICAgICAgICAgICBAY2xpY2s9JHt0aGlzLnRvZ2dsZUxhbmd1YWdlRHJvcGRvd259CiAgICAgICAgICAgICAgICAgIEBibHVyPSR7dGhpcy5oYW5kbGVMYW5ndWFnZUJsdXJ9CiAgICAgICAgICAgICAgICA+CiAgICAgICAgICAgICAgICAgICR7ei5sYWJlbH0KICAgICAgICAgICAgICAgICAgPGRlZXMtaWNvbiAuaWNvbj0keyJsdWNpZGU6Q2hldnJvbkRvd24ifSBpY29uU2l6ZT0iMTQiPjwvZGVlcy1pY29uPgogICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgICAke3RoaXMuaXNMYW5ndWFnZURyb3Bkb3duT3Blbj9TYAogICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5ndWFnZS1kcm9wZG93biI+CiAgICAgICAgICAgICAgICAgICAgJHt1Wi5tYXAoeT0+U2AKICAgICAgICAgICAgICAgICAgICAgIDxkaXYKICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9Imxhbmd1YWdlLW9wdGlvbiAke3kua2V5PT09dGhpcy5sYW5ndWFnZT8ic2VsZWN0ZWQiOiIifSIKICAgICAgICAgICAgICAgICAgICAgICAgQG1vdXNlZG93bj0ke0U9PnRoaXMuc2VsZWN0TGFuZ3VhZ2UoRSx5LmtleSl9CiAgICAgICAgICAgICAgICAgICAgICA+CiAgICAgICAgICAgICAgICAgICAgICAgICR7eS5sYWJlbH0KICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIGApfQogICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIGA6IiJ9CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0b29sYmFyLXJpZ2h0Ij4KICAgICAgICAgICAgICA8YnV0dG9uCiAgICAgICAgICAgICAgICBjbGFzcz0idG9vbGJhci1idXR0b24gJHt0aGlzLndvcmRXcmFwPT09Im9uIj8iYWN0aXZlIjoiIn0iCiAgICAgICAgICAgICAgICB0aXRsZT0iV29yZCBXcmFwIgogICAgICAgICAgICAgICAgQGNsaWNrPSR7dGhpcy50b2dnbGVXb3JkV3JhcH0KICAgICAgICAgICAgICA+CiAgICAgICAgICAgICAgICA8ZGVlcy1pY29uIC5pY29uPSR7Imx1Y2lkZTpXcmFwVGV4dCJ9IGljb25TaXplPSIxNiI+PC9kZWVzLWljb24+CiAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgPGJ1dHRvbgogICAgICAgICAgICAgICAgY2xhc3M9InRvb2xiYXItYnV0dG9uICR7dGhpcy5zaG93TGluZU51bWJlcnM/ImFjdGl2ZSI6IiJ9IgogICAgICAgICAgICAgICAgdGl0bGU9IkxpbmUgTnVtYmVycyIKICAgICAgICAgICAgICAgIEBjbGljaz0ke3RoaXMudG9nZ2xlTGluZU51bWJlcnN9CiAgICAgICAgICAgICAgPgogICAgICAgICAgICAgICAgPGRlZXMtaWNvbiAuaWNvbj0keyJsdWNpZGU6SGFzaCJ9IGljb25TaXplPSIxNiI+PC9kZWVzLWljb24+CiAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idG9vbGJhci1kaXZpZGVyIj48L2Rpdj4KICAgICAgICAgICAgICA8YnV0dG9uCiAgICAgICAgICAgICAgICBjbGFzcz0idG9vbGJhci1idXR0b24gJHt0aGlzLmNvcHlTdWNjZXNzPyJzdWNjZXNzIjoiIn0iCiAgICAgICAgICAgICAgICB0aXRsZT0iQ29weSBDb2RlIgogICAgICAgICAgICAgICAgQGNsaWNrPSR7dGhpcy5jb3B5Q29kZX0KICAgICAgICAgICAgICA+CiAgICAgICAgICAgICAgICA8ZGVlcy1pY29uIC5pY29uPSR7dGhpcy5jb3B5U3VjY2Vzcz8ibHVjaWRlOkNoZWNrIjoibHVjaWRlOkNvcHkifSBpY29uU2l6ZT0iMTYiPjwvZGVlcy1pY29uPgogICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgIDxidXR0b24KICAgICAgICAgICAgICAgIGNsYXNzPSJ0b29sYmFyLWJ1dHRvbiIKICAgICAgICAgICAgICAgIHRpdGxlPSJFeHBhbmQiCiAgICAgICAgICAgICAgICBAY2xpY2s9JHt0aGlzLm9wZW5GdWxsc2NyZWVufQogICAgICAgICAgICAgID4KICAgICAgICAgICAgICAgIDxkZWVzLWljb24gLmljb249JHsibHVjaWRlOk1heGltaXplMiJ9IGljb25TaXplPSIxNiI+PC9kZWVzLWljb24+CiAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJlZGl0b3Itd3JhcHBlciI+CiAgICAgICAgICAgIDxkZWVzLXdvcmtzcGFjZS1tb25hY28KICAgICAgICAgICAgICAuY29udGVudD0ke3RoaXMudmFsdWV9CiAgICAgICAgICAgICAgLmxhbmd1YWdlPSR7dGhpcy5sYW5ndWFnZX0KICAgICAgICAgICAgICAud29yZFdyYXA9JHt0aGlzLndvcmRXcmFwfQogICAgICAgICAgICAgIEBjb250ZW50LWNoYW5nZT0ke3RoaXMuaGFuZGxlQ29udGVudENoYW5nZX0KICAgICAgICAgICAgPjwvZGVlcy13b3Jrc3BhY2UtbW9uYWNvPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgYH1hc3luYyBmaXJzdFVwZGF0ZWQoKXt0aGlzLmVkaXRvckVsZW1lbnQ9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCJkZWVzLXdvcmtzcGFjZS1tb25hY28iKSx0aGlzLmVkaXRvckVsZW1lbnQmJnRoaXMuZWRpdG9yRWxlbWVudC5jb250ZW50U3ViamVjdC5zdWJzY3JpYmUoej0+e3RoaXMudmFsdWUhPT16JiYodGhpcy52YWx1ZT16LHRoaXMuY2hhbmdlU3ViamVjdC5uZXh0KHRoaXMpKX0pfXRvZ2dsZUxhbmd1YWdlRHJvcGRvd24oKXt0aGlzLmlzTGFuZ3VhZ2VEcm9wZG93bk9wZW49IXRoaXMuaXNMYW5ndWFnZURyb3Bkb3duT3Blbn1oYW5kbGVMYW5ndWFnZUJsdXIoKXtzZXRUaW1lb3V0KCgpPT57dGhpcy5pc0xhbmd1YWdlRHJvcGRvd25PcGVuPSExfSwxNTApfWFzeW5jIHNlbGVjdExhbmd1YWdlKHoseSl7aWYoei5wcmV2ZW50RGVmYXVsdCgpLHRoaXMubGFuZ3VhZ2U9eSx0aGlzLmlzTGFuZ3VhZ2VEcm9wZG93bk9wZW49ITEsdGhpcy5lZGl0b3JFbGVtZW50KXt0aGlzLmVkaXRvckVsZW1lbnQubGFuZ3VhZ2U9eTtsZXQgXz0oYXdhaXQgdGhpcy5lZGl0b3JFbGVtZW50LmVkaXRvckRlZmVycmVkLnByb21pc2UpLmdldE1vZGVsKCk7XyYmd2luZG93Lm1vbmFjby5lZGl0b3Iuc2V0TW9kZWxMYW5ndWFnZShfLHkpfX10b2dnbGVXb3JkV3JhcCgpe3RoaXMud29yZFdyYXA9dGhpcy53b3JkV3JhcD09PSJvbiI/Im9mZiI6Im9uIix0aGlzLnVwZGF0ZUVkaXRvck9wdGlvbigid29yZFdyYXAiLHRoaXMud29yZFdyYXApfXRvZ2dsZUxpbmVOdW1iZXJzKCl7dGhpcy5zaG93TGluZU51bWJlcnM9IXRoaXMuc2hvd0xpbmVOdW1iZXJzLHRoaXMudXBkYXRlRWRpdG9yT3B0aW9uKCJsaW5lTnVtYmVycyIsdGhpcy5zaG93TGluZU51bWJlcnM/Im9uIjoib2ZmIil9YXN5bmMgdXBkYXRlRWRpdG9yT3B0aW9uKHoseSl7dGhpcy5lZGl0b3JFbGVtZW50JiYoYXdhaXQgdGhpcy5lZGl0b3JFbGVtZW50LmVkaXRvckRlZmVycmVkLnByb21pc2UpLnVwZGF0ZU9wdGlvbnMoe1t6XTp5fSl9YXN5bmMgY29weUNvZGUoKXt0cnl7YXdhaXQgbmF2aWdhdG9yLmNsaXBib2FyZC53cml0ZVRleHQodGhpcy52YWx1ZSksdGhpcy5jb3B5U3VjY2Vzcz0hMCxzZXRUaW1lb3V0KCgpPT57dGhpcy5jb3B5U3VjY2Vzcz0hMX0sMmUzKX1jYXRjaCh6KXtjb25zb2xlLmVycm9yKCJGYWlsZWQgdG8gY29weSBjb2RlOiIseil9fWhhbmRsZUNvbnRlbnRDaGFuZ2Uoeil7bGV0IHk9ei5kZXRhaWw7dGhpcy52YWx1ZSE9PXkmJih0aGlzLnZhbHVlPXksdGhpcy5jaGFuZ2VTdWJqZWN0Lm5leHQodGhpcykpfWFzeW5jIG9wZW5GdWxsc2NyZWVuKCl7bGV0IHo9dGhpcy52YWx1ZSx5PW51bGwsRT10aGlzLmxhbmd1YWdlLF89dGhpcy53b3JkV3JhcCxQPXRoaXMuc2hvd0xpbmVOdW1iZXJzLFY9ITEsSD0hMSxXPSgpPT57bGV0IGZlPXVaLmZpbmQoTD0+TC5rZXk9PT1FKTtyZXR1cm4gZmU/ZmUubGFiZWw6IlR5cGVTY3JpcHQifSxhZT1mZT0+e2xldCBMPWZlLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoIi5tb2RhbC10b29sYmFyIik7aWYoIUwpcmV0dXJuO2xldCBRPUwucXVlcnlTZWxlY3RvcigiLmxhbmd1YWdlLWJ1dHRvbiBzcGFuIik7USYmKFEudGV4dENvbnRlbnQ9VygpKTtsZXQga2U9TC5xdWVyeVNlbGVjdG9yKCIud3JhcC1idG4iKTtrZSYma2UuY2xhc3NMaXN0LnRvZ2dsZSgiYWN0aXZlIixfPT09Im9uIik7bGV0IEc9TC5xdWVyeVNlbGVjdG9yKCIubGluZXMtYnRuIik7RyYmRy5jbGFzc0xpc3QudG9nZ2xlKCJhY3RpdmUiLFApO2xldCBBPUwucXVlcnlTZWxlY3RvcigiLmNvcHktYnRuIiksRD1BPy5xdWVyeVNlbGVjdG9yKCJkZWVzLWljb24iKTtBJiZEJiYoQS5jbGFzc0xpc3QudG9nZ2xlKCJzdWNjZXNzIixIKSxELmljb249SD8ibHVjaWRlOkNoZWNrIjoibHVjaWRlOkNvcHkiKTtsZXQgUj1MLnF1ZXJ5U2VsZWN0b3IoIi5sYW5ndWFnZS1kcm9wZG93biIpO1ImJihSLnN0eWxlLmRpc3BsYXk9Vj8iYmxvY2siOiJub25lIil9LFQ9YXdhaXQgR3QuY3JlYXRlQW5kU2hvdyh7aGVhZGluZzp0aGlzLmxhYmVsfHwiQ29kZSBFZGl0b3IiLHdpZHRoOiJmdWxsc2NyZWVuIixjb250ZW50UGFkZGluZzowLGNvbnRlbnQ6U2AKICAgICAgICA8c3R5bGU+CiAgICAgICAgICAubW9kYWwtdG9vbGJhciB7CiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICAgICAgICAgICAgcGFkZGluZzogOHB4IDEycHg7CiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5NyUpIiwiaHNsKDAgMCUgNyUpIil9OwogICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgwIDAlIDg5LjglKSIsImhzbCgwIDAlIDE0LjklKSIpfTsKICAgICAgICAgICAgZ2FwOiA4cHg7CiAgICAgICAgICB9CiAgICAgICAgICAubW9kYWwtdG9vbGJhciAudG9vbGJhci1sZWZ0IHsKICAgICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICAgICAgZ2FwOiA4cHg7CiAgICAgICAgICB9CiAgICAgICAgICAubW9kYWwtdG9vbGJhciAudG9vbGJhci1yaWdodCB7CiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgICAgIGdhcDogNHB4OwogICAgICAgICAgfQogICAgICAgICAgLm1vZGFsLXRvb2xiYXIgLmxhbmd1YWdlLXNlbGVjdG9yIHsKICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgICAgfQogICAgICAgICAgLm1vZGFsLXRvb2xiYXIgLmxhbmd1YWdlLWJ1dHRvbiB7CiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgICAgIGdhcDogNnB4OwogICAgICAgICAgICBwYWRkaW5nOiA0cHggMTBweDsKICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTAwJSkiLCJoc2woMCAwJSAxMiUpIil9OwogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMjAlKSIpfTsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMjAlKSIsImhzbCgwIDAlIDkwJSkiKX07CiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICAgICAgfQogICAgICAgICAgLm1vZGFsLXRvb2xiYXIgLmxhbmd1YWdlLWJ1dHRvbjpob3ZlciB7CiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5NSUpIiwiaHNsKDAgMCUgMTUlKSIpfTsKICAgICAgICAgIH0KICAgICAgICAgIC5tb2RhbC10b29sYmFyIC5sYW5ndWFnZS1kcm9wZG93biB7CiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICAgICAgdG9wOiAxMDAlOwogICAgICAgICAgICBsZWZ0OiAwOwogICAgICAgICAgICBtYXJnaW4tdG9wOiA0cHg7CiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAxMDAlKSIsImhzbCgwIDAlIDklKSIpfTsKICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgwIDAlIDg5LjglKSIsImhzbCgwIDAlIDIwJSkiKX07CiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICAgICAgYm94LXNoYWRvdzogMCA0cHggMTJweCByZ2JhKDAsIDAsIDAsIDAuMTUpOwogICAgICAgICAgICB6LWluZGV4OiAxMDA7CiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDI1MHB4OwogICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvOwogICAgICAgICAgICBtaW4td2lkdGg6IDE0MHB4OwogICAgICAgICAgICBkaXNwbGF5OiBub25lOwogICAgICAgICAgfQogICAgICAgICAgLm1vZGFsLXRvb2xiYXIgLmxhbmd1YWdlLW9wdGlvbiB7CiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxMnB4OwogICAgICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAyMCUpIiwiaHNsKDAgMCUgOTAlKSIpfTsKICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1cyBlYXNlOwogICAgICAgICAgfQogICAgICAgICAgLm1vZGFsLXRvb2xiYXIgLmxhbmd1YWdlLW9wdGlvbjpob3ZlciB7CiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5NSUpIiwiaHNsKDAgMCUgMTUlKSIpfTsKICAgICAgICAgIH0KICAgICAgICAgIC5tb2RhbC10b29sYmFyIC5sYW5ndWFnZS1vcHRpb24uc2VsZWN0ZWQgewogICAgICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOTAlKSIsImhzbCgwIDAlIDIwJSkiKX07CiAgICAgICAgICB9CiAgICAgICAgICAubW9kYWwtdG9vbGJhciAudG9vbGJhci1idXR0b24gewogICAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICAgICAgd2lkdGg6IDMycHg7CiAgICAgICAgICAgIGhlaWdodDogMzJweDsKICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgICAgICAgIGJvcmRlcjogbm9uZTsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNDUlKSIsImhzbCgwIDAlIDYwJSkiKX07CiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICAgICAgfQogICAgICAgICAgLm1vZGFsLXRvb2xiYXIgLnRvb2xiYXItYnV0dG9uOmhvdmVyIHsKICAgICAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDkwJSkiLCJoc2woMCAwJSAxNSUpIil9OwogICAgICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDIwJSkiLCJoc2woMCAwJSA5MCUpIil9OwogICAgICAgICAgfQogICAgICAgICAgLm1vZGFsLXRvb2xiYXIgLnRvb2xiYXItYnV0dG9uLmFjdGl2ZSB7CiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4NSUpIiwiaHNsKDAgMCUgMjAlKSIpfTsKICAgICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAyMCUpIiwiaHNsKDAgMCUgOTAlKSIpfTsKICAgICAgICAgIH0KICAgICAgICAgIC5tb2RhbC10b29sYmFyIC50b29sYmFyLWJ1dHRvbi5zdWNjZXNzIHsKICAgICAgICAgICAgY29sb3I6IGhzbCgxNDIuMSA3Ni4yJSAzNi4zJSk7CiAgICAgICAgICB9CiAgICAgICAgICAubW9kYWwtdG9vbGJhciAudG9vbGJhci1kaXZpZGVyIHsKICAgICAgICAgICAgd2lkdGg6IDFweDsKICAgICAgICAgICAgaGVpZ2h0OiAyMHB4OwogICAgICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgODUlKSIsImhzbCgwIDAlIDIwJSkiKX07CiAgICAgICAgICAgIG1hcmdpbjogMCA0cHg7CiAgICAgICAgICB9CiAgICAgICAgICAubW9kYWwtZWRpdG9yLXdyYXBwZXIgewogICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDE3NXB4KTsKICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgICB9CiAgICAgICAgPC9zdHlsZT4KICAgICAgICA8ZGl2IGNsYXNzPSJtb2RhbC10b29sYmFyIj4KICAgICAgICAgIDxkaXYgY2xhc3M9InRvb2xiYXItbGVmdCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9Imxhbmd1YWdlLXNlbGVjdG9yIj4KICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJsYW5ndWFnZS1idXR0b24iPgogICAgICAgICAgICAgICAgPHNwYW4+JHtXKCl9PC9zcGFuPgogICAgICAgICAgICAgICAgPGRlZXMtaWNvbiAuaWNvbj0keyJsdWNpZGU6Q2hldnJvbkRvd24ifSBpY29uU2l6ZT0iMTQiPjwvZGVlcy1pY29uPgogICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9Imxhbmd1YWdlLWRyb3Bkb3duIj4KICAgICAgICAgICAgICAgICR7dVoubWFwKGZlPT5TYAogICAgICAgICAgICAgICAgICA8ZGl2CiAgICAgICAgICAgICAgICAgICAgY2xhc3M9Imxhbmd1YWdlLW9wdGlvbiAke2ZlLmtleT09PUU/InNlbGVjdGVkIjoiIn0iCiAgICAgICAgICAgICAgICAgICAgZGF0YS1sYW5nPSIke2ZlLmtleX0iCiAgICAgICAgICAgICAgICAgID4KICAgICAgICAgICAgICAgICAgICAke2ZlLmxhYmVsfQogICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIGApfQogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0idG9vbGJhci1yaWdodCI+CiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9InRvb2xiYXItYnV0dG9uIHdyYXAtYnRuICR7Xz09PSJvbiI/ImFjdGl2ZSI6IiJ9IiB0aXRsZT0iV29yZCBXcmFwIj4KICAgICAgICAgICAgICA8ZGVlcy1pY29uIC5pY29uPSR7Imx1Y2lkZTpXcmFwVGV4dCJ9IGljb25TaXplPSIxNiI+PC9kZWVzLWljb24+CiAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJ0b29sYmFyLWJ1dHRvbiBsaW5lcy1idG4gJHtQPyJhY3RpdmUiOiIifSIgdGl0bGU9IkxpbmUgTnVtYmVycyI+CiAgICAgICAgICAgICAgPGRlZXMtaWNvbiAuaWNvbj0keyJsdWNpZGU6SGFzaCJ9IGljb25TaXplPSIxNiI+PC9kZWVzLWljb24+CiAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0b29sYmFyLWRpdmlkZXIiPjwvZGl2PgogICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJ0b29sYmFyLWJ1dHRvbiBjb3B5LWJ0biIgdGl0bGU9IkNvcHkgQ29kZSI+CiAgICAgICAgICAgICAgPGRlZXMtaWNvbiAuaWNvbj0keyJsdWNpZGU6Q29weSJ9IGljb25TaXplPSIxNiI+PC9kZWVzLWljb24+CiAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ibW9kYWwtZWRpdG9yLXdyYXBwZXIiPgogICAgICAgICAgPGRlZXMtd29ya3NwYWNlLW1vbmFjbwogICAgICAgICAgICAuY29udGVudD0ke3p9CiAgICAgICAgICAgIC5sYW5ndWFnZT0ke0V9CiAgICAgICAgICAgIC53b3JkV3JhcD0ke199CiAgICAgICAgICA+PC9kZWVzLXdvcmtzcGFjZS1tb25hY28+CiAgICAgICAgPC9kaXY+CiAgICAgIGAsbWVudU9wdGlvbnM6W3tuYW1lOiJDYW5jZWwiLGFjdGlvbjphc3luYyBmZT0+e2F3YWl0IGZlLmRlc3Ryb3koKX19LHtuYW1lOiJTYXZlICYgQ2xvc2UiLGFjdGlvbjphc3luYyBmZT0+e2lmKHk9ZmUuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiZGVlcy13b3Jrc3BhY2UtbW9uYWNvIikseSl7bGV0IFE9KGF3YWl0IHkuZWRpdG9yRGVmZXJyZWQucHJvbWlzZSkuZ2V0VmFsdWUoKTt0aGlzLnNldFZhbHVlKFEpfWF3YWl0IGZlLmRlc3Ryb3koKX19XX0pO2F3YWl0IG5ldyBQcm9taXNlKGZlPT5zZXRUaW1lb3V0KGZlLDEwMCkpLHk9VC5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCJkZWVzLXdvcmtzcGFjZS1tb25hY28iKTtsZXQgSj1ULnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoIi5tb2RhbC10b29sYmFyIik7aWYoSil7bGV0IGZlPUoucXVlcnlTZWxlY3RvcigiLmxhbmd1YWdlLWJ1dHRvbiIpO2ZlPy5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKCk9PntWPSFWLGFlKFQpfSk7bGV0IEw9Si5xdWVyeVNlbGVjdG9yQWxsKCIubGFuZ3VhZ2Utb3B0aW9uIik7TC5mb3JFYWNoKEE9PntBLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixhc3luYygpPT57bGV0IEQ9QS5kYXRhc2V0Lmxhbmc7aWYoRCYmeSl7RT1ELFY9ITE7bGV0IE89KGF3YWl0IHkuZWRpdG9yRGVmZXJyZWQucHJvbWlzZSkuZ2V0TW9kZWwoKTtPJiZ3aW5kb3cubW9uYWNvLmVkaXRvci5zZXRNb2RlbExhbmd1YWdlKE8sRCksTC5mb3JFYWNoKFk9PlkuY2xhc3NMaXN0LnJlbW92ZSgic2VsZWN0ZWQiKSksQS5jbGFzc0xpc3QuYWRkKCJzZWxlY3RlZCIpLGFlKFQpfX0pfSksSi5xdWVyeVNlbGVjdG9yKCIud3JhcC1idG4iKT8uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGFzeW5jKCk9PntfPV89PT0ib24iPyJvZmYiOiJvbiIseSYmKGF3YWl0IHkuZWRpdG9yRGVmZXJyZWQucHJvbWlzZSkudXBkYXRlT3B0aW9ucyh7d29yZFdyYXA6X30pLGFlKFQpfSksSi5xdWVyeVNlbGVjdG9yKCIubGluZXMtYnRuIik/LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixhc3luYygpPT57UD0hUCx5JiYoYXdhaXQgeS5lZGl0b3JEZWZlcnJlZC5wcm9taXNlKS51cGRhdGVPcHRpb25zKHtsaW5lTnVtYmVyczpQPyJvbiI6Im9mZiJ9KSxhZShUKX0pLEoucXVlcnlTZWxlY3RvcigiLmNvcHktYnRuIik/LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixhc3luYygpPT57aWYoeSl7bGV0IEQ9KGF3YWl0IHkuZWRpdG9yRGVmZXJyZWQucHJvbWlzZSkuZ2V0VmFsdWUoKTt0cnl7YXdhaXQgbmF2aWdhdG9yLmNsaXBib2FyZC53cml0ZVRleHQoRCksSD0hMCxhZShUKSxzZXRUaW1lb3V0KCgpPT57SD0hMSxhZShUKX0sMmUzKX1jYXRjaChSKXtjb25zb2xlLmVycm9yKCJGYWlsZWQgdG8gY29weSBjb2RlOiIsUil9fX0pLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixBPT57ViYmIWZlPy5jb250YWlucyhBLnRhcmdldCkmJihWPSExLGFlKFQpKX0se29uY2U6ITB9KX19Z2V0VmFsdWUoKXtyZXR1cm4gdGhpcy52YWx1ZX1zZXRWYWx1ZSh6KXt0aGlzLnZhbHVlPXosdGhpcy5lZGl0b3JFbGVtZW50JiYodGhpcy5lZGl0b3JFbGVtZW50LmNvbnRlbnQ9eix0aGlzLmVkaXRvckVsZW1lbnQuZWRpdG9yRGVmZXJyZWQucHJvbWlzZS50aGVuKHk9Pnt5LmdldFZhbHVlKCkhPT16JiZ5LnNldFZhbHVlKHopfSkpLHRoaXMuY2hhbmdlU3ViamVjdC5uZXh0KHRoaXMpfXN0YXRpY3tmbyhhLHIpfX07cmV0dXJuIEI9YX0pKCl9KTt2YXIgJEVyLFBFcj1sKCgpPT57U2UoKTt6YSgpO3QxKCk7R2x0KCk7JEVyPSgpPT5TYAogIDxzdHlsZT4KICAgICR7bGVgCiAgICAgIC5kZW1vLWNvbnRhaW5lciB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGdhcDogMjRweDsKICAgICAgICBwYWRkaW5nOiAyNHB4OwogICAgICAgIG1heC13aWR0aDogMTIwMHB4OwogICAgICAgIG1hcmdpbjogMCBhdXRvOwogICAgICB9CiAgICAgIAogICAgICBkZWVzLXBhbmVsIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiAyNHB4OwogICAgICB9CiAgICAgIAogICAgICBkZWVzLXBhbmVsOmxhc3QtY2hpbGQgewogICAgICAgIG1hcmdpbi1ib3R0b206IDA7CiAgICAgIH0KICAgICAgCiAgICAgIC5kZW1vLW91dHB1dCB7CiAgICAgICAgbWFyZ2luLXRvcDogMTZweDsKICAgICAgICBwYWRkaW5nOiAxMnB4OwogICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMTA1LCAyNDIsIDAuMSk7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlOwogICAgICB9CiAgICAgIAogICAgICAuZGF0ZS1ncm91cCB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBnYXA6IDE2cHg7CiAgICAgICAgZmxleC13cmFwOiB3cmFwOwogICAgICB9CiAgICBgfQogIDwvc3R5bGU+CiAgCiAgPGRpdiBjbGFzcz0iZGVtby1jb250YWluZXIiPgogICAgPGRlZXMtZGVtb3dyYXBwZXIgLnJ1bkFmdGVyUmVuZGVyPSR7YXN5bmMgZT0+e2xldCB0PWUucXVlcnlTZWxlY3RvcigiZGVlcy1pbnB1dC1kYXRlcGlja2VyIik7dCYmdC5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLHI9Pntjb25zb2xlLmxvZygiQmFzaWMgZGF0ZSBzZWxlY3RlZDoiLHIudGFyZ2V0LnZhbHVlKX0pfX0+CiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyJCYXNpYyBEYXRlIFBpY2tlciJ9IC5zdWJ0aXRsZT0keyJTaW1wbGUgZGF0ZSBzZWxlY3Rpb24gd2l0aG91dCB0aW1lIn0+CiAgICAgICAgPGRlZXMtaW5wdXQtZGF0ZXBpY2tlcgogICAgICAgICAgbGFiZWw9IlNlbGVjdCBEYXRlIgogICAgICAgICAgZGVzY3JpcHRpb249IkNob29zZSBhIGRhdGUgZnJvbSB0aGUgY2FsZW5kYXIiCiAgICAgICAgPjwvZGVlcy1pbnB1dC1kYXRlcGlja2VyPgogICAgICA8L2RlZXMtcGFuZWw+CiAgICA8L2RlZXMtZGVtb3dyYXBwZXI+CgogICAgPGRlZXMtZGVtb3dyYXBwZXIgLnJ1bkFmdGVyUmVuZGVyPSR7YXN5bmMgZT0+e2xldCB0PWUucXVlcnlTZWxlY3RvcignZGVlcy1pbnB1dC1kYXRlcGlja2VyW2xhYmVsPSJFdmVudCBEYXRlICYgVGltZSJdJykscj1lLnF1ZXJ5U2VsZWN0b3IoJ2RlZXMtaW5wdXQtZGF0ZXBpY2tlcltsYWJlbD0iQXBwb2ludG1lbnQiXScpO3QmJnQuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixhPT57bGV0IGk9YS50YXJnZXQudmFsdWU7Y29uc29sZS5sb2coIjI0aCBmb3JtYXQgZGF0ZXRpbWU6IixpKX0pLHImJnIuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixhPT57bGV0IGk9YS50YXJnZXQudmFsdWU7Y29uc29sZS5sb2coIjEyaCBmb3JtYXQgZGF0ZXRpbWU6IixpKX0pfX0+CiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyJEYXRlIGFuZCBUaW1lIFNlbGVjdGlvbiJ9IC5zdWJ0aXRsZT0keyJEYXRlIHBpY2tlcnMgd2l0aCB0aW1lIHNlbGVjdGlvbiBpbiBkaWZmZXJlbnQgZm9ybWF0cyJ9PgogICAgICAgIDxkZWVzLWlucHV0LWRhdGVwaWNrZXIKICAgICAgICAgIGxhYmVsPSJFdmVudCBEYXRlICYgVGltZSIKICAgICAgICAgIGRlc2NyaXB0aW9uPSJTZWxlY3QgYm90aCBkYXRlIGFuZCB0aW1lICgyNC1ob3VyIGZvcm1hdCkiCiAgICAgICAgICAuZW5hYmxlVGltZT0keyEwfQogICAgICAgICAgdGltZUZvcm1hdD0iMjRoIgogICAgICAgID48L2RlZXMtaW5wdXQtZGF0ZXBpY2tlcj4KICAgICAgICAKICAgICAgICA8ZGVlcy1pbnB1dC1kYXRlcGlja2VyCiAgICAgICAgICBsYWJlbD0iQXBwb2ludG1lbnQiCiAgICAgICAgICBkZXNjcmlwdGlvbj0iRGF0ZSBhbmQgdGltZSB3aXRoIEFNL1BNIHNlbGVjdG9yICgxNS1taW51dGUgaW5jcmVtZW50cykiCiAgICAgICAgICAuZW5hYmxlVGltZT0keyEwfQogICAgICAgICAgdGltZUZvcm1hdD0iMTJoIgogICAgICAgICAgLm1pbnV0ZUluY3JlbWVudD0kezE1fQogICAgICAgID48L2RlZXMtaW5wdXQtZGF0ZXBpY2tlcj4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgPC9kZWVzLWRlbW93cmFwcGVyPgoKICAgIDxkZWVzLWRlbW93cmFwcGVyIC5ydW5BZnRlclJlbmRlcj0ke2FzeW5jIGU9PntlLnF1ZXJ5U2VsZWN0b3JBbGwoImRlZXMtaW5wdXQtZGF0ZXBpY2tlciIpLmZvckVhY2gocj0+e3IuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixhPT57bGV0IGk9YS50YXJnZXQ7Y29uc29sZS5sb2coYCR7aS5sYWJlbH0gdmFsdWU6YCxpLnZhbHVlKTtsZXQgbz1pLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoIi5kYXRlLWlucHV0Iik7byYmY29uc29sZS5sb2coYCR7aS5sYWJlbH0gZm9ybWF0dGVkOmAsby52YWx1ZSl9KX0pfX0+CiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyJUaW1lem9uZSBTdXBwb3J0In0gLnN1YnRpdGxlPSR7IkRhdGUgYW5kIHRpbWUgc2VsZWN0aW9uIHdpdGggdGltZXpvbmUgYXdhcmVuZXNzIn0+CiAgICAgICAgPGRlZXMtaW5wdXQtZGF0ZXBpY2tlcgogICAgICAgICAgbGFiZWw9Ik1lZXRpbmcgVGltZSAod2l0aCBUaW1lem9uZSkiCiAgICAgICAgICBkZXNjcmlwdGlvbj0iU2VsZWN0IGEgZGF0ZS90aW1lIGFuZCB0aW1lem9uZSBmb3IgdGhlIG1lZXRpbmciCiAgICAgICAgICAuZW5hYmxlVGltZT0keyEwfQogICAgICAgICAgLmVuYWJsZVRpbWV6b25lPSR7ITB9CiAgICAgICAgICB0aW1lRm9ybWF0PSIyNGgiCiAgICAgICAgICB0aW1lem9uZT0iQW1lcmljYS9OZXdfWW9yayIKICAgICAgICA+PC9kZWVzLWlucHV0LWRhdGVwaWNrZXI+CiAgICAgICAgCiAgICAgICAgPGRlZXMtaW5wdXQtZGF0ZXBpY2tlcgogICAgICAgICAgbGFiZWw9Ikdsb2JhbCBFdmVudCBTY2hlZHVsZSIKICAgICAgICAgIGRlc2NyaXB0aW9uPSJTY2hlZHVsZSBhbiBldmVudCBhY3Jvc3MgZGlmZmVyZW50IHRpbWV6b25lcyIKICAgICAgICAgIC5lbmFibGVUaW1lPSR7ITB9CiAgICAgICAgICAuZW5hYmxlVGltZXpvbmU9JHshMH0KICAgICAgICAgIHRpbWVGb3JtYXQ9IjEyaCIKICAgICAgICAgIHRpbWV6b25lPSJFdXJvcGUvTG9uZG9uIgogICAgICAgICAgLm1pbnV0ZUluY3JlbWVudD0kezMwfQogICAgICAgID48L2RlZXMtaW5wdXQtZGF0ZXBpY2tlcj4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgPC9kZWVzLWRlbW93cmFwcGVyPgoKICAgIDxkZWVzLWRlbW93cmFwcGVyIC5ydW5BZnRlclJlbmRlcj0ke2FzeW5jIGU9PntsZXQgdD1lLnF1ZXJ5U2VsZWN0b3IoImRlZXMtaW5wdXQtZGF0ZXBpY2tlciIpO3QmJnQuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixyPT57bGV0IGE9ci50YXJnZXQudmFsdWU7aWYoYSl7bGV0IGk9bmV3IERhdGUoYSksbz1uZXcgRGF0ZSxuPU1hdGguZmxvb3IoKGkuZ2V0VGltZSgpLW8uZ2V0VGltZSgpKS8oMWUzKjYwKjYwKjI0KSk7Y29uc29sZS5sb2coYFNlbGVjdGVkIGRhdGUgaXMgJHtufSBkYXlzIGZyb20gdG9kYXlgKX19KX19PgogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiRGF0ZSBSYW5nZSBDb25zdHJhaW50cyJ9IC5zdWJ0aXRsZT0keyJMaW1pdCBzZWxlY3RhYmxlIGRhdGVzIHdpdGggbWluIGFuZCBtYXggdmFsdWVzIn0+CiAgICAgICAgPGRlZXMtaW5wdXQtZGF0ZXBpY2tlcgogICAgICAgICAgbGFiZWw9IkZ1dHVyZSBEYXRlIE9ubHkiCiAgICAgICAgICBkZXNjcmlwdGlvbj0iQ2FuIG9ubHkgc2VsZWN0IGRhdGVzIGZyb20gdG9kYXkgdG8gOTAgZGF5cyBpbiB0aGUgZnV0dXJlIgogICAgICAgICAgLm1pbkRhdGU9JHtuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCl9CiAgICAgICAgICAubWF4RGF0ZT0ke25ldyBEYXRlKERhdGUubm93KCkrMjE2MCo2MCo2MCoxZTMpLnRvSVNPU3RyaW5nKCl9CiAgICAgICAgPjwvZGVlcy1pbnB1dC1kYXRlcGlja2VyPgogICAgICA8L2RlZXMtcGFuZWw+CiAgICA8L2RlZXMtZGVtb3dyYXBwZXI+CgogICAgPGRlZXMtZGVtb3dyYXBwZXIgLnJ1bkFmdGVyUmVuZGVyPSR7YXN5bmMgZT0+e2xldCB0PXsiREQvTU0vWVlZWSI6IkV1cm9wZWFuIiwiTU0vREQvWVlZWSI6IlVTIiwiWVlZWS1NTS1ERCI6IklTTyJ9O2UucXVlcnlTZWxlY3RvckFsbCgiZGVlcy1pbnB1dC1kYXRlcGlja2VyIikuZm9yRWFjaChhPT57YS5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGk9PntsZXQgbz1pLnRhcmdldCxuPW8uc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiLmRhdGUtaW5wdXQiKTtuJiZjb25zb2xlLmxvZyhgJHtvLmxhYmVsfSBmb3JtYXQ6YCxuLnZhbHVlKX0pfSl9fT4KICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IkRhdGUgRm9ybWF0cyJ9IC5zdWJ0aXRsZT0keyJEaWZmZXJlbnQgZGF0ZSBkaXNwbGF5IGZvcm1hdHMgZm9yIHZhcmlvdXMgcmVnaW9ucyJ9PgogICAgICAgIDxkaXYgY2xhc3M9ImRhdGUtZ3JvdXAiPgogICAgICAgICAgPGRlZXMtaW5wdXQtZGF0ZXBpY2tlcgogICAgICAgICAgICBsYWJlbD0iRXVyb3BlYW4gRm9ybWF0IgogICAgICAgICAgICBkYXRlRm9ybWF0PSJERC9NTS9ZWVlZIgogICAgICAgICAgICAudmFsdWU9JHtuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCl9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LWRhdGVwaWNrZXI+CiAgICAgICAgICAKICAgICAgICAgIDxkZWVzLWlucHV0LWRhdGVwaWNrZXIKICAgICAgICAgICAgbGFiZWw9IlVTIEZvcm1hdCIKICAgICAgICAgICAgZGF0ZUZvcm1hdD0iTU0vREQvWVlZWSIKICAgICAgICAgICAgLnZhbHVlPSR7bmV3IERhdGUoKS50b0lTT1N0cmluZygpfQogICAgICAgICAgPjwvZGVlcy1pbnB1dC1kYXRlcGlja2VyPgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1pbnB1dC1kYXRlcGlja2VyCiAgICAgICAgICAgIGxhYmVsPSJJU08gRm9ybWF0IgogICAgICAgICAgICBkYXRlRm9ybWF0PSJZWVlZLU1NLUREIgogICAgICAgICAgICAudmFsdWU9JHtuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCl9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LWRhdGVwaWNrZXI+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgIDwvZGVlcy1kZW1vd3JhcHBlcj4KCiAgICA8ZGVlcy1kZW1vd3JhcHBlciAucnVuQWZ0ZXJSZW5kZXI9JHthc3luYyBlPT57bGV0IHQ9ZS5xdWVyeVNlbGVjdG9yKCJkZWVzLWlucHV0LWRhdGVwaWNrZXJbcmVxdWlyZWRdIik7dCYmdC5hZGRFdmVudExpc3RlbmVyKCJibHVyIiwoKT0+e3QuZ2V0VmFsdWUoKXx8Y29uc29sZS5sb2coIlJlcXVpcmVkIGRhdGUgZmllbGQgaXMgZW1wdHkiKX0pfX0+CiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyJGb3JtIFN0YXRlcyJ9IC5zdWJ0aXRsZT0keyJSZXF1aXJlZCBhbmQgZGlzYWJsZWQgc3RhdGVzIn0+CiAgICAgICAgPGRlZXMtaW5wdXQtZGF0ZXBpY2tlcgogICAgICAgICAgbGFiZWw9IkJpcnRoIERhdGUiCiAgICAgICAgICBkZXNjcmlwdGlvbj0iVGhpcyBmaWVsZCBpcyByZXF1aXJlZCIKICAgICAgICAgIC5yZXF1aXJlZD0keyEwfQogICAgICAgICAgcGxhY2Vob2xkZXI9IlNlbGVjdCB5b3VyIGJpcnRoIGRhdGUiCiAgICAgICAgPjwvZGVlcy1pbnB1dC1kYXRlcGlja2VyPgogICAgICAgIAogICAgICAgIDxkZWVzLWlucHV0LWRhdGVwaWNrZXIKICAgICAgICAgIGxhYmVsPSJEaXNhYmxlZCBEYXRlIgogICAgICAgICAgZGVzY3JpcHRpb249IlRoaXMgZmllbGQgY2Fubm90IGJlIGVkaXRlZCIKICAgICAgICAgIC5kaXNhYmxlZD0keyEwfQogICAgICAgICAgLnZhbHVlPSR7bmV3IERhdGUoKS50b0lTT1N0cmluZygpfQogICAgICAgID48L2RlZXMtaW5wdXQtZGF0ZXBpY2tlcj4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgPC9kZWVzLWRlbW93cmFwcGVyPgoKICAgIDxkZWVzLWRlbW93cmFwcGVyIC5ydW5BZnRlclJlbmRlcj0ke2FzeW5jIGU9PntsZXQgdD1lLnF1ZXJ5U2VsZWN0b3IoJ2RlZXMtaW5wdXQtZGF0ZXBpY2tlcltsYWJlbD0iVVMgQ2FsZW5kYXIiXScpLHI9ZS5xdWVyeVNlbGVjdG9yKCdkZWVzLWlucHV0LWRhdGVwaWNrZXJbbGFiZWw9IkVVIENhbGVuZGFyIl0nKTt0JiZjb25zb2xlLmxvZygiVVMgQ2FsZW5kYXIgc3RhcnRzIG9uIFN1bmRheSAoMCkiKSxyJiZjb25zb2xlLmxvZygiRVUgQ2FsZW5kYXIgc3RhcnRzIG9uIE1vbmRheSAoMSkiKX19PgogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiQ2FsZW5kYXIgQ3VzdG9taXphdGlvbiJ9IC5zdWJ0aXRsZT0keyJEaWZmZXJlbnQgd2VlayBzdGFydCBkYXlzIGZvciB2YXJpb3VzIHJlZ2lvbnMifT4KICAgICAgICA8ZGl2IGNsYXNzPSJkYXRlLWdyb3VwIj4KICAgICAgICAgIDxkZWVzLWlucHV0LWRhdGVwaWNrZXIKICAgICAgICAgICAgbGFiZWw9IlVTIENhbGVuZGFyIgogICAgICAgICAgICBkZXNjcmlwdGlvbj0iV2VlayBzdGFydHMgb24gU3VuZGF5IgogICAgICAgICAgICAud2Vla1N0YXJ0c09uPSR7MH0KICAgICAgICAgID48L2RlZXMtaW5wdXQtZGF0ZXBpY2tlcj4KICAgICAgICAgIAogICAgICAgICAgPGRlZXMtaW5wdXQtZGF0ZXBpY2tlcgogICAgICAgICAgICBsYWJlbD0iRVUgQ2FsZW5kYXIiCiAgICAgICAgICAgIGRlc2NyaXB0aW9uPSJXZWVrIHN0YXJ0cyBvbiBNb25kYXkiCiAgICAgICAgICAgIC53ZWVrU3RhcnRzT249JHsxfQogICAgICAgICAgPjwvZGVlcy1pbnB1dC1kYXRlcGlja2VyPgogICAgICAgIDwvZGl2PgogICAgICA8L2RlZXMtcGFuZWw+CiAgICA8L2RlZXMtZGVtb3dyYXBwZXI+CgogICAgPGRlZXMtZGVtb3dyYXBwZXIgLnJ1bkFmdGVyUmVuZGVyPSR7YXN5bmMgZT0+e2xldCB0PSgpPT57bGV0IGE9W10saT1uZXcgRGF0ZSxvPWkuZ2V0RnVsbFllYXIoKSxuPWkuZ2V0TW9udGgoKSxzPW5ldyBEYXRlKG8sbiwxKTtmb3IoO3MuZ2V0TW9udGgoKT09PW47KShzLmdldERheSgpPT09MHx8cy5nZXREYXkoKT09PTYpJiZhLnB1c2gobmV3IERhdGUocykudG9JU09TdHJpbmcoKSkscy5zZXREYXRlKHMuZ2V0RGF0ZSgpKzEpO3JldHVybiBhfSxyPWUucXVlcnlTZWxlY3RvcigiZGVlcy1pbnB1dC1kYXRlcGlja2VyIik7ciYmKHIuZGlzYWJsZWREYXRlcz10KCksY29uc29sZS5sb2coIkRpc2FibGVkIHdlZWtlbmQgZGF0ZXMgZm9yIGN1cnJlbnQgbW9udGgiKSl9fT4KICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IkRpc2FibGVkIERhdGVzIn0gLnN1YnRpdGxlPSR7IkNhbGVuZGFyIHdpdGggc3BlY2lmaWMgZGF0ZXMgZGlzYWJsZWQgKHdlZWtlbmRzIGluIGN1cnJlbnQgbW9udGgpIn0+CiAgICAgICAgPGRlZXMtaW5wdXQtZGF0ZXBpY2tlcgogICAgICAgICAgbGFiZWw9IkF2YWlsYWJpbGl0eSBDYWxlbmRhciIKICAgICAgICAgIGRlc2NyaXB0aW9uPSJXZWVrZW5kcyBhcmUgZGlzYWJsZWQgZm9yIHRoZSBjdXJyZW50IG1vbnRoIgogICAgICAgID48L2RlZXMtaW5wdXQtZGF0ZXBpY2tlcj4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgPC9kZWVzLWRlbW93cmFwcGVyPgoKICAgIDxkZWVzLWRlbW93cmFwcGVyIC5ydW5BZnRlclJlbmRlcj0ke2FzeW5jIGU9PntsZXQgdD1uZXcgRGF0ZSxyPXQuZ2V0TW9udGgoKSxhPXQuZ2V0RnVsbFllYXIoKSxpPVt7ZGF0ZTpgJHthfS0keyhyKzEpLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwiMCIpfS0ke3QuZ2V0RGF0ZSgpLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwiMCIpfWAsdGl0bGU6IlRlYW0gTWVldGluZyIsdHlwZToiaW5mbyIsY291bnQ6Mn0se2RhdGU6YCR7YX0tJHsocisxKS50b1N0cmluZygpLnBhZFN0YXJ0KDIsIjAiKX0tJHsodC5nZXREYXRlKCkrMSkudG9TdHJpbmcoKS5wYWRTdGFydCgyLCIwIil9YCx0aXRsZToiUHJvamVjdCBEZWFkbGluZSIsdHlwZToid2FybmluZyJ9LHtkYXRlOmAke2F9LSR7KHIrMSkudG9TdHJpbmcoKS5wYWRTdGFydCgyLCIwIil9LSR7KHQuZ2V0RGF0ZSgpKzIpLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwiMCIpfWAsdGl0bGU6IlJlbGVhc2UgRGF5Iix0eXBlOiJzdWNjZXNzIn0se2RhdGU6YCR7YX0tJHsocisxKS50b1N0cmluZygpLnBhZFN0YXJ0KDIsIjAiKX0tJHsodC5nZXREYXRlKCkrNSkudG9TdHJpbmcoKS5wYWRTdGFydCgyLCIwIil9YCx0aXRsZToiVXJnZW50IEZpeCBSZXF1aXJlZCIsdHlwZToiZXJyb3IifSx7ZGF0ZTpgJHthfS0keyhyKzEpLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwiMCIpfS0keyh0LmdldERhdGUoKSs3KS50b1N0cmluZygpLnBhZFN0YXJ0KDIsIjAiKX1gLHRpdGxlOiJNdWx0aXBsZSBFdmVudHMgVG9kYXkiLHR5cGU6ImluZm8iLGNvdW50OjV9LHtkYXRlOmAke2F9LSR7KHIrMikudG9TdHJpbmcoKS5wYWRTdGFydCgyLCIwIil9LTE1YCx0aXRsZToiRnV0dXJlIFBsYW5uaW5nIFNlc3Npb24iLHR5cGU6ImluZm8ifV0sbz1lLnF1ZXJ5U2VsZWN0b3IoImRlZXMtaW5wdXQtZGF0ZXBpY2tlciIpO28mJihvLmV2ZW50cz1pLGNvbnNvbGUubG9nKCJDYWxlbmRhciBldmVudHMgbG9hZGVkOiIsaSkpfX0+CiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyJDYWxlbmRhciB3aXRoIEV2ZW50cyJ9IC5zdWJ0aXRsZT0keyJWaXN1YWwgZmVlZGJhY2sgZm9yIHNjaGVkdWxlZCBldmVudHMifT4KICAgICAgICA8ZGVlcy1pbnB1dC1kYXRlcGlja2VyCiAgICAgICAgICBsYWJlbD0iRXZlbnQgQ2FsZW5kYXIiCiAgICAgICAgICBkZXNjcmlwdGlvbj0iRGF5cyB3aXRoIGNvbG9yZWQgZG90cyBoYXZlIGV2ZW50cy4gSG92ZXIgdG8gc2VlIGRldGFpbHMuIgogICAgICAgID48L2RlZXMtaW5wdXQtZGF0ZXBpY2tlcj4KICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJkZW1vLW91dHB1dCIgc3R5bGU9Im1hcmdpbi10b3A6IDE2cHg7Ij4KICAgICAgICAgIDxzdHJvbmc+RXZlbnQgTGVnZW5kOjwvc3Ryb25nPjxicj4KICAgICAgICAgIDxzcGFuIHN0eWxlPSJjb2xvcjogIzA5NjlkYTsiPuKXjyBJbmZvPC9zcGFuPiB8IAogICAgICAgICAgPHNwYW4gc3R5bGU9ImNvbG9yOiAjZDI5OTIyOyI+4pePIFdhcm5pbmc8L3NwYW4+IHwgCiAgICAgICAgICA8c3BhbiBzdHlsZT0iY29sb3I6ICMyZWEwNDM7Ij7il48gU3VjY2Vzczwvc3Bhbj4gfCAKICAgICAgICAgIDxzcGFuIHN0eWxlPSJjb2xvcjogI2NmMjIyZTsiPuKXjyBFcnJvcjwvc3Bhbj48YnI+CiAgICAgICAgICA8ZW0+RGF5cyB3aXRoIG1vcmUgdGhhbiAzIGV2ZW50cyBzaG93IGEgY291bnQgYmFkZ2U8L2VtPgogICAgICAgIDwvZGl2PgogICAgICA8L2RlZXMtcGFuZWw+CiAgICA8L2RlZXMtZGVtb3dyYXBwZXI+CgogICAgPGRlZXMtZGVtb3dyYXBwZXIgLnJ1bkFmdGVyUmVuZGVyPSR7YXN5bmMgZT0+e2xldCB0PWUucXVlcnlTZWxlY3RvcigiZGVlcy1pbnB1dC1kYXRlcGlja2VyIikscj1lLnF1ZXJ5U2VsZWN0b3IoIiNldmVudC1vdXRwdXQiKTt0JiZyJiYodC5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGE9PntsZXQgaT1hLnRhcmdldCxvPWkudmFsdWU7aWYobyl7bGV0IG49bmV3IERhdGUobyksYz1pLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoIi5kYXRlLWlucHV0Iik/LnZhbHVlfHwiTi9BIjtyLmlubmVySFRNTD1gCiAgICAgICAgICAgICAgPHN0cm9uZz5FdmVudCB0cmlnZ2VyZWQhPC9zdHJvbmc+PGJyPgogICAgICAgICAgICAgIElTTyBWYWx1ZTogJHtvfTxicj4KICAgICAgICAgICAgICBGb3JtYXR0ZWQ6ICR7Y308YnI+CiAgICAgICAgICAgICAgRGF0ZSBvYmplY3Q6ICR7bi50b0xvY2FsZVN0cmluZygpfQogICAgICAgICAgICBgfWVsc2Ugci5pbm5lckhUTUw9IjxlbT5EYXRlIGNsZWFyZWQ8L2VtPiJ9KSx0LmFkZEV2ZW50TGlzdGVuZXIoImJsdXIiLCgpPT57Y29uc29sZS5sb2coIkRhdGVwaWNrZXIgbG9zdCBmb2N1cyIpfSkpfX0+CiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyJFdmVudCBIYW5kbGluZyJ9IC5zdWJ0aXRsZT0keyJJbnRlcmFjdGl2ZSBkZW1vbnN0cmF0aW9uIG9mIGNoYW5nZSBldmVudHMifT4KICAgICAgICA8ZGVlcy1pbnB1dC1kYXRlcGlja2VyCiAgICAgICAgICBsYWJlbD0iRXZlbnQgRGVtbyIKICAgICAgICAgIGRlc2NyaXB0aW9uPSJTZWxlY3QgYSBkYXRlIHRvIHNlZSB0aGUgZXZlbnQgZGV0YWlscyIKICAgICAgICA+PC9kZWVzLWlucHV0LWRhdGVwaWNrZXI+CiAgICAgICAgCiAgICAgICAgPGRpdiBpZD0iZXZlbnQtb3V0cHV0IiBjbGFzcz0iZGVtby1vdXRwdXQiPgogICAgICAgICAgPGVtPlNlbGVjdCBhIGRhdGUgdG8gc2VlIGV2ZW50IGRldGFpbHMuLi48L2VtPgogICAgICAgIDwvZGl2PgogICAgICA8L2RlZXMtcGFuZWw+CiAgICA8L2RlZXMtZGVtb3dyYXBwZXI+CiAgPC9kaXY+CmB9KTt2YXIgSUVyLE5Fcj1sKCgpPT57U2UoKTtQYSgpO0lFcj1bLi4uaHQuYmFzZVN0eWxlcyxtLmRlZmF1bHRTdHlsZXMsbGVgCiAgICAgIDpob3N0IHsKICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgIH0KCiAgICAgIC5pbnB1dC1jb250YWluZXIgewogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgfQoKICAgICAgLmRhdGUtaW5wdXQgewogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGhlaWdodDogNDBweDsKICAgICAgICBwYWRkaW5nOiAwIDEycHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDEwMCUpIiwiaHNsKDIyNCA3MS40JSA0LjElKSIpfTsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDIxNC4zIDMxLjglIDkxLjQlKSIsImhzbCgyMTcuMiAzMi42JSAxNy41JSkiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBsaW5lLWhlaWdodDogMS41OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIyNCA3MS40JSA0LjElKSIsImhzbCgyMTAgMjAlIDk4JSkiKX07CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7CiAgICAgICAgb3V0bGluZTogbm9uZTsKICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDsKICAgICAgfQoKICAgICAgLmRhdGUtaW5wdXQ6OnBsYWNlaG9sZGVyIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMjAgOC45JSA0Ni4xJSkiLCJoc2woMjE1IDIwLjIlIDY1LjElKSIpfTsKICAgICAgfQoKICAgICAgLmRhdGUtaW5wdXQ6aG92ZXI6bm90KDpkaXNhYmxlZCkgewogICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTQuMyAzMS44JSA5MS40JSkiLCJoc2woMjE3LjIgMzIuNiUgMTcuNSUpIil9OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjEwIDIwJSA5OCUpIiwiaHNsKDIxNSAyNy45JSAxNi45JSkiKX07CiAgICAgIH0KCiAgICAgIC5kYXRlLWlucHV0OmZvY3VzLAogICAgICAuZGF0ZS1pbnB1dC5vcGVuIHsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjIyLjIgNDcuNCUgMTEuMiUpIiwiaHNsKDIxMCAyMCUgOTglKSIpfTsKICAgICAgICBvdXRsaW5lOiAycHggc29saWQgdHJhbnNwYXJlbnQ7CiAgICAgICAgb3V0bGluZS1vZmZzZXQ6IDJweDsKICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAycHggJHttLmJkVGhlbWUoImhzbCgwIDAlIDEwMCUpIiwiaHNsKDIyNCA3MS40JSA0LjElKSIpfSwKICAgICAgICAgICAgICAgICAgICAwIDAgMCA0cHggJHttLmJkVGhlbWUoImhzbCgyMjIuMiA0Ny40JSAxMS4yJSAvIDAuMSkiLCJoc2woMjEwIDIwJSA5OCUgLyAwLjEpIil9OwogICAgICB9CgogICAgICAuZGF0ZS1pbnB1dDpkaXNhYmxlZCB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTAgMjAlIDk4JSkiLCJoc2woMjE1IDI3LjklIDE2LjklKSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMjAgOC45JSA0Ni4xJSkiLCJoc2woMjE1IDIwLjIlIDY1LjElKSIpfTsKICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOwogICAgICAgIG9wYWNpdHk6IDAuNTsKICAgICAgfQoKICAgICAgLyogSWNvbiBjb250YWluZXIgdXNpbmcgZmxleGJveCBmb3IgYmV0dGVyIHBvc2l0aW9uaW5nICovCiAgICAgIC5pY29uLWNvbnRhaW5lciB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHJpZ2h0OiAwOwogICAgICAgIHRvcDogMDsKICAgICAgICBib3R0b206IDA7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogNHB4OwogICAgICAgIHBhZGRpbmc6IDAgMTJweDsKICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAgICAgfQoKICAgICAgLmljb24tY29udGFpbmVyID4gKiB7CiAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87CiAgICAgIH0KCiAgICAgIC5jYWxlbmRhci1pY29uIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMjAgOC45JSA0Ni4xJSkiLCJoc2woMjE1IDIwLjIlIDY1LjElKSIpfTsKICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgIH0KCiAgICAgIC5jbGVhci1idXR0b24gewogICAgICAgIHdpZHRoOiAyMHB4OwogICAgICAgIGhlaWdodDogMjBweDsKICAgICAgICBib3JkZXI6IG5vbmU7CiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjIwIDguOSUgNDYuMSUpIiwiaHNsKDIxNSAyMC4yJSA2NS4xJSkiKX07CiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlOwogICAgICAgIHBhZGRpbmc6IDA7CiAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgIH0KCiAgICAgIC5jbGVhci1idXR0b246aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjEwIDIwJSA5OCUpIiwiaHNsKDIxNSAyNy45JSAxNi45JSkiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjI0IDcxLjQlIDQuMSUpIiwiaHNsKDIxMCAyMCUgOTglKSIpfTsKICAgICAgfQoKICAgICAgLmNsZWFyLWJ1dHRvbjpkaXNhYmxlZCB7CiAgICAgICAgZGlzcGxheTogbm9uZTsKICAgICAgfQoKICAgICAgLyogQ2FsZW5kYXIgUG9wdXAgU3R5bGVzICovCiAgICAgIC5jYWxlbmRhci1wb3B1cCB7CiAgICAgICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybSwgb3BhY2l0eTsKICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlOwogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00cHgpOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAxMDAlKSIsImhzbCgyMjQgNzEuNCUgNC4xJSkiKX07CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgyMTQuMyAzMS44JSA5MS40JSkiLCJoc2woMjE3LjIgMzIuNiUgMTcuNSUpIil9OwogICAgICAgIGJveC1zaGFkb3c6ICR7bS5iZFRoZW1lKCIwIDEwcHggMTVweCAtM3B4IGhzbCgwIDAlIDAlIC8gMC4xKSwgMCA0cHggNnB4IC00cHggaHNsKDAgMCUgMCUgLyAwLjEpIiwiMCAxMHB4IDE1cHggLTNweCBoc2woMCAwJSAwJSAvIDAuMiksIDAgNHB4IDZweCAtNHB4IGhzbCgwIDAlIDAlIC8gMC4yKSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgcGFkZGluZzogMTJweDsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgICAgbWFyZ2luLXRvcDogNHB4OwogICAgICAgIHotaW5kZXg6IDUwOwogICAgICAgIGxlZnQ6IDA7CiAgICAgICAgbWluLXdpZHRoOiAyODBweDsKICAgICAgfQoKICAgICAgLmNhbGVuZGFyLXBvcHVwLnRvcCB7CiAgICAgICAgYm90dG9tOiBjYWxjKDEwMCUgKyA0cHgpOwogICAgICAgIHRvcDogYXV0bzsKICAgICAgICBtYXJnaW4tdG9wOiAwOwogICAgICAgIG1hcmdpbi1ib3R0b206IDRweDsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNHB4KTsKICAgICAgfQoKICAgICAgLmNhbGVuZGFyLXBvcHVwLmJvdHRvbSB7CiAgICAgICAgdG9wOiAxMDAlOwogICAgICB9CgogICAgICAuY2FsZW5kYXItcG9wdXAuc2hvdyB7CiAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgfQoKICAgICAgLyogQ2FsZW5kYXIgSGVhZGVyICovCiAgICAgIC5jYWxlbmRhci1oZWFkZXIgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDsKICAgICAgICBnYXA6IDhweDsKICAgICAgfQoKICAgICAgLm1vbnRoLXllYXItZGlzcGxheSB7CiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjI0IDcxLjQlIDQuMSUpIiwiaHNsKDIxMCAyMCUgOTglKSIpfTsKICAgICAgICBmbGV4OiAxOwogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgfQoKICAgICAgLm5hdi1idXR0b24gewogICAgICAgIHdpZHRoOiAyOHB4OwogICAgICAgIGhlaWdodDogMjhweDsKICAgICAgICBib3JkZXI6IG5vbmU7CiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjIwIDguOSUgNDYuMSUpIiwiaHNsKDIxNSAyMC4yJSA2NS4xJSkiKX07CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTsKICAgICAgfQoKICAgICAgLm5hdi1idXR0b246aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjEwIDIwJSA5OCUpIiwiaHNsKDIxNSAyNy45JSAxNi45JSkiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjI0IDcxLjQlIDQuMSUpIiwiaHNsKDIxMCAyMCUgOTglKSIpfTsKICAgICAgfQoKICAgICAgLm5hdi1idXR0b246YWN0aXZlIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDIxNC4zIDMxLjglIDkxLjQlKSIsImhzbCgyMTcuMiAzMi42JSAxNy41JSkiKX07CiAgICAgIH0KCiAgICAgIC8qIFdlZWtkYXkgaGVhZGVycyAqLwogICAgICAud2Vla2RheXMgewogICAgICAgIGRpc3BsYXk6IGdyaWQ7CiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNywgMWZyKTsKICAgICAgICBnYXA6IDA7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4OwogICAgICB9CgogICAgICAud2Vla2RheSB7CiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICBmb250LXdlaWdodDogNDAwOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIyMCA4LjklIDQ2LjElKSIsImhzbCgyMTUgMjAuMiUgNjUuMSUpIil9OwogICAgICAgIHBhZGRpbmc6IDAgMCA4cHggMDsKICAgICAgfQoKICAgICAgLyogRGF5cyBncmlkICovCiAgICAgIC5kYXlzLWdyaWQgewogICAgICAgIGRpc3BsYXk6IGdyaWQ7CiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNywgMWZyKTsKICAgICAgICBnYXA6IDJweDsKICAgICAgfQoKICAgICAgLmRheSB7CiAgICAgICAgYXNwZWN0LXJhdGlvOiAxOwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIyNCA3MS40JSA0LjElKSIsImhzbCgyMTAgMjAlIDk4JSkiKX07CiAgICAgICAgYm9yZGVyOiBub25lOwogICAgICAgIHdpZHRoOiAzNnB4OwogICAgICAgIGhlaWdodDogMzZweDsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgfQoKICAgICAgLmRheTpob3Zlcjpub3QoLmRpc2FibGVkKSB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTAgMjAlIDk4JSkiLCJoc2woMjE1IDI3LjklIDE2LjklKSIpfTsKICAgICAgfQoKICAgICAgLmRheS5vdGhlci1tb250aCB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjIwIDguOSUgNDYuMSUpIiwiaHNsKDIxNSAyMC4yJSA2NS4xJSkiKX07CiAgICAgICAgb3BhY2l0eTogMC41OwogICAgICB9CgogICAgICAuZGF5LnRvZGF5IHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDIxMCAyMCUgOTglKSIsImhzbCgyMTUgMjcuOSUgMTYuOSUpIil9OwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgIH0KCiAgICAgIC5kYXkuc2VsZWN0ZWQgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjIyLjIgNDcuNCUgMTEuMiUpIiwiaHNsKDIxMCAyMCUgOTglKSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTAgMjAlIDk4JSkiLCJoc2woMjIyLjIgNDcuNCUgMTEuMiUpIil9OwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgIH0KCiAgICAgIC5kYXkuZGlzYWJsZWQgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIyMCA4LjklIDQ2LjElKSIsImhzbCgyMTUgMjAuMiUgNjUuMSUpIil9OwogICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7CiAgICAgICAgb3BhY2l0eTogMC4zOwogICAgICB9CgogICAgICAvKiBFdmVudCBpbmRpY2F0b3JzICovCiAgICAgIC5kYXkuaGFzLWV2ZW50IHsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgIH0KCiAgICAgIC5ldmVudC1pbmRpY2F0b3IgewogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICBib3R0b206IDRweDsKICAgICAgICBsZWZ0OiA1MCU7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZ2FwOiAycHg7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgIH0KCiAgICAgIC5ldmVudC1kb3QgewogICAgICAgIHdpZHRoOiA0cHg7CiAgICAgICAgaGVpZ2h0OiA0cHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjIwIDguOSUgNDYuMSUpIiwiaHNsKDIxNSAyMC4yJSA2NS4xJSkiKX07CiAgICAgIH0KCiAgICAgIC5ldmVudC1kb3QuaW5mbyB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTEgNzAlIDUyJSkiLCJoc2woMjExIDcwJSA2MiUpIil9OwogICAgICB9CgogICAgICAuZXZlbnQtZG90Lndhcm5pbmcgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woNDUgOTAlIDQ1JSkiLCJoc2woNDUgOTAlIDU1JSkiKX07CiAgICAgIH0KCiAgICAgIC5ldmVudC1kb3Quc3VjY2VzcyB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgxNDIgNjklIDQ1JSkiLCJoc2woMTQyIDY5JSA1NSUpIil9OwogICAgICB9CgogICAgICAuZXZlbnQtZG90LmVycm9yIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgNzIlIDUxJSkiLCJoc2woMCA3MiUgNjElKSIpfTsKICAgICAgfQoKICAgICAgLmV2ZW50LWNvdW50IHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgdG9wOiAycHg7CiAgICAgICAgcmlnaHQ6IDJweDsKICAgICAgICBtaW4td2lkdGg6IDE2cHg7CiAgICAgICAgaGVpZ2h0OiAxNnB4OwogICAgICAgIHBhZGRpbmc6IDAgNHB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCA3MiUgNTElKSIsImhzbCgwIDcyJSA2MSUpIil9OwogICAgICAgIGNvbG9yOiB3aGl0ZTsKICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7CiAgICAgICAgZm9udC1zaXplOiAxMHB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIGxpbmUtaGVpZ2h0OiAxOwogICAgICB9CgogICAgICAvKiBUb29sdGlwIGZvciBldmVudCBkZXRhaWxzICovCiAgICAgIC5ldmVudC10b29sdGlwIHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgYm90dG9tOiBjYWxjKDEwMCUgKyA4cHgpOwogICAgICAgIGxlZnQ6IDUwJTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDIwJSkiLCJoc2woMCAwJSA5MCUpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTAwJSkiLCJoc2woMCAwJSAwJSkiKX07CiAgICAgICAgcGFkZGluZzogOHB4IDEycHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7CiAgICAgICAgei1pbmRleDogMTA7CiAgICAgICAgYm94LXNoYWRvdzogMCAycHggOHB4IHJnYmEoMCwgMCwgMCwgMC4yKTsKICAgICAgfQoKICAgICAgLmV2ZW50LXRvb2x0aXA6OmFmdGVyIHsKICAgICAgICBjb250ZW50OiAnJzsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgdG9wOiAxMDAlOwogICAgICAgIGxlZnQ6IDUwJTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7CiAgICAgICAgYm9yZGVyOiA0cHggc29saWQgdHJhbnNwYXJlbnQ7CiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDIwJSkiLCJoc2woMCAwJSA5MCUpIil9OwogICAgICB9CgogICAgICAuZGF5Lmhhcy1ldmVudDpob3ZlciAuZXZlbnQtdG9vbHRpcCB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgfQoKICAgICAgLyogVGltZSBzZWxlY3RvciAqLwogICAgICAudGltZS1zZWxlY3RvciB7CiAgICAgICAgbWFyZ2luLXRvcDogMTJweDsKICAgICAgICBwYWRkaW5nLXRvcDogMTJweDsKICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgyMTQuMyAzMS44JSA5MS40JSkiLCJoc2woMjE3LjIgMzIuNiUgMTcuNSUpIil9OwogICAgICB9CgogICAgICAudGltZS1zZWxlY3Rvci10aXRsZSB7CiAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIyMCA4LjklIDQ2LjElKSIsImhzbCgyMTUgMjAuMiUgNjUuMSUpIil9OwogICAgICB9CgogICAgICAudGltZS1pbnB1dHMgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZ2FwOiA4cHg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgfQoKICAgICAgLnRpbWUtaW5wdXQgewogICAgICAgIHdpZHRoOiA2NXB4OwogICAgICAgIGhlaWdodDogMzZweDsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDIxNC4zIDMxLjglIDkxLjQlKSIsImhzbCgyMTcuMiAzMi42JSAxNy41JSkiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgIHBhZGRpbmc6IDAgMTJweDsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAxMDAlKSIsImhzbCgyMjQgNzEuNCUgNC4xJSkiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjI0IDcxLjQlIDQuMSUpIiwiaHNsKDIxMCAyMCUgOTglKSIpfTsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlOwogICAgICB9CgogICAgICAudGltZS1pbnB1dDpob3ZlciB7CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNC4zIDMxLjglIDkxLjQlKSIsImhzbCgyMTcuMiAzMi42JSAxNy41JSkiKX07CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTAgMjAlIDk4JSkiLCJoc2woMjE1IDI3LjklIDE2LjklKSIpfTsKICAgICAgfQoKICAgICAgLnRpbWUtaW5wdXQ6Zm9jdXMgewogICAgICAgIG91dGxpbmU6IG5vbmU7CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIyMi4yIDQ3LjQlIDExLjIlKSIsImhzbCgyMTAgMjAlIDk4JSkiKX07CiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICR7bS5iZFRoZW1lKCJoc2woMjIyLjIgNDcuNCUgMTEuMiUgLyAwLjEpIiwiaHNsKDIxMCAyMCUgOTglIC8gMC4xKSIpfTsKICAgICAgfQoKICAgICAgLnRpbWUtc2VwYXJhdG9yIHsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMjAgOC45JSA0Ni4xJSkiLCJoc2woMjE1IDIwLjIlIDY1LjElKSIpfTsKICAgICAgfQoKICAgICAgLmFtLXBtLXNlbGVjdG9yIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGdhcDogNHB4OwogICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7CiAgICAgIH0KCiAgICAgIC5hbS1wbS1idXR0b24gewogICAgICAgIHBhZGRpbmc6IDZweCAxMnB4OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMjE0LjMgMzEuOCUgOTEuNCUpIiwiaHNsKDIxNy4yIDMyLjYlIDE3LjUlKSIpfTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTAwJSkiLCJoc2woMjI0IDcxLjQlIDQuMSUpIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMjAgOC45JSA0Ni4xJSkiLCJoc2woMjE1IDIwLjIlIDY1LjElKSIpfTsKICAgICAgfQoKICAgICAgLmFtLXBtLWJ1dHRvbi5zZWxlY3RlZCB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMjIuMiA0Ny40JSAxMS4yJSkiLCJoc2woMjEwIDIwJSA5OCUpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxMCAyMCUgOTglKSIsImhzbCgyMjIuMiA0Ny40JSAxMS4yJSkiKX07CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIyMi4yIDQ3LjQlIDExLjIlKSIsImhzbCgyMTAgMjAlIDk4JSkiKX07CiAgICAgIH0KCiAgICAgIC5hbS1wbS1idXR0b246aG92ZXI6bm90KC5zZWxlY3RlZCkgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjEwIDIwJSA5OCUpIiwiaHNsKDIxNSAyNy45JSAxNi45JSkiKX07CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNC4zIDMxLjglIDkxLjQlKSIsImhzbCgyMTcuMiAzMi42JSAxNy41JSkiKX07CiAgICAgIH0KCiAgICAgIC8qIEFjdGlvbiBidXR0b25zICovCiAgICAgIC5jYWxlbmRhci1hY3Rpb25zIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGdhcDogOHB4OwogICAgICAgIG1hcmdpbi10b3A6IDEycHg7CiAgICAgICAgcGFkZGluZy10b3A6IDEycHg7CiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMjE0LjMgMzEuOCUgOTEuNCUpIiwiaHNsKDIxNy4yIDMyLjYlIDE3LjUlKSIpfTsKICAgICAgfQoKICAgICAgLmFjdGlvbi1idXR0b24gewogICAgICAgIGZsZXg6IDE7CiAgICAgICAgaGVpZ2h0OiAzNnB4OwogICAgICAgIGJvcmRlcjogbm9uZTsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICB9CgogICAgICAudG9kYXktYnV0dG9uIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTAwJSkiLCJoc2woMjI0IDcxLjQlIDQuMSUpIil9OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMjE0LjMgMzEuOCUgOTEuNCUpIiwiaHNsKDIxNy4yIDMyLjYlIDE3LjUlKSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMjQgNzEuNCUgNC4xJSkiLCJoc2woMjEwIDIwJSA5OCUpIil9OwogICAgICB9CgogICAgICAudG9kYXktYnV0dG9uOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDIxMCAyMCUgOTglKSIsImhzbCgyMTUgMjcuOSUgMTYuOSUpIil9OwogICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTQuMyAzMS44JSA5MS40JSkiLCJoc2woMjE3LjIgMzIuNiUgMTcuNSUpIil9OwogICAgICB9CgogICAgICAudG9kYXktYnV0dG9uOmFjdGl2ZSB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTQuMyAzMS44JSA5MS40JSkiLCJoc2woMjE3LjIgMzIuNiUgMTcuNSUpIil9OwogICAgICB9CgogICAgICAuY2xlYXItYnV0dG9uIHsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMjAgOC45JSA0Ni4xJSkiLCJoc2woMjE1IDIwLjIlIDY1LjElKSIpfTsKICAgICAgfQoKICAgICAgLmNsZWFyLWJ1dHRvbjpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDcyLjIlIDUwLjYlIC8gMC4xKSIsImhzbCgwIDYyLjglIDMwLjYlIC8gMC4xKSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDcyLjIlIDUwLjYlKSIsImhzbCgwIDYyLjglIDMwLjYlKSIpfTsKICAgICAgfQoKICAgICAgLmNsZWFyLWJ1dHRvbjphY3RpdmUgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCA3Mi4yJSA1MC42JSAvIDAuMikiLCJoc2woMCA2Mi44JSAzMC42JSAvIDAuMikiKX07CiAgICAgIH0KCiAgICAgIC8qIFRpbWV6b25lIHNlbGVjdG9yICovCiAgICAgIC50aW1lem9uZS1zZWxlY3RvciB7CiAgICAgICAgbWFyZ2luLXRvcDogMTJweDsKICAgICAgICBwYWRkaW5nLXRvcDogMTJweDsKICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgyMTQuMyAzMS44JSA5MS40JSkiLCJoc2woMjE3LjIgMzIuNiUgMTcuNSUpIil9OwogICAgICB9CgogICAgICAudGltZXpvbmUtc2VsZWN0b3ItdGl0bGUgewogICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgIG1hcmdpbi1ib3R0b206IDhweDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMjAgOC45JSA0Ni4xJSkiLCJoc2woMjE1IDIwLjIlIDY1LjElKSIpfTsKICAgICAgfQoKICAgICAgLnRpbWV6b25lLXNlbGVjdCB7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgaGVpZ2h0OiAzNnB4OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMjE0LjMgMzEuOCUgOTEuNCUpIiwiaHNsKDIxNy4yIDMyLjYlIDE3LjUlKSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgcGFkZGluZzogMCAxMnB4OwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTAwJSkiLCJoc2woMjI0IDcxLjQlIDQuMSUpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIyNCA3MS40JSA0LjElKSIsImhzbCgyMTAgMjAlIDk4JSkiKX07CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7CiAgICAgIH0KCiAgICAgIC50aW1lem9uZS1zZWxlY3Q6aG92ZXIgewogICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTQuMyAzMS44JSA5MS40JSkiLCJoc2woMjE3LjIgMzIuNiUgMTcuNSUpIil9OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjEwIDIwJSA5OCUpIiwiaHNsKDIxNSAyNy45JSAxNi45JSkiKX07CiAgICAgIH0KCiAgICAgIC50aW1lem9uZS1zZWxlY3Q6Zm9jdXMgewogICAgICAgIG91dGxpbmU6IG5vbmU7CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIyMi4yIDQ3LjQlIDExLjIlKSIsImhzbCgyMTAgMjAlIDk4JSkiKX07CiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICR7bS5iZFRoZW1lKCJoc2woMjIyLjIgNDcuNCUgMTEuMiUgLyAwLjEpIiwiaHNsKDIxMCAyMCUgOTglIC8gMC4xKSIpfTsKICAgICAgfQogICAgYF19KTt2YXIgRkVyLE9Fcj1sKCgpPT57U2UoKTtGRXI9ZT0+e2xldCB0PVsiSmFudWFyeSIsIkZlYnJ1YXJ5IiwiTWFyY2giLCJBcHJpbCIsIk1heSIsIkp1bmUiLCJKdWx5IiwiQXVndXN0IiwiU2VwdGVtYmVyIiwiT2N0b2JlciIsIk5vdmVtYmVyIiwiRGVjZW1iZXIiXSxyPWUud2Vla1N0YXJ0c09uPT09MT9bIk1vIiwiVHUiLCJXZSIsIlRoIiwiRnIiLCJTYSIsIlN1Il06WyJTdSIsIk1vIiwiVHUiLCJXZSIsIlRoIiwiRnIiLCJTYSJdLGE9ZS5nZXREYXlzSW5Nb250aCgpLGk9ZS5zZWxlY3RlZEhvdXI8MTIsbz1lLmdldFRpbWV6b25lcygpO3JldHVybiBTYAogICAgICAgIDxkaXYgY2xhc3M9ImlucHV0LXdyYXBwZXIiPgogICAgICAgICAgPGRlZXMtbGFiZWwgLmxhYmVsPSR7ZS5sYWJlbH0gLmRlc2NyaXB0aW9uPSR7ZS5kZXNjcmlwdGlvbn0gLnJlcXVpcmVkPSR7ZS5yZXF1aXJlZH0+PC9kZWVzLWxhYmVsPgogICAgICAgICAgPGRpdiBjbGFzcz0iaW5wdXQtY29udGFpbmVyIj4KICAgICAgICAgICAgPGlucHV0CiAgICAgICAgICAgICAgdHlwZT0idGV4dCIKICAgICAgICAgICAgICBjbGFzcz0iZGF0ZS1pbnB1dCAke2UuaXNPcGVuZWQ/Im9wZW4iOiIifSIKICAgICAgICAgICAgICAudmFsdWU9JHtlLmZvcm1hdERhdGUoZS52YWx1ZSl9CiAgICAgICAgICAgICAgLnBsYWNlaG9sZGVyPSR7ZS5wbGFjZWhvbGRlcn0KICAgICAgICAgICAgICA/ZGlzYWJsZWQ9JHtlLmRpc2FibGVkfQogICAgICAgICAgICAgIEBjbGljaz0ke2UudG9nZ2xlQ2FsZW5kYXJ9CiAgICAgICAgICAgICAgQGtleWRvd249JHtlLmhhbmRsZUtleWRvd259CiAgICAgICAgICAgICAgQGlucHV0PSR7ZS5oYW5kbGVNYW51YWxJbnB1dH0KICAgICAgICAgICAgICBAYmx1cj0ke2UuaGFuZGxlSW5wdXRCbHVyfQogICAgICAgICAgICAgIHN0eWxlPSJwYWRkaW5nLXJpZ2h0OiAke2UudmFsdWU/IjY0cHgiOiI0MHB4In0iCiAgICAgICAgICAgIC8+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9Imljb24tY29udGFpbmVyIj4KICAgICAgICAgICAgICAke2UudmFsdWUmJiFlLmRpc2FibGVkP1NgCiAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJjbGVhci1idXR0b24iIEBjbGljaz0ke2UuY2xlYXJWYWx1ZX0gdGl0bGU9IkNsZWFyIj4KICAgICAgICAgICAgICAgICAgPGRlZXMtaWNvbiBpY29uPSJsdWNpZGU6eCIgaWNvblNpemU9IjE0Ij48L2RlZXMtaWNvbj4KICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgIGA6IiJ9CiAgICAgICAgICAgICAgPGRlZXMtaWNvbiBjbGFzcz0iY2FsZW5kYXItaWNvbiIgaWNvbj0ibHVjaWRlOmNhbGVuZGFyIiBpY29uU2l6ZT0iMTYiPjwvZGVlcy1pY29uPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIAogICAgICAgICAgICA8IS0tIENhbGVuZGFyIFBvcHVwIC0tPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYWxlbmRhci1wb3B1cCAke2UuaXNPcGVuZWQ/InNob3ciOiIifSAke2Uub3BlbnNUb1RvcD8idG9wIjoiYm90dG9tIn0iPgogICAgICAgICAgICAgIDwhLS0gTW9udGgvWWVhciBOYXZpZ2F0aW9uIC0tPgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhbGVuZGFyLWhlYWRlciI+CiAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJuYXYtYnV0dG9uIiBAY2xpY2s9JHtlLnByZXZpb3VzTW9udGh9PgogICAgICAgICAgICAgICAgICA8ZGVlcy1pY29uIGljb249Imx1Y2lkZTpjaGV2cm9uTGVmdCIgaWNvblNpemU9IjE2Ij48L2RlZXMtaWNvbj4KICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibW9udGgteWVhci1kaXNwbGF5Ij4KICAgICAgICAgICAgICAgICAgJHt0W2Uudmlld0RhdGUuZ2V0TW9udGgoKV19ICR7ZS52aWV3RGF0ZS5nZXRGdWxsWWVhcigpfQogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJuYXYtYnV0dG9uIiBAY2xpY2s9JHtlLm5leHRNb250aH0+CiAgICAgICAgICAgICAgICAgIDxkZWVzLWljb24gaWNvbj0ibHVjaWRlOmNoZXZyb25SaWdodCIgaWNvblNpemU9IjE2Ij48L2RlZXMtaWNvbj4KICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgICA8IS0tIFdlZWtkYXkgSGVhZGVycyAtLT4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3ZWVrZGF5cyI+CiAgICAgICAgICAgICAgICAke3IubWFwKG49PlNgPGRpdiBjbGFzcz0id2Vla2RheSI+JHtufTwvZGl2PmApfQogICAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgICA8IS0tIERheXMgR3JpZCAtLT4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJkYXlzLWdyaWQiPgogICAgICAgICAgICAgICAgJHthLm1hcChuPT57bGV0IHM9ZS5pc1RvZGF5KG4pLGM9ZS5pc1NlbGVjdGVkKG4pLGQ9bi5nZXRNb250aCgpIT09ZS52aWV3RGF0ZS5nZXRNb250aCgpLGY9ZS5pc0Rpc2FibGVkKG4pLHU9ZS5nZXRFdmVudHNGb3JEYXRlKG4pLHA9dS5sZW5ndGg+MCxoPXUucmVkdWNlKChiLHgpPT5iKyh4LmNvdW50fHwxKSwwKTtyZXR1cm4gU2AKICAgICAgICAgICAgICAgICAgICA8ZGl2IAogICAgICAgICAgICAgICAgICAgICAgY2xhc3M9ImRheSAke2Q/Im90aGVyLW1vbnRoIjoiIn0gJHtzPyJ0b2RheSI6IiJ9ICR7Yz8ic2VsZWN0ZWQiOiIifSAke2Y/ImRpc2FibGVkIjoiIn0gJHtwPyJoYXMtZXZlbnQiOiIifSIKICAgICAgICAgICAgICAgICAgICAgIEBjbGljaz0keygpPT4hZiYmZS5zZWxlY3REYXRlKG4pfQogICAgICAgICAgICAgICAgICAgID4KICAgICAgICAgICAgICAgICAgICAgICR7bi5nZXREYXRlKCl9CiAgICAgICAgICAgICAgICAgICAgICAke3A/U2AKICAgICAgICAgICAgICAgICAgICAgICAgJHtoPjM/U2AKICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJldmVudC1jb3VudCI+JHtofTwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICBgOlNgCiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZXZlbnQtaW5kaWNhdG9yIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICR7dS5zbGljZSgwLDMpLm1hcChiPT5TYAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJldmVudC1kb3QgJHtiLnR5cGV8fCJpbmZvIn0iPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgYCl9CiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIGB9CiAgICAgICAgICAgICAgICAgICAgICAgICR7dVswXS50aXRsZT9TYAogICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImV2ZW50LXRvb2x0aXAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgJHt1WzBdLnRpdGxlfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgJHtoPjE/U2AgKCske2gtMX0gbW9yZSlgOiIifQogICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICBgOiIifQogICAgICAgICAgICAgICAgICAgICAgYDoiIn0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgYH0pfQogICAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgICA8IS0tIFRpbWUgU2VsZWN0b3IgLS0+CiAgICAgICAgICAgICAgJHtlLmVuYWJsZVRpbWU/U2AKICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpbWUtc2VsZWN0b3IiPgogICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aW1lLXNlbGVjdG9yLXRpdGxlIj5UaW1lPC9kaXY+CiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpbWUtaW5wdXRzIj4KICAgICAgICAgICAgICAgICAgICA8aW5wdXQgCiAgICAgICAgICAgICAgICAgICAgICB0eXBlPSJudW1iZXIiIAogICAgICAgICAgICAgICAgICAgICAgY2xhc3M9InRpbWUtaW5wdXQiIAogICAgICAgICAgICAgICAgICAgICAgLnZhbHVlPSR7ZS50aW1lRm9ybWF0PT09IjEyaCI/KGUuc2VsZWN0ZWRIb3VyPT09MD8xMjplLnNlbGVjdGVkSG91cj4xMj9lLnNlbGVjdGVkSG91ci0xMjplLnNlbGVjdGVkSG91cikudG9TdHJpbmcoKS5wYWRTdGFydCgyLCIwIik6ZS5zZWxlY3RlZEhvdXIudG9TdHJpbmcoKS5wYWRTdGFydCgyLCIwIil9CiAgICAgICAgICAgICAgICAgICAgICBAaW5wdXQ9JHtuPT5lLmhhbmRsZUhvdXJJbnB1dChuKX0KICAgICAgICAgICAgICAgICAgICAgIG1pbj0iJHtlLnRpbWVGb3JtYXQ9PT0iMTJoIj8xOjB9IgogICAgICAgICAgICAgICAgICAgICAgbWF4PSIke2UudGltZUZvcm1hdD09PSIxMmgiPzEyOjIzfSIKICAgICAgICAgICAgICAgICAgICAvPgogICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0aW1lLXNlcGFyYXRvciI+Ojwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8aW5wdXQgCiAgICAgICAgICAgICAgICAgICAgICB0eXBlPSJudW1iZXIiIAogICAgICAgICAgICAgICAgICAgICAgY2xhc3M9InRpbWUtaW5wdXQiIAogICAgICAgICAgICAgICAgICAgICAgLnZhbHVlPSR7ZS5zZWxlY3RlZE1pbnV0ZS50b1N0cmluZygpLnBhZFN0YXJ0KDIsIjAiKX0KICAgICAgICAgICAgICAgICAgICAgIEBpbnB1dD0ke249PmUuaGFuZGxlTWludXRlSW5wdXQobil9CiAgICAgICAgICAgICAgICAgICAgICBtaW49IjAiCiAgICAgICAgICAgICAgICAgICAgICBtYXg9IjU5IgogICAgICAgICAgICAgICAgICAgICAgc3RlcD0iJHtlLm1pbnV0ZUluY3JlbWVudHx8MX0iCiAgICAgICAgICAgICAgICAgICAgLz4KICAgICAgICAgICAgICAgICAgICAke2UudGltZUZvcm1hdD09PSIxMmgiP1NgCiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhbS1wbS1zZWxlY3RvciI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gCiAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9ImFtLXBtLWJ1dHRvbiAke2k/InNlbGVjdGVkIjoiIn0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgQGNsaWNrPSR7KCk9PmUuc2V0QU1QTSgiYW0iKX0KICAgICAgICAgICAgICAgICAgICAgICAgPgogICAgICAgICAgICAgICAgICAgICAgICAgIEFNCiAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIAogICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJhbS1wbS1idXR0b24gJHtpPyIiOiJzZWxlY3RlZCJ9IgogICAgICAgICAgICAgICAgICAgICAgICAgIEBjbGljaz0keygpPT5lLnNldEFNUE0oInBtIil9CiAgICAgICAgICAgICAgICAgICAgICAgID4KICAgICAgICAgICAgICAgICAgICAgICAgICBQTQogICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIGA6IiJ9CiAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgYDoiIn0KCiAgICAgICAgICAgICAgPCEtLSBUaW1lem9uZSBTZWxlY3RvciAtLT4KICAgICAgICAgICAgICAke2UuZW5hYmxlVGltZXpvbmU/U2AKICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRpbWV6b25lLXNlbGVjdG9yIj4KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGltZXpvbmUtc2VsZWN0b3ItdGl0bGUiPlRpbWV6b25lPC9kaXY+CiAgICAgICAgICAgICAgICAgIDxzZWxlY3QgCiAgICAgICAgICAgICAgICAgICAgY2xhc3M9InRpbWV6b25lLXNlbGVjdCIgCiAgICAgICAgICAgICAgICAgICAgLnZhbHVlPSR7ZS50aW1lem9uZX0KICAgICAgICAgICAgICAgICAgICBAY2hhbmdlPSR7bj0+ZS5oYW5kbGVUaW1lem9uZUNoYW5nZShuKX0KICAgICAgICAgICAgICAgICAgPgogICAgICAgICAgICAgICAgICAgICR7by5tYXAobj0+U2AKICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9IiR7bi52YWx1ZX0iID9zZWxlY3RlZD0ke24udmFsdWU9PT1lLnRpbWV6b25lfT4KICAgICAgICAgICAgICAgICAgICAgICAgJHtuLmxhYmVsfQogICAgICAgICAgICAgICAgICAgICAgPC9vcHRpb24+CiAgICAgICAgICAgICAgICAgICAgYCl9CiAgICAgICAgICAgICAgICAgIDwvc2VsZWN0PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgYDoiIn0KCiAgICAgICAgICAgICAgPCEtLSBBY3Rpb24gQnV0dG9ucyAtLT4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYWxlbmRhci1hY3Rpb25zIj4KICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImFjdGlvbi1idXR0b24gdG9kYXktYnV0dG9uIiBAY2xpY2s9JHtlLnNlbGVjdFRvZGF5fT4KICAgICAgICAgICAgICAgICAgVG9kYXkKICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYWN0aW9uLWJ1dHRvbiBjbGVhci1idXR0b24iIEBjbGljaz0ke2UuY2xlYXJ9PgogICAgICAgICAgICAgICAgICBDbGVhcgogICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIGB9fSk7dmFyIHZpLHJyLF9sZSxHbHQ9bCgoKT0+e1NlKCk7UGEoKTtQRXIoKTtORXIoKTtPRXIoKTticigpO3E5KCk7dmk9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxycj1mdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MixpPTA7aTx0Lmxlbmd0aDtpKyspcj1hP3RbaV0uY2FsbChlLHIpOnRbaV0uY2FsbChlKTtyZXR1cm4gYT9yOnZvaWQgMH0sX2xlPSgoKT0+e2xldCBlPVt6ZSgiZGVlcy1pbnB1dC1kYXRlcGlja2VyIildLHQscj1bXSxhLGk9aHQsbyxuPVtdLHM9W10sYyxkPVtdLGY9W10sdSxwPVtdLGg9W10sYix4PVtdLGc9W10sdix3PVtdLE09W10sRixDPVtdLGs9W10sTiwkPVtdLEk9W10sQix6PVtdLHk9W10sRSxfPVtdLFA9W10sVixIPVtdLFc9W10sYWUsVD1bXSxKPVtdLGZlLEw9W10sUT1bXSxrZSxHPVtdLEE9W10sRCxSPVtdLE89W10sWSx1ZT1bXSx5ZT1bXSwkZSxVPVtdLHE9W10saWUsd2U9W10sZ2U9W10sQWUseGU9W10sbmU9W10sTGUsT2U9W10sSmU9W107dmFyIHRlPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgWj10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHt0eXBlOlN0cmluZ30pXSxjPVtqKHt0eXBlOkJvb2xlYW59KV0sdT1baih7dHlwZTpTdHJpbmd9KV0sYj1baih7dHlwZTpOdW1iZXJ9KV0sdj1baih7dHlwZTpTdHJpbmd9KV0sRj1baih7dHlwZTpTdHJpbmd9KV0sTj1baih7dHlwZTpTdHJpbmd9KV0sQj1baih7dHlwZTpBcnJheX0pXSxFPVtqKHt0eXBlOk51bWJlcn0pXSxWPVtqKHt0eXBlOlN0cmluZ30pXSxhZT1baih7dHlwZTpCb29sZWFufSldLGZlPVtqKHt0eXBlOlN0cmluZ30pXSxrZT1baih7dHlwZTpBcnJheX0pXSxEPVtyZSgpXSxZPVtyZSgpXSwkZT1bcmUoKV0saWU9W3JlKCldLEFlPVtyZSgpXSxMZT1bcmUoKV0sdmkodGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ2YWx1ZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ZWU9PiJ2YWx1ZSJpbiBlZSxnZXQ6ZWU9PmVlLnZhbHVlLHNldDooZWUsYmUpPT57ZWUudmFsdWU9YmV9fSxtZXRhZGF0YTpafSxuLHMpLHZpKHRoaXMsbnVsbCxjLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZW5hYmxlVGltZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ZWU9PiJlbmFibGVUaW1lImluIGVlLGdldDplZT0+ZWUuZW5hYmxlVGltZSxzZXQ6KGVlLGJlKT0+e2VlLmVuYWJsZVRpbWU9YmV9fSxtZXRhZGF0YTpafSxkLGYpLHZpKHRoaXMsbnVsbCx1LHtraW5kOiJhY2Nlc3NvciIsbmFtZToidGltZUZvcm1hdCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ZWU9PiJ0aW1lRm9ybWF0ImluIGVlLGdldDplZT0+ZWUudGltZUZvcm1hdCxzZXQ6KGVlLGJlKT0+e2VlLnRpbWVGb3JtYXQ9YmV9fSxtZXRhZGF0YTpafSxwLGgpLHZpKHRoaXMsbnVsbCxiLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibWludXRlSW5jcmVtZW50IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczplZT0+Im1pbnV0ZUluY3JlbWVudCJpbiBlZSxnZXQ6ZWU9PmVlLm1pbnV0ZUluY3JlbWVudCxzZXQ6KGVlLGJlKT0+e2VlLm1pbnV0ZUluY3JlbWVudD1iZX19LG1ldGFkYXRhOlp9LHgsZyksdmkodGhpcyxudWxsLHYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJkYXRlRm9ybWF0IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczplZT0+ImRhdGVGb3JtYXQiaW4gZWUsZ2V0OmVlPT5lZS5kYXRlRm9ybWF0LHNldDooZWUsYmUpPT57ZWUuZGF0ZUZvcm1hdD1iZX19LG1ldGFkYXRhOlp9LHcsTSksdmkodGhpcyxudWxsLEYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJtaW5EYXRlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczplZT0+Im1pbkRhdGUiaW4gZWUsZ2V0OmVlPT5lZS5taW5EYXRlLHNldDooZWUsYmUpPT57ZWUubWluRGF0ZT1iZX19LG1ldGFkYXRhOlp9LEMsayksdmkodGhpcyxudWxsLE4se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJtYXhEYXRlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczplZT0+Im1heERhdGUiaW4gZWUsZ2V0OmVlPT5lZS5tYXhEYXRlLHNldDooZWUsYmUpPT57ZWUubWF4RGF0ZT1iZX19LG1ldGFkYXRhOlp9LCQsSSksdmkodGhpcyxudWxsLEIse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJkaXNhYmxlZERhdGVzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczplZT0+ImRpc2FibGVkRGF0ZXMiaW4gZWUsZ2V0OmVlPT5lZS5kaXNhYmxlZERhdGVzLHNldDooZWUsYmUpPT57ZWUuZGlzYWJsZWREYXRlcz1iZX19LG1ldGFkYXRhOlp9LHoseSksdmkodGhpcyxudWxsLEUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ3ZWVrU3RhcnRzT24iLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmVlPT4id2Vla1N0YXJ0c09uImluIGVlLGdldDplZT0+ZWUud2Vla1N0YXJ0c09uLHNldDooZWUsYmUpPT57ZWUud2Vla1N0YXJ0c09uPWJlfX0sbWV0YWRhdGE6Wn0sXyxQKSx2aSh0aGlzLG51bGwsVix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InBsYWNlaG9sZGVyIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczplZT0+InBsYWNlaG9sZGVyImluIGVlLGdldDplZT0+ZWUucGxhY2Vob2xkZXIsc2V0OihlZSxiZSk9PntlZS5wbGFjZWhvbGRlcj1iZX19LG1ldGFkYXRhOlp9LEgsVyksdmkodGhpcyxudWxsLGFlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZW5hYmxlVGltZXpvbmUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmVlPT4iZW5hYmxlVGltZXpvbmUiaW4gZWUsZ2V0OmVlPT5lZS5lbmFibGVUaW1lem9uZSxzZXQ6KGVlLGJlKT0+e2VlLmVuYWJsZVRpbWV6b25lPWJlfX0sbWV0YWRhdGE6Wn0sVCxKKSx2aSh0aGlzLG51bGwsZmUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ0aW1lem9uZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ZWU9PiJ0aW1lem9uZSJpbiBlZSxnZXQ6ZWU9PmVlLnRpbWV6b25lLHNldDooZWUsYmUpPT57ZWUudGltZXpvbmU9YmV9fSxtZXRhZGF0YTpafSxMLFEpLHZpKHRoaXMsbnVsbCxrZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImV2ZW50cyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ZWU9PiJldmVudHMiaW4gZWUsZ2V0OmVlPT5lZS5ldmVudHMsc2V0OihlZSxiZSk9PntlZS5ldmVudHM9YmV9fSxtZXRhZGF0YTpafSxHLEEpLHZpKHRoaXMsbnVsbCxELHtraW5kOiJhY2Nlc3NvciIsbmFtZToiaXNPcGVuZWQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmVlPT4iaXNPcGVuZWQiaW4gZWUsZ2V0OmVlPT5lZS5pc09wZW5lZCxzZXQ6KGVlLGJlKT0+e2VlLmlzT3BlbmVkPWJlfX0sbWV0YWRhdGE6Wn0sUixPKSx2aSh0aGlzLG51bGwsWSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im9wZW5zVG9Ub3AiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmVlPT4ib3BlbnNUb1RvcCJpbiBlZSxnZXQ6ZWU9PmVlLm9wZW5zVG9Ub3Asc2V0OihlZSxiZSk9PntlZS5vcGVuc1RvVG9wPWJlfX0sbWV0YWRhdGE6Wn0sdWUseWUpLHZpKHRoaXMsbnVsbCwkZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNlbGVjdGVkRGF0ZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ZWU9PiJzZWxlY3RlZERhdGUiaW4gZWUsZ2V0OmVlPT5lZS5zZWxlY3RlZERhdGUsc2V0OihlZSxiZSk9PntlZS5zZWxlY3RlZERhdGU9YmV9fSxtZXRhZGF0YTpafSxVLHEpLHZpKHRoaXMsbnVsbCxpZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InZpZXdEYXRlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczplZT0+InZpZXdEYXRlImluIGVlLGdldDplZT0+ZWUudmlld0RhdGUsc2V0OihlZSxiZSk9PntlZS52aWV3RGF0ZT1iZX19LG1ldGFkYXRhOlp9LHdlLGdlKSx2aSh0aGlzLG51bGwsQWUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzZWxlY3RlZEhvdXIiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmVlPT4ic2VsZWN0ZWRIb3VyImluIGVlLGdldDplZT0+ZWUuc2VsZWN0ZWRIb3VyLHNldDooZWUsYmUpPT57ZWUuc2VsZWN0ZWRIb3VyPWJlfX0sbWV0YWRhdGE6Wn0seGUsbmUpLHZpKHRoaXMsbnVsbCxMZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNlbGVjdGVkTWludXRlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczplZT0+InNlbGVjdGVkTWludXRlImluIGVlLGdldDplZT0+ZWUuc2VsZWN0ZWRNaW51dGUsc2V0OihlZSxiZSk9PntlZS5zZWxlY3RlZE1pbnV0ZT1iZX19LG1ldGFkYXRhOlp9LE9lLEplKSx2aShudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTpafSxudWxsLHIpLHRlPWE9dC52YWx1ZSxaJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOlp9KX1zdGF0aWMgZGVtbz0kRXI7c3RhdGljIGRlbW9Hcm91cHM9WyJJbnB1dCJdOyNlPXJyKHRoaXMsbiwiIik7Z2V0IHZhbHVlKCl7cmV0dXJuIHRoaXMuI2V9c2V0IHZhbHVlKFope3RoaXMuI2U9Wn0jdD0ocnIodGhpcyxzKSxycih0aGlzLGQsITEpKTtnZXQgZW5hYmxlVGltZSgpe3JldHVybiB0aGlzLiN0fXNldCBlbmFibGVUaW1lKFope3RoaXMuI3Q9Wn0jcj0ocnIodGhpcyxmKSxycih0aGlzLHAsIjI0aCIpKTtnZXQgdGltZUZvcm1hdCgpe3JldHVybiB0aGlzLiNyfXNldCB0aW1lRm9ybWF0KFope3RoaXMuI3I9Wn0jYT0ocnIodGhpcyxoKSxycih0aGlzLHgsMSkpO2dldCBtaW51dGVJbmNyZW1lbnQoKXtyZXR1cm4gdGhpcy4jYX1zZXQgbWludXRlSW5jcmVtZW50KFope3RoaXMuI2E9Wn0jaT0ocnIodGhpcyxnKSxycih0aGlzLHcsIllZWVktTU0tREQiKSk7Z2V0IGRhdGVGb3JtYXQoKXtyZXR1cm4gdGhpcy4jaX1zZXQgZGF0ZUZvcm1hdChaKXt0aGlzLiNpPVp9I289KHJyKHRoaXMsTSkscnIodGhpcyxDLCIiKSk7Z2V0IG1pbkRhdGUoKXtyZXR1cm4gdGhpcy4jb31zZXQgbWluRGF0ZShaKXt0aGlzLiNvPVp9I249KHJyKHRoaXMsaykscnIodGhpcywkLCIiKSk7Z2V0IG1heERhdGUoKXtyZXR1cm4gdGhpcy4jbn1zZXQgbWF4RGF0ZShaKXt0aGlzLiNuPVp9I3M9KHJyKHRoaXMsSSkscnIodGhpcyx6LFtdKSk7Z2V0IGRpc2FibGVkRGF0ZXMoKXtyZXR1cm4gdGhpcy4jc31zZXQgZGlzYWJsZWREYXRlcyhaKXt0aGlzLiNzPVp9I2w9KHJyKHRoaXMseSkscnIodGhpcyxfLDEpKTtnZXQgd2Vla1N0YXJ0c09uKCl7cmV0dXJuIHRoaXMuI2x9c2V0IHdlZWtTdGFydHNPbihaKXt0aGlzLiNsPVp9I2M9KHJyKHRoaXMsUCkscnIodGhpcyxILCJZWVlZLU1NLUREIikpO2dldCBwbGFjZWhvbGRlcigpe3JldHVybiB0aGlzLiNjfXNldCBwbGFjZWhvbGRlcihaKXt0aGlzLiNjPVp9I2Q9KHJyKHRoaXMsVykscnIodGhpcyxULCExKSk7Z2V0IGVuYWJsZVRpbWV6b25lKCl7cmV0dXJuIHRoaXMuI2R9c2V0IGVuYWJsZVRpbWV6b25lKFope3RoaXMuI2Q9Wn0jdT0ocnIodGhpcyxKKSxycih0aGlzLEwsSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lKSk7Z2V0IHRpbWV6b25lKCl7cmV0dXJuIHRoaXMuI3V9c2V0IHRpbWV6b25lKFope3RoaXMuI3U9Wn0jZj0ocnIodGhpcyxRKSxycih0aGlzLEcsW10pKTtnZXQgZXZlbnRzKCl7cmV0dXJuIHRoaXMuI2Z9c2V0IGV2ZW50cyhaKXt0aGlzLiNmPVp9I3A9KHJyKHRoaXMsQSkscnIodGhpcyxSLCExKSk7Z2V0IGlzT3BlbmVkKCl7cmV0dXJuIHRoaXMuI3B9c2V0IGlzT3BlbmVkKFope3RoaXMuI3A9Wn0jaD0ocnIodGhpcyxPKSxycih0aGlzLHVlLCExKSk7Z2V0IG9wZW5zVG9Ub3AoKXtyZXR1cm4gdGhpcy4jaH1zZXQgb3BlbnNUb1RvcChaKXt0aGlzLiNoPVp9I209KHJyKHRoaXMseWUpLHJyKHRoaXMsVSxudWxsKSk7Z2V0IHNlbGVjdGVkRGF0ZSgpe3JldHVybiB0aGlzLiNtfXNldCBzZWxlY3RlZERhdGUoWil7dGhpcy4jbT1afSNnPShycih0aGlzLHEpLHJyKHRoaXMsd2UsbmV3IERhdGUpKTtnZXQgdmlld0RhdGUoKXtyZXR1cm4gdGhpcy4jZ31zZXQgdmlld0RhdGUoWil7dGhpcy4jZz1afSN4PShycih0aGlzLGdlKSxycih0aGlzLHhlLDApKTtnZXQgc2VsZWN0ZWRIb3VyKCl7cmV0dXJuIHRoaXMuI3h9c2V0IHNlbGVjdGVkSG91cihaKXt0aGlzLiN4PVp9I2I9KHJyKHRoaXMsbmUpLHJyKHRoaXMsT2UsMCkpO2dldCBzZWxlY3RlZE1pbnV0ZSgpe3JldHVybiB0aGlzLiNifXNldCBzZWxlY3RlZE1pbnV0ZShaKXt0aGlzLiNiPVp9c3RhdGljIHN0eWxlcz1JRXI7Z2V0VGltZXpvbmVzKCl7cmV0dXJuW3t2YWx1ZToiVVRDIixsYWJlbDoiVVRDIChDb29yZGluYXRlZCBVbml2ZXJzYWwgVGltZSkifSx7dmFsdWU6IkFtZXJpY2EvTmV3X1lvcmsiLGxhYmVsOiJFYXN0ZXJuIFRpbWUgKFVTICYgQ2FuYWRhKSJ9LHt2YWx1ZToiQW1lcmljYS9DaGljYWdvIixsYWJlbDoiQ2VudHJhbCBUaW1lIChVUyAmIENhbmFkYSkifSx7dmFsdWU6IkFtZXJpY2EvRGVudmVyIixsYWJlbDoiTW91bnRhaW4gVGltZSAoVVMgJiBDYW5hZGEpIn0se3ZhbHVlOiJBbWVyaWNhL0xvc19BbmdlbGVzIixsYWJlbDoiUGFjaWZpYyBUaW1lIChVUyAmIENhbmFkYSkifSx7dmFsdWU6IkFtZXJpY2EvUGhvZW5peCIsbGFiZWw6IkFyaXpvbmEifSx7dmFsdWU6IkFtZXJpY2EvQW5jaG9yYWdlIixsYWJlbDoiQWxhc2thIn0se3ZhbHVlOiJQYWNpZmljL0hvbm9sdWx1IixsYWJlbDoiSGF3YWlpIn0se3ZhbHVlOiJFdXJvcGUvTG9uZG9uIixsYWJlbDoiTG9uZG9uIn0se3ZhbHVlOiJFdXJvcGUvUGFyaXMiLGxhYmVsOiJQYXJpcyJ9LHt2YWx1ZToiRXVyb3BlL0JlcmxpbiIsbGFiZWw6IkJlcmxpbiJ9LHt2YWx1ZToiRXVyb3BlL01vc2NvdyIsbGFiZWw6Ik1vc2NvdyJ9LHt2YWx1ZToiQXNpYS9EdWJhaSIsbGFiZWw6IkR1YmFpIn0se3ZhbHVlOiJBc2lhL0tvbGthdGEiLGxhYmVsOiJJbmRpYSBTdGFuZGFyZCBUaW1lIn0se3ZhbHVlOiJBc2lhL1NoYW5naGFpIixsYWJlbDoiQ2hpbmEgU3RhbmRhcmQgVGltZSJ9LHt2YWx1ZToiQXNpYS9Ub2t5byIsbGFiZWw6IlRva3lvIn0se3ZhbHVlOiJBdXN0cmFsaWEvU3lkbmV5IixsYWJlbDoiU3lkbmV5In0se3ZhbHVlOiJQYWNpZmljL0F1Y2tsYW5kIixsYWJlbDoiQXVja2xhbmQifV19cmVuZGVyKCl7cmV0dXJuIEZFcih0aGlzKX1hc3luYyBjb25uZWN0ZWRDYWxsYmFjaygpe3N1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCksdGhpcy5oYW5kbGVDbGlja091dHNpZGU9dGhpcy5oYW5kbGVDbGlja091dHNpZGUuYmluZCh0aGlzKX1hc3luYyBkaXNjb25uZWN0ZWRDYWxsYmFjaygpe2F3YWl0IHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY2xpY2siLHRoaXMuaGFuZGxlQ2xpY2tPdXRzaWRlKX1hc3luYyBmaXJzdFVwZGF0ZWQoKXtpZih0aGlzLnZhbHVlfHwodGhpcy52YWx1ZT0iIiksdGhpcy52YWx1ZSl0cnl7bGV0IFo9bmV3IERhdGUodGhpcy52YWx1ZSk7aXNOYU4oWi5nZXRUaW1lKCkpfHwodGhpcy5zZWxlY3RlZERhdGU9Wix0aGlzLnZpZXdEYXRlPW5ldyBEYXRlKFopLHRoaXMuc2VsZWN0ZWRIb3VyPVouZ2V0SG91cnMoKSx0aGlzLnNlbGVjdGVkTWludXRlPVouZ2V0TWludXRlcygpKX1jYXRjaHt9ZWxzZXtsZXQgWj1uZXcgRGF0ZTt0aGlzLnZpZXdEYXRlPW5ldyBEYXRlKFopLHRoaXMuc2VsZWN0ZWRIb3VyPVouZ2V0SG91cnMoKSx0aGlzLnNlbGVjdGVkTWludXRlPTB9fWZvcm1hdERhdGUoWil7aWYoIVopcmV0dXJuIiI7dHJ5e2xldCBlZT1uZXcgRGF0ZShaKTtpZihpc05hTihlZS5nZXRUaW1lKCkpKXJldHVybiIiO2xldCBiZT10aGlzLmRhdGVGb3JtYXQsTmU9ZWUuZ2V0RGF0ZSgpLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwiMCIpLEtlPShlZS5nZXRNb250aCgpKzEpLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwiMCIpLHl0PWVlLmdldEZ1bGxZZWFyKCkudG9TdHJpbmcoKTtpZihiZT1iZS5yZXBsYWNlKCJZWVlZIix5dCksYmU9YmUucmVwbGFjZSgiWVkiLHl0LnNsaWNlKC0yKSksYmU9YmUucmVwbGFjZSgiTU0iLEtlKSxiZT1iZS5yZXBsYWNlKCJERCIsTmUpLHRoaXMuZW5hYmxlVGltZSl7bGV0IG50PWVlLmdldEhvdXJzKCksTHQ9bnQ9PT0wPzEyOm50PjEyP250LTEyOm50LE90PWVlLmdldE1pbnV0ZXMoKS50b1N0cmluZygpLnBhZFN0YXJ0KDIsIjAiKSxzZT1udD49MTI/IlBNIjoiQU0iO3RoaXMudGltZUZvcm1hdD09PSIxMmgiP2JlKz1gICR7THR9OiR7T3R9ICR7c2V9YDpiZSs9YCAke250LnRvU3RyaW5nKCkucGFkU3RhcnQoMiwiMCIpfToke090fWB9aWYodGhpcy5lbmFibGVUaW1lem9uZSl7bGV0IE90PW5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCJlbi1VUyIse3RpbWVab25lTmFtZToic2hvcnQiLHRpbWVab25lOnRoaXMudGltZXpvbmV9KS5mb3JtYXRUb1BhcnRzKGVlKS5maW5kKHNlPT5zZS50eXBlPT09InRpbWVab25lTmFtZSIpO090JiYoYmUrPWAgJHtPdC52YWx1ZX1gKX1yZXR1cm4gYmV9Y2F0Y2h7cmV0dXJuIiJ9fWhhbmRsZUNsaWNrT3V0c2lkZT0ocnIodGhpcyxKZSksWj0+e1ouY29tcG9zZWRQYXRoKCkuaW5jbHVkZXModGhpcyl8fCh0aGlzLmlzT3BlbmVkPSExLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImNsaWNrIix0aGlzLmhhbmRsZUNsaWNrT3V0c2lkZSkpfSk7YXN5bmMgdG9nZ2xlQ2FsZW5kYXIoKXtpZighdGhpcy5kaXNhYmxlZClpZih0aGlzLmlzT3BlbmVkPSF0aGlzLmlzT3BlbmVkLHRoaXMuaXNPcGVuZWQpe2xldCBlZT10aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcigiLmlucHV0LWNvbnRhaW5lciIpLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLGJlPXdpbmRvdy5pbm5lckhlaWdodC1lZS5ib3R0b20sTmU9ZWUudG9wO3RoaXMub3BlbnNUb1RvcD1iZTw0MDAmJk5lPmJlLHNldFRpbWVvdXQoKCk9Pntkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsdGhpcy5oYW5kbGVDbGlja091dHNpZGUpfSwwKX1lbHNlIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImNsaWNrIix0aGlzLmhhbmRsZUNsaWNrT3V0c2lkZSl9Z2V0RGF5c0luTW9udGgoKXtsZXQgWj10aGlzLnZpZXdEYXRlLmdldEZ1bGxZZWFyKCksZWU9dGhpcy52aWV3RGF0ZS5nZXRNb250aCgpLGJlPW5ldyBEYXRlKFosZWUsMSksTmU9bmV3IERhdGUoWixlZSsxLDApLEtlPVtdLHl0PXRoaXMud2Vla1N0YXJ0c09uPT09MT9iZS5nZXREYXkoKT09PTA/NjpiZS5nZXREYXkoKS0xOmJlLmdldERheSgpO2ZvcihsZXQgTHQ9eXQ7THQ+MDtMdC0tKUtlLnB1c2gobmV3IERhdGUoWixlZSwxLUx0KSk7Zm9yKGxldCBMdD0xO0x0PD1OZS5nZXREYXRlKCk7THQrKylLZS5wdXNoKG5ldyBEYXRlKFosZWUsTHQpKTtsZXQgbnQ9NDItS2UubGVuZ3RoO2ZvcihsZXQgTHQ9MTtMdDw9bnQ7THQrKylLZS5wdXNoKG5ldyBEYXRlKFosZWUrMSxMdCkpO3JldHVybiBLZX1pc1RvZGF5KFope2xldCBlZT1uZXcgRGF0ZTtyZXR1cm4gWi5nZXREYXRlKCk9PT1lZS5nZXREYXRlKCkmJlouZ2V0TW9udGgoKT09PWVlLmdldE1vbnRoKCkmJlouZ2V0RnVsbFllYXIoKT09PWVlLmdldEZ1bGxZZWFyKCl9aXNTZWxlY3RlZChaKXtyZXR1cm4gdGhpcy5zZWxlY3RlZERhdGU/Wi5nZXREYXRlKCk9PT10aGlzLnNlbGVjdGVkRGF0ZS5nZXREYXRlKCkmJlouZ2V0TW9udGgoKT09PXRoaXMuc2VsZWN0ZWREYXRlLmdldE1vbnRoKCkmJlouZ2V0RnVsbFllYXIoKT09PXRoaXMuc2VsZWN0ZWREYXRlLmdldEZ1bGxZZWFyKCk6ITF9aXNEaXNhYmxlZChaKXtpZih0aGlzLm1pbkRhdGUpe2xldCBlZT1uZXcgRGF0ZSh0aGlzLm1pbkRhdGUpO2lmKFo8ZWUpcmV0dXJuITB9aWYodGhpcy5tYXhEYXRlKXtsZXQgZWU9bmV3IERhdGUodGhpcy5tYXhEYXRlKTtpZihaPmVlKXJldHVybiEwfXJldHVybiB0aGlzLmRpc2FibGVkRGF0ZXMmJnRoaXMuZGlzYWJsZWREYXRlcy5sZW5ndGg+MD90aGlzLmRpc2FibGVkRGF0ZXMuc29tZShlZT0+e3RyeXtsZXQgYmU9bmV3IERhdGUoZWUpO3JldHVybiBaLmdldERhdGUoKT09PWJlLmdldERhdGUoKSYmWi5nZXRNb250aCgpPT09YmUuZ2V0TW9udGgoKSYmWi5nZXRGdWxsWWVhcigpPT09YmUuZ2V0RnVsbFllYXIoKX1jYXRjaHtyZXR1cm4hMX19KTohMX1nZXRFdmVudHNGb3JEYXRlKFope2lmKCF0aGlzLmV2ZW50c3x8dGhpcy5ldmVudHMubGVuZ3RoPT09MClyZXR1cm5bXTtsZXQgZWU9YCR7Wi5nZXRGdWxsWWVhcigpfS0keyhaLmdldE1vbnRoKCkrMSkudG9TdHJpbmcoKS5wYWRTdGFydCgyLCIwIil9LSR7Wi5nZXREYXRlKCkudG9TdHJpbmcoKS5wYWRTdGFydCgyLCIwIil9YDtyZXR1cm4gdGhpcy5ldmVudHMuZmlsdGVyKGJlPT5iZS5kYXRlPT09ZWUpfXNlbGVjdERhdGUoWil7dGhpcy5zZWxlY3RlZERhdGU9bmV3IERhdGUoWi5nZXRGdWxsWWVhcigpLFouZ2V0TW9udGgoKSxaLmdldERhdGUoKSx0aGlzLnNlbGVjdGVkSG91cix0aGlzLnNlbGVjdGVkTWludXRlKSx0aGlzLnZhbHVlPXRoaXMuZm9ybWF0VmFsdWVXaXRoVGltZXpvbmUodGhpcy5zZWxlY3RlZERhdGUpLHRoaXMuY2hhbmdlU3ViamVjdC5uZXh0KHRoaXMpLHRoaXMuZW5hYmxlVGltZXx8KHRoaXMuaXNPcGVuZWQ9ITEpfXNlbGVjdFRvZGF5KCl7bGV0IFo9bmV3IERhdGU7dGhpcy5zZWxlY3RlZERhdGU9Wix0aGlzLnZpZXdEYXRlPW5ldyBEYXRlKFopLHRoaXMuc2VsZWN0ZWRIb3VyPVouZ2V0SG91cnMoKSx0aGlzLnNlbGVjdGVkTWludXRlPVouZ2V0TWludXRlcygpLHRoaXMudmFsdWU9dGhpcy5mb3JtYXRWYWx1ZVdpdGhUaW1lem9uZSh0aGlzLnNlbGVjdGVkRGF0ZSksdGhpcy5jaGFuZ2VTdWJqZWN0Lm5leHQodGhpcyksdGhpcy5lbmFibGVUaW1lfHwodGhpcy5pc09wZW5lZD0hMSl9Y2xlYXIoKXt0aGlzLnZhbHVlPSIiLHRoaXMuc2VsZWN0ZWREYXRlPW51bGwsdGhpcy5jaGFuZ2VTdWJqZWN0Lm5leHQodGhpcyksdGhpcy5pc09wZW5lZD0hMX1wcmV2aW91c01vbnRoKCl7dGhpcy52aWV3RGF0ZT1uZXcgRGF0ZSh0aGlzLnZpZXdEYXRlLmdldEZ1bGxZZWFyKCksdGhpcy52aWV3RGF0ZS5nZXRNb250aCgpLTEsMSl9bmV4dE1vbnRoKCl7dGhpcy52aWV3RGF0ZT1uZXcgRGF0ZSh0aGlzLnZpZXdEYXRlLmdldEZ1bGxZZWFyKCksdGhpcy52aWV3RGF0ZS5nZXRNb250aCgpKzEsMSl9aGFuZGxlSG91cklucHV0KFope2xldCBlZT1aLnRhcmdldCxiZT1wYXJzZUludChlZS52YWx1ZSl8fDA7dGhpcy50aW1lRm9ybWF0PT09IjEyaCI/KGJlPU1hdGgubWF4KDEsTWF0aC5taW4oMTIsYmUpKSx0aGlzLnNlbGVjdGVkSG91cj49MTImJmJlIT09MTI/dGhpcy5zZWxlY3RlZEhvdXI9YmUrMTI6dGhpcy5zZWxlY3RlZEhvdXI8MTImJmJlPT09MTI/dGhpcy5zZWxlY3RlZEhvdXI9MDp0aGlzLnNlbGVjdGVkSG91cj1iZSk6dGhpcy5zZWxlY3RlZEhvdXI9TWF0aC5tYXgoMCxNYXRoLm1pbigyMyxiZSkpLHRoaXMudXBkYXRlU2VsZWN0ZWREYXRlVGltZSgpfWhhbmRsZU1pbnV0ZUlucHV0KFope2xldCBlZT1aLnRhcmdldCxiZT1wYXJzZUludChlZS52YWx1ZSl8fDA7YmU9TWF0aC5tYXgoMCxNYXRoLm1pbig1OSxiZSkpLHRoaXMubWludXRlSW5jcmVtZW50JiZ0aGlzLm1pbnV0ZUluY3JlbWVudD4xJiYoYmU9TWF0aC5yb3VuZChiZS90aGlzLm1pbnV0ZUluY3JlbWVudCkqdGhpcy5taW51dGVJbmNyZW1lbnQpLHRoaXMuc2VsZWN0ZWRNaW51dGU9YmUsdGhpcy51cGRhdGVTZWxlY3RlZERhdGVUaW1lKCl9c2V0QU1QTShaKXtaPT09ImFtIiYmdGhpcy5zZWxlY3RlZEhvdXI+PTEyP3RoaXMuc2VsZWN0ZWRIb3VyLT0xMjpaPT09InBtIiYmdGhpcy5zZWxlY3RlZEhvdXI8MTImJih0aGlzLnNlbGVjdGVkSG91cis9MTIpLHRoaXMudXBkYXRlU2VsZWN0ZWREYXRlVGltZSgpfXVwZGF0ZVNlbGVjdGVkRGF0ZVRpbWUoKXt0aGlzLnNlbGVjdGVkRGF0ZSYmKHRoaXMuc2VsZWN0ZWREYXRlPW5ldyBEYXRlKHRoaXMuc2VsZWN0ZWREYXRlLmdldEZ1bGxZZWFyKCksdGhpcy5zZWxlY3RlZERhdGUuZ2V0TW9udGgoKSx0aGlzLnNlbGVjdGVkRGF0ZS5nZXREYXRlKCksdGhpcy5zZWxlY3RlZEhvdXIsdGhpcy5zZWxlY3RlZE1pbnV0ZSksdGhpcy52YWx1ZT10aGlzLmZvcm1hdFZhbHVlV2l0aFRpbWV6b25lKHRoaXMuc2VsZWN0ZWREYXRlKSx0aGlzLmNoYW5nZVN1YmplY3QubmV4dCh0aGlzKSl9aGFuZGxlVGltZXpvbmVDaGFuZ2UoWil7bGV0IGVlPVoudGFyZ2V0O3RoaXMudGltZXpvbmU9ZWUudmFsdWUsdGhpcy51cGRhdGVTZWxlY3RlZERhdGVUaW1lKCl9Zm9ybWF0VmFsdWVXaXRoVGltZXpvbmUoWil7aWYoIXRoaXMuZW5hYmxlVGltZXpvbmUpcmV0dXJuIFoudG9JU09TdHJpbmcoKTtsZXQgYmU9bmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoImVuLVVTIix7eWVhcjoibnVtZXJpYyIsbW9udGg6IjItZGlnaXQiLGRheToiMi1kaWdpdCIsaG91cjoiMi1kaWdpdCIsbWludXRlOiIyLWRpZ2l0IixzZWNvbmQ6IjItZGlnaXQiLGhvdXIxMjohMSx0aW1lWm9uZTp0aGlzLnRpbWV6b25lLHRpbWVab25lTmFtZToic2hvcnQifSkuZm9ybWF0VG9QYXJ0cyhaKSxOZT17fTtiZS5mb3JFYWNoKG50PT57TmVbbnQudHlwZV09bnQudmFsdWV9KTtsZXQgS2U9YCR7TmUueWVhcn0tJHtOZS5tb250aH0tJHtOZS5kYXl9VCR7TmUuaG91cn06JHtOZS5taW51dGV9OiR7TmUuc2Vjb25kfWAseXQ9dGhpcy5nZXRUaW1lem9uZU9mZnNldChaLHRoaXMudGltZXpvbmUpO3JldHVybmAke0tlfSR7eXR9YH1nZXRUaW1lem9uZU9mZnNldChaLGVlKXtsZXQgYmU9bmV3IERhdGUoWi50b0xvY2FsZVN0cmluZygiZW4tVVMiLHt0aW1lWm9uZTplZX0pKSxOZT1uZXcgRGF0ZShaLnRvTG9jYWxlU3RyaW5nKCJlbi1VUyIse3RpbWVab25lOiJVVEMifSkpLEtlPShiZS5nZXRUaW1lKCktTmUuZ2V0VGltZSgpKS8oMWUzKjYwKSx5dD1NYXRoLmZsb29yKE1hdGguYWJzKEtlKS82MCksbnQ9TWF0aC5hYnMoS2UpJTYwO3JldHVybmAke0tlPj0wPyIrIjoiLSJ9JHt5dC50b1N0cmluZygpLnBhZFN0YXJ0KDIsIjAiKX06JHtudC50b1N0cmluZygpLnBhZFN0YXJ0KDIsIjAiKX1gfWhhbmRsZUtleWRvd24oWil7Wi5rZXk9PT0iRW50ZXIifHxaLmtleT09PSIgIj8oWi5wcmV2ZW50RGVmYXVsdCgpLHRoaXMudG9nZ2xlQ2FsZW5kYXIoKSk6Wi5rZXk9PT0iRXNjYXBlIiYmdGhpcy5pc09wZW5lZCYmKFoucHJldmVudERlZmF1bHQoKSx0aGlzLmlzT3BlbmVkPSExKX1jbGVhclZhbHVlKFope1ouc3RvcFByb3BhZ2F0aW9uKCksdGhpcy52YWx1ZT0iIix0aGlzLnNlbGVjdGVkRGF0ZT1udWxsLHRoaXMuY2hhbmdlU3ViamVjdC5uZXh0KHRoaXMpfWhhbmRsZU1hbnVhbElucHV0KFope2xldCBiZT1aLnRhcmdldC52YWx1ZS50cmltKCk7aWYoIWJlKXt0aGlzLnZhbHVlPSIiLHRoaXMuc2VsZWN0ZWREYXRlPW51bGw7cmV0dXJufWxldCBOZT10aGlzLnBhcnNlTWFudWFsRGF0ZShiZSk7TmUmJiFpc05hTihOZS5nZXRUaW1lKCkpJiYodGhpcy52YWx1ZT1OZS50b0lTT1N0cmluZygpLHRoaXMuc2VsZWN0ZWREYXRlPU5lLHRoaXMudmlld0RhdGU9bmV3IERhdGUoTmUpLHRoaXMuc2VsZWN0ZWRIb3VyPU5lLmdldEhvdXJzKCksdGhpcy5zZWxlY3RlZE1pbnV0ZT1OZS5nZXRNaW51dGVzKCksdGhpcy5jaGFuZ2VTdWJqZWN0Lm5leHQodGhpcykpfWhhbmRsZUlucHV0Qmx1cihaKXtsZXQgZWU9Wi50YXJnZXQsYmU9ZWUudmFsdWUudHJpbSgpO2lmKCFiZSl7dGhpcy52YWx1ZT0iIix0aGlzLnNlbGVjdGVkRGF0ZT1udWxsLHRoaXMuY2hhbmdlU3ViamVjdC5uZXh0KHRoaXMpO3JldHVybn1sZXQgTmU9dGhpcy5wYXJzZU1hbnVhbERhdGUoYmUpO05lJiYhaXNOYU4oTmUuZ2V0VGltZSgpKT8odGhpcy52YWx1ZT1OZS50b0lTT1N0cmluZygpLHRoaXMuc2VsZWN0ZWREYXRlPU5lLHRoaXMudmlld0RhdGU9bmV3IERhdGUoTmUpLHRoaXMuc2VsZWN0ZWRIb3VyPU5lLmdldEhvdXJzKCksdGhpcy5zZWxlY3RlZE1pbnV0ZT1OZS5nZXRNaW51dGVzKCksdGhpcy5jaGFuZ2VTdWJqZWN0Lm5leHQodGhpcyksZWUudmFsdWU9dGhpcy5mb3JtYXREYXRlKHRoaXMudmFsdWUpKTplZS52YWx1ZT10aGlzLmZvcm1hdERhdGUodGhpcy52YWx1ZSl9cGFyc2VNYW51YWxEYXRlKFope2lmKCFaKXJldHVybiBudWxsO2xldCBlZT1aLnNwbGl0KCIgIiksYmU9ZWVbMF0sTmU9ZWVbMV18fCIiLEtlPW51bGwseXQ9YmUubWF0Y2goL14oXGR7NH0pLShcZHsxLDJ9KS0oXGR7MSwyfSkkLyk7aWYoeXQpe2xldFtudCxMdCxPdCxzZV09eXQ7S2U9bmV3IERhdGUocGFyc2VJbnQoTHQpLHBhcnNlSW50KE90KS0xLHBhcnNlSW50KHNlKSl9aWYoIUtlKXtsZXQgbnQ9YmUubWF0Y2goL14oXGR7MSwyfSlcLihcZHsxLDJ9KVwuKFxkezR9KSQvKTtpZihudCl7bGV0W0x0LE90LHNlLGRlXT1udDtLZT1uZXcgRGF0ZShwYXJzZUludChkZSkscGFyc2VJbnQoc2UpLTEscGFyc2VJbnQoT3QpKX19aWYoIUtlKXtsZXQgbnQ9YmUubWF0Y2goL14oXGR7MSwyfSlcLyhcZHsxLDJ9KVwvKFxkezR9KSQvKTtpZihudCl7bGV0W0x0LE90LHNlLGRlXT1udDtLZT1uZXcgRGF0ZShwYXJzZUludChkZSkscGFyc2VJbnQoT3QpLTEscGFyc2VJbnQoc2UpKX19aWYoIUtlfHxpc05hTihLZS5nZXRUaW1lKCkpKXJldHVybiBudWxsO2lmKE5lKXtsZXQgbnQ9TmUubWF0Y2goL14oXGR7MSwyfSk6KFxkezJ9KSQvKTtpZihudCl7bGV0W0x0LE90LHNlXT1udDtLZS5zZXRIb3VycyhwYXJzZUludChPdCkpLEtlLnNldE1pbnV0ZXMocGFyc2VJbnQoc2UpKX19ZWxzZSBpZighdGhpcy5lbmFibGVUaW1lKXtsZXQgbnQ9bmV3IERhdGU7S2Uuc2V0SG91cnMobnQuZ2V0SG91cnMoKSksS2Uuc2V0TWludXRlcyhudC5nZXRNaW51dGVzKCkpLEtlLnNldFNlY29uZHMoMCksS2Uuc2V0TWlsbGlzZWNvbmRzKDApfXJldHVybiBLZX1nZXRWYWx1ZSgpe3JldHVybiB0aGlzLnZhbHVlfXNldFZhbHVlKFope2lmKHRoaXMudmFsdWU9WixaKXRyeXtsZXQgZWU9bmV3IERhdGUoWik7aXNOYU4oZWUuZ2V0VGltZSgpKXx8KHRoaXMuc2VsZWN0ZWREYXRlPWVlLHRoaXMudmlld0RhdGU9bmV3IERhdGUoZWUpLHRoaXMuc2VsZWN0ZWRIb3VyPWVlLmdldEhvdXJzKCksdGhpcy5zZWxlY3RlZE1pbnV0ZT1lZS5nZXRNaW51dGVzKCkpfWNhdGNoe319c3RhdGlje3JyKGEscil9fTtyZXR1cm4gdGU9YX0pKCl9KTt2YXIgWWx0PWwoKCk9PntHbHQoKX0pO3ZhciBSRXIsQkVyPWwoKCk9PntTZSgpO3phKCk7dDEoKTtSRXI9KCk9PlNgCiAgPHN0eWxlPgogICAgJHtsZWAKICAgICAgLmRlbW8tY29udGFpbmVyIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgZ2FwOiAyNHB4OwogICAgICAgIHBhZGRpbmc6IDI0cHg7CiAgICAgICAgbWF4LXdpZHRoOiAxMjAwcHg7CiAgICAgICAgbWFyZ2luOiAwIGF1dG87CiAgICAgIH0KICAgICAgCiAgICAgIGRlZXMtcGFuZWwgewogICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7CiAgICAgIH0KICAgICAgCiAgICAgIGRlZXMtcGFuZWw6bGFzdC1jaGlsZCB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsKICAgICAgfQogICAgICAKICAgICAgLmhvcml6b250YWwtZ3JvdXAgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDE2cHg7CiAgICAgICAgZmxleC13cmFwOiB3cmFwOwogICAgICB9CiAgICAgIAogICAgICAuaW5wdXQtZ3JvdXAgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBnYXA6IDE2cHg7CiAgICAgIH0KCiAgICAgIC5ncmlkLWxheW91dCB7CiAgICAgICAgZGlzcGxheTogZ3JpZDsKICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7CiAgICAgICAgZ2FwOiAxNnB4OwogICAgICB9CiAgICAgIAogICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHsKICAgICAgICAuZ3JpZC1sYXlvdXQgewogICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7CiAgICAgICAgfQogICAgICB9CiAgICAgIAogICAgICAuaW50ZXJhY3RpdmUtc2VjdGlvbiB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTAgNDAlIDk2LjElKSIsImhzbCgyMTUgMjAuMiUgMTYuOCUpIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgICBwYWRkaW5nOiAxNnB4OwogICAgICAgIG1hcmdpbi10b3A6IDE2cHg7CiAgICAgIH0KICAgICAgCiAgICAgIC5vdXRwdXQtdGV4dCB7CiAgICAgICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTsKICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE1LjMgMjUlIDI2LjclKSIsImhzbCgyMTAgNDAlIDgwJSkiKX07CiAgICAgICAgcGFkZGluZzogOHB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjEwIDQwJSA5OCUpIiwiaHNsKDIxNSAyMC4yJSAxMS44JSkiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgIG1pbi1oZWlnaHQ6IDI0cHg7CiAgICAgIH0KICAgIGB9CiAgPC9zdHlsZT4KICAKICA8ZGl2IGNsYXNzPSJkZW1vLWNvbnRhaW5lciI+CiAgICA8ZGVlcy1kZW1vd3JhcHBlciAucnVuQWZ0ZXJSZW5kZXI9JHthc3luYyBlPT57ZS5xdWVyeVNlbGVjdG9yQWxsKCJkZWVzLWlucHV0LXRleHQiKS5mb3JFYWNoKGE9PnthLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZVN1YmplY3QiLGk9Pntjb25zb2xlLmxvZyhgSW5wdXQgIiR7YS5sYWJlbH0iIGNoYW5nZWQgdG86YCxhLmdldFZhbHVlKCkpfSksYS5hZGRFdmVudExpc3RlbmVyKCJibHVyIiwoKT0+e2NvbnNvbGUubG9nKGBJbnB1dCAiJHthLmxhYmVsfSIgbG9zdCBmb2N1c2ApfSl9KSxlLnF1ZXJ5U2VsZWN0b3IoJ2RlZXMtaW5wdXQtdGV4dFtrZXk9InBhc3N3b3JkIl0nKSYmY29uc29sZS5sb2coIlBhc3N3b3JkIGlucHV0IGluY2x1ZGVzIHZpc2liaWxpdHkgdG9nZ2xlIil9fT4KICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IkJhc2ljIFRleHQgSW5wdXRzIn0gLnN1YnRpdGxlPSR7IlN0YW5kYXJkIHRleHQgaW5wdXRzIHdpdGggbGFiZWxzIGFuZCBkZXNjcmlwdGlvbnMifT4KICAgICAgICA8ZGl2IGNsYXNzPSJpbnB1dC1ncm91cCI+CiAgICAgICAgICA8ZGVlcy1pbnB1dC10ZXh0CiAgICAgICAgICAgIC5sYWJlbD0keyJVc2VybmFtZSJ9CiAgICAgICAgICAgIC52YWx1ZT0keyJqb2huZG9lIn0KICAgICAgICAgICAgLmtleT0keyJ1c2VybmFtZSJ9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LXRleHQ+CgogICAgICAgICAgPGRlZXMtaW5wdXQtdGV4dAogICAgICAgICAgICAubGFiZWw9JHsiRW1haWwgQWRkcmVzcyJ9CiAgICAgICAgICAgIC52YWx1ZT0keyJqb2huQGV4YW1wbGUuY29tIn0KICAgICAgICAgICAgLmRlc2NyaXB0aW9uPSR7IldlIHdpbGwgbmV2ZXIgc2hhcmUgeW91ciBlbWFpbCB3aXRoIGFueW9uZSJ9CiAgICAgICAgICAgIC5rZXk9JHsiZW1haWwifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC10ZXh0PgoKICAgICAgICAgIDxkZWVzLWlucHV0LXRleHQKICAgICAgICAgICAgLmxhYmVsPSR7IlBhc3N3b3JkIn0KICAgICAgICAgICAgLmlzUGFzc3dvcmRCb29sPSR7ITB9CiAgICAgICAgICAgIC52YWx1ZT0keyJzZWNyZXQxMjMifQogICAgICAgICAgICAua2V5PSR7InBhc3N3b3JkIn0KICAgICAgICAgID48L2RlZXMtaW5wdXQtdGV4dD4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgPC9kZWVzLWRlbW93cmFwcGVyPgogICAgCiAgICA8ZGVlcy1kZW1vd3JhcHBlciAucnVuQWZ0ZXJSZW5kZXI9JHthc3luYyBlPT57ZS5xdWVyeVNlbGVjdG9yQWxsKCJkZWVzLWlucHV0LXRleHQiKS5mb3JFYWNoKGk9PntsZXQgbz13aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShpKTtjb25zb2xlLmxvZyhgSG9yaXpvbnRhbCBpbnB1dCAiJHtpLmxhYmVsfSIgZGlzcGxheTpgLG8uZGlzcGxheSl9KTtsZXQgcj1lLnF1ZXJ5U2VsZWN0b3IoJ2RlZXMtaW5wdXQtdGV4dFtrZXk9ImZpcnN0TmFtZSJdJyksYT1lLnF1ZXJ5U2VsZWN0b3IoJ2RlZXMtaW5wdXQtdGV4dFtrZXk9Imxhc3ROYW1lIl0nKTtpZihyJiZhKXtsZXQgaT0oKT0+e2xldCBvPXIuZ2V0VmFsdWUoKSxuPWEuZ2V0VmFsdWUoKTtjb25zb2xlLmxvZyhgRnVsbCBuYW1lOiAke299ICR7bn1gKX07ci5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2VTdWJqZWN0IixpKSxhLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZVN1YmplY3QiLGkpfX19PgogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiSG9yaXpvbnRhbCBMYXlvdXQifSAuc3VidGl0bGU9JHsiTXVsdGlwbGUgaW5wdXRzIGFycmFuZ2VkIGhvcml6b250YWxseSBmb3IgY29tcGFjdCBmb3JtcyJ9PgogICAgICAgIDxkaXYgY2xhc3M9Imhvcml6b250YWwtZ3JvdXAiPgogICAgICAgICAgPGRlZXMtaW5wdXQtdGV4dCAKICAgICAgICAgICAgLmxhYmVsPSR7IkZpcnN0IE5hbWUifSAKICAgICAgICAgICAgLnZhbHVlPSR7IkpvaG4ifSAKICAgICAgICAgICAgLmxheW91dE1vZGU9JHsiaG9yaXpvbnRhbCJ9CiAgICAgICAgICAgIC5rZXk9JHsiZmlyc3ROYW1lIn0KICAgICAgICAgID48L2RlZXMtaW5wdXQtdGV4dD4KICAgICAgICAgIAogICAgICAgICAgPGRlZXMtaW5wdXQtdGV4dCAKICAgICAgICAgICAgLmxhYmVsPSR7Ikxhc3QgTmFtZSJ9IAogICAgICAgICAgICAudmFsdWU9JHsiRG9lIn0gCiAgICAgICAgICAgIC5sYXlvdXRNb2RlPSR7Imhvcml6b250YWwifQogICAgICAgICAgICAua2V5PSR7Imxhc3ROYW1lIn0KICAgICAgICAgID48L2RlZXMtaW5wdXQtdGV4dD4KICAgICAgICAgIAogICAgICAgICAgPGRlZXMtaW5wdXQtdGV4dCAKICAgICAgICAgICAgLmxhYmVsPSR7IkFnZSJ9IAogICAgICAgICAgICAudmFsdWU9JHsiMjgifSAKICAgICAgICAgICAgLmxheW91dE1vZGU9JHsiaG9yaXpvbnRhbCJ9CiAgICAgICAgICAgIC5rZXk9JHsiYWdlIn0KICAgICAgICAgID48L2RlZXMtaW5wdXQtdGV4dD4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgPC9kZWVzLWRlbW93cmFwcGVyPgogICAgCiAgICA8ZGVlcy1kZW1vd3JhcHBlciAucnVuQWZ0ZXJSZW5kZXI9JHthc3luYyBlPT57ZS5xdWVyeVNlbGVjdG9yQWxsKCJkZWVzLWlucHV0LXRleHQiKS5mb3JFYWNoKGE9PntsZXQgaT1hLmxhYmVsUG9zaXRpb247Y29uc29sZS5sb2coYElucHV0ICIke2EubGFiZWx9IiBoYXMgbGFiZWwgcG9zaXRpb246ICR7aX1gKX0pO2xldCByPWUucXVlcnlTZWxlY3RvckFsbCgnZGVlcy1pbnB1dC10ZXh0W2xhYmVsUG9zaXRpb249ImxlZnQiXScpO3IubGVuZ3RoPjAmJmNvbnNvbGUubG9nKGAke3IubGVuZ3RofSBpbnB1dHMgaGF2ZSBsZWZ0LWFsaWduZWQgbGFiZWxzIGZvciBpbmxpbmUgbGF5b3V0YCl9fT4KICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IkxhYmVsIFBvc2l0aW9ucyJ9IC5zdWJ0aXRsZT0keyJEaWZmZXJlbnQgbGFiZWwgcG9zaXRpb25pbmcgb3B0aW9ucyBmb3IgdmFyaW91cyBsYXlvdXRzIn0+CiAgICAgICAgPGRpdiBjbGFzcz0iaW5wdXQtZ3JvdXAiPgogICAgICAgICAgPGRlZXMtaW5wdXQtdGV4dAogICAgICAgICAgICAubGFiZWw9JHsiTGFiZWwgb24gVG9wIChEZWZhdWx0KSJ9CiAgICAgICAgICAgIC52YWx1ZT0keyJTdGFuZGFyZCBsYXlvdXQifQogICAgICAgICAgICAubGFiZWxQb3NpdGlvbj0keyJ0b3AifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC10ZXh0PgoKICAgICAgICAgIDxkZWVzLWlucHV0LXRleHQKICAgICAgICAgICAgLmxhYmVsPSR7IkxhYmVsIG9uIExlZnQifQogICAgICAgICAgICAudmFsdWU9JHsiSW5saW5lIGxhYmVsIn0KICAgICAgICAgICAgLmxhYmVsUG9zaXRpb249JHsibGVmdCJ9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LXRleHQ+CgogICAgICAgICAgPGRpdiBjbGFzcz0iZ3JpZC1sYXlvdXQiPgogICAgICAgICAgPGRlZXMtaW5wdXQtdGV4dCAKICAgICAgICAgICAgLmxhYmVsPSR7IkNpdHkifSAKICAgICAgICAgICAgLnZhbHVlPSR7Ik5ldyBZb3JrIn0gCiAgICAgICAgICAgIC5sYWJlbFBvc2l0aW9uPSR7ImxlZnQifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC10ZXh0PgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1pbnB1dC10ZXh0CiAgICAgICAgICAgIC5sYWJlbD0keyJaSVAgQ29kZSJ9CiAgICAgICAgICAgIC52YWx1ZT0keyIxMDAwMSJ9CiAgICAgICAgICAgIC5sYWJlbFBvc2l0aW9uPSR7ImxlZnQifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC10ZXh0PgogICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2RlZXMtcGFuZWw+CiAgICA8L2RlZXMtZGVtb3dyYXBwZXI+CiAgICAKICAgIDxkZWVzLWRlbW93cmFwcGVyIC5ydW5BZnRlclJlbmRlcj0ke2FzeW5jIGU9PntsZXQgdD1lLnF1ZXJ5U2VsZWN0b3IoImRlZXMtaW5wdXQtdGV4dFtyZXF1aXJlZF0iKSxyPWUucXVlcnlTZWxlY3RvcigiZGVlcy1pbnB1dC10ZXh0W2Rpc2FibGVkXSIpLGE9ZS5xdWVyeVNlbGVjdG9yKCdkZWVzLWlucHV0LXRleHRbdmFsaWRhdGlvblN0YXRlPSJpbnZhbGlkIl0nKTt0JiZ0LmFkZEV2ZW50TGlzdGVuZXIoImJsdXIiLCgpPT57dC5nZXRWYWx1ZSgpfHxjb25zb2xlLmxvZygiUmVxdWlyZWQgZmllbGQgaXMgZW1wdHkhIil9KSxyJiZjb25zb2xlLmxvZygiRGlzYWJsZWQgaW5wdXQgY2Fubm90IGJlIGVkaXRlZCIpLGEmJihjb25zb2xlLmxvZygiRXJyb3IgaW5wdXQgc2hvd3MgdmFsaWRhdGlvbiBtZXNzYWdlOiIsYS52YWxpZGF0aW9uVGV4dCksYS5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2VTdWJqZWN0IiwoKT0+e2xldCBpPWEuZ2V0VmFsdWUoKTtpLmluY2x1ZGVzKCJAIikmJmkuaW5jbHVkZXMoIi4iKSYmKGEudmFsaWRhdGlvblN0YXRlPSJ2YWxpZCIsYS52YWxpZGF0aW9uVGV4dD0iIixjb25zb2xlLmxvZygiRW1haWwgdmFsaWRhdGlvbiBwYXNzZWQhIikpfSkpfX0+CiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyJWYWxpZGF0aW9uICYgU3RhdGVzIn0gLnN1YnRpdGxlPSR7IkRpZmZlcmVudCB2YWxpZGF0aW9uIHN0YXRlcyBhbmQgaW5wdXQgY29uZmlndXJhdGlvbnMifT4KICAgICAgICA8ZGl2IGNsYXNzPSJpbnB1dC1ncm91cCI+CiAgICAgICAgICA8ZGVlcy1pbnB1dC10ZXh0CiAgICAgICAgICAgIC5sYWJlbD0keyJSZXF1aXJlZCBGaWVsZCJ9CiAgICAgICAgICAgIC5yZXF1aXJlZD0keyEwfQogICAgICAgICAgICAua2V5PSR7InJlcXVpcmVkRmllbGQifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC10ZXh0PgoKICAgICAgICAgIDxkZWVzLWlucHV0LXRleHQKICAgICAgICAgICAgLmxhYmVsPSR7IkRpc2FibGVkIEZpZWxkIn0KICAgICAgICAgICAgLnZhbHVlPSR7IkNhbm5vdCBlZGl0IHRoaXMifQogICAgICAgICAgICAuZGlzYWJsZWQ9JHshMH0KICAgICAgICAgID48L2RlZXMtaW5wdXQtdGV4dD4KCiAgICAgICAgICA8ZGVlcy1pbnB1dC10ZXh0CiAgICAgICAgICAgIC5sYWJlbD0keyJGaWVsZCB3aXRoIEVycm9yIn0KICAgICAgICAgICAgLnZhbHVlPSR7ImludmFsaWRAIn0KICAgICAgICAgICAgLnZhbGlkYXRpb25UZXh0PSR7IlBsZWFzZSBlbnRlciBhIHZhbGlkIGVtYWlsIGFkZHJlc3MifQogICAgICAgICAgICAudmFsaWRhdGlvblN0YXRlPSR7ImludmFsaWQifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC10ZXh0PgogICAgICAgIDwvZGl2PgogICAgICA8L2RlZXMtcGFuZWw+CiAgICA8L2RlZXMtZGVtb3dyYXBwZXI+CiAgICAKICAgIDxkZWVzLWRlbW93cmFwcGVyIC5ydW5BZnRlclJlbmRlcj0ke2FzeW5jIGU9PntlLnF1ZXJ5U2VsZWN0b3JBbGwoImRlZXMtaW5wdXQtdGV4dFtpc1Bhc3N3b3JkQm9vbF0iKS5mb3JFYWNoKHI9PntsZXQgYT0oKT0+e2xldCBpPXIuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiaW5wdXQiKTtpJiZjb25zb2xlLmxvZyhgUGFzc3dvcmQgZmllbGQgIiR7ci5sYWJlbH0iIHR5cGU6YCxpLnR5cGUpfTtpZihyLnNoYWRvd1Jvb3Qpe2xldCBpPW5ldyBNdXRhdGlvbk9ic2VydmVyKGEpLG89ci5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoImlucHV0Iik7byYmaS5vYnNlcnZlKG8se2F0dHJpYnV0ZXM6ITAsYXR0cmlidXRlRmlsdGVyOlsidHlwZSJdfSl9fSl9fT4KICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IkFkdmFuY2VkIEZlYXR1cmVzIn0gLnN1YnRpdGxlPSR7IlBhc3N3b3JkIHZpc2liaWxpdHkgdG9nZ2xlIGFuZCBvdGhlciBhZHZhbmNlZCBmZWF0dXJlcyJ9PgogICAgICAgIDxkaXYgY2xhc3M9ImlucHV0LWdyb3VwIj4KICAgICAgICAgIDxkZWVzLWlucHV0LXRleHQKICAgICAgICAgICAgLmxhYmVsPSR7IlBhc3N3b3JkIHdpdGggVG9nZ2xlIn0KICAgICAgICAgICAgLmlzUGFzc3dvcmRCb29sPSR7ITB9CiAgICAgICAgICAgIC52YWx1ZT0keyJteVNlY3VyZVBhc3N3b3JkMTIzIn0KICAgICAgICAgICAgLmRlc2NyaXB0aW9uPSR7IkNsaWNrIHRoZSBleWUgaWNvbiB0byBzaG93L2hpZGUgcGFzc3dvcmQifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC10ZXh0PgoKICAgICAgICAgIDxkZWVzLWlucHV0LXRleHQKICAgICAgICAgICAgLmxhYmVsPSR7IkFQSSBLZXkifQogICAgICAgICAgICAuaXNQYXNzd29yZEJvb2w9JHshMH0KICAgICAgICAgICAgLnZhbHVlPSR7InNrLTEyMzQ1Njc4OTBhYmNkZWYifQogICAgICAgICAgICAuZGVzY3JpcHRpb249JHsiS2VlcCB0aGlzIGtleSBzZWN1cmUgYW5kIG5ldmVyIHNoYXJlIGl0In0KICAgICAgICAgID48L2RlZXMtaW5wdXQtdGV4dD4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgPC9kZWVzLWRlbW93cmFwcGVyPgogICAgCiAgICA8ZGVlcy1kZW1vd3JhcHBlciAucnVuQWZ0ZXJSZW5kZXI9JHthc3luYyBlPT57bGV0IHQ9ZS5xdWVyeVNlbGVjdG9yKCJkZWVzLWlucHV0LXRleHQiKSxyPWUucXVlcnlTZWxlY3RvcigiI3RleHQtaW5wdXQtb3V0cHV0Iik7aWYodCYmcil7dC5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2VTdWJqZWN0IixpPT57bGV0IG89aS5kZXRhaWwuZ2V0VmFsdWUoKTtyLnRleHRDb250ZW50PWBDdXJyZW50IHZhbHVlOiAiJHtvfSJgfSksdC5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsKCk9Pntjb25zb2xlLmxvZygiSW5wdXQgZm9jdXNlZCIpfSksdC5hZGRFdmVudExpc3RlbmVyKCJibHVyIiwoKT0+e2NvbnNvbGUubG9nKCJJbnB1dCBibHVycmVkIil9KTtsZXQgYT0wO3QuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsKCk9PnthKyssY29uc29sZS5sb2coYEtleXByZXNzIGNvdW50OiAke2F9YCl9KX19fT4KICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IkludGVyYWN0aXZlIEV4YW1wbGUifSAuc3VidGl0bGU9JHsiVHJ5IHR5cGluZyBpbiB0aGUgaW5wdXRzIHRvIHNlZSByZWFsLXRpbWUgdmFsdWUgY2hhbmdlcyJ9PgogICAgICAgIDxkZWVzLWlucHV0LXRleHQgCiAgICAgICAgICAubGFiZWw9JHsiRHluYW1pYyBJbnB1dCJ9IAogICAgICAgICAgLnBsYWNlaG9sZGVyPSR7IlR5cGUgc29tZXRoaW5nIGhlcmUuLi4ifQogICAgICAgID48L2RlZXMtaW5wdXQtdGV4dD4KICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJpbnRlcmFjdGl2ZS1zZWN0aW9uIj4KICAgICAgICAgIDxkaXYgaWQ9InRleHQtaW5wdXQtb3V0cHV0IiBjbGFzcz0ib3V0cHV0LXRleHQiPkN1cnJlbnQgdmFsdWU6ICIiPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgIDwvZGVlcy1kZW1vd3JhcHBlcj4KICA8L2Rpdj4KYH0pO3ZhciBfOCxzbixUbGUsczM9bCgoKT0+e1ZuKCk7UGEoKTtCRXIoKTt1bygpO1NlKCk7b3QoKTtfOD1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LHNuPWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSxUbGU9KCgpPT57bGV0IGU9W3plKCJkZWVzLWlucHV0LXRleHQiKV0sdCxyPVtdLGEsaT1odCxvLG49W10scz1bXSxjLGQ9W10sZj1bXSx1LHA9W10saD1bXSxiLHg9W10sZz1bXSx2LHc9W10sTT1bXSxGLEM9W10saz1bXTt2YXIgTj1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0ICQ9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baih7dHlwZTpTdHJpbmcscmVmbGVjdDohMH0pXSxjPVtqKHt0eXBlOkJvb2xlYW4scmVmbGVjdDohMH0pXSx1PVtqKHt0eXBlOkJvb2xlYW4scmVmbGVjdDohMH0pXSxiPVtqKHt0eXBlOkJvb2xlYW4scmVmbGVjdDohMH0pXSx2PVtqKHtyZWZsZWN0OiEwfSldLEY9W2ooe30pXSxfOCh0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InZhbHVlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpJPT4idmFsdWUiaW4gSSxnZXQ6ST0+SS52YWx1ZSxzZXQ6KEksQik9PntJLnZhbHVlPUJ9fSxtZXRhZGF0YTokfSxuLHMpLF84KHRoaXMsbnVsbCxjLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiaXNQYXNzd29yZEJvb2wiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOkk9PiJpc1Bhc3N3b3JkQm9vbCJpbiBJLGdldDpJPT5JLmlzUGFzc3dvcmRCb29sLHNldDooSSxCKT0+e0kuaXNQYXNzd29yZEJvb2w9Qn19LG1ldGFkYXRhOiR9LGQsZiksXzgodGhpcyxudWxsLHUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzaG93UGFzc3dvcmRCb29sIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpJPT4ic2hvd1Bhc3N3b3JkQm9vbCJpbiBJLGdldDpJPT5JLnNob3dQYXNzd29yZEJvb2wsc2V0OihJLEIpPT57SS5zaG93UGFzc3dvcmRCb29sPUJ9fSxtZXRhZGF0YTokfSxwLGgpLF84KHRoaXMsbnVsbCxiLHtraW5kOiJhY2Nlc3NvciIsbmFtZToidmFsaWRhdGlvblN0YXRlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpJPT4idmFsaWRhdGlvblN0YXRlImluIEksZ2V0Okk9PkkudmFsaWRhdGlvblN0YXRlLHNldDooSSxCKT0+e0kudmFsaWRhdGlvblN0YXRlPUJ9fSxtZXRhZGF0YTokfSx4LGcpLF84KHRoaXMsbnVsbCx2LHtraW5kOiJhY2Nlc3NvciIsbmFtZToidmFsaWRhdGlvblRleHQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOkk9PiJ2YWxpZGF0aW9uVGV4dCJpbiBJLGdldDpJPT5JLnZhbGlkYXRpb25UZXh0LHNldDooSSxCKT0+e0kudmFsaWRhdGlvblRleHQ9Qn19LG1ldGFkYXRhOiR9LHcsTSksXzgodGhpcyxudWxsLEYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ2YWxpZGF0aW9uRnVuY3Rpb24iLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOkk9PiJ2YWxpZGF0aW9uRnVuY3Rpb24iaW4gSSxnZXQ6ST0+SS52YWxpZGF0aW9uRnVuY3Rpb24sc2V0OihJLEIpPT57SS52YWxpZGF0aW9uRnVuY3Rpb249Qn19LG1ldGFkYXRhOiR9LEMsayksXzgobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6JH0sbnVsbCxyKSxOPWE9dC52YWx1ZSwkJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOiR9KX1zdGF0aWMgZGVtbz1SRXI7c3RhdGljIGRlbW9Hcm91cHM9WyJJbnB1dCJdOyNlPXNuKHRoaXMsbiwiIik7Z2V0IHZhbHVlKCl7cmV0dXJuIHRoaXMuI2V9c2V0IHZhbHVlKCQpe3RoaXMuI2U9JH0jdD0oc24odGhpcyxzKSxzbih0aGlzLGQsITEpKTtnZXQgaXNQYXNzd29yZEJvb2woKXtyZXR1cm4gdGhpcy4jdH1zZXQgaXNQYXNzd29yZEJvb2woJCl7dGhpcy4jdD0kfSNyPShzbih0aGlzLGYpLHNuKHRoaXMscCwhMSkpO2dldCBzaG93UGFzc3dvcmRCb29sKCl7cmV0dXJuIHRoaXMuI3J9c2V0IHNob3dQYXNzd29yZEJvb2woJCl7dGhpcy4jcj0kfSNhPShzbih0aGlzLGgpLHNuKHRoaXMseCx2b2lkIDApKTtnZXQgdmFsaWRhdGlvblN0YXRlKCl7cmV0dXJuIHRoaXMuI2F9c2V0IHZhbGlkYXRpb25TdGF0ZSgkKXt0aGlzLiNhPSR9I2k9KHNuKHRoaXMsZyksc24odGhpcyx3LCIiKSk7Z2V0IHZhbGlkYXRpb25UZXh0KCl7cmV0dXJuIHRoaXMuI2l9c2V0IHZhbGlkYXRpb25UZXh0KCQpe3RoaXMuI2k9JH0jbz0oc24odGhpcyxNKSxzbih0aGlzLEMsdm9pZCAwKSk7Z2V0IHZhbGlkYXRpb25GdW5jdGlvbigpe3JldHVybiB0aGlzLiNvfXNldCB2YWxpZGF0aW9uRnVuY3Rpb24oJCl7dGhpcy4jbz0kfXN0YXRpYyBzdHlsZXM9W1BlLC4uLmh0LmJhc2VTdHlsZXMsbS5kZWZhdWx0U3R5bGVzLGxlYAogICAgICAvKiBUT0RPOiBNaWdyYXRlIGhhcmRjb2RlZCB2YWx1ZXMgdG8gLS1kZWVzLSogQ1NTIHZhcmlhYmxlcyAqLwogICAgICAqIHsKICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgICB9CgogICAgICA6aG9zdCB7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIHotaW5kZXg6IGF1dG87CiAgICAgICAgZm9udC1mYW1pbHk6ICR7WHJ9OwogICAgICB9CgogICAgICAubWFpbmNvbnRhaW5lciB7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTUlKSIsImhzbCgwIDAlIDkwJSkiKX07CiAgICAgIH0KCiAgICAgIGlucHV0IHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGhlaWdodDogNDBweDsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBwYWRkaW5nOiAwIDEycHg7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAxMDAlKSIsImhzbCgwIDAlIDklKSIpfTsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpOwogICAgICAgIG91dGxpbmU6IG5vbmU7CiAgICAgICAgY3Vyc29yOiB0ZXh0OwogICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMy45JSkiLCJoc2woMCAwJSA5OCUpIil9OwogICAgICB9CgogICAgICBpbnB1dDo6cGxhY2Vob2xkZXIgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNDUuMSUpIiwiaHNsKDAgMCUgNjMuOSUpIil9OwogICAgICB9CgogICAgICBpbnB1dDpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoOmZvY3VzKSB7CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNzkuOCUpIiwiaHNsKDAgMCUgMjAuOSUpIil9OwogICAgICB9CgogICAgICBpbnB1dDpmb2N1cyB7CiAgICAgICAgb3V0bGluZTogbm9uZTsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5JSkiLCJoc2woMCAwJSA5OCUpIil9OwogICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDJweCAke20uYmRUaGVtZSgiaHNsKDAgMCUgOSUgLyAwLjA1KSIsImhzbCgwIDAlIDk4JSAvIDAuMDUpIil9OwogICAgICB9CgogICAgICBpbnB1dDpkaXNhYmxlZCB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk1LjElKSIsImhzbCgwIDAlIDE0LjklKSIpfTsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OS44JSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA0NS4xJSkiLCJoc2woMCAwJSA2My45JSkiKX07CiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsKICAgICAgICBvcGFjaXR5OiAwLjU7CiAgICAgIH0KCiAgICAgIC8qIFBhc3N3b3JkIHRvZ2dsZSBidXR0b24gKi8KICAgICAgLnNob3dQYXNzd29yZCB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHJpZ2h0OiAxcHg7CiAgICAgICAgdG9wOiA1MCU7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICB3aWR0aDogMzhweDsKICAgICAgICBoZWlnaHQ6IDM4cHg7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNDUuMSUpIiwiaHNsKDAgMCUgNjMuOSUpIil9OwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICAgIGJvcmRlci1yYWRpdXM6IDAgNXB4IDVweCAwOwogICAgICB9CgogICAgICAuc2hvd1Bhc3N3b3JkOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOTUuMSUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTUlKSIsImhzbCgwIDAlIDkzLjklKSIpfTsKICAgICAgfQoKICAgICAgLyogVmFsaWRhdGlvbiBzdHlsZXMgKi8KICAgICAgLnZhbGlkYXRpb25Db250YWluZXIgewogICAgICAgIG1hcmdpbi10b3A6IDRweDsKICAgICAgICBwYWRkaW5nOiA0cHggOHB4OwogICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgIH0KCiAgICAgIC52YWxpZGF0aW9uQ29udGFpbmVyLmVycm9yIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgODQuMiUgNjAuMiUgLyAwLjEpIiwiaHNsKDAgNzIuMiUgNTAuNiUgLyAwLjEpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgODQuMiUgNjAuMiUpIiwiaHNsKDAgNzIuMiUgNTAuNiUpIil9OwogICAgICB9CgogICAgICAudmFsaWRhdGlvbkNvbnRhaW5lci53YXJuIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDI1IDk1JSA1MyUgLyAwLjEpIiwiaHNsKDI1IDk1JSA2MyUgLyAwLjEpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDI1IDk1JSA1MyUpIiwiaHNsKDI1IDk1JSA2MyUpIil9OwogICAgICB9CgogICAgICAudmFsaWRhdGlvbkNvbnRhaW5lci52YWxpZCB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgxNDIuMSA3Ni4yJSAzNi4zJSAvIDAuMSkiLCJoc2woMTQyLjEgNzAuNiUgNDUuMyUgLyAwLjEpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDE0Mi4xIDc2LjIlIDM2LjMlKSIsImhzbCgxNDIuMSA3MC42JSA0NS4zJSkiKX07CiAgICAgIH0KCiAgICAgIC8qIEVycm9yIHN0YXRlIGZvciBpbnB1dCAqLwogICAgICA6aG9zdChbdmFsaWRhdGlvbi1zdGF0ZT0iaW52YWxpZCJdKSBpbnB1dCB7CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgODQuMiUgNjAuMiUpIiwiaHNsKDAgNzIuMiUgNTAuNiUpIil9OwogICAgICB9CgogICAgICA6aG9zdChbdmFsaWRhdGlvbi1zdGF0ZT0iaW52YWxpZCJdKSBpbnB1dDpmb2N1cyB7CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgODQuMiUgNjAuMiUpIiwiaHNsKDAgNzIuMiUgNTAuNiUpIil9OwogICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDJweCAke20uYmRUaGVtZSgiaHNsKDAgODQuMiUgNjAuMiUgLyAwLjA1KSIsImhzbCgwIDcyLjIlIDUwLjYlIC8gMC4wNSkiKX07CiAgICAgIH0KCiAgICAgIC8qIFdhcm5pbmcgc3RhdGUgZm9yIGlucHV0ICovCiAgICAgIDpob3N0KFt2YWxpZGF0aW9uLXN0YXRlPSJ3YXJuIl0pIGlucHV0IHsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjUgOTUlIDUzJSkiLCJoc2woMjUgOTUlIDYzJSkiKX07CiAgICAgIH0KCiAgICAgIDpob3N0KFt2YWxpZGF0aW9uLXN0YXRlPSJ3YXJuIl0pIGlucHV0OmZvY3VzIHsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjUgOTUlIDUzJSkiLCJoc2woMjUgOTUlIDYzJSkiKX07CiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICR7bS5iZFRoZW1lKCJoc2woMjUgOTUlIDUzJSAvIDAuMDUpIiwiaHNsKDI1IDk1JSA2MyUgLyAwLjA1KSIpfTsKICAgICAgfQoKICAgICAgLyogVmFsaWQgc3RhdGUgZm9yIGlucHV0ICovCiAgICAgIDpob3N0KFt2YWxpZGF0aW9uLXN0YXRlPSJ2YWxpZCJdKSBpbnB1dCB7CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDE0Mi4xIDc2LjIlIDM2LjMlKSIsImhzbCgxNDIuMSA3MC42JSA0NS4zJSkiKX07CiAgICAgIH0KCiAgICAgIDpob3N0KFt2YWxpZGF0aW9uLXN0YXRlPSJ2YWxpZCJdKSBpbnB1dDpmb2N1cyB7CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDE0Mi4xIDc2LjIlIDM2LjMlKSIsImhzbCgxNDIuMSA3MC42JSA0NS4zJSkiKX07CiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICR7bS5iZFRoZW1lKCJoc2woMTQyLjEgNzYuMiUgMzYuMyUgLyAwLjA1KSIsImhzbCgxNDIuMSA3MC42JSA0NS4zJSAvIDAuMDUpIil9OwogICAgICB9CiAgICBgXTtyZW5kZXIoKXtyZXR1cm4gU2AKICAgICAgPHN0eWxlPgogICAgICAgIGlucHV0IHsKICAgICAgICAgIGZvbnQtZmFtaWx5OiAke3RoaXMuaXNQYXNzd29yZEJvb2w/eTg6ImluaGVyaXQifTsKICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAke3RoaXMuaXNQYXNzd29yZEJvb2w/IjAuNXB4Ijoibm9ybWFsIn07CiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAke3RoaXMuaXNQYXNzd29yZEJvb2w/IjQ4cHgiOiIxMnB4In07CiAgICAgICAgfQogICAgICAgICR7dGhpcy52YWxpZGF0aW9uVGV4dD9sZWAKICAgICAgICAgICAgICAudmFsaWRhdGlvbkNvbnRhaW5lciB7CiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87CiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgYDpsZWAKICAgICAgICAgICAgICAudmFsaWRhdGlvbkNvbnRhaW5lciB7CiAgICAgICAgICAgICAgICBoZWlnaHQ6IDA7CiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7CiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00cHgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgYH0KICAgICAgPC9zdHlsZT4KICAgICAgPGRpdiBjbGFzcz0iaW5wdXQtd3JhcHBlciI+CiAgICAgICAgPGRlZXMtbGFiZWwgLmxhYmVsPSR7dGhpcy5sYWJlbH0gLmRlc2NyaXB0aW9uPSR7dGhpcy5kZXNjcmlwdGlvbn0gLnJlcXVpcmVkPSR7dGhpcy5yZXF1aXJlZH0+PC9kZWVzLWxhYmVsPgogICAgICAgIDxkaXYgY2xhc3M9Im1haW5jb250YWluZXIiPgogICAgICAgICAgPGlucHV0CiAgICAgICAgICAgIHR5cGU9IiR7dGhpcy5pc1Bhc3N3b3JkQm9vbCYmIXRoaXMuc2hvd1Bhc3N3b3JkQm9vbD8icGFzc3dvcmQiOiJ0ZXh0In0iCiAgICAgICAgICAgIC52YWx1ZT0ke3RoaXMudmFsdWV9CiAgICAgICAgICAgIEBpbnB1dD0iJHt0aGlzLnVwZGF0ZVZhbHVlfSIKICAgICAgICAgICAgLmRpc2FibGVkPSR7dGhpcy5kaXNhYmxlZH0KICAgICAgICAgICAgcGxhY2Vob2xkZXI9IiR7dGhpcy5sYWJlbD8iIjoiRW50ZXIgdGV4dC4uLiJ9IgogICAgICAgICAgLz4KICAgICAgICAgICR7dGhpcy5pc1Bhc3N3b3JkQm9vbD9TYAogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2hvd1Bhc3N3b3JkIiBAY2xpY2s9JHt0aGlzLnRvZ2dsZVBhc3N3b3JkVmlld30+CiAgICAgICAgICAgICAgICAgIDxkZWVzLWljb24gLmljb249JHt0aGlzLnNob3dQYXNzd29yZEJvb2w/Imx1Y2lkZTpFeWUiOiJsdWNpZGU6RXllT2ZmIn0+PC9kZWVzLWljb24+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICBgOlNgYH0KICAgICAgICAgICR7dGhpcy52YWxpZGF0aW9uVGV4dD9TYAogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idmFsaWRhdGlvbkNvbnRhaW5lciAke3RoaXMudmFsaWRhdGlvblN0YXRlfHwiZXJyb3IifSI+CiAgICAgICAgICAgICAgICAgICR7dGhpcy52YWxpZGF0aW9uVGV4dH0KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgIGA6U2A8ZGl2IGNsYXNzPSJ2YWxpZGF0aW9uQ29udGFpbmVyIj48L2Rpdj5gfQogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIGB9Zmlyc3RVcGRhdGVkKCl7fWFzeW5jIHVwZGF0ZVZhbHVlKCQpe2xldCBJPSQudGFyZ2V0O3RoaXMudmFsdWU9SS52YWx1ZSx0aGlzLmNoYW5nZVN1YmplY3QubmV4dCh0aGlzKX1nZXRWYWx1ZSgpe3JldHVybiB0aGlzLnZhbHVlfXNldFZhbHVlKCQpe3RoaXMudmFsdWU9JH1hc3luYyB0b2dnbGVQYXNzd29yZFZpZXcoKXt0aGlzLnNob3dQYXNzd29yZEJvb2w9IXRoaXMuc2hvd1Bhc3N3b3JkQm9vbH1hc3luYyBmb2N1cygpe3RoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCJpbnB1dCIpLmZvY3VzKCl9YXN5bmMgYmx1cigpe3RoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCJpbnB1dCIpLmJsdXIoKX1jb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyksc24odGhpcyxrKX1zdGF0aWN7c24oYSxyKX19O3JldHVybiBOPWF9KSgpfSk7dmFyIEhFcixxRXI9bCgoKT0+e1NlKCk7emEoKTt0MSgpO0hFcj0oKT0+U2AKICA8ZGVlcy1kZW1vd3JhcHBlcj4KICAgIDxzdHlsZT4KICAgICAgJHtsZWAKICAgICAgICAuZGVtby1jb250YWluZXIgewogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgICBnYXA6IDI0cHg7CiAgICAgICAgICBwYWRkaW5nOiAyNHB4OwogICAgICAgICAgbWF4LXdpZHRoOiAxMjAwcHg7CiAgICAgICAgICBtYXJnaW46IDAgYXV0bzsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLnByb2R1Y3QtZ3JpZCB7CiAgICAgICAgICBkaXNwbGF5OiBncmlkOwogICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoMjgwcHgsIDFmcikpOwogICAgICAgICAgZ2FwOiAyMHB4OwogICAgICAgIH0KCiAgICAgICAgLmNhcnQtc3VtbWFyeSB7CiAgICAgICAgICBtYXJnaW4tdG9wOiAyNHB4OwogICAgICAgICAgcGFkZGluZzogMjBweDsKICAgICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjEwIDQwJSA5Ni4xJSkiLCJoc2woMjE1IDIwLjIlIDE2LjglKSIpfTsKICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMjE0LjMgMzEuOCUgOTEuNCUpIiwiaHNsKDIxNSAyMC4yJSAyMS44JSkiKX07CiAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7CiAgICAgICAgfQoKICAgICAgICAuY2FydC1zdW1tYXJ5LXRpdGxlIHsKICAgICAgICAgIGZvbnQtc2l6ZTogMThweDsKICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4OwogICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5JSkiLCJoc2woMCAwJSA5NSUpIil9OwogICAgICAgIH0KCiAgICAgICAgLmNhcnQtaXRlbSB7CiAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwogICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICAgIHBhZGRpbmc6IDhweCAwOwogICAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE1LjMgMjUlIDI2LjclKSIsImhzbCgyMTcuOSAxMC42JSA3NC45JSkiKX07CiAgICAgICAgfQoKICAgICAgICAuY2FydC10b3RhbCB7CiAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwogICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICAgIHBhZGRpbmctdG9wOiAxNnB4OwogICAgICAgICAgbWFyZ2luLXRvcDogMTZweDsKICAgICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgICAgZm9udC1zaXplOiAxOHB4OwogICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOSUpIiwiaHNsKDAgMCUgOTUlKSIpfTsKICAgICAgICB9CgogICAgICAgIC5zZWxlY3RlZC1wcm9kdWN0cyB7CiAgICAgICAgICBwYWRkaW5nOiAxNnB4OwogICAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTAgNDAlIDk2LjElKSIsImhzbCgyMTUgMjAuMiUgMTYuOCUpIil9OwogICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE1LjMgMjUlIDI2LjclKSIsImhzbCgyMTcuOSAxMC42JSA3NC45JSkiKX07CiAgICAgICAgfQogICAgICBgfQogICAgPC9zdHlsZT4KICAgIAogICAgPGRpdiBjbGFzcz0iZGVtby1jb250YWluZXIiPgogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiQmFzaWMgUHJvZHVjdCBDYXJkcyJ9IC5zdWJ0aXRsZT0keyJTaW1wbGUgcHJvZHVjdCBkaXNwbGF5IHdpdGggdmFyaW91cyBjb25maWd1cmF0aW9ucyJ9PgogICAgICAgIDxkaXYgY2xhc3M9InByb2R1Y3QtZ3JpZCI+CiAgICAgICAgICA8ZGVlcy1zaG9wcGluZy1wcm9kdWN0Y2FyZAogICAgICAgICAgICAucHJvZHVjdERhdGE9JHt7bmFtZToiV2lyZWxlc3MgQmx1ZXRvb3RoIEhlYWRwaG9uZXMiLGNhdGVnb3J5OiJBdWRpbyIsZGVzY3JpcHRpb246IlByZW1pdW0gc291bmQgcXVhbGl0eSB3aXRoIGFjdGl2ZSBub2lzZSBjYW5jZWxsYXRpb24iLHByaWNlOjE0OS45OSxvcmlnaW5hbFByaWNlOjE5OS45OSxpY29uTmFtZToibHVjaWRlOmhlYWRwaG9uZXMifX0KICAgICAgICAgICAgLnF1YW50aXR5PSR7MX0KICAgICAgICAgID48L2RlZXMtc2hvcHBpbmctcHJvZHVjdGNhcmQ+CgogICAgICAgICAgPGRlZXMtc2hvcHBpbmctcHJvZHVjdGNhcmQKICAgICAgICAgICAgLnByb2R1Y3REYXRhPSR7e25hbWU6IlNtYXJ0IFdhdGNoIFNlcmllcyA3IixjYXRlZ29yeToiV2VhcmFibGVzIixkZXNjcmlwdGlvbjoiVHJhY2sgeW91ciBmaXRuZXNzIGFuZCBzdGF5IGNvbm5lY3RlZCBvbiB0aGUgZ28iLHByaWNlOjM5OSxpY29uTmFtZToibHVjaWRlOndhdGNoIn19CiAgICAgICAgICAgIC5xdWFudGl0eT0kezF9CiAgICAgICAgICA+PC9kZWVzLXNob3BwaW5nLXByb2R1Y3RjYXJkPgoKICAgICAgICAgIDxkZWVzLXNob3BwaW5nLXByb2R1Y3RjYXJkCiAgICAgICAgICAgIC5wcm9kdWN0RGF0YT0ke3tuYW1lOiJVU0ItQyBIdWIiLGNhdGVnb3J5OiJBY2Nlc3NvcmllcyIscHJpY2U6NDkuOTksaWNvbk5hbWU6Imx1Y2lkZTp1c2IiLGluU3RvY2s6ITF9fQogICAgICAgICAgICAucXVhbnRpdHk9JHswfQogICAgICAgICAgPjwvZGVlcy1zaG9wcGluZy1wcm9kdWN0Y2FyZD4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgoKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IkludGVyYWN0aXZlIFNob3BwaW5nIENhcnQifSAuc3VidGl0bGU9JHsiUHJvZHVjdCBjYXJkcyB3aXRoIGR5bmFtaWMgY2FydCBjYWxjdWxhdGlvbiJ9IC5ydW5BZnRlclJlbmRlcj0ke2FzeW5jIGU9PntsZXQgdD1be2lkOiJsYXB0b3AiLGVsZW1lbnQ6bnVsbCxkYXRhOntuYW1lOidNYWNCb29rIFBybyAxNCInLGNhdGVnb3J5OiJDb21wdXRlcnMiLGRlc2NyaXB0aW9uOiJNMyBQcm8gY2hpcCB3aXRoIDE4R0IgUkFNIixwcmljZToxOTk5LG9yaWdpbmFsUHJpY2U6MjE5OSxpY29uTmFtZToibHVjaWRlOmxhcHRvcCJ9fSx7aWQ6ImlwYWQiLGVsZW1lbnQ6bnVsbCxkYXRhOntuYW1lOiJpUGFkIEFpciIsY2F0ZWdvcnk6IlRhYmxldHMiLGRlc2NyaXB0aW9uOicxMC45IiBMaXF1aWQgUmV0aW5hIGRpc3BsYXknLHByaWNlOjU5OSxpY29uTmFtZToibHVjaWRlOnRhYmxldCJ9fSx7aWQ6ImtleWJvYXJkIixlbGVtZW50Om51bGwsZGF0YTp7bmFtZToiTWFnaWMgS2V5Ym9hcmQiLGNhdGVnb3J5OiJBY2Nlc3NvcmllcyIsZGVzY3JpcHRpb246IldpcmVsZXNzIGtleWJvYXJkIHdpdGggVG91Y2ggSUQiLHByaWNlOjE0OSxpY29uTmFtZToibHVjaWRlOmtleWJvYXJkIn19XSxyPSgpPT57bGV0IGE9MCxpPVtdO3QuZm9yRWFjaChuPT57bGV0IHM9ZS5xdWVyeVNlbGVjdG9yKGAjJHtuLmlkfWApO2lmKHMmJnMucXVhbnRpdHk+MCl7bGV0IGM9bi5kYXRhLnByaWNlKnMucXVhbnRpdHk7YSs9YyxpLnB1c2goYAogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FydC1pdGVtIj4KICAgICAgICAgICAgICAgICAgPHNwYW4+JHtuLmRhdGEubmFtZX0gKCR7cy5xdWFudGl0eX0pPC9zcGFuPgogICAgICAgICAgICAgICAgICA8c3Bhbj4kJHtjLnRvRml4ZWQoMil9PC9zcGFuPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgYCl9fSk7bGV0IG89ZS5xdWVyeVNlbGVjdG9yKCIjaW50ZXJhY3RpdmUtY2FydC1zdW1tYXJ5Iik7byYmKG8uaW5uZXJIVE1MPWAKICAgICAgICAgICAgICAke2kuam9pbigiIil9CiAgICAgICAgICAgICAgJHtpLmxlbmd0aD09PTA/JzxkaXYgY2xhc3M9ImNhcnQtaXRlbSIgc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICM5OTk7Ij5Zb3VyIGNhcnQgaXMgZW1wdHk8L2Rpdj4nOiIifQogICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcnQtdG90YWwiPgogICAgICAgICAgICAgICAgPHNwYW4+VG90YWw8L3NwYW4+CiAgICAgICAgICAgICAgICA8c3Bhbj4kJHthLnRvRml4ZWQoMil9PC9zcGFuPgogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICBgKX07c2V0VGltZW91dChyLDEwMCksZS5xdWVyeVNlbGVjdG9yQWxsKCJkZWVzLXNob3BwaW5nLXByb2R1Y3RjYXJkIikuZm9yRWFjaChhPT57YS5hZGRFdmVudExpc3RlbmVyKCJxdWFudGl0eUNoYW5nZSIscil9KX19PgogICAgICAgIDxkaXYgY2xhc3M9InByb2R1Y3QtZ3JpZCI+CiAgICAgICAgICA8ZGVlcy1zaG9wcGluZy1wcm9kdWN0Y2FyZAogICAgICAgICAgICBpZD0ibGFwdG9wIgogICAgICAgICAgICAucHJvZHVjdERhdGE9JHt7bmFtZTonTWFjQm9vayBQcm8gMTQiJyxjYXRlZ29yeToiQ29tcHV0ZXJzIixkZXNjcmlwdGlvbjoiTTMgUHJvIGNoaXAgd2l0aCAxOEdCIFJBTSIscHJpY2U6MTk5OSxvcmlnaW5hbFByaWNlOjIxOTksaWNvbk5hbWU6Imx1Y2lkZTpsYXB0b3AifX0KICAgICAgICAgICAgLnF1YW50aXR5PSR7MX0KICAgICAgICAgID48L2RlZXMtc2hvcHBpbmctcHJvZHVjdGNhcmQ+CgogICAgICAgICAgPGRlZXMtc2hvcHBpbmctcHJvZHVjdGNhcmQKICAgICAgICAgICAgaWQ9ImlwYWQiCiAgICAgICAgICAgIC5wcm9kdWN0RGF0YT0ke3tuYW1lOiJpUGFkIEFpciIsY2F0ZWdvcnk6IlRhYmxldHMiLGRlc2NyaXB0aW9uOicxMC45IiBMaXF1aWQgUmV0aW5hIGRpc3BsYXknLHByaWNlOjU5OSxpY29uTmFtZToibHVjaWRlOnRhYmxldCJ9fQogICAgICAgICAgICAucXVhbnRpdHk9JHswfQogICAgICAgICAgPjwvZGVlcy1zaG9wcGluZy1wcm9kdWN0Y2FyZD4KCiAgICAgICAgICA8ZGVlcy1zaG9wcGluZy1wcm9kdWN0Y2FyZAogICAgICAgICAgICBpZD0ia2V5Ym9hcmQiCiAgICAgICAgICAgIC5wcm9kdWN0RGF0YT0ke3tuYW1lOiJNYWdpYyBLZXlib2FyZCIsY2F0ZWdvcnk6IkFjY2Vzc29yaWVzIixkZXNjcmlwdGlvbjoiV2lyZWxlc3Mga2V5Ym9hcmQgd2l0aCBUb3VjaCBJRCIscHJpY2U6MTQ5LGljb25OYW1lOiJsdWNpZGU6a2V5Ym9hcmQifX0KICAgICAgICAgICAgLnF1YW50aXR5PSR7Mn0KICAgICAgICAgID48L2RlZXMtc2hvcHBpbmctcHJvZHVjdGNhcmQ+CiAgICAgICAgPC9kaXY+CgogICAgICAgIDxkaXYgY2xhc3M9ImNhcnQtc3VtbWFyeSI+CiAgICAgICAgICA8aDMgY2xhc3M9ImNhcnQtc3VtbWFyeS10aXRsZSI+U2hvcHBpbmcgQ2FydDwvaDM+CiAgICAgICAgICA8ZGl2IGlkPSJpbnRlcmFjdGl2ZS1jYXJ0LXN1bW1hcnkiPgogICAgICAgICAgICA8IS0tIER5bmFtaWNhbGx5IHVwZGF0ZWQgLS0+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgoKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IlNlbGVjdGFibGUgUHJvZHVjdCBDYXJkcyJ9IC5zdWJ0aXRsZT0keyJDbGljayBjYXJkcyBvciBjaGVja2JveGVzIHRvIHNlbGVjdCBwcm9kdWN0cyJ9PgogICAgICAgIDxkaXYgY2xhc3M9InByb2R1Y3QtZ3JpZCI+CiAgICAgICAgICA8ZGVlcy1zaG9wcGluZy1wcm9kdWN0Y2FyZAogICAgICAgICAgICAucHJvZHVjdERhdGE9JHt7bmFtZToiU29ueSBBbHBoYSA3IElWIixjYXRlZ29yeToiQ2FtZXJhcyIsZGVzY3JpcHRpb246IkZ1bGwtZnJhbWUgbWlycm9ybGVzcyBjYW1lcmEiLHByaWNlOjI0OTgsaWNvbk5hbWU6Imx1Y2lkZTpjYW1lcmEifX0KICAgICAgICAgICAgLnNlbGVjdGFibGU9JHshMH0KICAgICAgICAgICAgLnNob3dRdWFudGl0eVNlbGVjdG9yPSR7ITF9CiAgICAgICAgICAgIEBzZWxlY3Rpb25DaGFuZ2U9JHtlPT57bGV0IHQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI3NlbGVjdGlvbi1vdXRwdXQiKTtpZih0KXtsZXQgcj1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCJkZWVzLXNob3BwaW5nLXByb2R1Y3RjYXJkW3NlbGVjdGFibGVdIiksYT1bXTtyLmZvckVhY2goaT0+e2kuc2VsZWN0ZWQmJmEucHVzaChpLnByb2R1Y3REYXRhLm5hbWUpfSksdC50ZXh0Q29udGVudD1hLmxlbmd0aD4wP2BTZWxlY3RlZDogJHthLmpvaW4oIiwgIil9YDoiTm8gcHJvZHVjdHMgc2VsZWN0ZWQifX19CiAgICAgICAgICA+PC9kZWVzLXNob3BwaW5nLXByb2R1Y3RjYXJkPgoKICAgICAgICAgIDxkZWVzLXNob3BwaW5nLXByb2R1Y3RjYXJkCiAgICAgICAgICAgIC5wcm9kdWN0RGF0YT0ke3tuYW1lOiJESkkgTWluaSAzIFBybyIsY2F0ZWdvcnk6IkRyb25lcyIsZGVzY3JpcHRpb246IkxpZ2h0d2VpZ2h0IGRyb25lIHdpdGggNEsgY2FtZXJhIixwcmljZTo3NTksaWNvbk5hbWU6Imx1Y2lkZTpwbGFuZSJ9fQogICAgICAgICAgICAuc2VsZWN0YWJsZT0keyEwfQogICAgICAgICAgICAuc2hvd1F1YW50aXR5U2VsZWN0b3I9JHshMX0KICAgICAgICAgICAgQHNlbGVjdGlvbkNoYW5nZT0ke2U9PntsZXQgdD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjc2VsZWN0aW9uLW91dHB1dCIpO2lmKHQpe2xldCByPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoImRlZXMtc2hvcHBpbmctcHJvZHVjdGNhcmRbc2VsZWN0YWJsZV0iKSxhPVtdO3IuZm9yRWFjaChpPT57aS5zZWxlY3RlZCYmYS5wdXNoKGkucHJvZHVjdERhdGEubmFtZSl9KSx0LnRleHRDb250ZW50PWEubGVuZ3RoPjA/YFNlbGVjdGVkOiAke2Euam9pbigiLCAiKX1gOiJObyBwcm9kdWN0cyBzZWxlY3RlZCJ9fX0KICAgICAgICAgID48L2RlZXMtc2hvcHBpbmctcHJvZHVjdGNhcmQ+CgogICAgICAgICAgPGRlZXMtc2hvcHBpbmctcHJvZHVjdGNhcmQKICAgICAgICAgICAgLnByb2R1Y3REYXRhPSR7e25hbWU6IkdvUHJvIEhFUk8xMiIsY2F0ZWdvcnk6IkFjdGlvbiBDYW1lcmFzIixkZXNjcmlwdGlvbjoiNS4zSyB2aWRlbyB3aXRoIEh5cGVyU21vb3RoIDYuMCIscHJpY2U6Mzk5LG9yaWdpbmFsUHJpY2U6NDQ5LGljb25OYW1lOiJsdWNpZGU6dmlkZW8ifX0KICAgICAgICAgICAgLnNlbGVjdGFibGU9JHshMH0KICAgICAgICAgICAgLnNob3dRdWFudGl0eVNlbGVjdG9yPSR7ITF9CiAgICAgICAgICAgIEBzZWxlY3Rpb25DaGFuZ2U9JHtlPT57bGV0IHQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI3NlbGVjdGlvbi1vdXRwdXQiKTtpZih0KXtsZXQgcj1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCJkZWVzLXNob3BwaW5nLXByb2R1Y3RjYXJkW3NlbGVjdGFibGVdIiksYT1bXTtyLmZvckVhY2goaT0+e2kuc2VsZWN0ZWQmJmEucHVzaChpLnByb2R1Y3REYXRhLm5hbWUpfSksdC50ZXh0Q29udGVudD1hLmxlbmd0aD4wP2BTZWxlY3RlZDogJHthLmpvaW4oIiwgIil9YDoiTm8gcHJvZHVjdHMgc2VsZWN0ZWQifX19CiAgICAgICAgICA+PC9kZWVzLXNob3BwaW5nLXByb2R1Y3RjYXJkPgogICAgICAgIDwvZGl2PgogICAgICAgIAogICAgICAgIDxkaXYgY2xhc3M9InNlbGVjdGVkLXByb2R1Y3RzIiBpZD0ic2VsZWN0aW9uLW91dHB1dCIgc3R5bGU9Im1hcmdpbi10b3A6IDE2cHg7Ij4KICAgICAgICAgIE5vIHByb2R1Y3RzIHNlbGVjdGVkCiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGVlcy1wYW5lbD4KCiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyJQcm9kdWN0IFZhcmlhdGlvbnMifSAuc3VidGl0bGU9JHsiRGlmZmVyZW50IHN0YXRlcyBhbmQgY29uZmlndXJhdGlvbnMifT4KICAgICAgICA8ZGl2IGNsYXNzPSJwcm9kdWN0LWdyaWQiPgogICAgICAgICAgPGRlZXMtc2hvcHBpbmctcHJvZHVjdGNhcmQKICAgICAgICAgICAgLnByb2R1Y3REYXRhPSR7e25hbWU6IkxpbWl0ZWQgRWRpdGlvbiBTbmVha2VycyIsY2F0ZWdvcnk6IkZvb3R3ZWFyIixkZXNjcmlwdGlvbjoiRXhjbHVzaXZlIGNvbG9yd2F5IC0gT25seSA1MDAgcGFpcnMiLHByaWNlOjI5OSxpY29uTmFtZToibHVjaWRlOmZvb3RwcmludHMiLGluU3RvY2s6ITEsc3RvY2tUZXh0OiJTb2xkIE91dCJ9fQogICAgICAgICAgICAucXVhbnRpdHk9JHswfQogICAgICAgICAgPjwvZGVlcy1zaG9wcGluZy1wcm9kdWN0Y2FyZD4KCiAgICAgICAgICA8ZGVlcy1zaG9wcGluZy1wcm9kdWN0Y2FyZAogICAgICAgICAgICAucHJvZHVjdERhdGE9JHt7bmFtZToiTWluaW1hbGlzdCBXYWxsZXQiLHByaWNlOjM5Ljk5LGljb25OYW1lOiJsdWNpZGU6d2FsbGV0In19CiAgICAgICAgICAgIC5xdWFudGl0eT0kezF9CiAgICAgICAgICA+PC9kZWVzLXNob3BwaW5nLXByb2R1Y3RjYXJkPgoKICAgICAgICAgIDxkZWVzLXNob3BwaW5nLXByb2R1Y3RjYXJkCiAgICAgICAgICAgIC5wcm9kdWN0RGF0YT0ke3tuYW1lOiJQcmVtaXVtIENvZmZlZSBCZWFucyIsY2F0ZWdvcnk6IkZvb2QgJiBCZXZlcmFnZSIsZGVzY3JpcHRpb246IlNpbmdsZSBvcmlnaW4sIG1lZGl1bSByb2FzdCIscHJpY2U6MTguNSxpY29uTmFtZToibHVjaWRlOmNvZmZlZSIsY3VycmVuY3k6Ilx1MjBBQyJ9fQogICAgICAgICAgICAucXVhbnRpdHk9JHsyfQogICAgICAgICAgPjwvZGVlcy1zaG9wcGluZy1wcm9kdWN0Y2FyZD4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgPC9kaXY+CiAgPC9kZWVzLWRlbW93cmFwcGVyPgpgfSk7dmFyIFY5LEZzLGpFcixabHQ9bCgoKT0+e1NlKCk7cUVyKCk7b3QoKTtWOT1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LEZzPWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSxqRXI9KCgpPT57bGV0IGU9W3plKCJkZWVzLXNob3BwaW5nLXByb2R1Y3RjYXJkIildLHQscj1bXSxhLGk9RGUsbyxuPVtdLHM9W10sYyxkPVtdLGY9W10sdSxwPVtdLGg9W10sYix4PVtdLGc9W10sdix3PVtdLE09W107dmFyIEY9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCBDPXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO289W2ooe3R5cGU6T2JqZWN0fSldLGM9W2ooe3R5cGU6TnVtYmVyfSldLHU9W2ooe3R5cGU6Qm9vbGVhbn0pXSxiPVtqKHt0eXBlOkJvb2xlYW59KV0sdj1baih7dHlwZTpCb29sZWFufSldLFY5KHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToicHJvZHVjdERhdGEiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOms9PiJwcm9kdWN0RGF0YSJpbiBrLGdldDprPT5rLnByb2R1Y3REYXRhLHNldDooayxOKT0+e2sucHJvZHVjdERhdGE9Tn19LG1ldGFkYXRhOkN9LG4scyksVjkodGhpcyxudWxsLGMse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJxdWFudGl0eSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6az0+InF1YW50aXR5ImluIGssZ2V0Oms9PmsucXVhbnRpdHksc2V0OihrLE4pPT57ay5xdWFudGl0eT1OfX0sbWV0YWRhdGE6Q30sZCxmKSxWOSh0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNob3dRdWFudGl0eVNlbGVjdG9yIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczprPT4ic2hvd1F1YW50aXR5U2VsZWN0b3IiaW4gayxnZXQ6az0+ay5zaG93UXVhbnRpdHlTZWxlY3RvcixzZXQ6KGssTik9PntrLnNob3dRdWFudGl0eVNlbGVjdG9yPU59fSxtZXRhZGF0YTpDfSxwLGgpLFY5KHRoaXMsbnVsbCxiLHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2VsZWN0YWJsZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6az0+InNlbGVjdGFibGUiaW4gayxnZXQ6az0+ay5zZWxlY3RhYmxlLHNldDooayxOKT0+e2suc2VsZWN0YWJsZT1OfX0sbWV0YWRhdGE6Q30seCxnKSxWOSh0aGlzLG51bGwsdix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNlbGVjdGVkIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczprPT4ic2VsZWN0ZWQiaW4gayxnZXQ6az0+ay5zZWxlY3RlZCxzZXQ6KGssTik9PntrLnNlbGVjdGVkPU59fSxtZXRhZGF0YTpDfSx3LE0pLFY5KG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOkN9LG51bGwsciksRj1hPXQudmFsdWUsQyYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpDfSl9c3RhdGljIGRlbW89SEVyO3N0YXRpYyBkZW1vR3JvdXBzPVsiU2ltcGxlIl07I2U9RnModGhpcyxuLHtuYW1lOiJQcm9kdWN0IE5hbWUiLHByaWNlOjB9KTtnZXQgcHJvZHVjdERhdGEoKXtyZXR1cm4gdGhpcy4jZX1zZXQgcHJvZHVjdERhdGEoQyl7dGhpcy4jZT1DfSN0PShGcyh0aGlzLHMpLEZzKHRoaXMsZCwwKSk7Z2V0IHF1YW50aXR5KCl7cmV0dXJuIHRoaXMuI3R9c2V0IHF1YW50aXR5KEMpe3RoaXMuI3Q9Q30jcj0oRnModGhpcyxmKSxGcyh0aGlzLHAsITApKTtnZXQgc2hvd1F1YW50aXR5U2VsZWN0b3IoKXtyZXR1cm4gdGhpcy4jcn1zZXQgc2hvd1F1YW50aXR5U2VsZWN0b3IoQyl7dGhpcy4jcj1DfSNhPShGcyh0aGlzLGgpLEZzKHRoaXMseCwhMSkpO2dldCBzZWxlY3RhYmxlKCl7cmV0dXJuIHRoaXMuI2F9c2V0IHNlbGVjdGFibGUoQyl7dGhpcy4jYT1DfSNpPShGcyh0aGlzLGcpLEZzKHRoaXMsdywhMSkpO2dldCBzZWxlY3RlZCgpe3JldHVybiB0aGlzLiNpfXNldCBzZWxlY3RlZChDKXt0aGlzLiNpPUN9c3RhdGljIHN0eWxlcz1bUGUsbS5kZWZhdWx0U3R5bGVzLGxlYAogICAgICAvKiBUT0RPOiBNaWdyYXRlIGhhcmRjb2RlZCB2YWx1ZXMgdG8gLS1kZWVzLSogQ1NTIHZhcmlhYmxlcyAqLwogICAgICA6aG9zdCB7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgIH0KCiAgICAgIC5wcm9kdWN0LWNhcmQgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAxMDAlKSIsImhzbCgyMTUgMjAuMiUgMTEuOCUpIil9OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OS44JSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4OwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgfQoKICAgICAgLnByb2R1Y3QtY2FyZDpob3ZlciB7CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNzkuOCUpIiwiaHNsKDAgMCUgMjAuOSUpIil9OwogICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDZweCAtMXB4IGhzbCgwIDAlIDAlIC8gMC4xKSwgMCAycHggNHB4IC0ycHggaHNsKDAgMCUgMCUgLyAwLjEpOwogICAgICB9CgogICAgICAucHJvZHVjdC1jYXJkLnNlbGVjdGFibGUgewogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgfQoKICAgICAgLnByb2R1Y3QtY2FyZC5zZWxlY3RlZCB7CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNy4yIDkxLjIlIDU5LjglKSIsImhzbCgyMTMuMSA5My45JSA2Ny44JSkiKX07CiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgM3B4ICR7bS5iZFRoZW1lKCJoc2woMjE3LjIgOTEuMiUgNTkuOCUgLyAwLjEpIiwiaHNsKDIxMy4xIDkzLjklIDY3LjglIC8gMC4xKSIpfTsKICAgICAgfQoKICAgICAgLnByb2R1Y3QtaW1hZ2UgewogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGhlaWdodDogMTgwcHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTAgNDAlIDk2LjElKSIsImhzbCgyMTUgMjAuMiUgMTYuOCUpIil9OwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgfQoKICAgICAgLnByb2R1Y3QtaW1hZ2UgaW1nIHsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7CiAgICAgIH0KCiAgICAgIC5wcm9kdWN0LWltYWdlIGRlZXMtaWNvbiB7CiAgICAgICAgZm9udC1zaXplOiA0OHB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNSAyMC4yJSA2NS4xJSkiLCJoc2woMjE1IDIwLjIlIDM1LjElKSIpfTsKICAgICAgfQoKICAgICAgLnNlbGVjdGlvbi1jaGVja2JveCB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHRvcDogMTJweDsKICAgICAgICByaWdodDogMTJweDsKICAgICAgICB3aWR0aDogMjBweDsKICAgICAgICBoZWlnaHQ6IDIwcHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDEwMCUpIiwiaHNsKDIxNSAzMCUgNi44JSkiKX07CiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJHttLmJkVGhlbWUoImhzbCgyMTUgMjAuMiUgNjUuMSUpIiwiaHNsKDIxNSAyMC4yJSAzNS4xJSkiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlOwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgfQoKICAgICAgLnNlbGVjdGlvbi1jaGVja2JveC5jaGVja2VkIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDIxNy4yIDkxLjIlIDU5LjglKSIsImhzbCgyMTMuMSA5My45JSA2Ny44JSkiKX07CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNy4yIDkxLjIlIDU5LjglKSIsImhzbCgyMTMuMSA5My45JSA2Ny44JSkiKX07CiAgICAgIH0KCiAgICAgIC5zZWxlY3Rpb24tY2hlY2tib3ggZGVlcy1pY29uIHsKICAgICAgICBjb2xvcjogd2hpdGU7CiAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlOwogICAgICB9CgogICAgICAuc2VsZWN0aW9uLWNoZWNrYm94LmNoZWNrZWQgZGVlcy1pY29uIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7CiAgICAgIH0KCiAgICAgIC5wcm9kdWN0LWNvbnRlbnQgewogICAgICAgIHBhZGRpbmc6IDE2cHg7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGdhcDogMTJweDsKICAgICAgICBmbGV4OiAxOwogICAgICB9CiAgICAgIAogICAgICAucHJvZHVjdC1oZWFkZXIgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBnYXA6IDRweDsKICAgICAgfQoKICAgICAgLnByb2R1Y3QtY2F0ZWdvcnkgewogICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNS40IDE2LjMlIDU2LjklKSIsImhzbCgyMTUgMjAuMiUgNTUuMSUpIil9OwogICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7CiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTsKICAgICAgICBsaW5lLWhlaWdodDogMS4zOwogICAgICB9CiAgICAgIAogICAgICAucHJvZHVjdC1uYW1lIHsKICAgICAgICBmb250LXNpemU6IDE2cHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDklKSIsImhzbCgwIDAlIDk1JSkiKX07CiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDsKICAgICAgfQoKICAgICAgLnByb2R1Y3QtZGVzY3JpcHRpb24gewogICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuNCAxNi4zJSA0Ni45JSkiLCJoc2woMjE1IDIwLjIlIDY1LjElKSIpfTsKICAgICAgICBsaW5lLWhlaWdodDogMS41OwogICAgICAgIGZsZXg6IDE7CiAgICAgIH0KICAgICAgCiAgICAgIC5wcm9kdWN0LWZvb3RlciB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICAgICAgICBnYXA6IDE2cHg7CiAgICAgICAgcGFkZGluZy10b3A6IDEycHg7CiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OS44JSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgIH0KCiAgICAgIC5wcm9kdWN0LXByaWNlIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgZ2FwOiAycHg7CiAgICAgIH0KCiAgICAgIC5wcmljZS1jdXJyZW50IHsKICAgICAgICBmb250LXNpemU6IDIwcHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDklKSIsImhzbCgwIDAlIDk1JSkiKX07CiAgICAgIH0KCiAgICAgIC5wcmljZS1vcmlnaW5hbCB7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNS40IDE2LjMlIDU2LjklKSIsImhzbCgyMTUgMjAuMiUgNTUuMSUpIil9OwogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoOwogICAgICB9CgogICAgICAuc3RvY2stc3RhdHVzIHsKICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogNHB4OwogICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICBtYXJnaW4tdG9wOiA4cHg7CiAgICAgIH0KCiAgICAgIC5zdG9jay1zdGF0dXMuaW4tc3RvY2sgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDE0Mi4xIDcwLjYlIDQ1LjMlKSIsImhzbCgxNDIuMSA3Ni4yJSAzNi4zJSkiKX07CiAgICAgIH0KCiAgICAgIC5zdG9jay1zdGF0dXMub3V0LW9mLXN0b2NrIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDcyLjIlIDUwLjYlKSIsImhzbCgwIDYyLjglIDMwLjYlKSIpfTsKICAgICAgfQoKICAgICAgLnN0b2NrLXN0YXR1cyBkZWVzLWljb24gewogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgfQogICAgYF07cmVuZGVyKCl7bGV0e25hbWU6QyxjYXRlZ29yeTprLGRlc2NyaXB0aW9uOk4scHJpY2U6JCxvcmlnaW5hbFByaWNlOkksY3VycmVuY3k6Qj0iJCIsaW5TdG9jazp6PSEwLHN0b2NrVGV4dDp5PXo/IkluIFN0b2NrIjoiT3V0IG9mIFN0b2NrIixpbWFnZVVybDpFLGljb25OYW1lOl89Imx1Y2lkZTpwYWNrYWdlIn09dGhpcy5wcm9kdWN0RGF0YSxQPVY9PmAke0J9JHtWLnRvRml4ZWQoMil9YDtyZXR1cm4gU2AKICAgICAgPGRpdiAKICAgICAgICBjbGFzcz0icHJvZHVjdC1jYXJkICR7dGhpcy5zZWxlY3RhYmxlPyJzZWxlY3RhYmxlIjoiIn0gJHt0aGlzLnNlbGVjdGVkPyJzZWxlY3RlZCI6IiJ9IgogICAgICAgIEBjbGljaz0ke3RoaXMuaGFuZGxlQ2FyZENsaWNrfQogICAgICA+CiAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1pbWFnZSI+CiAgICAgICAgICAke0U/U2AKICAgICAgICAgICAgPGltZyBzcmM9IiR7RX0iIGFsdD0iJHtDfSI+CiAgICAgICAgICBgOlNgCiAgICAgICAgICAgIDxkZWVzLWljb24gLmljb249JHtffT48L2RlZXMtaWNvbj4KICAgICAgICAgIGB9CiAgICAgICAgICAke3RoaXMuc2VsZWN0YWJsZT9TYAogICAgICAgICAgICA8ZGl2IAogICAgICAgICAgICAgIGNsYXNzPSJzZWxlY3Rpb24tY2hlY2tib3ggJHt0aGlzLnNlbGVjdGVkPyJjaGVja2VkIjoiIn0iCiAgICAgICAgICAgICAgQGNsaWNrPSR7Vj0+e1Yuc3RvcFByb3BhZ2F0aW9uKCksdGhpcy5oYW5kbGVTZWxlY3Rpb25Ub2dnbGUoKX19CiAgICAgICAgICAgID4KICAgICAgICAgICAgICA8ZGVlcy1pY29uIC5pY29uPSR7Imx1Y2lkZTpjaGVjayJ9PjwvZGVlcy1pY29uPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIGA6IiJ9CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1jb250ZW50Ij4KICAgICAgICAgIDxkaXYgY2xhc3M9InByb2R1Y3QtaGVhZGVyIj4KICAgICAgICAgICAgJHtrP1NgPGRpdiBjbGFzcz0icHJvZHVjdC1jYXRlZ29yeSI+JHtrfTwvZGl2PmA6IiJ9CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InByb2R1Y3QtbmFtZSI+JHtDfTwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICAke04/U2AKICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1kZXNjcmlwdGlvbiI+JHtOfTwvZGl2PgogICAgICAgICAgYDoiIn0KICAgICAgICAgIDxkaXYgY2xhc3M9InN0b2NrLXN0YXR1cyAke3o/ImluLXN0b2NrIjoib3V0LW9mLXN0b2NrIn0iPgogICAgICAgICAgICA8ZGVlcy1pY29uIC5pY29uPSR7ej8ibHVjaWRlOmNoZWNrLWNpcmNsZSI6Imx1Y2lkZTp4LWNpcmNsZSJ9PjwvZGVlcy1pY29uPgogICAgICAgICAgICAke3l9CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9InByb2R1Y3QtZm9vdGVyIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1wcmljZSI+CiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InByaWNlLWN1cnJlbnQiPiR7UCgkKX08L3NwYW4+CiAgICAgICAgICAgICAgJHtJJiZJPiQ/U2AKICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJwcmljZS1vcmlnaW5hbCI+JHtQKEkpfTwvc3Bhbj4KICAgICAgICAgICAgICBgOiIifQogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgJHt0aGlzLnNob3dRdWFudGl0eVNlbGVjdG9yP1NgCiAgICAgICAgICAgICAgPGRlZXMtaW5wdXQtcXVhbnRpdHlzZWxlY3RvcgogICAgICAgICAgICAgICAgLnZhbHVlPSR7dGhpcy5xdWFudGl0eX0KICAgICAgICAgICAgICAgIEBjaGFuZ2VTdWJqZWN0PSR7Vj0+e3RoaXMucXVhbnRpdHk9Vi5kZXRhaWwuZ2V0VmFsdWUoKSx0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJxdWFudGl0eUNoYW5nZSIse2RldGFpbDp7cXVhbnRpdHk6dGhpcy5xdWFudGl0eSxwcm9kdWN0RGF0YTp0aGlzLnByb2R1Y3REYXRhfSxidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpfX0KICAgICAgICAgICAgICA+PC9kZWVzLWlucHV0LXF1YW50aXR5c2VsZWN0b3I+CiAgICAgICAgICAgIGA6IiJ9CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICBgfWhhbmRsZUNhcmRDbGljaygpe3RoaXMuc2VsZWN0YWJsZSYmKHRoaXMuc2VsZWN0ZWQ9IXRoaXMuc2VsZWN0ZWQsdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgic2VsZWN0aW9uQ2hhbmdlIix7ZGV0YWlsOntzZWxlY3RlZDp0aGlzLnNlbGVjdGVkLHByb2R1Y3REYXRhOnRoaXMucHJvZHVjdERhdGF9LGJ1YmJsZXM6ITAsY29tcG9zZWQ6ITB9KSkpfWhhbmRsZVNlbGVjdGlvblRvZ2dsZSgpe3RoaXMuc2VsZWN0ZWQ9IXRoaXMuc2VsZWN0ZWQsdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgic2VsZWN0aW9uQ2hhbmdlIix7ZGV0YWlsOntzZWxlY3RlZDp0aGlzLnNlbGVjdGVkLHByb2R1Y3REYXRhOnRoaXMucHJvZHVjdERhdGF9LGJ1YmJsZXM6ITAsY29tcG9zZWQ6ITB9KSl9Y29uc3RydWN0b3IoKXtzdXBlciguLi5hcmd1bWVudHMpLEZzKHRoaXMsTSl9c3RhdGlje0ZzKGEscil9fTtyZXR1cm4gRj1hfSkoKX0pO3ZhciBWRXIsVUVyPWwoKCk9PntTZSgpO1psdCgpO1ZFcj0oKT0+U2AKICA8ZGVlcy1kZW1vd3JhcHBlcj4KICAgIDxzdHlsZT4KICAgICAgJHtsZWAKICAgICAgICAuZGVtby1jb250YWluZXIgewogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgICBnYXA6IDI0cHg7CiAgICAgICAgICBwYWRkaW5nOiAyNHB4OwogICAgICAgICAgbWF4LXdpZHRoOiAxMjAwcHg7CiAgICAgICAgICBtYXJnaW46IDAgYXV0bzsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLmlucHV0LWdyb3VwIHsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgICAgZ2FwOiAxNnB4OwogICAgICAgIH0KCiAgICAgICAgLnNob3BwaW5nLWdyaWQgewogICAgICAgICAgZGlzcGxheTogZ3JpZDsKICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDI4MHB4LCAxZnIpKTsKICAgICAgICAgIGdhcDogMjBweDsKICAgICAgICB9CgogICAgICAgIC5jYXJ0LXN1bW1hcnkgewogICAgICAgICAgbWFyZ2luLXRvcDogMjRweDsKICAgICAgICAgIHBhZGRpbmc6IDIwcHg7CiAgICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDIxMCA0MCUgOTYuMSUpIiwiaHNsKDIxNSAyMC4yJSAxNi44JSkiKX07CiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDIxNC4zIDMxLjglIDkxLjQlKSIsImhzbCgyMTUgMjAuMiUgMjEuOCUpIil9OwogICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4OwogICAgICAgIH0KCiAgICAgICAgLmNhcnQtc3VtbWFyeS10aXRsZSB7CiAgICAgICAgICBmb250LXNpemU6IDE4cHg7CiAgICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDsKICAgICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOSUpIiwiaHNsKDAgMCUgOTUlKSIpfTsKICAgICAgICB9CgogICAgICAgIC5jYXJ0LWl0ZW0gewogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgICBwYWRkaW5nOiA4cHggMDsKICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNS4zIDI1JSAyNi43JSkiLCJoc2woMjE3LjkgMTAuNiUgNzQuOSUpIil9OwogICAgICAgIH0KCiAgICAgICAgLmNhcnQtdG90YWwgewogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgICBwYWRkaW5nLXRvcDogMTZweDsKICAgICAgICAgIG1hcmdpbi10b3A6IDE2cHg7CiAgICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgJHttLmJkVGhlbWUoImhzbCgwIDAlIDg5LjglKSIsImhzbCgwIDAlIDE0LjklKSIpfTsKICAgICAgICAgIGZvbnQtc2l6ZTogMThweDsKICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDklKSIsImhzbCgwIDAlIDk1JSkiKX07CiAgICAgICAgfQogICAgICBgfQogICAgPC9zdHlsZT4KICAgIAogICAgPGRpdiBjbGFzcz0iZGVtby1jb250YWluZXIiPgogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiQmFzaWMgUXVhbnRpdHkgU2VsZWN0b3IifSAuc3VidGl0bGU9JHsiU2ltcGxlIHF1YW50aXR5IGlucHV0IHdpdGggaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zIn0+CiAgICAgICAgPGRpdiBjbGFzcz0iaW5wdXQtZ3JvdXAiPgogICAgICAgICAgPGRlZXMtaW5wdXQtcXVhbnRpdHlzZWxlY3RvcgogICAgICAgICAgICAubGFiZWw9JHsiUXVhbnRpdHkifQogICAgICAgICAgICAuZGVzY3JpcHRpb249JHsiU2VsZWN0IHRoZSBkZXNpcmVkIHF1YW50aXR5In0KICAgICAgICAgICAgLnZhbHVlPSR7MX0KICAgICAgICAgID48L2RlZXMtaW5wdXQtcXVhbnRpdHlzZWxlY3Rvcj4KCiAgICAgICAgICA8ZGVlcy1pbnB1dC1xdWFudGl0eXNlbGVjdG9yCiAgICAgICAgICAgIC5sYWJlbD0keyJJdGVtcyBpbiBDYXJ0In0KICAgICAgICAgICAgLmRlc2NyaXB0aW9uPSR7IkFkanVzdCB0aGUgcXVhbnRpdHkgb2YgaXRlbXMifQogICAgICAgICAgICAudmFsdWU9JHszfQogICAgICAgICAgPjwvZGVlcy1pbnB1dC1xdWFudGl0eXNlbGVjdG9yPgogICAgICAgIDwvZGl2PgogICAgICA8L2RlZXMtcGFuZWw+CiAgICAgIAogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiU2hvcHBpbmcgQ2FydCJ9IC5zdWJ0aXRsZT0keyJNb2Rlcm4gZS1jb21tZXJjZSBwcm9kdWN0IGNhcmRzIHdpdGggaW50ZXJhY3RpdmUgcXVhbnRpdHkgc2VsZWN0b3JzIn0gLnJ1bkFmdGVyUmVuZGVyPSR7YXN5bmMgZT0+e2xldCB0PSgpPT57bGV0IHI9ZS5xdWVyeVNlbGVjdG9yKCIjaGVhZHBob25lcy1xdHkiKSxhPWUucXVlcnlTZWxlY3RvcigiI21vdXNlLXF0eSIpLGk9ZS5xdWVyeVNlbGVjdG9yKCIja2V5Ym9hcmQtcXR5Iiksbz1yPy5xdWFudGl0eXx8MCxuPWE/LnF1YW50aXR5fHwwLHM9aT8ucXVhbnRpdHl8fDAsYz0zNDkuOTkqbyxkPTk5Ljk5Km4sZj03OS45OSpzLHU9YytkK2YscD1lLnF1ZXJ5U2VsZWN0b3IoIiNjYXJ0LXN1bW1hcnktY29udGVudCIpO3AmJihwLmlubmVySFRNTD1gCiAgICAgICAgICAgICAgJHtvPjA/YDxkaXYgY2xhc3M9ImNhcnQtaXRlbSI+CiAgICAgICAgICAgICAgICA8c3Bhbj5Tb255IFdILTEwMDBYTTUgKCR7b30pPC9zcGFuPgogICAgICAgICAgICAgICAgPHNwYW4+JCR7Yy50b0ZpeGVkKDIpfTwvc3Bhbj4KICAgICAgICAgICAgICA8L2Rpdj5gOiIifQogICAgICAgICAgICAgICR7bj4wP2A8ZGl2IGNsYXNzPSJjYXJ0LWl0ZW0iPgogICAgICAgICAgICAgICAgPHNwYW4+TG9naXRlY2ggTVggTWFzdGVyIDNTICgke259KTwvc3Bhbj4KICAgICAgICAgICAgICAgIDxzcGFuPiQke2QudG9GaXhlZCgyKX08L3NwYW4+CiAgICAgICAgICAgICAgPC9kaXY+YDoiIn0KICAgICAgICAgICAgICAke3M+MD9gPGRpdiBjbGFzcz0iY2FydC1pdGVtIj4KICAgICAgICAgICAgICAgIDxzcGFuPktleWNocm9uIEsyICgke3N9KTwvc3Bhbj4KICAgICAgICAgICAgICAgIDxzcGFuPiQke2YudG9GaXhlZCgyKX08L3NwYW4+CiAgICAgICAgICAgICAgPC9kaXY+YDoiIn0KICAgICAgICAgICAgICAke3U9PT0wPyc8ZGl2IGNsYXNzPSJjYXJ0LWl0ZW0iIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiAjOTk5OyI+WW91ciBjYXJ0IGlzIGVtcHR5PC9kaXY+JzoiIn0KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJ0LXRvdGFsIj4KICAgICAgICAgICAgICAgIDxzcGFuPlRvdGFsPC9zcGFuPgogICAgICAgICAgICAgICAgPHNwYW4+JCR7dS50b0ZpeGVkKDIpfTwvc3Bhbj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgYCl9O3NldFRpbWVvdXQodCwxMDApLGUucXVlcnlTZWxlY3RvckFsbCgiZGVlcy1zaG9wcGluZy1wcm9kdWN0Y2FyZCIpLmZvckVhY2gocj0+e3IuYWRkRXZlbnRMaXN0ZW5lcigicXVhbnRpdHlDaGFuZ2UiLHQpfSl9fT4KICAgICAgICA8ZGl2IGNsYXNzPSJzaG9wcGluZy1ncmlkIj4KICAgICAgICAgIDxkZWVzLXNob3BwaW5nLXByb2R1Y3RjYXJkCiAgICAgICAgICAgIGlkPSJoZWFkcGhvbmVzLXF0eSIKICAgICAgICAgICAgLnByb2R1Y3REYXRhPSR7e25hbWU6IlNvbnkgV0gtMTAwMFhNNSBXaXJlbGVzcyBIZWFkcGhvbmVzIixjYXRlZ29yeToiQXVkaW8iLGRlc2NyaXB0aW9uOiJJbmR1c3RyeS1sZWFkaW5nIG5vaXNlIGNhbmNlbGluZyB3aXRoIEF1dG8gTkMgT3B0aW1pemVyIixwcmljZTozNDkuOTksb3JpZ2luYWxQcmljZTozOTkuOTksaWNvbk5hbWU6Imx1Y2lkZTpoZWFkcGhvbmVzIn19CiAgICAgICAgICAgIC5xdWFudGl0eT0kezF9CiAgICAgICAgICA+PC9kZWVzLXNob3BwaW5nLXByb2R1Y3RjYXJkPgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1zaG9wcGluZy1wcm9kdWN0Y2FyZAogICAgICAgICAgICBpZD0ibW91c2UtcXR5IgogICAgICAgICAgICAucHJvZHVjdERhdGE9JHt7bmFtZToiTG9naXRlY2ggTVggTWFzdGVyIDNTIixjYXRlZ29yeToiQWNjZXNzb3JpZXMiLGRlc2NyaXB0aW9uOiJQZXJmb3JtYW5jZSB3aXJlbGVzcyBtb3VzZSB3aXRoIHVsdHJhLWZhc3Qgc2Nyb2xsaW5nIixwcmljZTo5OS45OSxpY29uTmFtZToibHVjaWRlOm1vdXNlLXBvaW50ZXIifX0KICAgICAgICAgICAgLnF1YW50aXR5PSR7Mn0KICAgICAgICAgID48L2RlZXMtc2hvcHBpbmctcHJvZHVjdGNhcmQ+CiAgICAgICAgICAKICAgICAgICAgIDxkZWVzLXNob3BwaW5nLXByb2R1Y3RjYXJkCiAgICAgICAgICAgIGlkPSJrZXlib2FyZC1xdHkiCiAgICAgICAgICAgIC5wcm9kdWN0RGF0YT0ke3tuYW1lOiJLZXljaHJvbiBLMiBXaXJlbGVzcyBNZWNoYW5pY2FsIEtleWJvYXJkIixjYXRlZ29yeToiS2V5Ym9hcmRzIixkZXNjcmlwdGlvbjoiQ29tcGFjdCA3NSUgbGF5b3V0IHdpdGggaG90LXN3YXBwYWJsZSBzd2l0Y2hlcyIscHJpY2U6NzkuOTksb3JpZ2luYWxQcmljZTo5NC45OSxpY29uTmFtZToibHVjaWRlOmtleWJvYXJkIn19CiAgICAgICAgICAgIC5xdWFudGl0eT0kezF9CiAgICAgICAgICA+PC9kZWVzLXNob3BwaW5nLXByb2R1Y3RjYXJkPgogICAgICAgIDwvZGl2PgoKICAgICAgICA8ZGl2IGNsYXNzPSJjYXJ0LXN1bW1hcnkiPgogICAgICAgICAgPGgzIGNsYXNzPSJjYXJ0LXN1bW1hcnktdGl0bGUiPk9yZGVyIFN1bW1hcnk8L2gzPgogICAgICAgICAgPGRpdiBpZD0iY2FydC1zdW1tYXJ5LWNvbnRlbnQiPgogICAgICAgICAgICA8IS0tIENvbnRlbnQgd2lsbCBiZSBkeW5hbWljYWxseSB1cGRhdGVkIC0tPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgICAgCiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyJSZXF1aXJlZCAmIERpc2FibGVkIFN0YXRlcyJ9IC5zdWJ0aXRsZT0keyJEaWZmZXJlbnQgc3RhdGVzIGZvciB2YWxpZGF0aW9uIGFuZCByZXN0cmljdGlvbnMifT4KICAgICAgICA8ZGl2IGNsYXNzPSJpbnB1dC1ncm91cCI+CiAgICAgICAgICA8ZGVlcy1pbnB1dC1xdWFudGl0eXNlbGVjdG9yCiAgICAgICAgICAgIC5sYWJlbD0keyJOdW1iZXIgb2YgTGljZW5zZXMifQogICAgICAgICAgICAuZGVzY3JpcHRpb249JHsiU2VsZWN0IGhvdyBtYW55IGxpY2Vuc2VzIHlvdSBuZWVkIn0KICAgICAgICAgICAgLnJlcXVpcmVkPSR7ITB9CiAgICAgICAgICAgIC52YWx1ZT0kezF9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LXF1YW50aXR5c2VsZWN0b3I+CgogICAgICAgICAgPGRlZXMtaW5wdXQtcXVhbnRpdHlzZWxlY3RvcgogICAgICAgICAgICAubGFiZWw9JHsiRml4ZWQgUXVhbnRpdHkifQogICAgICAgICAgICAuZGVzY3JpcHRpb249JHsiVGhpcyBxdWFudGl0eSBjYW5ub3QgYmUgY2hhbmdlZCJ9CiAgICAgICAgICAgIC5kaXNhYmxlZD0keyEwfQogICAgICAgICAgICAudmFsdWU9JHs1fQogICAgICAgICAgPjwvZGVlcy1pbnB1dC1xdWFudGl0eXNlbGVjdG9yPgogICAgICAgIDwvZGl2PgogICAgICA8L2RlZXMtcGFuZWw+CiAgICAgIAogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiT3JkZXIgRm9ybSJ9IC5zdWJ0aXRsZT0keyJDb21wbGV0ZSBvcmRlciBmb3JtIHdpdGggcXVhbnRpdHkgc2VsZWN0aW9uIn0+CiAgICAgICAgPGRlZXMtZm9ybT4KICAgICAgICAgIDxkZWVzLWlucHV0LXRleHQgLmxhYmVsPSR7IkN1c3RvbWVyIE5hbWUifSAucmVxdWlyZWQ9JHshMH0+PC9kZWVzLWlucHV0LXRleHQ+CiAgICAgICAgICA8ZGVlcy1pbnB1dC1kcm9wZG93bgogICAgICAgICAgICAubGFiZWw9JHsiUHJvZHVjdCJ9CiAgICAgICAgICAgIC5vcHRpb25zPSR7WyJCYXNpYyBQbGFuIiwiUHJvIFBsYW4iLCJFbnRlcnByaXNlIFBsYW4iXX0KICAgICAgICAgICAgLnJlcXVpcmVkPSR7ITB9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LWRyb3Bkb3duPgogICAgICAgICAgPGRlZXMtaW5wdXQtcXVhbnRpdHlzZWxlY3RvcgogICAgICAgICAgICAubGFiZWw9JHsiUXVhbnRpdHkifQogICAgICAgICAgICAuZGVzY3JpcHRpb249JHsiTnVtYmVyIG9mIGxpY2Vuc2VzIn0KICAgICAgICAgICAgLnZhbHVlPSR7MX0KICAgICAgICAgID48L2RlZXMtaW5wdXQtcXVhbnRpdHlzZWxlY3Rvcj4KICAgICAgICAgIDxkZWVzLWlucHV0LXRleHQKICAgICAgICAgICAgLmxhYmVsPSR7IlNwZWNpYWwgSW5zdHJ1Y3Rpb25zIn0KICAgICAgICAgICAgLmlucHV0VHlwZT0keyJ0ZXh0YXJlYSJ9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LXRleHQ+CiAgICAgICAgPC9kZWVzLWZvcm0+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgIDwvZGl2PgogIDwvZGVlcy1kZW1vd3JhcHBlcj4KYH0pO3ZhciBXRXIsWGx0LExsZSxRbHQ9bCgoKT0+e1NlKCk7ZXIoKTtQYSgpO1VFcigpO290KCk7V0VyPWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sWGx0PWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSxMbGU9KCgpPT57bGV0IGU9W3plKCJkZWVzLWlucHV0LXF1YW50aXR5c2VsZWN0b3IiKV0sdCxyPVtdLGEsaT1odCxvLG49W10scz1bXTt2YXIgYz1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IGQ9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baih7dHlwZTpOdW1iZXJ9KV0sV0VyKHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToidmFsdWUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmY9PiJ2YWx1ZSJpbiBmLGdldDpmPT5mLnZhbHVlLHNldDooZix1KT0+e2YudmFsdWU9dX19LG1ldGFkYXRhOmR9LG4scyksV0VyKG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOmR9LG51bGwsciksYz1hPXQudmFsdWUsZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpkfSl9c3RhdGljIGRlbW89VkVyO3N0YXRpYyBkZW1vR3JvdXBzPVsiSW5wdXQiXTsjZT1YbHQodGhpcyxuLDEpO2dldCB2YWx1ZSgpe3JldHVybiB0aGlzLiNlfXNldCB2YWx1ZShkKXt0aGlzLiNlPWR9c3RhdGljIHN0eWxlcz1bUGUsLi4uaHQuYmFzZVN0eWxlcyxtLmRlZmF1bHRTdHlsZXMsbGVgCiAgICAgICAgLyogVE9ETzogTWlncmF0ZSBoYXJkY29kZWQgdmFsdWVzIHRvIC0tZGVlcy0qIENTUyB2YXJpYWJsZXMgKi8KICAgICAgICA6aG9zdCB7CiAgICAgICAgICB3aWR0aDogYXV0bzsKICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lOwogICAgICAgIH0KCiAgICAgICAgLnF1YW50aXR5LWNvbnRhaW5lciB7CiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTsKICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OwogICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogICAgICAgICAgaGVpZ2h0OiA0MHB4OwogICAgICAgICAgcGFkZGluZzogMDsKICAgICAgICAgIG1pbi13aWR0aDogMTIwcHg7CiAgICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDklKSIsImhzbCgwIDAlIDk1JSkiKX07CiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLnF1YW50aXR5LWNvbnRhaW5lci5kaXNhYmxlZCB7CiAgICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOTUuMSUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgICAgb3BhY2l0eTogMC41OwogICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgICAgICAgfQoKICAgICAgICAucXVhbnRpdHktY29udGFpbmVyOmhvdmVyOm5vdCguZGlzYWJsZWQpIHsKICAgICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDc5LjglKSIsImhzbCgwIDAlIDIwLjklKSIpfTsKICAgICAgICB9CgogICAgICAgIC5xdWFudGl0eS1jb250YWluZXI6Zm9jdXMtd2l0aGluIHsKICAgICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMjIuMiA0Ny40JSA1MS4yJSkiLCJoc2woMjE3LjIgOTEuMiUgNTkuOCUpIil9OwogICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgM3B4ICR7bS5iZFRoZW1lKCJoc2woMjIyLjIgNDcuNCUgNTEuMiUgLyAwLjEpIiwiaHNsKDIxNy4yIDkxLjIlIDU5LjglIC8gMC4xKSIpfTsKICAgICAgICB9CgogICAgICAgIC5zZWxlY3RvciB7CiAgICAgICAgICBmbGV4OiAwIDAgNDBweDsKICAgICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgICBmb250LXNpemU6IDE2cHg7CiAgICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuNCAxNi4zJSA1Ni45JSkiLCJoc2woMjE1IDIwLjIlIDU1LjElKSIpfTsKICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICB9CgogICAgICAgIC5zZWxlY3Rvcjpob3ZlciB7CiAgICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOTUuMSUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5JSkiLCJoc2woMCAwJSA5NSUpIil9OwogICAgICAgIH0KCiAgICAgICAgLnNlbGVjdG9yOmFjdGl2ZSB7CiAgICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOTElKSIsImhzbCgwIDAlIDExJSkiKX07CiAgICAgICAgfQoKICAgICAgICAuc2VsZWN0b3IubWludXMgewogICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgwIDAlIDg5LjglKSIsImhzbCgwIDAlIDE0LjklKSIpfTsKICAgICAgICB9CgogICAgICAgIC5zZWxlY3Rvci5wbHVzIHsKICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgwIDAlIDg5LjglKSIsImhzbCgwIDAlIDE0LjklKSIpfTsKICAgICAgICB9CgogICAgICAgIC5xdWFudGl0eSB7CiAgICAgICAgICBmbGV4OiAxOwogICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICAgIGZvbnQtdmFyaWFudC1udW1lcmljOiB0YWJ1bGFyLW51bXM7CiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDA2ZW07CiAgICAgICAgfQoKICAgICAgICAvKiBLZXlib2FyZCBuYXZpZ2F0aW9uIGZvY3VzIHN0eWxlcyAqLwogICAgICAgIC5zZWxlY3Rvcjpmb2N1cyB7CiAgICAgICAgICBvdXRsaW5lOiBub25lOwogICAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTAgNDAlIDk2LjElKSIsImhzbCgyMTUgMjAuMiUgMTYuOCUpIil9OwogICAgICAgICAgei1pbmRleDogMTsKICAgICAgICB9CgogICAgICAgIC8qIE1pbiB2YWx1ZSBzdGF0ZSAqLwogICAgICAgIC5xdWFudGl0eS1jb250YWluZXJbZGF0YS1taW49InRydWUiXSAuc2VsZWN0b3IubWludXMgewogICAgICAgICAgb3BhY2l0eTogMC4zOwogICAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsKICAgICAgICB9CgogICAgICAgIC5xdWFudGl0eS1jb250YWluZXJbZGF0YS1taW49InRydWUiXSAuc2VsZWN0b3IubWludXM6aG92ZXIgewogICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuNCAxNi4zJSA1Ni45JSkiLCJoc2woMjE1IDIwLjIlIDU1LjElKSIpfTsKICAgICAgICB9CgogICAgYF07cmVuZGVyKCl7cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9ImlucHV0LXdyYXBwZXIiPgogICAgICAgICR7dGhpcy5sYWJlbD9TYDxkZWVzLWxhYmVsIC5sYWJlbD0ke3RoaXMubGFiZWx9IC5kZXNjcmlwdGlvbj0ke3RoaXMuZGVzY3JpcHRpb259IC5yZXF1aXJlZD0ke3RoaXMucmVxdWlyZWR9PjwvZGVlcy1sYWJlbD5gOiIifQogICAgICAgIDxkaXYgCiAgICAgICAgICBjbGFzcz0icXVhbnRpdHktY29udGFpbmVyICR7dGhpcy5kaXNhYmxlZD8iZGlzYWJsZWQiOiIifSIKICAgICAgICAgIGRhdGEtbWluPSIke3RoaXMudmFsdWU8PTB9IgogICAgICAgID4KICAgICAgICAgIDxkaXYgCiAgICAgICAgICAgIGNsYXNzPSJzZWxlY3RvciBtaW51cyIgCiAgICAgICAgICAgIEBjbGljaz0iJHsoKT0+e3RoaXMuZGVjcmVhc2UoKX19IgogICAgICAgICAgICB0YWJpbmRleD0iJHt0aGlzLmRpc2FibGVkPyItMSI6IjAifSIKICAgICAgICAgICAgQGtleWRvd249IiR7ZD0+eyhkLmtleT09PSJFbnRlciJ8fGQua2V5PT09IiAiKSYmKGQucHJldmVudERlZmF1bHQoKSx0aGlzLmRlY3JlYXNlKCkpfX0iCiAgICAgICAgICAgIHJvbGU9ImJ1dHRvbiIKICAgICAgICAgICAgYXJpYS1sYWJlbD0iRGVjcmVhc2UgcXVhbnRpdHkiCiAgICAgICAgICA+4oiSPC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJxdWFudGl0eSIgYXJpYS1saXZlPSJwb2xpdGUiIGFyaWEtYXRvbWljPSJ0cnVlIj4ke3RoaXMudmFsdWV9PC9kaXY+CiAgICAgICAgICA8ZGl2IAogICAgICAgICAgICBjbGFzcz0ic2VsZWN0b3IgcGx1cyIgCiAgICAgICAgICAgIEBjbGljaz0iJHsoKT0+e3RoaXMuaW5jcmVhc2UoKX19IgogICAgICAgICAgICB0YWJpbmRleD0iJHt0aGlzLmRpc2FibGVkPyItMSI6IjAifSIKICAgICAgICAgICAgQGtleWRvd249IiR7ZD0+eyhkLmtleT09PSJFbnRlciJ8fGQua2V5PT09IiAiKSYmKGQucHJldmVudERlZmF1bHQoKSx0aGlzLmluY3JlYXNlKCkpfX0iCiAgICAgICAgICAgIHJvbGU9ImJ1dHRvbiIKICAgICAgICAgICAgYXJpYS1sYWJlbD0iSW5jcmVhc2UgcXVhbnRpdHkiCiAgICAgICAgICA+KzwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIGB9aW5jcmVhc2UoKXt0aGlzLmRpc2FibGVkfHwodGhpcy52YWx1ZSsrLHRoaXMuY2hhbmdlU3ViamVjdC5uZXh0KHRoaXMpKX1kZWNyZWFzZSgpeyF0aGlzLmRpc2FibGVkJiZ0aGlzLnZhbHVlPjAmJih0aGlzLnZhbHVlLS0sdGhpcy5jaGFuZ2VTdWJqZWN0Lm5leHQodGhpcykpfWdldFZhbHVlKCl7cmV0dXJuIHRoaXMudmFsdWV9c2V0VmFsdWUoZCl7dGhpcy52YWx1ZT1kfWNvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKSxYbHQodGhpcyxzKX1zdGF0aWN7WGx0KGEscil9fTtyZXR1cm4gYz1hfSkoKX0pO3ZhciBHRXIsWUVyPWwoKCk9PntTZSgpO3phKCk7dDEoKTtHRXI9KCk9PlNgCiAgPGRlZXMtZGVtb3dyYXBwZXI+CiAgICA8c3R5bGU+CiAgICAgICR7bGVgCiAgICAgICAgLmRlbW8tY29udGFpbmVyIHsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgICAgZ2FwOiAyNHB4OwogICAgICAgICAgcGFkZGluZzogMjRweDsKICAgICAgICAgIG1heC13aWR0aDogMTIwMHB4OwogICAgICAgICAgbWFyZ2luOiAwIGF1dG87CiAgICAgICAgfQogICAgICAgIAogICAgICAgIGRlZXMtcGFuZWwgewogICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgZGVlcy1wYW5lbDpsYXN0LWNoaWxkIHsKICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5pbnB1dC1ncm91cCB7CiAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICAgIGdhcDogMTZweDsKICAgICAgICB9CgogICAgICAgIC5kZW1vLWdyaWQgewogICAgICAgICAgZGlzcGxheTogZ3JpZDsKICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMzAwcHgsIDFmcikpOwogICAgICAgICAgZ2FwOiAyNHB4OwogICAgICAgIH0KICAgICAgICAKICAgICAgICAucmVzdWx0LWRpc3BsYXkgewogICAgICAgICAgbWFyZ2luLXRvcDogMTZweDsKICAgICAgICAgIHBhZGRpbmc6IDEycHg7CiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDEwNSwgMjQyLCAwLjEpOwogICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTsKICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICB9CiAgICAgIGB9CiAgICA8L3N0eWxlPgogICAgCiAgICA8ZGl2IGNsYXNzPSJkZW1vLWNvbnRhaW5lciI+CiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyIxLiBCYXNpYyBSYWRpbyBHcm91cHMifSAuc3VidGl0bGU9JHsiU2ltcGxlIHN0cmluZyBvcHRpb25zIGZvciBjb21tb24gdXNlIGNhc2VzIn0+CiAgICAgICAgPGRpdiBjbGFzcz0iZGVtby1ncmlkIj4KICAgICAgICAgIDxkZWVzLWlucHV0LXJhZGlvZ3JvdXAKICAgICAgICAgICAgLmxhYmVsPSR7IlN1YnNjcmlwdGlvbiBQbGFuIn0KICAgICAgICAgICAgLm9wdGlvbnM9JHtbIkJhc2ljIC0gJDkvbW9udGgiLCJQcm8gLSAkMjkvbW9udGgiLCJFbnRlcnByaXNlIC0gJDk5L21vbnRoIl19CiAgICAgICAgICAgIC5zZWxlY3RlZE9wdGlvbj0keyJQcm8gLSAkMjkvbW9udGgifQogICAgICAgICAgICAuZGVzY3JpcHRpb249JHsiQ2hvb3NlIHlvdXIgc3Vic2NyaXB0aW9uIHRpZXIifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC1yYWRpb2dyb3VwPgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1pbnB1dC1yYWRpb2dyb3VwCiAgICAgICAgICAgIC5sYWJlbD0keyJQcmlvcml0eSBMZXZlbCJ9CiAgICAgICAgICAgIC5vcHRpb25zPSR7WyJIaWdoIiwiTWVkaXVtIiwiTG93Il19CiAgICAgICAgICAgIC5zZWxlY3RlZE9wdGlvbj0keyJNZWRpdW0ifQogICAgICAgICAgICAucmVxdWlyZWQ9JHshMH0KICAgICAgICAgID48L2RlZXMtaW5wdXQtcmFkaW9ncm91cD4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgICAKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IjIuIEhvcml6b250YWwgTGF5b3V0In0gLnN1YnRpdGxlPSR7IlJhZGlvIGdyb3VwcyB3aXRoIGhvcml6b250YWwgYXJyYW5nZW1lbnQifT4KICAgICAgICA8ZGl2IGNsYXNzPSJpbnB1dC1ncm91cCI+CiAgICAgICAgICA8ZGVlcy1pbnB1dC1yYWRpb2dyb3VwCiAgICAgICAgICAgIC5sYWJlbD0keyJEbyB5b3UgYWdyZWUgd2l0aCB0aGUgdGVybXM/In0KICAgICAgICAgICAgLm9wdGlvbnM9JHtbIlllcyIsIk5vIiwiTWF5YmUiXX0KICAgICAgICAgICAgLmRpcmVjdGlvbj0keyJob3Jpem9udGFsIn0KICAgICAgICAgICAgLnNlbGVjdGVkT3B0aW9uPSR7IlllcyJ9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LXJhZGlvZ3JvdXA+CgogICAgICAgICAgPGRlZXMtaW5wdXQtcmFkaW9ncm91cAogICAgICAgICAgICAubGFiZWw9JHsiRXhwZXJpZW5jZSBMZXZlbCJ9CiAgICAgICAgICAgIC5vcHRpb25zPSR7WyJCZWdpbm5lciIsIkludGVybWVkaWF0ZSIsIkV4cGVydCJdfQogICAgICAgICAgICAuZGlyZWN0aW9uPSR7Imhvcml6b250YWwifQogICAgICAgICAgICAuc2VsZWN0ZWRPcHRpb249JHsiSW50ZXJtZWRpYXRlIn0KICAgICAgICAgICAgLmRlc2NyaXB0aW9uPSR7IlNlbGVjdCB5b3VyIGV4cGVyaWVuY2UgbGV2ZWwgd2l0aCB3ZWIgZGV2ZWxvcG1lbnQifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC1yYWRpb2dyb3VwPgogICAgICAgIDwvZGl2PgogICAgICA8L2RlZXMtcGFuZWw+CiAgICAgIAogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiMy4gQWR2YW5jZWQgT3B0aW9ucyJ9IC5zdWJ0aXRsZT0keyJVc2luZyBvYmplY3QgZm9ybWF0IHdpdGgga2V5cyBhbmQgcGF5bG9hZHMifT4KICAgICAgICA8ZGVlcy1pbnB1dC1yYWRpb2dyb3VwCiAgICAgICAgICBpZD0iYWR2YW5jZWQtcmFkaW8iCiAgICAgICAgICAubGFiZWw9JHsiU2VsZWN0IFJlZ2lvbiJ9CiAgICAgICAgICAub3B0aW9ucz0ke1t7b3B0aW9uOiJVbml0ZWQgU3RhdGVzIChVUyBFYXN0KSIsa2V5OiJ1cy1lYXN0IixwYXlsb2FkOntyZWdpb246InVzLWVhc3QtMSIsbGF0ZW5jeToyMH19LHtvcHRpb246IkV1cm9wZSAoRnJhbmtmdXJ0KSIsa2V5OiJldS1jZW50cmFsIixwYXlsb2FkOntyZWdpb246ImV1LWNlbnRyYWwtMSIsbGF0ZW5jeTo1MH19LHtvcHRpb246IkFzaWEgUGFjaWZpYyAoU2luZ2Fwb3JlKSIsa2V5OiJhcC1zb3V0aGVhc3QiLHBheWxvYWQ6e3JlZ2lvbjoiYXAtc291dGhlYXN0LTEiLGxhdGVuY3k6MTIwfX1dfQogICAgICAgICAgLnNlbGVjdGVkT3B0aW9uPSR7ImV1LWNlbnRyYWwifQogICAgICAgICAgLmRlc2NyaXB0aW9uPSR7IkNob29zZSB0aGUgY2xvc2VzdCByZWdpb24gZm9yIG9wdGltYWwgcGVyZm9ybWFuY2UifQogICAgICAgICAgQGNoYW5nZT0ke2U9PntsZXQgdD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjcmVnaW9uLXJlc3VsdCIpO3QmJih0LnRleHRDb250ZW50PSJTZWxlY3RlZDogIitKU09OLnN0cmluZ2lmeShlLmRldGFpbC52YWx1ZSxudWxsLDIpKX19CiAgICAgICAgPjwvZGVlcy1pbnB1dC1yYWRpb2dyb3VwPgogICAgICAgIDxkaXYgaWQ9InJlZ2lvbi1yZXN1bHQiIGNsYXNzPSJyZXN1bHQtZGlzcGxheSI+U2VsZWN0ZWQ6IHsgInJlZ2lvbiI6ICJldS1jZW50cmFsLTEiLCAibGF0ZW5jeSI6IDUwIH08L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgICAKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IjQuIFN1cnZleSBFeGFtcGxlIn0gLnN1YnRpdGxlPSR7Ik11bHRpcGxlIHJhZGlvIGdyb3VwcyBmb3Igc3VydmV5cyBhbmQgZm9ybXMifT4KICAgICAgICA8ZGl2IGNsYXNzPSJkZW1vLWdyaWQiPgogICAgICAgICAgPGRlZXMtaW5wdXQtcmFkaW9ncm91cAogICAgICAgICAgICAubGFiZWw9JHsiSG93IHNhdGlzZmllZCBhcmUgeW91PyJ9CiAgICAgICAgICAgIC5vcHRpb25zPSR7WyJWZXJ5IFNhdGlzZmllZCIsIlNhdGlzZmllZCIsIk5ldXRyYWwiLCJEaXNzYXRpc2ZpZWQiLCJWZXJ5IERpc3NhdGlzZmllZCJdfQogICAgICAgICAgICAuc2VsZWN0ZWRPcHRpb249JHsiU2F0aXNmaWVkIn0KICAgICAgICAgID48L2RlZXMtaW5wdXQtcmFkaW9ncm91cD4KICAgICAgICAgIAogICAgICAgICAgPGRlZXMtaW5wdXQtcmFkaW9ncm91cAogICAgICAgICAgICAubGFiZWw9JHsiV291bGQgeW91IHJlY29tbWVuZCB1cz8ifQogICAgICAgICAgICAub3B0aW9ucz0ke1siRGVmaW5pdGVseSIsIlByb2JhYmx5IiwiTm90IFN1cmUiLCJQcm9iYWJseSBOb3QiLCJEZWZpbml0ZWx5IE5vdCJdfQogICAgICAgICAgICAuc2VsZWN0ZWRPcHRpb249JHsiUHJvYmFibHkifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC1yYWRpb2dyb3VwPgogICAgICAgIDwvZGl2PgogICAgICA8L2RlZXMtcGFuZWw+CiAgICAgIAogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiNS4gU3RhdGVzICYgVmFsaWRhdGlvbiJ9IC5zdWJ0aXRsZT0keyJEaWZmZXJlbnQgc3RhdGVzIGFuZCB2YWxpZGF0aW9uIGV4YW1wbGVzIn0+CiAgICAgICAgPGRpdiBjbGFzcz0iZGVtby1ncmlkIj4KICAgICAgICAgIDxkZWVzLWlucHV0LXJhZGlvZ3JvdXAKICAgICAgICAgICAgLmxhYmVsPSR7IlJlcXVpcmVkIFNlbGVjdGlvbiJ9CiAgICAgICAgICAgIC5vcHRpb25zPSR7WyJPcHRpb24gQSIsIk9wdGlvbiBCIiwiT3B0aW9uIEMiXX0KICAgICAgICAgICAgLnJlcXVpcmVkPSR7ITB9CiAgICAgICAgICAgIC5kZXNjcmlwdGlvbj0keyJUaGlzIGZpZWxkIGlzIHJlcXVpcmVkIn0KICAgICAgICAgID48L2RlZXMtaW5wdXQtcmFkaW9ncm91cD4KICAgICAgICAgIAogICAgICAgICAgPGRlZXMtaW5wdXQtcmFkaW9ncm91cAogICAgICAgICAgICAubGFiZWw9JHsiRGlzYWJsZWQgU3RhdGUifQogICAgICAgICAgICAub3B0aW9ucz0ke1siRGlzYWJsZWQgT3B0aW9uIDEiLCJEaXNhYmxlZCBPcHRpb24gMiIsIkRpc2FibGVkIE9wdGlvbiAzIl19CiAgICAgICAgICAgIC5zZWxlY3RlZE9wdGlvbj0keyJEaXNhYmxlZCBPcHRpb24gMiJ9CiAgICAgICAgICAgIC5kaXNhYmxlZD0keyEwfQogICAgICAgICAgPjwvZGVlcy1pbnB1dC1yYWRpb2dyb3VwPgogICAgICAgIDwvZGl2PgogICAgICA8L2RlZXMtcGFuZWw+CiAgICAgIAogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiNi4gU2V0dGluZ3MgRXhhbXBsZSJ9IC5zdWJ0aXRsZT0keyJDb21tb24gcGF0dGVybnMgaW4gYXBwbGljYXRpb24gc2V0dGluZ3MifT4KICAgICAgICA8ZGl2IGNsYXNzPSJpbnB1dC1ncm91cCI+CiAgICAgICAgICA8ZGVlcy1pbnB1dC1yYWRpb2dyb3VwCiAgICAgICAgICAgIC5sYWJlbD0keyJUaGVtZSBQcmVmZXJlbmNlIn0KICAgICAgICAgICAgLm9wdGlvbnM9JHtbe29wdGlvbjoiTGlnaHQgVGhlbWUiLGtleToibGlnaHQiLHBheWxvYWQ6ImxpZ2h0In0se29wdGlvbjoiRGFyayBUaGVtZSIsa2V5OiJkYXJrIixwYXlsb2FkOiJkYXJrIn0se29wdGlvbjoiU3lzdGVtIERlZmF1bHQiLGtleToic3lzdGVtIixwYXlsb2FkOiJhdXRvIn1dfQogICAgICAgICAgICAuc2VsZWN0ZWRPcHRpb249JHsiZGFyayJ9CiAgICAgICAgICAgIC5kZXNjcmlwdGlvbj0keyJDaG9vc2UgaG93IHRoZSBhcHBsaWNhdGlvbiBzaG91bGQgYXBwZWFyIn0KICAgICAgICAgID48L2RlZXMtaW5wdXQtcmFkaW9ncm91cD4KCiAgICAgICAgICA8ZGVlcy1pbnB1dC1yYWRpb2dyb3VwCiAgICAgICAgICAgIC5sYWJlbD0keyJOb3RpZmljYXRpb24gRnJlcXVlbmN5In0KICAgICAgICAgICAgLm9wdGlvbnM9JHtbIkFsbCBOb3RpZmljYXRpb25zIiwiSW1wb3J0YW50IE9ubHkiLCJOb25lIl19CiAgICAgICAgICAgIC5zZWxlY3RlZE9wdGlvbj0keyJJbXBvcnRhbnQgT25seSJ9CiAgICAgICAgICAgIC5kZXNjcmlwdGlvbj0keyJDb250cm9sIGhvdyBvZnRlbiB5b3UgcmVjZWl2ZSBub3RpZmljYXRpb25zIn0KICAgICAgICAgID48L2RlZXMtaW5wdXQtcmFkaW9ncm91cD4KCiAgICAgICAgICA8ZGVlcy1pbnB1dC1yYWRpb2dyb3VwCiAgICAgICAgICAgIC5sYWJlbD0keyJMYW5ndWFnZSJ9CiAgICAgICAgICAgIC5vcHRpb25zPSR7WyJFbmdsaXNoIiwiR2VybWFuIiwiRnJlbmNoIiwiU3BhbmlzaCIsIkphcGFuZXNlIl19CiAgICAgICAgICAgIC5zZWxlY3RlZE9wdGlvbj0keyJFbmdsaXNoIn0KICAgICAgICAgICAgLmRpcmVjdGlvbj0keyJob3Jpem9udGFsIn0KICAgICAgICAgID48L2RlZXMtaW5wdXQtcmFkaW9ncm91cD4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgICAKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IjcuIEZvcm0gSW50ZWdyYXRpb24ifSAuc3VidGl0bGU9JHsiV29ya3Mgc2VhbWxlc3NseSB3aXRoIGRlZXMtZm9ybSJ9PgogICAgICAgIDxkZWVzLWZvcm0+CiAgICAgICAgICA8ZGVlcy1pbnB1dC10ZXh0CiAgICAgICAgICAgIC5sYWJlbD0keyJQcm9kdWN0IE5hbWUifQogICAgICAgICAgICAucmVxdWlyZWQ9JHshMH0KICAgICAgICAgICAgLmtleT0keyJwcm9kdWN0TmFtZSJ9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LXRleHQ+CiAgICAgICAgICAKICAgICAgICAgIDxkZWVzLWlucHV0LXJhZGlvZ3JvdXAKICAgICAgICAgICAgLmxhYmVsPSR7IlByb2R1Y3QgQ2F0ZWdvcnkifQogICAgICAgICAgICAub3B0aW9ucz0ke1siRWxlY3Ryb25pY3MiLCJDbG90aGluZyIsIkJvb2tzIiwiSG9tZSAmIEdhcmRlbiIsIlNwb3J0cyJdfQogICAgICAgICAgICAucmVxdWlyZWQ9JHshMH0KICAgICAgICAgICAgLmtleT0keyJjYXRlZ29yeSJ9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LXJhZGlvZ3JvdXA+CiAgICAgICAgICAKICAgICAgICAgIDxkZWVzLWlucHV0LXJhZGlvZ3JvdXAKICAgICAgICAgICAgLmxhYmVsPSR7IkNvbmRpdGlvbiJ9CiAgICAgICAgICAgIC5vcHRpb25zPSR7WyJOZXciLCJMaWtlIE5ldyIsIkdvb2QiLCJGYWlyIiwiUG9vciJdfQogICAgICAgICAgICAuZGlyZWN0aW9uPSR7Imhvcml6b250YWwifQogICAgICAgICAgICAua2V5PSR7ImNvbmRpdGlvbiJ9CiAgICAgICAgICAgIC5zZWxlY3RlZE9wdGlvbj0keyJOZXcifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC1yYWRpb2dyb3VwPgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1pbnB1dC1yYWRpb2dyb3VwCiAgICAgICAgICAgIC5sYWJlbD0keyJTaGlwcGluZyBTcGVlZCJ9CiAgICAgICAgICAgIC5vcHRpb25zPSR7W3tvcHRpb246IlN0YW5kYXJkICg1LTcgZGF5cykiLGtleToic3RhbmRhcmQiLHBheWxvYWQ6e2RheXM6NyxwcmljZTowfX0se29wdGlvbjoiRXhwcmVzcyAoMi0zIGRheXMpIixrZXk6ImV4cHJlc3MiLHBheWxvYWQ6e2RheXM6MyxwcmljZToxMH19LHtvcHRpb246Ik92ZXJuaWdodCIsa2V5OiJvdmVybmlnaHQiLHBheWxvYWQ6e2RheXM6MSxwcmljZToyNX19XX0KICAgICAgICAgICAgLnNlbGVjdGVkT3B0aW9uPSR7InN0YW5kYXJkIn0KICAgICAgICAgICAgLmtleT0keyJzaGlwcGluZyJ9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LXJhZGlvZ3JvdXA+CiAgICAgICAgICAKICAgICAgICAgIDxkZWVzLWZvcm0tc3VibWl0IC50ZXh0PSR7IlN1Ym1pdCBQcm9kdWN0In0+PC9kZWVzLWZvcm0tc3VibWl0PgogICAgICAgIDwvZGVlcy1mb3JtPgogICAgICA8L2RlZXMtcGFuZWw+CiAgICA8L2Rpdj4KICA8L2RlZXMtZGVtb3dyYXBwZXI+CmB9KTt2YXIgZlosTmMsRGxlLEFsZT1sKCgpPT57U2UoKTtQYSgpO1lFcigpO290KCk7Zlo9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxOYz1mdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MixpPTA7aTx0Lmxlbmd0aDtpKyspcj1hP3RbaV0uY2FsbChlLHIpOnRbaV0uY2FsbChlKTtyZXR1cm4gYT9yOnZvaWQgMH0sRGxlPSgoKT0+e2xldCBlPVt6ZSgiZGVlcy1pbnB1dC1yYWRpb2dyb3VwIildLHQscj1bXSxhLGk9aHQsbyxuPVtdLHM9W10sYyxkPVtdLGY9W10sdSxwPVtdLGg9W10sYix4PVtdLGc9W107dmFyIHY9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCB3PXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO289W2ooe3R5cGU6QXJyYXl9KV0sYz1baigpXSx1PVtqKHt0eXBlOlN0cmluZ30pXSxiPVtqKHt0eXBlOlN0cmluZyxyZWZsZWN0OiEwfSldLGZaKHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToib3B0aW9ucyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6TT0+Im9wdGlvbnMiaW4gTSxnZXQ6TT0+TS5vcHRpb25zLHNldDooTSxGKT0+e00ub3B0aW9ucz1GfX0sbWV0YWRhdGE6d30sbixzKSxmWih0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNlbGVjdGVkT3B0aW9uIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpNPT4ic2VsZWN0ZWRPcHRpb24iaW4gTSxnZXQ6TT0+TS5zZWxlY3RlZE9wdGlvbixzZXQ6KE0sRik9PntNLnNlbGVjdGVkT3B0aW9uPUZ9fSxtZXRhZGF0YTp3fSxkLGYpLGZaKHRoaXMsbnVsbCx1LHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZGlyZWN0aW9uIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpNPT4iZGlyZWN0aW9uImluIE0sZ2V0Ok09Pk0uZGlyZWN0aW9uLHNldDooTSxGKT0+e00uZGlyZWN0aW9uPUZ9fSxtZXRhZGF0YTp3fSxwLGgpLGZaKHRoaXMsbnVsbCxiLHtraW5kOiJhY2Nlc3NvciIsbmFtZToidmFsaWRhdGlvblN0YXRlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpNPT4idmFsaWRhdGlvblN0YXRlImluIE0sZ2V0Ok09Pk0udmFsaWRhdGlvblN0YXRlLHNldDooTSxGKT0+e00udmFsaWRhdGlvblN0YXRlPUZ9fSxtZXRhZGF0YTp3fSx4LGcpLGZaKG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOnd9LG51bGwsciksdj1hPXQudmFsdWUsdyYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTp3fSl9c3RhdGljIGRlbW89R0VyO3N0YXRpYyBkZW1vR3JvdXBzPVsiSW5wdXQiXTsjZT1OYyh0aGlzLG4sW10pO2dldCBvcHRpb25zKCl7cmV0dXJuIHRoaXMuI2V9c2V0IG9wdGlvbnModyl7dGhpcy4jZT13fSN0PShOYyh0aGlzLHMpLE5jKHRoaXMsZCwiIikpO2dldCBzZWxlY3RlZE9wdGlvbigpe3JldHVybiB0aGlzLiN0fXNldCBzZWxlY3RlZE9wdGlvbih3KXt0aGlzLiN0PXd9I3I9KE5jKHRoaXMsZiksTmModGhpcyxwLCJ2ZXJ0aWNhbCIpKTtnZXQgZGlyZWN0aW9uKCl7cmV0dXJuIHRoaXMuI3J9c2V0IGRpcmVjdGlvbih3KXt0aGlzLiNyPXd9I2E9KE5jKHRoaXMsaCksTmModGhpcyx4LG51bGwpKTtnZXQgdmFsaWRhdGlvblN0YXRlKCl7cmV0dXJuIHRoaXMuI2F9c2V0IHZhbGlkYXRpb25TdGF0ZSh3KXt0aGlzLiNhPXd9Z2V0IHZhbHVlKCl7bGV0IHc9dGhpcy5nZXRPcHRpb25CeUtleSh0aGlzLnNlbGVjdGVkT3B0aW9uKTtyZXR1cm4gdHlwZW9mIHc9PSJvYmplY3QiJiZ3LnBheWxvYWQhPT12b2lkIDA/dy5wYXlsb2FkOnRoaXMuc2VsZWN0ZWRPcHRpb259c2V0IHZhbHVlKHcpe2lmKHR5cGVvZiB3PT0ic3RyaW5nIil0aGlzLnNlbGVjdGVkT3B0aW9uPXc7ZWxzZXtsZXQgTT10aGlzLm9wdGlvbnMuZmluZChGPT50eXBlb2YgRj09Im9iamVjdCImJkYucGF5bG9hZD09PXcpO00mJnR5cGVvZiBNPT0ib2JqZWN0IiYmKHRoaXMuc2VsZWN0ZWRPcHRpb249TS5rZXkpfX1zdGF0aWMgc3R5bGVzPVtQZSwuLi5odC5iYXNlU3R5bGVzLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgLyogVE9ETzogTWlncmF0ZSBoYXJkY29kZWQgdmFsdWVzIHRvIC0tZGVlcy0qIENTUyB2YXJpYWJsZXMgKi8KICAgICAgKiB7CiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAgfQoKICAgICAgOmhvc3QgewogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAnU2Vnb2UgVUknLCAnUm9ib3RvJywgc2Fucy1zZXJpZjsKICAgICAgfQoKICAgICAgLm1haW5jb250YWluZXIgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBnYXA6IDEwcHg7CiAgICAgIH0KCiAgICAgIC5tYWluY29udGFpbmVyLmhvcml6b250YWwgewogICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7CiAgICAgICAgZmxleC13cmFwOiB3cmFwOwogICAgICAgIGdhcDogMjBweDsKICAgICAgfQoKICAgICAgLnJhZGlvLW9wdGlvbiB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogMTBweDsKICAgICAgICBwYWRkaW5nOiA2cHggMDsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTsKICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICB9CgogICAgICAubWFpbmNvbnRhaW5lci5ob3Jpem9udGFsIC5yYWRpby1vcHRpb24gewogICAgICAgIHBhZGRpbmc6IDZweCAyMHB4IDZweCAwOwogICAgICB9CgogICAgICAucmFkaW8tb3B0aW9uOmhvdmVyIC5yYWRpby1jaXJjbGUgewogICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUgMjAuMiUgNjUuMSUpIiwiaHNsKDIxNSAyMC4yJSAzNS4xJSkiKX07CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTAgNDAlIDk2LjElKSIsImhzbCgyMTUgMjAuMiUgMTEuOCUpIil9OwogICAgICB9CgogICAgICAucmFkaW8tb3B0aW9uOmhvdmVyIC5yYWRpby1sYWJlbCB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE1LjMgMjUlIDguOCUpIiwiaHNsKDIxMCA0MCUgOTglKSIpfTsKICAgICAgfQoKICAgICAgLnJhZGlvLWNpcmNsZSB7CiAgICAgICAgd2lkdGg6IDIwcHg7CiAgICAgICAgaGVpZ2h0OiAyMHB4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsKICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDIxNSAyMC4yJSA2NS4xJSkiLCJoc2woMjE1IDIwLjIlIDM1LjElKSIpfTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTAwJSkiLCJoc2woMjE1IDMwJSA2LjglKSIpfTsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpOwogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICBmbGV4LXNocmluazogMDsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgIH0KCiAgICAgIC5yYWRpby1vcHRpb24uc2VsZWN0ZWQgLnJhZGlvLWNpcmNsZSB7CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNy4yIDkxLjIlIDU5LjglKSIsImhzbCgyMTMuMSA5My45JSA2Ny44JSkiKX07CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTcuMiA5MS4yJSA1OS44JSkiLCJoc2woMjEzLjEgOTMuOSUgNjcuOCUpIil9OwogICAgICB9CgogICAgICAucmFkaW8tb3B0aW9uLnNlbGVjdGVkIC5yYWRpby1jaXJjbGU6OmFmdGVyIHsKICAgICAgICBjb250ZW50OiAnJzsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgd2lkdGg6IDhweDsKICAgICAgICBoZWlnaHQ6IDhweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDEwMCUpIiwiaHNsKDIxNSAzMCUgNi44JSkiKX07CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTsKICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpOwogICAgICB9CgogICAgICAucmFkaW8tb3B0aW9uLnNlbGVjdGVkIC5yYWRpby1jaXJjbGU6OmFmdGVyIHsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOwogICAgICB9CgogICAgICAucmFkaW8tY2lyY2xlOmZvY3VzLXZpc2libGUgewogICAgICAgIG91dGxpbmU6IG5vbmU7CiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAxMDAlKSIsImhzbCgyMTUgMzAlIDMuOSUpIil9LAogICAgICAgICAgICAgICAgICAgIDAgMCAwIDRweCAke20uYmRUaGVtZSgiaHNsKDIxNy4yIDkxLjIlIDU5LjglKSIsImhzbCgyMTMuMSA5My45JSA2Ny44JSkiKX07CiAgICAgIH0KCiAgICAgIC5yYWRpby1sYWJlbCB7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE1LjMgMjUlIDI2LjclKSIsImhzbCgyMTcuOSAxMC42JSA3NC45JSkiKX07CiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4ycyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpOwogICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMDZlbTsKICAgICAgICBsaW5lLWhlaWdodDogMjBweDsKICAgICAgfQoKICAgICAgLnJhZGlvLW9wdGlvbi5zZWxlY3RlZCAucmFkaW8tbGFiZWwgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNS4zIDI1JSA4LjglKSIsImhzbCgyMTAgNDAlIDk4JSkiKX07CiAgICAgIH0KCiAgICAgIDpob3N0KFtkaXNhYmxlZF0pIC5yYWRpby1vcHRpb24gewogICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7CiAgICAgICAgb3BhY2l0eTogMC41OwogICAgICB9CgogICAgICA6aG9zdChbZGlzYWJsZWRdKSAucmFkaW8tb3B0aW9uOmhvdmVyIC5yYWRpby1jaXJjbGUgewogICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUgMjAuMiUgNjUuMSUpIiwiaHNsKDIxNSAyMC4yJSAzNS4xJSkiKX07CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDEwMCUpIiwiaHNsKDIxNSAzMCUgNi44JSkiKX07CiAgICAgIH0KCiAgICAgIDpob3N0KFtkaXNhYmxlZF0pIC5yYWRpby1vcHRpb246aG92ZXIgLnJhZGlvLWxhYmVsIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuMyAyNSUgMjYuNyUpIiwiaHNsKDIxNy45IDEwLjYlIDc0LjklKSIpfTsKICAgICAgfQoKICAgICAgLmxhYmVsLXRleHQgewogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNS4zIDI1JSA4LjglKSIsImhzbCgyMTAgNDAlIDk4JSkiKX07CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsKICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDA2ZW07CiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7CiAgICAgIH0KCiAgICAgIC5kZXNjcmlwdGlvbi10ZXh0IHsKICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE1LjQgMTYuMyUgNTYuOSUpIiwiaHNsKDIxNSAyMC4yJSA1NS4xJSkiKX07CiAgICAgICAgbWFyZ2luLXRvcDogMTBweDsKICAgICAgICBsaW5lLWhlaWdodDogMS41OwogICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMDNlbTsKICAgICAgfQoKICAgICAgLyogVmFsaWRhdGlvbiBzdHlsZXMgKi8KICAgICAgOmhvc3QoW3ZhbGlkYXRpb25TdGF0ZT0iaW52YWxpZCJdKSAucmFkaW8tY2lyY2xlIHsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCA3Mi4yJSA1MC42JSkiLCJoc2woMCA2Mi44JSAzMC42JSkiKX07CiAgICAgIH0KCiAgICAgIDpob3N0KFt2YWxpZGF0aW9uU3RhdGU9ImludmFsaWQiXSkgLnJhZGlvLW9wdGlvbi5zZWxlY3RlZCAucmFkaW8tY2lyY2xlIHsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCA3Mi4yJSA1MC42JSkiLCJoc2woMCA2Mi44JSAzMC42JSkiKX07CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDcyLjIlIDUwLjYlKSIsImhzbCgwIDYyLjglIDMwLjYlKSIpfTsKICAgICAgfQoKICAgICAgOmhvc3QoW3ZhbGlkYXRpb25TdGF0ZT0idmFsaWQiXSkgLnJhZGlvLW9wdGlvbi5zZWxlY3RlZCAucmFkaW8tY2lyY2xlIHsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMTQyLjEgNzAuNiUgNDUuMyUpIiwiaHNsKDE0Mi4xIDc2LjIlIDM2LjMlKSIpfTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDE0Mi4xIDcwLjYlIDQ1LjMlKSIsImhzbCgxNDIuMSA3Ni4yJSAzNi4zJSkiKX07CiAgICAgIH0KCiAgICAgIDpob3N0KFt2YWxpZGF0aW9uU3RhdGU9Indhcm4iXSkgLnJhZGlvLW9wdGlvbi5zZWxlY3RlZCAucmFkaW8tY2lyY2xlIHsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woNDUuNCA5My40JSA0Ny41JSkiLCJoc2woNDUuNCA5My40JSA0Ny41JSkiKX07CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCg0NS40IDkzLjQlIDQ3LjUlKSIsImhzbCg0NS40IDkzLjQlIDQ3LjUlKSIpfTsKICAgICAgfQoKICAgICAgLyogT3ZlcnJpZGUgYmFzZSBncmlkIGxheW91dCBmb3IgcmFkaW9ncm91cCB0byBwcmV2ZW50IGxhcmdlIGdhcHMgKi8KICAgICAgOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSJsZWZ0Il0pIC5pbnB1dC13cmFwcGVyIHsKICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0bzsKICAgICAgfQoKICAgICAgOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSJyaWdodCJdKSAuaW5wdXQtd3JhcHBlciB7CiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIGF1dG87CiAgICAgIH0KICAgIGBdO3JlbmRlcigpe3JldHVybiBTYAogICAgICA8ZGl2IGNsYXNzPSJpbnB1dC13cmFwcGVyIj4KICAgICAgICAke3RoaXMubGFiZWw/U2A8ZGl2IGNsYXNzPSJsYWJlbC10ZXh0Ij4ke3RoaXMubGFiZWx9PC9kaXY+YDoiIn0KICAgICAgICA8ZGl2IGNsYXNzPSJtYWluY29udGFpbmVyICR7dGhpcy5kaXJlY3Rpb259Ij4KICAgICAgICAgICR7dGhpcy5vcHRpb25zLm1hcCh3PT57bGV0IE09dGhpcy5nZXRPcHRpb25LZXkodyksRj10aGlzLmdldE9wdGlvbkxhYmVsKHcpLEM9dGhpcy5zZWxlY3RlZE9wdGlvbj09PU07cmV0dXJuIFNgCiAgICAgICAgICAgICAgPGRpdiAKICAgICAgICAgICAgICAgIGNsYXNzPSJyYWRpby1vcHRpb24gJHtDPyJzZWxlY3RlZCI6IiJ9IgogICAgICAgICAgICAgICAgQGNsaWNrPSIkeygpPT50aGlzLnNlbGVjdE9wdGlvbihNKX0iCiAgICAgICAgICAgICAgICBAa2V5ZG93bj0iJHtrPT50aGlzLmhhbmRsZUtleWRvd24oayxNKX0iCiAgICAgICAgICAgICAgPgogICAgICAgICAgICAgICAgPGRpdiAKICAgICAgICAgICAgICAgICAgY2xhc3M9InJhZGlvLWNpcmNsZSIgCiAgICAgICAgICAgICAgICAgIHRhYmluZGV4PSIke3RoaXMuZGlzYWJsZWQ/Ii0xIjoiMCJ9IgogICAgICAgICAgICAgICAgICByb2xlPSJyYWRpbyIKICAgICAgICAgICAgICAgICAgYXJpYS1jaGVja2VkPSIke0N9IgogICAgICAgICAgICAgICAgICBhcmlhLWxhYmVsPSIke0Z9IgogICAgICAgICAgICAgICAgPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icmFkaW8tbGFiZWwiPiR7Rn08L2Rpdj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgYH0pfQogICAgICAgIDwvZGl2PgogICAgICAgICR7dGhpcy5kZXNjcmlwdGlvbj9TYDxkaXYgY2xhc3M9ImRlc2NyaXB0aW9uLXRleHQiPiR7dGhpcy5kZXNjcmlwdGlvbn08L2Rpdj5gOiIifQogICAgICA8L2Rpdj4KICAgIGB9Z2V0T3B0aW9uS2V5KHcpe3JldHVybiB0eXBlb2Ygdz09InN0cmluZyI/dzp3LmtleX1nZXRPcHRpb25MYWJlbCh3KXtyZXR1cm4gdHlwZW9mIHc9PSJzdHJpbmciP3c6dy5vcHRpb259Z2V0T3B0aW9uQnlLZXkodyl7cmV0dXJuIHRoaXMub3B0aW9ucy5maW5kKE09PnRoaXMuZ2V0T3B0aW9uS2V5KE0pPT09dyl9c2VsZWN0T3B0aW9uKHcpe2lmKHRoaXMuZGlzYWJsZWQpcmV0dXJuO2xldCBNPXRoaXMuc2VsZWN0ZWRPcHRpb247dGhpcy5zZWxlY3RlZE9wdGlvbj13LE0hPT13JiYodGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgiY2hhbmdlIix7ZGV0YWlsOnt2YWx1ZTp0aGlzLnZhbHVlfSxidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpLHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoImlucHV0Iix7ZGV0YWlsOnt2YWx1ZTp0aGlzLnZhbHVlfSxidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpLHRoaXMuY2hhbmdlU3ViamVjdC5uZXh0KHRoaXMpKX1nZXRWYWx1ZSgpe3JldHVybiB0aGlzLnZhbHVlfXNldFZhbHVlKHcpe3RoaXMudmFsdWU9d31hc3luYyB2YWxpZGF0ZSgpe3JldHVybiB0aGlzLnJlcXVpcmVkJiYhdGhpcy5zZWxlY3RlZE9wdGlvbj8odGhpcy52YWxpZGF0aW9uU3RhdGU9ImludmFsaWQiLCExKToodGhpcy52YWxpZGF0aW9uU3RhdGU9InZhbGlkIiwhMCl9YXN5bmMgZmlyc3RVcGRhdGVkKCl7aWYoIXRoaXMuc2VsZWN0ZWRPcHRpb24mJnRoaXMub3B0aW9ucy5sZW5ndGg+MCYmIXRoaXMucmVxdWlyZWQpe2xldCB3PXRoaXMub3B0aW9uc1swXTt0aGlzLnNlbGVjdGVkT3B0aW9uPXRoaXMuZ2V0T3B0aW9uS2V5KHcpfX1oYW5kbGVLZXlkb3duKHcsTSl7dGhpcy5kaXNhYmxlZHx8KHcua2V5PT09IiAifHx3LmtleT09PSJFbnRlciI/KHcucHJldmVudERlZmF1bHQoKSx0aGlzLnNlbGVjdE9wdGlvbihNKSk6dy5rZXk9PT0iQXJyb3dEb3duInx8dy5rZXk9PT0iQXJyb3dSaWdodCI/KHcucHJldmVudERlZmF1bHQoKSx0aGlzLmZvY3VzTmV4dE9wdGlvbigpKToody5rZXk9PT0iQXJyb3dVcCJ8fHcua2V5PT09IkFycm93TGVmdCIpJiYody5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuZm9jdXNQcmV2aW91c09wdGlvbigpKSl9Zm9jdXNOZXh0T3B0aW9uKCl7bGV0IHc9QXJyYXkuZnJvbSh0aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvckFsbCgiLnJhZGlvLWNpcmNsZSIpKSxGPSh3LmZpbmRJbmRleChDPT5DPT09dGhpcy5zaGFkb3dSb290LmFjdGl2ZUVsZW1lbnQpKzEpJXcubGVuZ3RoO3dbRl0uZm9jdXMoKX1mb2N1c1ByZXZpb3VzT3B0aW9uKCl7bGV0IHc9QXJyYXkuZnJvbSh0aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvckFsbCgiLnJhZGlvLWNpcmNsZSIpKSxNPXcuZmluZEluZGV4KEM9PkM9PT10aGlzLnNoYWRvd1Jvb3QuYWN0aXZlRWxlbWVudCksRj1NPD0wP3cubGVuZ3RoLTE6TS0xO3dbRl0uZm9jdXMoKX1jb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyksTmModGhpcyxnKX1zdGF0aWN7TmMoYSxyKX19O3JldHVybiB2PWF9KSgpfSk7dmFyIFpFcixYRXI9bCgoKT0+e1NlKCk7WkVyPSgpPT5TYAogIDxzdHlsZT4KICAgIC5kZW1vLWNvbnRhaW5lciB7CiAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgIGdhcDogMjRweDsKICAgICAgcGFkZGluZzogMjRweDsKICAgIH0KICAgIC5kZW1vLXNlY3Rpb24gewogICAgICBkaXNwbGF5OiBmbGV4OwogICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICBnYXA6IDEycHg7CiAgICB9CiAgICAuZGVtby1zZWN0aW9uIGgzIHsKICAgICAgbWFyZ2luOiAwIDAgOHB4IDA7CiAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgY29sb3I6ICM4ODg7CiAgICB9CiAgICAuZGVtby1yb3cgewogICAgICBkaXNwbGF5OiBmbGV4OwogICAgICBnYXA6IDEycHg7CiAgICAgIGZsZXgtd3JhcDogd3JhcDsKICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIH0KICA8L3N0eWxlPgogIDxkaXYgY2xhc3M9ImRlbW8tY29udGFpbmVyIj4KICAgIDxkaXYgY2xhc3M9ImRlbW8tc2VjdGlvbiI+CiAgICAgIDxoMz5CYXNpYyBVc2FnZTwvaDM+CiAgICAgIDxkaXYgY2xhc3M9ImRlbW8tcm93Ij4KICAgICAgICA8ZGVlcy1mb3JtLXN1Ym1pdD5TdWJtaXQgRm9ybTwvZGVlcy1mb3JtLXN1Ym1pdD4KICAgICAgICA8ZGVlcy1mb3JtLXN1Ym1pdCB0ZXh0PSJXaXRoIFRleHQgUHJvcGVydHkiPjwvZGVlcy1mb3JtLXN1Ym1pdD4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KCiAgICA8ZGl2IGNsYXNzPSJkZW1vLXNlY3Rpb24iPgogICAgICA8aDM+V2l0aCBJY29ucyAoaW5oZXJpdGVkIGZyb20gRGVlc0J1dHRvbik8L2gzPgogICAgICA8ZGl2IGNsYXNzPSJkZW1vLXJvdyI+CiAgICAgICAgPGRlZXMtZm9ybS1zdWJtaXQgaWNvbj0ibHVjaWRlOnNlbmQiPlN1Ym1pdDwvZGVlcy1mb3JtLXN1Ym1pdD4KICAgICAgICA8ZGVlcy1mb3JtLXN1Ym1pdCBpY29uPSJsdWNpZGU6c2F2ZSIgaWNvblBvc2l0aW9uPSJsZWZ0Ij5TYXZlIEZvcm08L2RlZXMtZm9ybS1zdWJtaXQ+CiAgICAgICAgPGRlZXMtZm9ybS1zdWJtaXQgaWNvbj0ibHVjaWRlOmFycm93LXJpZ2h0IiBpY29uUG9zaXRpb249InJpZ2h0Ij5Db250aW51ZTwvZGVlcy1mb3JtLXN1Ym1pdD4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KCiAgICA8ZGl2IGNsYXNzPSJkZW1vLXNlY3Rpb24iPgogICAgICA8aDM+QnV0dG9uIFR5cGVzPC9oMz4KICAgICAgPGRpdiBjbGFzcz0iZGVtby1yb3ciPgogICAgICAgIDxkZWVzLWZvcm0tc3VibWl0IHR5cGU9ImhpZ2hsaWdodGVkIiBpY29uPSJsdWNpZGU6c2VuZCI+SGlnaGxpZ2h0ZWQ8L2RlZXMtZm9ybS1zdWJtaXQ+CiAgICAgICAgPGRlZXMtZm9ybS1zdWJtaXQgdHlwZT0ibm9ybWFsIiBpY29uPSJsdWNpZGU6c2VuZCI+Tm9ybWFsPC9kZWVzLWZvcm0tc3VibWl0PgogICAgICAgIDxkZWVzLWZvcm0tc3VibWl0IHR5cGU9ImRpc2NyZWV0IiBpY29uPSJsdWNpZGU6c2VuZCI+RGlzY3JlZXQ8L2RlZXMtZm9ybS1zdWJtaXQ+CiAgICAgIDwvZGl2PgogICAgPC9kaXY+CgogICAgPGRpdiBjbGFzcz0iZGVtby1zZWN0aW9uIj4KICAgICAgPGgzPlNpemVzPC9oMz4KICAgICAgPGRpdiBjbGFzcz0iZGVtby1yb3ciPgogICAgICAgIDxkZWVzLWZvcm0tc3VibWl0IHNpemU9InNtYWxsIiBpY29uPSJsdWNpZGU6c2VuZCI+U21hbGw8L2RlZXMtZm9ybS1zdWJtaXQ+CiAgICAgICAgPGRlZXMtZm9ybS1zdWJtaXQgc2l6ZT0ibm9ybWFsIiBpY29uPSJsdWNpZGU6c2VuZCI+Tm9ybWFsPC9kZWVzLWZvcm0tc3VibWl0PgogICAgICAgIDxkZWVzLWZvcm0tc3VibWl0IHNpemU9ImxhcmdlIiBpY29uPSJsdWNpZGU6c2VuZCI+TGFyZ2U8L2RlZXMtZm9ybS1zdWJtaXQ+CiAgICAgIDwvZGl2PgogICAgPC9kaXY+CgogICAgPGRpdiBjbGFzcz0iZGVtby1zZWN0aW9uIj4KICAgICAgPGgzPlN0YXRlczwvaDM+CiAgICAgIDxkaXYgY2xhc3M9ImRlbW8tcm93Ij4KICAgICAgICA8ZGVlcy1mb3JtLXN1Ym1pdCBzdGF0dXM9Im5vcm1hbCIgaWNvbj0ibHVjaWRlOnNlbmQiPk5vcm1hbDwvZGVlcy1mb3JtLXN1Ym1pdD4KICAgICAgICA8ZGVlcy1mb3JtLXN1Ym1pdCBzdGF0dXM9InBlbmRpbmciIGljb249Imx1Y2lkZTpzZW5kIj5QZW5kaW5nPC9kZWVzLWZvcm0tc3VibWl0PgogICAgICAgIDxkZWVzLWZvcm0tc3VibWl0IHN0YXR1cz0ic3VjY2VzcyIgaWNvbj0ibHVjaWRlOmNoZWNrIj5TdWNjZXNzPC9kZWVzLWZvcm0tc3VibWl0PgogICAgICAgIDxkZWVzLWZvcm0tc3VibWl0IHN0YXR1cz0iZXJyb3IiIGljb249Imx1Y2lkZTp4Ij5FcnJvcjwvZGVlcy1mb3JtLXN1Ym1pdD4KICAgICAgICA8ZGVlcy1mb3JtLXN1Ym1pdCBkaXNhYmxlZCBpY29uPSJsdWNpZGU6c2VuZCI+RGlzYWJsZWQ8L2RlZXMtZm9ybS1zdWJtaXQ+CiAgICAgIDwvZGl2PgogICAgPC9kaXY+CgogICAgPGRpdiBjbGFzcz0iZGVtby1zZWN0aW9uIj4KICAgICAgPGgzPkluIGEgRm9ybSBDb250ZXh0PC9oMz4KICAgICAgPGRlZXMtZm9ybT4KICAgICAgICA8ZGVlcy1pbnB1dC10ZXh0IGxhYmVsPSJOYW1lIiBrZXk9Im5hbWUiPjwvZGVlcy1pbnB1dC10ZXh0PgogICAgICAgIDxkZWVzLWlucHV0LXRleHQgbGFiZWw9IkVtYWlsIiBrZXk9ImVtYWlsIj48L2RlZXMtaW5wdXQtdGV4dD4KICAgICAgICA8ZGVlcy1mb3JtLXN1Ym1pdCBpY29uPSJsdWNpZGU6c2VuZCIgdHlwZT0iaGlnaGxpZ2h0ZWQiPlN1Ym1pdCBGb3JtPC9kZWVzLWZvcm0tc3VibWl0PgogICAgICA8L2RlZXMtZm9ybT4KICAgIDwvZGl2PgogIDwvZGl2PgpgfSk7dmFyIGwzLHBvLEVsZSxUOD1sKCgpPT57WEVyKCk7U2UoKTtvdCgpO2wzPWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0scG89ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LEVsZT0oKCk9PntsZXQgZT1bemUoImRlZXMtZm9ybS1zdWJtaXQiKV0sdCxyPVtdLGEsaT1EZSxvLG49W10scz1bXSxjLGQ9W10sZj1bXSx1LHA9W10saD1bXSxiLHg9W10sZz1bXSx2LHc9W10sTT1bXSxGLEM9W10saz1bXSxOLCQ9W10sST1bXTt2YXIgQj1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IHo9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baih7dHlwZTpCb29sZWFuLHJlZmxlY3Q6ITB9KV0sYz1baih7dHlwZTpTdHJpbmd9KV0sdT1baih7dHlwZTpTdHJpbmd9KV0sYj1baih7dHlwZTpTdHJpbmcscmVmbGVjdDohMH0pXSx2PVtqKHt0eXBlOlN0cmluZyxyZWZsZWN0OiEwfSldLEY9W2ooe3R5cGU6U3RyaW5nfSldLE49W2ooe3R5cGU6U3RyaW5nfSldLGwzKHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZGlzYWJsZWQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnk9PiJkaXNhYmxlZCJpbiB5LGdldDp5PT55LmRpc2FibGVkLHNldDooeSxFKT0+e3kuZGlzYWJsZWQ9RX19LG1ldGFkYXRhOnp9LG4scyksbDModGhpcyxudWxsLGMse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ0ZXh0IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5PT4idGV4dCJpbiB5LGdldDp5PT55LnRleHQsc2V0Oih5LEUpPT57eS50ZXh0PUV9fSxtZXRhZGF0YTp6fSxkLGYpLGwzKHRoaXMsbnVsbCx1LHtraW5kOiJhY2Nlc3NvciIsbmFtZToic3RhdHVzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5PT4ic3RhdHVzImluIHksZ2V0Onk9Pnkuc3RhdHVzLHNldDooeSxFKT0+e3kuc3RhdHVzPUV9fSxtZXRhZGF0YTp6fSxwLGgpLGwzKHRoaXMsbnVsbCxiLHtraW5kOiJhY2Nlc3NvciIsbmFtZToidHlwZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eT0+InR5cGUiaW4geSxnZXQ6eT0+eS50eXBlLHNldDooeSxFKT0+e3kudHlwZT1FfX0sbWV0YWRhdGE6en0seCxnKSxsMyh0aGlzLG51bGwsdix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNpemUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnk9PiJzaXplImluIHksZ2V0Onk9Pnkuc2l6ZSxzZXQ6KHksRSk9Pnt5LnNpemU9RX19LG1ldGFkYXRhOnp9LHcsTSksbDModGhpcyxudWxsLEYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJpY29uIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5PT4iaWNvbiJpbiB5LGdldDp5PT55Lmljb24sc2V0Oih5LEUpPT57eS5pY29uPUV9fSxtZXRhZGF0YTp6fSxDLGspLGwzKHRoaXMsbnVsbCxOLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiaWNvblBvc2l0aW9uIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5PT4iaWNvblBvc2l0aW9uImluIHksZ2V0Onk9PnkuaWNvblBvc2l0aW9uLHNldDooeSxFKT0+e3kuaWNvblBvc2l0aW9uPUV9fSxtZXRhZGF0YTp6fSwkLEkpLGwzKG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOnp9LG51bGwsciksQj1hPXQudmFsdWUseiYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTp6fSl9c3RhdGljIGRlbW89WkVyO3N0YXRpYyBkZW1vR3JvdXBzPVsiRm9ybSIsIkJ1dHRvbiJdOyNlPXBvKHRoaXMsbiwhMSk7Z2V0IGRpc2FibGVkKCl7cmV0dXJuIHRoaXMuI2V9c2V0IGRpc2FibGVkKHope3RoaXMuI2U9en0jdD0ocG8odGhpcyxzKSxwbyh0aGlzLGQsdm9pZCAwKSk7Z2V0IHRleHQoKXtyZXR1cm4gdGhpcy4jdH1zZXQgdGV4dCh6KXt0aGlzLiN0PXp9I3I9KHBvKHRoaXMsZikscG8odGhpcyxwLCJub3JtYWwiKSk7Z2V0IHN0YXR1cygpe3JldHVybiB0aGlzLiNyfXNldCBzdGF0dXMoeil7dGhpcy4jcj16fSNhPShwbyh0aGlzLGgpLHBvKHRoaXMseCwiZGVmYXVsdCIpKTtnZXQgdHlwZSgpe3JldHVybiB0aGlzLiNhfXNldCB0eXBlKHope3RoaXMuI2E9en0jaT0ocG8odGhpcyxnKSxwbyh0aGlzLHcsImRlZmF1bHQiKSk7Z2V0IHNpemUoKXtyZXR1cm4gdGhpcy4jaX1zZXQgc2l6ZSh6KXt0aGlzLiNpPXp9I289KHBvKHRoaXMsTSkscG8odGhpcyxDLHZvaWQgMCkpO2dldCBpY29uKCl7cmV0dXJuIHRoaXMuI299c2V0IGljb24oeil7dGhpcy4jbz16fSNuPShwbyh0aGlzLGspLHBvKHRoaXMsJCwibGVmdCIpKTtnZXQgaWNvblBvc2l0aW9uKCl7cmV0dXJuIHRoaXMuI259c2V0IGljb25Qb3NpdGlvbih6KXt0aGlzLiNuPXp9Y29uc3RydWN0b3IoKXtzdXBlcigpLHBvKHRoaXMsSSl9c3RhdGljIHN0eWxlcz1bUGUsbS5kZWZhdWx0U3R5bGVzLGxlYAogICAgICA6aG9zdCB7CiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgICB9CiAgICAgIGRlZXMtYnV0dG9uIHsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgfQogICAgYF07cmVuZGVyKCl7cmV0dXJuIFNgCiAgICAgIDxkZWVzLWJ1dHRvbgogICAgICAgIC5zdGF0dXM9JHt0aGlzLnN0YXR1c30KICAgICAgICAudHlwZT0ke3RoaXMudHlwZX0KICAgICAgICAuc2l6ZT0ke3RoaXMuc2l6ZX0KICAgICAgICAuaWNvbj0ke3RoaXMuaWNvbn0KICAgICAgICAuaWNvblBvc2l0aW9uPSR7dGhpcy5pY29uUG9zaXRpb259CiAgICAgICAgLnRleHQ9JHt0aGlzLnRleHR9CiAgICAgICAgP2Rpc2FibGVkPSR7dGhpcy5kaXNhYmxlZH0KICAgICAgICBAY2xpY2tlZD0ke3RoaXMuc3VibWl0fQogICAgICA+CiAgICAgICAgPHNsb3Q+PC9zbG90PgogICAgICA8L2RlZXMtYnV0dG9uPgogICAgYH1hc3luYyBzdWJtaXQoKXtpZih0aGlzLmRpc2FibGVkKXJldHVybjtsZXQgej10aGlzLmNsb3Nlc3QoImRlZXMtZm9ybSIpO3omJnouZ2F0aGVyQW5kRGlzcGF0Y2gmJnouZ2F0aGVyQW5kRGlzcGF0Y2goKX1hc3luYyBmb2N1cygpe2xldCB6PWF3YWl0IHRoaXMuZG9tdG9vbHNQcm9taXNlO3RoaXMuZGlzYWJsZWR8fChhd2FpdCB6LmNvbnZlbmllbmNlLnNtYXJ0ZGVsYXkuZGVsYXlGb3IoMCksdGhpcy5zdWJtaXQoKSl9c3RhdGlje3BvKGEscil9fTtyZXR1cm4gQj1hfSkoKX0pO3ZhciBRRXIsS0VyPWwoKCk9PntTZSgpO3phKCk7dDEoKTtVOSgpO1Q4KCk7UUVyPSgpPT5TYAogIDxzdHlsZT4KICAgICR7bGVgCiAgICAgIC5kZW1vLWNvbnRhaW5lciB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGdhcDogMjRweDsKICAgICAgICBwYWRkaW5nOiAyNHB4OwogICAgICAgIG1heC13aWR0aDogMTIwMHB4OwogICAgICAgIG1hcmdpbjogMCBhdXRvOwogICAgICB9CiAgICAgIAogICAgICBkZWVzLXBhbmVsIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiAyNHB4OwogICAgICB9CiAgICAgIAogICAgICBkZWVzLXBhbmVsOmxhc3QtY2hpbGQgewogICAgICAgIG1hcmdpbi1ib3R0b206IDA7CiAgICAgIH0KICAgICAgCiAgICAgIC5ob3Jpem9udGFsLWdyb3VwIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgZ2FwOiAxNnB4OwogICAgICAgIGZsZXgtd3JhcDogd3JhcDsKICAgICAgfQogICAgICAKICAgICAgLmlucHV0LWdyb3VwIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgZ2FwOiAxNnB4OwogICAgICB9CgogICAgICAuc3BhY2VyIHsKICAgICAgICBoZWlnaHQ6IDIwMHB4OwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICBjb2xvcjogIzk5OTsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgIH0KICAgIGB9CiAgPC9zdHlsZT4KICAKICA8ZGl2IGNsYXNzPSJkZW1vLWNvbnRhaW5lciI+CiAgICA8ZGVlcy1kZW1vd3JhcHBlciAucnVuQWZ0ZXJSZW5kZXI9JHthc3luYyBlPT57bGV0IHQ9ZS5xdWVyeVNlbGVjdG9yKCdkZWVzLWlucHV0LWRyb3Bkb3duW2xhYmVsPSJTZWxlY3QgQ291bnRyeSJdJykscj1lLnF1ZXJ5U2VsZWN0b3IoJ2RlZXMtaW5wdXQtZHJvcGRvd25bbGFiZWw9IlNlbGVjdCBSb2xlIl0nKTt0JiZ0LmFkZEV2ZW50TGlzdGVuZXIoInNlbGVjdGVkT3B0aW9uIixhPT57Y29uc29sZS5sb2coIkNvdW50cnkgc2VsZWN0ZWQ6IixhLmRldGFpbCl9KSxyJiZyLmFkZEV2ZW50TGlzdGVuZXIoInNlbGVjdGVkT3B0aW9uIixhPT57Y29uc29sZS5sb2coIlJvbGUgc2VsZWN0ZWQ6IixhLmRldGFpbCl9KX19PgogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiMS4gQmFzaWMgRHJvcGRvd25zIn0gLnN1YnRpdGxlPSR7IlN0YW5kYXJkIGRyb3Bkb3duIHdpdGggc2VhcmNoIGZ1bmN0aW9uYWxpdHkgYW5kIHZhcmlvdXMgb3B0aW9ucyJ9PgogICAgICAgIDxkaXYgY2xhc3M9ImlucHV0LWdyb3VwIj4KICAgICAgICAgIDxkZWVzLWlucHV0LWRyb3Bkb3duCiAgICAgICAgICAgIC5sYWJlbD0keyJTZWxlY3QgQ291bnRyeSJ9CiAgICAgICAgICAgIC5vcHRpb25zPSR7W3tvcHRpb246IlVuaXRlZCBTdGF0ZXMiLGtleToidXMifSx7b3B0aW9uOiJDYW5hZGEiLGtleToiY2EifSx7b3B0aW9uOiJHZXJtYW55IixrZXk6ImRlIn0se29wdGlvbjoiRnJhbmNlIixrZXk6ImZyIn0se29wdGlvbjoiVW5pdGVkIEtpbmdkb20iLGtleToidWsifSx7b3B0aW9uOiJBdXN0cmFsaWEiLGtleToiYXUifSx7b3B0aW9uOiJKYXBhbiIsa2V5OiJqcCJ9LHtvcHRpb246IkJyYXppbCIsa2V5OiJiciJ9XX0KICAgICAgICAgICAgLnNlbGVjdGVkT3B0aW9uPSR7e29wdGlvbjoiVW5pdGVkIFN0YXRlcyIsa2V5OiJ1cyJ9fQogICAgICAgICAgPjwvZGVlcy1pbnB1dC1kcm9wZG93bj4KCiAgICAgICAgICA8ZGVlcy1pbnB1dC1kcm9wZG93bgogICAgICAgICAgICAubGFiZWw9JHsiU2VsZWN0IFJvbGUifQogICAgICAgICAgICAub3B0aW9ucz0ke1t7b3B0aW9uOiJBZG1pbmlzdHJhdG9yIixrZXk6ImFkbWluIn0se29wdGlvbjoiRWRpdG9yIixrZXk6ImVkaXRvciJ9LHtvcHRpb246IlZpZXdlciIsa2V5OiJ2aWV3ZXIifSx7b3B0aW9uOiJHdWVzdCIsa2V5OiJndWVzdCJ9XX0KICAgICAgICAgID48L2RlZXMtaW5wdXQtZHJvcGRvd24+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgIDwvZGVlcy1kZW1vd3JhcHBlcj4KICAgIAogICAgPGRlZXMtZGVtb3dyYXBwZXIgLnJ1bkFmdGVyUmVuZGVyPSR7YXN5bmMgZT0+e2xldCB0PWUucXVlcnlTZWxlY3RvcigiZGVlcy1pbnB1dC1kcm9wZG93biIpO3QmJnQuYWRkRXZlbnRMaXN0ZW5lcigic2VsZWN0ZWRPcHRpb24iLHI9Pntjb25zb2xlLmxvZyhgUHJpb3JpdHkgY2hhbmdlZCB0bzogJHtyLmRldGFpbC5vcHRpb259YCl9KX19PgogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiMi4gV2l0aG91dCBTZWFyY2gifSAuc3VidGl0bGU9JHsiRHJvcGRvd24gd2l0aCBzZWFyY2ggZnVuY3Rpb25hbGl0eSBkaXNhYmxlZCBmb3Igc2ltcGxlciBzZWxlY3Rpb24ifT4KICAgICAgICA8ZGVlcy1pbnB1dC1kcm9wZG93bgogICAgICAgICAgLmxhYmVsPSR7IlByaW9yaXR5IExldmVsIn0KICAgICAgICAgIC5lbmFibGVTZWFyY2g9JHshMX0KICAgICAgICAgIC5vcHRpb25zPSR7W3tvcHRpb246IkhpZ2giLGtleToiaGlnaCJ9LHtvcHRpb246Ik1lZGl1bSIsa2V5OiJtZWRpdW0ifSx7b3B0aW9uOiJMb3ciLGtleToibG93In1dfQogICAgICAgICAgLnNlbGVjdGVkT3B0aW9uPSR7e29wdGlvbjoiTWVkaXVtIixrZXk6Im1lZGl1bSJ9fQogICAgICAgID48L2RlZXMtaW5wdXQtZHJvcGRvd24+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgIDwvZGVlcy1kZW1vd3JhcHBlcj4KICAgIAogICAgPGRlZXMtZGVtb3dyYXBwZXIgLnJ1bkFmdGVyUmVuZGVyPSR7YXN5bmMgZT0+e2UucXVlcnlTZWxlY3RvckFsbCgiZGVlcy1pbnB1dC1kcm9wZG93biIpLmZvckVhY2gocj0+e3IuYWRkRXZlbnRMaXN0ZW5lcigic2VsZWN0ZWRPcHRpb24iLGE9PntsZXQgaT1yLmdldEF0dHJpYnV0ZSgibGFiZWwiKTtjb25zb2xlLmxvZyhgJHtpfTogJHthLmRldGFpbC5vcHRpb259YCl9KX0pfX0+CiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyIzLiBIb3Jpem9udGFsIExheW91dCJ9IC5zdWJ0aXRsZT0keyJNdWx0aXBsZSBkcm9wZG93bnMgaW4gYSBob3Jpem9udGFsIGxheW91dCBmb3IgY29tcGFjdCBmb3JtcyJ9PgogICAgICAgIDxkaXYgY2xhc3M9Imhvcml6b250YWwtZ3JvdXAiPgogICAgICAgICAgPGRlZXMtaW5wdXQtZHJvcGRvd24KICAgICAgICAgICAgLmxhYmVsPSR7IkRlcGFydG1lbnQifQogICAgICAgICAgICAubGF5b3V0TW9kZT0keyJob3Jpem9udGFsIn0KICAgICAgICAgICAgLm9wdGlvbnM9JHtbe29wdGlvbjoiRW5naW5lZXJpbmciLGtleToiZW5nIn0se29wdGlvbjoiRGVzaWduIixrZXk6ImRlc2lnbiJ9LHtvcHRpb246Ik1hcmtldGluZyIsa2V5OiJtYXJrZXRpbmcifSx7b3B0aW9uOiJTYWxlcyIsa2V5OiJzYWxlcyJ9XX0KICAgICAgICAgID48L2RlZXMtaW5wdXQtZHJvcGRvd24+CiAgICAgICAgICAKICAgICAgICAgIDxkZWVzLWlucHV0LWRyb3Bkb3duCiAgICAgICAgICAgIC5sYWJlbD0keyJUZWFtIFNpemUifQogICAgICAgICAgICAubGF5b3V0TW9kZT0keyJob3Jpem9udGFsIn0KICAgICAgICAgICAgLmVuYWJsZVNlYXJjaD0keyExfQogICAgICAgICAgICAub3B0aW9ucz0ke1t7b3B0aW9uOiIxLTUiLGtleToic21hbGwifSx7b3B0aW9uOiI2LTIwIixrZXk6Im1lZGl1bSJ9LHtvcHRpb246IjIxLTUwIixrZXk6ImxhcmdlIn0se29wdGlvbjoiNTArIixrZXk6InhsYXJnZSJ9XX0KICAgICAgICAgID48L2RlZXMtaW5wdXQtZHJvcGRvd24+CiAgICAgICAgICAKICAgICAgICAgIDxkZWVzLWlucHV0LWRyb3Bkb3duCiAgICAgICAgICAgIC5sYWJlbD0keyJMb2NhdGlvbiJ9CiAgICAgICAgICAgIC5sYXlvdXRNb2RlPSR7Imhvcml6b250YWwifQogICAgICAgICAgICAub3B0aW9ucz0ke1t7b3B0aW9uOiJSZW1vdGUiLGtleToicmVtb3RlIn0se29wdGlvbjoiT24tc2l0ZSIsa2V5OiJvbnNpdGUifSx7b3B0aW9uOiJIeWJyaWQiLGtleToiaHlicmlkIn1dfQogICAgICAgICAgPjwvZGVlcy1pbnB1dC1kcm9wZG93bj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgPC9kZWVzLWRlbW93cmFwcGVyPgogICAgCiAgICA8ZGVlcy1kZW1vd3JhcHBlciAucnVuQWZ0ZXJSZW5kZXI9JHthc3luYyBlPT57bGV0IHQ9ZS5xdWVyeVNlbGVjdG9yKCJkZWVzLWlucHV0LWRyb3Bkb3duW3JlcXVpcmVkXSIpO3QmJnQuYWRkRXZlbnRMaXN0ZW5lcigiYmx1ciIsKCk9Pntjb25zb2xlLmxvZygiUmVxdWlyZWQgZHJvcGRvd24gbG9zdCBmb2N1cyIpfSl9fT4KICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IjQuIFN0YXRlcyJ9IC5zdWJ0aXRsZT0keyJEaWZmZXJlbnQgc3RhdGVzIGFuZCBjb25maWd1cmF0aW9ucyJ9PgogICAgICAgIDxkaXYgY2xhc3M9ImlucHV0LWdyb3VwIj4KICAgICAgICAgIDxkZWVzLWlucHV0LWRyb3Bkb3duCiAgICAgICAgICAgIC5sYWJlbD0keyJSZXF1aXJlZCBGaWVsZCJ9CiAgICAgICAgICAgIC5yZXF1aXJlZD0keyEwfQogICAgICAgICAgICAub3B0aW9ucz0ke1t7b3B0aW9uOiJPcHRpb24gQSIsa2V5OiJhIn0se29wdGlvbjoiT3B0aW9uIEIiLGtleToiYiJ9LHtvcHRpb246Ik9wdGlvbiBDIixrZXk6ImMifV19CiAgICAgICAgICA+PC9kZWVzLWlucHV0LWRyb3Bkb3duPgoKICAgICAgICAgIDxkZWVzLWlucHV0LWRyb3Bkb3duCiAgICAgICAgICAgIC5sYWJlbD0keyJEaXNhYmxlZCBEcm9wZG93biJ9CiAgICAgICAgICAgIC5kaXNhYmxlZD0keyEwfQogICAgICAgICAgICAub3B0aW9ucz0ke1t7b3B0aW9uOiJDYW5ub3QgU2VsZWN0IixrZXk6ImRpc2FibGVkIn1dfQogICAgICAgICAgICAuc2VsZWN0ZWRPcHRpb249JHt7b3B0aW9uOiJDYW5ub3QgU2VsZWN0IixrZXk6ImRpc2FibGVkIn19CiAgICAgICAgICA+PC9kZWVzLWlucHV0LWRyb3Bkb3duPgogICAgICAgIDwvZGl2PgogICAgICA8L2RlZXMtcGFuZWw+CiAgICA8L2RlZXMtZGVtb3dyYXBwZXI+CiAgICAKICAgIDxkaXYgY2xhc3M9InNwYWNlciI+CiAgICAgIChTcGFjZXIgdG8gdGVzdCBkcm9wZG93biBwb3NpdGlvbmluZykKICAgIDwvZGl2PgogICAgCiAgICA8ZGVlcy1kZW1vd3JhcHBlciAucnVuQWZ0ZXJSZW5kZXI9JHthc3luYyBlPT57bGV0IHQ9ZS5xdWVyeVNlbGVjdG9yKCJkZWVzLWlucHV0LWRyb3Bkb3duIik7dCYmdC5hZGRFdmVudExpc3RlbmVyKCJzZWxlY3RlZE9wdGlvbiIscj0+e2NvbnNvbGUubG9nKCJCb3R0b20gZHJvcGRvd24gc2VsZWN0ZWQ6IixyLmRldGFpbCl9KX19PgogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiNS4gQm90dG9tIFBvc2l0aW9uaW5nIn0gLnN1YnRpdGxlPSR7IkRyb3Bkb3duIHRoYXQgb3BlbnMgdXB3YXJkIHdoZW4gbmVhciBib3R0b20gb2Ygdmlld3BvcnQifT4KICAgICAgICA8ZGVlcy1pbnB1dC1kcm9wZG93bgogICAgICAgICAgLmxhYmVsPSR7Ik9wZW5zIFVwd2FyZCJ9CiAgICAgICAgICAub3B0aW9ucz0ke1t7b3B0aW9uOiJGaXJzdCBPcHRpb24iLGtleToiZmlyc3QifSx7b3B0aW9uOiJTZWNvbmQgT3B0aW9uIixrZXk6InNlY29uZCJ9LHtvcHRpb246IlRoaXJkIE9wdGlvbiIsa2V5OiJ0aGlyZCJ9LHtvcHRpb246IkZvdXJ0aCBPcHRpb24iLGtleToiZm91cnRoIn0se29wdGlvbjoiRmlmdGggT3B0aW9uIixrZXk6ImZpZnRoIn1dfQogICAgICAgID48L2RlZXMtaW5wdXQtZHJvcGRvd24+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgIDwvZGVlcy1kZW1vd3JhcHBlcj4KCiAgICA8ZGVlcy1kZW1vd3JhcHBlciAucnVuQWZ0ZXJSZW5kZXI9JHthc3luYyBlPT57bGV0IHQ9ZS5xdWVyeVNlbGVjdG9yKCJkZWVzLWlucHV0LWRyb3Bkb3duIikscj1lLnF1ZXJ5U2VsZWN0b3IoIiNzZWxlY3Rpb24tb3V0cHV0Iik7dCYmciYmKHIuaW5uZXJIVE1MPSI8ZW0+U2VsZWN0IGEgcHJvZHVjdCB0byBzZWUgZGV0YWlscy4uLjwvZW0+Iix0LmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsYT0+e2EuZGV0YWlsLnZhbHVlJiYoci5pbm5lckhUTUw9YAogICAgICAgICAgICAgIDxzdHJvbmc+U2VsZWN0ZWQ6PC9zdHJvbmc+ICR7YS5kZXRhaWwudmFsdWUub3B0aW9ufTxicj4KICAgICAgICAgICAgICA8c3Ryb25nPktleTo8L3N0cm9uZz4gJHthLmRldGFpbC52YWx1ZS5rZXl9PGJyPgogICAgICAgICAgICAgIDxzdHJvbmc+UHJpY2U6PC9zdHJvbmc+ICQke2EuZGV0YWlsLnZhbHVlLnBheWxvYWQ/LnByaWNlfHwiTi9BIn08YnI+CiAgICAgICAgICAgICAgPHN0cm9uZz5GZWF0dXJlczo8L3N0cm9uZz4gJHthLmRldGFpbC52YWx1ZS5wYXlsb2FkPy5mZWF0dXJlcz8uam9pbigiLCAiKXx8Ik4vQSJ9CiAgICAgICAgICAgIGApfSkpfX0+CiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyI2LiBFdmVudCBIYW5kbGluZyAmIFBheWxvYWQifSAuc3VidGl0bGU9JHsiRHJvcGRvd24gd2l0aCBwYXlsb2FkIGRhdGEgYW5kIGNoYW5nZSBldmVudCBoYW5kbGluZyJ9PgogICAgICAgIDxkZWVzLWlucHV0LWRyb3Bkb3duCiAgICAgICAgICAubGFiZWw9JHsiU2VsZWN0IFByb2R1Y3QifQogICAgICAgICAgLm9wdGlvbnM9JHtbe29wdGlvbjoiQmFzaWMgUGxhbiIsa2V5OiJiYXNpYyIscGF5bG9hZDp7cHJpY2U6OS45OSxmZWF0dXJlczpbIkZlYXR1cmUgQSJdfX0se29wdGlvbjoiUHJvIFBsYW4iLGtleToicHJvIixwYXlsb2FkOntwcmljZToxOS45OSxmZWF0dXJlczpbIkZlYXR1cmUgQSIsIkZlYXR1cmUgQiJdfX0se29wdGlvbjoiRW50ZXJwcmlzZSBQbGFuIixrZXk6ImVudGVycHJpc2UiLHBheWxvYWQ6e3ByaWNlOjQ5Ljk5LGZlYXR1cmVzOlsiRmVhdHVyZSBBIiwiRmVhdHVyZSBCIiwiRmVhdHVyZSBDIl19fV19CiAgICAgICAgPjwvZGVlcy1pbnB1dC1kcm9wZG93bj4KICAgICAgICAKICAgICAgICA8ZGl2IGlkPSJzZWxlY3Rpb24tb3V0cHV0IiBzdHlsZT0ibWFyZ2luLXRvcDogMTZweDsgcGFkZGluZzogMTJweDsgYmFja2dyb3VuZDogcmdiYSgwLCAxMDUsIDI0MiwgMC4xKTsgYm9yZGVyLXJhZGl1czogNHB4OyBmb250LXNpemU6IDE0cHg7Ij48L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgPC9kZWVzLWRlbW93cmFwcGVyPgoKICAgIDxkZWVzLWRlbW93cmFwcGVyIC5ydW5BZnRlclJlbmRlcj0ke2FzeW5jIGU9PntsZXQgdD1lLnF1ZXJ5U2VsZWN0b3IoImRlZXMtZm9ybSIpLHI9ZS5xdWVyeVNlbGVjdG9yKCdkZWVzLWlucHV0LWRyb3Bkb3duW2tleT0icHJvamVjdFR5cGUiXScpLGE9ZS5xdWVyeVNlbGVjdG9yKCdkZWVzLWlucHV0LWRyb3Bkb3duW2tleT0iZnJhbWV3b3JrIl0nKTt0JiZ0LmFkZEV2ZW50TGlzdGVuZXIoImZvcm1EYXRhIixpPT57Y29uc29sZS5sb2coIkZvcm0gc3VibWl0dGVkIHdpdGggZGF0YToiLGkuZGV0YWlsLmRhdGEpfSksciYmYSYmci5hZGRFdmVudExpc3RlbmVyKCJzZWxlY3RlZE9wdGlvbiIsaT0+e2xldCBvPWkuZGV0YWlsLmtleTtjb25zb2xlLmxvZyhgUHJvamVjdCB0eXBlIGNoYW5nZWQgdG86ICR7b31gKX0pfX0+CiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyI3LiBGb3JtIEludGVncmF0aW9uIn0gLnN1YnRpdGxlPSR7IkRyb3Bkb3duIHdvcmtpbmcgd2l0aGluIGEgZm9ybSB3aXRoIHZhbGlkYXRpb24ifT4KICAgICAgICA8ZGVlcy1mb3JtPgogICAgICAgICAgPGRlZXMtaW5wdXQtZHJvcGRvd24KICAgICAgICAgICAgLmxhYmVsPSR7IlByb2plY3QgVHlwZSJ9CiAgICAgICAgICAgIC5rZXk9JHsicHJvamVjdFR5cGUifQogICAgICAgICAgICAucmVxdWlyZWQ9JHshMH0KICAgICAgICAgICAgLm9wdGlvbnM9JHtbe29wdGlvbjoiV2ViIEFwcGxpY2F0aW9uIixrZXk6IndlYiJ9LHtvcHRpb246Ik1vYmlsZSBBcHBsaWNhdGlvbiIsa2V5OiJtb2JpbGUifSx7b3B0aW9uOiJEZXNrdG9wIEFwcGxpY2F0aW9uIixrZXk6ImRlc2t0b3AifSx7b3B0aW9uOiJBUEkgU2VydmljZSIsa2V5OiJhcGkifV19CiAgICAgICAgICA+PC9kZWVzLWlucHV0LWRyb3Bkb3duPgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1pbnB1dC1kcm9wZG93bgogICAgICAgICAgICAubGFiZWw9JHsiRGV2ZWxvcG1lbnQgRnJhbWV3b3JrIn0KICAgICAgICAgICAgLmtleT0keyJmcmFtZXdvcmsifQogICAgICAgICAgICAucmVxdWlyZWQ9JHshMH0KICAgICAgICAgICAgLm9wdGlvbnM9JHtbe29wdGlvbjoiUmVhY3QiLGtleToicmVhY3QiLHBheWxvYWQ6e3R5cGU6IndlYiJ9fSx7b3B0aW9uOiJWdWUuanMiLGtleToidnVlIixwYXlsb2FkOnt0eXBlOiJ3ZWIifX0se29wdGlvbjoiQW5ndWxhciIsa2V5OiJhbmd1bGFyIixwYXlsb2FkOnt0eXBlOiJ3ZWIifX0se29wdGlvbjoiUmVhY3QgTmF0aXZlIixrZXk6InJlYWN0LW5hdGl2ZSIscGF5bG9hZDp7dHlwZToibW9iaWxlIn19LHtvcHRpb246IkZsdXR0ZXIiLGtleToiZmx1dHRlciIscGF5bG9hZDp7dHlwZToibW9iaWxlIn19LHtvcHRpb246IkVsZWN0cm9uIixrZXk6ImVsZWN0cm9uIixwYXlsb2FkOnt0eXBlOiJkZXNrdG9wIn19XX0KICAgICAgICAgID48L2RlZXMtaW5wdXQtZHJvcGRvd24+CiAgICAgICAgICAKICAgICAgICAgIDxkZWVzLWZvcm0tc3VibWl0IC50ZXh0PSR7IkNyZWF0ZSBQcm9qZWN0In0+PC9kZWVzLWZvcm0tc3VibWl0PgogICAgICAgIDwvZGVlcy1mb3JtPgogICAgICA8L2RlZXMtcGFuZWw+CiAgICA8L2RlZXMtZGVtb3dyYXBwZXI+CiAgPC9kaXY+CmB9KTt2YXIgRmMsaDEsJGxlLFBsZT1sKCgpPT57U2UoKTtlcigpO0tFcigpO1BhKCk7dW8oKTtvdCgpO0ZjPWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0saDE9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LCRsZT0oKCk9PntsZXQgZT1bemUoImRlZXMtaW5wdXQtZHJvcGRvd24iKV0sdCxyPVtdLGEsaT1odCxvLG49W10scz1bXSxjLGQ9W10sZj1bXSx1LHA9W10saD1bXSxiLHg9W10sZz1bXSx2LHc9W10sTT1bXSxGLEM9W10saz1bXSxOLCQ9W10sST1bXSxCLHo9W10seT1bXTt2YXIgRT1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IF89dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baigpXSxjPVtqKCldLHU9W2ooe3R5cGU6Qm9vbGVhbn0pXSxiPVtyZSgpXSx2PVtyZSgpXSxGPVtyZSgpXSxOPVtyZSgpXSxCPVtyZSgpXSxGYyh0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im9wdGlvbnMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOlA9PiJvcHRpb25zImluIFAsZ2V0OlA9PlAub3B0aW9ucyxzZXQ6KFAsVik9PntQLm9wdGlvbnM9Vn19LG1ldGFkYXRhOl99LG4scyksRmModGhpcyxudWxsLGMse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzZWxlY3RlZE9wdGlvbiIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6UD0+InNlbGVjdGVkT3B0aW9uImluIFAsZ2V0OlA9PlAuc2VsZWN0ZWRPcHRpb24sc2V0OihQLFYpPT57UC5zZWxlY3RlZE9wdGlvbj1WfX0sbWV0YWRhdGE6X30sZCxmKSxGYyh0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImVuYWJsZVNlYXJjaCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6UD0+ImVuYWJsZVNlYXJjaCJpbiBQLGdldDpQPT5QLmVuYWJsZVNlYXJjaCxzZXQ6KFAsVik9PntQLmVuYWJsZVNlYXJjaD1WfX0sbWV0YWRhdGE6X30scCxoKSxGYyh0aGlzLG51bGwsYix7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im9wZW5zVG9Ub3AiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOlA9PiJvcGVuc1RvVG9wImluIFAsZ2V0OlA9PlAub3BlbnNUb1RvcCxzZXQ6KFAsVik9PntQLm9wZW5zVG9Ub3A9Vn19LG1ldGFkYXRhOl99LHgsZyksRmModGhpcyxudWxsLHYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJmaWx0ZXJlZE9wdGlvbnMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOlA9PiJmaWx0ZXJlZE9wdGlvbnMiaW4gUCxnZXQ6UD0+UC5maWx0ZXJlZE9wdGlvbnMsc2V0OihQLFYpPT57UC5maWx0ZXJlZE9wdGlvbnM9Vn19LG1ldGFkYXRhOl99LHcsTSksRmModGhpcyxudWxsLEYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJoaWdobGlnaHRlZEluZGV4IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpQPT4iaGlnaGxpZ2h0ZWRJbmRleCJpbiBQLGdldDpQPT5QLmhpZ2hsaWdodGVkSW5kZXgsc2V0OihQLFYpPT57UC5oaWdobGlnaHRlZEluZGV4PVZ9fSxtZXRhZGF0YTpffSxDLGspLEZjKHRoaXMsbnVsbCxOLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiaXNPcGVuZWQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOlA9PiJpc09wZW5lZCJpbiBQLGdldDpQPT5QLmlzT3BlbmVkLHNldDooUCxWKT0+e1AuaXNPcGVuZWQ9Vn19LG1ldGFkYXRhOl99LCQsSSksRmModGhpcyxudWxsLEIse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzZWFyY2hWYWx1ZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6UD0+InNlYXJjaFZhbHVlImluIFAsZ2V0OlA9PlAuc2VhcmNoVmFsdWUsc2V0OihQLFYpPT57UC5zZWFyY2hWYWx1ZT1WfX0sbWV0YWRhdGE6X30seix5KSxGYyhudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTpffSxudWxsLHIpLEU9YT10LnZhbHVlLF8mJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6X30pfXN0YXRpYyBkZW1vPVFFcjtzdGF0aWMgZGVtb0dyb3Vwcz1bIklucHV0Il07I2U9aDEodGhpcyxuLFtdKTtnZXQgb3B0aW9ucygpe3JldHVybiB0aGlzLiNlfXNldCBvcHRpb25zKF8pe3RoaXMuI2U9X30jdD0oaDEodGhpcyxzKSxoMSh0aGlzLGQsbnVsbCkpO2dldCBzZWxlY3RlZE9wdGlvbigpe3JldHVybiB0aGlzLiN0fXNldCBzZWxlY3RlZE9wdGlvbihfKXt0aGlzLiN0PV99Z2V0IHZhbHVlKCl7cmV0dXJuIHRoaXMuc2VsZWN0ZWRPcHRpb259c2V0IHZhbHVlKF8pe3RoaXMuc2VsZWN0ZWRPcHRpb249X30jcj0oaDEodGhpcyxmKSxoMSh0aGlzLHAsITApKTtnZXQgZW5hYmxlU2VhcmNoKCl7cmV0dXJuIHRoaXMuI3J9c2V0IGVuYWJsZVNlYXJjaChfKXt0aGlzLiNyPV99I2E9KGgxKHRoaXMsaCksaDEodGhpcyx4LCExKSk7Z2V0IG9wZW5zVG9Ub3AoKXtyZXR1cm4gdGhpcy4jYX1zZXQgb3BlbnNUb1RvcChfKXt0aGlzLiNhPV99I2k9KGgxKHRoaXMsZyksaDEodGhpcyx3LFtdKSk7Z2V0IGZpbHRlcmVkT3B0aW9ucygpe3JldHVybiB0aGlzLiNpfXNldCBmaWx0ZXJlZE9wdGlvbnMoXyl7dGhpcy4jaT1ffSNvPShoMSh0aGlzLE0pLGgxKHRoaXMsQywwKSk7Z2V0IGhpZ2hsaWdodGVkSW5kZXgoKXtyZXR1cm4gdGhpcy4jb31zZXQgaGlnaGxpZ2h0ZWRJbmRleChfKXt0aGlzLiNvPV99I249KGgxKHRoaXMsayksaDEodGhpcywkLCExKSk7Z2V0IGlzT3BlbmVkKCl7cmV0dXJuIHRoaXMuI259c2V0IGlzT3BlbmVkKF8pe3RoaXMuI249X30jcz0oaDEodGhpcyxJKSxoMSh0aGlzLHosIiIpKTtnZXQgc2VhcmNoVmFsdWUoKXtyZXR1cm4gdGhpcy4jc31zZXQgc2VhcmNoVmFsdWUoXyl7dGhpcy4jcz1ffXN0YXRpYyBzdHlsZXM9W1BlLC4uLmh0LmJhc2VTdHlsZXMsbS5kZWZhdWx0U3R5bGVzLGxlYAogICAgICAvKiBUT0RPOiBNaWdyYXRlIGhhcmRjb2RlZCB2YWx1ZXMgdG8gLS1kZWVzLSogQ1NTIHZhcmlhYmxlcyAqLwogICAgICAqIHsKICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgICB9CgogICAgICA6aG9zdCB7CiAgICAgICAgZm9udC1mYW1pbHk6ICR7WHJ9OwogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDE1JSkiLCJoc2woMCAwJSA5MCUpIil9OwogICAgICB9CgogICAgICAubWFpbmNvbnRhaW5lciB7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICB9CgogICAgICAuc2VsZWN0ZWRCb3ggewogICAgICAgIHVzZXItc2VsZWN0OiBub25lOwogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBoZWlnaHQ6IDQwcHg7CiAgICAgICAgbGluZS1oZWlnaHQ6IDM4cHg7CiAgICAgICAgcGFkZGluZzogMCA0MHB4IDAgMTJweDsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5JSkiLCJoc2woMCAwJSA5NSUpIil9OwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOwogICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgICAgIH0KCiAgICAgIC5zZWxlY3RlZEJveDpob3Zlcjpub3QoLmRpc2FibGVkKSB7CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNzkuOCUpIiwiaHNsKDAgMCUgMjAuOSUpIil9OwogICAgICB9CgogICAgICAuc2VsZWN0ZWRCb3g6Zm9jdXMtdmlzaWJsZSB7CiAgICAgICAgb3V0bGluZTogbm9uZTsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjIyLjIgNDcuNCUgNTEuMiUpIiwiaHNsKDIxNy4yIDkxLjIlIDU5LjglKSIpfTsKICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggJHttLmJkVGhlbWUoImhzbCgyMjIuMiA0Ny40JSA1MS4yJSAvIDAuMSkiLCJoc2woMjE3LjIgOTEuMiUgNTkuOCUgLyAwLjEpIil9OwogICAgICB9CgogICAgICAuc2VsZWN0ZWRCb3guZGlzYWJsZWQgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5NS4xJSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNjMuOSUpIiwiaHNsKDAgMCUgNDUuMSUpIil9OwogICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7CiAgICAgICAgb3BhY2l0eTogMC41OwogICAgICB9CgogICAgICAvKiBEcm9wZG93biBhcnJvdyAqLwogICAgICAuc2VsZWN0ZWRCb3g6OmFmdGVyIHsKICAgICAgICBjb250ZW50OiAnJzsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgcmlnaHQ6IDEycHg7CiAgICAgICAgdG9wOiA1MCU7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgICAgIHdpZHRoOiAwOwogICAgICAgIGhlaWdodDogMDsKICAgICAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkIHRyYW5zcGFyZW50OwogICAgICAgIGJvcmRlci1yaWdodDogNHB4IHNvbGlkIHRyYW5zcGFyZW50OwogICAgICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgNDUuMSUpIiwiaHNsKDAgMCUgNjMuOSUpIil9OwogICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBlYXNlOwogICAgICB9CgogICAgICAuc2VsZWN0ZWRCb3gub3Blbjo6YWZ0ZXIgewogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoMTgwZGVnKTsKICAgICAgfQoKICAgICAgLnNlbGVjdGlvbkJveCB7CiAgICAgICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybSwgb3BhY2l0eTsKICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOHB4KSBzY2FsZSgwLjk4KTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTAwJSkiLCJoc2woMCAwJSAzLjklKSIpfTsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDZweCAtMXB4IGhzbCgwIDAlIDAlIC8gMC4xKSwgMCAycHggNHB4IC0ycHggaHNsKDAgMCUgMCUgLyAwLjEpOwogICAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7CiAgICAgICAgbWF4LWhlaWdodDogMzAwcHg7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHVzZXItc2VsZWN0OiBub25lOwogICAgICAgIG1hcmdpbi10b3A6IDRweDsKICAgICAgICB6LWluZGV4OiA1MDsKICAgICAgICBsZWZ0OiAwOwogICAgICAgIHJpZ2h0OiAwOwogICAgICB9CiAgICAgIAogICAgICAuc2VsZWN0aW9uQm94LnRvcCB7CiAgICAgICAgYm90dG9tOiBjYWxjKDEwMCUgKyA0cHgpOwogICAgICAgIHRvcDogYXV0bzsKICAgICAgICBtYXJnaW4tdG9wOiAwOwogICAgICAgIG1hcmdpbi1ib3R0b206IDRweDsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoOHB4KSBzY2FsZSgwLjk4KTsKICAgICAgfQogICAgICAKICAgICAgLnNlbGVjdGlvbkJveC5ib3R0b20gewogICAgICAgIHRvcDogMTAwJTsKICAgICAgfQoKICAgICAgLnNlbGVjdGlvbkJveC5zaG93IHsKICAgICAgICBwb2ludGVyLWV2ZW50czogYWxsOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSBzY2FsZSgxKTsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICB9CgogICAgICAvKiBPcHRpb25zIGNvbnRhaW5lciAqLwogICAgICAub3B0aW9ucy1jb250YWluZXIgewogICAgICAgIG1heC1oZWlnaHQ6IDI1MHB4OwogICAgICAgIG92ZXJmbG93LXk6IGF1dG87CiAgICAgICAgcGFkZGluZzogNHB4OwogICAgICB9CgogICAgICAvKiBPcHRpb25zICovCiAgICAgIC5vcHRpb24gewogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4OwogICAgICAgIHBhZGRpbmc6IDAgOHB4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgICBtYXJnaW46IDJweCAwOwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAxNSUpIiwiaHNsKDAgMCUgOTAlKSIpfTsKICAgICAgfQoKICAgICAgLm9wdGlvbi5oaWdobGlnaHRlZCB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk1LjElKSIsImhzbCgwIDAlIDE0LjklKSIpfTsKICAgICAgfQoKICAgICAgLm9wdGlvbjpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk1LjElKSIsImhzbCgwIDAlIDE0LjklKSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDklKSIsImhzbCgwIDAlIDk1JSkiKX07CiAgICAgIH0KCiAgICAgIC8qIE5vIG9wdGlvbnMgbWVzc2FnZSAqLwogICAgICAubm8tb3B0aW9ucyB7CiAgICAgICAgcGFkZGluZzogOHB4OwogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA0NS4xJSkiLCJoc2woMCAwJSA2My45JSkiKX07CiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljOwogICAgICB9CgogICAgICAvKiBTZWFyY2ggKi8KICAgICAgLnNlYXJjaCB7CiAgICAgICAgcGFkZGluZzogNHB4OwogICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgIG1hcmdpbi1ib3R0b206IDRweDsKICAgICAgfQogICAgICAKICAgICAgLnNlYXJjaC5ib3R0b20gewogICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7CiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OS44JSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsKICAgICAgICBtYXJnaW4tdG9wOiA0cHg7CiAgICAgIH0KICAgICAgCiAgICAgIC5zZWFyY2ggaW5wdXQgewogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGhlaWdodDogMzJweDsKICAgICAgICBwYWRkaW5nOiAwIDhweDsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgICBjb2xvcjogaW5oZXJpdDsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7CiAgICAgICAgb3V0bGluZTogbm9uZTsKICAgICAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xNXMgZWFzZTsKICAgICAgfQoKICAgICAgLnNlYXJjaCBpbnB1dDo6cGxhY2Vob2xkZXIgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNjMuOSUpIiwiaHNsKDAgMCUgNDUuMSUpIil9OwogICAgICB9CgogICAgICAuc2VhcmNoIGlucHV0OmZvY3VzIHsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjIyLjIgNDcuNCUgNTEuMiUpIiwiaHNsKDIxNy4yIDkxLjIlIDU5LjglKSIpfTsKICAgICAgfQoKICAgICAgLyogU2Nyb2xsYmFyIHN0eWxpbmcgKi8KICAgICAgLm9wdGlvbnMtY29udGFpbmVyOjotd2Via2l0LXNjcm9sbGJhciB7CiAgICAgICAgd2lkdGg6IDhweDsKICAgICAgfQoKICAgICAgLm9wdGlvbnMtY29udGFpbmVyOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7CiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgIH0KCiAgICAgIC5vcHRpb25zLWNvbnRhaW5lcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OS44JSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICB9CgogICAgICAub3B0aW9ucy1jb250YWluZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNzkuOCUpIiwiaHNsKDAgMCUgMjAuOSUpIil9OwogICAgICB9CiAgICBgXTtyZW5kZXIoKXtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0iaW5wdXQtd3JhcHBlciI+CiAgICAgICAgPGRlZXMtbGFiZWwgLmxhYmVsPSR7dGhpcy5sYWJlbH0gLmRlc2NyaXB0aW9uPSR7dGhpcy5kZXNjcmlwdGlvbn0gLnJlcXVpcmVkPSR7dGhpcy5yZXF1aXJlZH0+PC9kZWVzLWxhYmVsPgogICAgICAgIDxkaXYgY2xhc3M9Im1haW5jb250YWluZXIiPgogICAgICAgICAgPGRpdgogICAgICAgICAgICBjbGFzcz0ic2VsZWN0ZWRCb3ggJHt0aGlzLmlzT3BlbmVkPyJvcGVuIjoiIn0gJHt0aGlzLmRpc2FibGVkPyJkaXNhYmxlZCI6IiJ9IgogICAgICAgICAgICBAY2xpY2s9IiR7KCk9PiF0aGlzLmRpc2FibGVkJiZ0aGlzLnRvZ2dsZVNlbGVjdGlvbkJveCgpfSIKICAgICAgICAgICAgdGFiaW5kZXg9IiR7dGhpcy5kaXNhYmxlZD8iLTEiOiIwIn0iCiAgICAgICAgICAgIEBrZXlkb3duPSIke3RoaXMuaGFuZGxlU2VsZWN0ZWRCb3hLZXlkb3dufSIKICAgICAgICAgID4KICAgICAgICAgICAgJHt0aGlzLnNlbGVjdGVkT3B0aW9uPy5vcHRpb258fCJTZWxlY3QgYW4gb3B0aW9uIn0KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0ic2VsZWN0aW9uQm94ICR7dGhpcy5pc09wZW5lZD8ic2hvdyI6IiJ9ICR7dGhpcy5vcGVuc1RvVG9wPyJ0b3AiOiJib3R0b20ifSI+CiAgICAgICAgICAgICR7dGhpcy5lbmFibGVTZWFyY2g/U2AKICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2VhcmNoIj4KICAgICAgICAgICAgICAgICAgICA8aW5wdXQgCiAgICAgICAgICAgICAgICAgICAgICB0eXBlPSJ0ZXh0IiAKICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPSJTZWFyY2ggb3B0aW9ucy4uLiIgCiAgICAgICAgICAgICAgICAgICAgICAudmFsdWU9IiR7dGhpcy5zZWFyY2hWYWx1ZX0iCiAgICAgICAgICAgICAgICAgICAgICBAaW5wdXQ9IiR7dGhpcy5oYW5kbGVTZWFyY2h9IgogICAgICAgICAgICAgICAgICAgICAgQGNsaWNrPSIke189Pl8uc3RvcFByb3BhZ2F0aW9uKCl9IgogICAgICAgICAgICAgICAgICAgICAgQGtleWRvd249IiR7dGhpcy5oYW5kbGVTZWFyY2hLZXlkb3dufSIKICAgICAgICAgICAgICAgICAgICAvPgogICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIGA6bnVsbH0KICAgICAgICAgICAgPGRpdiBjbGFzcz0ib3B0aW9ucy1jb250YWluZXIiPgogICAgICAgICAgICAgICR7dGhpcy5maWx0ZXJlZE9wdGlvbnMubGVuZ3RoPT09MD9TYDxkaXYgY2xhc3M9Im5vLW9wdGlvbnMiPk5vIG9wdGlvbnMgZm91bmQ8L2Rpdj5gOnRoaXMuZmlsdGVyZWRPcHRpb25zLm1hcCgoXyxQKT0+e2xldCBWPXRoaXMuaGlnaGxpZ2h0ZWRJbmRleD09PVA7cmV0dXJuIFNgCiAgICAgICAgICAgICAgICAgICAgICA8ZGl2CiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJvcHRpb24gJHtWPyJoaWdobGlnaHRlZCI6IiJ9IgogICAgICAgICAgICAgICAgICAgICAgICBAY2xpY2s9IiR7KCk9PnRoaXMudXBkYXRlU2VsZWN0aW9uKF8pfSIKICAgICAgICAgICAgICAgICAgICAgICAgQG1vdXNlZW50ZXI9IiR7KCk9PnRoaXMuaGlnaGxpZ2h0ZWRJbmRleD1QfSIKICAgICAgICAgICAgICAgICAgICAgID4KICAgICAgICAgICAgICAgICAgICAgICAgJHtfLm9wdGlvbn0KICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIGB9KX0KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICBgfWFzeW5jIGNvbm5lY3RlZENhbGxiYWNrKCl7c3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKSx0aGlzLmhhbmRsZUNsaWNrT3V0c2lkZT10aGlzLmhhbmRsZUNsaWNrT3V0c2lkZS5iaW5kKHRoaXMpfWZpcnN0VXBkYXRlZCgpe3RoaXMuc2VsZWN0ZWRPcHRpb249dGhpcy5zZWxlY3RlZE9wdGlvbnx8bnVsbCx0aGlzLmZpbHRlcmVkT3B0aW9ucz10aGlzLm9wdGlvbnN9dXBkYXRlZChfKXtzdXBlci51cGRhdGVkKF8pLF8uaGFzKCJvcHRpb25zIikmJih0aGlzLmZpbHRlcmVkT3B0aW9ucz10aGlzLm9wdGlvbnMpfWFzeW5jIHVwZGF0ZVNlbGVjdGlvbihfKXt0aGlzLnNlbGVjdGVkT3B0aW9uPV8sdGhpcy5pc09wZW5lZD0hMSx0aGlzLnNlYXJjaFZhbHVlPSIiLHRoaXMuZmlsdGVyZWRPcHRpb25zPXRoaXMub3B0aW9ucyx0aGlzLmhpZ2hsaWdodGVkSW5kZXg9MCx0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJzZWxlY3RlZE9wdGlvbiIse2RldGFpbDpfLGJ1YmJsZXM6ITB9KSksdGhpcy5jaGFuZ2VTdWJqZWN0Lm5leHQodGhpcyl9aGFuZGxlQ2xpY2tPdXRzaWRlPShoMSh0aGlzLHkpLF89PntfLmNvbXBvc2VkUGF0aCgpLmluY2x1ZGVzKHRoaXMpfHwodGhpcy5pc09wZW5lZD0hMSx0aGlzLnNlYXJjaFZhbHVlPSIiLHRoaXMuZmlsdGVyZWRPcHRpb25zPXRoaXMub3B0aW9ucyxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJjbGljayIsdGhpcy5oYW5kbGVDbGlja091dHNpZGUpKX0pO2FzeW5jIHRvZ2dsZVNlbGVjdGlvbkJveCgpe2lmKHRoaXMuaXNPcGVuZWQ9IXRoaXMuaXNPcGVuZWQsdGhpcy5pc09wZW5lZCl7bGV0IFA9dGhpcy5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoIi5zZWxlY3RlZEJveCIpLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLFY9d2luZG93LmlubmVySGVpZ2h0LVAuYm90dG9tLEg9UC50b3A7dGhpcy5vcGVuc1RvVG9wPVY8MzAwJiZIPlYsYXdhaXQgdGhpcy51cGRhdGVDb21wbGV0ZTtsZXQgVz10aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcigiLnNlYXJjaCBpbnB1dCIpO1cmJlcuZm9jdXMoKSxzZXRUaW1lb3V0KCgpPT57ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLHRoaXMuaGFuZGxlQ2xpY2tPdXRzaWRlKX0sMCl9ZWxzZSB0aGlzLnNlYXJjaFZhbHVlPSIiLHRoaXMuZmlsdGVyZWRPcHRpb25zPXRoaXMub3B0aW9ucyxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJjbGljayIsdGhpcy5oYW5kbGVDbGlja091dHNpZGUpfWhhbmRsZVNlYXJjaChfKXtsZXQgUD1fLnRhcmdldC52YWx1ZTt0aGlzLnNlYXJjaFZhbHVlPVA7bGV0IFY9UC50b0xvd2VyQ2FzZSgpO3RoaXMuZmlsdGVyZWRPcHRpb25zPXRoaXMub3B0aW9ucy5maWx0ZXIoSD0+SC5vcHRpb24udG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhWKSksdGhpcy5oaWdobGlnaHRlZEluZGV4PTB9aGFuZGxlS2V5RG93bihfKXtsZXQgUD1fLmtleSxWPXRoaXMuZmlsdGVyZWRPcHRpb25zLmxlbmd0aC0xO1A9PT0iQXJyb3dEb3duIj8oXy5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuaGlnaGxpZ2h0ZWRJbmRleD10aGlzLmhpZ2hsaWdodGVkSW5kZXgrMT5WPzA6dGhpcy5oaWdobGlnaHRlZEluZGV4KzEpOlA9PT0iQXJyb3dVcCI/KF8ucHJldmVudERlZmF1bHQoKSx0aGlzLmhpZ2hsaWdodGVkSW5kZXg9dGhpcy5oaWdobGlnaHRlZEluZGV4LTE8MD9WOnRoaXMuaGlnaGxpZ2h0ZWRJbmRleC0xKTpQPT09IkVudGVyIj8oXy5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuZmlsdGVyZWRPcHRpb25zW3RoaXMuaGlnaGxpZ2h0ZWRJbmRleF0mJnRoaXMudXBkYXRlU2VsZWN0aW9uKHRoaXMuZmlsdGVyZWRPcHRpb25zW3RoaXMuaGlnaGxpZ2h0ZWRJbmRleF0pKTpQPT09IkVzY2FwZSImJihfLnByZXZlbnREZWZhdWx0KCksdGhpcy5pc09wZW5lZD0hMSl9aGFuZGxlU2VhcmNoS2V5ZG93bihfKXsoXy5rZXk9PT0iQXJyb3dEb3duInx8Xy5rZXk9PT0iQXJyb3dVcCJ8fF8ua2V5PT09IkVudGVyIikmJnRoaXMuaGFuZGxlS2V5RG93bihfKX1oYW5kbGVTZWxlY3RlZEJveEtleWRvd24oXyl7dGhpcy5kaXNhYmxlZHx8KF8ua2V5PT09IkVudGVyInx8Xy5rZXk9PT0iICI/KF8ucHJldmVudERlZmF1bHQoKSx0aGlzLnRvZ2dsZVNlbGVjdGlvbkJveCgpKTpfLmtleT09PSJBcnJvd0Rvd24ifHxfLmtleT09PSJBcnJvd1VwIj8oXy5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuaXNPcGVuZWR8fHRoaXMudG9nZ2xlU2VsZWN0aW9uQm94KCkpOl8ua2V5PT09IkVzY2FwZSImJihfLnByZXZlbnREZWZhdWx0KCksdGhpcy5pc09wZW5lZCYmKHRoaXMuaXNPcGVuZWQ9ITEpKSl9Z2V0VmFsdWUoKXtyZXR1cm4gdGhpcy5zZWxlY3RlZE9wdGlvbn1zZXRWYWx1ZShfKXt0aGlzLnNlbGVjdGVkT3B0aW9uPV99YXN5bmMgZGlzY29ubmVjdGVkQ2FsbGJhY2soKXthd2FpdCBzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImNsaWNrIix0aGlzLmhhbmRsZUNsaWNrT3V0c2lkZSl9c3RhdGlje2gxKGEscil9fTtyZXR1cm4gRT1hfSkoKX0pO3ZhciBKRXIsZSRyPWwoKCk9PntTZSgpO0tsdCgpO3QxKCk7SkVyPSgpPT5TYAogIDxkZWVzLWRlbW93cmFwcGVyPgogICAgPHN0eWxlPgogICAgICAke2xlYAogICAgICAgIC5kZW1vLXNoZWxsIHsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgICAgZ2FwOiAzMnB4OwogICAgICAgICAgcGFkZGluZzogMjRweDsKICAgICAgICAgIG1heC13aWR0aDogMTE2MHB4OwogICAgICAgICAgbWFyZ2luOiAwIGF1dG87CiAgICAgICAgfQoKICAgICAgICAuZGVtby1ncmlkIHsKICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7CiAgICAgICAgICBnYXA6IDI0cHg7CiAgICAgICAgfQoKICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHsKICAgICAgICAgIC5kZW1vLWdyaWQtLXR3byB7CiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIG1pbm1heCgwLCAxZnIpKTsKICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIC5kZW1vLXN0YWNrIHsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgICAgZ2FwOiAxOHB4OwogICAgICAgIH0KCiAgICAgICAgLmRlbW8tbm90ZSB7CiAgICAgICAgICBtYXJnaW4tdG9wOiAxNnB4OwogICAgICAgICAgcGFkZGluZzogMTZweDsKICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEycHg7CiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDIxNyA5MSUgOTAlKSIsImhzbCgyMTUgMjAlIDI2JSkiKX07CiAgICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDIxMyAxMDAlIDk3JSkiLCJoc2woMjE1IDIwJSAxMiUpIil9OwogICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE1IDI1JSAzMiUpIiwiaHNsKDIxNSAyMCUgODIlKSIpfTsKICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU1OwogICAgICAgIH0KCiAgICAgICAgLmRlbW8tbm90ZSBzdHJvbmcgewogICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE3IDkxJSA0NSUpIiwiaHNsKDIxMyA5MyUgNjglKSIpfTsKICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgfQogICAgICBgfQogICAgPC9zdHlsZT4KCiAgICA8ZGl2IGNsYXNzPSJkZW1vLXNoZWxsIj4KICAgICAgPGRlZXMtcGFuZWwKICAgICAgICAudGl0bGU9JHsiTW9kZXJuIGZpbGUgdXBsb2FkZXIifQogICAgICAgIC5zdWJ0aXRsZT0keyJTaGFkY24taW5zcGlyZWQgbGF5b3V0IHdpdGggZHJhZyAmIGRyb3AsIHByZXZpZXdzIGFuZCB2YWxpZGF0aW9uIn0KICAgICAgPgogICAgICAgIDxkaXYgY2xhc3M9ImRlbW8tZ3JpZCBkZW1vLWdyaWQtLXR3byI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJkZW1vLXN0YWNrIj4KICAgICAgICAgICAgPGRlZXMtaW5wdXQtZmlsZXVwbG9hZAogICAgICAgICAgICAgIC5sYWJlbD0keyJBdHRhY2htZW50cyJ9CiAgICAgICAgICAgICAgLmRlc2NyaXB0aW9uPSR7IlVwbG9hZCBzdXBwb3J0aW5nIGRvY3VtZW50cyBmb3IgeW91ciByZXF1ZXN0In0KICAgICAgICAgICAgICAuYWNjZXB0PSR7ImltYWdlLyosLnBkZiwuemlwIn0KICAgICAgICAgICAgICAubWF4U2l6ZT0kezEwKjEwMjQqMTAyNH0KICAgICAgICAgICAgPjwvZGVlcy1pbnB1dC1maWxldXBsb2FkPgoKICAgICAgICAgICAgPGRlZXMtaW5wdXQtZmlsZXVwbG9hZAogICAgICAgICAgICAgIC5sYWJlbD0keyJCcmFuZCBhc3NldHMifQogICAgICAgICAgICAgIC5kZXNjcmlwdGlvbj0keyJVcGxvYWQgaGlnaC1yZXNvbHV0aW9uIGltYWdlcnkgKEpQRy9QTkcpIn0KICAgICAgICAgICAgICAuYWNjZXB0PSR7ImltYWdlL2pwZWcsaW1hZ2UvcG5nIn0KICAgICAgICAgICAgICAubXVsdGlwbGU9JHshMX0KICAgICAgICAgICAgICAubWF4U2l6ZT0kezUqMTAyNCoxMDI0fQogICAgICAgICAgICAgIC5idXR0b25UZXh0PSR7IlNlbGVjdCBjb3ZlciBpbWFnZSJ9CiAgICAgICAgICAgID48L2RlZXMtaW5wdXQtZmlsZXVwbG9hZD4KICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgIDxkaXYgY2xhc3M9ImRlbW8tc3RhY2siPgogICAgICAgICAgICA8ZGVlcy1pbnB1dC1maWxldXBsb2FkCiAgICAgICAgICAgICAgLmxhYmVsPSR7IkF1ZGlvIHVwbG9hZHMifQogICAgICAgICAgICAgIC5kZXNjcmlwdGlvbj0keyJTaGFyZSBwb2RjYXN0IGRyYWZ0cyAoTVAzL1dBViwgbWF4IDI1TUIgZWFjaCkifQogICAgICAgICAgICAgIC5hY2NlcHQ9JHsiYXVkaW8vKiJ9CiAgICAgICAgICAgICAgLm1heFNpemU9JHsyNSoxMDI0KjEwMjR9CiAgICAgICAgICAgID48L2RlZXMtaW5wdXQtZmlsZXVwbG9hZD4KCiAgICAgICAgICAgIDxkZWVzLWlucHV0LWZpbGV1cGxvYWQKICAgICAgICAgICAgICAubGFiZWw9JHsiRGlzYWJsZWQgZXhhbXBsZSJ9CiAgICAgICAgICAgICAgLmRlc2NyaXB0aW9uPSR7IlVwbG9hZGVyIGlzIGRpc2FibGVkIHdoaWxlIG1vZGVyYXRpb24gaXMgcGVuZGluZyJ9CiAgICAgICAgICAgICAgLmRpc2FibGVkPSR7ITB9CiAgICAgICAgICAgID48L2RlZXMtaW5wdXQtZmlsZXVwbG9hZD4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2RlZXMtcGFuZWw+CgogICAgICA8ZGVlcy1wYW5lbAogICAgICAgIC50aXRsZT0keyJGb3JtIGludGVncmF0aW9uIn0KICAgICAgICAuc3VidGl0bGU9JHsiQ29tYmluZSBmaWxlIHVwbG9hZHMgd2l0aCB0aGUgcmVzdCBvZiB0aGUgREVFUyBmb3JtIGVjb3N5c3RlbSJ9CiAgICAgID4KICAgICAgICA8ZGl2IGNsYXNzPSJkZW1vLWdyaWQiPgogICAgICAgICAgPGRlZXMtZm9ybT4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZGVtby1zdGFjayI+CiAgICAgICAgICAgICAgPGRlZXMtaW5wdXQtdGV4dAogICAgICAgICAgICAgICAgLmxhYmVsPSR7IlByb2plY3QgbmFtZSJ9CiAgICAgICAgICAgICAgICAuZGVzY3JpcHRpb249JHsiSG93IHNob3VsZCB3ZSByZWZlciB0byB0aGlzIHByb2plY3QgaW50ZXJuYWxseT8ifQogICAgICAgICAgICAgICAgLnJlcXVpcmVkPSR7ITB9CiAgICAgICAgICAgICAgICAua2V5PSR7InByb2plY3ROYW1lIn0KICAgICAgICAgICAgICA+PC9kZWVzLWlucHV0LXRleHQ+CgogICAgICAgICAgICAgIDxkZWVzLWlucHV0LXRleHQKICAgICAgICAgICAgICAgIC5sYWJlbD0keyJDb250YWN0IGVtYWlsIn0KICAgICAgICAgICAgICAgIC5pbnB1dFR5cGU9JHsiZW1haWwifQogICAgICAgICAgICAgICAgLnJlcXVpcmVkPSR7ITB9CiAgICAgICAgICAgICAgICAua2V5PSR7ImNvbnRhY3RFbWFpbCJ9CiAgICAgICAgICAgICAgPjwvZGVlcy1pbnB1dC10ZXh0PgoKICAgICAgICAgICAgICA8ZGVlcy1pbnB1dC1maWxldXBsb2FkCiAgICAgICAgICAgICAgICAubGFiZWw9JHsiU3RhdGVtZW50IG9mIHdvcmsifQogICAgICAgICAgICAgICAgLmRlc2NyaXB0aW9uPSR7IlVwbG9hZCBhIHNpZ25lZCBzdGF0ZW1lbnQgb2Ygd29yayAoUERGLCBtYXggMTVNQikifQogICAgICAgICAgICAgICAgLnJlcXVpcmVkPSR7ITB9CiAgICAgICAgICAgICAgICAuYWNjZXB0PSR7ImFwcGxpY2F0aW9uL3BkZiJ9CiAgICAgICAgICAgICAgICAubWF4U2l6ZT0kezE1KjEwMjQqMTAyNH0KICAgICAgICAgICAgICAgIC5tdWx0aXBsZT0keyExfQogICAgICAgICAgICAgICAgLmtleT0keyJzb3cifQogICAgICAgICAgICAgID48L2RlZXMtaW5wdXQtZmlsZXVwbG9hZD4KCiAgICAgICAgICAgICAgPGRlZXMtaW5wdXQtZmlsZXVwbG9hZAogICAgICAgICAgICAgICAgLmxhYmVsPSR7IkNyZWF0aXZlIHJlZmVyZW5jZXMifQogICAgICAgICAgICAgICAgLmRlc2NyaXB0aW9uPSR7Ik9wdGlvbmFsLiBVcGxvYWQgdXAgdG8gZml2ZSB2aXN1YWwgcmVmZXJlbmNlcyJ9CiAgICAgICAgICAgICAgICAuYWNjZXB0PSR7ImltYWdlLyoifQogICAgICAgICAgICAgICAgLm1heEZpbGVzPSR7NX0KICAgICAgICAgICAgICAgIC5tYXhTaXplPSR7OCoxMDI0KjEwMjR9CiAgICAgICAgICAgICAgICAua2V5PSR7InJlZmVyZW5jZXMifQogICAgICAgICAgICAgID48L2RlZXMtaW5wdXQtZmlsZXVwbG9hZD4KCiAgICAgICAgICAgICAgPGRlZXMtaW5wdXQtdGV4dAogICAgICAgICAgICAgICAgLmxhYmVsPSR7Ik5vdGVzIn0KICAgICAgICAgICAgICAgIC5kZXNjcmlwdGlvbj0keyJBZGQgb3B0aW9uYWwgY29udGV4dCBmb3IgcmV2aWV3ZXJzIn0KICAgICAgICAgICAgICAgIC5pbnB1dFR5cGU9JHsidGV4dGFyZWEifQogICAgICAgICAgICAgICAgLmtleT0keyJub3RlcyJ9CiAgICAgICAgICAgICAgPjwvZGVlcy1pbnB1dC10ZXh0PgoKICAgICAgICAgICAgICA8ZGVlcy1mb3JtLXN1Ym1pdCAudGV4dD0keyJTdWJtaXQgYnJpZWZpbmcifT48L2RlZXMtZm9ybS1zdWJtaXQ+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9kZWVzLWZvcm0+CgogICAgICAgICAgPGRpdiBjbGFzcz0iZGVtby1ub3RlIj4KICAgICAgICAgICAgPHN0cm9uZz5Hb29kIHRvIGtub3c6PC9zdHJvbmc+CiAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICA8bGk+RHJhZyAmIGRyb3AgaGlnaGxpZ2h0cyB0aGUgZHJvcHpvbmUgYW5kIHN1cHBvcnRzIGtleWJvYXJkIGFjdGl2YXRpb24uPC9saT4KICAgICAgICAgICAgICA8bGk+QWNjZXB0ZWQgZmlsZSB0eXBlcyBhcmUgc3VtbWFyaXNlZCBhdXRvbWF0aWNhbGx5IGZyb20gdGhlIDxjb2RlPmFjY2VwdDwvY29kZT4gYXR0cmlidXRlLjwvbGk+CiAgICAgICAgICAgICAgPGxpPkltYWdlIHVwbG9hZHMgc2hvdyBsaXZlIHByZXZpZXdzIGdlbmVyYXRlZCB2aWEgPGNvZGU+VVJMLmNyZWF0ZU9iamVjdFVSTDwvY29kZT4uPC9saT4KICAgICAgICAgICAgICA8bGk+RmlsZSBzaXplIGFuZCBmaWxlLWNvdW50IGxpbWl0cyBzdXJmYWNlIGlubGluZSB2YWxpZGF0aW9uIG1lc3NhZ2VzLjwvbGk+CiAgICAgICAgICAgICAgPGxpPlRoZSBjb21wb25lbnQgc3RheXMgY29tcGF0aWJsZSB3aXRoIDxjb2RlPmRlZXMtZm9ybTwvY29kZT4gdmFsdWUgYWNjZXNzb3JzLjwvbGk+CiAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgPC9kaXY+CiAgPC9kZWVzLWRlbW93cmFwcGVyPgpgfSk7dmFyIHQkcixyJHI9bCgoKT0+e1NlKCk7UGEoKTt0JHI9W20uZGVmYXVsdFN0eWxlcywuLi5odC5iYXNlU3R5bGVzLGxlYAogICAgOmhvc3QgewogICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgfQoKCiAgICAuaW5wdXQtd3JhcHBlciB7CiAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgIGdhcDogMTJweDsKICAgIH0KCiAgICAuZHJvcHpvbmUgewogICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgIHBhZGRpbmc6IDIwcHg7CiAgICAgIGJvcmRlci1yYWRpdXM6IDEycHg7CiAgICAgIGJvcmRlcjogMS41cHggZGFzaGVkICR7bS5iZFRoZW1lKCJoc2woMjE1IDE2JSA4MCUpIiwiaHNsKDIxNyAyMCUgMjUlKSIpfTsKICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDEwMCUpIiwiaHNsKDIxNSAyMCUgMTIlKSIpfTsKICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMnMgZWFzZSwgYm94LXNoYWRvdyAwLjJzIGVhc2UsIGJhY2tncm91bmQgMC4ycyBlYXNlOwogICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgIG91dGxpbmU6IG5vbmU7CiAgICB9CgogICAgLmRyb3B6b25lOmZvY3VzLXZpc2libGUgewogICAgICBib3gtc2hhZG93OiAwIDAgMCAycHggJHttLmJkVGhlbWUoImhzbCgwIDAlIDEwMCUpIiwiaHNsKDIxNSAyMCUgMTIlKSIpfSwKICAgICAgICAwIDAgMCA0cHggJHttLmJkVGhlbWUoImhzbCgyMTcgOTElIDYwJSAvIDAuNSkiLCJoc2woMjEzIDkzJSA2OCUgLyAwLjQpIil9OwogICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE3IDkxJSA2MCUpIiwiaHNsKDIxMyA5MyUgNjglKSIpfTsKICAgIH0KCiAgICAuZHJvcHpvbmUtLWFjdGl2ZSB7CiAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTcgOTElIDYwJSkiLCJoc2woMjEzIDkzJSA2OCUpIil9OwogICAgICBib3gtc2hhZG93OiAwIDEycHggMzJweCAke20uYmRUaGVtZSgicmdiYSgxNSwgMjMsIDQyLCAwLjEyKSIsInJnYmEoMCwgMCwgMCwgMC4zNSkiKX07CiAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjE3IDkxJSA2MCUgLyAwLjA2KSIsImhzbCgyMTMgOTMlIDY4JSAvIDAuMTIpIil9OwogICAgfQoKICAgIC5kcm9wem9uZS0taGFzLWZpbGVzIHsKICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk5JSkiLCJoc2woMjE1IDIwJSAxMSUpIil9OwogICAgfQoKICAgIC5kcm9wem9uZS0tZGlzYWJsZWQgewogICAgICBvcGFjaXR5OiAwLjY7CiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOwogICAgfQoKICAgIC5kcm9wem9uZV9fYm9keSB7CiAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgIGdhcDogMTZweDsKICAgIH0KCiAgICAuZHJvcHpvbmVfX2ljb24gewogICAgICB3aWR0aDogNDhweDsKICAgICAgaGVpZ2h0OiA0OHB4OwogICAgICBib3JkZXItcmFkaXVzOiAxNnB4OwogICAgICBkaXNwbGF5OiBmbGV4OwogICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE3IDkxJSA2MCUpIiwiaHNsKDIxMyA5MyUgNjglKSIpfTsKICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTcgOTElIDYwJSAvIDAuMTIpIiwiaHNsKDIxMyA5MyUgNjglIC8gMC4xMikiKX07CiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgZmxleC1zaHJpbms6IDA7CiAgICB9CgogICAgLmRyb3B6b25lX19pY29uIGRlZXMtaWNvbiB7CiAgICAgIGZvbnQtc2l6ZTogMjJweDsKICAgIH0KCiAgICAuZHJvcHpvbmVfX2xvYWRlciB7CiAgICAgIHdpZHRoOiAyMHB4OwogICAgICBoZWlnaHQ6IDIwcHg7CiAgICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4OwogICAgICBib3JkZXI6IDJweCBzb2xpZCAke20uYmRUaGVtZSgicmdiYSgxNSwgMjMsIDQyLCAwLjE1KSIsInJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkiKX07CiAgICAgIGJvcmRlci10b3AtY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE3IDkxJSA2MCUpIiwiaHNsKDIxMyA5MyUgNjglKSIpfTsKICAgICAgYW5pbWF0aW9uOiBsb2FkZXItc3BpbiAwLjZzIGxpbmVhciBpbmZpbml0ZTsKICAgIH0KCiAgICAuZHJvcHpvbmVfX2NvbnRlbnQgewogICAgICBkaXNwbGF5OiBmbGV4OwogICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICBnYXA6IDRweDsKICAgICAgbWluLXdpZHRoOiAwOwogICAgfQoKICAgIC5kcm9wem9uZV9faGVhZGxpbmUgewogICAgICBmb250LXNpemU6IDE1cHg7CiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIyMiA0NyUgMTElKSIsImhzbCgyMTAgMjAlIDk2JSkiKX07CiAgICB9CgogICAgLmRyb3B6b25lX19zdWJsaW5lIHsKICAgICAgZm9udC1zaXplOiAxM3B4OwogICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUgMTYlIDQ2JSkiLCJoc2woMjE1IDE2JSA3MCUpIil9OwogICAgfQoKICAgIC5kcm9wem9uZV9fYnJvd3NlIHsKICAgICAgYXBwZWFyYW5jZTogbm9uZTsKICAgICAgYm9yZGVyOiBub25lOwogICAgICBiYWNrZ3JvdW5kOiBub25lOwogICAgICBwYWRkaW5nOiAwOwogICAgICBtYXJnaW4tbGVmdDogNHB4OwogICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTcgOTElIDYwJSkiLCJoc2woMjEzIDkzJSA2OCUpIil9OwogICAgICBmb250LXdlaWdodDogNjAwOwogICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICAgIH0KCiAgICAuZHJvcHpvbmVfX2Jyb3dzZTpob3ZlciB7CiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOwogICAgfQoKICAgIC5kcm9wem9uZV9fYnJvd3NlOmRpc2FibGVkIHsKICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsKICAgICAgb3BhY2l0eTogMC42OwogICAgfQoKICAgIC5kcm9wem9uZV9fbWV0YSB7CiAgICAgIG1hcmdpbi10b3A6IDE0cHg7CiAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgIGZsZXgtd3JhcDogd3JhcDsKICAgICAgZ2FwOiA4cHg7CiAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE1IDE2JSA1MCUpIiwiaHNsKDIxNSAxNiUgNzIlKSIpfTsKICAgIH0KCiAgICAuZHJvcHpvbmVfX21ldGEgc3BhbiB7CiAgICAgIHBhZGRpbmc6IDRweCAxMHB4OwogICAgICBib3JkZXItcmFkaXVzOiA5OTlweDsKICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTcgOTElIDk1JSkiLCJoc2woMjEzIDkzJSAxOCUpIil9OwogICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDIxNyA5MSUgOTAlKSIsImhzbCgyMTMgOTMlIDI0JSkiKX07CiAgICB9CgogICAgLmZpbGUtbGlzdCB7CiAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgIGdhcDogMTJweDsKICAgICAgbWFyZ2luLXRvcDogMjBweDsKICAgICAgcGFkZGluZy10b3A6IDIwcHg7CiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDIxNyA5MSUgOTAlKSIsImhzbCgyMTMgOTMlIDI0JSkiKX07CiAgICB9CgogICAgLmZpbGUtbGlzdF9faGVhZGVyIHsKICAgICAgZGlzcGxheTogZmxleDsKICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwogICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNSAxNiUgNDUlKSIsImhzbCgyMTUgMTYlIDY4JSkiKX07CiAgICB9CgogICAgLmZpbGUtbGlzdF9fY2xlYXIgewogICAgICBhcHBlYXJhbmNlOiBub25lOwogICAgICBib3JkZXI6IG5vbmU7CiAgICAgIGJhY2tncm91bmQ6IG5vbmU7CiAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNyA5MSUgNjAlKSIsImhzbCgyMTMgOTMlIDY4JSkiKX07CiAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgZm9udC1zaXplOiAxM3B4OwogICAgICBwYWRkaW5nOiAwOwogICAgfQoKICAgIC5maWxlLWxpc3RfX2NsZWFyOmhvdmVyIHsKICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7CiAgICB9CgogICAgLmZpbGUtbGlzdF9faXRlbXMgewogICAgICBkaXNwbGF5OiBmbGV4OwogICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICBnYXA6IDEycHg7CiAgICB9CgogICAgLmZpbGUtcm93IHsKICAgICAgZGlzcGxheTogZmxleDsKICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgZ2FwOiAxMnB4OwogICAgICBwYWRkaW5nOiAxMHB4IDEycHg7CiAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAxMDAlIC8gMC41KSIsImhzbCgyMTUgMjAlIDE2JSAvIDAuNSkiKX07CiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMjEzIDI3JSA5MiUpIiwiaHNsKDIxNyAyNSUgMjYlKSIpfTsKICAgICAgYm9yZGVyLXJhZGl1czogOHB4OwogICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMTVzIGVhc2U7CiAgICB9CgogICAgLmZpbGUtcm93OmhvdmVyIHsKICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDEwMCUgLyAwLjgpIiwiaHNsKDIxNSAyMCUgMTYlIC8gMC44KSIpfTsKICAgIH0KCiAgICAuZmlsZS10aHVtYiB7CiAgICAgIHdpZHRoOiAzNnB4OwogICAgICBoZWlnaHQ6IDM2cHg7CiAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTQgMzElIDkyJSkiLCJoc2woMjE3IDMyJSAxOCUpIil9OwogICAgICBkaXNwbGF5OiBmbGV4OwogICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgZmxleC1zaHJpbms6IDA7CiAgICB9CgogICAgLmZpbGUtdGh1bWIgZGVlcy1pY29uIHsKICAgICAgZm9udC1zaXplOiAxOHB4OwogICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUgMTYlIDQ1JSkiLCJoc2woMjE1IDE2JSA3MCUpIil9OwogICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgd2lkdGg6IDE4cHg7CiAgICAgIGhlaWdodDogMThweDsKICAgICAgbGluZS1oZWlnaHQ6IDE7CiAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgfQoKCiAgICAudGh1bWItaW1hZ2UgewogICAgICB3aWR0aDogMTAwJTsKICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICBvYmplY3QtZml0OiBjb3ZlcjsKICAgIH0KCiAgICAuZmlsZS1tZXRhIHsKICAgICAgZGlzcGxheTogZmxleDsKICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgZ2FwOiA0cHg7CiAgICAgIG1pbi13aWR0aDogMDsKICAgIH0KCiAgICAuZmlsZS1uYW1lIHsKICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMjIgNDclIDExJSkiLCJoc2woMjEwIDIwJSA5NiUpIil9OwogICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsKICAgIH0KCiAgICAuZmlsZS1kZXRhaWxzIHsKICAgICAgZGlzcGxheTogZmxleDsKICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgZ2FwOiA4cHg7CiAgICAgIGZsZXgtd3JhcDogd3JhcDsKICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUgMTYlIDQ2JSkiLCJoc2woMjE1IDE2JSA3MCUpIil9OwogICAgfQoKICAgIC5maWxlLXNpemUgewogICAgICBmb250LXZhcmlhbnQtbnVtZXJpYzogdGFidWxhci1udW1zOwogICAgfQoKICAgIC5maWxlLXR5cGUgewogICAgICBwYWRkaW5nOiAycHggOHB4OwogICAgICBib3JkZXItcmFkaXVzOiA5OTlweDsKICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgyMTQgMzElIDg2JSkiLCJoc2woMjE3IDMyJSAyOCUpIil9OwogICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUgMTYlIDQ2JSkiLCJoc2woMjE1IDE2JSA3MCUpIil9OwogICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwogICAgICBsZXR0ZXItc3BhY2luZzogMC4wOGVtOwogICAgICBsaW5lLWhlaWdodDogMTsKICAgIH0KCiAgICAuZmlsZS1hY3Rpb25zIHsKICAgICAgZGlzcGxheTogZmxleDsKICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgZ2FwOiA4cHg7CiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOwogICAgfQoKICAgIC5yZW1vdmUtYnV0dG9uIHsKICAgICAgd2lkdGg6IDI4cHg7CiAgICAgIGhlaWdodDogMjhweDsKICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgYm9yZGVyOiBub25lOwogICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMTVzIGVhc2UsIHRyYW5zZm9ybSAwLjE1cyBlYXNlLCBjb2xvciAwLjE1cyBlYXNlOwogICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUgMTYlIDUyJSkiLCJoc2woMjE1IDE2JSA2OCUpIil9OwogICAgfQoKICAgIC5yZW1vdmUtYnV0dG9uOmhvdmVyIHsKICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDcyJSA1MCUgLyAwLjA4KSIsImhzbCgwIDYyJSAzMiUgLyAwLjE1KSIpfTsKICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCA3MiUgNDYlKSIsImhzbCgwIDcwJSA3MCUpIil9OwogICAgfQoKICAgIC5yZW1vdmUtYnV0dG9uOmFjdGl2ZSB7CiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC45Nik7CiAgICB9CgogICAgLnJlbW92ZS1idXR0b24gZGVlcy1pY29uIHsKICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgIHdpZHRoOiAxNHB4OwogICAgICBoZWlnaHQ6IDE0cHg7CiAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgbGluZS1oZWlnaHQ6IDE7CiAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgfQoKICAgIC52YWxpZGF0aW9uLW1lc3NhZ2UgewogICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgNzIlIDQwJSkiLCJoc2woMCA3MCUgNjglKSIpfTsKICAgICAgbGluZS1oZWlnaHQ6IDEuNTsKICAgIH0KCiAgICBAa2V5ZnJhbWVzIGxvYWRlci1zcGluIHsKICAgICAgdG8gewogICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7CiAgICAgIH0KICAgIH0KICBgXX0pO3ZhciBkbCxSaSxJbGUsS2x0PWwoKCk9PntQYSgpO2UkcigpO3IkcigpO2JyKCk7cTkoKTtTZSgpO2RsPWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sUmk9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LElsZT0oKCk9PntsZXQgZT1bemUoImRlZXMtaW5wdXQtZmlsZXVwbG9hZCIpXSx0LHI9W10sYSxpPWh0LG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdLHUscD1bXSxoPVtdLGIseD1bXSxnPVtdLHYsdz1bXSxNPVtdLEYsQz1bXSxrPVtdLE4sJD1bXSxJPVtdLEIsej1bXSx5PVtdLEUsXz1bXSxQPVtdO3ZhciBWPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgSD10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHthdHRyaWJ1dGU6ITF9KV0sYz1bcmUoKV0sdT1bcmUoKV0sYj1baih7dHlwZTpTdHJpbmd9KV0sdj1baih7dHlwZTpTdHJpbmd9KV0sRj1baih7dHlwZTpCb29sZWFufSldLE49W2ooe3R5cGU6TnVtYmVyfSldLEI9W2ooe3R5cGU6TnVtYmVyfSldLEU9W2ooe3R5cGU6U3RyaW5nLHJlZmxlY3Q6ITB9KV0sZGwodGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ2YWx1ZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Vz0+InZhbHVlImluIFcsZ2V0Olc9PlcudmFsdWUsc2V0OihXLGFlKT0+e1cudmFsdWU9YWV9fSxtZXRhZGF0YTpIfSxuLHMpLGRsKHRoaXMsbnVsbCxjLHtraW5kOiJhY2Nlc3NvciIsbmFtZToic3RhdGUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOlc9PiJzdGF0ZSJpbiBXLGdldDpXPT5XLnN0YXRlLHNldDooVyxhZSk9PntXLnN0YXRlPWFlfX0sbWV0YWRhdGE6SH0sZCxmKSxkbCh0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImlzTG9hZGluZyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Vz0+ImlzTG9hZGluZyJpbiBXLGdldDpXPT5XLmlzTG9hZGluZyxzZXQ6KFcsYWUpPT57Vy5pc0xvYWRpbmc9YWV9fSxtZXRhZGF0YTpIfSxwLGgpLGRsKHRoaXMsbnVsbCxiLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiYnV0dG9uVGV4dCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Vz0+ImJ1dHRvblRleHQiaW4gVyxnZXQ6Vz0+Vy5idXR0b25UZXh0LHNldDooVyxhZSk9PntXLmJ1dHRvblRleHQ9YWV9fSxtZXRhZGF0YTpIfSx4LGcpLGRsKHRoaXMsbnVsbCx2LHtraW5kOiJhY2Nlc3NvciIsbmFtZToiYWNjZXB0IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpXPT4iYWNjZXB0ImluIFcsZ2V0Olc9PlcuYWNjZXB0LHNldDooVyxhZSk9PntXLmFjY2VwdD1hZX19LG1ldGFkYXRhOkh9LHcsTSksZGwodGhpcyxudWxsLEYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJtdWx0aXBsZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Vz0+Im11bHRpcGxlImluIFcsZ2V0Olc9PlcubXVsdGlwbGUsc2V0OihXLGFlKT0+e1cubXVsdGlwbGU9YWV9fSxtZXRhZGF0YTpIfSxDLGspLGRsKHRoaXMsbnVsbCxOLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibWF4U2l6ZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Vz0+Im1heFNpemUiaW4gVyxnZXQ6Vz0+Vy5tYXhTaXplLHNldDooVyxhZSk9PntXLm1heFNpemU9YWV9fSxtZXRhZGF0YTpIfSwkLEkpLGRsKHRoaXMsbnVsbCxCLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibWF4RmlsZXMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOlc9PiJtYXhGaWxlcyJpbiBXLGdldDpXPT5XLm1heEZpbGVzLHNldDooVyxhZSk9PntXLm1heEZpbGVzPWFlfX0sbWV0YWRhdGE6SH0seix5KSxkbCh0aGlzLG51bGwsRSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InZhbGlkYXRpb25TdGF0ZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Vz0+InZhbGlkYXRpb25TdGF0ZSJpbiBXLGdldDpXPT5XLnZhbGlkYXRpb25TdGF0ZSxzZXQ6KFcsYWUpPT57Vy52YWxpZGF0aW9uU3RhdGU9YWV9fSxtZXRhZGF0YTpIfSxfLFApLGRsKG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOkh9LG51bGwsciksVj1hPXQudmFsdWUsSCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpIfSl9c3RhdGljIGRlbW89SkVyO3N0YXRpYyBkZW1vR3JvdXBzPVsiSW5wdXQiXTsjZT1SaSh0aGlzLG4sW10pO2dldCB2YWx1ZSgpe3JldHVybiB0aGlzLiNlfXNldCB2YWx1ZShIKXt0aGlzLiNlPUh9I3Q9KFJpKHRoaXMscyksUmkodGhpcyxkLCJpZGxlIikpO2dldCBzdGF0ZSgpe3JldHVybiB0aGlzLiN0fXNldCBzdGF0ZShIKXt0aGlzLiN0PUh9I3I9KFJpKHRoaXMsZiksUmkodGhpcyxwLCExKSk7Z2V0IGlzTG9hZGluZygpe3JldHVybiB0aGlzLiNyfXNldCBpc0xvYWRpbmcoSCl7dGhpcy4jcj1IfSNhPShSaSh0aGlzLGgpLFJpKHRoaXMseCwiU2VsZWN0IGZpbGVzIikpO2dldCBidXR0b25UZXh0KCl7cmV0dXJuIHRoaXMuI2F9c2V0IGJ1dHRvblRleHQoSCl7dGhpcy4jYT1IfSNpPShSaSh0aGlzLGcpLFJpKHRoaXMsdywiIikpO2dldCBhY2NlcHQoKXtyZXR1cm4gdGhpcy4jaX1zZXQgYWNjZXB0KEgpe3RoaXMuI2k9SH0jbz0oUmkodGhpcyxNKSxSaSh0aGlzLEMsITApKTtnZXQgbXVsdGlwbGUoKXtyZXR1cm4gdGhpcy4jb31zZXQgbXVsdGlwbGUoSCl7dGhpcy4jbz1IfSNuPShSaSh0aGlzLGspLFJpKHRoaXMsJCwwKSk7Z2V0IG1heFNpemUoKXtyZXR1cm4gdGhpcy4jbn1zZXQgbWF4U2l6ZShIKXt0aGlzLiNuPUh9I3M9KFJpKHRoaXMsSSksUmkodGhpcyx6LDApKTtnZXQgbWF4RmlsZXMoKXtyZXR1cm4gdGhpcy4jc31zZXQgbWF4RmlsZXMoSCl7dGhpcy4jcz1IfSNsPShSaSh0aGlzLHkpLFJpKHRoaXMsXyxudWxsKSk7Z2V0IHZhbGlkYXRpb25TdGF0ZSgpe3JldHVybiB0aGlzLiNsfXNldCB2YWxpZGF0aW9uU3RhdGUoSCl7dGhpcy4jbD1IfSNjPShSaSh0aGlzLFApLCIiKTtnZXQgdmFsaWRhdGlvbk1lc3NhZ2UoKXtyZXR1cm4gdGhpcy4jY31zZXQgdmFsaWRhdGlvbk1lc3NhZ2UoSCl7dGhpcy4jYz1IfXByZXZpZXdVcmxNYXA9bmV3IFdlYWtNYXA7ZHJvcEFyZWE9bnVsbDtzdGF0aWMgc3R5bGVzPXQkcjtyZW5kZXIoKXtsZXQgSD10aGlzLmdldEFjY2VwdGVkU3VtbWFyeSgpLFc9W3RoaXMubXVsdGlwbGU/Ik11bHRpcGxlIGZpbGVzIHN1cHBvcnRlZCI6IlNpbmdsZSBmaWxlIG9ubHkiLHRoaXMubWF4U2l6ZT4wP2BNYXggJHt0aGlzLmZvcm1hdEZpbGVTaXplKHRoaXMubWF4U2l6ZSl9YDoiTm8gc2l6ZSBsaW1pdCJdO3JldHVybiBIJiZXLnB1c2goYEFjY2VwdHMgJHtIfWApLFNgCiAgICAgIDxkaXYgY2xhc3M9ImlucHV0LXdyYXBwZXIiPgogICAgICAgIDxkZWVzLWxhYmVsCiAgICAgICAgICAubGFiZWw9JHt0aGlzLmxhYmVsfQogICAgICAgICAgLmRlc2NyaXB0aW9uPSR7dGhpcy5kZXNjcmlwdGlvbn0KICAgICAgICAgIC5yZXF1aXJlZD0ke3RoaXMucmVxdWlyZWR9CiAgICAgICAgPjwvZGVlcy1sYWJlbD4KICAgICAgICA8ZGl2CiAgICAgICAgICBjbGFzcz0iZHJvcHpvbmUgJHt0aGlzLnN0YXRlPT09ImRyYWdPdmVyIj8iZHJvcHpvbmUtLWFjdGl2ZSI6IiJ9ICR7dGhpcy5kaXNhYmxlZD8iZHJvcHpvbmUtLWRpc2FibGVkIjoiIn0gJHt0aGlzLnZhbHVlLmxlbmd0aD4wPyJkcm9wem9uZS0taGFzLWZpbGVzIjoiIn0iCiAgICAgICAgICByb2xlPSJidXR0b24iCiAgICAgICAgICB0YWJpbmRleD0ke3RoaXMuZGlzYWJsZWQ/LTE6MH0KICAgICAgICAgIGFyaWEtZGlzYWJsZWQ9JHt0aGlzLmRpc2FibGVkfQogICAgICAgICAgYXJpYS1sYWJlbD0ke2BTZWxlY3QgZmlsZXMke0g/YCAoJHtIfSlgOiIifWB9CiAgICAgICAgICBAY2xpY2s9JHt0aGlzLmhhbmRsZURyb3B6b25lQ2xpY2t9CiAgICAgICAgICBAa2V5ZG93bj0ke3RoaXMuaGFuZGxlRHJvcHpvbmVLZXlkb3dufQogICAgICAgID4KICAgICAgICAgIDxpbnB1dAogICAgICAgICAgICBjbGFzcz0iZmlsZS1pbnB1dCIKICAgICAgICAgICAgc3R5bGU9InBvc2l0aW9uOiBhYnNvbHV0ZTsgb3BhY2l0eTogMDsgcG9pbnRlci1ldmVudHM6IG5vbmU7IHdpZHRoOiAxcHg7IGhlaWdodDogMXB4OyB0b3A6IDA7IGxlZnQ6IDA7IG92ZXJmbG93OiBoaWRkZW47IgogICAgICAgICAgICB0eXBlPSJmaWxlIgogICAgICAgICAgICA/bXVsdGlwbGU9JHt0aGlzLm11bHRpcGxlfQogICAgICAgICAgICBhY2NlcHQ9JHt0aGlzLmFjY2VwdHx8IiJ9CiAgICAgICAgICAgID9kaXNhYmxlZD0ke3RoaXMuZGlzYWJsZWR9CiAgICAgICAgICAgIEBjaGFuZ2U9JHt0aGlzLmhhbmRsZUZpbGVJbnB1dENoYW5nZX0KICAgICAgICAgICAgdGFiaW5kZXg9Ii0xIgogICAgICAgICAgLz4KICAgICAgICAgIDxkaXYgY2xhc3M9ImRyb3B6b25lX19ib2R5Ij4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZHJvcHpvbmVfX2ljb24iPgogICAgICAgICAgICAgICR7dGhpcy5pc0xvYWRpbmc/U2A8c3BhbiBjbGFzcz0iZHJvcHpvbmVfX2xvYWRlciIgYXJpYS1oaWRkZW49InRydWUiPjwvc3Bhbj5gOlNgPGRlZXMtaWNvbiBpY29uPSJsdWNpZGU6Rm9sZGVyT3BlbiI+PC9kZWVzLWljb24+YH0KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRyb3B6b25lX19jb250ZW50Ij4KICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZHJvcHpvbmVfX2hlYWRsaW5lIj4ke3RoaXMuYnV0dG9uVGV4dHx8IlNlbGVjdCBmaWxlcyJ9PC9zcGFuPgogICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJkcm9wem9uZV9fc3VibGluZSI+CiAgICAgICAgICAgICAgICBEcmFnIGFuZCBkcm9wIGZpbGVzIGhlcmUgb3IKICAgICAgICAgICAgICAgIDxidXR0b24KICAgICAgICAgICAgICAgICAgdHlwZT0iYnV0dG9uIgogICAgICAgICAgICAgICAgICBjbGFzcz0iZHJvcHpvbmVfX2Jyb3dzZSIKICAgICAgICAgICAgICAgICAgQGNsaWNrPSR7dGhpcy5oYW5kbGVCcm93c2VDbGlja30KICAgICAgICAgICAgICAgICAgP2Rpc2FibGVkPSR7dGhpcy5kaXNhYmxlZH0KICAgICAgICAgICAgICAgID4KICAgICAgICAgICAgICAgICAgYnJvd3NlCiAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJkcm9wem9uZV9fbWV0YSI+CiAgICAgICAgICAgICR7Vy5tYXAoYWU9PlNgPHNwYW4+JHthZX08L3NwYW4+YCl9CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICR7dGhpcy5yZW5kZXJGaWxlTGlzdCgpfQogICAgICAgIDwvZGl2PgogICAgICAgICR7dGhpcy52YWxpZGF0aW9uTWVzc2FnZT9TYDxkaXYgY2xhc3M9InZhbGlkYXRpb24tbWVzc2FnZSIgYXJpYS1saXZlPSJwb2xpdGUiPiR7dGhpcy52YWxpZGF0aW9uTWVzc2FnZX08L2Rpdj5gOlNgYH0KICAgICAgPC9kaXY+CiAgICBgfXJlbmRlckZpbGVMaXN0KCl7cmV0dXJuIHRoaXMudmFsdWUubGVuZ3RoPT09MD9TYGA6U2AKICAgICAgPGRpdiBjbGFzcz0iZmlsZS1saXN0Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJmaWxlLWxpc3RfX2hlYWRlciI+CiAgICAgICAgICA8c3Bhbj4ke3RoaXMudmFsdWUubGVuZ3RofSBmaWxlJHt0aGlzLnZhbHVlLmxlbmd0aD09PTE/IiI6InMifSBzZWxlY3RlZDwvc3Bhbj4KICAgICAgICAgICR7dGhpcy52YWx1ZS5sZW5ndGg+MD9TYDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iZmlsZS1saXN0X19jbGVhciIgQGNsaWNrPSR7dGhpcy5oYW5kbGVDbGVhckFsbH0+Q2xlYXIgJHt0aGlzLnZhbHVlLmxlbmd0aD4xPyJhbGwiOiIifTwvYnV0dG9uPmA6U2BgfQogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImZpbGUtbGlzdF9faXRlbXMiPgogICAgICAgICAgJHt0aGlzLnZhbHVlLm1hcChIPT50aGlzLnJlbmRlckZpbGVSb3coSCkpfQogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIGB9cmVuZGVyRmlsZVJvdyhIKXtsZXQgVz10aGlzLmdldEZpbGVUeXBlKEgpLGFlPXRoaXMuY2FuU2hvd1ByZXZpZXcoSCk/dGhpcy5nZXRQcmV2aWV3VXJsKEgpOm51bGw7cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9ImZpbGUtcm93ICR7V30tZmlsZSI+CiAgICAgICAgPGRpdiBjbGFzcz0iZmlsZS10aHVtYiIgYXJpYS1oaWRkZW49InRydWUiPgogICAgICAgICAgJHthZT9TYDxpbWcgY2xhc3M9InRodW1iLWltYWdlIiBzcmM9JHthZX0gYWx0PSR7YFByZXZpZXcgb2YgJHtILm5hbWV9YH0+YDpTYDxkZWVzLWljb24gaWNvbj0ke3RoaXMuZ2V0RmlsZUljb24oSCl9PjwvZGVlcy1pY29uPmB9CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iZmlsZS1tZXRhIj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImZpbGUtbmFtZSIgdGl0bGU9JHtILm5hbWV9PiR7SC5uYW1lfTwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0iZmlsZS1kZXRhaWxzIj4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImZpbGUtc2l6ZSI+JHt0aGlzLmZvcm1hdEZpbGVTaXplKEguc2l6ZSl9PC9zcGFuPgogICAgICAgICAgICAke1chPT0iZmlsZSI/U2A8c3BhbiBjbGFzcz0iZmlsZS10eXBlIj4ke1d9PC9zcGFuPmA6U2BgfQogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iZmlsZS1hY3Rpb25zIj4KICAgICAgICAgIDxidXR0b24KICAgICAgICAgICAgdHlwZT0iYnV0dG9uIgogICAgICAgICAgICBjbGFzcz0icmVtb3ZlLWJ1dHRvbiIKICAgICAgICAgICAgQGNsaWNrPSR7KCk9PnRoaXMucmVtb3ZlRmlsZShIKX0KICAgICAgICAgICAgYXJpYS1sYWJlbD0ke2BSZW1vdmUgJHtILm5hbWV9YH0KICAgICAgICAgID4KICAgICAgICAgICAgPGRlZXMtaWNvbiBpY29uPSJsdWNpZGU6WCI+PC9kZWVzLWljb24+CiAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICBgfWhhbmRsZUZpbGVJbnB1dENoYW5nZT1hc3luYyBIPT57dGhpcy5pc0xvYWRpbmc9ITE7bGV0IFc9SC50YXJnZXQsYWU9QXJyYXkuZnJvbShXLmZpbGVzPz9bXSk7YWUubGVuZ3RoPjAmJmF3YWl0IHRoaXMuYWRkRmlsZXMoYWUpLFcudmFsdWU9IiJ9O2hhbmRsZURyb3B6b25lQ2xpY2s9SD0+e3RoaXMuZGlzYWJsZWR8fEgudGFyZ2V0LmNsb3Nlc3QoIi5kcm9wem9uZV9fYnJvd3NlLCAuZmlsZS1saXN0Iil8fHRoaXMub3BlbkZpbGVTZWxlY3RvcigpfTtoYW5kbGVCcm93c2VDbGljaz1IPT57dGhpcy5kaXNhYmxlZHx8KEguc3RvcFByb3BhZ2F0aW9uKCksdGhpcy5vcGVuRmlsZVNlbGVjdG9yKCkpfTtoYW5kbGVEcm9wem9uZUtleWRvd249SD0+e3RoaXMuZGlzYWJsZWR8fChILmtleT09PSJFbnRlciJ8fEgua2V5PT09IiAiKSYmKEgucHJldmVudERlZmF1bHQoKSx0aGlzLm9wZW5GaWxlU2VsZWN0b3IoKSl9O2hhbmRsZUNsZWFyQWxsPUg9PntILnByZXZlbnREZWZhdWx0KCksdGhpcy5jbGVhckFsbCgpfTtoYW5kbGVEcmFnRXZlbnQ9YXN5bmMgSD0+e2lmKEgucHJldmVudERlZmF1bHQoKSxILnN0b3BQcm9wYWdhdGlvbigpLCF0aGlzLmRpc2FibGVkKXtpZihILnR5cGU9PT0iZHJhZ2VudGVyInx8SC50eXBlPT09ImRyYWdvdmVyIil7SC5kYXRhVHJhbnNmZXImJihILmRhdGFUcmFuc2Zlci5kcm9wRWZmZWN0PSJjb3B5IiksdGhpcy5zdGF0ZT0iZHJhZ092ZXIiO3JldHVybn1pZihILnR5cGU9PT0iZHJhZ2xlYXZlIil7aWYoIXRoaXMuZHJvcEFyZWEpe3RoaXMuc3RhdGU9ImlkbGUiO3JldHVybn1sZXQgVz10aGlzLmRyb3BBcmVhLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLHtjbGllbnRYOmFlPTAsY2xpZW50WTpUPTB9PUg7KGFlPD1XLmxlZnR8fGFlPj1XLnJpZ2h0fHxUPD1XLnRvcHx8VD49Vy5ib3R0b20pJiYodGhpcy5zdGF0ZT0iaWRsZSIpO3JldHVybn1pZihILnR5cGU9PT0iZHJvcCIpe3RoaXMuc3RhdGU9ImlkbGUiO2xldCBXPUFycmF5LmZyb20oSC5kYXRhVHJhbnNmZXI/LmZpbGVzPz9bXSk7Vy5sZW5ndGg+MCYmYXdhaXQgdGhpcy5hZGRGaWxlcyhXKX19fTthdHRhY2hEcm9wTGlzdGVuZXJzKCl7dGhpcy5kcm9wQXJlYSYmWyJkcmFnZW50ZXIiLCJkcmFnb3ZlciIsImRyYWdsZWF2ZSIsImRyb3AiXS5mb3JFYWNoKEg9Pnt0aGlzLmRyb3BBcmVhLmFkZEV2ZW50TGlzdGVuZXIoSCx0aGlzLmhhbmRsZURyYWdFdmVudCl9KX1kZXRhY2hEcm9wTGlzdGVuZXJzKCl7dGhpcy5kcm9wQXJlYSYmWyJkcmFnZW50ZXIiLCJkcmFnb3ZlciIsImRyYWdsZWF2ZSIsImRyb3AiXS5mb3JFYWNoKEg9Pnt0aGlzLmRyb3BBcmVhLnJlbW92ZUV2ZW50TGlzdGVuZXIoSCx0aGlzLmhhbmRsZURyYWdFdmVudCl9KX1yZWJpbmRJbnRlcmFjdGl2ZUVsZW1lbnRzKCl7bGV0IEg9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCIuZHJvcHpvbmUiKTtIIT09dGhpcy5kcm9wQXJlYSYmKHRoaXMuZGV0YWNoRHJvcExpc3RlbmVycygpLHRoaXMuZHJvcEFyZWE9SCx0aGlzLmF0dGFjaERyb3BMaXN0ZW5lcnMoKSl9Zm9ybWF0RmlsZVNpemUoSCl7bGV0IFc9WyJCeXRlcyIsIktCIiwiTUIiLCJHQiJdO2lmKEg9PT0wKXJldHVybiIwIEJ5dGVzIjtsZXQgYWU9TWF0aC5taW4oTWF0aC5mbG9vcihNYXRoLmxvZyhIKS9NYXRoLmxvZygxMDI0KSksVy5sZW5ndGgtMSksVD1IL01hdGgucG93KDEwMjQsYWUpO3JldHVybmAke01hdGgucm91bmQoVCoxMDApLzEwMH0gJHtXW2FlXX1gfWdldEZpbGVUeXBlKEgpe2xldCBXPUgudHlwZS50b0xvd2VyQ2FzZSgpO3JldHVybiBXLnN0YXJ0c1dpdGgoImltYWdlLyIpPyJpbWFnZSI6Vz09PSJhcHBsaWNhdGlvbi9wZGYiPyJwZGYiOlcuaW5jbHVkZXMoIndvcmQiKXx8Vy5pbmNsdWRlcygiZG9jdW1lbnQiKT8iZG9jIjpXLmluY2x1ZGVzKCJzaGVldCIpfHxXLmluY2x1ZGVzKCJleGNlbCIpPyJzcHJlYWRzaGVldCI6Vy5pbmNsdWRlcygicHJlc2VudGF0aW9uIil8fFcuaW5jbHVkZXMoInBvd2VycG9pbnQiKT8icHJlc2VudGF0aW9uIjpXLnN0YXJ0c1dpdGgoInZpZGVvLyIpPyJ2aWRlbyI6Vy5zdGFydHNXaXRoKCJhdWRpby8iKT8iYXVkaW8iOlcuaW5jbHVkZXMoInppcCIpfHxXLmluY2x1ZGVzKCJjb21wcmVzc2VkIik/ImFyY2hpdmUiOiJmaWxlIn1nZXRGaWxlSWNvbihIKXtsZXQgVz10aGlzLmdldEZpbGVUeXBlKEgpO3JldHVybntpbWFnZToibHVjaWRlOkZpbGVJbWFnZSIscGRmOiJsdWNpZGU6RmlsZVRleHQiLGRvYzoibHVjaWRlOkZpbGVUZXh0IixzcHJlYWRzaGVldDoibHVjaWRlOkZpbGVTcHJlYWRzaGVldCIscHJlc2VudGF0aW9uOiJsdWNpZGU6RmlsZUJhckNoYXJ0Iix2aWRlbzoibHVjaWRlOkZpbGVWaWRlbyIsYXVkaW86Imx1Y2lkZTpGaWxlQXVkaW8iLGFyY2hpdmU6Imx1Y2lkZTpGaWxlQXJjaGl2ZSIsZmlsZToibHVjaWRlOkZpbGUifVtXXT8/Imx1Y2lkZTpGaWxlIn1jYW5TaG93UHJldmlldyhIKXtyZXR1cm4gSC50eXBlLnN0YXJ0c1dpdGgoImltYWdlLyIpJiZILnNpemU8NSoxMDI0KjEwMjR9dmFsaWRhdGVGaWxlKEgpe2lmKHRoaXMubWF4U2l6ZT4wJiZILnNpemU+dGhpcy5tYXhTaXplKXJldHVybiB0aGlzLnZhbGlkYXRpb25NZXNzYWdlPWBGaWxlICIke0gubmFtZX0iIGV4Y2VlZHMgdGhlIG1heGltdW0gc2l6ZSBvZiAke3RoaXMuZm9ybWF0RmlsZVNpemUodGhpcy5tYXhTaXplKX1gLHRoaXMudmFsaWRhdGlvblN0YXRlPSJpbnZhbGlkIiwhMTtpZih0aGlzLmFjY2VwdCl7bGV0IFc9dGhpcy5hY2NlcHQuc3BsaXQoIiwiKS5tYXAoYWU9PmFlLnRyaW0oKSkuZmlsdGVyKGFlPT5hZS5sZW5ndGg+MCk7aWYoVy5sZW5ndGg+MCl7bGV0IGFlPSExO2ZvcihsZXQgVCBvZiBXKWlmKFQuc3RhcnRzV2l0aCgiLiIpKXtpZihILm5hbWUudG9Mb3dlckNhc2UoKS5lbmRzV2l0aChULnRvTG93ZXJDYXNlKCkpKXthZT0hMDticmVha319ZWxzZSBpZihULmVuZHNXaXRoKCIvKiIpKXtsZXQgSj1ULnNsaWNlKDAsLTIpO2lmKEgudHlwZS5zdGFydHNXaXRoKEopKXthZT0hMDticmVha319ZWxzZSBpZihILnR5cGU9PT1UKXthZT0hMDticmVha31pZighYWUpcmV0dXJuIHRoaXMudmFsaWRhdGlvbk1lc3NhZ2U9YEZpbGUgdHlwZSBub3QgYWNjZXB0ZWQuIEFsbG93ZWQ6ICR7Vy5qb2luKCIsICIpfWAsdGhpcy52YWxpZGF0aW9uU3RhdGU9ImludmFsaWQiLCExfX1yZXR1cm4hMH1nZXRQcmV2aWV3VXJsKEgpe2xldCBXPXRoaXMucHJldmlld1VybE1hcC5nZXQoSCk7cmV0dXJuIFd8fChXPVVSTC5jcmVhdGVPYmplY3RVUkwoSCksdGhpcy5wcmV2aWV3VXJsTWFwLnNldChILFcpKSxXfXJlbGVhc2VQcmV2aWV3KEgpe2xldCBXPXRoaXMucHJldmlld1VybE1hcC5nZXQoSCk7VyYmKFVSTC5yZXZva2VPYmplY3RVUkwoVyksdGhpcy5wcmV2aWV3VXJsTWFwLmRlbGV0ZShIKSl9Z2V0QWNjZXB0ZWRTdW1tYXJ5KCl7aWYoIXRoaXMuYWNjZXB0KXJldHVybiBudWxsO2xldCBIPUFycmF5LmZyb20obmV3IFNldCh0aGlzLmFjY2VwdC5zcGxpdCgiLCIpLm1hcChXPT5XLnRyaW0oKSkuZmlsdGVyKFc9PlcubGVuZ3RoPjApLm1hcChXPT50aGlzLmZvcm1hdEFjY2VwdFRva2VuKFcpKSkpLmZpbHRlcihCb29sZWFuKTtyZXR1cm4gSC5sZW5ndGg9PT0wP251bGw6SC5sZW5ndGg9PT0xP0hbMF06SC5sZW5ndGg9PT0yP2Ake0hbMF19LCAke0hbMV19YDpgJHtILnNsaWNlKDAsMikuam9pbigiLCAiKX1cdTIwMjZgfWZvcm1hdEFjY2VwdFRva2VuKEgpe2lmKEg9PT0iKi8qIilyZXR1cm4iQWxsIGZpbGVzIjtpZihILmVuZHNXaXRoKCIvKiIpKXtsZXQgVD1ILnNwbGl0KCIvIilbMF07cmV0dXJuIFQ/YCR7VC5jaGFyQXQoMCkudG9VcHBlckNhc2UoKX0ke1Quc2xpY2UoMSl9IGZpbGVzYDoiQWxsIGZpbGVzIn1yZXR1cm4gSC5zdGFydHNXaXRoKCIuIik/SC5zbGljZSgxKS50b1VwcGVyQ2FzZSgpOkguaW5jbHVkZXMoInBkZiIpPyJQREYiOkguaW5jbHVkZXMoInppcCIpPyJaSVAiOkguaW5jbHVkZXMoImpzb24iKT8iSlNPTiI6SC5pbmNsdWRlcygibXN3b3JkIik/IkRPQyI6SC5pbmNsdWRlcygid29yZHByb2Nlc3NpbmdtbCIpPyJET0NYIjpILmluY2x1ZGVzKCJleGNlbCIpPyJYTFMiOkguaW5jbHVkZXMoInByZXNlbnRhdGlvbiIpPyJQUFQiOihILnNwbGl0KCIvIikucG9wKCk/P0gpLnRvVXBwZXJDYXNlKCl9YXR0YWNoTGlmZWN5Y2xlTGlzdGVuZXJzKCl7dGhpcy5yZWJpbmRJbnRlcmFjdGl2ZUVsZW1lbnRzKCl9Zmlyc3RVcGRhdGVkKEgpe3N1cGVyLmZpcnN0VXBkYXRlZChIKSx0aGlzLmF0dGFjaExpZmVjeWNsZUxpc3RlbmVycygpfXVwZGF0ZWQoSCl7c3VwZXIudXBkYXRlZChIKSxILmhhcygidmFsdWUiKSYmdGhpcy52YWxpZGF0ZSgpLHRoaXMucmViaW5kSW50ZXJhY3RpdmVFbGVtZW50cygpfWFzeW5jIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCl7dGhpcy5kZXRhY2hEcm9wTGlzdGVuZXJzKCksdGhpcy52YWx1ZS5mb3JFYWNoKEg9PnRoaXMucmVsZWFzZVByZXZpZXcoSCkpLHRoaXMucHJldmlld1VybE1hcD1uZXcgV2Vha01hcCxhd2FpdCBzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpfWFzeW5jIG9wZW5GaWxlU2VsZWN0b3IoKXtpZih0aGlzLmRpc2FibGVkfHx0aGlzLmlzTG9hZGluZylyZXR1cm47dGhpcy5pc0xvYWRpbmc9ITA7bGV0IEg9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCIuZmlsZS1pbnB1dCIpO2lmKCFIKXt0aGlzLmlzTG9hZGluZz0hMTtyZXR1cm59bGV0IFc9KCk9PntzZXRUaW1lb3V0KCgpPT57KCFILmZpbGVzfHxILmZpbGVzLmxlbmd0aD09PTApJiYodGhpcy5pc0xvYWRpbmc9ITEpLHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJmb2N1cyIsVyl9LDMwMCl9O3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsVyksSC5jbGljaygpfXJlbW92ZUZpbGUoSCl7bGV0IFc9dGhpcy52YWx1ZS5pbmRleE9mKEgpO1c+LTEmJih0aGlzLnJlbGVhc2VQcmV2aWV3KEgpLHRoaXMudmFsdWUuc3BsaWNlKFcsMSksdGhpcy5yZXF1ZXN0VXBkYXRlKCJ2YWx1ZSIpLHRoaXMudmFsaWRhdGUoKSx0aGlzLmNoYW5nZVN1YmplY3QubmV4dCh0aGlzKSl9Y2xlYXJBbGwoKXtsZXQgSD1bLi4udGhpcy52YWx1ZV07dGhpcy52YWx1ZT1bXSxILmZvckVhY2goVz0+dGhpcy5yZWxlYXNlUHJldmlldyhXKSksdGhpcy5yZXF1ZXN0VXBkYXRlKCJ2YWx1ZSIpLHRoaXMudmFsaWRhdGUoKSx0aGlzLmNoYW5nZVN1YmplY3QubmV4dCh0aGlzKSx0aGlzLmJ1dHRvblRleHQ9IlNlbGVjdCBmaWxlcyJ9YXN5bmMgdXBkYXRlVmFsdWUoSCl7bGV0IFc9SC50YXJnZXQ7dGhpcy52YWx1ZT1BcnJheS5mcm9tKFcuZmlsZXM/P1tdKSx0aGlzLmNoYW5nZVN1YmplY3QubmV4dCh0aGlzKX1zZXRWYWx1ZShIKXt0aGlzLnZhbHVlLmZvckVhY2goVz0+dGhpcy5yZWxlYXNlUHJldmlldyhXKSksdGhpcy52YWx1ZT1ILEgubGVuZ3RoPjA/dGhpcy5idXR0b25UZXh0PXRoaXMubXVsdGlwbGU/IkFkZCBtb3JlIGZpbGVzIjoiUmVwbGFjZSBmaWxlIjp0aGlzLmJ1dHRvblRleHQ9IlNlbGVjdCBmaWxlcyIsdGhpcy5yZXF1ZXN0VXBkYXRlKCJ2YWx1ZSIpLHRoaXMudmFsaWRhdGUoKX1nZXRWYWx1ZSgpe3JldHVybiB0aGlzLnZhbHVlfWFzeW5jIGFkZEZpbGVzKEgpe2xldCBXPVtdO2ZvcihsZXQgYWUgb2YgSCl0aGlzLnZhbGlkYXRlRmlsZShhZSkmJlcucHVzaChhZSk7aWYoVy5sZW5ndGg9PT0wKXt0aGlzLmlzTG9hZGluZz0hMTtyZXR1cm59aWYodGhpcy5tYXhGaWxlcz4wJiZ0aGlzLnZhbHVlLmxlbmd0aCtXLmxlbmd0aD50aGlzLm1heEZpbGVzKXtsZXQgVD10aGlzLm1heEZpbGVzLXRoaXMudmFsdWUubGVuZ3RoO2lmKFQ8PTApe3RoaXMudmFsaWRhdGlvbk1lc3NhZ2U9YE1heGltdW0gJHt0aGlzLm1heEZpbGVzfSBmaWxlcyBhbGxvd2VkYCx0aGlzLnZhbGlkYXRpb25TdGF0ZT0iaW52YWxpZCIsdGhpcy5pc0xvYWRpbmc9ITE7cmV0dXJufVcuc3BsaWNlKFQpLHRoaXMudmFsaWRhdGlvbk1lc3NhZ2U9YE9ubHkgJHtUfSBtb3JlIGZpbGUocykgY2FuIGJlIGFkZGVkYCx0aGlzLnZhbGlkYXRpb25TdGF0ZT0id2FybiJ9IXRoaXMubXVsdGlwbGUmJlcubGVuZ3RoPjA/KHRoaXMudmFsdWUuZm9yRWFjaChhZT0+dGhpcy5yZWxlYXNlUHJldmlldyhhZSkpLHRoaXMudmFsdWU9W1dbMF1dKTp0aGlzLnZhbHVlLnB1c2goLi4uVyksdGhpcy52YWxpZGF0aW9uTWVzc2FnZT0iIix0aGlzLnZhbGlkYXRpb25TdGF0ZT1udWxsLHRoaXMucmVxdWVzdFVwZGF0ZSgidmFsdWUiKSxhd2FpdCB0aGlzLnZhbGlkYXRlKCksdGhpcy5jaGFuZ2VTdWJqZWN0Lm5leHQodGhpcyksdGhpcy5pc0xvYWRpbmc9ITEsdGhpcy52YWx1ZS5sZW5ndGg+MD90aGlzLmJ1dHRvblRleHQ9dGhpcy5tdWx0aXBsZT8iQWRkIG1vcmUgZmlsZXMiOiJSZXBsYWNlIGZpbGUiOnRoaXMuYnV0dG9uVGV4dD0iU2VsZWN0IGZpbGVzIn1hc3luYyB2YWxpZGF0ZSgpe2lmKHRoaXMudmFsaWRhdGlvbk1lc3NhZ2U9IiIsdGhpcy5yZXF1aXJlZCYmdGhpcy52YWx1ZS5sZW5ndGg9PT0wKXJldHVybiB0aGlzLnZhbGlkYXRpb25TdGF0ZT0iaW52YWxpZCIsdGhpcy52YWxpZGF0aW9uTWVzc2FnZT0iUGxlYXNlIHNlbGVjdCBhdCBsZWFzdCBvbmUgZmlsZSIsITE7Zm9yKGxldCBIIG9mIHRoaXMudmFsdWUpaWYoIXRoaXMudmFsaWRhdGVGaWxlKEgpKXJldHVybiExO3JldHVybiB0aGlzLnZhbGlkYXRpb25TdGF0ZT10aGlzLnZhbHVlLmxlbmd0aD4wPyJ2YWxpZCI6bnVsbCwhMH1zdGF0aWN7UmkoYSxyKX19O3JldHVybiBWPWF9KSgpfSk7dmFyIEpsdD1sKCgpPT57S2x0KCl9KTtmdW5jdGlvbiByY3QoZSx0KXtpZih0PT09dm9pZCAwJiYodD17YWxsb3dRUklCQU46ITB9KSxlPT1udWxsKXJldHVybiExO3ZhciByPW5ldyBSZWdFeHAoIl5bMC05XXsyfSQiLCIiKSxhPWUuc2xpY2UoMCwyKSxpPVVuW2FdO3JldHVybiBpPT09dm9pZCAwfHxpLmJiYW5fcmVnZXhwPT09dm9pZCAwfHxpLmJiYW5fcmVnZXhwPT09bnVsbHx8aS5jaGFycz09PXZvaWQgMD8hMTppLmNoYXJzPT09ZS5sZW5ndGgmJnIudGVzdChlLnNsaWNlKDIsNCkpJiZXYmEoZS5zbGljZSg0KSxhKSYmaSRyKGUpJiYodC5hbGxvd1FSSUJBTnx8IWEkcihlKSl9ZnVuY3Rpb24gdG5uKGUsdCl7dD09PXZvaWQgMCYmKHQ9e2FsbG93UVJJQkFOOiEwfSk7dmFyIHI9e2Vycm9yQ29kZXM6W10sdmFsaWQ6ITB9O2lmKGUhPW51bGwmJmUhPT0iIil7dmFyIGE9VW5bZS5zbGljZSgwLDIpXTtpZighYXx8IShhLmJiYW5fcmVnZXhwfHxhLmNoYXJzKSlyZXR1cm4gci52YWxpZD0hMSxyLmVycm9yQ29kZXMucHVzaChPcy5Ob0lCQU5Db3VudHJ5KSxyO2EmJmEuY2hhcnMmJmEuY2hhcnMhPT1lLmxlbmd0aCYmKHIudmFsaWQ9ITEsci5lcnJvckNvZGVzLnB1c2goT3MuV3JvbmdCQkFOTGVuZ3RoKSksYSYmYS5iYmFuX3JlZ2V4cCYmIWVjdChlLnNsaWNlKDQpLGEuYmJhbl9yZWdleHApJiYoci52YWxpZD0hMSxyLmVycm9yQ29kZXMucHVzaChPcy5Xcm9uZ0JCQU5Gb3JtYXQpKSxhJiZhLmJiYW5fdmFsaWRhdGlvbl9mdW5jJiYhYS5iYmFuX3ZhbGlkYXRpb25fZnVuYyhlLnNsaWNlKDQpKSYmKHIudmFsaWQ9ITEsci5lcnJvckNvZGVzLnB1c2goT3MuV3JvbmdBY2NvdW50QmFua0JyYW5jaENoZWNrc3VtKSk7dmFyIGk9bmV3IFJlZ0V4cCgiXlswLTldezJ9JCIsIiIpO2kudGVzdChlLnNsaWNlKDIsNCkpfHwoci52YWxpZD0hMSxyLmVycm9yQ29kZXMucHVzaChPcy5DaGVja3N1bU5vdE51bWJlcikpLChyLmVycm9yQ29kZXMuaW5kZXhPZihPcy5Xcm9uZ0JCQU5Gb3JtYXQpIT09LTF8fCFpJHIoZSkpJiYoci52YWxpZD0hMSxyLmVycm9yQ29kZXMucHVzaChPcy5Xcm9uZ0lCQU5DaGVja3N1bSkpLCF0LmFsbG93UVJJQkFOJiZhJHIoZSkmJihyLnZhbGlkPSExLHIuZXJyb3JDb2Rlcy5wdXNoKE9zLlFSSUJBTk5vdEFsbG93ZWQpKX1lbHNlIHIudmFsaWQ9ITEsci5lcnJvckNvZGVzLnB1c2goT3MuTm9JQkFOUHJvdmlkZWQpO3JldHVybiByfWZ1bmN0aW9uIFdiYShlLHQpe2lmKGU9PW51bGx8fHQ9PT12b2lkIDB8fHQ9PT1udWxsKXJldHVybiExO3ZhciByPVVuW3RdO3JldHVybiByPT1udWxsfHxyLmJiYW5fcmVnZXhwPT09dm9pZCAwfHxyLmJiYW5fcmVnZXhwPT09bnVsbHx8ci5jaGFycz09PXZvaWQgMHx8ci5jaGFycz09PW51bGw/ITE6ci5jaGFycy00PT09ZS5sZW5ndGgmJmVjdChlLHIuYmJhbl9yZWdleHApP3IuYmJhbl92YWxpZGF0aW9uX2Z1bmM/ci5iYmFuX3ZhbGlkYXRpb25fZnVuYyhlLnJlcGxhY2UoL1tccy5dKy9nLCIiKSk6ITA6ITF9ZnVuY3Rpb24gcm5uKGUpe2lmKGUhPW51bGwpe3ZhciB0PVVuW2VdO2lmKHQhPT12b2lkIDApcmV0dXJuIHQuU0VQQT90LlNFUEE6ITF9cmV0dXJuITF9ZnVuY3Rpb24gYSRyKGUpe2lmKGU9PW51bGwpcmV0dXJuITE7dmFyIHQ9ZS5zbGljZSgwLDIpLHI9WyJMSSIsIkNIIl07aWYoIXIuaW5jbHVkZXModCkpcmV0dXJuITE7dmFyIGE9bmV3IFJlZ0V4cCgiXjNbMC0xXXsxfVswLTldezN9JCIsIiIpO3JldHVybiBhLnRlc3QoZS5zbGljZSg0LDkpKX1mdW5jdGlvbiBhbm4oZSl7dmFyIHQ9dGN0KGUuYmJhbil8fCIiO2lmKGUuY291bnRyeUNvZGU9PT1udWxsfHxlLmNvdW50cnlDb2RlPT09dm9pZCAwKXJldHVybiBudWxsO3ZhciByPVVuW2UuY291bnRyeUNvZGVdO2lmKHQhPT0iIiYmciE9PXZvaWQgMCYmci5jaGFycyYmci5jaGFycyE9PW51bGwmJnIuY2hhcnM9PT10Lmxlbmd0aCs0JiZyLmJiYW5fcmVnZXhwJiZyLmJiYW5fcmVnZXhwIT09bnVsbCYmZWN0KHQsci5iYmFuX3JlZ2V4cCkpe3ZhciBhPUdiYShlLmNvdW50cnlDb2RlKyIwMCIrdCk7cmV0dXJuIGUuY291bnRyeUNvZGUrKCIwIisoOTgtYSkpLnNsaWNlKC0yKSt0fXJldHVybiBudWxsfWZ1bmN0aW9uIGlubihlKXt2YXIgdD17fSxyPXRjdChlKTtpZih0LmliYW49cnx8ZSxyJiZyY3Qocikpe3QuYmJhbj1yLnNsaWNlKDQpLHQuY291bnRyeUNvZGU9ci5zbGljZSgwLDIpLHQudmFsaWQ9ITA7dmFyIGE9VW5bdC5jb3VudHJ5Q29kZV07aWYoYS5hY2NvdW50X2luZGVudGlmaWVyKXt2YXIgaT1hLmFjY291bnRfaW5kZW50aWZpZXIuc3BsaXQoIi0iKSxvPXBhcnNlSW50KGlbMF0pLG49cGFyc2VJbnQoaVsxXSk7dC5hY2NvdW50TnVtYmVyPXQuaWJhbi5zbGljZShvLG4rMSl9aWYoYS5iYW5rX2lkZW50aWZpZXIpe3ZhciBpPWEuYmFua19pZGVudGlmaWVyLnNwbGl0KCItIiksbz1wYXJzZUludChpWzBdKSxuPXBhcnNlSW50KGlbMV0pO3QuYmFua0lkZW50aWZpZXI9dC5iYmFuLnNsaWNlKG8sbisxKX1pZihhLmJyYW5jaF9pbmRlbnRpZmllcil7dmFyIGk9YS5icmFuY2hfaW5kZW50aWZpZXIuc3BsaXQoIi0iKSxvPXBhcnNlSW50KGlbMF0pLG49cGFyc2VJbnQoaVsxXSk7dC5icmFuY2hJZGVudGlmaWVyPXQuYmJhbi5zbGljZShvLG4rMSl9fWVsc2UgdC52YWxpZD0hMTtyZXR1cm4gdH1mdW5jdGlvbiBlY3QoZSx0KXt2YXIgcj1uZXcgUmVnRXhwKHQsIiIpO3JldHVybiByLnRlc3QoZSl9ZnVuY3Rpb24gdGN0KGUpe3JldHVybiB0eXBlb2YgZSE9InN0cmluZyI/bnVsbDplLnJlcGxhY2UoL1stXCBdL2csIiIpLnRvVXBwZXJDYXNlKCl9ZnVuY3Rpb24gYWN0KGUsdCl7aWYodHlwZW9mIGUhPSJzdHJpbmciKXJldHVybiBudWxsO3Q9PW51bGwmJih0PSIgIik7dmFyIHI9dGN0KGUpO3JldHVybiByPT09bnVsbD9udWxsOnIucmVwbGFjZSgvKC57NH0pKD8hJCkvZywiJDEiK3QpfWZ1bmN0aW9uIGkkcihlKXt2YXIgdD1lLnNsaWNlKDAsMikscj1wYXJzZUludChlLnNsaWNlKDIsNCksMTApLGE9ZS5zbGljZSg0KSxpPW8kcigiIi5jb25jYXQoYSkuY29uY2F0KHQsIjAwIikpLG89TmxlKGkpO3JldHVybiA5OC1vPT09cn1mdW5jdGlvbiBvJHIoZSl7cmV0dXJuIGUuc3BsaXQoIiIpLm1hcChmdW5jdGlvbih0KXt2YXIgcj10LmNoYXJDb2RlQXQoMCk7cmV0dXJuIHI+PTY1PyhyLTU1KS50b1N0cmluZygpOnR9KS5qb2luKCIiKX1mdW5jdGlvbiBHYmEoZSl7cmV0dXJuIE5sZShvJHIoZS5zbGljZSg0KStlLnNsaWNlKDAsNCkpKX1mdW5jdGlvbiBvbm4oKXt2YXIgZT17fTtmb3IodmFyIHQgaW4gVW4pe3ZhciByPVVuW3RdO2VbdF09e2NoYXJzOnIuY2hhcnN8fG51bGwsYmJhbl9yZWdleHA6ci5iYmFuX3JlZ2V4cHx8bnVsbCxJQkFOUmVnaXN0cnk6ci5JQkFOUmVnaXN0cnl8fCExLFNFUEE6ci5TRVBBfHwhMX19cmV0dXJuIGV9ZnVuY3Rpb24gWWJhKGUpe2lmKCFlKXJldHVybiExO3ZhciB0PW5ldyBSZWdFeHAoIl5bYS16QS1aXXs2fVthLXpBLVowLTldezJ9KFthLXpBLVowLTldezN9KT8kIiwiIikscj1VbltlLnRvVXBwZXJDYXNlKCkuc2xpY2UoNCw2KV07cmV0dXJuIHQudGVzdChlKSYmciE9PXZvaWQgMH1mdW5jdGlvbiBubm4oZSl7dmFyIHQ9e2Vycm9yQ29kZXM6W10sdmFsaWQ6ITB9O2lmKGUhPW51bGwmJmUhPT0iIil7dmFyIHI9VW5bZS50b1VwcGVyQ2FzZSgpLnNsaWNlKDQsNildO2lmKHI9PT12b2lkIDApdC52YWxpZD0hMSx0LmVycm9yQ29kZXMucHVzaChwWi5Ob0JJQ0NvdW50cnkpO2Vsc2V7dmFyIGE9bmV3IFJlZ0V4cCgiXlthLXpBLVpdezZ9W2EtekEtWjAtOV17Mn0oW2EtekEtWjAtOV17M30pPyQiLCIiKTthLnRlc3QoZSl8fCh0LnZhbGlkPSExLHQuZXJyb3JDb2Rlcy5wdXNoKHBaLldyb25nQklDRm9ybWF0KSl9fWVsc2UgdC52YWxpZD0hMSx0LmVycm9yQ29kZXMucHVzaChwWi5Ob0JJQ1Byb3ZpZGVkKTtyZXR1cm4gdH1mdW5jdGlvbiBzbm4oZSl7dmFyIHQ9e30scj1lLnRvVXBwZXJDYXNlKCk7cmV0dXJuIFliYShyKT8odC5iYW5rQ29kZT1yLnNsaWNlKDAsNCksdC5jb3VudHJ5Q29kZT1yLnNsaWNlKDQsNiksdC5sb2NhdGlvbkNvZGU9ci5zbGljZSg2LDgpLHQudGVzdEJJQz10LmxvY2F0aW9uQ29kZVsxXT09PSIwIix0LmJyYW5jaENvZGU9ci5sZW5ndGg+OD9yLnNsaWNlKDgpOm51bGwsdC52YWxpZD0hMCk6dC52YWxpZD0hMSx0fXZhciBPcyxwWixaYmEsWGJhLE5sZSxXOSxRYmEsS2JhLG4kcixKYmEscyRyLGV2YSxsJHIsdHZhLGxubixVbixjJHI9bCgoKT0+eyJ1c2Ugc3RyaWN0IjsoZnVuY3Rpb24oZSl7ZVtlLk5vSUJBTlByb3ZpZGVkPTBdPSJOb0lCQU5Qcm92aWRlZCIsZVtlLk5vSUJBTkNvdW50cnk9MV09Ik5vSUJBTkNvdW50cnkiLGVbZS5Xcm9uZ0JCQU5MZW5ndGg9Ml09Ildyb25nQkJBTkxlbmd0aCIsZVtlLldyb25nQkJBTkZvcm1hdD0zXT0iV3JvbmdCQkFORm9ybWF0IixlW2UuQ2hlY2tzdW1Ob3ROdW1iZXI9NF09IkNoZWNrc3VtTm90TnVtYmVyIixlW2UuV3JvbmdJQkFOQ2hlY2tzdW09NV09Ildyb25nSUJBTkNoZWNrc3VtIixlW2UuV3JvbmdBY2NvdW50QmFua0JyYW5jaENoZWNrc3VtPTZdPSJXcm9uZ0FjY291bnRCYW5rQnJhbmNoQ2hlY2tzdW0iLGVbZS5RUklCQU5Ob3RBbGxvd2VkPTddPSJRUklCQU5Ob3RBbGxvd2VkIn0pKE9zfHwoT3M9e30pKTsoZnVuY3Rpb24oZSl7ZVtlLk5vQklDUHJvdmlkZWQ9MF09Ik5vQklDUHJvdmlkZWQiLGVbZS5Ob0JJQ0NvdW50cnk9MV09Ik5vQklDQ291bnRyeSIsZVtlLldyb25nQklDRm9ybWF0PTJdPSJXcm9uZ0JJQ0Zvcm1hdCJ9KShwWnx8KHBaPXt9KSk7WmJhPWZ1bmN0aW9uKGUpe2Zvcih2YXIgdD1bNSw0LDMsMiw3LDYsNSw0LDMsMl0scj1lLnJlcGxhY2UoL1tccy5dKy9nLCIiKSxhPXBhcnNlSW50KHIuY2hhckF0KDEwKSwxMCksaT1yLnN1YnN0cmluZygwLDEwKSxvPTAsbj0wO248MTA7bisrKW8rPXBhcnNlSW50KGkuY2hhckF0KG4pLDEwKSp0W25dO3ZhciBzPW8lMTE7cmV0dXJuIGE9PT0ocz09PTA/MDoxMS1zKX0sWGJhPWZ1bmN0aW9uKGUpe3ZhciB0PWUucmVwbGFjZSgvW1xzLl0rL2csIiIpLHI9cGFyc2VJbnQodC5zdWJzdHJpbmcoMCx0Lmxlbmd0aC0yKSwxMCksYT1wYXJzZUludCh0LnN1YnN0cmluZyh0Lmxlbmd0aC0yLHQubGVuZ3RoKSwxMCksaT1yJTk3PT09MD85NzpyJTk3O3JldHVybiBpPT09YX0sTmxlPWZ1bmN0aW9uKGUpe2Zvcig7ZS5sZW5ndGg+Mjspe3ZhciB0PWUuc2xpY2UoMCw2KSxyPXBhcnNlSW50KHQsMTApO2lmKGlzTmFOKHIpKXJldHVybiBOYU47ZT1yJTk3K2Uuc2xpY2UodC5sZW5ndGgpfXJldHVybiBwYXJzZUludChlLDEwKSU5N30sVzk9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5yZXBsYWNlKC9bXHMuXSsvZywiIikscj1ObGUodCk7cmV0dXJuIHI9PT0xfSxRYmE9ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PVszLDksNywxLDMsOSw3XSxyPXBhcnNlSW50KGUuY2hhckF0KDcpLDEwKSxhPWUuc3Vic3RyaW5nKDAsNyksaT0wLG89MDtvPDc7bysrKWkrPXBhcnNlSW50KGEuY2hhckF0KG8pLDEwKSp0W29dO3ZhciBuPWklMTA7cmV0dXJuIHI9PT0obj09PTA/MDoxMC1uKX0sS2JhPWZ1bmN0aW9uKGUpe2Zvcih2YXIgdD1bNCw4LDUsMTAsOSw3LDMsNl0scj1bMSwyLDQsOCw1LDEwLDksNywzLDZdLGE9cGFyc2VJbnQoZS5jaGFyQXQoOCksMTApLGk9cGFyc2VJbnQoZS5jaGFyQXQoOSksMTApLG89ZS5zdWJzdHJpbmcoMCw4KSxuPWUuc3Vic3RyaW5nKDEwLDIwKSxzPTAsYz0wO2M8ODtjKyspcys9cGFyc2VJbnQoby5jaGFyQXQoYyksMTApKnRbY107dmFyIGQ9cyUxMTtpZihhIT09KGQ9PT0wPzA6ZD09PTE/MToxMS1kKSlyZXR1cm4hMTtzPTA7Zm9yKHZhciBjPTA7YzwxMDtjKyspcys9cGFyc2VJbnQobi5jaGFyQXQoYyksMTApKnJbY107cmV0dXJuIGQ9cyUxMSxpPT09KGQ9PT0wPzA6ZD09PTE/MToxMS1kKX0sbiRyPWZ1bmN0aW9uKGUsdCl7Zm9yKHZhciByPTEwLGE9MDthPGUubGVuZ3RoO2ErKylyKz1wYXJzZUludChlLmNoYXJBdChhKSwxMCksciUxMCE9PTAmJihyPXIlMTApLHI9cioyLHI9ciUxMTtyZXR1cm4gdD09PSgxMS1yPT09MTA/MDoxMS1yKX0sSmJhPWZ1bmN0aW9uKGUpe3ZhciB0PXBhcnNlSW50KGUuY2hhckF0KDYpLDEwKSxyPXBhcnNlSW50KGUuY2hhckF0KDE2KSwxMCksYT1lLnN1YnN0cmluZygwLDYpLGk9ZS5zdWJzdHJpbmcoNywxNik7cmV0dXJuIG4kcihhLHQpJiZuJHIoaSxyKX0scyRyPWZ1bmN0aW9uKGUpe2Zvcih2YXIgdD1bMTAsNSw4LDQsMiwxXSxyPVs2LDMsNyw5LDEwLDUsOCw0LDIsMV0sYT1wYXJzZUludChlLmNoYXJBdCg5KSwxMCksaT1wYXJzZUludChlLmNoYXJBdCgxOSksMTApLG89ZS5zdWJzdHJpbmcoNCw5KSxuPWUuc3Vic3RyaW5nKDEwLDE5KSxzPTAsYz0wO2M8by5sZW5ndGg7YysrKXMrPXBhcnNlSW50KG8uY2hhckF0KGMpLDEwKSp0W2NdO3ZhciBkPXMlMTE7aWYoYSE9PShkPT09MD8wOmQ9PT0xPzE6MTEtZCkpcmV0dXJuITE7cz0wO2Zvcih2YXIgYz0wO2M8bi5sZW5ndGg7YysrKXMrPXBhcnNlSW50KG4uY2hhckF0KGMpLDEwKSpyW2NdO3JldHVybiBkPXMlMTEsaT09PShkPT09MD8wOmQ9PT0xPzE6MTEtZCl9LGV2YT1mdW5jdGlvbihlKXtmb3IodmFyIHQ9WzcsMSwzLDcsMSwzLDcsMSwzLDcsMSwzLDddLHI9cGFyc2VJbnQoZS5jaGFyQXQoMTUpLDEwKSxhPWUuc3Vic3RyaW5nKDIsMTUpLGk9MCxvPTA7bzxhLmxlbmd0aDtvKyspaSs9cGFyc2VJbnQoYS5jaGFyQXQobyksMTApKnRbb107dmFyIG49aSUxMDtyZXR1cm4gcj09PShuPT09MD8wOjEwLW4pfSxsJHI9ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PWUucmVwbGFjZSgvW1xzLl0rL2csIiIpLHI9QXJyYXkuZnJvbSh0KSxhPTA7YTx0Lmxlbmd0aDthKyspe3ZhciBpPXJbYV0uY2hhckNvZGVBdCgwKTtpZihpPj02NSlzd2l0Y2goaSl7Y2FzZSA2NTpjYXNlIDc0OnJbYV09IjEiO2JyZWFrO2Nhc2UgNjY6Y2FzZSA3NTpjYXNlIDgzOnJbYV09IjIiO2JyZWFrO2Nhc2UgNjc6Y2FzZSA3NjpjYXNlIDg0OnJbYV09IjMiO2JyZWFrO2Nhc2UgNjg6Y2FzZSA3NzpjYXNlIDg1OnJbYV09IjQiO2JyZWFrO2Nhc2UgNjk6Y2FzZSA3ODpjYXNlIDg2OnJbYV09IjUiO2JyZWFrO2Nhc2UgNzA6Y2FzZSA3OTpjYXNlIDg3OnJbYV09IjYiO2JyZWFrO2Nhc2UgNzE6Y2FzZSA4MDpjYXNlIDg4OnJbYV09IjciO2JyZWFrO2Nhc2UgNzI6Y2FzZSA4MTpjYXNlIDg5OnJbYV09IjgiO2JyZWFrO2Nhc2UgNzM6Y2FzZSA4MjpjYXNlIDkwOnJbYV09IjkiO2JyZWFrfX12YXIgbz1ObGUoci5qb2luKCIiKSk7cmV0dXJuIG89PT0wfSx0dmE9ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PVs5LDcsMywxLDksNywzLDEsOSw3LDMsMSw5LDcsM10scj1wYXJzZUludChlLmNoYXJBdCg3KSwxMCksYT1lLnN1YnN0cmluZygwLDcpLGk9MCxvPTA7bzxhLmxlbmd0aDtvKyspaSs9cGFyc2VJbnQoYS5jaGFyQXQobyksMTApKnRbb107dmFyIG49aSUxMDtpZihyIT09KG49PT0wPzA6MTAtbikpcmV0dXJuITE7aWYoaT0wLGUuZW5kc1dpdGgoIjAwMDAwMDAwIikpe2Zvcih2YXIgcz1lLnN1YnN0cmluZyg4LDE1KSxjPXBhcnNlSW50KGUuY2hhckF0KDE1KSwxMCksbz0wO288cy5sZW5ndGg7bysrKWkrPXBhcnNlSW50KHMuY2hhckF0KG8pLDEwKSp0W29dO3ZhciBkPWklMTA7cmV0dXJuIGM9PT0oZD09PTA/MDoxMC1kKX1lbHNle2Zvcih2YXIgcz1lLnN1YnN0cmluZyg4LDIzKSxjPXBhcnNlSW50KGUuY2hhckF0KDIzKSwxMCksbz0wO288cy5sZW5ndGg7bysrKWkrPXBhcnNlSW50KHMuY2hhckF0KG8pLDEwKSp0W29dO3ZhciBmPWklMTA7cmV0dXJuIGM9PT0oZj09PTA/MDoxMC1mKX19LGxubj1mdW5jdGlvbihlLHQpe3JldHVybiB0eXBlb2YgVW5bZV0+InUiPyExOihVbltlXS5iYmFuX3ZhbGlkYXRpb25fZnVuYz10LCEwKX0sVW49e0FEOntjaGFyczoyNCxiYmFuX3JlZ2V4cDoiXlswLTldezh9W0EtWjAtOV17MTJ9JCIsSUJBTlJlZ2lzdHJ5OiEwLFNFUEE6ITAsYnJhbmNoX2luZGVudGlmaWVyOiI0LTciLGJhbmtfaWRlbnRpZmllcjoiMC0zIixhY2NvdW50X2luZGVudGlmaWVyOiI4LTI0In0sQUU6e2NoYXJzOjIzLGJiYW5fcmVnZXhwOiJeWzAtOV17M31bMC05XXsxNn0kIixJQkFOUmVnaXN0cnk6ITAsYmFua19pZGVudGlmaWVyOiIwLTIiLGFjY291bnRfaW5kZW50aWZpZXI6IjctMjMifSxBRjp7fSxBRzp7fSxBSTp7fSxBTDp7Y2hhcnM6MjgsYmJhbl9yZWdleHA6Il5bMC05XXs4fVtBLVowLTldezE2fSQiLElCQU5SZWdpc3RyeTohMCxicmFuY2hfaW5kZW50aWZpZXI6IjMtNyIsYmFua19pZGVudGlmaWVyOiIwLTIiLGFjY291bnRfaW5kZW50aWZpZXI6IjEyLTI4In0sQU06e30sQU86e2NoYXJzOjI1LGJiYW5fcmVnZXhwOiJeWzAtOV17MjF9JCJ9LEFROnt9LEFSOnt9LEFTOnt9LEFUOntjaGFyczoyMCxiYmFuX3JlZ2V4cDoiXlswLTldezE2fSQiLElCQU5SZWdpc3RyeTohMCxTRVBBOiEwLGJhbmtfaWRlbnRpZmllcjoiMC00In0sQVU6e30sQVc6e30sQVg6e2NoYXJzOjE4LGJiYW5fcmVnZXhwOiJeWzAtOV17MTR9JCIsSUJBTlJlZ2lzdHJ5OiEwfSxBWjp7Y2hhcnM6MjgsYmJhbl9yZWdleHA6Il5bQS1aXXs0fVtBLVowLTldezIwfSQiLElCQU5SZWdpc3RyeTohMCxiYW5rX2lkZW50aWZpZXI6IjAtMyIsYWNjb3VudF9pbmRlbnRpZmllcjoiNC0yOCJ9LEJBOntjaGFyczoyMCxiYmFuX3JlZ2V4cDoiXlswLTldezE2fSQiLGJiYW5fdmFsaWRhdGlvbl9mdW5jOlc5LElCQU5SZWdpc3RyeTohMCxicmFuY2hfaW5kZW50aWZpZXI6IjMtNSIsYmFua19pZGVudGlmaWVyOiIwLTIifSxCQjp7fSxCRDp7fSxCRTp7Y2hhcnM6MTYsYmJhbl9yZWdleHA6Il5bMC05XXsxMn0kIixiYmFuX3ZhbGlkYXRpb25fZnVuYzpYYmEsSUJBTlJlZ2lzdHJ5OiEwLFNFUEE6ITAsYmFua19pZGVudGlmaWVyOiIwLTIiLGFjY291bnRfaW5kZW50aWZpZXI6IjAtMTYifSxCRjp7Y2hhcnM6MjgsYmJhbl9yZWdleHA6Il5bQS1aMC05XXsyfVswLTldezIyfSQifSxCRzp7Y2hhcnM6MjIsYmJhbl9yZWdleHA6Il5bQS1aXXs0fVswLTldezZ9W0EtWjAtOV17OH0kIixJQkFOUmVnaXN0cnk6ITAsU0VQQTohMCxicmFuY2hfaW5kZW50aWZpZXI6IjQtNyIsYmFua19pZGVudGlmaWVyOiIwLTMifSxCSDp7Y2hhcnM6MjIsYmJhbl9yZWdleHA6Il5bQS1aXXs0fVtBLVowLTldezE0fSQiLElCQU5SZWdpc3RyeTohMCxiYW5rX2lkZW50aWZpZXI6IjAtMyIsYWNjb3VudF9pbmRlbnRpZmllcjoiOC0yMiJ9LEJJOntjaGFyczoyNyxiYmFuX3JlZ2V4cDoiXlswLTldezIzfSQiLGJyYW5jaF9pbmRlbnRpZmllcjoiNS05IixiYW5rX2lkZW50aWZpZXI6IjAtNCIsYWNjb3VudF9pbmRlbnRpZmllcjoiMTQtMjcifSxCSjp7Y2hhcnM6MjgsYmJhbl9yZWdleHA6Il5bQS1aMC05XXsyfVswLTldezIyfSQifSxCTDp7Y2hhcnM6MjcsYmJhbl9yZWdleHA6Il5bMC05XXsxMH1bQS1aMC05XXsxMX1bMC05XXsyfSQifSxCTTp7fSxCTjp7fSxCTzp7fSxCUTp7fSxCUjp7Y2hhcnM6MjksYmJhbl9yZWdleHA6Il5bMC05XXsyM31bQS1aXXsxfVtBLVowLTldezF9JCIsSUJBTlJlZ2lzdHJ5OiEwLGJyYW5jaF9pbmRlbnRpZmllcjoiOC0xMiIsYmFua19pZGVudGlmaWVyOiIwLTciLGFjY291bnRfaW5kZW50aWZpZXI6IjE3LTI5In0sQlM6e30sQlQ6e30sQlY6e30sQlc6e30sQlk6e2NoYXJzOjI4LGJiYW5fcmVnZXhwOiJeW0EtWl17NH1bMC05XXs0fVtBLVowLTldezE2fSQiLElCQU5SZWdpc3RyeTohMCxiYW5rX2lkZW50aWZpZXI6IjAtMyJ9LEJaOnt9LENBOnt9LENDOnt9LENEOnt9LENGOntjaGFyczoyNyxiYmFuX3JlZ2V4cDoiXlswLTldezIzfSQifSxDRzp7Y2hhcnM6MjcsYmJhbl9yZWdleHA6Il5bMC05XXsyM30kIn0sQ0g6e2NoYXJzOjIxLGJiYW5fcmVnZXhwOiJeWzAtOV17NX1bQS1aMC05XXsxMn0kIixJQkFOUmVnaXN0cnk6ITAsU0VQQTohMCxiYW5rX2lkZW50aWZpZXI6IjAtNCJ9LENJOntjaGFyczoyOCxiYmFuX3JlZ2V4cDoiXltBLVpdezF9WzAtOV17MjN9JCJ9LENLOnt9LENMOnt9LENNOntjaGFyczoyNyxiYmFuX3JlZ2V4cDoiXlswLTldezIzfSQifSxDTjp7fSxDTzp7fSxDUjp7Y2hhcnM6MjIsYmJhbl9yZWdleHA6Il5bMC05XXsxOH0kIixJQkFOUmVnaXN0cnk6ITAsYmFua19pZGVudGlmaWVyOiIwLTMiLGFjY291bnRfaW5kZW50aWZpZXI6IjgtMjIifSxDVTp7fSxDVjp7Y2hhcnM6MjUsYmJhbl9yZWdleHA6Il5bMC05XXsyMX0kIn0sQ1c6e30sQ1g6e30sQ1k6e2NoYXJzOjI4LGJiYW5fcmVnZXhwOiJeWzAtOV17OH1bQS1aMC05XXsxNn0kIixJQkFOUmVnaXN0cnk6ITAsU0VQQTohMCxicmFuY2hfaW5kZW50aWZpZXI6IjMtNyIsYmFua19pZGVudGlmaWVyOiIwLTIiLGFjY291bnRfaW5kZW50aWZpZXI6IjEyLTI4In0sQ1o6e2NoYXJzOjI0LGJiYW5fcmVnZXhwOiJeWzAtOV17MjB9JCIsYmJhbl92YWxpZGF0aW9uX2Z1bmM6cyRyLElCQU5SZWdpc3RyeTohMCxTRVBBOiEwLGJhbmtfaWRlbnRpZmllcjoiMC0zIn0sREU6e2NoYXJzOjIyLGJiYW5fcmVnZXhwOiJeWzAtOV17MTh9JCIsSUJBTlJlZ2lzdHJ5OiEwLFNFUEE6ITAsYmFua19pZGVudGlmaWVyOiIwLTciLGFjY291bnRfaW5kZW50aWZpZXI6IjEzLTIyIn0sREo6e2NoYXJzOjI3LGJiYW5fcmVnZXhwOiJeWzAtOV17MjN9JCIsYnJhbmNoX2luZGVudGlmaWVyOiI1LTkiLGJhbmtfaWRlbnRpZmllcjoiMC00IixhY2NvdW50X2luZGVudGlmaWVyOiIxNC0yNyJ9LERLOntjaGFyczoxOCxiYmFuX3JlZ2V4cDoiXlswLTldezE0fSQiLElCQU5SZWdpc3RyeTohMCxTRVBBOiEwLGJhbmtfaWRlbnRpZmllcjoiMC0zIixhY2NvdW50X2luZGVudGlmaWVyOiI0LTE4In0sRE06e30sRE86e2NoYXJzOjI4LGJiYW5fcmVnZXhwOiJeW0EtWl17NH1bMC05XXsyMH0kIixJQkFOUmVnaXN0cnk6ITAsYmFua19pZGVudGlmaWVyOiIwLTMiLGFjY291bnRfaW5kZW50aWZpZXI6IjgtMjgifSxEWjp7Y2hhcnM6MjYsYmJhbl9yZWdleHA6Il5bMC05XXsyMn0kIn0sRUM6e30sRUU6e2NoYXJzOjIwLGJiYW5fcmVnZXhwOiJeWzAtOV17MTZ9JCIsYmJhbl92YWxpZGF0aW9uX2Z1bmM6ZXZhLElCQU5SZWdpc3RyeTohMCxTRVBBOiEwLGJhbmtfaWRlbnRpZmllcjoiMC0xIixhY2NvdW50X2luZGVudGlmaWVyOiI4LTIwIn0sRUc6e2NoYXJzOjI5LGJiYW5fcmVnZXhwOiJeWzAtOV17MjV9IixJQkFOUmVnaXN0cnk6ITAsYnJhbmNoX2luZGVudGlmaWVyOiI0LTciLGJhbmtfaWRlbnRpZmllcjoiMC0zIixhY2NvdW50X2luZGVudGlmaWVyOiIxNy0yOSJ9LEVIOnt9LEVSOnt9LEVTOntjaGFyczoyNCxiYmFuX3ZhbGlkYXRpb25fZnVuYzpLYmEsYmJhbl9yZWdleHA6Il5bMC05XXsyMH0kIixJQkFOUmVnaXN0cnk6ITAsU0VQQTohMCxicmFuY2hfaW5kZW50aWZpZXI6IjQtNyIsYmFua19pZGVudGlmaWVyOiIwLTMiLGFjY291bnRfaW5kZW50aWZpZXI6IjE0LTI0In0sRVQ6e30sRkk6e2NoYXJzOjE4LGJiYW5fcmVnZXhwOiJeWzAtOV17MTR9JCIsSUJBTlJlZ2lzdHJ5OiEwLFNFUEE6ITAsYmFua19pZGVudGlmaWVyOiIwLTIiLGFjY291bnRfaW5kZW50aWZpZXI6IjAtMCJ9LEZKOnt9LEZLOntjaGFyczoxOCxiYmFuX3JlZ2V4cDoiXltBLVpdezJ9WzAtOV17MTJ9JCIsYmFua19pZGVudGlmaWVyOiIwLTEiLGFjY291bnRfaW5kZW50aWZpZXI6IjYtMTgifSxGTTp7fSxGTzp7Y2hhcnM6MTgsYmJhbl9yZWdleHA6Il5bMC05XXsxNH0kIixJQkFOUmVnaXN0cnk6ITAsYmFua19pZGVudGlmaWVyOiIwLTMiLGFjY291bnRfaW5kZW50aWZpZXI6IjQtMTgifSxGUjp7Y2hhcnM6MjcsYmJhbl9yZWdleHA6Il5bMC05XXsxMH1bQS1aMC05XXsxMX1bMC05XXsyfSQiLGJiYW5fdmFsaWRhdGlvbl9mdW5jOmwkcixJQkFOUmVnaXN0cnk6ITAsU0VQQTohMCxiYW5rX2lkZW50aWZpZXI6IjAtNCIsYnJhbmNoX2luZGVudGlmaWVyOiI1LTkiLGFjY291bnRfaW5kZW50aWZpZXI6IjE0LTI0In0sR0E6e2NoYXJzOjI3LGJiYW5fcmVnZXhwOiJeWzAtOV17MjN9JCJ9LEdCOntjaGFyczoyMixiYmFuX3JlZ2V4cDoiXltBLVpdezR9WzAtOV17MTR9JCIsSUJBTlJlZ2lzdHJ5OiEwLFNFUEE6ITAsYnJhbmNoX2luZGVudGlmaWVyOiI0LTkiLGJhbmtfaWRlbnRpZmllcjoiMC0zIn0sR0Q6e30sR0U6e2NoYXJzOjIyLGJiYW5fcmVnZXhwOiJeW0EtWjAtOV17Mn1bMC05XXsxNn0kIixJQkFOUmVnaXN0cnk6ITAsYmFua19pZGVudGlmaWVyOiIwLTEiLGFjY291bnRfaW5kZW50aWZpZXI6IjYtMjIifSxHRjp7Y2hhcnM6MjcsYmJhbl9yZWdleHA6Il5bMC05XXsxMH1bQS1aMC05XXsxMX1bMC05XXsyfSQiLElCQU5SZWdpc3RyeTohMH0sR0c6e30sR0g6e30sR0k6e2NoYXJzOjIzLGJiYW5fcmVnZXhwOiJeW0EtWl17NH1bQS1aMC05XXsxNX0kIixJQkFOUmVnaXN0cnk6ITAsU0VQQTohMCxiYW5rX2lkZW50aWZpZXI6IjAtMyIsYWNjb3VudF9pbmRlbnRpZmllcjoiOC0yMyJ9LEdMOntjaGFyczoxOCxiYmFuX3JlZ2V4cDoiXlswLTldezE0fSQiLElCQU5SZWdpc3RyeTohMCxiYW5rX2lkZW50aWZpZXI6IjAtMyIsYWNjb3VudF9pbmRlbnRpZmllcjoiNC0xOCJ9LEdNOnt9LEdOOnt9LEdQOntjaGFyczoyNyxiYmFuX3JlZ2V4cDoiXlswLTldezEwfVtBLVowLTldezExfVswLTldezJ9JCIsSUJBTlJlZ2lzdHJ5OiEwfSxHUTp7Y2hhcnM6MjcsYmJhbl9yZWdleHA6Il5bMC05XXsyM30kIn0sR1I6e2NoYXJzOjI3LGJiYW5fcmVnZXhwOiJeWzAtOV17N31bQS1aMC05XXsxNn0kIixJQkFOUmVnaXN0cnk6ITAsU0VQQTohMCxicmFuY2hfaW5kZW50aWZpZXI6IjMtNiIsYmFua19pZGVudGlmaWVyOiIwLTIiLGFjY291bnRfaW5kZW50aWZpZXI6IjctMjcifSxHUzp7fSxHVDp7Y2hhcnM6MjgsYmJhbl9yZWdleHA6Il5bQS1aMC05XXsyNH0kIixJQkFOUmVnaXN0cnk6ITAsYmFua19pZGVudGlmaWVyOiIwLTMiLGFjY291bnRfaW5kZW50aWZpZXI6IjgtMjgifSxHVTp7fSxHVzp7Y2hhcnM6MjUsYmJhbl9yZWdleHA6Il5bQS1aXXsyfVswLTldezE5fSQifSxHWTp7fSxISzp7fSxITTp7fSxITjp7Y2hhcnM6MjgsYmJhbl9yZWdleHA6Il5bQS1aXXs0fVswLTldezIwfSQifSxIUjp7Y2hhcnM6MjEsYmJhbl9yZWdleHA6Il5bMC05XXsxN30kIixiYmFuX3ZhbGlkYXRpb25fZnVuYzpKYmEsSUJBTlJlZ2lzdHJ5OiEwLFNFUEE6ITAsYmFua19pZGVudGlmaWVyOiIwLTYifSxIVDp7fSxIVTp7Y2hhcnM6MjgsYmJhbl9yZWdleHA6Il5bMC05XXsyNH0kIixiYmFuX3ZhbGlkYXRpb25fZnVuYzp0dmEsSUJBTlJlZ2lzdHJ5OiEwLFNFUEE6ITAsYnJhbmNoX2luZGVudGlmaWVyOiIzLTYiLGJhbmtfaWRlbnRpZmllcjoiMC0yIn0sSUQ6e30sSUU6e2NoYXJzOjIyLGJiYW5fcmVnZXhwOiJeW0EtWjAtOV17NH1bMC05XXsxNH0kIixJQkFOUmVnaXN0cnk6ITAsU0VQQTohMCxicmFuY2hfaW5kZW50aWZpZXI6IjQtOSIsYmFua19pZGVudGlmaWVyOiIwLTMifSxJTDp7Y2hhcnM6MjMsYmJhbl9yZWdleHA6Il5bMC05XXsxOX0kIixJQkFOUmVnaXN0cnk6ITAsYnJhbmNoX2luZGVudGlmaWVyOiIzLTUiLGJhbmtfaWRlbnRpZmllcjoiMC0yIn0sSU06e30sSU46e30sSU86e30sSVE6e2NoYXJzOjIzLGJiYW5fcmVnZXhwOiJeW0EtWl17NH1bMC05XXsxNX0kIixJQkFOUmVnaXN0cnk6ITAsYnJhbmNoX2luZGVudGlmaWVyOiI0LTYiLGJhbmtfaWRlbnRpZmllcjoiMC0zIixhY2NvdW50X2luZGVudGlmaWVyOiIxMS0yMyJ9LElSOntjaGFyczoyNixiYmFuX3JlZ2V4cDoiXlswLTldezIyfSQifSxJUzp7Y2hhcnM6MjYsYmJhbl9yZWdleHA6Il5bMC05XXsyMn0kIixJQkFOUmVnaXN0cnk6ITAsU0VQQTohMCxicmFuY2hfaW5kZW50aWZpZXI6IjItMyIsYmFua19pZGVudGlmaWVyOiIwLTEifSxJVDp7Y2hhcnM6MjcsYmJhbl9yZWdleHA6Il5bQS1aXXsxfVswLTldezEwfVtBLVowLTldezEyfSQiLElCQU5SZWdpc3RyeTohMCxTRVBBOiEwLGJyYW5jaF9pbmRlbnRpZmllcjoiNi0xMCIsYmFua19pZGVudGlmaWVyOiIxLTUiLGFjY291bnRfaW5kZW50aWZpZXI6IjQtMjcifSxKRTp7fSxKTTp7fSxKTzp7Y2hhcnM6MzAsYmJhbl9yZWdleHA6Il5bQS1aXXs0fVswLTldezR9W0EtWjAtOV17MTh9JCIsSUJBTlJlZ2lzdHJ5OiEwLGJyYW5jaF9pbmRlbnRpZmllcjoiNC03IixiYW5rX2lkZW50aWZpZXI6IjQtNyJ9LEpQOnt9LEtFOnt9LEtHOnt9LEtIOnt9LEtJOnt9LEtNOntjaGFyczoyNyxiYmFuX3JlZ2V4cDoiXlswLTldezIzfSQifSxLTjp7fSxLUDp7fSxLUjp7fSxLVzp7Y2hhcnM6MzAsYmJhbl9yZWdleHA6Il5bQS1aXXs0fVtBLVowLTldezIyfSQiLElCQU5SZWdpc3RyeTohMCxiYW5rX2lkZW50aWZpZXI6IjAtMyIsYWNjb3VudF9pbmRlbnRpZmllcjoiMjAtMzAifSxLWTp7fSxLWjp7Y2hhcnM6MjAsYmJhbl9yZWdleHA6Il5bMC05XXszfVtBLVowLTldezEzfSQiLElCQU5SZWdpc3RyeTohMCxiYW5rX2lkZW50aWZpZXI6IjAtMiIsYWNjb3VudF9pbmRlbnRpZmllcjoiMC0yMCJ9LExBOnt9LExCOntjaGFyczoyOCxiYmFuX3JlZ2V4cDoiXlswLTldezR9W0EtWjAtOV17MjB9JCIsSUJBTlJlZ2lzdHJ5OiEwLGJhbmtfaWRlbnRpZmllcjoiMC0zIixhY2NvdW50X2luZGVudGlmaWVyOiIxNC0yOCJ9LExDOntjaGFyczozMixiYmFuX3JlZ2V4cDoiXltBLVpdezR9W0EtWjAtOV17MjR9JCIsSUJBTlJlZ2lzdHJ5OiEwLGJhbmtfaWRlbnRpZmllcjoiMC0zIixhY2NvdW50X2luZGVudGlmaWVyOiI4LTMyIn0sTEk6e2NoYXJzOjIxLGJiYW5fcmVnZXhwOiJeWzAtOV17NX1bQS1aMC05XXsxMn0kIixJQkFOUmVnaXN0cnk6ITAsU0VQQTohMCxiYW5rX2lkZW50aWZpZXI6IjAtNCJ9LExLOnt9LExSOnt9LExTOnt9LExUOntjaGFyczoyMCxiYmFuX3JlZ2V4cDoiXlswLTldezE2fSQiLElCQU5SZWdpc3RyeTohMCxTRVBBOiEwLGJhbmtfaWRlbnRpZmllcjoiMC00In0sTFU6e2NoYXJzOjIwLGJiYW5fcmVnZXhwOiJeWzAtOV17M31bQS1aMC05XXsxM30kIixJQkFOUmVnaXN0cnk6ITAsU0VQQTohMCxiYW5rX2lkZW50aWZpZXI6IjAtMiJ9LExWOntjaGFyczoyMSxiYmFuX3JlZ2V4cDoiXltBLVpdezR9W0EtWjAtOV17MTN9JCIsSUJBTlJlZ2lzdHJ5OiEwLFNFUEE6ITAsYmFua19pZGVudGlmaWVyOiIwLTMiLGFjY291bnRfaW5kZW50aWZpZXI6IjAtMjEifSxMWTp7Y2hhcnM6MjUsYmJhbl9yZWdleHA6Il5bMC05XXsyMX0kIixJQkFOUmVnaXN0cnk6ITAsYnJhbmNoX2luZGVudGlmaWVyOiIzLTUiLGJhbmtfaWRlbnRpZmllcjoiMC0yIixhY2NvdW50X2luZGVudGlmaWVyOiIxMC0yNSJ9LE1BOntjaGFyczoyOCxiYmFuX3JlZ2V4cDoiXlswLTldezI0fSQifSxNQzp7Y2hhcnM6MjcsYmJhbl9yZWdleHA6Il5bMC05XXsxMH1bQS1aMC05XXsxMX1bMC05XXsyfSQiLGJiYW5fdmFsaWRhdGlvbl9mdW5jOmwkcixJQkFOUmVnaXN0cnk6ITAsU0VQQTohMCxicmFuY2hfaW5kZW50aWZpZXI6IjUtOSIsYmFua19pZGVudGlmaWVyOiIwLTQifSxNRDp7Y2hhcnM6MjQsYmJhbl9yZWdleHA6Il5bQS1aMC05XXsyfVtBLVowLTldezE4fSQiLElCQU5SZWdpc3RyeTohMCxiYW5rX2lkZW50aWZpZXI6IjAtMSIsYWNjb3VudF9pbmRlbnRpZmllcjoiNi0yNCJ9LE1FOntjaGFyczoyMixiYmFuX3JlZ2V4cDoiXlswLTldezE4fSQiLGJiYW5fdmFsaWRhdGlvbl9mdW5jOlc5LElCQU5SZWdpc3RyeTohMCxiYW5rX2lkZW50aWZpZXI6IjAtMiIsYWNjb3VudF9pbmRlbnRpZmllcjoiNC0yMiJ9LE1GOntjaGFyczoyNyxiYmFuX3JlZ2V4cDoiXlswLTldezEwfVtBLVowLTldezExfVswLTldezJ9JCIsSUJBTlJlZ2lzdHJ5OiEwfSxNRzp7Y2hhcnM6MjcsYmJhbl9yZWdleHA6Il5bMC05XXsyM30kIn0sTUg6e30sTUs6e2NoYXJzOjE5LGJiYW5fcmVnZXhwOiJeWzAtOV17M31bQS1aMC05XXsxMH1bMC05XXsyfSQiLGJiYW5fdmFsaWRhdGlvbl9mdW5jOlc5LElCQU5SZWdpc3RyeTohMCxiYW5rX2lkZW50aWZpZXI6IjAtMiJ9LE1MOntjaGFyczoyOCxiYmFuX3JlZ2V4cDoiXltBLVowLTldezJ9WzAtOV17MjJ9JCJ9LE1NOnt9LE1OOntjaGFyczoyMCxiYmFuX3JlZ2V4cDoiXlswLTldezE2fSQiLElCQU5SZWdpc3RyeTohMCxiYW5rX2lkZW50aWZpZXI6IjAtMyIsYWNjb3VudF9pbmRlbnRpZmllcjoiOC0yMCJ9LE1POnt9LE1QOnt9LE1ROntjaGFyczoyNyxiYmFuX3JlZ2V4cDoiXlswLTldezEwfVtBLVowLTldezExfVswLTldezJ9JCIsSUJBTlJlZ2lzdHJ5OiEwfSxNUjp7Y2hhcnM6MjcsYmJhbl9yZWdleHA6Il5bMC05XXsyM30kIixJQkFOUmVnaXN0cnk6ITAsYnJhbmNoX2luZGVudGlmaWVyOiI1LTkiLGJhbmtfaWRlbnRpZmllcjoiMC00IixhY2NvdW50X2luZGVudGlmaWVyOiI0LTI3In0sTVM6e30sTVQ6e2NoYXJzOjMxLGJiYW5fcmVnZXhwOiJeW0EtWl17NH1bMC05XXs1fVtBLVowLTldezE4fSQiLElCQU5SZWdpc3RyeTohMCxTRVBBOiEwLGJyYW5jaF9pbmRlbnRpZmllcjoiNC04IixiYW5rX2lkZW50aWZpZXI6IjAtMyIsYWNjb3VudF9pbmRlbnRpZmllcjoiMTUtMzEifSxNVTp7Y2hhcnM6MzAsYmJhbl9yZWdleHA6Il5bQS1aXXs0fVswLTldezE5fVtBLVpdezN9JCIsSUJBTlJlZ2lzdHJ5OiEwLGJyYW5jaF9pbmRlbnRpZmllcjoiNi03IixiYW5rX2lkZW50aWZpZXI6IjAtNSIsYWNjb3VudF9pbmRlbnRpZmllcjoiMC0zMCJ9LE1WOnt9LE1XOnt9LE1YOnt9LE1ZOnt9LE1aOntjaGFyczoyNSxiYmFuX3JlZ2V4cDoiXlswLTldezIxfSQifSxOQTp7fSxOQzp7Y2hhcnM6MjcsYmJhbl9yZWdleHA6Il5bMC05XXsxMH1bQS1aMC05XXsxMX1bMC05XXsyfSQiLElCQU5SZWdpc3RyeTohMH0sTkU6e2NoYXJzOjI4LGJiYW5fcmVnZXhwOiJeW0EtWl17Mn1bMC05XXsyMn0kIn0sTkY6e30sTkc6e30sTkk6e2NoYXJzOjI4LGJiYW5fcmVnZXhwOiJeW0EtWl17NH1bMC05XXsyMH0kIixiYW5rX2lkZW50aWZpZXI6IjAtMyIsSUJBTlJlZ2lzdHJ5OiEwLGFjY291bnRfaW5kZW50aWZpZXI6IjgtMjgifSxOTDp7Y2hhcnM6MTgsYmJhbl9yZWdleHA6Il5bQS1aXXs0fVswLTldezEwfSQiLElCQU5SZWdpc3RyeTohMCxTRVBBOiEwLGJhbmtfaWRlbnRpZmllcjoiMC0zIixhY2NvdW50X2luZGVudGlmaWVyOiI4LTE4In0sTk86e2NoYXJzOjE1LGJiYW5fcmVnZXhwOiJeWzAtOV17MTF9JCIsYmJhbl92YWxpZGF0aW9uX2Z1bmM6WmJhLElCQU5SZWdpc3RyeTohMCxTRVBBOiEwLGJhbmtfaWRlbnRpZmllcjoiMC0zIixhY2NvdW50X2luZGVudGlmaWVyOiI0LTE1In0sTlA6e30sTlI6e30sTlU6e30sTlo6e30sT006e2NoYXJzOjIzLGJiYW5fcmVnZXhwOiJeWzAtOV17M31bQS1aMC05XXsxNn0kIixJQkFOUmVnaXN0cnk6ITAsU0VQQTohMSxiYW5rX2lkZW50aWZpZXI6IjAtMiJ9LFBBOnt9LFBFOnt9LFBGOntjaGFyczoyNyxiYmFuX3JlZ2V4cDoiXlswLTldezEwfVtBLVowLTldezExfVswLTldezJ9JCIsSUJBTlJlZ2lzdHJ5OiEwfSxQRzp7fSxQSDp7fSxQSzp7Y2hhcnM6MjQsYmJhbl9yZWdleHA6Il5bQS1aMC05XXs0fVswLTldezE2fSQiLElCQU5SZWdpc3RyeTohMCxiYW5rX2lkZW50aWZpZXI6IjAtMyJ9LFBMOntjaGFyczoyOCxiYmFuX3ZhbGlkYXRpb25fZnVuYzpRYmEsYmJhbl9yZWdleHA6Il5bMC05XXsyNH0kIixJQkFOUmVnaXN0cnk6ITAsU0VQQTohMCxicmFuY2hfaW5kZW50aWZpZXI6IjAtNyIsYWNjb3VudF9pbmRlbnRpZmllcjoiMi0yOCJ9LFBNOntjaGFyczoyNyxiYmFuX3JlZ2V4cDoiXlswLTldezEwfVtBLVowLTldezExfVswLTldezJ9JCIsSUJBTlJlZ2lzdHJ5OiEwfSxQTjp7fSxQUjp7fSxQUzp7Y2hhcnM6MjksYmJhbl9yZWdleHA6Il5bQS1aMC05XXs0fVswLTldezIxfSQiLElCQU5SZWdpc3RyeTohMCxiYW5rX2lkZW50aWZpZXI6IjAtMyIsYWNjb3VudF9pbmRlbnRpZmllcjoiMTctMjkifSxQVDp7Y2hhcnM6MjUsYmJhbl9yZWdleHA6Il5bMC05XXsyMX0kIixiYmFuX3ZhbGlkYXRpb25fZnVuYzpXOSxJQkFOUmVnaXN0cnk6ITAsU0VQQTohMCxiYW5rX2lkZW50aWZpZXI6IjAtMyJ9LFBXOnt9LFBZOnt9LFFBOntjaGFyczoyOSxiYmFuX3JlZ2V4cDoiXltBLVpdezR9W0EtWjAtOV17MjF9JCIsSUJBTlJlZ2lzdHJ5OiEwLGJhbmtfaWRlbnRpZmllcjoiMC0zIixhY2NvdW50X2luZGVudGlmaWVyOiI4LTI5In0sUkU6e2NoYXJzOjI3LGJiYW5fcmVnZXhwOiJeWzAtOV17MTB9W0EtWjAtOV17MTF9WzAtOV17Mn0kIixJQkFOUmVnaXN0cnk6ITB9LFJPOntjaGFyczoyNCxiYmFuX3JlZ2V4cDoiXltBLVpdezR9W0EtWjAtOV17MTZ9JCIsSUJBTlJlZ2lzdHJ5OiEwLFNFUEE6ITAsYmFua19pZGVudGlmaWVyOiIwLTMiLGFjY291bnRfaW5kZW50aWZpZXI6IjAtMjQifSxSUzp7Y2hhcnM6MjIsYmJhbl9yZWdleHA6Il5bMC05XXsxOH0kIixiYmFuX3ZhbGlkYXRpb25fZnVuYzpXOSxJQkFOUmVnaXN0cnk6ITAsYmFua19pZGVudGlmaWVyOiIwLTIifSxSVTp7Y2hhcnM6MzMsYmJhbl9yZWdleHA6Il5bMC05XXsxNH1bQS1aMC05XXsxNX0kIixJQkFOUmVnaXN0cnk6ITAsYnJhbmNoX2luZGVudGlmaWVyOiI5LTEzIixiYW5rX2lkZW50aWZpZXI6IjAtOCIsYWNjb3VudF9pbmRlbnRpZmllcjoiMTMtMzMifSxSVzp7fSxTQTp7Y2hhcnM6MjQsYmJhbl9yZWdleHA6Il5bMC05XXsyfVtBLVowLTldezE4fSQiLElCQU5SZWdpc3RyeTohMCxiYW5rX2lkZW50aWZpZXI6IjAtMSIsYWNjb3VudF9pbmRlbnRpZmllcjoiMTItMjQifSxTQjp7fSxTQzp7Y2hhcnM6MzEsYmJhbl9yZWdleHA6Il5bQS1aXXs0fVswLTldezIwfVtBLVpdezN9JCIsSUJBTlJlZ2lzdHJ5OiEwLGJyYW5jaF9pbmRlbnRpZmllcjoiNi03IixiYW5rX2lkZW50aWZpZXI6IjAtNSIsYWNjb3VudF9pbmRlbnRpZmllcjoiMTItMjgifSxTRDp7Y2hhcnM6MTgsYmJhbl9yZWdleHA6Il5bMC05XXsxNH0kIixJQkFOUmVnaXN0cnk6ITAsYmFua19pZGVudGlmaWVyOiIwLTEiLGFjY291bnRfaW5kZW50aWZpZXI6IjYtMTgifSxTRTp7Y2hhcnM6MjQsYmJhbl9yZWdleHA6Il5bMC05XXsyMH0kIixJQkFOUmVnaXN0cnk6ITAsU0VQQTohMCxiYW5rX2lkZW50aWZpZXI6IjAtMiJ9LFNHOnt9LFNIOnt9LFNJOntjaGFyczoxOSxiYmFuX3JlZ2V4cDoiXlswLTldezE1fSQiLGJiYW5fdmFsaWRhdGlvbl9mdW5jOlc5LElCQU5SZWdpc3RyeTohMCxTRVBBOiEwLGJyYW5jaF9pbmRlbnRpZmllcjoiMi00IixiYW5rX2lkZW50aWZpZXI6IjAtMSIsYWNjb3VudF9pbmRlbnRpZmllcjoiOS0xNiJ9LFNKOnt9LFNLOntjaGFyczoyNCxiYmFuX3JlZ2V4cDoiXlswLTldezIwfSQiLGJiYW5fdmFsaWRhdGlvbl9mdW5jOnMkcixJQkFOUmVnaXN0cnk6ITAsU0VQQTohMH0sU0w6e30sU006e2NoYXJzOjI3LGJiYW5fcmVnZXhwOiJeW0EtWl17MX1bMC05XXsxMH1bQS1aMC05XXsxMn0kIixJQkFOUmVnaXN0cnk6ITAsU0VQQTohMCxicmFuY2hfaW5kZW50aWZpZXI6IjYtMTAifSxTTjp7Y2hhcnM6MjgsYmJhbl9yZWdleHA6Il5bQS1aXXsyfVswLTldezIyfSQifSxTTzp7Y2hhcnM6MjMsYmJhbl9yZWdleHA6Il5bMC05XXsxOX0kIixJQkFOUmVnaXN0cnk6ITAsYnJhbmNoX2luZGVudGlmaWVyOiI0LTYiLGFjY291bnRfaW5kZW50aWZpZXI6IjExLTIzIn0sU1I6e30sU1M6e30sU1Q6e2NoYXJzOjI1LGJiYW5fcmVnZXhwOiJeWzAtOV17MjF9JCIsSUJBTlJlZ2lzdHJ5OiEwLGJyYW5jaF9pbmRlbnRpZmllcjoiNC03In0sU1Y6e2NoYXJzOjI4LGJiYW5fcmVnZXhwOiJeW0EtWl17NH1bMC05XXsyMH0kIixJQkFOUmVnaXN0cnk6ITAsYWNjb3VudF9pbmRlbnRpZmllcjoiOC0yOCJ9LFNYOnt9LFNZOnt9LFNaOnt9LFRDOnt9LFREOntjaGFyczoyNyxiYmFuX3JlZ2V4cDoiXlswLTldezIzfSQifSxURjp7Y2hhcnM6MjcsYmJhbl9yZWdleHA6Il5bMC05XXsxMH1bQS1aMC05XXsxMX1bMC05XXsyfSQiLElCQU5SZWdpc3RyeTohMH0sVEc6e2NoYXJzOjI4LGJiYW5fcmVnZXhwOiJeW0EtWl17Mn1bMC05XXsyMn0kIn0sVEg6e30sVEo6e30sVEs6e30sVEw6e2NoYXJzOjIzLGJiYW5fcmVnZXhwOiJeWzAtOV17MTl9JCIsSUJBTlJlZ2lzdHJ5OiEwLGFjY291bnRfaW5kZW50aWZpZXI6IjQtMjMifSxUTTp7fSxUTjp7Y2hhcnM6MjQsYmJhbl9yZWdleHA6Il5bMC05XXsyMH0kIixJQkFOUmVnaXN0cnk6ITAsYnJhbmNoX2luZGVudGlmaWVyOiIyLTQiLGFjY291bnRfaW5kZW50aWZpZXI6IjQtMjQifSxUTzp7fSxUUjp7Y2hhcnM6MjYsYmJhbl9yZWdleHA6Il5bMC05XXs1fVtBLVowLTldezE3fSQiLElCQU5SZWdpc3RyeTohMH0sVFQ6e30sVFY6e30sVFc6e30sVFo6e30sVUE6e2NoYXJzOjI5LGJiYW5fcmVnZXhwOiJeWzAtOV17Nn1bQS1aMC05XXsxOX0kIixJQkFOUmVnaXN0cnk6ITAsYWNjb3VudF9pbmRlbnRpZmllcjoiMTUtMjkifSxVRzp7fSxVTTp7fSxVUzp7fSxVWTp7fSxVWjp7fSxWQTp7Y2hhcnM6MjIsYmJhbl9yZWdleHA6Il5bMC05XXsxOH0iLElCQU5SZWdpc3RyeTohMCxTRVBBOiEwLGFjY291bnRfaW5kZW50aWZpZXI6IjctMjIifSxWQzp7fSxWRTp7fSxWRzp7Y2hhcnM6MjQsYmJhbl9yZWdleHA6Il5bQS1aMC05XXs0fVswLTldezE2fSQiLElCQU5SZWdpc3RyeTohMCxhY2NvdW50X2luZGVudGlmaWVyOiI4LTI0In0sVkk6e30sVk46e30sVlU6e30sV0Y6e2NoYXJzOjI3LGJiYW5fcmVnZXhwOiJeWzAtOV17MTB9W0EtWjAtOV17MTF9WzAtOV17Mn0kIixJQkFOUmVnaXN0cnk6ITB9LFdTOnt9LFhLOntjaGFyczoyMCxiYmFuX3JlZ2V4cDoiXlswLTldezE2fSQiLElCQU5SZWdpc3RyeTohMCxicmFuY2hfaW5kZW50aWZpZXI6IjItMyIsYWNjb3VudF9pbmRlbnRpZmllcjoiNC0yMCJ9LFlFOnt9LFlUOntjaGFyczoyNyxiYmFuX3JlZ2V4cDoiXlswLTldezEwfVtBLVowLTldezExfVswLTldezJ9JCIsSUJBTlJlZ2lzdHJ5OiEwfSxaQTp7fSxaTTp7fSxaVzp7fX19KTt2YXIgZCRyLHUkcj1sKCgpPT57U2UoKTtkJHI9KCk9PlNgCiAgPGRlZXMtZGVtb3dyYXBwZXI+CiAgICA8c3R5bGU+CiAgICAgICR7bGVgCiAgICAgICAgLmRlbW8tY29udGFpbmVyIHsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgICAgZ2FwOiAyNHB4OwogICAgICAgICAgcGFkZGluZzogMjRweDsKICAgICAgICAgIG1heC13aWR0aDogMTIwMHB4OwogICAgICAgICAgbWFyZ2luOiAwIGF1dG87CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5pbnB1dC1ncm91cCB7CiAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICAgIGdhcDogMTZweDsKICAgICAgICB9CgogICAgICAgIC5wYXltZW50LWdyb3VwIHsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgICAgZ2FwOiAxNnB4OwogICAgICAgICAgZmxleC13cmFwOiB3cmFwOwogICAgICAgIH0KICAgICAgYH0KICAgIDwvc3R5bGU+CiAgICAKICAgIDxkaXYgY2xhc3M9ImRlbW8tY29udGFpbmVyIj4KICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IkJhc2ljIElCQU4gSW5wdXQifSAuc3VidGl0bGU9JHsiSW50ZXJuYXRpb25hbCBCYW5rIEFjY291bnQgTnVtYmVyIHdpdGggYXV0b21hdGljIGZvcm1hdHRpbmcifT4KICAgICAgICA8ZGl2IGNsYXNzPSJpbnB1dC1ncm91cCI+CiAgICAgICAgICA8ZGVlcy1pbnB1dC1pYmFuCiAgICAgICAgICAgIC5sYWJlbD0keyJCYW5rIEFjY291bnQgSUJBTiJ9CiAgICAgICAgICAgIC5kZXNjcmlwdGlvbj0keyJFbnRlciB5b3VyIEludGVybmF0aW9uYWwgQmFuayBBY2NvdW50IE51bWJlciJ9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LWliYW4+CgogICAgICAgICAgPGRlZXMtaW5wdXQtaWJhbgogICAgICAgICAgICAubGFiZWw9JHsiVmVyaWZpZWQgSUJBTiJ9CiAgICAgICAgICAgIC5kZXNjcmlwdGlvbj0keyJUaGlzIElCQU4gaGFzIGJlZW4gdmVyaWZpZWQifQogICAgICAgICAgICAudmFsdWU9JHsiREU4OTM3MDQwMDQ0MDUzMjAxMzAwMCJ9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LWliYW4+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgICAgCiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyJQYXltZW50IEluZm9ybWF0aW9uIn0gLnN1YnRpdGxlPSR7IklCQU4gaW5wdXQgd2l0aCBob3Jpem9udGFsIGxheW91dCBmb3IgcGF5bWVudCBmb3JtcyJ9PgogICAgICAgIDxkaXYgY2xhc3M9InBheW1lbnQtZ3JvdXAiPgogICAgICAgICAgPGRlZXMtaW5wdXQtdGV4dCAKICAgICAgICAgICAgLmxhYmVsPSR7IkFjY291bnQgSG9sZGVyIn0gCiAgICAgICAgICAgIC5sYXlvdXRNb2RlPSR7Imhvcml6b250YWwifQogICAgICAgICAgICAudmFsdWU9JHsiSm9obiBEb2UifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC10ZXh0PgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1pbnB1dC1pYmFuIAogICAgICAgICAgICAubGFiZWw9JHsiSUJBTiJ9IAogICAgICAgICAgICAubGF5b3V0TW9kZT0keyJob3Jpem9udGFsIn0KICAgICAgICAgICAgLnZhbHVlPSR7IkdCODJXRVNUMTIzNDU2OTg3NjU0MzIifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC1pYmFuPgogICAgICAgIDwvZGl2PgogICAgICA8L2RlZXMtcGFuZWw+CiAgICAgIAogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiVmFsaWRhdGlvbiAmIFN0YXRlcyJ9IC5zdWJ0aXRsZT0keyJSZXF1aXJlZCBmaWVsZHMgYW5kIGRpc2FibGVkIHN0YXRlcyJ9PgogICAgICAgIDxkaXYgY2xhc3M9ImlucHV0LWdyb3VwIj4KICAgICAgICAgIDxkZWVzLWlucHV0LWliYW4KICAgICAgICAgICAgLmxhYmVsPSR7IlBheW1lbnQgQWNjb3VudCJ9CiAgICAgICAgICAgIC5kZXNjcmlwdGlvbj0keyJSZXF1aXJlZCBmb3IgcHJvY2Vzc2luZyBwYXltZW50cyJ9CiAgICAgICAgICAgIC5yZXF1aXJlZD0keyEwfQogICAgICAgICAgPjwvZGVlcy1pbnB1dC1pYmFuPgoKICAgICAgICAgIDxkZWVzLWlucHV0LWliYW4KICAgICAgICAgICAgLmxhYmVsPSR7IkxvY2tlZCBJQkFOIn0KICAgICAgICAgICAgLmRlc2NyaXB0aW9uPSR7IlRoaXMgSUJBTiBjYW5ub3QgYmUgY2hhbmdlZCJ9CiAgICAgICAgICAgIC52YWx1ZT0keyJGUjE0MjAwNDEwMTAwNTA1MDAwMTNNMDI2MDYifQogICAgICAgICAgICAuZGlzYWJsZWQ9JHshMH0KICAgICAgICAgID48L2RlZXMtaW5wdXQtaWJhbj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgICAKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IkJhbmsgVHJhbnNmZXIgRm9ybSJ9IC5zdWJ0aXRsZT0keyJDb21wbGV0ZSBmb3JtIGV4YW1wbGUgd2l0aCBJQkFOIHZhbGlkYXRpb24ifT4KICAgICAgICA8ZGVlcy1mb3JtPgogICAgICAgICAgPGRlZXMtaW5wdXQtdGV4dCAubGFiZWw9JHsiUmVjaXBpZW50IE5hbWUifSAucmVxdWlyZWQ9JHshMH0+PC9kZWVzLWlucHV0LXRleHQ+CiAgICAgICAgICA8ZGVlcy1pbnB1dC1pYmFuIC5sYWJlbD0keyJSZWNpcGllbnQgSUJBTiJ9IC5yZXF1aXJlZD0keyEwfT48L2RlZXMtaW5wdXQtaWJhbj4KICAgICAgICAgIDxkZWVzLWlucHV0LXRleHQgLmxhYmVsPSR7IlRyYW5zZmVyIFJlZmVyZW5jZSJ9IC5kZXNjcmlwdGlvbj0keyJPcHRpb25hbCByZWZlcmVuY2UgZm9yIHRoZSB0cmFuc2ZlciJ9PjwvZGVlcy1pbnB1dC10ZXh0PgogICAgICAgICAgPGRlZXMtaW5wdXQtdGV4dCAubGFiZWw9JHsiQW1vdW50In0gLmlucHV0VHlwZT0keyJudW1iZXIifSAucmVxdWlyZWQ9JHshMH0+PC9kZWVzLWlucHV0LXRleHQ+CiAgICAgICAgPC9kZWVzLWZvcm0+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgIDwvZGl2PgogIDwvZGVlcy1kZW1vd3JhcHBlcj4KYH0pO3ZhciBGbGUsTDgsT2xlLGljdD1sKCgpPT57U2UoKTtlcigpO1BhKCk7YyRyKCk7dSRyKCk7b3QoKTtGbGU9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxMOD1mdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MixpPTA7aTx0Lmxlbmd0aDtpKyspcj1hP3RbaV0uY2FsbChlLHIpOnRbaV0uY2FsbChlKTtyZXR1cm4gYT9yOnZvaWQgMH0sT2xlPSgoKT0+e2xldCBlPVt6ZSgiZGVlcy1pbnB1dC1pYmFuIildLHQscj1bXSxhLGk9aHQsbyxuPVtdLHM9W10sYyxkPVtdLGY9W10sdSxwPVtdLGg9W107dmFyIGI9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCB4PXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO289W3JlKCldLGM9W3JlKCldLHU9W2ooe3R5cGU6U3RyaW5nfSldLEZsZSh0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImVudGVyZWRTdHJpbmciLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmc9PiJlbnRlcmVkU3RyaW5nImluIGcsZ2V0Omc9PmcuZW50ZXJlZFN0cmluZyxzZXQ6KGcsdik9PntnLmVudGVyZWRTdHJpbmc9dn19LG1ldGFkYXRhOnh9LG4scyksRmxlKHRoaXMsbnVsbCxjLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZW50ZXJlZEliYW5Jc1ZhbGlkIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpnPT4iZW50ZXJlZEliYW5Jc1ZhbGlkImluIGcsZ2V0Omc9PmcuZW50ZXJlZEliYW5Jc1ZhbGlkLHNldDooZyx2KT0+e2cuZW50ZXJlZEliYW5Jc1ZhbGlkPXZ9fSxtZXRhZGF0YTp4fSxkLGYpLEZsZSh0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InZhbHVlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpnPT4idmFsdWUiaW4gZyxnZXQ6Zz0+Zy52YWx1ZSxzZXQ6KGcsdik9PntnLnZhbHVlPXZ9fSxtZXRhZGF0YTp4fSxwLGgpLEZsZShudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTp4fSxudWxsLHIpLGI9YT10LnZhbHVlLHgmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6eH0pfXN0YXRpYyBkZW1vPWQkcjtzdGF0aWMgZGVtb0dyb3Vwcz1bIklucHV0Il07I2U9TDgodGhpcyxuLCIiKTtnZXQgZW50ZXJlZFN0cmluZygpe3JldHVybiB0aGlzLiNlfXNldCBlbnRlcmVkU3RyaW5nKHgpe3RoaXMuI2U9eH0jdD0oTDgodGhpcyxzKSxMOCh0aGlzLGQsITEpKTtnZXQgZW50ZXJlZEliYW5Jc1ZhbGlkKCl7cmV0dXJuIHRoaXMuI3R9c2V0IGVudGVyZWRJYmFuSXNWYWxpZCh4KXt0aGlzLiN0PXh9I3I9KEw4KHRoaXMsZiksTDgodGhpcyxwLCIiKSk7Z2V0IHZhbHVlKCl7cmV0dXJuIHRoaXMuI3J9c2V0IHZhbHVlKHgpe3RoaXMuI3I9eH1zdGF0aWMgc3R5bGVzPVtQZSwuLi5odC5iYXNlU3R5bGVzLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgLyogVE9ETzogTWlncmF0ZSBoYXJkY29kZWQgdmFsdWVzIHRvIC0tZGVlcy0qIENTUyB2YXJpYWJsZXMgKi8KICAgICAgLyogSUJBTiBpbnB1dCBzcGVjaWZpYyBzdHlsZXMgY2FuIGdvIGhlcmUgKi8KICAgIGBdO3JlbmRlcigpe3JldHVybiBTYAogICAgICA8ZGl2IGNsYXNzPSJpbnB1dC13cmFwcGVyIj4KICAgICAgICA8ZGVlcy1sYWJlbCAubGFiZWw9JHt0aGlzLmxhYmVsfHwiSUJBTiJ9IC5kZXNjcmlwdGlvbj0ke3RoaXMuZGVzY3JpcHRpb259PjwvZGVlcy1sYWJlbD4KICAgICAgICA8ZGVlcy1pbnB1dC10ZXh0CiAgICAgICAgICAudmFsdWU9JHt0aGlzLnZhbHVlfQogICAgICAgICAgLmRpc2FibGVkPSR7dGhpcy5kaXNhYmxlZH0KICAgICAgICAgIC5yZXF1aXJlZD0ke3RoaXMucmVxdWlyZWR9CiAgICAgICAgICAucGxhY2Vob2xkZXI9JHsiREU4OSAzNzA0IDAwNDQgMDUzMiAwMTMwIDAwIn0KICAgICAgICAgIEBpbnB1dD0ke3g9Pnt0aGlzLnZhbGlkYXRlSWJhbih4KX19CiAgICAgICAgPjwvZGVlcy1pbnB1dC10ZXh0PgogICAgICA8L2Rpdj4KICAgIGB9Zmlyc3RVcGRhdGVkKHgpe3N1cGVyLmZpcnN0VXBkYXRlZCh4KTtsZXQgZz10aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcigiZGVlcy1pbnB1dC10ZXh0Iik7ZyYmZy5jaGFuZ2VTdWJqZWN0JiZnLmNoYW5nZVN1YmplY3Quc3Vic2NyaWJlKCgpPT57dGhpcy5jaGFuZ2VTdWJqZWN0Lm5leHQodGhpcyl9KX1hc3luYyB2YWxpZGF0ZUliYW4oeCl7bGV0IGc9eC50YXJnZXQsdj1nPy52YWx1ZTt2PXZ8fCIiLHRoaXMuZW50ZXJlZFN0cmluZyE9PXYmJih0aGlzLmVudGVyZWRTdHJpbmc9YWN0KHYpfHwiIixnJiYoZy52YWx1ZT10aGlzLmVudGVyZWRTdHJpbmcsdGhpcy52YWx1ZT10aGlzLmVudGVyZWRTdHJpbmcsdGhpcy5jaGFuZ2VTdWJqZWN0Lm5leHQodGhpcykpKSx0aGlzLmVudGVyZWRJYmFuSXNWYWxpZD1yY3QodGhpcy5lbnRlcmVkU3RyaW5nLnJlcGxhY2UoLyAvZywiIikpO2xldCB3PXRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCJkZWVzLWlucHV0LXRleHQiKTt3LnZhbGlkYXRpb25UZXh0PWBJQkFOIGlzIHZhbGlkOiAke3RoaXMuZW50ZXJlZEliYW5Jc1ZhbGlkfWB9Z2V0VmFsdWUoKXtyZXR1cm4gdGhpcy52YWx1ZX1zZXRWYWx1ZSh4KXt0aGlzLnZhbHVlPXgsdGhpcy5lbnRlcmVkU3RyaW5nPWFjdCh4KXx8IiJ9Y29uc3RydWN0b3IoKXtzdXBlciguLi5hcmd1bWVudHMpLEw4KHRoaXMsaCl9c3RhdGlje0w4KGEscil9fTtyZXR1cm4gYj1hfSkoKX0pO3ZhciBmJHIscCRyPWwoKCk9PntTZSgpO2Ykcj0oKT0+U2AKICA8ZGVlcy1kZW1vd3JhcHBlcj4KICAgIDxzdHlsZT4KICAgICAgJHtsZWAKICAgICAgICAuZGVtby1jb250YWluZXIgewogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgICBnYXA6IDMycHg7CiAgICAgICAgICBwYWRkaW5nOiA0OHB4OwogICAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmOGY5ZmEiLCIjMGEwYTBhIil9OwogICAgICAgICAgbWluLWhlaWdodDogMTAwdmg7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5zZWN0aW9uIHsKICAgICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZmZmZmZmIiwiIzE4MTgxYiIpfTsKICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZTVlN2ViIiwiIzI3MjcyYSIpfTsKICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgICAgIHBhZGRpbmc6IDI0cHg7CiAgICAgICAgICBib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjEpOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAuc2VjdGlvbi10aXRsZSB7CiAgICAgICAgICBmb250LXNpemU6IDE4cHg7CiAgICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4OwogICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMDkwOTBiIiwiI2ZhZmFmYSIpfTsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLnNlY3Rpb24tZGVzY3JpcHRpb24gewogICAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiI2ExYTFhYSIpfTsKICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5zZXR0aW5ncy1ncmlkIHsKICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7CiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7CiAgICAgICAgICBnYXA6IDI0cHg7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkgewogICAgICAgICAgLnNldHRpbmdzLWdyaWQgewogICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIGB9CiAgICA8L3N0eWxlPgogICAgCiAgICA8ZGl2IGNsYXNzPSJkZW1vLWNvbnRhaW5lciI+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24iPgogICAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tdGl0bGUiPk11bHRpLU9wdGlvbiBUb2dnbGU8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uLWRlc2NyaXB0aW9uIj5TZWxlY3QgZnJvbSBtdWx0aXBsZSBvcHRpb25zIHdpdGggYSBzbW9vdGggc2xpZGluZyBpbmRpY2F0b3IgYW5pbWF0aW9uLjwvZGl2PgogICAgICAgIAogICAgICAgIDxkZWVzLWlucHV0LW11bHRpdG9nZ2xlCiAgICAgICAgICAubGFiZWw9JHsiRGlzcGxheSBNb2RlIn0KICAgICAgICAgIC5kZXNjcmlwdGlvbj0keyJDaG9vc2UgaG93IGNvbnRlbnQgaXMgZGlzcGxheWVkIn0KICAgICAgICAgIC5vcHRpb25zPSR7WyJMaXN0IFZpZXciLCJHcmlkIFZpZXciLCJDb21wYWN0Il19CiAgICAgICAgICAuc2VsZWN0ZWRPcHRpb249JHsiR3JpZCBWaWV3In0KICAgICAgICA+PC9kZWVzLWlucHV0LW11bHRpdG9nZ2xlPgogICAgICAgIAogICAgICAgIDxicj48YnI+CiAgICAgICAgCiAgICAgICAgPGRlZXMtaW5wdXQtbXVsdGl0b2dnbGUKICAgICAgICAgIC5sYWJlbD0keyJULVNoaXJ0IFNpemUifQogICAgICAgICAgLmRlc2NyaXB0aW9uPSR7IlNlbGVjdCB5b3VyIHByZWZlcnJlZCBzaXplIn0KICAgICAgICAgIC5vcHRpb25zPSR7WyJYUyIsIlMiLCJNIiwiTCIsIlhMIiwiWFhMIl19CiAgICAgICAgICAuc2VsZWN0ZWRPcHRpb249JHsiTSJ9CiAgICAgICAgPjwvZGVlcy1pbnB1dC1tdWx0aXRvZ2dsZT4KICAgICAgPC9kaXY+CiAgICAgIAogICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uLXRpdGxlIj5Cb29sZWFuIFRvZ2dsZTwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tZGVzY3JpcHRpb24iPlNpbXBsZSBvbi9vZmYgc3dpdGNoZXMgd2l0aCBjdXN0b21pemFibGUgbGFiZWxzIGZvciBjbGVhcmVyIGNvbnRleHQuPC9kaXY+CiAgICAgICAgCiAgICAgICAgPGRlZXMtaW5wdXQtbXVsdGl0b2dnbGUKICAgICAgICAgIC5sYWJlbD0keyJOb3RpZmljYXRpb25zIn0KICAgICAgICAgIC5kZXNjcmlwdGlvbj0keyJFbmFibGUgb3IgZGlzYWJsZSBwdXNoIG5vdGlmaWNhdGlvbnMifQogICAgICAgICAgLnR5cGU9JHsiYm9vbGVhbiJ9CiAgICAgICAgICAuc2VsZWN0ZWRPcHRpb249JHsidHJ1ZSJ9CiAgICAgICAgPjwvZGVlcy1pbnB1dC1tdWx0aXRvZ2dsZT4KICAgICAgICAKICAgICAgICA8YnI+PGJyPgogICAgICAgIAogICAgICAgIDxkZWVzLWlucHV0LW11bHRpdG9nZ2xlCiAgICAgICAgICAubGFiZWw9JHsiVGhlbWUgTW9kZSJ9CiAgICAgICAgICAuZGVzY3JpcHRpb249JHsiU3dpdGNoIGJldHdlZW4gbGlnaHQgYW5kIGRhcmsgdGhlbWUifQogICAgICAgICAgLnR5cGU9JHsiYm9vbGVhbiJ9CiAgICAgICAgICAuYm9vbGVhblRydWVOYW1lPSR7IkRhcmsifQogICAgICAgICAgLmJvb2xlYW5GYWxzZU5hbWU9JHsiTGlnaHQifQogICAgICAgICAgLnNlbGVjdGVkT3B0aW9uPSR7IkRhcmsifQogICAgICAgID48L2RlZXMtaW5wdXQtbXVsdGl0b2dnbGU+CiAgICAgIDwvZGl2PgogICAgICAKICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbiI+CiAgICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi10aXRsZSI+U2V0dGluZ3MgR3JpZDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tZGVzY3JpcHRpb24iPkNvbmZpZ3VyYXRpb24gb3B0aW9ucyBhcnJhbmdlZCBpbiBhIHJlc3BvbnNpdmUgZ3JpZCBsYXlvdXQuPC9kaXY+CiAgICAgICAgCiAgICAgICAgPGRpdiBjbGFzcz0ic2V0dGluZ3MtZ3JpZCI+CiAgICAgICAgICA8ZGVlcy1pbnB1dC1tdWx0aXRvZ2dsZQogICAgICAgICAgICAubGFiZWw9JHsiQXV0by1TYXZlIn0KICAgICAgICAgICAgLnR5cGU9JHsiYm9vbGVhbiJ9CiAgICAgICAgICAgIC5ib29sZWFuVHJ1ZU5hbWU9JHsiRW5hYmxlZCJ9CiAgICAgICAgICAgIC5ib29sZWFuRmFsc2VOYW1lPSR7IkRpc2FibGVkIn0KICAgICAgICAgICAgLnNlbGVjdGVkT3B0aW9uPSR7IkVuYWJsZWQifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC1tdWx0aXRvZ2dsZT4KICAgICAgICAgIAogICAgICAgICAgPGRlZXMtaW5wdXQtbXVsdGl0b2dnbGUKICAgICAgICAgICAgLmxhYmVsPSR7Ikxhbmd1YWdlIn0KICAgICAgICAgICAgLm9wdGlvbnM9JHtbIkVuZ2xpc2giLCJHZXJtYW4iLCJGcmVuY2giLCJTcGFuaXNoIl19CiAgICAgICAgICAgIC5zZWxlY3RlZE9wdGlvbj0keyJFbmdsaXNoIn0KICAgICAgICAgID48L2RlZXMtaW5wdXQtbXVsdGl0b2dnbGU+CiAgICAgICAgICAKICAgICAgICAgIDxkZWVzLWlucHV0LW11bHRpdG9nZ2xlCiAgICAgICAgICAgIC5sYWJlbD0keyJRdWFsaXR5In0KICAgICAgICAgICAgLm9wdGlvbnM9JHtbIkxvdyIsIk1lZGl1bSIsIkhpZ2giLCJVbHRyYSJdfQogICAgICAgICAgICAuc2VsZWN0ZWRPcHRpb249JHsiSGlnaCJ9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LW11bHRpdG9nZ2xlPgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1pbnB1dC1tdWx0aXRvZ2dsZQogICAgICAgICAgICAubGFiZWw9JHsiUHJpdmFjeSJ9CiAgICAgICAgICAgIC50eXBlPSR7ImJvb2xlYW4ifQogICAgICAgICAgICAuYm9vbGVhblRydWVOYW1lPSR7IlByaXZhdGUifQogICAgICAgICAgICAuYm9vbGVhbkZhbHNlTmFtZT0keyJQdWJsaWMifQogICAgICAgICAgICAuc2VsZWN0ZWRPcHRpb249JHsiUHJpdmF0ZSJ9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LW11bHRpdG9nZ2xlPgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgICAgCiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24iPgogICAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tdGl0bGUiPlN0YXRlcyAmIEZvcm0gSW50ZWdyYXRpb248L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uLWRlc2NyaXB0aW9uIj5FeGFtcGxlcyBvZiBkaXNhYmxlZCBzdGF0ZXMgYW5kIGludGVncmF0aW9uIHdpdGhpbiBmb3Jtcy48L2Rpdj4KICAgICAgICAKICAgICAgICA8ZGVlcy1pbnB1dC1tdWx0aXRvZ2dsZQogICAgICAgICAgLmxhYmVsPSR7IkFjY291bnQgVHlwZSJ9CiAgICAgICAgICAuZGVzY3JpcHRpb249JHsiVGhpcyBzZXR0aW5nIGlzIGxvY2tlZCJ9CiAgICAgICAgICAub3B0aW9ucz0ke1siRnJlZSIsIlBybyIsIkVudGVycHJpc2UiXX0KICAgICAgICAgIC5zZWxlY3RlZE9wdGlvbj0keyJFbnRlcnByaXNlIn0KICAgICAgICAgIC5kaXNhYmxlZD0keyEwfQogICAgICAgID48L2RlZXMtaW5wdXQtbXVsdGl0b2dnbGU+CiAgICAgICAgCiAgICAgICAgPGJyPjxicj4KICAgICAgICAKICAgICAgICA8ZGVlcy1mb3JtPgogICAgICAgICAgPGRlZXMtaW5wdXQtdGV4dCAubGFiZWw9JHsiUHJvamVjdCBOYW1lIn0gLnJlcXVpcmVkPSR7ITB9PjwvZGVlcy1pbnB1dC10ZXh0PgogICAgICAgICAgPGRlZXMtaW5wdXQtbXVsdGl0b2dnbGUKICAgICAgICAgICAgLmxhYmVsPSR7IlZpc2liaWxpdHkifQogICAgICAgICAgICAudHlwZT0keyJib29sZWFuIn0KICAgICAgICAgICAgLmJvb2xlYW5UcnVlTmFtZT0keyJQdWJsaWMifQogICAgICAgICAgICAuYm9vbGVhbkZhbHNlTmFtZT0keyJQcml2YXRlIn0KICAgICAgICAgICAgLnNlbGVjdGVkT3B0aW9uPSR7IlByaXZhdGUifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC1tdWx0aXRvZ2dsZT4KICAgICAgICAgIDxkZWVzLWlucHV0LW11bHRpdG9nZ2xlCiAgICAgICAgICAgIC5sYWJlbD0keyJMaWNlbnNlIn0KICAgICAgICAgICAgLm9wdGlvbnM9JHtbIk1JVCIsIkFwYWNoZSAyLjAiLCJHUEwgdjMiLCJQcm9wcmlldGFyeSJdfQogICAgICAgICAgICAuc2VsZWN0ZWRPcHRpb249JHsiTUlUIn0KICAgICAgICAgID48L2RlZXMtaW5wdXQtbXVsdGl0b2dnbGU+CiAgICAgICAgPC9kZWVzLWZvcm0+CiAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgPC9kZWVzLWRlbW93cmFwcGVyPgpgfSk7dmFyIEQ4LGxuLFJsZSxvY3Q9bCgoKT0+e1NlKCk7UGEoKTtWbigpO3AkcigpO290KCk7RDg9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxsbj1mdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MixpPTA7aTx0Lmxlbmd0aDtpKyspcj1hP3RbaV0uY2FsbChlLHIpOnRbaV0uY2FsbChlKTtyZXR1cm4gYT9yOnZvaWQgMH0sUmxlPSgoKT0+e2xldCBlPVt6ZSgiZGVlcy1pbnB1dC1tdWx0aXRvZ2dsZSIpXSx0LHI9W10sYSxpPWh0LG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdLHUscD1bXSxoPVtdLGIseD1bXSxnPVtdLHYsdz1bXSxNPVtdLEYsQz1bXSxrPVtdO3ZhciBOPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgJD10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKCldLGM9W2ooKV0sdT1baigpXSxiPVtqKHt0eXBlOkFycmF5fSldLHY9W2ooKV0sRj1baih7dHlwZTpCb29sZWFufSldLEQ4KHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToidHlwZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ST0+InR5cGUiaW4gSSxnZXQ6ST0+SS50eXBlLHNldDooSSxCKT0+e0kudHlwZT1CfX0sbWV0YWRhdGE6JH0sbixzKSxEOCh0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImJvb2xlYW5UcnVlTmFtZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ST0+ImJvb2xlYW5UcnVlTmFtZSJpbiBJLGdldDpJPT5JLmJvb2xlYW5UcnVlTmFtZSxzZXQ6KEksQik9PntJLmJvb2xlYW5UcnVlTmFtZT1CfX0sbWV0YWRhdGE6JH0sZCxmKSxEOCh0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImJvb2xlYW5GYWxzZU5hbWUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOkk9PiJib29sZWFuRmFsc2VOYW1lImluIEksZ2V0Okk9PkkuYm9vbGVhbkZhbHNlTmFtZSxzZXQ6KEksQik9PntJLmJvb2xlYW5GYWxzZU5hbWU9Qn19LG1ldGFkYXRhOiR9LHAsaCksRDgodGhpcyxudWxsLGIse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJvcHRpb25zIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpJPT4ib3B0aW9ucyJpbiBJLGdldDpJPT5JLm9wdGlvbnMsc2V0OihJLEIpPT57SS5vcHRpb25zPUJ9fSxtZXRhZGF0YTokfSx4LGcpLEQ4KHRoaXMsbnVsbCx2LHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2VsZWN0ZWRPcHRpb24iLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOkk9PiJzZWxlY3RlZE9wdGlvbiJpbiBJLGdldDpJPT5JLnNlbGVjdGVkT3B0aW9uLHNldDooSSxCKT0+e0kuc2VsZWN0ZWRPcHRpb249Qn19LG1ldGFkYXRhOiR9LHcsTSksRDgodGhpcyxudWxsLEYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJib29sVmFsdWUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOkk9PiJib29sVmFsdWUiaW4gSSxnZXQ6ST0+SS5ib29sVmFsdWUsc2V0OihJLEIpPT57SS5ib29sVmFsdWU9Qn19LG1ldGFkYXRhOiR9LEMsayksRDgobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6JH0sbnVsbCxyKSxOPWE9dC52YWx1ZSwkJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOiR9KX1zdGF0aWMgZGVtbz1mJHI7c3RhdGljIGRlbW9Hcm91cHM9WyJJbnB1dCJdOyNlPWxuKHRoaXMsbiwibXVsdGkiKTtnZXQgdHlwZSgpe3JldHVybiB0aGlzLiNlfXNldCB0eXBlKCQpe3RoaXMuI2U9JH0jdD0obG4odGhpcyxzKSxsbih0aGlzLGQsInRydWUiKSk7Z2V0IGJvb2xlYW5UcnVlTmFtZSgpe3JldHVybiB0aGlzLiN0fXNldCBib29sZWFuVHJ1ZU5hbWUoJCl7dGhpcy4jdD0kfSNyPShsbih0aGlzLGYpLGxuKHRoaXMscCwiZmFsc2UiKSk7Z2V0IGJvb2xlYW5GYWxzZU5hbWUoKXtyZXR1cm4gdGhpcy4jcn1zZXQgYm9vbGVhbkZhbHNlTmFtZSgkKXt0aGlzLiNyPSR9I2E9KGxuKHRoaXMsaCksbG4odGhpcyx4LFtdKSk7Z2V0IG9wdGlvbnMoKXtyZXR1cm4gdGhpcy4jYX1zZXQgb3B0aW9ucygkKXt0aGlzLiNhPSR9I2k9KGxuKHRoaXMsZyksbG4odGhpcyx3LCIiKSk7Z2V0IHNlbGVjdGVkT3B0aW9uKCl7cmV0dXJuIHRoaXMuI2l9c2V0IHNlbGVjdGVkT3B0aW9uKCQpe3RoaXMuI2k9JH0jbz0obG4odGhpcyxNKSxsbih0aGlzLEMsITEpKTtnZXQgYm9vbFZhbHVlKCl7cmV0dXJuIHRoaXMuI299c2V0IGJvb2xWYWx1ZSgkKXt0aGlzLiNvPSR9Z2V0IHZhbHVlKCl7cmV0dXJuIHRoaXMudHlwZT09PSJib29sZWFuIj90aGlzLnNlbGVjdGVkT3B0aW9uPT09dGhpcy5ib29sZWFuVHJ1ZU5hbWU6dGhpcy5zZWxlY3RlZE9wdGlvbn1zZXQgdmFsdWUoJCl7dGhpcy50eXBlPT09ImJvb2xlYW4iJiZ0eXBlb2YgJD09ImJvb2xlYW4iP3RoaXMuc2VsZWN0ZWRPcHRpb249JD90aGlzLmJvb2xlYW5UcnVlTmFtZTp0aGlzLmJvb2xlYW5GYWxzZU5hbWU6dGhpcy5zZWxlY3RlZE9wdGlvbj0kLHRoaXMucmVxdWVzdFVwZGF0ZSgpLHRoaXMuaGFzVXBkYXRlZCYmcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57dGhpcy5zZXRJbmRpY2F0b3IoKX0pfXN0YXRpYyBzdHlsZXM9W1BlLC4uLmh0LmJhc2VTdHlsZXMsbS5kZWZhdWx0U3R5bGVzLGxlYAogICAgICAvKiBUT0RPOiBNaWdyYXRlIGhhcmRjb2RlZCB2YWx1ZXMgdG8gLS1kZWVzLSogQ1NTIHZhcmlhYmxlcyAqLwogICAgICA6aG9zdCB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMDkwOTBiIiwiI2ZhZmFmYSIpfTsKICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTsKICAgICAgfQoKICAgICAgLnNlbGVjdGlvbnMgewogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZmZmZmZmIiwiIzE4MTgxYiIpfTsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiMyNzI3MmEiKX07CiAgICAgICAgcGFkZGluZzogNHB4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgICBib3gtc2hhZG93OiAwIDFweCAycHggMCByZ2JhKDAsIDAsIDAsIDAuMDUpOwogICAgICB9CgogICAgICAub3B0aW9uIHsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgcGFkZGluZzogOHB4IDIwcHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZTsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM3MTcxN2EiLCIjNzE3MTdhIil9OwogICAgICAgIGxpbmUtaGVpZ2h0OiAxOwogICAgICAgIHotaW5kZXg6IDI7CiAgICAgIH0KCiAgICAgIC5vcHRpb246aG92ZXIgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzE4MTgxYiIsIiNlNGU0ZTciKX07CiAgICAgIH0KCiAgICAgIC5vcHRpb24uc2VsZWN0ZWQgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzNiODJmNiIsIiM2MGE1ZmEiKX07CiAgICAgIH0KCiAgICAgIC5pbmRpY2F0b3IgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gOHB4KTsKICAgICAgICB0b3A6IDRweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoNTksIDEzMCwgMjQ2LCAwLjE1KSIsInJnYmEoNTksIDEzMCwgMjQ2LCAwLjE1KSIpfTsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpOwogICAgICAgIHotaW5kZXg6IDE7CiAgICAgIH0KICAgICAgCiAgICAgIC5pbmRpY2F0b3Iubm8tdHJhbnNpdGlvbiB7CiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTsKICAgICAgfQogICAgICAKICAgICAgOmhvc3QoW2Rpc2FibGVkXSkgLnNlbGVjdGlvbnMgewogICAgICAgIG9wYWNpdHk6IDAuNTsKICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOwogICAgICB9CgogICAgICA6aG9zdChbZGlzYWJsZWRdKSAub3B0aW9uIHsKICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOwogICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgICB9CgogICAgICA6aG9zdChbZGlzYWJsZWRdKSAuaW5kaWNhdG9yIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgicmdiYSgxMTMsIDExMywgMTIyLCAwLjE1KSIsInJnYmEoMTEzLCAxMTMsIDEyMiwgMC4xNSkiKX07CiAgICAgIH0KICAgIGBdO3JlbmRlcigpe3JldHVybiBTYAogICAgICA8ZGl2IGNsYXNzPSJpbnB1dC13cmFwcGVyIj4KICAgICAgICA8ZGVlcy1sYWJlbCAubGFiZWw9JHt0aGlzLmxhYmVsfSAuZGVzY3JpcHRpb249JHt0aGlzLmRlc2NyaXB0aW9ufT48L2RlZXMtbGFiZWw+CiAgICAgICAgPGRpdiBjbGFzcz0ibWFpbmJveCI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJzZWxlY3Rpb25zIj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImluZGljYXRvciI+PC9kaXY+CiAgICAgICAgICAke3RoaXMub3B0aW9ucy5tYXAoJD0+U2A8ZGl2IGNsYXNzPSJvcHRpb24gJHskPT09dGhpcy5zZWxlY3RlZE9wdGlvbj8ic2VsZWN0ZWQiOiIifSIgQGNsaWNrPSR7KCk9PnRoaXMuaGFuZGxlU2VsZWN0aW9uKCQpfT4KICAgICAgICAgICAgICAgICR7JH0KICAgICAgICAgICAgICA8L2Rpdj4gYCl9CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICBgfWFzeW5jIGNvbm5lY3RlZENhbGxiYWNrKCl7YXdhaXQgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKSx0aGlzLnR5cGU9PT0iYm9vbGVhbiImJnRoaXMub3B0aW9ucy5sZW5ndGg9PT0wJiYodGhpcy5vcHRpb25zPVt0aGlzLmJvb2xlYW5UcnVlTmFtZXx8InRydWUiLHRoaXMuYm9vbGVhbkZhbHNlTmFtZXx8ImZhbHNlIl0sdGhpcy5zZWxlY3RlZE9wdGlvbnx8KHRoaXMuc2VsZWN0ZWRPcHRpb249dGhpcy5ib29sZWFuRmFsc2VOYW1lfHwiZmFsc2UiKSksIXRoaXMuc2VsZWN0ZWRPcHRpb24mJnRoaXMub3B0aW9ucy5sZW5ndGg+MCYmKHRoaXMuc2VsZWN0ZWRPcHRpb249dGhpcy5vcHRpb25zWzBdKX1hc3luYyBmaXJzdFVwZGF0ZWQoJCl7c3VwZXIuZmlyc3RVcGRhdGVkKCQpLHRoaXMudHlwZT09PSJib29sZWFuIiYmKHRoaXMub3B0aW9ucz1bdGhpcy5ib29sZWFuVHJ1ZU5hbWV8fCJ0cnVlIix0aGlzLmJvb2xlYW5GYWxzZU5hbWV8fCJmYWxzZSJdKSxhd2FpdCB0aGlzLnVwZGF0ZUNvbXBsZXRlLGRvY3VtZW50LmZvbnRzJiZhd2FpdCBkb2N1bWVudC5mb250cy5yZWFkeSxhd2FpdCBuZXcgUHJvbWlzZShJPT5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoSSkpLHRoaXMuc2V0SW5kaWNhdG9yKCl9YXN5bmMgaGFuZGxlU2VsZWN0aW9uKCQpe3RoaXMuZGlzYWJsZWR8fCh0aGlzLnNlbGVjdGVkT3B0aW9uPSQsdGhpcy5yZXF1ZXN0VXBkYXRlKCksdGhpcy5jaGFuZ2VTdWJqZWN0Lm5leHQodGhpcyksYXdhaXQgdGhpcy51cGRhdGVDb21wbGV0ZSx0aGlzLnNldEluZGljYXRvcigpKX1pbmRpY2F0b3JJbml0aWFsaXplZD0obG4odGhpcyxrKSwhMSk7YXN5bmMgc2V0SW5kaWNhdG9yKCl7bGV0ICQ9dGhpcy5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoIi5pbmRpY2F0b3IiKSxJPXRoaXMub3B0aW9ucy5pbmRleE9mKHRoaXMuc2VsZWN0ZWRPcHRpb24pO2lmKEk9PT0tMXx8ISQpeyQmJigkLnN0eWxlLm9wYWNpdHk9IjAiKTtyZXR1cm59bGV0IEI9dGhpcy5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoYC5vcHRpb246bnRoLWNoaWxkKCR7SSsyfSlgKTskJiZCJiYodGhpcy5pbmRpY2F0b3JJbml0aWFsaXplZHx8KCQuY2xhc3NMaXN0LmFkZCgibm8tdHJhbnNpdGlvbiIpLHRoaXMuaW5kaWNhdG9ySW5pdGlhbGl6ZWQ9ITAsc2V0VGltZW91dCgoKT0+eyQuY2xhc3NMaXN0LnJlbW92ZSgibm8tdHJhbnNpdGlvbiIpfSw1MCkpLCQuc3R5bGUud2lkdGg9YCR7Qi5jbGllbnRXaWR0aH1weGAsJC5zdHlsZS5sZWZ0PWAke0Iub2Zmc2V0TGVmdH1weGAsJC5zdHlsZS5vcGFjaXR5PSIxIil9Z2V0VmFsdWUoKXtyZXR1cm4gdGhpcy50eXBlPT09ImJvb2xlYW4iP3RoaXMuc2VsZWN0ZWRPcHRpb249PT10aGlzLmJvb2xlYW5UcnVlTmFtZTp0aGlzLnNlbGVjdGVkT3B0aW9ufXNldFZhbHVlKCQpe3RoaXMudHlwZT09PSJib29sZWFuIiYmdHlwZW9mICQ9PSJib29sZWFuIj90aGlzLnNlbGVjdGVkT3B0aW9uPSQ/dGhpcy5ib29sZWFuVHJ1ZU5hbWV8fCJ0cnVlIjp0aGlzLmJvb2xlYW5GYWxzZU5hbWV8fCJmYWxzZSI6dGhpcy5zZWxlY3RlZE9wdGlvbj0kLHRoaXMucmVxdWVzdFVwZGF0ZSgpLHRoaXMuaGFzVXBkYXRlZCYmcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57dGhpcy5zZXRJbmRpY2F0b3IoKX0pfXN0YXRpY3tsbihhLHIpfX07cmV0dXJuIE49YX0pKCl9KTt2YXIgaCRyLG0kcj1sKCgpPT57U2UoKTtoJHI9KCk9PlNgCiAgPGRlZXMtZGVtb3dyYXBwZXI+CiAgICA8c3R5bGU+CiAgICAgICR7bGVgCiAgICAgICAgLmRlbW8tY29udGFpbmVyIHsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgICAgZ2FwOiAyNHB4OwogICAgICAgICAgcGFkZGluZzogMjRweDsKICAgICAgICAgIG1heC13aWR0aDogMTIwMHB4OwogICAgICAgICAgbWFyZ2luOiAwIGF1dG87CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5pbnB1dC1ncm91cCB7CiAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICAgIGdhcDogMTZweDsKICAgICAgICB9CgogICAgICAgIC5ob3Jpem9udGFsLWdyb3VwIHsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgICAgZ2FwOiAxNnB4OwogICAgICAgICAgZmxleC13cmFwOiB3cmFwOwogICAgICAgIH0KICAgICAgYH0KICAgIDwvc3R5bGU+CiAgICAKICAgIDxkaXYgY2xhc3M9ImRlbW8tY29udGFpbmVyIj4KICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IkJhc2ljIFBob25lIElucHV0In0gLnN1YnRpdGxlPSR7IkF1dG9tYXRpYyBmb3JtYXR0aW5nIGZvciBwaG9uZSBudW1iZXJzIn0+CiAgICAgICAgPGRpdiBjbGFzcz0iaW5wdXQtZ3JvdXAiPgogICAgICAgICAgPGRlZXMtaW5wdXQtcGhvbmUKICAgICAgICAgICAgLmxhYmVsPSR7IlBob25lIE51bWJlciJ9CiAgICAgICAgICAgIC5kZXNjcmlwdGlvbj0keyJFbnRlciB5b3VyIHBob25lIG51bWJlciB3aXRoIGNvdW50cnkgY29kZSJ9CiAgICAgICAgICAgIC52YWx1ZT0keyI1NTUxMjM0NTY3In0KICAgICAgICAgID48L2RlZXMtaW5wdXQtcGhvbmU+CgogICAgICAgICAgPGRlZXMtaW5wdXQtcGhvbmUKICAgICAgICAgICAgLmxhYmVsPSR7IkNvbnRhY3QgUGhvbmUifQogICAgICAgICAgICAuZGVzY3JpcHRpb249JHsiUmVxdWlyZWQgZm9yIGFjY291bnQgdmVyaWZpY2F0aW9uIn0KICAgICAgICAgICAgLnJlcXVpcmVkPSR7ITB9CiAgICAgICAgICAgIC5wbGFjZWhvbGRlcj0keyIrMSAoNTU1KSAwMDAtMDAwMCJ9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LXBob25lPgogICAgICAgIDwvZGl2PgogICAgICA8L2RlZXMtcGFuZWw+CiAgICAgIAogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiSG9yaXpvbnRhbCBMYXlvdXQifSAuc3VidGl0bGU9JHsiUGhvbmUgaW5wdXRzIGFycmFuZ2VkIGhvcml6b250YWxseSJ9PgogICAgICAgIDxkaXYgY2xhc3M9Imhvcml6b250YWwtZ3JvdXAiPgogICAgICAgICAgPGRlZXMtaW5wdXQtcGhvbmUgCiAgICAgICAgICAgIC5sYWJlbD0keyJNb2JpbGUifSAKICAgICAgICAgICAgLmxheW91dE1vZGU9JHsiaG9yaXpvbnRhbCJ9CiAgICAgICAgICAgIC52YWx1ZT0keyI0MTU1NTUxMjM0In0KICAgICAgICAgID48L2RlZXMtaW5wdXQtcGhvbmU+CiAgICAgICAgICAKICAgICAgICAgIDxkZWVzLWlucHV0LXBob25lIAogICAgICAgICAgICAubGFiZWw9JHsiT2ZmaWNlIn0gCiAgICAgICAgICAgIC5sYXlvdXRNb2RlPSR7Imhvcml6b250YWwifQogICAgICAgICAgICAucGxhY2Vob2xkZXI9JHsiKzEgKDgwMCkgNTU1LTAwMDAifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC1waG9uZT4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgICAKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IkludGVybmF0aW9uYWwgTnVtYmVycyJ9IC5zdWJ0aXRsZT0keyJTdXBwb3J0cyBmb3JtYXR0aW5nIGZvciBudW1iZXJzIHdpdGggY291bnRyeSBjb2RlcyJ9PgogICAgICAgIDxkaXYgY2xhc3M9ImlucHV0LWdyb3VwIj4KICAgICAgICAgIDxkZWVzLWlucHV0LXBob25lCiAgICAgICAgICAgIC5sYWJlbD0keyJJbnRlcm5hdGlvbmFsIENvbnRhY3QifQogICAgICAgICAgICAuZGVzY3JpcHRpb249JHsiQXV0b21hdGljYWxseSBmb3JtYXRzIGludGVybmF0aW9uYWwgbnVtYmVycyJ9CiAgICAgICAgICAgIC52YWx1ZT0keyI0NDEyMzQ1Njc4OTAifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC1waG9uZT4KCiAgICAgICAgICA8ZGVlcy1pbnB1dC1waG9uZQogICAgICAgICAgICAubGFiZWw9JHsiRW1lcmdlbmN5IENvbnRhY3QifQogICAgICAgICAgICAudmFsdWU9JHsiOTExIn0KICAgICAgICAgICAgLmRpc2FibGVkPSR7ITB9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LXBob25lPgogICAgICAgIDwvZGl2PgogICAgICA8L2RlZXMtcGFuZWw+CiAgICAgIAogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiRm9ybSBJbnRlZ3JhdGlvbiJ9IC5zdWJ0aXRsZT0keyJQaG9uZSBpbnB1dCBhcyBwYXJ0IG9mIGEgY29udGFjdCBmb3JtIn0+CiAgICAgICAgPGRlZXMtZm9ybT4KICAgICAgICAgIDxkZWVzLWlucHV0LXRleHQgLmxhYmVsPSR7IkZ1bGwgTmFtZSJ9IC5yZXF1aXJlZD0keyEwfT48L2RlZXMtaW5wdXQtdGV4dD4KICAgICAgICAgIDxkZWVzLWlucHV0LXBob25lIC5sYWJlbD0keyJQaG9uZSBOdW1iZXIifSAucmVxdWlyZWQ9JHshMH0+PC9kZWVzLWlucHV0LXBob25lPgogICAgICAgICAgPGRlZXMtaW5wdXQtdGV4dCAubGFiZWw9JHsiRW1haWwifSAuaW5wdXRUeXBlPSR7ImVtYWlsIn0+PC9kZWVzLWlucHV0LXRleHQ+CiAgICAgICAgPC9kZWVzLWZvcm0+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgIDwvZGl2PgogIDwvZGVlcy1kZW1vd3JhcHBlcj4KYH0pO3ZhciBCbGUsQTgsSGxlLG5jdD1sKCgpPT57U2UoKTtlcigpO1BhKCk7bSRyKCk7b3QoKTtCbGU9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxBOD1mdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MixpPTA7aTx0Lmxlbmd0aDtpKyspcj1hP3RbaV0uY2FsbChlLHIpOnRbaV0uY2FsbChlKTtyZXR1cm4gYT9yOnZvaWQgMH0sSGxlPSgoKT0+e2xldCBlPVt6ZSgiZGVlcy1pbnB1dC1waG9uZSIpXSx0LHI9W10sYSxpPWh0LG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdLHUscD1bXSxoPVtdO3ZhciBiPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgeD10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtyZSgpXSxjPVtqKHt0eXBlOlN0cmluZ30pXSx1PVtqKHt0eXBlOlN0cmluZ30pXSxCbGUodGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJmb3JtYXR0ZWRQaG9uZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Zz0+ImZvcm1hdHRlZFBob25lImluIGcsZ2V0Omc9PmcuZm9ybWF0dGVkUGhvbmUsc2V0OihnLHYpPT57Zy5mb3JtYXR0ZWRQaG9uZT12fX0sbWV0YWRhdGE6eH0sbixzKSxCbGUodGhpcyxudWxsLGMse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ2YWx1ZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Zz0+InZhbHVlImluIGcsZ2V0Omc9PmcudmFsdWUsc2V0OihnLHYpPT57Zy52YWx1ZT12fX0sbWV0YWRhdGE6eH0sZCxmKSxCbGUodGhpcyxudWxsLHUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJwbGFjZWhvbGRlciIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Zz0+InBsYWNlaG9sZGVyImluIGcsZ2V0Omc9PmcucGxhY2Vob2xkZXIsc2V0OihnLHYpPT57Zy5wbGFjZWhvbGRlcj12fX0sbWV0YWRhdGE6eH0scCxoKSxCbGUobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6eH0sbnVsbCxyKSxiPWE9dC52YWx1ZSx4JiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnh9KX1zdGF0aWMgZGVtbz1oJHI7c3RhdGljIGRlbW9Hcm91cHM9WyJJbnB1dCJdOyNlPUE4KHRoaXMsbiwiIik7Z2V0IGZvcm1hdHRlZFBob25lKCl7cmV0dXJuIHRoaXMuI2V9c2V0IGZvcm1hdHRlZFBob25lKHgpe3RoaXMuI2U9eH0jdD0oQTgodGhpcyxzKSxBOCh0aGlzLGQsIiIpKTtnZXQgdmFsdWUoKXtyZXR1cm4gdGhpcy4jdH1zZXQgdmFsdWUoeCl7dGhpcy4jdD14fSNyPShBOCh0aGlzLGYpLEE4KHRoaXMscCwiKzEgKDU1NSkgMTIzLTQ1NjciKSk7Z2V0IHBsYWNlaG9sZGVyKCl7cmV0dXJuIHRoaXMuI3J9c2V0IHBsYWNlaG9sZGVyKHgpe3RoaXMuI3I9eH1zdGF0aWMgc3R5bGVzPVtQZSwuLi5odC5iYXNlU3R5bGVzLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgLyogVE9ETzogTWlncmF0ZSBoYXJkY29kZWQgdmFsdWVzIHRvIC0tZGVlcy0qIENTUyB2YXJpYWJsZXMgKi8KICAgICAgLyogUGhvbmUgaW5wdXQgc3BlY2lmaWMgc3R5bGVzIGNhbiBnbyBoZXJlICovCiAgICBgXTtyZW5kZXIoKXtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0iaW5wdXQtd3JhcHBlciI+CiAgICAgICAgPGRlZXMtbGFiZWwgLmxhYmVsPSR7dGhpcy5sYWJlbH0gLmRlc2NyaXB0aW9uPSR7dGhpcy5kZXNjcmlwdGlvbn0+PC9kZWVzLWxhYmVsPgogICAgICAgIDxkZWVzLWlucHV0LXRleHQKICAgICAgICAgIC52YWx1ZT0ke3RoaXMuZm9ybWF0dGVkUGhvbmV9CiAgICAgICAgICAuZGlzYWJsZWQ9JHt0aGlzLmRpc2FibGVkfQogICAgICAgICAgLnJlcXVpcmVkPSR7dGhpcy5yZXF1aXJlZH0KICAgICAgICAgIC5wbGFjZWhvbGRlcj0ke3RoaXMucGxhY2Vob2xkZXJ9CiAgICAgICAgICBAaW5wdXQ9JHt4PT50aGlzLmhhbmRsZVBob25lSW5wdXQoeCl9CiAgICAgICAgPjwvZGVlcy1pbnB1dC10ZXh0PgogICAgICA8L2Rpdj4KICAgIGB9Zmlyc3RVcGRhdGVkKHgpe3N1cGVyLmZpcnN0VXBkYXRlZCh4KSx0aGlzLnZhbHVlJiYodGhpcy5mb3JtYXR0ZWRQaG9uZT10aGlzLmZvcm1hdFBob25lTnVtYmVyKHRoaXMudmFsdWUpKTtsZXQgZz10aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcigiZGVlcy1pbnB1dC10ZXh0Iik7ZyYmZy5jaGFuZ2VTdWJqZWN0JiZnLmNoYW5nZVN1YmplY3Quc3Vic2NyaWJlKCgpPT57dGhpcy5jaGFuZ2VTdWJqZWN0Lm5leHQodGhpcyl9KX1oYW5kbGVQaG9uZUlucHV0KHgpe2xldCBnPXgudGFyZ2V0LHY9dGhpcy5jbGVhblBob25lTnVtYmVyKGcudmFsdWUpLHc9dGhpcy5mb3JtYXRQaG9uZU51bWJlcih2KTtpZihnLnZhbHVlIT09dyl7bGV0IE09Zy5zZWxlY3Rpb25TdGFydHx8MDtnLnZhbHVlPXc7bGV0IEY9dGhpcy5jYWxjdWxhdGVDdXJzb3JQb3NpdGlvbih2LHcsTSk7Zy5zZXRTZWxlY3Rpb25SYW5nZShGLEYpfXRoaXMuZm9ybWF0dGVkUGhvbmU9dyx0aGlzLnZhbHVlPXYsdGhpcy5jaGFuZ2VTdWJqZWN0Lm5leHQodGhpcyl9Y2xlYW5QaG9uZU51bWJlcih4KXtyZXR1cm4geC5yZXBsYWNlKC9cRC9nLCIiKX1mb3JtYXRQaG9uZU51bWJlcih4KXtsZXQgZz10aGlzLmNsZWFuUGhvbmVOdW1iZXIoeCk7cmV0dXJuIGcubGVuZ3RoPT09MD8iIjpnLmxlbmd0aDw9Mz9nOmcubGVuZ3RoPD02P2AoJHtnLnNsaWNlKDAsMyl9KSAke2cuc2xpY2UoMyl9YDpnLmxlbmd0aDw9MTA/YCgke2cuc2xpY2UoMCwzKX0pICR7Zy5zbGljZSgzLDYpfS0ke2cuc2xpY2UoNil9YDpgKyR7Zy5zbGljZSgwLGcubGVuZ3RoLTEwKX0gKCR7Zy5zbGljZSgtMTAsLTcpfSkgJHtnLnNsaWNlKC03LC00KX0tJHtnLnNsaWNlKC00KX1gfWNhbGN1bGF0ZUN1cnNvclBvc2l0aW9uKHgsZyx2KXtsZXQgdz0wO2ZvcihsZXQgTT0wO008diYmTTxnLmxlbmd0aDtNKyspL1xkLy50ZXN0KGdbTV0pfHx3Kys7cmV0dXJuIE1hdGgubWluKHYrdyxnLmxlbmd0aCl9Z2V0VmFsdWUoKXtyZXR1cm4gdGhpcy52YWx1ZX1zZXRWYWx1ZSh4KXt0aGlzLnZhbHVlPXgsdGhpcy5mb3JtYXR0ZWRQaG9uZT10aGlzLmZvcm1hdFBob25lTnVtYmVyKHgpfWNvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKSxBOCh0aGlzLGgpfXN0YXRpY3tBOChhLHIpfX07cmV0dXJuIGI9YX0pKCl9KTt2YXIgZyRyLHgkcj1sKCgpPT57U2UoKTt6YSgpO3QxKCk7ZyRyPSgpPT5TYAogIDxkZWVzLWRlbW93cmFwcGVyIC5ydW5BZnRlclJlbmRlcj0ke2FzeW5jIGU9PntsZXQgdD1lLnF1ZXJ5U2VsZWN0b3IoIiN0b2dnbGUtYWxsLW9uIikscj1lLnF1ZXJ5U2VsZWN0b3IoIiN0b2dnbGUtYWxsLW9mZiIpLGE9ZS5xdWVyeVNlbGVjdG9yQWxsKCIuZmVhdHVyZS10b2dnbGVzIGRlZXMtaW5wdXQtdG9nZ2xlIik7dCYmciYmKHQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCgpPT57YS5mb3JFYWNoKGk9PnshaS5kaXNhYmxlZCYmIWkucmVxdWlyZWQmJihpLnZhbHVlPSEwKX0pfSksci5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKCk9PnthLmZvckVhY2goaT0+eyFpLmRpc2FibGVkJiYhaS5yZXF1aXJlZCYmKGkudmFsdWU9ITEpfSl9KSl9fT4KICAgIDxzdHlsZT4KICAgICAgJHtsZWAKICAgICAgICAuZGVtby1jb250YWluZXIgewogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgICBnYXA6IDI0cHg7CiAgICAgICAgICBwYWRkaW5nOiAyNHB4OwogICAgICAgICAgbWF4LXdpZHRoOiAxMjAwcHg7CiAgICAgICAgICBtYXJnaW46IDAgYXV0bzsKICAgICAgICB9CgogICAgICAgIGRlZXMtcGFuZWwgewogICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDsKICAgICAgICB9CgogICAgICAgIGRlZXMtcGFuZWw6bGFzdC1jaGlsZCB7CiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOwogICAgICAgIH0KCiAgICAgICAgLnRvZ2dsZS1ncm91cCB7CiAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICAgIGdhcDogMTZweDsKICAgICAgICB9CgogICAgICAgIC5ob3Jpem9udGFsLXRvZ2dsZXMgewogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGdhcDogMzJweDsKICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDsKICAgICAgICB9CgogICAgICAgIC5pbnRlcmFjdGl2ZS1zZWN0aW9uIHsKICAgICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjEwIDQwJSA5Ni4xJSkiLCJoc2woMjE1IDIwLjIlIDE2LjglKSIpfTsKICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgICAgIHBhZGRpbmc6IDE2cHg7CiAgICAgICAgICBtYXJnaW4tdG9wOiAxNnB4OwogICAgICAgIH0KCiAgICAgICAgLm91dHB1dC10ZXh0IHsKICAgICAgICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7CiAgICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuMyAyNSUgMjYuNyUpIiwiaHNsKDIxMCA0MCUgODAlKSIpfTsKICAgICAgICAgIHBhZGRpbmc6IDhweDsKICAgICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjEwIDQwJSA5OCUpIiwiaHNsKDIxNSAyMC4yJSAxMS44JSkiKX07CiAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgICBtaW4taGVpZ2h0OiAyNHB4OwogICAgICAgIH0KCiAgICAgICAgLnNldHRpbmdzLXNlY3Rpb24gewogICAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk3JSkiLCJoc2woMCAwJSA3JSkiKX07CiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4OwogICAgICAgICAgcGFkZGluZzogMjBweDsKICAgICAgICB9CgogICAgICAgIC5idXR0b24tZ3JvdXAgewogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGdhcDogOHB4OwogICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDsKICAgICAgICB9CgogICAgICAgIC5mZWF0dXJlLXRvZ2dsZXMgewogICAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTAgNDAlIDk2LjElKSIsImhzbCgyMTUgMjAuMiUgMTEuOCUpIil9OwogICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgyMTQuMyAzMS44JSA5MS40JSkiLCJoc2woMjE1IDIwLjIlIDE2LjglKSIpfTsKICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICAgIHBhZGRpbmc6IDE2cHg7CiAgICAgICAgfQoKICAgICAgICAuc2VjdGlvbi10aXRsZSB7CiAgICAgICAgICBmb250LXNpemU6IDE2cHg7CiAgICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDsKICAgICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNS4zIDI1JSA4LjglKSIsImhzbCgyMTAgNDAlIDk4JSkiKX07CiAgICAgICAgfQoKICAgICAgICAuZHJhZy1oaW50IHsKICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNDUuMSUpIiwiaHNsKDAgMCUgNjMuOSUpIil9OwogICAgICAgICAgbWFyZ2luLXRvcDogOHB4OwogICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljOwogICAgICAgIH0KICAgICAgYH0KICAgIDwvc3R5bGU+CgogICAgPGRpdiBjbGFzcz0iZGVtby1jb250YWluZXIiPgogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiQmFzaWMgVG9nZ2xlIn0gLnN1YnRpdGxlPSR7IlNpbXBsZSBvbi9vZmYgdG9nZ2xlIHN3aXRjaCB3aXRoIGRyYWcgc3VwcG9ydCJ9PgogICAgICAgIDxkaXYgY2xhc3M9InRvZ2dsZS1ncm91cCI+CiAgICAgICAgICA8ZGVlcy1pbnB1dC10b2dnbGUKICAgICAgICAgICAgLmxhYmVsPSR7IkVuYWJsZSBmZWF0dXJlIn0KICAgICAgICAgICAgLnZhbHVlPSR7ITF9CiAgICAgICAgICAgIC5rZXk9JHsiYmFzaWMifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC10b2dnbGU+CgogICAgICAgICAgPGRlZXMtaW5wdXQtdG9nZ2xlCiAgICAgICAgICAgIC5sYWJlbD0keyJBY3RpdmUgdG9nZ2xlIn0KICAgICAgICAgICAgLnZhbHVlPSR7ITB9CiAgICAgICAgICAgIC5rZXk9JHsiYWN0aXZlIn0KICAgICAgICAgID48L2RlZXMtaW5wdXQtdG9nZ2xlPgoKICAgICAgICAgIDxkZWVzLWlucHV0LXRvZ2dsZQogICAgICAgICAgICAubGFiZWw9JHsiV2l0aCBkZXNjcmlwdGlvbiJ9CiAgICAgICAgICAgIC52YWx1ZT0keyExfQogICAgICAgICAgICAuZGVzY3JpcHRpb249JHsiVGhpcyB0b2dnbGUgaGFzIGFkZGl0aW9uYWwgaGVscGVyIHRleHQgZXhwbGFpbmluZyBpdHMgcHVycG9zZSJ9CiAgICAgICAgICAgIC5rZXk9JHsid2l0aERlc2MifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC10b2dnbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPHAgY2xhc3M9ImRyYWctaGludCI+VGlwOiBZb3UgY2FuIGRyYWcgdGhlIHRvZ2dsZSBrbm9iIHRvIHN3aXRjaCBzdGF0ZXM8L3A+CiAgICAgIDwvZGVlcy1wYW5lbD4KCiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyJUb2dnbGUgU3RhdGVzIn0gLnN1YnRpdGxlPSR7IkRpZmZlcmVudCB0b2dnbGUgc3RhdGVzIGFuZCBjb25maWd1cmF0aW9ucyJ9PgogICAgICAgIDxkaXYgY2xhc3M9InRvZ2dsZS1ncm91cCI+CiAgICAgICAgICA8ZGVlcy1pbnB1dC10b2dnbGUKICAgICAgICAgICAgLmxhYmVsPSR7IkRlZmF1bHQgKG9mZikifQogICAgICAgICAgICAudmFsdWU9JHshMX0KICAgICAgICAgID48L2RlZXMtaW5wdXQtdG9nZ2xlPgoKICAgICAgICAgIDxkZWVzLWlucHV0LXRvZ2dsZQogICAgICAgICAgICAubGFiZWw9JHsiRW5hYmxlZCAob24pIn0KICAgICAgICAgICAgLnZhbHVlPSR7ITB9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LXRvZ2dsZT4KCiAgICAgICAgICA8ZGVlcy1pbnB1dC10b2dnbGUKICAgICAgICAgICAgLmxhYmVsPSR7IkRpc2FibGVkIChvZmYpIn0KICAgICAgICAgICAgLnZhbHVlPSR7ITF9CiAgICAgICAgICAgIC5kaXNhYmxlZD0keyEwfQogICAgICAgICAgPjwvZGVlcy1pbnB1dC10b2dnbGU+CgogICAgICAgICAgPGRlZXMtaW5wdXQtdG9nZ2xlCiAgICAgICAgICAgIC5sYWJlbD0keyJEaXNhYmxlZCAob24pIn0KICAgICAgICAgICAgLnZhbHVlPSR7ITB9CiAgICAgICAgICAgIC5kaXNhYmxlZD0keyEwfQogICAgICAgICAgPjwvZGVlcy1pbnB1dC10b2dnbGU+CgogICAgICAgICAgPGRlZXMtaW5wdXQtdG9nZ2xlCiAgICAgICAgICAgIC5sYWJlbD0keyJSZXF1aXJlZCAoYWx3YXlzIG9uKSJ9CiAgICAgICAgICAgIC52YWx1ZT0keyEwfQogICAgICAgICAgICAucmVxdWlyZWQ9JHshMH0KICAgICAgICAgICAgLmRlc2NyaXB0aW9uPSR7IlRoaXMgdG9nZ2xlIGNhbm5vdCBiZSB0dXJuZWQgb2ZmIn0KICAgICAgICAgID48L2RlZXMtaW5wdXQtdG9nZ2xlPgogICAgICAgIDwvZGl2PgogICAgICA8L2RlZXMtcGFuZWw+CgogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiSG9yaXpvbnRhbCBMYXlvdXQifSAuc3VidGl0bGU9JHsiVG9nZ2xlcyBhcnJhbmdlZCBob3Jpem9udGFsbHkgZm9yIGNvbXBhY3QgaW50ZXJmYWNlcyJ9PgogICAgICAgIDxkaXYgY2xhc3M9Imhvcml6b250YWwtdG9nZ2xlcyI+CiAgICAgICAgICA8ZGVlcy1pbnB1dC10b2dnbGUKICAgICAgICAgICAgLmxhYmVsPSR7IldpRmkifQogICAgICAgICAgICAudmFsdWU9JHshMH0KICAgICAgICAgICAgLmxheW91dE1vZGU9JHsiaG9yaXpvbnRhbCJ9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LXRvZ2dsZT4KCiAgICAgICAgICA8ZGVlcy1pbnB1dC10b2dnbGUKICAgICAgICAgICAgLmxhYmVsPSR7IkJsdWV0b290aCJ9CiAgICAgICAgICAgIC52YWx1ZT0keyExfQogICAgICAgICAgICAubGF5b3V0TW9kZT0keyJob3Jpem9udGFsIn0KICAgICAgICAgID48L2RlZXMtaW5wdXQtdG9nZ2xlPgoKICAgICAgICAgIDxkZWVzLWlucHV0LXRvZ2dsZQogICAgICAgICAgICAubGFiZWw9JHsiR1BTIn0KICAgICAgICAgICAgLnZhbHVlPSR7ITB9CiAgICAgICAgICAgIC5sYXlvdXRNb2RlPSR7Imhvcml6b250YWwifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC10b2dnbGU+CgogICAgICAgICAgPGRlZXMtaW5wdXQtdG9nZ2xlCiAgICAgICAgICAgIC5sYWJlbD0keyJORkMifQogICAgICAgICAgICAudmFsdWU9JHshMX0KICAgICAgICAgICAgLmxheW91dE1vZGU9JHsiaG9yaXpvbnRhbCJ9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LXRvZ2dsZT4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgoKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IlNldHRpbmdzIEV4YW1wbGUifSAuc3VidGl0bGU9JHsiVG9nZ2xlcyBpbiBhIHR5cGljYWwgc2V0dGluZ3MgY29udGV4dCJ9PgogICAgICAgIDxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24iPgogICAgICAgICAgPGg0IGNsYXNzPSJzZWN0aW9uLXRpdGxlIj5Ob3RpZmljYXRpb24gU2V0dGluZ3M8L2g0PgoKICAgICAgICAgIDxkaXYgY2xhc3M9InRvZ2dsZS1ncm91cCI+CiAgICAgICAgICAgIDxkZWVzLWlucHV0LXRvZ2dsZQogICAgICAgICAgICAgIC5sYWJlbD0keyJQdXNoIG5vdGlmaWNhdGlvbnMifQogICAgICAgICAgICAgIC52YWx1ZT0keyEwfQogICAgICAgICAgICAgIC5kZXNjcmlwdGlvbj0keyJSZWNlaXZlIHB1c2ggbm90aWZpY2F0aW9ucyBvbiB5b3VyIGRldmljZSJ9CiAgICAgICAgICAgICAgLmtleT0keyJwdXNoIn0KICAgICAgICAgICAgPjwvZGVlcy1pbnB1dC10b2dnbGU+CgogICAgICAgICAgICA8ZGVlcy1pbnB1dC10b2dnbGUKICAgICAgICAgICAgICAubGFiZWw9JHsiRW1haWwgbm90aWZpY2F0aW9ucyJ9CiAgICAgICAgICAgICAgLnZhbHVlPSR7ITB9CiAgICAgICAgICAgICAgLmRlc2NyaXB0aW9uPSR7IkdldCBpbXBvcnRhbnQgdXBkYXRlcyB2aWEgZW1haWwifQogICAgICAgICAgICAgIC5rZXk9JHsiZW1haWwifQogICAgICAgICAgICA+PC9kZWVzLWlucHV0LXRvZ2dsZT4KCiAgICAgICAgICAgIDxkZWVzLWlucHV0LXRvZ2dsZQogICAgICAgICAgICAgIC5sYWJlbD0keyJTb3VuZCJ9CiAgICAgICAgICAgICAgLnZhbHVlPSR7ITF9CiAgICAgICAgICAgICAgLmRlc2NyaXB0aW9uPSR7IlBsYXkgYSBzb3VuZCBmb3Igbm90aWZpY2F0aW9ucyJ9CiAgICAgICAgICAgICAgLmtleT0keyJzb3VuZCJ9CiAgICAgICAgICAgID48L2RlZXMtaW5wdXQtdG9nZ2xlPgoKICAgICAgICAgICAgPGRlZXMtaW5wdXQtdG9nZ2xlCiAgICAgICAgICAgICAgLmxhYmVsPSR7IlZpYnJhdGlvbiJ9CiAgICAgICAgICAgICAgLnZhbHVlPSR7ITB9CiAgICAgICAgICAgICAgLmRlc2NyaXB0aW9uPSR7IlZpYnJhdGUgZm9yIG5vdGlmaWNhdGlvbnMifQogICAgICAgICAgICAgIC5rZXk9JHsidmlicmF0aW9uIn0KICAgICAgICAgICAgPjwvZGVlcy1pbnB1dC10b2dnbGU+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgoKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IkZlYXR1cmUgVG9nZ2xlcyJ9IC5zdWJ0aXRsZT0keyJCYXRjaCBvcGVyYXRpb25zIG9uIG11bHRpcGxlIHRvZ2dsZXMifT4KICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tZ3JvdXAiPgogICAgICAgICAgPGRlZXMtYnV0dG9uIGlkPSJ0b2dnbGUtYWxsLW9uIiB0eXBlPSJzZWNvbmRhcnkiPkVuYWJsZSBBbGw8L2RlZXMtYnV0dG9uPgogICAgICAgICAgPGRlZXMtYnV0dG9uIGlkPSJ0b2dnbGUtYWxsLW9mZiIgdHlwZT0ic2Vjb25kYXJ5Ij5EaXNhYmxlIEFsbDwvZGVlcy1idXR0b24+CiAgICAgICAgPC9kaXY+CgogICAgICAgIDxkaXYgY2xhc3M9ImZlYXR1cmUtdG9nZ2xlcyI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJ0b2dnbGUtZ3JvdXAiPgogICAgICAgICAgICA8ZGVlcy1pbnB1dC10b2dnbGUKICAgICAgICAgICAgICAubGFiZWw9JHsiRGFyayBNb2RlIn0KICAgICAgICAgICAgICAudmFsdWU9JHshMH0KICAgICAgICAgICAgICAua2V5PSR7ImRhcmtNb2RlIn0KICAgICAgICAgICAgPjwvZGVlcy1pbnB1dC10b2dnbGU+CgogICAgICAgICAgICA8ZGVlcy1pbnB1dC10b2dnbGUKICAgICAgICAgICAgICAubGFiZWw9JHsiQXV0by1zYXZlIn0KICAgICAgICAgICAgICAudmFsdWU9JHshMH0KICAgICAgICAgICAgICAua2V5PSR7ImF1dG9TYXZlIn0KICAgICAgICAgICAgPjwvZGVlcy1pbnB1dC10b2dnbGU+CgogICAgICAgICAgICA8ZGVlcy1pbnB1dC10b2dnbGUKICAgICAgICAgICAgICAubGFiZWw9JHsiU3BlbGwgY2hlY2sifQogICAgICAgICAgICAgIC52YWx1ZT0keyExfQogICAgICAgICAgICAgIC5rZXk9JHsic3BlbGxDaGVjayJ9CiAgICAgICAgICAgID48L2RlZXMtaW5wdXQtdG9nZ2xlPgoKICAgICAgICAgICAgPGRlZXMtaW5wdXQtdG9nZ2xlCiAgICAgICAgICAgICAgLmxhYmVsPSR7IkRldmVsb3BlciBtb2RlIn0KICAgICAgICAgICAgICAudmFsdWU9JHshMX0KICAgICAgICAgICAgICAua2V5PSR7ImRldk1vZGUifQogICAgICAgICAgICA+PC9kZWVzLWlucHV0LXRvZ2dsZT4KCiAgICAgICAgICAgIDxkZWVzLWlucHV0LXRvZ2dsZQogICAgICAgICAgICAgIC5sYWJlbD0keyJCZXRhIGZlYXR1cmVzIn0KICAgICAgICAgICAgICAudmFsdWU9JHshMX0KICAgICAgICAgICAgICAua2V5PSR7ImJldGEifQogICAgICAgICAgICA+PC9kZWVzLWlucHV0LXRvZ2dsZT4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2RlZXMtcGFuZWw+CgogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiSW50ZXJhY3RpdmUgRXhhbXBsZSJ9IC5zdWJ0aXRsZT0keyJUb2dnbGUgdG8gc2VlIHZhbHVlIGNoYW5nZXMgaW4gcmVhbC10aW1lIn0+CiAgICAgICAgPGRpdiBjbGFzcz0idG9nZ2xlLWdyb3VwIj4KICAgICAgICAgIDxkZWVzLWlucHV0LXRvZ2dsZQogICAgICAgICAgICAubGFiZWw9JHsiQWlycGxhbmUgbW9kZSJ9CiAgICAgICAgICAgIC52YWx1ZT0keyExfQogICAgICAgICAgICBAbmV3VmFsdWU9JHtlPT57bGV0IHQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2FpcnBsYW5lLW91dHB1dCIpO3QmJih0LnRleHRDb250ZW50PWBBaXJwbGFuZSBtb2RlOiAke2UuZGV0YWlsPyJPTiI6Ik9GRiJ9YCl9fQogICAgICAgICAgPjwvZGVlcy1pbnB1dC10b2dnbGU+CgogICAgICAgICAgPGRlZXMtaW5wdXQtdG9nZ2xlCiAgICAgICAgICAgIC5sYWJlbD0keyJEbyBub3QgZGlzdHVyYiJ9CiAgICAgICAgICAgIC52YWx1ZT0keyExfQogICAgICAgICAgICBAbmV3VmFsdWU9JHtlPT57bGV0IHQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2RuZC1vdXRwdXQiKTt0JiYodC50ZXh0Q29udGVudD1gRG8gbm90IGRpc3R1cmI6ICR7ZS5kZXRhaWw/IkVOQUJMRUQiOiJESVNBQkxFRCJ9YCl9fQogICAgICAgICAgPjwvZGVlcy1pbnB1dC10b2dnbGU+CiAgICAgICAgPC9kaXY+CgogICAgICAgIDxkaXYgY2xhc3M9ImludGVyYWN0aXZlLXNlY3Rpb24iPgogICAgICAgICAgPGRpdiBpZD0iYWlycGxhbmUtb3V0cHV0IiBjbGFzcz0ib3V0cHV0LXRleHQiPkFpcnBsYW5lIG1vZGU6IE9GRjwvZGl2PgogICAgICAgICAgPGRpdiBpZD0iZG5kLW91dHB1dCIgY2xhc3M9Im91dHB1dC10ZXh0IiBzdHlsZT0ibWFyZ2luLXRvcDogOHB4OyI+RG8gbm90IGRpc3R1cmI6IERJU0FCTEVEPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgIDwvZGl2PgogIDwvZGVlcy1kZW1vd3JhcHBlcj4KYH0pO3ZhciBiJHIsc2N0LHFsZSxsY3Q9bCgoKT0+e1NlKCk7ZXIoKTtQYSgpO3gkcigpO3VvKCk7b3QoKTtiJHI9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxzY3Q9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LHFsZT0oKCk9PntsZXQgZT1bemUoImRlZXMtaW5wdXQtdG9nZ2xlIildLHQscj1bXSxhLGk9aHQsbyxuPVtdLHM9W107dmFyIGM9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCBkPXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO289W2ooe3R5cGU6Qm9vbGVhbixyZWZsZWN0OiEwfSldLGIkcih0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InZhbHVlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpmPT4idmFsdWUiaW4gZixnZXQ6Zj0+Zi52YWx1ZSxzZXQ6KGYsdSk9PntmLnZhbHVlPXV9fSxtZXRhZGF0YTpkfSxuLHMpLGIkcihudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTpkfSxudWxsLHIpLGM9YT10LnZhbHVlLGQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6ZH0pfXN0YXRpYyBkZW1vPWckcjtzdGF0aWMgZGVtb0dyb3Vwcz1bIklucHV0Il07I2U9c2N0KHRoaXMsbiwhMSk7Z2V0IHZhbHVlKCl7cmV0dXJuIHRoaXMuI2V9c2V0IHZhbHVlKGQpe3RoaXMuI2U9ZH1jdXJyZW50WD0oc2N0KHRoaXMscyksMCk7aXNEcmFnZ2luZz0hMTtoYXNEcmFnZ2VkPSExO3N0YXJ0WD0wO3RyYWNrV2lkdGg9MzY7dHJhY2tIZWlnaHQ9MjA7a25vYlNpemU9MTQ7cGFkZGluZz0yO21heFRyYXZlbD0xNjtjb25zdHJ1Y3Rvcigpe3N1cGVyKCksdGhpcy5sYWJlbFBvc2l0aW9uPSJyaWdodCJ9c3RhdGljIHN0eWxlcz1bUGUsLi4uaHQuYmFzZVN0eWxlcyxtLmRlZmF1bHRTdHlsZXMsbGVgCiAgICAgICogewogICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgIH0KCiAgICAgIDpob3N0IHsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgY3Vyc29yOiBkZWZhdWx0OwogICAgICAgIGZvbnQtZmFtaWx5OiAke1hyfTsKICAgICAgfQoKICAgICAgLm1haW5jb250YWluZXIgewogICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OwogICAgICAgIGdhcDogOHB4OwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTsKICAgICAgfQoKICAgICAgLnRvZ2dsZS10cmFjayB7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgICAgIGhlaWdodDogMjBweDsKICAgICAgICB3aWR0aDogMzZweDsKICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAxMDAlKSIsImhzbCgwIDAlIDMuOSUpIil9OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OS44JSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTsKICAgICAgICBtYXJnaW4tdG9wOiAxcHg7CiAgICAgIH0KCiAgICAgIC5tYWluY29udGFpbmVyOmhvdmVyIC50b2dnbGUtdHJhY2sgewogICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDc5LjglKSIsImhzbCgwIDAlIDIwLjklKSIpfTsKICAgICAgfQoKICAgICAgOmhvc3QoW3ZhbHVlXSkgLnRvZ2dsZS10cmFjayB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMjIuMiA0Ny40JSA1MS4yJSkiLCJoc2woMjE3LjIgOTEuMiUgNTkuOCUpIil9OwogICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMjIuMiA0Ny40JSA1MS4yJSkiLCJoc2woMjE3LjIgOTEuMiUgNTkuOCUpIil9OwogICAgICB9CgogICAgICAudG9nZ2xlLXRyYWNrOmZvY3VzLXZpc2libGUgewogICAgICAgIG91dGxpbmU6IG5vbmU7CiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgM3B4ICR7bS5iZFRoZW1lKCJoc2woMjIyLjIgNDcuNCUgNTEuMiUgLyAwLjEpIiwiaHNsKDIxNy4yIDkxLjIlIDU5LjglIC8gMC4xKSIpfTsKICAgICAgfQoKICAgICAgLnRvZ2dsZS1rbm9iIHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgdG9wOiAycHg7CiAgICAgICAgd2lkdGg6IDE0cHg7CiAgICAgICAgaGVpZ2h0OiAxNHB4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDdweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNjMuOSUpIiwiaHNsKDAgMCUgNDUuMSUpIil9OwogICAgICAgIHRyYW5zaXRpb246IGxlZnQgMC4xNXMgZWFzZSwgYmFja2dyb3VuZCAwLjE1cyBlYXNlOwogICAgICAgIHRvdWNoLWFjdGlvbjogbm9uZTsKICAgICAgfQoKICAgICAgLnRvZ2dsZS1rbm9iLmRyYWdnaW5nIHsKICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMTVzIGVhc2U7CiAgICAgIH0KCiAgICAgIDpob3N0KFt2YWx1ZV0pIC50b2dnbGUta25vYiB7CiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7CiAgICAgIH0KCiAgICAgIC8qIERpc2FibGVkIHN0YXRlICovCiAgICAgIC5tYWluY29udGFpbmVyLmRpc2FibGVkIHsKICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOwogICAgICAgIG9wYWNpdHk6IDAuNTsKICAgICAgfQoKICAgICAgLnRvZ2dsZS10cmFjay5kaXNhYmxlZCB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk1LjElKSIsImhzbCgwIDAlIDE0LjklKSIpfTsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OS44JSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgIH0KCiAgICAgIC8qIFJlcXVpcmVkIHN0YXRlIChsb2NrZWQgb24pICovCiAgICAgIDpob3N0KFtyZXF1aXJlZF1bdmFsdWVdKSAudG9nZ2xlLXRyYWNrIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDIyMi4yIDQ3LjQlIDYxLjIlKSIsImhzbCgyMTcuMiA5MS4yJSA0OS44JSkiKX07CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIyMi4yIDQ3LjQlIDYxLjIlKSIsImhzbCgyMTcuMiA5MS4yJSA0OS44JSkiKX07CiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsKICAgICAgfQoKICAgICAgOmhvc3QoW3JlcXVpcmVkXVt2YWx1ZV0pIC50b2dnbGUta25vYiB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDg1JSkiLCJoc2woMCAwJSA3MCUpIil9OwogICAgICB9CgogICAgICAvKiBMYWJlbCAqLwogICAgICAubGFiZWwtY29udGFpbmVyIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgZ2FwOiAycHg7CiAgICAgICAgZmxleDogMTsKICAgICAgfQoKICAgICAgLnRvZ2dsZS1sYWJlbCB7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAxNSUpIiwiaHNsKDAgMCUgOTAlKSIpfTsKICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBlYXNlOwogICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtOwogICAgICB9CgogICAgICAubWFpbmNvbnRhaW5lcjpob3ZlciAudG9nZ2xlLWxhYmVsIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDklKSIsImhzbCgwIDAlIDk1JSkiKX07CiAgICAgIH0KCiAgICAgIC5tYWluY29udGFpbmVyLmRpc2FibGVkOmhvdmVyIC50b2dnbGUtbGFiZWwgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTUlKSIsImhzbCgwIDAlIDkwJSkiKX07CiAgICAgIH0KCiAgICAgIC8qIERlc2NyaXB0aW9uICovCiAgICAgIC5kZXNjcmlwdGlvbi10ZXh0IHsKICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA0NS4xJSkiLCJoc2woMCAwJSA2My45JSkiKX07CiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTsKICAgICAgfQogICAgYF07cmVuZGVyKCl7cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9ImlucHV0LXdyYXBwZXIiPgogICAgICAgIDxkaXYgY2xhc3M9Im1haW5jb250YWluZXIgJHt0aGlzLmRpc2FibGVkPyJkaXNhYmxlZCI6IiJ9IiBAY2xpY2s9IiR7dGhpcy5oYW5kbGVDbGlja30iPgogICAgICAgICAgPGRpdgogICAgICAgICAgICBjbGFzcz0idG9nZ2xlLXRyYWNrICR7dGhpcy5kaXNhYmxlZD8iZGlzYWJsZWQiOiIifSIKICAgICAgICAgICAgdGFiaW5kZXg9IiR7dGhpcy5kaXNhYmxlZD8iLTEiOiIwIn0iCiAgICAgICAgICAgIEBrZXlkb3duPSIke3RoaXMuaGFuZGxlS2V5ZG93bn0iCiAgICAgICAgICA+CiAgICAgICAgICAgIDxkaXYKICAgICAgICAgICAgICBjbGFzcz0idG9nZ2xlLWtub2IiCiAgICAgICAgICAgICAgc3R5bGU9ImxlZnQ6ICR7dGhpcy5wYWRkaW5nK3RoaXMuY3VycmVudFh9cHg7IgogICAgICAgICAgICAgIEBwb2ludGVyZG93bj0iJHt0aGlzLm9uUG9pbnRlckRvd259IgogICAgICAgICAgICAgIEBwb2ludGVybW92ZT0iJHt0aGlzLm9uUG9pbnRlck1vdmV9IgogICAgICAgICAgICAgIEBwb2ludGVydXA9IiR7dGhpcy5vblBvaW50ZXJVcH0iCiAgICAgICAgICAgICAgQHBvaW50ZXJjYW5jZWw9IiR7dGhpcy5vblBvaW50ZXJVcH0iCiAgICAgICAgICAgID48L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0ibGFiZWwtY29udGFpbmVyIj4KICAgICAgICAgICAgJHt0aGlzLmxhYmVsP1NgPGRpdiBjbGFzcz0idG9nZ2xlLWxhYmVsIj4ke3RoaXMubGFiZWx9PC9kaXY+YDoiIn0KICAgICAgICAgICAgJHt0aGlzLmRlc2NyaXB0aW9uP1NgPGRpdiBjbGFzcz0iZGVzY3JpcHRpb24tdGV4dCI+JHt0aGlzLmRlc2NyaXB0aW9ufTwvZGl2PmA6IiJ9CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICBgfWFzeW5jIGZpcnN0VXBkYXRlZChkKXthd2FpdCBzdXBlci5maXJzdFVwZGF0ZWQoZCksdGhpcy5yZXF1aXJlZCYmIXRoaXMudmFsdWUmJih0aGlzLnZhbHVlPSEwKSx0aGlzLmN1cnJlbnRYPXRoaXMudmFsdWU/dGhpcy5tYXhUcmF2ZWw6MCx0aGlzLnJlcXVlc3RVcGRhdGUoKX1hc3luYyBoYW5kbGVDbGljayhkKXtpZih0aGlzLmlzRHJhZ2dpbmd8fHRoaXMuaGFzRHJhZ2dlZCl7ZC5zdG9wUHJvcGFnYXRpb24oKSxkLnByZXZlbnREZWZhdWx0KCk7cmV0dXJufWlmKCF0aGlzLmRpc2FibGVkKXtpZih0aGlzLnJlcXVpcmVkKXt0aGlzLmN1cnJlbnRYPXRoaXMubWF4VHJhdmVsLHRoaXMucmVxdWVzdFVwZGF0ZSgpLGF3YWl0IG5ldyBQcm9taXNlKGY9PnNldFRpbWVvdXQoZiwxMCkpLHRoaXMuY3VycmVudFg9dGhpcy5tYXhUcmF2ZWwtMyx0aGlzLnJlcXVlc3RVcGRhdGUoKSxhd2FpdCBKdC5zbWFydGRlbGF5LmRlbGF5Rm9yKDE1MCksdGhpcy5jdXJyZW50WD10aGlzLm1heFRyYXZlbCx0aGlzLnJlcXVlc3RVcGRhdGUoKTtyZXR1cm59ZC5zdG9wUHJvcGFnYXRpb24oKSxkLnByZXZlbnREZWZhdWx0KCksdGhpcy52YWx1ZT0hdGhpcy52YWx1ZSx0aGlzLmN1cnJlbnRYPXRoaXMudmFsdWU/dGhpcy5tYXhUcmF2ZWw6MCx0aGlzLnJlcXVlc3RVcGRhdGUoKSx0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJuZXdWYWx1ZSIse2RldGFpbDp0aGlzLnZhbHVlLGJ1YmJsZXM6ITB9KSksdGhpcy5jaGFuZ2VTdWJqZWN0Lm5leHQodGhpcyksSnQuc21hcnRkZWxheS5kZWxheUZvcigwKS50aGVuKCgpPT57dGhpcy5oYXNEcmFnZ2VkPSExfSl9fW9uUG9pbnRlckRvd24oZCl7dGhpcy5yZXF1aXJlZHx8dGhpcy5kaXNhYmxlZHx8KHRoaXMuaXNEcmFnZ2luZz0hMCx0aGlzLnN0YXJ0WD1kLmNsaWVudFgtdGhpcy5jdXJyZW50WCxkLnRhcmdldC5zZXRQb2ludGVyQ2FwdHVyZShkLnBvaW50ZXJJZCkpfW9uUG9pbnRlck1vdmUoZCl7aWYoIXRoaXMuaXNEcmFnZ2luZylyZXR1cm47bGV0IGY9ZC5jbGllbnRYLXRoaXMuc3RhcnRYO3RoaXMuaGFzRHJhZ2dlZD0hMDtsZXQgdT10aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoIi50b2dnbGUta25vYiIpO3UmJnUuY2xhc3NMaXN0LmFkZCgiZHJhZ2dpbmciKSx0aGlzLmN1cnJlbnRYPU1hdGgubWF4KDAsTWF0aC5taW4oZix0aGlzLm1heFRyYXZlbCkpLHRoaXMucmVxdWVzdFVwZGF0ZSgpfW9uUG9pbnRlclVwKGQpe2lmKCF0aGlzLmlzRHJhZ2dpbmd8fChkLnRhcmdldC5yZWxlYXNlUG9pbnRlckNhcHR1cmUoZC5wb2ludGVySWQpLHRoaXMuaXNEcmFnZ2luZz0hMSwhdGhpcy5oYXNEcmFnZ2VkKSlyZXR1cm47bGV0IGY9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCIudG9nZ2xlLWtub2IiKTtmJiZmLmNsYXNzTGlzdC5yZW1vdmUoImRyYWdnaW5nIik7bGV0IHU9dGhpcy5tYXhUcmF2ZWwvMjt0aGlzLnZhbHVlPXRoaXMuY3VycmVudFg+dSx0aGlzLmN1cnJlbnRYPXRoaXMudmFsdWU/dGhpcy5tYXhUcmF2ZWw6MCx0aGlzLnJlcXVlc3RVcGRhdGUoKSx0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJuZXdWYWx1ZSIse2RldGFpbDp0aGlzLnZhbHVlLGJ1YmJsZXM6ITB9KSksdGhpcy5jaGFuZ2VTdWJqZWN0Lm5leHQodGhpcyksSnQuc21hcnRkZWxheS5kZWxheUZvcigwKS50aGVuKCgpPT57dGhpcy5oYXNEcmFnZ2VkPSExfSl9dXBkYXRlZChkKXtzdXBlci51cGRhdGVkKGQpLGQuaGFzKCJ2YWx1ZSIpJiYhdGhpcy5pc0RyYWdnaW5nJiYhdGhpcy5oYXNEcmFnZ2VkJiYodGhpcy5jdXJyZW50WD10aGlzLnZhbHVlP3RoaXMubWF4VHJhdmVsOjAsdGhpcy5yZXF1ZXN0VXBkYXRlKCkpfWhhbmRsZUtleWRvd24oZCl7KGQua2V5PT09IiAifHxkLmtleT09PSJFbnRlciIpJiYoZC5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuaGFuZGxlQ2xpY2soZCkpfWdldFZhbHVlKCl7cmV0dXJuIHRoaXMudmFsdWV9c2V0VmFsdWUoZCl7dGhpcy52YWx1ZT1kfWZvY3VzKCl7bGV0IGQ9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCIudG9nZ2xlLXRyYWNrIik7ZCYmZC5mb2N1cygpfXN0YXRpY3tzY3QoYSxyKX19O3JldHVybiBjPWF9KSgpfSk7dmFyIHYkcix5JHI9bCgoKT0+e1NlKCk7diRyPSgpPT5TYAogIDxkZWVzLWRlbW93cmFwcGVyPgogICAgPHN0eWxlPgogICAgICAke2xlYAogICAgICAgIC5kZW1vLWNvbnRhaW5lciB7CiAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICAgIGdhcDogMjRweDsKICAgICAgICAgIHBhZGRpbmc6IDI0cHg7CiAgICAgICAgICBtYXgtd2lkdGg6IDEyMDBweDsKICAgICAgICAgIG1hcmdpbjogMCBhdXRvOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAuaW5wdXQtZ3JvdXAgewogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgICBnYXA6IDE2cHg7CiAgICAgICAgfQoKICAgICAgICAuaG9yaXpvbnRhbC1ncm91cCB7CiAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgZ2FwOiAyNHB4OwogICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5pbmZvLWJveCB7CiAgICAgICAgICBtYXJnaW4tdG9wOiAxNnB4OwogICAgICAgICAgcGFkZGluZzogMTJweDsKICAgICAgICAgIGJhY2tncm91bmQ6ICNlM2YyZmQ7CiAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgICBjb2xvcjogIzE5NzZkMjsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykgewogICAgICAgICAgLmluZm8tYm94IHsKICAgICAgICAgICAgYmFja2dyb3VuZDogIzFlM2E1ZjsKICAgICAgICAgICAgY29sb3I6ICM5MGNhZjk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICBgfQogICAgPC9zdHlsZT4KICAgIAogICAgPGRpdiBjbGFzcz0iZGVtby1jb250YWluZXIiPgogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiQmFzaWMgVHlwZSBMaXN0In0gLnN1YnRpdGxlPSR7IkFkZCBhbmQgcmVtb3ZlIGl0ZW1zIGZyb20gYSBsaXN0In0+CiAgICAgICAgPGRpdiBjbGFzcz0iaW5wdXQtZ3JvdXAiPgogICAgICAgICAgPGRlZXMtaW5wdXQtdHlwZWxpc3QKICAgICAgICAgICAgLmxhYmVsPSR7IlRhZ3MifQogICAgICAgICAgICAuZGVzY3JpcHRpb249JHsiQWRkIHRhZ3MgYnkgdHlwaW5nIGFuZCBwcmVzc2luZyBFbnRlciJ9CiAgICAgICAgICAgIC52YWx1ZT0ke1siamF2YXNjcmlwdCIsInR5cGVzY3JpcHQiLCJ3ZWItY29tcG9uZW50cyJdfQogICAgICAgICAgPjwvZGVlcy1pbnB1dC10eXBlbGlzdD4KCiAgICAgICAgICA8ZGVlcy1pbnB1dC10eXBlbGlzdAogICAgICAgICAgICAubGFiZWw9JHsiVGVhbSBNZW1iZXJzIn0KICAgICAgICAgICAgLmRlc2NyaXB0aW9uPSR7IkFkZCBlbWFpbCBhZGRyZXNzZXMgb2YgdGVhbSBtZW1iZXJzIn0KICAgICAgICAgICAgLnZhbHVlPSR7WyJhbGljZUBleGFtcGxlLmNvbSIsImJvYkBleGFtcGxlLmNvbSJdfQogICAgICAgICAgPjwvZGVlcy1pbnB1dC10eXBlbGlzdD4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgICAKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IlNraWxscyAmIEtleXdvcmRzIn0gLnN1YnRpdGxlPSR7Ik1hbmFnZSBsaXN0cyBvZiBza2lsbHMgYW5kIGtleXdvcmRzIn0+CiAgICAgICAgPGRpdiBjbGFzcz0iaW5wdXQtZ3JvdXAiPgogICAgICAgICAgPGRlZXMtaW5wdXQtdHlwZWxpc3QKICAgICAgICAgICAgLmxhYmVsPSR7IllvdXIgU2tpbGxzIn0KICAgICAgICAgICAgLmRlc2NyaXB0aW9uPSR7Ikxpc3QgeW91ciBwcm9mZXNzaW9uYWwgc2tpbGxzIn0KICAgICAgICAgICAgLnZhbHVlPSR7WyJIVE1MIiwiQ1NTIiwiSmF2YVNjcmlwdCIsIk5vZGUuanMiLCJSZWFjdCJdfQogICAgICAgICAgPjwvZGVlcy1pbnB1dC10eXBlbGlzdD4KCiAgICAgICAgICA8ZGl2IGNsYXNzPSJob3Jpem9udGFsLWdyb3VwIj4KICAgICAgICAgIDxkZWVzLWlucHV0LXR5cGVsaXN0CiAgICAgICAgICAgIC5sYWJlbD0keyJDYXRlZ29yaWVzIn0KICAgICAgICAgICAgLmxheW91dE1vZGU9JHsiaG9yaXpvbnRhbCJ9CiAgICAgICAgICAgIC52YWx1ZT0ke1siVGVjaG5vbG9neSIsIkRlc2lnbiIsIkJ1c2luZXNzIl19CiAgICAgICAgICA+PC9kZWVzLWlucHV0LXR5cGVsaXN0PgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1pbnB1dC10eXBlbGlzdAogICAgICAgICAgICAubGFiZWw9JHsiS2V5d29yZHMifQogICAgICAgICAgICAubGF5b3V0TW9kZT0keyJob3Jpem9udGFsIn0KICAgICAgICAgICAgLnZhbHVlPSR7WyJpbm5vdmF0aW9uIiwic3RhcnR1cCIsImdyb3d0aCJdfQogICAgICAgICAgPjwvZGVlcy1pbnB1dC10eXBlbGlzdD4KICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgICAKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IlJlcXVpcmVkICYgRGlzYWJsZWQgU3RhdGVzIn0gLnN1YnRpdGxlPSR7IkRpZmZlcmVudCBpbnB1dCBzdGF0ZXMgZm9yIHZhbGlkYXRpb24ifT4KICAgICAgICA8ZGl2IGNsYXNzPSJpbnB1dC1ncm91cCI+CiAgICAgICAgICA8ZGVlcy1pbnB1dC10eXBlbGlzdAogICAgICAgICAgICAubGFiZWw9JHsiUHJvamVjdCBEZXBlbmRlbmNpZXMifQogICAgICAgICAgICAuZGVzY3JpcHRpb249JHsiTGlzdCBhbGwgcmVxdWlyZWQgbnBtIHBhY2thZ2VzIn0KICAgICAgICAgICAgLnJlcXVpcmVkPSR7ITB9CiAgICAgICAgICAgIC52YWx1ZT0ke1siQGRlc2lnbi5lc3RhdGUvZGVlcy1lbGVtZW50IiwiQGRlc2lnbi5lc3RhdGUvZGVlcy1kb210b29scyJdfQogICAgICAgICAgPjwvZGVlcy1pbnB1dC10eXBlbGlzdD4KCiAgICAgICAgICA8ZGVlcy1pbnB1dC10eXBlbGlzdAogICAgICAgICAgICAubGFiZWw9JHsiU3lzdGVtIFRhZ3MifQogICAgICAgICAgICAuZGVzY3JpcHRpb249JHsiVGhlc2UgdGFncyBhcmUgbWFuYWdlZCBieSB0aGUgc3lzdGVtIn0KICAgICAgICAgICAgLmRpc2FibGVkPSR7ITB9CiAgICAgICAgICAgIC52YWx1ZT0ke1sic3lzdGVtIiwicHJvdGVjdGVkIiwicmVhZG9ubHkiXX0KICAgICAgICAgID48L2RlZXMtaW5wdXQtdHlwZWxpc3Q+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgICAgCiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyJBcnRpY2xlIFB1Ymxpc2hpbmcgRm9ybSJ9IC5zdWJ0aXRsZT0keyJDb21wbGV0ZSBmb3JtIHdpdGggdGFnIG1hbmFnZW1lbnQifT4KICAgICAgICA8ZGVlcy1mb3JtPgogICAgICAgICAgPGRlZXMtaW5wdXQtdGV4dCAubGFiZWw9JHsiQXJ0aWNsZSBUaXRsZSJ9IC5yZXF1aXJlZD0keyEwfT48L2RlZXMtaW5wdXQtdGV4dD4KICAgICAgICAgIDxkZWVzLWlucHV0LXRleHQgCiAgICAgICAgICAgIC5sYWJlbD0keyJTdW1tYXJ5In0gCiAgICAgICAgICAgIC5pbnB1dFR5cGU9JHsidGV4dGFyZWEifQogICAgICAgICAgICAuZGVzY3JpcHRpb249JHsiQnJpZWYgZGVzY3JpcHRpb24gb2YgdGhlIGFydGljbGUifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC10ZXh0PgogICAgICAgICAgPGRlZXMtaW5wdXQtdHlwZWxpc3QKICAgICAgICAgICAgLmxhYmVsPSR7IlRhZ3MifQogICAgICAgICAgICAuZGVzY3JpcHRpb249JHsiQWRkIHJlbGV2YW50IHRhZ3MgZm9yIGJldHRlciBkaXNjb3ZlcmFiaWxpdHkifQogICAgICAgICAgICAudmFsdWU9JHtbInR1dG9yaWFsIiwid2ViLWRldmVsb3BtZW50Il19CiAgICAgICAgICA+PC9kZWVzLWlucHV0LXR5cGVsaXN0PgogICAgICAgICAgPGRlZXMtaW5wdXQtdHlwZWxpc3QKICAgICAgICAgICAgLmxhYmVsPSR7IkNvLUF1dGhvcnMifQogICAgICAgICAgICAuZGVzY3JpcHRpb249JHsiQWRkIGVtYWlsIGFkZHJlc3NlcyBvZiBjby1hdXRob3JzIn0KICAgICAgICAgID48L2RlZXMtaW5wdXQtdHlwZWxpc3Q+CiAgICAgICAgPC9kZWVzLWZvcm0+CiAgICAgICAgCiAgICAgICAgPGRpdiBjbGFzcz0iaW5mby1ib3giPgogICAgICAgICAgPHN0cm9uZz5UaXA6PC9zdHJvbmc+IFR5cGUgYSB2YWx1ZSBhbmQgcHJlc3MgRW50ZXIgdG8gYWRkIGl0IHRvIHRoZSBsaXN0LiBDbGljayBvbiBhbnkgaXRlbSB0byByZW1vdmUgaXQuCiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgIDwvZGl2PgogIDwvZGVlcy1kZW1vd3JhcHBlcj4KYH0pO3ZhciBjY3QsaFosamxlLGRjdD1sKCgpPT57U2UoKTtlcigpO1BhKCk7eSRyKCk7b3QoKTtjY3Q9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxoWj1mdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MixpPTA7aTx0Lmxlbmd0aDtpKyspcj1hP3RbaV0uY2FsbChlLHIpOnRbaV0uY2FsbChlKTtyZXR1cm4gYT9yOnZvaWQgMH0samxlPSgoKT0+e2xldCBlPVt6ZSgiZGVlcy1pbnB1dC10eXBlbGlzdCIpXSx0LHI9W10sYSxpPWh0LG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdO3ZhciB1PWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgcD10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHt0eXBlOkFycmF5fSldLGM9W3JlKCldLGNjdCh0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InZhbHVlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpoPT4idmFsdWUiaW4gaCxnZXQ6aD0+aC52YWx1ZSxzZXQ6KGgsYik9PntoLnZhbHVlPWJ9fSxtZXRhZGF0YTpwfSxuLHMpLGNjdCh0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImlucHV0VmFsdWUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmg9PiJpbnB1dFZhbHVlImluIGgsZ2V0Omg9PmguaW5wdXRWYWx1ZSxzZXQ6KGgsYik9PntoLmlucHV0VmFsdWU9Yn19LG1ldGFkYXRhOnB9LGQsZiksY2N0KG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOnB9LG51bGwsciksdT1hPXQudmFsdWUscCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpwfSl9c3RhdGljIGRlbW89diRyO3N0YXRpYyBkZW1vR3JvdXBzPVsiSW5wdXQiXTsjZT1oWih0aGlzLG4sW10pO2dldCB2YWx1ZSgpe3JldHVybiB0aGlzLiNlfXNldCB2YWx1ZShwKXt0aGlzLiNlPXB9I3Q9KGhaKHRoaXMscyksaFoodGhpcyxkLCIiKSk7Z2V0IGlucHV0VmFsdWUoKXtyZXR1cm4gdGhpcy4jdH1zZXQgaW5wdXRWYWx1ZShwKXt0aGlzLiN0PXB9c3RhdGljIHN0eWxlcz1bUGUsLi4uaHQuYmFzZVN0eWxlcyxtLmRlZmF1bHRTdHlsZXMsbGVgCiAgICAgIC8qIFRPRE86IE1pZ3JhdGUgaGFyZGNvZGVkIHZhbHVlcyB0byAtLWRlZXMtKiBDU1MgdmFyaWFibGVzICovCiAgICAgIDpob3N0IHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMzMzMiLCIjZmZmIil9OwogICAgICB9CiAgICAgIC5tYWluYm94IHsKICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmYWZhZmEiLCIjMjIyMjIyIil9OwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgYm9yZGVyLXRvcDogJHttLmJkVGhlbWUoIjFweCBzb2xpZCAjQ0NDIiwiMXB4IHNvbGlkICNmZmZmZmYxMCIpfTsKICAgICAgICBib3JkZXItYm90dG9tOiAke20uYmRUaGVtZSgiMXB4IHNvbGlkICNDQ0MiLCIxcHggc29saWQgIzIyMiIpfTsKICAgICAgICBib3JkZXItcmlnaHQ6ICR7bS5iZFRoZW1lKCIxcHggc29saWQgI0NDQyIsIjFweCBzb2xpZCAjZmZmZmZmMTAiKX07CiAgICAgICAgYm9yZGVyLWxlZnQ6ICR7bS5iZFRoZW1lKCIxcHggc29saWQgI0NDQyIsIjFweCBzb2xpZCAjZmZmZmZmMTAiKX07CiAgICAgICAgYm94LXNoYWRvdzogJHttLmJkVGhlbWUoIjBweCAxcHggNHB4IHJnYmEoMCwwLDAsMC4zKSIsIm5vbmUiKX07CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnM7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICB9CiAgICAgIAogICAgICAubWFpbmJveDpob3ZlciB7CiAgICAgICAgZmlsdGVyOiAke20uYmRUaGVtZSgiYnJpZ2h0bmVzcygwLjk4KSIsImJyaWdodG5lc3MoMS4wNSkiKX07CiAgICAgIH0KICAgICAgCiAgICAgIC5tYWluYm94OmZvY3VzLXdpdGhpbiB7CiAgICAgICAgb3V0bGluZTogMnB4IHNvbGlkICR7bS5iZFRoZW1lKCIjMDA2OWYyIiwiIzAwODRmZiIpfTsKICAgICAgICBvdXRsaW5lLW9mZnNldDogLTJweDsKICAgICAgfQoKICAgICAgLnRhZ3MgewogICAgICAgIHBhZGRpbmc6IDE2cHg7CiAgICAgICAgY3Vyc29yOiBkZWZhdWx0OwogICAgICB9CgogICAgICAubm90YWdzIHsKICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjOTk5IiwiIzY2NiIpfTsKICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljOwogICAgICB9CgogICAgICBpbnB1dCB7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2Y1ZjVmNSIsIiMxODE4MTgiKX07CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgb3V0bGluZTogbm9uZTsKICAgICAgICBib3JkZXI6IG5vbmU7CiAgICAgICAgY29sb3I6IGluaGVyaXQ7CiAgICAgICAgcGFkZGluZzogMHB4IDE2cHg7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICBsaW5lLWhlaWdodDogMzJweDsKICAgICAgICBoZWlnaHQ6IDBweDsKICAgICAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMC4yczsKICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlMGUwZTAiLCIjMzMzIil9OwogICAgICB9CgogICAgICBpbnB1dDpmb2N1cyB7CiAgICAgICAgaGVpZ2h0OiAzMnB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZmFmYWZhIiwiIzFhMWExYSIpfTsKICAgICAgfQogICAgICAKICAgICAgaW5wdXQ6OnBsYWNlaG9sZGVyIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM5OTkiLCIjNjY2Iil9OwogICAgICB9CgogICAgICAudGFnIHsKICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNlOGY1ZTkiLCIjMmQzYTJkIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzJlN2QzMiIsIiM4MWM3ODQiKX07CiAgICAgICAgcGFkZGluZzogNHB4IDEwcHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgIG1hcmdpbjogM3B4OwogICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzOwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjYzhlNmM5IiwiIzFiNWUyMCIpfTsKICAgICAgfQogICAgICAKICAgICAgLnRhZzpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNjOGU2YzkiLCIjM2Q0ZjNkIil9OwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTsKICAgICAgfQoKICAgICAgLnRhZyAucmVtb3ZlIHsKICAgICAgICBtYXJnaW4tbGVmdDogOHB4OwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICBvcGFjaXR5OiAwLjc7CiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsKICAgICAgICBmb250LXNpemU6IDE2cHg7CiAgICAgICAgbGluZS1oZWlnaHQ6IDE7CiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzOwogICAgICB9CgogICAgICAudGFnIC5yZW1vdmU6aG92ZXIgewogICAgICAgIG9wYWNpdHk6IDE7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjYzYyODI4IiwiI2VmNTM1MCIpfTsKICAgICAgfQogICAgICAKICAgICAgLyogRGlzYWJsZWQgc3RhdGUgKi8KICAgICAgOmhvc3QoW2Rpc2FibGVkXSkgLm1haW5ib3ggewogICAgICAgIG9wYWNpdHk6IDAuNjsKICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOwogICAgICB9CiAgICAgIAogICAgICA6aG9zdChbZGlzYWJsZWRdKSAudGFncyB7CiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsKICAgICAgfQogICAgICAKICAgICAgOmhvc3QoW2Rpc2FibGVkXSkgLnRhZyB7CiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgICAgIH0KICAgICAgCiAgICAgIDpob3N0KFtkaXNhYmxlZF0pIGlucHV0IHsKICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjBmMGYwIiwiIzFhMWExYSIpfTsKICAgICAgfQogICAgYF07cmVuZGVyKCl7cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9ImlucHV0LXdyYXBwZXIiPgogICAgICAgIDxkZWVzLWxhYmVsIC5sYWJlbD0ke3RoaXMubGFiZWx9IC5kZXNjcmlwdGlvbj0ke3RoaXMuZGVzY3JpcHRpb259PjwvZGVlcy1sYWJlbD4KICAgICAgICA8ZGl2IGNsYXNzPSJtYWluYm94Ij4KICAgICAgICAgIDxkaXYgY2xhc3M9InRhZ3MiIEBjbGljaz0keygpPT57dGhpcy5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoImlucHV0IikuZm9jdXMoKX19PgogICAgICAgICAgICAke3RoaXMudmFsdWUubGVuZ3RoPT09MD9TYDxkaXYgY2xhc3M9Im5vdGFncyI+Tm8gdGFncyB5ZXQ8L2Rpdj5gOnRoaXMudmFsdWUubWFwKHA9PlNgCiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhZyI+CiAgICAgICAgICAgICAgICAgICAgICAke3B9CiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0icmVtb3ZlIiBAY2xpY2s9JHtoPT57aC5zdG9wUHJvcGFnYXRpb24oKSx0aGlzLnJlbW92ZVRhZyhwKX19PsOXPC9zcGFuPgogICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgYCl9CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxpbnB1dAogICAgICAgICAgICB0eXBlPSJ0ZXh0IgogICAgICAgICAgICBwbGFjZWhvbGRlcj0iVHlwZSwgcHJlc3MgRW50ZXIgdG8gYWRkIGl0Li4uIgogICAgICAgICAgICAudmFsdWU9JHt0aGlzLmlucHV0VmFsdWV9CiAgICAgICAgICAgIEBpbnB1dD0ke3A9Pnt0aGlzLmlucHV0VmFsdWU9cC50YXJnZXQudmFsdWV9fQogICAgICAgICAgICBAa2V5ZG93bj0ke3A9PntwLmtleT09PSJFbnRlciImJnRoaXMuaW5wdXRWYWx1ZS50cmltKCkmJihwLnByZXZlbnREZWZhdWx0KCksdGhpcy5hZGRUYWcodGhpcy5pbnB1dFZhbHVlLnRyaW0oKSkpfX0KICAgICAgICAgICAgLmRpc2FibGVkPSR7dGhpcy5kaXNhYmxlZH0KICAgICAgICAgIC8+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgYH1hZGRUYWcocCl7dGhpcy52YWx1ZS5pbmNsdWRlcyhwKXx8KHRoaXMudmFsdWU9Wy4uLnRoaXMudmFsdWUscF0sdGhpcy5pbnB1dFZhbHVlPSIiLHRoaXMuY2hhbmdlU3ViamVjdC5uZXh0KHRoaXMpKX1yZW1vdmVUYWcocCl7dGhpcy52YWx1ZT10aGlzLnZhbHVlLmZpbHRlcihoPT5oIT09cCksdGhpcy5jaGFuZ2VTdWJqZWN0Lm5leHQodGhpcyl9Z2V0VmFsdWUoKXtyZXR1cm4gdGhpcy52YWx1ZX1zZXRWYWx1ZShwKXt0aGlzLnZhbHVlPXB9Y29uc3RydWN0b3IoKXtzdXBlciguLi5hcmd1bWVudHMpLGhaKHRoaXMsZil9c3RhdGlje2haKGEscil9fTtyZXR1cm4gdT1hfSkoKX0pO3ZhciB3JHIsTSRyLGskcj1sKCgpPT57U2UoKTt6YSgpO3QxKCk7TSRyPSgpPT5TKHckcnx8KHckcj1laChbYAogIDxkZWVzLWRlbW93cmFwcGVyPgogICAgPHN0eWxlPgogICAgICBgLGAKICAgIDwvc3R5bGU+CiAgICAKICAgIDxkaXYgY2xhc3M9ImRlbW8tY29udGFpbmVyIj4KICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPWAsIiAuc3VidGl0bGU9IixgPgogICAgICAgIDxkZWVzLWlucHV0LXRhZ3MKICAgICAgICAgIC5sYWJlbD1gLGAKICAgICAgICAgIC5wbGFjZWhvbGRlcj1gLGAKICAgICAgICAgIC52YWx1ZT1gLGAKICAgICAgICAgIC5kZXNjcmlwdGlvbj1gLGAKICAgICAgICA+PC9kZWVzLWlucHV0LXRhZ3M+CiAgICAgIDwvZGVlcy1wYW5lbD4KCiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT1gLCIgLnN1YnRpdGxlPSIsYD4KICAgICAgICA8ZGVlcy1pbnB1dC10YWdzCiAgICAgICAgICAubGFiZWw9YCxgCiAgICAgICAgICAucGxhY2Vob2xkZXI9YCxgCiAgICAgICAgICAuc3VnZ2VzdGlvbnM9YCxgCiAgICAgICAgICAudmFsdWU9YCxgCiAgICAgICAgICAuZGVzY3JpcHRpb249YCxgCiAgICAgICAgPjwvZGVlcy1pbnB1dC10YWdzPgogICAgICA8L2RlZXMtcGFuZWw+CgogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9YCwiIC5zdWJ0aXRsZT0iLGA+CiAgICAgICAgPGRpdiBjbGFzcz0iZ3JpZC1sYXlvdXQiPgogICAgICAgICAgPGRlZXMtaW5wdXQtdGFncwogICAgICAgICAgICAubGFiZWw9YCxgCiAgICAgICAgICAgIC5wbGFjZWhvbGRlcj1gLGAKICAgICAgICAgICAgLm1heFRhZ3M9YCxgCiAgICAgICAgICAgIC52YWx1ZT1gLGAKICAgICAgICAgICAgLmRlc2NyaXB0aW9uPWAsYAogICAgICAgICAgPjwvZGVlcy1pbnB1dC10YWdzPgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1pbnB1dC10YWdzCiAgICAgICAgICAgIC5sYWJlbD1gLGAKICAgICAgICAgICAgLnBsYWNlaG9sZGVyPWAsYAogICAgICAgICAgICAubWF4VGFncz1gLGAKICAgICAgICAgICAgLnN1Z2dlc3Rpb25zPWAsYAogICAgICAgICAgICAudmFsdWU9YCxgCiAgICAgICAgICAgIC5kZXNjcmlwdGlvbj1gLGAKICAgICAgICAgID48L2RlZXMtaW5wdXQtdGFncz4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgoKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPWAsIiAuc3VidGl0bGU9IixgPgogICAgICAgIDxkZWVzLWlucHV0LXRhZ3MKICAgICAgICAgIC5sYWJlbD1gLGAKICAgICAgICAgIC5wbGFjZWhvbGRlcj1gLGAKICAgICAgICAgIC5yZXF1aXJlZD1gLGAKICAgICAgICAgIC5kZXNjcmlwdGlvbj1gLGAKICAgICAgICA+PC9kZWVzLWlucHV0LXRhZ3M+CiAgICAgIDwvZGVlcy1wYW5lbD4KCiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT1gLCIgLnN1YnRpdGxlPSIsYD4KICAgICAgICA8ZGVlcy1pbnB1dC10YWdzCiAgICAgICAgICAubGFiZWw9YCxgCiAgICAgICAgICAudmFsdWU9YCxgCiAgICAgICAgICAuZGlzYWJsZWQ9YCxgCiAgICAgICAgICAuZGVzY3JpcHRpb249YCxgCiAgICAgICAgPjwvZGVlcy1pbnB1dC10YWdzPgogICAgICA8L2RlZXMtcGFuZWw+CgogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9YCwiIC5zdWJ0aXRsZT0iLGA+CiAgICAgICAgPGRlZXMtZm9ybT4KICAgICAgICAgIDxkZWVzLWlucHV0LXRleHQKICAgICAgICAgICAgLmxhYmVsPWAsYAogICAgICAgICAgICAucGxhY2Vob2xkZXI9YCxgCiAgICAgICAgICAgIC5yZXF1aXJlZD1gLGAKICAgICAgICAgICAgLmtleT1gLGAKICAgICAgICAgID48L2RlZXMtaW5wdXQtdGV4dD4KICAgICAgICAgIAogICAgICAgICAgPGRpdiBjbGFzcz0iZ3JpZC1sYXlvdXQiPgogICAgICAgICAgICA8ZGVlcy1pbnB1dC10YWdzCiAgICAgICAgICAgICAgLmxhYmVsPWAsYAogICAgICAgICAgICAgIC5wbGFjZWhvbGRlcj1gLGAKICAgICAgICAgICAgICAucmVxdWlyZWQ9YCxgCiAgICAgICAgICAgICAgLmtleT1gLGAKICAgICAgICAgICAgICAuc3VnZ2VzdGlvbnM9YCxgCiAgICAgICAgICAgID48L2RlZXMtaW5wdXQtdGFncz4KICAgICAgICAgICAgCiAgICAgICAgICAgIDxkZWVzLWlucHV0LXRhZ3MKICAgICAgICAgICAgICAubGFiZWw9YCxgCiAgICAgICAgICAgICAgLnBsYWNlaG9sZGVyPWAsYAogICAgICAgICAgICAgIC5rZXk9YCxgCiAgICAgICAgICAgICAgLm1heFRhZ3M9YCxgCiAgICAgICAgICAgICAgLnN1Z2dlc3Rpb25zPWAsYAogICAgICAgICAgICA+PC9kZWVzLWlucHV0LXRhZ3M+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIAogICAgICAgICAgPGRlZXMtaW5wdXQtdGV4dAogICAgICAgICAgICAubGFiZWw9YCxgCiAgICAgICAgICAgIC5pbnB1dFR5cGU9YCxgCiAgICAgICAgICAgIC5wbGFjZWhvbGRlcj1gLGAKICAgICAgICAgICAgLmtleT1gLGAKICAgICAgICAgID48L2RlZXMtaW5wdXQtdGV4dD4KICAgICAgICAgIAogICAgICAgICAgPGRlZXMtZm9ybS1zdWJtaXQgLnRleHQ9YCxgPjwvZGVlcy1mb3JtLXN1Ym1pdD4KICAgICAgICA8L2RlZXMtZm9ybT4KICAgICAgPC9kZWVzLXBhbmVsPgoKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPWAsIiAuc3VidGl0bGU9IixgPgogICAgICAgIDxkZWVzLWlucHV0LXRhZ3MKICAgICAgICAgIGlkPSJpbnRlcmFjdGl2ZS10YWdzIgogICAgICAgICAgLmxhYmVsPWAsYAogICAgICAgICAgLnBsYWNlaG9sZGVyPWAsYAogICAgICAgICAgLnN1Z2dlc3Rpb25zPWAsYAogICAgICAgICAgQGNoYW5nZT1gLGAKICAgICAgICA+PC9kZWVzLWlucHV0LXRhZ3M+CiAgICAgICAgCiAgICAgICAgPGRpdiBjbGFzcz0idGFnLXByZXZpZXciIGlkPSJ0YWdzLXByZXZpZXciPgogICAgICAgICAgPGVtIHN0eWxlPSJjb2xvcjogIzk5OTsiPk5vIHRhZ3MgYWRkZWQgeWV0Li4uPC9lbT4KICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJvdXRwdXQtcHJldmlldyIgaWQ9InRhZ3MtanNvbiI+CiAgICAgICAgICA8ZW0+SlNPTiBvdXRwdXQgd2lsbCBhcHBlYXIgaGVyZS4uLjwvZW0+CiAgICAgICAgPC9kaXY+CiAgICAgICAgCiAgICAgICAgPHNjcmlwdD4KICAgICAgICAgIC8vIFVwZGF0ZSBKU09OIHByZXZpZXcKICAgICAgICAgIGNvbnN0IHRhZ3NJbnB1dCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNpbnRlcmFjdGl2ZS10YWdzJyk7CiAgICAgICAgICB0YWdzSW5wdXQ/LmFkZEV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsIChlKSA9PiB7CiAgICAgICAgICAgIGNvbnN0IGpzb25QcmV2aWV3ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignI3RhZ3MtanNvbicpOwogICAgICAgICAgICBpZiAoanNvblByZXZpZXcpIHsKICAgICAgICAgICAgICBqc29uUHJldmlldy50ZXh0Q29udGVudCA9IEpTT04uc3RyaW5naWZ5KGUuZGV0YWlsLnZhbHVlLCBudWxsLCAyKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgPFwvc2NyaXB0PgogICAgICA8L2RlZXMtcGFuZWw+CiAgICA8L2Rpdj4KICA8L2RlZXMtZGVtb3dyYXBwZXI+CmBdKSksbGVgCiAgICAgICAgLmRlbW8tY29udGFpbmVyIHsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgICAgZ2FwOiAyNHB4OwogICAgICAgICAgcGFkZGluZzogMjRweDsKICAgICAgICAgIG1heC13aWR0aDogMTIwMHB4OwogICAgICAgICAgbWFyZ2luOiAwIGF1dG87CiAgICAgICAgfQogICAgICAgIAogICAgICAgIGRlZXMtcGFuZWwgewogICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgZGVlcy1wYW5lbDpsYXN0LWNoaWxkIHsKICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5ncmlkLWxheW91dCB7CiAgICAgICAgICBkaXNwbGF5OiBncmlkOwogICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyOwogICAgICAgICAgZ2FwOiAxNnB4OwogICAgICAgIH0KICAgICAgICAKICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHsKICAgICAgICAgIC5ncmlkLWxheW91dCB7CiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICAKICAgICAgICAub3V0cHV0LXByZXZpZXcgewogICAgICAgICAgbWFyZ2luLXRvcDogMTZweDsKICAgICAgICAgIHBhZGRpbmc6IDE2cHg7CiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjNmNGY2OwogICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgICAgY29sb3I6ICMzNzQxNTE7CiAgICAgICAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7CiAgICAgICAgICBtYXgtaGVpZ2h0OiAyMDBweDsKICAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87CiAgICAgICAgfQogICAgICAgIAogICAgICAgIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHsKICAgICAgICAgIC5vdXRwdXQtcHJldmlldyB7CiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMyYzJjMmM7CiAgICAgICAgICAgIGNvbG9yOiAjZTRlNGU3OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICAKICAgICAgICAudGFnLXByZXZpZXcgewogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDsKICAgICAgICAgIGdhcDogOHB4OwogICAgICAgICAgcGFkZGluZzogMTJweDsKICAgICAgICAgIGJhY2tncm91bmQ6ICNmOWZhZmI7CiAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgICBtaW4taGVpZ2h0OiA0MHB4OwogICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykgewogICAgICAgICAgLnRhZy1wcmV2aWV3IHsKICAgICAgICAgICAgYmFja2dyb3VuZDogIzFmMjkzNzsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLnRhZy1wcmV2aWV3LWl0ZW0gewogICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgICAgICAgcGFkZGluZzogNHB4IDEycHg7CiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZTBlN2ZmOwogICAgICAgICAgY29sb3I6ICM0MzM4Y2E7CiAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4OwogICAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIH0KICAgICAgICAKICAgICAgICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7CiAgICAgICAgICAudGFnLXByZXZpZXctaXRlbSB7CiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMzMTJlODE7CiAgICAgICAgICAgIGNvbG9yOiAjYzdkMmZlOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgYCwiMS4gQmFzaWMgVGFncyBJbnB1dCIsIlNpbXBsZSB0YWcgaW5wdXQgd2l0aCBjb21tb24gcHJvZ3JhbW1pbmcgbGFuZ3VhZ2VzIiwiUHJvZ3JhbW1pbmcgTGFuZ3VhZ2VzIiwiQWRkIGEgbGFuZ3VhZ2UuLi4iLFsiSmF2YVNjcmlwdCIsIlR5cGVTY3JpcHQiLCJQeXRob24iLCJHbyJdLCJQcmVzcyBFbnRlciBvciBjb21tYSB0byBhZGQgdGFncyIsIjIuIFRhZ3Mgd2l0aCBTdWdnZXN0aW9ucyIsIkF1dG8tY29tcGxldGUgc3VnZ2VzdGlvbnMgZm9yIGZhc3RlciBpbnB1dCIsIlRlY2ggU3RhY2siLCJUeXBlIHRvIHNlZSBzdWdnZXN0aW9ucy4uLiIsWyJSZWFjdCIsIlZ1ZSIsIkFuZ3VsYXIiLCJTdmVsdGUiLCJMaXQiLCJOZXh0LmpzIiwiTnV4dCIsIlN2ZWx0ZUtpdCIsIk5vZGUuanMiLCJEZW5vIiwiQnVuIiwiRXhwcmVzcyIsIkZhc3RpZnkiLCJOZXN0LmpzIiwiS29hIiwiTW9uZ29EQiIsIlBvc3RncmVTUUwiLCJSZWRpcyIsIk15U1FMIiwiU1FMaXRlIiwiQ2Fzc2FuZHJhIiwiRG9ja2VyIiwiS3ViZXJuZXRlcyIsIkFXUyIsIkF6dXJlIiwiR0NQIiwiVmVyY2VsIiwiTmV0bGlmeSJdLFsiUmVhY3QiLCJOb2RlLmpzIiwiUG9zdGdyZVNRTCIsIkRvY2tlciJdLCJTdGFydCB0eXBpbmcgdG8gc2VlIHN1Z2dlc3Rpb25zIGZyb20gcG9wdWxhciB0ZWNobm9sb2dpZXMiLCIzLiBMaW1pdGVkIFRhZ3MiLCJSZXN0cmljdCB0aGUgbnVtYmVyIG9mIHRhZ3MgdXNlcnMgY2FuIGFkZCIsIlRvcCAzIFNraWxscyIsIkFkZCB1cCB0byAzIHNraWxscy4uLiIsMyxbIkRlc2lnbiIsIkRldmVsb3BtZW50Il0sIk1heGltdW0gMyB0YWdzIGFsbG93ZWQiLCJDYXRlZ29yaWVzIChNYXggNSkiLCJTZWxlY3QgY2F0ZWdvcmllcy4uLiIsNSxbIkJsb2ciLCJUdXRvcmlhbCIsIk5ld3MiLCJSZXZpZXciLCJHdWlkZSIsIkNhc2UgU3R1ZHkiLCJJbnRlcnZpZXciXSxbIlR1dG9yaWFsIiwiR3VpZGUiXSwiQ2hvb3NlIHVwIHRvIDUgY2F0ZWdvcmllcyIsIjQuIFJlcXVpcmVkICYgVmFsaWRhdGlvbiIsIlRhZ3MgaW5wdXQgd2l0aCB2YWxpZGF0aW9uIHJlcXVpcmVtZW50cyIsIlByb2plY3QgVGFncyIsIkFkZCBhdCBsZWFzdCBvbmUgdGFnLi4uIiwhMCwiVGhpcyBmaWVsZCBpcyByZXF1aXJlZCAtIGFkZCBhdCBsZWFzdCBvbmUgdGFnIiwiNS4gRGlzYWJsZWQgU3RhdGUiLCJSZWFkLW9ubHkgdGFncyBkaXNwbGF5IiwiU3lzdGVtIFRhZ3MiLFsiU3lzdGVtIiwiUHJvdGVjdGVkIiwiUmVhZC1Pbmx5IiwiQXJjaGl2ZSJdLCEwLCJUaGVzZSB0YWdzIGNhbm5vdCBiZSBtb2RpZmllZCIsIjYuIEZvcm0gSW50ZWdyYXRpb24iLCJUYWdzIGlucHV0IHdvcmtpbmcgd2l0aGluIGEgZm9ybSBjb250ZXh0IiwiUHJvamVjdCBOYW1lIiwiTXkgQXdlc29tZSBQcm9qZWN0IiwhMCwibmFtZSIsIlRlY2hub2xvZ2llcyBVc2VkIiwiQWRkIHRlY2hub2xvZ2llcy4uLiIsITAsInRlY2hub2xvZ2llcyIsWyJUeXBlU2NyaXB0IiwiSmF2YVNjcmlwdCIsIlB5dGhvbiIsIkdvIiwiUnVzdCIsIlJlYWN0IiwiVnVlIiwiQW5ndWxhciIsIlN2ZWx0ZSIsIk5vZGUuanMiLCJEZW5vIiwiRXhwcmVzcyIsIkZhc3RBUEkiXSwiUHJvamVjdCBUYWdzIiwiQWRkIGRlc2NyaXB0aXZlIHRhZ3MuLi4iLCJ0YWdzIiwxMCxbImZyb250ZW5kIiwiYmFja2VuZCIsImZ1bGxzdGFjayIsIm1vYmlsZSIsImRlc2t0b3AiLCJ3ZWIiLCJhcGkiLCJkYXRhYmFzZSIsImRldm9wcyIsInVpL3V4Iiwib3BlbnNvdXJjZSIsInNhYXMiLCJlbnRlcnByaXNlIiwic3RhcnR1cCJdLCJEZXNjcmlwdGlvbiIsInRleHRhcmVhIiwiRGVzY3JpYmUgeW91ciBwcm9qZWN0Li4uIiwiZGVzY3JpcHRpb24iLCJDcmVhdGUgUHJvamVjdCIsIjcuIEludGVyYWN0aXZlIERlbW8iLCJBZGQgdGFncyBhbmQgc2VlIHRoZW0gY29sbGVjdGVkIGluIHJlYWwtdGltZSIsIllvdXIgSW50ZXJlc3RzIiwiVHlwZSB5b3VyIGludGVyZXN0cy4uLiIsWyJNdXNpYyIsIk1vdmllcyIsIkJvb2tzIiwiVHJhdmVsIiwiUGhvdG9ncmFwaHkiLCJDb29raW5nIiwiR2FtaW5nIiwiU3BvcnRzIiwiQXJ0IiwiVGVjaG5vbG9neSIsIkZhc2hpb24iLCJGaXRuZXNzIiwiTmF0dXJlIiwiU2NpZW5jZSIsIkhpc3RvcnkiXSxlPT57bGV0IHQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI3RhZ3MtcHJldmlldyIpLHI9ZS5kZXRhaWwudmFsdWU7dCYmKHIubGVuZ3RoPT09MD90LmlubmVySFRNTD0nPGVtIHN0eWxlPSJjb2xvcjogIzk5OTsiPk5vIHRhZ3MgYWRkZWQgeWV0Li4uPC9lbT4nOnQuaW5uZXJIVE1MPXIubWFwKGE9PmA8c3BhbiBjbGFzcz0idGFnLXByZXZpZXctaXRlbSI+JHthfTwvc3Bhbj5gKS5qb2luKCIiKSl9KX0pO3ZhciBPYyxtMSxWbGUsdWN0PWwoKCk9PntTZSgpO1BhKCk7YnIoKTtrJHIoKTtvdCgpO09jPWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sbTE9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LFZsZT0oKCk9PntsZXQgZT1bemUoImRlZXMtaW5wdXQtdGFncyIpXSx0LHI9W10sYSxpPWh0LG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdLHUscD1bXSxoPVtdLGIseD1bXSxnPVtdLHYsdz1bXSxNPVtdLEYsQz1bXSxrPVtdLE4sJD1bXSxJPVtdLEIsej1bXSx5PVtdO3ZhciBFPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgXz10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHt0eXBlOkFycmF5fSldLGM9W2ooe3R5cGU6U3RyaW5nfSldLHU9W2ooe3R5cGU6TnVtYmVyfSldLGI9W2ooe3R5cGU6QXJyYXl9KV0sdj1bcmUoKV0sRj1bcmUoKV0sTj1bcmUoKV0sQj1baih7dHlwZTpTdHJpbmd9KV0sT2ModGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ2YWx1ZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6UD0+InZhbHVlImluIFAsZ2V0OlA9PlAudmFsdWUsc2V0OihQLFYpPT57UC52YWx1ZT1WfX0sbWV0YWRhdGE6X30sbixzKSxPYyh0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InBsYWNlaG9sZGVyIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpQPT4icGxhY2Vob2xkZXIiaW4gUCxnZXQ6UD0+UC5wbGFjZWhvbGRlcixzZXQ6KFAsVik9PntQLnBsYWNlaG9sZGVyPVZ9fSxtZXRhZGF0YTpffSxkLGYpLE9jKHRoaXMsbnVsbCx1LHtraW5kOiJhY2Nlc3NvciIsbmFtZToibWF4VGFncyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6UD0+Im1heFRhZ3MiaW4gUCxnZXQ6UD0+UC5tYXhUYWdzLHNldDooUCxWKT0+e1AubWF4VGFncz1WfX0sbWV0YWRhdGE6X30scCxoKSxPYyh0aGlzLG51bGwsYix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InN1Z2dlc3Rpb25zIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpQPT4ic3VnZ2VzdGlvbnMiaW4gUCxnZXQ6UD0+UC5zdWdnZXN0aW9ucyxzZXQ6KFAsVik9PntQLnN1Z2dlc3Rpb25zPVZ9fSxtZXRhZGF0YTpffSx4LGcpLE9jKHRoaXMsbnVsbCx2LHtraW5kOiJhY2Nlc3NvciIsbmFtZToiaW5wdXRWYWx1ZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6UD0+ImlucHV0VmFsdWUiaW4gUCxnZXQ6UD0+UC5pbnB1dFZhbHVlLHNldDooUCxWKT0+e1AuaW5wdXRWYWx1ZT1WfX0sbWV0YWRhdGE6X30sdyxNKSxPYyh0aGlzLG51bGwsRix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNob3dTdWdnZXN0aW9ucyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6UD0+InNob3dTdWdnZXN0aW9ucyJpbiBQLGdldDpQPT5QLnNob3dTdWdnZXN0aW9ucyxzZXQ6KFAsVik9PntQLnNob3dTdWdnZXN0aW9ucz1WfX0sbWV0YWRhdGE6X30sQyxrKSxPYyh0aGlzLG51bGwsTix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImhpZ2hsaWdodGVkU3VnZ2VzdGlvbkluZGV4IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpQPT4iaGlnaGxpZ2h0ZWRTdWdnZXN0aW9uSW5kZXgiaW4gUCxnZXQ6UD0+UC5oaWdobGlnaHRlZFN1Z2dlc3Rpb25JbmRleCxzZXQ6KFAsVik9PntQLmhpZ2hsaWdodGVkU3VnZ2VzdGlvbkluZGV4PVZ9fSxtZXRhZGF0YTpffSwkLEkpLE9jKHRoaXMsbnVsbCxCLHtraW5kOiJhY2Nlc3NvciIsbmFtZToidmFsaWRhdGlvblRleHQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOlA9PiJ2YWxpZGF0aW9uVGV4dCJpbiBQLGdldDpQPT5QLnZhbGlkYXRpb25UZXh0LHNldDooUCxWKT0+e1AudmFsaWRhdGlvblRleHQ9Vn19LG1ldGFkYXRhOl99LHoseSksT2MobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6X30sbnVsbCxyKSxFPWE9dC52YWx1ZSxfJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOl99KX1zdGF0aWMgZGVtbz1NJHI7c3RhdGljIGRlbW9Hcm91cHM9WyJJbnB1dCJdOyNlPW0xKHRoaXMsbixbXSk7Z2V0IHZhbHVlKCl7cmV0dXJuIHRoaXMuI2V9c2V0IHZhbHVlKF8pe3RoaXMuI2U9X30jdD0obTEodGhpcyxzKSxtMSh0aGlzLGQsIkFkZCB0YWdzLi4uIikpO2dldCBwbGFjZWhvbGRlcigpe3JldHVybiB0aGlzLiN0fXNldCBwbGFjZWhvbGRlcihfKXt0aGlzLiN0PV99I3I9KG0xKHRoaXMsZiksbTEodGhpcyxwLDApKTtnZXQgbWF4VGFncygpe3JldHVybiB0aGlzLiNyfXNldCBtYXhUYWdzKF8pe3RoaXMuI3I9X30jYT0obTEodGhpcyxoKSxtMSh0aGlzLHgsW10pKTtnZXQgc3VnZ2VzdGlvbnMoKXtyZXR1cm4gdGhpcy4jYX1zZXQgc3VnZ2VzdGlvbnMoXyl7dGhpcy4jYT1ffSNpPShtMSh0aGlzLGcpLG0xKHRoaXMsdywiIikpO2dldCBpbnB1dFZhbHVlKCl7cmV0dXJuIHRoaXMuI2l9c2V0IGlucHV0VmFsdWUoXyl7dGhpcy4jaT1ffSNvPShtMSh0aGlzLE0pLG0xKHRoaXMsQywhMSkpO2dldCBzaG93U3VnZ2VzdGlvbnMoKXtyZXR1cm4gdGhpcy4jb31zZXQgc2hvd1N1Z2dlc3Rpb25zKF8pe3RoaXMuI289X30jbj0obTEodGhpcyxrKSxtMSh0aGlzLCQsLTEpKTtnZXQgaGlnaGxpZ2h0ZWRTdWdnZXN0aW9uSW5kZXgoKXtyZXR1cm4gdGhpcy4jbn1zZXQgaGlnaGxpZ2h0ZWRTdWdnZXN0aW9uSW5kZXgoXyl7dGhpcy4jbj1ffSNzPShtMSh0aGlzLEkpLG0xKHRoaXMseiwiIikpO2dldCB2YWxpZGF0aW9uVGV4dCgpe3JldHVybiB0aGlzLiNzfXNldCB2YWxpZGF0aW9uVGV4dChfKXt0aGlzLiNzPV99c3RhdGljIHN0eWxlcz1bUGUsLi4uaHQuYmFzZVN0eWxlcyxtLmRlZmF1bHRTdHlsZXMsbGVgCiAgICAgIC8qIFRPRE86IE1pZ3JhdGUgaGFyZGNvZGVkIHZhbHVlcyB0byAtLWRlZXMtKiBDU1MgdmFyaWFibGVzICovCiAgICAgIDpob3N0IHsKICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAnU2Vnb2UgVUknLCAnUm9ib3RvJywgc2Fucy1zZXJpZjsKICAgICAgfQoKICAgICAgLmlucHV0LXdyYXBwZXIgewogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICB9CgogICAgICAudGFncy1jb250YWluZXIgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC13cmFwOiB3cmFwOwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgZ2FwOiA2cHg7CiAgICAgICAgcGFkZGluZzogNnB4IDEwcHg7CiAgICAgICAgbWluLWhlaWdodDogNDBweDsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTsKICAgICAgICBjdXJzb3I6IHRleHQ7CiAgICAgIH0KCiAgICAgIC50YWdzLWNvbnRhaW5lcjpob3Zlcjpub3QoLmRpc2FibGVkKSB7CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNzkuOCUpIiwiaHNsKDAgMCUgMjAuOSUpIil9OwogICAgICB9CgogICAgICAudGFncy1jb250YWluZXI6Zm9jdXMtd2l0aGluIHsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjIyLjIgNDcuNCUgNTEuMiUpIiwiaHNsKDIxNy4yIDkxLjIlIDU5LjglKSIpfTsKICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggJHttLmJkVGhlbWUoImhzbCgyMjIuMiA0Ny40JSA1MS4yJSAvIDAuMSkiLCJoc2woMjE3LjIgOTEuMiUgNTkuOCUgLyAwLjEpIil9OwogICAgICB9CgogICAgICAudGFncy1jb250YWluZXIuZGlzYWJsZWQgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5NS4xJSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7CiAgICAgICAgb3BhY2l0eTogMC41OwogICAgICB9CgogICAgICAudGFnIHsKICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogNHB4OwogICAgICAgIHBhZGRpbmc6IDJweCA4cHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTUgMjAuMiUgNjUuMSUgLyAwLjIpIiwiaHNsKDIxNSAyMC4yJSAzNS4xJSAvIDAuMikiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE1LjMgMjUlIDI2LjclKSIsImhzbCgyMTcuOSAxMC42JSA3NC45JSkiKX07CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgyMTUgMjAuMiUgNjUuMSUgLyAwLjMpIiwiaHNsKDIxNSAyMC4yJSAzNS4xJSAvIDAuMykiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4OwogICAgICAgIHVzZXItc2VsZWN0OiBub25lOwogICAgICAgIGFuaW1hdGlvbjogdGFnQXBwZWFyIDAuMTVzIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7CiAgICAgIH0KCiAgICAgIEBrZXlmcmFtZXMgdGFnQXBwZWFyIHsKICAgICAgICBmcm9tIHsKICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSk7CiAgICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIH0KICAgICAgICB0byB7CiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOwogICAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICB9CiAgICAgIH0KCiAgICAgIC50YWctcmVtb3ZlIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgd2lkdGg6IDE0cHg7CiAgICAgICAgaGVpZ2h0OiAxNHB4OwogICAgICAgIG1hcmdpbi1sZWZ0OiAycHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4OwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuMyAyNSUgNDYuNyUpIiwiaHNsKDIxNy45IDEwLjYlIDU0LjklKSIpfTsKICAgICAgfQoKICAgICAgLnRhZy1yZW1vdmU6aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAwJSAvIDAuMDgpIiwiaHNsKDAgMCUgMTAwJSAvIDAuMDgpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNS4zIDI1JSAyNi43JSkiLCJoc2woMjE3LjkgMTAuNiUgNzQuOSUpIil9OwogICAgICB9CgogICAgICAudGFnLXJlbW92ZSBkZWVzLWljb24gewogICAgICAgIHdpZHRoOiAxMHB4OwogICAgICAgIGhlaWdodDogMTBweDsKICAgICAgfQoKICAgICAgLnRhZy1pbnB1dCB7CiAgICAgICAgZmxleDogMTsKICAgICAgICBtaW4td2lkdGg6IDEyMHB4OwogICAgICAgIGJvcmRlcjogbm9uZTsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgICBvdXRsaW5lOiBub25lOwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDklKSIsImhzbCgwIDAlIDk1JSkiKX07CiAgICAgICAgcGFkZGluZzogMnB4IDRweDsKICAgICAgICBsaW5lLWhlaWdodDogMjBweDsKICAgICAgfQoKICAgICAgLnRhZy1pbnB1dDo6cGxhY2Vob2xkZXIgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNjMuOSUpIiwiaHNsKDAgMCUgNDUuMSUpIil9OwogICAgICB9CgogICAgICAudGFnLWlucHV0OmRpc2FibGVkIHsKICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOwogICAgICB9CgogICAgICAvKiBTdWdnZXN0aW9ucyBkcm9wZG93biAqLwogICAgICAuc3VnZ2VzdGlvbnMtY29udGFpbmVyIHsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgIH0KCiAgICAgIC5zdWdnZXN0aW9ucy1kcm9wZG93biB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHRvcDogMTAwJTsKICAgICAgICBsZWZ0OiAwOwogICAgICAgIHJpZ2h0OiAwOwogICAgICAgIG1hcmdpbi10b3A6IDRweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTAwJSkiLCJoc2woMCAwJSAzLjklKSIpfTsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICBib3gtc2hhZG93OiAwIDRweCA2cHggLTFweCBoc2woMCAwJSAwJSAvIDAuMSksIDAgMnB4IDRweCAtMnB4IGhzbCgwIDAlIDAlIC8gMC4xKTsKICAgICAgICBtYXgtaGVpZ2h0OiAyMDBweDsKICAgICAgICBvdmVyZmxvdy15OiBhdXRvOwogICAgICAgIHotaW5kZXg6IDEwMDA7CiAgICAgIH0KCiAgICAgIC5zdWdnZXN0aW9uIHsKICAgICAgICBwYWRkaW5nOiA2cHggMTBweDsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTUlKSIsImhzbCgwIDAlIDkwJSkiKX07CiAgICAgIH0KCiAgICAgIC5zdWdnZXN0aW9uOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOTUuMSUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICB9CgogICAgICAuc3VnZ2VzdGlvbi5oaWdobGlnaHRlZCB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTAgNDAlIDk2LjElKSIsImhzbCgyMTUgMjAuMiUgMTYuOCUpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOSUpIiwiaHNsKDAgMCUgOTUlKSIpfTsKICAgICAgfQoKICAgICAgLyogVmFsaWRhdGlvbiBzdHlsZXMgKi8KICAgICAgLnZhbGlkYXRpb24tbWVzc2FnZSB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCA3Mi4yJSA1MC42JSkiLCJoc2woMCA2Mi44JSAzMC42JSkiKX07CiAgICAgICAgZm9udC1zaXplOiAxM3B4OwogICAgICAgIG1hcmdpbi10b3A6IDZweDsKICAgICAgICBsaW5lLWhlaWdodDogMS41OwogICAgICB9CgogICAgICAvKiBEZXNjcmlwdGlvbiBzdHlsZXMgKi8KICAgICAgLmRlc2NyaXB0aW9uIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuNCAxNi4zJSA1Ni45JSkiLCJoc2woMjE1IDIwLjIlIDU1LjElKSIpfTsKICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgbWFyZ2luLXRvcDogNnB4OwogICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7CiAgICAgIH0KCiAgICAgIC8qIFNjcm9sbGJhciBzdHlsaW5nICovCiAgICAgIC5zdWdnZXN0aW9ucy1kcm9wZG93bjo6LXdlYmtpdC1zY3JvbGxiYXIgewogICAgICAgIHdpZHRoOiA4cHg7CiAgICAgIH0KCiAgICAgIC5zdWdnZXN0aW9ucy1kcm9wZG93bjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sgewogICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogICAgICB9CgogICAgICAuc3VnZ2VzdGlvbnMtZHJvcGRvd246Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgfQoKICAgICAgLnN1Z2dlc3Rpb25zLWRyb3Bkb3duOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDc5LjglKSIsImhzbCgwIDAlIDIwLjklKSIpfTsKICAgICAgfQogICAgYF07cmVuZGVyKCl7bGV0IF89dGhpcy5zdWdnZXN0aW9ucy5maWx0ZXIoUD0+IXRoaXMudmFsdWUuaW5jbHVkZXMoUCkmJlAudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyh0aGlzLmlucHV0VmFsdWUudG9Mb3dlckNhc2UoKSkpO3JldHVybiBTYAogICAgICA8ZGl2IGNsYXNzPSJpbnB1dC13cmFwcGVyIj4KICAgICAgICAke3RoaXMubGFiZWw/U2A8ZGVlcy1sYWJlbCAubGFiZWw9JHt0aGlzLmxhYmVsfSAucmVxdWlyZWQ9JHt0aGlzLnJlcXVpcmVkfT48L2RlZXMtbGFiZWw+YDoiIn0KICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJzdWdnZXN0aW9ucy1jb250YWluZXIiPgogICAgICAgICAgPGRpdgogICAgICAgICAgICBjbGFzcz0idGFncy1jb250YWluZXIgJHt0aGlzLmRpc2FibGVkPyJkaXNhYmxlZCI6IiJ9IgogICAgICAgICAgICBAY2xpY2s9JHt0aGlzLmhhbmRsZUNvbnRhaW5lckNsaWNrfQogICAgICAgICAgPgogICAgICAgICAgICAke3RoaXMudmFsdWUubWFwKFA9PlNgCiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGFnIj4KICAgICAgICAgICAgICAgIDxzcGFuPiR7UH08L3NwYW4+CiAgICAgICAgICAgICAgICAke3RoaXMuZGlzYWJsZWQ/IiI6U2AKICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGFnLXJlbW92ZSIgQGNsaWNrPSR7Vj0+dGhpcy5yZW1vdmVUYWcoVixQKX0+CiAgICAgICAgICAgICAgICAgICAgPGRlZXMtaWNvbiAuaWNvbj0keyJsdWNpZGU6eCJ9PjwvZGVlcy1pY29uPgogICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIGB9CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIGApfQogICAgICAgICAgICAKICAgICAgICAgICAgJHshdGhpcy5kaXNhYmxlZCYmKCF0aGlzLm1heFRhZ3N8fHRoaXMudmFsdWUubGVuZ3RoPHRoaXMubWF4VGFncyk/U2AKICAgICAgICAgICAgICA8aW5wdXQKICAgICAgICAgICAgICAgIHR5cGU9InRleHQiCiAgICAgICAgICAgICAgICBjbGFzcz0idGFnLWlucHV0IgogICAgICAgICAgICAgICAgLnBsYWNlaG9sZGVyPSR7dGhpcy5wbGFjZWhvbGRlcn0KICAgICAgICAgICAgICAgIC52YWx1ZT0ke3RoaXMuaW5wdXRWYWx1ZX0KICAgICAgICAgICAgICAgIEBpbnB1dD0ke3RoaXMuaGFuZGxlSW5wdXR9CiAgICAgICAgICAgICAgICBAa2V5ZG93bj0ke3RoaXMuaGFuZGxlS2V5RG93bn0KICAgICAgICAgICAgICAgIEBmb2N1cz0ke3RoaXMuaGFuZGxlRm9jdXN9CiAgICAgICAgICAgICAgICBAYmx1cj0ke3RoaXMuaGFuZGxlQmx1cn0KICAgICAgICAgICAgICAgID9kaXNhYmxlZD0ke3RoaXMuZGlzYWJsZWR9CiAgICAgICAgICAgICAgLz4KICAgICAgICAgICAgYDoiIn0KICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICR7dGhpcy5zaG93U3VnZ2VzdGlvbnMmJl8ubGVuZ3RoPjA/U2AKICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3VnZ2VzdGlvbnMtZHJvcGRvd24iPgogICAgICAgICAgICAgICR7Xy5tYXAoKFAsVik9PlNgCiAgICAgICAgICAgICAgICA8ZGl2CiAgICAgICAgICAgICAgICAgIGNsYXNzPSJzdWdnZXN0aW9uICR7Vj09PXRoaXMuaGlnaGxpZ2h0ZWRTdWdnZXN0aW9uSW5kZXg/ImhpZ2hsaWdodGVkIjoiIn0iCiAgICAgICAgICAgICAgICAgIEBtb3VzZWRvd249JHtIPT57SC5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuYWRkVGFnKFApfX0KICAgICAgICAgICAgICAgICAgQG1vdXNlZW50ZXI9JHsoKT0+dGhpcy5oaWdobGlnaHRlZFN1Z2dlc3Rpb25JbmRleD1WfQogICAgICAgICAgICAgICAgPgogICAgICAgICAgICAgICAgICAke1B9CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICBgKX0KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICBgOiIifQogICAgICAgIDwvZGl2PgoKICAgICAgICAke3RoaXMudmFsaWRhdGlvblRleHQ/U2AKICAgICAgICAgIDxkaXYgY2xhc3M9InZhbGlkYXRpb24tbWVzc2FnZSI+JHt0aGlzLnZhbGlkYXRpb25UZXh0fTwvZGl2PgogICAgICAgIGA6IiJ9CiAgICAgICAgCiAgICAgICAgJHt0aGlzLmRlc2NyaXB0aW9uP1NgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJkZXNjcmlwdGlvbiI+JHt0aGlzLmRlc2NyaXB0aW9ufTwvZGl2PgogICAgICAgIGA6IiJ9CiAgICAgIDwvZGl2PgogICAgYH1oYW5kbGVDb250YWluZXJDbGljayhfKXtpZih0aGlzLmRpc2FibGVkKXJldHVybjtsZXQgUD10aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoIi50YWctaW5wdXQiKTtQJiZfLnRhcmdldCE9PVAmJlAuZm9jdXMoKX1oYW5kbGVJbnB1dChfKXtsZXQgUD1fLnRhcmdldDtpZih0aGlzLmlucHV0VmFsdWU9UC52YWx1ZSx0aGlzLmlucHV0VmFsdWUuaW5jbHVkZXMoIiwiKXx8dGhpcy5pbnB1dFZhbHVlLmluY2x1ZGVzKCI7Iikpe2xldCBWPXRoaXMuaW5wdXRWYWx1ZS5yZXBsYWNlKC9bLDtdL2csIiIpLnRyaW0oKTtWJiZ0aGlzLmFkZFRhZyhWKX19aGFuZGxlS2V5RG93bihfKXtsZXQgUD1fLnRhcmdldDtpZihfLmtleT09PSJFbnRlciIpaWYoXy5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuaGlnaGxpZ2h0ZWRTdWdnZXN0aW9uSW5kZXg+PTAmJnRoaXMuc2hvd1N1Z2dlc3Rpb25zKXtsZXQgVj10aGlzLnN1Z2dlc3Rpb25zLmZpbHRlcihIPT4hdGhpcy52YWx1ZS5pbmNsdWRlcyhIKSYmSC50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHRoaXMuaW5wdXRWYWx1ZS50b0xvd2VyQ2FzZSgpKSk7Vlt0aGlzLmhpZ2hsaWdodGVkU3VnZ2VzdGlvbkluZGV4XSYmdGhpcy5hZGRUYWcoVlt0aGlzLmhpZ2hsaWdodGVkU3VnZ2VzdGlvbkluZGV4XSl9ZWxzZSB0aGlzLmlucHV0VmFsdWUudHJpbSgpJiZ0aGlzLmFkZFRhZyh0aGlzLmlucHV0VmFsdWUudHJpbSgpKTtlbHNlIGlmKF8ua2V5PT09IkJhY2tzcGFjZSImJiF0aGlzLmlucHV0VmFsdWUmJnRoaXMudmFsdWUubGVuZ3RoPjApdGhpcy5yZW1vdmVUYWcoXyx0aGlzLnZhbHVlW3RoaXMudmFsdWUubGVuZ3RoLTFdKTtlbHNlIGlmKF8ua2V5PT09IkFycm93RG93biImJnRoaXMuc2hvd1N1Z2dlc3Rpb25zKXtfLnByZXZlbnREZWZhdWx0KCk7bGV0IFY9dGhpcy5zdWdnZXN0aW9ucy5maWx0ZXIoSD0+IXRoaXMudmFsdWUuaW5jbHVkZXMoSCkmJkgudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyh0aGlzLmlucHV0VmFsdWUudG9Mb3dlckNhc2UoKSkpLmxlbmd0aDt0aGlzLmhpZ2hsaWdodGVkU3VnZ2VzdGlvbkluZGV4PU1hdGgubWluKHRoaXMuaGlnaGxpZ2h0ZWRTdWdnZXN0aW9uSW5kZXgrMSxWLTEpfWVsc2UgXy5rZXk9PT0iQXJyb3dVcCImJnRoaXMuc2hvd1N1Z2dlc3Rpb25zPyhfLnByZXZlbnREZWZhdWx0KCksdGhpcy5oaWdobGlnaHRlZFN1Z2dlc3Rpb25JbmRleD1NYXRoLm1heCh0aGlzLmhpZ2hsaWdodGVkU3VnZ2VzdGlvbkluZGV4LTEsMCkpOl8ua2V5PT09IkVzY2FwZSImJih0aGlzLnNob3dTdWdnZXN0aW9ucz0hMSx0aGlzLmhpZ2hsaWdodGVkU3VnZ2VzdGlvbkluZGV4PS0xKX1oYW5kbGVGb2N1cygpe3RoaXMuc3VnZ2VzdGlvbnMubGVuZ3RoPjAmJih0aGlzLnNob3dTdWdnZXN0aW9ucz0hMCl9aGFuZGxlQmx1cigpe3NldFRpbWVvdXQoKCk9Pnt0aGlzLnNob3dTdWdnZXN0aW9ucz0hMSx0aGlzLmhpZ2hsaWdodGVkU3VnZ2VzdGlvbkluZGV4PS0xfSwyMDApfWFkZFRhZyhfKXtpZighX3x8dGhpcy52YWx1ZS5pbmNsdWRlcyhfKXx8dGhpcy5tYXhUYWdzJiZ0aGlzLnZhbHVlLmxlbmd0aD49dGhpcy5tYXhUYWdzKXJldHVybjt0aGlzLnZhbHVlPVsuLi50aGlzLnZhbHVlLF9dLHRoaXMuaW5wdXRWYWx1ZT0iIix0aGlzLnNob3dTdWdnZXN0aW9ucz0hMSx0aGlzLmhpZ2hsaWdodGVkU3VnZ2VzdGlvbkluZGV4PS0xO2xldCBQPXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiLnRhZy1pbnB1dCIpO1AmJihQLnZhbHVlPSIiKSx0aGlzLmVtaXRDaGFuZ2UoKX1yZW1vdmVUYWcoXyxQKXtfLnN0b3BQcm9wYWdhdGlvbigpLHRoaXMudmFsdWU9dGhpcy52YWx1ZS5maWx0ZXIoVj0+ViE9PVApLHRoaXMuZW1pdENoYW5nZSgpfWVtaXRDaGFuZ2UoKXt0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJjaGFuZ2UiLHtkZXRhaWw6e3ZhbHVlOnRoaXMudmFsdWV9LGJ1YmJsZXM6ITAsY29tcG9zZWQ6ITB9KSksdGhpcy5jaGFuZ2VTdWJqZWN0Lm5leHQodGhpcyl9Z2V0VmFsdWUoKXtyZXR1cm4gdGhpcy52YWx1ZX1zZXRWYWx1ZShfKXt0aGlzLnZhbHVlPV98fFtdfWFzeW5jIHZhbGlkYXRlKCl7cmV0dXJuIHRoaXMucmVxdWlyZWQmJighdGhpcy52YWx1ZXx8dGhpcy52YWx1ZS5sZW5ndGg9PT0wKT8odGhpcy52YWxpZGF0aW9uVGV4dD0iQXQgbGVhc3Qgb25lIHRhZyBpcyByZXF1aXJlZCIsITEpOih0aGlzLnZhbGlkYXRpb25UZXh0PSIiLCEwKX1jb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyksbTEodGhpcyx5KX1zdGF0aWN7bTEoYSxyKX19O3JldHVybiBFPWF9KSgpfSk7dmFyIFMkcix6JHI9bCgoKT0+e1NlKCk7emEoKTt0MSgpO1U5KCk7czMoKTtUOCgpO1Mkcj0oKT0+U2AKICA8ZGVlcy1kZW1vd3JhcHBlcj4KICAgIDxzdHlsZT4KICAgICAgJHtsZWAKICAgICAgICAuZGVtby1jb250YWluZXIgewogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgICBnYXA6IDI0cHg7CiAgICAgICAgICBwYWRkaW5nOiAyNHB4OwogICAgICAgICAgbWF4LXdpZHRoOiAxMjAwcHg7CiAgICAgICAgICBtYXJnaW46IDAgYXV0bzsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgZGVlcy1wYW5lbCB7CiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNHB4OwogICAgICAgIH0KICAgICAgICAKICAgICAgICBkZWVzLXBhbmVsOmxhc3QtY2hpbGQgewogICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLmdyaWQtbGF5b3V0IHsKICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7CiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7CiAgICAgICAgICBnYXA6IDE2cHg7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkgewogICAgICAgICAgLmdyaWQtbGF5b3V0IHsKICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5vdXRwdXQtcHJldmlldyB7CiAgICAgICAgICBtYXJnaW4tdG9wOiAxNnB4OwogICAgICAgICAgcGFkZGluZzogMTZweDsKICAgICAgICAgIGJhY2tncm91bmQ6ICNmM2Y0ZjY7CiAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgICBjb2xvcjogIzM3NDE1MTsKICAgICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDsKICAgICAgICAgIG1heC1oZWlnaHQ6IDIwMHB4OwogICAgICAgICAgb3ZlcmZsb3cteTogYXV0bzsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykgewogICAgICAgICAgLm91dHB1dC1wcmV2aWV3IHsKICAgICAgICAgICAgYmFja2dyb3VuZDogIzJjMmMyYzsKICAgICAgICAgICAgY29sb3I6ICNlNGU0ZTc7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5mZWF0dXJlLW5vdGUgewogICAgICAgICAgbWFyZ2luLXRvcDogMTJweDsKICAgICAgICAgIHBhZGRpbmc6IDEycHg7CiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZWZmNmZmOwogICAgICAgICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCAjM2I4MmY2OwogICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgICAgZm9udC1zaXplOiAxM3B4OwogICAgICAgICAgY29sb3I6ICMxZTQwYWY7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHsKICAgICAgICAgIC5mZWF0dXJlLW5vdGUgewogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMWUzYTVmOwogICAgICAgICAgICBjb2xvcjogIzkzYzVmZDsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIGB9CiAgICA8L3N0eWxlPgogICAgCiAgICA8ZGl2IGNsYXNzPSJkZW1vLWNvbnRhaW5lciI+CiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyIxLiBCYXNpYyBMaXN0IElucHV0In0gLnN1YnRpdGxlPSR7IlNpbXBsZSBsaXN0IG1hbmFnZW1lbnQgd2l0aCBhZGQsIGVkaXQsIGFuZCBkZWxldGUifT4KICAgICAgICA8ZGVlcy1pbnB1dC1saXN0CiAgICAgICAgICAubGFiZWw9JHsiU2hvcHBpbmcgTGlzdCJ9CiAgICAgICAgICAucGxhY2Vob2xkZXI9JHsiQWRkIGl0ZW0gdG8geW91ciBsaXN0Li4uIn0KICAgICAgICAgIC52YWx1ZT0ke1siTWlsayIsIkJyZWFkIiwiRWdncyIsIkNoZWVzZSJdfQogICAgICAgICAgLmRlc2NyaXB0aW9uPSR7IkRvdWJsZS1jbGljayB0byBlZGl0IGl0ZW1zLCBvciB1c2UgdGhlIGVkaXQgYnV0dG9uIn0KICAgICAgICA+PC9kZWVzLWlucHV0LWxpc3Q+CiAgICAgICAgPGRpdiBjbGFzcz0iZmVhdHVyZS1ub3RlIj4KICAgICAgICAgIPCfkqEgRG91YmxlLWNsaWNrIGFueSBpdGVtIHRvIHF1aWNrbHkgZWRpdCBpdCBpbmxpbmUKICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgoKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IjIuIFNvcnRhYmxlIExpc3QifSAuc3VidGl0bGU9JHsiRHJhZyBhbmQgZHJvcCB0byByZW9yZGVyIGl0ZW1zIn0+CiAgICAgICAgPGRlZXMtaW5wdXQtbGlzdAogICAgICAgICAgLmxhYmVsPSR7IlRhc2sgUHJpb3JpdHkifQogICAgICAgICAgLnBsYWNlaG9sZGVyPSR7IkFkZCBhIHRhc2suLi4ifQogICAgICAgICAgLnNvcnRhYmxlPSR7ITB9CiAgICAgICAgICAudmFsdWU9JHtbIlJldmlldyBwdWxsIHJlcXVlc3RzIiwiRml4IGNyaXRpY2FsIGJ1ZyIsIlVwZGF0ZSBkb2N1bWVudGF0aW9uIiwiRGVwbG95IHRvIHByb2R1Y3Rpb24iLCJUZWFtIHN0YW5kdXAgbWVldGluZyJdfQogICAgICAgICAgLmRlc2NyaXB0aW9uPSR7IkRyYWcgaXRlbXMgdXNpbmcgdGhlIGhhbmRsZSB0byByZW9yZGVyIHRoZW0ifQogICAgICAgID48L2RlZXMtaW5wdXQtbGlzdD4KICAgICAgICA8ZGl2IGNsYXNzPSJmZWF0dXJlLW5vdGUiPgogICAgICAgICAg8J+UhCBEcmFnIHRoZSBncmlwIGhhbmRsZSB0byByZW9yZGVyIHRhc2tzIGJ5IHByaW9yaXR5CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGVlcy1wYW5lbD4KCiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyIzLiBWYWxpZGF0aW9uICYgQ29uc3RyYWludHMifSAuc3VidGl0bGU9JHsiTGlzdHMgd2l0aCBtaW5pbXVtL21heGltdW0gaXRlbXMgYW5kIGR1cGxpY2F0ZSBwcmV2ZW50aW9uIn0+CiAgICAgICAgPGRpdiBjbGFzcz0iZ3JpZC1sYXlvdXQiPgogICAgICAgICAgPGRlZXMtaW5wdXQtbGlzdAogICAgICAgICAgICAubGFiZWw9JHsiVGVhbSBNZW1iZXJzIChNaW4gMiwgTWF4IDUpIn0KICAgICAgICAgICAgLnBsYWNlaG9sZGVyPSR7IkFkZCB0ZWFtIG1lbWJlci4uLiJ9CiAgICAgICAgICAgIC5taW5JdGVtcz0kezJ9CiAgICAgICAgICAgIC5tYXhJdGVtcz0kezV9CiAgICAgICAgICAgIC52YWx1ZT0ke1siQWxpY2UiLCJCb2IiXX0KICAgICAgICAgICAgLnJlcXVpcmVkPSR7ITB9CiAgICAgICAgICAgIC5kZXNjcmlwdGlvbj0keyJBZGQgMi01IHRlYW0gbWVtYmVycyJ9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LWxpc3Q+CiAgICAgICAgICAKICAgICAgICAgIDxkZWVzLWlucHV0LWxpc3QKICAgICAgICAgICAgLmxhYmVsPSR7IlVuaXF1ZSBUYWdzIChObyBEdXBsaWNhdGVzKSJ9CiAgICAgICAgICAgIC5wbGFjZWhvbGRlcj0keyJBZGQgdW5pcXVlIHRhZy4uLiJ9CiAgICAgICAgICAgIC5hbGxvd0R1cGxpY2F0ZXM9JHshMX0KICAgICAgICAgICAgLnZhbHVlPSR7WyJmcm9udGVuZCIsImJhY2tlbmQiLCJkYXRhYmFzZSJdfQogICAgICAgICAgICAuZGVzY3JpcHRpb249JHsiRHVwbGljYXRlIGl0ZW1zIGFyZSBub3QgYWxsb3dlZCJ9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LWxpc3Q+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGVlcy1wYW5lbD4KCiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyI0LiBEZWxldGUgQ29uZmlybWF0aW9uIn0gLnN1YnRpdGxlPSR7IlJlcXVpcmUgY29uZmlybWF0aW9uIGJlZm9yZSBkZWxldGluZyBpdGVtcyJ9PgogICAgICAgIDxkZWVzLWlucHV0LWxpc3QKICAgICAgICAgIC5sYWJlbD0keyJJbXBvcnRhbnQgRG9jdW1lbnRzIn0KICAgICAgICAgIC5wbGFjZWhvbGRlcj0keyJBZGQgZG9jdW1lbnQgbmFtZS4uLiJ9CiAgICAgICAgICAuY29uZmlybURlbGV0ZT0keyEwfQogICAgICAgICAgLnZhbHVlPSR7WyJDb250cmFjdF8yMDI0LnBkZiIsIkZpbmFuY2lhbF9SZXBvcnRfUTMueGxzeCIsIlByb2plY3RfUHJvcG9zYWwuZG9jeCIsIk1lZXRpbmdfTm90ZXMudHh0Il19CiAgICAgICAgICAuZGVzY3JpcHRpb249JHsiRGVsZXRpb24gcmVxdWlyZXMgY29uZmlybWF0aW9uIGZvciBzYWZldHkifQogICAgICAgID48L2RlZXMtaW5wdXQtbGlzdD4KICAgICAgPC9kZWVzLXBhbmVsPgoKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IjUuIERpc2FibGVkIFN0YXRlIn0gLnN1YnRpdGxlPSR7IlJlYWQtb25seSBsaXN0IGRpc3BsYXkifT4KICAgICAgICA8ZGVlcy1pbnB1dC1saXN0CiAgICAgICAgICAubGFiZWw9JHsiU3lzdGVtIERlZmF1bHRzIn0KICAgICAgICAgIC52YWx1ZT0ke1siRGVmYXVsdCBTZXR0aW5nIDEiLCJEZWZhdWx0IFNldHRpbmcgMiIsIkRlZmF1bHQgU2V0dGluZyAzIl19CiAgICAgICAgICAuZGlzYWJsZWQ9JHshMH0KICAgICAgICAgIC5kZXNjcmlwdGlvbj0keyJUaGVzZSBpdGVtcyBjYW5ub3QgYmUgbW9kaWZpZWQifQogICAgICAgID48L2RlZXMtaW5wdXQtbGlzdD4KICAgICAgPC9kZWVzLXBhbmVsPgoKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IjYuIEZvcm0gSW50ZWdyYXRpb24ifSAuc3VidGl0bGU9JHsiTGlzdCBpbnB1dCB3b3JraW5nIHdpdGhpbiBhIGZvcm0gY29udGV4dCJ9PgogICAgICAgIDxkZWVzLWZvcm0+CiAgICAgICAgICA8ZGVlcy1pbnB1dC10ZXh0CiAgICAgICAgICAgIC5sYWJlbD0keyJSZWNpcGUgTmFtZSJ9CiAgICAgICAgICAgIC5wbGFjZWhvbGRlcj0keyJNeSBBbWF6aW5nIFJlY2lwZSJ9CiAgICAgICAgICAgIC5yZXF1aXJlZD0keyEwfQogICAgICAgICAgICAua2V5PSR7Im5hbWUifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC10ZXh0PgogICAgICAgICAgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJncmlkLWxheW91dCI+CiAgICAgICAgICAgIDxkZWVzLWlucHV0LWxpc3QKICAgICAgICAgICAgICAubGFiZWw9JHsiSW5ncmVkaWVudHMifQogICAgICAgICAgICAgIC5wbGFjZWhvbGRlcj0keyJBZGQgaW5ncmVkaWVudC4uLiJ9CiAgICAgICAgICAgICAgLnJlcXVpcmVkPSR7ITB9CiAgICAgICAgICAgICAgLm1pbkl0ZW1zPSR7M30KICAgICAgICAgICAgICAua2V5PSR7ImluZ3JlZGllbnRzIn0KICAgICAgICAgICAgICAuc29ydGFibGU9JHshMH0KICAgICAgICAgICAgICAudmFsdWU9JHtbIjIgY3VwcyBmbG91ciIsIjEgY3VwIHN1Z2FyIiwiMyBlZ2dzIl19CiAgICAgICAgICAgICAgLmRlc2NyaXB0aW9uPSR7IkFkZCBhdCBsZWFzdCAzIGluZ3JlZGllbnRzIn0KICAgICAgICAgICAgPjwvZGVlcy1pbnB1dC1saXN0PgogICAgICAgICAgICAKICAgICAgICAgICAgPGRlZXMtaW5wdXQtbGlzdAogICAgICAgICAgICAgIC5sYWJlbD0keyJJbnN0cnVjdGlvbnMifQogICAgICAgICAgICAgIC5wbGFjZWhvbGRlcj0keyJBZGQgaW5zdHJ1Y3Rpb24gc3RlcC4uLiJ9CiAgICAgICAgICAgICAgLnJlcXVpcmVkPSR7ITB9CiAgICAgICAgICAgICAgLm1pbkl0ZW1zPSR7Mn0KICAgICAgICAgICAgICAua2V5PSR7Imluc3RydWN0aW9ucyJ9CiAgICAgICAgICAgICAgLnNvcnRhYmxlPSR7ITB9CiAgICAgICAgICAgICAgLnZhbHVlPSR7WyJQcmVoZWF0IG92ZW4gdG8gMzUwXHhCMEYiLCJNaXggZHJ5IGluZ3JlZGllbnRzIl19CiAgICAgICAgICAgICAgLmRlc2NyaXB0aW9uPSR7IkFkZCBjb29raW5nIGluc3RydWN0aW9ucyBpbiBvcmRlciJ9CiAgICAgICAgICAgID48L2RlZXMtaW5wdXQtbGlzdD4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1pbnB1dC10ZXh0CiAgICAgICAgICAgIC5sYWJlbD0keyJOb3RlcyJ9CiAgICAgICAgICAgIC5pbnB1dFR5cGU9JHsidGV4dGFyZWEifQogICAgICAgICAgICAucGxhY2Vob2xkZXI9JHsiQW55IHNwZWNpYWwgbm90ZXMgb3IgdGlwcy4uLiJ9CiAgICAgICAgICAgIC5rZXk9JHsibm90ZXMifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC10ZXh0PgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1mb3JtLXN1Ym1pdCAudGV4dD0keyJTYXZlIFJlY2lwZSJ9PjwvZGVlcy1mb3JtLXN1Ym1pdD4KICAgICAgICA8L2RlZXMtZm9ybT4KICAgICAgPC9kZWVzLXBhbmVsPgoKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IjcuIEludGVyYWN0aXZlIERlbW8ifSAuc3VidGl0bGU9JHsiQnVpbGQgeW91ciBvd24gZmVhdHVyZSBsaXN0IGFuZCBzZWUgdGhlIGRhdGEifT4KICAgICAgICA8ZGVlcy1pbnB1dC1saXN0CiAgICAgICAgICBpZD0iaW50ZXJhY3RpdmUtbGlzdCIKICAgICAgICAgIC5sYWJlbD0keyJQcm9kdWN0IEZlYXR1cmVzIn0KICAgICAgICAgIC5wbGFjZWhvbGRlcj0keyJBZGQgYSBmZWF0dXJlLi4uIn0KICAgICAgICAgIC5zb3J0YWJsZT0keyEwfQogICAgICAgICAgLmNvbmZpcm1EZWxldGU9JHshMX0KICAgICAgICAgIC5hbGxvd0R1cGxpY2F0ZXM9JHshMX0KICAgICAgICAgIC5tYXhJdGVtcz0kezEwfQogICAgICAgICAgQGNoYW5nZT0ke2U9PntsZXQgdD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjbGlzdC1qc29uIik7aWYodCl7bGV0IHI9e2l0ZW1zOmUuZGV0YWlsLnZhbHVlLGNvdW50OmUuZGV0YWlsLnZhbHVlLmxlbmd0aCx0aW1lc3RhbXA6bmV3IERhdGUoKS50b0lTT1N0cmluZygpfTt0LnRleHRDb250ZW50PUpTT04uc3RyaW5naWZ5KHIsbnVsbCwyKX19fQogICAgICAgID48L2RlZXMtaW5wdXQtbGlzdD4KICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJvdXRwdXQtcHJldmlldyIgaWQ9Imxpc3QtanNvbiI+CiAgICAgICAgICB7CiAgICAgICAgICAgICJpdGVtcyI6IFtdLAogICAgICAgICAgICAiY291bnQiOiAwLAogICAgICAgICAgICAidGltZXN0YW1wIjogIiR7bmV3IERhdGUoKS50b0lTT1N0cmluZygpfSIKICAgICAgICAgIH0KICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJmZWF0dXJlLW5vdGUiPgogICAgICAgICAg4pyoIEFkZCwgZWRpdCwgcmVtb3ZlLCBhbmQgcmVvcmRlciBpdGVtcyB0byBzZWUgdGhlIEpTT04gb3V0cHV0IHVwZGF0ZSBpbiByZWFsLXRpbWUKICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgoKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IjguIEFkdmFuY2VkIENvbmZpZ3VyYXRpb24ifSAuc3VidGl0bGU9JHsiQ29tYmluZSBhbGwgZmVhdHVyZXMgZm9yIGNvbXBsZXggdXNlIGNhc2VzIn0+CiAgICAgICAgPGRlZXMtaW5wdXQtbGlzdAogICAgICAgICAgLmxhYmVsPSR7IlByb2plY3QgTWlsZXN0b25lcyJ9CiAgICAgICAgICAucGxhY2Vob2xkZXI9JHsiQWRkIG1pbGVzdG9uZS4uLiJ9CiAgICAgICAgICAudmFsdWU9JHtbIlByb2plY3QgS2lja29mZiAtIFdlZWsgMSIsIlJlcXVpcmVtZW50cyBHYXRoZXJpbmcgLSBXZWVrIDItMyIsIkRlc2lnbiBQaGFzZSAtIFdlZWsgNC02IiwiRGV2ZWxvcG1lbnQgU3ByaW50IDEgLSBXZWVrIDctOSIsIlRlc3RpbmcgJiBRQSAtIFdlZWsgMTAtMTEiLCJEZXBsb3ltZW50IC0gV2VlayAxMiJdfQogICAgICAgICAgLnNvcnRhYmxlPSR7ITB9CiAgICAgICAgICAuY29uZmlybURlbGV0ZT0keyEwfQogICAgICAgICAgLmFsbG93RHVwbGljYXRlcz0keyExfQogICAgICAgICAgLm1pbkl0ZW1zPSR7M30KICAgICAgICAgIC5tYXhJdGVtcz0kezEyfQogICAgICAgICAgLnJlcXVpcmVkPSR7ITB9CiAgICAgICAgICAuZGVzY3JpcHRpb249JHsiTWFuYWdlIHByb2plY3QgbWlsZXN0b25lcyAoMy0xMiBpdGVtcywgc29ydGFibGUsIG5vIGR1cGxpY2F0ZXMpIn0KICAgICAgICA+PC9kZWVzLWlucHV0LWxpc3Q+CiAgICAgIDwvZGVlcy1wYW5lbD4KCiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyI5LiBFbXB0eSBTdGF0ZSJ9IC5zdWJ0aXRsZT0keyJIb3cgdGhlIGNvbXBvbmVudCBsb29rcyB3aXRoIG5vIGl0ZW1zIn0+CiAgICAgICAgPGRlZXMtaW5wdXQtbGlzdAogICAgICAgICAgLmxhYmVsPSR7IllvdXIgSWRlYXMifQogICAgICAgICAgLnBsYWNlaG9sZGVyPSR7IlNoYXJlIHlvdXIgaWRlYXMuLi4ifQogICAgICAgICAgLnZhbHVlPSR7W119CiAgICAgICAgICAuZGVzY3JpcHRpb249JHsiU3RhcnQgYWRkaW5nIGl0ZW1zIHRvIGJ1aWxkIHlvdXIgbGlzdCJ9CiAgICAgICAgPjwvZGVlcy1pbnB1dC1saXN0PgogICAgICA8L2RlZXMtcGFuZWw+CiAgICA8L2Rpdj4KICA8L2RlZXMtZGVtb3dyYXBwZXI+CmB9KTt2YXIgcjEsdnIsVWxlLGZjdD1sKCgpPT57U2UoKTtQYSgpO2JyKCk7bzMoKTt6JHIoKTtvdCgpO3IxPWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sdnI9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LFVsZT0oKCk9PntsZXQgZT1bemUoImRlZXMtaW5wdXQtbGlzdCIpXSx0LHI9W10sYSxpPWh0LG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdLHUscD1bXSxoPVtdLGIseD1bXSxnPVtdLHYsdz1bXSxNPVtdLEYsQz1bXSxrPVtdLE4sJD1bXSxJPVtdLEIsej1bXSx5PVtdLEUsXz1bXSxQPVtdLFYsSD1bXSxXPVtdLGFlLFQ9W10sSj1bXSxmZSxMPVtdLFE9W10sa2UsRz1bXSxBPVtdLEQsUj1bXSxPPVtdLFksdWU9W10seWU9W10sJGUsVT1bXSxxPVtdLGllLHdlPVtdLGdlPVtdO3ZhciBBZT1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IHhlPXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO289W2ooe3R5cGU6QXJyYXl9KV0sYz1baih7dHlwZTpTdHJpbmd9KV0sdT1baih7dHlwZTpOdW1iZXJ9KV0sYj1baih7dHlwZTpOdW1iZXJ9KV0sdj1baih7dHlwZTpCb29sZWFufSldLEY9W2ooe3R5cGU6Qm9vbGVhbn0pXSxOPVtqKHt0eXBlOkJvb2xlYW59KV0sQj1baih7dHlwZTpTdHJpbmd9KV0sRT1bcmUoKV0sVj1bcmUoKV0sYWU9W3JlKCldLGZlPVtyZSgpXSxrZT1bcmUoKV0sRD1bcmUoKV0sWT1bcmUoKV0sJGU9W3JlKCldLGllPVtyZSgpXSxyMSh0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InZhbHVlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpuZT0+InZhbHVlImluIG5lLGdldDpuZT0+bmUudmFsdWUsc2V0OihuZSxMZSk9PntuZS52YWx1ZT1MZX19LG1ldGFkYXRhOnhlfSxuLHMpLHIxKHRoaXMsbnVsbCxjLHtraW5kOiJhY2Nlc3NvciIsbmFtZToicGxhY2Vob2xkZXIiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOm5lPT4icGxhY2Vob2xkZXIiaW4gbmUsZ2V0Om5lPT5uZS5wbGFjZWhvbGRlcixzZXQ6KG5lLExlKT0+e25lLnBsYWNlaG9sZGVyPUxlfX0sbWV0YWRhdGE6eGV9LGQsZikscjEodGhpcyxudWxsLHUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJtYXhJdGVtcyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6bmU9PiJtYXhJdGVtcyJpbiBuZSxnZXQ6bmU9Pm5lLm1heEl0ZW1zLHNldDoobmUsTGUpPT57bmUubWF4SXRlbXM9TGV9fSxtZXRhZGF0YTp4ZX0scCxoKSxyMSh0aGlzLG51bGwsYix7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im1pbkl0ZW1zIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpuZT0+Im1pbkl0ZW1zImluIG5lLGdldDpuZT0+bmUubWluSXRlbXMsc2V0OihuZSxMZSk9PntuZS5taW5JdGVtcz1MZX19LG1ldGFkYXRhOnhlfSx4LGcpLHIxKHRoaXMsbnVsbCx2LHtraW5kOiJhY2Nlc3NvciIsbmFtZToiYWxsb3dEdXBsaWNhdGVzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpuZT0+ImFsbG93RHVwbGljYXRlcyJpbiBuZSxnZXQ6bmU9Pm5lLmFsbG93RHVwbGljYXRlcyxzZXQ6KG5lLExlKT0+e25lLmFsbG93RHVwbGljYXRlcz1MZX19LG1ldGFkYXRhOnhlfSx3LE0pLHIxKHRoaXMsbnVsbCxGLHtraW5kOiJhY2Nlc3NvciIsbmFtZToic29ydGFibGUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOm5lPT4ic29ydGFibGUiaW4gbmUsZ2V0Om5lPT5uZS5zb3J0YWJsZSxzZXQ6KG5lLExlKT0+e25lLnNvcnRhYmxlPUxlfX0sbWV0YWRhdGE6eGV9LEMsaykscjEodGhpcyxudWxsLE4se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJjb25maXJtRGVsZXRlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpuZT0+ImNvbmZpcm1EZWxldGUiaW4gbmUsZ2V0Om5lPT5uZS5jb25maXJtRGVsZXRlLHNldDoobmUsTGUpPT57bmUuY29uZmlybURlbGV0ZT1MZX19LG1ldGFkYXRhOnhlfSwkLEkpLHIxKHRoaXMsbnVsbCxCLHtraW5kOiJhY2Nlc3NvciIsbmFtZToidmFsaWRhdGlvblRleHQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOm5lPT4idmFsaWRhdGlvblRleHQiaW4gbmUsZ2V0Om5lPT5uZS52YWxpZGF0aW9uVGV4dCxzZXQ6KG5lLExlKT0+e25lLnZhbGlkYXRpb25UZXh0PUxlfX0sbWV0YWRhdGE6eGV9LHoseSkscjEodGhpcyxudWxsLEUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJpbnB1dFZhbHVlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpuZT0+ImlucHV0VmFsdWUiaW4gbmUsZ2V0Om5lPT5uZS5pbnB1dFZhbHVlLHNldDoobmUsTGUpPT57bmUuaW5wdXRWYWx1ZT1MZX19LG1ldGFkYXRhOnhlfSxfLFApLHIxKHRoaXMsbnVsbCxWLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZWRpdGluZ0luZGV4IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpuZT0+ImVkaXRpbmdJbmRleCJpbiBuZSxnZXQ6bmU9Pm5lLmVkaXRpbmdJbmRleCxzZXQ6KG5lLExlKT0+e25lLmVkaXRpbmdJbmRleD1MZX19LG1ldGFkYXRhOnhlfSxILFcpLHIxKHRoaXMsbnVsbCxhZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImVkaXRpbmdWYWx1ZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6bmU9PiJlZGl0aW5nVmFsdWUiaW4gbmUsZ2V0Om5lPT5uZS5lZGl0aW5nVmFsdWUsc2V0OihuZSxMZSk9PntuZS5lZGl0aW5nVmFsdWU9TGV9fSxtZXRhZGF0YTp4ZX0sVCxKKSxyMSh0aGlzLG51bGwsZmUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJkcmFnZ2VkSW5kZXgiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOm5lPT4iZHJhZ2dlZEluZGV4ImluIG5lLGdldDpuZT0+bmUuZHJhZ2dlZEluZGV4LHNldDoobmUsTGUpPT57bmUuZHJhZ2dlZEluZGV4PUxlfX0sbWV0YWRhdGE6eGV9LEwsUSkscjEodGhpcyxudWxsLGtlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZHJhZ092ZXJJbmRleCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6bmU9PiJkcmFnT3ZlckluZGV4ImluIG5lLGdldDpuZT0+bmUuZHJhZ092ZXJJbmRleCxzZXQ6KG5lLExlKT0+e25lLmRyYWdPdmVySW5kZXg9TGV9fSxtZXRhZGF0YTp4ZX0sRyxBKSxyMSh0aGlzLG51bGwsRCx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImRyYWdTdGFydFkiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOm5lPT4iZHJhZ1N0YXJ0WSJpbiBuZSxnZXQ6bmU9Pm5lLmRyYWdTdGFydFksc2V0OihuZSxMZSk9PntuZS5kcmFnU3RhcnRZPUxlfX0sbWV0YWRhdGE6eGV9LFIsTykscjEodGhpcyxudWxsLFkse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJkcmFnQ3VycmVudFkiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOm5lPT4iZHJhZ0N1cnJlbnRZImluIG5lLGdldDpuZT0+bmUuZHJhZ0N1cnJlbnRZLHNldDoobmUsTGUpPT57bmUuZHJhZ0N1cnJlbnRZPUxlfX0sbWV0YWRhdGE6eGV9LHVlLHllKSxyMSh0aGlzLG51bGwsJGUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ0YXJnZXRJbmRleCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6bmU9PiJ0YXJnZXRJbmRleCJpbiBuZSxnZXQ6bmU9Pm5lLnRhcmdldEluZGV4LHNldDoobmUsTGUpPT57bmUudGFyZ2V0SW5kZXg9TGV9fSxtZXRhZGF0YTp4ZX0sVSxxKSxyMSh0aGlzLG51bGwsaWUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJpdGVtSGVpZ2h0IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpuZT0+Iml0ZW1IZWlnaHQiaW4gbmUsZ2V0Om5lPT5uZS5pdGVtSGVpZ2h0LHNldDoobmUsTGUpPT57bmUuaXRlbUhlaWdodD1MZX19LG1ldGFkYXRhOnhlfSx3ZSxnZSkscjEobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6eGV9LG51bGwsciksQWU9YT10LnZhbHVlLHhlJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnhlfSl9c3RhdGljIGRlbW89UyRyO3N0YXRpYyBkZW1vR3JvdXBzPVsiSW5wdXQiXTsjZT12cih0aGlzLG4sW10pO2dldCB2YWx1ZSgpe3JldHVybiB0aGlzLiNlfXNldCB2YWx1ZSh4ZSl7dGhpcy4jZT14ZX0jdD0odnIodGhpcyxzKSx2cih0aGlzLGQsIkFkZCBuZXcgaXRlbS4uLiIpKTtnZXQgcGxhY2Vob2xkZXIoKXtyZXR1cm4gdGhpcy4jdH1zZXQgcGxhY2Vob2xkZXIoeGUpe3RoaXMuI3Q9eGV9I3I9KHZyKHRoaXMsZiksdnIodGhpcyxwLDApKTtnZXQgbWF4SXRlbXMoKXtyZXR1cm4gdGhpcy4jcn1zZXQgbWF4SXRlbXMoeGUpe3RoaXMuI3I9eGV9I2E9KHZyKHRoaXMsaCksdnIodGhpcyx4LDApKTtnZXQgbWluSXRlbXMoKXtyZXR1cm4gdGhpcy4jYX1zZXQgbWluSXRlbXMoeGUpe3RoaXMuI2E9eGV9I2k9KHZyKHRoaXMsZyksdnIodGhpcyx3LCExKSk7Z2V0IGFsbG93RHVwbGljYXRlcygpe3JldHVybiB0aGlzLiNpfXNldCBhbGxvd0R1cGxpY2F0ZXMoeGUpe3RoaXMuI2k9eGV9I289KHZyKHRoaXMsTSksdnIodGhpcyxDLCExKSk7Z2V0IHNvcnRhYmxlKCl7cmV0dXJuIHRoaXMuI299c2V0IHNvcnRhYmxlKHhlKXt0aGlzLiNvPXhlfSNuPSh2cih0aGlzLGspLHZyKHRoaXMsJCwhMSkpO2dldCBjb25maXJtRGVsZXRlKCl7cmV0dXJuIHRoaXMuI259c2V0IGNvbmZpcm1EZWxldGUoeGUpe3RoaXMuI249eGV9I3M9KHZyKHRoaXMsSSksdnIodGhpcyx6LCIiKSk7Z2V0IHZhbGlkYXRpb25UZXh0KCl7cmV0dXJuIHRoaXMuI3N9c2V0IHZhbGlkYXRpb25UZXh0KHhlKXt0aGlzLiNzPXhlfSNsPSh2cih0aGlzLHkpLHZyKHRoaXMsXywiIikpO2dldCBpbnB1dFZhbHVlKCl7cmV0dXJuIHRoaXMuI2x9c2V0IGlucHV0VmFsdWUoeGUpe3RoaXMuI2w9eGV9I2M9KHZyKHRoaXMsUCksdnIodGhpcyxILC0xKSk7Z2V0IGVkaXRpbmdJbmRleCgpe3JldHVybiB0aGlzLiNjfXNldCBlZGl0aW5nSW5kZXgoeGUpe3RoaXMuI2M9eGV9I2Q9KHZyKHRoaXMsVyksdnIodGhpcyxULCIiKSk7Z2V0IGVkaXRpbmdWYWx1ZSgpe3JldHVybiB0aGlzLiNkfXNldCBlZGl0aW5nVmFsdWUoeGUpe3RoaXMuI2Q9eGV9I3U9KHZyKHRoaXMsSiksdnIodGhpcyxMLC0xKSk7Z2V0IGRyYWdnZWRJbmRleCgpe3JldHVybiB0aGlzLiN1fXNldCBkcmFnZ2VkSW5kZXgoeGUpe3RoaXMuI3U9eGV9I2Y9KHZyKHRoaXMsUSksdnIodGhpcyxHLC0xKSk7Z2V0IGRyYWdPdmVySW5kZXgoKXtyZXR1cm4gdGhpcy4jZn1zZXQgZHJhZ092ZXJJbmRleCh4ZSl7dGhpcy4jZj14ZX0jcD0odnIodGhpcyxBKSx2cih0aGlzLFIsMCkpO2dldCBkcmFnU3RhcnRZKCl7cmV0dXJuIHRoaXMuI3B9c2V0IGRyYWdTdGFydFkoeGUpe3RoaXMuI3A9eGV9I2g9KHZyKHRoaXMsTyksdnIodGhpcyx1ZSwwKSk7Z2V0IGRyYWdDdXJyZW50WSgpe3JldHVybiB0aGlzLiNofXNldCBkcmFnQ3VycmVudFkoeGUpe3RoaXMuI2g9eGV9I209KHZyKHRoaXMseWUpLHZyKHRoaXMsVSwtMSkpO2dldCB0YXJnZXRJbmRleCgpe3JldHVybiB0aGlzLiNtfXNldCB0YXJnZXRJbmRleCh4ZSl7dGhpcy4jbT14ZX0jZz0odnIodGhpcyxxKSx2cih0aGlzLHdlLDApKTtnZXQgaXRlbUhlaWdodCgpe3JldHVybiB0aGlzLiNnfXNldCBpdGVtSGVpZ2h0KHhlKXt0aGlzLiNnPXhlfWJvdW5kSGFuZGxlR2xvYmFsRHJhZ092ZXI9KHZyKHRoaXMsZ2UpLG51bGwpO2JvdW5kSGFuZGxlR2xvYmFsRHJhZ0VuZD1udWxsO29yaWdpbmFsSXRlbVJlY3RzPVtdO3N0YXRpYyBzdHlsZXM9W1BlLC4uLmh0LmJhc2VTdHlsZXMsbS5kZWZhdWx0U3R5bGVzLGxlYAogICAgICAvKiBUT0RPOiBNaWdyYXRlIGhhcmRjb2RlZCB2YWx1ZXMgdG8gLS1kZWVzLSogQ1NTIHZhcmlhYmxlcyAqLwogICAgICA6aG9zdCB7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgJ1NlZ29lIFVJJywgJ1JvYm90bycsIHNhbnMtc2VyaWY7CiAgICAgIH0KCiAgICAgIC5pbnB1dC13cmFwcGVyIHsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgfQoKICAgICAgLmxpc3QtY29udGFpbmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTAwJSkiLCJoc2woMCAwJSAzLjklKSIpfTsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICB9CgogICAgICAubGlzdC1jb250YWluZXI6aG92ZXI6bm90KC5kaXNhYmxlZCkgewogICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDc5LjglKSIsImhzbCgwIDAlIDIwLjklKSIpfTsKICAgICAgfQoKICAgICAgLmxpc3QtY29udGFpbmVyOmZvY3VzLXdpdGhpbiB7CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIyMi4yIDQ3LjQlIDUxLjIlKSIsImhzbCgyMTcuMiA5MS4yJSA1OS44JSkiKX07CiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgM3B4ICR7bS5iZFRoZW1lKCJoc2woMjIyLjIgNDcuNCUgNTEuMiUgLyAwLjEpIiwiaHNsKDIxNy4yIDkxLjIlIDU5LjglIC8gMC4xKSIpfTsKICAgICAgfQoKICAgICAgLmxpc3QtY29udGFpbmVyLmRpc2FibGVkIHsKICAgICAgICBvcGFjaXR5OiAwLjY7CiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsKICAgICAgfQoKICAgICAgLmxpc3QtaXRlbXMgewogICAgICAgIG1heC1oZWlnaHQ6IDQwMHB4OwogICAgICAgIG92ZXJmbG93LXk6IGF1dG87CiAgICAgIH0KCiAgICAgIC5saXN0LWl0ZW0gewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDhweDsKICAgICAgICBwYWRkaW5nOiAxMnB4IDE2cHg7CiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OS44JSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDEwMCUpIiwiaHNsKDAgMCUgMy45JSkiKX07CiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZSwgYmFja2dyb3VuZCAwLjE1cyBlYXNlLCBib3gtc2hhZG93IDAuMTVzIGVhc2U7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47IC8qIFByZXZlbnQgYW5pbWF0aW9uIGZyb20gYWZmZWN0aW5nIHNjcm9sbCBib3VuZHMgKi8KICAgICAgfQoKICAgICAgLmxpc3QtaXRlbTpsYXN0LW9mLXR5cGUgewogICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7CiAgICAgIH0KCiAgICAgIC5saXN0LWl0ZW1zOm5vdCguaXMtZHJhZ2dpbmcpIC5saXN0LWl0ZW06aG92ZXI6bm90KC5kaXNhYmxlZCkgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5Ny41JSkiLCJoc2woMCAwJSA2LjklKSIpfTsKICAgICAgfQoKICAgICAgLyogRHJhZ2dpbmcgaXRlbSAtIGZvbGxvd3MgY3Vyc29yICovCiAgICAgIC5saXN0LWl0ZW0uZHJhZ2dpbmcgewogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICB6LWluZGV4OiAxMDA7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTAgNDAlIDk4JSkiLCJoc2woMjE1IDIwLjIlIDEyJSkiKX07CiAgICAgICAgYm94LXNoYWRvdzogMCA0cHggMTJweCAke20uYmRUaGVtZSgicmdiYSgwLCAwLCAwLCAwLjE1KSIsInJnYmEoMCwgMCwgMCwgMC40KSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjE1cyBlYXNlLCBiYWNrZ3JvdW5kIDAuMTVzIGVhc2U7CiAgICAgIH0KCiAgICAgIC8qIEl0ZW1zIHRoYXQgbmVlZCB0byBtb3ZlIHVwIHRvIG1ha2Ugc3BhY2UgKi8KICAgICAgLmxpc3QtaXRlbS5tb3ZlLXVwIHsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoY2FsYygtMSAqIHZhcigtLWl0ZW0taGVpZ2h0LCA0OHB4KSkpOwogICAgICB9CgogICAgICAvKiBJdGVtcyB0aGF0IG5lZWQgdG8gbW92ZSBkb3duIHRvIG1ha2Ugc3BhY2UgKi8KICAgICAgLmxpc3QtaXRlbS5tb3ZlLWRvd24gewogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSh2YXIoLS1pdGVtLWhlaWdodCwgNDhweCkpOwogICAgICB9CgoKICAgICAgLmRyYWctaGFuZGxlIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgY3Vyc29yOiBtb3ZlOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNjMuOSUpIiwiaHNsKDAgMCUgNDUuMSUpIil9OwogICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2U7CiAgICAgIH0KCiAgICAgIC5kcmFnLWhhbmRsZTpob3ZlciB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA0NS4xJSkiLCJoc2woMCAwJSA2My45JSkiKX07CiAgICAgIH0KCiAgICAgIC5kcmFnLWhhbmRsZSBkZWVzLWljb24gewogICAgICAgIHdpZHRoOiAxNnB4OwogICAgICAgIGhlaWdodDogMTZweDsKICAgICAgfQoKICAgICAgLml0ZW0tY29udGVudCB7CiAgICAgICAgZmxleDogMTsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgbWluLXdpZHRoOiAwOwogICAgICB9CgogICAgICAuaXRlbS10ZXh0IHsKICAgICAgICBmbGV4OiAxOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOSUpIiwiaHNsKDAgMCUgOTUlKSIpfTsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7CiAgICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDsKICAgICAgfQoKICAgICAgLml0ZW0tZWRpdC1pbnB1dCB7CiAgICAgICAgZmxleDogMTsKICAgICAgICBwYWRkaW5nOiA0cHggOHB4OwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTAwJSkiLCJoc2woMCAwJSA5JSkiKX07CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgyMjIuMiA0Ny40JSA1MS4yJSkiLCJoc2woMjE3LjIgOTEuMiUgNTkuOCUpIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgICBvdXRsaW5lOiBub25lOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOSUpIiwiaHNsKDAgMCUgOTUlKSIpfTsKICAgICAgfQoKICAgICAgLml0ZW0tYWN0aW9ucyB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBnYXA6IDRweDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICB9CgogICAgICAuYWN0aW9uLWJ1dHRvbiB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIHdpZHRoOiAyOHB4OwogICAgICAgIGhlaWdodDogMjhweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgICAgYm9yZGVyOiBub25lOwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDQ1LjElKSIsImhzbCgwIDAlIDYzLjklKSIpfTsKICAgICAgfQoKICAgICAgLmFjdGlvbi1idXR0b246aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5NS4xJSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5JSkiLCJoc2woMCAwJSA5NSUpIil9OwogICAgICB9CgogICAgICAuYWN0aW9uLWJ1dHRvbi5zYXZlIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgxNDIuMSA3Ni4yJSAzNi4zJSkiLCJoc2woMTQyLjEgNzAuNiUgNDUuMyUpIil9OwogICAgICB9CgogICAgICAuYWN0aW9uLWJ1dHRvbi5zYXZlOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDE0Mi4xIDc2LjIlIDM2LjMlIC8gMC4xKSIsImhzbCgxNDIuMSA3MC42JSA0NS4zJSAvIDAuMSkiKX07CiAgICAgIH0KCiAgICAgIC5hY3Rpb24tYnV0dG9uLmNhbmNlbCB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCA3Mi4yJSA1MC42JSkiLCJoc2woMCA2Mi44JSA1MC42JSkiKX07CiAgICAgIH0KCiAgICAgIC5hY3Rpb24tYnV0dG9uLmNhbmNlbDpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDcyLjIlIDUwLjYlIC8gMC4xKSIsImhzbCgwIDYyLjglIDUwLjYlIC8gMC4xKSIpfTsKICAgICAgfQoKICAgICAgLmFjdGlvbi1idXR0b24uZGVsZXRlIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDcyLjIlIDUwLjYlKSIsImhzbCgwIDYyLjglIDUwLjYlKSIpfTsKICAgICAgfQoKICAgICAgLmFjdGlvbi1idXR0b24uZGVsZXRlOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgNzIuMiUgNTAuNiUgLyAwLjEpIiwiaHNsKDAgNjIuOCUgNTAuNiUgLyAwLjEpIil9OwogICAgICB9CgogICAgICAuYWN0aW9uLWJ1dHRvbiBkZWVzLWljb24gewogICAgICAgIHdpZHRoOiAxNHB4OwogICAgICAgIGhlaWdodDogMTRweDsKICAgICAgfQoKICAgICAgLmFkZC1pdGVtLWNvbnRhaW5lciB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBnYXA6IDhweDsKICAgICAgICBwYWRkaW5nOiAxMnB4IDE2cHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk3LjUlKSIsImhzbCgwIDAlIDYuOSUpIil9OwogICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICB9CgogICAgICAuYWRkLWlucHV0IHsKICAgICAgICBmbGV4OiAxOwogICAgICAgIHBhZGRpbmc6IDhweCAxMnB4OwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTAwJSkiLCJoc2woMCAwJSA5JSkiKX07CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgwIDAlIDg5LjglKSIsImhzbCgwIDAlIDE0LjklKSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgb3V0bGluZTogbm9uZTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDklKSIsImhzbCgwIDAlIDk1JSkiKX07CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgIH0KCiAgICAgIC5hZGQtaW5wdXQ6Zm9jdXMgewogICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMjIuMiA0Ny40JSA1MS4yJSkiLCJoc2woMjE3LjIgOTEuMiUgNTkuOCUpIil9OwogICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCAke20uYmRUaGVtZSgiaHNsKDIyMi4yIDQ3LjQlIDUxLjIlIC8gMC4xKSIsImhzbCgyMTcuMiA5MS4yJSA1OS44JSAvIDAuMSkiKX07CiAgICAgIH0KCiAgICAgIC5hZGQtaW5wdXQ6OnBsYWNlaG9sZGVyIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDYzLjklKSIsImhzbCgwIDAlIDQ1LjElKSIpfTsKICAgICAgfQoKICAgICAgLmFkZC1pbnB1dDpkaXNhYmxlZCB7CiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsKICAgICAgICBvcGFjaXR5OiAwLjU7CiAgICAgIH0KCiAgICAgIC5hZGQtYnV0dG9uIHsKICAgICAgICBwYWRkaW5nOiA4cHggMTZweDsKICAgICAgfQoKICAgICAgLmVtcHR5LXN0YXRlIHsKICAgICAgICBwYWRkaW5nOiAzMnB4IDE2cHg7CiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNjMuOSUpIiwiaHNsKDAgMCUgNDUuMSUpIil9OwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7CiAgICAgIH0KCiAgICAgIC52YWxpZGF0aW9uLW1lc3NhZ2UgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgNzIuMiUgNTAuNiUpIiwiaHNsKDAgNjIuOCUgMzAuNiUpIil9OwogICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICBtYXJnaW4tdG9wOiA2cHg7CiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTsKICAgICAgfQoKICAgICAgLmRlc2NyaXB0aW9uIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuNCAxNi4zJSA1Ni45JSkiLCJoc2woMjE1IDIwLjIlIDU1LjElKSIpfTsKICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgbWFyZ2luLXRvcDogNnB4OwogICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7CiAgICAgIH0KCiAgICAgIC8qIFNjcm9sbGJhciBzdHlsaW5nICovCiAgICAgIC5saXN0LWl0ZW1zOjotd2Via2l0LXNjcm9sbGJhciB7CiAgICAgICAgd2lkdGg6IDhweDsKICAgICAgfQoKICAgICAgLmxpc3QtaXRlbXM6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgfQoKICAgICAgLmxpc3QtaXRlbXM6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMjQuOSUpIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgfQoKICAgICAgLmxpc3QtaXRlbXM6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNzkuOCUpIiwiaHNsKDAgMCUgMzQuOSUpIil9OwogICAgICB9CgogICAgICAvKiBEaXNhYmxlIHRyYW5zaXRpb25zIGR1cmluZyBkcm9wIHRvIHByZXZlbnQgZmxhc2ggKi8KICAgICAgLmxpc3QtaXRlbXMuZHJvcHBpbmcgLmxpc3QtaXRlbSB7CiAgICAgICAgdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50OwogICAgICB9CiAgICBgXTtyZW5kZXIoKXtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0iaW5wdXQtd3JhcHBlciI+CiAgICAgICAgJHt0aGlzLmxhYmVsP1NgPGRlZXMtbGFiZWwgLmxhYmVsPSR7dGhpcy5sYWJlbH0gLnJlcXVpcmVkPSR7dGhpcy5yZXF1aXJlZH0+PC9kZWVzLWxhYmVsPmA6IiJ9CiAgICAgICAgCiAgICAgICAgPGRpdiBjbGFzcz0ibGlzdC1jb250YWluZXIgJHt0aGlzLmRpc2FibGVkPyJkaXNhYmxlZCI6IiJ9Ij4KICAgICAgICAgIDxkaXYgY2xhc3M9Imxpc3QtaXRlbXMiPgogICAgICAgICAgICAke3RoaXMudmFsdWUubGVuZ3RoPjA/dGhpcy52YWx1ZS5tYXAoKHhlLG5lKT0+U2AKICAgICAgICAgICAgICA8ZGl2CiAgICAgICAgICAgICAgICBjbGFzcz0ibGlzdC1pdGVtICR7dGhpcy5kcmFnZ2VkSW5kZXg9PT1uZT8iZHJhZ2dpbmciOiIifSIKICAgICAgICAgICAgICAgIGRyYWdnYWJsZT0iJHt0aGlzLnNvcnRhYmxlJiYhdGhpcy5kaXNhYmxlZH0iCiAgICAgICAgICAgICAgICBAZHJhZ3N0YXJ0PSR7TGU9PnRoaXMuaGFuZGxlRHJhZ1N0YXJ0KExlLG5lKX0KICAgICAgICAgICAgICAgIEBkcmFnZW5kPSR7dGhpcy5oYW5kbGVEcmFnRW5kfQogICAgICAgICAgICAgICAgQGRyYWdvdmVyPSR7TGU9PnRoaXMuaGFuZGxlRHJhZ092ZXIoTGUsbmUpfQogICAgICAgICAgICAgICAgQGRyb3A9JHtMZT0+dGhpcy5oYW5kbGVEcm9wKExlLG5lKX0KICAgICAgICAgICAgICA+CiAgICAgICAgICAgICAgICAke3RoaXMuc29ydGFibGUmJiF0aGlzLmRpc2FibGVkP1NgCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRyYWctaGFuZGxlIj4KICAgICAgICAgICAgICAgICAgICA8ZGVlcy1pY29uIC5pY29uPSR7Imx1Y2lkZTpncmlwVmVydGljYWwifT48L2RlZXMtaWNvbj4KICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICBgOiIifQogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpdGVtLWNvbnRlbnQiPgogICAgICAgICAgICAgICAgICAke3RoaXMuZWRpdGluZ0luZGV4PT09bmU/U2AKICAgICAgICAgICAgICAgICAgICA8aW5wdXQKICAgICAgICAgICAgICAgICAgICAgIHR5cGU9InRleHQiCiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0iaXRlbS1lZGl0LWlucHV0IgogICAgICAgICAgICAgICAgICAgICAgLnZhbHVlPSR7dGhpcy5lZGl0aW5nVmFsdWV9CiAgICAgICAgICAgICAgICAgICAgICBAaW5wdXQ9JHtMZT0+dGhpcy5lZGl0aW5nVmFsdWU9TGUudGFyZ2V0LnZhbHVlfQogICAgICAgICAgICAgICAgICAgICAgQGtleWRvd249JHtMZT0+dGhpcy5oYW5kbGVFZGl0S2V5RG93bihMZSxuZSl9CiAgICAgICAgICAgICAgICAgICAgICBAYmx1cj0keygpPT50aGlzLnNhdmVFZGl0KG5lKX0KICAgICAgICAgICAgICAgICAgICAvPgogICAgICAgICAgICAgICAgICBgOlNgCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaXRlbS10ZXh0IiBAZGJsY2xpY2s9JHsoKT0+IXRoaXMuZGlzYWJsZWQmJnRoaXMuc3RhcnRFZGl0KG5lKX0+CiAgICAgICAgICAgICAgICAgICAgICAke3hlfQogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICBgfQogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Iml0ZW0tYWN0aW9ucyI+CiAgICAgICAgICAgICAgICAgICR7dGhpcy5lZGl0aW5nSW5kZXg9PT1uZT9TYAogICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImFjdGlvbi1idXR0b24gc2F2ZSIgQGNsaWNrPSR7KCk9PnRoaXMuc2F2ZUVkaXQobmUpfT4KICAgICAgICAgICAgICAgICAgICAgIDxkZWVzLWljb24gLmljb249JHsibHVjaWRlOmNoZWNrIn0+PC9kZWVzLWljb24+CiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYWN0aW9uLWJ1dHRvbiBjYW5jZWwiIEBjbGljaz0keygpPT50aGlzLmNhbmNlbEVkaXQoKX0+CiAgICAgICAgICAgICAgICAgICAgICA8ZGVlcy1pY29uIC5pY29uPSR7Imx1Y2lkZTp4In0+PC9kZWVzLWljb24+CiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgICAgIGA6U2AKICAgICAgICAgICAgICAgICAgICAke3RoaXMuZGlzYWJsZWQ/IiI6U2AKICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImFjdGlvbi1idXR0b24iIEBjbGljaz0keygpPT50aGlzLnN0YXJ0RWRpdChuZSl9PgogICAgICAgICAgICAgICAgICAgICAgICA8ZGVlcy1pY29uIC5pY29uPSR7Imx1Y2lkZTpwZW5jaWwifT48L2RlZXMtaWNvbj4KICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYWN0aW9uLWJ1dHRvbiBkZWxldGUiIEBjbGljaz0keygpPT50aGlzLnJlbW92ZUl0ZW0obmUpfT4KICAgICAgICAgICAgICAgICAgICAgICAgPGRlZXMtaWNvbiAuaWNvbj0keyJsdWNpZGU6dHJhc2gyIn0+PC9kZWVzLWljb24+CiAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgICBgfQogICAgICAgICAgICAgICAgICBgfQogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIGApOlNgCiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZW1wdHktc3RhdGUiPgogICAgICAgICAgICAgICAgTm8gaXRlbXMgYWRkZWQgeWV0CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIGB9CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIAogICAgICAgICAgJHshdGhpcy5kaXNhYmxlZCYmKCF0aGlzLm1heEl0ZW1zfHx0aGlzLnZhbHVlLmxlbmd0aDx0aGlzLm1heEl0ZW1zKT9TYAogICAgICAgICAgICA8ZGl2IGNsYXNzPSJhZGQtaXRlbS1jb250YWluZXIiPgogICAgICAgICAgICAgIDxpbnB1dAogICAgICAgICAgICAgICAgdHlwZT0idGV4dCIKICAgICAgICAgICAgICAgIGNsYXNzPSJhZGQtaW5wdXQiCiAgICAgICAgICAgICAgICAucGxhY2Vob2xkZXI9JHt0aGlzLnBsYWNlaG9sZGVyfQogICAgICAgICAgICAgICAgLnZhbHVlPSR7dGhpcy5pbnB1dFZhbHVlfQogICAgICAgICAgICAgICAgQGlucHV0PSR7dGhpcy5oYW5kbGVJbnB1dH0KICAgICAgICAgICAgICAgIEBrZXlkb3duPSR7dGhpcy5oYW5kbGVBZGRLZXlEb3dufQogICAgICAgICAgICAgICAgP2Rpc2FibGVkPSR7dGhpcy5kaXNhYmxlZH0KICAgICAgICAgICAgICAvPgogICAgICAgICAgICAgIDxkZWVzLWJ1dHRvbgogICAgICAgICAgICAgICAgY2xhc3M9ImFkZC1idXR0b24iCiAgICAgICAgICAgICAgICBAY2xpY2s9JHt0aGlzLmFkZEl0ZW19CiAgICAgICAgICAgICAgICA/ZGlzYWJsZWQ9JHshdGhpcy5pbnB1dFZhbHVlLnRyaW0oKX0KICAgICAgICAgICAgICA+CiAgICAgICAgICAgICAgICA8ZGVlcy1pY29uIC5pY29uPSR7Imx1Y2lkZTpwbHVzIn0+PC9kZWVzLWljb24+IEFkZAogICAgICAgICAgICAgIDwvZGVlcy1idXR0b24+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgYDoiIn0KICAgICAgICA8L2Rpdj4KCiAgICAgICAgJHt0aGlzLnZhbGlkYXRpb25UZXh0P1NgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJ2YWxpZGF0aW9uLW1lc3NhZ2UiPiR7dGhpcy52YWxpZGF0aW9uVGV4dH08L2Rpdj4KICAgICAgICBgOiIifQogICAgICAgIAogICAgICAgICR7dGhpcy5kZXNjcmlwdGlvbj9TYAogICAgICAgICAgPGRpdiBjbGFzcz0iZGVzY3JpcHRpb24iPiR7dGhpcy5kZXNjcmlwdGlvbn08L2Rpdj4KICAgICAgICBgOiIifQogICAgICA8L2Rpdj4KICAgIGB9aGFuZGxlSW5wdXQoeGUpe3RoaXMuaW5wdXRWYWx1ZT14ZS50YXJnZXQudmFsdWV9aGFuZGxlQWRkS2V5RG93bih4ZSl7eGUua2V5PT09IkVudGVyIiYmdGhpcy5pbnB1dFZhbHVlLnRyaW0oKSYmKHhlLnByZXZlbnREZWZhdWx0KCksdGhpcy5hZGRJdGVtKCkpfWhhbmRsZUVkaXRLZXlEb3duKHhlLG5lKXt4ZS5rZXk9PT0iRW50ZXIiPyh4ZS5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuc2F2ZUVkaXQobmUpKTp4ZS5rZXk9PT0iRXNjYXBlIiYmKHhlLnByZXZlbnREZWZhdWx0KCksdGhpcy5jYW5jZWxFZGl0KCkpfWFkZEl0ZW0oKXtsZXQgeGU9dGhpcy5pbnB1dFZhbHVlLnRyaW0oKTtpZigheGUpcmV0dXJuO2lmKCF0aGlzLmFsbG93RHVwbGljYXRlcyYmdGhpcy52YWx1ZS5pbmNsdWRlcyh4ZSkpe3RoaXMudmFsaWRhdGlvblRleHQ9IlRoaXMgaXRlbSBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgbGlzdCIsc2V0VGltZW91dCgoKT0+dGhpcy52YWxpZGF0aW9uVGV4dD0iIiwzZTMpO3JldHVybn1pZih0aGlzLm1heEl0ZW1zJiZ0aGlzLnZhbHVlLmxlbmd0aD49dGhpcy5tYXhJdGVtcyl7dGhpcy52YWxpZGF0aW9uVGV4dD1gTWF4aW11bSAke3RoaXMubWF4SXRlbXN9IGl0ZW1zIGFsbG93ZWRgLHNldFRpbWVvdXQoKCk9PnRoaXMudmFsaWRhdGlvblRleHQ9IiIsM2UzKTtyZXR1cm59dGhpcy52YWx1ZT1bLi4udGhpcy52YWx1ZSx4ZV0sdGhpcy5pbnB1dFZhbHVlPSIiLHRoaXMudmFsaWRhdGlvblRleHQ9IiI7bGV0IG5lPXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiLmFkZC1pbnB1dCIpO25lJiYobmUudmFsdWU9IiIsbmUuZm9jdXMoKSksdGhpcy5lbWl0Q2hhbmdlKCl9c3RhcnRFZGl0KHhlKXt0aGlzLmVkaXRpbmdJbmRleD14ZSx0aGlzLmVkaXRpbmdWYWx1ZT10aGlzLnZhbHVlW3hlXSx0aGlzLnVwZGF0ZUNvbXBsZXRlLnRoZW4oKCk9PntsZXQgbmU9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCIuaXRlbS1lZGl0LWlucHV0Iik7bmUmJihuZS5mb2N1cygpLG5lLnNlbGVjdCgpKX0pfXNhdmVFZGl0KHhlKXtsZXQgbmU9dGhpcy5lZGl0aW5nVmFsdWUudHJpbSgpO2lmKCFuZSl7dGhpcy5jYW5jZWxFZGl0KCk7cmV0dXJufWlmKCF0aGlzLmFsbG93RHVwbGljYXRlcyYmbmUhPT10aGlzLnZhbHVlW3hlXSYmdGhpcy52YWx1ZS5pbmNsdWRlcyhuZSkpe3RoaXMudmFsaWRhdGlvblRleHQ9IlRoaXMgaXRlbSBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgbGlzdCIsc2V0VGltZW91dCgoKT0+dGhpcy52YWxpZGF0aW9uVGV4dD0iIiwzZTMpO3JldHVybn1sZXQgTGU9Wy4uLnRoaXMudmFsdWVdO0xlW3hlXT1uZSx0aGlzLnZhbHVlPUxlLHRoaXMuZWRpdGluZ0luZGV4PS0xLHRoaXMuZWRpdGluZ1ZhbHVlPSIiLHRoaXMudmFsaWRhdGlvblRleHQ9IiIsdGhpcy5lbWl0Q2hhbmdlKCl9Y2FuY2VsRWRpdCgpe3RoaXMuZWRpdGluZ0luZGV4PS0xLHRoaXMuZWRpdGluZ1ZhbHVlPSIifWFzeW5jIHJlbW92ZUl0ZW0oeGUpe3RoaXMuY29uZmlybURlbGV0ZSYmIWF3YWl0IHRoaXMuc2hvd0NvbmZpcm1EaWFsb2coYERlbGV0ZSAiJHt0aGlzLnZhbHVlW3hlXX0iP2ApfHwodGhpcy52YWx1ZT10aGlzLnZhbHVlLmZpbHRlcigobmUsTGUpPT5MZSE9PXhlKSx0aGlzLmVtaXRDaGFuZ2UoKSl9YXN5bmMgc2hvd0NvbmZpcm1EaWFsb2coeGUpe3JldHVybiBjb25maXJtKHhlKX1oYW5kbGVEcmFnU3RhcnQoeGUsbmUpe2lmKCF0aGlzLnNvcnRhYmxlfHx0aGlzLmRpc2FibGVkKXJldHVybjt0aGlzLmRyYWdnZWRJbmRleD1uZSx0aGlzLnRhcmdldEluZGV4PW5lLHhlLmRhdGFUcmFuc2Zlci5lZmZlY3RBbGxvd2VkPSJtb3ZlIix4ZS5kYXRhVHJhbnNmZXIuc2V0RGF0YSgidGV4dC9wbGFpbiIsbmUudG9TdHJpbmcoKSk7bGV0IExlPW5ldyBJbWFnZTtMZS5zcmM9ImRhdGE6aW1hZ2UvZ2lmO2Jhc2U2NCxSMGxHT0RsaEFRQUJBSUFBQUFVRUJBQUFBQ3dBQUFBQUFRQUJBQUFDQWtRQkFEcz0iLHhlLmRhdGFUcmFuc2Zlci5zZXREcmFnSW1hZ2UoTGUsMCwwKSx0aGlzLmRyYWdTdGFydFk9eGUuY2xpZW50WSx0aGlzLmRyYWdDdXJyZW50WT14ZS5jbGllbnRZO2xldCBPZT10aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoIi5saXN0LWl0ZW1zIiksSmU9QXJyYXkuZnJvbShPZT8ucXVlcnlTZWxlY3RvckFsbCgiLmxpc3QtaXRlbSIpfHxbXSk7SmVbbmVdJiYodGhpcy5pdGVtSGVpZ2h0PUplW25lXS5vZmZzZXRIZWlnaHQpLHRoaXMub3JpZ2luYWxJdGVtUmVjdHM9SmUubWFwKHRlPT50ZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSksT2U/LmNsYXNzTGlzdC5hZGQoImlzLWRyYWdnaW5nIiksdGhpcy5ib3VuZEhhbmRsZUdsb2JhbERyYWdPdmVyPXRoaXMuaGFuZGxlR2xvYmFsRHJhZ092ZXIuYmluZCh0aGlzKSx0aGlzLmJvdW5kSGFuZGxlR2xvYmFsRHJhZ0VuZD10aGlzLmhhbmRsZUdsb2JhbERyYWdFbmQuYmluZCh0aGlzKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJkcmFnb3ZlciIsdGhpcy5ib3VuZEhhbmRsZUdsb2JhbERyYWdPdmVyKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJkcmFnZW5kIix0aGlzLmJvdW5kSGFuZGxlR2xvYmFsRHJhZ0VuZCl9aGFuZGxlR2xvYmFsRHJhZ092ZXIoeGUpe2lmKHhlLnByZXZlbnREZWZhdWx0KCksdGhpcy5kcmFnZ2VkSW5kZXg9PT0tMSlyZXR1cm47dGhpcy5kcmFnQ3VycmVudFk9eGUuY2xpZW50WTtsZXQgbmU9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCIubGlzdC1pdGVtcyIpO2lmKCFuZSlyZXR1cm47bGV0IExlPUFycmF5LmZyb20obmUucXVlcnlTZWxlY3RvckFsbCgiLmxpc3QtaXRlbSIpKSxPZT1MZVt0aGlzLmRyYWdnZWRJbmRleF07aWYoIU9lKXJldHVybjtsZXQgSmU9dGhpcy5kcmFnQ3VycmVudFktdGhpcy5kcmFnU3RhcnRZO09lLnN0eWxlLnRyYW5zZm9ybT1gdHJhbnNsYXRlWSgke0plfXB4KWA7bGV0IHRlPXRoaXMub3JpZ2luYWxJdGVtUmVjdHNbdGhpcy5kcmFnZ2VkSW5kZXhdO2lmKCF0ZSlyZXR1cm47bGV0IFo9dGUudG9wK3RlLmhlaWdodC8yK0plLGVlPXRoaXMuZHJhZ2dlZEluZGV4O2ZvcihsZXQgYmU9MDtiZTxMZS5sZW5ndGg7YmUrKyl7aWYoYmU9PT10aGlzLmRyYWdnZWRJbmRleCljb250aW51ZTtsZXQgTmU9dGhpcy5vcmlnaW5hbEl0ZW1SZWN0c1tiZV07aWYoIU5lKWNvbnRpbnVlO2xldCBLZT1OZS50b3ArTmUuaGVpZ2h0LzI7aWYoTGVbYmVdLmNsYXNzTGlzdC5jb250YWlucygibW92ZS11cCIpP0tlLT10aGlzLml0ZW1IZWlnaHQ6TGVbYmVdLmNsYXNzTGlzdC5jb250YWlucygibW92ZS1kb3duIikmJihLZSs9dGhpcy5pdGVtSGVpZ2h0KSxaPEtlJiZiZTx0aGlzLmRyYWdnZWRJbmRleCl7ZWU9YmU7YnJlYWt9ZWxzZSBaPktlJiZiZT50aGlzLmRyYWdnZWRJbmRleCYmKGVlPWJlKX1lZSE9PXRoaXMudGFyZ2V0SW5kZXgmJih0aGlzLnRhcmdldEluZGV4PWVlLHRoaXMudXBkYXRlSXRlbVBvc2l0aW9ucyhMZSkpfXVwZGF0ZUl0ZW1Qb3NpdGlvbnMoeGUpe2xldCBuZT10aGlzLmRyYWdnZWRJbmRleCxMZT10aGlzLnRhcmdldEluZGV4LE9lPXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiLmxpc3QtaXRlbXMiKTtPZSYmT2Uuc3R5bGUuc2V0UHJvcGVydHkoIi0taXRlbS1oZWlnaHQiLGAke3RoaXMuaXRlbUhlaWdodH1weGApLHhlLmZvckVhY2goKEplLHRlKT0+e3RlIT09bmUmJihKZS5jbGFzc0xpc3QucmVtb3ZlKCJtb3ZlLXVwIiwibW92ZS1kb3duIiksSmUuc3R5bGUuc2V0UHJvcGVydHkoIi0taXRlbS1oZWlnaHQiLGAke3RoaXMuaXRlbUhlaWdodH1weGApLG5lPExlP3RlPm5lJiZ0ZTw9TGUmJkplLmNsYXNzTGlzdC5hZGQoIm1vdmUtdXAiKTpuZT5MZSYmdGU+PUxlJiZ0ZTxuZSYmSmUuY2xhc3NMaXN0LmFkZCgibW92ZS1kb3duIikpfSl9aGFuZGxlR2xvYmFsRHJhZ0VuZCgpe3RoaXMuYm91bmRIYW5kbGVHbG9iYWxEcmFnT3ZlciYmKGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImRyYWdvdmVyIix0aGlzLmJvdW5kSGFuZGxlR2xvYmFsRHJhZ092ZXIpLHRoaXMuYm91bmRIYW5kbGVHbG9iYWxEcmFnT3Zlcj1udWxsKSx0aGlzLmJvdW5kSGFuZGxlR2xvYmFsRHJhZ0VuZCYmKGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImRyYWdlbmQiLHRoaXMuYm91bmRIYW5kbGVHbG9iYWxEcmFnRW5kKSx0aGlzLmJvdW5kSGFuZGxlR2xvYmFsRHJhZ0VuZD1udWxsKTtsZXQgeGU9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCIubGlzdC1pdGVtcyIpLG5lPXhlPy5xdWVyeVNlbGVjdG9yQWxsKCIubGlzdC1pdGVtIiksTGU9bmU/Llt0aGlzLmRyYWdnZWRJbmRleF07aWYodGhpcy5kcmFnZ2VkSW5kZXg9PT0tMXx8dGhpcy50YXJnZXRJbmRleD09PS0xfHx0aGlzLmRyYWdnZWRJbmRleD09PXRoaXMudGFyZ2V0SW5kZXgpe2lmKExlJiZ0aGlzLmRyYWdnZWRJbmRleCE9PS0xKXtMZS5zdHlsZS50cmFuc2l0aW9uPSJ0cmFuc2Zvcm0gMC4xNXMgZWFzZSIsTGUuc3R5bGUudHJhbnNmb3JtPSJ0cmFuc2xhdGVZKDApIjtsZXQgYmU9ITEsTmU9KCk9PntiZXx8KGJlPSEwLExlLnJlbW92ZUV2ZW50TGlzdGVuZXIoInRyYW5zaXRpb25lbmQiLE5lKSx0aGlzLmNsZWFudXBEcmFnU3RhdGUoeGUsbmUpKX07TGUuYWRkRXZlbnRMaXN0ZW5lcigidHJhbnNpdGlvbmVuZCIsTmUse29uY2U6ITB9KSxzZXRUaW1lb3V0KE5lLDIwMCl9ZWxzZSB0aGlzLmNsZWFudXBEcmFnU3RhdGUoeGUsbmUpO3JldHVybn1sZXQgT2U9dGhpcy5vcmlnaW5hbEl0ZW1SZWN0c1t0aGlzLmRyYWdnZWRJbmRleF0sSmU9dGhpcy5vcmlnaW5hbEl0ZW1SZWN0c1t0aGlzLnRhcmdldEluZGV4XTtpZighT2V8fCFKZXx8IUxlKXt0aGlzLmNsZWFudXBEcmFnU3RhdGUoeGUsbmUpO3JldHVybn1sZXQgdGU7dGhpcy50YXJnZXRJbmRleD50aGlzLmRyYWdnZWRJbmRleD90ZT1KZS5ib3R0b20tT2UuYm90dG9tOnRlPUplLnRvcC1PZS50b3AsTGUuc3R5bGUudHJhbnNpdGlvbj0idHJhbnNmb3JtIDAuMTVzIGVhc2UiLExlLnN0eWxlLnRyYW5zZm9ybT1gdHJhbnNsYXRlWSgke3RlfXB4KWA7bGV0IFo9ITEsZWU9KCk9PntpZihaKXJldHVybjtaPSEwLExlLnJlbW92ZUV2ZW50TGlzdGVuZXIoInRyYW5zaXRpb25lbmQiLGVlKSx4ZT8uY2xhc3NMaXN0LmFkZCgiZHJvcHBpbmciKSx4ZT8ub2Zmc2V0SGVpZ2h0LG5lPy5mb3JFYWNoKEtlPT57S2UuY2xhc3NMaXN0LnJlbW92ZSgibW92ZS11cCIsIm1vdmUtZG93biIsImRyYWdnaW5nIiksS2Uuc3R5bGUucmVtb3ZlUHJvcGVydHkoInRyYW5zZm9ybSIpLEtlLnN0eWxlLnJlbW92ZVByb3BlcnR5KCJ0cmFuc2l0aW9uIil9KTtsZXQgYmU9Wy4uLnRoaXMudmFsdWVdLFtOZV09YmUuc3BsaWNlKHRoaXMuZHJhZ2dlZEluZGV4LDEpO2JlLnNwbGljZSh0aGlzLnRhcmdldEluZGV4LDAsTmUpLHRoaXMudmFsdWU9YmUsdGhpcy5lbWl0Q2hhbmdlKCksdGhpcy5kcmFnZ2VkSW5kZXg9LTEsdGhpcy5kcmFnT3ZlckluZGV4PS0xLHRoaXMudGFyZ2V0SW5kZXg9LTEsdGhpcy5kcmFnU3RhcnRZPTAsdGhpcy5kcmFnQ3VycmVudFk9MCx0aGlzLm9yaWdpbmFsSXRlbVJlY3RzPVtdLHRoaXMudXBkYXRlQ29tcGxldGUudGhlbigoKT0+e2xldCBLZT10aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3JBbGwoIi5saXN0LWl0ZW0iKTtLZT8uZm9yRWFjaCh5dD0+e3l0LnN0eWxlLnRyYW5zaXRpb249Im5vbmUifSksdGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCIubGlzdC1pdGVtcyIpPy5vZmZzZXRIZWlnaHQscmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57S2U/LmZvckVhY2goeXQ9Pnt5dC5zdHlsZS5yZW1vdmVQcm9wZXJ0eSgidHJhbnNpdGlvbiIpfSkseGU/LmNsYXNzTGlzdC5yZW1vdmUoImRyb3BwaW5nIiwiaXMtZHJhZ2dpbmciKX0pfSl9O0xlLmFkZEV2ZW50TGlzdGVuZXIoInRyYW5zaXRpb25lbmQiLGVlLHtvbmNlOiEwfSksc2V0VGltZW91dChlZSwyMDApfWNsZWFudXBEcmFnU3RhdGUoeGUsbmUpe3hlPy5jbGFzc0xpc3QuYWRkKCJkcm9wcGluZyIpLHhlPy5vZmZzZXRIZWlnaHQsbmU/LmZvckVhY2goTGU9PntMZS5jbGFzc0xpc3QucmVtb3ZlKCJtb3ZlLXVwIiwibW92ZS1kb3duIiwiZHJhZ2dpbmciKSxMZS5zdHlsZS5yZW1vdmVQcm9wZXJ0eSgidHJhbnNmb3JtIiksTGUuc3R5bGUucmVtb3ZlUHJvcGVydHkoInRyYW5zaXRpb24iKX0pLHRoaXMuZHJhZ2dlZEluZGV4PS0xLHRoaXMuZHJhZ092ZXJJbmRleD0tMSx0aGlzLnRhcmdldEluZGV4PS0xLHRoaXMuZHJhZ1N0YXJ0WT0wLHRoaXMuZHJhZ0N1cnJlbnRZPTAsdGhpcy5vcmlnaW5hbEl0ZW1SZWN0cz1bXSx0aGlzLnVwZGF0ZUNvbXBsZXRlLnRoZW4oKCk9PntsZXQgTGU9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yQWxsKCIubGlzdC1pdGVtIik7TGU/LmZvckVhY2goT2U9PntPZS5zdHlsZS50cmFuc2l0aW9uPSJub25lIn0pLHRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiLmxpc3QtaXRlbXMiKT8ub2Zmc2V0SGVpZ2h0LHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKT0+e0xlPy5mb3JFYWNoKE9lPT57T2Uuc3R5bGUucmVtb3ZlUHJvcGVydHkoInRyYW5zaXRpb24iKX0pLHhlPy5jbGFzc0xpc3QucmVtb3ZlKCJkcm9wcGluZyIsImlzLWRyYWdnaW5nIil9KX0pfWhhbmRsZURyYWdFbmQoKXt0aGlzLmhhbmRsZUdsb2JhbERyYWdFbmQoKX1oYW5kbGVEcmFnT3Zlcih4ZSxuZSl7IXRoaXMuc29ydGFibGV8fHRoaXMuZGlzYWJsZWR8fCh4ZS5wcmV2ZW50RGVmYXVsdCgpLHhlLmRhdGFUcmFuc2Zlci5kcm9wRWZmZWN0PSJtb3ZlIil9aGFuZGxlRHJhZ0xlYXZlKCl7fWhhbmRsZURyb3AoeGUsbmUpeyF0aGlzLnNvcnRhYmxlfHx0aGlzLmRpc2FibGVkfHx4ZS5wcmV2ZW50RGVmYXVsdCgpfWVtaXRDaGFuZ2UoKXt0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJjaGFuZ2UiLHtkZXRhaWw6e3ZhbHVlOnRoaXMudmFsdWV9LGJ1YmJsZXM6ITAsY29tcG9zZWQ6ITB9KSksdGhpcy5jaGFuZ2VTdWJqZWN0Lm5leHQodGhpcyl9Z2V0VmFsdWUoKXtyZXR1cm4gdGhpcy52YWx1ZX1zZXRWYWx1ZSh4ZSl7dGhpcy52YWx1ZT14ZXx8W119YXN5bmMgdmFsaWRhdGUoKXtyZXR1cm4gdGhpcy5yZXF1aXJlZCYmKCF0aGlzLnZhbHVlfHx0aGlzLnZhbHVlLmxlbmd0aD09PTApPyh0aGlzLnZhbGlkYXRpb25UZXh0PSJBdCBsZWFzdCBvbmUgaXRlbSBpcyByZXF1aXJlZCIsITEpOnRoaXMubWluSXRlbXMmJnRoaXMudmFsdWUubGVuZ3RoPHRoaXMubWluSXRlbXM/KHRoaXMudmFsaWRhdGlvblRleHQ9YEF0IGxlYXN0ICR7dGhpcy5taW5JdGVtc30gaXRlbXMgcmVxdWlyZWRgLCExKToodGhpcy52YWxpZGF0aW9uVGV4dD0iIiwhMCl9c3RhdGlje3ZyKGEscil9fTtyZXR1cm4gQWU9YX0pKCl9KTt2YXIgYXZhLGl2YSxvdmEsbnZhLHN2YSxsdmEsY3ZhLEMkcixfJHI9bCgoKT0+e1NlKCk7emEoKTt0MSgpO2F2YT0oKT0+e2xldCBlPURhdGUubm93KCk7cmV0dXJuW3tpZDpgdGl0bGUtJHtlfWAsdHlwZToiaGVhZGluZy0xIixjb250ZW50OiJTeXN0ZW0gUGVyZm9ybWFuY2UgUmVwb3J0In0se2lkOmBkYXRlLSR7ZSsxfWAsdHlwZToicGFyYWdyYXBoIixjb250ZW50OmBHZW5lcmF0ZWQgb246ICR7bmV3IERhdGUoKS50b0xvY2FsZVN0cmluZygpfWB9LHtpZDpgc3VtbWFyeS1oZWFkaW5nLSR7ZSsyfWAsdHlwZToiaGVhZGluZy0yIixjb250ZW50OiJFeGVjdXRpdmUgU3VtbWFyeSJ9LHtpZDpgc3VtbWFyeS0ke2UrM31gLHR5cGU6InBhcmFncmFwaCIsY29udGVudDoiVGhpcyByZXBvcnQgcHJvdmlkZXMgYW4gYW5hbHlzaXMgb2Ygc3lzdGVtIHBlcmZvcm1hbmNlIG1ldHJpY3Mgb3ZlciB0aGUgbGFzdCAzMCBkYXlzLiJ9LHtpZDpgbWV0cmljcy1oZWFkaW5nLSR7ZSs0fWAsdHlwZToiaGVhZGluZy0yIixjb250ZW50OiJLZXkgTWV0cmljcyJ9LHtpZDpgbWV0cmljcy1saXN0LSR7ZSs1fWAsdHlwZToibGlzdCIsY29udGVudDpgQXZlcmFnZSByZXNwb25zZSB0aW1lOiAxMjRtcwpVcHRpbWU6IDk5Ljk3JQpDUFUgdXRpbGl6YXRpb246IDQ1JQpNZW1vcnkgdXNhZ2U6IDIuM0dCIC8gOEdCYCxtZXRhZGF0YTp7bGlzdFR5cGU6ImJ1bGxldCJ9fSx7aWQ6YGFuYWx5c2lzLWhlYWRpbmctJHtlKzZ9YCx0eXBlOiJoZWFkaW5nLTIiLGNvbnRlbnQ6IlBlcmZvcm1hbmNlIEFuYWx5c2lzIn0se2lkOmBhbmFseXNpcy1xdW90ZS0ke2UrN31gLHR5cGU6InF1b3RlIixjb250ZW50OiJTeXN0ZW0gcGVyZm9ybWFuY2UgcmVtYWlucyB3aXRoaW4gYWNjZXB0YWJsZSBwYXJhbWV0ZXJzIHdpdGggcm9vbSBmb3Igb3B0aW1pemF0aW9uIGluIG1lbW9yeSBtYW5hZ2VtZW50LiJ9LHtpZDpgY29kZS1oZWFkaW5nLSR7ZSs4fWAsdHlwZToiaGVhZGluZy0zIixjb250ZW50OiJTYW1wbGUgUXVlcnkgUGVyZm9ybWFuY2UifSx7aWQ6YGNvZGUtYmxvY2stJHtlKzl9YCx0eXBlOiJjb2RlIixjb250ZW50OmBTRUxFQ1QgQVZHKHJlc3BvbnNlX3RpbWUpIGFzIGF2Z190aW1lLAogICAgICAgQ09VTlQoKikgYXMgdG90YWxfcmVxdWVzdHMsCiAgICAgICBEQVRFKGNyZWF0ZWRfYXQpIGFzIGRhdGUKRlJPTSBwZXJmb3JtYW5jZV9sb2dzCldIRVJFIGNyZWF0ZWRfYXQgPj0gTk9XKCkgLSBJTlRFUlZBTCAzMCBEQVkKR1JPVVAgQlkgREFURShjcmVhdGVkX2F0KQpPUkRFUiBCWSBkYXRlIERFU0M7YCxtZXRhZGF0YTp7bGFuZ3VhZ2U6InNxbCJ9fSx7aWQ6YGRpdmlkZXItJHtlKzEwfWAsdHlwZToiZGl2aWRlciIsY29udGVudDoiIn0se2lkOmBmb290ZXItJHtlKzExfWAsdHlwZToicGFyYWdyYXBoIixjb250ZW50OiJSZXBvcnQgZ2VuZXJhdGVkIGF1dG9tYXRpY2FsbHkgYnkgU3lzdGVtIE1vbml0b3IgdjIuNS4wIn1dfSxpdmE9KCk9PntsZXQgZT1EYXRlLm5vdygpO3JldHVyblt7aWQ6YHJlY2lwZS10aXRsZS0ke2V9YCx0eXBlOiJoZWFkaW5nLTEiLGNvbnRlbnQ6IkNsYXNzaWMgTWFyZ2hlcml0YSBQaXp6YSJ9LHtpZDpgcmVjaXBlLWludHJvLSR7ZSsxfWAsdHlwZToicGFyYWdyYXBoIixjb250ZW50OiJBIHRyYWRpdGlvbmFsIEl0YWxpYW4gcGl6emEgd2l0aCBmcmVzaCBiYXNpbCwgbW96emFyZWxsYSwgYW5kIHRvbWF0byBzYXVjZS4ifSx7aWQ6YGluZ3JlZGllbnRzLWhlYWRpbmctJHtlKzJ9YCx0eXBlOiJoZWFkaW5nLTIiLGNvbnRlbnQ6Ilx1ezFGMzU1fSBJbmdyZWRpZW50cyJ9LHtpZDpgZG91Z2gtaGVhZGluZy0ke2UrM31gLHR5cGU6ImhlYWRpbmctMyIsY29udGVudDoiRm9yIHRoZSBEb3VnaDoifSx7aWQ6YGRvdWdoLWxpc3QtJHtlKzR9YCx0eXBlOiJsaXN0Iixjb250ZW50OmA1MDBnIHRpcG8gIjAwIiBmbG91cgozMjVtbCB3YXJtIHdhdGVyCjEwZyBzYWx0CjdnIGFjdGl2ZSBkcnkgeWVhc3QKMiB0YnNwIG9saXZlIG9pbGAsbWV0YWRhdGE6e2xpc3RUeXBlOiJidWxsZXQifX0se2lkOmB0b3BwaW5ncy1oZWFkaW5nLSR7ZSs1fWAsdHlwZToiaGVhZGluZy0zIixjb250ZW50OiJGb3IgdGhlIFRvcHBpbmdzOiJ9LHtpZDpgdG9wcGluZ3MtbGlzdC0ke2UrNn1gLHR5cGU6Imxpc3QiLGNvbnRlbnQ6YDQwMGcgY2FubmVkIFNhbiBNYXJ6YW5vIHRvbWF0b2VzCjI1MGcgZnJlc2ggbW96emFyZWxsYQpGcmVzaCBiYXNpbCBsZWF2ZXMKRXh0cmEgdmlyZ2luIG9saXZlIG9pbApTYWx0IGFuZCBwZXBwZXIgdG8gdGFzdGVgLG1ldGFkYXRhOntsaXN0VHlwZToiYnVsbGV0In19LHtpZDpgaW5zdHJ1Y3Rpb25zLWhlYWRpbmctJHtlKzd9YCx0eXBlOiJoZWFkaW5nLTIiLGNvbnRlbnQ6Ilx1ezFGNDY4fVx1MjAwRFx1ezFGMzczfSBJbnN0cnVjdGlvbnMifSx7aWQ6YHN0ZXBzLWxpc3QtJHtlKzh9YCx0eXBlOiJsaXN0Iixjb250ZW50OmBEaXNzb2x2ZSB5ZWFzdCBpbiB3YXJtIHdhdGVyIGFuZCBsZXQgc3RhbmQgZm9yIDUgbWludXRlcwpNaXggZmxvdXIgYW5kIHNhbHQsIGNyZWF0ZSBhIHdlbGwgaW4gY2VudGVyCkFkZCB5ZWFzdCBtaXh0dXJlIGFuZCBvbGl2ZSBvaWwKS25lYWQgZm9yIDEwIG1pbnV0ZXMgdW50aWwgc21vb3RoCkxldCByaXNlIGZvciAxLTIgaG91cnMgdW50aWwgZG91YmxlZApQdW5jaCBkb3duIGFuZCBkaXZpZGUgaW50byBwb3J0aW9ucwpSb2xsIG91dCBlYWNoIHBvcnRpb24gdG8gMTItaW5jaCBjaXJjbGVzClRvcCB3aXRoIGNydXNoZWQgdG9tYXRvZXMsIG1venphcmVsbGEsIGFuZCBiYXNpbApCYWtlIGF0IDQ3NVx4QjBGICgyNDVceEIwQykgZm9yIDEwLTEyIG1pbnV0ZXNgLG1ldGFkYXRhOntsaXN0VHlwZToib3JkZXJlZCJ9fSx7aWQ6YHRpcC0ke2UrOX1gLHR5cGU6InF1b3RlIixjb250ZW50OiJQcm8gdGlwOiBGb3IgYW4gYXV0aGVudGljIHRhc3RlLCB1c2UgYSBwaXp6YSBzdG9uZSBhbmQgcHJlaGVhdCBpdCBpbiB0aGUgb3ZlbiBmb3IgYXQgbGVhc3QgMzAgbWludXRlcyBiZWZvcmUgYmFraW5nLiJ9LHtpZDpgZGl2aWRlci0ke2UrMTB9YCx0eXBlOiJkaXZpZGVyIixjb250ZW50OiIifSx7aWQ6YHNlcnZpbmdzLSR7ZSsxMX1gLHR5cGU6InBhcmFncmFwaCIsY29udGVudDoiU2VydmluZ3M6IDQgcGl6emFzIHwgUHJlcCB0aW1lOiAyIGhvdXJzIHwgQ29vayB0aW1lOiAxMiBtaW51dGVzIn1dfSxvdmE9ZT0+e2xldCB0PXt9O3JldHVybiB0LmJhc2ljPWUucXVlcnlTZWxlY3RvcigiI2VkaXRvci1iYXNpYyIpLHQuYXJ0aWNsZT1lLnF1ZXJ5U2VsZWN0b3IoIiNlZGl0b3ItYXJ0aWNsZSIpLHQuZHJhZ0Ryb3A9ZS5xdWVyeVNlbGVjdG9yKCIjZWRpdG9yLWRyYWdkcm9wIiksdC50dXRvcmlhbD1lLnF1ZXJ5U2VsZWN0b3IoIiNlZGl0b3ItdHV0b3JpYWwiKSx0Lm1lZXRpbmc9ZS5xdWVyeVNlbGVjdG9yKCIjZWRpdG9yLW1lZXRpbmciKSx0LnJlY2lwZT1lLnF1ZXJ5U2VsZWN0b3IoIiNlZGl0b3ItcmVjaXBlIiksdC50ZWNobmljYWw9ZS5xdWVyeVNlbGVjdG9yKCIjZWRpdG9yLXRlY2huaWNhbCIpLHQuZm9ybUludGVncmF0aW9uPWUucXVlcnlTZWxlY3RvcigiI2VkaXRvci1mb3JtLWludGVncmF0aW9uIiksdC5wcm9ncmFtbWF0aWM9ZS5xdWVyeVNlbGVjdG9yKCIjZWRpdG9yLXByb2dyYW1tYXRpYyIpLHQuZXhwb3J0RGVtbz1lLnF1ZXJ5U2VsZWN0b3IoIiNlZGl0b3ItZXhwb3J0IiksdH0sbnZhPShlLHQpPT57bGV0IHI9ZS5xdWVyeVNlbGVjdG9yKCIjYnRuLWdlbmVyYXRlLXJlcG9ydCIpLGE9ZS5xdWVyeVNlbGVjdG9yKCIjYnRuLWdlbmVyYXRlLXJlY2lwZSIpLGk9ZS5xdWVyeVNlbGVjdG9yKCIjYnRuLWNsZWFyLWVkaXRvciIpO3ImJnIuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCgpPT57dC5pbXBvcnRCbG9ja3MoYXZhKCkpfSksYSYmYS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKCk9Pnt0LmltcG9ydEJsb2NrcyhpdmEoKSl9KSxpJiZpLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwoKT0+e3QuaW1wb3J0QmxvY2tzKFtdKX0pfSxzdmE9KGUsdCk9PntsZXQgcj1lLnF1ZXJ5U2VsZWN0b3IoIiNidG4tZXhwb3J0LWJsb2NrcyIpLGE9ZS5xdWVyeVNlbGVjdG9yKCIjYnRuLWV4cG9ydC1odG1sIiksaT1lLnF1ZXJ5U2VsZWN0b3IoIiNidG4tZXhwb3J0LW1hcmtkb3duIiksbz1lLnF1ZXJ5U2VsZWN0b3IoIiNidG4tc2F2ZS1zdGF0ZSIpLG49ZS5xdWVyeVNlbGVjdG9yKCIjYnRuLXJlc3RvcmUtc3RhdGUiKSxzPW51bGw7ciYmci5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKCk9PntsZXQgYz10LmV4cG9ydEJsb2NrcygpO2NvbnNvbGUubG9nKCJFeHBvcnRlZCBibG9ja3M6IixjKSxhbGVydChgRXhwb3J0ZWQgJHtjLmxlbmd0aH0gYmxvY2tzIHRvIGNvbnNvbGUuIENoZWNrIGRldmVsb3BlciB0b29scy5gKX0pLGEmJmEuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCgpPT57bGV0IGM9dC5leHBvcnRBc0h0bWwoKTtjb25zb2xlLmxvZygiSFRNTCBFeHBvcnQ6IixjKSxhbGVydCgiSFRNTCBleHBvcnRlZCB0byBjb25zb2xlLiBDaGVjayBkZXZlbG9wZXIgdG9vbHMuIil9KSxpJiZpLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwoKT0+e2xldCBjPXQuZXhwb3J0QXNNYXJrZG93bigpO2NvbnNvbGUubG9nKCJNYXJrZG93biBFeHBvcnQ6IixjKSxhbGVydCgiTWFya2Rvd24gZXhwb3J0ZWQgdG8gY29uc29sZS4gQ2hlY2sgZGV2ZWxvcGVyIHRvb2xzLiIpfSksbyYmby5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKCk9PntzPXQuZXhwb3J0U3RhdGUoKSxjb25zb2xlLmxvZygiU2F2ZWQgc3RhdGU6IixzKSxhbGVydCgiRWRpdG9yIHN0YXRlIHNhdmVkISIpfSksbiYmbi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKCk9PntzPyh0LmltcG9ydFN0YXRlKHMpLGFsZXJ0KCJFZGl0b3Igc3RhdGUgcmVzdG9yZWQhIikpOmFsZXJ0KCJObyBzYXZlZCBzdGF0ZSBmb3VuZC4gU2F2ZSBzdGF0ZSBmaXJzdCEiKX0pfSxsdmE9KGUsdCxyKT0+e2xldCBhPWUucXVlcnlTZWxlY3RvcigiI2J0bi1zaG93LWh0bWwtb3V0cHV0IiksaT1lLnF1ZXJ5U2VsZWN0b3IoIiNvdXRwdXQtcHJldmlldy1odG1sIik7YSYmaSYmdCYmYS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKCk9PntpLnRleHRDb250ZW50PXQuZ2V0VmFsdWUoKSxpLmNsYXNzTGlzdC5hZGQoInZpc2libGUiKX0pO2xldCBvPWUucXVlcnlTZWxlY3RvcigiI2J0bi1zaG93LW1hcmtkb3duLW91dHB1dCIpLG49ZS5xdWVyeVNlbGVjdG9yKCIjb3V0cHV0LXByZXZpZXctbWFya2Rvd24iKTtvJiZuJiZyJiZvLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwoKT0+e24udGV4dENvbnRlbnQ9ci5nZXRWYWx1ZSgpLG4uY2xhc3NMaXN0LmFkZCgidmlzaWJsZSIpfSl9LGN2YT1lPT57ZS5hcnRpY2xlJiZzZXRUaW1lb3V0KCgpPT57bGV0IHQ9W3tpZDoiaW50cm8taGVhZGluZy0iK0RhdGUubm93KCksdHlwZToiaGVhZGluZy0yIixjb250ZW50OiJJbnRyb2R1Y3Rpb24gdG8gTW9kZXJuIFdlYiBEZXZlbG9wbWVudCJ9LHtpZDoiaW50cm8tcGFyYS0iK0RhdGUubm93KCksdHlwZToicGFyYWdyYXBoIixjb250ZW50OiJNb2Rlcm4gd2ViIGRldmVsb3BtZW50IGhhcyBldm9sdmVkIHNpZ25pZmljYW50bHkgb3ZlciB0aGUgcGFzdCBkZWNhZGUuIEluIHRoaXMgYXJ0aWNsZSwgd2UnbGwgZXhwbG9yZSB0aGUga2V5IHRlY2hub2xvZ2llcyBhbmQgYmVzdCBwcmFjdGljZXMgdGhhdCBkZWZpbmUgd2ViIGRldmVsb3BtZW50IGluIDIwMjQuIn0se2lkOiJ0ZWNoLWhlYWRpbmctIitEYXRlLm5vdygpLHR5cGU6ImhlYWRpbmctMyIsY29udGVudDoiS2V5IFRlY2hub2xvZ2llcyJ9LHtpZDoidGVjaC1saXN0LSIrRGF0ZS5ub3coKSx0eXBlOiJsaXN0Iixjb250ZW50OmBUeXBlU2NyaXB0IC0gVHlwZS1zYWZlIEphdmFTY3JpcHQgZGV2ZWxvcG1lbnQKV2ViIENvbXBvbmVudHMgLSBOYXRpdmUgY29tcG9uZW50IG1vZGVsCkVTIE1vZHVsZXMgLSBNb2Rlcm4gbW9kdWxlIHN5c3RlbQpXZWJBc3NlbWJseSAtIEhpZ2gtcGVyZm9ybWFuY2UgY29tcHV0aW5nYCxtZXRhZGF0YTp7bGlzdFR5cGU6Im9yZGVyZWQifX0se2lkOiJxdW90ZS0iK0RhdGUubm93KCksdHlwZToicXVvdGUiLGNvbnRlbnQ6IlRoZSBiZXN0IHdheSB0byBwcmVkaWN0IHRoZSBmdXR1cmUgaXMgdG8gaW52ZW50IGl0LiAtIEFsYW4gS2F5In0se2lkOiJleGFtcGxlLWhlYWRpbmctIitEYXRlLm5vdygpLHR5cGU6ImhlYWRpbmctMyIsY29udGVudDoiQ29kZSBFeGFtcGxlIn0se2lkOiJjb2RlLWV4YW1wbGUtIitEYXRlLm5vdygpLHR5cGU6ImNvZGUiLGNvbnRlbnQ6YGNsYXNzIE1vZGVybldlYkFwcCBleHRlbmRzIEhUTUxFbGVtZW50IHsKICBjb25zdHJ1Y3RvcigpIHsKICAgIHN1cGVyKCk7CiAgICB0aGlzLmF0dGFjaFNoYWRvdyh7IG1vZGU6ICdvcGVuJyB9KTsKICB9CiAgCiAgY29ubmVjdGVkQ2FsbGJhY2soKSB7CiAgICB0aGlzLnJlbmRlcigpOwogIH0KfWAsbWV0YWRhdGE6e2xhbmd1YWdlOiJqYXZhc2NyaXB0In19XTtlLmFydGljbGUuaW1wb3J0QmxvY2tzKHQpfSw1MDApLGUuZHJhZ0Ryb3AmJnNldFRpbWVvdXQoKCk9PntsZXQgdD1be2lkOiJkcmFnLXRpdGxlLSIrRGF0ZS5ub3coKSx0eXBlOiJoZWFkaW5nLTEiLGNvbnRlbnQ6IkRyYWcgJiBEcm9wIERlbW8ifSx7aWQ6ImRyYWctaW50cm8tIitEYXRlLm5vdygpLHR5cGU6InBhcmFncmFwaCIsY29udGVudDoiVGhpcyBlZGl0b3IgZGVtb25zdHJhdGVzIGRyYWcgYW5kIGRyb3AgZnVuY3Rpb25hbGl0eS4gVHJ5IGRyYWdnaW5nIHRoZXNlIGJsb2NrcyBhcm91bmQhIn0se2lkOiJkcmFnLWhlYWRpbmctIitEYXRlLm5vdygpLHR5cGU6ImhlYWRpbmctMiIsY29udGVudDoiSG93IEl0IFdvcmtzIn0se2lkOiJkcmFnLWxpc3QtIitEYXRlLm5vdygpLHR5cGU6Imxpc3QiLGNvbnRlbnQ6YEhvdmVyIG92ZXIgYW55IGJsb2NrIHRvIHNlZSB0aGUgZHJhZyBoYW5kbGUKQ2xpY2sgYW5kIGhvbGQgdGhlIGhhbmRsZSB0byBzdGFydCBkcmFnZ2luZwpEcmFnIHRvIHJlb3JkZXIgYmxvY2tzClJlbGVhc2UgdG8gZHJvcCBpbiB0aGUgbmV3IHBvc2l0aW9uYCxtZXRhZGF0YTp7bGlzdFR5cGU6Im9yZGVyZWQifX0se2lkOiJkcmFnLXF1b3RlLSIrRGF0ZS5ub3coKSx0eXBlOiJxdW90ZSIsY29udGVudDoiVGhlIGRyYWcgYW5kIGRyb3AgZmVhdHVyZSBtYWtlcyBpdCBlYXN5IHRvIHJlb3JnYW5pemUgeW91ciBjb250ZW50IHdpdGhvdXQgY3V0dGluZyBhbmQgcGFzdGluZy4ifSx7aWQ6ImRyYWctZGl2aWRlci0iK0RhdGUubm93KCksdHlwZToiZGl2aWRlciIsY29udGVudDoiIn0se2lkOiJkcmFnLWZvb3Rlci0iK0RhdGUubm93KCksdHlwZToicGFyYWdyYXBoIixjb250ZW50OiJOb3RlOiBEaXZpZGVyIGJsb2NrcyBjYW5ub3QgYmUgZHJhZ2dlZCwgYnV0IG90aGVyIGJsb2NrcyBjYW4gYmUgbW92ZWQgYXJvdW5kIHRoZW0uIn1dO2UuZHJhZ0Ryb3AuaW1wb3J0QmxvY2tzKHQpfSw2MDApfSxDJHI9KCk9PlNgCiAgPGRlZXMtZGVtb3dyYXBwZXIgLnJ1bkFmdGVyUmVuZGVyPSR7YXN5bmMgZT0+e2F3YWl0IG5ldyBQcm9taXNlKHI9PnNldFRpbWVvdXQociw1MDApKTtsZXQgdD1vdmEoZSk7dC5wcm9ncmFtbWF0aWMmJm52YShlLHQucHJvZ3JhbW1hdGljKSx0LmV4cG9ydERlbW8mJnN2YShlLHQuZXhwb3J0RGVtbyksbHZhKGUsdC5tZWV0aW5nLHQucmVjaXBlKSxjdmEodCksY29uc29sZS5sb2coIldZU0lXWUcgRGVtbyBpbml0aWFsaXplZCB3aXRoIGVkaXRvcnM6IixPYmplY3Qua2V5cyh0KSl9fT4KICA8c3R5bGU+CiAgICAke2xlYAogICAgICAuZGVtby1jb250YWluZXIgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBnYXA6IDMycHg7CiAgICAgICAgcGFkZGluZzogMjRweDsKICAgICAgICBtYXgtd2lkdGg6IDEyMDBweDsKICAgICAgICBtYXJnaW46IDAgYXV0bzsKICAgICAgfQogICAgICAKICAgICAgZGVlcy1wYW5lbCB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzJweDsKICAgICAgfQogICAgICAKICAgICAgLnBhbmVsLWRlc2NyaXB0aW9uIHsKICAgICAgICBtYXJnaW4tdG9wOiAwOwogICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7CiAgICAgICAgY29sb3I6ICM2NjY7CiAgICAgICAgZm9udC1zaXplOiAxNXB4OwogICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7CiAgICAgIH0KICAgICAgCiAgICAgIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHsKICAgICAgICAucGFuZWwtZGVzY3JpcHRpb24gewogICAgICAgICAgY29sb3I6ICM5OTk7CiAgICAgICAgfQogICAgICB9CgogICAgICAuZmVhdHVyZS1ncmlkIHsKICAgICAgICBkaXNwbGF5OiBncmlkOwogICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjAwcHgsIDFmcikpOwogICAgICAgIGdhcDogMTZweDsKICAgICAgICBtYXJnaW4tYm90dG9tOiAyNHB4OwogICAgICB9CgogICAgICAuZmVhdHVyZS1pdGVtIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgZ2FwOiA4cHg7CiAgICAgICAgY29sb3I6ICM1NTU7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICB9CgogICAgICAuZmVhdHVyZS1pY29uIHsKICAgICAgICBjb2xvcjogIzAwNjZjYzsKICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICB9CgogICAgICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7CiAgICAgICAgLmZlYXR1cmUtaXRlbSB7CiAgICAgICAgICBjb2xvcjogI2FhYTsKICAgICAgICB9CiAgICAgICAgLmZlYXR1cmUtaWNvbiB7CiAgICAgICAgICBjb2xvcjogIzRkOTRmZjsKICAgICAgICB9CiAgICAgIH0KCiAgICAgIC5zaG9ydGN1dHMtYm94IHsKICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDEwMiwgMjA0LCAwLjA1KTsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDEwMiwgMjA0LCAwLjIpOwogICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgICBwYWRkaW5nOiAxNnB4OwogICAgICAgIG1hcmdpbi10b3A6IDE2cHg7CiAgICAgIH0KCiAgICAgIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHsKICAgICAgICAuc2hvcnRjdXRzLWJveCB7CiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDc3LCAxNDgsIDI1NSwgMC4xKTsKICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSg3NywgMTQ4LCAyNTUsIDAuMyk7CiAgICAgICAgfQogICAgICB9CgogICAgICAuc2hvcnRjdXRzLXRpdGxlIHsKICAgICAgICBtYXJnaW46IDAgMCAxMnB4IDA7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgY29sb3I6ICMwMDY2Y2M7CiAgICAgIH0KCiAgICAgIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHsKICAgICAgICAuc2hvcnRjdXRzLXRpdGxlIHsKICAgICAgICAgIGNvbG9yOiAjNGQ5NGZmOwogICAgICAgIH0KICAgICAgfQoKICAgICAgLnNob3J0Y3V0cy1ncmlkIHsKICAgICAgICBkaXNwbGF5OiBncmlkOwogICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDE4MHB4LCAxZnIpKTsKICAgICAgICBnYXA6IDhweDsKICAgICAgfQoKICAgICAgLnNob3J0Y3V0LWl0ZW0gewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDhweDsKICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgY29sb3I6ICM1NTU7CiAgICAgIH0KCiAgICAgIC5zaG9ydGN1dC1rZXkgewogICAgICAgIGJhY2tncm91bmQ6ICNmMGYwZjA7CiAgICAgICAgcGFkZGluZzogMnB4IDZweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTsKICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgY29sb3I6ICMzMzM7CiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKICAgICAgfQoKICAgICAgQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykgewogICAgICAgIC5zaG9ydGN1dC1pdGVtIHsKICAgICAgICAgIGNvbG9yOiAjYmJiOwogICAgICAgIH0KICAgICAgICAuc2hvcnRjdXQta2V5IHsKICAgICAgICAgIGJhY2tncm91bmQ6ICMzMzM7CiAgICAgICAgICBjb2xvcjogI2RkZDsKICAgICAgICB9CiAgICAgIH0KCiAgICAgIC5vdXRwdXQtZ3JpZCB7CiAgICAgICAgZGlzcGxheTogZ3JpZDsKICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDMyMHB4LCAxZnIpKTsKICAgICAgICBnYXA6IDI0cHg7CiAgICAgICAgbWFyZ2luLXRvcDogMjRweDsKICAgICAgfQoKICAgICAgLm91dHB1dC1jYXJkIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgZ2FwOiAxMnB4OwogICAgICB9CgogICAgICAub3V0cHV0LWFjdGlvbnMgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsKICAgICAgfQoKICAgICAgLm91dHB1dC1wcmV2aWV3IHsKICAgICAgICBkaXNwbGF5OiBub25lOwogICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMTUsIDIzLCA0MiwgMC4wNCk7CiAgICAgICAgY29sb3I6IHZhcigtLWRlZXMtY29sb3ItdGV4dCwgIzBmMTcyYSk7CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNSwgMjMsIDQyLCAwLjEpOwogICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgICBwYWRkaW5nOiAxNnB4OwogICAgICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDsKICAgICAgICBmb250LWZhbWlseTogJ0dlaXN0IE1vbm8nLCAnRmlyYSBDb2RlJywgbW9ub3NwYWNlOwogICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICBtYXgtaGVpZ2h0OiAyODBweDsKICAgICAgICBvdmVyZmxvdzogYXV0bzsKICAgICAgfQoKICAgICAgOmhvc3QoW3RoZW1lPSdkYXJrJ10pIC5vdXRwdXQtcHJldmlldyB7CiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTAsIDI1MCwgMjUwLCAwLjA2KTsKICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMjUwLCAyNTAsIDI1MCwgMC4xNSk7CiAgICAgICAgY29sb3I6IHZhcigtLWRlZXMtY29sb3ItdGV4dCwgI2Y0ZjRmNSk7CiAgICAgIH0KCiAgICAgIC5vdXRwdXQtcHJldmlldy52aXNpYmxlIHsKICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgfQoKICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7CiAgICAgICAgLm91dHB1dC1ncmlkIHsKICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyOwogICAgICAgIH0KICAgICAgfQogICAgICAKICAgICAgLnRpcHMtYm94IHsKICAgICAgICBtYXJnaW4tdG9wOiAxNnB4OwogICAgICAgIHBhZGRpbmc6IDEycHg7CiAgICAgICAgYmFja2dyb3VuZDogI2YwZjhmZjsKICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7CiAgICAgIH0KICAgICAgCiAgICAgIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHsKICAgICAgICAudGlwcy1ib3ggewogICAgICAgICAgYmFja2dyb3VuZDogcmdiYSg3NywgMTQ4LCAyNTUsIDAuMSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIAogICAgICAudGlwcy1ib3ggc3Ryb25nIHsKICAgICAgICBjb2xvcjogIzAwNjZjYzsKICAgICAgfQogICAgICAKICAgICAgQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykgewogICAgICAgIC50aXBzLWJveCBzdHJvbmcgewogICAgICAgICAgY29sb3I6ICM0ZDk0ZmY7CiAgICAgICAgfQogICAgICB9CiAgICAgIAogICAgICAudGlwcy1saXN0IHsKICAgICAgICBtYXJnaW46IDhweCAwIDAgMDsKICAgICAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7CiAgICAgIH0KICAgICAgCiAgICAgIC50aXBzLWxpc3QgbGkgewogICAgICAgIG1hcmdpbjogNHB4IDA7CiAgICAgIH0KICAgICAgCiAgICAgIC5idXR0b24tZ3JvdXAgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZ2FwOiA4cHg7CiAgICAgICAgZmxleC13cmFwOiB3cmFwOwogICAgICAgIG1hcmdpbi10b3A6IDE2cHg7CiAgICAgIH0KICAgICAgCiAgICAgIC5kZW1vLWJ1dHRvbiB7CiAgICAgICAgcGFkZGluZzogOHB4IDE2cHg7CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZDsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgYmFja2dyb3VuZDogI2Y4ZjhmODsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0OwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7CiAgICAgIH0KICAgICAgCiAgICAgIC5kZW1vLWJ1dHRvbjpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogI2U4ZThlODsKICAgICAgICBib3JkZXItY29sb3I6ICNjY2M7CiAgICAgIH0KICAgICAgCiAgICAgIC5kZW1vLWJ1dHRvbjphY3RpdmUgewogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxcHgpOwogICAgICB9CiAgICAgIAogICAgICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7CiAgICAgICAgLmRlbW8tYnV0dG9uIHsKICAgICAgICAgIGJhY2tncm91bmQ6ICMzMzM7CiAgICAgICAgICBib3JkZXItY29sb3I6ICM1NTU7CiAgICAgICAgICBjb2xvcjogI2RkZDsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLmRlbW8tYnV0dG9uOmhvdmVyIHsKICAgICAgICAgIGJhY2tncm91bmQ6ICM0NDQ7CiAgICAgICAgICBib3JkZXItY29sb3I6ICM2NjY7CiAgICAgICAgfQogICAgICB9CiAgICAgIAogICAgICAuZXhwb3J0LWluZm8tZ3JpZCB7CiAgICAgICAgZGlzcGxheTogZ3JpZDsKICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDI1MHB4LCAxZnIpKTsKICAgICAgICBnYXA6IDE2cHg7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDsKICAgICAgfQogICAgICAKICAgICAgLmV4cG9ydC1pbmZvLWNhcmQgewogICAgICAgIHBhZGRpbmc6IDE2cHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4OwogICAgICB9CiAgICAgIAogICAgICAuZXhwb3J0LWluZm8tY2FyZC5ibG9ja3MgewogICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMTAyLCAyMDQsIDAuMSk7CiAgICAgIH0KICAgICAgCiAgICAgIC5leHBvcnQtaW5mby1jYXJkLmh0bWwgewogICAgICAgIGJhY2tncm91bmQ6IHJnYmEoNzYsIDE3NSwgODAsIDAuMSk7CiAgICAgIH0KICAgICAgCiAgICAgIC5leHBvcnQtaW5mby1jYXJkLm1hcmtkb3duIHsKICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMTUyLCAwLCAwLjEpOwogICAgICB9CiAgICAgIAogICAgICAuZXhwb3J0LWluZm8tY2FyZC5zdGF0ZSB7CiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgxNTYsIDM5LCAxNzYsIDAuMSk7CiAgICAgIH0KICAgICAgCiAgICAgIC5leHBvcnQtaW5mby1jYXJkIHN0cm9uZyB7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4OwogICAgICB9CiAgICAgIAogICAgICAuZXhwb3J0LWluZm8tY2FyZC5ibG9ja3Mgc3Ryb25nIHsKICAgICAgICBjb2xvcjogIzAwNjZjYzsKICAgICAgfQogICAgICAKICAgICAgLmV4cG9ydC1pbmZvLWNhcmQuaHRtbCBzdHJvbmcgewogICAgICAgIGNvbG9yOiAjNENBRjUwOwogICAgICB9CiAgICAgIAogICAgICAuZXhwb3J0LWluZm8tY2FyZC5tYXJrZG93biBzdHJvbmcgewogICAgICAgIGNvbG9yOiAjRkY5ODAwOwogICAgICB9CiAgICAgIAogICAgICAuZXhwb3J0LWluZm8tY2FyZC5zdGF0ZSBzdHJvbmcgewogICAgICAgIGNvbG9yOiAjOUMyN0IwOwogICAgICB9CiAgICAgIAogICAgICAuZXhwb3J0LWluZm8tY2FyZCBwIHsKICAgICAgICBtYXJnaW46IDA7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7CiAgICAgIH0KICAgIGB9CiAgPC9zdHlsZT4KICAKICAgIDxkaXYgY2xhc3M9ImRlbW8tY29udGFpbmVyIj4KICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IjEuIFx1ezFGNjgwfSBNb2Rlcm4gV1lTSVdZRyBFZGl0b3IifT4KICAgICAgICA8cCBjbGFzcz0icGFuZWwtZGVzY3JpcHRpb24iPgogICAgICAgICAgQSBwb3dlcmZ1bCBibG9jay1iYXNlZCBlZGl0b3Igd2l0aCBzbGFzaCBjb21tYW5kcywga2V5Ym9hcmQgc2hvcnRjdXRzLCBhbmQgbXVsdGlwbGUgb3V0cHV0IGZvcm1hdHMuIAogICAgICAgICAgUGVyZmVjdCBmb3IgY29udGVudCBjcmVhdGlvbiwgYmxvZyBwb3N0cywgZG9jdW1lbnRhdGlvbiwgYW5kIG1vcmUuCiAgICAgICAgPC9wPgogICAgICAgIAogICAgICAgIDxkaXYgY2xhc3M9ImZlYXR1cmUtZ3JpZCI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJmZWF0dXJlLWl0ZW0iPgogICAgICAgICAgICA8c3BhbiBjbGFzcz0iZmVhdHVyZS1pY29uIj7inJM8L3NwYW4+CiAgICAgICAgICAgIDxzcGFuPlNsYXNoIGNvbW1hbmRzICgvKTwvc3Bhbj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0iZmVhdHVyZS1pdGVtIj4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImZlYXR1cmUtaWNvbiI+4pyTPC9zcGFuPgogICAgICAgICAgICA8c3Bhbj5LZXlib2FyZCBzaG9ydGN1dHM8L3NwYW4+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImZlYXR1cmUtaXRlbSI+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJmZWF0dXJlLWljb24iPuKckzwvc3Bhbj4KICAgICAgICAgICAgPHNwYW4+QmxvY2stYmFzZWQgZWRpdGluZzwvc3Bhbj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0iZmVhdHVyZS1pdGVtIj4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImZlYXR1cmUtaWNvbiI+4pyTPC9zcGFuPgogICAgICAgICAgICA8c3Bhbj5EcmFnICYgZHJvcCByZW9yZGVyaW5nPC9zcGFuPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJmZWF0dXJlLWl0ZW0iPgogICAgICAgICAgICA8c3BhbiBjbGFzcz0iZmVhdHVyZS1pY29uIj7inJM8L3NwYW4+CiAgICAgICAgICAgIDxzcGFuPkhUTUwgJiBNYXJrZG93biBvdXRwdXQ8L3NwYW4+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImZlYXR1cmUtaXRlbSI+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJmZWF0dXJlLWljb24iPuKckzwvc3Bhbj4KICAgICAgICAgICAgPHNwYW4+RGFyayBtb2RlIHN1cHBvcnQ8L3NwYW4+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImZlYXR1cmUtaXRlbSI+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJmZWF0dXJlLWljb24iPuKckzwvc3Bhbj4KICAgICAgICAgICAgPHNwYW4+TW9iaWxlIHJlc3BvbnNpdmU8L3NwYW4+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgICA8ZGVlcy1pbnB1dC13eXNpd3lnIAogICAgICAgICAgaWQ9ImVkaXRvci1iYXNpYyIKICAgICAgICAgIGxhYmVsPSJSaWNoIFRleHQgRWRpdG9yIiAKICAgICAgICAgIGRlc2NyaXB0aW9uPSJTdGFydCB0eXBpbmcgb3IgdXNlICcvJyB0byBpbnNlcnQgZGlmZmVyZW50IGJsb2NrIHR5cGVzIgogICAgICAgICAgb3V0cHV0Rm9ybWF0PSJodG1sIgogICAgICAgID48L2RlZXMtaW5wdXQtd3lzaXd5Zz4KCiAgICAgICAgPGRpdiBjbGFzcz0ic2hvcnRjdXRzLWJveCI+CiAgICAgICAgICA8aDQgY2xhc3M9InNob3J0Y3V0cy10aXRsZSI+4oyo77iPIEtleWJvYXJkIFNob3J0Y3V0czwvaDQ+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJzaG9ydGN1dHMtZ3JpZCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNob3J0Y3V0LWl0ZW0iPgogICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzaG9ydGN1dC1rZXkiPi88L3NwYW4+IFNsYXNoIGNvbW1hbmRzCiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzaG9ydGN1dC1pdGVtIj4KICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ic2hvcnRjdXQta2V5Ij4jPC9zcGFuPiBIZWFkaW5nIDEKICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNob3J0Y3V0LWl0ZW0iPgogICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzaG9ydGN1dC1rZXkiPiMjPC9zcGFuPiBIZWFkaW5nIDIKICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNob3J0Y3V0LWl0ZW0iPgogICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzaG9ydGN1dC1rZXkiPiMjIzwvc3Bhbj4gSGVhZGluZyAzCiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzaG9ydGN1dC1pdGVtIj4KICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ic2hvcnRjdXQta2V5Ij4+PC9zcGFuPiBRdW90ZQogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2hvcnRjdXQtaXRlbSI+CiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InNob3J0Y3V0LWtleSI+XGBcYFxgPC9zcGFuPiBDb2RlIGJsb2NrCiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzaG9ydGN1dC1pdGVtIj4KICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ic2hvcnRjdXQta2V5Ij4qPC9zcGFuPiBvciA8c3BhbiBjbGFzcz0ic2hvcnRjdXQta2V5Ij4tPC9zcGFuPiBCdWxsZXQgbGlzdAogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2hvcnRjdXQtaXRlbSI+CiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InNob3J0Y3V0LWtleSI+MS48L3NwYW4+IE51bWJlcmVkIGxpc3QKICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNob3J0Y3V0LWl0ZW0iPgogICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzaG9ydGN1dC1rZXkiPi0tLTwvc3Bhbj4gRGl2aWRlcgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2RlZXMtcGFuZWw+CiAgICAgIAogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiMi4gXHV7MUY0RER9IEJsb2cgUG9zdCBFeGFtcGxlIn0+CiAgICAgICAgPHAgY2xhc3M9InBhbmVsLWRlc2NyaXB0aW9uIj4KICAgICAgICAgIFBlcmZlY3QgZm9yIGNyZWF0aW5nIHJpY2ggY29udGVudCB3aXRoIG11bHRpcGxlIGJsb2NrIHR5cGVzLiAKICAgICAgICAgIFRoZSBlZGl0b3IgcHJlc2VydmVzIGZvcm1hdHRpbmcgYW5kIHByb3ZpZGVzIGEgY2xlYW4gZWRpdGluZyBleHBlcmllbmNlLgogICAgICAgIDwvcD4KICAgICAgICAKICAgICAgICA8ZGVlcy1pbnB1dC13eXNpd3lnIAogICAgICAgICAgaWQ9ImVkaXRvci1hcnRpY2xlIgogICAgICAgICAgbGFiZWw9IkJsb2cgUG9zdCBDb250ZW50IiAKICAgICAgICAgIGRlc2NyaXB0aW9uPSJXcml0ZSB5b3VyIGFydGljbGUgdXNpbmcgdmFyaW91cyBmb3JtYXR0aW5nIG9wdGlvbnMiCiAgICAgICAgICBvdXRwdXRGb3JtYXQ9Imh0bWwiCiAgICAgICAgPjwvZGVlcy1pbnB1dC13eXNpd3lnPgogICAgICA8L2RlZXMtcGFuZWw+CgogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiMy4gXHV7MUY1MDB9IERyYWcgJiBEcm9wIFJlb3JkZXJpbmcifT4KICAgICAgICA8cCBjbGFzcz0icGFuZWwtZGVzY3JpcHRpb24iPgogICAgICAgICAgRWFzaWx5IHJlYXJyYW5nZSB5b3VyIGNvbnRlbnQgYmxvY2tzIGJ5IGRyYWdnaW5nIHRoZW0uIAogICAgICAgICAgSG92ZXIgb3ZlciBhbnkgYmxvY2sgdG8gcmV2ZWFsIHRoZSBkcmFnIGhhbmRsZSBvbiB0aGUgbGVmdCBzaWRlLgogICAgICAgIDwvcD4KICAgICAgICAKICAgICAgICA8ZGVlcy1pbnB1dC13eXNpd3lnIAogICAgICAgICAgaWQ9ImVkaXRvci1kcmFnZHJvcCIKICAgICAgICAgIGxhYmVsPSJEcmFnICYgRHJvcCBEZW1vIiAKICAgICAgICAgIGRlc2NyaXB0aW9uPSJUcnkgZHJhZ2dpbmcgYmxvY2tzIHRvIHJlb3JkZXIgdGhlbSAtIGhvdmVyIHRvIHNlZSBkcmFnIGhhbmRsZXMiCiAgICAgICAgPjwvZGVlcy1pbnB1dC13eXNpd3lnPgogICAgICAgIAogICAgICAgIDxkaXYgY2xhc3M9InRpcHMtYm94Ij4KICAgICAgICAgIDxzdHJvbmc+8J+SoSBUaXBzOjwvc3Ryb25nPgogICAgICAgICAgPHVsIGNsYXNzPSJ0aXBzLWxpc3QiPgogICAgICAgICAgICA8bGk+SG92ZXIgb3ZlciBhbnkgYmxvY2sgdG8gc2VlIHRoZSBkcmFnIGhhbmRsZSAo4ouu4ouuKSBvbiB0aGUgbGVmdDwvbGk+CiAgICAgICAgICAgIDxsaT5DbGljayBhbmQgaG9sZCB0aGUgZHJhZyBoYW5kbGUgdG8gc3RhcnQgZHJhZ2dpbmc8L2xpPgogICAgICAgICAgICA8bGk+Qmx1ZSBpbmRpY2F0b3JzIHNob3cgd2hlcmUgdGhlIGJsb2NrIHdpbGwgYmUgZHJvcHBlZDwvbGk+CiAgICAgICAgICAgIDxsaT5EaXZpZGVyIGJsb2NrcyBjYW5ub3QgYmUgZHJhZ2dlZDwvbGk+CiAgICAgICAgICAgIDxsaT5UaGUgZWRpdG9yIG1haW50YWlucyBmb2N1cyBvbiB0aGUgbW92ZWQgYmxvY2sgYWZ0ZXIgZHJvcHBpbmc8L2xpPgogICAgICAgICAgPC91bD4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgoKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IjQuIFx1ezFGNERBfSBUdXRvcmlhbCAmIERvY3VtZW50YXRpb24ifT4KICAgICAgICA8cCBjbGFzcz0icGFuZWwtZGVzY3JpcHRpb24iPgogICAgICAgICAgQ3JlYXRlIGNvbXByZWhlbnNpdmUgdHV0b3JpYWxzIGFuZCBkb2N1bWVudGF0aW9uIHdpdGggY29kZSBleGFtcGxlcywgbGlzdHMsIGFuZCBzdHJ1Y3R1cmVkIGNvbnRlbnQuCiAgICAgICAgPC9wPgogICAgICAgIAogICAgICAgIDxkZWVzLWlucHV0LXd5c2l3eWcgCiAgICAgICAgICBpZD0iZWRpdG9yLXR1dG9yaWFsIgogICAgICAgICAgbGFiZWw9IkdpdCBUdXRvcmlhbCIgCiAgICAgICAgICBkZXNjcmlwdGlvbj0iU3RlcC1ieS1zdGVwIGd1aWRlIHdpdGggY29tbWFuZHMgYW5kIGV4cGxhbmF0aW9ucyIKICAgICAgICAgIG91dHB1dEZvcm1hdD0ibWFya2Rvd24iCiAgICAgICAgICB2YWx1ZT0iIyBHaXQgVHV0b3JpYWwgZm9yIEJlZ2lubmVycwoKR2l0IGlzIGEgZGlzdHJpYnV0ZWQgdmVyc2lvbiBjb250cm9sIHN5c3RlbSB0aGF0IGhlbHBzIHlvdSB0cmFjayBjaGFuZ2VzIGluIHlvdXIgY29kZSBvdmVyIHRpbWUuIFRoaXMgdHV0b3JpYWwgd2lsbCBndWlkZSB5b3UgdGhyb3VnaCB0aGUgYmFzaWNzLgoKIyMgUHJlcmVxdWlzaXRlcwoKQmVmb3JlIHN0YXJ0aW5nLCBlbnN1cmUgeW91IGhhdmU6CgotIEdpdCBpbnN0YWxsZWQgb24geW91ciBzeXN0ZW0KLSBBIHRleHQgZWRpdG9yIG9yIElERQotIEJhc2ljIGNvbW1hbmQgbGluZSBrbm93bGVkZ2UKCiMjIEdldHRpbmcgU3RhcnRlZAoKIyMjIDEuIENvbmZpZ3VyZSBHaXQKCkZpcnN0LCBzZXQgdXAgeW91ciBpZGVudGl0eToKClxgXGBcYGJhc2gKZ2l0IGNvbmZpZyAtLWdsb2JhbCB1c2VyLm5hbWUgJnF1b3Q7WW91ciBOYW1lJnF1b3Q7CmdpdCBjb25maWcgLS1nbG9iYWwgdXNlci5lbWFpbCAmcXVvdDt5b3VyLmVtYWlsQGV4YW1wbGUuY29tJnF1b3Q7ClxgXGBcYAoKIyMjIDIuIEluaXRpYWxpemUgYSBSZXBvc2l0b3J5CgpDcmVhdGUgYSBuZXcgR2l0IHJlcG9zaXRvcnk6CgpcYFxgXGBiYXNoCm1rZGlyIG15LXByb2plY3QKY2QgbXktcHJvamVjdApnaXQgaW5pdApcYFxgXGAKCiMjIyAzLiBCYXNpYyBHaXQgV29ya2Zsb3cKCiMjIyMgQWRkaW5nIEZpbGVzCgpDcmVhdGUgYSBmaWxlIGFuZCBhZGQgaXQgdG8gc3RhZ2luZzoKClxgXGBcYGJhc2gKZWNobyAmcXVvdDsjIE15IFByb2plY3QmcXVvdDsgPiBSRUFETUUubWQKZ2l0IGFkZCBSRUFETUUubWQKXGBcYFxgCgojIyMjIENvbW1pdHRpbmcgQ2hhbmdlcwoKXGBcYFxgYmFzaApnaXQgY29tbWl0IC1tICZxdW90O0luaXRpYWwgY29tbWl0JnF1b3Q7ClxgXGBcYAoKPiAqKkJlc3QgUHJhY3RpY2U6KiogV3JpdGUgY2xlYXIsIGRlc2NyaXB0aXZlIGNvbW1pdCBtZXNzYWdlcyB0aGF0IGV4cGxhaW4gd2hhdCBjaGFuZ2VzIHdlcmUgbWFkZSBhbmQgd2h5LgoKIyMjIDQuIFdvcmtpbmcgd2l0aCBCcmFuY2hlcwoKQnJhbmNoZXMgYWxsb3cgeW91IHRvIHdvcmsgb24gZmVhdHVyZXMgaW5kZXBlbmRlbnRseToKClxgXGBcYGJhc2gKIyBDcmVhdGUgYW5kIHN3aXRjaCB0byBhIG5ldyBicmFuY2gKZ2l0IGNoZWNrb3V0IC1iIGZlYXR1cmUtYnJhbmNoCgojIE1ha2UgY2hhbmdlcyBhbmQgY29tbWl0CmdpdCBhZGQgLgpnaXQgY29tbWl0IC1tICZxdW90O0FkZCBuZXcgZmVhdHVyZSZxdW90OwoKIyBTd2l0Y2ggYmFjayB0byBtYWluCmdpdCBjaGVja291dCBtYWluCgojIE1lcmdlIHRoZSBmZWF0dXJlCmdpdCBtZXJnZSBmZWF0dXJlLWJyYW5jaApcYFxgXGAKCi0tLQoKIyMgQ29tbW9uIENvbW1hbmRzIFJlZmVyZW5jZQoKfCBDb21tYW5kIHwgRGVzY3JpcHRpb24gfAp8LS0tLS0tLS0tfC0tLS0tLS0tLS0tLS18CnwgXGBnaXQgc3RhdHVzXGAgfCBDaGVjayByZXBvc2l0b3J5IHN0YXR1cyB8CnwgXGBnaXQgbG9nXGAgfCBWaWV3IGNvbW1pdCBoaXN0b3J5IHwKfCBcYGdpdCBkaWZmXGAgfCBTaG93IGNoYW5nZXMgfAp8IFxgZ2l0IHB1bGxcYCB8IEZldGNoIGFuZCBtZXJnZSBjaGFuZ2VzIHwKfCBcYGdpdCBwdXNoXGAgfCBVcGxvYWQgY2hhbmdlcyB0byByZW1vdGUgfAoKIyMgTmV4dCBTdGVwcwoKMS4gTGVhcm4gYWJvdXQgcmVtb3RlIHJlcG9zaXRvcmllcwoyLiBFeHBsb3JlIGFkdmFuY2VkIEdpdCBmZWF0dXJlcwozLiBQcmFjdGljZSB3aXRoIHJlYWwgcHJvamVjdHMKNC4gQ29udHJpYnV0ZSB0byBvcGVuIHNvdXJjZQoKKipIYXBweSBjb2RpbmchKiog8J+agCIKICAgICAgICA+PC9kZWVzLWlucHV0LXd5c2l3eWc+CiAgICAgIDwvZGVlcy1wYW5lbD4KCiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyI1LiBcdXsxRjUwNH0gT3V0cHV0IEZvcm1hdHMifT4KICAgICAgICA8cCBjbGFzcz0icGFuZWwtZGVzY3JpcHRpb24iPgogICAgICAgICAgQ2hvb3NlIGJldHdlZW4gSFRNTCBhbmQgTWFya2Rvd24gb3V0cHV0IGZvcm1hdHMgZGVwZW5kaW5nIG9uIHlvdXIgbmVlZHMuIAogICAgICAgICAgUGVyZmVjdCBmb3Igc3RhdGljIHNpdGUgZ2VuZXJhdG9ycywgZG9jdW1lbnRhdGlvbiBzeXN0ZW1zLCBvciBhbnkgY29udGVudCBtYW5hZ2VtZW50IHdvcmtmbG93LgogICAgICAgIDwvcD4KICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJvdXRwdXQtZ3JpZCI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJvdXRwdXQtY2FyZCI+CiAgICAgICAgICAgIDxkZWVzLWlucHV0LXd5c2l3eWcgCiAgICAgICAgICAgICAgaWQ9ImVkaXRvci1tZWV0aW5nIgogICAgICAgICAgICAgIGxhYmVsPSJNZWV0aW5nIE5vdGVzIiAKICAgICAgICAgICAgICBkZXNjcmlwdGlvbj0iU3RydWN0dXJlZCBtZWV0aW5nIGRvY3VtZW50YXRpb24iCiAgICAgICAgICAgICAgb3V0cHV0Rm9ybWF0PSJodG1sIgogICAgICAgICAgICAgIHZhbHVlPSI8aDI+UTQgUGxhbm5pbmcgTWVldGluZzwvaDI+PHA+PHN0cm9uZz5EYXRlOjwvc3Ryb25nPiBEZWNlbWJlciAxNSwgMjAyNDxicj48c3Ryb25nPkF0dGVuZGVlczo8L3N0cm9uZz4gUHJvZHVjdCBUZWFtLCBFbmdpbmVlcmluZywgRGVzaWduPC9wPjxoMz5BZ2VuZGEgSXRlbXM8L2gzPjxvbD48bGk+UmV2aWV3IFEzIGFjaGlldmVtZW50czwvbGk+PGxpPlNldCBRNCBvYmplY3RpdmVzPC9saT48bGk+UmVzb3VyY2UgYWxsb2NhdGlvbjwvbGk+PGxpPlRpbWVsaW5lIGRpc2N1c3Npb248L2xpPjwvb2w+PGgzPktleSBEZWNpc2lvbnM8L2gzPjx1bD48bGk+TGF1bmNoIG5ldyBkYXNoYm9hcmQgZmVhdHVyZSBieSBlbmQgb2YgSmFudWFyeTwvbGk+PGxpPkluY3JlYXNlIGVuZ2luZWVyaW5nIHRlYW0gYnkgMiBkZXZlbG9wZXJzPC9saT48bGk+SW1wbGVtZW50IHdlZWtseSBkZXNpZ24gcmV2aWV3czwvbGk+PC91bD48YmxvY2txdW90ZT4mcXVvdDtGb2N1cyBvbiB1c2VyIGV4cGVyaWVuY2UgaW1wcm92ZW1lbnRzIGJhc2VkIG9uIFEzIGZlZWRiYWNrJnF1b3Q7IC0gUHJvZHVjdCBNYW5hZ2VyPC9ibG9ja3F1b3RlPjxoMz5BY3Rpb24gSXRlbXM8L2gzPjx1bD48bGk+U2FyYWg6IENyZWF0ZSBkZXRhaWxlZCBwcm9qZWN0IHRpbWVsaW5lPC9saT48bGk+TWlrZTogRHJhZnQgdGVjaG5pY2FsIHJlcXVpcmVtZW50czwvbGk+PGxpPkxpc2E6IFNjaGVkdWxlIHVzZXIgcmVzZWFyY2ggc2Vzc2lvbnM8L2xpPjwvdWw+PGhyPjxwPk5leHQgbWVldGluZzogSmFudWFyeSA1LCAyMDI1PC9wPiIKICAgICAgICAgICAgPjwvZGVlcy1pbnB1dC13eXNpd3lnPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJvdXRwdXQtYWN0aW9ucyI+CiAgICAgICAgICAgICAgPGJ1dHRvbiBpZD0iYnRuLXNob3ctaHRtbC1vdXRwdXQiIGNsYXNzPSJkZW1vLWJ1dHRvbiI+U2hvdyBIVE1MIE91dHB1dDwvYnV0dG9uPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPHByZSBpZD0ib3V0cHV0LXByZXZpZXctaHRtbCIgY2xhc3M9Im91dHB1dC1wcmV2aWV3IiBhcmlhLWxpdmU9InBvbGl0ZSI+PC9wcmU+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIAogICAgICAgICAgPGRpdiBjbGFzcz0ib3V0cHV0LWNhcmQiPgogICAgICAgICAgICA8ZGVlcy1pbnB1dC13eXNpd3lnIAogICAgICAgICAgICAgIGlkPSJlZGl0b3ItcmVjaXBlIgogICAgICAgICAgICAgIGxhYmVsPSJSZWNpcGUgQmxvZyBQb3N0IiAKICAgICAgICAgICAgICBkZXNjcmlwdGlvbj0iRm9vZCBibG9nIHdpdGggbWl4ZWQgY29udGVudCIKICAgICAgICAgICAgICBvdXRwdXRGb3JtYXQ9Im1hcmtkb3duIgogICAgICAgICAgICAgIHZhbHVlPSIjIFVsdGltYXRlIENob2NvbGF0ZSBDaGlwIENvb2tpZXMKClRoZXJlJ3Mgbm90aGluZyBxdWl0ZSBsaWtlIHRoZSBzbWVsbCBvZiBmcmVzaGx5IGJha2VkIGNob2NvbGF0ZSBjaGlwIGNvb2tpZXMuIFRoaXMgcmVjaXBlIGhhcyBiZWVuIHBlcmZlY3RlZCBvdmVyIHllYXJzIG9mIHRlc3RpbmchCgojIyBJbmdyZWRpZW50cwoKLSAywrwgY3VwcyBhbGwtcHVycG9zZSBmbG91cgotIDEgdHNwIGJha2luZyBzb2RhCi0gMSB0c3Agc2FsdAotIDEgY3VwIGJ1dHRlciwgc29mdGVuZWQKLSDCviBjdXAgZ3JhbnVsYXRlZCBzdWdhcgotIMK+IGN1cCBwYWNrZWQgYnJvd24gc3VnYXIKLSAyIGxhcmdlIGVnZ3MKLSAyIHRzcCB2YW5pbGxhIGV4dHJhY3QKLSAyIGN1cHMgY2hvY29sYXRlIGNoaXBzCgojIyBJbnN0cnVjdGlvbnMKCiMjIyBTdGVwIDE6IFByZXBhcmF0aW9uCgpQcmVoZWF0IHlvdXIgb3ZlbiB0byAqKjM3NcKwRiAoMTkwwrBDKSoqLiBUaGlzIHRlbXBlcmF0dXJlIGlzIGNydWNpYWwgZm9yIGFjaGlldmluZyB0aGUgcGVyZmVjdCB0ZXh0dXJlLgoKIyMjIFN0ZXAgMjogTWl4IERyeSBJbmdyZWRpZW50cwoKSW4gYSBtZWRpdW0gYm93bCwgd2hpc2sgdG9nZXRoZXI6CgoxLiBGbG91cgoyLiBCYWtpbmcgc29kYQozLiBTYWx0CgojIyMgU3RlcCAzOiBDcmVhbSBCdXR0ZXIgYW5kIFN1Z2FycwoKXGBcYFxgCkNyZWFtIGJ1dHRlciBhbmQgc3VnYXJzIGZvciAzLTQgbWludXRlcwp1bnRpbCBsaWdodCBhbmQgZmx1ZmZ5ClxgXGBcYAoKPiAqKlBybyB0aXA6KiogUm9vbSB0ZW1wZXJhdHVyZSBpbmdyZWRpZW50cyBtaXggYmV0dGVyIGFuZCBjcmVhdGUgYSBtb3JlIHVuaWZvcm0gZG91Z2guCgojIyMgU3RlcCA0OiBBZGQgV2V0IEluZ3JlZGllbnRzCgpCZWF0IGluIGVnZ3Mgb25lIGF0IGEgdGltZSwgdGhlbiBhZGQgdmFuaWxsYSBleHRyYWN0LgoKIyMjIFN0ZXAgNTogQ29tYmluZSBhbmQgQmFrZQoKR3JhZHVhbGx5IGJsZW5kIGluIGZsb3VyIG1peHR1cmUsIHRoZW4gc3RpciBpbiBjaG9jb2xhdGUgY2hpcHMuIERyb3Agcm91bmRlZCB0YWJsZXNwb29ucyBvbnRvIHVuZ3JlYXNlZCBjb29raWUgc2hlZXRzLgoKLS0tCgoqKkJha2luZyB0aW1lOioqIDktMTEgbWludXRlcyBvciB1bnRpbCBnb2xkZW4gYnJvd24KCioqWWllbGQ6KiogQWJvdXQgNSBkb3plbiBjb29raWVzIgogICAgICAgICAgICA+PC9kZWVzLWlucHV0LXd5c2l3eWc+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im91dHB1dC1hY3Rpb25zIj4KICAgICAgICAgICAgICA8YnV0dG9uIGlkPSJidG4tc2hvdy1tYXJrZG93bi1vdXRwdXQiIGNsYXNzPSJkZW1vLWJ1dHRvbiI+U2hvdyBNYXJrZG93biBPdXRwdXQ8L2J1dHRvbj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxwcmUgaWQ9Im91dHB1dC1wcmV2aWV3LW1hcmtkb3duIiBjbGFzcz0ib3V0cHV0LXByZXZpZXciIGFyaWEtbGl2ZT0icG9saXRlIj48L3ByZT4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2RlZXMtcGFuZWw+CgogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiNi4gXHV7MUYzQTh9IEFkdmFuY2VkIEVkaXRpbmcifT4KICAgICAgICA8cCBjbGFzcz0icGFuZWwtZGVzY3JpcHRpb24iPgogICAgICAgICAgQ3JlYXRlIGNvbXBsZXggZG9jdW1lbnRzIHdpdGggbWl4ZWQgY29udGVudCB0eXBlcy4gVGhlIGVkaXRvciBoYW5kbGVzIGFsbCBmb3JtYXR0aW5nIHNlYW1sZXNzbHkuCiAgICAgICAgPC9wPgogICAgICAgIAogICAgICAgIDxkZWVzLWlucHV0LXd5c2l3eWcgCiAgICAgICAgICBpZD0iZWRpdG9yLXRlY2huaWNhbCIKICAgICAgICAgIGxhYmVsPSJUZWNobmljYWwgRG9jdW1lbnRhdGlvbiIgCiAgICAgICAgICBkZXNjcmlwdGlvbj0iQ3JlYXRlIHRlY2huaWNhbCBkb2NzIHdpdGggY29kZSBleGFtcGxlcyBhbmQgc3RydWN0dXJlZCBjb250ZW50IgogICAgICAgICAgdmFsdWU9IjxoMT5BUEkgRG9jdW1lbnRhdGlvbjwvaDE+PHA+V2VsY29tZSB0byBvdXIgQVBJIGRvY3VtZW50YXRpb24uIEJlbG93IHlvdSdsbCBmaW5kIGV4YW1wbGVzIG9mIGhvdyB0byB1c2Ugb3VyIGVuZHBvaW50cy48L3A+PGgyPkF1dGhlbnRpY2F0aW9uPC9oMj48cD5BbGwgQVBJIHJlcXVlc3RzIHJlcXVpcmUgYXV0aGVudGljYXRpb24gdXNpbmcgYW4gQVBJIGtleTo8L3A+PHByZT48Y29kZT5BdXRob3JpemF0aW9uOiBCZWFyZXIgWU9VUl9BUElfS0VZPC9jb2RlPjwvcHJlPjxoMj5FbmRwb2ludHM8L2gyPjxoMz5HRVQgL3VzZXJzPC9oMz48cD5SZXRyaWV2ZSBhIGxpc3Qgb2YgdXNlcnMgZnJvbSB0aGUgc3lzdGVtLjwvcD48cHJlPjxjb2RlPmN1cmwgLVggR0VUIGh0dHBzOi8vYXBpLmV4YW1wbGUuY29tL3VzZXJzIFxcCiAgLUggJnF1b3Q7QXV0aG9yaXphdGlvbjogQmVhcmVyIFlPVVJfQVBJX0tFWSZxdW90OzwvY29kZT48L3ByZT48YmxvY2txdW90ZT5Ob3RlOiBSYXRlIGxpbWl0aW5nIGFwcGxpZXMgdG8gYWxsIGVuZHBvaW50cy4gWW91IGNhbiBtYWtlIHVwIHRvIDEwMCByZXF1ZXN0cyBwZXIgbWludXRlLjwvYmxvY2txdW90ZT48aDM+UE9TVCAvdXNlcnM8L2gzPjxwPkNyZWF0ZSBhIG5ldyB1c2VyIGluIHRoZSBzeXN0ZW0uPC9wPjxwcmU+PGNvZGU+ewogICZxdW90O25hbWUmcXVvdDs6ICZxdW90O0pvaG4gRG9lJnF1b3Q7LAogICZxdW90O2VtYWlsJnF1b3Q7OiAmcXVvdDtqb2huQGV4YW1wbGUuY29tJnF1b3Q7LAogICZxdW90O3JvbGUmcXVvdDs6ICZxdW90O3VzZXImcXVvdDsKfTwvY29kZT48L3ByZT48aHI+PHA+Rm9yIG1vcmUgaW5mb3JtYXRpb24sIHBsZWFzZSByZWZlciB0byBvdXIgY29tcGxldGUgZG9jdW1lbnRhdGlvbi48L3A+IgogICAgICAgICAgb3V0cHV0Rm9ybWF0PSJodG1sIgogICAgICAgID48L2RlZXMtaW5wdXQtd3lzaXd5Zz4KICAgICAgPC9kZWVzLXBhbmVsPgoKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IjcuIFx1MjY5OVx1RkUwRiBGb3JtIEludGVncmF0aW9uIn0+CiAgICAgICAgPHAgY2xhc3M9InBhbmVsLWRlc2NyaXB0aW9uIj4KICAgICAgICAgIFNlYW1sZXNzbHkgaW50ZWdyYXRlcyB3aXRoIGRlZXMtZm9ybSBmb3IgY29tcGxldGUgZm9ybSBzb2x1dGlvbnMuIAogICAgICAgICAgQWxsIHN0YW5kYXJkIGZvcm0gZmVhdHVyZXMgbGlrZSB2YWxpZGF0aW9uLCByZXF1aXJlZCBmaWVsZHMsIGFuZCBkYXRhIGJpbmRpbmcgd29yayBvdXQgb2YgdGhlIGJveC4KICAgICAgICA8L3A+CiAgICAgICAgCiAgICAgICAgPGRlZXMtZm9ybT4KICAgICAgICAgIDxkZWVzLWlucHV0LXRleHQgCiAgICAgICAgICAgIGxhYmVsPSJBcnRpY2xlIFRpdGxlIiAKICAgICAgICAgICAgcmVxdWlyZWQ9InRydWUiCiAgICAgICAgICAgIHZhbHVlPSJIb3cgdG8gQnVpbGQgTW9kZXJuIFdlYiBBcHBsaWNhdGlvbnMiCiAgICAgICAgICA+PC9kZWVzLWlucHV0LXRleHQ+CiAgICAgICAgICAKICAgICAgICAgIDxkZWVzLWlucHV0LXd5c2l3eWcgCiAgICAgICAgICAgIGlkPSJlZGl0b3ItZm9ybS1pbnRlZ3JhdGlvbiIKICAgICAgICAgICAgbGFiZWw9IkFydGljbGUgQ29udGVudCIgCiAgICAgICAgICAgIGRlc2NyaXB0aW9uPSJXcml0ZSB5b3VyIGFydGljbGUgY29udGVudCBoZXJlIgogICAgICAgICAgICByZXF1aXJlZD0idHJ1ZSIKICAgICAgICAgICAgb3V0cHV0Rm9ybWF0PSJtYXJrZG93biIKICAgICAgICAgID48L2RlZXMtaW5wdXQtd3lzaXd5Zz4KICAgICAgICAgIAogICAgICAgICAgPGRlZXMtaW5wdXQtdGFncwogICAgICAgICAgICBsYWJlbD0iVGFncyIKICAgICAgICAgICAgZGVzY3JpcHRpb249IkFkZCByZWxldmFudCB0YWdzIGZvciB5b3VyIGFydGljbGUiCiAgICAgICAgICA+PC9kZWVzLWlucHV0LXRhZ3M+CiAgICAgICAgPC9kZWVzLWZvcm0+CiAgICAgIDwvZGVlcy1wYW5lbD4KCiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyI4LiBcdXsxRjlFOX0gUHJvZ3JhbW1hdGljIEJsb2NrIENyZWF0aW9uIn0+CiAgICAgICAgPHAgY2xhc3M9InBhbmVsLWRlc2NyaXB0aW9uIj4KICAgICAgICAgIENyZWF0ZSBjb250ZW50IHByb2dyYW1tYXRpY2FsbHkgdXNpbmcgdGhlIGJsb2NrIEFQSSBmb3IgZHluYW1pYyBkb2N1bWVudCBnZW5lcmF0aW9uLgogICAgICAgIDwvcD4KICAgICAgICAKICAgICAgICA8ZGVlcy1pbnB1dC13eXNpd3lnCiAgICAgICAgICBpZD0iZWRpdG9yLXByb2dyYW1tYXRpYyIKICAgICAgICAgIGxhYmVsPSJQcm9ncmFtbWF0aWNhbGx5IEdlbmVyYXRlZCBDb250ZW50IgogICAgICAgICAgZGVzY3JpcHRpb249IlRoaXMgY29udGVudCB3YXMgY3JlYXRlZCB1c2luZyB0aGUgaW1wb3J0QmxvY2tzIEFQSSIKICAgICAgICA+PC9kZWVzLWlucHV0LXd5c2l3eWc+CiAgICAgICAgCiAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWdyb3VwIj4KICAgICAgICAgIDxidXR0b24gaWQ9ImJ0bi1nZW5lcmF0ZS1yZXBvcnQiIGNsYXNzPSJkZW1vLWJ1dHRvbiI+CiAgICAgICAgICAgIEdlbmVyYXRlIFJlcG9ydAogICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAKICAgICAgICAgIDxidXR0b24gaWQ9ImJ0bi1nZW5lcmF0ZS1yZWNpcGUiIGNsYXNzPSJkZW1vLWJ1dHRvbiI+CiAgICAgICAgICAgIEdlbmVyYXRlIFJlY2lwZQogICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAKICAgICAgICAgIDxidXR0b24gaWQ9ImJ0bi1jbGVhci1lZGl0b3IiIGNsYXNzPSJkZW1vLWJ1dHRvbiI+CiAgICAgICAgICAgIENsZWFyIEVkaXRvcgogICAgICAgICAgPC9idXR0b24+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGVlcy1wYW5lbD4KCiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyI5LiBcdXsxRjRFNH0gRXhwb3J0L0ltcG9ydCBGZWF0dXJlcyJ9PgogICAgICAgIDxwIGNsYXNzPSJwYW5lbC1kZXNjcmlwdGlvbiI+CiAgICAgICAgICBUaGUgV1lTSVdZRyBlZGl0b3IgcHJvdmlkZXMgbXVsdGlwbGUgZXhwb3J0IGZvcm1hdHMgYW5kIGxvc3NsZXNzIHNhdmUvcmVzdG9yZSBjYXBhYmlsaXRpZXMgZm9yIG1heGltdW0gZmxleGliaWxpdHkuCiAgICAgICAgPC9wPgogICAgICAgIAogICAgICAgIDxkaXYgY2xhc3M9ImV4cG9ydC1pbmZvLWdyaWQiPgogICAgICAgICAgPGRpdiBjbGFzcz0iZXhwb3J0LWluZm8tY2FyZCBibG9ja3MiPgogICAgICAgICAgICA8c3Ryb25nPkxvc3NsZXNzIEJsb2Nrczwvc3Ryb25nPgogICAgICAgICAgICA8cD5FeHBvcnQgYW5kIGltcG9ydCByYXcgYmxvY2sgc3RydWN0dXJlIGZvciBwZXJmZWN0IHJvdW5kLXRyaXAgZWRpdGluZzwvcD4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0iZXhwb3J0LWluZm8tY2FyZCBodG1sIj4KICAgICAgICAgICAgPHN0cm9uZz5IVE1MIEV4cG9ydDwvc3Ryb25nPgogICAgICAgICAgICA8cD5HZXQgY2xlYW4sIHNlbWFudGljIEhUTUwgcmVnYXJkbGVzcyBvZiBvdXRwdXQgZm9ybWF0IHNldHRpbmc8L3A+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImV4cG9ydC1pbmZvLWNhcmQgbWFya2Rvd24iPgogICAgICAgICAgICA8c3Ryb25nPk1hcmtkb3duIEV4cG9ydDwvc3Ryb25nPgogICAgICAgICAgICA8cD5FeHBvcnQgYXMgTWFya2Rvd24gZm9yIGRvY3MsIFJFQURNRXMsIGFuZCBzdGF0aWMgc2l0ZXM8L3A+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImV4cG9ydC1pbmZvLWNhcmQgc3RhdGUiPgogICAgICAgICAgICA8c3Ryb25nPlN0YXRlIE1hbmFnZW1lbnQ8L3N0cm9uZz4KICAgICAgICAgICAgPHA+U2F2ZSBhbmQgcmVzdG9yZSBjb21wbGV0ZSBlZGl0b3Igc3RhdGUgaW5jbHVkaW5nIHNldHRpbmdzPC9wPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgICAgCiAgICAgICAgPGRlZXMtaW5wdXQtd3lzaXd5ZwogICAgICAgICAgaWQ9ImVkaXRvci1leHBvcnQiCiAgICAgICAgICBsYWJlbD0iRXhwb3J0IERlbW8gRWRpdG9yIgogICAgICAgICAgZGVzY3JpcHRpb249IlRyeSB0aGUgZXhwb3J0IGJ1dHRvbnMgYmVsb3cgdG8gc2VlIGRpZmZlcmVudCBvdXRwdXQgZm9ybWF0cyIKICAgICAgICAgIHZhbHVlPSI8aDE+U29mdHdhcmUgUmVsZWFzZSBOb3RlczwvaDE+PHA+PHN0cm9uZz5WZXJzaW9uIDIuNS4wPC9zdHJvbmc+IC0gUmVsZWFzZWQgRGVjZW1iZXIgMTUsIDIwMjQ8L3A+PGgyPvCfjokgTmV3IEZlYXR1cmVzPC9oMj48dWw+PGxpPkFkZGVkIGRhcmsgbW9kZSBzdXBwb3J0IGFjcm9zcyBhbGwgY29tcG9uZW50czwvbGk+PGxpPkltcGxlbWVudGVkIHJlYWwtdGltZSBjb2xsYWJvcmF0aW9uIGZlYXR1cmVzPC9saT48bGk+TmV3IGRhc2hib2FyZCBhbmFseXRpY3Mgd2lkZ2V0czwvbGk+PGxpPkV4cG9ydCBmdW5jdGlvbmFsaXR5IGZvciBhbGwgcmVwb3J0IHR5cGVzPC9saT48L3VsPjxoMj7wn5CbIEJ1ZyBGaXhlczwvaDI+PHVsPjxsaT5GaXhlZCBtZW1vcnkgbGVhayBpbiBkYXRhIHByb2Nlc3NpbmcgbW9kdWxlPC9saT48bGk+UmVzb2x2ZWQgYXV0aGVudGljYXRpb24gdGltZW91dCBpc3N1ZXM8L2xpPjxsaT5Db3JyZWN0ZWQgdGltZXpvbmUgaGFuZGxpbmcgaW4gc2NoZWR1bGVkIHRhc2tzPC9saT48L3VsPjxoMj7imqEgUGVyZm9ybWFuY2UgSW1wcm92ZW1lbnRzPC9oMj48YmxvY2txdW90ZT5QYWdlIGxvYWQgdGltZXMgcmVkdWNlZCBieSA0MCUgdGhyb3VnaCBsYXp5IGxvYWRpbmcgYW5kIGNvZGUgc3BsaXR0aW5nPC9ibG9ja3F1b3RlPjxoMj7wn5SnIFRlY2huaWNhbCBEZXRhaWxzPC9oMj48cHJlPjxjb2RlPi8vIE5ldyBBUEkgZW5kcG9pbnQgZm9yIGJhdGNoIG9wZXJhdGlvbnMKUE9TVCAvYXBpL3YyL2JhdGNoCnsKICAmcXVvdDtvcGVyYXRpb25zJnF1b3Q7OiBbCiAgICB7ICZxdW90O21ldGhvZCZxdW90OzogJnF1b3Q7R0VUJnF1b3Q7LCAmcXVvdDtwYXRoJnF1b3Q7OiAmcXVvdDsvdXNlcnMvMTIzJnF1b3Q7IH0sCiAgICB7ICZxdW90O21ldGhvZCZxdW90OzogJnF1b3Q7UFVUJnF1b3Q7LCAmcXVvdDtwYXRoJnF1b3Q7OiAmcXVvdDsvc2V0dGluZ3MmcXVvdDssICZxdW90O2JvZHkmcXVvdDs6IHsuLi59IH0KICBdCn08L2NvZGU+PC9wcmU+PGgyPvCfkqEgTWlncmF0aW9uIEd1aWRlPC9oMj48b2w+PGxpPlVwZGF0ZSB5b3VyIGRlcGVuZGVuY2llcyB0byB0aGUgbGF0ZXN0IHZlcnNpb25zPC9saT48bGk+UnVuIGRhdGFiYXNlIG1pZ3JhdGlvbnM6IDxjb2RlPm5wbSBydW4gbWlncmF0ZTwvY29kZT48L2xpPjxsaT5DbGVhciBjYWNoZTogPGNvZGU+bnBtIHJ1biBjYWNoZTpjbGVhcjwvY29kZT48L2xpPjxsaT5SZXN0YXJ0IGFsbCBzZXJ2aWNlczwvbGk+PC9vbD48aHI+PHA+Rm9yIHF1ZXN0aW9ucyBvciBpc3N1ZXMsIHBsZWFzZSBjb250YWN0IHRoZSBkZXZlbG9wbWVudCB0ZWFtIG9yIGZpbGUgYSB0aWNrZXQgaW4gb3VyIGlzc3VlIHRyYWNrZXIuPC9wPiIKICAgICAgICA+PC9kZWVzLWlucHV0LXd5c2l3eWc+CiAgICAgICAgCiAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWdyb3VwIj4KICAgICAgICAgIDxidXR0b24gaWQ9ImJ0bi1leHBvcnQtYmxvY2tzIiBjbGFzcz0iZGVtby1idXR0b24iPgogICAgICAgICAgICBFeHBvcnQgQmxvY2tzCiAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgIAogICAgICAgICAgPGJ1dHRvbiBpZD0iYnRuLWV4cG9ydC1odG1sIiBjbGFzcz0iZGVtby1idXR0b24iPgogICAgICAgICAgICBFeHBvcnQgYXMgSFRNTAogICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAKICAgICAgICAgIDxidXR0b24gaWQ9ImJ0bi1leHBvcnQtbWFya2Rvd24iIGNsYXNzPSJkZW1vLWJ1dHRvbiI+CiAgICAgICAgICAgIEV4cG9ydCBhcyBNYXJrZG93bgogICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAKICAgICAgICAgIDxidXR0b24gaWQ9ImJ0bi1zYXZlLXN0YXRlIiBjbGFzcz0iZGVtby1idXR0b24iPgogICAgICAgICAgICBTYXZlIFN0YXRlCiAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgIAogICAgICAgICAgPGJ1dHRvbiBpZD0iYnRuLXJlc3RvcmUtc3RhdGUiIGNsYXNzPSJkZW1vLWJ1dHRvbiI+CiAgICAgICAgICAgIFJlc3RvcmUgU3RhdGUKICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgIDwvZGl2PgogICAgICA8L2RlZXMtcGFuZWw+CiAgICA8L2Rpdj4KICA8L2RlZXMtZGVtb3dyYXBwZXI+CmB9KTt2YXIgT289bCgoKT0+e30pO3ZhciBvaSxFOD1sKCgpPT57T28oKTtvaT1jbGFzc3tzdGF0aWMgSEVBRElOR19QQVRURVJOUz1be3BhdHRlcm46L14jW1xzXHUwMEEwXSQvLHR5cGU6ImhlYWRpbmctMSJ9LHtwYXR0ZXJuOi9eIyNbXHNcdTAwQTBdJC8sdHlwZToiaGVhZGluZy0yIn0se3BhdHRlcm46L14jIyNbXHNcdTAwQTBdJC8sdHlwZToiaGVhZGluZy0zIn1dO3N0YXRpYyBMSVNUX1BBVFRFUk5TPVt7cGF0dGVybjovXlsqLV1bXHNcdTAwQTBdJC8sdHlwZToiYnVsbGV0In0se3BhdHRlcm46L14oXGQrKVwuW1xzXHUwMEEwXSQvLHR5cGU6Im9yZGVyZWQifSx7cGF0dGVybjovXihcZCspXClbXHNcdTAwQTBdJC8sdHlwZToib3JkZXJlZCJ9XTtzdGF0aWMgUVVPVEVfUEFUVEVSTj0vXj5bXHNcdTAwQTBdJC87c3RhdGljIENPREVfUEFUVEVSTj0vXmBgYCQvO3N0YXRpYyBESVZJREVSX1BBVFRFUk5TPVsiLS0tIiwiKioqIiwiX19fIl07c3RhdGljIGNoZWNrSGVhZGluZ1Nob3J0Y3V0KHQpe2ZvcihsZXR7cGF0dGVybjpyLHR5cGU6YX1vZiB0aGlzLkhFQURJTkdfUEFUVEVSTlMpaWYoci50ZXN0KHQpKXJldHVybnt0eXBlOmF9O3JldHVybiBudWxsfXN0YXRpYyBjaGVja0xpc3RTaG9ydGN1dCh0KXtmb3IobGV0e3BhdHRlcm46cix0eXBlOmF9b2YgdGhpcy5MSVNUX1BBVFRFUk5TKWlmKHIudGVzdCh0KSlyZXR1cm57dHlwZToibGlzdCIsbGlzdFR5cGU6YX07cmV0dXJuIG51bGx9c3RhdGljIGNoZWNrUXVvdGVTaG9ydGN1dCh0KXtyZXR1cm4gdGhpcy5RVU9URV9QQVRURVJOLnRlc3QodCl9c3RhdGljIGNoZWNrQ29kZVNob3J0Y3V0KHQpe3JldHVybiB0aGlzLkNPREVfUEFUVEVSTi50ZXN0KHQpfXN0YXRpYyBjaGVja0RpdmlkZXJTaG9ydGN1dCh0KXtyZXR1cm4gdGhpcy5ESVZJREVSX1BBVFRFUk5TLmluY2x1ZGVzKHQpfXN0YXRpYyBnZXRTbGFzaE1lbnVJdGVtcygpe3JldHVyblt7dHlwZToicGFyYWdyYXBoIixsYWJlbDoiUGFyYWdyYXBoIixpY29uOiJsdWNpZGU6cGlsY3JvdyJ9LHt0eXBlOiJoZWFkaW5nLTEiLGxhYmVsOiJIZWFkaW5nIDEiLGljb246Imx1Y2lkZTpoZWFkaW5nMSJ9LHt0eXBlOiJoZWFkaW5nLTIiLGxhYmVsOiJIZWFkaW5nIDIiLGljb246Imx1Y2lkZTpoZWFkaW5nMiJ9LHt0eXBlOiJoZWFkaW5nLTMiLGxhYmVsOiJIZWFkaW5nIDMiLGljb246Imx1Y2lkZTpoZWFkaW5nMyJ9LHt0eXBlOiJxdW90ZSIsbGFiZWw6IlF1b3RlIixpY29uOiJsdWNpZGU6cXVvdGUifSx7dHlwZToiY29kZSIsbGFiZWw6IkNvZGUgQmxvY2siLGljb246Imx1Y2lkZTpmaWxlQ29kZSJ9LHt0eXBlOiJsaXN0IixsYWJlbDoiQnVsbGV0IExpc3QiLGljb246Imx1Y2lkZTpsaXN0In0se3R5cGU6ImltYWdlIixsYWJlbDoiSW1hZ2UiLGljb246Imx1Y2lkZTppbWFnZSJ9LHt0eXBlOiJkaXZpZGVyIixsYWJlbDoiRGl2aWRlciIsaWNvbjoibHVjaWRlOm1pbnVzIn0se3R5cGU6InlvdXR1YmUiLGxhYmVsOiJZb3VUdWJlIixpY29uOiJsdWNpZGU6eW91dHViZSJ9LHt0eXBlOiJtYXJrZG93biIsbGFiZWw6Ik1hcmtkb3duIixpY29uOiJsdWNpZGU6ZmlsZVRleHQifSx7dHlwZToiaHRtbCIsbGFiZWw6IkhUTUwiLGljb246Imx1Y2lkZTpjb2RlIn0se3R5cGU6ImF0dGFjaG1lbnQiLGxhYmVsOiJGaWxlIEF0dGFjaG1lbnQiLGljb246Imx1Y2lkZTpwYXBlcmNsaXAifV19c3RhdGljIGdlbmVyYXRlQmxvY2tJZCgpe3JldHVybmBibG9jay0ke0RhdGUubm93KCl9LSR7TWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc3Vic3RyaW5nKDIsOSl9YH19fSk7dmFyIEc5LFJzLFdsZSxwY3Q9bCgoKT0+e1NlKCk7VG4oKTticigpO09vKCk7RTgoKTtvdCgpO0c5PWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sUnM9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LFdsZT0oKCk9PntsZXQgZT1bemUoImRlZXMtc2xhc2gtbWVudSIpXSx0LHI9W10sYSxpPURlLG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdLHUscD1bXSxoPVtdLGIseD1bXSxnPVtdLHYsdz1bXSxNPVtdO3ZhciBGPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgQz10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtyZSgpXSxjPVtyZSgpXSx1PVtyZSgpXSxiPVtyZSgpXSx2PVtyZSgpXSxHOSh0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InZpc2libGUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOms9PiJ2aXNpYmxlImluIGssZ2V0Oms9PmsudmlzaWJsZSxzZXQ6KGssTik9PntrLnZpc2libGU9Tn19LG1ldGFkYXRhOkN9LG4scyksRzkodGhpcyxudWxsLGMse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJwb3NpdGlvbiIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6az0+InBvc2l0aW9uImluIGssZ2V0Oms9PmsucG9zaXRpb24sc2V0OihrLE4pPT57ay5wb3NpdGlvbj1OfX0sbWV0YWRhdGE6Q30sZCxmKSxHOSh0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImZpbHRlciIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6az0+ImZpbHRlciJpbiBrLGdldDprPT5rLmZpbHRlcixzZXQ6KGssTik9PntrLmZpbHRlcj1OfX0sbWV0YWRhdGE6Q30scCxoKSxHOSh0aGlzLG51bGwsYix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNlbGVjdGVkSW5kZXgiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOms9PiJzZWxlY3RlZEluZGV4ImluIGssZ2V0Oms9Pmsuc2VsZWN0ZWRJbmRleCxzZXQ6KGssTik9PntrLnNlbGVjdGVkSW5kZXg9Tn19LG1ldGFkYXRhOkN9LHgsZyksRzkodGhpcyxudWxsLHYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJtZW51WkluZGV4IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczprPT4ibWVudVpJbmRleCJpbiBrLGdldDprPT5rLm1lbnVaSW5kZXgsc2V0OihrLE4pPT57ay5tZW51WkluZGV4PU59fSxtZXRhZGF0YTpDfSx3LE0pLEc5KG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOkN9LG51bGwsciksRj1hPXQudmFsdWUsQyYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpDfSl9c3RhdGljIGluc3RhbmNlO3N0YXRpYyBnZXRJbnN0YW5jZSgpe3JldHVybiBGLmluc3RhbmNlfHwoRi5pbnN0YW5jZT1uZXcgRixkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKEYuaW5zdGFuY2UpKSxGLmluc3RhbmNlfSNlPVJzKHRoaXMsbiwhMSk7Z2V0IHZpc2libGUoKXtyZXR1cm4gdGhpcy4jZX1zZXQgdmlzaWJsZShDKXt0aGlzLiNlPUN9I3Q9KFJzKHRoaXMscyksUnModGhpcyxkLHt4OjAseTowfSkpO2dldCBwb3NpdGlvbigpe3JldHVybiB0aGlzLiN0fXNldCBwb3NpdGlvbihDKXt0aGlzLiN0PUN9I3I9KFJzKHRoaXMsZiksUnModGhpcyxwLCIiKSk7Z2V0IGZpbHRlcigpe3JldHVybiB0aGlzLiNyfXNldCBmaWx0ZXIoQyl7dGhpcy4jcj1DfSNhPShScyh0aGlzLGgpLFJzKHRoaXMseCwwKSk7Z2V0IHNlbGVjdGVkSW5kZXgoKXtyZXR1cm4gdGhpcy4jYX1zZXQgc2VsZWN0ZWRJbmRleChDKXt0aGlzLiNhPUN9I2k9KFJzKHRoaXMsZyksUnModGhpcyx3LDFlMykpO2dldCBtZW51WkluZGV4KCl7cmV0dXJuIHRoaXMuI2l9c2V0IG1lbnVaSW5kZXgoQyl7dGhpcy4jaT1DfWNhbGxiYWNrPShScyh0aGlzLE0pLG51bGwpO3N0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgLyogVE9ETzogTWlncmF0ZSBoYXJkY29kZWQgdmFsdWVzIHRvIC0tZGVlcy0qIENTUyB2YXJpYWJsZXMgKi8KICAgICAgOmhvc3QgewogICAgICAgIHBvc2l0aW9uOiBmaXhlZDsKICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAgICAgICB0b3A6IDA7CiAgICAgICAgbGVmdDogMDsKICAgICAgICB3aWR0aDogMDsKICAgICAgICBoZWlnaHQ6IDA7CiAgICAgIH0KCiAgICAgIC5zbGFzaC1tZW51IHsKICAgICAgICBwb3NpdGlvbjogZml4ZWQ7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmZmZmZmYiLCIjMDkwOTBiIil9OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZTVlN2ViIiwiIzI3MjcyYSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgYm94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xKSwgMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4wNik7CiAgICAgICAgcGFkZGluZzogNHB4OwogICAgICAgIG1pbi13aWR0aDogMjIwcHg7CiAgICAgICAgbWF4LWhlaWdodDogMzAwcHg7CiAgICAgICAgb3ZlcmZsb3cteTogYXV0bzsKICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bzsKICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTsKICAgICAgICBhbmltYXRpb246IGZhZGVJblNjYWxlIDAuMTVzIGVhc2Utb3V0OwogICAgICB9CgogICAgICBAa2V5ZnJhbWVzIGZhZGVJblNjYWxlIHsKICAgICAgICBmcm9tIHsKICAgICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOTgpIHRyYW5zbGF0ZVkoLTJweCk7CiAgICAgICAgfQogICAgICAgIHRvIHsKICAgICAgICAgIG9wYWNpdHk6IDE7CiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpIHRyYW5zbGF0ZVkoMCk7CiAgICAgICAgfQogICAgICB9CgogICAgICAuc2xhc2gtbWVudS1pdGVtIHsKICAgICAgICBwYWRkaW5nOiA4cHggMTBweDsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogMTJweDsKICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMDkwOTBiIiwiI2ZhZmFmYSIpfTsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgIH0KCiAgICAgIC5zbGFzaC1tZW51LWl0ZW06aG92ZXIsCiAgICAgIC5zbGFzaC1tZW51LWl0ZW0uc2VsZWN0ZWQgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjRmNGY1IiwiIzI3MjcyYSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwOTA5MGIiLCIjZmFmYWZhIil9OwogICAgICB9CgogICAgICAuc2xhc2gtbWVudS1pdGVtIC5pY29uIHsKICAgICAgICB3aWR0aDogMjBweDsKICAgICAgICBoZWlnaHQ6IDIwcHg7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzcxNzE3YSIsIiNhMWExYWEiKX07CiAgICAgIH0KCiAgICAgIC5zbGFzaC1tZW51LWl0ZW06aG92ZXIgLmljb24sCiAgICAgIC5zbGFzaC1tZW51LWl0ZW0uc2VsZWN0ZWQgLmljb24gewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzNiODJmNiIsIiMzYjgyZjYiKX07CiAgICAgIH0KICAgIGBdO3JlbmRlcigpe2lmKCF0aGlzLnZpc2libGUpcmV0dXJuIFNgYDt0aGlzLnN0eWxlLnpJbmRleD10aGlzLm1lbnVaSW5kZXgudG9TdHJpbmcoKTtsZXQgQz10aGlzLmdldEZpbHRlcmVkTWVudUl0ZW1zKCk7cmV0dXJuIFNgCiAgICAgIDxkaXYgCiAgICAgICAgY2xhc3M9InNsYXNoLW1lbnUiIAogICAgICAgIHN0eWxlPSJsZWZ0OiAke3RoaXMucG9zaXRpb24ueH1weDsgdG9wOiAke3RoaXMucG9zaXRpb24ueX1weDsiCiAgICAgICAgdGFiaW5kZXg9Ii0xIgogICAgICAgIGRhdGEtbWVudS10eXBlPSJzbGFzaCIKICAgICAgPgogICAgICAgICR7Qy5tYXAoKGssTik9PlNgCiAgICAgICAgICA8ZGl2IAogICAgICAgICAgICBjbGFzcz0ic2xhc2gtbWVudS1pdGVtICR7Tj09PXRoaXMuc2VsZWN0ZWRJbmRleD8ic2VsZWN0ZWQiOiIifSIKICAgICAgICAgICAgZGF0YS1pdGVtLXR5cGU9IiR7ay50eXBlfSIKICAgICAgICAgICAgZGF0YS1pdGVtLWluZGV4PSIke059IgogICAgICAgICAgPgogICAgICAgICAgICA8ZGVlcy1pY29uIGNsYXNzPSJpY29uIiAuaWNvbj0iJHtrLmljb259IiBpY29uU2l6ZT0iMTYiPjwvZGVlcy1pY29uPgogICAgICAgICAgICA8c3Bhbj4ke2subGFiZWx9PC9zcGFuPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgYCl9CiAgICAgIDwvZGl2PgogICAgYH1nZXRGaWx0ZXJlZE1lbnVJdGVtcygpe3JldHVybiBvaS5nZXRTbGFzaE1lbnVJdGVtcygpLmZpbHRlcihrPT50aGlzLmZpbHRlcj09PSIifHxrLmxhYmVsLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXModGhpcy5maWx0ZXIudG9Mb3dlckNhc2UoKSkpfXNlbGVjdEl0ZW0oQyl7dGhpcy5jYWxsYmFjayYmdGhpcy5jYWxsYmFjayhDKSx0aGlzLmhpZGUoKX1zaG93KEMsayl7dGhpcy5wb3NpdGlvbj1DLHRoaXMuY2FsbGJhY2s9ayx0aGlzLmZpbHRlcj0iIix0aGlzLnNlbGVjdGVkSW5kZXg9MCx0aGlzLm1lbnVaSW5kZXg9Y2EuZ2V0TmV4dFpJbmRleCgpLGNhLnJlZ2lzdGVyKHRoaXMsdGhpcy5tZW51WkluZGV4KSx0aGlzLnN0eWxlLnpJbmRleD10aGlzLm1lbnVaSW5kZXgudG9TdHJpbmcoKSx0aGlzLnZpc2libGU9ITB9aGlkZSgpe3RoaXMudmlzaWJsZT0hMSx0aGlzLmNhbGxiYWNrPW51bGwsdGhpcy5maWx0ZXI9IiIsdGhpcy5zZWxlY3RlZEluZGV4PTAsY2EudW5yZWdpc3Rlcih0aGlzKX11cGRhdGVGaWx0ZXIoQyl7dGhpcy5maWx0ZXI9Qyx0aGlzLnNlbGVjdGVkSW5kZXg9MH1uYXZpZ2F0ZShDKXtsZXQgaz10aGlzLmdldEZpbHRlcmVkTWVudUl0ZW1zKCk7Qz09PSJkb3duIj90aGlzLnNlbGVjdGVkSW5kZXg9KHRoaXMuc2VsZWN0ZWRJbmRleCsxKSVrLmxlbmd0aDp0aGlzLnNlbGVjdGVkSW5kZXg9dGhpcy5zZWxlY3RlZEluZGV4PT09MD9rLmxlbmd0aC0xOnRoaXMuc2VsZWN0ZWRJbmRleC0xfXNlbGVjdEN1cnJlbnQoKXtsZXQgQz10aGlzLmdldEZpbHRlcmVkTWVudUl0ZW1zKCk7Q1t0aGlzLnNlbGVjdGVkSW5kZXhdJiZ0aGlzLnNlbGVjdEl0ZW0oQ1t0aGlzLnNlbGVjdGVkSW5kZXhdLnR5cGUpfWZpcnN0VXBkYXRlZCgpe3RoaXMuc2hhZG93Um9vdD8uYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vkb3duIixDPT57bGV0IGs9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCIuc2xhc2gtbWVudSIpO2smJmsuY29udGFpbnMoQy50YXJnZXQpJiYoQy5wcmV2ZW50RGVmYXVsdCgpLEMuc3RvcFByb3BhZ2F0aW9uKCkpfSksdGhpcy5zaGFkb3dSb290Py5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsQz0+e2xldCBOPUMudGFyZ2V0LmNsb3Nlc3QoIi5zbGFzaC1tZW51LWl0ZW0iKTtpZihOKXtDLnByZXZlbnREZWZhdWx0KCksQy5zdG9wUHJvcGFnYXRpb24oKTtsZXQgJD1OLmdldEF0dHJpYnV0ZSgiZGF0YS1pdGVtLXR5cGUiKTskJiZ0aGlzLnNlbGVjdEl0ZW0oJCl9fSksdGhpcy5zaGFkb3dSb290Py5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWVudGVyIixDPT57bGV0IE49Qy50YXJnZXQuY2xvc2VzdCgiLnNsYXNoLW1lbnUtaXRlbSIpO2lmKE4pe2xldCAkPXBhcnNlSW50KE4uZ2V0QXR0cmlidXRlKCJkYXRhLWl0ZW0taW5kZXgiKXx8IjAiLDEwKTt0aGlzLnNlbGVjdGVkSW5kZXg9JH19LCEwKSx0aGlzLnNoYWRvd1Jvb3Q/LmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzIixDPT57bGV0IGs9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCIuc2xhc2gtbWVudSIpO2smJmsuY29udGFpbnMoQy50YXJnZXQpJiYoQy5wcmV2ZW50RGVmYXVsdCgpLEMuc3RvcFByb3BhZ2F0aW9uKCkpfSwhMCl9c3RhdGlje1JzKGEscil9fTtyZXR1cm4gRj1hfSkoKX0pO3ZhciBydCx1bD1sKCgpPT57cnQ9Y2xhc3N7c3RhdGljIGdldFNlbGVjdGlvbkluZm8oLi4udCl7bGV0IHI9d2luZG93LmdldFNlbGVjdGlvbigpO2lmKGNvbnNvbGUubG9nKCJXeXNpd3lnU2VsZWN0aW9uLmdldFNlbGVjdGlvbkluZm8gLSBzZWxlY3Rpb246IixyLCJyYW5nZUNvdW50OiIscj8ucmFuZ2VDb3VudCksIXIpcmV0dXJuIG51bGw7aWYoImdldENvbXBvc2VkUmFuZ2VzImluIHImJnR5cGVvZiByLmdldENvbXBvc2VkUmFuZ2VzPT0iZnVuY3Rpb24iKXtjb25zb2xlLmxvZygiVXNpbmcgZ2V0Q29tcG9zZWRSYW5nZXMgd2l0aCIsdC5sZW5ndGgsInNoYWRvdyByb290cyIpO3RyeXtsZXQgYT1yLmdldENvbXBvc2VkUmFuZ2VzKHtzaGFkb3dSb290czp0fSk7aWYoY29uc29sZS5sb2coImdldENvbXBvc2VkUmFuZ2VzIHJldHVybmVkIixhLmxlbmd0aCwicmFuZ2VzIiksYS5sZW5ndGg+MCl7bGV0IGk9YVswXTtyZXR1cm57c3RhcnRDb250YWluZXI6aS5zdGFydENvbnRhaW5lcixzdGFydE9mZnNldDppLnN0YXJ0T2Zmc2V0LGVuZENvbnRhaW5lcjppLmVuZENvbnRhaW5lcixlbmRPZmZzZXQ6aS5lbmRPZmZzZXQsY29sbGFwc2VkOmkuY29sbGFwc2VkfX19Y2F0Y2goYSl7Y29uc29sZS53YXJuKCJnZXRDb21wb3NlZFJhbmdlcyBmYWlsZWQsIGZhbGxpbmcgYmFjayB0byBnZXRSYW5nZUF0OiIsYSl9fWVsc2UgY29uc29sZS5sb2coImdldENvbXBvc2VkUmFuZ2VzIG5vdCBhdmFpbGFibGUsIHVzaW5nIGZhbGxiYWNrIik7aWYoci5yYW5nZUNvdW50PjApe2xldCBhPXIuZ2V0UmFuZ2VBdCgwKTtyZXR1cm57c3RhcnRDb250YWluZXI6YS5zdGFydENvbnRhaW5lcixzdGFydE9mZnNldDphLnN0YXJ0T2Zmc2V0LGVuZENvbnRhaW5lcjphLmVuZENvbnRhaW5lcixlbmRPZmZzZXQ6YS5lbmRPZmZzZXQsY29sbGFwc2VkOmEuY29sbGFwc2VkfX1yZXR1cm4gbnVsbH1zdGF0aWMgaXNTZWxlY3Rpb25JbkVsZW1lbnQodCxyKXtsZXQgYT1yP3RoaXMuZ2V0U2VsZWN0aW9uSW5mbyhyKTp0aGlzLmdldFNlbGVjdGlvbkluZm8oKTtyZXR1cm4gYT90LmNvbnRhaW5zKGEuc3RhcnRDb250YWluZXIpfHx0LmNvbnRhaW5zKGEuZW5kQ29udGFpbmVyKTohMX1zdGF0aWMgZ2V0U2VsZWN0ZWRUZXh0KCl7bGV0IHQ9d2luZG93LmdldFNlbGVjdGlvbigpO3JldHVybiB0P3QudG9TdHJpbmcoKToiIn1zdGF0aWMgY3JlYXRlUmFuZ2VGcm9tSW5mbyh0KXtsZXQgcj1kb2N1bWVudC5jcmVhdGVSYW5nZSgpO3JldHVybiByLnNldFN0YXJ0KHQuc3RhcnRDb250YWluZXIsdC5zdGFydE9mZnNldCksci5zZXRFbmQodC5lbmRDb250YWluZXIsdC5lbmRPZmZzZXQpLHJ9c3RhdGljIHNldFNlbGVjdGlvbkZyb21SYW5nZSh0KXtsZXQgcj13aW5kb3cuZ2V0U2VsZWN0aW9uKCk7ciYmKHIucmVtb3ZlQWxsUmFuZ2VzKCksci5hZGRSYW5nZSh0KSl9c3RhdGljIGdldEN1cnNvclBvc2l0aW9uSW5FbGVtZW50KHQsLi4ucil7bGV0IGE9ci5sZW5ndGg+MD90aGlzLmdldFNlbGVjdGlvbkluZm8oLi4ucik6dGhpcy5nZXRTZWxlY3Rpb25JbmZvKCk7aWYoIWF8fCFhLmNvbGxhcHNlZClyZXR1cm4gbnVsbDt0cnl7bGV0IGk9ZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTtpZihpLnNlbGVjdE5vZGVDb250ZW50cyh0KSx0aGlzLmNvbnRhaW5zQWNyb3NzU2hhZG93RE9NKHQsYS5zdGFydENvbnRhaW5lcikpcmV0dXJuIGkuc2V0RW5kKGEuc3RhcnRDb250YWluZXIsYS5zdGFydE9mZnNldCksaS50b1N0cmluZygpLmxlbmd0aDt7bGV0IG49dC50ZXh0Q29udGVudHx8IiIscz1hLnN0YXJ0Q29udGFpbmVyLnRleHRDb250ZW50fHwiIjtyZXR1cm4gYS5zdGFydE9mZnNldD09PTA/MDphLnN0YXJ0T2Zmc2V0PT09cy5sZW5ndGg/bi5sZW5ndGg6KGNvbnNvbGUud2FybigiU2VsZWN0aW9uIGNvbnRhaW5lciBub3Qgd2l0aGluIGVsZW1lbnQsIHVzaW5nIHRleHQgbWF0Y2hpbmcgZmFsbGJhY2siKSxhLnN0YXJ0T2Zmc2V0KX19Y2F0Y2goaSl7cmV0dXJuIGNvbnNvbGUud2FybigiRmFpbGVkIHRvIGdldCBjdXJzb3IgcG9zaXRpb246IixpKSxudWxsfX1zdGF0aWMgZ2V0Q3Vyc29yUG9zaXRpb25Gcm9tUG9pbnQodCxyLGEsLi4uaSl7aWYoImNhcmV0UG9zaXRpb25Gcm9tUG9pbnQiaW4gZG9jdW1lbnQmJmRvY3VtZW50LmNhcmV0UG9zaXRpb25Gcm9tUG9pbnQpe2xldCBvPW51bGw7dHJ5e289ZG9jdW1lbnQuY2FyZXRQb3NpdGlvbkZyb21Qb2ludCh0LHIsLi4uaSl9Y2F0Y2h7bz1kb2N1bWVudC5jYXJldFBvc2l0aW9uRnJvbVBvaW50KHQscil9aWYobyYmYS5jb250YWlucyhvLm9mZnNldE5vZGUpKXJldHVybiB0aGlzLmdldE9mZnNldEluRWxlbWVudChvLm9mZnNldE5vZGUsby5vZmZzZXQsYSl9aWYoImNhcmV0UmFuZ2VGcm9tUG9pbnQiaW4gZG9jdW1lbnQpe2xldCBvPWRvY3VtZW50LmNhcmV0UmFuZ2VGcm9tUG9pbnQodCxyKTtpZihvJiZhLmNvbnRhaW5zKG8uc3RhcnRDb250YWluZXIpKXJldHVybiB0aGlzLmdldE9mZnNldEluRWxlbWVudChvLnN0YXJ0Q29udGFpbmVyLG8uc3RhcnRPZmZzZXQsYSl9cmV0dXJuIG51bGx9c3RhdGljIGdldE9mZnNldEluRWxlbWVudCh0LHIsYSl7bGV0IGk9MCxvPSExLG49ZG9jdW1lbnQuY3JlYXRlVHJlZVdhbGtlcihhLE5vZGVGaWx0ZXIuU0hPV19URVhULG51bGwpLHM7Zm9yKDtzPW4ubmV4dE5vZGUoKTspaWYocz09PXQpe2krPXIsbz0hMDticmVha31lbHNlIGkrPXMudGV4dENvbnRlbnQ/Lmxlbmd0aHx8MDtyZXR1cm4gbz9pOjB9c3RhdGljIHNldEN1cnNvclBvc2l0aW9uKHQscil7bGV0IGE9ZG9jdW1lbnQuY3JlYXRlVHJlZVdhbGtlcih0LE5vZGVGaWx0ZXIuU0hPV19URVhULG51bGwpLGk9MCxvPW51bGwsbj0wO2Zvcig7YS5uZXh0Tm9kZSgpOyl7bGV0IHM9YS5jdXJyZW50Tm9kZSxjPXMudGV4dENvbnRlbnQ/Lmxlbmd0aHx8MDtpZihpK2M+PXIpe289cyxuPXItaTticmVha31pKz1jfWlmKG8pe2xldCBzPWRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7cy5zZXRTdGFydChvLG4pLHMuY29sbGFwc2UoITApLHRoaXMuc2V0U2VsZWN0aW9uRnJvbVJhbmdlKHMpfX1zdGF0aWMgY29udGFpbnNBY3Jvc3NTaGFkb3dET00odCxyKXtpZighdHx8IXIpcmV0dXJuITE7bGV0IGE9cjtmb3IoO2E7KXtpZihhPT09dClyZXR1cm4hMDtpZihhLm5vZGVUeXBlPT09Tm9kZS5ET0NVTUVOVF9GUkFHTUVOVF9OT0RFJiZhLmhvc3Qpe2xldCBpPWE7aWYoaS5jb250YWlucyh0KSlyZXR1cm4hMTthPWkuaG9zdH1lbHNlIGE9YS5wYXJlbnROb2RlfXJldHVybiExfX19KTt2YXIgUmMsaGN0PWwoKCk9PntTZSgpO3VsKCk7UmM9Y2xhc3N7c3RhdGljIGZvcm1hdEJ1dHRvbnM9W3tjb21tYW5kOiJib2xkIixpY29uOiJCIixsYWJlbDoiQm9sZCIsc2hvcnRjdXQ6Ilx1MjMxOEIifSx7Y29tbWFuZDoiaXRhbGljIixpY29uOiJJIixsYWJlbDoiSXRhbGljIixzaG9ydGN1dDoiXHUyMzE4SSJ9LHtjb21tYW5kOiJ1bmRlcmxpbmUiLGljb246IlUiLGxhYmVsOiJVbmRlcmxpbmUiLHNob3J0Y3V0OiJcdTIzMThVIn0se2NvbW1hbmQ6InN0cmlrZVRocm91Z2giLGljb246IlNcdTAzMzYiLGxhYmVsOiJTdHJpa2V0aHJvdWdoIn0se2NvbW1hbmQ6ImNvZGUiLGljb246InsgfSIsbGFiZWw6IklubGluZSBDb2RlIn0se2NvbW1hbmQ6ImxpbmsiLGljb246Ilx1ezFGNTE3fSIsbGFiZWw6IkxpbmsiLHNob3J0Y3V0OiJcdTIzMThLIn1dO3N0YXRpYyByZW5kZXJGb3JtYXR0aW5nTWVudSh0LHIpe3JldHVybiBTYAogICAgICA8ZGl2IAogICAgICAgIGNsYXNzPSJmb3JtYXR0aW5nLW1lbnUiIAogICAgICAgIHN0eWxlPSJ0b3A6ICR7dC55fXB4OyBsZWZ0OiAke3QueH1weDsiCiAgICAgICAgQG1vdXNlZG93bj0iJHthPT57YS5wcmV2ZW50RGVmYXVsdCgpLGEuc3RvcFByb3BhZ2F0aW9uKCl9fSIKICAgICAgICBAY2xpY2s9IiR7YT0+YS5zdG9wUHJvcGFnYXRpb24oKX0iCiAgICAgID4KICAgICAgICAke3RoaXMuZm9ybWF0QnV0dG9ucy5tYXAoYT0+U2AKICAgICAgICAgIDxidXR0b24gCiAgICAgICAgICAgIGNsYXNzPSJmb3JtYXQtYnV0dG9uICR7YS5jb21tYW5kfSIKICAgICAgICAgICAgQGNsaWNrPSIkeygpPT5yKGEuY29tbWFuZCl9IgogICAgICAgICAgICB0aXRsZT0iJHthLmxhYmVsfSR7YS5zaG9ydGN1dD9gICgke2Euc2hvcnRjdXR9KWA6IiJ9IgogICAgICAgICAgPgogICAgICAgICAgICA8c3BhbiBjbGFzcz0iJHthLmNvbW1hbmQ9PT0iY29kZSI/ImNvZGUtaWNvbiI6IiJ9Ij4ke2EuaWNvbn08L3NwYW4+CiAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICBgKX0KICAgICAgPC9kaXY+CiAgICBgfXN0YXRpYyBhcHBseUZvcm1hdCh0LHIsYSxpKXtsZXQgbztpZihhKW89YTtlbHNle2xldCBuPXdpbmRvdy5nZXRTZWxlY3Rpb24oKTtpZighbnx8bi5yYW5nZUNvdW50PT09MClyZXR1cm4hMTtvPW4uZ2V0UmFuZ2VBdCgwKX1zd2l0Y2godCl7Y2FzZSJib2xkIjp0aGlzLndyYXBTZWxlY3Rpb24obywic3Ryb25nIik7YnJlYWs7Y2FzZSJpdGFsaWMiOnRoaXMud3JhcFNlbGVjdGlvbihvLCJlbSIpO2JyZWFrO2Nhc2UidW5kZXJsaW5lIjp0aGlzLndyYXBTZWxlY3Rpb24obywidSIpO2JyZWFrO2Nhc2Uic3RyaWtlVGhyb3VnaCI6dGhpcy53cmFwU2VsZWN0aW9uKG8sInMiKTticmVhaztjYXNlImNvZGUiOnRoaXMud3JhcFNlbGVjdGlvbihvLCJjb2RlIik7YnJlYWs7Y2FzZSJsaW5rIjppZighcilyZXR1cm4hMTt0aGlzLndyYXBTZWxlY3Rpb25XaXRoTGluayhvLHIpO2JyZWFrfWlmKGkmJmkubGVuZ3RoPjApcnQuc2V0U2VsZWN0aW9uRnJvbVJhbmdlKG8pO2Vsc2V7bGV0IG49d2luZG93LmdldFNlbGVjdGlvbigpO24mJihuLnJlbW92ZUFsbFJhbmdlcygpLG4uYWRkUmFuZ2UobykpfXJldHVybiEwfXN0YXRpYyB3cmFwU2VsZWN0aW9uKHQscil7bGV0IGE9d2luZG93LmdldFNlbGVjdGlvbigpO2lmKCFhKXJldHVybjtpZih0aGlzLnNlbGVjdGlvbkNvbnRhaW5zVGFnKHQscikpdGhpcy5yZW1vdmVUYWdGcm9tU2VsZWN0aW9uKHQscik7ZWxzZXtsZXQgbz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KHIpO3RyeXtsZXQgbj10LmV4dHJhY3RDb250ZW50cygpO28uYXBwZW5kQ2hpbGQobiksdC5pbnNlcnROb2RlKG8pLHQuc2VsZWN0Tm9kZUNvbnRlbnRzKG8pLGEucmVtb3ZlQWxsUmFuZ2VzKCksYS5hZGRSYW5nZSh0KX1jYXRjaChuKXtjb25zb2xlLmVycm9yKCJGYWlsZWQgdG8gd3JhcCBzZWxlY3Rpb246IixuKX19fXN0YXRpYyBzZWxlY3Rpb25Db250YWluc1RhZyh0LHIpe2xldCBhPXQuc3RhcnRDb250YWluZXI7Zm9yKDthJiZhIT09dC5jb21tb25BbmNlc3RvckNvbnRhaW5lci5vd25lckRvY3VtZW50Oyl7aWYoYS5ub2RlVHlwZT09PU5vZGUuRUxFTUVOVF9OT0RFJiZhLnRhZ05hbWUudG9Mb3dlckNhc2UoKT09PXIpcmV0dXJuITA7YT1hLnBhcmVudE5vZGV9Zm9yKGE9dC5lbmRDb250YWluZXI7YSYmYSE9PXQuY29tbW9uQW5jZXN0b3JDb250YWluZXIub3duZXJEb2N1bWVudDspe2lmKGEubm9kZVR5cGU9PT1Ob2RlLkVMRU1FTlRfTk9ERSYmYS50YWdOYW1lLnRvTG93ZXJDYXNlKCk9PT1yKXJldHVybiEwO2E9YS5wYXJlbnROb2RlfWxldCBpPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLG89dC5jbG9uZUNvbnRlbnRzKCk7cmV0dXJuIGkuYXBwZW5kQ2hpbGQobyksaS5nZXRFbGVtZW50c0J5VGFnTmFtZShyKS5sZW5ndGg+MH1zdGF0aWMgcmVtb3ZlVGFnRnJvbVNlbGVjdGlvbih0LHIpe2xldCBhPXdpbmRvdy5nZXRTZWxlY3Rpb24oKTtpZighYSlyZXR1cm47bGV0IGk9dC5jbG9uZVJhbmdlKCksbz10LnN0YXJ0Q29udGFpbmVyLG49bnVsbDtmb3IoO28mJm8hPT10LmNvbW1vbkFuY2VzdG9yQ29udGFpbmVyLm93bmVyRG9jdW1lbnQ7KXtpZihvLm5vZGVUeXBlPT09Tm9kZS5FTEVNRU5UX05PREUmJm8udGFnTmFtZS50b0xvd2VyQ2FzZSgpPT09cil7bj1vO2JyZWFrfW89by5wYXJlbnROb2RlfWxldCBzPXQuZW5kQ29udGFpbmVyLGM9bnVsbDtmb3IoO3MmJnMhPT10LmNvbW1vbkFuY2VzdG9yQ29udGFpbmVyLm93bmVyRG9jdW1lbnQ7KXtpZihzLm5vZGVUeXBlPT09Tm9kZS5FTEVNRU5UX05PREUmJnMudGFnTmFtZS50b0xvd2VyQ2FzZSgpPT09cil7Yz1zO2JyZWFrfXM9cy5wYXJlbnROb2RlfW4mJmkuc2V0U3RhcnRCZWZvcmUobiksYyYmaS5zZXRFbmRBZnRlcihjKTtsZXQgZD1pLmV4dHJhY3RDb250ZW50cygpLGY9dGhpcy5yZW1vdmVUYWdzRnJvbUZyYWdtZW50KGQscik7aS5pbnNlcnROb2RlKGYpO2xldCB1PVtdLHA9ZG9jdW1lbnQuY3JlYXRlVHJlZVdhbGtlcihmLE5vZGVGaWx0ZXIuU0hPV19URVhULG51bGwpLGg7Zm9yKDtoPXAubmV4dE5vZGUoKTspdS5wdXNoKGgpO2lmKHUubGVuZ3RoPjApe2xldCBiPWRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7Yi5zZXRTdGFydCh1WzBdLDApLGIuc2V0RW5kKHVbdS5sZW5ndGgtMV0sdVt1Lmxlbmd0aC0xXS50ZXh0Q29udGVudD8ubGVuZ3RofHwwKSxhLnJlbW92ZUFsbFJhbmdlcygpLGEuYWRkUmFuZ2UoYil9fXN0YXRpYyByZW1vdmVUYWdzRnJvbUZyYWdtZW50KHQscil7bGV0IGE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7YS5hcHBlbmRDaGlsZCh0KTtsZXQgaT1hLmdldEVsZW1lbnRzQnlUYWdOYW1lKHIpO0FycmF5LmZyb20oaSkuZm9yRWFjaChzPT57bGV0IGM9cy5wYXJlbnROb2RlO2lmKGMpe2Zvcig7cy5maXJzdENoaWxkOyljLmluc2VydEJlZm9yZShzLmZpcnN0Q2hpbGQscyk7Yy5yZW1vdmVDaGlsZChzKX19KTtsZXQgbj1kb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCk7Zm9yKDthLmZpcnN0Q2hpbGQ7KW4uYXBwZW5kQ2hpbGQoYS5maXJzdENoaWxkKTtyZXR1cm4gbn1zdGF0aWMgd3JhcFNlbGVjdGlvbldpdGhMaW5rKHQscil7bGV0IGE9d2luZG93LmdldFNlbGVjdGlvbigpO2lmKCFhKXJldHVybjt0aGlzLnNlbGVjdGlvbkNvbnRhaW5zVGFnKHQsImEiKSYmKHRoaXMucmVtb3ZlVGFnRnJvbVNlbGVjdGlvbih0LCJhIiksYS5yYW5nZUNvdW50PjAmJih0PWEuZ2V0UmFuZ2VBdCgwKSkpO2xldCBpPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImEiKTtpLmhyZWY9cixpLnRhcmdldD0iX2JsYW5rIixpLnJlbD0ibm9vcGVuZXIgbm9yZWZlcnJlciI7dHJ5e2xldCBvPXQuZXh0cmFjdENvbnRlbnRzKCk7aS5hcHBlbmRDaGlsZChvKSx0Lmluc2VydE5vZGUoaSksdC5zZWxlY3ROb2RlQ29udGVudHMoaSksYS5yZW1vdmVBbGxSYW5nZXMoKSxhLmFkZFJhbmdlKHQpfWNhdGNoKG8pe2NvbnNvbGUuZXJyb3IoIkZhaWxlZCB0byBjcmVhdGUgbGluazoiLG8pfX1zdGF0aWMgZ2V0U2VsZWN0aW9uQ29vcmRpbmF0ZXMoLi4udCl7bGV0IHI9cnQuZ2V0U2VsZWN0aW9uSW5mbyguLi50KTtpZihjb25zb2xlLmxvZygiZ2V0U2VsZWN0aW9uQ29vcmRpbmF0ZXMgLSBzZWxlY3Rpb25JbmZvOiIsciksIXIpcmV0dXJuIGNvbnNvbGUubG9nKCJObyBzZWxlY3Rpb24gaW5mbyBhdmFpbGFibGUiKSxudWxsO2xldCBpPXJ0LmNyZWF0ZVJhbmdlRnJvbUluZm8ocikuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7aWYoY29uc29sZS5sb2coIlJhbmdlIHJlY3Q6IixpKSxpLndpZHRoPT09MCYmaS5oZWlnaHQ9PT0wKXtpZihjb25zb2xlLmxvZygiUmVjdCB3aWR0aCBhbmQgaGVpZ2h0IGFyZSAwLCB0cnlpbmcgZGlmZmVyZW50IGFwcHJvYWNoIiksImNhcmV0UG9zaXRpb25Gcm9tUG9pbnQiaW4gZG9jdW1lbnQpe2xldCBuPXdpbmRvdy5nZXRTZWxlY3Rpb24oKTtpZihuJiZuLnJhbmdlQ291bnQ+MCl7bGV0IHM9bi5nZXRSYW5nZUF0KDApLGM9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpO2MudGV4dENvbnRlbnQ9Ilx1MjAwQiIscy5pbnNlcnROb2RlKGMpO2xldCBkPWMuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7aWYoYy5yZW1vdmUoKSxkLndpZHRoPjB8fGQuaGVpZ2h0PjApe2xldCBmPXt4OmQubGVmdCx5Ok1hdGgubWF4KDQ1LGQudG9wLTQ1KX07cmV0dXJuIGNvbnNvbGUubG9nKCJVc2VkIHNwYW4gdHJpY2sgZm9yIGNvb3JkczoiLGYpLGZ9fX1yZXR1cm4gbnVsbH1sZXQgbz17eDppLmxlZnQraS53aWR0aC8yLHk6TWF0aC5tYXgoNDUsaS50b3AtNDUpfTtyZXR1cm4gY29uc29sZS5sb2coIlJldHVybmluZyBjb29yZHM6IixvKSxvfX19KTt2YXIgR2xlLCQ4LFlsZSxtY3Q9bCgoKT0+e1NlKCk7VG4oKTtoY3QoKTtvdCgpO0dsZT1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LCQ4PWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSxZbGU9KCgpPT57bGV0IGU9W3plKCJkZWVzLWZvcm1hdHRpbmctbWVudSIpXSx0LHI9W10sYSxpPURlLG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdLHUscD1bXSxoPVtdO3ZhciBiPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgeD10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtyZSgpXSxjPVtyZSgpXSx1PVtyZSgpXSxHbGUodGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ2aXNpYmxlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpnPT4idmlzaWJsZSJpbiBnLGdldDpnPT5nLnZpc2libGUsc2V0OihnLHYpPT57Zy52aXNpYmxlPXZ9fSxtZXRhZGF0YTp4fSxuLHMpLEdsZSh0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InBvc2l0aW9uIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpnPT4icG9zaXRpb24iaW4gZyxnZXQ6Zz0+Zy5wb3NpdGlvbixzZXQ6KGcsdik9PntnLnBvc2l0aW9uPXZ9fSxtZXRhZGF0YTp4fSxkLGYpLEdsZSh0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im1lbnVaSW5kZXgiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmc9PiJtZW51WkluZGV4ImluIGcsZ2V0Omc9PmcubWVudVpJbmRleCxzZXQ6KGcsdik9PntnLm1lbnVaSW5kZXg9dn19LG1ldGFkYXRhOnh9LHAsaCksR2xlKG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOnh9LG51bGwsciksYj1hPXQudmFsdWUseCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTp4fSl9c3RhdGljIGluc3RhbmNlO3N0YXRpYyBnZXRJbnN0YW5jZSgpe3JldHVybiBiLmluc3RhbmNlfHwoYi5pbnN0YW5jZT1uZXcgYixkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGIuaW5zdGFuY2UpKSxiLmluc3RhbmNlfSNlPSQ4KHRoaXMsbiwhMSk7Z2V0IHZpc2libGUoKXtyZXR1cm4gdGhpcy4jZX1zZXQgdmlzaWJsZSh4KXt0aGlzLiNlPXh9I3Q9KCQ4KHRoaXMscyksJDgodGhpcyxkLHt4OjAseTowfSkpO2dldCBwb3NpdGlvbigpe3JldHVybiB0aGlzLiN0fXNldCBwb3NpdGlvbih4KXt0aGlzLiN0PXh9I3I9KCQ4KHRoaXMsZiksJDgodGhpcyxwLDFlMykpO2dldCBtZW51WkluZGV4KCl7cmV0dXJuIHRoaXMuI3J9c2V0IG1lbnVaSW5kZXgoeCl7dGhpcy4jcj14fWNhbGxiYWNrPSgkOCh0aGlzLGgpLG51bGwpO3N0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgLyogVE9ETzogTWlncmF0ZSBoYXJkY29kZWQgdmFsdWVzIHRvIC0tZGVlcy0qIENTUyB2YXJpYWJsZXMgKi8KICAgICAgOmhvc3QgewogICAgICAgIHBvc2l0aW9uOiBmaXhlZDsKICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAgICAgICB0b3A6IDA7CiAgICAgICAgbGVmdDogMDsKICAgICAgICB3aWR0aDogMDsKICAgICAgICBoZWlnaHQ6IDA7CiAgICAgIH0KCiAgICAgIC5mb3JtYXR0aW5nLW1lbnUgewogICAgICAgIHBvc2l0aW9uOiBmaXhlZDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2ZmZmZmZiIsIiMyNjI2MjYiKX07CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlMGUwZTAiLCIjNDA0MDQwIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICBib3gtc2hhZG93OiAwIDJweCAxNnB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7CiAgICAgICAgcGFkZGluZzogNHB4OwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZ2FwOiAycHg7CiAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87CiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgICAgYW5pbWF0aW9uOiBmYWRlSW5TY2FsZSAwLjE1cyBlYXNlLW91dDsKICAgICAgfQoKICAgICAgQGtleWZyYW1lcyBmYWRlSW5TY2FsZSB7CiAgICAgICAgZnJvbSB7CiAgICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk1KSB0cmFuc2xhdGVZKDVweCk7CiAgICAgICAgfQogICAgICAgIHRvIHsKICAgICAgICAgIG9wYWNpdHk6IDE7CiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpIHRyYW5zbGF0ZVkoMCk7CiAgICAgICAgfQogICAgICB9CgogICAgICAuZm9ybWF0LWJ1dHRvbiB7CiAgICAgICAgd2lkdGg6IDMycHg7CiAgICAgICAgaGVpZ2h0OiAzMnB4OwogICAgICAgIGJvcmRlcjogbm9uZTsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwMDAwMDAiLCIjZTBlMGUwIil9OwogICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgfQoKICAgICAgLmZvcm1hdC1idXR0b246aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjBmMGYwIiwiIzMzMzMzMyIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwMDY2Y2MiLCIjNGQ5NGZmIil9OwogICAgICB9CgogICAgICAuZm9ybWF0LWJ1dHRvbjphY3RpdmUgewogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSk7CiAgICAgIH0KCiAgICAgIC5mb3JtYXQtYnV0dG9uLmJvbGQgewogICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7CiAgICAgIH0KCiAgICAgIC5mb3JtYXQtYnV0dG9uLml0YWxpYyB7CiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljOwogICAgICB9CgogICAgICAuZm9ybWF0LWJ1dHRvbi51bmRlcmxpbmUgewogICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOwogICAgICB9CgogICAgICAuZm9ybWF0LWJ1dHRvbiAuY29kZS1pY29uIHsKICAgICAgICBmb250LWZhbWlseTogJ1NGIE1vbm8nLCAnTW9uYWNvJywgJ0luY29uc29sYXRhJywgJ0ZpcmEgQ29kZScsIG1vbm9zcGFjZTsKICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgIH0KICAgIGBdO3JlbmRlcigpe3JldHVybiB0aGlzLnZpc2libGU/KHRoaXMuc3R5bGUuekluZGV4PXRoaXMubWVudVpJbmRleC50b1N0cmluZygpLFNgCiAgICAgIDxkaXYgCiAgICAgICAgY2xhc3M9ImZvcm1hdHRpbmctbWVudSIgCiAgICAgICAgc3R5bGU9ImxlZnQ6ICR7dGhpcy5wb3NpdGlvbi54fXB4OyB0b3A6ICR7dGhpcy5wb3NpdGlvbi55fXB4OyIKICAgICAgICB0YWJpbmRleD0iLTEiCiAgICAgICAgZGF0YS1tZW51LXR5cGU9ImZvcm1hdHRpbmciCiAgICAgID4KICAgICAgICAke1JjLmZvcm1hdEJ1dHRvbnMubWFwKHg9PlNgCiAgICAgICAgICA8YnV0dG9uIAogICAgICAgICAgICBjbGFzcz0iZm9ybWF0LWJ1dHRvbiAke3guY29tbWFuZH0iCiAgICAgICAgICAgIGRhdGEtY29tbWFuZD0iJHt4LmNvbW1hbmR9IgogICAgICAgICAgICB0aXRsZT0iJHt4LmxhYmVsfSR7eC5zaG9ydGN1dD9gICgke3guc2hvcnRjdXR9KWA6IiJ9IgogICAgICAgICAgPgogICAgICAgICAgICA8c3BhbiBjbGFzcz0iJHt4LmNvbW1hbmQ9PT0iY29kZSI/ImNvZGUtaWNvbiI6IiJ9Ij4ke3guaWNvbn08L3NwYW4+CiAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICBgKX0KICAgICAgPC9kaXY+CiAgICBgKTpTYGB9YXBwbHlGb3JtYXQoeCl7dGhpcy5jYWxsYmFjayYmdGhpcy5jYWxsYmFjayh4KSx4PT09ImxpbmsiJiZ0aGlzLmhpZGUoKX1zaG93KHgsZyl7Y29uc29sZS5sb2coIkZvcm1hdHRpbmdNZW51LnNob3cgY2FsbGVkOiIse3Bvc2l0aW9uOngsdmlzaWJsZTp0aGlzLnZpc2libGV9KSx0aGlzLnBvc2l0aW9uPXgsdGhpcy5jYWxsYmFjaz1nLHRoaXMubWVudVpJbmRleD1jYS5nZXROZXh0WkluZGV4KCksY2EucmVnaXN0ZXIodGhpcyx0aGlzLm1lbnVaSW5kZXgpLHRoaXMuc3R5bGUuekluZGV4PXRoaXMubWVudVpJbmRleC50b1N0cmluZygpLHRoaXMudmlzaWJsZT0hMH1oaWRlKCl7dGhpcy52aXNpYmxlPSExLHRoaXMuY2FsbGJhY2s9bnVsbCxjYS51bnJlZ2lzdGVyKHRoaXMpfXVwZGF0ZVBvc2l0aW9uKHgpe3RoaXMucG9zaXRpb249eH1maXJzdFVwZGF0ZWQoKXt0aGlzLnNoYWRvd1Jvb3Q/LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZG93biIseD0+e2xldCBnPXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiLmZvcm1hdHRpbmctbWVudSIpO2cmJmcuY29udGFpbnMoeC50YXJnZXQpJiYoeC5wcmV2ZW50RGVmYXVsdCgpLHguc3RvcFByb3BhZ2F0aW9uKCkpfSksdGhpcy5zaGFkb3dSb290Py5hZGRFdmVudExpc3RlbmVyKCJjbGljayIseD0+e2xldCB2PXgudGFyZ2V0LmNsb3Nlc3QoIi5mb3JtYXQtYnV0dG9uIik7aWYodil7eC5wcmV2ZW50RGVmYXVsdCgpLHguc3RvcFByb3BhZ2F0aW9uKCk7bGV0IHc9di5nZXRBdHRyaWJ1dGUoImRhdGEtY29tbWFuZCIpO3cmJnRoaXMuYXBwbHlGb3JtYXQodyl9fSksdGhpcy5zaGFkb3dSb290Py5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIseD0+e2xldCBnPXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiLmZvcm1hdHRpbmctbWVudSIpO2cmJmcuY29udGFpbnMoeC50YXJnZXQpJiYoeC5wcmV2ZW50RGVmYXVsdCgpLHguc3RvcFByb3BhZ2F0aW9uKCkpfSwhMCl9c3RhdGljeyQ4KGEscil9fTtyZXR1cm4gYj1hfSkoKX0pO3ZhciBZOT1sKCgpPT57U2UoKTtPbygpO3BjdCgpO21jdCgpfSk7dmFyIG1aLFpsZT1sKCgpPT57bVo9WyJKYXZhU2NyaXB0IiwiVHlwZVNjcmlwdCIsIlB5dGhvbiIsIkphdmEiLCJDKysiLCJDIyIsIkdvIiwiUnVzdCIsIkhUTUwiLCJDU1MiLCJTUUwiLCJTaGVsbCIsIkpTT04iLCJZQU1MIiwiTWFya2Rvd24iLCJQbGFpbiBUZXh0Il19KTt2YXIgZ2N0LFQkcj1sKCgpPT57U2UoKTtnY3Q9bGVgCiAgOmhvc3QgewogICAgZGlzcGxheTogYmxvY2s7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgfQoKICAud3lzaXd5Zy1jb250YWluZXIgewogICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmZmZmZmYiLCIjMDkwOTBiIil9OwogICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjMjcyNzJhIil9OwogICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgbWluLWhlaWdodDogMjAwcHg7CiAgICBwYWRkaW5nOiAyNHB4OwogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTsKICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzA5MDkwYiIsIiNmYWZhZmEiKX07CiAgfQoKICAud3lzaXd5Zy1jb250YWluZXI6aG92ZXIgewogICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiI2QxZDVkYiIsIiMzZjNmNDYiKX07CiAgfQoKICAud3lzaXd5Zy1jb250YWluZXI6Zm9jdXMtd2l0aGluIHsKICAgIG91dGxpbmU6IDJweCBzb2xpZCB0cmFuc3BhcmVudDsKICAgIG91dGxpbmUtb2Zmc2V0OiAycHg7CiAgICBib3gtc2hhZG93OiAwIDAgMCAycHggJHttLmJkVGhlbWUoIiNmNGY0ZjUiLCIjMTgxODFiIil9LCAwIDAgMCA0cHggJHttLmJkVGhlbWUoInJnYmEoNTksIDEzMCwgMjQ2LCAwLjUpIiwicmdiYSg1OSwgMTMwLCAyNDYsIDAuNSkiKX07CiAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCIjM2I4MmY2IiwiIzNiODJmNiIpfTsKICB9CgogIC8qIFZpc3VhbCBoaW50IGZvciB0ZXh0IHNlbGVjdGlvbiAqLwogIC5lZGl0b3ItY29udGVudDpob3ZlciB7CiAgICBjdXJzb3I6IHRleHQ7CiAgfQoKICAuZWRpdG9yLWNvbnRlbnQgewogICAgb3V0bGluZTogbm9uZTsKICAgIG1pbi1oZWlnaHQ6IDE2MHB4OwogICAgbWFyZ2luOiAwIC04cHg7CiAgICBwYWRkaW5nOiAwIDhweDsKICB9CgogIC5ibG9jayB7CiAgICBtYXJnaW46IDA7CiAgICBwYWRkaW5nOiA0cHggMDsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgbWluLWhlaWdodDogMS42ZW07CiAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwOTA5MGIiLCIjZmFmYWZhIil9OwogIH0KCiAgLyogRmlyc3QgYW5kIGxhc3QgYmxvY2tzIGRvbid0IG5lZWQgZXh0cmEgc3BhY2luZyAqLwogIC5ibG9jay13cmFwcGVyOmZpcnN0LWNoaWxkIC5ibG9jayB7CiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7CiAgfQoKICAuYmxvY2std3JhcHBlcjpsYXN0LWNoaWxkIC5ibG9jayB7CiAgICBtYXJnaW4tYm90dG9tOiAwOwogIH0KCiAgLmJsb2NrLnNlbGVjdGVkIHsKICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDU5LCAxMzAsIDI0NiwgMC4wNSkiLCJyZ2JhKDU5LCAxMzAsIDI0NiwgMC4wNSkiKX07CiAgICBvdXRsaW5lOiAycHggc29saWQgJHttLmJkVGhlbWUoInJnYmEoNTksIDEzMCwgMjQ2LCAwLjIpIiwicmdiYSg1OSwgMTMwLCAyNDYsIDAuMikiKX07CiAgICBvdXRsaW5lLW9mZnNldDogLTJweDsKICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgIG1hcmdpbi1sZWZ0OiAtOHB4OwogICAgbWFyZ2luLXJpZ2h0OiAtOHB4OwogICAgcGFkZGluZy1sZWZ0OiA4cHg7CiAgICBwYWRkaW5nLXJpZ2h0OiA4cHg7CiAgfQoKICAuYmxvY2tbY29udGVudGVkaXRhYmxlXSB7CiAgICBvdXRsaW5lOiBub25lOwogIH0KCiAgLmJsb2NrLnBhcmFncmFwaCB7CiAgICBmb250LXNpemU6IDE2cHg7CiAgICBsaW5lLWhlaWdodDogMS42OwogICAgZm9udC13ZWlnaHQ6IDQwMDsKICB9CgogIC5ibG9jay5wYXJhZ3JhcGg6ZW1wdHk6OmJlZm9yZSB7CiAgICBjb250ZW50OiAiVHlwZSAnLycgZm9yIGNvbW1hbmRzLi4uIjsKICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzcxNzE3YSIsIiM3MTcxN2EiKX07CiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAgIGZvbnQtc2l6ZTogMTZweDsKICAgIGxpbmUtaGVpZ2h0OiAxLjY7CiAgICBmb250LXdlaWdodDogNDAwOwogIH0KCiAgLmJsb2NrLmhlYWRpbmctMSB7CiAgICBmb250LXNpemU6IDMycHg7CiAgICBmb250LXdlaWdodDogNzAwOwogICAgbGluZS1oZWlnaHQ6IDEuMjsKICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzA5MDkwYiIsIiNmYWZhZmEiKX07CiAgfQoKICAuYmxvY2suaGVhZGluZy0xOmVtcHR5OjpiZWZvcmUgewogICAgY29udGVudDogIkhlYWRpbmcgMSI7CiAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM3MTcxN2EiLCIjNzE3MTdhIil9OwogICAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgICBmb250LXNpemU6IDMycHg7CiAgICBsaW5lLWhlaWdodDogMS4yOwogICAgZm9udC13ZWlnaHQ6IDcwMDsKICB9CgogIC5ibG9jay5oZWFkaW5nLTIgewogICAgZm9udC1zaXplOiAyNHB4OwogICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgIGxpbmUtaGVpZ2h0OiAxLjM7CiAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwOTA5MGIiLCIjZmFmYWZhIil9OwogIH0KCiAgLmJsb2NrLmhlYWRpbmctMjplbXB0eTo6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJIZWFkaW5nIDIiOwogICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiIzcxNzE3YSIpfTsKICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgZm9udC1zaXplOiAyNHB4OwogICAgbGluZS1oZWlnaHQ6IDEuMzsKICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgfQoKICAuYmxvY2suaGVhZGluZy0zIHsKICAgIGZvbnQtc2l6ZTogMjBweDsKICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICBsaW5lLWhlaWdodDogMS40OwogICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMDkwOTBiIiwiI2ZhZmFmYSIpfTsKICB9CgogIC5ibG9jay5oZWFkaW5nLTM6ZW1wdHk6OmJlZm9yZSB7CiAgICBjb250ZW50OiAiSGVhZGluZyAzIjsKICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzcxNzE3YSIsIiM3MTcxN2EiKX07CiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAgIGZvbnQtc2l6ZTogMjBweDsKICAgIGxpbmUtaGVpZ2h0OiAxLjQ7CiAgICBmb250LXdlaWdodDogNjAwOwogIH0KCiAgLmJsb2NrLnF1b3RlIHsKICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjMjcyNzJhIil9OwogICAgcGFkZGluZy1sZWZ0OiAyMHB4OwogICAgZm9udC1zdHlsZTogaXRhbGljOwogICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiI2ExYTFhYSIpfTsKICAgIG1hcmdpbi1sZWZ0OiAwOwogICAgbWFyZ2luLXJpZ2h0OiAwOwogICAgbGluZS1oZWlnaHQ6IDEuNjsKICB9CgogIC5ibG9jay5xdW90ZTplbXB0eTo6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICJRdW90ZSI7CiAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM3MTcxN2EiLCIjNzE3MTdhIil9OwogICAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgICBmb250LXNpemU6IDE2cHg7CiAgICBsaW5lLWhlaWdodDogMS42OwogICAgZm9udC13ZWlnaHQ6IDQwMDsKICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsKICB9CgogIC5jb2RlLWJsb2NrLWNvbnRhaW5lciB7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICBtYXJnaW46IDIwcHggMDsKICB9CgogIC5jb2RlLWxhbmd1YWdlIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHRvcDogMDsKICAgIHJpZ2h0OiAwOwogICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmNGY0ZjUiLCIjMjcyNzJhIil9OwogICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiI2ExYTFhYSIpfTsKICAgIHBhZGRpbmc6IDRweCAxMnB4OwogICAgZm9udC1zaXplOiAxMnB4OwogICAgYm9yZGVyLXJhZGl1czogMCA0cHggMCA0cHg7CiAgICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAnU2Vnb2UgVUknLCBSb2JvdG8sIHNhbnMtc2VyaWY7CiAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlOwogICAgei1pbmRleDogMTsKICB9CgogIC5ibG9jay5jb2RlIHsKICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjRmNGY1IiwiIzE4MTgxYiIpfTsKICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZTVlN2ViIiwiIzI3MjcyYSIpfTsKICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgIHBhZGRpbmc6IDE2cHg7CiAgICBwYWRkaW5nLXRvcDogMzJweDsgLyogTWFrZSByb29tIGZvciBsYW5ndWFnZSBpbmRpY2F0b3IgKi8KICAgIGZvbnQtZmFtaWx5OiAnU0YgTW9ubycsICdNb25hY28nLCAnSW5jb25zb2xhdGEnLCAnRmlyYSBDb2RlJywgbW9ub3NwYWNlOwogICAgZm9udC1zaXplOiAxNHB4OwogICAgbGluZS1oZWlnaHQ6IDEuNTsKICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDsKICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzA5MDkwYiIsIiNmYWZhZmEiKX07CiAgICBvdmVyZmxvdy14OiBhdXRvOwogIH0KCiAgLmJsb2NrLmNvZGU6ZW1wdHk6OmJlZm9yZSB7CiAgICBjb250ZW50OiAiLy8gQ29kZSBibG9jayI7CiAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM3MTcxN2EiLCIjNzE3MTdhIil9OwogICAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgICBmb250LWZhbWlseTogJ1NGIE1vbm8nLCAnTW9uYWNvJywgJ0luY29uc29sYXRhJywgJ0ZpcmEgQ29kZScsIG1vbm9zcGFjZTsKICAgIGZvbnQtc2l6ZTogMTRweDsKICAgIGxpbmUtaGVpZ2h0OiAxLjY7CiAgICBmb250LXdlaWdodDogNDAwOwogIH0KCiAgLmJsb2NrLmxpc3QgewogICAgcGFkZGluZy1sZWZ0OiAwOwogIH0KCiAgLmJsb2NrLmxpc3QgdWwsCiAgLmJsb2NrLmxpc3Qgb2wgewogICAgbWFyZ2luOiAwOwogICAgcGFkZGluZzogMCAwIDAgMjRweDsKICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7CiAgfQoKICAuYmxvY2subGlzdCB1bCB7CiAgICBsaXN0LXN0eWxlOiBkaXNjOwogIH0KCiAgLmJsb2NrLmxpc3Qgb2wgewogICAgbGlzdC1zdHlsZTogZGVjaW1hbDsKICB9CgogIC5ibG9jay5saXN0IGxpIHsKICAgIG1hcmdpbi1ib3R0b206IDhweDsKICAgIGxpbmUtaGVpZ2h0OiAxLjY7CiAgfQoKICAuYmxvY2subGlzdCBsaTpsYXN0LWNoaWxkIHsKICAgIG1hcmdpbi1ib3R0b206IDA7CiAgfQoKICAuYmxvY2suZGl2aWRlciB7CiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICBwYWRkaW5nOiAyMHB4IDA7CiAgICBjdXJzb3I6IGRlZmF1bHQ7CiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICB9CgogIC5ibG9jay5kaXZpZGVyIGhyIHsKICAgIGJvcmRlcjogbm9uZTsKICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiMyNzI3MmEiKX07CiAgICBtYXJnaW46IDA7CiAgfQoKICAuc2xhc2gtbWVudSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2ZmZmZmZiIsIiMwOTA5MGIiKX07CiAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiMyNzI3MmEiKX07CiAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICBib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjEpLCAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjA2KTsKICAgIHBhZGRpbmc6IDRweDsKICAgIHotaW5kZXg6IDEwMDA7CiAgICBtaW4td2lkdGg6IDIyMHB4OwogICAgbWF4LWhlaWdodDogMzAwcHg7CiAgICBvdmVyZmxvdy15OiBhdXRvOwogICAgcG9pbnRlci1ldmVudHM6IGF1dG87CiAgICB1c2VyLXNlbGVjdDogbm9uZTsKICB9CgogIC5zbGFzaC1tZW51LWl0ZW0gewogICAgcGFkZGluZzogOHB4IDEwcHg7CiAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgZ2FwOiAxMnB4OwogICAgYm9yZGVyLXJhZGl1czogM3B4OwogICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMDkwOTBiIiwiI2ZhZmFmYSIpfTsKICAgIGZvbnQtc2l6ZTogMTRweDsKICB9CgogIC5zbGFzaC1tZW51LWl0ZW06aG92ZXIsCiAgLnNsYXNoLW1lbnUtaXRlbS5zZWxlY3RlZCB7CiAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2Y0ZjRmNSIsIiMyNzI3MmEiKX07CiAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwOTA5MGIiLCIjZmFmYWZhIil9OwogIH0KCiAgLnNsYXNoLW1lbnUtaXRlbSAuaWNvbiB7CiAgICB3aWR0aDogMjRweDsKICAgIGhlaWdodDogMjRweDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICBmb250LXNpemU6IDE2cHg7CiAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM3MTcxN2EiLCIjYTFhMWFhIil9OwogICAgZm9udC13ZWlnaHQ6IDYwMDsKICB9CgogIC5zbGFzaC1tZW51LWl0ZW06aG92ZXIgLmljb24sCiAgLnNsYXNoLW1lbnUtaXRlbS5zZWxlY3RlZCAuaWNvbiB7CiAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMzYjgyZjYiLCIjM2I4MmY2Iil9OwogIH0KCiAgLnRvb2xiYXIgewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiAtNDBweDsKICAgIGxlZnQ6IDA7CiAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2ZmZmZmZiIsIiMwOTA5MGIiKX07CiAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiMyNzI3MmEiKX07CiAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICBib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjEpLCAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjA2KTsKICAgIHBhZGRpbmc6IDRweDsKICAgIGRpc3BsYXk6IG5vbmU7CiAgICBnYXA6IDRweDsKICAgIHotaW5kZXg6IDEwMDA7CiAgfQoKICAudG9vbGJhci52aXNpYmxlIHsKICAgIGRpc3BsYXk6IGZsZXg7CiAgfQoKICAudG9vbGJhci1idXR0b24gewogICAgd2lkdGg6IDMycHg7CiAgICBoZWlnaHQ6IDMycHg7CiAgICBib3JkZXI6IG5vbmU7CiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgIGN1cnNvcjogcG9pbnRlcjsKICAgIGJvcmRlci1yYWRpdXM6IDNweDsKICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgZGlzcGxheTogZmxleDsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzA5MDkwYiIsIiNmYWZhZmEiKX07CiAgfQoKICAudG9vbGJhci1idXR0b246aG92ZXIgewogICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmNGY0ZjUiLCIjMjcyNzJhIil9OwogICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjM2I4MmY2IiwiIzNiODJmNiIpfTsKICB9CgogIC8qIERyYWcgYW5kIERyb3AgU3R5bGVzICovCiAgLmJsb2NrLXdyYXBwZXIgewogICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZSwgb3BhY2l0eSAwLjJzIGVhc2U7CiAgfQoKICAvKiBFbnN1cmUgcHJvcGVyIHNwYWNpbmcgY29udGV4dCBmb3IgYmxvY2tzICovCiAgLmJsb2NrLXdyYXBwZXIgKyAuYmxvY2std3JhcHBlciAuYmxvY2sgewogICAgbWFyZ2luLXRvcDogMTZweDsKICB9CgogIC8qIE92ZXJyaWRlIGZvciBoZWFkaW5ncyBmb2xsb3dpbmcgb3RoZXIgYmxvY2tzICovCiAgLmJsb2NrLXdyYXBwZXIgKyAuYmxvY2std3JhcHBlciAuYmxvY2suaGVhZGluZy0xLAogIC5ibG9jay13cmFwcGVyICsgLmJsb2NrLXdyYXBwZXIgLmJsb2NrLmhlYWRpbmctMiwKICAuYmxvY2std3JhcHBlciArIC5ibG9jay13cmFwcGVyIC5ibG9jay5oZWFkaW5nLTMgewogICAgbWFyZ2luLXRvcDogMjRweDsKICB9CgogIC8qIENvZGUgYW5kIHF1b3RlIGJsb2NrcyBuZWVkIGNvbnNpc3RlbnQgc3BhY2luZyAqLwogIC5ibG9jay13cmFwcGVyICsgLmJsb2NrLXdyYXBwZXIgLmJsb2NrLmNvZGUsCiAgLmJsb2NrLXdyYXBwZXIgKyAuYmxvY2std3JhcHBlciAuYmxvY2sucXVvdGUgewogICAgbWFyZ2luLXRvcDogMjBweDsKICB9CgogIC5kcmFnLWhhbmRsZSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBsZWZ0OiAtMjhweDsKICAgIHRvcDogNTAlOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgd2lkdGg6IDI0cHg7CiAgICBoZWlnaHQ6IDI0cHg7CiAgICBjdXJzb3I6IGdyYWI7CiAgICBvcGFjaXR5OiAwOwogICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7CiAgICBkaXNwbGF5OiBmbGV4OwogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiIzcxNzE3YSIpfTsKICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICB9CgogIC5kcmFnLWhhbmRsZTo6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICLii67ii64iOwogICAgZm9udC1zaXplOiAxMnB4OwogICAgbGV0dGVyLXNwYWNpbmc6IC0ycHg7CiAgfQoKICAuYmxvY2std3JhcHBlcjpob3ZlciAuZHJhZy1oYW5kbGUgewogICAgb3BhY2l0eTogMTsKICB9CgogIC5kcmFnLWhhbmRsZTpob3ZlciB7CiAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM3MTcxN2EiLCIjYTFhMWFhIil9OwogICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmNGY0ZjUiLCIjMjcyNzJhIil9OwogIH0KCiAgLmRyYWctaGFuZGxlOmFjdGl2ZSB7CiAgICBjdXJzb3I6IGdyYWJiaW5nOwogICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjM2YzZjQ2Iil9OwogIH0KCiAgLmJsb2NrLXdyYXBwZXIuZHJhZ2dpbmcgewogICAgb3BhY2l0eTogMC44OwogICAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICB6LWluZGV4OiAyMDAxOwogICAgdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50OwogIH0KCgogIC8qIEJsb2NrcyB0aGF0IHNob3VsZCBtb3ZlIG91dCBvZiB0aGUgd2F5ICovCiAgLmJsb2NrLXdyYXBwZXIubW92ZS1kb3duIHsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSh2YXIoLS1kcmFnLW9mZnNldCwgMHB4KSk7CiAgfQoKICAuYmxvY2std3JhcHBlci5tb3ZlLXVwIHsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWShjYWxjKC0xICogdmFyKC0tZHJhZy1vZmZzZXQsIDBweCkpKTsKICB9CgogIC8qIERyb3AgaW5kaWNhdG9yICovCiAgLmRyb3AtaW5kaWNhdG9yIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGxlZnQ6IDA7CiAgICByaWdodDogMDsKICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDU5LCAxMzAsIDI0NiwgMC4wNSkiLCJyZ2JhKDU5LCAxMzAsIDI0NiwgMC4wNSkiKX07CiAgICBib3JkZXI6IDJweCBkYXNoZWQgJHttLmJkVGhlbWUoIiMzYjgyZjYiLCIjM2I4MmY2Iil9OwogICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgZWFzZSwgaGVpZ2h0IDAuMnMgZWFzZTsKICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgei1pbmRleDogMTk5OTsKICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgfQoKICAvKiBSZW1vdmUgb2xkIGRyYWctb3ZlciBzdHlsZXMgKi8KICAuYmxvY2std3JhcHBlci5kcmFnLW92ZXItYmVmb3JlLAogIC5ibG9jay13cmFwcGVyLmRyYWctb3Zlci1hZnRlciB7CiAgICAvKiBObyBsb25nZXIgbmVlZGVkLCB1c2luZyBkcm9wIGluZGljYXRvciBpbnN0ZWFkICovCiAgfQoKICAuZWRpdG9yLWNvbnRlbnQuZHJhZ2dpbmcgKiB7CiAgICB1c2VyLXNlbGVjdDogbm9uZTsKICB9CgogIC8qIEJsb2NrIFNldHRpbmdzIEJ1dHRvbiAtIFJlbW92ZWQgaW4gZmF2b3Igb2YgY29udGV4dCBtZW51ICovCgogIC8qIFRleHQgU2VsZWN0aW9uIFN0eWxlcyAqLwogIC5ibG9jayA6OnNlbGVjdGlvbiB7CiAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgicmdiYSg1OSwgMTMwLCAyNDYsIDAuMikiLCJyZ2JhKDU5LCAxMzAsIDI0NiwgMC4yKSIpfTsKICAgIGNvbG9yOiBpbmhlcml0OwogIH0KCiAgLyogRm9ybWF0dGluZyBNZW51ICovCiAgLmZvcm1hdHRpbmctbWVudSB7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2ZmZmZmZiIsIiMwOTA5MGIiKX07CiAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiMyNzI3MmEiKX07CiAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICBib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjEpLCAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjA2KTsKICAgIHBhZGRpbmc6IDRweDsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICBnYXA6IDJweDsKICAgIHotaW5kZXg6IDEwMDE7CiAgICBhbmltYXRpb246IGZhZGVJblNjYWxlIDAuMTVzIGVhc2Utb3V0OwogIH0KCiAgQGtleWZyYW1lcyBmYWRlSW5TY2FsZSB7CiAgICBmcm9tIHsKICAgICAgb3BhY2l0eTogMDsKICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk4KSB0cmFuc2xhdGVZKDJweCk7CiAgICB9CiAgICB0byB7CiAgICAgIG9wYWNpdHk6IDE7CiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSkgdHJhbnNsYXRlWSgwKTsKICAgIH0KICB9CgogIC5mb3JtYXQtYnV0dG9uIHsKICAgIHdpZHRoOiAzMnB4OwogICAgaGVpZ2h0OiAzMnB4OwogICAgYm9yZGVyOiBub25lOwogICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICBib3JkZXItcmFkaXVzOiAzcHg7CiAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTsKICAgIGRpc3BsYXk6IGZsZXg7CiAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwOTA5MGIiLCIjZmFmYWZhIil9OwogICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgIGZvbnQtc2l6ZTogMTRweDsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICB9CgogIC5mb3JtYXQtYnV0dG9uOmhvdmVyIHsKICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjRmNGY1IiwiIzI3MjcyYSIpfTsKICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzNiODJmNiIsIiMzYjgyZjYiKX07CiAgfQoKICAuZm9ybWF0LWJ1dHRvbjphY3RpdmUgewogICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTsKICB9CgogIC5mb3JtYXQtYnV0dG9uLmJvbGQgewogICAgZm9udC13ZWlnaHQ6IDcwMDsKICB9CgogIC5mb3JtYXQtYnV0dG9uLml0YWxpYyB7CiAgICBmb250LXN0eWxlOiBpdGFsaWM7CiAgfQoKICAuZm9ybWF0LWJ1dHRvbi51bmRlcmxpbmUgewogICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7CiAgfQoKICAuZm9ybWF0LWJ1dHRvbiAuY29kZS1pY29uIHsKICAgIGZvbnQtZmFtaWx5OiAnU0YgTW9ubycsICdNb25hY28nLCAnSW5jb25zb2xhdGEnLCAnRmlyYSBDb2RlJywgbW9ub3NwYWNlOwogICAgZm9udC1zaXplOiAxMnB4OwogIH0KCiAgLyogQXBwbGllZCBmb3JtYXQgc3R5bGVzIGluIGNvbnRlbnQgKi8KICAuYmxvY2sgc3Ryb25nLAogIC5ibG9jayBiIHsKICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwOTA5MGIiLCIjZmFmYWZhIil9OwogIH0KCiAgLmJsb2NrIGVtLAogIC5ibG9jayBpIHsKICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsKICB9CgogIC5ibG9jayB1IHsKICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOwogIH0KCiAgLmJsb2NrIHN0cmlrZSwKICAuYmxvY2sgcyB7CiAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDsKICAgIG9wYWNpdHk6IDAuNzsKICB9CgogIC5ibG9jayBjb2RlIHsKICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjRmNGY1IiwiIzI3MjcyYSIpfTsKICAgIHBhZGRpbmc6IDJweCA2cHg7CiAgICBib3JkZXItcmFkaXVzOiAzcHg7CiAgICBmb250LWZhbWlseTogJ1NGIE1vbm8nLCAnTW9uYWNvJywgJ0luY29uc29sYXRhJywgJ0ZpcmEgQ29kZScsIG1vbm9zcGFjZTsKICAgIGZvbnQtc2l6ZTogMC45ZW07CiAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwOTA5MGIiLCIjZmFmYWZhIil9OwogIH0KCiAgLmJsb2NrIGEgewogICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjM2I4MmY2IiwiIzNiODJmNiIpfTsKICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDsKICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBlYXNlOwogIH0KCiAgLmJsb2NrIGE6aG92ZXIgewogICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHttLmJkVGhlbWUoIiMzYjgyZjYiLCIjM2I4MmY2Iil9OwogIH0KYH0pO3ZhciBXbix4Y3Q9bCgoKT0+e09vKCk7V249Y2xhc3N7c3RhdGljIGVzY2FwZUh0bWwodCl7bGV0IHI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7cmV0dXJuIHIudGV4dENvbnRlbnQ9dCxyLmlubmVySFRNTH1zdGF0aWMgZm9ybWF0RmlsZVNpemUodCl7aWYodD09PTApcmV0dXJuIjAgQnl0ZXMiO2xldCByPTEwMjQsYT1bIkJ5dGVzIiwiS0IiLCJNQiIsIkdCIl0saT1NYXRoLmZsb29yKE1hdGgubG9nKHQpL01hdGgubG9nKHIpKTtyZXR1cm4gcGFyc2VGbG9hdCgodC9NYXRoLnBvdyhyLGkpKS50b0ZpeGVkKDIpKSsiICIrYVtpXX1zdGF0aWMgZ2V0SHRtbE91dHB1dCh0KXtyZXR1cm4gdC5tYXAocj0+e2xldCBhPXIuY29udGVudC5pbmNsdWRlcygiPCIpJiZyLmNvbnRlbnQuaW5jbHVkZXMoIj4iKT9yLmNvbnRlbnQ6dGhpcy5lc2NhcGVIdG1sKHIuY29udGVudCk7c3dpdGNoKHIudHlwZSl7Y2FzZSJwYXJhZ3JhcGgiOnJldHVybiByLmNvbnRlbnQ/YDxwPiR7YX08L3A+YDoiIjtjYXNlImhlYWRpbmctMSI6cmV0dXJuYDxoMT4ke2F9PC9oMT5gO2Nhc2UiaGVhZGluZy0yIjpyZXR1cm5gPGgyPiR7YX08L2gyPmA7Y2FzZSJoZWFkaW5nLTMiOnJldHVybmA8aDM+JHthfTwvaDM+YDtjYXNlInF1b3RlIjpyZXR1cm5gPGJsb2NrcXVvdGU+JHthfTwvYmxvY2txdW90ZT5gO2Nhc2UiY29kZSI6cmV0dXJuYDxwcmU+PGNvZGU+JHt0aGlzLmVzY2FwZUh0bWwoci5jb250ZW50KX08L2NvZGU+PC9wcmU+YDtjYXNlImxpc3QiOmxldCBpPXIuY29udGVudC5zcGxpdChgCmApLmZpbHRlcihjPT5jLnRyaW0oKSk7aWYoaS5sZW5ndGg+MCl7bGV0IGM9ci5tZXRhZGF0YT8ubGlzdFR5cGU9PT0ib3JkZXJlZCI/Im9sIjoidWwiO3JldHVybmA8JHtjfT4ke2kubWFwKGQ9PmA8bGk+JHtkfTwvbGk+YCkuam9pbigiIil9PC8ke2N9PmB9cmV0dXJuIiI7Y2FzZSJkaXZpZGVyIjpyZXR1cm4iPGhyPiI7Y2FzZSJpbWFnZSI6bGV0IG89ci5tZXRhZGF0YT8udXJsO2lmKG8pe2xldCBjPXRoaXMuZXNjYXBlSHRtbChyLmNvbnRlbnR8fCJJbWFnZSIpO3JldHVybmA8aW1nIHNyYz0iJHtvfSIgYWx0PSIke2N9IiAvPmB9cmV0dXJuIiI7Y2FzZSJ5b3V0dWJlIjpsZXQgbj1yLm1ldGFkYXRhPy52aWRlb0lkO3JldHVybiBuP2A8aWZyYW1lIHdpZHRoPSI1NjAiIGhlaWdodD0iMzE1IiBzcmM9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL2VtYmVkLyR7bn0iIGZyYW1lYm9yZGVyPSIwIiBhbGxvdz0iYWNjZWxlcm9tZXRlcjsgYXV0b3BsYXk7IGNsaXBib2FyZC13cml0ZTsgZW5jcnlwdGVkLW1lZGlhOyBneXJvc2NvcGU7IHBpY3R1cmUtaW4tcGljdHVyZSIgYWxsb3dmdWxsc2NyZWVuPjwvaWZyYW1lPmA6IiI7Y2FzZSJtYXJrZG93biI6cmV0dXJuYDxkaXYgY2xhc3M9Im1hcmtkb3duLWNvbnRlbnQiPiR7dGhpcy5lc2NhcGVIdG1sKHIuY29udGVudCl9PC9kaXY+YDtjYXNlImh0bWwiOnJldHVybiByLmNvbnRlbnQ7Y2FzZSJhdHRhY2htZW50IjpsZXQgcz1yLm1ldGFkYXRhPy5maWxlc3x8W107cmV0dXJuIHMubGVuZ3RoPjA/YDxkaXYgY2xhc3M9ImF0dGFjaG1lbnRzIj4ke3MubWFwKGM9PmA8ZGl2IGNsYXNzPSJhdHRhY2htZW50LWl0ZW0iIGRhdGEtZmlsZS1pZD0iJHtjLmlkfSI+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIke2MuZGF0YX0iIGRvd25sb2FkPSIke2MubmFtZX0iPiR7dGhpcy5lc2NhcGVIdG1sKGMubmFtZSl9PC9hPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImZpbGUtc2l6ZSI+KCR7dGhpcy5mb3JtYXRGaWxlU2l6ZShjLnNpemUpfSk8L3NwYW4+CiAgICAgICAgICAgICAgPC9kaXY+YCkuam9pbigiIil9PC9kaXY+YDoiIjtkZWZhdWx0OnJldHVybmA8cD4ke2F9PC9wPmB9fSkuZmlsdGVyKHI9PnIhPT0iIikuam9pbihgCmApfXN0YXRpYyBnZXRNYXJrZG93bk91dHB1dCh0KXtyZXR1cm4gdC5tYXAocj0+e3N3aXRjaChyLnR5cGUpe2Nhc2UicGFyYWdyYXBoIjpyZXR1cm4gci5jb250ZW50O2Nhc2UiaGVhZGluZy0xIjpyZXR1cm5gIyAke3IuY29udGVudH1gO2Nhc2UiaGVhZGluZy0yIjpyZXR1cm5gIyMgJHtyLmNvbnRlbnR9YDtjYXNlImhlYWRpbmctMyI6cmV0dXJuYCMjIyAke3IuY29udGVudH1gO2Nhc2UicXVvdGUiOnJldHVybmA+ICR7ci5jb250ZW50fWA7Y2FzZSJjb2RlIjpyZXR1cm5gXGBcYFxgCiR7ci5jb250ZW50fQpcYFxgXGBgO2Nhc2UibGlzdCI6bGV0IGE9ci5jb250ZW50LnNwbGl0KGAKYCkuZmlsdGVyKGQ9PmQudHJpbSgpKTtyZXR1cm4gci5tZXRhZGF0YT8ubGlzdFR5cGU9PT0ib3JkZXJlZCI/YS5tYXAoKGQsZik9PmAke2YrMX0uICR7ZH1gKS5qb2luKGAKYCk6YS5tYXAoZD0+YC0gJHtkfWApLmpvaW4oYApgKTtjYXNlImRpdmlkZXIiOnJldHVybiItLS0iO2Nhc2UiaW1hZ2UiOmxldCBpPXIubWV0YWRhdGE/LnVybCxvPXIuY29udGVudHx8IkltYWdlIjtyZXR1cm4gaT9gIVske299XSgke2l9KWA6IiI7Y2FzZSJ5b3V0dWJlIjpsZXQgbj1yLm1ldGFkYXRhPy52aWRlb0lkLHM9ci5tZXRhZGF0YT8udXJsfHwobj9gaHR0cHM6Ly95b3V0dWJlLmNvbS93YXRjaD92PSR7bn1gOiIiKTtyZXR1cm4gcz9gW1lvdVR1YmUgVmlkZW9dKCR7c30pYDoiIjtjYXNlIm1hcmtkb3duIjpyZXR1cm4gci5jb250ZW50O2Nhc2UiaHRtbCI6cmV0dXJuYDwhLS0gSFRNTCBCbG9jawoke3IuY29udGVudH0KLS0+YDtjYXNlImF0dGFjaG1lbnQiOmxldCBjPXIubWV0YWRhdGE/LmZpbGVzfHxbXTtyZXR1cm4gYy5sZW5ndGg+MD9jLm1hcChkPT5gLSBbJHtkLm5hbWV9XSgke2QuZGF0YX0pYCkuam9pbihgCmApOiIiO2RlZmF1bHQ6cmV0dXJuIHIuY29udGVudH19KS5maWx0ZXIocj0+ciE9PSIiKS5qb2luKGAKCmApfXN0YXRpYyBwYXJzZUh0bWxUb0Jsb2Nrcyh0KXtsZXQgYT1uZXcgRE9NUGFyc2VyKCkucGFyc2VGcm9tU3RyaW5nKHQsInRleHQvaHRtbCIpLGk9W10sbz1uPT57aWYobi5ub2RlVHlwZT09PU5vZGUuVEVYVF9OT0RFJiZuLnRleHRDb250ZW50Py50cmltKCkpaS5wdXNoKHtpZDpgYmxvY2stJHtEYXRlLm5vdygpfS0ke01hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnN1YnN0cmluZygyLDkpfWAsdHlwZToicGFyYWdyYXBoIixjb250ZW50Om4udGV4dENvbnRlbnQudHJpbSgpfSk7ZWxzZSBpZihuLm5vZGVUeXBlPT09Tm9kZS5FTEVNRU5UX05PREUpe2xldCBzPW4sYz1zLnRhZ05hbWUudG9Mb3dlckNhc2UoKTtzd2l0Y2goYyl7Y2FzZSJwIjppLnB1c2goe2lkOmBibG9jay0ke0RhdGUubm93KCl9LSR7TWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc3Vic3RyaW5nKDIsOSl9YCx0eXBlOiJwYXJhZ3JhcGgiLGNvbnRlbnQ6cy5pbm5lckhUTUx8fCIifSk7YnJlYWs7Y2FzZSJoMSI6aS5wdXNoKHtpZDpgYmxvY2stJHtEYXRlLm5vdygpfS0ke01hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnN1YnN0cmluZygyLDkpfWAsdHlwZToiaGVhZGluZy0xIixjb250ZW50OnMuaW5uZXJIVE1MfHwiIn0pO2JyZWFrO2Nhc2UiaDIiOmkucHVzaCh7aWQ6YGJsb2NrLSR7RGF0ZS5ub3coKX0tJHtNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zdWJzdHJpbmcoMiw5KX1gLHR5cGU6ImhlYWRpbmctMiIsY29udGVudDpzLmlubmVySFRNTHx8IiJ9KTticmVhaztjYXNlImgzIjppLnB1c2goe2lkOmBibG9jay0ke0RhdGUubm93KCl9LSR7TWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc3Vic3RyaW5nKDIsOSl9YCx0eXBlOiJoZWFkaW5nLTMiLGNvbnRlbnQ6cy5pbm5lckhUTUx8fCIifSk7YnJlYWs7Y2FzZSJibG9ja3F1b3RlIjppLnB1c2goe2lkOmBibG9jay0ke0RhdGUubm93KCl9LSR7TWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc3Vic3RyaW5nKDIsOSl9YCx0eXBlOiJxdW90ZSIsY29udGVudDpzLmlubmVySFRNTHx8IiJ9KTticmVhaztjYXNlInByZSI6Y2FzZSJjb2RlIjppLnB1c2goe2lkOmBibG9jay0ke0RhdGUubm93KCl9LSR7TWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc3Vic3RyaW5nKDIsOSl9YCx0eXBlOiJjb2RlIixjb250ZW50OnMudGV4dENvbnRlbnR8fCIifSk7YnJlYWs7Y2FzZSJ1bCI6Y2FzZSJvbCI6bGV0IGY9QXJyYXkuZnJvbShzLnF1ZXJ5U2VsZWN0b3JBbGwoImxpIikpLm1hcChwPT5wLmlubmVySFRNTHx8IiIpLmpvaW4oYApgKTtpLnB1c2goe2lkOmBibG9jay0ke0RhdGUubm93KCl9LSR7TWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc3Vic3RyaW5nKDIsOSl9YCx0eXBlOiJsaXN0Iixjb250ZW50OmYsbWV0YWRhdGE6e2xpc3RUeXBlOmM9PT0ib2wiPyJvcmRlcmVkIjoiYnVsbGV0In19KTticmVhaztjYXNlImhyIjppLnB1c2goe2lkOmBibG9jay0ke0RhdGUubm93KCl9LSR7TWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc3Vic3RyaW5nKDIsOSl9YCx0eXBlOiJkaXZpZGVyIixjb250ZW50OiIgIn0pO2JyZWFrO2Nhc2UiaW1nIjpsZXQgdT1zO2kucHVzaCh7aWQ6YGJsb2NrLSR7RGF0ZS5ub3coKX0tJHtNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zdWJzdHJpbmcoMiw5KX1gLHR5cGU6ImltYWdlIixjb250ZW50OnUuYWx0fHwiIixtZXRhZGF0YTp7dXJsOnUuc3JjfX0pO2JyZWFrO2RlZmF1bHQ6cy5jaGlsZE5vZGVzLmZvckVhY2gocD0+byhwKSl9fX07cmV0dXJuIGEuYm9keS5jaGlsZE5vZGVzLmZvckVhY2gobj0+byhuKSksaX1zdGF0aWMgcGFyc2VNYXJrZG93blRvQmxvY2tzKHQpe2xldCByPXQuc3BsaXQoYApgKSxhPVtdLGk9W107Zm9yKGxldCBvPTA7bzxyLmxlbmd0aDtvKyspe2xldCBuPXJbb107aWYobi5zdGFydHNXaXRoKCIjICIpKWEucHVzaCh7aWQ6YGJsb2NrLSR7RGF0ZS5ub3coKX0tJHtNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zdWJzdHJpbmcoMiw5KX1gLHR5cGU6ImhlYWRpbmctMSIsY29udGVudDpuLnN1YnN0cmluZygyKX0pO2Vsc2UgaWYobi5zdGFydHNXaXRoKCIjIyAiKSlhLnB1c2goe2lkOmBibG9jay0ke0RhdGUubm93KCl9LSR7TWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc3Vic3RyaW5nKDIsOSl9YCx0eXBlOiJoZWFkaW5nLTIiLGNvbnRlbnQ6bi5zdWJzdHJpbmcoMyl9KTtlbHNlIGlmKG4uc3RhcnRzV2l0aCgiIyMjICIpKWEucHVzaCh7aWQ6YGJsb2NrLSR7RGF0ZS5ub3coKX0tJHtNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zdWJzdHJpbmcoMiw5KX1gLHR5cGU6ImhlYWRpbmctMyIsY29udGVudDpuLnN1YnN0cmluZyg0KX0pO2Vsc2UgaWYobi5zdGFydHNXaXRoKCI+ICIpKWEucHVzaCh7aWQ6YGJsb2NrLSR7RGF0ZS5ub3coKX0tJHtNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zdWJzdHJpbmcoMiw5KX1gLHR5cGU6InF1b3RlIixjb250ZW50Om4uc3Vic3RyaW5nKDIpfSk7ZWxzZSBpZihuLnN0YXJ0c1dpdGgoImBgYCIpKXtsZXQgcz1bXTtmb3IobysrO288ci5sZW5ndGgmJiFyW29dLnN0YXJ0c1dpdGgoImBgYCIpOylzLnB1c2gocltvXSksbysrO2EucHVzaCh7aWQ6YGJsb2NrLSR7RGF0ZS5ub3coKX0tJHtNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zdWJzdHJpbmcoMiw5KX1gLHR5cGU6ImNvZGUiLGNvbnRlbnQ6cy5qb2luKGAKYCl9KX1lbHNlIGlmKG4ubWF0Y2goL14oXCp8LSkgLykpaS5wdXNoKG4uc3Vic3RyaW5nKDIpKSwobz09PXIubGVuZ3RoLTF8fCFyW28rMV0ubWF0Y2goL14oXCp8LSkgLykpJiYoYS5wdXNoKHtpZDpgYmxvY2stJHtEYXRlLm5vdygpfS0ke01hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnN1YnN0cmluZygyLDkpfWAsdHlwZToibGlzdCIsY29udGVudDppLmpvaW4oYApgKSxtZXRhZGF0YTp7bGlzdFR5cGU6ImJ1bGxldCJ9fSksaT1bXSk7ZWxzZSBpZihuLm1hdGNoKC9eXGQrXC4gLykpaS5wdXNoKG4ucmVwbGFjZSgvXlxkK1wuIC8sIiIpKSwobz09PXIubGVuZ3RoLTF8fCFyW28rMV0ubWF0Y2goL15cZCtcLiAvKSkmJihhLnB1c2goe2lkOmBibG9jay0ke0RhdGUubm93KCl9LSR7TWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc3Vic3RyaW5nKDIsOSl9YCx0eXBlOiJsaXN0Iixjb250ZW50Omkuam9pbihgCmApLG1ldGFkYXRhOntsaXN0VHlwZToib3JkZXJlZCJ9fSksaT1bXSk7ZWxzZSBpZihuPT09Ii0tLSJ8fG49PT0iKioqInx8bj09PSJfX18iKWEucHVzaCh7aWQ6YGJsb2NrLSR7RGF0ZS5ub3coKX0tJHtNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zdWJzdHJpbmcoMiw5KX1gLHR5cGU6ImRpdmlkZXIiLGNvbnRlbnQ6IiAifSk7ZWxzZSBpZihuLm1hdGNoKC9eIVxbKFteXF1dKilcXVwoKFteXCldKylcKSQvKSl7bGV0IHM9bi5tYXRjaCgvXiFcWyhbXlxdXSopXF1cKChbXlwpXSspXCkkLyk7cyYmYS5wdXNoKHtpZDpgYmxvY2stJHtEYXRlLm5vdygpfS0ke01hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnN1YnN0cmluZygyLDkpfWAsdHlwZToiaW1hZ2UiLGNvbnRlbnQ6c1sxXXx8IiIsbWV0YWRhdGE6e3VybDpzWzJdfX0pfWVsc2Ugbi50cmltKCkmJmEucHVzaCh7aWQ6YGJsb2NrLSR7RGF0ZS5ub3coKX0tJHtNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zdWJzdHJpbmcoMiw5KX1gLHR5cGU6InBhcmFncmFwaCIsY29udGVudDpufSl9cmV0dXJuIGF9fX0pO3ZhciBnMSxCYz1sKCgpPT57U2UoKTtPbygpO3hjdCgpO2cxPWNsYXNze3N0YXRpYyByZW5kZXJMaXN0Q29udGVudCh0LHIpe2xldCBhPXQuc3BsaXQoYApgKS5maWx0ZXIobz0+by50cmltKCkpO2lmKGEubGVuZ3RoPT09MClyZXR1cm4iIjtsZXQgaT1yPy5saXN0VHlwZT09PSJvcmRlcmVkIj8ib2wiOiJ1bCI7cmV0dXJuYDwke2l9PiR7YS5tYXAobz0+YDxsaT4ke299PC9saT5gKS5qb2luKCIiKX08LyR7aX0+YH1zdGF0aWMgcmVuZGVyQmxvY2sodCxyLGEpe2lmKHQudHlwZT09PSJkaXZpZGVyIilyZXR1cm4gU2AKICAgICAgICA8ZGl2CiAgICAgICAgICBjbGFzcz0iYmxvY2sgZGl2aWRlciIKICAgICAgICAgIGRhdGEtYmxvY2staWQ9IiR7dC5pZH0iCiAgICAgICAgPgogICAgICAgICAgPGhyPgogICAgICAgIDwvZGl2PgogICAgICBgO2lmKHQudHlwZT09PSJsaXN0IilyZXR1cm4gU2AKICAgICAgICA8ZGl2CiAgICAgICAgICBjbGFzcz0iYmxvY2sgbGlzdCAke3I/InNlbGVjdGVkIjoiIn0iCiAgICAgICAgICBkYXRhLWJsb2NrLWlkPSIke3QuaWR9IgogICAgICAgICAgY29udGVudGVkaXRhYmxlPSJ0cnVlIgogICAgICAgICAgQGlucHV0PSIke2Eub25JbnB1dH0iCiAgICAgICAgICBAa2V5ZG93bj0iJHthLm9uS2V5RG93bn0iCiAgICAgICAgICBAZm9jdXM9IiR7YS5vbkZvY3VzfSIKICAgICAgICAgIEBibHVyPSIke2Eub25CbHVyfSIKICAgICAgICAgIEBjb21wb3NpdGlvbnN0YXJ0PSIke2Eub25Db21wb3NpdGlvblN0YXJ0fSIKICAgICAgICAgIEBjb21wb3NpdGlvbmVuZD0iJHthLm9uQ29tcG9zaXRpb25FbmR9IgogICAgICAgICAgQG1vdXNldXA9IiR7bz0+e2NvbnNvbGUubG9nKCJCbG9jayBtb3VzZXVwIGV2ZW50IGZpcmVkIiksYS5vbk1vdXNlVXAmJmEub25Nb3VzZVVwKG8pfX0iCiAgICAgICAgICAuaW5uZXJIVE1MPSIke3RoaXMucmVuZGVyTGlzdENvbnRlbnQodC5jb250ZW50LHQubWV0YWRhdGEpfSIKICAgICAgICA+PC9kaXY+CiAgICAgIGA7aWYodC50eXBlPT09ImNvZGUiKXtsZXQgbz10Lm1ldGFkYXRhPy5sYW5ndWFnZXx8InBsYWluIHRleHQiO3JldHVybiBTYAogICAgICAgIDxkaXYgY2xhc3M9ImNvZGUtYmxvY2stY29udGFpbmVyIj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNvZGUtbGFuZ3VhZ2UiPiR7b308L2Rpdj4KICAgICAgICAgIDxkaXYKICAgICAgICAgICAgY2xhc3M9ImJsb2NrICR7dC50eXBlfSAke3I/InNlbGVjdGVkIjoiIn0iCiAgICAgICAgICAgIGNvbnRlbnRlZGl0YWJsZT0idHJ1ZSIKICAgICAgICAgICAgQGlucHV0PSIke2Eub25JbnB1dH0iCiAgICAgICAgICAgIEBrZXlkb3duPSIke2Eub25LZXlEb3dufSIKICAgICAgICAgICAgQGZvY3VzPSIke2Eub25Gb2N1c30iCiAgICAgICAgICAgIEBibHVyPSIke2Eub25CbHVyfSIKICAgICAgICAgICAgQGNvbXBvc2l0aW9uc3RhcnQ9IiR7YS5vbkNvbXBvc2l0aW9uU3RhcnR9IgogICAgICAgICAgICBAY29tcG9zaXRpb25lbmQ9IiR7YS5vbkNvbXBvc2l0aW9uRW5kfSIKICAgICAgICAgICAgQG1vdXNldXA9IiR7bj0+e2NvbnNvbGUubG9nKCJCbG9jayBtb3VzZXVwIGV2ZW50IGZpcmVkIiksYS5vbk1vdXNlVXAmJmEub25Nb3VzZVVwKG4pfX0iCiAgICAgICAgICAgIC50ZXh0Q29udGVudD0iJHt0LmNvbnRlbnR8fCIifSIKICAgICAgICAgID48L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgYH1yZXR1cm4gU2AKICAgICAgPGRpdgogICAgICAgIGNsYXNzPSJibG9jayAke3QudHlwZX0gJHtyPyJzZWxlY3RlZCI6IiJ9IgogICAgICAgIGNvbnRlbnRlZGl0YWJsZT0idHJ1ZSIKICAgICAgICBAaW5wdXQ9IiR7YS5vbklucHV0fSIKICAgICAgICBAa2V5ZG93bj0iJHthLm9uS2V5RG93bn0iCiAgICAgICAgQGZvY3VzPSIke2Eub25Gb2N1c30iCiAgICAgICAgQGJsdXI9IiR7YS5vbkJsdXJ9IgogICAgICAgIEBjb21wb3NpdGlvbnN0YXJ0PSIke2Eub25Db21wb3NpdGlvblN0YXJ0fSIKICAgICAgICBAY29tcG9zaXRpb25lbmQ9IiR7YS5vbkNvbXBvc2l0aW9uRW5kfSIKICAgICAgICBAbW91c2V1cD0iJHtvPT57Y29uc29sZS5sb2coIkJsb2NrIG1vdXNldXAgZXZlbnQgZmlyZWQiKSxhLm9uTW91c2VVcCYmYS5vbk1vdXNlVXAobyl9fSIKICAgICAgICAuaW5uZXJIVE1MPSIke3QuY29udGVudHx8IiJ9IgogICAgICA+PC9kaXY+CiAgICBgfXN0YXRpYyBzZXRDdXJzb3JUb0VuZCh0KXtsZXQgcj13aW5kb3cuZ2V0U2VsZWN0aW9uKCk7aWYoIXIpcmV0dXJuO2xldCBhPWRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7aWYodC5jaGlsZE5vZGVzLmxlbmd0aD09PTApe2xldCBpPWRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJcdTIwMEIiKTt0LmFwcGVuZENoaWxkKGkpLGEuc2V0U3RhcnQoaSwxKSxhLmNvbGxhcHNlKCEwKX1lbHNle2xldCBpPXRoaXMuZ2V0TGFzdE5vZGUodCk7aS5ub2RlVHlwZT09PU5vZGUuVEVYVF9OT0RFP2Euc2V0U3RhcnQoaSxpLnRleHRDb250ZW50Py5sZW5ndGh8fDApOmEuc2V0U3RhcnRBZnRlcihpKSxhLmNvbGxhcHNlKCEwKX1yLnJlbW92ZUFsbFJhbmdlcygpLHIuYWRkUmFuZ2UoYSksdC50ZXh0Q29udGVudD09PSJcdTIwMEIiJiYodC50ZXh0Q29udGVudD0iIil9c3RhdGljIHNldEN1cnNvclRvU3RhcnQodCl7bGV0IHI9d2luZG93LmdldFNlbGVjdGlvbigpO2lmKCFyKXJldHVybjtsZXQgYT1kb2N1bWVudC5jcmVhdGVSYW5nZSgpO2lmKHQuY2hpbGROb2Rlcy5sZW5ndGg9PT0wKWEuc2V0U3RhcnQodCwwKSxhLmNvbGxhcHNlKCEwKTtlbHNle2xldCBpPXRoaXMuZ2V0Rmlyc3ROb2RlKHQpO2kubm9kZVR5cGU9PT1Ob2RlLlRFWFRfTk9ERT9hLnNldFN0YXJ0KGksMCk6YS5zZXRTdGFydEJlZm9yZShpKSxhLmNvbGxhcHNlKCEwKX1yLnJlbW92ZUFsbFJhbmdlcygpLHIuYWRkUmFuZ2UoYSl9c3RhdGljIGdldExhc3ROb2RlKHQpe2lmKHQuY2hpbGROb2Rlcy5sZW5ndGg9PT0wKXJldHVybiB0O2xldCByPXQuY2hpbGROb2Rlc1t0LmNoaWxkTm9kZXMubGVuZ3RoLTFdO3JldHVybiByLm5vZGVUeXBlPT09Tm9kZS5URVhUX05PREV8fHIuY2hpbGROb2Rlcy5sZW5ndGg9PT0wP3I6dGhpcy5nZXRMYXN0Tm9kZShyKX1zdGF0aWMgZ2V0Rmlyc3ROb2RlKHQpe2lmKHQuY2hpbGROb2Rlcy5sZW5ndGg9PT0wKXJldHVybiB0O2xldCByPXQuY2hpbGROb2Rlc1swXTtyZXR1cm4gci5ub2RlVHlwZT09PU5vZGUuVEVYVF9OT0RFfHxyLmNoaWxkTm9kZXMubGVuZ3RoPT09MD9yOnRoaXMuZ2V0Rmlyc3ROb2RlKHIpfXN0YXRpYyBmb2N1c0xpc3RJdGVtKHQpe2xldCByPXQucXVlcnlTZWxlY3RvcigibGkiKTtpZihyKXtyLmZvY3VzKCk7bGV0IGE9ZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKSxpPXdpbmRvdy5nZXRTZWxlY3Rpb24oKTthLnNlbGVjdE5vZGVDb250ZW50cyhyKSxhLmNvbGxhcHNlKCEwKSxpLnJlbW92ZUFsbFJhbmdlcygpLGkuYWRkUmFuZ2UoYSl9fX19KTt2YXIgZ1osYmN0PWwoKCk9PntPbygpO1k5KCk7RTgoKTtCYygpO2daPWNsYXNze2NvbXBvbmVudDtjb25zdHJ1Y3Rvcih0KXt0aGlzLmNvbXBvbmVudD10fWNyZWF0ZUJsb2NrKHQ9InBhcmFncmFwaCIscj0iIixhKXtyZXR1cm57aWQ6b2kuZ2VuZXJhdGVCbG9ja0lkKCksdHlwZTp0LGNvbnRlbnQ6ciwuLi5hJiZ7bWV0YWRhdGE6YX19fWFzeW5jIGluc2VydEJsb2NrQWZ0ZXIodCxyLGE9ITApe2xldCBpPXRoaXMuY29tcG9uZW50LmJsb2NrcyxvPWkuZmluZEluZGV4KG49Pm4uaWQ9PT10LmlkKTtpZih0aGlzLmNvbXBvbmVudC5ibG9ja3M9Wy4uLmkuc2xpY2UoMCxvKzEpLHIsLi4uaS5zbGljZShvKzEpXSx0aGlzLmNvbXBvbmVudC5lZGl0b3JDb250ZW50UmVmKXtsZXQgbj10aGlzLmNvbXBvbmVudC5lZGl0b3JDb250ZW50UmVmLnF1ZXJ5U2VsZWN0b3IoYFtkYXRhLWJsb2NrLWlkPSIke3QuaWR9Il1gKTtpZihuKXtsZXQgcz10aGlzLmNvbXBvbmVudC5jcmVhdGVCbG9ja0VsZW1lbnQocik7bi5pbnNlcnRBZGphY2VudEVsZW1lbnQoImFmdGVyZW5kIixzKX19dGhpcy5jb21wb25lbnQudXBkYXRlVmFsdWUoKSxhJiZyLnR5cGUhPT0iZGl2aWRlciImJihhd2FpdCBuZXcgUHJvbWlzZShuPT5zZXRUaW1lb3V0KG4sMCkpLGF3YWl0IHRoaXMuZm9jdXNCbG9jayhyLmlkLCJzdGFydCIpKX1yZW1vdmVCbG9jayh0KXtpZih0aGlzLmNvbXBvbmVudC5zYXZlVG9IaXN0b3J5KCExKSx0aGlzLmNvbXBvbmVudC5ibG9ja3M9dGhpcy5jb21wb25lbnQuYmxvY2tzLmZpbHRlcihyPT5yLmlkIT09dCksdGhpcy5jb21wb25lbnQuZWRpdG9yQ29udGVudFJlZil7bGV0IHI9dGhpcy5jb21wb25lbnQuZWRpdG9yQ29udGVudFJlZi5xdWVyeVNlbGVjdG9yKGBbZGF0YS1ibG9jay1pZD0iJHt0fSJdYCk7ciYmci5yZW1vdmUoKX10aGlzLmNvbXBvbmVudC51cGRhdGVWYWx1ZSgpfWZpbmRCbG9jayh0KXtyZXR1cm4gdGhpcy5jb21wb25lbnQuYmxvY2tzLmZpbmQocj0+ci5pZD09PXQpfWdldEJsb2NrSW5kZXgodCl7cmV0dXJuIHRoaXMuY29tcG9uZW50LmJsb2Nrcy5maW5kSW5kZXgocj0+ci5pZD09PXQpfWFzeW5jIGZvY3VzQmxvY2sodCxyPSJzdGFydCIpe2xldCBhPXRoaXMuY29tcG9uZW50LnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcihgW2RhdGEtYmxvY2staWQ9IiR7dH0iXWApO2lmKGEpe2xldCBpPWEucXVlcnlTZWxlY3RvcigiZGVlcy13eXNpd3lnLWJsb2NrIik7aSYmKGF3YWl0IG5ldyBQcm9taXNlKG89PnJlcXVlc3RBbmltYXRpb25GcmFtZShvKSksaS5mb2N1c1dpdGhDdXJzb3IocikpfX11cGRhdGVCbG9ja0NvbnRlbnQodCxyKXtsZXQgYT10aGlzLmZpbmRCbG9jayh0KTthJiYoYS5jb250ZW50PXIsdGhpcy5jb21wb25lbnQudXBkYXRlVmFsdWUoKSl9dHJhbnNmb3JtQmxvY2sodCxyLGEpe2xldCBpPXRoaXMuZmluZEJsb2NrKHQpO2kmJih0aGlzLmNvbXBvbmVudC5zYXZlVG9IaXN0b3J5KCExKSxpLnR5cGU9cixpLmNvbnRlbnQ9IiIsYSYmKGkubWV0YWRhdGE9YSksdGhpcy5jb21wb25lbnQuZWRpdG9yQ29udGVudFJlZiYmdGhpcy5jb21wb25lbnQudXBkYXRlQmxvY2tFbGVtZW50KHQpLHRoaXMuY29tcG9uZW50LnVwZGF0ZVZhbHVlKCkpfW1vdmVCbG9jayh0LHIpe2xldCBhPVsuLi50aGlzLmNvbXBvbmVudC5ibG9ja3NdLGk9dGhpcy5nZXRCbG9ja0luZGV4KHQpO2lmKGk9PT0tMXx8cjwwfHxyPj1hLmxlbmd0aClyZXR1cm47bGV0W29dPWEuc3BsaWNlKGksMSk7YS5zcGxpY2UociwwLG8pLHRoaXMuY29tcG9uZW50LmJsb2Nrcz1hLHRoaXMuY29tcG9uZW50LnVwZGF0ZVZhbHVlKCl9Z2V0UHJldmlvdXNCbG9jayh0KXtsZXQgcj10aGlzLmdldEJsb2NrSW5kZXgodCk7cmV0dXJuIHI+MD90aGlzLmNvbXBvbmVudC5ibG9ja3Nbci0xXTpudWxsfWdldE5leHRCbG9jayh0KXtsZXQgcj10aGlzLmdldEJsb2NrSW5kZXgodCk7cmV0dXJuIHI8dGhpcy5jb21wb25lbnQuYmxvY2tzLmxlbmd0aC0xP3RoaXMuY29tcG9uZW50LmJsb2Nrc1tyKzFdOm51bGx9fX0pO3ZhciBfYSxjbj1sKCgpPT57X2E9Y2xhc3N7c2V0dXAodCxyLGEpe31nZXRTdHlsZXMoKXtyZXR1cm4iIn19fSk7dmFyIFFyLEwkcj1sKCgpPT57UXI9Y2xhc3N7c3RhdGljIGhhbmRsZXJzPW5ldyBNYXA7c3RhdGljIHJlZ2lzdGVyKHQscil7dGhpcy5oYW5kbGVycy5zZXQodCxyKX1zdGF0aWMgZ2V0SGFuZGxlcih0KXtyZXR1cm4gdGhpcy5oYW5kbGVycy5nZXQodCl9c3RhdGljIGdldEFsbFR5cGVzKCl7cmV0dXJuIEFycmF5LmZyb20odGhpcy5oYW5kbGVycy5rZXlzKCkpfX19KTt2YXIgRCRyPWwoKCk9Pnt9KTt2YXIgeFosQSRyPWwoKCk9PntjbigpO1NlKCk7QmMoKTt1bCgpO3haPWNsYXNzIGV4dGVuZHMgX2F7dHlwZT0icGFyYWdyYXBoIjtsYXN0S25vd25DdXJzb3JQb3NpdGlvbj0wO2xhc3RTZWxlY3RlZFRleHQ9IiI7c2VsZWN0aW9uSGFuZGxlcj1udWxsO3JlbmRlcih0LHIpe2xldCBhPXI/IiBzZWxlY3RlZCI6IiIsaT10aGlzLmdldFBsYWNlaG9sZGVyKCk7cmV0dXJuYAogICAgICA8ZGl2CiAgICAgICAgY2xhc3M9ImJsb2NrIHBhcmFncmFwaCR7YX0iCiAgICAgICAgY29udGVudGVkaXRhYmxlPSJ0cnVlIgogICAgICAgIGRhdGEtcGxhY2Vob2xkZXI9IiR7aX0iCiAgICAgICAgZGF0YS1ibG9jay1pZD0iJHt0LmlkfSIKICAgICAgICBkYXRhLWJsb2NrLXR5cGU9IiR7dC50eXBlfSIKICAgICAgPjwvZGl2PgogICAgYH1zZXR1cCh0LHIsYSl7bGV0IGk9dC5xdWVyeVNlbGVjdG9yKCIuYmxvY2sucGFyYWdyYXBoIik7aWYoIWkpe2NvbnNvbGUuZXJyb3IoIlBhcmFncmFwaEJsb2NrSGFuZGxlci5zZXR1cDogTm8gcGFyYWdyYXBoIGJsb2NrIGVsZW1lbnQgZm91bmQiKTtyZXR1cm59ci5jb250ZW50JiYhaS5pbm5lckhUTUwmJihpLmlubmVySFRNTD1yLmNvbnRlbnQpLGkuYWRkRXZlbnRMaXN0ZW5lcigiaW5wdXQiLG89PnthLm9uSW5wdXQobyk7bGV0IG49dGhpcy5nZXRDdXJzb3JQb3NpdGlvbih0KTtuIT09bnVsbCYmKHRoaXMubGFzdEtub3duQ3Vyc29yUG9zaXRpb249bil9KSxpLmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLG89PntsZXQgbj10aGlzLmdldEN1cnNvclBvc2l0aW9uKHQpO24hPT1udWxsJiYodGhpcy5sYXN0S25vd25DdXJzb3JQb3NpdGlvbj1uKSxhLm9uS2V5RG93bihvKX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXMiLCgpPT57YS5vbkZvY3VzKCl9KSxpLmFkZEV2ZW50TGlzdGVuZXIoImJsdXIiLCgpPT57YS5vbkJsdXIoKX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigiY29tcG9zaXRpb25zdGFydCIsKCk9PnthLm9uQ29tcG9zaXRpb25TdGFydCgpfSksaS5hZGRFdmVudExpc3RlbmVyKCJjb21wb3NpdGlvbmVuZCIsKCk9PnthLm9uQ29tcG9zaXRpb25FbmQoKX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigibW91c2V1cCIsbz0+e2xldCBuPXRoaXMuZ2V0Q3Vyc29yUG9zaXRpb24odCk7biE9PW51bGwmJih0aGlzLmxhc3RLbm93bkN1cnNvclBvc2l0aW9uPW4pLGEub25Nb3VzZVVwPy4obyl9KSxpLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixvPT57c2V0VGltZW91dCgoKT0+e2xldCBuPXRoaXMuZ2V0Q3Vyc29yUG9zaXRpb24odCk7biE9PW51bGwmJih0aGlzLmxhc3RLbm93bkN1cnNvclBvc2l0aW9uPW4pfSwwKX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigia2V5dXAiLG89PntsZXQgbj10aGlzLmdldEN1cnNvclBvc2l0aW9uKHQpO24hPT1udWxsJiYodGhpcy5sYXN0S25vd25DdXJzb3JQb3NpdGlvbj1uKX0pLHRoaXMuc2V0dXBTZWxlY3Rpb25IYW5kbGVyKHQsaSxyKX1zZXR1cFNlbGVjdGlvbkhhbmRsZXIodCxyLGEpe2xldCBpPSgpPT57bGV0IG49d2luZG93LmdldFNlbGVjdGlvbigpO2lmKCFufHxuLnJhbmdlQ291bnQ9PT0wKXJldHVybjtsZXQgcz1uLnRvU3RyaW5nKCk7aWYocy5sZW5ndGg9PT0wKXt0aGlzLmxhc3RTZWxlY3RlZFRleHQmJih0aGlzLmxhc3RTZWxlY3RlZFRleHQ9IiIsdGhpcy5kaXNwYXRjaFNlbGVjdGlvbkV2ZW50KHQse3RleHQ6IiIsYmxvY2tJZDphLmlkLGhhc1NlbGVjdGlvbjohMX0pKTtyZXR1cm59bGV0IGM9ci5nZXRSb290Tm9kZSgpLmhvc3QsZj1jPy5jbG9zZXN0KCJkZWVzLWlucHV0LXd5c2l3eWciKT8uc2hhZG93Um9vdCx1PWM/LnNoYWRvd1Jvb3QscD1bXTtmJiZwLnB1c2goZiksdSYmcC5wdXNoKHUpO2xldCBoPXJ0LmdldFNlbGVjdGlvbkluZm8oLi4ucCk7aWYoIWgpcmV0dXJuO2xldCBiPXJ0LmNvbnRhaW5zQWNyb3NzU2hhZG93RE9NKHIsaC5zdGFydENvbnRhaW5lcikseD1ydC5jb250YWluc0Fjcm9zc1NoYWRvd0RPTShyLGguZW5kQ29udGFpbmVyKTtpZihifHx4KXtpZihzIT09dGhpcy5sYXN0U2VsZWN0ZWRUZXh0KXt0aGlzLmxhc3RTZWxlY3RlZFRleHQ9cztsZXQgZz1ydC5jcmVhdGVSYW5nZUZyb21JbmZvKGgpLHY9Zy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTt0aGlzLmRpc3BhdGNoU2VsZWN0aW9uRXZlbnQodCx7dGV4dDpzLnRyaW0oKSxibG9ja0lkOmEuaWQscmFuZ2U6ZyxyZWN0OnYsaGFzU2VsZWN0aW9uOiEwfSl9fWVsc2UgdGhpcy5sYXN0U2VsZWN0ZWRUZXh0JiYodGhpcy5sYXN0U2VsZWN0ZWRUZXh0PSIiLHRoaXMuZGlzcGF0Y2hTZWxlY3Rpb25FdmVudCh0LHt0ZXh0OiIiLGJsb2NrSWQ6YS5pZCxoYXNTZWxlY3Rpb246ITF9KSl9O2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInNlbGVjdGlvbmNoYW5nZSIsaSksdGhpcy5zZWxlY3Rpb25IYW5kbGVyPWk7bGV0IG89dC5jbG9zZXN0KCJkZWVzLXd5c2l3eWctYmxvY2siKTtpZihvKXtsZXQgbj1vLmRpc2Nvbm5lY3RlZENhbGxiYWNrO28uZGlzY29ubmVjdGVkQ2FsbGJhY2s9YXN5bmMgZnVuY3Rpb24oKXt0aGlzLnNlbGVjdGlvbkhhbmRsZXImJihkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJzZWxlY3Rpb25jaGFuZ2UiLHRoaXMuc2VsZWN0aW9uSGFuZGxlciksdGhpcy5zZWxlY3Rpb25IYW5kbGVyPW51bGwpLG4mJmF3YWl0IG4uY2FsbChvKX0uYmluZCh0aGlzKX19ZGlzcGF0Y2hTZWxlY3Rpb25FdmVudCh0LHIpe2xldCBhPW5ldyBDdXN0b21FdmVudCgiYmxvY2stdGV4dC1zZWxlY3RlZCIse2RldGFpbDpyLGJ1YmJsZXM6ITAsY29tcG9zZWQ6ITB9KTt0LmRpc3BhdGNoRXZlbnQoYSl9Z2V0U3R5bGVzKCl7cmV0dXJuYAogICAgICAvKiBQYXJhZ3JhcGggc3BlY2lmaWMgc3R5bGVzICovCiAgICAgIC5ibG9jay5wYXJhZ3JhcGggewogICAgICAgIGZvbnQtc2l6ZTogMTZweDsKICAgICAgICBsaW5lLWhlaWdodDogMS42OwogICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7CiAgICAgIH0KICAgIGB9Z2V0UGxhY2Vob2xkZXIoKXtyZXR1cm4iVHlwZSAnLycgZm9yIGNvbW1hbmRzLi4uIn1nZXRMYXN0VGV4dE5vZGUodCl7aWYodC5ub2RlVHlwZT09PU5vZGUuVEVYVF9OT0RFKXJldHVybiB0O2ZvcihsZXQgcj10LmNoaWxkTm9kZXMubGVuZ3RoLTE7cj49MDtyLS0pe2xldCBhPXRoaXMuZ2V0TGFzdFRleHROb2RlKHQuY2hpbGROb2Rlc1tyXSk7aWYoYSlyZXR1cm4gYX1yZXR1cm4gbnVsbH1nZXRDdXJzb3JQb3NpdGlvbih0LHIpe2xldCBhPXQucXVlcnlTZWxlY3RvcigiLmJsb2NrLnBhcmFncmFwaCIpO2lmKCFhKXJldHVybiBudWxsO2xldCBuPXI/LmNvbXBvbmVudD8uY2xvc2VzdCgiZGVlcy1pbnB1dC13eXNpd3lnIik/LnNoYWRvd1Jvb3Qscz1yPy5zaGFkb3dSb290LGM9W107biYmYy5wdXNoKG4pLHMmJmMucHVzaChzKTtsZXQgZD1ydC5nZXRTZWxlY3Rpb25JbmZvKC4uLmMpO2lmKCFkfHwhcnQuY29udGFpbnNBY3Jvc3NTaGFkb3dET00oYSxkLnN0YXJ0Q29udGFpbmVyKSlyZXR1cm4gbnVsbDtsZXQgZj1kb2N1bWVudC5jcmVhdGVSYW5nZSgpO3JldHVybiBmLnNlbGVjdE5vZGVDb250ZW50cyhhKSxmLnNldEVuZChkLnN0YXJ0Q29udGFpbmVyLGQuc3RhcnRPZmZzZXQpLGYudG9TdHJpbmcoKS5sZW5ndGh9Z2V0Q29udGVudCh0LHIpe2xldCBhPXQucXVlcnlTZWxlY3RvcigiLmJsb2NrLnBhcmFncmFwaCIpO3JldHVybiBhJiZhLmlubmVySFRNTHx8IiJ9c2V0Q29udGVudCh0LHIsYSl7bGV0IGk9dC5xdWVyeVNlbGVjdG9yKCIuYmxvY2sucGFyYWdyYXBoIik7aWYoIWkpcmV0dXJuO2xldCBvPWRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ9PT1pfHx0LnNoYWRvd1Jvb3Q/LmFjdGl2ZUVsZW1lbnQ9PT1pO2kuaW5uZXJIVE1MPXIsbyYmaS5mb2N1cygpfXNldEN1cnNvclRvU3RhcnQodCxyKXtsZXQgYT10LnF1ZXJ5U2VsZWN0b3IoIi5ibG9jay5wYXJhZ3JhcGgiKTthJiZnMS5zZXRDdXJzb3JUb1N0YXJ0KGEpfXNldEN1cnNvclRvRW5kKHQscil7bGV0IGE9dC5xdWVyeVNlbGVjdG9yKCIuYmxvY2sucGFyYWdyYXBoIik7YSYmZzEuc2V0Q3Vyc29yVG9FbmQoYSl9Zm9jdXModCxyKXtsZXQgYT10LnF1ZXJ5U2VsZWN0b3IoIi5ibG9jay5wYXJhZ3JhcGgiKTthJiYoYS5oYXNBdHRyaWJ1dGUoImNvbnRlbnRlZGl0YWJsZSIpfHxhLnNldEF0dHJpYnV0ZSgiY29udGVudGVkaXRhYmxlIiwidHJ1ZSIpLGEuZm9jdXMoKSxkb2N1bWVudC5hY3RpdmVFbGVtZW50IT09YSYmdC5zaGFkb3dSb290Py5hY3RpdmVFbGVtZW50IT09YSYmUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKT0+e2EuZm9jdXMoKX0pKX1mb2N1c1dpdGhDdXJzb3IodCxyPSJlbmQiLGEpe2xldCBpPXQucXVlcnlTZWxlY3RvcigiLmJsb2NrLnBhcmFncmFwaCIpO2lmKCFpKXJldHVybjtpZihpLmhhc0F0dHJpYnV0ZSgiY29udGVudGVkaXRhYmxlIil8fGkuc2V0QXR0cmlidXRlKCJjb250ZW50ZWRpdGFibGUiLCJ0cnVlIikscj09PSJlbmQiJiZpLnRleHRDb250ZW50JiZpLnRleHRDb250ZW50Lmxlbmd0aD4wKXtsZXQgbj13aW5kb3cuZ2V0U2VsZWN0aW9uKCk7aWYobil7bGV0IHM9ZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKSxjPXRoaXMuZ2V0TGFzdFRleHROb2RlKGkpfHxpO2Mubm9kZVR5cGU9PT1Ob2RlLlRFWFRfTk9ERT8ocy5zZXRTdGFydChjLGMudGV4dENvbnRlbnQ/Lmxlbmd0aHx8MCkscy5zZXRFbmQoYyxjLnRleHRDb250ZW50Py5sZW5ndGh8fDApKToocy5zZWxlY3ROb2RlQ29udGVudHMoYykscy5jb2xsYXBzZSghMSkpLG4ucmVtb3ZlQWxsUmFuZ2VzKCksbi5hZGRSYW5nZShzKX19aS5mb2N1cygpO2xldCBvPSgpPT57cj09PSJzdGFydCI/dGhpcy5zZXRDdXJzb3JUb1N0YXJ0KHQsYSk6cj09PSJlbmQiJiYoIWkudGV4dENvbnRlbnR8fGkudGV4dENvbnRlbnQubGVuZ3RoPT09MCk/dGhpcy5zZXRDdXJzb3JUb0VuZCh0LGEpOnR5cGVvZiByPT0ibnVtYmVyIiYmcnQuc2V0Q3Vyc29yUG9zaXRpb24oaSxyKX07ZG9jdW1lbnQuYWN0aXZlRWxlbWVudD09PWl8fHQuc2hhZG93Um9vdD8uYWN0aXZlRWxlbWVudD09PWk/bygpOlByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCk9Pntkb2N1bWVudC5hY3RpdmVFbGVtZW50PT09aXx8dC5zaGFkb3dSb290Py5hY3RpdmVFbGVtZW50PT09aT9vKCk6c2V0VGltZW91dCgoKT0+eyhkb2N1bWVudC5hY3RpdmVFbGVtZW50PT09aXx8dC5zaGFkb3dSb290Py5hY3RpdmVFbGVtZW50PT09aSkmJm8oKX0sMTApfSl9Z2V0U3BsaXRDb250ZW50KHQscil7bGV0IGE9dC5xdWVyeVNlbGVjdG9yKCIuYmxvY2sucGFyYWdyYXBoIik7aWYoIWEpcmV0dXJuIG51bGw7bGV0IG49cj8uY29tcG9uZW50Py5jbG9zZXN0KCJkZWVzLWlucHV0LXd5c2l3eWciKT8uc2hhZG93Um9vdCxzPXI/LnNoYWRvd1Jvb3QsYz1bXTtuJiZjLnB1c2gobikscyYmYy5wdXNoKHMpO2xldCBkPXJ0LmdldFNlbGVjdGlvbkluZm8oLi4uYyk7aWYoIWQpe2lmKHRoaXMubGFzdEtub3duQ3Vyc29yUG9zaXRpb24hPT1udWxsKXtsZXQgdz1hLnRleHRDb250ZW50fHwiIixNPU1hdGgubWluKHRoaXMubGFzdEtub3duQ3Vyc29yUG9zaXRpb24sdy5sZW5ndGgpO3JldHVybntiZWZvcmU6dy5zdWJzdHJpbmcoMCxNKSxhZnRlcjp3LnN1YnN0cmluZyhNKX19cmV0dXJuIG51bGx9aWYoIXJ0LmNvbnRhaW5zQWNyb3NzU2hhZG93RE9NKGEsZC5zdGFydENvbnRhaW5lcikpe2lmKHRoaXMubGFzdEtub3duQ3Vyc29yUG9zaXRpb24hPT1udWxsKXtsZXQgdz1hLnRleHRDb250ZW50fHwiIixNPU1hdGgubWluKHRoaXMubGFzdEtub3duQ3Vyc29yUG9zaXRpb24sdy5sZW5ndGgpO3JldHVybntiZWZvcmU6dy5zdWJzdHJpbmcoMCxNKSxhZnRlcjp3LnN1YnN0cmluZyhNKX19cmV0dXJuIG51bGx9bGV0IGY9dGhpcy5nZXRDdXJzb3JQb3NpdGlvbih0LHIpO2lmKGY9PT1udWxsfHxmPT09MClyZXR1cm57YmVmb3JlOiIiLGFmdGVyOmEuaW5uZXJIVE1MfTtsZXQgdT1kb2N1bWVudC5jcmVhdGVSYW5nZSgpLHA9ZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTt1LnNldFN0YXJ0KGEsMCksdS5zZXRFbmQoZC5zdGFydENvbnRhaW5lcixkLnN0YXJ0T2Zmc2V0KSxwLnNldFN0YXJ0KGQuc3RhcnRDb250YWluZXIsZC5zdGFydE9mZnNldCkscC5zZXRFbmQoYSxhLmNoaWxkTm9kZXMubGVuZ3RoKTtsZXQgaD11LmNsb25lQ29udGVudHMoKSxiPXAuY2xvbmVDb250ZW50cygpLHg9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7eC5hcHBlbmRDaGlsZChoKTtsZXQgZz14LmlubmVySFRNTDt4LmlubmVySFRNTD0iIix4LmFwcGVuZENoaWxkKGIpO2xldCB2PXguaW5uZXJIVE1MO3JldHVybntiZWZvcmU6ZyxhZnRlcjp2fX19fSk7dmFyIFA4LEUkcj1sKCgpPT57Y24oKTtTZSgpO0JjKCk7dWwoKTtQOD1jbGFzcyBleHRlbmRzIF9he3R5cGU7bGV2ZWw7bGFzdEtub3duQ3Vyc29yUG9zaXRpb249MDtsYXN0U2VsZWN0ZWRUZXh0PSIiO3NlbGVjdGlvbkhhbmRsZXI9bnVsbDtjb25zdHJ1Y3Rvcih0KXtzdXBlcigpLHRoaXMudHlwZT10LHRoaXMubGV2ZWw9cGFyc2VJbnQodC5zcGxpdCgiLSIpWzFdKX1yZW5kZXIodCxyKXtsZXQgYT1yPyIgc2VsZWN0ZWQiOiIiLGk9dGhpcy5nZXRQbGFjZWhvbGRlcigpO3JldHVybmAKICAgICAgPGRpdgogICAgICAgIGNsYXNzPSJibG9jayBoZWFkaW5nLSR7dGhpcy5sZXZlbH0ke2F9IgogICAgICAgIGNvbnRlbnRlZGl0YWJsZT0idHJ1ZSIKICAgICAgICBkYXRhLXBsYWNlaG9sZGVyPSIke2l9IgogICAgICAgIGRhdGEtYmxvY2staWQ9IiR7dC5pZH0iCiAgICAgICAgZGF0YS1ibG9jay10eXBlPSIke3QudHlwZX0iCiAgICAgID48L2Rpdj4KICAgIGB9c2V0dXAodCxyLGEpe2xldCBpPXQucXVlcnlTZWxlY3RvcihgLmJsb2NrLmhlYWRpbmctJHt0aGlzLmxldmVsfWApO2lmKCFpKXtjb25zb2xlLmVycm9yKCJIZWFkaW5nQmxvY2tIYW5kbGVyLnNldHVwOiBObyBoZWFkaW5nIGJsb2NrIGVsZW1lbnQgZm91bmQiKTtyZXR1cm59ci5jb250ZW50JiYhaS5pbm5lckhUTUwmJihpLmlubmVySFRNTD1yLmNvbnRlbnQpLGkuYWRkRXZlbnRMaXN0ZW5lcigiaW5wdXQiLG89PnthLm9uSW5wdXQobyk7bGV0IG49dGhpcy5nZXRDdXJzb3JQb3NpdGlvbih0KTtuIT09bnVsbCYmKHRoaXMubGFzdEtub3duQ3Vyc29yUG9zaXRpb249bil9KSxpLmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLG89PntsZXQgbj10aGlzLmdldEN1cnNvclBvc2l0aW9uKHQpO24hPT1udWxsJiYodGhpcy5sYXN0S25vd25DdXJzb3JQb3NpdGlvbj1uKSxhLm9uS2V5RG93bihvKX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXMiLCgpPT57YS5vbkZvY3VzKCl9KSxpLmFkZEV2ZW50TGlzdGVuZXIoImJsdXIiLCgpPT57YS5vbkJsdXIoKX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigiY29tcG9zaXRpb25zdGFydCIsKCk9PnthLm9uQ29tcG9zaXRpb25TdGFydCgpfSksaS5hZGRFdmVudExpc3RlbmVyKCJjb21wb3NpdGlvbmVuZCIsKCk9PnthLm9uQ29tcG9zaXRpb25FbmQoKX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigibW91c2V1cCIsbz0+e2xldCBuPXRoaXMuZ2V0Q3Vyc29yUG9zaXRpb24odCk7biE9PW51bGwmJih0aGlzLmxhc3RLbm93bkN1cnNvclBvc2l0aW9uPW4pLGEub25Nb3VzZVVwPy4obyl9KSxpLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixvPT57c2V0VGltZW91dCgoKT0+e2xldCBuPXRoaXMuZ2V0Q3Vyc29yUG9zaXRpb24odCk7biE9PW51bGwmJih0aGlzLmxhc3RLbm93bkN1cnNvclBvc2l0aW9uPW4pfSwwKX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigia2V5dXAiLG89PntsZXQgbj10aGlzLmdldEN1cnNvclBvc2l0aW9uKHQpO24hPT1udWxsJiYodGhpcy5sYXN0S25vd25DdXJzb3JQb3NpdGlvbj1uKX0pLHRoaXMuc2V0dXBTZWxlY3Rpb25IYW5kbGVyKHQsaSxyKX1zZXR1cFNlbGVjdGlvbkhhbmRsZXIodCxyLGEpe2xldCBpPSgpPT57bGV0IG49d2luZG93LmdldFNlbGVjdGlvbigpO2lmKCFufHxuLnJhbmdlQ291bnQ9PT0wKXJldHVybjtsZXQgcz1uLnRvU3RyaW5nKCk7aWYocy5sZW5ndGg9PT0wKXt0aGlzLmxhc3RTZWxlY3RlZFRleHQmJih0aGlzLmxhc3RTZWxlY3RlZFRleHQ9IiIsdGhpcy5kaXNwYXRjaFNlbGVjdGlvbkV2ZW50KHQse3RleHQ6IiIsYmxvY2tJZDphLmlkLGhhc1NlbGVjdGlvbjohMX0pKTtyZXR1cm59bGV0IGM9ci5nZXRSb290Tm9kZSgpLmhvc3QsZj1jPy5jbG9zZXN0KCJkZWVzLWlucHV0LXd5c2l3eWciKT8uc2hhZG93Um9vdCx1PWM/LnNoYWRvd1Jvb3QscD1bXTtmJiZwLnB1c2goZiksdSYmcC5wdXNoKHUpO2xldCBoPXJ0LmdldFNlbGVjdGlvbkluZm8oLi4ucCk7aWYoIWgpcmV0dXJuO2xldCBiPXJ0LmNvbnRhaW5zQWNyb3NzU2hhZG93RE9NKHIsaC5zdGFydENvbnRhaW5lcikseD1ydC5jb250YWluc0Fjcm9zc1NoYWRvd0RPTShyLGguZW5kQ29udGFpbmVyKTtpZihifHx4KXtpZihzIT09dGhpcy5sYXN0U2VsZWN0ZWRUZXh0KXt0aGlzLmxhc3RTZWxlY3RlZFRleHQ9cztsZXQgZz1ydC5jcmVhdGVSYW5nZUZyb21JbmZvKGgpLHY9Zy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTt0aGlzLmRpc3BhdGNoU2VsZWN0aW9uRXZlbnQodCx7dGV4dDpzLnRyaW0oKSxibG9ja0lkOmEuaWQscmFuZ2U6ZyxyZWN0OnYsaGFzU2VsZWN0aW9uOiEwfSl9fWVsc2UgdGhpcy5sYXN0U2VsZWN0ZWRUZXh0JiYodGhpcy5sYXN0U2VsZWN0ZWRUZXh0PSIiLHRoaXMuZGlzcGF0Y2hTZWxlY3Rpb25FdmVudCh0LHt0ZXh0OiIiLGJsb2NrSWQ6YS5pZCxoYXNTZWxlY3Rpb246ITF9KSl9O2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInNlbGVjdGlvbmNoYW5nZSIsaSksdGhpcy5zZWxlY3Rpb25IYW5kbGVyPWk7bGV0IG89ci5nZXRSb290Tm9kZSgpLmhvc3Q7aWYobyl7bGV0IG49by5kaXNjb25uZWN0ZWRDYWxsYmFjaztvLmRpc2Nvbm5lY3RlZENhbGxiYWNrPWFzeW5jIGZ1bmN0aW9uKCl7dGhpcy5zZWxlY3Rpb25IYW5kbGVyJiYoZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigic2VsZWN0aW9uY2hhbmdlIix0aGlzLnNlbGVjdGlvbkhhbmRsZXIpLHRoaXMuc2VsZWN0aW9uSGFuZGxlcj1udWxsKSxuJiZhd2FpdCBuLmNhbGwobyl9LmJpbmQodGhpcyl9fWRpc3BhdGNoU2VsZWN0aW9uRXZlbnQodCxyKXtsZXQgYT1uZXcgQ3VzdG9tRXZlbnQoImJsb2NrLXRleHQtc2VsZWN0ZWQiLHtkZXRhaWw6cixidWJibGVzOiEwLGNvbXBvc2VkOiEwfSk7dC5kaXNwYXRjaEV2ZW50KGEpfWdldFN0eWxlcygpe3JldHVybmAKICAgICAgLmJsb2NrLmhlYWRpbmctMSB7CiAgICAgICAgZm9udC1zaXplOiAzMnB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7CiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjsKICAgICAgICBtYXJnaW46IDI0cHggMCA4cHggMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwMDAwMDAiLCIjZmZmZmZmIil9OwogICAgICB9CgogICAgICAuYmxvY2suaGVhZGluZy0yIHsKICAgICAgICBmb250LXNpemU6IDI0cHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICBsaW5lLWhlaWdodDogMS4zOwogICAgICAgIG1hcmdpbjogMjBweCAwIDZweCAwOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzAwMDAwMCIsIiNmZmZmZmYiKX07CiAgICAgIH0KCiAgICAgIC5ibG9jay5oZWFkaW5nLTMgewogICAgICAgIGZvbnQtc2l6ZTogMjBweDsKICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7CiAgICAgICAgbWFyZ2luOiAxNnB4IDAgNHB4IDA7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMDAwMDAwIiwiI2ZmZmZmZiIpfTsKICAgICAgfQogICAgYH1nZXRQbGFjZWhvbGRlcigpe3N3aXRjaCh0aGlzLmxldmVsKXtjYXNlIDE6cmV0dXJuIkhlYWRpbmcgMSI7Y2FzZSAyOnJldHVybiJIZWFkaW5nIDIiO2Nhc2UgMzpyZXR1cm4iSGVhZGluZyAzIjtkZWZhdWx0OnJldHVybiJIZWFkaW5nIn19Z2V0TGFzdFRleHROb2RlKHQpe2lmKHQubm9kZVR5cGU9PT1Ob2RlLlRFWFRfTk9ERSlyZXR1cm4gdDtmb3IobGV0IHI9dC5jaGlsZE5vZGVzLmxlbmd0aC0xO3I+PTA7ci0tKXtsZXQgYT10aGlzLmdldExhc3RUZXh0Tm9kZSh0LmNoaWxkTm9kZXNbcl0pO2lmKGEpcmV0dXJuIGF9cmV0dXJuIG51bGx9Z2V0Q3Vyc29yUG9zaXRpb24odCxyKXtsZXQgYT10LnF1ZXJ5U2VsZWN0b3IoYC5ibG9jay5oZWFkaW5nLSR7dGhpcy5sZXZlbH1gKTtpZighYSlyZXR1cm4gbnVsbDtsZXQgbj1yPy5jb21wb25lbnQ/LmNsb3Nlc3QoImRlZXMtaW5wdXQtd3lzaXd5ZyIpPy5zaGFkb3dSb290LHM9cj8uc2hhZG93Um9vdCxjPVtdO24mJmMucHVzaChuKSxzJiZjLnB1c2gocyk7bGV0IGQ9cnQuZ2V0U2VsZWN0aW9uSW5mbyguLi5jKTtpZighZHx8IXJ0LmNvbnRhaW5zQWNyb3NzU2hhZG93RE9NKGEsZC5zdGFydENvbnRhaW5lcikpcmV0dXJuIG51bGw7bGV0IGY9ZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTtyZXR1cm4gZi5zZWxlY3ROb2RlQ29udGVudHMoYSksZi5zZXRFbmQoZC5zdGFydENvbnRhaW5lcixkLnN0YXJ0T2Zmc2V0KSxmLnRvU3RyaW5nKCkubGVuZ3RofWdldENvbnRlbnQodCxyKXtsZXQgYT10LnF1ZXJ5U2VsZWN0b3IoYC5ibG9jay5oZWFkaW5nLSR7dGhpcy5sZXZlbH1gKTtyZXR1cm4gYSYmYS5pbm5lckhUTUx8fCIifXNldENvbnRlbnQodCxyLGEpe2xldCBpPXQucXVlcnlTZWxlY3RvcihgLmJsb2NrLmhlYWRpbmctJHt0aGlzLmxldmVsfWApO2lmKCFpKXJldHVybjtsZXQgbz1kb2N1bWVudC5hY3RpdmVFbGVtZW50PT09aXx8dC5zaGFkb3dSb290Py5hY3RpdmVFbGVtZW50PT09aTtpLmlubmVySFRNTD1yLG8mJmkuZm9jdXMoKX1zZXRDdXJzb3JUb1N0YXJ0KHQscil7bGV0IGE9dC5xdWVyeVNlbGVjdG9yKGAuYmxvY2suaGVhZGluZy0ke3RoaXMubGV2ZWx9YCk7YSYmZzEuc2V0Q3Vyc29yVG9TdGFydChhKX1zZXRDdXJzb3JUb0VuZCh0LHIpe2xldCBhPXQucXVlcnlTZWxlY3RvcihgLmJsb2NrLmhlYWRpbmctJHt0aGlzLmxldmVsfWApO2EmJmcxLnNldEN1cnNvclRvRW5kKGEpfWZvY3VzKHQscil7bGV0IGE9dC5xdWVyeVNlbGVjdG9yKGAuYmxvY2suaGVhZGluZy0ke3RoaXMubGV2ZWx9YCk7YSYmKGEuaGFzQXR0cmlidXRlKCJjb250ZW50ZWRpdGFibGUiKXx8YS5zZXRBdHRyaWJ1dGUoImNvbnRlbnRlZGl0YWJsZSIsInRydWUiKSxhLmZvY3VzKCksZG9jdW1lbnQuYWN0aXZlRWxlbWVudCE9PWEmJnQuc2hhZG93Um9vdD8uYWN0aXZlRWxlbWVudCE9PWEmJlByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCk9PnthLmZvY3VzKCl9KSl9Zm9jdXNXaXRoQ3Vyc29yKHQscj0iZW5kIixhKXtsZXQgaT10LnF1ZXJ5U2VsZWN0b3IoYC5ibG9jay5oZWFkaW5nLSR7dGhpcy5sZXZlbH1gKTtpZighaSlyZXR1cm47aWYoaS5oYXNBdHRyaWJ1dGUoImNvbnRlbnRlZGl0YWJsZSIpfHxpLnNldEF0dHJpYnV0ZSgiY29udGVudGVkaXRhYmxlIiwidHJ1ZSIpLHI9PT0iZW5kIiYmaS50ZXh0Q29udGVudCYmaS50ZXh0Q29udGVudC5sZW5ndGg+MCl7bGV0IG49d2luZG93LmdldFNlbGVjdGlvbigpO2lmKG4pe2xldCBzPWRvY3VtZW50LmNyZWF0ZVJhbmdlKCksYz10aGlzLmdldExhc3RUZXh0Tm9kZShpKXx8aTtjLm5vZGVUeXBlPT09Tm9kZS5URVhUX05PREU/KHMuc2V0U3RhcnQoYyxjLnRleHRDb250ZW50Py5sZW5ndGh8fDApLHMuc2V0RW5kKGMsYy50ZXh0Q29udGVudD8ubGVuZ3RofHwwKSk6KHMuc2VsZWN0Tm9kZUNvbnRlbnRzKGMpLHMuY29sbGFwc2UoITEpKSxuLnJlbW92ZUFsbFJhbmdlcygpLG4uYWRkUmFuZ2Uocyl9fWkuZm9jdXMoKTtsZXQgbz0oKT0+e3I9PT0ic3RhcnQiP3RoaXMuc2V0Q3Vyc29yVG9TdGFydCh0LGEpOnI9PT0iZW5kIiYmKCFpLnRleHRDb250ZW50fHxpLnRleHRDb250ZW50Lmxlbmd0aD09PTApP3RoaXMuc2V0Q3Vyc29yVG9FbmQodCxhKTp0eXBlb2Ygcj09Im51bWJlciImJnJ0LnNldEN1cnNvclBvc2l0aW9uKGkscil9O2RvY3VtZW50LmFjdGl2ZUVsZW1lbnQ9PT1pfHx0LnNoYWRvd1Jvb3Q/LmFjdGl2ZUVsZW1lbnQ9PT1pP28oKTpQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT57ZG9jdW1lbnQuYWN0aXZlRWxlbWVudD09PWl8fHQuc2hhZG93Um9vdD8uYWN0aXZlRWxlbWVudD09PWk/bygpOnNldFRpbWVvdXQoKCk9PnsoZG9jdW1lbnQuYWN0aXZlRWxlbWVudD09PWl8fHQuc2hhZG93Um9vdD8uYWN0aXZlRWxlbWVudD09PWkpJiZvKCl9LDEwKX0pfWdldFNwbGl0Q29udGVudCh0LHIpe2xldCBhPXQucXVlcnlTZWxlY3RvcihgLmJsb2NrLmhlYWRpbmctJHt0aGlzLmxldmVsfWApO2lmKCFhKXJldHVybiBudWxsO2xldCBuPXI/LmNvbXBvbmVudD8uY2xvc2VzdCgiZGVlcy1pbnB1dC13eXNpd3lnIik/LnNoYWRvd1Jvb3Qscz1yPy5zaGFkb3dSb290LGM9W107biYmYy5wdXNoKG4pLHMmJmMucHVzaChzKTtsZXQgZD1ydC5nZXRTZWxlY3Rpb25JbmZvKC4uLmMpO2lmKCFkKXtpZih0aGlzLmxhc3RLbm93bkN1cnNvclBvc2l0aW9uIT09bnVsbCl7bGV0IHc9YS50ZXh0Q29udGVudHx8IiIsTT1NYXRoLm1pbih0aGlzLmxhc3RLbm93bkN1cnNvclBvc2l0aW9uLHcubGVuZ3RoKTtyZXR1cm57YmVmb3JlOncuc3Vic3RyaW5nKDAsTSksYWZ0ZXI6dy5zdWJzdHJpbmcoTSl9fXJldHVybiBudWxsfWlmKCFydC5jb250YWluc0Fjcm9zc1NoYWRvd0RPTShhLGQuc3RhcnRDb250YWluZXIpKXtpZih0aGlzLmxhc3RLbm93bkN1cnNvclBvc2l0aW9uIT09bnVsbCl7bGV0IHc9YS50ZXh0Q29udGVudHx8IiIsTT1NYXRoLm1pbih0aGlzLmxhc3RLbm93bkN1cnNvclBvc2l0aW9uLHcubGVuZ3RoKTtyZXR1cm57YmVmb3JlOncuc3Vic3RyaW5nKDAsTSksYWZ0ZXI6dy5zdWJzdHJpbmcoTSl9fXJldHVybiBudWxsfWxldCBmPXRoaXMuZ2V0Q3Vyc29yUG9zaXRpb24odCxyKTtpZihmPT09bnVsbHx8Zj09PTApcmV0dXJue2JlZm9yZToiIixhZnRlcjphLmlubmVySFRNTH07bGV0IHU9ZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKSxwPWRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7dS5zZXRTdGFydChhLDApLHUuc2V0RW5kKGQuc3RhcnRDb250YWluZXIsZC5zdGFydE9mZnNldCkscC5zZXRTdGFydChkLnN0YXJ0Q29udGFpbmVyLGQuc3RhcnRPZmZzZXQpLHAuc2V0RW5kKGEsYS5jaGlsZE5vZGVzLmxlbmd0aCk7bGV0IGg9dS5jbG9uZUNvbnRlbnRzKCksYj1wLmNsb25lQ29udGVudHMoKSx4PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3guYXBwZW5kQ2hpbGQoaCk7bGV0IGc9eC5pbm5lckhUTUw7eC5pbm5lckhUTUw9IiIseC5hcHBlbmRDaGlsZChiKTtsZXQgdj14LmlubmVySFRNTDtyZXR1cm57YmVmb3JlOmcsYWZ0ZXI6dn19fX0pO3ZhciBiWiwkJHI9bCgoKT0+e2NuKCk7U2UoKTtCYygpO3VsKCk7Ylo9Y2xhc3MgZXh0ZW5kcyBfYXt0eXBlPSJxdW90ZSI7bGFzdEtub3duQ3Vyc29yUG9zaXRpb249MDtsYXN0U2VsZWN0ZWRUZXh0PSIiO3NlbGVjdGlvbkhhbmRsZXI9bnVsbDtyZW5kZXIodCxyKXtsZXQgYT1yPyIgc2VsZWN0ZWQiOiIiLGk9dGhpcy5nZXRQbGFjZWhvbGRlcigpO3JldHVybmAKICAgICAgPGRpdgogICAgICAgIGNsYXNzPSJibG9jayBxdW90ZSR7YX0iCiAgICAgICAgY29udGVudGVkaXRhYmxlPSJ0cnVlIgogICAgICAgIGRhdGEtcGxhY2Vob2xkZXI9IiR7aX0iCiAgICAgICAgZGF0YS1ibG9jay1pZD0iJHt0LmlkfSIKICAgICAgICBkYXRhLWJsb2NrLXR5cGU9IiR7dC50eXBlfSIKICAgICAgPjwvZGl2PgogICAgYH1zZXR1cCh0LHIsYSl7bGV0IGk9dC5xdWVyeVNlbGVjdG9yKCIuYmxvY2sucXVvdGUiKTtpZighaSl7Y29uc29sZS5lcnJvcigiUXVvdGVCbG9ja0hhbmRsZXIuc2V0dXA6IE5vIHF1b3RlIGJsb2NrIGVsZW1lbnQgZm91bmQiKTtyZXR1cm59ci5jb250ZW50JiYhaS5pbm5lckhUTUwmJihpLmlubmVySFRNTD1yLmNvbnRlbnQpLGkuYWRkRXZlbnRMaXN0ZW5lcigiaW5wdXQiLG89PnthLm9uSW5wdXQobyk7bGV0IG49dGhpcy5nZXRDdXJzb3JQb3NpdGlvbih0KTtuIT09bnVsbCYmKHRoaXMubGFzdEtub3duQ3Vyc29yUG9zaXRpb249bil9KSxpLmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLG89PntsZXQgbj10aGlzLmdldEN1cnNvclBvc2l0aW9uKHQpO24hPT1udWxsJiYodGhpcy5sYXN0S25vd25DdXJzb3JQb3NpdGlvbj1uKSxhLm9uS2V5RG93bihvKX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXMiLCgpPT57YS5vbkZvY3VzKCl9KSxpLmFkZEV2ZW50TGlzdGVuZXIoImJsdXIiLCgpPT57YS5vbkJsdXIoKX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigiY29tcG9zaXRpb25zdGFydCIsKCk9PnthLm9uQ29tcG9zaXRpb25TdGFydCgpfSksaS5hZGRFdmVudExpc3RlbmVyKCJjb21wb3NpdGlvbmVuZCIsKCk9PnthLm9uQ29tcG9zaXRpb25FbmQoKX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigibW91c2V1cCIsbz0+e2xldCBuPXRoaXMuZ2V0Q3Vyc29yUG9zaXRpb24odCk7biE9PW51bGwmJih0aGlzLmxhc3RLbm93bkN1cnNvclBvc2l0aW9uPW4pLGEub25Nb3VzZVVwPy4obyl9KSxpLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixvPT57c2V0VGltZW91dCgoKT0+e2xldCBuPXRoaXMuZ2V0Q3Vyc29yUG9zaXRpb24odCk7biE9PW51bGwmJih0aGlzLmxhc3RLbm93bkN1cnNvclBvc2l0aW9uPW4pfSwwKX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigia2V5dXAiLG89PntsZXQgbj10aGlzLmdldEN1cnNvclBvc2l0aW9uKHQpO24hPT1udWxsJiYodGhpcy5sYXN0S25vd25DdXJzb3JQb3NpdGlvbj1uKX0pLHRoaXMuc2V0dXBTZWxlY3Rpb25IYW5kbGVyKHQsaSxyKX1zZXR1cFNlbGVjdGlvbkhhbmRsZXIodCxyLGEpe2xldCBpPSgpPT57bGV0IG49d2luZG93LmdldFNlbGVjdGlvbigpO2lmKCFufHxuLnJhbmdlQ291bnQ9PT0wKXJldHVybjtsZXQgcz1uLnRvU3RyaW5nKCk7aWYocy5sZW5ndGg9PT0wKXt0aGlzLmxhc3RTZWxlY3RlZFRleHQmJih0aGlzLmxhc3RTZWxlY3RlZFRleHQ9IiIsdGhpcy5kaXNwYXRjaFNlbGVjdGlvbkV2ZW50KHQse3RleHQ6IiIsYmxvY2tJZDphLmlkLGhhc1NlbGVjdGlvbjohMX0pKTtyZXR1cm59bGV0IGM9ci5nZXRSb290Tm9kZSgpLmhvc3QsZj1jPy5jbG9zZXN0KCJkZWVzLWlucHV0LXd5c2l3eWciKT8uc2hhZG93Um9vdCx1PWM/LnNoYWRvd1Jvb3QscD1bXTtmJiZwLnB1c2goZiksdSYmcC5wdXNoKHUpO2xldCBoPXJ0LmdldFNlbGVjdGlvbkluZm8oLi4ucCk7aWYoIWgpcmV0dXJuO2xldCBiPXJ0LmNvbnRhaW5zQWNyb3NzU2hhZG93RE9NKHIsaC5zdGFydENvbnRhaW5lcikseD1ydC5jb250YWluc0Fjcm9zc1NoYWRvd0RPTShyLGguZW5kQ29udGFpbmVyKTtpZihifHx4KXtpZihzIT09dGhpcy5sYXN0U2VsZWN0ZWRUZXh0KXt0aGlzLmxhc3RTZWxlY3RlZFRleHQ9cztsZXQgZz1ydC5jcmVhdGVSYW5nZUZyb21JbmZvKGgpLHY9Zy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTt0aGlzLmRpc3BhdGNoU2VsZWN0aW9uRXZlbnQodCx7dGV4dDpzLnRyaW0oKSxibG9ja0lkOmEuaWQscmFuZ2U6ZyxyZWN0OnYsaGFzU2VsZWN0aW9uOiEwfSl9fWVsc2UgdGhpcy5sYXN0U2VsZWN0ZWRUZXh0JiYodGhpcy5sYXN0U2VsZWN0ZWRUZXh0PSIiLHRoaXMuZGlzcGF0Y2hTZWxlY3Rpb25FdmVudCh0LHt0ZXh0OiIiLGJsb2NrSWQ6YS5pZCxoYXNTZWxlY3Rpb246ITF9KSl9O2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInNlbGVjdGlvbmNoYW5nZSIsaSksdGhpcy5zZWxlY3Rpb25IYW5kbGVyPWk7bGV0IG89ci5nZXRSb290Tm9kZSgpLmhvc3Q7aWYobyl7bGV0IG49by5kaXNjb25uZWN0ZWRDYWxsYmFjaztvLmRpc2Nvbm5lY3RlZENhbGxiYWNrPWFzeW5jIGZ1bmN0aW9uKCl7dGhpcy5zZWxlY3Rpb25IYW5kbGVyJiYoZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigic2VsZWN0aW9uY2hhbmdlIix0aGlzLnNlbGVjdGlvbkhhbmRsZXIpLHRoaXMuc2VsZWN0aW9uSGFuZGxlcj1udWxsKSxuJiZhd2FpdCBuLmNhbGwobyl9LmJpbmQodGhpcyl9fWRpc3BhdGNoU2VsZWN0aW9uRXZlbnQodCxyKXtsZXQgYT1uZXcgQ3VzdG9tRXZlbnQoImJsb2NrLXRleHQtc2VsZWN0ZWQiLHtkZXRhaWw6cixidWJibGVzOiEwLGNvbXBvc2VkOiEwfSk7dC5kaXNwYXRjaEV2ZW50KGEpfWdldFN0eWxlcygpe3JldHVybmAKICAgICAgLyogUXVvdGUgc3BlY2lmaWMgc3R5bGVzICovCiAgICAgIC5ibG9jay5xdW90ZSB7CiAgICAgICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCAke20uYmRUaGVtZSgiIzAwNjZjYyIsIiM0ZDk0ZmYiKX07CiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzU1NSIsIiNiMGIwYjAiKX07CiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljOwogICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7CiAgICAgICAgbWFyZ2luOiAxNnB4IDA7CiAgICAgIH0KICAgIGB9Z2V0UGxhY2Vob2xkZXIoKXtyZXR1cm4iQWRkIGEgcXVvdGUuLi4ifWdldEN1cnNvclBvc2l0aW9uKHQscil7bGV0IGE9dC5xdWVyeVNlbGVjdG9yKCIuYmxvY2sucXVvdGUiKTtpZighYSlyZXR1cm4gbnVsbDtsZXQgbj1yPy5jb21wb25lbnQ/LmNsb3Nlc3QoImRlZXMtaW5wdXQtd3lzaXd5ZyIpPy5zaGFkb3dSb290LHM9cj8uc2hhZG93Um9vdCxjPVtdO24mJmMucHVzaChuKSxzJiZjLnB1c2gocyk7bGV0IGQ9cnQuZ2V0U2VsZWN0aW9uSW5mbyguLi5jKTtpZighZHx8IXJ0LmNvbnRhaW5zQWNyb3NzU2hhZG93RE9NKGEsZC5zdGFydENvbnRhaW5lcikpcmV0dXJuIG51bGw7bGV0IGY9ZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTtyZXR1cm4gZi5zZWxlY3ROb2RlQ29udGVudHMoYSksZi5zZXRFbmQoZC5zdGFydENvbnRhaW5lcixkLnN0YXJ0T2Zmc2V0KSxmLnRvU3RyaW5nKCkubGVuZ3RofWdldENvbnRlbnQodCxyKXtsZXQgYT10LnF1ZXJ5U2VsZWN0b3IoIi5ibG9jay5xdW90ZSIpO3JldHVybiBhJiZhLmlubmVySFRNTHx8IiJ9c2V0Q29udGVudCh0LHIsYSl7bGV0IGk9dC5xdWVyeVNlbGVjdG9yKCIuYmxvY2sucXVvdGUiKTtpZighaSlyZXR1cm47bGV0IG89ZG9jdW1lbnQuYWN0aXZlRWxlbWVudD09PWl8fHQuc2hhZG93Um9vdD8uYWN0aXZlRWxlbWVudD09PWk7aS5pbm5lckhUTUw9cixvJiZpLmZvY3VzKCl9c2V0Q3Vyc29yVG9TdGFydCh0LHIpe2xldCBhPXQucXVlcnlTZWxlY3RvcigiLmJsb2NrLnF1b3RlIik7YSYmZzEuc2V0Q3Vyc29yVG9TdGFydChhKX1zZXRDdXJzb3JUb0VuZCh0LHIpe2xldCBhPXQucXVlcnlTZWxlY3RvcigiLmJsb2NrLnF1b3RlIik7YSYmZzEuc2V0Q3Vyc29yVG9FbmQoYSl9Zm9jdXModCxyKXtsZXQgYT10LnF1ZXJ5U2VsZWN0b3IoIi5ibG9jay5xdW90ZSIpO2EmJihhLmhhc0F0dHJpYnV0ZSgiY29udGVudGVkaXRhYmxlIil8fGEuc2V0QXR0cmlidXRlKCJjb250ZW50ZWRpdGFibGUiLCJ0cnVlIiksYS5mb2N1cygpLGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQhPT1hJiZ0LnNoYWRvd1Jvb3Q/LmFjdGl2ZUVsZW1lbnQhPT1hJiZQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT57YS5mb2N1cygpfSkpfWZvY3VzV2l0aEN1cnNvcih0LHI9ImVuZCIsYSl7bGV0IGk9dC5xdWVyeVNlbGVjdG9yKCIuYmxvY2sucXVvdGUiKTtpZighaSlyZXR1cm47aS5oYXNBdHRyaWJ1dGUoImNvbnRlbnRlZGl0YWJsZSIpfHxpLnNldEF0dHJpYnV0ZSgiY29udGVudGVkaXRhYmxlIiwidHJ1ZSIpLGkuZm9jdXMoKTtsZXQgbz0oKT0+e3I9PT0ic3RhcnQiP3RoaXMuc2V0Q3Vyc29yVG9TdGFydCh0LGEpOnI9PT0iZW5kIj90aGlzLnNldEN1cnNvclRvRW5kKHQsYSk6dHlwZW9mIHI9PSJudW1iZXIiJiZydC5zZXRDdXJzb3JQb3NpdGlvbihpLHIpfTtkb2N1bWVudC5hY3RpdmVFbGVtZW50PT09aXx8dC5zaGFkb3dSb290Py5hY3RpdmVFbGVtZW50PT09aT9vKCk6UHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKT0+eyhkb2N1bWVudC5hY3RpdmVFbGVtZW50PT09aXx8dC5zaGFkb3dSb290Py5hY3RpdmVFbGVtZW50PT09aSkmJm8oKX0pfWdldFNwbGl0Q29udGVudCh0LHIpe2xldCBhPXQucXVlcnlTZWxlY3RvcigiLmJsb2NrLnF1b3RlIik7aWYoIWEpcmV0dXJuIG51bGw7bGV0IG49cj8uY29tcG9uZW50Py5jbG9zZXN0KCJkZWVzLWlucHV0LXd5c2l3eWciKT8uc2hhZG93Um9vdCxzPXI/LnNoYWRvd1Jvb3QsYz1bXTtuJiZjLnB1c2gobikscyYmYy5wdXNoKHMpO2xldCBkPXJ0LmdldFNlbGVjdGlvbkluZm8oLi4uYyk7aWYoIWQpe2lmKHRoaXMubGFzdEtub3duQ3Vyc29yUG9zaXRpb24hPT1udWxsKXtsZXQgdz1hLnRleHRDb250ZW50fHwiIixNPU1hdGgubWluKHRoaXMubGFzdEtub3duQ3Vyc29yUG9zaXRpb24sdy5sZW5ndGgpO3JldHVybntiZWZvcmU6dy5zdWJzdHJpbmcoMCxNKSxhZnRlcjp3LnN1YnN0cmluZyhNKX19cmV0dXJuIG51bGx9aWYoIXJ0LmNvbnRhaW5zQWNyb3NzU2hhZG93RE9NKGEsZC5zdGFydENvbnRhaW5lcikpe2lmKHRoaXMubGFzdEtub3duQ3Vyc29yUG9zaXRpb24hPT1udWxsKXtsZXQgdz1hLnRleHRDb250ZW50fHwiIixNPU1hdGgubWluKHRoaXMubGFzdEtub3duQ3Vyc29yUG9zaXRpb24sdy5sZW5ndGgpO3JldHVybntiZWZvcmU6dy5zdWJzdHJpbmcoMCxNKSxhZnRlcjp3LnN1YnN0cmluZyhNKX19cmV0dXJuIG51bGx9bGV0IGY9dGhpcy5nZXRDdXJzb3JQb3NpdGlvbih0LHIpO2lmKGY9PT1udWxsfHxmPT09MClyZXR1cm57YmVmb3JlOiIiLGFmdGVyOmEuaW5uZXJIVE1MfTtsZXQgdT1kb2N1bWVudC5jcmVhdGVSYW5nZSgpLHA9ZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTt1LnNldFN0YXJ0KGEsMCksdS5zZXRFbmQoZC5zdGFydENvbnRhaW5lcixkLnN0YXJ0T2Zmc2V0KSxwLnNldFN0YXJ0KGQuc3RhcnRDb250YWluZXIsZC5zdGFydE9mZnNldCkscC5zZXRFbmQoYSxhLmNoaWxkTm9kZXMubGVuZ3RoKTtsZXQgaD11LmNsb25lQ29udGVudHMoKSxiPXAuY2xvbmVDb250ZW50cygpLHg9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7eC5hcHBlbmRDaGlsZChoKTtsZXQgZz14LmlubmVySFRNTDt4LmlubmVySFRNTD0iIix4LmFwcGVuZENoaWxkKGIpO2xldCB2PXguaW5uZXJIVE1MO3JldHVybntiZWZvcmU6ZyxhZnRlcjp2fX19fSk7dmFyIEJzLFExLHZjdD1sKCgpPT57QnM9e3h0ZXJtOiI1LjMuMCIseHRlcm1BZGRvbkZpdDoiMC44LjAiLHh0ZXJtQWRkb25TZWFyY2g6IjAuMTMuMCIsaGlnaGxpZ2h0SnM6IjExLjExLjEiLGFwZXhjaGFydHM6IjUuMTAuMyIsdGlwdGFwOiIyLjI3LjIiLGZvbnRhd2Vzb21lOiI3LjIuMCJ9LFExPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtIn0pO3ZhciB4MSxQJHI9bCgoKT0+e3ZjdCgpO3gxPWNsYXNzIGV7c3RhdGljIGluc3RhbmNlO3h0ZXJtTGliPW51bGw7eHRlcm1GaXRBZGRvbkxpYj1udWxsO3h0ZXJtU2VhcmNoQWRkb25MaWI9bnVsbDtoaWdobGlnaHRKc0xpYj1udWxsO2FwZXhDaGFydHNMaWI9bnVsbDt0aXB0YXBMaWI9bnVsbDt4dGVybUxvYWRpbmdQcm9taXNlPW51bGw7eHRlcm1GaXRBZGRvbkxvYWRpbmdQcm9taXNlPW51bGw7eHRlcm1TZWFyY2hBZGRvbkxvYWRpbmdQcm9taXNlPW51bGw7aGlnaGxpZ2h0SnNMb2FkaW5nUHJvbWlzZT1udWxsO2FwZXhDaGFydHNMb2FkaW5nUHJvbWlzZT1udWxsO3RpcHRhcExvYWRpbmdQcm9taXNlPW51bGw7Y29uc3RydWN0b3IoKXt9c3RhdGljIGdldEluc3RhbmNlKCl7cmV0dXJuIGUuaW5zdGFuY2V8fChlLmluc3RhbmNlPW5ldyBlKSxlLmluc3RhbmNlfWFzeW5jIGxvYWRYdGVybSgpe3JldHVybiB0aGlzLnh0ZXJtTGliP3RoaXMueHRlcm1MaWI6dGhpcy54dGVybUxvYWRpbmdQcm9taXNlP3RoaXMueHRlcm1Mb2FkaW5nUHJvbWlzZToodGhpcy54dGVybUxvYWRpbmdQcm9taXNlPShhc3luYygpPT57bGV0IHI9YXdhaXQgaW1wb3J0KGAke1ExfS94dGVybUAke0JzLnh0ZXJtfS8rZXNtYCk7cmV0dXJuIGF3YWl0IHRoaXMuaW5qZWN0WHRlcm1TdHlsZXMoKSx0aGlzLnh0ZXJtTGliPXtUZXJtaW5hbDpyLlRlcm1pbmFsfSx0aGlzLnh0ZXJtTGlifSkoKSx0aGlzLnh0ZXJtTG9hZGluZ1Byb21pc2UpfWFzeW5jIGxvYWRYdGVybUZpdEFkZG9uKCl7cmV0dXJuIHRoaXMueHRlcm1GaXRBZGRvbkxpYj90aGlzLnh0ZXJtRml0QWRkb25MaWI6dGhpcy54dGVybUZpdEFkZG9uTG9hZGluZ1Byb21pc2U/dGhpcy54dGVybUZpdEFkZG9uTG9hZGluZ1Byb21pc2U6KHRoaXMueHRlcm1GaXRBZGRvbkxvYWRpbmdQcm9taXNlPShhc3luYygpPT57bGV0IHI9YXdhaXQgaW1wb3J0KGAke1ExfS94dGVybS1hZGRvbi1maXRAJHtCcy54dGVybUFkZG9uRml0fS8rZXNtYCk7cmV0dXJuIHRoaXMueHRlcm1GaXRBZGRvbkxpYj17Rml0QWRkb246ci5GaXRBZGRvbn0sdGhpcy54dGVybUZpdEFkZG9uTGlifSkoKSx0aGlzLnh0ZXJtRml0QWRkb25Mb2FkaW5nUHJvbWlzZSl9YXN5bmMgbG9hZFh0ZXJtU2VhcmNoQWRkb24oKXtyZXR1cm4gdGhpcy54dGVybVNlYXJjaEFkZG9uTGliP3RoaXMueHRlcm1TZWFyY2hBZGRvbkxpYjp0aGlzLnh0ZXJtU2VhcmNoQWRkb25Mb2FkaW5nUHJvbWlzZT90aGlzLnh0ZXJtU2VhcmNoQWRkb25Mb2FkaW5nUHJvbWlzZToodGhpcy54dGVybVNlYXJjaEFkZG9uTG9hZGluZ1Byb21pc2U9KGFzeW5jKCk9PntsZXQgcj1hd2FpdCBpbXBvcnQoYCR7UTF9L3h0ZXJtLWFkZG9uLXNlYXJjaEAke0JzLnh0ZXJtQWRkb25TZWFyY2h9Lytlc21gKTtyZXR1cm4gdGhpcy54dGVybVNlYXJjaEFkZG9uTGliPXtTZWFyY2hBZGRvbjpyLlNlYXJjaEFkZG9ufSx0aGlzLnh0ZXJtU2VhcmNoQWRkb25MaWJ9KSgpLHRoaXMueHRlcm1TZWFyY2hBZGRvbkxvYWRpbmdQcm9taXNlKX1hc3luYyBpbmplY3RYdGVybVN0eWxlcygpe2xldCB0PSJ4dGVybS1jZG4tc3R5bGVzIjtpZihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0KSlyZXR1cm47bGV0IHI9YCR7UTF9L3h0ZXJtQCR7QnMueHRlcm19L2Nzcy94dGVybS5jc3NgLGk9YXdhaXQoYXdhaXQgZmV0Y2gocikpLnRleHQoKSxvPWAKLyogRml4IHh0ZXJtLmpzIFdpZHRoQ2FjaGUgbWVhc3VyZW1lbnQgY29udGFpbmVyIGNhdXNpbmcgaG9yaXpvbnRhbCBzY3JvbGxiYXIgKi8KLyogeHRlcm0gY3JlYXRlcyB0aGlzIG9uIGRvY3VtZW50LmJvZHkgLSBtb3ZlIGl0IG9mZi1zY3JlZW4gaG9yaXpvbnRhbGx5IHRvbyAqLwpib2R5ID4gZGl2W3N0eWxlKj0idG9wOiAtNTAwMDBweCJdW3N0eWxlKj0id2lkdGg6IDUwMDAwcHgiXSB7CiAgbGVmdDogLTUwMDAwcHggIWltcG9ydGFudDsKfQpgLG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3R5bGUiKTtuLmlkPXQsbi50ZXh0Q29udGVudD1pK28sZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChuKX1hc3luYyBsb2FkSGlnaGxpZ2h0SnMoKXtyZXR1cm4gdGhpcy5oaWdobGlnaHRKc0xpYj90aGlzLmhpZ2hsaWdodEpzTGliOnRoaXMuaGlnaGxpZ2h0SnNMb2FkaW5nUHJvbWlzZT90aGlzLmhpZ2hsaWdodEpzTG9hZGluZ1Byb21pc2U6KHRoaXMuaGlnaGxpZ2h0SnNMb2FkaW5nUHJvbWlzZT0oYXN5bmMoKT0+e2xldCByPWF3YWl0IGltcG9ydChgJHtRMX0vaGlnaGxpZ2h0LmpzQCR7QnMuaGlnaGxpZ2h0SnN9Lytlc21gKTtyZXR1cm4gdGhpcy5oaWdobGlnaHRKc0xpYj1yLmRlZmF1bHQsdGhpcy5oaWdobGlnaHRKc0xpYn0pKCksdGhpcy5oaWdobGlnaHRKc0xvYWRpbmdQcm9taXNlKX1hc3luYyBsb2FkQXBleENoYXJ0cygpe3JldHVybiB0aGlzLmFwZXhDaGFydHNMaWI/dGhpcy5hcGV4Q2hhcnRzTGliOnRoaXMuYXBleENoYXJ0c0xvYWRpbmdQcm9taXNlP3RoaXMuYXBleENoYXJ0c0xvYWRpbmdQcm9taXNlOih0aGlzLmFwZXhDaGFydHNMb2FkaW5nUHJvbWlzZT0oYXN5bmMoKT0+e2xldCByPWF3YWl0IGltcG9ydChgJHtRMX0vYXBleGNoYXJ0c0Ake0JzLmFwZXhjaGFydHN9Lytlc21gKTtyZXR1cm4gdGhpcy5hcGV4Q2hhcnRzTGliPXIuZGVmYXVsdCx0aGlzLmFwZXhDaGFydHNMaWJ9KSgpLHRoaXMuYXBleENoYXJ0c0xvYWRpbmdQcm9taXNlKX1hc3luYyBsb2FkVGlwdGFwKCl7cmV0dXJuIHRoaXMudGlwdGFwTGliP3RoaXMudGlwdGFwTGliOnRoaXMudGlwdGFwTG9hZGluZ1Byb21pc2U/dGhpcy50aXB0YXBMb2FkaW5nUHJvbWlzZToodGhpcy50aXB0YXBMb2FkaW5nUHJvbWlzZT0oYXN5bmMoKT0+e2xldCB0PUJzLnRpcHRhcCxbcixhLGksbyxuLHNdPWF3YWl0IFByb21pc2UuYWxsKFtpbXBvcnQoYCR7UTF9L0B0aXB0YXAvY29yZUAke3R9Lytlc21gKSxpbXBvcnQoYCR7UTF9L0B0aXB0YXAvc3RhcnRlci1raXRAJHt0fS8rZXNtYCksaW1wb3J0KGAke1ExfS9AdGlwdGFwL2V4dGVuc2lvbi11bmRlcmxpbmVAJHt0fS8rZXNtYCksaW1wb3J0KGAke1ExfS9AdGlwdGFwL2V4dGVuc2lvbi10ZXh0LWFsaWduQCR7dH0vK2VzbWApLGltcG9ydChgJHtRMX0vQHRpcHRhcC9leHRlbnNpb24tbGlua0Ake3R9Lytlc21gKSxpbXBvcnQoYCR7UTF9L0B0aXB0YXAvZXh0ZW5zaW9uLXR5cG9ncmFwaHlAJHt0fS8rZXNtYCldKTtyZXR1cm4gdGhpcy50aXB0YXBMaWI9e0VkaXRvcjpyLkVkaXRvcixTdGFydGVyS2l0OmEuZGVmYXVsdHx8YS5TdGFydGVyS2l0LFVuZGVybGluZTppLmRlZmF1bHR8fGkuVW5kZXJsaW5lLFRleHRBbGlnbjpvLmRlZmF1bHR8fG8uVGV4dEFsaWduLExpbms6bi5kZWZhdWx0fHxuLkxpbmssVHlwb2dyYXBoeTpzLmRlZmF1bHR8fHMuVHlwb2dyYXBoeX0sdGhpcy50aXB0YXBMaWJ9KSgpLHRoaXMudGlwdGFwTG9hZGluZ1Byb21pc2UpfWFzeW5jIHByZWxvYWRBbGwoKXthd2FpdCBQcm9taXNlLmFsbChbdGhpcy5sb2FkWHRlcm0oKSx0aGlzLmxvYWRYdGVybUZpdEFkZG9uKCksdGhpcy5sb2FkWHRlcm1TZWFyY2hBZGRvbigpLHRoaXMubG9hZEhpZ2hsaWdodEpzKCksdGhpcy5sb2FkQXBleENoYXJ0cygpLHRoaXMubG9hZFRpcHRhcCgpXSl9aXNMb2FkZWQodCl7c3dpdGNoKHQpe2Nhc2UieHRlcm0iOnJldHVybiB0aGlzLnh0ZXJtTGliIT09bnVsbDtjYXNlInh0ZXJtRml0QWRkb24iOnJldHVybiB0aGlzLnh0ZXJtRml0QWRkb25MaWIhPT1udWxsO2Nhc2UieHRlcm1TZWFyY2hBZGRvbiI6cmV0dXJuIHRoaXMueHRlcm1TZWFyY2hBZGRvbkxpYiE9PW51bGw7Y2FzZSJoaWdobGlnaHRKcyI6cmV0dXJuIHRoaXMuaGlnaGxpZ2h0SnNMaWIhPT1udWxsO2Nhc2UiYXBleENoYXJ0cyI6cmV0dXJuIHRoaXMuYXBleENoYXJ0c0xpYiE9PW51bGw7Y2FzZSJ0aXB0YXAiOnJldHVybiB0aGlzLnRpcHRhcExpYiE9PW51bGw7ZGVmYXVsdDpyZXR1cm4hMX19fX0pO3ZhciBjMz1sKCgpPT57UCRyKCk7dmN0KCl9KTt2YXIgdlosSSRyPWwoKCk9PntjbigpO1NlKCk7dWwoKTt1bygpO1psZSgpO2MzKCk7dlo9Y2xhc3MgZXh0ZW5kcyBfYXt0eXBlPSJjb2RlIjtoaWdobGlnaHRUaW1lcj1udWxsO2hpZ2hsaWdodEpzPW51bGw7cmVuZGVyKHQscil7bGV0IGE9dC5tZXRhZGF0YT8ubGFuZ3VhZ2V8fCJ0eXBlc2NyaXB0IixpPXQuY29udGVudHx8IiIsbz1pLnNwbGl0KGAKYCkubGVuZ3RoLG49IiI7Zm9yKGxldCBjPTE7Yzw9bztjKyspbis9YDxkaXYgY2xhc3M9ImxpbmUtbnVtYmVyIj4ke2N9PC9kaXY+YDtsZXQgcz1tWi5tYXAoYz0+e2xldCBkPWMudG9Mb3dlckNhc2UoKTtyZXR1cm5gPG9wdGlvbiB2YWx1ZT0iJHtkfSIgJHtkPT09YT8ic2VsZWN0ZWQiOiIifT4ke2N9PC9vcHRpb24+YH0pLmpvaW4oIiIpO3JldHVybmAKICAgICAgPGRpdiBjbGFzcz0iY29kZS1ibG9jay1jb250YWluZXIke3I/IiBzZWxlY3RlZCI6IiJ9IiBkYXRhLWxhbmd1YWdlPSIke2F9Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJjb2RlLWhlYWRlciI+CiAgICAgICAgICA8c2VsZWN0IGNsYXNzPSJsYW5ndWFnZS1zZWxlY3RvciIgZGF0YS1ibG9jay1pZD0iJHt0LmlkfSI+CiAgICAgICAgICAgICR7c30KICAgICAgICAgIDwvc2VsZWN0PgogICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iY29weS1idXR0b24iIHRpdGxlPSJDb3B5IGNvZGUiPgogICAgICAgICAgICA8c3ZnIGNsYXNzPSJjb3B5LWljb24iIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE2IDE2IiBmaWxsPSJjdXJyZW50Q29sb3IiPgogICAgICAgICAgICAgIDxwYXRoIGQ9Ik0wIDYuNzVDMCA1Ljc4NC43ODQgNSAxLjc1IDVoMS41YS43NS43NSAwIDAxMCAxLjVoLTEuNWEuMjUuMjUgMCAwMC0uMjUuMjV2Ny41YzAgLjEzOC4xMTIuMjUuMjUuMjVoNy41YS4yNS4yNSAwIDAwLjI1LS4yNXYtMS41YS43NS43NSAwIDAxMS41IDB2MS41QTEuNzUgMS43NSAwIDAxOS4yNSAxNmgtNy41QTEuNzUgMS43NSAwIDAxMCAxNC4yNXYtNy41eiI+PC9wYXRoPgogICAgICAgICAgICAgIDxwYXRoIGQ9Ik01IDEuNzVDNSAuNzg0IDUuNzg0IDAgNi43NSAwaDcuNUMxNS4yMTYgMCAxNiAuNzg0IDE2IDEuNzV2Ny41QTEuNzUgMS43NSAwIDAxMTQuMjUgMTFoLTcuNUExLjc1IDEuNzUgMCAwMTUgOS4yNXYtNy41em0xLjc1LS4yNWEuMjUuMjUgMCAwMC0uMjUuMjV2Ny41YzAgLjEzOC4xMTIuMjUuMjUuMjVoNy41YS4yNS4yNSAwIDAwLjI1LS4yNXYtNy41YS4yNS4yNSAwIDAwLS4yNS0uMjVoLTcuNXoiPjwvcGF0aD4KICAgICAgICAgICAgPC9zdmc+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJjb3B5LXRleHQiPkNvcHk8L3NwYW4+CiAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJjb2RlLWJvZHkiPgogICAgICAgICAgPGRpdiBjbGFzcz0ibGluZS1udW1iZXJzIj4ke259PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2RlLWNvbnRlbnQiPgogICAgICAgICAgICA8cHJlIGNsYXNzPSJjb2RlLXByZSI+PGNvZGUgY2xhc3M9ImNvZGUtZWRpdG9yIiAKICAgICAgICAgICAgICAgICBjb250ZW50ZWRpdGFibGU9InRydWUiCiAgICAgICAgICAgICAgICAgZGF0YS1ibG9jay1pZD0iJHt0LmlkfSIKICAgICAgICAgICAgICAgICBkYXRhLWJsb2NrLXR5cGU9IiR7dC50eXBlfSIKICAgICAgICAgICAgICAgICBzcGVsbGNoZWNrPSJmYWxzZSI+JHt0aGlzLmVzY2FwZUh0bWwoaSl9PC9jb2RlPjwvcHJlPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgYH1zZXR1cCh0LHIsYSl7bGV0IGk9dC5xdWVyeVNlbGVjdG9yKCIuY29kZS1lZGl0b3IiKSxvPXQucXVlcnlTZWxlY3RvcigiLmNvZGUtYmxvY2stY29udGFpbmVyIiksbj10LnF1ZXJ5U2VsZWN0b3IoIi5jb3B5LWJ1dHRvbiIpLHM9dC5xdWVyeVNlbGVjdG9yKCIubGFuZ3VhZ2Utc2VsZWN0b3IiKTtpZighaXx8IW8pcmV0dXJuO3MmJnMuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixkPT57bGV0IGY9ZC50YXJnZXQudmFsdWU7ci5tZXRhZGF0YT17Li4uci5tZXRhZGF0YSxsYW5ndWFnZTpmfSxvLnNldEF0dHJpYnV0ZSgiZGF0YS1sYW5ndWFnZSIsZiksci5jb250ZW50JiZkb2N1bWVudC5hY3RpdmVFbGVtZW50IT09aSYmdGhpcy5hcHBseUhpZ2hsaWdodGluZyh0LHIpLGEub25JbnB1dCYmYS5vbklucHV0KG5ldyBJbnB1dEV2ZW50KCJpbnB1dCIpKX0pLG4mJm4uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGFzeW5jKCk9PntsZXQgZD1pLnRleHRDb250ZW50fHwiIjt0cnl7YXdhaXQgbmF2aWdhdG9yLmNsaXBib2FyZC53cml0ZVRleHQoZCk7bGV0IGY9bi5xdWVyeVNlbGVjdG9yKCIuY29weS10ZXh0IiksdT1mLnRleHRDb250ZW50O2YudGV4dENvbnRlbnQ9IkNvcGllZCEiLG4uY2xhc3NMaXN0LmFkZCgiY29waWVkIiksc2V0VGltZW91dCgoKT0+e2YudGV4dENvbnRlbnQ9dSxuLmNsYXNzTGlzdC5yZW1vdmUoImNvcGllZCIpfSwyZTMpfWNhdGNoKGYpe2NvbnNvbGUuZXJyb3IoIkZhaWxlZCB0byBjb3B5OiIsZik7bGV0IHU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgidGV4dGFyZWEiKTt1LnZhbHVlPWQsdS5zdHlsZS5wb3NpdGlvbj0iZml4ZWQiLHUuc3R5bGUub3BhY2l0eT0iMCIsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh1KSx1LnNlbGVjdCgpO3RyeXtkb2N1bWVudC5leGVjQ29tbWFuZCgiY29weSIpO2xldCBwPW4ucXVlcnlTZWxlY3RvcigiLmNvcHktdGV4dCIpLGg9cC50ZXh0Q29udGVudDtwLnRleHRDb250ZW50PSJDb3BpZWQhIixuLmNsYXNzTGlzdC5hZGQoImNvcGllZCIpLHNldFRpbWVvdXQoKCk9PntwLnRleHRDb250ZW50PWgsbi5jbGFzc0xpc3QucmVtb3ZlKCJjb3BpZWQiKX0sMmUzKX1jYXRjaChwKXtjb25zb2xlLmVycm9yKCJGYWxsYmFjayBjb3B5IGZhaWxlZDoiLHApfWRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQodSl9fSk7bGV0IGM9ITE7aS5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsKCk9PntjPSEwLG8uY2xhc3NMaXN0LmFkZCgiZWRpdGluZyIpO2xldCBkPWkudGV4dENvbnRlbnR8fCIiO2kudGV4dENvbnRlbnQ9ZCxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCk9PntsZXQgZj1kb2N1bWVudC5jcmVhdGVSYW5nZSgpLHU9d2luZG93LmdldFNlbGVjdGlvbigpO2kuZmlyc3RDaGlsZCYmKGYuc2V0U3RhcnQoaS5maXJzdENoaWxkLDApLGYuY29sbGFwc2UoITApLHU/LnJlbW92ZUFsbFJhbmdlcygpLHU/LmFkZFJhbmdlKGYpKX0pLGEub25Gb2N1cygpfSksaS5hZGRFdmVudExpc3RlbmVyKCJibHVyIiwoKT0+e2M9ITEsby5jbGFzc0xpc3QucmVtb3ZlKCJlZGl0aW5nIiksdGhpcy5hcHBseUhpZ2hsaWdodGluZyh0LHIpLGEub25CbHVyKCl9KSxpLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IixkPT57YS5vbklucHV0KGQpLHRoaXMudXBkYXRlTGluZU51bWJlcnModCksY2xlYXJUaW1lb3V0KHRoaXMuaGlnaGxpZ2h0VGltZXIpfSksaS5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixkPT57aWYoZC5rZXk9PT0iVGFiIil7ZC5wcmV2ZW50RGVmYXVsdCgpO2xldCBmPXdpbmRvdy5nZXRTZWxlY3Rpb24oKTtpZihmJiZmLnJhbmdlQ291bnQ+MCl7bGV0IHU9Zi5nZXRSYW5nZUF0KDApLHA9ZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIiAgIik7dS5pbnNlcnROb2RlKHApLHUuc2V0U3RhcnRBZnRlcihwKSx1LnNldEVuZEFmdGVyKHApLGYucmVtb3ZlQWxsUmFuZ2VzKCksZi5hZGRSYW5nZSh1KSxhLm9uSW5wdXQobmV3IElucHV0RXZlbnQoImlucHV0IikpLHRoaXMudXBkYXRlTGluZU51bWJlcnModCl9cmV0dXJufWlmKFsiQXJyb3dMZWZ0IiwiQXJyb3dSaWdodCIsIkFycm93VXAiLCJBcnJvd0Rvd24iXS5pbmNsdWRlcyhkLmtleSkpe2xldCBmPXRoaXMuZ2V0Q3Vyc29yUG9zaXRpb24odCksdT1pLnRleHRDb250ZW50Py5sZW5ndGh8fDA7aWYoZC5rZXk9PT0iQXJyb3dMZWZ0IiYmZj09PTB8fGQua2V5PT09IkFycm93UmlnaHQiJiZmPT09dSl7YS5vbktleURvd24oZCk7cmV0dXJufWlmKGQua2V5PT09IkFycm93VXAifHxkLmtleT09PSJBcnJvd0Rvd24iKXtsZXQgcD0oaS50ZXh0Q29udGVudHx8IiIpLnNwbGl0KGAKYCksaD10aGlzLmdldEN1cnJlbnRMaW5lSW5kZXgoaSk7aWYoZC5rZXk9PT0iQXJyb3dVcCImJmg9PT0wfHxkLmtleT09PSJBcnJvd0Rvd24iJiZoPT09cC5sZW5ndGgtMSl7YS5vbktleURvd24oZCk7cmV0dXJufX19YS5vbktleURvd24oZCl9KSxpLmFkZEV2ZW50TGlzdGVuZXIoInBhc3RlIixkPT57ZC5wcmV2ZW50RGVmYXVsdCgpO2xldCBmPWQuY2xpcGJvYXJkRGF0YT8uZ2V0RGF0YSgidGV4dC9wbGFpbiIpO2lmKGYpe2xldCB1PXdpbmRvdy5nZXRTZWxlY3Rpb24oKTtpZih1JiZ1LnJhbmdlQ291bnQ+MCl7bGV0IHA9dS5nZXRSYW5nZUF0KDApO3AuZGVsZXRlQ29udGVudHMoKTtsZXQgaD1kb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShmKTtwLmluc2VydE5vZGUoaCkscC5zZXRTdGFydEFmdGVyKGgpLHAuc2V0RW5kQWZ0ZXIoaCksdS5yZW1vdmVBbGxSYW5nZXMoKSx1LmFkZFJhbmdlKHApLGEub25JbnB1dChuZXcgSW5wdXRFdmVudCgiaW5wdXQiKSksdGhpcy51cGRhdGVMaW5lTnVtYmVycyh0KX19fSksaS5hZGRFdmVudExpc3RlbmVyKCJjb21wb3NpdGlvbnN0YXJ0IiwoKT0+YS5vbkNvbXBvc2l0aW9uU3RhcnQoKSksaS5hZGRFdmVudExpc3RlbmVyKCJjb21wb3NpdGlvbmVuZCIsKCk9PmEub25Db21wb3NpdGlvbkVuZCgpKSxyLmNvbnRlbnQmJmRvY3VtZW50LmFjdGl2ZUVsZW1lbnQhPT1pJiZyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCk9Pnt0aGlzLmFwcGx5SGlnaGxpZ2h0aW5nKHQscil9KX11cGRhdGVMaW5lTnVtYmVycyh0KXtsZXQgcj10LnF1ZXJ5U2VsZWN0b3IoIi5jb2RlLWVkaXRvciIpLGE9dC5xdWVyeVNlbGVjdG9yKCIubGluZS1udW1iZXJzIik7aWYoIXJ8fCFhKXJldHVybjtsZXQgbj0oci50ZXh0Q29udGVudHx8IiIpLnNwbGl0KGAKYCkubGVuZ3RofHwxLHM9IiI7Zm9yKGxldCBjPTE7Yzw9bjtjKyspcys9YDxkaXYgY2xhc3M9ImxpbmUtbnVtYmVyIj4ke2N9PC9kaXY+YDthLmlubmVySFRNTD1zfWdldEN1cnJlbnRMaW5lSW5kZXgodCl7bGV0IHI9d2luZG93LmdldFNlbGVjdGlvbigpO2lmKCFyfHxyLnJhbmdlQ291bnQ9PT0wKXJldHVybiAwO2xldCBhPXIuZ2V0UmFuZ2VBdCgwKSxpPWEuY2xvbmVSYW5nZSgpO3JldHVybiBpLnNlbGVjdE5vZGVDb250ZW50cyh0KSxpLnNldEVuZChhLnN0YXJ0Q29udGFpbmVyLGEuc3RhcnRPZmZzZXQpLGkudG9TdHJpbmcoKS5zcGxpdChgCmApLmxlbmd0aC0xfWFzeW5jIGFwcGx5SGlnaGxpZ2h0aW5nKHQscil7bGV0IGE9dC5xdWVyeVNlbGVjdG9yKCIuY29kZS1lZGl0b3IiKTtpZighYSlyZXR1cm47dGhpcy5oaWdobGlnaHRKc3x8KHRoaXMuaGlnaGxpZ2h0SnM9YXdhaXQgeDEuZ2V0SW5zdGFuY2UoKS5sb2FkSGlnaGxpZ2h0SnMoKSk7bGV0IGk9dGhpcy5nZXRDdXJzb3JQb3NpdGlvbih0KSxvPWEudGV4dENvbnRlbnR8fCIiLG49ci5tZXRhZGF0YT8ubGFuZ3VhZ2V8fCJ0eXBlc2NyaXB0Ijt0cnl7bGV0IHM9dGhpcy5oaWdobGlnaHRKcy5oaWdobGlnaHQobyx7bGFuZ3VhZ2U6bixpZ25vcmVJbGxlZ2FsczohMH0pO3MudmFsdWUmJihhLmlubmVySFRNTD1zLnZhbHVlLGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ9PT1hJiZpIT09bnVsbCYmcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57cnQuc2V0Q3Vyc29yUG9zaXRpb24oYSxpKX0pKX1jYXRjaChzKXtjb25zb2xlLndhcm4oIlN5bnRheCBoaWdobGlnaHRpbmcgZmFpbGVkOiIscyl9fWVzY2FwZUh0bWwodCl7bGV0IHI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7cmV0dXJuIHIudGV4dENvbnRlbnQ9dCxyLmlubmVySFRNTH1nZXRDb250ZW50KHQpe3JldHVybiB0LnF1ZXJ5U2VsZWN0b3IoIi5jb2RlLWVkaXRvciIpPy50ZXh0Q29udGVudHx8IiJ9c2V0Q29udGVudCh0LHIpe2xldCBhPXQucXVlcnlTZWxlY3RvcigiLmNvZGUtZWRpdG9yIik7aWYoYSYmKGEudGV4dENvbnRlbnQ9cix0aGlzLnVwZGF0ZUxpbmVOdW1iZXJzKHQpLGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQhPT1hKSl7bGV0IGk9e2lkOmEuZGF0YXNldC5ibG9ja0lkfHwiIix0eXBlOiJjb2RlIixjb250ZW50OnIsbWV0YWRhdGE6e2xhbmd1YWdlOnQucXVlcnlTZWxlY3RvcigiLmNvZGUtYmxvY2stY29udGFpbmVyIik/LmdldEF0dHJpYnV0ZSgiZGF0YS1sYW5ndWFnZSIpfHwidHlwZXNjcmlwdCJ9fTt0aGlzLmFwcGx5SGlnaGxpZ2h0aW5nKHQsaSl9fWdldEN1cnNvclBvc2l0aW9uKHQpe2xldCByPXQucXVlcnlTZWxlY3RvcigiLmNvZGUtZWRpdG9yIik7aWYoIXIpcmV0dXJuIG51bGw7bGV0IGE9d2luZG93LmdldFNlbGVjdGlvbigpO2lmKCFhfHxhLnJhbmdlQ291bnQ9PT0wKXJldHVybiBudWxsO2xldCBpPWEuZ2V0UmFuZ2VBdCgwKTtpZighci5jb250YWlucyhpLnN0YXJ0Q29udGFpbmVyKSlyZXR1cm4gbnVsbDtsZXQgbz1kb2N1bWVudC5jcmVhdGVSYW5nZSgpO3JldHVybiBvLnNlbGVjdE5vZGVDb250ZW50cyhyKSxvLnNldEVuZChpLnN0YXJ0Q29udGFpbmVyLGkuc3RhcnRPZmZzZXQpLG8udG9TdHJpbmcoKS5sZW5ndGh9c2V0Q3Vyc29yVG9TdGFydCh0KXtsZXQgcj10LnF1ZXJ5U2VsZWN0b3IoIi5jb2RlLWVkaXRvciIpO3ImJnJ0LnNldEN1cnNvclBvc2l0aW9uKHIsMCl9c2V0Q3Vyc29yVG9FbmQodCl7bGV0IHI9dC5xdWVyeVNlbGVjdG9yKCIuY29kZS1lZGl0b3IiKTtpZihyKXtsZXQgYT1yLnRleHRDb250ZW50Py5sZW5ndGh8fDA7cnQuc2V0Q3Vyc29yUG9zaXRpb24ocixhKX19Zm9jdXModCl7dC5xdWVyeVNlbGVjdG9yKCIuY29kZS1lZGl0b3IiKT8uZm9jdXMoKX1mb2N1c1dpdGhDdXJzb3IodCxyPSJlbmQiKXtsZXQgYT10LnF1ZXJ5U2VsZWN0b3IoIi5jb2RlLWVkaXRvciIpO2EmJihhLmZvY3VzKCkscmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57cj09PSJzdGFydCI/dGhpcy5zZXRDdXJzb3JUb1N0YXJ0KHQpOnI9PT0iZW5kIj90aGlzLnNldEN1cnNvclRvRW5kKHQpOnR5cGVvZiByPT0ibnVtYmVyIiYmcnQuc2V0Q3Vyc29yUG9zaXRpb24oYSxyKX0pKX1nZXRTcGxpdENvbnRlbnQodCl7bGV0IHI9dGhpcy5nZXRDdXJzb3JQb3NpdGlvbih0KTtpZihyPT09bnVsbClyZXR1cm4gbnVsbDtsZXQgYT10aGlzLmdldENvbnRlbnQodCk7cmV0dXJue2JlZm9yZTphLnN1YnN0cmluZygwLHIpLGFmdGVyOmEuc3Vic3RyaW5nKHIpfX1nZXRTdHlsZXMoKXtyZXR1cm5gCiAgICAgIC8qIENvZGUgQmxvY2sgQ29udGFpbmVyIC0gTWluaW1hbGlzdCBzaGFkY24gc3R5bGUgKi8KICAgICAgLmNvZGUtYmxvY2stY29udGFpbmVyIHsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgbWFyZ2luOiAxMnB4IDA7CiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjMzc0MTUxIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICB9CiAgICAgIAogICAgICAuY29kZS1ibG9jay1jb250YWluZXIuc2VsZWN0ZWQgewogICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoIiM5Y2EzYWYiLCIjNmI3MjgwIil9OwogICAgICB9CiAgICAgIAogICAgICAuY29kZS1ibG9jay1jb250YWluZXIuZWRpdGluZyB7CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiIzZiNzI4MCIsIiM5Y2EzYWYiKX07CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmYWZhZmEiLCIjMGEwYTBhIil9OwogICAgICB9CiAgICAgIAogICAgICAvKiBIZWFkZXIgLSBTaW1wbGlmaWVkICovCiAgICAgIC5jb2RlLWhlYWRlciB7CiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZTVlN2ViIiwiIzM3NDE1MSIpfTsKICAgICAgICBwYWRkaW5nOiA4cHggMTJweDsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICB9CiAgICAgIAogICAgICAubGFuZ3VhZ2Utc2VsZWN0b3IgewogICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM2YjcyODAiLCIjOWNhM2FmIil9OwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsKICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wNWVtOwogICAgICAgIGZvbnQtZmFtaWx5OiAke1hyfTsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgcGFkZGluZzogNHB4IDhweDsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgICAgb3V0bGluZTogbm9uZTsKICAgICAgfQogICAgICAKICAgICAgLmxhbmd1YWdlLXNlbGVjdG9yOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2Y5ZmFmYiIsIiMxZjI5MzciKX07CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiMzNzQxNTEiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMzc0MTUxIiwiI2U1ZTdlYiIpfTsKICAgICAgfQogICAgICAKICAgICAgLmxhbmd1YWdlLXNlbGVjdG9yOmZvY3VzIHsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCIjOWNhM2FmIiwiIzZiNzI4MCIpfTsKICAgICAgfQogICAgICAKICAgICAgLyogQ29weSBCdXR0b24gLSBNaW5pbWFsICovCiAgICAgIC5jb3B5LWJ1dHRvbiB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogNHB4OwogICAgICAgIHBhZGRpbmc6IDRweCA4cHg7CiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzZiNzI4MCIsIiM5Y2EzYWYiKX07CiAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgIGZvbnQtZmFtaWx5OiAke1hyfTsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgICAgb3V0bGluZTogbm9uZTsKICAgICAgfQogICAgICAKICAgICAgLmNvcHktYnV0dG9uOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2Y5ZmFmYiIsIiMxZjI5MzciKX07CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiMzNzQxNTEiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMzc0MTUxIiwiI2U1ZTdlYiIpfTsKICAgICAgfQogICAgICAKICAgICAgLmNvcHktYnV0dG9uOmFjdGl2ZSB7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk4KTsKICAgICAgfQogICAgICAKICAgICAgLmNvcHktYnV0dG9uLmNvcGllZCB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMDU5NjY5IiwiIzEwYjk4MSIpfTsKICAgICAgfQogICAgICAKICAgICAgLmNvcHktaWNvbiB7CiAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgICAgb3BhY2l0eTogMC43OwogICAgICB9CiAgICAgIAogICAgICAuY29weS1idXR0b246aG92ZXIgLmNvcHktaWNvbiB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgfQogICAgICAKICAgICAgLmNvcHktdGV4dCB7CiAgICAgICAgbWluLXdpZHRoOiA0MHB4OwogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgfQogICAgICAKICAgICAgLyogQ29kZSBCb2R5ICovCiAgICAgIC5jb2RlLWJvZHkgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZmFmYWZhIiwiIzBhMGEwYSIpfTsKICAgICAgfQogICAgICAKICAgICAgLyogTGluZSBOdW1iZXJzIC0gU3VidGxlICovCiAgICAgIC5saW5lLW51bWJlcnMgewogICAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgICAgIHBhZGRpbmc6IDEycHggMDsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsKICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTsKICAgICAgICBtaW4td2lkdGg6IDQwcHg7CiAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjMzc0MTUxIil9OwogICAgICB9CiAgICAgIAogICAgICAubGluZS1udW1iZXIgewogICAgICAgIHBhZGRpbmc6IDAgMTJweCAwIDhweDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM5Y2EzYWYiLCIjNGI1NTYzIil9OwogICAgICAgIGZvbnQtZmFtaWx5OiAke3k4fTsKICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7CiAgICAgICAgaGVpZ2h0OiAyMHB4OwogICAgICB9CiAgICAgIAogICAgICAvKiBDb2RlIENvbnRlbnQgKi8KICAgICAgLmNvZGUtY29udGVudCB7CiAgICAgICAgZmxleDogMTsKICAgICAgICBvdmVyZmxvdy14OiBhdXRvOwogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgfQogICAgICAKICAgICAgLmNvZGUtcHJlIHsKICAgICAgICBtYXJnaW46IDA7CiAgICAgICAgcGFkZGluZzogMDsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgfQogICAgICAKICAgICAgLmNvZGUtZWRpdG9yIHsKICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICBwYWRkaW5nOiAxMnB4IDE2cHg7CiAgICAgICAgbWFyZ2luOiAwOwogICAgICAgIGZvbnQtZmFtaWx5OiAke3k4fTsKICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMTExODI3IiwiI2Y5ZmFmYiIpfTsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgICBib3JkZXI6IG5vbmU7CiAgICAgICAgb3V0bGluZTogbm9uZTsKICAgICAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7CiAgICAgICAgd29yZC13cmFwOiBicmVhay13b3JkOwogICAgICAgIG1pbi1oZWlnaHQ6IDYwcHg7CiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7CiAgICAgIH0KICAgICAgCiAgICAgIC8qIFBsYWNlaG9sZGVyICovCiAgICAgIC5jb2RlLWVkaXRvcjplbXB0eTo6YmVmb3JlIHsKICAgICAgICBjb250ZW50OiAiLy8gVHlwZSBvciBwYXN0ZSBjb2RlIGhlcmUuLi4iOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzljYTNhZiIsIiM0YjU1NjMiKX07CiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgICAgIH0KICAgICAgCiAgICAgIC8qIFdoZW4gZWRpdGluZyAoZm9jdXNlZCksIHNob3cgZ3JleSB0ZXh0IHdpdGhvdXQgaGlnaGxpZ2h0aW5nICovCiAgICAgIC5jb2RlLWJsb2NrLWNvbnRhaW5lci5lZGl0aW5nIC5jb2RlLWVkaXRvciB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNmI3MjgwIiwiIzljYTNhZiIpfSAhaW1wb3J0YW50OwogICAgICB9CiAgICAgIAogICAgICAuY29kZS1ibG9jay1jb250YWluZXIuZWRpdGluZyAuY29kZS1lZGl0b3IgKiB7CiAgICAgICAgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDsKICAgICAgfQogICAgICAKICAgICAgLyogU3ludGF4IEhpZ2hsaWdodGluZyAtIE11dGVkIGNvbG9ycyAqLwogICAgICAuY29kZS1lZGl0b3IgLmhsanMta2V5d29yZCB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjZGMyNjI2IiwiI2Y4NzE3MSIpfTsKICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICB9CiAgICAgIAogICAgICAuY29kZS1lZGl0b3IgLmhsanMtc3RyaW5nIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwNTk2NjkiLCIjMTBiOTgxIil9OwogICAgICB9CiAgICAgIAogICAgICAuY29kZS1lZGl0b3IgLmhsanMtbnVtYmVyIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM3YzNhZWQiLCIjYTc4YmZhIil9OwogICAgICB9CiAgICAgIAogICAgICAuY29kZS1lZGl0b3IgLmhsanMtZnVuY3Rpb24gewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzI1NjNlYiIsIiM2MGE1ZmEiKX07CiAgICAgIH0KICAgICAgCiAgICAgIC5jb2RlLWVkaXRvciAuaGxqcy1jb21tZW50IHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM2YjcyODAiLCIjNmI3MjgwIil9OwogICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsKICAgICAgfQogICAgICAKICAgICAgLmNvZGUtZWRpdG9yIC5obGpzLXZhcmlhYmxlLAogICAgICAuY29kZS1lZGl0b3IgLmhsanMtYXR0ciB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjZWE1ODBjIiwiI2ZiOTIzYyIpfTsKICAgICAgfQogICAgICAKICAgICAgLmNvZGUtZWRpdG9yIC5obGpzLWNsYXNzLAogICAgICAuY29kZS1lZGl0b3IgLmhsanMtdGl0bGUgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzI1NjNlYiIsIiM2MGE1ZmEiKX07CiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgfQogICAgICAKICAgICAgLmNvZGUtZWRpdG9yIC5obGpzLXBhcmFtcyB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMzc0MTUxIiwiI2U1ZTdlYiIpfTsKICAgICAgfQogICAgICAKICAgICAgLmNvZGUtZWRpdG9yIC5obGpzLWJ1aWx0X2luIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM3YzNhZWQiLCIjYTc4YmZhIil9OwogICAgICB9CiAgICAgIAogICAgICAuY29kZS1lZGl0b3IgLmhsanMtbGl0ZXJhbCB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjN2MzYWVkIiwiI2E3OGJmYSIpfTsKICAgICAgfQogICAgICAKICAgICAgLmNvZGUtZWRpdG9yIC5obGpzLW1ldGEgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzZiNzI4MCIsIiM5Y2EzYWYiKX07CiAgICAgIH0KICAgICAgCiAgICAgIC5jb2RlLWVkaXRvciAuaGxqcy1wdW5jdHVhdGlvbiB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMzc0MTUxIiwiI2QxZDVkYiIpfTsKICAgICAgfQogICAgICAKICAgICAgLmNvZGUtZWRpdG9yIC5obGpzLXRhZyB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjZGMyNjI2IiwiI2Y4NzE3MSIpfTsKICAgICAgfQogICAgICAKICAgICAgLmNvZGUtZWRpdG9yIC5obGpzLWF0dHJpYnV0ZSB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMjU2M2ViIiwiIzYwYTVmYSIpfTsKICAgICAgfQogICAgICAKICAgICAgLmNvZGUtZWRpdG9yIC5obGpzLXNlbGVjdG9yLXRhZyB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjZGMyNjI2IiwiI2Y4NzE3MSIpfTsKICAgICAgfQogICAgICAKICAgICAgLmNvZGUtZWRpdG9yIC5obGpzLXNlbGVjdG9yLWNsYXNzIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMyNTYzZWIiLCIjNjBhNWZhIil9OwogICAgICB9CiAgICAgIAogICAgICAuY29kZS1lZGl0b3IgLmhsanMtc2VsZWN0b3ItaWQgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzdjM2FlZCIsIiNhNzhiZmEiKX07CiAgICAgIH0KICAgICAgCiAgICAgIC8qIFNlbGVjdGlvbiAqLwogICAgICAuY29kZS1lZGl0b3I6OnNlbGVjdGlvbiwKICAgICAgLmNvZGUtZWRpdG9yICo6OnNlbGVjdGlvbiB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoOTksIDEwMiwgMjQxLCAwLjIpIiwicmdiYSg5OSwgMTAyLCAyNDEsIDAuMykiKX07CiAgICAgIH0KICAgICAgCiAgICAgIC8qIFNjcm9sbGJhciBzdHlsaW5nIC0gTWluaW1hbCAqLwogICAgICAuY29kZS1jb250ZW50Ojotd2Via2l0LXNjcm9sbGJhciB7CiAgICAgICAgaGVpZ2h0OiA2cHg7CiAgICAgIH0KICAgICAgCiAgICAgIC5jb2RlLWNvbnRlbnQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgfQogICAgICAKICAgICAgLmNvZGUtY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZDFkNWRiIiwiIzRiNTU2MyIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7CiAgICAgIH0KICAgICAgCiAgICAgIC5jb2RlLWNvbnRlbnQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiIzljYTNhZiIsIiM2YjcyODAiKX07CiAgICAgIH0KICAgIGB9fX0pO3ZhciB5WixOJHI9bCgoKT0+e2NuKCk7U2UoKTtCYygpO3VsKCk7eVo9Y2xhc3MgZXh0ZW5kcyBfYXt0eXBlPSJsaXN0IjtsYXN0S25vd25DdXJzb3JQb3NpdGlvbj0wO2xhc3RTZWxlY3RlZFRleHQ9IiI7c2VsZWN0aW9uSGFuZGxlcj1udWxsO3JlbmRlcih0LHIpe2xldCBhPXI/IiBzZWxlY3RlZCI6IiIsbz0odC5tZXRhZGF0YT8ubGlzdFR5cGV8fCJ1bm9yZGVyZWQiKT09PSJvcmRlcmVkIj8ib2wiOiJ1bCIsbj10aGlzLnJlbmRlckxpc3RDb250ZW50KHQuY29udGVudCx0Lm1ldGFkYXRhKTtyZXR1cm5gCiAgICAgIDxkaXYKICAgICAgICBjbGFzcz0iYmxvY2sgbGlzdCR7YX0iCiAgICAgICAgY29udGVudGVkaXRhYmxlPSJ0cnVlIgogICAgICAgIGRhdGEtYmxvY2staWQ9IiR7dC5pZH0iCiAgICAgICAgZGF0YS1ibG9jay10eXBlPSIke3QudHlwZX0iCiAgICAgID4ke259PC9kaXY+CiAgICBgfXJlbmRlckxpc3RDb250ZW50KHQscil7aWYoIXQpcmV0dXJuIjx1bD48bGk+PC9saT48L3VsPiI7bGV0IGk9KHI/Lmxpc3RUeXBlfHwidW5vcmRlcmVkIik9PT0ib3JkZXJlZCI/Im9sIjoidWwiLG89dC5zcGxpdChgCmApLmZpbHRlcihzPT5zLnRyaW0oKSk7aWYoby5sZW5ndGg9PT0wKXJldHVybmA8JHtpfT48bGk+PC9saT48LyR7aX0+YDtsZXQgbj1vLm1hcChzPT5gPGxpPiR7c308L2xpPmApLmpvaW4oIiIpO3JldHVybmA8JHtpfT4ke259PC8ke2l9PmB9c2V0dXAodCxyLGEpe2xldCBpPXQucXVlcnlTZWxlY3RvcigiLmJsb2NrLmxpc3QiKTtpZighaSl7Y29uc29sZS5lcnJvcigiTGlzdEJsb2NrSGFuZGxlci5zZXR1cDogTm8gbGlzdCBibG9jayBlbGVtZW50IGZvdW5kIik7cmV0dXJufXIuY29udGVudCYmIWkuaW5uZXJIVE1MJiYoaS5pbm5lckhUTUw9dGhpcy5yZW5kZXJMaXN0Q29udGVudChyLmNvbnRlbnQsci5tZXRhZGF0YSkpLGkuYWRkRXZlbnRMaXN0ZW5lcigiaW5wdXQiLG89PnthLm9uSW5wdXQobyk7bGV0IG49dGhpcy5nZXRDdXJzb3JQb3NpdGlvbih0KTtuIT09bnVsbCYmKHRoaXMubGFzdEtub3duQ3Vyc29yUG9zaXRpb249bil9KSxpLmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLG89PntsZXQgbj10aGlzLmdldEN1cnNvclBvc2l0aW9uKHQpO2lmKG4hPT1udWxsJiYodGhpcy5sYXN0S25vd25DdXJzb3JQb3NpdGlvbj1uKSxvLmtleT09PSJFbnRlciImJiFvLnNoaWZ0S2V5KXtsZXQgcz13aW5kb3cuZ2V0U2VsZWN0aW9uKCk7aWYocyYmcy5yYW5nZUNvdW50PjApe2xldCBkPXMuZ2V0UmFuZ2VBdCgwKS5zdGFydENvbnRhaW5lci5wYXJlbnRFbGVtZW50Py5jbG9zZXN0KCJsaSIpO2lmKGQmJmQudGV4dENvbnRlbnQ9PT0iIil7by5wcmV2ZW50RGVmYXVsdCgpLGEub25LZXlEb3duKG8pO3JldHVybn19fWEub25LZXlEb3duKG8pfSksaS5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsKCk9PnthLm9uRm9jdXMoKX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigiYmx1ciIsKCk9PnthLm9uQmx1cigpfSksaS5hZGRFdmVudExpc3RlbmVyKCJjb21wb3NpdGlvbnN0YXJ0IiwoKT0+e2Eub25Db21wb3NpdGlvblN0YXJ0KCl9KSxpLmFkZEV2ZW50TGlzdGVuZXIoImNvbXBvc2l0aW9uZW5kIiwoKT0+e2Eub25Db21wb3NpdGlvbkVuZCgpfSksaS5hZGRFdmVudExpc3RlbmVyKCJtb3VzZXVwIixvPT57bGV0IG49dGhpcy5nZXRDdXJzb3JQb3NpdGlvbih0KTtuIT09bnVsbCYmKHRoaXMubGFzdEtub3duQ3Vyc29yUG9zaXRpb249biksYS5vbk1vdXNlVXA/LihvKX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLG89PntzZXRUaW1lb3V0KCgpPT57bGV0IG49dGhpcy5nZXRDdXJzb3JQb3NpdGlvbih0KTtuIT09bnVsbCYmKHRoaXMubGFzdEtub3duQ3Vyc29yUG9zaXRpb249bil9LDApfSksaS5hZGRFdmVudExpc3RlbmVyKCJrZXl1cCIsbz0+e2xldCBuPXRoaXMuZ2V0Q3Vyc29yUG9zaXRpb24odCk7biE9PW51bGwmJih0aGlzLmxhc3RLbm93bkN1cnNvclBvc2l0aW9uPW4pfSksdGhpcy5zZXR1cFNlbGVjdGlvbkhhbmRsZXIodCxpLHIpfXNldHVwU2VsZWN0aW9uSGFuZGxlcih0LHIsYSl7bGV0IGk9KCk9PntsZXQgbj13aW5kb3cuZ2V0U2VsZWN0aW9uKCk7aWYoIW58fG4ucmFuZ2VDb3VudD09PTApcmV0dXJuO2xldCBzPW4udG9TdHJpbmcoKTtpZihzLmxlbmd0aD09PTApe3RoaXMubGFzdFNlbGVjdGVkVGV4dCYmKHRoaXMubGFzdFNlbGVjdGVkVGV4dD0iIix0aGlzLmRpc3BhdGNoU2VsZWN0aW9uRXZlbnQodCx7dGV4dDoiIixibG9ja0lkOmEuaWQsaGFzU2VsZWN0aW9uOiExfSkpO3JldHVybn1sZXQgYz1yLmdldFJvb3ROb2RlKCkuaG9zdCxmPWM/LmNsb3Nlc3QoImRlZXMtaW5wdXQtd3lzaXd5ZyIpPy5zaGFkb3dSb290LHU9Yz8uc2hhZG93Um9vdCxwPVtdO2YmJnAucHVzaChmKSx1JiZwLnB1c2godSk7bGV0IGg9cnQuZ2V0U2VsZWN0aW9uSW5mbyguLi5wKTtpZighaClyZXR1cm47bGV0IGI9cnQuY29udGFpbnNBY3Jvc3NTaGFkb3dET00ocixoLnN0YXJ0Q29udGFpbmVyKSx4PXJ0LmNvbnRhaW5zQWNyb3NzU2hhZG93RE9NKHIsaC5lbmRDb250YWluZXIpO2lmKGJ8fHgpe2lmKHMhPT10aGlzLmxhc3RTZWxlY3RlZFRleHQpe3RoaXMubGFzdFNlbGVjdGVkVGV4dD1zO2xldCBnPXJ0LmNyZWF0ZVJhbmdlRnJvbUluZm8oaCksdj1nLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO3RoaXMuZGlzcGF0Y2hTZWxlY3Rpb25FdmVudCh0LHt0ZXh0OnMudHJpbSgpLGJsb2NrSWQ6YS5pZCxyYW5nZTpnLHJlY3Q6dixoYXNTZWxlY3Rpb246ITB9KX19ZWxzZSB0aGlzLmxhc3RTZWxlY3RlZFRleHQmJih0aGlzLmxhc3RTZWxlY3RlZFRleHQ9IiIsdGhpcy5kaXNwYXRjaFNlbGVjdGlvbkV2ZW50KHQse3RleHQ6IiIsYmxvY2tJZDphLmlkLGhhc1NlbGVjdGlvbjohMX0pKX07ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigic2VsZWN0aW9uY2hhbmdlIixpKSx0aGlzLnNlbGVjdGlvbkhhbmRsZXI9aTtsZXQgbz1yLmdldFJvb3ROb2RlKCkuaG9zdDtpZihvKXtsZXQgbj1vLmRpc2Nvbm5lY3RlZENhbGxiYWNrO28uZGlzY29ubmVjdGVkQ2FsbGJhY2s9YXN5bmMgZnVuY3Rpb24oKXt0aGlzLnNlbGVjdGlvbkhhbmRsZXImJihkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJzZWxlY3Rpb25jaGFuZ2UiLHRoaXMuc2VsZWN0aW9uSGFuZGxlciksdGhpcy5zZWxlY3Rpb25IYW5kbGVyPW51bGwpLG4mJmF3YWl0IG4uY2FsbChvKX0uYmluZCh0aGlzKX19ZGlzcGF0Y2hTZWxlY3Rpb25FdmVudCh0LHIpe2xldCBhPW5ldyBDdXN0b21FdmVudCgiYmxvY2stdGV4dC1zZWxlY3RlZCIse2RldGFpbDpyLGJ1YmJsZXM6ITAsY29tcG9zZWQ6ITB9KTt0LmRpc3BhdGNoRXZlbnQoYSl9Z2V0U3R5bGVzKCl7cmV0dXJuYAogICAgICAvKiBMaXN0IHNwZWNpZmljIHN0eWxlcyAqLwogICAgICAuYmxvY2subGlzdCB7CiAgICAgICAgcGFkZGluZzogMDsKICAgICAgfQogICAgICAKICAgICAgLmJsb2NrLmxpc3QgdWwsCiAgICAgIC5ibG9jay5saXN0IG9sIHsKICAgICAgICBtYXJnaW46IDA7CiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNHB4OwogICAgICB9CiAgICAgIAogICAgICAuYmxvY2subGlzdCBsaSB7CiAgICAgICAgbWFyZ2luOiA0cHggMDsKICAgICAgICBsaW5lLWhlaWdodDogMS42OwogICAgICB9CiAgICAgIAogICAgICAuYmxvY2subGlzdCBsaTpsYXN0LWNoaWxkIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiAwOwogICAgICB9CiAgICBgfWdldFBsYWNlaG9sZGVyKCl7cmV0dXJuIiJ9Z2V0Q3Vyc29yUG9zaXRpb24odCxyKXtsZXQgYT10LnF1ZXJ5U2VsZWN0b3IoIi5ibG9jay5saXN0Iik7aWYoIWEpcmV0dXJuIG51bGw7bGV0IG49cj8uY29tcG9uZW50Py5jbG9zZXN0KCJkZWVzLWlucHV0LXd5c2l3eWciKT8uc2hhZG93Um9vdCxzPXI/LnNoYWRvd1Jvb3QsYz1bXTtuJiZjLnB1c2gobikscyYmYy5wdXNoKHMpO2xldCBkPXJ0LmdldFNlbGVjdGlvbkluZm8oLi4uYyk7aWYoIWR8fCFydC5jb250YWluc0Fjcm9zc1NoYWRvd0RPTShhLGQuc3RhcnRDb250YWluZXIpKXJldHVybiBudWxsO2xldCBmPWRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7cmV0dXJuIGYuc2VsZWN0Tm9kZUNvbnRlbnRzKGEpLGYuc2V0RW5kKGQuc3RhcnRDb250YWluZXIsZC5zdGFydE9mZnNldCksZi50b1N0cmluZygpLmxlbmd0aH1nZXRDb250ZW50KHQscil7bGV0IGE9dC5xdWVyeVNlbGVjdG9yKCIuYmxvY2subGlzdCIpO2lmKCFhKXJldHVybiIiO2xldCBpPWEucXVlcnlTZWxlY3RvckFsbCgibGkiKTtyZXR1cm4gQXJyYXkuZnJvbShpKS5tYXAobj0+bi50ZXh0Q29udGVudHx8IiIpLmpvaW4oYApgKX1zZXRDb250ZW50KHQscixhKXtsZXQgaT10LnF1ZXJ5U2VsZWN0b3IoIi5ibG9jay5saXN0Iik7aWYoIWkpcmV0dXJuO2xldCBvPWRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ9PT1pfHx0LnNoYWRvd1Jvb3Q/LmFjdGl2ZUVsZW1lbnQ9PT1pLHM9aS5xdWVyeVNlbGVjdG9yKCJ1bCwgb2wiKT8udGFnTmFtZT09PSJPTCI7aS5pbm5lckhUTUw9dGhpcy5yZW5kZXJMaXN0Q29udGVudChyLHtsaXN0VHlwZTpzPyJvcmRlcmVkIjoidW5vcmRlcmVkIn0pLG8mJmkuZm9jdXMoKX1zZXRDdXJzb3JUb1N0YXJ0KHQscil7bGV0IGE9dC5xdWVyeVNlbGVjdG9yKCIuYmxvY2subGlzdCIpO2lmKCFhKXJldHVybjtsZXQgaT1hLnF1ZXJ5U2VsZWN0b3IoImxpIik7aWYoaSl7bGV0IG89dGhpcy5nZXRGaXJzdFRleHROb2RlKGkpO2lmKG8pe2xldCBuPWRvY3VtZW50LmNyZWF0ZVJhbmdlKCkscz13aW5kb3cuZ2V0U2VsZWN0aW9uKCk7bi5zZXRTdGFydChvLDApLG4uc2V0RW5kKG8sMCkscz8ucmVtb3ZlQWxsUmFuZ2VzKCkscz8uYWRkUmFuZ2Uobil9fX1zZXRDdXJzb3JUb0VuZCh0LHIpe2xldCBhPXQucXVlcnlTZWxlY3RvcigiLmJsb2NrLmxpc3QiKTtpZighYSlyZXR1cm47bGV0IGk9YS5xdWVyeVNlbGVjdG9yKCJsaTpsYXN0LWNoaWxkIik7aWYoaSl7bGV0IG89dGhpcy5nZXRMYXN0VGV4dE5vZGUoaSk7aWYobyl7bGV0IG49ZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKSxzPXdpbmRvdy5nZXRTZWxlY3Rpb24oKSxjPW8udGV4dENvbnRlbnQ/Lmxlbmd0aHx8MDtuLnNldFN0YXJ0KG8sYyksbi5zZXRFbmQobyxjKSxzPy5yZW1vdmVBbGxSYW5nZXMoKSxzPy5hZGRSYW5nZShuKX19fWdldEZpcnN0VGV4dE5vZGUodCl7aWYodC5ub2RlVHlwZT09PU5vZGUuVEVYVF9OT0RFKXJldHVybiB0O2ZvcihsZXQgcj0wO3I8dC5jaGlsZE5vZGVzLmxlbmd0aDtyKyspe2xldCBhPXRoaXMuZ2V0Rmlyc3RUZXh0Tm9kZSh0LmNoaWxkTm9kZXNbcl0pO2lmKGEpcmV0dXJuIGF9cmV0dXJuIG51bGx9Z2V0TGFzdFRleHROb2RlKHQpe2lmKHQubm9kZVR5cGU9PT1Ob2RlLlRFWFRfTk9ERSlyZXR1cm4gdDtmb3IobGV0IHI9dC5jaGlsZE5vZGVzLmxlbmd0aC0xO3I+PTA7ci0tKXtsZXQgYT10aGlzLmdldExhc3RUZXh0Tm9kZSh0LmNoaWxkTm9kZXNbcl0pO2lmKGEpcmV0dXJuIGF9cmV0dXJuIG51bGx9Zm9jdXModCxyKXtsZXQgYT10LnF1ZXJ5U2VsZWN0b3IoIi5ibG9jay5saXN0Iik7YSYmKGEuaGFzQXR0cmlidXRlKCJjb250ZW50ZWRpdGFibGUiKXx8YS5zZXRBdHRyaWJ1dGUoImNvbnRlbnRlZGl0YWJsZSIsInRydWUiKSxhLmZvY3VzKCksZG9jdW1lbnQuYWN0aXZlRWxlbWVudCE9PWEmJnQuc2hhZG93Um9vdD8uYWN0aXZlRWxlbWVudCE9PWEmJlByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCk9PnthLmZvY3VzKCl9KSl9Zm9jdXNXaXRoQ3Vyc29yKHQscj0iZW5kIixhKXtsZXQgaT10LnF1ZXJ5U2VsZWN0b3IoIi5ibG9jay5saXN0Iik7aWYoIWkpcmV0dXJuO2kuaGFzQXR0cmlidXRlKCJjb250ZW50ZWRpdGFibGUiKXx8aS5zZXRBdHRyaWJ1dGUoImNvbnRlbnRlZGl0YWJsZSIsInRydWUiKSxpLmZvY3VzKCk7bGV0IG89KCk9PntyPT09InN0YXJ0Ij90aGlzLnNldEN1cnNvclRvU3RhcnQodCxhKTpyPT09ImVuZCI/dGhpcy5zZXRDdXJzb3JUb0VuZCh0LGEpOnR5cGVvZiByPT0ibnVtYmVyIiYmdGhpcy5zZXRDdXJzb3JUb0VuZCh0LGEpfTtkb2N1bWVudC5hY3RpdmVFbGVtZW50PT09aXx8dC5zaGFkb3dSb290Py5hY3RpdmVFbGVtZW50PT09aT9vKCk6UHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKT0+eyhkb2N1bWVudC5hY3RpdmVFbGVtZW50PT09aXx8dC5zaGFkb3dSb290Py5hY3RpdmVFbGVtZW50PT09aSkmJm8oKX0pfWdldFNwbGl0Q29udGVudCh0LHIpe3JldHVybiB0LnF1ZXJ5U2VsZWN0b3IoIi5ibG9jay5saXN0IiksbnVsbH19fSk7dmFyIHdaLEYkcj1sKCgpPT57Y24oKTtTZSgpO3daPWNsYXNzIGV4dGVuZHMgX2F7dHlwZT0iaW1hZ2UiO3JlbmRlcih0LHIpe2xldCBhPXQubWV0YWRhdGE/LnVybCxpPXQuY29udGVudHx8IkltYWdlIixvPXQubWV0YWRhdGE/LmxvYWRpbmc7cmV0dXJuYAogICAgICA8ZGl2IGNsYXNzPSJpbWFnZS1ibG9jay1jb250YWluZXIke3I/IiBzZWxlY3RlZCI6IiJ9IiAKICAgICAgICAgICBkYXRhLWJsb2NrLWlkPSIke3QuaWR9IgogICAgICAgICAgIGRhdGEtaGFzLWltYWdlPSIkeyEhYX0iCiAgICAgICAgICAgdGFiaW5kZXg9IjAiPgogICAgICAgICR7bz90aGlzLnJlbmRlckxvYWRpbmcoKTphP3RoaXMucmVuZGVySW1hZ2UoYSxpKTp0aGlzLnJlbmRlclBsYWNlaG9sZGVyKCl9CiAgICAgICAgPGlucHV0IHR5cGU9ImZpbGUiIAogICAgICAgICAgICAgICBjbGFzcz0iaW1hZ2UtZmlsZS1pbnB1dCIgCiAgICAgICAgICAgICAgIGFjY2VwdD0iaW1hZ2UvKiIgCiAgICAgICAgICAgICAgIHN0eWxlPSJkaXNwbGF5OiBub25lOyIgLz4KICAgICAgPC9kaXY+CiAgICBgfXJlbmRlclBsYWNlaG9sZGVyKCl7cmV0dXJuYAogICAgICA8ZGl2IGNsYXNzPSJpbWFnZS11cGxvYWQtcGxhY2Vob2xkZXIiIHN0eWxlPSJjdXJzb3I6IHBvaW50ZXI7Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJ1cGxvYWQtaWNvbiIgc3R5bGU9InBvaW50ZXItZXZlbnRzOiBub25lOyI+CiAgICAgICAgICA8c3ZnIHdpZHRoPSI0OCIgaGVpZ2h0PSI0OCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjUiPgogICAgICAgICAgICA8cmVjdCB4PSIzIiB5PSIzIiB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHJ4PSIyIiByeT0iMiIvPgogICAgICAgICAgICA8Y2lyY2xlIGN4PSI4LjUiIGN5PSI4LjUiIHI9IjEuNSIvPgogICAgICAgICAgICA8cG9seWxpbmUgcG9pbnRzPSIyMSAxNSAxNiAxMCA1IDIxIi8+CiAgICAgICAgICA8L3N2Zz4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJ1cGxvYWQtdGV4dCIgc3R5bGU9InBvaW50ZXItZXZlbnRzOiBub25lOyI+Q2xpY2sgdG8gdXBsb2FkIGFuIGltYWdlPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0idXBsb2FkLWhpbnQiIHN0eWxlPSJwb2ludGVyLWV2ZW50czogbm9uZTsiPm9yIGRyYWcgYW5kIGRyb3A8L2Rpdj4KICAgICAgPC9kaXY+CiAgICBgfXJlbmRlckltYWdlKHQscil7cmV0dXJuYAogICAgICA8ZGl2IGNsYXNzPSJpbWFnZS1jb250YWluZXIiPgogICAgICAgIDxpbWcgc3JjPSIke3R9IiBhbHQ9IiR7dGhpcy5lc2NhcGVIdG1sKHIpfSIgLz4KICAgICAgPC9kaXY+CiAgICBgfXJlbmRlckxvYWRpbmcoKXtyZXR1cm5gCiAgICAgIDxkaXYgY2xhc3M9ImltYWdlLWxvYWRpbmciPgogICAgICAgIDxkaXYgY2xhc3M9ImxvYWRpbmctc3Bpbm5lciI+PC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ibG9hZGluZy10ZXh0Ij5VcGxvYWRpbmcgaW1hZ2UuLi48L2Rpdj4KICAgICAgPC9kaXY+CiAgICBgfXNldHVwKHQscixhKXtsZXQgaT10LnF1ZXJ5U2VsZWN0b3IoIi5pbWFnZS1ibG9jay1jb250YWluZXIiKSxvPXQucXVlcnlTZWxlY3RvcigiLmltYWdlLWZpbGUtaW5wdXQiKTtpZighaSl7Y29uc29sZS5lcnJvcigiSW1hZ2VCbG9ja0hhbmRsZXI6IENvdWxkIG5vdCBmaW5kIGNvbnRhaW5lciIpO3JldHVybn1pZighbyl7Y29uc29sZS5lcnJvcigiSW1hZ2VCbG9ja0hhbmRsZXI6IENvdWxkIG5vdCBmaW5kIGZpbGUgaW5wdXQiKTtyZXR1cm59bGV0IG49aS5xdWVyeVNlbGVjdG9yKCIuaW1hZ2UtdXBsb2FkLXBsYWNlaG9sZGVyIik7biYmbi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIscz0+e3MucHJldmVudERlZmF1bHQoKSxzLnN0b3BQcm9wYWdhdGlvbigpLGNvbnNvbGUubG9nKCJJbWFnZUJsb2NrSGFuZGxlcjogUGxhY2Vob2xkZXIgY2xpY2tlZCwgb3BlbmluZyBmaWxlIHNlbGVjdG9yIiksby5jbGljaygpfSksaS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKCk9PnthLm9uRm9jdXMoKX0pLG8uYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixhc3luYyBzPT57bGV0IGQ9cy50YXJnZXQuZmlsZXM/LlswXTtkJiYoY29uc29sZS5sb2coIkltYWdlQmxvY2tIYW5kbGVyOiBGaWxlIHNlbGVjdGVkOiIsZC5uYW1lKSxhd2FpdCB0aGlzLmhhbmRsZUZpbGVVcGxvYWQoZCxyLGEpKX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigiZHJhZ292ZXIiLHM9PntzLnByZXZlbnREZWZhdWx0KCkscy5zdG9wUHJvcGFnYXRpb24oKSxyLm1ldGFkYXRhPy51cmx8fGkuY2xhc3NMaXN0LmFkZCgiZHJhZy1vdmVyIil9KSxpLmFkZEV2ZW50TGlzdGVuZXIoImRyYWdsZWF2ZSIscz0+e3MucHJldmVudERlZmF1bHQoKSxzLnN0b3BQcm9wYWdhdGlvbigpLGkuY2xhc3NMaXN0LnJlbW92ZSgiZHJhZy1vdmVyIil9KSxpLmFkZEV2ZW50TGlzdGVuZXIoImRyb3AiLGFzeW5jIHM9PntzLnByZXZlbnREZWZhdWx0KCkscy5zdG9wUHJvcGFnYXRpb24oKSxpLmNsYXNzTGlzdC5yZW1vdmUoImRyYWctb3ZlciIpO2xldCBjPXMuZGF0YVRyYW5zZmVyPy5maWxlc1swXTtjJiZjLnR5cGUuc3RhcnRzV2l0aCgiaW1hZ2UvIikmJiFyLm1ldGFkYXRhPy51cmwmJmF3YWl0IHRoaXMuaGFuZGxlRmlsZVVwbG9hZChjLHIsYSl9KSxpLmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzIiwoKT0+YS5vbkZvY3VzKCkpLGkuYWRkRXZlbnRMaXN0ZW5lcigiYmx1ciIsKCk9PmEub25CbHVyKCkpLGkuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIscz0+e2lmKChzLmtleT09PSJEZWxldGUifHxzLmtleT09PSJCYWNrc3BhY2UiKSYmci5tZXRhZGF0YT8udXJsKXtyLm1ldGFkYXRhLnVybD12b2lkIDAsci5tZXRhZGF0YS5sb2FkaW5nPSExLHIuY29udGVudD0iIixhLm9uSW5wdXQobmV3IElucHV0RXZlbnQoImlucHV0IikpO3JldHVybn1hLm9uS2V5RG93bihzKX0pfWFzeW5jIGhhbmRsZUZpbGVVcGxvYWQodCxyLGEpe2lmKGNvbnNvbGUubG9nKCJJbWFnZUJsb2NrSGFuZGxlcjogU3RhcnRpbmcgZmlsZSB1cGxvYWQiLHtmaWxlTmFtZTp0Lm5hbWUsZmlsZVNpemU6dC5zaXplLGJsb2NrSWQ6ci5pZH0pLCF0LnR5cGUuc3RhcnRzV2l0aCgiaW1hZ2UvIikpe2NvbnNvbGUuZXJyb3IoIkludmFsaWQgZmlsZSB0eXBlOiIsdC50eXBlKTtyZXR1cm59bGV0IGk9MTAqMTAyNCoxMDI0O2lmKHQuc2l6ZT5pKXtjb25zb2xlLmVycm9yKCJGaWxlIHRvbyBsYXJnZS4gTWF4aW11bSBzaXplIGlzIDEwTUIiKTtyZXR1cm59ci5tZXRhZGF0YXx8KHIubWV0YWRhdGE9e30pLHIubWV0YWRhdGEubG9hZGluZz0hMCxyLm1ldGFkYXRhLmZpbGVOYW1lPXQubmFtZSxyLm1ldGFkYXRhLmZpbGVTaXplPXQuc2l6ZSxyLm1ldGFkYXRhLm1pbWVUeXBlPXQudHlwZSxjb25zb2xlLmxvZygiSW1hZ2VCbG9ja0hhbmRsZXI6IFNldCBsb2FkaW5nIHN0YXRlLCByZXF1ZXN0aW5nIHVwZGF0ZSIpLGEub25SZXF1ZXN0VXBkYXRlPy4oKTt0cnl7bGV0IG89YXdhaXQgdGhpcy5maWxlVG9EYXRhVXJsKHQpO3IubWV0YWRhdGEudXJsPW8sci5tZXRhZGF0YS5sb2FkaW5nPSExO2xldCBuPXQubmFtZS5yZXBsYWNlKC9cLlteLy5dKyQvLCIiKTtyLmNvbnRlbnQ9bixjb25zb2xlLmxvZygiSW1hZ2VCbG9ja0hhbmRsZXI6IFVwbG9hZCBjb21wbGV0ZSwgcmVxdWVzdGluZyB1cGRhdGUiLHtoYXNVcmw6ISFyLm1ldGFkYXRhLnVybCx1cmxMZW5ndGg6by5sZW5ndGgsYWx0VGV4dDpyLmNvbnRlbnR9KSxhLm9uUmVxdWVzdFVwZGF0ZT8uKCl9Y2F0Y2gobyl7Y29uc29sZS5lcnJvcigiRmFpbGVkIHRvIHVwbG9hZCBpbWFnZToiLG8pLHIubWV0YWRhdGEubG9hZGluZz0hMSxhLm9uUmVxdWVzdFVwZGF0ZT8uKCl9fWZpbGVUb0RhdGFVcmwodCl7cmV0dXJuIG5ldyBQcm9taXNlKChyLGEpPT57bGV0IGk9bmV3IEZpbGVSZWFkZXI7aS5vbmxvYWQ9bz0+e2xldCBuPW8udGFyZ2V0Py5yZXN1bHQ7dHlwZW9mIG49PSJzdHJpbmciP3Iobik6YShuZXcgRXJyb3IoIkZhaWxlZCB0byByZWFkIGZpbGUiKSl9LGkub25lcnJvcj1hLGkucmVhZEFzRGF0YVVSTCh0KX0pfWVzY2FwZUh0bWwodCl7bGV0IHI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7cmV0dXJuIHIudGV4dENvbnRlbnQ9dCxyLmlubmVySFRNTH1nZXRDb250ZW50KHQpe3JldHVybiB0aGlzLmdldEJsb2NrRnJvbUVsZW1lbnQodCk/LmNvbnRlbnR8fCIifXNldENvbnRlbnQodCxyKXtsZXQgYT10aGlzLmdldEJsb2NrRnJvbUVsZW1lbnQodCk7YSYmKGEuY29udGVudD1yKX1nZXRCbG9ja0Zyb21FbGVtZW50KHQpe2xldCBhPXQucXVlcnlTZWxlY3RvcigiLmltYWdlLWJsb2NrLWNvbnRhaW5lciIpPy5nZXRBdHRyaWJ1dGUoImRhdGEtYmxvY2staWQiKTtyZXR1cm4gYT97aWQ6YSx0eXBlOiJpbWFnZSIsY29udGVudDoiIixtZXRhZGF0YTp7fX06bnVsbH1nZXRDdXJzb3JQb3NpdGlvbih0KXtyZXR1cm4gbnVsbH1zZXRDdXJzb3JUb1N0YXJ0KHQpe3RoaXMuZm9jdXModCl9c2V0Q3Vyc29yVG9FbmQodCl7dGhpcy5mb2N1cyh0KX1mb2N1cyh0KXt0LnF1ZXJ5U2VsZWN0b3IoIi5pbWFnZS1ibG9jay1jb250YWluZXIiKT8uZm9jdXMoKX1mb2N1c1dpdGhDdXJzb3IodCxyPSJlbmQiKXt0aGlzLmZvY3VzKHQpfWdldFNwbGl0Q29udGVudCh0KXtyZXR1cm4gbnVsbH1nZXRTdHlsZXMoKXtyZXR1cm5gCiAgICAgIC8qIEltYWdlIEJsb2NrIENvbnRhaW5lciAqLwogICAgICAuaW1hZ2UtYmxvY2stY29udGFpbmVyIHsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgbWFyZ2luOiAxMnB4IDA7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgICAgb3V0bGluZTogbm9uZTsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgIH0KICAgICAgCiAgICAgIC5pbWFnZS1ibG9jay1jb250YWluZXIuc2VsZWN0ZWQgewogICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDJweCAke20uYmRUaGVtZSgiIzYzNjZmMSIsIiM4MThjZjgiKX07CiAgICAgIH0KICAgICAgCiAgICAgIC8qIFVwbG9hZCBQbGFjZWhvbGRlciAqLwogICAgICAuaW1hZ2UtdXBsb2FkLXBsYWNlaG9sZGVyIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICBwYWRkaW5nOiA0OHB4IDI0cHg7CiAgICAgICAgYm9yZGVyOiAycHggZGFzaGVkICR7bS5iZFRoZW1lKCIjZTVlN2ViIiwiIzM3NDE1MSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmYWZhZmEiLCIjMGEwYTBhIil9OwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICB9CiAgICAgIAogICAgICAuaW1hZ2UtYmxvY2stY29udGFpbmVyOmhvdmVyIC5pbWFnZS11cGxvYWQtcGxhY2Vob2xkZXIgewogICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoIiM5Y2EzYWYiLCIjNmI3MjgwIil9OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjlmYWZiIiwiIzExMTgyNyIpfTsKICAgICAgfQogICAgICAKICAgICAgLmltYWdlLWJsb2NrLWNvbnRhaW5lci5kcmFnLW92ZXIgLmltYWdlLXVwbG9hZC1wbGFjZWhvbGRlciB7CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiIzYzNjZmMSIsIiM4MThjZjgiKX07CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNlZmY2ZmYiLCIjMWUxYjRiIil9OwogICAgICB9CiAgICAgIAogICAgICAudXBsb2FkLWljb24gewogICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjOWNhM2FmIiwiIzRiNTU2MyIpfTsKICAgICAgfQogICAgICAKICAgICAgLnVwbG9hZC10ZXh0IHsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMzNzQxNTEiLCIjZTVlN2ViIil9OwogICAgICAgIG1hcmdpbi1ib3R0b206IDRweDsKICAgICAgfQogICAgICAKICAgICAgLnVwbG9hZC1oaW50IHsKICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjOWNhM2FmIiwiIzZiNzI4MCIpfTsKICAgICAgfQogICAgICAKICAgICAgLyogSW1hZ2UgQ29udGFpbmVyICovCiAgICAgIC5pbWFnZS1jb250YWluZXIgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBtaW4taGVpZ2h0OiAyMDBweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2Y5ZmFmYiIsIiMxMTE4MjciKX07CiAgICAgIH0KICAgICAgCiAgICAgIC5pbWFnZS1jb250YWluZXIgaW1nIHsKICAgICAgICBtYXgtd2lkdGg6IDEwMCU7CiAgICAgICAgaGVpZ2h0OiBhdXRvOwogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgfQogICAgICAKICAgICAgLyogTG9hZGluZyBTdGF0ZSAqLwogICAgICAuaW1hZ2UtbG9hZGluZyB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgcGFkZGluZzogNDhweCAyNHB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZmFmYWZhIiwiIzBhMGEwYSIpfTsKICAgICAgfQogICAgICAKICAgICAgLmxvYWRpbmctc3Bpbm5lciB7CiAgICAgICAgd2lkdGg6IDMycHg7CiAgICAgICAgaGVpZ2h0OiAzMnB4OwogICAgICAgIGJvcmRlcjogM3B4IHNvbGlkICR7bS5iZFRoZW1lKCIjZTVlN2ViIiwiIzM3NDE1MSIpfTsKICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAke20uYmRUaGVtZSgiIzYzNjZmMSIsIiM4MThjZjgiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgICAgIGFuaW1hdGlvbjogc3BpbiAwLjhzIGxpbmVhciBpbmZpbml0ZTsKICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4OwogICAgICB9CiAgICAgIAogICAgICBAa2V5ZnJhbWVzIHNwaW4gewogICAgICAgIHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfQogICAgICB9CiAgICAgIAogICAgICAubG9hZGluZy10ZXh0IHsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNmI3MjgwIiwiIzljYTNhZiIpfTsKICAgICAgfQogICAgICAKICAgICAgLyogRmlsZSBpbnB1dCBoaWRkZW4gKi8KICAgICAgLmltYWdlLWZpbGUtaW5wdXQgewogICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsKICAgICAgfQogICAgYH19fSk7dmFyIE1aLE8kcj1sKCgpPT57Y24oKTtTZSgpO01aPWNsYXNzIGV4dGVuZHMgX2F7dHlwZT0ieW91dHViZSI7cmVuZGVyKHQscil7bGV0IGE9dC5tZXRhZGF0YT8udmlkZW9JZCxpPXQubWV0YWRhdGE/LnVybHx8IiI7cmV0dXJuYAogICAgICA8ZGl2IGNsYXNzPSJ5b3V0dWJlLWJsb2NrLWNvbnRhaW5lciR7cj8iIHNlbGVjdGVkIjoiIn0iIAogICAgICAgICAgIGRhdGEtYmxvY2staWQ9IiR7dC5pZH0iCiAgICAgICAgICAgZGF0YS1oYXMtdmlkZW89IiR7ISFhfSI+CiAgICAgICAgJHthP3RoaXMucmVuZGVyVmlkZW8oYSk6dGhpcy5yZW5kZXJQbGFjZWhvbGRlcihpKX0KICAgICAgPC9kaXY+CiAgICBgfXJlbmRlclBsYWNlaG9sZGVyKHQpe3JldHVybmAKICAgICAgPGRpdiBjbGFzcz0ieW91dHViZS1wbGFjZWhvbGRlciI+CiAgICAgICAgPGRpdiBjbGFzcz0icGxhY2Vob2xkZXItaWNvbiI+CiAgICAgICAgICA8c3ZnIHdpZHRoPSI0OCIgaGVpZ2h0PSI0OCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJjdXJyZW50Q29sb3IiPgogICAgICAgICAgICA8cGF0aCBkPSJNMTkuNjE1IDMuMTg0Yy0zLjYwNC0uMjQ2LTExLjYzMS0uMjQ1LTE1LjIzIDAtMy44OTcuMjY2LTQuMzU2IDIuNjItNC4zODUgOC44MTYuMDI5IDYuMTg1LjQ4NCA4LjU0OSA0LjM4NSA4LjgxNiAzLjYuMjQ1IDExLjYyNi4yNDYgMTUuMjMgMCAzLjg5Ny0uMjY2IDQuMzU2LTIuNjIgNC4zODUtOC44MTYtLjAyOS02LjE4NS0uNDg0LTguNTQ5LTQuMzg1LTguODE2em0tMTAuNjE1IDEyLjgxNnYtOGw4IDMuOTkzLTggNC4wMDd6Ii8+CiAgICAgICAgICA8L3N2Zz4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJwbGFjZWhvbGRlci10ZXh0Ij5FbnRlciBZb3VUdWJlIFVSTDwvZGl2PgogICAgICAgIDxpbnB1dCB0eXBlPSJ1cmwiIAogICAgICAgICAgICAgICBjbGFzcz0ieW91dHViZS11cmwtaW5wdXQiIAogICAgICAgICAgICAgICBwbGFjZWhvbGRlcj0iaHR0cHM6Ly95b3V0dWJlLmNvbS93YXRjaD92PS4uLiIgCiAgICAgICAgICAgICAgIHZhbHVlPSIke3RoaXMuZXNjYXBlSHRtbCh0KX0iIC8+CiAgICAgICAgPGJ1dHRvbiBjbGFzcz0ieW91dHViZS1lbWJlZC1idG4iPkVtYmVkIFZpZGVvPC9idXR0b24+CiAgICAgIDwvZGl2PgogICAgYH1yZW5kZXJWaWRlbyh0KXtyZXR1cm5gCiAgICAgIDxkaXYgY2xhc3M9InlvdXR1YmUtY29udGFpbmVyIj4KICAgICAgICA8aWZyYW1lIAogICAgICAgICAgc3JjPSJodHRwczovL3d3dy55b3V0dWJlLmNvbS9lbWJlZC8ke3R9IgogICAgICAgICAgZnJhbWVib3JkZXI9IjAiCiAgICAgICAgICBhbGxvdz0iYWNjZWxlcm9tZXRlcjsgYXV0b3BsYXk7IGNsaXBib2FyZC13cml0ZTsgZW5jcnlwdGVkLW1lZGlhOyBneXJvc2NvcGU7IHBpY3R1cmUtaW4tcGljdHVyZSIKICAgICAgICAgIGFsbG93ZnVsbHNjcmVlbgogICAgICAgID48L2lmcmFtZT4KICAgICAgPC9kaXY+CiAgICBgfXNldHVwKHQscixhKXtsZXQgaT10LnF1ZXJ5U2VsZWN0b3IoIi55b3V0dWJlLWJsb2NrLWNvbnRhaW5lciIpO2lmKCFpKXJldHVybjtpZihyLm1ldGFkYXRhPy52aWRlb0lkKXtpLnNldEF0dHJpYnV0ZSgidGFiaW5kZXgiLCIwIiksaS5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsKCk9PmEub25Gb2N1cygpKSxpLmFkZEV2ZW50TGlzdGVuZXIoImJsdXIiLCgpPT5hLm9uQmx1cigpKSxpLmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLHM9Pnsocy5rZXk9PT0iRGVsZXRlInx8cy5rZXk9PT0iQmFja3NwYWNlIikmJnMucHJldmVudERlZmF1bHQoKSxhLm9uS2V5RG93bihzKX0pO3JldHVybn1sZXQgbz10LnF1ZXJ5U2VsZWN0b3IoIi55b3V0dWJlLXVybC1pbnB1dCIpLG49dC5xdWVyeVNlbGVjdG9yKCIueW91dHViZS1lbWJlZC1idG4iKTshb3x8IW58fChvLmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzIiwoKT0+YS5vbkZvY3VzKCkpLG8uYWRkRXZlbnRMaXN0ZW5lcigiYmx1ciIsKCk9PmEub25CbHVyKCkpLG4uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCgpPT57dGhpcy5lbWJlZFZpZGVvKG8udmFsdWUscixhKX0pLG8uYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIscz0+e3Mua2V5PT09IkVudGVyIj8ocy5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuZW1iZWRWaWRlbyhvLnZhbHVlLHIsYSkpOnMua2V5PT09IkVzY2FwZSImJihzLnByZXZlbnREZWZhdWx0KCksby5ibHVyKCkpfSksby5hZGRFdmVudExpc3RlbmVyKCJwYXN0ZSIscz0+e3NldFRpbWVvdXQoKCk9PntsZXQgYz1vLnZhbHVlO3RoaXMuZXh0cmFjdFlvdVR1YmVWaWRlb0lkKGMpJiZ0aGlzLmVtYmVkVmlkZW8oYyxyLGEpfSwwKX0pLG8uYWRkRXZlbnRMaXN0ZW5lcigiaW5wdXQiLCgpPT57ci5tZXRhZGF0YXx8KHIubWV0YWRhdGE9e30pLHIubWV0YWRhdGEudXJsPW8udmFsdWV9KSl9ZW1iZWRWaWRlbyh0LHIsYSl7bGV0IGk9dGhpcy5leHRyYWN0WW91VHViZVZpZGVvSWQodCk7aWYoIWkpe2NvbnNvbGUuZXJyb3IoIkludmFsaWQgWW91VHViZSBVUkwiKTtyZXR1cm59ci5tZXRhZGF0YXx8KHIubWV0YWRhdGE9e30pLHIubWV0YWRhdGEudmlkZW9JZD1pLHIubWV0YWRhdGEudXJsPXQsci5jb250ZW50PWBZb3VUdWJlIFZpZGVvOiAke2l9YCxhLm9uUmVxdWVzdFVwZGF0ZT8uKCl9ZXh0cmFjdFlvdVR1YmVWaWRlb0lkKHQpe2xldCByPVsvKD86eW91dHViZVwuY29tXC8oPzpbXlwvXStcLy4rXC98KD86dnxlKD86bWJlZCk/KVwvfC4qWz8mXXY9KXx5b3V0dVwuYmVcLykoW14iJj9cLyBdezExfSkvLC95b3V0dWJlXC5jb21cL2VtYmVkXC8oW14iJj9cLyBdezExfSkvLC95b3V0dWJlXC5jb21cL3dhdGNoXD92PShbXiImP1wvIF17MTF9KS8sL3lvdXR1XC5iZVwvKFteIiY/XC8gXXsxMX0pL107Zm9yKGxldCBhIG9mIHIpe2xldCBpPXQubWF0Y2goYSk7aWYoaSlyZXR1cm4gaVsxXX1yZXR1cm4gbnVsbH1lc2NhcGVIdG1sKHQpe2xldCByPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3JldHVybiByLnRleHRDb250ZW50PXQsci5pbm5lckhUTUx9Z2V0Q29udGVudCh0KXtyZXR1cm4gdGhpcy5nZXRCbG9ja0Zyb21FbGVtZW50KHQpPy5jb250ZW50fHwiIn1zZXRDb250ZW50KHQscil7bGV0IGE9dGhpcy5nZXRCbG9ja0Zyb21FbGVtZW50KHQpO2EmJihhLmNvbnRlbnQ9cil9Z2V0QmxvY2tGcm9tRWxlbWVudCh0KXtsZXQgYT10LnF1ZXJ5U2VsZWN0b3IoIi55b3V0dWJlLWJsb2NrLWNvbnRhaW5lciIpPy5nZXRBdHRyaWJ1dGUoImRhdGEtYmxvY2staWQiKTtyZXR1cm4gYT97aWQ6YSx0eXBlOiJ5b3V0dWJlIixjb250ZW50OiIiLG1ldGFkYXRhOnt9fTpudWxsfWdldEN1cnNvclBvc2l0aW9uKHQpe3JldHVybiBudWxsfXNldEN1cnNvclRvU3RhcnQodCl7dGhpcy5mb2N1cyh0KX1zZXRDdXJzb3JUb0VuZCh0KXt0aGlzLmZvY3VzKHQpfWZvY3VzKHQpe2xldCByPXQucXVlcnlTZWxlY3RvcigiLnlvdXR1YmUtYmxvY2stY29udGFpbmVyIiksYT10LnF1ZXJ5U2VsZWN0b3IoIi55b3V0dWJlLXVybC1pbnB1dCIpO2E/YS5mb2N1cygpOnImJnIuZm9jdXMoKX1mb2N1c1dpdGhDdXJzb3IodCxyPSJlbmQiKXt0aGlzLmZvY3VzKHQpfWdldFNwbGl0Q29udGVudCh0KXtyZXR1cm4gbnVsbH1nZXRTdHlsZXMoKXtyZXR1cm5gCiAgICAgIC8qIFlvdVR1YmUgQmxvY2sgQ29udGFpbmVyICovCiAgICAgIC55b3V0dWJlLWJsb2NrLWNvbnRhaW5lciB7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIG1hcmdpbjogMTJweCAwOwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICAgIG91dGxpbmU6IG5vbmU7CiAgICAgIH0KICAgICAgCiAgICAgIC55b3V0dWJlLWJsb2NrLWNvbnRhaW5lci5zZWxlY3RlZCB7CiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICR7bS5iZFRoZW1lKCIjNjM2NmYxIiwiIzgxOGNmOCIpfTsKICAgICAgfQogICAgICAKICAgICAgLyogWW91VHViZSBQbGFjZWhvbGRlciAqLwogICAgICAueW91dHViZS1wbGFjZWhvbGRlciB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgcGFkZGluZzogMzJweCAyNHB4OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZTVlN2ViIiwiIzM3NDE1MSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmYWZhZmEiLCIjMGEwYTBhIil9OwogICAgICAgIGdhcDogMTJweDsKICAgICAgfQogICAgICAKICAgICAgLnBsYWNlaG9sZGVyLWljb24gewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiI2RjMjYyNiIsIiNlZjQ0NDQiKX07CiAgICAgICAgb3BhY2l0eTogMC44OwogICAgICB9CiAgICAgIAogICAgICAucGxhY2Vob2xkZXItdGV4dCB7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMzc0MTUxIiwiI2U1ZTdlYiIpfTsKICAgICAgfQogICAgICAKICAgICAgLnlvdXR1YmUtdXJsLWlucHV0IHsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBtYXgtd2lkdGg6IDQwMHB4OwogICAgICAgIHBhZGRpbmc6IDhweCAxMnB4OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZTVlN2ViIiwiIzM3NDE1MSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmZmZmZmYiLCIjMTExODI3Iil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzExMTgyNyIsIiNmOWZhZmIiKX07CiAgICAgICAgZm9udC1zaXplOiAxM3B4OwogICAgICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsICdTZWdvZSBVSScsIHNhbnMtc2VyaWY7CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgICAgb3V0bGluZTogbm9uZTsKICAgICAgfQogICAgICAKICAgICAgLnlvdXR1YmUtdXJsLWlucHV0OmZvY3VzIHsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCIjNmI3MjgwIiwiIzljYTNhZiIpfTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2ZmZmZmZiIsIiMxZjI5MzciKX07CiAgICAgIH0KICAgICAgCiAgICAgIC55b3V0dWJlLXVybC1pbnB1dDo6cGxhY2Vob2xkZXIgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzljYTNhZiIsIiM0YjU1NjMiKX07CiAgICAgIH0KICAgICAgCiAgICAgIC55b3V0dWJlLWVtYmVkLWJ0biB7CiAgICAgICAgcGFkZGluZzogNnB4IDE2cHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiMxMTE4MjciLCIjZjlmYWZiIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiI2Y5ZmFmYiIsIiMxMTE4MjciKX07CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsICdTZWdvZSBVSScsIHNhbnMtc2VyaWY7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICAgIG91dGxpbmU6IG5vbmU7CiAgICAgIH0KICAgICAgCiAgICAgIC55b3V0dWJlLWVtYmVkLWJ0bjpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiMzNzQxNTEiLCIjZTVlN2ViIil9OwogICAgICB9CiAgICAgIAogICAgICAueW91dHViZS1lbWJlZC1idG46YWN0aXZlIHsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOTgpOwogICAgICB9CiAgICAgIAogICAgICAvKiBZb3VUdWJlIENvbnRhaW5lciAqLwogICAgICAueW91dHViZS1jb250YWluZXIgewogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlOyAvKiAxNjo5IGFzcGVjdCByYXRpbyAqLwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjMDAwMDAwIiwiIzAwMDAwMCIpfTsKICAgICAgfQogICAgICAKICAgICAgLnlvdXR1YmUtY29udGFpbmVyIGlmcmFtZSB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHRvcDogMDsKICAgICAgICBsZWZ0OiAwOwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICBib3JkZXI6IDA7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICB9CiAgICBgfX19KTt2YXIga1osUiRyPWwoKCk9PntjbigpO1NlKCk7a1o9Y2xhc3MgZXh0ZW5kcyBfYXt0eXBlPSJhdHRhY2htZW50IjtyZW5kZXIodCxyKXtsZXQgYT10Lm1ldGFkYXRhPy5maWxlc3x8W107cmV0dXJuYAogICAgICA8ZGl2IGNsYXNzPSJhdHRhY2htZW50LWJsb2NrLWNvbnRhaW5lciR7cj8iIHNlbGVjdGVkIjoiIn0iIAogICAgICAgICAgIGRhdGEtYmxvY2staWQ9IiR7dC5pZH0iCiAgICAgICAgICAgdGFiaW5kZXg9IjAiPgogICAgICAgIDxkaXYgY2xhc3M9ImF0dGFjaG1lbnQtaGVhZGVyIj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImF0dGFjaG1lbnQtaWNvbiI+XHV7MUY0Q0V9PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJhdHRhY2htZW50LXRpdGxlIj5GaWxlIEF0dGFjaG1lbnRzPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iYXR0YWNobWVudC1saXN0Ij4KICAgICAgICAgICR7YS5sZW5ndGg+MD90aGlzLnJlbmRlckZpbGVzKGEpOnRoaXMucmVuZGVyUGxhY2Vob2xkZXIoKX0KICAgICAgICA8L2Rpdj4KICAgICAgICA8aW5wdXQgdHlwZT0iZmlsZSIgCiAgICAgICAgICAgICAgIGNsYXNzPSJhdHRhY2htZW50LWZpbGUtaW5wdXQiIAogICAgICAgICAgICAgICBtdWx0aXBsZSAKICAgICAgICAgICAgICAgc3R5bGU9ImRpc3BsYXk6IG5vbmU7IiAvPgogICAgICAgICR7YS5sZW5ndGg+MD8nPGJ1dHRvbiBjbGFzcz0iYWRkLW1vcmUtZmlsZXMiPkFkZCBNb3JlIEZpbGVzPC9idXR0b24+JzoiIn0KICAgICAgPC9kaXY+CiAgICBgfXJlbmRlclBsYWNlaG9sZGVyKCl7cmV0dXJuYAogICAgICA8ZGl2IGNsYXNzPSJhdHRhY2htZW50LXBsYWNlaG9sZGVyIj4KICAgICAgICA8ZGl2IGNsYXNzPSJwbGFjZWhvbGRlci10ZXh0Ij5DbGljayB0byBhZGQgZmlsZXM8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJwbGFjZWhvbGRlci1oaW50Ij5vciBkcmFnIGFuZCBkcm9wPC9kaXY+CiAgICAgIDwvZGl2PgogICAgYH1yZW5kZXJGaWxlcyh0KXtyZXR1cm4gdC5tYXAocj0+YAogICAgICA8ZGl2IGNsYXNzPSJhdHRhY2htZW50LWl0ZW0iIGRhdGEtZmlsZS1pZD0iJHtyLmlkfSI+CiAgICAgICAgPGRpdiBjbGFzcz0iZmlsZS1pY29uIj4ke3RoaXMuZ2V0RmlsZUljb24oci50eXBlKX08L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJmaWxlLWluZm8iPgogICAgICAgICAgPGRpdiBjbGFzcz0iZmlsZS1uYW1lIj4ke3RoaXMuZXNjYXBlSHRtbChyLm5hbWUpfTwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0iZmlsZS1zaXplIj4ke3RoaXMuZm9ybWF0RmlsZVNpemUoci5zaXplKX08L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YnV0dG9uIGNsYXNzPSJyZW1vdmUtZmlsZSIgZGF0YS1maWxlLWlkPSIke3IuaWR9Ij5ceEQ3PC9idXR0b24+CiAgICAgIDwvZGl2PgogICAgYCkuam9pbigiIil9c2V0dXAodCxyLGEpe2xldCBpPXQucXVlcnlTZWxlY3RvcigiLmF0dGFjaG1lbnQtYmxvY2stY29udGFpbmVyIiksbz10LnF1ZXJ5U2VsZWN0b3IoIi5hdHRhY2htZW50LWZpbGUtaW5wdXQiKTtpZighaXx8IW8pe2NvbnNvbGUuZXJyb3IoIkF0dGFjaG1lbnRCbG9ja0hhbmRsZXI6IENvdWxkIG5vdCBmaW5kIHJlcXVpcmVkIGVsZW1lbnRzIik7cmV0dXJufXIubWV0YWRhdGF8fChyLm1ldGFkYXRhPXt9KSxyLm1ldGFkYXRhLmZpbGVzfHwoci5tZXRhZGF0YS5maWxlcz1bXSk7bGV0IG49aS5xdWVyeVNlbGVjdG9yKCIuYXR0YWNobWVudC1wbGFjZWhvbGRlciIpO24mJm4uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGM9PntjLnByZXZlbnREZWZhdWx0KCksYy5zdG9wUHJvcGFnYXRpb24oKSxvLmNsaWNrKCl9KTtsZXQgcz1pLnF1ZXJ5U2VsZWN0b3IoIi5hZGQtbW9yZS1maWxlcyIpO3MmJnMuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGM9PntjLnByZXZlbnREZWZhdWx0KCksYy5zdG9wUHJvcGFnYXRpb24oKSxvLmNsaWNrKCl9KSxvLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsYXN5bmMgYz0+e2xldCBkPWMudGFyZ2V0LGY9ZC5maWxlcztmJiZmLmxlbmd0aD4wJiYoYXdhaXQgdGhpcy5oYW5kbGVGaWxlQXR0YWNobWVudHMoZixyLGEpLGQudmFsdWU9IiIpfSksaS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsYz0+e2xldCBkPWMudGFyZ2V0O2lmKGQuY2xhc3NMaXN0LmNvbnRhaW5zKCJyZW1vdmUtZmlsZSIpKXtjLnByZXZlbnREZWZhdWx0KCksYy5zdG9wUHJvcGFnYXRpb24oKTtsZXQgZj1kLmdldEF0dHJpYnV0ZSgiZGF0YS1maWxlLWlkIik7ZiYmdGhpcy5yZW1vdmVGaWxlKGYscixhKX19KSxpLmFkZEV2ZW50TGlzdGVuZXIoImRyYWdvdmVyIixjPT57Yy5wcmV2ZW50RGVmYXVsdCgpLGMuc3RvcFByb3BhZ2F0aW9uKCksaS5jbGFzc0xpc3QuYWRkKCJkcmFnLW92ZXIiKX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigiZHJhZ2xlYXZlIixjPT57Yy5wcmV2ZW50RGVmYXVsdCgpLGMuc3RvcFByb3BhZ2F0aW9uKCksaS5jbGFzc0xpc3QucmVtb3ZlKCJkcmFnLW92ZXIiKX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigiZHJvcCIsYXN5bmMgYz0+e2MucHJldmVudERlZmF1bHQoKSxjLnN0b3BQcm9wYWdhdGlvbigpLGkuY2xhc3NMaXN0LnJlbW92ZSgiZHJhZy1vdmVyIik7bGV0IGQ9Yy5kYXRhVHJhbnNmZXI/LmZpbGVzO2QmJmQubGVuZ3RoPjAmJmF3YWl0IHRoaXMuaGFuZGxlRmlsZUF0dGFjaG1lbnRzKGQscixhKX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXMiLCgpPT5hLm9uRm9jdXMoKSksaS5hZGRFdmVudExpc3RlbmVyKCJibHVyIiwoKT0+YS5vbkJsdXIoKSksaS5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixjPT57aWYoKGMua2V5PT09IkRlbGV0ZSJ8fGMua2V5PT09IkJhY2tzcGFjZSIpJiZkb2N1bWVudC5hY3RpdmVFbGVtZW50PT09aSYmci5tZXRhZGF0YT8uZmlsZXM/Lmxlbmd0aD4wKXtjLnByZXZlbnREZWZhdWx0KCksci5tZXRhZGF0YS5maWxlcz1bXSxhLm9uUmVxdWVzdFVwZGF0ZT8uKCk7cmV0dXJufWEub25LZXlEb3duKGMpfSl9YXN5bmMgaGFuZGxlRmlsZUF0dGFjaG1lbnRzKHQscixhKXtyLm1ldGFkYXRhfHwoci5tZXRhZGF0YT17fSksci5tZXRhZGF0YS5maWxlc3x8KHIubWV0YWRhdGEuZmlsZXM9W10pO2ZvcihsZXQgaSBvZiBBcnJheS5mcm9tKHQpKXRyeXtsZXQgbz1hd2FpdCB0aGlzLmZpbGVUb0RhdGFVcmwoaSksbj17aWQ6dGhpcy5nZW5lcmF0ZUlkKCksbmFtZTppLm5hbWUsc2l6ZTppLnNpemUsdHlwZTppLnR5cGUsZGF0YTpvfTtyLm1ldGFkYXRhLmZpbGVzLnB1c2gobil9Y2F0Y2gobyl7Y29uc29sZS5lcnJvcigiRmFpbGVkIHRvIGF0dGFjaCBmaWxlOiIsaS5uYW1lLG8pfXIuY29udGVudD1gJHtyLm1ldGFkYXRhLmZpbGVzLmxlbmd0aH0gZmlsZSR7ci5tZXRhZGF0YS5maWxlcy5sZW5ndGghPT0xPyJzIjoiIn0gYXR0YWNoZWRgLGEub25SZXF1ZXN0VXBkYXRlPy4oKX1yZW1vdmVGaWxlKHQscixhKXtyLm1ldGFkYXRhPy5maWxlcyYmKHIubWV0YWRhdGEuZmlsZXM9ci5tZXRhZGF0YS5maWxlcy5maWx0ZXIoaT0+aS5pZCE9PXQpLHIuY29udGVudD1yLm1ldGFkYXRhLmZpbGVzLmxlbmd0aD4wP2Ake3IubWV0YWRhdGEuZmlsZXMubGVuZ3RofSBmaWxlJHtyLm1ldGFkYXRhLmZpbGVzLmxlbmd0aCE9PTE/InMiOiIifSBhdHRhY2hlZGA6IiIsYS5vblJlcXVlc3RVcGRhdGU/LigpKX1maWxlVG9EYXRhVXJsKHQpe3JldHVybiBuZXcgUHJvbWlzZSgocixhKT0+e2xldCBpPW5ldyBGaWxlUmVhZGVyO2kub25sb2FkPW89PntsZXQgbj1vLnRhcmdldD8ucmVzdWx0O3R5cGVvZiBuPT0ic3RyaW5nIj9yKG4pOmEobmV3IEVycm9yKCJGYWlsZWQgdG8gcmVhZCBmaWxlIikpfSxpLm9uZXJyb3I9YSxpLnJlYWRBc0RhdGFVUkwodCl9KX1nZXRGaWxlSWNvbih0KXtyZXR1cm4gdC5zdGFydHNXaXRoKCJpbWFnZS8iKT8iXHV7MUY1QkN9XHVGRTBGIjp0LnN0YXJ0c1dpdGgoInZpZGVvLyIpPyJcdXsxRjNBNX0iOnQuc3RhcnRzV2l0aCgiYXVkaW8vIik/Ilx1ezFGM0I1fSI6dC5pbmNsdWRlcygicGRmIik/Ilx1ezFGNEM0fSI6dC5pbmNsdWRlcygiemlwIil8fHQuaW5jbHVkZXMoInJhciIpfHx0LmluY2x1ZGVzKCJ0YXIiKT8iXHV7MUY1QzR9XHVGRTBGIjp0LmluY2x1ZGVzKCJzaGVldCIpPyJcdXsxRjRDQX0iOnQuaW5jbHVkZXMoImRvY3VtZW50Iil8fHQuaW5jbHVkZXMoIm1zd29yZCIpPyJcdXsxRjRERH0iOnQuaW5jbHVkZXMoInByZXNlbnRhdGlvbiIpPyJcdXsxRjRDQn0iOnQuaW5jbHVkZXMoInRleHQiKT8iXHV7MUY0QzN9IjoiXHV7MUY0QzF9In1mb3JtYXRGaWxlU2l6ZSh0KXtpZih0PT09MClyZXR1cm4iMCBCeXRlcyI7bGV0IHI9MTAyNCxhPVsiQnl0ZXMiLCJLQiIsIk1CIiwiR0IiXSxpPU1hdGguZmxvb3IoTWF0aC5sb2codCkvTWF0aC5sb2cocikpO3JldHVybiBwYXJzZUZsb2F0KCh0L01hdGgucG93KHIsaSkpLnRvRml4ZWQoMikpKyIgIithW2ldfWdlbmVyYXRlSWQoKXtyZXR1cm5gZmlsZS0ke0RhdGUubm93KCl9LSR7TWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc3Vic3RyKDIsOSl9YH1lc2NhcGVIdG1sKHQpe2xldCByPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3JldHVybiByLnRleHRDb250ZW50PXQsci5pbm5lckhUTUx9Z2V0Q29udGVudCh0KXtyZXR1cm4gdGhpcy5nZXRCbG9ja0Zyb21FbGVtZW50KHQpPy5jb250ZW50fHwiIn1zZXRDb250ZW50KHQscil7bGV0IGE9dGhpcy5nZXRCbG9ja0Zyb21FbGVtZW50KHQpO2EmJihhLmNvbnRlbnQ9cil9Z2V0QmxvY2tGcm9tRWxlbWVudCh0KXtsZXQgYT10LnF1ZXJ5U2VsZWN0b3IoIi5hdHRhY2htZW50LWJsb2NrLWNvbnRhaW5lciIpPy5nZXRBdHRyaWJ1dGUoImRhdGEtYmxvY2staWQiKTtyZXR1cm4gYT97aWQ6YSx0eXBlOiJhdHRhY2htZW50Iixjb250ZW50OiIiLG1ldGFkYXRhOnt9fTpudWxsfWdldEN1cnNvclBvc2l0aW9uKHQpe3JldHVybiBudWxsfXNldEN1cnNvclRvU3RhcnQodCl7dGhpcy5mb2N1cyh0KX1zZXRDdXJzb3JUb0VuZCh0KXt0aGlzLmZvY3VzKHQpfWZvY3VzKHQpe3QucXVlcnlTZWxlY3RvcigiLmF0dGFjaG1lbnQtYmxvY2stY29udGFpbmVyIik/LmZvY3VzKCl9Zm9jdXNXaXRoQ3Vyc29yKHQscj0iZW5kIil7dGhpcy5mb2N1cyh0KX1nZXRTcGxpdENvbnRlbnQodCl7cmV0dXJuIG51bGx9Z2V0U3R5bGVzKCl7cmV0dXJuYAogICAgICAvKiBBdHRhY2htZW50IEJsb2NrIENvbnRhaW5lciAqLwogICAgICAuYXR0YWNobWVudC1ibG9jay1jb250YWluZXIgewogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICBtYXJnaW46IDEycHggMDsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiMzNzQxNTEiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgICAgb3V0bGluZTogbm9uZTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2ZmZmZmZiIsIiMxMTE4MjciKX07CiAgICAgIH0KICAgICAgCiAgICAgIC5hdHRhY2htZW50LWJsb2NrLWNvbnRhaW5lci5zZWxlY3RlZCB7CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiIzljYTNhZiIsIiM2YjcyODAiKX07CiAgICAgIH0KICAgICAgCiAgICAgIC5hdHRhY2htZW50LWJsb2NrLWNvbnRhaW5lci5kcmFnLW92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjlmYWZiIiwiIzFmMjkzNyIpfTsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCIjNjM2NmYxIiwiIzgxOGNmOCIpfTsKICAgICAgfQogICAgICAKICAgICAgLyogSGVhZGVyICovCiAgICAgIC5hdHRhY2htZW50LWhlYWRlciB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogOHB4OwogICAgICAgIHBhZGRpbmc6IDEycHggMTZweDsKICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjMzc0MTUxIil9OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjlmYWZiIiwiIzBhMGEwYSIpfTsKICAgICAgfQogICAgICAKICAgICAgLmF0dGFjaG1lbnQtaWNvbiB7CiAgICAgICAgZm9udC1zaXplOiAxOHB4OwogICAgICAgIG9wYWNpdHk6IDAuODsKICAgICAgfQogICAgICAKICAgICAgLmF0dGFjaG1lbnQtdGl0bGUgewogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzM3NDE1MSIsIiNlNWU3ZWIiKX07CiAgICAgIH0KICAgICAgCiAgICAgIC8qIEZpbGUgTGlzdCAqLwogICAgICAuYXR0YWNobWVudC1saXN0IHsKICAgICAgICBwYWRkaW5nOiA4cHg7CiAgICAgICAgbWluLWhlaWdodDogODBweDsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgZ2FwOiA0cHg7CiAgICAgIH0KICAgICAgCiAgICAgIC8qIFBsYWNlaG9sZGVyICovCiAgICAgIC5hdHRhY2htZW50LXBsYWNlaG9sZGVyIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICBwYWRkaW5nOiAyNHB4OwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTsKICAgICAgfQogICAgICAKICAgICAgLmF0dGFjaG1lbnQtcGxhY2Vob2xkZXI6aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjlmYWZiIiwiIzFmMjkzNyIpfTsKICAgICAgfQogICAgICAKICAgICAgLnBsYWNlaG9sZGVyLXRleHQgewogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM2YjcyODAiLCIjOWNhM2FmIil9OwogICAgICAgIG1hcmdpbi1ib3R0b206IDRweDsKICAgICAgfQogICAgICAKICAgICAgLnBsYWNlaG9sZGVyLWhpbnQgewogICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM5Y2EzYWYiLCIjNmI3MjgwIil9OwogICAgICB9CiAgICAgIAogICAgICAvKiBGaWxlIEl0ZW1zICovCiAgICAgIC5hdHRhY2htZW50LWl0ZW0gewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDEycHg7CiAgICAgICAgcGFkZGluZzogOHB4IDEycHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmOWZhZmIiLCIjMWYyOTM3Iil9OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZTVlN2ViIiwiIzM3NDE1MSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgIH0KICAgICAgCiAgICAgIC5hdHRhY2htZW50LWl0ZW06aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjNmNGY2IiwiIzM3NDE1MSIpfTsKICAgICAgfQogICAgICAKICAgICAgLmZpbGUtaWNvbiB7CiAgICAgICAgZm9udC1zaXplOiAyMHB4OwogICAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgICB9CiAgICAgIAogICAgICAuZmlsZS1pbmZvIHsKICAgICAgICBmbGV4OiAxOwogICAgICAgIG1pbi13aWR0aDogMDsKICAgICAgfQogICAgICAKICAgICAgLmZpbGUtbmFtZSB7CiAgICAgICAgZm9udC1zaXplOiAxM3B4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMTExODI3IiwiI2Y5ZmFmYiIpfTsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOwogICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgICAgIH0KICAgICAgCiAgICAgIC5maWxlLXNpemUgewogICAgICAgIGZvbnQtc2l6ZTogMTFweDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM2YjcyODAiLCIjOWNhM2FmIil9OwogICAgICAgIG1hcmdpbi10b3A6IDJweDsKICAgICAgfQogICAgICAKICAgICAgLnJlbW92ZS1maWxlIHsKICAgICAgICBmbGV4LXNocmluazogMDsKICAgICAgICB3aWR0aDogMjRweDsKICAgICAgICBoZWlnaHQ6IDI0cHg7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM2YjcyODAiLCIjOWNhM2FmIil9OwogICAgICAgIGZvbnQtc2l6ZTogMThweDsKICAgICAgICBsaW5lLWhlaWdodDogMTsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgICAgcGFkZGluZzogMDsKICAgICAgfQogICAgICAKICAgICAgLnJlbW92ZS1maWxlOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2ZlZTJlMiIsIiM5OTFiMWIiKX07CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiI2ZjYTVhNSIsIiNkYzI2MjYiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjZGMyNjI2IiwiI2ZjYTVhNSIpfTsKICAgICAgfQogICAgICAKICAgICAgLyogQWRkIE1vcmUgRmlsZXMgQnV0dG9uICovCiAgICAgIC5hZGQtbW9yZS1maWxlcyB7CiAgICAgICAgbWFyZ2luOiA4cHg7CiAgICAgICAgcGFkZGluZzogNnB4IDEycHg7CiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjMzc0MTUxIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMzc0MTUxIiwiI2U1ZTdlYiIpfTsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgICAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgJ1NlZ29lIFVJJywgc2Fucy1zZXJpZjsKICAgICAgfQogICAgICAKICAgICAgLmFkZC1tb3JlLWZpbGVzOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2Y5ZmFmYiIsIiMxZjI5MzciKX07CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiI2QxZDVkYiIsIiM0YjU1NjMiKX07CiAgICAgIH0KICAgICAgCiAgICAgIC8qIEhpZGRlbiBmaWxlIGlucHV0ICovCiAgICAgIC5hdHRhY2htZW50LWZpbGUtaW5wdXQgewogICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsKICAgICAgfQogICAgYH19fSk7dmFyIFNaLEIkcj1sKCgpPT57Y24oKTtTZSgpO1NaPWNsYXNzIGV4dGVuZHMgX2F7dHlwZT0iZGl2aWRlciI7cmVuZGVyKHQscil7cmV0dXJuYAogICAgICA8ZGl2IGNsYXNzPSJibG9jayBkaXZpZGVyJHtyPyIgc2VsZWN0ZWQiOiIifSIgZGF0YS1ibG9jay1pZD0iJHt0LmlkfSIgZGF0YS1ibG9jay10eXBlPSIke3QudHlwZX0iIHRhYmluZGV4PSIwIj4KICAgICAgICA8aHI+CiAgICAgIDwvZGl2PgogICAgYH1zZXR1cCh0LHIsYSl7bGV0IGk9dC5xdWVyeVNlbGVjdG9yKCIuYmxvY2suZGl2aWRlciIpO2kmJihpLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixvPT57by5zdG9wUHJvcGFnYXRpb24oKSxpLmZvY3VzKCksYS5vbkZvY3VzPy4oKX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXMiLCgpPT57YS5vbkZvY3VzPy4oKX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigiYmx1ciIsKCk9PnthLm9uQmx1cj8uKCl9KSxpLmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLG89Pnsoby5rZXk9PT0iQmFja3NwYWNlInx8by5rZXk9PT0iRGVsZXRlIikmJm8ucHJldmVudERlZmF1bHQoKSxhLm9uS2V5RG93bj8uKG8pfSkpfWdldFN0eWxlcygpe3JldHVybmAKICAgICAgLmJsb2NrLmRpdmlkZXIgewogICAgICAgIHBhZGRpbmc6IDhweCAwOwogICAgICAgIG1hcmdpbjogMTZweCAwOwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICB9CgogICAgICAuYmxvY2suZGl2aWRlcjpmb2N1cyB7CiAgICAgICAgb3V0bGluZTogbm9uZTsKICAgICAgfQoKICAgICAgLmJsb2NrLmRpdmlkZXIuc2VsZWN0ZWQgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDAsIDEwMiwgMjA0LCAwLjA1KSIsInJnYmEoNzcsIDE0OCwgMjU1LCAwLjA4KSIpfTsKICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAycHggJHttLmJkVGhlbWUoInJnYmEoMCwgMTAyLCAyMDQsIDAuMikiLCJyZ2JhKDc3LCAxNDgsIDI1NSwgMC4yKSIpfTsKICAgICAgfQoKICAgICAgLmJsb2NrLmRpdmlkZXIgaHIgewogICAgICAgIGJvcmRlcjogbm9uZTsKICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlMGUwZTAiLCIjMzMzIil9OwogICAgICAgIG1hcmdpbjogMDsKICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAgICAgfQogICAgYH19fSk7dmFyIHpaLEgkcj1sKCgpPT57Y24oKTtTZSgpO3paPWNsYXNzIGV4dGVuZHMgX2F7dHlwZT0ibWFya2Rvd24iO3JlbmRlcih0LHIpe2xldCBhPXQubWV0YWRhdGE/LmlzRWRpdE1vZGU/PyEwLGk9dC5jb250ZW50fHwiIjtyZXR1cm5gCiAgICAgIDxkaXYgY2xhc3M9Im1hcmtkb3duLWJsb2NrLWNvbnRhaW5lciR7cj8iIHNlbGVjdGVkIjoiIn0iIAogICAgICAgICAgIGRhdGEtYmxvY2staWQ9IiR7dC5pZH0iCiAgICAgICAgICAgZGF0YS1lZGl0LW1vZGU9IiR7YX0iPgogICAgICAgIDxkaXYgY2xhc3M9Im1hcmtkb3duLWhlYWRlciI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJtYXJrZG93bi1pY29uIj5NXHUyMTkzPC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJtYXJrZG93bi10aXRsZSI+TWFya2Rvd248L2Rpdj4KICAgICAgICAgIDxidXR0b24gY2xhc3M9Im1hcmtkb3duLXRvZ2dsZS1tb2RlIiB0aXRsZT0iJHthPyJQcmV2aWV3IjoiRWRpdCJ9Ij4KICAgICAgICAgICAgJHthPyJcdXsxRjQ0MX1cdUZFMEYiOiJcdTI3MEZcdUZFMEYifQogICAgICAgICAgPC9idXR0b24+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ibWFya2Rvd24tY29udGVudCI+CiAgICAgICAgICAke2E/dGhpcy5yZW5kZXJFZGl0b3IoaSk6dGhpcy5yZW5kZXJQcmV2aWV3KGkpfQogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIGB9cmVuZGVyRWRpdG9yKHQpe3JldHVybmAKICAgICAgPHRleHRhcmVhIGNsYXNzPSJtYXJrZG93bi1lZGl0b3IiIAogICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9IkVudGVyIG1hcmtkb3duIGNvbnRlbnQuLi4iCiAgICAgICAgICAgICAgICBzcGVsbGNoZWNrPSJmYWxzZSI+JHt0aGlzLmVzY2FwZUh0bWwodCl9PC90ZXh0YXJlYT4KICAgIGB9cmVuZGVyUHJldmlldyh0KXtyZXR1cm5gCiAgICAgIDxkaXYgY2xhc3M9Im1hcmtkb3duLXByZXZpZXciPgogICAgICAgICR7dGhpcy5wYXJzZU1hcmtkb3duKHQpfHwnPGRpdiBjbGFzcz0icHJldmlldy1lbXB0eSI+Tm8gY29udGVudCB0byBwcmV2aWV3PC9kaXY+J30KICAgICAgPC9kaXY+CiAgICBgfXNldHVwKHQscixhKXtsZXQgaT10LnF1ZXJ5U2VsZWN0b3IoIi5tYXJrZG93bi1ibG9jay1jb250YWluZXIiKSxvPXQucXVlcnlTZWxlY3RvcigiLm1hcmtkb3duLXRvZ2dsZS1tb2RlIik7aWYoIWl8fCFvKXtjb25zb2xlLmVycm9yKCJNYXJrZG93bkJsb2NrSGFuZGxlcjogQ291bGQgbm90IGZpbmQgcmVxdWlyZWQgZWxlbWVudHMiKTtyZXR1cm59ci5tZXRhZGF0YXx8KHIubWV0YWRhdGE9e30pLHIubWV0YWRhdGEuaXNFZGl0TW9kZT09PXZvaWQgMCYmKHIubWV0YWRhdGEuaXNFZGl0TW9kZT0hMCksby5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsbj0+e2lmKG4ucHJldmVudERlZmF1bHQoKSxuLnN0b3BQcm9wYWdhdGlvbigpLHIubWV0YWRhdGEuaXNFZGl0TW9kZSl7bGV0IHM9aS5xdWVyeVNlbGVjdG9yKCIubWFya2Rvd24tZWRpdG9yIik7cyYmKHIuY29udGVudD1zLnZhbHVlKX1yLm1ldGFkYXRhLmlzRWRpdE1vZGU9IXIubWV0YWRhdGEuaXNFZGl0TW9kZSxhLm9uUmVxdWVzdFVwZGF0ZT8uKCl9KSxyLm1ldGFkYXRhLmlzRWRpdE1vZGU/dGhpcy5zZXR1cEVkaXRvcih0LHIsYSk6dGhpcy5zZXR1cFByZXZpZXcodCxyLGEpfXNldHVwRWRpdG9yKHQscixhKXtsZXQgaT10LnF1ZXJ5U2VsZWN0b3IoIi5tYXJrZG93bi1lZGl0b3IiKTtpJiYoaS5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsKCk9PmEub25Gb2N1cygpKSxpLmFkZEV2ZW50TGlzdGVuZXIoImJsdXIiLCgpPT5hLm9uQmx1cigpKSxpLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IiwoKT0+e3IuY29udGVudD1pLnZhbHVlfSksaS5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixvPT57aWYoby5rZXk9PT0iVGFiIil7by5wcmV2ZW50RGVmYXVsdCgpO2xldCBuPWkuc2VsZWN0aW9uU3RhcnQscz1pLnNlbGVjdGlvbkVuZCxjPWkudmFsdWU7aWYoby5zaGlmdEtleSl7bGV0IHU9Yy5zdWJzdHJpbmcoMCxuKS5sYXN0SW5kZXhPZihgCmApKzEscD1jLnN1YnN0cmluZyh1LG4pO3Auc3RhcnRzV2l0aCgiICAiKSYmKGkudmFsdWU9Yy5zdWJzdHJpbmcoMCx1KStwLnN1YnN0cmluZygyKStjLnN1YnN0cmluZyhuKSxpLnNlbGVjdGlvblN0YXJ0PWkuc2VsZWN0aW9uRW5kPW4tMil9ZWxzZSBpLnZhbHVlPWMuc3Vic3RyaW5nKDAsbikrIiAgIitjLnN1YnN0cmluZyhzKSxpLnNlbGVjdGlvblN0YXJ0PWkuc2VsZWN0aW9uRW5kPW4rMjtyLmNvbnRlbnQ9aS52YWx1ZTtyZXR1cm59aWYoKG8uY3RybEtleXx8by5tZXRhS2V5KSYmby5rZXk9PT0iYiIpe28ucHJldmVudERlZmF1bHQoKSx0aGlzLndyYXBTZWxlY3Rpb24oaSwiKioiLCIqKiIpLHIuY29udGVudD1pLnZhbHVlO3JldHVybn1pZigoby5jdHJsS2V5fHxvLm1ldGFLZXkpJiZvLmtleT09PSJpIil7by5wcmV2ZW50RGVmYXVsdCgpLHRoaXMud3JhcFNlbGVjdGlvbihpLCJfIiwiXyIpLHIuY29udGVudD1pLnZhbHVlO3JldHVybn1pZigoby5jdHJsS2V5fHxvLm1ldGFLZXkpJiZvLmtleT09PSJrIil7by5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuaW5zZXJ0TGluayhpKSxyLmNvbnRlbnQ9aS52YWx1ZTtyZXR1cm59YS5vbktleURvd24obyl9KSx0aGlzLmF1dG9SZXNpemUoaSksaS5hZGRFdmVudExpc3RlbmVyKCJpbnB1dCIsKCk9PnRoaXMuYXV0b1Jlc2l6ZShpKSkpfXNldHVwUHJldmlldyh0LHIsYSl7bGV0IGk9dC5xdWVyeVNlbGVjdG9yKCIubWFya2Rvd24tYmxvY2stY29udGFpbmVyIiksbz10LnF1ZXJ5U2VsZWN0b3IoIi5tYXJrZG93bi1wcmV2aWV3Iik7IWl8fCFvfHwoby5zZXRBdHRyaWJ1dGUoInRhYmluZGV4IiwiMCIpLG8uYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXMiLCgpPT5hLm9uRm9jdXMoKSksby5hZGRFdmVudExpc3RlbmVyKCJibHVyIiwoKT0+YS5vbkJsdXIoKSksby5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixuPT57aWYobi5rZXk9PT0iRW50ZXIiJiYhbi5zaGlmdEtleSl7bi5wcmV2ZW50RGVmYXVsdCgpLHIubWV0YWRhdGEuaXNFZGl0TW9kZT0hMCxhLm9uUmVxdWVzdFVwZGF0ZT8uKCk7cmV0dXJufWEub25LZXlEb3duKG4pfSkpfXdyYXBTZWxlY3Rpb24odCxyLGEpe2xldCBpPXQuc2VsZWN0aW9uU3RhcnQsbz10LnNlbGVjdGlvbkVuZCxuPXQudmFsdWUuc3Vic3RyaW5nKGksbykscz1yKyhufHwidGV4dCIpK2E7dC52YWx1ZT10LnZhbHVlLnN1YnN0cmluZygwLGkpK3MrdC52YWx1ZS5zdWJzdHJpbmcobyksbj8odC5zZWxlY3Rpb25TdGFydD1pLHQuc2VsZWN0aW9uRW5kPWkrcy5sZW5ndGgpOih0LnNlbGVjdGlvblN0YXJ0PWkrci5sZW5ndGgsdC5zZWxlY3Rpb25FbmQ9aStyLmxlbmd0aCs0KSx0LmZvY3VzKCl9aW5zZXJ0TGluayh0KXtsZXQgcj10LnNlbGVjdGlvblN0YXJ0LGE9dC5zZWxlY3Rpb25FbmQsbz10LnZhbHVlLnN1YnN0cmluZyhyLGEpfHwibGluayB0ZXh0IixuPWBbJHtvfV0odXJsKWA7dC52YWx1ZT10LnZhbHVlLnN1YnN0cmluZygwLHIpK24rdC52YWx1ZS5zdWJzdHJpbmcoYSksdC5zZWxlY3Rpb25TdGFydD1yK28ubGVuZ3RoKzMsdC5zZWxlY3Rpb25FbmQ9citvLmxlbmd0aCs2LHQuZm9jdXMoKX1hdXRvUmVzaXplKHQpe3Quc3R5bGUuaGVpZ2h0PSJhdXRvIix0LnN0eWxlLmhlaWdodD10LnNjcm9sbEhlaWdodCsicHgifXBhcnNlTWFya2Rvd24odCl7bGV0IHI9dGhpcy5lc2NhcGVIdG1sKHQpO3JldHVybiByPXIucmVwbGFjZSgvXiMjIyAoLispJC9nbSwiPGgzPiQxPC9oMz4iKSxyPXIucmVwbGFjZSgvXiMjICguKykkL2dtLCI8aDI+JDE8L2gyPiIpLHI9ci5yZXBsYWNlKC9eIyAoLispJC9nbSwiPGgxPiQxPC9oMT4iKSxyPXIucmVwbGFjZSgvXCpcKiguKz8pXCpcKi9nLCI8c3Ryb25nPiQxPC9zdHJvbmc+Iikscj1yLnJlcGxhY2UoL19fKC4rPylfXy9nLCI8c3Ryb25nPiQxPC9zdHJvbmc+Iikscj1yLnJlcGxhY2UoL1wqKC4rPylcKi9nLCI8ZW0+JDE8L2VtPiIpLHI9ci5yZXBsYWNlKC9fKC4rPylfL2csIjxlbT4kMTwvZW0+Iikscj1yLnJlcGxhY2UoL2BgYChbXHNcU10qPylgYGAvZywiPHByZT48Y29kZT4kMTwvY29kZT48L3ByZT4iKSxyPXIucmVwbGFjZSgvYCguKz8pYC9nLCI8Y29kZT4kMTwvY29kZT4iKSxyPXIucmVwbGFjZSgvXFsoW15cXV0rKVxdXCgoW14pXSspXCkvZywnPGEgaHJlZj0iJDIiPiQxPC9hPicpLHI9ci5yZXBsYWNlKC9eXCogKC4rKSQvZ20sIjxsaT4kMTwvbGk+Iikscj1yLnJlcGxhY2UoL14tICguKykkL2dtLCI8bGk+JDE8L2xpPiIpLHI9ci5yZXBsYWNlKC9eXGQrXC4gKC4rKSQvZ20sIjxsaT4kMTwvbGk+Iikscj1yLnJlcGxhY2UoLyg8bGk+Lio8XC9saT5cbj8pKy9nLGE9PiI8dWw+IithKyI8L3VsPiIpLHI9ci5yZXBsYWNlKC9cblxuL2csIjwvcD48cD4iKSxyPSI8cD4iK3IrIjwvcD4iLHI9ci5yZXBsYWNlKC88cD48XC9wPi9nLCIiKSxyPXIucmVwbGFjZSgvPHA+KDxoWzEtM10+KS9nLCIkMSIpLHI9ci5yZXBsYWNlKC8oPFwvaFsxLTNdPik8XC9wPi9nLCIkMSIpLHI9ci5yZXBsYWNlKC88cD4oPHVsPikvZywiJDEiKSxyPXIucmVwbGFjZSgvKDxcL3VsPik8XC9wPi9nLCIkMSIpLHI9ci5yZXBsYWNlKC88cD4oPHByZT4pL2csIiQxIikscj1yLnJlcGxhY2UoLyg8XC9wcmU+KTxcL3A+L2csIiQxIikscn1lc2NhcGVIdG1sKHQpe2xldCByPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3JldHVybiByLnRleHRDb250ZW50PXQsci5pbm5lckhUTUx9Z2V0Q29udGVudCh0KXtsZXQgcj10LnF1ZXJ5U2VsZWN0b3IoIi5tYXJrZG93bi1lZGl0b3IiKTtpZihyKXJldHVybiByLnZhbHVlO2xldCBpPXQucXVlcnlTZWxlY3RvcigiLm1hcmtkb3duLWJsb2NrLWNvbnRhaW5lciIpPy5nZXRBdHRyaWJ1dGUoImRhdGEtYmxvY2staWQiKTtyZXR1cm4iIn1zZXRDb250ZW50KHQscil7bGV0IGE9dC5xdWVyeVNlbGVjdG9yKCIubWFya2Rvd24tZWRpdG9yIik7YSYmKGEudmFsdWU9cix0aGlzLmF1dG9SZXNpemUoYSkpfWdldEN1cnNvclBvc2l0aW9uKHQpe2xldCByPXQucXVlcnlTZWxlY3RvcigiLm1hcmtkb3duLWVkaXRvciIpO3JldHVybiByP3Iuc2VsZWN0aW9uU3RhcnQ6bnVsbH1zZXRDdXJzb3JUb1N0YXJ0KHQpe2xldCByPXQucXVlcnlTZWxlY3RvcigiLm1hcmtkb3duLWVkaXRvciIpO3I/KHIuc2VsZWN0aW9uU3RhcnQ9ci5zZWxlY3Rpb25FbmQ9MCxyLmZvY3VzKCkpOnRoaXMuZm9jdXModCl9c2V0Q3Vyc29yVG9FbmQodCl7bGV0IHI9dC5xdWVyeVNlbGVjdG9yKCIubWFya2Rvd24tZWRpdG9yIik7aWYocil7bGV0IGE9ci52YWx1ZS5sZW5ndGg7ci5zZWxlY3Rpb25TdGFydD1yLnNlbGVjdGlvbkVuZD1hLHIuZm9jdXMoKX1lbHNlIHRoaXMuZm9jdXModCl9Zm9jdXModCl7bGV0IHI9dC5xdWVyeVNlbGVjdG9yKCIubWFya2Rvd24tZWRpdG9yIik7cj9yLmZvY3VzKCk6dC5xdWVyeVNlbGVjdG9yKCIubWFya2Rvd24tcHJldmlldyIpPy5mb2N1cygpfWZvY3VzV2l0aEN1cnNvcih0LHI9ImVuZCIpe2xldCBhPXQucXVlcnlTZWxlY3RvcigiLm1hcmtkb3duLWVkaXRvciIpO2E/cj09PSJzdGFydCI/dGhpcy5zZXRDdXJzb3JUb1N0YXJ0KHQpOnI9PT0iZW5kIj90aGlzLnNldEN1cnNvclRvRW5kKHQpOnR5cGVvZiByPT0ibnVtYmVyIiYmKGEuc2VsZWN0aW9uU3RhcnQ9YS5zZWxlY3Rpb25FbmQ9cixhLmZvY3VzKCkpOnRoaXMuZm9jdXModCl9Z2V0U3BsaXRDb250ZW50KHQpe2xldCByPXQucXVlcnlTZWxlY3RvcigiLm1hcmtkb3duLWVkaXRvciIpO2lmKCFyKXJldHVybiBudWxsO2xldCBhPXIuc2VsZWN0aW9uU3RhcnQ7cmV0dXJue2JlZm9yZTpyLnZhbHVlLnN1YnN0cmluZygwLGEpLGFmdGVyOnIudmFsdWUuc3Vic3RyaW5nKGEpfX1nZXRTdHlsZXMoKXtyZXR1cm5gCiAgICAgIC8qIE1hcmtkb3duIEJsb2NrIENvbnRhaW5lciAqLwogICAgICAubWFya2Rvd24tYmxvY2stY29udGFpbmVyIHsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgbWFyZ2luOiAxMnB4IDA7CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjMzc0MTUxIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZmZmZmZmIiwiIzExMTgyNyIpfTsKICAgICAgfQogICAgICAKICAgICAgLm1hcmtkb3duLWJsb2NrLWNvbnRhaW5lci5zZWxlY3RlZCB7CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiIzljYTNhZiIsIiM2YjcyODAiKX07CiAgICAgIH0KICAgICAgCiAgICAgIC8qIEhlYWRlciAqLwogICAgICAubWFya2Rvd24taGVhZGVyIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgZ2FwOiA4cHg7CiAgICAgICAgcGFkZGluZzogOHB4IDEycHg7CiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZTVlN2ViIiwiIzM3NDE1MSIpfTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2Y5ZmFmYiIsIiMwYTBhMGEiKX07CiAgICAgIH0KICAgICAgCiAgICAgIC5tYXJrZG93bi1pY29uIHsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICBvcGFjaXR5OiAwLjg7CiAgICAgIH0KICAgICAgCiAgICAgIC5tYXJrZG93bi10aXRsZSB7CiAgICAgICAgZmxleDogMTsKICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMzNzQxNTEiLCIjZTVlN2ViIil9OwogICAgICB9CiAgICAgIAogICAgICAubWFya2Rvd24tdG9nZ2xlLW1vZGUgewogICAgICAgIHBhZGRpbmc6IDRweCA4cHg7CiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjMzc0MTUxIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICB9CiAgICAgIAogICAgICAubWFya2Rvd24tdG9nZ2xlLW1vZGU6aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjNmNGY2IiwiIzFmMjkzNyIpfTsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCIjZDFkNWRiIiwiIzRiNTU2MyIpfTsKICAgICAgfQogICAgICAKICAgICAgLyogQ29udGVudCAqLwogICAgICAubWFya2Rvd24tY29udGVudCB7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIG1pbi1oZWlnaHQ6IDEyMHB4OwogICAgICB9CiAgICAgIAogICAgICAvKiBFZGl0b3IgKi8KICAgICAgLm1hcmtkb3duLWVkaXRvciB7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgbWluLWhlaWdodDogMTIwcHg7CiAgICAgICAgcGFkZGluZzogMTJweDsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgICBib3JkZXI6IG5vbmU7CiAgICAgICAgb3V0bGluZTogbm9uZTsKICAgICAgICByZXNpemU6IG5vbmU7CiAgICAgICAgZm9udC1mYW1pbHk6ICdNb25hY28nLCAnQ29uc29sYXMnLCAnQ291cmllciBOZXcnLCBtb25vc3BhY2U7CiAgICAgICAgZm9udC1zaXplOiAxM3B4OwogICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMWYyOTM3IiwiI2YzZjRmNiIpfTsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICB9CiAgICAgIAogICAgICAubWFya2Rvd24tZWRpdG9yOjpwbGFjZWhvbGRlciB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjOWNhM2FmIiwiIzZiNzI4MCIpfTsKICAgICAgfQogICAgICAKICAgICAgLyogUHJldmlldyAqLwogICAgICAubWFya2Rvd24tcHJldmlldyB7CiAgICAgICAgcGFkZGluZzogMTJweDsKICAgICAgICBtaW4taGVpZ2h0OiA5NnB4OwogICAgICAgIG91dGxpbmU6IG5vbmU7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMWYyOTM3IiwiI2YzZjRmNiIpfTsKICAgICAgfQogICAgICAKICAgICAgLnByZXZpZXctZW1wdHkgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzljYTNhZiIsIiM2YjcyODAiKX07CiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljOwogICAgICB9CiAgICAgIAogICAgICAvKiBNYXJrZG93biBwcmV2aWV3IHN0eWxlcyAqLwogICAgICAubWFya2Rvd24tcHJldmlldyBoMSB7CiAgICAgICAgZm9udC1zaXplOiAyNHB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgbWFyZ2luOiAxNnB4IDAgOHB4IDA7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMTExODI3IiwiI2Y5ZmFmYiIpfTsKICAgICAgfQogICAgICAKICAgICAgLm1hcmtkb3duLXByZXZpZXcgaDIgewogICAgICAgIGZvbnQtc2l6ZTogMjBweDsKICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgIG1hcmdpbjogMTRweCAwIDZweCAwOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzExMTgyNyIsIiNmOWZhZmIiKX07CiAgICAgIH0KICAgICAgCiAgICAgIC5tYXJrZG93bi1wcmV2aWV3IGgzIHsKICAgICAgICBmb250LXNpemU6IDE4cHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICBtYXJnaW46IDEycHggMCA0cHggMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMxMTE4MjciLCIjZjlmYWZiIil9OwogICAgICB9CiAgICAgIAogICAgICAubWFya2Rvd24tcHJldmlldyBwIHsKICAgICAgICBtYXJnaW46IDhweCAwOwogICAgICB9CiAgICAgIAogICAgICAubWFya2Rvd24tcHJldmlldyB1bCwKICAgICAgLm1hcmtkb3duLXByZXZpZXcgb2wgewogICAgICAgIG1hcmdpbjogOHB4IDA7CiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNHB4OwogICAgICB9CiAgICAgIAogICAgICAubWFya2Rvd24tcHJldmlldyBsaSB7CiAgICAgICAgbWFyZ2luOiA0cHggMDsKICAgICAgfQogICAgICAKICAgICAgLm1hcmtkb3duLXByZXZpZXcgY29kZSB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmM2Y0ZjYiLCIjMWYyOTM3Iil9OwogICAgICAgIHBhZGRpbmc6IDJweCA0cHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4OwogICAgICAgIGZvbnQtZmFtaWx5OiAnTW9uYWNvJywgJ0NvbnNvbGFzJywgJ0NvdXJpZXIgTmV3JywgbW9ub3NwYWNlOwogICAgICAgIGZvbnQtc2l6ZTogMC45ZW07CiAgICAgIH0KICAgICAgCiAgICAgIC5tYXJrZG93bi1wcmV2aWV3IHByZSB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmM2Y0ZjYiLCIjMWYyOTM3Iil9OwogICAgICAgIHBhZGRpbmc6IDEycHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgIG92ZXJmbG93LXg6IGF1dG87CiAgICAgICAgbWFyZ2luOiA4cHggMDsKICAgICAgfQogICAgICAKICAgICAgLm1hcmtkb3duLXByZXZpZXcgcHJlIGNvZGUgewogICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogICAgICAgIHBhZGRpbmc6IDA7CiAgICAgIH0KICAgICAgCiAgICAgIC5tYXJrZG93bi1wcmV2aWV3IHN0cm9uZyB7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMxMTE4MjciLCIjZjlmYWZiIil9OwogICAgICB9CiAgICAgIAogICAgICAubWFya2Rvd24tcHJldmlldyBlbSB7CiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljOwogICAgICB9CiAgICAgIAogICAgICAubWFya2Rvd24tcHJldmlldyBhIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMzYjgyZjYiLCIjNjBhNWZhIil9OwogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICAgICAgfQogICAgICAKICAgICAgLm1hcmtkb3duLXByZXZpZXcgYTpob3ZlciB7CiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7CiAgICAgIH0KICAgICAgCiAgICAgIC5tYXJrZG93bi1wcmV2aWV3IGJsb2NrcXVvdGUgewogICAgICAgIGJvcmRlci1sZWZ0OiAzcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjMzc0MTUxIil9OwogICAgICAgIHBhZGRpbmctbGVmdDogMTJweDsKICAgICAgICBtYXJnaW46IDhweCAwOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzZiNzI4MCIsIiM5Y2EzYWYiKX07CiAgICAgIH0KICAgIGB9fX0pO3ZhciBDWixxJHI9bCgoKT0+e2NuKCk7U2UoKTtDWj1jbGFzcyBleHRlbmRzIF9he3R5cGU9Imh0bWwiO3JlbmRlcih0LHIpe2xldCBhPXQubWV0YWRhdGE/LmlzRWRpdE1vZGU/PyEwLGk9dC5jb250ZW50fHwiIjtyZXR1cm5gCiAgICAgIDxkaXYgY2xhc3M9Imh0bWwtYmxvY2stY29udGFpbmVyJHtyPyIgc2VsZWN0ZWQiOiIifSIgCiAgICAgICAgICAgZGF0YS1ibG9jay1pZD0iJHt0LmlkfSIKICAgICAgICAgICBkYXRhLWVkaXQtbW9kZT0iJHthfSI+CiAgICAgICAgPGRpdiBjbGFzcz0iaHRtbC1oZWFkZXIiPgogICAgICAgICAgPGRpdiBjbGFzcz0iaHRtbC1pY29uIj4mbHQ7LyZndDs8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9Imh0bWwtdGl0bGUiPkhUTUw8L2Rpdj4KICAgICAgICAgIDxidXR0b24gY2xhc3M9Imh0bWwtdG9nZ2xlLW1vZGUiIHRpdGxlPSIke2E/IlByZXZpZXciOiJFZGl0In0iPgogICAgICAgICAgICAke2E/Ilx1ezFGNDQxfVx1RkUwRiI6Ilx1MjcwRlx1RkUwRiJ9CiAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJodG1sLWNvbnRlbnQiPgogICAgICAgICAgJHthP3RoaXMucmVuZGVyRWRpdG9yKGkpOnRoaXMucmVuZGVyUHJldmlldyhpKX0KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICBgfXJlbmRlckVkaXRvcih0KXtyZXR1cm5gCiAgICAgIDx0ZXh0YXJlYSBjbGFzcz0iaHRtbC1lZGl0b3IiIAogICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9IkVudGVyIEhUTUwgY29udGVudC4uLiIKICAgICAgICAgICAgICAgIHNwZWxsY2hlY2s9ImZhbHNlIj4ke3RoaXMuZXNjYXBlSHRtbCh0KX08L3RleHRhcmVhPgogICAgYH1yZW5kZXJQcmV2aWV3KHQpe3JldHVybmAKICAgICAgPGRpdiBjbGFzcz0iaHRtbC1wcmV2aWV3Ij4KICAgICAgICAke3R8fCc8ZGl2IGNsYXNzPSJwcmV2aWV3LWVtcHR5Ij5ObyBjb250ZW50IHRvIHByZXZpZXc8L2Rpdj4nfQogICAgICA8L2Rpdj4KICAgIGB9c2V0dXAodCxyLGEpe2xldCBpPXQucXVlcnlTZWxlY3RvcigiLmh0bWwtYmxvY2stY29udGFpbmVyIiksbz10LnF1ZXJ5U2VsZWN0b3IoIi5odG1sLXRvZ2dsZS1tb2RlIik7aWYoIWl8fCFvKXtjb25zb2xlLmVycm9yKCJIdG1sQmxvY2tIYW5kbGVyOiBDb3VsZCBub3QgZmluZCByZXF1aXJlZCBlbGVtZW50cyIpO3JldHVybn1yLm1ldGFkYXRhfHwoci5tZXRhZGF0YT17fSksci5tZXRhZGF0YS5pc0VkaXRNb2RlPT09dm9pZCAwJiYoci5tZXRhZGF0YS5pc0VkaXRNb2RlPSEwKSxvLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixuPT57aWYobi5wcmV2ZW50RGVmYXVsdCgpLG4uc3RvcFByb3BhZ2F0aW9uKCksci5tZXRhZGF0YS5pc0VkaXRNb2RlKXtsZXQgcz1pLnF1ZXJ5U2VsZWN0b3IoIi5odG1sLWVkaXRvciIpO3MmJihyLmNvbnRlbnQ9cy52YWx1ZSl9ci5tZXRhZGF0YS5pc0VkaXRNb2RlPSFyLm1ldGFkYXRhLmlzRWRpdE1vZGUsYS5vblJlcXVlc3RVcGRhdGU/LigpfSksci5tZXRhZGF0YS5pc0VkaXRNb2RlP3RoaXMuc2V0dXBFZGl0b3IodCxyLGEpOnRoaXMuc2V0dXBQcmV2aWV3KHQscixhKX1zZXR1cEVkaXRvcih0LHIsYSl7bGV0IGk9dC5xdWVyeVNlbGVjdG9yKCIuaHRtbC1lZGl0b3IiKTtpJiYoaS5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsKCk9PmEub25Gb2N1cygpKSxpLmFkZEV2ZW50TGlzdGVuZXIoImJsdXIiLCgpPT5hLm9uQmx1cigpKSxpLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IiwoKT0+e3IuY29udGVudD1pLnZhbHVlLHRoaXMudmFsaWRhdGVIdG1sKGkudmFsdWUpfSksaS5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixvPT57aWYoby5rZXk9PT0iVGFiIil7by5wcmV2ZW50RGVmYXVsdCgpO2xldCBuPWkuc2VsZWN0aW9uU3RhcnQscz1pLnNlbGVjdGlvbkVuZCxjPWkudmFsdWU7aWYoby5zaGlmdEtleSl7bGV0IHU9Yy5zdWJzdHJpbmcoMCxuKS5sYXN0SW5kZXhPZihgCmApKzEscD1jLnN1YnN0cmluZyh1LG4pO3Auc3RhcnRzV2l0aCgiICAiKSYmKGkudmFsdWU9Yy5zdWJzdHJpbmcoMCx1KStwLnN1YnN0cmluZygyKStjLnN1YnN0cmluZyhuKSxpLnNlbGVjdGlvblN0YXJ0PWkuc2VsZWN0aW9uRW5kPW4tMil9ZWxzZSBpLnZhbHVlPWMuc3Vic3RyaW5nKDAsbikrIiAgIitjLnN1YnN0cmluZyhzKSxpLnNlbGVjdGlvblN0YXJ0PWkuc2VsZWN0aW9uRW5kPW4rMjtyLmNvbnRlbnQ9aS52YWx1ZTtyZXR1cm59aWYoKG8uY3RybEtleXx8by5tZXRhS2V5KSYmby5rZXk9PT0iLyIpe28ucHJldmVudERlZmF1bHQoKSx0aGlzLmF1dG9DbG9zZVRhZyhpKSxyLmNvbnRlbnQ9aS52YWx1ZTtyZXR1cm59YS5vbktleURvd24obyl9KSx0aGlzLmF1dG9SZXNpemUoaSksaS5hZGRFdmVudExpc3RlbmVyKCJpbnB1dCIsKCk9PnRoaXMuYXV0b1Jlc2l6ZShpKSkpfXNldHVwUHJldmlldyh0LHIsYSl7bGV0IGk9dC5xdWVyeVNlbGVjdG9yKCIuaHRtbC1ibG9jay1jb250YWluZXIiKSxvPXQucXVlcnlTZWxlY3RvcigiLmh0bWwtcHJldmlldyIpOyFpfHwhb3x8KG8uc2V0QXR0cmlidXRlKCJ0YWJpbmRleCIsIjAiKSxvLmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzIiwoKT0+YS5vbkZvY3VzKCkpLG8uYWRkRXZlbnRMaXN0ZW5lcigiYmx1ciIsKCk9PmEub25CbHVyKCkpLG8uYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsbj0+e2lmKG4ua2V5PT09IkVudGVyIiYmIW4uc2hpZnRLZXkpe24ucHJldmVudERlZmF1bHQoKSxyLm1ldGFkYXRhLmlzRWRpdE1vZGU9ITAsYS5vblJlcXVlc3RVcGRhdGU/LigpO3JldHVybn1hLm9uS2V5RG93bihuKX0pLHRoaXMuc2FuZGJveENvbnRlbnQobykpfWF1dG9DbG9zZVRhZyh0KXtsZXQgcj10LnNlbGVjdGlvblN0YXJ0LGE9dC52YWx1ZSxpPXI7Zm9yKDtpPjAmJmFbaS0xXSE9PSI8IjspaS0tO2lmKGk+MCl7bGV0IG49YS5zdWJzdHJpbmcoaSxyKS5tYXRjaCgvXihcdyspLyk7aWYobil7bGV0IGM9YDwvJHtuWzFdfT5gO3QudmFsdWU9YS5zdWJzdHJpbmcoMCxyKSsiPiIrYythLnN1YnN0cmluZyhyKSx0LnNlbGVjdGlvblN0YXJ0PXQuc2VsZWN0aW9uRW5kPXIrMX19fWF1dG9SZXNpemUodCl7dC5zdHlsZS5oZWlnaHQ9ImF1dG8iLHQuc3R5bGUuaGVpZ2h0PXQuc2Nyb2xsSGVpZ2h0KyJweCJ9dmFsaWRhdGVIdG1sKHQpe2xldCByPVtdLGE9LzxcLz8oW2EtekEtWl1bYS16QS1aMC05XSopXGJbXj5dKj4vZyxpO2Zvcig7KGk9YS5leGVjKHQpKSE9PW51bGw7KXtsZXQgbz1pWzBdLnN0YXJ0c1dpdGgoIjwvIiksbj1pWzFdLnRvTG93ZXJDYXNlKCk7aWYobyl7aWYoci5sZW5ndGg9PT0wfHxyW3IubGVuZ3RoLTFdIT09bilyZXR1cm4gY29uc29sZS53YXJuKGBNaXNtYXRjaGVkIGNsb3NpbmcgdGFnOiAke259YCksITE7ci5wb3AoKX1lbHNlIGlbMF0uZW5kc1dpdGgoIi8+Iil8fHIucHVzaChuKX1yZXR1cm4gci5sZW5ndGg+MD8oY29uc29sZS53YXJuKGBVbmNsb3NlZCB0YWdzOiAke3Iuam9pbigiLCAiKX1gKSwhMSk6ITB9c2FuZGJveENvbnRlbnQodCl7dC5xdWVyeVNlbGVjdG9yQWxsKCJzY3JpcHQiKS5mb3JFYWNoKG89Pm8ucmVtb3ZlKCkpLHQucXVlcnlTZWxlY3RvckFsbCgiKiIpLmZvckVhY2gobz0+e0FycmF5LmZyb20oby5hdHRyaWJ1dGVzKS5mb3JFYWNoKG49PntuLm5hbWUuc3RhcnRzV2l0aCgib24iKSYmby5yZW1vdmVBdHRyaWJ1dGUobi5uYW1lKX0pfSksdC5xdWVyeVNlbGVjdG9yQWxsKCJmb3JtIikuZm9yRWFjaChvPT57by5hZGRFdmVudExpc3RlbmVyKCJzdWJtaXQiLG49PntuLnByZXZlbnREZWZhdWx0KCksbi5zdG9wUHJvcGFnYXRpb24oKX0pfSl9ZXNjYXBlSHRtbCh0KXtsZXQgcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtyZXR1cm4gci50ZXh0Q29udGVudD10LHIuaW5uZXJIVE1MfWdldENvbnRlbnQodCl7bGV0IHI9dC5xdWVyeVNlbGVjdG9yKCIuaHRtbC1lZGl0b3IiKTtpZihyKXJldHVybiByLnZhbHVlO2xldCBpPXQucXVlcnlTZWxlY3RvcigiLmh0bWwtYmxvY2stY29udGFpbmVyIik/LmdldEF0dHJpYnV0ZSgiZGF0YS1ibG9jay1pZCIpO3JldHVybiIifXNldENvbnRlbnQodCxyKXtsZXQgYT10LnF1ZXJ5U2VsZWN0b3IoIi5odG1sLWVkaXRvciIpO2EmJihhLnZhbHVlPXIsdGhpcy5hdXRvUmVzaXplKGEpKX1nZXRDdXJzb3JQb3NpdGlvbih0KXtsZXQgcj10LnF1ZXJ5U2VsZWN0b3IoIi5odG1sLWVkaXRvciIpO3JldHVybiByP3Iuc2VsZWN0aW9uU3RhcnQ6bnVsbH1zZXRDdXJzb3JUb1N0YXJ0KHQpe2xldCByPXQucXVlcnlTZWxlY3RvcigiLmh0bWwtZWRpdG9yIik7cj8oci5zZWxlY3Rpb25TdGFydD1yLnNlbGVjdGlvbkVuZD0wLHIuZm9jdXMoKSk6dGhpcy5mb2N1cyh0KX1zZXRDdXJzb3JUb0VuZCh0KXtsZXQgcj10LnF1ZXJ5U2VsZWN0b3IoIi5odG1sLWVkaXRvciIpO2lmKHIpe2xldCBhPXIudmFsdWUubGVuZ3RoO3Iuc2VsZWN0aW9uU3RhcnQ9ci5zZWxlY3Rpb25FbmQ9YSxyLmZvY3VzKCl9ZWxzZSB0aGlzLmZvY3VzKHQpfWZvY3VzKHQpe2xldCByPXQucXVlcnlTZWxlY3RvcigiLmh0bWwtZWRpdG9yIik7cj9yLmZvY3VzKCk6dC5xdWVyeVNlbGVjdG9yKCIuaHRtbC1wcmV2aWV3Iik/LmZvY3VzKCl9Zm9jdXNXaXRoQ3Vyc29yKHQscj0iZW5kIil7bGV0IGE9dC5xdWVyeVNlbGVjdG9yKCIuaHRtbC1lZGl0b3IiKTthP3I9PT0ic3RhcnQiP3RoaXMuc2V0Q3Vyc29yVG9TdGFydCh0KTpyPT09ImVuZCI/dGhpcy5zZXRDdXJzb3JUb0VuZCh0KTp0eXBlb2Ygcj09Im51bWJlciImJihhLnNlbGVjdGlvblN0YXJ0PWEuc2VsZWN0aW9uRW5kPXIsYS5mb2N1cygpKTp0aGlzLmZvY3VzKHQpfWdldFNwbGl0Q29udGVudCh0KXtsZXQgcj10LnF1ZXJ5U2VsZWN0b3IoIi5odG1sLWVkaXRvciIpO2lmKCFyKXJldHVybiBudWxsO2xldCBhPXIuc2VsZWN0aW9uU3RhcnQ7cmV0dXJue2JlZm9yZTpyLnZhbHVlLnN1YnN0cmluZygwLGEpLGFmdGVyOnIudmFsdWUuc3Vic3RyaW5nKGEpfX1nZXRTdHlsZXMoKXtyZXR1cm5gCiAgICAgIC8qIEhUTUwgQmxvY2sgQ29udGFpbmVyICovCiAgICAgIC5odG1sLWJsb2NrLWNvbnRhaW5lciB7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIG1hcmdpbjogMTJweCAwOwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZTVlN2ViIiwiIzM3NDE1MSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2ZmZmZmZiIsIiMxMTE4MjciKX07CiAgICAgIH0KICAgICAgCiAgICAgIC5odG1sLWJsb2NrLWNvbnRhaW5lci5zZWxlY3RlZCB7CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiIzljYTNhZiIsIiM2YjcyODAiKX07CiAgICAgIH0KICAgICAgCiAgICAgIC8qIEhlYWRlciAqLwogICAgICAuaHRtbC1oZWFkZXIgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDhweDsKICAgICAgICBwYWRkaW5nOiA4cHggMTJweDsKICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjMzc0MTUxIil9OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjlmYWZiIiwiIzBhMGEwYSIpfTsKICAgICAgfQogICAgICAKICAgICAgLmh0bWwtaWNvbiB7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgb3BhY2l0eTogMC44OwogICAgICAgIGZvbnQtZmFtaWx5OiAnTW9uYWNvJywgJ0NvbnNvbGFzJywgJ0NvdXJpZXIgTmV3JywgbW9ub3NwYWNlOwogICAgICB9CiAgICAgIAogICAgICAuaHRtbC10aXRsZSB7CiAgICAgICAgZmxleDogMTsKICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMzNzQxNTEiLCIjZTVlN2ViIil9OwogICAgICB9CiAgICAgIAogICAgICAuaHRtbC10b2dnbGUtbW9kZSB7CiAgICAgICAgcGFkZGluZzogNHB4IDhweDsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiMzNzQxNTEiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgIH0KICAgICAgCiAgICAgIC5odG1sLXRvZ2dsZS1tb2RlOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2YzZjRmNiIsIiMxZjI5MzciKX07CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiI2QxZDVkYiIsIiM0YjU1NjMiKX07CiAgICAgIH0KICAgICAgCiAgICAgIC8qIENvbnRlbnQgKi8KICAgICAgLmh0bWwtY29udGVudCB7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIG1pbi1oZWlnaHQ6IDEyMHB4OwogICAgICB9CiAgICAgIAogICAgICAvKiBFZGl0b3IgKi8KICAgICAgLmh0bWwtZWRpdG9yIHsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBtaW4taGVpZ2h0OiAxMjBweDsKICAgICAgICBwYWRkaW5nOiAxMnB4OwogICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogICAgICAgIGJvcmRlcjogbm9uZTsKICAgICAgICBvdXRsaW5lOiBub25lOwogICAgICAgIHJlc2l6ZTogbm9uZTsKICAgICAgICBmb250LWZhbWlseTogJ01vbmFjbycsICdDb25zb2xhcycsICdDb3VyaWVyIE5ldycsIG1vbm9zcGFjZTsKICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMxZjI5MzciLCIjZjNmNGY2Iil9OwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgIH0KICAgICAgCiAgICAgIC5odG1sLWVkaXRvcjo6cGxhY2Vob2xkZXIgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzljYTNhZiIsIiM2YjcyODAiKX07CiAgICAgIH0KICAgICAgCiAgICAgIC8qIFByZXZpZXcgKi8KICAgICAgLmh0bWwtcHJldmlldyB7CiAgICAgICAgcGFkZGluZzogMTJweDsKICAgICAgICBtaW4taGVpZ2h0OiA5NnB4OwogICAgICAgIG91dGxpbmU6IG5vbmU7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMWYyOTM3IiwiI2YzZjRmNiIpfTsKICAgICAgfQogICAgICAKICAgICAgLnByZXZpZXctZW1wdHkgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzljYTNhZiIsIiM2YjcyODAiKX07CiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljOwogICAgICB9CiAgICAgIAogICAgICAvKiBTYW5kYm94ZWQgSFRNTCBwcmV2aWV3IHN0eWxlcyAqLwogICAgICAuaHRtbC1wcmV2aWV3ICogewogICAgICAgIG1heC13aWR0aDogMTAwJTsKICAgICAgfQogICAgICAKICAgICAgLmh0bWwtcHJldmlldyBpbWcgewogICAgICAgIGhlaWdodDogYXV0bzsKICAgICAgfQogICAgICAKICAgICAgLmh0bWwtcHJldmlldyBhIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMzYjgyZjYiLCIjNjBhNWZhIil9OwogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICAgICAgfQogICAgICAKICAgICAgLmh0bWwtcHJldmlldyBhOmhvdmVyIHsKICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsKICAgICAgfQogICAgICAKICAgICAgLmh0bWwtcHJldmlldyB0YWJsZSB7CiAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBtYXJnaW46IDhweCAwOwogICAgICB9CiAgICAgIAogICAgICAuaHRtbC1wcmV2aWV3IHRoLAogICAgICAuaHRtbC1wcmV2aWV3IHRkIHsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiMzNzQxNTEiKX07CiAgICAgICAgcGFkZGluZzogOHB4OwogICAgICAgIHRleHQtYWxpZ246IGxlZnQ7CiAgICAgIH0KICAgICAgCiAgICAgIC5odG1sLXByZXZpZXcgdGggewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjlmYWZiIiwiIzFmMjkzNyIpfTsKICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICB9CiAgICAgIAogICAgICAuaHRtbC1wcmV2aWV3IHByZSB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmM2Y0ZjYiLCIjMWYyOTM3Iil9OwogICAgICAgIHBhZGRpbmc6IDEycHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgIG92ZXJmbG93LXg6IGF1dG87CiAgICAgICAgbWFyZ2luOiA4cHggMDsKICAgICAgfQogICAgICAKICAgICAgLmh0bWwtcHJldmlldyBjb2RlIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2YzZjRmNiIsIiMxZjI5MzciKX07CiAgICAgICAgcGFkZGluZzogMnB4IDRweDsKICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7CiAgICAgICAgZm9udC1mYW1pbHk6ICdNb25hY28nLCAnQ29uc29sYXMnLCAnQ291cmllciBOZXcnLCBtb25vc3BhY2U7CiAgICAgICAgZm9udC1zaXplOiAwLjllbTsKICAgICAgfQogICAgICAKICAgICAgLmh0bWwtcHJldmlldyBwcmUgY29kZSB7CiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgICAgcGFkZGluZzogMDsKICAgICAgfQogICAgYH19fSk7dmFyIHljdD1sKCgpPT57Y24oKTtMJHIoKTtEJHIoKTtBJHIoKTtFJHIoKTskJHIoKTtJJHIoKTtOJHIoKTtGJHIoKTtPJHIoKTtSJHIoKTtCJHIoKTtIJHIoKTtxJHIoKX0pO2Z1bmN0aW9uIGokcigpe1FyLnJlZ2lzdGVyKCJkaXZpZGVyIixuZXcgU1opLFFyLnJlZ2lzdGVyKCJwYXJhZ3JhcGgiLG5ldyB4WiksUXIucmVnaXN0ZXIoImhlYWRpbmctMSIsbmV3IFA4KCJoZWFkaW5nLTEiKSksUXIucmVnaXN0ZXIoImhlYWRpbmctMiIsbmV3IFA4KCJoZWFkaW5nLTIiKSksUXIucmVnaXN0ZXIoImhlYWRpbmctMyIsbmV3IFA4KCJoZWFkaW5nLTMiKSksUXIucmVnaXN0ZXIoInF1b3RlIixuZXcgYlopLFFyLnJlZ2lzdGVyKCJjb2RlIixuZXcgdlopLFFyLnJlZ2lzdGVyKCJsaXN0IixuZXcgeVopLFFyLnJlZ2lzdGVyKCJpbWFnZSIsbmV3IHdaKSxRci5yZWdpc3RlcigieW91dHViZSIsbmV3IE1aKSxRci5yZWdpc3RlcigiYXR0YWNobWVudCIsbmV3IGtaKSxRci5yZWdpc3RlcigibWFya2Rvd24iLG5ldyB6WiksUXIucmVnaXN0ZXIoImh0bWwiLG5ldyBDWil9dmFyIHdjdD1sKCgpPT57eWN0KCk7aiRyKCl9KTt2YXIgX1osTWN0PWwoKCk9PntTZSgpO1M4KCk7T28oKTtFOCgpO1psZSgpO19aPWNsYXNze3N0YXRpYyBhc3luYyBzaG93TGFuZ3VhZ2VTZWxlY3Rpb25Nb2RhbCgpe3JldHVybiBuZXcgUHJvbWlzZSh0PT57bGV0IHI9bnVsbDtHdC5jcmVhdGVBbmRTaG93KHtoZWFkaW5nOiJTZWxlY3QgUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UiLGNvbnRlbnQ6U2AKICAgICAgICAgIDxzdHlsZT4KICAgICAgICAgICAgLmxhbmd1YWdlLWNvbnRhaW5lciB7CiAgICAgICAgICAgICAgcGFkZGluZzogMTZweDsKICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA0MDBweDsKICAgICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvOwogICAgICAgICAgICB9CiAgICAgICAgICAgIC5sYW5ndWFnZS1ncmlkIHsKICAgICAgICAgICAgICBkaXNwbGF5OiBncmlkOwogICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDEyMHB4LCAxZnIpKTsKICAgICAgICAgICAgICBnYXA6IDhweDsKICAgICAgICAgICAgfQogICAgICAgICAgICAubGFuZ3VhZ2UtYnV0dG9uIHsKICAgICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDhweDsKICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiMzNzQxNTEiKX07CiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4OwogICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMzc0MTUxIiwiI2U1ZTdlYiIpfTsKICAgICAgICAgICAgfQogICAgICAgICAgICAubGFuZ3VhZ2UtYnV0dG9uOmhvdmVyIHsKICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2Y5ZmFmYiIsIiMxZjI5MzciKX07CiAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiI2QxZDVkYiIsIiM0YjU1NjMiKX07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgLmxhbmd1YWdlLWJ1dHRvbi5zZWxlY3RlZCB7CiAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmM2Y0ZjYiLCIjMzc0MTUxIil9OwogICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoIiM5Y2EzYWYiLCIjNmI3MjgwIil9OwogICAgICAgICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzExMTgyNyIsIiNmOWZhZmIiKX07CiAgICAgICAgICAgIH0KICAgICAgICAgIDwvc3R5bGU+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5ndWFnZS1jb250YWluZXIiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5ndWFnZS1ncmlkIj4KICAgICAgICAgICAgICAke3RoaXMuZ2V0TGFuZ3VhZ2VzKCkubWFwKGE9PlNgCiAgICAgICAgICAgICAgICA8ZGl2IAogICAgICAgICAgICAgICAgICBjbGFzcz0ibGFuZ3VhZ2UtYnV0dG9uICR7cj09PWEudG9Mb3dlckNhc2UoKT8ic2VsZWN0ZWQiOiIifSIgCiAgICAgICAgICAgICAgICAgIEBjbGljaz0iJHsoKT0+e3I9YS50b0xvd2VyQ2FzZSgpO2xldCBpPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImRlZXMtbW9kYWwiKTtpJiZ0eXBlb2YgaS5kZXN0cm95PT0iZnVuY3Rpb24iJiZpLmRlc3Ryb3koKSx0KHIpfX0iPgogICAgICAgICAgICAgICAgICAke2F9CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICBgKX0KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICBgLG1lbnVPcHRpb25zOlt7bmFtZToiQ2FuY2VsIixhY3Rpb246YXN5bmMgYT0+e2EuZGVzdHJveSgpLHQobnVsbCl9fV19KX0pfXN0YXRpYyBhc3luYyBzaG93QmxvY2tTZXR0aW5nc01vZGFsKHQscil7bGV0IGE9U2AKICAgICAgPHN0eWxlPgogICAgICAgIC5zZXR0aW5ncy1jb250YWluZXIgewogICAgICAgICAgcGFkZGluZzogMTZweDsKICAgICAgICB9CiAgICAgICAgLnNldHRpbmdzLXNlY3Rpb24gewogICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDsKICAgICAgICB9CiAgICAgICAgLnNldHRpbmdzLXNlY3Rpb246bGFzdC1jaGlsZCB7CiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOwogICAgICAgIH0KICAgICAgICAuc2V0dGluZ3MtbGFiZWwgewogICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweDsKICAgICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzZiNzI4MCIsIiM5Y2EzYWYiKX07CiAgICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwogICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTsKICAgICAgICB9CiAgICAgICAgLmJsb2NrLXR5cGUtZ3JpZCB7CiAgICAgICAgICBkaXNwbGF5OiBncmlkOwogICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoMTYwcHgsIDFmcikpOwogICAgICAgICAgZ2FwOiA4cHg7CiAgICAgICAgfQogICAgICAgIC5ibG9jay10eXBlLWJ1dHRvbiB7CiAgICAgICAgICBwYWRkaW5nOiAxMnB4OwogICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiMzNzQxNTEiKX07CiAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OwogICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICAgIGdhcDogOHB4OwogICAgICAgICAgZm9udC1zaXplOiAxM3B4OwogICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMzc0MTUxIiwiI2U1ZTdlYiIpfTsKICAgICAgICB9CiAgICAgICAgLmJsb2NrLXR5cGUtYnV0dG9uOmhvdmVyIHsKICAgICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjlmYWZiIiwiIzFmMjkzNyIpfTsKICAgICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoIiNkMWQ1ZGIiLCIjNGI1NTYzIil9OwogICAgICAgIH0KICAgICAgICAuYmxvY2stdHlwZS1idXR0b24uc2VsZWN0ZWQgewogICAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmM2Y0ZjYiLCIjMzc0MTUxIil9OwogICAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiIzljYTNhZiIsIiM2YjcyODAiKX07CiAgICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMxMTE4MjciLCIjZjlmYWZiIil9OwogICAgICAgIH0KICAgICAgICAuYmxvY2stdHlwZS1pY29uIHsKICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgICBmb250LXNpemU6IDE2cHg7CiAgICAgICAgICB3aWR0aDogMjBweDsKICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgICAgICAgb3BhY2l0eTogMC43OwogICAgICAgIH0KICAgICAgPC9zdHlsZT4KICAgICAgPGRpdiBjbGFzcz0ic2V0dGluZ3MtY29udGFpbmVyIj4KICAgICAgICAke3RoaXMuZ2V0QmxvY2tUeXBlU2VsZWN0b3IodCxyKX0KICAgICAgICAke3QudHlwZT09PSJjb2RlIj90aGlzLmdldENvZGVCbG9ja1NldHRpbmdzKHQscik6IiJ9CiAgICAgIDwvZGl2PgogICAgYDtHdC5jcmVhdGVBbmRTaG93KHtoZWFkaW5nOiJCbG9jayBTZXR0aW5ncyIsY29udGVudDphLG1lbnVPcHRpb25zOlt7bmFtZToiRG9uZSIsYWN0aW9uOmFzeW5jIGk9PntpLmRlc3Ryb3koKX19XX0pfXN0YXRpYyBnZXRDb2RlQmxvY2tTZXR0aW5ncyh0LHIpe2xldCBhPXQubWV0YWRhdGE/Lmxhbmd1YWdlfHwiamF2YXNjcmlwdCI7cmV0dXJuIFNgCiAgICAgIDxzdHlsZT4KICAgICAgICAubGFuZ3VhZ2UtZ3JpZCB7CiAgICAgICAgICBkaXNwbGF5OiBncmlkOwogICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoMTAwcHgsIDFmcikpOwogICAgICAgICAgZ2FwOiA2cHg7CiAgICAgICAgfQogICAgICAgIC5sYW5ndWFnZS1idXR0b24gewogICAgICAgICAgcGFkZGluZzogOHB4IDRweDsKICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjMzc0MTUxIil9OwogICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMzNzQxNTEiLCIjZTVlN2ViIil9OwogICAgICAgIH0KICAgICAgICAubGFuZ3VhZ2UtYnV0dG9uOmhvdmVyIHsKICAgICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjlmYWZiIiwiIzFmMjkzNyIpfTsKICAgICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoIiNkMWQ1ZGIiLCIjNGI1NTYzIil9OwogICAgICAgIH0KICAgICAgICAubGFuZ3VhZ2UtYnV0dG9uLnNlbGVjdGVkIHsKICAgICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjNmNGY2IiwiIzM3NDE1MSIpfTsKICAgICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoIiM5Y2EzYWYiLCIjNmI3MjgwIil9OwogICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMTExODI3IiwiI2Y5ZmFmYiIpfTsKICAgICAgICB9CiAgICAgIDwvc3R5bGU+CiAgICAgIDxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24iPgogICAgICAgIDxkaXYgY2xhc3M9InNldHRpbmdzLWxhYmVsIj5Qcm9ncmFtbWluZyBMYW5ndWFnZTwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9Imxhbmd1YWdlLWdyaWQiPgogICAgICAgICAgJHt0aGlzLmdldExhbmd1YWdlcygpLm1hcChpPT5TYAogICAgICAgICAgICA8ZGl2IAogICAgICAgICAgICAgIGNsYXNzPSJsYW5ndWFnZS1idXR0b24gJHthPT09aS50b0xvd2VyQ2FzZSgpPyJzZWxlY3RlZCI6IiJ9IiAKICAgICAgICAgICAgICBAY2xpY2s9IiR7KCk9Pnt0Lm1ldGFkYXRhfHwodC5tZXRhZGF0YT17fSksdC5tZXRhZGF0YS5sYW5ndWFnZT1pLnRvTG93ZXJDYXNlKCkscih0KTtsZXQgbz1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJkZWVzLW1vZGFsIik7byYmdHlwZW9mIG8uZGVzdHJveT09ImZ1bmN0aW9uIiYmby5kZXN0cm95KCl9fSIKICAgICAgICAgICAgICBkYXRhLWxhbmc9IiR7aX0iCiAgICAgICAgICAgID4ke2l9PC9kaXY+CiAgICAgICAgICBgKX0KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICBgfXN0YXRpYyBnZXRMYW5ndWFnZXMoKXtyZXR1cm5bLi4ubVpdfXN0YXRpYyBnZXRCbG9ja1R5cGVTZWxlY3Rvcih0LHIpe2xldCBhPW9pLmdldFNsYXNoTWVudUl0ZW1zKCkuZmlsdGVyKGk9PmkudHlwZSE9PSJkaXZpZGVyIik7cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24iPgogICAgICAgIDxkaXYgY2xhc3M9InNldHRpbmdzLWxhYmVsIj5CbG9jayBUeXBlPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iYmxvY2stdHlwZS1ncmlkIj4KICAgICAgICAgICR7YS5tYXAoaT0+U2AKICAgICAgICAgICAgPGRpdiAKICAgICAgICAgICAgICBjbGFzcz0iYmxvY2stdHlwZS1idXR0b24gJHt0LnR5cGU9PT1pLnR5cGU/InNlbGVjdGVkIjoiIn0iCiAgICAgICAgICAgICAgQGNsaWNrPSIke2FzeW5jIG89PntsZXQgbj1vLmN1cnJlbnRUYXJnZXQscz10LnR5cGU7aWYodC50eXBlPWkudHlwZSxzPT09ImNvZGUiJiZ0LnR5cGUhPT0iY29kZSIpZGVsZXRlIHQubWV0YWRhdGE/Lmxhbmd1YWdlO2Vsc2UgaWYocz09PSJsaXN0IiYmdC50eXBlIT09Imxpc3QiKWRlbGV0ZSB0Lm1ldGFkYXRhPy5saXN0VHlwZTtlbHNlIGlmKHQudHlwZT09PSJsaXN0IiYmIXQubWV0YWRhdGE/Lmxpc3RUeXBlKXQubWV0YWRhdGE9e2xpc3RUeXBlOiJidWxsZXQifTtlbHNlIGlmKHQudHlwZT09PSJjb2RlIiYmIXQubWV0YWRhdGE/Lmxhbmd1YWdlKXtsZXQgZD1hd2FpdCB0aGlzLnNob3dMYW5ndWFnZVNlbGVjdGlvbk1vZGFsKCk7aWYoZCl0Lm1ldGFkYXRhPXtsYW5ndWFnZTpkfTtlbHNle3QudHlwZT1zO3JldHVybn19cih0KTtsZXQgYz1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJkZWVzLW1vZGFsIik7YyYmdHlwZW9mIGMuZGVzdHJveT09ImZ1bmN0aW9uIiYmYy5kZXN0cm95KCl9fSIKICAgICAgICAgICAgPgogICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJibG9jay10eXBlLWljb24iPiR7aS5pY29ufTwvc3Bhbj4KICAgICAgICAgICAgICA8c3Bhbj4ke2kubGFiZWx9PC9zcGFuPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIGApfQogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIGB9fX0pO3ZhciBUWixWJHI9bCgoKT0+e09vKCk7WTkoKTtFOCgpO0JjKCk7YmN0KCk7TWN0KCk7VFo9Y2xhc3N7Y29tcG9uZW50O3NhdmVUaW1lb3V0PW51bGw7Y29uc3RydWN0b3IodCl7dGhpcy5jb21wb25lbnQ9dH1oYW5kbGVCbG9ja0lucHV0KHQscil7aWYodGhpcy5jb21wb25lbnQuaXNDb21wb3NpbmcpcmV0dXJuO2xldCBhPXQudGFyZ2V0LGk9YS50ZXh0Q29udGVudHx8IiIsbz10aGlzLmRldGVjdEJsb2NrVHlwZUludGVudChpKTtpZihvJiZvLnR5cGUhPT1yLnR5cGUpe3QucHJldmVudERlZmF1bHQoKSx0aGlzLmhhbmRsZUJsb2NrVHJhbnNmb3JtYXRpb24ocixvLGEpO3JldHVybn10aGlzLmhhbmRsZVNsYXNoQ29tbWFuZChpLGEpLHRoaXMuc2NoZWR1bGVBdXRvU2F2ZSgpfXVwZGF0ZUJsb2NrQ29udGVudCh0LHIpe2xldCBpPXIuY2xvc2VzdCgiLmJsb2NrLXdyYXBwZXIiKT8ucXVlcnlTZWxlY3RvcigiZGVlcy13eXNpd3lnLWJsb2NrIik7aWYoaSl7bGV0IG89aS5nZXRDb250ZW50KCk7aWYodC5jb250ZW50IT09byYmKHQuY29udGVudD1vKSx0LnR5cGU9PT0ibGlzdCIpe2xldCBuPXIucXVlcnlTZWxlY3Rvcigib2wsIHVsIik7biYmKHQubWV0YWRhdGE9e2xpc3RUeXBlOm4udGFnTmFtZS50b0xvd2VyQ2FzZSgpPT09Im9sIj8ib3JkZXJlZCI6ImJ1bGxldCJ9KX19ZWxzZSBpZih0LnR5cGU9PT0ibGlzdCIpe2xldCBvPXIucXVlcnlTZWxlY3RvckFsbCgibGkiKTt0LmNvbnRlbnQ9QXJyYXkuZnJvbShvKS5tYXAocz0+cy5pbm5lckhUTUx8fCIiKS5qb2luKGAKYCk7bGV0IG49ci5xdWVyeVNlbGVjdG9yKCJvbCwgdWwiKTtuJiYodC5tZXRhZGF0YT17bGlzdFR5cGU6bi50YWdOYW1lLnRvTG93ZXJDYXNlKCk9PT0ib2wiPyJvcmRlcmVkIjoiYnVsbGV0In0pfWVsc2UgdC50eXBlPT09ImNvZGUiP3QuY29udGVudD1yLnRleHRDb250ZW50fHwiIjp0LmNvbnRlbnQ9ci5pbm5lckhUTUx8fCIifWRldGVjdEJsb2NrVHlwZUludGVudCh0KXtsZXQgcj1vaS5jaGVja0hlYWRpbmdTaG9ydGN1dCh0KTtpZihyKXJldHVybiByO2xldCBhPW9pLmNoZWNrTGlzdFNob3J0Y3V0KHQpO3JldHVybiBhfHwob2kuY2hlY2tRdW90ZVNob3J0Y3V0KHQpP3t0eXBlOiJxdW90ZSJ9Om9pLmNoZWNrQ29kZVNob3J0Y3V0KHQpP3t0eXBlOiJjb2RlIn06b2kuY2hlY2tEaXZpZGVyU2hvcnRjdXQodCk/e3R5cGU6ImRpdmlkZXIifTpudWxsKX1hc3luYyBoYW5kbGVCbG9ja1RyYW5zZm9ybWF0aW9uKHQscixhKXtsZXQgaT10aGlzLmNvbXBvbmVudC5ibG9ja09wZXJhdGlvbnM7aWYoci50eXBlPT09Imxpc3QiKXt0LnR5cGU9Imxpc3QiLHQuY29udGVudD0iIix0Lm1ldGFkYXRhPXtsaXN0VHlwZTpyLmxpc3RUeXBlfTtsZXQgbz1yLmxpc3RUeXBlPT09Im9yZGVyZWQiPyJvbCI6InVsIjthLmlubmVySFRNTD1gPCR7b30+PGxpPjwvbGk+PC8ke299PmAsdGhpcy5jb21wb25lbnQudXBkYXRlVmFsdWUoKSx0aGlzLmNvbXBvbmVudC5lZGl0b3JDb250ZW50UmVmJiZ0aGlzLmNvbXBvbmVudC51cGRhdGVCbG9ja0VsZW1lbnQodC5pZCksc2V0VGltZW91dCgoKT0+e2cxLmZvY3VzTGlzdEl0ZW0oYSl9LDApfWVsc2UgaWYoci50eXBlPT09ImRpdmlkZXIiKXt0LnR5cGU9ImRpdmlkZXIiLHQuY29udGVudD0iICIsdGhpcy5jb21wb25lbnQuZWRpdG9yQ29udGVudFJlZiYmdGhpcy5jb21wb25lbnQudXBkYXRlQmxvY2tFbGVtZW50KHQuaWQpO2xldCBvPWkuY3JlYXRlQmxvY2soKTtpLmluc2VydEJsb2NrQWZ0ZXIodCxvKSx0aGlzLmNvbXBvbmVudC51cGRhdGVWYWx1ZSgpfWVsc2UgaWYoci50eXBlPT09ImNvZGUiKXtsZXQgbz1hd2FpdCBfWi5zaG93TGFuZ3VhZ2VTZWxlY3Rpb25Nb2RhbCgpO28mJih0LnR5cGU9ImNvZGUiLHQuY29udGVudD0iIix0Lm1ldGFkYXRhPXtsYW5ndWFnZTpvfSxhLnRleHRDb250ZW50PSIiLHRoaXMuY29tcG9uZW50LnVwZGF0ZVZhbHVlKCksdGhpcy5jb21wb25lbnQuZWRpdG9yQ29udGVudFJlZiYmdGhpcy5jb21wb25lbnQudXBkYXRlQmxvY2tFbGVtZW50KHQuaWQpLHNldFRpbWVvdXQoYXN5bmMoKT0+e2F3YWl0IGkuZm9jdXNCbG9jayh0LmlkLCJzdGFydCIpfSw1MCkpfWVsc2UgdC50eXBlPXIudHlwZSx0LmNvbnRlbnQ9IiIsYS50ZXh0Q29udGVudD0iIix0aGlzLmNvbXBvbmVudC51cGRhdGVWYWx1ZSgpLHRoaXMuY29tcG9uZW50LmVkaXRvckNvbnRlbnRSZWYmJnRoaXMuY29tcG9uZW50LnVwZGF0ZUJsb2NrRWxlbWVudCh0LmlkKSxzZXRUaW1lb3V0KGFzeW5jKCk9Pnthd2FpdCBpLmZvY3VzQmxvY2sodC5pZCwic3RhcnQiKX0sNTApfWhhbmRsZVNsYXNoQ29tbWFuZCh0LHIpe2xldCBhPXRoaXMuY29tcG9uZW50LnNsYXNoTWVudSxpPWEmJmEudmlzaWJsZTtpZih0PT09Ii8ifHx0LnN0YXJ0c1dpdGgoIi8iKSYmaSl7aWYoIWkmJnQ9PT0iLyIpe2xldCBvPXRoaXMuZ2V0Q2FyZXRDb29yZGluYXRlcyhyKTthLnNob3coe3g6by5sZWZ0LHk6by5ib3R0b20rNH0sbj0+e3RoaXMuY29tcG9uZW50Lmluc2VydEJsb2NrKG4pfSkscmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57ZG9jdW1lbnQuYWN0aXZlRWxlbWVudCE9PXImJnIuZm9jdXMoKX0pfWEmJmEudXBkYXRlRmlsdGVyKHQuc2xpY2UoMSkpfWVsc2UgdC5zdGFydHNXaXRoKCIvIil8fHRoaXMuY29tcG9uZW50LmNsb3NlU2xhc2hNZW51KCl9Z2V0Q2FyZXRDb29yZGluYXRlcyh0KXtsZXQgcj13aW5kb3cuZ2V0U2VsZWN0aW9uKCk7aWYociYmci5yYW5nZUNvdW50PjApe2xldCBpPXIuZ2V0UmFuZ2VBdCgwKS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtpZihpLndpZHRoPjB8fGkuaGVpZ2h0PjApcmV0dXJuIGl9cmV0dXJuIHQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCl9c2NoZWR1bGVBdXRvU2F2ZSgpe3RoaXMuc2F2ZVRpbWVvdXQmJmNsZWFyVGltZW91dCh0aGlzLnNhdmVUaW1lb3V0KSwhKHRoaXMuY29tcG9uZW50LnNsYXNoTWVudSYmdGhpcy5jb21wb25lbnQuc2xhc2hNZW51LnZpc2libGUpJiYodGhpcy5zYXZlVGltZW91dD1zZXRUaW1lb3V0KCgpPT57dGhpcy5zeW5jQWxsQmxvY2tDb250ZW50KCksdGhpcy5jb21wb25lbnQudXBkYXRlVmFsdWUoKX0sMmUzKSl9c3luY0FsbEJsb2NrQ29udGVudCgpe3RoaXMuY29tcG9uZW50LmJsb2Nrcy5mb3JFYWNoKHQ9PntsZXQgYT10aGlzLmNvbXBvbmVudC5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKGBbZGF0YS1ibG9jay1pZD0iJHt0LmlkfSJdYCk/LnF1ZXJ5U2VsZWN0b3IoImRlZXMtd3lzaXd5Zy1ibG9jayIpO2lmKGEmJmEuZ2V0Q29udGVudCl7bGV0IGk9YS5nZXRDb250ZW50KCk7dC5jb250ZW50IT09aSYmKHQuY29udGVudD1pKX19KX1kZXN0cm95KCl7dGhpcy5zYXZlVGltZW91dCYmY2xlYXJUaW1lb3V0KHRoaXMuc2F2ZVRpbWVvdXQpfX19KTt2YXIgTFosVSRyPWwoKCk9PntPbygpO1k5KCk7dWwoKTtMWj1jbGFzc3tjb21wb25lbnQ7Y29uc3RydWN0b3IodCl7dGhpcy5jb21wb25lbnQ9dH1hc3luYyBoYW5kbGVCbG9ja0tleURvd24odCxyKXtpZih0aGlzLmNvbXBvbmVudC5zbGFzaE1lbnUudmlzaWJsZSYmdGhpcy5pc1NsYXNoTWVudUtleSh0LmtleSkpe3RoaXMuY29tcG9uZW50LmhhbmRsZVNsYXNoTWVudUtleWJvYXJkKHQpO3JldHVybn1pZighdGhpcy5oYW5kbGVGb3JtYXR0aW5nU2hvcnRjdXRzKHQpKXN3aXRjaCh0LmtleSl7Y2FzZSJUYWIiOnRoaXMuaGFuZGxlVGFiKHQscik7YnJlYWs7Y2FzZSJFbnRlciI6YXdhaXQgdGhpcy5oYW5kbGVFbnRlcih0LHIpO2JyZWFrO2Nhc2UiQmFja3NwYWNlIjphd2FpdCB0aGlzLmhhbmRsZUJhY2tzcGFjZSh0LHIpO2JyZWFrO2Nhc2UiRGVsZXRlIjphd2FpdCB0aGlzLmhhbmRsZURlbGV0ZSh0LHIpO2JyZWFrO2Nhc2UiQXJyb3dVcCI6YXdhaXQgdGhpcy5oYW5kbGVBcnJvd1VwKHQscik7YnJlYWs7Y2FzZSJBcnJvd0Rvd24iOmF3YWl0IHRoaXMuaGFuZGxlQXJyb3dEb3duKHQscik7YnJlYWs7Y2FzZSJBcnJvd0xlZnQiOmF3YWl0IHRoaXMuaGFuZGxlQXJyb3dMZWZ0KHQscik7YnJlYWs7Y2FzZSJBcnJvd1JpZ2h0Ijphd2FpdCB0aGlzLmhhbmRsZUFycm93UmlnaHQodCxyKTticmVha319aXNTbGFzaE1lbnVLZXkodCl7cmV0dXJuWyJBcnJvd0Rvd24iLCJBcnJvd1VwIiwiRW50ZXIiLCJFc2NhcGUiXS5pbmNsdWRlcyh0KX1oYW5kbGVGb3JtYXR0aW5nU2hvcnRjdXRzKHQpe2lmKCEodC5tZXRhS2V5fHx0LmN0cmxLZXkpKXJldHVybiExO3N3aXRjaCh0LmtleS50b0xvd2VyQ2FzZSgpKXtjYXNlImIiOnJldHVybiB0LnByZXZlbnREZWZhdWx0KCksUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKT0+dGhpcy5jb21wb25lbnQuYXBwbHlGb3JtYXQoImJvbGQiKSksITA7Y2FzZSJpIjpyZXR1cm4gdC5wcmV2ZW50RGVmYXVsdCgpLFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCk9PnRoaXMuY29tcG9uZW50LmFwcGx5Rm9ybWF0KCJpdGFsaWMiKSksITA7Y2FzZSJ1IjpyZXR1cm4gdC5wcmV2ZW50RGVmYXVsdCgpLFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCk9PnRoaXMuY29tcG9uZW50LmFwcGx5Rm9ybWF0KCJ1bmRlcmxpbmUiKSksITA7Y2FzZSJrIjpyZXR1cm4gdC5wcmV2ZW50RGVmYXVsdCgpLFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCk9PnRoaXMuY29tcG9uZW50LmFwcGx5Rm9ybWF0KCJsaW5rIikpLCEwfXJldHVybiExfWhhbmRsZVRhYih0LHIpe3IudHlwZSE9PSJjb2RlIiYmci50eXBlPT09Imxpc3QiJiZ0LnByZXZlbnREZWZhdWx0KCl9YXN5bmMgaGFuZGxlRW50ZXIodCxyKXtsZXQgYT10aGlzLmNvbXBvbmVudC5ibG9ja09wZXJhdGlvbnM7aWYoWyJkaXZpZGVyIiwiaW1hZ2UiLCJ5b3V0dWJlIiwiYXR0YWNobWVudCJdLmluY2x1ZGVzKHIudHlwZSkpe3QucHJldmVudERlZmF1bHQoKTtsZXQgbz1hLmNyZWF0ZUJsb2NrKCk7YXdhaXQgYS5pbnNlcnRCbG9ja0FmdGVyKHIsbyk7cmV0dXJufWlmKHIudHlwZT09PSJjb2RlIil7aWYodC5zaGlmdEtleSl7dC5wcmV2ZW50RGVmYXVsdCgpO2xldCBvPWEuY3JlYXRlQmxvY2soKTthd2FpdCBhLmluc2VydEJsb2NrQWZ0ZXIocixvKX1yZXR1cm59aWYoIXQuc2hpZnRLZXkpaWYoci50eXBlPT09Imxpc3QiKWF3YWl0IHRoaXMuaGFuZGxlRW50ZXJJbkxpc3QodCxyKTtlbHNle3QucHJldmVudERlZmF1bHQoKTtsZXQgbj10aGlzLmNvbXBvbmVudC5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKGBbZGF0YS1ibG9jay1pZD0iJHtyLmlkfSJdYCk/LnF1ZXJ5U2VsZWN0b3IoImRlZXMtd3lzaXd5Zy1ibG9jayIpO2lmKG4mJm4uZ2V0U3BsaXRDb250ZW50KXtsZXQgcz1uLmdldFNwbGl0Q29udGVudCgpO2lmKHMpe24uc2V0Q29udGVudChzLmJlZm9yZSksci5jb250ZW50PXMuYmVmb3JlO2xldCBjPWEuY3JlYXRlQmxvY2soInBhcmFncmFwaCIscy5hZnRlcik7YXdhaXQgYS5pbnNlcnRCbG9ja0FmdGVyKHIsYyksdGhpcy5jb21wb25lbnQudXBkYXRlVmFsdWUoKX1lbHNle2xldCBjPWEuY3JlYXRlQmxvY2soKTthd2FpdCBhLmluc2VydEJsb2NrQWZ0ZXIocixjKX19ZWxzZXtsZXQgcz1hLmNyZWF0ZUJsb2NrKCk7YXdhaXQgYS5pbnNlcnRCbG9ja0FmdGVyKHIscyl9fX1hc3luYyBoYW5kbGVFbnRlckluTGlzdCh0LHIpe2xldCBhPXdpbmRvdy5nZXRTZWxlY3Rpb24oKTtpZihhJiZhLnJhbmdlQ291bnQ+MCl7bGV0IG89YS5nZXRSYW5nZUF0KDApLnN0YXJ0Q29udGFpbmVyLnBhcmVudEVsZW1lbnQ/LmNsb3Nlc3QoImxpIik7aWYobyYmby50ZXh0Q29udGVudD09PSIiKXt0LnByZXZlbnREZWZhdWx0KCk7bGV0IG49dGhpcy5jb21wb25lbnQuYmxvY2tPcGVyYXRpb25zLHM9bi5jcmVhdGVCbG9jaygpO2F3YWl0IG4uaW5zZXJ0QmxvY2tBZnRlcihyLHMpfX19YXN5bmMgaGFuZGxlQmFja3NwYWNlKHQscil7bGV0IGE9dGhpcy5jb21wb25lbnQuYmxvY2tPcGVyYXRpb25zO2lmKFsiZGl2aWRlciIsImltYWdlIiwieW91dHViZSIsImF0dGFjaG1lbnQiXS5pbmNsdWRlcyhyLnR5cGUpKXtpZih0LnByZXZlbnREZWZhdWx0KCksdGhpcy5jb21wb25lbnQuYmxvY2tzLmxlbmd0aD09PTEpe3RoaXMuY29tcG9uZW50LnNhdmVUb0hpc3RvcnkoITEpLGEucmVtb3ZlQmxvY2soci5pZCk7bGV0IGI9YS5jcmVhdGVCbG9jaygicGFyYWdyYXBoIiwiIik7dGhpcy5jb21wb25lbnQuYmxvY2tzPVtiXSx0aGlzLmNvbXBvbmVudC5yZW5kZXJCbG9ja3NQcm9ncmFtbWF0aWNhbGx5KCksYXdhaXQgYS5mb2N1c0Jsb2NrKGIuaWQsInN0YXJ0IiksdGhpcy5jb21wb25lbnQudXBkYXRlVmFsdWUoKTtyZXR1cm59dGhpcy5jb21wb25lbnQuc2F2ZVRvSGlzdG9yeSghMSk7bGV0IHA9YS5nZXRQcmV2aW91c0Jsb2NrKHIuaWQpLGg9YS5nZXROZXh0QmxvY2soci5pZCk7YS5yZW1vdmVCbG9jayhyLmlkKSxwJiZwLnR5cGUhPT0iZGl2aWRlciImJnAudHlwZSE9PSJpbWFnZSI/YXdhaXQgYS5mb2N1c0Jsb2NrKHAuaWQsImVuZCIpOmgmJmgudHlwZSE9PSJkaXZpZGVyIiYmaC50eXBlIT09ImltYWdlIj9hd2FpdCBhLmZvY3VzQmxvY2soaC5pZCwic3RhcnQiKTpwP2F3YWl0IGEuZm9jdXNCbG9jayhwLmlkKTpoJiZhd2FpdCBhLmZvY3VzQmxvY2soaC5pZCk7cmV0dXJufWxldCBuPXRoaXMuY29tcG9uZW50LnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoYFtkYXRhLWJsb2NrLWlkPSIke3IuaWR9Il1gKT8ucXVlcnlTZWxlY3RvcigiZGVlcy13eXNpd3lnLWJsb2NrIik7aWYoIW58fCFuLnNoYWRvd1Jvb3QpcmV0dXJuO2xldCBzPXIudHlwZT09PSJjb2RlIj9uLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcigiLmNvZGUtZWRpdG9yIik6bi5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoIi5ibG9jayIpO2lmKCFzKXJldHVybjtsZXQgYz1uLmNsb3Nlc3QoImRlZXMtaW5wdXQtd3lzaXd5ZyIpLGQ9W107Yz8uc2hhZG93Um9vdCYmZC5wdXNoKGMuc2hhZG93Um9vdCksZC5wdXNoKG4uc2hhZG93Um9vdCk7bGV0IGY9cnQuZ2V0Q3Vyc29yUG9zaXRpb25JbkVsZW1lbnQocywuLi5kKSx1PW4uZ2V0Q29udGVudD9uLmdldENvbnRlbnQoKTpzLnRleHRDb250ZW50O2lmKGY9PT0wKXt0LnByZXZlbnREZWZhdWx0KCk7bGV0IHA9YS5nZXRQcmV2aW91c0Jsb2NrKHIuaWQpO2lmKHApe2lmKFsiZGl2aWRlciIsImltYWdlIiwieW91dHViZSIsImF0dGFjaG1lbnQiXS5pbmNsdWRlcyhwLnR5cGUpKXthd2FpdCBhLmZvY3VzQmxvY2socC5pZCk7cmV0dXJufWlmKHRoaXMuY29tcG9uZW50LnNhdmVUb0hpc3RvcnkoITEpLHAudHlwZT09PSJjb2RlIiYmci50eXBlIT09ImNvZGUiKXtyLmNvbnRlbnQ9PT0iIiYmKGEucmVtb3ZlQmxvY2soci5pZCksYXdhaXQgYS5mb2N1c0Jsb2NrKHAuaWQsImVuZCIpKTtyZXR1cm59aWYoci50eXBlPT09ImNvZGUiJiZwLnR5cGUhPT0iY29kZSIpe2xldCBGPW4uZ2V0Q29udGVudD9uLmdldENvbnRlbnQoKTpyLmNvbnRlbnQ7KEY9PT0iInx8Ri50cmltKCk9PT0iIikmJihhLnJlbW92ZUJsb2NrKHIuaWQpLGF3YWl0IGEuZm9jdXNCbG9jayhwLmlkLCJlbmQiKSk7cmV0dXJufWxldCB4PXRoaXMuY29tcG9uZW50LnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoYFtkYXRhLWJsb2NrLWlkPSIke3AuaWR9Il1gKT8ucXVlcnlTZWxlY3RvcigiZGVlcy13eXNpd3lnLWJsb2NrIiksZz14Py5nZXRDb250ZW50KCl8fHAuY29udGVudHx8IiIsdj1uLmdldENvbnRlbnQoKXx8ci5jb250ZW50fHwiIix3PSIiO3AudHlwZT09PSJjb2RlIiYmci50eXBlPT09ImNvZGUifHxwLnR5cGU9PT0ibGlzdCImJnIudHlwZT09PSJsaXN0Ij93PWcrKGcmJnY/YApgOiIiKSt2Onc9ZysoZyYmdj8iICI6IiIpK3Y7bGV0IE09Zy5sZW5ndGg7YS51cGRhdGVCbG9ja0NvbnRlbnQocC5pZCx3KSx4JiZ4LnNldENvbnRlbnQodyksYS5yZW1vdmVCbG9jayhyLmlkKSxhd2FpdCBhLmZvY3VzQmxvY2socC5pZCxNKX19ZWxzZSBpZih0aGlzLmNvbXBvbmVudC5ibG9ja3MubGVuZ3RoPjEpe2xldCBwPW4uZ2V0Q29udGVudD9uLmdldENvbnRlbnQoKTpyLmNvbnRlbnQ7aWYocD09PSIifHxwLnRyaW0oKT09PSIiKXt0LnByZXZlbnREZWZhdWx0KCk7bGV0IGg9YS5nZXRQcmV2aW91c0Jsb2NrKHIuaWQpO2gmJihhLnJlbW92ZUJsb2NrKHIuaWQpLGgudHlwZSE9PSJkaXZpZGVyIiYmYXdhaXQgYS5mb2N1c0Jsb2NrKGguaWQsImVuZCIpKX19fWFzeW5jIGhhbmRsZURlbGV0ZSh0LHIpe2xldCBhPXRoaXMuY29tcG9uZW50LmJsb2NrT3BlcmF0aW9ucztpZihbImRpdmlkZXIiLCJpbWFnZSIsInlvdXR1YmUiLCJhdHRhY2htZW50Il0uaW5jbHVkZXMoci50eXBlKSl7aWYodC5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuY29tcG9uZW50LmJsb2Nrcy5sZW5ndGg9PT0xKXt0aGlzLmNvbXBvbmVudC5zYXZlVG9IaXN0b3J5KCExKSxhLnJlbW92ZUJsb2NrKHIuaWQpO2xldCB4PWEuY3JlYXRlQmxvY2soInBhcmFncmFwaCIsIiIpO3RoaXMuY29tcG9uZW50LmJsb2Nrcz1beF0sdGhpcy5jb21wb25lbnQucmVuZGVyQmxvY2tzUHJvZ3JhbW1hdGljYWxseSgpLGF3YWl0IGEuZm9jdXNCbG9jayh4LmlkLCJzdGFydCIpLHRoaXMuY29tcG9uZW50LnVwZGF0ZVZhbHVlKCk7cmV0dXJufXRoaXMuY29tcG9uZW50LnNhdmVUb0hpc3RvcnkoITEpO2xldCBwPWEuZ2V0UHJldmlvdXNCbG9jayhyLmlkKSxoPWEuZ2V0TmV4dEJsb2NrKHIuaWQpO2EucmVtb3ZlQmxvY2soci5pZCk7bGV0IGI9WyJkaXZpZGVyIiwiaW1hZ2UiLCJ5b3V0dWJlIiwiYXR0YWNobWVudCJdO2gmJiFiLmluY2x1ZGVzKGgudHlwZSk/YXdhaXQgYS5mb2N1c0Jsb2NrKGguaWQsInN0YXJ0Iik6cCYmIWIuaW5jbHVkZXMocC50eXBlKT9hd2FpdCBhLmZvY3VzQmxvY2socC5pZCwiZW5kIik6aD9hd2FpdCBhLmZvY3VzQmxvY2soaC5pZCk6cCYmYXdhaXQgYS5mb2N1c0Jsb2NrKHAuaWQpO3JldHVybn1sZXQgbj10aGlzLmNvbXBvbmVudC5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKGBbZGF0YS1ibG9jay1pZD0iJHtyLmlkfSJdYCk/LnF1ZXJ5U2VsZWN0b3IoImRlZXMtd3lzaXd5Zy1ibG9jayIpO2lmKCFufHwhbi5zaGFkb3dSb290KXJldHVybjtsZXQgcz1yLnR5cGU9PT0iY29kZSI/bi5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoIi5jb2RlLWVkaXRvciIpOm4uc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCIuYmxvY2siKTtpZighcylyZXR1cm47bGV0IGM9bi5jbG9zZXN0KCJkZWVzLWlucHV0LXd5c2l3eWciKSxkPVtdO2M/LnNoYWRvd1Jvb3QmJmQucHVzaChjLnNoYWRvd1Jvb3QpLGQucHVzaChuLnNoYWRvd1Jvb3QpO2xldCBmPXJ0LmdldEN1cnNvclBvc2l0aW9uSW5FbGVtZW50KHMsLi4uZCksdT1zLnRleHRDb250ZW50Py5sZW5ndGh8fDA7aWYoZj09PXUpe2xldCBwPWEuZ2V0TmV4dEJsb2NrKHIuaWQpO2lmKHAmJlsiZGl2aWRlciIsImltYWdlIiwieW91dHViZSIsImF0dGFjaG1lbnQiXS5pbmNsdWRlcyhwLnR5cGUpKXt0LnByZXZlbnREZWZhdWx0KCksYXdhaXQgYS5mb2N1c0Jsb2NrKHAuaWQpO3JldHVybn19fWFzeW5jIGhhbmRsZUFycm93VXAodCxyKXtsZXQgYT1bImRpdmlkZXIiLCJpbWFnZSIsInlvdXR1YmUiLCJhdHRhY2htZW50Il07aWYoYS5pbmNsdWRlcyhyLnR5cGUpKXt0LnByZXZlbnREZWZhdWx0KCk7bGV0IGY9dGhpcy5jb21wb25lbnQuYmxvY2tPcGVyYXRpb25zLHU9Zi5nZXRQcmV2aW91c0Jsb2NrKHIuaWQpO3UmJmF3YWl0IGYuZm9jdXNCbG9jayh1LmlkLGEuaW5jbHVkZXModS50eXBlKT92b2lkIDA6ImVuZCIpO3JldHVybn1sZXQgbz10aGlzLmNvbXBvbmVudC5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKGBbZGF0YS1ibG9jay1pZD0iJHtyLmlkfSJdYCk/LnF1ZXJ5U2VsZWN0b3IoImRlZXMtd3lzaXd5Zy1ibG9jayIpO2lmKCFvfHwhby5zaGFkb3dSb290KXJldHVybjtsZXQgbj1yLnR5cGU9PT0iY29kZSI/by5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoIi5jb2RlLWVkaXRvciIpOm8uc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCIuYmxvY2siKTtpZighbilyZXR1cm47bGV0IHM9by5jbG9zZXN0KCJkZWVzLWlucHV0LXd5c2l3eWciKSxjPVtdO3M/LnNoYWRvd1Jvb3QmJmMucHVzaChzLnNoYWRvd1Jvb3QpLGMucHVzaChvLnNoYWRvd1Jvb3QpO2xldCBkPXJ0LmdldFNlbGVjdGlvbkluZm8oLi4uYyk7aWYoISghZHx8IWQuY29sbGFwc2VkKSYmdGhpcy5pc09uRmlyc3RMaW5lKGQsbiwuLi5jKSl7dC5wcmV2ZW50RGVmYXVsdCgpO2xldCBmPXRoaXMuY29tcG9uZW50LmJsb2NrT3BlcmF0aW9ucyx1PWYuZ2V0UHJldmlvdXNCbG9jayhyLmlkKTtpZih1KXtsZXQgcD1bImRpdmlkZXIiLCJpbWFnZSIsInlvdXR1YmUiLCJhdHRhY2htZW50Il07YXdhaXQgZi5mb2N1c0Jsb2NrKHUuaWQscC5pbmNsdWRlcyh1LnR5cGUpP3ZvaWQgMDoiZW5kIil9fX1hc3luYyBoYW5kbGVBcnJvd0Rvd24odCxyKXtpZihbImRpdmlkZXIiLCJpbWFnZSIsInlvdXR1YmUiLCJhdHRhY2htZW50Il0uaW5jbHVkZXMoci50eXBlKSl7dC5wcmV2ZW50RGVmYXVsdCgpO2xldCBmPXRoaXMuY29tcG9uZW50LmJsb2NrT3BlcmF0aW9ucyx1PWYuZ2V0TmV4dEJsb2NrKHIuaWQpO2lmKHUpe2xldCBwPVsiZGl2aWRlciIsImltYWdlIiwieW91dHViZSIsImF0dGFjaG1lbnQiXTthd2FpdCBmLmZvY3VzQmxvY2sodS5pZCxwLmluY2x1ZGVzKHUudHlwZSk/dm9pZCAwOiJzdGFydCIpfXJldHVybn1sZXQgbz10aGlzLmNvbXBvbmVudC5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKGBbZGF0YS1ibG9jay1pZD0iJHtyLmlkfSJdYCk/LnF1ZXJ5U2VsZWN0b3IoImRlZXMtd3lzaXd5Zy1ibG9jayIpO2lmKCFvfHwhby5zaGFkb3dSb290KXJldHVybjtsZXQgbj1yLnR5cGU9PT0iY29kZSI/by5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoIi5jb2RlLWVkaXRvciIpOm8uc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCIuYmxvY2siKTtpZighbilyZXR1cm47bGV0IHM9by5jbG9zZXN0KCJkZWVzLWlucHV0LXd5c2l3eWciKSxjPVtdO3M/LnNoYWRvd1Jvb3QmJmMucHVzaChzLnNoYWRvd1Jvb3QpLGMucHVzaChvLnNoYWRvd1Jvb3QpO2xldCBkPXJ0LmdldFNlbGVjdGlvbkluZm8oLi4uYyk7aWYoISghZHx8IWQuY29sbGFwc2VkKSYmdGhpcy5pc09uTGFzdExpbmUoZCxuLC4uLmMpKXt0LnByZXZlbnREZWZhdWx0KCk7bGV0IGY9dGhpcy5jb21wb25lbnQuYmxvY2tPcGVyYXRpb25zLHU9Zi5nZXROZXh0QmxvY2soci5pZCk7aWYodSl7bGV0IHA9WyJkaXZpZGVyIiwiaW1hZ2UiLCJ5b3V0dWJlIiwiYXR0YWNobWVudCJdO2F3YWl0IGYuZm9jdXNCbG9jayh1LmlkLHAuaW5jbHVkZXModS50eXBlKT92b2lkIDA6InN0YXJ0Iil9fX1nZXRMYXN0VGV4dE5vZGUodCl7aWYodC5ub2RlVHlwZT09PU5vZGUuVEVYVF9OT0RFKXJldHVybiB0O2ZvcihsZXQgcj10LmNoaWxkTm9kZXMubGVuZ3RoLTE7cj49MDtyLS0pe2xldCBhPXRoaXMuZ2V0TGFzdFRleHROb2RlKHQuY2hpbGROb2Rlc1tyXSk7aWYoYSlyZXR1cm4gYX1yZXR1cm4gbnVsbH1hc3luYyBoYW5kbGVBcnJvd0xlZnQodCxyKXtpZihbImRpdmlkZXIiLCJpbWFnZSIsInlvdXR1YmUiLCJhdHRhY2htZW50Il0uaW5jbHVkZXMoci50eXBlKSl7dC5wcmV2ZW50RGVmYXVsdCgpO2xldCB1PXRoaXMuY29tcG9uZW50LmJsb2NrT3BlcmF0aW9ucyxwPXUuZ2V0UHJldmlvdXNCbG9jayhyLmlkKTtpZihwKXtsZXQgaD1bImRpdmlkZXIiLCJpbWFnZSIsInlvdXR1YmUiLCJhdHRhY2htZW50Il07YXdhaXQgdS5mb2N1c0Jsb2NrKHAuaWQsaC5pbmNsdWRlcyhwLnR5cGUpP3ZvaWQgMDoiZW5kIil9cmV0dXJufWxldCBvPXRoaXMuY29tcG9uZW50LnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoYFtkYXRhLWJsb2NrLWlkPSIke3IuaWR9Il1gKT8ucXVlcnlTZWxlY3RvcigiZGVlcy13eXNpd3lnLWJsb2NrIik7aWYoIW98fCFvLnNoYWRvd1Jvb3QpcmV0dXJuO2xldCBuPXIudHlwZT09PSJjb2RlIj9vLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcigiLmNvZGUtZWRpdG9yIik6by5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoIi5ibG9jayIpO2lmKCFuKXJldHVybjtsZXQgcz1vLmNsb3Nlc3QoImRlZXMtaW5wdXQtd3lzaXd5ZyIpLGM9W107cz8uc2hhZG93Um9vdCYmYy5wdXNoKHMuc2hhZG93Um9vdCksYy5wdXNoKG8uc2hhZG93Um9vdCk7bGV0IGQ9cnQuZ2V0U2VsZWN0aW9uSW5mbyguLi5jKTtpZighZHx8IWQuY29sbGFwc2VkKXJldHVybjtpZihydC5nZXRDdXJzb3JQb3NpdGlvbkluRWxlbWVudChuLC4uLmMpPT09MCl7bGV0IHU9dGhpcy5jb21wb25lbnQuYmxvY2tPcGVyYXRpb25zLHA9dS5nZXRQcmV2aW91c0Jsb2NrKHIuaWQpO2lmKHApe3QucHJldmVudERlZmF1bHQoKTtsZXQgYj1bImRpdmlkZXIiLCJpbWFnZSIsInlvdXR1YmUiLCJhdHRhY2htZW50Il0uaW5jbHVkZXMocC50eXBlKT92b2lkIDA6ImVuZCI7YXdhaXQgdS5mb2N1c0Jsb2NrKHAuaWQsYil9fX1hc3luYyBoYW5kbGVBcnJvd1JpZ2h0KHQscil7aWYoWyJkaXZpZGVyIiwiaW1hZ2UiLCJ5b3V0dWJlIiwiYXR0YWNobWVudCJdLmluY2x1ZGVzKHIudHlwZSkpe3QucHJldmVudERlZmF1bHQoKTtsZXQgcD10aGlzLmNvbXBvbmVudC5ibG9ja09wZXJhdGlvbnMsaD1wLmdldE5leHRCbG9jayhyLmlkKTtpZihoKXtsZXQgYj1bImRpdmlkZXIiLCJpbWFnZSIsInlvdXR1YmUiLCJhdHRhY2htZW50Il07YXdhaXQgcC5mb2N1c0Jsb2NrKGguaWQsYi5pbmNsdWRlcyhoLnR5cGUpP3ZvaWQgMDoic3RhcnQiKX1yZXR1cm59bGV0IG89dGhpcy5jb21wb25lbnQuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcihgW2RhdGEtYmxvY2staWQ9IiR7ci5pZH0iXWApPy5xdWVyeVNlbGVjdG9yKCJkZWVzLXd5c2l3eWctYmxvY2siKTtpZighb3x8IW8uc2hhZG93Um9vdClyZXR1cm47bGV0IG49ci50eXBlPT09ImNvZGUiP28uc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCIuY29kZS1lZGl0b3IiKTpvLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcigiLmJsb2NrIik7aWYoIW4pcmV0dXJuO2xldCBzPW8uY2xvc2VzdCgiZGVlcy1pbnB1dC13eXNpd3lnIiksYz1bXTtzPy5zaGFkb3dSb290JiZjLnB1c2gocy5zaGFkb3dSb290KSxjLnB1c2goby5zaGFkb3dSb290KTtsZXQgZD1ydC5nZXRTZWxlY3Rpb25JbmZvKC4uLmMpO2lmKCFkfHwhZC5jb2xsYXBzZWQpcmV0dXJuO2xldCBmPXJ0LmdldEN1cnNvclBvc2l0aW9uSW5FbGVtZW50KG4sLi4uYyksdT1uLnRleHRDb250ZW50Py5sZW5ndGh8fDA7aWYoZj09PXUpe2xldCBwPXRoaXMuY29tcG9uZW50LmJsb2NrT3BlcmF0aW9ucyxoPXAuZ2V0TmV4dEJsb2NrKHIuaWQpO2lmKGgpe3QucHJldmVudERlZmF1bHQoKTtsZXQgYj1bImRpdmlkZXIiLCJpbWFnZSIsInlvdXR1YmUiLCJhdHRhY2htZW50Il07YXdhaXQgcC5mb2N1c0Jsb2NrKGguaWQsYi5pbmNsdWRlcyhoLnR5cGUpP3ZvaWQgMDoic3RhcnQiKX19fWlzT25GaXJzdExpbmUodCxyLC4uLmEpe3RyeXtsZXQgaT1ydC5jcmVhdGVSYW5nZUZyb21JbmZvKHQpLG89aS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxuPWkuY29tbW9uQW5jZXN0b3JDb250YWluZXI7bi5ub2RlVHlwZT09PU5vZGUuVEVYVF9OT0RFJiYobj1uLnBhcmVudEVsZW1lbnQpO2xldCBzPW4uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksYz1vLnRvcC1zLnRvcDw1O3JldHVybiBuLnRleHRDb250ZW50JiYhbi50ZXh0Q29udGVudC5pbmNsdWRlcyhgCmApP3J0LmdldEN1cnNvclBvc2l0aW9uSW5FbGVtZW50KG4sLi4uYSk9PT0wOmN9Y2F0Y2goaSl7cmV0dXJuIGNvbnNvbGUud2FybigiRXJyb3IgY2hlY2tpbmcgZmlyc3QgbGluZToiLGkpLHQuc3RhcnRPZmZzZXQ9PT0wfX1pc09uTGFzdExpbmUodCxyLC4uLmEpe3RyeXtsZXQgaT1ydC5jcmVhdGVSYW5nZUZyb21JbmZvKHQpLG89aS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxuPWkuY29tbW9uQW5jZXN0b3JDb250YWluZXI7bi5ub2RlVHlwZT09PU5vZGUuVEVYVF9OT0RFJiYobj1uLnBhcmVudEVsZW1lbnQpO2xldCBjPW4uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuYm90dG9tLW8uYm90dG9tPDU7aWYobi50ZXh0Q29udGVudCYmIW4udGV4dENvbnRlbnQuaW5jbHVkZXMoYApgKSl7bGV0IGQ9ci50ZXh0Q29udGVudD8ubGVuZ3RofHwwO3JldHVybiBydC5nZXRDdXJzb3JQb3NpdGlvbkluRWxlbWVudChyLC4uLmEpPT09ZH1yZXR1cm4gY31jYXRjaChpKXtjb25zb2xlLndhcm4oIkVycm9yIGNoZWNraW5nIGxhc3QgbGluZToiLGkpO2xldCBvPXIudGV4dENvbnRlbnQ/Lmxlbmd0aHx8MDtyZXR1cm4gcnQuZ2V0Q3Vyc29yUG9zaXRpb25JbkVsZW1lbnQociwuLi5hKT09PW99fX19KTt2YXIgRFosVyRyPWwoKCk9PntPbygpO1k5KCk7RFo9Y2xhc3N7Y29tcG9uZW50O2RyYWdnZWRCbG9ja0lkPW51bGw7ZHJhZ092ZXJCbG9ja0lkPW51bGw7ZHJhZ092ZXJQb3NpdGlvbj1udWxsO2Ryb3BJbmRpY2F0b3I9bnVsbDtpbml0aWFsTW91c2VZPTA7aW5pdGlhbEJsb2NrWT0wO2RyYWdnZWRCbG9ja0VsZW1lbnQ9bnVsbDtkcmFnZ2VkQmxvY2tIZWlnaHQ9MDtkcmFnZ2VkQmxvY2tDb250ZW50SGVpZ2h0PTA7ZHJhZ2dlZEJsb2NrTWFyZ2luVG9wPTA7bGFzdFVwZGF0ZVRpbWU9MDt1cGRhdGVUaHJvdHRsZT04MDtjb25zdHJ1Y3Rvcih0KXt0aGlzLmNvbXBvbmVudD10fWdldCBkcmFnU3RhdGUoKXtyZXR1cm57ZHJhZ2dlZEJsb2NrSWQ6dGhpcy5kcmFnZ2VkQmxvY2tJZCxkcmFnT3ZlckJsb2NrSWQ6dGhpcy5kcmFnT3ZlckJsb2NrSWQsZHJhZ092ZXJQb3NpdGlvbjp0aGlzLmRyYWdPdmVyUG9zaXRpb259fWhhbmRsZURyYWdTdGFydCh0LHIpe2lmKCF0LmRhdGFUcmFuc2ZlcilyZXR1cm47dGhpcy5kcmFnZ2VkQmxvY2tJZD1yLmlkLHQuZGF0YVRyYW5zZmVyLmVmZmVjdEFsbG93ZWQ9Im1vdmUiLHQuZGF0YVRyYW5zZmVyLnNldERhdGEoInRleHQvcGxhaW4iLHIuaWQpO2xldCBhPW5ldyBJbWFnZTtpZihhLnNyYz0iZGF0YTppbWFnZS9naWY7YmFzZTY0LFIwbEdPRGxoQVFBQkFJQUFBQVVFQkFBQUFDd0FBQUFBQVFBQkFBQUNBa1FCQURzPSIsdC5kYXRhVHJhbnNmZXIuc2V0RHJhZ0ltYWdlKGEsMCwwKSx0aGlzLmluaXRpYWxNb3VzZVk9dC5jbGllbnRZLHRoaXMuZHJhZ2dlZEJsb2NrRWxlbWVudD10aGlzLmNvbXBvbmVudC5lZGl0b3JDb250ZW50UmVmLnF1ZXJ5U2VsZWN0b3IoYFtkYXRhLWJsb2NrLWlkPSIke3IuaWR9Il1gKSx0aGlzLmRyYWdnZWRCbG9ja0VsZW1lbnQpe2xldCBpPXRoaXMuZHJhZ2dlZEJsb2NrRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTt0aGlzLmluaXRpYWxCbG9ja1k9aS50b3A7bGV0IG89dGhpcy5kcmFnZ2VkQmxvY2tFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoIi5ibG9jayIpO2lmKG8pe2xldCBuPW8uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkscz13aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShvKTt0aGlzLmRyYWdnZWRCbG9ja01hcmdpblRvcD1wYXJzZUludChzLm1hcmdpblRvcCl8fDAsdGhpcy5kcmFnZ2VkQmxvY2tDb250ZW50SGVpZ2h0PW4uaGVpZ2h0fXRoaXMuZHJhZ2dlZEJsb2NrSGVpZ2h0PWkuaGVpZ2h0LGNvbnNvbGUubG9nKCJEcmFnIG1lYXN1cmVtZW50czoiLHt3cmFwcGVySGVpZ2h0OmkuaGVpZ2h0LG1hcmdpblRvcDp0aGlzLmRyYWdnZWRCbG9ja01hcmdpblRvcCxkcm9wSW5kaWNhdG9ySGVpZ2h0OnRoaXMuZHJhZ2dlZEJsb2NrSGVpZ2h0LGNvbnRlbnRIZWlnaHQ6dGhpcy5kcmFnZ2VkQmxvY2tDb250ZW50SGVpZ2h0LGJsb2NrSWQ6ci5pZH0pLHRoaXMuY3JlYXRlRHJvcEluZGljYXRvcigpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImRyYWdvdmVyIix0aGlzLmhhbmRsZUdsb2JhbERyYWdPdmVyKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJkcmFnZW5kIix0aGlzLmhhbmRsZUdsb2JhbERyYWdFbmQpfXRoaXMuY29tcG9uZW50LmRyYWdnZWRCbG9ja0lkPXRoaXMuZHJhZ2dlZEJsb2NrSWQsc2V0VGltZW91dCgoKT0+e3RoaXMuZHJhZ2dlZEJsb2NrRWxlbWVudCYmdGhpcy5kcmFnZ2VkQmxvY2tFbGVtZW50LmNsYXNzTGlzdC5hZGQoImRyYWdnaW5nIiksdGhpcy5jb21wb25lbnQuZWRpdG9yQ29udGVudFJlZiYmdGhpcy5jb21wb25lbnQuZWRpdG9yQ29udGVudFJlZi5jbGFzc0xpc3QuYWRkKCJkcmFnZ2luZyIpfSwxMCl9aGFuZGxlRHJhZ0VuZCgpe3RoaXMuY29tcG9uZW50LmVkaXRvckNvbnRlbnRSZWYucXVlcnlTZWxlY3RvckFsbCgiLmJsb2NrLXdyYXBwZXIiKS5mb3JFYWNoKHI9PntyLmNsYXNzTGlzdC5yZW1vdmUoImRyYWdnaW5nIiwibW92ZS11cCIsIm1vdmUtZG93biIpLHIuc3R5bGUucmVtb3ZlUHJvcGVydHkoIi0tZHJhZy1vZmZzZXQiKSxyLnN0eWxlLnJlbW92ZVByb3BlcnR5KCJ0cmFuc2Zvcm0iKX0pLHRoaXMuY29tcG9uZW50LmVkaXRvckNvbnRlbnRSZWYmJnRoaXMuY29tcG9uZW50LmVkaXRvckNvbnRlbnRSZWYuY2xhc3NMaXN0LnJlbW92ZSgiZHJhZ2dpbmciKSx0aGlzLmRyYWdnZWRCbG9ja0lkPW51bGwsdGhpcy5kcmFnT3ZlckJsb2NrSWQ9bnVsbCx0aGlzLmRyYWdPdmVyUG9zaXRpb249bnVsbCx0aGlzLmRyYWdnZWRCbG9ja0VsZW1lbnQ9bnVsbCx0aGlzLmRyYWdnZWRCbG9ja0hlaWdodD0wLHRoaXMuZHJhZ2dlZEJsb2NrQ29udGVudEhlaWdodD0wLHRoaXMuZHJhZ2dlZEJsb2NrTWFyZ2luVG9wPTAsdGhpcy5pbml0aWFsQmxvY2tZPTAsdGhpcy5jb21wb25lbnQuZHJhZ2dlZEJsb2NrSWQ9bnVsbCx0aGlzLmNvbXBvbmVudC5kcmFnT3ZlckJsb2NrSWQ9bnVsbCx0aGlzLmNvbXBvbmVudC5kcmFnT3ZlclBvc2l0aW9uPW51bGx9aGFuZGxlRHJhZ092ZXIodCxyKXtpZih0LnByZXZlbnREZWZhdWx0KCksIXQuZGF0YVRyYW5zZmVyfHwhdGhpcy5kcmFnZ2VkQmxvY2tJZHx8dGhpcy5kcmFnZ2VkQmxvY2tJZD09PXIuaWQpcmV0dXJuO3QuZGF0YVRyYW5zZmVyLmRyb3BFZmZlY3Q9Im1vdmUiO2xldCBhPXQuY3VycmVudFRhcmdldC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxpPWEudG9wK2EuaGVpZ2h0LzI7dGhpcy5kcmFnT3ZlckJsb2NrSWQ9ci5pZCx0aGlzLmRyYWdPdmVyUG9zaXRpb249dC5jbGllbnRZPGk/ImJlZm9yZSI6ImFmdGVyIix0aGlzLmNvbXBvbmVudC5kcmFnT3ZlckJsb2NrSWQ9dGhpcy5kcmFnT3ZlckJsb2NrSWQsdGhpcy5jb21wb25lbnQuZHJhZ092ZXJQb3NpdGlvbj10aGlzLmRyYWdPdmVyUG9zaXRpb259aGFuZGxlRHJhZ0xlYXZlKHQpe3RoaXMuZHJhZ092ZXJCbG9ja0lkPT09dC5pZCYmKHRoaXMuZHJhZ092ZXJCbG9ja0lkPW51bGwsdGhpcy5kcmFnT3ZlclBvc2l0aW9uPW51bGwsdGhpcy5jb21wb25lbnQuZHJhZ092ZXJCbG9ja0lkPW51bGwsdGhpcy5jb21wb25lbnQuZHJhZ092ZXJQb3NpdGlvbj1udWxsKX1oYW5kbGVEcm9wKHQscil7dC5wcmV2ZW50RGVmYXVsdCgpLCEoIXRoaXMuZHJhZ2dlZEJsb2NrSWR8fHRoaXMuZHJhZ2dlZEJsb2NrSWQ9PT1yLmlkKSYmdGhpcy5jb21wb25lbnQuaGFuZGxlRHJvcCh0LHIpfWlzRHJhZ2dpbmcodCl7cmV0dXJuIHRoaXMuZHJhZ2dlZEJsb2NrSWQ9PT10fWlzRHJhZ092ZXIodCl7cmV0dXJuIHRoaXMuZHJhZ092ZXJCbG9ja0lkPT09dH1nZXREcmFnT3ZlckNsYXNzZXModCl7cmV0dXJuIHRoaXMuaXNEcmFnT3Zlcih0KT90aGlzLmRyYWdPdmVyUG9zaXRpb249PT0iYmVmb3JlIj8iZHJhZy1vdmVyLWJlZm9yZSI6ImRyYWctb3Zlci1hZnRlciI6IiJ9Y3JlYXRlRHJvcEluZGljYXRvcigpe3RoaXMuZHJvcEluZGljYXRvcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0aGlzLmRyb3BJbmRpY2F0b3IuY2xhc3NOYW1lPSJkcm9wLWluZGljYXRvciIsdGhpcy5kcm9wSW5kaWNhdG9yLnN0eWxlLmRpc3BsYXk9Im5vbmUiLHRoaXMuY29tcG9uZW50LmVkaXRvckNvbnRlbnRSZWYuYXBwZW5kQ2hpbGQodGhpcy5kcm9wSW5kaWNhdG9yKX1oYW5kbGVHbG9iYWxEcmFnT3Zlcj10PT57aWYodC5wcmV2ZW50RGVmYXVsdCgpLCF0aGlzLmRyYWdnZWRCbG9ja0VsZW1lbnQpcmV0dXJuO2xldCByPXQuY2xpZW50WS10aGlzLmluaXRpYWxNb3VzZVk7dGhpcy5kcmFnZ2VkQmxvY2tFbGVtZW50LnN0eWxlLnRyYW5zZm9ybT1gdHJhbnNsYXRlWSgke3J9cHgpYDtsZXQgYT1EYXRlLm5vdygpO2EtdGhpcy5sYXN0VXBkYXRlVGltZTx0aGlzLnVwZGF0ZVRocm90dGxlfHwodGhpcy5sYXN0VXBkYXRlVGltZT1hLHRoaXMudXBkYXRlQmxvY2tQb3NpdGlvbnModC5jbGllbnRZKSl9O3VwZGF0ZUJsb2NrUG9zaXRpb25zKHQpe2xldCByPUFycmF5LmZyb20odGhpcy5jb21wb25lbnQuZWRpdG9yQ29udGVudFJlZi5xdWVyeVNlbGVjdG9yQWxsKCIuYmxvY2std3JhcHBlciIpKSxhPXIuZmluZEluZGV4KG89Pm8uZ2V0QXR0cmlidXRlKCJkYXRhLWJsb2NrLWlkIik9PT10aGlzLmRyYWdnZWRCbG9ja0lkKTtpZihhPT09LTEpcmV0dXJuO3IuZm9yRWFjaChvPT57by5nZXRBdHRyaWJ1dGUoImRhdGEtYmxvY2staWQiKSE9PXRoaXMuZHJhZ2dlZEJsb2NrSWQmJihvLmNsYXNzTGlzdC5yZW1vdmUoIm1vdmUtdXAiLCJtb3ZlLWRvd24iKSxvLnN0eWxlLnJlbW92ZVByb3BlcnR5KCItLWRyYWctb2Zmc2V0IikpfSk7bGV0IGk9ci5sZW5ndGg7Zm9yKGxldCBvPTA7bzxyLmxlbmd0aDtvKyspe2lmKG89PT1hKWNvbnRpbnVlO2xldCBzPXJbb10uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksYz1zLnRvcDtpZih0PGMrcy5oZWlnaHQqLjUpe2k9bzticmVha319Zm9yKGxldCBvPTA7bzxyLmxlbmd0aDtvKyspe2lmKG89PT1hKWNvbnRpbnVlO2xldCBuPXJbb107YTxpP28+YSYmbzxpJiYobi5jbGFzc0xpc3QuYWRkKCJtb3ZlLXVwIiksbi5zdHlsZS5zZXRQcm9wZXJ0eSgiLS1kcmFnLW9mZnNldCIsYCR7dGhpcy5kcmFnZ2VkQmxvY2tIZWlnaHR9cHhgKSk6YT5pJiZvPj1pJiZvPGEmJihuLmNsYXNzTGlzdC5hZGQoIm1vdmUtZG93biIpLG4uc3R5bGUuc2V0UHJvcGVydHkoIi0tZHJhZy1vZmZzZXQiLGAke3RoaXMuZHJhZ2dlZEJsb2NrSGVpZ2h0fXB4YCkpfXRoaXMudXBkYXRlRHJvcEluZGljYXRvcihyLGksYSl9dXBkYXRlRHJvcEluZGljYXRvcih0LHIsYSl7aWYoIXRoaXMuZHJvcEluZGljYXRvcnx8IXRoaXMuZHJhZ2dlZEJsb2NrRWxlbWVudClyZXR1cm47dGhpcy5kcm9wSW5kaWNhdG9yLnN0eWxlLmRpc3BsYXk9ImJsb2NrIjtsZXQgaT10aGlzLmNvbXBvbmVudC5lZGl0b3JDb250ZW50UmVmLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLG89MCxuPVtdO2ZvcihsZXQgZD0wO2Q8dC5sZW5ndGg7ZCsrKXtpZihkPT09YSljb250aW51ZTtsZXQgZj10W2RdLHU9Zi5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxwPXUudG9wLWkudG9wLGg9dS5ib3R0b20taS50b3AsYj13aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShmKS50cmFuc2Zvcm07aWYoYiYmYiE9PSJub25lIil7bGV0IGc9bmV3IERPTU1hdHJpeChiKS5tNDI7cCs9ZyxoKz1nfW4ucHVzaCh7aW5kZXg6ZCx0b3A6cCxib3R0b206aH0pfW4uc29ydCgoZCxmKT0+ZC50b3AtZi50b3ApO2xldCBzPXI7cj5hJiZzLS07bGV0IGM9MTY7aWYodGhpcy5kcmFnZ2VkQmxvY2tFbGVtZW50KXtsZXQgZD10aGlzLmNvbXBvbmVudC5ibG9ja3MuZmluZChmPT5mLmlkPT09dGhpcy5kcmFnZ2VkQmxvY2tJZCk7aWYoZCl7bGV0IGY9ZC50eXBlO2Y9PT0iaGVhZGluZy0xInx8Zj09PSJoZWFkaW5nLTIifHxmPT09ImhlYWRpbmctMyI/Yz0yNDooZj09PSJjb2RlInx8Zj09PSJxdW90ZSIpJiYoYz0yMCl9fWlmKHM9PT0wKW89MDtlbHNlIGlmKHM+PW4ubGVuZ3RoKXtsZXQgZD1uW24ubGVuZ3RoLTFdO2QmJihvPWQuYm90dG9tLG8rPWMpfWVsc2V7bGV0IGQ9bltzLTFdO2QmJihvPWQuYm90dG9tLG8rPWMpfXRoaXMuZHJvcEluZGljYXRvci5zdHlsZS5oZWlnaHQ9YCR7dGhpcy5kcmFnZ2VkQmxvY2tIZWlnaHR9cHhgLHRoaXMuZHJvcEluZGljYXRvci5zdHlsZS50b3A9YCR7TWF0aC5tYXgoMCxvKX1weGAsY29uc29sZS5sb2coIkRyb3AgaW5kaWNhdG9yIHVwZGF0ZToiLHt0YXJnZXRJbmRleDpyLGFkanVzdGVkVGFyZ2V0SW5kZXg6cyxkcmFnZ2VkSW5kZXg6YSx0b3BQb3NpdGlvbjpvLGhlaWdodDp0aGlzLmRyYWdnZWRCbG9ja0hlaWdodCxibG9ja01hcmdpbjpjLHZpc3VhbEJsb2NrczpuLm1hcChkPT4oe2luZGV4OmQuaW5kZXgsdG9wOmQudG9wLGJvdHRvbTpkLmJvdHRvbX0pKX0pfWhhbmRsZUdsb2JhbERyYWdFbmQ9KCk9Pntkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJkcmFnb3ZlciIsdGhpcy5oYW5kbGVHbG9iYWxEcmFnT3ZlciksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZHJhZ2VuZCIsdGhpcy5oYW5kbGVHbG9iYWxEcmFnRW5kKSx0aGlzLmRyb3BJbmRpY2F0b3ImJih0aGlzLmRyb3BJbmRpY2F0b3IucmVtb3ZlKCksdGhpcy5kcm9wSW5kaWNhdG9yPW51bGwpLHRoaXMuZHJhZ2dlZEJsb2NrSWQ/cmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57dGhpcy5wZXJmb3JtRHJvcCgpLHRoaXMuaGFuZGxlRHJhZ0VuZCgpfSk6dGhpcy5oYW5kbGVEcmFnRW5kKCl9O3BlcmZvcm1Ecm9wKCl7aWYoIXRoaXMuZHJhZ2dlZEJsb2NrSWQpcmV0dXJuO2xldCB0PUFycmF5LmZyb20odGhpcy5jb21wb25lbnQuZWRpdG9yQ29udGVudFJlZi5xdWVyeVNlbGVjdG9yQWxsKCIuYmxvY2std3JhcHBlciIpKTtpZighdC5maW5kKGY9PmYuZ2V0QXR0cmlidXRlKCJkYXRhLWJsb2NrLWlkIik9PT10aGlzLmRyYWdnZWRCbG9ja0lkKSlyZXR1cm47bGV0IGE9dC5tYXAoZj0+e2xldCB1PWYuZ2V0QXR0cmlidXRlKCJkYXRhLWJsb2NrLWlkIikscD1mLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLGg9cC50b3ArcC5oZWlnaHQvMjtyZXR1cm57aWQ6dSxjZW50ZXJZOmgsZWxlbWVudDpmfX0pO2Euc29ydCgoZix1KT0+Zi5jZW50ZXJZLXUuY2VudGVyWSk7bGV0IGk9YS5tYXAoZj0+Zi5pZCkuZmlsdGVyKGY9PmYhPT1udWxsKSxvPVsuLi50aGlzLmNvbXBvbmVudC5ibG9ja3NdLG49by5maW5kKGY9PmYuaWQ9PT10aGlzLmRyYWdnZWRCbG9ja0lkKTtpZighbilyZXR1cm47bGV0IHM9by5tYXAoZj0+Zi5pZCk7aWYoISFpLmV2ZXJ5KChmLHUpPT5mPT09c1t1XSkpcmV0dXJuO2xldCBkPWkubWFwKGY9Pm8uZmluZCh1PT51LmlkPT09ZikpLmZpbHRlcihCb29sZWFuKTt0aGlzLmNvbXBvbmVudC5ibG9ja3M9ZCx0aGlzLmNvbXBvbmVudC5yZW5kZXJCbG9ja3NQcm9ncmFtbWF0aWNhbGx5KCksdGhpcy5jb21wb25lbnQudXBkYXRlVmFsdWUoKSxzZXRUaW1lb3V0KCgpPT57bi50eXBlIT09ImRpdmlkZXIiJiZ0aGlzLmNvbXBvbmVudC5ibG9ja09wZXJhdGlvbnMuZm9jdXNCbG9jayhuLmlkKX0sMTAwKX19fSk7dmFyIEFaLEckcj1sKCgpPT57T28oKTtBWj1jbGFzc3toaXN0b3J5PVtdO2N1cnJlbnRJbmRleD0tMTttYXhIaXN0b3J5U2l6ZT01MDtsYXN0U2F2ZVRpbWU9MDtzYXZlRGVib3VuY2VNcz01MDA7Y29uc3RydWN0b3IoKXt0aGlzLmhpc3Rvcnk9W10sdGhpcy5jdXJyZW50SW5kZXg9LTF9c2F2ZVN0YXRlKHQscixhKXtsZXQgaT1EYXRlLm5vdygpO2lmKGktdGhpcy5sYXN0U2F2ZVRpbWU8dGhpcy5zYXZlRGVib3VuY2VNcyYmdGhpcy5jdXJyZW50SW5kZXg+PTApe3RoaXMuaGlzdG9yeVt0aGlzLmN1cnJlbnRJbmRleF09e2Jsb2Nrczp0aGlzLmNsb25lQmxvY2tzKHQpLHNlbGVjdGVkQmxvY2tJZDpyLGN1cnNvclBvc2l0aW9uOmE/ey4uLmF9OnZvaWQgMCx0aW1lc3RhbXA6aX07cmV0dXJufXRoaXMuY3VycmVudEluZGV4PHRoaXMuaGlzdG9yeS5sZW5ndGgtMSYmKHRoaXMuaGlzdG9yeT10aGlzLmhpc3Rvcnkuc2xpY2UoMCx0aGlzLmN1cnJlbnRJbmRleCsxKSk7bGV0IG89e2Jsb2Nrczp0aGlzLmNsb25lQmxvY2tzKHQpLHNlbGVjdGVkQmxvY2tJZDpyLGN1cnNvclBvc2l0aW9uOmE/ey4uLmF9OnZvaWQgMCx0aW1lc3RhbXA6aX07dGhpcy5oaXN0b3J5LnB1c2gobyksdGhpcy5jdXJyZW50SW5kZXgrKyx0aGlzLmhpc3RvcnkubGVuZ3RoPnRoaXMubWF4SGlzdG9yeVNpemUmJih0aGlzLmhpc3Rvcnkuc2hpZnQoKSx0aGlzLmN1cnJlbnRJbmRleC0tKSx0aGlzLmxhc3RTYXZlVGltZT1pfXNhdmVDaGVja3BvaW50KHQscixhKXt0aGlzLmxhc3RTYXZlVGltZT0wLHRoaXMuc2F2ZVN0YXRlKHQscixhKX11bmRvKCl7cmV0dXJuIHRoaXMuY2FuVW5kbygpPyh0aGlzLmN1cnJlbnRJbmRleC0tLHRoaXMuY2xvbmVTdGF0ZSh0aGlzLmhpc3RvcnlbdGhpcy5jdXJyZW50SW5kZXhdKSk6bnVsbH1yZWRvKCl7cmV0dXJuIHRoaXMuY2FuUmVkbygpPyh0aGlzLmN1cnJlbnRJbmRleCsrLHRoaXMuY2xvbmVTdGF0ZSh0aGlzLmhpc3RvcnlbdGhpcy5jdXJyZW50SW5kZXhdKSk6bnVsbH1jYW5VbmRvKCl7cmV0dXJuIHRoaXMuY3VycmVudEluZGV4PjB9Y2FuUmVkbygpe3JldHVybiB0aGlzLmN1cnJlbnRJbmRleDx0aGlzLmhpc3RvcnkubGVuZ3RoLTF9Z2V0Q3VycmVudFN0YXRlKCl7cmV0dXJuIHRoaXMuY3VycmVudEluZGV4Pj0wJiZ0aGlzLmN1cnJlbnRJbmRleDx0aGlzLmhpc3RvcnkubGVuZ3RoP3RoaXMuY2xvbmVTdGF0ZSh0aGlzLmhpc3RvcnlbdGhpcy5jdXJyZW50SW5kZXhdKTpudWxsfWNsZWFyKCl7dGhpcy5oaXN0b3J5PVtdLHRoaXMuY3VycmVudEluZGV4PS0xLHRoaXMubGFzdFNhdmVUaW1lPTB9Y2xvbmVCbG9ja3ModCl7cmV0dXJuIHQubWFwKHI9Pih7Li4ucixtZXRhZGF0YTpyLm1ldGFkYXRhP3suLi5yLm1ldGFkYXRhfTp2b2lkIDB9KSl9Y2xvbmVTdGF0ZSh0KXtyZXR1cm57YmxvY2tzOnRoaXMuY2xvbmVCbG9ja3ModC5ibG9ja3MpLHNlbGVjdGVkQmxvY2tJZDp0LnNlbGVjdGVkQmxvY2tJZCxjdXJzb3JQb3NpdGlvbjp0LmN1cnNvclBvc2l0aW9uP3suLi50LmN1cnNvclBvc2l0aW9ufTp2b2lkIDAsdGltZXN0YW1wOnQudGltZXN0YW1wfX1nZXRIaXN0b3J5SW5mbygpe3JldHVybntzaXplOnRoaXMuaGlzdG9yeS5sZW5ndGgsY3VycmVudEluZGV4OnRoaXMuY3VycmVudEluZGV4LGNhblVuZG86dGhpcy5jYW5VbmRvKCksY2FuUmVkbzp0aGlzLmNhblJlZG8oKX19fX0pO3ZhciBFWixIYyxZJHIsWiRyPWwoKCk9PntTZSgpO09vKCk7QmMoKTt1bCgpO3ljdCgpO3djdCgpO0U4KCk7YmkoKTtvdCgpO0VaPWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sSGM9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LFkkcj0oKCk9PntsZXQgZT1bemUoImRlZXMtd3lzaXd5Zy1ibG9jayIpXSx0LHI9W10sYSxpPURlLG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdLHUscD1bXSxoPVtdLGIseD1bXSxnPVtdO3ZhciB2PWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgdz10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHt0eXBlOk9iamVjdH0pXSxjPVtqKHt0eXBlOkJvb2xlYW59KV0sdT1baih7dHlwZTpPYmplY3R9KV0sYj1baih7dHlwZTpPYmplY3R9KV0sRVoodGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJibG9jayIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6TT0+ImJsb2NrImluIE0sZ2V0Ok09Pk0uYmxvY2ssc2V0OihNLEYpPT57TS5ibG9jaz1GfX0sbWV0YWRhdGE6d30sbixzKSxFWih0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImlzU2VsZWN0ZWQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOk09PiJpc1NlbGVjdGVkImluIE0sZ2V0Ok09Pk0uaXNTZWxlY3RlZCxzZXQ6KE0sRik9PntNLmlzU2VsZWN0ZWQ9Rn19LG1ldGFkYXRhOnd9LGQsZiksRVoodGhpcyxudWxsLHUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJoYW5kbGVycyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6TT0+ImhhbmRsZXJzImluIE0sZ2V0Ok09Pk0uaGFuZGxlcnMsc2V0OihNLEYpPT57TS5oYW5kbGVycz1GfX0sbWV0YWRhdGE6d30scCxoKSxFWih0aGlzLG51bGwsYix7a2luZDoiYWNjZXNzb3IiLG5hbWU6Ind5c2l3eWdDb21wb25lbnQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOk09PiJ3eXNpd3lnQ29tcG9uZW50ImluIE0sZ2V0Ok09Pk0ud3lzaXd5Z0NvbXBvbmVudCxzZXQ6KE0sRik9PntNLnd5c2l3eWdDb21wb25lbnQ9Rn19LG1ldGFkYXRhOnd9LHgsZyksRVoobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6d30sbnVsbCxyKSx2PWE9dC52YWx1ZSx3JiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnd9KX1hc3luYyBkaXNjb25uZWN0ZWRDYWxsYmFjaygpe2F3YWl0IHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCksdGhpcy5fc2VsZWN0aW9uSGFuZGxlciYmZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigic2VsZWN0aW9uY2hhbmdlIix0aGlzLl9zZWxlY3Rpb25IYW5kbGVyKX0jZT1IYyh0aGlzLG4sdm9pZCAwKTtnZXQgYmxvY2soKXtyZXR1cm4gdGhpcy4jZX1zZXQgYmxvY2sodyl7dGhpcy4jZT13fSN0PShIYyh0aGlzLHMpLEhjKHRoaXMsZCwhMSkpO2dldCBpc1NlbGVjdGVkKCl7cmV0dXJuIHRoaXMuI3R9c2V0IGlzU2VsZWN0ZWQodyl7dGhpcy4jdD13fSNyPShIYyh0aGlzLGYpLEhjKHRoaXMscCx2b2lkIDApKTtnZXQgaGFuZGxlcnMoKXtyZXR1cm4gdGhpcy4jcn1zZXQgaGFuZGxlcnModyl7dGhpcy4jcj13fSNhPShIYyh0aGlzLGgpLEhjKHRoaXMseCx2b2lkIDApKTtnZXQgd3lzaXd5Z0NvbXBvbmVudCgpe3JldHVybiB0aGlzLiNhfXNldCB3eXNpd3lnQ29tcG9uZW50KHcpe3RoaXMuI2E9d31ibG9ja0VsZW1lbnQ9KEhjKHRoaXMsZyksbnVsbCk7Y29udGVudEluaXRpYWxpemVkPSExO2xhc3RLbm93bkN1cnNvclBvc2l0aW9uPTA7bGFzdFNlbGVjdGVkVGV4dD0iIjtoYW5kbGVyU3R5bGVzSW5qZWN0ZWQ9ITE7c3RhdGljIE5PTl9FRElUQUJMRV9UWVBFUz1bImltYWdlIiwiZGl2aWRlciIsInlvdXR1YmUiXTtpbmplY3RIYW5kbGVyU3R5bGVzKCl7aWYodGhpcy5oYW5kbGVyU3R5bGVzSW5qZWN0ZWQpcmV0dXJuO3RoaXMuaGFuZGxlclN0eWxlc0luamVjdGVkPSEwO2xldCB3PSIiLE09UXIuZ2V0QWxsVHlwZXMoKTtmb3IobGV0IEYgb2YgTSl7bGV0IEM9UXIuZ2V0SGFuZGxlcihGKTtDJiYodys9Qy5nZXRTdHlsZXMoKSl9aWYodyl7bGV0IEY9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3R5bGUiKTtGLnRleHRDb250ZW50PXcsdGhpcy5zaGFkb3dSb290Py5hcHBlbmRDaGlsZChGKX19c3RhdGljIHN0eWxlcz1bUGUsbS5kZWZhdWx0U3R5bGVzLGxlYAogICAgICAvKiBUT0RPOiBNaWdyYXRlIGhhcmRjb2RlZCB2YWx1ZXMgdG8gLS1kZWVzLSogQ1NTIHZhcmlhYmxlcyAqLwogICAgICA6aG9zdCB7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgIH0KCiAgICAgIC5ibG9jayB7CiAgICAgICAgcGFkZGluZzogNHB4IDA7CiAgICAgICAgbWluLWhlaWdodDogMS42ZW07CiAgICAgICAgb3V0bGluZTogbm9uZTsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzAwMDAwMCIsIiNlMGUwZTAiKX07CiAgICAgIH0KCiAgICAgIC5ibG9jazplbXB0eTpub3QoOmZvY3VzKTo6YmVmb3JlIHsKICAgICAgICBjb250ZW50OiBhdHRyKGRhdGEtcGxhY2Vob2xkZXIpOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzk5OSIsIiM2NjYiKX07CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgICB9CgogICAgICAvKiBCbG9jay1zcGVjaWZpYyBzdHlsZXMgbW92ZWQgdG8gaGFuZGxlcnMgKi8KCgogICAgICAvKiBGb3JtYXR0aW5nIHN0eWxlcyAqLwogICAgICAuYmxvY2sgOmlzKGIsIHN0cm9uZykgewogICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMDAwMDAwIiwiI2ZmZmZmZiIpfTsKICAgICAgfQoKICAgICAgLmJsb2NrIDppcyhpLCBlbSkgewogICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsKICAgICAgfQoKICAgICAgLmJsb2NrIHUgewogICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOwogICAgICB9CgogICAgICAuYmxvY2sgcyB7CiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7CiAgICAgIH0KCiAgICAgIC5ibG9jayBjb2RlIHsKICAgICAgICBmb250LWZhbWlseTogJ1NGIE1vbm8nLCAnTW9uYWNvJywgJ0luY29uc29sYXRhJywgJ0ZpcmEgQ29kZScsIG1vbm9zcGFjZTsKICAgICAgICBmb250LXNpemU6IDAuOWVtOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDAsIDAsIDAsIDAuMDYpIiwicmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpIil9OwogICAgICAgIHBhZGRpbmc6IDJweCA2cHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiI2QxNCIsIiNmZjZiNmIiKX07CiAgICAgIH0KCiAgICAgIC5ibG9jayBhIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwMDY2Y2MiLCIjNGQ5NGZmIil9OwogICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsKICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7CiAgICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2U7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICB9CgogICAgICAuYmxvY2sgYTpob3ZlciB7CiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHttLmJkVGhlbWUoIiMwMDY2Y2MiLCIjNGQ5NGZmIil9OwogICAgICB9CgogICAgICAvKiBDb2RlIGJsb2NrIGNvbnRhaW5lciBhbmQgbGFuZ3VhZ2Ugc3R5bGVzIG1vdmVkIHRvIGhhbmRsZXIgKi8KCiAgICAgIC8qIFNlbGVjdGlvbiBzdHlsZXMgKi8KICAgICAgLmJsb2NrIDo6c2VsZWN0aW9uIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgicmdiYSgwLCAxMDIsIDIwNCwgMC4zKSIsInJnYmEoNzcsIDE0OCwgMjU1LCAwLjMpIil9OwogICAgICAgIGNvbG9yOiBpbmhlcml0OwogICAgICB9CgoKICAgICAgLyogU3RyaWtlIHRocm91Z2ggKi8KICAgICAgLmJsb2NrIDppcyhzLCBzdHJpa2UpIHsKICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDsKICAgICAgICBvcGFjaXR5OiAwLjc7CiAgICAgIH0KCgogICAgICAvKiBCbG9jayBtYXJnaW4gYWRqdXN0bWVudHMgYmFzZWQgb24gdHlwZSAqLwogICAgICA6aG9zdC1jb250ZXh0KC5ibG9jay13cmFwcGVyOmZpcnN0LWNoaWxkKSAuYmxvY2sgewogICAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDsKICAgICAgfQoKICAgICAgOmhvc3QtY29udGV4dCguYmxvY2std3JhcHBlcjpsYXN0LWNoaWxkKSAuYmxvY2sgewogICAgICAgIG1hcmdpbi1ib3R0b206IDA7CiAgICAgIH0KCiAgICAgIC8qIFNlbGVjdGVkIHN0YXRlICovCiAgICAgIC5ibG9jay5zZWxlY3RlZCB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoMCwgMTAyLCAyMDQsIDAuMDUpIiwicmdiYSg3NywgMTQ4LCAyNTUsIDAuMDgpIil9OwogICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCAke20uYmRUaGVtZSgicmdiYSgwLCAxMDIsIDIwNCwgMC4yKSIsInJnYmEoNzcsIDE0OCwgMjU1LCAwLjIpIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgICBtYXJnaW4tbGVmdDogLThweDsKICAgICAgICBtYXJnaW4tcmlnaHQ6IC04cHg7CiAgICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7CiAgICAgICAgcGFkZGluZy1yaWdodDogOHB4OwogICAgICB9CgoKCgogICAgYF07c2hvdWxkVXBkYXRlKHcpe2lmKHcuaGFzKCJpc1NlbGVjdGVkIikmJnRoaXMuYmxvY2spe2xldCBNPW51bGwsQz1gLmJsb2NrLiR7dGhpcy5ibG9jay50eXBlfWA7cmV0dXJuIE09dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKEMpLE0mJih0aGlzLmlzU2VsZWN0ZWQ/TS5jbGFzc0xpc3QuYWRkKCJzZWxlY3RlZCIpOk0uY2xhc3NMaXN0LnJlbW92ZSgic2VsZWN0ZWQiKSksITF9aWYody5oYXMoImJsb2NrIikmJnRoaXMuYmxvY2spe2xldCBNPXcuZ2V0KCJibG9jayIpO2lmKE0mJk0uaWQmJk0udHlwZSYmTS5pZD09PXRoaXMuYmxvY2suaWQmJk0udHlwZT09PXRoaXMuYmxvY2sudHlwZSlyZXR1cm4hMX1yZXR1cm4hdGhpcy5ibG9ja0VsZW1lbnR8fHRoaXMuYmxvY2s/LnR5cGUhPT10aGlzLmJsb2NrRWxlbWVudC5kYXRhc2V0LmJsb2NrVHlwZX1maXJzdFVwZGF0ZWQoKXt0aGlzLmNvbnRlbnRJbml0aWFsaXplZD0hMCx0aGlzLmluamVjdEhhbmRsZXJTdHlsZXMoKTtsZXQgdz10aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoIi53eXNpd3lnLWJsb2NrLWNvbnRhaW5lciIpO2lmKHcmJnRoaXMuYmxvY2smJih3LmlubmVySFRNTD10aGlzLnJlbmRlckJsb2NrQ29udGVudCgpKSx0aGlzLmJsb2NrKXtsZXQgRj1Rci5nZXRIYW5kbGVyKHRoaXMuYmxvY2sudHlwZSk7aWYoRil7bGV0IEM9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCIud3lzaXd5Zy1ibG9jay1jb250YWluZXIiKTtDJiZGLnNldHVwKEMsdGhpcy5ibG9jayx0aGlzLmhhbmRsZXJzKTtyZXR1cm59fWxldCBNPXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiLmJsb2NrIik7aWYoTSl7TS5zZXRBdHRyaWJ1dGUoImRhdGEtYmxvY2staWQiLHRoaXMuYmxvY2suaWQpLE0uc2V0QXR0cmlidXRlKCJkYXRhLWJsb2NrLXR5cGUiLHRoaXMuYmxvY2sudHlwZSksTS5hZGRFdmVudExpc3RlbmVyKCJpbnB1dCIsQz0+e3RoaXMuaGFuZGxlcnM/Lm9uSW5wdXQ/LihDKTtsZXQgaz10aGlzLmdldEN1cnNvclBvc2l0aW9uKE0pO2shPT1udWxsJiYodGhpcy5sYXN0S25vd25DdXJzb3JQb3NpdGlvbj1rKX0pLE0uYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsQz0+e2xldCBrPXRoaXMuZ2V0Q3Vyc29yUG9zaXRpb24oTSk7ayE9PW51bGwmJih0aGlzLmxhc3RLbm93bkN1cnNvclBvc2l0aW9uPWspLHRoaXMuaGFuZGxlcnM/Lm9uS2V5RG93bj8uKEMpfSksTS5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsKCk9Pnt0aGlzLmhhbmRsZXJzPy5vbkZvY3VzPy4oKX0pLE0uYWRkRXZlbnRMaXN0ZW5lcigiYmx1ciIsKCk9Pnt0aGlzLmhhbmRsZXJzPy5vbkJsdXI/LigpfSksTS5hZGRFdmVudExpc3RlbmVyKCJjb21wb3NpdGlvbnN0YXJ0IiwoKT0+e3RoaXMuaGFuZGxlcnM/Lm9uQ29tcG9zaXRpb25TdGFydD8uKCl9KSxNLmFkZEV2ZW50TGlzdGVuZXIoImNvbXBvc2l0aW9uZW5kIiwoKT0+e3RoaXMuaGFuZGxlcnM/Lm9uQ29tcG9zaXRpb25FbmQ/LigpfSksTS5hZGRFdmVudExpc3RlbmVyKCJtb3VzZXVwIixDPT57bGV0IGs9dGhpcy5nZXRDdXJzb3JQb3NpdGlvbihNKTtrIT09bnVsbCYmKHRoaXMubGFzdEtub3duQ3Vyc29yUG9zaXRpb249ayksdGhpcy5oYW5kbGVycz8ub25Nb3VzZVVwPy4oQyl9KSxNLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwoKT0+e3NldFRpbWVvdXQoKCk9PntsZXQgQz10aGlzLmdldEN1cnNvclBvc2l0aW9uKE0pO0MhPT1udWxsJiYodGhpcy5sYXN0S25vd25DdXJzb3JQb3NpdGlvbj1DKX0sMCl9KTtsZXQgRj0oKT0+e2xldCBDPXdpbmRvdy5nZXRTZWxlY3Rpb24oKTtpZighQ3x8Qy5yYW5nZUNvdW50PT09MClyZXR1cm47bGV0IGs9Qy50b1N0cmluZygpO2lmKGsubGVuZ3RoPT09MCl7dGhpcy5sYXN0U2VsZWN0ZWRUZXh0JiYodGhpcy5sYXN0U2VsZWN0ZWRUZXh0PSIiLHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoImJsb2NrLXRleHQtc2VsZWN0ZWQiLHtkZXRhaWw6e3RleHQ6IiIsYmxvY2tJZDp0aGlzLmJsb2NrLmlkLGhhc1NlbGVjdGlvbjohMX0sYnViYmxlczohMCxjb21wb3NlZDohMH0pKSk7cmV0dXJufWxldCBOPXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiLmJsb2NrIik7aWYoIU4pcmV0dXJuO2xldCBJPXRoaXMuY2xvc2VzdCgiZGVlcy1pbnB1dC13eXNpd3lnIik/LnNoYWRvd1Jvb3QsQj1bXTtJJiZCLnB1c2goSSksdGhpcy5zaGFkb3dSb290JiZCLnB1c2godGhpcy5zaGFkb3dSb290KTtsZXQgej1ydC5nZXRTZWxlY3Rpb25JbmZvKC4uLkIpO2lmKCF6KXJldHVybjtsZXQgeT1ydC5jb250YWluc0Fjcm9zc1NoYWRvd0RPTShOLHouc3RhcnRDb250YWluZXIpLEU9cnQuY29udGFpbnNBY3Jvc3NTaGFkb3dET00oTix6LmVuZENvbnRhaW5lcik7aWYoeXx8RSl7aWYoayE9PXRoaXMubGFzdFNlbGVjdGVkVGV4dCl7dGhpcy5sYXN0U2VsZWN0ZWRUZXh0PWs7bGV0IF89cnQuY3JlYXRlUmFuZ2VGcm9tSW5mbyh6KSxQPV8uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7dGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgiYmxvY2stdGV4dC1zZWxlY3RlZCIse2RldGFpbDp7dGV4dDprLnRyaW0oKSxibG9ja0lkOnRoaXMuYmxvY2suaWQscmFuZ2U6XyxyZWN0OlAsaGFzU2VsZWN0aW9uOiEwfSxidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpfX1lbHNlIHRoaXMubGFzdFNlbGVjdGVkVGV4dCYmKHRoaXMubGFzdFNlbGVjdGVkVGV4dD0iIix0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJibG9jay10ZXh0LXNlbGVjdGVkIix7ZGV0YWlsOnt0ZXh0OiIiLGJsb2NrSWQ6dGhpcy5ibG9jay5pZCxoYXNTZWxlY3Rpb246ITF9LGJ1YmJsZXM6ITAsY29tcG9zZWQ6ITB9KSkpfTtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJzZWxlY3Rpb25jaGFuZ2UiLEYpLHRoaXMuX3NlbGVjdGlvbkhhbmRsZXI9RixNLmFkZEV2ZW50TGlzdGVuZXIoImtleXVwIiwoKT0+e2xldCBDPXRoaXMuZ2V0Q3Vyc29yUG9zaXRpb24oTSk7QyE9PW51bGwmJih0aGlzLmxhc3RLbm93bkN1cnNvclBvc2l0aW9uPUMpfSksdGhpcy5ibG9jay5jb250ZW50JiYoTS5pbm5lckhUTUw9dGhpcy5ibG9jay5jb250ZW50KX10aGlzLmJsb2NrRWxlbWVudD1NfXJlbmRlcigpe3JldHVybiB0aGlzLmJsb2NrP1g0YDxkaXYgY2xhc3M9Ind5c2l3eWctYmxvY2stY29udGFpbmVyIj48L2Rpdj5gOlg0YGB9cmVuZGVyQmxvY2tDb250ZW50KCl7aWYoIXRoaXMuYmxvY2spcmV0dXJuIiI7bGV0IHc9UXIuZ2V0SGFuZGxlcih0aGlzLmJsb2NrLnR5cGUpO2lmKHcpcmV0dXJuIHcucmVuZGVyKHRoaXMuYmxvY2ssdGhpcy5pc1NlbGVjdGVkKTtsZXQgTT10aGlzLmlzU2VsZWN0ZWQ/IiBzZWxlY3RlZCI6IiI7cmV0dXJuYAogICAgICA8ZGl2CiAgICAgICAgY2xhc3M9ImJsb2NrICR7dGhpcy5ibG9jay50eXBlfSR7TX0iCiAgICAgICAgY29udGVudGVkaXRhYmxlPSJ0cnVlIgogICAgICA+PC9kaXY+CiAgICBgfWZvY3VzKCl7bGV0IHc9UXIuZ2V0SGFuZGxlcih0aGlzLmJsb2NrLnR5cGUpO2lmKHcmJncuZm9jdXMpe2xldCBGPXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiLnd5c2l3eWctYmxvY2stY29udGFpbmVyIiksQz17c2hhZG93Um9vdDp0aGlzLnNoYWRvd1Jvb3QsY29tcG9uZW50OnRoaXN9O3JldHVybiB3LmZvY3VzKEYsQyl9aWYodGhpcy5ibG9jayYmdi5OT05fRURJVEFCTEVfVFlQRVMuaW5jbHVkZXModGhpcy5ibG9jay50eXBlKSl7bGV0IEY9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKGAuYmxvY2suJHt0aGlzLmJsb2NrLnR5cGV9YCk7RiYmRi5mb2N1cygpO3JldHVybn1sZXQgTT10aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoIi5ibG9jayIpO00mJihNLmhhc0F0dHJpYnV0ZSgiY29udGVudGVkaXRhYmxlIil8fE0uc2V0QXR0cmlidXRlKCJjb250ZW50ZWRpdGFibGUiLCJ0cnVlIiksTS5mb2N1cygpLGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQhPT1NJiZ0aGlzLnNoYWRvd1Jvb3Q/LmFjdGl2ZUVsZW1lbnQhPT1NJiZQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT57TS5mb2N1cygpfSkpfWZvY3VzV2l0aEN1cnNvcih3PSJlbmQiKXtsZXQgTT1Rci5nZXRIYW5kbGVyKHRoaXMuYmxvY2sudHlwZSk7aWYoTSYmTS5mb2N1c1dpdGhDdXJzb3Ipe2xldCBrPXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiLnd5c2l3eWctYmxvY2stY29udGFpbmVyIiksTj17c2hhZG93Um9vdDp0aGlzLnNoYWRvd1Jvb3QsY29tcG9uZW50OnRoaXN9O3JldHVybiBNLmZvY3VzV2l0aEN1cnNvcihrLHcsTil9aWYodGhpcy5ibG9jayYmdi5OT05fRURJVEFCTEVfVFlQRVMuaW5jbHVkZXModGhpcy5ibG9jay50eXBlKSl7dGhpcy5mb2N1cygpO3JldHVybn1sZXQgRj10aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoIi5ibG9jayIpO2lmKCFGKXJldHVybjtGLmhhc0F0dHJpYnV0ZSgiY29udGVudGVkaXRhYmxlIil8fEYuc2V0QXR0cmlidXRlKCJjb250ZW50ZWRpdGFibGUiLCJ0cnVlIiksRi5mb2N1cygpO2xldCBDPSgpPT57dz09PSJzdGFydCI/dGhpcy5zZXRDdXJzb3JUb1N0YXJ0KCk6dz09PSJlbmQiP3RoaXMuc2V0Q3Vyc29yVG9FbmQoKTp0eXBlb2Ygdz09Im51bWJlciImJnJ0LnNldEN1cnNvclBvc2l0aW9uKEYsdyl9O2RvY3VtZW50LmFjdGl2ZUVsZW1lbnQ9PT1GfHx0aGlzLnNoYWRvd1Jvb3Q/LmFjdGl2ZUVsZW1lbnQ9PT1GP0MoKTpQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT57KGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ9PT1GfHx0aGlzLnNoYWRvd1Jvb3Q/LmFjdGl2ZUVsZW1lbnQ9PT1GKSYmQygpfSl9Z2V0Q3Vyc29yUG9zaXRpb24odyl7bGV0IE09UXIuZ2V0SGFuZGxlcih0aGlzLmJsb2NrLnR5cGUpO2lmKE0mJk0uZ2V0Q3Vyc29yUG9zaXRpb24pe2xldCBCPXtzaGFkb3dSb290OnRoaXMuc2hhZG93Um9vdCxjb21wb25lbnQ6dGhpc307cmV0dXJuIE0uZ2V0Q3Vyc29yUG9zaXRpb24odyxCKX1sZXQgQz10aGlzLmNsb3Nlc3QoImRlZXMtaW5wdXQtd3lzaXd5ZyIpPy5zaGFkb3dSb290LGs9W107QyYmay5wdXNoKEMpLHRoaXMuc2hhZG93Um9vdCYmay5wdXNoKHRoaXMuc2hhZG93Um9vdCk7bGV0IE49cnQuZ2V0U2VsZWN0aW9uSW5mbyguLi5rKTtpZihjb25zb2xlLmxvZygiZ2V0Q3Vyc29yUG9zaXRpb246IFNlbGVjdGlvbiBpbmZvIGZyb20gc2hhZG93IERPTXM6Iix7c2VsZWN0aW9uSW5mbzpOLHNoYWRvd1Jvb3RzQ291bnQ6ay5sZW5ndGh9KSwhTilyZXR1cm4gY29uc29sZS5sb2coImdldEN1cnNvclBvc2l0aW9uOiBObyBzZWxlY3Rpb24gZm91bmQiKSxudWxsO2lmKGNvbnNvbGUubG9nKCJnZXRDdXJzb3JQb3NpdGlvbjogUmFuZ2UgaW5mbzoiLHtzdGFydENvbnRhaW5lcjpOLnN0YXJ0Q29udGFpbmVyLHN0YXJ0T2Zmc2V0Ok4uc3RhcnRPZmZzZXQsY29sbGFwc2VkOk4uY29sbGFwc2VkLHN0YXJ0Q29udGFpbmVyVGV4dDpOLnN0YXJ0Q29udGFpbmVyLnRleHRDb250ZW50fSksIXcuY29udGFpbnMoTi5zdGFydENvbnRhaW5lcikpcmV0dXJuIGNvbnNvbGUubG9nKCJnZXRDdXJzb3JQb3NpdGlvbjogUmFuZ2Ugbm90IGluIGVsZW1lbnQiKSxudWxsO2xldCAkPWRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7JC5zZWxlY3ROb2RlQ29udGVudHModyksJC5zZXRFbmQoTi5zdGFydENvbnRhaW5lcixOLnN0YXJ0T2Zmc2V0KTtsZXQgST0kLnRvU3RyaW5nKCkubGVuZ3RoO3JldHVybiBjb25zb2xlLmxvZygiZ2V0Q3Vyc29yUG9zaXRpb246IENhbGN1bGF0ZWQgcG9zaXRpb246Iix7cG9zaXRpb246SSxwcmVDYXJldFRleHQ6JC50b1N0cmluZygpLGVsZW1lbnRUZXh0OncudGV4dENvbnRlbnQsZWxlbWVudFRleHRMZW5ndGg6dy50ZXh0Q29udGVudD8ubGVuZ3RofSksSX1nZXRDb250ZW50KCl7bGV0IHc9UXIuZ2V0SGFuZGxlcih0aGlzLmJsb2NrLnR5cGUpO2lmKHcmJncuZ2V0Q29udGVudCl7bGV0IEM9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCIud3lzaXd5Zy1ibG9jay1jb250YWluZXIiKSxrPXtzaGFkb3dSb290OnRoaXMuc2hhZG93Um9vdCxjb21wb25lbnQ6dGhpc307cmV0dXJuIHcuZ2V0Q29udGVudChDLGspfWxldCBNPXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiLmJsb2NrIik7aWYoIU0pcmV0dXJuIiI7bGV0IEY9TS5pbm5lckhUTUx8fCIiO3JldHVybiBjb25zb2xlLmxvZygiR2V0dGluZyBjb250ZW50IGZyb20gYmxvY2s6IixGKSxGfXNldENvbnRlbnQodyl7bGV0IE09UXIuZ2V0SGFuZGxlcih0aGlzLmJsb2NrLnR5cGUpO2lmKE0mJk0uc2V0Q29udGVudCl7bGV0IGs9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCIud3lzaXd5Zy1ibG9jay1jb250YWluZXIiKSxOPXtzaGFkb3dSb290OnRoaXMuc2hhZG93Um9vdCxjb21wb25lbnQ6dGhpc307cmV0dXJuIE0uc2V0Q29udGVudChrLHcsTil9bGV0IEY9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCIuYmxvY2siKTtpZighRilyZXR1cm47bGV0IEM9ZG9jdW1lbnQuYWN0aXZlRWxlbWVudD09PUZ8fHRoaXMuc2hhZG93Um9vdD8uYWN0aXZlRWxlbWVudD09PUY7Ri5pbm5lckhUTUw9dyxDJiZGLmZvY3VzKCl9c2V0Q3Vyc29yVG9TdGFydCgpe2xldCB3PVFyLmdldEhhbmRsZXIodGhpcy5ibG9jay50eXBlKTtpZih3JiZ3LnNldEN1cnNvclRvU3RhcnQpe2xldCBGPXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiLnd5c2l3eWctYmxvY2stY29udGFpbmVyIiksQz17c2hhZG93Um9vdDp0aGlzLnNoYWRvd1Jvb3QsY29tcG9uZW50OnRoaXN9O3JldHVybiB3LnNldEN1cnNvclRvU3RhcnQoRixDKX1sZXQgTT10aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoIi5ibG9jayIpO00mJmcxLnNldEN1cnNvclRvU3RhcnQoTSl9c2V0Q3Vyc29yVG9FbmQoKXtsZXQgdz1Rci5nZXRIYW5kbGVyKHRoaXMuYmxvY2sudHlwZSk7aWYodyYmdy5zZXRDdXJzb3JUb0VuZCl7bGV0IEY9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCIud3lzaXd5Zy1ibG9jay1jb250YWluZXIiKSxDPXtzaGFkb3dSb290OnRoaXMuc2hhZG93Um9vdCxjb21wb25lbnQ6dGhpc307cmV0dXJuIHcuc2V0Q3Vyc29yVG9FbmQoRixDKX1sZXQgTT10aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoIi5ibG9jayIpO00mJmcxLnNldEN1cnNvclRvRW5kKE0pfWdldENvbnRleHRNZW51SXRlbXMoKXtpZighdGhpcy5ibG9ja3x8dGhpcy5ibG9jay50eXBlPT09ImRpdmlkZXIiKXJldHVybltdO2xldCB3PW9pLmdldFNsYXNoTWVudUl0ZW1zKCksTT10aGlzLmJsb2NrLnR5cGUsRj10aGlzLnd5c2l3eWdDb21wb25lbnQsQz10aGlzLmJsb2NrLmlkLE49W3tuYW1lOiJDaGFuZ2UgVHlwZSIsaWNvbk5hbWU6InR5cGUiLHN1Ym1lbnU6dy5maWx0ZXIoJD0+JC50eXBlIT09TSYmJC50eXBlIT09ImRpdmlkZXIiKS5tYXAoJD0+KHtuYW1lOiQubGFiZWwsaWNvbk5hbWU6JC5pY29uLnJlcGxhY2UoImx1Y2lkZToiLCIiKSxhY3Rpb246YXN5bmMoKT0+e2lmKEYmJkYuYmxvY2tPcGVyYXRpb25zKXtsZXQgST1GLmJsb2Nrcy5maW5kKEI9PkIuaWQ9PT1DKTtJJiYoSS50eXBlPSQudHlwZSxJLmNvbnRlbnQ9SS5jb250ZW50fHwiIiwkLnR5cGU9PT0iY29kZSI/SS5tZXRhZGF0YT17bGFuZ3VhZ2U6InR5cGVzY3JpcHQifTokLnR5cGU9PT0ibGlzdCI/SS5tZXRhZGF0YT17bGlzdFR5cGU6ImJ1bGxldCJ9OiQudHlwZT09PSJpbWFnZSI/KEkuY29udGVudD0iIixJLm1ldGFkYXRhPXt1cmw6IiIsbG9hZGluZzohMX0pOiQudHlwZT09PSJ5b3V0dWJlIj8oSS5jb250ZW50PSIiLEkubWV0YWRhdGE9e3ZpZGVvSWQ6IiIsdXJsOiIifSk6JC50eXBlPT09Im1hcmtkb3duIj9JLm1ldGFkYXRhPXtzaG93UHJldmlldzohMX06JC50eXBlPT09Imh0bWwiP0kubWV0YWRhdGE9e3Nob3dQcmV2aWV3OiExfTokLnR5cGU9PT0iYXR0YWNobWVudCImJihJLmNvbnRlbnQ9IiIsSS5tZXRhZGF0YT17ZmlsZXM6W119KSxGLnVwZGF0ZUJsb2NrRWxlbWVudChDKSxGLnVwZGF0ZVZhbHVlKCkscmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57Ri5ibG9ja09wZXJhdGlvbnMuZm9jdXNCbG9jayhDKX0pKX19fSkpfV07cmV0dXJuWyJpbWFnZSIsImRpdmlkZXIiLCJ5b3V0dWJlIiwiYXR0YWNobWVudCJdLmluY2x1ZGVzKHRoaXMuYmxvY2sudHlwZSl8fE4ucHVzaCh7ZGl2aWRlcjohMH0se25hbWU6IkN1dCIsaWNvbk5hbWU6InNjaXNzb3JzIixzaG9ydGN1dDoiQ21kK1giLGFjdGlvbjphc3luYygpPT57ZG9jdW1lbnQuZXhlY0NvbW1hbmQoImN1dCIpfX0se25hbWU6IkNvcHkiLGljb25OYW1lOiJjb3B5IixzaG9ydGN1dDoiQ21kK0MiLGFjdGlvbjphc3luYygpPT57ZG9jdW1lbnQuZXhlY0NvbW1hbmQoImNvcHkiKX19LHtuYW1lOiJQYXN0ZSIsaWNvbk5hbWU6ImNsaXBib2FyZCIsc2hvcnRjdXQ6IkNtZCtWIixhY3Rpb246YXN5bmMoKT0+e2RvY3VtZW50LmV4ZWNDb21tYW5kKCJwYXN0ZSIpfX0pLE4ucHVzaCh7ZGl2aWRlcjohMH0se25hbWU6IkRlbGV0ZSBCbG9jayIsaWNvbk5hbWU6InRyYXNoMiIsYWN0aW9uOmFzeW5jKCk9PntGJiZGLmJsb2NrT3BlcmF0aW9ucyYmRi5ibG9ja09wZXJhdGlvbnMuZGVsZXRlQmxvY2soQyl9fSksTn1nZXRTcGxpdENvbnRlbnQoKXtjb25zb2xlLmxvZygiZ2V0U3BsaXRDb250ZW50OiBTdGFydGluZy4uLiIpO2xldCB3PVFyLmdldEhhbmRsZXIodGhpcy5ibG9jay50eXBlKTtpZihjb25zb2xlLmxvZygiZ2V0U3BsaXRDb250ZW50OiBDaGVja2luZyBmb3IgaGFuZGxlciIse2Jsb2NrVHlwZTp0aGlzLmJsb2NrLnR5cGUsaGFzSGFuZGxlcjohIXcsaGFzU3BsaXRNZXRob2Q6ISEodyYmdy5nZXRTcGxpdENvbnRlbnQpfSksdyYmdy5nZXRTcGxpdENvbnRlbnQpe2xldCBWPXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiLnd5c2l3eWctYmxvY2stY29udGFpbmVyIik7Y29uc29sZS5sb2coImdldFNwbGl0Q29udGVudDogRm91bmQgY29udGFpbmVyIix7Y29udGFpbmVyOiEhVixjb250YWluZXJIVE1MOlY/LmlubmVySFRNTD8uc3Vic3RyaW5nKDAsMTAwKX0pO2xldCBIPXtzaGFkb3dSb290OnRoaXMuc2hhZG93Um9vdCxjb21wb25lbnQ6dGhpc307cmV0dXJuIHcuZ2V0U3BsaXRDb250ZW50KFYsSCl9bGV0IE09dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCIuYmxvY2siKTtpZighTSlyZXR1cm4gY29uc29sZS5sb2coImdldFNwbGl0Q29udGVudDogTm8gZWRpdGFibGUgZWxlbWVudCBmb3VuZCIpLG51bGw7Y29uc29sZS5sb2coImdldFNwbGl0Q29udGVudDogRWxlbWVudCBpbmZvOiIse2Jsb2NrVHlwZTp0aGlzLmJsb2NrLnR5cGUsaW5uZXJIVE1MOk0uaW5uZXJIVE1MLHRleHRDb250ZW50Ok0udGV4dENvbnRlbnQsdGV4dExlbmd0aDpNLnRleHRDb250ZW50Py5sZW5ndGh9KTtsZXQgQz10aGlzLmNsb3Nlc3QoImRlZXMtaW5wdXQtd3lzaXd5ZyIpPy5zaGFkb3dSb290LGs9W107QyYmay5wdXNoKEMpLHRoaXMuc2hhZG93Um9vdCYmay5wdXNoKHRoaXMuc2hhZG93Um9vdCk7bGV0IE49cnQuZ2V0U2VsZWN0aW9uSW5mbyguLi5rKTtpZihjb25zb2xlLmxvZygiZ2V0U3BsaXRDb250ZW50OiBTZWxlY3Rpb24gaW5mbyBmcm9tIHNoYWRvdyBET01zOiIse3NlbGVjdGlvbkluZm86TixzaGFkb3dSb290c0NvdW50OmsubGVuZ3RofSksIU4pe2lmKGNvbnNvbGUubG9nKCJnZXRTcGxpdENvbnRlbnQ6IE5vIHNlbGVjdGlvbiwgdXNpbmcgbGFzdCBrbm93biBwb3NpdGlvbjoiLHRoaXMubGFzdEtub3duQ3Vyc29yUG9zaXRpb24pLHRoaXMubGFzdEtub3duQ3Vyc29yUG9zaXRpb24hPT1udWxsKXtsZXQgVj1NLnRleHRDb250ZW50fHwiIixIPU1hdGgubWluKHRoaXMubGFzdEtub3duQ3Vyc29yUG9zaXRpb24sVi5sZW5ndGgpO3JldHVybiBjb25zb2xlLmxvZygiZ2V0U3BsaXRDb250ZW50OiBTcGxpdHRpbmcgd2l0aCBsYXN0IGtub3duIHBvc2l0aW9uOiIse3BvczpILGZ1bGxUZXh0TGVuZ3RoOlYubGVuZ3RoLGJlZm9yZTpWLnN1YnN0cmluZygwLEgpLGFmdGVyOlYuc3Vic3RyaW5nKEgpfSkse2JlZm9yZTpWLnN1YnN0cmluZygwLEgpLGFmdGVyOlYuc3Vic3RyaW5nKEgpfX1yZXR1cm4gbnVsbH1pZihjb25zb2xlLmxvZygiZ2V0U3BsaXRDb250ZW50OiBTZWxlY3Rpb24gcmFuZ2U6Iix7c3RhcnRDb250YWluZXI6Ti5zdGFydENvbnRhaW5lcixzdGFydE9mZnNldDpOLnN0YXJ0T2Zmc2V0LHN0YXJ0Q29udGFpbmVySW5FbGVtZW50Ok0uY29udGFpbnMoTi5zdGFydENvbnRhaW5lcil9KSwhcnQuY29udGFpbnNBY3Jvc3NTaGFkb3dET00oTSxOLnN0YXJ0Q29udGFpbmVyKSl7aWYoY29uc29sZS5sb2coImdldFNwbGl0Q29udGVudDogU2VsZWN0aW9uIG5vdCBpbiB0aGlzIGJsb2NrLCB1c2luZyBsYXN0IGtub3duIHBvc2l0aW9uOiIsdGhpcy5sYXN0S25vd25DdXJzb3JQb3NpdGlvbiksdGhpcy5sYXN0S25vd25DdXJzb3JQb3NpdGlvbiE9PW51bGwpe2xldCBWPU0udGV4dENvbnRlbnR8fCIiLEg9TWF0aC5taW4odGhpcy5sYXN0S25vd25DdXJzb3JQb3NpdGlvbixWLmxlbmd0aCk7cmV0dXJue2JlZm9yZTpWLnN1YnN0cmluZygwLEgpLGFmdGVyOlYuc3Vic3RyaW5nKEgpfX1yZXR1cm4gbnVsbH1sZXQgJD10aGlzLmdldEN1cnNvclBvc2l0aW9uKE0pO2lmKGNvbnNvbGUubG9nKCJnZXRTcGxpdENvbnRlbnQ6IEN1cnNvciBwb3NpdGlvbiBmb3IgSFRNTCBzcGxpdDoiLCQpLCQ9PT1udWxsfHwkPT09MClyZXR1cm4gY29uc29sZS5sb2coImdldFNwbGl0Q29udGVudDogQ3Vyc29yIGF0IHN0YXJ0IG9yIG51bGwsIG1vdmluZyBhbGwgY29udGVudCIpLHtiZWZvcmU6IiIsYWZ0ZXI6TS5pbm5lckhUTUx9O2xldCBJPWRvY3VtZW50LmNyZWF0ZVJhbmdlKCksQj1kb2N1bWVudC5jcmVhdGVSYW5nZSgpO0kuc2V0U3RhcnQoTSwwKSxJLnNldEVuZChOLnN0YXJ0Q29udGFpbmVyLE4uc3RhcnRPZmZzZXQpLEIuc2V0U3RhcnQoTi5zdGFydENvbnRhaW5lcixOLnN0YXJ0T2Zmc2V0KSxCLnNldEVuZChNLE0uY2hpbGROb2Rlcy5sZW5ndGgpO2xldCB6PUkuY2xvbmVDb250ZW50cygpLHk9Qi5jbG9uZUNvbnRlbnRzKCksRT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtFLmFwcGVuZENoaWxkKHopO2xldCBfPUUuaW5uZXJIVE1MO0UuaW5uZXJIVE1MPSIiLEUuYXBwZW5kQ2hpbGQoeSk7bGV0IFA9RS5pbm5lckhUTUw7cmV0dXJuIGNvbnNvbGUubG9nKCJnZXRTcGxpdENvbnRlbnQ6IEZpbmFsIHNwbGl0IHJlc3VsdDoiLHtjdXJzb3JQb3M6JCxiZWZvcmVIdG1sOl8sYmVmb3JlTGVuZ3RoOl8ubGVuZ3RoLGJlZm9yZUh0bWxQcmV2aWV3Ol8uc3Vic3RyaW5nKDAsMTAwKSsoXy5sZW5ndGg+MTAwPyIuLi4iOiIiKSxhZnRlckh0bWw6UCxhZnRlckxlbmd0aDpQLmxlbmd0aCxhZnRlckh0bWxQcmV2aWV3OlAuc3Vic3RyaW5nKDAsMTAwKSsoUC5sZW5ndGg+MTAwPyIuLi4iOiIiKX0pLHtiZWZvcmU6XyxhZnRlcjpQfX1zdGF0aWN7SGMoYSxyKX19O3JldHVybiB2PWF9KSgpfSk7dmFyIGtjdD1sKCgpPT57WGxlKCk7T28oKTtZOSgpO1psZSgpO1QkcigpO3hjdCgpO0U4KCk7aGN0KCk7dWwoKTtCYygpO2JjdCgpO3djdCgpO1YkcigpO1UkcigpO1ckcigpO01jdCgpO0ckcigpO3BjdCgpO21jdCgpO1okcigpfSk7dmFyIGQzLGhvLCRaLFhsZT1sKCgpPT57UGEoKTtfJHIoKTtTOCgpO1NlKCk7a2N0KCk7b3QoKTtkMz1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LGhvPWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSwkWj0oKCk9PntsZXQgZT1bemUoImRlZXMtaW5wdXQtd3lzaXd5ZyIpXSx0LHI9W10sYSxpPWh0LG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdLHUscD1bXSxoPVtdLGIseD1bXSxnPVtdLHYsdz1bXSxNPVtdLEYsQz1bXSxrPVtdLE4sJD1bXSxJPVtdO3ZhciBCPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgej10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHt0eXBlOlN0cmluZ30pXSxjPVtqKHt0eXBlOlN0cmluZ30pXSx1PVtyZSgpXSxiPVtyZSgpXSx2PVtyZSgpXSxGPVtyZSgpXSxOPVtyZSgpXSxkMyh0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InZhbHVlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5PT4idmFsdWUiaW4geSxnZXQ6eT0+eS52YWx1ZSxzZXQ6KHksRSk9Pnt5LnZhbHVlPUV9fSxtZXRhZGF0YTp6fSxuLHMpLGQzKHRoaXMsbnVsbCxjLHtraW5kOiJhY2Nlc3NvciIsbmFtZToib3V0cHV0Rm9ybWF0IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5PT4ib3V0cHV0Rm9ybWF0ImluIHksZ2V0Onk9Pnkub3V0cHV0Rm9ybWF0LHNldDooeSxFKT0+e3kub3V0cHV0Rm9ybWF0PUV9fSxtZXRhZGF0YTp6fSxkLGYpLGQzKHRoaXMsbnVsbCx1LHtraW5kOiJhY2Nlc3NvciIsbmFtZToiYmxvY2tzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5PT4iYmxvY2tzImluIHksZ2V0Onk9PnkuYmxvY2tzLHNldDooeSxFKT0+e3kuYmxvY2tzPUV9fSxtZXRhZGF0YTp6fSxwLGgpLGQzKHRoaXMsbnVsbCxiLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZHJhZ2dlZEJsb2NrSWQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnk9PiJkcmFnZ2VkQmxvY2tJZCJpbiB5LGdldDp5PT55LmRyYWdnZWRCbG9ja0lkLHNldDooeSxFKT0+e3kuZHJhZ2dlZEJsb2NrSWQ9RX19LG1ldGFkYXRhOnp9LHgsZyksZDModGhpcyxudWxsLHYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJkcmFnT3ZlckJsb2NrSWQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnk9PiJkcmFnT3ZlckJsb2NrSWQiaW4geSxnZXQ6eT0+eS5kcmFnT3ZlckJsb2NrSWQsc2V0Oih5LEUpPT57eS5kcmFnT3ZlckJsb2NrSWQ9RX19LG1ldGFkYXRhOnp9LHcsTSksZDModGhpcyxudWxsLEYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJkcmFnT3ZlclBvc2l0aW9uIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5PT4iZHJhZ092ZXJQb3NpdGlvbiJpbiB5LGdldDp5PT55LmRyYWdPdmVyUG9zaXRpb24sc2V0Oih5LEUpPT57eS5kcmFnT3ZlclBvc2l0aW9uPUV9fSxtZXRhZGF0YTp6fSxDLGspLGQzKHRoaXMsbnVsbCxOLHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2VsZWN0ZWRUZXh0IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5PT4ic2VsZWN0ZWRUZXh0ImluIHksZ2V0Onk9Pnkuc2VsZWN0ZWRUZXh0LHNldDooeSxFKT0+e3kuc2VsZWN0ZWRUZXh0PUV9fSxtZXRhZGF0YTp6fSwkLEkpLGQzKG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOnp9LG51bGwsciksQj1hPXQudmFsdWUseiYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTp6fSl9c3RhdGljIGRlbW89QyRyO3N0YXRpYyBkZW1vR3JvdXBzPVsiSW5wdXQiLCJXb3Jrc3BhY2UiXTsjZT1obyh0aGlzLG4sIiIpO2dldCB2YWx1ZSgpe3JldHVybiB0aGlzLiNlfXNldCB2YWx1ZSh6KXt0aGlzLiNlPXp9I3Q9KGhvKHRoaXMscyksaG8odGhpcyxkLCJodG1sIikpO2dldCBvdXRwdXRGb3JtYXQoKXtyZXR1cm4gdGhpcy4jdH1zZXQgb3V0cHV0Rm9ybWF0KHope3RoaXMuI3Q9en0jcj0oaG8odGhpcyxmKSxobyh0aGlzLHAsW3tpZDpvaS5nZW5lcmF0ZUJsb2NrSWQoKSx0eXBlOiJwYXJhZ3JhcGgiLGNvbnRlbnQ6IiJ9XSkpO2dldCBibG9ja3MoKXtyZXR1cm4gdGhpcy4jcn1zZXQgYmxvY2tzKHope3RoaXMuI3I9en1zZWxlY3RlZEJsb2NrSWQ9KGhvKHRoaXMsaCksbnVsbCk7c2xhc2hNZW51PVdsZS5nZXRJbnN0YW5jZSgpOyNhPWhvKHRoaXMseCxudWxsKTtnZXQgZHJhZ2dlZEJsb2NrSWQoKXtyZXR1cm4gdGhpcy4jYX1zZXQgZHJhZ2dlZEJsb2NrSWQoeil7dGhpcy4jYT16fSNpPShobyh0aGlzLGcpLGhvKHRoaXMsdyxudWxsKSk7Z2V0IGRyYWdPdmVyQmxvY2tJZCgpe3JldHVybiB0aGlzLiNpfXNldCBkcmFnT3ZlckJsb2NrSWQoeil7dGhpcy4jaT16fSNvPShobyh0aGlzLE0pLGhvKHRoaXMsQyxudWxsKSk7Z2V0IGRyYWdPdmVyUG9zaXRpb24oKXtyZXR1cm4gdGhpcy4jb31zZXQgZHJhZ092ZXJQb3NpdGlvbih6KXt0aGlzLiNvPXp9Zm9ybWF0dGluZ01lbnU9KGhvKHRoaXMsayksWWxlLmdldEluc3RhbmNlKCkpOyNuPWhvKHRoaXMsJCwiIik7Z2V0IHNlbGVjdGVkVGV4dCgpe3JldHVybiB0aGlzLiNufXNldCBzZWxlY3RlZFRleHQoeil7dGhpcy4jbj16fWVkaXRvckNvbnRlbnRSZWY9aG8odGhpcyxJKTtpc0NvbXBvc2luZz0hMTtibG9ja09wZXJhdGlvbnM7aW5wdXRIYW5kbGVyO2tleWJvYXJkSGFuZGxlcjtkcmFnRHJvcEhhbmRsZXI7aGlzdG9yeTtzdGF0aWMgc3R5bGVzPVtQZSwuLi5odC5iYXNlU3R5bGVzLG0uZGVmYXVsdFN0eWxlcyxnY3RdO2NvbnN0cnVjdG9yKCl7c3VwZXIoKSx0aGlzLmJsb2NrT3BlcmF0aW9ucz1uZXcgZ1oodGhpcyksdGhpcy5pbnB1dEhhbmRsZXI9bmV3IFRaKHRoaXMpLHRoaXMua2V5Ym9hcmRIYW5kbGVyPW5ldyBMWih0aGlzKSx0aGlzLmRyYWdEcm9wSGFuZGxlcj1uZXcgRFoodGhpcyksdGhpcy5oaXN0b3J5PW5ldyBBWn1hc3luYyBjb25uZWN0ZWRDYWxsYmFjaygpe2F3YWl0IHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCl9YXN5bmMgZGlzY29ubmVjdGVkQ2FsbGJhY2soKXthd2FpdCBzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpLHRoaXMuaW5wdXRIYW5kbGVyPy5kZXN0cm95KCksdGhpcy5ibHVyVGltZW91dCYmKGNsZWFyVGltZW91dCh0aGlzLmJsdXJUaW1lb3V0KSx0aGlzLmJsdXJUaW1lb3V0PW51bGwpfWFzeW5jIGZpcnN0VXBkYXRlZCgpe2lmKHRoaXMudmFsdWUmJnRoaXMudmFsdWUudHJpbSgpLmxlbmd0aD4wKXtsZXQgej10aGlzLm91dHB1dEZvcm1hdD09PSJodG1sIj9Xbi5wYXJzZUh0bWxUb0Jsb2Nrcyh0aGlzLnZhbHVlKTpXbi5wYXJzZU1hcmtkb3duVG9CbG9ja3ModGhpcy52YWx1ZSk7ei5sZW5ndGg+MCYmKHRoaXMuYmxvY2tzPXopfXRoaXMudXBkYXRlVmFsdWUoKSx0aGlzLmVkaXRvckNvbnRlbnRSZWY9dGhpcy5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoIi5lZGl0b3ItY29udGVudCIpLHRoaXMuZWRpdG9yQ29udGVudFJlZiYmdGhpcy5lZGl0b3JDb250ZW50UmVmLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIix6PT50aGlzLmhhbmRsZUVkaXRvckNsaWNrKHopKSx0aGlzLmFkZEV2ZW50TGlzdGVuZXIoImJsb2NrLXRleHQtc2VsZWN0ZWQiLHo9PntpZighdGhpcy5zbGFzaE1lbnUudmlzaWJsZSYmei5kZXRhaWwuaGFzU2VsZWN0aW9uJiZ6LmRldGFpbC50ZXh0Lmxlbmd0aD4wJiYodGhpcy5zZWxlY3RlZFRleHQ9ei5kZXRhaWwudGV4dCx6LmRldGFpbC5yZWN0KSl7bGV0IHk9e3g6ei5kZXRhaWwucmVjdC5sZWZ0K3ouZGV0YWlsLnJlY3Qud2lkdGgvMix5Ok1hdGgubWF4KDQ1LHouZGV0YWlsLnJlY3QudG9wLTQ1KX07dGhpcy5mb3JtYXR0aW5nTWVudS5zaG93KHksYXN5bmMgRT0+YXdhaXQgdGhpcy5hcHBseUZvcm1hdChFKSl9fSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vkb3duIix6PT57bGV0IHk9dGhpcy5mb3JtYXR0aW5nTWVudS5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCIuZm9ybWF0dGluZy1tZW51Iik7aWYoeSYmeS5jb250YWlucyh6LnRhcmdldCkpcmV0dXJuO2xldCBFPXdpbmRvdy5nZXRTZWxlY3Rpb24oKTtFJiZFLnRvU3RyaW5nKCkudHJpbSgpLmxlbmd0aD4wfHx0aGlzLmZvcm1hdHRpbmdNZW51LnZpc2libGUmJnRoaXMuaGlkZUZvcm1hdHRpbmdNZW51KCl9KSx0aGlzLmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLHo9PntsZXQgeT16LnRhcmdldDshdGhpcy5jb250YWlucyh5KSYmIXRoaXMuc2hhZG93Um9vdD8uY29udGFpbnMoeSl8fCgoei5tZXRhS2V5fHx6LmN0cmxLZXkpJiYhei5zaGlmdEtleSYmei5rZXk9PT0ieiI/KHoucHJldmVudERlZmF1bHQoKSx0aGlzLnVuZG8oKSk6KHoubWV0YUtleXx8ei5jdHJsS2V5KSYmei5zaGlmdEtleSYmei5rZXk9PT0ieiImJih6LnByZXZlbnREZWZhdWx0KCksdGhpcy5yZWRvKCkpKX0pLHRoaXMuaGlzdG9yeS5zYXZlU3RhdGUodGhpcy5ibG9ja3MsdGhpcy5zZWxlY3RlZEJsb2NrSWQpLHRoaXMucmVuZGVyQmxvY2tzUHJvZ3JhbW1hdGljYWxseSgpfXJlbmRlckJsb2Nrc1Byb2dyYW1tYXRpY2FsbHkoKXt0aGlzLmVkaXRvckNvbnRlbnRSZWYmJih0aGlzLmVkaXRvckNvbnRlbnRSZWYuaW5uZXJIVE1MPSIiLHRoaXMuYmxvY2tzLmZvckVhY2goej0+e2xldCB5PXRoaXMuY3JlYXRlQmxvY2tFbGVtZW50KHopO3RoaXMuZWRpdG9yQ29udGVudFJlZi5hcHBlbmRDaGlsZCh5KX0pKX1jcmVhdGVCbG9ja0VsZW1lbnQoeil7bGV0IHk9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7aWYoeS5jbGFzc05hbWU9ImJsb2NrLXdyYXBwZXIiLHkuc2V0QXR0cmlidXRlKCJkYXRhLWJsb2NrLWlkIix6LmlkKSx6LnR5cGUhPT0iZGl2aWRlciIpe2xldCBfPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO18uY2xhc3NOYW1lPSJkcmFnLWhhbmRsZSIsXy5kcmFnZ2FibGU9ITAsXy5hZGRFdmVudExpc3RlbmVyKCJkcmFnc3RhcnQiLFA9PnRoaXMuZHJhZ0Ryb3BIYW5kbGVyLmhhbmRsZURyYWdTdGFydChQLHopKSx5LmFwcGVuZENoaWxkKF8pfWxldCBFPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRlZXMtd3lzaXd5Zy1ibG9jayIpO3JldHVybiBFLmJsb2NrPXosRS5pc1NlbGVjdGVkPXRoaXMuc2VsZWN0ZWRCbG9ja0lkPT09ei5pZCxFLnd5c2l3eWdDb21wb25lbnQ9dGhpcyxFLmhhbmRsZXJzPXtvbklucHV0Ol89PnRoaXMuaW5wdXRIYW5kbGVyLmhhbmRsZUJsb2NrSW5wdXQoXyx6KSxvbktleURvd246Xz0+dGhpcy5rZXlib2FyZEhhbmRsZXIuaGFuZGxlQmxvY2tLZXlEb3duKF8seiksb25Gb2N1czooKT0+dGhpcy5oYW5kbGVCbG9ja0ZvY3VzKHopLG9uQmx1cjooKT0+dGhpcy5oYW5kbGVCbG9ja0JsdXIoeiksb25Db21wb3NpdGlvblN0YXJ0OigpPT50aGlzLmlzQ29tcG9zaW5nPSEwLG9uQ29tcG9zaXRpb25FbmQ6KCk9PnRoaXMuaXNDb21wb3Npbmc9ITEsb25Nb3VzZVVwOl89PnRoaXMuaGFuZGxlVGV4dFNlbGVjdGlvbihfKSxvblJlcXVlc3RVcGRhdGU6KCk9PnRoaXMudXBkYXRlQmxvY2tFbGVtZW50KHouaWQpfSx5LmFwcGVuZENoaWxkKEUpLHkuYWRkRXZlbnRMaXN0ZW5lcigiZHJhZ292ZXIiLF89PnRoaXMuZHJhZ0Ryb3BIYW5kbGVyLmhhbmRsZURyYWdPdmVyKF8seikpLHkuYWRkRXZlbnRMaXN0ZW5lcigiZHJvcCIsXz0+dGhpcy5kcmFnRHJvcEhhbmRsZXIuaGFuZGxlRHJvcChfLHopKSx5LmFkZEV2ZW50TGlzdGVuZXIoImRyYWdsZWF2ZSIsKCk9PnRoaXMuZHJhZ0Ryb3BIYW5kbGVyLmhhbmRsZURyYWdMZWF2ZSh6KSkseX11cGRhdGVCbG9ja0VsZW1lbnQoeil7bGV0IHk9dGhpcy5ibG9ja3MuZmluZChQPT5QLmlkPT09eik7aWYoIXkpcmV0dXJuO2xldCBFPXRoaXMuZWRpdG9yQ29udGVudFJlZi5xdWVyeVNlbGVjdG9yKGBbZGF0YS1ibG9jay1pZD0iJHt6fSJdYCk7aWYoIUUpcmV0dXJuO2xldCBfPXRoaXMuY3JlYXRlQmxvY2tFbGVtZW50KHkpO0UucmVwbGFjZVdpdGgoXyl9cmVuZGVyKCl7cmV0dXJuIFg0YAogICAgICA8ZGVlcy1sYWJlbAogICAgICAgIC5sYWJlbD0iJHt0aGlzLmxhYmVsfSIKICAgICAgICAuZGVzY3JpcHRpb249IiR7dGhpcy5kZXNjcmlwdGlvbn0iCiAgICAgICAgLnJlcXVpcmVkPSIke3RoaXMucmVxdWlyZWR9IgogICAgICA+PC9kZWVzLWxhYmVsPgogICAgICA8ZGl2IGNsYXNzPSJ3eXNpd3lnLWNvbnRhaW5lciI+CiAgICAgICAgPGRpdiAKICAgICAgICAgIGNsYXNzPSJlZGl0b3ItY29udGVudCAke3RoaXMuZHJhZ2dlZEJsb2NrSWQ/ImRyYWdnaW5nIjoiIn0iCiAgICAgICAgICBpZD0iZWRpdG9yLWNvbnRlbnQiCiAgICAgICAgPgogICAgICAgICAgPCEtLSBCbG9ja3Mgd2lsbCBiZSByZW5kZXJlZCBwcm9ncmFtbWF0aWNhbGx5IC0tPgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIGB9aGFuZGxlU2xhc2hNZW51S2V5Ym9hcmQoeil7c3dpdGNoKHoua2V5KXtjYXNlIkFycm93RG93biI6ei5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuc2xhc2hNZW51Lm5hdmlnYXRlKCJkb3duIik7YnJlYWs7Y2FzZSJBcnJvd1VwIjp6LnByZXZlbnREZWZhdWx0KCksdGhpcy5zbGFzaE1lbnUubmF2aWdhdGUoInVwIik7YnJlYWs7Y2FzZSJFbnRlciI6ei5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuc2xhc2hNZW51LnNlbGVjdEN1cnJlbnQoKTticmVhaztjYXNlIkVzY2FwZSI6ei5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuY2xvc2VTbGFzaE1lbnUoITApO2JyZWFrfX1jbG9zZVNsYXNoTWVudSh6PSExKXtpZih6JiZ0aGlzLnNlbGVjdGVkQmxvY2tJZCl7bGV0IHk9dGhpcy5ibG9ja3MuZmluZChFPT5FLmlkPT09dGhpcy5zZWxlY3RlZEJsb2NrSWQpO2lmKHkpe2xldCBfPXRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKGBbZGF0YS1ibG9jay1pZD0iJHt5LmlkfSJdYCk/LnF1ZXJ5U2VsZWN0b3IoImRlZXMtd3lzaXd5Zy1ibG9jayIpO2lmKF8pe2xldCBQPV8uZ2V0Q29udGVudCgpO2lmKFAuc3RhcnRzV2l0aCgiLyIpKXtsZXQgVj1QLnJlcGxhY2UoL15cL1teXHNdKlxzKi8sIiIpLnRyaW0oKTtfLnNldENvbnRlbnQoVikseS5jb250ZW50PVYscmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57Xy5mb2N1c1dpdGhDdXJzb3IoMCl9KX19fX10aGlzLnNsYXNoTWVudS5oaWRlKCl9aGFuZGxlQmxvY2tGb2N1cyh6KXt0aGlzLmJsdXJUaW1lb3V0JiYoY2xlYXJUaW1lb3V0KHRoaXMuYmx1clRpbWVvdXQpLHRoaXMuYmx1clRpbWVvdXQ9bnVsbCk7bGV0IHk9dGhpcy5zZWxlY3RlZEJsb2NrSWQ7aWYodGhpcy5zZWxlY3RlZEJsb2NrSWQ9ei5pZCx5IT09ei5pZCl7aWYoeSl7bGV0IFY9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKGBbZGF0YS1ibG9jay1pZD0iJHt5fSJdYCk/LnF1ZXJ5U2VsZWN0b3IoImRlZXMtd3lzaXd5Zy1ibG9jayIpO1YmJihWLmlzU2VsZWN0ZWQ9ITEpfWxldCBfPXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcihgW2RhdGEtYmxvY2staWQ9IiR7ei5pZH0iXWApPy5xdWVyeVNlbGVjdG9yKCJkZWVzLXd5c2l3eWctYmxvY2siKTtfJiYoXy5pc1NlbGVjdGVkPSEwKX19Ymx1clRpbWVvdXQ9bnVsbDtoYW5kbGVCbG9ja0JsdXIoeil7aWYodGhpcy5ibHVyVGltZW91dCYmY2xlYXJUaW1lb3V0KHRoaXMuYmx1clRpbWVvdXQpLHRoaXMuc2xhc2hNZW51LnZpc2libGUpcmV0dXJuO2xldCBFPXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcihgW2RhdGEtYmxvY2staWQ9IiR7ei5pZH0iXWApPy5xdWVyeVNlbGVjdG9yKCJkZWVzLXd5c2l3eWctYmxvY2siKTtpZihFJiZFLmdldENvbnRlbnQpe2xldCBfPUUuZ2V0Q29udGVudCgpO3ouY29udGVudCE9PV8mJih6LmNvbnRlbnQ9Xyl9dGhpcy5ibHVyVGltZW91dD1zZXRUaW1lb3V0KCgpPT57dGhpcy5zaGFkb3dSb290Py5hY3RpdmVFbGVtZW50Py5jbGFzc0xpc3QuY29udGFpbnMoImJsb2NrIil8fHRoaXMudXBkYXRlVmFsdWUoKX0sMTAwKX1oYW5kbGVFZGl0b3JDbGljayh6KXtsZXQgeT16LnRhcmdldDtpZih0aGlzLnNsYXNoTWVudS52aXNpYmxlJiZ0aGlzLmNsb3NlU2xhc2hNZW51KCEwKSx5LmNsYXNzTGlzdC5jb250YWlucygiZWRpdG9yLWNvbnRlbnQiKSl7bGV0IEU9dGhpcy5ibG9ja3NbdGhpcy5ibG9ja3MubGVuZ3RoLTFdO3RoaXMuYmxvY2tPcGVyYXRpb25zLmZvY3VzQmxvY2soRS5pZCxFLnR5cGU9PT0iZGl2aWRlciJ8fEUudHlwZT09PSJpbWFnZSI/dm9pZCAwOiJlbmQiKX19Y3JlYXRlTmV3QmxvY2soej0icGFyYWdyYXBoIix5PSIiLEUpe3JldHVybntpZDpvaS5nZW5lcmF0ZUJsb2NrSWQoKSx0eXBlOnosY29udGVudDp5LC4uLkUmJnttZXRhZGF0YTpFfX19YXN5bmMgaW5zZXJ0QmxvY2tBZnRlcih6LHksRT0hMCl7bGV0IF89dGhpcy5ibG9ja3MuZmluZEluZGV4KFY9PlYuaWQ9PT16LmlkKTt0aGlzLmJsb2Nrcz1bLi4udGhpcy5ibG9ja3Muc2xpY2UoMCxfKzEpLHksLi4udGhpcy5ibG9ja3Muc2xpY2UoXysxKV07bGV0IFA9dGhpcy5lZGl0b3JDb250ZW50UmVmLnF1ZXJ5U2VsZWN0b3IoYFtkYXRhLWJsb2NrLWlkPSIke3ouaWR9Il1gKTtpZihQKXtsZXQgVj10aGlzLmNyZWF0ZUJsb2NrRWxlbWVudCh5KTtQLmluc2VydEFkamFjZW50RWxlbWVudCgiYWZ0ZXJlbmQiLFYpfXRoaXMudXBkYXRlVmFsdWUoKSxFJiZ5LnR5cGUhPT0iZGl2aWRlciImJihhd2FpdCBuZXcgUHJvbWlzZShWPT5zZXRUaW1lb3V0KFYsMCkpLGF3YWl0IHRoaXMuYmxvY2tPcGVyYXRpb25zLmZvY3VzQmxvY2soeS5pZCwic3RhcnQiKSl9YXN5bmMgaW5zZXJ0QmxvY2soeil7bGV0IHk9dGhpcy5ibG9ja3MuZmluZChQPT5QLmlkPT09dGhpcy5zZWxlY3RlZEJsb2NrSWQpO2lmKCF5KXt0aGlzLmNsb3NlU2xhc2hNZW51KCk7cmV0dXJufWxldCBfPXRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKGBbZGF0YS1ibG9jay1pZD0iJHt5LmlkfSJdYCk/LnF1ZXJ5U2VsZWN0b3IoImRlZXMtd3lzaXd5Zy1ibG9jayIpO2lmKF8pe2xldCBQPV8uZ2V0Q29udGVudCgpO2lmKFAuc3RhcnRzV2l0aCgiLyIpKXtsZXQgVj1QLnJlcGxhY2UoL15cL1teXHNdKlxzKi8sIiIpLnRyaW0oKTtfLnNldENvbnRlbnQoVikseS5jb250ZW50PVZ9fWlmKHRoaXMuY2xvc2VTbGFzaE1lbnUoITEpLHo9PT0iY29kZSImJih5Lm1ldGFkYXRhPXtsYW5ndWFnZToidHlwZXNjcmlwdCJ9KSx5LnR5cGU9eix5LmNvbnRlbnQ9eS5jb250ZW50fHwiIix6PT09ImRpdmlkZXIiKXt5LmNvbnRlbnQ9IiAiO2xldCBQPXRoaXMuY3JlYXRlTmV3QmxvY2soKTt0aGlzLmluc2VydEJsb2NrQWZ0ZXIoeSxQKX1lbHNlIHo9PT0ibGlzdCI/KHkubWV0YWRhdGE9e2xpc3RUeXBlOiJidWxsZXQifSx5LmNvbnRlbnQ9IiIpOno9PT0iaW1hZ2UiPyh5LmNvbnRlbnQ9IiIseS5tZXRhZGF0YT17dXJsOiIiLGxvYWRpbmc6ITF9KTp6PT09InlvdXR1YmUiPyh5LmNvbnRlbnQ9IiIseS5tZXRhZGF0YT17dmlkZW9JZDoiIix1cmw6IiJ9KTp6PT09Im1hcmtkb3duIj95Lm1ldGFkYXRhPXtzaG93UHJldmlldzohMX06ej09PSJodG1sIj95Lm1ldGFkYXRhPXtzaG93UHJldmlldzohMX06ej09PSJhdHRhY2htZW50Ij8oeS5jb250ZW50PSIiLHkubWV0YWRhdGE9e2ZpbGVzOltdfSk6eS5jb250ZW50PXkuY29udGVudHx8IiI7dGhpcy51cGRhdGVCbG9ja0VsZW1lbnQoeS5pZCksdGhpcy51cGRhdGVWYWx1ZSgpLGF3YWl0IG5ldyBQcm9taXNlKFA9PnNldFRpbWVvdXQoUCwwKSksej09PSJsaXN0Ij8odGhpcy5ibG9ja09wZXJhdGlvbnMuZm9jdXNCbG9jayh5LmlkLCJzdGFydCIpLHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKT0+e2xldCBWPXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcihgW2RhdGEtYmxvY2staWQ9IiR7eS5pZH0iXWApPy5xdWVyeVNlbGVjdG9yKCJkZWVzLXd5c2l3eWctYmxvY2siKTtWJiZWLmZvY3VzTGlzdEl0ZW0oKX0pKTp6IT09ImRpdmlkZXIiJiZ6IT09ImltYWdlIiYmeiE9PSJ5b3V0dWJlIiYmeiE9PSJtYXJrZG93biImJnohPT0iaHRtbCImJnohPT0iYXR0YWNobWVudCI/dGhpcy5ibG9ja09wZXJhdGlvbnMuZm9jdXNCbG9jayh5LmlkLCJzdGFydCIpOih6PT09ImltYWdlInx8ej09PSJ5b3V0dWJlInx8ej09PSJtYXJrZG93biJ8fHo9PT0iaHRtbCJ8fHo9PT0iYXR0YWNobWVudCIpJiZ0aGlzLmJsb2NrT3BlcmF0aW9ucy5mb2N1c0Jsb2NrKHkuaWQpfXVwZGF0ZVZhbHVlKCl7dGhpcy5vdXRwdXRGb3JtYXQ9PT0iaHRtbCI/dGhpcy52YWx1ZT1Xbi5nZXRIdG1sT3V0cHV0KHRoaXMuYmxvY2tzKTp0aGlzLnZhbHVlPVduLmdldE1hcmtkb3duT3V0cHV0KHRoaXMuYmxvY2tzKSx0aGlzLmNoYW5nZVN1YmplY3QubmV4dCh0aGlzLnZhbHVlKSx0aGlzLnNhdmVUb0hpc3RvcnkoITApfWdldFZhbHVlKCl7cmV0dXJuIHRoaXMudmFsdWV9c2V0VmFsdWUoeil7dGhpcy52YWx1ZT16LHRoaXMub3V0cHV0Rm9ybWF0PT09Imh0bWwiP3RoaXMuYmxvY2tzPVduLnBhcnNlSHRtbFRvQmxvY2tzKHopOnRoaXMuYmxvY2tzPVduLnBhcnNlTWFya2Rvd25Ub0Jsb2Nrcyh6KSx0aGlzLmJsb2Nrcy5sZW5ndGg9PT0wJiYodGhpcy5ibG9ja3M9W3tpZDpvaS5nZW5lcmF0ZUJsb2NrSWQoKSx0eXBlOiJwYXJhZ3JhcGgiLGNvbnRlbnQ6IiJ9XSksdGhpcy5jaGFuZ2VTdWJqZWN0Lm5leHQodGhpcy52YWx1ZSksdGhpcy5lZGl0b3JDb250ZW50UmVmJiZ0aGlzLnJlbmRlckJsb2Nrc1Byb2dyYW1tYXRpY2FsbHkoKX1leHBvcnRCbG9ja3MoKXtyZXR1cm4gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeSh0aGlzLmJsb2NrcykpfWltcG9ydEJsb2Nrcyh6KXt0aGlzLmJsb2Nrcz1KU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHopKSx0aGlzLnVwZGF0ZVZhbHVlKCksdGhpcy5lZGl0b3JDb250ZW50UmVmJiZ0aGlzLnJlbmRlckJsb2Nrc1Byb2dyYW1tYXRpY2FsbHkoKX1leHBvcnRBc0h0bWwoKXtyZXR1cm4gV24uZ2V0SHRtbE91dHB1dCh0aGlzLmJsb2Nrcyl9ZXhwb3J0QXNNYXJrZG93bigpe3JldHVybiBXbi5nZXRNYXJrZG93bk91dHB1dCh0aGlzLmJsb2Nrcyl9ZXhwb3J0U3RhdGUoKXtyZXR1cm57YmxvY2tzOnRoaXMuZXhwb3J0QmxvY2tzKCksb3V0cHV0Rm9ybWF0OnRoaXMub3V0cHV0Rm9ybWF0fX1pbXBvcnRTdGF0ZSh6KXt6Lm91dHB1dEZvcm1hdCYmKHRoaXMub3V0cHV0Rm9ybWF0PXoub3V0cHV0Rm9ybWF0KSx0aGlzLmltcG9ydEJsb2Nrcyh6LmJsb2Nrcyl9aGFuZGxlRHJhZ0VuZCgpe2lmKHRoaXMuZHJhZ2dlZEJsb2NrSWQpe2xldCB5PXRoaXMuZWRpdG9yQ29udGVudFJlZi5xdWVyeVNlbGVjdG9yKGBbZGF0YS1ibG9jay1pZD0iJHt0aGlzLmRyYWdnZWRCbG9ja0lkfSJdYCk7eSYmeS5jbGFzc0xpc3QucmVtb3ZlKCJkcmFnZ2luZyIpfXRoaXMuZWRpdG9yQ29udGVudFJlZi5xdWVyeVNlbGVjdG9yQWxsKCIuYmxvY2std3JhcHBlciIpLmZvckVhY2goeT0+e3kuY2xhc3NMaXN0LnJlbW92ZSgiZHJhZy1vdmVyLWJlZm9yZSIsImRyYWctb3Zlci1hZnRlciIpfSksdGhpcy5lZGl0b3JDb250ZW50UmVmLmNsYXNzTGlzdC5yZW1vdmUoImRyYWdnaW5nIiksdGhpcy5kcmFnZ2VkQmxvY2tJZD1udWxsLHRoaXMuZHJhZ092ZXJCbG9ja0lkPW51bGwsdGhpcy5kcmFnT3ZlclBvc2l0aW9uPW51bGx9aGFuZGxlRHJvcCh6LHkpe2lmKHoucHJldmVudERlZmF1bHQoKSwhdGhpcy5kcmFnZ2VkQmxvY2tJZHx8dGhpcy5kcmFnZ2VkQmxvY2tJZD09PXkuaWQpcmV0dXJuO2xldCBFPXRoaXMuYmxvY2tzLmZpbmRJbmRleChIPT5ILmlkPT09dGhpcy5kcmFnZ2VkQmxvY2tJZCksXz10aGlzLmJsb2Nrcy5maW5kSW5kZXgoSD0+SC5pZD09PXkuaWQpO2lmKEU9PT0tMXx8Xz09PS0xKXJldHVybjtsZXRbUF09dGhpcy5ibG9ja3Muc3BsaWNlKEUsMSksVj1fO3RoaXMuZHJhZ092ZXJQb3NpdGlvbj09PSJhZnRlciI/Vj1FPF8/XzpfKzE6Vj1FPF8/Xy0xOl8sdGhpcy5ibG9ja3Muc3BsaWNlKFYsMCxQKSx0aGlzLnJlbmRlckJsb2Nrc1Byb2dyYW1tYXRpY2FsbHkoKSx0aGlzLnVwZGF0ZVZhbHVlKCksdGhpcy5oYW5kbGVEcmFnRW5kKCksc2V0VGltZW91dCgoKT0+e2xldCBIPXRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKGBbZGF0YS1ibG9jay1pZD0iJHtQLmlkfSJdIC5ibG9ja2ApO0gmJlAudHlwZSE9PSJkaXZpZGVyIiYmSC5mb2N1cygpfSwxMDApfWhhbmRsZVRleHRTZWxlY3Rpb24oeil7dGhpcy5zbGFzaE1lbnUudmlzaWJsZX11cGRhdGVGb3JtYXR0aW5nTWVudVBvc2l0aW9uKCl7bGV0IHo9W107dGhpcy5zaGFkb3dSb290JiZ6LnB1c2godGhpcy5zaGFkb3dSb290KSx0aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3JBbGwoIi5ibG9jay13cmFwcGVyIik/LmZvckVhY2goXz0+e2xldCBQPV8ucXVlcnlTZWxlY3RvcigiZGVlcy13eXNpd3lnLWJsb2NrIik7UD8uc2hhZG93Um9vdCYmei5wdXNoKFAuc2hhZG93Um9vdCl9KTtsZXQgRT1SYy5nZXRTZWxlY3Rpb25Db29yZGluYXRlcyguLi56KTtFJiZ0aGlzLmZvcm1hdHRpbmdNZW51LnNob3coe3g6RS54LHk6RS55fSxhc3luYyBfPT5hd2FpdCB0aGlzLmFwcGx5Rm9ybWF0KF8pKX1oaWRlRm9ybWF0dGluZ01lbnUoKXt0aGlzLmZvcm1hdHRpbmdNZW51LmhpZGUoKSx0aGlzLnNlbGVjdGVkVGV4dD0iIn1hc3luYyBhcHBseUZvcm1hdCh6KXtsZXQgeT1bXTt0aGlzLnNoYWRvd1Jvb3QmJnkucHVzaCh0aGlzLnNoYWRvd1Jvb3QpLHRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvckFsbCgiLmJsb2NrLXdyYXBwZXIiKT8uZm9yRWFjaChhZT0+e2xldCBUPWFlLnF1ZXJ5U2VsZWN0b3IoImRlZXMtd3lzaXd5Zy1ibG9jayIpO1Q/LnNoYWRvd1Jvb3QmJnkucHVzaChULnNoYWRvd1Jvb3QpfSk7bGV0IF89cnQuZ2V0U2VsZWN0aW9uSW5mbyguLi55KTtpZighXylyZXR1cm47bGV0IFAsVixIPXRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yQWxsKCIuYmxvY2std3JhcHBlciIpO2ZvcihsZXQgYWU9MDthZTxILmxlbmd0aDthZSsrKXtsZXQgVD1IW2FlXSxKPVQucXVlcnlTZWxlY3RvcigiZGVlcy13eXNpd3lnLWJsb2NrIik7aWYoSj8uc2hhZG93Um9vdCl7bGV0IGZlPUouc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCIuYmxvY2siKTtpZihmZSYmKGZlLmNvbnRhaW5zKF8uc3RhcnRDb250YWluZXIpfHxmZS5jb250YWlucyhfLmVuZENvbnRhaW5lcikpKXtsZXQgTD1ULmdldEF0dHJpYnV0ZSgiZGF0YS1ibG9jay1pZCIpO1A9dGhpcy5ibG9ja3MuZmluZChRPT5RLmlkPT09TCksVj1KO2JyZWFrfX19aWYoIVB8fCFWKXJldHVybjtsZXQgVz1ydC5jcmVhdGVSYW5nZUZyb21JbmZvKF8pO2lmKHo9PT0ibGluayIpe2xldCBhZT1hd2FpdCB0aGlzLnNob3dMaW5rRGlhbG9nKCk7aWYoIWFlKXtWLmZvY3VzKCk7cmV0dXJufVJjLmFwcGx5Rm9ybWF0KHosYWUsVyx5KX1lbHNlIFJjLmFwcGx5Rm9ybWF0KHosdm9pZCAwLFcseSk7YXdhaXQgbmV3IFByb21pc2UoYWU9PnNldFRpbWVvdXQoYWUsMTApKSxQLmNvbnRlbnQ9Vi5nZXRDb250ZW50KCksdGhpcy51cGRhdGVWYWx1ZSgpLFYuZm9jdXMoKSx6PT09ImxpbmsiP3RoaXMuaGlkZUZvcm1hdHRpbmdNZW51KCk6dGhpcy5zZWxlY3RlZFRleHQ9IiJ9YXN5bmMgc2hvd0xpbmtEaWFsb2coKXtyZXR1cm4gbmV3IFByb21pc2Uoej0+e2xldCB5PW51bGw7R3QuY3JlYXRlQW5kU2hvdyh7aGVhZGluZzoiQWRkIExpbmsiLGNvbnRlbnQ6WDRgCiAgICAgICAgICA8c3R5bGU+CiAgICAgICAgICAgIC5saW5rLWlucHV0IHsKICAgICAgICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICAgICAgICBwYWRkaW5nOiAxMnB4OwogICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsKICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1kZWVzLWNvbG9yLWxpbmUtYnJpZ2h0KTsKICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZGVlcy1jb2xvci1pbnB1dCk7CiAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWRlZXMtY29sb3ItdGV4dCk7CiAgICAgICAgICAgICAgbWFyZ2luOiAxNnB4IDA7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgLmxpbmstaW5wdXQ6Zm9jdXMgewogICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7CiAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1kZWVzLWNvbG9yLXByaW1hcnkpOwogICAgICAgICAgICB9CiAgICAgICAgICA8L3N0eWxlPgogICAgICAgICAgPGlucHV0IAogICAgICAgICAgICBjbGFzcz0ibGluay1pbnB1dCIgCiAgICAgICAgICAgIHR5cGU9InVybCIgCiAgICAgICAgICAgIHBsYWNlaG9sZGVyPSJodHRwczovL2V4YW1wbGUuY29tIiAKICAgICAgICAgICAgQGtleWRvd249IiR7RT0+e2lmKEUua2V5PT09IkVudGVyIil7bGV0IF89RS50YXJnZXQ7eT1fLnZhbHVlO2xldCBQPV8uY2xvc2VzdCgiZGVlcy1tb2RhbCIpO2lmKFApe2xldCBWPVAuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiLmJvdHRvbUJ1dHRvbjpsYXN0LWNoaWxkIik7ViYmVi5jbGljaygpfX19fSIKICAgICAgICAgICAgQGlucHV0PSIke0U9Pnt5PUUudGFyZ2V0LnZhbHVlfX0iCiAgICAgICAgICAvPgogICAgICAgIGAsbWVudU9wdGlvbnM6W3tuYW1lOiJDYW5jZWwiLGFjdGlvbjphc3luYyBFPT57RS5kZXN0cm95KCkseihudWxsKX19LHtuYW1lOiJBZGQgTGluayIsYWN0aW9uOmFzeW5jIEU9PntFLmRlc3Ryb3koKSx6KHkpfX1dfSksc2V0VGltZW91dCgoKT0+e2xldCBFPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImRlZXMtbW9kYWwgLmxpbmstaW5wdXQiKTtFJiZFLmZvY3VzKCl9LDEwMCl9KX11bmRvKCl7bGV0IHo9dGhpcy5oaXN0b3J5LnVuZG8oKTt6JiZ0aGlzLnJlc3RvcmVTdGF0ZSh6KX1yZWRvKCl7bGV0IHo9dGhpcy5oaXN0b3J5LnJlZG8oKTt6JiZ0aGlzLnJlc3RvcmVTdGF0ZSh6KX1yZXN0b3JlU3RhdGUoeil7dGhpcy5ibG9ja3M9ei5ibG9ja3MsdGhpcy5zZWxlY3RlZEJsb2NrSWQ9ei5zZWxlY3RlZEJsb2NrSWQsdGhpcy5yZW5kZXJCbG9ja3NQcm9ncmFtbWF0aWNhbGx5KCksei5jdXJzb3JQb3NpdGlvbj9zZXRUaW1lb3V0KCgpPT57bGV0IEU9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKGBbZGF0YS1ibG9jay1pZD0iJHt6LmN1cnNvclBvc2l0aW9uLmJsb2NrSWR9Il1gKT8ucXVlcnlTZWxlY3RvcigiZGVlcy13eXNpd3lnLWJsb2NrIik7RSYmRS5mb2N1c1dpdGhDdXJzb3Ioei5jdXJzb3JQb3NpdGlvbi5vZmZzZXQpfSw1MCk6ei5zZWxlY3RlZEJsb2NrSWQmJnNldFRpbWVvdXQoKCk9Pnt0aGlzLmJsb2NrT3BlcmF0aW9ucy5mb2N1c0Jsb2NrKHouc2VsZWN0ZWRCbG9ja0lkKX0sNTApLHRoaXMudXBkYXRlVmFsdWUoKX1zYXZlVG9IaXN0b3J5KHo9ITApe2xldCB5O2lmKHRoaXMuc2VsZWN0ZWRCbG9ja0lkKXtsZXQgXz10aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoYFtkYXRhLWJsb2NrLWlkPSIke3RoaXMuc2VsZWN0ZWRCbG9ja0lkfSJdYCk/LnF1ZXJ5U2VsZWN0b3IoImRlZXMtd3lzaXd5Zy1ibG9jayIpO2lmKF8mJnR5cGVvZiBfLmdldEN1cnNvclBvc2l0aW9uPT0iZnVuY3Rpb24iKXtsZXQgUD1fLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoIi5ibG9jayIpO2lmKFApe2xldCBWPV8uZ2V0Q3Vyc29yUG9zaXRpb24oUCk7ViE9PW51bGwmJih5PXtibG9ja0lkOnRoaXMuc2VsZWN0ZWRCbG9ja0lkLG9mZnNldDpWfSl9fX16P3RoaXMuaGlzdG9yeS5zYXZlU3RhdGUodGhpcy5ibG9ja3MsdGhpcy5zZWxlY3RlZEJsb2NrSWQseSk6dGhpcy5oaXN0b3J5LnNhdmVDaGVja3BvaW50KHRoaXMuYmxvY2tzLHRoaXMuc2VsZWN0ZWRCbG9ja0lkLHkpfXN0YXRpY3tobyhhLHIpfX07cmV0dXJuIEI9YX0pKCl9KTt2YXIgWCRyLFEkcj1sKCgpPT57U2UoKTt6YSgpO1FsZSgpO3QxKCk7WCRyPSgpPT5TYAogIDxkZWVzLWRlbW93cmFwcGVyPgogICAgPHN0eWxlPgogICAgICAke2xlYAogICAgICAgIC5kZW1vLWNvbnRhaW5lciB7CiAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICAgIGdhcDogMjRweDsKICAgICAgICAgIHBhZGRpbmc6IDI0cHg7CiAgICAgICAgICBtYXgtd2lkdGg6IDEyMDBweDsKICAgICAgICAgIG1hcmdpbjogMCBhdXRvOwogICAgICAgIH0KICAgICAgICAKICAgICAgICBkZWVzLXBhbmVsIHsKICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIGRlZXMtcGFuZWw6bGFzdC1jaGlsZCB7CiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAuZ3JpZC1sYXlvdXQgewogICAgICAgICAgZGlzcGxheTogZ3JpZDsKICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjsKICAgICAgICAgIGdhcDogMTZweDsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7CiAgICAgICAgICAuZ3JpZC1sYXlvdXQgewogICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLm91dHB1dC1wcmV2aWV3IHsKICAgICAgICAgIG1hcmdpbi10b3A6IDE2cHg7CiAgICAgICAgICBwYWRkaW5nOiAxNnB4OwogICAgICAgICAgYmFja2dyb3VuZDogI2YzZjRmNjsKICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICAgIGNvbG9yOiAjMzc0MTUxOwogICAgICAgICAgd29yZC1icmVhazogYnJlYWstYWxsOwogICAgICAgICAgbWF4LWhlaWdodDogMjAwcHg7CiAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvOwogICAgICAgIH0KICAgICAgICAKICAgICAgICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7CiAgICAgICAgICAub3V0cHV0LXByZXZpZXcgewogICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMmMyYzJjOwogICAgICAgICAgICBjb2xvcjogI2U0ZTRlNzsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIGB9CiAgICA8L3N0eWxlPgogICAgCiAgICA8ZGl2IGNsYXNzPSJkZW1vLWNvbnRhaW5lciI+CiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyIxLiBCYXNpYyBSaWNoIFRleHQgRWRpdG9yIn0gLnN1YnRpdGxlPSR7IkEgZnVsbC1mZWF0dXJlZCByaWNoIHRleHQgZWRpdG9yIHdpdGggZm9ybWF0dGluZyB0b29sYmFyIn0+CiAgICAgICAgPGRlZXMtaW5wdXQtcmljaHRleHQgCiAgICAgICAgICAubGFiZWw9JHsiQXJ0aWNsZSBDb250ZW50In0gCiAgICAgICAgICAudmFsdWU9JHsnPGgxPldlbGNvbWUgdG8gdGhlIFJpY2ggVGV4dCBFZGl0b3IhPC9oMT48cD5UaGlzIGlzIGEgZmVhdHVyZS1yaWNoIGVkaXRvciBidWlsdCB3aXRoIFRpcFRhcC4gWW91IGNhbjo8L3A+PHVsPjxsaT48c3Ryb25nPkZvcm1hdCB0ZXh0PC9zdHJvbmc+IHdpdGggPGVtPnZhcmlvdXM8L2VtPiA8dT5zdHlsZXM8L3U+PC9saT48bGk+Q3JlYXRlIGRpZmZlcmVudCBoZWFkaW5nIGxldmVsczwvbGk+PGxpPkFkZCA8YSBocmVmPSJodHRwczovL2V4YW1wbGUuY29tIj5saW5rczwvYT4gdG8gZXh0ZXJuYWwgcmVzb3VyY2VzPC9saT48bGk+V3JpdGUgPGNvZGU+aW5saW5lIGNvZGU8L2NvZGU+IG9yIGNvZGUgYmxvY2tzPC9saT48L3VsPjxibG9ja3F1b3RlPjxwPlVzZSB0aGUgdG9vbGJhciBhYm92ZSB0byBleHBsb3JlIGFsbCB0aGUgZm9ybWF0dGluZyBvcHRpb25zIGF2YWlsYWJsZSE8L3A+PC9ibG9ja3F1b3RlPjxwPlN0YXJ0IHR5cGluZyB0byBzZWUgdGhlIG1hZ2ljIGhhcHBlbi4uLjwvcD4nfQogICAgICAgICAgLmRlc2NyaXB0aW9uPSR7IlVzZSB0aGUgdG9vbGJhciB0byBmb3JtYXQgeW91ciBjb250ZW50IHdpdGggaGVhZGluZ3MsIGxpc3RzLCBsaW5rcywgYW5kIG1vcmUifQogICAgICAgICAgLnNob3dXb3JkQ291bnQ9JHshMH0KICAgICAgICA+PC9kZWVzLWlucHV0LXJpY2h0ZXh0PgogICAgICA8L2RlZXMtcGFuZWw+CiAgICAgIAogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiMi4gV2l0aCBQbGFjZWhvbGRlciJ9IC5zdWJ0aXRsZT0keyJFbXB0eSBlZGl0b3Igd2l0aCBwbGFjZWhvbGRlciB0ZXh0In0+CiAgICAgICAgPGRlZXMtaW5wdXQtcmljaHRleHQgCiAgICAgICAgICAubGFiZWw9JHsiQmxvZyBQb3N0In0gCiAgICAgICAgICAucGxhY2Vob2xkZXI9JHsiU3RhcnQgd3JpdGluZyB5b3VyIGJsb2cgcG9zdCBoZXJlLi4uIn0KICAgICAgICAgIC5zaG93V29yZENvdW50PSR7ITB9CiAgICAgICAgPjwvZGVlcy1pbnB1dC1yaWNodGV4dD4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgICAKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IjMuIERpZmZlcmVudCBIZWlnaHRzIn0gLnN1YnRpdGxlPSR7IkVkaXRvcnMgd2l0aCBkaWZmZXJlbnQgbWluaW11bSBoZWlnaHRzIGZvciB2YXJpb3VzIHVzZSBjYXNlcyJ9PgogICAgICAgIDxkaXYgY2xhc3M9ImdyaWQtbGF5b3V0Ij4KICAgICAgICAgIDxkZWVzLWlucHV0LXJpY2h0ZXh0IAogICAgICAgICAgICAubGFiZWw9JHsiU2hvcnQgTm90ZSJ9IAogICAgICAgICAgICAubWluSGVpZ2h0PSR7MTUwfQogICAgICAgICAgICAucGxhY2Vob2xkZXI9JHsiUXVpY2sgbm90ZS4uLiJ9CiAgICAgICAgICAgIC5zaG93V29yZENvdW50PSR7ITF9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LXJpY2h0ZXh0PgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1pbnB1dC1yaWNodGV4dCAKICAgICAgICAgICAgLmxhYmVsPSR7IkV4dGVuZGVkIENvbnRlbnQifSAKICAgICAgICAgICAgLm1pbkhlaWdodD0kezMwMH0KICAgICAgICAgICAgLnBsYWNlaG9sZGVyPSR7IldyaXRlIHlvdXIgZXh0ZW5kZWQgY29udGVudCBoZXJlLi4uIn0KICAgICAgICAgICAgLnNob3dXb3JkQ291bnQ9JHshMH0KICAgICAgICAgID48L2RlZXMtaW5wdXQtcmljaHRleHQ+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgICAgCiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyI0LiBDb2RlIEV4YW1wbGVzIn0gLnN1YnRpdGxlPSR7IkVkaXRvciBwcmUtZmlsbGVkIHdpdGggY29kZSBleGFtcGxlcyJ9PgogICAgICAgIDxkZWVzLWlucHV0LXJpY2h0ZXh0IAogICAgICAgICAgLmxhYmVsPSR7IlRlY2huaWNhbCBEb2N1bWVudGF0aW9uIn0gCiAgICAgICAgICAudmFsdWU9JHsnPGgyPkluc3RhbGxhdGlvbiBHdWlkZTwvaDI+PHA+VG8gaW5zdGFsbCB0aGUgcGFja2FnZSwgcnVuIHRoZSBmb2xsb3dpbmcgY29tbWFuZDo8L3A+PHByZT48Y29kZT5ucG0gaW5zdGFsbCBAZGVzaWduLmVzdGF0ZS9kZWVzLWNhdGFsb2c8L2NvZGU+PC9wcmU+PHA+VGhlbiBpbXBvcnQgdGhlIGNvbXBvbmVudCBpbiB5b3VyIFR5cGVTY3JpcHQgZmlsZTo8L3A+PHByZT48Y29kZT5pbXBvcnQgeyBEZWVzSW5wdXRSaWNodGV4dCB9IGZyb20gIkBkZXNpZ24uZXN0YXRlL2RlZXMtY2F0YWxvZyI7PC9jb2RlPjwvcHJlPjxwPllvdSBjYW4gbm93IHVzZSB0aGUgPGNvZGU+Jmx0O2RlZXMtaW5wdXQtcmljaHRleHQmZ3Q7PC9jb2RlPiBlbGVtZW50IGluIHlvdXIgdGVtcGxhdGVzLjwvcD4nfQogICAgICAgICAgLm1pbkhlaWdodD0kezI1MH0KICAgICAgICAgIC5zaG93V29yZENvdW50PSR7ITB9CiAgICAgICAgPjwvZGVlcy1pbnB1dC1yaWNodGV4dD4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgICAKICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IjUuIERpc2FibGVkIFN0YXRlIn0gLnN1YnRpdGxlPSR7IlJlYWQtb25seSByaWNoIHRleHQgY29udGVudCJ9PgogICAgICAgIDxkZWVzLWlucHV0LXJpY2h0ZXh0IAogICAgICAgICAgLmxhYmVsPSR7IlB1Ymxpc2hlZCBBcnRpY2xlIChSZWFkIE9ubHkpIn0gCiAgICAgICAgICAudmFsdWU9JHsnPGgyPlRoZSBGdXR1cmUgb2YgV2ViIENvbXBvbmVudHM8L2gyPjxwPldlYiBDb21wb25lbnRzIGhhdmUgcmV2b2x1dGlvbml6ZWQgaG93IHdlIGJ1aWxkIG1vZGVybiB3ZWIgYXBwbGljYXRpb25zLi4uPC9wPjxibG9ja3F1b3RlPjxwPiJUaGUgZnV0dXJlIG9mIHdlYiBkZXZlbG9wbWVudCBsaWVzIGluIHJldXNhYmxlLCBlbmNhcHN1bGF0ZWQgY29tcG9uZW50cy4iPC9wPjwvYmxvY2txdW90ZT4nfQogICAgICAgICAgLmRpc2FibGVkPSR7ITB9CiAgICAgICAgICAuc2hvd1dvcmRDb3VudD0keyEwfQogICAgICAgID48L2RlZXMtaW5wdXQtcmljaHRleHQ+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgICAgCiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyI2LiBJbnRlcmFjdGl2ZSBEZW1vIn0gLnN1YnRpdGxlPSR7IlR5cGUgaW4gdGhlIGVkaXRvciBiZWxvdyBhbmQgc2VlIHRoZSBIVE1MIG91dHB1dCJ9PgogICAgICAgIDxkZWVzLWlucHV0LXJpY2h0ZXh0IAogICAgICAgICAgaWQ9ImludGVyYWN0aXZlLWVkaXRvciIKICAgICAgICAgIC5sYWJlbD0keyJUcnkgaXQgeW91cnNlbGYifSAKICAgICAgICAgIC5wbGFjZWhvbGRlcj0keyJUeXBlIHNvbWV0aGluZyBoZXJlLi4uIn0KICAgICAgICAgIC5zaG93V29yZENvdW50PSR7ITB9CiAgICAgICAgICBAY2hhbmdlPSR7ZT0+e2xldCB0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNvdXRwdXQtcHJldmlldyIpO3QmJih0LnRleHRDb250ZW50PWUuZGV0YWlsLnZhbHVlKX19CiAgICAgICAgPjwvZGVlcy1pbnB1dC1yaWNodGV4dD4KICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJvdXRwdXQtcHJldmlldyIgaWQ9Im91dHB1dC1wcmV2aWV3Ij4KICAgICAgICAgIDxlbT5IVE1MIG91dHB1dCB3aWxsIGFwcGVhciBoZXJlLi4uPC9lbT4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgPC9kaXY+CiAgPC9kZWVzLWRlbW93cmFwcGVyPgpgfSk7dmFyIEskcixKJHI9bCgoKT0+e1NlKCk7UGEoKTtLJHI9Wy4uLmh0LmJhc2VTdHlsZXMsbS5kZWZhdWx0U3R5bGVzLGxlYAogICAgICA6aG9zdCB7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIGZvbnQtZmFtaWx5OiBJbnRlciwgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAnU2Vnb2UgVUknLCBSb2JvdG8sIHNhbnMtc2VyaWY7CiAgICAgIH0KCiAgICAgIC5pbnB1dC13cmFwcGVyIHsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgIH0KCiAgICAgIC5sYWJlbCB7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4OwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTUlKSIsImhzbCgwIDAlIDkzLjklKSIpfTsKICAgICAgfQoKICAgICAgLmVkaXRvci1jb250YWluZXIgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBtaW4taGVpZ2h0OiAke20uYmRUaGVtZSgiMjAwcHgiLCIyMDBweCIpfTsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTAwJSkiLCJoc2woMCAwJSA5JSkiKX07CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpOwogICAgICB9CgogICAgICAuZWRpdG9yLWNvbnRhaW5lcjpob3ZlciB7CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNzkuOCUpIiwiaHNsKDAgMCUgMjAuOSUpIil9OwogICAgICB9CgogICAgICAuZWRpdG9yLWNvbnRhaW5lci5mb2N1c2VkIHsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5JSkiLCJoc2woMCAwJSA5OCUpIil9OwogICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDJweCAke20uYmRUaGVtZSgiaHNsKDAgMCUgOSUgLyAwLjA1KSIsImhzbCgwIDAlIDk4JSAvIDAuMDUpIil9OwogICAgICB9CgogICAgICAuZWRpdG9yLXRvb2xiYXIgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC13cmFwOiB3cmFwOwogICAgICAgIGdhcDogNHB4OwogICAgICAgIHBhZGRpbmc6IDhweCAxMnB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjEwIDQwJSA5Ni4xJSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OS44JSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgIH0KCiAgICAgIC50b29sYmFyLWJ1dHRvbiB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIHdpZHRoOiAzMnB4OwogICAgICAgIGhlaWdodDogMzJweDsKICAgICAgICBib3JkZXI6IG5vbmU7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuNCAxNi4zJSA0Ni45JSkiLCJoc2woMjE1IDIwLjIlIDY1LjElKSIpfTsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTsKICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTsKICAgICAgfQoKICAgICAgLnRvb2xiYXItYnV0dG9uIGRlZXMtaWNvbiB7CiAgICAgICAgd2lkdGg6IDE2cHg7CiAgICAgICAgaGVpZ2h0OiAxNnB4OwogICAgICB9CgogICAgICAudG9vbGJhci1idXR0b246aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5NS4xJSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5JSkiLCJoc2woMCAwJSA5NSUpIil9OwogICAgICB9CgogICAgICAudG9vbGJhci1idXR0b24uYWN0aXZlIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOSUpIiwiaHNsKDAgMCUgOTglKSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDEwMCUpIiwiaHNsKDAgMCUgMy45JSkiKX07CiAgICAgIH0KCiAgICAgIC50b29sYmFyLWJ1dHRvbjpkaXNhYmxlZCB7CiAgICAgICAgb3BhY2l0eTogMC41OwogICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7CiAgICAgIH0KCiAgICAgIC50b29sYmFyLWRpdmlkZXIgewogICAgICAgIHdpZHRoOiAxcHg7CiAgICAgICAgaGVpZ2h0OiAyNHB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OS44JSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgbWFyZ2luOiAwIDRweDsKICAgICAgfQoKICAgICAgLmVkaXRvci1jb250ZW50IHsKICAgICAgICBmbGV4OiAxOwogICAgICAgIHBhZGRpbmc6IDE2cHg7CiAgICAgICAgb3ZlcmZsb3cteTogYXV0bzsKICAgICAgICBtaW4taGVpZ2h0OiB2YXIoLS1taW4taGVpZ2h0LCAyMDBweCk7CiAgICAgIH0KCiAgICAgIC5lZGl0b3ItY29udGVudCAuUHJvc2VNaXJyb3IgewogICAgICAgIG91dGxpbmU6IG5vbmU7CiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDMuOSUpIiwiaHNsKDAgMCUgOTglKSIpfTsKICAgICAgICBtaW4taGVpZ2h0OiAxMDAlOwogICAgICB9CgogICAgICAuZWRpdG9yLWNvbnRlbnQgLlByb3NlTWlycm9yIHAgewogICAgICAgIG1hcmdpbjogMC41ZW0gMDsKICAgICAgfQoKICAgICAgLmVkaXRvci1jb250ZW50IC5Qcm9zZU1pcnJvciBwOmZpcnN0LWNoaWxkIHsKICAgICAgICBtYXJnaW4tdG9wOiAwOwogICAgICB9CgogICAgICAuZWRpdG9yLWNvbnRlbnQgLlByb3NlTWlycm9yIHA6bGFzdC1jaGlsZCB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsKICAgICAgfQoKICAgICAgLmVkaXRvci1jb250ZW50IC5Qcm9zZU1pcnJvciBoMSB7CiAgICAgICAgZm9udC1zaXplOiAyZW07CiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7CiAgICAgICAgbWFyZ2luOiAxZW0gMCAwLjVlbSAwOwogICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7CiAgICAgIH0KCiAgICAgIC5lZGl0b3ItY29udGVudCAuUHJvc2VNaXJyb3IgaDIgewogICAgICAgIGZvbnQtc2l6ZTogMS41ZW07CiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7CiAgICAgICAgbWFyZ2luOiAxZW0gMCAwLjVlbSAwOwogICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7CiAgICAgIH0KCiAgICAgIC5lZGl0b3ItY29udGVudCAuUHJvc2VNaXJyb3IgaDMgewogICAgICAgIGZvbnQtc2l6ZTogMS4yNWVtOwogICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOwogICAgICAgIG1hcmdpbjogMWVtIDAgMC41ZW0gMDsKICAgICAgICBsaW5lLWhlaWdodDogMS40OwogICAgICB9CgogICAgICAuZWRpdG9yLWNvbnRlbnQgLlByb3NlTWlycm9yIHVsLAogICAgICAuZWRpdG9yLWNvbnRlbnQgLlByb3NlTWlycm9yIG9sIHsKICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuNWVtOwogICAgICAgIG1hcmdpbjogMC41ZW0gMDsKICAgICAgfQoKICAgICAgLmVkaXRvci1jb250ZW50IC5Qcm9zZU1pcnJvciBsaSB7CiAgICAgICAgbWFyZ2luOiAwLjI1ZW0gMDsKICAgICAgfQoKICAgICAgLmVkaXRvci1jb250ZW50IC5Qcm9zZU1pcnJvciBibG9ja3F1b3RlIHsKICAgICAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OS44JSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgbWFyZ2luOiAxZW0gMDsKICAgICAgICBwYWRkaW5nLWxlZnQ6IDFlbTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuNCAxNi4zJSA0Ni45JSkiLCJoc2woMjE1IDIwLjIlIDY1LjElKSIpfTsKICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7CiAgICAgIH0KCiAgICAgIC5lZGl0b3ItY29udGVudCAuUHJvc2VNaXJyb3IgY29kZSB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk1LjElKSIsImhzbCgwIDAlIDE0LjklKSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7CiAgICAgICAgcGFkZGluZzogMC4yZW0gMC40ZW07CiAgICAgICAgZm9udC1mYW1pbHk6ICdJbnRlbCBPbmUgTW9ubycsICdGaXJhIENvZGUnLCAnU0YgTW9ubycsIE1vbmFjbywgJ0Nhc2NhZGlhIENvZGUnLCAnUm9ib3RvIE1vbm8nLCBDb25zb2xhcywgJ0NvdXJpZXIgTmV3JywgbW9ub3NwYWNlOwogICAgICAgIGZvbnQtc2l6ZTogMC45ZW07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAxNSUpIiwiaHNsKDAgMCUgOTMuOSUpIil9OwogICAgICB9CgogICAgICAuZWRpdG9yLWNvbnRlbnQgLlByb3NlTWlycm9yIHByZSB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDMuOSUpIiwiaHNsKDAgMCUgOTglKSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk4JSkiLCJoc2woMCAwJSAzLjklKSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgcGFkZGluZzogMWVtOwogICAgICAgIG1hcmdpbjogMWVtIDA7CiAgICAgICAgb3ZlcmZsb3cteDogYXV0bzsKICAgICAgfQoKICAgICAgLmVkaXRvci1jb250ZW50IC5Qcm9zZU1pcnJvciBwcmUgY29kZSB7CiAgICAgICAgYmFja2dyb3VuZDogbm9uZTsKICAgICAgICBjb2xvcjogaW5oZXJpdDsKICAgICAgICBwYWRkaW5nOiAwOwogICAgICAgIGJvcmRlci1yYWRpdXM6IDA7CiAgICAgIH0KCiAgICAgIC5lZGl0b3ItY29udGVudCAuUHJvc2VNaXJyb3IgYSB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjIyLjIgNDcuNCUgNTEuMiUpIiwiaHNsKDIxNy4yIDkxLjIlIDU5LjglKSIpfTsKICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgIH0KCiAgICAgIC5lZGl0b3ItY29udGVudCAuUHJvc2VNaXJyb3IgYTpob3ZlciB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjIyLjIgNDcuNCUgNDEuMiUpIiwiaHNsKDIxNy4yIDkxLjIlIDY5LjglKSIpfTsKICAgICAgfQoKICAgICAgLmVkaXRvci1mb290ZXIgewogICAgICAgIHBhZGRpbmc6IDhweCAxMnB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjEwIDQwJSA5Ni4xJSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OS44JSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNS40IDE2LjMlIDQ2LjklKSIsImhzbCgyMTUgMjAuMiUgNjUuMSUpIil9OwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgIH0KCiAgICAgIC53b3JkLWNvdW50IHsKICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICB9CgogICAgICAubGluay1pbnB1dCB7CiAgICAgICAgZGlzcGxheTogbm9uZTsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgdG9wOiAxMDAlOwogICAgICAgIGxlZnQ6IDA7CiAgICAgICAgcmlnaHQ6IDA7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDEwMCUpIiwiaHNsKDAgMCUgOSUpIil9OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OS44JSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDZweCAtMXB4IHJnYmEoMCwgMCwgMCwgMC4xKTsKICAgICAgICBwYWRkaW5nOiAxMnB4OwogICAgICAgIHotaW5kZXg6IDEwMDA7CiAgICAgIH0KCiAgICAgIC5saW5rLWlucHV0LnNob3cgewogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICB9CgogICAgICAubGluay1pbnB1dCBpbnB1dCB7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgcGFkZGluZzogOHB4IDEycHg7CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgwIDAlIDg5LjglKSIsImhzbCgwIDAlIDE0LjklKSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgb3V0bGluZTogbm9uZTsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDEwMCUpIiwiaHNsKDAgMCUgOSUpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMy45JSkiLCJoc2woMCAwJSA5OCUpIil9OwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7CiAgICAgIH0KCiAgICAgIC5saW5rLWlucHV0IGlucHV0OmZvY3VzIHsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5JSkiLCJoc2woMCAwJSA5OCUpIil9OwogICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDJweCAke20uYmRUaGVtZSgiaHNsKDAgMCUgOSUgLyAwLjA1KSIsImhzbCgwIDAlIDk4JSAvIDAuMDUpIil9OwogICAgICB9CgogICAgICAubGluay1pbnB1dC1idXR0b25zIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGdhcDogOHB4OwogICAgICAgIG1hcmdpbi10b3A6IDhweDsKICAgICAgfQoKICAgICAgLmxpbmstaW5wdXQtYnV0dG9ucyBidXR0b24gewogICAgICAgIHBhZGRpbmc6IDZweCAxMnB4OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OS44JSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAxMDAlKSIsImhzbCgwIDAlIDklKSIpfTsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNDUuMSUpIiwiaHNsKDAgMCUgNjMuOSUpIil9OwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgIH0KCiAgICAgIC5saW5rLWlucHV0LWJ1dHRvbnMgYnV0dG9uOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOTUuMSUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOSUpIiwiaHNsKDAgMCUgOTUlKSIpfTsKICAgICAgfQoKICAgICAgLmxpbmstaW5wdXQtYnV0dG9ucyBidXR0b24ucHJpbWFyeSB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDklKSIsImhzbCgwIDAlIDk4JSkiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAxMDAlKSIsImhzbCgwIDAlIDMuOSUpIil9OwogICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDklKSIsImhzbCgwIDAlIDk4JSkiKX07CiAgICAgIH0KCiAgICAgIC5saW5rLWlucHV0LWJ1dHRvbnMgYnV0dG9uLnByaW1hcnk6aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAxNSUpIiwiaHNsKDAgMCUgOTMuOSUpIil9OwogICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDE1JSkiLCJoc2woMCAwJSA5My45JSkiKX07CiAgICAgIH0KCiAgICAgIC5kZXNjcmlwdGlvbiB7CiAgICAgICAgbWFyZ2luLXRvcDogOHB4OwogICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuNCAxNi4zJSA0Ni45JSkiLCJoc2woMjE1IDIwLjIlIDY1LjElKSIpfTsKICAgICAgICBsaW5lLWhlaWdodDogMS40OwogICAgICB9CgogICAgICA6aG9zdChbZGlzYWJsZWRdKSAuZWRpdG9yLWNvbnRhaW5lciB7CiAgICAgICAgb3BhY2l0eTogMC42OwogICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7CiAgICAgIH0KCiAgICAgIDpob3N0KFtkaXNhYmxlZF0pIC50b29sYmFyLWJ1dHRvbiwKICAgICAgOmhvc3QoW2Rpc2FibGVkXSkgLmVkaXRvci1jb250ZW50IHsKICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAgICAgfQogICAgYF19KTt2YXIgZVByLHRQcj1sKCgpPT57U2UoKTtlUHI9ZT0+U2AKICAgICAgICA8ZGl2IGNsYXNzPSJpbnB1dC13cmFwcGVyIj4KICAgICAgICAgICR7ZS5sYWJlbD9TYDxsYWJlbCBjbGFzcz0ibGFiZWwiPiR7ZS5sYWJlbH08L2xhYmVsPmA6IiJ9CiAgICAgICAgICA8ZGl2IGNsYXNzPSJlZGl0b3ItY29udGFpbmVyICR7ZS5lZGl0b3I/LmlzRm9jdXNlZD8iZm9jdXNlZCI6IiJ9IiBzdHlsZT0iLS1taW4taGVpZ2h0OiAke2UubWluSGVpZ2h0fXB4Ij4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZWRpdG9yLXRvb2xiYXIiPgogICAgICAgICAgICAgICR7ZS5yZW5kZXJUb29sYmFyKCl9CiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGluay1pbnB1dCAke2Uuc2hvd0xpbmtJbnB1dD8ic2hvdyI6IiJ9Ij4KICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJ1cmwiIHBsYWNlaG9sZGVyPSJFbnRlciBVUkwuLi4iIEBrZXlkb3duPSR7ZS5oYW5kbGVMaW5rSW5wdXRLZXlkb3dufSAvPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibGluay1pbnB1dC1idXR0b25zIj4KICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0icHJpbWFyeSIgQGNsaWNrPSR7ZS5zYXZlTGlua30+U2F2ZTwvYnV0dG9uPgogICAgICAgICAgICAgICAgICA8YnV0dG9uIEBjbGljaz0ke2UucmVtb3ZlTGlua30+UmVtb3ZlPC9idXR0b24+CiAgICAgICAgICAgICAgICAgIDxidXR0b24gQGNsaWNrPSR7ZS5oaWRlTGlua0lucHV0fT5DYW5jZWw8L2J1dHRvbj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZWRpdG9yLWNvbnRlbnQiPjwvZGl2PgogICAgICAgICAgICAke2Uuc2hvd1dvcmRDb3VudD9TYAogICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJlZGl0b3ItZm9vdGVyIj4KICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0id29yZC1jb3VudCI+JHtlLndvcmRDb3VudH0gd29yZCR7ZS53b3JkQ291bnQhPT0xPyJzIjoiIn08L3NwYW4+CiAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgYDoiIn0KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgJHtlLmRlc2NyaXB0aW9uP1NgPGRpdiBjbGFzcz0iZGVzY3JpcHRpb24iPiR7ZS5kZXNjcmlwdGlvbn08L2Rpdj5gOiIifQogICAgICAgIDwvZGl2PgogICAgICBgfSk7dmFyIEk4LGRuLEtsZSxRbGU9bCgoKT0+e1BhKCk7USRyKCk7SiRyKCk7dFByKCk7YnIoKTtTZSgpO2MzKCk7STg9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxkbj1mdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MixpPTA7aTx0Lmxlbmd0aDtpKyspcj1hP3RbaV0uY2FsbChlLHIpOnRbaV0uY2FsbChlKTtyZXR1cm4gYT9yOnZvaWQgMH0sS2xlPSgoKT0+e2xldCBlPVt6ZSgiZGVlcy1pbnB1dC1yaWNodGV4dCIpXSx0LHI9W10sYSxpPWh0LG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdLHUscD1bXSxoPVtdLGIseD1bXSxnPVtdLHYsdz1bXSxNPVtdLEYsQz1bXSxrPVtdO3ZhciBOPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgJD10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHt0eXBlOlN0cmluZyxyZWZsZWN0OiEwfSldLGM9W2ooe3R5cGU6U3RyaW5nfSldLHU9W2ooe3R5cGU6Qm9vbGVhbn0pXSxiPVtqKHt0eXBlOk51bWJlcn0pXSx2PVtyZSgpXSxGPVtyZSgpXSxJOCh0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InZhbHVlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpJPT4idmFsdWUiaW4gSSxnZXQ6ST0+SS52YWx1ZSxzZXQ6KEksQik9PntJLnZhbHVlPUJ9fSxtZXRhZGF0YTokfSxuLHMpLEk4KHRoaXMsbnVsbCxjLHtraW5kOiJhY2Nlc3NvciIsbmFtZToicGxhY2Vob2xkZXIiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOkk9PiJwbGFjZWhvbGRlciJpbiBJLGdldDpJPT5JLnBsYWNlaG9sZGVyLHNldDooSSxCKT0+e0kucGxhY2Vob2xkZXI9Qn19LG1ldGFkYXRhOiR9LGQsZiksSTgodGhpcyxudWxsLHUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzaG93V29yZENvdW50IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpJPT4ic2hvd1dvcmRDb3VudCJpbiBJLGdldDpJPT5JLnNob3dXb3JkQ291bnQsc2V0OihJLEIpPT57SS5zaG93V29yZENvdW50PUJ9fSxtZXRhZGF0YTokfSxwLGgpLEk4KHRoaXMsbnVsbCxiLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibWluSGVpZ2h0IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpJPT4ibWluSGVpZ2h0ImluIEksZ2V0Okk9PkkubWluSGVpZ2h0LHNldDooSSxCKT0+e0kubWluSGVpZ2h0PUJ9fSxtZXRhZGF0YTokfSx4LGcpLEk4KHRoaXMsbnVsbCx2LHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2hvd0xpbmtJbnB1dCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ST0+InNob3dMaW5rSW5wdXQiaW4gSSxnZXQ6ST0+SS5zaG93TGlua0lucHV0LHNldDooSSxCKT0+e0kuc2hvd0xpbmtJbnB1dD1CfX0sbWV0YWRhdGE6JH0sdyxNKSxJOCh0aGlzLG51bGwsRix7a2luZDoiYWNjZXNzb3IiLG5hbWU6IndvcmRDb3VudCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ST0+IndvcmRDb3VudCJpbiBJLGdldDpJPT5JLndvcmRDb3VudCxzZXQ6KEksQik9PntJLndvcmRDb3VudD1CfX0sbWV0YWRhdGE6JH0sQyxrKSxJOChudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTokfSxudWxsLHIpLE49YT10LnZhbHVlLCQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6JH0pfXN0YXRpYyBkZW1vPVgkcjtzdGF0aWMgZGVtb0dyb3Vwcz1bIklucHV0Il07I2U9ZG4odGhpcyxuLCIiKTtnZXQgdmFsdWUoKXtyZXR1cm4gdGhpcy4jZX1zZXQgdmFsdWUoJCl7dGhpcy4jZT0kfSN0PShkbih0aGlzLHMpLGRuKHRoaXMsZCwiIikpO2dldCBwbGFjZWhvbGRlcigpe3JldHVybiB0aGlzLiN0fXNldCBwbGFjZWhvbGRlcigkKXt0aGlzLiN0PSR9I3I9KGRuKHRoaXMsZiksZG4odGhpcyxwLCEwKSk7Z2V0IHNob3dXb3JkQ291bnQoKXtyZXR1cm4gdGhpcy4jcn1zZXQgc2hvd1dvcmRDb3VudCgkKXt0aGlzLiNyPSR9I2E9KGRuKHRoaXMsaCksZG4odGhpcyx4LDIwMCkpO2dldCBtaW5IZWlnaHQoKXtyZXR1cm4gdGhpcy4jYX1zZXQgbWluSGVpZ2h0KCQpe3RoaXMuI2E9JH0jaT0oZG4odGhpcyxnKSxkbih0aGlzLHcsITEpKTtnZXQgc2hvd0xpbmtJbnB1dCgpe3JldHVybiB0aGlzLiNpfXNldCBzaG93TGlua0lucHV0KCQpe3RoaXMuI2k9JH0jbz0oZG4odGhpcyxNKSxkbih0aGlzLEMsMCkpO2dldCB3b3JkQ291bnQoKXtyZXR1cm4gdGhpcy4jb31zZXQgd29yZENvdW50KCQpe3RoaXMuI289JH1lZGl0b3JFbGVtZW50PWRuKHRoaXMsayk7bGlua0lucHV0RWxlbWVudDt0aXB0YXBCdW5kbGU9bnVsbDtlZGl0b3I7c3RhdGljIHN0eWxlcz1LJHI7cmVuZGVyKCl7cmV0dXJuIGVQcih0aGlzKX1yZW5kZXJUb29sYmFyKCl7bGV0ICQ9dGhpcy5nZXRUb29sYmFyQnV0dG9ucygpO3JldHVybiBTYAogICAgICAkeyQubWFwKEk9PkkuaXNEaXZpZGVyP1NgPGRpdiBjbGFzcz0idG9vbGJhci1kaXZpZGVyIj48L2Rpdj5gOlNgCiAgICAgICAgICA8YnV0dG9uCiAgICAgICAgICAgIGNsYXNzPSJ0b29sYmFyLWJ1dHRvbiAke0kuaXNBY3RpdmU/LigpPyJhY3RpdmUiOiIifSIKICAgICAgICAgICAgQGNsaWNrPSR7SS5hY3Rpb259CiAgICAgICAgICAgIHRpdGxlPSR7SS50aXRsZX0KICAgICAgICAgICAgP2Rpc2FibGVkPSR7dGhpcy5kaXNhYmxlZHx8IXRoaXMuZWRpdG9yfQogICAgICAgICAgPgogICAgICAgICAgICA8ZGVlcy1pY29uIC5pY29uPSR7SS5pY29ufT48L2RlZXMtaWNvbj4KICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgIGApfQogICAgYH1nZXRUb29sYmFyQnV0dG9ucygpe3JldHVybiB0aGlzLmVkaXRvcj9be25hbWU6ImJvbGQiLGljb246Imx1Y2lkZTpib2xkIix0aXRsZToiQm9sZCAoQ3RybCtCKSIsYWN0aW9uOigpPT50aGlzLmVkaXRvci5jaGFpbigpLmZvY3VzKCkudG9nZ2xlQm9sZCgpLnJ1bigpLGlzQWN0aXZlOigpPT50aGlzLmVkaXRvci5pc0FjdGl2ZSgiYm9sZCIpfSx7bmFtZToiaXRhbGljIixpY29uOiJsdWNpZGU6aXRhbGljIix0aXRsZToiSXRhbGljIChDdHJsK0kpIixhY3Rpb246KCk9PnRoaXMuZWRpdG9yLmNoYWluKCkuZm9jdXMoKS50b2dnbGVJdGFsaWMoKS5ydW4oKSxpc0FjdGl2ZTooKT0+dGhpcy5lZGl0b3IuaXNBY3RpdmUoIml0YWxpYyIpfSx7bmFtZToidW5kZXJsaW5lIixpY29uOiJsdWNpZGU6dW5kZXJsaW5lIix0aXRsZToiVW5kZXJsaW5lIChDdHJsK1UpIixhY3Rpb246KCk9PnRoaXMuZWRpdG9yLmNoYWluKCkuZm9jdXMoKS50b2dnbGVVbmRlcmxpbmUoKS5ydW4oKSxpc0FjdGl2ZTooKT0+dGhpcy5lZGl0b3IuaXNBY3RpdmUoInVuZGVybGluZSIpfSx7bmFtZToic3RyaWtlIixpY29uOiJsdWNpZGU6c3RyaWtldGhyb3VnaCIsdGl0bGU6IlN0cmlrZXRocm91Z2giLGFjdGlvbjooKT0+dGhpcy5lZGl0b3IuY2hhaW4oKS5mb2N1cygpLnRvZ2dsZVN0cmlrZSgpLnJ1bigpLGlzQWN0aXZlOigpPT50aGlzLmVkaXRvci5pc0FjdGl2ZSgic3RyaWtlIil9LHtuYW1lOiJkaXZpZGVyMSIsdGl0bGU6IiIsaXNEaXZpZGVyOiEwfSx7bmFtZToiaDEiLGljb246Imx1Y2lkZTpoZWFkaW5nMSIsdGl0bGU6IkhlYWRpbmcgMSIsYWN0aW9uOigpPT50aGlzLmVkaXRvci5jaGFpbigpLmZvY3VzKCkudG9nZ2xlSGVhZGluZyh7bGV2ZWw6MX0pLnJ1bigpLGlzQWN0aXZlOigpPT50aGlzLmVkaXRvci5pc0FjdGl2ZSgiaGVhZGluZyIse2xldmVsOjF9KX0se25hbWU6ImgyIixpY29uOiJsdWNpZGU6aGVhZGluZzIiLHRpdGxlOiJIZWFkaW5nIDIiLGFjdGlvbjooKT0+dGhpcy5lZGl0b3IuY2hhaW4oKS5mb2N1cygpLnRvZ2dsZUhlYWRpbmcoe2xldmVsOjJ9KS5ydW4oKSxpc0FjdGl2ZTooKT0+dGhpcy5lZGl0b3IuaXNBY3RpdmUoImhlYWRpbmciLHtsZXZlbDoyfSl9LHtuYW1lOiJoMyIsaWNvbjoibHVjaWRlOmhlYWRpbmczIix0aXRsZToiSGVhZGluZyAzIixhY3Rpb246KCk9PnRoaXMuZWRpdG9yLmNoYWluKCkuZm9jdXMoKS50b2dnbGVIZWFkaW5nKHtsZXZlbDozfSkucnVuKCksaXNBY3RpdmU6KCk9PnRoaXMuZWRpdG9yLmlzQWN0aXZlKCJoZWFkaW5nIix7bGV2ZWw6M30pfSx7bmFtZToiZGl2aWRlcjIiLHRpdGxlOiIiLGlzRGl2aWRlcjohMH0se25hbWU6ImJ1bGxldExpc3QiLGljb246Imx1Y2lkZTpsaXN0Iix0aXRsZToiQnVsbGV0IExpc3QiLGFjdGlvbjooKT0+dGhpcy5lZGl0b3IuY2hhaW4oKS5mb2N1cygpLnRvZ2dsZUJ1bGxldExpc3QoKS5ydW4oKSxpc0FjdGl2ZTooKT0+dGhpcy5lZGl0b3IuaXNBY3RpdmUoImJ1bGxldExpc3QiKX0se25hbWU6Im9yZGVyZWRMaXN0IixpY29uOiJsdWNpZGU6bGlzdE9yZGVyZWQiLHRpdGxlOiJOdW1iZXJlZCBMaXN0IixhY3Rpb246KCk9PnRoaXMuZWRpdG9yLmNoYWluKCkuZm9jdXMoKS50b2dnbGVPcmRlcmVkTGlzdCgpLnJ1bigpLGlzQWN0aXZlOigpPT50aGlzLmVkaXRvci5pc0FjdGl2ZSgib3JkZXJlZExpc3QiKX0se25hbWU6ImJsb2NrcXVvdGUiLGljb246Imx1Y2lkZTpxdW90ZSIsdGl0bGU6IlF1b3RlIixhY3Rpb246KCk9PnRoaXMuZWRpdG9yLmNoYWluKCkuZm9jdXMoKS50b2dnbGVCbG9ja3F1b3RlKCkucnVuKCksaXNBY3RpdmU6KCk9PnRoaXMuZWRpdG9yLmlzQWN0aXZlKCJibG9ja3F1b3RlIil9LHtuYW1lOiJjb2RlIixpY29uOiJsdWNpZGU6Y29kZSIsdGl0bGU6IkNvZGUiLGFjdGlvbjooKT0+dGhpcy5lZGl0b3IuY2hhaW4oKS5mb2N1cygpLnRvZ2dsZUNvZGUoKS5ydW4oKSxpc0FjdGl2ZTooKT0+dGhpcy5lZGl0b3IuaXNBY3RpdmUoImNvZGUiKX0se25hbWU6ImNvZGVCbG9jayIsaWNvbjoibHVjaWRlOmZpbGVDb2RlIix0aXRsZToiQ29kZSBCbG9jayIsYWN0aW9uOigpPT50aGlzLmVkaXRvci5jaGFpbigpLmZvY3VzKCkudG9nZ2xlQ29kZUJsb2NrKCkucnVuKCksaXNBY3RpdmU6KCk9PnRoaXMuZWRpdG9yLmlzQWN0aXZlKCJjb2RlQmxvY2siKX0se25hbWU6ImRpdmlkZXIzIix0aXRsZToiIixpc0RpdmlkZXI6ITB9LHtuYW1lOiJsaW5rIixpY29uOiJsdWNpZGU6bGluayIsdGl0bGU6IkFkZCBMaW5rIixhY3Rpb246KCk9PnRoaXMudG9nZ2xlTGluaygpLGlzQWN0aXZlOigpPT50aGlzLmVkaXRvci5pc0FjdGl2ZSgibGluayIpfSx7bmFtZToiYWxpZ25MZWZ0IixpY29uOiJsdWNpZGU6YWxpZ25MZWZ0Iix0aXRsZToiQWxpZ24gTGVmdCIsYWN0aW9uOigpPT50aGlzLmVkaXRvci5jaGFpbigpLmZvY3VzKCkuc2V0VGV4dEFsaWduKCJsZWZ0IikucnVuKCksaXNBY3RpdmU6KCk9PnRoaXMuZWRpdG9yLmlzQWN0aXZlKHt0ZXh0QWxpZ246ImxlZnQifSl9LHtuYW1lOiJhbGlnbkNlbnRlciIsaWNvbjoibHVjaWRlOmFsaWduQ2VudGVyIix0aXRsZToiQWxpZ24gQ2VudGVyIixhY3Rpb246KCk9PnRoaXMuZWRpdG9yLmNoYWluKCkuZm9jdXMoKS5zZXRUZXh0QWxpZ24oImNlbnRlciIpLnJ1bigpLGlzQWN0aXZlOigpPT50aGlzLmVkaXRvci5pc0FjdGl2ZSh7dGV4dEFsaWduOiJjZW50ZXIifSl9LHtuYW1lOiJhbGlnblJpZ2h0IixpY29uOiJsdWNpZGU6YWxpZ25SaWdodCIsdGl0bGU6IkFsaWduIFJpZ2h0IixhY3Rpb246KCk9PnRoaXMuZWRpdG9yLmNoYWluKCkuZm9jdXMoKS5zZXRUZXh0QWxpZ24oInJpZ2h0IikucnVuKCksaXNBY3RpdmU6KCk9PnRoaXMuZWRpdG9yLmlzQWN0aXZlKHt0ZXh0QWxpZ246InJpZ2h0In0pfSx7bmFtZToiZGl2aWRlcjQiLHRpdGxlOiIiLGlzRGl2aWRlcjohMH0se25hbWU6InVuZG8iLGljb246Imx1Y2lkZTp1bmRvIix0aXRsZToiVW5kbyAoQ3RybCtaKSIsYWN0aW9uOigpPT50aGlzLmVkaXRvci5jaGFpbigpLmZvY3VzKCkudW5kbygpLnJ1bigpfSx7bmFtZToicmVkbyIsaWNvbjoibHVjaWRlOnJlZG8iLHRpdGxlOiJSZWRvIChDdHJsK1kpIixhY3Rpb246KCk9PnRoaXMuZWRpdG9yLmNoYWluKCkuZm9jdXMoKS5yZWRvKCkucnVuKCl9XTpbXX1hc3luYyBmaXJzdFVwZGF0ZWQoKXthd2FpdCB0aGlzLnVwZGF0ZUNvbXBsZXRlLHRoaXMudGlwdGFwQnVuZGxlPWF3YWl0IHgxLmdldEluc3RhbmNlKCkubG9hZFRpcHRhcCgpLHRoaXMuZWRpdG9yRWxlbWVudD10aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcigiLmVkaXRvci1jb250ZW50IiksdGhpcy5saW5rSW5wdXRFbGVtZW50PXRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCIubGluay1pbnB1dCBpbnB1dCIpLHRoaXMuaW5pdGlhbGl6ZUVkaXRvcigpfWluaXRpYWxpemVFZGl0b3IoKXtpZih0aGlzLmRpc2FibGVkfHwhdGhpcy50aXB0YXBCdW5kbGUpcmV0dXJuO2xldHtFZGl0b3I6JCxTdGFydGVyS2l0OkksVW5kZXJsaW5lOkIsVGV4dEFsaWduOnosTGluazp5LFR5cG9ncmFwaHk6RX09dGhpcy50aXB0YXBCdW5kbGU7dGhpcy5lZGl0b3I9bmV3ICQoe2VsZW1lbnQ6dGhpcy5lZGl0b3JFbGVtZW50LGV4dGVuc2lvbnM6W0kuY29uZmlndXJlKHtoZWFkaW5nOntsZXZlbHM6WzEsMiwzXX19KSxCLmNvbmZpZ3VyZSh7fSksei5jb25maWd1cmUoe3R5cGVzOlsiaGVhZGluZyIsInBhcmFncmFwaCJdfSkseS5jb25maWd1cmUoe29wZW5PbkNsaWNrOiExLEhUTUxBdHRyaWJ1dGVzOntjbGFzczoiZWRpdG9yLWxpbmsifX0pLEUuY29uZmlndXJlKHt9KV0sY29udGVudDp0aGlzLnZhbHVlfHwodGhpcy5wbGFjZWhvbGRlcj9gPHA+JHt0aGlzLnBsYWNlaG9sZGVyfTwvcD5gOiIiKSxvblVwZGF0ZTooe2VkaXRvcjpffSk9Pnt0aGlzLnZhbHVlPV8uZ2V0SFRNTCgpLHRoaXMudXBkYXRlV29yZENvdW50KCksdGhpcy5jaGFuZ2VTdWJqZWN0Lm5leHQodGhpcy52YWx1ZSksdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgiaW5wdXQiLHtkZXRhaWw6e3ZhbHVlOnRoaXMudmFsdWV9LGJ1YmJsZXM6ITAsY29tcG9zZWQ6ITB9KSksdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgiY2hhbmdlIix7ZGV0YWlsOnt2YWx1ZTp0aGlzLnZhbHVlfSxidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpfSxvblNlbGVjdGlvblVwZGF0ZTooKT0+e3RoaXMucmVxdWVzdFVwZGF0ZSgpfSxvbkZvY3VzOigpPT57dGhpcy5yZXF1ZXN0VXBkYXRlKCl9LG9uQmx1cjooKT0+e3RoaXMucmVxdWVzdFVwZGF0ZSgpfX0pLHRoaXMudXBkYXRlV29yZENvdW50KCl9dXBkYXRlV29yZENvdW50KCl7aWYoIXRoaXMuZWRpdG9yKXJldHVybjtsZXQgJD10aGlzLmVkaXRvci5nZXRUZXh0KCk7dGhpcy53b3JkQ291bnQ9JC50cmltKCk/JC50cmltKCkuc3BsaXQoL1xzKy8pLmxlbmd0aDowfXRvZ2dsZUxpbmsoKXtpZih0aGlzLmVkaXRvcilpZih0aGlzLmVkaXRvci5pc0FjdGl2ZSgibGluayIpKXtsZXQgJD10aGlzLmVkaXRvci5nZXRBdHRyaWJ1dGVzKCJsaW5rIikuaHJlZjt0aGlzLnNob3dMaW5rSW5wdXQ9ITAscmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57dGhpcy5saW5rSW5wdXRFbGVtZW50JiYodGhpcy5saW5rSW5wdXRFbGVtZW50LnZhbHVlPSR8fCIiLHRoaXMubGlua0lucHV0RWxlbWVudC5mb2N1cygpLHRoaXMubGlua0lucHV0RWxlbWVudC5zZWxlY3QoKSl9KX1lbHNlIHRoaXMuc2hvd0xpbmtJbnB1dD0hMCxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCk9Pnt0aGlzLmxpbmtJbnB1dEVsZW1lbnQmJih0aGlzLmxpbmtJbnB1dEVsZW1lbnQudmFsdWU9IiIsdGhpcy5saW5rSW5wdXRFbGVtZW50LmZvY3VzKCkpfSl9c2F2ZUxpbmsoKXtpZighdGhpcy5lZGl0b3J8fCF0aGlzLmxpbmtJbnB1dEVsZW1lbnQpcmV0dXJuO2xldCAkPXRoaXMubGlua0lucHV0RWxlbWVudC52YWx1ZTskJiZ0aGlzLmVkaXRvci5jaGFpbigpLmZvY3VzKCkuc2V0TGluayh7aHJlZjokfSkucnVuKCksdGhpcy5oaWRlTGlua0lucHV0KCl9cmVtb3ZlTGluaygpe3RoaXMuZWRpdG9yJiYodGhpcy5lZGl0b3IuY2hhaW4oKS5mb2N1cygpLnVuc2V0TGluaygpLnJ1bigpLHRoaXMuaGlkZUxpbmtJbnB1dCgpKX1oaWRlTGlua0lucHV0KCl7dGhpcy5zaG93TGlua0lucHV0PSExLHRoaXMuZWRpdG9yPy5jb21tYW5kcy5mb2N1cygpfWhhbmRsZUxpbmtJbnB1dEtleWRvd24oJCl7JC5rZXk9PT0iRW50ZXIiPygkLnByZXZlbnREZWZhdWx0KCksdGhpcy5zYXZlTGluaygpKTokLmtleT09PSJFc2NhcGUiJiYoJC5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuaGlkZUxpbmtJbnB1dCgpKX1zZXRWYWx1ZSgkKXt0aGlzLnZhbHVlPSQsdGhpcy5lZGl0b3ImJiQhPT10aGlzLmVkaXRvci5nZXRIVE1MKCkmJnRoaXMuZWRpdG9yLmNvbW1hbmRzLnNldENvbnRlbnQoJCl9Z2V0VmFsdWUoKXtyZXR1cm4gdGhpcy52YWx1ZX1jbGVhcigpe3RoaXMuc2V0VmFsdWUoIiIpfWZvY3VzKCl7dGhpcy5lZGl0b3I/LmNvbW1hbmRzLmZvY3VzKCl9YXN5bmMgZGlzY29ubmVjdGVkQ2FsbGJhY2soKXthd2FpdCBzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpLHRoaXMuZWRpdG9yJiZ0aGlzLmVkaXRvci5kZXN0cm95KCl9c3RhdGlje2RuKGEscil9fTtyZXR1cm4gTj1hfSkoKX0pO3ZhciByUHIsYVByPWwoKCk9PntTY3QoKTtPaSgpO1NlKCk7clByPSgpPT5TYAogIDxzdHlsZT4KICAgICR7bGVgCiAgICAgIC5kZW1vV3JhcHBlciB7CiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIHBhZGRpbmc6IDMycHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk1JSkiLCJoc2woMCAwJSA1JSkiKX07CiAgICAgICAgb3ZlcmZsb3cteTogYXV0bzsKICAgICAgfQogICAgICAuZGVtby1jb250YWluZXIgewogICAgICAgIG1heC13aWR0aDogMTIwMHB4OwogICAgICAgIG1hcmdpbjogMCBhdXRvOwogICAgICB9CiAgICAgIC5kZW1vLXNlY3Rpb24gewogICAgICAgIG1hcmdpbi1ib3R0b206IDQ4cHg7CiAgICAgIH0KICAgICAgLmRlbW8tdGl0bGUgewogICAgICAgIGZvbnQtc2l6ZTogMjRweDsKICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgIG1hcmdpbi1ib3R0b206IDhweDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDklKSIsImhzbCgwIDAlIDk1JSkiKX07CiAgICAgIH0KICAgICAgLmRlbW8tZGVzY3JpcHRpb24gewogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuNCAxNi4zJSA0Ni45JSkiLCJoc2woMjE1IDIwLjIlIDY1LjElKSIpfTsKICAgICAgICBtYXJnaW4tYm90dG9tOiAyNHB4OwogICAgICB9CiAgICAgIC50aGVtZS10b2dnbGUgewogICAgICAgIHBvc2l0aW9uOiBmaXhlZDsKICAgICAgICB0b3A6IDE2cHg7CiAgICAgICAgcmlnaHQ6IDE2cHg7CiAgICAgICAgei1pbmRleDogMTAwMDsKICAgICAgfQogICAgYH0KICA8L3N0eWxlPgogIDxkaXYgY2xhc3M9ImRlbW9XcmFwcGVyIj4KICAgIDxkZWVzLWJ1dHRvbiBjbGFzcz0idGhlbWUtdG9nZ2xlIiBAY2xpY2s9JHsoKT0+e2RvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnRvZ2dsZSgiYnJpZ2h0IiksZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QudG9nZ2xlKCJkYXJrIil9fT5Ub2dnbGUgVGhlbWU8L2RlZXMtYnV0dG9uPgogICAgCiAgICA8ZGl2IGNsYXNzPSJkZW1vLWNvbnRhaW5lciI+CiAgICAgIDxkaXYgY2xhc3M9ImRlbW8tc2VjdGlvbiI+CiAgICAgICAgPGgyIGNsYXNzPSJkZW1vLXRpdGxlIj5CYXNpYyBUYWJsZSB3aXRoIEFjdGlvbnM8L2gyPgogICAgICAgIDxwIGNsYXNzPSJkZW1vLWRlc2NyaXB0aW9uIj5BIHN0YW5kYXJkIHRhYmxlIHdpdGggcm93IGFjdGlvbnMsIGVkaXRhYmxlIGZpZWxkcywgYW5kIGNvbnRleHQgbWVudSBzdXBwb3J0LiBEb3VibGUtY2xpY2sgb24gZGVzY3JpcHRpb25zIHRvIGVkaXQuIEdyaWQgbGluZXMgYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC48L3A+CiAgICAgICAgPGRlZXMtdGFibGUKICAgICAgICAgIGhlYWRpbmcxPSJDdXJyZW50IEFjY291bnQgU3RhdGVtZW50IgogICAgICAgICAgaGVhZGluZzI9IkJ1bnEgLSBQYXltZW50IEFjY291bnQgMiAtIEFwcmlsIDIwMjEiCiAgICAgICAgICAuZWRpdGFibGVGaWVsZHM9IiR7WyJkZXNjcmlwdGlvbiJdfSIKICAgICAgICAgIC5kYXRhPSR7W3tkYXRlOiIyMDIxLTA0LTAxIixhbW91bnQ6IjI0NjQuNjUgXHUyMEFDIixkZXNjcmlwdGlvbjoiUHJpbnRpbmcgUGFwZXIgKE9mZmljZSBTdXBwbGllcykgLSBTVEFQTEVTIEJSRU1FTiJ9LHtkYXRlOiIyMDIxLTA0LTAyIixhbW91bnQ6IjE2NS42NSBcdTIwQUMiLGRlc2NyaXB0aW9uOiJMb2dpdGVjaCBNb3VzZSAoSGFyZHdhcmUpIC0gbG9naS5jb20gT25saW5lU2hvcCJ9LHtkYXRlOiIyMDIxLTA0LTAzIixhbW91bnQ6IjI5OTksMDAgXHUyMEFDIixkZXNjcmlwdGlvbjoiTWFjYm9vayBQcm8gMTZpbmNoIChIYXJkd2FyZSkgLSBBcHBsZS5kZSBPbmxpbmVTaG9wIn0se2RhdGU6IjIwMjEtMDQtMDEiLGFtb3VudDoiMjQ2NC42NSBcdTIwQUMiLGRlc2NyaXB0aW9uOiJPZmZpY2UtU3VwcGxpZXMgLSBTVEFQTEVTIEJSRU1FTiJ9LHtkYXRlOiIyMDIxLTA0LTAxIixhbW91bnQ6IjI0NjQuNjUgXHUyMEFDIixkZXNjcmlwdGlvbjoiT2ZmaWNlLVN1cHBsaWVzIC0gU1RBUExFUyBCUkVNRU4ifV19CiAgICAgICAgICBkYXRhTmFtZT0idHJhbnNhY3Rpb25zIgogICAgICAgICAgLmRhdGFBY3Rpb25zPSIke1t7bmFtZToidXBsb2FkIixpY29uTmFtZToiYmVsbCIsdXNlVGFibGVCZWhhdmlvdXI6InVwbG9hZCIsdHlwZTpbImluUm93Il0sYWN0aW9uRnVuYzphc3luYyBlPT57YWxlcnQoZS5pdGVtLmFtb3VudCl9fSx7bmFtZToidmlzaWJpbGl0eSIsaWNvbk5hbWU6ImNvcHkiLHR5cGU6WyJpblJvdyJdLHVzZVRhYmxlQmVoYXZpb3VyOiJwcmV2aWV3IixhY3Rpb25GdW5jOmFzeW5jIGU9Pnt9fSx7bmFtZToiY3JlYXRlIG5ldyIsaWNvbk5hbWU6Imluc3RhZ3JhbSIsdHlwZTpbImhlYWRlciJdLHVzZVRhYmxlQmVoYXZpb3VyOiJwcmV2aWV3IixhY3Rpb25GdW5jOmFzeW5jIGU9Pnt9fSx7bmFtZToidG8gZ2FsbGVyeSIsaWNvbk5hbWU6Im1lc3NhZ2UiLHR5cGU6WyJmb290ZXIiXSx1c2VUYWJsZUJlaGF2aW91cjoicHJldmlldyIsYWN0aW9uRnVuYzphc3luYyBlPT57fX0se25hbWU6ImNvcHkiLGljb25OYW1lOiJjb3B5U29saWQiLHR5cGU6WyJjb250ZXh0bWVudSIsImluUm93Il0sYWN0aW9uOmFzeW5jKCk9Pm51bGx9LHtuYW1lOiJlZGl0IChmcm9tIGRlbW8pIixpY29uTmFtZToicGVuVG9TcXVhcmUiLHR5cGU6WyJjb250ZXh0bWVudSJdLGFjdGlvbjphc3luYygpPT5udWxsfSx7bmFtZToicGFzdGUiLGljb25OYW1lOiJwYXN0ZVNvbGlkIix0eXBlOlsiY29udGV4dG1lbnUiXSxhY3Rpb246YXN5bmMoKT0+bnVsbH0se25hbWU6InByZXZpZXciLHR5cGU6WyJkb3VibGVDbGljayIsImNvbnRleHRtZW51Il0saWNvbk5hbWU6ImV5ZSIsYWN0aW9uRnVuYzphc3luYyBlPT4oYWxlcnQoZS5pdGVtLmFtb3VudCksbnVsbCl9XX0iCiAgICAgICAgPjwvZGVlcy10YWJsZT4KICAgICAgPC9kaXY+CiAgICAgIAogICAgICA8ZGl2IGNsYXNzPSJkZW1vLXNlY3Rpb24iPgogICAgICAgIDxoMiBjbGFzcz0iZGVtby10aXRsZSI+VGFibGUgd2l0aCBWZXJ0aWNhbCBMaW5lczwvaDI+CiAgICAgICAgPHAgY2xhc3M9ImRlbW8tZGVzY3JpcHRpb24iPkVuaGFuY2VkIGNvbHVtbiBzZXBhcmF0aW9uIGZvciBiZXR0ZXIgZGF0YSB0cmFja2luZy48L3A+CiAgICAgICAgPGRlZXMtdGFibGUKICAgICAgICAgIGhlYWRpbmcxPSJQcm9kdWN0IEludmVudG9yeSIKICAgICAgICAgIGhlYWRpbmcyPSJDdXJyZW50IHN0b2NrIGxldmVscyBhY3Jvc3Mgd2FyZWhvdXNlcyIKICAgICAgICAgIC5zaG93VmVydGljYWxMaW5lcz0keyEwfQogICAgICAgICAgLmRhdGE9JHtbe3Byb2R1Y3Q6J01hY0Jvb2sgUHJvIDE2Iicsd2FyZWhvdXNlX2E6IjQ1Iix3YXJlaG91c2VfYjoiMzIiLHdhcmVob3VzZV9jOiIyOCIsdG90YWw6IjEwNSIsc3RhdHVzOiJcdTI3MTMgSW4gU3RvY2sifSx7cHJvZHVjdDoiaVBob25lIDE1IFBybyIsd2FyZWhvdXNlX2E6IjEyMCIsd2FyZWhvdXNlX2I6Ijg5Iix3YXJlaG91c2VfYzoiMTU2Iix0b3RhbDoiMzY1IixzdGF0dXM6Ilx1MjcxMyBJbiBTdG9jayJ9LHtwcm9kdWN0OiJBaXJQb2RzIFBybyIsd2FyZWhvdXNlX2E6IjAiLHdhcmVob3VzZV9iOiIxMiIsd2FyZWhvdXNlX2M6IjUiLHRvdGFsOiIxNyIsc3RhdHVzOiJcdTI2QTAgTG93IFN0b2NrIn0se3Byb2R1Y3Q6ImlQYWQgQWlyIix3YXJlaG91c2VfYToiMjMiLHdhcmVob3VzZV9iOiI0NSIsd2FyZWhvdXNlX2M6IjY3Iix0b3RhbDoiMTM1IixzdGF0dXM6Ilx1MjcxMyBJbiBTdG9jayJ9XX0KICAgICAgICAgIGRhdGFOYW1lPSJwcm9kdWN0cyIKICAgICAgICA+PC9kZWVzLXRhYmxlPgogICAgICA8L2Rpdj4KICAgICAgCiAgICAgIDxkaXYgY2xhc3M9ImRlbW8tc2VjdGlvbiI+CiAgICAgICAgPGgyIGNsYXNzPSJkZW1vLXRpdGxlIj5UYWJsZSB3aXRoIEZ1bGwgR3JpZDwvaDI+CiAgICAgICAgPHAgY2xhc3M9ImRlbW8tZGVzY3JpcHRpb24iPkNvbXBsZXRlIGdyaWQgbGluZXMgZm9yIG1heGltdW0gcmVhZGFiaWxpdHkgYW5kIHN0cnVjdHVyZS48L3A+CiAgICAgICAgPGRlZXMtdGFibGUKICAgICAgICAgIGhlYWRpbmcxPSJTZXJ2ZXIgTW9uaXRvcmluZyBEYXNoYm9hcmQiCiAgICAgICAgICBoZWFkaW5nMj0iUmVhbC10aW1lIG1ldHJpY3MgYWNyb3NzIHJlZ2lvbnMiCiAgICAgICAgICAuc2hvd0dyaWQ9JHshMH0KICAgICAgICAgIC5kYXRhPSR7W3tzZXJ2ZXI6IkFQSS0xIixyZWdpb246IlVTLUVhc3QiLGNwdToiNDUlIixtZW1vcnk6IjYyJSIsZGlzazoiNzglIixsYXRlbmN5OiIxMm1zIix1cHRpbWU6Ijk5LjklIixzdGF0dXM6Ilx1ezFGN0UyfSBIZWFsdGh5In0se3NlcnZlcjoiQVBJLTIiLHJlZ2lvbjoiRVUtV2VzdCIsY3B1OiIzOCUiLG1lbW9yeToiNTUlIixkaXNrOiI0NSUiLGxhdGVuY3k6IjI1bXMiLHVwdGltZToiOTkuOCUiLHN0YXR1czoiXHV7MUY3RTJ9IEhlYWx0aHkifSx7c2VydmVyOiJEQi1NYXN0ZXIiLHJlZ2lvbjoiVVMtRWFzdCIsY3B1OiI3MiUiLG1lbW9yeToiODElIixkaXNrOiI5MiUiLGxhdGVuY3k6IjhtcyIsdXB0aW1lOiIxMDAlIixzdGF0dXM6Ilx1ezFGN0UxfSBXYXJuaW5nIn0se3NlcnZlcjoiREItUmVwbGljYSIscmVnaW9uOiJFVS1XZXN0IixjcHU6IjIzJSIsbWVtb3J5OiIzNCUiLGRpc2s6IjQ1JSIsbGF0ZW5jeToiMTVtcyIsdXB0aW1lOiI5OS43JSIsc3RhdHVzOiJcdXsxRjdFMn0gSGVhbHRoeSJ9LHtzZXJ2ZXI6IkNhY2hlLTEiLHJlZ2lvbjoiQVAtU291dGgiLGNwdToiODklIixtZW1vcnk6IjkyJSIsZGlzazoiMTIlIixsYXRlbmN5OiIxMjBtcyIsdXB0aW1lOiI5OC41JSIsc3RhdHVzOiJcdXsxRjUzNH0gQ3JpdGljYWwifV19CiAgICAgICAgICBkYXRhTmFtZT0ic2VydmVycyIKICAgICAgICAgIC5kYXRhQWN0aW9ucz0iJHtbe25hbWU6IlNTSCBDb25uZWN0IixpY29uTmFtZToibHVjaWRlOnRlcm1pbmFsIix0eXBlOlsiaW5Sb3ciXSxhY3Rpb25GdW5jOmFzeW5jIGU9Pntjb25zb2xlLmxvZygiQ29ubmVjdGluZyB0bzoiLGUuaXRlbS5zZXJ2ZXIpfX0se25hbWU6IlZpZXcgTG9ncyIsaWNvbk5hbWU6Imx1Y2lkZTpmaWxlLXRleHQiLHR5cGU6WyJpblJvdyIsImNvbnRleHRtZW51Il0sYWN0aW9uRnVuYzphc3luYyBlPT57Y29uc29sZS5sb2coIlZpZXdpbmcgbG9ncyBmb3I6IixlLml0ZW0uc2VydmVyKX19LHtuYW1lOiJSZXN0YXJ0IFNlcnZlciIsaWNvbk5hbWU6Imx1Y2lkZTpyZWZyZXNoLWN3Iix0eXBlOlsiY29udGV4dG1lbnUiXSxhY3Rpb25GdW5jOmFzeW5jIGU9Pntjb25zb2xlLmxvZygiUmVzdGFydGluZzoiLGUuaXRlbS5zZXJ2ZXIpfX1dfSIKICAgICAgICA+PC9kZWVzLXRhYmxlPgogICAgICA8L2Rpdj4KICAgICAgCiAgICAgIDxkaXYgY2xhc3M9ImRlbW8tc2VjdGlvbiI+CiAgICAgICAgPGgyIGNsYXNzPSJkZW1vLXRpdGxlIj5UYWJsZSB3aXRoIEhvcml6b250YWwgTGluZXMgT25seTwvaDI+CiAgICAgICAgPHAgY2xhc3M9ImRlbW8tZGVzY3JpcHRpb24iPkVtcGhhc2lzIG9uIHJvdyBzZXBhcmF0aW9uIHdpdGhvdXQgY29sdW1uIGRpdmlkZXJzLjwvcD4KICAgICAgICA8ZGVlcy10YWJsZQogICAgICAgICAgaGVhZGluZzE9IlNhbGVzIFBlcmZvcm1hbmNlIgogICAgICAgICAgaGVhZGluZzI9IlRvcCBwZXJmb3JtZXJzIHRoaXMgcXVhcnRlciIKICAgICAgICAgIC5zaG93SG9yaXpvbnRhbExpbmVzPSR7ITB9CiAgICAgICAgICAuc2hvd1ZlcnRpY2FsTGluZXM9JHshMX0KICAgICAgICAgIC5kYXRhPSR7W3tzYWxlc3BlcnNvbjoiRW1pbHkgSm9obnNvbiIscmVnaW9uOiJOb3J0aCBBbWVyaWNhIixkZWFsc19jbG9zZWQ6IjQyIixyZXZlbnVlOiIkMS4yTSIscXVvdGFfYWNoaWV2ZW1lbnQ6IjEyOCUiLHJhdGluZzoiXHUyQjUwXHUyQjUwXHUyQjUwXHUyQjUwXHUyQjUwIn0se3NhbGVzcGVyc29uOiJNaWNoYWVsIENoZW4iLHJlZ2lvbjoiQXNpYSBQYWNpZmljIixkZWFsc19jbG9zZWQ6IjM4IixyZXZlbnVlOiIkOTgwSyIscXVvdGFfYWNoaWV2ZW1lbnQ6IjExNSUiLHJhdGluZzoiXHUyQjUwXHUyQjUwXHUyQjUwXHUyQjUwXHUyQjUwIn0se3NhbGVzcGVyc29uOiJTYXJhaCBXaWxsaWFtcyIscmVnaW9uOiJFdXJvcGUiLGRlYWxzX2Nsb3NlZDoiMzUiLHJldmVudWU6IiQ4NzVLIixxdW90YV9hY2hpZXZlbWVudDoiMTA4JSIscmF0aW5nOiJcdTJCNTBcdTJCNTBcdTJCNTBcdTJCNTAifSx7c2FsZXNwZXJzb246IkRhdmlkIEdhcmNpYSIscmVnaW9uOiJMYXRpbiBBbWVyaWNhIixkZWFsc19jbG9zZWQ6IjMxIixyZXZlbnVlOiIkNzUwSyIscXVvdGFfYWNoaWV2ZW1lbnQ6Ijk1JSIscmF0aW5nOiJcdTJCNTBcdTJCNTBcdTJCNTBcdTJCNTAifV19CiAgICAgICAgICBkYXRhTmFtZT0ic2FsZXMgcmVwcyIKICAgICAgICA+PC9kZWVzLXRhYmxlPgogICAgICA8L2Rpdj4KICAgICAgCiAgICAgIDxkaXYgY2xhc3M9ImRlbW8tc2VjdGlvbiI+CiAgICAgICAgPGgyIGNsYXNzPSJkZW1vLXRpdGxlIj5TaW1wbGUgVGFibGUgKE5vIEdyaWQpPC9oMj4KICAgICAgICA8cCBjbGFzcz0iZGVtby1kZXNjcmlwdGlvbiI+Q2xlYW4sIG1pbmltYWwgZGVzaWduIHdpdGhvdXQgZ3JpZCBsaW5lcy4gU2V0IHNob3dHcmlkIHRvIGZhbHNlIHRvIGRpc2FibGUgdGhlIGRlZmF1bHQgZ3JpZC48L3A+CiAgICAgICAgPGRlZXMtdGFibGUKICAgICAgICAgIGhlYWRpbmcxPSJUZWFtIE1lbWJlcnMiCiAgICAgICAgICBoZWFkaW5nMj0iRW5naW5lZXJpbmcgRGVwYXJ0bWVudCIKICAgICAgICAgIC5zaG93R3JpZD0keyExfQogICAgICAgICAgLmRhdGE9JHtbe25hbWU6IkFsaWNlIEpvaG5zb24iLHJvbGU6IkxlYWQgRW5naW5lZXIiLGVtYWlsOiJhbGljZUBjb21wYW55LmNvbSIsbG9jYXRpb246IlNhbiBGcmFuY2lzY28iLGpvaW5lZDoiMjAyMC0wMy0xNSJ9LHtuYW1lOiJCb2IgU21pdGgiLHJvbGU6IlNlbmlvciBEZXZlbG9wZXIiLGVtYWlsOiJib2JAY29tcGFueS5jb20iLGxvY2F0aW9uOiJOZXcgWW9yayIsam9pbmVkOiIyMDE5LTA3LTIyIn0se25hbWU6IkNoYXJsaWUgRGF2aXMiLHJvbGU6IkRldk9wcyBFbmdpbmVlciIsZW1haWw6ImNoYXJsaWVAY29tcGFueS5jb20iLGxvY2F0aW9uOiJMb25kb24iLGpvaW5lZDoiMjAyMS0wMS0xMCJ9LHtuYW1lOiJEaWFuYSBNYXJ0aW5leiIscm9sZToiRnJvbnRlbmQgRGV2ZWxvcGVyIixlbWFpbDoiZGlhbmFAY29tcGFueS5jb20iLGxvY2F0aW9uOiJCYXJjZWxvbmEiLGpvaW5lZDoiMjAyMi0wNS0xOCJ9XX0KICAgICAgICAgIGRhdGFOYW1lPSJ0ZWFtIG1lbWJlcnMiCiAgICAgICAgPjwvZGVlcy10YWJsZT4KICAgICAgPC9kaXY+CiAgICAgIAogICAgICA8ZGl2IGNsYXNzPSJkZW1vLXNlY3Rpb24iPgogICAgICAgIDxoMiBjbGFzcz0iZGVtby10aXRsZSI+VGFibGUgd2l0aCBDdXN0b20gRGlzcGxheSBGdW5jdGlvbjwvaDI+CiAgICAgICAgPHAgY2xhc3M9ImRlbW8tZGVzY3JpcHRpb24iPlRyYW5zZm9ybSBkYXRhIGZvciBkaXNwbGF5IHVzaW5nIGN1c3RvbSBmb3JtYXR0aW5nLjwvcD4KICAgICAgICA8ZGVlcy10YWJsZQogICAgICAgICAgaGVhZGluZzE9IlNhbGVzIFJlcG9ydCIKICAgICAgICAgIGhlYWRpbmcyPSJRNCAyMDIzIFBlcmZvcm1hbmNlIgogICAgICAgICAgLmRhdGE9JHtbe3Byb2R1Y3Q6IkVudGVycHJpc2UgTGljZW5zZSIsdW5pdHM6NDUscmV2ZW51ZToyMjVlMyxncm93dGg6LjIzLGZvcmVjYXN0OjI4ZTR9LHtwcm9kdWN0OiJQcm9mZXNzaW9uYWwgTGljZW5zZSIsdW5pdHM6MTI4LHJldmVudWU6MTI4ZTMsZ3Jvd3RoOi4xNSxmb3JlY2FzdDoxNDdlM30se3Byb2R1Y3Q6IlN0YXJ0ZXIgTGljZW5zZSIsdW5pdHM6MzQyLHJldmVudWU6Njg0MDAsZ3Jvd3RoOi40Mixmb3JlY2FzdDo5N2UzfV19CiAgICAgICAgICAuZGlzcGxheUZ1bmN0aW9uPSR7ZT0+KHtQcm9kdWN0OmUucHJvZHVjdCwiVW5pdHMgU29sZCI6ZS51bml0cy50b0xvY2FsZVN0cmluZygpLFJldmVudWU6IiQiK2UucmV2ZW51ZS50b0xvY2FsZVN0cmluZygpLEdyb3d0aDooZS5ncm93dGgqMTAwKS50b0ZpeGVkKDEpKyIlIiwiUTEgMjAyNCBGb3JlY2FzdCI6IiQiK2UuZm9yZWNhc3QudG9Mb2NhbGVTdHJpbmcoKX0pfQogICAgICAgICAgZGF0YU5hbWU9InByb2R1Y3RzIgogICAgICAgID48L2RlZXMtdGFibGU+CiAgICAgIDwvZGl2PgogICAgICAKICAgICAgPGRpdiBjbGFzcz0iZGVtby1zZWN0aW9uIj4KICAgICAgICA8aDIgY2xhc3M9ImRlbW8tdGl0bGUiPkVtcHR5IFRhYmxlIFN0YXRlPC9oMj4KICAgICAgICA8cCBjbGFzcz0iZGVtby1kZXNjcmlwdGlvbiI+SG93IHRoZSB0YWJsZSBsb29rcyB3aGVuIG5vIGRhdGEgaXMgYXZhaWxhYmxlLjwvcD4KICAgICAgICA8ZGVlcy10YWJsZQogICAgICAgICAgaGVhZGluZzE9Ik5vIERhdGEgQXZhaWxhYmxlIgogICAgICAgICAgaGVhZGluZzI9IlRoaXMgdGFibGUgaXMgY3VycmVudGx5IGVtcHR5IgogICAgICAgICAgLmRhdGE9JHtbXX0KICAgICAgICAgIGRhdGFOYW1lPSJpdGVtcyIKICAgICAgICA+PC9kZWVzLXRhYmxlPgogICAgICA8L2Rpdj4KCiAgICAgIDxkaXYgY2xhc3M9ImRlbW8tc2VjdGlvbiI+CiAgICAgICAgPGgyIGNsYXNzPSJkZW1vLXRpdGxlIj5TY2hlbWEtRmlyc3QgQ29sdW1ucyAoTmV3KTwvaDI+CiAgICAgICAgPHAgY2xhc3M9ImRlbW8tZGVzY3JpcHRpb24iPkRlZmluZXMgY29sdW1ucyBleHBsaWNpdGx5IGFuZCByZW5kZXJzIHZpYSBzY2hlbWEuIE5vIGRpc3BsYXlGdW5jdGlvbiBuZWVkZWQuPC9wPgogICAgICAgIDxkZWVzLXRhYmxlCiAgICAgICAgICBoZWFkaW5nMT0iVXNlcnMgKFNjaGVtYS1GaXJzdCkiCiAgICAgICAgICBoZWFkaW5nMj0iQ29sdW1ucyBkZWZpbmUgcmVuZGVyaW5nIGFuZCBvcmRlciIKICAgICAgICAgIC5jb2x1bW5zPSR7W3trZXk6Im5hbWUiLGhlYWRlcjoiTmFtZSIsc29ydGFibGU6ITB9LHtrZXk6ImVtYWlsIixoZWFkZXI6IkVtYWlsIixyZW5kZXJlcjplPT5TYDxkZWVzLWJhZGdlPiR7ZX08L2RlZXMtYmFkZ2U+YH0se2tleToiam9pbmVkQXQiLGhlYWRlcjoiSm9pbmVkIixyZW5kZXJlcjplPT5uZXcgRGF0ZShlKS50b0xvY2FsZURhdGVTdHJpbmcoKX1dfQogICAgICAgICAgLmRhdGE9JHtbe25hbWU6IkFsaWNlIixlbWFpbDoiYWxpY2VAZXhhbXBsZS5jb20iLGpvaW5lZEF0OiIyMDIyLTA4LTAxIn0se25hbWU6IkJvYiIsZW1haWw6ImJvYkBleGFtcGxlLmNvbSIsam9pbmVkQXQ6IjIwMjEtMTItMTEifSx7bmFtZToiQ2Fyb2wiLGVtYWlsOiJjYXJvbEBleGFtcGxlLmNvbSIsam9pbmVkQXQ6IjIwMjMtMDMtMjIifV19CiAgICAgICAgICBkYXRhTmFtZT0idXNlcnMiCiAgICAgICAgPjwvZGVlcy10YWJsZT4KICAgICAgPC9kaXY+CgogICAgICA8ZGl2IGNsYXNzPSJkZW1vLXNlY3Rpb24iPgogICAgICAgIDxoMiBjbGFzcz0iZGVtby10aXRsZSI+UGFydGlhbCBTY2hlbWEgKyBBdWdtZW50IChOZXcpPC9oMj4KICAgICAgICA8cCBjbGFzcz0iZGVtby1kZXNjcmlwdGlvbiI+UHJvdmlkZXMgb25seSB0aGUgaW1wb3J0YW50IGNvbHVtbnM7IHRoZSByZXN0IGFyZSBtZXJnZWQgaW4gZnJvbSBkaXNwbGF5RnVuY3Rpb24uPC9wPgogICAgICAgIDxkZWVzLXRhYmxlCiAgICAgICAgICBoZWFkaW5nMT0iVXNlcnMgKFBhcnRpYWwgKyBBdWdtZW50KSIKICAgICAgICAgIGhlYWRpbmcyPSJNaXNzaW5nIGNvbHVtbnMgYXJlIGRlcml2ZWQiCiAgICAgICAgICAuY29sdW1ucz0ke1t7a2V5OiJuYW1lIixoZWFkZXI6Ik5hbWUiLHNvcnRhYmxlOiEwfV19CiAgICAgICAgICAuZGlzcGxheUZ1bmN0aW9uPSR7ZT0+KHtuYW1lOmUubmFtZSxlbWFpbDplLmVtYWlsLHJvbGU6ZS5yb2xlfSl9CiAgICAgICAgICAuYXVnbWVudEZyb21EaXNwbGF5RnVuY3Rpb249JHshMH0KICAgICAgICAgIC5kYXRhPSR7W3tuYW1lOiJFcmluIixlbWFpbDoiZXJpbkBleGFtcGxlLmNvbSIscm9sZToiQWRtaW4ifSx7bmFtZToiRmlubiIsZW1haWw6ImZpbm5AZXhhbXBsZS5jb20iLHJvbGU6IlVzZXIifSx7bmFtZToiR2luYSIsZW1haWw6ImdpbmFAZXhhbXBsZS5jb20iLHJvbGU6IlVzZXIifV19CiAgICAgICAgICBkYXRhTmFtZT0idXNlcnMiCiAgICAgICAgPjwvZGVlcy10YWJsZT4KICAgICAgPC9kaXY+CgogICAgICA8ZGl2IGNsYXNzPSJkZW1vLXNlY3Rpb24iIAogICAgICAgICAgIEBzZWxlY3Rpb25DaGFuZ2U9JHtlPT57Y29uc29sZS5sb2coIlNlbGVjdGlvbiBjaGFuZ2VkIixlLmRldGFpbCl9fQogICAgICAgICAgIEBzZWFyY2gtY2hhbmdlZD0ke2U9PntsZXQgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFibGVGaWx0ZXJTZWxlY3REZW1vIik7dCYmdC5zZXRGaWx0ZXJUZXh0KGUuZGV0YWlsLnZhbHVlKX19CiAgICAgICAgICAgQHNlYXJjaC1zdWJtaXQ9JHtlPT57bGV0IHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRhYmxlRmlsdGVyU2VsZWN0RGVtbyIpO3QmJnQuc2V0RmlsdGVyVGV4dChlLmRldGFpbC52YWx1ZSl9fQogICAgICA+CiAgICAgICAgPGgyIGNsYXNzPSJkZW1vLXRpdGxlIj5GaWx0ZXJpbmcgKyBNdWx0aS1TZWxlY3Rpb24gKE5ldyk8L2gyPgogICAgICAgIDxwIGNsYXNzPSJkZW1vLWRlc2NyaXB0aW9uIj5Vc2UgdGhlIHNlYXJjaCBiYXIgdG8gZmlsdGVyIHJvd3M7IHRvZ2dsZSBzZWxlY3Rpb24gdmlhIGNoZWNrYm94ZXMuIENsaWNrIGhlYWRlcnMgdG8gc29ydC48L3A+CiAgICAgICAgPGRlZXMtc2VhcmNoYmFyPjwvZGVlcy1zZWFyY2hiYXI+CiAgICAgICAgPGRpdiBzdHlsZT0iaGVpZ2h0OiAxMnB4Ij48L2Rpdj4KICAgICAgICA8ZGVlcy10YWJsZQogICAgICAgICAgaWQ9InRhYmxlRmlsdGVyU2VsZWN0RGVtbyIKICAgICAgICAgIGhlYWRpbmcxPSJJbnZlbnRvcnkgKEZpbHRlciArIFNlbGVjdCkiCiAgICAgICAgICBoZWFkaW5nMj0iVHJ5IHR5cGluZyB0byBmaWx0ZXIgYW5kIHNlbGVjdGluZyBtdWx0aXBsZSByb3dzIgogICAgICAgICAgLnNlbGVjdGlvbk1vZGU9JHsibXVsdGkifQogICAgICAgICAgLnJvd0tleT0keyJza3UifQogICAgICAgICAgLmNvbHVtbnM9JHtbe2tleToic2t1IixoZWFkZXI6IlNLVSIsc29ydGFibGU6ITB9LHtrZXk6Im5hbWUiLGhlYWRlcjoiTmFtZSIsc29ydGFibGU6ITB9LHtrZXk6InN0b2NrIixoZWFkZXI6IlN0b2NrIixzb3J0YWJsZTohMH1dfQogICAgICAgICAgLmRhdGE9JHtbe3NrdToiQS0xMDAiLG5hbWU6IlVTQi1DIENhYmxlIixzdG9jazoxMjB9LHtza3U6IkEtMTAxIixuYW1lOiJXaXJlbGVzcyBNb3VzZSIsc3RvY2s6NTV9LHtza3U6IkEtMTAyIixuYW1lOiJMYXB0b3AgU3RhbmQiLHN0b2NrOjE4fSx7c2t1OiJCLTIwMCIsbmFtZToiS2V5Ym9hcmQgKElTTykiLHN0b2NrOjg5fSx7c2t1OiJCLTIwMSIsbmFtZToiSERNSSBBZGFwdGVyIixzdG9jazowfSx7c2t1OiJDLTMwMCIsbmFtZToiV2ViY2FtIDEwODBwIixzdG9jazo0Mn1dfQogICAgICAgICAgZGF0YU5hbWU9Iml0ZW1zIgogICAgICAgID48L2RlZXMtdGFibGU+CiAgICAgIDwvZGl2PgoKICAgICAgPGRpdiBjbGFzcz0iZGVtby1zZWN0aW9uIj4KICAgICAgICA8aDIgY2xhc3M9ImRlbW8tdGl0bGUiPkNvbHVtbiBGaWx0ZXJzICsgU3RpY2t5IEhlYWRlciAoTmV3KTwvaDI+CiAgICAgICAgPHAgY2xhc3M9ImRlbW8tZGVzY3JpcHRpb24iPlBlci1jb2x1bW4gcXVpY2sgZmlsdGVycyBhbmQgc3RpY2t5IGhlYWRlciB3aXRoIGludGVybmFsIHNjcm9sbC4gVHJ5IGZpbHRlcmluZyB0aGUgTmFtZSBjb2x1bW4uIFVzZXMgLS10YWJsZS1tYXgtaGVpZ2h0IHZhci48L3A+CiAgICAgICAgPHN0eWxlPgogICAgICAgICAgZGVlcy10YWJsZVtzdGlja3ktaGVhZGVyXSB7IC0tdGFibGUtbWF4LWhlaWdodDogMjIwcHg7IH0KICAgICAgICA8L3N0eWxlPgogICAgICAgIDxkZWVzLXRhYmxlCiAgICAgICAgICBoZWFkaW5nMT0iRW1wbG95ZWVzIgogICAgICAgICAgaGVhZGluZzI9IlF1aWNrIGZpbHRlciBwZXIgY29sdW1uICsgc3RpY2t5IGhlYWRlciIKICAgICAgICAgIC5zaG93Q29sdW1uRmlsdGVycz0keyEwfQogICAgICAgICAgLnN0aWNreUhlYWRlcj0keyEwfQogICAgICAgICAgLmNvbHVtbnM9JHtbe2tleToibmFtZSIsaGVhZGVyOiJOYW1lIixzb3J0YWJsZTohMH0se2tleToiZW1haWwiLGhlYWRlcjoiRW1haWwiLHNvcnRhYmxlOiEwfSx7a2V5OiJkZXBhcnRtZW50IixoZWFkZXI6IkRlcGFydG1lbnQiLHNvcnRhYmxlOiEwfV19CiAgICAgICAgICAuZGF0YT0ke1t7bmFtZToiQWxpY2UgSm9obnNvbiIsZW1haWw6ImFsaWNlQGNvcnAuY29tIixkZXBhcnRtZW50OiJFbmdpbmVlcmluZyJ9LHtuYW1lOiJCb2IgU21pdGgiLGVtYWlsOiJib2JAY29ycC5jb20iLGRlcGFydG1lbnQ6IlNhbGVzIn0se25hbWU6IkNoYXJsaWUgRGF2aXMiLGVtYWlsOiJjaGFybGllQGNvcnAuY29tIixkZXBhcnRtZW50OiJIUiJ9LHtuYW1lOiJEaWFuYSBNYXJ0aW5leiIsZW1haWw6ImRpYW5hQGNvcnAuY29tIixkZXBhcnRtZW50OiJFbmdpbmVlcmluZyJ9LHtuYW1lOiJFdGhhbiBCcm93biIsZW1haWw6ImV0aGFuQGNvcnAuY29tIixkZXBhcnRtZW50OiJGaW5hbmNlIn0se25hbWU6IkZpb25hIENsYXJrIixlbWFpbDoiZmlvbmFAY29ycC5jb20iLGRlcGFydG1lbnQ6IlNhbGVzIn0se25hbWU6IkdyYWNlIExlZSIsZW1haWw6ImdyYWNlQGNvcnAuY29tIixkZXBhcnRtZW50OiJFbmdpbmVlcmluZyJ9LHtuYW1lOiJIZW5yeSBXaWxzb24iLGVtYWlsOiJoZW5yeUBjb3JwLmNvbSIsZGVwYXJ0bWVudDoiTWFya2V0aW5nIn0se25hbWU6IklyZW5lIFdhbGtlciIsZW1haWw6ImlyZW5lQGNvcnAuY29tIixkZXBhcnRtZW50OiJGaW5hbmNlIn0se25hbWU6IkphY2sgVHVybmVyIixlbWFpbDoiamFja0Bjb3JwLmNvbSIsZGVwYXJ0bWVudDoiU3VwcG9ydCJ9XX0KICAgICAgICAgIGRhdGFOYW1lPSJlbXBsb3llZXMiCiAgICAgICAgPjwvZGVlcy10YWJsZT4KICAgICAgPC9kaXY+CgogICAgICA8ZGl2IGNsYXNzPSJkZW1vLXNlY3Rpb24iCiAgICAgICAgQHNlYXJjaFJlcXVlc3Q9JHthc3luYyBlPT57bGV0e3F1ZXJ5OnR9PWUuZGV0YWlsfHx7cXVlcnk6IiJ9LHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlcnZlclNlYXJjaERlbW8iKSxhPVt7aWQ6MSxuYW1lOiJBbGljZSIsY2l0eToiQmVybGluIix0aXRsZToiRW5naW5lZXIifSx7aWQ6MixuYW1lOiJCb2IiLGNpdHk6IlBhcmlzIix0aXRsZToiRGVzaWduZXIifSx7aWQ6MyxuYW1lOiJDaGFybGllIixjaXR5OiJMb25kb24iLHRpdGxlOiJNYW5hZ2VyIn0se2lkOjQsbmFtZToiRGlhbmEiLGNpdHk6Ik1hZHJpZCIsdGl0bGU6IkVuZ2luZWVyIn0se2lkOjUsbmFtZToiRXRoYW4iLGNpdHk6IlJvbWUiLHRpdGxlOiJTdXBwb3J0In1dO2F3YWl0IG5ldyBQcm9taXNlKG49PnNldFRpbWVvdXQobiwzMDApKTtsZXQgaT1TdHJpbmcodHx8IiIpLnRvTG93ZXJDYXNlKCksbz1pP2EuZmlsdGVyKG49Pk9iamVjdC52YWx1ZXMobikuc29tZShzPT5TdHJpbmcocykudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhpKSkpOmE7ci5kYXRhPW99fQogICAgICA+CiAgICAgICAgPGgyIGNsYXNzPSJkZW1vLXRpdGxlIj5TZXJ2ZXIgU2VhcmNoIChOZXcpPC9oMj4KICAgICAgICA8cCBjbGFzcz0iZGVtby1kZXNjcmlwdGlvbiI+U2VsZWN0IFNlcnZlciBtb2RlLCB0eXBlIGEgcXVlcnksIGFuZCB3YXRjaCB0aGUgdGFibGUgZmV0Y2ggc2ltdWxhdGVkIHJlc3VsdHMuPC9wPgogICAgICAgIDxkZWVzLXRhYmxlCiAgICAgICAgICBpZD0ic2VydmVyU2VhcmNoRGVtbyIKICAgICAgICAgIGhlYWRpbmcxPSJQZW9wbGUgKFNlcnZlciBTZWFyY2gpIgogICAgICAgICAgaGVhZGluZzI9IkNsaWNrIFNlYXJjaCwgY2hvb3NlIFNlcnZlciBtb2RlLCBhbmQgdHlwZSIKICAgICAgICAgIC5jb2x1bW5zPSR7W3trZXk6Im5hbWUiLGhlYWRlcjoiTmFtZSJ9LHtrZXk6ImNpdHkiLGhlYWRlcjoiQ2l0eSJ9LHtrZXk6InRpdGxlIixoZWFkZXI6IlRpdGxlIn1dfQogICAgICAgICAgLmRhdGE9JHtbe2lkOjEsbmFtZToiQWxpY2UiLGNpdHk6IkJlcmxpbiIsdGl0bGU6IkVuZ2luZWVyIn0se2lkOjIsbmFtZToiQm9iIixjaXR5OiJQYXJpcyIsdGl0bGU6IkRlc2lnbmVyIn0se2lkOjMsbmFtZToiQ2hhcmxpZSIsY2l0eToiTG9uZG9uIix0aXRsZToiTWFuYWdlciJ9LHtpZDo0LG5hbWU6IkRpYW5hIixjaXR5OiJNYWRyaWQiLHRpdGxlOiJFbmdpbmVlciJ9LHtpZDo1LG5hbWU6IkV0aGFuIixjaXR5OiJSb21lIix0aXRsZToiU3VwcG9ydCJ9XX0KICAgICAgICAgIGRhdGFOYW1lPSJwZW9wbGUiCiAgICAgICAgPjwvZGVlcy10YWJsZT4KICAgICAgPC9kaXY+CgogICAgICA8ZGl2IGNsYXNzPSJkZW1vLXNlY3Rpb24iPgogICAgICAgIDxoMiBjbGFzcz0iZGVtby10aXRsZSI+V2lkZSBQcm9wZXJ0aWVzICsgTWFueSBBY3Rpb25zPC9oMj4KICAgICAgICA8cCBjbGFzcz0iZGVtby1kZXNjcmlwdGlvbiI+QSB0YWJsZSB3aXRoIG1hbnkgY29sdW1ucyBhbmQgcmljaCBhY3Rpb25zIHRvIHN0cmVzcyB0ZXN0IGxheW91dCBhbmQgc3RpY2t5IEFjdGlvbnMuPC9wPgogICAgICAgIDxkZWVzLXRhYmxlCiAgICAgICAgICBoZWFkaW5nMT0iUGVvcGxlIERpcmVjdG9yeSIKICAgICAgICAgIGhlYWRpbmcyPSJNYW55IHByb3BlcnRpZXMgYW5kIGFjdGlvbnMiCiAgICAgICAgICAuY29sdW1ucz0ke1t7a2V5OiJpZCIsaGVhZGVyOiJJRCIsc29ydGFibGU6ITB9LHtrZXk6Im5hbWUiLGhlYWRlcjoiTmFtZSIsc29ydGFibGU6ITB9LHtrZXk6InJvbGUiLGhlYWRlcjoiUm9sZSIsc29ydGFibGU6ITB9LHtrZXk6ImRlcGFydG1lbnQiLGhlYWRlcjoiRGVwYXJ0bWVudCIsc29ydGFibGU6ITB9LHtrZXk6ImVtYWlsIixoZWFkZXI6IkVtYWlsIn0se2tleToicGhvbmUiLGhlYWRlcjoiUGhvbmUifSx7a2V5OiJsb2NhdGlvbiIsaGVhZGVyOiJMb2NhdGlvbiIsc29ydGFibGU6ITB9LHtrZXk6InN0YXR1cyIsaGVhZGVyOiJTdGF0dXMiLHNvcnRhYmxlOiEwfSx7a2V5OiJjcmVhdGVkQXQiLGhlYWRlcjoiQ3JlYXRlZCIsc29ydGFibGU6ITB9LHtrZXk6InVwZGF0ZWRBdCIsaGVhZGVyOiJVcGRhdGVkIixzb3J0YWJsZTohMH0se2tleToibGFzdExvZ2luIixoZWFkZXI6Ikxhc3QgTG9naW4iLHNvcnRhYmxlOiEwfSx7a2V5OiJwcm9qZWN0cyIsaGVhZGVyOiJQcm9qZWN0cyJ9LHtrZXk6InRhZ3MiLGhlYWRlcjoiVGFncyJ9LHtrZXk6Im5vdGVzIixoZWFkZXI6Ik5vdGVzIn1dfQogICAgICAgICAgLmRhdGE9JHtbe2lkOjEsbmFtZToiQWxpY2UgSm9obnNvbiIscm9sZToiRW5naW5lZXIiLGRlcGFydG1lbnQ6IlImRCIsZW1haWw6ImFsaWNlQGNvcnAuY29tIixwaG9uZToiKzEgMjAyIDU1NSAwMTExIixsb2NhdGlvbjoiQmVybGluIixzdGF0dXM6IkFjdGl2ZSIsY3JlYXRlZEF0OiIyMDIzLTAxLTEyIix1cGRhdGVkQXQ6IjIwMjQtMDUtMDMiLGxhc3RMb2dpbjoiMjAyNC0xMC0wMSIscHJvamVjdHM6NSx0YWdzOiJ0eXBlc2NyaXB0LCB1aSIsbm90ZXM6Ik1lbnRvciJ9LHtpZDoyLG5hbWU6IkJvYiBTbWl0aCIscm9sZToiRGVzaWduZXIiLGRlcGFydG1lbnQ6IkRlc2lnbiIsZW1haWw6ImJvYkBjb3JwLmNvbSIscGhvbmU6IisxIDIwMiA1NTUgMDExMiIsbG9jYXRpb246IlBhcmlzIixzdGF0dXM6IkFjdGl2ZSIsY3JlYXRlZEF0OiIyMDIyLTExLTA1Iix1cGRhdGVkQXQ6IjIwMjQtMDQtMTAiLGxhc3RMb2dpbjoiMjAyNC0wOS0yOCIscHJvamVjdHM6OCx0YWdzOiJmaWdtYSwgYnJhbmQiLG5vdGVzOiJQYXJ0LXRpbWUifSx7aWQ6MyxuYW1lOiJDaGFybGllIERhdmlzIixyb2xlOiJNYW5hZ2VyIixkZXBhcnRtZW50OiJPcHMiLGVtYWlsOiJjaGFybGllQGNvcnAuY29tIixwaG9uZToiKzEgMjAyIDU1NSAwMTEzIixsb2NhdGlvbjoiTG9uZG9uIixzdGF0dXM6Ik9uIExlYXZlIixjcmVhdGVkQXQ6IjIwMjEtMDQtMjEiLHVwZGF0ZWRBdDoiMjAyNC0wMi0xNSIsbGFzdExvZ2luOiIyMDI0LTA4LTEyIixwcm9qZWN0czozLHRhZ3M6InNyZSwgbGVhZGVyc2hpcCIsbm90ZXM6IiJ9LHtpZDo0LG5hbWU6IkRpYW5hIE1hcnRpbmV6Iixyb2xlOiJFbmdpbmVlciIsZGVwYXJ0bWVudDoiUGxhdGZvcm0iLGVtYWlsOiJkaWFuYUBjb3JwLmNvbSIscGhvbmU6IisxIDIwMiA1NTUgMDExNCIsbG9jYXRpb246Ik1hZHJpZCIsc3RhdHVzOiJBY3RpdmUiLGNyZWF0ZWRBdDoiMjAyMC0wNi0zMCIsdXBkYXRlZEF0OiIyMDI0LTA2LTI1IixsYXN0TG9naW46IjIwMjQtMTAtMDIiLHByb2plY3RzOjYsdGFnczoibm9kZSwgYXBpIixub3RlczoiT24tY2FsbCJ9LHtpZDo1LG5hbWU6IkV0aGFuIEJyb3duIixyb2xlOiJTdXBwb3J0IixkZXBhcnRtZW50OiJDUyIsZW1haWw6ImV0aGFuQGNvcnAuY29tIixwaG9uZToiKzEgMjAyIDU1NSAwMTE1Iixsb2NhdGlvbjoiUm9tZSIsc3RhdHVzOiJJbmFjdGl2ZSIsY3JlYXRlZEF0OiIyMDE5LTA5LTE4Iix1cGRhdGVkQXQ6IjIwMjQtMDMtMDkiLGxhc3RMb2dpbjoiMjAyNC0wNi0xOSIscHJvamVjdHM6Mix0YWdzOiJ6ZW5kZXNrIixub3RlczoiUmVoaXJlIn0se2lkOjYsbmFtZToiRmlvbmEgQ2xhcmsiLHJvbGU6IlFBIixkZXBhcnRtZW50OiJRQSIsZW1haWw6ImZpb25hQGNvcnAuY29tIixwaG9uZToiKzEgMjAyIDU1NSAwMTE2Iixsb2NhdGlvbjoiVmllbm5hIixzdGF0dXM6IkFjdGl2ZSIsY3JlYXRlZEF0OiIyMDIyLTAzLTE0Iix1cGRhdGVkQXQ6IjIwMjQtMDMtMDEiLGxhc3RMb2dpbjoiMjAyNC0wOS0wNyIscHJvamVjdHM6Nyx0YWdzOiJwbGF5d3JpZ2h0Iixub3RlczoiIn1dfQogICAgICAgICAgLmRhdGFBY3Rpb25zPSR7W3tuYW1lOiJWaWV3IixpY29uTmFtZToibHVjaWRlOmV5ZSIsdHlwZTpbImluUm93IiwiY29udGV4dG1lbnUiXSxhY3Rpb25GdW5jOmFzeW5jKHtpdGVtOmV9KT0+e2NvbnNvbGUubG9nKCJ2aWV3IixlKX19LHtuYW1lOiJFZGl0IixpY29uTmFtZToibHVjaWRlOmVkaXQiLHR5cGU6WyJpblJvdyIsImNvbnRleHRtZW51Il0sYWN0aW9uRnVuYzphc3luYyh7aXRlbTplfSk9Pntjb25zb2xlLmxvZygiZWRpdCIsZSl9fSx7bmFtZToiRGVsZXRlIixpY29uTmFtZToibHVjaWRlOnRyYXNoIix0eXBlOlsiaW5Sb3ciLCJjb250ZXh0bWVudSJdLGFjdGlvbkZ1bmM6YXN5bmMoe2l0ZW06ZX0pPT57Y29uc29sZS5sb2coImRlbGV0ZSIsZSl9fSx7bmFtZToiTWVzc2FnZSIsaWNvbk5hbWU6Imx1Y2lkZTptZXNzYWdlLXNxdWFyZSIsdHlwZTpbImluUm93Il0sYWN0aW9uRnVuYzphc3luYyh7aXRlbTplfSk9Pntjb25zb2xlLmxvZygibWVzc2FnZSIsZSl9fSx7bmFtZToiSGlzdG9yeSIsaWNvbk5hbWU6Imx1Y2lkZTpjbG9jayIsdHlwZTpbImluUm93Il0sYWN0aW9uRnVuYzphc3luYyh7aXRlbTplfSk9Pntjb25zb2xlLmxvZygiaGlzdG9yeSIsZSl9fSx7bmFtZToiQWRkIE5ldyIsaWNvbk5hbWU6Imx1Y2lkZTpwbHVzIix0eXBlOlsiaGVhZGVyIl0sYWN0aW9uRnVuYzphc3luYyh7dGFibGU6ZX0pPT57Y29uc29sZS5sb2coImFkZCIpfX0se25hbWU6IkV4cG9ydCBDU1YiLGljb25OYW1lOiJsdWNpZGU6ZG93bmxvYWQiLHR5cGU6WyJoZWFkZXIiXSxhY3Rpb25GdW5jOmFzeW5jKHt0YWJsZTplfSk9Pntjb25zb2xlLmxvZygiZXhwb3J0Iil9fSx7bmFtZToiQnVsayBEZWxldGUiLGljb25OYW1lOiJsdWNpZGU6dHJhc2gtMiIsdHlwZTpbImZvb3RlciJdLGFjdGlvbkZ1bmM6YXN5bmMoe3RhYmxlOmV9KT0+e2NvbnNvbGUubG9nKCJidWxrIGRlbGV0ZSIpfX1dfQogICAgICAgID48L2RlZXMtdGFibGU+CiAgICAgIDwvZGl2PgoKICAgICAgPGRpdiBjbGFzcz0iZGVtby1zZWN0aW9uIj4KICAgICAgICA8aDIgY2xhc3M9ImRlbW8tdGl0bGUiPlNjcm9sbGFibGUgU21hbGwgSGVpZ2h0PC9oMj4KICAgICAgICA8cCBjbGFzcz0iZGVtby1kZXNjcmlwdGlvbiI+U2FtZSBhcyBhYm92ZSwgYnV0IHdpdGggbWFueSBpdGVtcyBhbmQgYSBzbWFsbCBmaXhlZCBoZWlnaHQgdG8gZm9yY2UgdmVydGljYWwgc2Nyb2xsaW5nIGluc2lkZSB0aGUgdGFibGUuIEFjdGlvbnMgcmVtYWluIHZpc2libGUgb24gdGhlIHJpZ2h0OyBob3Jpem9udGFsIHNjcm9sbCBhcHBlYXJzIGlmIG5lZWRlZC48L3A+CiAgICAgICAgPHN0eWxlPgogICAgICAgICAgI3Njcm9sbFNtYWxsSGVpZ2h0IHsgLS10YWJsZS1tYXgtaGVpZ2h0OiAyNDBweDsgfQogICAgICAgIDwvc3R5bGU+CiAgICAgICAgPGRlZXMtdGFibGUKICAgICAgICAgIGlkPSJzY3JvbGxTbWFsbEhlaWdodCIKICAgICAgICAgIC5zdGlja3lIZWFkZXI9JHshMH0KICAgICAgICAgIGhlYWRpbmcxPSJQZW9wbGUgRGlyZWN0b3J5IChTY3JvbGxhYmxlKSIKICAgICAgICAgIGhlYWRpbmcyPSJGb3JjZWQgc2Nyb2xsaW5nIHdpdGggbWFueSBpdGVtcyIKICAgICAgICAgIC5jb2x1bW5zPSR7W3trZXk6ImlkIixoZWFkZXI6IklEIixzb3J0YWJsZTohMH0se2tleToibmFtZSIsaGVhZGVyOiJOYW1lIixzb3J0YWJsZTohMH0se2tleToicm9sZSIsaGVhZGVyOiJSb2xlIixzb3J0YWJsZTohMH0se2tleToiZGVwYXJ0bWVudCIsaGVhZGVyOiJEZXBhcnRtZW50Iixzb3J0YWJsZTohMH0se2tleToiZW1haWwiLGhlYWRlcjoiRW1haWwifSx7a2V5OiJwaG9uZSIsaGVhZGVyOiJQaG9uZSJ9LHtrZXk6ImxvY2F0aW9uIixoZWFkZXI6IkxvY2F0aW9uIixzb3J0YWJsZTohMH0se2tleToic3RhdHVzIixoZWFkZXI6IlN0YXR1cyIsc29ydGFibGU6ITB9LHtrZXk6ImNyZWF0ZWRBdCIsaGVhZGVyOiJDcmVhdGVkIixzb3J0YWJsZTohMH0se2tleToidXBkYXRlZEF0IixoZWFkZXI6IlVwZGF0ZWQiLHNvcnRhYmxlOiEwfSx7a2V5OiJsYXN0TG9naW4iLGhlYWRlcjoiTGFzdCBMb2dpbiIsc29ydGFibGU6ITB9LHtrZXk6InByb2plY3RzIixoZWFkZXI6IlByb2plY3RzIn0se2tleToidGFncyIsaGVhZGVyOiJUYWdzIn0se2tleToibm90ZXMiLGhlYWRlcjoiTm90ZXMifV19CiAgICAgICAgICAuZGF0YT0ke0FycmF5LmZyb20oe2xlbmd0aDoxMDB9LChlLHQpPT4oe2lkOnQrMSxuYW1lOmBVc2VyICR7dCsxfWAscm9sZTpbIkVuZ2luZWVyIiwiRGVzaWduZXIiLCJNYW5hZ2VyIiwiUUEiLCJTdXBwb3J0Il1bdCU1XSxkZXBhcnRtZW50OlsiUiZEIiwiRGVzaWduIiwiT3BzIiwiUUEiLCJDUyJdW3QlNV0sZW1haWw6YHVzZXIke3QrMX1AY29ycC5jb21gLHBob25lOmArMSAyMDIgNTU1ICR7U3RyaW5nKDFlMyt0KS5zbGljZSgtNCl9YCxsb2NhdGlvbjpbIkJlcmxpbiIsIlBhcmlzIiwiTG9uZG9uIiwiTWFkcmlkIiwiUm9tZSJdW3QlNV0sc3RhdHVzOlsiQWN0aXZlIiwiSW5hY3RpdmUiLCJPbiBMZWF2ZSJdW3QlM10sY3JlYXRlZEF0OmAyMDIzLSR7U3RyaW5nKHQlMTIrMSkucGFkU3RhcnQoMiwiMCIpfS0ke1N0cmluZyh0JTI4KzEpLnBhZFN0YXJ0KDIsIjAiKX1gLHVwZGF0ZWRBdDpgMjAyNC0ke1N0cmluZygodCszKSUxMisxKS5wYWRTdGFydCgyLCIwIil9LSR7U3RyaW5nKCh0KzcpJTI4KzEpLnBhZFN0YXJ0KDIsIjAiKX1gLGxhc3RMb2dpbjpgMjAyNC0ke1N0cmluZygodCs2KSUxMisxKS5wYWRTdGFydCgyLCIwIil9LSR7U3RyaW5nKCh0KzEwKSUyOCsxKS5wYWRTdGFydCgyLCIwIil9YCxwcm9qZWN0czp0JTEyLHRhZ3M6dCUyPyJ0eXBlc2NyaXB0IjoiZGVzaWduIixub3Rlczp0JTM/IiI6Ik5vdGUifSkpfQogICAgICAgICAgLmRhdGFBY3Rpb25zPSR7W3tuYW1lOiJWaWV3IixpY29uTmFtZToibHVjaWRlOmV5ZSIsdHlwZTpbImluUm93Il0sYWN0aW9uRnVuYzphc3luYyh7aXRlbTplfSk9Pnt9fSx7bmFtZToiRWRpdCIsaWNvbk5hbWU6Imx1Y2lkZTplZGl0Iix0eXBlOlsiaW5Sb3ciXSxhY3Rpb25GdW5jOmFzeW5jKHtpdGVtOmV9KT0+e319LHtuYW1lOiJEZWxldGUiLGljb25OYW1lOiJsdWNpZGU6dHJhc2giLHR5cGU6WyJpblJvdyJdLGFjdGlvbkZ1bmM6YXN5bmMoe2l0ZW06ZX0pPT57fX1dfQogICAgICAgID48L2RlZXMtdGFibGU+CiAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgPC9kaXY+CmB9KTt2YXIgaVByLG9Qcj1sKCgpPT57U2UoKTt1bygpO290KCk7aVByPVtQZSxtLmRlZmF1bHRTdHlsZXMsbGVgCiAgICAgIC8qIFRPRE86IE1pZ3JhdGUgaGFyZGNvZGVkIHZhbHVlcyB0byAtLWRlZXMtKiBDU1MgdmFyaWFibGVzICovCiAgICAgIDpob3N0IHsKICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgfQoKICAgICAgLm1haW5ib3ggewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMy45JSkiLCJoc2woMCAwJSA5OCUpIil9OwogICAgICAgIGZvbnQtZmFtaWx5OiAke1hyfTsKICAgICAgICBmb250LXdlaWdodDogNDAwOwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTAwJSkiLCJoc2woMCAwJSAzLjklKSIpfTsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIGN1cnNvcjogZGVmYXVsdDsKICAgICAgfQoKICAgICAgLmhlYWRlciB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBwYWRkaW5nOiAxNnB4IDI0cHg7CiAgICAgICAgbWluLWhlaWdodDogNjRweDsKICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgwIDAlIDg5LjglKSIsImhzbCgwIDAlIDE0LjklKSIpfTsKICAgICAgfQoKICAgICAgLmhlYWRpbmdDb250YWluZXIgewogICAgICAgIGZsZXg6IDE7CiAgICAgIH0KCiAgICAgIC5oZWFkaW5nIHsKICAgICAgICBsaW5lLWhlaWdodDogMS41OwogICAgICB9CgogICAgICAuaGVhZGluZzEgewogICAgICAgIGZvbnQtc2l6ZTogMThweDsKICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOSUpIiwiaHNsKDAgMCUgOTUlKSIpfTsKICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDI1ZW07CiAgICAgIH0KICAgICAgCiAgICAgIC5oZWFkaW5nMiB7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNS40IDE2LjMlIDU2LjklKSIsImhzbCgyMTUgMjAuMiUgNTUuMSUpIil9OwogICAgICAgIG1hcmdpbi10b3A6IDJweDsKICAgICAgfQoKICAgICAgLmhlYWRpbmdTZXBhcmF0aW9uIHsKICAgICAgICBkaXNwbGF5OiBub25lOwogICAgICB9CgogICAgICAuaGVhZGVyQWN0aW9ucyB7CiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93OwogICAgICAgIGdhcDogOHB4OwogICAgICB9CiAgICAgIAogICAgICAuaGVhZGVyQWN0aW9uIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgZ2FwOiA2cHg7CiAgICAgICAgcGFkZGluZzogNnB4IDEycHg7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA0NS4xJSkiLCJoc2woMCAwJSA2My45JSkiKX07CiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgwIDAlIDg5LjglKSIsImhzbCgwIDAlIDE0LjklKSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICB9CgogICAgICAuaGVhZGVyQWN0aW9uOmhvdmVyIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDklKSIsImhzbCgwIDAlIDk1JSkiKX07CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk1LjElKSIsImhzbCgwIDAlIDE0LjklKSIpfTsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA3OS44JSkiLCJoc2woMCAwJSAyMC45JSkiKX07CiAgICAgIH0KCiAgICAgIC5oZWFkZXJBY3Rpb24gZGVlcy1pY29uIHsKICAgICAgICB3aWR0aDogMTRweDsKICAgICAgICBoZWlnaHQ6IDE0cHg7CiAgICAgIH0KCiAgICAgIC5zZWFyY2hHcmlkIHsKICAgICAgICBkaXNwbGF5OiBncmlkOwogICAgICAgIGdyaWQtZ2FwOiAxNnB4OwogICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIG1heC1jb250ZW50OwogICAgICAgIHBhZGRpbmc6IDE2cHggMjRweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDIxMCA0MCUgOTglKSIsImhzbCgwIDAlIDMuOSUpIil9OwogICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7CiAgICAgIH0KCiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5MDBweCkgewogICAgICAgIC5zZWFyY2hHcmlkIHsKICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyOwogICAgICAgIH0KICAgICAgfQoKICAgICAgLyogbGV0IHNlYXJjaCBtb2RlIHNpemUgdG8gY29udGVudCAobm8gZm9yY2VkIHdpZHRoKSAqLwoKICAgICAgLnNlYXJjaEdyaWQuaGlkZGVuIHsKICAgICAgICBoZWlnaHQ6IDBweDsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgcGFkZGluZzogMHB4IDI0cHg7CiAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMHB4OwogICAgICB9CgogICAgICAudGFibGVTY3JvbGwgewogICAgICAgIC8qIGVuYWJsZSBob3Jpem9udGFsIHNjcm9sbCBvbmx5IHdoZW4gY29udGVudCBleGNlZWRzIHdpZHRoICovCiAgICAgICAgb3ZlcmZsb3cteDogYXV0bzsKICAgICAgICAvKiBwcmV2ZW50IHZlcnRpY2FsIHNjcm9sbCBpbnNpZGUgdGhlIHRhYmxlIGNvbnRhaW5lciAqLwogICAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjsKICAgICAgICAvKiBhdm9pZCByZXNlcnZpbmcgZXh0cmEgc3BhY2UgZm9yIGNsYXNzaWMgc2Nyb2xsYmFycyB3aGVyZSBwb3NzaWJsZSAqLwogICAgICAgIHNjcm9sbGJhci1ndXR0ZXI6IHN0YWJsZSBib3RoLWVkZ2VzOwogICAgICB9CiAgICAgIC8qIEhpZGUgaG9yaXpvbnRhbCBzY3JvbGxiYXIgZW50aXJlbHkgd2hlbiBub3QgdXNpbmcgc3RpY2t5IGhlYWRlciAqLwogICAgICA6aG9zdCg6bm90KFtzdGlja3ktaGVhZGVyXSkpIC50YWJsZVNjcm9sbCB7CiAgICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lOyAvKiBJRS9FZGdlICovCiAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOyAgIC8qIEZpcmVmb3ggKGhpZGVzIGJvdGggYXhlcykgKi8KICAgICAgfQogICAgICA6aG9zdCg6bm90KFtzdGlja3ktaGVhZGVyXSkpIC50YWJsZVNjcm9sbDo6LXdlYmtpdC1zY3JvbGxiYXIgewogICAgICAgIGRpc3BsYXk6IG5vbmU7IC8qIENocm9tZS9TYWZhcmkgKi8KICAgICAgfQogICAgICAvKiBJbiBzdGlja3ktaGVhZGVyIG1vZGUsIGhpZGUgb25seSB0aGUgaG9yaXpvbnRhbCBzY3JvbGxiYXIgaW4gV2ViS2l0L0JsaW5rICovCiAgICAgIDpob3N0KFtzdGlja3ktaGVhZGVyXSkgLnRhYmxlU2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhcjpob3Jpem9udGFsIHsKICAgICAgICBoZWlnaHQ6IDBweDsKICAgICAgfQogICAgICA6aG9zdChbc3RpY2t5LWhlYWRlcl0pIC50YWJsZVNjcm9sbCB7CiAgICAgICAgbWF4LWhlaWdodDogdmFyKC0tdGFibGUtbWF4LWhlaWdodCwgMzYwcHgpOwogICAgICAgIG92ZXJmbG93OiBhdXRvOwogICAgICB9CgogICAgICB0YWJsZSB7CiAgICAgICAgLyogYWxsb3cgdGFibGUgdG8gZ3JvdyB3aWRlciB0aGFuIGNvbnRhaW5lciBzbyBhY3Rpb25zIGNvbHVtbiBjYW4gc3RpY2sgKi8KICAgICAgICB3aWR0aDogbWF4LWNvbnRlbnQ7CiAgICAgICAgbWluLXdpZHRoOiAxMDAlOwogICAgICAgIGNhcHRpb24tc2lkZTogYm90dG9tOwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlOwogICAgICAgIGJvcmRlci1zcGFjaW5nOiAwOwogICAgICB9CiAgICAgIAogICAgICAubm9EYXRhU2V0IHsKICAgICAgICBwYWRkaW5nOiA0OHB4IDI0cHg7CiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNS40IDE2LjMlIDU2LjklKSIsImhzbCgyMTUgMjAuMiUgNTUuMSUpIil9OwogICAgICB9CiAgICAgIAogICAgICB0aGVhZCB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTAgNDAlIDk2LjElKSIsImhzbCgwIDAlIDklKSIpfTsKICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgwIDAlIDc5LjglKSIsImhzbCgwIDAlIDIwLjklKSIpfTsKICAgICAgfQogICAgICA6aG9zdChbc3RpY2t5LWhlYWRlcl0pIHRoZWFkIHRoIHsKICAgICAgICBwb3NpdGlvbjogc3RpY2t5OwogICAgICAgIHRvcDogMDsKICAgICAgICB6LWluZGV4OiAyOwogICAgICB9CiAgICAgIAogICAgICB0Ym9keSB0ciB7CiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlOwogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgfQogICAgICAKICAgICAgLyogRGVmYXVsdCBob3Jpem9udGFsIGxpbmVzIChib3R0b20gYm9yZGVyIG9ubHkpICovCiAgICAgIHRib2R5IHRyIHsKICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgwIDAlIDg5LjglKSIsImhzbCgwIDAlIDE0LjklKSIpfTsKICAgICAgfQogICAgICAKICAgICAgdGJvZHkgdHI6bGFzdC1jaGlsZCB7CiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTsKICAgICAgfQogICAgICAKICAgICAgLyogRnVsbCBob3Jpem9udGFsIGxpbmVzIHdoZW4gZW5hYmxlZCAqLwogICAgICA6aG9zdChbc2hvdy1ob3Jpem9udGFsLWxpbmVzXSkgdGJvZHkgdHIgewogICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICB9CiAgICAgIAogICAgICA6aG9zdChbc2hvdy1ob3Jpem9udGFsLWxpbmVzXSkgdGJvZHkgdHI6Zmlyc3QtY2hpbGQgewogICAgICAgIGJvcmRlci10b3A6IG5vbmU7CiAgICAgIH0KICAgICAgCiAgICAgIDpob3N0KFtzaG93LWhvcml6b250YWwtbGluZXNdKSB0Ym9keSB0cjpsYXN0LWNoaWxkIHsKICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgwIDAlIDg5LjglKSIsImhzbCgwIDAlIDE0LjklKSIpfTsKICAgICAgfQogICAgICAKICAgICAgdGJvZHkgdHI6aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjEwIDQwJSA5Ni4xJSAvIDAuNSkiLCJoc2woMCAwJSAxNC45JSAvIDAuNSkiKX07CiAgICAgIH0KICAgICAgCiAgICAgIC8qIENvbHVtbiBob3ZlciBlZmZlY3QgZm9yIGJldHRlciB0cmFjZWFiaWxpdHkgKi8KICAgICAgdGQgewogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgfQogICAgICAKICAgICAgdGQ6OmFmdGVyIHsKICAgICAgICBjb250ZW50OiAnJzsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgdG9wOiAwOwogICAgICAgIGJvdHRvbTogMDsKICAgICAgICBsZWZ0OiAwOwogICAgICAgIHJpZ2h0OiAwOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjEwIDQwJSA5Ni4xJSAvIDAuMykiLCJoc2woMCAwJSAxNC45JSAvIDAuMykiKX07CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2U7CiAgICAgICAgei1pbmRleDogLTE7CiAgICAgIH0KICAgICAgCiAgICAgIHRkOmhvdmVyOjphZnRlciB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgfQogICAgICAKICAgICAgLyogR3JpZCBtb2RlIC0gc2hvd3MgYm90aCB2ZXJ0aWNhbCBhbmQgaG9yaXpvbnRhbCBsaW5lcyAqLwogICAgICA6aG9zdChbc2hvdy1ncmlkXSkgdGggewogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OS44JSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7CiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTsKICAgICAgfQogICAgICAKICAgICAgOmhvc3QoW3Nob3ctZ3JpZF0pIHRkIHsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgIGJvcmRlci1sZWZ0OiBub25lOwogICAgICAgIGJvcmRlci10b3A6IG5vbmU7CiAgICAgIH0KICAgICAgCiAgICAgIDpob3N0KFtzaG93LWdyaWRdKSB0aDpmaXJzdC1jaGlsZCwKICAgICAgOmhvc3QoW3Nob3ctZ3JpZF0pIHRkOmZpcnN0LWNoaWxkIHsKICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OS44JSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgIH0KICAgICAgCiAgICAgIDpob3N0KFtzaG93LWdyaWRdKSB0Ym9keSB0cjpmaXJzdC1jaGlsZCB0ZCB7CiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTsKICAgICAgfQoKICAgICAgLyogU3RpY2t5IEFjdGlvbnMgY29sdW1uIChyaWdodCBwaW5uZWQpICovCiAgICAgIHRoZWFkIHRoLmFjdGlvbnNDb2wsCiAgICAgIHRib2R5IHRkLmFjdGlvbnNDb2wgewogICAgICAgIHBvc2l0aW9uOiBzdGlja3k7CiAgICAgICAgcmlnaHQ6IDA7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDEwMCUpIiwiaHNsKDAgMCUgMy45JSkiKX07CiAgICAgIH0KICAgICAgdGhlYWQgdGguYWN0aW9uc0NvbCB7IHotaW5kZXg6IDM7IH0KICAgICAgdGJvZHkgdGQuYWN0aW9uc0NvbCB7CiAgICAgICAgei1pbmRleDogMTsKICAgICAgICBib3gtc2hhZG93OiAtMXB4IDAgMCAwICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OS44JSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgIH0KICAgICAgCiAgICAgIHRib2R5IHRyLnNlbGVjdGVkIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDIxMCA0MCUgOTYuMSUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICB9CgogICAgICB0Ym9keSB0ci5oYXNBdHRhY2htZW50IHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDE0Mi4xIDc2LjIlIDM2LjMlIC8gMC4xKSIsImhzbCgxNDIuMSA3Ni4yJSAzNi4zJSAvIDAuMSkiKX07CiAgICAgIH0KCiAgICAgIHRoIHsKICAgICAgICBoZWlnaHQ6IDQ4cHg7CiAgICAgICAgcGFkZGluZzogMTJweCAyNHB4OwogICAgICAgIHRleHQtYWxpZ246IGxlZnQ7CiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuNCAxNi4zJSA0Ni45JSkiLCJoc2woMjE1IDIwLjIlIDY1LjElKSIpfTsKICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTsKICAgICAgfQogICAgICAKICAgICAgOmhvc3QoW3Nob3ctdmVydGljYWwtbGluZXNdKSB0aCB7CiAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgwIDAlIDg5LjglKSIsImhzbCgwIDAlIDE0LjklKSIpfTsKICAgICAgfQogICAgICAKICAgICAgdGQgewogICAgICAgIHBhZGRpbmc6IDEycHggMjRweDsKICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMy45JSkiLCJoc2woMCAwJSA5OCUpIil9OwogICAgICB9CiAgICAgIAogICAgICA6aG9zdChbc2hvdy12ZXJ0aWNhbC1saW5lc10pIHRkIHsKICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICB9CiAgICAgIAogICAgICB0aDpmaXJzdC1jaGlsZCwKICAgICAgdGQ6Zmlyc3QtY2hpbGQgewogICAgICAgIHBhZGRpbmctbGVmdDogMjRweDsKICAgICAgfQogICAgICAKICAgICAgdGg6bGFzdC1jaGlsZCwKICAgICAgdGQ6bGFzdC1jaGlsZCB7CiAgICAgICAgcGFkZGluZy1yaWdodDogMjRweDsKICAgICAgfQogICAgICAKICAgICAgOmhvc3QoW3Nob3ctdmVydGljYWwtbGluZXNdKSB0aDpsYXN0LWNoaWxkLAogICAgICA6aG9zdChbc2hvdy12ZXJ0aWNhbC1saW5lc10pIHRkOmxhc3QtY2hpbGQgewogICAgICAgIGJvcmRlci1yaWdodDogbm9uZTsKICAgICAgfQogICAgICAKICAgICAgLmlubmVyQ2VsbENvbnRhaW5lciB7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIG1pbi1oZWlnaHQ6IDI0cHg7CiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7CiAgICAgIH0KICAgICAgdGQgaW5wdXQgewogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICB0b3A6IDRweDsKICAgICAgICBib3R0b206IDRweDsKICAgICAgICBsZWZ0OiAyMHB4OwogICAgICAgIHJpZ2h0OiAyMHB4OwogICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTsKICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDhweCk7CiAgICAgICAgcGFkZGluZzogMCAxMnB4OwogICAgICAgIG91dGxpbmU6IG5vbmU7CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgwIDAlIDg5LjglKSIsImhzbCgwIDAlIDE0LjklKSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDEwMCUpIiwiaHNsKDAgMCUgOSUpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMy45JSkiLCJoc2woMCAwJSA5OCUpIil9OwogICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0OwogICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDsKICAgICAgICBmb250LXdlaWdodDogaW5oZXJpdDsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTsKICAgICAgICBib3gtc2hhZG93OiAwIDFweCAycHggMCByZ2IoMCAwIDAgLyAwLjA1KTsKICAgICAgfQogICAgICAKICAgICAgdGQgaW5wdXQ6Zm9jdXMgewogICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMjIuMiA0Ny40JSA1MS4yJSkiLCJoc2woMjE3LjIgOTEuMiUgNTkuOCUpIil9OwogICAgICAgIG91dGxpbmU6IDJweCBzb2xpZCB0cmFuc3BhcmVudDsKICAgICAgICBvdXRsaW5lLW9mZnNldDogMnB4OwogICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDJweCAke20uYmRUaGVtZSgiaHNsKDIyMi4yIDQ3LjQlIDUxLjIlIC8gMC4yKSIsImhzbCgyMTcuMiA5MS4yJSA1OS44JSAvIDAuMikiKX07CiAgICAgIH0KCiAgICAgIC8qIGZpbHRlciByb3cgKi8KICAgICAgdGhlYWQgdHIuZmlsdGVyc1JvdyB0aCB7CiAgICAgICAgcGFkZGluZzogOHB4IDEycHggMTJweCAxMnB4OwogICAgICB9CiAgICAgIHRoZWFkIHRyLmZpbHRlcnNSb3cgdGggaW5wdXRbdHlwZT0ndGV4dCddIHsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgICAgIHBhZGRpbmc6IDZweCA4cHg7CiAgICAgICAgZm9udC1zaXplOiAxM3B4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAxMDAlKSIsImhzbCgwIDAlIDklKSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDMuOSUpIiwiaHNsKDAgMCUgOTglKSIpfTsKICAgICAgfQogICAgICAuYWN0aW9uc0NvbnRhaW5lciB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93OwogICAgICAgIGdhcDogNHB4OwogICAgICB9CiAgICAgIAogICAgICAuYWN0aW9uIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgd2lkdGg6IDMycHg7CiAgICAgICAgaGVpZ2h0OiAzMnB4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuNCAxNi4zJSA0Ni45JSkiLCJoc2woMjE1IDIwLjIlIDY1LjElKSIpfTsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgIH0KCiAgICAgIC5hY3Rpb246aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjEwIDQwJSA5Ni4xJSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5JSkiLCJoc2woMCAwJSA5NSUpIil9OwogICAgICB9CgogICAgICAuYWN0aW9uOmFjdGl2ZSB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTAgNDAlIDk2LjElKSIsImhzbCgwIDAlIDExLjglKSIpfTsKICAgICAgfQogICAgICAKICAgICAgLmFjdGlvbiBkZWVzLWljb24gewogICAgICAgIHdpZHRoOiAxNnB4OwogICAgICAgIGhlaWdodDogMTZweDsKICAgICAgfQoKICAgICAgLmZvb3RlciB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICAgICAgICBoZWlnaHQ6IDUycHg7CiAgICAgICAgcGFkZGluZzogMCAyNHB4OwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuNCAxNi4zJSA0Ni45JSkiLCJoc2woMjE1IDIwLjIlIDY1LjElKSIpfTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDIxMCA0MCUgOTYuMSUpIiwiaHNsKDAgMCUgOSUpIil9OwogICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICB9CgogICAgICAudGFibGVTdGF0aXN0aWNzIHsKICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICB9CgogICAgICAuZm9vdGVyQWN0aW9ucyB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBnYXA6IDhweDsKICAgICAgfQoKICAgICAgLmZvb3RlckFjdGlvbnMgLmZvb3RlckFjdGlvbiB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogNnB4OwogICAgICAgIHBhZGRpbmc6IDZweCAxMnB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE1LjQgMTYuMyUgNDYuOSUpIiwiaHNsKDIxNSAyMC4yJSA2NS4xJSkiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTsKICAgICAgfQoKICAgICAgLmZvb3RlckFjdGlvbnMgLmZvb3RlckFjdGlvbjpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk1LjElKSIsImhzbCgwIDAlIDE0LjklKSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDklKSIsImhzbCgwIDAlIDk1JSkiKX07CiAgICAgIH0KCiAgICAgIC5mb290ZXJBY3Rpb25zIC5mb290ZXJBY3Rpb24gZGVlcy1pY29uIHsKICAgICAgICB3aWR0aDogMTRweDsKICAgICAgICBoZWlnaHQ6IDE0cHg7CiAgICAgIH0KICBgXX0pO2Z1bmN0aW9uIHpjdChlLHQpe2lmKCF0fHx0Lmxlbmd0aD09PTApcmV0dXJuW107bGV0IHI9ZSh0WzBdKTtyZXR1cm4gT2JqZWN0LmtleXMocikubWFwKGk9Pih7a2V5OmksaGVhZGVyOmksdmFsdWU6bz0+ZShvKVtpXX0pKX1mdW5jdGlvbiBuUHIoZSx0LHIsYSl7bGV0IGk9KGV8fFtdKS5zbGljZSgpO2lmKCF0KXJldHVybiBpO2xldCBvPXpjdChyLGEpLG49bmV3IFNldChpLm1hcChzPT5TdHJpbmcocy5rZXkpKSk7Zm9yKGxldCBzIG9mIG8pbi5oYXMoU3RyaW5nKHMua2V5KSl8fGkucHVzaChzKTtyZXR1cm4gaX1mdW5jdGlvbiBaOShlLHQscil7cmV0dXJuIHQudmFsdWU/dC52YWx1ZShlKTplW3Qua2V5XX1mdW5jdGlvbiBzUHIoZSx0LHIsYSxpLG8sbj0idGFibGUiLHMpe2xldCBjPWUuc2xpY2UoKSxkPShpfHwiIikudHJpbSgpLnRvTG93ZXJDYXNlKCksZj1vfHx7fSx1PU9iamVjdC5rZXlzKGYpLmZpbHRlcihiPT4oZltiXT8/IiIpLnRyaW0oKS5sZW5ndGg+MCk7aWYoKGR8fHUubGVuZ3RoPjApJiYoYz1jLmZpbHRlcihiPT57Zm9yKGxldCB4IG9mIHUpaWYobj09PSJkYXRhIil7bGV0IGc9Ylt4XSx2PVN0cmluZyhnPz8iIikudG9Mb3dlckNhc2UoKSx3PVN0cmluZyhmW3hdKS50b0xvd2VyQ2FzZSgpO2lmKCF2LmluY2x1ZGVzKHcpKXJldHVybiExfWVsc2V7bGV0IGc9dC5maW5kKEY9PlN0cmluZyhGLmtleSk9PT14KTtpZighZ3x8Zy5oaWRkZW58fGcuZmlsdGVyYWJsZT09PSExKWNvbnRpbnVlO2xldCB2PVo5KGIsZyksdz1TdHJpbmcodj8/IiIpLnRvTG93ZXJDYXNlKCksTT1TdHJpbmcoZlt4XSkudG9Mb3dlckNhc2UoKTtpZighdy5pbmNsdWRlcyhNKSlyZXR1cm4hMX1pZihkKXtpZihzKXJldHVybiEhcyhiKTtsZXQgeD0hMTtpZihuPT09ImRhdGEiKXtmb3IobGV0IGcgb2YgT2JqZWN0LnZhbHVlcyhiKSlpZihTdHJpbmcoZz8/IiIpLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoZCkpe3g9ITA7YnJlYWt9fWVsc2UgZm9yKGxldCBnIG9mIHQpe2lmKGcuaGlkZGVuKWNvbnRpbnVlO2xldCB2PVo5KGIsZyk7aWYoU3RyaW5nKHY/PyIiKS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKGQpKXt4PSEwO2JyZWFrfX1pZigheClyZXR1cm4hMX1yZXR1cm4hMH0pKSwhcnx8IWEpcmV0dXJuIGM7bGV0IHA9dC5maW5kKGI9PlN0cmluZyhiLmtleSk9PT1yKTtpZighcClyZXR1cm4gYztsZXQgaD1hPT09ImFzYyI/MTotMTtyZXR1cm4gYy5zb3J0KChiLHgpPT57bGV0IGc9WjkoYixwKSx2PVo5KHgscCk7aWYoZz09bnVsbCYmdj09bnVsbClyZXR1cm4gMDtpZihnPT1udWxsKXJldHVybi0xKmg7aWYodj09bnVsbClyZXR1cm4gMSpoO2lmKHR5cGVvZiBnPT0ibnVtYmVyIiYmdHlwZW9mIHY9PSJudW1iZXIiKXJldHVybihnLXYpKmg7bGV0IHc9U3RyaW5nKGcpLnRvTG93ZXJDYXNlKCksTT1TdHJpbmcodikudG9Mb3dlckNhc2UoKTtyZXR1cm4gdzxNPy0xKmg6dz5NPzEqaDowfSksY312YXIgbFByPWwoKCk9Pnt9KTtmdW5jdGlvbiBKbGUoZSl7cmV0dXJuIGUuc3RhcnRzV2l0aCgnIicpJiZlLmVuZHNXaXRoKCciJyl8fGUuc3RhcnRzV2l0aCgiJyIpJiZlLmVuZHNXaXRoKCInIik/ZS5zbGljZSgxLC0xKTplfWZ1bmN0aW9uIGR2YShlKXtyZXR1cm4gZS5zcGxpdCgvXHMrT1JccysvaSkubWFwKHQ9PnQudHJpbSgpKS5maWx0ZXIoQm9vbGVhbil9ZnVuY3Rpb24gdXZhKGUpe3JldHVybiBlLnNwbGl0KC9ccytBTkRccysvaSkubWFwKHQ9PnQudHJpbSgpKS5maWx0ZXIoQm9vbGVhbil9ZnVuY3Rpb24gZnZhKGUpe2lmKCFlKXJldHVybiBudWxsO2xldCB0PSExLHI9ZS5tYXRjaCgvXlxzKihOT1Rccyt8LSlccyooLiopJC9pKTtyJiYodD0hMCxlPXJbMl0pO2xldCBhPWUubWF0Y2goL14oW146XHNdKylccyo6XHMqXFsoLio/KVxzK1RPXHMrKC4qPylcXSQvaSk7aWYoYSlyZXR1cm57ZmllbGQ6YVsxXSxuZWdhdGU6dCxyYW5nZTp7bG93ZXI6SmxlKGFbMl0pLnRvTG93ZXJDYXNlKCksdXBwZXI6SmxlKGFbM10pLnRvTG93ZXJDYXNlKCksaW5jbHVzaXZlOiEwfX07bGV0IGk9ZS5tYXRjaCgvXihbXjpcc10rKVxzKjpccyooIlteIl0qInwnW14nXSonfFteIidcc10rKSQvKTtyZXR1cm4gaT97ZmllbGQ6aVsxXSx2YWx1ZTpKbGUoaVsyXSkudG9Mb3dlckNhc2UoKSxuZWdhdGU6dH06ZS5sZW5ndGg+MD97dmFsdWU6SmxlKGUpLnRvTG93ZXJDYXNlKCksbmVnYXRlOnR9Om51bGx9ZnVuY3Rpb24gcHZhKGUpe2lmKCFlKXJldHVybiBudWxsO2xldCB0PWR2YShlKS5tYXAocj0+KHt0ZXJtczp1dmEocikubWFwKGZ2YSkuZmlsdGVyKGk9PiEhaSYmISFpLnZhbHVlKX0pKS5maWx0ZXIocj0+ci50ZXJtcy5sZW5ndGg+MCk7cmV0dXJuIHQubGVuZ3RoPT09MD9udWxsOntjbGF1c2VzOnR9fWZ1bmN0aW9uIGNQcihlLHQscil7bGV0IGE9cHZhKGUpO2lmKCFhKXJldHVybiBudWxsO2xldCBpPW5ldyBNYXAoci5tYXAoYz0+W1N0cmluZyhjLmtleSksY10pKSxvPShjLGQpPT5jPGQ/LTE6Yz5kPzE6MCxuPWM9PntsZXQgZD1TdHJpbmcoYz8/IiIpLnRvTG93ZXJDYXNlKCksZj1OdW1iZXIoZCksdT1EYXRlLnBhcnNlKGQpO3JldHVybiFOdW1iZXIuaXNOYU4oZikmJmQudHJpbSgpIT09IiI/e3Q6Im4iLHY6Zn06TnVtYmVyLmlzTmFOKHUpP3t0OiJzIix2OmR9Ont0OiJkIix2OnV9fSxzPShjLGQsZik9PntsZXQgdT1uKGMpLHA9bihkKSxoPW4oZik7aWYodS50PT09InMiJiZwLnQ9PT0icyImJmgudD09PSJzIil7bGV0IHg9dS52O3JldHVybiBvKHgscC52KT49MCYmbyh4LGgudik8PTB9aWYodS50PT09Im4iJiZwLnQ9PT0ibiImJmgudD09PSJuIil7bGV0IHg9dS52O3JldHVybiB4Pj1wLnYmJng8PWgudn1pZih1LnQ9PT0iZCImJnAudD09PSJkIiYmaC50PT09ImQiKXtsZXQgeD11LnY7cmV0dXJuIHg+PXAudiYmeDw9aC52fWxldCBiPVN0cmluZyhjPz8iIikudG9Mb3dlckNhc2UoKTtyZXR1cm4gbyhiLGQpPj0wJiZvKGIsZik8PTB9O3JldHVybiBjPT57Zm9yKGxldCBkIG9mIGEuY2xhdXNlcyl7bGV0IGY9ITA7Zm9yKGxldCB1IG9mIGQudGVybXMpe2xldCBwPSExO2lmKHUucmFuZ2UmJnUuZmllbGQpaWYodD09PSJkYXRhIilwPXMoY1t1LmZpZWxkXSx1LnJhbmdlLmxvd2VyLHUucmFuZ2UudXBwZXIpO2Vsc2V7bGV0IGg9aS5nZXQodS5maWVsZCk7aWYoIWh8fGguaGlkZGVuKXA9ITE7ZWxzZXtsZXQgYj1oLnZhbHVlP2gudmFsdWUoYyk6Y1toLmtleV07cD1zKGIsdS5yYW5nZS5sb3dlcix1LnJhbmdlLnVwcGVyKX19ZWxzZSBpZih1LmZpZWxkJiZ1LnZhbHVlIT1udWxsKWlmKHQ9PT0iZGF0YSIpcD1TdHJpbmcoY1t1LmZpZWxkXT8/IiIpLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXModS52YWx1ZSk7ZWxzZXtsZXQgaD1pLmdldCh1LmZpZWxkKTtpZighaHx8aC5oaWRkZW49PT0hMClwPSExO2Vsc2V7bGV0IGI9aC52YWx1ZT9oLnZhbHVlKGMpOmNbaC5rZXldO3A9U3RyaW5nKGI/PyIiKS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHUudmFsdWUpfX1lbHNlIHUudmFsdWUhPW51bGwmJih0PT09ImRhdGEiP3A9T2JqZWN0LnZhbHVlcyhjKS5zb21lKGg9PlN0cmluZyhoPz8iIikudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyh1LnZhbHVlKSk6cD1yLnNvbWUoaD0+e2lmKGguaGlkZGVuKXJldHVybiExO2xldCBiPWgudmFsdWU/aC52YWx1ZShjKTpjW2gua2V5XTtyZXR1cm4gU3RyaW5nKGI/PyIiKS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHUudmFsdWUpfSkpO2lmKHUubmVnYXRlJiYocD0hcCksIXApe2Y9ITE7YnJlYWt9fWlmKGYpcmV0dXJuITB9cmV0dXJuITF9fXZhciBkUHI9bCgoKT0+e30pO3ZhciBLcixtdCxlY2UsU2N0PWwoKCk9PntPaSgpO2FQcigpO1NlKCk7YmkoKTtlcigpO2JyKCk7b1ByKCk7bFByKCk7ZFByKCk7b3QoKTtLcj1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LG10PWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSxlY2U9KCgpPT57bGV0IGU9W3plKCJkZWVzLXRhYmxlIildLHQscj1bXSxhLGk9RGUsbyxuPVtdLHM9W10sYyxkPVtdLGY9W10sdSxwPVtdLGg9W10sYix4PVtdLGc9W10sdix3PVtdLE09W10sRixDPVtdLGs9W10sTiwkPVtdLEk9W10sQix6PVtdLHk9W10sRSxfPVtdLFA9W10sVixIPVtdLFc9W10sYWUsVD1bXSxKPVtdLGZlLEw9W10sUT1bXSxrZSxHPVtdLEE9W10sRCxSPVtdLE89W10sWSx1ZT1bXSx5ZT1bXSwkZSxVPVtdLHE9W10saWUsd2U9W10sZ2U9W10sQWUseGU9W10sbmU9W10sTGUsT2U9W10sSmU9W10sdGUsWj1bXSxlZT1bXSxiZSxOZT1bXSxLZT1bXSx5dCxudD1bXSxMdD1bXSxPdCxzZT1bXSxkZT1bXSxFZSxndD1bXSxrdD1bXSx5cixsaT1bXSxhMT1bXSxpMSxfZT1bXSxGZT1bXSxOdCxtcj1bXSxDcj1bXSxPcixfcj1bXSxvMT1bXSxuMSxDZT1bXSx2ZT1bXTt2YXIgSGU9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCBUZT10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHt0eXBlOlN0cmluZ30pXSxjPVtqKHt0eXBlOlN0cmluZ30pXSx1PVtqKHt0eXBlOkFycmF5fSldLGI9W2ooe3R5cGU6U3RyaW5nfSldLHY9W2ooe3R5cGU6U3RyaW5nfSldLEY9W2ooe3R5cGU6Qm9vbGVhbn0pXSxOPVtqKHt0eXBlOkJvb2xlYW59KV0sQj1baih7dHlwZTpTdHJpbmcscmVmbGVjdDohMH0pXSxFPVtqKHt0eXBlOkJvb2xlYW59KV0sVj1baih7dHlwZTpBcnJheX0pXSxhZT1baih7YXR0cmlidXRlOiExfSldLGZlPVtqKHthdHRyaWJ1dGU6ITF9KV0sa2U9W2ooe3R5cGU6Qm9vbGVhbn0pXSxEPVtqKHthdHRyaWJ1dGU6ITF9KV0sWT1baih7YXR0cmlidXRlOiExfSldLCRlPVtqKHt0eXBlOk9iamVjdH0pXSxpZT1baih7dHlwZTpBcnJheX0pXSxBZT1baih7dHlwZTpCb29sZWFuLHJlZmxlY3Q6ITAsYXR0cmlidXRlOiJzaG93LXZlcnRpY2FsLWxpbmVzIn0pXSxMZT1baih7dHlwZTpCb29sZWFuLHJlZmxlY3Q6ITAsYXR0cmlidXRlOiJzaG93LWhvcml6b250YWwtbGluZXMifSldLHRlPVtqKHt0eXBlOkJvb2xlYW4scmVmbGVjdDohMCxhdHRyaWJ1dGU6InNob3ctZ3JpZCJ9KV0sYmU9W2ooe2F0dHJpYnV0ZTohMX0pXSx5dD1baih7YXR0cmlidXRlOiExfSldLE90PVtqKHt0eXBlOlN0cmluZ30pXSxFZT1baih7YXR0cmlidXRlOiExfSldLHlyPVtqKHt0eXBlOkJvb2xlYW4sYXR0cmlidXRlOiJzaG93LWNvbHVtbi1maWx0ZXJzIn0pXSxpMT1baih7dHlwZTpCb29sZWFuLHJlZmxlY3Q6ITAsYXR0cmlidXRlOiJzdGlja3ktaGVhZGVyIn0pXSxOdD1baih7dHlwZTpTdHJpbmd9KV0sT3I9W2ooe3R5cGU6U3RyaW5nfSldLG4xPVtqKHthdHRyaWJ1dGU6ITF9KV0sS3IodGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJoZWFkaW5nMSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cGU9PiJoZWFkaW5nMSJpbiBwZSxnZXQ6cGU9PnBlLmhlYWRpbmcxLHNldDoocGUsR2UpPT57cGUuaGVhZGluZzE9R2V9fSxtZXRhZGF0YTpUZX0sbixzKSxLcih0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImhlYWRpbmcyIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpwZT0+ImhlYWRpbmcyImluIHBlLGdldDpwZT0+cGUuaGVhZGluZzIsc2V0OihwZSxHZSk9PntwZS5oZWFkaW5nMj1HZX19LG1ldGFkYXRhOlRlfSxkLGYpLEtyKHRoaXMsbnVsbCx1LHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZGF0YSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cGU9PiJkYXRhImluIHBlLGdldDpwZT0+cGUuZGF0YSxzZXQ6KHBlLEdlKT0+e3BlLmRhdGE9R2V9fSxtZXRhZGF0YTpUZX0scCxoKSxLcih0aGlzLG51bGwsYix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImtleSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cGU9PiJrZXkiaW4gcGUsZ2V0OnBlPT5wZS5rZXksc2V0OihwZSxHZSk9PntwZS5rZXk9R2V9fSxtZXRhZGF0YTpUZX0seCxnKSxLcih0aGlzLG51bGwsdix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImxhYmVsIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpwZT0+ImxhYmVsImluIHBlLGdldDpwZT0+cGUubGFiZWwsc2V0OihwZSxHZSk9PntwZS5sYWJlbD1HZX19LG1ldGFkYXRhOlRlfSx3LE0pLEtyKHRoaXMsbnVsbCxGLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZGlzYWJsZWQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnBlPT4iZGlzYWJsZWQiaW4gcGUsZ2V0OnBlPT5wZS5kaXNhYmxlZCxzZXQ6KHBlLEdlKT0+e3BlLmRpc2FibGVkPUdlfX0sbWV0YWRhdGE6VGV9LEMsayksS3IodGhpcyxudWxsLE4se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJyZXF1aXJlZCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cGU9PiJyZXF1aXJlZCJpbiBwZSxnZXQ6cGU9PnBlLnJlcXVpcmVkLHNldDoocGUsR2UpPT57cGUucmVxdWlyZWQ9R2V9fSxtZXRhZGF0YTpUZX0sJCxJKSxLcih0aGlzLG51bGwsQix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImRhdGFOYW1lIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpwZT0+ImRhdGFOYW1lImluIHBlLGdldDpwZT0+cGUuZGF0YU5hbWUsc2V0OihwZSxHZSk9PntwZS5kYXRhTmFtZT1HZX19LG1ldGFkYXRhOlRlfSx6LHkpLEtyKHRoaXMsbnVsbCxFLHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2VhcmNoYWJsZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cGU9PiJzZWFyY2hhYmxlImluIHBlLGdldDpwZT0+cGUuc2VhcmNoYWJsZSxzZXQ6KHBlLEdlKT0+e3BlLnNlYXJjaGFibGU9R2V9fSxtZXRhZGF0YTpUZX0sXyxQKSxLcih0aGlzLG51bGwsVix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImRhdGFBY3Rpb25zIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpwZT0+ImRhdGFBY3Rpb25zImluIHBlLGdldDpwZT0+cGUuZGF0YUFjdGlvbnMsc2V0OihwZSxHZSk9PntwZS5kYXRhQWN0aW9ucz1HZX19LG1ldGFkYXRhOlRlfSxILFcpLEtyKHRoaXMsbnVsbCxhZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImNvbHVtbnMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnBlPT4iY29sdW1ucyJpbiBwZSxnZXQ6cGU9PnBlLmNvbHVtbnMsc2V0OihwZSxHZSk9PntwZS5jb2x1bW5zPUdlfX0sbWV0YWRhdGE6VGV9LFQsSiksS3IodGhpcyxudWxsLGZlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToicm93S2V5IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpwZT0+InJvd0tleSJpbiBwZSxnZXQ6cGU9PnBlLnJvd0tleSxzZXQ6KHBlLEdlKT0+e3BlLnJvd0tleT1HZX19LG1ldGFkYXRhOlRlfSxMLFEpLEtyKHRoaXMsbnVsbCxrZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImF1Z21lbnRGcm9tRGlzcGxheUZ1bmN0aW9uIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpwZT0+ImF1Z21lbnRGcm9tRGlzcGxheUZ1bmN0aW9uImluIHBlLGdldDpwZT0+cGUuYXVnbWVudEZyb21EaXNwbGF5RnVuY3Rpb24sc2V0OihwZSxHZSk9PntwZS5hdWdtZW50RnJvbURpc3BsYXlGdW5jdGlvbj1HZX19LG1ldGFkYXRhOlRlfSxHLEEpLEtyKHRoaXMsbnVsbCxELHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZGlzcGxheUZ1bmN0aW9uIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpwZT0+ImRpc3BsYXlGdW5jdGlvbiJpbiBwZSxnZXQ6cGU9PnBlLmRpc3BsYXlGdW5jdGlvbixzZXQ6KHBlLEdlKT0+e3BlLmRpc3BsYXlGdW5jdGlvbj1HZX19LG1ldGFkYXRhOlRlfSxSLE8pLEtyKHRoaXMsbnVsbCxZLHtraW5kOiJhY2Nlc3NvciIsbmFtZToicmV2ZXJzZURpc3BsYXlGdW5jdGlvbiIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cGU9PiJyZXZlcnNlRGlzcGxheUZ1bmN0aW9uImluIHBlLGdldDpwZT0+cGUucmV2ZXJzZURpc3BsYXlGdW5jdGlvbixzZXQ6KHBlLEdlKT0+e3BlLnJldmVyc2VEaXNwbGF5RnVuY3Rpb249R2V9fSxtZXRhZGF0YTpUZX0sdWUseWUpLEtyKHRoaXMsbnVsbCwkZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNlbGVjdGVkRGF0YVJvdyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cGU9PiJzZWxlY3RlZERhdGFSb3ciaW4gcGUsZ2V0OnBlPT5wZS5zZWxlY3RlZERhdGFSb3csc2V0OihwZSxHZSk9PntwZS5zZWxlY3RlZERhdGFSb3c9R2V9fSxtZXRhZGF0YTpUZX0sVSxxKSxLcih0aGlzLG51bGwsaWUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJlZGl0YWJsZUZpZWxkcyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cGU9PiJlZGl0YWJsZUZpZWxkcyJpbiBwZSxnZXQ6cGU9PnBlLmVkaXRhYmxlRmllbGRzLHNldDoocGUsR2UpPT57cGUuZWRpdGFibGVGaWVsZHM9R2V9fSxtZXRhZGF0YTpUZX0sd2UsZ2UpLEtyKHRoaXMsbnVsbCxBZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNob3dWZXJ0aWNhbExpbmVzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpwZT0+InNob3dWZXJ0aWNhbExpbmVzImluIHBlLGdldDpwZT0+cGUuc2hvd1ZlcnRpY2FsTGluZXMsc2V0OihwZSxHZSk9PntwZS5zaG93VmVydGljYWxMaW5lcz1HZX19LG1ldGFkYXRhOlRlfSx4ZSxuZSksS3IodGhpcyxudWxsLExlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2hvd0hvcml6b250YWxMaW5lcyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cGU9PiJzaG93SG9yaXpvbnRhbExpbmVzImluIHBlLGdldDpwZT0+cGUuc2hvd0hvcml6b250YWxMaW5lcyxzZXQ6KHBlLEdlKT0+e3BlLnNob3dIb3Jpem9udGFsTGluZXM9R2V9fSxtZXRhZGF0YTpUZX0sT2UsSmUpLEtyKHRoaXMsbnVsbCx0ZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNob3dHcmlkIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpwZT0+InNob3dHcmlkImluIHBlLGdldDpwZT0+cGUuc2hvd0dyaWQsc2V0OihwZSxHZSk9PntwZS5zaG93R3JpZD1HZX19LG1ldGFkYXRhOlRlfSxaLGVlKSxLcih0aGlzLG51bGwsYmUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzb3J0S2V5IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpwZT0+InNvcnRLZXkiaW4gcGUsZ2V0OnBlPT5wZS5zb3J0S2V5LHNldDoocGUsR2UpPT57cGUuc29ydEtleT1HZX19LG1ldGFkYXRhOlRlfSxOZSxLZSksS3IodGhpcyxudWxsLHl0LHtraW5kOiJhY2Nlc3NvciIsbmFtZToic29ydERpciIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cGU9PiJzb3J0RGlyImluIHBlLGdldDpwZT0+cGUuc29ydERpcixzZXQ6KHBlLEdlKT0+e3BlLnNvcnREaXI9R2V9fSxtZXRhZGF0YTpUZX0sbnQsTHQpLEtyKHRoaXMsbnVsbCxPdCx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImZpbHRlclRleHQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnBlPT4iZmlsdGVyVGV4dCJpbiBwZSxnZXQ6cGU9PnBlLmZpbHRlclRleHQsc2V0OihwZSxHZSk9PntwZS5maWx0ZXJUZXh0PUdlfX0sbWV0YWRhdGE6VGV9LHNlLGRlKSxLcih0aGlzLG51bGwsRWUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJjb2x1bW5GaWx0ZXJzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpwZT0+ImNvbHVtbkZpbHRlcnMiaW4gcGUsZ2V0OnBlPT5wZS5jb2x1bW5GaWx0ZXJzLHNldDoocGUsR2UpPT57cGUuY29sdW1uRmlsdGVycz1HZX19LG1ldGFkYXRhOlRlfSxndCxrdCksS3IodGhpcyxudWxsLHlyLHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2hvd0NvbHVtbkZpbHRlcnMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnBlPT4ic2hvd0NvbHVtbkZpbHRlcnMiaW4gcGUsZ2V0OnBlPT5wZS5zaG93Q29sdW1uRmlsdGVycyxzZXQ6KHBlLEdlKT0+e3BlLnNob3dDb2x1bW5GaWx0ZXJzPUdlfX0sbWV0YWRhdGE6VGV9LGxpLGExKSxLcih0aGlzLG51bGwsaTEse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzdGlja3lIZWFkZXIiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnBlPT4ic3RpY2t5SGVhZGVyImluIHBlLGdldDpwZT0+cGUuc3RpY2t5SGVhZGVyLHNldDoocGUsR2UpPT57cGUuc3RpY2t5SGVhZGVyPUdlfX0sbWV0YWRhdGE6VGV9LF9lLEZlKSxLcih0aGlzLG51bGwsTnQse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzZWFyY2hNb2RlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpwZT0+InNlYXJjaE1vZGUiaW4gcGUsZ2V0OnBlPT5wZS5zZWFyY2hNb2RlLHNldDoocGUsR2UpPT57cGUuc2VhcmNoTW9kZT1HZX19LG1ldGFkYXRhOlRlfSxtcixDciksS3IodGhpcyxudWxsLE9yLHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2VsZWN0aW9uTW9kZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cGU9PiJzZWxlY3Rpb25Nb2RlImluIHBlLGdldDpwZT0+cGUuc2VsZWN0aW9uTW9kZSxzZXQ6KHBlLEdlKT0+e3BlLnNlbGVjdGlvbk1vZGU9R2V9fSxtZXRhZGF0YTpUZX0sX3IsbzEpLEtyKHRoaXMsbnVsbCxuMSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNlbGVjdGVkSWRzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpwZT0+InNlbGVjdGVkSWRzImluIHBlLGdldDpwZT0+cGUuc2VsZWN0ZWRJZHMsc2V0OihwZSxHZSk9PntwZS5zZWxlY3RlZElkcz1HZX19LG1ldGFkYXRhOlRlfSxDZSx2ZSksS3IobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6VGV9LG51bGwsciksSGU9YT10LnZhbHVlLFRlJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOlRlfSl9c3RhdGljIGRlbW89clByO3N0YXRpYyBkZW1vR3JvdXBzPVsiRGF0YSBWaWV3Il07I2U9bXQodGhpcyxuLCJoZWFkaW5nIDEiKTtnZXQgaGVhZGluZzEoKXtyZXR1cm4gdGhpcy4jZX1zZXQgaGVhZGluZzEoVGUpe3RoaXMuI2U9VGV9I3Q9KG10KHRoaXMscyksbXQodGhpcyxkLCJoZWFkaW5nIDIiKSk7Z2V0IGhlYWRpbmcyKCl7cmV0dXJuIHRoaXMuI3R9c2V0IGhlYWRpbmcyKFRlKXt0aGlzLiN0PVRlfSNyPShtdCh0aGlzLGYpLG10KHRoaXMscCxbXSkpO2dldCBkYXRhKCl7cmV0dXJuIHRoaXMuI3J9c2V0IGRhdGEoVGUpe3RoaXMuI3I9VGV9I2E9KG10KHRoaXMsaCksbXQodGhpcyx4LHZvaWQgMCkpO2dldCBrZXkoKXtyZXR1cm4gdGhpcy4jYX1zZXQga2V5KFRlKXt0aGlzLiNhPVRlfSNpPShtdCh0aGlzLGcpLG10KHRoaXMsdyx2b2lkIDApKTtnZXQgbGFiZWwoKXtyZXR1cm4gdGhpcy4jaX1zZXQgbGFiZWwoVGUpe3RoaXMuI2k9VGV9I289KG10KHRoaXMsTSksbXQodGhpcyxDLCExKSk7Z2V0IGRpc2FibGVkKCl7cmV0dXJuIHRoaXMuI299c2V0IGRpc2FibGVkKFRlKXt0aGlzLiNvPVRlfSNuPShtdCh0aGlzLGspLG10KHRoaXMsJCwhMSkpO2dldCByZXF1aXJlZCgpe3JldHVybiB0aGlzLiNufXNldCByZXF1aXJlZChUZSl7dGhpcy4jbj1UZX1nZXQgdmFsdWUoKXtyZXR1cm4gdGhpcy5kYXRhfXNldCB2YWx1ZShUZSl7fWNoYW5nZVN1YmplY3Q9KG10KHRoaXMsSSksbmV3IEp0LnNtYXJ0cngucnhqcy5TdWJqZWN0KTsjcz1tdCh0aGlzLHosdm9pZCAwKTtnZXQgZGF0YU5hbWUoKXtyZXR1cm4gdGhpcy4jc31zZXQgZGF0YU5hbWUoVGUpe3RoaXMuI3M9VGV9I2w9KG10KHRoaXMseSksbXQodGhpcyxfLCEwKSk7Z2V0IHNlYXJjaGFibGUoKXtyZXR1cm4gdGhpcy4jbH1zZXQgc2VhcmNoYWJsZShUZSl7dGhpcy4jbD1UZX0jYz0obXQodGhpcyxQKSxtdCh0aGlzLEgsW10pKTtnZXQgZGF0YUFjdGlvbnMoKXtyZXR1cm4gdGhpcy4jY31zZXQgZGF0YUFjdGlvbnMoVGUpe3RoaXMuI2M9VGV9I2Q9KG10KHRoaXMsVyksbXQodGhpcyxULFtdKSk7Z2V0IGNvbHVtbnMoKXtyZXR1cm4gdGhpcy4jZH1zZXQgY29sdW1ucyhUZSl7dGhpcy4jZD1UZX0jdT0obXQodGhpcyxKKSxtdCh0aGlzLEwsdm9pZCAwKSk7Z2V0IHJvd0tleSgpe3JldHVybiB0aGlzLiN1fXNldCByb3dLZXkoVGUpe3RoaXMuI3U9VGV9I2Y9KG10KHRoaXMsUSksbXQodGhpcyxHLCExKSk7Z2V0IGF1Z21lbnRGcm9tRGlzcGxheUZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuI2Z9c2V0IGF1Z21lbnRGcm9tRGlzcGxheUZ1bmN0aW9uKFRlKXt0aGlzLiNmPVRlfSNwPShtdCh0aGlzLEEpLG10KHRoaXMsUixUZT0+VGUpKTtnZXQgZGlzcGxheUZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuI3B9c2V0IGRpc3BsYXlGdW5jdGlvbihUZSl7dGhpcy4jcD1UZX0jaD0obXQodGhpcyxPKSxtdCh0aGlzLHVlLFRlPT5UZSkpO2dldCByZXZlcnNlRGlzcGxheUZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuI2h9c2V0IHJldmVyc2VEaXNwbGF5RnVuY3Rpb24oVGUpe3RoaXMuI2g9VGV9I209KG10KHRoaXMseWUpLG10KHRoaXMsVSx2b2lkIDApKTtnZXQgc2VsZWN0ZWREYXRhUm93KCl7cmV0dXJuIHRoaXMuI219c2V0IHNlbGVjdGVkRGF0YVJvdyhUZSl7dGhpcy4jbT1UZX0jZz0obXQodGhpcyxxKSxtdCh0aGlzLHdlLFtdKSk7Z2V0IGVkaXRhYmxlRmllbGRzKCl7cmV0dXJuIHRoaXMuI2d9c2V0IGVkaXRhYmxlRmllbGRzKFRlKXt0aGlzLiNnPVRlfSN4PShtdCh0aGlzLGdlKSxtdCh0aGlzLHhlLCExKSk7Z2V0IHNob3dWZXJ0aWNhbExpbmVzKCl7cmV0dXJuIHRoaXMuI3h9c2V0IHNob3dWZXJ0aWNhbExpbmVzKFRlKXt0aGlzLiN4PVRlfSNiPShtdCh0aGlzLG5lKSxtdCh0aGlzLE9lLCExKSk7Z2V0IHNob3dIb3Jpem9udGFsTGluZXMoKXtyZXR1cm4gdGhpcy4jYn1zZXQgc2hvd0hvcml6b250YWxMaW5lcyhUZSl7dGhpcy4jYj1UZX0jdj0obXQodGhpcyxKZSksbXQodGhpcyxaLCEwKSk7Z2V0IHNob3dHcmlkKCl7cmV0dXJuIHRoaXMuI3Z9c2V0IHNob3dHcmlkKFRlKXt0aGlzLiN2PVRlfWZpbGVzPShtdCh0aGlzLGVlKSxbXSk7ZmlsZVdlYWtNYXA9bmV3IFdlYWtNYXA7ZGF0YUNoYW5nZVN1YmplY3Q9bmV3IEp0LnNtYXJ0cngucnhqcy5TdWJqZWN0OyN5PW10KHRoaXMsTmUsdm9pZCAwKTtnZXQgc29ydEtleSgpe3JldHVybiB0aGlzLiN5fXNldCBzb3J0S2V5KFRlKXt0aGlzLiN5PVRlfSN3PShtdCh0aGlzLEtlKSxtdCh0aGlzLG50LG51bGwpKTtnZXQgc29ydERpcigpe3JldHVybiB0aGlzLiN3fXNldCBzb3J0RGlyKFRlKXt0aGlzLiN3PVRlfSNNPShtdCh0aGlzLEx0KSxtdCh0aGlzLHNlLCIiKSk7Z2V0IGZpbHRlclRleHQoKXtyZXR1cm4gdGhpcy4jTX1zZXQgZmlsdGVyVGV4dChUZSl7dGhpcy4jTT1UZX0jaz0obXQodGhpcyxkZSksbXQodGhpcyxndCx7fSkpO2dldCBjb2x1bW5GaWx0ZXJzKCl7cmV0dXJuIHRoaXMuI2t9c2V0IGNvbHVtbkZpbHRlcnMoVGUpe3RoaXMuI2s9VGV9I1M9KG10KHRoaXMsa3QpLG10KHRoaXMsbGksITEpKTtnZXQgc2hvd0NvbHVtbkZpbHRlcnMoKXtyZXR1cm4gdGhpcy4jU31zZXQgc2hvd0NvbHVtbkZpbHRlcnMoVGUpe3RoaXMuI1M9VGV9I3o9KG10KHRoaXMsYTEpLG10KHRoaXMsX2UsITEpKTtnZXQgc3RpY2t5SGVhZGVyKCl7cmV0dXJuIHRoaXMuI3p9c2V0IHN0aWNreUhlYWRlcihUZSl7dGhpcy4jej1UZX0jQz0obXQodGhpcyxGZSksbXQodGhpcyxtciwidGFibGUiKSk7Z2V0IHNlYXJjaE1vZGUoKXtyZXR1cm4gdGhpcy4jQ31zZXQgc2VhcmNoTW9kZShUZSl7dGhpcy4jQz1UZX1fX3NlYXJjaFRleHRTdWI9bXQodGhpcyxDcik7X19zZWFyY2hNb2RlU3ViOyNfPW10KHRoaXMsX3IsIm5vbmUiKTtnZXQgc2VsZWN0aW9uTW9kZSgpe3JldHVybiB0aGlzLiNffXNldCBzZWxlY3Rpb25Nb2RlKFRlKXt0aGlzLiNfPVRlfSNUPShtdCh0aGlzLG8xKSxtdCh0aGlzLENlLG5ldyBTZXQpKTtnZXQgc2VsZWN0ZWRJZHMoKXtyZXR1cm4gdGhpcy4jVH1zZXQgc2VsZWN0ZWRJZHMoVGUpe3RoaXMuI1Q9VGV9X3Jvd0lkTWFwPShtdCh0aGlzLHZlKSxuZXcgV2Vha01hcCk7X3Jvd0lkQ291bnRlcj0wO2NvbnN0cnVjdG9yKCl7c3VwZXIoKX1zdGF0aWMgc3R5bGVzPWlQcjtyZW5kZXIoKXtsZXQgcGU9QXJyYXkuaXNBcnJheSh0aGlzLmNvbHVtbnMpJiZ0aGlzLmNvbHVtbnMubGVuZ3RoPjA/blByKHRoaXMuY29sdW1ucyx0aGlzLmF1Z21lbnRGcm9tRGlzcGxheUZ1bmN0aW9uLHRoaXMuZGlzcGxheUZ1bmN0aW9uLHRoaXMuZGF0YSk6emN0KHRoaXMuZGlzcGxheUZ1bmN0aW9uLHRoaXMuZGF0YSksR2U9Y1ByKHRoaXMuZmlsdGVyVGV4dCx0aGlzLnNlYXJjaE1vZGU9PT0iZGF0YSI/ImRhdGEiOiJ0YWJsZSIscGUpLGNlPXNQcih0aGlzLmRhdGEscGUsdGhpcy5zb3J0S2V5LHRoaXMuc29ydERpcix0aGlzLmZpbHRlclRleHQsdGhpcy5jb2x1bW5GaWx0ZXJzLHRoaXMuc2VhcmNoTW9kZT09PSJkYXRhIj8iZGF0YSI6InRhYmxlIixHZXx8dm9pZCAwKTtyZXR1cm4gdGhpcy5fbGFzdFZpZXdEYXRhPWNlLFNgCiAgICAgIDxkaXYgY2xhc3M9Im1haW5ib3giPgogICAgICAgIDwhLS0gdGhlIGhlYWRpbmcgcGFydCAtLT4KICAgICAgICA8ZGl2IGNsYXNzPSJoZWFkZXIiPgogICAgICAgICAgPGRpdiBjbGFzcz0iaGVhZGluZ0NvbnRhaW5lciI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImhlYWRpbmcgaGVhZGluZzEiPiR7dGhpcy5sYWJlbHx8dGhpcy5oZWFkaW5nMX08L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iaGVhZGluZyBoZWFkaW5nMiI+JHt0aGlzLmhlYWRpbmcyfTwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJoZWFkZXJBY3Rpb25zIj4KICAgICAgICAgICAgJHtIbi5yZXNvbHZlRXhlYyhhc3luYygpPT57bGV0IEs9W107Zm9yKGxldCBNZSBvZiB0aGlzLmRhdGFBY3Rpb25zKU1lLnR5cGU/LmluY2x1ZGVzKCJoZWFkZXIiKSYmSy5wdXNoKFNgPGRpdgogICAgICAgICAgICAgICAgICAgIGNsYXNzPSJoZWFkZXJBY3Rpb24iCiAgICAgICAgICAgICAgICAgICAgQGNsaWNrPSR7KCk9PntNZS5hY3Rpb25GdW5jKHtpdGVtOnRoaXMuc2VsZWN0ZWREYXRhUm93LHRhYmxlOnRoaXN9KX19CiAgICAgICAgICAgICAgICAgID4KICAgICAgICAgICAgICAgICAgICAke01lLmljb25OYW1lP1NgPGRlZXMtaWNvbiAuaWNvblNpemU9JHsxNH0gLmljb249JHtNZS5pY29uTmFtZX0+PC9kZWVzLWljb24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgJHtNZS5uYW1lfWA6TWUubmFtZX0KICAgICAgICAgICAgICAgICAgPC9kaXY+YCk7cmV0dXJuIEt9KX0KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImhlYWRpbmdTZXBhcmF0aW9uIj48L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2hHcmlkIGhpZGRlbiI+CiAgICAgICAgICA8ZGVlcy1pbnB1dC10ZXh0CiAgICAgICAgICAgIC5sYWJlbD0keyJsdWNlbmUgc3ludGF4IHNlYXJjaCJ9CiAgICAgICAgICAgIC5kZXNjcmlwdGlvbj0ke2AKICAgICAgICAgICAgICBZb3UgY2FuIHVzZSB0aGUgbHVjZW5lIHN5bnRheCB0byBzZWFyY2ggZm9yIGRhdGEsIGUuZy46CiAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgXGBcYFxgCiAgICAgICAgICAgICAgbmFtZTogImpvaG4iIEFORCBhZ2U6IDE4CiAgICAgICAgICAgICAgXGBcYFxgCiAgICAgICAgICAgICAgCiAgICAgICAgICAgIGB9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LXRleHQ+CiAgICAgICAgICA8ZGVlcy1pbnB1dC1tdWx0aXRvZ2dsZQogICAgICAgICAgICAubGFiZWw9JHsic2VhcmNoIG1vZGUifQogICAgICAgICAgICAub3B0aW9ucz0ke1sidGFibGUiLCJkYXRhIiwic2VydmVyIl19CiAgICAgICAgICAgIC5zZWxlY3RlZE9wdGlvbj0keyJ0YWJsZSJ9CiAgICAgICAgICAgIC5kZXNjcmlwdGlvbj0ke2AKICAgICAgICAgICAgICBUaGVyZSBhcmUgdGhyZWUgYmFzaWMgbW9kZXM6CiAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgKiB0YWJsZTogb25seSBzZWFyY2hlcyBkYXRhIGFscmVhZHkgaW4gdGhlIHRhYmxlCiAgICAgICAgICAgICAgKiBkYXRhOiBzZWFyY2hlcyBvcmlnaW5hbCBkYXRhLCBpZ25vcmluZyB0YWJsZSB0cmFuc2Zvcm1zCiAgICAgICAgICAgICAgKiBzZXJ2ZXI6IHNlYXJjaGVzIGRhdGEgb24gdGhlIHNlcnZlcgogICAgICAgICAgICAgIAogICAgICAgICAgICBgfQogICAgICAgICAgPjwvZGVlcy1pbnB1dC1tdWx0aXRvZ2dsZT4KICAgICAgICA8L2Rpdj4KCiAgICAgICAgPCEtLSB0aGUgYWN0dWFsIHRhYmxlIC0tPgogICAgICAgIDxzdHlsZT48L3N0eWxlPgogICAgICAgICR7dGhpcy5kYXRhLmxlbmd0aD4wP1NgCiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGFibGVTY3JvbGwiPgogICAgICAgICAgICAgIDx0YWJsZT4KICAgICAgICAgICAgICAgIDx0aGVhZD4KICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICR7dGhpcy5zZWxlY3Rpb25Nb2RlIT09Im5vbmUiP1NgCiAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIHN0eWxlPSJ3aWR0aDo0MnB4OyB0ZXh0LWFsaWduOmNlbnRlcjsiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgJHt0aGlzLnNlbGVjdGlvbk1vZGU9PT0ibXVsdGkiP1NgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVlcy1pbnB1dC1jaGVja2JveAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudmFsdWU9JHt0aGlzLmFyZUFsbFZpc2libGVTZWxlY3RlZCgpfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuaW5kZXRlcm1pbmF0ZT0ke3RoaXMuaXNWaXNpYmxlU2VsZWN0aW9uSW5kZXRlcm1pbmF0ZSgpfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAbmV3VmFsdWU9JHtLPT57Sy5zdG9wUHJvcGFnYXRpb24oKSx0aGlzLnNldFNlbGVjdFZpc2libGUoSy5kZXRhaWw9PT0hMCl9fQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvZGVlcy1pbnB1dC1jaGVja2JveD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgOlNgYH0KICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPgogICAgICAgICAgICAgICAgICAgICAgICBgOlNgYH0KICAgICAgICAgICAgICAgICAgICAke3BlLmZpbHRlcihLPT4hSy5oaWRkZW4pLm1hcChLPT57bGV0IE1lPSEhSy5zb3J0YWJsZSxXZT10aGlzLmdldEFyaWFTb3J0KEspO3JldHVybiBTYAogICAgICAgICAgICAgICAgICAgICAgICAgIDx0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgcm9sZT0iY29sdW1uaGVhZGVyIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1zb3J0PSR7V2V9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT0iJHtNZT8iY3Vyc29yOiBwb2ludGVyOyI6IiJ9IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgQGNsaWNrPSR7KCk9Pk1lP3RoaXMudG9nZ2xlU29ydChLKTpudWxsfQogICAgICAgICAgICAgICAgICAgICAgICAgID4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICR7Sy5oZWFkZXI/P0sua2V5fQogICAgICAgICAgICAgICAgICAgICAgICAgICAgJHt0aGlzLnJlbmRlclNvcnRJbmRpY2F0b3IoSyl9CiAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5gfSl9CiAgICAgICAgICAgICAgICAgICAgJHsoKCk9PntpZih0aGlzLmRhdGFBY3Rpb25zJiZ0aGlzLmRhdGFBY3Rpb25zLmxlbmd0aD4wKXJldHVybiBTYCA8dGggY2xhc3M9ImFjdGlvbnNDb2wiPkFjdGlvbnM8L3RoPiBgfSkoKX0KICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgJHt0aGlzLnNob3dDb2x1bW5GaWx0ZXJzP1NgPHRyIGNsYXNzPSJmaWx0ZXJzUm93Ij4KICAgICAgICAgICAgICAgICAgICAgICAgJHt0aGlzLnNlbGVjdGlvbk1vZGUhPT0ibm9uZSI/U2A8dGggc3R5bGU9IndpZHRoOjQycHg7Ij48L3RoPmA6U2BgfQogICAgICAgICAgICAgICAgICAgICAgICAke3BlLmZpbHRlcihLPT4hSy5oaWRkZW4pLm1hcChLPT57bGV0IE1lPVN0cmluZyhLLmtleSk7cmV0dXJuIEsuZmlsdGVyYWJsZT09PSExP1NgPHRoPjwvdGg+YDpTYDx0aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIHBsYWNlaG9sZGVyPSJGaWx0ZXIuLi4iIC52YWx1ZT0ke3RoaXMuY29sdW1uRmlsdGVyc1tNZV18fCIifQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbnB1dD0ke1dlPT50aGlzLnNldENvbHVtbkZpbHRlcihNZSxXZS50YXJnZXQudmFsdWUpfSAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5gfSl9CiAgICAgICAgICAgICAgICAgICAgICAgICR7KCgpPT57aWYodGhpcy5kYXRhQWN0aW9ucyYmdGhpcy5kYXRhQWN0aW9ucy5sZW5ndGg+MClyZXR1cm4gU2AgPHRoPjwvdGg+IGB9KSgpfQogICAgICAgICAgICAgICAgICAgICAgPC90cj5gOlNgYH0KICAgICAgICAgICAgICAgIDwvdGhlYWQ+CiAgICAgICAgICAgICAgICA8dGJvZHk+CiAgICAgICAgICAgICAgICAgICR7Y2UubWFwKChLLE1lKT0+e2xldCBXZT1VZT0+VWUudGFnTmFtZT09PSJUUiI/VWU6V2UoVWUucGFyZW50RWxlbWVudCk7cmV0dXJuIFNgCiAgICAgICAgICAgICAgICAgICAgICA8dHIKICAgICAgICAgICAgICAgICAgICAgICAgQGNsaWNrPSR7KCk9PntpZih0aGlzLnNlbGVjdGVkRGF0YVJvdz1LLHRoaXMuc2VsZWN0aW9uTW9kZT09PSJzaW5nbGUiKXtsZXQgVWU9dGhpcy5nZXRSb3dJZChLKTt0aGlzLnNlbGVjdGVkSWRzLmNsZWFyKCksdGhpcy5zZWxlY3RlZElkcy5hZGQoVWUpLHRoaXMuZW1pdFNlbGVjdGlvbkNoYW5nZSgpLHRoaXMucmVxdWVzdFVwZGF0ZSgpfX19CiAgICAgICAgICAgICAgICAgICAgICAgIEBkcmFnZW50ZXI9JHthc3luYyBVZT0+e1VlLnByZXZlbnREZWZhdWx0KCksVWUuc3RvcFByb3BhZ2F0aW9uKCk7bGV0IHdyPVdlKFVlLnRhcmdldCk7c2V0VGltZW91dCgoKT0+e3dyLmNsYXNzTGlzdC5hZGQoImhhc0F0dGFjaG1lbnQiKX0sMCl9fQogICAgICAgICAgICAgICAgICAgICAgICBAZHJhZ2xlYXZlPSR7YXN5bmMgVWU9PntVZS5wcmV2ZW50RGVmYXVsdCgpLFVlLnN0b3BQcm9wYWdhdGlvbigpLFdlKFVlLnRhcmdldCkuY2xhc3NMaXN0LnJlbW92ZSgiaGFzQXR0YWNobWVudCIpfX0KICAgICAgICAgICAgICAgICAgICAgICAgQGRyYWdvdmVyPSR7YXN5bmMgVWU9PntVZS5wcmV2ZW50RGVmYXVsdCgpfX0KICAgICAgICAgICAgICAgICAgICAgICAgQGRyb3A9JHthc3luYyBVZT0+e1VlLnByZXZlbnREZWZhdWx0KCk7bGV0IHdyPVtdO2ZvcihsZXQgWGEgb2YgQXJyYXkuZnJvbShVZS5kYXRhVHJhbnNmZXIuZmlsZXMpKXRoaXMuZmlsZXMucHVzaChYYSksd3IucHVzaChYYSksdGhpcy5yZXF1ZXN0VXBkYXRlKCk7bGV0IFJyPXRoaXMuZmlsZVdlYWtNYXAuZ2V0KEspO1JyP1JyLnB1c2goLi4ud3IpOnRoaXMuZmlsZVdlYWtNYXAuc2V0KEssd3IpfX0KICAgICAgICAgICAgICAgICAgICAgICAgQGNvbnRleHRtZW51PSR7YXN5bmMgVWU9Pnt0ci5vcGVuQ29udGV4dE1lbnVXaXRoT3B0aW9ucyhVZSx0aGlzLmdldEFjdGlvbnNGb3JUeXBlKCJjb250ZXh0bWVudSIpLm1hcCh3cj0+KHtuYW1lOndyLm5hbWUsaWNvbk5hbWU6d3IuaWNvbk5hbWUsYWN0aW9uOmFzeW5jKCk9Pihhd2FpdCB3ci5hY3Rpb25GdW5jKHtpdGVtOkssdGFibGU6dGhpc30pLG51bGwpfSkpKX19CiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSIke0s9PT10aGlzLnNlbGVjdGVkRGF0YVJvdz8ic2VsZWN0ZWQiOiIifSIKICAgICAgICAgICAgICAgICAgICAgID4KICAgICAgICAgICAgICAgICAgICAgICAgJHt0aGlzLnNlbGVjdGlvbk1vZGUhPT0ibm9uZSI/U2A8dGQgc3R5bGU9IndpZHRoOjQycHg7IHRleHQtYWxpZ246Y2VudGVyOyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZWVzLWlucHV0LWNoZWNrYm94CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnZhbHVlPSR7dGhpcy5pc1Jvd1NlbGVjdGVkKEspfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBuZXdWYWx1ZT0ke1VlPT57VWUuc3RvcFByb3BhZ2F0aW9uKCksdGhpcy5zZXRSb3dTZWxlY3RlZChLLFVlLmRldGFpbD09PSEwKX19CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2RlZXMtaW5wdXQtY2hlY2tib3g+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPmA6U2BgfQogICAgICAgICAgICAgICAgICAgICAgICAke3BlLmZpbHRlcihVZT0+IVVlLmhpZGRlbikubWFwKChVZSx3cik9PntsZXQgUnI9WjkoSyxVZSx0aGlzLmRpc3BsYXlGdW5jdGlvbiksWGE9VWUucmVuZGVyZXI/VWUucmVuZGVyZXIoUnIsSyx7cm93SW5kZXg6TWUsY29sSW5kZXg6d3IsY29sdW1uOlVlfSk6UnIsS249U3RyaW5nKFVlLmtleSk7cmV0dXJuIFNgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBkYmxjbGljaz0ke3lsPT57bGV0IHdsPXRoaXMuZGF0YUFjdGlvbnMuZmluZChYcz0+WHMudHlwZT8uaW5jbHVkZXMoImRvdWJsZUNsaWNrIikpO3RoaXMuZWRpdGFibGVGaWVsZHMuaW5jbHVkZXMoS24pP3RoaXMuaGFuZGxlQ2VsbEVkaXRpbmcoeWwsSyxLbik6d2wmJndsLmFjdGlvbkZ1bmMoe2l0ZW06Syx0YWJsZTp0aGlzfSl9fQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW5uZXJDZWxsQ29udGFpbmVyIj4ke1hhfTwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgYH0pfQogICAgICAgICAgICAgICAgICAgICAgICAkeygoKT0+e2lmKHRoaXMuZGF0YUFjdGlvbnMmJnRoaXMuZGF0YUFjdGlvbnMubGVuZ3RoPjApcmV0dXJuIFNgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz0iYWN0aW9uc0NvbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWN0aW9uc0NvbnRhaW5lciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAke3RoaXMuZ2V0QWN0aW9uc0ZvclR5cGUoImluUm93IikubWFwKFVlPT5TYAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJhY3Rpb24iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAY2xpY2s9JHsoKT0+VWUuYWN0aW9uRnVuYyh7aXRlbTpLLHRhYmxlOnRoaXN9KX0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAke1VlLmljb25OYW1lP1NgIDxkZWVzLWljb24gLmljb249JHtVZS5pY29uTmFtZX0+PC9kZWVzLWljb24+IGA6VWUubmFtZX0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYCl9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBgfSkoKX0KICAgICAgICAgICAgICAgICAgICAgIDwvdHI+YH0pfQogICAgICAgICAgICAgICAgPC90Ym9keT4KICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICBgOlNgIDxkaXYgY2xhc3M9Im5vRGF0YVNldCI+Tm8gZGF0YSBzZXQhPC9kaXY+IGB9CiAgICAgICAgPGRpdiBjbGFzcz0iZm9vdGVyIj4KICAgICAgICAgIDxkaXYgY2xhc3M9InRhYmxlU3RhdGlzdGljcyI+CiAgICAgICAgICAgICR7dGhpcy5kYXRhLmxlbmd0aH0gJHt0aGlzLmRhdGFOYW1lfHwiZGF0YSByb3dzIn0gKHRvdGFsKSB8CiAgICAgICAgICAgICR7dGhpcy5zZWxlY3RlZERhdGFSb3c/YCMgJHt0aGlzLmRhdGEuaW5kZXhPZih0aGlzLnNlbGVjdGVkRGF0YVJvdykrMX1gOiJObyJ9CiAgICAgICAgICAgIHNlbGVjdGVkCiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImZvb3RlckFjdGlvbnMiPgogICAgICAgICAgICAke0huLnJlc29sdmVFeGVjKGFzeW5jKCk9PntsZXQgSz1bXTtmb3IobGV0IE1lIG9mIHRoaXMuZGF0YUFjdGlvbnMpTWUudHlwZT8uaW5jbHVkZXMoImZvb3RlciIpJiZLLnB1c2goU2A8ZGl2CiAgICAgICAgICAgICAgICAgICAgY2xhc3M9ImZvb3RlckFjdGlvbiIKICAgICAgICAgICAgICAgICAgICBAY2xpY2s9JHsoKT0+e01lLmFjdGlvbkZ1bmMoe2l0ZW06dGhpcy5zZWxlY3RlZERhdGFSb3csdGFibGU6dGhpc30pfX0KICAgICAgICAgICAgICAgICAgPgogICAgICAgICAgICAgICAgICAgICR7TWUuaWNvbk5hbWU/U2A8ZGVlcy1pY29uIC5pY29uU2l6ZT0kezE0fSAuaWNvbj0ke01lLmljb25OYW1lfT48L2RlZXMtaWNvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAke01lLm5hbWV9YDpNZS5uYW1lfQogICAgICAgICAgICAgICAgICA8L2Rpdj5gKTtyZXR1cm4gS30pfQogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgYH1hc3luYyBmaXJzdFVwZGF0ZWQoKXt9YXN5bmMgdXBkYXRlZChUZSl7c3VwZXIudXBkYXRlZChUZSksdGhpcy5kZXRlcm1pbmVDb2x1bW5XaWR0aHMoKSx0aGlzLnNlYXJjaGFibGUmJih0aGlzLmRhdGFBY3Rpb25zLmZpbmQoR2U9PkdlLnR5cGU/LmluY2x1ZGVzKCJoZWFkZXIiKSYmR2UubmFtZT09PSJTZWFyY2giKXx8KHRoaXMuZGF0YUFjdGlvbnMudW5zaGlmdCh7bmFtZToiU2VhcmNoIixpY29uTmFtZToibHVjaWRlOlNlYXJjaCIsdHlwZTpbImhlYWRlciJdLGFjdGlvbkZ1bmM6YXN5bmMoKT0+e2NvbnNvbGUubG9nKCJvcGVuIHNlYXJjaCIpLHRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCIuc2VhcmNoR3JpZCIpLmNsYXNzTGlzdC50b2dnbGUoImhpZGRlbiIpfX0pLGNvbnNvbGUubG9nKHRoaXMuZGF0YUFjdGlvbnMpLHRoaXMucmVxdWVzdFVwZGF0ZSgpKSx0aGlzLndpcmVTZWFyY2hJbnB1dHMoKSl9X19kZWJvdW5jZVRpbWVyO2RlYm91bmNlUnVuKFRlLHBlPTIwMCl7dGhpcy5fX2RlYm91bmNlVGltZXImJmNsZWFyVGltZW91dCh0aGlzLl9fZGVib3VuY2VUaW1lciksdGhpcy5fX2RlYm91bmNlVGltZXI9c2V0VGltZW91dChUZSxwZSl9d2lyZVNlYXJjaElucHV0cygpe2xldCBUZT10aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoIi5zZWFyY2hHcmlkIGRlZXMtaW5wdXQtdGV4dCIpLHBlPXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiLnNlYXJjaEdyaWQgZGVlcy1pbnB1dC1tdWx0aXRvZ2dsZSIpO1RlJiYhdGhpcy5fX3NlYXJjaFRleHRTdWImJih0aGlzLl9fc2VhcmNoVGV4dFN1Yj1UZS5jaGFuZ2VTdWJqZWN0LnN1YnNjcmliZShHZT0+e2xldCBjZT1HZT8udmFsdWU/PyIiO3RoaXMuZGVib3VuY2VSdW4oKCk9Pnt0aGlzLnNlYXJjaE1vZGU9PT0ic2VydmVyIj90aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJzZWFyY2hSZXF1ZXN0Iix7ZGV0YWlsOntxdWVyeTpjZSxtb2RlOiJzZXJ2ZXIifSxidWJibGVzOiEwfSkpOnRoaXMuc2V0RmlsdGVyVGV4dChjZSl9KX0pKSxwZSYmIXRoaXMuX19zZWFyY2hNb2RlU3ViJiYodGhpcy5fX3NlYXJjaE1vZGVTdWI9cGUuY2hhbmdlU3ViamVjdC5zdWJzY3JpYmUoR2U9PntsZXQgY2U9R2U/LnNlbGVjdGVkT3B0aW9ufHxHZT8udmFsdWV8fCJ0YWJsZSI7aWYoY2U9PT0idGFibGUifHxjZT09PSJkYXRhInx8Y2U9PT0ic2VydmVyIil7dGhpcy5zZWFyY2hNb2RlPWNlO2xldCBLPVRlPy52YWx1ZT8/IiI7dGhpcy5kZWJvdW5jZVJ1bigoKT0+e3RoaXMuc2VhcmNoTW9kZT09PSJzZXJ2ZXIiP3RoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoInNlYXJjaFJlcXVlc3QiLHtkZXRhaWw6e3F1ZXJ5OkssbW9kZToic2VydmVyIn0sYnViYmxlczohMH0pKTp0aGlzLnNldEZpbHRlclRleHQoSyl9KX19KSl9YXN5bmMgZGV0ZXJtaW5lQ29sdW1uV2lkdGhzKCl7YXdhaXQoYXdhaXQgdGhpcy5kb210b29sc1Byb21pc2UpLmNvbnZlbmllbmNlLnNtYXJ0ZGVsYXkuZGVsYXlGb3IoMCk7bGV0IHBlPXRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCJ0YWJsZSIpO2lmKCFwZSlyZXR1cm47bGV0IEdlPXBlLnJvd3NbMF0uY2VsbHMsY2U9YXN5bmMoSyxNZT0hMSk9PntsZXQgV2U9bHQuZGVmZXIoKSxVZT1HZVtLXSx3cj13aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShVZSkud2lkdGg7aWYoVWUudGV4dENvbnRlbnQuaW5jbHVkZXMoIkFjdGlvbnMiKSl7bGV0IFJyPXRoaXMuZGF0YUFjdGlvbnMuZmlsdGVyKFhhPT5YYS50eXBlPy5pbmNsdWRlcygiaW5Sb3ciKSkubGVuZ3RoKjM2O1VlLnN0eWxlLndpZHRoPWAke01hdGgubWF4KFJyLDY4KX1weGB9ZWxzZSBVZS5zdHlsZS53aWR0aD13cjtNZSYmKHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKT0+e1dlLnJlc29sdmUoKX0pLGF3YWl0IFdlLnByb21pc2UpfTtHZVtHZS5sZW5ndGgtMV0udGV4dENvbnRlbnQuaW5jbHVkZXMoIkFjdGlvbnMiKSYmYXdhaXQgY2UoR2UubGVuZ3RoLTEsITApO2ZvcihsZXQgSz0wO0s8R2UubGVuZ3RoO0srKylHZVtLXS50ZXh0Q29udGVudC5pbmNsdWRlcygiQWN0aW9ucyIpfHxhd2FpdCBjZShLKTtwZS5zdHlsZS50YWJsZUxheW91dD0iZml4ZWQifXRvZ2dsZVNvcnQoVGUpe2xldCBwZT1TdHJpbmcoVGUua2V5KTt0aGlzLnNvcnRLZXkhPT1wZT8odGhpcy5zb3J0S2V5PXBlLHRoaXMuc29ydERpcj0iYXNjIik6dGhpcy5zb3J0RGlyPT09ImFzYyI/dGhpcy5zb3J0RGlyPSJkZXNjIjp0aGlzLnNvcnREaXI9PT0iZGVzYyI/KHRoaXMuc29ydERpcj1udWxsLHRoaXMuc29ydEtleT12b2lkIDApOnRoaXMuc29ydERpcj0iYXNjIix0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJzb3J0Q2hhbmdlIix7ZGV0YWlsOntrZXk6dGhpcy5zb3J0S2V5LGRpcjp0aGlzLnNvcnREaXJ9LGJ1YmJsZXM6ITB9KSksdGhpcy5yZXF1ZXN0VXBkYXRlKCl9Z2V0QXJpYVNvcnQoVGUpe3JldHVybiBTdHJpbmcoVGUua2V5KSE9PXRoaXMuc29ydEtleXx8IXRoaXMuc29ydERpcj8ibm9uZSI6dGhpcy5zb3J0RGlyPT09ImFzYyI/ImFzY2VuZGluZyI6ImRlc2NlbmRpbmcifXJlbmRlclNvcnRJbmRpY2F0b3IoVGUpe3JldHVybiBTdHJpbmcoVGUua2V5KSE9PXRoaXMuc29ydEtleXx8IXRoaXMuc29ydERpcj9TYGA6U2A8c3BhbiBzdHlsZT0ibWFyZ2luLWxlZnQ6NnB4OyBvcGFjaXR5OjAuNzsiPiR7dGhpcy5zb3J0RGlyPT09ImFzYyI/Ilx1MjVCMiI6Ilx1MjVCQyJ9PC9zcGFuPmB9c2V0RmlsdGVyVGV4dChUZSl7bGV0IHBlPXRoaXMuZmlsdGVyVGV4dDt0aGlzLmZpbHRlclRleHQ9VGU/PyIiLHBlIT09dGhpcy5maWx0ZXJUZXh0JiYodGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgiZmlsdGVyQ2hhbmdlIix7ZGV0YWlsOnt0ZXh0OnRoaXMuZmlsdGVyVGV4dCxjb2x1bW5zOnsuLi50aGlzLmNvbHVtbkZpbHRlcnN9fSxidWJibGVzOiEwfSkpLHRoaXMucmVxdWVzdFVwZGF0ZSgpKX1zZXRDb2x1bW5GaWx0ZXIoVGUscGUpe3RoaXMuY29sdW1uRmlsdGVycz17Li4udGhpcy5jb2x1bW5GaWx0ZXJzLFtUZV06cGV9LHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoImZpbHRlckNoYW5nZSIse2RldGFpbDp7dGV4dDp0aGlzLmZpbHRlclRleHQsY29sdW1uczp7Li4udGhpcy5jb2x1bW5GaWx0ZXJzfX0sYnViYmxlczohMH0pKSx0aGlzLnJlcXVlc3RVcGRhdGUoKX1nZXRSb3dJZChUZSl7aWYodGhpcy5yb3dLZXkpcmV0dXJuIHR5cGVvZiB0aGlzLnJvd0tleT09ImZ1bmN0aW9uIj90aGlzLnJvd0tleShUZSk6U3RyaW5nKFRlW3RoaXMucm93S2V5XSk7bGV0IHBlPVRlO3JldHVybiB0aGlzLl9yb3dJZE1hcC5oYXMocGUpfHx0aGlzLl9yb3dJZE1hcC5zZXQocGUsU3RyaW5nKCsrdGhpcy5fcm93SWRDb3VudGVyKSksdGhpcy5fcm93SWRNYXAuZ2V0KHBlKX1pc1Jvd1NlbGVjdGVkKFRlKXtyZXR1cm4gdGhpcy5zZWxlY3RlZElkcy5oYXModGhpcy5nZXRSb3dJZChUZSkpfXRvZ2dsZVJvd1NlbGVjdGVkKFRlKXtsZXQgcGU9dGhpcy5nZXRSb3dJZChUZSk7dGhpcy5zZWxlY3Rpb25Nb2RlPT09InNpbmdsZSI/KHRoaXMuc2VsZWN0ZWRJZHMuY2xlYXIoKSx0aGlzLnNlbGVjdGVkSWRzLmFkZChwZSkpOnRoaXMuc2VsZWN0aW9uTW9kZT09PSJtdWx0aSImJih0aGlzLnNlbGVjdGVkSWRzLmhhcyhwZSk/dGhpcy5zZWxlY3RlZElkcy5kZWxldGUocGUpOnRoaXMuc2VsZWN0ZWRJZHMuYWRkKHBlKSksdGhpcy5lbWl0U2VsZWN0aW9uQ2hhbmdlKCksdGhpcy5yZXF1ZXN0VXBkYXRlKCl9c2V0Um93U2VsZWN0ZWQoVGUscGUpe2xldCBHZT10aGlzLmdldFJvd0lkKFRlKTt0aGlzLnNlbGVjdGlvbk1vZGU9PT0ic2luZ2xlIj8odGhpcy5zZWxlY3RlZElkcy5jbGVhcigpLHBlJiZ0aGlzLnNlbGVjdGVkSWRzLmFkZChHZSkpOnRoaXMuc2VsZWN0aW9uTW9kZT09PSJtdWx0aSImJihwZT90aGlzLnNlbGVjdGVkSWRzLmFkZChHZSk6dGhpcy5zZWxlY3RlZElkcy5kZWxldGUoR2UpKSx0aGlzLmVtaXRTZWxlY3Rpb25DaGFuZ2UoKSx0aGlzLnJlcXVlc3RVcGRhdGUoKX1hcmVBbGxWaXNpYmxlU2VsZWN0ZWQoKXtsZXQgVGU9dGhpcy5fbGFzdFZpZXdEYXRhfHxbXTtpZihUZS5sZW5ndGg9PT0wKXJldHVybiExO2ZvcihsZXQgcGUgb2YgVGUpaWYoIXRoaXMuc2VsZWN0ZWRJZHMuaGFzKHRoaXMuZ2V0Um93SWQocGUpKSlyZXR1cm4hMTtyZXR1cm4hMH1pc1Zpc2libGVTZWxlY3Rpb25JbmRldGVybWluYXRlKCl7bGV0IFRlPXRoaXMuX2xhc3RWaWV3RGF0YXx8W107aWYoVGUubGVuZ3RoPT09MClyZXR1cm4hMTtsZXQgcGU9MDtmb3IobGV0IEdlIG9mIFRlKXRoaXMuc2VsZWN0ZWRJZHMuaGFzKHRoaXMuZ2V0Um93SWQoR2UpKSYmcGUrKztyZXR1cm4gcGU+MCYmcGU8VGUubGVuZ3RofXNldFNlbGVjdFZpc2libGUoVGUpe2xldCBwZT10aGlzLl9sYXN0Vmlld0RhdGF8fFtdO2lmKFRlKWZvcihsZXQgR2Ugb2YgcGUpdGhpcy5zZWxlY3RlZElkcy5hZGQodGhpcy5nZXRSb3dJZChHZSkpO2Vsc2UgZm9yKGxldCBHZSBvZiBwZSl0aGlzLnNlbGVjdGVkSWRzLmRlbGV0ZSh0aGlzLmdldFJvd0lkKEdlKSk7dGhpcy5lbWl0U2VsZWN0aW9uQ2hhbmdlKCksdGhpcy5yZXF1ZXN0VXBkYXRlKCl9ZW1pdFNlbGVjdGlvbkNoYW5nZSgpe2xldCBUZT1BcnJheS5mcm9tKHRoaXMuc2VsZWN0ZWRJZHMpLHBlPXRoaXMuZGF0YS5maWx0ZXIoR2U9PnRoaXMuc2VsZWN0ZWRJZHMuaGFzKHRoaXMuZ2V0Um93SWQoR2UpKSk7dGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgic2VsZWN0aW9uQ2hhbmdlIix7ZGV0YWlsOntzZWxlY3RlZElkczpUZSxzZWxlY3RlZFJvd3M6cGV9LGJ1YmJsZXM6ITB9KSl9Z2V0QWN0aW9uc0ZvclR5cGUoVGUpe2xldCBwZT1bXTtmb3IobGV0IEdlIG9mIHRoaXMuZGF0YUFjdGlvbnMpR2UudHlwZT8uaW5jbHVkZXMoVGUpJiZwZS5wdXNoKEdlKTtyZXR1cm4gcGV9YXN5bmMgaGFuZGxlQ2VsbEVkaXRpbmcoVGUscGUsR2Upe2F3YWl0IHRoaXMuZG9tdG9vbHNQcm9taXNlO2xldCBjZT1UZS50YXJnZXQsSz1jZS5zdHlsZS5jb2xvcjtjZS5zdHlsZS5jb2xvcj0idHJhbnNwYXJlbnQiO2xldCBXZT10aGlzLmRpc3BsYXlGdW5jdGlvbihwZSlbR2VdPz9wZVtHZV0/PyIiLFVlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlucHV0Iik7VWUudHlwZT0idGV4dCIsVWUudmFsdWU9V2U7bGV0IHdyPWFzeW5jKFJyPSEwLFhhPSExKT0+e1JyJiZVZS5ibHVyKCksWGEmJihwZVtHZV09VWUudmFsdWUsdGhpcy5jaGFuZ2VTdWJqZWN0Lm5leHQodGhpcykpLFVlLnJlbW92ZSgpLGNlLnN0eWxlLmNvbG9yPUssdGhpcy5yZXF1ZXN0VXBkYXRlKCl9O1VlLmFkZEV2ZW50TGlzdGVuZXIoImJsdXIiLCgpPT57d3IoITEsITEpfSksVWUuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsUnI9PntSci5rZXk9PT0iRW50ZXIiJiZ3cighMCwhMCl9KSxjZS5hcHBlbmRDaGlsZChVZSksVWUuZm9jdXMoKX1zdGF0aWN7bXQoYSxyKX19O3JldHVybiBIZT1hfSkoKX0pO3ZhciBDY3Q9bCgoKT0+e1NjdCgpfSk7dmFyIHVQcixmUHI9bCgoKT0+e1NlKCk7emEoKTt1UHI9KCk9PlNgCiAgPHN0eWxlPgogICAgJHtsZWAKICAgICAgLmRlbW8tY29udGFpbmVyIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgZ2FwOiAyNHB4OwogICAgICAgIHBhZGRpbmc6IDI0cHg7CiAgICAgICAgbWF4LXdpZHRoOiAxMjAwcHg7CiAgICAgICAgbWFyZ2luOiAwIGF1dG87CiAgICAgIH0KICAgICAgCiAgICAgIGRlZXMtcGFuZWwgewogICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7CiAgICAgIH0KICAgICAgCiAgICAgIGRlZXMtcGFuZWw6bGFzdC1jaGlsZCB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsKICAgICAgfQogICAgICAKICAgICAgLmZvcm0tb3V0cHV0IHsKICAgICAgICBtYXJnaW4tdG9wOiAxNnB4OwogICAgICAgIHBhZGRpbmc6IDEycHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTAgNDAlIDk2LjElKSIsImhzbCgyMTUgMjAuMiUgMTYuOCUpIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTsKICAgICAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7CiAgICAgIH0KICAgICAgCiAgICAgIC5zdGF0dXMtbWVzc2FnZSB7CiAgICAgICAgbWFyZ2luLXRvcDogMTZweDsKICAgICAgICBwYWRkaW5nOiAxMnB4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgIH0KICAgICAgCiAgICAgIC5zdGF0dXMtbWVzc2FnZS5zdWNjZXNzIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDE0Mi4xIDcwLjYlIDQ1LjMlIC8gMC4xKSIsImhzbCgxNDIuMSA3MC42JSA0NS4zJSAvIDAuMikiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMTQyLjEgNzAuNiUgMzUuMyUpIiwiaHNsKDE0Mi4xIDcwLjYlIDY1LjMlKSIpfTsKICAgICAgfQogICAgICAKICAgICAgLnN0YXR1cy1tZXNzYWdlLmVycm9yIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgNzIuMiUgNTAuNiUgLyAwLjEpIiwiaHNsKDAgNzIuMiUgNTAuNiUgLyAwLjIpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgNzIuMiUgNDAuNiUpIiwiaHNsKDAgNzIuMiUgNjAuNiUpIil9OwogICAgICB9CiAgICBgfQogIDwvc3R5bGU+CiAgCiAgPGRpdiBjbGFzcz0iZGVtby1jb250YWluZXIiPgogICAgPGRlZXMtZGVtb3dyYXBwZXIgLnJ1bkFmdGVyUmVuZGVyPSR7YXN5bmMgZT0+e2xldCB0PWUucXVlcnlTZWxlY3RvcigiZGVlcy1mb3JtIikscj1lLnF1ZXJ5U2VsZWN0b3IoIi5mb3JtLW91dHB1dCIpO3QmJnImJih0LmFkZEV2ZW50TGlzdGVuZXIoImZvcm1EYXRhIixhc3luYyBpPT57bGV0IG89aS5kZXRhaWwuZGF0YTtjb25zb2xlLmxvZygiRm9ybSBzdWJtaXR0ZWQgd2l0aCBkYXRhOiIsbyksdC5zZXRTdGF0dXMoInBlbmRpbmciLCJQcm9jZXNzaW5nIHlvdXIgcmVnaXN0cmF0aW9uLi4uIiksci5pbm5lckhUTUw9YDxzdHJvbmc+U3VibWl0dGVkIERhdGE6PC9zdHJvbmc+CiR7SlNPTi5zdHJpbmdpZnkobyxudWxsLDIpfWAsYXdhaXQgJHQucGx1Z2lucy5zbWFydGRlbGF5LmRlbGF5Rm9yKDJlMyksdC5zZXRTdGF0dXMoInN1Y2Nlc3MiLCJSZWdpc3RyYXRpb24gY29tcGxldGVkIHN1Y2Nlc3NmdWxseSEiKSxhd2FpdCAkdC5wbHVnaW5zLnNtYXJ0ZGVsYXkuZGVsYXlGb3IoMmUzKSx0LnJlc2V0KCksci5pbm5lckhUTUw9IjxlbT5Gb3JtIGhhcyBiZWVuIHJlc2V0PC9lbT4ifSksdC5xdWVyeVNlbGVjdG9yQWxsKCJkZWVzLWlucHV0LXRleHQsIGRlZXMtaW5wdXQtZHJvcGRvd24sIGRlZXMtaW5wdXQtY2hlY2tib3giKS5mb3JFYWNoKGk9PntpLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZVN1YmplY3QiLCgpPT57Y29uc29sZS5sb2coIkZpZWxkIGNoYW5nZWQ6IixpLmdldEF0dHJpYnV0ZSgia2V5IikpfSl9KSl9fT4KICAgICAgPGRlZXMtcGFuZWwgLmhlYWRpbmc9IkNvbXBsZXRlIEZvcm0gRXhhbXBsZSIgLmRlc2NyaXB0aW9uPSJBIGNvbXByZWhlbnNpdmUgZm9ybSB3aXRoIHZhcmlvdXMgaW5wdXQgdHlwZXMsIHZhbGlkYXRpb24sIGFuZCBmb3JtIHN1Ym1pc3Npb24gaGFuZGxpbmciPgogICAgICAgIDxkZWVzLWZvcm0+CiAgICAgICAgICA8ZGVlcy1pbnB1dC10ZXh0IAogICAgICAgICAgICAucmVxdWlyZWQ9JHshMH0gCiAgICAgICAgICAgIGtleT0iZmlyc3ROYW1lIiAKICAgICAgICAgICAgbGFiZWw9IkZpcnN0IE5hbWUiCiAgICAgICAgICAgIC5kZXNjcmlwdGlvbj0keyJZb3VyIGdpdmVuIG5hbWUifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC10ZXh0PgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1pbnB1dC10ZXh0IAogICAgICAgICAgICAucmVxdWlyZWQ9JHshMH0gCiAgICAgICAgICAgIGtleT0ibGFzdE5hbWUiIAogICAgICAgICAgICBsYWJlbD0iTGFzdCBOYW1lIgogICAgICAgICAgPjwvZGVlcy1pbnB1dC10ZXh0PgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1pbnB1dC10ZXh0IAogICAgICAgICAgICAucmVxdWlyZWQ9JHshMH0gCiAgICAgICAgICAgIGtleT0iZW1haWwiIAogICAgICAgICAgICBsYWJlbD0iRW1haWwgQWRkcmVzcyIKICAgICAgICAgICAgLmRlc2NyaXB0aW9uPSR7IldlIHdpbGwgdXNlIHRoaXMgdG8gY29udGFjdCB5b3UifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC10ZXh0PgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1pbnB1dC1kcm9wZG93bgogICAgICAgICAgICAucmVxdWlyZWQ9JHshMH0KICAgICAgICAgICAga2V5PSJjb3VudHJ5IgogICAgICAgICAgICAubGFiZWw9JHsiQ291bnRyeSJ9CiAgICAgICAgICAgIC5vcHRpb25zPSR7W3tvcHRpb246IlVuaXRlZCBTdGF0ZXMiLGtleToidXMifSx7b3B0aW9uOiJDYW5hZGEiLGtleToiY2EifSx7b3B0aW9uOiJHZXJtYW55IixrZXk6ImRlIn0se29wdGlvbjoiRnJhbmNlIixrZXk6ImZyIn0se29wdGlvbjoiVW5pdGVkIEtpbmdkb20iLGtleToidWsifV19CiAgICAgICAgICA+PC9kZWVzLWlucHV0LWRyb3Bkb3duPgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1pbnB1dC10ZXh0CiAgICAgICAgICAgIC5yZXF1aXJlZD0keyEwfQogICAgICAgICAgICBrZXk9InBhc3N3b3JkIgogICAgICAgICAgICBsYWJlbD0iUGFzc3dvcmQiCiAgICAgICAgICAgIGlzUGFzc3dvcmRCb29sCiAgICAgICAgICAgIC5kZXNjcmlwdGlvbj0keyJNaW5pbXVtIDggY2hhcmFjdGVycyJ9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LXRleHQ+CiAgICAgICAgICAKICAgICAgICAgIDxkZWVzLWlucHV0LWNoZWNrYm94CiAgICAgICAgICAgIC5yZXF1aXJlZD0keyEwfQogICAgICAgICAgICBrZXk9InRlcm1zIgogICAgICAgICAgICBsYWJlbD0iSSBhZ3JlZSB0byB0aGUgVGVybXMgYW5kIENvbmRpdGlvbnMiCiAgICAgICAgICA+PC9kZWVzLWlucHV0LWNoZWNrYm94PgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1pbnB1dC1jaGVja2JveAogICAgICAgICAgICBrZXk9Im5ld3NsZXR0ZXIiCiAgICAgICAgICAgIGxhYmVsPSJTZW5kIG1lIHByb21vdGlvbmFsIGVtYWlscyIKICAgICAgICAgICAgLnZhbHVlPSR7ITB9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LWNoZWNrYm94PgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1mb3JtLXN1Ym1pdD5DcmVhdGUgQWNjb3VudDwvZGVlcy1mb3JtLXN1Ym1pdD4KICAgICAgICA8L2RlZXMtZm9ybT4KICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJmb3JtLW91dHB1dCI+CiAgICAgICAgICA8ZW0+U3VibWl0IHRoZSBmb3JtIHRvIHNlZSB0aGUgY29sbGVjdGVkIGRhdGEuLi48L2VtPgogICAgICAgIDwvZGl2PgogICAgICA8L2RlZXMtcGFuZWw+CiAgICA8L2RlZXMtZGVtb3dyYXBwZXI+CiAgICAKICAgIDxkZWVzLWRlbW93cmFwcGVyIC5ydW5BZnRlclJlbmRlcj0ke2FzeW5jIGU9PntsZXQgdD1lLnF1ZXJ5U2VsZWN0b3IoImRlZXMtZm9ybSIpO3QmJihjb25zb2xlLmxvZygiSG9yaXpvbnRhbCBmb3JtIGxheW91dCBhY3RpdmUiKSx0LmFkZEV2ZW50TGlzdGVuZXIoImZvcm1EYXRhIixhPT57bGV0IGk9YS5kZXRhaWwuZGF0YTtjb25zb2xlLmxvZygiRmlsdGVyIGFwcGxpZWQ6IixpKTtsZXQgbz1NYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqMTAwKSsxO2NvbnNvbGUubG9nKGBGb3VuZCAke299IHJlc3VsdHMgd2l0aCBmaWx0ZXJzOmAsaSl9KSx0LnF1ZXJ5U2VsZWN0b3JBbGwoIltrZXldIikuZm9yRWFjaChhPT57YS5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2VTdWJqZWN0Iixhc3luYygpPT57bGV0IGk9YXdhaXQgdC5jb2xsZWN0Rm9ybURhdGEoKTtjb25zb2xlLmxvZygiTGl2ZSBmaWx0ZXIgdXBkYXRlOiIsaSl9KX0pKX19PgogICAgICA8ZGVlcy1wYW5lbCAuaGVhZGluZz0iSG9yaXpvbnRhbCBGb3JtIExheW91dCIgLmRlc2NyaXB0aW9uPSJDb21wYWN0IGZvcm0gd2l0aCBpbnB1dHMgYXJyYW5nZWQgaG9yaXpvbnRhbGx5IC0gcGVyZmVjdCBmb3IgZmlsdGVycyBhbmQgcXVpY2sgZm9ybXMiPgogICAgICAgIDxkZWVzLWZvcm0gaG9yaXpvbnRhbC1sYXlvdXQ+CiAgICAgICAgICA8ZGVlcy1pbnB1dC10ZXh0IAogICAgICAgICAgICBrZXk9InNlYXJjaCIgCiAgICAgICAgICAgIGxhYmVsPSJTZWFyY2giCiAgICAgICAgICAgIHBsYWNlaG9sZGVyPSJFbnRlciBrZXl3b3Jkcy4uLiIKICAgICAgICAgID48L2RlZXMtaW5wdXQtdGV4dD4KICAgICAgICAgIAogICAgICAgICAgPGRlZXMtaW5wdXQtZHJvcGRvd24KICAgICAgICAgICAga2V5PSJjYXRlZ29yeSIKICAgICAgICAgICAgLmxhYmVsPSR7IkNhdGVnb3J5In0KICAgICAgICAgICAgLmVuYWJsZVNlYXJjaD0keyExfQogICAgICAgICAgICAub3B0aW9ucz0ke1t7b3B0aW9uOiJBbGwiLGtleToiYWxsIn0se29wdGlvbjoiUHJvZHVjdHMiLGtleToicHJvZHVjdHMifSx7b3B0aW9uOiJTZXJ2aWNlcyIsa2V5OiJzZXJ2aWNlcyJ9LHtvcHRpb246IlN1cHBvcnQiLGtleToic3VwcG9ydCJ9XX0KICAgICAgICAgID48L2RlZXMtaW5wdXQtZHJvcGRvd24+CiAgICAgICAgICAKICAgICAgICAgIDxkZWVzLWlucHV0LWRyb3Bkb3duCiAgICAgICAgICAgIGtleT0ic29ydCIKICAgICAgICAgICAgLmxhYmVsPSR7IlNvcnQgQnkifQogICAgICAgICAgICAuZW5hYmxlU2VhcmNoPSR7ITF9CiAgICAgICAgICAgIC5vcHRpb25zPSR7W3tvcHRpb246Ik5ld2VzdCIsa2V5OiJuZXdlc3QifSx7b3B0aW9uOiJQb3B1bGFyIixrZXk6InBvcHVsYXIifSx7b3B0aW9uOiJQcmljZTogTG93IHRvIEhpZ2giLGtleToicHJpY2VfYXNjIn0se29wdGlvbjoiUHJpY2U6IEhpZ2ggdG8gTG93IixrZXk6InByaWNlX2Rlc2MifV19CiAgICAgICAgICA+PC9kZWVzLWlucHV0LWRyb3Bkb3duPgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1pbnB1dC1jaGVja2JveAogICAgICAgICAgICBrZXk9ImluU3RvY2siCiAgICAgICAgICAgIGxhYmVsPSJJbiBTdG9jayBPbmx5IgogICAgICAgICAgICAudmFsdWU9JHshMH0KICAgICAgICAgID48L2RlZXMtaW5wdXQtY2hlY2tib3g+CiAgICAgICAgPC9kZWVzLWZvcm0+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgIDwvZGVlcy1kZW1vd3JhcHBlcj4KICAgIAogICAgPGRlZXMtZGVtb3dyYXBwZXIgLnJ1bkFmdGVyUmVuZGVyPSR7YXN5bmMgZT0+e2xldCB0PWUucXVlcnlTZWxlY3RvcigiZGVlcy1mb3JtIikscj1lLnF1ZXJ5U2VsZWN0b3IoIiNzdGF0dXMtZGlzcGxheSIpO2lmKHQpe3QuYWRkRXZlbnRMaXN0ZW5lcigiZm9ybURhdGEiLGFzeW5jIGk9PntsZXQgbz1pLmRldGFpbC5kYXRhO2NvbnNvbGUubG9nKCJBZHZhbmNlZCBmb3JtIGRhdGE6IixvKSx0LnNldFN0YXR1cygicGVuZGluZyIsIlZhbGlkYXRpbmcgeW91ciBpbmZvcm1hdGlvbi4uLiIpLGF3YWl0ICR0LnBsdWdpbnMuc21hcnRkZWxheS5kZWxheUZvcigxNTAwKSxvLmliYW4mJm8uaWJhbi5sZW5ndGg+MTU/KHQuc2V0U3RhdHVzKCJzdWNjZXNzIiwiQXBwbGljYXRpb24gc3VibWl0dGVkIHN1Y2Nlc3NmdWxseSEiKSxyJiYoci5jbGFzc05hbWU9InN0YXR1cy1tZXNzYWdlIHN1Y2Nlc3MiLHIudGV4dENvbnRlbnQ9Ilx1MjcxMyBZb3VyIGFwcGxpY2F0aW9uIGhhcyBiZWVuIHN1Ym1pdHRlZC4gV2Ugd2lsbCBjb250YWN0IHlvdSBzb29uLiIpKToodC5zZXRTdGF0dXMoImVycm9yIiwiUGxlYXNlIGNoZWNrIHlvdXIgSUJBTiIpLHImJihyLmNsYXNzTmFtZT0ic3RhdHVzLW1lc3NhZ2UgZXJyb3IiLHIudGV4dENvbnRlbnQ9Ilx1MjcxNyBJbnZhbGlkIElCQU4gZm9ybWF0LiBQbGVhc2UgY2hlY2sgYW5kIHRyeSBhZ2Fpbi4iKSksY29uc29sZS5sb2coIkZvcm0gZGF0YSBsb2dnZWQ6IixvKX0pO2xldCBhPXQucXVlcnlTZWxlY3RvcigiZGVlcy1pbnB1dC1maWxldXBsb2FkIik7YSYmYS5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGk9PntsZXQgbz1pLmRldGFpbD8uZmlsZXN8fFtdO2NvbnNvbGUubG9nKGAke28ubGVuZ3RofSBmaWxlKHMpIHNlbGVjdGVkIGZvciB1cGxvYWRgKX0pfX19PgogICAgICA8ZGVlcy1wYW5lbCAuaGVhZGluZz0iQWR2YW5jZWQgRm9ybSBGZWF0dXJlcyIgLmRlc2NyaXB0aW9uPSJGb3JtIHdpdGggc3BlY2lhbGl6ZWQgaW5wdXQgdHlwZXMgYW5kIGNvbXBsZXggdmFsaWRhdGlvbiI+CiAgICAgICAgPGRlZXMtZm9ybT4KICAgICAgICAgIDxkZWVzLWlucHV0LWliYW4gCiAgICAgICAgICAgIGtleT0iaWJhbiIKICAgICAgICAgICAgbGFiZWw9IklCQU4iCiAgICAgICAgICAgIC5yZXF1aXJlZD0keyEwfQogICAgICAgICAgPjwvZGVlcy1pbnB1dC1pYmFuPgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1pbnB1dC1waG9uZQogICAgICAgICAgICBrZXk9InBob25lIgogICAgICAgICAgICBsYWJlbD0iUGhvbmUgTnVtYmVyIgogICAgICAgICAgICAucmVxdWlyZWQ9JHshMH0KICAgICAgICAgID48L2RlZXMtaW5wdXQtcGhvbmU+CiAgICAgICAgICAKICAgICAgICAgIDxkZWVzLWlucHV0LW11bHRpdG9nZ2xlCiAgICAgICAgICAgIGtleT0icHJlZmVyZW5jZXMiCiAgICAgICAgICAgIC5sYWJlbD0keyJOb3RpZmljYXRpb24gUHJlZmVyZW5jZXMifQogICAgICAgICAgICAub3B0aW9ucz0ke1siRW1haWwiLCJTTVMiLCJQdXNoIiwiSW4tQXBwIl19CiAgICAgICAgICAgIC5zZWxlY3RlZE9wdGlvbj0keyJFbWFpbCJ9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LW11bHRpdG9nZ2xlPgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1pbnB1dC1tdWx0aXNlbGVjdAogICAgICAgICAgICBrZXk9ImludGVyZXN0cyIKICAgICAgICAgICAgLmxhYmVsPSR7IkFyZWFzIG9mIEludGVyZXN0In0KICAgICAgICAgICAgLm9wdGlvbnM9JHtbe29wdGlvbjoiVGVjaG5vbG9neSIsa2V5OiJ0ZWNoIn0se29wdGlvbjoiRGVzaWduIixrZXk6ImRlc2lnbiJ9LHtvcHRpb246IkJ1c2luZXNzIixrZXk6ImJ1c2luZXNzIn0se29wdGlvbjoiTWFya2V0aW5nIixrZXk6Im1hcmtldGluZyJ9LHtvcHRpb246IlNhbGVzIixrZXk6InNhbGVzIn1dfQogICAgICAgICAgPjwvZGVlcy1pbnB1dC1tdWx0aXNlbGVjdD4KICAgICAgICAgIAogICAgICAgICAgPGRlZXMtaW5wdXQtZmlsZXVwbG9hZAogICAgICAgICAgICBrZXk9ImRvY3VtZW50cyIKICAgICAgICAgICAgLmxhYmVsPSR7IlVwbG9hZCBEb2N1bWVudHMifQogICAgICAgICAgICAuZGVzY3JpcHRpb249JHsiUERGLCBET0MsIG9yIERPQ1ggZmlsZXMgdXAgdG8gMTBNQiJ9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LWZpbGV1cGxvYWQ+CiAgICAgICAgICAKICAgICAgICAgIDxkZWVzLWZvcm0tc3VibWl0PlN1Ym1pdCBBcHBsaWNhdGlvbjwvZGVlcy1mb3JtLXN1Ym1pdD4KICAgICAgICA8L2RlZXMtZm9ybT4KICAgICAgICAKICAgICAgICA8ZGl2IGlkPSJzdGF0dXMtZGlzcGxheSI+PC9kaXY+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgIDwvZGVlcy1kZW1vd3JhcHBlcj4KICA8L2Rpdj4KYH0pO3ZhciBwUHIsX2N0LGhQcixtUHIsVTk9bCgoKT0+e1NlKCk7ZXIoKTtrbGUoKTtXbHQoKTtZbHQoKTtzMygpO1FsdCgpO0FsZSgpO1BsZSgpO0psdCgpO2ljdCgpO29jdCgpO25jdCgpO2xjdCgpO2RjdCgpO3VjdCgpO2ZjdCgpO1hsZSgpO1FsZSgpO1Q4KCk7Q2N0KCk7ZlByKCk7cFByPWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sX2N0PWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSxoUHI9W01sZSxDbGUsX2xlLCRsZSxJbGUsT2xlLFJsZSxIbGUsTGxlLERsZSxUbGUscWxlLGpsZSxWbGUsVWxlLCRaLEtsZSxlY2VdLG1Qcj0oKCk9PntsZXQgZT1bemUoImRlZXMtZm9ybSIpXSx0LHI9W10sYSxpPURlLG8sbj1bXSxzPVtdO3ZhciBjPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgZD10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHt0eXBlOkJvb2xlYW4scmVmbGVjdDohMCxhdHRyaWJ1dGU6Imhvcml6b250YWwtbGF5b3V0In0pXSxwUHIodGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJob3Jpem9udGFsTGF5b3V0IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpmPT4iaG9yaXpvbnRhbExheW91dCJpbiBmLGdldDpmPT5mLmhvcml6b250YWxMYXlvdXQsc2V0OihmLHUpPT57Zi5ob3Jpem9udGFsTGF5b3V0PXV9fSxtZXRhZGF0YTpkfSxuLHMpLHBQcihudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTpkfSxudWxsLHIpLGM9YT10LnZhbHVlLGQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6ZH0pfXN0YXRpYyBkZW1vPXVQcjtzdGF0aWMgZGVtb0dyb3Vwcz1bIkZvcm0iXTtuYW1lPSJteWZvcm0iO2NoYW5nZVN1YmplY3Q9bmV3IEp0LnNtYXJ0cngucnhqcy5TdWJqZWN0O3JlYWR5RGVmZXJyZWQ9SnQuc21hcnRwcm9taXNlLmRlZmVyKCk7I2U9X2N0KHRoaXMsbiwhMSk7Z2V0IGhvcml6b250YWxMYXlvdXQoKXtyZXR1cm4gdGhpcy4jZX1zZXQgaG9yaXpvbnRhbExheW91dChkKXt0aGlzLiNlPWR9c3RhdGljIHN0eWxlcz1bbGVgCiAgICAgIDpob3N0IHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgZ2FwOiAxNnB4OwogICAgICB9CgogICAgICA6aG9zdChbaG9yaXpvbnRhbC1sYXlvdXRdKSB7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsKICAgICAgICBmbGV4LXdyYXA6IHdyYXA7CiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7CiAgICAgICAgZ2FwOiAxNnB4OwogICAgICB9CiAgICBgXTtyZW5kZXIoKXtyZXR1cm4gU2AKICAgICAgPHNsb3Q+PC9zbG90PgogICAgYH1hc3luYyBmaXJzdFVwZGF0ZWQoKXtsZXQgZD10aGlzLmdldEZvcm1FbGVtZW50cygpO3RoaXMudXBkYXRlUmVxdWlyZWRTdGF0dXMoKSx0aGlzLnVwZGF0ZUNoaWxkcmVuTGF5b3V0TW9kZSgpO2ZvcihsZXQgZiBvZiBkKWYuY2hhbmdlU3ViamVjdC5zdWJzY3JpYmUoYXN5bmMoKT0+e2xldCB1PWF3YWl0IHRoaXMuY29sbGVjdEZvcm1EYXRhKCk7dGhpcy5jaGFuZ2VTdWJqZWN0Lm5leHQodSksY29uc29sZS5sb2codSksdGhpcy51cGRhdGVSZXF1aXJlZFN0YXR1cygpfSk7YXdhaXQgdGhpcy5hZGRCZWhhdmlvdXJzKCksdGhpcy5yZWFkeURlZmVycmVkLnJlc29sdmUoKX1nZXRGb3JtRWxlbWVudHMoKXtyZXR1cm4gQXJyYXkuZnJvbSh0aGlzLmNoaWxkcmVuKS5maWx0ZXIoZD0+aFByLmluY2x1ZGVzKGQuY29uc3RydWN0b3IpKX1nZXRTdWJtaXRCdXR0b24oKXtyZXR1cm4gQXJyYXkuZnJvbSh0aGlzLmNoaWxkcmVuKS5maW5kKGQ9PmQgaW5zdGFuY2VvZiBFbGUpfWFzeW5jIHVwZGF0ZVJlcXVpcmVkU3RhdHVzKCl7Y29uc29sZS5sb2coImNoZWNraW5nIHRoZSByZXF1aXJlZCBzdGF0dXMuIik7bGV0IGQ9ITA7Zm9yKGxldCBmIG9mIHRoaXMuZ2V0Rm9ybUVsZW1lbnRzKCkpZi5yZXF1aXJlZCYmIWYudmFsdWUmJihkPSExKTt0aGlzLmdldFN1Ym1pdEJ1dHRvbigpJiYodGhpcy5nZXRTdWJtaXRCdXR0b24oKS5kaXNhYmxlZD0hZCl9YXN5bmMgY29sbGVjdEZvcm1EYXRhKCl7bGV0IGQ9dGhpcy5nZXRGb3JtRWxlbWVudHMoKSxmPXt9O2ZvcihsZXQgdSBvZiBkKXtpZighdS5rZXkpe2NvbnNvbGUubG9nKGBmb3JtIGVsZW1lbnQgd2l0aCBsYWJlbCAiJHt1LmxhYmVsfSIgaGFzIG5vIGtleS4gc2tpcHBpbmcuYCk7Y29udGludWV9Zlt1LmtleV09dS52YWx1ZX1yZXR1cm4gZn1hc3luYyBnYXRoZXJBbmREaXNwYXRjaCgpe2xldCBkPWF3YWl0IHRoaXMuY29sbGVjdEZvcm1EYXRhKCksZj1uZXcgQ3VzdG9tRXZlbnQoImZvcm1EYXRhIix7ZGV0YWlsOntkYXRhOmR9LGJ1YmJsZXM6ITB9KTt0aGlzLmRpc3BhdGNoRXZlbnQoZiksY29uc29sZS5sb2coImRpc3BhdGNoZWQgZGF0YToiKSxjb25zb2xlLmxvZyhkKX1zZXRTdGF0dXMoZCxmKXtsZXQgdT10aGlzLmdldEZvcm1FbGVtZW50cygpLHA9dGhpcy5nZXRTdWJtaXRCdXR0b24oKTtzd2l0Y2goZCl7Y2FzZSJub3JtYWwiOnAuZGlzYWJsZWQ9ITEscC5zdGF0dXM9Im5vcm1hbCI7Zm9yKGxldCBoIG9mIHUpaC5kaXNhYmxlZD0hMTticmVhaztjYXNlInBlbmRpbmciOnAuZGlzYWJsZWQ9ITAscC5zdGF0dXM9InBlbmRpbmciO2ZvcihsZXQgaCBvZiB1KWguZGlzYWJsZWQ9ITA7YnJlYWs7Y2FzZSJzdWNjZXNzIjpwLmRpc2FibGVkPSEwLHAuc3RhdHVzPSJzdWNjZXNzIjtmb3IobGV0IGggb2YgdSloLmRpc2FibGVkPSEwO2JyZWFrO2Nhc2UiZXJyb3IiOnAuZGlzYWJsZWQ9ITAscC5zdGF0dXM9ImVycm9yIjtmb3IobGV0IGggb2YgdSloLmRpc2FibGVkPSEwO2JyZWFrfXAudGV4dD1mfXJlc2V0KCl7bGV0IGQ9dGhpcy5nZXRGb3JtRWxlbWVudHMoKSxmPXRoaXMuZ2V0U3VibWl0QnV0dG9uKCk7Zm9yKGxldCB1IG9mIGQpdS52YWx1ZT1udWxsO3RoaXMuc2V0U3RhdHVzKCJub3JtYWwiLCJTdWJtaXQiKX1hc3luYyBhZGRCZWhhdmlvdXJzKCl7dGhpcy5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixkPT57bGV0IGY9ZC50YXJnZXQ7aWYoaFByLmluY2x1ZGVzKGYuY29uc3RydWN0b3IpJiZkLmtleT09PSJFbnRlciIpe2xldCB1PXRoaXMuZ2V0Rm9ybUVsZW1lbnRzKCkscD11LmluZGV4T2YoZik7cDx1Lmxlbmd0aC0xP3VbcCsxXS5mb2N1cygpOihmLmJsdXIoKSx0aGlzLmdldFN1Ym1pdEJ1dHRvbigpPy5mb2N1cygpKX19KX11cGRhdGVDaGlsZHJlbkxheW91dE1vZGUoKXtsZXQgZD10aGlzLmdldEZvcm1FbGVtZW50cygpO2ZvcihsZXQgZiBvZiBkKSJsYXlvdXRNb2RlImluIGYmJihmLmxheW91dE1vZGU9ImF1dG8iKX11cGRhdGVkKGQpe3N1cGVyLnVwZGF0ZWQoZCksZC5oYXMoImhvcml6b250YWxMYXlvdXQiKSYmdGhpcy51cGRhdGVDaGlsZHJlbkxheW91dE1vZGUoKX1jb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyksX2N0KHRoaXMscyl9c3RhdGlje19jdChhLHIpfX07cmV0dXJuIGM9YX0pKCl9KTt2YXIgZ1ByLHhQcj1sKCgpPT57U2UoKTt6YSgpO3QxKCk7VTkoKTtUOCgpO3MzKCk7YnIoKTtnUHI9KCk9PlNgCiAgPHN0eWxlPgogICAgJHtsZWAKICAgICAgLmRlbW8tY29udGFpbmVyIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgZ2FwOiAyNHB4OwogICAgICAgIHBhZGRpbmc6IDI0cHg7CiAgICAgICAgbWF4LXdpZHRoOiAxMjAwcHg7CiAgICAgICAgbWFyZ2luOiAwIGF1dG87CiAgICAgIH0KICAgICAgCiAgICAgIGRlZXMtcGFuZWwgewogICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7CiAgICAgIH0KICAgICAgCiAgICAgIGRlZXMtcGFuZWw6bGFzdC1jaGlsZCB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsKICAgICAgfQogICAgICAKICAgICAgLmJ1dHRvbi1ncm91cCB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogMTJweDsKICAgICAgICBmbGV4LXdyYXA6IHdyYXA7CiAgICAgIH0KICAgICAgCiAgICAgIC52ZXJ0aWNhbC1ncm91cCB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGdhcDogOHB4OwogICAgICAgIG1heC13aWR0aDogMzAwcHg7CiAgICAgIH0KICAgICAgCiAgICAgIC5ob3Jpem9udGFsLWdyb3VwIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgZ2FwOiAxNnB4OwogICAgICAgIGZsZXgtd3JhcDogd3JhcDsKICAgICAgfQogICAgICAKICAgICAgLmRlbW8tb3V0cHV0IHsKICAgICAgICBtYXJnaW4tdG9wOiAxNnB4OwogICAgICAgIHBhZGRpbmc6IDEycHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTAgNDAlIDk2LjElKSIsImhzbCgyMTUgMjAuMiUgMTYuOCUpIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuMyAyNSUgOC44JSkiLCJoc2woMjEwIDQwJSA5OCUpIil9OwogICAgICB9CiAgICAgIAogICAgICAuaWNvbi1yb3cgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDEycHg7CiAgICAgICAgbWFyZ2luOiA4cHggMDsKICAgICAgfQogICAgICAKICAgICAgLmNvZGUtc25pcHBldCB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTAgNDAlIDk2LjElKSIsImhzbCgyMTUgMjAuMiUgMTEuOCUpIil9OwogICAgICAgIHBhZGRpbmc6IDhweCAxMnB4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlOwogICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICAgICAgbWFyZ2luOiA0cHggMDsKICAgICAgfQogICAgYH0KICA8L3N0eWxlPgogIAogIDxkaXYgY2xhc3M9ImRlbW8tY29udGFpbmVyIj4KICAgIDxkZWVzLWRlbW93cmFwcGVyIC5ydW5BZnRlclJlbmRlcj0ke2FzeW5jIGU9PntlLnF1ZXJ5U2VsZWN0b3JBbGwoImRlZXMtYnV0dG9uIikuZm9yRWFjaChyPT57ci5hZGRFdmVudExpc3RlbmVyKCJjbGlja2VkIiwoKT0+e2xldCBhPXIuZ2V0QXR0cmlidXRlKCJ0eXBlIil8fCJkZWZhdWx0Ijtjb25zb2xlLmxvZyhgQnV0dG9uIHZhcmlhbnQgY2xpY2tlZDogJHthfWApfSl9KX19PgogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiMS4gQnV0dG9uIFZhcmlhbnRzIn0gLnN1YnRpdGxlPSR7IkRpZmZlcmVudCB2aXN1YWwgc3R5bGVzIGZvciB2YXJpb3VzIHVzZSBjYXNlcyJ9PgogICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ncm91cCI+CiAgICAgICAgICA8ZGVlcy1idXR0b24gdHlwZT0iZGVmYXVsdCI+RGVmYXVsdDwvZGVlcy1idXR0b24+CiAgICAgICAgICA8ZGVlcy1idXR0b24gdHlwZT0ic2Vjb25kYXJ5Ij5TZWNvbmRhcnk8L2RlZXMtYnV0dG9uPgogICAgICAgICAgPGRlZXMtYnV0dG9uIHR5cGU9ImRlc3RydWN0aXZlIj5EZXN0cnVjdGl2ZTwvZGVlcy1idXR0b24+CiAgICAgICAgICA8ZGVlcy1idXR0b24gdHlwZT0ib3V0bGluZSI+T3V0bGluZTwvZGVlcy1idXR0b24+CiAgICAgICAgICA8ZGVlcy1idXR0b24gdHlwZT0iZ2hvc3QiPkdob3N0PC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIDxkZWVzLWJ1dHRvbiB0eXBlPSJsaW5rIj5MaW5rIEJ1dHRvbjwvZGVlcy1idXR0b24+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgIDwvZGVlcy1kZW1vd3JhcHBlcj4KICAgIAogICAgPGRlZXMtZGVtb3dyYXBwZXIgLnJ1bkFmdGVyUmVuZGVyPSR7YXN5bmMgZT0+e2UucXVlcnlTZWxlY3RvckFsbCgiZGVlcy1idXR0b24iKS5mb3JFYWNoKHI9PntyLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrZWQiLCgpPT57bGV0IGE9ci5nZXRBdHRyaWJ1dGUoInNpemUiKXx8ImRlZmF1bHQiO2NvbnNvbGUubG9nKGBCdXR0b24gc2l6ZTogJHthfWApfSl9KX19PgogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiMi4gQnV0dG9uIFNpemVzIn0gLnN1YnRpdGxlPSR7Ik11bHRpcGxlIHNpemVzIGZvciBkaWZmZXJlbnQgY29udGV4dHMgYW5kIHVzZSBjYXNlcyJ9PgogICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ncm91cCI+CiAgICAgICAgICA8ZGVlcy1idXR0b24gc2l6ZT0ic20iPlNtYWxsIEJ1dHRvbjwvZGVlcy1idXR0b24+CiAgICAgICAgICA8ZGVlcy1idXR0b24gc2l6ZT0iZGVmYXVsdCI+RGVmYXVsdCBTaXplPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIDxkZWVzLWJ1dHRvbiBzaXplPSJsZyI+TGFyZ2UgQnV0dG9uPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIDxkZWVzLWJ1dHRvbiBzaXplPSJpY29uIiB0eXBlPSJvdXRsaW5lIiAudGV4dD0keyJcdXsxRjY4MH0ifT48L2RlZXMtYnV0dG9uPgogICAgICAgIDwvZGl2PgogICAgICAgIAogICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ncm91cCIgc3R5bGU9Im1hcmdpbi10b3A6IDE2cHg7Ij4KICAgICAgICAgIDxkZWVzLWJ1dHRvbiBzaXplPSJzbSIgdHlwZT0ic2Vjb25kYXJ5Ij5TbWFsbCBTZWNvbmRhcnk8L2RlZXMtYnV0dG9uPgogICAgICAgICAgPGRlZXMtYnV0dG9uIHNpemU9ImRlZmF1bHQiIHR5cGU9ImRlc3RydWN0aXZlIj5EZWZhdWx0IERlc3RydWN0aXZlPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIDxkZWVzLWJ1dHRvbiBzaXplPSJsZyIgdHlwZT0ib3V0bGluZSI+TGFyZ2UgT3V0bGluZTwvZGVlcy1idXR0b24+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgIDwvZGVlcy1kZW1vd3JhcHBlcj4KICAgIAogICAgPGRlZXMtZGVtb3dyYXBwZXIgLnJ1bkFmdGVyUmVuZGVyPSR7YXN5bmMgZT0+e2UucXVlcnlTZWxlY3RvckFsbCgiZGVlcy1idXR0b24iKS5mb3JFYWNoKHI9PntyLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrZWQiLCgpPT57bGV0IGE9ci5xdWVyeVNlbGVjdG9yKCJkZWVzLWljb24iKTtpZihhKXtsZXQgaT1hLmdldEF0dHJpYnV0ZSgiaWNvbkZBIil8fCJ1bmtub3duIjtjb25zb2xlLmxvZyhgSWNvbiBidXR0b24gY2xpY2tlZDogJHtpfWApfX0pfSl9fT4KICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IjMuIEJ1dHRvbnMgd2l0aCBJY29ucyJ9IC5zdWJ0aXRsZT0keyJDb21iaW5pbmcgaWNvbnMgd2l0aCB0ZXh0IGZvciBlbmhhbmNlZCB2aXN1YWwgY29tbXVuaWNhdGlvbiJ9PgogICAgICAgIDxkaXYgY2xhc3M9Imljb24tcm93Ij4KICAgICAgICAgIDxkZWVzLWJ1dHRvbj4KICAgICAgICAgICAgPGRlZXMtaWNvbiBpY29uPSJmYTpwbHVzIj48L2RlZXMtaWNvbj4KICAgICAgICAgICAgQWRkIEl0ZW0KICAgICAgICAgIDwvZGVlcy1idXR0b24+CiAgICAgICAgICA8ZGVlcy1idXR0b24gdHlwZT0iZGVzdHJ1Y3RpdmUiPgogICAgICAgICAgICA8ZGVlcy1pY29uIGljb249ImZhOnRyYXNoIj48L2RlZXMtaWNvbj4KICAgICAgICAgICAgRGVsZXRlCiAgICAgICAgICA8L2RlZXMtYnV0dG9uPgogICAgICAgICAgPGRlZXMtYnV0dG9uIHR5cGU9Im91dGxpbmUiPgogICAgICAgICAgICA8ZGVlcy1pY29uIGljb249Imx1Y2lkZTpEb3dubG9hZCI+PC9kZWVzLWljb24+CiAgICAgICAgICAgIERvd25sb2FkCiAgICAgICAgICA8L2RlZXMtYnV0dG9uPgogICAgICAgIDwvZGl2PgoKICAgICAgICA8ZGl2IGNsYXNzPSJpY29uLXJvdyI+CiAgICAgICAgICA8ZGVlcy1idXR0b24gdHlwZT0ic2Vjb25kYXJ5IiBzaXplPSJzbSI+CiAgICAgICAgICAgIDxkZWVzLWljb24gaWNvbj0iZmE6Z2VhciI+PC9kZWVzLWljb24+CiAgICAgICAgICAgIFNldHRpbmdzCiAgICAgICAgICA8L2RlZXMtYnV0dG9uPgogICAgICAgICAgPGRlZXMtYnV0dG9uIHR5cGU9Imdob3N0Ij4KICAgICAgICAgICAgPGRlZXMtaWNvbiBpY29uPSJmYTpjYXJldExlZnQiPjwvZGVlcy1pY29uPgogICAgICAgICAgICBCYWNrCiAgICAgICAgICA8L2RlZXMtYnV0dG9uPgogICAgICAgICAgPGRlZXMtYnV0dG9uIHR5cGU9Imdob3N0Ij4KICAgICAgICAgICAgTmV4dAogICAgICAgICAgICA8ZGVlcy1pY29uIGljb249ImZhOmNhcmV0UmlnaHQiPjwvZGVlcy1pY29uPgogICAgICAgICAgPC9kZWVzLWJ1dHRvbj4KICAgICAgICA8L2Rpdj4KCiAgICAgICAgPGRpdiBjbGFzcz0iaWNvbi1yb3ciPgogICAgICAgICAgPGRlZXMtYnV0dG9uIHNpemU9Imljb24iIHR5cGU9ImRlZmF1bHQiPgogICAgICAgICAgICA8ZGVlcy1pY29uIGljb249ImZhOnBsdXMiPjwvZGVlcy1pY29uPgogICAgICAgICAgPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIDxkZWVzLWJ1dHRvbiBzaXplPSJpY29uIiB0eXBlPSJzZWNvbmRhcnkiPgogICAgICAgICAgICA8ZGVlcy1pY29uIGljb249ImZhOmdlYXIiPjwvZGVlcy1pY29uPgogICAgICAgICAgPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIDxkZWVzLWJ1dHRvbiBzaXplPSJpY29uIiB0eXBlPSJvdXRsaW5lIj4KICAgICAgICAgICAgPGRlZXMtaWNvbiBpY29uPSJsdWNpZGU6U2VhcmNoIj48L2RlZXMtaWNvbj4KICAgICAgICAgIDwvZGVlcy1idXR0b24+CiAgICAgICAgICA8ZGVlcy1idXR0b24gc2l6ZT0iaWNvbiIgdHlwZT0iZ2hvc3QiPgogICAgICAgICAgICA8ZGVlcy1pY29uIGljb249Imx1Y2lkZTpNb3JlVmVydGljYWwiPjwvZGVlcy1pY29uPgogICAgICAgICAgPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIDxkZWVzLWJ1dHRvbiBzaXplPSJpY29uIiB0eXBlPSJkZXN0cnVjdGl2ZSI+CiAgICAgICAgICAgIDxkZWVzLWljb24gaWNvbj0iZmE6dHJhc2giPjwvZGVlcy1pY29uPgogICAgICAgICAgPC9kZWVzLWJ1dHRvbj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgPC9kZWVzLWRlbW93cmFwcGVyPgoKICAgIDxkZWVzLWRlbW93cmFwcGVyIC5ydW5BZnRlclJlbmRlcj0ke2FzeW5jIGU9PntlLnF1ZXJ5U2VsZWN0b3JBbGwoImRlZXMtYnV0dG9uIikuZm9yRWFjaChyPT57ci5hZGRFdmVudExpc3RlbmVyKCJjbGlja2VkIiwoKT0+e2xldCBhPXIuZ2V0QXR0cmlidXRlKCJpY29uIil8fCJub25lIixpPXIuZ2V0QXR0cmlidXRlKCJpY29uUG9zaXRpb24iKXx8ImxlZnQiO2NvbnNvbGUubG9nKGBJY29uIHByb3BlcnR5IGJ1dHRvbjogaWNvbj0ke2F9LCBwb3NpdGlvbj0ke2l9YCl9KX0pfX0+CiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyI0LiBJY29ucyB2aWEgUHJvcGVydHkifSAuc3VidGl0bGU9JHsiU2ltcGxpZmllZCBpY29uIHN5bnRheCB1c2luZyB0aGUgaWNvbiBwcm9wZXJ0eSJ9PgogICAgICAgIDxkaXYgY2xhc3M9Imljb24tcm93Ij4KICAgICAgICAgIDxkZWVzLWJ1dHRvbiBpY29uPSJmYTpwbHVzIj5BZGQgSXRlbTwvZGVlcy1idXR0b24+CiAgICAgICAgICA8ZGVlcy1idXR0b24gdHlwZT0iZGVzdHJ1Y3RpdmUiIGljb249ImZhOnRyYXNoIj5EZWxldGU8L2RlZXMtYnV0dG9uPgogICAgICAgICAgPGRlZXMtYnV0dG9uIHR5cGU9Im91dGxpbmUiIGljb249Imx1Y2lkZTpEb3dubG9hZCI+RG93bmxvYWQ8L2RlZXMtYnV0dG9uPgogICAgICAgIDwvZGl2PgoKICAgICAgICA8ZGl2IGNsYXNzPSJpY29uLXJvdyI+CiAgICAgICAgICA8ZGVlcy1idXR0b24gdHlwZT0ic2Vjb25kYXJ5IiBzaXplPSJzbSIgaWNvbj0iZmE6Z2VhciI+U2V0dGluZ3M8L2RlZXMtYnV0dG9uPgogICAgICAgICAgPGRlZXMtYnV0dG9uIHR5cGU9Imdob3N0IiBpY29uPSJmYTpjYXJldExlZnQiPkJhY2s8L2RlZXMtYnV0dG9uPgogICAgICAgICAgPGRlZXMtYnV0dG9uIHR5cGU9Imdob3N0IiBpY29uPSJmYTpjYXJldFJpZ2h0IiBpY29uUG9zaXRpb249InJpZ2h0Ij5OZXh0PC9kZWVzLWJ1dHRvbj4KICAgICAgICA8L2Rpdj4KCiAgICAgICAgPGRpdiBjbGFzcz0iaWNvbi1yb3ciPgogICAgICAgICAgPGRlZXMtYnV0dG9uIHNpemU9Imljb24iIHR5cGU9ImRlZmF1bHQiIGljb249ImZhOnBsdXMiPjwvZGVlcy1idXR0b24+CiAgICAgICAgICA8ZGVlcy1idXR0b24gc2l6ZT0iaWNvbiIgdHlwZT0ic2Vjb25kYXJ5IiBpY29uPSJsdWNpZGU6U2V0dGluZ3MiPjwvZGVlcy1idXR0b24+CiAgICAgICAgICA8ZGVlcy1idXR0b24gc2l6ZT0iaWNvbiIgdHlwZT0ib3V0bGluZSIgaWNvbj0ibHVjaWRlOlNlYXJjaCI+PC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIDxkZWVzLWJ1dHRvbiBzaXplPSJpY29uIiB0eXBlPSJnaG9zdCIgaWNvbj0ibHVjaWRlOk1vcmVWZXJ0aWNhbCI+PC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIDxkZWVzLWJ1dHRvbiBzaXplPSJpY29uIiB0eXBlPSJkZXN0cnVjdGl2ZSIgaWNvbj0iZmE6dHJhc2giPjwvZGVlcy1idXR0b24+CiAgICAgICAgPC9kaXY+CgogICAgICAgIDxkaXYgc3R5bGU9Im1hcmdpbi10b3A6IDE2cHg7Ij4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNvZGUtc25pcHBldCI+CiAgICAgICAgICAgICZsdDtkZWVzLWJ1dHRvbiBpY29uPSJmYTpwbHVzIiZndDtBZGQgSXRlbSZsdDsvZGVlcy1idXR0b24mZ3Q7PGJyPgogICAgICAgICAgICAmbHQ7ZGVlcy1idXR0b24gaWNvbj0iZmE6Y2FyZXRSaWdodCIgaWNvblBvc2l0aW9uPSJyaWdodCImZ3Q7TmV4dCZsdDsvZGVlcy1idXR0b24mZ3Q7CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgPC9kZWVzLWRlbW93cmFwcGVyPgoKICAgIDxkZWVzLWRlbW93cmFwcGVyIC5ydW5BZnRlclJlbmRlcj0ke2FzeW5jIGU9PntsZXQgdD1lLnF1ZXJ5U2VsZWN0b3IoJ2RlZXMtYnV0dG9uW3N0YXR1cz0icGVuZGluZyJdJykscj1lLnF1ZXJ5U2VsZWN0b3IoJ2RlZXMtYnV0dG9uW3N0YXR1cz0ic3VjY2VzcyJdJyksYT1lLnF1ZXJ5U2VsZWN0b3IoJ2RlZXMtYnV0dG9uW3N0YXR1cz0iZXJyb3IiXScpO3QmJnNldFRpbWVvdXQoKCk9Pntjb25zb2xlLmxvZygiUGVuZGluZyBidXR0b24gaXMgc2hvd2luZyBsb2FkaW5nIHN0YXRlIil9LDFlMyksciYmci5hZGRFdmVudExpc3RlbmVyKCJjbGlja2VkIiwoKT0+e2NvbnNvbGUubG9nKCJTdWNjZXNzIHN0YXRlIGJ1dHRvbiBjbGlja2VkIil9KSxhJiZhLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrZWQiLCgpPT57Y29uc29sZS5sb2coIkVycm9yIHN0YXRlIGJ1dHRvbiBjbGlja2VkIil9KX19PgogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiNS4gQnV0dG9uIFN0YXRlcyJ9IC5zdWJ0aXRsZT0keyJEaWZmZXJlbnQgc3RhdGVzIHRvIGluZGljYXRlIGJ1dHRvbiBzdGF0dXMgYW5kIGxvYWRpbmcgY29uZGl0aW9ucyJ9PgogICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ncm91cCI+CiAgICAgICAgICA8ZGVlcy1idXR0b24gc3RhdHVzPSJub3JtYWwiPk5vcm1hbDwvZGVlcy1idXR0b24+CiAgICAgICAgICA8ZGVlcy1idXR0b24gc3RhdHVzPSJwZW5kaW5nIj5Qcm9jZXNzaW5nLi4uPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIDxkZWVzLWJ1dHRvbiBzdGF0dXM9InN1Y2Nlc3MiPlN1Y2Nlc3MhPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIDxkZWVzLWJ1dHRvbiBzdGF0dXM9ImVycm9yIj5FcnJvciE8L2RlZXMtYnV0dG9uPgogICAgICAgICAgPGRlZXMtYnV0dG9uIGRpc2FibGVkPkRpc2FibGVkPC9kZWVzLWJ1dHRvbj4KICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tZ3JvdXAiIHN0eWxlPSJtYXJnaW4tdG9wOiAxNnB4OyI+CiAgICAgICAgICA8ZGVlcy1idXR0b24gdHlwZT0ic2Vjb25kYXJ5IiBzdGF0dXM9InBlbmRpbmciIHNpemU9InNtIj5TbWFsbCBMb2FkaW5nPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIDxkZWVzLWJ1dHRvbiB0eXBlPSJvdXRsaW5lIiBzdGF0dXM9InBlbmRpbmciPkRlZmF1bHQgTG9hZGluZzwvZGVlcy1idXR0b24+CiAgICAgICAgICA8ZGVlcy1idXR0b24gdHlwZT0iZGVzdHJ1Y3RpdmUiIHN0YXR1cz0icGVuZGluZyIgc2l6ZT0ibGciPkxhcmdlIExvYWRpbmc8L2RlZXMtYnV0dG9uPgogICAgICAgIDwvZGl2PgogICAgICA8L2RlZXMtcGFuZWw+CiAgICA8L2RlZXMtZGVtb3dyYXBwZXI+CiAgICAKICAgIDxkZWVzLWRlbW93cmFwcGVyIC5ydW5BZnRlclJlbmRlcj0ke2FzeW5jIGU9PntsZXQgdD1lLnF1ZXJ5U2VsZWN0b3IoIiNjbGljay1vdXRwdXQiKSxyPWUucXVlcnlTZWxlY3RvcigiZGVlcy1idXR0b246Zmlyc3Qtb2YtdHlwZSIpLGE9ZS5xdWVyeVNlbGVjdG9yKCdkZWVzLWJ1dHRvblt0eXBlPSJzZWNvbmRhcnkiXScpLGk9ZS5xdWVyeVNlbGVjdG9yKCdkZWVzLWJ1dHRvblt0eXBlPSJkZXN0cnVjdGl2ZSJdJyk7ciYmdCYmci5hZGRFdmVudExpc3RlbmVyKCJjbGlja2VkIiwoKT0+e3QudGV4dENvbnRlbnQ9YENsaWNrZWQ6IERlZmF1bHQgYnV0dG9uIGF0ICR7bmV3IERhdGUoKS50b0xvY2FsZVRpbWVTdHJpbmcoKX1gfSksYSYmdCYmYS5hZGRFdmVudExpc3RlbmVyKCJjbGlja2VkIixvPT57dC50ZXh0Q29udGVudD1gQ2xpY2tlZDogU2Vjb25kYXJ5IGJ1dHRvbiB3aXRoIGRhdGE6ICR7by5kZXRhaWwuZGF0YX1gfSksaSYmdCYmaS5hZGRFdmVudExpc3RlbmVyKCJjbGlja2VkIixhc3luYygpPT57dC50ZXh0Q29udGVudD0iUHJvY2Vzc2luZy4uLiIsYXdhaXQgJHQucGx1Z2lucy5zbWFydGRlbGF5LmRlbGF5Rm9yKDJlMyksdC50ZXh0Q29udGVudD0iQWN0aW9uIGNvbXBsZXRlZCEifSl9fT4KICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IjYuIEV2ZW50IEhhbmRsaW5nIn0gLnN1YnRpdGxlPSR7IkludGVyYWN0aXZlIGV4YW1wbGVzIHdpdGggY2xpY2sgZXZlbnQgaGFuZGxpbmcifT4KICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tZ3JvdXAiPgogICAgICAgICAgPGRlZXMtYnV0dG9uPkNsaWNrIE1lPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIDxkZWVzLWJ1dHRvbiB0eXBlPSJzZWNvbmRhcnkiIC5ldmVudERldGFpbERhdGE9JHsiY3VzdG9tLWRhdGEtMTIzIn0+CiAgICAgICAgICAgIENsaWNrIHdpdGggRGF0YQogICAgICAgICAgPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIDxkZWVzLWJ1dHRvbiB0eXBlPSJkZXN0cnVjdGl2ZSI+QXN5bmMgQWN0aW9uPC9kZWVzLWJ1dHRvbj4KICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgICA8ZGl2IGlkPSJjbGljay1vdXRwdXQiIGNsYXNzPSJkZW1vLW91dHB1dCI+CiAgICAgICAgICA8ZW0+Q2xpY2sgYSBidXR0b24gdG8gc2VlIHRoZSByZXN1bHQuLi48L2VtPgogICAgICAgIDwvZGl2PgogICAgICA8L2RlZXMtcGFuZWw+CiAgICA8L2RlZXMtZGVtb3dyYXBwZXI+CiAgICAKICAgIDxkZWVzLWRlbW93cmFwcGVyIC5ydW5BZnRlclJlbmRlcj0ke2FzeW5jIGU9PntsZXQgdD1lLnF1ZXJ5U2VsZWN0b3IoImRlZXMtZm9ybSIpLHI9ZS5xdWVyeVNlbGVjdG9yKCIjZm9ybS1vdXRwdXQiKTt0JiZyJiZ0LmFkZEV2ZW50TGlzdGVuZXIoImZvcm1EYXRhIixvPT57ci5pbm5lckhUTUw9IjxzdHJvbmc+Rm9ybSBzdWJtaXR0ZWQgd2l0aCBkYXRhOjwvc3Ryb25nPjxicj4iK0pTT04uc3RyaW5naWZ5KG8uZGV0YWlsLmRhdGEsbnVsbCwyKX0pO2xldCBhPWUucXVlcnlTZWxlY3RvcignZGVlcy1idXR0b25bdHlwZT0ic2Vjb25kYXJ5Il0nKSxpPWUucXVlcnlTZWxlY3RvcignZGVlcy1idXR0b25bdHlwZT0iZ2hvc3QiXScpO2EmJmEuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2tlZCIsKCk9Pntjb25zb2xlLmxvZygiU2F2ZSBEcmFmdCBjbGlja2VkIil9KSxpJiZpLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrZWQiLCgpPT57Y29uc29sZS5sb2coIkNhbmNlbCBjbGlja2VkIil9KX19PgogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiNy4gRm9ybSBJbnRlZ3JhdGlvbiJ9IC5zdWJ0aXRsZT0keyJCdXR0b25zIHdvcmtpbmcgd2l0aGluIGZvcm1zIHdpdGggYXV0b21hdGljIHNwYWNpbmcifT4KICAgICAgICA8ZGVlcy1mb3JtPgogICAgICAgICAgPGRlZXMtaW5wdXQtdGV4dCBsYWJlbD0iTmFtZSIga2V5PSJuYW1lIiByZXF1aXJlZD48L2RlZXMtaW5wdXQtdGV4dD4KICAgICAgICAgIDxkZWVzLWlucHV0LXRleHQgbGFiZWw9IkVtYWlsIiBrZXk9ImVtYWlsIiB0eXBlPSJlbWFpbCIgcmVxdWlyZWQ+PC9kZWVzLWlucHV0LXRleHQ+CiAgICAgICAgICA8ZGVlcy1pbnB1dC10ZXh0IGxhYmVsPSJNZXNzYWdlIiBrZXk9Im1lc3NhZ2UiIGlzTXVsdGlsaW5lPjwvZGVlcy1pbnB1dC10ZXh0PgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1idXR0b24gdHlwZT0ic2Vjb25kYXJ5Ij5TYXZlIERyYWZ0PC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIDxkZWVzLWJ1dHRvbiB0eXBlPSJnaG9zdCI+Q2FuY2VsPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIDxkZWVzLWZvcm0tc3VibWl0PlN1Ym1pdCBGb3JtPC9kZWVzLWZvcm0tc3VibWl0PgogICAgICAgIDwvZGVlcy1mb3JtPgogICAgICAgIAogICAgICAgIDxkaXYgaWQ9ImZvcm0tb3V0cHV0IiBjbGFzcz0iZGVtby1vdXRwdXQiIHN0eWxlPSJ3aGl0ZS1zcGFjZTogcHJlLXdyYXA7Ij4KICAgICAgICAgIDxlbT5TdWJtaXQgdGhlIGZvcm0gdG8gc2VlIHRoZSBkYXRhLi4uPC9lbT4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgPC9kZWVzLWRlbW93cmFwcGVyPgogICAgCiAgICA8ZGVlcy1kZW1vd3JhcHBlciAucnVuQWZ0ZXJSZW5kZXI9JHthc3luYyBlPT57ZS5xdWVyeVNlbGVjdG9yQWxsKCJkZWVzLWJ1dHRvbiIpLmZvckVhY2gocj0+e2xldCBhPXIuZ2V0QXR0cmlidXRlKCJ0eXBlIik7YSYmY29uc29sZS5sb2coYExlZ2FjeSB0eXBlICIke2F9IiBpcyBzdXBwb3J0ZWQgZm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHlgKX0pfX0+CiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyI4LiBCYWNrd2FyZCBDb21wYXRpYmlsaXR5In0gLnN1YnRpdGxlPSR7Ik9sZCBidXR0b24gdHlwZXMgYXJlIGF1dG9tYXRpY2FsbHkgbWFwcGVkIHRvIG5ldyB2YXJpYW50cyJ9PgogICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ncm91cCI+CiAgICAgICAgICA8ZGVlcy1idXR0b24gdHlwZT0ibm9ybWFsIj5Ob3JtYWwg4oaSIERlZmF1bHQ8L2RlZXMtYnV0dG9uPgogICAgICAgICAgPGRlZXMtYnV0dG9uIHR5cGU9ImhpZ2hsaWdodGVkIj5IaWdobGlnaHRlZCDihpIgRGVzdHJ1Y3RpdmU8L2RlZXMtYnV0dG9uPgogICAgICAgICAgPGRlZXMtYnV0dG9uIHR5cGU9ImRpc2NyZWV0Ij5EaXNjcmVldCDihpIgT3V0bGluZTwvZGVlcy1idXR0b24+CiAgICAgICAgICA8ZGVlcy1idXR0b24gdHlwZT0iYmlnIj5CaWcg4oaSIExhcmdlIFNpemU8L2RlZXMtYnV0dG9uPgogICAgICAgIDwvZGl2PgogICAgICAgIAogICAgICAgIDxwIHN0eWxlPSJtYXJnaW4tdG9wOiAxNnB4OyBmb250LXNpemU6IDE0cHg7IGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNS40IDE2LjMlIDU2LjklKSIsImhzbCgyMTUgMjAuMiUgNTUuMSUpIil9OyI+CiAgICAgICAgICBUaGVzZSBsZWdhY3kgdHlwZSB2YWx1ZXMgYXJlIG1haW50YWluZWQgZm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgYnV0IHdlIHJlY29tbWVuZCB1c2luZyB0aGUgbmV3IHZhcmlhbnQgc3lzdGVtLgogICAgICAgIDwvcD4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgPC9kZWVzLWRlbW93cmFwcGVyPgogICAgCiAgICA8ZGVlcy1kZW1vd3JhcHBlciAucnVuQWZ0ZXJSZW5kZXI9JHthc3luYyBlPT57bGV0IHQ9ZS5xdWVyeVNlbGVjdG9yQWxsKCIudmVydGljYWwtZ3JvdXAiKVswXSxyPWUucXVlcnlTZWxlY3RvckFsbCgiLnZlcnRpY2FsLWdyb3VwIilbMV07dCYmdC5xdWVyeVNlbGVjdG9yQWxsKCJkZWVzLWJ1dHRvbiIpLmZvckVhY2goKGksbyk9PntpLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrZWQiLCgpPT57bGV0IG49WyJTYXZlIENoYW5nZXMiLCJEaXNjYXJkIiwiSGVscCJdW29dO2NvbnNvbGUubG9nKGBBY3Rpb24gZ3JvdXA6ICR7bn0gY2xpY2tlZGApfSl9KSxyJiZyLnF1ZXJ5U2VsZWN0b3JBbGwoImRlZXMtYnV0dG9uIikuZm9yRWFjaCgoaSxvKT0+e2kuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2tlZCIsKCk9PntsZXQgbj1bIkRlbGV0ZSBBY2NvdW50IiwiQXJjaGl2ZSBEYXRhIiwiTm90IEF2YWlsYWJsZSJdW29dO28hPT0yJiZjb25zb2xlLmxvZyhgRGFuZ2VyIHpvbmU6ICR7bn0gY2xpY2tlZGApfSl9KX19PgogICAgICA8ZGVlcy1wYW5lbCAudGl0bGU9JHsiOS4gQWR2YW5jZWQgRXhhbXBsZXMifSAuc3VidGl0bGU9JHsiQ29tcGxleCBidXR0b24gY29uZmlndXJhdGlvbnMgYW5kIHJlYWwtd29ybGQgdXNlIGNhc2VzIn0+CiAgICAgICAgPGRpdiBjbGFzcz0iaG9yaXpvbnRhbC1ncm91cCI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJ2ZXJ0aWNhbC1ncm91cCI+CiAgICAgICAgICAgIDxoNCBzdHlsZT0ibWFyZ2luOiAwIDAgOHB4IDA7IGZvbnQtc2l6ZTogMTRweDsgZm9udC13ZWlnaHQ6IDUwMDsiPkFjdGlvbiBHcm91cDwvaDQ+CiAgICAgICAgICAgIDxkZWVzLWJ1dHRvbiB0eXBlPSJkZWZhdWx0IiBzaXplPSJzbSI+CiAgICAgICAgICAgICAgPGRlZXMtaWNvbiBpY29uPSJsdWNpZGU6U2F2ZSI+PC9kZWVzLWljb24+CiAgICAgICAgICAgICAgU2F2ZSBDaGFuZ2VzCiAgICAgICAgICAgIDwvZGVlcy1idXR0b24+CiAgICAgICAgICAgIDxkZWVzLWJ1dHRvbiB0eXBlPSJzZWNvbmRhcnkiIHNpemU9InNtIj4KICAgICAgICAgICAgICA8ZGVlcy1pY29uIGljb249Imx1Y2lkZTpVbmRvMiI+PC9kZWVzLWljb24+CiAgICAgICAgICAgICAgRGlzY2FyZAogICAgICAgICAgICA8L2RlZXMtYnV0dG9uPgogICAgICAgICAgICA8ZGVlcy1idXR0b24gdHlwZT0iZ2hvc3QiIHNpemU9InNtIj4KICAgICAgICAgICAgICA8ZGVlcy1pY29uIGljb249Imx1Y2lkZTpIZWxwQ2lyY2xlIj48L2RlZXMtaWNvbj4KICAgICAgICAgICAgICBIZWxwCiAgICAgICAgICAgIDwvZGVlcy1idXR0b24+CiAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICA8ZGl2IGNsYXNzPSJ2ZXJ0aWNhbC1ncm91cCI+CiAgICAgICAgICAgIDxoNCBzdHlsZT0ibWFyZ2luOiAwIDAgOHB4IDA7IGZvbnQtc2l6ZTogMTRweDsgZm9udC13ZWlnaHQ6IDUwMDsiPkRhbmdlciBab25lPC9oND4KICAgICAgICAgICAgPGRlZXMtYnV0dG9uIHR5cGU9ImRlc3RydWN0aXZlIiBzaXplPSJzbSI+CiAgICAgICAgICAgICAgPGRlZXMtaWNvbiBpY29uPSJmYTp0cmFzaCI+PC9kZWVzLWljb24+CiAgICAgICAgICAgICAgRGVsZXRlIEFjY291bnQKICAgICAgICAgICAgPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgICAgPGRlZXMtYnV0dG9uIHR5cGU9Im91dGxpbmUiIHNpemU9InNtIj4KICAgICAgICAgICAgICA8ZGVlcy1pY29uIGljb249Imx1Y2lkZTpBcmNoaXZlIj48L2RlZXMtaWNvbj4KICAgICAgICAgICAgICBBcmNoaXZlIERhdGEKICAgICAgICAgICAgPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgICAgPGRlZXMtYnV0dG9uIHR5cGU9Imdob3N0IiBzaXplPSJzbSIgZGlzYWJsZWQ+CiAgICAgICAgICAgICAgPGRlZXMtaWNvbiBpY29uPSJsdWNpZGU6QmFuIj48L2RlZXMtaWNvbj4KICAgICAgICAgICAgICBOb3QgQXZhaWxhYmxlCiAgICAgICAgICAgIDwvZGVlcy1idXR0b24+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgICA8ZGl2IHN0eWxlPSJtYXJnaW4tdG9wOiAyNHB4OyI+CiAgICAgICAgICA8aDQgc3R5bGU9Im1hcmdpbjogMCAwIDhweCAwOyBmb250LXNpemU6IDE0cHg7IGZvbnQtd2VpZ2h0OiA1MDA7Ij5Db2RlIEV4YW1wbGU6PC9oND4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNvZGUtc25pcHBldCI+CiAgICAgICAgICAgICZsdDtkZWVzLWJ1dHRvbiB0eXBlPSJkZWZhdWx0IiBzaXplPSJzbSIgaWNvbj0ibHVjaWRlOlNhdmUiIEBjbGlja2VkPSJcJHtoYW5kbGVDbGlja30iJmd0Ozxicj4KICAgICAgICAgICAgJm5ic3A7Jm5ic3A7U2F2ZSBDaGFuZ2VzPGJyPgogICAgICAgICAgICAmbHQ7L2RlZXMtYnV0dG9uJmd0OwogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgIDwvZGVlcy1kZW1vd3JhcHBlcj4KICA8L2Rpdj4KYH0pO3ZhciBIcyxuaSxiUHIsbzM9bCgoKT0+e1NlKCk7ZXIoKTt4UHIoKTtvdCgpO0hzPWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sbmk9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LGJQcj0oKCk9PntsZXQgZT1bemUoImRlZXMtYnV0dG9uIildLHQscj1bXSxhLGk9RGUsbyxuPVtdLHM9W10sYyxkPVtdLGY9W10sdSxwPVtdLGg9W10sYix4PVtdLGc9W10sdix3PVtdLE09W10sRixDPVtdLGs9W10sTiwkPVtdLEk9W10sQix6PVtdLHk9W10sRSxfPVtdLFA9W10sVixIPVtdLFc9W107dmFyIGFlPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgVD10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHtyZWZsZWN0OiEwLGhhc0NoYW5nZWQoKXtyZXR1cm4hMH19KV0sYz1baigpXSx1PVtqKHt0eXBlOkJvb2xlYW4scmVmbGVjdDohMH0pXSxiPVtqKHt0eXBlOkJvb2xlYW59KV0sdj1baih7dHlwZTpTdHJpbmd9KV0sRj1baih7dHlwZTpTdHJpbmd9KV0sTj1baih7dHlwZTpTdHJpbmd9KV0sQj1baih7dHlwZTpCb29sZWFuLHJlZmxlY3Q6ITB9KV0sRT1baih7dHlwZTpTdHJpbmcscmVmbGVjdDohMH0pXSxWPVtqKHt0eXBlOlN0cmluZyxyZWZsZWN0OiEwfSldLEhzKHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToidGV4dCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Sj0+InRleHQiaW4gSixnZXQ6Sj0+Si50ZXh0LHNldDooSixmZSk9PntKLnRleHQ9ZmV9fSxtZXRhZGF0YTpUfSxuLHMpLEhzKHRoaXMsbnVsbCxjLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZXZlbnREZXRhaWxEYXRhIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpKPT4iZXZlbnREZXRhaWxEYXRhImluIEosZ2V0Oko9PkouZXZlbnREZXRhaWxEYXRhLHNldDooSixmZSk9PntKLmV2ZW50RGV0YWlsRGF0YT1mZX19LG1ldGFkYXRhOlR9LGQsZiksSHModGhpcyxudWxsLHUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJkaXNhYmxlZCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Sj0+ImRpc2FibGVkImluIEosZ2V0Oko9PkouZGlzYWJsZWQsc2V0OihKLGZlKT0+e0ouZGlzYWJsZWQ9ZmV9fSxtZXRhZGF0YTpUfSxwLGgpLEhzKHRoaXMsbnVsbCxiLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiaXNIaWRkZW4iLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOko9PiJpc0hpZGRlbiJpbiBKLGdldDpKPT5KLmlzSGlkZGVuLHNldDooSixmZSk9PntKLmlzSGlkZGVuPWZlfX0sbWV0YWRhdGE6VH0seCxnKSxIcyh0aGlzLG51bGwsdix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InR5cGUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOko9PiJ0eXBlImluIEosZ2V0Oko9PkoudHlwZSxzZXQ6KEosZmUpPT57Si50eXBlPWZlfX0sbWV0YWRhdGE6VH0sdyxNKSxIcyh0aGlzLG51bGwsRix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNpemUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOko9PiJzaXplImluIEosZ2V0Oko9Pkouc2l6ZSxzZXQ6KEosZmUpPT57Si5zaXplPWZlfX0sbWV0YWRhdGE6VH0sQyxrKSxIcyh0aGlzLG51bGwsTix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InN0YXR1cyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Sj0+InN0YXR1cyJpbiBKLGdldDpKPT5KLnN0YXR1cyxzZXQ6KEosZmUpPT57Si5zdGF0dXM9ZmV9fSxtZXRhZGF0YTpUfSwkLEkpLEhzKHRoaXMsbnVsbCxCLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiaW5zaWRlRm9ybSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Sj0+Imluc2lkZUZvcm0iaW4gSixnZXQ6Sj0+Si5pbnNpZGVGb3JtLHNldDooSixmZSk9PntKLmluc2lkZUZvcm09ZmV9fSxtZXRhZGF0YTpUfSx6LHkpLEhzKHRoaXMsbnVsbCxFLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiaWNvbiIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Sj0+Imljb24iaW4gSixnZXQ6Sj0+Si5pY29uLHNldDooSixmZSk9PntKLmljb249ZmV9fSxtZXRhZGF0YTpUfSxfLFApLEhzKHRoaXMsbnVsbCxWLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiaWNvblBvc2l0aW9uIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpKPT4iaWNvblBvc2l0aW9uImluIEosZ2V0Oko9PkouaWNvblBvc2l0aW9uLHNldDooSixmZSk9PntKLmljb25Qb3NpdGlvbj1mZX19LG1ldGFkYXRhOlR9LEgsVyksSHMobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6VH0sbnVsbCxyKSxhZT1hPXQudmFsdWUsVCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpUfSl9c3RhdGljIGRlbW89Z1ByO3N0YXRpYyBkZW1vR3JvdXBzPVsiQnV0dG9uIl07I2U9bmkodGhpcyxuLHZvaWQgMCk7Z2V0IHRleHQoKXtyZXR1cm4gdGhpcy4jZX1zZXQgdGV4dChUKXt0aGlzLiNlPVR9I3Q9KG5pKHRoaXMscyksbmkodGhpcyxkLHZvaWQgMCkpO2dldCBldmVudERldGFpbERhdGEoKXtyZXR1cm4gdGhpcy4jdH1zZXQgZXZlbnREZXRhaWxEYXRhKFQpe3RoaXMuI3Q9VH0jcj0obmkodGhpcyxmKSxuaSh0aGlzLHAsITEpKTtnZXQgZGlzYWJsZWQoKXtyZXR1cm4gdGhpcy4jcn1zZXQgZGlzYWJsZWQoVCl7dGhpcy4jcj1UfSNhPShuaSh0aGlzLGgpLG5pKHRoaXMseCwhMSkpO2dldCBpc0hpZGRlbigpe3JldHVybiB0aGlzLiNhfXNldCBpc0hpZGRlbihUKXt0aGlzLiNhPVR9I2k9KG5pKHRoaXMsZyksbmkodGhpcyx3LCJkZWZhdWx0IikpO2dldCB0eXBlKCl7cmV0dXJuIHRoaXMuI2l9c2V0IHR5cGUoVCl7dGhpcy4jaT1UfSNvPShuaSh0aGlzLE0pLG5pKHRoaXMsQywiZGVmYXVsdCIpKTtnZXQgc2l6ZSgpe3JldHVybiB0aGlzLiNvfXNldCBzaXplKFQpe3RoaXMuI289VH0jbj0obmkodGhpcyxrKSxuaSh0aGlzLCQsIm5vcm1hbCIpKTtnZXQgc3RhdHVzKCl7cmV0dXJuIHRoaXMuI259c2V0IHN0YXR1cyhUKXt0aGlzLiNuPVR9I3M9KG5pKHRoaXMsSSksbmkodGhpcyx6LCExKSk7Z2V0IGluc2lkZUZvcm0oKXtyZXR1cm4gdGhpcy4jc31zZXQgaW5zaWRlRm9ybShUKXt0aGlzLiNzPVR9I2w9KG5pKHRoaXMseSksbmkodGhpcyxfLHZvaWQgMCkpO2dldCBpY29uKCl7cmV0dXJuIHRoaXMuI2x9c2V0IGljb24oVCl7dGhpcy4jbD1UfSNjPShuaSh0aGlzLFApLG5pKHRoaXMsSCwibGVmdCIpKTtnZXQgaWNvblBvc2l0aW9uKCl7cmV0dXJuIHRoaXMuI2N9c2V0IGljb25Qb3NpdGlvbihUKXt0aGlzLiNjPVR9Y29uc3RydWN0b3IoKXtzdXBlcigpLG5pKHRoaXMsVyl9YXN5bmMgY29ubmVjdGVkQ2FsbGJhY2soKXthd2FpdCBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpLCF0aGlzLmluc2lkZUZvcm0mJnRoaXMuY2xvc2VzdCgiZGVlcy1mb3JtIikmJih0aGlzLmluc2lkZUZvcm09ITApfXN0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgLyogVE9ETzogTWlncmF0ZSBoYXJkY29kZWQgdmFsdWVzIHRvIC0tZGVlcy0qIENTUyB2YXJpYWJsZXMgKi8KICAgICAgOmhvc3QgewogICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0OwogICAgICB9CiAgICAgIDpob3N0KFtoaWRkZW5dKSB7CiAgICAgICAgZGlzcGxheTogbm9uZTsKICAgICAgfQoKICAgICAgLyogRm9ybSBzcGFjaW5nIHN0eWxlcyAqLwogICAgICA6aG9zdChbaW5zaWRlLWZvcm1dKSB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDsKICAgICAgfQogICAgICAKICAgICAgOmhvc3QoW2luc2lkZS1mb3JtXTpsYXN0LWNoaWxkKSB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsKICAgICAgfQogICAgICAKICAgICAgZGVlcy1mb3JtW2hvcml6b250YWwtbGF5b3V0XSA6aG9zdChbaW5zaWRlLWZvcm1dKSB7CiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgICAgIG1hcmdpbi1yaWdodDogMTZweDsKICAgICAgICBtYXJnaW4tYm90dG9tOiAwOwogICAgICB9CiAgICAgIAogICAgICBkZWVzLWZvcm1baG9yaXpvbnRhbC1sYXlvdXRdIDpob3N0KFtpbnNpZGUtZm9ybV06bGFzdC1jaGlsZCkgewogICAgICAgIG1hcmdpbi1yaWdodDogMDsKICAgICAgfQoKICAgICAgLmJ1dHRvbiB7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgICAgb3V0bGluZTogbm9uZTsKICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTsKICAgICAgICBnYXA6IDhweDsKICAgICAgfQoKICAgICAgLyogU2l6ZSB2YXJpYW50cyAqLwogICAgICAuYnV0dG9uLnNpemUtZGVmYXVsdCB7CiAgICAgICAgaGVpZ2h0OiAzNnB4OwogICAgICAgIHBhZGRpbmc6IDAgMTZweDsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgIH0KCiAgICAgIC5idXR0b24uc2l6ZS1zbSB7CiAgICAgICAgaGVpZ2h0OiAzMnB4OwogICAgICAgIHBhZGRpbmc6IDAgMTJweDsKICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgIH0KCiAgICAgIC5idXR0b24uc2l6ZS1sZyB7CiAgICAgICAgaGVpZ2h0OiA0NHB4OwogICAgICAgIHBhZGRpbmc6IDAgMjRweDsKICAgICAgICBmb250LXNpemU6IDE2cHg7CiAgICAgIH0KCiAgICAgIC5idXR0b24uc2l6ZS1pY29uIHsKICAgICAgICBoZWlnaHQ6IDM2cHg7CiAgICAgICAgd2lkdGg6IDM2cHg7CiAgICAgICAgcGFkZGluZzogMDsKICAgICAgfQoKICAgICAgLyogRGVmYXVsdCB2YXJpYW50ICovCiAgICAgIC5idXR0b24uZGVmYXVsdCB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDEwMCUpIiwiaHNsKDIxNSAyMC4yJSAxMS44JSkiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE1LjMgMjUlIDguOCUpIiwiaHNsKDIxMCA0MCUgOTglKSIpfTsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDIxNC4zIDMxLjglIDkxLjQlKSIsImhzbCgyMTUgMjAuMiUgMTYuOCUpIil9OwogICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDJweCAwIHJnYigwIDAgMCAvIDAuMDUpOwogICAgICB9CgogICAgICAuYnV0dG9uLmRlZmF1bHQ6aG92ZXI6bm90KC5kaXNhYmxlZCkgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjEwIDQwJSA5Ni4xJSkiLCJoc2woMjE1IDIwLjIlIDEwLjIlKSIpfTsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE0LjMgMzEuOCUgODUlKSIsImhzbCgyMTUgMjAuMiUgMjAlKSIpfTsKICAgICAgfQoKICAgICAgLmJ1dHRvbi5kZWZhdWx0OmFjdGl2ZTpub3QoLmRpc2FibGVkKSB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTQuMyAzMS44JSA5MS40JSkiLCJoc2woMjE1IDIwLjIlIDklKSIpfTsKICAgICAgfQoKICAgICAgLyogRGVzdHJ1Y3RpdmUgdmFyaWFudCAqLwogICAgICAuYnV0dG9uLmRlc3RydWN0aXZlIHsKICAgICAgICBiYWNrZ3JvdW5kOiBoc2woMCA4NC4yJSA2MC4yJSk7CiAgICAgICAgY29sb3I6IGhzbCgwIDAlIDk4JSk7CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7CiAgICAgIH0KCiAgICAgIC5idXR0b24uZGVzdHJ1Y3RpdmU6aG92ZXI6bm90KC5kaXNhYmxlZCkgewogICAgICAgIGJhY2tncm91bmQ6IGhzbCgwIDg0LjIlIDU2LjIlKTsKICAgICAgfQoKICAgICAgLmJ1dHRvbi5kZXN0cnVjdGl2ZTphY3RpdmU6bm90KC5kaXNhYmxlZCkgewogICAgICAgIGJhY2tncm91bmQ6IGhzbCgwIDg0LjIlIDUyLjIlKTsKICAgICAgfQoKICAgICAgLyogT3V0bGluZSB2YXJpYW50ICovCiAgICAgIC5idXR0b24ub3V0bGluZSB7CiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE1LjMgMjUlIDguOCUpIiwiaHNsKDIxMCA0MCUgOTglKSIpfTsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDIxNC4zIDMxLjglIDkxLjQlKSIsImhzbCgyMTUgMjAuMiUgMjEuOCUpIil9OwogICAgICB9CgogICAgICAuYnV0dG9uLm91dGxpbmU6aG92ZXI6bm90KC5kaXNhYmxlZCkgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjEwIDQwJSA5Ni4xJSkiLCJoc2woMjE1IDIwLjIlIDE2LjglKSIpfTsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE0LjMgMzEuOCUgODUlKSIsImhzbCgyMTUgMjAuMiUgMjYuOCUpIil9OwogICAgICB9CgogICAgICAuYnV0dG9uLm91dGxpbmU6YWN0aXZlOm5vdCguZGlzYWJsZWQpIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDIxNC4zIDMxLjglIDkxLjQlKSIsImhzbCgyMTUgMjAuMiUgMTMuOCUpIil9OwogICAgICB9CgogICAgICAvKiBTZWNvbmRhcnkgdmFyaWFudCAqLwogICAgICAuYnV0dG9uLnNlY29uZGFyeSB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTAgNDAlIDk2LjElKSIsImhzbCgyMTUgMjAuMiUgMTYuOCUpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNS4zIDI1JSA4LjglKSIsImhzbCgyMTAgNDAlIDk4JSkiKX07CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7CiAgICAgIH0KCiAgICAgIC5idXR0b24uc2Vjb25kYXJ5OmhvdmVyOm5vdCguZGlzYWJsZWQpIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDIxNC4zIDMxLjglIDkxLjQlKSIsImhzbCgyMTUgMjAuMiUgMTMuOCUpIil9OwogICAgICB9CgogICAgICAuYnV0dG9uLnNlY29uZGFyeTphY3RpdmU6bm90KC5kaXNhYmxlZCkgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjE0LjMgMzEuOCUgODUlKSIsImhzbCgyMTUgMjAuMiUgMTEuOCUpIil9OwogICAgICB9CgogICAgICAvKiBHaG9zdCB2YXJpYW50ICovCiAgICAgIC5idXR0b24uZ2hvc3QgewogICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNS4zIDI1JSA4LjglKSIsImhzbCgyMTAgNDAlIDk4JSkiKX07CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7CiAgICAgIH0KCiAgICAgIC5idXR0b24uZ2hvc3Q6aG92ZXI6bm90KC5kaXNhYmxlZCkgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjEwIDQwJSA5Ni4xJSkiLCJoc2woMjE1IDIwLjIlIDE2LjglKSIpfTsKICAgICAgfQoKICAgICAgLmJ1dHRvbi5naG9zdDphY3RpdmU6bm90KC5kaXNhYmxlZCkgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjE0LjMgMzEuOCUgOTEuNCUpIiwiaHNsKDIxNSAyMC4yJSAxMy44JSkiKX07CiAgICAgIH0KCiAgICAgIC8qIExpbmsgdmFyaWFudCAqLwogICAgICAuYnV0dG9uLmxpbmsgewogICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIyMi4yIDQ3LjQlIDUxLjIlKSIsImhzbCgyMTMuMSA5My45JSA2Ny44JSkiKX07CiAgICAgICAgYm9yZGVyOiBub25lOwogICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOwogICAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogdHJhbnNwYXJlbnQ7CiAgICAgICAgaGVpZ2h0OiBhdXRvOwogICAgICAgIHBhZGRpbmc6IDA7CiAgICAgIH0KCiAgICAgIC5idXR0b24ubGluazpob3Zlcjpub3QoLmRpc2FibGVkKSB7CiAgICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBjdXJyZW50Q29sb3I7CiAgICAgIH0KCiAgICAgIC8qIFN0YXR1cyBzdGF0ZXMgKi8KICAgICAgLmJ1dHRvbi5wZW5kaW5nLAogICAgICAuYnV0dG9uLnN1Y2Nlc3MsCiAgICAgIC5idXR0b24uZXJyb3IgewogICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgICAgIHBhZGRpbmctbGVmdDogMzZweDsgLyogU3BhY2UgZm9yIHNwaW5uZXIgKi8KICAgICAgfQogICAgICAKICAgICAgLmJ1dHRvbi5zaXplLXNtLnBlbmRpbmcsCiAgICAgIC5idXR0b24uc2l6ZS1zbS5zdWNjZXNzLAogICAgICAuYnV0dG9uLnNpemUtc20uZXJyb3IgewogICAgICAgIHBhZGRpbmctbGVmdDogMzJweDsKICAgICAgfQogICAgICAKICAgICAgLmJ1dHRvbi5zaXplLWxnLnBlbmRpbmcsCiAgICAgIC5idXR0b24uc2l6ZS1sZy5zdWNjZXNzLAogICAgICAuYnV0dG9uLnNpemUtbGcuZXJyb3IgewogICAgICAgIHBhZGRpbmctbGVmdDogNDRweDsKICAgICAgfQoKICAgICAgLmJ1dHRvbi5wZW5kaW5nIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDIyMi4yIDQ3LjQlIDUxLjIlKSIsImhzbCgyMTMuMSA5My45JSA2Ny44JSAvIDAuMikiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAxMDAlKSIsImhzbCgyMTMuMSA5My45JSA2Ny44JSkiKX07CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7CiAgICAgIH0KCiAgICAgIC5idXR0b24uc3VjY2VzcyB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgxNDIuMSA3Ni4yJSAzNi4zJSkiLCJoc2woMTQyLjEgNzAuNiUgNDUuMyUgLyAwLjIpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTAwJSkiLCJoc2woMTQyLjEgNzAuNiUgNDUuMyUpIil9OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OwogICAgICB9CgogICAgICAuYnV0dG9uLmVycm9yIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgODQuMiUgNjAuMiUpIiwiaHNsKDAgNjIuOCUgNzAuNiUgLyAwLjIpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTAwJSkiLCJoc2woMCA2Mi44JSA3MC42JSkiKX07CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7CiAgICAgIH0KCiAgICAgIC8qIERpc2FibGVkIHN0YXRlICovCiAgICAgIC5idXR0b24uZGlzYWJsZWQgewogICAgICAgIG9wYWNpdHk6IDAuNTsKICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOwogICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgICB9CgogICAgICAvKiBIaWRkZW4gc3RhdGUgKi8KICAgICAgLmJ1dHRvbi5oaWRkZW4gewogICAgICAgIGRpc3BsYXk6IG5vbmU7CiAgICAgIH0KCiAgICAgIC8qIEZvY3VzIHN0YXRlICovCiAgICAgIC5idXR0b246Zm9jdXMtdmlzaWJsZSB7CiAgICAgICAgb3V0bGluZTogMnB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMjIyLjIgNDcuNCUgNTEuMiUpIiwiaHNsKDIxMy4xIDkzLjklIDY3LjglKSIpfTsKICAgICAgICBvdXRsaW5lLW9mZnNldDogMnB4OwogICAgICB9CgogICAgICAvKiBMb2FkaW5nIHNwaW5uZXIgKi8KICAgICAgZGVlcy1zcGlubmVyIHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgbGVmdDogMTBweDsKICAgICAgICB3aWR0aDogMTZweDsKICAgICAgICBoZWlnaHQ6IDE2cHg7CiAgICAgIH0KICAgICAgCiAgICAgIC5idXR0b24uc2l6ZS1zbSBkZWVzLXNwaW5uZXIgewogICAgICAgIGxlZnQ6IDhweDsKICAgICAgICB3aWR0aDogMTRweDsKICAgICAgICBoZWlnaHQ6IDE0cHg7CiAgICAgIH0KICAgICAgCiAgICAgIC5idXR0b24uc2l6ZS1sZyBkZWVzLXNwaW5uZXIgewogICAgICAgIGxlZnQ6IDE0cHg7CiAgICAgICAgd2lkdGg6IDE4cHg7CiAgICAgICAgaGVpZ2h0OiAxOHB4OwogICAgICB9CiAgICAgIAogICAgICAvKiBJY29uIHNpemluZyB3aXRoaW4gYnV0dG9ucyAqLwogICAgICAuYnV0dG9uIGRlZXMtaWNvbiB7CiAgICAgICAgd2lkdGg6IDE2cHg7CiAgICAgICAgaGVpZ2h0OiAxNnB4OwogICAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgICB9CiAgICAgIAogICAgICAuYnV0dG9uLnNpemUtc20gZGVlcy1pY29uIHsKICAgICAgICB3aWR0aDogMTRweDsKICAgICAgICBoZWlnaHQ6IDE0cHg7CiAgICAgIH0KICAgICAgCiAgICAgIC5idXR0b24uc2l6ZS1sZyBkZWVzLWljb24gewogICAgICAgIHdpZHRoOiAxOHB4OwogICAgICAgIGhlaWdodDogMThweDsKICAgICAgfQoKICAgICAgLyogVGV4dCBhbGlnbm1lbnQgKi8KICAgICAgLnRleHRib3ggewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgfQoKICAgIGBdO2V4dHJhY3RMaWdodERvbSgpe2xldCBUPXRoaXMucXVlcnlTZWxlY3RvcigiZGVlcy1pY29uIiksSj1BcnJheS5mcm9tKHRoaXMuY2hpbGROb2RlcykuZmlsdGVyKGZlPT5mZS5ub2RlVHlwZT09PU5vZGUuVEVYVF9OT0RFKS5tYXAoZmU9PmZlLnRleHRDb250ZW50Py50cmltKCkpLmZpbHRlcihCb29sZWFuKS5qb2luKCIgIik7aWYoSiYmIXRoaXMudGV4dCYmKHRoaXMudGV4dD1KKSxUKXtsZXQgZmU9VC5pY29ufHxULmdldEF0dHJpYnV0ZSgiaWNvbiIpfHwoVC5pY29uRkE/YGZhOiR7VC5pY29uRkF9YDpudWxsKTtpZihmZSl7bGV0IEw9QXJyYXkuZnJvbSh0aGlzLmNoaWxkTm9kZXMpLFE9TC5pbmRleE9mKFQpLGtlPUwuZmlsdGVyKEc9Pkcubm9kZVR5cGU9PT1Ob2RlLlRFWFRfTk9ERSYmRy50ZXh0Q29udGVudD8udHJpbSgpKTtpZihrZS5sZW5ndGg+MCl7bGV0IEc9TC5pbmRleE9mKGtlWzBdKTt0aGlzLmljb25Qb3NpdGlvbj1RPEc/ImxlZnQiOiJyaWdodCJ9dGhpcy5pY29uPWZlfVQucmVtb3ZlKCl9dGhpcy5pbm5lckhUTUw9IiJ9cmVuZGVyKCl7bGV0IEo9e25vcm1hbDoiZGVmYXVsdCIsaGlnaGxpZ2h0ZWQ6ImRlc3RydWN0aXZlIixkaXNjcmVldDoib3V0bGluZSIsYmlnOiJkZWZhdWx0In1bdGhpcy50eXBlXXx8dGhpcy50eXBlLGZlPXRoaXMudHlwZT09PSJiaWciPyJsZyI6dGhpcy5zaXplLEw9dGhpcy5pY29uUG9zaXRpb249PT0ibGVmdCImJnRoaXMuaWNvbj9TYDxkZWVzLWljb24gLmljb249JHt0aGlzLmljb259PjwvZGVlcy1pY29uPmA6IiIsUT10aGlzLmljb25Qb3NpdGlvbj09PSJyaWdodCImJnRoaXMuaWNvbj9TYDxkZWVzLWljb24gLmljb249JHt0aGlzLmljb259PjwvZGVlcy1pY29uPmA6IiIsa2U9ZmU9PT0iaWNvbiImJnRoaXMuaWNvbjtyZXR1cm4gU2AKICAgICAgPGRpdgogICAgICAgIGNsYXNzPSJidXR0b24gJHt0aGlzLmlzSGlkZGVuPyJoaWRkZW4iOiIifSAke0p9IHNpemUtJHtmZX0gJHt0aGlzLnN0YXR1c30gJHt0aGlzLmRpc2FibGVkPyJkaXNhYmxlZCI6IiJ9IgogICAgICAgIEBjbGljaz0iJHt0aGlzLmRpc3BhdGNoQ2xpY2t9IgogICAgICA+CiAgICAgICAgJHt0aGlzLnN0YXR1cz09PSJub3JtYWwiP1NgYDpTYAogICAgICAgICAgPGRlZXMtc3Bpbm5lcgogICAgICAgICAgICAuYm53PSR7ITB9CiAgICAgICAgICAgIHN0YXR1cz0iJHt0aGlzLnN0YXR1c30iCiAgICAgICAgICAgIHNpemU9IiR7ZmU9PT0ic20iPzE0OmZlPT09ImxnIj8xODoxNn0iCiAgICAgICAgICA+PC9kZWVzLXNwaW5uZXI+CiAgICAgICAgYH0KICAgICAgICAke0x9CiAgICAgICAgJHtrZT8iIjpTYDxkaXYgY2xhc3M9InRleHRib3giPiR7dGhpcy50ZXh0fHwiQnV0dG9uIn08L2Rpdj5gfQogICAgICAgICR7UX0KICAgICAgPC9kaXY+CiAgICBgfWFzeW5jIGRpc3BhdGNoQ2xpY2soKXt0aGlzLmRpc2FibGVkfHx0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJjbGlja2VkIix7ZGV0YWlsOntkYXRhOnRoaXMuZXZlbnREZXRhaWxEYXRhfSxidWJibGVzOiEwfSkpfWFzeW5jIGZpcnN0VXBkYXRlZCgpe3RoaXMuZXh0cmFjdExpZ2h0RG9tKCl9c3RhdGlje25pKGEscil9fTtyZXR1cm4gYWU9YX0pKCl9KTt2YXIgdTMsbW8sdlByLHRjZT1sKCgpPT57U0VyKCk7T2koKTt1bygpO1NlKCk7YnIoKTtiaSgpO28zKCk7b3QoKTt1Mz1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LG1vPWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSx2UHI9KCgpPT57bGV0IGU9W3dNZSgpLHplKCJkZWVzLXN0YXRzZ3JpZCIpXSx0LHI9W10sYSxpPURlLG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdLHUscD1bXSxoPVtdLGIseD1bXSxnPVtdLHYsdz1bXSxNPVtdLEYsQz1bXSxrPVtdLE4sJD1bXSxJPVtdO3ZhciBCPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgej10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHt0eXBlOkFycmF5fSldLGM9W2ooe3R5cGU6TnVtYmVyfSldLHU9W2ooe3R5cGU6TnVtYmVyfSldLGI9W2ooe3R5cGU6QXJyYXl9KV0sdj1bcmUoKV0sRj1bcmUoKV0sTj1bcmUoKV0sdTModGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ0aWxlcyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eT0+InRpbGVzImluIHksZ2V0Onk9PnkudGlsZXMsc2V0Oih5LEUpPT57eS50aWxlcz1FfX0sbWV0YWRhdGE6en0sbixzKSx1Myh0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im1pblRpbGVXaWR0aCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eT0+Im1pblRpbGVXaWR0aCJpbiB5LGdldDp5PT55Lm1pblRpbGVXaWR0aCxzZXQ6KHksRSk9Pnt5Lm1pblRpbGVXaWR0aD1FfX0sbWV0YWRhdGE6en0sZCxmKSx1Myh0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImdhcCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eT0+ImdhcCJpbiB5LGdldDp5PT55LmdhcCxzZXQ6KHksRSk9Pnt5LmdhcD1FfX0sbWV0YWRhdGE6en0scCxoKSx1Myh0aGlzLG51bGwsYix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImdyaWRBY3Rpb25zIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5PT4iZ3JpZEFjdGlvbnMiaW4geSxnZXQ6eT0+eS5ncmlkQWN0aW9ucyxzZXQ6KHksRSk9Pnt5LmdyaWRBY3Rpb25zPUV9fSxtZXRhZGF0YTp6fSx4LGcpLHUzKHRoaXMsbnVsbCx2LHtraW5kOiJhY2Nlc3NvciIsbmFtZToiY29udGV4dE1lbnVWaXNpYmxlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5PT4iY29udGV4dE1lbnVWaXNpYmxlImluIHksZ2V0Onk9PnkuY29udGV4dE1lbnVWaXNpYmxlLHNldDooeSxFKT0+e3kuY29udGV4dE1lbnVWaXNpYmxlPUV9fSxtZXRhZGF0YTp6fSx3LE0pLHUzKHRoaXMsbnVsbCxGLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiY29udGV4dE1lbnVQb3NpdGlvbiIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eT0+ImNvbnRleHRNZW51UG9zaXRpb24iaW4geSxnZXQ6eT0+eS5jb250ZXh0TWVudVBvc2l0aW9uLHNldDooeSxFKT0+e3kuY29udGV4dE1lbnVQb3NpdGlvbj1FfX0sbWV0YWRhdGE6en0sQyxrKSx1Myh0aGlzLG51bGwsTix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImNvbnRleHRNZW51QWN0aW9ucyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eT0+ImNvbnRleHRNZW51QWN0aW9ucyJpbiB5LGdldDp5PT55LmNvbnRleHRNZW51QWN0aW9ucyxzZXQ6KHksRSk9Pnt5LmNvbnRleHRNZW51QWN0aW9ucz1FfX0sbWV0YWRhdGE6en0sJCxJKSx1MyhudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTp6fSxudWxsLHIpLEI9YT10LnZhbHVlLHomJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6en0pfXN0YXRpYyBkZW1vPWtFcjtzdGF0aWMgZGVtb0dyb3Vwcz1bIkRhdGEgVmlldyJdOyNlPW1vKHRoaXMsbixbXSk7Z2V0IHRpbGVzKCl7cmV0dXJuIHRoaXMuI2V9c2V0IHRpbGVzKHope3RoaXMuI2U9en0jdD0obW8odGhpcyxzKSxtbyh0aGlzLGQsMjUwKSk7Z2V0IG1pblRpbGVXaWR0aCgpe3JldHVybiB0aGlzLiN0fXNldCBtaW5UaWxlV2lkdGgoeil7dGhpcy4jdD16fSNyPShtbyh0aGlzLGYpLG1vKHRoaXMscCwxNikpO2dldCBnYXAoKXtyZXR1cm4gdGhpcy4jcn1zZXQgZ2FwKHope3RoaXMuI3I9en0jYT0obW8odGhpcyxoKSxtbyh0aGlzLHgsW10pKTtnZXQgZ3JpZEFjdGlvbnMoKXtyZXR1cm4gdGhpcy4jYX1zZXQgZ3JpZEFjdGlvbnMoeil7dGhpcy4jYT16fSNpPShtbyh0aGlzLGcpLG1vKHRoaXMsdywhMSkpO2dldCBjb250ZXh0TWVudVZpc2libGUoKXtyZXR1cm4gdGhpcy4jaX1zZXQgY29udGV4dE1lbnVWaXNpYmxlKHope3RoaXMuI2k9en0jbz0obW8odGhpcyxNKSxtbyh0aGlzLEMse3g6MCx5OjB9KSk7Z2V0IGNvbnRleHRNZW51UG9zaXRpb24oKXtyZXR1cm4gdGhpcy4jb31zZXQgY29udGV4dE1lbnVQb3NpdGlvbih6KXt0aGlzLiNvPXp9I249KG1vKHRoaXMsayksbW8odGhpcywkLFtdKSk7Z2V0IGNvbnRleHRNZW51QWN0aW9ucygpe3JldHVybiB0aGlzLiNufXNldCBjb250ZXh0TWVudUFjdGlvbnMoeil7dGhpcy4jbj16fXN0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgLyogVE9ETzogTWlncmF0ZSBoYXJkY29kZWQgdmFsdWVzIHRvIC0tZGVlcy0qIENTUyB2YXJpYWJsZXMgKi8KICAgICAgOmhvc3QgewogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGZvbnQtZmFtaWx5OiAke1hyfTsKICAgICAgfQoKICAgICAgLyogQ1NTIFZhcmlhYmxlcyBmb3IgY29uc2lzdGVudCBzcGFjaW5nIGFuZCBzaXppbmcgKi8KICAgICAgOmhvc3QgewogICAgICAgIC0tZ3JpZC1nYXA6IDEycHg7CiAgICAgICAgLS10aWxlLXBhZGRpbmc6IDE2cHg7CiAgICAgICAgLS1oZWFkZXItc3BhY2luZzogMTJweDsKICAgICAgICAtLWNvbnRlbnQtbWluLWhlaWdodDogNDBweDsKICAgICAgICAtLXZhbHVlLWZvbnQtc2l6ZTogMjZweDsKICAgICAgICAtLXVuaXQtZm9udC1zaXplOiAxNHB4OwogICAgICAgIC0tbGFiZWwtZm9udC1zaXplOiAxMnB4OwogICAgICAgIC0tdGl0bGUtZm9udC1zaXplOiAxM3B4OwogICAgICAgIC0tZGVzY3JpcHRpb24tc3BhY2luZzogOHB4OwogICAgICAgIC0tYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgIC0tdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7CiAgICAgIH0KCiAgICAgIC8qIEdyaWQgTGF5b3V0ICovCiAgICAgIC5ncmlkLWhlYWRlciB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKHZhcigtLWdyaWQtZ2FwKSAqIDEuNSk7CiAgICAgICAgbWluLWhlaWdodDogNDBweDsKICAgICAgfQoKICAgICAgLmdyaWQtdGl0bGUgewogICAgICAgIGZvbnQtc2l6ZTogMTZweDsKICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzA5MDkwYiIsIiNmYWZhZmEiKX07CiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07CiAgICAgIH0KCiAgICAgIC5ncmlkLWFjdGlvbnMgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZ2FwOiA2cHg7CiAgICAgIH0KCiAgICAgIC5ncmlkLWFjdGlvbnMgZGVlcy1idXR0b24gewogICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tbGFiZWwtZm9udC1zaXplKTsKICAgICAgfQoKICAgICAgLnN0YXRzLWdyaWQgewogICAgICAgIGRpc3BsYXk6IGdyaWQ7CiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgke2ZyKDI1MCl9cHgsIDFmcikpOwogICAgICAgIGdhcDogJHtmcigxNil9cHg7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgIH0KCiAgICAgIC8qIFRpbGUgQmFzZSBTdHlsZXMgKi8KICAgICAgLnN0YXRzLXRpbGUgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZmZmZmZmIiwiIzA5MDkwYiIpfTsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2UwZTBlMCIsIiMyMDIwMjAiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7CiAgICAgICAgcGFkZGluZzogdmFyKC0tdGlsZS1wYWRkaW5nKTsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdHJhbnNpdGlvbi1kdXJhdGlvbikgZWFzZTsKICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICB9CgogICAgICAuc3RhdHMtdGlsZTpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmYWZhZmEiLCIjMGQwZDBkIil9OwogICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoIiNkMGQwZDAiLCIjMmEyYTJhIil9OwogICAgICB9CgogICAgICAuc3RhdHMtdGlsZS5jbGlja2FibGUgewogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgfQoKICAgICAgLnN0YXRzLXRpbGUuY2xpY2thYmxlOmhvdmVyIHsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7CiAgICAgICAgYm94LXNoYWRvdzogMCAycHggNnB4ICR7bS5iZFRoZW1lKCJyZ2JhKDAsMCwwLDAuMDMpIiwicmdiYSgwLDAsMCwwLjE1KSIpfTsKICAgICAgfQoKICAgICAgLyogVGlsZSBIZWFkZXIgKi8KICAgICAgLnRpbGUtaGVhZGVyIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsKICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1oZWFkZXItc3BhY2luZyk7CiAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgIH0KCiAgICAgIC50aWxlLXRpdGxlIHsKICAgICAgICBmb250LXNpemU6IHZhcigtLXRpdGxlLWZvbnQtc2l6ZSk7CiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuNCAxNi4zJSA0Ni45JSkiLCJoc2woMjE1IDIwLjIlIDY1LjElKSIpfTsKICAgICAgICBtYXJnaW46IDA7CiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07CiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjsKICAgICAgfQoKICAgICAgLnRpbGUtaWNvbiB7CiAgICAgICAgb3BhY2l0eTogMC43OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNS40IDE2LjMlIDQ2LjklKSIsImhzbCgyMTUgMjAuMiUgNjUuMSUpIil9OwogICAgICAgIGZvbnQtc2l6ZTogMTZweDsKICAgICAgICBmbGV4LXNocmluazogMDsKICAgICAgfQoKICAgICAgLyogVGlsZSBDb250ZW50ICovCiAgICAgIC50aWxlLWNvbnRlbnQgewogICAgICAgIG1pbi1oZWlnaHQ6IHZhcigtLWNvbnRlbnQtbWluLWhlaWdodCk7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGZsZXg6IDE7CiAgICAgIH0KCiAgICAgIC50aWxlLXZhbHVlIHsKICAgICAgICBmb250LXNpemU6IHZhcigtLXZhbHVlLWZvbnQtc2l6ZSk7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuMyAyNSUgOC44JSkiLCJoc2woMjEwIDQwJSA5OCUpIil9OwogICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7CiAgICAgICAgZ2FwOiA0cHg7CiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyNWVtOwogICAgICB9CgogICAgICAudGlsZS11bml0IHsKICAgICAgICBmb250LXNpemU6IHZhcigtLXVuaXQtZm9udC1zaXplKTsKICAgICAgICBmb250LXdlaWdodDogNDAwOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNS40IDE2LjMlIDQ2LjklKSIsImhzbCgyMTUgMjAuMiUgNjUuMSUpIil9OwogICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtOwogICAgICB9CgogICAgICAudGlsZS1kZXNjcmlwdGlvbiB7CiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1sYWJlbC1mb250LXNpemUpOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNS40IDE2LjMlIDU2LjklKSIsImhzbCgyMTUgMjAuMiUgNTUuMSUpIil9OwogICAgICAgIG1hcmdpbi10b3A6IHZhcigtLWRlc2NyaXB0aW9uLXNwYWNpbmcpOwogICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtOwogICAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgICB9CgogICAgICAvKiBHYXVnZSBTdHlsZXMgKi8KICAgICAgLmdhdWdlLXdyYXBwZXIgewogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgfQoKICAgICAgLmdhdWdlLWNvbnRhaW5lciB7CiAgICAgICAgd2lkdGg6IDEyMHB4OwogICAgICAgIGhlaWdodDogNzBweDsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgbWFyZ2luLXRvcDogLThweDsKICAgICAgfQoKICAgICAgLmdhdWdlLXN2ZyB7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICB9CgogICAgICAuZ2F1Z2UtYmFja2dyb3VuZCB7CiAgICAgICAgZmlsbDogbm9uZTsKICAgICAgICBzdHJva2U6ICR7bS5iZFRoZW1lKCIjZThlOGU4IiwiIzFhMWExYSIpfTsKICAgICAgICBzdHJva2Utd2lkdGg6IDY7CiAgICAgIH0KCiAgICAgIC5nYXVnZS1maWxsIHsKICAgICAgICBmaWxsOiBub25lOwogICAgICAgIHN0cm9rZS13aWR0aDogNjsKICAgICAgICBzdHJva2UtbGluZWNhcDogcm91bmQ7CiAgICAgICAgdHJhbnNpdGlvbjogc3Ryb2tlLWRhc2hvZmZzZXQgMC42cyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpOwogICAgICB9CgogICAgICAuZ2F1Z2UtdGV4dCB7CiAgICAgICAgZmlsbDogJHttLmJkVGhlbWUoImhzbCgyMTUuMyAyNSUgOC44JSkiLCJoc2woMjEwIDQwJSA5OCUpIil9OwogICAgICAgIGZvbnQtZmFtaWx5OiAke1hyfTsKICAgICAgICBmb250LXNpemU6IHZhcigtLXZhbHVlLWZvbnQtc2l6ZSk7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICB0ZXh0LWFuY2hvcjogbWlkZGxlOwogICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMjVlbTsKICAgICAgfQogICAgICAKICAgICAgLmdhdWdlLXVuaXQgewogICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdW5pdC1mb250LXNpemUpOwogICAgICAgIGZpbGw6ICR7bS5iZFRoZW1lKCJoc2woMjE1LjQgMTYuMyUgNDYuOSUpIiwiaHNsKDIxNSAyMC4yJSA2NS4xJSkiKX07CiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsKICAgICAgICBmb250LWZhbWlseTogJHtYcn07CiAgICAgIH0KCiAgICAgIC8qIFBlcmNlbnRhZ2UgU3R5bGVzICovCiAgICAgIC5wZXJjZW50YWdlLXdyYXBwZXIgewogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgZmxleDogMTsKICAgICAgfQoKICAgICAgLnBlcmNlbnRhZ2UtdmFsdWUgewogICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdmFsdWUtZm9udC1zaXplKTsKICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNS4zIDI1JSA4LjglKSIsImhzbCgyMTAgNDAlIDk4JSkiKX07CiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTsKICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDI1ZW07CiAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4OwogICAgICB9CgogICAgICAucGVyY2VudGFnZS1iYXIgewogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGhlaWdodDogNnB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZThlOGU4IiwiIzFhMWExYSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICBtYXJnaW4tdG9wOiBhdXRvOwogICAgICB9CgogICAgICAucGVyY2VudGFnZS1maWxsIHsKICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiMzMzMzMzMiLCIjZTBlMGUwIil9OwogICAgICAgIHRyYW5zaXRpb246IHdpZHRoIDAuNnMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTsKICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7CiAgICAgIH0KCiAgICAgIC8qIE11bHRpIFBlcmNlbnRhZ2UgU3R5bGVzICovCiAgICAgIC5tdWx0aS1wZXJjZW50YWdlLXdyYXBwZXIgewogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBmbGV4OiAxOwogICAgICB9CgogICAgICAubXVsdGktcGVyY2VudGFnZS1pdGVtcyB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGdhcDogMTJweDsKICAgICAgICBtYXJnaW4tdG9wOiBhdXRvOwogICAgICB9CgogICAgICAubXVsdGktcGVyY2VudGFnZS1pdGVtIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgZ2FwOiA0cHg7CiAgICAgIH0KCiAgICAgIC5tdWx0aS1wZXJjZW50YWdlLWhlYWRlciB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47CiAgICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lOwogICAgICB9CgogICAgICAubXVsdGktcGVyY2VudGFnZS1sYWJlbCB7CiAgICAgICAgZm9udC1zaXplOiAxMXB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE1LjQgMTYuMyUgNDYuOSUpIiwiaHNsKDIxNSAyMC4yJSA2NS4xJSkiKX07CiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07CiAgICAgIH0KCiAgICAgIC5tdWx0aS1wZXJjZW50YWdlLXZhbHVlIHsKICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuMyAyNSUgOC44JSkiLCJoc2woMjEwIDQwJSA5OCUpIil9OwogICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtOwogICAgICB9CgogICAgICAubXVsdGktcGVyY2VudGFnZS1iYXIgewogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGhlaWdodDogNHB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZThlOGU4IiwiIzFhMWExYSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgfQoKICAgICAgLm11bHRpLXBlcmNlbnRhZ2UtZmlsbCB7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjMzMzMzMzIiwiI2UwZTBlMCIpfTsKICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjZzIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7CiAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4OwogICAgICB9CgogICAgICAvKiBDUFUgQ29yZXMgU3R5bGVzICovCiAgICAgIC5jcHUtY29yZXMtd3JhcHBlciB7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGZsZXg6IDE7CiAgICAgICAgbWluLWhlaWdodDogODBweDsKICAgICAgfQoKICAgICAgLmNwdS1jb3Jlcy1oZWFkZXIgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lOwogICAgICAgIGdhcDogOHB4OwogICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7CiAgICAgIH0KCiAgICAgIC5jcHUtY29yZXMtdmFsdWUgewogICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdmFsdWUtZm9udC1zaXplKTsKICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNS4zIDI1JSA4LjglKSIsImhzbCgyMTAgNDAlIDk4JSkiKX07CiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTsKICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDI1ZW07CiAgICAgIH0KCiAgICAgIC5jcHUtY29yZXMtdW5pdCB7CiAgICAgICAgZm9udC1zaXplOiB2YXIoLS11bml0LWZvbnQtc2l6ZSk7CiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuNCAxNi4zJSA0Ni45JSkiLCJoc2woMjE1IDIwLjIlIDY1LjElKSIpfTsKICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTsKICAgICAgfQoKICAgICAgLmNwdS1jb3Jlcy1sYWJlbCB7CiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1sYWJlbC1mb250LXNpemUpOwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE1LjQgMTYuMyUgNTYuOSUpIiwiaHNsKDIxNSAyMC4yJSA1NS4xJSkiKX07CiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07CiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87CiAgICAgIH0KCiAgICAgIC5jcHUtY29yZXMtYmFycyB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7CiAgICAgICAgZ2FwOiAzcHg7CiAgICAgICAgZmxleDogMTsKICAgICAgICBtaW4taGVpZ2h0OiA2MHB4OwogICAgICAgIHBhZGRpbmc6IDRweCAwOwogICAgICB9CgogICAgICAuY3B1LWNvcmVzLWJhcnMuY2VudGVyZWQgewogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICB9CgogICAgICAuY3B1LWNvcmUtYmFyLWNvbnRhaW5lciB7CiAgICAgICAgZmxleDogMTsKICAgICAgICBtaW4td2lkdGg6IDZweDsKICAgICAgICBtYXgtd2lkdGg6IDI0cHg7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogNHB4OwogICAgICB9CgogICAgICAuY3B1LWNvcmUtYmFyLXdyYXBwZXIgewogICAgICAgIGZsZXg6IDE7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNlOGU4ZTgiLCIjMWExYTFhIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICBtaW4taGVpZ2h0OiA0MHB4OwogICAgICB9CgogICAgICAuY3B1LWNvcmUtYmFyLWZpbGwgewogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICBib3R0b206IDA7CiAgICAgICAgbGVmdDogMDsKICAgICAgICByaWdodDogMDsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiIzY2NjY2NiIsIiM4ODg4ODgiKX07CiAgICAgICAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuM3MgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKSwgYmFja2dyb3VuZC1jb2xvciAwLjNzIGVhc2U7CiAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4IDJweCAwIDA7CiAgICAgIH0KCiAgICAgIC5jcHUtY29yZS1iYXItZmlsbC5sb3cgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMTQyLjEgNzYuMiUgMzYuMyUpIiwiaHNsKDE0Mi4xIDcwLjYlIDQ1LjMlKSIpfTsKICAgICAgfQoKICAgICAgLmNwdS1jb3JlLWJhci1maWxsLm1lZGl1bSB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCg0NS40IDkzLjQlIDQ3LjUlKSIsImhzbCg0NS40IDkzLjQlIDQ3LjUlKSIpfTsKICAgICAgfQoKICAgICAgLmNwdS1jb3JlLWJhci1maWxsLmhpZ2ggewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCA4NC4yJSA2MC4yJSkiLCJoc2woMCA4NC4yJSA2MC4yJSkiKX07CiAgICAgIH0KCiAgICAgIC5jcHUtY29yZS1sYWJlbCB7CiAgICAgICAgZm9udC1zaXplOiA5cHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuNCAxNi4zJSA1Ni45JSkiLCJoc2woMjE1IDIwLjIlIDU1LjElKSIpfTsKICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOwogICAgICAgIG1heC13aWR0aDogMTAwJTsKICAgICAgfQoKICAgICAgLyogUGFydGl0aW9uIFN0eWxlcyAqLwogICAgICAucGFydGl0aW9uLXdyYXBwZXIgewogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBmbGV4OiAxOwogICAgICAgIGdhcDogOHB4OwogICAgICB9CgogICAgICAucGFydGl0aW9uLWhlYWRlciB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7CiAgICAgICAgZ2FwOiA4cHg7CiAgICAgIH0KCiAgICAgIC5wYXJ0aXRpb24tcGVyY2VudGFnZSB7CiAgICAgICAgZm9udC1zaXplOiB2YXIoLS12YWx1ZS1mb250LXNpemUpOwogICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE1LjMgMjUlIDguOCUpIiwiaHNsKDIxMCA0MCUgOTglKSIpfTsKICAgICAgICBsaW5lLWhlaWdodDogMS4xOwogICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMjVlbTsKICAgICAgfQoKICAgICAgLnBhcnRpdGlvbi1iYXIgewogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGhlaWdodDogNnB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZThlOGU4IiwiIzFhMWExYSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgfQoKICAgICAgLnBhcnRpdGlvbi1iYXItZmlsbCB7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjMzMzMzMzIiwiI2UwZTBlMCIpfTsKICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjZzIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7CiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4OwogICAgICB9CgogICAgICAucGFydGl0aW9uLWJhci1maWxsLndhcm5pbmcgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woNDUuNCA5My40JSA0Ny41JSkiLCJoc2woNDUuNCA5My40JSA0Ny41JSkiKX07CiAgICAgIH0KCiAgICAgIC5wYXJ0aXRpb24tYmFyLWZpbGwuY3JpdGljYWwgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCA4NC4yJSA2MC4yJSkiLCJoc2woMCA4NC4yJSA2MC4yJSkiKX07CiAgICAgIH0KCiAgICAgIC5wYXJ0aXRpb24tc3RhdHMgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgbWFyZ2luLXRvcDogYXV0bzsKICAgICAgfQoKICAgICAgLnBhcnRpdGlvbi1zdGF0IHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgZ2FwOiAycHg7CiAgICAgIH0KCiAgICAgIC5wYXJ0aXRpb24tc3RhdC1sYWJlbCB7CiAgICAgICAgZm9udC1zaXplOiAxMHB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE1LjQgMTYuMyUgNTYuOSUpIiwiaHNsKDIxNSAyMC4yJSA1NS4xJSkiKX07CiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsKICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wMmVtOwogICAgICB9CgogICAgICAucGFydGl0aW9uLXN0YXQtdmFsdWUgewogICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNS4zIDI1JSA4LjglKSIsImhzbCgyMTAgNDAlIDk4JSkiKX07CiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07CiAgICAgIH0KCiAgICAgIC5wYXJ0aXRpb24tbWV0YSB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogNnB4OwogICAgICAgIG1hcmdpbi10b3A6IDRweDsKICAgICAgfQoKICAgICAgLnBhcnRpdGlvbi1maWxlc3lzdGVtIHsKICAgICAgICBmb250LXNpemU6IDExcHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuNCAxNi4zJSA0Ni45JSkiLCJoc2woMjE1IDIwLjIlIDY1LjElKSIpfTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDIxMCA0MCUgOTYuMSUpIiwiaHNsKDIxNSAyMC4yJSAxNi44JSkiKX07CiAgICAgICAgcGFkZGluZzogMnB4IDZweDsKICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7CiAgICAgIH0KCiAgICAgIC5wYXJ0aXRpb24tbW91bnRwb2ludCB7CiAgICAgICAgZm9udC1zaXplOiAxMXB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNS40IDE2LjMlIDU2LjklKSIsImhzbCgyMTUgMjAuMiUgNTUuMSUpIil9OwogICAgICB9CgogICAgICAvKiBEaXNrIFN0eWxlcyAqLwogICAgICAuZGlzay13cmFwcGVyIHsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgZmxleDogMTsKICAgICAgICBnYXA6IDhweDsKICAgICAgfQoKICAgICAgLmRpc2stY2FwYWNpdHkgewogICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdmFsdWUtZm9udC1zaXplKTsKICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNS4zIDI1JSA4LjglKSIsImhzbCgyMTAgNDAlIDk4JSkiKX07CiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTsKICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDI1ZW07CiAgICAgIH0KCiAgICAgIC5kaXNrLW1vZGVsIHsKICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE1LjQgMTYuMyUgNDYuOSUpIiwiaHNsKDIxNSAyMC4yJSA2NS4xJSkiKX07CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogNnB4OwogICAgICB9CgogICAgICAuZGlzay10eXBlLWJhZGdlIHsKICAgICAgICBmb250LXNpemU6IDEwcHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNS40IDE2LjMlIDQ2LjklKSIsImhzbCgyMTUgMjAuMiUgNjUuMSUpIil9OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjEwIDQwJSA5Ni4xJSkiLCJoc2woMjE1IDIwLjIlIDE2LjglKSIpfTsKICAgICAgICBwYWRkaW5nOiAycHggNnB4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDsKICAgICAgfQoKICAgICAgLmRpc2stbWV0cmljcyB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGdhcDogOHB4OwogICAgICAgIG1hcmdpbi10b3A6IGF1dG87CiAgICAgIH0KCiAgICAgIC5kaXNrLWlvcHMgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDEycHg7CiAgICAgIH0KCiAgICAgIC5kaXNrLWlvcHMtaXRlbSB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7CiAgICAgICAgZ2FwOiA0cHg7CiAgICAgIH0KCiAgICAgIC5kaXNrLWlvcHMtbGFiZWwgewogICAgICAgIGZvbnQtc2l6ZTogMTBweDsKICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNS40IDE2LjMlIDU2LjklKSIsImhzbCgyMTUgMjAuMiUgNTUuMSUpIil9OwogICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7CiAgICAgIH0KCiAgICAgIC5kaXNrLWlvcHMtdmFsdWUgewogICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNS4zIDI1JSA4LjglKSIsImhzbCgyMTAgNDAlIDk4JSkiKX07CiAgICAgIH0KCiAgICAgIC5kaXNrLWhlYWx0aCB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGdhcDogNHB4OwogICAgICB9CgogICAgICAuZGlzay1oZWFsdGgtaGVhZGVyIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICAgICAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7CiAgICAgIH0KCiAgICAgIC5kaXNrLWhlYWx0aC1sYWJlbCB7CiAgICAgICAgZm9udC1zaXplOiAxMHB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE1LjQgMTYuMyUgNTYuOSUpIiwiaHNsKDIxNSAyMC4yJSA1NS4xJSkiKX07CiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsKICAgICAgfQoKICAgICAgLmRpc2staGVhbHRoLXZhbHVlIHsKICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuMyAyNSUgOC44JSkiLCJoc2woMjEwIDQwJSA5OCUpIil9OwogICAgICB9CgogICAgICAuZGlzay1oZWFsdGgtYmFyIHsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBoZWlnaHQ6IDRweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2U4ZThlOCIsIiMxYTFhMWEiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4OwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgIH0KCiAgICAgIC5kaXNrLWhlYWx0aC1maWxsIHsKICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggMC42cyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpOwogICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsKICAgICAgfQoKICAgICAgLmRpc2staGVhbHRoLWZpbGwuZ29vZCB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgxNDIuMSA3Ni4yJSAzNi4zJSkiLCJoc2woMTQyLjEgNzAuNiUgNDUuMyUpIil9OwogICAgICB9CgogICAgICAuZGlzay1oZWFsdGgtZmlsbC53YXJuaW5nIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDQ1LjQgOTMuNCUgNDcuNSUpIiwiaHNsKDQ1LjQgOTMuNCUgNDcuNSUpIil9OwogICAgICB9CgogICAgICAuZGlzay1oZWFsdGgtZmlsbC5jcml0aWNhbCB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDg0LjIlIDYwLjIlKSIsImhzbCgwIDg0LjIlIDYwLjIlKSIpfTsKICAgICAgfQoKICAgICAgLyogVHJlbmQgU3R5bGVzICovCiAgICAgIC50cmVuZC1jb250YWluZXIgewogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBnYXA6IDhweDsKICAgICAgICBmbGV4OiAxOwogICAgICB9CgogICAgICAudHJlbmQtaGVhZGVyIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTsKICAgICAgICBnYXA6IDhweDsKICAgICAgfQoKICAgICAgLnRyZW5kLXZhbHVlIHsKICAgICAgICBmb250LXNpemU6IHZhcigtLXZhbHVlLWZvbnQtc2l6ZSk7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuMyAyNSUgOC44JSkiLCJoc2woMjEwIDQwJSA5OCUpIil9OwogICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7CiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyNWVtOwogICAgICB9CgogICAgICAudHJlbmQtdW5pdCB7CiAgICAgICAgZm9udC1zaXplOiB2YXIoLS11bml0LWZvbnQtc2l6ZSk7CiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuNCAxNi4zJSA0Ni45JSkiLCJoc2woMjE1IDIwLjIlIDY1LjElKSIpfTsKICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTsKICAgICAgfQoKICAgICAgLnRyZW5kLWxhYmVsIHsKICAgICAgICBmb250LXNpemU6IHZhcigtLWxhYmVsLWZvbnQtc2l6ZSk7CiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuNCAxNi4zJSA1Ni45JSkiLCJoc2woMjE1IDIwLjIlIDU1LjElKSIpfTsKICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTsKICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsKICAgICAgfQoKICAgICAgLnRyZW5kLWdyYXBoIHsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBoZWlnaHQ6IDI4cHg7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIG1hcmdpbi10b3A6IGF1dG87CiAgICAgIH0KCiAgICAgIC50cmVuZC1zdmcgewogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgfQoKICAgICAgLnRyZW5kLWxpbmUgewogICAgICAgIGZpbGw6IG5vbmU7CiAgICAgICAgc3Ryb2tlOiAke20uYmRUaGVtZSgiIzk5OTk5OSIsIiM2NjY2NjYiKX07CiAgICAgICAgc3Ryb2tlLXdpZHRoOiAxLjU7CiAgICAgICAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDsKICAgICAgICBzdHJva2UtbGluZWNhcDogcm91bmQ7CiAgICAgIH0KCiAgICAgIC50cmVuZC1hcmVhIHsKICAgICAgICBmaWxsOiAke20uYmRUaGVtZSgicmdiYSgxNTAsIDE1MCwgMTUwLCAwLjA4KSIsInJnYmEoMTAwLCAxMDAsIDEwMCwgMC4wOCkiKX07CiAgICAgIH0KCiAgICAgIC8qIFRleHQgVmFsdWUgU3R5bGVzICovCiAgICAgIC50ZXh0LXZhbHVlIHsKICAgICAgICBmb250LXNpemU6IHZhcigtLXZhbHVlLWZvbnQtc2l6ZSk7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuMyAyNSUgOC44JSkiLCJoc2woMjEwIDQwJSA5OCUpIil9OwogICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7CiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyNWVtOwogICAgICB9CgogICAgICAvKiBDb250ZXh0IE1lbnUgKi8KICAgICAgZGVlcy1jb250ZXh0bWVudSB7CiAgICAgICAgcG9zaXRpb246IGZpeGVkOwogICAgICAgIHotaW5kZXg6IDEwMDA7CiAgICAgIH0KICAgIGAsbS5jc3NGb3JUYWJsZXQobGVgCiAgICAgIC5zdGF0cy1ncmlkIHsKICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpOwogICAgICB9CiAgICBgLGEpLG0uY3NzRm9yUGhhYmxldChsZWAKICAgICAgOmhvc3QgewogICAgICAgIC0tdGlsZS1wYWRkaW5nOiAxMnB4OwogICAgICAgIC0tdmFsdWUtZm9udC1zaXplOiAyMnB4OwogICAgICAgIC0tdGl0bGUtZm9udC1zaXplOiAxMnB4OwogICAgICAgIC0tZ3JpZC1nYXA6IDhweDsKICAgICAgfQogICAgICAuc3RhdHMtZ3JpZCB7CiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyMDBweCwgMWZyKSk7CiAgICAgICAgZ2FwOiA4cHg7CiAgICAgIH0KICAgICAgLnN0YXRzLXRpbGUgewogICAgICAgIGdyaWQtY29sdW1uOiBzcGFuIDEgIWltcG9ydGFudDsKICAgICAgfQogICAgYCxhKSxtLmNzc0ZvclBob25lKGxlYAogICAgICA6aG9zdCB7CiAgICAgICAgLS10aWxlLXBhZGRpbmc6IDEwcHg7CiAgICAgICAgLS12YWx1ZS1mb250LXNpemU6IDIwcHg7CiAgICAgICAgLS1oZWFkZXItc3BhY2luZzogOHB4OwogICAgICB9CiAgICAgIC5zdGF0cy1ncmlkIHsKICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjsKICAgICAgICBnYXA6IDZweDsKICAgICAgfQogICAgYCxhKV07Y29uc3RydWN0b3IoKXtzdXBlcigpLG1vKHRoaXMsSSl9cmVuZGVyKCl7cmV0dXJuIFNgCiAgICAgICR7dGhpcy5ncmlkQWN0aW9ucy5sZW5ndGg+MD9TYAogICAgICAgIDxkaXYgY2xhc3M9ImdyaWQtaGVhZGVyIj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImdyaWQtdGl0bGUiPjwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0iZ3JpZC1hY3Rpb25zIj4KICAgICAgICAgICAgJHt0aGlzLmdyaWRBY3Rpb25zLm1hcCh6PT5TYAogICAgICAgICAgICAgIDxkZWVzLWJ1dHRvbiAKICAgICAgICAgICAgICAgIEBjbGlja2VkPSR7KCk9PnRoaXMuaGFuZGxlR3JpZEFjdGlvbih6KX0KICAgICAgICAgICAgICAgIHR5cGU9Im91dGxpbmUiCiAgICAgICAgICAgICAgICBzaXplPSJzbSIKICAgICAgICAgICAgICA+CiAgICAgICAgICAgICAgICAke3ouaWNvbk5hbWU/U2A8ZGVlcy1pY29uIC5pY29uPSR7ei5pY29uTmFtZX0gc2l6ZT0ic21hbGwiPjwvZGVlcy1pY29uPmA6IiJ9CiAgICAgICAgICAgICAgICAke3oubmFtZX0KICAgICAgICAgICAgICA8L2RlZXMtYnV0dG9uPgogICAgICAgICAgICBgKX0KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICBgOiIifQogICAgICAKICAgICAgPGRpdiBjbGFzcz0ic3RhdHMtZ3JpZCIgc3R5bGU9ImdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoJHt0aGlzLm1pblRpbGVXaWR0aH1weCwgMWZyKSk7IGdhcDogJHt0aGlzLmdhcH1weDsiPgogICAgICAgICR7dGhpcy50aWxlcy5tYXAoej0+dGhpcy5yZW5kZXJUaWxlKHopKX0KICAgICAgPC9kaXY+CgogICAgICAke3RoaXMuY29udGV4dE1lbnVWaXNpYmxlP1NgCiAgICAgICAgPGRlZXMtY29udGV4dG1lbnUKICAgICAgICAgIC54PSR7dGhpcy5jb250ZXh0TWVudVBvc2l0aW9uLnh9CiAgICAgICAgICAueT0ke3RoaXMuY29udGV4dE1lbnVQb3NpdGlvbi55fQogICAgICAgICAgLm1lbnVJdGVtcz0ke3RoaXMuY29udGV4dE1lbnVBY3Rpb25zfQogICAgICAgICAgQGNsaWNrZWQ9JHsoKT0+dGhpcy5jb250ZXh0TWVudVZpc2libGU9ITF9CiAgICAgICAgPjwvZGVlcy1jb250ZXh0bWVudT4KICAgICAgYDoiIn0KICAgIGB9cmVuZGVyVGlsZSh6KXtsZXQgeT16LmFjdGlvbnMmJnouYWN0aW9ucy5sZW5ndGg+MCxFPXkmJnouYWN0aW9ucy5sZW5ndGg9PT0xLF89ei5jb2x1bW5TcGFuJiZ6LmNvbHVtblNwYW4+MT96LmNvbHVtblNwYW46dm9pZCAwO3JldHVybiBTYAogICAgICA8ZGl2CiAgICAgICAgY2xhc3M9InN0YXRzLXRpbGUgJHtFPyJjbGlja2FibGUiOiIifSIKICAgICAgICBzdHlsZT0iJHtfP2BncmlkLWNvbHVtbjogc3BhbiAke199YDoiIn0iCiAgICAgICAgQGNsaWNrPSR7RT8oKT0+dGhpcy5oYW5kbGVUaWxlQWN0aW9uKHouYWN0aW9uc1swXSx6KTp2b2lkIDB9CiAgICAgICAgQGNvbnRleHRtZW51PSR7eT9QPT50aGlzLnNob3dDb250ZXh0TWVudShQLHopOnZvaWQgMH0KICAgICAgPgogICAgICAgIDxkaXYgY2xhc3M9InRpbGUtaGVhZGVyIj4KICAgICAgICAgIDxoMyBjbGFzcz0idGlsZS10aXRsZSI+JHt6LnRpdGxlfTwvaDM+CiAgICAgICAgICAke3ouaWNvbj9TYAogICAgICAgICAgICA8ZGVlcy1pY29uIGNsYXNzPSJ0aWxlLWljb24iIC5pY29uPSR7ei5pY29ufSBzaXplPSJzbWFsbCI+PC9kZWVzLWljb24+CiAgICAgICAgICBgOiIifQogICAgICAgIDwvZGl2PgogICAgICAgIAogICAgICAgIDxkaXYgY2xhc3M9InRpbGUtY29udGVudCI+CiAgICAgICAgICAke3RoaXMucmVuZGVyVGlsZUNvbnRlbnQoeil9CiAgICAgICAgPC9kaXY+CiAgICAgICAgCiAgICAgICAgJHt6LmRlc2NyaXB0aW9uJiZ6LnR5cGUhPT0idHJlbmQiP1NgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aWxlLWRlc2NyaXB0aW9uIj4ke3ouZGVzY3JpcHRpb259PC9kaXY+CiAgICAgICAgYDoiIn0KICAgICAgPC9kaXY+CiAgICBgfXJlbmRlclRpbGVDb250ZW50KHope3N3aXRjaCh6LnR5cGUpe2Nhc2UibnVtYmVyIjpyZXR1cm4gU2AKICAgICAgICAgIDxkaXYgY2xhc3M9InRpbGUtdmFsdWUiIHN0eWxlPSIke3ouY29sb3I/YGNvbG9yOiAke3ouY29sb3J9YDoiIn0iPgogICAgICAgICAgICA8c3Bhbj4ke3oudmFsdWV9PC9zcGFuPgogICAgICAgICAgICAke3oudW5pdD9TYDxzcGFuIGNsYXNzPSJ0aWxlLXVuaXQiPiR7ei51bml0fTwvc3Bhbj5gOiIifQogICAgICAgICAgPC9kaXY+CiAgICAgICAgYDtjYXNlImdhdWdlIjpyZXR1cm4gdGhpcy5yZW5kZXJHYXVnZSh6KTtjYXNlInBlcmNlbnRhZ2UiOnJldHVybiB0aGlzLnJlbmRlclBlcmNlbnRhZ2Uoeik7Y2FzZSJ0cmVuZCI6cmV0dXJuIHRoaXMucmVuZGVyVHJlbmQoeik7Y2FzZSJtdWx0aVBlcmNlbnRhZ2UiOnJldHVybiB0aGlzLnJlbmRlck11bHRpUGVyY2VudGFnZSh6KTtjYXNlImNwdUNvcmVzIjpyZXR1cm4gdGhpcy5yZW5kZXJDcHVDb3Jlcyh6KTtjYXNlInBhcnRpdGlvbiI6cmV0dXJuIHRoaXMucmVuZGVyUGFydGl0aW9uKHopO2Nhc2UiZGlzayI6cmV0dXJuIHRoaXMucmVuZGVyRGlzayh6KTtjYXNlInRleHQiOnJldHVybiBTYAogICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC12YWx1ZSIgc3R5bGU9IiR7ei5jb2xvcj9gY29sb3I6ICR7ei5jb2xvcn1gOiIifSI+CiAgICAgICAgICAgICR7ei52YWx1ZX0KICAgICAgICAgIDwvZGl2PgogICAgICAgIGA7ZGVmYXVsdDpyZXR1cm4gU2A8ZGl2IGNsYXNzPSJ0aWxlLXZhbHVlIj4ke3oudmFsdWV9PC9kaXY+YH19cmVuZGVyR2F1Z2Uoeil7bGV0IHk9dHlwZW9mIHoudmFsdWU9PSJudW1iZXIiP3oudmFsdWU6cGFyc2VGbG9hdCh6LnZhbHVlKSxFPXouZ2F1Z2VPcHRpb25zfHx7bWluOjAsbWF4OjEwMH0sXz0oeS1FLm1pbikvKEUubWF4LUUubWluKSoxMDAsUD0xMjAsVj03MCxXPTYvMisyLGFlPTQwLFQ9UC8yLEo9Vi1XLGZlPVQtYWUsTD1KLFE9VCthZSxHPWBNICR7ZmV9ICR7TH0gQSAke2FlfSAke2FlfSAwIDAgMSAke1F9ICR7Sn1gLEE9TWF0aC5QSSphZSxEPUEtQSpfLzEwMCxSPXouY29sb3J8fG0uYmRUaGVtZSgiaHNsKDIxNS4zIDI1JSAyOC44JSkiLCJoc2woMjEwIDQwJSA3OCUpIik7aWYoRS50aHJlc2hvbGRzKXtsZXQgTz1bLi4uRS50aHJlc2hvbGRzXS5zb3J0KChZLHVlKT0+dWUudmFsdWUtWS52YWx1ZSk7Zm9yKGxldCBZIG9mIE8paWYoeT49WS52YWx1ZSl7Uj1ZLmNvbG9yO2JyZWFrfX1yZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0iZ2F1Z2Utd3JhcHBlciI+CiAgICAgICAgPGRpdiBjbGFzcz0iZ2F1Z2UtY29udGFpbmVyIj4KICAgICAgICAgIDxzdmcgY2xhc3M9ImdhdWdlLXN2ZyIgdmlld0JveD0iMCAwICR7UH0gJHtWfSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ieE1pZFlNaWQgbWVldCI+CiAgICAgICAgICAgIDwhLS0gQmFja2dyb3VuZCBhcmMgLS0+CiAgICAgICAgICAgIDxwYXRoCiAgICAgICAgICAgICAgY2xhc3M9ImdhdWdlLWJhY2tncm91bmQiCiAgICAgICAgICAgICAgZD0iJHtHfSIKICAgICAgICAgICAgLz4KICAgICAgICAgICAgPCEtLSBGaWxsZWQgYXJjIC0tPgogICAgICAgICAgICA8cGF0aAogICAgICAgICAgICAgIGNsYXNzPSJnYXVnZS1maWxsIgogICAgICAgICAgICAgIGQ9IiR7R30iCiAgICAgICAgICAgICAgc3Ryb2tlPSIke1J9IgogICAgICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk9IiR7QX0iCiAgICAgICAgICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ9IiR7RH0iCiAgICAgICAgICAgIC8+CiAgICAgICAgICAgIDwhLS0gVmFsdWUgdGV4dCAtLT4KICAgICAgICAgICAgPHRleHQgY2xhc3M9ImdhdWdlLXRleHQiIHg9IiR7VH0iIHk9IiR7Si04fSIgZG9taW5hbnQtYmFzZWxpbmU9Im1pZGRsZSI+CiAgICAgICAgICAgICAgPHRzcGFuPiR7eX08L3RzcGFuPiR7ei51bml0P1NgPHRzcGFuIGNsYXNzPSJnYXVnZS11bml0IiBkeD0iMiIgZHk9IjAiPiR7ei51bml0fTwvdHNwYW4+YDoiIn0KICAgICAgICAgICAgPC90ZXh0PgogICAgICAgICAgPC9zdmc+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgYH1yZW5kZXJQZXJjZW50YWdlKHope2xldCB5PXR5cGVvZiB6LnZhbHVlPT0ibnVtYmVyIj96LnZhbHVlOnBhcnNlRmxvYXQoei52YWx1ZSksRT1NYXRoLm1pbigxMDAsTWF0aC5tYXgoMCx5KSk7cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9InBlcmNlbnRhZ2Utd3JhcHBlciI+CiAgICAgICAgPGRpdiBjbGFzcz0icGVyY2VudGFnZS12YWx1ZSI+JHtFfSU8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJwZXJjZW50YWdlLWJhciI+CiAgICAgICAgICA8ZGl2IAogICAgICAgICAgICBjbGFzcz0icGVyY2VudGFnZS1maWxsIiAKICAgICAgICAgICAgc3R5bGU9IndpZHRoOiAke0V9JTsgJHt6LmNvbG9yP2BiYWNrZ3JvdW5kOiAke3ouY29sb3J9YDoiIn0iCiAgICAgICAgICA+PC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgYH1yZW5kZXJUcmVuZCh6KXtpZighei50cmVuZERhdGF8fHoudHJlbmREYXRhLmxlbmd0aDwyKXJldHVybiBTYDxkaXYgY2xhc3M9InRpbGUtdmFsdWUiPiR7ei52YWx1ZX08L2Rpdj5gO2xldCB5PXoudHJlbmREYXRhLEU9TWF0aC5tYXgoLi4ueSksXz1NYXRoLm1pbiguLi55KSxQPUUtX3x8MSxWPTMwMCxIPTMyLFc9MixhZT15Lm1hcCgoSixmZSk9PntsZXQgTD1mZS8oeS5sZW5ndGgtMSkqVixRPVcrKEgtMipXKS0oSi1fKS9QKihILTIqVyk7cmV0dXJuYCR7TH0sJHtRfWB9KS5qb2luKCIgIiksVD1gMCwke0h9ICR7YWV9ICR7Vn0sJHtIfWA7cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9InRyZW5kLWNvbnRhaW5lciI+CiAgICAgICAgPGRpdiBjbGFzcz0idHJlbmQtaGVhZGVyIj4KICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0cmVuZC12YWx1ZSI+JHt6LnZhbHVlfTwvc3Bhbj4KICAgICAgICAgICR7ei51bml0P1NgPHNwYW4gY2xhc3M9InRyZW5kLXVuaXQiPiR7ei51bml0fTwvc3Bhbj5gOiIifQogICAgICAgICAgJHt6LmRlc2NyaXB0aW9uP1NgPHNwYW4gY2xhc3M9InRyZW5kLWxhYmVsIj4ke3ouZGVzY3JpcHRpb259PC9zcGFuPmA6IiJ9CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0idHJlbmQtZ3JhcGgiPgogICAgICAgICAgPHN2ZyBjbGFzcz0idHJlbmQtc3ZnIiB2aWV3Qm94PSIwIDAgJHtWfSAke0h9IiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJub25lIj4KICAgICAgICAgICAgPHBvbHlnb24gY2xhc3M9InRyZW5kLWFyZWEiIHBvaW50cz0iJHtUfSIgLz4KICAgICAgICAgICAgPHBvbHlsaW5lIGNsYXNzPSJ0cmVuZC1saW5lIiBwb2ludHM9IiR7YWV9IiAvPgogICAgICAgICAgPC9zdmc+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgYH1yZW5kZXJNdWx0aVBlcmNlbnRhZ2Uoeil7aWYoIXoucGVyY2VudGFnZXN8fHoucGVyY2VudGFnZXMubGVuZ3RoPT09MClyZXR1cm4gU2A8ZGl2IGNsYXNzPSJ0aWxlLXZhbHVlIj4ke3oudmFsdWV9PC9kaXY+YDtsZXQgeT16LnBlcmNlbnRhZ2VzLnNsaWNlKDAsMyk7cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9Im11bHRpLXBlcmNlbnRhZ2Utd3JhcHBlciI+CiAgICAgICAgPGRpdiBjbGFzcz0ibXVsdGktcGVyY2VudGFnZS1pdGVtcyI+CiAgICAgICAgICAke3kubWFwKEU9PntsZXQgXz1NYXRoLm1pbigxMDAsTWF0aC5tYXgoMCxFLnZhbHVlKSk7cmV0dXJuIFNgCiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibXVsdGktcGVyY2VudGFnZS1pdGVtIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im11bHRpLXBlcmNlbnRhZ2UtaGVhZGVyIj4KICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im11bHRpLXBlcmNlbnRhZ2UtbGFiZWwiPiR7RS5sYWJlbH08L3NwYW4+CiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJtdWx0aS1wZXJjZW50YWdlLXZhbHVlIj4ke199JTwvc3Bhbj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibXVsdGktcGVyY2VudGFnZS1iYXIiPgogICAgICAgICAgICAgICAgICA8ZGl2CiAgICAgICAgICAgICAgICAgICAgY2xhc3M9Im11bHRpLXBlcmNlbnRhZ2UtZmlsbCIKICAgICAgICAgICAgICAgICAgICBzdHlsZT0id2lkdGg6ICR7X30lOyAke0UuY29sb3I/YGJhY2tncm91bmQ6ICR7RS5jb2xvcn1gOiIifSIKICAgICAgICAgICAgICAgICAgPjwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIGB9KX0KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICBgfXJlbmRlckNwdUNvcmVzKHope2lmKCF6LmNvcmVzRGF0YXx8ei5jb3Jlc0RhdGEubGVuZ3RoPT09MClyZXR1cm4gU2A8ZGl2IGNsYXNzPSJ0aWxlLXZhbHVlIj4ke3oudmFsdWV9PC9kaXY+YDtsZXQgeT16LmNvcmVzRGF0YSxFPU1hdGgucm91bmQoeS5yZWR1Y2UoKGFlLFQpPT5hZStULnVzYWdlLDApL3kubGVuZ3RoKSxfPWFlPT5hZTw1MD8ibG93IjphZTw4MD8ibWVkaXVtIjoiaGlnaCIsUD15Lmxlbmd0aCoyNCsoeS5sZW5ndGgtMSkqMyxWPXouY29sdW1uU3Bhbnx8MSxIPXRoaXMubWluVGlsZVdpZHRoKlYrKFYtMSkqdGhpcy5nYXAtMzIsVz1QPEgqLjY2NjtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0iY3B1LWNvcmVzLXdyYXBwZXIiPgogICAgICAgIDxkaXYgY2xhc3M9ImNwdS1jb3Jlcy1oZWFkZXIiPgogICAgICAgICAgPHNwYW4gY2xhc3M9ImNwdS1jb3Jlcy12YWx1ZSI+JHtFfTwvc3Bhbj4KICAgICAgICAgIDxzcGFuIGNsYXNzPSJjcHUtY29yZXMtdW5pdCI+JTwvc3Bhbj4KICAgICAgICAgIDxzcGFuIGNsYXNzPSJjcHUtY29yZXMtbGFiZWwiPiR7eS5sZW5ndGh9IGNvcmVzPC9zcGFuPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImNwdS1jb3Jlcy1iYXJzICR7Vz8iY2VudGVyZWQiOiIifSI+CiAgICAgICAgICAke3kubWFwKGFlPT57bGV0IFQ9TWF0aC5taW4oMTAwLE1hdGgubWF4KDAsYWUudXNhZ2UpKSxKPV8oVCk7cmV0dXJuIFNgCiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY3B1LWNvcmUtYmFyLWNvbnRhaW5lciIgdGl0bGU9IkNvcmUgJHthZS5sYWJlbHx8YWUuaWR9OiAke1R9JSI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjcHUtY29yZS1iYXItd3JhcHBlciI+CiAgICAgICAgICAgICAgICAgIDxkaXYKICAgICAgICAgICAgICAgICAgICBjbGFzcz0iY3B1LWNvcmUtYmFyLWZpbGwgJHtKfSIKICAgICAgICAgICAgICAgICAgICBzdHlsZT0iaGVpZ2h0OiAke1R9JSIKICAgICAgICAgICAgICAgICAgPjwvZGl2PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAke3kubGVuZ3RoPD0xNj9TYAogICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iY3B1LWNvcmUtbGFiZWwiPiR7YWUubGFiZWx8fGFlLmlkfTwvc3Bhbj4KICAgICAgICAgICAgICAgIGA6IiJ9CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIGB9KX0KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICBgfWZvcm1hdEJ5dGVzKHope2lmKHo9PT0wKXJldHVybiIwIEIiO2xldCB5PTEwMjQsRT1bIkIiLCJLQiIsIk1CIiwiR0IiLCJUQiIsIlBCIl0sXz1NYXRoLmZsb29yKE1hdGgubG9nKHopL01hdGgubG9nKHkpKTtyZXR1cm4gcGFyc2VGbG9hdCgoei9NYXRoLnBvdyh5LF8pKS50b0ZpeGVkKDEpKSsiICIrRVtfXX1yZW5kZXJQYXJ0aXRpb24oeil7aWYoIXoucGFydGl0aW9uRGF0YSlyZXR1cm4gU2A8ZGl2IGNsYXNzPSJ0aWxlLXZhbHVlIj4ke3oudmFsdWV9PC9kaXY+YDtsZXR7dXNlZDp5LHRvdGFsOkUsZmlsZXN5c3RlbTpfLG1vdW50UG9pbnQ6UH09ei5wYXJ0aXRpb25EYXRhLFY9TWF0aC5taW4oMTAwLE1hdGgubWF4KDAseS9FKjEwMCkpLEg9RS15LFc9KCk9PlY+PTkwPyJjcml0aWNhbCI6Vj49NzU/Indhcm5pbmciOiIiO3JldHVybiBTYAogICAgICA8ZGl2IGNsYXNzPSJwYXJ0aXRpb24td3JhcHBlciI+CiAgICAgICAgPGRpdiBjbGFzcz0icGFydGl0aW9uLWhlYWRlciI+CiAgICAgICAgICA8c3BhbiBjbGFzcz0icGFydGl0aW9uLXBlcmNlbnRhZ2UiPiR7TWF0aC5yb3VuZChWKX0lPC9zcGFuPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InBhcnRpdGlvbi1iYXIiPgogICAgICAgICAgPGRpdgogICAgICAgICAgICBjbGFzcz0icGFydGl0aW9uLWJhci1maWxsICR7VygpfSIKICAgICAgICAgICAgc3R5bGU9IndpZHRoOiAke1Z9JSIKICAgICAgICAgID48L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJwYXJ0aXRpb24tc3RhdHMiPgogICAgICAgICAgPGRpdiBjbGFzcz0icGFydGl0aW9uLXN0YXQiPgogICAgICAgICAgICA8c3BhbiBjbGFzcz0icGFydGl0aW9uLXN0YXQtbGFiZWwiPlVzZWQ8L3NwYW4+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJwYXJ0aXRpb24tc3RhdC12YWx1ZSI+JHt0aGlzLmZvcm1hdEJ5dGVzKHkpfTwvc3Bhbj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0icGFydGl0aW9uLXN0YXQiPgogICAgICAgICAgICA8c3BhbiBjbGFzcz0icGFydGl0aW9uLXN0YXQtbGFiZWwiPkZyZWU8L3NwYW4+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJwYXJ0aXRpb24tc3RhdC12YWx1ZSI+JHt0aGlzLmZvcm1hdEJ5dGVzKEgpfTwvc3Bhbj4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InBhcnRpdGlvbi1tZXRhIj4KICAgICAgICAgIDxzcGFuIGNsYXNzPSJwYXJ0aXRpb24tZmlsZXN5c3RlbSI+JHtffTwvc3Bhbj4KICAgICAgICAgICR7UD9TYDxzcGFuIGNsYXNzPSJwYXJ0aXRpb24tbW91bnRwb2ludCI+JHtQfTwvc3Bhbj5gOiIifQogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIGB9cmVuZGVyRGlzayh6KXtpZighei5kaXNrRGF0YSlyZXR1cm4gU2A8ZGl2IGNsYXNzPSJ0aWxlLXZhbHVlIj4ke3oudmFsdWV9PC9kaXY+YDtsZXR7Y2FwYWNpdHk6eSxtb2RlbDpFLHR5cGU6Xyxpb3BzOlAsaGVhbHRoOlZ9PXouZGlza0RhdGEsSD1XPT5XPj03MD8iZ29vZCI6Vz49MzA/Indhcm5pbmciOiJjcml0aWNhbCI7cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9ImRpc2std3JhcHBlciI+CiAgICAgICAgPGRpdiBjbGFzcz0iZGlzay1jYXBhY2l0eSI+JHt0aGlzLmZvcm1hdEJ5dGVzKHkpfTwvZGl2PgogICAgICAgICR7RXx8Xz9TYAogICAgICAgICAgPGRpdiBjbGFzcz0iZGlzay1tb2RlbCI+CiAgICAgICAgICAgICR7RT9TYDxzcGFuPiR7RX08L3NwYW4+YDoiIn0KICAgICAgICAgICAgJHtfP1NgPHNwYW4gY2xhc3M9ImRpc2stdHlwZS1iYWRnZSI+JHtffTwvc3Bhbj5gOiIifQogICAgICAgICAgPC9kaXY+CiAgICAgICAgYDoiIn0KICAgICAgICA8ZGl2IGNsYXNzPSJkaXNrLW1ldHJpY3MiPgogICAgICAgICAgJHtQP1NgCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRpc2staW9wcyI+CiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZGlzay1pb3BzLWl0ZW0iPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImRpc2staW9wcy1sYWJlbCI+UmVhZDwvc3Bhbj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJkaXNrLWlvcHMtdmFsdWUiPiR7UC5yZWFkLnRvTG9jYWxlU3RyaW5nKCl9PC9zcGFuPgogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRpc2staW9wcy1pdGVtIj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJkaXNrLWlvcHMtbGFiZWwiPldyaXRlPC9zcGFuPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImRpc2staW9wcy12YWx1ZSI+JHtQLndyaXRlLnRvTG9jYWxlU3RyaW5nKCl9PC9zcGFuPgogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIGA6IiJ9CiAgICAgICAgICAke1YhPT12b2lkIDA/U2AKICAgICAgICAgICAgPGRpdiBjbGFzcz0iZGlzay1oZWFsdGgiPgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRpc2staGVhbHRoLWhlYWRlciI+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZGlzay1oZWFsdGgtbGFiZWwiPkhlYWx0aDwvc3Bhbj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJkaXNrLWhlYWx0aC12YWx1ZSI+JHtWfSU8L3NwYW4+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZGlzay1oZWFsdGgtYmFyIj4KICAgICAgICAgICAgICAgIDxkaXYKICAgICAgICAgICAgICAgICAgY2xhc3M9ImRpc2staGVhbHRoLWZpbGwgJHtIKFYpfSIKICAgICAgICAgICAgICAgICAgc3R5bGU9IndpZHRoOiAke1Z9JSIKICAgICAgICAgICAgICAgID48L2Rpdj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICBgOiIifQogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIGB9YXN5bmMgaGFuZGxlR3JpZEFjdGlvbih6KXt6LmFjdGlvbiYmYXdhaXQgei5hY3Rpb24oKX1hc3luYyBoYW5kbGVUaWxlQWN0aW9uKHoseSl7ei5hY3Rpb24mJmF3YWl0IHouYWN0aW9uKCl9c2hvd0NvbnRleHRNZW51KHoseSl7aWYoIXkuYWN0aW9uc3x8eS5hY3Rpb25zLmxlbmd0aD09PTApcmV0dXJuO3oucHJldmVudERlZmF1bHQoKSx0aGlzLmNvbnRleHRNZW51UG9zaXRpb249e3g6ei5jbGllbnRYLHk6ei5jbGllbnRZfSx0aGlzLmNvbnRleHRNZW51QWN0aW9ucz15LmFjdGlvbnMsdGhpcy5jb250ZXh0TWVudVZpc2libGU9ITA7bGV0IEU9KCk9Pnt0aGlzLmNvbnRleHRNZW51VmlzaWJsZT0hMSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJjbGljayIsRSl9O3NldFRpbWVvdXQoKCk9Pntkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsRSl9LDEwMCl9c3RhdGlje21vKGEscil9fTtyZXR1cm4gQj1hfSkoKX0pO3ZhciBOOCxmbCxWNG4sVTRuLFc0bixHNG4seVByLHdQcj1sKCgpPT57U2UoKTt6YSgpO3RjZSgpO044PWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sZmw9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LFY0bj0oKCk9PntsZXQgZT1bemUoImRlbW8tZGFzaGJvYXJkLXZpZXciKV0sdCxyPVtdLGEsaT1EZSxvLG49W10scz1bXTt2YXIgYz1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IGQ9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1bcmUoKV0sTjgodGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJhY3RpdmF0ZWQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmY9PiJhY3RpdmF0ZWQiaW4gZixnZXQ6Zj0+Zi5hY3RpdmF0ZWQsc2V0OihmLHUpPT57Zi5hY3RpdmF0ZWQ9dX19LG1ldGFkYXRhOmR9LG4scyksTjgobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6ZH0sbnVsbCxyKSxjPWE9dC52YWx1ZSxkJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOmR9KSxmbChhLHIpfSNlPWZsKHRoaXMsbiwhMSk7Z2V0IGFjdGl2YXRlZCgpe3JldHVybiB0aGlzLiNlfXNldCBhY3RpdmF0ZWQoZCl7dGhpcy4jZT1kfWN0eD1mbCh0aGlzLHMpO3N0YXRzVGlsZXM9W3tpZDoidXNlcnMiLHRpdGxlOiJBY3RpdmUgVXNlcnMiLHZhbHVlOjEyMzQsdHlwZToibnVtYmVyIixpY29uOiJsdWNpZGU6dXNlcnMiLGRlc2NyaXB0aW9uOiJPbmxpbmUgbm93Iixjb2xvcjoiIzIyYzU1ZSJ9LHtpZDoiYXBpLWNhbGxzIix0aXRsZToiQVBJIENhbGxzIix2YWx1ZTo0NTIwMCx0eXBlOiJ0cmVuZCIsaWNvbjoibHVjaWRlOmFjdGl2aXR5IixkZXNjcmlwdGlvbjoiKzEyJSBmcm9tIGxhc3QgaG91ciIsY29sb3I6IiMzYjgyZjYiLHRyZW5kRGF0YTpbMzJlMywzNWUzLDM4ZTMsNDFlMywzOWUzLDQyZTMsNDUyMDBdfSx7aWQ6ImhlYWx0aCIsdGl0bGU6IlN5c3RlbSBIZWFsdGgiLHZhbHVlOjk5LjksdW5pdDoiJSIsdHlwZToiZ2F1Z2UiLGljb246Imx1Y2lkZTpoZWFydC1wdWxzZSIsZGVzY3JpcHRpb246IkFsbCBzeXN0ZW1zIG9wZXJhdGlvbmFsIixjb2xvcjoiIzEwYjk4MSIsZ2F1Z2VPcHRpb25zOnttaW46MCxtYXg6MTAwLHRocmVzaG9sZHM6W3t2YWx1ZTo4MCxjb2xvcjoiI2VmNDQ0NCJ9LHt2YWx1ZTo5NSxjb2xvcjoiI2Y1OWUwYiJ9LHt2YWx1ZToxMDAsY29sb3I6IiMxMGI5ODEifV19fSx7aWQ6InJlc3BvbnNlIix0aXRsZToiQXZnIFJlc3BvbnNlIix2YWx1ZToxMjcsdW5pdDoibXMiLHR5cGU6Im51bWJlciIsaWNvbjoibHVjaWRlOnRpbWVyIixkZXNjcmlwdGlvbjoiLTE1bXMgZnJvbSB5ZXN0ZXJkYXkiLGNvbG9yOiIjOGI1Y2Y2In0se2lkOiJyZXNvdXJjZXMiLHRpdGxlOiJSZXNvdXJjZSBVc2FnZSIsdmFsdWU6IiIsdHlwZToibXVsdGlQZXJjZW50YWdlIixpY29uOiJsdWNpZGU6c2VydmVyIixwZXJjZW50YWdlczpbe2xhYmVsOiJDUFUiLHZhbHVlOjY3LGNvbG9yOiIjM2I4MmY2In0se2xhYmVsOiJNZW1vcnkiLHZhbHVlOjg0LGNvbG9yOiIjOGI1Y2Y2In0se2xhYmVsOiJEaXNrIix2YWx1ZTo0NSxjb2xvcjoiIzEwYjk4MSJ9XX0se2lkOiJyZXF1ZXN0cyIsdGl0bGU6IlJlcXVlc3RzL3NlYyIsdmFsdWU6MTg1MCx0eXBlOiJ0cmVuZCIsaWNvbjoibHVjaWRlOnphcCIsZGVzY3JpcHRpb246IkN1cnJlbnQgdGhyb3VnaHB1dCIsY29sb3I6IiMwNmI2ZDQiLHRyZW5kRGF0YTpbMTIwMCwxNDAwLDEzNTAsMTYwMCwxNzUwLDE2ODAsMTg1MF19XTtvbkFjdGl2YXRlKGQpe3RoaXMuY3R4PWQsdGhpcy5hY3RpdmF0ZWQ9ITAsY29uc29sZS5sb2coIkRhc2hib2FyZCBhY3RpdmF0ZWQgd2l0aCBjb250ZXh0OiIsZCksZC5hcHB1aS5zZXRTZWNvbmRhcnlNZW51KHtoZWFkaW5nOiJEYXNoYm9hcmQiLGdyb3Vwczpbe25hbWU6IlF1aWNrIEFjY2VzcyIsaWNvbk5hbWU6Imx1Y2lkZTp6YXAiLGl0ZW1zOlt7a2V5OiJPdmVydmlldyIsaWNvbk5hbWU6ImxheW91dERhc2hib2FyZCIsYWN0aW9uOigpPT5jb25zb2xlLmxvZygiT3ZlcnZpZXciKX0se2tleToiUmVjZW50IixpY29uTmFtZToiY2xvY2siLGJhZGdlOjUsYWN0aW9uOigpPT5jb25zb2xlLmxvZygiUmVjZW50Iil9LHt0eXBlOiJkaXZpZGVyIn0se3R5cGU6ImFjdGlvbiIsa2V5OiJSZWZyZXNoIERhdGEiLGljb25OYW1lOiJsdWNpZGU6cmVmcmVzaEN3IixhY3Rpb246KCk9PmFsZXJ0KCJSZWZyZXNoaW5nIGRhc2hib2FyZCBkYXRhLi4uIil9XX0se25hbWU6IkZpbHRlcnMiLGljb25OYW1lOiJsdWNpZGU6ZmlsdGVyIixpdGVtczpbe3R5cGU6ImhlYWRlciIsbGFiZWw6IlRpbWUgUmFuZ2UifSx7dHlwZToiZmlsdGVyIixrZXk6IkxpdmUgVXBkYXRlcyIsaWNvbk5hbWU6Imx1Y2lkZTpyYWRpbyIsYWN0aXZlOiEwLG9uVG9nZ2xlOmY9PmNvbnNvbGUubG9nKCJMaXZlIHVwZGF0ZXM6IixmKX0se3R5cGU6ImZpbHRlciIsa2V5OiJTaG93IEFyY2hpdmVkIixpY29uTmFtZToibHVjaWRlOmFyY2hpdmUiLGFjdGl2ZTohMSxvblRvZ2dsZTpmPT5jb25zb2xlLmxvZygiU2hvdyBhcmNoaXZlZDoiLGYpfSx7dHlwZToiZGl2aWRlciJ9LHt0eXBlOiJtdWx0aUZpbHRlciIsa2V5OiJEYXRhIFNvdXJjZXMiLGljb25OYW1lOiJsdWNpZGU6ZGF0YWJhc2UiLG9wdGlvbnM6W3trZXk6ImFwaSIsbGFiZWw6IkFQSSBTZXJ2ZXIiLGNoZWNrZWQ6ITAsaWNvbk5hbWU6Imx1Y2lkZTpzZXJ2ZXIifSx7a2V5OiJ3ZWIiLGxhYmVsOiJXZWIgVHJhZmZpYyIsY2hlY2tlZDohMCxpY29uTmFtZToibHVjaWRlOmdsb2JlIn0se2tleToibW9iaWxlIixsYWJlbDoiTW9iaWxlIEFwcCIsY2hlY2tlZDohMSxpY29uTmFtZToibHVjaWRlOnNtYXJ0cGhvbmUifV0sb25DaGFuZ2U6Zj0+Y29uc29sZS5sb2coIkRhdGEgc291cmNlczoiLGYpfV19LHtuYW1lOiJBbmFseXRpY3MiLGljb25OYW1lOiJsdWNpZGU6YmFyQ2hhcnQzIixpdGVtczpbe2tleToiTWV0cmljcyIsaWNvbk5hbWU6ImFjdGl2aXR5IixhY3Rpb246KCk9PmNvbnNvbGUubG9nKCJNZXRyaWNzIil9LHtrZXk6IlJlcG9ydHMiLGljb25OYW1lOiJmaWxlVGV4dCIsYmFkZ2U6Im5ldyIsYmFkZ2VWYXJpYW50OiJzdWNjZXNzIixhY3Rpb246KCk9PmNvbnNvbGUubG9nKCJSZXBvcnRzIil9LHt0eXBlOiJkaXZpZGVyIn0se3R5cGU6ImxpbmsiLGtleToiQW5hbHl0aWNzIERvY3MiLGljb25OYW1lOiJsdWNpZGU6ZXh0ZXJuYWxMaW5rIixocmVmOiJodHRwczovL2RvY3MuZXhhbXBsZS5jb20vYW5hbHl0aWNzIn1dfV19KSxkLmFwcHVpLnNldENvbnRlbnRUYWJzKFt7a2V5OiJPdmVydmlldyIsaWNvbk5hbWU6Imx1Y2lkZTpsYXlvdXREYXNoYm9hcmQiLGFjdGlvbjooKT0+Y29uc29sZS5sb2coIk92ZXJ2aWV3IHRhYiIpfSx7a2V5OiJBbmFseXRpY3MiLGljb25OYW1lOiJsdWNpZGU6YmFyQ2hhcnQiLGFjdGlvbjooKT0+Y29uc29sZS5sb2coIkFuYWx5dGljcyB0YWIiKX0se2tleToiUmVwb3J0cyIsaWNvbk5hbWU6Imx1Y2lkZTpmaWxlVGV4dCIsYWN0aW9uOigpPT5jb25zb2xlLmxvZygiUmVwb3J0cyB0YWIiKX1dKX1vbkRlYWN0aXZhdGUoKXt0aGlzLmFjdGl2YXRlZD0hMSxjb25zb2xlLmxvZygiRGFzaGJvYXJkIGRlYWN0aXZhdGVkIil9cmVuZGVyKCl7cmV0dXJuIFNgCiAgICAgIDxzdHlsZT4KICAgICAgICA6aG9zdCB7CiAgICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICAgIHBhZGRpbmc6IDQwcHg7CiAgICAgICAgICBjb2xvcjogI2EzYTNhMzsKICAgICAgICAgIGZvbnQtZmFtaWx5OiAnR2Vpc3QgU2FucycsICdJbnRlcicsIC1hcHBsZS1zeXN0ZW0sIHNhbnMtc2VyaWY7CiAgICAgICAgfQogICAgICAgIGgxIHsgY29sb3I6ICNmYWZhZmE7IGZvbnQtd2VpZ2h0OiA2MDA7IGZvbnQtc2l6ZTogMjRweDsgbWFyZ2luLWJvdHRvbTogOHB4OyB9CiAgICAgICAgcCB7IGNvbG9yOiAjNzM3MzczOyBtYXJnaW4tYm90dG9tOiAzMnB4OyB9CiAgICAgICAgZGVlcy1zdGF0c2dyaWQgewogICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzJweDsKICAgICAgICB9CgogICAgICAgIC5jdHgtYWN0aW9ucyB7CiAgICAgICAgICBtYXJnaW4tdG9wOiAzMnB4OwogICAgICAgICAgcGFkZGluZzogMjRweDsKICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMC4wMik7CiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDAuMDgpOwogICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4OwogICAgICAgIH0KICAgICAgICAuY3R4LWFjdGlvbnMgaDIgeyBjb2xvcjogI2ZhZmFmYTsgZm9udC1zaXplOiAxNnB4OyBmb250LXdlaWdodDogNjAwOyBtYXJnaW4tYm90dG9tOiAxNnB4OyB9CiAgICAgICAgLmJ1dHRvbi1ncmlkIHsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7CiAgICAgICAgICBnYXA6IDhweDsKICAgICAgICB9CiAgICAgICAgLmN0eC1idG4gewogICAgICAgICAgYmFja2dyb3VuZDogcmdiYSg1OSwgMTMwLCAyNDYsIDAuMSk7CiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDU5LCAxMzAsIDI0NiwgMC4zKTsKICAgICAgICAgIGNvbG9yOiAjNjBhNWZhOwogICAgICAgICAgcGFkZGluZzogOHB4IDE2cHg7CiAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTsKICAgICAgICB9CiAgICAgICAgLmN0eC1idG46aG92ZXIgewogICAgICAgICAgYmFja2dyb3VuZDogcmdiYSg1OSwgMTMwLCAyNDYsIDAuMik7CiAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoNTksIDEzMCwgMjQ2LCAwLjUpOwogICAgICAgIH0KICAgICAgICAuY3R4LWJ0bi5kYW5nZXIgewogICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyMzksIDY4LCA2OCwgMC4xKTsKICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyMzksIDY4LCA2OCwgMC4zKTsKICAgICAgICAgIGNvbG9yOiAjZjg3MTcxOwogICAgICAgIH0KICAgICAgICAuY3R4LWJ0bi5kYW5nZXI6aG92ZXIgewogICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyMzksIDY4LCA2OCwgMC4yKTsKICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyMzksIDY4LCA2OCwgMC41KTsKICAgICAgICB9CiAgICAgICAgLmN0eC1idG4uc3VjY2VzcyB7CiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDM0LCAxOTcsIDk0LCAwLjEpOwogICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDM0LCAxOTcsIDk0LCAwLjMpOwogICAgICAgICAgY29sb3I6ICM0YWRlODA7CiAgICAgICAgfQogICAgICAgIC5jdHgtYnRuLnN1Y2Nlc3M6aG92ZXIgewogICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgzNCwgMTk3LCA5NCwgMC4yKTsKICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgzNCwgMTk3LCA5NCwgMC41KTsKICAgICAgICB9CiAgICAgIDwvc3R5bGU+CiAgICAgIDxoMT5EYXNoYm9hcmQ8L2gxPgogICAgICA8cD5XZWxjb21lIGJhY2shIEhlcmUncyBhbiBvdmVydmlldyBvZiB5b3VyIHN5c3RlbS48L3A+CiAgICAgIDxkZWVzLXN0YXRzZ3JpZAogICAgICAgIC50aWxlcz0ke3RoaXMuc3RhdHNUaWxlc30KICAgICAgICBAdGlsZS1hY3Rpb249JHtkPT5jb25zb2xlLmxvZygiVGlsZSBhY3Rpb246IixkLmRldGFpbCl9CiAgICAgID48L2RlZXMtc3RhdHNncmlkPgoKICAgICAgPGRpdiBjbGFzcz0iY3R4LWFjdGlvbnMiPgogICAgICAgIDxoMj5Db250ZXh0IEFjdGlvbnMgKGN0eC5hcHB1aSk8L2gyPgogICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ncmlkIj4KICAgICAgICAgIDxidXR0b24gY2xhc3M9ImN0eC1idG4iIEBjbGljaz0keygpPT50aGlzLmN0eD8uYXBwdWkuc2V0TWFpbk1lbnVWaXNpYmxlKCExKX0+SGlkZSBNYWluIE1lbnU8L2J1dHRvbj4KICAgICAgICAgIDxidXR0b24gY2xhc3M9ImN0eC1idG4gc3VjY2VzcyIgQGNsaWNrPSR7KCk9PnRoaXMuY3R4Py5hcHB1aS5zZXRNYWluTWVudVZpc2libGUoITApfT5TaG93IE1haW4gTWVudTwvYnV0dG9uPgogICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iY3R4LWJ0biIgQGNsaWNrPSR7KCk9PnRoaXMuY3R4Py5hcHB1aS5zZXRTZWNvbmRhcnlNZW51VmlzaWJsZSghMSl9PkhpZGUgU2Vjb25kYXJ5IE1lbnU8L2J1dHRvbj4KICAgICAgICAgIDxidXR0b24gY2xhc3M9ImN0eC1idG4gc3VjY2VzcyIgQGNsaWNrPSR7KCk9PnRoaXMuY3R4Py5hcHB1aS5zZXRTZWNvbmRhcnlNZW51VmlzaWJsZSghMCl9PlNob3cgU2Vjb25kYXJ5IE1lbnU8L2J1dHRvbj4KICAgICAgICAgIDxidXR0b24gY2xhc3M9ImN0eC1idG4iIEBjbGljaz0keygpPT50aGlzLmN0eD8uYXBwdWkuc2V0Q29udGVudFRhYnNWaXNpYmxlKCExKX0+SGlkZSBDb250ZW50IFRhYnM8L2J1dHRvbj4KICAgICAgICAgIDxidXR0b24gY2xhc3M9ImN0eC1idG4gc3VjY2VzcyIgQGNsaWNrPSR7KCk9PnRoaXMuY3R4Py5hcHB1aS5zZXRDb250ZW50VGFic1Zpc2libGUoITApfT5TaG93IENvbnRlbnQgVGFiczwvYnV0dG9uPgogICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iY3R4LWJ0biIgQGNsaWNrPSR7KCk9PnRoaXMuY3R4Py5hcHB1aS5zZXRNYWluTWVudUNvbGxhcHNlZCghMCl9PkNvbGxhcHNlIE1haW4gTWVudTwvYnV0dG9uPgogICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iY3R4LWJ0biBzdWNjZXNzIiBAY2xpY2s9JHsoKT0+dGhpcy5jdHg/LmFwcHVpLnNldE1haW5NZW51Q29sbGFwc2VkKCExKX0+RXhwYW5kIE1haW4gTWVudTwvYnV0dG9uPgogICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iY3R4LWJ0biIgQGNsaWNrPSR7KCk9PnRoaXMuY3R4Py5hcHB1aS5zZXRCcmVhZGNydW1icyhbIkRhc2hib2FyZCIsIk92ZXJ2aWV3IiwiU3RhdHMiXSl9PlNldCBCcmVhZGNydW1iczwvYnV0dG9uPgogICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iY3R4LWJ0biIgQGNsaWNrPSR7KCk9PnRoaXMuY3R4Py5hcHB1aS5uYXZpZ2F0ZVRvVmlldygicHJvamVjdHMiKX0+R28gdG8gUHJvamVjdHM8L2J1dHRvbj4KICAgICAgICAgIDxidXR0b24gY2xhc3M9ImN0eC1idG4iIEBjbGljaz0keygpPT50aGlzLmN0eD8uYXBwdWkubmF2aWdhdGVUb1ZpZXcoInNldHRpbmdzIix7c2VjdGlvbjoic2VjdXJpdHkifSl9PkdvIHRvIFNldHRpbmdzL1NlY3VyaXR5PC9idXR0b24+CiAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJjdHgtYnRuIiBAY2xpY2s9JHsoKT0+dGhpcy5jdHg/LmFwcHVpLmFjdGl2aXR5TG9nLmFkZCh7dHlwZToiY3VzdG9tIix1c2VyOiJEZW1vIFVzZXIiLG1lc3NhZ2U6IkJ1dHRvbiBjbGlja2VkIGZyb20gY3R4ISIsaWNvbk5hbWU6Imx1Y2lkZTptb3VzZS1wb2ludGVyLWNsaWNrIn0pfT5BZGQgQWN0aXZpdHkgRW50cnk8L2J1dHRvbj4KICAgICAgICAgIDxidXR0b24gY2xhc3M9ImN0eC1idG4iIEBjbGljaz0keygpPT50aGlzLmN0eD8uYXBwdWkuc2V0TWFpbk1lbnVCYWRnZSgidGFza3MiLDk5KX0+U2V0IFRhc2tzIEJhZGdlIHRvIDk5PC9idXR0b24+CiAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJjdHgtYnRuIGRhbmdlciIgQGNsaWNrPSR7KCk9PnRoaXMuY3R4Py5hcHB1aS5jbGVhck1haW5NZW51QmFkZ2UoInRhc2tzIil9PkNsZWFyIFRhc2tzIEJhZGdlPC9idXR0b24+CiAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJjdHgtYnRuIiBAY2xpY2s9JHsoKT0+dGhpcy5jdHg/LmFwcHVpLnNldENvbnRlbnRUYWJzQXV0b0hpZGUoITAsMSl9PkF1dG8taGlkZSBUYWJzICjiiaQxKTwvYnV0dG9uPgogICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iY3R4LWJ0biBkYW5nZXIiIEBjbGljaz0keygpPT50aGlzLmN0eD8uYXBwdWkuc2V0Q29udGVudFRhYnNBdXRvSGlkZSghMSl9PkRpc2FibGUgQXV0by1oaWRlPC9idXR0b24+CiAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJjdHgtYnRuIHN1Y2Nlc3MiIEBjbGljaz0keygpPT50aGlzLmFkZENsb3NlYWJsZVRhYigpfT5BZGQgQ2xvc2VhYmxlIFRhYjwvYnV0dG9uPgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIGB9dGFiQ291bnRlcj0wO2FkZENsb3NlYWJsZVRhYigpe2lmKCF0aGlzLmN0eClyZXR1cm47dGhpcy50YWJDb3VudGVyKys7bGV0IGQ9YFRhYiAke3RoaXMudGFiQ291bnRlcn1gO3RoaXMuY3R4LmFwcHVpLmFkZENvbnRlbnRUYWIoe2tleTpkLGljb25OYW1lOiJsdWNpZGU6ZmlsZSIsYWN0aW9uOigpPT5jb25zb2xlLmxvZyhgU2VsZWN0ZWQgJHtkfWApLGNsb3NlYWJsZTohMCxvbkNsb3NlOigpPT57dGhpcy5jdHg/LmFwcHVpLnJlbW92ZUNvbnRlbnRUYWIoZCl9fSl9fTtyZXR1cm4gYz1hfSkoKSxVNG49KCgpPT57bGV0IGU9W3plKCJkZW1vLXNldHRpbmdzLXZpZXciKV0sdCxyPVtdLGEsaT1EZSxvLG49W10scz1bXSxjLGQ9W10sZj1bXTt2YXIgdT1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IHA9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1bcmUoKV0sYz1bcmUoKV0sTjgodGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzZWN0aW9uIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpoPT4ic2VjdGlvbiJpbiBoLGdldDpoPT5oLnNlY3Rpb24sc2V0OihoLGIpPT57aC5zZWN0aW9uPWJ9fSxtZXRhZGF0YTpwfSxuLHMpLE44KHRoaXMsbnVsbCxjLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiaGFzQ2hhbmdlcyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6aD0+Imhhc0NoYW5nZXMiaW4gaCxnZXQ6aD0+aC5oYXNDaGFuZ2VzLHNldDooaCxiKT0+e2guaGFzQ2hhbmdlcz1ifX0sbWV0YWRhdGE6cH0sZCxmKSxOOChudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTpwfSxudWxsLHIpLHU9YT10LnZhbHVlLHAmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6cH0pLGZsKGEscil9I2U9ZmwodGhpcyxuLCJnZW5lcmFsIik7Z2V0IHNlY3Rpb24oKXtyZXR1cm4gdGhpcy4jZX1zZXQgc2VjdGlvbihwKXt0aGlzLiNlPXB9I3Q9KGZsKHRoaXMscyksZmwodGhpcyxkLCExKSk7Z2V0IGhhc0NoYW5nZXMoKXtyZXR1cm4gdGhpcy4jdH1zZXQgaGFzQ2hhbmdlcyhwKXt0aGlzLiN0PXB9YXBwdWk9ZmwodGhpcyxmKTtvbkFjdGl2YXRlKHApe3RoaXMuYXBwdWk9cC5hcHB1aSxjb25zb2xlLmxvZygiU2V0dGluZ3MgYWN0aXZhdGVkIHdpdGggcGFyYW1zOiIscC5wYXJhbXMpLHAucGFyYW1zPy5zZWN0aW9uJiYodGhpcy5zZWN0aW9uPXAucGFyYW1zLnNlY3Rpb24pLHAuYXBwdWkuc2V0U2Vjb25kYXJ5TWVudSh7aGVhZGluZzoiU2V0dGluZ3MiLGdyb3Vwczpbe25hbWU6IkFjY291bnQiLGljb25OYW1lOiJsdWNpZGU6dXNlciIsaXRlbXM6W3trZXk6ImdlbmVyYWwiLGljb25OYW1lOiJzZXR0aW5ncyIsYWN0aW9uOigpPT50aGlzLnNob3dTZWN0aW9uKCJnZW5lcmFsIil9LHtrZXk6InByb2ZpbGUiLGljb25OYW1lOiJ1c2VyIixhY3Rpb246KCk9PnRoaXMuc2hvd1NlY3Rpb24oInByb2ZpbGUiKX0se2tleToic2VjdXJpdHkiLGljb25OYW1lOiJzaGllbGQiLGFjdGlvbjooKT0+dGhpcy5zaG93U2VjdGlvbigic2VjdXJpdHkiKX1dfSx7bmFtZToiUHJlZmVyZW5jZXMiLGljb25OYW1lOiJsdWNpZGU6c2xpZGVycyIsaXRlbXM6W3trZXk6Im5vdGlmaWNhdGlvbnMiLGljb25OYW1lOiJiZWxsIixiYWRnZTozLGFjdGlvbjooKT0+dGhpcy5zaG93U2VjdGlvbigibm90aWZpY2F0aW9ucyIpfSx7a2V5OiJhcHBlYXJhbmNlIixpY29uTmFtZToicGFsZXR0ZSIsYWN0aW9uOigpPT50aGlzLnNob3dTZWN0aW9uKCJhcHBlYXJhbmNlIil9XX1dfSkscC5hcHB1aS5zZXRTZWNvbmRhcnlNZW51U2VsZWN0aW9uKHRoaXMuc2VjdGlvbikscC5hcHB1aS5zZXRDb250ZW50VGFicyhbXSl9b25EZWFjdGl2YXRlKCl7Y29uc29sZS5sb2coIlNldHRpbmdzIGRlYWN0aXZhdGVkIiksdGhpcy5oYXNDaGFuZ2VzPSExfWNhbkRlYWN0aXZhdGUoKXtyZXR1cm4gdGhpcy5oYXNDaGFuZ2VzPyJZb3UgaGF2ZSB1bnNhdmVkIGNoYW5nZXMuIExlYXZlIGFueXdheT8iOiEwfXNob3dTZWN0aW9uKHApe3RoaXMuc2VjdGlvbj1wLHRoaXMuYXBwdWk/LnNldFNlY29uZGFyeU1lbnVTZWxlY3Rpb24ocCl9c2ltdWxhdGVDaGFuZ2UoKXt0aGlzLmhhc0NoYW5nZXM9ITB9cmVuZGVyKCl7cmV0dXJuIFNgCiAgICAgIDxzdHlsZT4KICAgICAgICA6aG9zdCB7CiAgICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICAgIHBhZGRpbmc6IDQwcHg7CiAgICAgICAgICBjb2xvcjogI2EzYTNhMzsKICAgICAgICAgIGZvbnQtZmFtaWx5OiAnR2Vpc3QgU2FucycsICdJbnRlcicsIC1hcHBsZS1zeXN0ZW0sIHNhbnMtc2VyaWY7CiAgICAgICAgfQogICAgICAgIGgxIHsgY29sb3I6ICNmYWZhZmE7IGZvbnQtd2VpZ2h0OiA2MDA7IGZvbnQtc2l6ZTogMjRweDsgbWFyZ2luLWJvdHRvbTogOHB4OyB9CiAgICAgICAgcCB7IGNvbG9yOiAjNzM3MzczOyBtYXJnaW4tYm90dG9tOiAyNHB4OyB9CiAgICAgICAgLnNlY3Rpb24tbmFtZSB7CiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDAuMDUpOwogICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwwLjEpOwogICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4OwogICAgICAgICAgcGFkZGluZzogMjRweDsKICAgICAgICAgIGZvbnQtc2l6ZTogMThweDsKICAgICAgICAgIGNvbG9yOiAjZmFmYWZhOwogICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDsKICAgICAgICB9CiAgICAgICAgLmFjdGlvbnMgewogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGdhcDogMTJweDsKICAgICAgICB9CiAgICAgICAgYnV0dG9uIHsKICAgICAgICAgIGJhY2tncm91bmQ6ICMzYjgyZjY7CiAgICAgICAgICBjb2xvcjogd2hpdGU7CiAgICAgICAgICBib3JkZXI6IG5vbmU7CiAgICAgICAgICBwYWRkaW5nOiA4cHggMTZweDsKICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICB9CiAgICAgICAgYnV0dG9uOmhvdmVyIHsKICAgICAgICAgIGJhY2tncm91bmQ6ICMyNTYzZWI7CiAgICAgICAgfQogICAgICAgIC53YXJuaW5nIHsKICAgICAgICAgIGNvbG9yOiAjZmJiZjI0OwogICAgICAgICAgZm9udC1zaXplOiAxM3B4OwogICAgICAgICAgbWFyZ2luLXRvcDogMTZweDsKICAgICAgICB9CiAgICAgIDwvc3R5bGU+CiAgICAgIDxoMT5TZXR0aW5nczwvaDE+CiAgICAgIDxwPk1hbmFnZSB5b3VyIGFjY291bnQgYW5kIGFwcGxpY2F0aW9uIHByZWZlcmVuY2VzLjwvcD4KICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi1uYW1lIj4KICAgICAgICBDdXJyZW50IHNlY3Rpb246IDxzdHJvbmc+JHt0aGlzLnNlY3Rpb259PC9zdHJvbmc+CiAgICAgIDwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJhY3Rpb25zIj4KICAgICAgICA8YnV0dG9uIEBjbGljaz0keygpPT50aGlzLnNpbXVsYXRlQ2hhbmdlKCl9Pk1ha2UgQ2hhbmdlczwvYnV0dG9uPgogICAgICA8L2Rpdj4KICAgICAgJHt0aGlzLmhhc0NoYW5nZXM/U2A8cCBjbGFzcz0id2FybmluZyI+WW91IGhhdmUgdW5zYXZlZCBjaGFuZ2VzLiBOYXZpZ2F0aW9uIHdpbGwgcHJvbXB0IGZvciBjb25maXJtYXRpb24uPC9wPmA6IiJ9CiAgICBgfX07cmV0dXJuIHU9YX0pKCksVzRuPSgoKT0+e2xldCBlPVt6ZSgiZGVtby1wcm9qZWN0cy12aWV3IildLHQscj1bXSxhLGk9RGU7dmFyIG89Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCBuPXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO044KG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOm59LG51bGwsciksbz1hPXQudmFsdWUsbiYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpufSksZmwoYSxyKX1vbkFjdGl2YXRlKG4pe24uYXBwdWkuc2V0U2Vjb25kYXJ5TWVudSh7aGVhZGluZzoiUHJvamVjdHMiLGdyb3Vwczpbe25hbWU6Ik15IFByb2plY3RzIixpY29uTmFtZToibHVjaWRlOmZvbGRlciIsaXRlbXM6W3trZXk6IkFjdGl2ZSIsaWNvbk5hbWU6ImZvbGRlciIsYmFkZ2U6MyxhY3Rpb246KCk9PmNvbnNvbGUubG9nKCJBY3RpdmUiKX0se2tleToiQXJjaGl2ZWQiLGljb25OYW1lOiJhcmNoaXZlIixhY3Rpb246KCk9PmNvbnNvbGUubG9nKCJBcmNoaXZlZCIpfSx7a2V5OiJTaGFyZWQiLGljb25OYW1lOiJ1c2VycyIsYmFkZ2U6MixiYWRnZVZhcmlhbnQ6Indhcm5pbmciLGFjdGlvbjooKT0+Y29uc29sZS5sb2coIlNoYXJlZCIpfV19LHtuYW1lOiJRdWljayBBY3Rpb25zIixpY29uTmFtZToibHVjaWRlOnphcCIsaXRlbXM6W3t0eXBlOiJhY3Rpb24iLGtleToiTmV3IFByb2plY3QiLGljb25OYW1lOiJsdWNpZGU6Zm9sZGVyUGx1cyIsYWN0aW9uOigpPT5hbGVydCgiQ3JlYXRlIG5ldyBwcm9qZWN0Iil9LHt0eXBlOiJhY3Rpb24iLGtleToiSW1wb3J0IixpY29uTmFtZToibHVjaWRlOmRvd25sb2FkIixhY3Rpb246KCk9PmFsZXJ0KCJJbXBvcnQgcHJvamVjdCIpfSx7dHlwZToiZGl2aWRlciJ9LHt0eXBlOiJsaW5rIixrZXk6IlRlbXBsYXRlcyIsaWNvbk5hbWU6Imx1Y2lkZTpsYXlvdXRUZW1wbGF0ZSIsaHJlZjoiaHR0cHM6Ly90ZW1wbGF0ZXMuZXhhbXBsZS5jb20ifV19XX0pLG4uYXBwdWkuc2V0Q29udGVudFRhYnMoW3trZXk6IkdyaWQiLGljb25OYW1lOiJsdWNpZGU6Z3JpZCIsYWN0aW9uOigpPT5jb25zb2xlLmxvZygiR3JpZCB2aWV3Iil9LHtrZXk6Ikxpc3QiLGljb25OYW1lOiJsdWNpZGU6bGlzdCIsYWN0aW9uOigpPT5jb25zb2xlLmxvZygiTGlzdCB2aWV3Iil9LHtrZXk6IkJvYXJkIixpY29uTmFtZToibHVjaWRlOmthbmJhbiIsYWN0aW9uOigpPT5jb25zb2xlLmxvZygiQm9hcmQgdmlldyIpfV0pfXJlbmRlcigpe3JldHVybiBTYAogICAgICA8c3R5bGU+CiAgICAgICAgOmhvc3QgewogICAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgICBwYWRkaW5nOiA0MHB4OwogICAgICAgICAgY29sb3I6ICNhM2EzYTM7CiAgICAgICAgICBmb250LWZhbWlseTogJ0dlaXN0IFNhbnMnLCAnSW50ZXInLCAtYXBwbGUtc3lzdGVtLCBzYW5zLXNlcmlmOwogICAgICAgIH0KICAgICAgICBoMSB7IGNvbG9yOiAjZmFmYWZhOyBmb250LXdlaWdodDogNjAwOyBmb250LXNpemU6IDI0cHg7IG1hcmdpbi1ib3R0b206IDI0cHg7IH0KICAgICAgICAucHJvamVjdHMgewogICAgICAgICAgZGlzcGxheTogZ3JpZDsKICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7CiAgICAgICAgICBnYXA6IDE2cHg7CiAgICAgICAgfQogICAgICAgIC5wcm9qZWN0IHsKICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMC4wMyk7CiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDAuMDgpOwogICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4OwogICAgICAgICAgcGFkZGluZzogMjBweDsKICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjJzOwogICAgICAgIH0KICAgICAgICAucHJvamVjdDpob3ZlciB7CiAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC4yKTsKICAgICAgICB9CiAgICAgICAgLnByb2plY3QgaDMgeyBjb2xvcjogI2ZhZmFmYTsgbWFyZ2luOiAwIDAgOHB4IDA7IGZvbnQtc2l6ZTogMTZweDsgfQogICAgICAgIC5wcm9qZWN0IHAgeyBjb2xvcjogIzczNzM3MzsgbWFyZ2luOiAwOyBmb250LXNpemU6IDEzcHg7IH0KICAgICAgICAuYmFkZ2UgewogICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgICAgICAgYmFja2dyb3VuZDogIzE0NTMyZDsKICAgICAgICAgIGNvbG9yOiAjNGFkZTgwOwogICAgICAgICAgcGFkZGluZzogMnB4IDhweDsKICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDlweDsKICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDsKICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7CiAgICAgICAgfQogICAgICA8L3N0eWxlPgogICAgICA8aDE+UHJvamVjdHM8L2gxPgogICAgICA8ZGl2IGNsYXNzPSJwcm9qZWN0cyI+CiAgICAgICAgPGRpdiBjbGFzcz0icHJvamVjdCI+CiAgICAgICAgICA8aDM+RnJvbnRlbmQgQXBwIDxzcGFuIGNsYXNzPSJiYWRnZSI+QWN0aXZlPC9zcGFuPjwvaDM+CiAgICAgICAgICA8cD5SZWFjdC1iYXNlZCBkYXNoYm9hcmQgYXBwbGljYXRpb248L3A+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0icHJvamVjdCI+CiAgICAgICAgICA8aDM+QVBJIFNlcnZlciA8c3BhbiBjbGFzcz0iYmFkZ2UiPkFjdGl2ZTwvc3Bhbj48L2gzPgogICAgICAgICAgPHA+Tm9kZS5qcyBSRVNUIEFQSSBiYWNrZW5kPC9wPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InByb2plY3QiPgogICAgICAgICAgPGgzPk1vYmlsZSBBcHAgPHNwYW4gY2xhc3M9ImJhZGdlIj5BY3RpdmU8L3NwYW4+PC9oMz4KICAgICAgICAgIDxwPlJlYWN0IE5hdGl2ZSBpT1MvQW5kcm9pZCBhcHA8L3A+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0icHJvamVjdCI+CiAgICAgICAgICA8aDM+RG9jdW1lbnRhdGlvbjwvaDM+CiAgICAgICAgICA8cD5UZWNobmljYWwgZG9jdW1lbnRhdGlvbiBzaXRlPC9wPgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIGB9fTtyZXR1cm4gbz1hfSkoKSxHNG49KCgpPT57bGV0IGU9W3plKCJkZW1vLXRhc2tzLXZpZXciKV0sdCxyPVtdLGEsaT1EZTt2YXIgbz1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IG49dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7TjgobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6bn0sbnVsbCxyKSxvPWE9dC52YWx1ZSxuJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOm59KSxmbChhLHIpfW9uQWN0aXZhdGUobil7bi5hcHB1aS5zZXRTZWNvbmRhcnlNZW51KHtoZWFkaW5nOiJUYXNrcyIsZ3JvdXBzOlt7bmFtZToiVmlld3MiLGljb25OYW1lOiJsdWNpZGU6ZXllIixpdGVtczpbe2tleToiQWxsIFRhc2tzIixpY29uTmFtZToibGlzdCIsYmFkZ2U6MTIsYWN0aW9uOigpPT5jb25zb2xlLmxvZygiQWxsIil9LHtrZXk6IlRvZGF5IixpY29uTmFtZToiY2FsZW5kYXIiLGJhZGdlOjMsYWN0aW9uOigpPT5jb25zb2xlLmxvZygiVG9kYXkiKX0se2tleToiVXBjb21pbmciLGljb25OYW1lOiJjbG9jayIsYWN0aW9uOigpPT5jb25zb2xlLmxvZygiVXBjb21pbmciKX0se2tleToiQ29tcGxldGVkIixpY29uTmFtZToiY2hlY2tDaXJjbGUiLGFjdGlvbjooKT0+Y29uc29sZS5sb2coIkNvbXBsZXRlZCIpfV19LHtuYW1lOiJGaWx0ZXJzIixpY29uTmFtZToibHVjaWRlOmZpbHRlciIsaXRlbXM6W3t0eXBlOiJoZWFkZXIiLGxhYmVsOiJQcmlvcml0eSJ9LHt0eXBlOiJtdWx0aUZpbHRlciIsa2V5OiJQcmlvcml0eSIsaWNvbk5hbWU6Imx1Y2lkZTpmbGFnIixvcHRpb25zOlt7a2V5OiJoaWdoIixsYWJlbDoiSGlnaCIsY2hlY2tlZDohMCxpY29uTmFtZToibHVjaWRlOmFsZXJ0Q2lyY2xlIn0se2tleToibWVkaXVtIixsYWJlbDoiTWVkaXVtIixjaGVja2VkOiEwLGljb25OYW1lOiJsdWNpZGU6bWludXNDaXJjbGUifSx7a2V5OiJsb3ciLGxhYmVsOiJMb3ciLGNoZWNrZWQ6ITEsaWNvbk5hbWU6Imx1Y2lkZTpjaXJjbGUifV0sb25DaGFuZ2U6cz0+Y29uc29sZS5sb2coIlByaW9yaXR5IGZpbHRlcjoiLHMpfSx7dHlwZToiZGl2aWRlciJ9LHt0eXBlOiJoZWFkZXIiLGxhYmVsOiJPcHRpb25zIn0se3R5cGU6ImZpbHRlciIsa2V5OiJTaG93IFN1YnRhc2tzIixpY29uTmFtZToibHVjaWRlOmxpc3RUcmVlIixhY3RpdmU6ITAsb25Ub2dnbGU6cz0+Y29uc29sZS5sb2coIlNob3cgc3VidGFza3M6IixzKX0se3R5cGU6ImZpbHRlciIsa2V5OiJTaG93IENvbXBsZXRlZCIsaWNvbk5hbWU6Imx1Y2lkZTpjaGVja1NxdWFyZSIsYWN0aXZlOiExLG9uVG9nZ2xlOnM9PmNvbnNvbGUubG9nKCJTaG93IGNvbXBsZXRlZDoiLHMpfV19LHtuYW1lOiJBY3Rpb25zIixpY29uTmFtZToibHVjaWRlOnphcCIsaXRlbXM6W3t0eXBlOiJhY3Rpb24iLGtleToiQWRkIFRhc2siLGljb25OYW1lOiJsdWNpZGU6cGx1cyIsYWN0aW9uOigpPT5hbGVydCgiQWRkIG5ldyB0YXNrIil9LHt0eXBlOiJhY3Rpb24iLGtleToiSW1wb3J0IFRhc2tzIixpY29uTmFtZToibHVjaWRlOnVwbG9hZCIsYWN0aW9uOigpPT5hbGVydCgiSW1wb3J0IHRhc2tzIil9LHt0eXBlOiJkaXZpZGVyIn0se3R5cGU6ImFjdGlvbiIsa2V5OiJDbGVhciBDb21wbGV0ZWQiLGljb25OYW1lOiJsdWNpZGU6dHJhc2gyIix2YXJpYW50OiJkYW5nZXIiLGNvbmZpcm1NZXNzYWdlOiJEZWxldGUgYWxsIGNvbXBsZXRlZCB0YXNrcz8iLGFjdGlvbjooKT0+YWxlcnQoIkNsZWFyZWQgY29tcGxldGVkIHRhc2tzIil9XX1dfSksbi5hcHB1aS5zZXRDb250ZW50VGFicyhbe2tleToiTGlzdCIsaWNvbk5hbWU6Imx1Y2lkZTpsaXN0IixhY3Rpb246KCk9PmNvbnNvbGUubG9nKCJMaXN0Iil9LHtrZXk6IkNhbGVuZGFyIixpY29uTmFtZToibHVjaWRlOmNhbGVuZGFyIixhY3Rpb246KCk9PmNvbnNvbGUubG9nKCJDYWxlbmRhciIpfV0pfXJlbmRlcigpe3JldHVybiBTYAogICAgICA8c3R5bGU+CiAgICAgICAgOmhvc3QgewogICAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgICBwYWRkaW5nOiA0MHB4OwogICAgICAgICAgY29sb3I6ICNhM2EzYTM7CiAgICAgICAgICBmb250LWZhbWlseTogJ0dlaXN0IFNhbnMnLCAnSW50ZXInLCAtYXBwbGUtc3lzdGVtLCBzYW5zLXNlcmlmOwogICAgICAgIH0KICAgICAgICBoMSB7IGNvbG9yOiAjZmFmYWZhOyBmb250LXdlaWdodDogNjAwOyBmb250LXNpemU6IDI0cHg7IG1hcmdpbi1ib3R0b206IDI0cHg7IH0KICAgICAgICAudGFzay1saXN0IHsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgICAgZ2FwOiA4cHg7CiAgICAgICAgfQogICAgICAgIC50YXNrIHsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgICAgZ2FwOiAxMnB4OwogICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwwLjAzKTsKICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsMC4wOCk7CiAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7CiAgICAgICAgICBwYWRkaW5nOiAxMnB4IDE2cHg7CiAgICAgICAgfQogICAgICAgIC5jaGVja2JveCB7CiAgICAgICAgICB3aWR0aDogMThweDsKICAgICAgICAgIGhlaWdodDogMThweDsKICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICM1MjUyNTI7CiAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgfQogICAgICAgIC50YXNrLXRleHQgeyBjb2xvcjogI2ZhZmFmYTsgZmxleDogMTsgfQogICAgICAgIC5kdWUtZGF0ZSB7IGNvbG9yOiAjNzM3MzczOyBmb250LXNpemU6IDEycHg7IH0KICAgICAgICAucHJpb3JpdHkgewogICAgICAgICAgcGFkZGluZzogMnB4IDhweDsKICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDsKICAgICAgICB9CiAgICAgICAgLnByaW9yaXR5LmhpZ2ggeyBiYWNrZ3JvdW5kOiAjNDUwYTBhOyBjb2xvcjogI2Y4NzE3MTsgfQogICAgICAgIC5wcmlvcml0eS5tZWRpdW0geyBiYWNrZ3JvdW5kOiAjNDUxYTAzOyBjb2xvcjogI2ZiYmYyNDsgfQogICAgICA8L3N0eWxlPgogICAgICA8aDE+VGFza3M8L2gxPgogICAgICA8ZGl2IGNsYXNzPSJ0YXNrLWxpc3QiPgogICAgICAgIDxkaXYgY2xhc3M9InRhc2siPgogICAgICAgICAgPGRpdiBjbGFzcz0iY2hlY2tib3giPjwvZGl2PgogICAgICAgICAgPHNwYW4gY2xhc3M9InRhc2stdGV4dCI+UmV2aWV3IHB1bGwgcmVxdWVzdCAjNDI8L3NwYW4+CiAgICAgICAgICA8c3BhbiBjbGFzcz0iZHVlLWRhdGUiPlRvZGF5PC9zcGFuPgogICAgICAgICAgPHNwYW4gY2xhc3M9InByaW9yaXR5IGhpZ2giPkhpZ2g8L3NwYW4+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0idGFzayI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjaGVja2JveCI+PC9kaXY+CiAgICAgICAgICA8c3BhbiBjbGFzcz0idGFzay10ZXh0Ij5VcGRhdGUgZG9jdW1lbnRhdGlvbjwvc3Bhbj4KICAgICAgICAgIDxzcGFuIGNsYXNzPSJkdWUtZGF0ZSI+VG9tb3Jyb3c8L3NwYW4+CiAgICAgICAgICA8c3BhbiBjbGFzcz0icHJpb3JpdHkgbWVkaXVtIj5NZWRpdW08L3NwYW4+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0idGFzayI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjaGVja2JveCI+PC9kaXY+CiAgICAgICAgICA8c3BhbiBjbGFzcz0idGFzay10ZXh0Ij5Xcml0ZSB1bml0IHRlc3RzPC9zcGFuPgogICAgICAgICAgPHNwYW4gY2xhc3M9ImR1ZS1kYXRlIj5EZWMgMjA8L3NwYW4+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgYH19O3JldHVybiBvPWF9KSgpLHlQcj0oKT0+e2xldCBlPXticmFuZGluZzp7bG9nb0ljb246Imx1Y2lkZTpib3giLGxvZ29UZXh0OiJBY21lIEFwcCJ9LGFwcEJhcjp7bWVudUl0ZW1zOlt7bmFtZToiRmlsZSIsYWN0aW9uOmFzeW5jKCk9Pnt9LHN1Ym1lbnU6W3tuYW1lOiJOZXcgUHJvamVjdCIsc2hvcnRjdXQ6IkNtZCtOIixpY29uTmFtZToiZmlsZVBsdXMiLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiTmV3Iil9LHtuYW1lOiJPcGVuLi4uIixzaG9ydGN1dDoiQ21kK08iLGljb25OYW1lOiJmb2xkZXJPcGVuIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIk9wZW4iKX0se25hbWU6IlJlY2VudCBQcm9qZWN0cyIsYWN0aW9uOmFzeW5jKCk9Pnt9LHN1Ym1lbnU6W3tuYW1lOiJteS1hcHAiLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiT3BlbiBteS1hcHAiKX0se25hbWU6ImNvbXBvbmVudC1saWIiLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiT3BlbiBjb21wb25lbnQtbGliIil9XX0se2RpdmlkZXI6ITB9LHtuYW1lOiJTYXZlIEFsbCIsc2hvcnRjdXQ6IkNtZCtTIixpY29uTmFtZToic2F2ZSIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJTYXZlIil9XX0se25hbWU6IkVkaXQiLGFjdGlvbjphc3luYygpPT57fSxzdWJtZW51Olt7bmFtZToiVW5kbyIsc2hvcnRjdXQ6IkNtZCtaIixpY29uTmFtZToidW5kbyIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJVbmRvIil9LHtuYW1lOiJSZWRvIixzaG9ydGN1dDoiQ21kK1NoaWZ0K1oiLGljb25OYW1lOiJyZWRvIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIlJlZG8iKX0se2RpdmlkZXI6ITB9LHtuYW1lOiJDdXQiLHNob3J0Y3V0OiJDbWQrWCIsaWNvbk5hbWU6InNjaXNzb3JzIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIkN1dCIpfSx7bmFtZToiQ29weSIsc2hvcnRjdXQ6IkNtZCtDIixpY29uTmFtZToiY29weSIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJDb3B5Iil9LHtuYW1lOiJQYXN0ZSIsc2hvcnRjdXQ6IkNtZCtWIixpY29uTmFtZToiY2xpcGJvYXJkIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIlBhc3RlIil9XX0se25hbWU6IlZpZXciLGFjdGlvbjphc3luYygpPT57fSxzdWJtZW51Olt7bmFtZToiVG9nZ2xlIFNpZGViYXIiLHNob3J0Y3V0OiJDbWQrQiIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJUb2dnbGUgc2lkZWJhciIpfSx7bmFtZToiVG9nZ2xlIEFjdGl2aXR5IExvZyIsc2hvcnRjdXQ6IkNtZCtTaGlmdCtBIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIlRvZ2dsZSBhY3Rpdml0eSIpfV19LHtuYW1lOiJIZWxwIixhY3Rpb246YXN5bmMoKT0+e30sc3VibWVudTpbe25hbWU6IkRvY3VtZW50YXRpb24iLGljb25OYW1lOiJib29rIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIkRvY3MiKX0se25hbWU6IktleWJvYXJkIFNob3J0Y3V0cyIsaWNvbk5hbWU6ImtleWJvYXJkIixzaG9ydGN1dDoiQ21kKy8iLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiU2hvcnRjdXRzIil9LHtkaXZpZGVyOiEwfSx7bmFtZToiQWJvdXQiLGljb25OYW1lOiJpbmZvIixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIkFib3V0Iil9XX1dLGJyZWFkY3J1bWJzOiJEYXNoYm9hcmQiLHNob3dXaW5kb3dDb250cm9sczohMCxzaG93U2VhcmNoOiEwLHVzZXI6e25hbWU6IkphbmUgU21pdGgiLGVtYWlsOiJqYW5lLnNtaXRoQGV4YW1wbGUuY29tIixzdGF0dXM6Im9ubGluZSJ9LHByb2ZpbGVNZW51SXRlbXM6W3tuYW1lOiJQcm9maWxlIixpY29uTmFtZToidXNlciIsYWN0aW9uOmFzeW5jKCk9PmNvbnNvbGUubG9nKCJQcm9maWxlIil9LHtuYW1lOiJBY2NvdW50IFNldHRpbmdzIixpY29uTmFtZToic2V0dGluZ3MiLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiU2V0dGluZ3MiKX0se2RpdmlkZXI6ITB9LHtuYW1lOiJIZWxwICYgU3VwcG9ydCIsaWNvbk5hbWU6ImhlbHBDaXJjbGUiLGFjdGlvbjphc3luYygpPT5jb25zb2xlLmxvZygiSGVscCIpfSx7ZGl2aWRlcjohMH0se25hbWU6IlNpZ24gT3V0IixpY29uTmFtZToibG9nT3V0IixhY3Rpb246YXN5bmMoKT0+Y29uc29sZS5sb2coIlNpZ24gb3V0Iil9XX0sdmlld3M6W3tpZDoiZGFzaGJvYXJkIixuYW1lOiJEYXNoYm9hcmQiLGljb25OYW1lOiJsdWNpZGU6aG9tZSIsY29udGVudDoiZGVtby1kYXNoYm9hcmQtdmlldyIscm91dGU6ImRhc2hib2FyZCJ9LHtpZDoicHJvamVjdHMiLG5hbWU6IlByb2plY3RzIixpY29uTmFtZToibHVjaWRlOmZvbGRlciIsY29udGVudDoiZGVtby1wcm9qZWN0cy12aWV3Iixyb3V0ZToicHJvamVjdHMiLGJhZGdlOjN9LHtpZDoidGFza3MiLG5hbWU6IlRhc2tzIixpY29uTmFtZToibHVjaWRlOmNoZWNrU3F1YXJlIixjb250ZW50OiJkZW1vLXRhc2tzLXZpZXciLHJvdXRlOiJ0YXNrcyIsYmFkZ2U6MTJ9LHtpZDoic2V0dGluZ3MiLG5hbWU6IlNldHRpbmdzIixpY29uTmFtZToibHVjaWRlOnNldHRpbmdzIixjb250ZW50OiJkZW1vLXNldHRpbmdzLXZpZXciLHJvdXRlOiJzZXR0aW5ncy86c2VjdGlvbj8ifV0sbWFpbk1lbnU6e3NlY3Rpb25zOlt7bmFtZToiTWFpbiIsdmlld3M6WyJkYXNoYm9hcmQiXX0se25hbWU6IldvcmtzcGFjZSIsdmlld3M6WyJwcm9qZWN0cyIsInRhc2tzIl19XSxib3R0b21JdGVtczpbInNldHRpbmdzIl19LGRlZmF1bHRWaWV3OiJkYXNoYm9hcmQiLGJvdHRvbUJhcjp7dmlzaWJsZTohMCx3aWRnZXRzOlt7aWQ6InN0YXR1cyIsaWNvbk5hbWU6Imx1Y2lkZTphY3Rpdml0eSIsbGFiZWw6IlN5c3RlbSBPbmxpbmUiLHN0YXR1czoic3VjY2VzcyIsdG9vbHRpcDoiQWxsIHN5c3RlbXMgb3BlcmF0aW9uYWwiLG9uQ2xpY2s6KCk9PmNvbnNvbGUubG9nKCJTdGF0dXMgY2xpY2tlZCIpfSx7aWQ6Im5vdGlmaWNhdGlvbnMiLGljb25OYW1lOiJsdWNpZGU6YmVsbCIsbGFiZWw6IjMgbm90aWZpY2F0aW9ucyIsc3RhdHVzOiJ3YXJuaW5nIix0b29sdGlwOiJZb3UgaGF2ZSB1bnJlYWQgbm90aWZpY2F0aW9ucyIsb25DbGljazooKT0+Y29uc29sZS5sb2coIk5vdGlmaWNhdGlvbnMgY2xpY2tlZCIpfSx7aWQ6InZlcnNpb24iLGljb25OYW1lOiJsdWNpZGU6Z2l0QnJhbmNoIixsYWJlbDoidjEuMi4zIixwb3NpdGlvbjoicmlnaHQiLHRvb2x0aXA6IkN1cnJlbnQgdmVyc2lvbiJ9XSxhY3Rpb25zOlt7aWQ6InRlcm1pbmFsIixpY29uTmFtZToibHVjaWRlOnRlcm1pbmFsIix0b29sdGlwOiJPcGVuIFRlcm1pbmFsIixwb3NpdGlvbjoicmlnaHQiLG9uQ2xpY2s6KCk9PmNvbnNvbGUubG9nKCJUZXJtaW5hbCBjbGlja2VkIil9XX0sb25WaWV3Q2hhbmdlOihhLGkpPT57Y29uc29sZS5sb2coYFZpZXcgY2hhbmdlZCB0bzogJHthfSAoJHtpLm5hbWV9KWApfSxvblNlYXJjaDphPT57Y29uc29sZS5sb2coIlNlYXJjaCBxdWVyeToiLGEpfX0sdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTt0LmNsYXNzTmFtZT0iZGVtby1jb250YWluZXIiLHQuc3R5bGUuY3NzVGV4dD0icG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDA7IGhlaWdodDogMTAwJTsgd2lkdGg6IDEwMCU7IG92ZXJmbG93OiBoaWRkZW47IjtsZXQgcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkZWVzLWFwcHVpIik7cmV0dXJuIHQuYXBwZW5kQ2hpbGQociksc2V0VGltZW91dChhc3luYygpPT57YXdhaXQgci51cGRhdGVDb21wbGV0ZSxyLmNvbmZpZ3VyZShlKSxzZXRUaW1lb3V0KCgpPT57ci5hY3Rpdml0eUxvZy5hZGRNYW55KFt7dHlwZToibG9naW4iLHVzZXI6IkphbmUgU21pdGgiLG1lc3NhZ2U6ImxvZ2dlZCBpbiBmcm9tIENocm9tZSBvbiBtYWNPUyJ9LHt0eXBlOiJjcmVhdGUiLHVzZXI6IkphbmUgU21pdGgiLG1lc3NhZ2U6J2NyZWF0ZWQgcHJvamVjdCAiRnJvbnRlbmQgQXBwIid9LHt0eXBlOiJ1cGRhdGUiLHVzZXI6IkpvaG4gRG9lIixtZXNzYWdlOiJ1cGRhdGVkIEFQSSBkb2N1bWVudGF0aW9uIn0se3R5cGU6InZpZXciLHVzZXI6IkphbmUgU21pdGgiLG1lc3NhZ2U6InZpZXdlZCBkYXNoYm9hcmQgYW5hbHl0aWNzIn0se3R5cGU6ImRlbGV0ZSIsdXNlcjoiQWRtaW4iLG1lc3NhZ2U6InJlbW92ZWQgZGVwcmVjYXRlZCBlbmRwb2ludCJ9LHt0eXBlOiJjdXN0b20iLHVzZXI6IlN5c3RlbSIsbWVzc2FnZToic2NoZWR1bGVkIGJhY2t1cCBjb21wbGV0ZWQiLGljb25OYW1lOiJsdWNpZGU6ZGF0YWJhc2UifV0pfSw1MDApLHIudmlld0NoYW5nZWQkLnN1YnNjcmliZShhPT57Y29uc29sZS5sb2coIlZpZXcgY2hhbmdlZCBldmVudDoiLGEpLHIuc2V0QnJlYWRjcnVtYnMoYS52aWV3Lm5hbWUpfSksci52aWV3TGlmZWN5Y2xlJC5zdWJzY3JpYmUoYT0+e2NvbnNvbGUubG9nKCJMaWZlY3ljbGUgZXZlbnQ6IixhLnR5cGUsYS52aWV3SWQpfSksc2V0VGltZW91dCgoKT0+e3Iuc2V0TWFpbk1lbnVCYWRnZSgidGFza3MiLDE1KSxyLmFjdGl2aXR5TG9nLmFkZCh7dHlwZToidXBkYXRlIix1c2VyOiJTeXN0ZW0iLG1lc3NhZ2U6Im5ldyB0YXNrcyBhZGRlZCJ9KX0sNWUzKX0sMCksU2AKICAgIDxkZWVzLWRlbW93cmFwcGVyPgogICAgICAke3R9CiAgICA8L2RlZXMtZGVtb3dyYXBwZXI+CiAgYH19KTt2YXIgUFosVGN0PWwoKCk9PntTZSgpO1BaPWNsYXNze3ZpZXdzPW5ldyBNYXA7aW5zdGFuY2VzPW5ldyBNYXA7Y3VycmVudFZpZXdJZD1udWxsO2FwcHVpPW51bGw7c2V0QXBwdWlSZWYodCl7dGhpcy5hcHB1aT10fXJlZ2lzdGVyKHQpe3RoaXMudmlld3MuaGFzKHQuaWQpJiZjb25zb2xlLndhcm4oYFZpZXcgd2l0aCBpZCAiJHt0LmlkfSIgYWxyZWFkeSByZWdpc3RlcmVkLiBPdmVyd3JpdGluZy5gKSx0aGlzLnZpZXdzLnNldCh0LmlkLHQpfXJlZ2lzdGVyQWxsKHQpe3QuZm9yRWFjaChyPT50aGlzLnJlZ2lzdGVyKHIpKX1nZXQodCl7cmV0dXJuIHRoaXMudmlld3MuZ2V0KHQpfWdldFZpZXdJZHMoKXtyZXR1cm4gQXJyYXkuZnJvbSh0aGlzLnZpZXdzLmtleXMoKSl9Z2V0QWxsKCl7cmV0dXJuIEFycmF5LmZyb20odGhpcy52aWV3cy52YWx1ZXMoKSl9Z2V0Um91dGUodCl7bGV0IHI9dGhpcy52aWV3cy5nZXQodCk7cmV0dXJuIHI/LnJvdXRlfHxyPy5pZHx8IiJ9ZmluZEJ5Um91dGUodCl7Zm9yKGxldCByIG9mIHRoaXMudmlld3MudmFsdWVzKCkpe2xldCBhPXIucm91dGV8fHIuaWQsaT10aGlzLm1hdGNoUm91dGUoYSx0KTtpZihpIT09bnVsbClyZXR1cm57dmlldzpyLHBhcmFtczppfX19bWF0Y2hSb3V0ZSh0LHIpe2xldCBhPXQuc3BsaXQoIi8iKSxpPXIuc3BsaXQoIi8iKTtpZihhLmxlbmd0aD4wJiZhW2EubGVuZ3RoLTFdLmVuZHNXaXRoKCI/Iikpe2lmKGkubGVuZ3RoPGEubGVuZ3RoLTF8fGkubGVuZ3RoPmEubGVuZ3RoKXJldHVybiBudWxsfWVsc2UgaWYoYS5sZW5ndGghPT1pLmxlbmd0aClyZXR1cm4gbnVsbDtsZXQgbj17fTtmb3IobGV0IHM9MDtzPGEubGVuZ3RoO3MrKyl7bGV0IGM9YVtzXSxkPWMuZW5kc1dpdGgoIj8iKTtpZihkJiYoYz1jLnNsaWNlKDAsLTEpKSxjLnN0YXJ0c1dpdGgoIjoiKSl7bGV0IGY9Yy5zbGljZSgxKTtpZihpW3NdIT09dm9pZCAwKW5bZl09aVtzXTtlbHNlIGlmKCFkKXJldHVybiBudWxsfWVsc2UgaWYoaVtzXSE9PWMpcmV0dXJuIG51bGx9cmV0dXJuIG59YXN5bmMgY2FuTGVhdmVDdXJyZW50Vmlldygpe2lmKCF0aGlzLmN1cnJlbnRWaWV3SWQpcmV0dXJuITA7bGV0IHQ9dGhpcy5pbnN0YW5jZXMuZ2V0KHRoaXMuY3VycmVudFZpZXdJZCk7aWYoIXQpcmV0dXJuITA7bGV0IHI9dDtyZXR1cm4gdHlwZW9mIHIuY2FuRGVhY3RpdmF0ZT09ImZ1bmN0aW9uIj9hd2FpdCByLmNhbkRlYWN0aXZhdGUoKTohMH1hc3luYyBhY3RpdmF0ZVZpZXcodCxyLGEpe2xldCBpPXRoaXMudmlld3MuZ2V0KHQpO2lmKCFpKXJldHVybiBjb25zb2xlLmVycm9yKGBWaWV3ICIke3R9IiBub3QgZm91bmQgaW4gcmVnaXN0cnlgKSxudWxsO2xldCBvPWkuY2FjaGUhPT0hMTt0aGlzLmN1cnJlbnRWaWV3SWQmJnRoaXMuY3VycmVudFZpZXdJZCE9PXQmJmF3YWl0IHRoaXMuZGVhY3RpdmF0ZVZpZXcodGhpcy5jdXJyZW50Vmlld0lkKTtsZXQgbj1vP3RoaXMuaW5zdGFuY2VzLmdldCh0KTp2b2lkIDA7aWYobiluLnN0eWxlLmRpc3BsYXk9IiI7ZWxzZXtpZihuPWF3YWl0IHRoaXMuY3JlYXRlVmlld0VsZW1lbnQoaSksIW4pcmV0dXJuIGNvbnNvbGUuZXJyb3IoYEZhaWxlZCB0byBjcmVhdGUgZWxlbWVudCBmb3IgdmlldyAiJHt0fSJgKSxudWxsO3IuYXBwZW5kQ2hpbGQobiksbyYmdGhpcy5pbnN0YW5jZXMuc2V0KHQsbil9cmV0dXJuIHRoaXMuY3VycmVudFZpZXdJZD10LGF3YWl0IHRoaXMuY2FsbE9uQWN0aXZhdGUobix0LGEpLG59YXN5bmMgZGVhY3RpdmF0ZVZpZXcodCl7bGV0IHI9dGhpcy5pbnN0YW5jZXMuZ2V0KHQpO2lmKCFyKXJldHVybjtsZXQgYT1yO3R5cGVvZiBhLm9uRGVhY3RpdmF0ZT09ImZ1bmN0aW9uIiYmYXdhaXQgYS5vbkRlYWN0aXZhdGUoKSxyLnN0eWxlLmRpc3BsYXk9Im5vbmUifWFzeW5jIGNyZWF0ZVZpZXdFbGVtZW50KHQpe2xldCByPXQuY29udGVudDtpZih0eXBlb2Ygcj09ImZ1bmN0aW9uIiYmIShyLnByb3RvdHlwZSBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KSYmci5jb25zdHJ1Y3Rvci5uYW1lPT09IkFzeW5jRnVuY3Rpb24iKXRyeXtyPWF3YWl0IHIoKX1jYXRjaChpKXtyZXR1cm4gY29uc29sZS5lcnJvcihgRmFpbGVkIHRvIGxvYWQgYXN5bmMgY29udGVudCBmb3IgdmlldyAiJHt0LmlkfSI6YCxpKSxudWxsfWxldCBhO2lmKHR5cGVvZiByPT0ic3RyaW5nIilhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQocik7ZWxzZSBpZih0eXBlb2Ygcj09ImZ1bmN0aW9uIilpZihyLnByb3RvdHlwZSBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KWE9bmV3IHI7ZWxzZXtsZXQgaT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtpLmNsYXNzTmFtZT0idmlldy1jb250ZW50LXdyYXBwZXIiLGkuc3R5bGUuY3NzVGV4dD0iZGlzcGxheTogY29udGVudHM7IjtsZXQgbz1yKCk7WmQobyxpKSxhPWl9ZWxzZSByZXR1cm4gY29uc29sZS5lcnJvcihgSW52YWxpZCBjb250ZW50IHR5cGUgZm9yIHZpZXcgIiR7dC5pZH0iYCksbnVsbDtyZXR1cm4gYS5kYXRhc2V0LnZpZXdJZD10LmlkLGF9YXN5bmMgY2FsbE9uQWN0aXZhdGUodCxyLGEpe2xldCBpPXQ7aWYodHlwZW9mIGkub25BY3RpdmF0ZT09ImZ1bmN0aW9uIil7bGV0IG89e2FwcHVpOnRoaXMuYXBwdWksdmlld0lkOnIscGFyYW1zOmF9O2F3YWl0IGkub25BY3RpdmF0ZShvKX19cmVuZGVyVmlldyh0LHIpe2xldCBhPXRoaXMudmlld3MuZ2V0KHQpO2lmKCFhKXJldHVybiBjb25zb2xlLmVycm9yKGBWaWV3ICIke3R9IiBub3QgZm91bmQgaW4gcmVnaXN0cnlgKSxudWxsO3IuaW5uZXJIVE1MPSIiO2xldCBpLG89YS5jb250ZW50O2lmKHR5cGVvZiBvPT0ic3RyaW5nIilpPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQobyk7ZWxzZSBpZih0eXBlb2Ygbz09ImZ1bmN0aW9uIilpZihvLnByb3RvdHlwZSBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KWk9bmV3IG87ZWxzZXtsZXQgbj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtuLmNsYXNzTmFtZT0idmlldy1jb250ZW50LXdyYXBwZXIiLG4uc3R5bGUuY3NzVGV4dD0iZGlzcGxheTogY29udGVudHM7IjtsZXQgcz1vKCk7WmQocyxuKSxpPW59ZWxzZSByZXR1cm4gY29uc29sZS5lcnJvcihgSW52YWxpZCBjb250ZW50IHR5cGUgZm9yIHZpZXcgIiR7dH0iYCksbnVsbDtyZXR1cm4gci5hcHBlbmRDaGlsZChpKSx0aGlzLmluc3RhbmNlcy5zZXQodCxpKSx0aGlzLmN1cnJlbnRWaWV3SWQ9dCxpfWdldEN1cnJlbnRWaWV3SWQoKXtyZXR1cm4gdGhpcy5jdXJyZW50Vmlld0lkfWdldEluc3RhbmNlKHQpe3JldHVybiB0aGlzLmluc3RhbmNlcy5nZXQodCl9Y2xlYXJJbnN0YW5jZSh0KXtsZXQgcj10aGlzLmluc3RhbmNlcy5nZXQodCk7ciYmci5wYXJlbnROb2RlJiZyLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQociksdGhpcy5pbnN0YW5jZXMuZGVsZXRlKHQpLHRoaXMuY3VycmVudFZpZXdJZD09PXQmJih0aGlzLmN1cnJlbnRWaWV3SWQ9bnVsbCl9Y2xlYXJJbnN0YW5jZXMoKXtmb3IobGV0W3Qscl1vZiB0aGlzLmluc3RhbmNlcylyLnBhcmVudE5vZGUmJnIucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChyKTt0aGlzLmluc3RhbmNlcy5jbGVhcigpLHRoaXMuY3VycmVudFZpZXdJZD1udWxsfXVucmVnaXN0ZXIodCl7cmV0dXJuIHRoaXMuY2xlYXJJbnN0YW5jZSh0KSx0aGlzLnZpZXdzLmRlbGV0ZSh0KX1jbGVhcigpe3RoaXMudmlld3MuY2xlYXIoKSx0aGlzLmNsZWFySW5zdGFuY2VzKCl9aGFzKHQpe3JldHVybiB0aGlzLnZpZXdzLmhhcyh0KX1nZXQgc2l6ZSgpe3JldHVybiB0aGlzLnZpZXdzLnNpemV9fX0pO3ZhciBNUHIsa1ByPWwoKCk9PntTZSgpO01Qcj0oKT0+U2AKICA8c3R5bGU+CiAgICAuZGVtby1tYWlubWVudS1jb250YWluZXIgewogICAgICBkaXNwbGF5OiBmbGV4OwogICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgIGJhY2tncm91bmQ6ICMxYTFhMWE7CiAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgIH0KICAgIC5kZW1vLW1haW5tZW51LWNvbnRhaW5lciAuc3BhY2VyIHsKICAgICAgZmxleDogMTsKICAgICAgYmFja2dyb3VuZDogIzBmMGYwZjsKICAgIH0KICA8L3N0eWxlPgogIDxkaXYgY2xhc3M9ImRlbW8tbWFpbm1lbnUtY29udGFpbmVyIj4KICAgIDxkZWVzLWFwcHVpLW1haW5tZW51CiAgICAgIC5sb2dvSWNvbj0keyJsdWNpZGU6Ym94In0KICAgICAgLmxvZ29UZXh0PSR7IkFjbWUgQXBwIn0KICAgICAgLm1lbnVHcm91cHM9JHtbe3RhYnM6W3trZXk6IkRhc2hib2FyZCIsaWNvbk5hbWU6Imx1Y2lkZTpob21lIixhY3Rpb246KCk9PmNvbnNvbGUubG9nKCJEYXNoYm9hcmQiKX0se2tleToiSW5ib3giLGljb25OYW1lOiJsdWNpZGU6aW5ib3giLGFjdGlvbjooKT0+Y29uc29sZS5sb2coIkluYm94Iil9XX0se25hbWU6IldvcmtzcGFjZSIsdGFiczpbe2tleToiUHJvamVjdHMiLGljb25OYW1lOiJsdWNpZGU6Zm9sZGVyIixhY3Rpb246KCk9PmNvbnNvbGUubG9nKCJQcm9qZWN0cyIpfSx7a2V5OiJUYXNrcyIsaWNvbk5hbWU6Imx1Y2lkZTpjaGVja1NxdWFyZSIsYWN0aW9uOigpPT5jb25zb2xlLmxvZygiVGFza3MiKX0se2tleToiRG9jdW1lbnRzIixpY29uTmFtZToibHVjaWRlOmZpbGVUZXh0IixhY3Rpb246KCk9PmNvbnNvbGUubG9nKCJEb2N1bWVudHMiKX1dfSx7bmFtZToiQW5hbHl0aWNzIix0YWJzOlt7a2V5OiJSZXBvcnRzIixpY29uTmFtZToibHVjaWRlOmJhckNoYXJ0MyIsYWN0aW9uOigpPT5jb25zb2xlLmxvZygiUmVwb3J0cyIpfSx7a2V5OiJJbnNpZ2h0cyIsaWNvbk5hbWU6Imx1Y2lkZTpsaWdodGJ1bGIiLGFjdGlvbjooKT0+Y29uc29sZS5sb2coIkluc2lnaHRzIil9XX1dfQogICAgICAuYm90dG9tVGFicz0ke1t7a2V5OiJTZXR0aW5ncyIsaWNvbk5hbWU6Imx1Y2lkZTpzZXR0aW5ncyIsYWN0aW9uOigpPT5jb25zb2xlLmxvZygiU2V0dGluZ3MiKX0se2tleToiSGVscCIsaWNvbk5hbWU6Imx1Y2lkZTpoZWxwQ2lyY2xlIixhY3Rpb246KCk9PmNvbnNvbGUubG9nKCJIZWxwIil9XX0KICAgID48L2RlZXMtYXBwdWktbWFpbm1lbnU+CiAgICA8ZGl2IGNsYXNzPSJzcGFjZXIiPjwvZGl2PgogIDwvZGl2PgpgfSk7dmFyIGYzLGdvLFNQcixMY3Q9bCgoKT0+e09pKCk7aTMoKTtUbigpO1NlKCk7YmkoKTtrUHIoKTtvdCgpO2YzPWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sZ289ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LFNQcj0oKCk9PntsZXQgZT1bemUoImRlZXMtYXBwdWktbWFpbm1lbnUiKV0sdCxyPVtdLGEsaT1EZSxvLG49W10scz1bXSxjLGQ9W10sZj1bXSx1LHA9W10saD1bXSxiLHg9W10sZz1bXSx2LHc9W10sTT1bXSxGLEM9W10saz1bXSxOLCQ9W10sST1bXTt2YXIgQj1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IHo9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baih7dHlwZTpTdHJpbmd9KV0sYz1baih7dHlwZTpTdHJpbmd9KV0sdT1baih7dHlwZTpBcnJheX0pXSxiPVtqKHt0eXBlOkFycmF5fSldLHY9W2ooe3R5cGU6QXJyYXl9KV0sRj1baigpXSxOPVtqKHt0eXBlOkJvb2xlYW4scmVmbGVjdDohMH0pXSxmMyh0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImxvZ29JY29uIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5PT4ibG9nb0ljb24iaW4geSxnZXQ6eT0+eS5sb2dvSWNvbixzZXQ6KHksRSk9Pnt5LmxvZ29JY29uPUV9fSxtZXRhZGF0YTp6fSxuLHMpLGYzKHRoaXMsbnVsbCxjLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibG9nb1RleHQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnk9PiJsb2dvVGV4dCJpbiB5LGdldDp5PT55LmxvZ29UZXh0LHNldDooeSxFKT0+e3kubG9nb1RleHQ9RX19LG1ldGFkYXRhOnp9LGQsZiksZjModGhpcyxudWxsLHUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJtZW51R3JvdXBzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5PT4ibWVudUdyb3VwcyJpbiB5LGdldDp5PT55Lm1lbnVHcm91cHMsc2V0Oih5LEUpPT57eS5tZW51R3JvdXBzPUV9fSxtZXRhZGF0YTp6fSxwLGgpLGYzKHRoaXMsbnVsbCxiLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiYm90dG9tVGFicyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eT0+ImJvdHRvbVRhYnMiaW4geSxnZXQ6eT0+eS5ib3R0b21UYWJzLHNldDooeSxFKT0+e3kuYm90dG9tVGFicz1FfX0sbWV0YWRhdGE6en0seCxnKSxmMyh0aGlzLG51bGwsdix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InRhYnMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnk9PiJ0YWJzImluIHksZ2V0Onk9PnkudGFicyxzZXQ6KHksRSk9Pnt5LnRhYnM9RX19LG1ldGFkYXRhOnp9LHcsTSksZjModGhpcyxudWxsLEYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzZWxlY3RlZFRhYiIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eT0+InNlbGVjdGVkVGFiImluIHksZ2V0Onk9Pnkuc2VsZWN0ZWRUYWIsc2V0Oih5LEUpPT57eS5zZWxlY3RlZFRhYj1FfX0sbWV0YWRhdGE6en0sQyxrKSxmMyh0aGlzLG51bGwsTix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImNvbGxhcHNlZCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eT0+ImNvbGxhcHNlZCJpbiB5LGdldDp5PT55LmNvbGxhcHNlZCxzZXQ6KHksRSk9Pnt5LmNvbGxhcHNlZD1FfX0sbWV0YWRhdGE6en0sJCxJKSxmMyhudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTp6fSxudWxsLHIpLEI9YT10LnZhbHVlLHomJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6en0pfXN0YXRpYyBkZW1vPU1QcjtzdGF0aWMgZGVtb0dyb3Vwcz1bIkFwcCBVSSJdOyNlPWdvKHRoaXMsbiwiIik7Z2V0IGxvZ29JY29uKCl7cmV0dXJuIHRoaXMuI2V9c2V0IGxvZ29JY29uKHope3RoaXMuI2U9en0jdD0oZ28odGhpcyxzKSxnbyh0aGlzLGQsIiIpKTtnZXQgbG9nb1RleHQoKXtyZXR1cm4gdGhpcy4jdH1zZXQgbG9nb1RleHQoeil7dGhpcy4jdD16fSNyPShnbyh0aGlzLGYpLGdvKHRoaXMscCxbXSkpO2dldCBtZW51R3JvdXBzKCl7cmV0dXJuIHRoaXMuI3J9c2V0IG1lbnVHcm91cHMoeil7dGhpcy4jcj16fSNhPShnbyh0aGlzLGgpLGdvKHRoaXMseCxbXSkpO2dldCBib3R0b21UYWJzKCl7cmV0dXJuIHRoaXMuI2F9c2V0IGJvdHRvbVRhYnMoeil7dGhpcy4jYT16fSNpPShnbyh0aGlzLGcpLGdvKHRoaXMsdyxbXSkpO2dldCB0YWJzKCl7cmV0dXJuIHRoaXMuI2l9c2V0IHRhYnMoeil7dGhpcy4jaT16fSNvPShnbyh0aGlzLE0pLGdvKHRoaXMsQyx2b2lkIDApKTtnZXQgc2VsZWN0ZWRUYWIoKXtyZXR1cm4gdGhpcy4jb31zZXQgc2VsZWN0ZWRUYWIoeil7dGhpcy4jbz16fSNuPShnbyh0aGlzLGspLGdvKHRoaXMsJCwhMSkpO2dldCBjb2xsYXBzZWQoKXtyZXR1cm4gdGhpcy4jbn1zZXQgY29sbGFwc2VkKHope3RoaXMuI249en1zdGF0aWMgc3R5bGVzPVtQZSxtLmRlZmF1bHRTdHlsZXMsbGVgCiAgICAgIC8qIFRPRE86IE1pZ3JhdGUgaGFyZGNvZGVkIHZhbHVlcyB0byAtLWRlZXMtKiBDU1MgdmFyaWFibGVzICovCiAgICAgIDpob3N0IHsKICAgICAgICAtLW1lbnUtd2lkdGgtZXhwYW5kZWQ6IDIwMHB4OwogICAgICAgIC0tbWVudS13aWR0aC1jb2xsYXBzZWQ6IDU2cHg7CiAgICAgICAgLS10b29sdGlwLWJnOiAke20uYmRUaGVtZSgiIzE4MTgxYiIsIiNmYWZhZmEiKX07CiAgICAgICAgLS10b29sdGlwLWZnOiAke20uYmRUaGVtZSgiI2ZhZmFmYSIsIiMxODE4MWIiKX07CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgfQoKICAgICAgLm1haW5Db250YWluZXIgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzY2NiIsIiNjY2MiKX07CiAgICAgICAgei1pbmRleDogJHtMaS5maXhlZC5hcHBCYXJ9OwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgd2lkdGg6IHZhcigtLW1lbnUtd2lkdGgtZXhwYW5kZWQpOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2ZhZmFmYSIsIiMwYTBhMGEiKX07CiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU1ZTUiLCIjMWExYTFhIil9OwogICAgICAgIGZvbnQtZmFtaWx5OiAnR2Vpc3QgU2FucycsICdJbnRlcicsIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgc2Fucy1zZXJpZjsKICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjI1cyBlYXNlOwogICAgICB9CgogICAgICA6aG9zdChbY29sbGFwc2VkXSkgLm1haW5Db250YWluZXIgewogICAgICAgIHdpZHRoOiB2YXIoLS1tZW51LXdpZHRoLWNvbGxhcHNlZCk7CiAgICAgIH0KCiAgICAgIC8qIEZsb2F0aW5nIGNvbGxhcHNlIHRvZ2dsZSBidXR0b24gKi8KICAgICAgLmNvbGxhcHNlLXRvZ2dsZSB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHJpZ2h0OiAtMTJweDsKICAgICAgICB0b3A6IDI0cHg7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgICAgIHdpZHRoOiAyNHB4OwogICAgICAgIGhlaWdodDogMjRweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmZmZmZmYiLCIjMjcyNzJhIil9OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZTVlNWU1IiwiIzNmM2Y0NiIpfTsKICAgICAgICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjEpOwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICB6LWluZGV4OiAxMDsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzM3MzczIiwiI2ExYTFhYSIpfTsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLCBiYWNrZ3JvdW5kIDAuMTVzIGVhc2U7CiAgICAgICAgcGFkZGluZzogMDsKICAgICAgfQoKICAgICAgLmNvbGxhcHNlLXRvZ2dsZTpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmNGY0ZjUiLCIjM2YzZjQ2Iil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzBhMGEwYSIsIiNmYWZhZmEiKX07CiAgICAgIH0KCiAgICAgIDpob3N0KDpob3ZlcikgLmNvbGxhcHNlLXRvZ2dsZSB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgfQoKICAgICAgLmNvbGxhcHNlLXRvZ2dsZSBkZWVzLWljb24gewogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgfQoKICAgICAgLyogTG9nbyBTZWN0aW9uICovCiAgICAgIC5sb2dvU2VjdGlvbiB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogMTBweDsKICAgICAgICBoZWlnaHQ6IDQ4cHg7CiAgICAgICAgcGFkZGluZzogMCAxNHB4OwogICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2U1ZTVlNSIsIiMxYTFhMWEiKX07CiAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAgfQoKICAgICAgLmxvZ29TZWN0aW9uIC5sb2dvSWNvbiB7CiAgICAgICAgZm9udC1zaXplOiAyMnB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzBhMGEwYSIsIiNmYWZhZmEiKX07CiAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgIH0KCiAgICAgIC5sb2dvU2VjdGlvbiAubG9nb1RleHQgewogICAgICAgIGZsZXg6IDE7CiAgICAgICAgZm9udC1zaXplOiAxNXB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMGEwYTBhIiwiI2ZhZmFmYSIpfTsKICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7CiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UsIHdpZHRoIDAuMjVzIGVhc2U7CiAgICAgIH0KCiAgICAgIDpob3N0KFtjb2xsYXBzZWRdKSAubG9nb1NlY3Rpb24gewogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIHBhZGRpbmc6IDA7CiAgICAgICAgZ2FwOiAwOwogICAgICB9CgogICAgICA6aG9zdChbY29sbGFwc2VkXSkgLmxvZ29TZWN0aW9uIC5sb2dvVGV4dCB7CiAgICAgICAgZGlzcGxheTogbm9uZTsKICAgICAgfQoKICAgICAgLyogTWlkZGxlIFNlY3Rpb24gKHNjcm9sbGFibGUpICovCiAgICAgIC5tZW51U2VjdGlvbiB7CiAgICAgICAgZmxleDogMTsKICAgICAgICBvdmVyZmxvdy15OiBhdXRvOwogICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjsKICAgICAgICBvdmVyc2Nyb2xsLWJlaGF2aW9yOiBjb250YWluOwogICAgICAgIHBhZGRpbmc6IDhweCAwOwogICAgICB9CgogICAgICAubWVudVNlY3Rpb246Oi13ZWJraXQtc2Nyb2xsYmFyIHsKICAgICAgICB3aWR0aDogNnB4OwogICAgICB9CgogICAgICAubWVudVNlY3Rpb246Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgfQoKICAgICAgLm1lbnVTZWN0aW9uOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoMCwgMCwgMCwgMC4xNSkiLCJyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDsKICAgICAgfQoKICAgICAgLm1lbnVTZWN0aW9uOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoMCwgMCwgMCwgMC4yNSkiLCJyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpIil9OwogICAgICB9CgogICAgICAvKiBNZW51IEdyb3VwICovCiAgICAgIC5tZW51R3JvdXAgewogICAgICAgIHBhZGRpbmc6IDAgOHB4OwogICAgICAgIG1hcmdpbi1ib3R0b206IDhweDsKICAgICAgfQoKICAgICAgLm1lbnVHcm91cDpsYXN0LWNoaWxkIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiAwOwogICAgICB9CgogICAgICAuZ3JvdXBIZWFkZXIgewogICAgICAgIHBhZGRpbmc6IDhweCAxMnB4IDZweDsKICAgICAgICBmb250LXNpemU6IDExcHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM3MzczNzMiLCIjNzM3MzczIil9OwogICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7CiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4OwogICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZSwgbWF4LWhlaWdodCAwLjI1cyBlYXNlOwogICAgICAgIG1heC1oZWlnaHQ6IDMwcHg7CiAgICAgIH0KCiAgICAgIDpob3N0KFtjb2xsYXBzZWRdKSAuZ3JvdXBIZWFkZXIgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgbWF4LWhlaWdodDogMDsKICAgICAgICBwYWRkaW5nOiAwOwogICAgICAgIG1hcmdpbjogMDsKICAgICAgfQoKICAgICAgLmdyb3VwVGFicyB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGdhcDogMnB4OwogICAgICB9CgogICAgICA6aG9zdChbY29sbGFwc2VkXSkgLm1lbnVHcm91cCB7CiAgICAgICAgcGFkZGluZzogMCA0cHg7CiAgICAgIH0KCiAgICAgIC8qIFRhYiBJdGVtICovCiAgICAgIC50YWIgewogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgZ2FwOiAxMnB4OwogICAgICAgIHBhZGRpbmc6IDEwcHggMTJweDsKICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzUyNTI1MiIsIiNhM2EzYTMiKX07CiAgICAgIH0KCiAgICAgIC50YWI6aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDAsIDAsIDAsIDAuMDQpIiwicmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA2KSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMyNjI2MjYiLCIjZTVlNWU1Iil9OwogICAgICB9CgogICAgICAudGFiOmFjdGl2ZSB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoMCwgMCwgMCwgMC4wNikiLCJyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDgpIil9OwogICAgICB9CgogICAgICAudGFiLnNlbGVjdGVkVGFiIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgicmdiYSgwLCAwLCAwLCAwLjA2KSIsInJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCkiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMGEwYTBhIiwiI2ZhZmFmYSIpfTsKICAgICAgfQoKICAgICAgLnRhYi5zZWxlY3RlZFRhYjo6YmVmb3JlIHsKICAgICAgICBjb250ZW50OiAnJzsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgbGVmdDogMDsKICAgICAgICB0b3A6IDUwJTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICAgICAgd2lkdGg6IDNweDsKICAgICAgICBoZWlnaHQ6IDE2cHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiMwYTBhMGEiLCIjZmFmYWZhIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMnB4IDJweCAwOwogICAgICB9CgogICAgICAudGFiIGRlZXMtaWNvbiB7CiAgICAgICAgZm9udC1zaXplOiAxOHB4OwogICAgICAgIG9wYWNpdHk6IDAuODU7CiAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgIH0KCiAgICAgIC50YWIuc2VsZWN0ZWRUYWIgZGVlcy1pY29uIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICB9CgogICAgICAudGFiIC50YWJMYWJlbCB7CiAgICAgICAgZmxleDogMTsKICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7CiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UsIHdpZHRoIDAuMjVzIGVhc2U7CiAgICAgIH0KCiAgICAgIC8qIENvbGxhcHNlZCB0YWIgc3R5bGVzICovCiAgICAgIDpob3N0KFtjb2xsYXBzZWRdKSAudGFiIHsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICBwYWRkaW5nOiAxMHB4OwogICAgICAgIGdhcDogMDsKICAgICAgfQoKICAgICAgOmhvc3QoW2NvbGxhcHNlZF0pIC50YWIgLnRhYkxhYmVsIHsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIHdpZHRoOiAwOwogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgfQoKICAgICAgOmhvc3QoW2NvbGxhcHNlZF0pIC50YWIuc2VsZWN0ZWRUYWI6OmJlZm9yZSB7CiAgICAgICAgbGVmdDogLTRweDsKICAgICAgfQoKICAgICAgLyogVG9vbHRpcCBmb3IgY29sbGFwc2VkIHN0YXRlICovCiAgICAgIC50YWItdG9vbHRpcCB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIGxlZnQ6IDEwMCU7CiAgICAgICAgdG9wOiA1MCU7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgICAgIG1hcmdpbi1sZWZ0OiAxMnB4OwogICAgICAgIHBhZGRpbmc6IDZweCAxMnB4OwogICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXRvb2x0aXAtYmcpOwogICAgICAgIGNvbG9yOiB2YXIoLS10b29sdGlwLWZnKTsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgZm9udC1zaXplOiAxM3B4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZTsKICAgICAgICB6LWluZGV4OiAxMDAwOwogICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMTUpOwogICAgICB9CgogICAgICAudGFiLXRvb2x0aXA6OmJlZm9yZSB7CiAgICAgICAgY29udGVudDogJyc7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIGxlZnQ6IC00cHg7CiAgICAgICAgdG9wOiA1MCU7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgICAgIGJvcmRlcjogNHB4IHNvbGlkIHRyYW5zcGFyZW50OwogICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tdG9vbHRpcC1iZyk7CiAgICAgIH0KCiAgICAgIDpob3N0KFtjb2xsYXBzZWRdKSAudGFiOmhvdmVyIC50YWItdG9vbHRpcCB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAxczsKICAgICAgfQoKICAgICAgLyogQmFkZ2Ugc3R5bGVzICovCiAgICAgIC5iYWRnZSB7CiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICBtaW4td2lkdGg6IDE4cHg7CiAgICAgICAgaGVpZ2h0OiAxOHB4OwogICAgICAgIHBhZGRpbmc6IDAgNnB4OwogICAgICAgIGZvbnQtc2l6ZTogMTFweDsKICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgIGJvcmRlci1yYWRpdXM6IDlweDsKICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsKICAgICAgfQoKICAgICAgLmJhZGdlLmRlZmF1bHQgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjRmNGY1IiwiIzI3MjcyYSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMzZjNmNDYiLCIjYTFhMWFhIil9OwogICAgICB9CgogICAgICAuYmFkZ2Uuc3VjY2VzcyB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNkY2ZjZTciLCIjMTQ1MzJkIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzE2NjUzNCIsIiM0YWRlODAiKX07CiAgICAgIH0KCiAgICAgIC5iYWRnZS53YXJuaW5nIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2ZlZjNjNyIsIiM0NTFhMDMiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjOTI0MDBlIiwiI2ZiYmYyNCIpfTsKICAgICAgfQoKICAgICAgLmJhZGdlLmVycm9yIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2ZlZTJlMiIsIiM0NTBhMGEiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjOTkxYjFiIiwiI2Y4NzE3MSIpfTsKICAgICAgfQoKICAgICAgOmhvc3QoW2NvbGxhcHNlZF0pIC5iYWRnZSB7CiAgICAgICAgZGlzcGxheTogbm9uZTsKICAgICAgfQoKICAgICAgLyogQm90dG9tIFNlY3Rpb24gKi8KICAgICAgLmJvdHRvbVNlY3Rpb24gewogICAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgICAgIHBhZGRpbmc6IDhweDsKICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU1ZTUiLCIjMWExYTFhIil9OwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBnYXA6IDJweDsKICAgICAgfQoKICAgICAgOmhvc3QoW2NvbGxhcHNlZF0pIC5ib3R0b21TZWN0aW9uIHsKICAgICAgICBwYWRkaW5nOiA4cHggNHB4OwogICAgICB9CiAgICBgXTtyZW5kZXIoKXtsZXQgej10aGlzLmdldEFsbFRhYnMoKTtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0ibWFpbkNvbnRhaW5lciIgQGNvbnRleHRtZW51PSR7eT0+e3RyLm9wZW5Db250ZXh0TWVudVdpdGhPcHRpb25zKHksW3tuYW1lOiJhcHAgc2V0dGluZ3MiLGFjdGlvbjphc3luYygpPT57fSxpY29uTmFtZToiZ2VhciJ9XSl9fT4KICAgICAgICAke3RoaXMubG9nb0ljb258fHRoaXMubG9nb1RleHQ/U2AKICAgICAgICAgIDxkaXYgY2xhc3M9ImxvZ29TZWN0aW9uIj4KICAgICAgICAgICAgJHt0aGlzLmxvZ29JY29uP1NgPGRlZXMtaWNvbiBjbGFzcz0ibG9nb0ljb24iIC5pY29uPSIke3RoaXMubG9nb0ljb259Ij48L2RlZXMtaWNvbj5gOiIifQogICAgICAgICAgICAke3RoaXMubG9nb1RleHQ/U2A8c3BhbiBjbGFzcz0ibG9nb1RleHQiPiR7dGhpcy5sb2dvVGV4dH08L3NwYW4+YDoiIn0KICAgICAgICAgIDwvZGl2PgogICAgICAgIGA6IiJ9CgogICAgICAgIDxkaXYgY2xhc3M9Im1lbnVTZWN0aW9uIj4KICAgICAgICAgICR7dGhpcy5tZW51R3JvdXBzLmxlbmd0aD4wP3RoaXMucmVuZGVyTWVudUdyb3VwcygpOnRoaXMucmVuZGVyTGVnYWN5VGFicygpfQogICAgICAgIDwvZGl2PgoKICAgICAgICAke3RoaXMuYm90dG9tVGFicy5sZW5ndGg+MD9TYAogICAgICAgICAgPGRpdiBjbGFzcz0iYm90dG9tU2VjdGlvbiI+CiAgICAgICAgICAgICR7dGhpcy5ib3R0b21UYWJzLm1hcCh5PT50aGlzLnJlbmRlclRhYih5KSl9CiAgICAgICAgICA8L2Rpdj4KICAgICAgICBgOiIifQogICAgICA8L2Rpdj4KICAgICAgPGJ1dHRvbiBjbGFzcz0iY29sbGFwc2UtdG9nZ2xlIiBAY2xpY2s9IiR7KCk9PnRoaXMudG9nZ2xlQ29sbGFwc2UoKX0iPgogICAgICAgIDxkZWVzLWljb24gLmljb249IiR7dGhpcy5jb2xsYXBzZWQ/Imx1Y2lkZTpjaGV2cm9uUmlnaHQiOiJsdWNpZGU6Y2hldnJvbkxlZnQifSI+PC9kZWVzLWljb24+CiAgICAgIDwvYnV0dG9uPgogICAgYH1yZW5kZXJNZW51R3JvdXBzKCl7cmV0dXJuIFNgCiAgICAgICR7dGhpcy5tZW51R3JvdXBzLm1hcCh6PT5TYAogICAgICAgIDxkaXYgY2xhc3M9Im1lbnVHcm91cCI+CiAgICAgICAgICAke3oubmFtZT9TYDxkaXYgY2xhc3M9Imdyb3VwSGVhZGVyIj4ke3oubmFtZX08L2Rpdj5gOiIifQogICAgICAgICAgPGRpdiBjbGFzcz0iZ3JvdXBUYWJzIj4KICAgICAgICAgICAgJHt6Lml0ZW1zLm1hcCh5PT50aGlzLnJlbmRlclRhYih5KSl9CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgYCl9CiAgICBgfXJlbmRlckxlZ2FjeVRhYnMoKXtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0ibWVudUdyb3VwIj4KICAgICAgICA8ZGl2IGNsYXNzPSJncm91cFRhYnMiPgogICAgICAgICAgJHt0aGlzLnRhYnMubWFwKHo9PnRoaXMucmVuZGVyVGFiKHopKX0KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICBgfXJlbmRlclRhYih6KXtyZXR1cm4gU2AKICAgICAgPGRpdgogICAgICAgIGNsYXNzPSJ0YWIgJHt6PT09dGhpcy5zZWxlY3RlZFRhYj8ic2VsZWN0ZWRUYWIiOiIifSIKICAgICAgICBAY2xpY2s9IiR7KCk9Pnt0aGlzLnVwZGF0ZVRhYih6KX19IgogICAgICA+CiAgICAgICAgPGRlZXMtaWNvbiAuaWNvbj0iJHt6Lmljb25OYW1lfHwiIn0iPjwvZGVlcy1pY29uPgogICAgICAgIDxzcGFuIGNsYXNzPSJ0YWJMYWJlbCI+JHt6LmtleX08L3NwYW4+CiAgICAgICAgJHt6LmJhZGdlIT09dm9pZCAwP1NgCiAgICAgICAgICA8c3BhbiBjbGFzcz0iYmFkZ2UgJHt6LmJhZGdlVmFyaWFudHx8ImRlZmF1bHQifSI+JHt6LmJhZGdlfTwvc3Bhbj4KICAgICAgICBgOiIifQogICAgICAgIDxzcGFuIGNsYXNzPSJ0YWItdG9vbHRpcCI+JHt6LmtleX08L3NwYW4+CiAgICAgIDwvZGl2PgogICAgYH1nZXRBbGxUYWJzKCl7cmV0dXJuIHRoaXMubWVudUdyb3Vwcy5sZW5ndGg+MD9bLi4udGhpcy5tZW51R3JvdXBzLmZsYXRNYXAoeT0+eS5pdGVtcyksLi4udGhpcy5ib3R0b21UYWJzXTpbLi4udGhpcy50YWJzLC4uLnRoaXMuYm90dG9tVGFic119dXBkYXRlVGFiKHope3RoaXMuc2VsZWN0ZWRUYWI9eix0aGlzLnNlbGVjdGVkVGFiLmFjdGlvbigpLHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoInRhYi1zZWxlY3QiLHtkZXRhaWw6e3RhYjp6fSxidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpfWZpcnN0VXBkYXRlZCgpe2xldCB6PXRoaXMuZ2V0QWxsVGFicygpO3oubGVuZ3RoPjAmJnRoaXMudXBkYXRlVGFiKHpbMF0pfXRvZ2dsZUNvbGxhcHNlKCl7dGhpcy5jb2xsYXBzZWQ9IXRoaXMuY29sbGFwc2VkLHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoImNvbGxhcHNlLWNoYW5nZSIse2RldGFpbDp7Y29sbGFwc2VkOnRoaXMuY29sbGFwc2VkfSxidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpfWNvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKSxnbyh0aGlzLEkpfXN0YXRpY3tnbyhhLHIpfX07cmV0dXJuIEI9YX0pKCl9KTt2YXIgelByLENQcj1sKCgpPT57U2UoKTt6UHI9KCk9PlNgCiAgPHN0eWxlPgogICAgLmRlbW8tc2Vjb25kYXJ5bWVudS1jb250YWluZXIgewogICAgICBkaXNwbGF5OiBmbGV4OwogICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgIGJhY2tncm91bmQ6ICMxYTFhMWE7CiAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgIH0KICAgIC5kZW1vLXNlY29uZGFyeW1lbnUtY29udGFpbmVyIC5zcGFjZXIgewogICAgICBmbGV4OiAxOwogICAgICBiYWNrZ3JvdW5kOiAjMGYwZjBmOwogICAgICBwYWRkaW5nOiAyMHB4OwogICAgICBjb2xvcjogI2EzYTNhMzsKICAgICAgZm9udC1mYW1pbHk6ICdHZWlzdCBTYW5zJywgc2Fucy1zZXJpZjsKICAgIH0KICAgIC5kZW1vLXNlY29uZGFyeW1lbnUtY29udGFpbmVyIC5zcGFjZXIgaDMgewogICAgICBjb2xvcjogI2ZhZmFmYTsKICAgICAgbWFyZ2luLXRvcDogMDsKICAgIH0KICAgIC5kZW1vLXNlY29uZGFyeW1lbnUtY29udGFpbmVyIC5zcGFjZXIgY29kZSB7CiAgICAgIGJhY2tncm91bmQ6ICMyNzI3MmE7CiAgICAgIHBhZGRpbmc6IDJweCA2cHg7CiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgfQogICAgLmRlbW8tc2Vjb25kYXJ5bWVudS1jb250YWluZXIgLnNwYWNlciB1bCB7CiAgICAgIGxpbmUtaGVpZ2h0OiAxLjg7CiAgICB9CiAgPC9zdHlsZT4KICA8ZGl2IGNsYXNzPSJkZW1vLXNlY29uZGFyeW1lbnUtY29udGFpbmVyIj4KICAgIDxkZWVzLWFwcHVpLXNlY29uZGFyeW1lbnUKICAgICAgLmhlYWRpbmc9JHsiUHJvamVjdHMifQogICAgICAuZ3JvdXBzPSR7W3tuYW1lOiJOYXZpZ2F0aW9uIixpY29uTmFtZToibHVjaWRlOmNvbXBhc3MiLGl0ZW1zOlt7a2V5OiJEYXNoYm9hcmQiLGljb25OYW1lOiJsdWNpZGU6bGF5b3V0RGFzaGJvYXJkIixhY3Rpb246KCk9PmNvbnNvbGUubG9nKCJEYXNoYm9hcmQgY2xpY2tlZCIpLGJhZGdlOjMsYmFkZ2VWYXJpYW50OiJ3YXJuaW5nIn0se2tleToiUHJvamVjdHMiLGljb25OYW1lOiJsdWNpZGU6Zm9sZGVyIixhY3Rpb246KCk9PmNvbnNvbGUubG9nKCJQcm9qZWN0cyBjbGlja2VkIiksYmFkZ2U6Im5ldyIsYmFkZ2VWYXJpYW50OiJzdWNjZXNzIn0se2tleToiQW5hbHl0aWNzIixpY29uTmFtZToibHVjaWRlOmJhckNoYXJ0MiIsYWN0aW9uOigpPT5jb25zb2xlLmxvZygiQW5hbHl0aWNzIGNsaWNrZWQiKX1dfSx7bmFtZToiQWN0aW9ucyIsaWNvbk5hbWU6Imx1Y2lkZTp6YXAiLGl0ZW1zOlt7dHlwZToiYWN0aW9uIixrZXk6IkNyZWF0ZSBOZXciLGljb25OYW1lOiJsdWNpZGU6cGx1cyIsYWN0aW9uOigpPT5hbGVydCgiQ3JlYXRlIE5ldyBjbGlja2VkISIpfSx7dHlwZToiYWN0aW9uIixrZXk6IkltcG9ydCBEYXRhIixpY29uTmFtZToibHVjaWRlOnVwbG9hZCIsYWN0aW9uOigpPT5hbGVydCgiSW1wb3J0IERhdGEgY2xpY2tlZCEiKX0se3R5cGU6ImRpdmlkZXIifSx7dHlwZToiYWN0aW9uIixrZXk6IkRlbGV0ZSBBbGwiLGljb25OYW1lOiJsdWNpZGU6dHJhc2gyIix2YXJpYW50OiJkYW5nZXIiLGNvbmZpcm1NZXNzYWdlOiJBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIGFsbCBpdGVtcz8iLGFjdGlvbjooKT0+YWxlcnQoIkRlbGV0ZWQhIil9XX0se25hbWU6IkZpbHRlcnMiLGljb25OYW1lOiJsdWNpZGU6ZmlsdGVyIixpdGVtczpbe3R5cGU6ImhlYWRlciIsbGFiZWw6IlN0YXR1cyJ9LHt0eXBlOiJmaWx0ZXIiLGtleToiU2hvdyBBY3RpdmUiLGljb25OYW1lOiJsdWNpZGU6Y2hlY2tDaXJjbGUiLGFjdGl2ZTohMCxvblRvZ2dsZTplPT5jb25zb2xlLmxvZygiU2hvdyBBY3RpdmU6IixlKX0se3R5cGU6ImZpbHRlciIsa2V5OiJTaG93IEFyY2hpdmVkIixpY29uTmFtZToibHVjaWRlOmFyY2hpdmUiLGFjdGl2ZTohMSxvblRvZ2dsZTplPT5jb25zb2xlLmxvZygiU2hvdyBBcmNoaXZlZDoiLGUpfSx7dHlwZToiZGl2aWRlciJ9LHt0eXBlOiJtdWx0aUZpbHRlciIsa2V5OiJDYXRlZ29yaWVzIixpY29uTmFtZToibHVjaWRlOnRhZyIsY29sbGFwc2VkOiExLG9wdGlvbnM6W3trZXk6ImZyb250ZW5kIixsYWJlbDoiRnJvbnRlbmQiLGNoZWNrZWQ6ITAsaWNvbk5hbWU6Imx1Y2lkZTptb25pdG9yIn0se2tleToiYmFja2VuZCIsbGFiZWw6IkJhY2tlbmQiLGNoZWNrZWQ6ITAsaWNvbk5hbWU6Imx1Y2lkZTpzZXJ2ZXIifSx7a2V5OiJkZXZvcHMiLGxhYmVsOiJEZXZPcHMiLGNoZWNrZWQ6ITEsaWNvbk5hbWU6Imx1Y2lkZTpjbG91ZCJ9LHtrZXk6ImRlc2lnbiIsbGFiZWw6IkRlc2lnbiIsY2hlY2tlZDohMSxpY29uTmFtZToibHVjaWRlOnBhbGV0dGUifV0sb25DaGFuZ2U6ZT0+Y29uc29sZS5sb2coIlNlbGVjdGVkIGNhdGVnb3JpZXM6IixlKX1dfSx7bmFtZToiUmVzb3VyY2VzIixpY29uTmFtZToibHVjaWRlOmJvb2tPcGVuIixjb2xsYXBzZWQ6ITAsaXRlbXM6W3t0eXBlOiJoZWFkZXIiLGxhYmVsOiJEb2N1bWVudGF0aW9uIn0se3R5cGU6ImxpbmsiLGtleToiQVBJIFJlZmVyZW5jZSIsaWNvbk5hbWU6Imx1Y2lkZTpmaWxlVGV4dCIsaHJlZjoiaHR0cHM6Ly9hcGkuZXhhbXBsZS5jb20vZG9jcyJ9LHt0eXBlOiJsaW5rIixrZXk6IlVzZXIgR3VpZGUiLGljb25OYW1lOiJsdWNpZGU6Ym9vayIsaHJlZjoiaHR0cHM6Ly9kb2NzLmV4YW1wbGUuY29tL2d1aWRlIn0se3R5cGU6ImRpdmlkZXIifSx7dHlwZToiaGVhZGVyIixsYWJlbDoiU3VwcG9ydCJ9LHt0eXBlOiJsaW5rIixrZXk6IkhlbHAgQ2VudGVyIixpY29uTmFtZToibHVjaWRlOmhlbHBDaXJjbGUiLGhyZWY6Ii9oZWxwIixleHRlcm5hbDohMX0se3R5cGU6ImxpbmsiLGtleToiR2l0SHViIElzc3VlcyIsaWNvbk5hbWU6Imx1Y2lkZTpnaXRodWIiLGhyZWY6Imh0dHBzOi8vZ2l0aHViLmNvbS9leGFtcGxlL2lzc3VlcyJ9XX1dfQogICAgICBAaXRlbS1zZWxlY3Q9JHtlPT5jb25zb2xlLmxvZygiVGFiIHNlbGVjdGVkOiIsZS5kZXRhaWwpfQogICAgICBAYWN0aW9uLWNsaWNrPSR7ZT0+Y29uc29sZS5sb2coIkFjdGlvbiBjbGlja2VkOiIsZS5kZXRhaWwpfQogICAgICBAZmlsdGVyLXRvZ2dsZT0ke2U9PmNvbnNvbGUubG9nKCJGaWx0ZXIgdG9nZ2xlZDoiLGUuZGV0YWlsKX0KICAgICAgQG11bHRpZmlsdGVyLWNoYW5nZT0ke2U9PmNvbnNvbGUubG9nKCJNdWx0aS1maWx0ZXIgY2hhbmdlZDoiLGUuZGV0YWlsKX0KICAgICAgQGxpbmstY2xpY2s9JHtlPT5jb25zb2xlLmxvZygiTGluayBjbGlja2VkOiIsZS5kZXRhaWwpfQogICAgPjwvZGVlcy1hcHB1aS1zZWNvbmRhcnltZW51PgogICAgPGRpdiBjbGFzcz0ic3BhY2VyIj4KICAgICAgPGgzPlNlY29uZGFyeSBNZW51IERlbW88L2gzPgogICAgICA8cD5UaGlzIGRlbW8gc2hvd2Nhc2VzIGFsbCA4IGl0ZW0gdHlwZXM6PC9wPgogICAgICA8dWw+CiAgICAgICAgPGxpPjxjb2RlPnRhYjwvY29kZT4gLSBTZWxlY3RhYmxlIGl0ZW1zIChOYXZpZ2F0aW9uIGdyb3VwKTwvbGk+CiAgICAgICAgPGxpPjxjb2RlPmFjdGlvbjwvY29kZT4gLSBCbHVlIGFjdGlvbnMgKEFjdGlvbnMgZ3JvdXApPC9saT4KICAgICAgICA8bGk+PGNvZGU+YWN0aW9uPC9jb2RlPiB3aXRoIDxjb2RlPnZhcmlhbnQ6ICdkYW5nZXInPC9jb2RlPiAtIFJlZCBkYW5nZXIgYWN0aW9uPC9saT4KICAgICAgICA8bGk+PGNvZGU+ZmlsdGVyPC9jb2RlPiAtIENoZWNrYm94IHRvZ2dsZXMgKEZpbHRlcnMgZ3JvdXApPC9saT4KICAgICAgICA8bGk+PGNvZGU+bXVsdGlGaWx0ZXI8L2NvZGU+IC0gQ29sbGFwc2libGUgbXVsdGktc2VsZWN0IChDYXRlZ29yaWVzKTwvbGk+CiAgICAgICAgPGxpPjxjb2RlPmRpdmlkZXI8L2NvZGU+IC0gVmlzdWFsIHNlcGFyYXRvcnM8L2xpPgogICAgICAgIDxsaT48Y29kZT5oZWFkZXI8L2NvZGU+IC0gU2VjdGlvbiBsYWJlbHM8L2xpPgogICAgICAgIDxsaT48Y29kZT5saW5rPC9jb2RlPiAtIEV4dGVybmFsL2ludGVybmFsIGxpbmtzIChSZXNvdXJjZXMgZ3JvdXApPC9saT4KICAgICAgPC91bD4KICAgICAgPHA+VHJ5IHRoZSBjb2xsYXBzZSB0b2dnbGUgb24gdGhlIGxlZnQgZWRnZSE8L3A+CiAgICA8L2Rpdj4KICA8L2Rpdj4KYH0pO3ZhciBxYyxiMSxfUHIsRGN0PWwoKCk9PntPaSgpO2kzKCk7YmkoKTticigpO1NlKCk7Q1ByKCk7b3QoKTtxYz1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LGIxPWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSxfUHI9KCgpPT57bGV0IGU9W3plKCJkZWVzLWFwcHVpLXNlY29uZGFyeW1lbnUiKV0sdCxyPVtdLGEsaT1EZSxvLG49W10scz1bXSxjLGQ9W10sZj1bXSx1LHA9W10saD1bXSxiLHg9W10sZz1bXSx2LHc9W10sTT1bXSxGLEM9W10saz1bXSxOLCQ9W10sST1bXSxCLHo9W10seT1bXTt2YXIgRT1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IF89dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baih7dHlwZTpTdHJpbmd9KV0sYz1baih7dHlwZTpBcnJheX0pXSx1PVtqKHt0eXBlOkFycmF5fSldLGI9W2ooe3R5cGU6T2JqZWN0fSldLHY9W3JlKCldLEY9W3JlKCldLE49W3JlKCldLEI9W2ooe3R5cGU6Qm9vbGVhbixyZWZsZWN0OiEwfSldLHFjKHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiaGVhZGluZyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6UD0+ImhlYWRpbmciaW4gUCxnZXQ6UD0+UC5oZWFkaW5nLHNldDooUCxWKT0+e1AuaGVhZGluZz1WfX0sbWV0YWRhdGE6X30sbixzKSxxYyh0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6Imdyb3VwcyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6UD0+Imdyb3VwcyJpbiBQLGdldDpQPT5QLmdyb3VwcyxzZXQ6KFAsVik9PntQLmdyb3Vwcz1WfX0sbWV0YWRhdGE6X30sZCxmKSxxYyh0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNlbGVjdGlvbk9wdGlvbnMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOlA9PiJzZWxlY3Rpb25PcHRpb25zImluIFAsZ2V0OlA9PlAuc2VsZWN0aW9uT3B0aW9ucyxzZXQ6KFAsVik9PntQLnNlbGVjdGlvbk9wdGlvbnM9Vn19LG1ldGFkYXRhOl99LHAsaCkscWModGhpcyxudWxsLGIse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzZWxlY3RlZEl0ZW0iLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOlA9PiJzZWxlY3RlZEl0ZW0iaW4gUCxnZXQ6UD0+UC5zZWxlY3RlZEl0ZW0sc2V0OihQLFYpPT57UC5zZWxlY3RlZEl0ZW09Vn19LG1ldGFkYXRhOl99LHgsZykscWModGhpcyxudWxsLHYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJjb2xsYXBzZWRHcm91cHMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOlA9PiJjb2xsYXBzZWRHcm91cHMiaW4gUCxnZXQ6UD0+UC5jb2xsYXBzZWRHcm91cHMsc2V0OihQLFYpPT57UC5jb2xsYXBzZWRHcm91cHM9Vn19LG1ldGFkYXRhOl99LHcsTSkscWModGhpcyxudWxsLEYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJjb2xsYXBzZWRNdWx0aUZpbHRlcnMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOlA9PiJjb2xsYXBzZWRNdWx0aUZpbHRlcnMiaW4gUCxnZXQ6UD0+UC5jb2xsYXBzZWRNdWx0aUZpbHRlcnMsc2V0OihQLFYpPT57UC5jb2xsYXBzZWRNdWx0aUZpbHRlcnM9Vn19LG1ldGFkYXRhOl99LEMsaykscWModGhpcyxudWxsLE4se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJyZW5kZXJDb3VudGVyIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpQPT4icmVuZGVyQ291bnRlciJpbiBQLGdldDpQPT5QLnJlbmRlckNvdW50ZXIsc2V0OihQLFYpPT57UC5yZW5kZXJDb3VudGVyPVZ9fSxtZXRhZGF0YTpffSwkLEkpLHFjKHRoaXMsbnVsbCxCLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiY29sbGFwc2VkIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpQPT4iY29sbGFwc2VkImluIFAsZ2V0OlA9PlAuY29sbGFwc2VkLHNldDooUCxWKT0+e1AuY29sbGFwc2VkPVZ9fSxtZXRhZGF0YTpffSx6LHkpLHFjKG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOl99LG51bGwsciksRT1hPXQudmFsdWUsXyYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpffSl9c3RhdGljIGRlbW89elByO3N0YXRpYyBkZW1vR3JvdXBzPVsiQXBwIFVJIl07I2U9YjEodGhpcyxuLCJNZW51Iik7Z2V0IGhlYWRpbmcoKXtyZXR1cm4gdGhpcy4jZX1zZXQgaGVhZGluZyhfKXt0aGlzLiNlPV99I3Q9KGIxKHRoaXMscyksYjEodGhpcyxkLFtdKSk7Z2V0IGdyb3Vwcygpe3JldHVybiB0aGlzLiN0fXNldCBncm91cHMoXyl7dGhpcy4jdD1ffSNyPShiMSh0aGlzLGYpLGIxKHRoaXMscCxbXSkpO2dldCBzZWxlY3Rpb25PcHRpb25zKCl7cmV0dXJuIHRoaXMuI3J9c2V0IHNlbGVjdGlvbk9wdGlvbnMoXyl7dGhpcy4jcj1ffSNhPShiMSh0aGlzLGgpLGIxKHRoaXMseCxudWxsKSk7Z2V0IHNlbGVjdGVkSXRlbSgpe3JldHVybiB0aGlzLiNhfXNldCBzZWxlY3RlZEl0ZW0oXyl7dGhpcy4jYT1ffSNpPShiMSh0aGlzLGcpLGIxKHRoaXMsdyxuZXcgU2V0KSk7Z2V0IGNvbGxhcHNlZEdyb3Vwcygpe3JldHVybiB0aGlzLiNpfXNldCBjb2xsYXBzZWRHcm91cHMoXyl7dGhpcy4jaT1ffSNvPShiMSh0aGlzLE0pLGIxKHRoaXMsQyxuZXcgU2V0KSk7Z2V0IGNvbGxhcHNlZE11bHRpRmlsdGVycygpe3JldHVybiB0aGlzLiNvfXNldCBjb2xsYXBzZWRNdWx0aUZpbHRlcnMoXyl7dGhpcy4jbz1ffSNuPShiMSh0aGlzLGspLGIxKHRoaXMsJCwwKSk7Z2V0IHJlbmRlckNvdW50ZXIoKXtyZXR1cm4gdGhpcy4jbn1zZXQgcmVuZGVyQ291bnRlcihfKXt0aGlzLiNuPV99I3M9KGIxKHRoaXMsSSksYjEodGhpcyx6LCExKSk7Z2V0IGNvbGxhcHNlZCgpe3JldHVybiB0aGlzLiNzfXNldCBjb2xsYXBzZWQoXyl7dGhpcy4jcz1ffXN0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgLyogVE9ETzogTWlncmF0ZSBoYXJkY29kZWQgdmFsdWVzIHRvIC0tZGVlcy0qIENTUyB2YXJpYWJsZXMgKi8KICAgICAgOmhvc3QgewogICAgICAgIC0tc2lkZWJhci13aWR0aC1leHBhbmRlZDogMjQwcHg7CiAgICAgICAgLS1zaWRlYmFyLXdpZHRoLWNvbGxhcHNlZDogNTZweDsKICAgICAgICAtLXNpZGViYXItYmc6ICR7bS5iZFRoZW1lKCIjZmFmYWZhIiwiIzBhMGEwYSIpfTsKICAgICAgICAtLXNpZGViYXItZmc6ICR7bS5iZFRoZW1lKCIjNTI1MjUyIiwiI2EzYTNhMyIpfTsKICAgICAgICAtLXNpZGViYXItZmctbXV0ZWQ6ICR7bS5iZFRoZW1lKCIjNzM3MzczIiwiIzczNzM3MyIpfTsKICAgICAgICAtLXNpZGViYXItZmctYWN0aXZlOiAke20uYmRUaGVtZSgiIzBhMGEwYSIsIiNmYWZhZmEiKX07CiAgICAgICAgLS1zaWRlYmFyLWJvcmRlcjogJHttLmJkVGhlbWUoIiNlNWU1ZTUiLCIjMWExYTFhIil9OwogICAgICAgIC0tc2lkZWJhci1ob3ZlcjogJHttLmJkVGhlbWUoInJnYmEoMCwgMCwgMCwgMC4wNCkiLCJyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDYpIil9OwogICAgICAgIC0tc2lkZWJhci1hY3RpdmU6ICR7bS5iZFRoZW1lKCJyZ2JhKDAsIDAsIDAsIDAuMDYpIiwicmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KSIpfTsKICAgICAgICAtLXNpZGViYXItYWNjZW50OiAke20uYmRUaGVtZSgiIzBhMGEwYSIsIiNmYWZhZmEiKX07CiAgICAgICAgLS10b29sdGlwLWJnOiAke20uYmRUaGVtZSgiIzE4MTgxYiIsIiNmYWZhZmEiKX07CiAgICAgICAgLS10b29sdGlwLWZnOiAke20uYmRUaGVtZSgiI2ZhZmFmYSIsIiMxODE4MWIiKX07CgogICAgICAgIC8qIEJhZGdlIGNvbG9ycyAqLwogICAgICAgIC0tYmFkZ2UtZGVmYXVsdC1iZzogJHttLmJkVGhlbWUoIiNmNGY0ZjUiLCIjMjcyNzJhIil9OwogICAgICAgIC0tYmFkZ2UtZGVmYXVsdC1mZzogJHttLmJkVGhlbWUoIiMzZjNmNDYiLCIjYTFhMWFhIil9OwogICAgICAgIC0tYmFkZ2Utc3VjY2Vzcy1iZzogJHttLmJkVGhlbWUoIiNkY2ZjZTciLCIjMTQ1MzJkIil9OwogICAgICAgIC0tYmFkZ2Utc3VjY2Vzcy1mZzogJHttLmJkVGhlbWUoIiMxNjY1MzQiLCIjNGFkZTgwIil9OwogICAgICAgIC0tYmFkZ2Utd2FybmluZy1iZzogJHttLmJkVGhlbWUoIiNmZWYzYzciLCIjNDUxYTAzIil9OwogICAgICAgIC0tYmFkZ2Utd2FybmluZy1mZzogJHttLmJkVGhlbWUoIiM5MjQwMGUiLCIjZmJiZjI0Iil9OwogICAgICAgIC0tYmFkZ2UtZXJyb3ItYmc6ICR7bS5iZFRoZW1lKCIjZmVlMmUyIiwiIzQ1MGEwYSIpfTsKICAgICAgICAtLWJhZGdlLWVycm9yLWZnOiAke20uYmRUaGVtZSgiIzk5MWIxYiIsIiNmODcxNzEiKX07CgogICAgICAgIC8qIEFjdGlvbiBjb2xvcnMgKi8KICAgICAgICAtLWFjdGlvbi1wcmltYXJ5OiAke20uYmRUaGVtZSgiIzI1NjNlYiIsIiMzYjgyZjYiKX07CiAgICAgICAgLS1hY3Rpb24tcHJpbWFyeS1ob3ZlcjogJHttLmJkVGhlbWUoIiMxZDRlZDgiLCIjNjBhNWZhIil9OwogICAgICAgIC0tYWN0aW9uLWRhbmdlcjogJHttLmJkVGhlbWUoIiNkYzI2MjYiLCIjZWY0NDQ0Iil9OwogICAgICAgIC0tYWN0aW9uLWRhbmdlci1ob3ZlcjogJHttLmJkVGhlbWUoIiNiOTFjMWMiLCIjZjg3MTcxIil9OwoKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIHdpZHRoOiB2YXIoLS1zaWRlYmFyLXdpZHRoLWV4cGFuZGVkKTsKICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zaWRlYmFyLWJnKTsKICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1zaWRlYmFyLWJvcmRlcik7CiAgICAgICAgZm9udC1mYW1pbHk6ICdHZWlzdCBTYW5zJywgJ0ludGVyJywgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBzYW5zLXNlcmlmOwogICAgICAgIHVzZXItc2VsZWN0OiBub25lOwogICAgICAgIHRyYW5zaXRpb246IHdpZHRoIDAuMjVzIGVhc2U7CiAgICAgIH0KCiAgICAgIDpob3N0KFtjb2xsYXBzZWRdKSB7CiAgICAgICAgd2lkdGg6IHZhcigtLXNpZGViYXItd2lkdGgtY29sbGFwc2VkKTsKICAgICAgfQoKICAgICAgLm1haW5jb250YWluZXIgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgIH0KCiAgICAgIC8qIEZsb2F0aW5nIGNvbGxhcHNlIHRvZ2dsZSBidXR0b24gKi8KICAgICAgLmNvbGxhcHNlLXRvZ2dsZSB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHJpZ2h0OiAtMTJweDsKICAgICAgICB0b3A6IDI0cHg7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgICAgIHdpZHRoOiAyNHB4OwogICAgICAgIGhlaWdodDogMjRweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmZmZmZmYiLCIjMjcyNzJhIil9OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZTVlNWU1IiwiIzNmM2Y0NiIpfTsKICAgICAgICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjEpOwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICB6LWluZGV4OiAxMDsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzM3MzczIiwiI2ExYTFhYSIpfTsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLCBiYWNrZ3JvdW5kIDAuMTVzIGVhc2U7CiAgICAgICAgcGFkZGluZzogMDsKICAgICAgfQoKICAgICAgLmNvbGxhcHNlLXRvZ2dsZTpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmNGY0ZjUiLCIjM2YzZjQ2Iil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzBhMGEwYSIsIiNmYWZhZmEiKX07CiAgICAgIH0KCiAgICAgIDpob3N0KDpob3ZlcikgLmNvbGxhcHNlLXRvZ2dsZSB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgfQoKICAgICAgLmNvbGxhcHNlLXRvZ2dsZSBkZWVzLWljb24gewogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgfQoKICAgICAgLyogSGVhZGVyIFNlY3Rpb24gKi8KICAgICAgLmhlYWRlciB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICAgICAgICBoZWlnaHQ6IDQ4cHg7CiAgICAgICAgcGFkZGluZzogMCAxNnB4OwogICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1zaWRlYmFyLWJvcmRlcik7CiAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAgfQoKICAgICAgLmhlYWRlciAuaGVhZGluZyB7CiAgICAgICAgZmxleDogMTsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICBjb2xvcjogdmFyKC0tc2lkZWJhci1mZy1hY3RpdmUpOwogICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsKICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZSwgd2lkdGggMC4yNXMgZWFzZTsKICAgICAgfQoKICAgICAgOmhvc3QoW2NvbGxhcHNlZF0pIC5oZWFkZXIgewogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIHBhZGRpbmc6IDAgOHB4OwogICAgICB9CgogICAgICA6aG9zdChbY29sbGFwc2VkXSkgLmhlYWRlciAuaGVhZGluZyB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICB3aWR0aDogMDsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICB9CgogICAgICAvKiBTY3JvbGxhYmxlIE1lbnUgU2VjdGlvbiAqLwogICAgICAubWVudVNlY3Rpb24gewogICAgICAgIGZsZXg6IDE7CiAgICAgICAgb3ZlcmZsb3cteTogYXV0bzsKICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47CiAgICAgICAgb3ZlcnNjcm9sbC1iZWhhdmlvcjogY29udGFpbjsKICAgICAgICBwYWRkaW5nOiA4cHggMDsKICAgICAgfQoKICAgICAgLm1lbnVTZWN0aW9uOjotd2Via2l0LXNjcm9sbGJhciB7CiAgICAgICAgd2lkdGg6IDZweDsKICAgICAgfQoKICAgICAgLm1lbnVTZWN0aW9uOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7CiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgIH0KCiAgICAgIC5tZW51U2VjdGlvbjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDAsIDAsIDAsIDAuMTUpIiwicmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7CiAgICAgIH0KCiAgICAgIC5tZW51U2VjdGlvbjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDAsIDAsIDAsIDAuMjUpIiwicmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KSIpfTsKICAgICAgfQoKICAgICAgLyogTWVudSBHcm91cCAqLwogICAgICAubWVudUdyb3VwIHsKICAgICAgICBwYWRkaW5nOiAwIDhweDsKICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7CiAgICAgIH0KCiAgICAgIDpob3N0KFtjb2xsYXBzZWRdKSAubWVudUdyb3VwIHsKICAgICAgICBwYWRkaW5nOiAwIDRweDsKICAgICAgfQoKICAgICAgLmdyb3VwSGVhZGVyIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwogICAgICAgIHBhZGRpbmc6IDhweCAxMnB4OwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1cyBlYXNlLCBvcGFjaXR5IDAuMnMgZWFzZSwgbWF4LWhlaWdodCAwLjI1cyBlYXNlOwogICAgICAgIG1heC1oZWlnaHQ6IDQwcHg7CiAgICAgIH0KCiAgICAgIC5ncm91cEhlYWRlcjpob3ZlciB7CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoInJnYmEoMTQwLCAxMjAsIDEwMCwgMC4wNikiLCJyZ2JhKDE4MCwgMTYwLCAxNDAsIDAuMDgpIil9OwogICAgICAgIHBhZGRpbmc6IDdweCAxMXB4OwogICAgICB9CgogICAgICAuZ3JvdXBIZWFkZXI6bm90KC5jb2xsYXBzZWQpIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgicmdiYSgxNDAsIDEyMCwgMTAwLCAwLjA2KSIsInJnYmEoMTgwLCAxNjAsIDE0MCwgMC4wOCkiKX07CiAgICAgICAgYm9yZGVyOiBub25lOwogICAgICAgIHBhZGRpbmc6IDhweCAxMnB4OwogICAgICB9CgogICAgICAuZ3JvdXBIZWFkZXIgLmdyb3VwVGl0bGUgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDhweDsKICAgICAgICBmb250LXNpemU6IDExcHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM3ODcxNmMiLCIjYjVhOTlhIil9OwogICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7CiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4OwogICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgfQoKICAgICAgLmdyb3VwSGVhZGVyIC5ncm91cFRpdGxlIGRlZXMtaWNvbiB7CiAgICAgICAgZm9udC1zaXplOiAxNnB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzc4NzE2YyIsIiNiNWE5OWEiKX07CiAgICAgIH0KCiAgICAgIC5ncm91cEhlYWRlciAuY2hldnJvbiB7CiAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2U7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzg3MTZjIiwiI2I1YTk5YSIpfTsKICAgICAgfQoKICAgICAgLmdyb3VwSGVhZGVyLmNvbGxhcHNlZCAuY2hldnJvbiB7CiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTsKICAgICAgfQoKICAgICAgLyogSGlkZSBncm91cCBoZWFkZXJzIHdoZW4gaG9yaXpvbnRhbGx5IGNvbGxhcHNlZCAqLwogICAgICA6aG9zdChbY29sbGFwc2VkXSkgLmdyb3VwSGVhZGVyIHsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIG1heC1oZWlnaHQ6IDA7CiAgICAgICAgcGFkZGluZzogMDsKICAgICAgICBtYXJnaW46IDA7CiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgICAgIH0KCiAgICAgIC8qIEdyb3VwIEl0ZW1zIENvbnRhaW5lciAqLwogICAgICAuZ3JvdXBJdGVtcyB7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDAuMjVzIGVhc2UsIG9wYWNpdHkgMC4ycyBlYXNlLCBtYXJnaW4gMC4yNXMgZWFzZTsKICAgICAgICBtYXgtaGVpZ2h0OiAxMDAwcHg7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4OwogICAgICB9CgogICAgICAuZ3JvdXBJdGVtcy5jb2xsYXBzZWQgewogICAgICAgIG1heC1oZWlnaHQ6IDA7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICBtYXJnaW4tYm90dG9tOiAwOwogICAgICB9CgogICAgICAvKiBBbHdheXMgc2hvdyBpdGVtcyB3aGVuIGhvcml6b250YWxseSBjb2xsYXBzZWQgKHJlZ2FyZGxlc3Mgb2YgZ3JvdXAgY29sbGFwc2Ugc3RhdGUpICovCiAgICAgIDpob3N0KFtjb2xsYXBzZWRdKSAuZ3JvdXBJdGVtcyB7CiAgICAgICAgbWF4LWhlaWdodDogbm9uZTsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICB9CgogICAgICAvKiBNZW51IEl0ZW0gQmFzZSAqLwogICAgICAubWVudUl0ZW0gewogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgZ2FwOiAxMHB4OwogICAgICAgIHBhZGRpbmc6IDhweCAxMnB4OwogICAgICAgIG1hcmdpbjogMnB4IDA7CiAgICAgICAgZm9udC1zaXplOiAxM3B4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA0NTA7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTsKICAgICAgICBjb2xvcjogdmFyKC0tc2lkZWJhci1mZyk7CiAgICAgIH0KCiAgICAgIC5tZW51SXRlbTpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2lkZWJhci1ob3Zlcik7CiAgICAgICAgY29sb3I6IHZhcigtLXNpZGViYXItZmctYWN0aXZlKTsKICAgICAgfQoKICAgICAgLm1lbnVJdGVtOmFjdGl2ZSB7CiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2lkZWJhci1hY3RpdmUpOwogICAgICB9CgogICAgICAubWVudUl0ZW0uZGlzYWJsZWQgewogICAgICAgIG9wYWNpdHk6IDAuNTsKICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOwogICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgICB9CgogICAgICAubWVudUl0ZW0uc2VsZWN0ZWQgewogICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXNpZGViYXItYWN0aXZlKTsKICAgICAgICBjb2xvcjogdmFyKC0tc2lkZWJhci1mZy1hY3RpdmUpOwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgIH0KCiAgICAgIC5tZW51SXRlbS5zZWxlY3RlZDo6YmVmb3JlIHsKICAgICAgICBjb250ZW50OiAnJzsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgbGVmdDogMDsKICAgICAgICB0b3A6IDUwJTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICAgICAgd2lkdGg6IDNweDsKICAgICAgICBoZWlnaHQ6IDE2cHg7CiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2lkZWJhci1hY2NlbnQpOwogICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMnB4IDJweCAwOwogICAgICB9CgogICAgICAubWVudUl0ZW0gZGVlcy1pY29uIHsKICAgICAgICBmb250LXNpemU6IDE2cHg7CiAgICAgICAgb3BhY2l0eTogMC43OwogICAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgICB9CgogICAgICAubWVudUl0ZW0uc2VsZWN0ZWQgZGVlcy1pY29uIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICB9CgogICAgICAubWVudUl0ZW0gLml0ZW1MYWJlbCB7CiAgICAgICAgZmxleDogMTsKICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7CiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UsIHdpZHRoIDAuMjVzIGVhc2U7CiAgICAgIH0KCiAgICAgIC8qIEFjdGlvbiBJdGVtIFN0eWxlcyAqLwogICAgICAubWVudUl0ZW0uYWN0aW9uLXByaW1hcnkgewogICAgICAgIGNvbG9yOiB2YXIoLS1hY3Rpb24tcHJpbWFyeSk7CiAgICAgIH0KCiAgICAgIC5tZW51SXRlbS5hY3Rpb24tcHJpbWFyeTpob3ZlciB7CiAgICAgICAgY29sb3I6IHZhcigtLWFjdGlvbi1wcmltYXJ5LWhvdmVyKTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgicmdiYSgzNywgOTksIDIzNSwgMC4wOCkiLCJyZ2JhKDU5LCAxMzAsIDI0NiwgMC4xMikiKX07CiAgICAgIH0KCiAgICAgIC5tZW51SXRlbS5hY3Rpb24tcHJpbWFyeSBkZWVzLWljb24gewogICAgICAgIG9wYWNpdHk6IDE7CiAgICAgIH0KCiAgICAgIC5tZW51SXRlbS5hY3Rpb24tZGFuZ2VyIHsKICAgICAgICBjb2xvcjogdmFyKC0tYWN0aW9uLWRhbmdlcik7CiAgICAgIH0KCiAgICAgIC5tZW51SXRlbS5hY3Rpb24tZGFuZ2VyOmhvdmVyIHsKICAgICAgICBjb2xvcjogdmFyKC0tYWN0aW9uLWRhbmdlci1ob3Zlcik7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoMjIwLCAzOCwgMzgsIDAuMDgpIiwicmdiYSgyMzksIDY4LCA2OCwgMC4xMikiKX07CiAgICAgIH0KCiAgICAgIC5tZW51SXRlbS5hY3Rpb24tZGFuZ2VyIGRlZXMtaWNvbiB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgfQoKICAgICAgLyogRmlsdGVyIEl0ZW0gU3R5bGVzICovCiAgICAgIC5tZW51SXRlbS5maWx0ZXIgewogICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICAgICAgfQoKICAgICAgLm1lbnVJdGVtLmZpbHRlciAuZmlsdGVyLWNoZWNrYm94IHsKICAgICAgICB3aWR0aDogMTZweDsKICAgICAgICBoZWlnaHQ6IDE2cHg7CiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJHttLmJkVGhlbWUoIiNkNGQ0ZDQiLCIjNTI1MjUyIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgIH0KCiAgICAgIC5tZW51SXRlbS5maWx0ZXIgLmZpbHRlci1jaGVja2JveC5jaGVja2VkIHsKICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zaWRlYmFyLWFjY2VudCk7CiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1zaWRlYmFyLWFjY2VudCk7CiAgICAgIH0KCiAgICAgIC5tZW51SXRlbS5maWx0ZXIgLmZpbHRlci1jaGVja2JveCBkZWVzLWljb24gewogICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiNmYWZhZmEiLCIjMGEwYTBhIil9OwogICAgICAgIG9wYWNpdHk6IDE7CiAgICAgIH0KCiAgICAgIC5tZW51SXRlbS5maWx0ZXIuYWN0aXZlIHsKICAgICAgICBjb2xvcjogdmFyKC0tc2lkZWJhci1mZy1hY3RpdmUpOwogICAgICB9CgogICAgICAvKiBNdWx0aS1GaWx0ZXIgQ29udGFpbmVyICovCiAgICAgIC5tdWx0aUZpbHRlciB7CiAgICAgICAgbWFyZ2luOiA0cHggMDsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1zaWRlYmFyLWJvcmRlcik7CiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4OwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoMCwgMCwgMCwgMC4wMikiLCJyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDIpIil9OwogICAgICB9CgogICAgICAubXVsdGlGaWx0ZXItaGVhZGVyIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwogICAgICAgIHBhZGRpbmc6IDEwcHggMTJweDsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1cyBlYXNlOwogICAgICB9CgogICAgICAubXVsdGlGaWx0ZXItaGVhZGVyOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zaWRlYmFyLWhvdmVyKTsKICAgICAgfQoKICAgICAgLm11bHRpRmlsdGVyLWhlYWRlciAubXVsdGlGaWx0ZXItdGl0bGUgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDhweDsKICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICBjb2xvcjogdmFyKC0tc2lkZWJhci1mZy1hY3RpdmUpOwogICAgICB9CgogICAgICAubXVsdGlGaWx0ZXItaGVhZGVyIC5tdWx0aUZpbHRlci10aXRsZSBkZWVzLWljb24gewogICAgICAgIGZvbnQtc2l6ZTogMTZweDsKICAgICAgICBvcGFjaXR5OiAwLjc7CiAgICAgIH0KCiAgICAgIC5tdWx0aUZpbHRlci1oZWFkZXIgLm11bHRpRmlsdGVyLWNvdW50IHsKICAgICAgICBmb250LXNpemU6IDExcHg7CiAgICAgICAgY29sb3I6IHZhcigtLXNpZGViYXItZmctbXV0ZWQpOwogICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJhZGdlLWRlZmF1bHQtYmcpOwogICAgICAgIHBhZGRpbmc6IDJweCA2cHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICB9CgogICAgICAubXVsdGlGaWx0ZXItaGVhZGVyIC5jaGV2cm9uIHsKICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZTsKICAgICAgICBjb2xvcjogdmFyKC0tc2lkZWJhci1mZy1tdXRlZCk7CiAgICAgIH0KCiAgICAgIC5tdWx0aUZpbHRlci1oZWFkZXIuY29sbGFwc2VkIC5jaGV2cm9uIHsKICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpOwogICAgICB9CgogICAgICAubXVsdGlGaWx0ZXItb3B0aW9ucyB7CiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXNpZGViYXItYm9yZGVyKTsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgMC4yNXMgZWFzZSwgb3BhY2l0eSAwLjJzIGVhc2U7CiAgICAgICAgbWF4LWhlaWdodDogNTAwcHg7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgfQoKICAgICAgLm11bHRpRmlsdGVyLW9wdGlvbnMuY29sbGFwc2VkIHsKICAgICAgICBtYXgtaGVpZ2h0OiAwOwogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTsKICAgICAgfQoKICAgICAgLm11bHRpRmlsdGVyLW9wdGlvbiB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogMTBweDsKICAgICAgICBwYWRkaW5nOiA4cHggMTJweDsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1cyBlYXNlOwogICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICBjb2xvcjogdmFyKC0tc2lkZWJhci1mZyk7CiAgICAgIH0KCiAgICAgIC5tdWx0aUZpbHRlci1vcHRpb246aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXNpZGViYXItaG92ZXIpOwogICAgICAgIGNvbG9yOiB2YXIoLS1zaWRlYmFyLWZnLWFjdGl2ZSk7CiAgICAgIH0KCiAgICAgIC5tdWx0aUZpbHRlci1vcHRpb24gLm9wdGlvbi1jaGVja2JveCB7CiAgICAgICAgd2lkdGg6IDE2cHg7CiAgICAgICAgaGVpZ2h0OiAxNnB4OwogICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZDRkNGQ0IiwiIzUyNTI1MiIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgICB9CgogICAgICAubXVsdGlGaWx0ZXItb3B0aW9uIC5vcHRpb24tY2hlY2tib3guY2hlY2tlZCB7CiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2lkZWJhci1hY2NlbnQpOwogICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tc2lkZWJhci1hY2NlbnQpOwogICAgICB9CgogICAgICAubXVsdGlGaWx0ZXItb3B0aW9uIC5vcHRpb24tY2hlY2tib3ggZGVlcy1pY29uIHsKICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjZmFmYWZhIiwiIzBhMGEwYSIpfTsKICAgICAgfQoKICAgICAgLm11bHRpRmlsdGVyLW9wdGlvbiBkZWVzLWljb24ub3B0aW9uLWljb24gewogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBvcGFjaXR5OiAwLjc7CiAgICAgIH0KCiAgICAgIC8qIERpdmlkZXIgKi8KICAgICAgLm1lbnVEaXZpZGVyIHsKICAgICAgICBoZWlnaHQ6IDFweDsKICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zaWRlYmFyLWJvcmRlcik7CiAgICAgICAgbWFyZ2luOiA4cHggMTJweDsKICAgICAgfQoKICAgICAgOmhvc3QoW2NvbGxhcHNlZF0pIC5tZW51RGl2aWRlciB7CiAgICAgICAgbWFyZ2luOiA4cHggNHB4OwogICAgICB9CgogICAgICAvKiBIZWFkZXIvTGFiZWwgKi8KICAgICAgLm1lbnVIZWFkZXIgewogICAgICAgIHBhZGRpbmc6IDEycHggMTJweCA0cHggMTJweDsKICAgICAgICBmb250LXNpemU6IDEwcHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICBjb2xvcjogdmFyKC0tc2lkZWJhci1mZy1tdXRlZCk7CiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsKICAgICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7CiAgICAgIH0KCiAgICAgIDpob3N0KFtjb2xsYXBzZWRdKSAubWVudUhlYWRlciB7CiAgICAgICAgZGlzcGxheTogbm9uZTsKICAgICAgfQoKICAgICAgLyogTGluayBJdGVtICovCiAgICAgIC5tZW51SXRlbS5saW5rIC5leHRlcm5hbC1pY29uIHsKICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgb3BhY2l0eTogMC41OwogICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOwogICAgICB9CgogICAgICAvKiBDb2xsYXBzZWQgbWVudSBpdGVtIHN0eWxlcyAqLwogICAgICA6aG9zdChbY29sbGFwc2VkXSkgLm1lbnVJdGVtIHsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICBwYWRkaW5nOiA4cHg7CiAgICAgICAgZ2FwOiAwOwogICAgICB9CgogICAgICA6aG9zdChbY29sbGFwc2VkXSkgLm1lbnVJdGVtIC5pdGVtTGFiZWwgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgd2lkdGg6IDA7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICB9CgogICAgICA6aG9zdChbY29sbGFwc2VkXSkgLm1lbnVJdGVtLnNlbGVjdGVkOjpiZWZvcmUgewogICAgICAgIGxlZnQ6IC00cHg7CiAgICAgIH0KCiAgICAgIDpob3N0KFtjb2xsYXBzZWRdKSAubWVudUl0ZW0gLmZpbHRlci1jaGVja2JveCwKICAgICAgOmhvc3QoW2NvbGxhcHNlZF0pIC5tZW51SXRlbSAuZXh0ZXJuYWwtaWNvbiB7CiAgICAgICAgZGlzcGxheTogbm9uZTsKICAgICAgfQoKICAgICAgOmhvc3QoW2NvbGxhcHNlZF0pIC5tdWx0aUZpbHRlciB7CiAgICAgICAgZGlzcGxheTogbm9uZTsKICAgICAgfQoKICAgICAgLyogVG9vbHRpcCBmb3IgY29sbGFwc2VkIHN0YXRlICovCiAgICAgIC5pdGVtLXRvb2x0aXAgewogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICBsZWZ0OiAxMDAlOwogICAgICAgIHRvcDogNTAlOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsKICAgICAgICBtYXJnaW4tbGVmdDogMTJweDsKICAgICAgICBwYWRkaW5nOiA2cHggMTJweDsKICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS10b29sdGlwLWJnKTsKICAgICAgICBjb2xvcjogdmFyKC0tdG9vbHRpcC1mZyk7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2U7CiAgICAgICAgei1pbmRleDogMTAwMDsKICAgICAgICBib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSgwLCAwLCAwLCAwLjE1KTsKICAgICAgfQoKICAgICAgLml0ZW0tdG9vbHRpcDo6YmVmb3JlIHsKICAgICAgICBjb250ZW50OiAnJzsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgbGVmdDogLTRweDsKICAgICAgICB0b3A6IDUwJTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICAgICAgYm9yZGVyOiA0cHggc29saWQgdHJhbnNwYXJlbnQ7CiAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB2YXIoLS10b29sdGlwLWJnKTsKICAgICAgfQoKICAgICAgOmhvc3QoW2NvbGxhcHNlZF0pIC5tZW51SXRlbTpob3ZlciAuaXRlbS10b29sdGlwIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDFzOwogICAgICB9CgogICAgICAvKiBCYWRnZSBTdHlsZXMgKi8KICAgICAgLmJhZGdlIHsKICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIG1pbi13aWR0aDogMThweDsKICAgICAgICBoZWlnaHQ6IDE4cHg7CiAgICAgICAgcGFkZGluZzogMCA2cHg7CiAgICAgICAgZm9udC1zaXplOiAxMHB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgYm9yZGVyLXJhZGl1czogOXB4OwogICAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgICB9CgogICAgICAuYmFkZ2UuZGVmYXVsdCB7CiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmFkZ2UtZGVmYXVsdC1iZyk7CiAgICAgICAgY29sb3I6IHZhcigtLWJhZGdlLWRlZmF1bHQtZmcpOwogICAgICB9CgogICAgICAuYmFkZ2Uuc3VjY2VzcyB7CiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmFkZ2Utc3VjY2Vzcy1iZyk7CiAgICAgICAgY29sb3I6IHZhcigtLWJhZGdlLXN1Y2Nlc3MtZmcpOwogICAgICB9CgogICAgICAuYmFkZ2Uud2FybmluZyB7CiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmFkZ2Utd2FybmluZy1iZyk7CiAgICAgICAgY29sb3I6IHZhcigtLWJhZGdlLXdhcm5pbmctZmcpOwogICAgICB9CgogICAgICAuYmFkZ2UuZXJyb3IgewogICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJhZGdlLWVycm9yLWJnKTsKICAgICAgICBjb2xvcjogdmFyKC0tYmFkZ2UtZXJyb3ItZmcpOwogICAgICB9CgogICAgICA6aG9zdChbY29sbGFwc2VkXSkgLmJhZGdlIHsKICAgICAgICBkaXNwbGF5OiBub25lOwogICAgICB9CgogICAgICAvKiBMZWdhY3kgb3B0aW9ucyBjb250YWluZXIgKi8KICAgICAgLmxlZ2FjeU9wdGlvbnMgewogICAgICAgIHBhZGRpbmc6IDAgOHB4OwogICAgICB9CgogICAgICAvKiBEaXZpZGVyIChsZWdhY3kpICovCiAgICAgIC5kaXZpZGVyIHsKICAgICAgICBoZWlnaHQ6IDFweDsKICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zaWRlYmFyLWJvcmRlcik7CiAgICAgICAgbWFyZ2luOiA4cHggMTJweDsKICAgICAgfQogICAgYF07cmVuZGVyKCl7cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9Im1haW5jb250YWluZXIiPgogICAgICAgIDxkaXYgY2xhc3M9ImhlYWRlciI+CiAgICAgICAgICA8c3BhbiBjbGFzcz0iaGVhZGluZyI+JHt0aGlzLmhlYWRpbmd9PC9zcGFuPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9Im1lbnVTZWN0aW9uIj4KICAgICAgICAgICR7dGhpcy5ncm91cHMubGVuZ3RoPjA/dGhpcy5yZW5kZXJHcm91cHMoKTp0aGlzLnJlbmRlckxlZ2FjeU9wdGlvbnMoKX0KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICAgIDxidXR0b24gY2xhc3M9ImNvbGxhcHNlLXRvZ2dsZSIgQGNsaWNrPSIkeygpPT50aGlzLnRvZ2dsZUNvbGxhcHNlKCl9Ij4KICAgICAgICA8ZGVlcy1pY29uIC5pY29uPSIke3RoaXMuY29sbGFwc2VkPyJsdWNpZGU6Y2hldnJvblJpZ2h0IjoibHVjaWRlOmNoZXZyb25MZWZ0In0iPjwvZGVlcy1pY29uPgogICAgICA8L2J1dHRvbj4KICAgIGB9cmVuZGVyR3JvdXBzKCl7cmV0dXJuIFNgCiAgICAgICR7dGhpcy5ncm91cHMubWFwKF89PlNgCiAgICAgICAgPGRpdiBjbGFzcz0ibWVudUdyb3VwIj4KICAgICAgICAgIDxkaXYKICAgICAgICAgICAgY2xhc3M9Imdyb3VwSGVhZGVyICR7dGhpcy5jb2xsYXBzZWRHcm91cHMuaGFzKF8ubmFtZSk/ImNvbGxhcHNlZCI6IiJ9IgogICAgICAgICAgICBAY2xpY2s9IiR7KCk9PnRoaXMudG9nZ2xlR3JvdXAoXy5uYW1lKX0iCiAgICAgICAgICA+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJncm91cFRpdGxlIj4KICAgICAgICAgICAgICAke18uaWNvbk5hbWU/U2A8ZGVlcy1pY29uIC5pY29uPSIke3RoaXMubm9ybWFsaXplSWNvbihfLmljb25OYW1lKX0iPjwvZGVlcy1pY29uPmA6IiJ9CiAgICAgICAgICAgICAgJHtfLm5hbWV9CiAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgPGRlZXMtaWNvbiBjbGFzcz0iY2hldnJvbiIgLmljb249IiR7Imx1Y2lkZTpjaGV2cm9uRG93biJ9Ij48L2RlZXMtaWNvbj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0iZ3JvdXBJdGVtcyAke3RoaXMuY29sbGFwc2VkR3JvdXBzLmhhcyhfLm5hbWUpPyJjb2xsYXBzZWQiOiIifSI+CiAgICAgICAgICAgICR7Xy5pdGVtcy5tYXAoUD0+dGhpcy5yZW5kZXJJdGVtKFAsXykpfQogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIGApfQogICAgYH1yZW5kZXJJdGVtKF8sUCl7aWYoImhpZGRlbiJpbiBfJiZfLmhpZGRlbilyZXR1cm4gU2BgO3N3aXRjaCgidHlwZSJpbiBfP18udHlwZToidGFiIil7Y2FzZSJhY3Rpb24iOnJldHVybiB0aGlzLnJlbmRlckFjdGlvbkl0ZW0oXyk7Y2FzZSJmaWx0ZXIiOnJldHVybiB0aGlzLnJlbmRlckZpbHRlckl0ZW0oXyk7Y2FzZSJtdWx0aUZpbHRlciI6cmV0dXJuIHRoaXMucmVuZGVyTXVsdGlGaWx0ZXJJdGVtKF8pO2Nhc2UiZGl2aWRlciI6cmV0dXJuIHRoaXMucmVuZGVyRGl2aWRlcigpO2Nhc2UiaGVhZGVyIjpyZXR1cm4gdGhpcy5yZW5kZXJIZWFkZXIoXyk7Y2FzZSJsaW5rIjpyZXR1cm4gdGhpcy5yZW5kZXJMaW5rSXRlbShfKTtkZWZhdWx0OnJldHVybiB0aGlzLnJlbmRlclRhYkl0ZW0oXyxQKX19cmVuZGVyVGFiSXRlbShfLFApe2xldCBWPXRoaXMuc2VsZWN0ZWRJdGVtPy5rZXk9PT1fLmtleSxIPV8uZGlzYWJsZWQ9PT0hMDtyZXR1cm4gU2AKICAgICAgPGRpdgogICAgICAgIGNsYXNzPSJtZW51SXRlbSAke1Y/InNlbGVjdGVkIjoiIn0gJHtIPyJkaXNhYmxlZCI6IiJ9IgogICAgICAgIEBjbGljaz0iJHsoKT0+IUgmJnRoaXMuc2VsZWN0VGFiSXRlbShfLFApfSIKICAgICAgICBAY29udGV4dG1lbnU9IiR7Vz0+dGhpcy5oYW5kbGVDb250ZXh0TWVudShXLF8pfSIKICAgICAgPgogICAgICAgICR7Xy5pY29uTmFtZT9TYDxkZWVzLWljb24gLmljb249IiR7dGhpcy5ub3JtYWxpemVJY29uKF8uaWNvbk5hbWUpfSI+PC9kZWVzLWljb24+YDoiIn0KICAgICAgICA8c3BhbiBjbGFzcz0iaXRlbUxhYmVsIj4ke18ua2V5fTwvc3Bhbj4KICAgICAgICAke18uYmFkZ2UhPT12b2lkIDA/U2AKICAgICAgICAgIDxzcGFuIGNsYXNzPSJiYWRnZSAke18uYmFkZ2VWYXJpYW50fHwiZGVmYXVsdCJ9Ij4ke18uYmFkZ2V9PC9zcGFuPgogICAgICAgIGA6IiJ9CiAgICAgICAgPHNwYW4gY2xhc3M9Iml0ZW0tdG9vbHRpcCI+JHtfLmtleX08L3NwYW4+CiAgICAgIDwvZGl2PgogICAgYH1yZW5kZXJBY3Rpb25JdGVtKF8pe2xldCBQPV8udmFyaWFudHx8InByaW1hcnkiLFY9Xy5kaXNhYmxlZD09PSEwO3JldHVybiBTYAogICAgICA8ZGl2CiAgICAgICAgY2xhc3M9Im1lbnVJdGVtIGFjdGlvbi0ke1B9ICR7Vj8iZGlzYWJsZWQiOiIifSIKICAgICAgICBAY2xpY2s9IiR7KCk9PiFWJiZ0aGlzLmhhbmRsZUFjdGlvbkNsaWNrKF8pfSIKICAgICAgPgogICAgICAgICR7Xy5pY29uTmFtZT9TYDxkZWVzLWljb24gLmljb249IiR7dGhpcy5ub3JtYWxpemVJY29uKF8uaWNvbk5hbWUpfSI+PC9kZWVzLWljb24+YDoiIn0KICAgICAgICA8c3BhbiBjbGFzcz0iaXRlbUxhYmVsIj4ke18ua2V5fTwvc3Bhbj4KICAgICAgICA8c3BhbiBjbGFzcz0iaXRlbS10b29sdGlwIj4ke18ua2V5fTwvc3Bhbj4KICAgICAgPC9kaXY+CiAgICBgfXJlbmRlckZpbHRlckl0ZW0oXyl7bGV0IFA9Xy5kaXNhYmxlZD09PSEwO3JldHVybiBTYAogICAgICA8ZGl2CiAgICAgICAgY2xhc3M9Im1lbnVJdGVtIGZpbHRlciAke18uYWN0aXZlPyJhY3RpdmUiOiIifSAke1A/ImRpc2FibGVkIjoiIn0iCiAgICAgICAgQGNsaWNrPSIkeygpPT4hUCYmdGhpcy5oYW5kbGVGaWx0ZXJUb2dnbGUoXyl9IgogICAgICA+CiAgICAgICAgJHtfLmljb25OYW1lP1NgPGRlZXMtaWNvbiAuaWNvbj0iJHt0aGlzLm5vcm1hbGl6ZUljb24oXy5pY29uTmFtZSl9Ij48L2RlZXMtaWNvbj5gOiIifQogICAgICAgIDxzcGFuIGNsYXNzPSJpdGVtTGFiZWwiPiR7Xy5rZXl9PC9zcGFuPgogICAgICAgIDxkaXYgY2xhc3M9ImZpbHRlci1jaGVja2JveCAke18uYWN0aXZlPyJjaGVja2VkIjoiIn0iPgogICAgICAgICAgJHtfLmFjdGl2ZT9TYDxkZWVzLWljb24gLmljb249IiR7Imx1Y2lkZTpjaGVjayJ9Ij48L2RlZXMtaWNvbj5gOiIifQogICAgICAgIDwvZGl2PgogICAgICAgIDxzcGFuIGNsYXNzPSJpdGVtLXRvb2x0aXAiPiR7Xy5rZXl9PC9zcGFuPgogICAgICA8L2Rpdj4KICAgIGB9cmVuZGVyTXVsdGlGaWx0ZXJJdGVtKF8pe2xldCBQPXRoaXMuY29sbGFwc2VkTXVsdGlGaWx0ZXJzLmhhcyhfLmtleSksVj1fLm9wdGlvbnMuZmlsdGVyKEg9PkguY2hlY2tlZCkubGVuZ3RoO3JldHVybiBTYAogICAgICA8ZGl2IGNsYXNzPSJtdWx0aUZpbHRlciI+CiAgICAgICAgPGRpdgogICAgICAgICAgY2xhc3M9Im11bHRpRmlsdGVyLWhlYWRlciAke1A/ImNvbGxhcHNlZCI6IiJ9IgogICAgICAgICAgQGNsaWNrPSIkeygpPT50aGlzLnRvZ2dsZU11bHRpRmlsdGVyKF8ua2V5KX0iCiAgICAgICAgPgogICAgICAgICAgPHNwYW4gY2xhc3M9Im11bHRpRmlsdGVyLXRpdGxlIj4KICAgICAgICAgICAgJHtfLmljb25OYW1lP1NgPGRlZXMtaWNvbiAuaWNvbj0iJHt0aGlzLm5vcm1hbGl6ZUljb24oXy5pY29uTmFtZSl9Ij48L2RlZXMtaWNvbj5gOiIifQogICAgICAgICAgICAke18ua2V5fQogICAgICAgICAgPC9zcGFuPgogICAgICAgICAgJHtWPjA/U2A8c3BhbiBjbGFzcz0ibXVsdGlGaWx0ZXItY291bnQiPiR7Vn08L3NwYW4+YDoiIn0KICAgICAgICAgIDxkZWVzLWljb24gY2xhc3M9ImNoZXZyb24iIC5pY29uPSIkeyJsdWNpZGU6Y2hldnJvbkRvd24ifSI+PC9kZWVzLWljb24+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ibXVsdGlGaWx0ZXItb3B0aW9ucyAke1A/ImNvbGxhcHNlZCI6IiJ9Ij4KICAgICAgICAgICR7Xy5vcHRpb25zLm1hcChIPT5TYAogICAgICAgICAgICA8ZGl2CiAgICAgICAgICAgICAgY2xhc3M9Im11bHRpRmlsdGVyLW9wdGlvbiIKICAgICAgICAgICAgICBAY2xpY2s9IiR7KCk9PnRoaXMuaGFuZGxlTXVsdGlGaWx0ZXJPcHRpb25Ub2dnbGUoXyxILmtleSl9IgogICAgICAgICAgICA+CiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ib3B0aW9uLWNoZWNrYm94ICR7SC5jaGVja2VkPyJjaGVja2VkIjoiIn0iPgogICAgICAgICAgICAgICAgJHtILmNoZWNrZWQ/U2A8ZGVlcy1pY29uIC5pY29uPSIkeyJsdWNpZGU6Y2hlY2sifSI+PC9kZWVzLWljb24+YDoiIn0KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAke0guaWNvbk5hbWU/U2A8ZGVlcy1pY29uIGNsYXNzPSJvcHRpb24taWNvbiIgLmljb249IiR7dGhpcy5ub3JtYWxpemVJY29uKEguaWNvbk5hbWUpfSI+PC9kZWVzLWljb24+YDoiIn0KICAgICAgICAgICAgICA8c3Bhbj4ke0gubGFiZWx9PC9zcGFuPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIGApfQogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIGB9cmVuZGVyRGl2aWRlcigpe3JldHVybiBTYDxkaXYgY2xhc3M9Im1lbnVEaXZpZGVyIj48L2Rpdj5gfXJlbmRlckhlYWRlcihfKXtyZXR1cm4gU2A8ZGl2IGNsYXNzPSJtZW51SGVhZGVyIj4ke18ubGFiZWx9PC9kaXY+YH1yZW5kZXJMaW5rSXRlbShfKXtsZXQgUD1fLmV4dGVybmFsPz9fLmhyZWYuc3RhcnRzV2l0aCgiaHR0cCIpLFY9Xy5kaXNhYmxlZD09PSEwO3JldHVybiBTYAogICAgICA8ZGl2CiAgICAgICAgY2xhc3M9Im1lbnVJdGVtIGxpbmsgJHtWPyJkaXNhYmxlZCI6IiJ9IgogICAgICAgIEBjbGljaz0iJHsoKT0+IVYmJnRoaXMuaGFuZGxlTGlua0NsaWNrKF8pfSIKICAgICAgPgogICAgICAgICR7Xy5pY29uTmFtZT9TYDxkZWVzLWljb24gLmljb249IiR7dGhpcy5ub3JtYWxpemVJY29uKF8uaWNvbk5hbWUpfSI+PC9kZWVzLWljb24+YDoiIn0KICAgICAgICA8c3BhbiBjbGFzcz0iaXRlbUxhYmVsIj4ke18ua2V5fTwvc3Bhbj4KICAgICAgICAke1A/U2A8ZGVlcy1pY29uIGNsYXNzPSJleHRlcm5hbC1pY29uIiAuaWNvbj0iJHsibHVjaWRlOmV4dGVybmFsTGluayJ9Ij48L2RlZXMtaWNvbj5gOiIifQogICAgICAgIDxzcGFuIGNsYXNzPSJpdGVtLXRvb2x0aXAiPiR7Xy5rZXl9PC9zcGFuPgogICAgICA8L2Rpdj4KICAgIGB9cmVuZGVyTGVnYWN5T3B0aW9ucygpe3JldHVybiBTYAogICAgICA8ZGl2IGNsYXNzPSJsZWdhY3lPcHRpb25zIj4KICAgICAgICAke3RoaXMuc2VsZWN0aW9uT3B0aW9ucy5tYXAoXz0+e2lmKCJkaXZpZGVyImluIF8mJl8uZGl2aWRlcilyZXR1cm4gU2A8ZGl2IGNsYXNzPSJkaXZpZGVyIj48L2Rpdj5gO2xldCBQPV8sVj17a2V5OlAua2V5LGljb25OYW1lOlAuaWNvbk5hbWUsYWN0aW9uOlAuYWN0aW9uLGJhZGdlOlAuYmFkZ2UsYmFkZ2VWYXJpYW50OlAuYmFkZ2VWYXJpYW50fTtyZXR1cm4gdGhpcy5yZW5kZXJUYWJJdGVtKFYpfSl9CiAgICAgIDwvZGl2PgogICAgYH1ub3JtYWxpemVJY29uKF8pe3JldHVybiBfLnN0YXJ0c1dpdGgoImx1Y2lkZToiKT9fOmBsdWNpZGU6JHtffWB9dG9nZ2xlR3JvdXAoXyl7bGV0IFA9bmV3IFNldCh0aGlzLmNvbGxhcHNlZEdyb3Vwcyk7UC5oYXMoXyk/UC5kZWxldGUoXyk6UC5hZGQoXyksdGhpcy5jb2xsYXBzZWRHcm91cHM9UH10b2dnbGVNdWx0aUZpbHRlcihfKXtsZXQgUD1uZXcgU2V0KHRoaXMuY29sbGFwc2VkTXVsdGlGaWx0ZXJzKTtQLmhhcyhfKT9QLmRlbGV0ZShfKTpQLmFkZChfKSx0aGlzLmNvbGxhcHNlZE11bHRpRmlsdGVycz1QfXRvZ2dsZUNvbGxhcHNlKCl7dGhpcy5jb2xsYXBzZWQ9IXRoaXMuY29sbGFwc2VkLHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoImNvbGxhcHNlLWNoYW5nZSIse2RldGFpbDp7Y29sbGFwc2VkOnRoaXMuY29sbGFwc2VkfSxidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpfXNlbGVjdFRhYkl0ZW0oXyxQKXt0aGlzLnNlbGVjdGVkSXRlbT1fLF8uYWN0aW9uKCksdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgiaXRlbS1zZWxlY3QiLHtkZXRhaWw6e2l0ZW06Xyxncm91cDpQfSxidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpfWFzeW5jIGhhbmRsZUFjdGlvbkNsaWNrKF8pe18uY29uZmlybU1lc3NhZ2UmJiF3aW5kb3cuY29uZmlybShfLmNvbmZpcm1NZXNzYWdlKXx8KGF3YWl0IF8uYWN0aW9uKCksdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgiYWN0aW9uLWNsaWNrIix7ZGV0YWlsOntpdGVtOl99LGJ1YmJsZXM6ITAsY29tcG9zZWQ6ITB9KSkpfWhhbmRsZUZpbHRlclRvZ2dsZShfKXtsZXQgUD0hXy5hY3RpdmU7Xy5hY3RpdmU9UCxfLm9uVG9nZ2xlKFApLHRoaXMucmVuZGVyQ291bnRlcisrLHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoImZpbHRlci10b2dnbGUiLHtkZXRhaWw6e2l0ZW06XyxhY3RpdmU6UH0sYnViYmxlczohMCxjb21wb3NlZDohMH0pKX1oYW5kbGVNdWx0aUZpbHRlck9wdGlvblRvZ2dsZShfLFApe2xldCBWPV8ub3B0aW9ucy5maW5kKFc9Plcua2V5PT09UCk7ViYmKFYuY2hlY2tlZD0hVi5jaGVja2VkKTtsZXQgSD1fLm9wdGlvbnMuZmlsdGVyKFc9PlcuY2hlY2tlZCkubWFwKFc9Plcua2V5KTtfLm9uQ2hhbmdlKEgpLHRoaXMucmVuZGVyQ291bnRlcisrLHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoIm11bHRpZmlsdGVyLWNoYW5nZSIse2RldGFpbDp7aXRlbTpfLHNlbGVjdGVkS2V5czpIfSxidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpfWhhbmRsZUxpbmtDbGljayhfKXtfLmV4dGVybmFsPz9fLmhyZWYuc3RhcnRzV2l0aCgiaHR0cCIpP3dpbmRvdy5vcGVuKF8uaHJlZiwiX2JsYW5rIiwibm9vcGVuZXIsbm9yZWZlcnJlciIpOndpbmRvdy5sb2NhdGlvbi5ocmVmPV8uaHJlZix0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJsaW5rLWNsaWNrIix7ZGV0YWlsOntpdGVtOl99LGJ1YmJsZXM6ITAsY29tcG9zZWQ6ITB9KSl9aGFuZGxlQ29udGV4dE1lbnUoXyxQKXt0ci5vcGVuQ29udGV4dE1lbnVXaXRoT3B0aW9ucyhfLFt7bmFtZToiVmlldyBkZXRhaWxzIixhY3Rpb246YXN5bmMoKT0+e30saWNvbk5hbWU6Imx1Y2lkZTpleWUifSx7bmFtZToiRWRpdCIsYWN0aW9uOmFzeW5jKCk9Pnt9LGljb25OYW1lOiJsdWNpZGU6cGVuY2lsIn1dKX1hc3luYyBmaXJzdFVwZGF0ZWQoXyl7aWYoYXdhaXQgc3VwZXIuZmlyc3RVcGRhdGVkKF8pLHRoaXMuZ3JvdXBzLmxlbmd0aD4wKXtsZXQgUD1uZXcgU2V0LFY9bmV3IFNldDtpZih0aGlzLmdyb3Vwcy5mb3JFYWNoKEg9PntILmNvbGxhcHNlZCYmUC5hZGQoSC5uYW1lKSxILml0ZW1zLmZvckVhY2goVz0+e2lmKCJ0eXBlImluIFcmJlcudHlwZT09PSJtdWx0aUZpbHRlciIpe2xldCBhZT1XO2FlLmNvbGxhcHNlZCYmVi5hZGQoYWUua2V5KX19KX0pLHRoaXMuY29sbGFwc2VkR3JvdXBzPVAsdGhpcy5jb2xsYXBzZWRNdWx0aUZpbHRlcnM9ViwhdGhpcy5zZWxlY3RlZEl0ZW0pZm9yKGxldCBIIG9mIHRoaXMuZ3JvdXBzKWZvcihsZXQgVyBvZiBILml0ZW1zKXtsZXQgYWU9InR5cGUiaW4gVz9XLnR5cGU6InRhYiI7aWYoYWU9PT0idGFiInx8YWU9PT12b2lkIDApe2xldCBUPVc7aWYoIVQuZGlzYWJsZWQpe3RoaXMuc2VsZWN0VGFiSXRlbShULEgpO3JldHVybn19fX1lbHNlIGlmKHRoaXMuc2VsZWN0aW9uT3B0aW9ucy5sZW5ndGg+MCl7bGV0IFA9dGhpcy5zZWxlY3Rpb25PcHRpb25zLmZpbmQoVj0+ISgiZGl2aWRlciJpbiBWKSk7aWYoUCYmIXRoaXMuc2VsZWN0ZWRJdGVtKXtsZXQgVj17a2V5OlAua2V5LGljb25OYW1lOlAuaWNvbk5hbWUsYWN0aW9uOlAuYWN0aW9ufTt0aGlzLnNlbGVjdFRhYkl0ZW0oVil9fX1jb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyksYjEodGhpcyx5KX1zdGF0aWN7YjEoYSxyKX19O3JldHVybiBFPWF9KSgpfSk7dmFyIEY4LEduLEMzbixfM24sVFByLExQcj1sKCgpPT57U2UoKTtpMygpO0Y4PWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sR249ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LEMzbj0oKCk9PntsZXQgZT1bemUoImRlbW8tY2xvc2VhYmxlLXRhYnMiKV0sdCxyPVtdLGEsaT1EZSxvLG49W10scz1bXSxjLGQ9W10sZj1bXTt2YXIgdT1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IHA9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1bcmUoKV0sYz1bcmUoKV0sRjgodGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ0YWJzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpoPT4idGFicyJpbiBoLGdldDpoPT5oLnRhYnMsc2V0OihoLGIpPT57aC50YWJzPWJ9fSxtZXRhZGF0YTpwfSxuLHMpLEY4KHRoaXMsbnVsbCxjLHtraW5kOiJhY2Nlc3NvciIsbmFtZToidGFiQ291bnRlciIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6aD0+InRhYkNvdW50ZXIiaW4gaCxnZXQ6aD0+aC50YWJDb3VudGVyLHNldDooaCxiKT0+e2gudGFiQ291bnRlcj1ifX0sbWV0YWRhdGE6cH0sZCxmKSxGOChudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTpwfSxudWxsLHIpLHU9YT10LnZhbHVlLHAmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6cH0pfSNlPUduKHRoaXMsbixbe2tleToiTWFpbiIsaWNvbk5hbWU6Imx1Y2lkZTpob21lIixhY3Rpb246KCk9PmNvbnNvbGUubG9nKCJNYWluIGNsaWNrZWQiKX1dKTtnZXQgdGFicygpe3JldHVybiB0aGlzLiNlfXNldCB0YWJzKHApe3RoaXMuI2U9cH0jdD0oR24odGhpcyxzKSxHbih0aGlzLGQsMCkpO2dldCB0YWJDb3VudGVyKCl7cmV0dXJuIHRoaXMuI3R9c2V0IHRhYkNvdW50ZXIocCl7dGhpcy4jdD1wfXN0YXRpYyBzdHlsZXM9W2xlYAogICAgICA6aG9zdCB7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgIH0KICAgICAgLmluZm8gewogICAgICAgIG1hcmdpbi10b3A6IDE2cHg7CiAgICAgICAgcGFkZGluZzogMTJweCAxNnB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDAsMCwwLDAuMDIpIiwicmdiYSgyNTUsMjU1LDI1NSwwLjAyKSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgZm9udC1zaXplOiAxM3B4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzcxNzE3YSIsIiNhMWExYWEiKX07CiAgICAgIH0KICAgIGBdO2FkZFRhYigpe3RoaXMudGFiQ291bnRlcisrO2xldCBwPWBEb2N1bWVudCAke3RoaXMudGFiQ291bnRlcn1gO3RoaXMudGFicz1bLi4udGhpcy50YWJzLHtrZXk6cCxpY29uTmFtZToibHVjaWRlOmZpbGUiLGFjdGlvbjooKT0+Y29uc29sZS5sb2coYCR7cH0gY2xpY2tlZGApLGNsb3NlYWJsZTohMCxvbkNsb3NlOigpPT50aGlzLnJlbW92ZVRhYihwKX1dfXJlbW92ZVRhYihwKXt0aGlzLnRhYnM9dGhpcy50YWJzLmZpbHRlcihoPT5oLmtleSE9PXApfWNsZWFyQWxsKCl7dGhpcy5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoImRlZXMtYXBwdWktdGFicyIpPy5jbGVhcigpLHRoaXMudGFicz1bXSx0aGlzLnRhYkNvdW50ZXI9MH1yZW5kZXIoKXtsZXQgcD1be2lkOiJhZGQiLGljb25OYW1lOiJsdWNpZGU6cGx1cyIsYWN0aW9uOigpPT50aGlzLmFkZFRhYigpLHRvb2x0aXA6Ik5ldyBUYWIifSx7aWQ6ImNsZWFyIixpY29uTmFtZToibHVjaWRlOnRyYXNoMiIsYWN0aW9uOigpPT50aGlzLmNsZWFyQWxsKCksdG9vbHRpcDoiQ2xlYXIgQWxsIFRhYnMifV07cmV0dXJuIFNgCiAgICAgIDxkZWVzLWFwcHVpLXRhYnMKICAgICAgICAudGFicz0ke3RoaXMudGFic30KICAgICAgICAuYWN0aW9uc1JpZ2h0PSR7cH0KICAgICAgICBAdGFiLWNsb3NlPSR7aD0+dGhpcy5yZW1vdmVUYWIoaC5kZXRhaWwudGFiLmtleSl9CiAgICAgID48L2RlZXMtYXBwdWktdGFicz4KICAgICAgPGRpdiBjbGFzcz0iaW5mbyI+CiAgICAgICAgQ2xpY2sgdGhlIFggYnV0dG9uIG9uIHRhYnMgdG8gY2xvc2UgdGhlbS4gVXNlIHRoZSArIGJ1dHRvbiB0byBhZGQgdGFicyBhbmQgdGhlIHRyYXNoIGJ1dHRvbiB0byBjbGVhciBhbGwuCiAgICAgICAgPGJyPkN1cnJlbnQgdGFiczogJHt0aGlzLnRhYnMubGVuZ3RofQogICAgICA8L2Rpdj4KICAgIGB9Y29uc3RydWN0b3IoKXtzdXBlciguLi5hcmd1bWVudHMpLEduKHRoaXMsZil9c3RhdGlje0duKGEscil9fTtyZXR1cm4gdT1hfSkoKSxfM249KCgpPT57bGV0IGU9W3plKCJkZW1vLWF1dG9oaWRlLXRhYnMiKV0sdCxyPVtdLGEsaT1EZSxvLG49W10scz1bXSxjLGQ9W10sZj1bXSx1LHA9W10saD1bXTt2YXIgYj1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IHg9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1bcmUoKV0sYz1bcmUoKV0sdT1bcmUoKV0sRjgodGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ0YWJzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpnPT4idGFicyJpbiBnLGdldDpnPT5nLnRhYnMsc2V0OihnLHYpPT57Zy50YWJzPXZ9fSxtZXRhZGF0YTp4fSxuLHMpLEY4KHRoaXMsbnVsbCxjLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiYXV0b0hpZGUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmc9PiJhdXRvSGlkZSJpbiBnLGdldDpnPT5nLmF1dG9IaWRlLHNldDooZyx2KT0+e2cuYXV0b0hpZGU9dn19LG1ldGFkYXRhOnh9LGQsZiksRjgodGhpcyxudWxsLHUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ0aHJlc2hvbGQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmc9PiJ0aHJlc2hvbGQiaW4gZyxnZXQ6Zz0+Zy50aHJlc2hvbGQsc2V0OihnLHYpPT57Zy50aHJlc2hvbGQ9dn19LG1ldGFkYXRhOnh9LHAsaCksRjgobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6eH0sbnVsbCxyKSxiPWE9dC52YWx1ZSx4JiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnh9KX0jZT1Hbih0aGlzLG4sW3trZXk6IlRhYiAxIixpY29uTmFtZToibHVjaWRlOmZpbGUiLGFjdGlvbjooKT0+Y29uc29sZS5sb2coIlRhYiAxIil9LHtrZXk6IlRhYiAyIixpY29uTmFtZToibHVjaWRlOmZpbGUiLGFjdGlvbjooKT0+Y29uc29sZS5sb2coIlRhYiAyIil9XSk7Z2V0IHRhYnMoKXtyZXR1cm4gdGhpcy4jZX1zZXQgdGFicyh4KXt0aGlzLiNlPXh9I3Q9KEduKHRoaXMscyksR24odGhpcyxkLCEwKSk7Z2V0IGF1dG9IaWRlKCl7cmV0dXJuIHRoaXMuI3R9c2V0IGF1dG9IaWRlKHgpe3RoaXMuI3Q9eH0jcj0oR24odGhpcyxmKSxHbih0aGlzLHAsMSkpO2dldCB0aHJlc2hvbGQoKXtyZXR1cm4gdGhpcy4jcn1zZXQgdGhyZXNob2xkKHgpe3RoaXMuI3I9eH1zdGF0aWMgc3R5bGVzPVtsZWAKICAgICAgOmhvc3QgewogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICB9CiAgICAgIC50YWJzLWNvbnRhaW5lciB7CiAgICAgICAgbWluLWhlaWdodDogNjBweDsKICAgICAgICBib3JkZXI6IDFweCBkYXNoZWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjMjcyNzJhIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgIH0KICAgICAgLnRhYnMtY29udGFpbmVyIGRlZXMtYXBwdWktdGFicyB7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgIH0KICAgICAgLnBsYWNlaG9sZGVyIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiNhMWExYWEiLCIjNzE3MTdhIil9OwogICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7CiAgICAgIH0KICAgICAgLmNvbnRyb2xzIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGdhcDogOHB4OwogICAgICAgIG1hcmdpbi10b3A6IDE2cHg7CiAgICAgICAgZmxleC13cmFwOiB3cmFwOwogICAgICB9CiAgICAgIGJ1dHRvbiB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoNTksIDEzMCwgMjQ2LCAwLjEpIiwicmdiYSg1OSwgMTMwLCAyNDYsIDAuMSkiKX07CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoInJnYmEoNTksIDEzMCwgMjQ2LCAwLjMpIiwicmdiYSg1OSwgMTMwLCAyNDYsIDAuMykiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjM2I4MmY2IiwiIzYwYTVmYSIpfTsKICAgICAgICBwYWRkaW5nOiA4cHggMTZweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTsKICAgICAgfQogICAgICBidXR0b246aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDU5LCAxMzAsIDI0NiwgMC4yKSIsInJnYmEoNTksIDEzMCwgMjQ2LCAwLjIpIil9OwogICAgICB9CiAgICAgIGJ1dHRvbi5kYW5nZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDIzOSwgNjgsIDY4LCAwLjEpIiwicmdiYSgyMzksIDY4LCA2OCwgMC4xKSIpfTsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCJyZ2JhKDIzOSwgNjgsIDY4LCAwLjMpIiwicmdiYSgyMzksIDY4LCA2OCwgMC4zKSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiNlZjQ0NDQiLCIjZjg3MTcxIil9OwogICAgICB9CiAgICAgIGJ1dHRvbi5kYW5nZXI6aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDIzOSwgNjgsIDY4LCAwLjIpIiwicmdiYSgyMzksIDY4LCA2OCwgMC4yKSIpfTsKICAgICAgfQogICAgICAuaW5mbyB7CiAgICAgICAgbWFyZ2luLXRvcDogMTZweDsKICAgICAgICBwYWRkaW5nOiAxMnB4IDE2cHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoMCwwLDAsMC4wMikiLCJyZ2JhKDI1NSwyNTUsMjU1LDAuMDIpIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiI2ExYTFhYSIpfTsKICAgICAgfQogICAgYF07dGFiQ291bnRlcj0oR24odGhpcyxoKSwyKTthZGRUYWIoKXt0aGlzLnRhYkNvdW50ZXIrKyx0aGlzLnRhYnM9Wy4uLnRoaXMudGFicyx7a2V5OmBUYWIgJHt0aGlzLnRhYkNvdW50ZXJ9YCxpY29uTmFtZToibHVjaWRlOmZpbGUiLGFjdGlvbjooKT0+Y29uc29sZS5sb2coYFRhYiAke3RoaXMudGFiQ291bnRlcn1gKX1dfXJlbW92ZUxhc3RUYWIoKXt0aGlzLnRhYnMubGVuZ3RoPjAmJih0aGlzLnRhYnM9dGhpcy50YWJzLnNsaWNlKDAsLTEpKX1jbGVhclRhYnMoKXt0aGlzLnRhYnM9W119cmVuZGVyKCl7bGV0IHg9dGhpcy5hdXRvSGlkZSYmdGhpcy50YWJzLmxlbmd0aDw9dGhpcy50aHJlc2hvbGQ7cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9InRhYnMtY29udGFpbmVyIj4KICAgICAgICAke3g/U2A8c3BhbiBjbGFzcz0icGxhY2Vob2xkZXIiPlRhYnMgaGlkZGVuICgke3RoaXMudGFicy5sZW5ndGh9IHRhYnMg4omkIHRocmVzaG9sZCAke3RoaXMudGhyZXNob2xkfSk8L3NwYW4+YDpTYDxkZWVzLWFwcHVpLXRhYnMKICAgICAgICAgICAgICAudGFicz0ke3RoaXMudGFic30KICAgICAgICAgICAgICAuYXV0b0hpZGU9JHt0aGlzLmF1dG9IaWRlfQogICAgICAgICAgICAgIC5hdXRvSGlkZVRocmVzaG9sZD0ke3RoaXMudGhyZXNob2xkfQogICAgICAgICAgICA+PC9kZWVzLWFwcHVpLXRhYnM+YH0KICAgICAgPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9ImNvbnRyb2xzIj4KICAgICAgICA8YnV0dG9uIEBjbGljaz0keygpPT50aGlzLmFkZFRhYigpfT4rIEFkZCBUYWI8L2J1dHRvbj4KICAgICAgICA8YnV0dG9uIGNsYXNzPSJkYW5nZXIiIEBjbGljaz0keygpPT50aGlzLnJlbW92ZUxhc3RUYWIoKX0+LSBSZW1vdmUgVGFiPC9idXR0b24+CiAgICAgICAgPGJ1dHRvbiBjbGFzcz0iZGFuZ2VyIiBAY2xpY2s9JHsoKT0+dGhpcy5jbGVhclRhYnMoKX0+Q2xlYXIgQWxsPC9idXR0b24+CiAgICAgICAgPGJ1dHRvbiBAY2xpY2s9JHsoKT0+e3RoaXMudGhyZXNob2xkPTB9fT5UaHJlc2hvbGQ6IDA8L2J1dHRvbj4KICAgICAgICA8YnV0dG9uIEBjbGljaz0keygpPT57dGhpcy50aHJlc2hvbGQ9MX19PlRocmVzaG9sZDogMTwvYnV0dG9uPgogICAgICAgIDxidXR0b24gQGNsaWNrPSR7KCk9Pnt0aGlzLnRocmVzaG9sZD0yfX0+VGhyZXNob2xkOiAyPC9idXR0b24+CiAgICAgIDwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJpbmZvIj4KICAgICAgICBBdXRvLWhpZGU6ICR7dGhpcy5hdXRvSGlkZT8iT04iOiJPRkYifSB8IFRocmVzaG9sZDogJHt0aGlzLnRocmVzaG9sZH0gfCBUYWJzOiAke3RoaXMudGFicy5sZW5ndGh9CiAgICAgICAgPGJyPlRhYnMgd2lsbCBoaWRlIHdoZW4gY291bnQg4omkIHRocmVzaG9sZC4KICAgICAgPC9kaXY+CiAgICBgfXN0YXRpY3tHbihhLHIpfX07cmV0dXJuIGI9YX0pKCksVFByPSgpPT57bGV0IGU9W3trZXk6IkhvbWUiLGljb25OYW1lOiJsdWNpZGU6aG9tZSIsYWN0aW9uOigpPT5jb25zb2xlLmxvZygiSG9tZSBjbGlja2VkIil9LHtrZXk6IkFuYWx5dGljcyBEYXNoYm9hcmQiLGljb25OYW1lOiJsdWNpZGU6bGluZUNoYXJ0IixhY3Rpb246KCk9PmNvbnNvbGUubG9nKCJBbmFseXRpY3MgY2xpY2tlZCIpfSx7a2V5OiJSZXBvcnRzIixpY29uTmFtZToibHVjaWRlOmZpbGVUZXh0IixhY3Rpb246KCk9PmNvbnNvbGUubG9nKCJSZXBvcnRzIGNsaWNrZWQiKX0se2tleToiVXNlciBTZXR0aW5ncyIsaWNvbk5hbWU6Imx1Y2lkZTpzZXR0aW5ncyIsYWN0aW9uOigpPT5jb25zb2xlLmxvZygiU2V0dGluZ3MgY2xpY2tlZCIpfSx7a2V5OiJIZWxwIixpY29uTmFtZToibHVjaWRlOmhlbHBDaXJjbGUiLGFjdGlvbjooKT0+Y29uc29sZS5sb2coIkhlbHAgY2xpY2tlZCIpfV0sdD1be2tleToiUHJvZmlsZSIsaWNvbk5hbWU6Imx1Y2lkZTp1c2VyIixhY3Rpb246KCk9PmNvbnNvbGUubG9nKCJQcm9maWxlIGNsaWNrZWQiKX0se2tleToiU2VjdXJpdHkiLGljb25OYW1lOiJsdWNpZGU6c2hpZWxkIixhY3Rpb246KCk9PmNvbnNvbGUubG9nKCJTZWN1cml0eSBjbGlja2VkIil9LHtrZXk6Ik5vdGlmaWNhdGlvbnMiLGljb25OYW1lOiJsdWNpZGU6YmVsbCIsYWN0aW9uOigpPT5jb25zb2xlLmxvZygiTm90aWZpY2F0aW9ucyBjbGlja2VkIil9LHtrZXk6IkludGVncmF0aW9ucyIsaWNvbk5hbWU6Imx1Y2lkZTpsaW5rIixhY3Rpb246KCk9PmNvbnNvbGUubG9nKCJJbnRlZ3JhdGlvbnMgY2xpY2tlZCIpfSx7a2V5OiJBZHZhbmNlZCIsaWNvbk5hbWU6Imx1Y2lkZTpjb2RlIixhY3Rpb246KCk9PmNvbnNvbGUubG9nKCJBZHZhbmNlZCBjbGlja2VkIil9XSxyPVt7a2V5OiJBbGwiLGFjdGlvbjooKT0+Y29uc29sZS5sb2coIkFsbCBjbGlja2VkIil9LHtrZXk6IkFjdGl2ZSIsYWN0aW9uOigpPT5jb25zb2xlLmxvZygiQWN0aXZlIGNsaWNrZWQiKX0se2tleToiQ29tcGxldGVkIixhY3Rpb246KCk9PmNvbnNvbGUubG9nKCJDb21wbGV0ZWQgY2xpY2tlZCIpfSx7a2V5OiJBcmNoaXZlZCIsYWN0aW9uOigpPT5jb25zb2xlLmxvZygiQXJjaGl2ZWQgY2xpY2tlZCIpfV0sYT1be2lkOiJiYWNrIixpY29uTmFtZToibHVjaWRlOmFycm93TGVmdCIsYWN0aW9uOigpPT5jb25zb2xlLmxvZygiQmFjayIpLHRvb2x0aXA6IkdvIEJhY2sifV0saT1be2lkOiJhZGQiLGljb25OYW1lOiJsdWNpZGU6cGx1cyIsYWN0aW9uOigpPT5jb25zb2xlLmxvZygiQWRkIHRhYiIpLHRvb2x0aXA6Ik5ldyBUYWIifSx7aWQ6InNlYXJjaCIsaWNvbk5hbWU6Imx1Y2lkZTpzZWFyY2giLGFjdGlvbjooKT0+Y29uc29sZS5sb2coIlNlYXJjaCIpLHRvb2x0aXA6IlNlYXJjaCBUYWJzIn0se2lkOiJkaXNhYmxlZCIsaWNvbk5hbWU6Imx1Y2lkZTpsb2NrIixhY3Rpb246KCk9Pnt9LHRvb2x0aXA6IkRpc2FibGVkIEFjdGlvbiIsZGlzYWJsZWQ6ITB9XSxvPW49PlNgCiAgICA8ZGl2IHN0eWxlPSJwYWRkaW5nOiAyNHB4OyBjb2xvcjogJHttLmJkVGhlbWUoIiM3MTcxN2EiLCIjYTFhMWFhIil9OyI+CiAgICAgICR7bn0KICAgIDwvZGl2PgogIGA7cmV0dXJuIFNgCiAgICA8c3R5bGU+CiAgICAgIC5kZW1vLWNvbnRhaW5lciB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGdhcDogMzJweDsKICAgICAgICBwYWRkaW5nOiA0OHB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjhmOWZhIiwiIzBhMGEwYSIpfTsKICAgICAgICBtaW4taGVpZ2h0OiAxMDB2aDsKICAgICAgfQoKICAgICAgLnNlY3Rpb24gewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZmZmZmZmIiwiIzE4MTgxYiIpfTsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiMyNzI3MmEiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4OwogICAgICAgIHBhZGRpbmc6IDI0cHg7CiAgICAgICAgYm94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xKTsKICAgICAgfQoKICAgICAgLnNlY3Rpb24tdGl0bGUgewogICAgICAgIGZvbnQtc2l6ZTogMThweDsKICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMDkwOTBiIiwiI2ZhZmFmYSIpfTsKICAgICAgfQoKICAgICAgLnR3by1jb2x1bW4gewogICAgICAgIGRpc3BsYXk6IGdyaWQ7CiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyMDBweCAxZnI7CiAgICAgICAgZ2FwOiAyNHB4OwogICAgICAgIGFsaWduLWl0ZW1zOiBzdGFydDsKICAgICAgfQogICAgPC9zdHlsZT4KICAgIDxkaXYgY2xhc3M9ImRlbW8tY29udGFpbmVyIj4KICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbiI+CiAgICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi10aXRsZSI+SG9yaXpvbnRhbCBUYWJzIHdpdGggQW5pbWF0ZWQgSW5kaWNhdG9yPC9kaXY+CiAgICAgICAgPGRlZXMtYXBwdWktdGFicyAudGFicz0ke2V9PjwvZGVlcy1hcHB1aS10YWJzPgogICAgICAgICR7bygiU2VsZWN0IGEgdGFiIHRvIHNlZSB0aGUgc21vb3RoIHNsaWRpbmcgYW5pbWF0aW9uIG9mIHRoZSBpbmRpY2F0b3IuIFRoZSBpbmRpY2F0b3IgYXV0b21hdGljYWxseSBhZGp1c3RzIGl0cyB3aWR0aCB0byBtYXRjaCB0aGUgdGFiIGNvbnRlbnQgd2l0aCBtaW5pbWFsIHBhZGRpbmcuIil9CiAgICAgIDwvZGl2PgoKICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbiI+CiAgICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi10aXRsZSI+VGFicyB3aXRoIEFjdGlvbiBCdXR0b25zPC9kaXY+CiAgICAgICAgPGRlZXMtYXBwdWktdGFicwogICAgICAgICAgLnRhYnM9JHtlfQogICAgICAgICAgLmFjdGlvbnNMZWZ0PSR7YX0KICAgICAgICAgIC5hY3Rpb25zUmlnaHQ9JHtpfQogICAgICAgID48L2RlZXMtYXBwdWktdGFicz4KICAgICAgICAke28oIkFjdGlvbiBidXR0b25zIGNhbiBiZSBwbGFjZWQgb24gZWl0aGVyIHNpZGUgb2YgdGhlIHRhYiBiYXIuIFRoZXkgcmVtYWluIGZpeGVkIHdoaWxlIHRhYnMgc2Nyb2xsLiBUaGUgbG9jayBpY29uIHNob3dzIGEgZGlzYWJsZWQgYWN0aW9uLiIpfQogICAgICA8L2Rpdj4KCiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24iPgogICAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tdGl0bGUiPkNsb3NlYWJsZSBUYWJzIHdpdGggQWN0aW9uczwvZGl2PgogICAgICAgIDxkZW1vLWNsb3NlYWJsZS10YWJzPjwvZGVtby1jbG9zZWFibGUtdGFicz4KICAgICAgPC9kaXY+CgogICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uLXRpdGxlIj5BdXRvLWhpZGUgVGFiczwvZGl2PgogICAgICAgIDxkZW1vLWF1dG9oaWRlLXRhYnM+PC9kZW1vLWF1dG9oaWRlLXRhYnM+CiAgICAgIDwvZGl2PgoKICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbiI+CiAgICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi10aXRsZSI+VmVydGljYWwgVGFicyBMYXlvdXQ8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJ0d28tY29sdW1uIj4KICAgICAgICAgIDxkZWVzLWFwcHVpLXRhYnMgLnRhYlN0eWxlPSR7InZlcnRpY2FsIn0gLnRhYnM9JHt0fT48L2RlZXMtYXBwdWktdGFicz4KICAgICAgICAgICR7bygiVmVydGljYWwgdGFicyB3b3JrIGdyZWF0IGZvciBzZXR0aW5ncyBwYWdlcyBhbmQgbmF2aWdhdGlvbiBtZW51cy4gVGhlIGFuaW1hdGVkIGluZGljYXRvciBzbW9vdGhseSB0cmFuc2l0aW9ucyBiZXR3ZWVuIHNlbGVjdGlvbnMuIil9CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgoKICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbiI+CiAgICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi10aXRsZSI+V2l0aG91dCBJbmRpY2F0b3I8L2Rpdj4KICAgICAgICA8ZGVlcy1hcHB1aS10YWJzIC5zaG93VGFiSW5kaWNhdG9yPSR7ITF9IC50YWJzPSR7cn0+PC9kZWVzLWFwcHVpLXRhYnM+CiAgICAgICAgJHtvKCJUYWJzIGNhbiBhbHNvIGJlIHVzZWQgd2l0aG91dCB0aGUgYW5pbWF0ZWQgaW5kaWNhdG9yIGJ5IHNldHRpbmcgc2hvd1RhYkluZGljYXRvciB0byBmYWxzZS4iKX0KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICBgfX0pO3ZhciBxcyxzaSxEUHIsQWN0PWwoKCk9PntpMygpO1NlKCk7ZXIoKTtMUHIoKTtvdCgpO3FzPWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sc2k9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LERQcj0oKCk9PntsZXQgZT1bemUoImRlZXMtYXBwdWktdGFicyIpXSx0LHI9W10sYSxpPURlLG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdLHUscD1bXSxoPVtdLGIseD1bXSxnPVtdLHYsdz1bXSxNPVtdLEYsQz1bXSxrPVtdLE4sJD1bXSxJPVtdLEIsej1bXSx5PVtdLEUsXz1bXSxQPVtdLFYsSD1bXSxXPVtdO3ZhciBhZT1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IFQ9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baih7dHlwZTpBcnJheX0pXSxjPVtqKHt0eXBlOk9iamVjdH0pXSx1PVtqKHt0eXBlOkJvb2xlYW59KV0sYj1baih7dHlwZTpTdHJpbmd9KV0sdj1baih7dHlwZTpCb29sZWFufSldLEY9W2ooe3R5cGU6TnVtYmVyfSldLE49W2ooe3R5cGU6QXJyYXl9KV0sQj1baih7dHlwZTpBcnJheX0pXSxFPVtyZSgpXSxWPVtyZSgpXSxxcyh0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InRhYnMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOko9PiJ0YWJzImluIEosZ2V0Oko9PkoudGFicyxzZXQ6KEosZmUpPT57Si50YWJzPWZlfX0sbWV0YWRhdGE6VH0sbixzKSxxcyh0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNlbGVjdGVkVGFiIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpKPT4ic2VsZWN0ZWRUYWIiaW4gSixnZXQ6Sj0+Si5zZWxlY3RlZFRhYixzZXQ6KEosZmUpPT57Si5zZWxlY3RlZFRhYj1mZX19LG1ldGFkYXRhOlR9LGQsZikscXModGhpcyxudWxsLHUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzaG93VGFiSW5kaWNhdG9yIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpKPT4ic2hvd1RhYkluZGljYXRvciJpbiBKLGdldDpKPT5KLnNob3dUYWJJbmRpY2F0b3Isc2V0OihKLGZlKT0+e0ouc2hvd1RhYkluZGljYXRvcj1mZX19LG1ldGFkYXRhOlR9LHAsaCkscXModGhpcyxudWxsLGIse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ0YWJTdHlsZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Sj0+InRhYlN0eWxlImluIEosZ2V0Oko9PkoudGFiU3R5bGUsc2V0OihKLGZlKT0+e0oudGFiU3R5bGU9ZmV9fSxtZXRhZGF0YTpUfSx4LGcpLHFzKHRoaXMsbnVsbCx2LHtraW5kOiJhY2Nlc3NvciIsbmFtZToiYXV0b0hpZGUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOko9PiJhdXRvSGlkZSJpbiBKLGdldDpKPT5KLmF1dG9IaWRlLHNldDooSixmZSk9PntKLmF1dG9IaWRlPWZlfX0sbWV0YWRhdGE6VH0sdyxNKSxxcyh0aGlzLG51bGwsRix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImF1dG9IaWRlVGhyZXNob2xkIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpKPT4iYXV0b0hpZGVUaHJlc2hvbGQiaW4gSixnZXQ6Sj0+Si5hdXRvSGlkZVRocmVzaG9sZCxzZXQ6KEosZmUpPT57Si5hdXRvSGlkZVRocmVzaG9sZD1mZX19LG1ldGFkYXRhOlR9LEMsaykscXModGhpcyxudWxsLE4se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJhY3Rpb25zTGVmdCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Sj0+ImFjdGlvbnNMZWZ0ImluIEosZ2V0Oko9PkouYWN0aW9uc0xlZnQsc2V0OihKLGZlKT0+e0ouYWN0aW9uc0xlZnQ9ZmV9fSxtZXRhZGF0YTpUfSwkLEkpLHFzKHRoaXMsbnVsbCxCLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiYWN0aW9uc1JpZ2h0IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpKPT4iYWN0aW9uc1JpZ2h0ImluIEosZ2V0Oko9PkouYWN0aW9uc1JpZ2h0LHNldDooSixmZSk9PntKLmFjdGlvbnNSaWdodD1mZX19LG1ldGFkYXRhOlR9LHoseSkscXModGhpcyxudWxsLEUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJjYW5TY3JvbGxMZWZ0IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpKPT4iY2FuU2Nyb2xsTGVmdCJpbiBKLGdldDpKPT5KLmNhblNjcm9sbExlZnQsc2V0OihKLGZlKT0+e0ouY2FuU2Nyb2xsTGVmdD1mZX19LG1ldGFkYXRhOlR9LF8sUCkscXModGhpcyxudWxsLFYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJjYW5TY3JvbGxSaWdodCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Sj0+ImNhblNjcm9sbFJpZ2h0ImluIEosZ2V0Oko9PkouY2FuU2Nyb2xsUmlnaHQsc2V0OihKLGZlKT0+e0ouY2FuU2Nyb2xsUmlnaHQ9ZmV9fSxtZXRhZGF0YTpUfSxILFcpLHFzKG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOlR9LG51bGwsciksYWU9YT10LnZhbHVlLFQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6VH0pfXN0YXRpYyBkZW1vPVRQcjtzdGF0aWMgZGVtb0dyb3Vwcz1bIkFwcCBVSSJdOyNlPXNpKHRoaXMsbixbXSk7Z2V0IHRhYnMoKXtyZXR1cm4gdGhpcy4jZX1zZXQgdGFicyhUKXt0aGlzLiNlPVR9I3Q9KHNpKHRoaXMscyksc2kodGhpcyxkLG51bGwpKTtnZXQgc2VsZWN0ZWRUYWIoKXtyZXR1cm4gdGhpcy4jdH1zZXQgc2VsZWN0ZWRUYWIoVCl7dGhpcy4jdD1UfSNyPShzaSh0aGlzLGYpLHNpKHRoaXMscCwhMCkpO2dldCBzaG93VGFiSW5kaWNhdG9yKCl7cmV0dXJuIHRoaXMuI3J9c2V0IHNob3dUYWJJbmRpY2F0b3IoVCl7dGhpcy4jcj1UfSNhPShzaSh0aGlzLGgpLHNpKHRoaXMseCwiaG9yaXpvbnRhbCIpKTtnZXQgdGFiU3R5bGUoKXtyZXR1cm4gdGhpcy4jYX1zZXQgdGFiU3R5bGUoVCl7dGhpcy4jYT1UfSNpPShzaSh0aGlzLGcpLHNpKHRoaXMsdywhMSkpO2dldCBhdXRvSGlkZSgpe3JldHVybiB0aGlzLiNpfXNldCBhdXRvSGlkZShUKXt0aGlzLiNpPVR9I289KHNpKHRoaXMsTSksc2kodGhpcyxDLDApKTtnZXQgYXV0b0hpZGVUaHJlc2hvbGQoKXtyZXR1cm4gdGhpcy4jb31zZXQgYXV0b0hpZGVUaHJlc2hvbGQoVCl7dGhpcy4jbz1UfSNuPShzaSh0aGlzLGspLHNpKHRoaXMsJCxbXSkpO2dldCBhY3Rpb25zTGVmdCgpe3JldHVybiB0aGlzLiNufXNldCBhY3Rpb25zTGVmdChUKXt0aGlzLiNuPVR9I3M9KHNpKHRoaXMsSSksc2kodGhpcyx6LFtdKSk7Z2V0IGFjdGlvbnNSaWdodCgpe3JldHVybiB0aGlzLiNzfXNldCBhY3Rpb25zUmlnaHQoVCl7dGhpcy4jcz1UfSNsPShzaSh0aGlzLHkpLHNpKHRoaXMsXywhMSkpO2dldCBjYW5TY3JvbGxMZWZ0KCl7cmV0dXJuIHRoaXMuI2x9c2V0IGNhblNjcm9sbExlZnQoVCl7dGhpcy4jbD1UfSNjPShzaSh0aGlzLFApLHNpKHRoaXMsSCwhMSkpO2dldCBjYW5TY3JvbGxSaWdodCgpe3JldHVybiB0aGlzLiNjfXNldCBjYW5TY3JvbGxSaWdodChUKXt0aGlzLiNjPVR9cmVzaXplT2JzZXJ2ZXI9KHNpKHRoaXMsVyksbnVsbCk7c3RhdGljIHN0eWxlcz1bUGUsbS5kZWZhdWx0U3R5bGVzLGxlYAogICAgICAvKiBUT0RPOiBNaWdyYXRlIGhhcmRjb2RlZCB2YWx1ZXMgdG8gLS1kZWVzLSogQ1NTIHZhcmlhYmxlcyAqLwogICAgICA6aG9zdCB7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIG1pbi13aWR0aDogMDsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICB9CgogICAgICAudGFicy13cmFwcGVyIHsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgbWluLXdpZHRoOiAwOwogICAgICB9CgogICAgICAudGFicy13cmFwcGVyLmhvcml6b250YWwtd3JhcHBlciB7CiAgICAgICAgaGVpZ2h0OiA0OHB4OwogICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiMyNzI3MmEiKX07CiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7CiAgICAgIH0KCiAgICAgIC8qIFNjcm9sbCBmYWRlIGluZGljYXRvcnMgKi8KICAgICAgLnNjcm9sbC1mYWRlIHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgdG9wOiAwOwogICAgICAgIGJvdHRvbTogMXB4OwogICAgICAgIHdpZHRoOiA0OHB4OwogICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7CiAgICAgICAgei1pbmRleDogMTA7CiAgICAgIH0KCiAgICAgIC5zY3JvbGwtZmFkZS1sZWZ0IHsKICAgICAgICBsZWZ0OiAwOwogICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwKICAgICAgICAgICR7bS5iZFRoZW1lKCIjZmZmZmZmIiwiIzE2MTYxNiIpfSAwJSwKICAgICAgICAgICR7bS5iZFRoZW1lKCJyZ2JhKDI1NSwyNTUsMjU1LDApIiwicmdiYSgyMiwyMiwyMiwwKSIpfSAxMDAlKTsKICAgICAgfQoKICAgICAgLnNjcm9sbC1mYWRlLXJpZ2h0IHsKICAgICAgICByaWdodDogMDsKICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwKICAgICAgICAgICR7bS5iZFRoZW1lKCIjZmZmZmZmIiwiIzE2MTYxNiIpfSAwJSwKICAgICAgICAgICR7bS5iZFRoZW1lKCJyZ2JhKDI1NSwyNTUsMjU1LDApIiwicmdiYSgyMiwyMiwyMiwwKSIpfSAxMDAlKTsKICAgICAgfQoKICAgICAgLnNjcm9sbC1mYWRlLnZpc2libGUgewogICAgICAgIG9wYWNpdHk6IDE7CiAgICAgIH0KCiAgICAgIC5zY3JvbGwtYXJlYSB7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIGZsZXg6IDE7CiAgICAgICAgbWluLXdpZHRoOiAwOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgfQoKICAgICAgLyogVGFiIGFjdGlvbiBidXR0b25zICovCiAgICAgIC50YWItYWN0aW9ucyB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogMnB4OwogICAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgICAgIHBhZGRpbmc6IDAgNHB4OwogICAgICB9CgogICAgICAudGFiLWFjdGlvbnMubGVmdCB7CiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMnB4OwogICAgICAgIHBhZGRpbmctcmlnaHQ6IDhweDsKICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiMyNzI3MmEiKX07CiAgICAgIH0KCiAgICAgIC50YWItYWN0aW9ucy5yaWdodCB7CiAgICAgICAgcGFkZGluZy1yaWdodDogMTJweDsKICAgICAgICBwYWRkaW5nLWxlZnQ6IDhweDsKICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZTVlN2ViIiwiIzI3MjcyYSIpfTsKICAgICAgfQoKICAgICAgLnRhYi1hY3Rpb24tYnV0dG9uIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgd2lkdGg6IDMycHg7CiAgICAgICAgaGVpZ2h0OiAzMnB4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1cyBlYXNlLCBjb2xvciAwLjE1cyBlYXNlOwogICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzcxNzE3YSIsIiM3MTcxN2EiKX07CiAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgIH0KCiAgICAgIC50YWItYWN0aW9uLWJ1dHRvbjpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoMCwgMCwgMCwgMC4wNikiLCJyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDYpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzA5MDkwYiIsIiNmYWZhZmEiKX07CiAgICAgIH0KCiAgICAgIC50YWItYWN0aW9uLWJ1dHRvbjphY3RpdmUgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDAsIDAsIDAsIDAuMSkiLCJyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSkiKX07CiAgICAgIH0KCiAgICAgIC50YWItYWN0aW9uLWJ1dHRvbi5kaXNhYmxlZCB7CiAgICAgICAgb3BhY2l0eTogMC40OwogICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7CiAgICAgIH0KCiAgICAgIC50YWItYWN0aW9uLWJ1dHRvbi5kaXNhYmxlZDpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiIzcxNzE3YSIpfTsKICAgICAgfQoKICAgICAgLnRhYi1hY3Rpb24tYnV0dG9uIGRlZXMtaWNvbiB7CiAgICAgICAgZm9udC1zaXplOiAxNnB4OwogICAgICB9CgogICAgICAudGFic0NvbnRhaW5lciB7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIHVzZXItc2VsZWN0OiBub25lOwogICAgICAgIG1pbi13aWR0aDogMDsKICAgICAgfQoKICAgICAgLnRhYnNDb250YWluZXIuaG9yaXpvbnRhbCB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBvdmVyZmxvdy14OiBhdXRvOwogICAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjsKICAgICAgICBvdmVyc2Nyb2xsLWJlaGF2aW9yOiBjb250YWluOwogICAgICAgIHNjcm9sbGJhci13aWR0aDogdGhpbjsKICAgICAgICBzY3JvbGxiYXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBwYWRkaW5nOiAwIDE2cHg7CiAgICAgICAgZ2FwOiA0cHg7CiAgICAgIH0KCiAgICAgIC8qIFNob3cgc2Nyb2xsYmFyIG9uIGhvdmVyICovCiAgICAgIC50YWJzLXdyYXBwZXI6aG92ZXIgLnRhYnNDb250YWluZXIuaG9yaXpvbnRhbCwKICAgICAgLnNjcm9sbC1hcmVhOmhvdmVyIC50YWJzQ29udGFpbmVyLmhvcml6b250YWwgewogICAgICAgIHNjcm9sbGJhci1jb2xvcjogJHttLmJkVGhlbWUoInJnYmEoMCwwLDAsMC4yKSIsInJnYmEoMjU1LDI1NSwyNTUsMC4yKSIpfSB0cmFuc3BhcmVudDsKICAgICAgfQoKICAgICAgLnRhYnNDb250YWluZXIuaG9yaXpvbnRhbDo6LXdlYmtpdC1zY3JvbGxiYXIgewogICAgICAgIGhlaWdodDogNHB4OwogICAgICB9CgogICAgICAudGFic0NvbnRhaW5lci5ob3Jpem9udGFsOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7CiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgIH0KCiAgICAgIC50YWJzQ29udGFpbmVyLmhvcml6b250YWw6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7CiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2U7CiAgICAgIH0KCiAgICAgIC50YWJzLXdyYXBwZXI6aG92ZXIgLnRhYnNDb250YWluZXIuaG9yaXpvbnRhbDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIsCiAgICAgIC5zY3JvbGwtYXJlYTpob3ZlciAudGFic0NvbnRhaW5lci5ob3Jpem9udGFsOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoMCwwLDAsMC4yKSIsInJnYmEoMjU1LDI1NSwyNTUsMC4yKSIpfTsKICAgICAgfQoKICAgICAgLnRhYnMtd3JhcHBlcjpob3ZlciAudGFic0NvbnRhaW5lci5ob3Jpem9udGFsOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciwKICAgICAgLnNjcm9sbC1hcmVhOmhvdmVyIC50YWJzQ29udGFpbmVyLmhvcml6b250YWw6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgicmdiYSgwLDAsMCwwLjM1KSIsInJnYmEoMjU1LDI1NSwyNTUsMC4zNSkiKX07CiAgICAgIH0KCiAgICAgIC50YWJzQ29udGFpbmVyLnZlcnRpY2FsIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgcGFkZGluZzogOHB4OwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBnYXA6IDJweDsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmOWZhZmIiLCIjMTgxODFiIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgfQoKICAgICAgLnRhYiB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiIzcxNzE3YSIpfTsKICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBlYXNlOwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIHotaW5kZXg6IDI7CiAgICAgIH0KCiAgICAgIC5ob3Jpem9udGFsIC50YWIgewogICAgICAgIHBhZGRpbmc6IDAgMTZweDsKICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDhweDsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4IDZweCAwIDA7CiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlOwogICAgICB9CiAgICAgIAogICAgICAuaG9yaXpvbnRhbCAudGFiOm5vdCg6bGFzdC1jaGlsZCk6OmFmdGVyIHsKICAgICAgICBjb250ZW50OiAnJzsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgcmlnaHQ6IC0ycHg7CiAgICAgICAgdG9wOiA1MCU7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOwogICAgICAgIGhlaWdodDogMjBweDsKICAgICAgICB3aWR0aDogMXB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZTVlN2ViIiwiIzI3MjcyYSIpfTsKICAgICAgICBvcGFjaXR5OiAwLjU7CiAgICAgIH0KICAgICAgCiAgICAgIC5ob3Jpem9udGFsIC50YWIgLnRhYi1jb250ZW50IHsKICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogOHB4OwogICAgICB9CgogICAgICAudmVydGljYWwgLnRhYiB7CiAgICAgICAgcGFkZGluZzogMTBweCAxNnB4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgZ2FwOiA4cHg7CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgIH0KCiAgICAgIC50YWI6aG92ZXIgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzA5MDkwYiIsIiNmYWZhZmEiKX07CiAgICAgIH0KICAgICAgCiAgICAgIC5ob3Jpem9udGFsIC50YWI6aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDAsIDAsIDAsIDAuMDMpIiwicmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAzKSIpfTsKICAgICAgfQogICAgICAKICAgICAgLmhvcml6b250YWwgLnRhYjpob3Zlcjo6YWZ0ZXIsCiAgICAgIC5ob3Jpem9udGFsIC50YWI6aG92ZXIgKyAudGFiOjphZnRlciB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgfQoKICAgICAgLnZlcnRpY2FsIC50YWI6aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDI0NCwgMjQ0LCAyNDUsIDAuNSkiLCJyZ2JhKDM5LCAzOSwgNDIsIDAuNSkiKX07CiAgICAgIH0KCiAgICAgIC5ob3Jpem9udGFsIC50YWIuc2VsZWN0ZWRUYWIgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzA5MDkwYiIsIiNmYWZhZmEiKX07CiAgICAgIH0KICAgICAgCiAgICAgIC5ob3Jpem9udGFsIC50YWIuc2VsZWN0ZWRUYWI6OmFmdGVyLAogICAgICAuaG9yaXpvbnRhbCAudGFiLnNlbGVjdGVkVGFiICsgLnRhYjo6YWZ0ZXIgewogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgIH0KCiAgICAgIC52ZXJ0aWNhbCAudGFiLnNlbGVjdGVkVGFiIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwOTA5MGIiLCIjZmFmYWZhIil9OwogICAgICB9CgogICAgICAudGFiIGRlZXMtaWNvbiB7CiAgICAgICAgZm9udC1zaXplOiAxNnB4OwogICAgICB9CgogICAgICAudGFiSW5kaWNhdG9yIHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICB9CiAgICAgIAogICAgICAudGFiSW5kaWNhdG9yLm5vLXRyYW5zaXRpb24gewogICAgICAgIHRyYW5zaXRpb246IG5vbmU7CiAgICAgIH0KCiAgICAgIC50YWJzLXdyYXBwZXIgLnRhYkluZGljYXRvciB7CiAgICAgICAgaGVpZ2h0OiAzcHg7CiAgICAgICAgYm90dG9tOiAwOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjM2I4MmY2IiwiIzNiODJmNiIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiAzcHggM3B4IDAgMDsKICAgICAgICB6LWluZGV4OiAzOwogICAgICB9CgogICAgICAudmVydGljYWwtd3JhcHBlciB7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICB9CgogICAgICAudmVydGljYWwtd3JhcHBlciAudGFiSW5kaWNhdG9yIHsKICAgICAgICBsZWZ0OiA4cHg7CiAgICAgICAgcmlnaHQ6IDhweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmZmZmZmYiLCIjMjcyNzJhIil9OwogICAgICAgIHotaW5kZXg6IDE7CiAgICAgICAgYm94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4wOCk7CiAgICAgIH0KCiAgICAgIC8qIENsb3NlIGJ1dHRvbiAqLwogICAgICAudGFiLWNsb3NlIHsKICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIHdpZHRoOiAxNnB4OwogICAgICAgIGhlaWdodDogMTZweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDsKICAgICAgICBvcGFjaXR5OiAwLjQ7CiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cywgYmFja2dyb3VuZCAwLjE1czsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM3MTcxN2EiLCIjNzE3MTdhIil9OwogICAgICB9CgogICAgICAudGFiOmhvdmVyIC50YWItY2xvc2UgewogICAgICAgIG9wYWNpdHk6IDAuNzsKICAgICAgfQoKICAgICAgLnRhYi1jbG9zZTpob3ZlciB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgicmdiYSgwLDAsMCwwLjEpIiwicmdiYSgyNTUsMjU1LDI1NSwwLjEpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiI2VmNDQ0NCIsIiNmODcxNzEiKX07CiAgICAgIH0KCiAgICAgIC50YWIuc2VsZWN0ZWRUYWIgLnRhYi1jbG9zZSB7CiAgICAgICAgb3BhY2l0eTogMC41OwogICAgICB9CgogICAgICAudGFiLnNlbGVjdGVkVGFiOmhvdmVyIC50YWItY2xvc2UgewogICAgICAgIG9wYWNpdHk6IDAuODsKICAgICAgfQoKICAgICAgLnRhYi5zZWxlY3RlZFRhYiAudGFiLWNsb3NlOmhvdmVyIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICB9CiAgICBgXTtyZW5kZXIoKXtyZXR1cm4gdGhpcy5hdXRvSGlkZSYmdGhpcy50YWJzLmxlbmd0aDw9dGhpcy5hdXRvSGlkZVRocmVzaG9sZD9TYGA6U2AKICAgICAgJHt0aGlzLnJlbmRlclRhYnNXcmFwcGVyKCl9CiAgICBgfXJlbmRlclRhYnNXcmFwcGVyKCl7bGV0IFQ9dGhpcy50YWJTdHlsZT09PSJob3Jpem9udGFsIixKPVQ/InRhYnMtd3JhcHBlciBob3Jpem9udGFsLXdyYXBwZXIiOiJ2ZXJ0aWNhbC13cmFwcGVyIixmZT1gdGFic0NvbnRhaW5lciAke3RoaXMudGFiU3R5bGV9YDtpZihUKXtsZXQgTD10aGlzLmFjdGlvbnNMZWZ0JiZ0aGlzLmFjdGlvbnNMZWZ0Lmxlbmd0aD4wLFE9dGhpcy5hY3Rpb25zUmlnaHQmJnRoaXMuYWN0aW9uc1JpZ2h0Lmxlbmd0aD4wO3JldHVybiBTYAogICAgICAgIDxkaXYgY2xhc3M9IiR7Sn0iPgogICAgICAgICAgJHtMP3RoaXMucmVuZGVyQWN0aW9ucyh0aGlzLmFjdGlvbnNMZWZ0LCJsZWZ0Iik6IiJ9CiAgICAgICAgICA8ZGl2IGNsYXNzPSJzY3JvbGwtYXJlYSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNjcm9sbC1mYWRlIHNjcm9sbC1mYWRlLWxlZnQgJHt0aGlzLmNhblNjcm9sbExlZnQ/InZpc2libGUiOiIifSI+PC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9IiR7ZmV9IiBAc2Nyb2xsPSR7dGhpcy5oYW5kbGVTY3JvbGx9PgogICAgICAgICAgICAgICR7dGhpcy50YWJzLm1hcChrZT0+dGhpcy5yZW5kZXJUYWIoa2UsVCkpfQogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2Nyb2xsLWZhZGUgc2Nyb2xsLWZhZGUtcmlnaHQgJHt0aGlzLmNhblNjcm9sbFJpZ2h0PyJ2aXNpYmxlIjoiIn0iPjwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICAke1E/dGhpcy5yZW5kZXJBY3Rpb25zKHRoaXMuYWN0aW9uc1JpZ2h0LCJyaWdodCIpOiIifQogICAgICAgICAgJHt0aGlzLnNob3dUYWJJbmRpY2F0b3I/U2A8ZGl2IGNsYXNzPSJ0YWJJbmRpY2F0b3IiPjwvZGl2PmA6IiJ9CiAgICAgICAgPC9kaXY+CiAgICAgIGB9cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9IiR7Sn0iPgogICAgICAgIDxkaXYgY2xhc3M9IiR7ZmV9Ij4KICAgICAgICAgICR7dGhpcy50YWJzLm1hcChMPT50aGlzLnJlbmRlclRhYihMLFQpKX0KICAgICAgICA8L2Rpdj4KICAgICAgICAke3RoaXMuc2hvd1RhYkluZGljYXRvcj9TYDxkaXYgY2xhc3M9InRhYkluZGljYXRvciI+PC9kaXY+YDoiIn0KICAgICAgPC9kaXY+CiAgICBgfXJlbmRlckFjdGlvbnMoVCxKKXtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0idGFiLWFjdGlvbnMgJHtKfSI+CiAgICAgICAgJHtULm1hcChmZT0+U2AKICAgICAgICAgIDxkaXYKICAgICAgICAgICAgY2xhc3M9InRhYi1hY3Rpb24tYnV0dG9uICR7ZmUuZGlzYWJsZWQ/ImRpc2FibGVkIjoiIn0iCiAgICAgICAgICAgIHRpdGxlPSIke2ZlLnRvb2x0aXB8fGZlLmlkfSIKICAgICAgICAgICAgQGNsaWNrPSR7KCk9PiFmZS5kaXNhYmxlZCYmZmUuYWN0aW9uKCl9CiAgICAgICAgICA+CiAgICAgICAgICAgIDxkZWVzLWljb24gLmljb249JHtmZS5pY29uTmFtZX0+PC9kZWVzLWljb24+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICBgKX0KICAgICAgPC9kaXY+CiAgICBgfXJlbmRlclRhYihULEope2xldCBMPWB0YWIgJHtUPT09dGhpcy5zZWxlY3RlZFRhYj8ic2VsZWN0ZWRUYWIiOiIifWAsUT1ULmNsb3NlYWJsZT9TYAogICAgICA8c3BhbiBjbGFzcz0idGFiLWNsb3NlIiBAY2xpY2s9IiR7Rz0+dGhpcy5jbG9zZVRhYihHLFQpfSI+CiAgICAgICAgPGRlZXMtaWNvbiAuaWNvbj0keyJsdWNpZGU6eCJ9IHN0eWxlPSJmb250LXNpemU6IDEycHg7Ij48L2RlZXMtaWNvbj4KICAgICAgPC9zcGFuPgogICAgYDoiIixrZT1KP1NgCiAgICAgIDxzcGFuIGNsYXNzPSJ0YWItY29udGVudCI+CiAgICAgICAgJHt0aGlzLnJlbmRlclRhYkljb24oVCl9CiAgICAgICAgJHtULmtleX0KICAgICAgPC9zcGFuPgogICAgICAke1F9CiAgICBgOlNgCiAgICAgICR7dGhpcy5yZW5kZXJUYWJJY29uKFQpfQogICAgICAke1Qua2V5fQogICAgICAke1F9CiAgICBgO3JldHVybiBTYAogICAgICA8ZGl2CiAgICAgICAgY2xhc3M9IiR7TH0iCiAgICAgICAgQGNsaWNrPSIkeygpPT50aGlzLnNlbGVjdFRhYihUKX0iCiAgICAgID4KICAgICAgICAke2tlfQogICAgICA8L2Rpdj4KICAgIGB9cmVuZGVyVGFiSWNvbihUKXtyZXR1cm4gVC5pY29uTmFtZT9TYDxkZWVzLWljb24gLmljb249JHtULmljb25OYW1lfT48L2RlZXMtaWNvbj5gOiIifXNlbGVjdFRhYihUKXt0aGlzLnNlbGVjdGVkVGFiPVQsVC5hY3Rpb24oKSxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCk9Pnt0aGlzLnNjcm9sbFRhYkludG9WaWV3KFQpfSksdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgidGFiLXNlbGVjdCIse2RldGFpbDp7dGFiOlR9LGJ1YmJsZXM6ITAsY29tcG9zZWQ6ITB9KSl9Y2xlYXIoKXt0aGlzLnRhYnM9W10sdGhpcy5zZWxlY3RlZFRhYj1udWxsfWNsb3NlVGFiKFQsSil7VC5zdG9wUHJvcGFnYXRpb24oKSxKLm9uQ2xvc2UmJkoub25DbG9zZSgpLHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoInRhYi1jbG9zZSIse2RldGFpbDp7dGFiOkp9LGJ1YmJsZXM6ITAsY29tcG9zZWQ6ITB9KSl9Zmlyc3RVcGRhdGVkKCl7dGhpcy5zZXR1cFJlc2l6ZU9ic2VydmVyKCkscmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57dGhpcy51cGRhdGVTY3JvbGxTdGF0ZSgpfSl9YXN5bmMgZGlzY29ubmVjdGVkQ2FsbGJhY2soKXthd2FpdCBzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpLHRoaXMucmVzaXplT2JzZXJ2ZXImJih0aGlzLnJlc2l6ZU9ic2VydmVyLmRpc2Nvbm5lY3QoKSx0aGlzLnJlc2l6ZU9ic2VydmVyPW51bGwpfXNldHVwUmVzaXplT2JzZXJ2ZXIoKXtpZih0aGlzLnRhYlN0eWxlIT09Imhvcml6b250YWwiKXJldHVybjt0aGlzLnJlc2l6ZU9ic2VydmVyPW5ldyBSZXNpemVPYnNlcnZlcigoKT0+e3RoaXMudXBkYXRlU2Nyb2xsU3RhdGUoKX0pO2xldCBUPXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiLnRhYnNDb250YWluZXIuaG9yaXpvbnRhbCIpO1QmJnRoaXMucmVzaXplT2JzZXJ2ZXIub2JzZXJ2ZShUKX1oYW5kbGVTY3JvbGw9KCk9Pnt0aGlzLnVwZGF0ZVNjcm9sbFN0YXRlKCl9O3VwZGF0ZVNjcm9sbFN0YXRlKCl7bGV0IFQ9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCIudGFic0NvbnRhaW5lci5ob3Jpem9udGFsIik7aWYoIVQpcmV0dXJuO2xldCBKPVQuc2Nyb2xsTGVmdCxmZT1ULnNjcm9sbFdpZHRoLEw9VC5jbGllbnRXaWR0aCxRPTI7dGhpcy5jYW5TY3JvbGxMZWZ0PUo+USx0aGlzLmNhblNjcm9sbFJpZ2h0PUo8ZmUtTC1RfXNjcm9sbFRhYkludG9WaWV3KFQpe2lmKHRoaXMudGFiU3R5bGUhPT0iaG9yaXpvbnRhbCIpcmV0dXJuO2xldCBKPXRoaXMudGFicy5pbmRleE9mKFQpO2lmKEo9PT0tMSlyZXR1cm47bGV0IGZlPXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiLnRhYnNDb250YWluZXIuaG9yaXpvbnRhbCIpLEw9ZmU/LnF1ZXJ5U2VsZWN0b3IoYC50YWI6bnRoLWNoaWxkKCR7SisxfSlgKTtpZihMJiZmZSl7bGV0IFE9ZmUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksa2U9TC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtrZS5sZWZ0Pj1RLmxlZnQmJmtlLnJpZ2h0PD1RLnJpZ2h0fHxMLnNjcm9sbEludG9WaWV3KHtiZWhhdmlvcjoic21vb3RoIixibG9jazoibmVhcmVzdCIsaW5saW5lOiJuZWFyZXN0In0pfX1hc3luYyB1cGRhdGVkKFQpe3N1cGVyLnVwZGF0ZWQoVCksVC5oYXMoInRhYnMiKSYmKCF0aGlzLnRhYnN8fHRoaXMudGFicy5sZW5ndGg9PT0wP3RoaXMuc2VsZWN0ZWRUYWIhPT1udWxsJiYodGhpcy5zZWxlY3RlZFRhYj1udWxsLHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoInRhYi1zZWxlY3QiLHtkZXRhaWw6e3RhYjpudWxsfSxidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpKTp0aGlzLnNlbGVjdGVkVGFiJiYhdGhpcy50YWJzLmluY2x1ZGVzKHRoaXMuc2VsZWN0ZWRUYWIpP3RoaXMuc2VsZWN0VGFiKHRoaXMudGFic1swXSk6dGhpcy5zZWxlY3RlZFRhYnx8dGhpcy5zZWxlY3RUYWIodGhpcy50YWJzWzBdKSksKFQuaGFzKCJzZWxlY3RlZFRhYiIpfHxULmhhcygidGFicyIpKSYmKGF3YWl0IHRoaXMudXBkYXRlQ29tcGxldGUsIXRoaXMuaW5kaWNhdG9ySW5pdGlhbGl6ZWQmJmRvY3VtZW50LmZvbnRzJiZhd2FpdCBkb2N1bWVudC5mb250cy5yZWFkeSxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCk9Pnt0aGlzLnVwZGF0ZVRhYkluZGljYXRvcigpLHRoaXMudXBkYXRlU2Nyb2xsU3RhdGUoKX0pKX1pbmRpY2F0b3JJbml0aWFsaXplZD0hMTt1cGRhdGVUYWJJbmRpY2F0b3IoKXtpZighdGhpcy5zaG91bGRTaG93SW5kaWNhdG9yKCkpcmV0dXJuO2xldCBUPXRoaXMuZ2V0U2VsZWN0ZWRUYWJFbGVtZW50KCk7aWYoIVQpcmV0dXJuO2xldCBKPXRoaXMuZ2V0SW5kaWNhdG9yRWxlbWVudCgpO0omJih0aGlzLmhhbmRsZUluaXRpYWxUcmFuc2l0aW9uKEopLHRoaXMudGFiU3R5bGU9PT0iaG9yaXpvbnRhbCI/dGhpcy51cGRhdGVIb3Jpem9udGFsSW5kaWNhdG9yKEosVCk6dGhpcy51cGRhdGVWZXJ0aWNhbEluZGljYXRvcihKLFQpLEouc3R5bGUub3BhY2l0eT0iMSIpfXNob3VsZFNob3dJbmRpY2F0b3IoKXtyZXR1cm4gdGhpcy5zZWxlY3RlZFRhYiYmdGhpcy5zaG93VGFiSW5kaWNhdG9yJiZ0aGlzLnRhYnMuaW5jbHVkZXModGhpcy5zZWxlY3RlZFRhYil9Z2V0U2VsZWN0ZWRUYWJFbGVtZW50KCl7bGV0IFQ9dGhpcy50YWJzLmluZGV4T2YodGhpcy5zZWxlY3RlZFRhYiksZmU9dGhpcy50YWJTdHlsZT09PSJob3Jpem9udGFsIj9gLnRhYnMtd3JhcHBlciAudGFic0NvbnRhaW5lciAudGFiOm50aC1jaGlsZCgke1QrMX0pYDpgLnZlcnRpY2FsLXdyYXBwZXIgLnRhYnNDb250YWluZXIgLnRhYjpudGgtY2hpbGQoJHtUKzF9KWA7cmV0dXJuIHRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKGZlKX1nZXRJbmRpY2F0b3JFbGVtZW50KCl7cmV0dXJuIHRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCIudGFiSW5kaWNhdG9yIil9aGFuZGxlSW5pdGlhbFRyYW5zaXRpb24oVCl7dGhpcy5pbmRpY2F0b3JJbml0aWFsaXplZHx8KFQuY2xhc3NMaXN0LmFkZCgibm8tdHJhbnNpdGlvbiIpLHRoaXMuaW5kaWNhdG9ySW5pdGlhbGl6ZWQ9ITAsc2V0VGltZW91dCgoKT0+e1QuY2xhc3NMaXN0LnJlbW92ZSgibm8tdHJhbnNpdGlvbiIpfSw1MCkpfXVwZGF0ZUhvcml6b250YWxJbmRpY2F0b3IoVCxKKXtsZXQgZmU9Si5xdWVyeVNlbGVjdG9yKCIudGFiLWNvbnRlbnQiKTtpZighZmUpcmV0dXJuO2xldCBMPVQucGFyZW50RWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxRPWZlLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLGtlPVEubGVmdC1MLmxlZnQsRz1RLndpZHRoKzgsQT1rZS00O1Quc3R5bGUud2lkdGg9YCR7R31weGAsVC5zdHlsZS5sZWZ0PWAke0F9cHhgfXVwZGF0ZVZlcnRpY2FsSW5kaWNhdG9yKFQsSil7bGV0IGZlPXRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCIudmVydGljYWwtd3JhcHBlciAudGFic0NvbnRhaW5lciIpO2ZlJiYoVC5zdHlsZS50b3A9YCR7Si5vZmZzZXRUb3ArZmUub2Zmc2V0VG9wfXB4YCxULnN0eWxlLmhlaWdodD1gJHtKLmNsaWVudEhlaWdodH1weGApfXN0YXRpY3tzaShhLHIpfX07cmV0dXJuIGFlPWF9KSgpfSk7dmFyIHAzLHhvLEFQcixFY3Q9bCgoKT0+e2kzKCk7U2UoKTtlcigpO0FjdCgpO290KCk7cDM9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSx4bz1mdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MixpPTA7aTx0Lmxlbmd0aDtpKyspcj1hP3RbaV0uY2FsbChlLHIpOnRbaV0uY2FsbChlKTtyZXR1cm4gYT9yOnZvaWQgMH0sQVByPSgoKT0+e2xldCBlPVt6ZSgiZGVlcy1hcHB1aS1tYWluY29udGVudCIpXSx0LHI9W10sYSxpPURlLG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdLHUscD1bXSxoPVtdLGIseD1bXSxnPVtdLHYsdz1bXSxNPVtdLEYsQz1bXSxrPVtdLE4sJD1bXSxJPVtdO3ZhciBCPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgej10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHt0eXBlOkFycmF5fSldLGM9W2ooe3R5cGU6T2JqZWN0fSldLHU9W2ooe3R5cGU6Qm9vbGVhbn0pXSxiPVtqKHt0eXBlOkJvb2xlYW59KV0sdj1baih7dHlwZTpOdW1iZXJ9KV0sRj1baih7dHlwZTpBcnJheX0pXSxOPVtqKHt0eXBlOkFycmF5fSldLHAzKHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToidGFicyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eT0+InRhYnMiaW4geSxnZXQ6eT0+eS50YWJzLHNldDooeSxFKT0+e3kudGFicz1FfX0sbWV0YWRhdGE6en0sbixzKSxwMyh0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNlbGVjdGVkVGFiIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5PT4ic2VsZWN0ZWRUYWIiaW4geSxnZXQ6eT0+eS5zZWxlY3RlZFRhYixzZXQ6KHksRSk9Pnt5LnNlbGVjdGVkVGFiPUV9fSxtZXRhZGF0YTp6fSxkLGYpLHAzKHRoaXMsbnVsbCx1LHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2hvd1RhYnMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnk9PiJzaG93VGFicyJpbiB5LGdldDp5PT55LnNob3dUYWJzLHNldDooeSxFKT0+e3kuc2hvd1RhYnM9RX19LG1ldGFkYXRhOnp9LHAsaCkscDModGhpcyxudWxsLGIse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ0YWJzQXV0b0hpZGUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnk9PiJ0YWJzQXV0b0hpZGUiaW4geSxnZXQ6eT0+eS50YWJzQXV0b0hpZGUsc2V0Oih5LEUpPT57eS50YWJzQXV0b0hpZGU9RX19LG1ldGFkYXRhOnp9LHgsZykscDModGhpcyxudWxsLHYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ0YWJzQXV0b0hpZGVUaHJlc2hvbGQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnk9PiJ0YWJzQXV0b0hpZGVUaHJlc2hvbGQiaW4geSxnZXQ6eT0+eS50YWJzQXV0b0hpZGVUaHJlc2hvbGQsc2V0Oih5LEUpPT57eS50YWJzQXV0b0hpZGVUaHJlc2hvbGQ9RX19LG1ldGFkYXRhOnp9LHcsTSkscDModGhpcyxudWxsLEYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ0YWJBY3Rpb25zTGVmdCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eT0+InRhYkFjdGlvbnNMZWZ0ImluIHksZ2V0Onk9PnkudGFiQWN0aW9uc0xlZnQsc2V0Oih5LEUpPT57eS50YWJBY3Rpb25zTGVmdD1FfX0sbWV0YWRhdGE6en0sQyxrKSxwMyh0aGlzLG51bGwsTix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InRhYkFjdGlvbnNSaWdodCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eT0+InRhYkFjdGlvbnNSaWdodCJpbiB5LGdldDp5PT55LnRhYkFjdGlvbnNSaWdodCxzZXQ6KHksRSk9Pnt5LnRhYkFjdGlvbnNSaWdodD1FfX0sbWV0YWRhdGE6en0sJCxJKSxwMyhudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTp6fSxudWxsLHIpLEI9YT10LnZhbHVlLHomJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6en0pfXN0YXRpYyBkZW1vPSgpPT5TYAogICAgPGRlZXMtYXBwdWktbWFpbmNvbnRlbnQKICAgICAgLnRhYnM9JHtbe2tleToiT3ZlcnZpZXciLGljb25OYW1lOiJsdWNpZGU6aG9tZSIsYWN0aW9uOigpPT5jb25zb2xlLmxvZygiT3ZlcnZpZXciKX0se2tleToiRGV0YWlscyIsaWNvbk5hbWU6Imx1Y2lkZTpmaWxlIixhY3Rpb246KCk9PmNvbnNvbGUubG9nKCJEZXRhaWxzIil9LHtrZXk6IlNldHRpbmdzIixpY29uTmFtZToibHVjaWRlOnNldHRpbmdzIixhY3Rpb246KCk9PmNvbnNvbGUubG9nKCJTZXR0aW5ncyIpfV19CiAgICA+CiAgICAgIDxkaXYgc2xvdD0iY29udGVudCIgc3R5bGU9InBhZGRpbmc6IDQwcHg7IGNvbG9yOiAjY2NjOyI+CiAgICAgICAgPGgxPk1haW4gQ29udGVudCBBcmVhPC9oMT4KICAgICAgICA8cD5UaGlzIGlzIHdoZXJlIHlvdXIgYXBwbGljYXRpb24gY29udGVudCBnb2VzLjwvcD4KICAgICAgPC9kaXY+CiAgICA8L2RlZXMtYXBwdWktbWFpbmNvbnRlbnQ+CiAgYDtzdGF0aWMgZGVtb0dyb3Vwcz1bIkFwcCBVSSJdOyNlPXhvKHRoaXMsbixbe2tleToiXHUyNkEwXHVGRTBGIFBsZWFzZSBzZXQgdGFicyIsYWN0aW9uOigpPT5jb25zb2xlLndhcm4oIk5vIHRhYnMgY29uZmlndXJlZCBmb3IgbWFpbmNvbnRlbnQiKX1dKTtnZXQgdGFicygpe3JldHVybiB0aGlzLiNlfXNldCB0YWJzKHope3RoaXMuI2U9en0jdD0oeG8odGhpcyxzKSx4byh0aGlzLGQsbnVsbCkpO2dldCBzZWxlY3RlZFRhYigpe3JldHVybiB0aGlzLiN0fXNldCBzZWxlY3RlZFRhYih6KXt0aGlzLiN0PXp9I3I9KHhvKHRoaXMsZikseG8odGhpcyxwLCEwKSk7Z2V0IHNob3dUYWJzKCl7cmV0dXJuIHRoaXMuI3J9c2V0IHNob3dUYWJzKHope3RoaXMuI3I9en0jYT0oeG8odGhpcyxoKSx4byh0aGlzLHgsITEpKTtnZXQgdGFic0F1dG9IaWRlKCl7cmV0dXJuIHRoaXMuI2F9c2V0IHRhYnNBdXRvSGlkZSh6KXt0aGlzLiNhPXp9I2k9KHhvKHRoaXMsZykseG8odGhpcyx3LDApKTtnZXQgdGFic0F1dG9IaWRlVGhyZXNob2xkKCl7cmV0dXJuIHRoaXMuI2l9c2V0IHRhYnNBdXRvSGlkZVRocmVzaG9sZCh6KXt0aGlzLiNpPXp9I289KHhvKHRoaXMsTSkseG8odGhpcyxDLFtdKSk7Z2V0IHRhYkFjdGlvbnNMZWZ0KCl7cmV0dXJuIHRoaXMuI299c2V0IHRhYkFjdGlvbnNMZWZ0KHope3RoaXMuI289en0jbj0oeG8odGhpcyxrKSx4byh0aGlzLCQsW10pKTtnZXQgdGFiQWN0aW9uc1JpZ2h0KCl7cmV0dXJuIHRoaXMuI259c2V0IHRhYkFjdGlvbnNSaWdodCh6KXt0aGlzLiNuPXp9c3RhdGljIHN0eWxlcz1bUGUsbS5kZWZhdWx0U3R5bGVzLGxlYAogICAgICAvKiBUT0RPOiBNaWdyYXRlIGhhcmRjb2RlZCB2YWx1ZXMgdG8gLS1kZWVzLSogQ1NTIHZhcmlhYmxlcyAqLwogICAgICA6aG9zdCB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMzMzIiwiI2ZmZiIpfTsKICAgICAgICBkaXNwbGF5OiBncmlkOwogICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byAxZnI7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZmZmZmZmIiwiIzE2MTYxNiIpfTsKICAgICAgfQoKICAgICAgLm1haW5jb250YWluZXIgewogICAgICAgIGRpc3BsYXk6IGNvbnRlbnRzOwogICAgICB9CgogICAgICAudG9wYmFyIHsKICAgICAgICBkaXNwbGF5OiBncmlkOwogICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogMWZyOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgICAgdHJhbnNpdGlvbjogZ3JpZC10ZW1wbGF0ZS1yb3dzIDAuM3MgZWFzZTsKICAgICAgfQoKICAgICAgLnRvcGJhciA+ICogewogICAgICAgIG1pbi1oZWlnaHQ6IDA7CiAgICAgIH0KCiAgICAgIC5jb250ZW50LWFyZWEgewogICAgICAgIG92ZXJmbG93OiBhdXRvOwogICAgICAgIG1pbi1oZWlnaHQ6IDA7CiAgICAgICAgb3ZlcnNjcm9sbC1iZWhhdmlvcjogY29udGFpbjsKICAgICAgfQoKICAgICAgOmhvc3QoW25vdGFic10pIC50b3BiYXIgewogICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogMGZyOwogICAgICB9CiAgICBgXTtyZW5kZXIoKXtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0ibWFpbmNvbnRhaW5lciI+CiAgICAgICAgPGRpdiBjbGFzcz0idG9wYmFyIj4KICAgICAgICAgIDxkZWVzLWFwcHVpLXRhYnMKICAgICAgICAgICAgLnRhYnM9JHt0aGlzLnRhYnN9CiAgICAgICAgICAgIC5zZWxlY3RlZFRhYj0ke3RoaXMuc2VsZWN0ZWRUYWJ9CiAgICAgICAgICAgIC5zaG93VGFiSW5kaWNhdG9yPSR7ITB9CiAgICAgICAgICAgIC50YWJTdHlsZT0keyJob3Jpem9udGFsIn0KICAgICAgICAgICAgLmF1dG9IaWRlPSR7dGhpcy50YWJzQXV0b0hpZGV9CiAgICAgICAgICAgIC5hdXRvSGlkZVRocmVzaG9sZD0ke3RoaXMudGFic0F1dG9IaWRlVGhyZXNob2xkfQogICAgICAgICAgICAuYWN0aW9uc0xlZnQ9JHt0aGlzLnRhYkFjdGlvbnNMZWZ0fQogICAgICAgICAgICAuYWN0aW9uc1JpZ2h0PSR7dGhpcy50YWJBY3Rpb25zUmlnaHR9CiAgICAgICAgICAgIEB0YWItc2VsZWN0PSR7ej0+dGhpcy5oYW5kbGVUYWJTZWxlY3Qoeil9CiAgICAgICAgICAgIEB0YWItY2xvc2U9JHt6PT50aGlzLmhhbmRsZVRhYkNsb3NlKHopfQogICAgICAgICAgPjwvZGVlcy1hcHB1aS10YWJzPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRlbnQtYXJlYSI+CiAgICAgICAgICA8c2xvdD48L3Nsb3Q+CiAgICAgICAgICA8c2xvdCBuYW1lPSJjb250ZW50Ij48L3Nsb3Q+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgYH1oYW5kbGVUYWJTZWxlY3Qoeil7dGhpcy5zZWxlY3RlZFRhYj16LmRldGFpbC50YWIsdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgidGFiLXNlbGVjdCIse2RldGFpbDp6LmRldGFpbCxidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpfWhhbmRsZVRhYkNsb3NlKHope3RoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoInRhYi1jbG9zZSIse2RldGFpbDp6LmRldGFpbCxidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpfXVwZGF0ZWQoeil7c3VwZXIudXBkYXRlZCh6KSx6Lmhhcygic2hvd1RhYnMiKSYmKHRoaXMuc2hvd1RhYnM/dGhpcy5yZW1vdmVBdHRyaWJ1dGUoIm5vdGFicyIpOnRoaXMuc2V0QXR0cmlidXRlKCJub3RhYnMiLCIiKSl9YXN5bmMgZmlyc3RVcGRhdGVkKHope2F3YWl0IHN1cGVyLmZpcnN0VXBkYXRlZCh6KSx0aGlzLnNob3dUYWJzfHx0aGlzLnNldEF0dHJpYnV0ZSgibm90YWJzIiwiIik7bGV0IHk9dGhpcy5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoImRlZXMtYXBwdWktdGFicyIpO3kmJmF3YWl0IHkudXBkYXRlQ29tcGxldGV9Y29uc3RydWN0b3IoKXtzdXBlciguLi5hcmd1bWVudHMpLHhvKHRoaXMsSSl9c3RhdGlje3hvKGEscil9fTtyZXR1cm4gQj1hfSkoKX0pO3ZhciBjcixhdCxFUHIsJFByPWwoKCk9PntTZSgpO2VyKCk7aTMoKTt3UHIoKTtvdCgpO1RjdCgpO1JsdCgpO0hsdCgpO0xjdCgpO0RjdCgpO0VjdCgpO1BsdCgpO2NyPWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sYXQ9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LEVQcj0oKCk9PntsZXQgZT1bemUoImRlZXMtYXBwdWkiKV0sdCxyPVtdLGEsaT1EZSxvLG49W10scz1bXSxjLGQ9W10sZj1bXSx1LHA9W10saD1bXSxiLHg9W10sZz1bXSx2LHc9W10sTT1bXSxGLEM9W10saz1bXSxOLCQ9W10sST1bXSxCLHo9W10seT1bXSxFLF89W10sUD1bXSxWLEg9W10sVz1bXSxhZSxUPVtdLEo9W10sZmUsTD1bXSxRPVtdLGtlLEc9W10sQT1bXSxELFI9W10sTz1bXSxZLHVlPVtdLHllPVtdLCRlLFU9W10scT1bXSxpZSx3ZT1bXSxnZT1bXSxBZSx4ZT1bXSxuZT1bXSxMZSxPZT1bXSxKZT1bXSx0ZSxaPVtdLGVlPVtdLGJlLE5lPVtdLEtlPVtdLHl0LG50PVtdLEx0PVtdLE90LHNlPVtdLGRlPVtdLEVlLGd0PVtdLGt0PVtdLHlyLGxpPVtdLGExPVtdLGkxLF9lPVtdLEZlPVtdLE50LG1yPVtdLENyPVtdLE9yLF9yPVtdLG8xPVtdLG4xLENlPVtdLHZlPVtdLEhlLFRlPVtdLHBlPVtdLEdlLGNlPVtdLEs9W10sTWUsV2U9W10sVWU9W10sd3IsUnI9W10sWGE9W10sS24seWw9W10sd2w9W10sWHMsc1g9W10saDR0PVtdLG00dCxnNHQ9W10seDR0PVtdLGI0dCx2NHQ9W10seTR0PVtdO3ZhciB3NHQ9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCBYPXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO289W2ooe3R5cGU6QXJyYXl9KV0sYz1baih7dHlwZTpTdHJpbmd9KV0sdT1baih7dHlwZTpTdHJpbmd9KV0sYj1baih7dHlwZTpCb29sZWFufSldLHY9W2ooe3R5cGU6T2JqZWN0fSldLEY9W2ooe3R5cGU6QXJyYXl9KV0sTj1baih7dHlwZTpCb29sZWFufSldLEI9W2ooe3R5cGU6U3RyaW5nfSldLEU9W2ooe3R5cGU6U3RyaW5nfSldLFY9W2ooe3R5cGU6QXJyYXl9KV0sYWU9W2ooe3R5cGU6QXJyYXl9KV0sZmU9W2ooe3R5cGU6QXJyYXl9KV0sa2U9W2ooe3R5cGU6T2JqZWN0fSldLEQ9W2ooe3R5cGU6U3RyaW5nfSldLFk9W2ooe3R5cGU6QXJyYXl9KV0sJGU9W2ooe3R5cGU6T2JqZWN0fSldLGllPVtqKHt0eXBlOkJvb2xlYW59KV0sQWU9W2ooe3R5cGU6Qm9vbGVhbn0pXSxMZT1baih7dHlwZTpCb29sZWFufSldLHRlPVtqKHt0eXBlOkJvb2xlYW59KV0sYmU9W2ooe3R5cGU6Qm9vbGVhbn0pXSx5dD1baih7dHlwZTpCb29sZWFufSldLE90PVtqKHt0eXBlOk51bWJlcn0pXSxFZT1bcmUoKV0seXI9W3JlKCldLGkxPVtqKHt0eXBlOkFycmF5fSldLE50PVtqKHt0eXBlOk9iamVjdH0pXSxPcj1baih7dHlwZTpBcnJheX0pXSxuMT1baih7dHlwZTpBcnJheX0pXSxIZT1bcmUoKV0sR2U9W3JlKCldLE1lPVtyZSgpXSx3cj1bcmUoKV0sS249W3JlKCldLFhzPVtyZSgpXSxtNHQ9W3JlKCldLGI0dD1bcmUoKV0sY3IodGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJhcHBiYXJNZW51SXRlbXMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOm9lPT4iYXBwYmFyTWVudUl0ZW1zImluIG9lLGdldDpvZT0+b2UuYXBwYmFyTWVudUl0ZW1zLHNldDoob2UsSWUpPT57b2UuYXBwYmFyTWVudUl0ZW1zPUllfX0sbWV0YWRhdGE6WH0sbixzKSxjcih0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImFwcGJhckJyZWFkY3J1bWJzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpvZT0+ImFwcGJhckJyZWFkY3J1bWJzImluIG9lLGdldDpvZT0+b2UuYXBwYmFyQnJlYWRjcnVtYnMsc2V0OihvZSxJZSk9PntvZS5hcHBiYXJCcmVhZGNydW1icz1JZX19LG1ldGFkYXRhOlh9LGQsZiksY3IodGhpcyxudWxsLHUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJhcHBiYXJCcmVhZGNydW1iU2VwYXJhdG9yIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpvZT0+ImFwcGJhckJyZWFkY3J1bWJTZXBhcmF0b3IiaW4gb2UsZ2V0Om9lPT5vZS5hcHBiYXJCcmVhZGNydW1iU2VwYXJhdG9yLHNldDoob2UsSWUpPT57b2UuYXBwYmFyQnJlYWRjcnVtYlNlcGFyYXRvcj1JZX19LG1ldGFkYXRhOlh9LHAsaCksY3IodGhpcyxudWxsLGIse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJhcHBiYXJTaG93V2luZG93Q29udHJvbHMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOm9lPT4iYXBwYmFyU2hvd1dpbmRvd0NvbnRyb2xzImluIG9lLGdldDpvZT0+b2UuYXBwYmFyU2hvd1dpbmRvd0NvbnRyb2xzLHNldDoob2UsSWUpPT57b2UuYXBwYmFyU2hvd1dpbmRvd0NvbnRyb2xzPUllfX0sbWV0YWRhdGE6WH0seCxnKSxjcih0aGlzLG51bGwsdix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImFwcGJhclVzZXIiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOm9lPT4iYXBwYmFyVXNlciJpbiBvZSxnZXQ6b2U9Pm9lLmFwcGJhclVzZXIsc2V0OihvZSxJZSk9PntvZS5hcHBiYXJVc2VyPUllfX0sbWV0YWRhdGE6WH0sdyxNKSxjcih0aGlzLG51bGwsRix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImFwcGJhclByb2ZpbGVNZW51SXRlbXMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOm9lPT4iYXBwYmFyUHJvZmlsZU1lbnVJdGVtcyJpbiBvZSxnZXQ6b2U9Pm9lLmFwcGJhclByb2ZpbGVNZW51SXRlbXMsc2V0OihvZSxJZSk9PntvZS5hcHBiYXJQcm9maWxlTWVudUl0ZW1zPUllfX0sbWV0YWRhdGE6WH0sQyxrKSxjcih0aGlzLG51bGwsTix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImFwcGJhclNob3dTZWFyY2giLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOm9lPT4iYXBwYmFyU2hvd1NlYXJjaCJpbiBvZSxnZXQ6b2U9Pm9lLmFwcGJhclNob3dTZWFyY2gsc2V0OihvZSxJZSk9PntvZS5hcHBiYXJTaG93U2VhcmNoPUllfX0sbWV0YWRhdGE6WH0sJCxJKSxjcih0aGlzLG51bGwsQix7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im1haW5tZW51TG9nb0ljb24iLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOm9lPT4ibWFpbm1lbnVMb2dvSWNvbiJpbiBvZSxnZXQ6b2U9Pm9lLm1haW5tZW51TG9nb0ljb24sc2V0OihvZSxJZSk9PntvZS5tYWlubWVudUxvZ29JY29uPUllfX0sbWV0YWRhdGE6WH0seix5KSxjcih0aGlzLG51bGwsRSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im1haW5tZW51TG9nb1RleHQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOm9lPT4ibWFpbm1lbnVMb2dvVGV4dCJpbiBvZSxnZXQ6b2U9Pm9lLm1haW5tZW51TG9nb1RleHQsc2V0OihvZSxJZSk9PntvZS5tYWlubWVudUxvZ29UZXh0PUllfX0sbWV0YWRhdGE6WH0sXyxQKSxjcih0aGlzLG51bGwsVix7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im1haW5tZW51R3JvdXBzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpvZT0+Im1haW5tZW51R3JvdXBzImluIG9lLGdldDpvZT0+b2UubWFpbm1lbnVHcm91cHMsc2V0OihvZSxJZSk9PntvZS5tYWlubWVudUdyb3Vwcz1JZX19LG1ldGFkYXRhOlh9LEgsVyksY3IodGhpcyxudWxsLGFlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibWFpbm1lbnVCb3R0b21UYWJzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpvZT0+Im1haW5tZW51Qm90dG9tVGFicyJpbiBvZSxnZXQ6b2U9Pm9lLm1haW5tZW51Qm90dG9tVGFicyxzZXQ6KG9lLEllKT0+e29lLm1haW5tZW51Qm90dG9tVGFicz1JZX19LG1ldGFkYXRhOlh9LFQsSiksY3IodGhpcyxudWxsLGZlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibWFpbm1lbnVUYWJzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpvZT0+Im1haW5tZW51VGFicyJpbiBvZSxnZXQ6b2U9Pm9lLm1haW5tZW51VGFicyxzZXQ6KG9lLEllKT0+e29lLm1haW5tZW51VGFicz1JZX19LG1ldGFkYXRhOlh9LEwsUSksY3IodGhpcyxudWxsLGtlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibWFpbm1lbnVTZWxlY3RlZFRhYiIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6b2U9PiJtYWlubWVudVNlbGVjdGVkVGFiImluIG9lLGdldDpvZT0+b2UubWFpbm1lbnVTZWxlY3RlZFRhYixzZXQ6KG9lLEllKT0+e29lLm1haW5tZW51U2VsZWN0ZWRUYWI9SWV9fSxtZXRhZGF0YTpYfSxHLEEpLGNyKHRoaXMsbnVsbCxELHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2Vjb25kYXJ5bWVudUhlYWRpbmciLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOm9lPT4ic2Vjb25kYXJ5bWVudUhlYWRpbmciaW4gb2UsZ2V0Om9lPT5vZS5zZWNvbmRhcnltZW51SGVhZGluZyxzZXQ6KG9lLEllKT0+e29lLnNlY29uZGFyeW1lbnVIZWFkaW5nPUllfX0sbWV0YWRhdGE6WH0sUixPKSxjcih0aGlzLG51bGwsWSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNlY29uZGFyeW1lbnVHcm91cHMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOm9lPT4ic2Vjb25kYXJ5bWVudUdyb3VwcyJpbiBvZSxnZXQ6b2U9Pm9lLnNlY29uZGFyeW1lbnVHcm91cHMsc2V0OihvZSxJZSk9PntvZS5zZWNvbmRhcnltZW51R3JvdXBzPUllfX0sbWV0YWRhdGE6WH0sdWUseWUpLGNyKHRoaXMsbnVsbCwkZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNlY29uZGFyeW1lbnVTZWxlY3RlZEl0ZW0iLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOm9lPT4ic2Vjb25kYXJ5bWVudVNlbGVjdGVkSXRlbSJpbiBvZSxnZXQ6b2U9Pm9lLnNlY29uZGFyeW1lbnVTZWxlY3RlZEl0ZW0sc2V0OihvZSxJZSk9PntvZS5zZWNvbmRhcnltZW51U2VsZWN0ZWRJdGVtPUllfX0sbWV0YWRhdGE6WH0sVSxxKSxjcih0aGlzLG51bGwsaWUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJtYWlubWVudUNvbGxhcHNlZCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6b2U9PiJtYWlubWVudUNvbGxhcHNlZCJpbiBvZSxnZXQ6b2U9Pm9lLm1haW5tZW51Q29sbGFwc2VkLHNldDoob2UsSWUpPT57b2UubWFpbm1lbnVDb2xsYXBzZWQ9SWV9fSxtZXRhZGF0YTpYfSx3ZSxnZSksY3IodGhpcyxudWxsLEFlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2Vjb25kYXJ5bWVudUNvbGxhcHNlZCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6b2U9PiJzZWNvbmRhcnltZW51Q29sbGFwc2VkImluIG9lLGdldDpvZT0+b2Uuc2Vjb25kYXJ5bWVudUNvbGxhcHNlZCxzZXQ6KG9lLEllKT0+e29lLnNlY29uZGFyeW1lbnVDb2xsYXBzZWQ9SWV9fSxtZXRhZGF0YTpYfSx4ZSxuZSksY3IodGhpcyxudWxsLExlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibWFpbm1lbnVWaXNpYmxlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpvZT0+Im1haW5tZW51VmlzaWJsZSJpbiBvZSxnZXQ6b2U9Pm9lLm1haW5tZW51VmlzaWJsZSxzZXQ6KG9lLEllKT0+e29lLm1haW5tZW51VmlzaWJsZT1JZX19LG1ldGFkYXRhOlh9LE9lLEplKSxjcih0aGlzLG51bGwsdGUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzZWNvbmRhcnltZW51VmlzaWJsZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6b2U9PiJzZWNvbmRhcnltZW51VmlzaWJsZSJpbiBvZSxnZXQ6b2U9Pm9lLnNlY29uZGFyeW1lbnVWaXNpYmxlLHNldDoob2UsSWUpPT57b2Uuc2Vjb25kYXJ5bWVudVZpc2libGU9SWV9fSxtZXRhZGF0YTpYfSxaLGVlKSxjcih0aGlzLG51bGwsYmUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJtYWluY29udGVudFRhYnNWaXNpYmxlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpvZT0+Im1haW5jb250ZW50VGFic1Zpc2libGUiaW4gb2UsZ2V0Om9lPT5vZS5tYWluY29udGVudFRhYnNWaXNpYmxlLHNldDoob2UsSWUpPT57b2UubWFpbmNvbnRlbnRUYWJzVmlzaWJsZT1JZX19LG1ldGFkYXRhOlh9LE5lLEtlKSxjcih0aGlzLG51bGwseXQse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJjb250ZW50VGFic0F1dG9IaWRlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpvZT0+ImNvbnRlbnRUYWJzQXV0b0hpZGUiaW4gb2UsZ2V0Om9lPT5vZS5jb250ZW50VGFic0F1dG9IaWRlLHNldDoob2UsSWUpPT57b2UuY29udGVudFRhYnNBdXRvSGlkZT1JZX19LG1ldGFkYXRhOlh9LG50LEx0KSxjcih0aGlzLG51bGwsT3Qse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJjb250ZW50VGFic0F1dG9IaWRlVGhyZXNob2xkIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpvZT0+ImNvbnRlbnRUYWJzQXV0b0hpZGVUaHJlc2hvbGQiaW4gb2UsZ2V0Om9lPT5vZS5jb250ZW50VGFic0F1dG9IaWRlVGhyZXNob2xkLHNldDoob2UsSWUpPT57b2UuY29udGVudFRhYnNBdXRvSGlkZVRocmVzaG9sZD1JZX19LG1ldGFkYXRhOlh9LHNlLGRlKSxjcih0aGlzLG51bGwsRWUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJhY3Rpdml0eUxvZ1Zpc2libGUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOm9lPT4iYWN0aXZpdHlMb2dWaXNpYmxlImluIG9lLGdldDpvZT0+b2UuYWN0aXZpdHlMb2dWaXNpYmxlLHNldDoob2UsSWUpPT57b2UuYWN0aXZpdHlMb2dWaXNpYmxlPUllfX0sbWV0YWRhdGE6WH0sZ3Qsa3QpLGNyKHRoaXMsbnVsbCx5cix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImFjdGl2aXR5TG9nQ291bnQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOm9lPT4iYWN0aXZpdHlMb2dDb3VudCJpbiBvZSxnZXQ6b2U9Pm9lLmFjdGl2aXR5TG9nQ291bnQsc2V0OihvZSxJZSk9PntvZS5hY3Rpdml0eUxvZ0NvdW50PUllfX0sbWV0YWRhdGE6WH0sbGksYTEpLGNyKHRoaXMsbnVsbCxpMSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im1haW5jb250ZW50VGFicyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6b2U9PiJtYWluY29udGVudFRhYnMiaW4gb2UsZ2V0Om9lPT5vZS5tYWluY29udGVudFRhYnMsc2V0OihvZSxJZSk9PntvZS5tYWluY29udGVudFRhYnM9SWV9fSxtZXRhZGF0YTpYfSxfZSxGZSksY3IodGhpcyxudWxsLE50LHtraW5kOiJhY2Nlc3NvciIsbmFtZToibWFpbmNvbnRlbnRTZWxlY3RlZFRhYiIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6b2U9PiJtYWluY29udGVudFNlbGVjdGVkVGFiImluIG9lLGdldDpvZT0+b2UubWFpbmNvbnRlbnRTZWxlY3RlZFRhYixzZXQ6KG9lLEllKT0+e29lLm1haW5jb250ZW50U2VsZWN0ZWRUYWI9SWV9fSxtZXRhZGF0YTpYfSxtcixDciksY3IodGhpcyxudWxsLE9yLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiY29udGVudFRhYkFjdGlvbnNMZWZ0IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpvZT0+ImNvbnRlbnRUYWJBY3Rpb25zTGVmdCJpbiBvZSxnZXQ6b2U9Pm9lLmNvbnRlbnRUYWJBY3Rpb25zTGVmdCxzZXQ6KG9lLEllKT0+e29lLmNvbnRlbnRUYWJBY3Rpb25zTGVmdD1JZX19LG1ldGFkYXRhOlh9LF9yLG8xKSxjcih0aGlzLG51bGwsbjEse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJjb250ZW50VGFiQWN0aW9uc1JpZ2h0IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpvZT0+ImNvbnRlbnRUYWJBY3Rpb25zUmlnaHQiaW4gb2UsZ2V0Om9lPT5vZS5jb250ZW50VGFiQWN0aW9uc1JpZ2h0LHNldDoob2UsSWUpPT57b2UuY29udGVudFRhYkFjdGlvbnNSaWdodD1JZX19LG1ldGFkYXRhOlh9LENlLHZlKSxjcih0aGlzLG51bGwsSGUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJhcHBiYXIiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOm9lPT4iYXBwYmFyImluIG9lLGdldDpvZT0+b2UuYXBwYmFyLHNldDoob2UsSWUpPT57b2UuYXBwYmFyPUllfX0sbWV0YWRhdGE6WH0sVGUscGUpLGNyKHRoaXMsbnVsbCxHZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im1haW5tZW51IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpvZT0+Im1haW5tZW51ImluIG9lLGdldDpvZT0+b2UubWFpbm1lbnUsc2V0OihvZSxJZSk9PntvZS5tYWlubWVudT1JZX19LG1ldGFkYXRhOlh9LGNlLEspLGNyKHRoaXMsbnVsbCxNZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNlY29uZGFyeW1lbnUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOm9lPT4ic2Vjb25kYXJ5bWVudSJpbiBvZSxnZXQ6b2U9Pm9lLnNlY29uZGFyeW1lbnUsc2V0OihvZSxJZSk9PntvZS5zZWNvbmRhcnltZW51PUllfX0sbWV0YWRhdGE6WH0sV2UsVWUpLGNyKHRoaXMsbnVsbCx3cix7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im1haW5jb250ZW50IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpvZT0+Im1haW5jb250ZW50ImluIG9lLGdldDpvZT0+b2UubWFpbmNvbnRlbnQsc2V0OihvZSxJZSk9PntvZS5tYWluY29udGVudD1JZX19LG1ldGFkYXRhOlh9LFJyLFhhKSxjcih0aGlzLG51bGwsS24se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJhY3Rpdml0eWxvZ0VsZW1lbnQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOm9lPT4iYWN0aXZpdHlsb2dFbGVtZW50ImluIG9lLGdldDpvZT0+b2UuYWN0aXZpdHlsb2dFbGVtZW50LHNldDoob2UsSWUpPT57b2UuYWN0aXZpdHlsb2dFbGVtZW50PUllfX0sbWV0YWRhdGE6WH0seWwsd2wpLGNyKHRoaXMsbnVsbCxYcyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImJvdHRvbWJhckVsZW1lbnQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOm9lPT4iYm90dG9tYmFyRWxlbWVudCJpbiBvZSxnZXQ6b2U9Pm9lLmJvdHRvbWJhckVsZW1lbnQsc2V0OihvZSxJZSk9PntvZS5ib3R0b21iYXJFbGVtZW50PUllfX0sbWV0YWRhdGE6WH0sc1gsaDR0KSxjcih0aGlzLG51bGwsbTR0LHtraW5kOiJhY2Nlc3NvciIsbmFtZToiYm90dG9tYmFyVmlzaWJsZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6b2U9PiJib3R0b21iYXJWaXNpYmxlImluIG9lLGdldDpvZT0+b2UuYm90dG9tYmFyVmlzaWJsZSxzZXQ6KG9lLEllKT0+e29lLmJvdHRvbWJhclZpc2libGU9SWV9fSxtZXRhZGF0YTpYfSxnNHQseDR0KSxjcih0aGlzLG51bGwsYjR0LHtraW5kOiJhY2Nlc3NvciIsbmFtZToiY3VycmVudFZpZXciLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOm9lPT4iY3VycmVudFZpZXciaW4gb2UsZ2V0Om9lPT5vZS5jdXJyZW50VmlldyxzZXQ6KG9lLEllKT0+e29lLmN1cnJlbnRWaWV3PUllfX0sbWV0YWRhdGE6WH0sdjR0LHk0dCksY3IobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6WH0sbnVsbCxyKSx3NHQ9YT10LnZhbHVlLFgmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6WH0pfXN0YXRpYyBkZW1vPXlQcjtzdGF0aWMgZGVtb0dyb3Vwcz1bIkFwcCBVSSJdO3ZpZXdMaWZlY3ljbGUkPW5ldyBKdC5zbWFydHJ4LnJ4anMuU3ViamVjdDt2aWV3Q2hhbmdlZCQ9bmV3IEp0LnNtYXJ0cngucnhqcy5TdWJqZWN0OyNlPWF0KHRoaXMsbixbXSk7Z2V0IGFwcGJhck1lbnVJdGVtcygpe3JldHVybiB0aGlzLiNlfXNldCBhcHBiYXJNZW51SXRlbXMoWCl7dGhpcy4jZT1YfSN0PShhdCh0aGlzLHMpLGF0KHRoaXMsZCwiIikpO2dldCBhcHBiYXJCcmVhZGNydW1icygpe3JldHVybiB0aGlzLiN0fXNldCBhcHBiYXJCcmVhZGNydW1icyhYKXt0aGlzLiN0PVh9I3I9KGF0KHRoaXMsZiksYXQodGhpcyxwLCIgPiAiKSk7Z2V0IGFwcGJhckJyZWFkY3J1bWJTZXBhcmF0b3IoKXtyZXR1cm4gdGhpcy4jcn1zZXQgYXBwYmFyQnJlYWRjcnVtYlNlcGFyYXRvcihYKXt0aGlzLiNyPVh9I2E9KGF0KHRoaXMsaCksYXQodGhpcyx4LCEwKSk7Z2V0IGFwcGJhclNob3dXaW5kb3dDb250cm9scygpe3JldHVybiB0aGlzLiNhfXNldCBhcHBiYXJTaG93V2luZG93Q29udHJvbHMoWCl7dGhpcy4jYT1YfSNpPShhdCh0aGlzLGcpLGF0KHRoaXMsdyx2b2lkIDApKTtnZXQgYXBwYmFyVXNlcigpe3JldHVybiB0aGlzLiNpfXNldCBhcHBiYXJVc2VyKFgpe3RoaXMuI2k9WH0jbz0oYXQodGhpcyxNKSxhdCh0aGlzLEMsW10pKTtnZXQgYXBwYmFyUHJvZmlsZU1lbnVJdGVtcygpe3JldHVybiB0aGlzLiNvfXNldCBhcHBiYXJQcm9maWxlTWVudUl0ZW1zKFgpe3RoaXMuI289WH0jbj0oYXQodGhpcyxrKSxhdCh0aGlzLCQsITEpKTtnZXQgYXBwYmFyU2hvd1NlYXJjaCgpe3JldHVybiB0aGlzLiNufXNldCBhcHBiYXJTaG93U2VhcmNoKFgpe3RoaXMuI249WH0jcz0oYXQodGhpcyxJKSxhdCh0aGlzLHosIiIpKTtnZXQgbWFpbm1lbnVMb2dvSWNvbigpe3JldHVybiB0aGlzLiNzfXNldCBtYWlubWVudUxvZ29JY29uKFgpe3RoaXMuI3M9WH0jbD0oYXQodGhpcyx5KSxhdCh0aGlzLF8sIiIpKTtnZXQgbWFpbm1lbnVMb2dvVGV4dCgpe3JldHVybiB0aGlzLiNsfXNldCBtYWlubWVudUxvZ29UZXh0KFgpe3RoaXMuI2w9WH0jYz0oYXQodGhpcyxQKSxhdCh0aGlzLEgsW10pKTtnZXQgbWFpbm1lbnVHcm91cHMoKXtyZXR1cm4gdGhpcy4jY31zZXQgbWFpbm1lbnVHcm91cHMoWCl7dGhpcy4jYz1YfSNkPShhdCh0aGlzLFcpLGF0KHRoaXMsVCxbXSkpO2dldCBtYWlubWVudUJvdHRvbVRhYnMoKXtyZXR1cm4gdGhpcy4jZH1zZXQgbWFpbm1lbnVCb3R0b21UYWJzKFgpe3RoaXMuI2Q9WH0jdT0oYXQodGhpcyxKKSxhdCh0aGlzLEwsW10pKTtnZXQgbWFpbm1lbnVUYWJzKCl7cmV0dXJuIHRoaXMuI3V9c2V0IG1haW5tZW51VGFicyhYKXt0aGlzLiN1PVh9I2Y9KGF0KHRoaXMsUSksYXQodGhpcyxHLHZvaWQgMCkpO2dldCBtYWlubWVudVNlbGVjdGVkVGFiKCl7cmV0dXJuIHRoaXMuI2Z9c2V0IG1haW5tZW51U2VsZWN0ZWRUYWIoWCl7dGhpcy4jZj1YfSNwPShhdCh0aGlzLEEpLGF0KHRoaXMsUiwiIikpO2dldCBzZWNvbmRhcnltZW51SGVhZGluZygpe3JldHVybiB0aGlzLiNwfXNldCBzZWNvbmRhcnltZW51SGVhZGluZyhYKXt0aGlzLiNwPVh9I2g9KGF0KHRoaXMsTyksYXQodGhpcyx1ZSxbXSkpO2dldCBzZWNvbmRhcnltZW51R3JvdXBzKCl7cmV0dXJuIHRoaXMuI2h9c2V0IHNlY29uZGFyeW1lbnVHcm91cHMoWCl7dGhpcy4jaD1YfSNtPShhdCh0aGlzLHllKSxhdCh0aGlzLFUsdm9pZCAwKSk7Z2V0IHNlY29uZGFyeW1lbnVTZWxlY3RlZEl0ZW0oKXtyZXR1cm4gdGhpcy4jbX1zZXQgc2Vjb25kYXJ5bWVudVNlbGVjdGVkSXRlbShYKXt0aGlzLiNtPVh9I2c9KGF0KHRoaXMscSksYXQodGhpcyx3ZSwhMSkpO2dldCBtYWlubWVudUNvbGxhcHNlZCgpe3JldHVybiB0aGlzLiNnfXNldCBtYWlubWVudUNvbGxhcHNlZChYKXt0aGlzLiNnPVh9I3g9KGF0KHRoaXMsZ2UpLGF0KHRoaXMseGUsITEpKTtnZXQgc2Vjb25kYXJ5bWVudUNvbGxhcHNlZCgpe3JldHVybiB0aGlzLiN4fXNldCBzZWNvbmRhcnltZW51Q29sbGFwc2VkKFgpe3RoaXMuI3g9WH0jYj0oYXQodGhpcyxuZSksYXQodGhpcyxPZSwhMCkpO2dldCBtYWlubWVudVZpc2libGUoKXtyZXR1cm4gdGhpcy4jYn1zZXQgbWFpbm1lbnVWaXNpYmxlKFgpe3RoaXMuI2I9WH0jdj0oYXQodGhpcyxKZSksYXQodGhpcyxaLCEwKSk7Z2V0IHNlY29uZGFyeW1lbnVWaXNpYmxlKCl7cmV0dXJuIHRoaXMuI3Z9c2V0IHNlY29uZGFyeW1lbnVWaXNpYmxlKFgpe3RoaXMuI3Y9WH0jeT0oYXQodGhpcyxlZSksYXQodGhpcyxOZSwhMCkpO2dldCBtYWluY29udGVudFRhYnNWaXNpYmxlKCl7cmV0dXJuIHRoaXMuI3l9c2V0IG1haW5jb250ZW50VGFic1Zpc2libGUoWCl7dGhpcy4jeT1YfSN3PShhdCh0aGlzLEtlKSxhdCh0aGlzLG50LCExKSk7Z2V0IGNvbnRlbnRUYWJzQXV0b0hpZGUoKXtyZXR1cm4gdGhpcy4jd31zZXQgY29udGVudFRhYnNBdXRvSGlkZShYKXt0aGlzLiN3PVh9I009KGF0KHRoaXMsTHQpLGF0KHRoaXMsc2UsMCkpO2dldCBjb250ZW50VGFic0F1dG9IaWRlVGhyZXNob2xkKCl7cmV0dXJuIHRoaXMuI019c2V0IGNvbnRlbnRUYWJzQXV0b0hpZGVUaHJlc2hvbGQoWCl7dGhpcy4jTT1YfSNrPShhdCh0aGlzLGRlKSxhdCh0aGlzLGd0LCExKSk7Z2V0IGFjdGl2aXR5TG9nVmlzaWJsZSgpe3JldHVybiB0aGlzLiNrfXNldCBhY3Rpdml0eUxvZ1Zpc2libGUoWCl7dGhpcy4jaz1YfSNTPShhdCh0aGlzLGt0KSxhdCh0aGlzLGxpLDApKTtnZXQgYWN0aXZpdHlMb2dDb3VudCgpe3JldHVybiB0aGlzLiNTfXNldCBhY3Rpdml0eUxvZ0NvdW50KFgpe3RoaXMuI1M9WH0jej0oYXQodGhpcyxhMSksYXQodGhpcyxfZSxbXSkpO2dldCBtYWluY29udGVudFRhYnMoKXtyZXR1cm4gdGhpcy4jen1zZXQgbWFpbmNvbnRlbnRUYWJzKFgpe3RoaXMuI3o9WH0jQz0oYXQodGhpcyxGZSksYXQodGhpcyxtcix2b2lkIDApKTtnZXQgbWFpbmNvbnRlbnRTZWxlY3RlZFRhYigpe3JldHVybiB0aGlzLiNDfXNldCBtYWluY29udGVudFNlbGVjdGVkVGFiKFgpe3RoaXMuI0M9WH0jXz0oYXQodGhpcyxDciksYXQodGhpcyxfcixbXSkpO2dldCBjb250ZW50VGFiQWN0aW9uc0xlZnQoKXtyZXR1cm4gdGhpcy4jX31zZXQgY29udGVudFRhYkFjdGlvbnNMZWZ0KFgpe3RoaXMuI189WH0jVD0oYXQodGhpcyxvMSksYXQodGhpcyxDZSxbXSkpO2dldCBjb250ZW50VGFiQWN0aW9uc1JpZ2h0KCl7cmV0dXJuIHRoaXMuI1R9c2V0IGNvbnRlbnRUYWJBY3Rpb25zUmlnaHQoWCl7dGhpcy4jVD1YfSNMPShhdCh0aGlzLHZlKSxhdCh0aGlzLFRlLHZvaWQgMCkpO2dldCBhcHBiYXIoKXtyZXR1cm4gdGhpcy4jTH1zZXQgYXBwYmFyKFgpe3RoaXMuI0w9WH0jRD0oYXQodGhpcyxwZSksYXQodGhpcyxjZSx2b2lkIDApKTtnZXQgbWFpbm1lbnUoKXtyZXR1cm4gdGhpcy4jRH1zZXQgbWFpbm1lbnUoWCl7dGhpcy4jRD1YfSNBPShhdCh0aGlzLEspLGF0KHRoaXMsV2Usdm9pZCAwKSk7Z2V0IHNlY29uZGFyeW1lbnUoKXtyZXR1cm4gdGhpcy4jQX1zZXQgc2Vjb25kYXJ5bWVudShYKXt0aGlzLiNBPVh9I0U9KGF0KHRoaXMsVWUpLGF0KHRoaXMsUnIsdm9pZCAwKSk7Z2V0IG1haW5jb250ZW50KCl7cmV0dXJuIHRoaXMuI0V9c2V0IG1haW5jb250ZW50KFgpe3RoaXMuI0U9WH0jJD0oYXQodGhpcyxYYSksYXQodGhpcyx5bCx2b2lkIDApKTtnZXQgYWN0aXZpdHlsb2dFbGVtZW50KCl7cmV0dXJuIHRoaXMuIyR9c2V0IGFjdGl2aXR5bG9nRWxlbWVudChYKXt0aGlzLiMkPVh9I1A9KGF0KHRoaXMsd2wpLGF0KHRoaXMsc1gsdm9pZCAwKSk7Z2V0IGJvdHRvbWJhckVsZW1lbnQoKXtyZXR1cm4gdGhpcy4jUH1zZXQgYm90dG9tYmFyRWxlbWVudChYKXt0aGlzLiNQPVh9I0k9KGF0KHRoaXMsaDR0KSxhdCh0aGlzLGc0dCwhMCkpO2dldCBib3R0b21iYXJWaXNpYmxlKCl7cmV0dXJuIHRoaXMuI0l9c2V0IGJvdHRvbWJhclZpc2libGUoWCl7dGhpcy4jST1YfSNOPShhdCh0aGlzLHg0dCksYXQodGhpcyx2NHQsdm9pZCAwKSk7Z2V0IGN1cnJlbnRWaWV3KCl7cmV0dXJuIHRoaXMuI059c2V0IGN1cnJlbnRWaWV3KFgpe3RoaXMuI049WH12aWV3UmVnaXN0cnk9KGF0KHRoaXMseTR0KSxuZXcgUFopO3JvdXRlckNsZWFudXA9bnVsbDtzZWFyY2hDYWxsYmFjaz1udWxsO3N0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgLyogVE9ETzogTWlncmF0ZSBoYXJkY29kZWQgdmFsdWVzIHRvIC0tZGVlcy0qIENTUyB2YXJpYWJsZXMgKi8KICAgICAgOmhvc3QgewogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmMGYwZjAiLCIjMWExYTFhIil9OwogICAgICB9CiAgICAgIC5tYWluZ3JpZCB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHRvcDogNDBweDsKICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDQwcHggLSAyNHB4KTsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBkaXNwbGF5OiBncmlkOwogICAgICAgIC8qIGdyaWQtdGVtcGxhdGUtY29sdW1ucyBzZXQgZHluYW1pY2FsbHkgaW4gdGVtcGxhdGUgKi8KICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmcjsKICAgICAgICB0cmFuc2l0aW9uOiBncmlkLXRlbXBsYXRlLWNvbHVtbnMgMC4zcyBlYXNlLCBoZWlnaHQgMC4zcyBlYXNlOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgIH0KCiAgICAgIDpob3N0KFtib3R0b21iYXItaGlkZGVuXSkgLm1haW5ncmlkIHsKICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDQwcHgpOwogICAgICB9CgogICAgICBkZWVzLWFwcHVpLWJvdHRvbWJhciB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIGJvdHRvbTogMDsKICAgICAgICBsZWZ0OiAwOwogICAgICAgIHJpZ2h0OiAwOwogICAgICAgIHotaW5kZXg6IDQ7CiAgICAgIH0KCiAgICAgIC8qIFotaW5kZXggbGF5ZXJpbmcgZm9yIHByb3BlciBzdGFja2luZyAqLwogICAgICAubWFpbmdyaWQgPiBkZWVzLWFwcHVpLW1haW5tZW51IHsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgei1pbmRleDogMzsKICAgICAgICBtaW4taGVpZ2h0OiAwOwogICAgICB9CgogICAgICAubWFpbmdyaWQgPiBkZWVzLWFwcHVpLXNlY29uZGFyeW1lbnUgewogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICB6LWluZGV4OiAyOwogICAgICAgIG1pbi1oZWlnaHQ6IDA7CiAgICAgIH0KCiAgICAgIC5tYWluZ3JpZCA+IGRlZXMtYXBwdWktbWFpbmNvbnRlbnQgewogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICB6LWluZGV4OiAxOwogICAgICAgIG1pbi1oZWlnaHQ6IDA7CiAgICAgIH0KCiAgICAgIC5tYWluZ3JpZCA+IGRlZXMtYXBwdWktYWN0aXZpdHlsb2cgewogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICB6LWluZGV4OiAxOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UsIHRyYW5zZm9ybSAwLjNzIGVhc2U7CiAgICAgIH0KCiAgICAgIC5tYWluZ3JpZCA+IGRlZXMtYXBwdWktYWN0aXZpdHlsb2cuaGlkZGVuIHsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTsKICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAgICAgfQoKICAgICAgLm1haW5ncmlkID4gZGVlcy1hcHB1aS1hY3Rpdml0eWxvZy52aXNpYmxlIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsKICAgICAgfQoKICAgICAgLyogVmlldyBjb250YWluZXIgZm9yIGR5bmFtaWNhbGx5IGxvYWRlZCB2aWV3cyAqLwogICAgICAudmlldy1jb250YWluZXIgewogICAgICAgIGRpc3BsYXk6IGNvbnRlbnRzOwogICAgICB9CgogICAgICAudmlldy1jb250YWluZXI6ZW1wdHkgewogICAgICAgIGRpc3BsYXk6IG5vbmU7CiAgICAgIH0KICAgIGBdO3JlbmRlcigpe3JldHVybiBTYAogICAgICA8ZGVlcy1hcHB1aS1hcHBiYXIKICAgICAgICAubWVudUl0ZW1zPSR7dGhpcy5hcHBiYXJNZW51SXRlbXN9CiAgICAgICAgLmJyZWFkY3J1bWJzPSR7dGhpcy5hcHBiYXJCcmVhZGNydW1ic30KICAgICAgICAuYnJlYWRjcnVtYlNlcGFyYXRvcj0ke3RoaXMuYXBwYmFyQnJlYWRjcnVtYlNlcGFyYXRvcn0KICAgICAgICAuc2hvd1dpbmRvd0NvbnRyb2xzPSR7dGhpcy5hcHBiYXJTaG93V2luZG93Q29udHJvbHN9CiAgICAgICAgLnVzZXI9JHt0aGlzLmFwcGJhclVzZXJ9CiAgICAgICAgLnByb2ZpbGVNZW51SXRlbXM9JHt0aGlzLmFwcGJhclByb2ZpbGVNZW51SXRlbXN9CiAgICAgICAgLnNob3dTZWFyY2g9JHt0aGlzLmFwcGJhclNob3dTZWFyY2h9CiAgICAgICAgLnNob3dBY3Rpdml0eUxvZ1RvZ2dsZT0keyEwfQogICAgICAgIC5hY3Rpdml0eUxvZ0NvdW50PSR7dGhpcy5hY3Rpdml0eUxvZ0NvdW50fQogICAgICAgIC5hY3Rpdml0eUxvZ0FjdGl2ZT0ke3RoaXMuYWN0aXZpdHlMb2dWaXNpYmxlfQogICAgICAgIEBtZW51LXNlbGVjdD0ke1g9PnRoaXMuaGFuZGxlQXBwYmFyTWVudVNlbGVjdChYKX0KICAgICAgICBAYnJlYWRjcnVtYi1uYXZpZ2F0ZT0ke1g9PnRoaXMuaGFuZGxlQXBwYmFyQnJlYWRjcnVtYk5hdmlnYXRlKFgpfQogICAgICAgIEBzZWFyY2gtY2xpY2s9JHsoKT0+dGhpcy5oYW5kbGVBcHBiYXJTZWFyY2hDbGljaygpfQogICAgICAgIEBzZWFyY2gtcXVlcnk9JHtYPT50aGlzLmhhbmRsZUFwcGJhclNlYXJjaFF1ZXJ5KFgpfQogICAgICAgIEB1c2VyLW1lbnUtb3Blbj0keygpPT50aGlzLmhhbmRsZUFwcGJhclVzZXJNZW51T3BlbigpfQogICAgICAgIEBwcm9maWxlLW1lbnUtc2VsZWN0PSR7WD0+dGhpcy5oYW5kbGVBcHBiYXJQcm9maWxlTWVudVNlbGVjdChYKX0KICAgICAgICBAYWN0aXZpdHktdG9nZ2xlPSR7KCk9PnRoaXMudG9nZ2xlQWN0aXZpdHlMb2coKX0KICAgICAgPjwvZGVlcy1hcHB1aS1hcHBiYXI+CiAgICAgIDxkaXYgY2xhc3M9Im1haW5ncmlkIiBzdHlsZT0iZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIGF1dG8gMWZyICR7dGhpcy5hY3Rpdml0eUxvZ1Zpc2libGU/IjI4MHB4IjoiMHB4In07Ij4KICAgICAgICAke3RoaXMubWFpbm1lbnVWaXNpYmxlP1NgCiAgICAgICAgICA8ZGVlcy1hcHB1aS1tYWlubWVudQogICAgICAgICAgICAubG9nb0ljb249JHt0aGlzLm1haW5tZW51TG9nb0ljb259CiAgICAgICAgICAgIC5sb2dvVGV4dD0ke3RoaXMubWFpbm1lbnVMb2dvVGV4dH0KICAgICAgICAgICAgLm1lbnVHcm91cHM9JHt0aGlzLm1haW5tZW51R3JvdXBzfQogICAgICAgICAgICAuYm90dG9tVGFicz0ke3RoaXMubWFpbm1lbnVCb3R0b21UYWJzfQogICAgICAgICAgICAudGFicz0ke3RoaXMubWFpbm1lbnVUYWJzfQogICAgICAgICAgICAuc2VsZWN0ZWRUYWI9JHt0aGlzLm1haW5tZW51U2VsZWN0ZWRUYWJ9CiAgICAgICAgICAgIC5jb2xsYXBzZWQ9JHt0aGlzLm1haW5tZW51Q29sbGFwc2VkfQogICAgICAgICAgICBAdGFiLXNlbGVjdD0ke1g9PnRoaXMuaGFuZGxlTWFpbm1lbnVUYWJTZWxlY3QoWCl9CiAgICAgICAgICAgIEBjb2xsYXBzZS1jaGFuZ2U9JHtYPT50aGlzLmhhbmRsZU1haW5tZW51Q29sbGFwc2VDaGFuZ2UoWCl9CiAgICAgICAgICA+PC9kZWVzLWFwcHVpLW1haW5tZW51PgogICAgICAgIGA6IiJ9CiAgICAgICAgJHt0aGlzLnNlY29uZGFyeW1lbnVWaXNpYmxlP1NgCiAgICAgICAgICA8ZGVlcy1hcHB1aS1zZWNvbmRhcnltZW51CiAgICAgICAgICAgIC5oZWFkaW5nPSR7dGhpcy5zZWNvbmRhcnltZW51SGVhZGluZ30KICAgICAgICAgICAgLmdyb3Vwcz0ke3RoaXMuc2Vjb25kYXJ5bWVudUdyb3Vwc30KICAgICAgICAgICAgLnNlbGVjdGVkSXRlbT0ke3RoaXMuc2Vjb25kYXJ5bWVudVNlbGVjdGVkSXRlbX0KICAgICAgICAgICAgLmNvbGxhcHNlZD0ke3RoaXMuc2Vjb25kYXJ5bWVudUNvbGxhcHNlZH0KICAgICAgICAgICAgQGl0ZW0tc2VsZWN0PSR7WD0+dGhpcy5oYW5kbGVTZWNvbmRhcnltZW51SXRlbVNlbGVjdChYKX0KICAgICAgICAgICAgQGNvbGxhcHNlLWNoYW5nZT0ke1g9PnRoaXMuaGFuZGxlU2Vjb25kYXJ5bWVudUNvbGxhcHNlQ2hhbmdlKFgpfQogICAgICAgICAgPjwvZGVlcy1hcHB1aS1zZWNvbmRhcnltZW51PgogICAgICAgIGA6IiJ9CiAgICAgICAgPGRlZXMtYXBwdWktbWFpbmNvbnRlbnQKICAgICAgICAgIC50YWJzPSR7dGhpcy5tYWluY29udGVudFRhYnN9CiAgICAgICAgICAuc2VsZWN0ZWRUYWI9JHt0aGlzLm1haW5jb250ZW50U2VsZWN0ZWRUYWJ9CiAgICAgICAgICAuc2hvd1RhYnM9JHt0aGlzLm1haW5jb250ZW50VGFic1Zpc2libGV9CiAgICAgICAgICAudGFic0F1dG9IaWRlPSR7dGhpcy5jb250ZW50VGFic0F1dG9IaWRlfQogICAgICAgICAgLnRhYnNBdXRvSGlkZVRocmVzaG9sZD0ke3RoaXMuY29udGVudFRhYnNBdXRvSGlkZVRocmVzaG9sZH0KICAgICAgICAgIC50YWJBY3Rpb25zTGVmdD0ke3RoaXMuY29udGVudFRhYkFjdGlvbnNMZWZ0fQogICAgICAgICAgLnRhYkFjdGlvbnNSaWdodD0ke3RoaXMuY29udGVudFRhYkFjdGlvbnNSaWdodH0KICAgICAgICAgIEB0YWItc2VsZWN0PSR7WD0+dGhpcy5oYW5kbGVDb250ZW50VGFiU2VsZWN0KFgpfQogICAgICAgICAgQHRhYi1jbG9zZT0ke1g9PnRoaXMuaGFuZGxlQ29udGVudFRhYkNsb3NlKFgpfQogICAgICAgID4KICAgICAgICAgIDxkaXYgY2xhc3M9InZpZXctY29udGFpbmVyIj48L2Rpdj4KICAgICAgICAgIDxzbG90IG5hbWU9Im1haW5jb250ZW50Ij48L3Nsb3Q+CiAgICAgICAgPC9kZWVzLWFwcHVpLW1haW5jb250ZW50PgogICAgICAgIDxkZWVzLWFwcHVpLWFjdGl2aXR5bG9nCiAgICAgICAgICBjbGFzcz0iJHt0aGlzLmFjdGl2aXR5TG9nVmlzaWJsZT8idmlzaWJsZSI6ImhpZGRlbiJ9IgogICAgICAgID48L2RlZXMtYXBwdWktYWN0aXZpdHlsb2c+CiAgICAgIDwvZGl2PgogICAgICAke3RoaXMuYm90dG9tYmFyVmlzaWJsZT9TYAogICAgICAgIDxkZWVzLWFwcHVpLWJvdHRvbWJhcj48L2RlZXMtYXBwdWktYm90dG9tYmFyPgogICAgICBgOiIifQogICAgYH1hc3luYyBmaXJzdFVwZGF0ZWQoKXt0aGlzLmFwcGJhcj10aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcigiZGVlcy1hcHB1aS1hcHBiYXIiKSx0aGlzLm1haW5tZW51PXRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCJkZWVzLWFwcHVpLW1haW5tZW51IiksdGhpcy5zZWNvbmRhcnltZW51PXRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCJkZWVzLWFwcHVpLXNlY29uZGFyeW1lbnUiKSx0aGlzLm1haW5jb250ZW50PXRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCJkZWVzLWFwcHVpLW1haW5jb250ZW50IiksdGhpcy5hY3Rpdml0eWxvZ0VsZW1lbnQ9dGhpcy5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoImRlZXMtYXBwdWktYWN0aXZpdHlsb2ciKSx0aGlzLmJvdHRvbWJhckVsZW1lbnQ9dGhpcy5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoImRlZXMtYXBwdWktYm90dG9tYmFyIiksdGhpcy5hY3Rpdml0eWxvZ0VsZW1lbnQmJnRoaXMuYWN0aXZpdHlsb2dFbGVtZW50LmVudHJpZXMkLnN1YnNjcmliZShYPT57dGhpcy5hY3Rpdml0eUxvZ0NvdW50PVgubGVuZ3RofSksdGhpcy52aWV3UmVnaXN0cnkuc2V0QXBwdWlSZWYodGhpcyl9YXN5bmMgZGlzY29ubmVjdGVkQ2FsbGJhY2soKXthd2FpdCBzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpLHRoaXMucm91dGVyQ2xlYW51cCYmKHRoaXMucm91dGVyQ2xlYW51cCgpLHRoaXMucm91dGVyQ2xlYW51cD1udWxsKSx0aGlzLnZpZXdMaWZlY3ljbGUkLmNvbXBsZXRlKCksdGhpcy52aWV3Q2hhbmdlZCQuY29tcGxldGUoKX1zZXRBcHBCYXJNZW51cyhYKXt0aGlzLmFwcGJhck1lbnVJdGVtcz1bLi4uWF19dXBkYXRlQXBwQmFyTWVudShYLG9lKXt0aGlzLmFwcGJhck1lbnVJdGVtcz10aGlzLmFwcGJhck1lbnVJdGVtcy5tYXAoSWU9PiJuYW1lImluIEllJiZJZS5uYW1lPT09WD97Li4uSWUsLi4ub2V9OkllKX1zZXRCcmVhZGNydW1icyhYKXtBcnJheS5pc0FycmF5KFgpP3RoaXMuYXBwYmFyQnJlYWRjcnVtYnM9WC5qb2luKHRoaXMuYXBwYmFyQnJlYWRjcnVtYlNlcGFyYXRvcik6dGhpcy5hcHBiYXJCcmVhZGNydW1icz1YfXNldFVzZXIoWCl7dGhpcy5hcHBiYXJVc2VyPVh9c2V0UHJvZmlsZU1lbnVJdGVtcyhYKXt0aGlzLmFwcGJhclByb2ZpbGVNZW51SXRlbXM9Wy4uLlhdfXNldFNlYXJjaFZpc2libGUoWCl7dGhpcy5hcHBiYXJTaG93U2VhcmNoPVh9c2V0V2luZG93Q29udHJvbHNWaXNpYmxlKFgpe3RoaXMuYXBwYmFyU2hvd1dpbmRvd0NvbnRyb2xzPVh9b25TZWFyY2goWCl7dGhpcy5zZWFyY2hDYWxsYmFjaz1YfXNldE1haW5NZW51KFgpe1gubG9nb0ljb24hPT12b2lkIDAmJih0aGlzLm1haW5tZW51TG9nb0ljb249WC5sb2dvSWNvbiksWC5sb2dvVGV4dCE9PXZvaWQgMCYmKHRoaXMubWFpbm1lbnVMb2dvVGV4dD1YLmxvZ29UZXh0KSxYLmdyb3VwcyE9PXZvaWQgMCYmKHRoaXMubWFpbm1lbnVHcm91cHM9Wy4uLlguZ3JvdXBzXSksWC5ib3R0b21UYWJzIT09dm9pZCAwJiYodGhpcy5tYWlubWVudUJvdHRvbVRhYnM9Wy4uLlguYm90dG9tVGFic10pfXVwZGF0ZU1haW5NZW51R3JvdXAoWCxvZSl7dGhpcy5tYWlubWVudUdyb3Vwcz10aGlzLm1haW5tZW51R3JvdXBzLm1hcChJZT0+SWUubmFtZT09PVg/ey4uLkllLC4uLm9lfTpJZSl9YWRkTWFpbk1lbnVJdGVtKFgsb2Upe3RoaXMubWFpbm1lbnVHcm91cHM9dGhpcy5tYWlubWVudUdyb3Vwcy5tYXAoSWU9PkllLm5hbWU9PT1YP3suLi5JZSxpdGVtczpbLi4uSWUuaXRlbXN8fFtdLG9lXX06SWUpfXJlbW92ZU1haW5NZW51SXRlbShYLG9lKXt0aGlzLm1haW5tZW51R3JvdXBzPXRoaXMubWFpbm1lbnVHcm91cHMubWFwKEllPT5JZS5uYW1lPT09WD97Li4uSWUsaXRlbXM6KEllLml0ZW1zfHxbXSkuZmlsdGVyKFRyPT5Uci5rZXkhPT1vZSl9OkllKX1zZXRNYWluTWVudVNlbGVjdGlvbihYKXtmb3IobGV0IEllIG9mIHRoaXMubWFpbm1lbnVHcm91cHMpe2xldCBUcj1JZS5pdGVtcz8uZmluZChzMT0+czEua2V5PT09WCk7aWYoVHIpe3RoaXMubWFpbm1lbnVTZWxlY3RlZFRhYj1UcjtyZXR1cm59fWxldCBvZT10aGlzLm1haW5tZW51Qm90dG9tVGFicy5maW5kKEllPT5JZS5rZXk9PT1YKTtvZSYmKHRoaXMubWFpbm1lbnVTZWxlY3RlZFRhYj1vZSl9c2V0TWFpbk1lbnVDb2xsYXBzZWQoWCl7dGhpcy5tYWlubWVudUNvbGxhcHNlZD1YfXNldE1haW5NZW51VmlzaWJsZShYKXt0aGlzLm1haW5tZW51VmlzaWJsZT1YfXNldFNlY29uZGFyeU1lbnVDb2xsYXBzZWQoWCl7dGhpcy5zZWNvbmRhcnltZW51Q29sbGFwc2VkPVh9c2V0U2Vjb25kYXJ5TWVudVZpc2libGUoWCl7dGhpcy5zZWNvbmRhcnltZW51VmlzaWJsZT1YfXNldENvbnRlbnRUYWJzVmlzaWJsZShYKXt0aGlzLm1haW5jb250ZW50VGFic1Zpc2libGU9WH1zZXRDb250ZW50VGFic0F1dG9IaWRlKFgsb2U9MCl7dGhpcy5jb250ZW50VGFic0F1dG9IaWRlPVgsdGhpcy5jb250ZW50VGFic0F1dG9IaWRlVGhyZXNob2xkPW9lfXNldE1haW5NZW51QmFkZ2UoWCxvZSl7dGhpcy5tYWlubWVudUdyb3Vwcz10aGlzLm1haW5tZW51R3JvdXBzLm1hcChJZT0+KHsuLi5JZSxpdGVtczooSWUuaXRlbXN8fFtdKS5tYXAoVHI9PlRyLmtleT09PVg/ey4uLlRyLGJhZGdlOm9lfTpUcil9KSksdGhpcy5tYWlubWVudUJvdHRvbVRhYnM9dGhpcy5tYWlubWVudUJvdHRvbVRhYnMubWFwKEllPT5JZS5rZXk9PT1YP3suLi5JZSxiYWRnZTpvZX06SWUpfWNsZWFyTWFpbk1lbnVCYWRnZShYKXt0aGlzLm1haW5tZW51R3JvdXBzPXRoaXMubWFpbm1lbnVHcm91cHMubWFwKG9lPT4oey4uLm9lLGl0ZW1zOihvZS5pdGVtc3x8W10pLm1hcChJZT0+e2lmKEllLmtleT09PVgpe2xldHtiYWRnZTpUciwuLi5zMX09SWU7cmV0dXJuIHMxfXJldHVybiBJZX0pfSkpLHRoaXMubWFpbm1lbnVCb3R0b21UYWJzPXRoaXMubWFpbm1lbnVCb3R0b21UYWJzLm1hcChvZT0+e2lmKG9lLmtleT09PVgpe2xldHtiYWRnZTpJZSwuLi5Ucn09b2U7cmV0dXJuIFRyfXJldHVybiBvZX0pfXNldFNlY29uZGFyeU1lbnUoWCl7WC5oZWFkaW5nIT09dm9pZCAwJiYodGhpcy5zZWNvbmRhcnltZW51SGVhZGluZz1YLmhlYWRpbmcpLHRoaXMuc2Vjb25kYXJ5bWVudUdyb3Vwcz1bLi4uWC5ncm91cHNdfXVwZGF0ZVNlY29uZGFyeU1lbnVHcm91cChYLG9lKXt0aGlzLnNlY29uZGFyeW1lbnVHcm91cHM9dGhpcy5zZWNvbmRhcnltZW51R3JvdXBzLm1hcChJZT0+SWUubmFtZT09PVg/ey4uLkllLC4uLm9lfTpJZSl9YWRkU2Vjb25kYXJ5TWVudUl0ZW0oWCxvZSl7dGhpcy5zZWNvbmRhcnltZW51R3JvdXBzPXRoaXMuc2Vjb25kYXJ5bWVudUdyb3Vwcy5tYXAoSWU9PkllLm5hbWU9PT1YP3suLi5JZSxpdGVtczpbLi4uSWUuaXRlbXMsb2VdfTpJZSl9c2V0U2Vjb25kYXJ5TWVudVNlbGVjdGlvbihYKXtmb3IobGV0IG9lIG9mIHRoaXMuc2Vjb25kYXJ5bWVudUdyb3Vwcyl7bGV0IEllPW9lLml0ZW1zLmZpbmQoVHI9PiJrZXkiaW4gVHImJlRyLmtleT09PVgpO2lmKEllJiYoISgidHlwZSJpbiBJZSl8fEllLnR5cGU9PT0idGFiInx8SWUudHlwZT09PXZvaWQgMCkpe3RoaXMuc2Vjb25kYXJ5bWVudVNlbGVjdGVkSXRlbT1JZTtyZXR1cm59fX1jbGVhclNlY29uZGFyeU1lbnUoKXt0aGlzLnNlY29uZGFyeW1lbnVIZWFkaW5nPSIiLHRoaXMuc2Vjb25kYXJ5bWVudUdyb3Vwcz1bXSx0aGlzLnNlY29uZGFyeW1lbnVTZWxlY3RlZEl0ZW09dm9pZCAwfXNldENvbnRlbnRUYWJzKFgpe3RoaXMubWFpbmNvbnRlbnRUYWJzPVsuLi5YXSxYLmxlbmd0aD4wJiYhdGhpcy5tYWluY29udGVudFNlbGVjdGVkVGFiJiYodGhpcy5tYWluY29udGVudFNlbGVjdGVkVGFiPVhbMF0pfWFkZENvbnRlbnRUYWIoWCl7dGhpcy5tYWluY29udGVudFRhYnM9Wy4uLnRoaXMubWFpbmNvbnRlbnRUYWJzLFhdfXJlbW92ZUNvbnRlbnRUYWIoWCl7dGhpcy5tYWluY29udGVudFRhYnM9dGhpcy5tYWluY29udGVudFRhYnMuZmlsdGVyKG9lPT5vZS5rZXkhPT1YKSx0aGlzLm1haW5jb250ZW50U2VsZWN0ZWRUYWI/LmtleT09PVgmJih0aGlzLm1haW5jb250ZW50U2VsZWN0ZWRUYWI9dGhpcy5tYWluY29udGVudFRhYnNbMF0pfXNlbGVjdENvbnRlbnRUYWIoWCl7bGV0IG9lPXRoaXMubWFpbmNvbnRlbnRUYWJzLmZpbmQoSWU9PkllLmtleT09PVgpO29lJiYodGhpcy5tYWluY29udGVudFNlbGVjdGVkVGFiPW9lKX1nZXRTZWxlY3RlZENvbnRlbnRUYWIoKXtyZXR1cm4gdGhpcy5tYWluY29udGVudFNlbGVjdGVkVGFifXNldENvbnRlbnRUYWJBY3Rpb25zTGVmdChYKXt0aGlzLmNvbnRlbnRUYWJBY3Rpb25zTGVmdD1bLi4uWF19c2V0Q29udGVudFRhYkFjdGlvbnNSaWdodChYKXt0aGlzLmNvbnRlbnRUYWJBY3Rpb25zUmlnaHQ9Wy4uLlhdfWdldCBhY3Rpdml0eUxvZygpe3JldHVybiB0aGlzLmFjdGl2aXR5bG9nRWxlbWVudD97YWRkOlg9PnRoaXMuYWN0aXZpdHlsb2dFbGVtZW50LmFkZChYKSxhZGRNYW55Olg9PnRoaXMuYWN0aXZpdHlsb2dFbGVtZW50LmFkZE1hbnkoWCksY2xlYXI6KCk9PnRoaXMuYWN0aXZpdHlsb2dFbGVtZW50LmNsZWFyKCksZ2V0RW50cmllczooKT0+dGhpcy5hY3Rpdml0eWxvZ0VsZW1lbnQuZ2V0RW50cmllcygpLGZpbHRlcjpYPT50aGlzLmFjdGl2aXR5bG9nRWxlbWVudC5maWx0ZXIoWCksc2VhcmNoOlg9PnRoaXMuYWN0aXZpdHlsb2dFbGVtZW50LnNlYXJjaChYKX06e2FkZDpYPT57dGhpcy51cGRhdGVDb21wbGV0ZS50aGVuKCgpPT50aGlzLmFjdGl2aXR5bG9nRWxlbWVudD8uYWRkKFgpKX0sYWRkTWFueTpYPT57dGhpcy51cGRhdGVDb21wbGV0ZS50aGVuKCgpPT50aGlzLmFjdGl2aXR5bG9nRWxlbWVudD8uYWRkTWFueShYKSl9LGNsZWFyOigpPT57dGhpcy51cGRhdGVDb21wbGV0ZS50aGVuKCgpPT50aGlzLmFjdGl2aXR5bG9nRWxlbWVudD8uY2xlYXIoKSl9LGdldEVudHJpZXM6KCk9PnRoaXMuYWN0aXZpdHlsb2dFbGVtZW50Py5nZXRFbnRyaWVzKCl8fFtdLGZpbHRlcjpYPT50aGlzLmFjdGl2aXR5bG9nRWxlbWVudD8uZmlsdGVyKFgpfHxbXSxzZWFyY2g6WD0+dGhpcy5hY3Rpdml0eWxvZ0VsZW1lbnQ/LnNlYXJjaChYKXx8W119fXNldEFjdGl2aXR5TG9nVmlzaWJsZShYKXt0aGlzLmFjdGl2aXR5TG9nVmlzaWJsZT1YfXRvZ2dsZUFjdGl2aXR5TG9nKCl7dGhpcy5hY3Rpdml0eUxvZ1Zpc2libGU9IXRoaXMuYWN0aXZpdHlMb2dWaXNpYmxlfWdldEFjdGl2aXR5TG9nVmlzaWJsZSgpe3JldHVybiB0aGlzLmFjdGl2aXR5TG9nVmlzaWJsZX1nZXQgYm90dG9tQmFyKCl7cmV0dXJuIHRoaXMuYm90dG9tYmFyRWxlbWVudD97YWRkV2lkZ2V0Olg9PnRoaXMuYm90dG9tYmFyRWxlbWVudC5hZGRXaWRnZXQoWCksdXBkYXRlV2lkZ2V0OihYLG9lKT0+dGhpcy5ib3R0b21iYXJFbGVtZW50LnVwZGF0ZVdpZGdldChYLG9lKSxyZW1vdmVXaWRnZXQ6WD0+dGhpcy5ib3R0b21iYXJFbGVtZW50LnJlbW92ZVdpZGdldChYKSxnZXRXaWRnZXQ6WD0+dGhpcy5ib3R0b21iYXJFbGVtZW50LmdldFdpZGdldChYKSxjbGVhcldpZGdldHM6KCk9PnRoaXMuYm90dG9tYmFyRWxlbWVudC5jbGVhcldpZGdldHMoKSxhZGRBY3Rpb246WD0+dGhpcy5ib3R0b21iYXJFbGVtZW50LmFkZEFjdGlvbihYKSxyZW1vdmVBY3Rpb246WD0+dGhpcy5ib3R0b21iYXJFbGVtZW50LnJlbW92ZUFjdGlvbihYKSxjbGVhckFjdGlvbnM6KCk9PnRoaXMuYm90dG9tYmFyRWxlbWVudC5jbGVhckFjdGlvbnMoKX06e2FkZFdpZGdldDpYPT57dGhpcy51cGRhdGVDb21wbGV0ZS50aGVuKCgpPT50aGlzLmJvdHRvbWJhckVsZW1lbnQ/LmFkZFdpZGdldChYKSl9LHVwZGF0ZVdpZGdldDooWCxvZSk9Pnt0aGlzLnVwZGF0ZUNvbXBsZXRlLnRoZW4oKCk9PnRoaXMuYm90dG9tYmFyRWxlbWVudD8udXBkYXRlV2lkZ2V0KFgsb2UpKX0scmVtb3ZlV2lkZ2V0Olg9Pnt0aGlzLnVwZGF0ZUNvbXBsZXRlLnRoZW4oKCk9PnRoaXMuYm90dG9tYmFyRWxlbWVudD8ucmVtb3ZlV2lkZ2V0KFgpKX0sZ2V0V2lkZ2V0Olg9PnRoaXMuYm90dG9tYmFyRWxlbWVudD8uZ2V0V2lkZ2V0KFgpLGNsZWFyV2lkZ2V0czooKT0+e3RoaXMudXBkYXRlQ29tcGxldGUudGhlbigoKT0+dGhpcy5ib3R0b21iYXJFbGVtZW50Py5jbGVhcldpZGdldHMoKSl9LGFkZEFjdGlvbjpYPT57dGhpcy51cGRhdGVDb21wbGV0ZS50aGVuKCgpPT50aGlzLmJvdHRvbWJhckVsZW1lbnQ/LmFkZEFjdGlvbihYKSl9LHJlbW92ZUFjdGlvbjpYPT57dGhpcy51cGRhdGVDb21wbGV0ZS50aGVuKCgpPT50aGlzLmJvdHRvbWJhckVsZW1lbnQ/LnJlbW92ZUFjdGlvbihYKSl9LGNsZWFyQWN0aW9uczooKT0+e3RoaXMudXBkYXRlQ29tcGxldGUudGhlbigoKT0+dGhpcy5ib3R0b21iYXJFbGVtZW50Py5jbGVhckFjdGlvbnMoKSl9fX1zZXRCb3R0b21CYXJWaXNpYmxlKFgpe3RoaXMuYm90dG9tYmFyVmlzaWJsZT1YLFg/dGhpcy5yZW1vdmVBdHRyaWJ1dGUoImJvdHRvbWJhci1oaWRkZW4iKTp0aGlzLnNldEF0dHJpYnV0ZSgiYm90dG9tYmFyLWhpZGRlbiIsIiIpfWdldEJvdHRvbUJhclZpc2libGUoKXtyZXR1cm4gdGhpcy5ib3R0b21iYXJWaXNpYmxlfWFzeW5jIG5hdmlnYXRlVG9WaWV3KFgsb2Upe2xldCBJZT10aGlzLnZpZXdSZWdpc3RyeS5nZXQoWCk7aWYoIUllKXJldHVybiBjb25zb2xlLndhcm4oYENhbm5vdCBuYXZpZ2F0ZSB0byB1bmtub3duIHZpZXc6ICR7WH1gKSwhMTtsZXQgVHI9YXdhaXQgdGhpcy52aWV3UmVnaXN0cnkuY2FuTGVhdmVDdXJyZW50VmlldygpO2lmKFRyIT09ITApaWYodHlwZW9mIFRyPT0ic3RyaW5nIil7aWYoIXdpbmRvdy5jb25maXJtKFRyKSlyZXR1cm4hMX1lbHNlIHJldHVybiExO3RoaXMudmlld0xpZmVjeWNsZSQubmV4dCh7dHlwZToibG9hZGluZyIsdmlld0lkOlh9KTt0cnl7YXdhaXQgdGhpcy5sb2FkVmlldyhJZSxvZSk7bGV0IHMxPUllLnJvdXRlfHxYO2lmKG9lKWZvcihsZXRbUEhyLElIcl1vZiBPYmplY3QuZW50cmllcyhvZSkpczE9czEucmVwbGFjZShgOiR7UEhyfWAsSUhyKTtsZXQgbWc9YCMke3MxfWA7cmV0dXJuIHdpbmRvdy5sb2NhdGlvbi5oYXNoIT09bWcmJndpbmRvdy5oaXN0b3J5LnB1c2hTdGF0ZSh7dmlld0lkOlh9LCIiLG1nKSwhMH1jYXRjaChzMSl7cmV0dXJuIHRoaXMudmlld0xpZmVjeWNsZSQubmV4dCh7dHlwZToibG9hZEVycm9yIix2aWV3SWQ6WCxlcnJvcjpzMX0pLCExfX1nZXRDdXJyZW50Vmlldygpe3JldHVybiB0aGlzLmN1cnJlbnRWaWV3fWdldFZpZXdSZWdpc3RyeSgpe3JldHVybiB0aGlzLnZpZXdSZWdpc3RyeX1jb25maWd1cmUoWCl7WC52aWV3cyYmKHRoaXMudmlld1JlZ2lzdHJ5LmNsZWFyKCksdGhpcy52aWV3UmVnaXN0cnkucmVnaXN0ZXJBbGwoWC52aWV3cykpLFguYnJhbmRpbmcmJih0aGlzLm1haW5tZW51TG9nb0ljb249WC5icmFuZGluZy5sb2dvSWNvbnx8IiIsdGhpcy5tYWlubWVudUxvZ29UZXh0PVguYnJhbmRpbmcubG9nb1RleHR8fCIiKSxYLmFwcEJhciYmKHRoaXMuYXBwYmFyTWVudUl0ZW1zPVguYXBwQmFyLm1lbnVJdGVtc3x8W10sdGhpcy5hcHBiYXJCcmVhZGNydW1icz1YLmFwcEJhci5icmVhZGNydW1ic3x8IiIsdGhpcy5hcHBiYXJCcmVhZGNydW1iU2VwYXJhdG9yPVguYXBwQmFyLmJyZWFkY3J1bWJTZXBhcmF0b3J8fCIgPiAiLHRoaXMuYXBwYmFyU2hvd1dpbmRvd0NvbnRyb2xzPVguYXBwQmFyLnNob3dXaW5kb3dDb250cm9scz8/ITAsdGhpcy5hcHBiYXJTaG93U2VhcmNoPVguYXBwQmFyLnNob3dTZWFyY2g/PyExLHRoaXMuYXBwYmFyVXNlcj1YLmFwcEJhci51c2VyLHRoaXMuYXBwYmFyUHJvZmlsZU1lbnVJdGVtcz1YLmFwcEJhci5wcm9maWxlTWVudUl0ZW1zfHxbXSksWC5tYWluTWVudSYmKFgubWFpbk1lbnUuc2VjdGlvbnM/dGhpcy5tYWlubWVudUdyb3Vwcz10aGlzLmJ1aWxkTWFpbk1lbnVGcm9tU2VjdGlvbnMoWCk6WC5tYWluTWVudS5ncm91cHMmJih0aGlzLm1haW5tZW51R3JvdXBzPVgubWFpbk1lbnUuZ3JvdXBzKSxYLm1haW5NZW51LmxvZ29JY29uJiYodGhpcy5tYWlubWVudUxvZ29JY29uPVgubWFpbk1lbnUubG9nb0ljb24pLFgubWFpbk1lbnUubG9nb1RleHQmJih0aGlzLm1haW5tZW51TG9nb1RleHQ9WC5tYWluTWVudS5sb2dvVGV4dCksWC5tYWluTWVudS5ib3R0b21UYWJzP3RoaXMubWFpbm1lbnVCb3R0b21UYWJzPVgubWFpbk1lbnUuYm90dG9tVGFiczpYLm1haW5NZW51LmJvdHRvbUl0ZW1zJiYodGhpcy5tYWlubWVudUJvdHRvbVRhYnM9dGhpcy5idWlsZEJvdHRvbVRhYnNGcm9tSXRlbXMoWC5tYWluTWVudS5ib3R0b21JdGVtcykpKSxYLmJvdHRvbUJhciYmKHRoaXMuc2V0Qm90dG9tQmFyVmlzaWJsZShYLmJvdHRvbUJhci52aXNpYmxlPz8hMCksWC5ib3R0b21CYXIud2lkZ2V0cyYmWC5ib3R0b21CYXIud2lkZ2V0cy5mb3JFYWNoKG9lPT57dGhpcy5ib3R0b21CYXIuYWRkV2lkZ2V0KG9lKX0pLFguYm90dG9tQmFyLmFjdGlvbnMmJlguYm90dG9tQmFyLmFjdGlvbnMuZm9yRWFjaChvZT0+e3RoaXMuYm90dG9tQmFyLmFkZEFjdGlvbihvZSl9KSksdGhpcy5zZXR1cFJvdXRlckludGVncmF0aW9uKFgpLFgub25WaWV3Q2hhbmdlJiZ0aGlzLnZpZXdDaGFuZ2VkJC5zdWJzY3JpYmUob2U9PntYLm9uVmlld0NoYW5nZShvZS52aWV3SWQsb2Uudmlldyl9KSxYLm9uU2VhcmNoJiYodGhpcy5zZWFyY2hDYWxsYmFjaz1YLm9uU2VhcmNoKSxYLmRlZmF1bHRWaWV3JiZ0aGlzLm5hdmlnYXRlVG9WaWV3KFguZGVmYXVsdFZpZXcpfXNldHVwUm91dGVySW50ZWdyYXRpb24oWCl7bGV0IG9lPSgpPT57bGV0IFRyPXdpbmRvdy5sb2NhdGlvbi5oYXNoLnNsaWNlKDEpO2lmKCFUcilyZXR1cm47bGV0IHMxPXRoaXMudmlld1JlZ2lzdHJ5LmZpbmRCeVJvdXRlKFRyKTtzMSYmdGhpcy5uYXZpZ2F0ZVRvVmlldyhzMS52aWV3LmlkLHMxLnBhcmFtcyl9O3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJoYXNoY2hhbmdlIixvZSksdGhpcy5yb3V0ZXJDbGVhbnVwPSgpPT57d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoImhhc2hjaGFuZ2UiLG9lKX07bGV0IEllPXdpbmRvdy5sb2NhdGlvbi5oYXNoLnNsaWNlKDEpO2lmKEllKXtsZXQgVHI9dGhpcy52aWV3UmVnaXN0cnkuZmluZEJ5Um91dGUoSWUpO1RyJiZzZXRUaW1lb3V0KCgpPT50aGlzLm5hdmlnYXRlVG9WaWV3KFRyLnZpZXcuaWQsVHIucGFyYW1zKSwwKX19YnVpbGRNYWluTWVudUZyb21TZWN0aW9ucyhYKXtyZXR1cm4gWC5tYWluTWVudT8uc2VjdGlvbnM/WC5tYWluTWVudS5zZWN0aW9ucy5tYXAob2U9Pih7bmFtZTpvZS5uYW1lLGl0ZW1zOm9lLnZpZXdzLm1hcChJZT0+e2xldCBUcj10aGlzLnZpZXdSZWdpc3RyeS5nZXQoSWUpO3JldHVybiBUcj97a2V5OlRyLmlkLGljb25OYW1lOlRyLmljb25OYW1lLGFjdGlvbjooKT0+dGhpcy5uYXZpZ2F0ZVRvVmlldyhJZSksYmFkZ2U6VHIuYmFkZ2V9Oihjb25zb2xlLndhcm4oYFZpZXcgIiR7SWV9IiBub3QgZm91bmQgaW4gcmVnaXN0cnlgKSxudWxsKX0pLmZpbHRlcihCb29sZWFuKX0pKTpbXX1idWlsZEJvdHRvbVRhYnNGcm9tSXRlbXMoWCl7cmV0dXJuIFgubWFwKG9lPT57bGV0IEllPXRoaXMudmlld1JlZ2lzdHJ5LmdldChvZSk7cmV0dXJuIEllP3trZXk6SWUuaWQsaWNvbk5hbWU6SWUuaWNvbk5hbWUsYWN0aW9uOigpPT50aGlzLm5hdmlnYXRlVG9WaWV3KG9lKX06KGNvbnNvbGUud2FybihgVmlldyAiJHtvZX0iIG5vdCBmb3VuZCBpbiByZWdpc3RyeWApLG51bGwpfSkuZmlsdGVyKEJvb2xlYW4pfWFzeW5jIGxvYWRWaWV3KFgsb2Upe2xldCBJZT10aGlzLmN1cnJlbnRWaWV3O3RoaXMuY3VycmVudFZpZXc9WDtsZXQgVHI9dGhpcy5tYWluY29udGVudD8ucXVlcnlTZWxlY3RvcigiLnZpZXctY29udGFpbmVyIil8fHRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiLnZpZXctY29udGFpbmVyIik7aWYoVHIpe2xldCBtZz1hd2FpdCB0aGlzLnZpZXdSZWdpc3RyeS5hY3RpdmF0ZVZpZXcoWC5pZCxUcixvZSk7bWcmJnRoaXMudmlld0xpZmVjeWNsZSQubmV4dCh7dHlwZToiYWN0aXZhdGVkIix2aWV3SWQ6WC5pZCxlbGVtZW50Om1nLHBhcmFtczpvZX0pfVguc2Vjb25kYXJ5TWVudSYmKHRoaXMuc2Vjb25kYXJ5bWVudUdyb3Vwcz1YLnNlY29uZGFyeU1lbnUsdGhpcy5zZWNvbmRhcnltZW51SGVhZGluZz1YLm5hbWUpLFguY29udGVudFRhYnMmJih0aGlzLm1haW5jb250ZW50VGFicz1YLmNvbnRlbnRUYWJzKSx0aGlzLnNldE1haW5NZW51U2VsZWN0aW9uKFguaWQpO2xldCBzMT17dmlld0lkOlguaWQsdmlldzpYLHByZXZpb3VzVmlldzpJZSxwYXJhbXM6b2V9O3RoaXMudmlld0NoYW5nZWQkLm5leHQoczEpLHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoInZpZXctY2hhbmdlIix7ZGV0YWlsOnMxLGJ1YmJsZXM6ITAsY29tcG9zZWQ6ITB9KSl9aGFuZGxlQXBwYmFyTWVudVNlbGVjdChYKXt0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJhcHBiYXItbWVudS1zZWxlY3QiLHtkZXRhaWw6WC5kZXRhaWwsYnViYmxlczohMCxjb21wb3NlZDohMH0pKX1oYW5kbGVBcHBiYXJCcmVhZGNydW1iTmF2aWdhdGUoWCl7dGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgiYXBwYmFyLWJyZWFkY3J1bWItbmF2aWdhdGUiLHtkZXRhaWw6WC5kZXRhaWwsYnViYmxlczohMCxjb21wb3NlZDohMH0pKX1oYW5kbGVBcHBiYXJTZWFyY2hDbGljaygpe3RoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoImFwcGJhci1zZWFyY2gtY2xpY2siLHtidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpfWhhbmRsZUFwcGJhclNlYXJjaFF1ZXJ5KFgpe3RoaXMuc2VhcmNoQ2FsbGJhY2smJnRoaXMuc2VhcmNoQ2FsbGJhY2soWC5kZXRhaWwucXVlcnkpLHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoInNlYXJjaC1xdWVyeSIse2RldGFpbDpYLmRldGFpbCxidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpfWhhbmRsZUFwcGJhclVzZXJNZW51T3Blbigpe3RoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoImFwcGJhci11c2VyLW1lbnUtb3BlbiIse2J1YmJsZXM6ITAsY29tcG9zZWQ6ITB9KSl9aGFuZGxlQXBwYmFyUHJvZmlsZU1lbnVTZWxlY3QoWCl7dGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgiYXBwYmFyLXByb2ZpbGUtbWVudS1zZWxlY3QiLHtkZXRhaWw6WC5kZXRhaWwsYnViYmxlczohMCxjb21wb3NlZDohMH0pKX1oYW5kbGVNYWlubWVudVRhYlNlbGVjdChYKXt0aGlzLm1haW5tZW51U2VsZWN0ZWRUYWI9WC5kZXRhaWwudGFiLHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoIm1haW5tZW51LXRhYi1zZWxlY3QiLHtkZXRhaWw6WC5kZXRhaWwsYnViYmxlczohMCxjb21wb3NlZDohMH0pKX1oYW5kbGVTZWNvbmRhcnltZW51SXRlbVNlbGVjdChYKXt0aGlzLnNlY29uZGFyeW1lbnVTZWxlY3RlZEl0ZW09WC5kZXRhaWwuaXRlbSx0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJzZWNvbmRhcnltZW51LWl0ZW0tc2VsZWN0Iix7ZGV0YWlsOlguZGV0YWlsLGJ1YmJsZXM6ITAsY29tcG9zZWQ6ITB9KSl9aGFuZGxlTWFpbm1lbnVDb2xsYXBzZUNoYW5nZShYKXt0aGlzLm1haW5tZW51Q29sbGFwc2VkPVguZGV0YWlsLmNvbGxhcHNlZCx0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJtYWlubWVudS1jb2xsYXBzZS1jaGFuZ2UiLHtkZXRhaWw6WC5kZXRhaWwsYnViYmxlczohMCxjb21wb3NlZDohMH0pKX1oYW5kbGVTZWNvbmRhcnltZW51Q29sbGFwc2VDaGFuZ2UoWCl7dGhpcy5zZWNvbmRhcnltZW51Q29sbGFwc2VkPVguZGV0YWlsLmNvbGxhcHNlZCx0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJzZWNvbmRhcnltZW51LWNvbGxhcHNlLWNoYW5nZSIse2RldGFpbDpYLmRldGFpbCxidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpfWhhbmRsZUNvbnRlbnRUYWJTZWxlY3QoWCl7dGhpcy5tYWluY29udGVudFNlbGVjdGVkVGFiPVguZGV0YWlsLnRhYix0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJjb250ZW50LXRhYi1zZWxlY3QiLHtkZXRhaWw6WC5kZXRhaWwsYnViYmxlczohMCxjb21wb3NlZDohMH0pKX1oYW5kbGVDb250ZW50VGFiQ2xvc2UoWCl7dGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgiY29udGVudC10YWItY2xvc2UiLHtkZXRhaWw6WC5kZXRhaWwsYnViYmxlczohMCxjb21wb3NlZDohMH0pKX1zdGF0aWN7YXQoYSxyKX19O3JldHVybiB3NHQ9YX0pKCl9KTt2YXIgUFByPWwoKCk9PnskUHIoKTtUY3QoKX0pO3ZhciBJUHI9bCgoKT0+e0VjdCgpfSk7dmFyIE5Qcj1sKCgpPT57TGN0KCl9KTt2YXIgRlByPWwoKCk9PntEY3QoKX0pO3ZhciBPUHI9bCgoKT0+e09sdCgpfSk7dmFyIFJQcj1sKCgpPT57QWN0KCl9KTt2YXIgcmNlLE84LEJQcixIUHI9bCgoKT0+e09pKCk7VG4oKTt1bygpO1NlKCk7a2MoKTticigpO290KCk7cmNlPWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sTzg9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LEJQcj0oKCk9PntsZXQgZT1bemUoImRlZXMtbW9iaWxlbmF2aWdhdGlvbiIpXSx0LHI9W10sYSxpPURlLG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdLHUscD1bXSxoPVtdO3ZhciBiPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgeD10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHt0eXBlOlN0cmluZ30pXSxjPVtqKHt0eXBlOkFycmF5fSldLHU9W3JlKCldLHJjZSh0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImhlYWRpbmciLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmc9PiJoZWFkaW5nImluIGcsZ2V0Omc9PmcuaGVhZGluZyxzZXQ6KGcsdik9PntnLmhlYWRpbmc9dn19LG1ldGFkYXRhOnh9LG4scykscmNlKHRoaXMsbnVsbCxjLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibWVudUl0ZW1zIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpnPT4ibWVudUl0ZW1zImluIGcsZ2V0Omc9PmcubWVudUl0ZW1zLHNldDooZyx2KT0+e2cubWVudUl0ZW1zPXZ9fSxtZXRhZGF0YTp4fSxkLGYpLHJjZSh0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im1vYmlsZU5hdlpJbmRleCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Zz0+Im1vYmlsZU5hdlpJbmRleCJpbiBnLGdldDpnPT5nLm1vYmlsZU5hdlpJbmRleCxzZXQ6KGcsdik9PntnLm1vYmlsZU5hdlpJbmRleD12fX0sbWV0YWRhdGE6eH0scCxoKSxyY2UobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6eH0sbnVsbCxyKSxiPWE9dC52YWx1ZSx4JiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnh9KX1zdGF0aWMgZGVtb0dyb3Vwcz1bIkFwcCBVSSJdO3N0YXRpYyBkZW1vPSgpPT5TYAogICAgPGRlZXMtYnV0dG9uIEBjbGljaz0keygpPT57Yi5jcmVhdGVBbmRTaG93KFt7bmFtZToiRGFzaGJvYXJkIixpY29uTmFtZToibHVjaWRlOmxheW91dC1kYXNoYm9hcmQiLGFjdGlvbjphc3luYyB4PT4oY29uc29sZS5sb2coIk5hdmlnYXRlIHRvIGRhc2hib2FyZCIpLG51bGwpfSx7bmFtZToiUHJvZmlsZSIsaWNvbk5hbWU6Imx1Y2lkZTp1c2VyIixhY3Rpb246YXN5bmMgeD0+KGNvbnNvbGUubG9nKCJOYXZpZ2F0ZSB0byBwcm9maWxlIiksbnVsbCl9LHtuYW1lOiJTZXR0aW5ncyIsaWNvbk5hbWU6Imx1Y2lkZTpzZXR0aW5ncyIsYWN0aW9uOmFzeW5jIHg9Pihjb25zb2xlLmxvZygiTmF2aWdhdGUgdG8gc2V0dGluZ3MiKSxudWxsKX0se2RpdmlkZXI6ITB9LHtuYW1lOiJIZWxwIixpY29uTmFtZToibHVjaWRlOmhlbHAtY2lyY2xlIixhY3Rpb246YXN5bmMgeD0+KGNvbnNvbGUubG9nKCJTaG93IGhlbHAiKSxudWxsKX0se25hbWU6IlNpZ24gT3V0IixpY29uTmFtZToibHVjaWRlOmxvZy1vdXQiLGFjdGlvbjphc3luYyB4PT4oY29uc29sZS5sb2coIlNpZ24gb3V0IiksbnVsbCl9XSl9fT5PcGVuIE1vYmlsZSBOYXZpZ2F0aW9uPC9kZWVzLWJ1dHRvbj4KICBgO3N0YXRpYyBzaW5nbGV0b25SZWY7c3RhdGljIGFzeW5jIGNyZWF0ZUFuZFNob3coeCl7cmV0dXJuIHRoaXMuc2luZ2xldG9uUmVmfHwodGhpcy5zaW5nbGV0b25SZWY9bmV3IGIsZG9jdW1lbnQuYm9keS5hcHBlbmQodGhpcy5zaW5nbGV0b25SZWYpLGF3YWl0IHRoaXMuc2luZ2xldG9uUmVmLmluaXQoKSksdGhpcy5zaW5nbGV0b25SZWYubWVudUl0ZW1zPXgsYXdhaXQgdGhpcy5zaW5nbGV0b25SZWYucmVhZHlEZWZlcnJlZC5wcm9taXNlLHRoaXMuc2luZ2xldG9uUmVmLnNob3coKSx0aGlzLnNpbmdsZXRvblJlZn0jZT1POCh0aGlzLG4sIk1lbnUiKTtnZXQgaGVhZGluZygpe3JldHVybiB0aGlzLiNlfXNldCBoZWFkaW5nKHgpe3RoaXMuI2U9eH0jdD0oTzgodGhpcyxzKSxPOCh0aGlzLGQsW10pKTtnZXQgbWVudUl0ZW1zKCl7cmV0dXJuIHRoaXMuI3R9c2V0IG1lbnVJdGVtcyh4KXt0aGlzLiN0PXh9I3I9KE84KHRoaXMsZiksTzgodGhpcyxwLDFlMykpO2dldCBtb2JpbGVOYXZaSW5kZXgoKXtyZXR1cm4gdGhpcy4jcn1zZXQgbW9iaWxlTmF2WkluZGV4KHgpe3RoaXMuI3I9eH1yZWFkeURlZmVycmVkPShPOCh0aGlzLGgpLCR0LnBsdWdpbnMuc21hcnRwcm9taXNlLmRlZmVyKCkpO2NvbnN0cnVjdG9yKCl7c3VwZXIoKX1hc3luYyBpbml0KCl7YXdhaXQgdGhpcy51cGRhdGVDb21wbGV0ZSx0aGlzLnJlYWR5RGVmZXJyZWQucmVzb2x2ZSgpfXN0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgLyogVE9ETzogTWlncmF0ZSBoYXJkY29kZWQgdmFsdWVzIHRvIC0tZGVlcy0qIENTUyB2YXJpYWJsZXMgKi8KICAgICAgOmhvc3QgewogICAgICAgIGZvbnQtZmFtaWx5OiAke1hyfTsKICAgICAgfQoKICAgICAgLm1haW4gewogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7CiAgICAgICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTsKICAgICAgICBwb3NpdGlvbjogZml4ZWQ7CiAgICAgICAgaGVpZ2h0OiAxMDB2aDsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBtYXgtd2lkdGg6IDMyMHB4OwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwOTA5MGIiLCIjZmFmYWZhIil9OwogICAgICAgIHotaW5kZXg6IHZhcigtLXotaW5kZXgpOwogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgcmlnaHQ6IDBweDsKICAgICAgICB0b3A6IDBweDsKICAgICAgICBib3R0b206IDBweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2ZmZmZmZiIsIiMwOTA5MGIiKX07CiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiMyNzI3MmEiKX07CiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgICAgICAgYm94LXNoYWRvdzogJHttLmJkVGhlbWUoIi0yMHB4IDAgMjVweCAtNXB4IHJnYmEoMCwgMCwgMCwgMC4xKSwgLTEwcHggMCAxMHB4IC01cHggcmdiYSgwLCAwLCAwLCAwLjA0KSIsIi0yMHB4IDAgMjVweCAtNXB4IHJnYmEoMCwgMCwgMCwgMC4zKSwgLTEwcHggMCAxMHB4IC01cHggcmdiYSgwLCAwLCAwLCAwLjIpIil9OwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgfQoKICAgICAgLm1haW4uc2hvdyB7CiAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICB9CgogICAgICAuaGVhZGVyIHsKICAgICAgICBwYWRkaW5nOiAyNHB4OwogICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiMyNzI3MmEiKX07CiAgICAgIH0KCiAgICAgIC5oZWFkaW5nIHsKICAgICAgICBmb250LXNpemU6IDE4cHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwOTA5MGIiLCIjZmFmYWZhIil9OwogICAgICAgIG1hcmdpbjogMDsKICAgICAgfQoKICAgICAgLm1lbnUtY29udGFpbmVyIHsKICAgICAgICBmbGV4OiAxOwogICAgICAgIG92ZXJmbG93LXk6IGF1dG87CiAgICAgICAgcGFkZGluZzogOHB4OwogICAgICB9CgogICAgICAubWVudUl0ZW0gewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDEycHg7CiAgICAgICAgcGFkZGluZzogMTJweCAxNnB4OwogICAgICAgIG1hcmdpbi1ib3R0b206IDJweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzcxNzE3YSIsIiNhMWExYWEiKX07CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIHVzZXItc2VsZWN0OiBub25lOwogICAgICB9CgogICAgICAubWVudUl0ZW06aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjRmNGY1IiwiIzI3MjcyYSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwOTA5MGIiLCIjZmFmYWZhIil9OwogICAgICB9CgogICAgICAubWVudUl0ZW06YWN0aXZlIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiMzZjNmNDYiKX07CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk4KTsKICAgICAgfQoKICAgICAgLm1lbnVJdGVtIGRlZXMtaWNvbiB7CiAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiIzcxNzE3YSIpfTsKICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBlYXNlOwogICAgICB9CgogICAgICAubWVudUl0ZW06aG92ZXIgZGVlcy1pY29uIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwOTA5MGIiLCIjZmFmYWZhIil9OwogICAgICB9CgogICAgICAubWVudUl0ZW0tdGV4dCB7CiAgICAgICAgZmxleDogMTsKICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTsKICAgICAgfQoKICAgICAgLm1lbnVJdGVtLWRpdmlkZXIgewogICAgICAgIGhlaWdodDogMXB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZTVlN2ViIiwiIzI3MjcyYSIpfTsKICAgICAgICBtYXJnaW46IDhweCAxNnB4OwogICAgICB9CgogICAgICAvKiBNb2JpbGUgcmVzcG9uc2l2ZW5lc3MgKi8KICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwMHB4KSB7CiAgICAgICAgLm1haW4gewogICAgICAgICAgbWF4LXdpZHRoOiAxMDB2dzsKICAgICAgICAgIHdpZHRoOiA4NXZ3OwogICAgICAgIH0KICAgICAgfQoKICAgICAgLyogQW5pbWF0aW9uIGZvciBtZW51IGl0ZW1zICovCiAgICAgIEBrZXlmcmFtZXMgc2xpZGVJblJpZ2h0IHsKICAgICAgICBmcm9tIHsKICAgICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7CiAgICAgICAgfQogICAgICAgIHRvIHsKICAgICAgICAgIG9wYWNpdHk6IDE7CiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7CiAgICAgICAgfQogICAgICB9CgogICAgICAubWFpbi5zaG93IC5tZW51SXRlbSB7CiAgICAgICAgYW5pbWF0aW9uOiBzbGlkZUluUmlnaHQgMC4zcyBlYXNlLW91dCBmb3J3YXJkczsKICAgICAgICBhbmltYXRpb24tZGVsYXk6IGNhbGModmFyKC0taXRlbS1pbmRleCwgMCkgKiAwLjA1cyk7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgfQoKICAgICAgLyogU2Nyb2xsYmFyIHN0eWxpbmcgKi8KICAgICAgLm1lbnUtY29udGFpbmVyOjotd2Via2l0LXNjcm9sbGJhciB7CiAgICAgICAgd2lkdGg6IDZweDsKICAgICAgfQoKICAgICAgLm1lbnUtY29udGFpbmVyOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7CiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgIH0KCiAgICAgIC5tZW51LWNvbnRhaW5lcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZTVlN2ViIiwiIzNmM2Y0NiIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7CiAgICAgIH0KCiAgICAgIC5tZW51LWNvbnRhaW5lcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZDFkNWRiIiwiIzUyNTI1YiIpfTsKICAgICAgfQogICAgYF07cmVuZGVyKCl7cmV0dXJuIFNgCiAgICAgIDxzdHlsZT4KICAgICAgICAubWFpbiB7CiAgICAgICAgICAtLXotaW5kZXg6ICR7dGhpcy5tb2JpbGVOYXZaSW5kZXh9OwogICAgICAgIH0KICAgICAgPC9zdHlsZT4KICAgICAgPGRpdiBjbGFzcz0ibWFpbiI+CiAgICAgICAgPGRpdiBjbGFzcz0iaGVhZGVyIj4KICAgICAgICAgIDxoMiBjbGFzcz0iaGVhZGluZyI+JHt0aGlzLmhlYWRpbmd9PC9oMj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJtZW51LWNvbnRhaW5lciI+CiAgICAgICAgICAke3RoaXMubWVudUl0ZW1zLm1hcCgoeCxnKT0+ImRpdmlkZXIiaW4geCYmeC5kaXZpZGVyP1NgPGRpdiBjbGFzcz0ibWVudUl0ZW0tZGl2aWRlciI+PC9kaXY+YDpTYAogICAgICAgICAgICAgIDxkaXYKICAgICAgICAgICAgICAgIGNsYXNzPSJtZW51SXRlbSIKICAgICAgICAgICAgICAgIHN0eWxlPSItLWl0ZW0taW5kZXg6ICR7Z30iCiAgICAgICAgICAgICAgICBAY2xpY2s9IiR7KCk9Pnt0aGlzLmhpZGUoKSx4LmFjdGlvbih0aGlzKX19IgogICAgICAgICAgICAgID4KICAgICAgICAgICAgICAgICR7eC5pY29uTmFtZT9TYAogICAgICAgICAgICAgICAgICA8ZGVlcy1pY29uIC5pY29uPSR7eC5pY29uTmFtZX0gc2l6ZT0iMjAiPjwvZGVlcy1pY29uPgogICAgICAgICAgICAgICAgYDoiIn0KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJtZW51SXRlbS10ZXh0Ij4ke3gubmFtZX08L3NwYW4+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIGApfQogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIGB9d2luZG93TGF5ZXI7YXN5bmMgc2hvdygpe2xldCB4PWF3YWl0IHRoaXMuZG9tdG9vbHNQcm9taXNlLGc9dGhpcy5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoIi5tYWluIik7dGhpcy53aW5kb3dMYXllcj8oZG9jdW1lbnQuYm9keS5hcHBlbmQodGhpcy53aW5kb3dMYXllciksYXdhaXQgdGhpcy53aW5kb3dMYXllci5zaG93KCkpOih0aGlzLndpbmRvd0xheWVyPWF3YWl0IHFuLmNyZWF0ZUFuZFNob3coe2JsdXI6ITB9KSx0aGlzLndpbmRvd0xheWVyLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwoKT0+e3RoaXMuaGlkZSgpfSkpLHRoaXMubW9iaWxlTmF2WkluZGV4PWNhLmdldE5leHRaSW5kZXgoKSxjYS5yZWdpc3Rlcih0aGlzLHRoaXMubW9iaWxlTmF2WkluZGV4KSxhd2FpdCB4LmNvbnZlbmllbmNlLnNtYXJ0ZGVsYXkuZGVsYXlGb3IoMTApLGcuY2xhc3NMaXN0LmFkZCgic2hvdyIpfWFzeW5jIGhpZGUoKXtsZXQgeD1hd2FpdCB0aGlzLmRvbXRvb2xzUHJvbWlzZTt0aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcigiLm1haW4iKS5jbGFzc0xpc3QucmVtb3ZlKCJzaG93IiksY2EudW5yZWdpc3Rlcih0aGlzKSx0aGlzLndpbmRvd0xheWVyJiZhd2FpdCB0aGlzLndpbmRvd0xheWVyLmRlc3Ryb3koKX1hc3luYyBkaXNjb25uZWN0ZWRDYWxsYmFjaygpe3N1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCksY2EudW5yZWdpc3Rlcih0aGlzKSx0aGlzLndpbmRvd0xheWVyJiZhd2FpdCB0aGlzLndpbmRvd0xheWVyLmRlc3Ryb3koKX1zdGF0aWN7TzgoYSxyKX19O3JldHVybiBiPWF9KSgpfSk7dmFyIHFQcj1sKCgpPT57SFByKCl9KTt2YXIgalByPWwoKCk9PntLQXIoKTtSbHQoKTt4RXIoKTtQUHIoKTtJUHIoKTtOUHIoKTtGUHIoKTtPUHIoKTtSUHIoKTtxUHIoKX0pO3ZhciBWUHI9bCgoKT0+e28zKCl9KTt2YXIgVVByLCRjdCxXUHIsR1ByPWwoKCk9PntTZSgpO1VQcj1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LCRjdD1mdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MixpPTA7aTx0Lmxlbmd0aDtpKyspcj1hP3RbaV0uY2FsbChlLHIpOnRbaV0uY2FsbChlKTtyZXR1cm4gYT9yOnZvaWQgMH0sV1ByPSgoKT0+e2xldCBlPVt6ZSgiZGVlcy1idXR0b24tZXhpdCIpXSx0LHI9W10sYSxpPURlLG8sbj1bXSxzPVtdO3ZhciBjPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgZD10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHt0eXBlOk51bWJlcn0pXSxVUHIodGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzaXplIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpmPT4ic2l6ZSJpbiBmLGdldDpmPT5mLnNpemUsc2V0OihmLHUpPT57Zi5zaXplPXV9fSxtZXRhZGF0YTpkfSxuLHMpLFVQcihudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTpkfSxudWxsLHIpLGM9YT10LnZhbHVlLGQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6ZH0pfXN0YXRpYyBkZW1vPSgpPT5TYAogICAgPGRlZXMtYnV0dG9uLWV4aXQ+PC9kZWVzLWJ1dHRvbi1leGl0PgogIGA7c3RhdGljIGRlbW9Hcm91cHM9WyJCdXR0b24iXTsjZT0kY3QodGhpcyxuLDI0KTtnZXQgc2l6ZSgpe3JldHVybiB0aGlzLiNlfXNldCBzaXplKGQpe3RoaXMuI2U9ZH1zdHlsZXM9KCRjdCh0aGlzLHMpLFttLmRlZmF1bHRTdHlsZXMsbGVgCgogICAgYF0pO3JlbmRlcigpe3JldHVybiBTYAogICAgICA8c3R5bGU+CiAgICAgICAgLm1haW5jb250YWluZXIgewogICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgICAgd2lkdGg6ICR7dGhpcy5zaXplfXB4OwogICAgICAgICAgaGVpZ2h0OiAke3RoaXMuc2l6ZX1weDsKICAgICAgICB9CiAgICAgIDwvc3R5bGU+CiAgICAgIDxkaXYgY2xhc3M9Im1haW5jb250YWluZXIiPgogICAgICAgIDxkaXYgY2xhc3M9ImZpcnN0TGluZSI+PC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ic2Vjb25kTGluZSI+PC9kaXY+CiAgICAgIDwvZGl2PgogICAgYH1zdGF0aWN7JGN0KGEscil9fTtyZXR1cm4gYz1hfSkoKX0pO3ZhciBZUHI9bCgoKT0+e0dQcigpfSk7dmFyIFpQcixYUHI9bCgoKT0+e1NlKCk7WlByPSgpPT5TYAogICAgPHN0eWxlPgogICAgICAke2xlYAogICAgICAgIC5kZW1vQm94IHsKICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDAwMDA7CiAgICAgICAgICBwYWRkaW5nOiA0MHB4OwogICAgICAgICAgbWluLWhlaWdodDogMTAwdmg7CiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgICAgIH0KCiAgICAgICAgLmRlbW8tc2VjdGlvbiB7CiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMnB4OwogICAgICAgIH0KCiAgICAgICAgLmRlbW8tdGl0bGUgewogICAgICAgICAgY29sb3I6ICNmZmY7CiAgICAgICAgICBmb250LXNpemU6IDIwcHg7CiAgICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDsKICAgICAgICAgIGZvbnQtZmFtaWx5OiAnR2Vpc3QgU2FucycsIHNhbnMtc2VyaWY7CiAgICAgICAgfQoKICAgICAgICAuZGVtby1kZXNjcmlwdGlvbiB7CiAgICAgICAgICBjb2xvcjogIzk5OTsKICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7CiAgICAgICAgICBmb250LWZhbWlseTogJ0dlaXN0IFNhbnMnLCBzYW5zLXNlcmlmOwogICAgICAgIH0KICAgICAgYH0KICAgIDwvc3R5bGU+CiAgICA8ZGl2IGNsYXNzPSJkZW1vQm94Ij4KICAgICAgPGRpdiBjbGFzcz0iZGVtby1zZWN0aW9uIj4KICAgICAgICA8aDIgY2xhc3M9ImRlbW8tdGl0bGUiPkJhc2ljIEJ1dHRvbiBHcm91cHM8L2gyPgogICAgICAgIDxwIGNsYXNzPSJkZW1vLWRlc2NyaXB0aW9uIj5CdXR0b24gZ3JvdXBzIHdpdGhvdXQgbGFiZWxzIGZvciBzaW1wbGUgZ3JvdXBpbmc8L3A+CiAgICAgICAgCiAgICAgICAgPGRlZXMtYnV0dG9uLWdyb3VwPgogICAgICAgICAgPGRlZXMtYnV0dG9uPk9wdGlvbiAxPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIDxkZWVzLWJ1dHRvbj5PcHRpb24gMjwvZGVlcy1idXR0b24+CiAgICAgICAgICA8ZGVlcy1idXR0b24+T3B0aW9uIDM8L2RlZXMtYnV0dG9uPgogICAgICAgIDwvZGVlcy1idXR0b24tZ3JvdXA+CiAgICAgIDwvZGl2PgoKICAgICAgPGRpdiBjbGFzcz0iZGVtby1zZWN0aW9uIj4KICAgICAgICA8aDIgY2xhc3M9ImRlbW8tdGl0bGUiPkxhYmVsZWQgQnV0dG9uIEdyb3VwczwvaDI+CiAgICAgICAgPHAgY2xhc3M9ImRlbW8tZGVzY3JpcHRpb24iPkJ1dHRvbiBncm91cHMgd2l0aCBkZXNjcmlwdGl2ZSBsYWJlbHM8L3A+CiAgICAgICAgCiAgICAgICAgPGRlZXMtYnV0dG9uLWdyb3VwIGxhYmVsPSJWaWV3IE1vZGU6Ij4KICAgICAgICAgIDxkZWVzLWJ1dHRvbiB0eXBlPSJoaWdobGlnaHRlZCI+R3JpZDwvZGVlcy1idXR0b24+CiAgICAgICAgICA8ZGVlcy1idXR0b24+TGlzdDwvZGVlcy1idXR0b24+CiAgICAgICAgICA8ZGVlcy1idXR0b24+Q2FyZHM8L2RlZXMtYnV0dG9uPgogICAgICAgIDwvZGVlcy1idXR0b24tZ3JvdXA+CiAgICAgIDwvZGl2PgoKICAgICAgPGRpdiBjbGFzcz0iZGVtby1zZWN0aW9uIj4KICAgICAgICA8aDIgY2xhc3M9ImRlbW8tdGl0bGUiPk11bHRpcGxlIEdyb3VwczwvaDI+CiAgICAgICAgPHAgY2xhc3M9ImRlbW8tZGVzY3JpcHRpb24iPk11bHRpcGxlIGJ1dHRvbiBncm91cHMgdXNlZCB0b2dldGhlcjwvcD4KICAgICAgICAKICAgICAgICA8ZGl2IHN0eWxlPSJkaXNwbGF5OiBmbGV4OyBnYXA6IDE2cHg7IGZsZXgtd3JhcDogd3JhcDsiPgogICAgICAgICAgPGRlZXMtYnV0dG9uLWdyb3VwIGxhYmVsPSJEYXRhc2V0OiI+CiAgICAgICAgICAgIDxkZWVzLWJ1dHRvbiB0eXBlPSJoaWdobGlnaHRlZCI+U3lzdGVtPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgICAgPGRlZXMtYnV0dG9uPk5ldHdvcms8L2RlZXMtYnV0dG9uPgogICAgICAgICAgICA8ZGVlcy1idXR0b24+U2FsZXM8L2RlZXMtYnV0dG9uPgogICAgICAgICAgPC9kZWVzLWJ1dHRvbi1ncm91cD4KICAgICAgICAgIAogICAgICAgICAgPGRlZXMtYnV0dG9uLWdyb3VwIGxhYmVsPSJUaW1lIFJhbmdlOiI+CiAgICAgICAgICAgIDxkZWVzLWJ1dHRvbj4xSDwvZGVlcy1idXR0b24+CiAgICAgICAgICAgIDxkZWVzLWJ1dHRvbiB0eXBlPSJoaWdobGlnaHRlZCI+MjRIPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgICAgPGRlZXMtYnV0dG9uPjdEPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgICAgPGRlZXMtYnV0dG9uPjMwRDwvZGVlcy1idXR0b24+CiAgICAgICAgICA8L2RlZXMtYnV0dG9uLWdyb3VwPgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1idXR0b24tZ3JvdXAgbGFiZWw9IkFjdGlvbnM6Ij4KICAgICAgICAgICAgPGRlZXMtYnV0dG9uPlJlZnJlc2g8L2RlZXMtYnV0dG9uPgogICAgICAgICAgICA8ZGVlcy1idXR0b24+RXhwb3J0PC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIDwvZGVlcy1idXR0b24tZ3JvdXA+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgoKICAgICAgPGRpdiBjbGFzcz0iZGVtby1zZWN0aW9uIj4KICAgICAgICA8aDIgY2xhc3M9ImRlbW8tdGl0bGUiPlZlcnRpY2FsIEJ1dHRvbiBHcm91cHM8L2gyPgogICAgICAgIDxwIGNsYXNzPSJkZW1vLWRlc2NyaXB0aW9uIj5CdXR0b24gZ3JvdXBzIHdpdGggdmVydGljYWwgbGF5b3V0PC9wPgogICAgICAgIAogICAgICAgIDxkaXYgc3R5bGU9ImRpc3BsYXk6IGZsZXg7IGdhcDogMjRweDsiPgogICAgICAgICAgPGRlZXMtYnV0dG9uLWdyb3VwIGRpcmVjdGlvbj0idmVydGljYWwiIGxhYmVsPSJOYXZpZ2F0aW9uOiI+CiAgICAgICAgICAgIDxkZWVzLWJ1dHRvbj5EYXNoYm9hcmQ8L2RlZXMtYnV0dG9uPgogICAgICAgICAgICA8ZGVlcy1idXR0b24gdHlwZT0iaGlnaGxpZ2h0ZWQiPkFuYWx5dGljczwvZGVlcy1idXR0b24+CiAgICAgICAgICAgIDxkZWVzLWJ1dHRvbj5SZXBvcnRzPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgICAgPGRlZXMtYnV0dG9uPlNldHRpbmdzPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIDwvZGVlcy1idXR0b24tZ3JvdXA+CiAgICAgICAgICAKICAgICAgICAgIDxkZWVzLWJ1dHRvbi1ncm91cCBkaXJlY3Rpb249InZlcnRpY2FsIj4KICAgICAgICAgICAgPGRlZXMtYnV0dG9uPkFkZCBJdGVtPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgICAgPGRlZXMtYnV0dG9uPkVkaXQgSXRlbTwvZGVlcy1idXR0b24+CiAgICAgICAgICAgIDxkZWVzLWJ1dHRvbj5EZWxldGUgSXRlbTwvZGVlcy1idXR0b24+CiAgICAgICAgICA8L2RlZXMtYnV0dG9uLWdyb3VwPgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KCiAgICAgIDxkaXYgY2xhc3M9ImRlbW8tc2VjdGlvbiI+CiAgICAgICAgPGgyIGNsYXNzPSJkZW1vLXRpdGxlIj5NaXhlZCBCdXR0b24gVHlwZXM8L2gyPgogICAgICAgIDxwIGNsYXNzPSJkZW1vLWRlc2NyaXB0aW9uIj5EaWZmZXJlbnQgYnV0dG9uIHR5cGVzIHdpdGhpbiBncm91cHM8L3A+CiAgICAgICAgCiAgICAgICAgPGRlZXMtYnV0dG9uLWdyb3VwIGxhYmVsPSJTdGF0dXM6Ij4KICAgICAgICAgIDxkZWVzLWJ1dHRvbiB0eXBlPSJzdWNjZXNzIj5BY3RpdmU8L2RlZXMtYnV0dG9uPgogICAgICAgICAgPGRlZXMtYnV0dG9uPlBlbmRpbmc8L2RlZXMtYnV0dG9uPgogICAgICAgICAgPGRlZXMtYnV0dG9uIHR5cGU9ImRhbmdlciI+SW5hY3RpdmU8L2RlZXMtYnV0dG9uPgogICAgICAgIDwvZGVlcy1idXR0b24tZ3JvdXA+CiAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgYH0pO3ZhciBQY3QsSVosUVByLEtQcj1sKCgpPT57U2UoKTtlcigpO1hQcigpO290KCk7UGN0PWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sSVo9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LFFQcj0oKCk9PntsZXQgZT1bemUoImRlZXMtYnV0dG9uLWdyb3VwIildLHQscj1bXSxhLGk9RGUsbyxuPVtdLHM9W10sYyxkPVtdLGY9W107dmFyIHU9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCBwPXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO289W2ooKV0sYz1baigpXSxQY3QodGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJsYWJlbCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6aD0+ImxhYmVsImluIGgsZ2V0Omg9PmgubGFiZWwsc2V0OihoLGIpPT57aC5sYWJlbD1ifX0sbWV0YWRhdGE6cH0sbixzKSxQY3QodGhpcyxudWxsLGMse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJkaXJlY3Rpb24iLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmg9PiJkaXJlY3Rpb24iaW4gaCxnZXQ6aD0+aC5kaXJlY3Rpb24sc2V0OihoLGIpPT57aC5kaXJlY3Rpb249Yn19LG1ldGFkYXRhOnB9LGQsZiksUGN0KG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOnB9LG51bGwsciksdT1hPXQudmFsdWUscCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpwfSl9c3RhdGljIGRlbW89WlByO3N0YXRpYyBkZW1vR3JvdXBzPVsiQnV0dG9uIl07I2U9SVoodGhpcyxuLCIiKTtnZXQgbGFiZWwoKXtyZXR1cm4gdGhpcy4jZX1zZXQgbGFiZWwocCl7dGhpcy4jZT1wfSN0PShJWih0aGlzLHMpLElaKHRoaXMsZCwiaG9yaXpvbnRhbCIpKTtnZXQgZGlyZWN0aW9uKCl7cmV0dXJuIHRoaXMuI3R9c2V0IGRpcmVjdGlvbihwKXt0aGlzLiN0PXB9Y29uc3RydWN0b3IoKXtzdXBlcigpLElaKHRoaXMsZiksa2Euc2V0dXAoKX1zdGF0aWMgc3R5bGVzPVtQZSxtLmRlZmF1bHRTdHlsZXMsbGVgCiAgICAgIC8qIFRPRE86IE1pZ3JhdGUgaGFyZGNvZGVkIHZhbHVlcyB0byAtLWRlZXMtKiBDU1MgdmFyaWFibGVzICovCiAgICAgIDpob3N0IHsKICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICAgIH0KCiAgICAgIC5idXR0b24tZ3JvdXAgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZ2FwOiA4cHg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBwYWRkaW5nOiA4cHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoMCwgMCwgMCwgMC4wNSkiLCJyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgfQoKICAgICAgLmJ1dHRvbi1ncm91cC52ZXJ0aWNhbCB7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDsKICAgICAgfQoKICAgICAgLmxhYmVsIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM2NjYiLCIjOTk5Iil9OwogICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICBmb250LWZhbWlseTogJ0dlaXN0IFNhbnMnLCBzYW5zLXNlcmlmOwogICAgICAgIG1hcmdpbi1yaWdodDogOHB4OwogICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgICAgIH0KCiAgICAgIC5idXR0b24tZ3JvdXAudmVydGljYWwgLmxhYmVsIHsKICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4OwogICAgICB9CgogICAgICA6OnNsb3R0ZWQoKikgewogICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50OwogICAgICB9CiAgICBgXTtyZW5kZXIoKXtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWdyb3VwICR7dGhpcy5kaXJlY3Rpb259Ij4KICAgICAgICAke3RoaXMubGFiZWw/U2A8c3BhbiBjbGFzcz0ibGFiZWwiPiR7dGhpcy5sYWJlbH08L3NwYW4+YDoiIn0KICAgICAgICA8c2xvdD48L3Nsb3Q+CiAgICAgIDwvZGl2PgogICAgYH1zdGF0aWN7SVooYSxyKX19O3JldHVybiB1PWF9KSgpfSk7dmFyIEpQcj1sKCgpPT57S1ByKCl9KTt2YXIgZUlyPWwoKCk9PntWUHIoKTtZUHIoKTtKUHIoKX0pO3ZhciB0SXIscklyPWwoKCk9PntTZSgpO3phKCk7SWN0KCk7dElyPSgpPT57bGV0IGU9e3N5c3RlbTp7bGFiZWw6IlN5c3RlbSBVc2FnZSAoJSkiLHNlcmllczpbe25hbWU6IkNQVSIsZGF0YTpbe3g6bmV3IERhdGUoRGF0ZS5ub3coKS0zZTUpLnRvSVNPU3RyaW5nKCkseToyNX0se3g6bmV3IERhdGUoRGF0ZS5ub3coKS0yNGU0KS50b0lTT1N0cmluZygpLHk6MzB9LHt4Om5ldyBEYXRlKERhdGUubm93KCktMThlNCkudG9JU09TdHJpbmcoKSx5OjI4fSx7eDpuZXcgRGF0ZShEYXRlLm5vdygpLTEyZTQpLnRvSVNPU3RyaW5nKCkseTozNX0se3g6bmV3IERhdGUoRGF0ZS5ub3coKS02ZTQpLnRvSVNPU3RyaW5nKCkseTozMn0se3g6bmV3IERhdGUoKS50b0lTT1N0cmluZygpLHk6Mzh9XX0se25hbWU6Ik1lbW9yeSIsZGF0YTpbe3g6bmV3IERhdGUoRGF0ZS5ub3coKS0zZTUpLnRvSVNPU3RyaW5nKCkseTo0NX0se3g6bmV3IERhdGUoRGF0ZS5ub3coKS0yNGU0KS50b0lTT1N0cmluZygpLHk6NDh9LHt4Om5ldyBEYXRlKERhdGUubm93KCktMThlNCkudG9JU09TdHJpbmcoKSx5OjQ2fSx7eDpuZXcgRGF0ZShEYXRlLm5vdygpLTEyZTQpLnRvSVNPU3RyaW5nKCkseTo1Mn0se3g6bmV3IERhdGUoRGF0ZS5ub3coKS02ZTQpLnRvSVNPU3RyaW5nKCkseTo1MH0se3g6bmV3IERhdGUoKS50b0lTT1N0cmluZygpLHk6NTV9XX1dfX0sdD17c3lzdGVtOnI9PmAke3J9JWB9O3JldHVybiBTYAogICAgPGRlZXMtZGVtb3dyYXBwZXIgLnJ1bkFmdGVyUmVuZGVyPSR7YXN5bmMgcj0+e2xldCBhPXIucXVlcnlTZWxlY3RvcigiI21haW4tY2hhcnQiKSxpPXIucXVlcnlTZWxlY3RvcigiI2Nvbm5lY3Rpb25zLWNoYXJ0IiksbyxuLHM9InN5c3RlbSIsYz17c3lzdGVtOnk9PmAke3l9JWAsbmV0d29yazp5PT5gJHt5fSBNYnBzYCxzYWxlczp5PT5gJCR7eS50b0xvY2FsZVN0cmluZygpfWB9LGQ9MTIwKjFlMyxmPTFlMyx1PTVlMyxwPXtjcHU6MzAsbWVtb3J5OjUwLGRvd25sb2FkOjE1MCx1cGxvYWQ6MzAsY29ubmVjdGlvbnM6MTUwfSxoPSh5LEUsXz11KT0+e2xldCBQPVtdLFY9RGF0ZS5ub3coKSxIPU1hdGguZmxvb3IoZC9fKTtmb3IobGV0IFc9SDtXPj0wO1ctLSl7bGV0IGFlPW5ldyBEYXRlKFYtVypfKS50b0lTT1N0cmluZygpLFQ9eSsoTWF0aC5yYW5kb20oKS0uNSkqRTtQLnB1c2goe3g6YWUseTpNYXRoLnJvdW5kKFQpfSl9cmV0dXJuIFB9LGI9e3N5c3RlbTp7bGFiZWw6IlN5c3RlbSBVc2FnZSAoJSkiLHNlcmllczpbe25hbWU6IkNQVSIsZGF0YTpoKHAuY3B1LDEwKX0se25hbWU6Ik1lbW9yeSIsZGF0YTpoKHAubWVtb3J5LDgpfV19LG5ldHdvcms6e2xhYmVsOiJOZXR3b3JrIFRyYWZmaWMgKE1icHMpIixzZXJpZXM6W3tuYW1lOiJEb3dubG9hZCIsZGF0YTpoKHAuZG93bmxvYWQsMzApfSx7bmFtZToiVXBsb2FkIixkYXRhOmgocC51cGxvYWQsMTApfV19LHNhbGVzOntsYWJlbDoiU2FsZXMgQW5hbHl0aWNzIixzZXJpZXM6W3tuYW1lOiJSZXZlbnVlIixkYXRhOlt7eDoiMjAyNS0wMS0wMSIseTo0NWUzfSx7eDoiMjAyNS0wMS0wMiIseTo1MmUzfSx7eDoiMjAyNS0wMS0wMyIseTo0OGUzfSx7eDoiMjAyNS0wMS0wNCIseTo2MWUzfSx7eDoiMjAyNS0wMS0wNSIseTo1OGUzfSx7eDoiMjAyNS0wMS0wNiIseTo2NWUzfV19LHtuYW1lOiJQcm9maXQiLGRhdGE6W3t4OiIyMDI1LTAxLTAxIix5OjEyZTN9LHt4OiIyMDI1LTAxLTAyIix5OjE0ZTN9LHt4OiIyMDI1LTAxLTAzIix5OjExZTN9LHt4OiIyMDI1LTAxLTA0Iix5OjE4ZTN9LHt4OiIyMDI1LTAxLTA1Iix5OjE2ZTN9LHt4OiIyMDI1LTAxLTA2Iix5OjJlNH1dfV19fSx4PSh5LEUsXyxQPTUpPT57bGV0IFY9KE1hdGgucmFuZG9tKCktLjUpKlAqMixIPXkrVixhZT0oKEUrXykvMi1IKSouMTtyZXR1cm4gSCs9YWUsSD1NYXRoLm1heChFLE1hdGgubWluKF8sSCkpLE1hdGgucm91bmQoSCl9LGc9RGF0ZS5ub3coKSx2PURhdGUubm93KCksdz0oKT0+e2lmKCFhKXJldHVybjtsZXQgeT1EYXRlLm5vdygpO2lmKHktZz49dSl7Zz15O2xldCBfPW5ldyBEYXRlKHkpLnRvSVNPU3RyaW5nKCk7aWYocz09PSJzeXN0ZW0iKXtwLmNwdT14KHAuY3B1LDIwLDUwLDMpLHAubWVtb3J5PXgocC5tZW1vcnksNDAsNzAsMik7bGV0IFA9YS5jaGFydFNlcmllcy5tYXAoKFYsSCk9Pih7bmFtZTpWLm5hbWUsZGF0YTpbLi4uVi5kYXRhLEg9PT0wP3t4Ol8seTpwLmNwdX06e3g6Xyx5OnAubWVtb3J5fV19KSk7YS51cGRhdGVTZXJpZXMoUCwhMSl9ZWxzZSBpZihzPT09Im5ldHdvcmsiKXtwLmRvd25sb2FkPXgocC5kb3dubG9hZCwxMDAsMjAwLDEwKSxwLnVwbG9hZD14KHAudXBsb2FkLDIwLDUwLDUpO2xldCBQPWEuY2hhcnRTZXJpZXMubWFwKChWLEgpPT4oe25hbWU6Vi5uYW1lLGRhdGE6Wy4uLlYuZGF0YSxIPT09MD97eDpfLHk6cC5kb3dubG9hZH06e3g6Xyx5OnAudXBsb2FkfV19KSk7YS51cGRhdGVTZXJpZXMoUCwhMSl9fX0sTT0oKT0+e2lmKCFpKXJldHVybjtsZXQgeT1EYXRlLm5vdygpLEU9bmV3IERhdGUoeSkudG9JU09TdHJpbmcoKSxfPU1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSoyMSktMTA7cC5jb25uZWN0aW9ucz1NYXRoLm1heCg1MCxNYXRoLm1pbigzMDAscC5jb25uZWN0aW9ucytfKSk7bGV0IFA9aS5jaGFydFNlcmllcyxWPVt7bmFtZTpQWzBdPy5uYW1lfHwiQ29ubmVjdGlvbnMiLGRhdGE6Wy4uLlBbMF0/LmRhdGF8fFtdLHt4OkUseTpwLmNvbm5lY3Rpb25zfV19XTtpLnVwZGF0ZVNlcmllcyhWLCExKX0sRj15PT57cz15O2xldCBFPWJbeV07YS5sYWJlbD1FLmxhYmVsLGEuc2VyaWVzPUUuc2VyaWVzLGEueUF4aXNGb3JtYXR0ZXI9Y1t5XSx5PT09InN5c3RlbSI/KGEueUF4aXNTY2FsaW5nPSJwZXJjZW50YWdlIixhLnlBeGlzTWF4PTEwMCk6YS55QXhpc1NjYWxpbmc9ImR5bmFtaWMiLGc9RGF0ZS5ub3coKS11fSxDPSgpPT57IW8mJihzPT09InN5c3RlbSJ8fHM9PT0ibmV0d29yayIpJiYoYS5yZWFsdGltZU1vZGU9ITAsbz13aW5kb3cuc2V0SW50ZXJ2YWwoKCk9PncoKSx1KSksbnx8KGkucmVhbHRpbWVNb2RlPSEwLG49d2luZG93LnNldEludGVydmFsKCgpPT5NKCksZikpfSxrPSgpPT57byYmKHdpbmRvdy5jbGVhckludGVydmFsKG8pLG89bnVsbCxhLnJlYWx0aW1lTW9kZT0hMSksbiYmKHdpbmRvdy5jbGVhckludGVydmFsKG4pLG49bnVsbCxpLnJlYWx0aW1lTW9kZT0hMSl9LE49KCk9PntzPT09InN5c3RlbSI/KHAuY3B1PU1hdGgucmFuZG9tKCk+LjU/ODU6MjUscC5tZW1vcnk9TWF0aC5yYW5kb20oKT4uNT84MDo0NSk6cz09PSJuZXR3b3JrIiYmKHAuZG93bmxvYWQ9TWF0aC5yYW5kb20oKT4uNT8yNTA6MTAwLHAudXBsb2FkPU1hdGgucmFuZG9tKCk+LjU/ODA6MjApLHAuY29ubmVjdGlvbnM9TWF0aC5yYW5kb20oKT4uNT8yODA6ODAsZz0wLHY9MH0sJD1yLnF1ZXJ5U2VsZWN0b3JBbGwoImRlZXMtYnV0dG9uIik7JC5mb3JFYWNoKHk9PntsZXQgRT15LnRleHRDb250ZW50Py50cmltKCk7RT09PSJTeXN0ZW0gVXNhZ2UiP3kuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCgpPT5GKCJzeXN0ZW0iKSk6RT09PSJOZXR3b3JrIFRyYWZmaWMiP3kuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCgpPT5GKCJuZXR3b3JrIikpOkU9PT0iU2FsZXMgRGF0YSI/eS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKCk9PkYoInNhbGVzIikpOkU9PT0iU3RhcnQgTGl2ZSI/eS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKCk9PkMoKSk6RT09PSJTdG9wIExpdmUiP3kuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCgpPT5rKCkpOkU9PT0iU3Bpa2UgVmFsdWVzIiYmeS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKCk9Pk4oKSl9KTtsZXQgST0oKT0+e3IucXVlcnlTZWxlY3RvckFsbCgiZGVlcy1idXR0b24iKS5mb3JFYWNoKEU9PntsZXQgXz1FLnRleHRDb250ZW50Py50cmltKCk7Xz09PSJTeXN0ZW0gVXNhZ2UiP0UudHlwZT1zPT09InN5c3RlbSI/ImhpZ2hsaWdodGVkIjoibm9ybWFsIjpfPT09Ik5ldHdvcmsgVHJhZmZpYyI/RS50eXBlPXM9PT0ibmV0d29yayI/ImhpZ2hsaWdodGVkIjoibm9ybWFsIjpfPT09IlNhbGVzIERhdGEiJiYoRS50eXBlPXM9PT0ic2FsZXMiPyJoaWdobGlnaHRlZCI6Im5vcm1hbCIpfSl9O2Eucm9sbGluZ1dpbmRvdz1kLGEucmVhbHRpbWVNb2RlPSExLGEueUF4aXNTY2FsaW5nPSJwZXJjZW50YWdlIixhLnlBeGlzTWF4PTEwMCxhLmF1dG9TY3JvbGxJbnRlcnZhbD0xZTMsc2V0VGltZW91dCgoKT0+e2EudXBkYXRlVGltZVdpbmRvdygpfSwxMDApO2xldCBCPUYsej15PT57Qih5KSxJKCl9O2lmKCQuZm9yRWFjaCh5PT57bGV0IEU9eS50ZXh0Q29udGVudD8udHJpbSgpO0U9PT0iU3lzdGVtIFVzYWdlIj8oeS5yZW1vdmVFdmVudExpc3RlbmVyKCJjbGljayIsKCk9PkYoInN5c3RlbSIpKSx5LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwoKT0+eigic3lzdGVtIikpKTpFPT09Ik5ldHdvcmsgVHJhZmZpYyI/KHkucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY2xpY2siLCgpPT5GKCJuZXR3b3JrIikpLHkuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCgpPT56KCJuZXR3b3JrIikpKTpFPT09IlNhbGVzIERhdGEiJiYoeS5yZW1vdmVFdmVudExpc3RlbmVyKCJjbGljayIsKCk9PkYoInNhbGVzIikpLHkuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCgpPT56KCJzYWxlcyIpKSl9KSxpKXtsZXQgeT1oKHAuY29ubmVjdGlvbnMsMzAsZik7aS5zZXJpZXM9W3tuYW1lOiJDb25uZWN0aW9ucyIsZGF0YTp5fV0saS5yb2xsaW5nV2luZG93PWQsaS5yZWFsdGltZU1vZGU9ITEsaS55QXhpc1NjYWxpbmc9ImZpeGVkIixpLnlBeGlzTWF4PTM1MCxpLmF1dG9TY3JvbGxJbnRlcnZhbD0xZTMsc2V0VGltZW91dCgoKT0+e2kudXBkYXRlVGltZVdpbmRvdygpfSwxMDApfX19PgogICAgICA8c3R5bGU+CiAgICAgICAgJHtsZWAKICAgICAgICAuZGVtb0JveCB7CiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOTUlKSIsImhzbCgwIDAlIDklKSIpfTsKICAgICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgICAgcGFkZGluZzogNDBweDsKICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICAgIGdhcDogMjRweDsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLmNvbnRyb2xzIHsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7CiAgICAgICAgICBnYXA6IDEycHg7CiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5jaGFydC1jb250YWluZXIgewogICAgICAgICAgZmxleDogMTsKICAgICAgICAgIG1pbi1oZWlnaHQ6IDQwMHB4OwogICAgICAgIH0KICAgICAgICAKICAgICAgICAuaW5mbyB7CiAgICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUuNCAxNi4zJSA1Ni45JSkiLCJoc2woMjE1IDIwLjIlIDU1LjElKSIpfTsKICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsICdTZWdvZSBVSScsICdHZWlzdCBTYW5zJywgc2Fucy1zZXJpZjsKICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICAgIG1hcmdpbi10b3A6IDhweDsKICAgICAgICB9CiAgICAgIGB9CiAgICA8L3N0eWxlPgogICAgPGRpdiBjbGFzcz0iZGVtb0JveCI+CiAgICAgIDxkaXYgY2xhc3M9ImNvbnRyb2xzIj4KICAgICAgICA8ZGVlcy1idXR0b24tZ3JvdXAgbGFiZWw9IkRhdGFzZXQ6Ij4KICAgICAgICAgIDxkZWVzLWJ1dHRvbiB0eXBlPSJoaWdobGlnaHRlZCI+U3lzdGVtIFVzYWdlPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIDxkZWVzLWJ1dHRvbj5OZXR3b3JrIFRyYWZmaWM8L2RlZXMtYnV0dG9uPgogICAgICAgICAgPGRlZXMtYnV0dG9uPlNhbGVzIERhdGE8L2RlZXMtYnV0dG9uPgogICAgICAgIDwvZGVlcy1idXR0b24tZ3JvdXA+CiAgICAgICAgCiAgICAgICAgPGRlZXMtYnV0dG9uLWdyb3VwIGxhYmVsPSJSZWFsLXRpbWU6Ij4KICAgICAgICAgIDxkZWVzLWJ1dHRvbj5TdGFydCBMaXZlPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIDxkZWVzLWJ1dHRvbj5TdG9wIExpdmU8L2RlZXMtYnV0dG9uPgogICAgICAgIDwvZGVlcy1idXR0b24tZ3JvdXA+CiAgICAgICAgCiAgICAgICAgPGRlZXMtYnV0dG9uLWdyb3VwIGxhYmVsPSJBY3Rpb25zOiI+CiAgICAgICAgICA8ZGVlcy1idXR0b24+U3Bpa2UgVmFsdWVzPC9kZWVzLWJ1dHRvbj4KICAgICAgICA8L2RlZXMtYnV0dG9uLWdyb3VwPgogICAgICA8L2Rpdj4KICAgICAgCiAgICAgIDxkaXYgY2xhc3M9ImNoYXJ0LWNvbnRhaW5lciI+CiAgICAgICAgPGRlZXMtY2hhcnQtYXJlYQogICAgICAgICAgaWQ9Im1haW4tY2hhcnQiCiAgICAgICAgICAubGFiZWw9JHtlLnN5c3RlbS5sYWJlbH0KICAgICAgICAgIC5zZXJpZXM9JHtlLnN5c3RlbS5zZXJpZXN9CiAgICAgICAgICAueUF4aXNGb3JtYXR0ZXI9JHt0LnN5c3RlbX0KICAgICAgICA+PC9kZWVzLWNoYXJ0LWFyZWE+CiAgICAgIDwvZGl2PgogICAgICAKICAgICAgPGRpdiBjbGFzcz0iY2hhcnQtY29udGFpbmVyIiBzdHlsZT0ibWFyZ2luLXRvcDogMjBweDsiPgogICAgICAgIDxkZWVzLWNoYXJ0LWFyZWEKICAgICAgICAgIGlkPSJjb25uZWN0aW9ucy1jaGFydCIKICAgICAgICAgIC5sYWJlbD0keyJBY3RpdmUgQ29ubmVjdGlvbnMifQogICAgICAgICAgLnNlcmllcz0ke1t7bmFtZToiQ29ubmVjdGlvbnMiLGRhdGE6W119XX0KICAgICAgICAgIC55QXhpc0Zvcm1hdHRlcj0ke3I9PmAke3J9YH0KICAgICAgICA+PC9kZWVzLWNoYXJ0LWFyZWE+CiAgICAgIDwvZGl2PgogICAgICAKICAgICAgPGRpdiBjbGFzcz0iaW5mbyI+CiAgICAgICAgUmVhbC10aW1lIG1vbml0b3Jpbmcgd2l0aCAyLW1pbnV0ZSByb2xsaW5nIHdpbmRvdyDigKIgCiAgICAgICAgVXBkYXRlcyBldmVyeSBzZWNvbmQgd2l0aCBzbW9vdGggdmFsdWUgdHJhbnNpdGlvbnMg4oCiIAogICAgICAgIENsaWNrICdTcGlrZSBWYWx1ZXMnIHRvIHNpbXVsYXRlIGxvYWQgc3Bpa2VzCiAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgICA8L2RlZXMtZGVtb3dyYXBwZXI+CiAgYH19KTt2YXIgYUlyLGlJcj1sKCgpPT57U2UoKTthSXI9W20uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgOmhvc3QgewogICAgICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsICdTZWdvZSBVSScsICdSb2JvdG8nLCBzYW5zLXNlcmlmOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMy45JSkiLCJoc2woMCAwJSA5OCUpIil9OwogICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICB9CiAgICAgIC5tYWluYm94IHsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgaGVpZ2h0OiA0MDBweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTAwJSkiLCJoc2woMCAwJSAzLjklKSIpfTsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICB9CgogICAgICAuY2hhcnRUaXRsZSB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHRvcDogMDsKICAgICAgICBsZWZ0OiAwOwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIHRleHQtYWxpZ246IGxlZnQ7CiAgICAgICAgcGFkZGluZzogMTZweCAyNHB4OwogICAgICAgIHotaW5kZXg6IDEwOwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMjAlKSIsImhzbCgwIDAlIDYzLjklKSIpfTsKICAgICAgfQogICAgICAuY2hhcnRDb250YWluZXIgewogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICB0b3A6IDBweDsKICAgICAgICBsZWZ0OiAwcHg7CiAgICAgICAgYm90dG9tOiAwcHg7CiAgICAgICAgcmlnaHQ6IDBweDsKICAgICAgICBwYWRkaW5nOiA0NHB4IDE2cHggMTZweCAwcHg7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgLyogRW5zdXJlIGNvbnRhaW5lciBkb2Vzbid0IG92ZXJyaWRlIGNoYXJ0IGJhY2tncm91bmQgKi8KICAgICAgfQogICAgICAKICAgICAgLyogQXBleENoYXJ0cyB0aGVtZSBvdmVycmlkZXMgKi8KICAgICAgLmFwZXhjaGFydHMtY2FudmFzIHsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OwogICAgICB9CiAgICAgIAogICAgICAuYXBleGNoYXJ0cy1pbm5lciB7CiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsKICAgICAgfQogICAgICAKICAgICAgLmFwZXhjaGFydHMtZ3JhcGhpY2FsIHsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OwogICAgICB9CiAgICBgXX0pO3ZhciBvSXIsbklyPWwoKCk9PntTZSgpO29Jcj1lPT5TYAogICAgICAgIDxkaXYgY2xhc3M9Im1haW5ib3giPgogICAgICAgICAgPGRpdiBjbGFzcz0iY2hhcnRUaXRsZSI+JHtlLmxhYmVsfTwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0iY2hhcnRDb250YWluZXIiPjwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICBgfSk7dmFyIHBsLEJpLHNJcixJY3Q9bCgoKT0+e1NlKCk7ZXIoKTtySXIoKTtpSXIoKTtuSXIoKTtjMygpO3BsPWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sQmk9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LHNJcj0oKCk9PntsZXQgZT1bemUoImRlZXMtY2hhcnQtYXJlYSIpXSx0LHI9W10sYSxpPURlLG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdLHUscD1bXSxoPVtdLGIseD1bXSxnPVtdLHYsdz1bXSxNPVtdLEYsQz1bXSxrPVtdLE4sJD1bXSxJPVtdLEIsej1bXSx5PVtdLEUsXz1bXSxQPVtdO3ZhciBWPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgSD10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtyZSgpXSxjPVtqKCldLHU9W2ooe3R5cGU6QXJyYXl9KV0sYj1baih7YXR0cmlidXRlOiExfSldLHY9W2ooe3R5cGU6TnVtYmVyfSldLEY9W2ooe3R5cGU6Qm9vbGVhbn0pXSxOPVtqKHt0eXBlOlN0cmluZ30pXSxCPVtqKHt0eXBlOk51bWJlcn0pXSxFPVtqKHt0eXBlOk51bWJlcn0pXSxwbCh0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImNoYXJ0IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpXPT4iY2hhcnQiaW4gVyxnZXQ6Vz0+Vy5jaGFydCxzZXQ6KFcsYWUpPT57Vy5jaGFydD1hZX19LG1ldGFkYXRhOkh9LG4scykscGwodGhpcyxudWxsLGMse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJsYWJlbCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Vz0+ImxhYmVsImluIFcsZ2V0Olc9PlcubGFiZWwsc2V0OihXLGFlKT0+e1cubGFiZWw9YWV9fSxtZXRhZGF0YTpIfSxkLGYpLHBsKHRoaXMsbnVsbCx1LHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2VyaWVzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpXPT4ic2VyaWVzImluIFcsZ2V0Olc9Plcuc2VyaWVzLHNldDooVyxhZSk9PntXLnNlcmllcz1hZX19LG1ldGFkYXRhOkh9LHAsaCkscGwodGhpcyxudWxsLGIse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ5QXhpc0Zvcm1hdHRlciIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Vz0+InlBeGlzRm9ybWF0dGVyImluIFcsZ2V0Olc9PlcueUF4aXNGb3JtYXR0ZXIsc2V0OihXLGFlKT0+e1cueUF4aXNGb3JtYXR0ZXI9YWV9fSxtZXRhZGF0YTpIfSx4LGcpLHBsKHRoaXMsbnVsbCx2LHtraW5kOiJhY2Nlc3NvciIsbmFtZToicm9sbGluZ1dpbmRvdyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Vz0+InJvbGxpbmdXaW5kb3ciaW4gVyxnZXQ6Vz0+Vy5yb2xsaW5nV2luZG93LHNldDooVyxhZSk9PntXLnJvbGxpbmdXaW5kb3c9YWV9fSxtZXRhZGF0YTpIfSx3LE0pLHBsKHRoaXMsbnVsbCxGLHtraW5kOiJhY2Nlc3NvciIsbmFtZToicmVhbHRpbWVNb2RlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpXPT4icmVhbHRpbWVNb2RlImluIFcsZ2V0Olc9PlcucmVhbHRpbWVNb2RlLHNldDooVyxhZSk9PntXLnJlYWx0aW1lTW9kZT1hZX19LG1ldGFkYXRhOkh9LEMsaykscGwodGhpcyxudWxsLE4se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ5QXhpc1NjYWxpbmciLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOlc9PiJ5QXhpc1NjYWxpbmciaW4gVyxnZXQ6Vz0+Vy55QXhpc1NjYWxpbmcsc2V0OihXLGFlKT0+e1cueUF4aXNTY2FsaW5nPWFlfX0sbWV0YWRhdGE6SH0sJCxJKSxwbCh0aGlzLG51bGwsQix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InlBeGlzTWF4IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpXPT4ieUF4aXNNYXgiaW4gVyxnZXQ6Vz0+Vy55QXhpc01heCxzZXQ6KFcsYWUpPT57Vy55QXhpc01heD1hZX19LG1ldGFkYXRhOkh9LHoseSkscGwodGhpcyxudWxsLEUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJhdXRvU2Nyb2xsSW50ZXJ2YWwiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOlc9PiJhdXRvU2Nyb2xsSW50ZXJ2YWwiaW4gVyxnZXQ6Vz0+Vy5hdXRvU2Nyb2xsSW50ZXJ2YWwsc2V0OihXLGFlKT0+e1cuYXV0b1Njcm9sbEludGVydmFsPWFlfX0sbWV0YWRhdGE6SH0sXyxQKSxwbChudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTpIfSxudWxsLHIpLFY9YT10LnZhbHVlLEgmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6SH0pfXN0YXRpYyBkZW1vPXRJcjtzdGF0aWMgZGVtb0dyb3Vwcz1bIkNoYXJ0Il07I2U9QmkodGhpcyxuLHZvaWQgMCk7Z2V0IGNoYXJ0KCl7cmV0dXJuIHRoaXMuI2V9c2V0IGNoYXJ0KEgpe3RoaXMuI2U9SH0jdD0oQmkodGhpcyxzKSxCaSh0aGlzLGQsIlVudGl0bGVkIENoYXJ0IikpO2dldCBsYWJlbCgpe3JldHVybiB0aGlzLiN0fXNldCBsYWJlbChIKXt0aGlzLiN0PUh9I3I9KEJpKHRoaXMsZiksQmkodGhpcyxwLFtdKSk7Z2V0IHNlcmllcygpe3JldHVybiB0aGlzLiNyfXNldCBzZXJpZXMoSCl7dGhpcy4jcj1IfWdldCBjaGFydFNlcmllcygpe3JldHVybiB0aGlzLmludGVybmFsQ2hhcnREYXRhLmxlbmd0aD4wP3RoaXMuaW50ZXJuYWxDaGFydERhdGE6dGhpcy5zZXJpZXN9I2E9KEJpKHRoaXMsaCksQmkodGhpcyx4LEg9PmAke0h9IE1icHNgKSk7Z2V0IHlBeGlzRm9ybWF0dGVyKCl7cmV0dXJuIHRoaXMuI2F9c2V0IHlBeGlzRm9ybWF0dGVyKEgpe3RoaXMuI2E9SH0jaT0oQmkodGhpcyxnKSxCaSh0aGlzLHcsMCkpO2dldCByb2xsaW5nV2luZG93KCl7cmV0dXJuIHRoaXMuI2l9c2V0IHJvbGxpbmdXaW5kb3coSCl7dGhpcy4jaT1IfSNvPShCaSh0aGlzLE0pLEJpKHRoaXMsQywhMSkpO2dldCByZWFsdGltZU1vZGUoKXtyZXR1cm4gdGhpcy4jb31zZXQgcmVhbHRpbWVNb2RlKEgpe3RoaXMuI289SH0jbj0oQmkodGhpcyxrKSxCaSh0aGlzLCQsImR5bmFtaWMiKSk7Z2V0IHlBeGlzU2NhbGluZygpe3JldHVybiB0aGlzLiNufXNldCB5QXhpc1NjYWxpbmcoSCl7dGhpcy4jbj1IfSNzPShCaSh0aGlzLEkpLEJpKHRoaXMseiwxMDApKTtnZXQgeUF4aXNNYXgoKXtyZXR1cm4gdGhpcy4jc31zZXQgeUF4aXNNYXgoSCl7dGhpcy4jcz1IfSNsPShCaSh0aGlzLHkpLEJpKHRoaXMsXywxZTMpKTtnZXQgYXV0b1Njcm9sbEludGVydmFsKCl7cmV0dXJuIHRoaXMuI2x9c2V0IGF1dG9TY3JvbGxJbnRlcnZhbChIKXt0aGlzLiNsPUh9cmVzaXplT2JzZXJ2ZXI9QmkodGhpcyxQKTtyZXNpemVUaW1lb3V0O2ludGVybmFsQ2hhcnREYXRhPVtdO2F1dG9TY3JvbGxUaW1lcj1udWxsO0RFQlVHX1JFU0laRT0hMTtDSEFSVF9DT0xPUlM9e2Rhcms6WyJoc2woMjE3LjIgOTEuMiUgNTkuOCUpIiwiaHNsKDE3My40IDgwLjQlIDQwJSkiLCJoc2woMjgwLjMgODcuNCUgNjYuNyUpIiwiaHNsKDI0LjYgOTUlIDUzLjElKSJdLGxpZ2h0OlsiaHNsKDIyMi4yIDQ3LjQlIDUxLjIlKSIsImhzbCgxNDIuMSA3Ni4yJSAzNi4zJSkiLCJoc2woMjgwLjMgNDcuNyUgNTAuMiUpIiwiaHNsKDIwLjUgOTAuMiUgNDguMiUpIl19O2NvbnN0cnVjdG9yKCl7c3VwZXIoKSxrYS5zZXR1cCgpLHRoaXMucmVzaXplT2JzZXJ2ZXI9bmV3IFJlc2l6ZU9ic2VydmVyKEg9Pnt0aGlzLnJlc2l6ZVRpbWVvdXQmJmNsZWFyVGltZW91dCh0aGlzLnJlc2l6ZVRpbWVvdXQpLHRoaXMucmVzaXplVGltZW91dD13aW5kb3cuc2V0VGltZW91dCgoKT0+e2lmKHRoaXMuY2hhcnQpe2lmKHRoaXMuREVCVUdfUkVTSVpFJiZILmxlbmd0aD4wKXtsZXQgVz1IWzBdO2NvbnNvbGUubG9nKCJEZWVzQ2hhcnRBcmVhIC0gUmVzaXplIGRldGVjdGVkOiIse3dpZHRoOlcuY29udGVudFJlY3Qud2lkdGgsaGVpZ2h0OlcuY29udGVudFJlY3QuaGVpZ2h0fSl9dGhpcy5yZXNpemVDaGFydCgpfX0sMTAwKX0pLHRoaXMucmVnaXN0ZXJHYXJiYWdlRnVuY3Rpb24oYXN5bmMoKT0+e2lmKHRoaXMucmVzaXplVGltZW91dCYmY2xlYXJUaW1lb3V0KHRoaXMucmVzaXplVGltZW91dCksdGhpcy5yZXNpemVPYnNlcnZlciYmdGhpcy5yZXNpemVPYnNlcnZlci5kaXNjb25uZWN0KCksdGhpcy5zdG9wQXV0b1Njcm9sbCgpLHRoaXMuY2hhcnQpdHJ5e3RoaXMuY2hhcnQuZGVzdHJveSgpLHRoaXMuY2hhcnQ9bnVsbH1jYXRjaChIKXtjb25zb2xlLmVycm9yKCJFcnJvciBkZXN0cm95aW5nIGNoYXJ0OiIsSCl9fSl9YXN5bmMgY29ubmVjdGVkQ2FsbGJhY2soKXtzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpLHRoaXMuY2hhcnQmJihhd2FpdCBuZXcgUHJvbWlzZShIPT5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoSCkpLGF3YWl0IHRoaXMucmVzaXplQ2hhcnQoKSl9c3RhdGljIHN0eWxlcz1hSXI7cmVuZGVyKCl7cmV0dXJuIG9Jcih0aGlzKX1hc3luYyBmaXJzdFVwZGF0ZWQoKXthd2FpdCB0aGlzLmRvbXRvb2xzUHJvbWlzZTtsZXQgSD1hd2FpdCB4MS5nZXRJbnN0YW5jZSgpLmxvYWRBcGV4Q2hhcnRzKCk7YXdhaXQgbmV3IFByb21pc2UoWT0+cmVxdWVzdEFuaW1hdGlvbkZyYW1lKFkpKTtsZXQgVz10aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcigiLm1haW5ib3giKSxhZT10aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcigiLmNoYXJ0Q29udGFpbmVyIik7aWYoIVd8fCFhZSl7Y29uc29sZS5lcnJvcigiQ2hhcnQgY29udGFpbmVycyBub3QgZm91bmQiKTtyZXR1cm59bGV0IFQ9d2luZG93LmdldENvbXB1dGVkU3R5bGUoYWUpLEo9cGFyc2VJbnQoVC5wYWRkaW5nVG9wLDEwKSxmZT1wYXJzZUludChULnBhZGRpbmdCb3R0b20sMTApLEw9cGFyc2VJbnQoVC5wYWRkaW5nTGVmdCwxMCksUT1wYXJzZUludChULnBhZGRpbmdSaWdodCwxMCksa2U9Vy5jbGllbnRXaWR0aC1MLVEsRz1XLm9mZnNldEhlaWdodC1KLWZlLEE9dGhpcy5zZXJpZXMubGVuZ3RoPjA/dGhpcy5zZXJpZXM6W3tuYW1lOiJjcHUiLGRhdGE6W3t4OiIyMDI1LTAxLTE1VDAzOjAwOjAwIix5OjI1fSx7eDoiMjAyNS0wMS0xNVQwNzowMDowMCIseTozMH0se3g6IjIwMjUtMDEtMTVUMTE6MDA6MDAiLHk6MjB9LHt4OiIyMDI1LTAxLTE1VDE1OjAwOjAwIix5OjM1fSx7eDoiMjAyNS0wMS0xNVQxOTowMDowMCIseToyNX1dfSx7bmFtZToibWVtb3J5IixkYXRhOlt7eDoiMjAyNS0wMS0xNVQwMzowMDowMCIseToxMH0se3g6IjIwMjUtMDEtMTVUMDc6MDA6MDAiLHk6MTJ9LHt4OiIyMDI1LTAxLTE1VDExOjAwOjAwIix5OjEwfSx7eDoiMjAyNS0wMS0xNVQxNTowMDowMCIseTozMH0se3g6IjIwMjUtMDEtMTVUMTk6MDA6MDAiLHk6NDB9XX1dO3RoaXMuaW50ZXJuYWxDaGFydERhdGE9QTtsZXQgRD0hdGhpcy5nb0JyaWdodCxSPUQ/ImRhcmsiOiJsaWdodCI7dmFyIE89e3NlcmllczpBLGNoYXJ0Ont3aWR0aDprZXx8MTAwLGhlaWdodDpHfHwxMDAsdHlwZToiYXJlYSIsYmFja2dyb3VuZDoidHJhbnNwYXJlbnQiLHRvb2xiYXI6e3Nob3c6ITF9LGFuaW1hdGlvbnM6e2VuYWJsZWQ6IXRoaXMucmVhbHRpbWVNb2RlLHNwZWVkOjQwMCxhbmltYXRlR3JhZHVhbGx5OntlbmFibGVkOiExLGRlbGF5OjB9LGR5bmFtaWNBbmltYXRpb246e2VuYWJsZWQ6IXRoaXMucmVhbHRpbWVNb2RlLHNwZWVkOjM1MH19LHpvb206e2VuYWJsZWQ6ITF9LHNlbGVjdGlvbjp7ZW5hYmxlZDohMX19LGRhdGFMYWJlbHM6e2VuYWJsZWQ6ITF9LHN0cm9rZTp7d2lkdGg6MixjdXJ2ZToic21vb3RoIn0seGF4aXM6e3R5cGU6ImRhdGV0aW1lIixsYWJlbHM6e2Zvcm1hdDoiSEg6bW06c3MiLGRhdGV0aW1lVVRDOiExLHN0eWxlOntjb2xvcnM6W0Q/ImhzbCgwIDAlIDYzLjklKSI6ImhzbCgwIDAlIDIwJSkiXSxmb250U2l6ZToiMTJweCIsZm9udEZhbWlseTonLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAiU2Vnb2UgVUkiLCBzYW5zLXNlcmlmJyxmb250V2VpZ2h0OiI0MDAifX0sYXhpc0JvcmRlcjp7c2hvdzohMX0sYXhpc1RpY2tzOntzaG93OiExfX0seWF4aXM6e21pbjowLG1heDp0aGlzLnlBeGlzU2NhbGluZz09PSJkeW5hbWljIj92b2lkIDA6dGhpcy55QXhpc01heCxsYWJlbHM6e2Zvcm1hdHRlcjp0aGlzLnlBeGlzRm9ybWF0dGVyLHN0eWxlOntjb2xvcnM6W0Q/ImhzbCgwIDAlIDYzLjklKSI6ImhzbCgwIDAlIDIwJSkiXSxmb250U2l6ZToiMTJweCIsZm9udEZhbWlseTonLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAiU2Vnb2UgVUkiLCBzYW5zLXNlcmlmJyxmb250V2VpZ2h0OiI0MDAifX0sYXhpc0JvcmRlcjp7c2hvdzohMX0sYXhpc1RpY2tzOntzaG93OiExfX0sdG9vbHRpcDp7c2hhcmVkOiEwLGludGVyc2VjdDohMSxmb2xsb3dDdXJzb3I6ITAseDp7Zm9ybWF0OiJkZC9NTS95eSBISDptbSJ9LGN1c3RvbTooe3NlcmllczpZLGRhdGFQb2ludEluZGV4OnVlLHc6eWV9KT0+e2xldCBVPXllLmNvbmZpZy50aGVtZS5tb2RlPT09ImRhcmsiLHE9VT8iaHNsKDAgMCUgOSUpIjoiaHNsKDAgMCUgMTAwJSkiLGllPVU/ImhzbCgwIDAlIDk1JSkiOiJoc2woMCAwJSA5JSkiLHdlPVU/ImhzbCgwIDAlIDE0LjklKSI6ImhzbCgwIDAlIDg5LjglKSIsZ2U9eWUuY29uZmlnLnlheGlzWzBdPy5sYWJlbHM/LmZvcm1hdHRlcnx8KHhlPT54ZS50b1N0cmluZygpKSxBZT1gPGRpdiBzdHlsZT0icGFkZGluZzogMTJweDsgYmFja2dyb3VuZDogJHtxfTsgY29sb3I6ICR7aWV9OyBib3JkZXItcmFkaXVzOiA2cHg7IGJveC1zaGFkb3c6IDAgMnB4IDhweCAwIGhzbCgwIDAlIDAlIC8gJHtVPyIwLjIiOiIwLjEifSk7IGJvcmRlcjogMXB4IHNvbGlkICR7d2V9O2ZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsICdTZWdvZSBVSScsIHNhbnMtc2VyaWY7IGZvbnQtc2l6ZTogMTJweDsiPmA7cmV0dXJuIFkuZm9yRWFjaCgoeGUsbmUpPT57bGV0IExlPXllLmdsb2JhbHMuc2VyaWVzTmFtZXNbbmVdLE9lPXhlW3VlXSxKZT15ZS5nbG9iYWxzLmNvbG9yc1tuZV0sdGU9Z2UoT2UpO0FlKz1gPGRpdiBzdHlsZT0iZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsgZ2FwOiA4cHg7IG1hcmdpbjogJHtuZT4wPyI2cHgiOiIwIn0gMDsiPgogICAgICAgICAgICAgIDxzcGFuIHN0eWxlPSJkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHdpZHRoOiAxMHB4OyBoZWlnaHQ6IDEwcHg7IGJhY2tncm91bmQ6ICR7SmV9OyBib3JkZXItcmFkaXVzOiAycHg7Ij48L3NwYW4+CiAgICAgICAgICAgICAgPHNwYW4gc3R5bGU9ImZvbnQtd2VpZ2h0OiA1MDA7Ij4ke0xlfTo8L3NwYW4+CiAgICAgICAgICAgICAgPHNwYW4gc3R5bGU9Im1hcmdpbi1sZWZ0OiBhdXRvOyBmb250LXdlaWdodDogNjAwOyI+JHt0ZX08L3NwYW4+CiAgICAgICAgICAgIDwvZGl2PmB9KSxBZSs9IjwvZGl2PiIsQWV9fSxncmlkOnt4YXhpczp7bGluZXM6e3Nob3c6ITF9fSx5YXhpczp7bGluZXM6e3Nob3c6ITB9fSxib3JkZXJDb2xvcjpEPyJoc2woMCAwJSAxNC45JSkiOiJoc2woMCAwJSA5NCUpIixzdHJva2VEYXNoQXJyYXk6MCxwYWRkaW5nOnt0b3A6MTAscmlnaHQ6MjAsYm90dG9tOjEwLGxlZnQ6MjB9fSxmaWxsOnt0eXBlOiJncmFkaWVudCIsZ3JhZGllbnQ6e3NoYWRlOkQ/ImRhcmsiOiJsaWdodCIsdHlwZToidmVydGljYWwiLHNoYWRlSW50ZW5zaXR5Oi4xLG9wYWNpdHlGcm9tOkQ/LjI6LjMsb3BhY2l0eVRvOjAsc3RvcHM6WzAsMTAwXX19LGNvbG9yczpEP3RoaXMuQ0hBUlRfQ09MT1JTLmRhcms6dGhpcy5DSEFSVF9DT0xPUlMubGlnaHQsdGhlbWU6e21vZGU6Un19O3RyeXt0aGlzLmNoYXJ0PW5ldyBIKHRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCIuY2hhcnRDb250YWluZXIiKSxPKSxhd2FpdCB0aGlzLmNoYXJ0LnJlbmRlcigpLGF3YWl0IG5ldyBQcm9taXNlKHVlPT5zZXRUaW1lb3V0KHVlLDEwMCkpLGF3YWl0IHRoaXMucmVzaXplQ2hhcnQoKTtsZXQgWT10aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcigiLm1haW5ib3giKTtZJiZ0aGlzLnJlc2l6ZU9ic2VydmVyJiYodGhpcy5yZXNpemVPYnNlcnZlci5kaXNjb25uZWN0KCksdGhpcy5yZXNpemVPYnNlcnZlci5vYnNlcnZlKFkpLHRoaXMuREVCVUdfUkVTSVpFJiZjb25zb2xlLmxvZygiRGVlc0NoYXJ0QXJlYSAtIFJlc2l6ZU9ic2VydmVyIGF0dGFjaGVkIHRvIG1haW5ib3giKSl9Y2F0Y2goWSl7Y29uc29sZS5lcnJvcigiRmFpbGVkIHRvIGluaXRpYWxpemUgY2hhcnQ6IixZKX19YXN5bmMgdXBkYXRlZChIKXtzdXBlci51cGRhdGVkKEgpLEguaGFzKCJnb0JyaWdodCIpJiZ0aGlzLmNoYXJ0JiZhd2FpdCB0aGlzLnVwZGF0ZUNoYXJ0VGhlbWUoKSxILmhhcygic2VyaWVzIikmJnRoaXMuY2hhcnQmJnRoaXMuc2VyaWVzLmxlbmd0aD4wJiZhd2FpdCB0aGlzLnVwZGF0ZVNlcmllcyh0aGlzLnNlcmllcyksSC5oYXMoInlBeGlzRm9ybWF0dGVyIikmJnRoaXMuY2hhcnQmJmF3YWl0IHRoaXMuY2hhcnQudXBkYXRlT3B0aW9ucyh7eWF4aXM6e2xhYmVsczp7Zm9ybWF0dGVyOnRoaXMueUF4aXNGb3JtYXR0ZXJ9fX0pLEguaGFzKCJyZWFsdGltZU1vZGUiKSYmdGhpcy5jaGFydCYmKGF3YWl0IHRoaXMuY2hhcnQudXBkYXRlT3B0aW9ucyh7Y2hhcnQ6e2FuaW1hdGlvbnM6e2VuYWJsZWQ6IXRoaXMucmVhbHRpbWVNb2RlLHNwZWVkOjQwMCxhbmltYXRlR3JhZHVhbGx5OntlbmFibGVkOiExLGRlbGF5OjB9LGR5bmFtaWNBbmltYXRpb246e2VuYWJsZWQ6IXRoaXMucmVhbHRpbWVNb2RlLHNwZWVkOjM1MH19fX0pLHRoaXMucmVhbHRpbWVNb2RlJiZ0aGlzLnJvbGxpbmdXaW5kb3c+MCYmdGhpcy5hdXRvU2Nyb2xsSW50ZXJ2YWw+MD90aGlzLnN0YXJ0QXV0b1Njcm9sbCgpOnRoaXMuc3RvcEF1dG9TY3JvbGwoKSksSC5oYXMoImF1dG9TY3JvbGxJbnRlcnZhbCIpJiZ0aGlzLmNoYXJ0JiYodGhpcy5zdG9wQXV0b1Njcm9sbCgpLHRoaXMucmVhbHRpbWVNb2RlJiZ0aGlzLnJvbGxpbmdXaW5kb3c+MCYmdGhpcy5hdXRvU2Nyb2xsSW50ZXJ2YWw+MCYmdGhpcy5zdGFydEF1dG9TY3JvbGwoKSksKEguaGFzKCJ5QXhpc1NjYWxpbmciKXx8SC5oYXMoInlBeGlzTWF4IikpJiZ0aGlzLmNoYXJ0JiZhd2FpdCB0aGlzLmNoYXJ0LnVwZGF0ZU9wdGlvbnMoe3lheGlzOnttaW46MCxtYXg6dGhpcy55QXhpc1NjYWxpbmc9PT0iZHluYW1pYyI/dm9pZCAwOnRoaXMueUF4aXNNYXh9fSl9YXN5bmMgdXBkYXRlU2VyaWVzKEgsVz0hMCl7aWYodGhpcy5jaGFydCl0cnl7aWYodGhpcy5pbnRlcm5hbENoYXJ0RGF0YT1ILHRoaXMucm9sbGluZ1dpbmRvdz4wJiZ0aGlzLnJlYWx0aW1lTW9kZSl7bGV0IFQ9RGF0ZS5ub3coKS10aGlzLnJvbGxpbmdXaW5kb3csSj1ILm1hcChmZT0+KHtuYW1lOmZlLm5hbWUsZGF0YTpmZS5kYXRhLmZpbHRlcihMPT50eXBlb2YgTD09Im9iamVjdCImJkwhPT1udWxsJiYieCJpbiBMP25ldyBEYXRlKEwueCkuZ2V0VGltZSgpPlQ6ITEpfSkpO2lmKEouc29tZShmZT0+ZmUuZGF0YS5sZW5ndGg+MCkpe2lmKHRoaXMueUF4aXNTY2FsaW5nPT09ImR5bmFtaWMiKXtsZXQgZmU9Si5mbGF0TWFwKEw9PkwuZGF0YS5tYXAoUT0+US55KSk7aWYoZmUubGVuZ3RoPjApe2xldCBMPU1hdGgubWF4KC4uLmZlKSxRPU1hdGguY2VpbChMKjEuMSk7YXdhaXQgdGhpcy5jaGFydC51cGRhdGVPcHRpb25zKHt5YXhpczp7bWluOjAsbWF4OlF9fSwhMSwhMSl9fWF3YWl0IHRoaXMuY2hhcnQudXBkYXRlU2VyaWVzKEosITEpfX1lbHNlIGF3YWl0IHRoaXMuY2hhcnQudXBkYXRlU2VyaWVzKEgsVyl9Y2F0Y2goYWUpe2NvbnNvbGUuZXJyb3IoIkZhaWxlZCB0byB1cGRhdGUgY2hhcnQgc2VyaWVzOiIsYWUpfX1hc3luYyB1cGRhdGVUaW1lV2luZG93KCl7aWYoIXRoaXMuY2hhcnR8fHRoaXMucm9sbGluZ1dpbmRvdzw9MClyZXR1cm47bGV0IEg9RGF0ZS5ub3coKSxXPUgtdGhpcy5yb2xsaW5nV2luZG93O2F3YWl0IHRoaXMuY2hhcnQudXBkYXRlT3B0aW9ucyh7eGF4aXM6e21pbjpXLG1heDpILGxhYmVsczp7Zm9ybWF0OiJISDptbTpzcyIsZGF0ZXRpbWVVVEM6ITEsc3R5bGU6e2NvbG9yczpbdGhpcy5nb0JyaWdodD8iaHNsKDAgMCUgMjAlKSI6ImhzbCgwIDAlIDYzLjklKSJdLGZvbnRTaXplOiIxMnB4Iixmb250RmFtaWx5OictYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsICJTZWdvZSBVSSIsIHNhbnMtc2VyaWYnLGZvbnRXZWlnaHQ6IjQwMCJ9fSx0aWNrQW1vdW50OjZ9fSwhMSwhMSl9YXN5bmMgYXBwZW5kRGF0YShIKXt0aGlzLmNoYXJ0JiZ0aGlzLmNoYXJ0LmFwcGVuZERhdGEoSCl9YXN5bmMgdXBkYXRlT3B0aW9ucyhILFcsYWUpe2lmKHRoaXMuY2hhcnQpcmV0dXJuIHRoaXMuY2hhcnQudXBkYXRlT3B0aW9ucyhILFcsYWUpfWFzeW5jIHJlc2l6ZUNoYXJ0KCl7aWYodGhpcy5jaGFydCl7dGhpcy5ERUJVR19SRVNJWkUmJmNvbnNvbGUubG9nKCJEZWVzQ2hhcnRBcmVhIC0gcmVzaXplQ2hhcnQgY2FsbGVkIik7dHJ5e2xldCBIPXRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCIubWFpbmJveCIpLFc9dGhpcy5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoIi5jaGFydENvbnRhaW5lciIpO2lmKCFIfHwhVylyZXR1cm47SC5vZmZzZXRIZWlnaHQ7bGV0IGFlPXdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKFcpLFQ9cGFyc2VJbnQoYWUucGFkZGluZ1RvcCwxMCksSj1wYXJzZUludChhZS5wYWRkaW5nQm90dG9tLDEwKSxmZT1wYXJzZUludChhZS5wYWRkaW5nTGVmdCwxMCksTD1wYXJzZUludChhZS5wYWRkaW5nUmlnaHQsMTApLFE9SC5jbGllbnRXaWR0aC1mZS1MLGtlPUgub2Zmc2V0SGVpZ2h0LVQtSjtRPjAmJmtlPjAmJih0aGlzLkRFQlVHX1JFU0laRSYmY29uc29sZS5sb2coIkRlZXNDaGFydEFyZWEgLSBVcGRhdGluZyBjaGFydCBkaW1lbnNpb25zOiIse3dpZHRoOlEsaGVpZ2h0OmtlfSksYXdhaXQgdGhpcy5jaGFydC51cGRhdGVPcHRpb25zKHtjaGFydDp7d2lkdGg6USxoZWlnaHQ6a2V9fSwhMCwhMSkpfWNhdGNoKEgpe2NvbnNvbGUuZXJyb3IoIkZhaWxlZCB0byByZXNpemUgY2hhcnQ6IixIKX19fWFzeW5jIGZvcmNlUmVzaXplKCl7YXdhaXQgdGhpcy5yZXNpemVDaGFydCgpfXN0YXJ0QXV0b1Njcm9sbCgpe3RoaXMuYXV0b1Njcm9sbFRpbWVyfHwodGhpcy5hdXRvU2Nyb2xsVGltZXI9d2luZG93LnNldEludGVydmFsKCgpPT57dGhpcy51cGRhdGVUaW1lV2luZG93KCl9LHRoaXMuYXV0b1Njcm9sbEludGVydmFsKSl9c3RvcEF1dG9TY3JvbGwoKXt0aGlzLmF1dG9TY3JvbGxUaW1lciYmKHdpbmRvdy5jbGVhckludGVydmFsKHRoaXMuYXV0b1Njcm9sbFRpbWVyKSx0aGlzLmF1dG9TY3JvbGxUaW1lcj1udWxsKX1hc3luYyB1cGRhdGVDaGFydFRoZW1lKCl7aWYoIXRoaXMuY2hhcnQpcmV0dXJuO2xldCBIPSF0aGlzLmdvQnJpZ2h0LFc9SD8iZGFyayI6ImxpZ2h0Ijthd2FpdCB0aGlzLmNoYXJ0LnVwZGF0ZU9wdGlvbnMoe3RoZW1lOnttb2RlOld9LGNvbG9yczpIP3RoaXMuQ0hBUlRfQ09MT1JTLmRhcms6dGhpcy5DSEFSVF9DT0xPUlMubGlnaHQseGF4aXM6e2xhYmVsczp7c3R5bGU6e2NvbG9yczpbSD8iaHNsKDAgMCUgNjMuOSUpIjoiaHNsKDAgMCUgMjAlKSJdfX19LHlheGlzOntsYWJlbHM6e3N0eWxlOntjb2xvcnM6W0g/ImhzbCgwIDAlIDYzLjklKSI6ImhzbCgwIDAlIDIwJSkiXX19fSxncmlkOntib3JkZXJDb2xvcjpIPyJoc2woMCAwJSAxNC45JSkiOiJoc2woMCAwJSA5NCUpIn0sZmlsbDp7Z3JhZGllbnQ6e3NoYWRlOkg/ImRhcmsiOiJsaWdodCIsb3BhY2l0eUZyb206SD8uMjouM319fSl9c3RhdGlje0JpKGEscil9fTtyZXR1cm4gVj1hfSkoKX0pO3ZhciBsSXI9bCgoKT0+e0ljdCgpfSk7dmFyIGNJcixkSXI9bCgoKT0+e1NlKCk7emEoKTtjSXI9KCk9PlNgCiAgICA8ZGVlcy1kZW1vd3JhcHBlciAucnVuQWZ0ZXJSZW5kZXI9JHthc3luYyBlPT57bGV0IHQ9ZS5xdWVyeVNlbGVjdG9yKCIjc3RydWN0dXJlZC1sb2ciKSxyPWUucXVlcnlTZWxlY3RvcigiI3Jhdy1sb2ciKSxhLGksbz1bIlNlcnZlciIsIkRhdGFiYXNlIiwiQVBJIiwiQXV0aCIsIkNhY2hlIiwiUXVldWUiLCJXZWJTb2NrZXQiLCJTY2hlZHVsZXIiXSxuPXtkZWJ1ZzpbIkxvYWRpbmcgbW9kdWxlOiB7e21vZHVsZX19IiwiQ2FjaGUgaGl0IGZvciBrZXk6IHt7a2V5fX0iLCJTUUwgcXVlcnkgZXhlY3V0ZWQgaW4ge3t0aW1lfX1tcyIsIlJlcXVlc3QgaGVhZGVyczoge3toZWFkZXJzfX0iLCJFbnZpcm9ubWVudCB2YXJpYWJsZSBsb2FkZWQ6IHt7dmFyfX0iXSxpbmZvOlsiUmVxdWVzdCByZWNlaXZlZDoge3ttZXRob2R9fSB7e3BhdGh9fSIsIlVzZXIge3t1c2VySWR9fSBhdXRoZW50aWNhdGVkIHN1Y2Nlc3NmdWxseSIsIlByb2Nlc3Npbmcgam9iIHt7am9iSWR9fSBmcm9tIHF1ZXVlIiwnU2NoZWR1bGVkIHRhc2sgInt7dGFza319IiBzdGFydGVkJywiV2ViU29ja2V0IGNvbm5lY3Rpb24gZXN0YWJsaXNoZWQgZnJvbSB7e2lwfX0iXSx3YXJuOlsiU2xvdyBxdWVyeSBkZXRlY3RlZDoge3txdWVyeX19ICh7e3RpbWV9fW1zKSIsIk1lbW9yeSB1c2FnZSBhdCB7e3BlcmNlbnR9fSUiLCJSYXRlIGxpbWl0IGFwcHJvYWNoaW5nIGZvciBJUCB7e2lwfX0iLCJEZXByZWNhdGVkIEFQSSBlbmRwb2ludCBjYWxsZWQ6IHt7ZW5kcG9pbnR9fSIsIkNlcnRpZmljYXRlIGV4cGlyZXMgaW4ge3tkYXlzfX0gZGF5cyJdLGVycm9yOlsiRGF0YWJhc2UgY29ubmVjdGlvbiBsb3N0OiB7e2Vycm9yfX0iLCJGYWlsZWQgdG8gcHJvY2VzcyByZXF1ZXN0OiB7e2Vycm9yfX0iLCJBdXRoZW50aWNhdGlvbiBmYWlsZWQgZm9yIHVzZXIge3t1c2VyfX0iLCJGaWxlIG5vdCBmb3VuZDoge3twYXRofX0iLCJTZXJ2aWNlIHVuYXZhaWxhYmxlOiB7e3NlcnZpY2V9fSJdLHN1Y2Nlc3M6WyJTZXJ2ZXIgc3RhcnRlZCBzdWNjZXNzZnVsbHkgb24gcG9ydCB7e3BvcnR9fSIsIkRhdGFiYXNlIG1pZ3JhdGlvbiBjb21wbGV0ZWQiLCJCYWNrdXAgY29tcGxldGVkOiB7e3NpemV9fSBNQiIsIlNTTCBjZXJ0aWZpY2F0ZSByZW5ld2VkIiwiSGVhbHRoIGNoZWNrIHBhc3NlZDogYWxsIHN5c3RlbXMgb3BlcmF0aW9uYWwiXX0scz1bIlx4MUJbOTBtMjAyNC0wMS0xNVQxMDoyMzo0NS4xMjNaXHgxQlswbSBceDFCWzM2bUlORk9ceDFCWzBtICBbbmdpbnhdIEdFVCAvYXBpL2hlYWx0aCAyMDAgLSAybXMiLCJceDFCWzkwbTIwMjQtMDEtMTVUMTA6MjM6NDUuNDU2Wlx4MUJbMG0gXHgxQlszM21XQVJOXHgxQlswbSAgW3JlZGlzXSBDb25uZWN0aW9uIHBvb2wgcnVubmluZyBsb3c6IDMvMTAiLCJceDFCWzkwbTIwMjQtMDEtMTVUMTA6MjM6NDUuNzg5Wlx4MUJbMG0gXHgxQlszMW1FUlJPUlx4MUJbMG0gW21vbmdvZGJdIFF1ZXJ5IHRpbWVvdXQgYWZ0ZXIgMzAwMDBtcyIsIlx4MUJbOTBtMjAyNC0wMS0xNVQxMDoyMzo0Ni4wMTJaXHgxQlswbSBceDFCWzM2bUlORk9ceDFCWzBtICBbYXBwXSBQcm9jZXNzaW5nIGJhdGNoIGpvYiAje3tqb2JJZH19IiwiXHgxQls5MG0yMDI0LTAxLTE1VDEwOjIzOjQ2LjM0NVpceDFCWzBtIFx4MUJbMzJtT0tceDFCWzBtICAgIFtoZWFsdGhdIEFsbCBzZXJ2aWNlcyBoZWFsdGh5IiwiXHgxQls5MG0yMDI0LTAxLTE1VDEwOjIzOjQ2LjY3OFpceDFCWzBtIFx4MUJbMzZtSU5GT1x4MUJbMG0gIFtrYWZrYV0gTWVzc2FnZSBjb25zdW1lZCBmcm9tIHRvcGljOiBldmVudHMiLCJceDFCWzkwbTIwMjQtMDEtMTVUMTA6MjM6NDcuMDAxWlx4MUJbMG0gXHgxQlszNW1ERUJVR1x4MUJbMG0gW2dycGNdIFJlcXVlc3QgcmVjZWl2ZWQ6IEdldFVzZXIoaWQ9e3t1c2VySWR9fSkiLCJceDFCWzkwbTIwMjQtMDEtMTVUMTA6MjM6NDcuMjM0Wlx4MUJbMG0gXHgxQlszMW1FUlJPUlx4MUJbMG0gW2F1dGhdIFRva2VuIHZhbGlkYXRpb24gZmFpbGVkOiBleHBpcmVkIiwiXHgxQls5MG0yMDI0LTAxLTE1VDEwOjIzOjQ3LjU2N1pceDFCWzBtIFx4MUJbMzNtV0FSTlx4MUJbMG0gIFtyYXRlLWxpbWl0XSBJUCB7e2lwfX0gYXBwcm9hY2hpbmcgcmF0ZSBsaW1pdCIsIlx4MUJbOTBtMjAyNC0wMS0xNVQxMDoyMzo0Ny44OTBaXHgxQlswbSBceDFCWzM2bUlORk9ceDFCWzBtICBbd2Vic29ja2V0XSBDbGllbnQgY29ubmVjdGVkOiBzZXNzaW9uPXt7c2Vzc2lvbn19IixgXHgxQlszMW1FcnJvcjogQ29ubmVjdGlvbiByZWZ1c2VkXHgxQlswbQogICAgYXQgVGNwQ29ubmVjdGlvbi5jb25uZWN0ICgvYXBwL25vZGVfbW9kdWxlcy9wZy9saWIvY29ubmVjdGlvbi5qczoxMjoxNSkKICAgIGF0IFBvb2wuY29ubmVjdCAoL2FwcC9ub2RlX21vZHVsZXMvcGcvbGliL3Bvb2wuanM6NDU6MjMpCiAgICBhdCBhc3luYyBEYXRhYmFzZVNlcnZpY2UucXVlcnkgKC9hcHAvc3JjL2RiL3NlcnZpY2UudHM6ODk6MTIpYF0sYz0oKT0+e2xldCB4PVsiZGVidWciLCJpbmZvIiwid2FybiIsImVycm9yIiwic3VjY2VzcyJdLGc9Wy4yLC41LC4xNSwuMSwuMDVdLHY9TWF0aC5yYW5kb20oKSx3PTAsTT0iaW5mbyI7Zm9yKGxldCAkPTA7JDxnLmxlbmd0aDskKyspaWYodys9Z1skXSx2PHcpe009eFskXTticmVha31sZXQgRj1vW01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSpvLmxlbmd0aCldLEM9bltNXSxOPUNbTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKkMubGVuZ3RoKV0ucmVwbGFjZSgie3ttb2R1bGV9fSIsWyJleHByZXNzIiwibW9uZ29vc2UiLCJyZWRpcyIsInNvY2tldC5pbyJdW01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSo0KV0pLnJlcGxhY2UoInt7a2V5fX0iLCJ1c2VyOiIrTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKjFlMykpLnJlcGxhY2UoInt7dGltZX19IixTdHJpbmcoTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKjUwMCkrNTApKS5yZXBsYWNlKCJ7e2hlYWRlcnN9fSIsIkNvbnRlbnQtVHlwZTogYXBwbGljYXRpb24vanNvbiwgQXV0aG9yaXphdGlvbjogQmVhcmVyIC4uLiIpLnJlcGxhY2UoInt7dmFyfX0iLFsiTk9ERV9FTlYiLCJEQVRBQkFTRV9VUkwiLCJBUElfS0VZIiwiUE9SVCJdW01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSo0KV0pLnJlcGxhY2UoInt7bWV0aG9kfX0iLFsiR0VUIiwiUE9TVCIsIlBVVCIsIkRFTEVURSJdW01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSo0KV0pLnJlcGxhY2UoInt7cGF0aH19IixbIi9hcGkvdXNlcnMiLCIvYXBpL2F1dGgvbG9naW4iLCIvYXBpL3Byb2R1Y3RzIiwiL2hlYWx0aCJdW01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSo0KV0pLnJlcGxhY2UoInt7dXNlcklkfX0iLFN0cmluZyhNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqMWU0KSkpLnJlcGxhY2UoInt7am9iSWR9fSIsImpvYl8iK01hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnN1YnN0cmluZygyLDExKSkucmVwbGFjZSgie3t0YXNrfX0iLFsiY2xlYW51cCIsImJhY2t1cCIsInJlcG9ydC1nZW5lcmF0aW9uIiwiY2FjaGUtcmVmcmVzaCJdW01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSo0KV0pLnJlcGxhY2UoInt7aXB9fSIsYDE5Mi4xNjguMS4ke01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSoyNTUpfWApLnJlcGxhY2UoInt7cXVlcnl9fSIsIlNFTEVDVCAqIEZST00gdXNlcnMgV0hFUkUgLi4uIikucmVwbGFjZSgie3twZXJjZW50fX0iLFN0cmluZyhNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqMzApKzcwKSkucmVwbGFjZSgie3tlbmRwb2ludH19IiwiL2FwaS92MS9sZWdhY3kiKS5yZXBsYWNlKCJ7e2RheXN9fSIsU3RyaW5nKE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSozMCkrMSkpLnJlcGxhY2UoInt7ZXJyb3J9fSIsWyJFQ09OTlJFRlVTRUQiLCJFVElNRURPVVQiLCJFTk9URk9VTkQiXVtNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqMyldKS5yZXBsYWNlKCJ7e3VzZXJ9fSIsInVzZXJfIitNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqMWUzKSkucmVwbGFjZSgie3tzZXJ2aWNlfX0iLFsiUmVkaXMiLCJNb25nb0RCIiwiRWxhc3RpY1NlYXJjaCJdW01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSozKV0pLnJlcGxhY2UoInt7cG9ydH19IixTdHJpbmcoM2UzK01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSoxMCkpKS5yZXBsYWNlKCJ7e3NpemV9fSIsU3RyaW5nKE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSo1MDApKzEwMCkpO3QuYWRkTG9nKE0sTixGKX0sZD0oKT0+e2xldCB4PXNbTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKnMubGVuZ3RoKV0sZz1uZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCksdj14LnJlcGxhY2UoLzIwMjQtMDEtMTVUMTA6MjM6XGR7Mn1cLlxkezN9Wi9nLGcpLnJlcGxhY2UoInt7am9iSWR9fSIsU3RyaW5nKE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSoxZTQpKSkucmVwbGFjZSgie3t1c2VySWR9fSIsU3RyaW5nKE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSoxZTQpKSkucmVwbGFjZSgie3tpcH19IixgMTkyLjE2OC4xLiR7TWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKjI1NSl9YCkucmVwbGFjZSgie3tzZXNzaW9ufX0iLE1hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnN1YnN0cmluZygyLDExKSk7ci53cml0ZWxuUmF3KHYpfSxmPSgpPT57aWYoIWEpe2xldCB4PSgpPT57YygpO2xldCBnPU1hdGgucmFuZG9tKCkqMmUzKzUwMDthPXdpbmRvdy5zZXRUaW1lb3V0KCgpPT57YSYmeCgpfSxnKX07eCgpfX0sdT0oKT0+e2EmJih3aW5kb3cuY2xlYXJUaW1lb3V0KGEpLGE9bnVsbCl9LHA9KCk9PntpZighaSl7bGV0IHg9KCk9PntkKCk7bGV0IGc9TWF0aC5yYW5kb20oKSoxZTMrMjAwO2k9d2luZG93LnNldFRpbWVvdXQoKCk9PntpJiZ4KCl9LGcpfTt4KCl9fSxoPSgpPT57aSYmKHdpbmRvdy5jbGVhclRpbWVvdXQoaSksaT1udWxsKX07ZS5xdWVyeVNlbGVjdG9yQWxsKCJkZWVzLWJ1dHRvbiIpLmZvckVhY2goeD0+e3N3aXRjaCh4LnRleHRDb250ZW50Py50cmltKCkpe2Nhc2UiQWRkIFN0cnVjdHVyZWQgTG9nIjp4LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwoKT0+YygpKTticmVhaztjYXNlIlN0YXJ0IFN0cnVjdHVyZWQiOnguYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCgpPT5mKCkpO2JyZWFrO2Nhc2UiU3RvcCBTdHJ1Y3R1cmVkIjp4LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwoKT0+dSgpKTticmVhaztjYXNlIkFkZCBEb2NrZXIgTG9nIjp4LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwoKT0+ZCgpKTticmVhaztjYXNlIlN0YXJ0IERvY2tlciI6eC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKCk9PnAoKSk7YnJlYWs7Y2FzZSJTdG9wIERvY2tlciI6eC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKCk9PmgoKSk7YnJlYWt9fSl9fT4KICAgICAgPHN0eWxlPgogICAgICAgICR7bGVgCiAgICAgICAgICAuZGVtb0JveCB7CiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk1JSkiLCJoc2woMCAwJSA1JSkiKX07CiAgICAgICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgICAgIHBhZGRpbmc6IDQwcHg7CiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgICAgIGdhcDogMjRweDsKICAgICAgICAgIH0KICAgICAgICAgIC5zZWN0aW9uIHsKICAgICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICAgICAgZ2FwOiAxMnB4OwogICAgICAgICAgfQogICAgICAgICAgLnNlY3Rpb24tdGl0bGUgewogICAgICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDklKSIsImhzbCgwIDAlIDk1JSkiKX07CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdHZWlzdCBTYW5zJywgc2Fucy1zZXJpZjsKICAgICAgICAgIH0KICAgICAgICAgIC5zZWN0aW9uLWRlc2NyaXB0aW9uIHsKICAgICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE1LjQgMTYuMyUgNDYuOSUpIiwiaHNsKDIxNSAyMC4yJSA2NS4xJSkiKX07CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdHZWlzdCBTYW5zJywgc2Fucy1zZXJpZjsKICAgICAgICAgIH0KICAgICAgICAgIC5jb250cm9scyB7CiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICAgIGdhcDogMTBweDsKICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwOwogICAgICAgICAgfQogICAgICAgIGB9CiAgICAgIDwvc3R5bGU+CiAgICA8ZGl2IGNsYXNzPSJkZW1vQm94Ij4KICAgICAgPCEtLSBTdHJ1Y3R1cmVkIExvZ3MgU2VjdGlvbiAtLT4KICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbiI+CiAgICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi10aXRsZSI+U3RydWN0dXJlZCBMb2dzIChJTG9nRW50cnkpPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi1kZXNjcmlwdGlvbiI+CiAgICAgICAgICBTdHJ1Y3R1cmVkIGxvZyBlbnRyaWVzIHdpdGggbGV2ZWwsIG1lc3NhZ2UsIGFuZCBzb3VyY2UuIFN1cHBvcnRzIHNlYXJjaCBhbmQga2V5d29yZCBoaWdobGlnaHRpbmcuCiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iY29udHJvbHMiPgogICAgICAgICAgPGRlZXMtYnV0dG9uPkFkZCBTdHJ1Y3R1cmVkIExvZzwvZGVlcy1idXR0b24+CiAgICAgICAgICA8ZGVlcy1idXR0b24+U3RhcnQgU3RydWN0dXJlZDwvZGVlcy1idXR0b24+CiAgICAgICAgICA8ZGVlcy1idXR0b24+U3RvcCBTdHJ1Y3R1cmVkPC9kZWVzLWJ1dHRvbj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGVlcy1jaGFydC1sb2cKICAgICAgICAgIGlkPSJzdHJ1Y3R1cmVkLWxvZyIKICAgICAgICAgIC5sYWJlbD0keyJQcm9kdWN0aW9uIFNlcnZlciBMb2dzIn0KICAgICAgICAgIC5oaWdobGlnaHRLZXl3b3Jkcz0ke1siZXJyb3IiLCJmYWlsZWQiLCJ0aW1lb3V0Il19CiAgICAgICAgICAuc2hvd01ldHJpY3M9JHshMH0KICAgICAgICA+PC9kZWVzLWNoYXJ0LWxvZz4KICAgICAgPC9kaXY+CgogICAgICA8IS0tIFJhdyBMb2dzIFNlY3Rpb24gLS0+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24iPgogICAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tdGl0bGUiPlJhdyBMb2dzIChEb2NrZXIvQ29udGFpbmVyIFN0eWxlKTwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tZGVzY3JpcHRpb24iPgogICAgICAgICAgUmF3IGxvZyBvdXRwdXQgd2l0aCBBTlNJIGVzY2FwZSBzZXF1ZW5jZXMgZm9yIHJlYWwgRG9ja2VyL2NvbnRhaW5lciBsb2dzLgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRyb2xzIj4KICAgICAgICAgIDxkZWVzLWJ1dHRvbj5BZGQgRG9ja2VyIExvZzwvZGVlcy1idXR0b24+CiAgICAgICAgICA8ZGVlcy1idXR0b24+U3RhcnQgRG9ja2VyPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIDxkZWVzLWJ1dHRvbj5TdG9wIERvY2tlcjwvZGVlcy1idXR0b24+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRlZXMtY2hhcnQtbG9nCiAgICAgICAgICBpZD0icmF3LWxvZyIKICAgICAgICAgIC5sYWJlbD0keyJEb2NrZXIgQ29udGFpbmVyIExvZ3MifQogICAgICAgICAgLm1vZGU9JHsicmF3In0KICAgICAgICAgIC5zaG93TWV0cmljcz0keyExfQogICAgICAgID48L2RlZXMtY2hhcnQtbG9nPgogICAgICA8L2Rpdj4KICAgIDwvZGl2PgogICAgPC9kZWVzLWRlbW93cmFwcGVyPgogIGB9KTt2YXIgWW4sSWEsdUlyLGZJcj1sKCgpPT57U2UoKTtlcigpO2RJcigpO290KCk7YzMoKTtZbj1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LElhPWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSx1SXI9KCgpPT57bGV0IGU9W3plKCJkZWVzLWNoYXJ0LWxvZyIpXSx0LHI9W10sYSxpPURlLG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdLHUscD1bXSxoPVtdLGIseD1bXSxnPVtdLHYsdz1bXSxNPVtdLEYsQz1bXSxrPVtdLE4sJD1bXSxJPVtdLEIsej1bXSx5PVtdLEUsXz1bXSxQPVtdLFYsSD1bXSxXPVtdLGFlLFQ9W10sSj1bXTt2YXIgZmU9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCBMPXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO289W2ooKV0sYz1baih7dHlwZTpTdHJpbmd9KV0sdT1baih7dHlwZTpBcnJheX0pXSxiPVtqKHt0eXBlOkJvb2xlYW59KV0sdj1baih7dHlwZTpOdW1iZXJ9KV0sRj1baih7dHlwZTpBcnJheX0pXSxOPVtqKHt0eXBlOkJvb2xlYW59KV0sQj1bcmUoKV0sRT1bcmUoKV0sVj1bcmUoKV0sYWU9W3JlKCldLFluKHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibGFiZWwiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOlE9PiJsYWJlbCJpbiBRLGdldDpRPT5RLmxhYmVsLHNldDooUSxrZSk9PntRLmxhYmVsPWtlfX0sbWV0YWRhdGE6TH0sbixzKSxZbih0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im1vZGUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOlE9PiJtb2RlImluIFEsZ2V0OlE9PlEubW9kZSxzZXQ6KFEsa2UpPT57US5tb2RlPWtlfX0sbWV0YWRhdGE6TH0sZCxmKSxZbih0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImxvZ0VudHJpZXMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOlE9PiJsb2dFbnRyaWVzImluIFEsZ2V0OlE9PlEubG9nRW50cmllcyxzZXQ6KFEsa2UpPT57US5sb2dFbnRyaWVzPWtlfX0sbWV0YWRhdGE6TH0scCxoKSxZbih0aGlzLG51bGwsYix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImF1dG9TY3JvbGwiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOlE9PiJhdXRvU2Nyb2xsImluIFEsZ2V0OlE9PlEuYXV0b1Njcm9sbCxzZXQ6KFEsa2UpPT57US5hdXRvU2Nyb2xsPWtlfX0sbWV0YWRhdGE6TH0seCxnKSxZbih0aGlzLG51bGwsdix7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im1heEVudHJpZXMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOlE9PiJtYXhFbnRyaWVzImluIFEsZ2V0OlE9PlEubWF4RW50cmllcyxzZXQ6KFEsa2UpPT57US5tYXhFbnRyaWVzPWtlfX0sbWV0YWRhdGE6TH0sdyxNKSxZbih0aGlzLG51bGwsRix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImhpZ2hsaWdodEtleXdvcmRzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpRPT4iaGlnaGxpZ2h0S2V5d29yZHMiaW4gUSxnZXQ6UT0+US5oaWdobGlnaHRLZXl3b3JkcyxzZXQ6KFEsa2UpPT57US5oaWdobGlnaHRLZXl3b3Jkcz1rZX19LG1ldGFkYXRhOkx9LEMsayksWW4odGhpcyxudWxsLE4se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzaG93TWV0cmljcyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6UT0+InNob3dNZXRyaWNzImluIFEsZ2V0OlE9PlEuc2hvd01ldHJpY3Msc2V0OihRLGtlKT0+e1Euc2hvd01ldHJpY3M9a2V9fSxtZXRhZGF0YTpMfSwkLEkpLFluKHRoaXMsbnVsbCxCLHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2VhcmNoUXVlcnkiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOlE9PiJzZWFyY2hRdWVyeSJpbiBRLGdldDpRPT5RLnNlYXJjaFF1ZXJ5LHNldDooUSxrZSk9PntRLnNlYXJjaFF1ZXJ5PWtlfX0sbWV0YWRhdGE6TH0seix5KSxZbih0aGlzLG51bGwsRSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImZpbHRlck1vZGUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOlE9PiJmaWx0ZXJNb2RlImluIFEsZ2V0OlE9PlEuZmlsdGVyTW9kZSxzZXQ6KFEsa2UpPT57US5maWx0ZXJNb2RlPWtlfX0sbWV0YWRhdGE6TH0sXyxQKSxZbih0aGlzLG51bGwsVix7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im1ldHJpY3MiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOlE9PiJtZXRyaWNzImluIFEsZ2V0OlE9PlEubWV0cmljcyxzZXQ6KFEsa2UpPT57US5tZXRyaWNzPWtlfX0sbWV0YWRhdGE6TH0sSCxXKSxZbih0aGlzLG51bGwsYWUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ0ZXJtaW5hbFJlYWR5IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpRPT4idGVybWluYWxSZWFkeSJpbiBRLGdldDpRPT5RLnRlcm1pbmFsUmVhZHksc2V0OihRLGtlKT0+e1EudGVybWluYWxSZWFkeT1rZX19LG1ldGFkYXRhOkx9LFQsSiksWW4obnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6TH0sbnVsbCxyKSxmZT1hPXQudmFsdWUsTCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpMfSl9c3RhdGljIGRlbW89Y0lyO3N0YXRpYyBkZW1vR3JvdXBzPVsiQ2hhcnQiLCJXb3Jrc3BhY2UiXTsjZT1JYSh0aGlzLG4sIlNlcnZlciBMb2dzIik7Z2V0IGxhYmVsKCl7cmV0dXJuIHRoaXMuI2V9c2V0IGxhYmVsKEwpe3RoaXMuI2U9TH0jdD0oSWEodGhpcyxzKSxJYSh0aGlzLGQsInN0cnVjdHVyZWQiKSk7Z2V0IG1vZGUoKXtyZXR1cm4gdGhpcy4jdH1zZXQgbW9kZShMKXt0aGlzLiN0PUx9I3I9KElhKHRoaXMsZiksSWEodGhpcyxwLFtdKSk7Z2V0IGxvZ0VudHJpZXMoKXtyZXR1cm4gdGhpcy4jcn1zZXQgbG9nRW50cmllcyhMKXt0aGlzLiNyPUx9I2E9KElhKHRoaXMsaCksSWEodGhpcyx4LCEwKSk7Z2V0IGF1dG9TY3JvbGwoKXtyZXR1cm4gdGhpcy4jYX1zZXQgYXV0b1Njcm9sbChMKXt0aGlzLiNhPUx9I2k9KElhKHRoaXMsZyksSWEodGhpcyx3LDFlNCkpO2dldCBtYXhFbnRyaWVzKCl7cmV0dXJuIHRoaXMuI2l9c2V0IG1heEVudHJpZXMoTCl7dGhpcy4jaT1MfSNvPShJYSh0aGlzLE0pLElhKHRoaXMsQyxbXSkpO2dldCBoaWdobGlnaHRLZXl3b3Jkcygpe3JldHVybiB0aGlzLiNvfXNldCBoaWdobGlnaHRLZXl3b3JkcyhMKXt0aGlzLiNvPUx9I249KElhKHRoaXMsayksSWEodGhpcywkLCEwKSk7Z2V0IHNob3dNZXRyaWNzKCl7cmV0dXJuIHRoaXMuI259c2V0IHNob3dNZXRyaWNzKEwpe3RoaXMuI249TH0jcz0oSWEodGhpcyxJKSxJYSh0aGlzLHosIiIpKTtnZXQgc2VhcmNoUXVlcnkoKXtyZXR1cm4gdGhpcy4jc31zZXQgc2VhcmNoUXVlcnkoTCl7dGhpcy4jcz1MfSNsPShJYSh0aGlzLHkpLElhKHRoaXMsXywhMSkpO2dldCBmaWx0ZXJNb2RlKCl7cmV0dXJuIHRoaXMuI2x9c2V0IGZpbHRlck1vZGUoTCl7dGhpcy4jbD1MfSNjPShJYSh0aGlzLFApLElhKHRoaXMsSCx7ZGVidWc6MCxpbmZvOjAsd2FybjowLGVycm9yOjAsc3VjY2VzczowLHRvdGFsOjAscmF0ZTowfSkpO2dldCBtZXRyaWNzKCl7cmV0dXJuIHRoaXMuI2N9c2V0IG1ldHJpY3MoTCl7dGhpcy4jYz1MfSNkPShJYSh0aGlzLFcpLElhKHRoaXMsVCwhMSkpO2dldCB0ZXJtaW5hbFJlYWR5KCl7cmV0dXJuIHRoaXMuI2R9c2V0IHRlcm1pbmFsUmVhZHkoTCl7dGhpcy4jZD1MfWxvZ0J1ZmZlcj0oSWEodGhpcyxKKSxbXSk7dHJhaWxpbmdIaWRkZW5Db3VudD0wO3Rlcm1pbmFsPW51bGw7Zml0QWRkb249bnVsbDtzZWFyY2hBZGRvbj1udWxsO3Jlc2l6ZU9ic2VydmVyPW51bGw7dGVybWluYWxUaGVtZVN1YnNjcmlwdGlvbj1udWxsO2RvbXRvb2xzSW5zdGFuY2U9bnVsbDtyYXRlQnVmZmVyPVtdO3JhdGVJbnRlcnZhbD1udWxsO3N0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgOmhvc3QgewogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsICdTZWdvZSBVSScsIHNhbnMtc2VyaWY7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAzLjklKSIsImhzbCgwIDAlIDk4JSkiKX07CiAgICAgIH0KCiAgICAgIC5tYWluYm94IHsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgaGVpZ2h0OiA0MDBweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTAwJSkiLCJoc2woMCAwJSAzLjklKSIpfTsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgfQoKICAgICAgLmhlYWRlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk3JSkiLCJoc2woMCAwJSA3JSkiKX07CiAgICAgICAgcGFkZGluZzogOHB4IDEycHg7CiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OS44JSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogMTJweDsKICAgICAgICBmbGV4LXNocmluazogMDsKICAgICAgICBmbGV4LXdyYXA6IHdyYXA7CiAgICAgIH0KCiAgICAgIC50aXRsZSB7CiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5JSkiLCJoc2woMCAwJSA5NSUpIil9OwogICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgICAgIH0KCiAgICAgIC5zZWFyY2gtYm94IHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgZ2FwOiA0cHg7CiAgICAgICAgZmxleDogMTsKICAgICAgICBtaW4td2lkdGg6IDE1MHB4OwogICAgICAgIG1heC13aWR0aDogMzAwcHg7CiAgICAgIH0KCiAgICAgIC5zZWFyY2gtYm94IGlucHV0IHsKICAgICAgICBmbGV4OiAxOwogICAgICAgIHBhZGRpbmc6IDRweCA4cHg7CiAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OS44JSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAxMDAlKSIsImhzbCgwIDAlIDklKSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDklKSIsImhzbCgwIDAlIDk1JSkiKX07CiAgICAgICAgb3V0bGluZTogbm9uZTsKICAgICAgfQoKICAgICAgLnNlYXJjaC1ib3ggaW5wdXQ6Zm9jdXMgewogICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMjIuMiA0Ny40JSA1MS4yJSkiLCJoc2woMjE3LjIgOTEuMiUgNTkuOCUpIil9OwogICAgICB9CgogICAgICAuc2VhcmNoLWJveCBpbnB1dDo6cGxhY2Vob2xkZXIgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNjMuOSUpIiwiaHNsKDAgMCUgNDUuMSUpIil9OwogICAgICB9CgogICAgICAuc2VhcmNoLW5hdiB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBnYXA6IDJweDsKICAgICAgfQoKICAgICAgLnNlYXJjaC1uYXYgYnV0dG9uIHsKICAgICAgICBwYWRkaW5nOiA0cHggNnB4OwogICAgICAgIGZvbnQtc2l6ZTogMTFweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTAwJSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgwIDAlIDg5LjglKSIsImhzbCgwIDAlIDE0LjklKSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA0NS4xJSkiLCJoc2woMCAwJSA2My45JSkiKX07CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIGxpbmUtaGVpZ2h0OiAxOwogICAgICB9CgogICAgICAuc2VhcmNoLW5hdiBidXR0b246aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5NS4xJSkiLCJoc2woMCAwJSAyMCUpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTUlKSIsImhzbCgwIDAlIDkzLjklKSIpfTsKICAgICAgfQoKICAgICAgLmZpbHRlci10b2dnbGUgewogICAgICAgIHBhZGRpbmc6IDRweCA4cHg7CiAgICAgICAgZm9udC1zaXplOiAxMXB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDEwMCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OS44JSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNDUuMSUpIiwiaHNsKDAgMCUgNjMuOSUpIil9OwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXM7CiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKICAgICAgfQoKICAgICAgLmZpbHRlci10b2dnbGU6aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5NS4xJSkiLCJoc2woMCAwJSAyMCUpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTUlKSIsImhzbCgwIDAlIDkzLjklKSIpfTsKICAgICAgfQoKICAgICAgLmZpbHRlci10b2dnbGUuYWN0aXZlIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDQ1IDkzJSA0NyUpIiwiaHNsKDQ1IDkzJSA0NyUpIil9OwogICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoImhzbCg0NSA5MyUgNDclKSIsImhzbCg0NSA5MyUgNDclKSIpfTsKICAgICAgICBjb2xvcjogaHNsKDAgMCUgOSUpOwogICAgICB9CgogICAgICAuY29udHJvbHMgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZ2FwOiA2cHg7CiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87CiAgICAgIH0KCiAgICAgIC5jb250cm9sLWJ1dHRvbiB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDEwMCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OS44JSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgIHBhZGRpbmc6IDRweCAxMHB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNDUuMSUpIiwiaHNsKDAgMCUgNjMuOSUpIil9OwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXM7CiAgICAgIH0KCiAgICAgIC5jb250cm9sLWJ1dHRvbjpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk1LjElKSIsImhzbCgwIDAlIDIwJSkiKX07CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNzkuOCUpIiwiaHNsKDAgMCUgMjUlKSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDE1JSkiLCJoc2woMCAwJSA5My45JSkiKX07CiAgICAgIH0KCiAgICAgIC5jb250cm9sLWJ1dHRvbi5hY3RpdmUgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjIyLjIgNDcuNCUgNTEuMiUpIiwiaHNsKDIxNy4yIDkxLjIlIDU5LjglKSIpfTsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjIyLjIgNDcuNCUgNTEuMiUpIiwiaHNsKDIxNy4yIDkxLjIlIDU5LjglKSIpfTsKICAgICAgICBjb2xvcjogd2hpdGU7CiAgICAgIH0KCiAgICAgIC50ZXJtaW5hbC1jb250YWluZXIgewogICAgICAgIGZsZXg6IDE7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICBwYWRkaW5nOiA4cHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDEwMCUpIiwiaHNsKDAgMCUgMy45JSkiKX07CiAgICAgIH0KCiAgICAgIC50ZXJtaW5hbC1jb250YWluZXIgLnh0ZXJtIHsKICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgIH0KCiAgICAgIC5sb2FkaW5nLXN0YXRlIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNDUuMSUpIiwiaHNsKDAgMCUgNjMuOSUpIil9OwogICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsKICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgIH0KCiAgICAgIC5tZXRyaWNzLWJhciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk3JSkiLCJoc2woMCAwJSA3JSkiKX07CiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OS44JSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgcGFkZGluZzogNnB4IDEycHg7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBnYXA6IDE2cHg7CiAgICAgICAgZm9udC1zaXplOiAxMXB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgIH0KCiAgICAgIC5tZXRyaWMgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDRweDsKICAgICAgfQoKICAgICAgLm1ldHJpYzo6YmVmb3JlIHsKICAgICAgICBjb250ZW50OiAnJzsKICAgICAgICB3aWR0aDogOHB4OwogICAgICAgIGhlaWdodDogOHB4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsKICAgICAgfQoKICAgICAgLm1ldHJpYy5lcnJvcjo6YmVmb3JlIHsKICAgICAgICBiYWNrZ3JvdW5kOiBoc2woMCA4NC4yJSA2MC4yJSk7CiAgICAgIH0KCiAgICAgIC5tZXRyaWMud2Fybjo6YmVmb3JlIHsKICAgICAgICBiYWNrZ3JvdW5kOiBoc2woMjUgOTUlIDUzJSk7CiAgICAgIH0KCiAgICAgIC5tZXRyaWMuaW5mbzo6YmVmb3JlIHsKICAgICAgICBiYWNrZ3JvdW5kOiBoc2woMjIyLjIgNDcuNCUgNTEuMiUpOwogICAgICB9CgogICAgICAubWV0cmljLnN1Y2Nlc3M6OmJlZm9yZSB7CiAgICAgICAgYmFja2dyb3VuZDogaHNsKDE0Mi4xIDc2LjIlIDM2LjMlKTsKICAgICAgfQoKICAgICAgLm1ldHJpYy5kZWJ1Zzo6YmVmb3JlIHsKICAgICAgICBiYWNrZ3JvdW5kOiBoc2woMCAwJSA2My45JSk7CiAgICAgIH0KCiAgICAgIC5tZXRyaWMucmF0ZSB7CiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA0NS4xJSkiLCJoc2woMCAwJSA2My45JSkiKX07CiAgICAgIH0KCiAgICAgIC5tZXRyaWMucmF0ZTo6YmVmb3JlIHsKICAgICAgICBkaXNwbGF5OiBub25lOwogICAgICB9CiAgICBgXTtjb25zdHJ1Y3Rvcigpe3N1cGVyKCksa2Euc2V0dXAoKX1yZW5kZXIoKXtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0ibWFpbmJveCI+CiAgICAgICAgPGRpdiBjbGFzcz0iaGVhZGVyIj4KICAgICAgICAgIDxkaXYgY2xhc3M9InRpdGxlIj4ke3RoaXMubGFiZWx9PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtYm94Ij4KICAgICAgICAgICAgPGlucHV0CiAgICAgICAgICAgICAgdHlwZT0idGV4dCIKICAgICAgICAgICAgICBwbGFjZWhvbGRlcj0iU2VhcmNoIGxvZ3MuLi4iCiAgICAgICAgICAgICAgLnZhbHVlPSR7dGhpcy5zZWFyY2hRdWVyeX0KICAgICAgICAgICAgICBAaW5wdXQ9JHtMPT50aGlzLmhhbmRsZVNlYXJjaElucHV0KEwpfQogICAgICAgICAgICAgIEBrZXlkb3duPSR7TD0+dGhpcy5oYW5kbGVTZWFyY2hLZXlkb3duKEwpfQogICAgICAgICAgICAvPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2gtbmF2Ij4KICAgICAgICAgICAgICA8YnV0dG9uIEBjbGljaz0keygpPT50aGlzLnNlYXJjaFByZXZpb3VzKCl9IHRpdGxlPSJQcmV2aW91cyBtYXRjaCI+4oaRPC9idXR0b24+CiAgICAgICAgICAgICAgPGJ1dHRvbiBAY2xpY2s9JHsoKT0+dGhpcy5zZWFyY2hOZXh0KCl9IHRpdGxlPSJOZXh0IG1hdGNoIj7ihpM8L2J1dHRvbj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxidXR0b24KICAgICAgICAgICAgICBjbGFzcz0iZmlsdGVyLXRvZ2dsZSAke3RoaXMuZmlsdGVyTW9kZT8iYWN0aXZlIjoiIn0iCiAgICAgICAgICAgICAgQGNsaWNrPSR7KCk9PnRoaXMudG9nZ2xlRmlsdGVyTW9kZSgpfQogICAgICAgICAgICAgIHRpdGxlPSIke3RoaXMuZmlsdGVyTW9kZT8iU3dpdGNoIHRvIGhpZ2hsaWdodCBtb2RlIjoiU3dpdGNoIHRvIGZpbHRlciBtb2RlIn0iCiAgICAgICAgICAgID4KICAgICAgICAgICAgICAke3RoaXMuZmlsdGVyTW9kZT8iRmlsdGVyIjoiSGlnaGxpZ2h0In0KICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRyb2xzIj4KICAgICAgICAgICAgPGJ1dHRvbgogICAgICAgICAgICAgIGNsYXNzPSJjb250cm9sLWJ1dHRvbiAke3RoaXMuYXV0b1Njcm9sbD8iYWN0aXZlIjoiIn0iCiAgICAgICAgICAgICAgQGNsaWNrPSR7KCk9PnRoaXMudG9nZ2xlQXV0b1Njcm9sbCgpfQogICAgICAgICAgICA+CiAgICAgICAgICAgICAgQXV0byBTY3JvbGwKICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImNvbnRyb2wtYnV0dG9uIiBAY2xpY2s9JHsoKT0+dGhpcy5jbGVhckxvZ3MoKX0+CiAgICAgICAgICAgICAgQ2xlYXIKICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KCiAgICAgICAgPGRpdiBjbGFzcz0idGVybWluYWwtY29udGFpbmVyIj4KICAgICAgICAgICR7dGhpcy50ZXJtaW5hbFJlYWR5PyIiOlNgPGRpdiBjbGFzcz0ibG9hZGluZy1zdGF0ZSI+TG9hZGluZyB0ZXJtaW5hbC4uLjwvZGl2PmB9CiAgICAgICAgPC9kaXY+CgogICAgICAgICR7dGhpcy5zaG93TWV0cmljcz9TYAogICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1ldHJpY3MtYmFyIj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJtZXRyaWMgZXJyb3IiPmVycm9yczogJHt0aGlzLm1ldHJpY3MuZXJyb3J9PC9zcGFuPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im1ldHJpYyB3YXJuIj53YXJuczogJHt0aGlzLm1ldHJpY3Mud2Fybn08L3NwYW4+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibWV0cmljIGluZm8iPmluZm86ICR7dGhpcy5tZXRyaWNzLmluZm99PC9zcGFuPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im1ldHJpYyBzdWNjZXNzIj5zdWNjZXNzOiAke3RoaXMubWV0cmljcy5zdWNjZXNzfTwvc3Bhbj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJtZXRyaWMgZGVidWciPmRlYnVnOiAke3RoaXMubWV0cmljcy5kZWJ1Z308L3NwYW4+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibWV0cmljIHJhdGUiPiR7dGhpcy5tZXRyaWNzLnJhdGUudG9GaXhlZCgxKX0gbG9ncy9zZWM8L3NwYW4+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIGA6IiJ9CiAgICAgIDwvZGl2PgogICAgYH1hc3luYyBmaXJzdFVwZGF0ZWQoKXtpZih0aGlzLmRvbXRvb2xzSW5zdGFuY2U9YXdhaXQgdGhpcy5kb210b29sc1Byb21pc2UsYXdhaXQgdGhpcy5pbml0aWFsaXplVGVybWluYWwoKSx0aGlzLmxvZ0VudHJpZXMubGVuZ3RoPjAmJnRoaXMubG9nQnVmZmVyLmxlbmd0aD09PTApe3RoaXMubG9nQnVmZmVyPVsuLi50aGlzLmxvZ0VudHJpZXNdO2ZvcihsZXQgTCBvZiB0aGlzLmxvZ0VudHJpZXMpdGhpcy51cGRhdGVNZXRyaWNzKEwubGV2ZWwpLHRoaXMud3JpdGVMb2dFbnRyeShMKX1lbHNlIGlmKHRoaXMubG9nRW50cmllcy5sZW5ndGg+MCYmdGhpcy5sb2dCdWZmZXIubGVuZ3RoPjApe2xldCBMPW5ldyBTZXQodGhpcy5sb2dCdWZmZXIubWFwKFE9PmAke1EudGltZXN0YW1wfXwke1EubWVzc2FnZX1gKSk7Zm9yKGxldCBRIG9mIHRoaXMubG9nRW50cmllcylMLmhhcyhgJHtRLnRpbWVzdGFtcH18JHtRLm1lc3NhZ2V9YCl8fCh0aGlzLmxvZ0J1ZmZlci5wdXNoKFEpLHRoaXMudXBkYXRlTWV0cmljcyhRLmxldmVsKSx0aGlzLndyaXRlTG9nRW50cnkoUSkpfX1hc3luYyBpbml0aWFsaXplVGVybWluYWwoKXtsZXQgTD14MS5nZXRJbnN0YW5jZSgpLFtRLGtlLEddPWF3YWl0IFByb21pc2UuYWxsKFtMLmxvYWRYdGVybSgpLEwubG9hZFh0ZXJtRml0QWRkb24oKSxMLmxvYWRYdGVybVNlYXJjaEFkZG9uKCldKTthd2FpdCB0aGlzLmluamVjdFh0ZXJtU3R5bGVzSW50b1NoYWRvdygpLHRoaXMudGVybWluYWw9bmV3IFEuVGVybWluYWwoe2N1cnNvckJsaW5rOiExLGRpc2FibGVTdGRpbjohMCxmb250U2l6ZToxMixmb250RmFtaWx5OiInU0YgTW9ubycsICdNb25hY28nLCAnQ29uc29sYXMnLCAnTGliZXJhdGlvbiBNb25vJywgJ0NvdXJpZXIgTmV3JywgbW9ub3NwYWNlIix0aGVtZTp0aGlzLmdldFRlcm1pbmFsVGhlbWUoKSxzY3JvbGxiYWNrOnRoaXMubWF4RW50cmllcyxjb252ZXJ0RW9sOiEwfSksdGhpcy5maXRBZGRvbj1uZXcga2UuRml0QWRkb24sdGhpcy5zZWFyY2hBZGRvbj1uZXcgRy5TZWFyY2hBZGRvbix0aGlzLnRlcm1pbmFsLmxvYWRBZGRvbih0aGlzLmZpdEFkZG9uKSx0aGlzLnRlcm1pbmFsLmxvYWRBZGRvbih0aGlzLnNlYXJjaEFkZG9uKTtsZXQgQT10aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcigiLnRlcm1pbmFsLWNvbnRhaW5lciIpO3RoaXMudGVybWluYWwub3BlbihBKSxhd2FpdCBuZXcgUHJvbWlzZShEPT5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoRCkpLHRoaXMuZml0QWRkb24uZml0KCksdGhpcy5yZXNpemVPYnNlcnZlcj1uZXcgUmVzaXplT2JzZXJ2ZXIoKCk9Pnt0aGlzLmZpdEFkZG9uPy5maXQoKX0pLHRoaXMucmVzaXplT2JzZXJ2ZXIub2JzZXJ2ZShBKSx0aGlzLnRlcm1pbmFsVGhlbWVTdWJzY3JpcHRpb249dGhpcy5kb210b29sc0luc3RhbmNlLnRoZW1lTWFuYWdlci50aGVtZU9ic2VydmFibGUuc3Vic2NyaWJlKCgpPT57dGhpcy50ZXJtaW5hbCYmKHRoaXMudGVybWluYWwub3B0aW9ucy50aGVtZT10aGlzLmdldFRlcm1pbmFsVGhlbWUoKSl9KSx0aGlzLnJhdGVJbnRlcnZhbD1zZXRJbnRlcnZhbCgoKT0+dGhpcy5jYWxjdWxhdGVSYXRlKCksMWUzKSx0aGlzLnRlcm1pbmFsUmVhZHk9ITA7Zm9yKGxldCBEIG9mIHRoaXMubG9nQnVmZmVyKXRoaXMud3JpdGVMb2dFbnRyeShEKX11cGRhdGVkKEwpe2lmKHN1cGVyLnVwZGF0ZWQoTCksTC5oYXMoImxvZ0VudHJpZXMiKSYmdGhpcy50ZXJtaW5hbFJlYWR5JiZ0aGlzLmxvZ0VudHJpZXMubGVuZ3RoPjApe2xldCBRPUwuZ2V0KCJsb2dFbnRyaWVzIil8fFtdLGtlPXRoaXMubG9nRW50cmllcztpZihRLmxlbmd0aD09PWtlLmxlbmd0aCYmUS5sZW5ndGg+MCYmUVtRLmxlbmd0aC0xXS50aW1lc3RhbXA9PT1rZVtrZS5sZW5ndGgtMV0udGltZXN0YW1wJiZRW1EubGVuZ3RoLTFdLm1lc3NhZ2U9PT1rZVtrZS5sZW5ndGgtMV0ubWVzc2FnZSlyZXR1cm47aWYoa2UubGVuZ3RoPlEubGVuZ3RoJiZRLmxlbmd0aD4wJiZRW1EubGVuZ3RoLTFdLnRpbWVzdGFtcD09PWtlW1EubGVuZ3RoLTFdLnRpbWVzdGFtcCYmUVtRLmxlbmd0aC0xXS5tZXNzYWdlPT09a2VbUS5sZW5ndGgtMV0ubWVzc2FnZSl7bGV0IEc9a2Uuc2xpY2UoUS5sZW5ndGgpO2ZvcihsZXQgQSBvZiBHKXRoaXMubG9nQnVmZmVyLnB1c2goQSksdGhpcy51cGRhdGVNZXRyaWNzKEEubGV2ZWwpLHRoaXMubG9nQnVmZmVyLmxlbmd0aD50aGlzLm1heEVudHJpZXMmJnRoaXMubG9nQnVmZmVyLnNoaWZ0KCksKCF0aGlzLmZpbHRlck1vZGV8fCF0aGlzLnNlYXJjaFF1ZXJ5fHx0aGlzLmVudHJ5TWF0Y2hlc0ZpbHRlcihBKSkmJnRoaXMud3JpdGVMb2dFbnRyeShBKTtyZXR1cm59dGhpcy5sb2dCdWZmZXI9Wy4uLmtlXSx0aGlzLnJlUmVuZGVyRmlsdGVyZWRMb2dzKCl9fWdldFRlcm1pbmFsVGhlbWUoKXtyZXR1cm4gdGhpcy5kb210b29sc0luc3RhbmNlPy50aGVtZU1hbmFnZXI/LmlzRGFya01vZGU/PyEwP3tiYWNrZ3JvdW5kOiIjMGEwYTBhIixmb3JlZ3JvdW5kOiIjZTBlMGUwIixjdXJzb3I6IiNlMGUwZTAiLHNlbGVjdGlvbkJhY2tncm91bmQ6IiM0MDQwNDAiLGJsYWNrOiIjMDAwMDAwIixyZWQ6IiNmZjU1NTUiLGdyZWVuOiIjNTBmYTdiIix5ZWxsb3c6IiNmMWZhOGMiLGJsdWU6IiM2MjcyYTQiLG1hZ2VudGE6IiNmZjc5YzYiLGN5YW46IiM4YmU5ZmQiLHdoaXRlOiIjZjhmOGYyIixicmlnaHRCbGFjazoiIzYyNzJhNCIsYnJpZ2h0UmVkOiIjZmY2ZTZlIixicmlnaHRHcmVlbjoiIzY5ZmY5NCIsYnJpZ2h0WWVsbG93OiIjZmZmZmE1IixicmlnaHRCbHVlOiIjZDZhY2ZmIixicmlnaHRNYWdlbnRhOiIjZmY5MmRmIixicmlnaHRDeWFuOiIjYTRmZmZmIixicmlnaHRXaGl0ZToiI2ZmZmZmZiJ9OntiYWNrZ3JvdW5kOiIjZmZmZmZmIixmb3JlZ3JvdW5kOiIjMzMzMzMzIixjdXJzb3I6IiMzMzMzMzMiLHNlbGVjdGlvbkJhY2tncm91bmQ6IiNhZGQ2ZmYiLGJsYWNrOiIjMDAwMDAwIixyZWQ6IiNjZDMxMzEiLGdyZWVuOiIjMDBiYzAwIix5ZWxsb3c6IiM5NDk4MDAiLGJsdWU6IiMwNDUxYTUiLG1hZ2VudGE6IiNiYzA1YmMiLGN5YW46IiMwNTk4YmMiLHdoaXRlOiIjNTU1NTU1IixicmlnaHRCbGFjazoiIzY2NjY2NiIsYnJpZ2h0UmVkOiIjY2QzMTMxIixicmlnaHRHcmVlbjoiIzE0Y2UxNCIsYnJpZ2h0WWVsbG93OiIjYjViYTAwIixicmlnaHRCbHVlOiIjMDQ1MWE1IixicmlnaHRNYWdlbnRhOiIjYmMwNWJjIixicmlnaHRDeWFuOiIjMDU5OGJjIixicmlnaHRXaGl0ZToiI2E1YTVhNSJ9fWFzeW5jIGluamVjdFh0ZXJtU3R5bGVzSW50b1NoYWRvdygpe2xldCBMPSJ4dGVybS1zaGFkb3ctc3R5bGVzIjtpZih0aGlzLnNoYWRvd1Jvb3QuZ2V0RWxlbWVudEJ5SWQoTCkpcmV0dXJuO2xldCBRPWAke1ExfS94dGVybUAke0JzLnh0ZXJtfS9jc3MveHRlcm0uY3NzYCxHPWF3YWl0KGF3YWl0IGZldGNoKFEpKS50ZXh0KCksQT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpO0EuaWQ9TCxBLnRleHRDb250ZW50PUcsdGhpcy5zaGFkb3dSb290LmFwcGVuZENoaWxkKEEpfWFkZExvZyhMLFEsa2Upe2xldCBHPXt0aW1lc3RhbXA6bmV3IERhdGUoKS50b0lTT1N0cmluZygpLGxldmVsOkwsbWVzc2FnZTpRLHNvdXJjZTprZX07dGhpcy5sb2dCdWZmZXIucHVzaChHKSx0aGlzLmxvZ0J1ZmZlci5sZW5ndGg+dGhpcy5tYXhFbnRyaWVzJiZ0aGlzLmxvZ0J1ZmZlci5zaGlmdCgpLCF0aGlzLmZpbHRlck1vZGV8fCF0aGlzLnNlYXJjaFF1ZXJ5P3RoaXMud3JpdGVMb2dFbnRyeShHKTp0aGlzLmVudHJ5TWF0Y2hlc0ZpbHRlcihHKT8odGhpcy50cmFpbGluZ0hpZGRlbkNvdW50PTAsdGhpcy53cml0ZUxvZ0VudHJ5KEcpKTp0aGlzLnVwZGF0ZVRyYWlsaW5nUGxhY2Vob2xkZXIoKSx0aGlzLnVwZGF0ZU1ldHJpY3MoRy5sZXZlbCl9dXBkYXRlTG9nKEwpe2lmKEwpZm9yKGxldCBRIG9mIEwpdGhpcy5sb2dCdWZmZXIucHVzaChRKSx0aGlzLmxvZ0J1ZmZlci5sZW5ndGg+dGhpcy5tYXhFbnRyaWVzJiZ0aGlzLmxvZ0J1ZmZlci5zaGlmdCgpLCF0aGlzLmZpbHRlck1vZGV8fCF0aGlzLnNlYXJjaFF1ZXJ5P3RoaXMud3JpdGVMb2dFbnRyeShRKTp0aGlzLmVudHJ5TWF0Y2hlc0ZpbHRlcihRKT8odGhpcy50cmFpbGluZ0hpZGRlbkNvdW50PTAsdGhpcy53cml0ZUxvZ0VudHJ5KFEpKTp0aGlzLnVwZGF0ZVRyYWlsaW5nUGxhY2Vob2xkZXIoKSx0aGlzLnVwZGF0ZU1ldHJpY3MoUS5sZXZlbCl9dXBkYXRlVHJhaWxpbmdQbGFjZWhvbGRlcigpe3RoaXMudGVybWluYWwmJih0aGlzLnRyYWlsaW5nSGlkZGVuQ291bnQ+MCYmdGhpcy50ZXJtaW5hbC53cml0ZSgiXHgxQlsxQVx4MUJbMktcciIpLHRoaXMudHJhaWxpbmdIaWRkZW5Db3VudCsrLHRoaXMud3JpdGVIaWRkZW5QbGFjZWhvbGRlcih0aGlzLnRyYWlsaW5nSGlkZGVuQ291bnQpLHRoaXMuYXV0b1Njcm9sbCYmdGhpcy50ZXJtaW5hbC5zY3JvbGxUb0JvdHRvbSgpKX1lbnRyeU1hdGNoZXNGaWx0ZXIoTCl7aWYoIXRoaXMuc2VhcmNoUXVlcnkpcmV0dXJuITA7bGV0IFE9dGhpcy5zZWFyY2hRdWVyeS50b0xvd2VyQ2FzZSgpO3JldHVybiBMLm1lc3NhZ2UudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhRKXx8TC5sZXZlbC50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKFEpfHwoTC5zb3VyY2U/LnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoUSk/PyExKX13cml0ZUxvZ0VudHJ5KEwpe2lmKCF0aGlzLnRlcm1pbmFsKXJldHVybjtsZXQgUT10aGlzLmZvcm1hdExvZ0VudHJ5KEwpO3RoaXMudGVybWluYWwud3JpdGVsbihRKSx0aGlzLmF1dG9TY3JvbGwmJnRoaXMudGVybWluYWwuc2Nyb2xsVG9Cb3R0b20oKX1mb3JtYXRMb2dFbnRyeShMKXtsZXQgUT10aGlzLmZvcm1hdFRpbWVzdGFtcChMLnRpbWVzdGFtcCksa2U9e2RlYnVnOiJceDFCWzkwbSIsaW5mbzoiXHgxQlszNm0iLHdhcm46Ilx4MUJbMzNtIixlcnJvcjoiXHgxQlszMW0iLHN1Y2Nlc3M6Ilx4MUJbMzJtIn0sRz0iXHgxQlswbSIsQT0iXHgxQlsybSIsRD1gJHtrZVtMLmxldmVsXX1bJHtMLmxldmVsLnRvVXBwZXJDYXNlKCkucGFkRW5kKDcpfV0ke0d9YCxSPUwuc291cmNlP2Ake0F9WyR7TC5zb3VyY2V9XSR7R30gYDoiIixPPXRoaXMuYXBwbHlIaWdobGlnaHRzKEwubWVzc2FnZSk7cmV0dXJuYCR7QX0ke1F9JHtHfSAke0R9ICR7Un0ke099YH1mb3JtYXRUaW1lc3RhbXAoTCl7cmV0dXJuIG5ldyBEYXRlKEwpLnRvTG9jYWxlVGltZVN0cmluZygiZW4tVVMiLHtob3VyMTI6ITEsaG91cjoiMi1kaWdpdCIsbWludXRlOiIyLWRpZ2l0IixzZWNvbmQ6IjItZGlnaXQiLGZyYWN0aW9uYWxTZWNvbmREaWdpdHM6M30pfWFwcGx5SGlnaGxpZ2h0cyhMKXtsZXQgUT1bLi4udGhpcy5oaWdobGlnaHRLZXl3b3Jkc107aWYodGhpcy5maWx0ZXJNb2RlJiZ0aGlzLnNlYXJjaFF1ZXJ5JiZRLnB1c2godGhpcy5zZWFyY2hRdWVyeSksUS5sZW5ndGg9PT0wKXJldHVybiBMO2xldCBrZT1MO2ZvcihsZXQgRyBvZiBRKXtsZXQgQT1HLnJlcGxhY2UoL1suKis/XiR7fSgpfFtcXVxcXS9nLCJcXCQmIiksRD1uZXcgUmVnRXhwKGAoJHtBfSlgLCJnaSIpO2tlPWtlLnJlcGxhY2UoRCwiXHgxQls0M21ceDFCWzMwbSQxXHgxQlswbSIpfXJldHVybiBrZX13cml0ZVJhdyhMKXt0aGlzLnRlcm1pbmFsJiYodGhpcy50ZXJtaW5hbC53cml0ZShMKSx0aGlzLnJlY29yZExvZ0V2ZW50KCksdGhpcy5hdXRvU2Nyb2xsJiZ0aGlzLnRlcm1pbmFsLnNjcm9sbFRvQm90dG9tKCkpfXdyaXRlbG5SYXcoTCl7dGhpcy50ZXJtaW5hbCYmKHRoaXMudGVybWluYWwud3JpdGVsbihMKSx0aGlzLnJlY29yZExvZ0V2ZW50KCksdGhpcy5hdXRvU2Nyb2xsJiZ0aGlzLnRlcm1pbmFsLnNjcm9sbFRvQm90dG9tKCkpfWhhbmRsZVNlYXJjaElucHV0KEwpe2xldCBrZT1MLnRhcmdldC52YWx1ZSxHPXRoaXMuc2VhcmNoUXVlcnkhPT1rZTt0aGlzLnNlYXJjaFF1ZXJ5PWtlLHRoaXMuZmlsdGVyTW9kZSYmRz90aGlzLnJlUmVuZGVyRmlsdGVyZWRMb2dzKCk6dGhpcy5zZWFyY2hRdWVyeSYmdGhpcy5zZWFyY2hBZGRvbj8uZmluZE5leHQodGhpcy5zZWFyY2hRdWVyeSl9aGFuZGxlU2VhcmNoS2V5ZG93bihMKXtMLmtleT09PSJFbnRlciI/TC5zaGlmdEtleT90aGlzLnNlYXJjaFByZXZpb3VzKCk6dGhpcy5zZWFyY2hOZXh0KCk6TC5rZXk9PT0iRXNjYXBlIiYmKHRoaXMuc2VhcmNoUXVlcnk9IiIsTC50YXJnZXQudmFsdWU9IiIpfXNlYXJjaChMKXt0aGlzLnNlYXJjaFF1ZXJ5PUwsdGhpcy5zZWFyY2hBZGRvbj8uZmluZE5leHQoTCl9c2VhcmNoTmV4dCgpe3RoaXMuc2VhcmNoUXVlcnkmJnRoaXMuc2VhcmNoQWRkb24/LmZpbmROZXh0KHRoaXMuc2VhcmNoUXVlcnkpfXNlYXJjaFByZXZpb3VzKCl7dGhpcy5zZWFyY2hRdWVyeSYmdGhpcy5zZWFyY2hBZGRvbj8uZmluZFByZXZpb3VzKHRoaXMuc2VhcmNoUXVlcnkpfXRvZ2dsZUF1dG9TY3JvbGwoKXt0aGlzLmF1dG9TY3JvbGw9IXRoaXMuYXV0b1Njcm9sbCx0aGlzLmF1dG9TY3JvbGwmJnRoaXMudGVybWluYWwmJnRoaXMudGVybWluYWwuc2Nyb2xsVG9Cb3R0b20oKX10b2dnbGVGaWx0ZXJNb2RlKCl7dGhpcy5maWx0ZXJNb2RlPSF0aGlzLmZpbHRlck1vZGUsdGhpcy5yZVJlbmRlckZpbHRlcmVkTG9ncygpfXJlUmVuZGVyRmlsdGVyZWRMb2dzKCl7aWYodGhpcy50ZXJtaW5hbCl7aWYodGhpcy50ZXJtaW5hbC5jbGVhcigpLHRoaXMudHJhaWxpbmdIaWRkZW5Db3VudD0wLCF0aGlzLmZpbHRlck1vZGV8fCF0aGlzLnNlYXJjaFF1ZXJ5KWZvcihsZXQgTCBvZiB0aGlzLmxvZ0J1ZmZlcil7bGV0IFE9dGhpcy5mb3JtYXRMb2dFbnRyeShMKTt0aGlzLnRlcm1pbmFsLndyaXRlbG4oUSl9ZWxzZXtsZXQgTD0wO2ZvcihsZXQgUSBvZiB0aGlzLmxvZ0J1ZmZlcilpZih0aGlzLmVudHJ5TWF0Y2hlc0ZpbHRlcihRKSl7TD4wJiYodGhpcy53cml0ZUhpZGRlblBsYWNlaG9sZGVyKEwpLEw9MCk7bGV0IGtlPXRoaXMuZm9ybWF0TG9nRW50cnkoUSk7dGhpcy50ZXJtaW5hbC53cml0ZWxuKGtlKX1lbHNlIEwrKztMPjAmJih0aGlzLndyaXRlSGlkZGVuUGxhY2Vob2xkZXIoTCksdGhpcy50cmFpbGluZ0hpZGRlbkNvdW50PUwpfXRoaXMuYXV0b1Njcm9sbCYmdGhpcy50ZXJtaW5hbC5zY3JvbGxUb0JvdHRvbSgpfX13cml0ZUhpZGRlblBsYWNlaG9sZGVyKEwpe2xldCBRPSJceDFCWzJtIixrZT0iXHgxQlswbSIsRz1MPT09MT8iWzEgbG9nIGxpbmUgaGlkZGVuIGJ5IGZpbHRlciAuLi5dIjpgWyR7TH0gbG9nIGxpbmVzIGhpZGRlbiBieSBmaWx0ZXIgLi4uXWA7dGhpcy50ZXJtaW5hbD8ud3JpdGVsbihgJHtRfSR7R30ke2tlfWApfWNsZWFyTG9ncygpe3RoaXMudGVybWluYWw/LmNsZWFyKCksdGhpcy5sb2dCdWZmZXI9W10sdGhpcy50cmFpbGluZ0hpZGRlbkNvdW50PTAsdGhpcy5yZXNldE1ldHJpY3MoKX1zY3JvbGxUb0JvdHRvbSgpe3RoaXMudGVybWluYWw/LnNjcm9sbFRvQm90dG9tKCl9dXBkYXRlTWV0cmljcyhMKXt0aGlzLm1ldHJpY3M9ey4uLnRoaXMubWV0cmljcyxbTF06dGhpcy5tZXRyaWNzW0xdKzEsdG90YWw6dGhpcy5tZXRyaWNzLnRvdGFsKzF9LHRoaXMucmVjb3JkTG9nRXZlbnQoKX1yZWNvcmRMb2dFdmVudCgpe3RoaXMucmF0ZUJ1ZmZlci5wdXNoKERhdGUubm93KCkpfWNhbGN1bGF0ZVJhdGUoKXtsZXQgTD1EYXRlLm5vdygpO3RoaXMucmF0ZUJ1ZmZlcj10aGlzLnJhdGVCdWZmZXIuZmlsdGVyKGtlPT5MLWtlPDFlNCk7bGV0IFE9dGhpcy5yYXRlQnVmZmVyLmxlbmd0aC8xMDtRIT09dGhpcy5tZXRyaWNzLnJhdGUmJih0aGlzLm1ldHJpY3M9ey4uLnRoaXMubWV0cmljcyxyYXRlOlF9KX1yZXNldE1ldHJpY3MoKXt0aGlzLm1ldHJpY3M9e2RlYnVnOjAsaW5mbzowLHdhcm46MCxlcnJvcjowLHN1Y2Nlc3M6MCx0b3RhbDowLHJhdGU6MH0sdGhpcy5yYXRlQnVmZmVyPVtdfWFzeW5jIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCl7YXdhaXQgc3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKSx0aGlzLnJlc2l6ZU9ic2VydmVyJiZ0aGlzLnJlc2l6ZU9ic2VydmVyLmRpc2Nvbm5lY3QoKSx0aGlzLnRlcm1pbmFsVGhlbWVTdWJzY3JpcHRpb24mJnRoaXMudGVybWluYWxUaGVtZVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpLHRoaXMucmF0ZUludGVydmFsJiZjbGVhckludGVydmFsKHRoaXMucmF0ZUludGVydmFsKSx0aGlzLnRlcm1pbmFsJiZ0aGlzLnRlcm1pbmFsLmRpc3Bvc2UoKX1zdGF0aWN7SWEoYSxyKX19O3JldHVybiBmZT1hfSkoKX0pO3ZhciBwSXI9bCgoKT0+e2ZJcigpfSk7dmFyIGhJcj1sKCgpPT57bElyKCk7cElyKCl9KTt2YXIgbUlyLGdJcj1sKCgpPT57U2UoKTttSXI9KCk9PlNgCiAgPHN0eWxlPgogICAgLmRlbW9XcmFwcGVyIHsKICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICB3aWR0aDogMTAwJTsKICAgICAgbWluLWhlaWdodDogMTAwdmg7CiAgICAgIHBhZGRpbmc6IDQ4cHg7CiAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjhmOWZhIiwiIzBhMGEwYSIpfTsKICAgICAgZGlzcGxheTogZmxleDsKICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgZ2FwOiAzMnB4OwogICAgfQogICAgCiAgICAuc2VjdGlvbiB7CiAgICAgIG1heC13aWR0aDogOTAwcHg7CiAgICAgIHdpZHRoOiAxMDAlOwogICAgICBtYXJnaW46IDAgYXV0bzsKICAgIH0KICAgIAogICAgLnNlY3Rpb24tdGl0bGUgewogICAgICBmb250LXNpemU6IDE4cHg7CiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7CiAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzA5MDkwYiIsIiNmYWZhZmEiKX07CiAgICB9CiAgICAKICAgIC5zZWN0aW9uLWRlc2NyaXB0aW9uIHsKICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM3MTcxN2EiLCIjYTFhMWFhIil9OwogICAgICBtYXJnaW4tYm90dG9tOiAxNnB4OwogICAgfQogIDwvc3R5bGU+CiAgPGRpdiBjbGFzcz0iZGVtb1dyYXBwZXIiPgogICAgPGRpdiBjbGFzcz0ic2VjdGlvbiI+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tdGl0bGUiPlR5cGVTY3JpcHQgQ29kZSBFeGFtcGxlPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tZGVzY3JpcHRpb24iPkEgY29tcHJlaGVuc2l2ZSBUeXBlU2NyaXB0IGNvZGUgZXhhbXBsZSB3aXRoIHZhcmlvdXMgc3ludGF4IGhpZ2hsaWdodGluZy48L2Rpdj4KICAgICAgPGRlZXMtZGF0YXZpZXctY29kZWJveCBwcm9nbGFuZz0idHlwZXNjcmlwdCI+CmludGVyZmFjZSBVc2VyIHsKICBpZDogbnVtYmVyOwogIG5hbWU6IHN0cmluZzsKICBlbWFpbDogc3RyaW5nOwogIGlzQWN0aXZlOiBib29sZWFuOwp9CgpjbGFzcyBVc2VyU2VydmljZSB7CiAgcHJpdmF0ZSB1c2VyczogVXNlcltdID0gW107CiAgCiAgY29uc3RydWN0b3IocHJpdmF0ZSBhcGlVcmw6IHN0cmluZykgewogICAgY29uc29sZS5sb2coJ1VzZXJTZXJ2aWNlIGluaXRpYWxpemVkJyk7CiAgfQogIAogIGFzeW5jIGdldFVzZXJzKCk6IFByb21pc2U8VXNlcltdPiB7CiAgICB0cnkgewogICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKHRoaXMuYXBpVXJsKTsKICAgICAgY29uc3QgZGF0YSA9IGF3YWl0IHJlc3BvbnNlLmpzb24oKTsKICAgICAgcmV0dXJuIGRhdGEudXNlcnM7CiAgICB9IGNhdGNoIChlcnJvcikgewogICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gZmV0Y2ggdXNlcnM6JywgZXJyb3IpOwogICAgICByZXR1cm4gW107CiAgICB9CiAgfQogIAogIGFkZFVzZXIodXNlcjogVXNlcik6IHZvaWQgewogICAgdGhpcy51c2Vycy5wdXNoKHVzZXIpOwogIH0KfQoKLy8gVXNhZ2UgZXhhbXBsZQpjb25zdCBzZXJ2aWNlID0gbmV3IFVzZXJTZXJ2aWNlKCdodHRwczovL2FwaS5leGFtcGxlLmNvbS91c2VycycpOwpjb25zdCB1c2VycyA9IGF3YWl0IHNlcnZpY2UuZ2V0VXNlcnMoKTsKY29uc29sZS5sb2coJ0ZvdW5kIHVzZXJzOicsIHVzZXJzLmxlbmd0aCk7CiAgICAgIDwvZGVlcy1kYXRhdmlldy1jb2RlYm94PgogICAgPC9kaXY+CiAgICAKICAgIDxkaXYgY2xhc3M9InNlY3Rpb24iPgogICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uLXRpdGxlIj5KYXZhU2NyaXB0IEV4YW1wbGU8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi1kZXNjcmlwdGlvbiI+TW9kZXJuIEphdmFTY3JpcHQgd2l0aCBFUzYrIGZlYXR1cmVzLjwvZGl2PgogICAgICA8ZGVlcy1kYXRhdmlldy1jb2RlYm94IHByb2dsYW5nPSJqYXZhc2NyaXB0Ij4KLy8gQXJyYXkgbWFuaXB1bGF0aW9uIGV4YW1wbGVzCmNvbnN0IG51bWJlcnMgPSBbMSwgMiwgMywgNCwgNV07CmNvbnN0IGRvdWJsZWQgPSBudW1iZXJzLm1hcChuID0+IG4gKiAyKTsKY29uc3QgZmlsdGVyZWQgPSBudW1iZXJzLmZpbHRlcihuID0+IG4gPiAzKTsKCi8vIE9iamVjdCBkZXN0cnVjdHVyaW5nCmNvbnN0IHVzZXIgPSB7IG5hbWU6ICdKb2huJywgYWdlOiAzMCwgY2l0eTogJ05ldyBZb3JrJyB9Owpjb25zdCB7IG5hbWUsIGFnZSB9ID0gdXNlcjsKCi8vIFByb21pc2UgaGFuZGxpbmcKY29uc3QgZmV0Y2hEYXRhID0gYXN5bmMgKHVybCkgPT4gewogIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2godXJsKTsKICByZXR1cm4gcmVzcG9uc2UuanNvbigpOwp9OwoKLy8gTW9kZXJuIHN5bnRheApjb25zdCBncmVldCA9IChuYW1lID0gJ1dvcmxkJykgPT4gXGBIZWxsbywgXCR7bmFtZX0hXGA7CmNvbnNvbGUubG9nKGdyZWV0KCdTaGFkQ04nKSk7CiAgICAgIDwvZGVlcy1kYXRhdmlldy1jb2RlYm94PgogICAgPC9kaXY+CiAgICAKICAgIDxkaXYgY2xhc3M9InNlY3Rpb24iPgogICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uLXRpdGxlIj5QeXRob24gRXhhbXBsZTwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uLWRlc2NyaXB0aW9uIj5QeXRob24gY29kZSB3aXRoIGNsYXNzZXMgYW5kIHR5cGUgaGludHMuPC9kaXY+CiAgICAgIDxkZWVzLWRhdGF2aWV3LWNvZGVib3ggcHJvZ2xhbmc9InB5dGhvbiI+CmZyb20gdHlwaW5nIGltcG9ydCBMaXN0LCBPcHRpb25hbAppbXBvcnQgYXN5bmNpbwoKY2xhc3MgRGF0YVByb2Nlc3NvcjoKICAgICIiIkEgc2ltcGxlIGRhdGEgcHJvY2Vzc29yIGNsYXNzIiIiCiAgICAKICAgIGRlZiBfX2luaXRfXyhzZWxmLCBuYW1lOiBzdHIpOgogICAgICAgIHNlbGYubmFtZSA9IG5hbWUKICAgICAgICBzZWxmLmRhdGE6IExpc3RbZGljdF0gPSBbXQogICAgCiAgICBhc3luYyBkZWYgcHJvY2Vzc19kYXRhKHNlbGYsIGl0ZW1zOiBMaXN0W2RpY3RdKSAtPiBMaXN0W2RpY3RdOgogICAgICAgICIiIlByb2Nlc3MgZGF0YSBpdGVtcyBhc3luY2hyb25vdXNseSIiIgogICAgICAgIHJlc3VsdHMgPSBbXQogICAgICAgIGZvciBpdGVtIGluIGl0ZW1zOgogICAgICAgICAgICAjIFNpbXVsYXRlIGFzeW5jIHByb2Nlc3NpbmcKICAgICAgICAgICAgYXdhaXQgYXN5bmNpby5zbGVlcCgwLjEpCiAgICAgICAgICAgIHJlc3VsdHMuYXBwZW5kKHsKICAgICAgICAgICAgICAgICdpZCc6IGl0ZW0uZ2V0KCdpZCcpLAogICAgICAgICAgICAgICAgJ3Byb2Nlc3NlZCc6IFRydWUsCiAgICAgICAgICAgICAgICAncHJvY2Vzc29yJzogc2VsZi5uYW1lCiAgICAgICAgICAgIH0pCiAgICAgICAgcmV0dXJuIHJlc3VsdHMKICAgIAogICAgZGVmIGdldF9zdW1tYXJ5KHNlbGYpIC0+IGRpY3Q6CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgJ3Byb2Nlc3Nvcic6IHNlbGYubmFtZSwKICAgICAgICAgICAgJ2l0ZW1zX3Byb2Nlc3NlZCc6IGxlbihzZWxmLmRhdGEpCiAgICAgICAgfQoKIyBVc2FnZQpwcm9jZXNzb3IgPSBEYXRhUHJvY2Vzc29yKCJNYWluIikKZGF0YSA9IGF3YWl0IHByb2Nlc3Nvci5wcm9jZXNzX2RhdGEoW3snaWQnOiAxfSwgeydpZCc6IDJ9XSkKICAgICAgPC9kZWVzLWRhdGF2aWV3LWNvZGVib3g+CiAgICA8L2Rpdj4KICAgIAogICAgPGRpdiBjbGFzcz0ic2VjdGlvbiI+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tdGl0bGUiPkNTUyBFeGFtcGxlPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tZGVzY3JpcHRpb24iPk1vZGVybiBDU1Mgd2l0aCBjdXN0b20gcHJvcGVydGllcyBhbmQgYW5pbWF0aW9ucy4gTm90ZSB0aGUgc2hvcnRlciBsYW5ndWFnZSBsYWJlbC48L2Rpdj4KICAgICAgPGRlZXMtZGF0YXZpZXctY29kZWJveCBwcm9nbGFuZz0iY3NzIj4KLyogTW9kZXJuIENTUyB3aXRoIGN1c3RvbSBwcm9wZXJ0aWVzICovCjpyb290IHsKICAtLXByaW1hcnktY29sb3I6ICMzYjgyZjY7CiAgLS1zZWNvbmRhcnktY29sb3I6ICMxMGI5ODE7CiAgLS1iYWNrZ3JvdW5kOiAjZmZmZmZmOwogIC0tdGV4dC1jb2xvcjogIzA5MDkwYjsKICAtLWJvcmRlci1yYWRpdXM6IDZweDsKfQoKLmNhcmQgewogIGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQpOwogIGJvcmRlcjogMXB4IHNvbGlkICNlNWU3ZWI7CiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7CiAgcGFkZGluZzogMjRweDsKICBib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjEpOwogIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7Cn0KCi5jYXJkOmhvdmVyIHsKICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7CiAgYm94LXNoYWRvdzogMCA0cHggNnB4IHJnYmEoMCwgMCwgMCwgMC4xKTsKfQoKQGtleWZyYW1lcyBmYWRlSW4gewogIGZyb20geyBvcGFjaXR5OiAwOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7IH0KICB0byB7IG9wYWNpdHk6IDE7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfQp9CiAgICAgIDwvZGVlcy1kYXRhdmlldy1jb2RlYm94PgogICAgPC9kaXY+CiAgICAKICAgIDxkaXYgY2xhc3M9InNlY3Rpb24iPgogICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uLXRpdGxlIj5KU09OIEV4YW1wbGU8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi1kZXNjcmlwdGlvbiI+SlNPTiBjb25maWd1cmF0aW9uIHdpdGggcHJvcGVyIGZvcm1hdHRpbmcuPC9kaXY+CiAgICAgIDxkZWVzLWRhdGF2aWV3LWNvZGVib3ggcHJvZ2xhbmc9Impzb24iPgp7CiAgIm5hbWUiOiAiQGRlc2lnbi5lc3RhdGUvZGVlcy1jYXRhbG9nIiwKICAidmVyc2lvbiI6ICIxLjEwLjciLAogICJkZXNjcmlwdGlvbiI6ICJBIGNvbXByZWhlbnNpdmUgY2F0YWxvZyBvZiB3ZWIgY29tcG9uZW50cyIsCiAgIm1haW4iOiAiZGlzdF90c193ZWIvaW5kZXguanMiLAogICJ0eXBlIjogIm1vZHVsZSIsCiAgInNjcmlwdHMiOiB7CiAgICAiYnVpbGQiOiAidHNidWlsZCB0c2ZvbGRlcnMgLS1hbGxvd2ltcGxpY2l0YW55ICYmIHRzYnVuZGxlIGVsZW1lbnQgLS1wcm9kdWN0aW9uIiwKICAgICJ3YXRjaCI6ICJ0c3dhdGNoIGVsZW1lbnQiLAogICAgInRlc3QiOiAidHN0ZXN0IHRlc3QvIC0td2ViIC0tdmVyYm9zZSIKICB9LAogICJkZXBlbmRlbmNpZXMiOiB7CiAgICAiQGRlc2lnbi5lc3RhdGUvZGVlcy1lbGVtZW50IjogIl4yLjAuNDUiLAogICAgImhpZ2hsaWdodC5qcyI6ICJeMTEuOS4wIgogIH0KfQogICAgICA8L2RlZXMtZGF0YXZpZXctY29kZWJveD4KICAgIDwvZGl2PgogIDwvZGl2PgpgfSk7dmFyIE5jdCxOWix4SXIsRmN0PWwoKCk9PntnSXIoKTtTZSgpO3VvKCk7RjcoKTtlcigpO2JpKCk7YzMoKTtOY3Q9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxOWj1mdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MixpPTA7aTx0Lmxlbmd0aDtpKyspcj1hP3RbaV0uY2FsbChlLHIpOnRbaV0uY2FsbChlKTtyZXR1cm4gYT9yOnZvaWQgMH0seElyPSgoKT0+e2xldCBlPVt6ZSgiZGVlcy1kYXRhdmlldy1jb2RlYm94IildLHQscj1bXSxhLGk9RGUsbyxuPVtdLHM9W10sYyxkPVtdLGY9W107dmFyIHU9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCBwPXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO289W2ooKV0sYz1baih7dHlwZTpTdHJpbmcscmVmbGVjdDohMH0pXSxOY3QodGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJwcm9nTGFuZyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6aD0+InByb2dMYW5nImluIGgsZ2V0Omg9PmgucHJvZ0xhbmcsc2V0OihoLGIpPT57aC5wcm9nTGFuZz1ifX0sbWV0YWRhdGE6cH0sbixzKSxOY3QodGhpcyxudWxsLGMse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJjb2RlVG9EaXNwbGF5IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpoPT4iY29kZVRvRGlzcGxheSJpbiBoLGdldDpoPT5oLmNvZGVUb0Rpc3BsYXksc2V0OihoLGIpPT57aC5jb2RlVG9EaXNwbGF5PWJ9fSxtZXRhZGF0YTpwfSxkLGYpLE5jdChudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTpwfSxudWxsLHIpLHU9YT10LnZhbHVlLHAmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6cH0pfXN0YXRpYyBkZW1vPW1JcjtzdGF0aWMgZGVtb0dyb3Vwcz1bIkRhdGEgVmlldyIsIldvcmtzcGFjZSJdOyNlPU5aKHRoaXMsbiwidHlwZXNjcmlwdCIpO2dldCBwcm9nTGFuZygpe3JldHVybiB0aGlzLiNlfXNldCBwcm9nTGFuZyhwKXt0aGlzLiNlPXB9I3Q9KE5aKHRoaXMscyksTloodGhpcyxkLCIiKSk7Z2V0IGNvZGVUb0Rpc3BsYXkoKXtyZXR1cm4gdGhpcy4jdH1zZXQgY29kZVRvRGlzcGxheShwKXt0aGlzLiN0PXB9Y29uc3RydWN0b3IoKXtzdXBlcigpfXJlbmRlcigpe3JldHVybiBTYAogICAgICAke2thLnN0eWxlc30KICAgICAgPHN0eWxlPgogICAgICAgIDpob3N0IHsKICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsKICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsKICAgICAgICAgIGZvbnQtZmFtaWx5OiAke1hyfTsKICAgICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgICAgfQogICAgICAgIC5tYWluYm94IHsKICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzA5MDkwYiIsIiNmYWZhZmEiKX07CiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiMyNzI3MmEiKX07CiAgICAgICAgICBib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjEpLCAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjA2KTsKICAgICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZmZmZmZmIiwiIzA5MDkwYiIpfTsKICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgICAgfQoKICAgICAgICAuYXBwYmFyIHsKICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzcxNzE3YSIsIiNhMWExYWEiKX07CiAgICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2Y5ZmFmYiIsIiMxODE4MWIiKX07CiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjMjcyNzJhIil9OwogICAgICAgICAgaGVpZ2h0OiAzMnB4OwogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4OwogICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgICAgfQoKICAgICAgICAuYXBwYmFyIC5maWxlTmFtZSB7CiAgICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDsKICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICAgIGZsZXg6IDE7CiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgfQoKICAgICAgICAuYm90dG9tQmFyIHsKICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzcxNzE3YSIsIiNhMWExYWEiKX07CiAgICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2Y5ZmFmYiIsIiMxODE4MWIiKX07CiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjMjcyNzJhIil9OwogICAgICAgICAgaGVpZ2h0OiAyOHB4OwogICAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7CiAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsKICAgICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoOwogICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgICAgIH0KCiAgICAgICAgLnNwYWNlc0xhYmVsIHsKICAgICAgICAgIHBhZGRpbmc6IDAgMTZweDsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIH0KCiAgICAgICAgLmxhbmd1YWdlTGFiZWwgewogICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjM2I4MmY2IiwiIzNiODJmNiIpfTsKICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4OwogICAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoNTksIDEzMCwgMjQ2LCAwLjEpIiwicmdiYSg1OSwgMTMwLCAyNDYsIDAuMSkiKX07CiAgICAgICAgICBwYWRkaW5nOiAwcHggMTZweDsKICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICB9CgogICAgICAgIC5obGpzLWtleXdvcmQgewogICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjZGMyNjI2IiwiI2Y4NzE3MSIpfTsKICAgICAgICB9CgogICAgICAgIC5jb2RlZ3JpZCB7CiAgICAgICAgICBkaXNwbGF5OiBncmlkOwogICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA1MHB4IGF1dG87CiAgICAgICAgICBvdmVyZmxvdzogYXV0bzsKICAgICAgICAgIGZsZXg6IDE7CiAgICAgICAgICBtaW4taGVpZ2h0OiAwOwogICAgICAgIH0KCiAgICAgICAgLmxpbmVOdW1iZXJzIHsKICAgICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzcxNzE3YSIsIiM1MjUyNWIiKX07CiAgICAgICAgICBwYWRkaW5nOiAyNHB4IDE2cHggMHB4IDBweDsKICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0OwogICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjMjcyNzJhIil9OwogICAgICAgIH0KCiAgICAgICAgLmxpbmVDb3VudGVyOmxhc3QtY2hpbGQgewogICAgICAgICAgb3BhY2l0eTogNTAlOwogICAgICAgIH0KCiAgICAgICAgcHJlIHsKICAgICAgICAgIG92ZXJmbG93LXg6IGF1dG87CiAgICAgICAgICBtYXJnaW46IDBweDsKICAgICAgICAgIHBhZGRpbmc6IDI0cHggMjRweDsKICAgICAgICB9CgogICAgICAgIGNvZGUgewogICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsKICAgICAgICAgIHBhZGRpbmc6IDBweDsKICAgICAgICAgIG1hcmdpbjogMHB4OwogICAgICAgIH0KCiAgICAgICAgY29kZSwKICAgICAgICBjb2RlICosCiAgICAgICAgLmxpbmVOdW1iZXJzIHsKICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjRlbTsKICAgICAgICAgIGZvbnQtd2VpZ2h0OiAyMDA7CiAgICAgICAgICBmb250LWZhbWlseTogJHt5OH07CiAgICAgICAgfQoKICAgICAgICAuaGxqcy1zdHJpbmcgewogICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMDU5NjY5IiwiIzEwYjk4MSIpfTsKICAgICAgICB9CgogICAgICAgIC5obGpzLWJ1aWx0X2luIHsKICAgICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzhiNWNmNiIsIiNhNzhiZmEiKX07CiAgICAgICAgfQoKICAgICAgICAuaGxqcy1mdW5jdGlvbiB7CiAgICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMzYjgyZjYiLCIjNjBhNWZhIil9OwogICAgICAgIH0KCiAgICAgICAgLmhsanMtcGFyYW1zIHsKICAgICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzA4OTFiMiIsIiMwNmI2ZDQiKX07CiAgICAgICAgfQoKICAgICAgICAuaGxqcy1jb21tZW50IHsKICAgICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzcxNzE3YSIsIiM3MTcxN2EiKX07CiAgICAgICAgfQoKICAgICAgICAuaGxqcy1udW1iZXIgewogICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjZWE1ODBjIiwiI2ZiOTIzYyIpfTsKICAgICAgICB9CgogICAgICAgIC5obGpzLWxpdGVyYWwgewogICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjZGMyNjI2IiwiI2Y4NzE3MSIpfTsKICAgICAgICB9CgogICAgICAgIC5obGpzLWF0dHIgewogICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjOGI1Y2Y2IiwiI2E3OGJmYSIpfTsKICAgICAgICB9CgogICAgICAgIC5obGpzLXZhcmlhYmxlIHsKICAgICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzA5MDkwYiIsIiNmYWZhZmEiKX07CiAgICAgICAgfQogICAgICA8L3N0eWxlPgogICAgICA8ZGl2CiAgICAgICAgY2xhc3M9Im1haW5ib3giCiAgICAgICAgQGNvbnRleHRtZW51PSIke3A9Pnt0ci5vcGVuQ29udGV4dE1lbnVXaXRoT3B0aW9ucyhwLFt7bmFtZToiQWJvdXQiLGljb25OYW1lOiJjaXJjbGVJbmZvIixhY3Rpb246YXN5bmMoKT0+bnVsbH1dKX19IgogICAgICA+CiAgICAgICAgPGRpdiBjbGFzcz0iYXBwYmFyIj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImZpbGVOYW1lIj5pbmRleC50czwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImNvZGVncmlkIj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImxpbmVOdW1iZXJzIj4KICAgICAgICAgICAgJHsoKCk9PntsZXQgcD0wO3JldHVybiB0aGlzLmNvZGVUb0Rpc3BsYXkuc3BsaXQoYApgKS5tYXAoaD0+KHArKyxTYDxkaXYgY2xhc3M9ImxpbmVDb3VudGVyIj4ke3B9PC9kaXY+YCkpfSkoKX0KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPHByZT48Y29kZT48L2NvZGU+PC9wcmU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iYm90dG9tQmFyIj4KICAgICAgICAgIDxkaXYgY2xhc3M9InNwYWNlc0xhYmVsIj5TcGFjZXM6IDI8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9Imxhbmd1YWdlTGFiZWwiPiR7dGhpcy5wcm9nTGFuZ308L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICBgfWNvZGVUb0Rpc3BsYXlTdG9yZT0oTloodGhpcyxmKSwiIik7aGlnaGxpZ2h0SnM9bnVsbDthc3luYyB1cGRhdGVkKHApe3N1cGVyLnVwZGF0ZWQocCksY29uc29sZS5sb2coImhpZ2hsaWdodGluZyBub3ciKSxjb25zb2xlLmxvZyh0aGlzLmNoaWxkTm9kZXMpO2xldCBoPVtdO3RoaXMuY2hpbGROb2Rlcy5mb3JFYWNoKGc9PntnLm5vZGVOYW1lPT09IiN0ZXh0IiYmaC5wdXNoKGcpfSksdGhpcy5jb2RlVG9EaXNwbGF5JiZ0aGlzLmNvZGVUb0Rpc3BsYXkhPT10aGlzLmNvZGVUb0Rpc3BsYXlTdG9yZSYmKHRoaXMuY29kZVRvRGlzcGxheVN0b3JlPXg2Lm5vcm1hbGl6ZSh0aGlzLmNvZGVUb0Rpc3BsYXkpLnRyaW1TdGFydCgpKSxoWzBdJiZoWzBdLndob2xlVGV4dCYmIXRoaXMuY29kZVRvRGlzcGxheSYmKHRoaXMuY29kZVRvRGlzcGxheVN0b3JlPXg2Lm5vcm1hbGl6ZShoWzBdLndob2xlVGV4dCkudHJpbVN0YXJ0KCksdGhpcy5jb2RlVG9EaXNwbGF5PXRoaXMuY29kZVRvRGlzcGxheVN0b3JlKSxhd2FpdCBKdC5zbWFydGRlbGF5LmRlbGF5Rm9yKDApLHRoaXMuaGlnaGxpZ2h0SnN8fCh0aGlzLmhpZ2hsaWdodEpzPWF3YWl0IHgxLmdldEluc3RhbmNlKCkubG9hZEhpZ2hsaWdodEpzKCkpO2xldCBiPXRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCJjb2RlIikseD10aGlzLmhpZ2hsaWdodEpzLmhpZ2hsaWdodCh0aGlzLmNvZGVUb0Rpc3BsYXlTdG9yZSx7bGFuZ3VhZ2U6dGhpcy5wcm9nTGFuZyxpZ25vcmVJbGxlZ2FsczohMH0pO2IuaW5uZXJIVE1MPXgudmFsdWV9c3RhdGlje05aKGEscil9fTtyZXR1cm4gdT1hfSkoKX0pO3ZhciBiSXI9bCgoKT0+e0ZjdCgpfSk7dmFyIHZJcix5SXI9bCgoKT0+e1NlKCk7THMoKTt2SXI9KCk9PlNgIDxzdHlsZT4KICAgIC5kZW1vIHsKICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmNWY1ZjUiLCIjMGEwYTBhIil9OwogICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgY29udGVudDogJyc7CiAgICAgIHBhZGRpbmc6IDQwcHg7CiAgICB9CiAgICAKICAgIC5kZW1vLWdyaWQgewogICAgICBkaXNwbGF5OiBncmlkOwogICAgICBnYXA6IDI0cHg7CiAgICAgIG1heC13aWR0aDogODAwcHg7CiAgICAgIG1hcmdpbjogMCBhdXRvOwogICAgfQogICAgCiAgICAuZGVtby1zZWN0aW9uIHsKICAgICAgZGlzcGxheTogZmxleDsKICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgZ2FwOiAxNnB4OwogICAgfQogICAgCiAgICAuZGVtby10aXRsZSB7CiAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA0NS4xJSkiLCJoc2woMCAwJSA2My45JSkiKX07CiAgICAgIG1hcmdpbi1ib3R0b206IDhweDsKICAgICAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgJ1NlZ29lIFVJJywgc2Fucy1zZXJpZjsKICAgIH0KICAgIAogICAgLmRlbW8tbm90ZSB7CiAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA0NS4xJSkiLCJoc2woMCAwJSA2My45JSkiKX07CiAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7CiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgZm9udC1zdHlsZTogaXRhbGljOwogICAgICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAnU2Vnb2UgVUknLCBzYW5zLXNlcmlmOwogICAgfQogIDwvc3R5bGU+CiAgPGRpdiBjbGFzcz0iZGVtbyI+CiAgICA8ZGl2IGNsYXNzPSJkZW1vLW5vdGUiPgogICAgICBSaWdodC1jbGljayBvbiBhbnkgZGV0YWlsIHJvdyB0byBjb3B5IHRoZSB2YWx1ZSwga2V5LCBvciBrZXk6dmFsdWUgY29tYmluYXRpb24KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0iZGVtby1ncmlkIj4KICAgICAgPGRpdiBjbGFzcz0iZGVtby1zZWN0aW9uIj4KICAgICAgICA8ZGl2IGNsYXNzPSJkZW1vLXRpdGxlIj5TZXJ2aWNlIEhlYWx0aCBTdGF0dXM8L2Rpdj4KICAgICAgICA8ZGVlcy1kYXRhdmlldy1zdGF0dXNvYmplY3QKICAgICAgICAgIC5zdGF0dXNPYmplY3Q9JHt7aWQ6IjEiLG5hbWU6IkFQSSBHYXRld2F5IFNlcnZpY2UiLGxhc3RVcGRhdGVkOkRhdGUubm93KCksY29tYmluZWRTdGF0dXM6Im9rIixjb21iaW5lZFN0YXR1c1RleHQ6IkFsbCBzeXN0ZW1zIG9wZXJhdGlvbmFsIixkZXRhaWxzOlt7bmFtZToiUmVzcG9uc2UgVGltZSIsdmFsdWU6IjQ1bXMgKGF2ZykiLHN0YXR1czoib2siLHN0YXR1c1RleHQ6IldpdGhpbiBub3JtYWwgcmFuZ2UifSx7bmFtZToiVXB0aW1lIix2YWx1ZToiOTkuOTklICgzMCBkYXlzKSIsc3RhdHVzOiJvayIsc3RhdHVzVGV4dDoiRXhjZWxsZW50IHVwdGltZSJ9LHtuYW1lOiJBY3RpdmUgQ29ubmVjdGlvbnMiLHZhbHVlOiIxLDIzNCAvIDEwLDAwMCIsc3RhdHVzOiJvayIsc3RhdHVzVGV4dDoiTm9ybWFsIGxvYWQifSx7bmFtZToiU1NMIENlcnRpZmljYXRlIix2YWx1ZToiVmFsaWQgdW50aWwgMjAyNC0xMi0zMSIsc3RhdHVzOiJvayIsc3RhdHVzVGV4dDoiQ2VydGlmaWNhdGUgdmFsaWQifV19fQogICAgICAgID4KICAgICAgICA8L2RlZXMtZGF0YXZpZXctc3RhdHVzb2JqZWN0PgogICAgICA8L2Rpdj4KICAgICAgCiAgICAgIDxkaXYgY2xhc3M9ImRlbW8tc2VjdGlvbiI+CiAgICAgICAgPGRpdiBjbGFzcz0iZGVtby10aXRsZSI+RGF0YWJhc2UgQ2x1c3RlciBTdGF0dXM8L2Rpdj4KICAgICAgICA8ZGVlcy1kYXRhdmlldy1zdGF0dXNvYmplY3QKICAgICAgICAgIC5zdGF0dXNPYmplY3Q9JHt7aWQ6IjIiLG5hbWU6IlBvc3RncmVTUUwgQ2x1c3RlciIsbGFzdFVwZGF0ZWQ6RGF0ZS5ub3coKS0zNmU1LGNvbWJpbmVkU3RhdHVzOiJwYXJ0bHlfb2siLGNvbWJpbmVkU3RhdHVzVGV4dDoiTWlub3IgaXNzdWVzIGRldGVjdGVkIixkZXRhaWxzOlt7bmFtZToiUHJpbWFyeSBOb2RlIix2YWx1ZToiZGItcHJpbWFyeS0wMSAoaGVhbHRoeSkiLHN0YXR1czoib2siLHN0YXR1c1RleHQ6Ik9wZXJhdGluZyBub3JtYWxseSJ9LHtuYW1lOiJSZXBsaWNhIExhZyIsdmFsdWU6IjIuNSBzZWNvbmRzIixzdGF0dXM6InBhcnRseV9vayIsc3RhdHVzVGV4dDoiU2xpZ2h0bHkgZWxldmF0ZWQifSx7bmFtZToiRGlzayBVc2FnZSIsdmFsdWU6Ijc4JSAoMzEyR0IgLyA0MDBHQikiLHN0YXR1czoicGFydGx5X29rIixzdGF0dXNUZXh0OiJBcHByb2FjaGluZyB0aHJlc2hvbGQifSx7bmFtZToiQ29ubmVjdGlvbiBQb29sIix2YWx1ZToiODkgLyAxMDAgY29ubmVjdGlvbnMiLHN0YXR1czoib2siLHN0YXR1c1RleHQ6IldpdGhpbiBsaW1pdHMifV19fQogICAgICAgID4KICAgICAgICA8L2RlZXMtZGF0YXZpZXctc3RhdHVzb2JqZWN0PgogICAgICA8L2Rpdj4KICAgICAgCiAgICAgIDxkaXYgY2xhc3M9ImRlbW8tc2VjdGlvbiI+CiAgICAgICAgPGRpdiBjbGFzcz0iZGVtby10aXRsZSI+QnVpbGQgUGlwZWxpbmUgU3RhdHVzPC9kaXY+CiAgICAgICAgPGRlZXMtZGF0YXZpZXctc3RhdHVzb2JqZWN0CiAgICAgICAgICAuc3RhdHVzT2JqZWN0PSR7e2lkOiIzIixuYW1lOiJDSS9DRCBQaXBlbGluZSIsbGFzdFVwZGF0ZWQ6RGF0ZS5ub3coKS04NjRlNSxjb21iaW5lZFN0YXR1czoibm90X29rIixjb21iaW5lZFN0YXR1c1RleHQ6IkJ1aWxkIGZhaWx1cmUiLGRldGFpbHM6W3tuYW1lOiJMYXN0IEJ1aWxkIix2YWx1ZToiQnVpbGQgIzEyMzQgLSBGYWlsZWQiLHN0YXR1czoibm90X29rIixzdGF0dXNUZXh0OiJUZXN0IGZhaWx1cmVzIn0se25hbWU6IkZhaWxlZCBUZXN0cyIsdmFsdWU6IjMgdGVzdHMgZmFpbGVkOiBhdXRoLnNwZWMudHMsIHVzZXIuc3BlYy50cywgYXBpLnNwZWMudHMiLHN0YXR1czoibm90X29rIixzdGF0dXNUZXh0OiJVbml0IHRlc3QgZmFpbHVyZXMifSx7bmFtZToiQ29kZSBDb3ZlcmFnZSIsdmFsdWU6IjgyLjUlICh0YXJnZXQ6IDg1JSkiLHN0YXR1czoicGFydGx5X29rIixzdGF0dXNUZXh0OiJCZWxvdyB0YXJnZXQifSx7bmFtZToiQnVpbGQgRHVyYXRpb24iLHZhbHVlOiIxMm0gMzRzIixzdGF0dXM6Im9rIixzdGF0dXNUZXh0OiJOb3JtYWwgZHVyYXRpb24ifV19fQogICAgICAgID4KICAgICAgICA8L2RlZXMtZGF0YXZpZXctc3RhdHVzb2JqZWN0PgogICAgICA8L2Rpdj4KICAgIDwvZGl2PgogIDwvZGl2PmB9KTt2YXIgd0lyLE9jdCxNSXIsa0lyPWwoKCk9PntWbigpO09pKCk7eUlyKCk7U2UoKTtMcygpO2JpKCk7b3QoKTt3SXI9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxPY3Q9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LE1Jcj0oKCk9PntsZXQgZT1bemUoImRlZXMtZGF0YXZpZXctc3RhdHVzb2JqZWN0IildLHQscj1bXSxhLGk9RGUsbyxuPVtdLHM9W107dmFyIGM9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCBkPXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO289W2ooe3R5cGU6T2JqZWN0fSldLHdJcih0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InN0YXR1c09iamVjdCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Zj0+InN0YXR1c09iamVjdCJpbiBmLGdldDpmPT5mLnN0YXR1c09iamVjdCxzZXQ6KGYsdSk9PntmLnN0YXR1c09iamVjdD11fX0sbWV0YWRhdGE6ZH0sbixzKSx3SXIobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6ZH0sbnVsbCxyKSxjPWE9dC52YWx1ZSxkJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOmR9KX1zdGF0aWMgZGVtbz12SXI7c3RhdGljIGRlbW9Hcm91cHM9WyJEYXRhIFZpZXciXTsjZT1PY3QodGhpcyxuLHZvaWQgMCk7Z2V0IHN0YXR1c09iamVjdCgpe3JldHVybiB0aGlzLiNlfXNldCBzdGF0dXNPYmplY3QoZCl7dGhpcy4jZT1kfXN0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgLyogVE9ETzogTWlncmF0ZSBoYXJkY29kZWQgdmFsdWVzIHRvIC0tZGVlcy0qIENTUyB2YXJpYWJsZXMgKi8KICAgICAgOmhvc3QgewogICAgICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsICdTZWdvZSBVSScsICdSb2JvdG8nLCBzYW5zLXNlcmlmOwogICAgICB9CgogICAgICAubWFpbmJveCB7CiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAxMDAlKSIsImhzbCgwIDAlIDMuOSUpIil9OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OS44JSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgYm94LXNoYWRvdzogMCAxcHggM3B4IDAgaHNsKDAgMCUgMCUgLyAwLjEpLCAwIDFweCAycHggLTFweCBoc2woMCAwJSAwJSAvIDAuMSk7CiAgICAgICAgbWluLWhlaWdodDogNDhweDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDklKSIsImhzbCgwIDAlIDk4JSkiKX07CiAgICAgICAgY3Vyc29yOiBkZWZhdWx0OwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgIH0KCiAgICAgIC5oZWFkaW5nIHsKICAgICAgICBkaXNwbGF5OiBncmlkOwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA0OHB4IGF1dG8gMTAwcHg7CiAgICAgICAgaGVpZ2h0OiA1NnB4OwogICAgICAgIHBhZGRpbmc6IDAgMTZweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOTclKSIsImhzbCgwIDAlIDclKSIpfTsKICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgwIDAlIDg5LjglKSIsImhzbCgwIDAlIDE0LjklKSIpfTsKICAgICAgfQoKICAgICAgaDEgewogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIG1hcmdpbjogMHB4OwogICAgICAgIHBhZGRpbmc6IDBweCAxMnB4OwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTUlKSIsImhzbCgwIDAlIDkzLjklKSIpfTsKICAgICAgfQoKICAgICAgLnN0YXR1c2RvdCB7CiAgICAgICAgaGVpZ2h0OiAxMHB4OwogICAgICAgIHdpZHRoOiAxMHB4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNjMuOSUpIiwiaHNsKDAgMCUgNDUuMSUpIil9OwogICAgICAgIG1hcmdpbjogYXV0bzsKICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggJHttLmJkVGhlbWUoImhzbCgwIDAlIDYzLjklIC8gMC4yKSIsImhzbCgwIDAlIDQ1LjElIC8gMC4yKSIpfTsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlOwogICAgICB9CgogICAgICAuY29weU1haW4gewogICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAxMDAlKSIsImhzbCgwIDAlIDE0LjklKSIpfTsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODkuOCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICBwYWRkaW5nOiA2cHggMTJweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA0NS4xJSkiLCJoc2woMCAwJSA2My45JSkiKX07CiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICB9CgogICAgICAuY29weU1haW46aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5NS4xJSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNzkuOCUpIiwiaHNsKDAgMCUgMjAuOSUpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTUlKSIsImhzbCgwIDAlIDkzLjklKSIpfTsKICAgICAgfQoKICAgICAgLmNvcHlNYWluOmFjdGl2ZSB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDkxJSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk4KTsKICAgICAgfQoKICAgICAgLnN0YXR1c2RvdC5vayB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgxNDIuMSA3Ni4yJSAzNi4zJSkiLCJoc2woMTQyLjEgNzAuNiUgNDUuMyUpIil9OwogICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCAke20uYmRUaGVtZSgiaHNsKDE0Mi4xIDc2LjIlIDM2LjMlIC8gMC4yKSIsImhzbCgxNDIuMSA3MC42JSA0NS4zJSAvIDAuMikiKX07CiAgICAgIH0KCiAgICAgIC5zdGF0dXNkb3Qubm90X29rIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgODQuMiUgNjAuMiUpIiwiaHNsKDAgNzIuMiUgNTAuNiUpIil9OwogICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCAke20uYmRUaGVtZSgiaHNsKDAgODQuMiUgNjAuMiUgLyAwLjIpIiwiaHNsKDAgNzIuMiUgNTAuNiUgLyAwLjIpIil9OwogICAgICB9CgogICAgICAuc3RhdHVzZG90LnBhcnRseV9vayB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyNSA5NSUgNTMlKSIsImhzbCgyNSA5NSUgNjMlKSIpfTsKICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggJHttLmJkVGhlbWUoImhzbCgyNSA5NSUgNTMlIC8gMC4yKSIsImhzbCgyNSA5NSUgNjMlIC8gMC4yKSIpfTsKICAgICAgfQoKICAgICAgLmRldGFpbCB7CiAgICAgICAgbWluLWhlaWdodDogNjBweDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGRpc3BsYXk6IGdyaWQ7CiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA0OHB4IGF1dG87CiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5NCUpIiwiaHNsKDAgMCUgMTQuOSUpIil9OwogICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZTsKICAgICAgICBwYWRkaW5nOiAwIDE2cHg7CiAgICAgICAgY3Vyc29yOiBjb250ZXh0LW1lbnU7CiAgICAgIH0KCiAgICAgIC5kZXRhaWw6aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5NyUpIiwiaHNsKDAgMCUgNyUpIil9OwogICAgICB9CgogICAgICAuZGV0YWlsOmFjdGl2ZSB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk1JSkiLCJoc2woMCAwJSA5JSkiKX07CiAgICAgIH0KCiAgICAgIC5kZXRhaWwgLmRldGFpbHNUZXh0IHsKICAgICAgICBwYWRkaW5nOiAxMnB4OwogICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDsKICAgICAgfQoKICAgICAgLmRldGFpbCAuZGV0YWlsc1RleHQgLmxhYmVsIHsKICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDQ1LjElKSIsImhzbCgwIDAlIDYzLjklKSIpfTsKICAgICAgICBtYXJnaW4tYm90dG9tOiAycHg7CiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07CiAgICAgIH0KCiAgICAgIC5kZXRhaWwgLmRldGFpbHNUZXh0IC52YWx1ZSB7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIGZvbnQtZmFtaWx5OiAnSW50ZWwgT25lIE1vbm8nLCAnR2Vpc3QgTW9ubycsIG1vbm9zcGFjZTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDE1JSkiLCJoc2woMCAwJSA5MCUpIil9OwogICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7CiAgICAgIH0KCiAgICAgIC5ib3R0b21CYXIgewogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDQ1LjElKSIsImhzbCgwIDAlIDYzLjklKSIpfTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOTclKSIsImhzbCgwIDAlIDclKSIpfTsKICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgwIDAlIDg5LjglKSIsImhzbCgwIDAlIDE0LjklKSIpfTsKICAgICAgICBoZWlnaHQ6IDI4cHg7CiAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4OwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsKICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgICB9CgogICAgICAuYm90dG9tQmFyIC5zdGF0dXNMYWJlbCB7CiAgICAgICAgcGFkZGluZzogMCAxNnB4OwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICB9CiAgICBgXTtyZW5kZXIoKXtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0ibWFpbmJveCI+CiAgICAgICAgPGRpdiBjbGFzcz0iaGVhZGluZyI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGF0dXNkb3QgJHt0aGlzLnN0YXR1c09iamVjdD8uY29tYmluZWRTdGF0dXN9Ij48L2Rpdj4KICAgICAgICAgIDxoMT4ke3RoaXMuc3RhdHVzT2JqZWN0Py5uYW1lfHwiTm8gc3RhdHVzIG9iamVjdCBhc3NpZ25lZCJ9PC9oMT4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNvcHlNYWluIiBAY2xpY2s9JHt0aGlzLmhhbmRsZUNvcHlBc0pzb259PkNvcHkgSlNPTjwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgICR7dGhpcy5zdGF0dXNPYmplY3Q/LmRldGFpbHM/Lm1hcChkPT5TYAogICAgICAgICAgICA8ZGl2IAogICAgICAgICAgICAgIGNsYXNzPSJkZXRhaWwiCiAgICAgICAgICAgICAgQGNvbnRleHRtZW51PSR7Zj0+e2YucHJldmVudERlZmF1bHQoKSx0ci5vcGVuQ29udGV4dE1lbnVXaXRoT3B0aW9ucyhmLFt7bmFtZToiQ29weSBWYWx1ZSIsaWNvbk5hbWU6Imx1Y2lkZTpjb3B5IixhY3Rpb246YXN5bmMoKT0+e2F3YWl0IHRoaXMuY29weVRvQ2xpcGJvYXJkKGQudmFsdWUsIlZhbHVlIil9fSx7bmFtZToiQ29weSBLZXkiLGljb25OYW1lOiJsdWNpZGU6a2V5IixhY3Rpb246YXN5bmMoKT0+e2F3YWl0IHRoaXMuY29weVRvQ2xpcGJvYXJkKGQubmFtZSwiS2V5Iil9fSx7bmFtZToiQ29weSBLZXk6VmFsdWUiLGljb25OYW1lOiJsdWNpZGU6Y29weS1wbHVzIixhY3Rpb246YXN5bmMoKT0+e2F3YWl0IHRoaXMuY29weVRvQ2xpcGJvYXJkKGAke2QubmFtZX06ICR7ZC52YWx1ZX1gLCJLZXk6VmFsdWUiKX19XSl9fQogICAgICAgICAgICA+CiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RhdHVzZG90ICR7ZC5zdGF0dXN9Ij48L2Rpdj4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJkZXRhaWxzVGV4dCI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsYWJlbCI+JHtkLm5hbWV9PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ2YWx1ZSI+JHtkLnZhbHVlfTwvZGl2PgogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIGApfQogICAgICAgIDxkaXYgY2xhc3M9ImJvdHRvbUJhciI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGF0dXNMYWJlbCI+JHt0aGlzLnN0YXR1c09iamVjdD8ubGFzdFVwZGF0ZWQ/YExhc3QgdXBkYXRlZDogJHtuZXcgRGF0ZSh0aGlzLnN0YXR1c09iamVjdC5sYXN0VXBkYXRlZCkudG9Mb2NhbGVTdHJpbmcoKX1gOiIifTwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIGB9YXN5bmMgZmlyc3RVcGRhdGVkKCl7fWFzeW5jIGNvcHlUb0NsaXBib2FyZChkLGY9IlRleHQiKXt0cnl7YXdhaXQgbmF2aWdhdG9yLmNsaXBib2FyZC53cml0ZVRleHQoZCksY29uc29sZS5sb2coYCR7Zn0gY29waWVkIHRvIGNsaXBib2FyZGApfWNhdGNoKHUpe2NvbnNvbGUuZXJyb3IoYEZhaWxlZCB0byBjb3B5ICR7Zn06YCx1KX19YXN5bmMgaGFuZGxlQ29weUFzSnNvbigpe2lmKHRoaXMuc3RhdHVzT2JqZWN0KXRyeXthd2FpdCBuYXZpZ2F0b3IuY2xpcGJvYXJkLndyaXRlVGV4dChKU09OLnN0cmluZ2lmeSh0aGlzLnN0YXR1c09iamVjdCxudWxsLDIpKTtsZXQgZD10aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcigiLmNvcHlNYWluIiksZj1kLnRleHRDb250ZW50O2QudGV4dENvbnRlbnQ9IkNvcGllZCEiO2xldCB1PSF0aGlzLmdvQnJpZ2h0O2Quc3R5bGUuYmFja2dyb3VuZD11PyJoc2woMTQyLjEgNzAuNiUgNDUuMyUgLyAwLjEpIjoiaHNsKDE0Mi4xIDc2LjIlIDM2LjMlIC8gMC4xKSIsZC5zdHlsZS5ib3JkZXJDb2xvcj11PyJoc2woMTQyLjEgNzAuNiUgNDUuMyUpIjoiaHNsKDE0Mi4xIDc2LjIlIDM2LjMlKSIsZC5zdHlsZS5jb2xvcj11PyJoc2woMTQyLjEgNzAuNiUgNDUuMyUpIjoiaHNsKDE0Mi4xIDc2LjIlIDM2LjMlKSIsc2V0VGltZW91dCgoKT0+e2QudGV4dENvbnRlbnQ9ZixkLnN0eWxlLmJhY2tncm91bmQ9IiIsZC5zdHlsZS5ib3JkZXJDb2xvcj0iIixkLnN0eWxlLmNvbG9yPSIifSwxNTAwKX1jYXRjaChkKXtjb25zb2xlLmVycm9yKCJGYWlsZWQgdG8gY29weToiLGQpfX1jb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyksT2N0KHRoaXMscyl9c3RhdGlje09jdChhLHIpfX07cmV0dXJuIGM9YX0pKCl9KTt2YXIgU0lyPWwoKCk9PntrSXIoKX0pO3ZhciB6SXI9bCgoKT0+e3RjZSgpfSk7dmFyIFJjdCxDSXIsX0lyPWwoKCk9PntTZSgpO0JjdCgpO1JjdD1jbGFzc3tvYmplY3RzPW5ldyBNYXA7Y29uc3RydWN0b3IoKXtsZXQgdD1uZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCk7dGhpcy5vYmplY3RzLnNldCgiZG9jdW1lbnRzL3JlYWRtZS5tZCIse2NvbnRlbnQ6YnRvYShgIyBXZWxjb21lCgpUaGlzIGlzIGEgZGVtbyBTdG9yYWdlIGJyb3dzZXIuCmApLGNvbnRlbnRUeXBlOiJ0ZXh0L21hcmtkb3duIixzaXplOjQyLGxhc3RNb2RpZmllZDp0fSksdGhpcy5vYmplY3RzLnNldCgiZG9jdW1lbnRzL2NvbmZpZy5qc29uIix7Y29udGVudDpidG9hKGB7CiAgIm5hbWUiOiAiZGVtbyIsCiAgInZlcnNpb24iOiAiMS4wLjAiCn1gKSxjb250ZW50VHlwZToiYXBwbGljYXRpb24vanNvbiIsc2l6ZTo0OCxsYXN0TW9kaWZpZWQ6dH0pLHRoaXMub2JqZWN0cy5zZXQoImRvY3VtZW50cy9ub3Rlcy90b2RvLnR4dCIse2NvbnRlbnQ6YnRvYShgQnV5IG1pbGsKRml4IGJ1ZyAjNDIKRGVwbG95IHRvIHByb2R1Y3Rpb25gKSxjb250ZW50VHlwZToidGV4dC9wbGFpbiIsc2l6ZTo0NSxsYXN0TW9kaWZpZWQ6dH0pLHRoaXMub2JqZWN0cy5zZXQoImltYWdlcy9sb2dvLnBuZyIse2NvbnRlbnQ6YnRvYSgiZmFrZS1wbmctZGF0YSIpLGNvbnRlbnRUeXBlOiJpbWFnZS9wbmciLHNpemU6MjQ1MDAsbGFzdE1vZGlmaWVkOnR9KSx0aGlzLm9iamVjdHMuc2V0KCJpbWFnZXMvYmFubmVyLmpwZyIse2NvbnRlbnQ6YnRvYSgiZmFrZS1qcGctZGF0YSIpLGNvbnRlbnRUeXBlOiJpbWFnZS9qcGVnIixzaXplOjE1NmUzLGxhc3RNb2RpZmllZDp0fSksdGhpcy5vYmplY3RzLnNldCgic2NyaXB0cy9kZXBsb3kuc2giLHtjb250ZW50OmJ0b2EoYCMhL2Jpbi9iYXNoCmVjaG8gIkRlcGxveWluZy4uLiIKYCksY29udGVudFR5cGU6InRleHQvcGxhaW4iLHNpemU6MzQsbGFzdE1vZGlmaWVkOnR9KSx0aGlzLm9iamVjdHMuc2V0KCJpbmRleC5odG1sIix7Y29udGVudDpidG9hKGA8IURPQ1RZUEUgaHRtbD4KPGh0bWw+Cjxib2R5PgogIDxoMT5IZWxsbyBXb3JsZDwvaDE+CjwvYm9keT4KPC9odG1sPmApLGNvbnRlbnRUeXBlOiJ0ZXh0L2h0bWwiLHNpemU6NzIsbGFzdE1vZGlmaWVkOnR9KSx0aGlzLm9iamVjdHMuc2V0KCJzdHlsZXMuY3NzIix7Y29udGVudDpidG9hKCJib2R5IHsgbWFyZ2luOiAwOyBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgfSIpLGNvbnRlbnRUeXBlOiJ0ZXh0L2NzcyIsc2l6ZTo0NCxsYXN0TW9kaWZpZWQ6dH0pfWFzeW5jIGxpc3RPYmplY3RzKHQscixhKXtsZXQgaT1yfHwiIixvPVtdLG49bmV3IFNldDtmb3IobGV0W3MsY11vZiB0aGlzLm9iamVjdHMpe2lmKCFzLnN0YXJ0c1dpdGgoaSkpY29udGludWU7bGV0IGQ9cy5zbGljZShpLmxlbmd0aCk7aWYoYSl7bGV0IGY9ZC5pbmRleE9mKGEpO2Y+PTA/bi5hZGQoaStkLnNsaWNlKDAsZisxKSk6by5wdXNoKHtrZXk6cyxzaXplOmMuc2l6ZSxsYXN0TW9kaWZpZWQ6Yy5sYXN0TW9kaWZpZWR9KX1lbHNlIG8ucHVzaCh7a2V5OnMsc2l6ZTpjLnNpemUsbGFzdE1vZGlmaWVkOmMubGFzdE1vZGlmaWVkfSl9cmV0dXJue29iamVjdHM6byxwcmVmaXhlczpBcnJheS5mcm9tKG4pLnNvcnQoKX19YXN5bmMgZ2V0T2JqZWN0KHQscil7bGV0IGE9dGhpcy5vYmplY3RzLmdldChyKTtpZighYSl0aHJvdyBuZXcgRXJyb3IoIk5vdCBmb3VuZCIpO3JldHVybnsuLi5hfX1hc3luYyBwdXRPYmplY3QodCxyLGEsaSl7cmV0dXJuIHRoaXMub2JqZWN0cy5zZXQocix7Y29udGVudDphLGNvbnRlbnRUeXBlOmksc2l6ZTphdG9iKGEpLmxlbmd0aCxsYXN0TW9kaWZpZWQ6bmV3IERhdGUoKS50b0lTT1N0cmluZygpfSksITB9YXN5bmMgZGVsZXRlT2JqZWN0KHQscil7cmV0dXJuIHRoaXMub2JqZWN0cy5kZWxldGUocil9YXN5bmMgZGVsZXRlUHJlZml4KHQscil7Zm9yKGxldCBhIG9mIHRoaXMub2JqZWN0cy5rZXlzKCkpYS5zdGFydHNXaXRoKHIpJiZ0aGlzLm9iamVjdHMuZGVsZXRlKGEpO3JldHVybiEwfWFzeW5jIGdldE9iamVjdFVybCh0LHIpe2xldCBhPXRoaXMub2JqZWN0cy5nZXQocik7aWYoIWEpcmV0dXJuIiI7bGV0IGk9bmV3IEJsb2IoW1VpbnQ4QXJyYXkuZnJvbShhdG9iKGEuY29udGVudCksbz0+by5jaGFyQ29kZUF0KDApKV0se3R5cGU6YS5jb250ZW50VHlwZX0pO3JldHVybiBVUkwuY3JlYXRlT2JqZWN0VVJMKGkpfWFzeW5jIG1vdmVPYmplY3QodCxyLGEpe2xldCBpPXRoaXMub2JqZWN0cy5nZXQocik7cmV0dXJuIGk/KHRoaXMub2JqZWN0cy5zZXQoYSx7Li4uaSxsYXN0TW9kaWZpZWQ6bmV3IERhdGUoKS50b0lTT1N0cmluZygpfSksdGhpcy5vYmplY3RzLmRlbGV0ZShyKSx7c3VjY2VzczohMH0pOntzdWNjZXNzOiExLGVycm9yOiJTb3VyY2Ugbm90IGZvdW5kIn19YXN5bmMgbW92ZVByZWZpeCh0LHIsYSl7bGV0IGk9MCxvPUFycmF5LmZyb20odGhpcy5vYmplY3RzLmVudHJpZXMoKSkuZmlsdGVyKChbbl0pPT5uLnN0YXJ0c1dpdGgocikpO2ZvcihsZXRbbixzXW9mIG8pe2xldCBjPWErbi5zbGljZShyLmxlbmd0aCk7dGhpcy5vYmplY3RzLnNldChjLHsuLi5zLGxhc3RNb2RpZmllZDpuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCl9KSx0aGlzLm9iamVjdHMuZGVsZXRlKG4pLGkrK31yZXR1cm57c3VjY2VzczohMCxtb3ZlZENvdW50Oml9fX0sQ0lyPSgpPT5TYAogIDxzdHlsZT4KICAgIC5kZW1vLWNvbnRhaW5lciB7CiAgICAgIGhlaWdodDogNjAwcHg7CiAgICAgIHBhZGRpbmc6IDE2cHg7CiAgICB9CiAgPC9zdHlsZT4KICA8ZGl2IGNsYXNzPSJkZW1vLWNvbnRhaW5lciI+CiAgICA8ZGVlcy1zdG9yYWdlLWJyb3dzZXIKICAgICAgLmRhdGFQcm92aWRlcj0ke25ldyBSY3R9CiAgICAgIC5idWNrZXROYW1lPSR7ImRlbW8tYnVja2V0In0KICAgID48L2RlZXMtc3RvcmFnZS1icm93c2VyPgogIDwvZGl2PgpgfSk7ZnVuY3Rpb24gWDkoZSl7aWYoZT09bnVsbClyZXR1cm4iLSI7aWYoZT09PTApcmV0dXJuIjAgQiI7bGV0IHQ9WyJCIiwiS0IiLCJNQiIsIkdCIiwiVEIiXSxyPWUsYT0wO2Zvcig7cj49MTAyNCYmYTx0Lmxlbmd0aC0xOylyLz0xMDI0LGErKztyZXR1cm5gJHtyLnRvRml4ZWQoYT4wPzE6MCl9ICR7dFthXX1gfWZ1bmN0aW9uIFRJcihlKXtyZXR1cm4gZT09bnVsbD8iIjplPj0xZTY/YCR7KGUvMWU2KS50b0ZpeGVkKDEpfU1gOmU+PTFlMz9gJHsoZS8xZTMpLnRvRml4ZWQoMSl9S2A6ZS50b1N0cmluZygpfWZ1bmN0aW9uIGRyKGUpe2xldCB0PWUucmVwbGFjZSgvXC8kLywiIikuc3BsaXQoIi8iKTtyZXR1cm4gdFt0Lmxlbmd0aC0xXXx8ZX1mdW5jdGlvbiBROShlLHQpe3JldHVybiBlLmVuZHNXaXRoKCIvIikmJnQuc3RhcnRzV2l0aChlKT97dmFsaWQ6ITEsZXJyb3I6IkNhbm5vdCBtb3ZlIGEgZm9sZGVyIGludG8gaXRzZWxmIn06anMoZSk9PT10P3t2YWxpZDohMSxlcnJvcjoiSXRlbSBpcyBhbHJlYWR5IGluIHRoaXMgbG9jYXRpb24ifTp7dmFsaWQ6ITB9fWZ1bmN0aW9uIGpzKGUpe2xldCB0PWUuZW5kc1dpdGgoIi8iKT9lLnNsaWNlKDAsLTEpOmUscj10Lmxhc3RJbmRleE9mKCIvIik7cmV0dXJuIHI+PTA/dC5zdWJzdHJpbmcoMCxyKzEpOiIifWZ1bmN0aW9uIGgzKGUpe3JldHVybntqc29uOiJhcHBsaWNhdGlvbi9qc29uIix0eHQ6InRleHQvcGxhaW4iLGh0bWw6InRleHQvaHRtbCIsY3NzOiJ0ZXh0L2NzcyIsanM6ImFwcGxpY2F0aW9uL2phdmFzY3JpcHQiLHRzOiJ0ZXh0L3R5cGVzY3JpcHQiLG1kOiJ0ZXh0L21hcmtkb3duIix4bWw6ImFwcGxpY2F0aW9uL3htbCIseWFtbDoidGV4dC95YW1sIix5bWw6InRleHQveWFtbCIsY3N2OiJ0ZXh0L2NzdiJ9W2VdfHwiYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtIn1mdW5jdGlvbiBLOShlKXtyZXR1cm57anNvbjpgewogIAp9YCxodG1sOmA8IURPQ1RZUEUgaHRtbD4KPGh0bWw+CjxoZWFkPgogIDx0aXRsZT48L3RpdGxlPgo8L2hlYWQ+Cjxib2R5PgogIAo8L2JvZHk+CjwvaHRtbD5gLG1kOmAjIFRpdGxlCgpgLHR4dDoiIn1bZV18fCIifWZ1bmN0aW9uIFI4KGUpe2lmKCFlKXJldHVybltdO2xldCB0PWUuc3BsaXQoIi8iKS5maWx0ZXIoaT0+aSkscj1bXSxhPSIiO2ZvcihsZXQgaSBvZiB0KWErPWkrIi8iLHIucHVzaChhKTtyZXR1cm4gcn12YXIgRlo9bCgoKT0+e30pO3ZhciBIcixmdCxMSXIsSGN0PWwoKCk9PntTZSgpO2JpKCk7b3QoKTtGWigpO0hyPWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sZnQ9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LExJcj0oKCk9PntsZXQgZT1bemUoImRlZXMtc3RvcmFnZS1jb2x1bW5zIildLHQscj1bXSxhLGk9RGUsbyxuPVtdLHM9W10sYyxkPVtdLGY9W10sdSxwPVtdLGg9W10sYix4PVtdLGc9W10sdix3PVtdLE09W10sRixDPVtdLGs9W10sTiwkPVtdLEk9W10sQix6PVtdLHk9W10sRSxfPVtdLFA9W10sVixIPVtdLFc9W10sYWUsVD1bXSxKPVtdLGZlLEw9W10sUT1bXSxrZSxHPVtdLEE9W10sRCxSPVtdLE89W10sWSx1ZT1bXSx5ZT1bXSwkZSxVPVtdLHE9W10saWUsd2U9W10sZ2U9W10sQWUseGU9W10sbmU9W10sTGUsT2U9W10sSmU9W10sdGUsWj1bXSxlZT1bXSxiZSxOZT1bXSxLZT1bXSx5dCxudD1bXSxMdD1bXSxPdCxzZT1bXSxkZT1bXSxFZSxndD1bXSxrdD1bXSx5cixsaT1bXSxhMT1bXSxpMSxfZT1bXSxGZT1bXSxOdCxtcj1bXSxDcj1bXSxPcixfcj1bXSxvMT1bXSxuMSxDZT1bXSx2ZT1bXSxIZSxUZT1bXSxwZT1bXTt2YXIgR2U9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCBjZT10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHt0eXBlOk9iamVjdH0pXSxjPVtqKHt0eXBlOlN0cmluZ30pXSx1PVtqKHt0eXBlOlN0cmluZ30pXSxiPVtqKHt0eXBlOk51bWJlcn0pXSx2PVtyZSgpXSxGPVtyZSgpXSxOPVtyZSgpXSxCPVtyZSgpXSxFPVtyZSgpXSxWPVtyZSgpXSxhZT1bcmUoKV0sZmU9W3JlKCldLGtlPVtyZSgpXSxEPVtyZSgpXSxZPVtyZSgpXSwkZT1bcmUoKV0saWU9W3JlKCldLEFlPVtyZSgpXSxMZT1bcmUoKV0sdGU9W3JlKCldLGJlPVtyZSgpXSx5dD1bcmUoKV0sT3Q9W3JlKCldLEVlPVtyZSgpXSx5cj1bcmUoKV0saTE9W3JlKCldLE50PVtyZSgpXSxPcj1bcmUoKV0sbjE9W3JlKCldLEhlPVtyZSgpXSxIcih0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImRhdGFQcm92aWRlciIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Sz0+ImRhdGFQcm92aWRlciJpbiBLLGdldDpLPT5LLmRhdGFQcm92aWRlcixzZXQ6KEssTWUpPT57Sy5kYXRhUHJvdmlkZXI9TWV9fSxtZXRhZGF0YTpjZX0sbixzKSxIcih0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImJ1Y2tldE5hbWUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOks9PiJidWNrZXROYW1lImluIEssZ2V0Oks9PksuYnVja2V0TmFtZSxzZXQ6KEssTWUpPT57Sy5idWNrZXROYW1lPU1lfX0sbWV0YWRhdGE6Y2V9LGQsZiksSHIodGhpcyxudWxsLHUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJjdXJyZW50UHJlZml4IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpLPT4iY3VycmVudFByZWZpeCJpbiBLLGdldDpLPT5LLmN1cnJlbnRQcmVmaXgsc2V0OihLLE1lKT0+e0suY3VycmVudFByZWZpeD1NZX19LG1ldGFkYXRhOmNlfSxwLGgpLEhyKHRoaXMsbnVsbCxiLHtraW5kOiJhY2Nlc3NvciIsbmFtZToicmVmcmVzaEtleSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Sz0+InJlZnJlc2hLZXkiaW4gSyxnZXQ6Sz0+Sy5yZWZyZXNoS2V5LHNldDooSyxNZSk9PntLLnJlZnJlc2hLZXk9TWV9fSxtZXRhZGF0YTpjZX0seCxnKSxIcih0aGlzLG51bGwsdix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImNvbHVtbnMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOks9PiJjb2x1bW5zImluIEssZ2V0Oks9PksuY29sdW1ucyxzZXQ6KEssTWUpPT57Sy5jb2x1bW5zPU1lfX0sbWV0YWRhdGE6Y2V9LHcsTSksSHIodGhpcyxudWxsLEYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJsb2FkaW5nIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpLPT4ibG9hZGluZyJpbiBLLGdldDpLPT5LLmxvYWRpbmcsc2V0OihLLE1lKT0+e0subG9hZGluZz1NZX19LG1ldGFkYXRhOmNlfSxDLGspLEhyKHRoaXMsbnVsbCxOLHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2hvd0NyZWF0ZURpYWxvZyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Sz0+InNob3dDcmVhdGVEaWFsb2ciaW4gSyxnZXQ6Sz0+Sy5zaG93Q3JlYXRlRGlhbG9nLHNldDooSyxNZSk9PntLLnNob3dDcmVhdGVEaWFsb2c9TWV9fSxtZXRhZGF0YTpjZX0sJCxJKSxIcih0aGlzLG51bGwsQix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImNyZWF0ZURpYWxvZ1R5cGUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOks9PiJjcmVhdGVEaWFsb2dUeXBlImluIEssZ2V0Oks9PksuY3JlYXRlRGlhbG9nVHlwZSxzZXQ6KEssTWUpPT57Sy5jcmVhdGVEaWFsb2dUeXBlPU1lfX0sbWV0YWRhdGE6Y2V9LHoseSksSHIodGhpcyxudWxsLEUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJjcmVhdGVEaWFsb2dQcmVmaXgiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOks9PiJjcmVhdGVEaWFsb2dQcmVmaXgiaW4gSyxnZXQ6Sz0+Sy5jcmVhdGVEaWFsb2dQcmVmaXgsc2V0OihLLE1lKT0+e0suY3JlYXRlRGlhbG9nUHJlZml4PU1lfX0sbWV0YWRhdGE6Y2V9LF8sUCksSHIodGhpcyxudWxsLFYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJjcmVhdGVEaWFsb2dOYW1lIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpLPT4iY3JlYXRlRGlhbG9nTmFtZSJpbiBLLGdldDpLPT5LLmNyZWF0ZURpYWxvZ05hbWUsc2V0OihLLE1lKT0+e0suY3JlYXRlRGlhbG9nTmFtZT1NZX19LG1ldGFkYXRhOmNlfSxILFcpLEhyKHRoaXMsbnVsbCxhZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImRyYWdPdmVyQ29sdW1uSW5kZXgiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOks9PiJkcmFnT3ZlckNvbHVtbkluZGV4ImluIEssZ2V0Oks9PksuZHJhZ092ZXJDb2x1bW5JbmRleCxzZXQ6KEssTWUpPT57Sy5kcmFnT3ZlckNvbHVtbkluZGV4PU1lfX0sbWV0YWRhdGE6Y2V9LFQsSiksSHIodGhpcyxudWxsLGZlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZHJhZ092ZXJGb2xkZXJQcmVmaXgiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOks9PiJkcmFnT3ZlckZvbGRlclByZWZpeCJpbiBLLGdldDpLPT5LLmRyYWdPdmVyRm9sZGVyUHJlZml4LHNldDooSyxNZSk9PntLLmRyYWdPdmVyRm9sZGVyUHJlZml4PU1lfX0sbWV0YWRhdGE6Y2V9LEwsUSksSHIodGhpcyxudWxsLGtlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToidXBsb2FkaW5nIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpLPT4idXBsb2FkaW5nImluIEssZ2V0Oks9PksudXBsb2FkaW5nLHNldDooSyxNZSk9PntLLnVwbG9hZGluZz1NZX19LG1ldGFkYXRhOmNlfSxHLEEpLEhyKHRoaXMsbnVsbCxELHtraW5kOiJhY2Nlc3NvciIsbmFtZToidXBsb2FkUHJvZ3Jlc3MiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOks9PiJ1cGxvYWRQcm9ncmVzcyJpbiBLLGdldDpLPT5LLnVwbG9hZFByb2dyZXNzLHNldDooSyxNZSk9PntLLnVwbG9hZFByb2dyZXNzPU1lfX0sbWV0YWRhdGE6Y2V9LFIsTyksSHIodGhpcyxudWxsLFkse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzaG93TW92ZURpYWxvZyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Sz0+InNob3dNb3ZlRGlhbG9nImluIEssZ2V0Oks9Pksuc2hvd01vdmVEaWFsb2csc2V0OihLLE1lKT0+e0suc2hvd01vdmVEaWFsb2c9TWV9fSxtZXRhZGF0YTpjZX0sdWUseWUpLEhyKHRoaXMsbnVsbCwkZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im1vdmVTb3VyY2UiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOks9PiJtb3ZlU291cmNlImluIEssZ2V0Oks9PksubW92ZVNvdXJjZSxzZXQ6KEssTWUpPT57Sy5tb3ZlU291cmNlPU1lfX0sbWV0YWRhdGE6Y2V9LFUscSksSHIodGhpcyxudWxsLGllLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibW92ZURlc3RpbmF0aW9uIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpLPT4ibW92ZURlc3RpbmF0aW9uImluIEssZ2V0Oks9PksubW92ZURlc3RpbmF0aW9uLHNldDooSyxNZSk9PntLLm1vdmVEZXN0aW5hdGlvbj1NZX19LG1ldGFkYXRhOmNlfSx3ZSxnZSksSHIodGhpcyxudWxsLEFlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibW92ZUluUHJvZ3Jlc3MiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOks9PiJtb3ZlSW5Qcm9ncmVzcyJpbiBLLGdldDpLPT5LLm1vdmVJblByb2dyZXNzLHNldDooSyxNZSk9PntLLm1vdmVJblByb2dyZXNzPU1lfX0sbWV0YWRhdGE6Y2V9LHhlLG5lKSxIcih0aGlzLG51bGwsTGUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJtb3ZlRXJyb3IiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOks9PiJtb3ZlRXJyb3IiaW4gSyxnZXQ6Sz0+Sy5tb3ZlRXJyb3Isc2V0OihLLE1lKT0+e0subW92ZUVycm9yPU1lfX0sbWV0YWRhdGE6Y2V9LE9lLEplKSxIcih0aGlzLG51bGwsdGUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzaG93TW92ZVBpY2tlckRpYWxvZyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Sz0+InNob3dNb3ZlUGlja2VyRGlhbG9nImluIEssZ2V0Oks9Pksuc2hvd01vdmVQaWNrZXJEaWFsb2csc2V0OihLLE1lKT0+e0suc2hvd01vdmVQaWNrZXJEaWFsb2c9TWV9fSxtZXRhZGF0YTpjZX0sWixlZSksSHIodGhpcyxudWxsLGJlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibW92ZVBpY2tlclNvdXJjZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Sz0+Im1vdmVQaWNrZXJTb3VyY2UiaW4gSyxnZXQ6Sz0+Sy5tb3ZlUGlja2VyU291cmNlLHNldDooSyxNZSk9PntLLm1vdmVQaWNrZXJTb3VyY2U9TWV9fSxtZXRhZGF0YTpjZX0sTmUsS2UpLEhyKHRoaXMsbnVsbCx5dCx7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im1vdmVQaWNrZXJDdXJyZW50UHJlZml4IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpLPT4ibW92ZVBpY2tlckN1cnJlbnRQcmVmaXgiaW4gSyxnZXQ6Sz0+Sy5tb3ZlUGlja2VyQ3VycmVudFByZWZpeCxzZXQ6KEssTWUpPT57Sy5tb3ZlUGlja2VyQ3VycmVudFByZWZpeD1NZX19LG1ldGFkYXRhOmNlfSxudCxMdCksSHIodGhpcyxudWxsLE90LHtraW5kOiJhY2Nlc3NvciIsbmFtZToibW92ZVBpY2tlclByZWZpeGVzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpLPT4ibW92ZVBpY2tlclByZWZpeGVzImluIEssZ2V0Oks9PksubW92ZVBpY2tlclByZWZpeGVzLHNldDooSyxNZSk9PntLLm1vdmVQaWNrZXJQcmVmaXhlcz1NZX19LG1ldGFkYXRhOmNlfSxzZSxkZSksSHIodGhpcyxudWxsLEVlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibW92ZVBpY2tlckxvYWRpbmciLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOks9PiJtb3ZlUGlja2VyTG9hZGluZyJpbiBLLGdldDpLPT5LLm1vdmVQaWNrZXJMb2FkaW5nLHNldDooSyxNZSk9PntLLm1vdmVQaWNrZXJMb2FkaW5nPU1lfX0sbWV0YWRhdGE6Y2V9LGd0LGt0KSxIcih0aGlzLG51bGwseXIse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzaG93UmVuYW1lRGlhbG9nIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpLPT4ic2hvd1JlbmFtZURpYWxvZyJpbiBLLGdldDpLPT5LLnNob3dSZW5hbWVEaWFsb2csc2V0OihLLE1lKT0+e0suc2hvd1JlbmFtZURpYWxvZz1NZX19LG1ldGFkYXRhOmNlfSxsaSxhMSksSHIodGhpcyxudWxsLGkxLHtraW5kOiJhY2Nlc3NvciIsbmFtZToicmVuYW1lU291cmNlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpLPT4icmVuYW1lU291cmNlImluIEssZ2V0Oks9PksucmVuYW1lU291cmNlLHNldDooSyxNZSk9PntLLnJlbmFtZVNvdXJjZT1NZX19LG1ldGFkYXRhOmNlfSxfZSxGZSksSHIodGhpcyxudWxsLE50LHtraW5kOiJhY2Nlc3NvciIsbmFtZToicmVuYW1lTmFtZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Sz0+InJlbmFtZU5hbWUiaW4gSyxnZXQ6Sz0+Sy5yZW5hbWVOYW1lLHNldDooSyxNZSk9PntLLnJlbmFtZU5hbWU9TWV9fSxtZXRhZGF0YTpjZX0sbXIsQ3IpLEhyKHRoaXMsbnVsbCxPcix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InJlbmFtZUluUHJvZ3Jlc3MiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOks9PiJyZW5hbWVJblByb2dyZXNzImluIEssZ2V0Oks9PksucmVuYW1lSW5Qcm9ncmVzcyxzZXQ6KEssTWUpPT57Sy5yZW5hbWVJblByb2dyZXNzPU1lfX0sbWV0YWRhdGE6Y2V9LF9yLG8xKSxIcih0aGlzLG51bGwsbjEse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJyZW5hbWVFcnJvciIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Sz0+InJlbmFtZUVycm9yImluIEssZ2V0Oks9PksucmVuYW1lRXJyb3Isc2V0OihLLE1lKT0+e0sucmVuYW1lRXJyb3I9TWV9fSxtZXRhZGF0YTpjZX0sQ2UsdmUpLEhyKHRoaXMsbnVsbCxIZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImRyYWdnZWRJdGVtIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpLPT4iZHJhZ2dlZEl0ZW0iaW4gSyxnZXQ6Sz0+Sy5kcmFnZ2VkSXRlbSxzZXQ6KEssTWUpPT57Sy5kcmFnZ2VkSXRlbT1NZX19LG1ldGFkYXRhOmNlfSxUZSxwZSksSHIobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6Y2V9LG51bGwsciksR2U9YT10LnZhbHVlLGNlJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOmNlfSl9I2U9ZnQodGhpcyxuLG51bGwpO2dldCBkYXRhUHJvdmlkZXIoKXtyZXR1cm4gdGhpcy4jZX1zZXQgZGF0YVByb3ZpZGVyKGNlKXt0aGlzLiNlPWNlfSN0PShmdCh0aGlzLHMpLGZ0KHRoaXMsZCwiIikpO2dldCBidWNrZXROYW1lKCl7cmV0dXJuIHRoaXMuI3R9c2V0IGJ1Y2tldE5hbWUoY2Upe3RoaXMuI3Q9Y2V9I3I9KGZ0KHRoaXMsZiksZnQodGhpcyxwLCIiKSk7Z2V0IGN1cnJlbnRQcmVmaXgoKXtyZXR1cm4gdGhpcy4jcn1zZXQgY3VycmVudFByZWZpeChjZSl7dGhpcy4jcj1jZX0jYT0oZnQodGhpcyxoKSxmdCh0aGlzLHgsMCkpO2dldCByZWZyZXNoS2V5KCl7cmV0dXJuIHRoaXMuI2F9c2V0IHJlZnJlc2hLZXkoY2Upe3RoaXMuI2E9Y2V9I2k9KGZ0KHRoaXMsZyksZnQodGhpcyx3LFtdKSk7Z2V0IGNvbHVtbnMoKXtyZXR1cm4gdGhpcy4jaX1zZXQgY29sdW1ucyhjZSl7dGhpcy4jaT1jZX0jbz0oZnQodGhpcyxNKSxmdCh0aGlzLEMsITEpKTtnZXQgbG9hZGluZygpe3JldHVybiB0aGlzLiNvfXNldCBsb2FkaW5nKGNlKXt0aGlzLiNvPWNlfSNuPShmdCh0aGlzLGspLGZ0KHRoaXMsJCwhMSkpO2dldCBzaG93Q3JlYXRlRGlhbG9nKCl7cmV0dXJuIHRoaXMuI259c2V0IHNob3dDcmVhdGVEaWFsb2coY2Upe3RoaXMuI249Y2V9I3M9KGZ0KHRoaXMsSSksZnQodGhpcyx6LCJmb2xkZXIiKSk7Z2V0IGNyZWF0ZURpYWxvZ1R5cGUoKXtyZXR1cm4gdGhpcy4jc31zZXQgY3JlYXRlRGlhbG9nVHlwZShjZSl7dGhpcy4jcz1jZX0jbD0oZnQodGhpcyx5KSxmdCh0aGlzLF8sIiIpKTtnZXQgY3JlYXRlRGlhbG9nUHJlZml4KCl7cmV0dXJuIHRoaXMuI2x9c2V0IGNyZWF0ZURpYWxvZ1ByZWZpeChjZSl7dGhpcy4jbD1jZX0jYz0oZnQodGhpcyxQKSxmdCh0aGlzLEgsIiIpKTtnZXQgY3JlYXRlRGlhbG9nTmFtZSgpe3JldHVybiB0aGlzLiNjfXNldCBjcmVhdGVEaWFsb2dOYW1lKGNlKXt0aGlzLiNjPWNlfSNkPShmdCh0aGlzLFcpLGZ0KHRoaXMsVCwtMSkpO2dldCBkcmFnT3ZlckNvbHVtbkluZGV4KCl7cmV0dXJuIHRoaXMuI2R9c2V0IGRyYWdPdmVyQ29sdW1uSW5kZXgoY2Upe3RoaXMuI2Q9Y2V9I3U9KGZ0KHRoaXMsSiksZnQodGhpcyxMLG51bGwpKTtnZXQgZHJhZ092ZXJGb2xkZXJQcmVmaXgoKXtyZXR1cm4gdGhpcy4jdX1zZXQgZHJhZ092ZXJGb2xkZXJQcmVmaXgoY2Upe3RoaXMuI3U9Y2V9I2Y9KGZ0KHRoaXMsUSksZnQodGhpcyxHLCExKSk7Z2V0IHVwbG9hZGluZygpe3JldHVybiB0aGlzLiNmfXNldCB1cGxvYWRpbmcoY2Upe3RoaXMuI2Y9Y2V9I3A9KGZ0KHRoaXMsQSksZnQodGhpcyxSLG51bGwpKTtnZXQgdXBsb2FkUHJvZ3Jlc3MoKXtyZXR1cm4gdGhpcy4jcH1zZXQgdXBsb2FkUHJvZ3Jlc3MoY2Upe3RoaXMuI3A9Y2V9I2g9KGZ0KHRoaXMsTyksZnQodGhpcyx1ZSwhMSkpO2dldCBzaG93TW92ZURpYWxvZygpe3JldHVybiB0aGlzLiNofXNldCBzaG93TW92ZURpYWxvZyhjZSl7dGhpcy4jaD1jZX0jbT0oZnQodGhpcyx5ZSksZnQodGhpcyxVLG51bGwpKTtnZXQgbW92ZVNvdXJjZSgpe3JldHVybiB0aGlzLiNtfXNldCBtb3ZlU291cmNlKGNlKXt0aGlzLiNtPWNlfSNnPShmdCh0aGlzLHEpLGZ0KHRoaXMsd2UsIiIpKTtnZXQgbW92ZURlc3RpbmF0aW9uKCl7cmV0dXJuIHRoaXMuI2d9c2V0IG1vdmVEZXN0aW5hdGlvbihjZSl7dGhpcy4jZz1jZX0jeD0oZnQodGhpcyxnZSksZnQodGhpcyx4ZSwhMSkpO2dldCBtb3ZlSW5Qcm9ncmVzcygpe3JldHVybiB0aGlzLiN4fXNldCBtb3ZlSW5Qcm9ncmVzcyhjZSl7dGhpcy4jeD1jZX0jYj0oZnQodGhpcyxuZSksZnQodGhpcyxPZSxudWxsKSk7Z2V0IG1vdmVFcnJvcigpe3JldHVybiB0aGlzLiNifXNldCBtb3ZlRXJyb3IoY2Upe3RoaXMuI2I9Y2V9I3Y9KGZ0KHRoaXMsSmUpLGZ0KHRoaXMsWiwhMSkpO2dldCBzaG93TW92ZVBpY2tlckRpYWxvZygpe3JldHVybiB0aGlzLiN2fXNldCBzaG93TW92ZVBpY2tlckRpYWxvZyhjZSl7dGhpcy4jdj1jZX0jeT0oZnQodGhpcyxlZSksZnQodGhpcyxOZSxudWxsKSk7Z2V0IG1vdmVQaWNrZXJTb3VyY2UoKXtyZXR1cm4gdGhpcy4jeX1zZXQgbW92ZVBpY2tlclNvdXJjZShjZSl7dGhpcy4jeT1jZX0jdz0oZnQodGhpcyxLZSksZnQodGhpcyxudCwiIikpO2dldCBtb3ZlUGlja2VyQ3VycmVudFByZWZpeCgpe3JldHVybiB0aGlzLiN3fXNldCBtb3ZlUGlja2VyQ3VycmVudFByZWZpeChjZSl7dGhpcy4jdz1jZX0jTT0oZnQodGhpcyxMdCksZnQodGhpcyxzZSxbXSkpO2dldCBtb3ZlUGlja2VyUHJlZml4ZXMoKXtyZXR1cm4gdGhpcy4jTX1zZXQgbW92ZVBpY2tlclByZWZpeGVzKGNlKXt0aGlzLiNNPWNlfSNrPShmdCh0aGlzLGRlKSxmdCh0aGlzLGd0LCExKSk7Z2V0IG1vdmVQaWNrZXJMb2FkaW5nKCl7cmV0dXJuIHRoaXMuI2t9c2V0IG1vdmVQaWNrZXJMb2FkaW5nKGNlKXt0aGlzLiNrPWNlfSNTPShmdCh0aGlzLGt0KSxmdCh0aGlzLGxpLCExKSk7Z2V0IHNob3dSZW5hbWVEaWFsb2coKXtyZXR1cm4gdGhpcy4jU31zZXQgc2hvd1JlbmFtZURpYWxvZyhjZSl7dGhpcy4jUz1jZX0jej0oZnQodGhpcyxhMSksZnQodGhpcyxfZSxudWxsKSk7Z2V0IHJlbmFtZVNvdXJjZSgpe3JldHVybiB0aGlzLiN6fXNldCByZW5hbWVTb3VyY2UoY2Upe3RoaXMuI3o9Y2V9I0M9KGZ0KHRoaXMsRmUpLGZ0KHRoaXMsbXIsIiIpKTtnZXQgcmVuYW1lTmFtZSgpe3JldHVybiB0aGlzLiNDfXNldCByZW5hbWVOYW1lKGNlKXt0aGlzLiNDPWNlfSNfPShmdCh0aGlzLENyKSxmdCh0aGlzLF9yLCExKSk7Z2V0IHJlbmFtZUluUHJvZ3Jlc3MoKXtyZXR1cm4gdGhpcy4jX31zZXQgcmVuYW1lSW5Qcm9ncmVzcyhjZSl7dGhpcy4jXz1jZX0jVD0oZnQodGhpcyxvMSksZnQodGhpcyxDZSxudWxsKSk7Z2V0IHJlbmFtZUVycm9yKCl7cmV0dXJuIHRoaXMuI1R9c2V0IHJlbmFtZUVycm9yKGNlKXt0aGlzLiNUPWNlfSNMPShmdCh0aGlzLHZlKSxmdCh0aGlzLFRlLG51bGwpKTtnZXQgZHJhZ2dlZEl0ZW0oKXtyZXR1cm4gdGhpcy4jTH1zZXQgZHJhZ2dlZEl0ZW0oY2Upe3RoaXMuI0w9Y2V9cmVzaXppbmc9KGZ0KHRoaXMscGUpLG51bGwpO0RFRkFVTFRfQ09MVU1OX1dJRFRIPTI1MDtNSU5fQ09MVU1OX1dJRFRIPTE1MDtNQVhfQ09MVU1OX1dJRFRIPTUwMDtkcmFnQ291bnRlcnM9bmV3IE1hcDtmb2xkZXJIb3ZlclRpbWVyPW51bGw7ZmlsZUlucHV0RWxlbWVudD1udWxsO2ZvbGRlcklucHV0RWxlbWVudD1udWxsO3N0YXRpYyBzdHlsZXM9W20uZGVmYXVsdFN0eWxlcyxQZSxsZWAKICAgICAgOmhvc3QgewogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICBvdmVyZmxvdy14OiBhdXRvOwogICAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjsKICAgICAgfQoKICAgICAgLmNvbHVtbnMtY29udGFpbmVyIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICBtaW4td2lkdGg6IG1heC1jb250ZW50OwogICAgICB9CgogICAgICAuY29sdW1uLXdyYXBwZXIgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgICB9CgogICAgICAuY29sdW1uIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICB9CgogICAgICAucmVzaXplLWhhbmRsZSB7CiAgICAgICAgd2lkdGg6IDVweDsKICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgICAgY3Vyc29yOiBjb2wtcmVzaXplOwogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICBmbGV4LXNocmluazogMDsKICAgICAgfQoKICAgICAgLnJlc2l6ZS1oYW5kbGU6OmFmdGVyIHsKICAgICAgICBjb250ZW50OiAnJzsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgdG9wOiAwOwogICAgICAgIGxlZnQ6IDJweDsKICAgICAgICB3aWR0aDogMXB4OwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiMzMzMiKX07CiAgICAgIH0KCiAgICAgIC5yZXNpemUtaGFuZGxlOmhvdmVyOjphZnRlciwKICAgICAgLnJlc2l6ZS1oYW5kbGUuYWN0aXZlOjphZnRlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNhMWExYWEiLCIjNDA0MDQwIil9OwogICAgICAgIHdpZHRoOiAycHg7CiAgICAgICAgbGVmdDogMXB4OwogICAgICB9CgogICAgICAuY29sdW1uLXdyYXBwZXI6bGFzdC1jaGlsZCAucmVzaXplLWhhbmRsZSB7CiAgICAgICAgZGlzcGxheTogbm9uZTsKICAgICAgfQoKICAgICAgLmNvbHVtbi1oZWFkZXIgewogICAgICAgIHBhZGRpbmc6IDhweCAxMnB4OwogICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzcxNzE3YSIsIiM2NjYiKX07CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoMCwgMCwgMCwgMC4wMikiLCJyZ2JhKDAsIDAsIDAsIDAuMikiKX07CiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZTVlN2ViIiwiIzMzMyIpfTsKICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7CiAgICAgIH0KCiAgICAgIC5jb2x1bW4taXRlbXMgewogICAgICAgIGZsZXg6IDE7CiAgICAgICAgb3ZlcmZsb3cteTogYXV0bzsKICAgICAgICBwYWRkaW5nOiA0cHg7CiAgICAgIH0KCiAgICAgIC5jb2x1bW4taXRlbSB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogOHB4OwogICAgICAgIHBhZGRpbmc6IDZweCAxMHB4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgZm9udC1zaXplOiAxM3B4OwogICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xczsKICAgICAgfQoKICAgICAgLmNvbHVtbi1pdGVtOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgicmdiYSgwLCAwLCAwLCAwLjA0KSIsInJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSkiKX07CiAgICAgIH0KCiAgICAgIC5jb2x1bW4taXRlbS5zZWxlY3RlZCB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoNTksIDEzMCwgMjQ2LCAwLjEpIiwicmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzFkNGVkOCIsIiNlMGUwZTAiKX07CiAgICAgIH0KCiAgICAgIC5jb2x1bW4taXRlbS5mb2xkZXIgewogICAgICAgIGNvbG9yOiAjZmJiZjI0OwogICAgICB9CgogICAgICAuY29sdW1uLWl0ZW0gLmljb24gewogICAgICAgIHdpZHRoOiAxNnB4OwogICAgICAgIGhlaWdodDogMTZweDsKICAgICAgICBmbGV4LXNocmluazogMDsKICAgICAgfQoKICAgICAgLmNvbHVtbi1pdGVtIC5uYW1lIHsKICAgICAgICBmbGV4OiAxOwogICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsKICAgICAgfQoKICAgICAgLmNvbHVtbi1pdGVtIC5jaGV2cm9uIHsKICAgICAgICB3aWR0aDogMTRweDsKICAgICAgICBoZWlnaHQ6IDE0cHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjZDRkNGQ4IiwiIzU1NSIpfTsKICAgICAgfQoKICAgICAgLmVtcHR5LXN0YXRlIHsKICAgICAgICBwYWRkaW5nOiAxNnB4OwogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiNhMWExYWEiLCIjNjY2Iil9OwogICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgfQoKICAgICAgLmxvYWRpbmcgewogICAgICAgIHBhZGRpbmc6IDE2cHg7CiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiI2ExYTFhYSIsIiM2NjYiKX07CiAgICAgIH0KCiAgICAgIC5jb2x1bW4uZHJhZy1vdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDU5LCAxMzAsIDI0NiwgMC4wOCk7CiAgICAgICAgb3V0bGluZTogMnB4IGRhc2hlZCByZ2JhKDU5LCAxMzAsIDI0NiwgMC40KTsKICAgICAgICBvdXRsaW5lLW9mZnNldDogLTJweDsKICAgICAgfQoKICAgICAgLmNvbHVtbi1pdGVtLmZvbGRlci5kcmFnLXRhcmdldCB7CiAgICAgICAgYmFja2dyb3VuZDogcmdiYSg1OSwgMTMwLCAyNDYsIDAuMikgIWltcG9ydGFudDsKICAgICAgICBvdXRsaW5lOiAxcHggc29saWQgcmdiYSg1OSwgMTMwLCAyNDYsIDAuNSk7CiAgICAgIH0KCiAgICAgIC51cGxvYWQtb3ZlcmxheSB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHRvcDogMDsKICAgICAgICBsZWZ0OiAwOwogICAgICAgIHJpZ2h0OiAwOwogICAgICAgIGJvdHRvbTogMDsKICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNik7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgZ2FwOiA4cHg7CiAgICAgICAgei1pbmRleDogMTA7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICB9CgogICAgICAudXBsb2FkLW92ZXJsYXkgLnVwbG9hZC10ZXh0IHsKICAgICAgICBjb2xvcjogI2UwZTBlMDsKICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgIH0KCiAgICAgIC51cGxvYWQtb3ZlcmxheSAudXBsb2FkLXByb2dyZXNzIHsKICAgICAgICBjb2xvcjogIzg4ODsKICAgICAgICBmb250LXNpemU6IDExcHg7CiAgICAgIH0KCiAgICAgIC5kcmFnLWhpbnQgewogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICBib3R0b206IDhweDsKICAgICAgICBsZWZ0OiA1MCU7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOwogICAgICAgIGJhY2tncm91bmQ6IHJnYmEoNTksIDEzMCwgMjQ2LCAwLjkpOwogICAgICAgIGNvbG9yOiB3aGl0ZTsKICAgICAgICBwYWRkaW5nOiA0cHggMTJweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgZm9udC1zaXplOiAxMXB4OwogICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgICAgICAgei1pbmRleDogNTsKICAgICAgfQoKICAgICAgLmRpYWxvZy1vdmVybGF5IHsKICAgICAgICBwb3NpdGlvbjogZml4ZWQ7CiAgICAgICAgdG9wOiAwOwogICAgICAgIGxlZnQ6IDA7CiAgICAgICAgcmlnaHQ6IDA7CiAgICAgICAgYm90dG9tOiAwOwogICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC43KTsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgei1pbmRleDogMTAwMDsKICAgICAgfQoKICAgICAgLmRpYWxvZyB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmZmZmZmYiLCIjMWUxZTFlIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDEycHg7CiAgICAgICAgcGFkZGluZzogMjRweDsKICAgICAgICBtaW4td2lkdGg6IDQwMHB4OwogICAgICAgIGJveC1zaGFkb3c6IDAgMjBweCA0MHB4IHJnYmEoMCwgMCwgMCwgMC41KTsKICAgICAgfQoKICAgICAgLmRpYWxvZy10aXRsZSB7CiAgICAgICAgZm9udC1zaXplOiAxOHB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMxODE4MWIiLCIjZmZmIil9OwogICAgICB9CgogICAgICAuZGlhbG9nLWxvY2F0aW9uIHsKICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiIzg4OCIpfTsKICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4OwogICAgICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7CiAgICAgIH0KCiAgICAgIC5kaWFsb2ctaW5wdXQgewogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIHBhZGRpbmc6IDEwcHggMTJweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2Y0ZjRmNSIsIiMxNDE0MTQiKX07CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNkNGQ0ZDgiLCIjMzMzIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMxODE4MWIiLCIjZmZmIil9OwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7CiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAgfQoKICAgICAgLmRpYWxvZy1pbnB1dDpmb2N1cyB7CiAgICAgICAgb3V0bGluZTogbm9uZTsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCIjYTFhMWFhIiwiI2UwZTBlMCIpfTsKICAgICAgfQoKICAgICAgLmRpYWxvZy1oaW50IHsKICAgICAgICBmb250LXNpemU6IDExcHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjYTFhMWFhIiwiIzY2NiIpfTsKICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4OwogICAgICB9CgogICAgICAuZGlhbG9nLWFjdGlvbnMgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZ2FwOiAxMnB4OwogICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7CiAgICAgIH0KCiAgICAgIC5kaWFsb2ctYnRuIHsKICAgICAgICBwYWRkaW5nOiA4cHggMTZweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4yczsKICAgICAgfQoKICAgICAgLmRpYWxvZy1idG4tY2FuY2VsIHsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2Q0ZDRkOCIsIiM0NDQiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiI2FhYSIpfTsKICAgICAgfQoKICAgICAgLmRpYWxvZy1idG4tY2FuY2VsOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgicmdiYSgwLCAwLCAwLCAwLjAzKSIsInJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSkiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMTgxODFiIiwiI2ZmZiIpfTsKICAgICAgfQoKICAgICAgLmRpYWxvZy1idG4tY3JlYXRlIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiM0MDQwNDAiKX07CiAgICAgICAgYm9yZGVyOiBub25lOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzE4MTgxYiIsIiNmZmYiKX07CiAgICAgIH0KCiAgICAgIC5kaWFsb2ctYnRuLWNyZWF0ZTpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNkNGQ0ZDgiLCIjNTA1MDUwIil9OwogICAgICB9CgogICAgICAuZGlhbG9nLWJ0bi1jcmVhdGU6ZGlzYWJsZWQgewogICAgICAgIG9wYWNpdHk6IDAuNTsKICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOwogICAgICB9CgogICAgICAvKiBNb3ZlIGRpYWxvZyBzdHlsZXMgKi8KICAgICAgLm1vdmUtc3VtbWFyeSB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoMCwgMCwgMCwgMC4wMykiLCJyZ2JhKDAsIDAsIDAsIDAuMikiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4OwogICAgICAgIHBhZGRpbmc6IDE2cHg7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDsKICAgICAgfQoKICAgICAgLm1vdmUtaXRlbSB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBnYXA6IDhweDsKICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7CiAgICAgIH0KCiAgICAgIC5tb3ZlLWl0ZW06bGFzdC1jaGlsZCB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsKICAgICAgfQoKICAgICAgLm1vdmUtbGFiZWwgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzcxNzE3YSIsIiM4ODgiKX07CiAgICAgICAgbWluLXdpZHRoOiA0MHB4OwogICAgICB9CgogICAgICAubW92ZS1wYXRoIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMzZjNmNDYiLCIjZTBlMGUwIil9OwogICAgICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7CiAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDsKICAgICAgfQoKICAgICAgLm1vdmUtZXJyb3IgewogICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjM5LCA2OCwgNjgsIDAuMTUpOwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjM5LCA2OCwgNjgsIDAuMyk7CiAgICAgICAgY29sb3I6ICNmODcxNzE7CiAgICAgICAgcGFkZGluZzogMTJweCAxNnB4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4OwogICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgfQoKICAgICAgLyogTW92ZSBwaWNrZXIgZGlhbG9nIHN0eWxlcyAqLwogICAgICAubW92ZS1waWNrZXItZGlhbG9nIHsKICAgICAgICBtaW4td2lkdGg6IDQ1MHB4OwogICAgICAgIG1heC1oZWlnaHQ6IDUwMHB4OwogICAgICB9CgogICAgICAucGlja2VyLWJyZWFkY3J1bWIgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDRweDsKICAgICAgICBwYWRkaW5nOiA4cHggMTJweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgicmdiYSgwLCAwLCAwLCAwLjAzKSIsInJnYmEoMCwgMCwgMCwgMC4yKSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDsKICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgb3ZlcmZsb3cteDogYXV0bzsKICAgICAgfQoKICAgICAgLnBpY2tlci1jcnVtYiB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiIzg4OCIpfTsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKICAgICAgfQoKICAgICAgLnBpY2tlci1jcnVtYjpob3ZlciB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMTgxODFiIiwiI2ZmZiIpfTsKICAgICAgfQoKICAgICAgLnBpY2tlci1zZXBhcmF0b3IgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiI2Q0ZDRkOCIsIiM1NTUiKX07CiAgICAgIH0KCiAgICAgIC5waWNrZXItbGlzdCB7CiAgICAgICAgbWF4LWhlaWdodDogMjgwcHg7CiAgICAgICAgb3ZlcmZsb3cteTogYXV0bzsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiMzMzMiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7CiAgICAgICAgbWluLWhlaWdodDogMTAwcHg7CiAgICAgIH0KCiAgICAgIC5waWNrZXItaXRlbSB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogOHB4OwogICAgICAgIHBhZGRpbmc6IDhweCAxMnB4OwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICBjb2xvcjogI2ZiYmYyNDsKICAgICAgfQoKICAgICAgLnBpY2tlci1pdGVtOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgicmdiYSgwLCAwLCAwLCAwLjAzKSIsInJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSkiKX07CiAgICAgIH0KCiAgICAgIC5waWNrZXItaXRlbSAuaWNvbiB7CiAgICAgICAgd2lkdGg6IDE2cHg7CiAgICAgICAgaGVpZ2h0OiAxNnB4OwogICAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgICB9CgogICAgICAucGlja2VyLWl0ZW0gLm5hbWUgewogICAgICAgIGZsZXg6IDE7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsKICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgICB9CgogICAgICAucGlja2VyLWVtcHR5IHsKICAgICAgICBwYWRkaW5nOiAyNHB4OwogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiNhMWExYWEiLCIjNjY2Iil9OwogICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgfQoKICAgICAgLmNvbHVtbi1pdGVtLmRyYWdnaW5nIHsKICAgICAgICBvcGFjaXR5OiAwLjU7CiAgICAgIH0KCiAgICAgIC5jb2x1bW4taXRlbS5kcm9wLXRhcmdldCB7CiAgICAgICAgYmFja2dyb3VuZDogcmdiYSg1OSwgMTMwLCAyNDYsIDAuMTUpICFpbXBvcnRhbnQ7CiAgICAgICAgb3V0bGluZTogMXB4IGRhc2hlZCByZ2JhKDU5LCAxMzAsIDI0NiwgMC41KTsKICAgICAgfQoKICAgICAgLmNvbHVtbi1pdGVtLmRyb3AtaW52YWxpZCB7CiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyMzksIDY4LCA2OCwgMC4xKSAhaW1wb3J0YW50OwogICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7CiAgICAgIH0KICAgIGBdO2FzeW5jIGNvbm5lY3RlZENhbGxiYWNrKCl7c3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKSxhd2FpdCB0aGlzLmxvYWRJbml0aWFsQ29sdW1uKCl9YXN5bmMgZGlzY29ubmVjdGVkQ2FsbGJhY2soKXthd2FpdCBzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpLHRoaXMuY2xlYXJGb2xkZXJIb3ZlcigpLHRoaXMuZHJhZ0NvdW50ZXJzLmNsZWFyKCksdGhpcy5maWxlSW5wdXRFbGVtZW50JiYodGhpcy5maWxlSW5wdXRFbGVtZW50LnJlbW92ZSgpLHRoaXMuZmlsZUlucHV0RWxlbWVudD1udWxsKSx0aGlzLmZvbGRlcklucHV0RWxlbWVudCYmKHRoaXMuZm9sZGVySW5wdXRFbGVtZW50LnJlbW92ZSgpLHRoaXMuZm9sZGVySW5wdXRFbGVtZW50PW51bGwpfXVwZGF0ZWQoY2Upe2NlLmhhcygiYnVja2V0TmFtZSIpfHxjZS5oYXMoImN1cnJlbnRQcmVmaXgiKT90aGlzLmxvYWRJbml0aWFsQ29sdW1uKCk6Y2UuaGFzKCJyZWZyZXNoS2V5IikmJnRoaXMucmVmcmVzaEFsbENvbHVtbnMoKX1hc3luYyBsb2FkSW5pdGlhbENvbHVtbigpe2lmKHRoaXMuZGF0YVByb3ZpZGVyKXt0aGlzLmxvYWRpbmc9ITA7dHJ5e2xldCBjZT1SOCh0aGlzLmN1cnJlbnRQcmVmaXgpLEs9WyIiLC4uLmNlXSxNZT1hd2FpdCBQcm9taXNlLmFsbChLLm1hcChXZT0+dGhpcy5kYXRhUHJvdmlkZXIubGlzdE9iamVjdHModGhpcy5idWNrZXROYW1lLFdlLCIvIikpKTt0aGlzLmNvbHVtbnM9TWUubWFwKChXZSxVZSk9PntsZXQgd3I9S1tVZV0sUnI9VWU8Y2UubGVuZ3RoP2NlW1VlXTpudWxsO3JldHVybntwcmVmaXg6d3Isb2JqZWN0czpXZS5vYmplY3RzLHByZWZpeGVzOldlLnByZWZpeGVzLHNlbGVjdGVkSXRlbTpScix3aWR0aDp0aGlzLkRFRkFVTFRfQ09MVU1OX1dJRFRIfX0pLHRoaXMudXBkYXRlQ29tcGxldGUudGhlbigoKT0+dGhpcy5zY3JvbGxUb0VuZCgpKX1jYXRjaChjZSl7Y29uc29sZS5lcnJvcigiRXJyb3IgbG9hZGluZyBvYmplY3RzOiIsY2UpLHRoaXMuY29sdW1ucz1bXX10aGlzLmxvYWRpbmc9ITF9fWFzeW5jIHJlZnJlc2hBbGxDb2x1bW5zKCl7aWYoIXRoaXMuZGF0YVByb3ZpZGVyKXJldHVybjtsZXQgY2U9YXdhaXQgUHJvbWlzZS5hbGwodGhpcy5jb2x1bW5zLm1hcChhc3luYyBLPT57dHJ5e2xldCBNZT1hd2FpdCB0aGlzLmRhdGFQcm92aWRlci5saXN0T2JqZWN0cyh0aGlzLmJ1Y2tldE5hbWUsSy5wcmVmaXgsIi8iKTtyZXR1cm57Li4uSyxvYmplY3RzOk1lLm9iamVjdHMscHJlZml4ZXM6TWUucHJlZml4ZXN9fWNhdGNoe3JldHVybiBLfX0pKTt0aGlzLmNvbHVtbnM9Y2V9YXN5bmMgc2VsZWN0Rm9sZGVyKGNlLEspe2lmKHRoaXMuZGF0YVByb3ZpZGVyKXt0aGlzLmNvbHVtbnM9dGhpcy5jb2x1bW5zLm1hcCgoTWUsV2UpPT5XZT09PWNlP3suLi5NZSxzZWxlY3RlZEl0ZW06S306TWUpLHRoaXMuY29sdW1ucz10aGlzLmNvbHVtbnMuc2xpY2UoMCxjZSsxKTt0cnl7bGV0IE1lPWF3YWl0IHRoaXMuZGF0YVByb3ZpZGVyLmxpc3RPYmplY3RzKHRoaXMuYnVja2V0TmFtZSxLLCIvIik7dGhpcy5jb2x1bW5zPVsuLi50aGlzLmNvbHVtbnMse3ByZWZpeDpLLG9iamVjdHM6TWUub2JqZWN0cyxwcmVmaXhlczpNZS5wcmVmaXhlcyxzZWxlY3RlZEl0ZW06bnVsbCx3aWR0aDp0aGlzLkRFRkFVTFRfQ09MVU1OX1dJRFRIfV0sdGhpcy51cGRhdGVDb21wbGV0ZS50aGVuKCgpPT50aGlzLnNjcm9sbFRvRW5kKCkpfWNhdGNoKE1lKXtjb25zb2xlLmVycm9yKCJFcnJvciBsb2FkaW5nIGZvbGRlcjoiLE1lKX19fXNjcm9sbFRvRW5kKCl7dGhpcy5zY3JvbGxMZWZ0PXRoaXMuc2Nyb2xsV2lkdGgtdGhpcy5jbGllbnRXaWR0aH1zdGFydFJlc2l6ZShjZSxLKXtjZS5wcmV2ZW50RGVmYXVsdCgpLHRoaXMucmVzaXppbmc9e2NvbHVtbkluZGV4Okssc3RhcnRYOmNlLmNsaWVudFgsc3RhcnRXaWR0aDp0aGlzLmNvbHVtbnNbS10ud2lkdGh9LGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsdGhpcy5oYW5kbGVSZXNpemUpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNldXAiLHRoaXMuc3RvcFJlc2l6ZSksZG9jdW1lbnQuYm9keS5zdHlsZS5jdXJzb3I9ImNvbC1yZXNpemUiLGRvY3VtZW50LmJvZHkuc3R5bGUudXNlclNlbGVjdD0ibm9uZSJ9aGFuZGxlUmVzaXplPWNlPT57aWYoIXRoaXMucmVzaXppbmcpcmV0dXJuO2xldCBLPWNlLmNsaWVudFgtdGhpcy5yZXNpemluZy5zdGFydFgsTWU9TWF0aC5taW4odGhpcy5NQVhfQ09MVU1OX1dJRFRILE1hdGgubWF4KHRoaXMuTUlOX0NPTFVNTl9XSURUSCx0aGlzLnJlc2l6aW5nLnN0YXJ0V2lkdGgrSykpO3RoaXMuY29sdW1ucz10aGlzLmNvbHVtbnMubWFwKChXZSxVZSk9PlVlPT09dGhpcy5yZXNpemluZy5jb2x1bW5JbmRleD97Li4uV2Usd2lkdGg6TWV9OldlKX07c3RvcFJlc2l6ZT0oKT0+e3RoaXMucmVzaXppbmc9bnVsbCxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUiLHRoaXMuaGFuZGxlUmVzaXplKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZXVwIix0aGlzLnN0b3BSZXNpemUpLGRvY3VtZW50LmJvZHkuc3R5bGUuY3Vyc29yPSIiLGRvY3VtZW50LmJvZHkuc3R5bGUudXNlclNlbGVjdD0iIn07c2VsZWN0RmlsZShjZSxLKXt0aGlzLmNvbHVtbnM9dGhpcy5jb2x1bW5zLm1hcCgoTWUsV2UpPT5XZT09PWNlP3suLi5NZSxzZWxlY3RlZEl0ZW06S306TWUpLHRoaXMuY29sdW1ucz10aGlzLmNvbHVtbnMuc2xpY2UoMCxjZSsxKSx0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJrZXktc2VsZWN0ZWQiLHtkZXRhaWw6e2tleTpLfSxidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpfWdldEZpbGVJY29uKGNlKXtsZXQgSz1jZS5zcGxpdCgiLiIpLnBvcCgpPy50b0xvd2VyQ2FzZSgpfHwiIjtyZXR1cm57anNvbjoiTTE0IDJINmEyIDIgMCAwIDAtMiAydjE2YTIgMiAwIDAgMCAyIDJoMTJhMiAyIDAgMCAwIDItMlY4eiIsdHh0OiJNMTQgMkg2YTIgMiAwIDAgMC0yIDJ2MTZhMiAyIDAgMCAwIDIgMmgxMmEyIDIgMCAwIDAgMi0yVjh6Iixwbmc6Ik01IDNoMTRhMiAyIDAgMCAxIDIgMnYxNGEyIDIgMCAwIDEtMiAySDVhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJ6IixqcGc6Ik01IDNoMTRhMiAyIDAgMCAxIDIgMnYxNGEyIDIgMCAwIDEtMiAySDVhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJ6IixqcGVnOiJNNSAzaDE0YTIgMiAwIDAgMSAyIDJ2MTRhMiAyIDAgMCAxLTIgMkg1YTIgMiAwIDAgMS0yLTJWNWEyIDIgMCAwIDEgMi0yeiIsZ2lmOiJNNSAzaDE0YTIgMiAwIDAgMSAyIDJ2MTRhMiAyIDAgMCAxLTIgMkg1YTIgMiAwIDAgMS0yLTJWNWEyIDIgMCAwIDEgMi0yeiIscGRmOiJNMTQgMkg2YTIgMiAwIDAgMC0yIDJ2MTZhMiAyIDAgMCAwIDIgMmgxMmEyIDIgMCAwIDAgMi0yVjh6In1bS118fCJNMTQgMkg2YTIgMiAwIDAgMC0yIDJ2MTZhMiAyIDAgMCAwIDIgMmgxMmEyIDIgMCAwIDAgMi0yVjh6In1oYW5kbGVGb2xkZXJDb250ZXh0TWVudShjZSxLLE1lKXt0aGlzLmRhdGFQcm92aWRlciYmKGNlLnByZXZlbnREZWZhdWx0KCksdHIub3BlbkNvbnRleHRNZW51V2l0aE9wdGlvbnMoY2UsW3tuYW1lOiJPcGVuIixpY29uTmFtZToibHVjaWRlOmZvbGRlck9wZW4iLGFjdGlvbjphc3luYygpPT57dGhpcy5zZWxlY3RGb2xkZXIoSyxNZSl9fSx7bmFtZToiQ29weSBQYXRoIixpY29uTmFtZToibHVjaWRlOmNvcHkiLGFjdGlvbjphc3luYygpPT57YXdhaXQgbmF2aWdhdG9yLmNsaXBib2FyZC53cml0ZVRleHQoTWUpfX0se25hbWU6IlJlbmFtZSIsaWNvbk5hbWU6Imx1Y2lkZTpwZW5jaWwiLGFjdGlvbjphc3luYygpPT50aGlzLm9wZW5SZW5hbWVEaWFsb2coTWUsITApfSx7ZGl2aWRlcjohMH0se25hbWU6Ik1vdmUgdG8uLi4iLGljb25OYW1lOiJsdWNpZGU6Zm9sZGVySW5wdXQiLGFjdGlvbjphc3luYygpPT50aGlzLm9wZW5Nb3ZlUGlja2VyRGlhbG9nKE1lLCEwKX0se2RpdmlkZXI6ITB9LHtuYW1lOiJOZXcgRm9sZGVyIEluc2lkZSIsaWNvbk5hbWU6Imx1Y2lkZTpmb2xkZXJQbHVzIixhY3Rpb246YXN5bmMoKT0+dGhpcy5vcGVuQ3JlYXRlRGlhbG9nKCJmb2xkZXIiLE1lKX0se25hbWU6Ik5ldyBGaWxlIEluc2lkZSIsaWNvbk5hbWU6Imx1Y2lkZTpmaWxlUGx1cyIsYWN0aW9uOmFzeW5jKCk9PnRoaXMub3BlbkNyZWF0ZURpYWxvZygiZmlsZSIsTWUpfSx7bmFtZToiVXBsb2FkIEZpbGVzLi4uIixpY29uTmFtZToibHVjaWRlOmZpbGUiLGFjdGlvbjphc3luYygpPT50aGlzLnRyaWdnZXJGaWxlVXBsb2FkKE1lLCJmaWxlcyIpfSx7bmFtZToiVXBsb2FkIEZvbGRlci4uLiIsaWNvbk5hbWU6Imx1Y2lkZTpmb2xkZXJVcCIsYWN0aW9uOmFzeW5jKCk9PnRoaXMudHJpZ2dlckZpbGVVcGxvYWQoTWUsImZvbGRlciIpfSx7ZGl2aWRlcjohMH0se25hbWU6IkRlbGV0ZSBGb2xkZXIiLGljb25OYW1lOiJsdWNpZGU6dHJhc2gyIixhY3Rpb246YXN5bmMoKT0+e2NvbmZpcm0oYERlbGV0ZSBmb2xkZXIgIiR7ZHIoTWUpfSIgYW5kIGFsbCBpdHMgY29udGVudHM/YCkmJmF3YWl0IHRoaXMuZGF0YVByb3ZpZGVyLmRlbGV0ZVByZWZpeCh0aGlzLmJ1Y2tldE5hbWUsTWUpJiYodGhpcy5jb2x1bW5zPXRoaXMuY29sdW1ucy5zbGljZSgwLEsrMSksdGhpcy5jb2x1bW5zPXRoaXMuY29sdW1ucy5tYXAoKFVlLHdyKT0+d3I9PT1LP3suLi5VZSxzZWxlY3RlZEl0ZW06bnVsbH06VWUpLGF3YWl0IHRoaXMucmVmcmVzaENvbHVtbkJ5UHJlZml4KHRoaXMuY29sdW1uc1tLXS5wcmVmaXgpKX19XSkpfWhhbmRsZUZpbGVDb250ZXh0TWVudShjZSxLLE1lKXt0aGlzLmRhdGFQcm92aWRlciYmKGNlLnByZXZlbnREZWZhdWx0KCksdHIub3BlbkNvbnRleHRNZW51V2l0aE9wdGlvbnMoY2UsW3tuYW1lOiJQcmV2aWV3IixpY29uTmFtZToibHVjaWRlOmV5ZSIsYWN0aW9uOmFzeW5jKCk9Pnt0aGlzLnNlbGVjdEZpbGUoSyxNZSl9fSx7bmFtZToiRG93bmxvYWQiLGljb25OYW1lOiJsdWNpZGU6ZG93bmxvYWQiLGFjdGlvbjphc3luYygpPT57bGV0IFdlPWF3YWl0IHRoaXMuZGF0YVByb3ZpZGVyLmdldE9iamVjdFVybCh0aGlzLmJ1Y2tldE5hbWUsTWUpLFVlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImEiKTtVZS5ocmVmPVdlLFVlLmRvd25sb2FkPWRyKE1lKSxVZS5jbGljaygpfX0se25hbWU6IkNvcHkgUGF0aCIsaWNvbk5hbWU6Imx1Y2lkZTpjb3B5IixhY3Rpb246YXN5bmMoKT0+e2F3YWl0IG5hdmlnYXRvci5jbGlwYm9hcmQud3JpdGVUZXh0KE1lKX19LHtuYW1lOiJSZW5hbWUiLGljb25OYW1lOiJsdWNpZGU6cGVuY2lsIixhY3Rpb246YXN5bmMoKT0+dGhpcy5vcGVuUmVuYW1lRGlhbG9nKE1lLCExKX0se2RpdmlkZXI6ITB9LHtuYW1lOiJNb3ZlIHRvLi4uIixpY29uTmFtZToibHVjaWRlOmZvbGRlcklucHV0IixhY3Rpb246YXN5bmMoKT0+dGhpcy5vcGVuTW92ZVBpY2tlckRpYWxvZyhNZSwhMSl9LHtkaXZpZGVyOiEwfSx7bmFtZToiRGVsZXRlIixpY29uTmFtZToibHVjaWRlOnRyYXNoMiIsYWN0aW9uOmFzeW5jKCk9Pntjb25maXJtKGBEZWxldGUgZmlsZSAiJHtkcihNZSl9Ij9gKSYmYXdhaXQgdGhpcy5kYXRhUHJvdmlkZXIuZGVsZXRlT2JqZWN0KHRoaXMuYnVja2V0TmFtZSxNZSkmJmF3YWl0IHRoaXMucmVmcmVzaENvbHVtbkJ5UHJlZml4KHRoaXMuY29sdW1uc1tLXS5wcmVmaXgpfX1dKSl9aGFuZGxlRW1wdHlTcGFjZUNvbnRleHRNZW51KGNlLEspe2lmKGNlLnRhcmdldCE9PWNlLmN1cnJlbnRUYXJnZXQpcmV0dXJuO2NlLnByZXZlbnREZWZhdWx0KCk7bGV0IE1lPXRoaXMuY29sdW1uc1tLXS5wcmVmaXg7dHIub3BlbkNvbnRleHRNZW51V2l0aE9wdGlvbnMoY2UsW3tuYW1lOiJOZXcgRm9sZGVyIixpY29uTmFtZToibHVjaWRlOmZvbGRlclBsdXMiLGFjdGlvbjphc3luYygpPT50aGlzLm9wZW5DcmVhdGVEaWFsb2coImZvbGRlciIsTWUpfSx7bmFtZToiTmV3IEZpbGUiLGljb25OYW1lOiJsdWNpZGU6ZmlsZVBsdXMiLGFjdGlvbjphc3luYygpPT50aGlzLm9wZW5DcmVhdGVEaWFsb2coImZpbGUiLE1lKX0se25hbWU6IlVwbG9hZCBGaWxlcy4uLiIsaWNvbk5hbWU6Imx1Y2lkZTpmaWxlIixhY3Rpb246YXN5bmMoKT0+dGhpcy50cmlnZ2VyRmlsZVVwbG9hZChNZSwiZmlsZXMiKX0se25hbWU6IlVwbG9hZCBGb2xkZXIuLi4iLGljb25OYW1lOiJsdWNpZGU6Zm9sZGVyVXAiLGFjdGlvbjphc3luYygpPT50aGlzLnRyaWdnZXJGaWxlVXBsb2FkKE1lLCJmb2xkZXIiKX1dKX1vcGVuQ3JlYXRlRGlhbG9nKGNlLEspe3RoaXMuY3JlYXRlRGlhbG9nVHlwZT1jZSx0aGlzLmNyZWF0ZURpYWxvZ1ByZWZpeD1LLHRoaXMuY3JlYXRlRGlhbG9nTmFtZT0iIix0aGlzLnNob3dDcmVhdGVEaWFsb2c9ITB9ZW5zdXJlRmlsZUlucHV0cygpe3RoaXMuZmlsZUlucHV0RWxlbWVudHx8KHRoaXMuZmlsZUlucHV0RWxlbWVudD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpLHRoaXMuZmlsZUlucHV0RWxlbWVudC50eXBlPSJmaWxlIix0aGlzLmZpbGVJbnB1dEVsZW1lbnQubXVsdGlwbGU9ITAsdGhpcy5maWxlSW5wdXRFbGVtZW50LnN0eWxlLmRpc3BsYXk9Im5vbmUiLHRoaXMuc2hhZG93Um9vdC5hcHBlbmRDaGlsZCh0aGlzLmZpbGVJbnB1dEVsZW1lbnQpKSx0aGlzLmZvbGRlcklucHV0RWxlbWVudHx8KHRoaXMuZm9sZGVySW5wdXRFbGVtZW50PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlucHV0IiksdGhpcy5mb2xkZXJJbnB1dEVsZW1lbnQudHlwZT0iZmlsZSIsdGhpcy5mb2xkZXJJbnB1dEVsZW1lbnQubXVsdGlwbGU9ITAsdGhpcy5mb2xkZXJJbnB1dEVsZW1lbnQud2Via2l0ZGlyZWN0b3J5PSEwLHRoaXMuZm9sZGVySW5wdXRFbGVtZW50LnN0eWxlLmRpc3BsYXk9Im5vbmUiLHRoaXMuc2hhZG93Um9vdC5hcHBlbmRDaGlsZCh0aGlzLmZvbGRlcklucHV0RWxlbWVudCkpfXRyaWdnZXJGaWxlVXBsb2FkKGNlLEspe3RoaXMuZW5zdXJlRmlsZUlucHV0cygpO2xldCBNZT1LPT09ImZvbGRlciI/dGhpcy5mb2xkZXJJbnB1dEVsZW1lbnQ6dGhpcy5maWxlSW5wdXRFbGVtZW50O01lLnZhbHVlPSIiO2xldCBXZT1hc3luYygpPT57TWUucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixXZSksTWUuZmlsZXMmJk1lLmZpbGVzLmxlbmd0aD4wJiZhd2FpdCB0aGlzLnVwbG9hZEZpbGVzKEFycmF5LmZyb20oTWUuZmlsZXMpLGNlKX07TWUuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixXZSksTWUuY2xpY2soKX1hc3luYyB1cGxvYWRGaWxlcyhjZSxLKXtpZih0aGlzLmRhdGFQcm92aWRlcil7dGhpcy51cGxvYWRpbmc9ITAsdGhpcy51cGxvYWRQcm9ncmVzcz17Y3VycmVudDowLHRvdGFsOmNlLmxlbmd0aH07Zm9yKGxldCBNZT0wO01lPGNlLmxlbmd0aDtNZSsrKXtsZXQgV2U9Y2VbTWVdO3RoaXMudXBsb2FkUHJvZ3Jlc3M9e2N1cnJlbnQ6TWUrMSx0b3RhbDpjZS5sZW5ndGh9O3RyeXtsZXQgVWU9YXdhaXQgdGhpcy5yZWFkRmlsZUFzQmFzZTY0KFdlKSx3cj1XZS53ZWJraXRSZWxhdGl2ZVBhdGh8fFdlLm5hbWUsUnI9Syt3cixYYT1XZS50eXBlfHxoMyhXZS5uYW1lLnNwbGl0KCIuIikucG9wKCk/LnRvTG93ZXJDYXNlKCl8fCIiKTthd2FpdCB0aGlzLmRhdGFQcm92aWRlci5wdXRPYmplY3QodGhpcy5idWNrZXROYW1lLFJyLFVlLFhhKX1jYXRjaChVZSl7Y29uc29sZS5lcnJvcihgRmFpbGVkIHRvIHVwbG9hZCAke1dlLm5hbWV9OmAsVWUpfX10aGlzLnVwbG9hZGluZz0hMSx0aGlzLnVwbG9hZFByb2dyZXNzPW51bGwsYXdhaXQgdGhpcy5yZWZyZXNoQ29sdW1uQnlQcmVmaXgoSyl9fWFzeW5jIHVwbG9hZEZpbGVzV2l0aFBhdGhzKGNlLEspe2lmKHRoaXMuZGF0YVByb3ZpZGVyKXt0aGlzLnVwbG9hZGluZz0hMCx0aGlzLnVwbG9hZFByb2dyZXNzPXtjdXJyZW50OjAsdG90YWw6Y2UubGVuZ3RofTtmb3IobGV0IE1lPTA7TWU8Y2UubGVuZ3RoO01lKyspe2xldHtmaWxlOldlLHJlbGF0aXZlUGF0aDpVZX09Y2VbTWVdO3RoaXMudXBsb2FkUHJvZ3Jlc3M9e2N1cnJlbnQ6TWUrMSx0b3RhbDpjZS5sZW5ndGh9O3RyeXtsZXQgd3I9YXdhaXQgdGhpcy5yZWFkRmlsZUFzQmFzZTY0KFdlKSxScj1LK1VlLFhhPVdlLnR5cGV8fGgzKFdlLm5hbWUuc3BsaXQoIi4iKS5wb3AoKT8udG9Mb3dlckNhc2UoKXx8IiIpO2F3YWl0IHRoaXMuZGF0YVByb3ZpZGVyLnB1dE9iamVjdCh0aGlzLmJ1Y2tldE5hbWUsUnIsd3IsWGEpfWNhdGNoKHdyKXtjb25zb2xlLmVycm9yKGBGYWlsZWQgdG8gdXBsb2FkICR7VWV9OmAsd3IpfX10aGlzLnVwbG9hZGluZz0hMSx0aGlzLnVwbG9hZFByb2dyZXNzPW51bGwsYXdhaXQgdGhpcy5yZWZyZXNoQ29sdW1uQnlQcmVmaXgoSyl9fXJlYWRGaWxlQXNCYXNlNjQoY2Upe3JldHVybiBuZXcgUHJvbWlzZSgoSyxNZSk9PntsZXQgV2U9bmV3IEZpbGVSZWFkZXI7V2Uub25sb2FkPSgpPT57bGV0IFVlPVdlLnJlc3VsdDtLKFVlLnNwbGl0KCIsIilbMV18fCIiKX0sV2Uub25lcnJvcj0oKT0+TWUoV2UuZXJyb3IpLFdlLnJlYWRBc0RhdGFVUkwoY2UpfSl9YXN5bmMgcmVmcmVzaENvbHVtbkJ5UHJlZml4KGNlKXtpZighdGhpcy5kYXRhUHJvdmlkZXIpcmV0dXJuO2xldCBLPXRoaXMuY29sdW1ucy5maW5kSW5kZXgoTWU9Pk1lLnByZWZpeD09PWNlKTtpZihLPT09LTEpe2F3YWl0IHRoaXMucmVmcmVzaEFsbENvbHVtbnMoKTtyZXR1cm59dHJ5e2xldCBNZT1hd2FpdCB0aGlzLmRhdGFQcm92aWRlci5saXN0T2JqZWN0cyh0aGlzLmJ1Y2tldE5hbWUsY2UsIi8iKTt0aGlzLmNvbHVtbnM9dGhpcy5jb2x1bW5zLm1hcCgoV2UsVWUpPT5VZT09PUs/ey4uLldlLG9iamVjdHM6TWUub2JqZWN0cyxwcmVmaXhlczpNZS5wcmVmaXhlc306V2UpfWNhdGNoe2F3YWl0IHRoaXMucmVmcmVzaEFsbENvbHVtbnMoKX19aGFuZGxlQ29sdW1uRHJhZ0VudGVyKGNlLEspe2NlLnByZXZlbnREZWZhdWx0KCksY2Uuc3RvcFByb3BhZ2F0aW9uKCk7bGV0IE1lPSh0aGlzLmRyYWdDb3VudGVycy5nZXQoSyl8fDApKzE7dGhpcy5kcmFnQ291bnRlcnMuc2V0KEssTWUpLHRoaXMuZHJhZ092ZXJDb2x1bW5JbmRleD1LfWhhbmRsZUNvbHVtbkRyYWdPdmVyKGNlKXtjZS5wcmV2ZW50RGVmYXVsdCgpLGNlLnN0b3BQcm9wYWdhdGlvbigpLGNlLmRhdGFUcmFuc2ZlciYmKGNlLmRhdGFUcmFuc2Zlci5kcm9wRWZmZWN0PXRoaXMuZHJhZ2dlZEl0ZW0/Im1vdmUiOiJjb3B5Iil9aGFuZGxlQ29sdW1uRHJhZ0xlYXZlKGNlLEspe2NlLnN0b3BQcm9wYWdhdGlvbigpO2xldCBNZT0odGhpcy5kcmFnQ291bnRlcnMuZ2V0KEspfHwxKS0xO3RoaXMuZHJhZ0NvdW50ZXJzLnNldChLLE1lKSxNZTw9MCYmKHRoaXMuZHJhZ0NvdW50ZXJzLmRlbGV0ZShLKSx0aGlzLmRyYWdPdmVyQ29sdW1uSW5kZXg9PT1LJiYodGhpcy5kcmFnT3ZlckNvbHVtbkluZGV4PS0xKSx0aGlzLmNsZWFyRm9sZGVySG92ZXIoKSl9YXN5bmMgaGFuZGxlQ29sdW1uRHJvcChjZSxLKXtjZS5wcmV2ZW50RGVmYXVsdCgpLGNlLnN0b3BQcm9wYWdhdGlvbigpO2xldCBNZT10aGlzLmRyYWdPdmVyRm9sZGVyUHJlZml4Pz90aGlzLmNvbHVtbnNbS10ucHJlZml4O2lmKHRoaXMuZHJhZ2dlZEl0ZW0pe3RoaXMuaW5pdGlhdGVNb3ZlKHRoaXMuZHJhZ2dlZEl0ZW0ua2V5LHRoaXMuZHJhZ2dlZEl0ZW0uaXNGb2xkZXIsTWUpLHRoaXMuZHJhZ2dlZEl0ZW09bnVsbCx0aGlzLmNsZWFyRm9sZGVySG92ZXIoKSx0aGlzLmRyYWdDb3VudGVycy5jbGVhcigpLHRoaXMuZHJhZ092ZXJDb2x1bW5JbmRleD0tMTtyZXR1cm59dGhpcy5kcmFnQ291bnRlcnMuY2xlYXIoKSx0aGlzLmRyYWdPdmVyQ29sdW1uSW5kZXg9LTE7bGV0IFdlPWNlLmRhdGFUcmFuc2Zlcj8uaXRlbXM7aWYoIVdlfHxXZS5sZW5ndGg9PT0wKXJldHVybjt0aGlzLmNsZWFyRm9sZGVySG92ZXIoKTtsZXQgVWU9W10sd3I9YXN5bmMoUnIsWGEpPT57aWYoUnIuaXNGaWxlKXtsZXQgS249UnIseWw9YXdhaXQgbmV3IFByb21pc2UoKHdsLFhzKT0+e0tuLmZpbGUod2wsWHMpfSk7VWUucHVzaCh7ZmlsZTp5bCxyZWxhdGl2ZVBhdGg6WGEreWwubmFtZX0pfWVsc2UgaWYoUnIuaXNEaXJlY3Rvcnkpe2xldCB5bD1Sci5jcmVhdGVSZWFkZXIoKSx3bD1hd2FpdCBuZXcgUHJvbWlzZSgoWHMsc1gpPT57eWwucmVhZEVudHJpZXMoWHMsc1gpfSk7Zm9yKGxldCBYcyBvZiB3bClhd2FpdCB3cihYcyxYYStSci5uYW1lKyIvIil9fTtmb3IobGV0IFJyPTA7UnI8V2UubGVuZ3RoO1JyKyspe2xldCBYYT1XZVtScl07aWYoWGEua2luZD09PSJmaWxlIil7bGV0IEtuPVhhLndlYmtpdEdldEFzRW50cnkoKTtLbiYmYXdhaXQgd3IoS24sIiIpfX1VZS5sZW5ndGg+MCYmYXdhaXQgdGhpcy51cGxvYWRGaWxlc1dpdGhQYXRocyhVZSxNZSl9aGFuZGxlRm9sZGVyRHJhZ0VudGVyKGNlLEspe2NlLnN0b3BQcm9wYWdhdGlvbigpLHRoaXMuY2xlYXJGb2xkZXJIb3ZlcigpLHRoaXMuZm9sZGVySG92ZXJUaW1lcj1zZXRUaW1lb3V0KCgpPT57dGhpcy5kcmFnT3ZlckZvbGRlclByZWZpeD1LfSw1MDApfWhhbmRsZUZvbGRlckRyYWdMZWF2ZShjZSxLKXtjZS5zdG9wUHJvcGFnYXRpb24oKTtsZXQgTWU9Y2UuY3VycmVudFRhcmdldCxXZT1jZS5yZWxhdGVkVGFyZ2V0O1dlJiZNZS5jb250YWlucyhXZSl8fCh0aGlzLmRyYWdPdmVyRm9sZGVyUHJlZml4PT09SyYmKHRoaXMuZHJhZ092ZXJGb2xkZXJQcmVmaXg9bnVsbCksdGhpcy5mb2xkZXJIb3ZlclRpbWVyJiYoY2xlYXJUaW1lb3V0KHRoaXMuZm9sZGVySG92ZXJUaW1lciksdGhpcy5mb2xkZXJIb3ZlclRpbWVyPW51bGwpKX1oYW5kbGVGb2xkZXJEcmFnT3ZlcihjZSl7Y2UucHJldmVudERlZmF1bHQoKSxjZS5zdG9wUHJvcGFnYXRpb24oKSxjZS5kYXRhVHJhbnNmZXImJihjZS5kYXRhVHJhbnNmZXIuZHJvcEVmZmVjdD10aGlzLmRyYWdnZWRJdGVtPyJtb3ZlIjoiY29weSIpfWNsZWFyRm9sZGVySG92ZXIoKXt0aGlzLmZvbGRlckhvdmVyVGltZXImJihjbGVhclRpbWVvdXQodGhpcy5mb2xkZXJIb3ZlclRpbWVyKSx0aGlzLmZvbGRlckhvdmVyVGltZXI9bnVsbCksdGhpcy5kcmFnT3ZlckZvbGRlclByZWZpeD1udWxsfWhhbmRsZUl0ZW1EcmFnU3RhcnQoY2UsSyxNZSl7dGhpcy5kcmFnZ2VkSXRlbT17a2V5OkssaXNGb2xkZXI6TWV9LGNlLmRhdGFUcmFuc2Zlcj8uc2V0RGF0YSgidGV4dC9wbGFpbiIsSyksY2UuZGF0YVRyYW5zZmVyLmVmZmVjdEFsbG93ZWQ9ImNvcHlNb3ZlIixjZS50YXJnZXQuY2xhc3NMaXN0LmFkZCgiZHJhZ2dpbmciKX1oYW5kbGVJdGVtRHJhZ0VuZChjZSl7dGhpcy5kcmFnZ2VkSXRlbT1udWxsLGNlLnRhcmdldC5jbGFzc0xpc3QucmVtb3ZlKCJkcmFnZ2luZyIpfWFzeW5jIG9wZW5Nb3ZlUGlja2VyRGlhbG9nKGNlLEspe3RoaXMubW92ZVBpY2tlclNvdXJjZT17a2V5OmNlLGlzRm9sZGVyOkt9LHRoaXMubW92ZVBpY2tlckN1cnJlbnRQcmVmaXg9IiIsdGhpcy5zaG93TW92ZVBpY2tlckRpYWxvZz0hMCxhd2FpdCB0aGlzLmxvYWRNb3ZlUGlja2VyUHJlZml4ZXMoIiIpfWFzeW5jIG5hdmlnYXRlTW92ZVBpY2tlcihjZSl7dGhpcy5tb3ZlUGlja2VyQ3VycmVudFByZWZpeD1jZSxhd2FpdCB0aGlzLmxvYWRNb3ZlUGlja2VyUHJlZml4ZXMoY2UpfWFzeW5jIGxvYWRNb3ZlUGlja2VyUHJlZml4ZXMoY2Upe2lmKHRoaXMuZGF0YVByb3ZpZGVyKXt0aGlzLm1vdmVQaWNrZXJMb2FkaW5nPSEwO3RyeXtsZXQgSz1hd2FpdCB0aGlzLmRhdGFQcm92aWRlci5saXN0T2JqZWN0cyh0aGlzLmJ1Y2tldE5hbWUsY2UsIi8iKTt0aGlzLm1vdmVQaWNrZXJQcmVmaXhlcz1LLnByZWZpeGVzfWNhdGNoe3RoaXMubW92ZVBpY2tlclByZWZpeGVzPVtdfXRoaXMubW92ZVBpY2tlckxvYWRpbmc9ITF9fXNlbGVjdE1vdmVEZXN0aW5hdGlvbihjZSl7dGhpcy5tb3ZlUGlja2VyU291cmNlJiYodGhpcy5jbG9zZU1vdmVQaWNrZXJEaWFsb2coKSx0aGlzLmluaXRpYXRlTW92ZSh0aGlzLm1vdmVQaWNrZXJTb3VyY2Uua2V5LHRoaXMubW92ZVBpY2tlclNvdXJjZS5pc0ZvbGRlcixjZSkpfWNsb3NlTW92ZVBpY2tlckRpYWxvZygpe3RoaXMuc2hvd01vdmVQaWNrZXJEaWFsb2c9ITEsdGhpcy5tb3ZlUGlja2VyU291cmNlPW51bGwsdGhpcy5tb3ZlUGlja2VyQ3VycmVudFByZWZpeD0iIix0aGlzLm1vdmVQaWNrZXJQcmVmaXhlcz1bXX1pbml0aWF0ZU1vdmUoY2UsSyxNZSl7bGV0IFdlPVE5KGNlLE1lKTtpZighV2UudmFsaWQpe3RoaXMubW92ZVNvdXJjZT17a2V5OmNlLGlzRm9sZGVyOkt9LHRoaXMubW92ZURlc3RpbmF0aW9uPU1lLHRoaXMubW92ZUVycm9yPVdlLmVycm9yLHRoaXMuc2hvd01vdmVEaWFsb2c9ITA7cmV0dXJufXRoaXMubW92ZVNvdXJjZT17a2V5OmNlLGlzRm9sZGVyOkt9LHRoaXMubW92ZURlc3RpbmF0aW9uPU1lLHRoaXMubW92ZUVycm9yPW51bGwsdGhpcy5zaG93TW92ZURpYWxvZz0hMH1hc3luYyBleGVjdXRlTW92ZSgpe2lmKCEoIXRoaXMubW92ZVNvdXJjZXx8IXRoaXMuZGF0YVByb3ZpZGVyKSl7dGhpcy5tb3ZlSW5Qcm9ncmVzcz0hMDt0cnl7bGV0IGNlPWRyKHRoaXMubW92ZVNvdXJjZS5rZXkpLEs9dGhpcy5tb3ZlRGVzdGluYXRpb24rY2UrKHRoaXMubW92ZVNvdXJjZS5pc0ZvbGRlcj8iLyI6IiIpLE1lO3RoaXMubW92ZVNvdXJjZS5pc0ZvbGRlcj9NZT1hd2FpdCB0aGlzLmRhdGFQcm92aWRlci5tb3ZlUHJlZml4KHRoaXMuYnVja2V0TmFtZSx0aGlzLm1vdmVTb3VyY2Uua2V5LEspOk1lPWF3YWl0IHRoaXMuZGF0YVByb3ZpZGVyLm1vdmVPYmplY3QodGhpcy5idWNrZXROYW1lLHRoaXMubW92ZVNvdXJjZS5rZXksSyksTWUuc3VjY2Vzcz8odGhpcy5jbG9zZU1vdmVEaWFsb2coKSxhd2FpdCB0aGlzLnJlZnJlc2hBbGxDb2x1bW5zKCkpOnRoaXMubW92ZUVycm9yPU1lLmVycm9yfHwiTW92ZSBvcGVyYXRpb24gZmFpbGVkIn1jYXRjaChjZSl7dGhpcy5tb3ZlRXJyb3I9YEVycm9yOiAke2NlfWB9dGhpcy5tb3ZlSW5Qcm9ncmVzcz0hMX19Y2xvc2VNb3ZlRGlhbG9nKCl7dGhpcy5zaG93TW92ZURpYWxvZz0hMSx0aGlzLm1vdmVTb3VyY2U9bnVsbCx0aGlzLm1vdmVEZXN0aW5hdGlvbj0iIix0aGlzLm1vdmVFcnJvcj1udWxsLHRoaXMubW92ZUluUHJvZ3Jlc3M9ITF9b3BlblJlbmFtZURpYWxvZyhjZSxLKXt0aGlzLnJlbmFtZVNvdXJjZT17a2V5OmNlLGlzRm9sZGVyOkt9LHRoaXMucmVuYW1lTmFtZT1kcihjZSksdGhpcy5yZW5hbWVFcnJvcj1udWxsLHRoaXMuc2hvd1JlbmFtZURpYWxvZz0hMCx0aGlzLnVwZGF0ZUNvbXBsZXRlLnRoZW4oKCk9PntsZXQgTWU9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCIucmVuYW1lLWRpYWxvZy1pbnB1dCIpO2lmKE1lKWlmKE1lLmZvY3VzKCksSylNZS5zZWxlY3QoKTtlbHNle2xldCBXZT10aGlzLnJlbmFtZU5hbWUubGFzdEluZGV4T2YoIi4iKTtXZT4wP01lLnNldFNlbGVjdGlvblJhbmdlKDAsV2UpOk1lLnNlbGVjdCgpfX0pfWFzeW5jIGV4ZWN1dGVSZW5hbWUoKXtpZighdGhpcy5yZW5hbWVTb3VyY2V8fCF0aGlzLnJlbmFtZU5hbWUudHJpbSgpfHwhdGhpcy5kYXRhUHJvdmlkZXIpcmV0dXJuO2xldCBjZT10aGlzLnJlbmFtZU5hbWUudHJpbSgpLEs9ZHIodGhpcy5yZW5hbWVTb3VyY2Uua2V5KTtpZihjZT09PUspe3RoaXMucmVuYW1lRXJyb3I9Ik5hbWUgaXMgdGhlIHNhbWUgYXMgY3VycmVudCI7cmV0dXJufWlmKCFjZSl7dGhpcy5yZW5hbWVFcnJvcj0iTmFtZSBjYW5ub3QgYmUgZW1wdHkiO3JldHVybn1pZihjZS5pbmNsdWRlcygiLyIpKXt0aGlzLnJlbmFtZUVycm9yPSdOYW1lIGNhbm5vdCBjb250YWluICIvIic7cmV0dXJufXRoaXMucmVuYW1lSW5Qcm9ncmVzcz0hMCx0aGlzLnJlbmFtZUVycm9yPW51bGw7dHJ5e2xldCBXZT1qcyh0aGlzLnJlbmFtZVNvdXJjZS5rZXkpK2NlKyh0aGlzLnJlbmFtZVNvdXJjZS5pc0ZvbGRlcj8iLyI6IiIpLFVlO3RoaXMucmVuYW1lU291cmNlLmlzRm9sZGVyP1VlPWF3YWl0IHRoaXMuZGF0YVByb3ZpZGVyLm1vdmVQcmVmaXgodGhpcy5idWNrZXROYW1lLHRoaXMucmVuYW1lU291cmNlLmtleSxXZSk6VWU9YXdhaXQgdGhpcy5kYXRhUHJvdmlkZXIubW92ZU9iamVjdCh0aGlzLmJ1Y2tldE5hbWUsdGhpcy5yZW5hbWVTb3VyY2Uua2V5LFdlKSxVZS5zdWNjZXNzPyh0aGlzLmNsb3NlUmVuYW1lRGlhbG9nKCksYXdhaXQgdGhpcy5yZWZyZXNoQWxsQ29sdW1ucygpKTp0aGlzLnJlbmFtZUVycm9yPVVlLmVycm9yfHwiUmVuYW1lIGZhaWxlZCJ9Y2F0Y2goTWUpe3RoaXMucmVuYW1lRXJyb3I9YEVycm9yOiAke01lfWB9dGhpcy5yZW5hbWVJblByb2dyZXNzPSExfWNsb3NlUmVuYW1lRGlhbG9nKCl7dGhpcy5zaG93UmVuYW1lRGlhbG9nPSExLHRoaXMucmVuYW1lU291cmNlPW51bGwsdGhpcy5yZW5hbWVOYW1lPSIiLHRoaXMucmVuYW1lRXJyb3I9bnVsbCx0aGlzLnJlbmFtZUluUHJvZ3Jlc3M9ITF9cmVuZGVyUmVuYW1lRGlhbG9nKCl7aWYoIXRoaXMuc2hvd1JlbmFtZURpYWxvZ3x8IXRoaXMucmVuYW1lU291cmNlKXJldHVybiIiO2xldCBjZT10aGlzLnJlbmFtZVNvdXJjZS5pc0ZvbGRlcjtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0iZGlhbG9nLW92ZXJsYXkiIEBjbGljaz0keygpPT50aGlzLmNsb3NlUmVuYW1lRGlhbG9nKCl9PgogICAgICAgIDxkaXYgY2xhc3M9ImRpYWxvZyIgQGNsaWNrPSR7TWU9Pk1lLnN0b3BQcm9wYWdhdGlvbigpfT4KICAgICAgICAgIDxkaXYgY2xhc3M9ImRpYWxvZy10aXRsZSI+JHtjZT8iUmVuYW1lIEZvbGRlciI6IlJlbmFtZSBGaWxlIn08L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImRpYWxvZy1sb2NhdGlvbiI+CiAgICAgICAgICAgIExvY2F0aW9uOiAke3RoaXMuYnVja2V0TmFtZX0vJHtqcyh0aGlzLnJlbmFtZVNvdXJjZS5rZXkpfQogICAgICAgICAgPC9kaXY+CiAgICAgICAgICAke3RoaXMucmVuYW1lRXJyb3I/U2A8ZGl2IGNsYXNzPSJtb3ZlLWVycm9yIj4ke3RoaXMucmVuYW1lRXJyb3J9PC9kaXY+YDoiIn0KICAgICAgICAgIDxpbnB1dAogICAgICAgICAgICB0eXBlPSJ0ZXh0IgogICAgICAgICAgICBjbGFzcz0iZGlhbG9nLWlucHV0IHJlbmFtZS1kaWFsb2ctaW5wdXQiCiAgICAgICAgICAgIHBsYWNlaG9sZGVyPSR7Y2U/ImZvbGRlci1uYW1lIjoiZmlsZW5hbWUuZXh0In0KICAgICAgICAgICAgLnZhbHVlPSR7dGhpcy5yZW5hbWVOYW1lfQogICAgICAgICAgICBAaW5wdXQ9JHtNZT0+e3RoaXMucmVuYW1lTmFtZT1NZS50YXJnZXQudmFsdWUsdGhpcy5yZW5hbWVFcnJvcj1udWxsfX0KICAgICAgICAgICAgQGtleWRvd249JHtNZT0+e01lLmtleT09PSJFbnRlciImJnRoaXMuZXhlY3V0ZVJlbmFtZSgpLE1lLmtleT09PSJFc2NhcGUiJiZ0aGlzLmNsb3NlUmVuYW1lRGlhbG9nKCl9fQogICAgICAgICAgLz4KICAgICAgICAgIDxkaXYgY2xhc3M9ImRpYWxvZy1hY3Rpb25zIj4KICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iZGlhbG9nLWJ0biBkaWFsb2ctYnRuLWNhbmNlbCIKICAgICAgICAgICAgICAgICAgICBAY2xpY2s9JHsoKT0+dGhpcy5jbG9zZVJlbmFtZURpYWxvZygpfQogICAgICAgICAgICAgICAgICAgID9kaXNhYmxlZD0ke3RoaXMucmVuYW1lSW5Qcm9ncmVzc30+Q2FuY2VsPC9idXR0b24+CiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImRpYWxvZy1idG4gZGlhbG9nLWJ0bi1jcmVhdGUiCiAgICAgICAgICAgICAgICAgICAgQGNsaWNrPSR7KCk9PnRoaXMuZXhlY3V0ZVJlbmFtZSgpfQogICAgICAgICAgICAgICAgICAgID9kaXNhYmxlZD0ke3RoaXMucmVuYW1lSW5Qcm9ncmVzc3x8IXRoaXMucmVuYW1lTmFtZS50cmltKCl9PgogICAgICAgICAgICAgICR7dGhpcy5yZW5hbWVJblByb2dyZXNzPyJSZW5hbWluZy4uLiI6IlJlbmFtZSJ9CiAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgYH1yZW5kZXJNb3ZlRGlhbG9nKCl7aWYoIXRoaXMuc2hvd01vdmVEaWFsb2d8fCF0aGlzLm1vdmVTb3VyY2UpcmV0dXJuIiI7bGV0IGNlPWRyKHRoaXMubW92ZVNvdXJjZS5rZXkpO3JldHVybiBTYAogICAgICA8ZGl2IGNsYXNzPSJkaWFsb2ctb3ZlcmxheSIgQGNsaWNrPSR7KCk9PnRoaXMuY2xvc2VNb3ZlRGlhbG9nKCl9PgogICAgICAgIDxkaXYgY2xhc3M9ImRpYWxvZyIgQGNsaWNrPSR7Sz0+Sy5zdG9wUHJvcGFnYXRpb24oKX0+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJkaWFsb2ctdGl0bGUiPk1vdmUgJHt0aGlzLm1vdmVTb3VyY2UuaXNGb2xkZXI/IkZvbGRlciI6IkZpbGUifTwvZGl2PgoKICAgICAgICAgICR7dGhpcy5tb3ZlRXJyb3I/U2AKICAgICAgICAgICAgPGRpdiBjbGFzcz0ibW92ZS1lcnJvciI+JHt0aGlzLm1vdmVFcnJvcn08L2Rpdj4KICAgICAgICAgIGA6U2AKICAgICAgICAgICAgPGRpdiBjbGFzcz0ibW92ZS1zdW1tYXJ5Ij4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtb3ZlLWl0ZW0iPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im1vdmUtbGFiZWwiPkZyb206PC9zcGFuPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im1vdmUtcGF0aCI+JHt0aGlzLm1vdmVTb3VyY2Uua2V5fTwvc3Bhbj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtb3ZlLWl0ZW0iPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im1vdmUtbGFiZWwiPlRvOjwvc3Bhbj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJtb3ZlLXBhdGgiPiR7dGhpcy5tb3ZlRGVzdGluYXRpb259JHtjZX08L3NwYW4+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgYH0KCiAgICAgICAgICA8ZGl2IGNsYXNzPSJkaWFsb2ctYWN0aW9ucyI+CiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImRpYWxvZy1idG4gZGlhbG9nLWJ0bi1jYW5jZWwiCiAgICAgICAgICAgICAgICAgICAgQGNsaWNrPSR7KCk9PnRoaXMuY2xvc2VNb3ZlRGlhbG9nKCl9CiAgICAgICAgICAgICAgICAgICAgP2Rpc2FibGVkPSR7dGhpcy5tb3ZlSW5Qcm9ncmVzc30+CiAgICAgICAgICAgICAgQ2FuY2VsCiAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAke3RoaXMubW92ZUVycm9yPyIiOlNgCiAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iZGlhbG9nLWJ0biBkaWFsb2ctYnRuLWNyZWF0ZSIKICAgICAgICAgICAgICAgICAgICAgIEBjbGljaz0keygpPT50aGlzLmV4ZWN1dGVNb3ZlKCl9CiAgICAgICAgICAgICAgICAgICAgICA/ZGlzYWJsZWQ9JHt0aGlzLm1vdmVJblByb2dyZXNzfT4KICAgICAgICAgICAgICAgICR7dGhpcy5tb3ZlSW5Qcm9ncmVzcz8iTW92aW5nLi4uIjoiTW92ZSJ9CiAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgIGB9CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICBgfXJlbmRlck1vdmVQaWNrZXJEaWFsb2coKXtpZighdGhpcy5zaG93TW92ZVBpY2tlckRpYWxvZ3x8IXRoaXMubW92ZVBpY2tlclNvdXJjZSlyZXR1cm4iIjtsZXQgY2U9ZHIodGhpcy5tb3ZlUGlja2VyU291cmNlLmtleSksSz1qcyh0aGlzLm1vdmVQaWNrZXJTb3VyY2Uua2V5KTtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0iZGlhbG9nLW92ZXJsYXkiIEBjbGljaz0keygpPT50aGlzLmNsb3NlTW92ZVBpY2tlckRpYWxvZygpfT4KICAgICAgICA8ZGl2IGNsYXNzPSJkaWFsb2cgbW92ZS1waWNrZXItZGlhbG9nIiBAY2xpY2s9JHtNZT0+TWUuc3RvcFByb3BhZ2F0aW9uKCl9PgogICAgICAgICAgPGRpdiBjbGFzcz0iZGlhbG9nLXRpdGxlIj5Nb3ZlICIke2NlfSIgdG8uLi48L2Rpdj4KCiAgICAgICAgICA8ZGl2IGNsYXNzPSJwaWNrZXItYnJlYWRjcnVtYiI+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJwaWNrZXItY3J1bWIiIEBjbGljaz0keygpPT50aGlzLm5hdmlnYXRlTW92ZVBpY2tlcigiIil9PgogICAgICAgICAgICAgICR7dGhpcy5idWNrZXROYW1lfQogICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICR7UjgodGhpcy5tb3ZlUGlja2VyQ3VycmVudFByZWZpeCkubWFwKE1lPT5TYAogICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJwaWNrZXItc2VwYXJhdG9yIj4vPC9zcGFuPgogICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJwaWNrZXItY3J1bWIiIEBjbGljaz0keygpPT50aGlzLm5hdmlnYXRlTW92ZVBpY2tlcihNZSl9PgogICAgICAgICAgICAgICAgJHtkcihNZSl9CiAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICBgKX0KICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgIDxkaXYgY2xhc3M9InBpY2tlci1saXN0Ij4KICAgICAgICAgICAgJHt0aGlzLm1vdmVQaWNrZXJMb2FkaW5nP1NgPGRpdiBjbGFzcz0icGlja2VyLWVtcHR5Ij5Mb2FkaW5nLi4uPC9kaXY+YDoiIn0KICAgICAgICAgICAgJHshdGhpcy5tb3ZlUGlja2VyTG9hZGluZyYmdGhpcy5tb3ZlUGlja2VyUHJlZml4ZXMuZmlsdGVyKE1lPT5NZSE9PXRoaXMubW92ZVBpY2tlclNvdXJjZS5rZXkpLmxlbmd0aD09PTA/U2AKICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwaWNrZXItZW1wdHkiPk5vIHN1YmZvbGRlcnM8L2Rpdj4KICAgICAgICAgICAgYDoiIn0KICAgICAgICAgICAgJHt0aGlzLm1vdmVQaWNrZXJQcmVmaXhlcy5maWx0ZXIoTWU9Pk1lIT09dGhpcy5tb3ZlUGlja2VyU291cmNlLmtleSkubWFwKE1lPT5TYAogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGlja2VyLWl0ZW0iCiAgICAgICAgICAgICAgICAgICAgIEBjbGljaz0keygpPT50aGlzLm5hdmlnYXRlTW92ZVBpY2tlcihNZSl9CiAgICAgICAgICAgICAgICAgICAgIEBkYmxjbGljaz0keygpPT50aGlzLnNlbGVjdE1vdmVEZXN0aW5hdGlvbihNZSl9PgogICAgICAgICAgICAgICAgICA8c3ZnIGNsYXNzPSJpY29uIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9ImN1cnJlbnRDb2xvciI+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTIyIDE5YTIgMiAwIDAgMS0yIDJINGEyIDIgMCAwIDEtMi0yVjVhMiAyIDAgMCAxIDItMmg1bDIgM2g5YTIgMiAwIDAgMSAyIDJ6Ii8+CiAgICAgICAgICAgICAgICAgIDwvc3ZnPgogICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibmFtZSI+JHtkcihNZSl9PC9zcGFuPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgYCl9CiAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICA8ZGl2IGNsYXNzPSJkaWFsb2ctYWN0aW9ucyI+CiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImRpYWxvZy1idG4gZGlhbG9nLWJ0bi1jYW5jZWwiIEBjbGljaz0keygpPT50aGlzLmNsb3NlTW92ZVBpY2tlckRpYWxvZygpfT4KICAgICAgICAgICAgICBDYW5jZWwKICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImRpYWxvZy1idG4gZGlhbG9nLWJ0bi1jcmVhdGUiCiAgICAgICAgICAgICAgICAgICAgQGNsaWNrPSR7KCk9PnRoaXMuc2VsZWN0TW92ZURlc3RpbmF0aW9uKHRoaXMubW92ZVBpY2tlckN1cnJlbnRQcmVmaXgpfQogICAgICAgICAgICAgICAgICAgID9kaXNhYmxlZD0ke3RoaXMubW92ZVBpY2tlckN1cnJlbnRQcmVmaXg9PT1LfT4KICAgICAgICAgICAgICBNb3ZlIEhlcmUKICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICBgfWFzeW5jIGhhbmRsZUNyZWF0ZSgpe2lmKCF0aGlzLmNyZWF0ZURpYWxvZ05hbWUudHJpbSgpfHwhdGhpcy5kYXRhUHJvdmlkZXIpcmV0dXJuO2xldCBjZT10aGlzLmNyZWF0ZURpYWxvZ05hbWUudHJpbSgpLEs7dGhpcy5jcmVhdGVEaWFsb2dUeXBlPT09ImZvbGRlciI/Sz10aGlzLmNyZWF0ZURpYWxvZ1ByZWZpeCtjZSsiLy5rZWVwIjpLPXRoaXMuY3JlYXRlRGlhbG9nUHJlZml4K2NlO2xldCBNZT1jZS5zcGxpdCgiLiIpLnBvcCgpPy50b0xvd2VyQ2FzZSgpfHwiIixXZT10aGlzLmNyZWF0ZURpYWxvZ1R5cGU9PT0iZmlsZSI/aDMoTWUpOiJhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0iLFVlPXRoaXMuY3JlYXRlRGlhbG9nVHlwZT09PSJmaWxlIj9LOShNZSk6IiI7YXdhaXQgdGhpcy5kYXRhUHJvdmlkZXIucHV0T2JqZWN0KHRoaXMuYnVja2V0TmFtZSxLLGJ0b2EoVWUpLFdlKSYmKHRoaXMuc2hvd0NyZWF0ZURpYWxvZz0hMSxhd2FpdCB0aGlzLnJlZnJlc2hDb2x1bW5CeVByZWZpeCh0aGlzLmNyZWF0ZURpYWxvZ1ByZWZpeCkpfXJlbmRlckNyZWF0ZURpYWxvZygpe2lmKCF0aGlzLnNob3dDcmVhdGVEaWFsb2cpcmV0dXJuIiI7bGV0IGNlPXRoaXMuY3JlYXRlRGlhbG9nVHlwZT09PSJmb2xkZXIiLEs9Y2U/IkNyZWF0ZSBOZXcgRm9sZGVyIjoiQ3JlYXRlIE5ldyBGaWxlIixNZT1jZT8iZm9sZGVyLW5hbWUgb3IgcGF0aC90by9mb2xkZXIiOiJmaWxlbmFtZS50eHQgb3IgcGF0aC90by9maWxlLnR4dCI7cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9ImRpYWxvZy1vdmVybGF5IiBAY2xpY2s9JHsoKT0+dGhpcy5zaG93Q3JlYXRlRGlhbG9nPSExfT4KICAgICAgICA8ZGl2IGNsYXNzPSJkaWFsb2ciIEBjbGljaz0ke1dlPT5XZS5zdG9wUHJvcGFnYXRpb24oKX0+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJkaWFsb2ctdGl0bGUiPiR7S308L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImRpYWxvZy1sb2NhdGlvbiI+CiAgICAgICAgICAgIExvY2F0aW9uOiAke3RoaXMuYnVja2V0TmFtZX0vJHt0aGlzLmNyZWF0ZURpYWxvZ1ByZWZpeH0KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGlucHV0CiAgICAgICAgICAgIHR5cGU9InRleHQiCiAgICAgICAgICAgIGNsYXNzPSJkaWFsb2ctaW5wdXQiCiAgICAgICAgICAgIHBsYWNlaG9sZGVyPSR7TWV9CiAgICAgICAgICAgIC52YWx1ZT0ke3RoaXMuY3JlYXRlRGlhbG9nTmFtZX0KICAgICAgICAgICAgQGlucHV0PSR7V2U9PnRoaXMuY3JlYXRlRGlhbG9nTmFtZT1XZS50YXJnZXQudmFsdWV9CiAgICAgICAgICAgIEBrZXlkb3duPSR7V2U9PldlLmtleT09PSJFbnRlciImJnRoaXMuaGFuZGxlQ3JlYXRlKCl9CiAgICAgICAgICAvPgogICAgICAgICAgPGRpdiBjbGFzcz0iZGlhbG9nLWhpbnQiPgogICAgICAgICAgICBVc2UgIi8iIHRvIGNyZWF0ZSBuZXN0ZWQgJHtjZT8iZm9sZGVycyI6InBhdGgifSAoZS5nLiwgJHtjZT8icGFyZW50L2NoaWxkIjoiZm9sZGVyL2ZpbGUudHh0In0pCiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImRpYWxvZy1hY3Rpb25zIj4KICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iZGlhbG9nLWJ0biBkaWFsb2ctYnRuLWNhbmNlbCIgQGNsaWNrPSR7KCk9PnRoaXMuc2hvd0NyZWF0ZURpYWxvZz0hMX0+CiAgICAgICAgICAgICAgQ2FuY2VsCiAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICA8YnV0dG9uCiAgICAgICAgICAgICAgY2xhc3M9ImRpYWxvZy1idG4gZGlhbG9nLWJ0bi1jcmVhdGUiCiAgICAgICAgICAgICAgP2Rpc2FibGVkPSR7IXRoaXMuY3JlYXRlRGlhbG9nTmFtZS50cmltKCl9CiAgICAgICAgICAgICAgQGNsaWNrPSR7KCk9PnRoaXMuaGFuZGxlQ3JlYXRlKCl9CiAgICAgICAgICAgID4KICAgICAgICAgICAgICBDcmVhdGUKICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICBgfXJlbmRlcigpe3JldHVybiB0aGlzLmxvYWRpbmcmJnRoaXMuY29sdW1ucy5sZW5ndGg9PT0wP1NgPGRpdiBjbGFzcz0ibG9hZGluZyI+TG9hZGluZy4uLjwvZGl2PmA6U2AKICAgICAgPGRpdiBjbGFzcz0iY29sdW1ucy1jb250YWluZXIiPgogICAgICAgICR7dGhpcy5jb2x1bW5zLm1hcCgoY2UsSyk9PnRoaXMucmVuZGVyQ29sdW1uV3JhcHBlcihjZSxLKSl9CiAgICAgIDwvZGl2PgogICAgICAke3RoaXMucmVuZGVyQ3JlYXRlRGlhbG9nKCl9CiAgICAgICR7dGhpcy5yZW5kZXJNb3ZlRGlhbG9nKCl9CiAgICAgICR7dGhpcy5yZW5kZXJNb3ZlUGlja2VyRGlhbG9nKCl9CiAgICAgICR7dGhpcy5yZW5kZXJSZW5hbWVEaWFsb2coKX0KICAgIGB9cmVuZGVyQ29sdW1uV3JhcHBlcihjZSxLKXtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0iY29sdW1uLXdyYXBwZXIiPgogICAgICAgICR7dGhpcy5yZW5kZXJDb2x1bW4oY2UsSyl9CiAgICAgICAgPGRpdgogICAgICAgICAgY2xhc3M9InJlc2l6ZS1oYW5kbGUgJHt0aGlzLnJlc2l6aW5nPy5jb2x1bW5JbmRleD09PUs/ImFjdGl2ZSI6IiJ9IgogICAgICAgICAgQG1vdXNlZG93bj0ke01lPT50aGlzLnN0YXJ0UmVzaXplKE1lLEspfQogICAgICAgID48L2Rpdj4KICAgICAgPC9kaXY+CiAgICBgfXJlbmRlckNvbHVtbihjZSxLKXtsZXQgTWU9Y2UucHJlZml4P2RyKGNlLnByZWZpeCk6dGhpcy5idWNrZXROYW1lO3JldHVybiBTYAogICAgICA8ZGl2CiAgICAgICAgY2xhc3M9ImNvbHVtbiAke3RoaXMuZHJhZ092ZXJDb2x1bW5JbmRleD09PUs/ImRyYWctb3ZlciI6IiJ9IgogICAgICAgIHN0eWxlPSJ3aWR0aDogJHtjZS53aWR0aH1weCIKICAgICAgICBAZHJhZ2VudGVyPSR7V2U9PnRoaXMuaGFuZGxlQ29sdW1uRHJhZ0VudGVyKFdlLEspfQogICAgICAgIEBkcmFnb3Zlcj0ke1dlPT50aGlzLmhhbmRsZUNvbHVtbkRyYWdPdmVyKFdlKX0KICAgICAgICBAZHJhZ2xlYXZlPSR7V2U9PnRoaXMuaGFuZGxlQ29sdW1uRHJhZ0xlYXZlKFdlLEspfQogICAgICAgIEBkcm9wPSR7V2U9PnRoaXMuaGFuZGxlQ29sdW1uRHJvcChXZSxLKX0KICAgICAgPgogICAgICAgIDxkaXYgY2xhc3M9ImNvbHVtbi1oZWFkZXIiIHRpdGxlPSR7Y2UucHJlZml4fHx0aGlzLmJ1Y2tldE5hbWV9PgogICAgICAgICAgJHtNZX0KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJjb2x1bW4taXRlbXMiIEBjb250ZXh0bWVudT0ke1dlPT50aGlzLmhhbmRsZUVtcHR5U3BhY2VDb250ZXh0TWVudShXZSxLKX0+CiAgICAgICAgICAke2NlLnByZWZpeGVzLmxlbmd0aD09PTAmJmNlLm9iamVjdHMubGVuZ3RoPT09MD9TYDxkaXYgY2xhc3M9ImVtcHR5LXN0YXRlIj5FbXB0eSBmb2xkZXI8L2Rpdj5gOiIifQogICAgICAgICAgJHtjZS5wcmVmaXhlcy5tYXAoV2U9PlNgCiAgICAgICAgICAgICAgPGRpdgogICAgICAgICAgICAgICAgY2xhc3M9ImNvbHVtbi1pdGVtIGZvbGRlciAke2NlLnNlbGVjdGVkSXRlbT09PVdlPyJzZWxlY3RlZCI6IiJ9ICR7dGhpcy5kcmFnT3ZlckZvbGRlclByZWZpeD09PVdlPyJkcmFnLXRhcmdldCI6IiJ9IgogICAgICAgICAgICAgICAgZHJhZ2dhYmxlPSJ0cnVlIgogICAgICAgICAgICAgICAgQGNsaWNrPSR7KCk9PnRoaXMuc2VsZWN0Rm9sZGVyKEssV2UpfQogICAgICAgICAgICAgICAgQGNvbnRleHRtZW51PSR7VWU9PnRoaXMuaGFuZGxlRm9sZGVyQ29udGV4dE1lbnUoVWUsSyxXZSl9CiAgICAgICAgICAgICAgICBAZHJhZ3N0YXJ0PSR7VWU9PnRoaXMuaGFuZGxlSXRlbURyYWdTdGFydChVZSxXZSwhMCl9CiAgICAgICAgICAgICAgICBAZHJhZ2VuZD0ke1VlPT50aGlzLmhhbmRsZUl0ZW1EcmFnRW5kKFVlKX0KICAgICAgICAgICAgICAgIEBkcmFnZW50ZXI9JHtVZT0+dGhpcy5oYW5kbGVGb2xkZXJEcmFnRW50ZXIoVWUsV2UpfQogICAgICAgICAgICAgICAgQGRyYWdvdmVyPSR7VWU9PnRoaXMuaGFuZGxlRm9sZGVyRHJhZ092ZXIoVWUpfQogICAgICAgICAgICAgICAgQGRyYWdsZWF2ZT0ke1VlPT50aGlzLmhhbmRsZUZvbGRlckRyYWdMZWF2ZShVZSxXZSl9CiAgICAgICAgICAgICAgPgogICAgICAgICAgICAgICAgPHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJjdXJyZW50Q29sb3IiPgogICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMjIgMTlhMiAyIDAgMCAxLTIgMkg0YTIgMiAwIDAgMS0yLTJWNWEyIDIgMCAwIDEgMi0yaDVsMiAzaDlhMiAyIDAgMCAxIDIgMnoiIC8+CiAgICAgICAgICAgICAgICA8L3N2Zz4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYW1lIj4ke2RyKFdlKX08L3NwYW4+CiAgICAgICAgICAgICAgICA8c3ZnIGNsYXNzPSJjaGV2cm9uIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiPgogICAgICAgICAgICAgICAgICA8cG9seWxpbmUgcG9pbnRzPSI5IDE4IDE1IDEyIDkgNiI+PC9wb2x5bGluZT4KICAgICAgICAgICAgICAgIDwvc3ZnPgogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICBgKX0KICAgICAgICAgICR7Y2Uub2JqZWN0cy5tYXAoV2U9PlNgCiAgICAgICAgICAgICAgPGRpdgogICAgICAgICAgICAgICAgY2xhc3M9ImNvbHVtbi1pdGVtICR7Y2Uuc2VsZWN0ZWRJdGVtPT09V2Uua2V5PyJzZWxlY3RlZCI6IiJ9IgogICAgICAgICAgICAgICAgZHJhZ2dhYmxlPSJ0cnVlIgogICAgICAgICAgICAgICAgQGNsaWNrPSR7KCk9PnRoaXMuc2VsZWN0RmlsZShLLFdlLmtleSl9CiAgICAgICAgICAgICAgICBAY29udGV4dG1lbnU9JHtVZT0+dGhpcy5oYW5kbGVGaWxlQ29udGV4dE1lbnUoVWUsSyxXZS5rZXkpfQogICAgICAgICAgICAgICAgQGRyYWdzdGFydD0ke1VlPT50aGlzLmhhbmRsZUl0ZW1EcmFnU3RhcnQoVWUsV2Uua2V5LCExKX0KICAgICAgICAgICAgICAgIEBkcmFnZW5kPSR7VWU9PnRoaXMuaGFuZGxlSXRlbURyYWdFbmQoVWUpfQogICAgICAgICAgICAgID4KICAgICAgICAgICAgICAgIDxzdmcgY2xhc3M9Imljb24iIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiI+CiAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9IiR7dGhpcy5nZXRGaWxlSWNvbihXZS5rZXkpfSIgLz4KICAgICAgICAgICAgICAgIDwvc3ZnPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hbWUiPiR7ZHIoV2Uua2V5KX08L3NwYW4+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIGApfQogICAgICAgIDwvZGl2PgogICAgICAgICR7dGhpcy5kcmFnT3ZlckNvbHVtbkluZGV4PT09Sz9TYAogICAgICAgICAgPGRpdiBjbGFzcz0iZHJhZy1oaW50Ij4KICAgICAgICAgICAgJHt0aGlzLmRyYWdnZWRJdGVtP3RoaXMuZHJhZ092ZXJGb2xkZXJQcmVmaXg/YE1vdmUgdG8gJHtkcih0aGlzLmRyYWdPdmVyRm9sZGVyUHJlZml4KX1gOiJNb3ZlIGhlcmUiOnRoaXMuZHJhZ092ZXJGb2xkZXJQcmVmaXg/YERyb3AgdG8gdXBsb2FkIGludG8gJHtkcih0aGlzLmRyYWdPdmVyRm9sZGVyUHJlZml4KX1gOiJEcm9wIHRvIHVwbG9hZCBoZXJlIn0KICAgICAgICAgIDwvZGl2PgogICAgICAgIGA6IiJ9CiAgICAgICAgJHt0aGlzLnVwbG9hZGluZz9TYAogICAgICAgICAgPGRpdiBjbGFzcz0idXBsb2FkLW92ZXJsYXkiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ1cGxvYWQtdGV4dCI+VXBsb2FkaW5nLi4uPC9kaXY+CiAgICAgICAgICAgICR7dGhpcy51cGxvYWRQcm9ncmVzcz9TYAogICAgICAgICAgICAgIDxkaXYgY2xhc3M9InVwbG9hZC1wcm9ncmVzcyI+JHt0aGlzLnVwbG9hZFByb2dyZXNzLmN1cnJlbnR9IC8gJHt0aGlzLnVwbG9hZFByb2dyZXNzLnRvdGFsfSBmaWxlczwvZGl2PgogICAgICAgICAgICBgOiIifQogICAgICAgICAgPC9kaXY+CiAgICAgICAgYDoiIn0KICAgICAgPC9kaXY+CiAgICBgfXN0YXRpY3tmdChhLHIpfX07cmV0dXJuIEdlPWF9KSgpfSk7dmFyIG5hLHZ0LERJcixxY3Q9bCgoKT0+e1NlKCk7YmkoKTtvdCgpO0ZaKCk7bmE9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSx2dD1mdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MixpPTA7aTx0Lmxlbmd0aDtpKyspcj1hP3RbaV0uY2FsbChlLHIpOnRbaV0uY2FsbChlKTtyZXR1cm4gYT9yOnZvaWQgMH0sRElyPSgoKT0+e2xldCBlPVt6ZSgiZGVlcy1zdG9yYWdlLWtleXMiKV0sdCxyPVtdLGEsaT1EZSxvLG49W10scz1bXSxjLGQ9W10sZj1bXSx1LHA9W10saD1bXSxiLHg9W10sZz1bXSx2LHc9W10sTT1bXSxGLEM9W10saz1bXSxOLCQ9W10sST1bXSxCLHo9W10seT1bXSxFLF89W10sUD1bXSxWLEg9W10sVz1bXSxhZSxUPVtdLEo9W10sZmUsTD1bXSxRPVtdLGtlLEc9W10sQT1bXSxELFI9W10sTz1bXSxZLHVlPVtdLHllPVtdLCRlLFU9W10scT1bXSxpZSx3ZT1bXSxnZT1bXSxBZSx4ZT1bXSxuZT1bXSxMZSxPZT1bXSxKZT1bXSx0ZSxaPVtdLGVlPVtdLGJlLE5lPVtdLEtlPVtdLHl0LG50PVtdLEx0PVtdLE90LHNlPVtdLGRlPVtdLEVlLGd0PVtdLGt0PVtdLHlyLGxpPVtdLGExPVtdLGkxLF9lPVtdLEZlPVtdLE50LG1yPVtdLENyPVtdLE9yLF9yPVtdLG8xPVtdO3ZhciBuMT1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IENlPXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO289W2ooe3R5cGU6T2JqZWN0fSldLGM9W2ooe3R5cGU6U3RyaW5nfSldLHU9W2ooe3R5cGU6U3RyaW5nfSldLGI9W2ooe3R5cGU6TnVtYmVyfSldLHY9W3JlKCldLEY9W3JlKCldLE49W3JlKCldLEI9W3JlKCldLEU9W3JlKCldLFY9W3JlKCldLGFlPVtyZSgpXSxmZT1bcmUoKV0sa2U9W3JlKCldLEQ9W3JlKCldLFk9W3JlKCldLCRlPVtyZSgpXSxpZT1bcmUoKV0sQWU9W3JlKCldLExlPVtyZSgpXSx0ZT1bcmUoKV0sYmU9W3JlKCldLHl0PVtyZSgpXSxPdD1bcmUoKV0sRWU9W3JlKCldLHlyPVtyZSgpXSxpMT1bcmUoKV0sTnQ9W3JlKCldLE9yPVtyZSgpXSxuYSh0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImRhdGFQcm92aWRlciIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6dmU9PiJkYXRhUHJvdmlkZXIiaW4gdmUsZ2V0OnZlPT52ZS5kYXRhUHJvdmlkZXIsc2V0Oih2ZSxIZSk9Pnt2ZS5kYXRhUHJvdmlkZXI9SGV9fSxtZXRhZGF0YTpDZX0sbixzKSxuYSh0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImJ1Y2tldE5hbWUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnZlPT4iYnVja2V0TmFtZSJpbiB2ZSxnZXQ6dmU9PnZlLmJ1Y2tldE5hbWUsc2V0Oih2ZSxIZSk9Pnt2ZS5idWNrZXROYW1lPUhlfX0sbWV0YWRhdGE6Q2V9LGQsZiksbmEodGhpcyxudWxsLHUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJjdXJyZW50UHJlZml4IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp2ZT0+ImN1cnJlbnRQcmVmaXgiaW4gdmUsZ2V0OnZlPT52ZS5jdXJyZW50UHJlZml4LHNldDoodmUsSGUpPT57dmUuY3VycmVudFByZWZpeD1IZX19LG1ldGFkYXRhOkNlfSxwLGgpLG5hKHRoaXMsbnVsbCxiLHtraW5kOiJhY2Nlc3NvciIsbmFtZToicmVmcmVzaEtleSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6dmU9PiJyZWZyZXNoS2V5ImluIHZlLGdldDp2ZT0+dmUucmVmcmVzaEtleSxzZXQ6KHZlLEhlKT0+e3ZlLnJlZnJlc2hLZXk9SGV9fSxtZXRhZGF0YTpDZX0seCxnKSxuYSh0aGlzLG51bGwsdix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImFsbEtleXMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnZlPT4iYWxsS2V5cyJpbiB2ZSxnZXQ6dmU9PnZlLmFsbEtleXMsc2V0Oih2ZSxIZSk9Pnt2ZS5hbGxLZXlzPUhlfX0sbWV0YWRhdGE6Q2V9LHcsTSksbmEodGhpcyxudWxsLEYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJwcmVmaXhlcyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6dmU9PiJwcmVmaXhlcyJpbiB2ZSxnZXQ6dmU9PnZlLnByZWZpeGVzLHNldDoodmUsSGUpPT57dmUucHJlZml4ZXM9SGV9fSxtZXRhZGF0YTpDZX0sQyxrKSxuYSh0aGlzLG51bGwsTix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImxvYWRpbmciLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnZlPT4ibG9hZGluZyJpbiB2ZSxnZXQ6dmU9PnZlLmxvYWRpbmcsc2V0Oih2ZSxIZSk9Pnt2ZS5sb2FkaW5nPUhlfX0sbWV0YWRhdGE6Q2V9LCQsSSksbmEodGhpcyxudWxsLEIse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzZWxlY3RlZEtleSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6dmU9PiJzZWxlY3RlZEtleSJpbiB2ZSxnZXQ6dmU9PnZlLnNlbGVjdGVkS2V5LHNldDoodmUsSGUpPT57dmUuc2VsZWN0ZWRLZXk9SGV9fSxtZXRhZGF0YTpDZX0seix5KSxuYSh0aGlzLG51bGwsRSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImZpbHRlclRleHQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnZlPT4iZmlsdGVyVGV4dCJpbiB2ZSxnZXQ6dmU9PnZlLmZpbHRlclRleHQsc2V0Oih2ZSxIZSk9Pnt2ZS5maWx0ZXJUZXh0PUhlfX0sbWV0YWRhdGE6Q2V9LF8sUCksbmEodGhpcyxudWxsLFYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzaG93Q3JlYXRlRGlhbG9nIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp2ZT0+InNob3dDcmVhdGVEaWFsb2ciaW4gdmUsZ2V0OnZlPT52ZS5zaG93Q3JlYXRlRGlhbG9nLHNldDoodmUsSGUpPT57dmUuc2hvd0NyZWF0ZURpYWxvZz1IZX19LG1ldGFkYXRhOkNlfSxILFcpLG5hKHRoaXMsbnVsbCxhZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImNyZWF0ZURpYWxvZ1R5cGUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnZlPT4iY3JlYXRlRGlhbG9nVHlwZSJpbiB2ZSxnZXQ6dmU9PnZlLmNyZWF0ZURpYWxvZ1R5cGUsc2V0Oih2ZSxIZSk9Pnt2ZS5jcmVhdGVEaWFsb2dUeXBlPUhlfX0sbWV0YWRhdGE6Q2V9LFQsSiksbmEodGhpcyxudWxsLGZlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiY3JlYXRlRGlhbG9nUHJlZml4IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp2ZT0+ImNyZWF0ZURpYWxvZ1ByZWZpeCJpbiB2ZSxnZXQ6dmU9PnZlLmNyZWF0ZURpYWxvZ1ByZWZpeCxzZXQ6KHZlLEhlKT0+e3ZlLmNyZWF0ZURpYWxvZ1ByZWZpeD1IZX19LG1ldGFkYXRhOkNlfSxMLFEpLG5hKHRoaXMsbnVsbCxrZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImNyZWF0ZURpYWxvZ05hbWUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnZlPT4iY3JlYXRlRGlhbG9nTmFtZSJpbiB2ZSxnZXQ6dmU9PnZlLmNyZWF0ZURpYWxvZ05hbWUsc2V0Oih2ZSxIZSk9Pnt2ZS5jcmVhdGVEaWFsb2dOYW1lPUhlfX0sbWV0YWRhdGE6Q2V9LEcsQSksbmEodGhpcyxudWxsLEQse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzaG93TW92ZURpYWxvZyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6dmU9PiJzaG93TW92ZURpYWxvZyJpbiB2ZSxnZXQ6dmU9PnZlLnNob3dNb3ZlRGlhbG9nLHNldDoodmUsSGUpPT57dmUuc2hvd01vdmVEaWFsb2c9SGV9fSxtZXRhZGF0YTpDZX0sUixPKSxuYSh0aGlzLG51bGwsWSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im1vdmVTb3VyY2UiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnZlPT4ibW92ZVNvdXJjZSJpbiB2ZSxnZXQ6dmU9PnZlLm1vdmVTb3VyY2Usc2V0Oih2ZSxIZSk9Pnt2ZS5tb3ZlU291cmNlPUhlfX0sbWV0YWRhdGE6Q2V9LHVlLHllKSxuYSh0aGlzLG51bGwsJGUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJtb3ZlRGVzdGluYXRpb24iLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnZlPT4ibW92ZURlc3RpbmF0aW9uImluIHZlLGdldDp2ZT0+dmUubW92ZURlc3RpbmF0aW9uLHNldDoodmUsSGUpPT57dmUubW92ZURlc3RpbmF0aW9uPUhlfX0sbWV0YWRhdGE6Q2V9LFUscSksbmEodGhpcyxudWxsLGllLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibW92ZUluUHJvZ3Jlc3MiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnZlPT4ibW92ZUluUHJvZ3Jlc3MiaW4gdmUsZ2V0OnZlPT52ZS5tb3ZlSW5Qcm9ncmVzcyxzZXQ6KHZlLEhlKT0+e3ZlLm1vdmVJblByb2dyZXNzPUhlfX0sbWV0YWRhdGE6Q2V9LHdlLGdlKSxuYSh0aGlzLG51bGwsQWUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJtb3ZlRXJyb3IiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnZlPT4ibW92ZUVycm9yImluIHZlLGdldDp2ZT0+dmUubW92ZUVycm9yLHNldDoodmUsSGUpPT57dmUubW92ZUVycm9yPUhlfX0sbWV0YWRhdGE6Q2V9LHhlLG5lKSxuYSh0aGlzLG51bGwsTGUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzaG93TW92ZVBpY2tlckRpYWxvZyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6dmU9PiJzaG93TW92ZVBpY2tlckRpYWxvZyJpbiB2ZSxnZXQ6dmU9PnZlLnNob3dNb3ZlUGlja2VyRGlhbG9nLHNldDoodmUsSGUpPT57dmUuc2hvd01vdmVQaWNrZXJEaWFsb2c9SGV9fSxtZXRhZGF0YTpDZX0sT2UsSmUpLG5hKHRoaXMsbnVsbCx0ZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im1vdmVQaWNrZXJTb3VyY2UiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnZlPT4ibW92ZVBpY2tlclNvdXJjZSJpbiB2ZSxnZXQ6dmU9PnZlLm1vdmVQaWNrZXJTb3VyY2Usc2V0Oih2ZSxIZSk9Pnt2ZS5tb3ZlUGlja2VyU291cmNlPUhlfX0sbWV0YWRhdGE6Q2V9LFosZWUpLG5hKHRoaXMsbnVsbCxiZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im1vdmVQaWNrZXJDdXJyZW50UHJlZml4IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp2ZT0+Im1vdmVQaWNrZXJDdXJyZW50UHJlZml4ImluIHZlLGdldDp2ZT0+dmUubW92ZVBpY2tlckN1cnJlbnRQcmVmaXgsc2V0Oih2ZSxIZSk9Pnt2ZS5tb3ZlUGlja2VyQ3VycmVudFByZWZpeD1IZX19LG1ldGFkYXRhOkNlfSxOZSxLZSksbmEodGhpcyxudWxsLHl0LHtraW5kOiJhY2Nlc3NvciIsbmFtZToibW92ZVBpY2tlclByZWZpeGVzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp2ZT0+Im1vdmVQaWNrZXJQcmVmaXhlcyJpbiB2ZSxnZXQ6dmU9PnZlLm1vdmVQaWNrZXJQcmVmaXhlcyxzZXQ6KHZlLEhlKT0+e3ZlLm1vdmVQaWNrZXJQcmVmaXhlcz1IZX19LG1ldGFkYXRhOkNlfSxudCxMdCksbmEodGhpcyxudWxsLE90LHtraW5kOiJhY2Nlc3NvciIsbmFtZToibW92ZVBpY2tlckxvYWRpbmciLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnZlPT4ibW92ZVBpY2tlckxvYWRpbmciaW4gdmUsZ2V0OnZlPT52ZS5tb3ZlUGlja2VyTG9hZGluZyxzZXQ6KHZlLEhlKT0+e3ZlLm1vdmVQaWNrZXJMb2FkaW5nPUhlfX0sbWV0YWRhdGE6Q2V9LHNlLGRlKSxuYSh0aGlzLG51bGwsRWUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzaG93UmVuYW1lRGlhbG9nIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp2ZT0+InNob3dSZW5hbWVEaWFsb2ciaW4gdmUsZ2V0OnZlPT52ZS5zaG93UmVuYW1lRGlhbG9nLHNldDoodmUsSGUpPT57dmUuc2hvd1JlbmFtZURpYWxvZz1IZX19LG1ldGFkYXRhOkNlfSxndCxrdCksbmEodGhpcyxudWxsLHlyLHtraW5kOiJhY2Nlc3NvciIsbmFtZToicmVuYW1lU291cmNlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp2ZT0+InJlbmFtZVNvdXJjZSJpbiB2ZSxnZXQ6dmU9PnZlLnJlbmFtZVNvdXJjZSxzZXQ6KHZlLEhlKT0+e3ZlLnJlbmFtZVNvdXJjZT1IZX19LG1ldGFkYXRhOkNlfSxsaSxhMSksbmEodGhpcyxudWxsLGkxLHtraW5kOiJhY2Nlc3NvciIsbmFtZToicmVuYW1lTmFtZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6dmU9PiJyZW5hbWVOYW1lImluIHZlLGdldDp2ZT0+dmUucmVuYW1lTmFtZSxzZXQ6KHZlLEhlKT0+e3ZlLnJlbmFtZU5hbWU9SGV9fSxtZXRhZGF0YTpDZX0sX2UsRmUpLG5hKHRoaXMsbnVsbCxOdCx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InJlbmFtZUluUHJvZ3Jlc3MiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnZlPT4icmVuYW1lSW5Qcm9ncmVzcyJpbiB2ZSxnZXQ6dmU9PnZlLnJlbmFtZUluUHJvZ3Jlc3Msc2V0Oih2ZSxIZSk9Pnt2ZS5yZW5hbWVJblByb2dyZXNzPUhlfX0sbWV0YWRhdGE6Q2V9LG1yLENyKSxuYSh0aGlzLG51bGwsT3Ise2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJyZW5hbWVFcnJvciIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6dmU9PiJyZW5hbWVFcnJvciJpbiB2ZSxnZXQ6dmU9PnZlLnJlbmFtZUVycm9yLHNldDoodmUsSGUpPT57dmUucmVuYW1lRXJyb3I9SGV9fSxtZXRhZGF0YTpDZX0sX3IsbzEpLG5hKG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOkNlfSxudWxsLHIpLG4xPWE9dC52YWx1ZSxDZSYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpDZX0pfSNlPXZ0KHRoaXMsbixudWxsKTtnZXQgZGF0YVByb3ZpZGVyKCl7cmV0dXJuIHRoaXMuI2V9c2V0IGRhdGFQcm92aWRlcihDZSl7dGhpcy4jZT1DZX0jdD0odnQodGhpcyxzKSx2dCh0aGlzLGQsIiIpKTtnZXQgYnVja2V0TmFtZSgpe3JldHVybiB0aGlzLiN0fXNldCBidWNrZXROYW1lKENlKXt0aGlzLiN0PUNlfSNyPSh2dCh0aGlzLGYpLHZ0KHRoaXMscCwiIikpO2dldCBjdXJyZW50UHJlZml4KCl7cmV0dXJuIHRoaXMuI3J9c2V0IGN1cnJlbnRQcmVmaXgoQ2Upe3RoaXMuI3I9Q2V9I2E9KHZ0KHRoaXMsaCksdnQodGhpcyx4LDApKTtnZXQgcmVmcmVzaEtleSgpe3JldHVybiB0aGlzLiNhfXNldCByZWZyZXNoS2V5KENlKXt0aGlzLiNhPUNlfSNpPSh2dCh0aGlzLGcpLHZ0KHRoaXMsdyxbXSkpO2dldCBhbGxLZXlzKCl7cmV0dXJuIHRoaXMuI2l9c2V0IGFsbEtleXMoQ2Upe3RoaXMuI2k9Q2V9I289KHZ0KHRoaXMsTSksdnQodGhpcyxDLFtdKSk7Z2V0IHByZWZpeGVzKCl7cmV0dXJuIHRoaXMuI299c2V0IHByZWZpeGVzKENlKXt0aGlzLiNvPUNlfSNuPSh2dCh0aGlzLGspLHZ0KHRoaXMsJCwhMSkpO2dldCBsb2FkaW5nKCl7cmV0dXJuIHRoaXMuI259c2V0IGxvYWRpbmcoQ2Upe3RoaXMuI249Q2V9I3M9KHZ0KHRoaXMsSSksdnQodGhpcyx6LCIiKSk7Z2V0IHNlbGVjdGVkS2V5KCl7cmV0dXJuIHRoaXMuI3N9c2V0IHNlbGVjdGVkS2V5KENlKXt0aGlzLiNzPUNlfSNsPSh2dCh0aGlzLHkpLHZ0KHRoaXMsXywiIikpO2dldCBmaWx0ZXJUZXh0KCl7cmV0dXJuIHRoaXMuI2x9c2V0IGZpbHRlclRleHQoQ2Upe3RoaXMuI2w9Q2V9I2M9KHZ0KHRoaXMsUCksdnQodGhpcyxILCExKSk7Z2V0IHNob3dDcmVhdGVEaWFsb2coKXtyZXR1cm4gdGhpcy4jY31zZXQgc2hvd0NyZWF0ZURpYWxvZyhDZSl7dGhpcy4jYz1DZX0jZD0odnQodGhpcyxXKSx2dCh0aGlzLFQsImZvbGRlciIpKTtnZXQgY3JlYXRlRGlhbG9nVHlwZSgpe3JldHVybiB0aGlzLiNkfXNldCBjcmVhdGVEaWFsb2dUeXBlKENlKXt0aGlzLiNkPUNlfSN1PSh2dCh0aGlzLEopLHZ0KHRoaXMsTCwiIikpO2dldCBjcmVhdGVEaWFsb2dQcmVmaXgoKXtyZXR1cm4gdGhpcy4jdX1zZXQgY3JlYXRlRGlhbG9nUHJlZml4KENlKXt0aGlzLiN1PUNlfSNmPSh2dCh0aGlzLFEpLHZ0KHRoaXMsRywiIikpO2dldCBjcmVhdGVEaWFsb2dOYW1lKCl7cmV0dXJuIHRoaXMuI2Z9c2V0IGNyZWF0ZURpYWxvZ05hbWUoQ2Upe3RoaXMuI2Y9Q2V9I3A9KHZ0KHRoaXMsQSksdnQodGhpcyxSLCExKSk7Z2V0IHNob3dNb3ZlRGlhbG9nKCl7cmV0dXJuIHRoaXMuI3B9c2V0IHNob3dNb3ZlRGlhbG9nKENlKXt0aGlzLiNwPUNlfSNoPSh2dCh0aGlzLE8pLHZ0KHRoaXMsdWUsbnVsbCkpO2dldCBtb3ZlU291cmNlKCl7cmV0dXJuIHRoaXMuI2h9c2V0IG1vdmVTb3VyY2UoQ2Upe3RoaXMuI2g9Q2V9I209KHZ0KHRoaXMseWUpLHZ0KHRoaXMsVSwiIikpO2dldCBtb3ZlRGVzdGluYXRpb24oKXtyZXR1cm4gdGhpcy4jbX1zZXQgbW92ZURlc3RpbmF0aW9uKENlKXt0aGlzLiNtPUNlfSNnPSh2dCh0aGlzLHEpLHZ0KHRoaXMsd2UsITEpKTtnZXQgbW92ZUluUHJvZ3Jlc3MoKXtyZXR1cm4gdGhpcy4jZ31zZXQgbW92ZUluUHJvZ3Jlc3MoQ2Upe3RoaXMuI2c9Q2V9I3g9KHZ0KHRoaXMsZ2UpLHZ0KHRoaXMseGUsbnVsbCkpO2dldCBtb3ZlRXJyb3IoKXtyZXR1cm4gdGhpcy4jeH1zZXQgbW92ZUVycm9yKENlKXt0aGlzLiN4PUNlfSNiPSh2dCh0aGlzLG5lKSx2dCh0aGlzLE9lLCExKSk7Z2V0IHNob3dNb3ZlUGlja2VyRGlhbG9nKCl7cmV0dXJuIHRoaXMuI2J9c2V0IHNob3dNb3ZlUGlja2VyRGlhbG9nKENlKXt0aGlzLiNiPUNlfSN2PSh2dCh0aGlzLEplKSx2dCh0aGlzLFosbnVsbCkpO2dldCBtb3ZlUGlja2VyU291cmNlKCl7cmV0dXJuIHRoaXMuI3Z9c2V0IG1vdmVQaWNrZXJTb3VyY2UoQ2Upe3RoaXMuI3Y9Q2V9I3k9KHZ0KHRoaXMsZWUpLHZ0KHRoaXMsTmUsIiIpKTtnZXQgbW92ZVBpY2tlckN1cnJlbnRQcmVmaXgoKXtyZXR1cm4gdGhpcy4jeX1zZXQgbW92ZVBpY2tlckN1cnJlbnRQcmVmaXgoQ2Upe3RoaXMuI3k9Q2V9I3c9KHZ0KHRoaXMsS2UpLHZ0KHRoaXMsbnQsW10pKTtnZXQgbW92ZVBpY2tlclByZWZpeGVzKCl7cmV0dXJuIHRoaXMuI3d9c2V0IG1vdmVQaWNrZXJQcmVmaXhlcyhDZSl7dGhpcy4jdz1DZX0jTT0odnQodGhpcyxMdCksdnQodGhpcyxzZSwhMSkpO2dldCBtb3ZlUGlja2VyTG9hZGluZygpe3JldHVybiB0aGlzLiNNfXNldCBtb3ZlUGlja2VyTG9hZGluZyhDZSl7dGhpcy4jTT1DZX0jaz0odnQodGhpcyxkZSksdnQodGhpcyxndCwhMSkpO2dldCBzaG93UmVuYW1lRGlhbG9nKCl7cmV0dXJuIHRoaXMuI2t9c2V0IHNob3dSZW5hbWVEaWFsb2coQ2Upe3RoaXMuI2s9Q2V9I1M9KHZ0KHRoaXMsa3QpLHZ0KHRoaXMsbGksbnVsbCkpO2dldCByZW5hbWVTb3VyY2UoKXtyZXR1cm4gdGhpcy4jU31zZXQgcmVuYW1lU291cmNlKENlKXt0aGlzLiNTPUNlfSN6PSh2dCh0aGlzLGExKSx2dCh0aGlzLF9lLCIiKSk7Z2V0IHJlbmFtZU5hbWUoKXtyZXR1cm4gdGhpcy4jen1zZXQgcmVuYW1lTmFtZShDZSl7dGhpcy4jej1DZX0jQz0odnQodGhpcyxGZSksdnQodGhpcyxtciwhMSkpO2dldCByZW5hbWVJblByb2dyZXNzKCl7cmV0dXJuIHRoaXMuI0N9c2V0IHJlbmFtZUluUHJvZ3Jlc3MoQ2Upe3RoaXMuI0M9Q2V9I189KHZ0KHRoaXMsQ3IpLHZ0KHRoaXMsX3IsbnVsbCkpO2dldCByZW5hbWVFcnJvcigpe3JldHVybiB0aGlzLiNffXNldCByZW5hbWVFcnJvcihDZSl7dGhpcy4jXz1DZX1zdGF0aWMgc3R5bGVzPVttLmRlZmF1bHRTdHlsZXMsUGUsbGVgCiAgICAgIDpob3N0IHsKICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgfQoKICAgICAgLmtleXMtY29udGFpbmVyIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICB9CgogICAgICAuZmlsdGVyLWJhciB7CiAgICAgICAgcGFkZGluZzogMTJweDsKICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjMzMzIil9OwogICAgICB9CgogICAgICAuZmlsdGVyLWlucHV0IHsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBwYWRkaW5nOiA4cHggMTJweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgicmdiYSgwLCAwLCAwLCAwLjAzKSIsInJnYmEoMCwgMCwgMCwgMC4zKSIpfTsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2Q0ZDRkOCIsIiM0NDQiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzE4MTgxYiIsIiNmZmYiKX07CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICB9CgogICAgICAuZmlsdGVyLWlucHV0OmZvY3VzIHsKICAgICAgICBvdXRsaW5lOiBub25lOwogICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoIiNhMWExYWEiLCIjNDA0MDQwIil9OwogICAgICB9CgogICAgICAuZmlsdGVyLWlucHV0OjpwbGFjZWhvbGRlciB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjYTFhMWFhIiwiIzY2NiIpfTsKICAgICAgfQoKICAgICAgLmtleXMtbGlzdCB7CiAgICAgICAgZmxleDogMTsKICAgICAgICBvdmVyZmxvdy15OiBhdXRvOwogICAgICB9CgogICAgICB0YWJsZSB7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsKICAgICAgfQoKICAgICAgdGhlYWQgewogICAgICAgIHBvc2l0aW9uOiBzdGlja3k7CiAgICAgICAgdG9wOiAwOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZmFmYWZhIiwiIzFhMWExYSIpfTsKICAgICAgICB6LWluZGV4OiAxOwogICAgICB9CgogICAgICB0aCB7CiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsKICAgICAgICBwYWRkaW5nOiAxMHB4IDEycHg7CiAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiIzY2NiIpfTsKICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwogICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiMzMzMiKX07CiAgICAgIH0KCiAgICAgIHRkIHsKICAgICAgICBwYWRkaW5nOiA4cHggMTJweDsKICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZjRmNGY1IiwiIzJhMmEzZSIpfTsKICAgICAgfQoKICAgICAgdHI6aG92ZXIgdGQgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDAsIDAsIDAsIDAuMDIpIiwicmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAzKSIpfTsKICAgICAgfQoKICAgICAgdHIuc2VsZWN0ZWQgdGQgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDU5LCAxMzAsIDI0NiwgMC4wOCkiLCJyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDgpIil9OwogICAgICB9CgogICAgICAua2V5LWNlbGwgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDhweDsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgIH0KCiAgICAgIC5rZXktaWNvbiB7CiAgICAgICAgd2lkdGg6IDE2cHg7CiAgICAgICAgaGVpZ2h0OiAxNnB4OwogICAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgICB9CgogICAgICAuZm9sZGVyLWljb24gewogICAgICAgIGNvbG9yOiAjZmJiZjI0OwogICAgICB9CgogICAgICAua2V5LW5hbWUgewogICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsKICAgICAgfQoKICAgICAgLnNpemUtY2VsbCB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiIzg4OCIpfTsKICAgICAgICBmb250LXZhcmlhbnQtbnVtZXJpYzogdGFidWxhci1udW1zOwogICAgICB9CgogICAgICAuZW1wdHktc3RhdGUgewogICAgICAgIHBhZGRpbmc6IDMycHg7CiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiI2ExYTFhYSIsIiM2NjYiKX07CiAgICAgIH0KCiAgICAgIC5kaWFsb2ctb3ZlcmxheSB7CiAgICAgICAgcG9zaXRpb246IGZpeGVkOwogICAgICAgIHRvcDogMDsKICAgICAgICBsZWZ0OiAwOwogICAgICAgIHJpZ2h0OiAwOwogICAgICAgIGJvdHRvbTogMDsKICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNyk7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIHotaW5kZXg6IDEwMDA7CiAgICAgIH0KCiAgICAgIC5kaWFsb2cgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZmZmZmZmIiwiIzFlMWUxZSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4OwogICAgICAgIHBhZGRpbmc6IDI0cHg7CiAgICAgICAgbWluLXdpZHRoOiA0MDBweDsKICAgICAgICBib3gtc2hhZG93OiAwIDIwcHggNDBweCByZ2JhKDAsIDAsIDAsIDAuNSk7CiAgICAgIH0KCiAgICAgIC5kaWFsb2ctdGl0bGUgewogICAgICAgIGZvbnQtc2l6ZTogMThweDsKICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMTgxODFiIiwiI2ZmZiIpfTsKICAgICAgfQoKICAgICAgLmRpYWxvZy1sb2NhdGlvbiB7CiAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzcxNzE3YSIsIiM4ODgiKX07CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDsKICAgICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlOwogICAgICB9CgogICAgICAuZGlhbG9nLWlucHV0IHsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBwYWRkaW5nOiAxMHB4IDEycHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmNGY0ZjUiLCIjMTQxNDE0Iil9OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZDRkNGQ4IiwiIzMzMyIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMTgxODFiIiwiI2ZmZiIpfTsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4OwogICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgIH0KCiAgICAgIC5kaWFsb2ctaW5wdXQ6Zm9jdXMgewogICAgICAgIG91dGxpbmU6IG5vbmU7CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiI2ExYTFhYSIsIiNlMGUwZTAiKX07CiAgICAgIH0KCiAgICAgIC5kaWFsb2ctaGludCB7CiAgICAgICAgZm9udC1zaXplOiAxMXB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiI2ExYTFhYSIsIiM2NjYiKX07CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDsKICAgICAgfQoKICAgICAgLmRpYWxvZy1hY3Rpb25zIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGdhcDogMTJweDsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOwogICAgICB9CgogICAgICAuZGlhbG9nLWJ0biB7CiAgICAgICAgcGFkZGluZzogOHB4IDE2cHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnM7CiAgICAgIH0KCiAgICAgIC5kaWFsb2ctYnRuLWNhbmNlbCB7CiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNkNGQ0ZDgiLCIjNDQ0Iil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzcxNzE3YSIsIiNhYWEiKX07CiAgICAgIH0KCiAgICAgIC5kaWFsb2ctYnRuLWNhbmNlbDpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoMCwgMCwgMCwgMC4wMykiLCJyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzE4MTgxYiIsIiNmZmYiKX07CiAgICAgIH0KCiAgICAgIC5kaWFsb2ctYnRuLWNyZWF0ZSB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjNDA0MDQwIil9OwogICAgICAgIGJvcmRlcjogbm9uZTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMxODE4MWIiLCIjZmZmIil9OwogICAgICB9CgogICAgICAuZGlhbG9nLWJ0bi1jcmVhdGU6aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZDRkNGQ4IiwiIzUwNTA1MCIpfTsKICAgICAgfQoKICAgICAgLmRpYWxvZy1idG4tY3JlYXRlOmRpc2FibGVkIHsKICAgICAgICBvcGFjaXR5OiAwLjU7CiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsKICAgICAgfQoKICAgICAgLyogTW92ZSBkaWFsb2cgc3R5bGVzICovCiAgICAgIC5tb3ZlLXN1bW1hcnkgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDAsIDAsIDAsIDAuMDMpIiwicmdiYSgwLCAwLCAwLCAwLjIpIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgICBwYWRkaW5nOiAxNnB4OwogICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7CiAgICAgIH0KCiAgICAgIC5tb3ZlLWl0ZW0gewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZ2FwOiA4cHg7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4OwogICAgICB9CgogICAgICAubW92ZS1pdGVtOmxhc3QtY2hpbGQgewogICAgICAgIG1hcmdpbi1ib3R0b206IDA7CiAgICAgIH0KCiAgICAgIC5tb3ZlLWxhYmVsIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM3MTcxN2EiLCIjODg4Iil9OwogICAgICAgIG1pbi13aWR0aDogNDBweDsKICAgICAgfQoKICAgICAgLm1vdmUtcGF0aCB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjM2YzZjQ2IiwiI2UwZTBlMCIpfTsKICAgICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlOwogICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7CiAgICAgIH0KCiAgICAgIC5tb3ZlLWVycm9yIHsKICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIzOSwgNjgsIDY4LCAwLjE1KTsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDIzOSwgNjgsIDY4LCAwLjMpOwogICAgICAgIGNvbG9yOiAjZjg3MTcxOwogICAgICAgIHBhZGRpbmc6IDEycHggMTZweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDsKICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgIH0KCiAgICAgIC8qIE1vdmUgcGlja2VyIGRpYWxvZyBzdHlsZXMgKi8KICAgICAgLm1vdmUtcGlja2VyLWRpYWxvZyB7CiAgICAgICAgbWluLXdpZHRoOiA0NTBweDsKICAgICAgICBtYXgtaGVpZ2h0OiA1MDBweDsKICAgICAgfQoKICAgICAgLnBpY2tlci1icmVhZGNydW1iIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgZ2FwOiA0cHg7CiAgICAgICAgcGFkZGluZzogOHB4IDEycHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoMCwgMCwgMCwgMC4wMykiLCJyZ2JhKDAsIDAsIDAsIDAuMikiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7CiAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgIG92ZXJmbG93LXg6IGF1dG87CiAgICAgIH0KCiAgICAgIC5waWNrZXItY3J1bWIgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzcxNzE3YSIsIiM4ODgiKX07CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgICAgIH0KCiAgICAgIC5waWNrZXItY3J1bWI6aG92ZXIgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzE4MTgxYiIsIiNmZmYiKX07CiAgICAgIH0KCiAgICAgIC5waWNrZXItc2VwYXJhdG9yIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiNkNGQ0ZDgiLCIjNTU1Iil9OwogICAgICB9CgogICAgICAucGlja2VyLWxpc3QgewogICAgICAgIG1heC1oZWlnaHQ6IDI4MHB4OwogICAgICAgIG92ZXJmbG93LXk6IGF1dG87CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjMzMzIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4OwogICAgICAgIG1pbi1oZWlnaHQ6IDEwMHB4OwogICAgICB9CgogICAgICAucGlja2VyLWl0ZW0gewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDhweDsKICAgICAgICBwYWRkaW5nOiA4cHggMTJweDsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgY29sb3I6ICNmYmJmMjQ7CiAgICAgIH0KCiAgICAgIC5waWNrZXItaXRlbTpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoMCwgMCwgMCwgMC4wMykiLCJyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpIil9OwogICAgICB9CgogICAgICAucGlja2VyLWl0ZW0gLmljb24gewogICAgICAgIHdpZHRoOiAxNnB4OwogICAgICAgIGhlaWdodDogMTZweDsKICAgICAgICBmbGV4LXNocmluazogMDsKICAgICAgfQoKICAgICAgLnBpY2tlci1pdGVtIC5uYW1lIHsKICAgICAgICBmbGV4OiAxOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7CiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKICAgICAgfQoKICAgICAgLnBpY2tlci1lbXB0eSB7CiAgICAgICAgcGFkZGluZzogMjRweDsKICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjYTFhMWFhIiwiIzY2NiIpfTsKICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgIH0KICAgIGBdO2FzeW5jIGNvbm5lY3RlZENhbGxiYWNrKCl7c3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKSxhd2FpdCB0aGlzLmxvYWRPYmplY3RzKCl9dXBkYXRlZChDZSl7KENlLmhhcygiYnVja2V0TmFtZSIpfHxDZS5oYXMoImN1cnJlbnRQcmVmaXgiKXx8Q2UuaGFzKCJyZWZyZXNoS2V5IikpJiZ0aGlzLmxvYWRPYmplY3RzKCl9YXN5bmMgbG9hZE9iamVjdHMoKXtpZih0aGlzLmRhdGFQcm92aWRlcil7dGhpcy5sb2FkaW5nPSEwO3RyeXtsZXQgQ2U9YXdhaXQgdGhpcy5kYXRhUHJvdmlkZXIubGlzdE9iamVjdHModGhpcy5idWNrZXROYW1lLHRoaXMuY3VycmVudFByZWZpeCwiLyIpO3RoaXMuYWxsS2V5cz1DZS5vYmplY3RzLHRoaXMucHJlZml4ZXM9Q2UucHJlZml4ZXN9Y2F0Y2goQ2Upe2NvbnNvbGUuZXJyb3IoIkVycm9yIGxvYWRpbmcgb2JqZWN0czoiLENlKSx0aGlzLmFsbEtleXM9W10sdGhpcy5wcmVmaXhlcz1bXX10aGlzLmxvYWRpbmc9ITF9fWhhbmRsZUZpbHRlcklucHV0KENlKXt0aGlzLmZpbHRlclRleHQ9Q2UudGFyZ2V0LnZhbHVlfXNlbGVjdEtleShDZSx2ZSl7dGhpcy5zZWxlY3RlZEtleT1DZSx2ZT90aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJuYXZpZ2F0ZSIse2RldGFpbDp7cHJlZml4OkNlfSxidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpOnRoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoImtleS1zZWxlY3RlZCIse2RldGFpbDp7a2V5OkNlfSxidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpfWdldCBmaWx0ZXJlZEl0ZW1zKCl7bGV0IENlPXRoaXMuZmlsdGVyVGV4dC50b0xvd2VyQ2FzZSgpLHZlPXRoaXMucHJlZml4ZXMuZmlsdGVyKFRlPT4hQ2V8fGRyKFRlKS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKENlKSkubWFwKFRlPT4oe2tleTpUZSxpc0ZvbGRlcjohMCxzaXplOnZvaWQgMH0pKSxIZT10aGlzLmFsbEtleXMuZmlsdGVyKFRlPT4hQ2V8fGRyKFRlLmtleSkudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhDZSkpLm1hcChUZT0+KHtrZXk6VGUua2V5LGlzRm9sZGVyOiExLHNpemU6VGUuc2l6ZX0pKTtyZXR1cm5bLi4udmUsLi4uSGVdfWhhbmRsZUl0ZW1Db250ZXh0TWVudShDZSx2ZSxIZSl7dGhpcy5kYXRhUHJvdmlkZXImJihDZS5wcmV2ZW50RGVmYXVsdCgpLEhlP3RyLm9wZW5Db250ZXh0TWVudVdpdGhPcHRpb25zKENlLFt7bmFtZToiT3BlbiIsaWNvbk5hbWU6Imx1Y2lkZTpmb2xkZXJPcGVuIixhY3Rpb246YXN5bmMoKT0+e3RoaXMuc2VsZWN0S2V5KHZlLCEwKX19LHtuYW1lOiJDb3B5IFBhdGgiLGljb25OYW1lOiJsdWNpZGU6Y29weSIsYWN0aW9uOmFzeW5jKCk9Pnthd2FpdCBuYXZpZ2F0b3IuY2xpcGJvYXJkLndyaXRlVGV4dCh2ZSl9fSx7bmFtZToiUmVuYW1lIixpY29uTmFtZToibHVjaWRlOnBlbmNpbCIsYWN0aW9uOmFzeW5jKCk9PnRoaXMub3BlblJlbmFtZURpYWxvZyh2ZSwhMCl9LHtkaXZpZGVyOiEwfSx7bmFtZToiTW92ZSB0by4uLiIsaWNvbk5hbWU6Imx1Y2lkZTpmb2xkZXJJbnB1dCIsYWN0aW9uOmFzeW5jKCk9PnRoaXMub3Blbk1vdmVQaWNrZXJEaWFsb2codmUsITApfSx7ZGl2aWRlcjohMH0se25hbWU6Ik5ldyBGb2xkZXIgSW5zaWRlIixpY29uTmFtZToibHVjaWRlOmZvbGRlclBsdXMiLGFjdGlvbjphc3luYygpPT50aGlzLm9wZW5DcmVhdGVEaWFsb2coImZvbGRlciIsdmUpfSx7bmFtZToiTmV3IEZpbGUgSW5zaWRlIixpY29uTmFtZToibHVjaWRlOmZpbGVQbHVzIixhY3Rpb246YXN5bmMoKT0+dGhpcy5vcGVuQ3JlYXRlRGlhbG9nKCJmaWxlIix2ZSl9LHtkaXZpZGVyOiEwfSx7bmFtZToiRGVsZXRlIEZvbGRlciIsaWNvbk5hbWU6Imx1Y2lkZTp0cmFzaDIiLGFjdGlvbjphc3luYygpPT57Y29uZmlybShgRGVsZXRlIGZvbGRlciAiJHtkcih2ZSl9IiBhbmQgYWxsIGl0cyBjb250ZW50cz9gKSYmYXdhaXQgdGhpcy5kYXRhUHJvdmlkZXIuZGVsZXRlUHJlZml4KHRoaXMuYnVja2V0TmFtZSx2ZSkmJmF3YWl0IHRoaXMubG9hZE9iamVjdHMoKX19XSk6dHIub3BlbkNvbnRleHRNZW51V2l0aE9wdGlvbnMoQ2UsW3tuYW1lOiJQcmV2aWV3IixpY29uTmFtZToibHVjaWRlOmV5ZSIsYWN0aW9uOmFzeW5jKCk9Pnt0aGlzLnNlbGVjdEtleSh2ZSwhMSl9fSx7bmFtZToiRG93bmxvYWQiLGljb25OYW1lOiJsdWNpZGU6ZG93bmxvYWQiLGFjdGlvbjphc3luYygpPT57bGV0IFRlPWF3YWl0IHRoaXMuZGF0YVByb3ZpZGVyLmdldE9iamVjdFVybCh0aGlzLmJ1Y2tldE5hbWUsdmUpLHBlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImEiKTtwZS5ocmVmPVRlLHBlLmRvd25sb2FkPWRyKHZlKSxwZS5jbGljaygpfX0se25hbWU6IkNvcHkgUGF0aCIsaWNvbk5hbWU6Imx1Y2lkZTpjb3B5IixhY3Rpb246YXN5bmMoKT0+e2F3YWl0IG5hdmlnYXRvci5jbGlwYm9hcmQud3JpdGVUZXh0KHZlKX19LHtuYW1lOiJSZW5hbWUiLGljb25OYW1lOiJsdWNpZGU6cGVuY2lsIixhY3Rpb246YXN5bmMoKT0+dGhpcy5vcGVuUmVuYW1lRGlhbG9nKHZlLCExKX0se2RpdmlkZXI6ITB9LHtuYW1lOiJNb3ZlIHRvLi4uIixpY29uTmFtZToibHVjaWRlOmZvbGRlcklucHV0IixhY3Rpb246YXN5bmMoKT0+dGhpcy5vcGVuTW92ZVBpY2tlckRpYWxvZyh2ZSwhMSl9LHtkaXZpZGVyOiEwfSx7bmFtZToiRGVsZXRlIixpY29uTmFtZToibHVjaWRlOnRyYXNoMiIsYWN0aW9uOmFzeW5jKCk9Pntjb25maXJtKGBEZWxldGUgZmlsZSAiJHtkcih2ZSl9Ij9gKSYmYXdhaXQgdGhpcy5kYXRhUHJvdmlkZXIuZGVsZXRlT2JqZWN0KHRoaXMuYnVja2V0TmFtZSx2ZSkmJmF3YWl0IHRoaXMubG9hZE9iamVjdHMoKX19XSkpfWhhbmRsZUVtcHR5U3BhY2VDb250ZXh0TWVudShDZSl7Q2UudGFyZ2V0LmNsb3Nlc3QoInRyIil8fChDZS5wcmV2ZW50RGVmYXVsdCgpLHRyLm9wZW5Db250ZXh0TWVudVdpdGhPcHRpb25zKENlLFt7bmFtZToiTmV3IEZvbGRlciIsaWNvbk5hbWU6Imx1Y2lkZTpmb2xkZXJQbHVzIixhY3Rpb246YXN5bmMoKT0+dGhpcy5vcGVuQ3JlYXRlRGlhbG9nKCJmb2xkZXIiLHRoaXMuY3VycmVudFByZWZpeCl9LHtuYW1lOiJOZXcgRmlsZSIsaWNvbk5hbWU6Imx1Y2lkZTpmaWxlUGx1cyIsYWN0aW9uOmFzeW5jKCk9PnRoaXMub3BlbkNyZWF0ZURpYWxvZygiZmlsZSIsdGhpcy5jdXJyZW50UHJlZml4KX1dKSl9b3BlbkNyZWF0ZURpYWxvZyhDZSx2ZSl7dGhpcy5jcmVhdGVEaWFsb2dUeXBlPUNlLHRoaXMuY3JlYXRlRGlhbG9nUHJlZml4PXZlLHRoaXMuY3JlYXRlRGlhbG9nTmFtZT0iIix0aGlzLnNob3dDcmVhdGVEaWFsb2c9ITB9YXN5bmMgaGFuZGxlQ3JlYXRlKCl7aWYoIXRoaXMuY3JlYXRlRGlhbG9nTmFtZS50cmltKCl8fCF0aGlzLmRhdGFQcm92aWRlcilyZXR1cm47bGV0IENlPXRoaXMuY3JlYXRlRGlhbG9nTmFtZS50cmltKCksdmU7dGhpcy5jcmVhdGVEaWFsb2dUeXBlPT09ImZvbGRlciI/dmU9dGhpcy5jcmVhdGVEaWFsb2dQcmVmaXgrQ2UrIi8ua2VlcCI6dmU9dGhpcy5jcmVhdGVEaWFsb2dQcmVmaXgrQ2U7bGV0IEhlPUNlLnNwbGl0KCIuIikucG9wKCk/LnRvTG93ZXJDYXNlKCl8fCIiLFRlPXRoaXMuY3JlYXRlRGlhbG9nVHlwZT09PSJmaWxlIj9oMyhIZSk6ImFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbSIscGU9dGhpcy5jcmVhdGVEaWFsb2dUeXBlPT09ImZpbGUiP0s5KEhlKToiIjthd2FpdCB0aGlzLmRhdGFQcm92aWRlci5wdXRPYmplY3QodGhpcy5idWNrZXROYW1lLHZlLGJ0b2EocGUpLFRlKSYmKHRoaXMuc2hvd0NyZWF0ZURpYWxvZz0hMSxhd2FpdCB0aGlzLmxvYWRPYmplY3RzKCkpfXJlbmRlckNyZWF0ZURpYWxvZygpe2lmKCF0aGlzLnNob3dDcmVhdGVEaWFsb2cpcmV0dXJuIiI7bGV0IENlPXRoaXMuY3JlYXRlRGlhbG9nVHlwZT09PSJmb2xkZXIiLHZlPUNlPyJDcmVhdGUgTmV3IEZvbGRlciI6IkNyZWF0ZSBOZXcgRmlsZSIsSGU9Q2U/ImZvbGRlci1uYW1lIG9yIHBhdGgvdG8vZm9sZGVyIjoiZmlsZW5hbWUudHh0IG9yIHBhdGgvdG8vZmlsZS50eHQiO3JldHVybiBTYAogICAgICA8ZGl2IGNsYXNzPSJkaWFsb2ctb3ZlcmxheSIgQGNsaWNrPSR7KCk9PnRoaXMuc2hvd0NyZWF0ZURpYWxvZz0hMX0+CiAgICAgICAgPGRpdiBjbGFzcz0iZGlhbG9nIiBAY2xpY2s9JHtUZT0+VGUuc3RvcFByb3BhZ2F0aW9uKCl9PgogICAgICAgICAgPGRpdiBjbGFzcz0iZGlhbG9nLXRpdGxlIj4ke3ZlfTwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0iZGlhbG9nLWxvY2F0aW9uIj4KICAgICAgICAgICAgTG9jYXRpb246ICR7dGhpcy5idWNrZXROYW1lfS8ke3RoaXMuY3JlYXRlRGlhbG9nUHJlZml4fQogICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8aW5wdXQKICAgICAgICAgICAgdHlwZT0idGV4dCIKICAgICAgICAgICAgY2xhc3M9ImRpYWxvZy1pbnB1dCIKICAgICAgICAgICAgcGxhY2Vob2xkZXI9JHtIZX0KICAgICAgICAgICAgLnZhbHVlPSR7dGhpcy5jcmVhdGVEaWFsb2dOYW1lfQogICAgICAgICAgICBAaW5wdXQ9JHtUZT0+dGhpcy5jcmVhdGVEaWFsb2dOYW1lPVRlLnRhcmdldC52YWx1ZX0KICAgICAgICAgICAgQGtleWRvd249JHtUZT0+VGUua2V5PT09IkVudGVyIiYmdGhpcy5oYW5kbGVDcmVhdGUoKX0KICAgICAgICAgIC8+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJkaWFsb2ctaGludCI+CiAgICAgICAgICAgIFVzZSAiLyIgdG8gY3JlYXRlIG5lc3RlZCAke0NlPyJmb2xkZXJzIjoicGF0aCJ9IChlLmcuLCAke0NlPyJwYXJlbnQvY2hpbGQiOiJmb2xkZXIvZmlsZS50eHQifSkKICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0iZGlhbG9nLWFjdGlvbnMiPgogICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJkaWFsb2ctYnRuIGRpYWxvZy1idG4tY2FuY2VsIiBAY2xpY2s9JHsoKT0+dGhpcy5zaG93Q3JlYXRlRGlhbG9nPSExfT4KICAgICAgICAgICAgICBDYW5jZWwKICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgIDxidXR0b24KICAgICAgICAgICAgICBjbGFzcz0iZGlhbG9nLWJ0biBkaWFsb2ctYnRuLWNyZWF0ZSIKICAgICAgICAgICAgICA/ZGlzYWJsZWQ9JHshdGhpcy5jcmVhdGVEaWFsb2dOYW1lLnRyaW0oKX0KICAgICAgICAgICAgICBAY2xpY2s9JHsoKT0+dGhpcy5oYW5kbGVDcmVhdGUoKX0KICAgICAgICAgICAgPgogICAgICAgICAgICAgIENyZWF0ZQogICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIGB9YXN5bmMgb3Blbk1vdmVQaWNrZXJEaWFsb2coQ2UsdmUpe3RoaXMubW92ZVBpY2tlclNvdXJjZT17a2V5OkNlLGlzRm9sZGVyOnZlfSx0aGlzLm1vdmVQaWNrZXJDdXJyZW50UHJlZml4PSIiLHRoaXMuc2hvd01vdmVQaWNrZXJEaWFsb2c9ITAsYXdhaXQgdGhpcy5sb2FkTW92ZVBpY2tlclByZWZpeGVzKCIiKX1hc3luYyBuYXZpZ2F0ZU1vdmVQaWNrZXIoQ2Upe3RoaXMubW92ZVBpY2tlckN1cnJlbnRQcmVmaXg9Q2UsYXdhaXQgdGhpcy5sb2FkTW92ZVBpY2tlclByZWZpeGVzKENlKX1hc3luYyBsb2FkTW92ZVBpY2tlclByZWZpeGVzKENlKXtpZih0aGlzLmRhdGFQcm92aWRlcil7dGhpcy5tb3ZlUGlja2VyTG9hZGluZz0hMDt0cnl7bGV0IHZlPWF3YWl0IHRoaXMuZGF0YVByb3ZpZGVyLmxpc3RPYmplY3RzKHRoaXMuYnVja2V0TmFtZSxDZSwiLyIpO3RoaXMubW92ZVBpY2tlclByZWZpeGVzPXZlLnByZWZpeGVzfWNhdGNoe3RoaXMubW92ZVBpY2tlclByZWZpeGVzPVtdfXRoaXMubW92ZVBpY2tlckxvYWRpbmc9ITF9fXNlbGVjdE1vdmVEZXN0aW5hdGlvbihDZSl7dGhpcy5tb3ZlUGlja2VyU291cmNlJiYodGhpcy5jbG9zZU1vdmVQaWNrZXJEaWFsb2coKSx0aGlzLmluaXRpYXRlTW92ZSh0aGlzLm1vdmVQaWNrZXJTb3VyY2Uua2V5LHRoaXMubW92ZVBpY2tlclNvdXJjZS5pc0ZvbGRlcixDZSkpfWNsb3NlTW92ZVBpY2tlckRpYWxvZygpe3RoaXMuc2hvd01vdmVQaWNrZXJEaWFsb2c9ITEsdGhpcy5tb3ZlUGlja2VyU291cmNlPW51bGwsdGhpcy5tb3ZlUGlja2VyQ3VycmVudFByZWZpeD0iIix0aGlzLm1vdmVQaWNrZXJQcmVmaXhlcz1bXX1pbml0aWF0ZU1vdmUoQ2UsdmUsSGUpe2xldCBUZT1ROShDZSxIZSk7aWYoIVRlLnZhbGlkKXt0aGlzLm1vdmVTb3VyY2U9e2tleTpDZSxpc0ZvbGRlcjp2ZX0sdGhpcy5tb3ZlRGVzdGluYXRpb249SGUsdGhpcy5tb3ZlRXJyb3I9VGUuZXJyb3IsdGhpcy5zaG93TW92ZURpYWxvZz0hMDtyZXR1cm59dGhpcy5tb3ZlU291cmNlPXtrZXk6Q2UsaXNGb2xkZXI6dmV9LHRoaXMubW92ZURlc3RpbmF0aW9uPUhlLHRoaXMubW92ZUVycm9yPW51bGwsdGhpcy5zaG93TW92ZURpYWxvZz0hMH1hc3luYyBleGVjdXRlTW92ZSgpe2lmKCEoIXRoaXMubW92ZVNvdXJjZXx8IXRoaXMuZGF0YVByb3ZpZGVyKSl7dGhpcy5tb3ZlSW5Qcm9ncmVzcz0hMDt0cnl7bGV0IENlPWRyKHRoaXMubW92ZVNvdXJjZS5rZXkpLHZlPXRoaXMubW92ZURlc3RpbmF0aW9uK0NlLEhlO3RoaXMubW92ZVNvdXJjZS5pc0ZvbGRlcj9IZT1hd2FpdCB0aGlzLmRhdGFQcm92aWRlci5tb3ZlUHJlZml4KHRoaXMuYnVja2V0TmFtZSx0aGlzLm1vdmVTb3VyY2Uua2V5LHZlKTpIZT1hd2FpdCB0aGlzLmRhdGFQcm92aWRlci5tb3ZlT2JqZWN0KHRoaXMuYnVja2V0TmFtZSx0aGlzLm1vdmVTb3VyY2Uua2V5LHZlKSxIZS5zdWNjZXNzPyh0aGlzLmNsb3NlTW92ZURpYWxvZygpLGF3YWl0IHRoaXMubG9hZE9iamVjdHMoKSk6dGhpcy5tb3ZlRXJyb3I9SGUuZXJyb3J8fCJNb3ZlIG9wZXJhdGlvbiBmYWlsZWQifWNhdGNoKENlKXt0aGlzLm1vdmVFcnJvcj1gRXJyb3I6ICR7Q2V9YH10aGlzLm1vdmVJblByb2dyZXNzPSExfX1jbG9zZU1vdmVEaWFsb2coKXt0aGlzLnNob3dNb3ZlRGlhbG9nPSExLHRoaXMubW92ZVNvdXJjZT1udWxsLHRoaXMubW92ZURlc3RpbmF0aW9uPSIiLHRoaXMubW92ZUVycm9yPW51bGwsdGhpcy5tb3ZlSW5Qcm9ncmVzcz0hMX1vcGVuUmVuYW1lRGlhbG9nKENlLHZlKXt0aGlzLnJlbmFtZVNvdXJjZT17a2V5OkNlLGlzRm9sZGVyOnZlfSx0aGlzLnJlbmFtZU5hbWU9ZHIoQ2UpLHRoaXMucmVuYW1lRXJyb3I9bnVsbCx0aGlzLnNob3dSZW5hbWVEaWFsb2c9ITAsdGhpcy51cGRhdGVDb21wbGV0ZS50aGVuKCgpPT57bGV0IEhlPXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiLnJlbmFtZS1kaWFsb2ctaW5wdXQiKTtpZihIZSlpZihIZS5mb2N1cygpLHZlKUhlLnNlbGVjdCgpO2Vsc2V7bGV0IFRlPXRoaXMucmVuYW1lTmFtZS5sYXN0SW5kZXhPZigiLiIpO1RlPjA/SGUuc2V0U2VsZWN0aW9uUmFuZ2UoMCxUZSk6SGUuc2VsZWN0KCl9fSl9YXN5bmMgZXhlY3V0ZVJlbmFtZSgpe2lmKCF0aGlzLnJlbmFtZVNvdXJjZXx8IXRoaXMucmVuYW1lTmFtZS50cmltKCl8fCF0aGlzLmRhdGFQcm92aWRlcilyZXR1cm47bGV0IENlPXRoaXMucmVuYW1lTmFtZS50cmltKCksdmU9ZHIodGhpcy5yZW5hbWVTb3VyY2Uua2V5KTtpZihDZT09PXZlKXt0aGlzLnJlbmFtZUVycm9yPSJOYW1lIGlzIHRoZSBzYW1lIGFzIGN1cnJlbnQiO3JldHVybn1pZighQ2Upe3RoaXMucmVuYW1lRXJyb3I9Ik5hbWUgY2Fubm90IGJlIGVtcHR5IjtyZXR1cm59aWYoQ2UuaW5jbHVkZXMoIi8iKSl7dGhpcy5yZW5hbWVFcnJvcj0nTmFtZSBjYW5ub3QgY29udGFpbiAiLyInO3JldHVybn10aGlzLnJlbmFtZUluUHJvZ3Jlc3M9ITAsdGhpcy5yZW5hbWVFcnJvcj1udWxsO3RyeXtsZXQgVGU9anModGhpcy5yZW5hbWVTb3VyY2Uua2V5KStDZSsodGhpcy5yZW5hbWVTb3VyY2UuaXNGb2xkZXI/Ii8iOiIiKSxwZTt0aGlzLnJlbmFtZVNvdXJjZS5pc0ZvbGRlcj9wZT1hd2FpdCB0aGlzLmRhdGFQcm92aWRlci5tb3ZlUHJlZml4KHRoaXMuYnVja2V0TmFtZSx0aGlzLnJlbmFtZVNvdXJjZS5rZXksVGUpOnBlPWF3YWl0IHRoaXMuZGF0YVByb3ZpZGVyLm1vdmVPYmplY3QodGhpcy5idWNrZXROYW1lLHRoaXMucmVuYW1lU291cmNlLmtleSxUZSkscGUuc3VjY2Vzcz8odGhpcy5jbG9zZVJlbmFtZURpYWxvZygpLGF3YWl0IHRoaXMubG9hZE9iamVjdHMoKSk6dGhpcy5yZW5hbWVFcnJvcj1wZS5lcnJvcnx8IlJlbmFtZSBmYWlsZWQifWNhdGNoKEhlKXt0aGlzLnJlbmFtZUVycm9yPWBFcnJvcjogJHtIZX1gfXRoaXMucmVuYW1lSW5Qcm9ncmVzcz0hMX1jbG9zZVJlbmFtZURpYWxvZygpe3RoaXMuc2hvd1JlbmFtZURpYWxvZz0hMSx0aGlzLnJlbmFtZVNvdXJjZT1udWxsLHRoaXMucmVuYW1lTmFtZT0iIix0aGlzLnJlbmFtZUVycm9yPW51bGwsdGhpcy5yZW5hbWVJblByb2dyZXNzPSExfXJlbmRlclJlbmFtZURpYWxvZygpe2lmKCF0aGlzLnNob3dSZW5hbWVEaWFsb2d8fCF0aGlzLnJlbmFtZVNvdXJjZSlyZXR1cm4iIjtsZXQgQ2U9dGhpcy5yZW5hbWVTb3VyY2UuaXNGb2xkZXI7cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9ImRpYWxvZy1vdmVybGF5IiBAY2xpY2s9JHsoKT0+dGhpcy5jbG9zZVJlbmFtZURpYWxvZygpfT4KICAgICAgICA8ZGl2IGNsYXNzPSJkaWFsb2ciIEBjbGljaz0ke0hlPT5IZS5zdG9wUHJvcGFnYXRpb24oKX0+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJkaWFsb2ctdGl0bGUiPiR7Q2U/IlJlbmFtZSBGb2xkZXIiOiJSZW5hbWUgRmlsZSJ9PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJkaWFsb2ctbG9jYXRpb24iPgogICAgICAgICAgICBMb2NhdGlvbjogJHt0aGlzLmJ1Y2tldE5hbWV9LyR7anModGhpcy5yZW5hbWVTb3VyY2Uua2V5KX0KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgJHt0aGlzLnJlbmFtZUVycm9yP1NgPGRpdiBjbGFzcz0ibW92ZS1lcnJvciI+JHt0aGlzLnJlbmFtZUVycm9yfTwvZGl2PmA6IiJ9CiAgICAgICAgICA8aW5wdXQKICAgICAgICAgICAgdHlwZT0idGV4dCIKICAgICAgICAgICAgY2xhc3M9ImRpYWxvZy1pbnB1dCByZW5hbWUtZGlhbG9nLWlucHV0IgogICAgICAgICAgICBwbGFjZWhvbGRlcj0ke0NlPyJmb2xkZXItbmFtZSI6ImZpbGVuYW1lLmV4dCJ9CiAgICAgICAgICAgIC52YWx1ZT0ke3RoaXMucmVuYW1lTmFtZX0KICAgICAgICAgICAgQGlucHV0PSR7SGU9Pnt0aGlzLnJlbmFtZU5hbWU9SGUudGFyZ2V0LnZhbHVlLHRoaXMucmVuYW1lRXJyb3I9bnVsbH19CiAgICAgICAgICAgIEBrZXlkb3duPSR7SGU9PntIZS5rZXk9PT0iRW50ZXIiJiZ0aGlzLmV4ZWN1dGVSZW5hbWUoKSxIZS5rZXk9PT0iRXNjYXBlIiYmdGhpcy5jbG9zZVJlbmFtZURpYWxvZygpfX0KICAgICAgICAgIC8+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJkaWFsb2ctYWN0aW9ucyI+CiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImRpYWxvZy1idG4gZGlhbG9nLWJ0bi1jYW5jZWwiCiAgICAgICAgICAgICAgICAgICAgQGNsaWNrPSR7KCk9PnRoaXMuY2xvc2VSZW5hbWVEaWFsb2coKX0KICAgICAgICAgICAgICAgICAgICA/ZGlzYWJsZWQ9JHt0aGlzLnJlbmFtZUluUHJvZ3Jlc3N9PkNhbmNlbDwvYnV0dG9uPgogICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJkaWFsb2ctYnRuIGRpYWxvZy1idG4tY3JlYXRlIgogICAgICAgICAgICAgICAgICAgIEBjbGljaz0keygpPT50aGlzLmV4ZWN1dGVSZW5hbWUoKX0KICAgICAgICAgICAgICAgICAgICA/ZGlzYWJsZWQ9JHt0aGlzLnJlbmFtZUluUHJvZ3Jlc3N8fCF0aGlzLnJlbmFtZU5hbWUudHJpbSgpfT4KICAgICAgICAgICAgICAke3RoaXMucmVuYW1lSW5Qcm9ncmVzcz8iUmVuYW1pbmcuLi4iOiJSZW5hbWUifQogICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIGB9cmVuZGVyTW92ZURpYWxvZygpe2lmKCF0aGlzLnNob3dNb3ZlRGlhbG9nfHwhdGhpcy5tb3ZlU291cmNlKXJldHVybiIiO2xldCBDZT1kcih0aGlzLm1vdmVTb3VyY2Uua2V5KTtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0iZGlhbG9nLW92ZXJsYXkiIEBjbGljaz0keygpPT50aGlzLmNsb3NlTW92ZURpYWxvZygpfT4KICAgICAgICA8ZGl2IGNsYXNzPSJkaWFsb2ciIEBjbGljaz0ke3ZlPT52ZS5zdG9wUHJvcGFnYXRpb24oKX0+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJkaWFsb2ctdGl0bGUiPk1vdmUgJHt0aGlzLm1vdmVTb3VyY2UuaXNGb2xkZXI/IkZvbGRlciI6IkZpbGUifTwvZGl2PgoKICAgICAgICAgICR7dGhpcy5tb3ZlRXJyb3I/U2AKICAgICAgICAgICAgPGRpdiBjbGFzcz0ibW92ZS1lcnJvciI+JHt0aGlzLm1vdmVFcnJvcn08L2Rpdj4KICAgICAgICAgIGA6U2AKICAgICAgICAgICAgPGRpdiBjbGFzcz0ibW92ZS1zdW1tYXJ5Ij4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtb3ZlLWl0ZW0iPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im1vdmUtbGFiZWwiPkZyb206PC9zcGFuPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im1vdmUtcGF0aCI+JHt0aGlzLm1vdmVTb3VyY2Uua2V5fTwvc3Bhbj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtb3ZlLWl0ZW0iPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im1vdmUtbGFiZWwiPlRvOjwvc3Bhbj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJtb3ZlLXBhdGgiPiR7dGhpcy5tb3ZlRGVzdGluYXRpb259JHtDZX08L3NwYW4+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgYH0KCiAgICAgICAgICA8ZGl2IGNsYXNzPSJkaWFsb2ctYWN0aW9ucyI+CiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImRpYWxvZy1idG4gZGlhbG9nLWJ0bi1jYW5jZWwiCiAgICAgICAgICAgICAgICAgICAgQGNsaWNrPSR7KCk9PnRoaXMuY2xvc2VNb3ZlRGlhbG9nKCl9CiAgICAgICAgICAgICAgICAgICAgP2Rpc2FibGVkPSR7dGhpcy5tb3ZlSW5Qcm9ncmVzc30+CiAgICAgICAgICAgICAgQ2FuY2VsCiAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAke3RoaXMubW92ZUVycm9yPyIiOlNgCiAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iZGlhbG9nLWJ0biBkaWFsb2ctYnRuLWNyZWF0ZSIKICAgICAgICAgICAgICAgICAgICAgIEBjbGljaz0keygpPT50aGlzLmV4ZWN1dGVNb3ZlKCl9CiAgICAgICAgICAgICAgICAgICAgICA/ZGlzYWJsZWQ9JHt0aGlzLm1vdmVJblByb2dyZXNzfT4KICAgICAgICAgICAgICAgICR7dGhpcy5tb3ZlSW5Qcm9ncmVzcz8iTW92aW5nLi4uIjoiTW92ZSJ9CiAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgIGB9CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICBgfXJlbmRlck1vdmVQaWNrZXJEaWFsb2coKXtpZighdGhpcy5zaG93TW92ZVBpY2tlckRpYWxvZ3x8IXRoaXMubW92ZVBpY2tlclNvdXJjZSlyZXR1cm4iIjtsZXQgQ2U9ZHIodGhpcy5tb3ZlUGlja2VyU291cmNlLmtleSksdmU9anModGhpcy5tb3ZlUGlja2VyU291cmNlLmtleSk7cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9ImRpYWxvZy1vdmVybGF5IiBAY2xpY2s9JHsoKT0+dGhpcy5jbG9zZU1vdmVQaWNrZXJEaWFsb2coKX0+CiAgICAgICAgPGRpdiBjbGFzcz0iZGlhbG9nIG1vdmUtcGlja2VyLWRpYWxvZyIgQGNsaWNrPSR7SGU9PkhlLnN0b3BQcm9wYWdhdGlvbigpfT4KICAgICAgICAgIDxkaXYgY2xhc3M9ImRpYWxvZy10aXRsZSI+TW92ZSAiJHtDZX0iIHRvLi4uPC9kaXY+CgogICAgICAgICAgPGRpdiBjbGFzcz0icGlja2VyLWJyZWFkY3J1bWIiPgogICAgICAgICAgICA8c3BhbiBjbGFzcz0icGlja2VyLWNydW1iIiBAY2xpY2s9JHsoKT0+dGhpcy5uYXZpZ2F0ZU1vdmVQaWNrZXIoIiIpfT4KICAgICAgICAgICAgICAke3RoaXMuYnVja2V0TmFtZX0KICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAke1I4KHRoaXMubW92ZVBpY2tlckN1cnJlbnRQcmVmaXgpLm1hcChIZT0+U2AKICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0icGlja2VyLXNlcGFyYXRvciI+Lzwvc3Bhbj4KICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0icGlja2VyLWNydW1iIiBAY2xpY2s9JHsoKT0+dGhpcy5uYXZpZ2F0ZU1vdmVQaWNrZXIoSGUpfT4KICAgICAgICAgICAgICAgICR7ZHIoSGUpfQogICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgYCl9CiAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICA8ZGl2IGNsYXNzPSJwaWNrZXItbGlzdCI+CiAgICAgICAgICAgICR7dGhpcy5tb3ZlUGlja2VyTG9hZGluZz9TYDxkaXYgY2xhc3M9InBpY2tlci1lbXB0eSI+TG9hZGluZy4uLjwvZGl2PmA6IiJ9CiAgICAgICAgICAgICR7IXRoaXMubW92ZVBpY2tlckxvYWRpbmcmJnRoaXMubW92ZVBpY2tlclByZWZpeGVzLmZpbHRlcihIZT0+SGUhPT10aGlzLm1vdmVQaWNrZXJTb3VyY2Uua2V5KS5sZW5ndGg9PT0wP1NgCiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGlja2VyLWVtcHR5Ij5ObyBzdWJmb2xkZXJzPC9kaXY+CiAgICAgICAgICAgIGA6IiJ9CiAgICAgICAgICAgICR7dGhpcy5tb3ZlUGlja2VyUHJlZml4ZXMuZmlsdGVyKEhlPT5IZSE9PXRoaXMubW92ZVBpY2tlclNvdXJjZS5rZXkpLm1hcChIZT0+U2AKICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBpY2tlci1pdGVtIgogICAgICAgICAgICAgICAgICAgICBAY2xpY2s9JHsoKT0+dGhpcy5uYXZpZ2F0ZU1vdmVQaWNrZXIoSGUpfQogICAgICAgICAgICAgICAgICAgICBAZGJsY2xpY2s9JHsoKT0+dGhpcy5zZWxlY3RNb3ZlRGVzdGluYXRpb24oSGUpfT4KICAgICAgICAgICAgICAgICAgPHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJjdXJyZW50Q29sb3IiPgogICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik0yMiAxOWEyIDIgMCAwIDEtMiAySDRhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJoNWwyIDNoOWEyIDIgMCAwIDEgMiAyeiIvPgogICAgICAgICAgICAgICAgICA8L3N2Zz4KICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hbWUiPiR7ZHIoSGUpfTwvc3Bhbj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgIGApfQogICAgICAgICAgPC9kaXY+CgogICAgICAgICAgPGRpdiBjbGFzcz0iZGlhbG9nLWFjdGlvbnMiPgogICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJkaWFsb2ctYnRuIGRpYWxvZy1idG4tY2FuY2VsIiBAY2xpY2s9JHsoKT0+dGhpcy5jbG9zZU1vdmVQaWNrZXJEaWFsb2coKX0+CiAgICAgICAgICAgICAgQ2FuY2VsCiAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJkaWFsb2ctYnRuIGRpYWxvZy1idG4tY3JlYXRlIgogICAgICAgICAgICAgICAgICAgIEBjbGljaz0keygpPT50aGlzLnNlbGVjdE1vdmVEZXN0aW5hdGlvbih0aGlzLm1vdmVQaWNrZXJDdXJyZW50UHJlZml4KX0KICAgICAgICAgICAgICAgICAgICA/ZGlzYWJsZWQ9JHt0aGlzLm1vdmVQaWNrZXJDdXJyZW50UHJlZml4PT09dmV9PgogICAgICAgICAgICAgIE1vdmUgSGVyZQogICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIGB9cmVuZGVyKCl7cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9ImtleXMtY29udGFpbmVyIj4KICAgICAgICA8ZGl2IGNsYXNzPSJmaWx0ZXItYmFyIj4KICAgICAgICAgIDxpbnB1dAogICAgICAgICAgICB0eXBlPSJ0ZXh0IgogICAgICAgICAgICBjbGFzcz0iZmlsdGVyLWlucHV0IgogICAgICAgICAgICBwbGFjZWhvbGRlcj0iRmlsdGVyIGZpbGVzLi4uIgogICAgICAgICAgICAudmFsdWU9JHt0aGlzLmZpbHRlclRleHR9CiAgICAgICAgICAgIEBpbnB1dD0ke3RoaXMuaGFuZGxlRmlsdGVySW5wdXR9CiAgICAgICAgICAvPgogICAgICAgIDwvZGl2PgoKICAgICAgICA8ZGl2IGNsYXNzPSJrZXlzLWxpc3QiIEBjb250ZXh0bWVudT0ke0NlPT50aGlzLmhhbmRsZUVtcHR5U3BhY2VDb250ZXh0TWVudShDZSl9PgogICAgICAgICAgJHt0aGlzLmxvYWRpbmc/U2A8ZGl2IGNsYXNzPSJlbXB0eS1zdGF0ZSI+TG9hZGluZy4uLjwvZGl2PmA6dGhpcy5maWx0ZXJlZEl0ZW1zLmxlbmd0aD09PTA/U2A8ZGl2IGNsYXNzPSJlbXB0eS1zdGF0ZSI+Tm8gb2JqZWN0cyBmb3VuZDwvZGl2PmA6U2AKICAgICAgICAgICAgICAgICAgPHRhYmxlPgogICAgICAgICAgICAgICAgICAgIDx0aGVhZD4KICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgPHRoPk5hbWU8L3RoPgogICAgICAgICAgICAgICAgICAgICAgICA8dGggc3R5bGU9IndpZHRoOiAxMDBweDsiPlNpemU8L3RoPgogICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICA8L3RoZWFkPgogICAgICAgICAgICAgICAgICAgIDx0Ym9keT4KICAgICAgICAgICAgICAgICAgICAgICR7dGhpcy5maWx0ZXJlZEl0ZW1zLm1hcChDZT0+U2AKICAgICAgICAgICAgICAgICAgICAgICAgICA8dHIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSIke3RoaXMuc2VsZWN0ZWRLZXk9PT1DZS5rZXk/InNlbGVjdGVkIjoiIn0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAY2xpY2s9JHsoKT0+dGhpcy5zZWxlY3RLZXkoQ2Uua2V5LENlLmlzRm9sZGVyKX0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBjb250ZXh0bWVudT0ke3ZlPT50aGlzLmhhbmRsZUl0ZW1Db250ZXh0TWVudSh2ZSxDZS5rZXksQ2UuaXNGb2xkZXIpfQogICAgICAgICAgICAgICAgICAgICAgICAgID4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ia2V5LWNlbGwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR7Q2UuaXNGb2xkZXI/U2AKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIGNsYXNzPSJrZXktaWNvbiBmb2xkZXItaWNvbiIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJjdXJyZW50Q29sb3IiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTIyIDE5YTIgMiAwIDAgMS0yIDJINGEyIDIgMCAwIDEtMi0yVjVhMiAyIDAgMCAxIDItMmg1bDIgM2g5YTIgMiAwIDAgMSAyIDJ6IiAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgOlNgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyBjbGFzcz0ia2V5LWljb24iIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTQgMkg2YTIgMiAwIDAgMC0yIDJ2MTZhMiAyIDAgMCAwIDIgMmgxMmEyIDIgMCAwIDAgMi0yVjh6IiAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXktbmFtZSI+JHtkcihDZS5rZXkpfTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPSJzaXplLWNlbGwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAke0NlLmlzRm9sZGVyPyItIjpYOShDZS5zaXplKX0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgYCl9CiAgICAgICAgICAgICAgICAgICAgPC90Ym9keT4KICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIGB9CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgICAke3RoaXMucmVuZGVyQ3JlYXRlRGlhbG9nKCl9CiAgICAgICR7dGhpcy5yZW5kZXJNb3ZlRGlhbG9nKCl9CiAgICAgICR7dGhpcy5yZW5kZXJNb3ZlUGlja2VyRGlhbG9nKCl9CiAgICAgICR7dGhpcy5yZW5kZXJSZW5hbWVEaWFsb2coKX0KICAgIGB9Y29uc3RydWN0b3IoKXtzdXBlciguLi5hcmd1bWVudHMpLHZ0KHRoaXMsbzEpfXN0YXRpY3t2dChhLHIpfX07cmV0dXJuIG4xPWF9KSgpfSk7dmFyIFJvLHVhLEFJcixqY3Q9bCgoKT0+e1NlKCk7b3QoKTtGWigpO1JvPWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sdWE9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LEFJcj0oKCk9PntsZXQgZT1bemUoImRlZXMtc3RvcmFnZS1wcmV2aWV3IildLHQscj1bXSxhLGk9RGUsbyxuPVtdLHM9W10sYyxkPVtdLGY9W10sdSxwPVtdLGg9W10sYix4PVtdLGc9W10sdix3PVtdLE09W10sRixDPVtdLGs9W10sTiwkPVtdLEk9W10sQix6PVtdLHk9W10sRSxfPVtdLFA9W10sVixIPVtdLFc9W10sYWUsVD1bXSxKPVtdLGZlLEw9W10sUT1bXSxrZSxHPVtdLEE9W107dmFyIEQ9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCBSPXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO289W2ooe3R5cGU6T2JqZWN0fSldLGM9W2ooe3R5cGU6U3RyaW5nfSldLHU9W2ooe3R5cGU6U3RyaW5nfSldLGI9W3JlKCldLHY9W3JlKCldLEY9W3JlKCldLE49W3JlKCldLEI9W3JlKCldLEU9W3JlKCldLFY9W3JlKCldLGFlPVtyZSgpXSxmZT1bcmUoKV0sa2U9W3JlKCldLFJvKHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZGF0YVByb3ZpZGVyIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpPPT4iZGF0YVByb3ZpZGVyImluIE8sZ2V0Ok89Pk8uZGF0YVByb3ZpZGVyLHNldDooTyxZKT0+e08uZGF0YVByb3ZpZGVyPVl9fSxtZXRhZGF0YTpSfSxuLHMpLFJvKHRoaXMsbnVsbCxjLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiYnVja2V0TmFtZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Tz0+ImJ1Y2tldE5hbWUiaW4gTyxnZXQ6Tz0+Ty5idWNrZXROYW1lLHNldDooTyxZKT0+e08uYnVja2V0TmFtZT1ZfX0sbWV0YWRhdGE6Un0sZCxmKSxSbyh0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im9iamVjdEtleSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Tz0+Im9iamVjdEtleSJpbiBPLGdldDpPPT5PLm9iamVjdEtleSxzZXQ6KE8sWSk9PntPLm9iamVjdEtleT1ZfX0sbWV0YWRhdGE6Un0scCxoKSxSbyh0aGlzLG51bGwsYix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImxvYWRpbmciLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOk89PiJsb2FkaW5nImluIE8sZ2V0Ok89Pk8ubG9hZGluZyxzZXQ6KE8sWSk9PntPLmxvYWRpbmc9WX19LG1ldGFkYXRhOlJ9LHgsZyksUm8odGhpcyxudWxsLHYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzYXZpbmciLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOk89PiJzYXZpbmciaW4gTyxnZXQ6Tz0+Ty5zYXZpbmcsc2V0OihPLFkpPT57Ty5zYXZpbmc9WX19LG1ldGFkYXRhOlJ9LHcsTSksUm8odGhpcyxudWxsLEYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJjb250ZW50IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpPPT4iY29udGVudCJpbiBPLGdldDpPPT5PLmNvbnRlbnQsc2V0OihPLFkpPT57Ty5jb250ZW50PVl9fSxtZXRhZGF0YTpSfSxDLGspLFJvKHRoaXMsbnVsbCxOLHtraW5kOiJhY2Nlc3NvciIsbmFtZToib3JpZ2luYWxUZXh0Q29udGVudCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Tz0+Im9yaWdpbmFsVGV4dENvbnRlbnQiaW4gTyxnZXQ6Tz0+Ty5vcmlnaW5hbFRleHRDb250ZW50LHNldDooTyxZKT0+e08ub3JpZ2luYWxUZXh0Q29udGVudD1ZfX0sbWV0YWRhdGE6Un0sJCxJKSxSbyh0aGlzLG51bGwsQix7a2luZDoiYWNjZXNzb3IiLG5hbWU6Imhhc0NoYW5nZXMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOk89PiJoYXNDaGFuZ2VzImluIE8sZ2V0Ok89Pk8uaGFzQ2hhbmdlcyxzZXQ6KE8sWSk9PntPLmhhc0NoYW5nZXM9WX19LG1ldGFkYXRhOlJ9LHoseSksUm8odGhpcyxudWxsLEUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJlZGl0aW5nIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpPPT4iZWRpdGluZyJpbiBPLGdldDpPPT5PLmVkaXRpbmcsc2V0OihPLFkpPT57Ty5lZGl0aW5nPVl9fSxtZXRhZGF0YTpSfSxfLFApLFJvKHRoaXMsbnVsbCxWLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiY29udGVudFR5cGUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOk89PiJjb250ZW50VHlwZSJpbiBPLGdldDpPPT5PLmNvbnRlbnRUeXBlLHNldDooTyxZKT0+e08uY29udGVudFR5cGU9WX19LG1ldGFkYXRhOlJ9LEgsVyksUm8odGhpcyxudWxsLGFlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZmlsZVNpemUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOk89PiJmaWxlU2l6ZSJpbiBPLGdldDpPPT5PLmZpbGVTaXplLHNldDooTyxZKT0+e08uZmlsZVNpemU9WX19LG1ldGFkYXRhOlJ9LFQsSiksUm8odGhpcyxudWxsLGZlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibGFzdE1vZGlmaWVkIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpPPT4ibGFzdE1vZGlmaWVkImluIE8sZ2V0Ok89Pk8ubGFzdE1vZGlmaWVkLHNldDooTyxZKT0+e08ubGFzdE1vZGlmaWVkPVl9fSxtZXRhZGF0YTpSfSxMLFEpLFJvKHRoaXMsbnVsbCxrZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImVycm9yIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpPPT4iZXJyb3IiaW4gTyxnZXQ6Tz0+Ty5lcnJvcixzZXQ6KE8sWSk9PntPLmVycm9yPVl9fSxtZXRhZGF0YTpSfSxHLEEpLFJvKG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOlJ9LG51bGwsciksRD1hPXQudmFsdWUsUiYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpSfSl9I2U9dWEodGhpcyxuLG51bGwpO2dldCBkYXRhUHJvdmlkZXIoKXtyZXR1cm4gdGhpcy4jZX1zZXQgZGF0YVByb3ZpZGVyKFIpe3RoaXMuI2U9Un0jdD0odWEodGhpcyxzKSx1YSh0aGlzLGQsIiIpKTtnZXQgYnVja2V0TmFtZSgpe3JldHVybiB0aGlzLiN0fXNldCBidWNrZXROYW1lKFIpe3RoaXMuI3Q9Un0jcj0odWEodGhpcyxmKSx1YSh0aGlzLHAsIiIpKTtnZXQgb2JqZWN0S2V5KCl7cmV0dXJuIHRoaXMuI3J9c2V0IG9iamVjdEtleShSKXt0aGlzLiNyPVJ9I2E9KHVhKHRoaXMsaCksdWEodGhpcyx4LCExKSk7Z2V0IGxvYWRpbmcoKXtyZXR1cm4gdGhpcy4jYX1zZXQgbG9hZGluZyhSKXt0aGlzLiNhPVJ9I2k9KHVhKHRoaXMsZyksdWEodGhpcyx3LCExKSk7Z2V0IHNhdmluZygpe3JldHVybiB0aGlzLiNpfXNldCBzYXZpbmcoUil7dGhpcy4jaT1SfSNvPSh1YSh0aGlzLE0pLHVhKHRoaXMsQywiIikpO2dldCBjb250ZW50KCl7cmV0dXJuIHRoaXMuI299c2V0IGNvbnRlbnQoUil7dGhpcy4jbz1SfSNuPSh1YSh0aGlzLGspLHVhKHRoaXMsJCwiIikpO2dldCBvcmlnaW5hbFRleHRDb250ZW50KCl7cmV0dXJuIHRoaXMuI259c2V0IG9yaWdpbmFsVGV4dENvbnRlbnQoUil7dGhpcy4jbj1SfSNzPSh1YSh0aGlzLEkpLHVhKHRoaXMseiwhMSkpO2dldCBoYXNDaGFuZ2VzKCl7cmV0dXJuIHRoaXMuI3N9c2V0IGhhc0NoYW5nZXMoUil7dGhpcy4jcz1SfSNsPSh1YSh0aGlzLHkpLHVhKHRoaXMsXywhMSkpO2dldCBlZGl0aW5nKCl7cmV0dXJuIHRoaXMuI2x9c2V0IGVkaXRpbmcoUil7dGhpcy4jbD1SfSNjPSh1YSh0aGlzLFApLHVhKHRoaXMsSCwiIikpO2dldCBjb250ZW50VHlwZSgpe3JldHVybiB0aGlzLiNjfXNldCBjb250ZW50VHlwZShSKXt0aGlzLiNjPVJ9I2Q9KHVhKHRoaXMsVyksdWEodGhpcyxULDApKTtnZXQgZmlsZVNpemUoKXtyZXR1cm4gdGhpcy4jZH1zZXQgZmlsZVNpemUoUil7dGhpcy4jZD1SfSN1PSh1YSh0aGlzLEopLHVhKHRoaXMsTCwiIikpO2dldCBsYXN0TW9kaWZpZWQoKXtyZXR1cm4gdGhpcy4jdX1zZXQgbGFzdE1vZGlmaWVkKFIpe3RoaXMuI3U9Un0jZj0odWEodGhpcyxRKSx1YSh0aGlzLEcsIiIpKTtnZXQgZXJyb3IoKXtyZXR1cm4gdGhpcy4jZn1zZXQgZXJyb3IoUil7dGhpcy4jZj1SfXN0YXRpYyBzdHlsZXM9W20uZGVmYXVsdFN0eWxlcyxQZSxsZWAKICAgICAgOmhvc3QgewogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgfQoKICAgICAgLnByZXZpZXctY29udGFpbmVyIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICB9CgogICAgICAucHJldmlldy1oZWFkZXIgewogICAgICAgIHBhZGRpbmc6IDEycHg7CiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZTVlN2ViIiwiIzMzMyIpfTsKICAgICAgfQoKICAgICAgLnByZXZpZXctdGl0bGUgewogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgIG1hcmdpbi1ib3R0b206IDhweDsKICAgICAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7CiAgICAgIH0KCiAgICAgIC5wcmV2aWV3LW1ldGEgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC13cmFwOiB3cmFwOwogICAgICAgIGdhcDogMTZweDsKICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiIzg4OCIpfTsKICAgICAgfQoKICAgICAgLm1ldGEtaXRlbSB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogNHB4OwogICAgICB9CgogICAgICAucHJldmlldy1jb250ZW50IHsKICAgICAgICBmbGV4OiAxOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgIH0KCiAgICAgIC5wcmV2aWV3LWNvbnRlbnQgZGVlcy1wcmV2aWV3IHsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgIH0KCiAgICAgIC5wcmV2aWV3LWNvbnRlbnQuY29kZS1lZGl0b3IgewogICAgICAgIHBhZGRpbmc6IDA7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgfQoKICAgICAgLnByZXZpZXctY29udGVudC5jb2RlLWVkaXRvciBkZWVzLWlucHV0LWNvZGUgewogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgfQoKICAgICAgLnByZXZpZXctYWN0aW9ucyB7CiAgICAgICAgcGFkZGluZzogMTJweDsKICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjMzMzIil9OwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZ2FwOiA4cHg7CiAgICAgIH0KCiAgICAgIC5hY3Rpb24tYnRuIHsKICAgICAgICBmbGV4OiAxOwogICAgICAgIHBhZGRpbmc6IDhweCAxNnB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDAsIDAsIDAsIDAuMDUpIiwicmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpIil9OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZDRkNGQ4IiwiIzQwNDA0MCIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMzZjNmNDYiLCIjZTBlMGUwIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgZm9udC1zaXplOiAxM3B4OwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1czsKICAgICAgfQoKICAgICAgLmFjdGlvbi1idG46aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDAsIDAsIDAsIDAuMDgpIiwicmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSIpfTsKICAgICAgfQoKICAgICAgLmFjdGlvbi1idG4uZGFuZ2VyIHsKICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIzOSwgNjgsIDY4LCAwLjIpOwogICAgICAgIGJvcmRlci1jb2xvcjogI2VmNDQ0NDsKICAgICAgICBjb2xvcjogI2Y4NzE3MTsKICAgICAgfQoKICAgICAgLmFjdGlvbi1idG4uZGFuZ2VyOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIzOSwgNjgsIDY4LCAwLjMpOwogICAgICB9CgogICAgICAuYWN0aW9uLWJ0bi5wcmltYXJ5IHsKICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDU5LCAxMzAsIDI0NiwgMC4zKTsKICAgICAgICBib3JkZXItY29sb3I6ICMzYjgyZjY7CiAgICAgICAgY29sb3I6ICM2MGE1ZmE7CiAgICAgIH0KCiAgICAgIC5hY3Rpb24tYnRuLnByaW1hcnk6aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6IHJnYmEoNTksIDEzMCwgMjQ2LCAwLjQpOwogICAgICB9CgogICAgICAuYWN0aW9uLWJ0bi5wcmltYXJ5OmRpc2FibGVkIHsKICAgICAgICBvcGFjaXR5OiAwLjU7CiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsKICAgICAgfQoKICAgICAgLmFjdGlvbi1idG4uc2Vjb25kYXJ5IHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgicmdiYSgwLCAwLCAwLCAwLjAzKSIsInJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSkiKX07CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiI2Q0ZDRkOCIsIiM1NTUiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiI2FhYSIpfTsKICAgICAgfQoKICAgICAgLmFjdGlvbi1idG4uc2Vjb25kYXJ5OmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgicmdiYSgwLCAwLCAwLCAwLjA2KSIsInJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMxODE4MWIiLCIjZmZmIil9OwogICAgICB9CgogICAgICAudW5zYXZlZC1pbmRpY2F0b3IgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDZweDsKICAgICAgICBwYWRkaW5nOiA2cHggMTBweDsKICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1MSwgMTkxLCAzNiwgMC4xKTsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1MSwgMTkxLCAzNiwgMC4zKTsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgIGNvbG9yOiAjZmJiZjI0OwogICAgICB9CgogICAgICAudW5zYXZlZC1kb3QgewogICAgICAgIHdpZHRoOiA2cHg7CiAgICAgICAgaGVpZ2h0OiA2cHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgICAgIGJhY2tncm91bmQ6ICNmYmJmMjQ7CiAgICAgIH0KCiAgICAgIC5lbXB0eS1zdGF0ZSB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiI2ExYTFhYSIsIiM2NjYiKX07CiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgIHBhZGRpbmc6IDI0cHg7CiAgICAgIH0KCiAgICAgIC5lbXB0eS1zdGF0ZSBzdmcgewogICAgICAgIHdpZHRoOiA0OHB4OwogICAgICAgIGhlaWdodDogNDhweDsKICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4OwogICAgICAgIG9wYWNpdHk6IDAuNTsKICAgICAgfQoKICAgICAgLmxvYWRpbmctc3RhdGUgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiIzg4OCIpfTsKICAgICAgfQoKICAgICAgLmVycm9yLXN0YXRlIHsKICAgICAgICBwYWRkaW5nOiAxNnB4OwogICAgICAgIGNvbG9yOiAjZjg3MTcxOwogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgfQogICAgYF07dXBkYXRlZChSKXsoUi5oYXMoIm9iamVjdEtleSIpfHxSLmhhcygiYnVja2V0TmFtZSIpKSYmKHRoaXMub2JqZWN0S2V5P3RoaXMubG9hZE9iamVjdCgpOih0aGlzLmNvbnRlbnQ9IiIsdGhpcy5jb250ZW50VHlwZT0iIix0aGlzLmVycm9yPSIiLHRoaXMub3JpZ2luYWxUZXh0Q29udGVudD0iIix0aGlzLmhhc0NoYW5nZXM9ITEsdGhpcy5lZGl0aW5nPSExKSl9YXN5bmMgbG9hZE9iamVjdCgpe2lmKCEoIXRoaXMub2JqZWN0S2V5fHwhdGhpcy5idWNrZXROYW1lfHwhdGhpcy5kYXRhUHJvdmlkZXIpKXt0aGlzLmxvYWRpbmc9ITAsdGhpcy5lcnJvcj0iIix0aGlzLmhhc0NoYW5nZXM9ITEsdGhpcy5lZGl0aW5nPSExO3RyeXtsZXQgUj1hd2FpdCB0aGlzLmRhdGFQcm92aWRlci5nZXRPYmplY3QodGhpcy5idWNrZXROYW1lLHRoaXMub2JqZWN0S2V5KTtpZighUil7dGhpcy5lcnJvcj0iT2JqZWN0IG5vdCBmb3VuZCIsdGhpcy5sb2FkaW5nPSExO3JldHVybn10aGlzLmNvbnRlbnQ9Ui5jb250ZW50fHwiIix0aGlzLmNvbnRlbnRUeXBlPVIuY29udGVudFR5cGV8fCIiLHRoaXMuZmlsZVNpemU9Ui5zaXplfHwwLHRoaXMubGFzdE1vZGlmaWVkPVIubGFzdE1vZGlmaWVkfHwiIix0aGlzLmlzVGV4dCgpJiYodGhpcy5vcmlnaW5hbFRleHRDb250ZW50PXRoaXMuZ2V0VGV4dENvbnRlbnQoKSl9Y2F0Y2goUil7Y29uc29sZS5lcnJvcigiRXJyb3IgbG9hZGluZyBvYmplY3Q6IixSKSx0aGlzLmVycm9yPSJGYWlsZWQgdG8gbG9hZCBvYmplY3QifXRoaXMubG9hZGluZz0hMX19Zm9ybWF0RGF0ZShSKXtyZXR1cm4gUj9uZXcgRGF0ZShSKS50b0xvY2FsZVN0cmluZygpOiItIn1pc0ltYWdlKCl7cmV0dXJuIHRoaXMuY29udGVudFR5cGUuc3RhcnRzV2l0aCgiaW1hZ2UvIil9aXNUZXh0KCl7cmV0dXJuIHRoaXMuY29udGVudFR5cGUuc3RhcnRzV2l0aCgidGV4dC8iKXx8dGhpcy5jb250ZW50VHlwZT09PSJhcHBsaWNhdGlvbi9qc29uInx8dGhpcy5jb250ZW50VHlwZT09PSJhcHBsaWNhdGlvbi94bWwifHx0aGlzLmNvbnRlbnRUeXBlPT09ImFwcGxpY2F0aW9uL2phdmFzY3JpcHQifWdldFRleHRDb250ZW50KCl7dHJ5e2xldCBSPWF0b2IodGhpcy5jb250ZW50KSxPPW5ldyBVaW50OEFycmF5KFIubGVuZ3RoKTtmb3IobGV0IFk9MDtZPFIubGVuZ3RoO1krKylPW1ldPVIuY2hhckNvZGVBdChZKTtyZXR1cm4gbmV3IFRleHREZWNvZGVyKCJ1dGYtOCIpLmRlY29kZShPKX1jYXRjaHtyZXR1cm4iVW5hYmxlIHRvIGRlY29kZSBjb250ZW50In19YXN5bmMgaGFuZGxlRG93bmxvYWQoKXt0cnl7bGV0IFI9bmV3IEJsb2IoW1VpbnQ4QXJyYXkuZnJvbShhdG9iKHRoaXMuY29udGVudCksdWU9PnVlLmNoYXJDb2RlQXQoMCkpXSx7dHlwZTp0aGlzLmNvbnRlbnRUeXBlfSksTz1VUkwuY3JlYXRlT2JqZWN0VVJMKFIpLFk9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYSIpO1kuaHJlZj1PLFkuZG93bmxvYWQ9ZHIodGhpcy5vYmplY3RLZXkpLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoWSksWS5jbGljaygpLGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoWSksVVJMLnJldm9rZU9iamVjdFVSTChPKX1jYXRjaChSKXtjb25zb2xlLmVycm9yKCJFcnJvciBkb3dubG9hZGluZzoiLFIpfX1hc3luYyBoYW5kbGVEZWxldGUoKXtpZih0aGlzLmRhdGFQcm92aWRlciYmY29uZmlybShgRGVsZXRlICIke2RyKHRoaXMub2JqZWN0S2V5KX0iP2ApKXRyeXthd2FpdCB0aGlzLmRhdGFQcm92aWRlci5kZWxldGVPYmplY3QodGhpcy5idWNrZXROYW1lLHRoaXMub2JqZWN0S2V5KSx0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJvYmplY3QtZGVsZXRlZCIse2RldGFpbDp7a2V5OnRoaXMub2JqZWN0S2V5fSxidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpfWNhdGNoKFIpe2NvbnNvbGUuZXJyb3IoIkVycm9yIGRlbGV0aW5nIG9iamVjdDoiLFIpfX1nZXRMYW5ndWFnZSgpe2xldCBSPXRoaXMub2JqZWN0S2V5LnNwbGl0KCIuIikucG9wKCk/LnRvTG93ZXJDYXNlKCl8fCIiO3JldHVybnt0czoidHlwZXNjcmlwdCIsdHN4OiJ0eXBlc2NyaXB0IixqczoiamF2YXNjcmlwdCIsanN4OiJqYXZhc2NyaXB0IixtanM6ImphdmFzY3JpcHQiLGNqczoiamF2YXNjcmlwdCIsanNvbjoianNvbiIsaHRtbDoiaHRtbCIsaHRtOiJodG1sIixjc3M6ImNzcyIsc2Nzczoic2NzcyIsc2Fzczoic2NzcyIsbGVzczoibGVzcyIsbWQ6Im1hcmtkb3duIixtYXJrZG93bjoibWFya2Rvd24iLHhtbDoieG1sIix5YW1sOiJ5YW1sIix5bWw6InlhbWwiLHB5OiJweXRob24iLHJiOiJydWJ5IixnbzoiZ28iLHJzOiJydXN0IixqYXZhOiJqYXZhIixjOiJjIixjcHA6ImNwcCIsaDoiYyIsaHBwOiJjcHAiLGNzOiJjc2hhcnAiLHBocDoicGhwIixzaDoic2hlbGwiLGJhc2g6InNoZWxsIix6c2g6InNoZWxsIixzcWw6InNxbCIsZ3JhcGhxbDoiZ3JhcGhxbCIsZ3FsOiJncmFwaHFsIixkb2NrZXJmaWxlOiJkb2NrZXJmaWxlIix0eHQ6InBsYWludGV4dCJ9W1JdfHwicGxhaW50ZXh0In1oYW5kbGVDb250ZW50Q2hhbmdlKFIpe2xldCBPPVIuZGV0YWlsO3RoaXMuaGFzQ2hhbmdlcz1PIT09dGhpcy5vcmlnaW5hbFRleHRDb250ZW50fWhhbmRsZUVkaXQoKXt0aGlzLmVkaXRpbmc9ITB9aGFuZGxlRGlzY2FyZCgpe2xldCBSPXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiZGVlcy1pbnB1dC1jb2RlIik7UiYmKFIudmFsdWU9dGhpcy5vcmlnaW5hbFRleHRDb250ZW50KSx0aGlzLmhhc0NoYW5nZXM9ITEsdGhpcy5lZGl0aW5nPSExfWFzeW5jIGhhbmRsZVNhdmUoKXtpZighKCF0aGlzLmhhc0NoYW5nZXN8fHRoaXMuc2F2aW5nfHwhdGhpcy5kYXRhUHJvdmlkZXIpKXt0aGlzLnNhdmluZz0hMDt0cnl7bGV0IE89dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCJkZWVzLWlucHV0LWNvZGUiKT8udmFsdWU/PyIiLHVlPW5ldyBUZXh0RW5jb2RlcigpLmVuY29kZShPKSx5ZT1idG9hKFN0cmluZy5mcm9tQ2hhckNvZGUoLi4udWUpKTthd2FpdCB0aGlzLmRhdGFQcm92aWRlci5wdXRPYmplY3QodGhpcy5idWNrZXROYW1lLHRoaXMub2JqZWN0S2V5LHllLHRoaXMuY29udGVudFR5cGUpJiYodGhpcy5vcmlnaW5hbFRleHRDb250ZW50PU8sdGhpcy5oYXNDaGFuZ2VzPSExLHRoaXMuZWRpdGluZz0hMSx0aGlzLmNvbnRlbnQ9eWUpfWNhdGNoKFIpe2NvbnNvbGUuZXJyb3IoIkVycm9yIHNhdmluZyBvYmplY3Q6IixSKX10aGlzLnNhdmluZz0hMX19cmVuZGVyKCl7cmV0dXJuIHRoaXMub2JqZWN0S2V5P3RoaXMubG9hZGluZz9TYAogICAgICAgIDxkaXYgY2xhc3M9InByZXZpZXctY29udGFpbmVyIj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImxvYWRpbmctc3RhdGUiPkxvYWRpbmcuLi48L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgYDp0aGlzLmVycm9yP1NgCiAgICAgICAgPGRpdiBjbGFzcz0icHJldmlldy1jb250YWluZXIiPgogICAgICAgICAgPGRpdiBjbGFzcz0iZXJyb3Itc3RhdGUiPiR7dGhpcy5lcnJvcn08L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgYDpTYAogICAgICA8ZGl2IGNsYXNzPSJwcmV2aWV3LWNvbnRhaW5lciI+CiAgICAgICAgPGRpdiBjbGFzcz0icHJldmlldy1oZWFkZXIiPgogICAgICAgICAgPGRpdiBjbGFzcz0icHJldmlldy10aXRsZSI+JHtkcih0aGlzLm9iamVjdEtleSl9PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJwcmV2aWV3LW1ldGEiPgogICAgICAgICAgICA8c3BhbiBjbGFzcz0ibWV0YS1pdGVtIj4ke3RoaXMuY29udGVudFR5cGV9PC9zcGFuPgogICAgICAgICAgICA8c3BhbiBjbGFzcz0ibWV0YS1pdGVtIj4ke1g5KHRoaXMuZmlsZVNpemUpfTwvc3Bhbj4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im1ldGEtaXRlbSI+JHt0aGlzLmZvcm1hdERhdGUodGhpcy5sYXN0TW9kaWZpZWQpfTwvc3Bhbj4KICAgICAgICAgICAgJHt0aGlzLmhhc0NoYW5nZXM/U2AKICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idW5zYXZlZC1pbmRpY2F0b3IiPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InVuc2F2ZWQtZG90Ij48L3NwYW4+CiAgICAgICAgICAgICAgICBVbnNhdmVkIGNoYW5nZXMKICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgIGA6IiJ9CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KCiAgICAgICAgPGRpdiBjbGFzcz0icHJldmlldy1jb250ZW50ICR7dGhpcy5lZGl0aW5nPyJjb2RlLWVkaXRvciI6IiJ9Ij4KICAgICAgICAgICR7dGhpcy5lZGl0aW5nP1NgCiAgICAgICAgICAgICAgICA8ZGVlcy1pbnB1dC1jb2RlCiAgICAgICAgICAgICAgICAgIC52YWx1ZT0ke3RoaXMub3JpZ2luYWxUZXh0Q29udGVudH0KICAgICAgICAgICAgICAgICAgLmxhbmd1YWdlPSR7dGhpcy5nZXRMYW5ndWFnZSgpfQogICAgICAgICAgICAgICAgICBoZWlnaHQ9IjEwMCUiCiAgICAgICAgICAgICAgICAgIEBjb250ZW50LWNoYW5nZT0ke1I9PnRoaXMuaGFuZGxlQ29udGVudENoYW5nZShSKX0KICAgICAgICAgICAgICAgID48L2RlZXMtaW5wdXQtY29kZT4KICAgICAgICAgICAgICBgOnRoaXMuaXNUZXh0KCk/U2AKICAgICAgICAgICAgICAgICAgPGRlZXMtcHJldmlldwogICAgICAgICAgICAgICAgICAgIC50ZXh0Q29udGVudD0ke3RoaXMub3JpZ2luYWxUZXh0Q29udGVudH0KICAgICAgICAgICAgICAgICAgICAuZmlsZW5hbWU9JHtkcih0aGlzLm9iamVjdEtleSl9CiAgICAgICAgICAgICAgICAgICAgLmxhbmd1YWdlPSR7dGhpcy5nZXRMYW5ndWFnZSgpfQogICAgICAgICAgICAgICAgICAgIC5zaG93VG9vbGJhcj0keyEwfQogICAgICAgICAgICAgICAgICAgIC5zaG93RmlsZW5hbWU9JHshMX0KICAgICAgICAgICAgICAgICAgPjwvZGVlcy1wcmV2aWV3PgogICAgICAgICAgICAgICAgYDpTYAogICAgICAgICAgICAgICAgICA8ZGVlcy1wcmV2aWV3CiAgICAgICAgICAgICAgICAgICAgLmJhc2U2ND0ke3RoaXMuY29udGVudH0KICAgICAgICAgICAgICAgICAgICAubWltZVR5cGU9JHt0aGlzLmNvbnRlbnRUeXBlfQogICAgICAgICAgICAgICAgICAgIC5maWxlbmFtZT0ke2RyKHRoaXMub2JqZWN0S2V5KX0KICAgICAgICAgICAgICAgICAgICAuc2hvd1Rvb2xiYXI9JHshMH0KICAgICAgICAgICAgICAgICAgICAuc2hvd0ZpbGVuYW1lPSR7ITF9CiAgICAgICAgICAgICAgICAgID48L2RlZXMtcHJldmlldz4KICAgICAgICAgICAgICAgIGB9CiAgICAgICAgPC9kaXY+CgogICAgICAgIDxkaXYgY2xhc3M9InByZXZpZXctYWN0aW9ucyI+CiAgICAgICAgICAke3RoaXMuZWRpdGluZz9TYAogICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYWN0aW9uLWJ0biBzZWNvbmRhcnkiIEBjbGljaz0ke3RoaXMuaGFuZGxlRGlzY2FyZH0+CiAgICAgICAgICAgICAgICAgICR7dGhpcy5oYXNDaGFuZ2VzPyJEaXNjYXJkIjoiQ2FuY2VsIn0KICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgPGJ1dHRvbgogICAgICAgICAgICAgICAgICBjbGFzcz0iYWN0aW9uLWJ0biBwcmltYXJ5IgogICAgICAgICAgICAgICAgICBAY2xpY2s9JHt0aGlzLmhhbmRsZVNhdmV9CiAgICAgICAgICAgICAgICAgID9kaXNhYmxlZD0ke3RoaXMuc2F2aW5nfHwhdGhpcy5oYXNDaGFuZ2VzfQogICAgICAgICAgICAgICAgPgogICAgICAgICAgICAgICAgICAke3RoaXMuc2F2aW5nPyJTYXZpbmcuLi4iOiJTYXZlIn0KICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgIGA6U2AKICAgICAgICAgICAgICAgICR7dGhpcy5pc1RleHQoKT9TYDxidXR0b24gY2xhc3M9ImFjdGlvbi1idG4iIEBjbGljaz0ke3RoaXMuaGFuZGxlRWRpdH0+RWRpdDwvYnV0dG9uPmA6IiJ9CiAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJhY3Rpb24tYnRuIiBAY2xpY2s9JHt0aGlzLmhhbmRsZURvd25sb2FkfT5Eb3dubG9hZDwvYnV0dG9uPgogICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYWN0aW9uLWJ0biBkYW5nZXIiIEBjbGljaz0ke3RoaXMuaGFuZGxlRGVsZXRlfT5EZWxldGU8L2J1dHRvbj4KICAgICAgICAgICAgICBgfQogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIGA6U2AKICAgICAgICA8ZGl2IGNsYXNzPSJwcmV2aWV3LWNvbnRhaW5lciI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJlbXB0eS1zdGF0ZSI+CiAgICAgICAgICAgIDxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIj4KICAgICAgICAgICAgICA8cGF0aCBkPSJNMTQgMkg2YTIgMiAwIDAgMC0yIDJ2MTZhMiAyIDAgMCAwIDIgMmgxMmEyIDIgMCAwIDAgMi0yVjh6IiAvPgogICAgICAgICAgICAgIDxwb2x5bGluZSBwb2ludHM9IjE0IDIgMTQgOCAyMCA4IiAvPgogICAgICAgICAgICA8L3N2Zz4KICAgICAgICAgICAgPHA+U2VsZWN0IGEgZmlsZSB0byBwcmV2aWV3PC9wPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIGB9Y29uc3RydWN0b3IoKXtzdXBlciguLi5hcmd1bWVudHMpLHVhKHRoaXMsQSl9c3RhdGlje3VhKGEscil9fTtyZXR1cm4gRD1hfSkoKX0pO3ZhciBabixOYSxFSXIsQmN0PWwoKCk9PntTZSgpO290KCk7X0lyKCk7SGN0KCk7cWN0KCk7amN0KCk7Wm49ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxOYT1mdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MixpPTA7aTx0Lmxlbmd0aDtpKyspcj1hP3RbaV0uY2FsbChlLHIpOnRbaV0uY2FsbChlKTtyZXR1cm4gYT9yOnZvaWQgMH0sRUlyPSgoKT0+e2xldCBlPVt6ZSgiZGVlcy1zdG9yYWdlLWJyb3dzZXIiKV0sdCxyPVtdLGEsaT1EZSxvLG49W10scz1bXSxjLGQ9W10sZj1bXSx1LHA9W10saD1bXSxiLHg9W10sZz1bXSx2LHc9W10sTT1bXSxGLEM9W10saz1bXSxOLCQ9W10sST1bXSxCLHo9W10seT1bXSxFLF89W10sUD1bXSxWLEg9W10sVz1bXSxhZSxUPVtdLEo9W107dmFyIGZlPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgTD10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHt0eXBlOk9iamVjdH0pXSxjPVtqKHt0eXBlOlN0cmluZ30pXSx1PVtqKHt0eXBlOk9iamVjdH0pXSxiPVtyZSgpXSx2PVtyZSgpXSxGPVtyZSgpXSxOPVtyZSgpXSxCPVtyZSgpXSxFPVtyZSgpXSxWPVtyZSgpXSxhZT1bcmUoKV0sWm4odGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJkYXRhUHJvdmlkZXIiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOlE9PiJkYXRhUHJvdmlkZXIiaW4gUSxnZXQ6UT0+US5kYXRhUHJvdmlkZXIsc2V0OihRLGtlKT0+e1EuZGF0YVByb3ZpZGVyPWtlfX0sbWV0YWRhdGE6TH0sbixzKSxabih0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImJ1Y2tldE5hbWUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOlE9PiJidWNrZXROYW1lImluIFEsZ2V0OlE9PlEuYnVja2V0TmFtZSxzZXQ6KFEsa2UpPT57US5idWNrZXROYW1lPWtlfX0sbWV0YWRhdGE6TH0sZCxmKSxabih0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im9uQ2hhbmdlRXZlbnQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOlE9PiJvbkNoYW5nZUV2ZW50ImluIFEsZ2V0OlE9PlEub25DaGFuZ2VFdmVudCxzZXQ6KFEsa2UpPT57US5vbkNoYW5nZUV2ZW50PWtlfX0sbWV0YWRhdGE6TH0scCxoKSxabih0aGlzLG51bGwsYix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InZpZXdUeXBlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpRPT4idmlld1R5cGUiaW4gUSxnZXQ6UT0+US52aWV3VHlwZSxzZXQ6KFEsa2UpPT57US52aWV3VHlwZT1rZX19LG1ldGFkYXRhOkx9LHgsZyksWm4odGhpcyxudWxsLHYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJjdXJyZW50UHJlZml4IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpRPT4iY3VycmVudFByZWZpeCJpbiBRLGdldDpRPT5RLmN1cnJlbnRQcmVmaXgsc2V0OihRLGtlKT0+e1EuY3VycmVudFByZWZpeD1rZX19LG1ldGFkYXRhOkx9LHcsTSksWm4odGhpcyxudWxsLEYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzZWxlY3RlZEtleSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6UT0+InNlbGVjdGVkS2V5ImluIFEsZ2V0OlE9PlEuc2VsZWN0ZWRLZXksc2V0OihRLGtlKT0+e1Euc2VsZWN0ZWRLZXk9a2V9fSxtZXRhZGF0YTpMfSxDLGspLFpuKHRoaXMsbnVsbCxOLHtraW5kOiJhY2Nlc3NvciIsbmFtZToicmVmcmVzaEtleSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6UT0+InJlZnJlc2hLZXkiaW4gUSxnZXQ6UT0+US5yZWZyZXNoS2V5LHNldDooUSxrZSk9PntRLnJlZnJlc2hLZXk9a2V9fSxtZXRhZGF0YTpMfSwkLEkpLFpuKHRoaXMsbnVsbCxCLHtraW5kOiJhY2Nlc3NvciIsbmFtZToicHJldmlld1dpZHRoIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpRPT4icHJldmlld1dpZHRoImluIFEsZ2V0OlE9PlEucHJldmlld1dpZHRoLHNldDooUSxrZSk9PntRLnByZXZpZXdXaWR0aD1rZX19LG1ldGFkYXRhOkx9LHoseSksWm4odGhpcyxudWxsLEUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJpc1Jlc2l6aW5nUHJldmlldyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6UT0+ImlzUmVzaXppbmdQcmV2aWV3ImluIFEsZ2V0OlE9PlEuaXNSZXNpemluZ1ByZXZpZXcsc2V0OihRLGtlKT0+e1EuaXNSZXNpemluZ1ByZXZpZXc9a2V9fSxtZXRhZGF0YTpMfSxfLFApLFpuKHRoaXMsbnVsbCxWLHtraW5kOiJhY2Nlc3NvciIsbmFtZToicmVjZW50Q2hhbmdlQ291bnQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOlE9PiJyZWNlbnRDaGFuZ2VDb3VudCJpbiBRLGdldDpRPT5RLnJlY2VudENoYW5nZUNvdW50LHNldDooUSxrZSk9PntRLnJlY2VudENoYW5nZUNvdW50PWtlfX0sbWV0YWRhdGE6TH0sSCxXKSxabih0aGlzLG51bGwsYWUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJpc1N0cmVhbUNvbm5lY3RlZCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6UT0+ImlzU3RyZWFtQ29ubmVjdGVkImluIFEsZ2V0OlE9PlEuaXNTdHJlYW1Db25uZWN0ZWQsc2V0OihRLGtlKT0+e1EuaXNTdHJlYW1Db25uZWN0ZWQ9a2V9fSxtZXRhZGF0YTpMfSxULEopLFpuKG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOkx9LG51bGwsciksZmU9YT10LnZhbHVlLEwmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6TH0pfXN0YXRpYyBkZW1vPUNJcjtzdGF0aWMgZGVtb0dyb3Vwcz1bIkRhdGEgVmlldyJdOyNlPU5hKHRoaXMsbixudWxsKTtnZXQgZGF0YVByb3ZpZGVyKCl7cmV0dXJuIHRoaXMuI2V9c2V0IGRhdGFQcm92aWRlcihMKXt0aGlzLiNlPUx9I3Q9KE5hKHRoaXMscyksTmEodGhpcyxkLCIiKSk7Z2V0IGJ1Y2tldE5hbWUoKXtyZXR1cm4gdGhpcy4jdH1zZXQgYnVja2V0TmFtZShMKXt0aGlzLiN0PUx9I3I9KE5hKHRoaXMsZiksTmEodGhpcyxwLG51bGwpKTtnZXQgb25DaGFuZ2VFdmVudCgpe3JldHVybiB0aGlzLiNyfXNldCBvbkNoYW5nZUV2ZW50KEwpe3RoaXMuI3I9TH0jYT0oTmEodGhpcyxoKSxOYSh0aGlzLHgsImNvbHVtbnMiKSk7Z2V0IHZpZXdUeXBlKCl7cmV0dXJuIHRoaXMuI2F9c2V0IHZpZXdUeXBlKEwpe3RoaXMuI2E9TH0jaT0oTmEodGhpcyxnKSxOYSh0aGlzLHcsIiIpKTtnZXQgY3VycmVudFByZWZpeCgpe3JldHVybiB0aGlzLiNpfXNldCBjdXJyZW50UHJlZml4KEwpe3RoaXMuI2k9TH0jbz0oTmEodGhpcyxNKSxOYSh0aGlzLEMsIiIpKTtnZXQgc2VsZWN0ZWRLZXkoKXtyZXR1cm4gdGhpcy4jb31zZXQgc2VsZWN0ZWRLZXkoTCl7dGhpcy4jbz1MfSNuPShOYSh0aGlzLGspLE5hKHRoaXMsJCwwKSk7Z2V0IHJlZnJlc2hLZXkoKXtyZXR1cm4gdGhpcy4jbn1zZXQgcmVmcmVzaEtleShMKXt0aGlzLiNuPUx9I3M9KE5hKHRoaXMsSSksTmEodGhpcyx6LDcwMCkpO2dldCBwcmV2aWV3V2lkdGgoKXtyZXR1cm4gdGhpcy4jc31zZXQgcHJldmlld1dpZHRoKEwpe3RoaXMuI3M9TH0jbD0oTmEodGhpcyx5KSxOYSh0aGlzLF8sITEpKTtnZXQgaXNSZXNpemluZ1ByZXZpZXcoKXtyZXR1cm4gdGhpcy4jbH1zZXQgaXNSZXNpemluZ1ByZXZpZXcoTCl7dGhpcy4jbD1MfSNjPShOYSh0aGlzLFApLE5hKHRoaXMsSCwwKSk7Z2V0IHJlY2VudENoYW5nZUNvdW50KCl7cmV0dXJuIHRoaXMuI2N9c2V0IHJlY2VudENoYW5nZUNvdW50KEwpe3RoaXMuI2M9TH0jZD0oTmEodGhpcyxXKSxOYSh0aGlzLFQsITEpKTtnZXQgaXNTdHJlYW1Db25uZWN0ZWQoKXtyZXR1cm4gdGhpcy4jZH1zZXQgaXNTdHJlYW1Db25uZWN0ZWQoTCl7dGhpcy4jZD1MfWNoYW5nZVVuc3Vic2NyaWJlPShOYSh0aGlzLEopLG51bGwpO3N0YXRpYyBzdHlsZXM9W20uZGVmYXVsdFN0eWxlcyxQZSxsZWAKICAgICAgOmhvc3QgewogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgfQoKICAgICAgLmJyb3dzZXItY29udGFpbmVyIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICB9CgogICAgICAudG9vbGJhciB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogMTJweDsKICAgICAgICBwYWRkaW5nOiAxMnB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDAsIDAsIDAsIDAuMDMpIiwicmdiYSgwLCAwLCAwLCAwLjIpIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4OwogICAgICB9CgogICAgICAuYnJlYWRjcnVtYiB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogNHB4OwogICAgICAgIGZsZXg6IDE7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzcxNzE3YSIsIiM5OTkiKX07CiAgICAgIH0KCiAgICAgIC5icmVhZGNydW1iLWl0ZW0gewogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICBwYWRkaW5nOiA0cHggOHB4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMTVzOwogICAgICB9CgogICAgICAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgicmdiYSgwLCAwLCAwLCAwLjA1KSIsInJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMxODE4MWIiLCIjZmZmIil9OwogICAgICB9CgogICAgICAuYnJlYWRjcnVtYi1zZXBhcmF0b3IgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiI2Q0ZDRkOCIsIiM1NTUiKX07CiAgICAgIH0KCiAgICAgIC52aWV3LXRvZ2dsZSB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBnYXA6IDRweDsKICAgICAgfQoKICAgICAgLnZpZXctYnRuIHsKICAgICAgICBwYWRkaW5nOiA2cHggMTJweDsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2Q0ZDRkOCIsIiM0NDQiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiIzg4OCIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXM7CiAgICAgIH0KCiAgICAgIC52aWV3LWJ0bjpob3ZlciB7CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiI2ExYTFhYSIsIiM2NjYiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjM2YzZjQ2IiwiI2FhYSIpfTsKICAgICAgfQoKICAgICAgLnZpZXctYnRuLmFjdGl2ZSB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoMCwgMCwgMCwgMC4wNSkiLCJyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSkiKX07CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiI2ExYTFhYSIsIiM0MDQwNDAiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMTgxODFiIiwiI2UwZTBlMCIpfTsKICAgICAgfQoKICAgICAgLmNvbnRlbnQgewogICAgICAgIGZsZXg6IDE7CiAgICAgICAgZGlzcGxheTogZ3JpZDsKICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjsKICAgICAgICBnYXA6IDA7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgfQoKICAgICAgLmNvbnRlbnQuaGFzLXByZXZpZXcgewogICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDRweCB2YXIoLS1wcmV2aWV3LXdpZHRoLCA3MDBweCk7CiAgICAgIH0KCiAgICAgIC5yZXNpemUtZGl2aWRlciB7CiAgICAgICAgd2lkdGg6IDRweDsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgICBjdXJzb3I6IGNvbC1yZXNpemU7CiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzOwogICAgICB9CgogICAgICAucmVzaXplLWRpdmlkZXI6aG92ZXIsCiAgICAgIC5yZXNpemUtZGl2aWRlci5hY3RpdmUgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDAsIDAsIDAsIDAuMSkiLCJyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMikiKX07CiAgICAgIH0KCiAgICAgIC5tYWluLXZpZXcgewogICAgICAgIG92ZXJmbG93OiBhdXRvOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDAsIDAsIDAsIDAuMDIpIiwicmdiYSgwLCAwLCAwLCAwLjIpIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgfQoKICAgICAgLnByZXZpZXctcGFuZWwgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDAsIDAsIDAsIDAuMDIpIiwicmdiYSgwLCAwLCAwLCAwLjIpIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIG1hcmdpbi1sZWZ0OiAxMnB4OwogICAgICB9CgogICAgICBAbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7CiAgICAgICAgLmNvbnRlbnQsCiAgICAgICAgLmNvbnRlbnQuaGFzLXByZXZpZXcgewogICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7CiAgICAgICAgfQoKICAgICAgICAucHJldmlldy1wYW5lbCwKICAgICAgICAucmVzaXplLWRpdmlkZXIgewogICAgICAgICAgZGlzcGxheTogbm9uZTsKICAgICAgICB9CiAgICAgIH0KCiAgICAgIC5zdHJlYW0tc3RhdHVzIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgZ2FwOiA0cHg7CiAgICAgICAgZm9udC1zaXplOiAxMXB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzcxNzE3YSIsIiM4ODgiKX07CiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87CiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4OwogICAgICB9CgogICAgICAuc3RyZWFtLWRvdCB7CiAgICAgICAgd2lkdGg6IDZweDsKICAgICAgICBoZWlnaHQ6IDZweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNhMWExYWEiLCIjODg4Iil9OwogICAgICB9CgogICAgICAuc3RyZWFtLWRvdC5jb25uZWN0ZWQgewogICAgICAgIGJhY2tncm91bmQ6ICMyMmM1NWU7CiAgICAgIH0KCiAgICAgIC5jaGFuZ2UtaW5kaWNhdG9yIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgZ2FwOiA2cHg7CiAgICAgICAgcGFkZGluZzogNHB4IDhweDsKICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI0NSwgMTU4LCAxMSwgMC4yKTsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgZm9udC1zaXplOiAxMXB4OwogICAgICAgIGNvbG9yOiAjZjU5ZTBiOwogICAgICAgIG1hcmdpbi1yaWdodDogMTJweDsKICAgICAgfQoKICAgICAgLmNoYW5nZS1pbmRpY2F0b3IucHVsc2UgewogICAgICAgIGFuaW1hdGlvbjogcHVsc2Utb3JhbmdlIDFzIGVhc2UtaW4tb3V0OwogICAgICB9CgogICAgICBAa2V5ZnJhbWVzIHB1bHNlLW9yYW5nZSB7CiAgICAgICAgMCUgeyBiYWNrZ3JvdW5kOiByZ2JhKDI0NSwgMTU4LCAxMSwgMC40KTsgfQogICAgICAgIDEwMCUgeyBiYWNrZ3JvdW5kOiByZ2JhKDI0NSwgMTU4LCAxMSwgMC4yKTsgfQogICAgICB9CiAgICBgXTthc3luYyBjb25uZWN0ZWRDYWxsYmFjaygpe3N1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCksdGhpcy5zdWJzY3JpYmVUb0NoYW5nZXMoKX1hc3luYyBkaXNjb25uZWN0ZWRDYWxsYmFjaygpe2F3YWl0IHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCksdGhpcy51bnN1YnNjcmliZUZyb21DaGFuZ2VzKCl9cmVmcmVzaCgpe3RoaXMucmVmcmVzaEtleSsrfXNldFZpZXdUeXBlKEwpe3RoaXMudmlld1R5cGU9TH1uYXZpZ2F0ZVRvUHJlZml4KEwpe3RoaXMuY3VycmVudFByZWZpeD1MLHRoaXMuc2VsZWN0ZWRLZXk9IiJ9aGFuZGxlS2V5U2VsZWN0ZWQoTCl7dGhpcy5zZWxlY3RlZEtleT1MLmRldGFpbC5rZXl9aGFuZGxlTmF2aWdhdGUoTCl7dGhpcy5uYXZpZ2F0ZVRvUHJlZml4KEwuZGV0YWlsLnByZWZpeCl9aGFuZGxlT2JqZWN0RGVsZXRlZChMKXt0aGlzLnNlbGVjdGVkS2V5PSIiLHRoaXMucmVmcmVzaEtleSsrfXVwZGF0ZWQoTCl7TC5oYXMoImJ1Y2tldE5hbWUiKSYmKHRoaXMuc2VsZWN0ZWRLZXk9IiIsdGhpcy5jdXJyZW50UHJlZml4PSIiLHRoaXMucmVjZW50Q2hhbmdlQ291bnQ9MCx0aGlzLnVuc3Vic2NyaWJlRnJvbUNoYW5nZXMoKSx0aGlzLnN1YnNjcmliZVRvQ2hhbmdlcygpKSxMLmhhcygib25DaGFuZ2VFdmVudCIpJiYodGhpcy51bnN1YnNjcmliZUZyb21DaGFuZ2VzKCksdGhpcy5zdWJzY3JpYmVUb0NoYW5nZXMoKSl9c3Vic2NyaWJlVG9DaGFuZ2VzKCl7aWYoIXRoaXMub25DaGFuZ2VFdmVudCl7dGhpcy5pc1N0cmVhbUNvbm5lY3RlZD0hMTtyZXR1cm59dHJ5e3RoaXMuY2hhbmdlVW5zdWJzY3JpYmU9dGhpcy5vbkNoYW5nZUV2ZW50KEw9Pnt0aGlzLmhhbmRsZUNoYW5nZShMKX0pLHRoaXMuaXNTdHJlYW1Db25uZWN0ZWQ9ITB9Y2F0Y2goTCl7Y29uc29sZS53YXJuKCJbU3RvcmFnZUJyb3dzZXJdIEZhaWxlZCB0byBzdWJzY3JpYmUgdG8gY2hhbmdlczoiLEwpLHRoaXMuaXNTdHJlYW1Db25uZWN0ZWQ9ITF9fXVuc3Vic2NyaWJlRnJvbUNoYW5nZXMoKXt0aGlzLmNoYW5nZVVuc3Vic2NyaWJlJiYodGhpcy5jaGFuZ2VVbnN1YnNjcmliZSgpLHRoaXMuY2hhbmdlVW5zdWJzY3JpYmU9bnVsbCksdGhpcy5pc1N0cmVhbUNvbm5lY3RlZD0hMX1oYW5kbGVDaGFuZ2UoTCl7dGhpcy5yZWNlbnRDaGFuZ2VDb3VudCsrLHRoaXMucmVmcmVzaEtleSsrfXN0YXJ0UHJldmlld1Jlc2l6ZT1MPT57TC5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuaXNSZXNpemluZ1ByZXZpZXc9ITAsZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vtb3ZlIix0aGlzLmhhbmRsZVByZXZpZXdSZXNpemUpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNldXAiLHRoaXMuZW5kUHJldmlld1Jlc2l6ZSl9O2hhbmRsZVByZXZpZXdSZXNpemU9TD0+e2lmKCF0aGlzLmlzUmVzaXppbmdQcmV2aWV3KXJldHVybjtsZXQgUT10aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoIi5jb250ZW50Iik7aWYoIVEpcmV0dXJuO2xldCBrZT1RLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLEc9TWF0aC5taW4oTWF0aC5tYXgoa2UucmlnaHQtTC5jbGllbnRYLDI1MCksMWUzKTt0aGlzLnByZXZpZXdXaWR0aD1HfTtlbmRQcmV2aWV3UmVzaXplPSgpPT57dGhpcy5pc1Jlc2l6aW5nUHJldmlldz0hMSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUiLHRoaXMuaGFuZGxlUHJldmlld1Jlc2l6ZSksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2V1cCIsdGhpcy5lbmRQcmV2aWV3UmVzaXplKX07cmVuZGVyKCl7bGV0IEw9dGhpcy5jdXJyZW50UHJlZml4P3RoaXMuY3VycmVudFByZWZpeC5zcGxpdCgiLyIpLmZpbHRlcihCb29sZWFuKTpbXTtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0iYnJvd3Nlci1jb250YWluZXIiPgogICAgICAgIDxkaXYgY2xhc3M9InRvb2xiYXIiPgogICAgICAgICAgPGRpdiBjbGFzcz0iYnJlYWRjcnVtYiI+CiAgICAgICAgICAgIDxzcGFuCiAgICAgICAgICAgICAgY2xhc3M9ImJyZWFkY3J1bWItaXRlbSIKICAgICAgICAgICAgICBAY2xpY2s9JHsoKT0+dGhpcy5uYXZpZ2F0ZVRvUHJlZml4KCIiKX0KICAgICAgICAgICAgPgogICAgICAgICAgICAgICR7dGhpcy5idWNrZXROYW1lfQogICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICR7TC5tYXAoKFEsa2UpPT57bGV0IEc9TC5zbGljZSgwLGtlKzEpLmpvaW4oIi8iKSsiLyI7cmV0dXJuIFNgCiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iYnJlYWRjcnVtYi1zZXBhcmF0b3IiPi88L3NwYW4+CiAgICAgICAgICAgICAgICA8c3BhbgogICAgICAgICAgICAgICAgICBjbGFzcz0iYnJlYWRjcnVtYi1pdGVtIgogICAgICAgICAgICAgICAgICBAY2xpY2s9JHsoKT0+dGhpcy5uYXZpZ2F0ZVRvUHJlZml4KEcpfQogICAgICAgICAgICAgICAgPgogICAgICAgICAgICAgICAgICAke1F9CiAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgYH0pfQogICAgICAgICAgPC9kaXY+CgogICAgICAgICAgJHt0aGlzLm9uQ2hhbmdlRXZlbnQ/U2AKICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RyZWFtLXN0YXR1cyI+CiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InN0cmVhbS1kb3QgJHt0aGlzLmlzU3RyZWFtQ29ubmVjdGVkPyJjb25uZWN0ZWQiOiIifSI+PC9zcGFuPgogICAgICAgICAgICAgICR7dGhpcy5pc1N0cmVhbUNvbm5lY3RlZD8iTGl2ZSI6Ik9mZmxpbmUifQogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIGA6IiJ9CiAgICAgICAgICAke3RoaXMucmVjZW50Q2hhbmdlQ291bnQ+MD9TYAogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2hhbmdlLWluZGljYXRvciBwdWxzZSI+CiAgICAgICAgICAgICAgICAgICR7dGhpcy5yZWNlbnRDaGFuZ2VDb3VudH0gY2hhbmdlJHt0aGlzLnJlY2VudENoYW5nZUNvdW50PjE/InMiOiIifQogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgYDoiIn0KICAgICAgICAgIDxkaXYgY2xhc3M9InZpZXctdG9nZ2xlIj4KICAgICAgICAgICAgPGJ1dHRvbgogICAgICAgICAgICAgIGNsYXNzPSJ2aWV3LWJ0biAke3RoaXMudmlld1R5cGU9PT0iY29sdW1ucyI/ImFjdGl2ZSI6IiJ9IgogICAgICAgICAgICAgIEBjbGljaz0keygpPT50aGlzLnNldFZpZXdUeXBlKCJjb2x1bW5zIil9CiAgICAgICAgICAgID4KICAgICAgICAgICAgICBDb2x1bW5zCiAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICA8YnV0dG9uCiAgICAgICAgICAgICAgY2xhc3M9InZpZXctYnRuICR7dGhpcy52aWV3VHlwZT09PSJrZXlzIj8iYWN0aXZlIjoiIn0iCiAgICAgICAgICAgICAgQGNsaWNrPSR7KCk9PnRoaXMuc2V0Vmlld1R5cGUoImtleXMiKX0KICAgICAgICAgICAgPgogICAgICAgICAgICAgIExpc3QKICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KCiAgICAgICAgPGRpdiBjbGFzcz0iY29udGVudCAke3RoaXMuc2VsZWN0ZWRLZXk/Imhhcy1wcmV2aWV3IjoiIn0iIHN0eWxlPSItLXByZXZpZXctd2lkdGg6ICR7dGhpcy5wcmV2aWV3V2lkdGh9cHgiPgogICAgICAgICAgPGRpdiBjbGFzcz0ibWFpbi12aWV3Ij4KICAgICAgICAgICAgJHt0aGlzLnZpZXdUeXBlPT09ImNvbHVtbnMiP1NgCiAgICAgICAgICAgICAgICAgIDxkZWVzLXN0b3JhZ2UtY29sdW1ucwogICAgICAgICAgICAgICAgICAgIC5kYXRhUHJvdmlkZXI9JHt0aGlzLmRhdGFQcm92aWRlcn0KICAgICAgICAgICAgICAgICAgICAuYnVja2V0TmFtZT0ke3RoaXMuYnVja2V0TmFtZX0KICAgICAgICAgICAgICAgICAgICAuY3VycmVudFByZWZpeD0ke3RoaXMuY3VycmVudFByZWZpeH0KICAgICAgICAgICAgICAgICAgICAucmVmcmVzaEtleT0ke3RoaXMucmVmcmVzaEtleX0KICAgICAgICAgICAgICAgICAgICBAa2V5LXNlbGVjdGVkPSR7dGhpcy5oYW5kbGVLZXlTZWxlY3RlZH0KICAgICAgICAgICAgICAgICAgICBAbmF2aWdhdGU9JHt0aGlzLmhhbmRsZU5hdmlnYXRlfQogICAgICAgICAgICAgICAgICA+PC9kZWVzLXN0b3JhZ2UtY29sdW1ucz4KICAgICAgICAgICAgICAgIGA6U2AKICAgICAgICAgICAgICAgICAgPGRlZXMtc3RvcmFnZS1rZXlzCiAgICAgICAgICAgICAgICAgICAgLmRhdGFQcm92aWRlcj0ke3RoaXMuZGF0YVByb3ZpZGVyfQogICAgICAgICAgICAgICAgICAgIC5idWNrZXROYW1lPSR7dGhpcy5idWNrZXROYW1lfQogICAgICAgICAgICAgICAgICAgIC5jdXJyZW50UHJlZml4PSR7dGhpcy5jdXJyZW50UHJlZml4fQogICAgICAgICAgICAgICAgICAgIC5yZWZyZXNoS2V5PSR7dGhpcy5yZWZyZXNoS2V5fQogICAgICAgICAgICAgICAgICAgIEBrZXktc2VsZWN0ZWQ9JHt0aGlzLmhhbmRsZUtleVNlbGVjdGVkfQogICAgICAgICAgICAgICAgICAgIEBuYXZpZ2F0ZT0ke3RoaXMuaGFuZGxlTmF2aWdhdGV9CiAgICAgICAgICAgICAgICAgID48L2RlZXMtc3RvcmFnZS1rZXlzPgogICAgICAgICAgICAgICAgYH0KICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICR7dGhpcy5zZWxlY3RlZEtleT9TYAogICAgICAgICAgICAgICAgPGRpdgogICAgICAgICAgICAgICAgICBjbGFzcz0icmVzaXplLWRpdmlkZXIgJHt0aGlzLmlzUmVzaXppbmdQcmV2aWV3PyJhY3RpdmUiOiIifSIKICAgICAgICAgICAgICAgICAgQG1vdXNlZG93bj0ke3RoaXMuc3RhcnRQcmV2aWV3UmVzaXplfQogICAgICAgICAgICAgICAgPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJldmlldy1wYW5lbCI+CiAgICAgICAgICAgICAgICAgIDxkZWVzLXN0b3JhZ2UtcHJldmlldwogICAgICAgICAgICAgICAgICAgIC5kYXRhUHJvdmlkZXI9JHt0aGlzLmRhdGFQcm92aWRlcn0KICAgICAgICAgICAgICAgICAgICAuYnVja2V0TmFtZT0ke3RoaXMuYnVja2V0TmFtZX0KICAgICAgICAgICAgICAgICAgICAub2JqZWN0S2V5PSR7dGhpcy5zZWxlY3RlZEtleX0KICAgICAgICAgICAgICAgICAgICBAb2JqZWN0LWRlbGV0ZWQ9JHt0aGlzLmhhbmRsZU9iamVjdERlbGV0ZWR9CiAgICAgICAgICAgICAgICAgID48L2RlZXMtc3RvcmFnZS1wcmV2aWV3PgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgYDoiIn0KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICBgfXN0YXRpY3tOYShhLHIpfX07cmV0dXJuIGZlPWF9KSgpfSk7dmFyICRJcj1sKCgpPT57fSk7dmFyIFBJcj1sKCgpPT57QmN0KCk7SGN0KCk7cWN0KCk7amN0KCk7JElyKCk7RlooKX0pO3ZhciBJSXI9bCgoKT0+e2JJcigpO1NJcigpO0NjdCgpO3pJcigpO1BJcigpfSk7dmFyIE9aLGpjLE5JcixhY2U9bCgoKT0+e1NlKCk7b3QoKTticigpO09aPWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0samM9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LE5Jcj0oKCk9PntsZXQgZT1bemUoImRlZXMtYWN0aW9uYmFyIildLHQscj1bXSxhLGk9RGUsbyxuPVtdLHM9W10sYyxkPVtdLGY9W10sdSxwPVtdLGg9W10sYix4PVtdLGc9W107dmFyIHY9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCB3PXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO289W3JlKCldLGM9W3JlKCldLHU9W3JlKCldLGI9W3JlKCldLE9aKHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiY3VycmVudEJhciIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6TT0+ImN1cnJlbnRCYXIiaW4gTSxnZXQ6TT0+TS5jdXJyZW50QmFyLHNldDooTSxGKT0+e00uY3VycmVudEJhcj1GfX0sbWV0YWRhdGE6d30sbixzKSxPWih0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InRpbWVSZW1haW5pbmciLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOk09PiJ0aW1lUmVtYWluaW5nImluIE0sZ2V0Ok09Pk0udGltZVJlbWFpbmluZyxzZXQ6KE0sRik9PntNLnRpbWVSZW1haW5pbmc9Rn19LG1ldGFkYXRhOnd9LGQsZiksT1oodGhpcyxudWxsLHUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJwcm9ncmVzc1BlcmNlbnQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOk09PiJwcm9ncmVzc1BlcmNlbnQiaW4gTSxnZXQ6TT0+TS5wcm9ncmVzc1BlcmNlbnQsc2V0OihNLEYpPT57TS5wcm9ncmVzc1BlcmNlbnQ9Rn19LG1ldGFkYXRhOnd9LHAsaCksT1oodGhpcyxudWxsLGIse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJpc1Zpc2libGUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOk09PiJpc1Zpc2libGUiaW4gTSxnZXQ6TT0+TS5pc1Zpc2libGUsc2V0OihNLEYpPT57TS5pc1Zpc2libGU9Rn19LG1ldGFkYXRhOnd9LHgsZyksT1oobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6d30sbnVsbCxyKSx2PWE9dC52YWx1ZSx3JiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnd9KX1zdGF0aWMgZGVtb0dyb3Vwcz1bIkZlZWRiYWNrIiwiT3ZlcmxheSJdO3N0YXRpYyBkZW1vPSgpPT57bGV0IHc9az0+ay5jdXJyZW50VGFyZ2V0LmNsb3Nlc3QoIi5kZW1vLWNvbnRhaW5lciIpPy5xdWVyeVNlbGVjdG9yKCJkZWVzLWFjdGlvbmJhciIpO3JldHVybiBTYAogICAgICA8c3R5bGU+CiAgICAgICAgLmRlbW8tY29udGFpbmVyIHsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgICAgaGVpZ2h0OiAzMDBweDsKICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMzMzM7CiAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7CiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIH0KICAgICAgICAuZGVtby1jb250ZW50IHsKICAgICAgICAgIGZsZXg6IDE7CiAgICAgICAgICBwYWRkaW5nOiAxNnB4OwogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGdhcDogOHB4OwogICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7CiAgICAgICAgfQogICAgICA8L3N0eWxlPgogICAgICA8ZGl2IGNsYXNzPSJkZW1vLWNvbnRhaW5lciI+CiAgICAgICAgPGRpdiBjbGFzcz0iZGVtby1jb250ZW50Ij4KICAgICAgICAgIDxkZWVzLWJ1dHRvbiBAY2xpY2s9JHthc3luYyBrPT57bGV0IE49dyhrKTtpZighTilyZXR1cm47bGV0ICQ9YXdhaXQgTi5zaG93KHttZXNzYWdlOiJGaWxlIGNoYW5nZWQgZXh0ZXJuYWxseS4gUmVsb2FkPyIsdHlwZToid2FybmluZyIsaWNvbjoibHVjaWRlOmFsZXJ0VHJpYW5nbGUiLGFjdGlvbnM6W3tpZDoicmVsb2FkIixsYWJlbDoiUmVsb2FkIixwcmltYXJ5OiEwfSx7aWQ6Imlnbm9yZSIsbGFiZWw6Iklnbm9yZSJ9XSx0aW1lb3V0OntkdXJhdGlvbjo1ZTMsZGVmYXVsdEFjdGlvbklkOiJyZWxvYWQifSxkaXNtaXNzaWJsZTohMH0pO2NvbnNvbGUubG9nKCJBY3Rpb24gYmFyIHJlc3VsdDoiLCQpfX0+V2FybmluZzwvZGVlcy1idXR0b24+CiAgICAgICAgICA8ZGVlcy1idXR0b24gQGNsaWNrPSR7YXN5bmMgaz0+e2xldCBOPXcoayk7aWYoIU4pcmV0dXJuO2xldCAkPWF3YWl0IE4uc2hvdyh7bWVzc2FnZToiUHJvY2VzcyBmYWlsZWQgd2l0aCBleGl0IGNvZGUgMSIsdHlwZToiZXJyb3IiLGljb246Imx1Y2lkZTp4Q2lyY2xlIixhY3Rpb25zOlt7aWQ6InJldHJ5IixsYWJlbDoiUmV0cnkiLHByaW1hcnk6ITB9LHtpZDoiZGlzbWlzcyIsbGFiZWw6IkRpc21pc3MifV0sdGltZW91dDp7ZHVyYXRpb246MWU0LGRlZmF1bHRBY3Rpb25JZDoiZGlzbWlzcyJ9fSk7Y29uc29sZS5sb2coIkVycm9yIGJhciByZXN1bHQ6IiwkKX19PkVycm9yPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIDxkZWVzLWJ1dHRvbiBAY2xpY2s9JHthc3luYyBrPT57bGV0IE49dyhrKTtpZighTilyZXR1cm47bGV0ICQ9YXdhaXQgTi5zaG93KHttZXNzYWdlOiJTYXZlIGNoYW5nZXMgYmVmb3JlIGNsb3Npbmc/Iix0eXBlOiJxdWVzdGlvbiIsaWNvbjoibHVjaWRlOmhlbHBDaXJjbGUiLGFjdGlvbnM6W3tpZDoic2F2ZSIsbGFiZWw6IlNhdmUiLHByaW1hcnk6ITB9LHtpZDoiZGlzY2FyZCIsbGFiZWw6IkRpc2NhcmQifSx7aWQ6ImNhbmNlbCIsbGFiZWw6IkNhbmNlbCJ9XX0pO2NvbnNvbGUubG9nKCJRdWVzdGlvbiBiYXIgcmVzdWx0OiIsJCl9fT5RdWVzdGlvbjwvZGVlcy1idXR0b24+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRlZXMtYWN0aW9uYmFyPjwvZGVlcy1hY3Rpb25iYXI+CiAgICAgIDwvZGl2PgogICAgYH07cXVldWU9W107I2U9amModGhpcyxuLG51bGwpO2dldCBjdXJyZW50QmFyKCl7cmV0dXJuIHRoaXMuI2V9c2V0IGN1cnJlbnRCYXIodyl7dGhpcy4jZT13fSN0PShqYyh0aGlzLHMpLGpjKHRoaXMsZCwwKSk7Z2V0IHRpbWVSZW1haW5pbmcoKXtyZXR1cm4gdGhpcy4jdH1zZXQgdGltZVJlbWFpbmluZyh3KXt0aGlzLiN0PXd9I3I9KGpjKHRoaXMsZiksamModGhpcyxwLDEwMCkpO2dldCBwcm9ncmVzc1BlcmNlbnQoKXtyZXR1cm4gdGhpcy4jcn1zZXQgcHJvZ3Jlc3NQZXJjZW50KHcpe3RoaXMuI3I9d30jYT0oamModGhpcyxoKSxqYyh0aGlzLHgsITEpKTtnZXQgaXNWaXNpYmxlKCl7cmV0dXJuIHRoaXMuI2F9c2V0IGlzVmlzaWJsZSh3KXt0aGlzLiNhPXd9dGltZW91dEludGVydmFsPShqYyh0aGlzLGcpLG51bGwpO2N1cnJlbnRSZXNvbHZlPW51bGw7c3RhdGljIHN0eWxlcz1bUGUsbS5kZWZhdWx0U3R5bGVzLGxlYAogICAgICA6aG9zdCB7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgIH0KCiAgICAgIC5hY3Rpb25iYXItaXRlbSB7CiAgICAgICAgZGlzcGxheTogZ3JpZDsKICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDBmcjsKICAgICAgICB0cmFuc2l0aW9uOiBncmlkLXRlbXBsYXRlLXJvd3MgMC4ycyBlYXNlLW91dDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOTYlKSIsImhzbCgwIDAlIDEyJSkiKX07CiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OCUpIiwiaHNsKDAgMCUgMjAlKSIpfTsKICAgICAgfQoKICAgICAgOmhvc3QoLnZpc2libGUpIC5hY3Rpb25iYXItaXRlbSB7CiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnI7CiAgICAgIH0KCiAgICAgIC5hY3Rpb25iYXItY29udGVudCB7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICBtaW4taGVpZ2h0OiAwOwogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2Utb3V0OwogICAgICB9CgogICAgICA6aG9zdCgudmlzaWJsZSkgLmFjdGlvbmJhci1jb250ZW50IHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICB9CgogICAgICAucHJvZ3Jlc3MtYmFyIHsKICAgICAgICBoZWlnaHQ6IDNweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOTAlKSIsImhzbCgwIDAlIDE4JSkiKX07CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgfQoKICAgICAgLnByb2dyZXNzLWJhci1maWxsIHsKICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTAgMTAwJSA1MCUpIiwiaHNsKDIxMCAxMDAlIDYwJSkiKX07CiAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggMC4xcyBsaW5lYXI7CiAgICAgIH0KCiAgICAgIC5wcm9ncmVzcy1iYXItZmlsbC53YXJuaW5nIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDM4IDkyJSA1MCUpIiwiaHNsKDM4IDkyJSA1NSUpIil9OwogICAgICB9CgogICAgICAucHJvZ3Jlc3MtYmFyLWZpbGwuZXJyb3IgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCA3MCUgNTAlKSIsImhzbCgwIDcwJSA1NSUpIil9OwogICAgICB9CgogICAgICAucHJvZ3Jlc3MtYmFyLWZpbGwucXVlc3Rpb24gewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjcwIDcwJSA1MCUpIiwiaHNsKDI3MCA3MCUgNjAlKSIpfTsKICAgICAgfQoKICAgICAgLmNvbnRlbnQgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBwYWRkaW5nOiA4cHggMTJweDsKICAgICAgICBnYXA6IDEycHg7CiAgICAgICAgbWluLWhlaWdodDogMzJweDsKICAgICAgfQoKICAgICAgLm1lc3NhZ2Utc2VjdGlvbiB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogOHB4OwogICAgICAgIGZsZXg6IDE7CiAgICAgICAgbWluLXdpZHRoOiAwOwogICAgICB9CgogICAgICAubWVzc2FnZS1pY29uIHsKICAgICAgICBmbGV4LXNocmluazogMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDQwJSkiLCJoc2woMCAwJSA2MCUpIil9OwogICAgICB9CgogICAgICAubWVzc2FnZS1pY29uLmluZm8gewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxMCAxMDAlIDQ1JSkiLCJoc2woMjEwIDEwMCUgNjAlKSIpfTsKICAgICAgfQoKICAgICAgLm1lc3NhZ2UtaWNvbi53YXJuaW5nIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgzOCA5MiUgNDUlKSIsImhzbCgzOCA5MiUgNTUlKSIpfTsKICAgICAgfQoKICAgICAgLm1lc3NhZ2UtaWNvbi5lcnJvciB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCA3MCUgNTAlKSIsImhzbCgwIDcwJSA1NSUpIil9OwogICAgICB9CgogICAgICAubWVzc2FnZS1pY29uLnF1ZXN0aW9uIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyNzAgNzAlIDUwJSkiLCJoc2woMjcwIDcwJSA2MCUpIil9OwogICAgICB9CgogICAgICAubWVzc2FnZS10ZXh0IHsKICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAyMCUpIiwiaHNsKDAgMCUgODUlKSIpfTsKICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7CiAgICAgIH0KCiAgICAgIC5hY3Rpb25zLXNlY3Rpb24gewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDhweDsKICAgICAgICBmbGV4LXNocmluazogMDsKICAgICAgfQoKICAgICAgLmFjdGlvbi1idXR0b24gewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDRweDsKICAgICAgICBwYWRkaW5nOiA0cHggMTBweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgICAgIH0KCiAgICAgIC5hY3Rpb24tYnV0dG9uLnNlY29uZGFyeSB7CiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAzMCUpIiwiaHNsKDAgMCUgNzAlKSIpfTsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4MCUpIiwiaHNsKDAgMCUgMzAlKSIpfTsKICAgICAgfQoKICAgICAgLmFjdGlvbi1idXR0b24uc2Vjb25kYXJ5OmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOTIlKSIsImhzbCgwIDAlIDE4JSkiKX07CiAgICAgIH0KCiAgICAgIC5hY3Rpb24tYnV0dG9uLnByaW1hcnkgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjEwIDEwMCUgNTAlKSIsImhzbCgyMTAgMTAwJSA1NSUpIil9OwogICAgICAgIGNvbG9yOiB3aGl0ZTsKICAgICAgfQoKICAgICAgLmFjdGlvbi1idXR0b24ucHJpbWFyeTpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTAgMTAwJSA0NSUpIiwiaHNsKDIxMCAxMDAlIDUwJSkiKX07CiAgICAgIH0KCiAgICAgIC5hY3Rpb24tYnV0dG9uLnByaW1hcnkud2FybmluZyB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgzOCA5MiUgNDUlKSIsImhzbCgzOCA5MiUgNTAlKSIpfTsKICAgICAgfQoKICAgICAgLmFjdGlvbi1idXR0b24ucHJpbWFyeS53YXJuaW5nOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDM4IDkyJSA0MCUpIiwiaHNsKDM4IDkyJSA0NSUpIil9OwogICAgICB9CgogICAgICAuYWN0aW9uLWJ1dHRvbi5wcmltYXJ5LmVycm9yIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgNzAlIDUwJSkiLCJoc2woMCA3MCUgNTUlKSIpfTsKICAgICAgfQoKICAgICAgLmFjdGlvbi1idXR0b24ucHJpbWFyeS5lcnJvcjpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDcwJSA0NSUpIiwiaHNsKDAgNzAlIDUwJSkiKX07CiAgICAgIH0KCiAgICAgIC5hY3Rpb24tYnV0dG9uLnByaW1hcnkucXVlc3Rpb24gewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjcwIDcwJSA1MCUpIiwiaHNsKDI3MCA3MCUgNTUlKSIpfTsKICAgICAgfQoKICAgICAgLmFjdGlvbi1idXR0b24ucHJpbWFyeS5xdWVzdGlvbjpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyNzAgNzAlIDQ1JSkiLCJoc2woMjcwIDcwJSA1MCUpIil9OwogICAgICB9CgogICAgICAuY291bnRkb3duIHsKICAgICAgICBmb250LXNpemU6IDExcHg7CiAgICAgICAgb3BhY2l0eTogMC44OwogICAgICAgIG1hcmdpbi1sZWZ0OiAycHg7CiAgICAgIH0KCiAgICAgIC5kaXNtaXNzLWJ1dHRvbiB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIHdpZHRoOiAyMHB4OwogICAgICAgIGhlaWdodDogMjBweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNTAlKSIsImhzbCgwIDAlIDUwJSkiKX07CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgIH0KCiAgICAgIC5kaXNtaXNzLWJ1dHRvbjpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDg4JSkiLCJoc2woMCAwJSAyMiUpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMzAlKSIsImhzbCgwIDAlIDcwJSkiKX07CiAgICAgIH0KICAgIGBdO3JlbmRlcigpe2xldCB3PXRoaXMuY3VycmVudEJhcixNPXc/LnR5cGV8fCJpbmZvIixGPXc/LnRpbWVvdXQmJnRoaXMudGltZVJlbWFpbmluZz4wO3JldHVybiBTYAogICAgICA8ZGl2IGNsYXNzPSJhY3Rpb25iYXItaXRlbSI+CiAgICAgICAgPGRpdiBjbGFzcz0iYWN0aW9uYmFyLWNvbnRlbnQiPgogICAgICAgICAgJHt3P1NgCiAgICAgICAgICAgICR7Rj9TYAogICAgICAgICAgICAgIDxkaXYgY2xhc3M9InByb2dyZXNzLWJhciI+CiAgICAgICAgICAgICAgICA8ZGl2CiAgICAgICAgICAgICAgICAgIGNsYXNzPSJwcm9ncmVzcy1iYXItZmlsbCAke019IgogICAgICAgICAgICAgICAgICBzdHlsZT0id2lkdGg6ICR7dGhpcy5wcm9ncmVzc1BlcmNlbnR9JSIKICAgICAgICAgICAgICAgID48L2Rpdj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgYDoiIn0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGVudCI+CiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWVzc2FnZS1zZWN0aW9uIj4KICAgICAgICAgICAgICAgICR7dy5pY29uP1NgCiAgICAgICAgICAgICAgICAgIDxkZWVzLWljb24KICAgICAgICAgICAgICAgICAgICBjbGFzcz0ibWVzc2FnZS1pY29uICR7TX0iCiAgICAgICAgICAgICAgICAgICAgLmljb249JHt3Lmljb259CiAgICAgICAgICAgICAgICAgICAgaWNvblNpemU9IjE2IgogICAgICAgICAgICAgICAgICA+PC9kZWVzLWljb24+CiAgICAgICAgICAgICAgICBgOiIifQogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im1lc3NhZ2UtdGV4dCI+JHt3Lm1lc3NhZ2V9PC9zcGFuPgogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFjdGlvbnMtc2VjdGlvbiI+CiAgICAgICAgICAgICAgICAke3cuYWN0aW9ucy5tYXAoQz0+dGhpcy5yZW5kZXJBY3Rpb25CdXR0b24oQyx3LEYpKX0KICAgICAgICAgICAgICAgICR7dy5kaXNtaXNzaWJsZT9TYAogICAgICAgICAgICAgICAgICA8ZGl2CiAgICAgICAgICAgICAgICAgICAgY2xhc3M9ImRpc21pc3MtYnV0dG9uIgogICAgICAgICAgICAgICAgICAgIEBjbGljaz0keygpPT50aGlzLmhhbmRsZURpc21pc3MoKX0KICAgICAgICAgICAgICAgICAgICB0aXRsZT0iRGlzbWlzcyIKICAgICAgICAgICAgICAgICAgPgogICAgICAgICAgICAgICAgICAgIDxkZWVzLWljb24gLmljb249JHsibHVjaWRlOngifSBpY29uU2l6ZT0iMTQiPjwvZGVlcy1pY29uPgogICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIGA6IiJ9CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgYDoiIn0KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICBgfXJlbmRlckFjdGlvbkJ1dHRvbih3LE0sRil7bGV0IEM9dy5wcmltYXJ5LGs9TS50eXBlfHwiaW5mbyIsTj1NLnRpbWVvdXQ/LmRlZmF1bHRBY3Rpb25JZD09PXcuaWQsJD1GJiZOLEk9TWF0aC5jZWlsKHRoaXMudGltZVJlbWFpbmluZy8xZTMpO3JldHVybiBTYAogICAgICA8YnV0dG9uCiAgICAgICAgY2xhc3M9ImFjdGlvbi1idXR0b24gJHtDP2BwcmltYXJ5ICR7a31gOiJzZWNvbmRhcnkifSIKICAgICAgICBAY2xpY2s9JHsoKT0+dGhpcy5oYW5kbGVBY3Rpb24ody5pZCwhMSl9CiAgICAgID4KICAgICAgICAke3cuaWNvbj9TYAogICAgICAgICAgPGRlZXMtaWNvbiAuaWNvbj0ke3cuaWNvbn0gaWNvblNpemU9IjEyIj48L2RlZXMtaWNvbj4KICAgICAgICBgOiIifQogICAgICAgIDxzcGFuPiR7dy5sYWJlbH08L3NwYW4+CiAgICAgICAgJHskP1NgCiAgICAgICAgICA8c3BhbiBjbGFzcz0iY291bnRkb3duIj4oJHtJfXMpPC9zcGFuPgogICAgICAgIGA6IiJ9CiAgICAgIDwvYnV0dG9uPgogICAgYH1hc3luYyBzaG93KHcpe3JldHVybiBuZXcgUHJvbWlzZShNPT57dGhpcy5xdWV1ZS5wdXNoKHtvcHRpb25zOncscmVzb2x2ZTpNfSksdGhpcy5jdXJyZW50QmFyfHx0aGlzLnByb2Nlc3NRdWV1ZSgpfSl9ZGlzbWlzcygpe3RoaXMuaGFuZGxlRGlzbWlzcygpfWNsZWFyUXVldWUoKXtmb3IobGV0IHcgb2YgdGhpcy5xdWV1ZSl3LnJlc29sdmUoe2FjdGlvbklkOiJkaXNtaXNzZWQiLHRpbWVkT3V0OiExfSk7dGhpcy5xdWV1ZT1bXX1hc3luYyBoaWRlQ3VycmVudEJhcigpe3RoaXMuY2xhc3NMaXN0LnJlbW92ZSgidmlzaWJsZSIpLHRoaXMuaXNWaXNpYmxlPSExLGF3YWl0IG5ldyBQcm9taXNlKHc9PnNldFRpbWVvdXQodywyMjApKSx0aGlzLmN1cnJlbnRCYXI9bnVsbCx0aGlzLmN1cnJlbnRSZXNvbHZlPW51bGx9YXN5bmMgcHJvY2Vzc1F1ZXVlKCl7aWYodGhpcy5xdWV1ZS5sZW5ndGg9PT0wKXt0aGlzLmhpZGVDdXJyZW50QmFyKCk7cmV0dXJufWxldCB3PXRoaXMucXVldWUuc2hpZnQoKTt0aGlzLmN1cnJlbnRCYXI9dy5vcHRpb25zLHRoaXMuY3VycmVudFJlc29sdmU9dy5yZXNvbHZlLHRoaXMuaXNWaXNpYmxlPSEwLGF3YWl0IHRoaXMudXBkYXRlQ29tcGxldGUscmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57dGhpcy5jbGFzc0xpc3QuYWRkKCJ2aXNpYmxlIil9KSx3Lm9wdGlvbnMudGltZW91dCYmdGhpcy5zdGFydFRpbWVvdXQody5vcHRpb25zLnRpbWVvdXQuZHVyYXRpb24sdy5vcHRpb25zLnRpbWVvdXQuZGVmYXVsdEFjdGlvbklkKX1zdGFydFRpbWVvdXQodyxNKXt0aGlzLnRpbWVSZW1haW5pbmc9dyx0aGlzLnByb2dyZXNzUGVyY2VudD0xMDA7bGV0IEY9RGF0ZS5ub3coKSxDPTUwO3RoaXMudGltZW91dEludGVydmFsPXNldEludGVydmFsKCgpPT57bGV0IGs9RGF0ZS5ub3coKS1GO3RoaXMudGltZVJlbWFpbmluZz1NYXRoLm1heCgwLHctayksdGhpcy5wcm9ncmVzc1BlcmNlbnQ9dGhpcy50aW1lUmVtYWluaW5nL3cqMTAwLHRoaXMudGltZVJlbWFpbmluZzw9MCYmKHRoaXMuY2xlYXJUaW1lb3V0SW50ZXJ2YWwoKSx0aGlzLmhhbmRsZUFjdGlvbihNLCEwKSl9LEMpfWNsZWFyVGltZW91dEludGVydmFsKCl7dGhpcy50aW1lb3V0SW50ZXJ2YWwmJihjbGVhckludGVydmFsKHRoaXMudGltZW91dEludGVydmFsKSx0aGlzLnRpbWVvdXRJbnRlcnZhbD1udWxsKX1oYW5kbGVBY3Rpb24odyxNKXt0aGlzLmNsZWFyVGltZW91dEludGVydmFsKCksdGhpcy5jdXJyZW50UmVzb2x2ZSYmdGhpcy5jdXJyZW50UmVzb2x2ZSh7YWN0aW9uSWQ6dyx0aW1lZE91dDpNfSksdGhpcy5wcm9jZXNzUXVldWUoKX1oYW5kbGVEaXNtaXNzKCl7dGhpcy5oYW5kbGVBY3Rpb24oImRpc21pc3NlZCIsITEpfWFzeW5jIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCl7YXdhaXQgc3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKSx0aGlzLmNsZWFyVGltZW91dEludGVydmFsKCl9c3RhdGlje2pjKGEscil9fTtyZXR1cm4gdj1hfSkoKX0pO3ZhciBGSXI9bCgoKT0+e30pO3ZhciBPSXI9bCgoKT0+e2FjZSgpO0ZJcigpfSk7dmFyIFJJcixCSXI9bCgoKT0+e1NlKCk7UklyPSgpPT5TYAogIDxkaXYgc3R5bGU9ImRpc3BsYXk6IGZsZXg7IGdhcDogOHB4OyBhbGlnbi1pdGVtczogY2VudGVyOyI+CiAgICA8ZGVlcy1iYWRnZSAudGV4dD0keyJEZWZhdWx0In0+PC9kZWVzLWJhZGdlPgogICAgPGRlZXMtYmFkZ2UgLnR5cGU9JHsicHJpbWFyeSJ9IC50ZXh0PSR7IlByaW1hcnkifT48L2RlZXMtYmFkZ2U+CiAgICA8ZGVlcy1iYWRnZSAudHlwZT0keyJzdWNjZXNzIn0gLnRleHQ9JHsiU3VjY2VzcyJ9PjwvZGVlcy1iYWRnZT4KICAgIDxkZWVzLWJhZGdlIC50eXBlPSR7Indhcm5pbmcifSAudGV4dD0keyJXYXJuaW5nIn0+PC9kZWVzLWJhZGdlPgogICAgPGRlZXMtYmFkZ2UgLnR5cGU9JHsiZXJyb3IifSAudGV4dD0keyJFcnJvciJ9PjwvZGVlcy1iYWRnZT4KICAgIDxkZWVzLWJhZGdlIC50eXBlPSR7InByaW1hcnkifSAucm91bmRlZD0keyEwfSAudGV4dD0keyJSb3VuZGVkIn0+PC9kZWVzLWJhZGdlPgogIDwvZGl2PgpgfSk7dmFyIGljZSxCOCxISXIscUlyPWwoKCk9PntTZSgpO2VyKCk7QklyKCk7b3QoKTtpY2U9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxCOD1mdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MixpPTA7aTx0Lmxlbmd0aDtpKyspcj1hP3RbaV0uY2FsbChlLHIpOnRbaV0uY2FsbChlKTtyZXR1cm4gYT9yOnZvaWQgMH0sSElyPSgoKT0+e2xldCBlPVt6ZSgiZGVlcy1iYWRnZSIpXSx0LHI9W10sYSxpPURlLG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdLHUscD1bXSxoPVtdO3ZhciBiPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgeD10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHt0eXBlOlN0cmluZ30pXSxjPVtqKHt0eXBlOlN0cmluZ30pXSx1PVtqKHt0eXBlOkJvb2xlYW59KV0saWNlKHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToidHlwZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Zz0+InR5cGUiaW4gZyxnZXQ6Zz0+Zy50eXBlLHNldDooZyx2KT0+e2cudHlwZT12fX0sbWV0YWRhdGE6eH0sbixzKSxpY2UodGhpcyxudWxsLGMse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ0ZXh0IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpnPT4idGV4dCJpbiBnLGdldDpnPT5nLnRleHQsc2V0OihnLHYpPT57Zy50ZXh0PXZ9fSxtZXRhZGF0YTp4fSxkLGYpLGljZSh0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InJvdW5kZWQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmc9PiJyb3VuZGVkImluIGcsZ2V0Omc9Pmcucm91bmRlZCxzZXQ6KGcsdik9PntnLnJvdW5kZWQ9dn19LG1ldGFkYXRhOnh9LHAsaCksaWNlKG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOnh9LG51bGwsciksYj1hPXQudmFsdWUseCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTp4fSl9c3RhdGljIGRlbW89UklyO3N0YXRpYyBkZW1vR3JvdXBzPVsiRmVlZGJhY2siXTsjZT1COCh0aGlzLG4sImRlZmF1bHQiKTtnZXQgdHlwZSgpe3JldHVybiB0aGlzLiNlfXNldCB0eXBlKHgpe3RoaXMuI2U9eH0jdD0oQjgodGhpcyxzKSxCOCh0aGlzLGQsIiIpKTtnZXQgdGV4dCgpe3JldHVybiB0aGlzLiN0fXNldCB0ZXh0KHgpe3RoaXMuI3Q9eH0jcj0oQjgodGhpcyxmKSxCOCh0aGlzLHAsITEpKTtnZXQgcm91bmRlZCgpe3JldHVybiB0aGlzLiNyfXNldCByb3VuZGVkKHgpe3RoaXMuI3I9eH1jb25zdHJ1Y3Rvcigpe3N1cGVyKCksQjgodGhpcyxoKSxrYS5zZXR1cCgpfXN0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgLyogVE9ETzogTWlncmF0ZSBoYXJkY29kZWQgdmFsdWVzIHRvIC0tZGVlcy0qIENTUyB2YXJpYWJsZXMgKi8KICAgICAgOmhvc3QgewogICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgICAgfQoKICAgICAgLmJhZGdlIHsKICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIHBhZGRpbmc6IDJweCA4cHg7CiAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKICAgICAgfQoKICAgICAgLmJhZGdlLnJvdW5kZWQgewogICAgICAgIGJvcmRlci1yYWRpdXM6IDEycHg7CiAgICAgIH0KCiAgICAgIC5iYWRnZS5kZWZhdWx0IHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2Y1ZjVmNSIsIiMzMzMiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNjY2IiwiI2NjYyIpfTsKICAgICAgfQoKICAgICAgLmJhZGdlLnByaW1hcnkgewogICAgICAgIGJhY2tncm91bmQ6ICMwMDUwYjk7CiAgICAgICAgY29sb3I6ICNmZmZmZmY7CiAgICAgIH0KCiAgICAgIC5iYWRnZS5zdWNjZXNzIHsKICAgICAgICBiYWNrZ3JvdW5kOiAjMmU3ZDMyOwogICAgICAgIGNvbG9yOiAjZmZmZmZmOwogICAgICB9CgogICAgICAuYmFkZ2Uud2FybmluZyB7CiAgICAgICAgYmFja2dyb3VuZDogI2VkNmMwMjsKICAgICAgICBjb2xvcjogI2ZmZmZmZjsKICAgICAgfQoKICAgICAgLmJhZGdlLmVycm9yIHsKICAgICAgICBiYWNrZ3JvdW5kOiAjZTQwMDJiOwogICAgICAgIGNvbG9yOiAjZmZmZmZmOwogICAgICB9CiAgICBgXTtyZW5kZXIoKXtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0iYmFkZ2UgJHt0aGlzLnR5cGV9ICR7dGhpcy5yb3VuZGVkPyJyb3VuZGVkIjoiIn0iPgogICAgICAgICR7dGhpcy50ZXh0fQogICAgICA8L2Rpdj4KICAgIGB9c3RhdGlje0I4KGEscil9fTtyZXR1cm4gYj1hfSkoKX0pO3ZhciBqSXI9bCgoKT0+e3FJcigpfSk7dmFyIFZJcixVSXI9bCgoKT0+e1NlKCk7VklyPSgpPT5TYAogIDxkZWVzLWhpbnQ+PC9kZWVzLWhpbnQ+CmB9KTt2YXIgV0lyLFZjdCxHSXIsWUlyPWwoKCk9PntTZSgpO2VyKCk7VUlyKCk7b3QoKTtXSXI9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxWY3Q9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LEdJcj0oKCk9PntsZXQgZT1bemUoImRlZXMtaGludCIpXSx0LHI9W10sYSxpPURlLG8sbj1bXSxzPVtdO3ZhciBjPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgZD10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHt0eXBlOlN0cmluZ30pXSxXSXIodGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ0eXBlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpmPT4idHlwZSJpbiBmLGdldDpmPT5mLnR5cGUsc2V0OihmLHUpPT57Zi50eXBlPXV9fSxtZXRhZGF0YTpkfSxuLHMpLFdJcihudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTpkfSxudWxsLHIpLGM9YT10LnZhbHVlLGQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6ZH0pfXN0YXRpYyBkZW1vPVZJcjtzdGF0aWMgZGVtb0dyb3Vwcz1bIkZlZWRiYWNrIl07I2U9VmN0KHRoaXMsbiwiaW5mbyIpO2dldCB0eXBlKCl7cmV0dXJuIHRoaXMuI2V9c2V0IHR5cGUoZCl7dGhpcy4jZT1kfWNvbnN0cnVjdG9yKCl7c3VwZXIoKSxWY3QodGhpcyxzKSxrYS5zZXR1cCgpfXN0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgLyogVE9ETzogTWlncmF0ZSBoYXJkY29kZWQgdmFsdWVzIHRvIC0tZGVlcy0qIENTUyB2YXJpYWJsZXMgKi8KICAgIGBdO3JlbmRlcigpe3JldHVybiBTYCA8ZGl2IGNsYXNzPSJtYWluYm94Ij48L2Rpdj4gYH1zdGF0aWN7VmN0KGEscil9fTtyZXR1cm4gYz1hfSkoKX0pO3ZhciBaSXI9bCgoKT0+e1lJcigpfSk7dmFyIFhJcixRSXI9bCgoKT0+e1NlKCk7VWN0KCk7WElyPSgpPT5TYAogICAgPGRlZXMtcHJvZ3Jlc3NiYXIKICAgICAgLnBlcmNlbnRhZ2U9JHs1MH0KICAgID48L2RlZXMtcHJvZ3Jlc3NiYXI+CiAgYH0pO3ZhciBLSXIsV2N0LEpJcixVY3Q9bCgoKT0+e09pKCk7Vm4oKTtRSXIoKTtTZSgpO2VyKCk7b3QoKTtLSXI9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxXY3Q9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LEpJcj0oKCk9PntsZXQgZT1bemUoImRlZXMtcHJvZ3Jlc3NiYXIiKV0sdCxyPVtdLGEsaT1EZSxvLG49W10scz1bXTt2YXIgYz1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IGQ9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baih7dHlwZTpOdW1iZXJ9KV0sS0lyKHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToicGVyY2VudGFnZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Zj0+InBlcmNlbnRhZ2UiaW4gZixnZXQ6Zj0+Zi5wZXJjZW50YWdlLHNldDooZix1KT0+e2YucGVyY2VudGFnZT11fX0sbWV0YWRhdGE6ZH0sbixzKSxLSXIobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6ZH0sbnVsbCxyKSxjPWE9dC52YWx1ZSxkJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOmR9KX1zdGF0aWMgZGVtbz1YSXI7c3RhdGljIGRlbW9Hcm91cHM9WyJGZWVkYmFjayJdOyNlPVdjdCh0aGlzLG4sMCk7Z2V0IHBlcmNlbnRhZ2UoKXtyZXR1cm4gdGhpcy4jZX1zZXQgcGVyY2VudGFnZShkKXt0aGlzLiNlPWR9c3RhdGljIHN0eWxlcz1bUGUsbS5kZWZhdWx0U3R5bGVzLGxlYAogICAgICAvKiBUT0RPOiBNaWdyYXRlIGhhcmRjb2RlZCB2YWx1ZXMgdG8gLS1kZWVzLSogQ1NTIHZhcmlhYmxlcyAqLwogICAgICA6aG9zdCB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKE04LnRleHQsam4udGV4dCl9OwogICAgICB9CiAgICAgIC5wcm9ncmVzc0JhckNvbnRhaW5lciB7CiAgICAgICAgcGFkZGluZzogOHB4OwogICAgICAgIG1pbi13aWR0aDogMjAwcHg7CiAgICAgIH0KCiAgICAgIC5wcm9ncmVzc0JhciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNlZWVlZWIiLCIjNDQ0Iil9OwogICAgICAgIGhlaWdodDogOHB4OwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgICBib3JkZXItdG9wOiAwLjVweCBzb2xpZCAke20uYmRUaGVtZSgibm9uZSIsIiM1NTUiKX07CiAgICAgIH0KCiAgICAgIC5wcm9ncmVzc0JhckZpbGwgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKGpuLmJsdWVBY3RpdmUsTTguYmx1ZUFjdGl2ZSl9OwogICAgICAgIGhlaWdodDogOHB4OwogICAgICAgIG1hcmdpbi10b3A6IC0wLjVweDsKICAgICAgICB0cmFuc2l0aW9uOiAwLjJzIHdpZHRoOwogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgICB3aWR0aDogMHB4OwogICAgICAgIGJvcmRlci10b3A6IDAuNSBzb2xpZCAke20uYmRUaGVtZSgibm9uZSIsIiMzOThmZmYiKX07CiAgICAgIH0KCiAgICAgIC5wcm9ncmVzc1RleHQgewogICAgICAgIHBhZGRpbmc6IDhweDsKICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgIH0KICAgIGBdO3JlbmRlcigpe3JldHVybiBTYAogICAgICA8ZGl2IGNsYXNzPSJwcm9ncmVzc0JhckNvbnRhaW5lciI+CiAgICAgICAgPGRpdiBjbGFzcz0icHJvZ3Jlc3NCYXIiPgogICAgICAgICAgPGRpdiBjbGFzcz0icHJvZ3Jlc3NCYXJGaWxsIj48L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9InByb2dyZXNzVGV4dCI+CiAgICAgICAgICAgICR7dGhpcy5wZXJjZW50YWdlfSUKICAgICAgICAgIDxkaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgYH1maXJzdFVwZGF0ZWQoZCl7c3VwZXIuZmlyc3RVcGRhdGVkKGQpLHRoaXMudXBkYXRlQ29tcGxldGUudGhlbigoKT0+e3RoaXMudXBkYXRlUGVyY2VudGFnZSgpfSl9YXN5bmMgdXBkYXRlUGVyY2VudGFnZSgpe2xldCBkPXRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCIucHJvZ3Jlc3NCYXJGaWxsIik7ZC5zdHlsZS53aWR0aD1gJHt0aGlzLnBlcmNlbnRhZ2V9JWB9dXBkYXRlZCgpe3RoaXMudXBkYXRlUGVyY2VudGFnZSgpfWNvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKSxXY3QodGhpcyxzKX1zdGF0aWN7V2N0KGEscil9fTtyZXR1cm4gYz1hfSkoKX0pO3ZhciBlTnI9bCgoKT0+e1VjdCgpfSk7dmFyIG9jZSxIOCx0TnIsck5yPWwoKCk9PntTZSgpO2VyKCk7b3QoKTtvY2U9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxIOD1mdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MixpPTA7aTx0Lmxlbmd0aDtpKyspcj1hP3RbaV0uY2FsbChlLHIpOnRbaV0uY2FsbChlKTtyZXR1cm4gYT9yOnZvaWQgMH0sdE5yPSgoKT0+e2xldCBlPVt6ZSgiZGVlcy1zcGlubmVyIildLHQscj1bXSxhLGk9RGUsbyxuPVtdLHM9W10sYyxkPVtdLGY9W10sdSxwPVtdLGg9W107dmFyIGI9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCB4PXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO289W2ooe3R5cGU6TnVtYmVyfSldLGM9W2ooe3R5cGU6U3RyaW5nfSldLHU9W2ooKV0sb2NlKHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2l6ZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Zz0+InNpemUiaW4gZyxnZXQ6Zz0+Zy5zaXplLHNldDooZyx2KT0+e2cuc2l6ZT12fX0sbWV0YWRhdGE6eH0sbixzKSxvY2UodGhpcyxudWxsLGMse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJibnciLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmc9PiJibnciaW4gZyxnZXQ6Zz0+Zy5ibncsc2V0OihnLHYpPT57Zy5ibnc9dn19LG1ldGFkYXRhOnh9LGQsZiksb2NlKHRoaXMsbnVsbCx1LHtraW5kOiJhY2Nlc3NvciIsbmFtZToic3RhdHVzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpnPT4ic3RhdHVzImluIGcsZ2V0Omc9Pmcuc3RhdHVzLHNldDooZyx2KT0+e2cuc3RhdHVzPXZ9fSxtZXRhZGF0YTp4fSxwLGgpLG9jZShudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTp4fSxudWxsLHIpLGI9YT10LnZhbHVlLHgmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6eH0pfXN0YXRpYyBkZW1vR3JvdXBzPVsiRmVlZGJhY2siXTtzdGF0aWMgZGVtbz0oKT0+U2AKICAgIDxkZWVzLXNwaW5uZXI+PC9kZWVzLXNwaW5uZXI+CiAgICA8ZGVlcy1zcGlubmVyIHN0YXR1cz0ic3VjY2VzcyI+PC9kZWVzLXNwaW5uZXI+CiAgICA8ZGVlcy1zcGlubmVyIHN0YXR1cz0iZXJyb3IiPjwvZGVlcy1zcGlubmVyPgogICAgPGRlZXMtc3Bpbm5lciBzaXplPSR7NjR9IHN0YXR1cz0ic3VjY2VzcyI+PC9kZWVzLXNwaW5uZXI+CiAgICA8ZGVlcy1zcGlubmVyIC5zaXplPSR7NjR9IHN0YXR1cz0iZXJyb3IiPjwvZGVlcy1zcGlubmVyPgogIGA7I2U9SDgodGhpcyxuLDIwKTtnZXQgc2l6ZSgpe3JldHVybiB0aGlzLiNlfXNldCBzaXplKHgpe3RoaXMuI2U9eH0jdD0oSDgodGhpcyxzKSxIOCh0aGlzLGQsITEpKTtnZXQgYm53KCl7cmV0dXJuIHRoaXMuI3R9c2V0IGJudyh4KXt0aGlzLiN0PXh9I3I9KEg4KHRoaXMsZiksSDgodGhpcyxwLCJub3JtYWwiKSk7Z2V0IHN0YXR1cygpe3JldHVybiB0aGlzLiNyfXNldCBzdGF0dXMoeCl7dGhpcy4jcj14fWNvbnN0cnVjdG9yKCl7c3VwZXIoKSxIOCh0aGlzLGgpfXN0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgLyogVE9ETzogTWlncmF0ZSBoYXJkY29kZWQgdmFsdWVzIHRvIC0tZGVlcy0qIENTUyB2YXJpYWJsZXMgKi8KICAgICAgOmhvc3QgewogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICB9CgogICAgICAjbG9hZGluZyB7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIHRyYW5zaXRpb246IG5vbmU7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgYmFja2dyb3VuZDogIzhiYzM0YTAwOwogICAgICAgIGJvcmRlcjogM3B4IHNvbGlkICR7bS5iZFRoZW1lKCJyZ2JhKDAsIDAsIDAsIDAuMSkiLCJyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMykiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgICAgIGJvcmRlci10b3AtY29sb3I6ICR7bS5iZFRoZW1lKCIjMzMzIiwiI2ZmZiIpfTsKICAgICAgICBhbmltYXRpb246IHNwaW4gMXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7CiAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IHNwaW4gMXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7CiAgICAgIH0KCiAgICAgICNsb2FkaW5nLnN1Y2Nlc3MgewogICAgICAgIGJvcmRlcjogbm9uZTsKICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICAgICAgYW5pbWF0aW9uOiBub25lOwogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBub25lOwogICAgICB9CgogICAgICAjbG9hZGluZy5lcnJvciB7CiAgICAgICAgYm9yZGVyOiBub25lOwogICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsKICAgICAgICBhbmltYXRpb246IG5vbmU7CiAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IG5vbmU7CiAgICAgIH0KCiAgICAgIEBrZXlmcmFtZXMgc3BpbiB7CiAgICAgICAgdG8gewogICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOwogICAgICAgIH0KICAgICAgfQogICAgICBALXdlYmtpdC1rZXlmcmFtZXMgc3BpbiB7CiAgICAgICAgdG8gewogICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOwogICAgICAgIH0KICAgICAgfQoKICAgICAgZGVlcy1pY29uIHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICB9CiAgICBgXTtyZW5kZXIoKXtyZXR1cm4gU2AKICAgICAgPHN0eWxlPgogICAgICAgICNsb2FkaW5nIHsKICAgICAgICAgIHdpZHRoOiAke3RoaXMuc2l6ZX1weDsKICAgICAgICAgIGhlaWdodDogJHt0aGlzLnNpemV9cHg7CiAgICAgICAgfQogICAgICAgICNsb2FkaW5nLnN1Y2Nlc3MgewogICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKHRoaXMuYm53PyIjMzMzIjoiIzhiYzM0YSIsdGhpcy5ibnc/IiNmZmYiOiIjOGJjMzRhIil9OwogICAgICAgICAgCiAgICAgICAgfQogICAgICAgICNsb2FkaW5nLmVycm9yIHsKICAgICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSh0aGlzLmJudz8iIzMzMyI6IiNlNjRhMTkiLHRoaXMuYm53PyIjZmZmIjoiI2U2NGExOSIpfTsKICAgICAgICB9CiAgICAgICAgZGVlcy1pY29uIHsKICAgICAgICAgIGZvbnQtc2l6ZTogJHt0aGlzLnNpemV9cHg7CiAgICAgICAgfQogICAgICA8L3N0eWxlPgogICAgICA8ZGl2IGNsYXNzPSIke3RoaXMuc3RhdHVzfSIgaWQ9ImxvYWRpbmciPgogICAgICAgICR7KCgpPT57aWYodGhpcy5zdGF0dXM9PT0ic3VjY2VzcyIpcmV0dXJuIFNgPGRlZXMtaWNvbiBzdHlsZT0idHJhbnNmb3JtOiB0cmFuc2xhdGVYKDElKSB0cmFuc2xhdGVZKDMlKTsiIC5pY29uPSR7ImZhOmNpcmNsZS1jaGVjayJ9PjwvZGVlcy1pY29uPmA7aWYodGhpcy5zdGF0dXM9PT0iZXJyb3IiKXJldHVybiBTYDxkZWVzLWljb24gLmljb249JHsiZmE6Y2lyY2xlLXhtYXJrIn0+PC9kZWVzLWljb24+YH0pKCl9CiAgICAgIDwvZGl2PgogICAgYH1zdGF0aWN7SDgoYSxyKX19O3JldHVybiBiPWF9KSgpfSk7dmFyIGFOcj1sKCgpPT57ck5yKCl9KTt2YXIgaU5yLG9Ocj1sKCgpPT57U2UoKTtHY3QoKTtvMygpO2lOcj0oKT0+U2AKICAgIDxzdHlsZT4KICAgICAgLmRlbW8tY29udGFpbmVyIHsKICAgICAgICBwYWRkaW5nOiAzMnB4OwogICAgICAgIG1pbi1oZWlnaHQ6IDEwMHZoOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjhmOWZhIiwiIzBhMGEwYSIpfTsKICAgICAgfQoKICAgICAgLmRlbW8tc2VjdGlvbiB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDhweDsKICAgICAgfQoKICAgICAgLmRlbW8tdGl0bGUgewogICAgICAgIGZvbnQtc2l6ZTogMjRweDsKICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMzMzIiwiI2ZmZiIpfTsKICAgICAgfQoKICAgICAgLmRlbW8tZGVzY3JpcHRpb24gewogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM2NjYiLCIjYWFhIil9OwogICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7CiAgICAgIH0KCiAgICAgIC5idXR0b24tZ3JpZCB7CiAgICAgICAgZGlzcGxheTogZ3JpZDsKICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDIwMHB4LCAxZnIpKTsKICAgICAgICBnYXA6IDE2cHg7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzJweDsKICAgICAgfQoKICAgICAgLnRoZW1lLXRvZ2dsZSB7CiAgICAgICAgcG9zaXRpb246IGZpeGVkOwogICAgICAgIHRvcDogMTZweDsKICAgICAgICByaWdodDogMTZweDsKICAgICAgICB6LWluZGV4OiAxMDA7CiAgICAgIH0KICAgIDwvc3R5bGU+CgogICAgPGRpdiBjbGFzcz0iZGVtby1jb250YWluZXIiPgogICAgICA8ZGVlcy1idXR0b24gY2xhc3M9InRoZW1lLXRvZ2dsZSIgQGNsaWNrZWQ9JHsoKT0+e2RvY3VtZW50LmJvZHkuY2xhc3NMaXN0LnRvZ2dsZSgiYnJpZ2h0Iil9fT5Ub2dnbGUgVGhlbWU8L2RlZXMtYnV0dG9uPgoKICAgICAgPGRpdiBjbGFzcz0iZGVtby1zZWN0aW9uIj4KICAgICAgICA8aDIgY2xhc3M9ImRlbW8tdGl0bGUiPlRvYXN0IFR5cGVzPC9oMj4KICAgICAgICA8cCBjbGFzcz0iZGVtby1kZXNjcmlwdGlvbiI+CiAgICAgICAgICBEaWZmZXJlbnQgdG9hc3QgdHlwZXMgZm9yIHZhcmlvdXMgbm90aWZpY2F0aW9uIHNjZW5hcmlvcy4gQ2xpY2sgYW55IGJ1dHRvbiB0byBzaG93IGEgdG9hc3QuCiAgICAgICAgPC9wPgogICAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbi1ncmlkIj4KICAgICAgICAgIDxkZWVzLWJ1dHRvbiBAY2xpY2tlZD0keygpPT57THIuaW5mbygiVGhpcyBpcyBhbiBpbmZvcm1hdGlvbmFsIG1lc3NhZ2UiKX19PkluZm8gVG9hc3Q8L2RlZXMtYnV0dG9uPgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1idXR0b24gdHlwZT0iaGlnaGxpZ2h0ZWQiIEBjbGlja2VkPSR7KCk9PntMci5zdWNjZXNzKCJPcGVyYXRpb24gY29tcGxldGVkIHN1Y2Nlc3NmdWxseSEiKX19PlN1Y2Nlc3MgVG9hc3Q8L2RlZXMtYnV0dG9uPgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1idXR0b24gQGNsaWNrZWQ9JHsoKT0+e0xyLndhcm5pbmcoIlBsZWFzZSByZXZpZXcgYmVmb3JlIHByb2NlZWRpbmciKX19Pldhcm5pbmcgVG9hc3Q8L2RlZXMtYnV0dG9uPgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1idXR0b24gQGNsaWNrZWQ9JHsoKT0+e0xyLmVycm9yKCJBbiBlcnJvciBvY2N1cnJlZCB3aGlsZSBwcm9jZXNzaW5nIil9fT5FcnJvciBUb2FzdDwvZGVlcy1idXR0b24+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgoKICAgICAgPGRpdiBjbGFzcz0iZGVtby1zZWN0aW9uIj4KICAgICAgICA8aDIgY2xhc3M9ImRlbW8tdGl0bGUiPlRvYXN0IFBvc2l0aW9uczwvaDI+CiAgICAgICAgPHAgY2xhc3M9ImRlbW8tZGVzY3JpcHRpb24iPgogICAgICAgICAgVG9hc3RzIGNhbiBhcHBlYXIgaW4gZGlmZmVyZW50IHBvc2l0aW9ucyBvbiB0aGUgc2NyZWVuLgogICAgICAgIDwvcD4KICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tZ3JpZCI+CiAgICAgICAgICA8ZGVlcy1idXR0b24gQGNsaWNrZWQ9JHsoKT0+e0xyLnNob3coe21lc3NhZ2U6IlRvcCBSaWdodCBQb3NpdGlvbiIsdHlwZToiaW5mbyIscG9zaXRpb246InRvcC1yaWdodCJ9KX19PlRvcCBSaWdodDwvZGVlcy1idXR0b24+CiAgICAgICAgICAKICAgICAgICAgIDxkZWVzLWJ1dHRvbiBAY2xpY2tlZD0keygpPT57THIuc2hvdyh7bWVzc2FnZToiVG9wIExlZnQgUG9zaXRpb24iLHR5cGU6ImluZm8iLHBvc2l0aW9uOiJ0b3AtbGVmdCJ9KX19PlRvcCBMZWZ0PC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIAogICAgICAgICAgPGRlZXMtYnV0dG9uIEBjbGlja2VkPSR7KCk9PntMci5zaG93KHttZXNzYWdlOiJCb3R0b20gUmlnaHQgUG9zaXRpb24iLHR5cGU6ImluZm8iLHBvc2l0aW9uOiJib3R0b20tcmlnaHQifSl9fT5Cb3R0b20gUmlnaHQ8L2RlZXMtYnV0dG9uPgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1idXR0b24gQGNsaWNrZWQ9JHsoKT0+e0xyLnNob3coe21lc3NhZ2U6IkJvdHRvbSBMZWZ0IFBvc2l0aW9uIix0eXBlOiJpbmZvIixwb3NpdGlvbjoiYm90dG9tLWxlZnQifSl9fT5Cb3R0b20gTGVmdDwvZGVlcy1idXR0b24+CiAgICAgICAgICAKICAgICAgICAgIDxkZWVzLWJ1dHRvbiBAY2xpY2tlZD0keygpPT57THIuc2hvdyh7bWVzc2FnZToiVG9wIENlbnRlciBQb3NpdGlvbiIsdHlwZToiaW5mbyIscG9zaXRpb246InRvcC1jZW50ZXIifSl9fT5Ub3AgQ2VudGVyPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIAogICAgICAgICAgPGRlZXMtYnV0dG9uIEBjbGlja2VkPSR7KCk9PntMci5zaG93KHttZXNzYWdlOiJCb3R0b20gQ2VudGVyIFBvc2l0aW9uIix0eXBlOiJpbmZvIixwb3NpdGlvbjoiYm90dG9tLWNlbnRlciJ9KX19PkJvdHRvbSBDZW50ZXI8L2RlZXMtYnV0dG9uPgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KCiAgICAgIDxkaXYgY2xhc3M9ImRlbW8tc2VjdGlvbiI+CiAgICAgICAgPGgyIGNsYXNzPSJkZW1vLXRpdGxlIj5EdXJhdGlvbiBPcHRpb25zPC9oMj4KICAgICAgICA8cCBjbGFzcz0iZGVtby1kZXNjcmlwdGlvbiI+CiAgICAgICAgICBDb250cm9sIGhvdyBsb25nIHRvYXN0cyBzdGF5IHZpc2libGUuIER1cmF0aW9uIGluIG1pbGxpc2Vjb25kcy4KICAgICAgICA8L3A+CiAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWdyaWQiPgogICAgICAgICAgPGRlZXMtYnV0dG9uIEBjbGlja2VkPSR7KCk9PntMci5zaG93KHttZXNzYWdlOiJRdWljayB0b2FzdCAoMSBzZWNvbmQpIix0eXBlOiJpbmZvIixkdXJhdGlvbjoxZTN9KX19PjEgU2Vjb25kPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIAogICAgICAgICAgPGRlZXMtYnV0dG9uIEBjbGlja2VkPSR7KCk9PntMci5zaG93KHttZXNzYWdlOiJTdGFuZGFyZCB0b2FzdCAoMyBzZWNvbmRzKSIsdHlwZToiaW5mbyIsZHVyYXRpb246M2UzfSl9fT4zIFNlY29uZHMgKERlZmF1bHQpPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIAogICAgICAgICAgPGRlZXMtYnV0dG9uIEBjbGlja2VkPSR7KCk9PntMci5zaG93KHttZXNzYWdlOiJMb25nIHRvYXN0ICg1IHNlY29uZHMpIix0eXBlOiJpbmZvIixkdXJhdGlvbjo1ZTN9KX19PjUgU2Vjb25kczwvZGVlcy1idXR0b24+CiAgICAgICAgICAKICAgICAgICAgIDxkZWVzLWJ1dHRvbiBAY2xpY2tlZD0keygpPT57THIuc2hvdyh7bWVzc2FnZToiTWFudWFsIGRpc21pc3Mgb25seSAoY2xpY2sgdG8gY2xvc2UpIix0eXBlOiJ3YXJuaW5nIixkdXJhdGlvbjowfSl9fT5ObyBBdXRvLURpc21pc3M8L2RlZXMtYnV0dG9uPgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KCiAgICAgIDxkaXYgY2xhc3M9ImRlbW8tc2VjdGlvbiI+CiAgICAgICAgPGgyIGNsYXNzPSJkZW1vLXRpdGxlIj5NdWx0aXBsZSBUb2FzdHM8L2gyPgogICAgICAgIDxwIGNsYXNzPSJkZW1vLWRlc2NyaXB0aW9uIj4KICAgICAgICAgIE11bHRpcGxlIHRvYXN0cyBzdGFjayBhdXRvbWF0aWNhbGx5LiBUaGV5IG1haW50YWluIHRoZWlyIG9yZGVyIGFuZCBhbmltYXRlIHNtb290aGx5LgogICAgICAgIDwvcD4KICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b24tZ3JpZCI+CiAgICAgICAgICA8ZGVlcy1idXR0b24gQGNsaWNrZWQ9JHsoKT0+e0xyLmluZm8oIkZpcnN0IG5vdGlmaWNhdGlvbiIpLHNldFRpbWVvdXQoKCk9PkxyLnN1Y2Nlc3MoIlNlY29uZCBub3RpZmljYXRpb24iKSwyMDApLHNldFRpbWVvdXQoKCk9PkxyLndhcm5pbmcoIlRoaXJkIG5vdGlmaWNhdGlvbiIpLDQwMCksc2V0VGltZW91dCgoKT0+THIuZXJyb3IoIkZvdXJ0aCBub3RpZmljYXRpb24iKSw2MDApfX0+U2hvdyBNdWx0aXBsZTwvZGVlcy1idXR0b24+CiAgICAgICAgICAKICAgICAgICAgIDxkZWVzLWJ1dHRvbiBAY2xpY2tlZD0keygpPT57Zm9yKGxldCBlPTE7ZTw9NTtlKyspc2V0VGltZW91dCgoKT0+e0xyLnNob3coe21lc3NhZ2U6YE5vdGlmaWNhdGlvbiAjJHtlfWAsdHlwZTplJTI9PT0wPyJzdWNjZXNzIjoiaW5mbyIsZHVyYXRpb246MmUzK2UqNTAwfSl9LGUqMTAwKX19PlJhcGlkIEZpcmU8L2RlZXMtYnV0dG9uPgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KCiAgICAgIDxkaXYgY2xhc3M9ImRlbW8tc2VjdGlvbiI+CiAgICAgICAgPGgyIGNsYXNzPSJkZW1vLXRpdGxlIj5SZWFsLVdvcmxkIEV4YW1wbGVzPC9oMj4KICAgICAgICA8cCBjbGFzcz0iZGVtby1kZXNjcmlwdGlvbiI+CiAgICAgICAgICBDb21tb24gdXNlIGNhc2VzIGZvciB0b2FzdCBub3RpZmljYXRpb25zIGluIGFwcGxpY2F0aW9ucy4KICAgICAgICA8L3A+CiAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWdyaWQiPgogICAgICAgICAgPGRlZXMtYnV0dG9uIEBjbGlja2VkPSR7YXN5bmMoKT0+e2xldCBlPWF3YWl0IExyLnNob3coe21lc3NhZ2U6IlNhdmluZyBjaGFuZ2VzLi4uIix0eXBlOiJpbmZvIixkdXJhdGlvbjowfSk7c2V0VGltZW91dCgoKT0+e2UuZGlzbWlzcygpLExyLnN1Y2Nlc3MoIkNoYW5nZXMgc2F2ZWQgc3VjY2Vzc2Z1bGx5ISIpfSwyZTMpfX0+U2F2ZSBPcGVyYXRpb248L2RlZXMtYnV0dG9uPgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1idXR0b24gQGNsaWNrZWQ9JHsoKT0+e0xyLmVycm9yKCJGYWlsZWQgdG8gY29ubmVjdCB0byBzZXJ2ZXIuIFBsZWFzZSBjaGVjayB5b3VyIGludGVybmV0IGNvbm5lY3Rpb24uIil9fT5OZXR3b3JrIEVycm9yPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIAogICAgICAgICAgPGRlZXMtYnV0dG9uIEBjbGlja2VkPSR7KCk9PntMci53YXJuaW5nKCJZb3VyIHNlc3Npb24gd2lsbCBleHBpcmUgaW4gNSBtaW51dGVzIil9fT5TZXNzaW9uIFdhcm5pbmc8L2RlZXMtYnV0dG9uPgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1idXR0b24gQGNsaWNrZWQ9JHsoKT0+e0xyLnN1Y2Nlc3MoIkZpbGUgdXBsb2FkZWQgc3VjY2Vzc2Z1bGx5ISIpfX0+VXBsb2FkIENvbXBsZXRlPC9kZWVzLWJ1dHRvbj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CgogICAgICA8ZGl2IGNsYXNzPSJkZW1vLXNlY3Rpb24iPgogICAgICAgIDxoMiBjbGFzcz0iZGVtby10aXRsZSI+UHJvZ3JhbW1hdGljIENvbnRyb2w8L2gyPgogICAgICAgIDxwIGNsYXNzPSJkZW1vLWRlc2NyaXB0aW9uIj4KICAgICAgICAgIEFkdmFuY2VkIGNvbnRyb2wgb3ZlciB0b2FzdCBiZWhhdmlvci4KICAgICAgICA8L3A+CiAgICAgICAgPGRpdiBjbGFzcz0iYnV0dG9uLWdyaWQiPgogICAgICAgICAgPGRlZXMtYnV0dG9uIEBjbGlja2VkPSR7YXN5bmMoKT0+e2xldCBlPWF3YWl0IExyLnNob3coe21lc3NhZ2U6IlRoaXMgdG9hc3QgY2FuIGJlIGRpc21pc3NlZCBwcm9ncmFtbWF0aWNhbGx5Iix0eXBlOiJpbmZvIixkdXJhdGlvbjowfSk7c2V0VGltZW91dCgoKT0+e2UuZGlzbWlzcygpLExyLnN1Y2Nlc3MoIlRvYXN0IGRpc21pc3NlZCBhZnRlciAyIHNlY29uZHMiKX0sMmUzKX19PlByb2dyYW1tYXRpYyBEaXNtaXNzPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIAogICAgICAgICAgPGRlZXMtYnV0dG9uIEBjbGlja2VkPSR7KCk9PntMci5pbmZvKCJJbmZvIG1lc3NhZ2UiLDJlMyksc2V0VGltZW91dCgoKT0+THIuc3VjY2VzcygiU3VjY2VzcyBtZXNzYWdlIiwyZTMpLDUwMCksc2V0VGltZW91dCgoKT0+THIud2FybmluZygiV2FybmluZyBtZXNzYWdlIiwyZTMpLDFlMyksc2V0VGltZW91dCgoKT0+THIuZXJyb3IoIkVycm9yIG1lc3NhZ2UiLDJlMyksMTUwMCl9fT5Db252ZW5pZW5jZSBNZXRob2RzPC9kZWVzLWJ1dHRvbj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICBgfSk7dmFyIFJaLFZjLExyLEdjdD1sKCgpPT57U2UoKTtlcigpO1RuKCk7b05yKCk7dW8oKTtvdCgpO1JaPWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sVmM9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LExyPSgoKT0+e2xldCBlPVt6ZSgiZGVlcy10b2FzdCIpXSx0LHI9W10sYSxpPURlLG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdLHUscD1bXSxoPVtdLGIseD1bXSxnPVtdO3ZhciB2PWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgdz10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHt0eXBlOlN0cmluZ30pXSxjPVtqKHt0eXBlOlN0cmluZ30pXSx1PVtqKHt0eXBlOk51bWJlcn0pXSxiPVtqKHt0eXBlOkJvb2xlYW4scmVmbGVjdDohMH0pXSxSWih0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im1lc3NhZ2UiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOk09PiJtZXNzYWdlImluIE0sZ2V0Ok09Pk0ubWVzc2FnZSxzZXQ6KE0sRik9PntNLm1lc3NhZ2U9Rn19LG1ldGFkYXRhOnd9LG4scyksUloodGhpcyxudWxsLGMse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ0eXBlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpNPT4idHlwZSJpbiBNLGdldDpNPT5NLnR5cGUsc2V0OihNLEYpPT57TS50eXBlPUZ9fSxtZXRhZGF0YTp3fSxkLGYpLFJaKHRoaXMsbnVsbCx1LHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZHVyYXRpb24iLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOk09PiJkdXJhdGlvbiJpbiBNLGdldDpNPT5NLmR1cmF0aW9uLHNldDooTSxGKT0+e00uZHVyYXRpb249Rn19LG1ldGFkYXRhOnd9LHAsaCksUloodGhpcyxudWxsLGIse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJpc1Zpc2libGUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOk09PiJpc1Zpc2libGUiaW4gTSxnZXQ6TT0+TS5pc1Zpc2libGUsc2V0OihNLEYpPT57TS5pc1Zpc2libGU9Rn19LG1ldGFkYXRhOnd9LHgsZyksUloobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6d30sbnVsbCxyKSx2PWE9dC52YWx1ZSx3JiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnd9KX1zdGF0aWMgZGVtbz1pTnI7c3RhdGljIGRlbW9Hcm91cHM9WyJGZWVkYmFjayIsIk92ZXJsYXkiXTtzdGF0aWMgdG9hc3RDb250YWluZXJzPW5ldyBNYXA7c3RhdGljIGdldE9yQ3JlYXRlQ29udGFpbmVyKHcpe2lmKCF0aGlzLnRvYXN0Q29udGFpbmVycy5oYXModykpe2xldCBNPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3N3aXRjaChNLmNsYXNzTmFtZT1gdG9hc3QtY29udGFpbmVyIHRvYXN0LWNvbnRhaW5lci0ke3d9YCxNLnN0eWxlLmNzc1RleHQ9YAogICAgICAgIHBvc2l0aW9uOiBmaXhlZDsKICAgICAgICB6LWluZGV4OiAke0xpLm92ZXJsYXkudG9hc3R9OwogICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgICAgIHBhZGRpbmc6IDE2cHg7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGdhcDogOHB4OwogICAgICBgLHcpe2Nhc2UidG9wLXJpZ2h0IjpNLnN0eWxlLnRvcD0iMCIsTS5zdHlsZS5yaWdodD0iMCI7YnJlYWs7Y2FzZSJ0b3AtbGVmdCI6TS5zdHlsZS50b3A9IjAiLE0uc3R5bGUubGVmdD0iMCI7YnJlYWs7Y2FzZSJib3R0b20tcmlnaHQiOk0uc3R5bGUuYm90dG9tPSIwIixNLnN0eWxlLnJpZ2h0PSIwIjticmVhaztjYXNlImJvdHRvbS1sZWZ0IjpNLnN0eWxlLmJvdHRvbT0iMCIsTS5zdHlsZS5sZWZ0PSIwIjticmVhaztjYXNlInRvcC1jZW50ZXIiOk0uc3R5bGUudG9wPSIwIixNLnN0eWxlLmxlZnQ9IjUwJSIsTS5zdHlsZS50cmFuc2Zvcm09InRyYW5zbGF0ZVgoLTUwJSkiO2JyZWFrO2Nhc2UiYm90dG9tLWNlbnRlciI6TS5zdHlsZS5ib3R0b209IjAiLE0uc3R5bGUubGVmdD0iNTAlIixNLnN0eWxlLnRyYW5zZm9ybT0idHJhbnNsYXRlWCgtNTAlKSI7YnJlYWt9ZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChNKSx0aGlzLnRvYXN0Q29udGFpbmVycy5zZXQodyxNKX1yZXR1cm4gdGhpcy50b2FzdENvbnRhaW5lcnMuZ2V0KHcpfXN0YXRpYyBhc3luYyBzaG93KHcpe2xldCBNPXR5cGVvZiB3PT0ic3RyaW5nIj97bWVzc2FnZTp3fTp3LEY9bmV3IHY7cmV0dXJuIEYubWVzc2FnZT1NLm1lc3NhZ2UsRi50eXBlPU0udHlwZXx8ImluZm8iLEYuZHVyYXRpb249TS5kdXJhdGlvbnx8M2UzLHRoaXMuZ2V0T3JDcmVhdGVDb250YWluZXIoTS5wb3NpdGlvbnx8InRvcC1yaWdodCIpLmFwcGVuZENoaWxkKEYpLGF3YWl0IEYudXBkYXRlQ29tcGxldGUscmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57Ri5pc1Zpc2libGU9ITB9KSxGLmR1cmF0aW9uPjAmJnNldFRpbWVvdXQoKCk9PntGLmRpc21pc3MoKX0sRi5kdXJhdGlvbiksRn1zdGF0aWMgYXN5bmMgY3JlYXRlQW5kU2hvdyh3KXtyZXR1cm4gdGhpcy5zaG93KHcpfXN0YXRpYyBpbmZvKHcsTSl7cmV0dXJuIHRoaXMuc2hvdyh7bWVzc2FnZTp3LHR5cGU6ImluZm8iLGR1cmF0aW9uOk19KX1zdGF0aWMgc3VjY2Vzcyh3LE0pe3JldHVybiB0aGlzLnNob3coe21lc3NhZ2U6dyx0eXBlOiJzdWNjZXNzIixkdXJhdGlvbjpNfSl9c3RhdGljIHdhcm5pbmcodyxNKXtyZXR1cm4gdGhpcy5zaG93KHttZXNzYWdlOncsdHlwZToid2FybmluZyIsZHVyYXRpb246TX0pfXN0YXRpYyBlcnJvcih3LE0pe3JldHVybiB0aGlzLnNob3coe21lc3NhZ2U6dyx0eXBlOiJlcnJvciIsZHVyYXRpb246TX0pfSNlPVZjKHRoaXMsbiwiIik7Z2V0IG1lc3NhZ2UoKXtyZXR1cm4gdGhpcy4jZX1zZXQgbWVzc2FnZSh3KXt0aGlzLiNlPXd9I3Q9KFZjKHRoaXMscyksVmModGhpcyxkLCJpbmZvIikpO2dldCB0eXBlKCl7cmV0dXJuIHRoaXMuI3R9c2V0IHR5cGUodyl7dGhpcy4jdD13fSNyPShWYyh0aGlzLGYpLFZjKHRoaXMscCwzZTMpKTtnZXQgZHVyYXRpb24oKXtyZXR1cm4gdGhpcy4jcn1zZXQgZHVyYXRpb24odyl7dGhpcy4jcj13fSNhPShWYyh0aGlzLGgpLFZjKHRoaXMseCwhMSkpO2dldCBpc1Zpc2libGUoKXtyZXR1cm4gdGhpcy4jYX1zZXQgaXNWaXNpYmxlKHcpe3RoaXMuI2E9d31jb25zdHJ1Y3Rvcigpe3N1cGVyKCksVmModGhpcyxnKSxrYS5zZXR1cCgpfXN0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgLyogVE9ETzogTWlncmF0ZSBoYXJkY29kZWQgdmFsdWVzIHRvIC0tZGVlcy0qIENTUyB2YXJpYWJsZXMgKi8KICAgICAgOmhvc3QgewogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvOwogICAgICAgIGZvbnQtZmFtaWx5OiAke1hyfTsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTsKICAgICAgfQoKICAgICAgOmhvc3QoW2lzdmlzaWJsZV0pIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsKICAgICAgfQoKICAgICAgLnRvYXN0IHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgZ2FwOiAxMnB4OwogICAgICAgIHBhZGRpbmc6IDE2cHggMjBweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmZmYiLCIjMjIyIil9OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZTBlMGUwIiwiIzMzMyIpfTsKICAgICAgICBib3gtc2hhZG93OiAwIDRweCAxMnB4ICR7bS5iZFRoZW1lKCJyZ2JhKDAsMCwwLDAuMSkiLCJyZ2JhKDAsMCwwLDAuMykiKX07CiAgICAgICAgbWluLXdpZHRoOiAzMDBweDsKICAgICAgICBtYXgtd2lkdGg6IDUwMHB4OwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgfQoKICAgICAgLnRvYXN0OmhvdmVyIHsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDIpOwogICAgICB9CgogICAgICAuaWNvbiB7CiAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgICAgd2lkdGg6IDIwcHg7CiAgICAgICAgaGVpZ2h0OiAyMHB4OwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgfQoKICAgICAgLmljb24gc3ZnIHsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgIH0KCiAgICAgIC5tZXNzYWdlIHsKICAgICAgICBmbGV4OiAxOwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBsaW5lLWhlaWdodDogMS41OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzMzMyIsIiNmZmYiKX07CiAgICAgIH0KCiAgICAgIC5jbG9zZSB7CiAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgICAgd2lkdGg6IDE2cHg7CiAgICAgICAgaGVpZ2h0OiAxNnB4OwogICAgICAgIG9wYWNpdHk6IDAuNTsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzOwogICAgICB9CgogICAgICAuY2xvc2U6aG92ZXIgewogICAgICAgIG9wYWNpdHk6IDE7CiAgICAgIH0KCiAgICAgIC5jbG9zZSBzdmcgewogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICBmaWxsOiBjdXJyZW50Q29sb3I7CiAgICAgIH0KCiAgICAgIC8qIFR5cGUtc3BlY2lmaWMgc3R5bGVzICovCiAgICAgIDpob3N0KFt0eXBlPSJpbmZvIl0pIC5pY29uIHsKICAgICAgICBjb2xvcjogIzAwODRmZjsKICAgICAgfQoKICAgICAgOmhvc3QoW3R5cGU9InN1Y2Nlc3MiXSkgLmljb24gewogICAgICAgIGNvbG9yOiAjMjJjNTVlOwogICAgICB9CgogICAgICA6aG9zdChbdHlwZT0id2FybmluZyJdKSAuaWNvbiB7CiAgICAgICAgY29sb3I6ICNmNTllMGI7CiAgICAgIH0KCiAgICAgIDpob3N0KFt0eXBlPSJlcnJvciJdKSAuaWNvbiB7CiAgICAgICAgY29sb3I6ICNlZjQ0NDQ7CiAgICAgIH0KCiAgICAgIC8qIFByb2dyZXNzIGJhciAqLwogICAgICAucHJvZ3Jlc3MgewogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICBib3R0b206IDA7CiAgICAgICAgbGVmdDogMDsKICAgICAgICByaWdodDogMDsKICAgICAgICBoZWlnaHQ6IDNweDsKICAgICAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7CiAgICAgICAgb3BhY2l0eTogMC4yOwogICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCA4cHggOHB4OwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgIH0KCiAgICAgIC5wcm9ncmVzcy1iYXIgewogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7CiAgICAgICAgb3BhY2l0eTogMC44OwogICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7CiAgICAgICAgYW5pbWF0aW9uOiBwcm9ncmVzcyBsaW5lYXIgZm9yd2FyZHM7CiAgICAgIH0KCiAgICAgIEBrZXlmcmFtZXMgcHJvZ3Jlc3MgewogICAgICAgIGZyb20gewogICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7CiAgICAgICAgfQogICAgICAgIHRvIHsKICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDApOwogICAgICAgIH0KICAgICAgfQogICAgYF07cmVuZGVyKCl7bGV0IHc9e2luZm86U2A8c3ZnIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0iY3VycmVudENvbG9yIj4KICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMCAxOGE4IDggMCAxMDAtMTYgOCA4IDAgMDAwIDE2em0xLTExYTEgMSAwIDEwLTIgMHYySDdhMSAxIDAgMTAwIDJoMnYyYTEgMSAwIDEwMiAwdi0yaDJhMSAxIDAgMTAwLTJoLTJWN3oiIGNsaXAtcnVsZT0iZXZlbm9kZCIvPgogICAgICA8L3N2Zz5gLHN1Y2Nlc3M6U2A8c3ZnIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0iY3VycmVudENvbG9yIj4KICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMCAxOGE4IDggMCAxMDAtMTYgOCA4IDAgMDAwIDE2em0zLjcwNy05LjI5M2ExIDEgMCAwMC0xLjQxNC0xLjQxNEw5IDEwLjU4NiA3LjcwNyA5LjI5M2ExIDEgMCAwMC0xLjQxNCAxLjQxNGwyIDJhMSAxIDAgMDAxLjQxNCAwbDQtNHoiIGNsaXAtcnVsZT0iZXZlbm9kZCIvPgogICAgICA8L3N2Zz5gLHdhcm5pbmc6U2A8c3ZnIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0iY3VycmVudENvbG9yIj4KICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik04LjI1NyAzLjA5OWMuNzY1LTEuMzYgMi43MjItMS4zNiAzLjQ4NiAwbDUuNTggOS45MmMuNzUgMS4zMzQtLjIxMyAyLjk4LTEuNzQyIDIuOThINC40MmMtMS41MyAwLTIuNDkzLTEuNjQ2LTEuNzQzLTIuOThsNS41OC05Ljkyek0xMSAxM2ExIDEgMCAxMS0yIDAgMSAxIDAgMDEyIDB6bS0xLThhMSAxIDAgMDAtMSAxdjNhMSAxIDAgMDAyIDBWNmExIDEgMCAwMC0xLTF6IiBjbGlwLXJ1bGU9ImV2ZW5vZGQiLz4KICAgICAgPC9zdmc+YCxlcnJvcjpTYDxzdmcgdmlld0JveD0iMCAwIDIwIDIwIiBmaWxsPSJjdXJyZW50Q29sb3IiPgogICAgICAgIDxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTEwIDE4YTggOCAwIDEwMC0xNiA4IDggMCAwMDAgMTZ6TTguNzA3IDcuMjkzYTEgMSAwIDAwLTEuNDE0IDEuNDE0TDguNTg2IDEwbC0xLjI5MyAxLjI5M2ExIDEgMCAxMDEuNDE0IDEuNDE0TDEwIDExLjQxNGwxLjI5MyAxLjI5M2ExIDEgMCAwMDEuNDE0LTEuNDE0TDExLjQxNCAxMGwxLjI5My0xLjI5M2ExIDEgMCAwMC0xLjQxNC0xLjQxNEwxMCA4LjU4NiA4LjcwNyA3LjI5M3oiIGNsaXAtcnVsZT0iZXZlbm9kZCIvPgogICAgICA8L3N2Zz5gfTtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0idG9hc3QiIEBjbGljaz0ke3RoaXMuZGlzbWlzc30+CiAgICAgICAgPGRpdiBjbGFzcz0iaWNvbiI+CiAgICAgICAgICAke3dbdGhpcy50eXBlXX0KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJtZXNzYWdlIj4ke3RoaXMubWVzc2FnZX08L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJjbG9zZSI+CiAgICAgICAgICA8c3ZnIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0iY3VycmVudENvbG9yIj4KICAgICAgICAgICAgPHBhdGggZD0iTTQuNjQ2IDQuNjQ2YS41LjUgMCAwIDEgLjcwOCAwTDggNy4yOTNsMi42NDYtMi42NDdhLjUuNSAwIDAgMSAuNzA4LjcwOEw4LjcwNyA4bDIuNjQ3IDIuNjQ2YS41LjUgMCAwIDEtLjcwOC43MDhMOCA4LjcwN2wtMi42NDYgMi42NDdhLjUuNSAwIDAgMS0uNzA4LS43MDhMNy4yOTMgOCA0LjY0NiA1LjM1NGEuNS41IDAgMCAxIDAtLjcwOHoiLz4KICAgICAgICAgIDwvc3ZnPgogICAgICAgIDwvZGl2PgogICAgICAgICR7dGhpcy5kdXJhdGlvbj4wP1NgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJwcm9ncmVzcyI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InByb2dyZXNzLWJhciIgc3R5bGU9ImFuaW1hdGlvbi1kdXJhdGlvbjogJHt0aGlzLmR1cmF0aW9ufW1zIj48L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgIGA6IiJ9CiAgICAgIDwvZGl2PgogICAgYH1hc3luYyBkaXNtaXNzKCl7dGhpcy5pc1Zpc2libGU9ITEsYXdhaXQgbmV3IFByb21pc2UoTT0+c2V0VGltZW91dChNLDMwMCkpLHRoaXMucmVtb3ZlKCk7bGV0IHc9dGhpcy5wYXJlbnRFbGVtZW50O2lmKHcmJncuY2hpbGRyZW4ubGVuZ3RoPT09MCl7dy5yZW1vdmUoKTtmb3IobGV0W00sRl1vZiB2LnRvYXN0Q29udGFpbmVycy5lbnRyaWVzKCkpaWYoRj09PXcpe3YudG9hc3RDb250YWluZXJzLmRlbGV0ZShNKTticmVha319fWZpcnN0VXBkYXRlZCgpe3RoaXMuc2V0QXR0cmlidXRlKCJ0eXBlIix0aGlzLnR5cGUpfXN0YXRpY3tWYyhhLHIpfX07cmV0dXJuIHY9YX0pKCl9KTt2YXIgbk5yPWwoKCk9PntHY3QoKX0pO3ZhciBzTnI9bCgoKT0+e09JcigpO2pJcigpO1pJcigpO2VOcigpO2FOcigpO25OcigpfSk7dmFyIGxOcj1sKCgpPT57VTkoKX0pO3ZhciBjTnI9bCgoKT0+e1Q4KCl9KTt2YXIgZE5yPWwoKCk9PntsTnIoKTtjTnIoKX0pO3ZhciB1TnI9bCgoKT0+e1BhKCl9KTt2YXIgZk5yPWwoKCk9PntrbGUoKX0pO3ZhciBwTnI9bCgoKT0+e1dsdCgpfSk7dmFyIGhOcj1sKCgpPT57UGxlKCl9KTt2YXIgbU5yPWwoKCk9PntpY3QoKX0pO3ZhciBnTnI9bCgoKT0+e2ZjdCgpfSk7dmFyIHhOcj1sKCgpPT57b2N0KCl9KTt2YXIgYk5yPWwoKCk9PntuY3QoKX0pO3ZhciB2TnI9bCgoKT0+e1FsdCgpfSk7dmFyIHlOcj1sKCgpPT57QWxlKCl9KTt2YXIgd05yPWwoKCk9PntRbGUoKX0pO3ZhciBNTnI9bCgoKT0+e30pO3ZhciBrTnI9bCgoKT0+e01OcigpfSk7dmFyIFNOcj1sKCgpPT57dWN0KCl9KTt2YXIgek5yPWwoKCk9PntzMygpfSk7dmFyIENOcj1sKCgpPT57bGN0KCl9KTt2YXIgX05yPWwoKCk9PntkY3QoKX0pO3ZhciBUTnI9bCgoKT0+e1hsZSgpO2tjdCgpfSk7dmFyIG5jZSxMTnI9bCgoKT0+e25jZT1jbGFzc3tvcHRpb25zO2NhbnZhcztjdHg7aW1nO292ZXJsYXlDYW52YXM7b3ZlcmxheUN0eDtjcm9wWD0wO2Nyb3BZPTA7Y3JvcFNpemU9MjAwO21pbkNyb3BTaXplPTUwO2lzRHJhZ2dpbmc9ITE7aXNSZXNpemluZz0hMTtkcmFnU3RhcnRYPTA7ZHJhZ1N0YXJ0WT0wO3Jlc2l6ZUhhbmRsZT0iIjtpbWFnZVNjYWxlPTE7aW1hZ2VPZmZzZXRYPTA7aW1hZ2VPZmZzZXRZPTA7Y29uc3RydWN0b3IodCl7dGhpcy5vcHRpb25zPXttaW5TaXplOjUwLG91dHB1dFNpemU6ODAwLG91dHB1dFF1YWxpdHk6Ljk1LC4uLnR9LHRoaXMuY2FudmFzPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImNhbnZhcyIpLHRoaXMuY3R4PXRoaXMuY2FudmFzLmdldENvbnRleHQoIjJkIiksdGhpcy5vdmVybGF5Q2FudmFzPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImNhbnZhcyIpLHRoaXMub3ZlcmxheUN0eD10aGlzLm92ZXJsYXlDYW52YXMuZ2V0Q29udGV4dCgiMmQiKSx0aGlzLmltZz1uZXcgSW1hZ2V9YXN5bmMgaW5pdGlhbGl6ZSgpe2F3YWl0IHRoaXMubG9hZEltYWdlKCksdGhpcy5zZXR1cENhbnZhc2VzKCksdGhpcy5zZXR1cEV2ZW50TGlzdGVuZXJzKCksdGhpcy5yZW5kZXIoKX1hc3luYyBsb2FkSW1hZ2UoKXtyZXR1cm4gbmV3IFByb21pc2UoKHQscik9Pnt0aGlzLmltZy5vbmxvYWQ9KCk9PnQoKSx0aGlzLmltZy5vbmVycm9yPXIsdGhpcy5pbWcuc3JjPXRoaXMub3B0aW9ucy5pbWFnZX0pfXNldHVwQ2FudmFzZXMoKXtsZXQgdD10aGlzLm9wdGlvbnMuY29udGFpbmVyLHI9TWF0aC5taW4odC5jbGllbnRXaWR0aCx0LmNsaWVudEhlaWdodCk7dGhpcy5jYW52YXMud2lkdGg9cix0aGlzLmNhbnZhcy5oZWlnaHQ9cix0aGlzLmNhbnZhcy5zdHlsZS53aWR0aD0iMTAwJSIsdGhpcy5jYW52YXMuc3R5bGUuaGVpZ2h0PSIxMDAlIix0aGlzLmNhbnZhcy5zdHlsZS5wb3NpdGlvbj0iYWJzb2x1dGUiLHRoaXMuY2FudmFzLnN0eWxlLnRvcD0iMCIsdGhpcy5jYW52YXMuc3R5bGUubGVmdD0iMCIsdGhpcy5vdmVybGF5Q2FudmFzLndpZHRoPXIsdGhpcy5vdmVybGF5Q2FudmFzLmhlaWdodD1yLHRoaXMub3ZlcmxheUNhbnZhcy5zdHlsZS53aWR0aD0iMTAwJSIsdGhpcy5vdmVybGF5Q2FudmFzLnN0eWxlLmhlaWdodD0iMTAwJSIsdGhpcy5vdmVybGF5Q2FudmFzLnN0eWxlLnBvc2l0aW9uPSJhYnNvbHV0ZSIsdGhpcy5vdmVybGF5Q2FudmFzLnN0eWxlLnRvcD0iMCIsdGhpcy5vdmVybGF5Q2FudmFzLnN0eWxlLmxlZnQ9IjAiLHRoaXMub3ZlcmxheUNhbnZhcy5zdHlsZS5jdXJzb3I9Im1vdmUiLHQuYXBwZW5kQ2hpbGQodGhpcy5jYW52YXMpLHQuYXBwZW5kQ2hpbGQodGhpcy5vdmVybGF5Q2FudmFzKTtsZXQgYT1NYXRoLm1pbihyL3RoaXMuaW1nLndpZHRoLHIvdGhpcy5pbWcuaGVpZ2h0KTt0aGlzLmltYWdlU2NhbGU9YSx0aGlzLmltYWdlT2Zmc2V0WD0oci10aGlzLmltZy53aWR0aCphKS8yLHRoaXMuaW1hZ2VPZmZzZXRZPShyLXRoaXMuaW1nLmhlaWdodCphKS8yO2xldCBpPXRoaXMuaW1nLndpZHRoKmEsbz10aGlzLmltZy5oZWlnaHQqYSxuPU1hdGgubWluKGksbyxyKi44KTt0aGlzLmNyb3BTaXplPW4qLjgsdGhpcy5jcm9wWD0oci10aGlzLmNyb3BTaXplKS8yLHRoaXMuY3JvcFk9KHItdGhpcy5jcm9wU2l6ZSkvMn1zZXR1cEV2ZW50TGlzdGVuZXJzKCl7dGhpcy5vdmVybGF5Q2FudmFzLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZG93biIsdGhpcy5oYW5kbGVNb3VzZURvd24uYmluZCh0aGlzKSksdGhpcy5vdmVybGF5Q2FudmFzLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsdGhpcy5oYW5kbGVNb3VzZU1vdmUuYmluZCh0aGlzKSksdGhpcy5vdmVybGF5Q2FudmFzLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNldXAiLHRoaXMuaGFuZGxlTW91c2VVcC5iaW5kKHRoaXMpKSx0aGlzLm92ZXJsYXlDYW52YXMuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsdGhpcy5oYW5kbGVNb3VzZVVwLmJpbmQodGhpcykpLHRoaXMub3ZlcmxheUNhbnZhcy5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0Iix0aGlzLmhhbmRsZVRvdWNoU3RhcnQuYmluZCh0aGlzKSksdGhpcy5vdmVybGF5Q2FudmFzLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsdGhpcy5oYW5kbGVUb3VjaE1vdmUuYmluZCh0aGlzKSksdGhpcy5vdmVybGF5Q2FudmFzLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoZW5kIix0aGlzLmhhbmRsZVRvdWNoRW5kLmJpbmQodGhpcykpfWhhbmRsZU1vdXNlRG93bih0KXtsZXQgcj10aGlzLm92ZXJsYXlDYW52YXMuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksYT0odC5jbGllbnRYLXIubGVmdCkqKHRoaXMub3ZlcmxheUNhbnZhcy53aWR0aC9yLndpZHRoKSxpPSh0LmNsaWVudFktci50b3ApKih0aGlzLm92ZXJsYXlDYW52YXMuaGVpZ2h0L3IuaGVpZ2h0KSxvPXRoaXMuZ2V0UmVzaXplSGFuZGxlKGEsaSk7bz8odGhpcy5pc1Jlc2l6aW5nPSEwLHRoaXMucmVzaXplSGFuZGxlPW8pOnRoaXMuaXNJbnNpZGVDcm9wQXJlYShhLGkpJiYodGhpcy5pc0RyYWdnaW5nPSEwKSx0aGlzLmRyYWdTdGFydFg9YSx0aGlzLmRyYWdTdGFydFk9aX1oYW5kbGVNb3VzZU1vdmUodCl7bGV0IHI9dGhpcy5vdmVybGF5Q2FudmFzLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLGE9KHQuY2xpZW50WC1yLmxlZnQpKih0aGlzLm92ZXJsYXlDYW52YXMud2lkdGgvci53aWR0aCksaT0odC5jbGllbnRZLXIudG9wKSoodGhpcy5vdmVybGF5Q2FudmFzLmhlaWdodC9yLmhlaWdodCksbz10aGlzLmdldFJlc2l6ZUhhbmRsZShhLGkpO2lmKG8/dGhpcy5vdmVybGF5Q2FudmFzLnN0eWxlLmN1cnNvcj10aGlzLmdldFJlc2l6ZUN1cnNvcihvKTp0aGlzLmlzSW5zaWRlQ3JvcEFyZWEoYSxpKT90aGlzLm92ZXJsYXlDYW52YXMuc3R5bGUuY3Vyc29yPSJtb3ZlIjp0aGlzLm92ZXJsYXlDYW52YXMuc3R5bGUuY3Vyc29yPSJkZWZhdWx0Iix0aGlzLmlzRHJhZ2dpbmcpe2xldCBuPWEtdGhpcy5kcmFnU3RhcnRYLHM9aS10aGlzLmRyYWdTdGFydFksYz10aGlzLmltYWdlT2Zmc2V0WCxkPXRoaXMuaW1hZ2VPZmZzZXRYK3RoaXMuaW1nLndpZHRoKnRoaXMuaW1hZ2VTY2FsZS10aGlzLmNyb3BTaXplLGY9dGhpcy5pbWFnZU9mZnNldFksdT10aGlzLmltYWdlT2Zmc2V0WSt0aGlzLmltZy5oZWlnaHQqdGhpcy5pbWFnZVNjYWxlLXRoaXMuY3JvcFNpemU7dGhpcy5jcm9wWD1NYXRoLm1heChjLE1hdGgubWluKGQsdGhpcy5jcm9wWCtuKSksdGhpcy5jcm9wWT1NYXRoLm1heChmLE1hdGgubWluKHUsdGhpcy5jcm9wWStzKSksdGhpcy5kcmFnU3RhcnRYPWEsdGhpcy5kcmFnU3RhcnRZPWksdGhpcy5yZW5kZXIoKX10aGlzLmlzUmVzaXppbmcmJih0aGlzLmhhbmRsZVJlc2l6ZShhLGkpLHRoaXMuZHJhZ1N0YXJ0WD1hLHRoaXMuZHJhZ1N0YXJ0WT1pLHRoaXMucmVuZGVyKCkpfWhhbmRsZU1vdXNlVXAoKXt0aGlzLmlzRHJhZ2dpbmc9ITEsdGhpcy5pc1Jlc2l6aW5nPSExLHRoaXMucmVzaXplSGFuZGxlPSIifWhhbmRsZVRvdWNoU3RhcnQodCl7dC5wcmV2ZW50RGVmYXVsdCgpO2xldCByPXQudG91Y2hlc1swXSxhPW5ldyBNb3VzZUV2ZW50KCJtb3VzZWRvd24iLHtjbGllbnRYOnIuY2xpZW50WCxjbGllbnRZOnIuY2xpZW50WX0pO3RoaXMuaGFuZGxlTW91c2VEb3duKGEpfWhhbmRsZVRvdWNoTW92ZSh0KXt0LnByZXZlbnREZWZhdWx0KCk7bGV0IHI9dC50b3VjaGVzWzBdLGE9bmV3IE1vdXNlRXZlbnQoIm1vdXNlbW92ZSIse2NsaWVudFg6ci5jbGllbnRYLGNsaWVudFk6ci5jbGllbnRZfSk7dGhpcy5oYW5kbGVNb3VzZU1vdmUoYSl9aGFuZGxlVG91Y2hFbmQodCl7dC5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuaGFuZGxlTW91c2VVcCgpfWdldFJlc2l6ZUhhbmRsZSh0LHIpe2xldCBpPXtudzp7eDp0aGlzLmNyb3BYLHk6dGhpcy5jcm9wWX0sbmU6e3g6dGhpcy5jcm9wWCt0aGlzLmNyb3BTaXplLHk6dGhpcy5jcm9wWX0sc3c6e3g6dGhpcy5jcm9wWCx5OnRoaXMuY3JvcFkrdGhpcy5jcm9wU2l6ZX0sc2U6e3g6dGhpcy5jcm9wWCt0aGlzLmNyb3BTaXplLHk6dGhpcy5jcm9wWSt0aGlzLmNyb3BTaXplfX07Zm9yKGxldFtvLG5db2YgT2JqZWN0LmVudHJpZXMoaSkpaWYoTWF0aC5hYnModC1uLngpPDIwJiZNYXRoLmFicyhyLW4ueSk8MjApcmV0dXJuIG87cmV0dXJuIiJ9Z2V0UmVzaXplQ3Vyc29yKHQpe3JldHVybntudzoibnctcmVzaXplIixuZToibmUtcmVzaXplIixzdzoic3ctcmVzaXplIixzZToic2UtcmVzaXplIn1bdF18fCJkZWZhdWx0In1pc0luc2lkZUNyb3BBcmVhKHQscil7cmV0dXJuIHQ+PXRoaXMuY3JvcFgmJnQ8PXRoaXMuY3JvcFgrdGhpcy5jcm9wU2l6ZSYmcj49dGhpcy5jcm9wWSYmcjw9dGhpcy5jcm9wWSt0aGlzLmNyb3BTaXplfWhhbmRsZVJlc2l6ZSh0LHIpe2xldCBhPXQtdGhpcy5kcmFnU3RhcnRYLGk9ci10aGlzLmRyYWdTdGFydFksbz10aGlzLmltYWdlT2Zmc2V0WCxuPXRoaXMuaW1hZ2VPZmZzZXRZLHM9dGhpcy5pbWFnZU9mZnNldFgrdGhpcy5pbWcud2lkdGgqdGhpcy5pbWFnZVNjYWxlLGM9dGhpcy5pbWFnZU9mZnNldFkrdGhpcy5pbWcuaGVpZ2h0KnRoaXMuaW1hZ2VTY2FsZTtzd2l0Y2godGhpcy5yZXNpemVIYW5kbGUpe2Nhc2Uic2UiOnRoaXMuY3JvcFNpemU9TWF0aC5tYXgodGhpcy5taW5Dcm9wU2l6ZSxNYXRoLm1pbih0aGlzLmNyb3BTaXplK01hdGgubWF4KGEsaSksTWF0aC5taW4ocy10aGlzLmNyb3BYLGMtdGhpcy5jcm9wWSkpKTticmVhaztjYXNlIm53IjpsZXQgZD1NYXRoLm1heCh0aGlzLm1pbkNyb3BTaXplLHRoaXMuY3JvcFNpemUtTWF0aC5tYXgoYSxpKSksZj10aGlzLmNyb3BTaXplLWQsdT10aGlzLmNyb3BYK2YscD10aGlzLmNyb3BZK2Y7dT49byYmcD49biYmKHRoaXMuY3JvcFg9dSx0aGlzLmNyb3BZPXAsdGhpcy5jcm9wU2l6ZT1kKTticmVhaztjYXNlIm5lIjpsZXQgaD1NYXRoLm1heChhLC1pKSxiPU1hdGgubWF4KHRoaXMubWluQ3JvcFNpemUsdGhpcy5jcm9wU2l6ZStoKSx4PWItdGhpcy5jcm9wU2l6ZSxnPXRoaXMuY3JvcFkteDtnPj1uJiZ0aGlzLmNyb3BYK2I8PXMmJih0aGlzLmNyb3BZPWcsdGhpcy5jcm9wU2l6ZT1iKTticmVhaztjYXNlInN3IjpsZXQgdj1NYXRoLm1heCgtYSxpKSx3PU1hdGgubWF4KHRoaXMubWluQ3JvcFNpemUsdGhpcy5jcm9wU2l6ZSt2KSxNPXctdGhpcy5jcm9wU2l6ZSxGPXRoaXMuY3JvcFgtTTtGPj1vJiZ0aGlzLmNyb3BZK3c8PWMmJih0aGlzLmNyb3BYPUYsdGhpcy5jcm9wU2l6ZT13KTticmVha319cmVuZGVyKCl7dGhpcy5jdHguY2xlYXJSZWN0KDAsMCx0aGlzLmNhbnZhcy53aWR0aCx0aGlzLmNhbnZhcy5oZWlnaHQpLHRoaXMub3ZlcmxheUN0eC5jbGVhclJlY3QoMCwwLHRoaXMub3ZlcmxheUNhbnZhcy53aWR0aCx0aGlzLm92ZXJsYXlDYW52YXMuaGVpZ2h0KSx0aGlzLmN0eC5maWxsU3R5bGU9IiMwMDAwMDAiLHRoaXMuY3R4LmZpbGxSZWN0KDAsMCx0aGlzLmNhbnZhcy53aWR0aCx0aGlzLmNhbnZhcy5oZWlnaHQpLHRoaXMuY3R4LmRyYXdJbWFnZSh0aGlzLmltZyx0aGlzLmltYWdlT2Zmc2V0WCx0aGlzLmltYWdlT2Zmc2V0WSx0aGlzLmltZy53aWR0aCp0aGlzLmltYWdlU2NhbGUsdGhpcy5pbWcuaGVpZ2h0KnRoaXMuaW1hZ2VTY2FsZSksdGhpcy5vdmVybGF5Q3R4LmZpbGxTdHlsZT0icmdiYSgwLCAwLCAwLCAwLjUpIix0aGlzLm92ZXJsYXlDdHguZmlsbFJlY3QodGhpcy5pbWFnZU9mZnNldFgsdGhpcy5pbWFnZU9mZnNldFksdGhpcy5pbWcud2lkdGgqdGhpcy5pbWFnZVNjYWxlLHRoaXMuaW1nLmhlaWdodCp0aGlzLmltYWdlU2NhbGUpLHRoaXMub3ZlcmxheUN0eC5zYXZlKCksdGhpcy5vcHRpb25zLnNoYXBlPT09InJvdW5kIj8odGhpcy5vdmVybGF5Q3R4LmJlZ2luUGF0aCgpLHRoaXMub3ZlcmxheUN0eC5hcmModGhpcy5jcm9wWCt0aGlzLmNyb3BTaXplLzIsdGhpcy5jcm9wWSt0aGlzLmNyb3BTaXplLzIsdGhpcy5jcm9wU2l6ZS8yLDAsTWF0aC5QSSoyKSx0aGlzLm92ZXJsYXlDdHguY2xpcCgpKToodGhpcy5vdmVybGF5Q3R4LmJlZ2luUGF0aCgpLHRoaXMub3ZlcmxheUN0eC5yZWN0KHRoaXMuY3JvcFgsdGhpcy5jcm9wWSx0aGlzLmNyb3BTaXplLHRoaXMuY3JvcFNpemUpLHRoaXMub3ZlcmxheUN0eC5jbGlwKCkpLHRoaXMub3ZlcmxheUN0eC5jbGVhclJlY3QoMCwwLHRoaXMub3ZlcmxheUNhbnZhcy53aWR0aCx0aGlzLm92ZXJsYXlDYW52YXMuaGVpZ2h0KSx0aGlzLm92ZXJsYXlDdHgucmVzdG9yZSgpLHRoaXMub3ZlcmxheUN0eC5zdHJva2VTdHlsZT0id2hpdGUiLHRoaXMub3ZlcmxheUN0eC5saW5lV2lkdGg9Mix0aGlzLm9wdGlvbnMuc2hhcGU9PT0icm91bmQiPyh0aGlzLm92ZXJsYXlDdHguYmVnaW5QYXRoKCksdGhpcy5vdmVybGF5Q3R4LmFyYyh0aGlzLmNyb3BYK3RoaXMuY3JvcFNpemUvMix0aGlzLmNyb3BZK3RoaXMuY3JvcFNpemUvMix0aGlzLmNyb3BTaXplLzIsMCxNYXRoLlBJKjIpLHRoaXMub3ZlcmxheUN0eC5zdHJva2UoKSk6dGhpcy5vdmVybGF5Q3R4LnN0cm9rZVJlY3QodGhpcy5jcm9wWCx0aGlzLmNyb3BZLHRoaXMuY3JvcFNpemUsdGhpcy5jcm9wU2l6ZSksdGhpcy5kcmF3UmVzaXplSGFuZGxlcygpfWRyYXdSZXNpemVIYW5kbGVzKCl7bGV0IHI9W3t4OnRoaXMuY3JvcFgseTp0aGlzLmNyb3BZfSx7eDp0aGlzLmNyb3BYK3RoaXMuY3JvcFNpemUseTp0aGlzLmNyb3BZfSx7eDp0aGlzLmNyb3BYLHk6dGhpcy5jcm9wWSt0aGlzLmNyb3BTaXplfSx7eDp0aGlzLmNyb3BYK3RoaXMuY3JvcFNpemUseTp0aGlzLmNyb3BZK3RoaXMuY3JvcFNpemV9XTt0aGlzLm92ZXJsYXlDdHguZmlsbFN0eWxlPSJ3aGl0ZSIsci5mb3JFYWNoKGE9Pnt0aGlzLm92ZXJsYXlDdHguYmVnaW5QYXRoKCksdGhpcy5vdmVybGF5Q3R4LmFyYyhhLngsYS55LDgsMCxNYXRoLlBJKjIpLHRoaXMub3ZlcmxheUN0eC5maWxsKCl9KX1hc3luYyBnZXRDcm9wcGVkSW1hZ2UoKXtsZXQgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJjYW52YXMiKSxyPXQuZ2V0Q29udGV4dCgiMmQiKSxhPTEvdGhpcy5pbWFnZVNjYWxlLGk9dGhpcy5jcm9wU2l6ZSphLG89dGhpcy5vcHRpb25zLm91dHB1dFNpemU7bz5pJiZjb25zb2xlLmluZm8oYFByb2ZpbGUgcGljdHVyZTogVXBzY2FsaW5nIGZyb20gJHtNYXRoLnJvdW5kKGkpfXB4IHRvICR7b31weGApLHQud2lkdGg9byx0LmhlaWdodD1vO2xldCBuPSh0aGlzLmNyb3BYLXRoaXMuaW1hZ2VPZmZzZXRYKSphLHM9KHRoaXMuY3JvcFktdGhpcy5pbWFnZU9mZnNldFkpKmEsYz10aGlzLmNyb3BTaXplKmE7dGhpcy5vcHRpb25zLnNoYXBlPT09InJvdW5kIiYmKHIuYmVnaW5QYXRoKCksci5hcmMoby8yLG8vMixvLzIsMCxNYXRoLlBJKjIpLHIuY2xpcCgpKSxyLmltYWdlU21vb3RoaW5nRW5hYmxlZD0hMCxyLmltYWdlU21vb3RoaW5nUXVhbGl0eT0iaGlnaCIsci5kcmF3SW1hZ2UodGhpcy5pbWcsbixzLGMsYywwLDAsbyxvKTtsZXQgZj10aGlzLm9wdGlvbnMuaW1hZ2UuaW5jbHVkZXMoImltYWdlL3BuZyIpPyJpbWFnZS9wbmciOiJpbWFnZS9qcGVnIjtyZXR1cm4gdC50b0RhdGFVUkwoZix0aGlzLm9wdGlvbnMub3V0cHV0UXVhbGl0eSl9ZGVzdHJveSgpe3RoaXMuY2FudmFzLnJlbW92ZSgpLHRoaXMub3ZlcmxheUNhbnZhcy5yZW1vdmUoKX19fSk7dmFyIG0zLGJvLFljdCxETnI9bCgoKT0+e1NlKCk7Vm4oKTt1bygpO1RuKCk7YnIoKTtvMygpO2tjKCk7a2MoKTtMTnIoKTtvdCgpO20zPWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sYm89ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LFljdD0oKCk9PntsZXQgZT1bemUoImRlZXMtcHJvZmlsZXBpY3R1cmUtbW9kYWwiKV0sdCxyPVtdLGEsaT1EZSxvLG49W10scz1bXSxjLGQ9W10sZj1bXSx1LHA9W10saD1bXSxiLHg9W10sZz1bXSx2LHc9W10sTT1bXSxGLEM9W10saz1bXSxOLCQ9W10sST1bXTt2YXIgQj1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IHo9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baih7dHlwZTpTdHJpbmd9KV0sYz1baih7dHlwZTpTdHJpbmd9KV0sdT1baih7dHlwZTpOdW1iZXJ9KV0sYj1baih7dHlwZTpOdW1iZXJ9KV0sdj1bcmUoKV0sRj1bcmUoKV0sTj1bcmUoKV0sbTModGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJpbml0aWFsSW1hZ2UiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnk9PiJpbml0aWFsSW1hZ2UiaW4geSxnZXQ6eT0+eS5pbml0aWFsSW1hZ2Usc2V0Oih5LEUpPT57eS5pbml0aWFsSW1hZ2U9RX19LG1ldGFkYXRhOnp9LG4scyksbTModGhpcyxudWxsLGMse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzaGFwZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eT0+InNoYXBlImluIHksZ2V0Onk9Pnkuc2hhcGUsc2V0Oih5LEUpPT57eS5zaGFwZT1FfX0sbWV0YWRhdGE6en0sZCxmKSxtMyh0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im91dHB1dFNpemUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnk9PiJvdXRwdXRTaXplImluIHksZ2V0Onk9Pnkub3V0cHV0U2l6ZSxzZXQ6KHksRSk9Pnt5Lm91dHB1dFNpemU9RX19LG1ldGFkYXRhOnp9LHAsaCksbTModGhpcyxudWxsLGIse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJvdXRwdXRRdWFsaXR5IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5PT4ib3V0cHV0UXVhbGl0eSJpbiB5LGdldDp5PT55Lm91dHB1dFF1YWxpdHksc2V0Oih5LEUpPT57eS5vdXRwdXRRdWFsaXR5PUV9fSxtZXRhZGF0YTp6fSx4LGcpLG0zKHRoaXMsbnVsbCx2LHtraW5kOiJhY2Nlc3NvciIsbmFtZToiY3VycmVudFN0ZXAiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnk9PiJjdXJyZW50U3RlcCJpbiB5LGdldDp5PT55LmN1cnJlbnRTdGVwLHNldDooeSxFKT0+e3kuY3VycmVudFN0ZXA9RX19LG1ldGFkYXRhOnp9LHcsTSksbTModGhpcyxudWxsLEYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJjcm9wcGVkSW1hZ2UiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnk9PiJjcm9wcGVkSW1hZ2UiaW4geSxnZXQ6eT0+eS5jcm9wcGVkSW1hZ2Usc2V0Oih5LEUpPT57eS5jcm9wcGVkSW1hZ2U9RX19LG1ldGFkYXRhOnp9LEMsayksbTModGhpcyxudWxsLE4se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJpc1Byb2Nlc3NpbmciLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnk9PiJpc1Byb2Nlc3NpbmciaW4geSxnZXQ6eT0+eS5pc1Byb2Nlc3Npbmcsc2V0Oih5LEUpPT57eS5pc1Byb2Nlc3Npbmc9RX19LG1ldGFkYXRhOnp9LCQsSSksbTMobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6en0sbnVsbCxyKSxCPWE9dC52YWx1ZSx6JiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnp9KX0jZT1ibyh0aGlzLG4sIiIpO2dldCBpbml0aWFsSW1hZ2UoKXtyZXR1cm4gdGhpcy4jZX1zZXQgaW5pdGlhbEltYWdlKHope3RoaXMuI2U9en0jdD0oYm8odGhpcyxzKSxibyh0aGlzLGQsInJvdW5kIikpO2dldCBzaGFwZSgpe3JldHVybiB0aGlzLiN0fXNldCBzaGFwZSh6KXt0aGlzLiN0PXp9I3I9KGJvKHRoaXMsZiksYm8odGhpcyxwLDgwMCkpO2dldCBvdXRwdXRTaXplKCl7cmV0dXJuIHRoaXMuI3J9c2V0IG91dHB1dFNpemUoeil7dGhpcy4jcj16fSNhPShibyh0aGlzLGgpLGJvKHRoaXMseCwuOTUpKTtnZXQgb3V0cHV0UXVhbGl0eSgpe3JldHVybiB0aGlzLiNhfXNldCBvdXRwdXRRdWFsaXR5KHope3RoaXMuI2E9en0jaT0oYm8odGhpcyxnKSxibyh0aGlzLHcsImNyb3AiKSk7Z2V0IGN1cnJlbnRTdGVwKCl7cmV0dXJuIHRoaXMuI2l9c2V0IGN1cnJlbnRTdGVwKHope3RoaXMuI2k9en0jbz0oYm8odGhpcyxNKSxibyh0aGlzLEMsIiIpKTtnZXQgY3JvcHBlZEltYWdlKCl7cmV0dXJuIHRoaXMuI299c2V0IGNyb3BwZWRJbWFnZSh6KXt0aGlzLiNvPXp9I249KGJvKHRoaXMsayksYm8odGhpcywkLCExKSk7Z2V0IGlzUHJvY2Vzc2luZygpe3JldHVybiB0aGlzLiNufXNldCBpc1Byb2Nlc3Npbmcoeil7dGhpcy4jbj16fWNyb3BwZXI9KGJvKHRoaXMsSSksbnVsbCk7d2luZG93TGF5ZXI7ekluZGV4PTA7c3RhdGljIHN0eWxlcz1bUGUsbS5kZWZhdWx0U3R5bGVzLGxlYAogICAgICAvKiBUT0RPOiBNaWdyYXRlIGhhcmRjb2RlZCB2YWx1ZXMgdG8gLS1kZWVzLSogQ1NTIHZhcmlhYmxlcyAqLwogICAgICA6aG9zdCB7CiAgICAgICAgZm9udC1mYW1pbHk6ICR7WHJ9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzMzMyIsIiNmZmYiKX07CiAgICAgICAgcG9zaXRpb246IGZpeGVkOwogICAgICAgIHRvcDogMDsKICAgICAgICBsZWZ0OiAwOwogICAgICAgIHJpZ2h0OiAwOwogICAgICAgIGJvdHRvbTogMDsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgei1pbmRleDogdmFyKC0tei1pbmRleCk7CiAgICAgIH0KCiAgICAgIC5tb2RhbC1jb250YWluZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZmZmZmZmIiwiIzBhMGEwYSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJyZ2JhKDAsIDAsIDAsIDAuMDgpIiwicmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KSIpfTsKICAgICAgICBib3gtc2hhZG93OiAke20uYmRUaGVtZSgiMCAyMHB4IDI1cHggLTVweCByZ2JhKDAsIDAsIDAsIDAuMSksIDAgMTBweCAxMHB4IC01cHggcmdiYSgwLCAwLCAwLCAwLjA0KSIsIjAgMjBweCAyNXB4IC01cHggcmdiYSgwLCAwLCAwLCAwLjMpLCAwIDEwcHggMTBweCAtNXB4IHJnYmEoMCwgMCwgMCwgMC4yKSIpfTsKICAgICAgICB3aWR0aDogNDgwcHg7CiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMHZ3IC0gMzJweCk7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpIHNjYWxlKDAuOTgpOwogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgYW5pbWF0aW9uOiBtb2RhbFNob3cgMC4yNXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKSBmb3J3YXJkczsKICAgICAgfQoKICAgICAgQGtleWZyYW1lcyBtb2RhbFNob3cgewogICAgICAgIHRvIHsKICAgICAgICAgIG9wYWNpdHk6IDE7CiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KSBzY2FsZSgxKTsKICAgICAgICB9CiAgICAgIH0KCiAgICAgIC5tb2RhbC1oZWFkZXIgewogICAgICAgIGhlaWdodDogNTJweDsKICAgICAgICBwYWRkaW5nOiAwIDIwcHg7CiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJyZ2JhKDAsIDAsIDAsIDAuMDYpIiwicmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA2KSIpfTsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgICB9CgogICAgICAubW9kYWwtdGl0bGUgewogICAgICAgIGZvbnQtc2l6ZTogMTVweDsKICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzA5MDkwYiIsIiNmYWZhZmEiKX07CiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07CiAgICAgIH0KCiAgICAgIC5jbG9zZS1idXR0b24gewogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICByaWdodDogMTBweDsKICAgICAgICB0b3A6IDUwJTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7CiAgICAgICAgd2lkdGg6IDMycHg7CiAgICAgICAgaGVpZ2h0OiAzMnB4OwogICAgICAgIGJvcmRlcjogbm9uZTsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4OwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM3MTcxN2EiLCIjNzE3MTdhIil9OwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICB9CgogICAgICAuY2xvc2UtYnV0dG9uOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgicmdiYSgwLCAwLCAwLCAwLjA1KSIsInJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSkiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMDkwOTBiIiwiI2ZhZmFmYSIpfTsKICAgICAgfQoKICAgICAgLmNsb3NlLWJ1dHRvbjphY3RpdmUgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDAsIDAsIDAsIDAuMDgpIiwicmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KSIpfTsKICAgICAgfQoKICAgICAgLm1vZGFsLWJvZHkgewogICAgICAgIGZsZXg6IDE7CiAgICAgICAgcGFkZGluZzogMjRweDsKICAgICAgICBvdmVyZmxvdy15OiBhdXRvOwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogMjBweDsKICAgICAgfQoKICAgICAgLmNyb3BwZXItY29udGFpbmVyIHsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBtYXgtd2lkdGg6IDM2MHB4OwogICAgICAgIGFzcGVjdC1yYXRpbzogMTsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiMwMDAwMDAiLCIjMDAwMDAwIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDEycHg7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICBib3gtc2hhZG93OiAke20uYmRUaGVtZSgiaW5zZXQgMCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4wNikiLCJpbnNldCAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjIpIil9OwogICAgICB9CgogICAgICAucHJldmlldy1jb250YWluZXIgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogMjBweDsKICAgICAgfQoKICAgICAgLnByZXZpZXctaW1hZ2UgewogICAgICAgIHdpZHRoOiAxODBweDsKICAgICAgICBoZWlnaHQ6IDE4MHB4OwogICAgICAgIG9iamVjdC1maXQ6IGNvdmVyOwogICAgICAgIGJvcmRlcjogNHB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZmZmZmZmIiwiIzE4MTgxYiIpfTsKICAgICAgICBib3gtc2hhZG93OiAke20uYmRUaGVtZSgiMCAxMHB4IDE1cHggLTNweCByZ2JhKDAsIDAsIDAsIDAuMSksIDAgNHB4IDZweCAtMnB4IHJnYmEoMCwgMCwgMCwgMC4wNSkiLCIwIDEwcHggMTVweCAtM3B4IHJnYmEoMCwgMCwgMCwgMC4zKSwgMCA0cHggNnB4IC0ycHggcmdiYSgwLCAwLCAwLCAwLjIpIil9OwogICAgICB9CgogICAgICAucHJldmlldy1pbWFnZS5yb3VuZCB7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgICB9CgogICAgICAucHJldmlldy1pbWFnZS5zcXVhcmUgewogICAgICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7CiAgICAgIH0KCiAgICAgIC5zdWNjZXNzLW1lc3NhZ2UgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDEwcHg7CiAgICAgICAgcGFkZGluZzogMTBweCAyMHB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjMTBiOTgxIiwiIzEwYjk4MSIpfTsKICAgICAgICBjb2xvcjogd2hpdGU7CiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwcHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgYW5pbWF0aW9uOiBzdWNjZXNzUHVsc2UgMC40cyBlYXNlLW91dDsKICAgICAgfQoKICAgICAgQGtleWZyYW1lcyBzdWNjZXNzUHVsc2UgewogICAgICAgIDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgwLjkpOyBvcGFjaXR5OiAwOyB9CiAgICAgICAgNTAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxLjAyKTsgfQogICAgICAgIDEwMCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEpOyBvcGFjaXR5OiAxOyB9CiAgICAgIH0KCiAgICAgIC5tb2RhbC1mb290ZXIgewogICAgICAgIHBhZGRpbmc6IDIwcHggMjRweDsKICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHttLmJkVGhlbWUoInJnYmEoMCwgMCwgMCwgMC4wNikiLCJyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDYpIil9OwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZ2FwOiAxMHB4OwogICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7CiAgICAgIH0KCiAgICAgIC5pbnN0cnVjdGlvbnMgewogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM3MTcxN2EiLCIjYTFhMWFhIil9OwogICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICBsaW5lLWhlaWdodDogMS41OwogICAgICAgIG1heC13aWR0aDogMzIwcHg7CiAgICAgIH0KCiAgICAgIC5sb2FkaW5nLXNwaW5uZXIgewogICAgICAgIHdpZHRoOiA0MHB4OwogICAgICAgIGhlaWdodDogNDBweDsKICAgICAgICBib3JkZXI6IDNweCBzb2xpZCAke20uYmRUaGVtZSgicmdiYSgwLCAwLCAwLCAwLjEpIiwicmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpIil9OwogICAgICAgIGJvcmRlci10b3AtY29sb3I6ICR7bS5iZFRoZW1lKCIjM2I4MmY2IiwiIzYwYTVmYSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICAgICAgYW5pbWF0aW9uOiBzcGluIDAuNnMgbGluZWFyIGluZmluaXRlOwogICAgICB9CgogICAgICBAa2V5ZnJhbWVzIHNwaW4gewogICAgICAgIHRvIHsKICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7CiAgICAgICAgfQogICAgICB9CgogICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHsKICAgICAgICAubW9kYWwtY29udGFpbmVyIHsKICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMHZ3IC0gMzJweCk7CiAgICAgICAgICBtYXJnaW46IDE2cHg7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC5tb2RhbC1ib2R5IHsKICAgICAgICAgIHBhZGRpbmc6IDI0cHg7CiAgICAgICAgfQogICAgICB9CiAgICBgXTthc3luYyBjb25uZWN0ZWRDYWxsYmFjaygpe3N1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCksdGhpcy53aW5kb3dMYXllcj1hd2FpdCBxbi5jcmVhdGVBbmRTaG93KHtibHVyOiEwfSksdGhpcy53aW5kb3dMYXllci5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKCk9PnRoaXMuY2xvc2UoKSksdGhpcy56SW5kZXg9Y2EuZ2V0TmV4dFpJbmRleCgpLHRoaXMuc3R5bGUuc2V0UHJvcGVydHkoIi0tei1pbmRleCIsdGhpcy56SW5kZXgudG9TdHJpbmcoKSksY2EucmVnaXN0ZXIodGhpcyx0aGlzLnpJbmRleCl9YXN5bmMgZGlzY29ubmVjdGVkQ2FsbGJhY2soKXtzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpLHRoaXMuY3JvcHBlciYmdGhpcy5jcm9wcGVyLmRlc3Ryb3koKSx0aGlzLndpbmRvd0xheWVyJiZhd2FpdCB0aGlzLndpbmRvd0xheWVyLmRlc3Ryb3koKSxjYS51bnJlZ2lzdGVyKHRoaXMpfXJlbmRlcigpe3JldHVybiBTYAogICAgICA8ZGl2IGNsYXNzPSJtb2RhbC1jb250YWluZXIiIEBjbGljaz0ke3o9Pnouc3RvcFByb3BhZ2F0aW9uKCl9PgogICAgICAgIDxkaXYgY2xhc3M9Im1vZGFsLWhlYWRlciI+CiAgICAgICAgICA8aDMgY2xhc3M9Im1vZGFsLXRpdGxlIj4KICAgICAgICAgICAgJHt0aGlzLmN1cnJlbnRTdGVwPT09ImNyb3AiPyJBZGp1c3QgSW1hZ2UiOiJTdWNjZXNzIn0KICAgICAgICAgIDwvaDM+CiAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJjbG9zZS1idXR0b24iIEBjbGljaz0ke3RoaXMuY2xvc2V9IHRpdGxlPSJDbG9zZSI+CiAgICAgICAgICAgIDxkZWVzLWljb24gaWNvbj0ibHVjaWRlOngiIGljb25TaXplPSIxNiI+PC9kZWVzLWljb24+CiAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgICA8ZGl2IGNsYXNzPSJtb2RhbC1ib2R5Ij4KICAgICAgICAgICR7dGhpcy5jdXJyZW50U3RlcD09PSJjcm9wIj9TYAogICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbnN0cnVjdGlvbnMiPgogICAgICAgICAgICAgIFBvc2l0aW9uIGFuZCByZXNpemUgdGhlIHNxdWFyZSB0byBzZWxlY3QgeW91ciBwcm9maWxlIGFyZWEKICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNyb3BwZXItY29udGFpbmVyIiBpZD0iY3JvcHBlckNvbnRhaW5lciI+PC9kaXY+CiAgICAgICAgICBgOlNgCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InByZXZpZXctY29udGFpbmVyIj4KICAgICAgICAgICAgICAke3RoaXMuaXNQcm9jZXNzaW5nP1NgCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsb2FkaW5nLXNwaW5uZXIiPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW5zdHJ1Y3Rpb25zIj5TYXZpbmcuLi48L2Rpdj4KICAgICAgICAgICAgICBgOlNgCiAgICAgICAgICAgICAgICA8aW1nIAogICAgICAgICAgICAgICAgICBjbGFzcz0icHJldmlldy1pbWFnZSAke3RoaXMuc2hhcGV9IiAKICAgICAgICAgICAgICAgICAgc3JjPSIke3RoaXMuY3JvcHBlZEltYWdlfSIgCiAgICAgICAgICAgICAgICAgIGFsdD0iQ3JvcHBlZCBwcmV2aWV3IgogICAgICAgICAgICAgICAgLz4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN1Y2Nlc3MtbWVzc2FnZSI+CiAgICAgICAgICAgICAgICAgIDxkZWVzLWljb24gaWNvbj0ibHVjaWRlOmNoZWNrIiBpY29uU2l6ZT0iMTYiPjwvZGVlcy1pY29uPgogICAgICAgICAgICAgICAgICA8c3Bhbj5Mb29raW5nIGdvb2QhPC9zcGFuPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgYH0KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICBgfQogICAgICAgIDwvZGl2PgogICAgICAgIAogICAgICAgIDxkaXYgY2xhc3M9Im1vZGFsLWZvb3RlciI+CiAgICAgICAgICAke3RoaXMuY3VycmVudFN0ZXA9PT0iY3JvcCI/U2AKICAgICAgICAgICAgPGRlZXMtYnV0dG9uIHR5cGU9ImRlc3RydWN0aXZlIiBzaXplPSJzbSIgQGNsaWNrPSR7dGhpcy5jbG9zZX0+CiAgICAgICAgICAgICAgQ2FuY2VsCiAgICAgICAgICAgIDwvZGVlcy1idXR0b24+CiAgICAgICAgICAgIDxkZWVzLWJ1dHRvbiB0eXBlPSJkZWZhdWx0IiBzaXplPSJzbSIgQGNsaWNrPSR7dGhpcy5oYW5kbGVDcm9wfT4KICAgICAgICAgICAgICBTYXZlCiAgICAgICAgICAgIDwvZGVlcy1idXR0b24+CiAgICAgICAgICBgOiIifQogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIGB9YXN5bmMgZmlyc3RVcGRhdGVkKCl7dGhpcy5jdXJyZW50U3RlcD09PSJjcm9wIiYmYXdhaXQgdGhpcy5pbml0aWFsaXplQ3JvcHBlcigpfWFzeW5jIGluaXRpYWxpemVDcm9wcGVyKCl7YXdhaXQgdGhpcy51cGRhdGVDb21wbGV0ZTtsZXQgej10aGlzLnNoYWRvd1Jvb3QuZ2V0RWxlbWVudEJ5SWQoImNyb3BwZXJDb250YWluZXIiKTt6JiYodGhpcy5jcm9wcGVyPW5ldyBuY2Uoe2NvbnRhaW5lcjp6LGltYWdlOnRoaXMuaW5pdGlhbEltYWdlLHNoYXBlOnRoaXMuc2hhcGUsYXNwZWN0UmF0aW86MSxvdXRwdXRTaXplOnRoaXMub3V0cHV0U2l6ZSxvdXRwdXRRdWFsaXR5OnRoaXMub3V0cHV0UXVhbGl0eX0pLGF3YWl0IHRoaXMuY3JvcHBlci5pbml0aWFsaXplKCkpfWFzeW5jIGhhbmRsZUNyb3AoKXtpZih0aGlzLmNyb3BwZXIpdHJ5e3RoaXMuaXNQcm9jZXNzaW5nPSEwLHRoaXMuY3VycmVudFN0ZXA9InByZXZpZXciLGF3YWl0IHRoaXMudXBkYXRlQ29tcGxldGU7bGV0IHo9YXdhaXQgdGhpcy5jcm9wcGVyLmdldENyb3BwZWRJbWFnZSgpO3RoaXMuY3JvcHBlZEltYWdlPXosYXdhaXQgbmV3IFByb21pc2UoeT0+c2V0VGltZW91dCh5LDgwMCkpLHRoaXMuaXNQcm9jZXNzaW5nPSExLHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoInNhdmUiLHtkZXRhaWw6e2Nyb3BwZWRJbWFnZTp0aGlzLmNyb3BwZWRJbWFnZX0sYnViYmxlczohMCxjb21wb3NlZDohMH0pKSxzZXRUaW1lb3V0KCgpPT57dGhpcy5jbG9zZSgpfSwxNTAwKX1jYXRjaCh6KXtjb25zb2xlLmVycm9yKCJFcnJvciBjcm9wcGluZyBpbWFnZToiLHopLHRoaXMuaXNQcm9jZXNzaW5nPSExfX1jbG9zZSgpe3RoaXMucmVtb3ZlKCl9c3RhdGlje2JvKGEscil9fTtyZXR1cm4gQj1hfSkoKX0pO3ZhciBBTnIsRU5yPWwoKCk9PntTZSgpO3phKCk7dDEoKTtaY3QoKTtBTnI9KCk9PlNgCiAgPHN0eWxlPgogICAgJHtsZWAKICAgICAgLmRlbW8tY29udGFpbmVyIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgZ2FwOiAyNHB4OwogICAgICAgIHBhZGRpbmc6IDI0cHg7CiAgICAgICAgbWF4LXdpZHRoOiAxMjAwcHg7CiAgICAgICAgbWFyZ2luOiAwIGF1dG87CiAgICAgIH0KICAgICAgCiAgICAgIGRlZXMtcGFuZWwgewogICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7CiAgICAgIH0KICAgICAgCiAgICAgIC5kZW1vLXJvdyB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBnYXA6IDQ4cHg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBmbGV4LXdyYXA6IHdyYXA7CiAgICAgIH0KICAgICAgCiAgICAgIC5kZW1vLW91dHB1dCB7CiAgICAgICAgbWFyZ2luLXRvcDogMTZweDsKICAgICAgICBwYWRkaW5nOiAxMnB4OwogICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMTA1LCAyNDIsIDAuMSk7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlOwogICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDsKICAgICAgICBtYXgtaGVpZ2h0OiAxMDBweDsKICAgICAgICBvdmVyZmxvdy15OiBhdXRvOwogICAgICB9CiAgICAgIAogICAgICAuZmVhdHVyZS1saXN0IHsKICAgICAgICBtYXJnaW4tdG9wOiAxNnB4OwogICAgICAgIHBhZGRpbmctbGVmdDogMjBweDsKICAgICAgfQogICAgICAKICAgICAgLmZlYXR1cmUtbGlzdCBsaSB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4OwogICAgICB9CiAgICBgfQogIDwvc3R5bGU+CiAgCiAgPGRpdiBjbGFzcz0iZGVtby1jb250YWluZXIiPgogICAgPGRlZXMtZGVtb3dyYXBwZXIgLnJ1bkFmdGVyUmVuZGVyPSR7YXN5bmMgZT0+e2xldCB0PWUucXVlcnlTZWxlY3RvcignZGVlcy1pbnB1dC1wcm9maWxlcGljdHVyZVtzaGFwZT0icm91bmQiXScpO3QmJnQuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixyPT57bGV0IGE9ci50YXJnZXQ7Y29uc29sZS5sb2coIlJvdW5kIHByb2ZpbGUgcGljdHVyZSBjaGFuZ2VkOiIsYS52YWx1ZT8uc3Vic3RyaW5nKDAsNTApKyIuLi4iKX0pfX0+CiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyJQcm9maWxlIFBpY3R1cmUgSW5wdXQifSAuc3VidGl0bGU9JHsiQmFzaWMgdXNhZ2Ugd2l0aCByb3VuZCBhbmQgc3F1YXJlIHNoYXBlcyJ9PgogICAgICAgIDxkaXYgY2xhc3M9ImRlbW8tcm93Ij4KICAgICAgICAgIDxkZWVzLWlucHV0LXByb2ZpbGVwaWN0dXJlCiAgICAgICAgICAgIGxhYmVsPSJQcm9maWxlIFBpY3R1cmUgKFJvdW5kKSIKICAgICAgICAgICAgZGVzY3JpcHRpb249IkNsaWNrIHRvIHVwbG9hZCBvciBkcmFnICYgZHJvcCBhbiBpbWFnZSIKICAgICAgICAgICAgc2hhcGU9InJvdW5kIgogICAgICAgICAgICBzaXplPSIxMjAiCiAgICAgICAgICA+PC9kZWVzLWlucHV0LXByb2ZpbGVwaWN0dXJlPgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1pbnB1dC1wcm9maWxlcGljdHVyZQogICAgICAgICAgICBsYWJlbD0iUHJvZmlsZSBQaWN0dXJlIChTcXVhcmUpIgogICAgICAgICAgICBkZXNjcmlwdGlvbj0iU3VwcG9ydHMgSlBFRywgUE5HLCBhbmQgV2ViUCBmb3JtYXRzIgogICAgICAgICAgICBzaGFwZT0ic3F1YXJlIgogICAgICAgICAgICBzaXplPSIxMjAiCiAgICAgICAgICA+PC9kZWVzLWlucHV0LXByb2ZpbGVwaWN0dXJlPgogICAgICAgIDwvZGl2PgogICAgICA8L2RlZXMtcGFuZWw+CiAgICA8L2RlZXMtZGVtb3dyYXBwZXI+CgogICAgPGRlZXMtZGVtb3dyYXBwZXIgLnJ1bkFmdGVyUmVuZGVyPSR7YXN5bmMgZT0+e2UucXVlcnlTZWxlY3RvckFsbCgiZGVlcy1pbnB1dC1wcm9maWxlcGljdHVyZSIpLmZvckVhY2gocj0+e3IuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixhPT57bGV0IGk9YS50YXJnZXQ7Y29uc29sZS5sb2coYFByb2ZpbGUgKHNpemUgJHtpLnNpemV9KSBjaGFuZ2VkYCl9KX0pfX0+CiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyJTaXplIFZhcmlhdGlvbnMifSAuc3VidGl0bGU9JHsiUHJvZmlsZSBwaWN0dXJlcyBpbiBkaWZmZXJlbnQgc2l6ZXMifT4KICAgICAgICA8ZGl2IGNsYXNzPSJkZW1vLXJvdyI+CiAgICAgICAgICA8ZGVlcy1pbnB1dC1wcm9maWxlcGljdHVyZQogICAgICAgICAgICBsYWJlbD0iU21hbGwgKDgwcHgpIgogICAgICAgICAgICBzaGFwZT0icm91bmQiCiAgICAgICAgICAgIHNpemU9IjgwIgogICAgICAgICAgPjwvZGVlcy1pbnB1dC1wcm9maWxlcGljdHVyZT4KICAgICAgICAgIAogICAgICAgICAgPGRlZXMtaW5wdXQtcHJvZmlsZXBpY3R1cmUKICAgICAgICAgICAgbGFiZWw9Ik1lZGl1bSAoMTIwcHgpIgogICAgICAgICAgICBzaGFwZT0icm91bmQiCiAgICAgICAgICAgIHNpemU9IjEyMCIKICAgICAgICAgID48L2RlZXMtaW5wdXQtcHJvZmlsZXBpY3R1cmU+CiAgICAgICAgICAKICAgICAgICAgIDxkZWVzLWlucHV0LXByb2ZpbGVwaWN0dXJlCiAgICAgICAgICAgIGxhYmVsPSJMYXJnZSAoMTYwcHgpIgogICAgICAgICAgICBzaGFwZT0icm91bmQiCiAgICAgICAgICAgIHNpemU9IjE2MCIKICAgICAgICAgID48L2RlZXMtaW5wdXQtcHJvZmlsZXBpY3R1cmU+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgIDwvZGVlcy1kZW1vd3JhcHBlcj4KCiAgICA8ZGVlcy1kZW1vd3JhcHBlciAucnVuQWZ0ZXJSZW5kZXI9JHthc3luYyBlPT57bGV0IHQ9ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1qQXdJaUJvWldsbmFIUTlJakl3TUNJZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWo0S0lDQThaR1ZtY3o0S0lDQWdJRHhzYVc1bFlYSkhjbUZrYVdWdWRDQnBaRDBpWjNKaFpHbGxiblFpSUhneFBTSXdKU0lnZVRFOUlqQWxJaUI0TWowaU1UQXdKU0lnZVRJOUlqRXdNQ1VpUGdvZ0lDQWdJQ0E4YzNSdmNDQnZabVp6WlhROUlqQWxJaUJ6ZEc5d0xXTnZiRzl5UFNJak5qWTNaV1ZoSWlBdlBnb2dJQ0FnSUNBOGMzUnZjQ0J2Wm1aelpYUTlJakV3TUNVaUlITjBiM0F0WTI5c2IzSTlJaU0zTmpSaVlUSWlJQzgrQ2lBZ0lDQThMMnhwYm1WaGNrZHlZV1JwWlc1MFBnb2dJRHd2WkdWbWN6NEtJQ0E4Y21WamRDQjNhV1IwYUQwaU1qQXdJaUJvWldsbmFIUTlJakl3TUNJZ1ptbHNiRDBpZFhKc0tDTm5jbUZrYVdWdWRDa2lJQzgrQ2lBZ1BIUmxlSFFnZUQwaU5UQWxJaUI1UFNJMU1DVWlJR1J2YldsdVlXNTBMV0poYzJWc2FXNWxQU0p0YVdSa2JHVWlJSFJsZUhRdFlXNWphRzl5UFNKdGFXUmtiR1VpSUdadmJuUXRabUZ0YVd4NVBTSkJjbWxoYkNJZ1ptOXVkQzF6YVhwbFBTSTRNQ0lnWm1sc2JEMGlkMmhwZEdVaVBrcEVQQzkwWlhoMFBnbzhMM04yWno0PSIscj1lLnF1ZXJ5U2VsZWN0b3IoIiNwcmVmaWxsZWQtcHJvZmlsZSIpO3ImJihyLnZhbHVlPXQsci5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGE9PntsZXQgaT1hLnRhcmdldCxvPWUucXVlcnlTZWxlY3RvcigiI3ByZWZpbGxlZC1vdXRwdXQiKTtvJiYoby50ZXh0Q29udGVudD1pLnZhbHVlP2BJbWFnZSBkYXRhOiAke2kudmFsdWUuc3Vic3RyaW5nKDAsODApfS4uLmA6Ik5vIGltYWdlIHNlbGVjdGVkIil9KSl9fT4KICAgICAgPGRlZXMtcGFuZWwgLnRpdGxlPSR7IlByZS1maWxsZWQgYW5kIFZhbHVlIEJpbmRpbmcifSAuc3VidGl0bGU9JHsiUHJvZmlsZSBwaWN0dXJlIHdpdGggaW5pdGlhbCB2YWx1ZSBhbmQgY2hhbmdlIHRyYWNraW5nIn0+CiAgICAgICAgPGRlZXMtaW5wdXQtcHJvZmlsZXBpY3R1cmUKICAgICAgICAgIGlkPSJwcmVmaWxsZWQtcHJvZmlsZSIKICAgICAgICAgIGxhYmVsPSJFZGl0IEV4aXN0aW5nIFByb2ZpbGUiCiAgICAgICAgICBkZXNjcmlwdGlvbj0iQ2xpY2sgdGhlIGVkaXQgYnV0dG9uIHRvIGNoYW5nZSBvciBkZWxldGUgdG8gcmVtb3ZlIgogICAgICAgICAgc2hhcGU9InJvdW5kIgogICAgICAgICAgc2l6ZT0iMTUwIgogICAgICAgID48L2RlZXMtaW5wdXQtcHJvZmlsZXBpY3R1cmU+CiAgICAgICAgCiAgICAgICAgPGRpdiBpZD0icHJlZmlsbGVkLW91dHB1dCIgY2xhc3M9ImRlbW8tb3V0cHV0Ij4KICAgICAgICAgIEltYWdlIGRhdGEgd2lsbCBhcHBlYXIgaGVyZSB3aGVuIGNoYW5nZWQKICAgICAgICA8L2Rpdj4KICAgICAgPC9kZWVzLXBhbmVsPgogICAgPC9kZWVzLWRlbW93cmFwcGVyPgoKICAgIDxkZWVzLWRlbW93cmFwcGVyIC5ydW5BZnRlclJlbmRlcj0ke2FzeW5jIGU9PntsZXQgdD1lLnF1ZXJ5U2VsZWN0b3IoIiNkaXNhYmxlZC1wcm9maWxlIik7dCYmKHQudmFsdWU9ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU1qQXdJaUJvWldsbmFIUTlJakl3TUNJZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWo0S0lDQThjbVZqZENCM2FXUjBhRDBpTWpBd0lpQm9aV2xuYUhROUlqSXdNQ0lnWm1sc2JEMGlJMk5qWTJOall5SWdMejRLSUNBOGRHVjRkQ0I0UFNJMU1DVWlJSGs5SWpVd0pTSWdaRzl0YVc1aGJuUXRZbUZ6Wld4cGJtVTlJbTFwWkdSc1pTSWdkR1Y0ZEMxaGJtTm9iM0k5SW0xcFpHUnNaU0lnWm05dWRDMW1ZVzFwYkhrOUlrRnlhV0ZzSWlCbWIyNTBMWE5wZW1VOUlqWXdJaUJtYVd4c1BTSjNhR2wwWlNJK1RrRThMM1JsZUhRK0Nqd3ZjM1puUGc9PSIpfX0+CiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyJGb3JtIFN0YXRlcyJ9IC5zdWJ0aXRsZT0keyJEaWZmZXJlbnQgc3RhdGVzIGFuZCBjb25maWd1cmF0aW9ucyJ9PgogICAgICAgIDxkaXYgY2xhc3M9ImRlbW8tcm93Ij4KICAgICAgICAgIDxkZWVzLWlucHV0LXByb2ZpbGVwaWN0dXJlCiAgICAgICAgICAgIGxhYmVsPSJSZXF1aXJlZCBGaWVsZCIKICAgICAgICAgICAgZGVzY3JpcHRpb249IlRoaXMgZmllbGQgaXMgcmVxdWlyZWQiCiAgICAgICAgICAgIHNoYXBlPSJyb3VuZCIKICAgICAgICAgICAgLnJlcXVpcmVkPSR7ITB9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LXByb2ZpbGVwaWN0dXJlPgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1pbnB1dC1wcm9maWxlcGljdHVyZQogICAgICAgICAgICBpZD0iZGlzYWJsZWQtcHJvZmlsZSIKICAgICAgICAgICAgbGFiZWw9IkRpc2FibGVkIFN0YXRlIgogICAgICAgICAgICBkZXNjcmlwdGlvbj0iQ2Fubm90IGJlIGVkaXRlZCIKICAgICAgICAgICAgc2hhcGU9InNxdWFyZSIKICAgICAgICAgICAgLmRpc2FibGVkPSR7ITB9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LXByb2ZpbGVwaWN0dXJlPgogICAgICAgICAgCiAgICAgICAgICA8ZGVlcy1pbnB1dC1wcm9maWxlcGljdHVyZQogICAgICAgICAgICBsYWJlbD0iVXBsb2FkIE9ubHkiCiAgICAgICAgICAgIGRlc2NyaXB0aW9uPSJEZWxldGUgbm90IGFsbG93ZWQiCiAgICAgICAgICAgIHNoYXBlPSJyb3VuZCIKICAgICAgICAgICAgLmFsbG93RGVsZXRlPSR7ITF9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LXByb2ZpbGVwaWN0dXJlPgogICAgICAgIDwvZGl2PgogICAgICA8L2RlZXMtcGFuZWw+CiAgICA8L2RlZXMtZGVtb3dyYXBwZXI+CgogICAgPGRlZXMtZGVtb3dyYXBwZXI+CiAgICAgIDxkZWVzLXBhbmVsIC50aXRsZT0keyJGZWF0dXJlcyJ9IC5zdWJ0aXRsZT0keyJDb21wbGV0ZSBmZWF0dXJlIHNldCBvZiB0aGUgcHJvZmlsZSBwaWN0dXJlIGlucHV0In0+CiAgICAgICAgPHVsIGNsYXNzPSJmZWF0dXJlLWxpc3QiPgogICAgICAgICAgPGxpPjxzdHJvbmc+SW1hZ2UgVXBsb2FkOjwvc3Ryb25nPiBDbGljayB0byB1cGxvYWQgb3IgZHJhZyAmIGRyb3AgaW1hZ2VzPC9saT4KICAgICAgICAgIDxsaT48c3Ryb25nPkltYWdlIENyb3BwaW5nOjwvc3Ryb25nPiBJbnRlcmFjdGl2ZSBjcm9wIHRvb2wgd2l0aCByZXNpemUgaGFuZGxlczwvbGk+CiAgICAgICAgICA8bGk+PHN0cm9uZz5TaGFwZSBTdXBwb3J0Ojwvc3Ryb25nPiBSb3VuZCBvciBzcXVhcmUgcHJvZmlsZSBwaWN0dXJlczwvbGk+CiAgICAgICAgICA8bGk+PHN0cm9uZz5TaXplIEN1c3RvbWl6YXRpb246PC9zdHJvbmc+IEFkanVzdGFibGUgZGltZW5zaW9uczwvbGk+CiAgICAgICAgICA8bGk+PHN0cm9uZz5QcmV2aWV3ICYgRWRpdDo8L3N0cm9uZz4gSG92ZXIgb3ZlcmxheSB3aXRoIGVkaXQgYW5kIGRlbGV0ZSBvcHRpb25zPC9saT4KICAgICAgICAgIDxsaT48c3Ryb25nPkZpbGUgVmFsaWRhdGlvbjo8L3N0cm9uZz4gRm9ybWF0IGFuZCBzaXplIHJlc3RyaWN0aW9uczwvbGk+CiAgICAgICAgICA8bGk+PHN0cm9uZz5SZXNwb25zaXZlIERlc2lnbjo8L3N0cm9uZz4gV29ya3Mgb24gZGVza3RvcCBhbmQgbW9iaWxlIGRldmljZXM8L2xpPgogICAgICAgICAgPGxpPjxzdHJvbmc+Rm9ybSBJbnRlZ3JhdGlvbjo8L3N0cm9uZz4gU3RhbmRhcmQgZm9ybSB2YWx1ZSBiaW5kaW5nIGFuZCB2YWxpZGF0aW9uPC9saT4KICAgICAgICAgIDxsaT48c3Ryb25nPkFjY2Vzc2liaWxpdHk6PC9zdHJvbmc+IEtleWJvYXJkIG5hdmlnYXRpb24gYW5kIHNjcmVlbiByZWFkZXIgc3VwcG9ydDwvbGk+CiAgICAgICAgICA8bGk+PHN0cm9uZz5aLUluZGV4IE1hbmFnZW1lbnQ6PC9zdHJvbmc+IFByb3BlciBtb2RhbCBzdGFja2luZyB3aXRoIHJlZ2lzdHJ5PC9saT4KICAgICAgICA8L3VsPgogICAgICAgIAogICAgICAgIDxkaXYgc3R5bGU9Im1hcmdpbi10b3A6IDI0cHg7Ij4KICAgICAgICAgIDxzdHJvbmc+U3VwcG9ydGVkIEZvcm1hdHM6PC9zdHJvbmc+IEpQRUcsIFBORywgV2ViUDxicj4KICAgICAgICAgIDxzdHJvbmc+TWF4IEZpbGUgU2l6ZTo8L3N0cm9uZz4gNU1CIChjb25maWd1cmFibGUpPGJyPgogICAgICAgICAgPHN0cm9uZz5PdXRwdXQgRm9ybWF0Ojwvc3Ryb25nPiBCYXNlNjQgZW5jb2RlZCBKUEVHCiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgIDwvZGVlcy1kZW1vd3JhcHBlcj4KICA8L2Rpdj4KYH0pO3ZhciBCbyxmYSwkTnIsWmN0PWwoKCk9PntTZSgpO1BhKCk7YnIoKTtxOSgpO0ROcigpO0VOcigpO290KCk7Qm89ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxmYT1mdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MixpPTA7aTx0Lmxlbmd0aDtpKyspcj1hP3RbaV0uY2FsbChlLHIpOnRbaV0uY2FsbChlKTtyZXR1cm4gYT9yOnZvaWQgMH0sJE5yPSgoKT0+e2xldCBlPVt6ZSgiZGVlcy1pbnB1dC1wcm9maWxlcGljdHVyZSIpXSx0LHI9W10sYSxpPWh0LG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdLHUscD1bXSxoPVtdLGIseD1bXSxnPVtdLHYsdz1bXSxNPVtdLEYsQz1bXSxrPVtdLE4sJD1bXSxJPVtdLEIsej1bXSx5PVtdLEUsXz1bXSxQPVtdLFYsSD1bXSxXPVtdLGFlLFQ9W10sSj1bXSxmZSxMPVtdLFE9W10sa2UsRz1bXSxBPVtdO3ZhciBEPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgUj10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHt0eXBlOlN0cmluZ30pXSxjPVtqKHt0eXBlOlN0cmluZ30pXSx1PVtqKHt0eXBlOk51bWJlcn0pXSxiPVtqKHt0eXBlOlN0cmluZ30pXSx2PVtqKHt0eXBlOkJvb2xlYW59KV0sRj1baih7dHlwZTpCb29sZWFufSldLE49W2ooe3R5cGU6TnVtYmVyfSldLEI9W2ooe3R5cGU6QXJyYXl9KV0sRT1baih7dHlwZTpOdW1iZXJ9KV0sVj1baih7dHlwZTpOdW1iZXJ9KV0sYWU9W3JlKCldLGZlPVtyZSgpXSxrZT1bcmUoKV0sQm8odGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ2YWx1ZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Tz0+InZhbHVlImluIE8sZ2V0Ok89Pk8udmFsdWUsc2V0OihPLFkpPT57Ty52YWx1ZT1ZfX0sbWV0YWRhdGE6Un0sbixzKSxCbyh0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNoYXBlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpPPT4ic2hhcGUiaW4gTyxnZXQ6Tz0+Ty5zaGFwZSxzZXQ6KE8sWSk9PntPLnNoYXBlPVl9fSxtZXRhZGF0YTpSfSxkLGYpLEJvKHRoaXMsbnVsbCx1LHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2l6ZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Tz0+InNpemUiaW4gTyxnZXQ6Tz0+Ty5zaXplLHNldDooTyxZKT0+e08uc2l6ZT1ZfX0sbWV0YWRhdGE6Un0scCxoKSxCbyh0aGlzLG51bGwsYix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InBsYWNlaG9sZGVyIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpPPT4icGxhY2Vob2xkZXIiaW4gTyxnZXQ6Tz0+Ty5wbGFjZWhvbGRlcixzZXQ6KE8sWSk9PntPLnBsYWNlaG9sZGVyPVl9fSxtZXRhZGF0YTpSfSx4LGcpLEJvKHRoaXMsbnVsbCx2LHtraW5kOiJhY2Nlc3NvciIsbmFtZToiYWxsb3dVcGxvYWQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOk89PiJhbGxvd1VwbG9hZCJpbiBPLGdldDpPPT5PLmFsbG93VXBsb2FkLHNldDooTyxZKT0+e08uYWxsb3dVcGxvYWQ9WX19LG1ldGFkYXRhOlJ9LHcsTSksQm8odGhpcyxudWxsLEYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJhbGxvd0RlbGV0ZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Tz0+ImFsbG93RGVsZXRlImluIE8sZ2V0Ok89Pk8uYWxsb3dEZWxldGUsc2V0OihPLFkpPT57Ty5hbGxvd0RlbGV0ZT1ZfX0sbWV0YWRhdGE6Un0sQyxrKSxCbyh0aGlzLG51bGwsTix7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im1heEZpbGVTaXplIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpPPT4ibWF4RmlsZVNpemUiaW4gTyxnZXQ6Tz0+Ty5tYXhGaWxlU2l6ZSxzZXQ6KE8sWSk9PntPLm1heEZpbGVTaXplPVl9fSxtZXRhZGF0YTpSfSwkLEkpLEJvKHRoaXMsbnVsbCxCLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiYWNjZXB0ZWRGb3JtYXRzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpPPT4iYWNjZXB0ZWRGb3JtYXRzImluIE8sZ2V0Ok89Pk8uYWNjZXB0ZWRGb3JtYXRzLHNldDooTyxZKT0+e08uYWNjZXB0ZWRGb3JtYXRzPVl9fSxtZXRhZGF0YTpSfSx6LHkpLEJvKHRoaXMsbnVsbCxFLHtraW5kOiJhY2Nlc3NvciIsbmFtZToib3V0cHV0U2l6ZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Tz0+Im91dHB1dFNpemUiaW4gTyxnZXQ6Tz0+Ty5vdXRwdXRTaXplLHNldDooTyxZKT0+e08ub3V0cHV0U2l6ZT1ZfX0sbWV0YWRhdGE6Un0sXyxQKSxCbyh0aGlzLG51bGwsVix7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im91dHB1dFF1YWxpdHkiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOk89PiJvdXRwdXRRdWFsaXR5ImluIE8sZ2V0Ok89Pk8ub3V0cHV0UXVhbGl0eSxzZXQ6KE8sWSk9PntPLm91dHB1dFF1YWxpdHk9WX19LG1ldGFkYXRhOlJ9LEgsVyksQm8odGhpcyxudWxsLGFlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiaXNIb3ZlcmVkIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpPPT4iaXNIb3ZlcmVkImluIE8sZ2V0Ok89Pk8uaXNIb3ZlcmVkLHNldDooTyxZKT0+e08uaXNIb3ZlcmVkPVl9fSxtZXRhZGF0YTpSfSxULEopLEJvKHRoaXMsbnVsbCxmZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImlzRHJhZ2dpbmciLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOk89PiJpc0RyYWdnaW5nImluIE8sZ2V0Ok89Pk8uaXNEcmFnZ2luZyxzZXQ6KE8sWSk9PntPLmlzRHJhZ2dpbmc9WX19LG1ldGFkYXRhOlJ9LEwsUSksQm8odGhpcyxudWxsLGtlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiaXNMb2FkaW5nIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpPPT4iaXNMb2FkaW5nImluIE8sZ2V0Ok89Pk8uaXNMb2FkaW5nLHNldDooTyxZKT0+e08uaXNMb2FkaW5nPVl9fSxtZXRhZGF0YTpSfSxHLEEpLEJvKG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOlJ9LG51bGwsciksRD1hPXQudmFsdWUsUiYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpSfSl9c3RhdGljIGRlbW89QU5yO3N0YXRpYyBkZW1vR3JvdXBzPVsiSW5wdXQiXTsjZT1mYSh0aGlzLG4sIiIpO2dldCB2YWx1ZSgpe3JldHVybiB0aGlzLiNlfXNldCB2YWx1ZShSKXt0aGlzLiNlPVJ9I3Q9KGZhKHRoaXMscyksZmEodGhpcyxkLCJyb3VuZCIpKTtnZXQgc2hhcGUoKXtyZXR1cm4gdGhpcy4jdH1zZXQgc2hhcGUoUil7dGhpcy4jdD1SfSNyPShmYSh0aGlzLGYpLGZhKHRoaXMscCwxMjApKTtnZXQgc2l6ZSgpe3JldHVybiB0aGlzLiNyfXNldCBzaXplKFIpe3RoaXMuI3I9Un0jYT0oZmEodGhpcyxoKSxmYSh0aGlzLHgsIiIpKTtnZXQgcGxhY2Vob2xkZXIoKXtyZXR1cm4gdGhpcy4jYX1zZXQgcGxhY2Vob2xkZXIoUil7dGhpcy4jYT1SfSNpPShmYSh0aGlzLGcpLGZhKHRoaXMsdywhMCkpO2dldCBhbGxvd1VwbG9hZCgpe3JldHVybiB0aGlzLiNpfXNldCBhbGxvd1VwbG9hZChSKXt0aGlzLiNpPVJ9I289KGZhKHRoaXMsTSksZmEodGhpcyxDLCEwKSk7Z2V0IGFsbG93RGVsZXRlKCl7cmV0dXJuIHRoaXMuI299c2V0IGFsbG93RGVsZXRlKFIpe3RoaXMuI289Un0jbj0oZmEodGhpcyxrKSxmYSh0aGlzLCQsNSoxMDI0KjEwMjQpKTtnZXQgbWF4RmlsZVNpemUoKXtyZXR1cm4gdGhpcy4jbn1zZXQgbWF4RmlsZVNpemUoUil7dGhpcy4jbj1SfSNzPShmYSh0aGlzLEkpLGZhKHRoaXMseixbImltYWdlL2pwZWciLCJpbWFnZS9wbmciLCJpbWFnZS93ZWJwIl0pKTtnZXQgYWNjZXB0ZWRGb3JtYXRzKCl7cmV0dXJuIHRoaXMuI3N9c2V0IGFjY2VwdGVkRm9ybWF0cyhSKXt0aGlzLiNzPVJ9I2w9KGZhKHRoaXMseSksZmEodGhpcyxfLDgwMCkpO2dldCBvdXRwdXRTaXplKCl7cmV0dXJuIHRoaXMuI2x9c2V0IG91dHB1dFNpemUoUil7dGhpcy4jbD1SfSNjPShmYSh0aGlzLFApLGZhKHRoaXMsSCwuOTUpKTtnZXQgb3V0cHV0UXVhbGl0eSgpe3JldHVybiB0aGlzLiNjfXNldCBvdXRwdXRRdWFsaXR5KFIpe3RoaXMuI2M9Un0jZD0oZmEodGhpcyxXKSxmYSh0aGlzLFQsITEpKTtnZXQgaXNIb3ZlcmVkKCl7cmV0dXJuIHRoaXMuI2R9c2V0IGlzSG92ZXJlZChSKXt0aGlzLiNkPVJ9I3U9KGZhKHRoaXMsSiksZmEodGhpcyxMLCExKSk7Z2V0IGlzRHJhZ2dpbmcoKXtyZXR1cm4gdGhpcy4jdX1zZXQgaXNEcmFnZ2luZyhSKXt0aGlzLiN1PVJ9I2Y9KGZhKHRoaXMsUSksZmEodGhpcyxHLCExKSk7Z2V0IGlzTG9hZGluZygpe3JldHVybiB0aGlzLiNmfXNldCBpc0xvYWRpbmcoUil7dGhpcy4jZj1SfW1vZGFsSW5zdGFuY2U9KGZhKHRoaXMsQSksbnVsbCk7c3RhdGljIHN0eWxlcz1bUGUsLi4uaHQuYmFzZVN0eWxlcyxtLmRlZmF1bHRTdHlsZXMsbGVgCiAgICAgIC8qIFRPRE86IE1pZ3JhdGUgaGFyZGNvZGVkIHZhbHVlcyB0byAtLWRlZXMtKiBDU1MgdmFyaWFibGVzICovCiAgICAgIDpob3N0IHsKICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgIH0KCiAgICAgIC5pbnB1dC13cmFwcGVyIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgZ2FwOiAxNnB4OwogICAgICB9CgogICAgICAucHJvZmlsZS1jb250YWluZXIgewogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7CiAgICAgIH0KCiAgICAgIC5wcm9maWxlLWNvbnRhaW5lcjpob3ZlciB7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAyKTsKICAgICAgfQoKICAgICAgLnByb2ZpbGUtcGljdHVyZSB7CiAgICAgICAgd2lkdGg6IHZhcigtLXNpemUsIDEyMHB4KTsKICAgICAgICBoZWlnaHQ6IHZhcigtLXNpemUsIDEyMHB4KTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2Y1ZjVmNSIsIiMxODE4MWIiKX07CiAgICAgICAgYm9yZGVyOiAzcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjMjcyNzJhIil9OwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlOwogICAgICB9CgogICAgICAucHJvZmlsZS1waWN0dXJlLnJvdW5kIHsKICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICAgIH0KCiAgICAgIC5wcm9maWxlLXBpY3R1cmUuc3F1YXJlIHsKICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4OwogICAgICB9CgogICAgICAucHJvZmlsZS1waWN0dXJlLmRyYWdnaW5nIHsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCIjM2I4MmY2IiwiIzYwYTVmYSIpfTsKICAgICAgICBib3gtc2hhZG93OiAwIDAgMCA0cHggJHttLmJkVGhlbWUoInJnYmEoNTksIDEzMCwgMjQ2LCAwLjE1KSIsInJnYmEoOTYsIDE2NSwgMjUwLCAwLjE1KSIpfTsKICAgICAgfQoKICAgICAgLnByb2ZpbGUtcGljdHVyZTpob3ZlciB7CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiI2Q0ZDRkOCIsIiMzZjNmNDYiKX07CiAgICAgIH0KCiAgICAgIC5wcm9maWxlLXBpY3R1cmU6ZGlzYWJsZWQgewogICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7CiAgICAgICAgb3BhY2l0eTogMC41OwogICAgICB9CgogICAgICAucHJvZmlsZS1pbWFnZSB7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIG9iamVjdC1maXQ6IGNvdmVyOwogICAgICB9CgogICAgICAucGxhY2Vob2xkZXItaWNvbiB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiI2ExYTFhYSIpfTsKICAgICAgfQoKICAgICAgLm92ZXJsYXkgewogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICB0b3A6IDA7CiAgICAgICAgbGVmdDogMDsKICAgICAgICByaWdodDogMDsKICAgICAgICBib3R0b206IDA7CiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjYpOwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlOwogICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgICB9CgogICAgICAucHJvZmlsZS1jb250YWluZXI6aG92ZXIgLm92ZXJsYXkgewogICAgICAgIG9wYWNpdHk6IDE7CiAgICAgIH0KCiAgICAgIC5vdmVybGF5LWNvbnRlbnQgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZ2FwOiAxMnB4OwogICAgICB9CgogICAgICAub3ZlcmxheS1idXR0b24gewogICAgICAgIHdpZHRoOiA0MHB4OwogICAgICAgIGhlaWdodDogNDBweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoMjU1LCAyNTUsIDI1NSwgMC45NSkiLCJyZ2JhKDM5LCAzOSwgNDIsIDAuOTUpIil9OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJyZ2JhKDAsIDAsIDAsIDAuMSkiLCJyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSkiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMDkwOTBiIiwiI2ZhZmFmYSIpfTsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7CiAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87CiAgICAgICAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4xKTsKICAgICAgfQoKICAgICAgLm92ZXJsYXktYnV0dG9uOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2ZmZmZmZiIsIiMzZjNmNDYiKX07CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpOwogICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMTUpOwogICAgICB9CgogICAgICAub3ZlcmxheS1idXR0b24uZGVsZXRlIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgicmdiYSgyMzksIDY4LCA2OCwgMC45KSIsInJnYmEoMjIwLCAzOCwgMzgsIDAuOSkiKX07CiAgICAgICAgY29sb3I6IHdoaXRlOwogICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7CiAgICAgIH0KCiAgICAgIC5vdmVybGF5LWJ1dHRvbi5kZWxldGU6aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZWY0NDQ0IiwiI2RjMjYyNiIpfTsKICAgICAgfQoKICAgICAgLmRyb3Atem9uZS10ZXh0IHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgdG9wOiA1MCU7CiAgICAgICAgbGVmdDogNTAlOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOwogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICBjb2xvcjogd2hpdGU7CiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAgICAgfQoKICAgICAgLmhpZGRlbi1pbnB1dCB7CiAgICAgICAgZGlzcGxheTogbm9uZTsKICAgICAgfQoKICAgICAgLyogTG9hZGluZyBhbmltYXRpb24gKi8KICAgICAgLmxvYWRpbmctb3ZlcmxheSB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHRvcDogMDsKICAgICAgICBsZWZ0OiAwOwogICAgICAgIHJpZ2h0OiAwOwogICAgICAgIGJvdHRvbTogMDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgicmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpIiwicmdiYSgwLCAwLCAwLCAwLjgpIil9OwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICBib3JkZXItcmFkaXVzOiBpbmhlcml0OwogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7CiAgICAgIH0KCiAgICAgIC5sb2FkaW5nLW92ZXJsYXkuc2hvdyB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bzsKICAgICAgfQoKICAgICAgLmxvYWRpbmctc3Bpbm5lciB7CiAgICAgICAgd2lkdGg6IDQwcHg7CiAgICAgICAgaGVpZ2h0OiA0MHB4OwogICAgICAgIGJvcmRlcjogM3B4IHNvbGlkICR7bS5iZFRoZW1lKCJyZ2JhKDAsIDAsIDAsIDAuMSkiLCJyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSkiKX07CiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHttLmJkVGhlbWUoIiMzYjgyZjYiLCIjNjBhNWZhIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsKICAgICAgICBhbmltYXRpb246IHNwaW4gMC42cyBsaW5lYXIgaW5maW5pdGU7CiAgICAgIH0KCiAgICAgIEBrZXlmcmFtZXMgc3BpbiB7CiAgICAgICAgdG8gewogICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsKICAgICAgICB9CiAgICAgIH0KCiAgICAgIEBrZXlmcmFtZXMgcHVsc2UgewogICAgICAgIDAlIHsKICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7CiAgICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIH0KICAgICAgICA1MCUgewogICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTsKICAgICAgICAgIG9wYWNpdHk6IDAuODsKICAgICAgICB9CiAgICAgICAgMTAwJSB7CiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOwogICAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICB9CiAgICAgIH0KCiAgICAgIC5wcm9maWxlLXBpY3R1cmUuY2xpY2tpbmcgewogICAgICAgIGFuaW1hdGlvbjogcHVsc2UgMC4zcyBlYXNlLW91dDsKICAgICAgfQogICAgYF07cmVuZGVyKCl7cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9ImlucHV0LXdyYXBwZXIiPgogICAgICAgIDxkZWVzLWxhYmVsIC5sYWJlbD0ke3RoaXMubGFiZWx9IC5kZXNjcmlwdGlvbj0ke3RoaXMuZGVzY3JpcHRpb259IC5yZXF1aXJlZD0ke3RoaXMucmVxdWlyZWR9PjwvZGVlcy1sYWJlbD4KICAgICAgICAKICAgICAgICA8ZGl2IAogICAgICAgICAgY2xhc3M9InByb2ZpbGUtY29udGFpbmVyIgogICAgICAgICAgQGNsaWNrPSR7dGhpcy5oYW5kbGVDbGlja30KICAgICAgICAgIEBkcmFnb3Zlcj0ke3RoaXMuaGFuZGxlRHJhZ092ZXJ9CiAgICAgICAgICBAZHJhZ2xlYXZlPSR7dGhpcy5oYW5kbGVEcmFnTGVhdmV9CiAgICAgICAgICBAZHJvcD0ke3RoaXMuaGFuZGxlRHJvcH0KICAgICAgICAgIHN0eWxlPSItLXNpemU6ICR7dGhpcy5zaXplfXB4IgogICAgICAgID4KICAgICAgICAgIDxkaXYgY2xhc3M9InByb2ZpbGUtcGljdHVyZSAke3RoaXMuc2hhcGV9ICR7dGhpcy5pc0RyYWdnaW5nPyJkcmFnZ2luZyI6IiJ9ICR7dGhpcy5pc0xvYWRpbmcmJiF0aGlzLnZhbHVlPyJjbGlja2luZyI6IiJ9Ij4KICAgICAgICAgICAgJHt0aGlzLnZhbHVlP1NgCiAgICAgICAgICAgICAgPGltZyBjbGFzcz0icHJvZmlsZS1pbWFnZSIgc3JjPSIke3RoaXMudmFsdWV9IiBhbHQ9IlByb2ZpbGUgcGljdHVyZSIgLz4KICAgICAgICAgICAgYDpTYAogICAgICAgICAgICAgIDxkZWVzLWljb24gY2xhc3M9InBsYWNlaG9sZGVyLWljb24iIGljb249Imx1Y2lkZTp1c2VyIiBpY29uU2l6ZT0iJHt0aGlzLnNpemUqLjV9Ij48L2RlZXMtaWNvbj4KICAgICAgICAgICAgYH0KICAgICAgICAgICAgCiAgICAgICAgICAgICR7dGhpcy5pc0RyYWdnaW5nP1NgCiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ib3ZlcmxheSIgc3R5bGU9Im9wYWNpdHk6IDEiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZHJvcC16b25lLXRleHQiPgogICAgICAgICAgICAgICAgICBEcm9wIGltYWdlIGhlcmUKICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICBgOiIifQogICAgICAgICAgICAKICAgICAgICAgICAgJHt0aGlzLnZhbHVlJiYhdGhpcy5kaXNhYmxlZD9TYAogICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im92ZXJsYXkiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ib3ZlcmxheS1jb250ZW50Ij4KICAgICAgICAgICAgICAgICAgJHt0aGlzLmFsbG93VXBsb2FkP1NgCiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0ib3ZlcmxheS1idXR0b24iIEBjbGljaz0ke1I9PntSLnN0b3BQcm9wYWdhdGlvbigpLHRoaXMub3Blbk1vZGFsKCl9fSB0aXRsZT0iQ2hhbmdlIHBpY3R1cmUiPgogICAgICAgICAgICAgICAgICAgICAgPGRlZXMtaWNvbiBpY29uPSJsdWNpZGU6cGVuY2lsIiBpY29uU2l6ZT0iMjAiPjwvZGVlcy1pY29uPgogICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgICAgICBgOiIifQogICAgICAgICAgICAgICAgICAke3RoaXMuYWxsb3dEZWxldGU/U2AKICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJvdmVybGF5LWJ1dHRvbiBkZWxldGUiIEBjbGljaz0ke1I9PntSLnN0b3BQcm9wYWdhdGlvbigpLHRoaXMuZGVsZXRlUGljdHVyZSgpfX0gdGl0bGU9IkRlbGV0ZSBwaWN0dXJlIj4KICAgICAgICAgICAgICAgICAgICAgIDxkZWVzLWljb24gaWNvbj0ibHVjaWRlOnRyYXNoMiIgaWNvblNpemU9IjIwIj48L2RlZXMtaWNvbj4KICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgYDoiIn0KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICBgOiIifQogICAgICAgICAgICAKICAgICAgICAgICAgJHt0aGlzLmlzTG9hZGluZyYmIXRoaXMudmFsdWU/U2AKICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsb2FkaW5nLW92ZXJsYXkgc2hvdyI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsb2FkaW5nLXNwaW5uZXIiPjwvZGl2PgogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICBgOiIifQogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgICAgCiAgICAgICAgPGlucHV0CiAgICAgICAgICB0eXBlPSJmaWxlIgogICAgICAgICAgY2xhc3M9ImhpZGRlbi1pbnB1dCIKICAgICAgICAgIGFjY2VwdD0iJHt0aGlzLmFjY2VwdGVkRm9ybWF0cy5qb2luKCIsIil9IgogICAgICAgICAgQGNoYW5nZT0ke3RoaXMuaGFuZGxlRmlsZVNlbGVjdH0KICAgICAgICAvPgogICAgICA8L2Rpdj4KICAgIGB9aGFuZGxlQ2xpY2soKXtpZighKHRoaXMuZGlzYWJsZWR8fCF0aGlzLmFsbG93VXBsb2FkKSYmIXRoaXMudmFsdWUpe3RoaXMuaXNMb2FkaW5nPSEwO2xldCBSPXRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCIuaGlkZGVuLWlucHV0IiksTz0oKT0+e3NldFRpbWVvdXQoKCk9PnsoIVIuZmlsZXN8fFIuZmlsZXMubGVuZ3RoPT09MCkmJih0aGlzLmlzTG9hZGluZz0hMSksd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoImZvY3VzIixPKX0sMzAwKX07d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzIixPKSxSLmNsaWNrKCl9fWhhbmRsZUZpbGVTZWxlY3QoUil7bGV0IE89Ui50YXJnZXQsWT1PLmZpbGVzPy5bMF07dGhpcy5pc0xvYWRpbmc9ITEsWSYmdGhpcy5wcm9jZXNzRmlsZShZKSxPLnZhbHVlPSIifWhhbmRsZURyYWdPdmVyKFIpe1IucHJldmVudERlZmF1bHQoKSwhdGhpcy5kaXNhYmxlZCYmdGhpcy5hbGxvd1VwbG9hZCYmKHRoaXMuaXNEcmFnZ2luZz0hMCl9aGFuZGxlRHJhZ0xlYXZlKCl7dGhpcy5pc0RyYWdnaW5nPSExfWhhbmRsZURyb3AoUil7aWYoUi5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuaXNEcmFnZ2luZz0hMSx0aGlzLmRpc2FibGVkfHwhdGhpcy5hbGxvd1VwbG9hZClyZXR1cm47bGV0IE89Ui5kYXRhVHJhbnNmZXI/LmZpbGVzWzBdO08mJnRoaXMucHJvY2Vzc0ZpbGUoTyl9YXN5bmMgcHJvY2Vzc0ZpbGUoUil7aWYoIXRoaXMuYWNjZXB0ZWRGb3JtYXRzLmluY2x1ZGVzKFIudHlwZSkpe2NvbnNvbGUuZXJyb3IoIkludmFsaWQgZmlsZSB0eXBlOiIsUi50eXBlKTtyZXR1cm59aWYoUi5zaXplPnRoaXMubWF4RmlsZVNpemUpe2NvbnNvbGUuZXJyb3IoIkZpbGUgdG9vIGxhcmdlOiIsUi5zaXplKTtyZXR1cm59bGV0IE89bmV3IEZpbGVSZWFkZXI7Ty5vbmxvYWQ9YXN5bmMgWT0+e2xldCB1ZT1ZLnRhcmdldD8ucmVzdWx0O2F3YWl0IHRoaXMub3Blbk1vZGFsKHVlKX0sTy5yZWFkQXNEYXRhVVJMKFIpfWFzeW5jIG9wZW5Nb2RhbChSKXtsZXQgTz1SfHx0aGlzLnZhbHVlO2lmKCFPKXt0aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcigiLmhpZGRlbi1pbnB1dCIpLmNsaWNrKCk7cmV0dXJufXRoaXMubW9kYWxJbnN0YW5jZT1uZXcgWWN0LHRoaXMubW9kYWxJbnN0YW5jZS5zaGFwZT10aGlzLnNoYXBlLHRoaXMubW9kYWxJbnN0YW5jZS5pbml0aWFsSW1hZ2U9Tyx0aGlzLm1vZGFsSW5zdGFuY2Uub3V0cHV0U2l6ZT10aGlzLm91dHB1dFNpemUsdGhpcy5tb2RhbEluc3RhbmNlLm91dHB1dFF1YWxpdHk9dGhpcy5vdXRwdXRRdWFsaXR5LHRoaXMubW9kYWxJbnN0YW5jZS5hZGRFdmVudExpc3RlbmVyKCJzYXZlIixZPT57dGhpcy52YWx1ZT1ZLmRldGFpbC5jcm9wcGVkSW1hZ2UsdGhpcy5jaGFuZ2VTdWJqZWN0Lm5leHQodGhpcyl9KSxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHRoaXMubW9kYWxJbnN0YW5jZSl9ZGVsZXRlUGljdHVyZSgpe3RoaXMudmFsdWU9IiIsdGhpcy5jaGFuZ2VTdWJqZWN0Lm5leHQodGhpcyl9Z2V0VmFsdWUoKXtyZXR1cm4gdGhpcy52YWx1ZX1zZXRWYWx1ZShSKXt0aGlzLnZhbHVlPVJ9c3RhdGlje2ZhKGEscil9fTtyZXR1cm4gRD1hfSkoKX0pO3ZhciBQTnI9bCgoKT0+e3VOcigpO2ZOcigpO3BOcigpO1lsdCgpO2hOcigpO0psdCgpO21OcigpO2dOcigpO3hOcigpO2JOcigpO3ZOcigpO3lOcigpO3dOcigpO2tOcigpO1NOcigpO3pOcigpO0NOcigpO19OcigpO1ROcigpO1pjdCgpfSk7dmFyIElOcixOTnI9bCgoKT0+e1NlKCk7SU5yPSgpPT5TYAogIDxzdHlsZT4KICAgIC5kZW1vQ29udGFpbmVyIHsKICAgICAgZGlzcGxheTogZmxleDsKICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgZ2FwOiAzMnB4OwogICAgICBwYWRkaW5nOiA0OHB4OwogICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2Y4ZjlmYSIsIiMwYTBhMGEiKX07CiAgICAgIG1pbi1oZWlnaHQ6IDEwMHZoOwogICAgfQogICAgCiAgICAuc2VjdGlvbiB7CiAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZmZmZmZmIiwiIzE4MTgxYiIpfTsKICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjMjcyNzJhIil9OwogICAgICBib3JkZXItcmFkaXVzOiA4cHg7CiAgICAgIHBhZGRpbmc6IDI0cHg7CiAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMSk7CiAgICB9CiAgICAKICAgIC5zZWN0aW9uLXRpdGxlIHsKICAgICAgZm9udC1zaXplOiAxOHB4OwogICAgICBmb250LXdlaWdodDogNjAwOwogICAgICBtYXJnaW4tYm90dG9tOiAxNnB4OwogICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwOTA5MGIiLCIjZmFmYWZhIil9OwogICAgfQogICAgCiAgICAuc2VjdGlvbi1kZXNjcmlwdGlvbiB7CiAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiI2ExYTFhYSIpfTsKICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDsKICAgIH0KICA8L3N0eWxlPgogIDxkaXYgY2xhc3M9ImRlbW9Db250YWluZXIiPgogICAgPGRpdiBjbGFzcz0ic2VjdGlvbiI+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tdGl0bGUiPk5vbi1TZWxlY3RhYmxlIENoaXBzPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tZGVzY3JpcHRpb24iPkJhc2ljIGNoaXBzIHdpdGhvdXQgc2VsZWN0aW9uIGNhcGFiaWxpdHkuIFVzZSBmb3IgZGlzcGxheS1vbmx5IHRhZ3MuPC9kaXY+CiAgICAgIDxkZWVzLWNoaXBzCiAgICAgICAgc2VsZWN0aW9uTW9kZT0ibm9uZSIKICAgICAgICAuc2VsZWN0YWJsZUNoaXBzPSR7W3trZXk6InN0YXR1cyIsdmFsdWU6IkFjdGl2ZSJ9LHtrZXk6InRpZXIiLHZhbHVlOiJQcmVtaXVtIn0se2tleToicmVnaW9uIix2YWx1ZToiRVUtV2VzdCJ9LHtrZXk6InR5cGUiLHZhbHVlOiJFbnRlcnByaXNlIn1dfQogICAgICA+PC9kZWVzLWNoaXBzPgogICAgPC9kaXY+CiAgICAKICAgIDxkaXYgY2xhc3M9InNlY3Rpb24iPgogICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uLXRpdGxlIj5TaW5nbGUgU2VsZWN0aW9uIENoaXBzPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tZGVzY3JpcHRpb24iPkNsaWNrIHRvIHNlbGVjdCBvbmUgY2hpcCBhdCBhIHRpbWUuIFVzZWZ1bCBmb3IgZmlsdGVycyBhbmQgb3B0aW9ucy48L2Rpdj4KICAgICAgPGRlZXMtY2hpcHMKICAgICAgICBzZWxlY3Rpb25Nb2RlPSJzaW5nbGUiCiAgICAgICAgLnNlbGVjdGFibGVDaGlwcz0ke1t7a2V5OiJhbGwiLHZhbHVlOiJBbGwgUHJvamVjdHMifSx7a2V5OiJhY3RpdmUiLHZhbHVlOiJBY3RpdmUifSx7a2V5OiJhcmNoaXZlZCIsdmFsdWU6IkFyY2hpdmVkIn0se2tleToiZHJhZnRzIix2YWx1ZToiRHJhZnRzIn1dfQogICAgICA+PC9kZWVzLWNoaXBzPgogICAgPC9kaXY+CiAgICAKICAgIDxkaXYgY2xhc3M9InNlY3Rpb24iPgogICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uLXRpdGxlIj5NdWx0aXBsZSBTZWxlY3Rpb24gQ2hpcHM8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi1kZXNjcmlwdGlvbiI+U2VsZWN0IG11bHRpcGxlIGNoaXBzIHNpbXVsdGFuZW91c2x5LiBHcmVhdCBmb3IgdGFnIHNlbGVjdGlvbi48L2Rpdj4KICAgICAgPGRlZXMtY2hpcHMKICAgICAgICBzZWxlY3Rpb25Nb2RlPSJtdWx0aXBsZSIKICAgICAgICAuc2VsZWN0YWJsZUNoaXBzPSR7W3trZXk6ImpzIix2YWx1ZToiSmF2YVNjcmlwdCJ9LHtrZXk6InRzIix2YWx1ZToiVHlwZVNjcmlwdCJ9LHtrZXk6InJlYWN0Iix2YWx1ZToiUmVhY3QifSx7a2V5OiJ2dWUiLHZhbHVlOiJWdWUifSx7a2V5OiJhbmd1bGFyIix2YWx1ZToiQW5ndWxhciJ9LHtrZXk6Im5vZGUiLHZhbHVlOiJOb2RlLmpzIn1dfQogICAgICA+PC9kZWVzLWNoaXBzPgogICAgPC9kaXY+CiAgICAKICAgIDxkaXYgY2xhc3M9InNlY3Rpb24iPgogICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uLXRpdGxlIj5SZW1vdmFibGUgQ2hpcHMgd2l0aCBLZXlzPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tZGVzY3JpcHRpb24iPkNoaXBzIHdpdGggcmVtb3ZlIGJ1dHRvbnMgYW5kIGtleS12YWx1ZSBwYWlycy4gUGVyZmVjdCBmb3IgZHluYW1pYyBsaXN0cy48L2Rpdj4KICAgICAgPGRlZXMtY2hpcHMKICAgICAgICBzZWxlY3Rpb25Nb2RlPSJzaW5nbGUiCiAgICAgICAgY2hpcHNBcmVSZW1vdmFibGUKICAgICAgICAuc2VsZWN0YWJsZUNoaXBzPSR7W3trZXk6ImVudiIsdmFsdWU6IlByb2R1Y3Rpb24ifSx7a2V5OiJ2ZXJzaW9uIix2YWx1ZToiMi40LjEifSx7a2V5OiJicmFuY2giLHZhbHVlOiJtYWluIn0se2tleToiYXV0aG9yIix2YWx1ZToiSm9obiBEb2UifV19CiAgICAgID48L2RlZXMtY2hpcHM+CiAgICA8L2Rpdj4KICAgIAogICAgPGRpdiBjbGFzcz0ic2VjdGlvbiI+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tdGl0bGUiPk1peGVkIENvbnRlbnQgRXhhbXBsZTwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uLWRlc2NyaXB0aW9uIj5Db21iaW5pbmcgZGlmZmVyZW50IGNoaXAgdHlwZXMgZm9yIGNvbXBsZXggVUlzLjwvZGl2PgogICAgICA8ZGVlcy1jaGlwcwogICAgICAgIHNlbGVjdGlvbk1vZGU9Im11bHRpcGxlIgogICAgICAgIGNoaXBzQXJlUmVtb3ZhYmxlCiAgICAgICAgLnNlbGVjdGFibGVDaGlwcz0ke1t7a2V5OiJwcmlvcml0eSIsdmFsdWU6IkhpZ2gifSx7a2V5OiJzdGF0dXMiLHZhbHVlOiJJbiBQcm9ncmVzcyJ9LHtrZXk6ImJ1ZyIsdmFsdWU6IkJ1ZyJ9LHtrZXk6ImZlYXR1cmUiLHZhbHVlOiJGZWF0dXJlIn0se2tleToic3ByaW50Iix2YWx1ZToiU3ByaW50IDIzIn0se2tleToiYXNzaWduZWUiLHZhbHVlOiJBbGljZSJ9XX0KICAgICAgPjwvZGVlcy1jaGlwcz4KICAgIDwvZGl2PgogIDwvZGl2PgpgfSk7dmFyIEo5LFZzLEZOcixPTnI9bCgoKT0+e1NlKCk7ZXIoKTtOTnIoKTtvdCgpO0o5PWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sVnM9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LEZOcj0oKCk9PntsZXQgZT1bemUoImRlZXMtY2hpcHMiKV0sdCxyPVtdLGEsaT1EZSxvLG49W10scz1bXSxjLGQ9W10sZj1bXSx1LHA9W10saD1bXSxiLHg9W10sZz1bXSx2LHc9W10sTT1bXTt2YXIgRj1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IEM9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baigpXSxjPVtqKHt0eXBlOkJvb2xlYW59KV0sdT1baih7dHlwZTpBcnJheX0pXSxiPVtqKCldLHY9W2ooe3R5cGU6QXJyYXl9KV0sSjkodGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzZWxlY3Rpb25Nb2RlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczprPT4ic2VsZWN0aW9uTW9kZSJpbiBrLGdldDprPT5rLnNlbGVjdGlvbk1vZGUsc2V0OihrLE4pPT57ay5zZWxlY3Rpb25Nb2RlPU59fSxtZXRhZGF0YTpDfSxuLHMpLEo5KHRoaXMsbnVsbCxjLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiY2hpcHNBcmVSZW1vdmFibGUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOms9PiJjaGlwc0FyZVJlbW92YWJsZSJpbiBrLGdldDprPT5rLmNoaXBzQXJlUmVtb3ZhYmxlLHNldDooayxOKT0+e2suY2hpcHNBcmVSZW1vdmFibGU9Tn19LG1ldGFkYXRhOkN9LGQsZiksSjkodGhpcyxudWxsLHUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzZWxlY3RhYmxlQ2hpcHMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOms9PiJzZWxlY3RhYmxlQ2hpcHMiaW4gayxnZXQ6az0+ay5zZWxlY3RhYmxlQ2hpcHMsc2V0OihrLE4pPT57ay5zZWxlY3RhYmxlQ2hpcHM9Tn19LG1ldGFkYXRhOkN9LHAsaCksSjkodGhpcyxudWxsLGIse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzZWxlY3RlZENoaXAiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOms9PiJzZWxlY3RlZENoaXAiaW4gayxnZXQ6az0+ay5zZWxlY3RlZENoaXAsc2V0OihrLE4pPT57ay5zZWxlY3RlZENoaXA9Tn19LG1ldGFkYXRhOkN9LHgsZyksSjkodGhpcyxudWxsLHYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzZWxlY3RlZENoaXBzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczprPT4ic2VsZWN0ZWRDaGlwcyJpbiBrLGdldDprPT5rLnNlbGVjdGVkQ2hpcHMsc2V0OihrLE4pPT57ay5zZWxlY3RlZENoaXBzPU59fSxtZXRhZGF0YTpDfSx3LE0pLEo5KG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOkN9LG51bGwsciksRj1hPXQudmFsdWUsQyYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpDfSl9c3RhdGljIGRlbW89SU5yO3N0YXRpYyBkZW1vR3JvdXBzPVsiTGF5b3V0Il07I2U9VnModGhpcyxuLCJzaW5nbGUiKTtnZXQgc2VsZWN0aW9uTW9kZSgpe3JldHVybiB0aGlzLiNlfXNldCBzZWxlY3Rpb25Nb2RlKEMpe3RoaXMuI2U9Q30jdD0oVnModGhpcyxzKSxWcyh0aGlzLGQsITEpKTtnZXQgY2hpcHNBcmVSZW1vdmFibGUoKXtyZXR1cm4gdGhpcy4jdH1zZXQgY2hpcHNBcmVSZW1vdmFibGUoQyl7dGhpcy4jdD1DfSNyPShWcyh0aGlzLGYpLFZzKHRoaXMscCxbXSkpO2dldCBzZWxlY3RhYmxlQ2hpcHMoKXtyZXR1cm4gdGhpcy4jcn1zZXQgc2VsZWN0YWJsZUNoaXBzKEMpe3RoaXMuI3I9Q30jYT0oVnModGhpcyxoKSxWcyh0aGlzLHgsbnVsbCkpO2dldCBzZWxlY3RlZENoaXAoKXtyZXR1cm4gdGhpcy4jYX1zZXQgc2VsZWN0ZWRDaGlwKEMpe3RoaXMuI2E9Q30jaT0oVnModGhpcyxnKSxWcyh0aGlzLHcsW10pKTtnZXQgc2VsZWN0ZWRDaGlwcygpe3JldHVybiB0aGlzLiNpfXNldCBzZWxlY3RlZENoaXBzKEMpe3RoaXMuI2k9Q31jb25zdHJ1Y3Rvcigpe3N1cGVyKCksVnModGhpcyxNKX1zdGF0aWMgc3R5bGVzPVtQZSxtLmRlZmF1bHRTdHlsZXMsbGVgCiAgICAgIC8qIFRPRE86IE1pZ3JhdGUgaGFyZGNvZGVkIHZhbHVlcyB0byAtLWRlZXMtKiBDU1MgdmFyaWFibGVzICovCiAgICAgIDpob3N0IHsKICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgICB9CgogICAgICAubWFpbmJveCB7CiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LXdyYXA6IHdyYXA7CiAgICAgICAgZ2FwOiA4cHg7CiAgICAgIH0KCiAgICAgIC5jaGlwIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2Y0ZjRmNSIsIiMyNzI3MmEiKX07CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjM2YzZjQ2Iil9OwogICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgaGVpZ2h0OiAzMnB4OwogICAgICAgIHBhZGRpbmc6IDBweCAxMnB4OwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzA5MDkwYiIsIiNmYWZhZmEiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgICAgYm94LXNoYWRvdzogMCAxcHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjA1KTsKICAgICAgfQoKICAgICAgLmNoaXA6aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZTVlN2ViIiwiIzNmM2Y0NiIpfTsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCIjZDFkNWRiIiwiIzUyNTI1YiIpfTsKICAgICAgfQoKICAgICAgLmNoaXA6YWN0aXZlIHsKICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOTgpOwogICAgICB9CgogICAgICAuY2hpcC5zZWxlY3RlZCB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiMzYjgyZjYiLCIjM2I4MmY2Iil9OwogICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoIiMzYjgyZjYiLCIjM2I4MmY2Iil9OwogICAgICAgIGNvbG9yOiAjZmZmZmZmOwogICAgICB9CgogICAgICAuY2hpcC5zZWxlY3RlZDpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiMyNTYzZWIiLCIjMjU2M2ViIil9OwogICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoIiMyNTYzZWIiLCIjMjU2M2ViIil9OwogICAgICB9CgogICAgICAuY2hpcEtleSB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoMCwgMCwgMCwgMC4wNikiLCJyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSkiKX07CiAgICAgICAgaGVpZ2h0OiAyMHB4OwogICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4OwogICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgbWFyZ2luLWxlZnQ6IC04cHg7CiAgICAgICAgcGFkZGluZzogMHB4IDhweDsKICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiI2ExYTFhYSIpfTsKICAgICAgfQoKICAgICAgLmNoaXAuc2VsZWN0ZWQgLmNoaXBLZXkgewogICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTsKICAgICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpOwogICAgICB9CgogICAgICBkZWVzLWljb24gewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICB3aWR0aDogMTZweDsKICAgICAgICBoZWlnaHQ6IDE2cHg7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDsKICAgICAgICBtYXJnaW4tcmlnaHQ6IC02cHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4OwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzcxNzE3YSIsIiNhMWExYWEiKX07CiAgICAgIH0KCiAgICAgIC5jaGlwLnNlbGVjdGVkIGRlZXMtaWNvbiB7CiAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTsKICAgICAgfQoKICAgICAgZGVlcy1pY29uOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgicmdiYSgwLCAwLCAwLCAwLjEpIiwicmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiI2VmNDQ0NCIsIiNlZjQ0NDQiKX07CiAgICAgIH0KCiAgICAgIC5jaGlwLnNlbGVjdGVkIGRlZXMtaWNvbjpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpOwogICAgICAgIGNvbG9yOiAjZmZmZmZmOwogICAgICB9CiAgICBgXTtyZW5kZXIoKXtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0ibWFpbmJveCI+CiAgICAgICAgJHt0aGlzLnNlbGVjdGFibGVDaGlwcy5tYXAoQz0+U2AKICAgICAgICAgICAgPGRpdgogICAgICAgICAgICAgIEBjbGljaz0keygpPT50aGlzLnNlbGVjdENoaXAoQyl9CiAgICAgICAgICAgICAgY2xhc3M9ImNoaXAgJHt0aGlzLmlzU2VsZWN0ZWQoQyk/InNlbGVjdGVkIjoiIn0iCiAgICAgICAgICAgID4KICAgICAgICAgICAgICAke0Mua2V5P1NgPGRpdiBjbGFzcz0iY2hpcEtleSI+JHtDLmtleX08L2Rpdj5gOlNgYH0gJHtDLnZhbHVlfQogICAgICAgICAgICAgICR7dGhpcy5jaGlwc0FyZVJlbW92YWJsZT9TYAogICAgICAgICAgICAgICAgICAgIDxkZWVzLWljb24KICAgICAgICAgICAgICAgICAgICAgIEBjbGljaz0ke2s9PntrLnN0b3BQcm9wYWdhdGlvbigpLHRoaXMucmVtb3ZlQ2hpcChDKX19CiAgICAgICAgICAgICAgICAgICAgICAuaWNvbj0keyJmYTp4bWFyayJ9CiAgICAgICAgICAgICAgICAgICAgPjwvZGVlcy1pY29uPgogICAgICAgICAgICAgICAgICBgOlNgYH0KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICBgKX0KICAgICAgPC9kaXY+CiAgICBgfWFzeW5jIGZpcnN0VXBkYXRlZCgpe31pc1NlbGVjdGVkKEMpe3JldHVybiB0aGlzLnNlbGVjdGlvbk1vZGU9PT0ic2luZ2xlIj90aGlzLnNlbGVjdGVkQ2hpcD90aGlzLmlzU2FtZUNoaXAodGhpcy5zZWxlY3RlZENoaXAsQyk6ITE6dGhpcy5zZWxlY3RlZENoaXBzLnNvbWUoaz0+dGhpcy5pc1NhbWVDaGlwKGssQykpfWlzU2FtZUNoaXAoQyxrKXtyZXR1cm4oQy5rZXkmJmsua2V5fHxDLnZhbHVlPT09ay52YWx1ZSkmJkMua2V5PT09ay5rZXl9YXN5bmMgc2VsZWN0Q2hpcChDKXt0aGlzLnNlbGVjdGlvbk1vZGUhPT0ibm9uZSImJih0aGlzLnNlbGVjdGlvbk1vZGU9PT0ic2luZ2xlIj90aGlzLmlzU2VsZWN0ZWQoQyk/KHRoaXMuc2VsZWN0ZWRDaGlwPW51bGwsdGhpcy5zZWxlY3RlZENoaXBzPVtdKToodGhpcy5zZWxlY3RlZENoaXA9Qyx0aGlzLnNlbGVjdGVkQ2hpcHM9W0NdKTp0aGlzLnNlbGVjdGlvbk1vZGU9PT0ibXVsdGlwbGUiJiYodGhpcy5pc1NlbGVjdGVkKEMpP3RoaXMuc2VsZWN0ZWRDaGlwcz10aGlzLnNlbGVjdGVkQ2hpcHMuZmlsdGVyKGs9PiF0aGlzLmlzU2FtZUNoaXAoayxDKSk6dGhpcy5zZWxlY3RlZENoaXBzPVsuLi50aGlzLnNlbGVjdGVkQ2hpcHMsQ10sdGhpcy5yZXF1ZXN0VXBkYXRlKCkpLGNvbnNvbGUubG9nKHRoaXMuc2VsZWN0ZWRDaGlwcykpfXJlbW92ZUNoaXAoQyl7dGhpcy5zZWxlY3RhYmxlQ2hpcHM9dGhpcy5zZWxlY3RhYmxlQ2hpcHMuZmlsdGVyKGs9PiF0aGlzLmlzU2FtZUNoaXAoayxDKSksdGhpcy5zZWxlY3RlZENoaXBzPXRoaXMuc2VsZWN0ZWRDaGlwcy5maWx0ZXIoaz0+IXRoaXMuaXNTYW1lQ2hpcChrLEMpKSx0aGlzLnNlbGVjdGVkQ2hpcCYmdGhpcy5pc1NhbWVDaGlwKHRoaXMuc2VsZWN0ZWRDaGlwLEMpJiYodGhpcy5zZWxlY3RlZENoaXA9bnVsbCksdGhpcy5yZXF1ZXN0VXBkYXRlKCl9c3RhdGlje1ZzKGEscil9fTtyZXR1cm4gRj1hfSkoKX0pO3ZhciBSTnI9bCgoKT0+e09OcigpfSk7dmFyIEJOcixITnI9bCgoKT0+e1NlKCk7emEoKTtCTnI9KCk9PlNgCiAgICA8ZGVlcy1kZW1vd3JhcHBlciAucnVuQWZ0ZXJSZW5kZXI9JHthc3luYyBlPT57bGV0IHQ9ZS5xdWVyeVNlbGVjdG9yKCIjZGFzaGJvYXJkR3JpZCIpLHI9W3tpZDoibWV0cmljczEiLHg6MCx5OjAsdzozLGg6Mix0aXRsZToiUmV2ZW51ZSIsaWNvbjoibHVjaWRlOmRvbGxhclNpZ24iLGNvbnRlbnQ6U2AKICAgICAgICAgICAgPGRpdiBzdHlsZT0icGFkZGluZzogMjBweDsiPgogICAgICAgICAgICAgIDxkaXYgc3R5bGU9ImZvbnQtc2l6ZTogMzJweDsgZm9udC13ZWlnaHQ6IDcwMDsgY29sb3I6ICR7bS5iZFRoZW1lKCIjMDkwOTBiIiwiI2ZhZmFmYSIpfTsiPiQxMjQsNTYzPC9kaXY+CiAgICAgICAgICAgICAgPGRpdiBzdHlsZT0iY29sb3I6ICMyMmM1NWU7IGZvbnQtc2l6ZTogMTRweDsgbWFyZ2luLXRvcDogOHB4OyI+4oaRIDEyLjUlIGZyb20gbGFzdCBtb250aDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIGB9LHtpZDoibWV0cmljczIiLHg6Myx5OjAsdzozLGg6Mix0aXRsZToiVXNlcnMiLGljb246Imx1Y2lkZTp1c2VycyIsY29udGVudDpTYAogICAgICAgICAgICA8ZGl2IHN0eWxlPSJwYWRkaW5nOiAyMHB4OyI+CiAgICAgICAgICAgICAgPGRpdiBzdHlsZT0iZm9udC1zaXplOiAzMnB4OyBmb250LXdlaWdodDogNzAwOyBjb2xvcjogJHttLmJkVGhlbWUoIiMwOTA5MGIiLCIjZmFmYWZhIil9OyI+OCwyMzQ8L2Rpdj4KICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSJjb2xvcjogIzNiODJmNjsgZm9udC1zaXplOiAxNHB4OyBtYXJnaW4tdG9wOiA4cHg7Ij7ihpEgNS4yJSBmcm9tIGxhc3Qgd2VlazwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIGB9LHtpZDoiY2hhcnQxIix4OjYseTowLHc6NixoOjQsdGl0bGU6IkFuYWx5dGljcyIsaWNvbjoibHVjaWRlOmxpbmVDaGFydCIsY29udGVudDpTYAogICAgICAgICAgICA8ZGl2IHN0eWxlPSJwYWRkaW5nOiAyMHB4OyBoZWlnaHQ6IDEwMCU7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGp1c3RpZnktY29udGVudDogY2VudGVyOyI+CiAgICAgICAgICAgICAgPGRpdiBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyBjb2xvcjogIzcxNzE3YTsiPgogICAgICAgICAgICAgICAgPGRlZXMtaWNvbiAuaWNvbj0keyJsdWNpZGU6bGluZUNoYXJ0In0gc3R5bGU9ImZvbnQtc2l6ZTogNDhweDsgbWFyZ2luLWJvdHRvbTogMTZweDsiPjwvZGVlcy1pY29uPgogICAgICAgICAgICAgICAgPGRpdj5DaGFydCB2aXN1YWxpemF0aW9uIGFyZWE8L2Rpdj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICBgfV07dC53aWRnZXRzPXIubWFwKHY9Pih7Li4udn0pKSx0LmNlbGxIZWlnaHQ9ODAsdC5tYXJnaW49e3RvcDoxMCxyaWdodDoxMCxib3R0b206MTAsbGVmdDoxMH0sdC5lbmFibGVBbmltYXRpb249ITAsdC5zaG93R3JpZExpbmVzPSExO2xldCBhPXQuZ2V0TGF5b3V0KCkubWFwKHY9Pih7Li4udn0pKSxpPXQud2lkZ2V0cy5tYXAoKHYsdyk9Pih7aWQ6di5pZCx4OjAseTp3PT09MD8wOnQud2lkZ2V0cy5zbGljZSgwLHcpLnJlZHVjZSgoTSxGKT0+TStGLmgsMCksdzp0LmNvbHVtbnMsaDp2Lmh9KSk7dC5sYXlvdXRzPXtiYXNlOmEsbW9iaWxlOml9O2xldCBvPWUucXVlcnlTZWxlY3RvcigiI2Rhc2hib2FyZExheW91dFN0YXR1cyIpLG49KCk9PntsZXQgdj10LmdldExheW91dCgpO28udGV4dENvbnRlbnQ9YEFjdGl2ZSBicmVha3BvaW50OiAke3QuYWN0aXZlQnJlYWtwb2ludH0gXHUyMDIyIFRpbGVzOiAke3YubGVuZ3RofWB9LHM9d2luZG93Lm1hdGNoTWVkaWEoIihtYXgtd2lkdGg6IDc2OHB4KSIpLGM9KCk9PntsZXQgdj1zLm1hdGNoZXM/Im1vYmlsZSI6ImJhc2UiO3QuYXBwbHlCcmVha3BvaW50TGF5b3V0KHYpLG4oKX07dHlwZW9mIHMuYWRkRXZlbnRMaXN0ZW5lcj09ImZ1bmN0aW9uIj9zLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsYyk6cy5hZGRMaXN0ZW5lcj8uKGMpLGMoKTtsZXQgZD00O2UucXVlcnlTZWxlY3RvckFsbCgiZGVlcy1idXR0b24iKS5mb3JFYWNoKHY9Pntzd2l0Y2godi50ZXh0Q29udGVudD8udHJpbSgpKXtjYXNlIlRvZ2dsZSBBbmltYXRpb24iOnYuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCgpPT57dC5lbmFibGVBbmltYXRpb249IXQuZW5hYmxlQW5pbWF0aW9ufSk7YnJlYWs7Y2FzZSJUb2dnbGUgR3JpZCBMaW5lcyI6di5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKCk9Pnt0LnNob3dHcmlkTGluZXM9IXQuc2hvd0dyaWRMaW5lc30pO2JyZWFrO2Nhc2UiQWRkIFdpZGdldCI6di5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKCk9PntsZXQgTT17aWQ6YHdpZGdldCR7ZCsrfWAseDowLHk6MCx3OjMsaDoyLGF1dG9Qb3NpdGlvbjohMCx0aXRsZTpgV2lkZ2V0ICR7ZC0xfWAsaWNvbjoibHVjaWRlOnBhY2thZ2UiLGNvbnRlbnQ6U2AKICAgICAgICAgICAgICAgICAgPGRpdiBzdHlsZT0icGFkZGluZzogMjBweDsgdGV4dC1hbGlnbjogY2VudGVyOyI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBzdHlsZT0iY29sb3I6ICM3MTcxN2E7Ij5OZXcgd2lkZ2V0IGNvbnRlbnQ8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSJtYXJnaW4tdG9wOiA4cHg7IGZvbnQtc2l6ZTogMjRweDsgZm9udC13ZWlnaHQ6IDYwMDsgY29sb3I6ICR7bS5iZFRoZW1lKCIjMDkwOTBiIiwiI2ZhZmFmYSIpfTsiPiR7TWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKjFlMyl9PC9kaXY+CiAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgYH07dC5hZGRXaWRnZXQoTSwhMCl9KTticmVhaztjYXNlIkNvbXBhY3QgR3JpZCI6di5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKCk9Pnt0LmNvbXBhY3QoKX0pO2JyZWFrO2Nhc2UiVG9nZ2xlIEVkaXQgTW9kZSI6di5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKCk9Pnt0LmVkaXRhYmxlPSF0LmVkaXRhYmxlLHYudGV4dENvbnRlbnQ9dC5lZGl0YWJsZT8iTG9jayBHcmlkIjoiVW5sb2NrIEdyaWQifSk7YnJlYWs7Y2FzZSJSZXNldCBMYXlvdXQiOnYuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCgpPT57dC5hcHBseUJyZWFrcG9pbnRMYXlvdXQodC5hY3RpdmVCcmVha3BvaW50KX0pO2JyZWFrO2RlZmF1bHQ6YnJlYWt9fSk7bGV0IHU9bnVsbCxwPTAsaD0odix3KT0+e2xldCBNPXQuZ2V0TGF5b3V0KCk7Y29uc29sZS5ncm91cChgXHV7MUY1MDR9ICR7dn0gW0V2ZW50ICMkeysrcH1dYCksY29uc29sZS5sb2coIlRpbWVzdGFtcDoiLG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKSksY29uc29sZS5sb2coIkdyaWQgQ29uZmlndXJhdGlvbjoiLHtjb2x1bW5zOnQuY29sdW1ucyxjZWxsSGVpZ2h0OnQuY2VsbEhlaWdodCxtYXJnaW46dC5tYXJnaW4sZWRpdGFibGU6dC5lZGl0YWJsZSxhY3RpdmVCcmVha3BvaW50OnQuYWN0aXZlQnJlYWtwb2ludH0pLGNvbnNvbGUubG9nKCJDdXJyZW50IExheW91dDoiLE0pLGNvbnNvbGUubG9nKCJXaWRnZXQgQ291bnQ6IixNLmxlbmd0aCksY29uc29sZS5sb2coIkdyaWQgQm91bmRzOiIse3RvdGFsV2lkZ2V0czp0LndpZGdldHMubGVuZ3RoLG1heFk6TWF0aC5tYXgoLi4uTS5tYXAoRj0+Ri55K0YuaCkpLG9jY3VwaWVkOk0ubWFwKEY9PmAke0YuaWR9OiAoJHtGLnh9LCR7Ri55fSkgJHtGLnd9eCR7Ri5ofWApLmpvaW4oIiwgIil9KSx3JiZjb25zb2xlLmxvZygiRXZlbnQgRGV0YWlsczoiLHcpLGNvbnNvbGUuZ3JvdXBFbmQoKX0sYj1uZXcgTXV0YXRpb25PYnNlcnZlcigoKT0+e2xldCB2PXQuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiLnBsYWNlaG9sZGVyIik7aWYodil7bGV0IHc9e2xlZnQ6di5zdHlsZS5sZWZ0LHRvcDp2LnN0eWxlLnRvcCx3aWR0aDp2LnN0eWxlLndpZHRoLGhlaWdodDp2LnN0eWxlLmhlaWdodH07aWYoSlNPTi5zdHJpbmdpZnkodykhPT1KU09OLnN0cmluZ2lmeSh1KSl7Y29uc29sZS5ncm91cCgiXHV7MUY0Q0R9IFBsYWNlaG9sZGVyIFBvc2l0aW9uIENoYW5nZWQiKSxjb25zb2xlLmxvZygiUHJldmlvdXM6Iix1KSxjb25zb2xlLmxvZygiQ3VycmVudDoiLHcpO2xldCBNPXQuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiLmdyaWQtY29udGFpbmVyIik7TSYmY29uc29sZS5sb2coIkdyaWQgQ29udGFpbmVyIERpbWVuc2lvbnM6Iix7d2lkdGg6TS5jbGllbnRXaWR0aCxoZWlnaHQ6TS5jbGllbnRIZWlnaHR9KSxjb25zb2xlLmdyb3VwRW5kKCksdT13fX19KTt0LnNoYWRvd1Jvb3QmJmIub2JzZXJ2ZSh0LnNoYWRvd1Jvb3Qse2NoaWxkTGlzdDohMCxzdWJ0cmVlOiEwLGF0dHJpYnV0ZXM6ITAsYXR0cmlidXRlRmlsdGVyOlsic3R5bGUiXX0pLGgoIkluaXRpYWwgR3JpZCBTdGF0ZSIpLHQuYWRkRXZlbnRMaXN0ZW5lcigid2lkZ2V0LW1vdmUiLHY9PntoKCJXaWRnZXQgTW92ZSIse3dpZGdldDp2LmRldGFpbC53aWRnZXQsZGlzcGxhY2VkOnYuZGV0YWlsLmRpc3BsYWNlZCxzd2FwcGVkV2l0aDp2LmRldGFpbC5zd2FwcGVkV2l0aH0pfSksdC5hZGRFdmVudExpc3RlbmVyKCJ3aWRnZXQtcmVzaXplIix2PT57aCgiV2lkZ2V0IFJlc2l6ZSIse3dpZGdldDp2LmRldGFpbC53aWRnZXQsZGlzcGxhY2VkOnYuZGV0YWlsLmRpc3BsYWNlZCxzd2FwcGVkV2l0aDp2LmRldGFpbC5zd2FwcGVkV2l0aH0pfSksdC5hZGRFdmVudExpc3RlbmVyKCJ3aWRnZXQtcmVtb3ZlIix2PT57aCgiV2lkZ2V0IFJlbW92ZSIse3JlbW92ZWRXaWRnZXQ6di5kZXRhaWwud2lkZ2V0fSksbigpfSksdC5hZGRFdmVudExpc3RlbmVyKCJsYXlvdXQtY2hhbmdlIiwoKT0+e2goIkxheW91dCBDaGFuZ2UiKSxuKCl9KSx0LmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJkb3duIix2PT57bGV0IHc9di50YXJnZXQuY2xvc2VzdCgiLndpZGdldC1oZWFkZXIiKSxNPXYudGFyZ2V0LmNsb3Nlc3QoIi5yZXNpemUtaGFuZGxlIik7aWYod3x8TSl7Y29uc29sZS5ncm91cChgXHV7MUYzQUZ9IEludGVyYWN0aW9uIFN0YXJ0ZWQ6ICR7dz8iRHJhZyI6IlJlc2l6ZSJ9YCksY29uc29sZS5sb2coIlRhcmdldCBXaWRnZXQ6Iix2LnRhcmdldC5jbG9zZXN0KCIud2lkZ2V0Iik/LmdldEF0dHJpYnV0ZSgiZGF0YS13aWRnZXQtaWQiKSksY29uc29sZS5sb2coIlBvaW50ZXIgUG9zaXRpb246Iix7eDp2LmNsaWVudFgseTp2LmNsaWVudFl9KSxjb25zb2xlLmdyb3VwRW5kKCk7bGV0IEY9az0+e2xldCBOPXYudGFyZ2V0LmNsb3Nlc3QoIi53aWRnZXQiKTtOJiZjb25zb2xlLmxvZygiXHUyMTk0XHVGRTBGIFBvaW50ZXIgTW92ZToiLHt3aWRnZXRJZDpOLmdldEF0dHJpYnV0ZSgiZGF0YS13aWRnZXQtaWQiKSxwb3NpdGlvbjp7eDprLmNsaWVudFgseTprLmNsaWVudFl9LGRlbHRhOnt4OmsuY2xpZW50WC12LmNsaWVudFgseTprLmNsaWVudFktdi5jbGllbnRZfX0pfSxDPSgpPT57Y29uc29sZS5ncm91cCgiXHV7MUYzQzF9IEludGVyYWN0aW9uIEVuZGVkIiksaCgiRmluYWwgU3RhdGUgQWZ0ZXIgSW50ZXJhY3Rpb24iKSxjb25zb2xlLmdyb3VwRW5kKCksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigicG9pbnRlcm1vdmUiLEYpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInBvaW50ZXJ1cCIsQyl9O2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJtb3ZlIixGKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVydXAiLEMpfX0pO2xldCB4PXQuYWRkV2lkZ2V0LmJpbmQodCk7dC5hZGRXaWRnZXQ9KHYsdyk9Pntjb25zb2xlLmdyb3VwKCJcdTI3OTUgQWRkaW5nIFdpZGdldCIpLGNvbnNvbGUubG9nKCJOZXcgV2lkZ2V0OiIsdiksY29uc29sZS5sb2coIkF1dG8gUG9zaXRpb246Iix3KTtsZXQgTT14KHYsdyk7cmV0dXJuIGgoIkFmdGVyIFdpZGdldCBBZGRlZCIpLGNvbnNvbGUuZ3JvdXBFbmQoKSxNfTtsZXQgZz10LmNvbXBhY3QuYmluZCh0KTt0LmNvbXBhY3Q9dj0+e2NvbnNvbGUuZ3JvdXAoIlx1ezFGNURDfVx1RkUwRiBDb21wYWN0aW5nIEdyaWQiKSxjb25zb2xlLmxvZygiRGlyZWN0aW9uOiIsdnx8InZlcnRpY2FsIiksaCgiQmVmb3JlIENvbXBhY3QiKTtsZXQgdz1nKHYpO3JldHVybiBoKCJBZnRlciBDb21wYWN0IiksY29uc29sZS5ncm91cEVuZCgpLHd9LG4oKX19PgogICAgICA8c3R5bGU+CiAgICAgICAgJHtsZWAKICAgICAgICAgIC5kZW1vQm94IHsKICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2Y0ZjRmNSIsIiMwOTA5MGIiKX07CiAgICAgICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgICAgIHBhZGRpbmc6IDQwcHg7CiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgICAgIGdhcDogMjRweDsKICAgICAgICAgIH0KCiAgICAgICAgICAuZGVtby1jb250cm9scyB7CiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDsKICAgICAgICAgICAgZ2FwOiAxMnB4OwogICAgICAgICAgfQoKICAgICAgICAgIC5kZW1vLWNvbnRyb2xzIGRlZXMtYnV0dG9uIHsKICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgICAgICB9CgogICAgICAgICAgLmdyaWQtY29udGFpbmVyLXdyYXBwZXIgewogICAgICAgICAgICBmbGV4OiAxOwogICAgICAgICAgICBtaW4taGVpZ2h0OiA2MDBweDsKICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgICAgfQoKICAgICAgICAgIC5pbmZvIHsKICAgICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiIzcxNzE3YSIpfTsKICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgICAgICBmb250LWZhbWlseTogJ0dlaXN0IFNhbnMnLCBzYW5zLXNlcmlmOwogICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgICAgIGdhcDogNnB4OwogICAgICAgICAgfQoKICAgICAgICAgICNkYXNoYm9hcmRMYXlvdXRTdGF0dXMgewogICAgICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMzYjgyZjYiLCIjNjBhNWZhIil9OwogICAgICAgICAgfQogICAgICAgIGB9CiAgICAgIDwvc3R5bGU+CiAgICAgIDxkaXYgY2xhc3M9ImRlbW9Cb3giPgogICAgICAgIDxkaXYgY2xhc3M9ImRlbW8tY29udHJvbHMiPgogICAgICAgICAgPGRlZXMtYnV0dG9uLWdyb3VwIGxhYmVsPSJBbmltYXRpb246Ij4KICAgICAgICAgICAgPGRlZXMtYnV0dG9uPlRvZ2dsZSBBbmltYXRpb248L2RlZXMtYnV0dG9uPgogICAgICAgICAgPC9kZWVzLWJ1dHRvbi1ncm91cD4KCiAgICAgICAgICA8ZGVlcy1idXR0b24tZ3JvdXAgbGFiZWw9IkRpc3BsYXk6Ij4KICAgICAgICAgICAgPGRlZXMtYnV0dG9uPlRvZ2dsZSBHcmlkIExpbmVzPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgIDwvZGVlcy1idXR0b24tZ3JvdXA+CgogICAgICAgICAgPGRlZXMtYnV0dG9uLWdyb3VwIGxhYmVsPSJBY3Rpb25zOiI+CiAgICAgICAgICAgIDxkZWVzLWJ1dHRvbj5BZGQgV2lkZ2V0PC9kZWVzLWJ1dHRvbj4KICAgICAgICAgICAgPGRlZXMtYnV0dG9uPkNvbXBhY3QgR3JpZDwvZGVlcy1idXR0b24+CiAgICAgICAgICAgIDxkZWVzLWJ1dHRvbj5SZXNldCBMYXlvdXQ8L2RlZXMtYnV0dG9uPgogICAgICAgICAgPC9kZWVzLWJ1dHRvbi1ncm91cD4KCiAgICAgICAgICA8ZGVlcy1idXR0b24tZ3JvdXAgbGFiZWw9Ik1vZGU6Ij4KICAgICAgICAgICAgPGRlZXMtYnV0dG9uPlRvZ2dsZSBFZGl0IE1vZGU8L2RlZXMtYnV0dG9uPgogICAgICAgICAgPC9kZWVzLWJ1dHRvbi1ncm91cD4KICAgICAgICA8L2Rpdj4KCiAgICAgICAgPGRpdiBjbGFzcz0iZ3JpZC1jb250YWluZXItd3JhcHBlciI+CiAgICAgICAgICA8ZGVlcy1kYXNoYm9hcmRncmlkIGlkPSJkYXNoYm9hcmRHcmlkIj48L2RlZXMtZGFzaGJvYXJkZ3JpZD4KICAgICAgICA8L2Rpdj4KCiAgICAgICAgPGRpdiBjbGFzcz0iaW5mbyI+CiAgICAgICAgICA8ZGl2PkRyYWcgdG8gcmVwb3NpdGlvbiwgcmVzaXplIGZyb20gaGFuZGxlcywgb3IgcmlnaHQtY2xpY2sgYSBoZWFkZXIgdG8gZGVsZXRlIGEgdGlsZS48L2Rpdj4KICAgICAgICAgIDxkaXYgaWQ9ImRhc2hib2FyZExheW91dFN0YXR1cyI+PC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgPC9kZWVzLWRlbW93cmFwcGVyPgogIGB9KTt2YXIgcU5yLGpOcj1sKCgpPT57U2UoKTtxTnI9W20uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgOmhvc3QgewogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgIH0KCiAgICAgIC5ncmlkLWNvbnRhaW5lciB7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIG1pbi1oZWlnaHQ6IDQwMHB4OwogICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgIH0KCiAgICAgIC5ncmlkLXdpZGdldCB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHdpbGwtY2hhbmdlOiBhdXRvOwogICAgICB9CiAgICAgIAogICAgICA6aG9zdChbZW5hYmxlYW5pbWF0aW9uXSkgLmdyaWQtd2lkZ2V0IHsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpOwogICAgICB9CgogICAgICAuZ3JpZC13aWRnZXQuZHJhZ2dpbmcgewogICAgICAgIHotaW5kZXg6IDEwMDA7CiAgICAgICAgdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50OwogICAgICAgIG9wYWNpdHk6IDAuODsKICAgICAgICBjdXJzb3I6IGdyYWJiaW5nOwogICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07CiAgICAgIH0KICAgICAgCiAgICAgIC5ncmlkLXdpZGdldC5wbGFjZWhvbGRlciB7CiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgICAgICAgei1pbmRleDogMTsKICAgICAgfQogICAgICAKICAgICAgLmdyaWQtd2lkZ2V0LnBsYWNlaG9sZGVyIC53aWRnZXQtY29udGVudCB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoNTksIDEzMCwgMjQ2LCAwLjEpIiwicmdiYSg1OSwgMTMwLCAyNDYsIDAuMSkiKX07CiAgICAgICAgYm9yZGVyOiAycHggZGFzaGVkICR7bS5iZFRoZW1lKCIjM2I4MmY2IiwiIzNiODJmNiIpfTsKICAgICAgICBib3gtc2hhZG93OiBub25lOwogICAgICB9CgogICAgICAuZ3JpZC13aWRnZXQucmVzaXppbmcgewogICAgICAgIHRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDsKICAgICAgfQoKICAgICAgLndpZGdldC1jb250ZW50IHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgbGVmdDogMDsKICAgICAgICByaWdodDogMDsKICAgICAgICB0b3A6IDA7CiAgICAgICAgYm90dG9tOiAwOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmZmZmZmYiLCIjMDkwOTBiIil9OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZTVlN2ViIiwiIzI3MjcyYSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7CiAgICAgICAgYm94LXNoYWRvdzogJHttLmJkVGhlbWUoIjAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMSkiLCIwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjMpIil9OwogICAgICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4ycyBlYXNlOwogICAgICB9CgogICAgICAuZ3JpZC13aWRnZXQ6aG92ZXIgLndpZGdldC1jb250ZW50IHsKICAgICAgICBib3gtc2hhZG93OiAke20uYmRUaGVtZSgiMCA0cHggMTJweCByZ2JhKDAsIDAsIDAsIDAuMTUpIiwiMCA0cHggMTJweCByZ2JhKDAsIDAsIDAsIDAuNCkiKX07CiAgICAgIH0KCiAgICAgIC5ncmlkLXdpZGdldC5kcmFnZ2luZyAud2lkZ2V0LWNvbnRlbnQgewogICAgICAgIGJveC1zaGFkb3c6ICR7bS5iZFRoZW1lKCIwIDE2cHggNDhweCByZ2JhKDAsIDAsIDAsIDAuMjUpIiwiMCAxNnB4IDQ4cHggcmdiYSgwLCAwLCAwLCAwLjYpIil9OwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7CiAgICAgIH0KCiAgICAgIC53aWRnZXQtaGVhZGVyIHsKICAgICAgICBwYWRkaW5nOiAxMnB4IDE2cHg7CiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZTVlN2ViIiwiIzI3MjcyYSIpfTsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgZ2FwOiA4cHg7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMDkwOTBiIiwiI2ZhZmFmYSIpfTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2Y5ZmFmYiIsIiMwYTBhMGEiKX07CiAgICAgICAgY3Vyc29yOiBncmFiOwogICAgICAgIHVzZXItc2VsZWN0OiBub25lOwogICAgICB9CiAgICAgIAogICAgICAud2lkZ2V0LWhlYWRlcjpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmNGY0ZjUiLCIjMTgxODFiIil9OwogICAgICB9CiAgICAgIAogICAgICAud2lkZ2V0LWhlYWRlcjphY3RpdmUgewogICAgICAgIGN1cnNvcjogZ3JhYmJpbmc7CiAgICAgIH0KCiAgICAgIC53aWRnZXQtaGVhZGVyLmxvY2tlZCB7CiAgICAgICAgY3Vyc29yOiBkZWZhdWx0OwogICAgICB9CiAgICAgIAogICAgICAud2lkZ2V0LWhlYWRlci5sb2NrZWQ6aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjlmYWZiIiwiIzBhMGEwYSIpfTsKICAgICAgfQoKICAgICAgLndpZGdldC1oZWFkZXIgZGVlcy1pY29uIHsKICAgICAgICBmb250LXNpemU6IDE2cHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiIzcxNzE3YSIpfTsKICAgICAgfQoKICAgICAgLndpZGdldC1ib2R5IHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgdG9wOiAwOwogICAgICAgIGxlZnQ6IDA7CiAgICAgICAgcmlnaHQ6IDA7CiAgICAgICAgYm90dG9tOiAwOwogICAgICAgIG92ZXJmbG93OiBhdXRvOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzA5MDkwYiIsIiNmYWZhZmEiKX07CiAgICAgIH0KCiAgICAgIC53aWRnZXQtYm9keS5oYXMtaGVhZGVyIHsKICAgICAgICB0b3A6IDQ1cHg7CiAgICAgIH0KCiAgICAgIC5yZXNpemUtaGFuZGxlIHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgICAgei1pbmRleDogMTA7CiAgICAgIH0KCiAgICAgIC5yZXNpemUtaGFuZGxlOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiIzNiODJmNiIsIiMzYjgyZjYiKX07CiAgICAgICAgb3BhY2l0eTogMC4zOwogICAgICB9CgogICAgICAucmVzaXplLWhhbmRsZS1lIHsKICAgICAgICBjdXJzb3I6IGV3LXJlc2l6ZTsKICAgICAgICB3aWR0aDogMTJweDsKICAgICAgICByaWdodDogLTZweDsKICAgICAgICB0b3A6IDEwJTsKICAgICAgICBoZWlnaHQ6IDgwJTsKICAgICAgfQoKICAgICAgLnJlc2l6ZS1oYW5kbGUtcyB7CiAgICAgICAgY3Vyc29yOiBucy1yZXNpemU7CiAgICAgICAgaGVpZ2h0OiAxMnB4OwogICAgICAgIHdpZHRoOiA4MCU7CiAgICAgICAgYm90dG9tOiAtNnB4OwogICAgICAgIGxlZnQ6IDEwJTsKICAgICAgfQoKICAgICAgLnJlc2l6ZS1oYW5kbGUtc2UgewogICAgICAgIGN1cnNvcjogc2UtcmVzaXplOwogICAgICAgIHdpZHRoOiAyMHB4OwogICAgICAgIGhlaWdodDogMjBweDsKICAgICAgICByaWdodDogLTJweDsKICAgICAgICBib3R0b206IC0ycHg7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTsKICAgICAgfQogICAgICAKICAgICAgLnJlc2l6ZS1oYW5kbGUtc2U6OmFmdGVyIHsKICAgICAgICBjb250ZW50OiAnJzsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgcmlnaHQ6IDRweDsKICAgICAgICBib3R0b206IDRweDsKICAgICAgICB3aWR0aDogNnB4OwogICAgICAgIGhlaWdodDogNnB4OwogICAgICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiIzcxNzE3YSIpfTsKICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJHttLmJkVGhlbWUoIiM3MTcxN2EiLCIjNzE3MTdhIil9OwogICAgICB9CgogICAgICAuZ3JpZC13aWRnZXQ6aG92ZXIgLnJlc2l6ZS1oYW5kbGUtc2UgewogICAgICAgIG9wYWNpdHk6IDAuNzsKICAgICAgfQoKICAgICAgLnJlc2l6ZS1oYW5kbGUtc2U6aG92ZXIgewogICAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDsKICAgICAgfQogICAgICAKICAgICAgLnJlc2l6ZS1oYW5kbGUtc2U6aG92ZXI6OmFmdGVyIHsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCIjM2I4MmY2IiwiIzNiODJmNiIpfTsKICAgICAgfQoKICAgICAgLmdyaWQtcGxhY2Vob2xkZXIgewogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiIzNiODJmNiIsIiMzYjgyZjYiKX07CiAgICAgICAgb3BhY2l0eTogMC4xOwogICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgICBib3JkZXI6IDJweCBkYXNoZWQgJHttLmJkVGhlbWUoIiMzYjgyZjYiLCIjM2I4MmY2Iil9OwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7CiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgICAgIH0KCiAgICAgIC5lbXB0eS1zdGF0ZSB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgaGVpZ2h0OiA0MDBweDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM3MTcxN2EiLCIjNzE3MTdhIil9OwogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICBwYWRkaW5nOiAzMnB4OwogICAgICB9CgogICAgICAuZW1wdHktc3RhdGUgZGVlcy1pY29uIHsKICAgICAgICBmb250LXNpemU6IDQ4cHg7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDsKICAgICAgICBvcGFjaXR5OiAwLjU7CiAgICAgIH0KICAgICAgCiAgICAgIC5ncmlkLWxpbmVzIHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgdG9wOiAwOwogICAgICAgIGxlZnQ6IDA7CiAgICAgICAgcmlnaHQ6IDA7CiAgICAgICAgYm90dG9tOiAwOwogICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgICAgIHotaW5kZXg6IC0xOwogICAgICB9CiAgICAgIAogICAgICAuZ3JpZC1saW5lLXZlcnRpY2FsIHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgdG9wOiAwOwogICAgICAgIGJvdHRvbTogMDsKICAgICAgICB3aWR0aDogMXB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZTVlN2ViIiwiIzI3MjcyYSIpfTsKICAgICAgICBvcGFjaXR5OiAwLjM7CiAgICAgIH0KICAgICAgCiAgICAgIC5ncmlkLWxpbmUtaG9yaXpvbnRhbCB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIGxlZnQ6IDA7CiAgICAgICAgcmlnaHQ6IDA7CiAgICAgICAgaGVpZ2h0OiAxcHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjMjcyNzJhIil9OwogICAgICAgIG9wYWNpdHk6IDAuMzsKICAgICAgfQogIGBdfSk7dmFyIGg4bixYY3QsV05yLEdOcixWTnIsQlosVU5yLGh2YSxtdmEsUWN0LGczLFlOcixaTnIsWE5yPWwoKCk9PntoOG49MTAsWGN0PWU9PntpZih0eXBlb2YgZT09Im51bWJlciIpcmV0dXJue2hvcml6b250YWw6ZSx2ZXJ0aWNhbDplLHRvcDplLHJpZ2h0OmUsYm90dG9tOmUsbGVmdDplfTtsZXQgdD17dG9wOmUudG9wPz8xMCxyaWdodDplLnJpZ2h0Pz8xMCxib3R0b206ZS5ib3R0b20/PzEwLGxlZnQ6ZS5sZWZ0Pz8xMH07cmV0dXJuey4uLnQsaG9yaXpvbnRhbDoodC5sZWZ0K3QucmlnaHQpLzIsdmVydGljYWw6KHQudG9wK3QuYm90dG9tKS8yfX0sV05yPShlLHQscixhLGkpPT57bGV0IG89ci5ob3Jpem9udGFsKih0KzEpLG49TWF0aC5tYXgoZS1vLDApLHM9dD4wP24vdDowLGM9aT09PSJhdXRvIj9zOmE7cmV0dXJue2NvbnRhaW5lcldpZHRoOmUsY2VsbFdpZHRoUHg6cyxtYXJnaW5Ib3Jpem9udGFsUHg6ci5ob3Jpem9udGFsLGNlbGxIZWlnaHRQeDpjLG1hcmdpblZlcnRpY2FsUHg6ci52ZXJ0aWNhbH19LEdOcj0oZSx0LHIpPT57aWYoZS5sZW5ndGg9PT0wKXJldHVybiAwO2xldCBhPU1hdGgubWF4KC4uLmUubWFwKGk9PmkueStpLmgpLDApO3JldHVybiBhKnIrKGErMSkqdC52ZXJ0aWNhbH0sVk5yPShlLHQscixhLGkpPT50PGUueCtlLncmJnQrYT5lLngmJnI8ZS55K2UuaCYmcitpPmUueSxCWj0oZSx0LHIsYSxpPXQudyxvPXQuaCk9PmUuZmlsdGVyKG49Pm4uaWQ9PT10LmlkPyExOlZOcihuLHIsYSxpLG8pKSxVTnI9KGUsdCxyLGEpPT5CWihlLHQscixhKS5sZW5ndGg+MCxodmE9ZT0+KHsuLi5lfSksbXZhPWU9PmUubWFwKGh2YSksUWN0PShlLHQscixhKT0+e2ZvcihsZXQgbz0wO288MjAwO28rKylmb3IobGV0IG49MDtuPD1hLXQ7bisrKWlmKCFlLnNvbWUoYz0+Vk5yKGMsbixvLHQscikpKXJldHVybnt4Om4seTpvfTtyZXR1cm57eDowLHk6ZS5yZWR1Y2UoKG8sbik9Pk1hdGgubWF4KG8sbi55K24uaCksMCl9fSxnMz0oZSx0LHIsYSxpKT0+e2xldCBvPW12YShlKSxuPW8uZmluZChwPT5wLmlkPT09dCkscz1lLmZpbmQocD0+cC5pZD09PXQpO2lmKCFufHwhcylyZXR1cm4gbnVsbDtsZXQgYz17eDpyLngseTpyLnksdzpyLnc/P24udyxoOnIuaD8/bi5ofTtuLng9Yy54LG4ueT1jLnksbi53PWMudyxuLmg9Yy5oO2xldCBkPUJaKG8sbixjLngsYy55LGMudyxjLmgpO2lmKGQubGVuZ3RoPT09MClyZXR1cm57d2lkZ2V0czpvLG1vdmVkV2lkZ2V0czpbbi5pZF19O2lmKGQubGVuZ3RoPT09MSl7bGV0IHA9ZFswXTtpZighcC5sb2NrZWQmJiFwLm5vTW92ZSYmcC53PT09bi53JiZwLmg9PT1uLmgpe2xldCBoPW8uZmluZChiPT5iLmlkPT09cC5pZCk7aWYoaCl7bGV0IGI9cyx4PXt4OmgueCx5OmgueX07aWYoaC54PWIueCxoLnk9Yi55LEJaKG8sbixuLngsbi55LG4udyxuLmgpLmxlbmd0aD09PTAmJkJaKG8saCxoLngsaC55LGgudyxoLmgpLmxlbmd0aD09PTApcmV0dXJue3dpZGdldHM6byxtb3ZlZFdpZGdldHM6W24uaWQsaC5pZF0sc3dhcHBlZFdpdGg6aC5pZH07aC54PXgueCxoLnk9eC55fX19bGV0IGY9bmV3IFNldChbbi5pZF0pO2ZvcihsZXQgcCBvZiBkKXtpZihwLmxvY2tlZHx8cC5ub01vdmUpcmV0dXJuIG51bGw7bGV0IGg9by5maW5kKGc9PmcuaWQ9PT1wLmlkKTtpZighaCljb250aW51ZTtsZXQgYj1vLmZpbHRlcihnPT5nLmlkIT09cC5pZCkseD1RY3QoYixoLncsaC5oLGEpO2gueD14LngsaC55PXgueSxmLmFkZChoLmlkKX1yZXR1cm4gQloobyxuLG4ueCxuLnksbi53LG4uaCkubGVuZ3RoPjA/bnVsbDp7d2lkZ2V0czpvLG1vdmVkV2lkZ2V0czpBcnJheS5mcm9tKGYpfX0sWU5yPShlLHQ9InZlcnRpY2FsIik9PntsZXQgcj1bLi4uZV0uc29ydCgoYSxpKT0+dD09PSJ2ZXJ0aWNhbCI/YS55IT09aS55P2EueS1pLnk6YS54LWkueDphLnghPT1pLng/YS54LWkueDphLnktaS55KTtmb3IobGV0IGEgb2YgcilpZighKGEubG9ja2VkfHxhLm5vTW92ZSkpaWYodD09PSJ2ZXJ0aWNhbCIpZm9yKDthLnk+MCYmIVVOcihlLGEsYS54LGEueS0xKTspYS55LT0xO2Vsc2UgZm9yKDthLng+MCYmIVVOcihlLGEsYS54LTEsYS55KTspYS54LT0xfSxaTnI9KGUsdCk9PmUubWFwKHI9PntsZXQgYT10LmZpbmQoaT0+aS5pZD09PXIuaWQpO3JldHVybiBhP3suLi5yLC4uLmF9OnJ9KX0pO3ZhciBRTnIsS05yLEpOcj1sKCgpPT57UU5yPSh7cG9pbnRlcjplLGNvbnRhaW5lclJlY3Q6dCxtZXRyaWNzOnIsY29sdW1uczphLHdpZGdldDppLHJ0bDpvLGRyYWdPZmZzZXRYOm49MCxkcmFnT2Zmc2V0WTpzPTB9KT0+e2xldCBjPWUuY2xpZW50WC10LmxlZnQtbixkPWUuY2xpZW50WS10LnRvcC1zLGY9ci5tYXJnaW5Ib3Jpem9udGFsUHgsdT1yLm1hcmdpblZlcnRpY2FsUHgscD1yLmNlbGxXaWR0aFB4LGg9ci5jZWxsSGVpZ2h0UHgsYj0oQyxrLE4pPT5NYXRoLm1heChrLE1hdGgubWluKE4sQykpLHg9YihjLWYsMCx0LndpZHRoLWYpLGc9YihkLXUsMCxOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFkpLHY9cCtmLHc9aCt1LE09TWF0aC5yb3VuZCh4L3YpO28mJihNPWEtaS53LU0pLE09YihNLDAsYS1pLncpO2xldCBGPWIoTWF0aC5yb3VuZChnL3cpLDAsTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIpO3JldHVybnt4Ok0seTpGfX0sS05yPSh7cG9pbnRlcjplLGNvbnRhaW5lclJlY3Q6dCxtZXRyaWNzOnIsc3RhcnRXaWR0aDphLHN0YXJ0SGVpZ2h0Omksc3RhcnRQb2ludGVyOm8saGFuZGxlcjpuLHdpZGdldDpzLGNvbHVtbnM6Y30pPT57bGV0IGQ9ZS5jbGllbnRYLW8uY2xpZW50WCxmPWUuY2xpZW50WS1vLmNsaWVudFksdT1hLHA9aSxoPXIuY2VsbFdpZHRoUHgrci5tYXJnaW5Ib3Jpem9udGFsUHgsYj1yLmNlbGxIZWlnaHRQeCtyLm1hcmdpblZlcnRpY2FsUHg7aWYobi5pbmNsdWRlcygiZSIpKXtsZXQgdj1NYXRoLnJvdW5kKGQvaCk7dT1hK3Z9aWYobi5pbmNsdWRlcygicyIpKXtsZXQgdj1NYXRoLnJvdW5kKGYvYik7cD1pK3Z9bGV0IHg9TWF0aC5tYXgocy5taW5XfHwxLE1hdGgubWluKHUscy5tYXhXfHxjLXMueCkpLGc9TWF0aC5tYXgocy5taW5IfHwxLE1hdGgubWluKHAscy5tYXhIfHxOdW1iZXIuTUFYX1NBRkVfSU5URUdFUikpO3JldHVybnt3aWR0aDp4LGhlaWdodDpnfX19KTt2YXIgZUZyLHRGcj1sKCgpPT57YmkoKTtPaSgpO2VGcj0oe3dpZGdldDplLGhvc3Q6dCxldmVudDpyfSk9PntsZXQgYT1be25hbWU6IkRlbGV0ZSB0aWxlIixpY29uTmFtZToibHVjaWRlOnRyYXNoMiIsYWN0aW9uOmFzeW5jKCk9Pih0LnJlbW92ZVdpZGdldChlLmlkKSxudWxsKX1dO3RyLm9wZW5Db250ZXh0TWVudVdpdGhPcHRpb25zKHIsYSl9fSk7dmFyIEsxLHFyLHJGcixhRnI9bCgoKT0+e1NlKCk7YnIoKTtiaSgpO0hOcigpO2pOcigpO1hOcigpO0pOcigpO3RGcigpO0sxPWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0scXI9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LHJGcj0oKCk9PntsZXQgZT1bemUoImRlZXMtZGFzaGJvYXJkZ3JpZCIpXSx0LHI9W10sYSxpPURlLG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdLHUscD1bXSxoPVtdLGIseD1bXSxnPVtdLHYsdz1bXSxNPVtdLEYsQz1bXSxrPVtdLE4sJD1bXSxJPVtdLEIsej1bXSx5PVtdLEUsXz1bXSxQPVtdLFYsSD1bXSxXPVtdLGFlLFQ9W10sSj1bXSxmZSxMPVtdLFE9W10sa2UsRz1bXSxBPVtdLEQsUj1bXSxPPVtdLFksdWU9W10seWU9W107dmFyICRlPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgVT10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHt0eXBlOkFycmF5fSldLGM9W2ooe3R5cGU6TnVtYmVyfSldLHU9W2ooe3R5cGU6T2JqZWN0fSldLGI9W2ooe3R5cGU6TnVtYmVyfSldLHY9W2ooe3R5cGU6Qm9vbGVhbn0pXSxGPVtqKHt0eXBlOkJvb2xlYW4scmVmbGVjdDohMH0pXSxOPVtqKHt0eXBlOlN0cmluZ30pXSxCPVtqKHt0eXBlOkJvb2xlYW59KV0sRT1baih7dHlwZTpCb29sZWFufSldLFY9W2ooe2F0dHJpYnV0ZTohMX0pXSxhZT1baih7dHlwZTpTdHJpbmd9KV0sZmU9W3JlKCldLGtlPVtyZSgpXSxEPVtyZSgpXSxZPVtyZSgpXSxLMSh0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6IndpZGdldHMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnE9PiJ3aWRnZXRzImluIHEsZ2V0OnE9PnEud2lkZ2V0cyxzZXQ6KHEsaWUpPT57cS53aWRnZXRzPWllfX0sbWV0YWRhdGE6VX0sbixzKSxLMSh0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImNlbGxIZWlnaHQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnE9PiJjZWxsSGVpZ2h0ImluIHEsZ2V0OnE9PnEuY2VsbEhlaWdodCxzZXQ6KHEsaWUpPT57cS5jZWxsSGVpZ2h0PWllfX0sbWV0YWRhdGE6VX0sZCxmKSxLMSh0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im1hcmdpbiIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cT0+Im1hcmdpbiJpbiBxLGdldDpxPT5xLm1hcmdpbixzZXQ6KHEsaWUpPT57cS5tYXJnaW49aWV9fSxtZXRhZGF0YTpVfSxwLGgpLEsxKHRoaXMsbnVsbCxiLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiY29sdW1ucyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cT0+ImNvbHVtbnMiaW4gcSxnZXQ6cT0+cS5jb2x1bW5zLHNldDoocSxpZSk9PntxLmNvbHVtbnM9aWV9fSxtZXRhZGF0YTpVfSx4LGcpLEsxKHRoaXMsbnVsbCx2LHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZWRpdGFibGUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnE9PiJlZGl0YWJsZSJpbiBxLGdldDpxPT5xLmVkaXRhYmxlLHNldDoocSxpZSk9PntxLmVkaXRhYmxlPWllfX0sbWV0YWRhdGE6VX0sdyxNKSxLMSh0aGlzLG51bGwsRix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImVuYWJsZUFuaW1hdGlvbiIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cT0+ImVuYWJsZUFuaW1hdGlvbiJpbiBxLGdldDpxPT5xLmVuYWJsZUFuaW1hdGlvbixzZXQ6KHEsaWUpPT57cS5lbmFibGVBbmltYXRpb249aWV9fSxtZXRhZGF0YTpVfSxDLGspLEsxKHRoaXMsbnVsbCxOLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiY2VsbEhlaWdodFVuaXQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnE9PiJjZWxsSGVpZ2h0VW5pdCJpbiBxLGdldDpxPT5xLmNlbGxIZWlnaHRVbml0LHNldDoocSxpZSk9PntxLmNlbGxIZWlnaHRVbml0PWllfX0sbWV0YWRhdGE6VX0sJCxJKSxLMSh0aGlzLG51bGwsQix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InJ0bCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cT0+InJ0bCJpbiBxLGdldDpxPT5xLnJ0bCxzZXQ6KHEsaWUpPT57cS5ydGw9aWV9fSxtZXRhZGF0YTpVfSx6LHkpLEsxKHRoaXMsbnVsbCxFLHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2hvd0dyaWRMaW5lcyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cT0+InNob3dHcmlkTGluZXMiaW4gcSxnZXQ6cT0+cS5zaG93R3JpZExpbmVzLHNldDoocSxpZSk9PntxLnNob3dHcmlkTGluZXM9aWV9fSxtZXRhZGF0YTpVfSxfLFApLEsxKHRoaXMsbnVsbCxWLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibGF5b3V0cyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cT0+ImxheW91dHMiaW4gcSxnZXQ6cT0+cS5sYXlvdXRzLHNldDoocSxpZSk9PntxLmxheW91dHM9aWV9fSxtZXRhZGF0YTpVfSxILFcpLEsxKHRoaXMsbnVsbCxhZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImFjdGl2ZUJyZWFrcG9pbnQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnE9PiJhY3RpdmVCcmVha3BvaW50ImluIHEsZ2V0OnE9PnEuYWN0aXZlQnJlYWtwb2ludCxzZXQ6KHEsaWUpPT57cS5hY3RpdmVCcmVha3BvaW50PWllfX0sbWV0YWRhdGE6VX0sVCxKKSxLMSh0aGlzLG51bGwsZmUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJwbGFjZWhvbGRlclBvc2l0aW9uIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpxPT4icGxhY2Vob2xkZXJQb3NpdGlvbiJpbiBxLGdldDpxPT5xLnBsYWNlaG9sZGVyUG9zaXRpb24sc2V0OihxLGllKT0+e3EucGxhY2Vob2xkZXJQb3NpdGlvbj1pZX19LG1ldGFkYXRhOlV9LEwsUSksSzEodGhpcyxudWxsLGtlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibWV0cmljcyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cT0+Im1ldHJpY3MiaW4gcSxnZXQ6cT0+cS5tZXRyaWNzLHNldDoocSxpZSk9PntxLm1ldHJpY3M9aWV9fSxtZXRhZGF0YTpVfSxHLEEpLEsxKHRoaXMsbnVsbCxELHtraW5kOiJhY2Nlc3NvciIsbmFtZToicmVzb2x2ZWRNYXJnaW5zIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpxPT4icmVzb2x2ZWRNYXJnaW5zImluIHEsZ2V0OnE9PnEucmVzb2x2ZWRNYXJnaW5zLHNldDoocSxpZSk9PntxLnJlc29sdmVkTWFyZ2lucz1pZX19LG1ldGFkYXRhOlV9LFIsTyksSzEodGhpcyxudWxsLFkse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJwcmV2aWV3V2lkZ2V0cyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cT0+InByZXZpZXdXaWRnZXRzImluIHEsZ2V0OnE9PnEucHJldmlld1dpZGdldHMsc2V0OihxLGllKT0+e3EucHJldmlld1dpZGdldHM9aWV9fSxtZXRhZGF0YTpVfSx1ZSx5ZSksSzEobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6VX0sbnVsbCxyKSwkZT1hPXQudmFsdWUsVSYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpVfSl9c3RhdGljIGRlbW89Qk5yO3N0YXRpYyBkZW1vR3JvdXBzPVsiTGF5b3V0Il07c3RhdGljIHN0eWxlcz1xTnI7I2U9cXIodGhpcyxuLFtdKTtnZXQgd2lkZ2V0cygpe3JldHVybiB0aGlzLiNlfXNldCB3aWRnZXRzKFUpe3RoaXMuI2U9VX0jdD0ocXIodGhpcyxzKSxxcih0aGlzLGQsODApKTtnZXQgY2VsbEhlaWdodCgpe3JldHVybiB0aGlzLiN0fXNldCBjZWxsSGVpZ2h0KFUpe3RoaXMuI3Q9VX0jcj0ocXIodGhpcyxmKSxxcih0aGlzLHAsMTApKTtnZXQgbWFyZ2luKCl7cmV0dXJuIHRoaXMuI3J9c2V0IG1hcmdpbihVKXt0aGlzLiNyPVV9I2E9KHFyKHRoaXMsaCkscXIodGhpcyx4LDEyKSk7Z2V0IGNvbHVtbnMoKXtyZXR1cm4gdGhpcy4jYX1zZXQgY29sdW1ucyhVKXt0aGlzLiNhPVV9I2k9KHFyKHRoaXMsZykscXIodGhpcyx3LCEwKSk7Z2V0IGVkaXRhYmxlKCl7cmV0dXJuIHRoaXMuI2l9c2V0IGVkaXRhYmxlKFUpe3RoaXMuI2k9VX0jbz0ocXIodGhpcyxNKSxxcih0aGlzLEMsITApKTtnZXQgZW5hYmxlQW5pbWF0aW9uKCl7cmV0dXJuIHRoaXMuI299c2V0IGVuYWJsZUFuaW1hdGlvbihVKXt0aGlzLiNvPVV9I249KHFyKHRoaXMsaykscXIodGhpcywkLCJweCIpKTtnZXQgY2VsbEhlaWdodFVuaXQoKXtyZXR1cm4gdGhpcy4jbn1zZXQgY2VsbEhlaWdodFVuaXQoVSl7dGhpcy4jbj1VfSNzPShxcih0aGlzLEkpLHFyKHRoaXMseiwhMSkpO2dldCBydGwoKXtyZXR1cm4gdGhpcy4jc31zZXQgcnRsKFUpe3RoaXMuI3M9VX0jbD0ocXIodGhpcyx5KSxxcih0aGlzLF8sITEpKTtnZXQgc2hvd0dyaWRMaW5lcygpe3JldHVybiB0aGlzLiNsfXNldCBzaG93R3JpZExpbmVzKFUpe3RoaXMuI2w9VX0jYz0ocXIodGhpcyxQKSxxcih0aGlzLEgsdm9pZCAwKSk7Z2V0IGxheW91dHMoKXtyZXR1cm4gdGhpcy4jY31zZXQgbGF5b3V0cyhVKXt0aGlzLiNjPVV9I2Q9KHFyKHRoaXMsVykscXIodGhpcyxULCJiYXNlIikpO2dldCBhY3RpdmVCcmVha3BvaW50KCl7cmV0dXJuIHRoaXMuI2R9c2V0IGFjdGl2ZUJyZWFrcG9pbnQoVSl7dGhpcy4jZD1VfSN1PShxcih0aGlzLEopLHFyKHRoaXMsTCxudWxsKSk7Z2V0IHBsYWNlaG9sZGVyUG9zaXRpb24oKXtyZXR1cm4gdGhpcy4jdX1zZXQgcGxhY2Vob2xkZXJQb3NpdGlvbihVKXt0aGlzLiN1PVV9I2Y9KHFyKHRoaXMsUSkscXIodGhpcyxHLG51bGwpKTtnZXQgbWV0cmljcygpe3JldHVybiB0aGlzLiNmfXNldCBtZXRyaWNzKFUpe3RoaXMuI2Y9VX0jcD0ocXIodGhpcyxBKSxxcih0aGlzLFIsbnVsbCkpO2dldCByZXNvbHZlZE1hcmdpbnMoKXtyZXR1cm4gdGhpcy4jcH1zZXQgcmVzb2x2ZWRNYXJnaW5zKFUpe3RoaXMuI3A9VX0jaD0ocXIodGhpcyxPKSxxcih0aGlzLHVlLG51bGwpKTtnZXQgcHJldmlld1dpZGdldHMoKXtyZXR1cm4gdGhpcy4jaH1zZXQgcHJldmlld1dpZGdldHMoVSl7dGhpcy4jaD1VfWNvbnRhaW5lckJvdW5kcz0ocXIodGhpcyx5ZSksbnVsbCk7ZHJhZ1N0YXRlPW51bGw7cmVzaXplU3RhdGU9bnVsbDtyZXNpemVPYnNlcnZlcjtpbnRlcmFjdGlvbkFjdGl2ZT0hMTthc3luYyBjb25uZWN0ZWRDYWxsYmFjaygpe2F3YWl0IHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCksdGhpcy5jb21wdXRlTWV0cmljcygpLHRoaXMub2JzZXJ2ZVJlc2l6ZSgpfWFzeW5jIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCl7YXdhaXQgc3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKSx0aGlzLmRpc2Nvbm5lY3RSZXNpemVPYnNlcnZlcigpLHRoaXMucmVsZWFzZVBvaW50ZXJFdmVudHMoKX11cGRhdGVkKFUpeyhVLmhhcygibWFyZ2luIil8fFUuaGFzKCJjb2x1bW5zIil8fFUuaGFzKCJjZWxsSGVpZ2h0Iil8fFUuaGFzKCJjZWxsSGVpZ2h0VW5pdCIpKSYmdGhpcy5jb21wdXRlTWV0cmljcygpLFUuaGFzKCJ3aWRnZXRzIikmJiF0aGlzLmludGVyYWN0aW9uQWN0aXZlJiZ0aGlzLm5vdGlmeUxheW91dENoYW5nZSgpfXJlbmRlcigpe2xldCBVPXRoaXMud2lkZ2V0cztpZihVLmxlbmd0aD09PTApcmV0dXJuIFNgCiAgICAgICAgPGRpdiBjbGFzcz0iZW1wdHktc3RhdGUiPgogICAgICAgICAgPGRlZXMtaWNvbiAuaWNvbj0keyJsdWNpZGU6bGF5b3V0R3JpZCJ9PjwvZGVlcy1pY29uPgogICAgICAgICAgPGRpdj5ObyB3aWRnZXRzIGNvbmZpZ3VyZWQ8L2Rpdj4KICAgICAgICAgIDxkaXYgc3R5bGU9ImZvbnQtc2l6ZTogMTRweDsgbWFyZ2luLXRvcDogOHB4OyI+QWRkIHdpZGdldHMgdG8gcG9wdWxhdGUgdGhlIGRhc2hib2FyZDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICBgO2xldCBxPXRoaXMuZW5zdXJlTWV0cmljcygpLGllPXRoaXMucmVzb2x2ZWRNYXJnaW5zPz9YY3QodGhpcy5tYXJnaW4pLHdlPXEuY2VsbEhlaWdodFB4LGdlPXRoaXMucHJldmlld1dpZGdldHM/P3RoaXMud2lkZ2V0cyxBZT1HTnIoZ2UsaWUsd2UpLHhlPXRoaXMucHJldmlld1dpZGdldHM/bmV3IE1hcCh0aGlzLnByZXZpZXdXaWRnZXRzLm1hcChuZT0+W25lLmlkLG5lXSkpOm51bGw7cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9ImdyaWQtY29udGFpbmVyIiBzdHlsZT0iaGVpZ2h0OiAke0FlfXB4OyI+CiAgICAgICAgJHt0aGlzLnNob3dHcmlkTGluZXM/dGhpcy5yZW5kZXJHcmlkTGluZXMocSxBZSk6bnVsbH0KICAgICAgICAke1UubWFwKG5lPT50aGlzLnJlbmRlcldpZGdldChuZSxxLGllLHhlKSl9CiAgICAgICAgJHt0aGlzLnBsYWNlaG9sZGVyUG9zaXRpb24/dGhpcy5yZW5kZXJQbGFjZWhvbGRlcihxLGllKTpudWxsfQogICAgICA8L2Rpdj4KICAgIGB9cmVuZGVyR3JpZExpbmVzKFUscSl7bGV0IGllPVtdLHdlPVtdLGdlPVUuY2VsbFdpZHRoUHgrVS5tYXJnaW5Ib3Jpem9udGFsUHgsQWU9VS5jZWxsSGVpZ2h0UHgrVS5tYXJnaW5WZXJ0aWNhbFB4O2ZvcihsZXQgbmU9MDtuZTw9dGhpcy5jb2x1bW5zO25lKyspe2xldCBMZT1uZSpnZStVLm1hcmdpbkhvcml6b250YWxQeCxPZT10aGlzLnB4VG9QZXJjZW50KExlLFUuY29udGFpbmVyV2lkdGgpO2llLnB1c2goU2A8ZGl2IGNsYXNzPSJncmlkLWxpbmUtdmVydGljYWwiIHN0eWxlPSJsZWZ0OiAke09lfSU7Ij48L2Rpdj5gKX1sZXQgeGU9TWF0aC5jZWlsKHEvQWUpO2ZvcihsZXQgbmU9MDtuZTw9eGU7bmUrKyl7bGV0IExlPW5lKkFlO3dlLnB1c2goU2A8ZGl2IGNsYXNzPSJncmlkLWxpbmUtaG9yaXpvbnRhbCIgc3R5bGU9InRvcDogJHtMZX1weDsiPjwvZGl2PmApfXJldHVybiBTYAogICAgICA8ZGl2IGNsYXNzPSJncmlkLWxpbmVzIj4KICAgICAgICAke2llfQogICAgICAgICR7d2V9CiAgICAgIDwvZGl2PgogICAgYH1yZW5kZXJXaWRnZXQoVSxxLGllLHdlKXtsZXQgZ2U9dGhpcy5kcmFnU3RhdGU/LndpZGdldElkPT09VS5pZCxBZT10aGlzLnJlc2l6ZVN0YXRlPy53aWRnZXRJZD09PVUuaWQseGU9VS5sb2NrZWR8fCF0aGlzLmVkaXRhYmxlLG5lPXdlPy5nZXQoVS5pZCk/P251bGwsTGU9Z2U/VTpuZT8/VSxPZT10aGlzLmNvbXB1dGVXaWRnZXRSZWN0KExlLHEsaWUpLEplPXRoaXMucnRsPyJyaWdodCI6ImxlZnQiLHRlPXRoaXMucHhUb1BlcmNlbnQoT2UubGVmdCxxLmNvbnRhaW5lcldpZHRoKSxaPXRoaXMucHhUb1BlcmNlbnQoT2Uud2lkdGgscS5jb250YWluZXJXaWR0aCksZWU9IiI7aWYoZ2UmJnRoaXMuZHJhZ1N0YXRlPy5jdXJyZW50UG9pbnRlcil7bGV0IGJlPXRoaXMuZHJhZ1N0YXRlLmN1cnJlbnRQb2ludGVyLE5lPXRoaXMuY29udGFpbmVyQm91bmRzPz90aGlzLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLEtlPWJlLmNsaWVudFgtTmUubGVmdC10aGlzLmRyYWdTdGF0ZS5vZmZzZXRYLU9lLmxlZnQseXQ9YmUuY2xpZW50WS1OZS50b3AtdGhpcy5kcmFnU3RhdGUub2Zmc2V0WS1PZS50b3A7ZWU9YHRyYW5zZm9ybTogdHJhbnNsYXRlKCR7S2V9cHgsICR7eXR9cHgpO2B9cmV0dXJuIFNgCiAgICAgIDxkaXYKICAgICAgICBjbGFzcz0iZ3JpZC13aWRnZXQgJHtnZT8iZHJhZ2dpbmciOiIifSAke0FlPyJyZXNpemluZyI6IiJ9IgogICAgICAgIHN0eWxlPSIKICAgICAgICAgICR7SmV9OiAke3RlfSU7CiAgICAgICAgICB0b3A6ICR7T2UudG9wfXB4OwogICAgICAgICAgd2lkdGg6ICR7Wn0lOwogICAgICAgICAgaGVpZ2h0OiAke09lLmhlaWdodH1weDsKICAgICAgICAgICR7ZWV9CiAgICAgICAgIgogICAgICAgIGRhdGEtd2lkZ2V0LWlkPSR7VS5pZH0KICAgICAgPgogICAgICAgIDxkaXYgY2xhc3M9IndpZGdldC1jb250ZW50Ij4KICAgICAgICAgICR7VS50aXRsZT9TYAogICAgICAgICAgICAgICAgPGRpdgogICAgICAgICAgICAgICAgICBjbGFzcz0id2lkZ2V0LWhlYWRlciAke3hlPyJsb2NrZWQiOiIifSIKICAgICAgICAgICAgICAgICAgQHBvaW50ZXJkb3duPSR7IXhlJiYhVS5ub01vdmU/YmU9PnRoaXMuc3RhcnREcmFnKGJlLFUpOm51bGx9CiAgICAgICAgICAgICAgICAgIEBjb250ZXh0bWVudT0ke2JlPT50aGlzLmhhbmRsZVdpZGdldENvbnRleHRNZW51KGJlLFUpfQogICAgICAgICAgICAgICAgICB0YWJpbmRleD0keyF4ZSYmIVUubm9Nb3ZlPzA6LTF9CiAgICAgICAgICAgICAgICAgIEBrZXlkb3duPSR7YmU9PnRoaXMuaGFuZGxlSGVhZGVyS2V5ZG93bihiZSxVKX0KICAgICAgICAgICAgICAgID4KICAgICAgICAgICAgICAgICAgJHtVLmljb24/U2A8ZGVlcy1pY29uIC5pY29uPSR7VS5pY29ufT48L2RlZXMtaWNvbj5gOm51bGx9CiAgICAgICAgICAgICAgICAgICR7VS50aXRsZX0KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgIGA6bnVsbH0KICAgICAgICAgIDxkaXYgY2xhc3M9IndpZGdldC1ib2R5ICR7VS50aXRsZT8iaGFzLWhlYWRlciI6IiJ9Ij4KICAgICAgICAgICAgJHtVLmNvbnRlbnR9CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICR7IXhlJiYhVS5ub1Jlc2l6ZT9TYAogICAgICAgICAgICAgICAgPGRpdgogICAgICAgICAgICAgICAgICBjbGFzcz0icmVzaXplLWhhbmRsZSByZXNpemUtaGFuZGxlLWUiCiAgICAgICAgICAgICAgICAgIEBwb2ludGVyZG93bj0ke2JlPT50aGlzLnN0YXJ0UmVzaXplKGJlLFUsImUiKX0KICAgICAgICAgICAgICAgID48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYKICAgICAgICAgICAgICAgICAgY2xhc3M9InJlc2l6ZS1oYW5kbGUgcmVzaXplLWhhbmRsZS1zIgogICAgICAgICAgICAgICAgICBAcG9pbnRlcmRvd249JHtiZT0+dGhpcy5zdGFydFJlc2l6ZShiZSxVLCJzIil9CiAgICAgICAgICAgICAgICA+PC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2CiAgICAgICAgICAgICAgICAgIGNsYXNzPSJyZXNpemUtaGFuZGxlIHJlc2l6ZS1oYW5kbGUtc2UiCiAgICAgICAgICAgICAgICAgIEBwb2ludGVyZG93bj0ke2JlPT50aGlzLnN0YXJ0UmVzaXplKGJlLFUsInNlIil9CiAgICAgICAgICAgICAgICA+PC9kaXY+CiAgICAgICAgICAgICAgYDpudWxsfQogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIGB9cmVuZGVyUGxhY2Vob2xkZXIoVSxxKXtpZighdGhpcy5wbGFjZWhvbGRlclBvc2l0aW9uKXJldHVybiBTYGA7bGV0IGllPXRoaXMuY29tcHV0ZVdpZGdldFJlY3QodGhpcy5wbGFjZWhvbGRlclBvc2l0aW9uLFUscSksd2U9dGhpcy5ydGw/InJpZ2h0IjoibGVmdCIsZ2U9dGhpcy5weFRvUGVyY2VudChpZS5sZWZ0LFUuY29udGFpbmVyV2lkdGgpLEFlPXRoaXMucHhUb1BlcmNlbnQoaWUud2lkdGgsVS5jb250YWluZXJXaWR0aCk7cmV0dXJuIFNgCiAgICAgIDxkaXYKICAgICAgICBjbGFzcz0iZ3JpZC13aWRnZXQgcGxhY2Vob2xkZXIiCiAgICAgICAgc3R5bGU9IgogICAgICAgICAgJHt3ZX06ICR7Z2V9JTsKICAgICAgICAgIHRvcDogJHtpZS50b3B9cHg7CiAgICAgICAgICB3aWR0aDogJHtBZX0lOwogICAgICAgICAgaGVpZ2h0OiAke2llLmhlaWdodH1weDsKICAgICAgICAiCiAgICAgID4KICAgICAgICA8ZGl2IGNsYXNzPSJ3aWRnZXQtY29udGVudCI+PC9kaXY+CiAgICAgIDwvZGl2PgogICAgYH1zdGFydERyYWcoVSxxKXtpZighdGhpcy5lZGl0YWJsZXx8cS5ub01vdmV8fHEubG9ja2VkKXJldHVybjtVLnByZXZlbnREZWZhdWx0KCksVS5zdG9wUHJvcGFnYXRpb24oKTtsZXQgaWU9VS5jdXJyZW50VGFyZ2V0LmNsb3Nlc3QoIi5ncmlkLXdpZGdldCIpO2lmKCFpZSlyZXR1cm47bGV0IHdlPWllLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO3RoaXMuY29udGFpbmVyQm91bmRzPXRoaXMuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksdGhpcy5lbnN1cmVNZXRyaWNzKCksdGhpcy5kcmFnU3RhdGU9e3dpZGdldElkOnEuaWQscG9pbnRlcklkOlUucG9pbnRlcklkLG9mZnNldFg6VS5jbGllbnRYLXdlLmxlZnQsb2Zmc2V0WTpVLmNsaWVudFktd2UudG9wLHN0YXJ0OntpZDpxLmlkLHg6cS54LHk6cS55LHc6cS53LGg6cS5ofSxwcmV2aW91c1Bvc2l0aW9uOntpZDpxLmlkLHg6cS54LHk6cS55LHc6cS53LGg6cS5ofSxjdXJyZW50UG9pbnRlcjp7Y2xpZW50WDpVLmNsaWVudFgsY2xpZW50WTpVLmNsaWVudFl9LGxhc3RQbGFjZW1lbnQ6bnVsbH0sdGhpcy5pbnRlcmFjdGlvbkFjdGl2ZT0hMCxVLmN1cnJlbnRUYXJnZXQuc2V0UG9pbnRlckNhcHR1cmUoVS5wb2ludGVySWQpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJtb3ZlIix0aGlzLmhhbmRsZURyYWdNb3ZlKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVydXAiLHRoaXMuaGFuZGxlRHJhZ0VuZCksdGhpcy5wbGFjZWhvbGRlclBvc2l0aW9uPXtpZDpxLmlkLHg6cS54LHk6cS55LHc6cS53LGg6cS5ofX1oYW5kbGVEcmFnTW92ZT1VPT57aWYoIXRoaXMuZHJhZ1N0YXRlKXJldHVybjtsZXQgcT10aGlzLmVuc3VyZU1ldHJpY3MoKSxpZT10aGlzLndpZGdldHMsd2U9aWUuZmluZChuZT0+bmUuaWQ9PT10aGlzLmRyYWdTdGF0ZS53aWRnZXRJZCk7aWYoIXdlKXJldHVybjtVLnByZXZlbnREZWZhdWx0KCk7bGV0IGdlPXRoaXMuZHJhZ1N0YXRlLnByZXZpb3VzUG9zaXRpb24sQWU9UU5yKHtwb2ludGVyOntjbGllbnRYOlUuY2xpZW50WCxjbGllbnRZOlUuY2xpZW50WX0sY29udGFpbmVyUmVjdDp0aGlzLmNvbnRhaW5lckJvdW5kcz8/dGhpcy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxtZXRyaWNzOnEsY29sdW1uczp0aGlzLmNvbHVtbnMsd2lkZ2V0OndlLHJ0bDp0aGlzLnJ0bCxkcmFnT2Zmc2V0WDp0aGlzLmRyYWdTdGF0ZS5vZmZzZXRYLGRyYWdPZmZzZXRZOnRoaXMuZHJhZ1N0YXRlLm9mZnNldFl9KSx4ZT1nMyhpZSx3ZS5pZCx7eDpBZS54LHk6QWUueX0sdGhpcy5jb2x1bW5zLGdlKTtpZih4ZSl7bGV0IG5lPXhlLndpZGdldHMuZmluZChPZT0+T2UuaWQ9PT13ZS5pZCk7dGhpcy5kcmFnU3RhdGU9ey4uLnRoaXMuZHJhZ1N0YXRlLGN1cnJlbnRQb2ludGVyOntjbGllbnRYOlUuY2xpZW50WCxjbGllbnRZOlUuY2xpZW50WX0sbGFzdFBsYWNlbWVudDp4ZSxwcmV2aW91c1Bvc2l0aW9uOm5lP3tpZDpuZS5pZCx4Om5lLngseTpuZS55LHc6bmUudyxoOm5lLmh9OntpZDp3ZS5pZCx4OkFlLngseTpBZS55LHc6d2UudyxoOndlLmh9fSx0aGlzLnByZXZpZXdXaWRnZXRzPXhlLndpZGdldHM7bGV0IExlPXhlLndpZGdldHMuZmluZChPZT0+T2UuaWQ9PT13ZS5pZCk7TGU/dGhpcy5wbGFjZWhvbGRlclBvc2l0aW9uPXtpZDpMZS5pZCx4OkxlLngseTpMZS55LHc6TGUudyxoOkxlLmh9OnRoaXMucGxhY2Vob2xkZXJQb3NpdGlvbj17aWQ6d2UuaWQseDpBZS54LHk6QWUueSx3OndlLncsaDp3ZS5ofX1lbHNlIHRoaXMucHJldmlld1dpZGdldHM9bnVsbCx0aGlzLnBsYWNlaG9sZGVyUG9zaXRpb249bnVsbDt0aGlzLnJlcXVlc3RVcGRhdGUoKX07aGFuZGxlRHJhZ0VuZD1VPT57bGV0IHE9dGhpcy5kcmFnU3RhdGU7aWYoIXF8fFUucG9pbnRlcklkIT09cS5wb2ludGVySWQpcmV0dXJuO2xldCBpZT10aGlzLndpZGdldHM7dGhpcy5wcmV2aWV3V2lkZ2V0cz1udWxsO2xldCB3ZT10aGlzLnBsYWNlaG9sZGVyUG9zaXRpb24/P3Euc3RhcnQsZ2U9ZzMoaWUscS53aWRnZXRJZCx7eDp3ZS54LHk6d2UueX0sdGhpcy5jb2x1bW5zLHEucHJldmlvdXNQb3NpdGlvbik7aWYoZ2Upe2xldCBBZT1nZS53aWRnZXRzLmZpbmQoeGU9PnhlLmlkPT09cS53aWRnZXRJZCk7QWUmJihnZS53aWRnZXRzLnNvbWUobmU9Pm5lLmlkPT09cS53aWRnZXRJZD8hMTpBZS54PG5lLngrbmUudyYmQWUueCtBZS53Pm5lLngmJkFlLnk8bmUueStuZS5oJiZBZS55K0FlLmg+bmUueSk/dGhpcy53aWRnZXRzPXRoaXMud2lkZ2V0cy5tYXAobmU9Pm5lLmlkPT09cS53aWRnZXRJZD97Li4ubmUseDpxLnN0YXJ0LngseTpxLnN0YXJ0Lnl9Om5lKTp0aGlzLmNvbW1pdFBsYWNlbWVudChnZSxxLndpZGdldElkLCJ3aWRnZXQtbW92ZSIpKX1lbHNlIHRoaXMud2lkZ2V0cz10aGlzLndpZGdldHMubWFwKEFlPT5BZS5pZD09PXEud2lkZ2V0SWQ/ey4uLkFlLHg6cS5zdGFydC54LHk6cS5zdGFydC55fTpBZSk7dGhpcy5wbGFjZWhvbGRlclBvc2l0aW9uPW51bGwsdGhpcy5kcmFnU3RhdGU9bnVsbCx0aGlzLmludGVyYWN0aW9uQWN0aXZlPSExLHRoaXMucmVsZWFzZVBvaW50ZXJFdmVudHMoKX07c3RhcnRSZXNpemUoVSxxLGllKXshdGhpcy5lZGl0YWJsZXx8cS5ub1Jlc2l6ZXx8cS5sb2NrZWR8fChVLnByZXZlbnREZWZhdWx0KCksVS5zdG9wUHJvcGFnYXRpb24oKSx0aGlzLmVuc3VyZU1ldHJpY3MoKSx0aGlzLnJlc2l6ZVN0YXRlPXt3aWRnZXRJZDpxLmlkLHBvaW50ZXJJZDpVLnBvaW50ZXJJZCxoYW5kbGVyOmllLHN0YXJ0UG9pbnRlcjp7Y2xpZW50WDpVLmNsaWVudFgsY2xpZW50WTpVLmNsaWVudFl9LHN0YXJ0OntpZDpxLmlkLHg6cS54LHk6cS55LHc6cS53LGg6cS5ofSxzdGFydFdpZHRoOnEudyxzdGFydEhlaWdodDpxLmgsbGFzdFBsYWNlbWVudDpudWxsfSx0aGlzLmludGVyYWN0aW9uQWN0aXZlPSEwLFUuY3VycmVudFRhcmdldC5zZXRQb2ludGVyQ2FwdHVyZShVLnBvaW50ZXJJZCksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcm1vdmUiLHRoaXMuaGFuZGxlUmVzaXplTW92ZSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcnVwIix0aGlzLmhhbmRsZVJlc2l6ZUVuZCksdGhpcy5wbGFjZWhvbGRlclBvc2l0aW9uPXtpZDpxLmlkLHg6cS54LHk6cS55LHc6cS53LGg6cS5ofSl9aGFuZGxlUmVzaXplTW92ZT1VPT57aWYoIXRoaXMucmVzaXplU3RhdGUpcmV0dXJuO2xldCBxPXRoaXMuZW5zdXJlTWV0cmljcygpLGllPXRoaXMud2lkZ2V0cyx3ZT1pZS5maW5kKHhlPT54ZS5pZD09PXRoaXMucmVzaXplU3RhdGUud2lkZ2V0SWQpO2lmKCF3ZSlyZXR1cm47VS5wcmV2ZW50RGVmYXVsdCgpO2xldCBnZT1LTnIoe3BvaW50ZXI6e2NsaWVudFg6VS5jbGllbnRYLGNsaWVudFk6VS5jbGllbnRZfSxjb250YWluZXJSZWN0OnRoaXMuY29udGFpbmVyQm91bmRzPz90aGlzLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLG1ldHJpY3M6cSxzdGFydFdpZHRoOnRoaXMucmVzaXplU3RhdGUuc3RhcnRXaWR0aCxzdGFydEhlaWdodDp0aGlzLnJlc2l6ZVN0YXRlLnN0YXJ0SGVpZ2h0LHN0YXJ0UG9pbnRlcjp0aGlzLnJlc2l6ZVN0YXRlLnN0YXJ0UG9pbnRlcixoYW5kbGVyOnRoaXMucmVzaXplU3RhdGUuaGFuZGxlcix3aWRnZXQ6d2UsY29sdW1uczp0aGlzLmNvbHVtbnN9KSxBZT1nMyhpZSx3ZS5pZCx7eDp3ZS54LHk6d2UueSx3OmdlLndpZHRoLGg6Z2UuaGVpZ2h0fSx0aGlzLmNvbHVtbnMsdGhpcy5yZXNpemVTdGF0ZS5zdGFydCk7aWYoQWUpe3RoaXMucmVzaXplU3RhdGU9ey4uLnRoaXMucmVzaXplU3RhdGUsbGFzdFBsYWNlbWVudDpBZX0sdGhpcy5wcmV2aWV3V2lkZ2V0cz1BZS53aWRnZXRzO2xldCB4ZT1BZS53aWRnZXRzLmZpbmQobmU9Pm5lLmlkPT09d2UuaWQpO3hlP3RoaXMucGxhY2Vob2xkZXJQb3NpdGlvbj17aWQ6eGUuaWQseDp4ZS54LHk6eGUueSx3OnhlLncsaDp4ZS5ofTp0aGlzLnBsYWNlaG9sZGVyUG9zaXRpb249e2lkOndlLmlkLHg6d2UueCx5OndlLnksdzpnZS53aWR0aCxoOmdlLmhlaWdodH19ZWxzZSB0aGlzLnByZXZpZXdXaWRnZXRzPW51bGwsdGhpcy5wbGFjZWhvbGRlclBvc2l0aW9uPW51bGw7dGhpcy5yZXF1ZXN0VXBkYXRlKCl9O2hhbmRsZVJlc2l6ZUVuZD1VPT57bGV0IHE9dGhpcy5yZXNpemVTdGF0ZTtpZighcXx8VS5wb2ludGVySWQhPT1xLnBvaW50ZXJJZClyZXR1cm47bGV0IGllPXRoaXMud2lkZ2V0czt0aGlzLnByZXZpZXdXaWRnZXRzPW51bGw7bGV0IHdlPXEubGFzdFBsYWNlbWVudD8/ZzMoaWUscS53aWRnZXRJZCx7eDp0aGlzLnBsYWNlaG9sZGVyUG9zaXRpb24/Lng/P3Euc3RhcnQueCx5OnRoaXMucGxhY2Vob2xkZXJQb3NpdGlvbj8ueT8/cS5zdGFydC55LHc6dGhpcy5wbGFjZWhvbGRlclBvc2l0aW9uPy53Pz9xLnN0YXJ0LncsaDp0aGlzLnBsYWNlaG9sZGVyUG9zaXRpb24/Lmg/P3Euc3RhcnQuaH0sdGhpcy5jb2x1bW5zLHEuc3RhcnQpO3dlP3RoaXMuY29tbWl0UGxhY2VtZW50KHdlLHEud2lkZ2V0SWQsIndpZGdldC1yZXNpemUiKTp0aGlzLndpZGdldHM9dGhpcy53aWRnZXRzLm1hcChnZT0+Z2UuaWQ9PT1xLndpZGdldElkP3suLi5nZSx3OnEuc3RhcnQudyxoOnEuc3RhcnQuaH06Z2UpLHRoaXMucGxhY2Vob2xkZXJQb3NpdGlvbj1udWxsLHRoaXMucmVzaXplU3RhdGU9bnVsbCx0aGlzLmludGVyYWN0aW9uQWN0aXZlPSExLHRoaXMucmVsZWFzZVBvaW50ZXJFdmVudHMoKX07aGFuZGxlSGVhZGVyS2V5ZG93bihVLHEpe2lmKCF0aGlzLmVkaXRhYmxlfHxxLm5vTW92ZXx8cS5sb2NrZWQpcmV0dXJuO2xldCBpZT1VLmtleSx3ZT1VLnNoaWZ0S2V5LGdlPW51bGw7aWYod2UmJlsiQXJyb3dMZWZ0IiwiQXJyb3dSaWdodCIsIkFycm93VXAiLCJBcnJvd0Rvd24iXS5pbmNsdWRlcyhpZSkpe1UucHJldmVudERlZmF1bHQoKTtsZXQgT2U9aWU9PT0iQXJyb3dSaWdodCJ8fGllPT09IkFycm93RG93biI/MTotMTtpZihpZT09PSJBcnJvd0xlZnQifHxpZT09PSJBcnJvd1JpZ2h0Iil7bGV0IEplPXEubWF4Vz8/dGhpcy5jb2x1bW5zLXEueCx0ZT1NYXRoLm1heChxLm1pblc/PzEsTWF0aC5taW4oSmUscS53K09lKSk7Z2U9ZzModGhpcy53aWRnZXRzLHEuaWQse3g6cS54LHk6cS55LHc6dGUsaDpxLmh9LHRoaXMuY29sdW1ucyl9ZWxzZXtsZXQgSmU9cS5tYXhIPz9OdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFksdGU9TWF0aC5tYXgocS5taW5IPz8xLE1hdGgubWluKEplLHEuaCtPZSkpO2dlPWczKHRoaXMud2lkZ2V0cyxxLmlkLHt4OnEueCx5OnEueSx3OnEudyxoOnRlfSx0aGlzLmNvbHVtbnMpfWdlJiZ0aGlzLmNvbW1pdFBsYWNlbWVudChnZSxxLmlkLCJ3aWRnZXQtcmVzaXplIik7cmV0dXJufWxldCB4ZT17QXJyb3dMZWZ0OntkeDotMSxkeTowfSxBcnJvd1JpZ2h0OntkeDoxLGR5OjB9LEFycm93VXA6e2R4OjAsZHk6LTF9LEFycm93RG93bjp7ZHg6MCxkeToxfX1baWVdO2lmKCF4ZSlyZXR1cm47VS5wcmV2ZW50RGVmYXVsdCgpO2xldCBuZT1NYXRoLm1heCgwLE1hdGgubWluKHRoaXMuY29sdW1ucy1xLncscS54K3hlLmR4KSksTGU9TWF0aC5tYXgoMCxxLnkreGUuZHkpO2dlPWczKHRoaXMud2lkZ2V0cyxxLmlkLHt4Om5lLHk6TGV9LHRoaXMuY29sdW1ucyksZ2UmJnRoaXMuY29tbWl0UGxhY2VtZW50KGdlLHEuaWQsIndpZGdldC1tb3ZlIil9aGFuZGxlV2lkZ2V0Q29udGV4dE1lbnUoVSxxKXtVLnByZXZlbnREZWZhdWx0KCksVS5zdG9wUHJvcGFnYXRpb24oKSxlRnIoe3dpZGdldDpxLGhvc3Q6dGhpcyxldmVudDpVfSl9Y29tbWl0UGxhY2VtZW50KFUscSxpZSl7dGhpcy5wcmV2aWV3V2lkZ2V0cz1udWxsLHRoaXMud2lkZ2V0cz1VLndpZGdldHM7bGV0IHdlPXRoaXMud2lkZ2V0cy5maW5kKGdlPT5nZS5pZD09PXEpO3dlJiZ0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KGllLHtkZXRhaWw6e3dpZGdldDp3ZSxkaXNwbGFjZWQ6VS5tb3ZlZFdpZGdldHMuZmlsdGVyKGdlPT5nZSE9PXEpLHN3YXBwZWRXaXRoOlUuc3dhcHBlZFdpdGh9LGJ1YmJsZXM6ITAsY29tcG9zZWQ6ITB9KSl9cmVtb3ZlV2lkZ2V0KFUpe2xldCBxPXRoaXMud2lkZ2V0cy5maW5kKGllPT5pZS5pZD09PVUpO3EmJih0aGlzLndpZGdldHM9dGhpcy53aWRnZXRzLmZpbHRlcihpZT0+aWUuaWQhPT1VKSx0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJ3aWRnZXQtcmVtb3ZlIix7ZGV0YWlsOnt3aWRnZXQ6cX0sYnViYmxlczohMCxjb21wb3NlZDohMH0pKSl9dXBkYXRlV2lkZ2V0KFUscSl7dGhpcy53aWRnZXRzPXRoaXMud2lkZ2V0cy5tYXAoaWU9PmllLmlkPT09VT97Li4uaWUsLi4ucX06aWUpfWdldExheW91dCgpe3JldHVybiB0aGlzLndpZGdldHMubWFwKCh7aWQ6VSx4OnEseTppZSx3OndlLGg6Z2V9KT0+KHtpZDpVLHg6cSx5OmllLHc6d2UsaDpnZX0pKX1zZXRMYXlvdXQoVSl7dGhpcy53aWRnZXRzPVpOcih0aGlzLndpZGdldHMsVSl9bG9ja0dyaWQoKXt0aGlzLmVkaXRhYmxlPSExfXVubG9ja0dyaWQoKXt0aGlzLmVkaXRhYmxlPSEwfWFkZFdpZGdldChVLHE9ITEpe2xldCBpZT17Li4uVX07aWYocXx8aWUuYXV0b1Bvc2l0aW9uKXtsZXQgd2U9UWN0KHRoaXMud2lkZ2V0cyxpZS53LGllLmgsdGhpcy5jb2x1bW5zKTtpZS54PXdlLngsaWUueT13ZS55fXRoaXMud2lkZ2V0cz1bLi4udGhpcy53aWRnZXRzLGllXX1jb21wYWN0KFU9InZlcnRpY2FsIil7bGV0IHE9dGhpcy53aWRnZXRzLm1hcChpZT0+KHsuLi5pZX0pKTtZTnIocSxVKSx0aGlzLndpZGdldHM9cX1hcHBseUJyZWFrcG9pbnRMYXlvdXQoVSl7dGhpcy5hY3RpdmVCcmVha3BvaW50PVU7bGV0IHE9dGhpcy5sYXlvdXRzPy5bVV07cSYmdGhpcy5zZXRMYXlvdXQocSl9bm90aWZ5TGF5b3V0Q2hhbmdlKCl7dGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgibGF5b3V0LWNoYW5nZSIse2RldGFpbDp7bGF5b3V0OnRoaXMuZ2V0TGF5b3V0KCl9LGJ1YmJsZXM6ITAsY29tcG9zZWQ6ITB9KSl9ZW5zdXJlTWV0cmljcygpe3JldHVybiB0aGlzLm1ldHJpY3N8fHRoaXMuY29tcHV0ZU1ldHJpY3MoKSx0aGlzLm1ldHJpY3N9Y29tcHV0ZU1ldHJpY3MoKXtpZighdGhpcy5pc0Nvbm5lY3RlZClyZXR1cm47bGV0IFU9dGhpcy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTt0aGlzLmNvbnRhaW5lckJvdW5kcz1VO2xldCBxPVhjdCh0aGlzLm1hcmdpbik7dGhpcy5yZXNvbHZlZE1hcmdpbnM9cSx0aGlzLm1ldHJpY3M9V05yKFUud2lkdGgsdGhpcy5jb2x1bW5zLHEsdGhpcy5jZWxsSGVpZ2h0LHRoaXMuY2VsbEhlaWdodFVuaXQpfW9ic2VydmVSZXNpemUoKXt0aGlzLnJlc2l6ZU9ic2VydmVyfHwodGhpcy5yZXNpemVPYnNlcnZlcj1uZXcgUmVzaXplT2JzZXJ2ZXIoKCk9Pnt0aGlzLmNvbXB1dGVNZXRyaWNzKCl9KSx0aGlzLnJlc2l6ZU9ic2VydmVyLm9ic2VydmUodGhpcykpfWRpc2Nvbm5lY3RSZXNpemVPYnNlcnZlcigpe3RoaXMucmVzaXplT2JzZXJ2ZXI/LmRpc2Nvbm5lY3QoKSx0aGlzLnJlc2l6ZU9ic2VydmVyPXZvaWQgMH1yZWxlYXNlUG9pbnRlckV2ZW50cygpe2RvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInBvaW50ZXJtb3ZlIix0aGlzLmhhbmRsZURyYWdNb3ZlKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJwb2ludGVydXAiLHRoaXMuaGFuZGxlRHJhZ0VuZCksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigicG9pbnRlcm1vdmUiLHRoaXMuaGFuZGxlUmVzaXplTW92ZSksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigicG9pbnRlcnVwIix0aGlzLmhhbmRsZVJlc2l6ZUVuZCl9cHhUb1BlcmNlbnQoVSxxKXtyZXR1cm4gcT9OdW1iZXIoKFUvcSoxMDApLnRvRml4ZWQoNCkpOjB9Y29tcHV0ZVdpZGdldFJlY3QoVSxxLGllKXtsZXQgd2U9cS5jZWxsV2lkdGhQeCxnZT1xLmNlbGxIZWlnaHRQeCxBZT1VLngqKHdlK2llLmhvcml6b250YWwpK2llLmhvcml6b250YWwseGU9VS55KihnZStpZS52ZXJ0aWNhbCkraWUudmVydGljYWwsbmU9VS53KndlK01hdGgubWF4KDAsVS53LTEpKmllLmhvcml6b250YWwsTGU9VS5oKmdlK01hdGgubWF4KDAsVS5oLTEpKmllLnZlcnRpY2FsO3JldHVybntsZWZ0OkFlLHRvcDp4ZSx3aWR0aDpuZSxoZWlnaHQ6TGV9fXN0YXRpY3txcihhLHIpfX07cmV0dXJuICRlPWF9KSgpfSk7dmFyIGlGcj1sKCgpPT57YUZyKCl9KTtmdW5jdGlvbiBvRnIoKXtyZXR1cm4gU2AKICAgIDxkZWVzLWhlYWRpbmcgbGV2ZWw9IjEiPlRoaXMgaXMgYSBIMSBoZWFkaW5nPC9kZWVzLWhlYWRpbmc+CiAgICA8ZGVlcy1oZWFkaW5nIGxldmVsPSIyIj5UaGlzIGlzIGEgSDIgaGVhZGluZzwvZGVlcy1oZWFkaW5nPgogICAgPGRlZXMtaGVhZGluZyBsZXZlbD0iMyI+VGhpcyBpcyBhIEgzIGhlYWRpbmc8L2RlZXMtaGVhZGluZz4KICAgIDxkZWVzLWhlYWRpbmcgbGV2ZWw9IjQiPlRoaXMgaXMgYSBINCBoZWFkaW5nPC9kZWVzLWhlYWRpbmc+CiAgICA8ZGVlcy1oZWFkaW5nIGxldmVsPSI1Ij5UaGlzIGlzIGEgSDUgaGVhZGluZzwvZGVlcy1oZWFkaW5nPgogICAgPGRlZXMtaGVhZGluZyBsZXZlbD0iNiI+VGhpcyBpcyBhIEg2IGhlYWRpbmc8L2RlZXMtaGVhZGluZz4KICAgIDxkZWVzLWhlYWRpbmcgbGV2ZWw9ImhyIj5UaGlzIGlzIGFuIGhyIGhlYWRpbmc8L2RlZXMtaGVhZGluZz4KICAgIDxkZWVzLWhlYWRpbmcgbGV2ZWw9ImhyLXNtYWxsIj5UaGlzIGlzIGFuIGhyIHNtYWxsIGhlYWRpbmc8L2RlZXMtaGVhZGluZz4KICBgfXZhciBuRnI9bCgoKT0+e1NlKCl9KTt2YXIgc0ZyLEtjdCxsRnIsY0ZyPWwoKCk9PntTZSgpO25GcigpO3VvKCk7b3QoKTtzRnI9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxLY3Q9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LGxGcj0oKCk9PntsZXQgZT1bemUoImRlZXMtaGVhZGluZyIpXSx0LHI9W10sYSxpPURlLG8sbj1bXSxzPVtdO3ZhciBjPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgZD10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHt0eXBlOlN0cmluZyxyZWZsZWN0OiEwfSldLHNGcih0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImxldmVsIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpmPT4ibGV2ZWwiaW4gZixnZXQ6Zj0+Zi5sZXZlbCxzZXQ6KGYsdSk9PntmLmxldmVsPXV9fSxtZXRhZGF0YTpkfSxuLHMpLHNGcihudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTpkfSxudWxsLHIpLGM9YT10LnZhbHVlLGQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6ZH0pfXN0YXRpYyBkZW1vPW9GcjtzdGF0aWMgZGVtb0dyb3Vwcz1bIkxheW91dCJdOyNlPUtjdCh0aGlzLG4sIjEiKTtnZXQgbGV2ZWwoKXtyZXR1cm4gdGhpcy4jZX1zZXQgbGV2ZWwoZCl7dGhpcy4jZT1kfXN0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgLyogVE9ETzogTWlncmF0ZSBoYXJkY29kZWQgdmFsdWVzIHRvIC0tZGVlcy0qIENTUyB2YXJpYWJsZXMgKi8KICAgICAgLyogSGVhZGluZyBzdHlsZXMgKi8KICAgICAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7CiAgICAgICAgbWFyZ2luOiAxNnB4IDAgOHB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMDAwIiwiI2ZmZiIpfTsKICAgICAgfQogICAgICBoMSB7IGZvbnQtc2l6ZTogMzJweDsgZm9udC1mYW1pbHk6ICR7eUVyfTsgbGV0dGVyLXNwYWNpbmc6IDAuMDI1ZW07fQogICAgICBoMiB7IGZvbnQtc2l6ZTogMjhweDsgfQogICAgICBoMyB7IGZvbnQtc2l6ZTogMjRweDsgfQogICAgICBoNCB7IGZvbnQtc2l6ZTogMjBweDsgfQogICAgICBoNSB7IGZvbnQtc2l6ZTogMTZweDsgfQogICAgICBoNiB7IGZvbnQtc2l6ZTogMTRweDsgfQogICAgICAvKiBIb3Jpem9udGFsIHJ1bGUgc3R5bGUgaGVhZGluZyAqLwogICAgICAuaGVhZGluZy1ociB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICBtYXJnaW46IDE2cHggMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwMDAiLCIjZmZmIil9OwogICAgICB9CiAgICAgIC8qIEZhZGUgbGluZXMgdG93YXJkIGFuZCBhd2F5IGZyb20gdGV4dCBmb3IgaHIgc3R5bGUgKi8KICAgICAgLmhlYWRpbmctaHI6OmJlZm9yZSB7CiAgICAgICAgY29udGVudDogJyc7CiAgICAgICAgZmxleDogMTsKICAgICAgICBoZWlnaHQ6IDFweDsKICAgICAgICAvKiBmYWRlIGluIHRvd2FyZCBjZW50ZXIgKi8KICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgibGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB0cmFuc3BhcmVudCwgI2NjYykiLCJsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHRyYW5zcGFyZW50LCAjMzMzKSIpfTsKICAgICAgICBtYXJnaW46IDAgOHB4OwogICAgICB9CiAgICAgIC5oZWFkaW5nLWhyOjphZnRlciB7CiAgICAgICAgY29udGVudDogJyc7CiAgICAgICAgZmxleDogMTsKICAgICAgICBoZWlnaHQ6IDFweDsKICAgICAgICAvKiBmYWRlIG91dCBhd2F5IGZyb20gY2VudGVyICovCiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2NjYywgdHJhbnNwYXJlbnQpIiwibGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjMzMzLCB0cmFuc3BhcmVudCkiKX07CiAgICAgICAgbWFyZ2luOiAwIDhweDsKICAgICAgfQogICAgICAvKiBTbWFsbCBociB2YXJpYW50IHdpdGggcmVkdWNlZCBtYXJnaW5zICovCiAgICAgIC5oZWFkaW5nLWhyLmhlYWRpbmctaHItc21hbGwgewogICAgICAgIG1hcmdpbjogOHB4IDA7CiAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICB9CiAgICAgIC5oZWFkaW5nLWhyLmhlYWRpbmctaHItc21hbGw6OmJlZm9yZSwKICAgICAgLmhlYWRpbmctaHIuaGVhZGluZy1oci1zbWFsbDo6YWZ0ZXIgewogICAgICAgIG1hcmdpbjogMCA4cHg7CiAgICAgIH0KICAgIGBdO3JlbmRlcigpe3N3aXRjaCh0aGlzLmxldmVsKXtjYXNlIjEiOnJldHVybiBTYDxoMT48c2xvdD48L3Nsb3Q+PC9oMT5gO2Nhc2UiMiI6cmV0dXJuIFNgPGgyPjxzbG90Pjwvc2xvdD48L2gyPmA7Y2FzZSIzIjpyZXR1cm4gU2A8aDM+PHNsb3Q+PC9zbG90PjwvaDM+YDtjYXNlIjQiOnJldHVybiBTYDxoND48c2xvdD48L3Nsb3Q+PC9oND5gO2Nhc2UiNSI6cmV0dXJuIFNgPGg1PjxzbG90Pjwvc2xvdD48L2g1PmA7Y2FzZSI2IjpyZXR1cm4gU2A8aDY+PHNsb3Q+PC9zbG90PjwvaDY+YDtjYXNlImhyIjpyZXR1cm4gU2A8ZGl2IGNsYXNzPSJoZWFkaW5nLWhyIj48c2xvdD48L3Nsb3Q+PC9kaXY+YDtjYXNlImhyLXNtYWxsIjpyZXR1cm4gU2A8ZGl2IGNsYXNzPSJoZWFkaW5nLWhyIGhlYWRpbmctaHItc21hbGwiPjxzbG90Pjwvc2xvdD48L2Rpdj5gO2RlZmF1bHQ6cmV0dXJuIFNgPGgxPjxzbG90Pjwvc2xvdD48L2gxPmB9fWNvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKSxLY3QodGhpcyxzKX1zdGF0aWN7S2N0KGEscil9fTtyZXR1cm4gYz1hfSkoKX0pO3ZhciBkRnI9bCgoKT0+e2NGcigpfSk7dmFyIHVGcj1sKCgpPT57cTkoKX0pO3ZhciBmRnIscEZyPWwoKCk9PntTZSgpO2ZGcj0oKT0+U2AKICA8ZGl2IHN0eWxlPSJkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBnYXA6IDE2cHg7Ij4KICAgIDwhLS0gU21hbGwgc2V0IG9mIHBhZ2VzIC0tPgogICAgPGRpdiBzdHlsZT0iZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgZ2FwOiA0cHg7Ij4KICAgICAgPHNwYW4+NSBwYWdlcywgc3RhcnRpbmcgYXQgMTo8L3NwYW4+CiAgICAgIDxkZWVzLXBhZ2luYXRpb24KICAgICAgICAudG90YWw9JHs1fQogICAgICAgIC5wYWdlPSR7MX0KICAgICAgICBAcGFnZS1jaGFuZ2U9JHtlPT5jb25zb2xlLmxvZygiUGFnZSBjaGFuZ2VkIHRvIixlLmRldGFpbC5wYWdlKX0KICAgICAgPjwvZGVlcy1wYWdpbmF0aW9uPgogICAgPC9kaXY+CgogICAgPCEtLSBMYXJnZXIgc2V0IG9mIHBhZ2VzIC0tPgogICAgPGRpdiBzdHlsZT0iZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgZ2FwOiA0cHg7Ij4KICAgICAgPHNwYW4+MTUgcGFnZXMsIHN0YXJ0aW5nIGF0IDg6PC9zcGFuPgogICAgICA8ZGVlcy1wYWdpbmF0aW9uCiAgICAgICAgLnRvdGFsPSR7MTV9CiAgICAgICAgLnBhZ2U9JHs4fQogICAgICAgIEBwYWdlLWNoYW5nZT0ke2U9PmNvbnNvbGUubG9nKCJQYWdlIGNoYW5nZWQgdG8iLGUuZGV0YWlsLnBhZ2UpfQogICAgICA+PC9kZWVzLXBhZ2luYXRpb24+CiAgICA8L2Rpdj4KICA8L2Rpdj4KYH0pO3ZhciBKY3QsSFosaEZyLG1Gcj1sKCgpPT57U2UoKTtwRnIoKTtvdCgpO0pjdD1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LEhaPWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSxoRnI9KCgpPT57bGV0IGU9W3plKCJkZWVzLXBhZ2luYXRpb24iKV0sdCxyPVtdLGEsaT1EZSxvLG49W10scz1bXSxjLGQ9W10sZj1bXTt2YXIgdT1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IHA9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baih7dHlwZTpOdW1iZXIscmVmbGVjdDohMH0pXSxjPVtqKHt0eXBlOk51bWJlcixyZWZsZWN0OiEwfSldLEpjdCh0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InBhZ2UiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmg9PiJwYWdlImluIGgsZ2V0Omg9PmgucGFnZSxzZXQ6KGgsYik9PntoLnBhZ2U9Yn19LG1ldGFkYXRhOnB9LG4scyksSmN0KHRoaXMsbnVsbCxjLHtraW5kOiJhY2Nlc3NvciIsbmFtZToidG90YWwiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmg9PiJ0b3RhbCJpbiBoLGdldDpoPT5oLnRvdGFsLHNldDooaCxiKT0+e2gudG90YWw9Yn19LG1ldGFkYXRhOnB9LGQsZiksSmN0KG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOnB9LG51bGwsciksdT1hPXQudmFsdWUscCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpwfSl9c3RhdGljIGRlbW89ZkZyO3N0YXRpYyBkZW1vR3JvdXBzPVsiTGF5b3V0Il07I2U9SFoodGhpcyxuLDEpO2dldCBwYWdlKCl7cmV0dXJuIHRoaXMuI2V9c2V0IHBhZ2UocCl7dGhpcy4jZT1wfSN0PShIWih0aGlzLHMpLEhaKHRoaXMsZCwxKSk7Z2V0IHRvdGFsKCl7cmV0dXJuIHRoaXMuI3R9c2V0IHRvdGFsKHApe3RoaXMuI3Q9cH1zdGF0aWMgc3R5bGVzPVtQZSxtLmRlZmF1bHRTdHlsZXMsbGVgCiAgICAgIC8qIFRPRE86IE1pZ3JhdGUgaGFyZGNvZGVkIHZhbHVlcyB0byAtLWRlZXMtKiBDU1MgdmFyaWFibGVzICovCiAgICAgIDpob3N0IHsKICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICB9CiAgICAgIGJ1dHRvbiB7CiAgICAgICAgYmFja2dyb3VuZDogbm9uZTsKICAgICAgICBib3JkZXI6IG5vbmU7CiAgICAgICAgbWFyZ2luOiAwIDJweDsKICAgICAgICBwYWRkaW5nOiA2cHggMTBweDsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzMzMyIsIiNjY2MiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4OwogICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4yczsKICAgICAgfQogICAgICBidXR0b246aG92ZXI6bm90KDpkaXNhYmxlZCkgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZWVlIiwiIzQ0NCIpfTsKICAgICAgfQogICAgICBidXR0b246ZGlzYWJsZWQgewogICAgICAgIGN1cnNvcjogZGVmYXVsdDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiNhYWEiLCIjNjY2Iil9OwogICAgICB9CiAgICAgIGJ1dHRvbi5jdXJyZW50IHsKICAgICAgICBiYWNrZ3JvdW5kOiAjMDA1MGI5OwogICAgICAgIGNvbG9yOiAjZmZmOwogICAgICAgIGN1cnNvcjogZGVmYXVsdDsKICAgICAgfQogICAgICBzcGFuLmVsbGlwc2lzIHsKICAgICAgICBtYXJnaW46IDAgNHB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzMzMyIsIiNjY2MiKX07CiAgICAgIH0KICAgIGBdO2dldCBwYWdlcygpe2xldCBwPVtdLGg9dGhpcy50b3RhbCxiPXRoaXMucGFnZTtpZihoPD03KWZvcihsZXQgeD0xO3g8PWg7eCsrKXAucHVzaCh4KTtlbHNle3AucHVzaCgxKSxiPjQmJnAucHVzaCgiLi4uIik7bGV0IHg9TWF0aC5tYXgoMixiLTIpLGc9TWF0aC5taW4oaC0xLGIrMik7Zm9yKGxldCB2PXg7djw9Zzt2KyspcC5wdXNoKHYpO2I8aC0zJiZwLnB1c2goIi4uLiIpLHAucHVzaChoKX1yZXR1cm4gcH1yZW5kZXIoKXtyZXR1cm4gU2AKICAgICAgPGJ1dHRvbgogICAgICAgIEBjbGljaz0keygpPT50aGlzLmNoYW5nZVBhZ2UodGhpcy5wYWdlLTEpfQogICAgICAgID9kaXNhYmxlZD0ke3RoaXMucGFnZTw9MX0KICAgICAgICBhcmlhLWxhYmVsPSJQcmV2aW91cyBwYWdlIgogICAgICA+CiAgICAgICAg4oC5CiAgICAgIDwvYnV0dG9uPgogICAgICAke3RoaXMucGFnZXMubWFwKHA9PnA9PT0iLi4uIj9TYDxzcGFuIGNsYXNzPSJlbGxpcHNpcyI+4oCmPC9zcGFuPmA6U2AKICAgICAgICAgICAgICA8YnV0dG9uCiAgICAgICAgICAgICAgICBjbGFzcz0iJHtwPT09dGhpcy5wYWdlPyJjdXJyZW50IjoiIn0iCiAgICAgICAgICAgICAgICBAY2xpY2s9JHsoKT0+dGhpcy5jaGFuZ2VQYWdlKHApfQogICAgICAgICAgICAgICAgP2Rpc2FibGVkPSR7cD09PXRoaXMucGFnZX0KICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9IlBhZ2UgJHtwfSIKICAgICAgICAgICAgICA+CiAgICAgICAgICAgICAgICAke3B9CiAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgIGApfQogICAgICA8YnV0dG9uCiAgICAgICAgQGNsaWNrPSR7KCk9PnRoaXMuY2hhbmdlUGFnZSh0aGlzLnBhZ2UrMSl9CiAgICAgICAgP2Rpc2FibGVkPSR7dGhpcy5wYWdlPj10aGlzLnRvdGFsfQogICAgICAgIGFyaWEtbGFiZWw9Ik5leHQgcGFnZSIKICAgICAgPgogICAgICAgIOKAugogICAgICA8L2J1dHRvbj4KICAgIGB9Y2hhbmdlUGFnZShwKXtwPDF8fHA+dGhpcy50b3RhbHx8cD09PXRoaXMucGFnZXx8KHRoaXMucGFnZT1wLHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoInBhZ2UtY2hhbmdlIix7ZGV0YWlsOntwYWdlOnRoaXMucGFnZX0sYnViYmxlczohMH0pKSl9Y29uc3RydWN0b3IoKXtzdXBlciguLi5hcmd1bWVudHMpLEhaKHRoaXMsZil9c3RhdGlje0haKGEscil9fTtyZXR1cm4gdT1hfSkoKX0pO3ZhciBnRnI9bCgoKT0+e21GcigpfSk7dmFyIHhGcj1sKCgpPT57dDEoKX0pO3ZhciBiRnIsdkZyPWwoKCk9PntTZSgpO2JGcj0oKT0+U2AKICA8ZGVlcy1zdGVwcGVyCiAgICAuc3RlcHM9JHtbe3RpdGxlOiJBY2NvdW50IFNldHVwIixjb250ZW50OlNgCiAgICAgICAgICA8ZGVlcy1mb3JtPgogICAgICAgICAgICA8ZGVlcy1pbnB1dC10ZXh0IGtleT0iZW1haWwiIGxhYmVsPSJXb3JrIEVtYWlsIiByZXF1aXJlZD48L2RlZXMtaW5wdXQtdGV4dD4KICAgICAgICAgICAgPGRlZXMtaW5wdXQtdGV4dCBrZXk9InBhc3N3b3JkIiBsYWJlbD0iQ3JlYXRlIFBhc3N3b3JkIiB0eXBlPSJwYXNzd29yZCIgcmVxdWlyZWQ+PC9kZWVzLWlucHV0LXRleHQ+CiAgICAgICAgICAgIDxkZWVzLWZvcm0tc3VibWl0PkNvbnRpbnVlPC9kZWVzLWZvcm0tc3VibWl0PgogICAgICAgICAgPC9kZWVzLWZvcm0+CiAgICAgICAgYCx2YWxpZGF0aW9uRnVuYzphc3luYyhlLHQpPT57dC5xdWVyeVNlbGVjdG9yKCJkZWVzLWZvcm0iKS5hZGRFdmVudExpc3RlbmVyKCJmb3JtRGF0YSIsKCk9PmUuZ29OZXh0KCkse29uY2U6ITB9KX19LHt0aXRsZToiUHJvZmlsZSBEZXRhaWxzIixjb250ZW50OlNgCiAgICAgICAgICA8ZGVlcy1mb3JtPgogICAgICAgICAgICA8ZGVlcy1pbnB1dC10ZXh0IGtleT0iZmlyc3ROYW1lIiBsYWJlbD0iRmlyc3QgTmFtZSIgcmVxdWlyZWQ+PC9kZWVzLWlucHV0LXRleHQ+CiAgICAgICAgICAgIDxkZWVzLWlucHV0LXRleHQga2V5PSJsYXN0TmFtZSIgbGFiZWw9Ikxhc3QgTmFtZSIgcmVxdWlyZWQ+PC9kZWVzLWlucHV0LXRleHQ+CiAgICAgICAgICAgIDxkZWVzLWZvcm0tc3VibWl0PkNvbnRpbnVlPC9kZWVzLWZvcm0tc3VibWl0PgogICAgICAgICAgPC9kZWVzLWZvcm0+CiAgICAgICAgYCx2YWxpZGF0aW9uRnVuYzphc3luYyhlLHQpPT57dC5xdWVyeVNlbGVjdG9yKCJkZWVzLWZvcm0iKS5hZGRFdmVudExpc3RlbmVyKCJmb3JtRGF0YSIsKCk9PmUuZ29OZXh0KCkse29uY2U6ITB9KX19LHt0aXRsZToiQ29udGFjdCBJbmZvcm1hdGlvbiIsY29udGVudDpTYAogICAgICAgICAgPGRlZXMtZm9ybT4KICAgICAgICAgICAgPGRlZXMtaW5wdXQtcGhvbmUga2V5PSJwaG9uZSIgbGFiZWw9Ik1vYmlsZSBOdW1iZXIiIHJlcXVpcmVkPjwvZGVlcy1pbnB1dC1waG9uZT4KICAgICAgICAgICAgPGRlZXMtaW5wdXQtdGV4dCBrZXk9ImNvbXBhbnkiIGxhYmVsPSJDb21wYW55Ij48L2RlZXMtaW5wdXQtdGV4dD4KICAgICAgICAgICAgPGRlZXMtZm9ybS1zdWJtaXQ+Q29udGludWU8L2RlZXMtZm9ybS1zdWJtaXQ+CiAgICAgICAgICA8L2RlZXMtZm9ybT4KICAgICAgICBgLHZhbGlkYXRpb25GdW5jOmFzeW5jKGUsdCk9Pnt0LnF1ZXJ5U2VsZWN0b3IoImRlZXMtZm9ybSIpLmFkZEV2ZW50TGlzdGVuZXIoImZvcm1EYXRhIiwoKT0+ZS5nb05leHQoKSx7b25jZTohMH0pfX0se3RpdGxlOiJUZWFtIFNpemUiLGNvbnRlbnQ6U2AKICAgICAgICAgIDxkZWVzLWZvcm0+CiAgICAgICAgICAgIDxkZWVzLWlucHV0LWRyb3Bkb3duCiAgICAgICAgICAgICAga2V5PSJ0ZWFtU2l6ZSIKICAgICAgICAgICAgICBsYWJlbD0iSG93IGJpZyBpcyB5b3VyIHRlYW0/IgogICAgICAgICAgICAgIC5vcHRpb25zPSR7W3tsYWJlbDoiMS01Iix2YWx1ZToiMS01In0se2xhYmVsOiI2LTIwIix2YWx1ZToiNi0yMCJ9LHtsYWJlbDoiMjEtNTAiLHZhbHVlOiIyMS01MCJ9LHtsYWJlbDoiNTErIix2YWx1ZToiNTErIn1dfQogICAgICAgICAgICAgIHJlcXVpcmVkCiAgICAgICAgICAgID48L2RlZXMtaW5wdXQtZHJvcGRvd24+CiAgICAgICAgICAgIDxkZWVzLWZvcm0tc3VibWl0PkNvbnRpbnVlPC9kZWVzLWZvcm0tc3VibWl0PgogICAgICAgICAgPC9kZWVzLWZvcm0+CiAgICAgICAgYCx2YWxpZGF0aW9uRnVuYzphc3luYyhlLHQpPT57dC5xdWVyeVNlbGVjdG9yKCJkZWVzLWZvcm0iKS5hZGRFdmVudExpc3RlbmVyKCJmb3JtRGF0YSIsKCk9PmUuZ29OZXh0KCkse29uY2U6ITB9KX19LHt0aXRsZToiR29hbHMiLGNvbnRlbnQ6U2AKICAgICAgICAgIDxkZWVzLWZvcm0+CiAgICAgICAgICAgIDxkZWVzLWlucHV0LW11bHRpdG9nZ2xlCiAgICAgICAgICAgICAga2V5PSJnb2FsIgogICAgICAgICAgICAgIGxhYmVsPSJNYWluIG9iamVjdGl2ZSIKICAgICAgICAgICAgICAub3B0aW9ucz0ke1t7bGFiZWw6Ik9uYm9hcmRpbmciLHZhbHVlOiJvbmJvYXJkaW5nIn0se2xhYmVsOiJBbmFseXRpY3MiLHZhbHVlOiJhbmFseXRpY3MifSx7bGFiZWw6IkF1dG9tYXRpb24iLHZhbHVlOiJhdXRvbWF0aW9uIn1dfQogICAgICAgICAgICAgIHJlcXVpcmVkCiAgICAgICAgICAgID48L2RlZXMtaW5wdXQtbXVsdGl0b2dnbGU+CiAgICAgICAgICAgIDxkZWVzLWZvcm0tc3VibWl0PkNvbnRpbnVlPC9kZWVzLWZvcm0tc3VibWl0PgogICAgICAgICAgPC9kZWVzLWZvcm0+CiAgICAgICAgYCx2YWxpZGF0aW9uRnVuYzphc3luYyhlLHQpPT57dC5xdWVyeVNlbGVjdG9yKCJkZWVzLWZvcm0iKS5hZGRFdmVudExpc3RlbmVyKCJmb3JtRGF0YSIsKCk9PmUuZ29OZXh0KCkse29uY2U6ITB9KX19LHt0aXRsZToiQnJhbmQgUHJlZmVyZW5jZXMiLGNvbnRlbnQ6U2AKICAgICAgICAgIDxkZWVzLWZvcm0+CiAgICAgICAgICAgIDxkZWVzLWlucHV0LXRleHQga2V5PSJicmFuZENvbG9yIiBsYWJlbD0iUHJpbWFyeSBicmFuZCBjb2xvciI+PC9kZWVzLWlucHV0LXRleHQ+CiAgICAgICAgICAgIDxkZWVzLWlucHV0LXRleHQga2V5PSJ0b25lIiBsYWJlbD0iUHJlZmVycmVkIHRvbmUgKGUuZy4gZnJpZW5kbHksIGZvcm1hbCkiPjwvZGVlcy1pbnB1dC10ZXh0PgogICAgICAgICAgICA8ZGVlcy1mb3JtLXN1Ym1pdD5Db250aW51ZTwvZGVlcy1mb3JtLXN1Ym1pdD4KICAgICAgICAgIDwvZGVlcy1mb3JtPgogICAgICAgIGAsdmFsaWRhdGlvbkZ1bmM6YXN5bmMoZSx0KT0+e3QucXVlcnlTZWxlY3RvcigiZGVlcy1mb3JtIikuYWRkRXZlbnRMaXN0ZW5lcigiZm9ybURhdGEiLCgpPT5lLmdvTmV4dCgpLHtvbmNlOiEwfSl9fSx7dGl0bGU6IkludGVncmF0aW9ucyIsY29udGVudDpTYAogICAgICAgICAgPGRlZXMtZm9ybT4KICAgICAgICAgICAgPGRlZXMtaW5wdXQtbGlzdAogICAgICAgICAgICAgIGtleT0iaW50ZWdyYXRpb25zIgogICAgICAgICAgICAgIGxhYmVsPSJJbnRlZ3JhdGlvbnMgaW4gdXNlIgogICAgICAgICAgICAgIHBsYWNlaG9sZGVyPSJBZGQgaW50ZWdyYXRpb24iCiAgICAgICAgICAgID48L2RlZXMtaW5wdXQtbGlzdD4KICAgICAgICAgICAgPGRlZXMtZm9ybS1zdWJtaXQ+Q29udGludWU8L2RlZXMtZm9ybS1zdWJtaXQ+CiAgICAgICAgICA8L2RlZXMtZm9ybT4KICAgICAgICBgLHZhbGlkYXRpb25GdW5jOmFzeW5jKGUsdCk9Pnt0LnF1ZXJ5U2VsZWN0b3IoImRlZXMtZm9ybSIpLmFkZEV2ZW50TGlzdGVuZXIoImZvcm1EYXRhIiwoKT0+ZS5nb05leHQoKSx7b25jZTohMH0pfX0se3RpdGxlOiJSZXZpZXcgJiBMYXVuY2giLGNvbnRlbnQ6U2AKICAgICAgICAgIDxkZWVzLXBhbmVsPgogICAgICAgICAgICA8cD5BbG1vc3QgdGhlcmUhIFJldmlldyB5b3VyIHNlbGVjdGlvbnMgYW5kIGxhdW5jaCB3aGVuZXZlciB5b3UncmUgcmVhZHkuPC9wPgogICAgICAgICAgPC9kZWVzLXBhbmVsPgogICAgICAgIGB9XX0KICA+PC9kZWVzLXN0ZXBwZXI+CmB9KTt2YXIgZTB0LHFaLHlGcix3RnI9bCgoKT0+e09pKCk7Vm4oKTtTZSgpO2VyKCk7dkZyKCk7b3QoKTtlMHQ9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxxWj1mdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MixpPTA7aTx0Lmxlbmd0aDtpKyspcj1hP3RbaV0uY2FsbChlLHIpOnRbaV0uY2FsbChlKTtyZXR1cm4gYT9yOnZvaWQgMH0seUZyPSgoKT0+e2xldCBlPVt6ZSgiZGVlcy1zdGVwcGVyIildLHQscj1bXSxhLGk9RGUsbyxuPVtdLHM9W10sYyxkPVtdLGY9W107dmFyIHU9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCBwPXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO289W2ooe3R5cGU6QXJyYXl9KV0sYz1baih7dHlwZTpPYmplY3R9KV0sZTB0KHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToic3RlcHMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmg9PiJzdGVwcyJpbiBoLGdldDpoPT5oLnN0ZXBzLHNldDooaCxiKT0+e2guc3RlcHM9Yn19LG1ldGFkYXRhOnB9LG4scyksZTB0KHRoaXMsbnVsbCxjLHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2VsZWN0ZWRTdGVwIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpoPT4ic2VsZWN0ZWRTdGVwImluIGgsZ2V0Omg9Pmguc2VsZWN0ZWRTdGVwLHNldDooaCxiKT0+e2guc2VsZWN0ZWRTdGVwPWJ9fSxtZXRhZGF0YTpwfSxkLGYpLGUwdChudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTpwfSxudWxsLHIpLHU9YT10LnZhbHVlLHAmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6cH0pfXN0YXRpYyBkZW1vPWJGcjtzdGF0aWMgZGVtb0dyb3Vwcz1bIkxheW91dCIsIkZvcm0iXTsjZT1xWih0aGlzLG4sW10pO2dldCBzdGVwcygpe3JldHVybiB0aGlzLiNlfXNldCBzdGVwcyhwKXt0aGlzLiNlPXB9I3Q9KHFaKHRoaXMscykscVoodGhpcyxkLHZvaWQgMCkpO2dldCBzZWxlY3RlZFN0ZXAoKXtyZXR1cm4gdGhpcy4jdH1zZXQgc2VsZWN0ZWRTdGVwKHApe3RoaXMuI3Q9cH1jb25zdHJ1Y3Rvcigpe3N1cGVyKCl9c3RhdGljIHN0eWxlcz1bUGUsbS5kZWZhdWx0U3R5bGVzLGxlYAogICAgICAvKiBUT0RPOiBNaWdyYXRlIGhhcmRjb2RlZCB2YWx1ZXMgdG8gLS1kZWVzLSogQ1NTIHZhcmlhYmxlcyAqLwogICAgICA6aG9zdCB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgfQogICAgICAuc3RlcHBlckNvbnRhaW5lciB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICB9CgogICAgICAuc3RlcCB7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuN3MgY3ViaWMtYmV6aWVyKDAuODcsIDAsIDAuMTMsIDEpLCBib3gtc2hhZG93IDAuN3MgY3ViaWMtYmV6aWVyKDAuODcsIDAsIDAuMTMsIDEpLCBmaWx0ZXIgMC43cyBjdWJpYy1iZXppZXIoMC44NywgMCwgMC4xMywgMSksIGJvcmRlciAwLjdzIGN1YmljLWJlemllcigwLjg3LCAwLCAwLjEzLCAxKTsKICAgICAgICBtYXgtd2lkdGg6IDUwMHB4OwogICAgICAgIG1pbi1oZWlnaHQ6IDMwMHB4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDEycHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmZmZmZmYiLCIjMGYwZjExIil9OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZTJlOGYwIiwiIzI3MjcyOSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwZjE3MmEiLCIjZjVmNWY1Iil9OwogICAgICAgIG1hcmdpbjogYXV0bzsKICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OwogICAgICAgIGZpbHRlcjogb3BhY2l0eSgwLjU1KSBzYXR1cmF0ZSgwLjg1KTsKICAgICAgICBib3gtc2hhZG93OiAwIDhweCAzMnB4IHJnYmEoMCwgMCwgMCwgMC40KTsKICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTsKICAgICAgfQoKICAgICAgLnN0ZXAuc2VsZWN0ZWQgewogICAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7CiAgICAgICAgZmlsdGVyOiBvcGFjaXR5KDEpIHNhdHVyYXRlKDEpOwogICAgICAgIHVzZXItc2VsZWN0OiBhdXRvOwogICAgICB9CgogICAgICAuc3RlcC5oaWRkZW5TdGVwIHsKICAgICAgICBmaWx0ZXI6IG9wYWNpdHkoMCk7CiAgICAgIH0KCiAgICAgIC5zdGVwLmVudHJhbmNlIHsKICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zNXMgZWFzZSwgYm94LXNoYWRvdyAwLjM1cyBlYXNlLCBmaWx0ZXIgMC4zNXMgZWFzZSwgYm9yZGVyIDAuMzVzIGVhc2U7CiAgICAgIH0KCiAgICAgIC5zdGVwLmVudHJhbmNlLmhpZGRlblN0ZXAgewogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxNnB4KTsKICAgICAgfQoKICAgICAgLnN0ZXA6bGFzdC1jaGlsZCB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTAwdmg7CiAgICAgIH0KCiAgICAgIC5zdGVwIC5zdGVwQ291bnRlciB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNjQ3NDhiIiwiI2ExYTFhYSIpfTsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgdG9wOiAxMnB4OwogICAgICAgIHJpZ2h0OiAxMnB4OwogICAgICAgIHBhZGRpbmc6IDZweCAxNHB4OwogICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA5OTlweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgicmdiYSgyMjYsIDIzMiwgMjQwLCAwLjUpIiwicmdiYSg2MywgNjMsIDcwLCAwLjQ1KSIpfTsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgicmdiYSgyMjYsIDIzMiwgMjQwLCAwLjcpIiwicmdiYSg2MywgNjMsIDcwLCAwLjYpIil9OwogICAgICB9CgogICAgICAuc3RlcCAuZ29CYWNrIHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgdG9wOiAxMnB4OwogICAgICAgIGxlZnQ6IDEycHg7CiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDZweDsKICAgICAgICBwYWRkaW5nOiA2cHggMTJweDsKICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICBib3JkZXItcmFkaXVzOiA5OTlweDsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgicmdiYSgyMjYsIDIzMiwgMjQwLCAwLjkpIiwicmdiYSg2MywgNjMsIDcwLCAwLjg1KSIpfTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgicmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpIiwicmdiYSgzOSwgMzksIDQyLCAwLjg1KSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM0NzU1NjkiLCIjZDRkNGQ4Iil9OwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICB0cmFuc2l0aW9uOiBib3JkZXIgMC4ycyBlYXNlLCBjb2xvciAwLjJzIGVhc2UsIGJhY2tncm91bmQgMC4ycyBlYXNlLCB0cmFuc2Zvcm0gMC4ycyBlYXNlOwogICAgICB9CgogICAgICAuc3RlcCAuZ29CYWNrOmhvdmVyIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwZjE3MmEiLCIjZmFmYWZhIil9OwogICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoam4uYmx1ZSxqbi5ibHVlKX07CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJnYmEoMjI2LCAyMzIsIDI0MCwgMC45NSkiLCJyZ2JhKDYzLCA2MywgNzAsIDAuNykiKX07CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0ycHgpOwogICAgICB9CgogICAgICAuc3RlcCAuZ29CYWNrOmFjdGl2ZSB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMGYxNzJhIiwiI2ZhZmFmYSIpfTsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKGpuLmJsdWVBY3RpdmUsam4uYmx1ZUFjdGl2ZSl9OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDIyNiwgMjMyLCAyNDAsIDAuODUpIiwicmdiYSg2MywgNjMsIDcwLCAwLjYpIil9OwogICAgICB9CgogICAgICAuc3RlcCAuZ29CYWNrIHNwYW4gewogICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2U7CiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgICB9CgogICAgICAuc3RlcCAuZ29CYWNrOmhvdmVyIHNwYW4gewogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KTsKICAgICAgfQoKICAgICAgLnN0ZXAgLnRpdGxlIHsKICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgcGFkZGluZy10b3A6IDY0cHg7CiAgICAgICAgZm9udC1mYW1pbHk6ICdHZWlzdCBTYW5zJywgc2Fucy1zZXJpZjsKICAgICAgICBmb250LXNpemU6IDI0cHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTsKICAgICAgICBjb2xvcjogaW5oZXJpdDsKICAgICAgfQoKICAgICAgLnN0ZXAgLmNvbnRlbnQgewogICAgICAgIHBhZGRpbmc6IDMycHg7CiAgICAgIH0KICAgIGBdO3JlbmRlcigpe3JldHVybiBTYAogICAgICA8ZGl2IGNsYXNzPSJzdGVwcGVyQ29udGFpbmVyIj4KICAgICAgICAke3RoaXMuc3RlcHMubWFwKHA9PlNgPGRpdgogICAgICAgICAgICAgIGNsYXNzPSJzdGVwICR7cD09PXRoaXMuc2VsZWN0ZWRTdGVwPyJzZWxlY3RlZCI6bnVsbH0gJHt0aGlzLmdldEluZGV4T2ZTdGVwKHApPnRoaXMuZ2V0SW5kZXhPZlN0ZXAodGhpcy5zZWxlY3RlZFN0ZXApPyJoaWRkZW5TdGVwIjoiIn0gJHt0aGlzLmdldEluZGV4T2ZTdGVwKHApPT09MD8iZW50cmFuY2UiOiIifSIKICAgICAgICAgICAgPgogICAgICAgICAgICAgICR7dGhpcy5nZXRJbmRleE9mU3RlcChwKT4wP1NgPGRpdiBjbGFzcz0iZ29CYWNrIiBAY2xpY2s9JHt0aGlzLmdvQmFja30+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiBJbnRlciI+PC08L3NwYW4+IGdvIHRvIHByZXZpb3VzIHN0ZXA8L2Rpdj5gOiIifQogICAgICAgICAgICAgIDxkaXYgY2xhc3M9InN0ZXBDb3VudGVyIj4KICAgICAgICAgICAgICAgIFN0ZXAgJHt0aGlzLnN0ZXBzLmZpbmRJbmRleChoPT5oPT09cCkrMX0gb2YKICAgICAgICAgICAgICAgICR7dGhpcy5zdGVwcy5sZW5ndGh9CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGl0bGUiPiR7cC50aXRsZX08L2Rpdj4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250ZW50Ij4ke3AuY29udGVudH08L2Rpdj4KICAgICAgICAgICAgPC9kaXY+IGApfQogICAgICA8L2Rpdj4KICAgIGB9Z2V0SW5kZXhPZlN0ZXA9KHFaKHRoaXMsZikscD0+dGhpcy5zdGVwcy5maW5kSW5kZXgoaD0+cD09PWgpKTthc3luYyBmaXJzdFVwZGF0ZWQoKXthd2FpdCB0aGlzLmRvbXRvb2xzUHJvbWlzZSxhd2FpdCB0aGlzLmRvbXRvb2xzLmNvbnZlbmllbmNlLnNtYXJ0ZGVsYXkuZGVsYXlGb3IoMCksdGhpcy5zZWxlY3RlZFN0ZXA9dGhpcy5zdGVwc1swXSx0aGlzLnNldFNjcm9sbFN0YXR1cygpLGF3YWl0IHRoaXMuZG9tdG9vbHMuY29udmVuaWVuY2Uuc21hcnRkZWxheS5kZWxheUZvcigzNTApLHRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCIuc3RlcC5lbnRyYW5jZSIpPy5jbGFzc0xpc3QucmVtb3ZlKCJlbnRyYW5jZSIpfWFzeW5jIHVwZGF0ZWQoKXt0aGlzLnNldFNjcm9sbFN0YXR1cygpfXNjcm9sbGVyO2FzeW5jIHNldFNjcm9sbFN0YXR1cygpe2xldCBwPXRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCIuc3RlcHBlckNvbnRhaW5lciIpLGg9dGhpcy5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoIi5zdGVwIiksYj10aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcigiLnNlbGVjdGVkIik7aWYoIWIpcmV0dXJuO3Auc3R5bGUucGFkZGluZ1RvcHx8KHAuc3R5bGUucGFkZGluZ1RvcD1gJHtwLm9mZnNldEhlaWdodC8yLWIub2Zmc2V0SGVpZ2h0LzJ9cHhgKSxjb25zb2xlLmxvZygiU2V0dGluZyBzY3JvbGwgc3RhdHVzIiksY29uc29sZS5sb2coYik7bGV0IHg9Yi5vZmZzZXRUb3AtcC5vZmZzZXRIZWlnaHQvMitiLm9mZnNldEhlaWdodC8yO2NvbnNvbGUubG9nKHgpO2xldCBnPWF3YWl0IFkxLnNldHVwRG9tVG9vbHMoKTt0aGlzLnNjcm9sbGVyfHwodGhpcy5zY3JvbGxlcj1uZXcgSnQuU3dlZXRTY3JvbGwoe3ZlcnRpY2FsOiEwLGhvcml6b250YWw6ITEsZWFzaW5nOiJlYXNlSW5PdXRFeHBvIixkdXJhdGlvbjo3MDB9LHApKSwhdGhpcy5zZWxlY3RlZFN0ZXAudmFsaWRhdGlvbkZ1bmNDYWxsZWQmJnRoaXMuc2VsZWN0ZWRTdGVwLnZhbGlkYXRpb25GdW5jJiYodGhpcy5zZWxlY3RlZFN0ZXAuYWJvcnRDb250cm9sbGVyPW5ldyBBYm9ydENvbnRyb2xsZXIsdGhpcy5zZWxlY3RlZFN0ZXAudmFsaWRhdGlvbkZ1bmNDYWxsZWQ9ITAsYXdhaXQgdGhpcy5zZWxlY3RlZFN0ZXAudmFsaWRhdGlvbkZ1bmModGhpcyxiLHRoaXMuc2VsZWN0ZWRTdGVwLmFib3J0Q29udHJvbGxlci5zaWduYWwpKSx0aGlzLnNjcm9sbGVyLnRvKHgpfWFzeW5jIGdvQmFjaygpe2xldCBwPXRoaXMuc3RlcHMuZmluZEluZGV4KHg9Png9PT10aGlzLnNlbGVjdGVkU3RlcCk7aWYocDw9MClyZXR1cm47dGhpcy5zZWxlY3RlZFN0ZXAuYWJvcnRDb250cm9sbGVyJiZ0aGlzLnNlbGVjdGVkU3RlcC5hYm9ydENvbnRyb2xsZXIuYWJvcnQoKTtsZXQgaD10aGlzLnN0ZXBzW3BdO2gudmFsaWRhdGlvbkZ1bmNDYWxsZWQ9ITE7bGV0IGI9dGhpcy5zdGVwc1twLTFdO2IudmFsaWRhdGlvbkZ1bmNDYWxsZWQ9ITEsdGhpcy5zZWxlY3RlZFN0ZXA9Yixhd2FpdCB0aGlzLmRvbXRvb2xzUHJvbWlzZSxhd2FpdCB0aGlzLmRvbXRvb2xzLmNvbnZlbmllbmNlLnNtYXJ0ZGVsYXkuZGVsYXlGb3IoMTAwKSx0aGlzLnNlbGVjdGVkU3RlcC5vblJldHVyblRvU3RlcEZ1bmM/Lih0aGlzLHRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCIuc2VsZWN0ZWQiKSl9Z29OZXh0KCl7bGV0IHA9dGhpcy5zdGVwcy5maW5kSW5kZXgoeD0+eD09PXRoaXMuc2VsZWN0ZWRTdGVwKTtpZihwPDB8fHA+PXRoaXMuc3RlcHMubGVuZ3RoLTEpcmV0dXJuO3RoaXMuc2VsZWN0ZWRTdGVwLmFib3J0Q29udHJvbGxlciYmdGhpcy5zZWxlY3RlZFN0ZXAuYWJvcnRDb250cm9sbGVyLmFib3J0KCk7bGV0IGg9dGhpcy5zdGVwc1twXTtoLnZhbGlkYXRpb25GdW5jQ2FsbGVkPSExO2xldCBiPXRoaXMuc3RlcHNbcCsxXTtiLnZhbGlkYXRpb25GdW5jQ2FsbGVkPSExLHRoaXMuc2VsZWN0ZWRTdGVwPWJ9c3RhdGlje3FaKGEscil9fTtyZXR1cm4gdT1hfSkoKX0pO3ZhciBNRnI9bCgoKT0+e3dGcigpfSk7dmFyIGtGcj1sKCgpPT57Uk5yKCk7aUZyKCk7ZEZyKCk7dUZyKCk7Z0ZyKCk7eEZyKCk7TUZyKCl9KTt2YXIgU0ZyLHpGcj1sKCgpPT57U2UoKTtTRnI9KCk9PlNgCiAgPHN0eWxlPgogICAgLmRlbW8tY29udGFpbmVyIHsKICAgICAgcGFkZGluZzogNDhweDsKICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmOGY5ZmEiLCIjMGEwYTBhIil9OwogICAgICBkaXNwbGF5OiBmbGV4OwogICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICBnYXA6IDMycHg7CiAgICB9CgogICAgLnNlY3Rpb24gewogICAgICBtYXgtd2lkdGg6IDkwMHB4OwogICAgICB3aWR0aDogMTAwJTsKICAgICAgbWFyZ2luOiAwIGF1dG87CiAgICB9CgogICAgLnNlY3Rpb24tdGl0bGUgewogICAgICBmb250LXNpemU6IDE4cHg7CiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgIG1hcmdpbi1ib3R0b206IDhweDsKICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMDkwOTBiIiwiI2ZhZmFmYSIpfTsKICAgIH0KCiAgICAuc2VjdGlvbi1kZXNjcmlwdGlvbiB7CiAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiI2ExYTFhYSIpfTsKICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDsKICAgIH0KCiAgICBkZWVzLWltYWdlLXZpZXdlciB7CiAgICAgIGhlaWdodDogNDAwcHg7CiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZTVlN2ViIiwiIzI3MjcyYSIpfTsKICAgICAgYm9yZGVyLXJhZGl1czogOHB4OwogICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgfQoKICAgIC5jb21wYWN0IHsKICAgICAgaGVpZ2h0OiAyNTBweDsKICAgIH0KICA8L3N0eWxlPgoKICA8ZGl2IGNsYXNzPSJkZW1vLWNvbnRhaW5lciI+CiAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uIj4KICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi10aXRsZSI+SlBFRyBJbWFnZSB3aXRoIFRvb2xiYXI8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi1kZXNjcmlwdGlvbiI+QSBsYW5kc2NhcGUgcGhvdG8gd2l0aCB6b29tLCBwYW4sIGZpdCwgYW5kIGRvd25sb2FkIGNvbnRyb2xzLjwvZGl2PgogICAgICA8ZGVlcy1pbWFnZS12aWV3ZXIKICAgICAgICBzcmM9Imh0dHBzOi8vaW1hZ2VzLnVuc3BsYXNoLmNvbS9waG90by0xNTA2NzQ0MDM4MTM2LTQ2MjczODM0YjNmYj93PTEyMDAiCiAgICAgICAgYWx0PSJNb3VudGFpbiBsYW5kc2NhcGUiCiAgICAgID48L2RlZXMtaW1hZ2Utdmlld2VyPgogICAgPC9kaXY+CgogICAgPGRpdiBjbGFzcz0ic2VjdGlvbiI+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tdGl0bGUiPlBORyB3aXRoIFRyYW5zcGFyZW5jeTwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uLWRlc2NyaXB0aW9uIj5UcmFuc3BhcmVudCBQTkcgZGlzcGxheWVkIG9uIGEgY2hlY2tlcmJvYXJkIGJhY2tncm91bmQuPC9kaXY+CiAgICAgIDxkZWVzLWltYWdlLXZpZXdlcgogICAgICAgIHNyYz0iaHR0cHM6Ly91cGxvYWQud2lraW1lZGlhLm9yZy93aWtpcGVkaWEvY29tbW9ucy80LzQ3L1BOR190cmFuc3BhcmVuY3lfZGVtb25zdHJhdGlvbl8xLnBuZyIKICAgICAgICBhbHQ9IlBORyB0cmFuc3BhcmVuY3kgZGVtbyIKICAgICAgPjwvZGVlcy1pbWFnZS12aWV3ZXI+CiAgICA8L2Rpdj4KCiAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uIj4KICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi10aXRsZSI+U1ZHIEltYWdlPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tZGVzY3JpcHRpb24iPlNjYWxhYmxlIHZlY3RvciBncmFwaGljLjwvZGl2PgogICAgICA8ZGVlcy1pbWFnZS12aWV3ZXIKICAgICAgICBzcmM9Imh0dHBzOi8vdXBsb2FkLndpa2ltZWRpYS5vcmcvd2lraXBlZGlhL2NvbW1vbnMvMC8wMi9TVkdfbG9nby5zdmciCiAgICAgICAgYWx0PSJTVkcgbG9nbyIKICAgICAgICBmaXQ9ImNvbnRhaW4iCiAgICAgID48L2RlZXMtaW1hZ2Utdmlld2VyPgogICAgPC9kaXY+CgogICAgPGRpdiBjbGFzcz0ic2VjdGlvbiI+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tdGl0bGUiPk5vIFRvb2xiYXIgVmFyaWFudDwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uLWRlc2NyaXB0aW9uIj5JbWFnZSB2aWV3ZXIgd2l0aCB0aGUgdG9vbGJhciBoaWRkZW4uPC9kaXY+CiAgICAgIDxkZWVzLWltYWdlLXZpZXdlcgogICAgICAgIGNsYXNzPSJjb21wYWN0IgogICAgICAgIHNyYz0iaHR0cHM6Ly9pbWFnZXMudW5zcGxhc2guY29tL3Bob3RvLTE0Njk0NzQ5NjgwMjgtNTY2MjNmMDJlNDJlP3c9ODAwIgogICAgICAgIGFsdD0iTmF0dXJlIHNjZW5lIgogICAgICAgIC5zaG93VG9vbGJhcj0keyExfQogICAgICA+PC9kZWVzLWltYWdlLXZpZXdlcj4KICAgIDwvZGl2PgogIDwvZGl2PgpgfSk7dmFyIHVuLFRhLENGcix0MHQ9bCgoKT0+e1NlKCk7YnIoKTt6RnIoKTt1bj1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LFRhPWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSxDRnI9KCgpPT57bGV0IGU9W3plKCJkZWVzLWltYWdlLXZpZXdlciIpXSx0LHI9W10sYSxpPURlLG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdLHUscD1bXSxoPVtdLGIseD1bXSxnPVtdLHYsdz1bXSxNPVtdLEYsQz1bXSxrPVtdLE4sJD1bXSxJPVtdLEIsej1bXSx5PVtdLEUsXz1bXSxQPVtdLFYsSD1bXSxXPVtdLGFlLFQ9W10sSj1bXSxmZSxMPVtdLFE9W107dmFyIGtlPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgRz10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKCldLGM9W2ooKV0sdT1baigpXSxiPVtqKHt0eXBlOkJvb2xlYW59KV0sdj1bcmUoKV0sRj1bcmUoKV0sTj1bcmUoKV0sQj1bcmUoKV0sRT1bcmUoKV0sVj1bcmUoKV0sYWU9W3JlKCldLGZlPVtyZSgpXSx1bih0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNyYyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6QT0+InNyYyJpbiBBLGdldDpBPT5BLnNyYyxzZXQ6KEEsRCk9PntBLnNyYz1EfX0sbWV0YWRhdGE6R30sbixzKSx1bih0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImFsdCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6QT0+ImFsdCJpbiBBLGdldDpBPT5BLmFsdCxzZXQ6KEEsRCk9PntBLmFsdD1EfX0sbWV0YWRhdGE6R30sZCxmKSx1bih0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImZpdCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6QT0+ImZpdCJpbiBBLGdldDpBPT5BLmZpdCxzZXQ6KEEsRCk9PntBLmZpdD1EfX0sbWV0YWRhdGE6R30scCxoKSx1bih0aGlzLG51bGwsYix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNob3dUb29sYmFyIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpBPT4ic2hvd1Rvb2xiYXIiaW4gQSxnZXQ6QT0+QS5zaG93VG9vbGJhcixzZXQ6KEEsRCk9PntBLnNob3dUb29sYmFyPUR9fSxtZXRhZGF0YTpHfSx4LGcpLHVuKHRoaXMsbnVsbCx2LHtraW5kOiJhY2Nlc3NvciIsbmFtZToiem9vbSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6QT0+Inpvb20iaW4gQSxnZXQ6QT0+QS56b29tLHNldDooQSxEKT0+e0Euem9vbT1EfX0sbWV0YWRhdGE6R30sdyxNKSx1bih0aGlzLG51bGwsRix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InBhblgiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOkE9PiJwYW5YImluIEEsZ2V0OkE9PkEucGFuWCxzZXQ6KEEsRCk9PntBLnBhblg9RH19LG1ldGFkYXRhOkd9LEMsayksdW4odGhpcyxudWxsLE4se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJwYW5ZIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpBPT4icGFuWSJpbiBBLGdldDpBPT5BLnBhblksc2V0OihBLEQpPT57QS5wYW5ZPUR9fSxtZXRhZGF0YTpHfSwkLEkpLHVuKHRoaXMsbnVsbCxCLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiaXNEcmFnZ2luZyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6QT0+ImlzRHJhZ2dpbmciaW4gQSxnZXQ6QT0+QS5pc0RyYWdnaW5nLHNldDooQSxEKT0+e0EuaXNEcmFnZ2luZz1EfX0sbWV0YWRhdGE6R30seix5KSx1bih0aGlzLG51bGwsRSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImxvYWRpbmciLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOkE9PiJsb2FkaW5nImluIEEsZ2V0OkE9PkEubG9hZGluZyxzZXQ6KEEsRCk9PntBLmxvYWRpbmc9RH19LG1ldGFkYXRhOkd9LF8sUCksdW4odGhpcyxudWxsLFYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJlcnJvciIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6QT0+ImVycm9yImluIEEsZ2V0OkE9PkEuZXJyb3Isc2V0OihBLEQpPT57QS5lcnJvcj1EfX0sbWV0YWRhdGE6R30sSCxXKSx1bih0aGlzLG51bGwsYWUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJpbWFnZU5hdHVyYWxXaWR0aCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6QT0+ImltYWdlTmF0dXJhbFdpZHRoImluIEEsZ2V0OkE9PkEuaW1hZ2VOYXR1cmFsV2lkdGgsc2V0OihBLEQpPT57QS5pbWFnZU5hdHVyYWxXaWR0aD1EfX0sbWV0YWRhdGE6R30sVCxKKSx1bih0aGlzLG51bGwsZmUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJpbWFnZU5hdHVyYWxIZWlnaHQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOkE9PiJpbWFnZU5hdHVyYWxIZWlnaHQiaW4gQSxnZXQ6QT0+QS5pbWFnZU5hdHVyYWxIZWlnaHQsc2V0OihBLEQpPT57QS5pbWFnZU5hdHVyYWxIZWlnaHQ9RH19LG1ldGFkYXRhOkd9LEwsUSksdW4obnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6R30sbnVsbCxyKSxrZT1hPXQudmFsdWUsRyYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpHfSl9c3RhdGljIGRlbW89U0ZyO3N0YXRpYyBkZW1vR3JvdXBzPVsiTWVkaWEiXTsjZT1UYSh0aGlzLG4sIiIpO2dldCBzcmMoKXtyZXR1cm4gdGhpcy4jZX1zZXQgc3JjKEcpe3RoaXMuI2U9R30jdD0oVGEodGhpcyxzKSxUYSh0aGlzLGQsIiIpKTtnZXQgYWx0KCl7cmV0dXJuIHRoaXMuI3R9c2V0IGFsdChHKXt0aGlzLiN0PUd9I3I9KFRhKHRoaXMsZiksVGEodGhpcyxwLCJjb250YWluIikpO2dldCBmaXQoKXtyZXR1cm4gdGhpcy4jcn1zZXQgZml0KEcpe3RoaXMuI3I9R30jYT0oVGEodGhpcyxoKSxUYSh0aGlzLHgsITApKTtnZXQgc2hvd1Rvb2xiYXIoKXtyZXR1cm4gdGhpcy4jYX1zZXQgc2hvd1Rvb2xiYXIoRyl7dGhpcy4jYT1HfSNpPShUYSh0aGlzLGcpLFRhKHRoaXMsdywxKSk7Z2V0IHpvb20oKXtyZXR1cm4gdGhpcy4jaX1zZXQgem9vbShHKXt0aGlzLiNpPUd9I289KFRhKHRoaXMsTSksVGEodGhpcyxDLDApKTtnZXQgcGFuWCgpe3JldHVybiB0aGlzLiNvfXNldCBwYW5YKEcpe3RoaXMuI289R30jbj0oVGEodGhpcyxrKSxUYSh0aGlzLCQsMCkpO2dldCBwYW5ZKCl7cmV0dXJuIHRoaXMuI259c2V0IHBhblkoRyl7dGhpcy4jbj1HfSNzPShUYSh0aGlzLEkpLFRhKHRoaXMseiwhMSkpO2dldCBpc0RyYWdnaW5nKCl7cmV0dXJuIHRoaXMuI3N9c2V0IGlzRHJhZ2dpbmcoRyl7dGhpcy4jcz1HfSNsPShUYSh0aGlzLHkpLFRhKHRoaXMsXywhMCkpO2dldCBsb2FkaW5nKCl7cmV0dXJuIHRoaXMuI2x9c2V0IGxvYWRpbmcoRyl7dGhpcy4jbD1HfSNjPShUYSh0aGlzLFApLFRhKHRoaXMsSCwiIikpO2dldCBlcnJvcigpe3JldHVybiB0aGlzLiNjfXNldCBlcnJvcihHKXt0aGlzLiNjPUd9I2Q9KFRhKHRoaXMsVyksVGEodGhpcyxULDApKTtnZXQgaW1hZ2VOYXR1cmFsV2lkdGgoKXtyZXR1cm4gdGhpcy4jZH1zZXQgaW1hZ2VOYXR1cmFsV2lkdGgoRyl7dGhpcy4jZD1HfSN1PShUYSh0aGlzLEopLFRhKHRoaXMsTCwwKSk7Z2V0IGltYWdlTmF0dXJhbEhlaWdodCgpe3JldHVybiB0aGlzLiN1fXNldCBpbWFnZU5hdHVyYWxIZWlnaHQoRyl7dGhpcy4jdT1HfWRyYWdTdGFydFg9KFRhKHRoaXMsUSksMCk7ZHJhZ1N0YXJ0WT0wO2RyYWdTdGFydFBhblg9MDtkcmFnU3RhcnRQYW5ZPTA7cmVuZGVyKCl7cmV0dXJuIFNgCiAgICAgIDxzdHlsZT4KICAgICAgICA6aG9zdCB7CiAgICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsICdTZWdvZSBVSScsIFJvYm90bywgc2Fucy1zZXJpZjsKICAgICAgICB9CgogICAgICAgIC52aWV3ZXItY29udGFpbmVyIHsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk3JSkiLCJoc2woMjE1IDIwJSAxMCUpIil9OwogICAgICAgIH0KCiAgICAgICAgLnRvb2xiYXIgewogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICAgIGdhcDogMTZweDsKICAgICAgICAgIHBhZGRpbmc6IDAgMTZweDsKICAgICAgICAgIGhlaWdodDogNDhweDsKICAgICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZmZmZmZmIiwiaHNsKDIxNSAyMCUgMTUlKSIpfTsKICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2U1ZTdlYiIsImhzbCgyMTcgMjUlIDIyJSkiKX07CiAgICAgICAgICBmbGV4LXNocmluazogMDsKICAgICAgICB9CgogICAgICAgIC50b29sYmFyLWdyb3VwIHsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgICAgZ2FwOiA0cHg7CiAgICAgICAgfQoKICAgICAgICAudG9vbGJhci1idXR0b24gewogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICAgIHdpZHRoOiAzMnB4OwogICAgICAgICAgaGVpZ2h0OiAzMnB4OwogICAgICAgICAgYm9yZGVyOiBub25lOwogICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUgMTYlIDQ1JSkiLCJoc2woMjE1IDE2JSA3NSUpIil9OwogICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgICAgfQoKICAgICAgICAudG9vbGJhci1idXR0b24gZGVlcy1pY29uIHsKICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsKICAgICAgICB9CgogICAgICAgIC50b29sYmFyLWJ1dHRvbjpob3ZlciB7CiAgICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDIxNCAzMSUgOTIlKSIsImhzbCgyMTcgMjUlIDIyJSkiKX07CiAgICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwOTA5MGIiLCIjZmFmYWZhIil9OwogICAgICAgIH0KCiAgICAgICAgLnRvb2xiYXItYnV0dG9uOmFjdGl2ZSB7CiAgICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiMzZjNmNDYiKX07CiAgICAgICAgfQoKICAgICAgICAuem9vbS1sZXZlbCB7CiAgICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgICAgbWluLXdpZHRoOiA0OHB4OwogICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE1IDE2JSA0NSUpIiwiaHNsKDIxNSAxNiUgNzUlKSIpfTsKICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICB9CgogICAgICAgIC5pbWFnZS1hcmVhIHsKICAgICAgICAgIGZsZXg6IDE7CiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgICAgY3Vyc29yOiAke3RoaXMuem9vbT4xP3RoaXMuaXNEcmFnZ2luZz8iZ3JhYmJpbmciOiJncmFiIjoiZGVmYXVsdCJ9OwogICAgICAgIH0KCiAgICAgICAgLmNoZWNrZXJib2FyZCB7CiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgICBpbnNldDogMDsKICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6CiAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCg0NWRlZywgJHttLmJkVGhlbWUoIiNmMGYwZjAiLCIjMWExYTFhIil9IDI1JSwgdHJhbnNwYXJlbnQgMjUlKSwKICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KC00NWRlZywgJHttLmJkVGhlbWUoIiNmMGYwZjAiLCIjMWExYTFhIil9IDI1JSwgdHJhbnNwYXJlbnQgMjUlKSwKICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCB0cmFuc3BhcmVudCA3NSUsICR7bS5iZFRoZW1lKCIjZjBmMGYwIiwiIzFhMWExYSIpfSA3NSUpLAogICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoLTQ1ZGVnLCB0cmFuc3BhcmVudCA3NSUsICR7bS5iZFRoZW1lKCIjZjBmMGYwIiwiIzFhMWExYSIpfSA3NSUpOwogICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxNnB4IDE2cHg7CiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDAsIDAgOHB4LCA4cHggLThweCwgLThweCAwcHg7CiAgICAgICAgICBvcGFjaXR5OiAwLjM7CiAgICAgICAgfQoKICAgICAgICAuaW1hZ2Utd3JhcHBlciB7CiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgICBpbnNldDogMDsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgke3RoaXMucGFuWH1weCwgJHt0aGlzLnBhbll9cHgpIHNjYWxlKCR7dGhpcy56b29tfSk7CiAgICAgICAgICB0cmFuc2l0aW9uOiAke3RoaXMuaXNEcmFnZ2luZz8ibm9uZSI6InRyYW5zZm9ybSAwLjJzIGVhc2UifTsKICAgICAgICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07CiAgICAgICAgfQoKICAgICAgICAuaW1hZ2Utd3JhcHBlciBpbWcgewogICAgICAgICAgbWF4LXdpZHRoOiAxMDAlOwogICAgICAgICAgbWF4LWhlaWdodDogMTAwJTsKICAgICAgICAgIG9iamVjdC1maXQ6ICR7dGhpcy5maXR9OwogICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgICAgICAtd2Via2l0LXVzZXItZHJhZzogbm9uZTsKICAgICAgICB9CgogICAgICAgIC5pbWFnZS13cmFwcGVyIGltZy5hY3R1YWwgewogICAgICAgICAgbWF4LXdpZHRoOiBub25lOwogICAgICAgICAgbWF4LWhlaWdodDogbm9uZTsKICAgICAgICAgIG9iamVjdC1maXQ6IG5vbmU7CiAgICAgICAgfQoKICAgICAgICAubG9hZGluZy1vdmVybGF5IHsKICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICAgIGluc2V0OiAwOwogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDI1NSwyNTUsMjU1LDAuOCkiLCJyZ2JhKDAsMCwwLDAuNikiKX07CiAgICAgICAgfQoKICAgICAgICAubG9hZGluZy1zcGlubmVyIHsKICAgICAgICAgIHdpZHRoOiAzMnB4OwogICAgICAgICAgaGVpZ2h0OiAzMnB4OwogICAgICAgICAgYm9yZGVyOiAzcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjM2YzZjQ2Iil9OwogICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHttLmJkVGhlbWUoIiMzYjgyZjYiLCIjNjBhNWZhIil9OwogICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgICAgICAgYW5pbWF0aW9uOiBzcGluIDAuOHMgbGluZWFyIGluZmluaXRlOwogICAgICAgIH0KCiAgICAgICAgQGtleWZyYW1lcyBzcGluIHsKICAgICAgICAgIHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfQogICAgICAgIH0KCiAgICAgICAgLmVycm9yLW92ZXJsYXkgewogICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgICAgaW5zZXQ6IDA7CiAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICAgIGdhcDogOHB4OwogICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiI2ExYTFhYSIpfTsKICAgICAgICB9CgogICAgICAgIC5lcnJvci1vdmVybGF5IC5lcnJvci1pY29uIHsKICAgICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiI2RjMjYyNiIsIiNmODcxNzEiKX07CiAgICAgICAgICBmb250LXNpemU6IDMycHg7CiAgICAgICAgfQoKICAgICAgICAuZXJyb3ItdGV4dCB7CiAgICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgfQoKICAgICAgICAuaW1hZ2UtaW5mbyB7CiAgICAgICAgICBmb250LXNpemU6IDExcHg7CiAgICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiNhMWExYWEiLCIjNzE3MTdhIil9OwogICAgICAgICAgcGFkZGluZzogMCA0cHg7CiAgICAgICAgfQogICAgICA8L3N0eWxlPgoKICAgICAgPGRpdiBjbGFzcz0idmlld2VyLWNvbnRhaW5lciI+CiAgICAgICAgJHt0aGlzLnNob3dUb29sYmFyP1NgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJ0b29sYmFyIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idG9vbGJhci1ncm91cCI+CiAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0idG9vbGJhci1idXR0b24iIEBjbGljaz0ke3RoaXMuem9vbU91dH0gdGl0bGU9Ilpvb20gb3V0Ij4KICAgICAgICAgICAgICAgIDxkZWVzLWljb24gaWNvbj0ibHVjaWRlOlpvb21PdXQiPjwvZGVlcy1pY29uPgogICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9InRvb2xiYXItYnV0dG9uIiBAY2xpY2s9JHt0aGlzLnJlc2V0Wm9vbX0+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iem9vbS1sZXZlbCI+JHtNYXRoLnJvdW5kKHRoaXMuem9vbSoxMDApfSU8L3NwYW4+CiAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0idG9vbGJhci1idXR0b24iIEBjbGljaz0ke3RoaXMuem9vbUlufSB0aXRsZT0iWm9vbSBpbiI+CiAgICAgICAgICAgICAgICA8ZGVlcy1pY29uIGljb249Imx1Y2lkZTpab29tSW4iPjwvZGVlcy1pY29uPgogICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idG9vbGJhci1ncm91cCI+CiAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0idG9vbGJhci1idXR0b24iIEBjbGljaz0ke3RoaXMuZml0VG9TY3JlZW59IHRpdGxlPSJGaXQgdG8gc2NyZWVuIj4KICAgICAgICAgICAgICAgIDxkZWVzLWljb24gaWNvbj0ibHVjaWRlOk1heGltaXplIj48L2RlZXMtaWNvbj4KICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJ0b29sYmFyLWJ1dHRvbiIgQGNsaWNrPSR7dGhpcy5hY3R1YWxTaXplfSB0aXRsZT0iQWN0dWFsIHNpemUgKDEwMCUpIj4KICAgICAgICAgICAgICAgIDxkZWVzLWljb24gaWNvbj0ibHVjaWRlOlNjYW4iPjwvZGVlcy1pY29uPgogICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idG9vbGJhci1ncm91cCI+CiAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0idG9vbGJhci1idXR0b24iIEBjbGljaz0ke3RoaXMuZG93bmxvYWR9IHRpdGxlPSJEb3dubG9hZCI+CiAgICAgICAgICAgICAgICA8ZGVlcy1pY29uIGljb249Imx1Y2lkZTpEb3dubG9hZCI+PC9kZWVzLWljb24+CiAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAke3RoaXMuaW1hZ2VOYXR1cmFsV2lkdGg+MD9TYAogICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRvb2xiYXItZ3JvdXAiPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImltYWdlLWluZm8iPiR7dGhpcy5pbWFnZU5hdHVyYWxXaWR0aH0geCAke3RoaXMuaW1hZ2VOYXR1cmFsSGVpZ2h0fTwvc3Bhbj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgYDoiIn0KICAgICAgICAgIDwvZGl2PgogICAgICAgIGA6IiJ9CgogICAgICAgIDxkaXYKICAgICAgICAgIGNsYXNzPSJpbWFnZS1hcmVhIgogICAgICAgICAgQHdoZWVsPSR7dGhpcy5oYW5kbGVXaGVlbH0KICAgICAgICAgIEBtb3VzZWRvd249JHt0aGlzLmhhbmRsZU1vdXNlRG93bn0KICAgICAgICAgIEBtb3VzZW1vdmU9JHt0aGlzLmhhbmRsZU1vdXNlTW92ZX0KICAgICAgICAgIEBtb3VzZXVwPSR7dGhpcy5oYW5kbGVNb3VzZVVwfQogICAgICAgICAgQG1vdXNlbGVhdmU9JHt0aGlzLmhhbmRsZU1vdXNlVXB9CiAgICAgICAgICBAZGJsY2xpY2s9JHt0aGlzLmhhbmRsZURvdWJsZUNsaWNrfQogICAgICAgID4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNoZWNrZXJib2FyZCI+PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJpbWFnZS13cmFwcGVyIj4KICAgICAgICAgICAgJHt0aGlzLnNyYz9TYAogICAgICAgICAgICAgIDxpbWcKICAgICAgICAgICAgICAgIGNsYXNzPSIke3RoaXMuZml0PT09ImFjdHVhbCI/ImFjdHVhbCI6IiJ9IgogICAgICAgICAgICAgICAgc3JjPSIke3RoaXMuc3JjfSIKICAgICAgICAgICAgICAgIGFsdD0iJHt0aGlzLmFsdH0iCiAgICAgICAgICAgICAgICBAbG9hZD0ke3RoaXMuaGFuZGxlSW1hZ2VMb2FkfQogICAgICAgICAgICAgICAgQGVycm9yPSR7dGhpcy5oYW5kbGVJbWFnZUVycm9yfQogICAgICAgICAgICAgICAgZHJhZ2dhYmxlPSJmYWxzZSIKICAgICAgICAgICAgICAvPgogICAgICAgICAgICBgOiIifQogICAgICAgICAgPC9kaXY+CiAgICAgICAgICAke3RoaXMubG9hZGluZyYmdGhpcy5zcmM/U2AKICAgICAgICAgICAgPGRpdiBjbGFzcz0ibG9hZGluZy1vdmVybGF5Ij4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsb2FkaW5nLXNwaW5uZXIiPjwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIGA6IiJ9CiAgICAgICAgICAke3RoaXMuZXJyb3I/U2AKICAgICAgICAgICAgPGRpdiBjbGFzcz0iZXJyb3Itb3ZlcmxheSI+CiAgICAgICAgICAgICAgPGRlZXMtaWNvbiBjbGFzcz0iZXJyb3ItaWNvbiIgaWNvbj0ibHVjaWRlOkltYWdlT2ZmIj48L2RlZXMtaWNvbj4KICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iZXJyb3ItdGV4dCI+JHt0aGlzLmVycm9yfTwvc3Bhbj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICBgOiIifQogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIGB9em9vbUluKCl7dGhpcy56b29tPU1hdGgubWluKDEwLHRoaXMuem9vbSoxLjI1KX16b29tT3V0KCl7dGhpcy56b29tPU1hdGgubWF4KC4xLHRoaXMuem9vbS8xLjI1KSx0aGlzLnpvb208PTEmJih0aGlzLnBhblg9MCx0aGlzLnBhblk9MCl9cmVzZXRab29tKCl7dGhpcy56b29tPTEsdGhpcy5wYW5YPTAsdGhpcy5wYW5ZPTB9Zml0VG9TY3JlZW4oKXt0aGlzLnpvb209MSx0aGlzLnBhblg9MCx0aGlzLnBhblk9MCx0aGlzLmZpdD0iY29udGFpbiJ9YWN0dWFsU2l6ZSgpe3RoaXMuem9vbT0xLHRoaXMucGFuWD0wLHRoaXMucGFuWT0wLHRoaXMuZml0PSJhY3R1YWwifWRvd25sb2FkKCl7aWYoIXRoaXMuc3JjKXJldHVybjtsZXQgRz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJhIik7Ry5ocmVmPXRoaXMuc3JjLEcuZG93bmxvYWQ9dGhpcy5zcmMuc3BsaXQoIi8iKS5wb3AoKXx8ImltYWdlIixHLmNsaWNrKCl9aGFuZGxlSW1hZ2VMb2FkKEcpe2xldCBBPUcudGFyZ2V0O3RoaXMubG9hZGluZz0hMSx0aGlzLmVycm9yPSIiLHRoaXMuaW1hZ2VOYXR1cmFsV2lkdGg9QS5uYXR1cmFsV2lkdGgsdGhpcy5pbWFnZU5hdHVyYWxIZWlnaHQ9QS5uYXR1cmFsSGVpZ2h0fWhhbmRsZUltYWdlRXJyb3IoKXt0aGlzLmxvYWRpbmc9ITEsdGhpcy5lcnJvcj0iRmFpbGVkIHRvIGxvYWQgaW1hZ2UifWhhbmRsZVdoZWVsKEcpe0cucHJldmVudERlZmF1bHQoKTtsZXQgQT1HLmRlbHRhWT4wPy45OjEuMSxEPU1hdGgubWluKDEwLE1hdGgubWF4KC4xLHRoaXMuem9vbSpBKSk7dGhpcy56b29tPUQsdGhpcy56b29tPD0xJiYodGhpcy5wYW5YPTAsdGhpcy5wYW5ZPTApfWhhbmRsZU1vdXNlRG93bihHKXt0aGlzLnpvb208PTF8fCh0aGlzLmlzRHJhZ2dpbmc9ITAsdGhpcy5kcmFnU3RhcnRYPUcuY2xpZW50WCx0aGlzLmRyYWdTdGFydFk9Ry5jbGllbnRZLHRoaXMuZHJhZ1N0YXJ0UGFuWD10aGlzLnBhblgsdGhpcy5kcmFnU3RhcnRQYW5ZPXRoaXMucGFuWSl9aGFuZGxlTW91c2VNb3ZlKEcpe3RoaXMuaXNEcmFnZ2luZyYmKHRoaXMucGFuWD10aGlzLmRyYWdTdGFydFBhblgrKEcuY2xpZW50WC10aGlzLmRyYWdTdGFydFgpLHRoaXMucGFuWT10aGlzLmRyYWdTdGFydFBhblkrKEcuY2xpZW50WS10aGlzLmRyYWdTdGFydFkpKX1oYW5kbGVNb3VzZVVwKCl7dGhpcy5pc0RyYWdnaW5nPSExfWhhbmRsZURvdWJsZUNsaWNrKCl7dGhpcy56b29tPT09MT90aGlzLnpvb209MjoodGhpcy56b29tPTEsdGhpcy5wYW5YPTAsdGhpcy5wYW5ZPTApfXVwZGF0ZWQoRyl7c3VwZXIudXBkYXRlZChHKSxHLmhhcygic3JjIikmJih0aGlzLmxvYWRpbmc9ITAsdGhpcy5lcnJvcj0iIix0aGlzLnpvb209MSx0aGlzLnBhblg9MCx0aGlzLnBhblk9MCx0aGlzLmltYWdlTmF0dXJhbFdpZHRoPTAsdGhpcy5pbWFnZU5hdHVyYWxIZWlnaHQ9MCl9c3RhdGlje1RhKGEscil9fTtyZXR1cm4ga2U9YX0pKCl9KTt2YXIgX0ZyPWwoKCk9Pnt0MHQoKX0pO3ZhciBURnIsTEZyPWwoKCk9PntTZSgpO1RGcj0oKT0+U2AKICA8c3R5bGU+CiAgICAuZGVtby1jb250YWluZXIgewogICAgICBwYWRkaW5nOiA0OHB4OwogICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2Y4ZjlmYSIsIiMwYTBhMGEiKX07CiAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgIGdhcDogMzJweDsKICAgIH0KCiAgICAuc2VjdGlvbiB7CiAgICAgIG1heC13aWR0aDogNjAwcHg7CiAgICAgIHdpZHRoOiAxMDAlOwogICAgICBtYXJnaW46IDAgYXV0bzsKICAgIH0KCiAgICAuc2VjdGlvbi10aXRsZSB7CiAgICAgIGZvbnQtc2l6ZTogMThweDsKICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgbWFyZ2luLWJvdHRvbTogOHB4OwogICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwOTA5MGIiLCIjZmFmYWZhIil9OwogICAgfQoKICAgIC5zZWN0aW9uLWRlc2NyaXB0aW9uIHsKICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM3MTcxN2EiLCIjYTFhMWFhIil9OwogICAgICBtYXJnaW4tYm90dG9tOiAxNnB4OwogICAgfQoKICAgIGRlZXMtYXVkaW8tdmlld2VyIHsKICAgICAgaGVpZ2h0OiAyMDBweDsKICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjMjcyNzJhIil9OwogICAgICBib3JkZXItcmFkaXVzOiA4cHg7CiAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICB9CiAgPC9zdHlsZT4KCiAgPGRpdiBjbGFzcz0iZGVtby1jb250YWluZXIiPgogICAgPGRpdiBjbGFzcz0ic2VjdGlvbiI+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tdGl0bGUiPkF1ZGlvIHdpdGggV2F2ZWZvcm08L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi1kZXNjcmlwdGlvbiI+QXVkaW8gcGxheWVyIHdpdGggd2F2ZWZvcm0gdmlzdWFsaXphdGlvbiBhbmQgZnVsbCB0cmFuc3BvcnQgY29udHJvbHMuPC9kaXY+CiAgICAgIDxkZWVzLWF1ZGlvLXZpZXdlcgogICAgICAgIHNyYz0iaHR0cHM6Ly93d3cuc291bmRoZWxpeC5jb20vZXhhbXBsZXMvbXAzL1NvdW5kSGVsaXgtU29uZy0xLm1wMyIKICAgICAgICB0aXRsZT0iU291bmRIZWxpeCBTb25nIDEiCiAgICAgICAgYXJ0aXN0PSJULiBTY2h1ZXJnZXIiCiAgICAgID48L2RlZXMtYXVkaW8tdmlld2VyPgogICAgPC9kaXY+CgogICAgPGRpdiBjbGFzcz0ic2VjdGlvbiI+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tdGl0bGUiPkF1ZGlvIHdpdGhvdXQgV2F2ZWZvcm08L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi1kZXNjcmlwdGlvbiI+U2ltcGxlIGF1ZGlvIHBsYXllciB3aXRoIGEgc2Vla2JhciBpbnN0ZWFkIG9mIGEgd2F2ZWZvcm0uPC9kaXY+CiAgICAgIDxkZWVzLWF1ZGlvLXZpZXdlcgogICAgICAgIHNyYz0iaHR0cHM6Ly93d3cuc291bmRoZWxpeC5jb20vZXhhbXBsZXMvbXAzL1NvdW5kSGVsaXgtU29uZy0yLm1wMyIKICAgICAgICB0aXRsZT0iU291bmRIZWxpeCBTb25nIDIiCiAgICAgICAgLnNob3dXYXZlZm9ybT0keyExfQogICAgICA+PC9kZWVzLWF1ZGlvLXZpZXdlcj4KICAgIDwvZGl2PgoKICAgIDxkaXYgY2xhc3M9InNlY3Rpb24iPgogICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uLXRpdGxlIj5NaW5pbWFsIEF1ZGlvIFBsYXllcjwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uLWRlc2NyaXB0aW9uIj5ObyB0aXRsZSBvciBhcnRpc3QgbWV0YWRhdGEg4oCUIGp1c3QgdGhlIHBsYXllci48L2Rpdj4KICAgICAgPGRlZXMtYXVkaW8tdmlld2VyCiAgICAgICAgc3JjPSJodHRwczovL3d3dy5zb3VuZGhlbGl4LmNvbS9leGFtcGxlcy9tcDMvU291bmRIZWxpeC1Tb25nLTMubXAzIgogICAgICA+PC9kZWVzLWF1ZGlvLXZpZXdlcj4KICAgIDwvZGl2PgogIDwvZGl2PgpgfSk7dmFyIEoxLGpyLERGcixyMHQ9bCgoKT0+e1NlKCk7YnIoKTtMRnIoKTtKMT1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LGpyPWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSxERnI9KCgpPT57bGV0IGU9W3plKCJkZWVzLWF1ZGlvLXZpZXdlciIpXSx0LHI9W10sYSxpPURlLG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdLHUscD1bXSxoPVtdLGIseD1bXSxnPVtdLHYsdz1bXSxNPVtdLEYsQz1bXSxrPVtdLE4sJD1bXSxJPVtdLEIsej1bXSx5PVtdLEUsXz1bXSxQPVtdLFYsSD1bXSxXPVtdLGFlLFQ9W10sSj1bXSxmZSxMPVtdLFE9W10sa2UsRz1bXSxBPVtdLEQsUj1bXSxPPVtdLFksdWU9W10seWU9W107dmFyICRlPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgVT10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKCldLGM9W2ooKV0sdT1baigpXSxiPVtqKHt0eXBlOkJvb2xlYW59KV0sdj1baih7dHlwZTpCb29sZWFufSldLEY9W2ooe3R5cGU6Qm9vbGVhbn0pXSxOPVtyZSgpXSxCPVtyZSgpXSxFPVtyZSgpXSxWPVtyZSgpXSxhZT1bcmUoKV0sZmU9W3JlKCldLGtlPVtyZSgpXSxEPVtyZSgpXSxZPVtyZSgpXSxKMSh0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNyYyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cT0+InNyYyJpbiBxLGdldDpxPT5xLnNyYyxzZXQ6KHEsaWUpPT57cS5zcmM9aWV9fSxtZXRhZGF0YTpVfSxuLHMpLEoxKHRoaXMsbnVsbCxjLHtraW5kOiJhY2Nlc3NvciIsbmFtZToidGl0bGUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnE9PiJ0aXRsZSJpbiBxLGdldDpxPT5xLnRpdGxlLHNldDoocSxpZSk9PntxLnRpdGxlPWllfX0sbWV0YWRhdGE6VX0sZCxmKSxKMSh0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImFydGlzdCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cT0+ImFydGlzdCJpbiBxLGdldDpxPT5xLmFydGlzdCxzZXQ6KHEsaWUpPT57cS5hcnRpc3Q9aWV9fSxtZXRhZGF0YTpVfSxwLGgpLEoxKHRoaXMsbnVsbCxiLHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2hvd1dhdmVmb3JtIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpxPT4ic2hvd1dhdmVmb3JtImluIHEsZ2V0OnE9PnEuc2hvd1dhdmVmb3JtLHNldDoocSxpZSk9PntxLnNob3dXYXZlZm9ybT1pZX19LG1ldGFkYXRhOlV9LHgsZyksSjEodGhpcyxudWxsLHYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJhdXRvcGxheSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cT0+ImF1dG9wbGF5ImluIHEsZ2V0OnE9PnEuYXV0b3BsYXksc2V0OihxLGllKT0+e3EuYXV0b3BsYXk9aWV9fSxtZXRhZGF0YTpVfSx3LE0pLEoxKHRoaXMsbnVsbCxGLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibG9vcCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cT0+Imxvb3AiaW4gcSxnZXQ6cT0+cS5sb29wLHNldDoocSxpZSk9PntxLmxvb3A9aWV9fSxtZXRhZGF0YTpVfSxDLGspLEoxKHRoaXMsbnVsbCxOLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiaXNQbGF5aW5nIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpxPT4iaXNQbGF5aW5nImluIHEsZ2V0OnE9PnEuaXNQbGF5aW5nLHNldDoocSxpZSk9PntxLmlzUGxheWluZz1pZX19LG1ldGFkYXRhOlV9LCQsSSksSjEodGhpcyxudWxsLEIse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJjdXJyZW50VGltZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cT0+ImN1cnJlbnRUaW1lImluIHEsZ2V0OnE9PnEuY3VycmVudFRpbWUsc2V0OihxLGllKT0+e3EuY3VycmVudFRpbWU9aWV9fSxtZXRhZGF0YTpVfSx6LHkpLEoxKHRoaXMsbnVsbCxFLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZHVyYXRpb24iLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnE9PiJkdXJhdGlvbiJpbiBxLGdldDpxPT5xLmR1cmF0aW9uLHNldDoocSxpZSk9PntxLmR1cmF0aW9uPWllfX0sbWV0YWRhdGE6VX0sXyxQKSxKMSh0aGlzLG51bGwsVix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InZvbHVtZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cT0+InZvbHVtZSJpbiBxLGdldDpxPT5xLnZvbHVtZSxzZXQ6KHEsaWUpPT57cS52b2x1bWU9aWV9fSxtZXRhZGF0YTpVfSxILFcpLEoxKHRoaXMsbnVsbCxhZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImlzTXV0ZWQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnE9PiJpc011dGVkImluIHEsZ2V0OnE9PnEuaXNNdXRlZCxzZXQ6KHEsaWUpPT57cS5pc011dGVkPWllfX0sbWV0YWRhdGE6VX0sVCxKKSxKMSh0aGlzLG51bGwsZmUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJsb2FkaW5nIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpxPT4ibG9hZGluZyJpbiBxLGdldDpxPT5xLmxvYWRpbmcsc2V0OihxLGllKT0+e3EubG9hZGluZz1pZX19LG1ldGFkYXRhOlV9LEwsUSksSjEodGhpcyxudWxsLGtlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZXJyb3IiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnE9PiJlcnJvciJpbiBxLGdldDpxPT5xLmVycm9yLHNldDoocSxpZSk9PntxLmVycm9yPWllfX0sbWV0YWRhdGE6VX0sRyxBKSxKMSh0aGlzLG51bGwsRCx7a2luZDoiYWNjZXNzb3IiLG5hbWU6IndhdmVmb3JtRGF0YSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cT0+IndhdmVmb3JtRGF0YSJpbiBxLGdldDpxPT5xLndhdmVmb3JtRGF0YSxzZXQ6KHEsaWUpPT57cS53YXZlZm9ybURhdGE9aWV9fSxtZXRhZGF0YTpVfSxSLE8pLEoxKHRoaXMsbnVsbCxZLHtraW5kOiJhY2Nlc3NvciIsbmFtZToid2F2ZWZvcm1SZWFkeSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6cT0+IndhdmVmb3JtUmVhZHkiaW4gcSxnZXQ6cT0+cS53YXZlZm9ybVJlYWR5LHNldDoocSxpZSk9PntxLndhdmVmb3JtUmVhZHk9aWV9fSxtZXRhZGF0YTpVfSx1ZSx5ZSksSjEobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6VX0sbnVsbCxyKSwkZT1hPXQudmFsdWUsVSYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpVfSl9c3RhdGljIGRlbW89VEZyO3N0YXRpYyBkZW1vR3JvdXBzPVsiTWVkaWEiXTsjZT1qcih0aGlzLG4sIiIpO2dldCBzcmMoKXtyZXR1cm4gdGhpcy4jZX1zZXQgc3JjKFUpe3RoaXMuI2U9VX0jdD0oanIodGhpcyxzKSxqcih0aGlzLGQsIiIpKTtnZXQgdGl0bGUoKXtyZXR1cm4gdGhpcy4jdH1zZXQgdGl0bGUoVSl7dGhpcy4jdD1VfSNyPShqcih0aGlzLGYpLGpyKHRoaXMscCwiIikpO2dldCBhcnRpc3QoKXtyZXR1cm4gdGhpcy4jcn1zZXQgYXJ0aXN0KFUpe3RoaXMuI3I9VX0jYT0oanIodGhpcyxoKSxqcih0aGlzLHgsITApKTtnZXQgc2hvd1dhdmVmb3JtKCl7cmV0dXJuIHRoaXMuI2F9c2V0IHNob3dXYXZlZm9ybShVKXt0aGlzLiNhPVV9I2k9KGpyKHRoaXMsZyksanIodGhpcyx3LCExKSk7Z2V0IGF1dG9wbGF5KCl7cmV0dXJuIHRoaXMuI2l9c2V0IGF1dG9wbGF5KFUpe3RoaXMuI2k9VX0jbz0oanIodGhpcyxNKSxqcih0aGlzLEMsITEpKTtnZXQgbG9vcCgpe3JldHVybiB0aGlzLiNvfXNldCBsb29wKFUpe3RoaXMuI289VX0jbj0oanIodGhpcyxrKSxqcih0aGlzLCQsITEpKTtnZXQgaXNQbGF5aW5nKCl7cmV0dXJuIHRoaXMuI259c2V0IGlzUGxheWluZyhVKXt0aGlzLiNuPVV9I3M9KGpyKHRoaXMsSSksanIodGhpcyx6LDApKTtnZXQgY3VycmVudFRpbWUoKXtyZXR1cm4gdGhpcy4jc31zZXQgY3VycmVudFRpbWUoVSl7dGhpcy4jcz1VfSNsPShqcih0aGlzLHkpLGpyKHRoaXMsXywwKSk7Z2V0IGR1cmF0aW9uKCl7cmV0dXJuIHRoaXMuI2x9c2V0IGR1cmF0aW9uKFUpe3RoaXMuI2w9VX0jYz0oanIodGhpcyxQKSxqcih0aGlzLEgsMSkpO2dldCB2b2x1bWUoKXtyZXR1cm4gdGhpcy4jY31zZXQgdm9sdW1lKFUpe3RoaXMuI2M9VX0jZD0oanIodGhpcyxXKSxqcih0aGlzLFQsITEpKTtnZXQgaXNNdXRlZCgpe3JldHVybiB0aGlzLiNkfXNldCBpc011dGVkKFUpe3RoaXMuI2Q9VX0jdT0oanIodGhpcyxKKSxqcih0aGlzLEwsITEpKTtnZXQgbG9hZGluZygpe3JldHVybiB0aGlzLiN1fXNldCBsb2FkaW5nKFUpe3RoaXMuI3U9VX0jZj0oanIodGhpcyxRKSxqcih0aGlzLEcsIiIpKTtnZXQgZXJyb3IoKXtyZXR1cm4gdGhpcy4jZn1zZXQgZXJyb3IoVSl7dGhpcy4jZj1VfSNwPShqcih0aGlzLEEpLGpyKHRoaXMsUixbXSkpO2dldCB3YXZlZm9ybURhdGEoKXtyZXR1cm4gdGhpcy4jcH1zZXQgd2F2ZWZvcm1EYXRhKFUpe3RoaXMuI3A9VX0jaD0oanIodGhpcyxPKSxqcih0aGlzLHVlLCExKSk7Z2V0IHdhdmVmb3JtUmVhZHkoKXtyZXR1cm4gdGhpcy4jaH1zZXQgd2F2ZWZvcm1SZWFkeShVKXt0aGlzLiNoPVV9YXVkaW9FbGVtZW50PShqcih0aGlzLHllKSxudWxsKTtjYW52YXNFbGVtZW50PW51bGw7YW5pbUZyYW1lSWQ9MDt2b2x1bWVCZWZvcmVNdXRlPTE7cmVuZGVyKCl7bGV0IFU9dGhpcy50aXRsZSYmdGhpcy5hcnRpc3Q/YCR7dGhpcy50aXRsZX0gXHUyMDE0ICR7dGhpcy5hcnRpc3R9YDp0aGlzLnRpdGxlfHx0aGlzLmFydGlzdHx8IiI7cmV0dXJuIFNgCiAgICAgIDxzdHlsZT4KICAgICAgICA6aG9zdCB7CiAgICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsICdTZWdvZSBVSScsIFJvYm90bywgc2Fucy1zZXJpZjsKICAgICAgICB9CgogICAgICAgIC52aWV3ZXItY29udGFpbmVyIHsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk3JSkiLCJoc2woMjE1IDIwJSAxMCUpIil9OwogICAgICAgIH0KCiAgICAgICAgLnRvb2xiYXIgewogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgICBnYXA6IDE2cHg7CiAgICAgICAgICBwYWRkaW5nOiAwIDE2cHg7CiAgICAgICAgICBoZWlnaHQ6IDQ4cHg7CiAgICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2ZmZmZmZiIsImhzbCgyMTUgMjAlIDE1JSkiKX07CiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCJoc2woMjE3IDI1JSAyMiUpIil9OwogICAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgICAgfQoKICAgICAgICAudG9vbGJhci1ncm91cCB7CiAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICAgIGdhcDogNHB4OwogICAgICAgIH0KCiAgICAgICAgLnRvb2xiYXItZ3JvdXAtLWVuZCB7CiAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICAgIGdhcDogNHB4OwogICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87CiAgICAgICAgfQoKICAgICAgICAudG9vbGJhci1idXR0b24gewogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICAgIHdpZHRoOiAzMnB4OwogICAgICAgICAgaGVpZ2h0OiAzMnB4OwogICAgICAgICAgYm9yZGVyOiBub25lOwogICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUgMTYlIDQ1JSkiLCJoc2woMjE1IDE2JSA3NSUpIil9OwogICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgICAgICBmbGV4LXNocmluazogMDsKICAgICAgICB9CgogICAgICAgIC50b29sYmFyLWJ1dHRvbiBkZWVzLWljb24gewogICAgICAgICAgZm9udC1zaXplOiAxNnB4OwogICAgICAgIH0KCiAgICAgICAgLnRvb2xiYXItYnV0dG9uOmhvdmVyIHsKICAgICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjE0IDMxJSA5MiUpIiwiaHNsKDIxNyAyNSUgMjIlKSIpfTsKICAgICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzA5MDkwYiIsIiNmYWZhZmEiKX07CiAgICAgICAgfQoKICAgICAgICAudG9vbGJhci1idXR0b246YWN0aXZlIHsKICAgICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZTVlN2ViIiwiIzNmM2Y0NiIpfTsKICAgICAgICB9CgogICAgICAgIC50b29sYmFyLWJ1dHRvbi5hY3RpdmUgewogICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE3IDkxJSA2MCUpIiwiaHNsKDIxMyA5MyUgNjglKSIpfTsKICAgICAgICB9CgogICAgICAgIC50b29sYmFyLXRpdGxlIHsKICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUgMTYlIDQ1JSkiLCJoc2woMjE1IDE2JSA3NSUpIil9OwogICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOwogICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKICAgICAgICAgIG1pbi13aWR0aDogMDsKICAgICAgICB9CgogICAgICAgIC50aW1lLWRpc3BsYXkgewogICAgICAgICAgZm9udC1zaXplOiAxM3B4OwogICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICAgIGZvbnQtdmFyaWFudC1udW1lcmljOiB0YWJ1bGFyLW51bXM7CiAgICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUgMTYlIDQ1JSkiLCJoc2woMjE1IDE2JSA3NSUpIil9OwogICAgICAgICAgbWluLXdpZHRoOiA5MHB4OwogICAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgICAgfQoKICAgICAgICAudm9sdW1lLWdyb3VwIHsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgICAgZ2FwOiA0cHg7CiAgICAgICAgfQoKICAgICAgICAudm9sdW1lLXNsaWRlciB7CiAgICAgICAgICB3aWR0aDogNzBweDsKICAgICAgICAgIGhlaWdodDogNHB4OwogICAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOwogICAgICAgICAgYXBwZWFyYW5jZTogbm9uZTsKICAgICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjE0IDMxJSA5MSUpIiwiaHNsKDIxNyAyNSUgMjIlKSIpfTsKICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsKICAgICAgICAgIG91dGxpbmU6IG5vbmU7CiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgfQoKICAgICAgICAudm9sdW1lLXNsaWRlcjo6LXdlYmtpdC1zbGlkZXItdGh1bWIgewogICAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOwogICAgICAgICAgd2lkdGg6IDEycHg7CiAgICAgICAgICBoZWlnaHQ6IDEycHg7CiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDIxNyA5MSUgNjAlKSIsImhzbCgyMTMgOTMlIDY4JSkiKX07CiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgfQoKICAgICAgICAudm9sdW1lLXNsaWRlcjo6LW1vei1yYW5nZS10aHVtYiB7CiAgICAgICAgICB3aWR0aDogMTJweDsKICAgICAgICAgIGhlaWdodDogMTJweDsKICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsKICAgICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjE3IDkxJSA2MCUpIiwiaHNsKDIxMyA5MyUgNjglKSIpfTsKICAgICAgICAgIGJvcmRlcjogbm9uZTsKICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICB9CgogICAgICAgIC5jb250ZW50LWFyZWEgewogICAgICAgICAgZmxleDogMTsKICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIH0KCiAgICAgICAgLndhdmVmb3JtLWNvbnRhaW5lciB7CiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgICBpbnNldDogMDsKICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgfQoKICAgICAgICAud2F2ZWZvcm0tY29udGFpbmVyIGNhbnZhcyB7CiAgICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIH0KCiAgICAgICAgLnNlZWtiYXItY29udGFpbmVyIHsKICAgICAgICAgIHdpZHRoOiA4MCU7CiAgICAgICAgICBtYXgtd2lkdGg6IDYwMHB4OwogICAgICAgICAgaGVpZ2h0OiA2cHg7CiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7CiAgICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDIxNCAzMSUgOTElKSIsImhzbCgyMTcgMjUlIDIyJSkiKX07CiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIH0KCiAgICAgICAgLnNlZWtiYXItZmlsbCB7CiAgICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDIxNyA5MSUgNjAlKSIsImhzbCgyMTMgOTMlIDY4JSkiKX07CiAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7CiAgICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjFzIGxpbmVhcjsKICAgICAgICB9CgogICAgICAgIC5lcnJvci1vdmVybGF5IHsKICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICAgIGluc2V0OiAwOwogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgICBnYXA6IDhweDsKICAgICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzcxNzE3YSIsIiNhMWExYWEiKX07CiAgICAgICAgfQoKICAgICAgICAuZXJyb3Itb3ZlcmxheSAuZXJyb3ItaWNvbiB7CiAgICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiNkYzI2MjYiLCIjZjg3MTcxIil9OwogICAgICAgICAgZm9udC1zaXplOiAzMnB4OwogICAgICAgIH0KCiAgICAgICAgLmVycm9yLXRleHQgewogICAgICAgICAgZm9udC1zaXplOiAxM3B4OwogICAgICAgIH0KCiAgICAgICAgLmxvYWRpbmctb3ZlcmxheSB7CiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgICBpbnNldDogMDsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgfQoKICAgICAgICAubG9hZGluZy1zcGlubmVyIHsKICAgICAgICAgIHdpZHRoOiAzMnB4OwogICAgICAgICAgaGVpZ2h0OiAzMnB4OwogICAgICAgICAgYm9yZGVyOiAzcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgyMTQgMzElIDg2JSkiLCJoc2woMjE3IDI1JSAyOCUpIil9OwogICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTcgOTElIDYwJSkiLCJoc2woMjEzIDkzJSA2OCUpIil9OwogICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgICAgICAgYW5pbWF0aW9uOiBzcGluIDAuOHMgbGluZWFyIGluZmluaXRlOwogICAgICAgIH0KCiAgICAgICAgQGtleWZyYW1lcyBzcGluIHsKICAgICAgICAgIHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfQogICAgICAgIH0KICAgICAgPC9zdHlsZT4KCiAgICAgIDxkaXYgY2xhc3M9InZpZXdlci1jb250YWluZXIiPgogICAgICAgIDxkaXYgY2xhc3M9InRvb2xiYXIiPgogICAgICAgICAgPGRpdiBjbGFzcz0idG9vbGJhci1ncm91cCI+CiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9InRvb2xiYXItYnV0dG9uIiBAY2xpY2s9JHt0aGlzLnRvZ2dsZVBsYXl9PgogICAgICAgICAgICAgIDxkZWVzLWljb24gaWNvbj0ibHVjaWRlOiR7dGhpcy5pc1BsYXlpbmc/IlBhdXNlIjoiUGxheSJ9Ij48L2RlZXMtaWNvbj4KICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0aW1lLWRpc3BsYXkiPgogICAgICAgICAgICAgICR7dGhpcy5mb3JtYXRUaW1lKHRoaXMuY3VycmVudFRpbWUpfSAvICR7dGhpcy5mb3JtYXRUaW1lKHRoaXMuZHVyYXRpb24pfQogICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAke1U/U2AKICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRvb2xiYXItdGl0bGUiPiR7VX08L3NwYW4+CiAgICAgICAgICBgOiIifQoKICAgICAgICAgIDxkaXYgY2xhc3M9InRvb2xiYXItZ3JvdXAtLWVuZCI+CiAgICAgICAgICAgIDxidXR0b24KICAgICAgICAgICAgICBjbGFzcz0idG9vbGJhci1idXR0b24gJHt0aGlzLmxvb3A/ImFjdGl2ZSI6IiJ9IgogICAgICAgICAgICAgIEBjbGljaz0ke3RoaXMudG9nZ2xlTG9vcH0KICAgICAgICAgICAgICB0aXRsZT0iTG9vcCIKICAgICAgICAgICAgPgogICAgICAgICAgICAgIDxkZWVzLWljb24gaWNvbj0ibHVjaWRlOlJlcGVhdCI+PC9kZWVzLWljb24+CiAgICAgICAgICAgIDwvYnV0dG9uPgoKICAgICAgICAgICAgPGRpdiBjbGFzcz0idm9sdW1lLWdyb3VwIj4KICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJ0b29sYmFyLWJ1dHRvbiIgQGNsaWNrPSR7dGhpcy50b2dnbGVNdXRlfSB0aXRsZT0iJHt0aGlzLmlzTXV0ZWQ/IlVubXV0ZSI6Ik11dGUifSI+CiAgICAgICAgICAgICAgICA8ZGVlcy1pY29uIGljb249Imx1Y2lkZToke3RoaXMuaXNNdXRlZHx8dGhpcy52b2x1bWU9PT0wPyJWb2x1bWVYIjp0aGlzLnZvbHVtZTwuNT8iVm9sdW1lMSI6IlZvbHVtZTIifSI+PC9kZWVzLWljb24+CiAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgPGlucHV0CiAgICAgICAgICAgICAgICBjbGFzcz0idm9sdW1lLXNsaWRlciIKICAgICAgICAgICAgICAgIHR5cGU9InJhbmdlIgogICAgICAgICAgICAgICAgbWluPSIwIgogICAgICAgICAgICAgICAgbWF4PSIxIgogICAgICAgICAgICAgICAgc3RlcD0iMC4wMSIKICAgICAgICAgICAgICAgIC52YWx1ZT0ke1N0cmluZyh0aGlzLmlzTXV0ZWQ/MDp0aGlzLnZvbHVtZSl9CiAgICAgICAgICAgICAgICBAaW5wdXQ9JHt0aGlzLmhhbmRsZVZvbHVtZUNoYW5nZX0KICAgICAgICAgICAgICAvPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgoKICAgICAgICA8ZGl2IGNsYXNzPSJjb250ZW50LWFyZWEiPgogICAgICAgICAgJHt0aGlzLmVycm9yP1NgCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImVycm9yLW92ZXJsYXkiPgogICAgICAgICAgICAgIDxkZWVzLWljb24gY2xhc3M9ImVycm9yLWljb24iIGljb249Imx1Y2lkZTpNdXNpY09mZiI+PC9kZWVzLWljb24+CiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImVycm9yLXRleHQiPiR7dGhpcy5lcnJvcn08L3NwYW4+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgYDp0aGlzLmxvYWRpbmc/U2AKICAgICAgICAgICAgPGRpdiBjbGFzcz0ibG9hZGluZy1vdmVybGF5Ij4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsb2FkaW5nLXNwaW5uZXIiPjwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIGA6dGhpcy5zaG93V2F2ZWZvcm0/U2AKICAgICAgICAgICAgPGRpdiBjbGFzcz0id2F2ZWZvcm0tY29udGFpbmVyIiBAY2xpY2s9JHt0aGlzLmhhbmRsZVdhdmVmb3JtQ2xpY2t9PgogICAgICAgICAgICAgIDxjYW52YXM+PC9jYW52YXM+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgYDpTYAogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZWVrYmFyLWNvbnRhaW5lciIgQGNsaWNrPSR7dGhpcy5oYW5kbGVTZWVrYmFyQ2xpY2t9PgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9InNlZWtiYXItZmlsbCIgc3R5bGU9IndpZHRoOiAke3RoaXMuZHVyYXRpb24/dGhpcy5jdXJyZW50VGltZS90aGlzLmR1cmF0aW9uKjEwMDowfSUiPjwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIGB9CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgYH1hc3luYyBjb25uZWN0ZWRDYWxsYmFjaygpe2F3YWl0IHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCksdGhpcy5zcmMmJnRoaXMuaW5pdEF1ZGlvKCl9YXN5bmMgZGlzY29ubmVjdGVkQ2FsbGJhY2soKXthd2FpdCBzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpLHRoaXMuY2xlYW51cCgpfWFzeW5jIHVwZGF0ZWQoVSl7c3VwZXIudXBkYXRlZChVKSxVLmhhcygic3JjIikmJnRoaXMuc3JjJiYodGhpcy5jbGVhbnVwKCksdGhpcy5pbml0QXVkaW8oKSksKFUuaGFzKCJ3YXZlZm9ybURhdGEiKXx8VS5oYXMoImN1cnJlbnRUaW1lIikpJiZ0aGlzLmRyYXdXYXZlZm9ybSgpfXBsYXkoKXt0aGlzLmF1ZGlvRWxlbWVudD8ucGxheSgpfXBhdXNlKCl7dGhpcy5hdWRpb0VsZW1lbnQ/LnBhdXNlKCl9dG9nZ2xlUGxheSgpe3RoaXMuaXNQbGF5aW5nP3RoaXMucGF1c2UoKTp0aGlzLnBsYXkoKX1zZWVrKFUpe3RoaXMuYXVkaW9FbGVtZW50JiYodGhpcy5hdWRpb0VsZW1lbnQuY3VycmVudFRpbWU9VSl9c2V0Vm9sdW1lKFUpe3RoaXMudm9sdW1lPU1hdGgubWF4KDAsTWF0aC5taW4oMSxVKSksdGhpcy5hdWRpb0VsZW1lbnQmJih0aGlzLmF1ZGlvRWxlbWVudC52b2x1bWU9dGhpcy52b2x1bWUpLHRoaXMudm9sdW1lPjAmJih0aGlzLmlzTXV0ZWQ9ITEpfXRvZ2dsZU11dGUoKXt0aGlzLmlzTXV0ZWQ/KHRoaXMuaXNNdXRlZD0hMSx0aGlzLnZvbHVtZT10aGlzLnZvbHVtZUJlZm9yZU11dGV8fC41LHRoaXMuYXVkaW9FbGVtZW50JiYodGhpcy5hdWRpb0VsZW1lbnQudm9sdW1lPXRoaXMudm9sdW1lKSk6KHRoaXMudm9sdW1lQmVmb3JlTXV0ZT10aGlzLnZvbHVtZSx0aGlzLmlzTXV0ZWQ9ITAsdGhpcy5hdWRpb0VsZW1lbnQmJih0aGlzLmF1ZGlvRWxlbWVudC52b2x1bWU9MCkpfXRvZ2dsZUxvb3AoKXt0aGlzLmxvb3A9IXRoaXMubG9vcCx0aGlzLmF1ZGlvRWxlbWVudCYmKHRoaXMuYXVkaW9FbGVtZW50Lmxvb3A9dGhpcy5sb29wKX1pbml0QXVkaW8oKXt0aGlzLmF1ZGlvRWxlbWVudD1uZXcgQXVkaW8sdGhpcy5hdWRpb0VsZW1lbnQuY3Jvc3NPcmlnaW49ImFub255bW91cyIsdGhpcy5hdWRpb0VsZW1lbnQuc3JjPXRoaXMuc3JjLHRoaXMuYXVkaW9FbGVtZW50LnZvbHVtZT10aGlzLmlzTXV0ZWQ/MDp0aGlzLnZvbHVtZSx0aGlzLmF1ZGlvRWxlbWVudC5sb29wPXRoaXMubG9vcCx0aGlzLmF1ZGlvRWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCJsb2FkZWRtZXRhZGF0YSIsKCk9Pnt0aGlzLmR1cmF0aW9uPXRoaXMuYXVkaW9FbGVtZW50LmR1cmF0aW9uLHRoaXMubG9hZGluZz0hMX0pLHRoaXMuYXVkaW9FbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoInBsYXkiLCgpPT57dGhpcy5pc1BsYXlpbmc9ITAsdGhpcy5zdGFydFRpbWVVcGRhdGUoKX0pLHRoaXMuYXVkaW9FbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoInBhdXNlIiwoKT0+e3RoaXMuaXNQbGF5aW5nPSExLHRoaXMuc3RvcFRpbWVVcGRhdGUoKX0pLHRoaXMuYXVkaW9FbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoImVuZGVkIiwoKT0+e3RoaXMuaXNQbGF5aW5nPSExLHRoaXMuc3RvcFRpbWVVcGRhdGUoKX0pLHRoaXMuYXVkaW9FbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoImVycm9yIiwoKT0+e3RoaXMuZXJyb3I9IkZhaWxlZCB0byBsb2FkIGF1ZGlvIix0aGlzLmxvYWRpbmc9ITF9KSx0aGlzLmF1ZGlvRWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCJ0aW1ldXBkYXRlIiwoKT0+e3RoaXMuY3VycmVudFRpbWU9dGhpcy5hdWRpb0VsZW1lbnQuY3VycmVudFRpbWV9KSx0aGlzLmF1dG9wbGF5JiZ0aGlzLmF1ZGlvRWxlbWVudC5wbGF5KCkuY2F0Y2goKCk9Pnt9KSx0aGlzLnNob3dXYXZlZm9ybSYmdGhpcy5sb2FkV2F2ZWZvcm0oKX1hc3luYyBsb2FkV2F2ZWZvcm0oKXt0cnl7dGhpcy5sb2FkaW5nPSEwO2xldCBxPWF3YWl0KGF3YWl0IGZldGNoKHRoaXMuc3JjKSkuYXJyYXlCdWZmZXIoKSxpZT1uZXcgQXVkaW9Db250ZXh0LGdlPShhd2FpdCBpZS5kZWNvZGVBdWRpb0RhdGEocSkpLmdldENoYW5uZWxEYXRhKDApLEFlPTIwMCx4ZT1NYXRoLmZsb29yKGdlLmxlbmd0aC9BZSksbmU9W107Zm9yKGxldCBPZT0wO09lPEFlO09lKyspe2xldCBKZT0wO2ZvcihsZXQgdGU9MDt0ZTx4ZTt0ZSsrKUplKz1NYXRoLmFicyhnZVtPZSp4ZSt0ZV0pO25lLnB1c2goSmUveGUpfWxldCBMZT1NYXRoLm1heCguLi5uZSk7dGhpcy53YXZlZm9ybURhdGE9bmUubWFwKE9lPT5MZT4wP09lL0xlOjApLHRoaXMud2F2ZWZvcm1SZWFkeT0hMCx0aGlzLmxvYWRpbmc9ITEsYXdhaXQgaWUuY2xvc2UoKX1jYXRjaHt0aGlzLndhdmVmb3JtUmVhZHk9ITEsdGhpcy5sb2FkaW5nPSExfX1kcmF3V2F2ZWZvcm0oKXtpZighdGhpcy5zaG93V2F2ZWZvcm18fCF0aGlzLndhdmVmb3JtUmVhZHkpcmV0dXJuO2xldCBVPXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiY2FudmFzIik7aWYoIVUpcmV0dXJuO3RoaXMuY2FudmFzRWxlbWVudD1VO2xldCBxPVUucGFyZW50RWxlbWVudCxpZT13aW5kb3cuZGV2aWNlUGl4ZWxSYXRpb3x8MSx3ZT1xLmNsaWVudFdpZHRoLGdlPXEuY2xpZW50SGVpZ2h0O1Uud2lkdGg9d2UqaWUsVS5oZWlnaHQ9Z2UqaWU7bGV0IEFlPVUuZ2V0Q29udGV4dCgiMmQiKTtpZighQWUpcmV0dXJuO0FlLnNjYWxlKGllLGllKSxBZS5jbGVhclJlY3QoMCwwLHdlLGdlKTtsZXQgeGU9dGhpcy53YXZlZm9ybURhdGEubGVuZ3RoO2lmKHhlPT09MClyZXR1cm47bGV0IG5lPXdlL3hlLExlPXRoaXMuZHVyYXRpb24+MD90aGlzLmN1cnJlbnRUaW1lL3RoaXMuZHVyYXRpb246MCxPZT1NYXRoLmZsb29yKExlKnhlKSxKZT1kb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5jb250YWlucygidGhlbWUtZGFyayIpfHx3aW5kb3cubWF0Y2hNZWRpYSgiKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIpLm1hdGNoZXMsdGU9SmU/ImhzbCgyMTMgOTMlIDY4JSkiOiJoc2woMjE3IDkxJSA2MCUpIixaPUplPyJoc2woMjE3IDI1JSAyMiUpIjoiaHNsKDIxNCAzMSUgODYlKSI7Zm9yKGxldCBlZT0wO2VlPHhlO2VlKyspe2xldCBiZT10aGlzLndhdmVmb3JtRGF0YVtlZV0sTmU9TWF0aC5tYXgoMixiZSooZ2UtNCkpLEtlPWVlKm5lLHl0PShnZS1OZSkvMjtBZS5maWxsU3R5bGU9ZWU8T2U/dGU6WixBZS5maWxsUmVjdChLZSsuNSx5dCxuZS0xLE5lKX19aGFuZGxlV2F2ZWZvcm1DbGljayhVKXtsZXQgcT1VLmN1cnJlbnRUYXJnZXQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksaWU9KFUuY2xpZW50WC1xLmxlZnQpL3Eud2lkdGg7dGhpcy5zZWVrKGllKnRoaXMuZHVyYXRpb24pfWhhbmRsZVNlZWtiYXJDbGljayhVKXtsZXQgcT1VLmN1cnJlbnRUYXJnZXQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksaWU9KFUuY2xpZW50WC1xLmxlZnQpL3Eud2lkdGg7dGhpcy5zZWVrKGllKnRoaXMuZHVyYXRpb24pfWhhbmRsZVZvbHVtZUNoYW5nZShVKXtsZXQgcT1wYXJzZUZsb2F0KFUudGFyZ2V0LnZhbHVlKTt0aGlzLnNldFZvbHVtZShxKX1zdGFydFRpbWVVcGRhdGUoKXt0aGlzLnN0b3BUaW1lVXBkYXRlKCk7bGV0IFU9KCk9Pnt0aGlzLmF1ZGlvRWxlbWVudCYmdGhpcy5pc1BsYXlpbmcmJih0aGlzLmN1cnJlbnRUaW1lPXRoaXMuYXVkaW9FbGVtZW50LmN1cnJlbnRUaW1lLHRoaXMuYW5pbUZyYW1lSWQ9cmVxdWVzdEFuaW1hdGlvbkZyYW1lKFUpKX07dGhpcy5hbmltRnJhbWVJZD1yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoVSl9c3RvcFRpbWVVcGRhdGUoKXt0aGlzLmFuaW1GcmFtZUlkJiYoY2FuY2VsQW5pbWF0aW9uRnJhbWUodGhpcy5hbmltRnJhbWVJZCksdGhpcy5hbmltRnJhbWVJZD0wKX1mb3JtYXRUaW1lKFUpe2lmKCFpc0Zpbml0ZShVKXx8VTwwKXJldHVybiIwOjAwIjtsZXQgcT1NYXRoLmZsb29yKFUvNjApLGllPU1hdGguZmxvb3IoVSU2MCk7cmV0dXJuYCR7cX06JHtpZS50b1N0cmluZygpLnBhZFN0YXJ0KDIsIjAiKX1gfWNsZWFudXAoKXt0aGlzLnN0b3BUaW1lVXBkYXRlKCksdGhpcy5hdWRpb0VsZW1lbnQmJih0aGlzLmF1ZGlvRWxlbWVudC5wYXVzZSgpLHRoaXMuYXVkaW9FbGVtZW50LnNyYz0iIix0aGlzLmF1ZGlvRWxlbWVudD1udWxsKSx0aGlzLmlzUGxheWluZz0hMSx0aGlzLmN1cnJlbnRUaW1lPTAsdGhpcy5kdXJhdGlvbj0wLHRoaXMud2F2ZWZvcm1EYXRhPVtdLHRoaXMud2F2ZWZvcm1SZWFkeT0hMX1zdGF0aWN7anIoYSxyKX19O3JldHVybiAkZT1hfSkoKX0pO3ZhciBBRnI9bCgoKT0+e3IwdCgpfSk7dmFyIEVGciwkRnI9bCgoKT0+e1NlKCk7RUZyPSgpPT5TYAogIDxzdHlsZT4KICAgIC5kZW1vLWNvbnRhaW5lciB7CiAgICAgIHBhZGRpbmc6IDQ4cHg7CiAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjhmOWZhIiwiIzBhMGEwYSIpfTsKICAgICAgZGlzcGxheTogZmxleDsKICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgZ2FwOiAzMnB4OwogICAgfQoKICAgIC5zZWN0aW9uIHsKICAgICAgbWF4LXdpZHRoOiA4MDBweDsKICAgICAgd2lkdGg6IDEwMCU7CiAgICAgIG1hcmdpbjogMCBhdXRvOwogICAgfQoKICAgIC5zZWN0aW9uLXRpdGxlIHsKICAgICAgZm9udC1zaXplOiAxOHB4OwogICAgICBmb250LXdlaWdodDogNjAwOwogICAgICBtYXJnaW4tYm90dG9tOiA4cHg7CiAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzA5MDkwYiIsIiNmYWZhZmEiKX07CiAgICB9CgogICAgLnNlY3Rpb24tZGVzY3JpcHRpb24gewogICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzcxNzE3YSIsIiNhMWExYWEiKX07CiAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7CiAgICB9CiAgPC9zdHlsZT4KCiAgPGRpdiBjbGFzcz0iZGVtby1jb250YWluZXIiPgogICAgPGRpdiBjbGFzcz0ic2VjdGlvbiI+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tdGl0bGUiPlZpZGVvIHdpdGggQ3VzdG9tIENvbnRyb2xzPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tZGVzY3JpcHRpb24iPkEgdmlkZW8gcGxheWVyIHdpdGggb3ZlcmxheSBjb250cm9scywgc2Vla2luZywgYW5kIHZvbHVtZSBhZGp1c3RtZW50LjwvZGl2PgogICAgICA8ZGVlcy12aWRlby12aWV3ZXIKICAgICAgICBzcmM9Imh0dHBzOi8vY29tbW9uZGF0YXN0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZ3R2LXZpZGVvcy1idWNrZXQvc2FtcGxlL0JpZ0J1Y2tCdW5ueS5tcDQiCiAgICAgICAgcG9zdGVyPSJodHRwczovL2NvbW1vbmRhdGFzdG9yYWdlLmdvb2dsZWFwaXMuY29tL2d0di12aWRlb3MtYnVja2V0L3NhbXBsZS9pbWFnZXMvQmlnQnVja0J1bm55LmpwZyIKICAgICAgPjwvZGVlcy12aWRlby12aWV3ZXI+CiAgICA8L2Rpdj4KCiAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uIj4KICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi10aXRsZSI+QXV0b3BsYXkgTXV0ZWQ8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi1kZXNjcmlwdGlvbiI+VmlkZW8gdGhhdCBhdXRvcGxheXMgbXV0ZWQsIGNvbW1vbmx5IHVzZWQgZm9yIHByZXZpZXdzLjwvZGl2PgogICAgICA8ZGVlcy12aWRlby12aWV3ZXIKICAgICAgICBzcmM9Imh0dHBzOi8vY29tbW9uZGF0YXN0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZ3R2LXZpZGVvcy1idWNrZXQvc2FtcGxlL0VsZXBoYW50c0RyZWFtLm1wNCIKICAgICAgICBwb3N0ZXI9Imh0dHBzOi8vY29tbW9uZGF0YXN0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZ3R2LXZpZGVvcy1idWNrZXQvc2FtcGxlL2ltYWdlcy9FbGVwaGFudHNEcmVhbS5qcGciCiAgICAgICAgLmF1dG9wbGF5PSR7ITB9CiAgICAgICAgLm11dGVkPSR7ITB9CiAgICAgID48L2RlZXMtdmlkZW8tdmlld2VyPgogICAgPC9kaXY+CgogICAgPGRpdiBjbGFzcz0ic2VjdGlvbiI+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tdGl0bGUiPk5hdGl2ZSBDb250cm9sczwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uLWRlc2NyaXB0aW9uIj5WaWRlbyB1c2luZyBicm93c2VyLW5hdGl2ZSBjb250cm9scyBpbnN0ZWFkIG9mIGN1c3RvbSBvdmVybGF5LjwvZGl2PgogICAgICA8ZGVlcy12aWRlby12aWV3ZXIKICAgICAgICBzcmM9Imh0dHBzOi8vY29tbW9uZGF0YXN0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZ3R2LXZpZGVvcy1idWNrZXQvc2FtcGxlL0ZvckJpZ2dlckJsYXplcy5tcDQiCiAgICAgICAgLnNob3dDb250cm9scz0keyExfQogICAgICA+PC9kZWVzLXZpZGVvLXZpZXdlcj4KICAgIDwvZGl2PgogIDwvZGl2PgpgfSk7dmFyIHZvLHNhLFBGcixhMHQ9bCgoKT0+e1NlKCk7YnIoKTskRnIoKTt2bz1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LHNhPWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSxQRnI9KCgpPT57bGV0IGU9W3plKCJkZWVzLXZpZGVvLXZpZXdlciIpXSx0LHI9W10sYSxpPURlLG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdLHUscD1bXSxoPVtdLGIseD1bXSxnPVtdLHYsdz1bXSxNPVtdLEYsQz1bXSxrPVtdLE4sJD1bXSxJPVtdLEIsej1bXSx5PVtdLEUsXz1bXSxQPVtdLFYsSD1bXSxXPVtdLGFlLFQ9W10sSj1bXSxmZSxMPVtdLFE9W10sa2UsRz1bXSxBPVtdLEQsUj1bXSxPPVtdO3ZhciBZPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgdWU9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baigpXSxjPVtqKCldLHU9W2ooe3R5cGU6Qm9vbGVhbn0pXSxiPVtqKHt0eXBlOkJvb2xlYW59KV0sdj1baih7dHlwZTpCb29sZWFufSldLEY9W2ooe3R5cGU6Qm9vbGVhbn0pXSxOPVtyZSgpXSxCPVtyZSgpXSxFPVtyZSgpXSxWPVtyZSgpXSxhZT1bcmUoKV0sZmU9W3JlKCldLGtlPVtyZSgpXSxEPVtyZSgpXSx2byh0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNyYyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eWU9PiJzcmMiaW4geWUsZ2V0OnllPT55ZS5zcmMsc2V0Oih5ZSwkZSk9Pnt5ZS5zcmM9JGV9fSxtZXRhZGF0YTp1ZX0sbixzKSx2byh0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InBvc3RlciIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eWU9PiJwb3N0ZXIiaW4geWUsZ2V0OnllPT55ZS5wb3N0ZXIsc2V0Oih5ZSwkZSk9Pnt5ZS5wb3N0ZXI9JGV9fSxtZXRhZGF0YTp1ZX0sZCxmKSx2byh0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNob3dDb250cm9scyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eWU9PiJzaG93Q29udHJvbHMiaW4geWUsZ2V0OnllPT55ZS5zaG93Q29udHJvbHMsc2V0Oih5ZSwkZSk9Pnt5ZS5zaG93Q29udHJvbHM9JGV9fSxtZXRhZGF0YTp1ZX0scCxoKSx2byh0aGlzLG51bGwsYix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImF1dG9wbGF5IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5ZT0+ImF1dG9wbGF5ImluIHllLGdldDp5ZT0+eWUuYXV0b3BsYXksc2V0Oih5ZSwkZSk9Pnt5ZS5hdXRvcGxheT0kZX19LG1ldGFkYXRhOnVlfSx4LGcpLHZvKHRoaXMsbnVsbCx2LHtraW5kOiJhY2Nlc3NvciIsbmFtZToibG9vcCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eWU9PiJsb29wImluIHllLGdldDp5ZT0+eWUubG9vcCxzZXQ6KHllLCRlKT0+e3llLmxvb3A9JGV9fSxtZXRhZGF0YTp1ZX0sdyxNKSx2byh0aGlzLG51bGwsRix7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im11dGVkIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5ZT0+Im11dGVkImluIHllLGdldDp5ZT0+eWUubXV0ZWQsc2V0Oih5ZSwkZSk9Pnt5ZS5tdXRlZD0kZX19LG1ldGFkYXRhOnVlfSxDLGspLHZvKHRoaXMsbnVsbCxOLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiaXNQbGF5aW5nIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5ZT0+ImlzUGxheWluZyJpbiB5ZSxnZXQ6eWU9PnllLmlzUGxheWluZyxzZXQ6KHllLCRlKT0+e3llLmlzUGxheWluZz0kZX19LG1ldGFkYXRhOnVlfSwkLEkpLHZvKHRoaXMsbnVsbCxCLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiY3VycmVudFRpbWUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnllPT4iY3VycmVudFRpbWUiaW4geWUsZ2V0OnllPT55ZS5jdXJyZW50VGltZSxzZXQ6KHllLCRlKT0+e3llLmN1cnJlbnRUaW1lPSRlfX0sbWV0YWRhdGE6dWV9LHoseSksdm8odGhpcyxudWxsLEUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJkdXJhdGlvbiIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eWU9PiJkdXJhdGlvbiJpbiB5ZSxnZXQ6eWU9PnllLmR1cmF0aW9uLHNldDooeWUsJGUpPT57eWUuZHVyYXRpb249JGV9fSxtZXRhZGF0YTp1ZX0sXyxQKSx2byh0aGlzLG51bGwsVix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InZvbHVtZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eWU9PiJ2b2x1bWUiaW4geWUsZ2V0OnllPT55ZS52b2x1bWUsc2V0Oih5ZSwkZSk9Pnt5ZS52b2x1bWU9JGV9fSxtZXRhZGF0YTp1ZX0sSCxXKSx2byh0aGlzLG51bGwsYWUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJsb2FkaW5nIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5ZT0+ImxvYWRpbmciaW4geWUsZ2V0OnllPT55ZS5sb2FkaW5nLHNldDooeWUsJGUpPT57eWUubG9hZGluZz0kZX19LG1ldGFkYXRhOnVlfSxULEopLHZvKHRoaXMsbnVsbCxmZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImVycm9yIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5ZT0+ImVycm9yImluIHllLGdldDp5ZT0+eWUuZXJyb3Isc2V0Oih5ZSwkZSk9Pnt5ZS5lcnJvcj0kZX19LG1ldGFkYXRhOnVlfSxMLFEpLHZvKHRoaXMsbnVsbCxrZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImlzRnVsbHNjcmVlbiIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eWU9PiJpc0Z1bGxzY3JlZW4iaW4geWUsZ2V0OnllPT55ZS5pc0Z1bGxzY3JlZW4sc2V0Oih5ZSwkZSk9Pnt5ZS5pc0Z1bGxzY3JlZW49JGV9fSxtZXRhZGF0YTp1ZX0sRyxBKSx2byh0aGlzLG51bGwsRCx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImNvbnRyb2xzVmlzaWJsZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eWU9PiJjb250cm9sc1Zpc2libGUiaW4geWUsZ2V0OnllPT55ZS5jb250cm9sc1Zpc2libGUsc2V0Oih5ZSwkZSk9Pnt5ZS5jb250cm9sc1Zpc2libGU9JGV9fSxtZXRhZGF0YTp1ZX0sUixPKSx2byhudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTp1ZX0sbnVsbCxyKSxZPWE9dC52YWx1ZSx1ZSYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTp1ZX0pfXN0YXRpYyBkZW1vPUVGcjtzdGF0aWMgZGVtb0dyb3Vwcz1bIk1lZGlhIl07I2U9c2EodGhpcyxuLCIiKTtnZXQgc3JjKCl7cmV0dXJuIHRoaXMuI2V9c2V0IHNyYyh1ZSl7dGhpcy4jZT11ZX0jdD0oc2EodGhpcyxzKSxzYSh0aGlzLGQsIiIpKTtnZXQgcG9zdGVyKCl7cmV0dXJuIHRoaXMuI3R9c2V0IHBvc3Rlcih1ZSl7dGhpcy4jdD11ZX0jcj0oc2EodGhpcyxmKSxzYSh0aGlzLHAsITApKTtnZXQgc2hvd0NvbnRyb2xzKCl7cmV0dXJuIHRoaXMuI3J9c2V0IHNob3dDb250cm9scyh1ZSl7dGhpcy4jcj11ZX0jYT0oc2EodGhpcyxoKSxzYSh0aGlzLHgsITEpKTtnZXQgYXV0b3BsYXkoKXtyZXR1cm4gdGhpcy4jYX1zZXQgYXV0b3BsYXkodWUpe3RoaXMuI2E9dWV9I2k9KHNhKHRoaXMsZyksc2EodGhpcyx3LCExKSk7Z2V0IGxvb3AoKXtyZXR1cm4gdGhpcy4jaX1zZXQgbG9vcCh1ZSl7dGhpcy4jaT11ZX0jbz0oc2EodGhpcyxNKSxzYSh0aGlzLEMsITEpKTtnZXQgbXV0ZWQoKXtyZXR1cm4gdGhpcy4jb31zZXQgbXV0ZWQodWUpe3RoaXMuI289dWV9I249KHNhKHRoaXMsayksc2EodGhpcywkLCExKSk7Z2V0IGlzUGxheWluZygpe3JldHVybiB0aGlzLiNufXNldCBpc1BsYXlpbmcodWUpe3RoaXMuI249dWV9I3M9KHNhKHRoaXMsSSksc2EodGhpcyx6LDApKTtnZXQgY3VycmVudFRpbWUoKXtyZXR1cm4gdGhpcy4jc31zZXQgY3VycmVudFRpbWUodWUpe3RoaXMuI3M9dWV9I2w9KHNhKHRoaXMseSksc2EodGhpcyxfLDApKTtnZXQgZHVyYXRpb24oKXtyZXR1cm4gdGhpcy4jbH1zZXQgZHVyYXRpb24odWUpe3RoaXMuI2w9dWV9I2M9KHNhKHRoaXMsUCksc2EodGhpcyxILDEpKTtnZXQgdm9sdW1lKCl7cmV0dXJuIHRoaXMuI2N9c2V0IHZvbHVtZSh1ZSl7dGhpcy4jYz11ZX0jZD0oc2EodGhpcyxXKSxzYSh0aGlzLFQsITApKTtnZXQgbG9hZGluZygpe3JldHVybiB0aGlzLiNkfXNldCBsb2FkaW5nKHVlKXt0aGlzLiNkPXVlfSN1PShzYSh0aGlzLEopLHNhKHRoaXMsTCwiIikpO2dldCBlcnJvcigpe3JldHVybiB0aGlzLiN1fXNldCBlcnJvcih1ZSl7dGhpcy4jdT11ZX0jZj0oc2EodGhpcyxRKSxzYSh0aGlzLEcsITEpKTtnZXQgaXNGdWxsc2NyZWVuKCl7cmV0dXJuIHRoaXMuI2Z9c2V0IGlzRnVsbHNjcmVlbih1ZSl7dGhpcy4jZj11ZX0jcD0oc2EodGhpcyxBKSxzYSh0aGlzLFIsITApKTtnZXQgY29udHJvbHNWaXNpYmxlKCl7cmV0dXJuIHRoaXMuI3B9c2V0IGNvbnRyb2xzVmlzaWJsZSh1ZSl7dGhpcy4jcD11ZX1oaWRlQ29udHJvbHNUaW1lcj0oc2EodGhpcyxPKSxudWxsKTt2aWRlb0VsZW1lbnQ9bnVsbDtyZW5kZXIoKXtyZXR1cm4gU2AKICAgICAgPHN0eWxlPgogICAgICAgIDpob3N0IHsKICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgICAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgJ1NlZ29lIFVJJywgUm9ib3RvLCBzYW5zLXNlcmlmOwogICAgICAgIH0KCiAgICAgICAgLnZpZGVvLWNvbnRhaW5lciB7CiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICAgIGFzcGVjdC1yYXRpbzogMTYgLyA5OwogICAgICAgICAgYmFja2dyb3VuZDogIzAwMDAwMDsKICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgfQoKICAgICAgICB2aWRlbyB7CiAgICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47CiAgICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICB9CgogICAgICAgIC5vdmVybGF5IHsKICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICAgIGluc2V0OiAwOwogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOwogICAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIH0KCiAgICAgICAgLmNlbnRlci1wbGF5IHsKICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICAgIHRvcDogNTAlOwogICAgICAgICAgbGVmdDogNTAlOwogICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7CiAgICAgICAgICB3aWR0aDogNjRweDsKICAgICAgICAgIGhlaWdodDogNjRweDsKICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsKICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KTsKICAgICAgICAgIGNvbG9yOiAjZmZmZmZmOwogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLCB0cmFuc2Zvcm0gMC4ycyBlYXNlOwogICAgICAgICAgb3BhY2l0eTogJHt0aGlzLmlzUGxheWluZz8wOjF9OwogICAgICAgICAgcG9pbnRlci1ldmVudHM6ICR7dGhpcy5pc1BsYXlpbmc/Im5vbmUiOiJhdXRvIn07CiAgICAgICAgfQoKICAgICAgICAuY2VudGVyLXBsYXkgZGVlcy1pY29uIHsKICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDsKICAgICAgICB9CgogICAgICAgIC5jZW50ZXItcGxheTpob3ZlciB7CiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOCk7CiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgxLjEpOwogICAgICAgIH0KCiAgICAgICAgLmNvbnRyb2xzLWJhciB7CiAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodHJhbnNwYXJlbnQsIHJnYmEoMCwgMCwgMCwgMC43KSk7CiAgICAgICAgICBwYWRkaW5nOiAyNHB4IDEycHggMTJweDsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgICAgZ2FwOiA4cHg7CiAgICAgICAgICBvcGFjaXR5OiAke3RoaXMuY29udHJvbHNWaXNpYmxlfHwhdGhpcy5pc1BsYXlpbmc/MTowfTsKICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlOwogICAgICAgIH0KCiAgICAgICAgLnNlZWtiYXItcm93IHsKICAgICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgICAgaGVpZ2h0OiA0cHg7CiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7CiAgICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7CiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgfQoKICAgICAgICAuc2Vla2Jhci1yb3c6aG92ZXIgewogICAgICAgICAgaGVpZ2h0OiA2cHg7CiAgICAgICAgfQoKICAgICAgICAuc2Vla2Jhci1wcm9ncmVzcyB7CiAgICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiIzNiODJmNiIsIiM2MGE1ZmEiKX07CiAgICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7CiAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAgICAgICB9CgogICAgICAgIC5jb250cm9scy1yb3cgewogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgICBnYXA6IDhweDsKICAgICAgICB9CgogICAgICAgIC5jdHJsLWJ1dHRvbiB7CiAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgICAgd2lkdGg6IDMycHg7CiAgICAgICAgICBoZWlnaHQ6IDMycHg7CiAgICAgICAgICBib3JkZXI6IG5vbmU7CiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgICAgIGNvbG9yOiAjZmZmZmZmOwogICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1cyBlYXNlOwogICAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgICAgfQoKICAgICAgICAuY3RybC1idXR0b24gZGVlcy1pY29uIHsKICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsKICAgICAgICB9CgogICAgICAgIC5jdHJsLWJ1dHRvbjpob3ZlciB7CiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpOwogICAgICAgIH0KCiAgICAgICAgLnRpbWUtZGlzcGxheSB7CiAgICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgICBmb250LXZhcmlhbnQtbnVtZXJpYzogdGFidWxhci1udW1zOwogICAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTsKICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lOwogICAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgICAgfQoKICAgICAgICAuc3BhY2VyIHsKICAgICAgICAgIGZsZXg6IDE7CiAgICAgICAgfQoKICAgICAgICAudm9sdW1lLWdyb3VwIHsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgICAgZ2FwOiA0cHg7CiAgICAgICAgfQoKICAgICAgICAudm9sdW1lLXNsaWRlciB7CiAgICAgICAgICB3aWR0aDogNjBweDsKICAgICAgICAgIGhlaWdodDogNHB4OwogICAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOwogICAgICAgICAgYXBwZWFyYW5jZTogbm9uZTsKICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTsKICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDsKICAgICAgICAgIG91dGxpbmU6IG5vbmU7CiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgfQoKICAgICAgICAudm9sdW1lLXNsaWRlcjo6LXdlYmtpdC1zbGlkZXItdGh1bWIgewogICAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOwogICAgICAgICAgd2lkdGg6IDEycHg7CiAgICAgICAgICBoZWlnaHQ6IDEycHg7CiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmOwogICAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIH0KCiAgICAgICAgLnZvbHVtZS1zbGlkZXI6Oi1tb3otcmFuZ2UtdGh1bWIgewogICAgICAgICAgd2lkdGg6IDEycHg7CiAgICAgICAgICBoZWlnaHQ6IDEycHg7CiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmOwogICAgICAgICAgYm9yZGVyOiBub25lOwogICAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIH0KCiAgICAgICAgLmxvYWRpbmctb3ZlcmxheSB7CiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgICBpbnNldDogMDsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMyk7CiAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAgICAgICB9CgogICAgICAgIC5sb2FkaW5nLXNwaW5uZXIgewogICAgICAgICAgd2lkdGg6IDQwcHg7CiAgICAgICAgICBoZWlnaHQ6IDQwcHg7CiAgICAgICAgICBib3JkZXI6IDNweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7CiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAjZmZmZmZmOwogICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgICAgICAgYW5pbWF0aW9uOiBzcGluIDAuOHMgbGluZWFyIGluZmluaXRlOwogICAgICAgIH0KCiAgICAgICAgQGtleWZyYW1lcyBzcGluIHsKICAgICAgICAgIHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfQogICAgICAgIH0KCiAgICAgICAgLmVycm9yLW92ZXJsYXkgewogICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgICAgaW5zZXQ6IDA7CiAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICAgIGdhcDogOHB4OwogICAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTsKICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KTsKICAgICAgICB9CgogICAgICAgIC5lcnJvci1vdmVybGF5IGRlZXMtaWNvbiB7CiAgICAgICAgICBjb2xvcjogI2Y4NzE3MTsKICAgICAgICAgIGZvbnQtc2l6ZTogMzJweDsKICAgICAgICB9CgogICAgICAgIC5lcnJvci10ZXh0IHsKICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICB9CiAgICAgIDwvc3R5bGU+CgogICAgICA8ZGl2CiAgICAgICAgY2xhc3M9InZpZGVvLWNvbnRhaW5lciIKICAgICAgICBAbW91c2Vtb3ZlPSR7dGhpcy5oYW5kbGVNb3VzZU1vdmV9CiAgICAgICAgQG1vdXNlbGVhdmU9JHt0aGlzLmhhbmRsZU1vdXNlTGVhdmV9CiAgICAgID4KICAgICAgICA8dmlkZW8KICAgICAgICAgIC5zcmM9JHt0aGlzLnNyY30KICAgICAgICAgIC5wb3N0ZXI9JHt0aGlzLnBvc3Rlcn0KICAgICAgICAgIC5tdXRlZD0ke3RoaXMubXV0ZWR9CiAgICAgICAgICAubG9vcD0ke3RoaXMubG9vcH0KICAgICAgICAgID9hdXRvcGxheT0ke3RoaXMuYXV0b3BsYXl9CiAgICAgICAgICA/Y29udHJvbHM9JHshdGhpcy5zaG93Q29udHJvbHN9CiAgICAgICAgICBwbGF5c2lubGluZQogICAgICAgICAgQGxvYWRlZG1ldGFkYXRhPSR7dGhpcy5oYW5kbGVMb2FkZWRNZXRhZGF0YX0KICAgICAgICAgIEBwbGF5PSR7dGhpcy5oYW5kbGVQbGF5fQogICAgICAgICAgQHBhdXNlPSR7dGhpcy5oYW5kbGVQYXVzZX0KICAgICAgICAgIEBlbmRlZD0ke3RoaXMuaGFuZGxlRW5kZWR9CiAgICAgICAgICBAdGltZXVwZGF0ZT0ke3RoaXMuaGFuZGxlVGltZVVwZGF0ZX0KICAgICAgICAgIEBlcnJvcj0ke3RoaXMuaGFuZGxlRXJyb3J9CiAgICAgICAgICBAd2FpdGluZz0keygpPT57dGhpcy5sb2FkaW5nPSEwfX0KICAgICAgICAgIEBjYW5wbGF5PSR7KCk9Pnt0aGlzLmxvYWRpbmc9ITF9fQogICAgICAgID48L3ZpZGVvPgoKICAgICAgICAke3RoaXMuc2hvd0NvbnRyb2xzP1NgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJvdmVybGF5IiBAY2xpY2s9JHt0aGlzLmhhbmRsZU92ZXJsYXlDbGlja30+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNlbnRlci1wbGF5Ij4KICAgICAgICAgICAgICA8ZGVlcy1pY29uIGljb249Imx1Y2lkZTpQbGF5Ij48L2RlZXMtaWNvbj4KICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250cm9scy1iYXIiIEBjbGljaz0ke3VlPT51ZS5zdG9wUHJvcGFnYXRpb24oKX0+CiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2Vla2Jhci1yb3ciIEBjbGljaz0ke3RoaXMuaGFuZGxlU2Vla30+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZWVrYmFyLXByb2dyZXNzIiBzdHlsZT0id2lkdGg6ICR7dGhpcy5kdXJhdGlvbj90aGlzLmN1cnJlbnRUaW1lL3RoaXMuZHVyYXRpb24qMTAwOjB9JSI+PC9kaXY+CiAgICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRyb2xzLXJvdyI+CiAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJjdHJsLWJ1dHRvbiIgQGNsaWNrPSR7dGhpcy50b2dnbGVQbGF5fT4KICAgICAgICAgICAgICAgICAgPGRlZXMtaWNvbiBpY29uPSJsdWNpZGU6JHt0aGlzLmlzUGxheWluZz8iUGF1c2UiOiJQbGF5In0iPjwvZGVlcy1pY29uPgogICAgICAgICAgICAgICAgPC9idXR0b24+CgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRpbWUtZGlzcGxheSI+CiAgICAgICAgICAgICAgICAgICR7dGhpcy5mb3JtYXRUaW1lKHRoaXMuY3VycmVudFRpbWUpfSAvICR7dGhpcy5mb3JtYXRUaW1lKHRoaXMuZHVyYXRpb24pfQogICAgICAgICAgICAgICAgPC9zcGFuPgoKICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzcGFjZXIiPjwvc3Bhbj4KCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ2b2x1bWUtZ3JvdXAiPgogICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJjdHJsLWJ1dHRvbiIgQGNsaWNrPSR7dGhpcy50b2dnbGVNdXRlfT4KICAgICAgICAgICAgICAgICAgICA8ZGVlcy1pY29uIGljb249Imx1Y2lkZToke3RoaXMubXV0ZWR8fHRoaXMudm9sdW1lPT09MD8iVm9sdW1lWCI6dGhpcy52b2x1bWU8LjU/IlZvbHVtZTEiOiJWb2x1bWUyIn0iPjwvZGVlcy1pY29uPgogICAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgICAgPGlucHV0CiAgICAgICAgICAgICAgICAgICAgY2xhc3M9InZvbHVtZS1zbGlkZXIiCiAgICAgICAgICAgICAgICAgICAgdHlwZT0icmFuZ2UiCiAgICAgICAgICAgICAgICAgICAgbWluPSIwIgogICAgICAgICAgICAgICAgICAgIG1heD0iMSIKICAgICAgICAgICAgICAgICAgICBzdGVwPSIwLjAxIgogICAgICAgICAgICAgICAgICAgIC52YWx1ZT0ke1N0cmluZyh0aGlzLm11dGVkPzA6dGhpcy52b2x1bWUpfQogICAgICAgICAgICAgICAgICAgIEBpbnB1dD0ke3RoaXMuaGFuZGxlVm9sdW1lQ2hhbmdlfQogICAgICAgICAgICAgICAgICAvPgogICAgICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iY3RybC1idXR0b24iIEBjbGljaz0ke3RoaXMudG9nZ2xlRnVsbHNjcmVlbn0gdGl0bGU9IkZ1bGxzY3JlZW4iPgogICAgICAgICAgICAgICAgICA8ZGVlcy1pY29uIGljb249Imx1Y2lkZToke3RoaXMuaXNGdWxsc2NyZWVuPyJNaW5pbWl6ZSI6Ik1heGltaXplIn0iPjwvZGVlcy1pY29uPgogICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgYDoiIn0KCiAgICAgICAgJHt0aGlzLmxvYWRpbmcmJiF0aGlzLmVycm9yP1NgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJsb2FkaW5nLW92ZXJsYXkiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJsb2FkaW5nLXNwaW5uZXIiPjwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgYDoiIn0KCiAgICAgICAgJHt0aGlzLmVycm9yP1NgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJlcnJvci1vdmVybGF5Ij4KICAgICAgICAgICAgPGRlZXMtaWNvbiBpY29uPSJsdWNpZGU6VmlkZW9PZmYiPjwvZGVlcy1pY29uPgogICAgICAgICAgICA8c3BhbiBjbGFzcz0iZXJyb3ItdGV4dCI+JHt0aGlzLmVycm9yfTwvc3Bhbj4KICAgICAgICAgIDwvZGl2PgogICAgICAgIGA6IiJ9CiAgICAgIDwvZGl2PgogICAgYH1hc3luYyBmaXJzdFVwZGF0ZWQoKXt0aGlzLnZpZGVvRWxlbWVudD10aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoInZpZGVvIil8fG51bGwsZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiZnVsbHNjcmVlbmNoYW5nZSIsdGhpcy5oYW5kbGVGdWxsc2NyZWVuQ2hhbmdlKX1hc3luYyBkaXNjb25uZWN0ZWRDYWxsYmFjaygpe2F3YWl0IHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZnVsbHNjcmVlbmNoYW5nZSIsdGhpcy5oYW5kbGVGdWxsc2NyZWVuQ2hhbmdlKSx0aGlzLmhpZGVDb250cm9sc1RpbWVyJiZjbGVhclRpbWVvdXQodGhpcy5oaWRlQ29udHJvbHNUaW1lcil9cGxheSgpe3RoaXMudmlkZW9FbGVtZW50Py5wbGF5KCl9cGF1c2UoKXt0aGlzLnZpZGVvRWxlbWVudD8ucGF1c2UoKX10b2dnbGVQbGF5KCl7dGhpcy5pc1BsYXlpbmc/dGhpcy5wYXVzZSgpOnRoaXMucGxheSgpfXNlZWsodWUpe3RoaXMudmlkZW9FbGVtZW50JiYodGhpcy52aWRlb0VsZW1lbnQuY3VycmVudFRpbWU9dWUpfXNldFZvbHVtZSh1ZSl7dGhpcy52b2x1bWU9TWF0aC5tYXgoMCxNYXRoLm1pbigxLHVlKSksdGhpcy52aWRlb0VsZW1lbnQmJih0aGlzLnZpZGVvRWxlbWVudC52b2x1bWU9dGhpcy52b2x1bWUpfXRvZ2dsZUZ1bGxzY3JlZW4oKXtsZXQgdWU9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCIudmlkZW8tY29udGFpbmVyIik7dWUmJih0aGlzLmlzRnVsbHNjcmVlbj9kb2N1bWVudC5leGl0RnVsbHNjcmVlbj8uKCk6dWUucmVxdWVzdEZ1bGxzY3JlZW4/LigpKX1oYW5kbGVMb2FkZWRNZXRhZGF0YSgpe3RoaXMudmlkZW9FbGVtZW50JiYodGhpcy5kdXJhdGlvbj10aGlzLnZpZGVvRWxlbWVudC5kdXJhdGlvbix0aGlzLmxvYWRpbmc9ITEpfWhhbmRsZVBsYXkoKXt0aGlzLmlzUGxheWluZz0hMCx0aGlzLnNjaGVkdWxlSGlkZUNvbnRyb2xzKCl9aGFuZGxlUGF1c2UoKXt0aGlzLmlzUGxheWluZz0hMSx0aGlzLmNvbnRyb2xzVmlzaWJsZT0hMH1oYW5kbGVFbmRlZCgpe3RoaXMuaXNQbGF5aW5nPSExLHRoaXMuY29udHJvbHNWaXNpYmxlPSEwfWhhbmRsZVRpbWVVcGRhdGUoKXt0aGlzLnZpZGVvRWxlbWVudCYmKHRoaXMuY3VycmVudFRpbWU9dGhpcy52aWRlb0VsZW1lbnQuY3VycmVudFRpbWUpfWhhbmRsZUVycm9yKCl7dGhpcy5lcnJvcj0iRmFpbGVkIHRvIGxvYWQgdmlkZW8iLHRoaXMubG9hZGluZz0hMX1oYW5kbGVPdmVybGF5Q2xpY2soKXt0aGlzLnRvZ2dsZVBsYXkoKX1oYW5kbGVTZWVrKHVlKXtsZXQgeWU9dWUuY3VycmVudFRhcmdldC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSwkZT0odWUuY2xpZW50WC15ZS5sZWZ0KS95ZS53aWR0aDt0aGlzLnNlZWsoJGUqdGhpcy5kdXJhdGlvbil9aGFuZGxlVm9sdW1lQ2hhbmdlKHVlKXtsZXQgeWU9cGFyc2VGbG9hdCh1ZS50YXJnZXQudmFsdWUpO3RoaXMuc2V0Vm9sdW1lKHllKSx0aGlzLm11dGVkPXllPT09MH10b2dnbGVNdXRlKCl7dGhpcy5tdXRlZD0hdGhpcy5tdXRlZCx0aGlzLnZpZGVvRWxlbWVudCYmKHRoaXMudmlkZW9FbGVtZW50Lm11dGVkPXRoaXMubXV0ZWQpfWhhbmRsZU1vdXNlTW92ZSgpe3RoaXMuY29udHJvbHNWaXNpYmxlPSEwLHRoaXMuc2NoZWR1bGVIaWRlQ29udHJvbHMoKX1oYW5kbGVNb3VzZUxlYXZlKCl7dGhpcy5pc1BsYXlpbmcmJih0aGlzLmNvbnRyb2xzVmlzaWJsZT0hMSl9c2NoZWR1bGVIaWRlQ29udHJvbHMoKXt0aGlzLmhpZGVDb250cm9sc1RpbWVyJiZjbGVhclRpbWVvdXQodGhpcy5oaWRlQ29udHJvbHNUaW1lciksdGhpcy5pc1BsYXlpbmcmJih0aGlzLmhpZGVDb250cm9sc1RpbWVyPXNldFRpbWVvdXQoKCk9Pnt0aGlzLmNvbnRyb2xzVmlzaWJsZT0hMX0sM2UzKSl9aGFuZGxlRnVsbHNjcmVlbkNoYW5nZT0oKT0+e3RoaXMuaXNGdWxsc2NyZWVuPSEhZG9jdW1lbnQuZnVsbHNjcmVlbkVsZW1lbnR9O2Zvcm1hdFRpbWUodWUpe2lmKCFpc0Zpbml0ZSh1ZSl8fHVlPDApcmV0dXJuIjA6MDAiO2xldCB5ZT1NYXRoLmZsb29yKHVlLzYwKSwkZT1NYXRoLmZsb29yKHVlJTYwKTtyZXR1cm5gJHt5ZX06JHskZS50b1N0cmluZygpLnBhZFN0YXJ0KDIsIjAiKX1gfXN0YXRpY3tzYShhLHIpfX07cmV0dXJuIFk9YX0pKCl9KTt2YXIgSUZyPWwoKCk9PnthMHQoKX0pO3ZhciBobCxzY2U9bCgoKT0+e1NlKCk7aGw9Y2xhc3N7c3RhdGljIHBkZmpzTGliO3N0YXRpYyBpbml0aWFsaXplZD0hMTtzdGF0aWMgYXN5bmMgaW5pdGlhbGl6ZSgpe3RoaXMuaW5pdGlhbGl6ZWR8fCh0aGlzLnBkZmpzTGliPWF3YWl0IGltcG9ydCgiaHR0cHM6Ly9jZG4uanNkZWxpdnIubmV0L25wbS9wZGZqcy1kaXN0QDQuMC4zNzkvK2VzbSIpLHRoaXMucGRmanNMaWIuR2xvYmFsV29ya2VyT3B0aW9ucy53b3JrZXJTcmM9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vcGRmanMtZGlzdEA0LjAuMzc5L2J1aWxkL3BkZi53b3JrZXIubWpzIix0aGlzLmluaXRpYWxpemVkPSEwKX1zdGF0aWMgYXN5bmMgbG9hZERvY3VtZW50KHQpe3JldHVybiBhd2FpdCB0aGlzLmluaXRpYWxpemUoKSxhd2FpdCB0aGlzLnBkZmpzTGliLmdldERvY3VtZW50KHQpLnByb21pc2V9c3RhdGljIHJlbGVhc2VEb2N1bWVudCh0KXt9fX0pO3ZhciBORnIsRkZyPWwoKCk9PntTZSgpO05Gcj1bbS5kZWZhdWx0U3R5bGVzLGxlYAogICAgOmhvc3QgewogICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgd2lkdGg6IDEwMCU7CiAgICAgIGhlaWdodDogNjAwcHg7CiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgZm9udC1mYW1pbHk6ICdHZWlzdCBTYW5zJywgc2Fucy1zZXJpZjsKICAgICAgY29udGFpbjogbGF5b3V0IHN0eWxlOwogICAgfQoKICAgIC5wZGYtdmlld2VyIHsKICAgICAgd2lkdGg6IDEwMCU7CiAgICAgIGhlaWdodDogMTAwJTsKICAgICAgZGlzcGxheTogZmxleDsKICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk3JSkiLCJoc2woMjE1IDIwJSAxMCUpIil9OwogICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICB9CgogICAgLnRvb2xiYXIgewogICAgICBoZWlnaHQ6IDQ4cHg7CiAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAxMDAlKSIsImhzbCgyMTUgMjAlIDE1JSkiKX07CiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDIxNCAzMSUgOTElKSIsImhzbCgyMTcgMjUlIDIyJSkiKX07CiAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgIHBhZGRpbmc6IDAgMTZweDsKICAgICAgZ2FwOiAxNnB4OwogICAgICBmbGV4LXNocmluazogMDsKICAgIH0KCiAgICAudG9vbGJhci1ncm91cCB7CiAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgIGdhcDogNHB4OwogICAgfQoKICAgIC50b29sYmFyLWdyb3VwLS1lbmQgewogICAgICBtYXJnaW4tbGVmdDogYXV0bzsKICAgIH0KCiAgICAudG9vbGJhci1idXR0b24gewogICAgICB3aWR0aDogMzJweDsKICAgICAgaGVpZ2h0OiAzMnB4OwogICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogICAgICBib3JkZXI6IG5vbmU7CiAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgZGlzcGxheTogZmxleDsKICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xNXMgZWFzZTsKICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE1IDE2JSA0NSUpIiwiaHNsKDIxNSAxNiUgNzUlKSIpfTsKICAgIH0KCiAgICAudG9vbGJhci1idXR0b246aG92ZXI6bm90KDpkaXNhYmxlZCkgewogICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDIxNCAzMSUgOTIlKSIsImhzbCgyMTcgMjUlIDIyJSkiKX07CiAgICB9CgogICAgLnRvb2xiYXItYnV0dG9uOmRpc2FibGVkIHsKICAgICAgb3BhY2l0eTogMC40OwogICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOwogICAgfQoKICAgIC50b29sYmFyLWJ1dHRvbiBkZWVzLWljb24gewogICAgICBmb250LXNpemU6IDE2cHg7CiAgICB9CgogICAgLnBhZ2UtaW5mbyB7CiAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgIGdhcDogOHB4OwogICAgICBwYWRkaW5nOiAwIDhweDsKICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUgMTYlIDQ1JSkiLCJoc2woMjE1IDE2JSA3NSUpIil9OwogICAgfQoKICAgIC5wYWdlLWlucHV0IHsKICAgICAgd2lkdGg6IDQ4cHg7CiAgICAgIGhlaWdodDogMjhweDsKICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDIxNCAzMSUgODYlKSIsImhzbCgyMTcgMjUlIDI4JSkiKX07CiAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAxMDAlKSIsImhzbCgyMTUgMjAlIDEyJSkiKX07CiAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIyMiA0NyUgMTElKSIsImhzbCgyMTAgMjAlIDk2JSkiKX07CiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICBmb250LWZhbWlseTogaW5oZXJpdDsKICAgICAgb3V0bGluZTogbm9uZTsKICAgIH0KCiAgICAucGFnZS1pbnB1dDpmb2N1cyB7CiAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTcgOTElIDYwJSkiLCJoc2woMjEzIDkzJSA2OCUpIil9OwogICAgfQoKICAgIC5wYWdlLXNlcGFyYXRvciB7CiAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNSAxNiUgNjAlKSIsImhzbCgyMTUgMTYlIDUwJSkiKX07CiAgICB9CgogICAgLnpvb20tbGV2ZWwgewogICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgIG1pbi13aWR0aDogNDhweDsKICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgfQoKICAgIC52aWV3ZXItY29udGFpbmVyIHsKICAgICAgZmxleDogMTsKICAgICAgZGlzcGxheTogZmxleDsKICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICBtaW4taGVpZ2h0OiAwOwogICAgfQoKICAgIC5zaWRlYmFyIHsKICAgICAgd2lkdGg6IDIwMHB4OwogICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTAwJSkiLCJoc2woMjE1IDIwJSAxNSUpIil9OwogICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDIxNCAzMSUgOTElKSIsImhzbCgyMTcgMjUlIDIyJSkiKX07CiAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgIGhlaWdodDogMTAwJTsKICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgIH0KCiAgICAuc2lkZWJhci1oZWFkZXIgewogICAgICBoZWlnaHQ6IDQwcHg7CiAgICAgIHBhZGRpbmc6IDAgMTJweDsKICAgICAgZGlzcGxheTogZmxleDsKICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwogICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgyMTQgMzElIDkxJSkiLCJoc2woMjE3IDI1JSAyMiUpIil9OwogICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNSAxNiUgNDUlKSIsImhzbCgyMTUgMTYlIDc1JSkiKX07CiAgICB9CgogICAgLnNpZGViYXItY2xvc2UgewogICAgICB3aWR0aDogMjRweDsKICAgICAgaGVpZ2h0OiAyNHB4OwogICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogICAgICBib3JkZXI6IG5vbmU7CiAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgZGlzcGxheTogZmxleDsKICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNSAxNiUgNDUlKSIsImhzbCgyMTUgMTYlIDc1JSkiKX07CiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xNXMgZWFzZTsKICAgIH0KCiAgICAuc2lkZWJhci1jbG9zZTpob3ZlciB7CiAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjE0IDMxJSA5MiUpIiwiaHNsKDIxNyAyNSUgMjIlKSIpfTsKICAgIH0KCiAgICAuc2lkZWJhci1jbG9zZSBkZWVzLWljb24gewogICAgICBmb250LXNpemU6IDE0cHg7CiAgICB9CgogICAgLnNpZGViYXItY29udGVudCB7CiAgICAgIGZsZXg6IDE7CiAgICAgIG92ZXJmbG93LXk6IGF1dG87CiAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjsKICAgICAgcGFkZGluZzogMTJweDsKICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgIG92ZXJzY3JvbGwtYmVoYXZpb3I6IGNvbnRhaW47CiAgICAgIG1pbi1oZWlnaHQ6IDA7CiAgICB9CgogICAgLnRodW1ibmFpbCB7CiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgYm9yZGVyLXJhZGl1czogOHB4OwogICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50OwogICAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xNXMgZWFzZTsKICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk1JSkiLCJoc2woMjE1IDIwJSAxOCUpIil9OwogICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgd2lkdGg6IDEwMCU7CiAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7CiAgICAgIC8qIERlZmF1bHQgQTQgYXNwZWN0IHJhdGlvICgyOTdtbSAvIDIxMG1tIOKJiCAxLjQxNCkgKi8KICAgICAgbWluLWhlaWdodDogY2FsYygxNzZweCAqIDEuNDE0KTsKICAgIH0KCiAgICAudGh1bWJuYWlsOmxhc3QtY2hpbGQgewogICAgICBtYXJnaW4tYm90dG9tOiAwOwogICAgfQoKICAgIC50aHVtYm5haWw6aG92ZXIgewogICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE0IDMxJSA4NiUpIiwiaHNsKDIxNyAyNSUgMzUlKSIpfTsKICAgIH0KCiAgICAudGh1bWJuYWlsLmFjdGl2ZSB7CiAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTcgOTElIDYwJSkiLCJoc2woMjEzIDkzJSA2OCUpIil9OwogICAgfQoKICAgIC50aHVtYm5haWwtY2FudmFzIHsKICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgIHdpZHRoOiAxMDAlOwogICAgICBoZWlnaHQ6IGF1dG87CiAgICAgIGltYWdlLXJlbmRlcmluZzogLXdlYmtpdC1vcHRpbWl6ZS1jb250cmFzdDsKICAgICAgaW1hZ2UtcmVuZGVyaW5nOiBjcmlzcC1lZGdlczsKICAgIH0KCiAgICAudGh1bWJuYWlsLW51bWJlciB7CiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgYm90dG9tOiA0cHg7CiAgICAgIHJpZ2h0OiA0cHg7CiAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDAsIDAsIDAsIDAuNykiLCJyZ2JhKDAsIDAsIDAsIDAuOCkiKX07CiAgICAgIGNvbG9yOiB3aGl0ZTsKICAgICAgZm9udC1zaXplOiAxMXB4OwogICAgICBmb250LXdlaWdodDogNTAwOwogICAgICBwYWRkaW5nOiAycHggNnB4OwogICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICB9CgogICAgLnZpZXdlci1tYWluIHsKICAgICAgZmxleDogMTsKICAgICAgb3ZlcmZsb3cteTogYXV0bzsKICAgICAgb3ZlcmZsb3cteDogaGlkZGVuOwogICAgICBwYWRkaW5nOiAyMHB4OwogICAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDsKICAgICAgb3ZlcnNjcm9sbC1iZWhhdmlvcjogY29udGFpbjsKICAgICAgbWluLWhlaWdodDogMDsKICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgfQoKICAgIC5sb2FkaW5nLWNvbnRhaW5lciB7CiAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgIGdhcDogMTZweDsKICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE1IDE2JSA0NSUpIiwiaHNsKDIxNSAxNiUgNzUlKSIpfTsKICAgIH0KCiAgICAubG9hZGluZy1zcGlubmVyIHsKICAgICAgd2lkdGg6IDMycHg7CiAgICAgIGhlaWdodDogMzJweDsKICAgICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgICBib3JkZXI6IDNweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDIxNCAzMSUgODYlKSIsImhzbCgyMTcgMjUlIDI4JSkiKX07CiAgICAgIGJvcmRlci10b3AtY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE3IDkxJSA2MCUpIiwiaHNsKDIxMyA5MyUgNjglKSIpfTsKICAgICAgYW5pbWF0aW9uOiBzcGluIDAuOHMgbGluZWFyIGluZmluaXRlOwogICAgfQoKICAgIEBrZXlmcmFtZXMgc3BpbiB7CiAgICAgIHRvIHsKICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOwogICAgICB9CiAgICB9CgogICAgLmxvYWRpbmctdGV4dCB7CiAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgIH0KCiAgICAucGFnZXMtY29udGFpbmVyIHsKICAgICAgZGlzcGxheTogZmxleDsKICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgZ2FwOiAyMHB4OwogICAgfQoKICAgIC5wYWdlLXdyYXBwZXIgewogICAgICBkaXNwbGF5OiBmbGV4OwogICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgd2lkdGg6IDEwMCU7CiAgICB9CgogICAgLmNhbnZhcy1jb250YWluZXIgewogICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTsKICAgICAgYm94LXNoYWRvdzogMCAycHggMTJweCAke20uYmRUaGVtZSgicmdiYSgwLCAwLCAwLCAwLjEpIiwicmdiYSgwLCAwLCAwLCAwLjMpIil9OwogICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgfQoKICAgIC5wYWdlLWNhbnZhcyB7CiAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICBpbWFnZS1yZW5kZXJpbmc6IC13ZWJraXQtb3B0aW1pemUtY29udHJhc3Q7CiAgICAgIGltYWdlLXJlbmRlcmluZzogY3Jpc3AtZWRnZXM7CiAgICB9CgogICAgLyogVGV4dCBsYXllciBmb3Igc2VsZWN0aW9uICovCiAgICAudGV4dC1sYXllciB7CiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgaW5zZXQ6IDA7CiAgICAgIG92ZXJmbG93OiB2aXNpYmxlOwogICAgICBsaW5lLWhlaWdodDogMTsKICAgICAgdGV4dC1zaXplLWFkanVzdDogbm9uZTsKICAgICAgZm9yY2VkLWNvbG9yLWFkanVzdDogbm9uZTsKICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwOwogICAgICB6LWluZGV4OiAxOwogICAgICB1c2VyLXNlbGVjdDogdGV4dDsKICAgICAgLXdlYmtpdC11c2VyLXNlbGVjdDogdGV4dDsKICAgIH0KCiAgICAudGV4dC1sYXllciBzcGFuLAogICAgLnRleHQtbGF5ZXIgYnIgewogICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7CiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgd2hpdGUtc3BhY2U6IHByZTsKICAgICAgY3Vyc29yOiB0ZXh0OwogICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwJSAwJTsKICAgICAgdXNlci1zZWxlY3Q6IHRleHQ7CiAgICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IHRleHQ7CiAgICB9CgogICAgLnRleHQtbGF5ZXIgOjpzZWxlY3Rpb24gewogICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDEwMCwgMjAwLCAwLjMpOwogICAgfQoKICAgIC50ZXh0LWxheWVyIGJyOjpzZWxlY3Rpb24gewogICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgIH0KCiAgICAudGV4dC1sYXllciAuZW5kT2ZDb250ZW50IHsKICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgaW5zZXQ6IDEwMCUgMCAwOwogICAgICB6LWluZGV4OiAwOwogICAgICBjdXJzb3I6IGRlZmF1bHQ7CiAgICAgIHVzZXItc2VsZWN0OiBub25lOwogICAgfQoKICAgIC50ZXh0LWxheWVyLnNlbGVjdGluZyAuZW5kT2ZDb250ZW50IHsKICAgICAgdG9wOiAwOwogICAgfQoKICAgIC5wZGYtdmlld2VyLndpdGgtc2lkZWJhciAudmlld2VyLW1haW4gewogICAgICBtYXJnaW4tbGVmdDogMDsKICAgIH0KICBgXX0pO3ZhciBPRnIsUkZyPWwoKCk9PntTZSgpO09Gcj0oKT0+U2AKICA8c3R5bGU+CiAgICAuZGVtby1jb250YWluZXIgewogICAgICBwYWRkaW5nOiA0MHB4OwogICAgICBiYWNrZ3JvdW5kOiAjZjVmNWY1OwogICAgfQoKICAgIC5kZW1vLXNlY3Rpb24gewogICAgICBtYXJnaW4tYm90dG9tOiA0MHB4OwogICAgfQoKICAgIGgzIHsKICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsKICAgICAgZm9udC1zaXplOiAxOHB4OwogICAgICBmb250LXdlaWdodDogNjAwOwogICAgfQoKICAgIGRlZXMtcGRmLXZpZXdlciB7CiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7CiAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgIH0KCiAgICAudmlld2VyLXRhbGwgewogICAgICBoZWlnaHQ6IDgwMHB4OwogICAgfQoKICAgIC52aWV3ZXItY29tcGFjdCB7CiAgICAgIGhlaWdodDogNTAwcHg7CiAgICB9CiAgPC9zdHlsZT4KCiAgPGRpdiBjbGFzcz0iZGVtby1jb250YWluZXIiPgogICAgPGRpdiBjbGFzcz0iZGVtby1zZWN0aW9uIj4KICAgICAgPGgzPkZ1bGwgRmVhdHVyZWQgUERGIFZpZXdlciB3aXRoIFRvb2xiYXI8L2gzPgogICAgICA8ZGVlcy1wZGYtdmlld2VyCiAgICAgICAgY2xhc3M9InZpZXdlci10YWxsIgogICAgICAgIHBkZlVybD0iaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL21vemlsbGEvcGRmLmpzL2JhMmVkZWFlL3dlYi9jb21wcmVzc2VkLnRyYWNlbW9ua2V5LXBsZGktMDkucGRmIgogICAgICAgIHNob3dUb29sYmFyPSJ0cnVlIgogICAgICAgIHNob3dTaWRlYmFyPSJmYWxzZSIKICAgICAgICBpbml0aWFsWm9vbT0icGFnZS1maXQiCiAgICAgID48L2RlZXMtcGRmLXZpZXdlcj4KICAgIDwvZGl2PgoKICAgIDxkaXYgY2xhc3M9ImRlbW8tc2VjdGlvbiI+CiAgICAgIDxoMz5QREYgVmlld2VyIHdpdGggU2lkZWJhciBOYXZpZ2F0aW9uPC9oMz4KICAgICAgPGRlZXMtcGRmLXZpZXdlcgogICAgICAgIGNsYXNzPSJ2aWV3ZXItdGFsbCIKICAgICAgICBwZGZVcmw9Imh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9tb3ppbGxhL3BkZi5qcy9iYTJlZGVhZS93ZWIvY29tcHJlc3NlZC50cmFjZW1vbmtleS1wbGRpLTA5LnBkZiIKICAgICAgICBzaG93VG9vbGJhcj0idHJ1ZSIKICAgICAgICBzaG93U2lkZWJhcj0idHJ1ZSIKICAgICAgICBpbml0aWFsWm9vbT0icGFnZS13aWR0aCIKICAgICAgPjwvZGVlcy1wZGYtdmlld2VyPgogICAgPC9kaXY+CgogICAgPGRpdiBjbGFzcz0iZGVtby1zZWN0aW9uIj4KICAgICAgPGgzPkNvbXBhY3QgVmlld2VyIHdpdGhvdXQgQ29udHJvbHM8L2gzPgogICAgICA8ZGVlcy1wZGYtdmlld2VyCiAgICAgICAgY2xhc3M9InZpZXdlci1jb21wYWN0IgogICAgICAgIHBkZlVybD0iaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL21vemlsbGEvcGRmLmpzL2JhMmVkZWFlL2V4YW1wbGVzL2xlYXJuaW5nL2hlbGxvd29ybGQucGRmIgogICAgICAgIHNob3dUb29sYmFyPSJmYWxzZSIKICAgICAgICBzaG93U2lkZWJhcj0iZmFsc2UiCiAgICAgICAgaW5pdGlhbFpvb209ImF1dG8iCiAgICAgID48L2RlZXMtcGRmLXZpZXdlcj4KICAgIDwvZGl2PgogIDwvZGl2PgpgfSk7dmFyIGZuLExhLEJGcixpMHQ9bCgoKT0+e1NlKCk7c2NlKCk7RkZyKCk7UkZyKCk7YnIoKTtmbj1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LExhPWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSxCRnI9KCgpPT57bGV0IGU9W3plKCJkZWVzLXBkZi12aWV3ZXIiKV0sdCxyPVtdLGEsaT1EZSxvLG49W10scz1bXSxjLGQ9W10sZj1bXSx1LHA9W10saD1bXSxiLHg9W10sZz1bXSx2LHc9W10sTT1bXSxGLEM9W10saz1bXSxOLCQ9W10sST1bXSxCLHo9W10seT1bXSxFLF89W10sUD1bXSxWLEg9W10sVz1bXSxhZSxUPVtdLEo9W10sZmUsTD1bXSxRPVtdO3ZhciBrZT1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IEc9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baih7dHlwZTpTdHJpbmd9KV0sYz1baih7dHlwZTpOdW1iZXJ9KV0sdT1baih7dHlwZTpTdHJpbmd9KV0sYj1baih7dHlwZTpCb29sZWFufSldLHY9W2ooe3R5cGU6Qm9vbGVhbn0pXSxGPVtqKHt0eXBlOk51bWJlcn0pXSxOPVtqKHt0eXBlOk51bWJlcn0pXSxCPVtqKHt0eXBlOk51bWJlcn0pXSxFPVtqKHt0eXBlOkJvb2xlYW59KV0sVj1baih7dHlwZTpTdHJpbmd9KV0sYWU9W2ooe3R5cGU6QXJyYXl9KV0sZmU9W2ooe3R5cGU6QXJyYXl9KV0sZm4odGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJwZGZVcmwiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOkE9PiJwZGZVcmwiaW4gQSxnZXQ6QT0+QS5wZGZVcmwsc2V0OihBLEQpPT57QS5wZGZVcmw9RH19LG1ldGFkYXRhOkd9LG4scyksZm4odGhpcyxudWxsLGMse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJpbml0aWFsUGFnZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6QT0+ImluaXRpYWxQYWdlImluIEEsZ2V0OkE9PkEuaW5pdGlhbFBhZ2Usc2V0OihBLEQpPT57QS5pbml0aWFsUGFnZT1EfX0sbWV0YWRhdGE6R30sZCxmKSxmbih0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImluaXRpYWxab29tIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpBPT4iaW5pdGlhbFpvb20iaW4gQSxnZXQ6QT0+QS5pbml0aWFsWm9vbSxzZXQ6KEEsRCk9PntBLmluaXRpYWxab29tPUR9fSxtZXRhZGF0YTpHfSxwLGgpLGZuKHRoaXMsbnVsbCxiLHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2hvd1Rvb2xiYXIiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOkE9PiJzaG93VG9vbGJhciJpbiBBLGdldDpBPT5BLnNob3dUb29sYmFyLHNldDooQSxEKT0+e0Euc2hvd1Rvb2xiYXI9RH19LG1ldGFkYXRhOkd9LHgsZyksZm4odGhpcyxudWxsLHYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzaG93U2lkZWJhciIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6QT0+InNob3dTaWRlYmFyImluIEEsZ2V0OkE9PkEuc2hvd1NpZGViYXIsc2V0OihBLEQpPT57QS5zaG93U2lkZWJhcj1EfX0sbWV0YWRhdGE6R30sdyxNKSxmbih0aGlzLG51bGwsRix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImN1cnJlbnRQYWdlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpBPT4iY3VycmVudFBhZ2UiaW4gQSxnZXQ6QT0+QS5jdXJyZW50UGFnZSxzZXQ6KEEsRCk9PntBLmN1cnJlbnRQYWdlPUR9fSxtZXRhZGF0YTpHfSxDLGspLGZuKHRoaXMsbnVsbCxOLHtraW5kOiJhY2Nlc3NvciIsbmFtZToidG90YWxQYWdlcyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6QT0+InRvdGFsUGFnZXMiaW4gQSxnZXQ6QT0+QS50b3RhbFBhZ2VzLHNldDooQSxEKT0+e0EudG90YWxQYWdlcz1EfX0sbWV0YWRhdGE6R30sJCxJKSxmbih0aGlzLG51bGwsQix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImN1cnJlbnRab29tIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpBPT4iY3VycmVudFpvb20iaW4gQSxnZXQ6QT0+QS5jdXJyZW50Wm9vbSxzZXQ6KEEsRCk9PntBLmN1cnJlbnRab29tPUR9fSxtZXRhZGF0YTpHfSx6LHkpLGZuKHRoaXMsbnVsbCxFLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibG9hZGluZyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6QT0+ImxvYWRpbmciaW4gQSxnZXQ6QT0+QS5sb2FkaW5nLHNldDooQSxEKT0+e0EubG9hZGluZz1EfX0sbWV0YWRhdGE6R30sXyxQKSxmbih0aGlzLG51bGwsVix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImRvY3VtZW50SWQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOkE9PiJkb2N1bWVudElkImluIEEsZ2V0OkE9PkEuZG9jdW1lbnRJZCxzZXQ6KEEsRCk9PntBLmRvY3VtZW50SWQ9RH19LG1ldGFkYXRhOkd9LEgsVyksZm4odGhpcyxudWxsLGFlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToidGh1bWJuYWlsRGF0YSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6QT0+InRodW1ibmFpbERhdGEiaW4gQSxnZXQ6QT0+QS50aHVtYm5haWxEYXRhLHNldDooQSxEKT0+e0EudGh1bWJuYWlsRGF0YT1EfX0sbWV0YWRhdGE6R30sVCxKKSxmbih0aGlzLG51bGwsZmUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJwYWdlRGF0YSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6QT0+InBhZ2VEYXRhImluIEEsZ2V0OkE9PkEucGFnZURhdGEsc2V0OihBLEQpPT57QS5wYWdlRGF0YT1EfX0sbWV0YWRhdGE6R30sTCxRKSxmbihudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTpHfSxudWxsLHIpLGtlPWE9dC52YWx1ZSxHJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOkd9KX1zdGF0aWMgZGVtbz1PRnI7c3RhdGljIGRlbW9Hcm91cHM9WyJNZWRpYSIsIlBERiJdO3N0YXRpYyBzdHlsZXM9TkZyOyNlPUxhKHRoaXMsbiwiIik7Z2V0IHBkZlVybCgpe3JldHVybiB0aGlzLiNlfXNldCBwZGZVcmwoRyl7dGhpcy4jZT1HfSN0PShMYSh0aGlzLHMpLExhKHRoaXMsZCwxKSk7Z2V0IGluaXRpYWxQYWdlKCl7cmV0dXJuIHRoaXMuI3R9c2V0IGluaXRpYWxQYWdlKEcpe3RoaXMuI3Q9R30jcj0oTGEodGhpcyxmKSxMYSh0aGlzLHAsImF1dG8iKSk7Z2V0IGluaXRpYWxab29tKCl7cmV0dXJuIHRoaXMuI3J9c2V0IGluaXRpYWxab29tKEcpe3RoaXMuI3I9R30jYT0oTGEodGhpcyxoKSxMYSh0aGlzLHgsITApKTtnZXQgc2hvd1Rvb2xiYXIoKXtyZXR1cm4gdGhpcy4jYX1zZXQgc2hvd1Rvb2xiYXIoRyl7dGhpcy4jYT1HfSNpPShMYSh0aGlzLGcpLExhKHRoaXMsdywhMSkpO2dldCBzaG93U2lkZWJhcigpe3JldHVybiB0aGlzLiNpfXNldCBzaG93U2lkZWJhcihHKXt0aGlzLiNpPUd9I289KExhKHRoaXMsTSksTGEodGhpcyxDLDEpKTtnZXQgY3VycmVudFBhZ2UoKXtyZXR1cm4gdGhpcy4jb31zZXQgY3VycmVudFBhZ2UoRyl7dGhpcy4jbz1HfSNuPShMYSh0aGlzLGspLExhKHRoaXMsJCwxKSk7Z2V0IHRvdGFsUGFnZXMoKXtyZXR1cm4gdGhpcy4jbn1zZXQgdG90YWxQYWdlcyhHKXt0aGlzLiNuPUd9I3M9KExhKHRoaXMsSSksTGEodGhpcyx6LDEpKTtnZXQgY3VycmVudFpvb20oKXtyZXR1cm4gdGhpcy4jc31zZXQgY3VycmVudFpvb20oRyl7dGhpcy4jcz1HfSNsPShMYSh0aGlzLHkpLExhKHRoaXMsXywhMSkpO2dldCBsb2FkaW5nKCl7cmV0dXJuIHRoaXMuI2x9c2V0IGxvYWRpbmcoRyl7dGhpcy4jbD1HfSNjPShMYSh0aGlzLFApLExhKHRoaXMsSCwiIikpO2dldCBkb2N1bWVudElkKCl7cmV0dXJuIHRoaXMuI2N9c2V0IGRvY3VtZW50SWQoRyl7dGhpcy4jYz1HfSNkPShMYSh0aGlzLFcpLExhKHRoaXMsVCxbXSkpO2dldCB0aHVtYm5haWxEYXRhKCl7cmV0dXJuIHRoaXMuI2R9c2V0IHRodW1ibmFpbERhdGEoRyl7dGhpcy4jZD1HfSN1PShMYSh0aGlzLEopLExhKHRoaXMsTCxbXSkpO2dldCBwYWdlRGF0YSgpe3JldHVybiB0aGlzLiN1fXNldCBwYWdlRGF0YShHKXt0aGlzLiN1PUd9cGRmRG9jdW1lbnQ9TGEodGhpcyxRKTtyZW5kZXJTdGF0ZT0iaWRsZSI7cmVuZGVyQWJvcnRDb250cm9sbGVyPW51bGw7cGFnZVJlbmRlcmluZz0hMTtwYWdlTnVtUGVuZGluZz1udWxsO2N1cnJlbnRSZW5kZXJUYXNrPW51bGw7Y3VycmVudFJlbmRlclByb21pc2U9bnVsbDt0aHVtYm5haWxSZW5kZXJUYXNrcz1bXTtwYWdlUmVuZGVyVGFza3M9bmV3IE1hcDt0ZXh0TGF5ZXJSZW5kZXJUYXNrcz1uZXcgTWFwO2NhbnZhcztjdHg7dmlld2VyTWFpbj1udWxsO3Jlc2l6ZU9ic2VydmVyO2ludGVyc2VjdGlvbk9ic2VydmVyO3Njcm9sbFRocm90dGxlVGltZW91dDt2aWV3cG9ydERpbWVuc2lvbnM9e3dpZHRoOjAsaGVpZ2h0OjB9O3ZpZXdwb3J0TW9kZT0iYXV0byI7TUFOVUFMX01JTl9aT09NPS41O01BTlVBTF9NQVhfWk9PTT0zO0FCU09MVVRFX01JTl9aT09NPS4xO0FCU09MVVRFX01BWF9aT09NPTQ7UEFHRV9HQVA9MjA7UkVOREVSX0JVRkZFUj0zO2NvbnN0cnVjdG9yKCl7c3VwZXIoKX1yZW5kZXIoKXtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0icGRmLXZpZXdlciAke3RoaXMuc2hvd1NpZGViYXI/IndpdGgtc2lkZWJhciI6IiJ9Ij4KICAgICAgICAke3RoaXMuc2hvd1Rvb2xiYXI/U2AKICAgICAgICAgIDxkaXYgY2xhc3M9InRvb2xiYXIiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0b29sYmFyLWdyb3VwIj4KICAgICAgICAgICAgICA8YnV0dG9uCiAgICAgICAgICAgICAgICBjbGFzcz0idG9vbGJhci1idXR0b24iCiAgICAgICAgICAgICAgICBAY2xpY2s9JHt0aGlzLnByZXZpb3VzUGFnZX0KICAgICAgICAgICAgICAgID9kaXNhYmxlZD0ke3RoaXMuY3VycmVudFBhZ2U8PTF9CiAgICAgICAgICAgICAgPgogICAgICAgICAgICAgICAgPGRlZXMtaWNvbiBpY29uPSJsdWNpZGU6Q2hldnJvbkxlZnQiPjwvZGVlcy1pY29uPgogICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBhZ2UtaW5mbyI+CiAgICAgICAgICAgICAgICA8aW5wdXQKICAgICAgICAgICAgICAgICAgdHlwZT0ibnVtYmVyIgogICAgICAgICAgICAgICAgICBtaW49IjEiCiAgICAgICAgICAgICAgICAgIG1heD0iJHt0aGlzLnRvdGFsUGFnZXN9IgogICAgICAgICAgICAgICAgICAudmFsdWU9JHtTdHJpbmcodGhpcy5jdXJyZW50UGFnZSl9CiAgICAgICAgICAgICAgICAgIEBjaGFuZ2U9JHt0aGlzLmhhbmRsZVBhZ2VJbnB1dH0KICAgICAgICAgICAgICAgICAgY2xhc3M9InBhZ2UtaW5wdXQiCiAgICAgICAgICAgICAgICAvPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InBhZ2Utc2VwYXJhdG9yIj4vPC9zcGFuPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InBhZ2UtdG90YWwiPiR7dGhpcy50b3RhbFBhZ2VzfTwvc3Bhbj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICA8YnV0dG9uCiAgICAgICAgICAgICAgICBjbGFzcz0idG9vbGJhci1idXR0b24iCiAgICAgICAgICAgICAgICBAY2xpY2s9JHt0aGlzLm5leHRQYWdlfQogICAgICAgICAgICAgICAgP2Rpc2FibGVkPSR7dGhpcy5jdXJyZW50UGFnZT49dGhpcy50b3RhbFBhZ2VzfQogICAgICAgICAgICAgID4KICAgICAgICAgICAgICAgIDxkZWVzLWljb24gaWNvbj0ibHVjaWRlOkNoZXZyb25SaWdodCI+PC9kZWVzLWljb24+CiAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgPGRpdiBjbGFzcz0idG9vbGJhci1ncm91cCI+CiAgICAgICAgICAgICAgPGJ1dHRvbgogICAgICAgICAgICAgICAgY2xhc3M9InRvb2xiYXItYnV0dG9uIgogICAgICAgICAgICAgICAgQGNsaWNrPSR7dGhpcy56b29tT3V0fQogICAgICAgICAgICAgICAgP2Rpc2FibGVkPSR7IXRoaXMuY2FuWm9vbU91dH0KICAgICAgICAgICAgICA+CiAgICAgICAgICAgICAgICA8ZGVlcy1pY29uIGljb249Imx1Y2lkZTpab29tT3V0Ij48L2RlZXMtaWNvbj4KICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICA8YnV0dG9uCiAgICAgICAgICAgICAgICBjbGFzcz0idG9vbGJhci1idXR0b24iCiAgICAgICAgICAgICAgICBAY2xpY2s9JHt0aGlzLnJlc2V0Wm9vbX0KICAgICAgICAgICAgICA+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iem9vbS1sZXZlbCI+JHtNYXRoLnJvdW5kKHRoaXMuY3VycmVudFpvb20qMTAwKX0lPC9zcGFuPgogICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgIDxidXR0b24KICAgICAgICAgICAgICAgIGNsYXNzPSJ0b29sYmFyLWJ1dHRvbiIKICAgICAgICAgICAgICAgIEBjbGljaz0ke3RoaXMuem9vbUlufQogICAgICAgICAgICAgICAgP2Rpc2FibGVkPSR7IXRoaXMuY2FuWm9vbUlufQogICAgICAgICAgICAgID4KICAgICAgICAgICAgICAgIDxkZWVzLWljb24gaWNvbj0ibHVjaWRlOlpvb21JbiI+PC9kZWVzLWljb24+CiAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgPGRpdiBjbGFzcz0idG9vbGJhci1ncm91cCI+CiAgICAgICAgICAgICAgPGJ1dHRvbgogICAgICAgICAgICAgICAgY2xhc3M9InRvb2xiYXItYnV0dG9uIgogICAgICAgICAgICAgICAgQGNsaWNrPSR7dGhpcy5maXRUb1BhZ2V9CiAgICAgICAgICAgICAgICB0aXRsZT0iRml0IHRvIHBhZ2UiCiAgICAgICAgICAgICAgPgogICAgICAgICAgICAgICAgPGRlZXMtaWNvbiBpY29uPSJsdWNpZGU6TWF4aW1pemUiPjwvZGVlcy1pY29uPgogICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgIDxidXR0b24KICAgICAgICAgICAgICAgIGNsYXNzPSJ0b29sYmFyLWJ1dHRvbiIKICAgICAgICAgICAgICAgIEBjbGljaz0ke3RoaXMuZml0VG9XaWR0aH0KICAgICAgICAgICAgICAgIHRpdGxlPSJGaXQgdG8gd2lkdGgiCiAgICAgICAgICAgICAgPgogICAgICAgICAgICAgICAgPGRlZXMtaWNvbiBpY29uPSJsdWNpZGU6QXJyb3dMZWZ0UmlnaHQiPjwvZGVlcy1pY29uPgogICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRvb2xiYXItZ3JvdXAgdG9vbGJhci1ncm91cC0tZW5kIj4KICAgICAgICAgICAgICA8YnV0dG9uCiAgICAgICAgICAgICAgICBjbGFzcz0idG9vbGJhci1idXR0b24iCiAgICAgICAgICAgICAgICBAY2xpY2s9JHsoKT0+dGhpcy5zaG93U2lkZWJhcj0hdGhpcy5zaG93U2lkZWJhcn0KICAgICAgICAgICAgICAgIHRpdGxlPSIke3RoaXMuc2hvd1NpZGViYXI/IkhpZGUgdGh1bWJuYWlscyI6IlNob3cgdGh1bWJuYWlscyJ9IgogICAgICAgICAgICAgID4KICAgICAgICAgICAgICAgIDxkZWVzLWljb24gaWNvbj0iJHt0aGlzLnNob3dTaWRlYmFyPyJsdWNpZGU6U2lkZWJhckNsb3NlIjoibHVjaWRlOlNpZGViYXIifSI+PC9kZWVzLWljb24+CiAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgPGJ1dHRvbgogICAgICAgICAgICAgICAgY2xhc3M9InRvb2xiYXItYnV0dG9uIgogICAgICAgICAgICAgICAgQGNsaWNrPSR7dGhpcy5kb3dubG9hZFBkZn0KICAgICAgICAgICAgICAgIHRpdGxlPSJEb3dubG9hZCIKICAgICAgICAgICAgICA+CiAgICAgICAgICAgICAgICA8ZGVlcy1pY29uIGljb249Imx1Y2lkZTpEb3dubG9hZCI+PC9kZWVzLWljb24+CiAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgPGJ1dHRvbgogICAgICAgICAgICAgICAgY2xhc3M9InRvb2xiYXItYnV0dG9uIgogICAgICAgICAgICAgICAgQGNsaWNrPSR7dGhpcy5wcmludFBkZn0KICAgICAgICAgICAgICAgIHRpdGxlPSJQcmludCIKICAgICAgICAgICAgICA+CiAgICAgICAgICAgICAgICA8ZGVlcy1pY29uIGljb249Imx1Y2lkZTpQcmludGVyIj48L2RlZXMtaWNvbj4KICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICBgOiIifQoKICAgICAgICA8ZGl2IGNsYXNzPSJ2aWV3ZXItY29udGFpbmVyIj4KICAgICAgICAgICR7dGhpcy5zaG93U2lkZWJhcj9TYAogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzaWRlYmFyIj4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzaWRlYmFyLWhlYWRlciI+CiAgICAgICAgICAgICAgICA8c3Bhbj5QYWdlczwvc3Bhbj4KICAgICAgICAgICAgICAgIDxidXR0b24KICAgICAgICAgICAgICAgICAgY2xhc3M9InNpZGViYXItY2xvc2UiCiAgICAgICAgICAgICAgICAgIEBjbGljaz0keygpPT50aGlzLnNob3dTaWRlYmFyPSExfQogICAgICAgICAgICAgICAgPgogICAgICAgICAgICAgICAgICA8ZGVlcy1pY29uIGljb249Imx1Y2lkZTpYIj48L2RlZXMtaWNvbj4KICAgICAgICAgICAgICAgIDwvYnV0dG9uPgogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9InNpZGViYXItY29udGVudCI+CiAgICAgICAgICAgICAgICAke0huLmtleWVkKHRoaXMuZG9jdW1lbnRJZCxTYAogICAgICAgICAgICAgICAgICAke0huLnJlcGVhdCh0aGlzLnRodW1ibmFpbERhdGEsRz0+Ry5wYWdlLEc9PlNgCiAgICAgICAgICAgICAgICAgICAgICA8ZGl2CiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPSJ0aHVtYm5haWwgJHt0aGlzLmN1cnJlbnRQYWdlPT09Ry5wYWdlPyJhY3RpdmUiOiIifSIKICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wYWdlPSIke0cucGFnZX0iCiAgICAgICAgICAgICAgICAgICAgICAgIEBjbGljaz0ke3RoaXMuaGFuZGxlVGh1bWJuYWlsQ2xpY2t9CiAgICAgICAgICAgICAgICAgICAgICA+CiAgICAgICAgICAgICAgICAgICAgICAgIDxjYW52YXMgY2xhc3M9InRodW1ibmFpbC1jYW52YXMiIGRhdGEtcGFnZT0iJHtHLnBhZ2V9Ij48L2NhbnZhcz4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRodW1ibmFpbC1udW1iZXIiPiR7Ry5wYWdlfTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIGApfQogICAgICAgICAgICAgICAgYCl9CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgYDoiIn0KCiAgICAgICAgICA8ZGl2IGNsYXNzPSJ2aWV3ZXItbWFpbiIgQHNjcm9sbD0ke3RoaXMuaGFuZGxlU2Nyb2xsfT4KICAgICAgICAgICAgJHt0aGlzLmxvYWRpbmc/U2AKICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsb2FkaW5nLWNvbnRhaW5lciI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsb2FkaW5nLXNwaW5uZXIiPjwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibG9hZGluZy10ZXh0Ij5Mb2FkaW5nIFBERi4uLjwvZGl2PgogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICBgOlNgCiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFnZXMtY29udGFpbmVyIj4KICAgICAgICAgICAgICAgICR7SG4ucmVwZWF0KHRoaXMucGFnZURhdGEsRz0+Ry5wYWdlLEc9PlNgCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFnZS13cmFwcGVyIiBkYXRhLXBhZ2U9IiR7Ry5wYWdlfSI+CiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYW52YXMtY29udGFpbmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgPGNhbnZhcyBjbGFzcz0icGFnZS1jYW52YXMiIGRhdGEtcGFnZT0iJHtHLnBhZ2V9Ij48L2NhbnZhcz4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC1sYXllciIgZGF0YS1wYWdlPSIke0cucGFnZX0iPjwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgIGApfQogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICBgfQogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgYH1hc3luYyBjb25uZWN0ZWRDYWxsYmFjaygpe2F3YWl0IHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCksYXdhaXQgdGhpcy51cGRhdGVDb21wbGV0ZSx0aGlzLmVuc3VyZVZpZXdlclJlZnMoKSx0aGlzLnBkZlVybCYmKHRoaXMuZG9jdW1lbnRJZD1gJHt0aGlzLnBkZlVybH0tJHtEYXRlLm5vdygpfS0ke01hdGgucmFuZG9tKCl9YCxhd2FpdCB0aGlzLmxvYWRQZGYoKSl9YXN5bmMgZGlzY29ubmVjdGVkQ2FsbGJhY2soKXthd2FpdCBzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpLHRoaXMucmVzaXplT2JzZXJ2ZXI/LmRpc2Nvbm5lY3QoKSx0aGlzLnJlc2l6ZU9ic2VydmVyPXZvaWQgMCx0aGlzLmludGVyc2VjdGlvbk9ic2VydmVyPy5kaXNjb25uZWN0KCksdGhpcy5pbnRlcnNlY3Rpb25PYnNlcnZlcj12b2lkIDAsdGhpcy5zY3JvbGxUaHJvdHRsZVRpbWVvdXQmJihjbGVhclRpbWVvdXQodGhpcy5zY3JvbGxUaHJvdHRsZVRpbWVvdXQpLHRoaXMuc2Nyb2xsVGhyb3R0bGVUaW1lb3V0PXZvaWQgMCksdGhpcy5yZW5kZXJTdGF0ZT0iZGlzcG9zZWQiLGF3YWl0IHRoaXMuY2xlYW51cERvY3VtZW50KCksdGhpcy5jYW52YXM9dm9pZCAwLHRoaXMuY3R4PXZvaWQgMH1hc3luYyB1cGRhdGVkKEcpe2lmKHN1cGVyLnVwZGF0ZWQoRyksRy5oYXMoInBkZlVybCIpJiZ0aGlzLnBkZlVybCl7bGV0IEE9Ry5nZXQoInBkZlVybCIpO0EmJmhsLnJlbGVhc2VEb2N1bWVudChBKSx0aGlzLmRvY3VtZW50SWQ9YCR7dGhpcy5wZGZVcmx9LSR7RGF0ZS5ub3coKX0tJHtNYXRoLnJhbmRvbSgpfWAsYXdhaXQgdGhpcy5sb2FkUGRmKCl9Ry5oYXMoInNob3dTaWRlYmFyIikmJnRoaXMuc2hvd1NpZGViYXImJnRoaXMucGRmRG9jdW1lbnQmJihhd2FpdCBuZXcgUHJvbWlzZShBPT5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoQSkpLHRoaXMudGh1bWJuYWlsRGF0YS5mb3JFYWNoKEE9PkEucmVuZGVyZWQ9ITEpLGF3YWl0IHRoaXMucmVuZGVyVGh1bWJuYWlscygpLHRoaXMuc2V0dXBJbnRlcnNlY3Rpb25PYnNlcnZlcigpLHRoaXMuc2Nyb2xsVGh1bWJuYWlsSW50b1ZpZXcodGhpcy5jdXJyZW50UGFnZSkpfWFzeW5jIGxvYWRQZGYoKXt0aGlzLmxvYWRpbmc9ITAsdGhpcy5yZW5kZXJTdGF0ZT0ibG9hZGluZyI7dHJ5e2F3YWl0IHRoaXMuY2xlYW51cERvY3VtZW50KCksdGhpcy5yZW5kZXJBYm9ydENvbnRyb2xsZXI9bmV3IEFib3J0Q29udHJvbGxlcjtsZXQgRz10aGlzLnJlbmRlckFib3J0Q29udHJvbGxlci5zaWduYWw7aWYodGhpcy5wZGZEb2N1bWVudD1hd2FpdCBobC5sb2FkRG9jdW1lbnQodGhpcy5wZGZVcmwpLEcuYWJvcnRlZHx8KHRoaXMudG90YWxQYWdlcz10aGlzLnBkZkRvY3VtZW50Lm51bVBhZ2VzLHRoaXMuY3VycmVudFBhZ2U9dGhpcy5pbml0aWFsUGFnZSx0aGlzLnJlc29sdmVJbml0aWFsVmlld3BvcnRNb2RlKCksdGhpcy50aHVtYm5haWxEYXRhPUFycmF5LmZyb20oe2xlbmd0aDp0aGlzLnRvdGFsUGFnZXN9LChBLEQpPT4oe3BhZ2U6RCsxLHJlbmRlcmVkOiExfSkpLHRoaXMucGFnZURhdGE9QXJyYXkuZnJvbSh7bGVuZ3RoOnRoaXMudG90YWxQYWdlc30sKEEsRCk9Pih7cGFnZTpEKzEscmVuZGVyZWQ6ITEscmVuZGVyaW5nOiExLHRleHRMYXllclJlbmRlcmVkOiExfSkpLHRoaXMubG9hZGluZz0hMSxhd2FpdCB0aGlzLnVwZGF0ZUNvbXBsZXRlLHRoaXMuZW5zdXJlVmlld2VyUmVmcygpLHRoaXMuc2V0dXBJbnRlcnNlY3Rpb25PYnNlcnZlcigpLGF3YWl0IG5ldyBQcm9taXNlKEE9PnJlcXVlc3RBbmltYXRpb25GcmFtZShBKSksRy5hYm9ydGVkKXx8KHRoaXMucmVuZGVyU3RhdGU9InJlbmRlcmluZy1tYWluIixhd2FpdCB0aGlzLnJlbmRlclZpc2libGVQYWdlcygpLEcuYWJvcnRlZCl8fCh0aGlzLmluaXRpYWxQYWdlPjEmJmF3YWl0IHRoaXMuc2Nyb2xsVG9QYWdlKHRoaXMuaW5pdGlhbFBhZ2UsITEpLHRoaXMuc2hvd1NpZGViYXImJihhd2FpdCB0aGlzLnVwZGF0ZUNvbXBsZXRlLGF3YWl0IG5ldyBQcm9taXNlKEE9PnJlcXVlc3RBbmltYXRpb25GcmFtZShBKSksRy5hYm9ydGVkfHwoYXdhaXQgdGhpcy5yZW5kZXJUaHVtYm5haWxzKCksRy5hYm9ydGVkKSkpKXJldHVybjt0aGlzLnJlbmRlclN0YXRlPSJyZW5kZXJlZCJ9Y2F0Y2goRyl7Y29uc29sZS5lcnJvcigiRXJyb3IgbG9hZGluZyBQREY6IixHKSx0aGlzLmxvYWRpbmc9ITEsdGhpcy5yZW5kZXJTdGF0ZT0iZXJyb3IifX1zZXR1cEludGVyc2VjdGlvbk9ic2VydmVyKCl7dGhpcy5pbnRlcnNlY3Rpb25PYnNlcnZlciYmdGhpcy5pbnRlcnNlY3Rpb25PYnNlcnZlci5kaXNjb25uZWN0KCksdGhpcy5pbnRlcnNlY3Rpb25PYnNlcnZlcj1uZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoQT0+e2ZvcihsZXQgRCBvZiBBKXtsZXQgUj1ELnRhcmdldCxPPXBhcnNlSW50KFIuZGF0YXNldC5wYWdlfHwiMSIpO0QuaXNJbnRlcnNlY3RpbmcmJnRoaXMucmVuZGVyUGFnZUlmTmVlZGVkKE8pfX0se3Jvb3Q6dGhpcy52aWV3ZXJNYWluLHJvb3RNYXJnaW46YCR7dGhpcy5SRU5ERVJfQlVGRkVSKjEwMH1weCAwcHhgLHRocmVzaG9sZDouMDF9KTtsZXQgRz10aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3JBbGwoIi5wYWdlLXdyYXBwZXIiKTtHJiZHLmZvckVhY2goQT0+e3RoaXMuaW50ZXJzZWN0aW9uT2JzZXJ2ZXI/Lm9ic2VydmUoQSl9KX1hc3luYyByZW5kZXJWaXNpYmxlUGFnZXMoKXtpZighdGhpcy52aWV3ZXJNYWluKXJldHVybjtsZXQgRz10aGlzLnZpZXdlck1haW4uY2xpZW50SGVpZ2h0O2ZvcihsZXQgQSBvZiB0aGlzLnBhZ2VEYXRhKXtsZXQgRD10aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoYC5wYWdlLXdyYXBwZXJbZGF0YS1wYWdlPSIke0EucGFnZX0iXWApO2lmKCFEKWNvbnRpbnVlO2xldCBSPUQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksTz10aGlzLnZpZXdlck1haW4uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksWT1SLnRvcC1PLnRvcCx1ZT1ZK1IuaGVpZ2h0LHllPXRoaXMuUkVOREVSX0JVRkZFUipHO3VlPj0teWUmJlk8PUcreWUmJmF3YWl0IHRoaXMucmVuZGVyUGFnZUlmTmVlZGVkKEEucGFnZSl9fWFzeW5jIHJlbmRlclBhZ2VJZk5lZWRlZChHKXtsZXQgQT10aGlzLnBhZ2VEYXRhLmZpbmQoRD0+RC5wYWdlPT09Ryk7aWYoISghQXx8QS5yZW5kZXJlZHx8QS5yZW5kZXJpbmcpKXtBLnJlbmRlcmluZz0hMDt0cnl7bGV0IEQ9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKGAucGFnZS1jYW52YXNbZGF0YS1wYWdlPSIke0d9Il1gKTtpZighRCl7QS5yZW5kZXJpbmc9ITE7cmV0dXJufWxldCBSPWF3YWl0IHRoaXMucGRmRG9jdW1lbnQuZ2V0UGFnZShHKSxPPXRoaXMuY29tcHV0ZVZpZXdwb3J0KFIpLFk9d2luZG93LmRldmljZVBpeGVsUmF0aW98fDE7RC53aWR0aD1NYXRoLmZsb29yKE8ud2lkdGgqWSksRC5oZWlnaHQ9TWF0aC5mbG9vcihPLmhlaWdodCpZKSxELnN0eWxlLndpZHRoPWAke08ud2lkdGh9cHhgLEQuc3R5bGUuaGVpZ2h0PWAke08uaGVpZ2h0fXB4YDtsZXQgdWU9RC5nZXRDb250ZXh0KCIyZCIpO2lmKCF1ZSl7Ui5jbGVhbnVwPy4oKSxBLnJlbmRlcmluZz0hMTtyZXR1cm59dWUuc2NhbGUoWSxZKTtsZXQgeWU9e2NhbnZhc0NvbnRleHQ6dWUsdmlld3BvcnQ6T30sJGU9Ui5yZW5kZXIoeWUpO3RoaXMucGFnZVJlbmRlclRhc2tzLnNldChHLCRlKSxhd2FpdCAkZS5wcm9taXNlLFIuY2xlYW51cD8uKCksQS5yZW5kZXJlZD0hMCxBLnJlbmRlcmluZz0hMSx0aGlzLnBhZ2VSZW5kZXJUYXNrcy5kZWxldGUoRyksYXdhaXQgdGhpcy5yZW5kZXJUZXh0TGF5ZXIoRyksdGhpcy5yZXF1ZXN0VXBkYXRlKCJwYWdlRGF0YSIpfWNhdGNoKEQpe0Q/Lm5hbWUhPT0iUmVuZGVyaW5nQ2FuY2VsbGVkRXhjZXB0aW9uIiYmY29uc29sZS5lcnJvcihgRXJyb3IgcmVuZGVyaW5nIHBhZ2UgJHtHfTpgLEQpLEEucmVuZGVyaW5nPSExLHRoaXMucGFnZVJlbmRlclRhc2tzLmRlbGV0ZShHKX19fWFzeW5jIHJlbmRlclRleHRMYXllcihHKXtsZXQgQT10aGlzLnBhZ2VEYXRhLmZpbmQoRD0+RC5wYWdlPT09Ryk7aWYoISghQXx8QS50ZXh0TGF5ZXJSZW5kZXJlZCkpdHJ5e2xldCBEPXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcihgLnRleHQtbGF5ZXJbZGF0YS1wYWdlPSIke0d9Il1gKTtpZighRClyZXR1cm47RC5pbm5lckhUTUw9IiI7bGV0IFI9YXdhaXQgdGhpcy5wZGZEb2N1bWVudC5nZXRQYWdlKEcpLE89YXdhaXQgUi5nZXRUZXh0Q29udGVudCgpLFk9dGhpcy5jb21wdXRlVmlld3BvcnQoUiksdWU9YXdhaXQgaW1wb3J0KCJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL3BkZmpzLWRpc3RANC4wLjM3OS8rZXNtIik7RC5zdHlsZS53aWR0aD1gJHtZLndpZHRofXB4YCxELnN0eWxlLmhlaWdodD1gJHtZLmhlaWdodH1weGAsRC5zdHlsZS5zZXRQcm9wZXJ0eSgiLS1zY2FsZS1mYWN0b3IiLFN0cmluZyhZLnNjYWxlKSk7bGV0IHllPXVlLnJlbmRlclRleHRMYXllcih7dGV4dENvbnRlbnRTb3VyY2U6Tyxjb250YWluZXI6RCx2aWV3cG9ydDpZfSk7dGhpcy50ZXh0TGF5ZXJSZW5kZXJUYXNrcy5zZXQoRyx5ZSksYXdhaXQgeWUucHJvbWlzZTtsZXQgJGU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7JGUuY2xhc3NOYW1lPSJlbmRPZkNvbnRlbnQiLEQuYXBwZW5kQ2hpbGQoJGUpO2xldCBVPSExLHE9bnVsbCxpZT0wLHdlPSh4ZSxuZSk9PntsZXQgTGU9QXJyYXkuZnJvbShELnF1ZXJ5U2VsZWN0b3JBbGwoInNwYW4iKSk7Zm9yKGxldCBPZSBvZiBMZSl7bGV0IEplPU9lLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO2lmKHhlPj1KZS5sZWZ0JiZ4ZTw9SmUucmlnaHQmJm5lPj1KZS50b3AmJm5lPD1KZS5ib3R0b20pe2xldCB0ZT1PZS5maXJzdENoaWxkO2lmKHRlJiZ0ZS5ub2RlVHlwZT09PU5vZGUuVEVYVF9OT0RFKXtsZXQgWj10ZS50ZXh0Q29udGVudHx8IiIsZWU9SmUud2lkdGgvWi5sZW5ndGgsYmU9eGUtSmUubGVmdCxOZT1NYXRoLm1pbihNYXRoLnJvdW5kKGJlL2VlKSxaLmxlbmd0aCk7cmV0dXJue25vZGU6dGUsb2Zmc2V0Ok5lfX19fXJldHVybiBudWxsfSxnZT0oKT0+e1UmJihVPSExLHE9bnVsbCxELmNsYXNzTGlzdC5yZW1vdmUoInNlbGVjdGluZyIpKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZXVwIixnZSksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2Vtb3ZlIixBZSl9LEFlPXhlPT57aWYoIVV8fCFxKXJldHVybjt4ZS5wcmV2ZW50RGVmYXVsdCgpO2xldCBuZT13ZSh4ZS5jbGllbnRYLHhlLmNsaWVudFkpO2lmKG5lKXtsZXQgTGU9d2luZG93LmdldFNlbGVjdGlvbigpO2lmKExlKXRyeXtMZS5zZXRCYXNlQW5kRXh0ZW50KHEsaWUsbmUubm9kZSxuZS5vZmZzZXQpfWNhdGNoe319fTtELmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZG93biIseGU9PntpZih4ZS5idXR0b24hPT0wKXJldHVybjtsZXQgbmU9d2UoeGUuY2xpZW50WCx4ZS5jbGllbnRZKTtuZSYmKHhlLnByZXZlbnREZWZhdWx0KCksVT0hMCxxPW5lLm5vZGUsaWU9bmUub2Zmc2V0LEQuY2xhc3NMaXN0LmFkZCgic2VsZWN0aW5nIiksd2luZG93LmdldFNlbGVjdGlvbigpPy5yZW1vdmVBbGxSYW5nZXMoKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUiLEFlKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZXVwIixnZSkpfSksQS50ZXh0TGF5ZXJSZW5kZXJlZD0hMCxSLmNsZWFudXA/LigpLHRoaXMudGV4dExheWVyUmVuZGVyVGFza3MuZGVsZXRlKEcpfWNhdGNoKEQpe0Q/Lm5hbWUhPT0iUmVuZGVyaW5nQ2FuY2VsbGVkRXhjZXB0aW9uIiYmY29uc29sZS5lcnJvcihgRXJyb3IgcmVuZGVyaW5nIHRleHQgbGF5ZXIgZm9yIHBhZ2UgJHtHfTpgLEQpLHRoaXMudGV4dExheWVyUmVuZGVyVGFza3MuZGVsZXRlKEcpfX1oYW5kbGVTY3JvbGw9KCk9Pnt0aGlzLnNjcm9sbFRocm90dGxlVGltZW91dCYmY2xlYXJUaW1lb3V0KHRoaXMuc2Nyb2xsVGhyb3R0bGVUaW1lb3V0KSx0aGlzLnNjcm9sbFRocm90dGxlVGltZW91dD13aW5kb3cuc2V0VGltZW91dCgoKT0+e3RoaXMudXBkYXRlQ3VycmVudFBhZ2UoKSx0aGlzLnJlbmRlclZpc2libGVQYWdlcygpfSw1MCl9O3VwZGF0ZUN1cnJlbnRQYWdlKCl7aWYoIXRoaXMudmlld2VyTWFpbilyZXR1cm47bGV0IEc9dGhpcy52aWV3ZXJNYWluLnNjcm9sbFRvcCxBPXRoaXMudmlld2VyTWFpbi5jbGllbnRIZWlnaHQsRD1HK0EvMjtmb3IobGV0IFI9MDtSPHRoaXMucGFnZURhdGEubGVuZ3RoO1IrKyl7bGV0IE89dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKGAucGFnZS13cmFwcGVyW2RhdGEtcGFnZT0iJHtSKzF9Il1gKTtpZighTyljb250aW51ZTtsZXQgWT1PLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLHVlPXRoaXMudmlld2VyTWFpbi5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSx5ZT1ZLnRvcC11ZS50b3ArRywkZT15ZStZLmhlaWdodDtpZihEPj15ZSYmRDw9JGUpe3RoaXMuY3VycmVudFBhZ2UhPT1SKzEmJih0aGlzLmN1cnJlbnRQYWdlPVIrMSx0aGlzLnNob3dTaWRlYmFyJiZ0aGlzLnNjcm9sbFRodW1ibmFpbEludG9WaWV3KFIrMSkpO2JyZWFrfX19c2Nyb2xsVGh1bWJuYWlsSW50b1ZpZXcoRyl7bGV0IEE9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKGAudGh1bWJuYWlsW2RhdGEtcGFnZT0iJHtHfSJdYCksRD10aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoIi5zaWRlYmFyLWNvbnRlbnQiKTtpZihBJiZEKXtsZXQgUj1BLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLE89RC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxZPVIudG9wPE8udG9wLHVlPVIuYm90dG9tPk8uYm90dG9tO2lmKFl8fHVlKXtsZXQgeWU9QS5vZmZzZXRUb3AsJGU9QS5vZmZzZXRIZWlnaHQsVT1ELmNsaWVudEhlaWdodCxxPXllLVUvMiskZS8yO0Quc2Nyb2xsVG8oe3RvcDpNYXRoLm1heCgwLHEpLGJlaGF2aW9yOiJzbW9vdGgifSl9fX1hc3luYyBzY3JvbGxUb1BhZ2UoRyxBPSEwKXthd2FpdCB0aGlzLnVwZGF0ZUNvbXBsZXRlO2xldCBEPXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcihgLnBhZ2Utd3JhcHBlcltkYXRhLXBhZ2U9IiR7R30iXWApO2lmKEQmJnRoaXMudmlld2VyTWFpbil7bGV0IFI9RC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxPPXRoaXMudmlld2VyTWFpbi5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSx1ZT10aGlzLnZpZXdlck1haW4uc2Nyb2xsVG9wKyhSLnRvcC1PLnRvcCktdGhpcy52aWV3ZXJNYWluLmNsaWVudFRvcDtBP3RoaXMudmlld2VyTWFpbi5zY3JvbGxUbyh7dG9wOnVlLGJlaGF2aW9yOiJzbW9vdGgifSk6dGhpcy52aWV3ZXJNYWluLnNjcm9sbFRvcD11ZSx0aGlzLmN1cnJlbnRQYWdlPUcsdGhpcy5zaG93U2lkZWJhciYmdGhpcy5zY3JvbGxUaHVtYm5haWxJbnRvVmlldyhHKSxhd2FpdCB0aGlzLnJlbmRlclBhZ2VJZk5lZWRlZChHKX19YXN5bmMgcmVuZGVyVGh1bWJuYWlscygpe2lmKCF0aGlzLnBkZkRvY3VtZW50fHx0aGlzLnRodW1ibmFpbERhdGEubGVuZ3RoPjAmJnRoaXMudGh1bWJuYWlsRGF0YS5ldmVyeShBPT5BLnJlbmRlcmVkKXx8dGhpcy5yZW5kZXJBYm9ydENvbnRyb2xsZXI/LnNpZ25hbC5hYm9ydGVkKXJldHVybjtsZXQgRz10aGlzLnJlbmRlckFib3J0Q29udHJvbGxlcj8uc2lnbmFsO3RoaXMucmVuZGVyU3RhdGU9InJlbmRlcmluZy10aHVtYnMiO2ZvcihsZXQgQSBvZiB0aGlzLnRodW1ibmFpbFJlbmRlclRhc2tzKXRyeXtBLmNhbmNlbCgpfWNhdGNoe310aGlzLnRodW1ibmFpbFJlbmRlclRhc2tzPVtdO3RyeXthd2FpdCB0aGlzLnVwZGF0ZUNvbXBsZXRlO2xldCBBPXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvckFsbCgiLnRodW1ibmFpbCIpLEQ9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yQWxsKCIudGh1bWJuYWlsLWNhbnZhcyIpLFI9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCIuc2lkZWJhci1jb250ZW50IiksTz13aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShSKSx1ZT0yMDAtKHBhcnNlRmxvYXQoTy5wYWRkaW5nTGVmdCkrcGFyc2VGbG9hdChPLnBhZGRpbmdSaWdodCkpLTQ7Zm9yKGxldCB5ZSBvZiBBcnJheS5mcm9tKEQpKXtsZXQgJGU9eWUuZ2V0Q29udGV4dCgiMmQiKTskZSYmJGUuY2xlYXJSZWN0KDAsMCx5ZS53aWR0aCx5ZS5oZWlnaHQpfWZvcihsZXQgeWU9MDt5ZTxELmxlbmd0aDt5ZSsrKXtpZihHPy5hYm9ydGVkKXJldHVybjtsZXQgJGU9RFt5ZV0sVT1BW3llXSxxPXBhcnNlSW50KCRlLmRhdGFzZXQucGFnZXx8IjEiKSxpZT1hd2FpdCB0aGlzLnBkZkRvY3VtZW50LmdldFBhZ2UocSksd2U9aWUuZ2V0Vmlld3BvcnQoe3NjYWxlOjF9KSxnZT11ZS93ZS53aWR0aCxBZT1pZS5nZXRWaWV3cG9ydCh7c2NhbGU6Z2V9KSx4ZT13aW5kb3cuZGV2aWNlUGl4ZWxSYXRpb3x8MTskZS53aWR0aD1NYXRoLmZsb29yKEFlLndpZHRoKnhlKSwkZS5oZWlnaHQ9TWF0aC5mbG9vcihBZS5oZWlnaHQqeGUpLCRlLnN0eWxlLndpZHRoPWAke0FlLndpZHRofXB4YCwkZS5zdHlsZS5oZWlnaHQ9YCR7QWUuaGVpZ2h0fXB4YCxVLnN0eWxlLmhlaWdodD1gJHtBZS5oZWlnaHR9cHhgLFUuc3R5bGUubWluSGVpZ2h0PWAke0FlLmhlaWdodH1weGA7bGV0IG5lPSRlLmdldENvbnRleHQoIjJkIik7aWYoIW5lKXtpZS5jbGVhbnVwPy4oKTtjb250aW51ZX1uZS5zY2FsZSh4ZSx4ZSk7bGV0IExlPXtjYW52YXNDb250ZXh0Om5lLHZpZXdwb3J0OkFlfSxPZT1pZS5yZW5kZXIoTGUpO3RoaXMudGh1bWJuYWlsUmVuZGVyVGFza3MucHVzaChPZSksYXdhaXQgT2UucHJvbWlzZSxpZS5jbGVhbnVwPy4oKTtsZXQgSmU9dGhpcy50aHVtYm5haWxEYXRhLmZpbmQodGU9PnRlLnBhZ2U9PT1xKTtKZSYmKEplLnJlbmRlcmVkPSEwKX10aGlzLnJlcXVlc3RVcGRhdGUoInRodW1ibmFpbERhdGEiKX1jYXRjaChBKXtBPy5uYW1lIT09IlJlbmRlcmluZ0NhbmNlbGxlZEV4Y2VwdGlvbiImJmNvbnNvbGUuZXJyb3IoIkVycm9yIHJlbmRlcmluZyB0aHVtYm5haWxzOiIsQSl9ZmluYWxseXt0aGlzLnRodW1ibmFpbFJlbmRlclRhc2tzPVtdfX1wcmV2aW91c1BhZ2UoKXt0aGlzLmN1cnJlbnRQYWdlPjEmJnRoaXMuc2Nyb2xsVG9QYWdlKHRoaXMuY3VycmVudFBhZ2UtMSl9bmV4dFBhZ2UoKXt0aGlzLmN1cnJlbnRQYWdlPHRoaXMudG90YWxQYWdlcyYmdGhpcy5zY3JvbGxUb1BhZ2UodGhpcy5jdXJyZW50UGFnZSsxKX1oYW5kbGVUaHVtYm5haWxDbGljayhHKXtsZXQgQT1HLmN1cnJlbnRUYXJnZXQsRD1wYXJzZUludChBLmRhdGFzZXQucGFnZXx8IjEiKTt0aGlzLnNjcm9sbFRvUGFnZShEKX1oYW5kbGVQYWdlSW5wdXQoRyl7bGV0IEE9Ry50YXJnZXQsRD1wYXJzZUludChBLnZhbHVlKTt0aGlzLnNjcm9sbFRvUGFnZShEKX16b29tSW4oKXtsZXQgRz1NYXRoLm1pbih0aGlzLk1BTlVBTF9NQVhfWk9PTSx0aGlzLmN1cnJlbnRab29tKjEuMik7dGhpcy52aWV3cG9ydE1vZGU9ImN1c3RvbSIsRyE9PXRoaXMuY3VycmVudFpvb20mJih0aGlzLmN1cnJlbnRab29tPUcsdGhpcy5yZVJlbmRlckFsbFBhZ2VzKCkpfXpvb21PdXQoKXtsZXQgRz1NYXRoLm1heCh0aGlzLk1BTlVBTF9NSU5fWk9PTSx0aGlzLmN1cnJlbnRab29tLzEuMik7dGhpcy52aWV3cG9ydE1vZGU9ImN1c3RvbSIsRyE9PXRoaXMuY3VycmVudFpvb20mJih0aGlzLmN1cnJlbnRab29tPUcsdGhpcy5yZVJlbmRlckFsbFBhZ2VzKCkpfXJlc2V0Wm9vbSgpe3RoaXMudmlld3BvcnRNb2RlPSJjdXN0b20iLHRoaXMuY3VycmVudFpvb209MSx0aGlzLnJlUmVuZGVyQWxsUGFnZXMoKX1maXRUb1BhZ2UoKXt0aGlzLnZpZXdwb3J0TW9kZT0icGFnZS1maXQiLHRoaXMucmVSZW5kZXJBbGxQYWdlcygpfWZpdFRvV2lkdGgoKXt0aGlzLnZpZXdwb3J0TW9kZT0icGFnZS13aWR0aCIsdGhpcy5yZVJlbmRlckFsbFBhZ2VzKCl9cmVSZW5kZXJBbGxQYWdlcygpe3RoaXMucGFnZURhdGEuZm9yRWFjaChHPT57Ry5yZW5kZXJlZD0hMSxHLnJlbmRlcmluZz0hMSxHLnRleHRMYXllclJlbmRlcmVkPSExfSksdGhpcy5wYWdlUmVuZGVyVGFza3MuZm9yRWFjaChHPT57dHJ5e0cuY2FuY2VsKCl9Y2F0Y2h7fX0pLHRoaXMucGFnZVJlbmRlclRhc2tzLmNsZWFyKCksdGhpcy50ZXh0TGF5ZXJSZW5kZXJUYXNrcy5mb3JFYWNoKEc9Pnt0cnl7Ry5jYW5jZWw/LigpfWNhdGNoe319KSx0aGlzLnRleHRMYXllclJlbmRlclRhc2tzLmNsZWFyKCksdGhpcy5yZXF1ZXN0VXBkYXRlKCksdGhpcy51cGRhdGVDb21wbGV0ZS50aGVuKCgpPT57dGhpcy5yZW5kZXJWaXNpYmxlUGFnZXMoKX0pfWFzeW5jIGRvd25sb2FkUGRmKCl7aWYodGhpcy5wZGZEb2N1bWVudCl0cnl7bGV0IEc9YXdhaXQgdGhpcy5wZGZEb2N1bWVudC5nZXREYXRhKCksQT1uZXcgQmxvYihbRy5idWZmZXJdLHt0eXBlOiJhcHBsaWNhdGlvbi9wZGYifSksRD1VUkwuY3JlYXRlT2JqZWN0VVJMKEEpLFI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYSIpO1IuaHJlZj1ELFIuZG93bmxvYWQ9dGhpcy5wZGZVcmwmJnRoaXMucGRmVXJsLnNwbGl0KCIvIikucG9wKCl8fCJkb2N1bWVudC5wZGYiLFIuY2xpY2soKSxzZXRUaW1lb3V0KCgpPT5VUkwucmV2b2tlT2JqZWN0VVJMKEQpLDFlMyl9Y2F0Y2goRyl7Y29uc29sZS5lcnJvcigiRXJyb3IgZG93bmxvYWRpbmcgUERGOiIsRyl9fWFzeW5jIHByaW50UGRmKCl7aWYodGhpcy5wZGZEb2N1bWVudCl0cnl7bGV0IEc9YXdhaXQgdGhpcy5wZGZEb2N1bWVudC5nZXREYXRhKCksQT1uZXcgQmxvYihbRy5idWZmZXJdLHt0eXBlOiJhcHBsaWNhdGlvbi9wZGYifSksRD1VUkwuY3JlYXRlT2JqZWN0VVJMKEEpLFI9YAogICAgICAgIDwhRE9DVFlQRSBodG1sPgogICAgICAgIDxodG1sPgogICAgICAgIDxoZWFkPgogICAgICAgICAgPHRpdGxlPlByaW50IFBERjwvdGl0bGU+CiAgICAgICAgICA8c3R5bGU+CiAgICAgICAgICAgICogeyBtYXJnaW46IDA7IHBhZGRpbmc6IDA7IH0KICAgICAgICAgICAgaHRtbCwgYm9keSB7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IG92ZXJmbG93OiBoaWRkZW47IH0KICAgICAgICAgICAgaWZyYW1lIHsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgYm9yZGVyOiBub25lOyB9CiAgICAgICAgICAgIEBtZWRpYSBwcmludCB7CiAgICAgICAgICAgICAgaHRtbCwgYm9keSwgaWZyYW1lIHsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgfQogICAgICAgICAgICB9CiAgICAgICAgICA8L3N0eWxlPgogICAgICAgIDwvaGVhZD4KICAgICAgICA8Ym9keT4KICAgICAgICAgIDxpZnJhbWUgc3JjPSIke0R9IiB0eXBlPSJhcHBsaWNhdGlvbi9wZGYiPjwvaWZyYW1lPgogICAgICAgICAgPHNjcmlwdD4KICAgICAgICAgICAgd2luZG93Lm9ubG9hZCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICB3aW5kb3cuZm9jdXMoKTsKICAgICAgICAgICAgICAgIHdpbmRvdy5wcmludCgpOwogICAgICAgICAgICAgIH0sIDUwMCk7CiAgICAgICAgICAgIH07CiAgICAgICAgICAgIHdpbmRvdy5vbmFmdGVycHJpbnQgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICB3aW5kb3cuY2xvc2UoKTsKICAgICAgICAgICAgfTsKICAgICAgICAgICAgLy8gU2FmZXR5IGNsb3NlIGFmdGVyIDIgbWludXRlcwogICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeyB3aW5kb3cuY2xvc2UoKTsgfSwgMTIwMDAwKTsKICAgICAgICAgIDxcL3NjcmlwdD4KICAgICAgICA8L2JvZHk+CiAgICAgICAgPC9odG1sPgogICAgICBgLE89bmV3IEJsb2IoW1JdLHt0eXBlOiJ0ZXh0L2h0bWwifSksWT1VUkwuY3JlYXRlT2JqZWN0VVJMKE8pLHVlPXdpbmRvdy5vcGVuKFksIl9ibGFuayIsIndpZHRoPTgwMCxoZWlnaHQ9NjAwIik7aWYodWUpe2xldCB5ZT1zZXRJbnRlcnZhbCgoKT0+e3VlLmNsb3NlZCYmKGNsZWFySW50ZXJ2YWwoeWUpLFVSTC5yZXZva2VPYmplY3RVUkwoRCksVVJMLnJldm9rZU9iamVjdFVSTChZKSl9LDUwMCk7c2V0VGltZW91dCgoKT0+e2NsZWFySW50ZXJ2YWwoeWUpLFVSTC5yZXZva2VPYmplY3RVUkwoRCksVVJMLnJldm9rZU9iamVjdFVSTChZKX0sMTJlNCl9ZWxzZSB3aW5kb3cub3BlbihELCJfYmxhbmsiKSxzZXRUaW1lb3V0KCgpPT5VUkwucmV2b2tlT2JqZWN0VVJMKEQpLDZlNCksVVJMLnJldm9rZU9iamVjdFVSTChZKX1jYXRjaChHKXtjb25zb2xlLmVycm9yKCJFcnJvciBwcmludGluZyBQREY6IixHKX19Z2V0Q29udGV4dE1lbnVJdGVtcygpe2xldCBHPVtdLEQ9d2luZG93LmdldFNlbGVjdGlvbigpPy50b1N0cmluZygpfHwiIjtyZXR1cm4gRCYmKEcucHVzaCh7bmFtZToiQ29weSIsaWNvbk5hbWU6Imx1Y2lkZTpDb3B5IixhY3Rpb246YXN5bmMoKT0+e2F3YWl0IG5hdmlnYXRvci5jbGlwYm9hcmQud3JpdGVUZXh0KEQpfX0pLEcucHVzaCh7ZGl2aWRlcjohMH0pKSxHLnB1c2goe25hbWU6IkRvd25sb2FkIFBERiIsaWNvbk5hbWU6Imx1Y2lkZTpEb3dubG9hZCIsYWN0aW9uOmFzeW5jKCk9Pnthd2FpdCB0aGlzLmRvd25sb2FkUGRmKCl9fSx7bmFtZToiUHJpbnQgUERGIixpY29uTmFtZToibHVjaWRlOlByaW50ZXIiLGFjdGlvbjphc3luYygpPT57YXdhaXQgdGhpcy5wcmludFBkZigpfX0pLEd9Z2V0IGNhblpvb21Jbigpe3JldHVybiB0aGlzLnZpZXdwb3J0TW9kZSE9PSJjdXN0b20ifHx0aGlzLmN1cnJlbnRab29tPHRoaXMuTUFOVUFMX01BWF9aT09NfWdldCBjYW5ab29tT3V0KCl7cmV0dXJuIHRoaXMudmlld3BvcnRNb2RlIT09ImN1c3RvbSJ8fHRoaXMuY3VycmVudFpvb20+dGhpcy5NQU5VQUxfTUlOX1pPT019ZW5zdXJlVmlld2VyUmVmcygpe3RoaXMudmlld2VyTWFpbnx8KHRoaXMudmlld2VyTWFpbj10aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoIi52aWV3ZXItbWFpbiIpKSx0aGlzLnZpZXdlck1haW4mJiF0aGlzLnJlc2l6ZU9ic2VydmVyJiYodGhpcy5yZXNpemVPYnNlcnZlcj1uZXcgUmVzaXplT2JzZXJ2ZXIoKCk9Pnt0aGlzLm1lYXN1cmVWaWV3cG9ydERpbWVuc2lvbnMoKSx0aGlzLnBkZkRvY3VtZW50JiZ0aGlzLnJlUmVuZGVyQWxsUGFnZXMoKX0pLHRoaXMucmVzaXplT2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzLnZpZXdlck1haW4pLHRoaXMubWVhc3VyZVZpZXdwb3J0RGltZW5zaW9ucygpLHRoaXMudmlld2VyTWFpbi5hZGRFdmVudExpc3RlbmVyKCJ3aGVlbCIsRz0+e2xldCBBPUcuY3VycmVudFRhcmdldCxEPUEuc2Nyb2xsVG9wLFI9QS5zY3JvbGxIZWlnaHQsTz1BLmNsaWVudEhlaWdodCxZPUcuZGVsdGFZLHVlPUQ9PT0wLHllPU1hdGguYWJzKEQrTy1SKTwxO1k8MCYmIXVlfHxZPjAmJiF5ZT9HLnN0b3BQcm9wYWdhdGlvbigpOihZPDAmJnVlfHxZPjAmJnllKSYmKEcucHJldmVudERlZmF1bHQoKSxHLnN0b3BQcm9wYWdhdGlvbigpKX0se3Bhc3NpdmU6ITF9KSl9bWVhc3VyZVZpZXdwb3J0RGltZW5zaW9ucygpe2lmKCF0aGlzLnZpZXdlck1haW4pe3RoaXMudmlld3BvcnREaW1lbnNpb25zPXt3aWR0aDowLGhlaWdodDowfTtyZXR1cm59bGV0IEc9Z2V0Q29tcHV0ZWRTdHlsZSh0aGlzLnZpZXdlck1haW4pLEE9cGFyc2VGbG9hdChHLnBhZGRpbmdMZWZ0fHwiMCIpK3BhcnNlRmxvYXQoRy5wYWRkaW5nUmlnaHR8fCIwIiksRD1wYXJzZUZsb2F0KEcucGFkZGluZ1RvcHx8IjAiKStwYXJzZUZsb2F0KEcucGFkZGluZ0JvdHRvbXx8IjAiKSxSPU1hdGgubWF4KHRoaXMudmlld2VyTWFpbi5jbGllbnRXaWR0aC1BLDApLE89TWF0aC5tYXgodGhpcy52aWV3ZXJNYWluLmNsaWVudEhlaWdodC1ELDApO3RoaXMudmlld3BvcnREaW1lbnNpb25zPXt3aWR0aDpSLGhlaWdodDpPfX1yZXNvbHZlSW5pdGlhbFZpZXdwb3J0TW9kZSgpe3R5cGVvZiB0aGlzLmluaXRpYWxab29tPT0ibnVtYmVyIj8odGhpcy52aWV3cG9ydE1vZGU9ImN1c3RvbSIsdGhpcy5jdXJyZW50Wm9vbT10aGlzLm5vcm1hbGl6ZVpvb20odGhpcy5pbml0aWFsWm9vbSwhMCkpOnRoaXMuaW5pdGlhbFpvb209PT0icGFnZS13aWR0aCI/dGhpcy52aWV3cG9ydE1vZGU9InBhZ2Utd2lkdGgiOnRoaXMuaW5pdGlhbFpvb209PT0icGFnZS1maXQifHx0aGlzLmluaXRpYWxab29tPT09ImF1dG8iP3RoaXMudmlld3BvcnRNb2RlPSJwYWdlLWZpdCI6dGhpcy52aWV3cG9ydE1vZGU9ImF1dG8iLHRoaXMudmlld3BvcnRNb2RlIT09ImN1c3RvbSImJih0aGlzLmN1cnJlbnRab29tPTEpfWNvbXB1dGVWaWV3cG9ydChHKXt0aGlzLm1lYXN1cmVWaWV3cG9ydERpbWVuc2lvbnMoKTtsZXQgQT1HLmdldFZpZXdwb3J0KHtzY2FsZToxfSksRDtzd2l0Y2godGhpcy52aWV3cG9ydE1vZGUpe2Nhc2UicGFnZS13aWR0aCI6e0Q9KHRoaXMudmlld3BvcnREaW1lbnNpb25zLndpZHRofHxBLndpZHRoKS9BLndpZHRoO2JyZWFrfWNhc2UicGFnZS1maXQiOmNhc2UiYXV0byI6e2xldCBPPXRoaXMudmlld3BvcnREaW1lbnNpb25zLndpZHRofHxBLndpZHRoLFk9dGhpcy52aWV3cG9ydERpbWVuc2lvbnMuaGVpZ2h0fHxBLmhlaWdodCx1ZT1PL0Eud2lkdGgseWU9WS9BLmhlaWdodDtEPU1hdGgubWluKHVlLHllKTticmVha31kZWZhdWx0OntEPXRoaXMubm9ybWFsaXplWm9vbSh0aGlzLmN1cnJlbnRab29tfHwxLCExKTticmVha319KCFOdW1iZXIuaXNGaW5pdGUoRCl8fEQ8PTApJiYoRD0xKTtsZXQgUj10aGlzLnZpZXdwb3J0TW9kZT09PSJjdXN0b20iP3RoaXMubm9ybWFsaXplWm9vbShELCEwKTp0aGlzLm5vcm1hbGl6ZVpvb20oRCwhMSk7cmV0dXJuIHRoaXMudmlld3BvcnRNb2RlIT09ImN1c3RvbSImJih0aGlzLmN1cnJlbnRab29tPVIpLEcuZ2V0Vmlld3BvcnQoe3NjYWxlOlJ9KX1ub3JtYWxpemVab29tKEcsQSl7bGV0IEQ9QT90aGlzLk1BTlVBTF9NSU5fWk9PTTp0aGlzLkFCU09MVVRFX01JTl9aT09NLFI9QT90aGlzLk1BTlVBTF9NQVhfWk9PTTp0aGlzLkFCU09MVVRFX01BWF9aT09NO3JldHVybiBNYXRoLm1pbihNYXRoLm1heChHLEQpLFIpfWFzeW5jIGNsZWFudXBEb2N1bWVudCgpe2lmKHRoaXMucmVuZGVyQWJvcnRDb250cm9sbGVyJiYodGhpcy5yZW5kZXJBYm9ydENvbnRyb2xsZXIuYWJvcnQoKSx0aGlzLnJlbmRlckFib3J0Q29udHJvbGxlcj1udWxsKSx0aGlzLmN1cnJlbnRSZW5kZXJQcm9taXNlKXt0cnl7YXdhaXQgdGhpcy5jdXJyZW50UmVuZGVyUHJvbWlzZX1jYXRjaHt9dGhpcy5jdXJyZW50UmVuZGVyUHJvbWlzZT1udWxsfXRoaXMuY3VycmVudFJlbmRlclRhc2s9bnVsbCx0aGlzLnBhZ2VSZW5kZXJUYXNrcy5mb3JFYWNoKEc9Pnt0cnl7Ry5jYW5jZWwoKX1jYXRjaHt9fSksdGhpcy5wYWdlUmVuZGVyVGFza3MuY2xlYXIoKSx0aGlzLnRleHRMYXllclJlbmRlclRhc2tzLmZvckVhY2goRz0+e3RyeXtHLmNhbmNlbD8uKCl9Y2F0Y2h7fX0pLHRoaXMudGV4dExheWVyUmVuZGVyVGFza3MuY2xlYXIoKTtmb3IobGV0IEcgb2YgdGhpcy50aHVtYm5haWxSZW5kZXJUYXNrc3x8W10pdHJ5e0cuY2FuY2VsKCl9Y2F0Y2h7fWlmKHRoaXMudGh1bWJuYWlsUmVuZGVyVGFza3M9W10sdGhpcy5yZW5kZXJTdGF0ZT0iaWRsZSIsdGhpcy5wYWdlUmVuZGVyaW5nPSExLHRoaXMucGFnZU51bVBlbmRpbmc9bnVsbCx0aGlzLnRodW1ibmFpbERhdGE9W10sdGhpcy5wYWdlRGF0YT1bXSx0aGlzLmRvY3VtZW50SWQ9IiIsdGhpcy5jYW52YXMmJnRoaXMuY3R4JiZ0aGlzLmN0eC5jbGVhclJlY3QoMCwwLHRoaXMuY2FudmFzLndpZHRoLHRoaXMuY2FudmFzLmhlaWdodCksdGhpcy5wZGZEb2N1bWVudCl0cnl7dGhpcy5wZGZEb2N1bWVudC5kZXN0cm95KCl9Y2F0Y2goRyl7Y29uc29sZS5lcnJvcigiRXJyb3IgZGVzdHJveWluZyBQREYgZG9jdW1lbnQ6IixHKX10aGlzLnBkZkRvY3VtZW50PW51bGwsdGhpcy5yZXF1ZXN0VXBkYXRlKCl9c3RhdGlje0xhKGEscil9fTtyZXR1cm4ga2U9YX0pKCl9KTt2YXIgSEZyLHFGcj1sKCgpPT57U2UoKTtIRnI9KCk9PlNgCiAgPHN0eWxlPgogICAgLmRlbW8tY29udGFpbmVyIHsKICAgICAgcGFkZGluZzogNDhweDsKICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmOGY5ZmEiLCIjMGEwYTBhIil9OwogICAgICBkaXNwbGF5OiBmbGV4OwogICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICBnYXA6IDQwcHg7CiAgICB9CgogICAgLnNlY3Rpb24gewogICAgICBtYXgtd2lkdGg6IDkwMHB4OwogICAgICB3aWR0aDogMTAwJTsKICAgICAgbWFyZ2luOiAwIGF1dG87CiAgICB9CgogICAgLnNlY3Rpb24tdGl0bGUgewogICAgICBmb250LXNpemU6IDE4cHg7CiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgIG1hcmdpbi1ib3R0b206IDhweDsKICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMDkwOTBiIiwiI2ZhZmFmYSIpfTsKICAgIH0KCiAgICAuc2VjdGlvbi1kZXNjcmlwdGlvbiB7CiAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiI2ExYTFhYSIpfTsKICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDsKICAgIH0KCiAgICAucHJldmlldy1pbWFnZSB7CiAgICAgIGhlaWdodDogNDAwcHg7CiAgICB9CgogICAgLnByZXZpZXctcGRmIHsKICAgICAgaGVpZ2h0OiA2MDBweDsKICAgIH0KICA8L3N0eWxlPgoKICA8ZGl2IGNsYXNzPSJkZW1vLWNvbnRhaW5lciI+CiAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uIj4KICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi10aXRsZSI+SW1hZ2UgUHJldmlldyAoVVJMKTwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uLWRlc2NyaXB0aW9uIj5BdXRvLWRldGVjdHMgaW1hZ2UgZnJvbSBVUkwgZXh0ZW5zaW9uIGFuZCByZW5kZXJzIHdpdGggdGhlIGltYWdlIHZpZXdlci48L2Rpdj4KICAgICAgPGRlZXMtcHJldmlldwogICAgICAgIGNsYXNzPSJwcmV2aWV3LWltYWdlIgogICAgICAgIHVybD0iaHR0cHM6Ly9pbWFnZXMudW5zcGxhc2guY29tL3Bob3RvLTE1MDY3NDQwMzgxMzYtNDYyNzM4MzRiM2ZiP3c9MTIwMCIKICAgICAgICBmaWxlbmFtZT0ibGFuZHNjYXBlLmpwZyIKICAgICAgPjwvZGVlcy1wcmV2aWV3PgogICAgPC9kaXY+CgogICAgPGRpdiBjbGFzcz0ic2VjdGlvbiI+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tdGl0bGUiPlBERiBQcmV2aWV3IChVUkwpPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tZGVzY3JpcHRpb24iPkF1dG8tZGV0ZWN0cyBQREYgYW5kIGRpc3BsYXlzIHdpdGggdGhlIFBERiB2aWV3ZXIgaW5jbHVkaW5nIHRvb2xiYXIuPC9kaXY+CiAgICAgIDxkZWVzLXByZXZpZXcKICAgICAgICBjbGFzcz0icHJldmlldy1wZGYiCiAgICAgICAgdXJsPSJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vbW96aWxsYS9wZGYuanMvYmEyZWRlYWUvd2ViL2NvbXByZXNzZWQudHJhY2Vtb25rZXktcGxkaS0wOS5wZGYiCiAgICAgICAgZmlsZW5hbWU9InJlc2VhcmNoLXBhcGVyLnBkZiIKICAgICAgPjwvZGVlcy1wcmV2aWV3PgogICAgPC9kaXY+CgogICAgPGRpdiBjbGFzcz0ic2VjdGlvbiI+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tdGl0bGUiPkNvZGUgUHJldmlldyAoVGV4dCBDb250ZW50KTwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uLWRlc2NyaXB0aW9uIj5UeXBlU2NyaXB0IGNvZGUgZGlzcGxheWVkIHdpdGggc3ludGF4IGhpZ2hsaWdodGluZyB2aWEgdGhlIGNvZGVib3guPC9kaXY+CiAgICAgIDxkZWVzLXByZXZpZXcKICAgICAgICBmaWxlbmFtZT0iZXhhbXBsZS50cyIKICAgICAgICBsYW5ndWFnZT0idHlwZXNjcmlwdCIKICAgICAgICAudGV4dENvbnRlbnQ9JHtgaW1wb3J0IHsgaHRtbCwgY3NzIH0gZnJvbSAnbGl0JzsKCmV4cG9ydCBjbGFzcyBNeUNvbXBvbmVudCBleHRlbmRzIExpdEVsZW1lbnQgewogIHN0YXRpYyBzdHlsZXMgPSBjc3NcYAogICAgOmhvc3QgewogICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgcGFkZGluZzogMTZweDsKICAgIH0KICBcYDsKCiAgcmVuZGVyKCkgewogICAgcmV0dXJuIGh0bWxcYDxoMT5IZWxsbyBXb3JsZDwvaDE+XGA7CiAgfQp9YH0KICAgICAgPjwvZGVlcy1wcmV2aWV3PgogICAgPC9kaXY+CgogICAgPGRpdiBjbGFzcz0ic2VjdGlvbiI+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tdGl0bGUiPkF1ZGlvIFByZXZpZXcgKFVSTCk8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi1kZXNjcmlwdGlvbiI+QXVkaW8gZmlsZSBkZXRlY3RlZCBieSBleHRlbnNpb24sIHNob3duIHdpdGggd2F2ZWZvcm0gcGxheWVyLjwvZGl2PgogICAgICA8ZGVlcy1wcmV2aWV3CiAgICAgICAgdXJsPSJodHRwczovL3d3dy5zb3VuZGhlbGl4LmNvbS9leGFtcGxlcy9tcDMvU291bmRIZWxpeC1Tb25nLTEubXAzIgogICAgICAgIGZpbGVuYW1lPSJzb25nLm1wMyIKICAgICAgPjwvZGVlcy1wcmV2aWV3PgogICAgPC9kaXY+CgogICAgPGRpdiBjbGFzcz0ic2VjdGlvbiI+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tdGl0bGUiPlZpZGVvIFByZXZpZXcgKFVSTCk8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi1kZXNjcmlwdGlvbiI+VmlkZW8gZmlsZSBkZXRlY3RlZCBmcm9tIFVSTCwgcmVuZGVyZWQgd2l0aCBjdXN0b20gdmlkZW8gY29udHJvbHMuPC9kaXY+CiAgICAgIDxkZWVzLXByZXZpZXcKICAgICAgICB1cmw9Imh0dHBzOi8vY29tbW9uZGF0YXN0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZ3R2LXZpZGVvcy1idWNrZXQvc2FtcGxlL0JpZ0J1Y2tCdW5ueS5tcDQiCiAgICAgICAgZmlsZW5hbWU9ImJpZy1idWNrLWJ1bm55Lm1wNCIKICAgICAgPjwvZGVlcy1wcmV2aWV3PgogICAgPC9kaXY+CgogICAgPGRpdiBjbGFzcz0ic2VjdGlvbiI+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tdGl0bGUiPkV4cGxpY2l0IFR5cGUgT3ZlcnJpZGU8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi1kZXNjcmlwdGlvbiI+Rm9yY2UgY29udGVudCB0eXBlIHRvICd0ZXh0JyBldmVuIHRob3VnaCB0aGUgVVJMIGhhcyBubyBleHRlbnNpb24uPC9kaXY+CiAgICAgIDxkZWVzLXByZXZpZXcKICAgICAgICBjb250ZW50VHlwZT0idGV4dCIKICAgICAgICAudGV4dENvbnRlbnQ9JHtgVGhpcyBpcyBwbGFpbiB0ZXh0IGNvbnRlbnQuCkl0IHByZXNlcnZlcyB3aGl0ZXNwYWNlIGFuZCBsaW5lIGJyZWFrcy4KClVzZWZ1bCBmb3IgbG9nIGZpbGVzLCBSRUFETUVzLCBldGMuYH0KICAgICAgICBmaWxlbmFtZT0ibm90ZXMudHh0IgogICAgICA+PC9kZWVzLXByZXZpZXc+CiAgICA8L2Rpdj4KCiAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uIj4KICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi10aXRsZSI+VW5rbm93biBUeXBlPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tZGVzY3JpcHRpb24iPldoZW4gY29udGVudCB0eXBlIGNhbm5vdCBiZSBkZXRlY3RlZCwgc2hvd3MgYSBwbGFjZWhvbGRlci48L2Rpdj4KICAgICAgPGRlZXMtcHJldmlldwogICAgICAgIGZpbGVuYW1lPSJkYXRhLmJpbiIKICAgICAgICBjb250ZW50VHlwZT0idW5rbm93biIKICAgICAgPjwvZGVlcy1wcmV2aWV3PgogICAgPC9kaXY+CiAgPC9kaXY+CmB9KTt2YXIgdjEsRHIsakZyLGd2YSx4dmEsYnZhLFZGcixVRnI9bCgoKT0+e1NlKCk7dDB0KCk7cjB0KCk7YTB0KCk7RmN0KCk7aTB0KCk7YnIoKTtxRnIoKTt2MT1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LERyPWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSxqRnI9e2pwZzoiaW1hZ2UiLGpwZWc6ImltYWdlIixwbmc6ImltYWdlIixnaWY6ImltYWdlIix3ZWJwOiJpbWFnZSIsc3ZnOiJpbWFnZSIsYm1wOiJpbWFnZSIsYXZpZjoiaW1hZ2UiLGljbzoiaW1hZ2UiLHBkZjoicGRmIixtcDM6ImF1ZGlvIix3YXY6ImF1ZGlvIixvZ2c6ImF1ZGlvIixmbGFjOiJhdWRpbyIsYWFjOiJhdWRpbyIsbTRhOiJhdWRpbyIsb3B1czoiYXVkaW8iLHdlYmE6ImF1ZGlvIixtcDQ6InZpZGVvIix3ZWJtOiJ2aWRlbyIsbW92OiJ2aWRlbyIsYXZpOiJ2aWRlbyIsbWt2OiJ2aWRlbyIsb2d2OiJ2aWRlbyIsdHM6ImNvZGUiLGpzOiJjb2RlIixqc3g6ImNvZGUiLHRzeDoiY29kZSIsanNvbjoiY29kZSIsaHRtbDoiY29kZSIsY3NzOiJjb2RlIixzY3NzOiJjb2RlIixsZXNzOiJjb2RlIixweToiY29kZSIsamF2YToiY29kZSIsZ286ImNvZGUiLHJzOiJjb2RlIix5YW1sOiJjb2RlIix5bWw6ImNvZGUiLHhtbDoiY29kZSIsc3FsOiJjb2RlIixzaDoiY29kZSIsYmFzaDoiY29kZSIsenNoOiJjb2RlIixtZDoiY29kZSIsYzoiY29kZSIsY3BwOiJjb2RlIixoOiJjb2RlIixocHA6ImNvZGUiLHJiOiJjb2RlIixwaHA6ImNvZGUiLHN3aWZ0OiJjb2RlIixrdDoiY29kZSIsdHh0OiJ0ZXh0Iixsb2c6InRleHQiLGNzdjoidGV4dCIsZW52OiJ0ZXh0In0sZ3ZhPXsiaW1hZ2UvIjoiaW1hZ2UiLCJhdWRpby8iOiJhdWRpbyIsInZpZGVvLyI6InZpZGVvIiwiYXBwbGljYXRpb24vcGRmIjoicGRmIn0seHZhPXt0czoidHlwZXNjcmlwdCIsdHN4OiJ0eXBlc2NyaXB0IixqczoiamF2YXNjcmlwdCIsanN4OiJqYXZhc2NyaXB0Iixqc29uOiJqc29uIixodG1sOiJ4bWwiLHhtbDoieG1sIixjc3M6ImNzcyIsc2Nzczoic2NzcyIsbGVzczoibGVzcyIscHk6InB5dGhvbiIsamF2YToiamF2YSIsZ286ImdvIixyczoicnVzdCIseWFtbDoieWFtbCIseW1sOiJ5YW1sIixzcWw6InNxbCIsc2g6ImJhc2giLGJhc2g6ImJhc2giLHpzaDoiYmFzaCIsYzoiYyIsY3BwOiJjcHAiLGg6ImMiLGhwcDoiY3BwIixyYjoicnVieSIscGhwOiJwaHAiLHN3aWZ0OiJzd2lmdCIsa3Q6ImtvdGxpbiIsbWQ6Im1hcmtkb3duIn0sYnZhPXtpbWFnZToibHVjaWRlOkltYWdlIixwZGY6Imx1Y2lkZTpGaWxlVGV4dCIsYXVkaW86Imx1Y2lkZTpNdXNpYyIsdmlkZW86Imx1Y2lkZTpWaWRlbyIsY29kZToibHVjaWRlOkNvZGUiLHRleHQ6Imx1Y2lkZTpGaWxlVGV4dCIsdW5rbm93bjoibHVjaWRlOkZpbGUifSxWRnI9KCgpPT57bGV0IGU9W3plKCJkZWVzLXByZXZpZXciKV0sdCxyPVtdLGEsaT1EZSxvLG49W10scz1bXSxjLGQ9W10sZj1bXSx1LHA9W10saD1bXSxiLHg9W10sZz1bXSx2LHc9W10sTT1bXSxGLEM9W10saz1bXSxOLCQ9W10sST1bXSxCLHo9W10seT1bXSxFLF89W10sUD1bXSxWLEg9W10sVz1bXSxhZSxUPVtdLEo9W10sZmUsTD1bXSxRPVtdLGtlLEc9W10sQT1bXSxELFI9W10sTz1bXSxZLHVlPVtdLHllPVtdLCRlLFU9W10scT1bXTt2YXIgaWU9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCB3ZT10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKCldLGM9W2ooe2F0dHJpYnV0ZTohMX0pXSx1PVtqKCldLGI9W2ooKV0sdj1baigpXSxGPVtqKCldLE49W2ooKV0sQj1baigpXSxFPVtqKHt0eXBlOkJvb2xlYW59KV0sVj1baih7dHlwZTpCb29sZWFufSldLGFlPVtyZSgpXSxmZT1bcmUoKV0sa2U9W3JlKCldLEQ9W3JlKCldLFk9W3JlKCldLCRlPVtyZSgpXSx2MSh0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InVybCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Z2U9PiJ1cmwiaW4gZ2UsZ2V0OmdlPT5nZS51cmwsc2V0OihnZSxBZSk9PntnZS51cmw9QWV9fSxtZXRhZGF0YTp3ZX0sbixzKSx2MSh0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImZpbGUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmdlPT4iZmlsZSJpbiBnZSxnZXQ6Z2U9PmdlLmZpbGUsc2V0OihnZSxBZSk9PntnZS5maWxlPUFlfX0sbWV0YWRhdGE6d2V9LGQsZiksdjEodGhpcyxudWxsLHUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJiYXNlNjQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmdlPT4iYmFzZTY0ImluIGdlLGdldDpnZT0+Z2UuYmFzZTY0LHNldDooZ2UsQWUpPT57Z2UuYmFzZTY0PUFlfX0sbWV0YWRhdGE6d2V9LHAsaCksdjEodGhpcyxudWxsLGIse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ0ZXh0Q29udGVudCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Z2U9PiJ0ZXh0Q29udGVudCJpbiBnZSxnZXQ6Z2U9PmdlLnRleHRDb250ZW50LHNldDooZ2UsQWUpPT57Z2UudGV4dENvbnRlbnQ9QWV9fSxtZXRhZGF0YTp3ZX0seCxnKSx2MSh0aGlzLG51bGwsdix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImNvbnRlbnRUeXBlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpnZT0+ImNvbnRlbnRUeXBlImluIGdlLGdldDpnZT0+Z2UuY29udGVudFR5cGUsc2V0OihnZSxBZSk9PntnZS5jb250ZW50VHlwZT1BZX19LG1ldGFkYXRhOndlfSx3LE0pLHYxKHRoaXMsbnVsbCxGLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibGFuZ3VhZ2UiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmdlPT4ibGFuZ3VhZ2UiaW4gZ2UsZ2V0OmdlPT5nZS5sYW5ndWFnZSxzZXQ6KGdlLEFlKT0+e2dlLmxhbmd1YWdlPUFlfX0sbWV0YWRhdGE6d2V9LEMsayksdjEodGhpcyxudWxsLE4se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJtaW1lVHlwZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Z2U9PiJtaW1lVHlwZSJpbiBnZSxnZXQ6Z2U9PmdlLm1pbWVUeXBlLHNldDooZ2UsQWUpPT57Z2UubWltZVR5cGU9QWV9fSxtZXRhZGF0YTp3ZX0sJCxJKSx2MSh0aGlzLG51bGwsQix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImZpbGVuYW1lIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpnZT0+ImZpbGVuYW1lImluIGdlLGdldDpnZT0+Z2UuZmlsZW5hbWUsc2V0OihnZSxBZSk9PntnZS5maWxlbmFtZT1BZX19LG1ldGFkYXRhOndlfSx6LHkpLHYxKHRoaXMsbnVsbCxFLHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2hvd1Rvb2xiYXIiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmdlPT4ic2hvd1Rvb2xiYXIiaW4gZ2UsZ2V0OmdlPT5nZS5zaG93VG9vbGJhcixzZXQ6KGdlLEFlKT0+e2dlLnNob3dUb29sYmFyPUFlfX0sbWV0YWRhdGE6d2V9LF8sUCksdjEodGhpcyxudWxsLFYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzaG93RmlsZW5hbWUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmdlPT4ic2hvd0ZpbGVuYW1lImluIGdlLGdldDpnZT0+Z2Uuc2hvd0ZpbGVuYW1lLHNldDooZ2UsQWUpPT57Z2Uuc2hvd0ZpbGVuYW1lPUFlfX0sbWV0YWRhdGE6d2V9LEgsVyksdjEodGhpcyxudWxsLGFlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToicmVzb2x2ZWRUeXBlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpnZT0+InJlc29sdmVkVHlwZSJpbiBnZSxnZXQ6Z2U9PmdlLnJlc29sdmVkVHlwZSxzZXQ6KGdlLEFlKT0+e2dlLnJlc29sdmVkVHlwZT1BZX19LG1ldGFkYXRhOndlfSxULEopLHYxKHRoaXMsbnVsbCxmZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InJlc29sdmVkU3JjIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpnZT0+InJlc29sdmVkU3JjImluIGdlLGdldDpnZT0+Z2UucmVzb2x2ZWRTcmMsc2V0OihnZSxBZSk9PntnZS5yZXNvbHZlZFNyYz1BZX19LG1ldGFkYXRhOndlfSxMLFEpLHYxKHRoaXMsbnVsbCxrZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InJlc29sdmVkVGV4dCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Z2U9PiJyZXNvbHZlZFRleHQiaW4gZ2UsZ2V0OmdlPT5nZS5yZXNvbHZlZFRleHQsc2V0OihnZSxBZSk9PntnZS5yZXNvbHZlZFRleHQ9QWV9fSxtZXRhZGF0YTp3ZX0sRyxBKSx2MSh0aGlzLG51bGwsRCx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InJlc29sdmVkTGFuZyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Z2U9PiJyZXNvbHZlZExhbmciaW4gZ2UsZ2V0OmdlPT5nZS5yZXNvbHZlZExhbmcsc2V0OihnZSxBZSk9PntnZS5yZXNvbHZlZExhbmc9QWV9fSxtZXRhZGF0YTp3ZX0sUixPKSx2MSh0aGlzLG51bGwsWSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImxvYWRpbmciLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmdlPT4ibG9hZGluZyJpbiBnZSxnZXQ6Z2U9PmdlLmxvYWRpbmcsc2V0OihnZSxBZSk9PntnZS5sb2FkaW5nPUFlfX0sbWV0YWRhdGE6d2V9LHVlLHllKSx2MSh0aGlzLG51bGwsJGUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJlcnJvciIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Z2U9PiJlcnJvciJpbiBnZSxnZXQ6Z2U9PmdlLmVycm9yLHNldDooZ2UsQWUpPT57Z2UuZXJyb3I9QWV9fSxtZXRhZGF0YTp3ZX0sVSxxKSx2MShudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTp3ZX0sbnVsbCxyKSxpZT1hPXQudmFsdWUsd2UmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6d2V9KX1zdGF0aWMgZGVtbz1IRnI7c3RhdGljIGRlbW9Hcm91cHM9WyJNZWRpYSIsIkRhdGEgVmlldyJdOyNlPURyKHRoaXMsbiwiIik7Z2V0IHVybCgpe3JldHVybiB0aGlzLiNlfXNldCB1cmwod2Upe3RoaXMuI2U9d2V9I3Q9KERyKHRoaXMscyksRHIodGhpcyxkLHZvaWQgMCkpO2dldCBmaWxlKCl7cmV0dXJuIHRoaXMuI3R9c2V0IGZpbGUod2Upe3RoaXMuI3Q9d2V9I3I9KERyKHRoaXMsZiksRHIodGhpcyxwLCIiKSk7Z2V0IGJhc2U2NCgpe3JldHVybiB0aGlzLiNyfXNldCBiYXNlNjQod2Upe3RoaXMuI3I9d2V9I2E9KERyKHRoaXMsaCksRHIodGhpcyx4LCIiKSk7Z2V0IHRleHRDb250ZW50KCl7cmV0dXJuIHRoaXMuI2F9c2V0IHRleHRDb250ZW50KHdlKXt0aGlzLiNhPXdlfSNpPShEcih0aGlzLGcpLERyKHRoaXMsdyx2b2lkIDApKTtnZXQgY29udGVudFR5cGUoKXtyZXR1cm4gdGhpcy4jaX1zZXQgY29udGVudFR5cGUod2Upe3RoaXMuI2k9d2V9I289KERyKHRoaXMsTSksRHIodGhpcyxDLCIiKSk7Z2V0IGxhbmd1YWdlKCl7cmV0dXJuIHRoaXMuI299c2V0IGxhbmd1YWdlKHdlKXt0aGlzLiNvPXdlfSNuPShEcih0aGlzLGspLERyKHRoaXMsJCwiIikpO2dldCBtaW1lVHlwZSgpe3JldHVybiB0aGlzLiNufXNldCBtaW1lVHlwZSh3ZSl7dGhpcy4jbj13ZX0jcz0oRHIodGhpcyxJKSxEcih0aGlzLHosIiIpKTtnZXQgZmlsZW5hbWUoKXtyZXR1cm4gdGhpcy4jc31zZXQgZmlsZW5hbWUod2Upe3RoaXMuI3M9d2V9I2w9KERyKHRoaXMseSksRHIodGhpcyxfLCEwKSk7Z2V0IHNob3dUb29sYmFyKCl7cmV0dXJuIHRoaXMuI2x9c2V0IHNob3dUb29sYmFyKHdlKXt0aGlzLiNsPXdlfSNjPShEcih0aGlzLFApLERyKHRoaXMsSCwhMCkpO2dldCBzaG93RmlsZW5hbWUoKXtyZXR1cm4gdGhpcy4jY31zZXQgc2hvd0ZpbGVuYW1lKHdlKXt0aGlzLiNjPXdlfSNkPShEcih0aGlzLFcpLERyKHRoaXMsVCwidW5rbm93biIpKTtnZXQgcmVzb2x2ZWRUeXBlKCl7cmV0dXJuIHRoaXMuI2R9c2V0IHJlc29sdmVkVHlwZSh3ZSl7dGhpcy4jZD13ZX0jdT0oRHIodGhpcyxKKSxEcih0aGlzLEwsIiIpKTtnZXQgcmVzb2x2ZWRTcmMoKXtyZXR1cm4gdGhpcy4jdX1zZXQgcmVzb2x2ZWRTcmMod2Upe3RoaXMuI3U9d2V9I2Y9KERyKHRoaXMsUSksRHIodGhpcyxHLCIiKSk7Z2V0IHJlc29sdmVkVGV4dCgpe3JldHVybiB0aGlzLiNmfXNldCByZXNvbHZlZFRleHQod2Upe3RoaXMuI2Y9d2V9I3A9KERyKHRoaXMsQSksRHIodGhpcyxSLCJ0ZXh0IikpO2dldCByZXNvbHZlZExhbmcoKXtyZXR1cm4gdGhpcy4jcH1zZXQgcmVzb2x2ZWRMYW5nKHdlKXt0aGlzLiNwPXdlfSNoPShEcih0aGlzLE8pLERyKHRoaXMsdWUsITEpKTtnZXQgbG9hZGluZygpe3JldHVybiB0aGlzLiNofXNldCBsb2FkaW5nKHdlKXt0aGlzLiNoPXdlfSNtPShEcih0aGlzLHllKSxEcih0aGlzLFUsIiIpKTtnZXQgZXJyb3IoKXtyZXR1cm4gdGhpcy4jbX1zZXQgZXJyb3Iod2Upe3RoaXMuI209d2V9b2JqZWN0VXJsPShEcih0aGlzLHEpLCIiKTtyZW5kZXIoKXtsZXQgd2U9dGhpcy5maWxlbmFtZXx8dGhpcy5maWxlPy5uYW1lfHx0aGlzLmdldEZpbGVuYW1lRnJvbVVybCgpfHwiIjtyZXR1cm4gU2AKICAgICAgPHN0eWxlPgogICAgICAgIDpob3N0IHsKICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgICAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgJ1NlZ29lIFVJJywgUm9ib3RvLCBzYW5zLXNlcmlmOwogICAgICAgIH0KCiAgICAgICAgLnByZXZpZXctY29udGFpbmVyIHsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCIjMjcyNzJhIil9OwogICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4OwogICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZmZmZmZmIiwiIzA5MDkwYiIpfTsKICAgICAgICB9CgogICAgICAgIC5oZWFkZXItYmFyIHsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgICAgZ2FwOiA4cHg7CiAgICAgICAgICBwYWRkaW5nOiAwIDE2cHg7CiAgICAgICAgICBoZWlnaHQ6IDQwcHg7CiAgICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2Y5ZmFmYiIsImhzbCgyMTUgMjAlIDE1JSkiKX07CiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNlNWU3ZWIiLCJoc2woMjE3IDI1JSAyMiUpIil9OwogICAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgICAgfQoKICAgICAgICAuaGVhZGVyLWljb24gewogICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE1IDE2JSA0NSUpIiwiaHNsKDIxNSAxNiUgNzUlKSIpfTsKICAgICAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgICAgICAgZm9udC1zaXplOiAxNnB4OwogICAgICAgIH0KCiAgICAgICAgLmhlYWRlci1maWxlbmFtZSB7CiAgICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMDkwOTBiIiwiI2ZhZmFmYSIpfTsKICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsKICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgICAgICAgICBmbGV4OiAxOwogICAgICAgIH0KCiAgICAgICAgLmhlYWRlci1iYWRnZSB7CiAgICAgICAgICBmb250LXNpemU6IDExcHg7CiAgICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgICAgcGFkZGluZzogMnB4IDhweDsKICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJyZ2JhKDU5LCAxMzAsIDI0NiwgMC4xKSIsInJnYmEoNTksIDEzMCwgMjQ2LCAwLjE1KSIpfTsKICAgICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzNiODJmNiIsIiM2MGE1ZmEiKX07CiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwogICAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgICAgfQoKICAgICAgICAuY29udGVudC1hcmVhIHsKICAgICAgICAgIGZsZXg6IDE7CiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgICAgbWluLWhlaWdodDogMjAwcHg7CiAgICAgICAgfQoKICAgICAgICAuY29udGVudC1hcmVhID4gKiB7CiAgICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICB9CgogICAgICAgIGRlZXMtaW1hZ2Utdmlld2VyIHsKICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIH0KCiAgICAgICAgZGVlcy1wZGYtdmlld2VyIHsKICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIH0KCiAgICAgICAgZGVlcy12aWRlby12aWV3ZXIgewogICAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgfQoKICAgICAgICBkZWVzLWF1ZGlvLXZpZXdlciB7CiAgICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICB9CgogICAgICAgIGRlZXMtZGF0YXZpZXctY29kZWJveCB7CiAgICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICB9CgogICAgICAgIC50ZXh0LXZpZXdlciB7CiAgICAgICAgICBtYXJnaW46IDA7CiAgICAgICAgICBwYWRkaW5nOiAxNnB4OwogICAgICAgICAgZm9udC1mYW1pbHk6IHVpLW1vbm9zcGFjZSwgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBtb25vc3BhY2U7CiAgICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgICBsaW5lLWhlaWdodDogMS41OwogICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMDkwOTBiIiwiI2ZhZmFmYSIpfTsKICAgICAgICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDsKICAgICAgICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDsKICAgICAgICAgIG92ZXJmbG93OiBhdXRvOwogICAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAgICB9CgogICAgICAgIC5wbGFjZWhvbGRlciB7CiAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICAgIGdhcDogMTJweDsKICAgICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICAgIG1pbi1oZWlnaHQ6IDIwMHB4OwogICAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjYTFhMWFhIiwiIzcxNzE3YSIpfTsKICAgICAgICB9CgogICAgICAgIC5wbGFjZWhvbGRlciBkZWVzLWljb24gewogICAgICAgICAgb3BhY2l0eTogMC41OwogICAgICAgICAgZm9udC1zaXplOiAzMnB4OwogICAgICAgIH0KCiAgICAgICAgLnBsYWNlaG9sZGVyLXRleHQgewogICAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIH0KCiAgICAgICAgLmxvYWRpbmctY29udGFpbmVyIHsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgICBtaW4taGVpZ2h0OiAyMDBweDsKICAgICAgICB9CgogICAgICAgIC5sb2FkaW5nLXNwaW5uZXIgewogICAgICAgICAgd2lkdGg6IDMycHg7CiAgICAgICAgICBoZWlnaHQ6IDMycHg7CiAgICAgICAgICBib3JkZXI6IDNweCBzb2xpZCAke20uYmRUaGVtZSgiI2U1ZTdlYiIsIiMzZjNmNDYiKX07CiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAke20uYmRUaGVtZSgiIzNiODJmNiIsIiM2MGE1ZmEiKX07CiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICAgICAgICBhbmltYXRpb246IHNwaW4gMC44cyBsaW5lYXIgaW5maW5pdGU7CiAgICAgICAgfQoKICAgICAgICBAa2V5ZnJhbWVzIHNwaW4gewogICAgICAgICAgdG8geyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9CiAgICAgICAgfQoKICAgICAgICAuZXJyb3ItY29udGFpbmVyIHsKICAgICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgICAgZ2FwOiA4cHg7CiAgICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgICBtaW4taGVpZ2h0OiAyMDBweDsKICAgICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiI2RjMjYyNiIsIiNmODcxNzEiKX07CiAgICAgICAgfQoKICAgICAgICAuZXJyb3ItY29udGFpbmVyIGRlZXMtaWNvbiB7CiAgICAgICAgICBmb250LXNpemU6IDMycHg7CiAgICAgICAgfQoKICAgICAgICAuZXJyb3ItdGV4dCB7CiAgICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgfQogICAgICA8L3N0eWxlPgoKICAgICAgPGRpdiBjbGFzcz0icHJldmlldy1jb250YWluZXIiPgogICAgICAgICR7dGhpcy5zaG93RmlsZW5hbWUmJndlP1NgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJoZWFkZXItYmFyIj4KICAgICAgICAgICAgPGRlZXMtaWNvbiBjbGFzcz0iaGVhZGVyLWljb24iIGljb249IiR7YnZhW3RoaXMucmVzb2x2ZWRUeXBlXX0iPjwvZGVlcy1pY29uPgogICAgICAgICAgICA8c3BhbiBjbGFzcz0iaGVhZGVyLWZpbGVuYW1lIj4ke3dlfTwvc3Bhbj4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImhlYWRlci1iYWRnZSI+JHt0aGlzLnJlc29sdmVkVHlwZX08L3NwYW4+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICBgOiIifQoKICAgICAgICA8ZGl2IGNsYXNzPSJjb250ZW50LWFyZWEiPgogICAgICAgICAgJHt0aGlzLmVycm9yP1NgCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImVycm9yLWNvbnRhaW5lciI+CiAgICAgICAgICAgICAgPGRlZXMtaWNvbiBpY29uPSJsdWNpZGU6QWxlcnRUcmlhbmdsZSI+PC9kZWVzLWljb24+CiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImVycm9yLXRleHQiPiR7dGhpcy5lcnJvcn08L3NwYW4+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgYDp0aGlzLmxvYWRpbmc/U2AKICAgICAgICAgICAgPGRpdiBjbGFzcz0ibG9hZGluZy1jb250YWluZXIiPgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxvYWRpbmctc3Bpbm5lciI+PC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgYDp0aGlzLnJlbmRlckNvbnRlbnQoKX0KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICBgfXJlbmRlckNvbnRlbnQoKXtzd2l0Y2godGhpcy5yZXNvbHZlZFR5cGUpe2Nhc2UiaW1hZ2UiOnJldHVybiBTYAogICAgICAgICAgPGRlZXMtaW1hZ2Utdmlld2VyCiAgICAgICAgICAgIC5zcmM9JHt0aGlzLnJlc29sdmVkU3JjfQogICAgICAgICAgICAuc2hvd1Rvb2xiYXI9JHt0aGlzLnNob3dUb29sYmFyfQogICAgICAgICAgICBhbHQ9IiR7dGhpcy5maWxlbmFtZXx8IiJ9IgogICAgICAgICAgPjwvZGVlcy1pbWFnZS12aWV3ZXI+CiAgICAgICAgYDtjYXNlInBkZiI6cmV0dXJuIFNgCiAgICAgICAgICA8ZGVlcy1wZGYtdmlld2VyCiAgICAgICAgICAgIC5wZGZVcmw9JHt0aGlzLnJlc29sdmVkU3JjfQogICAgICAgICAgICAuc2hvd1Rvb2xiYXI9JHt0aGlzLnNob3dUb29sYmFyfQogICAgICAgICAgICBpbml0aWFsWm9vbT0icGFnZS1maXQiCiAgICAgICAgICA+PC9kZWVzLXBkZi12aWV3ZXI+CiAgICAgICAgYDtjYXNlImF1ZGlvIjpyZXR1cm4gU2AKICAgICAgICAgIDxkZWVzLWF1ZGlvLXZpZXdlcgogICAgICAgICAgICAuc3JjPSR7dGhpcy5yZXNvbHZlZFNyY30KICAgICAgICAgICAgLnRpdGxlPSR7dGhpcy5maWxlbmFtZXx8dGhpcy5maWxlPy5uYW1lfHwiIn0KICAgICAgICAgID48L2RlZXMtYXVkaW8tdmlld2VyPgogICAgICAgIGA7Y2FzZSJ2aWRlbyI6cmV0dXJuIFNgCiAgICAgICAgICA8ZGVlcy12aWRlby12aWV3ZXIKICAgICAgICAgICAgLnNyYz0ke3RoaXMucmVzb2x2ZWRTcmN9CiAgICAgICAgICA+PC9kZWVzLXZpZGVvLXZpZXdlcj4KICAgICAgICBgO2Nhc2UiY29kZSI6cmV0dXJuIFNgCiAgICAgICAgICA8ZGVlcy1kYXRhdmlldy1jb2RlYm94CiAgICAgICAgICAgIC5wcm9nTGFuZz0ke3RoaXMucmVzb2x2ZWRMYW5nfQogICAgICAgICAgICAuY29kZVRvRGlzcGxheT0ke3RoaXMucmVzb2x2ZWRUZXh0fQogICAgICAgICAgPjwvZGVlcy1kYXRhdmlldy1jb2RlYm94PgogICAgICAgIGA7Y2FzZSJ0ZXh0IjpyZXR1cm4gU2A8cHJlIGNsYXNzPSJ0ZXh0LXZpZXdlciI+JHt0aGlzLnJlc29sdmVkVGV4dH08L3ByZT5gO2RlZmF1bHQ6cmV0dXJuIFNgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGFjZWhvbGRlciI+CiAgICAgICAgICAgIDxkZWVzLWljb24gaWNvbj0ibHVjaWRlOkZpbGVRdWVzdGlvbiI+PC9kZWVzLWljb24+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJwbGFjZWhvbGRlci10ZXh0Ij5QcmV2aWV3IG5vdCBhdmFpbGFibGU8L3NwYW4+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICBgfX1hc3luYyB1cGRhdGVkKHdlKXtzdXBlci51cGRhdGVkKHdlKSxbInVybCIsImZpbGUiLCJiYXNlNjQiLCJ0ZXh0Q29udGVudCIsImNvbnRlbnRUeXBlIiwibGFuZ3VhZ2UiLCJtaW1lVHlwZSIsImZpbGVuYW1lIl0uc29tZSh4ZT0+d2UuaGFzKHhlKSkmJmF3YWl0IHRoaXMucmVzb2x2ZUNvbnRlbnQoKX1hc3luYyBkaXNjb25uZWN0ZWRDYWxsYmFjaygpe2F3YWl0IHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCksdGhpcy5yZXZva2VPYmplY3RVcmwoKX1hc3luYyByZXNvbHZlQ29udGVudCgpe3RoaXMuZXJyb3I9IiIsdGhpcy5yZXZva2VPYmplY3RVcmwoKSx0aGlzLnJlc29sdmVkVHlwZT10aGlzLmRldGVjdFR5cGUoKTt0cnl7aWYodGhpcy51cmwpe2lmKHRoaXMucmVzb2x2ZWRTcmM9dGhpcy51cmwsdGhpcy5yZXNvbHZlZFR5cGU9PT0iY29kZSJ8fHRoaXMucmVzb2x2ZWRUeXBlPT09InRleHQiKWlmKHRoaXMudGV4dENvbnRlbnQpdGhpcy5yZXNvbHZlZFRleHQ9dGhpcy50ZXh0Q29udGVudDtlbHNle3RoaXMubG9hZGluZz0hMDtsZXQgd2U9YXdhaXQgZmV0Y2godGhpcy51cmwpO3RoaXMucmVzb2x2ZWRUZXh0PWF3YWl0IHdlLnRleHQoKSx0aGlzLmxvYWRpbmc9ITF9fWVsc2UgaWYodGhpcy5maWxlKXRoaXMub2JqZWN0VXJsPVVSTC5jcmVhdGVPYmplY3RVUkwodGhpcy5maWxlKSx0aGlzLnJlc29sdmVkU3JjPXRoaXMub2JqZWN0VXJsLCh0aGlzLnJlc29sdmVkVHlwZT09PSJjb2RlInx8dGhpcy5yZXNvbHZlZFR5cGU9PT0idGV4dCIpJiYodGhpcy5sb2FkaW5nPSEwLHRoaXMucmVzb2x2ZWRUZXh0PWF3YWl0IHRoaXMuZmlsZS50ZXh0KCksdGhpcy5sb2FkaW5nPSExKTtlbHNlIGlmKHRoaXMuYmFzZTY0KXtsZXQgd2U9dGhpcy5taW1lVHlwZXx8ImFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbSI7dGhpcy5yZXNvbHZlZFNyYz1gZGF0YToke3dlfTtiYXNlNjQsJHt0aGlzLmJhc2U2NH1gfWVsc2UgdGhpcy50ZXh0Q29udGVudCYmKHRoaXMucmVzb2x2ZWRUZXh0PXRoaXMudGV4dENvbnRlbnQpfWNhdGNoe3RoaXMuZXJyb3I9IkZhaWxlZCB0byBsb2FkIGNvbnRlbnQiLHRoaXMubG9hZGluZz0hMX10aGlzLnJlc29sdmVkTGFuZz10aGlzLnJlc29sdmVMYW5ndWFnZSgpfWRldGVjdFR5cGUoKXtpZih0aGlzLmNvbnRlbnRUeXBlKXJldHVybiB0aGlzLmNvbnRlbnRUeXBlO2xldCB3ZT10aGlzLm1pbWVUeXBlfHx0aGlzLmZpbGU/LnR5cGV8fCIiO2lmKHdlKXtpZih3ZT09PSJhcHBsaWNhdGlvbi9wZGYiKXJldHVybiJwZGYiO2ZvcihsZXRbQWUseGVdb2YgT2JqZWN0LmVudHJpZXMoZ3ZhKSlpZih3ZS5zdGFydHNXaXRoKEFlKSlyZXR1cm4geGU7aWYod2Uuc3RhcnRzV2l0aCgidGV4dC8iKSlyZXR1cm4idGV4dCJ9bGV0IGdlPXRoaXMuZ2V0RXh0ZW5zaW9uKCk7cmV0dXJuIGdlJiZqRnJbZ2VdP2pGcltnZV06dGhpcy50ZXh0Q29udGVudD90aGlzLmxhbmd1YWdlPyJjb2RlIjoidGV4dCI6InVua25vd24ifWdldEV4dGVuc2lvbigpe2xldCB3ZT10aGlzLmZpbGVuYW1lfHx0aGlzLmZpbGU/Lm5hbWV8fCIiO2lmKHdlKXtsZXQgZ2U9d2Uuc3BsaXQoIi4iKTtpZihnZS5sZW5ndGg+MSlyZXR1cm4gZ2UucG9wKCkudG9Mb3dlckNhc2UoKX1pZih0aGlzLnVybCl0cnl7bGV0IEFlPW5ldyBVUkwodGhpcy51cmwsImh0dHBzOi8vcGxhY2Vob2xkZXIuY29tIikucGF0aG5hbWUuc3BsaXQoIi4iKTtpZihBZS5sZW5ndGg+MSlyZXR1cm4gQWUucG9wKCkudG9Mb3dlckNhc2UoKX1jYXRjaHt9cmV0dXJuIiJ9Z2V0RmlsZW5hbWVGcm9tVXJsKCl7aWYoIXRoaXMudXJsKXJldHVybiIiO3RyeXtyZXR1cm4gbmV3IFVSTCh0aGlzLnVybCwiaHR0cHM6Ly9wbGFjZWhvbGRlci5jb20iKS5wYXRobmFtZS5zcGxpdCgiLyIpLnBvcCgpfHwiIn1jYXRjaHtyZXR1cm4iIn19cmVzb2x2ZUxhbmd1YWdlKCl7aWYodGhpcy5sYW5ndWFnZSlyZXR1cm4gdGhpcy5sYW5ndWFnZTtsZXQgd2U9dGhpcy5nZXRFeHRlbnNpb24oKTtyZXR1cm4geHZhW3dlXXx8InRleHQifXJldm9rZU9iamVjdFVybCgpe3RoaXMub2JqZWN0VXJsJiYoVVJMLnJldm9rZU9iamVjdFVSTCh0aGlzLm9iamVjdFVybCksdGhpcy5vYmplY3RVcmw9IiIpfXN0YXRpY3tEcihhLHIpfX07cmV0dXJuIGllPWF9KSgpfSk7dmFyIFdGcj1sKCgpPT57VUZyKCl9KTt2YXIgZWcsbzB0PWwoKCk9PntlZz1jbGFzc3tzdGF0aWMgcG9vbD1bXTtzdGF0aWMgbWF4UG9vbFNpemU9MjA7c3RhdGljIE1JTl9DQU5WQVNfU0laRT0yNTY7c3RhdGljIE1BWF9DQU5WQVNfU0laRT00MDk2O3N0YXRpYyBhY3F1aXJlKHQscil7bGV0IGE9dGhpcy5wb29sLmZpbmQocz0+IXMuaW5Vc2UmJnMuY2FudmFzLndpZHRoPj10JiZzLmNhbnZhcy5oZWlnaHQ+PXImJnMuY2FudmFzLndpZHRoPD10KjEuNSYmcy5jYW52YXMuaGVpZ2h0PD1yKjEuNSk7aWYoYSlyZXR1cm4gYS5pblVzZT0hMCxhLmxhc3RVc2VkPURhdGUubm93KCksYS5jYW52YXMud2lkdGg9dCxhLmNhbnZhcy5oZWlnaHQ9cixhLmN0eC5jbGVhclJlY3QoMCwwLHQsciksYTtpZih0aGlzLnBvb2wubGVuZ3RoPHRoaXMubWF4UG9vbFNpemUpe2xldCBzPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImNhbnZhcyIpLGM9cy5nZXRDb250ZXh0KCIyZCIse2FscGhhOiEwLGRlc3luY2hyb25pemVkOiEwfSk7cy53aWR0aD1NYXRoLm1pbihNYXRoLm1heCh0LHRoaXMuTUlOX0NBTlZBU19TSVpFKSx0aGlzLk1BWF9DQU5WQVNfU0laRSkscy5oZWlnaHQ9TWF0aC5taW4oTWF0aC5tYXgocix0aGlzLk1JTl9DQU5WQVNfU0laRSksdGhpcy5NQVhfQ0FOVkFTX1NJWkUpO2xldCBkPXtjYW52YXM6cyxjdHg6YyxpblVzZTohMCxsYXN0VXNlZDpEYXRlLm5vdygpfTtyZXR1cm4gdGhpcy5wb29sLnB1c2goZCksZH1sZXQgaT10aGlzLnBvb2wuZmlsdGVyKHM9PiFzLmluVXNlKS5zb3J0KChzLGMpPT5zLmxhc3RVc2VkLWMubGFzdFVzZWQpWzBdO2lmKGkpcmV0dXJuIGkuY2FudmFzLndpZHRoPXQsaS5jYW52YXMuaGVpZ2h0PXIsaS5jdHguY2xlYXJSZWN0KDAsMCx0LHIpLGkuaW5Vc2U9ITAsaS5sYXN0VXNlZD1EYXRlLm5vdygpLGk7bGV0IG89ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiY2FudmFzIiksbj1vLmdldENvbnRleHQoIjJkIik7cmV0dXJuIG8ud2lkdGg9dCxvLmhlaWdodD1yLHtjYW52YXM6byxjdHg6bixpblVzZTohMCxsYXN0VXNlZDpEYXRlLm5vdygpfX1zdGF0aWMgcmVsZWFzZSh0KXt0aGlzLnBvb2wuaW5jbHVkZXModCkmJih0LmluVXNlPSExLHQuY3R4LmNsZWFyUmVjdCgwLDAsdC5jYW52YXMud2lkdGgsdC5jYW52YXMuaGVpZ2h0KSl9c3RhdGljIHJlbGVhc2VBbGwoKXtmb3IobGV0IHQgb2YgdGhpcy5wb29sKXQuaW5Vc2U9ITEsdC5jdHguY2xlYXJSZWN0KDAsMCx0LmNhbnZhcy53aWR0aCx0LmNhbnZhcy5oZWlnaHQpfXN0YXRpYyBkZXN0cm95KCl7Zm9yKGxldCB0IG9mIHRoaXMucG9vbCl0LmNhbnZhcy53aWR0aD0wLHQuY2FudmFzLmhlaWdodD0wO3RoaXMucG9vbD1bXX1zdGF0aWMgZ2V0U3RhdHMoKXtyZXR1cm57cG9vbFNpemU6dGhpcy5wb29sLmxlbmd0aCxtYXhQb29sU2l6ZTp0aGlzLm1heFBvb2xTaXplLGluVXNlOnRoaXMucG9vbC5maWx0ZXIodD0+dC5pblVzZSkubGVuZ3RoLGF2YWlsYWJsZTp0aGlzLnBvb2wuZmlsdGVyKHQ9PiF0LmluVXNlKS5sZW5ndGh9fXN0YXRpYyBhZGp1c3RQb29sU2l6ZSh0KXtpZih0PHRoaXMucG9vbC5sZW5ndGgpe2xldCByPXRoaXMucG9vbC5sZW5ndGgtdCxhPXRoaXMucG9vbC5maWx0ZXIoaT0+IWkuaW5Vc2UpLnNsaWNlKDAscik7Zm9yKGxldCBpIG9mIGEpe2xldCBvPXRoaXMucG9vbC5pbmRleE9mKGkpO28+LTEmJnRoaXMucG9vbC5zcGxpY2UobywxKX19dGhpcy5tYXhQb29sU2l6ZT10fX19KTtmdW5jdGlvbiB2dmEoZSx0KXtsZXQgcjtyZXR1cm4gZnVuY3Rpb24oLi4uaSl7bGV0IG89KCk9PntjbGVhclRpbWVvdXQociksZSguLi5pKX07Y2xlYXJUaW1lb3V0KHIpLHI9d2luZG93LnNldFRpbWVvdXQobyx0KX19ZnVuY3Rpb24geXZhKGUsdCl7bGV0IHI7cmV0dXJuIGZ1bmN0aW9uKC4uLmkpe3J8fChlLmFwcGx5KHRoaXMsaSkscj0hMCxzZXRUaW1lb3V0KCgpPT5yPSExLHQpKX19ZnVuY3Rpb24gbjB0KGUpe2lmKGU9PT0wKXJldHVybiIwIEJ5dGVzIjtsZXQgdD0xMDI0LHI9WyJCeXRlcyIsIktCIiwiTUIiLCJHQiJdLGE9TWF0aC5mbG9vcihNYXRoLmxvZyhlKS9NYXRoLmxvZyh0KSk7cmV0dXJuIE1hdGgucm91bmQoZS9NYXRoLnBvdyh0LGEpKjEwMCkvMTAwKyIgIityW2FdfWZ1bmN0aW9uIHd2YShlLHQ9MCl7bGV0IHI9ZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtyZXR1cm4gci50b3A+PS10JiZyLmxlZnQ+PS10JiZyLmJvdHRvbTw9KHdpbmRvdy5pbm5lckhlaWdodHx8ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodCkrdCYmci5yaWdodDw9KHdpbmRvdy5pbm5lcldpZHRofHxkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50V2lkdGgpK3R9dmFyIHRnLHMwdD1sKCgpPT57dGc9Y2xhc3N7c3RhdGljIG1hcmtzPW5ldyBNYXA7c3RhdGljIG1lYXN1cmVzPVtdO3N0YXRpYyBtYXJrKHQpe3RoaXMubWFya3Muc2V0KHQscGVyZm9ybWFuY2Uubm93KCkpfXN0YXRpYyBtZWFzdXJlKHQscil7bGV0IGE9dGhpcy5tYXJrcy5nZXQocik7aWYoYSl7bGV0IGk9cGVyZm9ybWFuY2Uubm93KCktYTtyZXR1cm4gdGhpcy5tZWFzdXJlcy5wdXNoKHtuYW1lOnQsZHVyYXRpb246aX0pLHRoaXMubWFya3MuZGVsZXRlKHIpLGl9cmV0dXJuIDB9c3RhdGljIGdldFJlcG9ydCgpe2xldCB0PXttZWFzdXJlczpbLi4udGhpcy5tZWFzdXJlc10sYXZlcmFnZXM6e319LHI9bmV3IE1hcDtmb3IobGV0IGEgb2YgdGhpcy5tZWFzdXJlcylyLmhhcyhhLm5hbWUpfHxyLnNldChhLm5hbWUsW10pLHIuZ2V0KGEubmFtZSkucHVzaChhLmR1cmF0aW9uKTtmb3IobGV0W2EsaV1vZiByKXQuYXZlcmFnZXNbYV09aS5yZWR1Y2UoKG8sbik9Pm8rbiwwKS9pLmxlbmd0aDtyZXR1cm4gdH1zdGF0aWMgY2xlYXIoKXt0aGlzLm1hcmtzLmNsZWFyKCksdGhpcy5tZWFzdXJlcz1bXX19fSk7dmFyIEdGcj1sKCgpPT57bzB0KCk7c2NlKCk7czB0KCl9KTt2YXIgWUZyPWwoKCk9PntpMHQoKX0pO3ZhciBlbyxVYz1sKCgpPT57U2UoKTtlbz1bbS5kZWZhdWx0U3R5bGVzLGxlYAogICAgOmhvc3QgewogICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIH0KCiAgICAudGlsZS1jb250YWluZXIgewogICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgIHdpZHRoOiAyMDBweDsKICAgICAgaGVpZ2h0OiAyNjBweDsKICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk4JSkiLCJoc2woMjE1IDIwJSAxNCUpIil9OwogICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4ycyBlYXNlOwogICAgICBib3gtc2hhZG93OiAwIDFweCAzcHggJHttLmJkVGhlbWUoInJnYmEoMCwgMCwgMCwgMC4xMikiLCJyZ2JhKDAsIDAsIDAsIDAuMjQpIil9OwoKICAgIH0KCiAgICAudGlsZS1jb250YWluZXIuY2xpY2thYmxlIHsKICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgfQoKICAgIC50aWxlLWNvbnRhaW5lci5jbGlja2FibGU6aG92ZXIgewogICAgICBib3gtc2hhZG93OiAwIDhweCAyNHB4ICR7bS5iZFRoZW1lKCJyZ2JhKDAsIDAsIDAsIDAuMTIpIiwicmdiYSgwLCAwLCAwLCAwLjMpIil9OwogICAgfQoKICAgIC50aWxlLWNvbnRhaW5lci5jbGlja2FibGU6aG92ZXIgLnRpbGUtb3ZlcmxheSB7CiAgICAgIG9wYWNpdHk6IDE7CiAgICB9CgogICAgLnRpbGUtY29udGVudCB7CiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgd2lkdGg6IDEwMCU7CiAgICAgIGhlaWdodDogMTAwJTsKICAgICAgZGlzcGxheTogZmxleDsKICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICB9CgogICAgLnRpbGUtb3ZlcmxheSB7CiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgdG9wOiAwOwogICAgICBsZWZ0OiAwOwogICAgICByaWdodDogMDsKICAgICAgYm90dG9tOiAwOwogICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgicmdiYSgwLCAwLCAwLCAwLjcpIiwicmdiYSgwLCAwLCAwLCAwLjgpIil9OwogICAgICBkaXNwbGF5OiBmbGV4OwogICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgZ2FwOiA4cHg7CiAgICAgIG9wYWNpdHk6IDA7CiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlOwogICAgICB6LWluZGV4OiAyMDsKICAgIH0KCiAgICAudGlsZS1vdmVybGF5IGRlZXMtaWNvbiB7CiAgICAgIGZvbnQtc2l6ZTogMjRweDsKICAgICAgY29sb3I6IHdoaXRlOwogICAgfQoKICAgIC50aWxlLW92ZXJsYXkgc3BhbiB7CiAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgY29sb3I6IHdoaXRlOwogICAgfQoKICAgIC50aWxlLWluZm8tYmFyIHsKICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICBib3R0b206IDA7CiAgICAgIGxlZnQ6IDA7CiAgICAgIHJpZ2h0OiAwOwogICAgICBwYWRkaW5nOiA0cHggOHB4OwogICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTAwJSAvIDAuOTUpIiwiaHNsKDIxNSAyMCUgMTIlIC8gMC45NSkiKX07CiAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgIGdhcDogNnB4OwogICAgICBmb250LXNpemU6IDEwcHg7CiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNSAxNiUgNDUlKSIsImhzbCgyMTUgMTYlIDc1JSkiKX07CiAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMnB4KTsKICAgICAgei1pbmRleDogMjU7CiAgICAgIGZvbnQtdmFyaWFudC1udW1lcmljOiB0YWJ1bGFyLW51bXM7CiAgICB9CgogICAgLmluZm8tbGFiZWwgewogICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsKICAgICAgbWluLXdpZHRoOiAwOwogICAgfQoKICAgIC5pbmZvLXNwYWNlciB7CiAgICAgIGZsZXg6IDE7CiAgICB9CgogICAgLmluZm8tZGV0YWlsIHsKICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKICAgICAgb3BhY2l0eTogMC43OwogICAgICBmbGV4LXNocmluazogMDsKICAgIH0KCiAgICAudGlsZS1sb2FkaW5nLAogICAgLnRpbGUtZXJyb3IgewogICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgIHRvcDogMDsKICAgICAgbGVmdDogMDsKICAgICAgcmlnaHQ6IDA7CiAgICAgIGJvdHRvbTogMDsKICAgICAgZGlzcGxheTogZmxleDsKICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgIGdhcDogMTJweDsKICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE1IDE2JSA0NSUpIiwiaHNsKDIxNSAxNiUgNzUlKSIpfTsKICAgIH0KCiAgICAudGlsZS1sb2FkaW5nIHsKICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk5JSkiLCJoc2woMjE1IDIwJSAxNCUpIil9OwogICAgfQoKICAgIC50aWxlLWVycm9yIHsKICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDcyJSA5OCUpIiwiaHNsKDAgNjIlIDIwJSkiKX07CiAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgNzIlIDQwJSkiLCJoc2woMCA3MCUgNjglKSIpfTsKICAgIH0KCiAgICAudGlsZS1lcnJvciBkZWVzLWljb24gewogICAgICBmb250LXNpemU6IDMycHg7CiAgICB9CgogICAgLnRpbGUtc3Bpbm5lciB7CiAgICAgIHdpZHRoOiAyNHB4OwogICAgICBoZWlnaHQ6IDI0cHg7CiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsKICAgICAgYm9yZGVyOiAycHggc29saWQgJHttLmJkVGhlbWUoImhzbCgyMTQgMzElIDg2JSkiLCJoc2woMjE3IDI1JSAyOCUpIil9OwogICAgICBib3JkZXItdG9wLWNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNyA5MSUgNjAlKSIsImhzbCgyMTMgOTMlIDY4JSkiKX07CiAgICAgIGFuaW1hdGlvbjogc3BpbiAwLjhzIGxpbmVhciBpbmZpbml0ZTsKICAgIH0KCiAgICAudGlsZS1sb2FkaW5nLXRleHQsCiAgICAudGlsZS1lcnJvci10ZXh0IHsKICAgICAgZm9udC1zaXplOiAxM3B4OwogICAgICBmb250LXdlaWdodDogNTAwOwogICAgfQoKICAgIEBrZXlmcmFtZXMgc3BpbiB7CiAgICAgIHRvIHsKICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOwogICAgICB9CiAgICB9CgogICAgLyogU2l6ZSB2YXJpYW50cyAqLwogICAgOmhvc3QoW3NpemU9InNtYWxsIl0pIC50aWxlLWNvbnRhaW5lciB7CiAgICAgIHdpZHRoOiAxNTBweDsKICAgICAgaGVpZ2h0OiAxOTVweDsKICAgIH0KCiAgICA6aG9zdChbc2l6ZT0ibGFyZ2UiXSkgLnRpbGUtY29udGFpbmVyIHsKICAgICAgd2lkdGg6IDI1MHB4OwogICAgICBoZWlnaHQ6IDMyNXB4OwogICAgfQoKICAgIC8qIEdyaWQgb3B0aW1pemF0aW9ucyAqLwogICAgOmhvc3QoW2dyaWQtbW9kZV0pIC50aWxlLWNvbnRhaW5lciB7CiAgICAgIHdpbGwtY2hhbmdlOiBhdXRvOwogICAgfQogIGBdfSk7dmFyIGpaLG1sLHlvLHgzPWwoKCk9PntTZSgpO1VjKCk7YnIoKTtqWj1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LG1sPWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSx5bz0oKCk9PntsZXQgZT1EZSx0LHI9W10sYT1bXSxpLG89W10sbj1bXSxzLGM9W10sZD1bXSxmLHU9W10scD1bXSxoLGI9W10seD1bXTtyZXR1cm4gY2xhc3MgZXh0ZW5kcyBle3N0YXRpY3tsZXQgdj10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShlW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDt0PVtqKHt0eXBlOkJvb2xlYW59KV0saT1baih7dHlwZTpCb29sZWFufSldLHM9W2ooe3R5cGU6Qm9vbGVhbn0pXSxmPVtqKHt0eXBlOlN0cmluZyxyZWZsZWN0OiEwfSldLGg9W2ooe3R5cGU6U3RyaW5nfSldLGpaKHRoaXMsbnVsbCx0LHtraW5kOiJhY2Nlc3NvciIsbmFtZToiY2xpY2thYmxlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp3PT4iY2xpY2thYmxlImluIHcsZ2V0Onc9PncuY2xpY2thYmxlLHNldDoodyxNKT0+e3cuY2xpY2thYmxlPU19fSxtZXRhZGF0YTp2fSxyLGEpLGpaKHRoaXMsbnVsbCxpLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibG9hZGluZyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6dz0+ImxvYWRpbmciaW4gdyxnZXQ6dz0+dy5sb2FkaW5nLHNldDoodyxNKT0+e3cubG9hZGluZz1NfX0sbWV0YWRhdGE6dn0sbyxuKSxqWih0aGlzLG51bGwscyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImVycm9yIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp3PT4iZXJyb3IiaW4gdyxnZXQ6dz0+dy5lcnJvcixzZXQ6KHcsTSk9Pnt3LmVycm9yPU19fSxtZXRhZGF0YTp2fSxjLGQpLGpaKHRoaXMsbnVsbCxmLHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2l6ZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6dz0+InNpemUiaW4gdyxnZXQ6dz0+dy5zaXplLHNldDoodyxNKT0+e3cuc2l6ZT1NfX0sbWV0YWRhdGE6dn0sdSxwKSxqWih0aGlzLG51bGwsaCx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImxhYmVsIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp3PT4ibGFiZWwiaW4gdyxnZXQ6dz0+dy5sYWJlbCxzZXQ6KHcsTSk9Pnt3LmxhYmVsPU19fSxtZXRhZGF0YTp2fSxiLHgpLHYmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6dn0pfXN0YXRpYyBzdHlsZXM9ZW87I2U9bWwodGhpcyxyLCEwKTtnZXQgY2xpY2thYmxlKCl7cmV0dXJuIHRoaXMuI2V9c2V0IGNsaWNrYWJsZSh2KXt0aGlzLiNlPXZ9I3Q9KG1sKHRoaXMsYSksbWwodGhpcyxvLCExKSk7Z2V0IGxvYWRpbmcoKXtyZXR1cm4gdGhpcy4jdH1zZXQgbG9hZGluZyh2KXt0aGlzLiN0PXZ9I3I9KG1sKHRoaXMsbiksbWwodGhpcyxjLCExKSk7Z2V0IGVycm9yKCl7cmV0dXJuIHRoaXMuI3J9c2V0IGVycm9yKHYpe3RoaXMuI3I9dn0jYT0obWwodGhpcyxkKSxtbCh0aGlzLHUsImRlZmF1bHQiKSk7Z2V0IHNpemUoKXtyZXR1cm4gdGhpcy4jYX1zZXQgc2l6ZSh2KXt0aGlzLiNhPXZ9I2k9KG1sKHRoaXMscCksbWwodGhpcyxiLCIiKSk7Z2V0IGxhYmVsKCl7cmV0dXJuIHRoaXMuI2l9c2V0IGxhYmVsKHYpe3RoaXMuI2k9dn1vYnNlcnZlcj1tbCh0aGlzLHgpO192aXNpYmxlPSExO2dldCBpc1Zpc2libGUoKXtyZXR1cm4gdGhpcy5fdmlzaWJsZX1yZW5kZXIoKXtyZXR1cm4gU2AKICAgICAgPGRpdgogICAgICAgIGNsYXNzPSJ0aWxlLWNvbnRhaW5lciAke3RoaXMuY2xpY2thYmxlPyJjbGlja2FibGUiOiIifSAke3RoaXMubG9hZGluZz8ibG9hZGluZyI6IiJ9ICR7dGhpcy5lcnJvcj8iZXJyb3IiOiIifSIKICAgICAgICBAY2xpY2s9JHt0aGlzLmhhbmRsZVRpbGVDbGlja30KICAgICAgICBAbW91c2VlbnRlcj0ke3RoaXMub25UaWxlTW91c2VFbnRlcn0KICAgICAgICBAbW91c2VsZWF2ZT0ke3RoaXMub25UaWxlTW91c2VMZWF2ZX0KICAgICAgICBAbW91c2Vtb3ZlPSR7dGhpcy5vblRpbGVNb3VzZU1vdmV9CiAgICAgID4KICAgICAgICAke3RoaXMubG9hZGluZz9TYAogICAgICAgICAgPGRpdiBjbGFzcz0idGlsZS1sb2FkaW5nIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGlsZS1zcGlubmVyIj48L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idGlsZS1sb2FkaW5nLXRleHQiPkxvYWRpbmcuLi48L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgIGA6IiJ9CgogICAgICAgICR7dGhpcy5lcnJvcj9TYAogICAgICAgICAgPGRpdiBjbGFzcz0idGlsZS1lcnJvciI+CiAgICAgICAgICAgIDxkZWVzLWljb24gaWNvbj0ibHVjaWRlOkFsZXJ0VHJpYW5nbGUiPjwvZGVlcy1pY29uPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0aWxlLWVycm9yLXRleHQiPkZhaWxlZCB0byBsb2FkPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICBgOiIifQoKICAgICAgICAkeyF0aGlzLmxvYWRpbmcmJiF0aGlzLmVycm9yP3RoaXMucmVuZGVyVGlsZUNvbnRlbnQoKToiIn0KCiAgICAgICAgJHt0aGlzLnJlbmRlckJvdHRvbUJhcigpfQogICAgICA8L2Rpdj4KICAgIGB9cmVuZGVyQm90dG9tQmFyKCl7cmV0dXJuIiJ9YXN5bmMgY29ubmVjdGVkQ2FsbGJhY2soKXthd2FpdCBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpLHRoaXMuc2V0dXBJbnRlcnNlY3Rpb25PYnNlcnZlcigpfWFzeW5jIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCl7YXdhaXQgc3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKSx0aGlzLm9ic2VydmVyJiYodGhpcy5vYnNlcnZlci5kaXNjb25uZWN0KCksdGhpcy5vYnNlcnZlcj12b2lkIDApfXNldHVwSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoKXt0aGlzLm9ic2VydmVyPW5ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcih2PT57Zm9yKGxldCB3IG9mIHYpe2xldCBNPXRoaXMuX3Zpc2libGU7dGhpcy5fdmlzaWJsZT13LmlzSW50ZXJzZWN0aW5nLHRoaXMuX3Zpc2libGUmJiFNJiZ0aGlzLm9uQmVjYW1lVmlzaWJsZSgpfX0se3Jvb3Q6bnVsbCxyb290TWFyZ2luOiIyMDBweCIsdGhyZXNob2xkOi4wMX0pLHRoaXMub2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzKX1vbkJlY2FtZVZpc2libGUoKXt9b25UaWxlTW91c2VFbnRlcigpe31vblRpbGVNb3VzZUxlYXZlKCl7fW9uVGlsZU1vdXNlTW92ZSh2KXt9aGFuZGxlVGlsZUNsaWNrKCl7dGhpcy5jbGlja2FibGUmJnRoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoInRpbGUtY2xpY2siLHtkZXRhaWw6dGhpcy5nZXRUaWxlQ2xpY2tEZXRhaWwoKSxidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpfWdldFRpbGVDbGlja0RldGFpbCgpe3JldHVybnt9fX19KSgpfSk7dmFyIFpGcj1sKCgpPT57eDMoKTtVYygpfSk7dmFyIFhGcixRRnI9bCgoKT0+e1NlKCk7WEZyPWxlYAogIC5wcmV2aWV3LXN0YWNrIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIHdpZHRoOiAxMDAlOwogICAgaGVpZ2h0OiAxMDAlOwogICAgZGlzcGxheTogZmxleDsKICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgcGFkZGluZzogOHB4IDhweCAyOHB4IDhweDsKICB9CgogIC5wcmV2aWV3LXN0YWNrLm5vbi1hNCB7CiAgICBwYWRkaW5nOiAxMnB4IDEycHggMjhweCAxMnB4OwogIH0KCiAgLnByZXZpZXctY2FudmFzIHsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIGJhY2tncm91bmQ6IHdoaXRlOwogICAgZGlzcGxheTogYmxvY2s7CiAgICBtYXgtd2lkdGg6IDEwMCU7CiAgICBtYXgtaGVpZ2h0OiAxMDAlOwogICAgd2lkdGg6IGF1dG87CiAgICBoZWlnaHQ6IGF1dG87CiAgICBvYmplY3QtZml0OiBjb250YWluOwogICAgaW1hZ2UtcmVuZGVyaW5nOiBhdXRvOwogICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7CiAgICBib3gtc2hhZG93OiAwIDFweCAzcHggJHttLmJkVGhlbWUoInJnYmEoMCwgMCwgMCwgMC4xKSIsInJnYmEoMCwgMCwgMCwgMC4zKSIpfTsKICB9CgogIC5ub24tYTQgLnByZXZpZXctY2FudmFzIHsKICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMjE0IDMxJSA5MiUpIiwiaHNsKDIxNyAyNSUgMjQlKSIpfTsKICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICB9CgogIC8qIEdyaWQgb3B0aW1pemF0aW9ucyAqLwogIDpob3N0KFtncmlkLW1vZGVdKSAucHJldmlldy1jYW52YXMgewogICAgaW1hZ2UtcmVuZGVyaW5nOiAtd2Via2l0LW9wdGltaXplLWNvbnRyYXN0OwogICAgaW1hZ2UtcmVuZGVyaW5nOiBjcmlzcC1lZGdlczsKICB9CmB9KTt2YXIgS0ZyLEpGcj1sKCgpPT57U2UoKTtLRnI9KCk9PntsZXQgZT1bImh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9tb3ppbGxhL3BkZi5qcy9iYTJlZGVhZS9leGFtcGxlcy9sZWFybmluZy9oZWxsb3dvcmxkLnBkZiIsImh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9tb3ppbGxhL3BkZi5qcy9iYTJlZGVhZS93ZWIvY29tcHJlc3NlZC50cmFjZW1vbmtleS1wbGRpLTA5LnBkZiJdLHQ9cj0+e2xldCBhPVtdO2ZvcihsZXQgaT0wO2k8cjtpKyspe2xldCBvPWVbaSVlLmxlbmd0aF07YS5wdXNoKFNgCiAgICAgICAgPGRlZXMtdGlsZS1wZGYKICAgICAgICAgIHBkZlVybD0iJHtvfSIKICAgICAgICAgIGNsaWNrYWJsZT0idHJ1ZSIKICAgICAgICAgIGdyaWQtbW9kZQogICAgICAgICAgQHRpbGUtY2xpY2s9JHtuPT57Y29uc29sZS5sb2coIlBERiBUaWxlIGNsaWNrZWQ6IixuLmRldGFpbCksYWxlcnQoYFBERiBjbGlja2VkOiAke24uZGV0YWlsLnBhZ2VDb3VudH0gcGFnZXNgKX19CiAgICAgICAgPjwvZGVlcy10aWxlLXBkZj4KICAgICAgYCl9cmV0dXJuIGF9O3JldHVybiBTYAogICAgPHN0eWxlPgogICAgICAuZGVtby1jb250YWluZXIgewogICAgICAgIHBhZGRpbmc6IDQwcHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmNWY1ZjUiLCIjMGEwYTBhIil9OwogICAgICB9CgogICAgICAuZGVtby1zZWN0aW9uIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4OwogICAgICB9CgogICAgICBoMyB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsKICAgICAgICBmb250LXNpemU6IDE4cHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwOTA5MGIiLCIjZmFmYWZhIil9OwogICAgICB9CgogICAgICAucHJldmlldy1ncmlkIHsKICAgICAgICBkaXNwbGF5OiBncmlkOwogICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDIwMHB4LCAxZnIpKTsKICAgICAgICBnYXA6IDI0cHg7CiAgICAgIH0KCiAgICAgIC5wcmV2aWV3LXJvdyB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBnYXA6IDI0cHg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OwogICAgICB9CgogICAgICAucHJldmlldy1sYWJlbCB7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgbWluLXdpZHRoOiAxMDBweDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwOTA5MGIiLCIjZmFmYWZhIil9OwogICAgICB9CiAgICA8L3N0eWxlPgoKICAgIDxkaXYgY2xhc3M9ImRlbW8tY29udGFpbmVyIj4KICAgICAgPGRpdiBjbGFzcz0iZGVtby1zZWN0aW9uIj4KICAgICAgICA8aDM+U2luZ2xlIFBERiBUaWxlPC9oMz4KICAgICAgICA8ZGVlcy10aWxlLXBkZgogICAgICAgICAgcGRmVXJsPSJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vbW96aWxsYS9wZGYuanMvYmEyZWRlYWUvd2ViL2NvbXByZXNzZWQudHJhY2Vtb25rZXktcGxkaS0wOS5wZGYiCiAgICAgICAgICBjbGlja2FibGU9InRydWUiCiAgICAgICAgPjwvZGVlcy10aWxlLXBkZj4KICAgICAgPC9kaXY+CgogICAgICA8ZGl2IGNsYXNzPSJkZW1vLXNlY3Rpb24iPgogICAgICAgIDxoMz5EaWZmZXJlbnQgU2l6ZXM8L2gzPgogICAgICAgIDxkaXYgY2xhc3M9InByZXZpZXctcm93Ij4KICAgICAgICAgIDxkaXYgY2xhc3M9InByZXZpZXctbGFiZWwiPlNtYWxsOjwvZGl2PgogICAgICAgICAgPGRlZXMtdGlsZS1wZGYKICAgICAgICAgICAgc2l6ZT0ic21hbGwiCiAgICAgICAgICAgIHBkZlVybD0iaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL21vemlsbGEvcGRmLmpzL2JhMmVkZWFlL2V4YW1wbGVzL2xlYXJuaW5nL2hlbGxvd29ybGQucGRmIgogICAgICAgICAgICBjbGlja2FibGU9InRydWUiCiAgICAgICAgICA+PC9kZWVzLXRpbGUtcGRmPgogICAgICAgIDwvZGl2PgoKICAgICAgICA8ZGl2IGNsYXNzPSJwcmV2aWV3LXJvdyI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJwcmV2aWV3LWxhYmVsIj5EZWZhdWx0OjwvZGl2PgogICAgICAgICAgPGRlZXMtdGlsZS1wZGYKICAgICAgICAgICAgcGRmVXJsPSJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vbW96aWxsYS9wZGYuanMvYmEyZWRlYWUvZXhhbXBsZXMvbGVhcm5pbmcvaGVsbG93b3JsZC5wZGYiCiAgICAgICAgICAgIGNsaWNrYWJsZT0idHJ1ZSIKICAgICAgICAgID48L2RlZXMtdGlsZS1wZGY+CiAgICAgICAgPC9kaXY+CgogICAgICAgIDxkaXYgY2xhc3M9InByZXZpZXctcm93Ij4KICAgICAgICAgIDxkaXYgY2xhc3M9InByZXZpZXctbGFiZWwiPkxhcmdlOjwvZGl2PgogICAgICAgICAgPGRlZXMtdGlsZS1wZGYKICAgICAgICAgICAgc2l6ZT0ibGFyZ2UiCiAgICAgICAgICAgIHBkZlVybD0iaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL21vemlsbGEvcGRmLmpzL2JhMmVkZWFlL2V4YW1wbGVzL2xlYXJuaW5nL2hlbGxvd29ybGQucGRmIgogICAgICAgICAgICBjbGlja2FibGU9InRydWUiCiAgICAgICAgICA+PC9kZWVzLXRpbGUtcGRmPgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KCiAgICAgIDxkaXYgY2xhc3M9ImRlbW8tc2VjdGlvbiI+CiAgICAgICAgPGgzPldpdGggTGFiZWw8L2gzPgogICAgICAgIDxkZWVzLXRpbGUtcGRmCiAgICAgICAgICBwZGZVcmw9Imh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9tb3ppbGxhL3BkZi5qcy9iYTJlZGVhZS93ZWIvY29tcHJlc3NlZC50cmFjZW1vbmtleS1wbGRpLTA5LnBkZiIKICAgICAgICAgIGNsaWNrYWJsZT0idHJ1ZSIKICAgICAgICAgIGxhYmVsPSJSZXNlYXJjaCBQYXBlci5wZGYiCiAgICAgICAgPjwvZGVlcy10aWxlLXBkZj4KICAgICAgPC9kaXY+CgogICAgICA8ZGl2IGNsYXNzPSJkZW1vLXNlY3Rpb24iPgogICAgICAgIDxoMz5Ob24tQ2xpY2thYmxlPC9oMz4KICAgICAgICA8ZGVlcy10aWxlLXBkZgogICAgICAgICAgcGRmVXJsPSJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vbW96aWxsYS9wZGYuanMvYmEyZWRlYWUvZXhhbXBsZXMvbGVhcm5pbmcvaGVsbG93b3JsZC5wZGYiCiAgICAgICAgICBjbGlja2FibGU9ImZhbHNlIgogICAgICAgID48L2RlZXMtdGlsZS1wZGY+CiAgICAgIDwvZGl2PgoKICAgICAgPGRpdiBjbGFzcz0iZGVtby1zZWN0aW9uIj4KICAgICAgICA8aDM+R3JpZCAtIDIwIFBERnMgd2l0aCBMYXp5IExvYWRpbmc8L2gzPgogICAgICAgIDxkaXYgY2xhc3M9InByZXZpZXctZ3JpZCI+CiAgICAgICAgICAke3QoMjApfQogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIDwvZGl2PgogIGB9fSk7dmFyIGIzLHdvLGVPcix0T3I9bCgoKT0+e1NlKCk7eDMoKTtVYygpO3NjZSgpO28wdCgpO3MwdCgpO1FGcigpO0pGcigpO2IzPWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sd289ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LGVPcj0oKCk9PntsZXQgZT1bemUoImRlZXMtdGlsZS1wZGYiKV0sdCxyPVtdLGEsaT15byxvLG49W10scz1bXSxjLGQ9W10sZj1bXSx1LHA9W10saD1bXSxiLHg9W10sZz1bXSx2LHc9W10sTT1bXSxGLEM9W10saz1bXSxOLCQ9W10sST1bXTt2YXIgQj1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IHo9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baih7dHlwZTpTdHJpbmd9KV0sYz1baih7dHlwZTpOdW1iZXJ9KV0sdT1baih7dHlwZTpOdW1iZXJ9KV0sYj1baih7dHlwZTpCb29sZWFufSldLHY9W2ooe3R5cGU6Qm9vbGVhbn0pXSxGPVtqKHt0eXBlOkJvb2xlYW59KV0sTj1bcmUoKV0sYjModGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJwZGZVcmwiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnk9PiJwZGZVcmwiaW4geSxnZXQ6eT0+eS5wZGZVcmwsc2V0Oih5LEUpPT57eS5wZGZVcmw9RX19LG1ldGFkYXRhOnp9LG4scyksYjModGhpcyxudWxsLGMse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJjdXJyZW50UHJldmlld1BhZ2UiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnk9PiJjdXJyZW50UHJldmlld1BhZ2UiaW4geSxnZXQ6eT0+eS5jdXJyZW50UHJldmlld1BhZ2Usc2V0Oih5LEUpPT57eS5jdXJyZW50UHJldmlld1BhZ2U9RX19LG1ldGFkYXRhOnp9LGQsZiksYjModGhpcyxudWxsLHUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJwYWdlQ291bnQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnk9PiJwYWdlQ291bnQiaW4geSxnZXQ6eT0+eS5wYWdlQ291bnQsc2V0Oih5LEUpPT57eS5wYWdlQ291bnQ9RX19LG1ldGFkYXRhOnp9LHAsaCksYjModGhpcyxudWxsLGIse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJyZW5kZXJlZCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eT0+InJlbmRlcmVkImluIHksZ2V0Onk9PnkucmVuZGVyZWQsc2V0Oih5LEUpPT57eS5yZW5kZXJlZD1FfX0sbWV0YWRhdGE6en0seCxnKSxiMyh0aGlzLG51bGwsdix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImlzSG92ZXJpbmciLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnk9PiJpc0hvdmVyaW5nImluIHksZ2V0Onk9PnkuaXNIb3ZlcmluZyxzZXQ6KHksRSk9Pnt5LmlzSG92ZXJpbmc9RX19LG1ldGFkYXRhOnp9LHcsTSksYjModGhpcyxudWxsLEYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJpc0E0Rm9ybWF0IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5PT4iaXNBNEZvcm1hdCJpbiB5LGdldDp5PT55LmlzQTRGb3JtYXQsc2V0Oih5LEUpPT57eS5pc0E0Rm9ybWF0PUV9fSxtZXRhZGF0YTp6fSxDLGspLGIzKHRoaXMsbnVsbCxOLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZmlsZVNpemUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnk9PiJmaWxlU2l6ZSJpbiB5LGdldDp5PT55LmZpbGVTaXplLHNldDooeSxFKT0+e3kuZmlsZVNpemU9RX19LG1ldGFkYXRhOnp9LCQsSSksYjMobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6en0sbnVsbCxyKSxCPWE9dC52YWx1ZSx6JiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnp9KX1zdGF0aWMgZGVtbz1LRnI7c3RhdGljIGRlbW9Hcm91cHM9WyJNZWRpYSIsIlBERiJdO3N0YXRpYyBzdHlsZXM9Wy4uLmVvLFhGcl07I2U9d28odGhpcyxuLCIiKTtnZXQgcGRmVXJsKCl7cmV0dXJuIHRoaXMuI2V9c2V0IHBkZlVybCh6KXt0aGlzLiNlPXp9I3Q9KHdvKHRoaXMscyksd28odGhpcyxkLDEpKTtnZXQgY3VycmVudFByZXZpZXdQYWdlKCl7cmV0dXJuIHRoaXMuI3R9c2V0IGN1cnJlbnRQcmV2aWV3UGFnZSh6KXt0aGlzLiN0PXp9I3I9KHdvKHRoaXMsZiksd28odGhpcyxwLDApKTtnZXQgcGFnZUNvdW50KCl7cmV0dXJuIHRoaXMuI3J9c2V0IHBhZ2VDb3VudCh6KXt0aGlzLiNyPXp9I2E9KHdvKHRoaXMsaCksd28odGhpcyx4LCExKSk7Z2V0IHJlbmRlcmVkKCl7cmV0dXJuIHRoaXMuI2F9c2V0IHJlbmRlcmVkKHope3RoaXMuI2E9en0jaT0od28odGhpcyxnKSx3byh0aGlzLHcsITEpKTtnZXQgaXNIb3ZlcmluZygpe3JldHVybiB0aGlzLiNpfXNldCBpc0hvdmVyaW5nKHope3RoaXMuI2k9en0jbz0od28odGhpcyxNKSx3byh0aGlzLEMsITApKTtnZXQgaXNBNEZvcm1hdCgpe3JldHVybiB0aGlzLiNvfXNldCBpc0E0Rm9ybWF0KHope3RoaXMuI289en0jbj0od28odGhpcyxrKSx3byh0aGlzLCQsMCkpO2dldCBmaWxlU2l6ZSgpe3JldHVybiB0aGlzLiNufXNldCBmaWxlU2l6ZSh6KXt0aGlzLiNuPXp9cmVuZGVyUGFnZXNUYXNrPSh3byh0aGlzLEkpLG51bGwpO3JlbmRlclBhZ2VzUXVldWVkPSExO3BkZkRvY3VtZW50O2NhbnZhc2VzPVtdO3Jlc2l6ZU9ic2VydmVyO3N0YWNrRWxlbWVudD1udWxsO2xvYWRlZFBkZlVybD1udWxsO3JlbmRlclRpbGVDb250ZW50KCl7cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9InByZXZpZXctc3RhY2sgJHt0aGlzLmlzQTRGb3JtYXQ/IiI6Im5vbi1hNCJ9Ij4KICAgICAgICA8Y2FudmFzCiAgICAgICAgICBjbGFzcz0icHJldmlldy1jYW52YXMiCiAgICAgICAgICBkYXRhLXBhZ2U9IiR7dGhpcy5jdXJyZW50UHJldmlld1BhZ2V9IgogICAgICAgID48L2NhbnZhcz4KICAgICAgPC9kaXY+CgogICAgICAke3RoaXMuY2xpY2thYmxlP1NgCiAgICAgICAgPGRpdiBjbGFzcz0idGlsZS1vdmVybGF5Ij4KICAgICAgICAgIDxkZWVzLWljb24gaWNvbj0ibHVjaWRlOkV5ZSI+PC9kZWVzLWljb24+CiAgICAgICAgICA8c3Bhbj5WaWV3IFBERjwvc3Bhbj4KICAgICAgICA8L2Rpdj4KICAgICAgYDoiIn0KICAgIGB9cmVuZGVyQm90dG9tQmFyKCl7cmV0dXJuIXRoaXMucGFnZUNvdW50JiYhdGhpcy5sYWJlbD8iIjpTYAogICAgICA8ZGl2IGNsYXNzPSJ0aWxlLWluZm8tYmFyIj4KICAgICAgICAke3RoaXMubGFiZWw/U2A8c3BhbiBjbGFzcz0iaW5mby1sYWJlbCIgdGl0bGU9IiR7dGhpcy5sYWJlbH0iPiR7dGhpcy5sYWJlbH08L3NwYW4+YDoiIn0KICAgICAgICA8c3BhbiBjbGFzcz0iaW5mby1zcGFjZXIiPjwvc3Bhbj4KICAgICAgICAke3RoaXMucGFnZUNvdW50PjEmJnRoaXMuaXNIb3ZlcmluZz9TYDxzcGFuIGNsYXNzPSJpbmZvLWRldGFpbCI+JHt0aGlzLmN1cnJlbnRQcmV2aWV3UGFnZX0vJHt0aGlzLnBhZ2VDb3VudH08L3NwYW4+YDp0aGlzLnBhZ2VDb3VudD4wP1NgPHNwYW4gY2xhc3M9ImluZm8tZGV0YWlsIj4ke3RoaXMucGFnZUNvdW50fSBwZzwvc3Bhbj5gOiIifQogICAgICAgICR7dGhpcy5maWxlU2l6ZT4wP1NgPHNwYW4gY2xhc3M9ImluZm8tZGV0YWlsIj4ke24wdCh0aGlzLmZpbGVTaXplKX08L3NwYW4+YDoiIn0KICAgICAgPC9kaXY+CiAgICBgfWdldFRpbGVDbGlja0RldGFpbCgpe3JldHVybntwZGZVcmw6dGhpcy5wZGZVcmwscGFnZUNvdW50OnRoaXMucGFnZUNvdW50fX1vbkJlY2FtZVZpc2libGUoKXshdGhpcy5yZW5kZXJlZCYmdGhpcy5wZGZVcmwmJnRoaXMubG9hZEFuZFJlbmRlclByZXZpZXcoKX1vblRpbGVNb3VzZUVudGVyKCl7dGhpcy5pc0hvdmVyaW5nPSEwfW9uVGlsZU1vdXNlTGVhdmUoKXt0aGlzLmlzSG92ZXJpbmc9ITEsdGhpcy5jdXJyZW50UHJldmlld1BhZ2UhPT0xJiYodGhpcy5jdXJyZW50UHJldmlld1BhZ2U9MSx0aGlzLnNjaGVkdWxlUmVuZGVyUGFnZXMoKSl9b25UaWxlTW91c2VNb3ZlKHope2lmKCF0aGlzLmlzSG92ZXJpbmd8fHRoaXMucGFnZUNvdW50PD0xKXJldHVybjtsZXQgeT10aGlzLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLEU9ei5jbGllbnRYLXkubGVmdCxfPXkud2lkdGgsUD1NYXRoLm1heCgwLE1hdGgubWluKDEsRS9fKSksVj1NYXRoLmNlaWwoUCp0aGlzLnBhZ2VDb3VudCl8fDE7ViE9PXRoaXMuY3VycmVudFByZXZpZXdQYWdlJiYodGhpcy5jdXJyZW50UHJldmlld1BhZ2U9Vix0aGlzLnNjaGVkdWxlUmVuZGVyUGFnZXMoKSl9YXN5bmMgY29ubmVjdGVkQ2FsbGJhY2soKXthd2FpdCBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpLGF3YWl0IHRoaXMudXBkYXRlQ29tcGxldGUsdGhpcy5jYWNoZUVsZW1lbnRzKCksdGhpcy5zZXR1cFJlc2l6ZU9ic2VydmVyKCl9YXN5bmMgZGlzY29ubmVjdGVkQ2FsbGJhY2soKXthd2FpdCBzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpLHRoaXMuY2xlYW51cCgpLHRoaXMucmVzaXplT2JzZXJ2ZXI/LmRpc2Nvbm5lY3QoKSx0aGlzLnJlc2l6ZU9ic2VydmVyPXZvaWQgMH1hc3luYyBsb2FkQW5kUmVuZGVyUHJldmlldygpe2lmKCEodGhpcy5yZW5kZXJlZHx8dGhpcy5sb2FkaW5nKSl7dGhpcy5sb2FkaW5nPSEwLHRoaXMuZXJyb3I9ITEsdGcubWFyayhgcHJldmlldy1sb2FkLSR7dGhpcy5wZGZVcmx9YCk7dHJ5e3RoaXMucGRmRG9jdW1lbnQ9YXdhaXQgaGwubG9hZERvY3VtZW50KHRoaXMucGRmVXJsKSx0aGlzLnBhZ2VDb3VudD10aGlzLnBkZkRvY3VtZW50Lm51bVBhZ2VzLHRoaXMuY3VycmVudFByZXZpZXdQYWdlPTE7dHJ5e2xldCB5PWF3YWl0IHRoaXMucGRmRG9jdW1lbnQuZ2V0RG93bmxvYWRJbmZvKCk7dGhpcy5maWxlU2l6ZT15Lmxlbmd0aH1jYXRjaHt9dGhpcy5sb2FkZWRQZGZVcmw9dGhpcy5wZGZVcmwsdGhpcy5sb2FkaW5nPSExLGF3YWl0IHRoaXMudXBkYXRlQ29tcGxldGUsdGhpcy5jYWNoZUVsZW1lbnRzKCksYXdhaXQgdGhpcy5zY2hlZHVsZVJlbmRlclBhZ2VzKCksdGhpcy5yZW5kZXJlZD0hMDtsZXQgej10Zy5tZWFzdXJlKGBwcmV2aWV3LXJlbmRlci0ke3RoaXMucGRmVXJsfWAsYHByZXZpZXctbG9hZC0ke3RoaXMucGRmVXJsfWApO2NvbnNvbGUubG9nKGBQREYgdGlsZSByZW5kZXJlZCBpbiAke3p9bXNgKX1jYXRjaCh6KXtjb25zb2xlLmVycm9yKCJGYWlsZWQgdG8gbG9hZCBQREYgdGlsZToiLHopLHRoaXMuZXJyb3I9ITAsdGhpcy5sb2FkaW5nPSExfX19c2NoZWR1bGVSZW5kZXJQYWdlcygpe3JldHVybiB0aGlzLnBkZkRvY3VtZW50P3RoaXMucmVuZGVyUGFnZXNUYXNrPyh0aGlzLnJlbmRlclBhZ2VzUXVldWVkPSEwLHRoaXMucmVuZGVyUGFnZXNUYXNrKToodGhpcy5yZW5kZXJQYWdlc1Rhc2s9KGFzeW5jKCk9Pnt0cnl7YXdhaXQgdGhpcy5wZXJmb3JtUmVuZGVyUGFnZXMoKX1jYXRjaCh6KXtjb25zb2xlLmVycm9yKCJGYWlsZWQgdG8gcmVuZGVyIFBERiB0aWxlIHBhZ2VzOiIseil9fSkoKS5maW5hbGx5KCgpPT57dGhpcy5yZW5kZXJQYWdlc1Rhc2s9bnVsbCx0aGlzLnJlbmRlclBhZ2VzUXVldWVkJiYodGhpcy5yZW5kZXJQYWdlc1F1ZXVlZD0hMSx0aGlzLnNjaGVkdWxlUmVuZGVyUGFnZXMoKSl9KSx0aGlzLnJlbmRlclBhZ2VzVGFzayk6UHJvbWlzZS5yZXNvbHZlKCl9YXN5bmMgcGVyZm9ybVJlbmRlclBhZ2VzKCl7aWYoIXRoaXMucGRmRG9jdW1lbnQpcmV0dXJuO2F3YWl0IG5ldyBQcm9taXNlKF89PnJlcXVlc3RBbmltYXRpb25GcmFtZShfKSk7bGV0IHo9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCIucHJldmlldy1jYW52YXMiKTtpZigheilyZXR1cm47dGhpcy5jbGVhckNhbnZhc2VzKCksdGhpcy5jYWNoZUVsZW1lbnRzKCk7bGV0e2F2YWlsYWJsZVdpZHRoOnksYXZhaWxhYmxlSGVpZ2h0OkV9PXRoaXMuZ2V0QXZhaWxhYmxlU2l6ZSgpO3RyeXtsZXQgXz10aGlzLmN1cnJlbnRQcmV2aWV3UGFnZSxQPWF3YWl0IHRoaXMucGRmRG9jdW1lbnQuZ2V0UGFnZShfKSxWPVAuZ2V0Vmlld3BvcnQoe3NjYWxlOjF9KSxIPVYuaGVpZ2h0L1Yud2lkdGgsVz0xLjQxNCxhZT0uNzA3LFQ9MS4yOTQsSj0uNzczLGZlPS4wNSxMPU1hdGguYWJzKEgtVyk8VypmZSxRPU1hdGguYWJzKEgtYWUpPGFlKmZlLGtlPU1hdGguYWJzKEgtVCk8VCpmZSxHPU1hdGguYWJzKEgtSik8SipmZTt0aGlzLmlzQTRGb3JtYXQ9THx8UXx8a2V8fEc7bGV0IEE9dGhpcy5pc0E0Rm9ybWF0P3k6eS0yNCxEPXRoaXMuaXNBNEZvcm1hdD9FOkUtMjQsUj1BPjA/QS9WLndpZHRoOjAsTz1EPjA/RC9WLmhlaWdodDowLFk9TWF0aC5taW4oUnx8LjUsT3x8Unx8LjUpLHVlPU1hdGgubWluKFkqMiwzKTtpZighTnVtYmVyLmlzRmluaXRlKHVlKXx8dWU8PTApe1AuY2xlYW51cD8uKCk7cmV0dXJufWxldCB5ZT1QLmdldFZpZXdwb3J0KHtzY2FsZTp1ZX0pLCRlPWVnLmFjcXVpcmUoeWUud2lkdGgseWUuaGVpZ2h0KTt0aGlzLmNhbnZhc2VzLnB1c2goJGUpO2xldCBVPXtjYW52YXNDb250ZXh0OiRlLmN0eCx2aWV3cG9ydDp5ZX07YXdhaXQgUC5yZW5kZXIoVSkucHJvbWlzZSx6LndpZHRoPXllLndpZHRoLHouaGVpZ2h0PXllLmhlaWdodDtsZXQgcT1BLGllPXllLmhlaWdodC95ZS53aWR0aCpBO2lmKGllPkQpe2xldCBnZT1ELEFlPXllLndpZHRoL3llLmhlaWdodCpEO3ouc3R5bGUud2lkdGg9YCR7QWV9cHhgLHouc3R5bGUuaGVpZ2h0PWAke2dlfXB4YH1lbHNlIHouc3R5bGUud2lkdGg9YCR7cX1weGAsei5zdHlsZS5oZWlnaHQ9YCR7aWV9cHhgO2xldCB3ZT16LmdldENvbnRleHQoIjJkIik7d2UmJih3ZS5pbWFnZVNtb290aGluZ0VuYWJsZWQ9ITAsd2UuaW1hZ2VTbW9vdGhpbmdRdWFsaXR5PSJoaWdoIix3ZS5kcmF3SW1hZ2UoJGUuY2FudmFzLDAsMCkpLFAuY2xlYW51cCgpfWNhdGNoKF8pe2NvbnNvbGUuZXJyb3IoYEZhaWxlZCB0byByZW5kZXIgcGFnZSAke3RoaXMuY3VycmVudFByZXZpZXdQYWdlfTpgLF8pfX1jbGVhckNhbnZhc2VzKCl7Zm9yKGxldCB6IG9mIHRoaXMuY2FudmFzZXMpZWcucmVsZWFzZSh6KTt0aGlzLmNhbnZhc2VzPVtdfWNsZWFudXAoKXt0aGlzLmNsZWFyQ2FudmFzZXMoKSx0aGlzLnBkZkRvY3VtZW50JiYoaGwucmVsZWFzZURvY3VtZW50KHRoaXMubG9hZGVkUGRmVXJsPz90aGlzLnBkZlVybCksdGhpcy5wZGZEb2N1bWVudD1udWxsKSx0aGlzLnJlbmRlclBhZ2VzUXVldWVkPSExLHRoaXMucGFnZUNvdW50PTAsdGhpcy5jdXJyZW50UHJldmlld1BhZ2U9MSx0aGlzLmlzSG92ZXJpbmc9ITEsdGhpcy5pc0E0Rm9ybWF0PSEwLHRoaXMuc3RhY2tFbGVtZW50PW51bGwsdGhpcy5sb2FkZWRQZGZVcmw9bnVsbCx0aGlzLnJlbmRlcmVkPSExLHRoaXMubG9hZGluZz0hMSx0aGlzLmVycm9yPSExfWFzeW5jIHVwZGF0ZWQoeil7aWYoc3VwZXIudXBkYXRlZCh6KSx6LmhhcygicGRmVXJsIikmJnRoaXMucGRmVXJsKXtsZXQgeT16LmdldCgicGRmVXJsIik7eSYmaGwucmVsZWFzZURvY3VtZW50KHkpLHRoaXMuY2xlYW51cCgpLHRoaXMucmVuZGVyZWQ9ITEsdGhpcy5jdXJyZW50UHJldmlld1BhZ2U9MTtsZXQgRT10aGlzLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO0UudG9wPHdpbmRvdy5pbm5lckhlaWdodCYmRS5ib3R0b20+MCYmdGhpcy5sb2FkQW5kUmVuZGVyUHJldmlldygpfXouaGFzKCJjdXJyZW50UHJldmlld1BhZ2UiKSYmdGhpcy5yZW5kZXJlZCYmYXdhaXQgdGhpcy5zY2hlZHVsZVJlbmRlclBhZ2VzKCl9Z2V0Q29udGV4dE1lbnVJdGVtcygpe2xldCB6PVtdO3JldHVybiB0aGlzLmNsaWNrYWJsZSYmKHoucHVzaCh7bmFtZToiVmlldyBQREYiLGljb25OYW1lOiJsdWNpZGU6RXllIixhY3Rpb246YXN5bmMoKT0+e3RoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoInRpbGUtY2xpY2siLHtkZXRhaWw6dGhpcy5nZXRUaWxlQ2xpY2tEZXRhaWwoKSxidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpfX0pLHoucHVzaCh7ZGl2aWRlcjohMH0pKSx6LnB1c2goe25hbWU6Ik9wZW4gUERGIGluIE5ldyBUYWIiLGljb25OYW1lOiJsdWNpZGU6RXh0ZXJuYWxMaW5rIixhY3Rpb246YXN5bmMoKT0+e3dpbmRvdy5vcGVuKHRoaXMucGRmVXJsLCJfYmxhbmsiKX19LHtkaXZpZGVyOiEwfSx7bmFtZToiQ29weSBQREYgVVJMIixpY29uTmFtZToibHVjaWRlOkNvcHkiLGFjdGlvbjphc3luYygpPT57YXdhaXQgbmF2aWdhdG9yLmNsaXBib2FyZC53cml0ZVRleHQodGhpcy5wZGZVcmwpfX0se25hbWU6IkRvd25sb2FkIFBERiIsaWNvbk5hbWU6Imx1Y2lkZTpEb3dubG9hZCIsYWN0aW9uOmFzeW5jKCk9PntsZXQgeT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJhIik7eS5ocmVmPXRoaXMucGRmVXJsLHkuZG93bmxvYWQ9dGhpcy5wZGZVcmwuc3BsaXQoIi8iKS5wb3AoKXx8ImRvY3VtZW50LnBkZiIseS5jbGljaygpfX0pLHRoaXMucGFnZUNvdW50PjAmJnoucHVzaCh7ZGl2aWRlcjohMH0se25hbWU6YCR7dGhpcy5wYWdlQ291bnR9IHBhZ2Uke3RoaXMucGFnZUNvdW50PjE/InMiOiIifWAsaWNvbk5hbWU6Imx1Y2lkZTpGaWxlVGV4dCIsZGlzYWJsZWQ6ITAsYWN0aW9uOmFzeW5jKCk9Pnt9fSksen1jYWNoZUVsZW1lbnRzKCl7dGhpcy5zdGFja0VsZW1lbnR8fCh0aGlzLnN0YWNrRWxlbWVudD10aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoIi5wcmV2aWV3LXN0YWNrIikpfXNldHVwUmVzaXplT2JzZXJ2ZXIoKXt0aGlzLnJlc2l6ZU9ic2VydmVyfHwodGhpcy5yZXNpemVPYnNlcnZlcj1uZXcgUmVzaXplT2JzZXJ2ZXIoKCk9Pnt0aGlzLnJlbmRlcmVkJiZ0aGlzLnBkZkRvY3VtZW50JiYhdGhpcy5sb2FkaW5nJiZ0aGlzLnNjaGVkdWxlUmVuZGVyUGFnZXMoKX0pLHRoaXMucmVzaXplT2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzKSl9Z2V0QXZhaWxhYmxlU2l6ZSgpe2lmKHRoaXMuc3RhY2tFbGVtZW50fHwodGhpcy5zdGFja0VsZW1lbnQ9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCIucHJldmlldy1zdGFjayIpKSwhdGhpcy5zdGFja0VsZW1lbnQpcmV0dXJue2F2YWlsYWJsZVdpZHRoOjIwMCxhdmFpbGFibGVIZWlnaHQ6MjYwfTtsZXQgej10aGlzLnN0YWNrRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSx5PU1hdGgubWF4KHoud2lkdGgsMCl8fDIwMCxFPU1hdGgubWF4KHouaGVpZ2h0LDApfHwyNjA7cmV0dXJue2F2YWlsYWJsZVdpZHRoOnksYXZhaWxhYmxlSGVpZ2h0OkV9fXN0YXRpY3t3byhhLHIpfX07cmV0dXJuIEI9YX0pKCl9KTt2YXIgck9yPWwoKCk9Pnt0T3IoKX0pO3ZhciBhT3IsaU9yPWwoKCk9PntTZSgpO2FPcj0oKT0+U2AKICA8c3R5bGU+CiAgICAuZGVtby1jb250YWluZXIgewogICAgICBwYWRkaW5nOiA0MHB4OwogICAgICBiYWNrZ3JvdW5kOiAjZjVmNWY1OwogICAgfQogICAgLmRlbW8tc2VjdGlvbiB7CiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7CiAgICB9CiAgICBoMyB7CiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7CiAgICAgIGZvbnQtc2l6ZTogMThweDsKICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgIH0KICAgIC50aWxlLXJvdyB7CiAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgIGdhcDogMjRweDsKICAgICAgZmxleC13cmFwOiB3cmFwOwogICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsKICAgIH0KICA8L3N0eWxlPgoKICA8ZGl2IGNsYXNzPSJkZW1vLWNvbnRhaW5lciI+CiAgICA8ZGl2IGNsYXNzPSJkZW1vLXNlY3Rpb24iPgogICAgICA8aDM+SW1hZ2UgVGlsZXM8L2gzPgogICAgICA8ZGl2IGNsYXNzPSJ0aWxlLXJvdyI+CiAgICAgICAgPGRlZXMtdGlsZS1pbWFnZQogICAgICAgICAgc3JjPSJodHRwczovL3BpY3N1bS5waG90b3MvODAwLzYwMCIKICAgICAgICAgIGFsdD0iTGFuZHNjYXBlIHBob3RvIgogICAgICAgICAgbGFiZWw9ImxhbmRzY2FwZS5qcGciCiAgICAgICAgICBAdGlsZS1jbGljaz0ke2U9PmNvbnNvbGUubG9nKCJJbWFnZSBjbGlja2VkOiIsZS5kZXRhaWwpfQogICAgICAgID48L2RlZXMtdGlsZS1pbWFnZT4KCiAgICAgICAgPGRlZXMtdGlsZS1pbWFnZQogICAgICAgICAgc3JjPSJodHRwczovL3BpY3N1bS5waG90b3MvNDAwLzQwMCIKICAgICAgICAgIGFsdD0iU3F1YXJlIHBob3RvIgogICAgICAgICAgbGFiZWw9InNxdWFyZS5wbmciCiAgICAgICAgPjwvZGVlcy10aWxlLWltYWdlPgoKICAgICAgICA8ZGVlcy10aWxlLWltYWdlCiAgICAgICAgICBzcmM9Imh0dHBzOi8vcGljc3VtLnBob3Rvcy8zMDAvOTAwIgogICAgICAgICAgYWx0PSJQb3J0cmFpdCBwaG90byIKICAgICAgICAgIGxhYmVsPSJwb3J0cmFpdC53ZWJwIgogICAgICAgID48L2RlZXMtdGlsZS1pbWFnZT4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KCiAgICA8ZGl2IGNsYXNzPSJkZW1vLXNlY3Rpb24iPgogICAgICA8aDM+U2l6ZSBWYXJpYW50czwvaDM+CiAgICAgIDxkaXYgY2xhc3M9InRpbGUtcm93Ij4KICAgICAgICA8ZGVlcy10aWxlLWltYWdlCiAgICAgICAgICBzaXplPSJzbWFsbCIKICAgICAgICAgIHNyYz0iaHR0cHM6Ly9waWNzdW0ucGhvdG9zLzIwMC8yMDAiCiAgICAgICAgICBhbHQ9IlNtYWxsIgogICAgICAgICAgbGFiZWw9InNtYWxsLmpwZyIKICAgICAgICA+PC9kZWVzLXRpbGUtaW1hZ2U+CgogICAgICAgIDxkZWVzLXRpbGUtaW1hZ2UKICAgICAgICAgIHNyYz0iaHR0cHM6Ly9waWNzdW0ucGhvdG9zLzYwMC80MDAiCiAgICAgICAgICBhbHQ9IkRlZmF1bHQiCiAgICAgICAgICBsYWJlbD0iZGVmYXVsdC5qcGciCiAgICAgICAgPjwvZGVlcy10aWxlLWltYWdlPgoKICAgICAgICA8ZGVlcy10aWxlLWltYWdlCiAgICAgICAgICBzaXplPSJsYXJnZSIKICAgICAgICAgIHNyYz0iaHR0cHM6Ly9waWNzdW0ucGhvdG9zLzEyMDAvODAwIgogICAgICAgICAgYWx0PSJMYXJnZSIKICAgICAgICAgIGxhYmVsPSJsYXJnZS5qcGciCiAgICAgICAgPjwvZGVlcy10aWxlLWltYWdlPgogICAgICA8L2Rpdj4KICAgIDwvZGl2PgoKICAgIDxkaXYgY2xhc3M9ImRlbW8tc2VjdGlvbiI+CiAgICAgIDxoMz5FcnJvciBTdGF0ZSAoYnJva2VuIFVSTCk8L2gzPgogICAgICA8ZGVlcy10aWxlLWltYWdlCiAgICAgICAgc3JjPSJodHRwczovL2ludmFsaWQtdXJsLXRoYXQtZG9lcy1ub3QtZXhpc3QuZXhhbXBsZS9pbWFnZS5wbmciCiAgICAgICAgYWx0PSJCcm9rZW4iCiAgICAgICAgbGFiZWw9ImJyb2tlbi5wbmciCiAgICAgID48L2RlZXMtdGlsZS1pbWFnZT4KICAgIDwvZGl2PgogIDwvZGl2PgpgfSk7dmFyIHJnLFVzLG9PcixuT3I9bCgoKT0+e1NlKCk7eDMoKTtVYygpO2lPcigpO3JnPWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sVXM9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LG9Pcj0oKCk9PntsZXQgZT1bemUoImRlZXMtdGlsZS1pbWFnZSIpXSx0LHI9W10sYSxpPXlvLG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdLHUscD1bXSxoPVtdLGIseD1bXSxnPVtdLHYsdz1bXSxNPVtdO3ZhciBGPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgQz10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHt0eXBlOlN0cmluZ30pXSxjPVtqKHt0eXBlOlN0cmluZ30pXSx1PVtyZSgpXSxiPVtyZSgpXSx2PVtyZSgpXSxyZyh0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNyYyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6az0+InNyYyJpbiBrLGdldDprPT5rLnNyYyxzZXQ6KGssTik9PntrLnNyYz1OfX0sbWV0YWRhdGE6Q30sbixzKSxyZyh0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImFsdCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6az0+ImFsdCJpbiBrLGdldDprPT5rLmFsdCxzZXQ6KGssTik9PntrLmFsdD1OfX0sbWV0YWRhdGE6Q30sZCxmKSxyZyh0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImltYWdlTG9hZGVkIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczprPT4iaW1hZ2VMb2FkZWQiaW4gayxnZXQ6az0+ay5pbWFnZUxvYWRlZCxzZXQ6KGssTik9PntrLmltYWdlTG9hZGVkPU59fSxtZXRhZGF0YTpDfSxwLGgpLHJnKHRoaXMsbnVsbCxiLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiaW1hZ2VXaWR0aCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6az0+ImltYWdlV2lkdGgiaW4gayxnZXQ6az0+ay5pbWFnZVdpZHRoLHNldDooayxOKT0+e2suaW1hZ2VXaWR0aD1OfX0sbWV0YWRhdGE6Q30seCxnKSxyZyh0aGlzLG51bGwsdix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImltYWdlSGVpZ2h0IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczprPT4iaW1hZ2VIZWlnaHQiaW4gayxnZXQ6az0+ay5pbWFnZUhlaWdodCxzZXQ6KGssTik9PntrLmltYWdlSGVpZ2h0PU59fSxtZXRhZGF0YTpDfSx3LE0pLHJnKG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOkN9LG51bGwsciksRj1hPXQudmFsdWUsQyYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpDfSl9c3RhdGljIGRlbW89YU9yO3N0YXRpYyBkZW1vR3JvdXBzPVsiTWVkaWEiXTtzdGF0aWMgc3R5bGVzPVsuLi5lbyxsZWAKICAgICAgLmltYWdlLXdyYXBwZXIgewogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoInJlcGVhdGluZy1jb25pYy1ncmFkaWVudCgjZThlOGU4IDAlIDI1JSwgd2hpdGUgMCUgNTAlKSA1MCUgLyAxNnB4IDE2cHgiLCJyZXBlYXRpbmctY29uaWMtZ3JhZGllbnQoaHNsKDIxNSAyMCUgMTglKSAwJSAyNSUsIGhzbCgyMTUgMjAlIDE0JSkgMCUgNTAlKSA1MCUgLyAxNnB4IDE2cHgiKX07CiAgICAgIH0KCiAgICAgIC5pbWFnZS13cmFwcGVyIGltZyB7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIG9iamVjdC1maXQ6IGNvdmVyOwogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlOwogICAgICB9CgogICAgICAuaW1hZ2Utd3JhcHBlciBpbWcubG9hZGVkIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICB9CgogICAgICAuaW1hZ2Utd3JhcHBlciBpbWcubG9hZGluZyB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgfQoKICAgIGBdOyNlPVVzKHRoaXMsbiwiIik7Z2V0IHNyYygpe3JldHVybiB0aGlzLiNlfXNldCBzcmMoQyl7dGhpcy4jZT1DfSN0PShVcyh0aGlzLHMpLFVzKHRoaXMsZCwiIikpO2dldCBhbHQoKXtyZXR1cm4gdGhpcy4jdH1zZXQgYWx0KEMpe3RoaXMuI3Q9Q30jcj0oVXModGhpcyxmKSxVcyh0aGlzLHAsITEpKTtnZXQgaW1hZ2VMb2FkZWQoKXtyZXR1cm4gdGhpcy4jcn1zZXQgaW1hZ2VMb2FkZWQoQyl7dGhpcy4jcj1DfSNhPShVcyh0aGlzLGgpLFVzKHRoaXMseCwwKSk7Z2V0IGltYWdlV2lkdGgoKXtyZXR1cm4gdGhpcy4jYX1zZXQgaW1hZ2VXaWR0aChDKXt0aGlzLiNhPUN9I2k9KFVzKHRoaXMsZyksVXModGhpcyx3LDApKTtnZXQgaW1hZ2VIZWlnaHQoKXtyZXR1cm4gdGhpcy4jaX1zZXQgaW1hZ2VIZWlnaHQoQyl7dGhpcy4jaT1DfWhhc1N0YXJ0ZWRMb2FkaW5nPShVcyh0aGlzLE0pLCExKTtyZW5kZXJUaWxlQ29udGVudCgpe3JldHVybiBTYAogICAgICA8ZGl2IGNsYXNzPSJpbWFnZS13cmFwcGVyIj4KICAgICAgICAke3RoaXMuaGFzU3RhcnRlZExvYWRpbmc/U2AKICAgICAgICAgIDxpbWcKICAgICAgICAgICAgY2xhc3M9IiR7dGhpcy5pbWFnZUxvYWRlZD8ibG9hZGVkIjoibG9hZGluZyJ9IgogICAgICAgICAgICBzcmM9IiR7dGhpcy5zcmN9IgogICAgICAgICAgICBhbHQ9IiR7dGhpcy5hbHR9IgogICAgICAgICAgICBAbG9hZD0ke3RoaXMuaGFuZGxlSW1hZ2VMb2FkfQogICAgICAgICAgICBAZXJyb3I9JHt0aGlzLmhhbmRsZUltYWdlRXJyb3J9CiAgICAgICAgICAvPgogICAgICAgIGA6IiJ9CiAgICAgIDwvZGl2PgoKICAgICAgJHt0aGlzLmNsaWNrYWJsZT9TYAogICAgICAgIDxkaXYgY2xhc3M9InRpbGUtb3ZlcmxheSI+CiAgICAgICAgICA8ZGVlcy1pY29uIGljb249Imx1Y2lkZTpFeWUiPjwvZGVlcy1pY29uPgogICAgICAgICAgPHNwYW4+VmlldyBJbWFnZTwvc3Bhbj4KICAgICAgICA8L2Rpdj4KICAgICAgYDoiIn0KICAgIGB9cmVuZGVyQm90dG9tQmFyKCl7cmV0dXJuIXRoaXMubGFiZWwmJiEodGhpcy5pbWFnZVdpZHRoPjApPyIiOlNgCiAgICAgIDxkaXYgY2xhc3M9InRpbGUtaW5mby1iYXIiPgogICAgICAgICR7dGhpcy5sYWJlbD9TYDxzcGFuIGNsYXNzPSJpbmZvLWxhYmVsIiB0aXRsZT0iJHt0aGlzLmxhYmVsfSI+JHt0aGlzLmxhYmVsfTwvc3Bhbj5gOiIifQogICAgICAgIDxzcGFuIGNsYXNzPSJpbmZvLXNwYWNlciI+PC9zcGFuPgogICAgICAgICR7dGhpcy5pbWFnZVdpZHRoPjAmJnRoaXMuaW1hZ2VIZWlnaHQ+MD9TYDxzcGFuIGNsYXNzPSJpbmZvLWRldGFpbCI+JHt0aGlzLmltYWdlV2lkdGh9IMOXICR7dGhpcy5pbWFnZUhlaWdodH08L3NwYW4+YDoiIn0KICAgICAgPC9kaXY+CiAgICBgfWdldFRpbGVDbGlja0RldGFpbCgpe3JldHVybntzcmM6dGhpcy5zcmMsYWx0OnRoaXMuYWx0LHdpZHRoOnRoaXMuaW1hZ2VXaWR0aCxoZWlnaHQ6dGhpcy5pbWFnZUhlaWdodH19b25CZWNhbWVWaXNpYmxlKCl7IXRoaXMuaGFzU3RhcnRlZExvYWRpbmcmJnRoaXMuc3JjJiYodGhpcy5oYXNTdGFydGVkTG9hZGluZz0hMCx0aGlzLmxvYWRpbmc9ITAsdGhpcy5yZXF1ZXN0VXBkYXRlKCkpfWhhbmRsZUltYWdlTG9hZChDKXtsZXQgaz1DLnRhcmdldDt0aGlzLmltYWdlV2lkdGg9ay5uYXR1cmFsV2lkdGgsdGhpcy5pbWFnZUhlaWdodD1rLm5hdHVyYWxIZWlnaHQsdGhpcy5pbWFnZUxvYWRlZD0hMCx0aGlzLmxvYWRpbmc9ITF9aGFuZGxlSW1hZ2VFcnJvcigpe3RoaXMuZXJyb3I9ITAsdGhpcy5sb2FkaW5nPSExfWFzeW5jIHVwZGF0ZWQoQyl7c3VwZXIudXBkYXRlZChDKSxDLmhhcygic3JjIikmJnRoaXMuc3JjJiZ0aGlzLmlzVmlzaWJsZSYmKHRoaXMuaGFzU3RhcnRlZExvYWRpbmc9ITAsdGhpcy5pbWFnZUxvYWRlZD0hMSx0aGlzLmxvYWRpbmc9ITApfXN0YXRpY3tVcyhhLHIpfX07cmV0dXJuIEY9YX0pKCl9KTt2YXIgc09yPWwoKCk9PntuT3IoKX0pO3ZhciBsT3IsY09yPWwoKCk9PntTZSgpO2xPcj0oKT0+U2AKICA8c3R5bGU+CiAgICAuZGVtby1jb250YWluZXIgewogICAgICBwYWRkaW5nOiA0MHB4OwogICAgICBiYWNrZ3JvdW5kOiAjZjVmNWY1OwogICAgfQogICAgLmRlbW8tc2VjdGlvbiB7CiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7CiAgICB9CiAgICBoMyB7CiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7CiAgICAgIGZvbnQtc2l6ZTogMThweDsKICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgIH0KICAgIC50aWxlLXJvdyB7CiAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgIGdhcDogMjRweDsKICAgICAgZmxleC13cmFwOiB3cmFwOwogICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsKICAgIH0KICA8L3N0eWxlPgoKICA8ZGl2IGNsYXNzPSJkZW1vLWNvbnRhaW5lciI+CiAgICA8ZGl2IGNsYXNzPSJkZW1vLXNlY3Rpb24iPgogICAgICA8aDM+QXVkaW8gVGlsZXM8L2gzPgogICAgICA8ZGl2IGNsYXNzPSJ0aWxlLXJvdyI+CiAgICAgICAgPGRlZXMtdGlsZS1hdWRpbwogICAgICAgICAgc3JjPSJodHRwczovL3d3dy5zb3VuZGhlbGl4LmNvbS9leGFtcGxlcy9tcDMvU291bmRIZWxpeC1Tb25nLTEubXAzIgogICAgICAgICAgdGl0bGU9IlNvdW5kSGVsaXggU29uZyAxIgogICAgICAgICAgYXJ0aXN0PSJULiBTY2h1ZXJnZXIiCiAgICAgICAgICBsYWJlbD0ic291bmRoZWxpeC0xLm1wMyIKICAgICAgICAgIEB0aWxlLWNsaWNrPSR7ZT0+Y29uc29sZS5sb2coIkF1ZGlvIGNsaWNrZWQ6IixlLmRldGFpbCl9CiAgICAgICAgPjwvZGVlcy10aWxlLWF1ZGlvPgoKICAgICAgICA8ZGVlcy10aWxlLWF1ZGlvCiAgICAgICAgICBzcmM9Imh0dHBzOi8vd3d3LnNvdW5kaGVsaXguY29tL2V4YW1wbGVzL21wMy9Tb3VuZEhlbGl4LVNvbmctMi5tcDMiCiAgICAgICAgICB0aXRsZT0iU291bmRIZWxpeCBTb25nIDIiCiAgICAgICAgICBhcnRpc3Q9IlQuIFNjaHVlcmdlciIKICAgICAgICAgIGxhYmVsPSJzb3VuZGhlbGl4LTIubXAzIgogICAgICAgID48L2RlZXMtdGlsZS1hdWRpbz4KCiAgICAgICAgPGRlZXMtdGlsZS1hdWRpbwogICAgICAgICAgc3JjPSJodHRwczovL3d3dy5zb3VuZGhlbGl4LmNvbS9leGFtcGxlcy9tcDMvU291bmRIZWxpeC1Tb25nLTMubXAzIgogICAgICAgICAgdGl0bGU9IlNvdW5kSGVsaXggU29uZyAzIgogICAgICAgICAgbGFiZWw9InNvdW5kaGVsaXgtMy5tcDMiCiAgICAgICAgPjwvZGVlcy10aWxlLWF1ZGlvPgogICAgICA8L2Rpdj4KICAgIDwvZGl2PgoKICAgIDxkaXYgY2xhc3M9ImRlbW8tc2VjdGlvbiI+CiAgICAgIDxoMz5TaXplIFZhcmlhbnRzPC9oMz4KICAgICAgPGRpdiBjbGFzcz0idGlsZS1yb3ciPgogICAgICAgIDxkZWVzLXRpbGUtYXVkaW8KICAgICAgICAgIHNpemU9InNtYWxsIgogICAgICAgICAgc3JjPSJodHRwczovL3d3dy5zb3VuZGhlbGl4LmNvbS9leGFtcGxlcy9tcDMvU291bmRIZWxpeC1Tb25nLTEubXAzIgogICAgICAgICAgdGl0bGU9IlNtYWxsIgogICAgICAgICAgbGFiZWw9InNtYWxsLm1wMyIKICAgICAgICA+PC9kZWVzLXRpbGUtYXVkaW8+CgogICAgICAgIDxkZWVzLXRpbGUtYXVkaW8KICAgICAgICAgIHNyYz0iaHR0cHM6Ly93d3cuc291bmRoZWxpeC5jb20vZXhhbXBsZXMvbXAzL1NvdW5kSGVsaXgtU29uZy0xLm1wMyIKICAgICAgICAgIHRpdGxlPSJEZWZhdWx0IgogICAgICAgICAgbGFiZWw9ImRlZmF1bHQubXAzIgogICAgICAgID48L2RlZXMtdGlsZS1hdWRpbz4KCiAgICAgICAgPGRlZXMtdGlsZS1hdWRpbwogICAgICAgICAgc2l6ZT0ibGFyZ2UiCiAgICAgICAgICBzcmM9Imh0dHBzOi8vd3d3LnNvdW5kaGVsaXguY29tL2V4YW1wbGVzL21wMy9Tb3VuZEhlbGl4LVNvbmctMS5tcDMiCiAgICAgICAgICB0aXRsZT0iTGFyZ2UiCiAgICAgICAgICBsYWJlbD0ibGFyZ2UubXAzIgogICAgICAgID48L2RlZXMtdGlsZS1hdWRpbz4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICA8L2Rpdj4KYH0pO3ZhciB2MyxNbyxkT3IsdU9yPWwoKCk9PntTZSgpO3gzKCk7VWMoKTtjT3IoKTt2Mz1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LE1vPWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSxkT3I9KCgpPT57bGV0IGU9W3plKCJkZWVzLXRpbGUtYXVkaW8iKV0sdCxyPVtdLGEsaT15byxvLG49W10scz1bXSxjLGQ9W10sZj1bXSx1LHA9W10saD1bXSxiLHg9W10sZz1bXSx2LHc9W10sTT1bXSxGLEM9W10saz1bXSxOLCQ9W10sST1bXTt2YXIgQj1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IHo9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baih7dHlwZTpTdHJpbmd9KV0sYz1baih7dHlwZTpTdHJpbmd9KV0sdT1baih7dHlwZTpTdHJpbmd9KV0sYj1bcmUoKV0sdj1bcmUoKV0sRj1bcmUoKV0sTj1bcmUoKV0sdjModGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzcmMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnk9PiJzcmMiaW4geSxnZXQ6eT0+eS5zcmMsc2V0Oih5LEUpPT57eS5zcmM9RX19LG1ldGFkYXRhOnp9LG4scyksdjModGhpcyxudWxsLGMse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ0aXRsZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eT0+InRpdGxlImluIHksZ2V0Onk9PnkudGl0bGUsc2V0Oih5LEUpPT57eS50aXRsZT1FfX0sbWV0YWRhdGE6en0sZCxmKSx2Myh0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImFydGlzdCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eT0+ImFydGlzdCJpbiB5LGdldDp5PT55LmFydGlzdCxzZXQ6KHksRSk9Pnt5LmFydGlzdD1FfX0sbWV0YWRhdGE6en0scCxoKSx2Myh0aGlzLG51bGwsYix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImR1cmF0aW9uIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5PT4iZHVyYXRpb24iaW4geSxnZXQ6eT0+eS5kdXJhdGlvbixzZXQ6KHksRSk9Pnt5LmR1cmF0aW9uPUV9fSxtZXRhZGF0YTp6fSx4LGcpLHYzKHRoaXMsbnVsbCx2LHtraW5kOiJhY2Nlc3NvciIsbmFtZToid2F2ZWZvcm1EYXRhIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5PT4id2F2ZWZvcm1EYXRhImluIHksZ2V0Onk9Pnkud2F2ZWZvcm1EYXRhLHNldDooeSxFKT0+e3kud2F2ZWZvcm1EYXRhPUV9fSxtZXRhZGF0YTp6fSx3LE0pLHYzKHRoaXMsbnVsbCxGLHtraW5kOiJhY2Nlc3NvciIsbmFtZToid2F2ZWZvcm1SZWFkeSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eT0+IndhdmVmb3JtUmVhZHkiaW4geSxnZXQ6eT0+eS53YXZlZm9ybVJlYWR5LHNldDooeSxFKT0+e3kud2F2ZWZvcm1SZWFkeT1FfX0sbWV0YWRhdGE6en0sQyxrKSx2Myh0aGlzLG51bGwsTix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImlzUHJldmlld1BsYXlpbmciLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnk9PiJpc1ByZXZpZXdQbGF5aW5nImluIHksZ2V0Onk9PnkuaXNQcmV2aWV3UGxheWluZyxzZXQ6KHksRSk9Pnt5LmlzUHJldmlld1BsYXlpbmc9RX19LG1ldGFkYXRhOnp9LCQsSSksdjMobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6en0sbnVsbCxyKSxCPWE9dC52YWx1ZSx6JiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnp9KX1zdGF0aWMgZGVtbz1sT3I7c3RhdGljIGRlbW9Hcm91cHM9WyJNZWRpYSJdO3N0YXRpYyBzdHlsZXM9Wy4uLmVvLGxlYAogICAgICAuYXVkaW8tY29udGVudCB7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICBnYXA6IDE2cHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImxpbmVhci1ncmFkaWVudCgxMzVkZWcsIGhzbCgyNTAgNDAlIDk2JSksIGhzbCgyODAgMzAlIDk0JSkpIiwibGluZWFyLWdyYWRpZW50KDEzNWRlZywgaHNsKDI1MCAzMCUgMTYlKSwgaHNsKDI4MCAyNSUgMTQlKSkiKX07CiAgICAgIH0KCiAgICAgIC5tdXNpYy1pY29uIHsKICAgICAgICBmb250LXNpemU6IDQ4cHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjUwIDYwJSA2NSUpIiwiaHNsKDI1MCA2MCUgNzAlKSIpfTsKICAgICAgICBvcGFjaXR5OiAwLjg7CiAgICAgIH0KCiAgICAgIC5hdWRpby10aXRsZSB7CiAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjUwIDIwJSAzNSUpIiwiaHNsKDI1MCAyMCUgODAlKSIpfTsKICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgcGFkZGluZzogMCAxNnB4OwogICAgICAgIG1heC13aWR0aDogMTAwJTsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOwogICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgICAgIH0KCiAgICAgIC5hdWRpby1hcnRpc3QgewogICAgICAgIGZvbnQtc2l6ZTogMTFweDsKICAgICAgICBmb250LXdlaWdodDogNDAwOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDI1MCAxNSUgNTAlKSIsImhzbCgyNTAgMTUlIDY1JSkiKX07CiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgIHBhZGRpbmc6IDAgMTZweDsKICAgICAgICBtYXJnaW4tdG9wOiAtMTJweDsKICAgICAgICBtYXgtd2lkdGg6IDEwMCU7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsKICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgICB9CgogICAgICAud2F2ZWZvcm0tY29udGFpbmVyIHsKICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMzJweCk7CiAgICAgICAgaGVpZ2h0OiA0MHB4OwogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICB9CgogICAgICAud2F2ZWZvcm0tY29udGFpbmVyIGNhbnZhcyB7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICB9CgoKICAgICAgLnBsYXktb3ZlcmxheSB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHRvcDogMDsKICAgICAgICBsZWZ0OiAwOwogICAgICAgIHJpZ2h0OiAwOwogICAgICAgIGJvdHRvbTogMDsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTsKICAgICAgICB6LWluZGV4OiAxODsKICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAgICAgfQoKICAgICAgLnRpbGUtY29udGFpbmVyLmNsaWNrYWJsZTpob3ZlciAucGxheS1vdmVybGF5IHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICB9CgogICAgICAucGxheS1jaXJjbGUgewogICAgICAgIHdpZHRoOiA0OHB4OwogICAgICAgIGhlaWdodDogNDhweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjYpOwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoOHB4KTsKICAgICAgfQoKICAgICAgLnBsYXktY2lyY2xlIGRlZXMtaWNvbiB7CiAgICAgICAgZm9udC1zaXplOiAyMHB4OwogICAgICAgIGNvbG9yOiB3aGl0ZTsKICAgICAgfQogICAgYF07I2U9TW8odGhpcyxuLCIiKTtnZXQgc3JjKCl7cmV0dXJuIHRoaXMuI2V9c2V0IHNyYyh6KXt0aGlzLiNlPXp9I3Q9KE1vKHRoaXMscyksTW8odGhpcyxkLCIiKSk7Z2V0IHRpdGxlKCl7cmV0dXJuIHRoaXMuI3R9c2V0IHRpdGxlKHope3RoaXMuI3Q9en0jcj0oTW8odGhpcyxmKSxNbyh0aGlzLHAsIiIpKTtnZXQgYXJ0aXN0KCl7cmV0dXJuIHRoaXMuI3J9c2V0IGFydGlzdCh6KXt0aGlzLiNyPXp9I2E9KE1vKHRoaXMsaCksTW8odGhpcyx4LDApKTtnZXQgZHVyYXRpb24oKXtyZXR1cm4gdGhpcy4jYX1zZXQgZHVyYXRpb24oeil7dGhpcy4jYT16fSNpPShNbyh0aGlzLGcpLE1vKHRoaXMsdyxbXSkpO2dldCB3YXZlZm9ybURhdGEoKXtyZXR1cm4gdGhpcy4jaX1zZXQgd2F2ZWZvcm1EYXRhKHope3RoaXMuI2k9en0jbz0oTW8odGhpcyxNKSxNbyh0aGlzLEMsITEpKTtnZXQgd2F2ZWZvcm1SZWFkeSgpe3JldHVybiB0aGlzLiNvfXNldCB3YXZlZm9ybVJlYWR5KHope3RoaXMuI289en0jbj0oTW8odGhpcyxrKSxNbyh0aGlzLCQsITEpKTtnZXQgaXNQcmV2aWV3UGxheWluZygpe3JldHVybiB0aGlzLiNufXNldCBpc1ByZXZpZXdQbGF5aW5nKHope3RoaXMuI249en1hdWRpb0VsZW1lbnQ9KE1vKHRoaXMsSSksbnVsbCk7cHJldmlld1RpbWVvdXQ9bnVsbDtoYXNMb2FkZWRXYXZlZm9ybT0hMTtyZW5kZXJUaWxlQ29udGVudCgpe3JldHVybiBTYAogICAgICA8ZGl2IGNsYXNzPSJhdWRpby1jb250ZW50Ij4KICAgICAgICA8ZGVlcy1pY29uIGNsYXNzPSJtdXNpYy1pY29uIiBpY29uPSJsdWNpZGU6TXVzaWMiPjwvZGVlcy1pY29uPgoKICAgICAgICAke3RoaXMudGl0bGU/U2A8ZGl2IGNsYXNzPSJhdWRpby10aXRsZSI+JHt0aGlzLnRpdGxlfTwvZGl2PmA6IiJ9CiAgICAgICAgJHt0aGlzLmFydGlzdD9TYDxkaXYgY2xhc3M9ImF1ZGlvLWFydGlzdCI+JHt0aGlzLmFydGlzdH08L2Rpdj5gOiIifQoKICAgICAgICAke3RoaXMud2F2ZWZvcm1SZWFkeT9TYAogICAgICAgICAgPGRpdiBjbGFzcz0id2F2ZWZvcm0tY29udGFpbmVyIj4KICAgICAgICAgICAgPGNhbnZhcz48L2NhbnZhcz4KICAgICAgICAgIDwvZGl2PgogICAgICAgIGA6IiJ9CiAgICAgIDwvZGl2PgoKICAgICAgPGRpdiBjbGFzcz0icGxheS1vdmVybGF5Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJwbGF5LWNpcmNsZSI+CiAgICAgICAgICA8ZGVlcy1pY29uIGljb249Imx1Y2lkZTpQbGF5Ij48L2RlZXMtaWNvbj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CgogICAgICAke3RoaXMuY2xpY2thYmxlP1NgCiAgICAgICAgPGRpdiBjbGFzcz0idGlsZS1vdmVybGF5Ij4KICAgICAgICAgIDxkZWVzLWljb24gaWNvbj0ibHVjaWRlOkhlYWRwaG9uZXMiPjwvZGVlcy1pY29uPgogICAgICAgICAgPHNwYW4+UGxheSBBdWRpbzwvc3Bhbj4KICAgICAgICA8L2Rpdj4KICAgICAgYDoiIn0KICAgIGB9cmVuZGVyQm90dG9tQmFyKCl7cmV0dXJuIXRoaXMubGFiZWwmJiF0aGlzLmR1cmF0aW9uPyIiOlNgCiAgICAgIDxkaXYgY2xhc3M9InRpbGUtaW5mby1iYXIiPgogICAgICAgICR7dGhpcy5sYWJlbD9TYDxzcGFuIGNsYXNzPSJpbmZvLWxhYmVsIiB0aXRsZT0iJHt0aGlzLmxhYmVsfSI+JHt0aGlzLmxhYmVsfTwvc3Bhbj5gOiIifQogICAgICAgIDxzcGFuIGNsYXNzPSJpbmZvLXNwYWNlciI+PC9zcGFuPgogICAgICAgICR7dGhpcy5kdXJhdGlvbj4wP1NgPHNwYW4gY2xhc3M9ImluZm8tZGV0YWlsIj4ke3RoaXMuZm9ybWF0VGltZSh0aGlzLmR1cmF0aW9uKX08L3NwYW4+YDoiIn0KICAgICAgPC9kaXY+CiAgICBgfWdldFRpbGVDbGlja0RldGFpbCgpe3JldHVybntzcmM6dGhpcy5zcmMsdGl0bGU6dGhpcy50aXRsZSxhcnRpc3Q6dGhpcy5hcnRpc3QsZHVyYXRpb246dGhpcy5kdXJhdGlvbn19b25CZWNhbWVWaXNpYmxlKCl7IXRoaXMuaGFzTG9hZGVkV2F2ZWZvcm0mJnRoaXMuc3JjJiYodGhpcy5oYXNMb2FkZWRXYXZlZm9ybT0hMCx0aGlzLmxvYWRBdWRpb01ldGEoKSl9YXN5bmMgbG9hZEF1ZGlvTWV0YSgpe3RoaXMubG9hZGluZz0hMDt0cnl7bGV0IHo9bmV3IEF1ZGlvO3ouY3Jvc3NPcmlnaW49ImFub255bW91cyIsei5wcmVsb2FkPSJtZXRhZGF0YSIsYXdhaXQgbmV3IFByb21pc2UoKHksRSk9Pnt6LmFkZEV2ZW50TGlzdGVuZXIoImxvYWRlZG1ldGFkYXRhIiwoKT0+e3RoaXMuZHVyYXRpb249ei5kdXJhdGlvbix5KCl9LHtvbmNlOiEwfSksei5hZGRFdmVudExpc3RlbmVyKCJlcnJvciIsKCk9PkUobmV3IEVycm9yKCJGYWlsZWQgdG8gbG9hZCBhdWRpbyIpKSx7b25jZTohMH0pLHouc3JjPXRoaXMuc3JjfSksYXdhaXQgdGhpcy5sb2FkV2F2ZWZvcm0oKSx0aGlzLmxvYWRpbmc9ITF9Y2F0Y2h7dGhpcy5sb2FkaW5nPSExfX1hc3luYyBsb2FkV2F2ZWZvcm0oKXt0cnl7bGV0IHk9YXdhaXQoYXdhaXQgZmV0Y2godGhpcy5zcmMpKS5hcnJheUJ1ZmZlcigpLEU9bmV3IEF1ZGlvQ29udGV4dCxQPShhd2FpdCBFLmRlY29kZUF1ZGlvRGF0YSh5KSkuZ2V0Q2hhbm5lbERhdGEoMCksVj04MCxIPU1hdGguZmxvb3IoUC5sZW5ndGgvViksVz1bXTtmb3IobGV0IFQ9MDtUPFY7VCsrKXtsZXQgSj0wO2ZvcihsZXQgZmU9MDtmZTxIO2ZlKyspSis9TWF0aC5hYnMoUFtUKkgrZmVdKTtXLnB1c2goSi9IKX1sZXQgYWU9TWF0aC5tYXgoLi4uVyk7dGhpcy53YXZlZm9ybURhdGE9Vy5tYXAoVD0+YWU+MD9UL2FlOjApLHRoaXMud2F2ZWZvcm1SZWFkeT0hMCxhd2FpdCBFLmNsb3NlKCksYXdhaXQgdGhpcy51cGRhdGVDb21wbGV0ZSx0aGlzLmRyYXdXYXZlZm9ybSgpfWNhdGNoe3RoaXMud2F2ZWZvcm1SZWFkeT0hMX19ZHJhd1dhdmVmb3JtKCl7aWYoIXRoaXMud2F2ZWZvcm1SZWFkeSlyZXR1cm47bGV0IHo9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCIud2F2ZWZvcm0tY29udGFpbmVyIGNhbnZhcyIpO2lmKCF6KXJldHVybjtsZXQgeT16LnBhcmVudEVsZW1lbnQsRT13aW5kb3cuZGV2aWNlUGl4ZWxSYXRpb3x8MSxfPXkuY2xpZW50V2lkdGgsUD15LmNsaWVudEhlaWdodDt6LndpZHRoPV8qRSx6LmhlaWdodD1QKkU7bGV0IFY9ei5nZXRDb250ZXh0KCIyZCIpO2lmKCFWKXJldHVybjtWLnNjYWxlKEUsRSksVi5jbGVhclJlY3QoMCwwLF8sUCk7bGV0IEg9dGhpcy53YXZlZm9ybURhdGEubGVuZ3RoO2lmKEg9PT0wKXJldHVybjtsZXQgVz1fL0gsVD1kb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5jb250YWlucygidGhlbWUtZGFyayIpfHx3aW5kb3cubWF0Y2hNZWRpYSgiKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSIpLm1hdGNoZXM/ImhzbCgyNTAgNTAlIDYwJSkiOiJoc2woMjUwIDUwJSA3MCUpIjtWLmZpbGxTdHlsZT1UO2ZvcihsZXQgSj0wO0o8SDtKKyspe2xldCBmZT10aGlzLndhdmVmb3JtRGF0YVtKXSxMPU1hdGgubWF4KDIsZmUqKFAtNCkpLFE9SipXLGtlPShQLUwpLzI7Vi5maWxsUmVjdChRKy41LGtlLFctMSxMKX19YXN5bmMgdXBkYXRlZCh6KXtzdXBlci51cGRhdGVkKHopLHouaGFzKCJzcmMiKSYmdGhpcy5zcmMmJnRoaXMuaXNWaXNpYmxlJiYodGhpcy5oYXNMb2FkZWRXYXZlZm9ybT0hMCx0aGlzLndhdmVmb3JtUmVhZHk9ITEsdGhpcy5kdXJhdGlvbj0wLHRoaXMubG9hZEF1ZGlvTWV0YSgpKSx6Lmhhcygid2F2ZWZvcm1SZWFkeSIpJiZ0aGlzLndhdmVmb3JtUmVhZHkmJihhd2FpdCB0aGlzLnVwZGF0ZUNvbXBsZXRlLHRoaXMuZHJhd1dhdmVmb3JtKCkpfWFzeW5jIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCl7YXdhaXQgc3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKSx0aGlzLnByZXZpZXdUaW1lb3V0JiZjbGVhclRpbWVvdXQodGhpcy5wcmV2aWV3VGltZW91dCksdGhpcy5hdWRpb0VsZW1lbnQmJih0aGlzLmF1ZGlvRWxlbWVudC5wYXVzZSgpLHRoaXMuYXVkaW9FbGVtZW50LnNyYz0iIix0aGlzLmF1ZGlvRWxlbWVudD1udWxsKX1mb3JtYXRUaW1lKHope2lmKCFpc0Zpbml0ZSh6KXx8ejwwKXJldHVybiIwOjAwIjtsZXQgeT1NYXRoLmZsb29yKHovNjApLEU9TWF0aC5mbG9vcih6JTYwKTtyZXR1cm5gJHt5fToke0UudG9TdHJpbmcoKS5wYWRTdGFydCgyLCIwIil9YH1zdGF0aWN7TW8oYSxyKX19O3JldHVybiBCPWF9KSgpfSk7dmFyIGZPcj1sKCgpPT57dU9yKCl9KTt2YXIgcE9yLGhPcj1sKCgpPT57U2UoKTtwT3I9KCk9PlNgCiAgPHN0eWxlPgogICAgLmRlbW8tY29udGFpbmVyIHsKICAgICAgcGFkZGluZzogNDBweDsKICAgICAgYmFja2dyb3VuZDogI2Y1ZjVmNTsKICAgIH0KICAgIC5kZW1vLXNlY3Rpb24gewogICAgICBtYXJnaW4tYm90dG9tOiA2MHB4OwogICAgfQogICAgaDMgewogICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OwogICAgICBmb250LXNpemU6IDE4cHg7CiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICB9CiAgICAudGlsZS1yb3cgewogICAgICBkaXNwbGF5OiBmbGV4OwogICAgICBnYXA6IDI0cHg7CiAgICAgIGZsZXgtd3JhcDogd3JhcDsKICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7CiAgICB9CiAgPC9zdHlsZT4KCiAgPGRpdiBjbGFzcz0iZGVtby1jb250YWluZXIiPgogICAgPGRpdiBjbGFzcz0iZGVtby1zZWN0aW9uIj4KICAgICAgPGgzPlZpZGVvIFRpbGVzPC9oMz4KICAgICAgPGRpdiBjbGFzcz0idGlsZS1yb3ciPgogICAgICAgIDxkZWVzLXRpbGUtdmlkZW8KICAgICAgICAgIHNyYz0iaHR0cHM6Ly93d3cudzNzY2hvb2xzLmNvbS9odG1sL21vdl9iYmIubXA0IgogICAgICAgICAgbGFiZWw9ImJ1bm55Lm1wNCIKICAgICAgICAgIEB0aWxlLWNsaWNrPSR7ZT0+Y29uc29sZS5sb2coIlZpZGVvIGNsaWNrZWQ6IixlLmRldGFpbCl9CiAgICAgICAgPjwvZGVlcy10aWxlLXZpZGVvPgoKICAgICAgICA8ZGVlcy10aWxlLXZpZGVvCiAgICAgICAgICBzcmM9Imh0dHBzOi8vd3d3Lnczc2Nob29scy5jb20vaHRtbC9tb3ZpZS5tcDQiCiAgICAgICAgICBwb3N0ZXI9Imh0dHBzOi8vcGljc3VtLnBob3Rvcy80MDAvMzAwIgogICAgICAgICAgbGFiZWw9Im1vdmllLm1wNCIKICAgICAgICA+PC9kZWVzLXRpbGUtdmlkZW8+CgogICAgICAgIDxkZWVzLXRpbGUtdmlkZW8KICAgICAgICAgIHNyYz0iaHR0cHM6Ly93d3cudzNzY2hvb2xzLmNvbS9odG1sL21vdl9iYmIubXA0IgogICAgICAgICAgbGFiZWw9ImFub3RoZXItdmlkZW8ubXA0IgogICAgICAgID48L2RlZXMtdGlsZS12aWRlbz4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KCiAgICA8ZGl2IGNsYXNzPSJkZW1vLXNlY3Rpb24iPgogICAgICA8aDM+U2l6ZSBWYXJpYW50czwvaDM+CiAgICAgIDxkaXYgY2xhc3M9InRpbGUtcm93Ij4KICAgICAgICA8ZGVlcy10aWxlLXZpZGVvCiAgICAgICAgICBzaXplPSJzbWFsbCIKICAgICAgICAgIHNyYz0iaHR0cHM6Ly93d3cudzNzY2hvb2xzLmNvbS9odG1sL21vdl9iYmIubXA0IgogICAgICAgICAgbGFiZWw9InNtYWxsLm1wNCIKICAgICAgICA+PC9kZWVzLXRpbGUtdmlkZW8+CgogICAgICAgIDxkZWVzLXRpbGUtdmlkZW8KICAgICAgICAgIHNyYz0iaHR0cHM6Ly93d3cudzNzY2hvb2xzLmNvbS9odG1sL21vdl9iYmIubXA0IgogICAgICAgICAgbGFiZWw9ImRlZmF1bHQubXA0IgogICAgICAgID48L2RlZXMtdGlsZS12aWRlbz4KCiAgICAgICAgPGRlZXMtdGlsZS12aWRlbwogICAgICAgICAgc2l6ZT0ibGFyZ2UiCiAgICAgICAgICBzcmM9Imh0dHBzOi8vd3d3Lnczc2Nob29scy5jb20vaHRtbC9tb3ZfYmJiLm1wNCIKICAgICAgICAgIGxhYmVsPSJsYXJnZS5tcDQiCiAgICAgICAgPjwvZGVlcy10aWxlLXZpZGVvPgogICAgICA8L2Rpdj4KICAgIDwvZGl2PgoKICAgIDxkaXYgY2xhc3M9ImRlbW8tc2VjdGlvbiI+CiAgICAgIDxoMz5XaXRoIFBvc3RlciBJbWFnZTwvaDM+CiAgICAgIDxkZWVzLXRpbGUtdmlkZW8KICAgICAgICBzcmM9Imh0dHBzOi8vd3d3Lnczc2Nob29scy5jb20vaHRtbC9tb3ZpZS5tcDQiCiAgICAgICAgcG9zdGVyPSJodHRwczovL3BpY3N1bS5waG90b3MvNjAwLzQwMCIKICAgICAgICBsYWJlbD0icG9zdGVyLXZpZGVvLm1wNCIKICAgICAgPjwvZGVlcy10aWxlLXZpZGVvPgogICAgPC9kaXY+CiAgPC9kaXY+CmB9KTt2YXIgYWcsV3MsbU9yLGdPcj1sKCgpPT57U2UoKTt4MygpO1VjKCk7aE9yKCk7YWc9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxXcz1mdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MixpPTA7aTx0Lmxlbmd0aDtpKyspcj1hP3RbaV0uY2FsbChlLHIpOnRbaV0uY2FsbChlKTtyZXR1cm4gYT9yOnZvaWQgMH0sbU9yPSgoKT0+e2xldCBlPVt6ZSgiZGVlcy10aWxlLXZpZGVvIildLHQscj1bXSxhLGk9eW8sbyxuPVtdLHM9W10sYyxkPVtdLGY9W10sdSxwPVtdLGg9W10sYix4PVtdLGc9W10sdix3PVtdLE09W107dmFyIEY9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCBDPXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO289W2ooe3R5cGU6U3RyaW5nfSldLGM9W2ooe3R5cGU6U3RyaW5nfSldLHU9W3JlKCldLGI9W3JlKCldLHY9W3JlKCldLGFnKHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToic3JjIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczprPT4ic3JjImluIGssZ2V0Oms9Pmsuc3JjLHNldDooayxOKT0+e2suc3JjPU59fSxtZXRhZGF0YTpDfSxuLHMpLGFnKHRoaXMsbnVsbCxjLHtraW5kOiJhY2Nlc3NvciIsbmFtZToicG9zdGVyIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczprPT4icG9zdGVyImluIGssZ2V0Oms9PmsucG9zdGVyLHNldDooayxOKT0+e2sucG9zdGVyPU59fSxtZXRhZGF0YTpDfSxkLGYpLGFnKHRoaXMsbnVsbCx1LHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZHVyYXRpb24iLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOms9PiJkdXJhdGlvbiJpbiBrLGdldDprPT5rLmR1cmF0aW9uLHNldDooayxOKT0+e2suZHVyYXRpb249Tn19LG1ldGFkYXRhOkN9LHAsaCksYWcodGhpcyxudWxsLGIse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ0aHVtYm5haWxDYXB0dXJlZCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6az0+InRodW1ibmFpbENhcHR1cmVkImluIGssZ2V0Oms9PmsudGh1bWJuYWlsQ2FwdHVyZWQsc2V0OihrLE4pPT57ay50aHVtYm5haWxDYXB0dXJlZD1OfX0sbWV0YWRhdGE6Q30seCxnKSxhZyh0aGlzLG51bGwsdix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImlzSG92ZXJpbmciLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOms9PiJpc0hvdmVyaW5nImluIGssZ2V0Oms9PmsuaXNIb3ZlcmluZyxzZXQ6KGssTik9PntrLmlzSG92ZXJpbmc9Tn19LG1ldGFkYXRhOkN9LHcsTSksYWcobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6Q30sbnVsbCxyKSxGPWE9dC52YWx1ZSxDJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOkN9KX1zdGF0aWMgZGVtbz1wT3I7c3RhdGljIGRlbW9Hcm91cHM9WyJNZWRpYSJdO3N0YXRpYyBzdHlsZXM9Wy4uLmVvLGxlYAogICAgICAudmlkZW8td3JhcHBlciB7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIGJhY2tncm91bmQ6ICMwMDA7CiAgICAgIH0KCiAgICAgIC52aWRlby13cmFwcGVyIHZpZGVvIHsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgIH0KCiAgICAgIC52aWRlby13cmFwcGVyIGNhbnZhcyB7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIG9iamVjdC1maXQ6IGNvdmVyOwogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICB9CgogICAgICAucG9zdGVyLWltYWdlIHsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgIH0KCgogICAgICAucGxheS1vdmVybGF5IHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgdG9wOiA1MCU7CiAgICAgICAgbGVmdDogNTAlOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOwogICAgICAgIHdpZHRoOiA0OHB4OwogICAgICAgIGhlaWdodDogNDhweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjYpOwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICB6LWluZGV4OiAxNTsKICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTsKICAgICAgfQoKICAgICAgLnBsYXktb3ZlcmxheSBkZWVzLWljb24gewogICAgICAgIGZvbnQtc2l6ZTogMjBweDsKICAgICAgICBjb2xvcjogd2hpdGU7CiAgICAgIH0KCiAgICAgIC50aWxlLWNvbnRhaW5lci5jbGlja2FibGU6aG92ZXIgLnBsYXktb3ZlcmxheSB7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgfQoKICAgICAgLnZpZGVvLWhvdmVyLXByZXZpZXcgewogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICB0b3A6IDA7CiAgICAgICAgbGVmdDogMDsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7CiAgICAgICAgei1pbmRleDogNTsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlOwogICAgICB9CgogICAgICAudmlkZW8taG92ZXItcHJldmlldy5hY3RpdmUgewogICAgICAgIG9wYWNpdHk6IDE7CiAgICAgIH0KICAgIGBdOyNlPVdzKHRoaXMsbiwiIik7Z2V0IHNyYygpe3JldHVybiB0aGlzLiNlfXNldCBzcmMoQyl7dGhpcy4jZT1DfSN0PShXcyh0aGlzLHMpLFdzKHRoaXMsZCwiIikpO2dldCBwb3N0ZXIoKXtyZXR1cm4gdGhpcy4jdH1zZXQgcG9zdGVyKEMpe3RoaXMuI3Q9Q30jcj0oV3ModGhpcyxmKSxXcyh0aGlzLHAsMCkpO2dldCBkdXJhdGlvbigpe3JldHVybiB0aGlzLiNyfXNldCBkdXJhdGlvbihDKXt0aGlzLiNyPUN9I2E9KFdzKHRoaXMsaCksV3ModGhpcyx4LCExKSk7Z2V0IHRodW1ibmFpbENhcHR1cmVkKCl7cmV0dXJuIHRoaXMuI2F9c2V0IHRodW1ibmFpbENhcHR1cmVkKEMpe3RoaXMuI2E9Q30jaT0oV3ModGhpcyxnKSxXcyh0aGlzLHcsITEpKTtnZXQgaXNIb3ZlcmluZygpe3JldHVybiB0aGlzLiNpfXNldCBpc0hvdmVyaW5nKEMpe3RoaXMuI2k9Q310aHVtYm5haWxDYW52YXM9KFdzKHRoaXMsTSksbnVsbCk7aG92ZXJWaWRlbz1udWxsO2hhc1N0YXJ0ZWRMb2FkaW5nPSExO3JlbmRlclRpbGVDb250ZW50KCl7cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9InZpZGVvLXdyYXBwZXIiPgogICAgICAgICR7dGhpcy5wb3N0ZXI/U2AKICAgICAgICAgIDxpbWcgY2xhc3M9InBvc3Rlci1pbWFnZSIgc3JjPSIke3RoaXMucG9zdGVyfSIgYWx0PSIiIC8+CiAgICAgICAgYDp0aGlzLnRodW1ibmFpbENhcHR1cmVkP1NgCiAgICAgICAgICA8Y2FudmFzPjwvY2FudmFzPgogICAgICAgIGA6U2AKICAgICAgICAgIDxkaXYgc3R5bGU9IndpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IGJhY2tncm91bmQ6ICMwMDA7Ij48L2Rpdj4KICAgICAgICBgfQoKICAgICAgICAke3RoaXMuaXNIb3ZlcmluZyYmdGhpcy5zcmM/U2AKICAgICAgICAgIDx2aWRlbwogICAgICAgICAgICBjbGFzcz0idmlkZW8taG92ZXItcHJldmlldyAke3RoaXMuaXNIb3ZlcmluZz8iYWN0aXZlIjoiIn0iCiAgICAgICAgICAgIC5zcmM9JHt0aGlzLnNyY30KICAgICAgICAgICAgbXV0ZWQKICAgICAgICAgICAgcGxheXNpbmxpbmUKICAgICAgICAgICAgQGxvYWRlZGRhdGE9JHt0aGlzLmhhbmRsZUhvdmVyVmlkZW9Mb2FkZWR9CiAgICAgICAgICA+PC92aWRlbz4KICAgICAgICBgOiIifQogICAgICA8L2Rpdj4KCiAgICAgICR7dGhpcy5pc0hvdmVyaW5nPyIiOlNgCiAgICAgICAgPGRpdiBjbGFzcz0icGxheS1vdmVybGF5Ij4KICAgICAgICAgIDxkZWVzLWljb24gaWNvbj0ibHVjaWRlOlBsYXkiPjwvZGVlcy1pY29uPgogICAgICAgIDwvZGl2PgogICAgICBgfQoKICAgICAgJHt0aGlzLmNsaWNrYWJsZT9TYAogICAgICAgIDxkaXYgY2xhc3M9InRpbGUtb3ZlcmxheSI+CiAgICAgICAgICA8ZGVlcy1pY29uIGljb249Imx1Y2lkZTpQbGF5Ij48L2RlZXMtaWNvbj4KICAgICAgICAgIDxzcGFuPlBsYXkgVmlkZW88L3NwYW4+CiAgICAgICAgPC9kaXY+CiAgICAgIGA6IiJ9CiAgICBgfXJlbmRlckJvdHRvbUJhcigpe3JldHVybiF0aGlzLmxhYmVsJiYhdGhpcy5kdXJhdGlvbj8iIjpTYAogICAgICA8ZGl2IGNsYXNzPSJ0aWxlLWluZm8tYmFyIj4KICAgICAgICAke3RoaXMubGFiZWw/U2A8c3BhbiBjbGFzcz0iaW5mby1sYWJlbCIgdGl0bGU9IiR7dGhpcy5sYWJlbH0iPiR7dGhpcy5sYWJlbH08L3NwYW4+YDoiIn0KICAgICAgICA8c3BhbiBjbGFzcz0iaW5mby1zcGFjZXIiPjwvc3Bhbj4KICAgICAgICAke3RoaXMuZHVyYXRpb24+MD9TYDxzcGFuIGNsYXNzPSJpbmZvLWRldGFpbCI+JHt0aGlzLmZvcm1hdFRpbWUodGhpcy5kdXJhdGlvbil9PC9zcGFuPmA6IiJ9CiAgICAgIDwvZGl2PgogICAgYH1nZXRUaWxlQ2xpY2tEZXRhaWwoKXtyZXR1cm57c3JjOnRoaXMuc3JjLHBvc3Rlcjp0aGlzLnBvc3RlcixkdXJhdGlvbjp0aGlzLmR1cmF0aW9ufX1vbkJlY2FtZVZpc2libGUoKXshdGhpcy5oYXNTdGFydGVkTG9hZGluZyYmdGhpcy5zcmMmJih0aGlzLmhhc1N0YXJ0ZWRMb2FkaW5nPSEwLHRoaXMuY2FwdHVyZUZpcnN0RnJhbWUoKSl9YXN5bmMgY2FwdHVyZUZpcnN0RnJhbWUoKXtpZih0aGlzLnBvc3Rlcil7dGhpcy5sb2FkRHVyYXRpb24oKTtyZXR1cm59dGhpcy5sb2FkaW5nPSEwO3RyeXtsZXQgQz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ2aWRlbyIpO0MuY3Jvc3NPcmlnaW49ImFub255bW91cyIsQy5tdXRlZD0hMCxDLnByZWxvYWQ9Im1ldGFkYXRhIixhd2FpdCBuZXcgUHJvbWlzZSgoayxOKT0+e0MuYWRkRXZlbnRMaXN0ZW5lcigibG9hZGVkZGF0YSIsKCk9Pnt0aGlzLmR1cmF0aW9uPUMuZHVyYXRpb24sQy5jdXJyZW50VGltZT0uMSxDLmFkZEV2ZW50TGlzdGVuZXIoInNlZWtlZCIsKCk9PntsZXQgJD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJjYW52YXMiKTskLndpZHRoPUMudmlkZW9XaWR0aCwkLmhlaWdodD1DLnZpZGVvSGVpZ2h0O2xldCBJPSQuZ2V0Q29udGV4dCgiMmQiKTtJJiYoSS5kcmF3SW1hZ2UoQywwLDApLHRoaXMudGh1bWJuYWlsQ2FudmFzPSQsdGhpcy50aHVtYm5haWxDYXB0dXJlZD0hMCksQy5zcmM9IiIsQy5sb2FkKCksaygpfSx7b25jZTohMH0pfSx7b25jZTohMH0pLEMuYWRkRXZlbnRMaXN0ZW5lcigiZXJyb3IiLCgpPT5OKG5ldyBFcnJvcigiRmFpbGVkIHRvIGxvYWQgdmlkZW8iKSkse29uY2U6ITB9KSxDLnNyYz10aGlzLnNyY30pLHRoaXMubG9hZGluZz0hMSxhd2FpdCB0aGlzLnVwZGF0ZUNvbXBsZXRlLHRoaXMuY29weVRodW1ibmFpbFRvQ2FudmFzKCl9Y2F0Y2h7dGhpcy5sb2FkaW5nPSExLHRoaXMubG9hZER1cmF0aW9uKCl9fWxvYWREdXJhdGlvbigpe2xldCBDPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInZpZGVvIik7Qy5wcmVsb2FkPSJtZXRhZGF0YSIsQy5hZGRFdmVudExpc3RlbmVyKCJsb2FkZWRtZXRhZGF0YSIsKCk9Pnt0aGlzLmR1cmF0aW9uPUMuZHVyYXRpb24sQy5zcmM9IiIsQy5sb2FkKCl9KSxDLnNyYz10aGlzLnNyY31jb3B5VGh1bWJuYWlsVG9DYW52YXMoKXtpZighdGhpcy50aHVtYm5haWxDYW52YXMpcmV0dXJuO2xldCBDPXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiLnZpZGVvLXdyYXBwZXIgY2FudmFzIik7aWYoIUMpcmV0dXJuO0Mud2lkdGg9dGhpcy50aHVtYm5haWxDYW52YXMud2lkdGgsQy5oZWlnaHQ9dGhpcy50aHVtYm5haWxDYW52YXMuaGVpZ2h0O2xldCBrPUMuZ2V0Q29udGV4dCgiMmQiKTtrJiZrLmRyYXdJbWFnZSh0aGlzLnRodW1ibmFpbENhbnZhcywwLDApfW9uVGlsZU1vdXNlRW50ZXIoKXt0aGlzLmlzSG92ZXJpbmc9ITB9b25UaWxlTW91c2VMZWF2ZSgpe3RoaXMuaXNIb3ZlcmluZz0hMSx0aGlzLmhvdmVyVmlkZW89bnVsbH1oYW5kbGVIb3ZlclZpZGVvTG9hZGVkKEMpe3RoaXMuaG92ZXJWaWRlbz1DLnRhcmdldCx0aGlzLmhvdmVyVmlkZW8ucGxheSgpLmNhdGNoKCgpPT57fSl9YXN5bmMgdXBkYXRlZChDKXtzdXBlci51cGRhdGVkKEMpLEMuaGFzKCJzcmMiKSYmdGhpcy5zcmMmJnRoaXMuaXNWaXNpYmxlJiYodGhpcy5oYXNTdGFydGVkTG9hZGluZz0hMCx0aGlzLnRodW1ibmFpbENhcHR1cmVkPSExLHRoaXMuZHVyYXRpb249MCx0aGlzLmNhcHR1cmVGaXJzdEZyYW1lKCkpLEMuaGFzKCJ0aHVtYm5haWxDYXB0dXJlZCIpJiZ0aGlzLnRodW1ibmFpbENhcHR1cmVkJiYoYXdhaXQgdGhpcy51cGRhdGVDb21wbGV0ZSx0aGlzLmNvcHlUaHVtYm5haWxUb0NhbnZhcygpKX1hc3luYyBkaXNjb25uZWN0ZWRDYWxsYmFjaygpe2F3YWl0IHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCksdGhpcy5ob3ZlclZpZGVvJiYodGhpcy5ob3ZlclZpZGVvLnBhdXNlKCksdGhpcy5ob3ZlclZpZGVvLnNyYz0iIix0aGlzLmhvdmVyVmlkZW89bnVsbCksdGhpcy50aHVtYm5haWxDYW52YXM9bnVsbH1mb3JtYXRUaW1lKEMpe2lmKCFpc0Zpbml0ZShDKXx8QzwwKXJldHVybiIwOjAwIjtsZXQgaz1NYXRoLmZsb29yKEMvNjApLE49TWF0aC5mbG9vcihDJTYwKTtyZXR1cm5gJHtrfToke04udG9TdHJpbmcoKS5wYWRTdGFydCgyLCIwIil9YH1zdGF0aWN7V3MoYSxyKX19O3JldHVybiBGPWF9KSgpfSk7dmFyIHhPcj1sKCgpPT57Z09yKCl9KTt2YXIgYk9yLHZPcj1sKCgpPT57U2UoKTtiT3I9KCk9PntsZXQgZT1gaW1wb3J0IHsgaHRtbCB9IGZyb20gJ2xpdCc7CgpleHBvcnQgY2xhc3MgTXlDb21wb25lbnQgewogIHByaXZhdGUgaXRlbXM6IHN0cmluZ1tdID0gW107CgogIHJlbmRlcigpIHsKICAgIHJldHVybiBodG1sXGAKICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICBcJHt0aGlzLml0ZW1zLm1hcChpdGVtID0+IGh0bWxcYAogICAgICAgICAgPHNwYW4+XCR7aXRlbX08L3NwYW4+CiAgICAgICAgXGApfQogICAgICA8L2Rpdj4KICAgIFxgOwogIH0KfWAsdD1gTWVldGluZyBOb3RlcyAtIFE0IFBsYW5uaW5nCkRhdGU6IEphbnVhcnkgMTUsIDIwMjYKQXR0ZW5kZWVzOiBBbGljZSwgQm9iLCBDaGFybGllCgpLZXkgRGVjaXNpb25zOgoxLiBMYXVuY2ggbmV3IGZlYXR1cmUgYnkgTWFyY2gKMi4gSGlyZSAyIG1vcmUgZW5naW5lZXJzCjMuIE1pZ3JhdGUgdG8gbmV3IENJL0NEIHBpcGVsaW5lCjQuIFVwZGF0ZSBkZXNpZ24gc3lzdGVtIHRvIHYzCgpBY3Rpb24gSXRlbXM6Ci0gQWxpY2U6IERyYWZ0IFBSRCBieSBuZXh0IHdlZWsKLSBCb2I6IFNldCB1cCBpbnRlcnZpZXcgcGlwZWxpbmUKLSBDaGFybGllOiBFdmFsdWF0ZSBKZW5raW5zIHZzIEdpdEh1YiBBY3Rpb25zYDtyZXR1cm4gU2AKICAgIDxzdHlsZT4KICAgICAgLmRlbW8tY29udGFpbmVyIHsKICAgICAgICBwYWRkaW5nOiA0MHB4OwogICAgICAgIGJhY2tncm91bmQ6ICNmNWY1ZjU7CiAgICAgIH0KICAgICAgLmRlbW8tc2VjdGlvbiB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDsKICAgICAgfQogICAgICBoMyB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsKICAgICAgICBmb250LXNpemU6IDE4cHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgfQogICAgICAudGlsZS1yb3cgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZ2FwOiAyNHB4OwogICAgICAgIGZsZXgtd3JhcDogd3JhcDsKICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsKICAgICAgfQogICAgPC9zdHlsZT4KCiAgICA8ZGl2IGNsYXNzPSJkZW1vLWNvbnRhaW5lciI+CiAgICAgIDxkaXYgY2xhc3M9ImRlbW8tc2VjdGlvbiI+CiAgICAgICAgPGgzPk5vdGUgVGlsZXM8L2gzPgogICAgICAgIDxkaXYgY2xhc3M9InRpbGUtcm93Ij4KICAgICAgICAgIDxkZWVzLXRpbGUtbm90ZQogICAgICAgICAgICB0aXRsZT0iY29tcG9uZW50LnRzIgogICAgICAgICAgICAuY29udGVudD0ke2V9CiAgICAgICAgICAgIGxhbmd1YWdlPSJ0eXBlc2NyaXB0IgogICAgICAgICAgICBsYWJlbD0iY29tcG9uZW50LnRzIgogICAgICAgICAgICBAdGlsZS1jbGljaz0ke2E9PmNvbnNvbGUubG9nKCJOb3RlIGNsaWNrZWQ6IixhLmRldGFpbCl9CiAgICAgICAgICA+PC9kZWVzLXRpbGUtbm90ZT4KCiAgICAgICAgICA8ZGVlcy10aWxlLW5vdGUKICAgICAgICAgICAgdGl0bGU9Ik1lZXRpbmcgTm90ZXMiCiAgICAgICAgICAgIC5jb250ZW50PSR7dH0KICAgICAgICAgICAgbGFiZWw9Im1lZXRpbmctbm90ZXMudHh0IgogICAgICAgICAgPjwvZGVlcy10aWxlLW5vdGU+CgogICAgICAgICAgPGRlZXMtdGlsZS1ub3RlCiAgICAgICAgICAgIHRpdGxlPSJwYWNrYWdlLmpzb24iCiAgICAgICAgICAgIC5jb250ZW50PSR7YHsKICAibmFtZSI6ICJAZGVzaWduLmVzdGF0ZS9kZWVzLWNhdGFsb2ciLAogICJ2ZXJzaW9uIjogIjMuMzguMCIsCiAgImRlc2NyaXB0aW9uIjogIkRlc2lnbiBjb21wb25lbnQgY2F0YWxvZyIsCiAgImRlcGVuZGVuY2llcyI6IHsKICAgICJAZGVzaWduLmVzdGF0ZS9kZWVzLWVsZW1lbnQiOiAiXjIuMC4wIiwKICAgICJsaXQiOiAiXjMuMS4wIgogIH0sCiAgInNjcmlwdHMiOiB7CiAgICAiYnVpbGQiOiAidHNidWlsZCIsCiAgICAidGVzdCI6ICJ0c3Rlc3QiCiAgfQp9YH0KICAgICAgICAgICAgbGFuZ3VhZ2U9Impzb24iCiAgICAgICAgICAgIGxhYmVsPSJwYWNrYWdlLmpzb24iCiAgICAgICAgICA+PC9kZWVzLXRpbGUtbm90ZT4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CgogICAgICA8ZGl2IGNsYXNzPSJkZW1vLXNlY3Rpb24iPgogICAgICAgIDxoMz5TaXplIFZhcmlhbnRzPC9oMz4KICAgICAgICA8ZGl2IGNsYXNzPSJ0aWxlLXJvdyI+CiAgICAgICAgICA8ZGVlcy10aWxlLW5vdGUKICAgICAgICAgICAgc2l6ZT0ic21hbGwiCiAgICAgICAgICAgIHRpdGxlPSJzbWFsbC50cyIKICAgICAgICAgICAgLmNvbnRlbnQ9JHtlfQogICAgICAgICAgICBsYW5ndWFnZT0idHMiCiAgICAgICAgICAgIGxhYmVsPSJzbWFsbC50cyIKICAgICAgICAgID48L2RlZXMtdGlsZS1ub3RlPgoKICAgICAgICAgIDxkZWVzLXRpbGUtbm90ZQogICAgICAgICAgICB0aXRsZT0iZGVmYXVsdC50cyIKICAgICAgICAgICAgLmNvbnRlbnQ9JHtlfQogICAgICAgICAgICBsYW5ndWFnZT0idHMiCiAgICAgICAgICAgIGxhYmVsPSJkZWZhdWx0LnRzIgogICAgICAgICAgPjwvZGVlcy10aWxlLW5vdGU+CgogICAgICAgICAgPGRlZXMtdGlsZS1ub3RlCiAgICAgICAgICAgIHNpemU9ImxhcmdlIgogICAgICAgICAgICB0aXRsZT0ibGFyZ2UudHMiCiAgICAgICAgICAgIC5jb250ZW50PSR7ZX0KICAgICAgICAgICAgbGFuZ3VhZ2U9InRzIgogICAgICAgICAgICBsYWJlbD0ibGFyZ2UudHMiCiAgICAgICAgICA+PC9kZWVzLXRpbGUtbm90ZT4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CgogICAgICA8ZGl2IGNsYXNzPSJkZW1vLXNlY3Rpb24iPgogICAgICAgIDxoMz5XaXRob3V0IFRpdGxlPC9oMz4KICAgICAgICA8ZGVlcy10aWxlLW5vdGUKICAgICAgICAgIC5jb250ZW50PSR7dH0KICAgICAgICAgIGxhYmVsPSJ1bnRpdGxlZC50eHQiCiAgICAgICAgPjwvZGVlcy10aWxlLW5vdGU+CiAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgYH19KTt2YXIgVlosV2MseU9yLHdPcj1sKCgpPT57U2UoKTt4MygpO1VjKCk7dk9yKCk7Vlo9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxXYz1mdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MixpPTA7aTx0Lmxlbmd0aDtpKyspcj1hP3RbaV0uY2FsbChlLHIpOnRbaV0uY2FsbChlKTtyZXR1cm4gYT9yOnZvaWQgMH0seU9yPSgoKT0+e2xldCBlPVt6ZSgiZGVlcy10aWxlLW5vdGUiKV0sdCxyPVtdLGEsaT15byxvLG49W10scz1bXSxjLGQ9W10sZj1bXSx1LHA9W10saD1bXSxiLHg9W10sZz1bXTt2YXIgdj1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IHc9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baih7dHlwZTpTdHJpbmd9KV0sYz1baih7dHlwZTpTdHJpbmd9KV0sdT1baih7dHlwZTpTdHJpbmd9KV0sYj1bcmUoKV0sVloodGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ0aXRsZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6TT0+InRpdGxlImluIE0sZ2V0Ok09Pk0udGl0bGUsc2V0OihNLEYpPT57TS50aXRsZT1GfX0sbWV0YWRhdGE6d30sbixzKSxWWih0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImNvbnRlbnQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOk09PiJjb250ZW50ImluIE0sZ2V0Ok09Pk0uY29udGVudCxzZXQ6KE0sRik9PntNLmNvbnRlbnQ9Rn19LG1ldGFkYXRhOnd9LGQsZiksVloodGhpcyxudWxsLHUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJsYW5ndWFnZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6TT0+Imxhbmd1YWdlImluIE0sZ2V0Ok09Pk0ubGFuZ3VhZ2Usc2V0OihNLEYpPT57TS5sYW5ndWFnZT1GfX0sbWV0YWRhdGE6d30scCxoKSxWWih0aGlzLG51bGwsYix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImlzSG92ZXJpbmciLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOk09PiJpc0hvdmVyaW5nImluIE0sZ2V0Ok09Pk0uaXNIb3ZlcmluZyxzZXQ6KE0sRik9PntNLmlzSG92ZXJpbmc9Rn19LG1ldGFkYXRhOnd9LHgsZyksVloobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6d30sbnVsbCxyKSx2PWE9dC52YWx1ZSx3JiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnd9KX1zdGF0aWMgZGVtbz1iT3I7c3RhdGljIGRlbW9Hcm91cHM9WyJNZWRpYSJdO3N0YXRpYyBzdHlsZXM9Wy4uLmVvLGxlYAogICAgICAubm90ZS1jb250ZW50IHsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2ZmZmZmZiIsImhzbCg2MCA1JSA5NiUpIil9OwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgIH0KCiAgICAgIC5ub3RlLWhlYWRlciB7CiAgICAgICAgcGFkZGluZzogMTJweCAxNHB4IDhweDsKICAgICAgICBmbGV4LXNocmluazogMDsKICAgICAgfQoKICAgICAgLm5vdGUtdGl0bGUgewogICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICBmb250LXdlaWdodDogNzAwOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNSAyMCUgMjAlKSIsImhzbCgyMTUgMjAlIDIwJSkiKX07CiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOwogICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7CiAgICAgIH0KCiAgICAgIC5ub3RlLWJvZHkgewogICAgICAgIGZsZXg6IDE7CiAgICAgICAgcGFkZGluZzogMCAxNHB4IDE0cHg7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgIH0KCiAgICAgIC5ub3RlLXRleHQgewogICAgICAgIGZvbnQtZmFtaWx5OiB1aS1tb25vc3BhY2UsIFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgbW9ub3NwYWNlOwogICAgICAgIGZvbnQtc2l6ZTogMTBweDsKICAgICAgICBsaW5lLWhlaWdodDogMS41OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNSAxMCUgNDAlKSIsImhzbCgyMTUgMTAlIDM1JSkiKX07CiAgICAgICAgd2hpdGUtc3BhY2U6IHByZS13cmFwOwogICAgICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIG1hcmdpbjogMDsKICAgICAgfQoKICAgICAgLm5vdGUtZmFkZSB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIGJvdHRvbTogMDsKICAgICAgICBsZWZ0OiAwOwogICAgICAgIHJpZ2h0OiAwOwogICAgICAgIGhlaWdodDogNjBweDsKICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoCiAgICAgICAgICB0cmFuc3BhcmVudCwKICAgICAgICAgICR7bS5iZFRoZW1lKCIjZmZmZmZmIiwiaHNsKDYwIDUlIDk2JSkiKX0KICAgICAgICApOwogICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgICB9CgogICAgICAubm90ZS1saW5lcyB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHRvcDogMDsKICAgICAgICBsZWZ0OiAwOwogICAgICAgIGJvdHRvbTogMDsKICAgICAgICB3aWR0aDogMzRweDsKICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgNzAlIDg1JSkiLCJoc2woMCA1MCUgODAlKSIpfTsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgcGFkZGluZy10b3A6IDEycHg7CiAgICAgIH0KCiAgICAgIC5saW5lLW51bWJlciB7CiAgICAgICAgZm9udC1mYW1pbHk6IHVpLW1vbm9zcGFjZSwgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBtb25vc3BhY2U7CiAgICAgICAgZm9udC1zaXplOiA5cHg7CiAgICAgICAgbGluZS1oZWlnaHQ6IDE1cHg7IC8qIG1hdGNoZXMgMTBweCAqIDEuNSBsaW5lLWhlaWdodCAqLwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNSAxMCUgNzUlKSIsImhzbCgyMTUgMTAlIDcwJSkiKX07CiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7CiAgICAgICAgcGFkZGluZy1yaWdodDogNnB4OwogICAgICB9CgogICAgYF07I2U9V2ModGhpcyxuLCIiKTtnZXQgdGl0bGUoKXtyZXR1cm4gdGhpcy4jZX1zZXQgdGl0bGUodyl7dGhpcy4jZT13fSN0PShXYyh0aGlzLHMpLFdjKHRoaXMsZCwiIikpO2dldCBjb250ZW50KCl7cmV0dXJuIHRoaXMuI3R9c2V0IGNvbnRlbnQodyl7dGhpcy4jdD13fSNyPShXYyh0aGlzLGYpLFdjKHRoaXMscCwiIikpO2dldCBsYW5ndWFnZSgpe3JldHVybiB0aGlzLiNyfXNldCBsYW5ndWFnZSh3KXt0aGlzLiNyPXd9I2E9KFdjKHRoaXMsaCksV2ModGhpcyx4LCExKSk7Z2V0IGlzSG92ZXJpbmcoKXtyZXR1cm4gdGhpcy4jYX1zZXQgaXNIb3ZlcmluZyh3KXt0aGlzLiNhPXd9bm90ZUJvZHlFbGVtZW50PShXYyh0aGlzLGcpLG51bGwpO3JlbmRlclRpbGVDb250ZW50KCl7bGV0IHc9dGhpcy5jb250ZW50LnNwbGl0KGAKYCk7cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9Im5vdGUtY29udGVudCI+CiAgICAgICAgJHt0aGlzLnRpdGxlP1NgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJub3RlLWhlYWRlciI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im5vdGUtdGl0bGUiPiR7dGhpcy50aXRsZX08L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgIGA6IiJ9CgogICAgICAgIDxkaXYgY2xhc3M9Im5vdGUtYm9keSI+CiAgICAgICAgICA8cHJlIGNsYXNzPSJub3RlLXRleHQiPiR7dy5qb2luKGAKYCl9PC9wcmU+CiAgICAgICAgICAke3RoaXMuaXNIb3ZlcmluZz8iIjpTYDxkaXYgY2xhc3M9Im5vdGUtZmFkZSI+PC9kaXY+YH0KICAgICAgICA8L2Rpdj4KCiAgICAgIDwvZGl2PgoKICAgICAgJHt0aGlzLmNsaWNrYWJsZT9TYAogICAgICAgIDxkaXYgY2xhc3M9InRpbGUtb3ZlcmxheSI+CiAgICAgICAgICA8ZGVlcy1pY29uIGljb249Imx1Y2lkZTpGaWxlVGV4dCI+PC9kZWVzLWljb24+CiAgICAgICAgICA8c3Bhbj5PcGVuIE5vdGU8L3NwYW4+CiAgICAgICAgPC9kaXY+CiAgICAgIGA6IiJ9CiAgICBgfXJlbmRlckJvdHRvbUJhcigpe2xldCB3PXRoaXMuY29udGVudC5zcGxpdChgCmApO3JldHVybiF0aGlzLmxhYmVsJiYhdGhpcy5sYW5ndWFnZSYmIXcubGVuZ3RoPyIiOlNgCiAgICAgIDxkaXYgY2xhc3M9InRpbGUtaW5mby1iYXIiPgogICAgICAgICR7dGhpcy5sYWJlbD9TYDxzcGFuIGNsYXNzPSJpbmZvLWxhYmVsIiB0aXRsZT0iJHt0aGlzLmxhYmVsfSI+JHt0aGlzLmxhYmVsfTwvc3Bhbj5gOiIifQogICAgICAgIDxzcGFuIGNsYXNzPSJpbmZvLXNwYWNlciI+PC9zcGFuPgogICAgICAgICR7dGhpcy5sYW5ndWFnZT9TYDxzcGFuIGNsYXNzPSJpbmZvLWRldGFpbCI+JHt0aGlzLmxhbmd1YWdlLnRvVXBwZXJDYXNlKCl9PC9zcGFuPmA6IiJ9CiAgICAgICAgJHt0aGlzLmlzSG92ZXJpbmcmJncubGVuZ3RoPjEyP1NgPHNwYW4gY2xhc3M9ImluZm8tZGV0YWlsIj5MaW5lICR7dGhpcy5nZXRWaXNpYmxlTGluZVJhbmdlKHcubGVuZ3RoKX08L3NwYW4+YDpTYDxzcGFuIGNsYXNzPSJpbmZvLWRldGFpbCI+JHt3Lmxlbmd0aH0gbGluZXM8L3NwYW4+YH0KICAgICAgPC9kaXY+CiAgICBgfWdldFRpbGVDbGlja0RldGFpbCgpe3JldHVybnt0aXRsZTp0aGlzLnRpdGxlLGNvbnRlbnQ6dGhpcy5jb250ZW50LGxhbmd1YWdlOnRoaXMubGFuZ3VhZ2V9fW9uVGlsZU1vdXNlRW50ZXIoKXt0aGlzLmlzSG92ZXJpbmc9ITAsdGhpcy5ub3RlQm9keUVsZW1lbnR8fCh0aGlzLm5vdGVCb2R5RWxlbWVudD10aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoIi5ub3RlLWJvZHkiKSl9b25UaWxlTW91c2VMZWF2ZSgpe3RoaXMuaXNIb3ZlcmluZz0hMSx0aGlzLm5vdGVCb2R5RWxlbWVudCYmKHRoaXMubm90ZUJvZHlFbGVtZW50LnNjcm9sbFRvcD0wKX1vblRpbGVNb3VzZU1vdmUodyl7aWYoIXRoaXMuaXNIb3ZlcmluZ3x8IXRoaXMubm90ZUJvZHlFbGVtZW50fHx0aGlzLmNvbnRlbnQuc3BsaXQoYApgKS5sZW5ndGg8PTEyKXJldHVybjtsZXQgRj10aGlzLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLEM9dy5jbGllbnRYLUYubGVmdCxrPU1hdGgubWF4KDAsTWF0aC5taW4oMSxDL0Yud2lkdGgpKSxOPXRoaXMubm90ZUJvZHlFbGVtZW50LnNjcm9sbEhlaWdodC10aGlzLm5vdGVCb2R5RWxlbWVudC5jbGllbnRIZWlnaHQ7dGhpcy5ub3RlQm9keUVsZW1lbnQuc2Nyb2xsVG9wPWsqTn1nZXRWaXNpYmxlTGluZVJhbmdlKHcpe2lmKCF0aGlzLm5vdGVCb2R5RWxlbWVudClyZXR1cm5gMVx1MjAxMzEyIG9mICR7d31gO2xldCBNPTE1LEY9TWF0aC5mbG9vcih0aGlzLm5vdGVCb2R5RWxlbWVudC5zY3JvbGxUb3AvTSkrMSxDPU1hdGguZmxvb3IodGhpcy5ub3RlQm9keUVsZW1lbnQuY2xpZW50SGVpZ2h0L00pLGs9TWF0aC5taW4oRitDLTEsdyk7cmV0dXJuYCR7Rn1cdTIwMTMke2t9IG9mICR7d31gfXN0YXRpY3tXYyhhLHIpfX07cmV0dXJuIHY9YX0pKCl9KTt2YXIgTU9yPWwoKCk9Pnt3T3IoKX0pO3ZhciBrT3IsU09yPWwoKCk9PntTZSgpO2tPcj0oKT0+e2xldCBlPVt7dHlwZToiaW1hZ2UiLG5hbWU6InN1bnNldC5qcGciLHRodW1ibmFpbFNyYzoiaHR0cHM6Ly9waWNzdW0ucGhvdG9zLzIwMC8yMDA/cmFuZG9tPTEifSx7dHlwZToiaW1hZ2UiLG5hbWU6Im1vdW50YWluLmpwZyIsdGh1bWJuYWlsU3JjOiJodHRwczovL3BpY3N1bS5waG90b3MvMjAwLzIwMD9yYW5kb209MiJ9LHt0eXBlOiJpbWFnZSIsbmFtZToib2NlYW4uanBnIix0aHVtYm5haWxTcmM6Imh0dHBzOi8vcGljc3VtLnBob3Rvcy8yMDAvMjAwP3JhbmRvbT0zIn0se3R5cGU6ImltYWdlIixuYW1lOiJmb3Jlc3QuanBnIix0aHVtYm5haWxTcmM6Imh0dHBzOi8vcGljc3VtLnBob3Rvcy8yMDAvMjAwP3JhbmRvbT00In0se3R5cGU6ImltYWdlIixuYW1lOiJjaXR5LmpwZyIsdGh1bWJuYWlsU3JjOiJodHRwczovL3BpY3N1bS5waG90b3MvMjAwLzIwMD9yYW5kb209NSJ9LHt0eXBlOiJpbWFnZSIsbmFtZToiZGVzZXJ0LmpwZyIsdGh1bWJuYWlsU3JjOiJodHRwczovL3BpY3N1bS5waG90b3MvMjAwLzIwMD9yYW5kb209NiJ9XTtyZXR1cm4gU2AKICAgIDxzdHlsZT4KICAgICAgLmRlbW8tY29udGFpbmVyIHsKICAgICAgICBwYWRkaW5nOiA0MHB4OwogICAgICAgIGJhY2tncm91bmQ6ICNmNWY1ZjU7CiAgICAgIH0KICAgICAgLmRlbW8tc2VjdGlvbiB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDsKICAgICAgfQogICAgICBoMyB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsKICAgICAgICBmb250LXNpemU6IDE4cHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgfQogICAgICAudGlsZS1yb3cgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZ2FwOiAyNHB4OwogICAgICAgIGZsZXgtd3JhcDogd3JhcDsKICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsKICAgICAgfQogICAgPC9zdHlsZT4KCiAgICA8ZGl2IGNsYXNzPSJkZW1vLWNvbnRhaW5lciI+CiAgICAgIDxkaXYgY2xhc3M9ImRlbW8tc2VjdGlvbiI+CiAgICAgICAgPGgzPkZvbGRlciBUaWxlczwvaDM+CiAgICAgICAgPGRpdiBjbGFzcz0idGlsZS1yb3ciPgogICAgICAgICAgPGRlZXMtdGlsZS1mb2xkZXIKICAgICAgICAgICAgbmFtZT0iUGhvdG9zIgogICAgICAgICAgICAuaXRlbXM9JHtlfQogICAgICAgICAgICBsYWJlbD0iNiBwaG90b3MiCiAgICAgICAgICAgIEB0aWxlLWNsaWNrPSR7bz0+Y29uc29sZS5sb2coIkZvbGRlciBjbGlja2VkOiIsby5kZXRhaWwpfQogICAgICAgICAgPjwvZGVlcy10aWxlLWZvbGRlcj4KCiAgICAgICAgICA8ZGVlcy10aWxlLWZvbGRlcgogICAgICAgICAgICBuYW1lPSJteS1wcm9qZWN0IgogICAgICAgICAgICAuaXRlbXM9JHtbe3R5cGU6Im5vdGUiLG5hbWU6IlJFQURNRS5tZCJ9LHt0eXBlOiJub3RlIixuYW1lOiJwYWNrYWdlLmpzb24ifSx7dHlwZToiZm9sZGVyIixuYW1lOiJzcmMifSx7dHlwZToiZm9sZGVyIixuYW1lOiJ0ZXN0In0se3R5cGU6Im5vdGUiLG5hbWU6InRzY29uZmlnLmpzb24ifSx7dHlwZToicGRmIixuYW1lOiJkb2NzLnBkZiJ9LHt0eXBlOiJpbWFnZSIsbmFtZToibG9nby5wbmciLHRodW1ibmFpbFNyYzoiaHR0cHM6Ly9waWNzdW0ucGhvdG9zLzEwMC8xMDA/cmFuZG9tPTEwIn1dfQogICAgICAgICAgICBsYWJlbD0iUHJvamVjdCBmaWxlcyIKICAgICAgICAgID48L2RlZXMtdGlsZS1mb2xkZXI+CgogICAgICAgICAgPGRlZXMtdGlsZS1mb2xkZXIKICAgICAgICAgICAgbmFtZT0iTWVkaWEgQXNzZXRzIgogICAgICAgICAgICAuaXRlbXM9JHtbe3R5cGU6InZpZGVvIixuYW1lOiJpbnRyby5tcDQifSx7dHlwZToiYXVkaW8iLG5hbWU6ImJhY2tncm91bmQubXAzIn0se3R5cGU6ImltYWdlIixuYW1lOiJ0aHVtYm5haWwuanBnIix0aHVtYm5haWxTcmM6Imh0dHBzOi8vcGljc3VtLnBob3Rvcy8yMDAvMjAwP3JhbmRvbT0yMCJ9LHt0eXBlOiJwZGYiLG5hbWU6InN0b3J5Ym9hcmQucGRmIn1dfQogICAgICAgICAgICBsYWJlbD0iTWl4ZWQgbWVkaWEiCiAgICAgICAgICA+PC9kZWVzLXRpbGUtZm9sZGVyPgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KCiAgICAgIDxkaXYgY2xhc3M9ImRlbW8tc2VjdGlvbiI+CiAgICAgICAgPGgzPkVkZ2UgQ2FzZXM8L2gzPgogICAgICAgIDxkaXYgY2xhc3M9InRpbGUtcm93Ij4KICAgICAgICAgIDxkZWVzLXRpbGUtZm9sZGVyCiAgICAgICAgICAgIG5hbWU9IkVtcHR5IEZvbGRlciIKICAgICAgICAgICAgLml0ZW1zPSR7W119CiAgICAgICAgICA+PC9kZWVzLXRpbGUtZm9sZGVyPgoKICAgICAgICAgIDxkZWVzLXRpbGUtZm9sZGVyCiAgICAgICAgICAgIG5hbWU9IlNpbmdsZSBJdGVtIgogICAgICAgICAgICAuaXRlbXM9JHtbe3R5cGU6InBkZiIsbmFtZToicmVwb3J0LnBkZiJ9XX0KICAgICAgICAgID48L2RlZXMtdGlsZS1mb2xkZXI+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgoKICAgICAgPGRpdiBjbGFzcz0iZGVtby1zZWN0aW9uIj4KICAgICAgICA8aDM+U2l6ZSBWYXJpYW50czwvaDM+CiAgICAgICAgPGRpdiBjbGFzcz0idGlsZS1yb3ciPgogICAgICAgICAgPGRlZXMtdGlsZS1mb2xkZXIKICAgICAgICAgICAgc2l6ZT0ic21hbGwiCiAgICAgICAgICAgIG5hbWU9IlNtYWxsIgogICAgICAgICAgICAuaXRlbXM9JHtlfQogICAgICAgICAgPjwvZGVlcy10aWxlLWZvbGRlcj4KCiAgICAgICAgICA8ZGVlcy10aWxlLWZvbGRlcgogICAgICAgICAgICBuYW1lPSJEZWZhdWx0IgogICAgICAgICAgICAuaXRlbXM9JHtlfQogICAgICAgICAgPjwvZGVlcy10aWxlLWZvbGRlcj4KCiAgICAgICAgICA8ZGVlcy10aWxlLWZvbGRlcgogICAgICAgICAgICBzaXplPSJsYXJnZSIKICAgICAgICAgICAgbmFtZT0iTGFyZ2UiCiAgICAgICAgICAgIC5pdGVtcz0ke2V9CiAgICAgICAgICA+PC9kZWVzLXRpbGUtZm9sZGVyPgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIDwvZGl2PgogIGB9fSk7dmFyIGwwdCxVWix6T3IsQ09yLF9Pcj1sKCgpPT57U2UoKTt4MygpO1VjKCk7U09yKCk7bDB0PWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sVVo9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LHpPcj17cGRmOiJsdWNpZGU6RmlsZVRleHQiLGltYWdlOiJsdWNpZGU6SW1hZ2UiLGF1ZGlvOiJsdWNpZGU6TXVzaWMiLHZpZGVvOiJsdWNpZGU6VmlkZW8iLG5vdGU6Imx1Y2lkZTpGaWxlQ29kZSIsZm9sZGVyOiJsdWNpZGU6Rm9sZGVyIix1bmtub3duOiJsdWNpZGU6RmlsZSJ9LENPcj0oKCk9PntsZXQgZT1bemUoImRlZXMtdGlsZS1mb2xkZXIiKV0sdCxyPVtdLGEsaT15byxvLG49W10scz1bXSxjLGQ9W10sZj1bXTt2YXIgdT1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IHA9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baih7dHlwZTpTdHJpbmd9KV0sYz1baih7YXR0cmlidXRlOiExfSldLGwwdCh0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im5hbWUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmg9PiJuYW1lImluIGgsZ2V0Omg9PmgubmFtZSxzZXQ6KGgsYik9PntoLm5hbWU9Yn19LG1ldGFkYXRhOnB9LG4scyksbDB0KHRoaXMsbnVsbCxjLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiaXRlbXMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmg9PiJpdGVtcyJpbiBoLGdldDpoPT5oLml0ZW1zLHNldDooaCxiKT0+e2guaXRlbXM9Yn19LG1ldGFkYXRhOnB9LGQsZiksbDB0KG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOnB9LG51bGwsciksdT1hPXQudmFsdWUscCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpwfSl9c3RhdGljIGRlbW89a09yO3N0YXRpYyBkZW1vR3JvdXBzPVsiTWVkaWEiXTtzdGF0aWMgc3R5bGVzPVsuLi5lbyxsZWAKICAgICAgLmZvbGRlci1jb250ZW50IHsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDQwIDMwJSA5NyUpIiwiaHNsKDIxNSAyMCUgMTQlKSIpfTsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICB9CgogICAgICAuZm9sZGVyLWhlYWRlciB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogOHB4OwogICAgICAgIHBhZGRpbmc6IDEycHggMTRweCA4cHg7CiAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgIH0KCiAgICAgIC5mb2xkZXItaWNvbiB7CiAgICAgICAgZm9udC1zaXplOiAxOHB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDQwIDgwJSA1MCUpIiwiaHNsKDQwIDcwJSA2MCUpIil9OwogICAgICB9CgogICAgICAuZm9sZGVyLW5hbWUgewogICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICBmb250LXdlaWdodDogNzAwOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNSAyMCUgMjAlKSIsImhzbCgyMTUgMTYlIDgwJSkiKX07CiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOwogICAgICAgIGZsZXg6IDE7CiAgICAgIH0KCiAgICAgIC5wcmV2aWV3LWdyaWQgewogICAgICAgIGZsZXg6IDE7CiAgICAgICAgZGlzcGxheTogZ3JpZDsKICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7CiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnIgMWZyOwogICAgICAgIGdhcDogNHB4OwogICAgICAgIHBhZGRpbmc6IDAgMTRweCAxNHB4OwogICAgICAgIG1pbi1oZWlnaHQ6IDA7CiAgICAgIH0KCiAgICAgIC5ncmlkLWNlbGwgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDIxNSAyMCUgOTQlKSIsImhzbCgyMTUgMjAlIDE4JSkiKX07CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICB9CgogICAgICAuZ3JpZC1jZWxsIGltZyB7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIG9iamVjdC1maXQ6IGNvdmVyOwogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICB9CgogICAgICAuZ3JpZC1jZWxsIGRlZXMtaWNvbiB7CiAgICAgICAgZm9udC1zaXplOiAyMHB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNSAxNiUgNjAlKSIsImhzbCgyMTUgMTYlIDU1JSkiKX07CiAgICAgIH0KCiAgICAgIC5ncmlkLWNlbGwtZW1wdHkgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjE1IDE1JSA5NiUpIiwiaHNsKDIxNSAyMCUgMTYlKSIpfTsKICAgICAgfQoKICAgIGBdOyNlPVVaKHRoaXMsbiwiIik7Z2V0IG5hbWUoKXtyZXR1cm4gdGhpcy4jZX1zZXQgbmFtZShwKXt0aGlzLiNlPXB9I3Q9KFVaKHRoaXMscyksVVoodGhpcyxkLFtdKSk7Z2V0IGl0ZW1zKCl7cmV0dXJuIHRoaXMuI3R9c2V0IGl0ZW1zKHApe3RoaXMuI3Q9cH1yZW5kZXJUaWxlQ29udGVudCgpe2xldCBwPXRoaXMuaXRlbXMuc2xpY2UoMCw0KSxoPTQtcC5sZW5ndGg7cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9ImZvbGRlci1jb250ZW50Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJmb2xkZXItaGVhZGVyIj4KICAgICAgICAgIDxkZWVzLWljb24gY2xhc3M9ImZvbGRlci1pY29uIiBpY29uPSJsdWNpZGU6Rm9sZGVyIj48L2RlZXMtaWNvbj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImZvbGRlci1uYW1lIj4ke3RoaXMubmFtZXx8IlVudGl0bGVkIEZvbGRlciJ9PC9kaXY+CiAgICAgICAgPC9kaXY+CgogICAgICAgIDxkaXYgY2xhc3M9InByZXZpZXctZ3JpZCI+CiAgICAgICAgICAke3AubWFwKGI9PlNgCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImdyaWQtY2VsbCI+CiAgICAgICAgICAgICAgJHtiLnRodW1ibmFpbFNyYz9TYAogICAgICAgICAgICAgICAgPGltZyBzcmM9IiR7Yi50aHVtYm5haWxTcmN9IiBhbHQ9IiR7Yi5uYW1lfSIgLz4KICAgICAgICAgICAgICBgOlNgCiAgICAgICAgICAgICAgICA8ZGVlcy1pY29uIGljb249IiR7ek9yW2IudHlwZV18fHpPci51bmtub3dufSI+PC9kZWVzLWljb24+CiAgICAgICAgICAgICAgYH0KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICBgKX0KICAgICAgICAgICR7QXJyYXkuZnJvbSh7bGVuZ3RoOmh9KS5tYXAoKCk9PlNgCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImdyaWQtY2VsbCBncmlkLWNlbGwtZW1wdHkiPjwvZGl2PgogICAgICAgICAgYCl9CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgoKICAgICAgJHt0aGlzLmNsaWNrYWJsZT9TYAogICAgICAgIDxkaXYgY2xhc3M9InRpbGUtb3ZlcmxheSI+CiAgICAgICAgICA8ZGVlcy1pY29uIGljb249Imx1Y2lkZTpGb2xkZXJPcGVuIj48L2RlZXMtaWNvbj4KICAgICAgICAgIDxzcGFuPk9wZW4gRm9sZGVyPC9zcGFuPgogICAgICAgIDwvZGl2PgogICAgICBgOiIifQogICAgYH1yZW5kZXJCb3R0b21CYXIoKXtyZXR1cm4hdGhpcy5sYWJlbCYmIXRoaXMuaXRlbXMubGVuZ3RoPyIiOlNgCiAgICAgIDxkaXYgY2xhc3M9InRpbGUtaW5mby1iYXIiPgogICAgICAgICR7dGhpcy5sYWJlbD9TYDxzcGFuIGNsYXNzPSJpbmZvLWxhYmVsIiB0aXRsZT0iJHt0aGlzLmxhYmVsfSI+JHt0aGlzLmxhYmVsfTwvc3Bhbj5gOiIifQogICAgICAgIDxzcGFuIGNsYXNzPSJpbmZvLXNwYWNlciI+PC9zcGFuPgogICAgICAgIDxzcGFuIGNsYXNzPSJpbmZvLWRldGFpbCI+JHt0aGlzLml0ZW1zLmxlbmd0aH0gaXRlbSR7dGhpcy5pdGVtcy5sZW5ndGghPT0xPyJzIjoiIn08L3NwYW4+CiAgICAgIDwvZGl2PgogICAgYH1nZXRUaWxlQ2xpY2tEZXRhaWwoKXtyZXR1cm57bmFtZTp0aGlzLm5hbWUsaXRlbUNvdW50OnRoaXMuaXRlbXMubGVuZ3RoLGl0ZW1zOnRoaXMuaXRlbXN9fWNvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKSxVWih0aGlzLGYpfXN0YXRpY3tVWihhLHIpfX07cmV0dXJuIHU9YX0pKCl9KTt2YXIgVE9yPWwoKCk9PntfT3IoKX0pO3ZhciBMT3I9bCgoKT0+e19GcigpO0FGcigpO0lGcigpO1dGcigpO0dGcigpO1lGcigpO1pGcigpO3JPcigpO3NPcigpO2ZPcigpO3hPcigpO01PcigpO1RPcigpfSk7dmFyIERPcj1sKCgpPT57YmkoKX0pO3ZhciBBT3I9bCgoKT0+e1M4KCl9KTt2YXIgRU9yLCRPcj1sKCgpPT57U2UoKTtFT3I9KCk9PlNgCiAgICA8c3R5bGU+CiAgICAgIC5yZWYxIHsKICAgICAgICBtYXJnaW46IDIwcHg7CiAgICAgICAgd2lkdGg6IDEwcHg7CiAgICAgICAgaGVpZ2h0OiAxMHB4OwogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDsKICAgICAgfQogICAgPC9zdHlsZT4KICAgIDxkaXYgY2xhc3M9InJlZjEiPjwvZGl2PgogICAgPGRlZXMtc3BlZWNoYnViYmxlIC50ZXh0PSR7YAogICAgICAqKlRoaXMgaXMgYSBsb25nZXIgbWFya2Rvd24gdGV4dCB0aGF0ICBjYW4gYmUgdXNlZCB0aGUgd3JpdGUqKiAgCiAgICAgIGEgbG9uZ2VyIGRlc2NyaXB0aW9uIGFib3V0IHdoYXRzIGdvaW5nIG9uIHRoZSBhcHAgIAogIAogICAgICAqKlRoaXMgaXMgYSBzdWJoZWFkZXIqKgogICAgICBhbmQgYW5vdGhlciB0ZXh0CiAgICAKICAgIGB9PjwvZGVlcy1zcGVlY2hidWJibGU+CiAgYH0pO3ZhciBpZyxHcyxQT3IsSU9yPWwoKCk9PntWbigpO09pKCk7JE9yKCk7U2UoKTtrYygpO290KCk7aWc9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxHcz1mdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MixpPTA7aTx0Lmxlbmd0aDtpKyspcj1hP3RbaV0uY2FsbChlLHIpOnRbaV0uY2FsbChlKTtyZXR1cm4gYT9yOnZvaWQgMH0sUE9yPSgoKT0+e2xldCBlPVt6ZSgiZGVlcy1zcGVlY2hidWJibGUiKV0sdCxyPVtdLGEsaT1EZSxvLG49W10scz1bXSxjLGQ9W10sZj1bXSx1LHA9W10saD1bXSxiLHg9W10sZz1bXSx2LHc9W10sTT1bXTt2YXIgRj1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IEM9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baih7dHlwZTpPYmplY3R9KV0sYz1baih7dHlwZTpTdHJpbmcscmVmbGVjdDohMH0pXSx1PVtqKHt0eXBlOkJvb2xlYW59KV0sYj1baih7dHlwZTpCb29sZWFufSldLHY9W2ooe3R5cGU6U3RyaW5nfSldLGlnKHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToicmVmZmVkRWxlbWVudCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6az0+InJlZmZlZEVsZW1lbnQiaW4gayxnZXQ6az0+ay5yZWZmZWRFbGVtZW50LHNldDooayxOKT0+e2sucmVmZmVkRWxlbWVudD1OfX0sbWV0YWRhdGE6Q30sbixzKSxpZyh0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InRleHQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOms9PiJ0ZXh0ImluIGssZ2V0Oms9PmsudGV4dCxzZXQ6KGssTik9PntrLnRleHQ9Tn19LG1ldGFkYXRhOkN9LGQsZiksaWcodGhpcyxudWxsLHUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ3YXZlIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczprPT4id2F2ZSJpbiBrLGdldDprPT5rLndhdmUsc2V0OihrLE4pPT57ay53YXZlPU59fSxtZXRhZGF0YTpDfSxwLGgpLGlnKHRoaXMsbnVsbCxiLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibWFuaWZlc3RlZCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6az0+Im1hbmlmZXN0ZWQiaW4gayxnZXQ6az0+ay5tYW5pZmVzdGVkLHNldDooayxOKT0+e2subWFuaWZlc3RlZD1OfX0sbWV0YWRhdGE6Q30seCxnKSxpZyh0aGlzLG51bGwsdix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InN0YXR1cyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6az0+InN0YXR1cyJpbiBrLGdldDprPT5rLnN0YXR1cyxzZXQ6KGssTik9PntrLnN0YXR1cz1OfX0sbWV0YWRhdGE6Q30sdyxNKSxpZyhudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTpDfSxudWxsLHIpLEY9YT10LnZhbHVlLEMmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6Q30pfXN0YXRpYyBkZW1vPUVPcjtzdGF0aWMgZGVtb0dyb3Vwcz1bIk92ZXJsYXkiXTtzdGF0aWMgYXN5bmMgY3JlYXRlQW5kU2hvdyhDLGspe2xldCBOPWF3YWl0IHFuLmNyZWF0ZUFuZFNob3coe2JsdXI6ITF9KSwkPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRlZXMtc3BlZWNoYnViYmxlIik7cmV0dXJuICQud2luZG93TGF5ZXI9TiwkLnJlZmZlZEVsZW1lbnQ9QywkLnRleHQ9aywkLm1hbmlmZXN0ZWQ9ITAsTi5hcHBlbmRDaGlsZCgkKSxOLnN0eWxlLnBvaW50ZXJFdmVudHM9Im5vbmUiLE4uc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCIud2luZG93T3ZlcmxheSIpLnN0eWxlLnBvaW50ZXJFdmVudHM9Im5vbmUiLCR9I2U9R3ModGhpcyxuLHZvaWQgMCk7Z2V0IHJlZmZlZEVsZW1lbnQoKXtyZXR1cm4gdGhpcy4jZX1zZXQgcmVmZmVkRWxlbWVudChDKXt0aGlzLiNlPUN9I3Q9KEdzKHRoaXMscyksR3ModGhpcyxkLHZvaWQgMCkpO2dldCB0ZXh0KCl7cmV0dXJuIHRoaXMuI3R9c2V0IHRleHQoQyl7dGhpcy4jdD1DfSNyPShHcyh0aGlzLGYpLEdzKHRoaXMscCwhMSkpO2dldCB3YXZlKCl7cmV0dXJuIHRoaXMuI3J9c2V0IHdhdmUoQyl7dGhpcy4jcj1DfSNhPShHcyh0aGlzLGgpLEdzKHRoaXMseCwhMSkpO2dldCBtYW5pZmVzdGVkKCl7cmV0dXJuIHRoaXMuI2F9c2V0IG1hbmlmZXN0ZWQoQyl7dGhpcy4jYT1DfSNpPShHcyh0aGlzLGcpLEdzKHRoaXMsdywibm9ybWFsIikpO2dldCBzdGF0dXMoKXtyZXR1cm4gdGhpcy4jaX1zZXQgc3RhdHVzKEMpe3RoaXMuI2k9Q313aW5kb3dMYXllcj1Hcyh0aGlzLE0pO2NvbnN0cnVjdG9yKCl7c3VwZXIoKX1zdGF0aWMgc3R5bGVzPVtQZSxtLmRlZmF1bHRTdHlsZXMsbGVgCiAgICAgIC8qIFRPRE86IE1pZ3JhdGUgaGFyZGNvZGVkIHZhbHVlcyB0byAtLWRlZXMtKiBDU1MgdmFyaWFibGVzICovCiAgICAgIDpob3N0IHsKICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzMzMyIsIiNmZmYiKX07CiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgIH0KCiAgICAgIC5tYWluY29udGFpbmVyIHsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTsKICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yczsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4yczsKICAgICAgICBtYXJnaW4tbGVmdDogMHB4OwogICAgICAgIGZpbHRlcjogZHJvcC1zaGFkb3coMHB4IDBweCAycHggcmdiYSgwLCAwLCAwLCAwLjIpKTsKICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzOwogICAgICB9CgogICAgICAuYXJyb3cgewogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmZmYiLCIjMzMzIil9OwogICAgICAgIGhlaWdodDogMTVweDsKICAgICAgICB3aWR0aDogMTVweDsKICAgICAgICBsZWZ0OiAycHg7CiAgICAgICAgdG9wOiAxMnB4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDsKICAgICAgfQoKICAgICAgLnNwZWVjaGJ1YmJsZSB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmZmYiLCIjMzMzIil9OwogICAgICAgIHBhZGRpbmc6IDBweCAxNnB4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgbWluLXdpZHRoOiAyNDBweDsKICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgdG9wOiAwcHg7CiAgICAgICAgbGVmdDogOHB4OwogICAgICB9CgogICAgICAud2F2ZSB7CiAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHdhdmUtYW5pbWF0aW9uOyAvKiBSZWZlcnMgdG8gdGhlIG5hbWUgb2YgeW91ciBAa2V5ZnJhbWVzIGVsZW1lbnQgYmVsb3cgKi8KICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDIuNXM7IC8qIENoYW5nZSB0byBzcGVlZCB1cCBvciBzbG93IGRvd24gKi8KICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTsgLyogTmV2ZXIgc3RvcCB3YXZpbmcgOikgKi8KICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiA3MCUgNzAlOyAvKiBQaXZvdCBhcm91bmQgdGhlIGJvdHRvbS1sZWZ0IHBhbG0gKi8KICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICAgIH0KCiAgICAgIEBrZXlmcmFtZXMgd2F2ZS1hbmltYXRpb24gewogICAgICAgIDAlIHsKICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOwogICAgICAgIH0KICAgICAgICAxMCUgewogICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTRkZWcpOwogICAgICAgIH0gLyogVGhlIGZvbGxvd2luZyBmaXZlIHZhbHVlcyBjYW4gYmUgcGxheWVkIHdpdGggdG8gbWFrZSB0aGUgd2F2aW5nIG1vcmUgb3IgbGVzcyBleHRyZW1lICovCiAgICAgICAgMjAlIHsKICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC04ZGVnKTsKICAgICAgICB9CiAgICAgICAgMzAlIHsKICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE0ZGVnKTsKICAgICAgICB9CiAgICAgICAgNDAlIHsKICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00ZGVnKTsKICAgICAgICB9CiAgICAgICAgNTAlIHsKICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDEwZGVnKTsKICAgICAgICB9CiAgICAgICAgNjAlIHsKICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOwogICAgICAgIH0gLyogUmVzZXQgZm9yIHRoZSBsYXN0IGhhbGYgdG8gcGF1c2UgKi8KICAgICAgICAxMDAlIHsKICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOwogICAgICAgIH0KICAgICAgfQogICAgYF07cmVuZGVyKCl7cmV0dXJuIFNgCiAgICAgICR7dGhpcy5tYW5pZmVzdGVkP1NgCiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1haW5jb250YWluZXIiIEBjbGljaz0ke3RoaXMuaGFuZGxlQ2xpY2t9PgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFycm93Ij48L2Rpdj4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzcGVlY2hidWJibGUiPgogICAgICAgICAgICAgICAgJHt0aGlzLndhdmU/U2A8c3BhbiBjbGFzcz0id2F2ZSI+8J+Rizwvc3Bhbj5gOlNgYH0KICAgICAgICAgICAgICAgICR7SG4ucmVzb2x2ZSh0aGlzLmdldEh0bWwoKSl9CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgYDpTYGB9CiAgICBgfWFzeW5jIGhhbmRsZUNsaWNrKCl7Y29uc29sZS5sb2coInNwZWVjaGJ1YmJsZSBnb3QgY2xpY2tlZC4iKX1hc3luYyBmaXJzdFVwZGF0ZWQoKXtpZih0aGlzLnJlZmZlZEVsZW1lbnR8fCh0aGlzLnJlZmZlZEVsZW1lbnQ9dGhpcy5wcmV2aW91c0VsZW1lbnRTaWJsaW5nKSx0aGlzLm1hbmlmZXN0ZWQpYXdhaXQgdGhpcy51cGRhdGVQb3NpdGlvbigpLHRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCIubWFpbmNvbnRhaW5lciIpLnN0eWxlLm9wYWNpdHk9IjEiO2Vsc2V7bGV0IEM7dGhpcy5yZWZmZWRFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZW50ZXIiLGFzeW5jKCk9PntDPWF3YWl0IEYuY3JlYXRlQW5kU2hvdyh0aGlzLnJlZmZlZEVsZW1lbnQsdGhpcy50ZXh0KX0pLHRoaXMucmVmZmVkRWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIiwoKT0+e0MuZGVzdHJveSgpfSl9fWFzeW5jIHVwZGF0ZVBvc2l0aW9uKCl7bGV0IEM9dGhpcy5yZWZmZWRFbGVtZW50LGs9Qy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTt0aGlzLnN0eWxlLnBvc2l0aW9uPSJmaXhlZCIsdGhpcy5zdHlsZS50b3A9YCR7ay50b3AtMTN9cHhgLHRoaXMuc3R5bGUubGVmdD1gJHtrLmxlZnQrQy5jbGllbnRXaWR0aCs0fXB4YCxrLnJpZ2h0PjI1MCYmKHRoaXMuc3R5bGUud2lkdGg9IjI1MHB4Iil9YXN5bmMgZ2V0SHRtbCgpe2lmKCF0aGlzLnRleHQpcmV0dXJuIiI7bGV0IEM9JHQucGx1Z2lucy5zbWFydHN0cmluZy5ub3JtYWxpemUuc3RhbmRhcmQodGhpcy50ZXh0KSxrPWF3YWl0ICR0LnBsdWdpbnMuc21hcnRtYXJrZG93bi5TbWFydE1hcmtkb3duLmVhc3lNYXJrZG93blRvSHRtbChDKTtyZXR1cm4gaHNlKGspfWFzeW5jIHNob3coKXt9YXN5bmMgZGVzdHJveSgpe3RoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCIubWFpbmNvbnRhaW5lciIpLnN0eWxlLm9wYWNpdHk9IjAiLHRoaXMud2luZG93TGF5ZXIuZGVzdHJveSgpfXN0YXRpY3tHcyhhLHIpfX07cmV0dXJuIEY9YX0pKCl9KTt2YXIgTk9yPWwoKCk9PntJT3IoKX0pO3ZhciBGT3I9bCgoKT0+e2tjKCl9KTt2YXIgT09yPWwoKCk9PntET3IoKTtBT3IoKTtOT3IoKTtGT3IoKX0pO3ZhciBST3I9bCgoKT0+e30pO3ZhciBCT3I9bCgoKT0+e1JPcigpfSk7dmFyIEhPcixsY2UsY2NlLGMwdCxxT3IsZGNlLHVjZSxmY2UscGNlPWwoKCk9PntIT3I9Imh0dHBzOi8vc3RhY2tibGl0ei5jb20iLGxjZT0iY29kZSIsY2NlPSJlcnJvciIsYzB0PSJlcnJvcl9kZXNjcmlwdGlvbiIscU9yPSJfX3djX2FwaV9iY19fIixkY2U9Il9fd2NfYXBpX3Rva2Vuc19fIix1Y2U9Il9fd2NfYXBpX3ZlcmlmaWVyX18iLGZjZT0iX193Y19hcGlfcG9wdXBfXyJ9KTt2YXIgcTgsZDB0PWwoKCk9PntxOD1jbGFzc3tfYnVzPW5ldyBFdmVudFRhcmdldDtsaXN0ZW4odCl7ZnVuY3Rpb24gcihhKXt0KGEuZGF0YSl9cmV0dXJuIHRoaXMuX2J1cy5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIixyKSwoKT0+dGhpcy5fYnVzLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLHIpfWZpcmVFdmVudCh0KXt0aGlzLl9idXMuZGlzcGF0Y2hFdmVudChuZXcgTWVzc2FnZUV2ZW50KCJtZXNzYWdlIix7ZGF0YTp0fSkpfX19KTtmdW5jdGlvbiBoY2UoKXtsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShkY2UpfWZ1bmN0aW9uIEdPcihlKXtyZXR1cm4gVk9yLmxpc3RlbihlKX1mdW5jdGlvbiBNdmEoKXtsZXQgZT1sb2NhbFN0b3JhZ2UuZ2V0SXRlbShkY2UpO2lmKCFlKXJldHVybiBudWxsO3RyeXtyZXR1cm4gSlNPTi5wYXJzZShlKX1jYXRjaHtyZXR1cm4gbnVsbH19ZnVuY3Rpb24ga3ZhKGUpe2xvY2FsU3RvcmFnZS5zZXRJdGVtKGRjZSxKU09OLnN0cmluZ2lmeShlKSl9ZnVuY3Rpb24gVU9yKHtjcmVhdGVkX2F0OmUsZXhwaXJlc19pbjp0fSl7cmV0dXJuKGUrdCkqMWUzfWZ1bmN0aW9uIFdPcihlKXtpZih0eXBlb2YgZSE9Im9iamVjdCJ8fCFlKXRocm93IG5ldyBFcnJvcigiSW52YWxpZCBUb2tlbiBSZXNwb25zZSIpO2lmKHR5cGVvZiBlLmFjY2Vzc190b2tlbiE9InN0cmluZyJ8fHR5cGVvZiBlLnJlZnJlc2hfdG9rZW4hPSJzdHJpbmcifHx0eXBlb2YgZS5jcmVhdGVkX2F0IT0ibnVtYmVyInx8dHlwZW9mIGUuZXhwaXJlc19pbiE9Im51bWJlciIpdGhyb3cgbmV3IEVycm9yKCJJbnZhbGlkIFRva2VuIFJlc3BvbnNlIil9ZnVuY3Rpb24gU3ZhKGUpe3JldHVybiBuZXcgUHJvbWlzZSh0PT5zZXRUaW1lb3V0KHQsZSkpfWZ1bmN0aW9uIHp2YShlKXtWT3IuZmlyZUV2ZW50KGUpfXZhciBqT3IsVk9yLG9nLHUwdD1sKCgpPT57cGNlKCk7ZDB0KCk7ak9yPW5ldyBFcnJvcjtqT3Iuc3RhY2s9IiI7Vk9yPW5ldyBxOCxvZz1jbGFzcyBle29yaWdpbjtyZWZyZXNoO2FjY2VzcztleHBpcmVzO19yZXZva2VkPW5ldyBBYm9ydENvbnRyb2xsZXI7Y29uc3RydWN0b3IodCxyLGEsaSl7dGhpcy5vcmlnaW49dCx0aGlzLnJlZnJlc2g9cix0aGlzLmFjY2Vzcz1hLHRoaXMuZXhwaXJlcz1pfWFzeW5jIGFjdGl2YXRlKHQpe2lmKHRoaXMuX3Jldm9rZWQuc2lnbmFsLmFib3J0ZWQpdGhyb3cgbmV3IEVycm9yKCJUb2tlbiByZXZva2VkIik7cmV0dXJuIHRoaXMuZXhwaXJlczxEYXRlLm5vdygpJiYhYXdhaXQgdGhpcy5fZmV0Y2hOZXdBY2Nlc3NUb2tlbigpPyExOih0aGlzLl9zeW5jKCksdGhpcy5fc3RhcnRSZWZyZXNoVG9rZW5zTG9vcCh0KSwhMCl9YXN5bmMgcmV2b2tlKHQscil7dGhpcy5fcmV2b2tlZC5hYm9ydCgpO3RyeXtpZighKGF3YWl0IGZldGNoKGAke3RoaXMub3JpZ2lufS9vYXV0aC9yZXZva2VgLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQifSxib2R5Om5ldyBVUkxTZWFyY2hQYXJhbXMoe3Rva2VuOnRoaXMucmVmcmVzaCx0b2tlbl90eXBlX2hpbnQ6InJlZnJlc2hfdG9rZW4iLGNsaWVudF9pZDp0fSksbW9kZToiY29ycyJ9KSkub2spdGhyb3cgbmV3IEVycm9yKCJGYWlsZWQgdG8gbG9nb3V0Iil9Y2F0Y2goYSl7aWYoIXIpdGhyb3cgYX1oY2UoKX1zdGF0aWMgZnJvbVN0b3JhZ2UoKXtsZXQgdD1NdmEoKTtyZXR1cm4gdD9uZXcgZSh0Lm9yaWdpbix0LnJlZnJlc2gsdC5hY2Nlc3MsdC5leHBpcmVzKTpudWxsfXN0YXRpYyBhc3luYyBmcm9tQXV0aENvZGUoe2VkaXRvck9yaWdpbjp0LGNsaWVudElkOnIsY29kZVZlcmlmaWVyOmEsYXV0aENvZGU6aSxyZWRpcmVjdFVyaTpvfSl7bGV0IG49YXdhaXQgZmV0Y2goYCR7dH0vb2F1dGgvdG9rZW5gLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQifSxib2R5Om5ldyBVUkxTZWFyY2hQYXJhbXMoe2NsaWVudF9pZDpyLGNvZGU6aSxjb2RlX3ZlcmlmaWVyOmEsZ3JhbnRfdHlwZToiYXV0aG9yaXphdGlvbl9jb2RlIixyZWRpcmVjdF91cmk6b30pLG1vZGU6ImNvcnMifSk7aWYoIW4ub2spdGhyb3cgbmV3IEVycm9yKGBGYWlsZWQgdG8gZmV0Y2ggdG9rZW46ICR7bi5zdGF0dXN9YCk7bGV0IHM9YXdhaXQgbi5qc29uKCk7V09yKHMpO2xldHthY2Nlc3NfdG9rZW46YyxyZWZyZXNoX3Rva2VuOmR9PXMsZj1VT3Iocyk7cmV0dXJuIG5ldyBlKHQsZCxjLGYpfWFzeW5jIF9mZXRjaE5ld0FjY2Vzc1Rva2VuKCl7dHJ5e2xldCB0PWF3YWl0IGZldGNoKGAke3RoaXMub3JpZ2lufS9vYXV0aC90b2tlbmAse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCJ9LGJvZHk6bmV3IFVSTFNlYXJjaFBhcmFtcyh7Z3JhbnRfdHlwZToicmVmcmVzaF90b2tlbiIscmVmcmVzaF90b2tlbjp0aGlzLnJlZnJlc2h9KSxtb2RlOiJjb3JzIixzaWduYWw6dGhpcy5fcmV2b2tlZC5zaWduYWx9KTtpZighdC5vayl0aHJvdyBqT3I7bGV0IHI9YXdhaXQgdC5qc29uKCk7V09yKHIpO2xldHthY2Nlc3NfdG9rZW46YSxyZWZyZXNoX3Rva2VuOml9PXIsbz1VT3Iocik7cmV0dXJuIHRoaXMuYWNjZXNzPWEsdGhpcy5leHBpcmVzPW8sdGhpcy5yZWZyZXNoPWksITB9Y2F0Y2h7cmV0dXJuIGhjZSgpLCExfX1fc3luYygpe2t2YSh0aGlzKSx6dmEodGhpcy5hY2Nlc3MpfWFzeW5jIF9zdGFydFJlZnJlc2hUb2tlbnNMb29wKHQpe2Zvcig7Oyl7bGV0IHI9dGhpcy5leHBpcmVzLURhdGUubm93KCktMWUzO2lmKGF3YWl0IFN2YShNYXRoLm1heChyLDFlMykpLHRoaXMuX3Jldm9rZWQuc2lnbmFsLmFib3J0ZWQpcmV0dXJuO2lmKCF0aGlzLl9mZXRjaE5ld0FjY2Vzc1Rva2VuKCkpe3QoKTtyZXR1cm59dGhpcy5fc3luYygpfX19fSk7dmFyIGYwdCxtY2UsR2MscDB0PWwoKCk9PntwY2UoKTtmMHQ9e30sbWNlPW51bGwsR2M9e2dldCBlZGl0b3JPcmlnaW4oKXtyZXR1cm4gbWNlPT1udWxsJiYobWNlPW5ldyBVUkwoZ2xvYmFsVGhpcy5XRUJDT05UQUlORVJfQVBJX0lGUkFNRV9VUkw/P0hPcikub3JpZ2luKSxtY2V9LHNldCBlZGl0b3JPcmlnaW4oZSl7bWNlPW5ldyBVUkwoZSkub3JpZ2lufSxzZXRRdWVyeVBhcmFtKGUsdCl7ZjB0W2VdPXR9LGdldCB1cmwoKXtsZXQgZT1uZXcgVVJMKHRoaXMuZWRpdG9yT3JpZ2luKTtlLnBhdGhuYW1lPSIvaGVhZGxlc3MiO2ZvcihsZXQgdCBpbiBmMHQpZS5zZWFyY2hQYXJhbXMuc2V0KHQsZjB0W3RdKTtyZXR1cm4gZS5zZWFyY2hQYXJhbXMuc2V0KCJ2ZXJzaW9uIiwiMS42LjEiKSxlfX19KTthc3luYyBmdW5jdGlvbiBZT3IoZSl7bGV0IHQ9bmV3IFRleHRFbmNvZGVyKCkuZW5jb2RlKGUpLHI9bmV3IFVpbnQ4QXJyYXkoYXdhaXQgY3J5cHRvLnN1YnRsZS5kaWdlc3QoIlNIQS0yNTYiLHQpKTtyZXR1cm4gYnRvYShyLnJlZHVjZSgoYSxpKT0+YStTdHJpbmcuZnJvbUNvZGVQb2ludChpKSwiIikpLnJlcGxhY2UoL1wrL2csIi0iKS5yZXBsYWNlKC9cLy9nLCJfIikucmVwbGFjZSgvPSskLywiIil9ZnVuY3Rpb24gWk9yKCl7bGV0IGU9bmV3IFVpbnQ4QXJyYXkoOTYpO2NyeXB0by5nZXRSYW5kb21WYWx1ZXMoZSk7bGV0IHQ9IiI7Zm9yKGxldCByPTA7cjwzMjsrK3IpdCs9Q3ZhKGVbMypyKzBdLGVbMypyKzFdLGVbMypyKzJdKTtyZXR1cm4gdH1mdW5jdGlvbiBDdmEoZSx0LHIpe2xldCBhPWU+PjIsaT0oZSYzKTw8NHx0Pj40LG89dCYxNXwociYxOTIpPj4yLG49ciY2MztyZXR1cm5bYSxpLG8sbl0ubWFwKF92YSkuam9pbigiIil9ZnVuY3Rpb24gX3ZhKGUpe2xldCB0O3JldHVybiBlPDI2P3Q9ZSs2NTplPDUyP3Q9ZS0yNis5NzplPDYyP3Q9ZS01Mis0ODp0PWU9PT02Mj8zMDo0NSxTdHJpbmcuZnJvbUNoYXJDb2RlKHQpfXZhciBYT3I9bCgoKT0+e30pO2Z1bmN0aW9uIFFPcigpe2xldCBlLHQ7ZnVuY3Rpb24gcigpe3Q9bmV3IFByb21pc2UoYT0+ZT1hKX1yZXR1cm4gcigpLHtnZXQgcHJvbWlzZSgpe3JldHVybiB0fSxyZXNvbHZlKGEpe3JldHVybiBlKGEpfSxyZXNldDpyfX12YXIgS09yPWwoKCk9Pnt9KTtmdW5jdGlvbiBXWihlKXtXdC5icm9hZGNhc3RDaGFubmVsJiYoV3QuYnJvYWRjYXN0Q2hhbm5lbC5wb3N0TWVzc2FnZShlKSxsb2NhbFN0b3JhZ2UuZ2V0SXRlbShmY2UpPT09InRydWUiJiZlLnR5cGUhPT0iYXV0aC1sb2dvdXQiJiYobG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oZmNlKSxzZXRUaW1lb3V0KCgpPT57d2luZG93LmNsb3NlKCl9KSkpfWZ1bmN0aW9uIGgwdCgpe2o4LmZpcmVFdmVudCgpLFdaKHt0eXBlOiJhdXRoLWxvZ291dCJ9KX1mdW5jdGlvbiBlUnIoKXtyZXR1cm4gd2luZG93LmxvY2F0aW9uLmhyZWZ9YXN5bmMgZnVuY3Rpb24gdFJyKCl7bGV0IGU9Wk9yKCk7bG9jYWxTdG9yYWdlLnNldEl0ZW0odWNlLGUpO2xldCB0PWF3YWl0IFlPcihlKSxyPW5ldyBVUkwoIi9vYXV0aC9hdXRob3JpemUiLFd0LmVkaXRvck9yaWdpbikse3NlYXJjaFBhcmFtczphfT1yO3JldHVybiBhLmFwcGVuZCgicmVzcG9uc2VfdHlwZSIsImNvZGUiKSxhLmFwcGVuZCgiY2xpZW50X2lkIixXdC5jbGllbnRJZCksYS5hcHBlbmQoInJlZGlyZWN0X3VyaSIsZVJyKCkpLGEuYXBwZW5kKCJzY29wZSIsV3Qub2F1dGhTY29wZSksYS5hcHBlbmQoImNvZGVfY2hhbGxlbmdlIix0KSxhLmFwcGVuZCgiY29kZV9jaGFsbGVuZ2VfbWV0aG9kIiwiUzI1NiIpLHIudG9TdHJpbmcoKX1mdW5jdGlvbiBtMHQoZSl7aWYoIWUpdGhyb3cgbmV3IEVycm9yKCJPb3BzISBUb2tlbnMgaXMgbm90IGRlZmluZWQgd2hlbiBpdCBhbHdheXMgc2hvdWxkIGJlLiIpfXZhciBXdCxKT3IsajgsclJyLGcwdD1sKCgpPT57dTB0KCk7cGNlKCk7cDB0KCk7WE9yKCk7S09yKCk7ZDB0KCk7V3Q9e2luaXRpYWxpemVkOiExLGJvb3RDYWxsZWQ6ITEsYXV0aENvbXBsZXRlOlFPcigpLGNsaWVudElkOiIiLG9hdXRoU2NvcGU6IiIsYnJvYWRjYXN0Q2hhbm5lbDpudWxsLGdldCBlZGl0b3JPcmlnaW4oKXtyZXR1cm4gR2MuZWRpdG9yT3JpZ2lufSx0b2tlbnM6bnVsbH0sSk9yPW5ldyBxOCxqOD1uZXcgcTg7clJyPXtpbml0KHtlZGl0b3JPcmlnaW46ZSxjbGllbnRJZDp0LHNjb3BlOnJ9KXtpZihXdC5pbml0aWFsaXplZCl0aHJvdyBuZXcgRXJyb3IoIkluaXQgc2hvdWxkIG9ubHkgYmUgY2FsbGVkIG9uY2UiKTtpZighMCYmV3QuYm9vdENhbGxlZCl0aHJvdyBuZXcgRXJyb3IoImBhdXRoLmluaXRgIHNob3VsZCBhbHdheXMgYmUgY2FsbGVkIGJlZm9yZSBgV2ViQ29udGFpbmVyLmJvb3RgIik7V3QuaW5pdGlhbGl6ZWQ9ITAsV3QudG9rZW5zPW9nLmZyb21TdG9yYWdlKCksV3QuY2xpZW50SWQ9dCxXdC5vYXV0aFNjb3BlPXIsV3QuYnJvYWRjYXN0Q2hhbm5lbD1uZXcgQnJvYWRjYXN0Q2hhbm5lbChxT3IpLEdjLnNldFF1ZXJ5UGFyYW0oImNsaWVudF9pZCIsdCksZSYmKEdjLmVkaXRvck9yaWdpbj1uZXcgVVJMKGUpLm9yaWdpbiksajgubGlzdGVuKCgpPT5XdC5hdXRoQ29tcGxldGUucmVzZXQoKSksV3QuYnJvYWRjYXN0Q2hhbm5lbC5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIixpKTthc3luYyBmdW5jdGlvbiBpKGMpe2xldCBkPWMuZGF0YTtpZihkLnR5cGU9PT0iYXV0aC1jb21wbGV0ZSIpe1d0LnRva2Vucz1vZy5mcm9tU3RvcmFnZSgpLGF3YWl0IFd0LnRva2Vucy5hY3RpdmF0ZShoMHQpLFd0LmF1dGhDb21wbGV0ZS5yZXNvbHZlKCk7cmV0dXJufWlmKGQudHlwZT09PSJhdXRoLWZhaWxlZCIpe0pPci5maXJlRXZlbnQoZCk7cmV0dXJufWlmKGQudHlwZT09PSJhdXRoLWxvZ291dCIpe2o4LmZpcmVFdmVudCgpO3JldHVybn19aWYoV3QudG9rZW5zKXtsZXQgYz1XdC50b2tlbnM7aWYoYy5vcmlnaW49PT1XdC5lZGl0b3JPcmlnaW4pcmV0dXJuKGFzeW5jKCk9PntpZighYXdhaXQgYy5hY3RpdmF0ZShoMHQpKXtpZihXdC50b2tlbnMhPT1jKXJldHVybjtqOC5maXJlRXZlbnQoKTtyZXR1cm59V3QuYXV0aENvbXBsZXRlLnJlc29sdmUoKX0pKCkse3N0YXR1czoiYXV0aG9yaXplZCJ9O2hjZSgpLFd0LnRva2Vucz1udWxsfWxldCBvPW5ldyBVUkwod2luZG93LmxvY2F0aW9uLmhyZWYpLHtzZWFyY2hQYXJhbXM6bn09byxzPSgpPT53aW5kb3cuaGlzdG9yeS5yZXBsYWNlU3RhdGUoe30sZG9jdW1lbnQudGl0bGUsbyk7aWYobi5oYXMoY2NlKSl7bGV0IGM9bi5nZXQoY2NlKSxkPW4uZ2V0KGMwdCk7cmV0dXJuIG4uZGVsZXRlKGNjZSksbi5kZWxldGUoYzB0KSxzKCksV1ooe3R5cGU6ImF1dGgtZmFpbGVkIixlcnJvcjpjLGRlc2NyaXB0aW9uOmR9KSx7c3RhdHVzOiJhdXRoLWZhaWxlZCIsZXJyb3I6YyxkZXNjcmlwdGlvbjpkfX1pZihuLmhhcyhsY2UpKXtsZXQgYz1uLmdldChsY2UpLGQ9V3QuZWRpdG9yT3JpZ2luO24uZGVsZXRlKGxjZSkscygpO2xldCBmPWxvY2FsU3RvcmFnZS5nZXRJdGVtKHVjZSk7cmV0dXJuIGY/KGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKHVjZSksb2cuZnJvbUF1dGhDb2RlKHtlZGl0b3JPcmlnaW46ZCxjbGllbnRJZDpXdC5jbGllbnRJZCxhdXRoQ29kZTpjLGNvZGVWZXJpZmllcjpmLHJlZGlyZWN0VXJpOmVScigpfSkudGhlbihhc3luYyB1PT57aWYoV3QudG9rZW5zPXUsbTB0KFd0LnRva2VucyksIWF3YWl0IFd0LnRva2Vucy5hY3RpdmF0ZShoMHQpKXRocm93IG5ldyBFcnJvcjtXdC5hdXRoQ29tcGxldGUucmVzb2x2ZSgpLFdaKHt0eXBlOiJhdXRoLWNvbXBsZXRlIn0pfSkuY2F0Y2godT0+e2NvbnNvbGUuZXJyb3IodSksajguZmlyZUV2ZW50KCksV1ooe3R5cGU6ImF1dGgtbG9nb3V0In0pfSkse3N0YXR1czoiYXV0aG9yaXplZCJ9KTp7c3RhdHVzOiJuZWVkLWF1dGgifX1yZXR1cm57c3RhdHVzOiJuZWVkLWF1dGgifX0sYXN5bmMgc3RhcnRBdXRoRmxvdyh7cG9wdXA6ZX09e30pe2lmKCFXdC5pbml0aWFsaXplZCl0aHJvdyBuZXcgRXJyb3IoImF1dGguaW5pdCBtdXN0IGJlIGNhbGxlZCBmaXJzdCIpO2lmKGUpe2xvY2FsU3RvcmFnZS5zZXRJdGVtKGZjZSwidHJ1ZSIpO2xldCB0PTUwMCxyPTYyMCxhPXdpbmRvdy5zY3JlZW5MZWZ0Kyh3aW5kb3cub3V0ZXJXaWR0aC1yKS8yLGk9d2luZG93LnNjcmVlblRvcCsod2luZG93Lm91dGVySGVpZ2h0LXQpLzI7d2luZG93Lm9wZW4oYXdhaXQgdFJyKCksIl9ibGFuayIsYHBvcHVwLHdpZHRoPSR7cn0saGVpZ2h0PSR7dH0sbGVmdD0ke2F9LHRvcD0ke2l9YCl9ZWxzZSB3aW5kb3cubG9jYXRpb24uaHJlZj1hd2FpdCB0UnIoKX0sYXN5bmMgbG9nb3V0KHtpZ25vcmVSZXZva2VFcnJvcjplfT17fSl7YXdhaXQgV3QudG9rZW5zPy5yZXZva2UoV3QuY2xpZW50SWQsZT8/ITEpLGo4LmZpcmVFdmVudCgpLFdaKHt0eXBlOiJhdXRoLWxvZ291dCJ9KX0sbG9nZ2VkSW4oKXtyZXR1cm4gV3QuYXV0aENvbXBsZXRlLnByb21pc2V9LG9uKGUsdCl7c3dpdGNoKGUpe2Nhc2UiYXV0aC1mYWlsZWQiOnJldHVybiBKT3IubGlzdGVuKHQpO2Nhc2UibG9nZ2VkLW91dCI6cmV0dXJuIGo4Lmxpc3Rlbih0KTtkZWZhdWx0OnRocm93IG5ldyBFcnJvcihgVW5zdXBwb3J0ZWQgZXZlbnQgdHlwZSAnJHtlfScuYCl9fX19KTt2YXIgWWMsZ2NlPWwoKCk9PnsoZnVuY3Rpb24oZSl7ZS5VbmNhdWdodEV4Y2VwdGlvbj0iUFJFVklFV19VTkNBVUdIVF9FWENFUFRJT04iLGUuVW5oYW5kbGVkUmVqZWN0aW9uPSJQUkVWSUVXX1VOSEFORExFRF9SRUpFQ1RJT04iLGUuQ29uc29sZUVycm9yPSJQUkVWSUVXX0NPTlNPTEVfRVJST1IifSkoWWN8fChZYz17fSkpfSk7ZnVuY3Rpb24geTB0KGUsdD1zZWxmKXt0LmFkZEV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLGZ1bmN0aW9uIHIoYSl7aWYoIWF8fCFhLmRhdGEpcmV0dXJuO2xldHtpZDppLHR5cGU6byxwYXRoOm59PU9iamVjdC5hc3NpZ24oe3BhdGg6W119LGEuZGF0YSkscz0oYS5kYXRhLmFyZ3VtZW50TGlzdHx8W10pLm1hcChWOCksYzt0cnl7bGV0IGQ9bi5zbGljZSgwLC0xKS5yZWR1Y2UoKHUscCk9PnVbcF0sZSksZj1uLnJlZHVjZSgodSxwKT0+dVtwXSxlKTtzd2l0Y2gobyl7Y2FzZSAwOmM9ZjticmVhaztjYXNlIDE6ZFtuLnNsaWNlKC0xKVswXV09VjgoYS5kYXRhLnZhbHVlKSxjPSEwO2JyZWFrO2Nhc2UgMjpjPWYuYXBwbHkoZCxzKTticmVhaztjYXNlIDM6e2xldCB1PW5ldyBmKC4uLnMpO2M9dVJyKHUpfWJyZWFrO2Nhc2UgNDp7bGV0e3BvcnQxOnUscG9ydDI6cH09bmV3IE1lc3NhZ2VDaGFubmVsO3kwdChlLHApLGM9ZFJyKHUsW3VdKX1icmVhaztjYXNlIDU6Yz12b2lkIDA7YnJlYWt9fWNhdGNoKGQpe2M9e3ZhbHVlOmQsW2IwdF06MH19UHJvbWlzZS5yZXNvbHZlKGMpLmNhdGNoKGQ9Pih7dmFsdWU6ZCxbYjB0XTowfSkpLnRoZW4oZD0+e2xldFtmLHVdPU0wdChkKTt0LnBvc3RNZXNzYWdlKE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSxmKSx7aWQ6aX0pLHUpLG89PT01JiYodC5yZW1vdmVFdmVudExpc3RlbmVyKCJtZXNzYWdlIixyKSxuUnIodCkpfSl9KSx0LnN0YXJ0JiZ0LnN0YXJ0KCl9ZnVuY3Rpb24gRXZhKGUpe3JldHVybiBlLmNvbnN0cnVjdG9yLm5hbWU9PT0iTWVzc2FnZVBvcnQifWZ1bmN0aW9uIG5ScihlKXtFdmEoZSkmJmUuY2xvc2UoKX1mdW5jdGlvbiBzUnIoZSx0KXtyZXR1cm4gdzB0KGUsW10sdCl9ZnVuY3Rpb24geGNlKGUpe2lmKGUpdGhyb3cgbmV3IEVycm9yKCJQcm94eSBoYXMgYmVlbiByZWxlYXNlZCBhbmQgaXMgbm90IHVzZWFibGUiKX1mdW5jdGlvbiB3MHQoZSx0PVtdLHI9ZnVuY3Rpb24oKXt9KXtsZXQgYT0hMSxpPW5ldyBQcm94eShyLHtnZXQobyxuKXtpZih4Y2UoYSksbj09PWlScilyZXR1cm4oKT0+bmcoZSx7dHlwZTo1LHBhdGg6dC5tYXAocz0+cy50b1N0cmluZygpKX0pLnRoZW4oKCk9PntuUnIoZSksYT0hMH0pO2lmKG49PT0idGhlbiIpe2lmKHQubGVuZ3RoPT09MClyZXR1cm57dGhlbjooKT0+aX07bGV0IHM9bmcoZSx7dHlwZTowLHBhdGg6dC5tYXAoYz0+Yy50b1N0cmluZygpKX0pLnRoZW4oVjgpO3JldHVybiBzLnRoZW4uYmluZChzKX1yZXR1cm4gdzB0KGUsWy4uLnQsbl0pfSxzZXQobyxuLHMpe3hjZShhKTtsZXRbYyxkXT1NMHQocyk7cmV0dXJuIG5nKGUse3R5cGU6MSxwYXRoOlsuLi50LG5dLm1hcChmPT5mLnRvU3RyaW5nKCkpLHZhbHVlOmN9LGQpLnRoZW4oVjgpfSxhcHBseShvLG4scyl7eGNlKGEpO2xldCBjPXRbdC5sZW5ndGgtMV07aWYoYz09PWFScilyZXR1cm4gbmcoZSx7dHlwZTo0fSkudGhlbihWOCk7aWYoYz09PSJiaW5kIilyZXR1cm4gdzB0KGUsdC5zbGljZSgwLC0xKSk7bGV0W2QsZl09bFJyKHMpO3JldHVybiBuZyhlLHt0eXBlOjIscGF0aDp0Lm1hcCh1PT51LnRvU3RyaW5nKCkpLGFyZ3VtZW50TGlzdDpkfSxmKS50aGVuKFY4KX0sY29uc3RydWN0KG8sbil7eGNlKGEpO2xldFtzLGNdPWxScihuKTtyZXR1cm4gbmcoZSx7dHlwZTozLHBhdGg6dC5tYXAoZD0+ZC50b1N0cmluZygpKSxhcmd1bWVudExpc3Q6c30sYykudGhlbihWOCl9fSk7cmV0dXJuIGl9ZnVuY3Rpb24gJHZhKGUpe3JldHVybiBBcnJheS5wcm90b3R5cGUuY29uY2F0LmFwcGx5KFtdLGUpfWZ1bmN0aW9uIGxScihlKXtsZXQgdD1lLm1hcChNMHQpO3JldHVyblt0Lm1hcChyPT5yWzBdKSwkdmEodC5tYXAocj0+clsxXSkpXX1mdW5jdGlvbiBkUnIoZSx0KXtyZXR1cm4gY1JyLnNldChlLHQpLGV9ZnVuY3Rpb24gdVJyKGUpe3JldHVybiBPYmplY3QuYXNzaWduKGUse1t4MHRdOiEwfSl9ZnVuY3Rpb24gUHZhKGUsdD1zZWxmLHI9IioiKXtyZXR1cm57cG9zdE1lc3NhZ2U6KGEsaSk9PmUucG9zdE1lc3NhZ2UoYSxyLGkpLGFkZEV2ZW50TGlzdGVuZXI6dC5hZGRFdmVudExpc3RlbmVyLmJpbmQodCkscmVtb3ZlRXZlbnRMaXN0ZW5lcjp0LnJlbW92ZUV2ZW50TGlzdGVuZXIuYmluZCh0KX19ZnVuY3Rpb24gTTB0KGUpe2ZvcihsZXRbdCxyXW9mIHYwdClpZihyLmNhbkhhbmRsZShlKSl7bGV0W2EsaV09ci5zZXJpYWxpemUoZSk7cmV0dXJuW3t0eXBlOjMsbmFtZTp0LHZhbHVlOmF9LGldfXJldHVyblt7dHlwZTowLHZhbHVlOmV9LGNSci5nZXQoZSl8fFtdXX1mdW5jdGlvbiBWOChlKXtzd2l0Y2goZS50eXBlKXtjYXNlIDM6cmV0dXJuIHYwdC5nZXQoZS5uYW1lKS5kZXNlcmlhbGl6ZShlLnZhbHVlKTtjYXNlIDA6cmV0dXJuIGUudmFsdWV9fWZ1bmN0aW9uIG5nKGUsdCxyKXtyZXR1cm4gbmV3IFByb21pc2UoYT0+e2xldCBpPUl2YSgpO2UuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsZnVuY3Rpb24gbyhuKXshbi5kYXRhfHwhbi5kYXRhLmlkfHxuLmRhdGEuaWQhPT1pfHwoZS5yZW1vdmVFdmVudExpc3RlbmVyKCJtZXNzYWdlIixvKSxhKG4uZGF0YSkpfSksZS5zdGFydCYmZS5zdGFydCgpLGUucG9zdE1lc3NhZ2UoT2JqZWN0LmFzc2lnbih7aWQ6aX0sdCkscil9KX1mdW5jdGlvbiBJdmEoKXtyZXR1cm4gbmV3IEFycmF5KDQpLmZpbGwoMCkubWFwKCgpPT5NYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIpLnRvU3RyaW5nKDE2KSkuam9pbigiLSIpfXZhciBUdmEsTHZhLFhuLHgwdCxhUnIsaVJyLGIwdCxvUnIsRHZhLEF2YSx2MHQsY1JyLGZScj1sKCgpPT57VHZhPU9iamVjdC5kZWZpbmVQcm9wZXJ0eSxMdmE9KGUsdCk9Pntmb3IodmFyIHIgaW4gdClUdmEoZSxyLHtnZXQ6dFtyXSxlbnVtZXJhYmxlOiEwfSl9LFhuPXt9O0x2YShYbix7Y3JlYXRlRW5kcG9pbnQ6KCk9PmFScixleHBvc2U6KCk9PnkwdCxwcm94eTooKT0+dVJyLHByb3h5TWFya2VyOigpPT54MHQscmVsZWFzZVByb3h5OigpPT5pUnIsdHJhbnNmZXI6KCk9PmRScix0cmFuc2ZlckhhbmRsZXJzOigpPT52MHQsd2luZG93RW5kcG9pbnQ6KCk9PlB2YSx3cmFwOigpPT5zUnJ9KTt4MHQ9U3ltYm9sKCJDb21saW5rLnByb3h5IiksYVJyPVN5bWJvbCgiQ29tbGluay5lbmRwb2ludCIpLGlScj1TeW1ib2woIkNvbWxpbmsucmVsZWFzZVByb3h5IiksYjB0PVN5bWJvbCgiQ29tbGluay50aHJvd24iKSxvUnI9ZT0+dHlwZW9mIGU9PSJvYmplY3QiJiZlIT09bnVsbHx8dHlwZW9mIGU9PSJmdW5jdGlvbiIsRHZhPXtjYW5IYW5kbGU6ZT0+b1JyKGUpJiZlW3gwdF0sc2VyaWFsaXplKGUpe2xldHtwb3J0MTp0LHBvcnQyOnJ9PW5ldyBNZXNzYWdlQ2hhbm5lbDtyZXR1cm4geTB0KGUsdCksW3IsW3JdXX0sZGVzZXJpYWxpemUoZSl7cmV0dXJuIGUuc3RhcnQoKSxzUnIoZSl9fSxBdmE9e2NhbkhhbmRsZTplPT5vUnIoZSkmJmIwdCBpbiBlLHNlcmlhbGl6ZSh7dmFsdWU6ZX0pe2xldCB0O3JldHVybiBlIGluc3RhbmNlb2YgRXJyb3I/dD17aXNFcnJvcjohMCx2YWx1ZTp7bWVzc2FnZTplLm1lc3NhZ2UsbmFtZTplLm5hbWUsc3RhY2s6ZS5zdGFja319OnQ9e2lzRXJyb3I6ITEsdmFsdWU6ZX0sW3QsW11dfSxkZXNlcmlhbGl6ZShlKXt0aHJvdyBlLmlzRXJyb3I/T2JqZWN0LmFzc2lnbihuZXcgRXJyb3IoZS52YWx1ZS5tZXNzYWdlKSxlLnZhbHVlKTplLnZhbHVlfX0sdjB0PW5ldyBNYXAoW1sicHJveHkiLER2YV0sWyJ0aHJvdyIsQXZhXV0pO2NScj1uZXcgV2Vha01hcH0pO3ZhciBwUnI9bCgoKT0+e30pO2Z1bmN0aW9uIGswdChlKXtyZXR1cm4hKGU9PW51bGx8fHR5cGVvZiBlIT0ib2JqZWN0Inx8ISgidHlwZSJpbiBlKXx8IU52YS5pbmNsdWRlcyhlLnR5cGUpKX12YXIgTnZhLGhScj1sKCgpPT57Z2NlKCk7TnZhPVtZYy5Db25zb2xlRXJyb3IsWWMuVW5jYXVnaHRFeGNlcHRpb24sWWMuVW5oYW5kbGVkUmVqZWN0aW9uXX0pO3ZhciBTMHQ9bCgoKT0+e3BScigpO2djZSgpO2hScigpfSk7ZnVuY3Rpb24gVTgoZSl7bGV0IHQ9T2JqZWN0LmNyZWF0ZShudWxsKTtyZXR1cm4gZT9PYmplY3QuYXNzaWduKHQsZSk6dH12YXIgbVJyPWwoKCk9Pnt9KTtmdW5jdGlvbiB6MHQoZSl7bGV0IHQ9e2Q6e319O2ZvcihsZXQgciBvZiBPYmplY3Qua2V5cyhlKSl7bGV0IGE9ZVtyXTtpZigiZmlsZSJpbiBhKXtpZigic3ltbGluayJpbiBhLmZpbGUpe3QuZFtyXT17Zjp7bDphLmZpbGUuc3ltbGlua319O2NvbnRpbnVlfWxldCBvPWEuZmlsZS5jb250ZW50cyxuPXR5cGVvZiBvPT0ic3RyaW5nIj9vOkZ2YS5kZWNvZGUobykscz10eXBlb2Ygbz09InN0cmluZyI/e306e2I6ITB9O3QuZFtyXT17Zjp7YzpuLC4uLnN9fTtjb250aW51ZX1sZXQgaT16MHQoYS5kaXJlY3RvcnkpO3QuZFtyXT1pfXJldHVybiB0fWZ1bmN0aW9uIEMwdChlKXtsZXQgdD1VOCgpO2lmKCJmImluIGUpdGhyb3cgbmV3IEVycm9yKCJJdCBpcyBub3QgcG9zc2libGUgdG8gZXhwb3J0IGEgc2luZ2xlIGZpbGUgaW4gdGhlIEpTT04gZm9ybWF0LiIpO2lmKCJkImluIGUpZm9yKGxldCByIG9mIE9iamVjdC5rZXlzKGUuZCkpe2xldCBhPWUuZFtyXTsiZCJpbiBhP3Rbcl09VTgoe2RpcmVjdG9yeTpDMHQoYSl9KToiZiJpbiBhJiYoImMiaW4gYS5mP3Rbcl09VTgoe2ZpbGU6VTgoe2NvbnRlbnRzOmEuZi5iP092YShhLmYuYyk6YS5mLmN9KX0pOiJsImluIGEuZiYmKHRbcl09VTgoe2ZpbGU6VTgoe3N5bWxpbms6YS5mLmx9KX0pKSl9cmV0dXJuIHR9ZnVuY3Rpb24gT3ZhKGUpe2xldCB0PW5ldyBVaW50OEFycmF5KGUubGVuZ3RoKTtmb3IobGV0IHI9MDtyPGUubGVuZ3RoO3IrKyl0W3JdPWVbcl0uY2hhckNvZGVBdCgwKTtyZXR1cm4gdH12YXIgRnZhLGdScj1sKCgpPT57bVJyKCk7RnZhPW5ldyBUZXh0RGVjb2RlcigibGF0aW4xIil9KTtmdW5jdGlvbiBrZ24oZSl7aWYoV3QuYm9vdENhbGxlZCl0aHJvdyBuZXcgRXJyb3IoImBjb25maWd1cmVBUElLZXlgIHNob3VsZCBhbHdheXMgYmUgY2FsbGVkIGJlZm9yZSBgV2ViQ29udGFpbmVyLmJvb3RgIik7R2Muc2V0UXVlcnlQYXJhbSgiY2xpZW50X2lkIixlKX1hc3luYyBmdW5jdGlvbiBxdmEoZSl7bGV0e3NlcnZlclByb21pc2U6dH09anZhKGUpLGE9YXdhaXQoYXdhaXQgdCkuYnVpbGQoe2hvc3Q6d2luZG93LmxvY2F0aW9uLmhvc3QsdmVyc2lvbjoiMS42LjEiLHdvcmtkaXJOYW1lOmUud29ya2Rpck5hbWUsZm9yd2FyZFByZXZpZXdFcnJvcnM6ZS5mb3J3YXJkUHJldmlld0Vycm9yc30pLFtpLG8sbl09YXdhaXQgUHJvbWlzZS5hbGwoW2EuZnMoKSxhLnByZXZpZXdTY3JpcHQoKSxhLnJ1bnRpbWVJbmZvKCldKTtyZXR1cm4gbmV3IEdaKGEsaSxvLG4pfWZ1bmN0aW9uIEUwdChlKXtpZihlIT1udWxsKXJldHVybiB0PT57dCBpbnN0YW5jZW9mIFVpbnQ4QXJyYXk/ZSh4UnIuZGVjb2RlKHQpKTp0PT1udWxsJiZlKG51bGwpfX1mdW5jdGlvbiB5Y2UoZSl7aWYoZSE9bnVsbClyZXR1cm4gWG4ucHJveHkoZSl9ZnVuY3Rpb24ganZhKGUpe2lmKHZjZSE9bnVsbClyZXR1cm4gZS5jb2VwIT09XzB0LmNvZXAmJihjb25zb2xlLndhcm4oYEF0dGVtcHRpbmcgdG8gYm9vdCBXZWJDb250YWluZXIgd2l0aCAnY29lcDogJHtlLmNvZXB9J2ApLGNvbnNvbGUud2FybihgRmlyc3QgYm9vdCBoYWQgJ2NvZXA6ICR7XzB0LmNvZXB9JywgbmV3IHNldHRpbmdzIHdpbGwgbm90IHRha2UgZWZmZWN0IWApKSx7c2VydmVyUHJvbWlzZTp2Y2V9O2UuY29lcCYmR2Muc2V0UXVlcnlQYXJhbSgiY29lcCIsZS5jb2VwKSxlLmV4cGVyaW1lbnRhbE5vZGUmJkdjLnNldFF1ZXJ5UGFyYW0oImV4cGVyaW1lbnRhbF9ub2RlIiwiMSIpO2xldCB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlmcmFtZSIpO3Quc3R5bGUuZGlzcGxheT0ibm9uZSIsdC5zZXRBdHRyaWJ1dGUoImFsbG93IiwiY3Jvc3Mtb3JpZ2luLWlzb2xhdGVkIik7bGV0IHI9R2MudXJsO3Quc3JjPXIudG9TdHJpbmcoKTtsZXR7b3JpZ2luOmF9PXI7cmV0dXJuIF8wdD17Li4uZX0sdmNlPW5ldyBQcm9taXNlKGk9PntsZXQgbz1uPT57aWYobi5vcmlnaW4hPT1hKXJldHVybjtsZXR7ZGF0YTpzfT1uO2lmKHMudHlwZT09PSJpbml0Iil7aShYbi53cmFwKG4ucG9ydHNbMF0pKTtyZXR1cm59aWYocy50eXBlPT09Indhcm5pbmciKXtjb25zb2xlW3MubGV2ZWxdLmNhbGwoY29uc29sZSxzLm1lc3NhZ2UpO3JldHVybn19O3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIixvKX0pLGRvY3VtZW50LmJvZHkuaW5zZXJ0QmVmb3JlKHQsbnVsbCkse3NlcnZlclByb21pc2U6dmNlfX1mdW5jdGlvbiBWdmEoZSl7cmV0dXJuIHR5cGVvZiBlWzBdPT0ic3RyaW5nIn1mdW5jdGlvbiBVdmEoZSl7cmV0dXJuIGVbMF1pbnN0YW5jZW9mIFVpbnQ4QXJyYXl9ZnVuY3Rpb24gV3ZhKCl7bGV0IGU9bnVsbDtyZXR1cm57c3RyZWFtOm5ldyBSZWFkYWJsZVN0cmVhbSh7c3RhcnQoYSl7ZT1hfX0pLHB1c2g6YT0+e2EhPW51bGw/ZT8uZW5xdWV1ZShhKTooZT8uY2xvc2UoKSxlPW51bGwpfX19ZnVuY3Rpb24gR3ZhKGUpe2xldCB0PSExLHI9KCk9Pnt9O3JldHVybntzdWJzY3JpYmUoaSl7cmV0dXJuIGkudGhlbihvPT57cj1vLHQmJnIoKX0pLCgpPT57dD0hMCxyKCl9fSxsaXN0ZW5lcjooKC4uLmkpPT57dHx8ZSguLi5pKX0pfX12YXIgTWduLGJjZSx2Y2UsXzB0LHhScixSdmEsR1osQnZhLEh2YSxUMHQsTDB0LEQwdCxBMHQsYlJyPWwoKCk9PntnMHQoKTtnY2UoKTtmUnIoKTtnMHQoKTt1MHQoKTtwMHQoKTtTMHQoKTtnUnIoKTtTMHQoKTtNZ249clJyLGJjZT1udWxsLHZjZT1udWxsLF8wdD17fSx4UnI9bmV3IFRleHREZWNvZGVyLFJ2YT1uZXcgVGV4dEVuY29kZXIsR1o9Y2xhc3MgZXtfaW5zdGFuY2U7X3J1bnRpbWVJbmZvO2ZzO3N0YXRpYyBfaW5zdGFuY2U9bnVsbDtzdGF0aWMgX3RlYXJkb3duUHJvbWlzZT1udWxsO190b3JuRG93bj0hMTtfdW5zdWJzY3JpYmVGcm9tVG9rZW5DaGFuZ2VkTGlzdGVuZXI9KCk9Pnt9O2NvbnN0cnVjdG9yKHQscixhLGkpe3RoaXMuX2luc3RhbmNlPXQsdGhpcy5fcnVudGltZUluZm89aSx0aGlzLmZzPW5ldyBBMHQociksV3QuaW5pdGlhbGl6ZWQmJih0aGlzLl91bnN1YnNjcmliZUZyb21Ub2tlbkNoYW5nZWRMaXN0ZW5lcj1HT3Iobz0+e3RoaXMuX2luc3RhbmNlLnNldENyZWRlbnRpYWxzKHthY2Nlc3NUb2tlbjpvLGVkaXRvck9yaWdpbjpXdC5lZGl0b3JPcmlnaW59KX0pLChhc3luYygpPT57YXdhaXQgV3QuYXV0aENvbXBsZXRlLnByb21pc2UsIXRoaXMuX3Rvcm5Eb3duJiYobTB0KFd0LnRva2VucyksYXdhaXQgdGhpcy5faW5zdGFuY2Uuc2V0Q3JlZGVudGlhbHMoe2FjY2Vzc1Rva2VuOld0LnRva2Vucy5hY2Nlc3MsZWRpdG9yT3JpZ2luOld0LmVkaXRvck9yaWdpbn0pKX0pKCkuY2F0Y2gobz0+e2NvbnNvbGUuZXJyb3Iobyl9KSl9YXN5bmMgc3Bhd24odCxyLGEpe2xldCBpPVtdO0FycmF5LmlzQXJyYXkocik/aT1yOmE9cjtsZXQgbyxuPW5ldyBSZWFkYWJsZVN0cmVhbTtpZihhPy5vdXRwdXQhPT0hMSl7bGV0IHg9V3ZhKCk7bz14LnB1c2gsbj14LnN0cmVhbX1sZXQgcyxjLGQsZix1PXljZShFMHQobykpLHA9eWNlKEUwdChzKSksaD15Y2UoRTB0KGQpKSxiPWF3YWl0IHRoaXMuX2luc3RhbmNlLnJ1bih7Y29tbWFuZDp0LGFyZ3M6aSxjd2Q6YT8uY3dkLGVudjphPy5lbnYsdGVybWluYWw6YT8udGVybWluYWx9LHAsaCx1KTtyZXR1cm4gbmV3IEQwdChiLG4sYyxmKX1hc3luYyBleHBvcnQodCxyKXtsZXQgYT17Zm9ybWF0OnI/LmZvcm1hdD8/Impzb24iLGluY2x1ZGVzOnI/LmluY2x1ZGVzLGV4Y2x1ZGVzOnI/LmV4Y2x1ZGVzLGV4dGVybmFsOiEwfSxpPWF3YWl0IHRoaXMuX2luc3RhbmNlLnNlcmlhbGl6ZSh0LGEpO2lmKGEuZm9ybWF0PT09Impzb24iKXtsZXQgbz1KU09OLnBhcnNlKHhSci5kZWNvZGUoaSkpO3JldHVybiBDMHQobyl9cmV0dXJuIGl9b24odCxyKXtpZih0PT09InByZXZpZXctbWVzc2FnZSIpe2xldCBvPXI7cj0obj0+e2swdChuKSYmbyhuKX0pfWxldHtsaXN0ZW5lcjphLHN1YnNjcmliZTppfT1HdmEocik7cmV0dXJuIGkodGhpcy5faW5zdGFuY2Uub24odCxYbi5wcm94eShhKSkpfW1vdW50KHQscil7bGV0IGE9dCBpbnN0YW5jZW9mIFVpbnQ4QXJyYXk/dDp0IGluc3RhbmNlb2YgQXJyYXlCdWZmZXI/bmV3IFVpbnQ4QXJyYXkodCk6UnZhLmVuY29kZShKU09OLnN0cmluZ2lmeSh6MHQodCkpKTtyZXR1cm4gdGhpcy5faW5zdGFuY2UubG9hZEZpbGVzKFhuLnRyYW5zZmVyKGEsW2EuYnVmZmVyXSkse21vdW50UG9pbnRzOnI/Lm1vdW50UG9pbnR9KX1zZXRQcmV2aWV3U2NyaXB0KHQscil7cmV0dXJuIHRoaXMuX2luc3RhbmNlLnNldFByZXZpZXdTY3JpcHQodCxyKX1nZXQgcGF0aCgpe3JldHVybiB0aGlzLl9ydW50aW1lSW5mby5wYXRofWdldCB3b3JrZGlyKCl7cmV0dXJuIHRoaXMuX3J1bnRpbWVJbmZvLmN3ZH10ZWFyZG93bigpe2lmKHRoaXMuX3Rvcm5Eb3duKXRocm93IG5ldyBFcnJvcigiV2ViQ29udGFpbmVyIGFscmVhZHkgdG9ybiBkb3duIik7dGhpcy5fdG9ybkRvd249ITAsdGhpcy5fdW5zdWJzY3JpYmVGcm9tVG9rZW5DaGFuZ2VkTGlzdGVuZXIoKTtsZXQgdD1hc3luYygpPT57dHJ5e2F3YWl0IHRoaXMuZnMuX3RlYXJkb3duKCksYXdhaXQgdGhpcy5faW5zdGFuY2UudGVhcmRvd24oKX1maW5hbGx5e3RoaXMuX2luc3RhbmNlW1huLnJlbGVhc2VQcm94eV0oKSxlLl9pbnN0YW5jZT09PXRoaXMmJihlLl9pbnN0YW5jZT1udWxsKX19O2UuX3RlYXJkb3duUHJvbWlzZT10KCl9c3RhdGljIGFzeW5jIGJvb3QodD17fSl7YXdhaXQgdGhpcy5fdGVhcmRvd25Qcm9taXNlLGUuX3RlYXJkb3duUHJvbWlzZT1udWxsO2xldHt3b3JrZGlyTmFtZTpyfT10O2lmKHdpbmRvdy5jcm9zc09yaWdpbklzb2xhdGVkJiZ0LmNvZXA9PT0ibm9uZSImJmNvbnNvbGUud2FybihgQSBDcm9zcy1PcmlnaW4tRW1iZWRkZXItUG9saWN5IGhlYWRlciBpcyByZXF1aXJlZCBpbiBjcm9zcyBvcmlnaW4gaXNvbGF0ZWQgZW52aXJvbm1lbnRzLgpTZXQgdGhlICdjb2VwJyBvcHRpb24gdG8gJ3JlcXVpcmUtY29ycCcuYCkscj8uaW5jbHVkZXMoIi8iKXx8cj09PSIuLiJ8fHI9PT0iLiIpdGhyb3cgbmV3IEVycm9yKCJ3b3JrZGlyTmFtZSBzaG91bGQgYmUgYSB2YWxpZCBmb2xkZXIgbmFtZSIpO2ZvcihXdC5ib290Q2FsbGVkPSEwO2JjZTspYXdhaXQgYmNlO2lmKGUuX2luc3RhbmNlKXRocm93IG5ldyBFcnJvcigiT25seSBhIHNpbmdsZSBXZWJDb250YWluZXIgaW5zdGFuY2UgY2FuIGJlIGJvb3RlZCIpO2xldCBhPXF2YSh0KTtiY2U9YS5jYXRjaCgoKT0+e30pO3RyeXtsZXQgaT1hd2FpdCBhO3JldHVybiBlLl9pbnN0YW5jZT1pLGl9ZmluYWxseXtiY2U9bnVsbH19fTtCdmE9MSxIdmE9MixUMHQ9Y2xhc3N7bmFtZTtfdHlwZTtjb25zdHJ1Y3Rvcih0LHIpe3RoaXMubmFtZT10LHRoaXMuX3R5cGU9cn1pc0ZpbGUoKXtyZXR1cm4gdGhpcy5fdHlwZT09PUJ2YX1pc0RpcmVjdG9yeSgpe3JldHVybiB0aGlzLl90eXBlPT09SHZhfX0sTDB0PWNsYXNze19hcGlDbGllbnQ7X3BhdGg7X29wdGlvbnM7X2xpc3RlbmVyO193cmFwcGVkTGlzdGVuZXI7X3dhdGNoZXI7X2Nsb3NlZD0hMTtjb25zdHJ1Y3Rvcih0LHIsYSxpKXt0aGlzLl9hcGlDbGllbnQ9dCx0aGlzLl9wYXRoPXIsdGhpcy5fb3B0aW9ucz1hLHRoaXMuX2xpc3RlbmVyPWksdGhpcy5fYXBpQ2xpZW50Ll93YXRjaGVycy5hZGQodGhpcyksdGhpcy5fd3JhcHBlZExpc3RlbmVyPShvLG4pPT57dGhpcy5fbGlzdGVuZXImJiF0aGlzLl9jbG9zZWQmJnRoaXMuX2xpc3RlbmVyKG8sbil9LHRoaXMuX2FwaUNsaWVudC5fZnMud2F0Y2godGhpcy5fcGF0aCx0aGlzLl9vcHRpb25zLHljZSh0aGlzLl93cmFwcGVkTGlzdGVuZXIpKS50aGVuKG89PntpZih0aGlzLl93YXRjaGVyPW8sdGhpcy5fY2xvc2VkKXJldHVybiB0aGlzLl90ZWFyZG93bigpfSkuY2F0Y2goY29uc29sZS5lcnJvcil9YXN5bmMgY2xvc2UoKXt0aGlzLl9jbG9zZWR8fCh0aGlzLl9jbG9zZWQ9ITAsdGhpcy5fYXBpQ2xpZW50Ll93YXRjaGVycy5kZWxldGUodGhpcyksYXdhaXQgdGhpcy5fdGVhcmRvd24oKSl9YXN5bmMgX3RlYXJkb3duKCl7YXdhaXQgdGhpcy5fd2F0Y2hlcj8uY2xvc2UoKS5maW5hbGx5KCgpPT57dGhpcy5fd2F0Y2hlcj8uW1huLnJlbGVhc2VQcm94eV0oKX0pfX0sRDB0PWNsYXNze291dHB1dDtpbnB1dDtleGl0O19wcm9jZXNzO3N0ZG91dDtzdGRlcnI7Y29uc3RydWN0b3IodCxyLGEsaSl7dGhpcy5vdXRwdXQ9cix0aGlzLl9wcm9jZXNzPXQsdGhpcy5pbnB1dD1uZXcgV3JpdGFibGVTdHJlYW0oe3dyaXRlOm89Pnt0aGlzLl9nZXRQcm9jZXNzKCk/LndyaXRlKG8pLmNhdGNoKCgpPT57fSl9fSksdGhpcy5leGl0PXRoaXMuX29uRXhpdCgpLHRoaXMuc3Rkb3V0PWEsdGhpcy5zdGRlcnI9aX1raWxsKCl7dGhpcy5fcHJvY2Vzcz8ua2lsbCgpfXJlc2l6ZSh0KXt0aGlzLl9nZXRQcm9jZXNzKCk/LnJlc2l6ZSh0KX1hc3luYyBfb25FeGl0KCl7dHJ5e3JldHVybiBhd2FpdCB0aGlzLl9wcm9jZXNzLm9uRXhpdH1maW5hbGx5e3RoaXMuX3Byb2Nlc3M/LltYbi5yZWxlYXNlUHJveHldKCksdGhpcy5fcHJvY2Vzcz1udWxsfX1fZ2V0UHJvY2Vzcygpe3JldHVybiB0aGlzLl9wcm9jZXNzPT1udWxsJiZjb25zb2xlLndhcm4oIlRoaXMgcHJvY2VzcyBhbHJlYWR5IGV4aXRlZCIpLHRoaXMuX3Byb2Nlc3N9fSxBMHQ9Y2xhc3N7X2ZzO193YXRjaGVycz1uZXcgU2V0KFtdKTtjb25zdHJ1Y3Rvcih0KXt0aGlzLl9mcz10fXJtKC4uLnQpe3JldHVybiB0aGlzLl9mcy5ybSguLi50KX1hc3luYyByZWFkRmlsZSh0LHIpe3JldHVybiBhd2FpdCB0aGlzLl9mcy5yZWFkRmlsZSh0LHIpfWFzeW5jIHJlbmFtZSh0LHIpe3JldHVybiBhd2FpdCB0aGlzLl9mcy5yZW5hbWUodCxyKX1hc3luYyB3cml0ZUZpbGUodCxyLGEpe2lmKHIgaW5zdGFuY2VvZiBVaW50OEFycmF5KXtsZXQgaT1yLmJ1ZmZlci5zbGljZShyLmJ5dGVPZmZzZXQsci5ieXRlT2Zmc2V0K3IuYnl0ZUxlbmd0aCk7cj1Ybi50cmFuc2ZlcihuZXcgVWludDhBcnJheShpKSxbaV0pfWF3YWl0IHRoaXMuX2ZzLndyaXRlRmlsZSh0LHIsYSl9YXN5bmMgcmVhZGRpcih0LHIpe2xldCBhPWF3YWl0IHRoaXMuX2ZzLnJlYWRkaXIodCxyKTtyZXR1cm4gVnZhKGEpfHxVdmEoYSk/YTphLm1hcChvPT5uZXcgVDB0KG8ubmFtZSxvWyJTeW1ib2wodHlwZSkiXSkpfWFzeW5jIG1rZGlyKHQscil7cmV0dXJuIGF3YWl0IHRoaXMuX2ZzLm1rZGlyKHQscil9d2F0Y2godCxyLGEpe3JldHVybiB0eXBlb2Ygcj09ImZ1bmN0aW9uIiYmKGE9cixyPW51bGwpLG5ldyBMMHQodGhpcyx0LHIsYSl9YXN5bmMgX3RlYXJkb3duKCl7dGhpcy5fZnNbWG4ucmVsZWFzZVByb3h5XSgpLGF3YWl0IFByb21pc2UuYWxsKFsuLi50aGlzLl93YXRjaGVyc10ubWFwKHQ9PnQuY2xvc2UoKSkpfX19KTt2YXIgVzgsdlJyPWwoKCk9PntiUnIoKTtXOD1jbGFzcyBle3N0YXRpYyBzaGFyZWRDb250YWluZXI9bnVsbDtzdGF0aWMgYm9vdFByb21pc2U9bnVsbDtfcmVhZHk9ITE7dHlwZT0id2ViY29udGFpbmVyIjtnZXQgcmVhZHkoKXtyZXR1cm4gdGhpcy5fcmVhZHl9Z2V0IGNvbnRhaW5lcigpe3JldHVybiBlLnNoYXJlZENvbnRhaW5lcn1hc3luYyBpbml0KCl7aWYoISh0aGlzLl9yZWFkeSYmZS5zaGFyZWRDb250YWluZXIpKXtpZihlLmJvb3RQcm9taXNlKXthd2FpdCBlLmJvb3RQcm9taXNlLHRoaXMuX3JlYWR5PSEwO3JldHVybn1pZihlLnNoYXJlZENvbnRhaW5lcil7dGhpcy5fcmVhZHk9ITA7cmV0dXJufWlmKHR5cGVvZiBTaGFyZWRBcnJheUJ1ZmZlcj4idSIpdGhyb3cgbmV3IEVycm9yKGBXZWJDb250YWluZXIgcmVxdWlyZXMgU2hhcmVkQXJyYXlCdWZmZXIgd2hpY2ggaXMgbm90IGF2YWlsYWJsZS4gRW5zdXJlIHlvdXIgc2VydmVyIHNlbmRzIHRoZXNlIGhlYWRlcnM6CiAgQ3Jvc3MtT3JpZ2luLU9wZW5lci1Qb2xpY3k6IHNhbWUtb3JpZ2luCiAgQ3Jvc3MtT3JpZ2luLUVtYmVkZGVyLVBvbGljeTogcmVxdWlyZS1jb3JwYCk7ZS5ib290UHJvbWlzZT1HWi5ib290KCk7dHJ5e2Uuc2hhcmVkQ29udGFpbmVyPWF3YWl0IGUuYm9vdFByb21pc2UsdGhpcy5fcmVhZHk9ITB9Y2F0Y2godCl7dGhyb3cgZS5ib290UHJvbWlzZT1udWxsLHR9fX1hc3luYyBkZXN0cm95KCl7ZS5zaGFyZWRDb250YWluZXImJihlLnNoYXJlZENvbnRhaW5lci50ZWFyZG93bigpLGUuc2hhcmVkQ29udGFpbmVyPW51bGwsZS5ib290UHJvbWlzZT1udWxsLHRoaXMuX3JlYWR5PSExKX1hc3luYyByZWFkRmlsZSh0KXtyZXR1cm4gdGhpcy5lbnN1cmVSZWFkeSgpLGF3YWl0IHRoaXMuY29udGFpbmVyLmZzLnJlYWRGaWxlKHQsInV0Zi04Iil9YXN5bmMgd3JpdGVGaWxlKHQscil7dGhpcy5lbnN1cmVSZWFkeSgpLGF3YWl0IHRoaXMuY29udGFpbmVyLmZzLndyaXRlRmlsZSh0LHIsInV0Zi04Iil9YXN5bmMgcmVhZERpcih0KXtyZXR1cm4gdGhpcy5lbnN1cmVSZWFkeSgpLChhd2FpdCB0aGlzLmNvbnRhaW5lci5mcy5yZWFkZGlyKHQse3dpdGhGaWxlVHlwZXM6ITB9KSkubWFwKGE9Pih7dHlwZTphLmlzRGlyZWN0b3J5KCk/ImRpcmVjdG9yeSI6ImZpbGUiLG5hbWU6YS5uYW1lLHBhdGg6dD09PSIvIj9gLyR7YS5uYW1lfWA6YCR7dH0vJHthLm5hbWV9YH0pKX1hc3luYyBta2Rpcih0KXt0aGlzLmVuc3VyZVJlYWR5KCksYXdhaXQgdGhpcy5jb250YWluZXIuZnMubWtkaXIodCx7cmVjdXJzaXZlOiEwfSl9YXN5bmMgcm0odCxyKXt0aGlzLmVuc3VyZVJlYWR5KCksYXdhaXQgdGhpcy5jb250YWluZXIuZnMucm0odCx7cmVjdXJzaXZlOnI/LnJlY3Vyc2l2ZT8/ITF9KX1hc3luYyBleGlzdHModCl7dGhpcy5lbnN1cmVSZWFkeSgpO3RyeXtyZXR1cm4gYXdhaXQgdGhpcy5jb250YWluZXIuZnMucmVhZEZpbGUodCksITB9Y2F0Y2h7dHJ5e3JldHVybiBhd2FpdCB0aGlzLmNvbnRhaW5lci5mcy5yZWFkZGlyKHQpLCEwfWNhdGNoe3JldHVybiExfX19d2F0Y2godCxyLGEpe3RoaXMuZW5zdXJlUmVhZHkoKTtsZXQgaT10aGlzLmNvbnRhaW5lci5mcy53YXRjaCh0LHtyZWN1cnNpdmU6YT8ucmVjdXJzaXZlPz8hMX0scik7cmV0dXJue3N0b3A6KCk9PmkuY2xvc2UoKX19YXN5bmMgc3Bhd24odCxyPVtdKXt0aGlzLmVuc3VyZVJlYWR5KCk7bGV0IGE9YXdhaXQgdGhpcy5jb250YWluZXIuc3Bhd24odCxyKTtyZXR1cm57b3V0cHV0OmEub3V0cHV0LGlucHV0OmEuaW5wdXQsZXhpdDphLmV4aXQsa2lsbDooKT0+YS5raWxsKCl9fWFzeW5jIG1vdW50KHQpe3RoaXMuZW5zdXJlUmVhZHkoKSxhd2FpdCB0aGlzLmNvbnRhaW5lci5tb3VudCh0KX1nZXRDb250YWluZXIoKXtyZXR1cm4gdGhpcy5lbnN1cmVSZWFkeSgpLHRoaXMuY29udGFpbmVyfWVuc3VyZVJlYWR5KCl7aWYoIXRoaXMuX3JlYWR5fHwhdGhpcy5jb250YWluZXIpdGhyb3cgbmV3IEVycm9yKCJXZWJDb250YWluZXJFbnZpcm9ubWVudCBub3QgaW5pdGlhbGl6ZWQuIENhbGwgaW5pdCgpIGZpcnN0LiIpfX19KTt2YXIgeVJyPWwoKCk9Pnt2UnIoKX0pO3ZhciB3Y2U9bCgoKT0+e0JPcigpO3lScigpfSk7dmFyIHdScj1sKCgpPT57Wmx0KCl9KTt2YXIgWVosJDB0PWwoKCk9PntZWj1jbGFzc3t0YWJzPW5ldyBNYXA7dGFiQ291bnRlcj0wO3h0ZXJtQnVuZGxlPW51bGw7eHRlcm1GaXRBZGRvbkJ1bmRsZT1udWxsO3NldFh0ZXJtTW9kdWxlcyh0LHIpe3RoaXMueHRlcm1CdW5kbGU9dCx0aGlzLnh0ZXJtRml0QWRkb25CdW5kbGU9cn1nZW5lcmF0ZVRhYklkKCl7cmV0dXJuIHRoaXMudGFiQ291bnRlcisrLGB0ZXJtaW5hbC0ke3RoaXMudGFiQ291bnRlcn0tJHtEYXRlLm5vdygpfWB9Z2V0RGVmYXVsdExhYmVsKHQscil7c3dpdGNoKHQpe2Nhc2Uic2hlbGwiOnJldHVybiJiYXNoIjtjYXNlInNjcmlwdCI6cmV0dXJuIHI/LnNjcmlwdE5hbWV8fCJzY3JpcHQiO2Nhc2UicGFja2FnZS11cGRhdGUiOnJldHVybiByPy5wYWNrYWdlTmFtZT9gdXBkYXRlICR7ci5wYWNrYWdlTmFtZX1gOiJ1cGRhdGUiO2Nhc2UiY3VzdG9tIjpyZXR1cm4gcj8uY29tbWFuZHx8InByb2Nlc3MiO2RlZmF1bHQ6cmV0dXJuInRlcm1pbmFsIn19Z2V0RGVmYXVsdEljb24odCl7c3dpdGNoKHQpe2Nhc2Uic2hlbGwiOnJldHVybiJsdWNpZGU6dGVybWluYWwiO2Nhc2Uic2NyaXB0IjpyZXR1cm4ibHVjaWRlOnBsYXkiO2Nhc2UicGFja2FnZS11cGRhdGUiOnJldHVybiJsdWNpZGU6cGFja2FnZUNoZWNrIjtjYXNlImN1c3RvbSI6cmV0dXJuImx1Y2lkZTpjb2RlIjtkZWZhdWx0OnJldHVybiJsdWNpZGU6dGVybWluYWwifX1nZXRUZXJtaW5hbFRoZW1lKHQpe3JldHVybiB0P3tiYWNrZ3JvdW5kOiIjZmZmZmZmIixmb3JlZ3JvdW5kOiIjMzMzMzMzIixjdXJzb3I6IiMzMzMzMzMiLGN1cnNvckFjY2VudDoiI2ZmZmZmZiIsc2VsZWN0aW9uOiJyZ2JhKDAsIDAsIDAsIDAuMikiLGJsYWNrOiIjMDAwMDAwIixyZWQ6IiNjZDMxMzEiLGdyZWVuOiIjMDBiYzAwIix5ZWxsb3c6IiM5NDk4MDAiLGJsdWU6IiMwNDUxYTUiLG1hZ2VudGE6IiNiYzA1YmMiLGN5YW46IiMwNTk4YmMiLHdoaXRlOiIjNTU1NTU1IixicmlnaHRCbGFjazoiIzY2NjY2NiIsYnJpZ2h0UmVkOiIjY2QzMTMxIixicmlnaHRHcmVlbjoiIzE0Y2UxNCIsYnJpZ2h0WWVsbG93OiIjYjViYTAwIixicmlnaHRCbHVlOiIjMDQ1MWE1IixicmlnaHRNYWdlbnRhOiIjYmMwNWJjIixicmlnaHRDeWFuOiIjMDU5OGJjIixicmlnaHRXaGl0ZToiI2E1YTVhNSJ9OntiYWNrZ3JvdW5kOiIjMDAwMDAwIixmb3JlZ3JvdW5kOiIjZmZmZmZmIixjdXJzb3I6IiNmZmZmZmYiLGN1cnNvckFjY2VudDoiIzAwMDAwMCIsc2VsZWN0aW9uOiJyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMikifX1jcmVhdGVUYWIodCxyKXtpZighdGhpcy54dGVybUJ1bmRsZXx8IXRoaXMueHRlcm1GaXRBZGRvbkJ1bmRsZSl0aHJvdyBuZXcgRXJyb3IoIlRlcm1pbmFsVGFiTWFuYWdlcjogeHRlcm0gbW9kdWxlcyBub3QgaW5pdGlhbGl6ZWQuIENhbGwgc2V0WHRlcm1Nb2R1bGVzKCkgZmlyc3QuIik7bGV0IGE9dGhpcy5nZW5lcmF0ZVRhYklkKCksaT10LnR5cGUsbz1uZXcgdGhpcy54dGVybUJ1bmRsZS5UZXJtaW5hbCh7Y29udmVydEVvbDohMCxjdXJzb3JCbGluazohMCx0aGVtZTp0aGlzLmdldFRlcm1pbmFsVGhlbWUociksZm9udEZhbWlseTonTWVubG8sIE1vbmFjbywgIkNvdXJpZXIgTmV3IiwgbW9ub3NwYWNlJyxmb250U2l6ZToxMyxsaW5lSGVpZ2h0OjEuMn0pLG49bmV3IHRoaXMueHRlcm1GaXRBZGRvbkJ1bmRsZS5GaXRBZGRvbjtvLmxvYWRBZGRvbihuKTtsZXQgcz17aWQ6YSxsYWJlbDp0LmxhYmVsfHx0aGlzLmdldERlZmF1bHRMYWJlbChpLHQubWV0YWRhdGEpLGljb25OYW1lOnQuaWNvbk5hbWV8fHRoaXMuZ2V0RGVmYXVsdEljb24oaSksdHlwZTppLGNsb3NlYWJsZTp0LmNsb3NlYWJsZT8/aSE9PSJzaGVsbCIsdGVybWluYWw6byxmaXRBZGRvbjpuLHByb2Nlc3M6bnVsbCxpbnB1dFdyaXRlcjpudWxsLGV4aXRlZDohMSxleGl0Q29kZTpudWxsLGNyZWF0ZWRBdDpEYXRlLm5vdygpLG1ldGFkYXRhOnQubWV0YWRhdGF9O3JldHVybiB0aGlzLnRhYnMuc2V0KGEscyksc31nZXRUYWIodCl7cmV0dXJuIHRoaXMudGFicy5nZXQodCl9Z2V0QWxsVGFicygpe3JldHVybiBBcnJheS5mcm9tKHRoaXMudGFicy52YWx1ZXMoKSkuc29ydCgodCxyKT0+dC5jcmVhdGVkQXQtci5jcmVhdGVkQXQpfWdldFRhYkNvdW50KCl7cmV0dXJuIHRoaXMudGFicy5zaXplfWhhc1RhYih0KXtyZXR1cm4gdGhpcy50YWJzLmhhcyh0KX1jbG9zZVRhYih0KXtsZXQgcj10aGlzLnRhYnMuZ2V0KHQpO2lmKCFyKXJldHVybiExO2lmKHIucHJvY2VzcyYmIXIuZXhpdGVkKXRyeXtyLnByb2Nlc3Mua2lsbCgpfWNhdGNoKGEpe2NvbnNvbGUud2FybigiRmFpbGVkIHRvIGtpbGwgcHJvY2VzczoiLGEpfXRyeXtyLnRlcm1pbmFsLmRpc3Bvc2UoKX1jYXRjaChhKXtjb25zb2xlLndhcm4oIkZhaWxlZCB0byBkaXNwb3NlIHRlcm1pbmFsOiIsYSl9cmV0dXJuIHRoaXMudGFicy5kZWxldGUodCksITB9cmVuYW1lVGFiKHQscil7bGV0IGE9dGhpcy50YWJzLmdldCh0KTtyZXR1cm4gYT8oYS5sYWJlbD1yLCEwKTohMX1tYXJrVGFiRXhpdGVkKHQscil7bGV0IGE9dGhpcy50YWJzLmdldCh0KTthJiYoYS5leGl0ZWQ9ITAsYS5leGl0Q29kZT1yKX1zZXRUYWJQcm9jZXNzKHQscixhKXtsZXQgaT10aGlzLnRhYnMuZ2V0KHQpO2kmJihpLnByb2Nlc3M9cixpLmlucHV0V3JpdGVyPWEpfXVwZGF0ZUFsbFRoZW1lcyh0KXtsZXQgcj10aGlzLmdldFRlcm1pbmFsVGhlbWUodCk7Zm9yKGxldCBhIG9mIHRoaXMudGFicy52YWx1ZXMoKSlhLnRlcm1pbmFsLm9wdGlvbnMudGhlbWU9cn1kaXNwb3NlQWxsKCl7Zm9yKGxldFt0XW9mIHRoaXMudGFicyl0aGlzLmNsb3NlVGFiKHQpO3RoaXMudGFicy5jbGVhcigpfX19KTt2YXIgTVJyPXt9O3FlKE1Scix7RGVlc1dvcmtzcGFjZVRlcm1pbmFsOigpPT5QMHR9KTt2YXIgeTMsa28sUDB0LFpaPWwoKCk9PntTZSgpO2VyKCk7b3QoKTt3Y2UoKTticigpO2FjZSgpOyQwdCgpO2MzKCk7eTM9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxrbz1mdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MixpPTA7aTx0Lmxlbmd0aDtpKyspcj1hP3RbaV0uY2FsbChlLHIpOnRbaV0uY2FsbChlKTtyZXR1cm4gYT9yOnZvaWQgMH0sUDB0PSgoKT0+e2xldCBlPVt6ZSgiZGVlcy13b3Jrc3BhY2UtdGVybWluYWwiKV0sdCxyPVtdLGEsaT1EZSxvLG49W10scz1bXSxjLGQ9W10sZj1bXSx1LHA9W10saD1bXSxiLHg9W10sZz1bXSx2LHc9W10sTT1bXSxGLEM9W10saz1bXSxOLCQ9W10sST1bXTt2YXIgQj1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IHo9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baih7dHlwZTpPYmplY3R9KV0sYz1baigpXSx1PVtqKCldLGI9W2ooe3R5cGU6TnVtYmVyfSldLHY9W2ooe3R5cGU6Qm9vbGVhbn0pXSxGPVtyZSgpXSxOPVtyZSgpXSx5Myh0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImV4ZWN1dGlvbkVudmlyb25tZW50IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5PT4iZXhlY3V0aW9uRW52aXJvbm1lbnQiaW4geSxnZXQ6eT0+eS5leGVjdXRpb25FbnZpcm9ubWVudCxzZXQ6KHksRSk9Pnt5LmV4ZWN1dGlvbkVudmlyb25tZW50PUV9fSxtZXRhZGF0YTp6fSxuLHMpLHkzKHRoaXMsbnVsbCxjLHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2V0dXBDb21tYW5kIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5PT4ic2V0dXBDb21tYW5kImluIHksZ2V0Onk9Pnkuc2V0dXBDb21tYW5kLHNldDooeSxFKT0+e3kuc2V0dXBDb21tYW5kPUV9fSxtZXRhZGF0YTp6fSxkLGYpLHkzKHRoaXMsbnVsbCx1LHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZW52aXJvbm1lbnRWYXJpYWJsZXMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnk9PiJlbnZpcm9ubWVudFZhcmlhYmxlcyJpbiB5LGdldDp5PT55LmVudmlyb25tZW50VmFyaWFibGVzLHNldDooeSxFKT0+e3kuZW52aXJvbm1lbnRWYXJpYWJsZXM9RX19LG1ldGFkYXRhOnp9LHAsaCkseTModGhpcyxudWxsLGIse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ0YWJCYXJXaWR0aCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6eT0+InRhYkJhcldpZHRoImluIHksZ2V0Onk9PnkudGFiQmFyV2lkdGgsc2V0Oih5LEUpPT57eS50YWJCYXJXaWR0aD1FfX0sbWV0YWRhdGE6en0seCxnKSx5Myh0aGlzLG51bGwsdix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNob3dUYWJCYXIiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnk9PiJzaG93VGFiQmFyImluIHksZ2V0Onk9Pnkuc2hvd1RhYkJhcixzZXQ6KHksRSk9Pnt5LnNob3dUYWJCYXI9RX19LG1ldGFkYXRhOnp9LHcsTSkseTModGhpcyxudWxsLEYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ0YWJzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczp5PT4idGFicyJpbiB5LGdldDp5PT55LnRhYnMsc2V0Oih5LEUpPT57eS50YWJzPUV9fSxtZXRhZGF0YTp6fSxDLGspLHkzKHRoaXMsbnVsbCxOLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiYWN0aXZlVGFiSWQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOnk9PiJhY3RpdmVUYWJJZCJpbiB5LGdldDp5PT55LmFjdGl2ZVRhYklkLHNldDooeSxFKT0+e3kuYWN0aXZlVGFiSWQ9RX19LG1ldGFkYXRhOnp9LCQsSSkseTMobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6en0sbnVsbCxyKSxCPWE9dC52YWx1ZSx6JiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnp9KX1zdGF0aWMgZGVtbz0oKT0+e2xldCB6PW5ldyBXODtyZXR1cm4gU2A8ZGVlcy13b3Jrc3BhY2UtdGVybWluYWwgLmV4ZWN1dGlvbkVudmlyb25tZW50PSR7en0+PC9kZWVzLXdvcmtzcGFjZS10ZXJtaW5hbD5gfTtzdGF0aWMgZGVtb0dyb3Vwcz1bIldvcmtzcGFjZSJdO3Jlc2l6ZU9ic2VydmVyO3RhYk1hbmFnZXI7I2U9a28odGhpcyxuLG51bGwpO2dldCBleGVjdXRpb25FbnZpcm9ubWVudCgpe3JldHVybiB0aGlzLiNlfXNldCBleGVjdXRpb25FbnZpcm9ubWVudCh6KXt0aGlzLiNlPXp9I3Q9KGtvKHRoaXMscyksa28odGhpcyxkLCIiKSk7Z2V0IHNldHVwQ29tbWFuZCgpe3JldHVybiB0aGlzLiN0fXNldCBzZXR1cENvbW1hbmQoeil7dGhpcy4jdD16fSNyPShrbyh0aGlzLGYpLGtvKHRoaXMscCx7fSkpO2dldCBlbnZpcm9ubWVudFZhcmlhYmxlcygpe3JldHVybiB0aGlzLiNyfXNldCBlbnZpcm9ubWVudFZhcmlhYmxlcyh6KXt0aGlzLiNyPXp9I2E9KGtvKHRoaXMsaCksa28odGhpcyx4LDE2MCkpO2dldCB0YWJCYXJXaWR0aCgpe3JldHVybiB0aGlzLiNhfXNldCB0YWJCYXJXaWR0aCh6KXt0aGlzLiNhPXp9I2k9KGtvKHRoaXMsZyksa28odGhpcyx3LCEwKSk7Z2V0IHNob3dUYWJCYXIoKXtyZXR1cm4gdGhpcy4jaX1zZXQgc2hvd1RhYkJhcih6KXt0aGlzLiNpPXp9I289KGtvKHRoaXMsTSksa28odGhpcyxDLFtdKSk7Z2V0IHRhYnMoKXtyZXR1cm4gdGhpcy4jb31zZXQgdGFicyh6KXt0aGlzLiNvPXp9I249KGtvKHRoaXMsayksa28odGhpcywkLG51bGwpKTtnZXQgYWN0aXZlVGFiSWQoKXtyZXR1cm4gdGhpcy4jbn1zZXQgYWN0aXZlVGFiSWQoeil7dGhpcy4jbj16fXRlcm1pbmFsVGhlbWVTdWJzY3JpcHRpb249KGtvKHRoaXMsSSksbnVsbCk7aXNCcmlnaHQ9ITE7dGVybWluYWxBY3Rpb25iYXI9bnVsbDtlbnZpcm9ubWVudERlZmVycmVkPW5ldyBKdC5zbWFydHByb21pc2UuRGVmZXJyZWQ7ZW52aXJvbm1lbnRQcm9taXNlPXRoaXMuZW52aXJvbm1lbnREZWZlcnJlZC5wcm9taXNlO2NvbnN0cnVjdG9yKCl7c3VwZXIoKSx0aGlzLnRhYk1hbmFnZXI9bmV3IFlaLHRoaXMucmVzaXplT2JzZXJ2ZXI9bmV3IFJlc2l6ZU9ic2VydmVyKCgpPT57dGhpcy5oYW5kbGVSZXNpemUoKX0pfXN0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgOmhvc3QgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZmZmZmZmIiwiIzAwMDAwMCIpfTsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsKICAgICAgfQoKICAgICAgKiB7CiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAgfQoKICAgICAgLnRlcm1pbmFsLWNvbnRhaW5lciB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93OwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgfQoKICAgICAgLnRlcm1pbmFsLWNvbnRlbnQgewogICAgICAgIGZsZXg6IDE7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNmZmZmZmYiLCIjMDAwMDAwIil9OwogICAgICB9CgogICAgICAjYWN0aXZlLXRlcm1pbmFsLWNvbnRhaW5lciB7CiAgICAgICAgZmxleDogMTsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgbWluLWhlaWdodDogMDsKICAgICAgICBtYXJnaW46IDIwcHg7CiAgICAgIH0KCiAgICAgIC50ZXJtaW5hbC1jb250ZW50IGRlZXMtYWN0aW9uYmFyIHsKICAgICAgICBmbGV4LXNocmluazogMDsKICAgICAgfQoKICAgICAgLyogVGFiIGJhciBvbiB0aGUgcmlnaHQgc2lkZSAqLwogICAgICAudGFiLWJhciB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5NiUpIiwiaHNsKDAgMCUgNyUpIil9OwogICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgwIDAlIDg1JSkiLCJoc2woMCAwJSAxNSUpIil9OwogICAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgIH0KCiAgICAgIC50YWItYmFyLWhlYWRlciB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICAgICAgICBwYWRkaW5nOiA4cHggMTBweDsKICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgwIDAlIDg4JSkiLCJoc2woMCAwJSAxMiUpIil9OwogICAgICAgIGZvbnQtc2l6ZTogMTFweDsKICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7CiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNDUlKSIsImhzbCgwIDAlIDU1JSkiKX07CiAgICAgIH0KCiAgICAgIC50YWItYmFyLXRpdGxlIHsKICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7CiAgICAgIH0KCiAgICAgIC50YWItYmFyLWFjdGlvbnMgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZ2FwOiAycHg7CiAgICAgIH0KCiAgICAgIC50YWItYWN0aW9uIHsKICAgICAgICB3aWR0aDogMjJweDsKICAgICAgICBoZWlnaHQ6IDIycHg7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA1MCUpIiwiaHNsKDAgMCUgNjAlKSIpfTsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTsKICAgICAgfQoKICAgICAgLnRhYi1hY3Rpb246aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OCUpIiwiaHNsKDAgMCUgMTUlKSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDMwJSkiLCJoc2woMCAwJSA4MCUpIil9OwogICAgICB9CgogICAgICAudGFiLWxpc3QgewogICAgICAgIGZsZXg6IDE7CiAgICAgICAgb3ZlcmZsb3cteTogYXV0bzsKICAgICAgICBwYWRkaW5nOiA0cHg7CiAgICAgIH0KCiAgICAgIC50ZXJtaW5hbC10YWIgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDhweDsKICAgICAgICBwYWRkaW5nOiA4cHggMTBweDsKICAgICAgICBtYXJnaW4tYm90dG9tOiAycHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA0NSUpIiwiaHNsKDAgMCUgNjAlKSIpfTsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTsKICAgICAgfQoKICAgICAgLnRlcm1pbmFsLXRhYjpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDkwJSkiLCJoc2woMCAwJSAxMiUpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMjUlKSIsImhzbCgwIDAlIDgwJSkiKX07CiAgICAgIH0KCiAgICAgIC50ZXJtaW5hbC10YWIuYWN0aXZlIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDIxMCAxMDAlIDk1JSkiLCJoc2woMjEwIDMwJSAxNSUpIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxMCAxMDAlIDQwJSkiLCJoc2woMjEwIDEwMCUgNzAlKSIpfTsKICAgICAgfQoKICAgICAgLnRlcm1pbmFsLXRhYi5leGl0ZWQgewogICAgICAgIG9wYWNpdHk6IDAuNzsKICAgICAgfQoKICAgICAgLnRhYi1pY29uIHsKICAgICAgICBmbGV4LXNocmluazogMDsKICAgICAgfQoKICAgICAgLnRhYi1pY29uLnJ1bm5pbmcgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDE0MiA3MCUgNDAlKSIsImhzbCgxNDIgNzAlIDU1JSkiKX07CiAgICAgIH0KCiAgICAgIC50YWItbGFiZWwgewogICAgICAgIGZsZXg6IDE7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsKICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgICB9CgogICAgICAuZXhpdC1iYWRnZSB7CiAgICAgICAgZm9udC1zaXplOiAxMHB4OwogICAgICAgIHBhZGRpbmc6IDFweCA1cHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgIH0KCiAgICAgIC5leGl0LWJhZGdlLnN1Y2Nlc3MgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMTQyIDcwJSA5MCUpIiwiaHNsKDE0MiAzMCUgMjAlKSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgxNDIgNzAlIDM1JSkiLCJoc2woMTQyIDcwJSA2MCUpIil9OwogICAgICB9CgogICAgICAuZXhpdC1iYWRnZS5lcnJvciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDcwJSA5MyUpIiwiaHNsKDAgMzAlIDIwJSkiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCA3MCUgNDUlKSIsImhzbCgwIDcwJSA2MCUpIil9OwogICAgICB9CgogICAgICAudGFiLWNsb3NlIHsKICAgICAgICB3aWR0aDogMThweDsKICAgICAgICBoZWlnaHQ6IDE4cHg7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgICB9CgogICAgICAudGVybWluYWwtdGFiOmhvdmVyIC50YWItY2xvc2UgewogICAgICAgIG9wYWNpdHk6IDAuNjsKICAgICAgfQoKICAgICAgLnRhYi1jbG9zZTpob3ZlciB7CiAgICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4NSUpIiwiaHNsKDAgMCUgMjUlKSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDcwJSA1MCUpIiwiaHNsKDAgNzAlIDYwJSkiKX07CiAgICAgIH0KCiAgICAgIC5lbXB0eS1zdGF0ZSB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNTAlKSIsImhzbCgwIDAlIDUwJSkiKX07CiAgICAgICAgZm9udC1zaXplOiAxM3B4OwogICAgICAgIGdhcDogOHB4OwogICAgICB9CgogICAgICAvKiB4dGVybS5qcyBzdHlsZXMgKi8KICAgICAgLnh0ZXJtIHsKICAgICAgICBmb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJyAwOwogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTsKICAgICAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsKICAgICAgfQoKICAgICAgLnh0ZXJtLmZvY3VzLAogICAgICAueHRlcm06Zm9jdXMgewogICAgICAgIG91dGxpbmU6IG5vbmU7CiAgICAgIH0KCiAgICAgIC54dGVybSAueHRlcm0taGVscGVycyB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHRvcDogMDsKICAgICAgICB6LWluZGV4OiA1OwogICAgICB9CgogICAgICAueHRlcm0gLnh0ZXJtLWhlbHBlci10ZXh0YXJlYSB7CiAgICAgICAgcGFkZGluZzogMDsKICAgICAgICBib3JkZXI6IDA7CiAgICAgICAgbWFyZ2luOiAwOwogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIGxlZnQ6IC05OTk5ZW07CiAgICAgICAgdG9wOiAwOwogICAgICAgIHdpZHRoOiAwOwogICAgICAgIGhlaWdodDogMDsKICAgICAgICB6LWluZGV4OiAtNTsKICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgcmVzaXplOiBub25lOwogICAgICB9CgogICAgICAueHRlcm0gLmNvbXBvc2l0aW9uLXZpZXcgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZmZmZmZmIiwiIzAwMDAwMCIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMzMzMzMzMiLCIjZmZmZmZmIil9OwogICAgICAgIGRpc3BsYXk6IG5vbmU7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgICAgICAgei1pbmRleDogMTsKICAgICAgfQoKICAgICAgLnh0ZXJtIC5jb21wb3NpdGlvbi12aWV3LmFjdGl2ZSB7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgIH0KCiAgICAgIC54dGVybSAueHRlcm0tdmlld3BvcnQgewogICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR7bS5iZFRoZW1lKCIjZmZmZmZmIiwiIzAwMDAwMCIpfTsKICAgICAgICBvdmVyZmxvdy15OiBzY3JvbGw7CiAgICAgICAgY3Vyc29yOiBkZWZhdWx0OwogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICByaWdodDogMDsKICAgICAgICBsZWZ0OiAwOwogICAgICAgIHRvcDogMDsKICAgICAgICBib3R0b206IDA7CiAgICAgIH0KCiAgICAgIC54dGVybSAueHRlcm0tc2NyZWVuIHsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgIH0KCiAgICAgIC54dGVybSAueHRlcm0tc2NyZWVuIGNhbnZhcyB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIGxlZnQ6IDA7CiAgICAgICAgdG9wOiAwOwogICAgICB9CgogICAgICAueHRlcm0gLnh0ZXJtLXNjcm9sbC1hcmVhIHsKICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47CiAgICAgIH0KCiAgICAgIC54dGVybS1jaGFyLW1lYXN1cmUtZWxlbWVudCB7CiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgdG9wOiAwOwogICAgICAgIGxlZnQ6IC05OTk5ZW07CiAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDsKICAgICAgfQoKICAgICAgLnh0ZXJtIHsKICAgICAgICBjdXJzb3I6IHRleHQ7CiAgICAgIH0KCiAgICAgIC54dGVybS5lbmFibGUtbW91c2UtZXZlbnRzIHsKICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7CiAgICAgIH0KCiAgICAgIC54dGVybS54dGVybS1jdXJzb3ItcG9pbnRlciB7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICB9CgogICAgICAueHRlcm0uY29sdW1uLXNlbGVjdC5mb2N1cyB7CiAgICAgICAgY3Vyc29yOiBjcm9zc2hhaXI7CiAgICAgIH0KCiAgICAgIC54dGVybSAueHRlcm0tYWNjZXNzaWJpbGl0eSwKICAgICAgLnh0ZXJtIC54dGVybS1tZXNzYWdlIHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgbGVmdDogMDsKICAgICAgICB0b3A6IDA7CiAgICAgICAgYm90dG9tOiAwOwogICAgICAgIHJpZ2h0OiAwOwogICAgICAgIHotaW5kZXg6IDEwOwogICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDsKICAgICAgfQoKICAgICAgLnh0ZXJtIC5saXZlLXJlZ2lvbiB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIGxlZnQ6IC05OTk5cHg7CiAgICAgICAgd2lkdGg6IDFweDsKICAgICAgICBoZWlnaHQ6IDFweDsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICB9CgogICAgICAueHRlcm0tZGltIHsKICAgICAgICBvcGFjaXR5OiAwLjU7CiAgICAgIH0KCiAgICAgIC54dGVybS11bmRlcmxpbmUgewogICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOwogICAgICB9CiAgICBgXTtyZW5kZXIoKXtsZXQgej10aGlzLmFjdGl2ZVRhYklkP3RoaXMudGFiTWFuYWdlci5nZXRUYWIodGhpcy5hY3RpdmVUYWJJZCk6bnVsbDtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0idGVybWluYWwtY29udGFpbmVyIj4KICAgICAgICA8IS0tIE1haW4gdGVybWluYWwgYXJlYSAtLT4KICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXJtaW5hbC1jb250ZW50Ij4KICAgICAgICAgICR7ej9TYAogICAgICAgICAgICA8ZGl2IGlkPSJhY3RpdmUtdGVybWluYWwtY29udGFpbmVyIj48L2Rpdj4KICAgICAgICAgIGA6U2AKICAgICAgICAgICAgPGRpdiBjbGFzcz0iZW1wdHktc3RhdGUiPgogICAgICAgICAgICAgIDxkZWVzLWljb24gLmljb249JHsibHVjaWRlOnRlcm1pbmFsIn0gaWNvblNpemU9IjMyIj48L2RlZXMtaWNvbj4KICAgICAgICAgICAgICA8c3Bhbj5ObyB0ZXJtaW5hbCBvcGVuPC9zcGFuPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIGB9CiAgICAgICAgICA8ZGVlcy1hY3Rpb25iYXI+PC9kZWVzLWFjdGlvbmJhcj4KICAgICAgICA8L2Rpdj4KCiAgICAgICAgPCEtLSBWZXJ0aWNhbCB0YWIgYmFyIG9uIHRoZSByaWdodCAtLT4KICAgICAgICAke3RoaXMuc2hvd1RhYkJhcj9TYAogICAgICAgICAgPGRpdiBjbGFzcz0idGFiLWJhciIgc3R5bGU9IndpZHRoOiAke3RoaXMudGFiQmFyV2lkdGh9cHgiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0YWItYmFyLWhlYWRlciI+CiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhYi1iYXItdGl0bGUiPlRlcm1pbmFsczwvc3Bhbj4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0YWItYmFyLWFjdGlvbnMiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGFiLWFjdGlvbiIgQGNsaWNrPSR7dGhpcy5oYW5kbGVBZGRUYWJ9IHRpdGxlPSJOZXcgVGVybWluYWwiPgogICAgICAgICAgICAgICAgICA8ZGVlcy1pY29uIC5pY29uPSR7Imx1Y2lkZTpwbHVzIn0gaWNvblNpemU9IjE0Ij48L2RlZXMtaWNvbj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRhYi1saXN0Ij4KICAgICAgICAgICAgICAke3RoaXMudGFicy5tYXAoeT0+U2AKICAgICAgICAgICAgICAgIDxkaXYKICAgICAgICAgICAgICAgICAgY2xhc3M9InRlcm1pbmFsLXRhYiAke3kuaWQ9PT10aGlzLmFjdGl2ZVRhYklkPyJhY3RpdmUiOiIifSAke3kuZXhpdGVkPyJleGl0ZWQiOiIifSIKICAgICAgICAgICAgICAgICAgQGNsaWNrPSR7KCk9PnRoaXMuc3dpdGNoVG9UYWIoeS5pZCl9CiAgICAgICAgICAgICAgICA+CiAgICAgICAgICAgICAgICAgIDxkZWVzLWljb24KICAgICAgICAgICAgICAgICAgICAuaWNvbj0ke3kuaWNvbk5hbWV9CiAgICAgICAgICAgICAgICAgICAgaWNvblNpemU9IjE0IgogICAgICAgICAgICAgICAgICAgIGNsYXNzPSJ0YWItaWNvbiAke3kucHJvY2VzcyYmIXkuZXhpdGVkPyJydW5uaW5nIjoiIn0iCiAgICAgICAgICAgICAgICAgID48L2RlZXMtaWNvbj4KICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InRhYi1sYWJlbCI+JHt5LmxhYmVsfTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgJHt5LmV4aXRlZD9TYAogICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJleGl0LWJhZGdlICR7eS5leGl0Q29kZT09PTA/InN1Y2Nlc3MiOiJlcnJvciJ9Ij4KICAgICAgICAgICAgICAgICAgICAgICR7eS5leGl0Q29kZX0KICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgICAgIGA6IiJ9CiAgICAgICAgICAgICAgICAgICR7eS5jbG9zZWFibGU/U2AKICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idGFiLWNsb3NlIiBAY2xpY2s9JHtFPT50aGlzLmhhbmRsZVRhYkNsb3NlKEUseS5pZCl9PgogICAgICAgICAgICAgICAgICAgICAgPGRlZXMtaWNvbiAuaWNvbj0keyJsdWNpZGU6eCJ9IGljb25TaXplPSIxMiI+PC9kZWVzLWljb24+CiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgICBgOiIifQogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgYCl9CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgYDoiIn0KICAgICAgPC9kaXY+CiAgICBgfWFzeW5jIGZpcnN0VXBkYXRlZCgpe2xldCB6PWF3YWl0IHRoaXMuZG9tdG9vbHNQcm9taXNlO3RoaXMuaXNCcmlnaHQ9ei50aGVtZU1hbmFnZXIuZ29CcmlnaHRCb29sZWFuLHRoaXMudGVybWluYWxUaGVtZVN1YnNjcmlwdGlvbj16LnRoZW1lTWFuYWdlci50aGVtZU9ic2VydmFibGUuc3Vic2NyaWJlKFA9Pnt0aGlzLmlzQnJpZ2h0PVAsdGhpcy50YWJNYW5hZ2VyLnVwZGF0ZUFsbFRoZW1lcyhQKX0pO2xldCB5PXgxLmdldEluc3RhbmNlKCksW0UsX109YXdhaXQgUHJvbWlzZS5hbGwoW3kubG9hZFh0ZXJtKCkseS5sb2FkWHRlcm1GaXRBZGRvbigpXSk7dGhpcy50YWJNYW5hZ2VyLnNldFh0ZXJtTW9kdWxlcyhFLF8pLGF3YWl0IHRoaXMuY3JlYXRlU2hlbGxUYWIoKX1hc3luYyBjb25uZWN0ZWRDYWxsYmFjaygpe2F3YWl0IHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCl9YXN5bmMgZGlzY29ubmVjdGVkQ2FsbGJhY2soKXtsZXQgej10aGlzLnNoYWRvd1Jvb3Q/LmdldEVsZW1lbnRCeUlkKCJhY3RpdmUtdGVybWluYWwtY29udGFpbmVyIik7eiYmdGhpcy5yZXNpemVPYnNlcnZlci51bm9ic2VydmUoeiksdGhpcy50ZXJtaW5hbFRoZW1lU3Vic2NyaXB0aW9uJiYodGhpcy50ZXJtaW5hbFRoZW1lU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCksdGhpcy50ZXJtaW5hbFRoZW1lU3Vic2NyaXB0aW9uPW51bGwpLHRoaXMudGFiTWFuYWdlci5kaXNwb3NlQWxsKCksYXdhaXQgc3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKX1hc3luYyBoYW5kbGVBZGRUYWIoKXthd2FpdCB0aGlzLmNyZWF0ZVNoZWxsVGFiKCl9aGFuZGxlVGFiQ2xvc2Uoeix5KXt6LnN0b3BQcm9wYWdhdGlvbigpLHRoaXMuY2xvc2VUYWIoeSl9c3dpdGNoVG9UYWIoeil7aWYoej09PXRoaXMuYWN0aXZlVGFiSWQpcmV0dXJuO2xldCB5PXRoaXMudGFiTWFuYWdlci5nZXRUYWIoeik7aWYoIXkpcmV0dXJuO2xldCBFPXRoaXMuYWN0aXZlVGFiSWQ7dGhpcy5hY3RpdmVUYWJJZCYmdGhpcy5kZXRhY2hBY3RpdmVUZXJtaW5hbCgpLHRoaXMuYWN0aXZlVGFiSWQ9eix0aGlzLnRhYnM9dGhpcy50YWJNYW5hZ2VyLmdldEFsbFRhYnMoKSx0aGlzLnVwZGF0ZUNvbXBsZXRlLnRoZW4oKCk9Pnt0aGlzLmF0dGFjaFRlcm1pbmFsVG9Db250YWluZXIoeSksdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgidGFiLXN3aXRjaGVkIix7YnViYmxlczohMCxjb21wb3NlZDohMCxkZXRhaWw6e3RhYklkOnoscHJldmlvdXNUYWJJZDpFfX0pKX0pfWRldGFjaEFjdGl2ZVRlcm1pbmFsKCl7bGV0IHo9dGhpcy5zaGFkb3dSb290Py5nZXRFbGVtZW50QnlJZCgiYWN0aXZlLXRlcm1pbmFsLWNvbnRhaW5lciIpO3omJih6LmlubmVySFRNTD0iIil9YXR0YWNoVGVybWluYWxUb0NvbnRhaW5lcih6KXtsZXQgeT10aGlzLnNoYWRvd1Jvb3Q/LmdldEVsZW1lbnRCeUlkKCJhY3RpdmUtdGVybWluYWwtY29udGFpbmVyIik7eSYmKHRoaXMucmVzaXplT2JzZXJ2ZXIub2JzZXJ2ZSh5KSx5LmlubmVySFRNTD0iIix6LnRlcm1pbmFsLm9wZW4oeSksei5maXRBZGRvbi5maXQoKSx6LnRlcm1pbmFsLmZvY3VzKCkpfWhhbmRsZVJlc2l6ZSgpe2lmKHRoaXMuYWN0aXZlVGFiSWQpe2xldCB6PXRoaXMudGFiTWFuYWdlci5nZXRUYWIodGhpcy5hY3RpdmVUYWJJZCk7eiYmei5maXRBZGRvbi5maXQoKX19YXN5bmMgc3Bhd25Qcm9jZXNzRm9yVGFiKHoseSxFPVtdKXtpZighdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudCl7ei50ZXJtaW5hbC53cml0ZSgiXHgxQlszMW0iKSx6LnRlcm1pbmFsLndyaXRlKGBcdTI3NEMgTm8gZXhlY3V0aW9uIGVudmlyb25tZW50IGF2YWlsYWJsZS5ccgpgKSx6LnRlcm1pbmFsLndyaXRlKCJceDFCWzBtIik7cmV0dXJufXRyeXt0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50LnJlYWR5fHwoei50ZXJtaW5hbC53cml0ZShgSW5pdGlhbGl6aW5nIGVudmlyb25tZW50Li4uXHIKYCksYXdhaXQgdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudC5pbml0KCkpO2xldCBfPWF3YWl0IHRoaXMuZXhlY3V0aW9uRW52aXJvbm1lbnQuc3Bhd24oeSxFKTtfLm91dHB1dC5waXBlVG8obmV3IFdyaXRhYmxlU3RyZWFtKHt3cml0ZTpWPT57ei50ZXJtaW5hbC53cml0ZShWKX19KSk7bGV0IFA9Xy5pbnB1dC5nZXRXcml0ZXIoKTt6LnRlcm1pbmFsLm9uRGF0YShWPT57UC53cml0ZShWKX0pLHRoaXMudGFiTWFuYWdlci5zZXRUYWJQcm9jZXNzKHouaWQsXyxQKSx0aGlzLnRhYnM9dGhpcy50YWJNYW5hZ2VyLmdldEFsbFRhYnMoKSxfLmV4aXQudGhlbihWPT57dGhpcy5oYW5kbGVQcm9jZXNzRXhpdCh6LmlkLFYpfSl9Y2F0Y2goXyl7ei50ZXJtaW5hbC53cml0ZSgiXHgxQlszMW0iKSx6LnRlcm1pbmFsLndyaXRlKGBcdTI3NEMgRmFpbGVkIHRvIHNwYXduIHByb2Nlc3M6ICR7X31ccgpgKSx6LnRlcm1pbmFsLndyaXRlKCJceDFCWzBtIiksY29uc29sZS5lcnJvcigiRmFpbGVkIHRvIHNwYXduIHByb2Nlc3M6IixfKX19aGFuZGxlUHJvY2Vzc0V4aXQoeix5KXtsZXQgRT10aGlzLnRhYk1hbmFnZXIuZ2V0VGFiKHopO2lmKCFFKXJldHVybjt0aGlzLnRhYk1hbmFnZXIubWFya1RhYkV4aXRlZCh6LHkpO2xldCBfPXk9PT0wP2BccgpceDFCWzMybVtQcm9jZXNzIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHldXHgxQlswbVxyCmA6YFxyClx4MUJbMzFtW1Byb2Nlc3MgZXhpdGVkIHdpdGggY29kZSAke3l9XVx4MUJbMG1ccgpgO0UudGVybWluYWwud3JpdGUoXyksdGhpcy50YWJzPXRoaXMudGFiTWFuYWdlci5nZXRBbGxUYWJzKCksdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgicHJvY2Vzcy1jb21wbGV0ZSIse2J1YmJsZXM6ITAsY29tcG9zZWQ6ITAsZGV0YWlsOnt0YWJJZDp6LGV4aXRDb2RlOnl9fSkpLEUuY2xvc2VhYmxlJiZ0aGlzLnNob3dFeGl0ZWRUYWJBY3Rpb25iYXIoeixFLmxhYmVsLHkpfWFzeW5jIHNob3dFeGl0ZWRUYWJBY3Rpb25iYXIoeix5LEUpe2xldCBfPUU9PT0wOyhhd2FpdCB0aGlzLnNob3dBY3Rpb25iYXIoe21lc3NhZ2U6Xz9gIiR7eX0iIGNvbXBsZXRlZC4gQ2xvc2UgdGFiP2A6YCIke3l9IiBleGl0ZWQgKGNvZGUgJHtFfSkuIENsb3NlIHRhYj9gLHR5cGU6Xz8iaW5mbyI6Indhcm5pbmciLGljb246Xz8ibHVjaWRlOmNoZWNrQ2lyY2xlIjoibHVjaWRlOmFsZXJ0VHJpYW5nbGUiLGFjdGlvbnM6W3tpZDoiY2xvc2UiLGxhYmVsOiJDbG9zZSBUYWIiLHByaW1hcnk6ITB9LHtpZDoia2VlcCIsbGFiZWw6IktlZXAgT3BlbiJ9XSx0aW1lb3V0OntkdXJhdGlvbjoxZTQsZGVmYXVsdEFjdGlvbklkOiJjbG9zZSJ9LGRpc21pc3NpYmxlOiEwfSkpLmFjdGlvbklkPT09ImNsb3NlIiYmdGhpcy5jbG9zZVRhYih6KX1hc3luYyBjcmVhdGVTaGVsbFRhYih6KXtsZXQgeT10aGlzLnRhYk1hbmFnZXIuY3JlYXRlVGFiKHt0eXBlOiJzaGVsbCIsbGFiZWw6enx8YGJhc2ggJHt0aGlzLnRhYk1hbmFnZXIuZ2V0VGFiQ291bnQoKSsxfWAsY2xvc2VhYmxlOnRoaXMudGFiTWFuYWdlci5nZXRUYWJDb3VudCgpPjB9LHRoaXMuaXNCcmlnaHQpO3JldHVybiB0aGlzLnRhYnM9dGhpcy50YWJNYW5hZ2VyLmdldEFsbFRhYnMoKSx0aGlzLnN3aXRjaFRvVGFiKHkuaWQpLGF3YWl0IHRoaXMudXBkYXRlQ29tcGxldGUsYXdhaXQgdGhpcy5zcGF3blByb2Nlc3NGb3JUYWIoeSwianNoIiksdGhpcy50YWJNYW5hZ2VyLmdldFRhYkNvdW50KCk9PT0xJiZ0aGlzLnNldHVwQ29tbWFuZCYmKGF3YWl0IHRoaXMud2FpdEZvclByb21wdCh5LnRlcm1pbmFsLCJ+LyIpLHkuaW5wdXRXcml0ZXImJnkuaW5wdXRXcml0ZXIud3JpdGUodGhpcy5zZXR1cENvbW1hbmQpKSx0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJ0YWItY3JlYXRlZCIse2J1YmJsZXM6ITAsY29tcG9zZWQ6ITAsZGV0YWlsOnt0YWJJZDp5LmlkfX0pKSx5LmlkfWFzeW5jIGNyZWF0ZVByb2Nlc3NUYWIoeil7bGV0IHk9dGhpcy50YWJNYW5hZ2VyLmNyZWF0ZVRhYih6LHRoaXMuaXNCcmlnaHQpO3JldHVybiB0aGlzLnRhYnM9dGhpcy50YWJNYW5hZ2VyLmdldEFsbFRhYnMoKSx6LnN3aXRjaFRvVGFiIT09ITEmJnRoaXMuc3dpdGNoVG9UYWIoeS5pZCksYXdhaXQgdGhpcy51cGRhdGVDb21wbGV0ZSx6LmNvbW1hbmQmJmF3YWl0IHRoaXMuc3Bhd25Qcm9jZXNzRm9yVGFiKHksei5jb21tYW5kLHouYXJncyksdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgidGFiLWNyZWF0ZWQiLHtidWJibGVzOiEwLGNvbXBvc2VkOiEwLGRldGFpbDp7dGFiSWQ6eS5pZH19KSkseS5pZH1nZXRBY3RpdmVUYWIoKXtyZXR1cm4gdGhpcy5hY3RpdmVUYWJJZCYmdGhpcy50YWJNYW5hZ2VyLmdldFRhYih0aGlzLmFjdGl2ZVRhYklkKXx8bnVsbH1nZXRUYWJzKCl7cmV0dXJuIHRoaXMudGFiTWFuYWdlci5nZXRBbGxUYWJzKCl9c2VsZWN0VGFiKHope3JldHVybiB0aGlzLnRhYk1hbmFnZXIuaGFzVGFiKHopPyh0aGlzLnN3aXRjaFRvVGFiKHopLCEwKTohMX1jbG9zZVRhYih6KXtsZXQgeT10aGlzLnRhYk1hbmFnZXIuZ2V0VGFiKHopO2lmKCF5fHwheS5jbG9zZWFibGUpcmV0dXJuITE7aWYoej09PXRoaXMuYWN0aXZlVGFiSWQpe2xldCBFPXRoaXMudGFiTWFuYWdlci5nZXRBbGxUYWJzKCksXz1FLmZpbmRJbmRleChWPT5WLmlkPT09eiksUD1FW18rMV18fEVbXy0xXTtQP3RoaXMuc3dpdGNoVG9UYWIoUC5pZCk6KHRoaXMuYWN0aXZlVGFiSWQ9bnVsbCx0aGlzLmRldGFjaEFjdGl2ZVRlcm1pbmFsKCkpfXJldHVybiB0aGlzLnRhYk1hbmFnZXIuY2xvc2VUYWIoeiksdGhpcy50YWJzPXRoaXMudGFiTWFuYWdlci5nZXRBbGxUYWJzKCksdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgidGFiLWNsb3NlZCIse2J1YmJsZXM6ITAsY29tcG9zZWQ6ITAsZGV0YWlsOnt0YWJJZDp6fX0pKSwhMH13cml0ZVRvVGFiKHoseSl7bGV0IEU9dGhpcy50YWJNYW5hZ2VyLmdldFRhYih6KTtyZXR1cm4gRT8oRS50ZXJtaW5hbC53cml0ZSh5KSwhMCk6ITF9c2VuZElucHV0VG9UYWIoeix5KXtsZXQgRT10aGlzLnRhYk1hbmFnZXIuZ2V0VGFiKHopO3JldHVybiFFfHwhRS5pbnB1dFdyaXRlcj8hMTooRS5pbnB1dFdyaXRlci53cml0ZSh5KSwhMCl9YXN5bmMgc2hvd0FjdGlvbmJhcih6KXtyZXR1cm4gdGhpcy50ZXJtaW5hbEFjdGlvbmJhcnx8KHRoaXMudGVybWluYWxBY3Rpb25iYXI9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCJkZWVzLWFjdGlvbmJhciIpKSx0aGlzLnRlcm1pbmFsQWN0aW9uYmFyPy5zaG93KHopfWFzeW5jIHdhaXRGb3JQcm9tcHQoeix5KXtyZXR1cm4gbmV3IFByb21pc2UoRT0+e2xldCBfPSgpPT57bGV0IFA9ei5idWZmZXIuYWN0aXZlO2ZvcihsZXQgVj0wO1Y8UC5sZW5ndGg7VisrKXtsZXQgSD1QLmdldExpbmUoVik7aWYoSCYmSC50cmFuc2xhdGVUb1N0cmluZygpLmluY2x1ZGVzKHkpKXtzZXRUaW1lb3V0KCgpPT57RSgpfSwxMDApO3JldHVybn19c2V0VGltZW91dChfLDEwMCl9O18oKX0pfWFzeW5jIHNldEVudmlyb25tZW50VmFyaWFibGVzKHope2lmKCF0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50KXRocm93IG5ldyBFcnJvcigiTm8gZXhlY3V0aW9uIGVudmlyb25tZW50IGF2YWlsYWJsZSIpO2xldCB5PSIiO2ZvcihsZXQgRSBpbiB6KXkrPWBleHBvcnQgJHtFfT0iJHt6W0VdfSIKYDthd2FpdCB0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50LndyaXRlRmlsZSgiL3NvdXJjZS5lbnYiLHkpfWdldEV4ZWN1dGlvbkVudmlyb25tZW50KCl7cmV0dXJuIHRoaXMuZXhlY3V0aW9uRW52aXJvbm1lbnR9c3RhdGlje2tvKGEscil9fTtyZXR1cm4gQj1hfSkoKX0pO3ZhciBJMHQsTjB0LFp2YSxYdmEsUXZhLGtScixTUnI9bCgoKT0+e1NlKCk7VTkoKTtzMygpO2tsZSgpO1BsZSgpO0FsZSgpO1Q4KCk7dGNlKCk7STB0PWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sTjB0PWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSxadmE9KCgpPT57bGV0IGU9W3plKCJkZW1vLXZpZXctZGFzaGJvYXJkIildLHQscj1bXSxhLGk9RGU7dmFyIG89Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCBuPXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO0kwdChudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTpufSxudWxsLHIpLG89YT10LnZhbHVlLG4mJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6bn0pfXN0YXRpYyBzdHlsZXM9W20uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgOmhvc3QgewogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIHBhZGRpbmc6IDQwcHg7CiAgICAgIH0KICAgICAgaDEgewogICAgICAgIG1hcmdpbjogMCAwIDIwcHggMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwMDAiLCIjZmZmIil9OwogICAgICB9CiAgICAgIGRlZXMtc3RhdHNncmlkIHsKICAgICAgICBtYXJnaW4tdG9wOiAyMHB4OwogICAgICB9CiAgICBgXTtzdGF0c1RpbGVzPVt7aWQ6InVzZXJzIix0aXRsZToiQWN0aXZlIFVzZXJzIix2YWx1ZToxMjM0LHR5cGU6Im51bWJlciIsaWNvbjoiZmFVc2VycyIsZGVzY3JpcHRpb246IisxNSUgZnJvbSBsYXN0IHdlZWsiLGNvbG9yOiIjMjJjNTVlIn0se2lkOiJwYWdldmlld3MiLHRpdGxlOiJQYWdlIFZpZXdzIix2YWx1ZTo1NjcwMCx0eXBlOiJudW1iZXIiLGljb246ImZhRXllIixkZXNjcmlwdGlvbjoiNTYuN2sgdG90YWwgdmlld3MiLGNvbG9yOiIjM2I4MmY2In0se2lkOiJ1cHRpbWUiLHRpdGxlOiJTeXN0ZW0gVXB0aW1lIix2YWx1ZTo4OSx1bml0OiIlIix0eXBlOiJnYXVnZSIsaWNvbjoiZmFTZXJ2ZXIiLGRlc2NyaXB0aW9uOiJMYXN0IDMwIGRheXMiLGNvbG9yOiIjMTBiOTgxIixnYXVnZU9wdGlvbnM6e21pbjowLG1heDoxMDAsdGhyZXNob2xkczpbe3ZhbHVlOjgwLGNvbG9yOiIjZWY0NDQ0In0se3ZhbHVlOjkwLGNvbG9yOiIjZjU5ZTBiIn0se3ZhbHVlOjEwMCxjb2xvcjoiIzEwYjk4MSJ9XX19LHtpZDoicmVzcG9uc2UiLHRpdGxlOiJBdmcgUmVzcG9uc2UgVGltZSIsdmFsdWU6My4yLHVuaXQ6InMiLHR5cGU6Im51bWJlciIsaWNvbjoiZmFDbG9jayIsZGVzY3JpcHRpb246Ii0wLjVzIGltcHJvdmVtZW50Iixjb2xvcjoiI2Y1OWUwYiJ9LHtpZDoicmV2ZW51ZSIsdGl0bGU6Ik1vbnRobHkgUmV2ZW51ZSIsdmFsdWU6NDg1MjAsdW5pdDoiJCIsdHlwZToidHJlbmQiLGljb246ImZhRG9sbGFyU2lnbiIsZGVzY3JpcHRpb246Iis4LjIlIGdyb3d0aCIsY29sb3I6IiMyMmM1NWUiLHRyZW5kRGF0YTpbMzVlMywzOGUzLDM3NTAwLDQxZTMsMzk4MDAsNDJlMyw0NDEwMCw0MzIwMCw0NTYwMCw0NzEwMCw0NjgwMCw0ODUyMF19LHtpZDoidHJhZmZpYyIsdGl0bGU6IlRyYWZmaWMgVHJlbmQiLHZhbHVlOjE2ODAsdHlwZToidHJlbmQiLGljb246ImZhQ2hhcnRMaW5lIixkZXNjcmlwdGlvbjoiTGFzdCA3IGRheXMiLGNvbG9yOiIjM2I4MmY2Iix0cmVuZERhdGE6WzEyMDAsMTM1MCwxMTAwLDE0NTAsMTYwMCwxNTUwLDE2ODBdfV07cmVuZGVyKCl7cmV0dXJuIFNgCiAgICAgIDxoMT5EYXNoYm9hcmQ8L2gxPgogICAgICA8cD5XZWxjb21lIHRvIHlvdXIgYXBwbGljYXRpb24gZGFzaGJvYXJkLiBIZXJlJ3MgYW4gb3ZlcnZpZXcgb2YgeW91ciBtZXRyaWNzOjwvcD4KICAgICAgPGRlZXMtc3RhdHNncmlkCiAgICAgICAgLnRpbGVzPSR7dGhpcy5zdGF0c1RpbGVzfQogICAgICAgIEB0aWxlLWFjdGlvbj0ke249Pntjb25zb2xlLmxvZygiVGlsZSBhY3Rpb246IixuLmRldGFpbCl9fQogICAgICA+PC9kZWVzLXN0YXRzZ3JpZD4KICAgIGB9c3RhdGlje04wdChhLHIpfX07cmV0dXJuIG89YX0pKCksWHZhPSgoKT0+e2xldCBlPVt6ZSgiZGVtby12aWV3LWFuYWx5dGljcyIpXSx0LHI9W10sYSxpPURlO3ZhciBvPWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgbj10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtJMHQobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6bn0sbnVsbCxyKSxvPWE9dC52YWx1ZSxuJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOm59KX1zdGF0aWMgc3R5bGVzPVttLmRlZmF1bHRTdHlsZXMsbGVgCiAgICAgIDpob3N0IHsKICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICBwYWRkaW5nOiA0MHB4OwogICAgICB9CiAgICAgIGgxIHsKICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDA7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMDAwIiwiI2ZmZiIpfTsKICAgICAgfQogICAgYF07cmVuZGVyKCl7cmV0dXJuIFNgCiAgICAgIDxoMT5BbmFseXRpY3M8L2gxPgogICAgICA8cD5UaGlzIGlzIHRoZSBhbmFseXRpY3Mgdmlldy4gWW91IGNhbiBhZGQgY2hhcnRzIGFuZCBtZXRyaWNzIGhlcmUuPC9wPgogICAgYH1zdGF0aWN7TjB0KGEscil9fTtyZXR1cm4gbz1hfSkoKSxRdmE9KCgpPT57bGV0IGU9W3plKCJkZW1vLXZpZXctc2V0dGluZ3MiKV0sdCxyPVtdLGEsaT1EZTt2YXIgbz1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IG49dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7STB0KG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOm59LG51bGwsciksbz1hPXQudmFsdWUsbiYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpufSl9c3RhdGljIHN0eWxlcz1bbS5kZWZhdWx0U3R5bGVzLGxlYAogICAgICA6aG9zdCB7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgcGFkZGluZzogNDBweDsKICAgICAgfQogICAgICBoMSB7CiAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzAwMCIsIiNmZmYiKX07CiAgICAgIH0KICAgICAgLnNldHRpbmdzLXNlY3Rpb24gewogICAgICAgIG1hcmdpbi10b3A6IDMwcHg7CiAgICAgIH0KICAgICAgLnNldHRpbmdzLXNlY3Rpb24gaDIgewogICAgICAgIGZvbnQtc2l6ZTogMThweDsKICAgICAgICBtYXJnaW46IDAgMCAxNXB4IDA7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMzMzIiwiI2NjYyIpfTsKICAgICAgfQogICAgICAuaG9yaXpvbnRhbC1mb3JtLXNlY3Rpb24gewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjVmNWY1IiwiIzFhMWExYSIpfTsKICAgICAgICBwYWRkaW5nOiAyMHB4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgICBtYXJnaW46IDE1cHggMDsKICAgICAgfQogICAgYF07cmVuZGVyKCl7cmV0dXJuIFNgCiAgICAgIDxoMT5TZXR0aW5nczwvaDE+CiAgICAgIDxwPkNvbmZpZ3VyZSB5b3VyIGFwcGxpY2F0aW9uIHNldHRpbmdzIGJlbG93OjwvcD4KICAgICAgCiAgICAgIDxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24iPgogICAgICAgIDxoMj5HZW5lcmFsIFNldHRpbmdzPC9oMj4KICAgICAgICA8ZGVlcy1mb3JtPgogICAgICAgICAgPGRlZXMtaW5wdXQtdGV4dCBrZXk9ImFwcE5hbWUiIGxhYmVsPSJBcHBsaWNhdGlvbiBOYW1lIiB2YWx1ZT0iTXkgQXBwIj48L2RlZXMtaW5wdXQtdGV4dD4KICAgICAgICAgIDxkZWVzLWlucHV0LXRleHQga2V5PSJhcGlFbmRwb2ludCIgbGFiZWw9IkFQSSBFbmRwb2ludCIgdmFsdWU9Imh0dHBzOi8vYXBpLmV4YW1wbGUuY29tIj48L2RlZXMtaW5wdXQtdGV4dD4KICAgICAgICAgIDxkZWVzLWlucHV0LWRyb3Bkb3duCiAgICAgICAgICAgIGtleT0iZW52aXJvbm1lbnQiCiAgICAgICAgICAgIGxhYmVsPSJFbnZpcm9ubWVudCIKICAgICAgICAgICAgLm9wdGlvbnM9JHtbe29wdGlvbjoiRGV2ZWxvcG1lbnQiLGtleToiZGV2In0se29wdGlvbjoiU3RhZ2luZyIsa2V5OiJzdGFnaW5nIn0se29wdGlvbjoiUHJvZHVjdGlvbiIsa2V5OiJwcm9kIn1dfQogICAgICAgICAgICAuc2VsZWN0ZWRPcHRpb249JHt7b3B0aW9uOiJQcm9kdWN0aW9uIixrZXk6InByb2QifX0KICAgICAgICAgID48L2RlZXMtaW5wdXQtZHJvcGRvd24+CiAgICAgICAgICA8ZGVlcy1pbnB1dC1jaGVja2JveCBrZXk9ImVuYWJsZU5vdGlmaWNhdGlvbnMiIGxhYmVsPSJFbmFibGUgTm90aWZpY2F0aW9ucyIgdmFsdWU9InRydWUiPjwvZGVlcy1pbnB1dC1jaGVja2JveD4KICAgICAgICAgIDxkZWVzLWlucHV0LWNoZWNrYm94IGtleT0iZW5hYmxlQW5hbHl0aWNzIiBsYWJlbD0iRW5hYmxlIEFuYWx5dGljcyIgdmFsdWU9ImZhbHNlIj48L2RlZXMtaW5wdXQtY2hlY2tib3g+CiAgICAgICAgICA8ZGVlcy1mb3JtLXN1Ym1pdD5TYXZlIEdlbmVyYWwgU2V0dGluZ3M8L2RlZXMtZm9ybS1zdWJtaXQ+CiAgICAgICAgPC9kZWVzLWZvcm0+CiAgICAgIDwvZGl2PgogICAgICAKICAgICAgPGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbiI+CiAgICAgICAgPGgyPkRpc3BsYXkgUHJlZmVyZW5jZXM8L2gyPgogICAgICAgIDxkaXYgY2xhc3M9Imhvcml6b250YWwtZm9ybS1zZWN0aW9uIj4KICAgICAgICAgIDxwIHN0eWxlPSJtYXJnaW4tdG9wOiAwOyBtYXJnaW4tYm90dG9tOiAxNnB4OyI+UXVpY2sgZGlzcGxheSBzZXR0aW5ncyB1c2luZyBob3Jpem9udGFsIGxheW91dDo8L3A+CiAgICAgICAgICA8ZGVlcy1mb3JtIGhvcml6b250YWwtbGF5b3V0PgogICAgICAgICAgICA8ZGVlcy1pbnB1dC1kcm9wZG93bgogICAgICAgICAgICAgIGtleT0idGhlbWUiCiAgICAgICAgICAgICAgbGFiZWw9IlRoZW1lIgogICAgICAgICAgICAgIC5lbmFibGVTZWFyY2g9JHshMX0KICAgICAgICAgICAgICAub3B0aW9ucz0ke1t7b3B0aW9uOiJMaWdodCIsa2V5OiJsaWdodCJ9LHtvcHRpb246IkRhcmsiLGtleToiZGFyayJ9LHtvcHRpb246IkF1dG8iLGtleToiYXV0byJ9XX0KICAgICAgICAgICAgICAuc2VsZWN0ZWRPcHRpb249JHt7b3B0aW9uOiJEYXJrIixrZXk6ImRhcmsifX0KICAgICAgICAgICAgPjwvZGVlcy1pbnB1dC1kcm9wZG93bj4KICAgICAgICAgICAgPGRlZXMtaW5wdXQtZHJvcGRvd24KICAgICAgICAgICAgICBrZXk9Imxhbmd1YWdlIgogICAgICAgICAgICAgIGxhYmVsPSJMYW5ndWFnZSIKICAgICAgICAgICAgICAuZW5hYmxlU2VhcmNoPSR7ITF9CiAgICAgICAgICAgICAgLm9wdGlvbnM9JHtbe29wdGlvbjoiRW5nbGlzaCIsa2V5OiJlbiJ9LHtvcHRpb246Ikdlcm1hbiIsa2V5OiJkZSJ9LHtvcHRpb246IlNwYW5pc2giLGtleToiZXMifSx7b3B0aW9uOiJGcmVuY2giLGtleToiZnIifV19CiAgICAgICAgICAgICAgLnNlbGVjdGVkT3B0aW9uPSR7e29wdGlvbjoiRW5nbGlzaCIsa2V5OiJlbiJ9fQogICAgICAgICAgICA+PC9kZWVzLWlucHV0LWRyb3Bkb3duPgogICAgICAgICAgICA8ZGVlcy1pbnB1dC1jaGVja2JveCBrZXk9ImNvbXBhY3RNb2RlIiBsYWJlbD0iQ29tcGFjdCBNb2RlIj48L2RlZXMtaW5wdXQtY2hlY2tib3g+CiAgICAgICAgICA8L2RlZXMtZm9ybT4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICAgIAogICAgICA8ZGl2IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uIj4KICAgICAgICA8aDI+Tm90aWZpY2F0aW9uIFNldHRpbmdzPC9oMj4KICAgICAgICA8ZGVlcy1mb3JtPgogICAgICAgICAgPGRlZXMtaW5wdXQtcmFkaW9ncm91cAogICAgICAgICAgICAubGFiZWw9JHsiRW1haWwgRnJlcXVlbmN5In0KICAgICAgICAgICAgLm9wdGlvbnM9JHtbIlJlYWwtdGltZSIsIkRhaWx5IERpZ2VzdCIsIldlZWtseSBTdW1tYXJ5IiwiTmV2ZXIiXX0KICAgICAgICAgICAgLnNlbGVjdGVkT3B0aW9uPSR7IlJlYWwtdGltZSJ9CiAgICAgICAgICAgIC5rZXk9JHsiZW1haWxGcmVxdWVuY3kifQogICAgICAgICAgPjwvZGVlcy1pbnB1dC1yYWRpb2dyb3VwPgogICAgICAgICAgPGRlZXMtaW5wdXQtY2hlY2tib3gga2V5PSJwdXNoTm90aWZpY2F0aW9ucyIgbGFiZWw9IkVuYWJsZSBQdXNoIE5vdGlmaWNhdGlvbnMiIHZhbHVlPSJ0cnVlIj48L2RlZXMtaW5wdXQtY2hlY2tib3g+CiAgICAgICAgICA8ZGVlcy1pbnB1dC1jaGVja2JveCBrZXk9InNvdW5kQWxlcnRzIiBsYWJlbD0iUGxheSBTb3VuZCBmb3IgQWxlcnRzIiB2YWx1ZT0idHJ1ZSI+PC9kZWVzLWlucHV0LWNoZWNrYm94PgogICAgICAgICAgPGRlZXMtZm9ybS1zdWJtaXQ+VXBkYXRlIE5vdGlmaWNhdGlvbnM8L2RlZXMtZm9ybS1zdWJtaXQ+CiAgICAgICAgPC9kZWVzLWZvcm0+CiAgICAgIDwvZGl2PgogICAgYH1zdGF0aWN7TjB0KGEscil9fTtyZXR1cm4gbz1hfSkoKSxrUnI9KCk9PlNgCiAgPHN0eWxlPgogICAgYm9keSB7CiAgICAgIG1hcmdpbjogMDsKICAgICAgcGFkZGluZzogMDsKICAgIH0KICAgIC5kZW1vLWNvbnRhaW5lciB7CiAgICAgIHdpZHRoOiAxMDAlOwogICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgdG9wOiAwOwogICAgICBsZWZ0OiAwOwogICAgfQogIDwvc3R5bGU+CiAgPGRpdiBjbGFzcz0iZGVtby1jb250YWluZXIiPgogICAgPGRlZXMtc2ltcGxlLWFwcGRhc2gKICAgICAgbmFtZT0iTXkgQXBwbGljYXRpb24iCiAgICAgIHRlcm1pbmFsU2V0dXBDb21tYW5kPSJlY2hvICdXZWxjb21lIHRvIHRoZSB0ZXJtaW5hbCEnIgogICAgICAudmlld1RhYnM9JHtbe25hbWU6IkRhc2hib2FyZCIsaWNvbk5hbWU6Imx1Y2lkZTpob21lIixlbGVtZW50Olp2YX0se25hbWU6IkFuYWx5dGljcyIsaWNvbk5hbWU6Imx1Y2lkZTpsaW5lQ2hhcnQiLGVsZW1lbnQ6WHZhfSx7bmFtZToiU2V0dGluZ3MiLGljb25OYW1lOiJsdWNpZGU6c2V0dGluZ3MiLGVsZW1lbnQ6UXZhfV19CiAgICAgIEBsb2dvdXQ9JHsoKT0+e2NvbnNvbGUubG9nKCJMb2dvdXQgZXZlbnQgdHJpZ2dlcmVkIiksYWxlcnQoIkxvZ291dCBjbGlja2VkISIpfX0KICAgICAgQHZpZXctc2VsZWN0PSR7ZT0+e2NvbnNvbGUubG9nKCJWaWV3IHNlbGVjdGVkOiIsZS5kZXRhaWwudmlldy5uYW1lKX19CiAgICA+PC9kZWVzLXNpbXBsZS1hcHBkYXNoPgogIDwvZGl2PgpgfSk7dmFyIFhaLFpjLHpScixDUnI9bCgoKT0+e1NScigpO1NlKCk7YnIoKTtvdCgpO1haPWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sWmM9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LHpScj0oKCk9PntsZXQgZT1bemUoImRlZXMtc2ltcGxlLWFwcGRhc2giKV0sdCxyPVtdLGEsaT1EZSxvLG49W10scz1bXSxjLGQ9W10sZj1bXSx1LHA9W10saD1bXSxiLHg9W10sZz1bXTt2YXIgdj1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IHc9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baigpXSxjPVtqKHt0eXBlOkFycmF5fSldLHU9W2ooe3R5cGU6U3RyaW5nfSldLGI9W3JlKCldLFhaKHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibmFtZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6TT0+Im5hbWUiaW4gTSxnZXQ6TT0+TS5uYW1lLHNldDooTSxGKT0+e00ubmFtZT1GfX0sbWV0YWRhdGE6d30sbixzKSxYWih0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InZpZXdUYWJzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpNPT4idmlld1RhYnMiaW4gTSxnZXQ6TT0+TS52aWV3VGFicyxzZXQ6KE0sRik9PntNLnZpZXdUYWJzPUZ9fSxtZXRhZGF0YTp3fSxkLGYpLFhaKHRoaXMsbnVsbCx1LHtraW5kOiJhY2Nlc3NvciIsbmFtZToidGVybWluYWxTZXR1cENvbW1hbmQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOk09PiJ0ZXJtaW5hbFNldHVwQ29tbWFuZCJpbiBNLGdldDpNPT5NLnRlcm1pbmFsU2V0dXBDb21tYW5kLHNldDooTSxGKT0+e00udGVybWluYWxTZXR1cENvbW1hbmQ9Rn19LG1ldGFkYXRhOnd9LHAsaCksWFoodGhpcyxudWxsLGIse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzZWxlY3RlZFZpZXciLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOk09PiJzZWxlY3RlZFZpZXciaW4gTSxnZXQ6TT0+TS5zZWxlY3RlZFZpZXcsc2V0OihNLEYpPT57TS5zZWxlY3RlZFZpZXc9Rn19LG1ldGFkYXRhOnd9LHgsZyksWFoobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6d30sbnVsbCxyKSx2PWE9dC52YWx1ZSx3JiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnd9KX1zdGF0aWMgZGVtbz1rUnI7c3RhdGljIGRlbW9Hcm91cHM9WyJTaW1wbGUiXTsjZT1aYyh0aGlzLG4sIkFwcGxpY2F0aW9uIERhc2hib2FyZCIpO2dldCBuYW1lKCl7cmV0dXJuIHRoaXMuI2V9c2V0IG5hbWUodyl7dGhpcy4jZT13fSN0PShaYyh0aGlzLHMpLFpjKHRoaXMsZCxbXSkpO2dldCB2aWV3VGFicygpe3JldHVybiB0aGlzLiN0fXNldCB2aWV3VGFicyh3KXt0aGlzLiN0PXd9I3I9KFpjKHRoaXMsZiksWmModGhpcyxwLCdlY2hvICJUZXJtaW5hbCByZWFkeSInKSk7Z2V0IHRlcm1pbmFsU2V0dXBDb21tYW5kKCl7cmV0dXJuIHRoaXMuI3J9c2V0IHRlcm1pbmFsU2V0dXBDb21tYW5kKHcpe3RoaXMuI3I9d30jYT0oWmModGhpcyxoKSxaYyh0aGlzLHgsdm9pZCAwKSk7Z2V0IHNlbGVjdGVkVmlldygpe3JldHVybiB0aGlzLiNhfXNldCBzZWxlY3RlZFZpZXcodyl7dGhpcy4jYT13fXN0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgLyogVE9ETzogTWlncmF0ZSBoYXJkY29kZWQgdmFsdWVzIHRvIC0tZGVlcy0qIENTUyB2YXJpYWJsZXMgKi8KICAgICAgOmhvc3QgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTUlKSIsImhzbCgwIDAlIDkwJSkiKX07CiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICB9CgogICAgICAubWFpbmNvbnRhaW5lciB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHRvcDogMHB4OwogICAgICAgIGxlZnQ6IDBweDsKICAgICAgICByaWdodDogMHB4OwogICAgICAgIGJvdHRvbTogMHB4OwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgIH0KCiAgICAgIC5hcHBiYXIgewogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICB0b3A6IDBweDsKICAgICAgICBsZWZ0OiAwcHg7CiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyNHB4KTsKICAgICAgICB3aWR0aDogMjQwcHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk5JSkiLCJoc2woMCAwJSA3JSkiKX07CiAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgwIDAlIDkxJSkiLCJoc2woMCAwJSAxMyUpIil9OwogICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICBmb250LWZhbWlseTogJ0dlaXN0IFNhbnMnLCBzYW5zLXNlcmlmOwogICAgICAgIHotaW5kZXg6IDI7CiAgICAgICAgZGlzcGxheTogZ3JpZDsKICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gMWZyIG1pbi1jb250ZW50OwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgIH0KCiAgICAgIC5zaWRlYmFyLWhlYWRlciB7CiAgICAgICAgcGFkZGluZzogMjBweCAxNnB4OwogICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgOTElKSIsImhzbCgwIDAlIDEzJSkiKX07CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogMTJweDsKICAgICAgfQoKICAgICAgLmhlYWRlci1pY29uLXdyYXBwZXIgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICB3aWR0aDogMzZweDsKICAgICAgICBoZWlnaHQ6IDM2cHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgibGluZWFyLWdyYWRpZW50KDEzNWRlZywgaHNsKDIxNSAyMCUgOTUlKSAwJSwgaHNsKDIxNSAyMCUgOTAlKSAxMDAlKSIsImxpbmVhci1ncmFkaWVudCgxMzVkZWcsIGhzbCgyMTUgMjAlIDE4JSkgMCUsIGhzbCgyMTUgMjAlIDE0JSkgMTAwJSkiKX07CiAgICAgICAgYm94LXNoYWRvdzogJHttLmJkVGhlbWUoIjAgMXB4IDJweCByZ2IoMCAwIDAgLyAwLjA1KSwgaW5zZXQgMCAxcHggMCByZ2IoMjU1IDI1NSAyNTUgLyAwLjUpIiwiMCAxcHggMnB4IHJnYigwIDAgMCAvIDAuMiksIGluc2V0IDAgMXB4IDAgcmdiKDI1NSAyNTUgMjU1IC8gMC4wNSkiKX07CiAgICAgIH0KCiAgICAgIC5oZWFkZXItaWNvbi13cmFwcGVyIGRlZXMtaWNvbiB7CiAgICAgICAgZm9udC1zaXplOiAxOHB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxNSAyMCUgNDAlKSIsImhzbCgyMTUgMjAlIDcwJSkiKX07CiAgICAgIH0KCiAgICAgIC5hcHBOYW1lIHsKICAgICAgICBmb250LXNpemU6IDE1cHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDklKSIsImhzbCgwIDAlIDk4JSkiKX07CiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOwogICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMmVtOwogICAgICB9CgogICAgICAudmlld1RhYnMtY29udGFpbmVyIHsKICAgICAgICBvdmVyZmxvdy15OiBhdXRvOwogICAgICAgIHBhZGRpbmc6IDEycHggOHB4OwogICAgICAgIHNjcm9sbGJhci13aWR0aDogdGhpbjsKICAgICAgICBzY3JvbGxiYXItY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4NSUpIiwiaHNsKDAgMCUgMjAlKSIpfSB0cmFuc3BhcmVudDsKICAgICAgfQoKICAgICAgLnZpZXdUYWJzLWNvbnRhaW5lcjo6LXdlYmtpdC1zY3JvbGxiYXIgewogICAgICAgIHdpZHRoOiA2cHg7CiAgICAgIH0KCiAgICAgIC52aWV3VGFicy1jb250YWluZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgfQoKICAgICAgLnZpZXdUYWJzLWNvbnRhaW5lcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4NSUpIiwiaHNsKDAgMCUgMjAlKSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7CiAgICAgIH0KCiAgICAgIC52aWV3VGFicy1jb250YWluZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNzUlKSIsImhzbCgwIDAlIDMwJSkiKX07CiAgICAgIH0KCiAgICAgIC5zZWN0aW9uLWxhYmVsIHsKICAgICAgICBmb250LXNpemU6IDExcHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOwogICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA1MCUpIiwiaHNsKDAgMCUgNTAlKSIpfTsKICAgICAgICBwYWRkaW5nOiA4cHggMTJweCA4cHg7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4OwogICAgICB9CgogICAgICAudmlld1RhYnMgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBnYXA6IDJweDsKICAgICAgfQoKICAgICAgLnZpZXdUYWIgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDEwcHg7CiAgICAgICAgcGFkZGluZzogMTBweCAxMnB4OwogICAgICAgIGN1cnNvcjogZGVmYXVsdDsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDQwJSkiLCJoc2woMCAwJSA2NSUpIil9OwogICAgICAgIHVzZXItc2VsZWN0OiBub25lOwogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7CiAgICAgIH0KCiAgICAgIC52aWV3VGFiOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMCUgLyAwLjA0KSIsImhzbCgwIDAlIDEwMCUgLyAwLjA1KSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDE1JSkiLCJoc2woMCAwJSA5MCUpIil9OwogICAgICB9CgogICAgICAudmlld1RhYjphY3RpdmUgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAwJSAvIDAuMDYpIiwiaHNsKDAgMCUgMTAwJSAvIDAuMDcpIil9OwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC45OSk7CiAgICAgIH0KCiAgICAgIC52aWV3VGFiLnNlbGVjdGVkIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDIxNSAyNSUgOTUlKSIsImhzbCgyMTUgMjAlIDE1JSkiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMjE1IDI1JSAzMCUpIiwiaHNsKDIxNSAyNSUgODUlKSIpfTsKICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICB9CgogICAgICAudmlld1RhYi5zZWxlY3RlZDo6YmVmb3JlIHsKICAgICAgICBjb250ZW50OiAnJzsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgbGVmdDogMDsKICAgICAgICB0b3A6IDhweDsKICAgICAgICBib3R0b206IDhweDsKICAgICAgICB3aWR0aDogM3B4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMnB4IDJweCAwOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjE1IDcwJSA1MCUpIiwiaHNsKDIxNSA3MCUgNjAlKSIpfTsKICAgICAgfQoKICAgICAgLnZpZXdUYWIgZGVlcy1pY29uIHsKICAgICAgICBmb250LXNpemU6IDE2cHg7CiAgICAgICAgb3BhY2l0eTogMC41NTsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTsKICAgICAgfQoKICAgICAgLnZpZXdUYWI6aG92ZXIgZGVlcy1pY29uIHsKICAgICAgICBvcGFjaXR5OiAwLjc1OwogICAgICB9CgogICAgICAudmlld1RhYi5zZWxlY3RlZCBkZWVzLWljb24gewogICAgICAgIG9wYWNpdHk6IDAuOTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTUgNzAlIDQ1JSkiLCJoc2woMjE1IDcwJSA2NSUpIil9OwogICAgICB9CgogICAgICAudmlld1RhYiBzcGFuIHsKICAgICAgICBmbGV4OiAxOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7CiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKICAgICAgfQoKICAgICAgLmFwcEFjdGlvbnMgewogICAgICAgIHBhZGRpbmc6IDEycHggOHB4OwogICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgOTElKSIsImhzbCgwIDAlIDEzJSkiKX07CiAgICAgIH0KCiAgICAgIC5hY3Rpb24gewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDEwcHg7CiAgICAgICAgcGFkZGluZzogMTBweCAxMnB4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA0MCUpIiwiaHNsKDAgMCUgNjUlKSIpfTsKICAgICAgfQoKICAgICAgLmFjdGlvbjpob3ZlciB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDg0JSA2MCUgLyAwLjA4KSIsImhzbCgwIDg0JSA2MCUgLyAwLjEyKSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDg0JSA0NSUpIiwiaHNsKDAgODQlIDY1JSkiKX07CiAgICAgIH0KCiAgICAgIC5hY3Rpb24gZGVlcy1pY29uIHsKICAgICAgICBmb250LXNpemU6IDE2cHg7CiAgICAgICAgb3BhY2l0eTogMC42OwogICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOwogICAgICB9CgogICAgICAuYWN0aW9uOmhvdmVyIGRlZXMtaWNvbiB7CiAgICAgICAgb3BhY2l0eTogMC45OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgODQlIDQ1JSkiLCJoc2woMCA4NCUgNjUlKSIpfTsKICAgICAgfQoKICAgICAgLmFwcGNvbnRlbnQgewogICAgICAgIHotaW5kZXg6IDE7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHRvcDogMHB4OwogICAgICAgIHJpZ2h0OiAwcHg7CiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyNHB4KTsKICAgICAgICBib3R0b206IDI0cHg7CiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDI0MHB4KTsKICAgICAgICBvdmVyZmxvdzogYXV0bzsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOTclKSIsImhzbCgwIDAlIDUlKSIpfTsKICAgICAgICBvdmVyc2Nyb2xsLWJlaGF2aW9yOiBjb250YWluOwogICAgICB9CgogICAgICAuY29udHJvbGJhciB7CiAgICAgICAgY29sb3I6ICNmZmY7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIGJvdHRvbTogMHB4OwogICAgICAgIGxlZnQ6IDBweDsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBoZWlnaHQ6IDI0cHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMjAgMTMlIDE4JSkiLCJoc2woMjIwIDEzJSAxMiUpIil9OwogICAgICAgIHotaW5kZXg6IDI7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsKICAgICAgICBmb250LXNpemU6IDExcHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wMWVtOwogICAgICB9CgogICAgICAuY29udHJvbCB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogNnB4OwogICAgICAgIHBhZGRpbmc6IDAgMTJweDsKICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7CiAgICAgICAgY29sb3I6IGhzbCgwIDAlIDcwJSk7CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBoc2woMCAwJSAxMDAlIC8gMC4wOCk7CiAgICAgIH0KCiAgICAgIC5jb250cm9sOmZpcnN0LWNoaWxkIHsKICAgICAgICBib3JkZXItbGVmdDogbm9uZTsKICAgICAgfQoKICAgICAgLmNvbnRyb2w6aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6IGhzbCgwIDAlIDEwMCUgLyAwLjA2KTsKICAgICAgICBjb2xvcjogaHNsKDAgMCUgOTUlKTsKICAgICAgfQoKICAgICAgLmNvbnRyb2wgZGVlcy1pY29uIHsKICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgIH0KCiAgICAgIC5jb250cm9sLnN0YXR1cy1jb25uZWN0ZWQgZGVlcy1pY29uIHsKICAgICAgICBjb2xvcjogaHNsKDE0MiA3MCUgNTAlKTsKICAgICAgfQoKICAgICAgLmNvbnRyb2wuc3RhdHVzLXRlcm1pbmFsIGRlZXMtaWNvbiB7CiAgICAgICAgY29sb3I6IGhzbCg0NSA5MCUgNTUlKTsKICAgICAgfQogICAgYF07cmVuZGVyKCl7cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9Im1haW5jb250YWluZXIiPgogICAgICAgIDxkaXYgY2xhc3M9ImFwcGJhciI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJzaWRlYmFyLWhlYWRlciI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImhlYWRlci1pY29uLXdyYXBwZXIiPgogICAgICAgICAgICAgIDxkZWVzLWljb24gLmljb249IiR7Imx1Y2lkZTpsYXlvdXRHcmlkIn0iPjwvZGVlcy1pY29uPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXBwTmFtZSI+JHt0aGlzLm5hbWV9PC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9InZpZXdUYWJzLWNvbnRhaW5lciI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tbGFiZWwiPk5hdmlnYXRpb248L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idmlld1RhYnMiPgogICAgICAgICAgICAgICR7dGhpcy52aWV3VGFicy5tYXAodz0+U2AKICAgICAgICAgICAgICAgICAgPGRpdgogICAgICAgICAgICAgICAgICAgIGNsYXNzPSJ2aWV3VGFiICR7dGhpcy5zZWxlY3RlZFZpZXc9PT13PyJzZWxlY3RlZCI6IiJ9IgogICAgICAgICAgICAgICAgICAgIEBjbGljaz0keygpPT50aGlzLmxvYWRWaWV3KHcpfQogICAgICAgICAgICAgICAgICA+CiAgICAgICAgICAgICAgICAgICAgJHt3Lmljb25OYW1lP1NgCiAgICAgICAgICAgICAgICAgICAgICA8ZGVlcy1pY29uIC5pY29uPSIke3cuaWNvbk5hbWUuaW5jbHVkZXMoIjoiKT93Lmljb25OYW1lOmBsdWNpZGU6JHt3Lmljb25OYW1lfWB9Ij48L2RlZXMtaWNvbj4KICAgICAgICAgICAgICAgICAgICBgOlNgCiAgICAgICAgICAgICAgICAgICAgICA8ZGVlcy1pY29uIC5pY29uPSIkeyJsdWNpZGU6ZmlsZSJ9Ij48L2RlZXMtaWNvbj4KICAgICAgICAgICAgICAgICAgICBgfQogICAgICAgICAgICAgICAgICAgIDxzcGFuPiR7dy5uYW1lfTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICBgKX0KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImFwcEFjdGlvbnMiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJhY3Rpb24iIEBjbGljaz0keygpPT57dGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgibG9nb3V0Iix7YnViYmxlczohMCxjb21wb3NlZDohMH0pKX19PgogICAgICAgICAgICAgIDxkZWVzLWljb24gLmljb249IiR7Imx1Y2lkZTpsb2dPdXQifSI+PC9kZWVzLWljb24+CiAgICAgICAgICAgICAgPHNwYW4+U2lnbiBvdXQ8L3NwYW4+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iYXBwY29udGVudCI+CiAgICAgICAgICA8IS0tIENvbnRlbnQgZ29lcyBoZXJlIC0tPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRyb2xiYXIiPgogICAgICAgICAgPGRpdiBjbGFzcz0iY29udHJvbCBzdGF0dXMtY29ubmVjdGVkIj4KICAgICAgICAgICAgPGRlZXMtaWNvbiAuaWNvbj0iJHsibHVjaWRlOndpZmkifSI+PC9kZWVzLWljb24+CiAgICAgICAgICAgIDxzcGFuPkNvbm5lY3RlZDwvc3Bhbj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0iY29udHJvbCBzdGF0dXMtdGVybWluYWwiIEBjbGljaz0ke3RoaXMubGF1bmNoVGVybWluYWx9PgogICAgICAgICAgICA8ZGVlcy1pY29uIC5pY29uPSIkeyJsdWNpZGU6dGVybWluYWwifSI+PC9kZWVzLWljb24+CiAgICAgICAgICAgIDxzcGFuPlRlcm1pbmFsPC9zcGFuPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgYH1hc3luYyBmaXJzdFVwZGF0ZWQodyl7bGV0IE09YXdhaXQgdGhpcy5kb210b29sc1Byb21pc2U7aWYoc3VwZXIuZmlyc3RVcGRhdGVkKHcpLHRoaXMudmlld1RhYnMmJnRoaXMudmlld1RhYnMubGVuZ3RoPjApe2xldCBGPXRoaXMuc2VsZWN0ZWRWaWV3fHx0aGlzLnZpZXdUYWJzWzBdO2F3YWl0IHRoaXMubG9hZFZpZXcoRil9fWN1cnJlbnRUZXJtaW5hbD1aYyh0aGlzLGcpO2FzeW5jIGxhdW5jaFRlcm1pbmFsKCl7bGV0IHc9YXdhaXQgdGhpcy5kb210b29sc1Byb21pc2U7aWYodGhpcy5jdXJyZW50VGVybWluYWwpe2F3YWl0IHRoaXMuY2xvc2VUZXJtaW5hbCgpO3JldHVybn1sZXQgTT10aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcigiLm1haW5jb250YWluZXIiKSx7RGVlc1dvcmtzcGFjZVRlcm1pbmFsOkZ9PWF3YWl0IFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCk9PihaWigpLE1ScikpLEM9bmV3IEY7cmV0dXJuIEMuc2V0dXBDb21tYW5kPXRoaXMudGVybWluYWxTZXR1cENvbW1hbmQsdGhpcy5jdXJyZW50VGVybWluYWw9QyxNLmFwcGVuZENoaWxkKEMpLEMuc3R5bGUucG9zaXRpb249ImFic29sdXRlIixDLnN0eWxlLnpJbmRleD0iMTAiLEMuc3R5bGUudG9wPSIwcHgiLEMuc3R5bGUubGVmdD0iMjQwcHgiLEMuc3R5bGUucmlnaHQ9IjBweCIsQy5zdHlsZS5ib3R0b209IjI0cHgiLEMuc3R5bGUub3BhY2l0eT0iMCIsQy5zdHlsZS50cmFuc2Zvcm09InRyYW5zbGF0ZVkoOHB4KSBzY2FsZSgwLjk5KSIsQy5zdHlsZS50cmFuc2l0aW9uPSJhbGwgMC4yNXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKSIsQy5zdHlsZS5ib3hTaGFkb3c9IjAgMjVweCA1MHB4IC0xMnB4IHJnYigwIDAgMCAvIDAuNSksIDAgMCAwIDFweCByZ2IoMjU1IDI1NSAyNTUgLyAwLjA1KSIsQy5zdHlsZS5tYXhXaWR0aD1gY2FsYygke00uY2xpZW50V2lkdGh9cHggLTI0MHB4KWAsQy5zdHlsZS5tYXhIZWlnaHQ9YGNhbGMoJHtNLmNsaWVudEhlaWdodH1weCAtIDI0cHgpYCxDLmFkZEV2ZW50TGlzdGVuZXIoImNsb3NlIiwoKT0+dGhpcy5jbG9zZVRlcm1pbmFsKCkpLGF3YWl0IHcuY29udmVuaWVuY2Uuc21hcnRkZWxheS5kZWxheUZvcigwKSxDLnN0eWxlLm9wYWNpdHk9IjEiLEMuc3R5bGUudHJhbnNmb3JtPSJ0cmFuc2xhdGVZKDApIHNjYWxlKDEpIixDfWFzeW5jIGNsb3NlVGVybWluYWwoKXtsZXQgdz1hd2FpdCB0aGlzLmRvbXRvb2xzUHJvbWlzZTt0aGlzLmN1cnJlbnRUZXJtaW5hbCYmKHRoaXMuY3VycmVudFRlcm1pbmFsLnN0eWxlLm9wYWNpdHk9IjAiLHRoaXMuY3VycmVudFRlcm1pbmFsLnN0eWxlLnRyYW5zZm9ybT0idHJhbnNsYXRlWSg4cHgpIHNjYWxlKDAuOTkpIixhd2FpdCB3LmNvbnZlbmllbmNlLnNtYXJ0ZGVsYXkuZGVsYXlGb3IoMjUwKSx0aGlzLmN1cnJlbnRUZXJtaW5hbC5yZW1vdmUoKSx0aGlzLmN1cnJlbnRUZXJtaW5hbD1udWxsKX1jdXJyZW50Vmlldzthc3luYyBsb2FkVmlldyh3KXtsZXQgTT10aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcigiLmFwcGNvbnRlbnQiKSxGPW5ldyB3LmVsZW1lbnQ7dGhpcy5jdXJyZW50VmlldyYmdGhpcy5jdXJyZW50Vmlldy5yZW1vdmUoKSxNLmFwcGVuZENoaWxkKEYpLHRoaXMuY3VycmVudFZpZXc9Rix0aGlzLnNlbGVjdGVkVmlldz13LHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoInZpZXctc2VsZWN0Iix7ZGV0YWlsOnt2aWV3Ond9LGJ1YmJsZXM6ITAsY29tcG9zZWQ6ITB9KSl9c3RhdGlje1pjKGEscil9fTtyZXR1cm4gdj1hfSkoKX0pO3ZhciBfUnI9bCgoKT0+e0NScigpfSk7dmFyIFRScixMUnI9bCgoKT0+e1NlKCk7VFJyPSgpPT5TYAogIDxzdHlsZT4KICAgIGJvZHkgewogICAgICBtYXJnaW46IDA7CiAgICAgIHBhZGRpbmc6IDA7CiAgICB9CiAgICAuZGVtby1jb250YWluZXIgewogICAgICB3aWR0aDogMTAwJTsKICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgIHRvcDogMDsKICAgICAgbGVmdDogMDsKICAgIH0KICA8L3N0eWxlPgogIDxkaXYgY2xhc3M9ImRlbW8tY29udGFpbmVyIj4KICAgIDxkZWVzLXNpbXBsZS1sb2dpbiAKICAgICAgbmFtZT0iTXkgQXBwbGljYXRpb24iCiAgICAgIEBsb2dpbj0ke2U9Pntjb25zb2xlLmxvZygiTG9naW4gZXZlbnQgcmVjZWl2ZWQ6IixlLmRldGFpbCk7bGV0IHQ9ZS5kZXRhaWw/LmRhdGF8fGUuZGV0YWlsO3Q/LnVzZXJuYW1lJiZ0Py5wYXNzd29yZD9hbGVydChgTG9naW4gYXR0ZW1wdGVkIHdpdGg6ClVzZXJuYW1lOiAke3QudXNlcm5hbWV9ClBhc3N3b3JkOiAke3QucGFzc3dvcmR9YCk6Y29uc29sZS5lcnJvcigiSW52YWxpZCBsb2dpbiBkYXRhIHN0cnVjdHVyZToiLGUuZGV0YWlsKX19CiAgICA+CiAgICAgIDxkaXYgc3R5bGU9InBhZGRpbmc6IDQwcHg7IHRleHQtYWxpZ246IGNlbnRlcjsiPgogICAgICAgIDxoMT5XZWxjb21lITwvaDE+CiAgICAgICAgPHA+VGhpcyBpcyB0aGUgc2xvdHRlZCBjb250ZW50IHRoYXQgYXBwZWFycyBhZnRlciBsb2dpbi48L3A+CiAgICAgIDwvZGl2PgogICAgPC9kZWVzLXNpbXBsZS1sb2dpbj4KICA8L2Rpdj4KYH0pO3ZhciBEUnIsRjB0LEFScixFUnI9bCgoKT0+e0xScigpO1NlKCk7b3QoKTtEUnI9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxGMHQ9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LEFScj0oKCk9PntsZXQgZT1bemUoImRlZXMtc2ltcGxlLWxvZ2luIildLHQscj1bXSxhLGk9RGUsbyxuPVtdLHM9W107dmFyIGM9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCBkPXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO289W2ooKV0sRFJyKHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibmFtZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6Zj0+Im5hbWUiaW4gZixnZXQ6Zj0+Zi5uYW1lLHNldDooZix1KT0+e2YubmFtZT11fX0sbWV0YWRhdGE6ZH0sbixzKSxEUnIobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6ZH0sbnVsbCxyKSxjPWE9dC52YWx1ZSxkJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOmR9KX1zdGF0aWMgZGVtbz1UUnI7c3RhdGljIGRlbW9Hcm91cHM9WyJTaW1wbGUiXTsjZT1GMHQodGhpcyxuLCJBcHBsaWNhdGlvbiIpO2dldCBuYW1lKCl7cmV0dXJuIHRoaXMuI2V9c2V0IG5hbWUoZCl7dGhpcy4jZT1kfXN0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgLyogVE9ETzogTWlncmF0ZSBoYXJkY29kZWQgdmFsdWVzIHRvIC0tZGVlcy0qIENTUyB2YXJpYWJsZXMgKi8KICAgICAgOmhvc3QgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMy45JSkiLCJoc2woMCAwJSA5OCUpIil9OwogICAgICAgIHVzZXItc2VsZWN0OiBub25lOwogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICBmb250LWZhbWlseTogJ0dlaXN0IFNhbnMnLCBzYW5zLXNlcmlmOwogICAgICB9CgogICAgICAubG9naW5Db250YWluZXIgewogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIHRvcDogMDsKICAgICAgICBsZWZ0OiAwOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAxMDAlKSIsImhzbCgwIDAlIDMuOSUpIil9OwogICAgICB9CgogICAgICAuc2xvdENvbnRhaW5lciB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICB0b3A6IDA7CiAgICAgICAgbGVmdDogMDsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLCB0cmFuc2Zvcm0gMC4ycyBlYXNlOwogICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwogICAgICB9CgogICAgICAubG9naW4gewogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIG1heC13aWR0aDogMzYwcHg7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGdhcDogMjRweDsKICAgICAgfQoKICAgICAgLmxvZ2luLWhlYWRlciB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGdhcDogOHB4OwogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgfQoKICAgICAgLmhlYWRlciB7CiAgICAgICAgZm9udC1zaXplOiAyNHB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyNWVtOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOSUpIiwiaHNsKDAgMCUgOTglKSIpfTsKICAgICAgfQoKICAgICAgLnN1YmhlYWRlciB7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNDUuMSUpIiwiaHNsKDAgMCUgNjMuOSUpIil9OwogICAgICB9CgogICAgICAubG9naW4tY2FyZCB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDEwMCUpIiwiaHNsKDAgMCUgOSUpIil9OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OS44JSkiLCJoc2woMCAwJSAxNC45JSkiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4OwogICAgICAgIHBhZGRpbmc6IDI0cHg7CiAgICAgIH0KCiAgICAgIC5sb2dpbi1jYXJkIGRlZXMtZm9ybSB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICAgIGdhcDogMTZweDsKICAgICAgfQoKICAgICAgLmxvZ2luLWNhcmQgZGVlcy1pbnB1dC10ZXh0IHsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgfQoKICAgICAgLmxvZ2luLWNhcmQgZGVlcy1mb3JtLXN1Ym1pdCB7CiAgICAgICAgbWFyZ2luLXRvcDogOHB4OwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICB9CiAgICBgXTtyZW5kZXIoKXtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0ibG9naW5Db250YWluZXIiPgogICAgICAgIDxkaXYgY2xhc3M9ImxvZ2luIj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImxvZ2luLWhlYWRlciI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImhlYWRlciI+U2lnbiBpbjwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdWJoZWFkZXIiPkVudGVyIHlvdXIgY3JlZGVudGlhbHMgdG8gYWNjZXNzICR7dGhpcy5uYW1lfTwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJsb2dpbi1jYXJkIj4KICAgICAgICAgICAgPGRlZXMtZm9ybT4KICAgICAgICAgICAgICA8ZGVlcy1pbnB1dC10ZXh0IGtleT0idXNlcm5hbWUiIGxhYmVsPSJVc2VybmFtZSIgcmVxdWlyZWQ+PC9kZWVzLWlucHV0LXRleHQ+CiAgICAgICAgICAgICAgPGRlZXMtaW5wdXQtdGV4dCBrZXk9InBhc3N3b3JkIiBsYWJlbD0iUGFzc3dvcmQiIGlzUGFzc3dvcmRCb29sIHJlcXVpcmVkPjwvZGVlcy1pbnB1dC10ZXh0PgogICAgICAgICAgICAgIDxkZWVzLWZvcm0tc3VibWl0PlNpZ24gaW48L2RlZXMtZm9ybS1zdWJtaXQ+CiAgICAgICAgICAgIDwvZGVlcy1mb3JtPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJzbG90Q29udGFpbmVyIj4KICAgICAgICA8c2xvdD48L3Nsb3Q+CiAgICAgIDwvZGl2PgogICAgYH1hc3luYyBmaXJzdFVwZGF0ZWQoZCl7c3VwZXIuZmlyc3RVcGRhdGVkKGQpO2xldCBmPXRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCJkZWVzLWZvcm0iKTtmJiZmLmFkZEV2ZW50TGlzdGVuZXIoImZvcm1EYXRhIix1PT57dGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgibG9naW4iLHtkZXRhaWw6dS5kZXRhaWwsYnViYmxlczohMCxjb21wb3NlZDohMH0pKX0pfWFzeW5jIHN3aXRjaFRvU2xvdHRlZENvbnRlbnQoKXtsZXQgZD1hd2FpdCB0aGlzLmRvbXRvb2xzUHJvbWlzZSxmPXRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCIubG9naW4iKSx1PXRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCIubG9naW5Db250YWluZXIiKSxwPXRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCIuc2xvdENvbnRhaW5lciIpO2Yuc3R5bGUub3BhY2l0eT0iMCIsZi5zdHlsZS50cmFuc2Zvcm09InRyYW5zbGF0ZVkoMjBweCkiLHUuc3R5bGUucG9pbnRlckV2ZW50cz0ibm9uZSIscC5zdHlsZS50cmFuc2Zvcm09InRyYW5zbGF0ZVkoMjBweCkiLGF3YWl0IGQuY29udmVuaWVuY2Uuc21hcnRkZWxheS5kZWxheUZvcigzMDApLHAuc3R5bGUub3BhY2l0eT0iMSIscC5zdHlsZS50cmFuc2Zvcm09InRyYW5zbGF0ZVkoMHB4KSIsYXdhaXQgZC5jb252ZW5pZW5jZS5zbWFydGRlbGF5LmRlbGF5Rm9yKDMwMCkscC5zdHlsZS5wb2ludGVyRXZlbnRzPSJhbGwifWNvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKSxGMHQodGhpcyxzKX1zdGF0aWN7RjB0KGEscil9fTtyZXR1cm4gYz1hfSkoKX0pO3ZhciAkUnI9bCgoKT0+e0VScigpfSk7dmFyIFBScj1sKCgpPT57d1JyKCk7X1JyKCk7JFJyKCl9KTt2YXIgSVJyPWwoKCk9PnticigpfSk7dmFyIE5ScixGUnI9bCgoKT0+e1NlKCk7TlJyPSgpPT5TYAogICAgPHN0eWxlPgogICAgICAuZGVtb1dyYXBwZXIgewogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICAKICAgICAgICBiYWNrZ3JvdW5kOiAjODg4ODg4OwogICAgICB9CiAgICAgIC5sb2dzIHsKICAgICAgICBwYWRkaW5nOiAxNnB4OwogICAgICAgIHdpZHRoOiA2MDBweDsKICAgICAgICBjb2xvcjogI2ZmZjsKICAgICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlOwogICAgICB9CiAgICAgIC5sb2dzIGRpdiB7CiAgICAgICAgbWFyZ2luOiA0cHggMDsKICAgICAgfQogICAgPC9zdHlsZT4KICAgIDxkaXYgY2xhc3M9ImRlbW9XcmFwcGVyIj4KICAgICAgPGRlZXMtc2VhcmNoYmFyCiAgICAgICAgQHNlYXJjaC1jaGFuZ2VkPSR7cj0+e2xldCBpPXIudGFyZ2V0LmNsb3Nlc3QoIi5kZW1vV3JhcHBlciIpPy5xdWVyeVNlbGVjdG9yKCIjY2hhbmdlZCIpO2kmJihpLnRleHRDb250ZW50PWBzZWFyY2gtY2hhbmdlZDogJHtyLmRldGFpbC52YWx1ZX1gKX19CiAgICAgICAgQHNlYXJjaC1zdWJtaXQ9JHtyPT57bGV0IGk9ci50YXJnZXQuY2xvc2VzdCgiLmRlbW9XcmFwcGVyIik/LnF1ZXJ5U2VsZWN0b3IoIiNzdWJtaXR0ZWQiKTtpJiYoaS50ZXh0Q29udGVudD1gc2VhcmNoLXN1Ym1pdDogJHtyLmRldGFpbC52YWx1ZX1gKX19CiAgICAgID48L2RlZXMtc2VhcmNoYmFyPgogICAgICA8ZGl2IGNsYXNzPSJsb2dzIj4KICAgICAgICA8ZGl2IGlkPSJjaGFuZ2VkIj5zZWFyY2gtY2hhbmdlZDo8L2Rpdj4KICAgICAgICA8ZGl2IGlkPSJzdWJtaXR0ZWQiPnNlYXJjaC1zdWJtaXQ6PC9kaXY+CiAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgYH0pO3ZhciBPUnIsTzB0LFJScixCUnI9bCgoKT0+e1NlKCk7Vm4oKTtGUnIoKTtvdCgpO09Scj1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LE8wdD1mdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MixpPTA7aTx0Lmxlbmd0aDtpKyspcj1hP3RbaV0uY2FsbChlLHIpOnRbaV0uY2FsbChlKTtyZXR1cm4gYT9yOnZvaWQgMH0sUlJyPSgoKT0+e2xldCBlPVt6ZSgiZGVlcy1zZWFyY2hiYXIiKV0sdCxyPVtdLGEsaT1EZSxvLG49W10scz1bXTt2YXIgYz1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IGQ9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baigpXSxPUnIodGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJmaWx0ZXJzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpmPT4iZmlsdGVycyJpbiBmLGdldDpmPT5mLmZpbHRlcnMsc2V0OihmLHUpPT57Zi5maWx0ZXJzPXV9fSxtZXRhZGF0YTpkfSxuLHMpLE9ScihudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTpkfSxudWxsLHIpLGM9YT10LnZhbHVlLGQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6ZH0pfXN0YXRpYyBkZW1vPU5ScjtzdGF0aWMgZGVtb0dyb3Vwcz1bIlV0aWxpdHkiXTtzdGF0aWMgc3R5bGVzPVtQZSxtLmRlZmF1bHRTdHlsZXMsbGVgCiAgICAgIC8qIFRPRE86IE1pZ3JhdGUgaGFyZGNvZGVkIHZhbHVlcyB0byAtLWRlZXMtKiBDU1MgdmFyaWFibGVzICovCiAgICAgIDpob3N0IHsKICAgICAgICBwYWRkaW5nOiA0MHB4OwogICAgICAgIGZvbnQtZmFtaWx5OiBEZWVzIFNhbnM7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiNlZWVlZWIiLCIjMDAwMDAwIil9OwogICAgICB9CgogICAgICAuc2VhcmNoYm94Q29udGFpbmVyIHsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgbWFyZ2luOiBhdXRvOwogICAgICAgIG1heC13aWR0aDogODAwcHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiMwMDAwMDAxNSIsIiNmZmZmZmYxNSIpfTsKICAgICAgICAtLWJveEhlaWdodDogNjBweDsKICAgICAgICBoZWlnaHQ6IHZhcigtLWJveEhlaWdodCk7CiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm94SGVpZ2h0KTsKICAgICAgICBkaXNwbGF5OiBncmlkOwogICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDE0MHB4OwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjMDAwMDAwMTUiLCIjZmZmZmZmMjAiKX07CiAgICAgIH0KCiAgICAgIGlucHV0IHsKICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgYm9yZGVyOiBub25lOwogICAgICAgIGJhY2tncm91bmQ6IG5vbmU7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMDAwMDAwIiwiI2VlZWVlYiIpfTsKICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7CiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtOHB4OwogICAgICAgIG91dGxpbmU6IG5vbmU7CiAgICAgICAgZm9udC1zaXplOiAxNnB4OwogICAgICB9CgogICAgICAuc2VhcmNoQnV0dG9uIHsKICAgICAgICAtLWJ1dHRvblBhZGRpbmc6IDhweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2VlZWVlYiIsIiMwMDAwMDAiKX07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMDAwMDAwIiwiI2VlZWVlYiIpfTsKICAgICAgICBsaW5lLWhlaWdodDogY2FsYyh2YXIoLS1ib3hIZWlnaHQpIC0gKHZhcigtLWJ1dHRvblBhZGRpbmcpICogMikpOwogICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJveEhlaWdodCk7CiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKSA7CiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTsKICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgCiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMXMsIGJhY2tncm91bmQgMC4xczsKICAgICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLWJ1dHRvblBhZGRpbmcpOwogICAgICAgIHVzZXItc2VsZWN0OiBub25lOwogICAgICB9CgogICAgICAuc2VhcmNoQnV0dG9uOmhvdmVyIHsKICAgICAgICBjb2xvcjogI2ZmZjsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZShNOC5ibHVlLGpuLmJsdWUpfTsKICAgICAgfQoKICAgICAgLnNlYXJjaEJ1dHRvbjphY3RpdmUgewogICAgICAgIGNvbG9yOiAjZmZmOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKE04LmJsdWVBY3RpdmUsam4uYmx1ZUFjdGl2ZSl9OwogICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC45OCk7CiAgICAgIH0KCiAgICAgIC5maWx0ZXJzIHsKICAgICAgICBtYXJnaW46IGF1dG87CiAgICAgICAgbWF4LXdpZHRoOiA4MDBweDsKICAgICAgfQogICAgYF07I2U9TzB0KHRoaXMsbixbXSk7Z2V0IGZpbHRlcnMoKXtyZXR1cm4gdGhpcy4jZX1zZXQgZmlsdGVycyhkKXt0aGlzLiNlPWR9c2VhcmNoSW5wdXQ9TzB0KHRoaXMscyk7c2VhcmNoQnV0dG9uO2NvbnN0cnVjdG9yKCl7c3VwZXIoKX1yZW5kZXIoKXtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0ic2VhcmNoYm94Q29udGFpbmVyIj4KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgcGxhY2Vob2xkZXI9IllvdXIgU2tpbGxzIChlLmcuIFR5cGVTY3JpcHQsIFJ1c3QsIFByb2plY3RtYW5hZ2VtZW50KSIgLz4KICAgICAgICA8ZGl2IGNsYXNzPSJzZWFyY2hCdXR0b24iPlNlYXJjaCAtPjwvZGl2PgogICAgICA8L2Rpdj4KICAgICAgJHt0aGlzLmZpbHRlcnMubGVuZ3RoPjA/U2AKICAgICAgICA8ZGl2IGNsYXNzPSJmaWx0ZXJzIj4KICAgICAgICA8ZGVlcy1oZWFkaW5nIGxldmVsPSJoci1zbWFsbCI+RmlsdGVyczwvZGVlcy1oZWFkaW5nPgogICAgICAgIDxkZWVzLWlucHV0LWRyb3Bkb3duIC5sYWJlbD0keyJsb2NhdGlvbiJ9PjwvZGVlcy1pbnB1dC1kcm9wZG93bj4KICAgICAgPC9kaXY+ICAKICAgICAgYDpTYGB9CiAgICBgfWZpcnN0VXBkYXRlZCgpe3RoaXMuc2VhcmNoSW5wdXQuYWRkRXZlbnRMaXN0ZW5lcigiaW5wdXQiLCgpPT57dGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgic2VhcmNoLWNoYW5nZWQiLHtidWJibGVzOiEwLGNvbXBvc2VkOiEwLGRldGFpbDp7dmFsdWU6dGhpcy5zZWFyY2hJbnB1dC52YWx1ZX19KSl9KSx0aGlzLnNlYXJjaElucHV0LmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLGQ9PntkLmtleT09PSJFbnRlciImJnRoaXMuX2Rpc3BhdGNoU3VibWl0KCl9KSx0aGlzLnNlYXJjaEJ1dHRvbi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKCk9PnRoaXMuX2Rpc3BhdGNoU3VibWl0KCkpfV9kaXNwYXRjaFN1Ym1pdCgpe3RoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoInNlYXJjaC1zdWJtaXQiLHtidWJibGVzOiEwLGNvbXBvc2VkOiEwLGRldGFpbDp7dmFsdWU6dGhpcy5zZWFyY2hJbnB1dC52YWx1ZX19KSl9c3RhdGlje08wdChhLHIpfX07cmV0dXJuIGM9YX0pKCl9KTt2YXIgSFJyPWwoKCk9PntCUnIoKX0pO3ZhciBxUnIsalJyPWwoKCk9PntTZSgpO3FScj0oKT0+U2AKICA8c3R5bGU+CiAgICAuZGVtby1jb250YWluZXIgewogICAgICBkaXNwbGF5OiBmbGV4OwogICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICBnYXA6IDMycHg7CiAgICAgIHBhZGRpbmc6IDQ4cHg7CiAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZjhmOWZhIiwiIzBhMGEwYSIpfTsKICAgICAgbWluLWhlaWdodDogMTAwdmg7CiAgICB9CgogICAgLnNlY3Rpb24gewogICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2ZmZmZmZiIsIiMxODE4MWIiKX07CiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZTVlN2ViIiwiIzI3MjcyYSIpfTsKICAgICAgYm9yZGVyLXJhZGl1czogOHB4OwogICAgICBwYWRkaW5nOiAyNHB4OwogICAgfQoKICAgIC5zZWN0aW9uLXRpdGxlIHsKICAgICAgZm9udC1zaXplOiAxOHB4OwogICAgICBmb250LXdlaWdodDogNjAwOwogICAgICBtYXJnaW4tYm90dG9tOiAxNnB4OwogICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwOTA5MGIiLCIjZmFmYWZhIil9OwogICAgfQoKICAgIC5zZWN0aW9uLWRlc2NyaXB0aW9uIHsKICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM3MTcxN2EiLCIjYTFhMWFhIil9OwogICAgICBtYXJnaW4tYm90dG9tOiAyNHB4OwogICAgfQoKICAgIC50b2tlbi1ncmlkIHsKICAgICAgZGlzcGxheTogZ3JpZDsKICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoMjAwcHgsIDFmcikpOwogICAgICBnYXA6IDE2cHg7CiAgICB9CgogICAgLnRva2VuLWl0ZW0gewogICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2Y0ZjRmNSIsIiMyNzI3MmEiKX07CiAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgcGFkZGluZzogMTZweDsKICAgIH0KCiAgICAudG9rZW4tbmFtZSB7CiAgICAgIGZvbnQtZmFtaWx5OiAnSW50ZWwgT25lIE1vbm8nLCBtb25vc3BhY2U7CiAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNzE3MTdhIiwiI2ExYTFhYSIpfTsKICAgICAgbWFyZ2luLWJvdHRvbTogOHB4OwogICAgfQoKICAgIC50b2tlbi12YWx1ZSB7CiAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMDkwOTBiIiwiI2ZhZmFmYSIpfTsKICAgIH0KCiAgICAuc3BhY2luZy1kZW1vIHsKICAgICAgZGlzcGxheTogZmxleDsKICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOwogICAgICBnYXA6IDhweDsKICAgICAgZmxleC13cmFwOiB3cmFwOwogICAgfQoKICAgIC5zcGFjaW5nLWJveCB7CiAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjM2I4MmY2IiwiIzNiODJmNiIpfTsKICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgfQoKICAgIC5yYWRpdXMtZGVtbyB7CiAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgIGdhcDogMTZweDsKICAgICAgZmxleC13cmFwOiB3cmFwOwogICAgfQoKICAgIC5yYWRpdXMtYm94IHsKICAgICAgd2lkdGg6IDYwcHg7CiAgICAgIGhlaWdodDogNjBweDsKICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiMzYjgyZjYiLCIjM2I4MmY2Iil9OwogICAgICBkaXNwbGF5OiBmbGV4OwogICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgY29sb3I6IHdoaXRlOwogICAgICBmb250LXNpemU6IDExcHg7CiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICB9CgogICAgLnNoYWRvdy1kZW1vIHsKICAgICAgZGlzcGxheTogZmxleDsKICAgICAgZ2FwOiAyNHB4OwogICAgICBmbGV4LXdyYXA6IHdyYXA7CiAgICB9CgogICAgLnNoYWRvdy1ib3ggewogICAgICB3aWR0aDogMTAwcHg7CiAgICAgIGhlaWdodDogMTAwcHg7CiAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZmZmZmZmIiwiIzI3MjcyYSIpfTsKICAgICAgYm9yZGVyLXJhZGl1czogOHB4OwogICAgICBkaXNwbGF5OiBmbGV4OwogICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICBmb250LXdlaWdodDogNTAwOwogICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM3MTcxN2EiLCIjYTFhMWFhIil9OwogICAgfQoKICAgIC5oZWlnaHQtZGVtbyB7CiAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgIGdhcDogMTZweDsKICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOwogICAgICBmbGV4LXdyYXA6IHdyYXA7CiAgICB9CgogICAgLmhlaWdodC1ib3ggewogICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiIzNiODJmNiIsIiMzYjgyZjYiKX07CiAgICAgIHdpZHRoOiAxMjBweDsKICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICBkaXNwbGF5OiBmbGV4OwogICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgY29sb3I6IHdoaXRlOwogICAgICBmb250LXNpemU6IDEycHg7CiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICB9CiAgPC9zdHlsZT4KICA8ZGl2IGNsYXNzPSJkZW1vLWNvbnRhaW5lciI+CiAgICA8ZGVlcy10aGVtZT4KICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbiI+CiAgICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi10aXRsZSI+U3BhY2luZyBTY2FsZTwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tZGVzY3JpcHRpb24iPgogICAgICAgICAgQ1NTIHZhcmlhYmxlczogLS1kZWVzLXNwYWNpbmcteHMgdGhyb3VnaCAtLWRlZXMtc3BhY2luZy0zeGwKICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFjaW5nLWRlbW8iPgogICAgICAgICAgPGRpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3BhY2luZy1ib3giIHN0eWxlPSJ3aWR0aDogdmFyKC0tZGVlcy1zcGFjaW5nLXhzKTsgaGVpZ2h0OiB2YXIoLS1kZWVzLXNwYWNpbmcteHMpOyI+PC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRva2VuLW5hbWUiPnhzICg0cHgpPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNwYWNpbmctYm94IiBzdHlsZT0id2lkdGg6IHZhcigtLWRlZXMtc3BhY2luZy1zbSk7IGhlaWdodDogdmFyKC0tZGVlcy1zcGFjaW5nLXNtKTsiPjwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0b2tlbi1uYW1lIj5zbSAoOHB4KTwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8ZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzcGFjaW5nLWJveCIgc3R5bGU9IndpZHRoOiB2YXIoLS1kZWVzLXNwYWNpbmctbWQpOyBoZWlnaHQ6IHZhcigtLWRlZXMtc3BhY2luZy1tZCk7Ij48L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idG9rZW4tbmFtZSI+bWQgKDEycHgpPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNwYWNpbmctYm94IiBzdHlsZT0id2lkdGg6IHZhcigtLWRlZXMtc3BhY2luZy1sZyk7IGhlaWdodDogdmFyKC0tZGVlcy1zcGFjaW5nLWxnKTsiPjwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0b2tlbi1uYW1lIj5sZyAoMTZweCk8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3BhY2luZy1ib3giIHN0eWxlPSJ3aWR0aDogdmFyKC0tZGVlcy1zcGFjaW5nLXhsKTsgaGVpZ2h0OiB2YXIoLS1kZWVzLXNwYWNpbmcteGwpOyI+PC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRva2VuLW5hbWUiPnhsICgyNHB4KTwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8ZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzcGFjaW5nLWJveCIgc3R5bGU9IndpZHRoOiB2YXIoLS1kZWVzLXNwYWNpbmctMnhsKTsgaGVpZ2h0OiB2YXIoLS1kZWVzLXNwYWNpbmctMnhsKTsiPjwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0b2tlbi1uYW1lIj4yeGwgKDMycHgpPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNwYWNpbmctYm94IiBzdHlsZT0id2lkdGg6IHZhcigtLWRlZXMtc3BhY2luZy0zeGwpOyBoZWlnaHQ6IHZhcigtLWRlZXMtc3BhY2luZy0zeGwpOyI+PC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRva2VuLW5hbWUiPjN4bCAoNDhweCk8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KCiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24iPgogICAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tdGl0bGUiPkJvcmRlciBSYWRpdXMgU2NhbGU8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uLWRlc2NyaXB0aW9uIj4KICAgICAgICAgIENTUyB2YXJpYWJsZXM6IC0tZGVlcy1yYWRpdXMteHMgdGhyb3VnaCAtLWRlZXMtcmFkaXVzLWZ1bGwKICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJyYWRpdXMtZGVtbyI+CiAgICAgICAgICA8ZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJyYWRpdXMtYm94IiBzdHlsZT0iYm9yZGVyLXJhZGl1czogdmFyKC0tZGVlcy1yYWRpdXMteHMpOyI+eHM8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idG9rZW4tbmFtZSI+MnB4PC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InJhZGl1cy1ib3giIHN0eWxlPSJib3JkZXItcmFkaXVzOiB2YXIoLS1kZWVzLXJhZGl1cy1zbSk7Ij5zbTwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0b2tlbi1uYW1lIj40cHg8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icmFkaXVzLWJveCIgc3R5bGU9ImJvcmRlci1yYWRpdXM6IHZhcigtLWRlZXMtcmFkaXVzLW1kKTsiPm1kPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRva2VuLW5hbWUiPjZweDwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8ZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJyYWRpdXMtYm94IiBzdHlsZT0iYm9yZGVyLXJhZGl1czogdmFyKC0tZGVlcy1yYWRpdXMtbGcpOyI+bGc8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idG9rZW4tbmFtZSI+OHB4PC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InJhZGl1cy1ib3giIHN0eWxlPSJib3JkZXItcmFkaXVzOiB2YXIoLS1kZWVzLXJhZGl1cy14bCk7Ij54bDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0b2tlbi1uYW1lIj4xMnB4PC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InJhZGl1cy1ib3giIHN0eWxlPSJib3JkZXItcmFkaXVzOiB2YXIoLS1kZWVzLXJhZGl1cy1mdWxsKTsiPmZ1bGw8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idG9rZW4tbmFtZSI+OTk5cHg8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KCiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24iPgogICAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tdGl0bGUiPlNoYWRvdyBFbGV2YXRpb24gU2NhbGU8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uLWRlc2NyaXB0aW9uIj4KICAgICAgICAgIENTUyB2YXJpYWJsZXM6IC0tZGVlcy1zaGFkb3cteHMgdGhyb3VnaCAtLWRlZXMtc2hhZG93LWxnCiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ic2hhZG93LWRlbW8iPgogICAgICAgICAgPGRpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2hhZG93LWJveCIgc3R5bGU9ImJveC1zaGFkb3c6IHZhcigtLWRlZXMtc2hhZG93LXhzKTsiPnhzPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRva2VuLW5hbWUiPm1pbmltYWw8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2hhZG93LWJveCIgc3R5bGU9ImJveC1zaGFkb3c6IHZhcigtLWRlZXMtc2hhZG93LXNtKTsiPnNtPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRva2VuLW5hbWUiPnN1YnRsZTwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8ZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzaGFkb3ctYm94IiBzdHlsZT0iYm94LXNoYWRvdzogdmFyKC0tZGVlcy1zaGFkb3ctbWQpOyI+bWQ8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idG9rZW4tbmFtZSI+bWVkaXVtPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNoYWRvdy1ib3giIHN0eWxlPSJib3gtc2hhZG93OiB2YXIoLS1kZWVzLXNoYWRvdy1sZyk7Ij5sZzwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0b2tlbi1uYW1lIj5wcm9taW5lbnQ8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KCiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24iPgogICAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tdGl0bGUiPkNvbnRyb2wgSGVpZ2h0IFNjYWxlPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi1kZXNjcmlwdGlvbiI+CiAgICAgICAgICBDU1MgdmFyaWFibGVzOiAtLWRlZXMtY29udHJvbC1oZWlnaHQtc20gdGhyb3VnaCAtLWRlZXMtY29udHJvbC1oZWlnaHQteGwKICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJoZWlnaHQtZGVtbyI+CiAgICAgICAgICA8ZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJoZWlnaHQtYm94IiBzdHlsZT0iaGVpZ2h0OiB2YXIoLS1kZWVzLWNvbnRyb2wtaGVpZ2h0LXNtKTsiPnNtPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRva2VuLW5hbWUiPjMycHg8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iaGVpZ2h0LWJveCIgc3R5bGU9ImhlaWdodDogdmFyKC0tZGVlcy1jb250cm9sLWhlaWdodC1tZCk7Ij5tZDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0b2tlbi1uYW1lIj4zNnB4PC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImhlaWdodC1ib3giIHN0eWxlPSJoZWlnaHQ6IHZhcigtLWRlZXMtY29udHJvbC1oZWlnaHQtbGcpOyI+bGc8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idG9rZW4tbmFtZSI+NDBweDwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8ZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJoZWlnaHQtYm94IiBzdHlsZT0iaGVpZ2h0OiB2YXIoLS1kZWVzLWNvbnRyb2wtaGVpZ2h0LXhsKTsiPnhsPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRva2VuLW5hbWUiPjQ4cHg8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KCiAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24iPgogICAgICAgIDxkaXYgY2xhc3M9InNlY3Rpb24tdGl0bGUiPlRyYW5zaXRpb24gRHVyYXRpb25zPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ic2VjdGlvbi1kZXNjcmlwdGlvbiI+CiAgICAgICAgICBDU1MgdmFyaWFibGVzOiAtLWRlZXMtdHJhbnNpdGlvbi1mYXN0IHRocm91Z2ggLS1kZWVzLXRyYW5zaXRpb24tc2xvd2VyCiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0idG9rZW4tZ3JpZCI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJ0b2tlbi1pdGVtIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idG9rZW4tbmFtZSI+LS1kZWVzLXRyYW5zaXRpb24tZmFzdDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0b2tlbi12YWx1ZSI+MC4xczwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJ0b2tlbi1pdGVtIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idG9rZW4tbmFtZSI+LS1kZWVzLXRyYW5zaXRpb24tZGVmYXVsdDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0b2tlbi12YWx1ZSI+MC4xNXM8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0idG9rZW4taXRlbSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRva2VuLW5hbWUiPi0tZGVlcy10cmFuc2l0aW9uLXNsb3c8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0idG9rZW4tdmFsdWUiPjAuMnM8L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0idG9rZW4taXRlbSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRva2VuLW5hbWUiPi0tZGVlcy10cmFuc2l0aW9uLXNsb3dlcjwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0b2tlbi12YWx1ZSI+MC4zczwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgPC9kZWVzLXRoZW1lPgogIDwvZGl2PgpgfSk7dmFyIHNnLFlzLFZScixVUnI9bCgoKT0+e1NlKCk7b3QoKTtqUnIoKTtzZz1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LFlzPWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSxWUnI9KCgpPT57bGV0IGU9W3plKCJkZWVzLXRoZW1lIildLHQscj1bXSxhLGk9RGUsbyxuPVtdLHM9W10sYyxkPVtdLGY9W10sdSxwPVtdLGg9W10sYix4PVtdLGc9W10sdix3PVtdLE09W107dmFyIEY9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCBDPXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO289W2ooe3R5cGU6T2JqZWN0fSldLGM9W2ooe3R5cGU6T2JqZWN0fSldLHU9W2ooe3R5cGU6T2JqZWN0fSldLGI9W2ooe3R5cGU6T2JqZWN0fSldLHY9W2ooe3R5cGU6T2JqZWN0fSldLHNnKHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiY3VzdG9tU3BhY2luZyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6az0+ImN1c3RvbVNwYWNpbmciaW4gayxnZXQ6az0+ay5jdXN0b21TcGFjaW5nLHNldDooayxOKT0+e2suY3VzdG9tU3BhY2luZz1OfX0sbWV0YWRhdGE6Q30sbixzKSxzZyh0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImN1c3RvbVJhZGl1cyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6az0+ImN1c3RvbVJhZGl1cyJpbiBrLGdldDprPT5rLmN1c3RvbVJhZGl1cyxzZXQ6KGssTik9PntrLmN1c3RvbVJhZGl1cz1OfX0sbWV0YWRhdGE6Q30sZCxmKSxzZyh0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImN1c3RvbVNoYWRvd3MiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOms9PiJjdXN0b21TaGFkb3dzImluIGssZ2V0Oms9PmsuY3VzdG9tU2hhZG93cyxzZXQ6KGssTik9PntrLmN1c3RvbVNoYWRvd3M9Tn19LG1ldGFkYXRhOkN9LHAsaCksc2codGhpcyxudWxsLGIse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJjdXN0b21UcmFuc2l0aW9ucyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6az0+ImN1c3RvbVRyYW5zaXRpb25zImluIGssZ2V0Oms9PmsuY3VzdG9tVHJhbnNpdGlvbnMsc2V0OihrLE4pPT57ay5jdXN0b21UcmFuc2l0aW9ucz1OfX0sbWV0YWRhdGE6Q30seCxnKSxzZyh0aGlzLG51bGwsdix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImN1c3RvbUNvbnRyb2xIZWlnaHRzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczprPT4iY3VzdG9tQ29udHJvbEhlaWdodHMiaW4gayxnZXQ6az0+ay5jdXN0b21Db250cm9sSGVpZ2h0cyxzZXQ6KGssTik9PntrLmN1c3RvbUNvbnRyb2xIZWlnaHRzPU59fSxtZXRhZGF0YTpDfSx3LE0pLHNnKG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOkN9LG51bGwsciksRj1hPXQudmFsdWUsQyYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpDfSl9c3RhdGljIGRlbW89cVJyO3N0YXRpYyBkZW1vR3JvdXBzPVsiVXRpbGl0eSJdOyNlPVlzKHRoaXMsbixudWxsKTtnZXQgY3VzdG9tU3BhY2luZygpe3JldHVybiB0aGlzLiNlfXNldCBjdXN0b21TcGFjaW5nKEMpe3RoaXMuI2U9Q30jdD0oWXModGhpcyxzKSxZcyh0aGlzLGQsbnVsbCkpO2dldCBjdXN0b21SYWRpdXMoKXtyZXR1cm4gdGhpcy4jdH1zZXQgY3VzdG9tUmFkaXVzKEMpe3RoaXMuI3Q9Q30jcj0oWXModGhpcyxmKSxZcyh0aGlzLHAsbnVsbCkpO2dldCBjdXN0b21TaGFkb3dzKCl7cmV0dXJuIHRoaXMuI3J9c2V0IGN1c3RvbVNoYWRvd3MoQyl7dGhpcy4jcj1DfSNhPShZcyh0aGlzLGgpLFlzKHRoaXMseCxudWxsKSk7Z2V0IGN1c3RvbVRyYW5zaXRpb25zKCl7cmV0dXJuIHRoaXMuI2F9c2V0IGN1c3RvbVRyYW5zaXRpb25zKEMpe3RoaXMuI2E9Q30jaT0oWXModGhpcyxnKSxZcyh0aGlzLHcsbnVsbCkpO2dldCBjdXN0b21Db250cm9sSGVpZ2h0cygpe3JldHVybiB0aGlzLiNpfXNldCBjdXN0b21Db250cm9sSGVpZ2h0cyhDKXt0aGlzLiNpPUN9c3RhdGljIHN0eWxlcz1bUGUsbS5kZWZhdWx0U3R5bGVzLGxlYAogICAgICA6aG9zdCB7CiAgICAgICAgZGlzcGxheTogY29udGVudHM7CiAgICAgIH0KICAgIGBdO3JlbmRlcigpe3JldHVybiBTYAogICAgICA8c3R5bGU+CiAgICAgICAgJHt0aGlzLmdlbmVyYXRlQ3VzdG9tU3R5bGVzKCl9CiAgICAgIDwvc3R5bGU+CiAgICAgIDxzbG90Pjwvc2xvdD4KICAgIGB9Z2VuZXJhdGVDdXN0b21TdHlsZXMoKXtsZXQgQz1bIjpob3N0IHsiXTtpZih0aGlzLmN1c3RvbVNwYWNpbmcpZm9yKGxldFtrLE5db2YgT2JqZWN0LmVudHJpZXModGhpcy5jdXN0b21TcGFjaW5nKSlOJiZDLnB1c2goYCAgLS1kZWVzLXNwYWNpbmctJHtrfTogJHtOfTtgKTtpZih0aGlzLmN1c3RvbVJhZGl1cylmb3IobGV0W2ssTl1vZiBPYmplY3QuZW50cmllcyh0aGlzLmN1c3RvbVJhZGl1cykpTiYmQy5wdXNoKGAgIC0tZGVlcy1yYWRpdXMtJHtrfTogJHtOfTtgKTtpZih0aGlzLmN1c3RvbVNoYWRvd3MpZm9yKGxldFtrLE5db2YgT2JqZWN0LmVudHJpZXModGhpcy5jdXN0b21TaGFkb3dzKSlOJiZDLnB1c2goYCAgLS1kZWVzLXNoYWRvdy0ke2t9OiAke059O2ApO2lmKHRoaXMuY3VzdG9tVHJhbnNpdGlvbnMpe2ZvcihsZXRbayxOXW9mIE9iamVjdC5lbnRyaWVzKHRoaXMuY3VzdG9tVHJhbnNpdGlvbnMpKWlmKE4pe2xldCAkPWs9PT0iZGVmYXVsdCI/ImRlZmF1bHQiOms7Qy5wdXNoKGAgIC0tZGVlcy10cmFuc2l0aW9uLSR7JH06ICR7Tn07YCl9fWlmKHRoaXMuY3VzdG9tQ29udHJvbEhlaWdodHMpZm9yKGxldFtrLE5db2YgT2JqZWN0LmVudHJpZXModGhpcy5jdXN0b21Db250cm9sSGVpZ2h0cykpTiYmQy5wdXNoKGAgIC0tZGVlcy1jb250cm9sLWhlaWdodC0ke2t9OiAke059O2ApO3JldHVybiBDLnB1c2goIn0iKSxDLmpvaW4oYApgKX1zZXRTcGFjaW5nKEMsayl7dGhpcy5jdXN0b21TcGFjaW5nPXsuLi50aGlzLmN1c3RvbVNwYWNpbmcsW0NdOmt9fXNldFJhZGl1cyhDLGspe3RoaXMuY3VzdG9tUmFkaXVzPXsuLi50aGlzLmN1c3RvbVJhZGl1cyxbQ106a319c2V0U2hhZG93KEMsayl7dGhpcy5jdXN0b21TaGFkb3dzPXsuLi50aGlzLmN1c3RvbVNoYWRvd3MsW0NdOmt9fXNldFRyYW5zaXRpb24oQyxrKXt0aGlzLmN1c3RvbVRyYW5zaXRpb25zPXsuLi50aGlzLmN1c3RvbVRyYW5zaXRpb25zLFtDXTprfX1zZXRDb250cm9sSGVpZ2h0KEMsayl7dGhpcy5jdXN0b21Db250cm9sSGVpZ2h0cz17Li4udGhpcy5jdXN0b21Db250cm9sSGVpZ2h0cyxbQ106a319Z2V0VGhlbWUoKXtyZXR1cm57Y29sb3JzOlE0LmNvbG9ycyxzcGFjaW5nOnsuLi5RNC5zcGFjaW5nLC4uLnRoaXMuY3VzdG9tU3BhY2luZ30scmFkaXVzOnsuLi5RNC5yYWRpdXMsLi4udGhpcy5jdXN0b21SYWRpdXN9LHNoYWRvd3M6ey4uLlE0LnNoYWRvd3MsLi4udGhpcy5jdXN0b21TaGFkb3dzfSx0cmFuc2l0aW9uczp7Li4uUTQudHJhbnNpdGlvbnMsLi4udGhpcy5jdXN0b21UcmFuc2l0aW9uc30sY29udHJvbEhlaWdodHM6ey4uLlE0LmNvbnRyb2xIZWlnaHRzLC4uLnRoaXMuY3VzdG9tQ29udHJvbEhlaWdodHN9fX1yZXNldFRvRGVmYXVsdHMoKXt0aGlzLmN1c3RvbVNwYWNpbmc9bnVsbCx0aGlzLmN1c3RvbVJhZGl1cz1udWxsLHRoaXMuY3VzdG9tU2hhZG93cz1udWxsLHRoaXMuY3VzdG9tVHJhbnNpdGlvbnM9bnVsbCx0aGlzLmN1c3RvbUNvbnRyb2xIZWlnaHRzPW51bGx9YXBwbHlUaGVtZShDKXtDLnNwYWNpbmcmJih0aGlzLmN1c3RvbVNwYWNpbmc9Qy5zcGFjaW5nKSxDLnJhZGl1cyYmKHRoaXMuY3VzdG9tUmFkaXVzPUMucmFkaXVzKSxDLnNoYWRvd3MmJih0aGlzLmN1c3RvbVNoYWRvd3M9Qy5zaGFkb3dzKSxDLnRyYW5zaXRpb25zJiYodGhpcy5jdXN0b21UcmFuc2l0aW9ucz1DLnRyYW5zaXRpb25zKSxDLmNvbnRyb2xIZWlnaHRzJiYodGhpcy5jdXN0b21Db250cm9sSGVpZ2h0cz1DLmNvbnRyb2xIZWlnaHRzKX1jb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyksWXModGhpcyxNKX1zdGF0aWN7WXMoYSxyKX19O3JldHVybiBGPWF9KSgpfSk7dmFyIFdScj1sKCgpPT57VVJyKCl9KTt2YXIgR1JyLFlScj1sKCgpPT57U2UoKTtSMHQoKTtHUnI9YXN5bmMoKT0+e2xldCBlPWF3YWl0IE1jZS5jcmVhdGVBbmRTaG93KCk7c2V0VGltZW91dChhc3luYygpPT57YXdhaXQgZS5kZXN0cm95KCl9LDFlNCl9fSk7dmFyIEIwdCxRWixNY2UsUjB0PWwoKCk9PntTZSgpO1lScigpO2tjKCk7U2UoKTtvdCgpO0IwdD1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LFFaPWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSxNY2U9KCgpPT57bGV0IGU9W3plKCJkZWVzLXVwZGF0ZXIiKV0sdCxyPVtdLGEsaT1EZSxvLG49W10scz1bXSxjLGQ9W10sZj1bXTt2YXIgdT1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0IHA9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baih7dHlwZTpTdHJpbmd9KV0sYz1baih7dHlwZTpTdHJpbmd9KV0sQjB0KHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiY3VycmVudFZlcnNpb24iLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmg9PiJjdXJyZW50VmVyc2lvbiJpbiBoLGdldDpoPT5oLmN1cnJlbnRWZXJzaW9uLHNldDooaCxiKT0+e2guY3VycmVudFZlcnNpb249Yn19LG1ldGFkYXRhOnB9LG4scyksQjB0KHRoaXMsbnVsbCxjLHtraW5kOiJhY2Nlc3NvciIsbmFtZToidXBkYXRlZFZlcnNpb24iLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmg9PiJ1cGRhdGVkVmVyc2lvbiJpbiBoLGdldDpoPT5oLnVwZGF0ZWRWZXJzaW9uLHNldDooaCxiKT0+e2gudXBkYXRlZFZlcnNpb249Yn19LG1ldGFkYXRhOnB9LGQsZiksQjB0KG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOnB9LG51bGwsciksdT1hPXQudmFsdWUscCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpwfSl9c3RhdGljIGRlbW89R1JyO3N0YXRpYyBkZW1vR3JvdXBzPVsiVXRpbGl0eSJdO3N0YXRpYyBhc3luYyBjcmVhdGVBbmRTaG93KCl7bGV0IHA9bmV3IHU7cmV0dXJuIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocCkscH0jZT1RWih0aGlzLG4sdm9pZCAwKTtnZXQgY3VycmVudFZlcnNpb24oKXtyZXR1cm4gdGhpcy4jZX1zZXQgY3VycmVudFZlcnNpb24ocCl7dGhpcy4jZT1wfSN0PShRWih0aGlzLHMpLFFaKHRoaXMsZCx2b2lkIDApKTtnZXQgdXBkYXRlZFZlcnNpb24oKXtyZXR1cm4gdGhpcy4jdH1zZXQgdXBkYXRlZFZlcnNpb24ocCl7dGhpcy4jdD1wfWNvbnN0cnVjdG9yKCl7c3VwZXIoKSxRWih0aGlzLGYpLCR0LmVsZW1lbnRCYXNpYy5zZXR1cCgpfXN0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgLyogVE9ETzogTWlncmF0ZSBoYXJkY29kZWQgdmFsdWVzIHRvIC0tZGVlcy0qIENTUyB2YXJpYWJsZXMgKi8KICAgICAgLm1vZGFsQ29udGFpbmVyIHsKICAgICAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtOwogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2VlZWVlYiIsIiMyMjIiKX07CiAgICAgICAgbWF4LXdpZHRoOiA4MDBweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7CiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZWVlZWViIiwiIzMzMyIpfTsKICAgICAgfQoKICAgICAgLmhlYWRpbmdDb250YWluZXIgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBwYWRkaW5nOiA0MHB4IDQwcHg7CiAgICAgIH0KCiAgICAgIGgxIHsKICAgICAgICBtYXJnaW46IG5vbmU7CiAgICAgICAgZm9udC1zaXplOiAyMHB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzMzMyIsIiNmZmYiKX07CiAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDsKICAgICAgfQoKICAgICAgLmJ1dHRvbkNvbnRhaW5lciB7CiAgICAgICAgZGlzcGxheTogZ3JpZDsKICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDUwJSA1MCU7CiAgICAgIH0KICAgIGBdO3JlbmRlcigpe3JldHVybiBTYAogICAgICA8ZGVlcy13aW5kb3dsYXllcgogICAgICAgIEBjbGlja2VkPSIke3RoaXMud2luZG93TGF5ZXJDbGlja2VkfSIKICAgICAgICAub3B0aW9ucz0ke3tibHVyOiEwfX0KICAgICAgPgogICAgICAgIDxkaXYgY2xhc3M9Im1vZGFsQ29udGFpbmVyIj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImhlYWRpbmdDb250YWluZXIiPgogICAgICAgICAgICA8ZGVlcy1zcGlubmVyIC5zaXplPSR7NjB9PjwvZGVlcy1zcGlubmVyPgogICAgICAgICAgICA8aDE+VXBkYXRpbmcgdGhlIGFwcGxpY2F0aW9uLi4uPC9oMT4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0icHJvZ3Jlc3MiPgogICAgICAgICAgICA8ZGVlcy1wcm9ncmVzc2JhciAucHJvZ3Jlc3M9JHsuNX0+PC9kZWVzLXByb2dyZXNzYmFyPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJidXR0b25Db250YWluZXIiPgogICAgICAgICAgICA8ZGVlcy1idXR0b24+TW9yZSBpbmZvPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgICAgPGRlZXMtYnV0dG9uPkNoYW5nZWxvZzwvZGVlcy1idXR0b24+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4gPC9kZWVzLXdpbmRvd2xheWVyCiAgICAgID4+CiAgICBgfWFzeW5jIGRlc3Ryb3koKXt0aGlzLnBhcmVudEVsZW1lbnQucmVtb3ZlQ2hpbGQodGhpcyl9d2luZG93TGF5ZXJDbGlja2VkKCl7fXN0YXRpY3tRWihhLHIpfX07cmV0dXJuIHU9YX0pKCl9KTt2YXIgWlJyPWwoKCk9PntSMHQoKX0pO3ZhciBYUnI9bCgoKT0+e0ZsdCgpfSk7dmFyIFFScj1sKCgpPT57SVJyKCk7SFJyKCk7V1JyKCk7WlJyKCk7WFJyKCl9KTt2YXIgRzgscG4sS1JyLGtjZT1sKCgpPT57U2UoKTtlcigpO290KCk7YnIoKTtiaSgpO2JpKCk7UzgoKTtzMygpO3MzKCk7Rzg9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxwbj1mdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MixpPTA7aTx0Lmxlbmd0aDtpKyspcj1hP3RbaV0uY2FsbChlLHIpOnRbaV0uY2FsbChlKTtyZXR1cm4gYT9yOnZvaWQgMH0sS1JyPSgoKT0+e2xldCBlPVt6ZSgiZGVlcy13b3Jrc3BhY2UtZmlsZXRyZWUiKV0sdCxyPVtdLGEsaT1EZSxvLG49W10scz1bXSxjLGQ9W10sZj1bXSx1LHA9W10saD1bXSxiLHg9W10sZz1bXSx2LHc9W10sTT1bXSxGLEM9W10saz1bXTt2YXIgTj1jbGFzcyBleHRlbmRzIGl7c3RhdGlje2E9dGhpc31zdGF0aWN7bGV0ICQ9dHlwZW9mIFN5bWJvbD09ImZ1bmN0aW9uIiYmU3ltYm9sLm1ldGFkYXRhP09iamVjdC5jcmVhdGUoaVtTeW1ib2wubWV0YWRhdGFdPz9udWxsKTp2b2lkIDA7bz1baih7dHlwZTpPYmplY3R9KV0sYz1baih7dHlwZTpTdHJpbmd9KV0sdT1baih7dHlwZTpTdHJpbmd9KV0sYj1bcmUoKV0sdj1bcmUoKV0sRj1bcmUoKV0sRzgodGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJleGVjdXRpb25FbnZpcm9ubWVudCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ST0+ImV4ZWN1dGlvbkVudmlyb25tZW50ImluIEksZ2V0Okk9PkkuZXhlY3V0aW9uRW52aXJvbm1lbnQsc2V0OihJLEIpPT57SS5leGVjdXRpb25FbnZpcm9ubWVudD1CfX0sbWV0YWRhdGE6JH0sbixzKSxHOCh0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InJvb3RQYXRoIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpJPT4icm9vdFBhdGgiaW4gSSxnZXQ6ST0+SS5yb290UGF0aCxzZXQ6KEksQik9PntJLnJvb3RQYXRoPUJ9fSxtZXRhZGF0YTokfSxkLGYpLEc4KHRoaXMsbnVsbCx1LHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2VsZWN0ZWRQYXRoIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpJPT4ic2VsZWN0ZWRQYXRoImluIEksZ2V0Okk9Pkkuc2VsZWN0ZWRQYXRoLHNldDooSSxCKT0+e0kuc2VsZWN0ZWRQYXRoPUJ9fSxtZXRhZGF0YTokfSxwLGgpLEc4KHRoaXMsbnVsbCxiLHtraW5kOiJhY2Nlc3NvciIsbmFtZToidHJlZURhdGEiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOkk9PiJ0cmVlRGF0YSJpbiBJLGdldDpJPT5JLnRyZWVEYXRhLHNldDooSSxCKT0+e0kudHJlZURhdGE9Qn19LG1ldGFkYXRhOiR9LHgsZyksRzgodGhpcyxudWxsLHYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJpc0xvYWRpbmciLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOkk9PiJpc0xvYWRpbmciaW4gSSxnZXQ6ST0+SS5pc0xvYWRpbmcsc2V0OihJLEIpPT57SS5pc0xvYWRpbmc9Qn19LG1ldGFkYXRhOiR9LHcsTSksRzgodGhpcyxudWxsLEYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJlcnJvck1lc3NhZ2UiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOkk9PiJlcnJvck1lc3NhZ2UiaW4gSSxnZXQ6ST0+SS5lcnJvck1lc3NhZ2Usc2V0OihJLEIpPT57SS5lcnJvck1lc3NhZ2U9Qn19LG1ldGFkYXRhOiR9LEMsayksRzgobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6JH0sbnVsbCxyKSxOPWE9dC52YWx1ZSwkJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOiR9KX1zdGF0aWMgZGVtbz0oKT0+U2AKICAgIDxkaXYgc3R5bGU9IndpZHRoOiAzMDBweDsgaGVpZ2h0OiA0MDBweDsgcG9zaXRpb246IHJlbGF0aXZlOyI+CiAgICAgIDxkZWVzLXdvcmtzcGFjZS1maWxldHJlZT48L2RlZXMtd29ya3NwYWNlLWZpbGV0cmVlPgogICAgPC9kaXY+CiAgYDtzdGF0aWMgZGVtb0dyb3Vwcz1bIldvcmtzcGFjZSJdOyNlPXBuKHRoaXMsbixudWxsKTtnZXQgZXhlY3V0aW9uRW52aXJvbm1lbnQoKXtyZXR1cm4gdGhpcy4jZX1zZXQgZXhlY3V0aW9uRW52aXJvbm1lbnQoJCl7dGhpcy4jZT0kfSN0PShwbih0aGlzLHMpLHBuKHRoaXMsZCwiLyIpKTtnZXQgcm9vdFBhdGgoKXtyZXR1cm4gdGhpcy4jdH1zZXQgcm9vdFBhdGgoJCl7dGhpcy4jdD0kfSNyPShwbih0aGlzLGYpLHBuKHRoaXMscCwiIikpO2dldCBzZWxlY3RlZFBhdGgoKXtyZXR1cm4gdGhpcy4jcn1zZXQgc2VsZWN0ZWRQYXRoKCQpe3RoaXMuI3I9JH0jYT0ocG4odGhpcyxoKSxwbih0aGlzLHgsW10pKTtnZXQgdHJlZURhdGEoKXtyZXR1cm4gdGhpcy4jYX1zZXQgdHJlZURhdGEoJCl7dGhpcy4jYT0kfSNpPShwbih0aGlzLGcpLHBuKHRoaXMsdywhMSkpO2dldCBpc0xvYWRpbmcoKXtyZXR1cm4gdGhpcy4jaX1zZXQgaXNMb2FkaW5nKCQpe3RoaXMuI2k9JH0jbz0ocG4odGhpcyxNKSxwbih0aGlzLEMsIiIpKTtnZXQgZXJyb3JNZXNzYWdlKCl7cmV0dXJuIHRoaXMuI299c2V0IGVycm9yTWVzc2FnZSgkKXt0aGlzLiNvPSR9ZXhwYW5kZWRQYXRocz0ocG4odGhpcyxrKSxuZXcgU2V0KTtsb2FkVHJlZVN0YXJ0ZWQ9ITE7Y2xpcGJvYXJkUGF0aD1udWxsO2NsaXBib2FyZE9wZXJhdGlvbj1udWxsO2ZpbGVXYXRjaGVyPW51bGw7cmVmcmVzaERlYm91bmNlVGltZW91dD1udWxsO2xhc3RFeGVjdXRpb25FbnZpcm9ubWVudD1udWxsO3N0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgOmhvc3QgewogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICB0b3A6IDA7CiAgICAgICAgbGVmdDogMDsKICAgICAgICByaWdodDogMDsKICAgICAgICBib3R0b206IDA7CiAgICAgICAgb3ZlcmZsb3c6IGF1dG87CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk4JSkiLCJoc2woMCAwJSA5JSkiKX07CiAgICAgICAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgJ1NlZ29lIFVJJywgUm9ib3RvLCBzYW5zLXNlcmlmOwogICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgfQoKICAgICAgLnRyZWUtY29udGFpbmVyIHsKICAgICAgICBwYWRkaW5nOiA4cHggMDsKICAgICAgfQoKICAgICAgLnRyZWUtaXRlbSB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIHBhZGRpbmc6IDRweCA4cHg7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIHVzZXItc2VsZWN0OiBub25lOwogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgICBtYXJnaW46IDFweCA0cHg7CiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjFzIGVhc2U7CiAgICAgIH0KCiAgICAgIC50cmVlLWl0ZW06aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5MyUpIiwiaHNsKDAgMCUgMTQlKSIpfTsKICAgICAgfQoKICAgICAgLnRyZWUtaXRlbS5zZWxlY3RlZCB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgyMTAgMTAwJSA5NSUpIiwiaHNsKDIxMCA1MCUgMjAlKSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTAgMTAwJSA0MCUpIiwiaHNsKDIxMCAxMDAlIDcwJSkiKX07CiAgICAgIH0KCiAgICAgIC50cmVlLWl0ZW0uc2VsZWN0ZWQ6aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMjEwIDEwMCUgOTIlKSIsImhzbCgyMTAgNTAlIDI1JSkiKX07CiAgICAgIH0KCiAgICAgIC5pbmRlbnQgewogICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgICAgICB3aWR0aDogMTZweDsKICAgICAgICBmbGV4LXNocmluazogMDsKICAgICAgfQoKICAgICAgLmV4cGFuZC1pY29uIHsKICAgICAgICB3aWR0aDogMTZweDsKICAgICAgICBoZWlnaHQ6IDE2cHg7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNTAlKSIsImhzbCgwIDAlIDYwJSkiKX07CiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGVhc2U7CiAgICAgIH0KCiAgICAgIC5leHBhbmQtaWNvbi5leHBhbmRlZCB7CiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpOwogICAgICB9CgogICAgICAuZXhwYW5kLWljb24uaGlkZGVuIHsKICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47CiAgICAgIH0KCiAgICAgIC5maWxlLWljb24gewogICAgICAgIHdpZHRoOiAxNnB4OwogICAgICAgIGhlaWdodDogMTZweDsKICAgICAgICBtYXJnaW4tcmlnaHQ6IDZweDsKICAgICAgICBmbGV4LXNocmluazogMDsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgIH0KCiAgICAgIC5maWxlLWljb24gZGVlcy1pY29uIHsKICAgICAgICB3aWR0aDogMTZweDsKICAgICAgICBoZWlnaHQ6IDE2cHg7CiAgICAgIH0KCiAgICAgIC5maWxlLWljb24uZm9sZGVyIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCg0NSA4MCUgNDUlKSIsImhzbCg0NSA3MCUgNTUlKSIpfTsKICAgICAgfQoKICAgICAgLmZpbGUtaWNvbi5maWxlIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDUwJSkiLCJoc2woMCAwJSA2MCUpIil9OwogICAgICB9CgogICAgICAuZmlsZS1pY29uLnR5cGVzY3JpcHQgewogICAgICAgIGNvbG9yOiBoc2woMjExIDYwJSA0OCUpOwogICAgICB9CgogICAgICAuZmlsZS1pY29uLmphdmFzY3JpcHQgewogICAgICAgIGNvbG9yOiBoc2woNTMgOTMlIDU0JSk7CiAgICAgIH0KCiAgICAgIC5maWxlLWljb24uanNvbiB7CiAgICAgICAgY29sb3I6IGhzbCg0NSA4MCUgNTAlKTsKICAgICAgfQoKICAgICAgLmZpbGUtaWNvbi5odG1sIHsKICAgICAgICBjb2xvcjogaHNsKDE0IDc3JSA1MiUpOwogICAgICB9CgogICAgICAuZmlsZS1pY29uLmNzcyB7CiAgICAgICAgY29sb3I6IGhzbCgyMjggNzclIDU5JSk7CiAgICAgIH0KCiAgICAgIC5maWxlLWljb24ubWFya2Rvd24gewogICAgICAgIGNvbG9yOiBoc2woMCAwJSA1MCUpOwogICAgICB9CgogICAgICAuZmlsZS1uYW1lIHsKICAgICAgICBmbGV4OiAxOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7CiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDIwJSkiLCJoc2woMCAwJSA4NSUpIil9OwogICAgICB9CgogICAgICAubG9hZGluZyB7CiAgICAgICAgcGFkZGluZzogMTZweDsKICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA1MCUpIiwiaHNsKDAgMCUgNjAlKSIpfTsKICAgICAgfQoKICAgICAgLmVycm9yIHsKICAgICAgICBwYWRkaW5nOiAxNnB4OwogICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICBjb2xvcjogaHNsKDAgNzAlIDUwJSk7CiAgICAgIH0KCiAgICAgIC5lbXB0eSB7CiAgICAgICAgcGFkZGluZzogMTZweDsKICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA1MCUpIiwiaHNsKDAgMCUgNjAlKSIpfTsKICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7CiAgICAgIH0KCiAgICAgIC5maWxldHJlZS10b29sYmFyIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwogICAgICAgIGhlaWdodDogMzZweDsKICAgICAgICBwYWRkaW5nOiAwIDEycHg7CiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4NSUpIiwiaHNsKDAgMCUgMTUlKSIpfTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOTYlKSIsImhzbCgwIDAlIDglKSIpfTsKICAgICAgICBwb3NpdGlvbjogc3RpY2t5OwogICAgICAgIHRvcDogMDsKICAgICAgICB6LWluZGV4OiAxOwogICAgICB9CgogICAgICAudG9vbGJhci10aXRsZSB7CiAgICAgICAgZm9udC1zaXplOiAxMXB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsKICAgICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA0MCUpIiwiaHNsKDAgMCUgNjAlKSIpfTsKICAgICAgfQoKICAgICAgLnRvb2xiYXItYWN0aW9ucyB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBnYXA6IDRweDsKICAgICAgfQoKICAgICAgLnRvb2xiYXItYnV0dG9uIHsKICAgICAgICBwYWRkaW5nOiA0cHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICBvcGFjaXR5OiAwLjc7CiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cywgYmFja2dyb3VuZCAwLjE1czsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAzMCUpIiwiaHNsKDAgMCUgNzAlKSIpfTsKICAgICAgfQoKICAgICAgLnRvb2xiYXItYnV0dG9uOmhvdmVyIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAwJSAvIDAuMDgpIiwiaHNsKDAgMCUgMTAwJSAvIDAuMSkiKX07CiAgICAgIH0KICAgIGBdO3JlbmRlcigpe3JldHVybiB0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50P3RoaXMuaXNMb2FkaW5nP1NgCiAgICAgICAgPGRpdiBjbGFzcz0ibG9hZGluZyI+CiAgICAgICAgICBMb2FkaW5nIGZpbGVzLi4uCiAgICAgICAgPC9kaXY+CiAgICAgIGA6dGhpcy5lcnJvck1lc3NhZ2U/U2AKICAgICAgICA8ZGl2IGNsYXNzPSJlcnJvciI+CiAgICAgICAgICAke3RoaXMuZXJyb3JNZXNzYWdlfQogICAgICAgIDwvZGl2PgogICAgICBgOlNgCiAgICAgIDxkaXYgY2xhc3M9ImZpbGV0cmVlLXRvb2xiYXIiPgogICAgICAgIDxzcGFuIGNsYXNzPSJ0b29sYmFyLXRpdGxlIj5FeHBsb3Jlcjwvc3Bhbj4KICAgICAgICA8ZGl2IGNsYXNzPSJ0b29sYmFyLWFjdGlvbnMiPgogICAgICAgICAgPGRpdiBjbGFzcz0idG9vbGJhci1idXR0b24iIEBjbGljaz0keygpPT50aGlzLmNyZWF0ZU5ld0ZpbGUoIi8iKX0gdGl0bGU9Ik5ldyBGaWxlIj4KICAgICAgICAgICAgPGRlZXMtaWNvbiAuaWNvbj0keyJsdWNpZGU6ZmlsZVBsdXMifSBpY29uU2l6ZT0iMTYiPjwvZGVlcy1pY29uPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJ0b29sYmFyLWJ1dHRvbiIgQGNsaWNrPSR7KCk9PnRoaXMuY3JlYXRlTmV3Rm9sZGVyKCIvIil9IHRpdGxlPSJOZXcgRm9sZGVyIj4KICAgICAgICAgICAgPGRlZXMtaWNvbiAuaWNvbj0keyJsdWNpZGU6Zm9sZGVyUGx1cyJ9IGljb25TaXplPSIxNiI+PC9kZWVzLWljb24+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICAgICR7dGhpcy50cmVlRGF0YS5sZW5ndGg9PT0wP1NgPGRpdiBjbGFzcz0iZW1wdHkiPk5vIGZpbGVzIGZvdW5kLjwvZGl2PmA6U2AKICAgICAgICAgICAgPGRpdiBjbGFzcz0idHJlZS1jb250YWluZXIiIEBjb250ZXh0bWVudT0ke3RoaXMuaGFuZGxlRW1wdHlTcGFjZUNvbnRleHRNZW51fT4KICAgICAgICAgICAgICAke3RoaXMucmVuZGVyVHJlZSh0aGlzLnRyZWVEYXRhKX0KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICBgfQogICAgYDpTYAogICAgICAgIDxkaXYgY2xhc3M9ImVtcHR5Ij4KICAgICAgICAgIE5vIGV4ZWN1dGlvbiBlbnZpcm9ubWVudCBwcm92aWRlZC4KICAgICAgICA8L2Rpdj4KICAgICAgYH1yZW5kZXJUcmVlKCQpe3JldHVybiAkLm1hcChJPT50aGlzLnJlbmRlck5vZGUoSSkpfXJlbmRlck5vZGUoJCl7bGV0IEk9JC50eXBlPT09ImRpcmVjdG9yeSIsQj10aGlzLmV4cGFuZGVkUGF0aHMuaGFzKCQucGF0aCksej0kLnBhdGg9PT10aGlzLnNlbGVjdGVkUGF0aCx5PXRoaXMuZ2V0RmlsZUljb25DbGFzcygkKTtyZXR1cm4gU2AKICAgICAgPGRpdgogICAgICAgIGNsYXNzPSJ0cmVlLWl0ZW0gJHt6PyJzZWxlY3RlZCI6IiJ9IgogICAgICAgIHN0eWxlPSJwYWRkaW5nLWxlZnQ6ICR7OCskLmxldmVsKjE2fXB4IgogICAgICAgIEBjbGljaz0ke0U9PnRoaXMuaGFuZGxlSXRlbUNsaWNrKEUsJCl9CiAgICAgICAgQGNvbnRleHRtZW51PSR7RT0+dGhpcy5oYW5kbGVDb250ZXh0TWVudShFLCQpfQogICAgICA+CiAgICAgICAgPHNwYW4gY2xhc3M9ImV4cGFuZC1pY29uICR7Qj8iZXhwYW5kZWQiOiIifSAke0k/IiI6ImhpZGRlbiJ9Ij4KICAgICAgICAgIDxkZWVzLWljb24gLmljb249JHsibHVjaWRlOmNoZXZyb25SaWdodCJ9IGljb25TaXplPSIxMiI+PC9kZWVzLWljb24+CiAgICAgICAgPC9zcGFuPgogICAgICAgIDxzcGFuIGNsYXNzPSJmaWxlLWljb24gJHt5fSI+CiAgICAgICAgICA8ZGVlcy1pY29uIC5pY29uPSR7dGhpcy5nZXRGaWxlSWNvbigkKX0gaWNvblNpemU9IjE2Ij48L2RlZXMtaWNvbj4KICAgICAgICA8L3NwYW4+CiAgICAgICAgPHNwYW4gY2xhc3M9ImZpbGUtbmFtZSI+JHskLm5hbWV9PC9zcGFuPgogICAgICA8L2Rpdj4KICAgICAgJHtJJiZCJiYkLmNoaWxkcmVuP3RoaXMucmVuZGVyVHJlZSgkLmNoaWxkcmVuKToiIn0KICAgIGB9Z2V0RmlsZUljb24oJCl7aWYoJC50eXBlPT09ImRpcmVjdG9yeSIpcmV0dXJuIHRoaXMuZXhwYW5kZWRQYXRocy5oYXMoJC5wYXRoKT8ibHVjaWRlOmZvbGRlck9wZW4iOiJsdWNpZGU6Zm9sZGVyIjtzd2l0Y2goJC5uYW1lLnNwbGl0KCIuIikucG9wKCk/LnRvTG93ZXJDYXNlKCkpe2Nhc2UidHMiOmNhc2UidHN4IjpyZXR1cm4ibHVjaWRlOmZpbGVDb2RlIjtjYXNlImpzIjpjYXNlImpzeCI6cmV0dXJuImx1Y2lkZTpmaWxlQ29kZSI7Y2FzZSJqc29uIjpyZXR1cm4ibHVjaWRlOmZpbGVKc29uIjtjYXNlImh0bWwiOnJldHVybiJsdWNpZGU6ZmlsZUNvZGUiO2Nhc2UiY3NzIjpjYXNlInNjc3MiOmNhc2UibGVzcyI6cmV0dXJuImx1Y2lkZTpmaWxlQ29kZSI7Y2FzZSJtZCI6cmV0dXJuImx1Y2lkZTpmaWxlVGV4dCI7Y2FzZSJwbmciOmNhc2UianBnIjpjYXNlImpwZWciOmNhc2UiZ2lmIjpjYXNlInN2ZyI6cmV0dXJuImx1Y2lkZTppbWFnZSI7ZGVmYXVsdDpyZXR1cm4ibHVjaWRlOmZpbGUifX1nZXRGaWxlSWNvbkNsYXNzKCQpe2lmKCQudHlwZT09PSJkaXJlY3RvcnkiKXJldHVybiJmb2xkZXIiO3N3aXRjaCgkLm5hbWUuc3BsaXQoIi4iKS5wb3AoKT8udG9Mb3dlckNhc2UoKSl7Y2FzZSJ0cyI6Y2FzZSJ0c3giOnJldHVybiJ0eXBlc2NyaXB0IjtjYXNlImpzIjpjYXNlImpzeCI6cmV0dXJuImphdmFzY3JpcHQiO2Nhc2UianNvbiI6cmV0dXJuImpzb24iO2Nhc2UiaHRtbCI6cmV0dXJuImh0bWwiO2Nhc2UiY3NzIjpjYXNlInNjc3MiOmNhc2UibGVzcyI6cmV0dXJuImNzcyI7Y2FzZSJtZCI6cmV0dXJuIm1hcmtkb3duIjtkZWZhdWx0OnJldHVybiJmaWxlIn19YXN5bmMgaGFuZGxlSXRlbUNsaWNrKCQsSSl7JC5zdG9wUHJvcGFnYXRpb24oKSxJLnR5cGU9PT0iZGlyZWN0b3J5Ij9hd2FpdCB0aGlzLnRvZ2dsZURpcmVjdG9yeShJKToodGhpcy5zZWxlY3RlZFBhdGg9SS5wYXRoLHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoImZpbGUtc2VsZWN0Iix7ZGV0YWlsOntwYXRoOkkucGF0aCxuYW1lOkkubmFtZX0sYnViYmxlczohMCxjb21wb3NlZDohMH0pKSl9YXN5bmMgdG9nZ2xlRGlyZWN0b3J5KCQpe3RoaXMuZXhwYW5kZWRQYXRocy5oYXMoJC5wYXRoKT90aGlzLmV4cGFuZGVkUGF0aHMuZGVsZXRlKCQucGF0aCk6KHRoaXMuZXhwYW5kZWRQYXRocy5hZGQoJC5wYXRoKSwoISQuY2hpbGRyZW58fCQuY2hpbGRyZW4ubGVuZ3RoPT09MCkmJmF3YWl0IHRoaXMubG9hZERpcmVjdG9yeUNvbnRlbnRzKCQpKSx0aGlzLnJlcXVlc3RVcGRhdGUoKX1hc3luYyBsb2FkRGlyZWN0b3J5Q29udGVudHMoJCl7aWYodGhpcy5leGVjdXRpb25FbnZpcm9ubWVudCl0cnl7bGV0IEk9YXdhaXQgdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudC5yZWFkRGlyKCQucGF0aCk7JC5jaGlsZHJlbj10aGlzLnNvcnRFbnRyaWVzKEkpLm1hcChCPT4oey4uLkIsbGV2ZWw6JC5sZXZlbCsxLGV4cGFuZGVkOiExLGNoaWxkcmVuOkIudHlwZT09PSJkaXJlY3RvcnkiP1tdOnZvaWQgMH0pKX1jYXRjaChJKXtjb25zb2xlLmVycm9yKGBGYWlsZWQgdG8gbG9hZCBkaXJlY3RvcnkgJHskLnBhdGh9OmAsSSl9fWFzeW5jIGhhbmRsZUNvbnRleHRNZW51KCQsSSl7JC5wcmV2ZW50RGVmYXVsdCgpLCQuc3RvcFByb3BhZ2F0aW9uKCk7bGV0IEI9W107SS50eXBlPT09ImRpcmVjdG9yeSImJkIucHVzaCh7bmFtZToiTmV3IEZpbGUiLGljb25OYW1lOiJmaWxlUGx1cyIsYWN0aW9uOmFzeW5jKCk9PnRoaXMuY3JlYXRlTmV3RmlsZShJLnBhdGgpfSx7bmFtZToiTmV3IEZvbGRlciIsaWNvbk5hbWU6ImZvbGRlclBsdXMiLGFjdGlvbjphc3luYygpPT50aGlzLmNyZWF0ZU5ld0ZvbGRlcihJLnBhdGgpfSx7ZGl2aWRlcjohMH0pLEIucHVzaCh7bmFtZToiUmVuYW1lIixpY29uTmFtZToicGVuY2lsIixhY3Rpb246YXN5bmMoKT0+dGhpcy5yZW5hbWVJdGVtKEkpfSx7bmFtZToiRHVwbGljYXRlIixpY29uTmFtZToiZmlsZXMiLGFjdGlvbjphc3luYygpPT50aGlzLmR1cGxpY2F0ZUl0ZW0oSSl9LHtuYW1lOiJDb3B5IixpY29uTmFtZToiY29weSIsYWN0aW9uOmFzeW5jKCk9PnRoaXMuY29weUl0ZW0oSSl9KSxJLnR5cGU9PT0iZGlyZWN0b3J5IiYmdGhpcy5jbGlwYm9hcmRQYXRoJiZCLnB1c2goe25hbWU6IlBhc3RlIixpY29uTmFtZToiY2xpcGJvYXJkIixhY3Rpb246YXN5bmMoKT0+dGhpcy5wYXN0ZUl0ZW0oSS5wYXRoKX0pLEIucHVzaCh7ZGl2aWRlcjohMH0se25hbWU6IkRlbGV0ZSIsaWNvbk5hbWU6InRyYXNoMiIsYWN0aW9uOmFzeW5jKCk9PnRoaXMuZGVsZXRlSXRlbShJKX0pLGF3YWl0IHRyLm9wZW5Db250ZXh0TWVudVdpdGhPcHRpb25zKCQsQil9YXN5bmMgaGFuZGxlRW1wdHlTcGFjZUNvbnRleHRNZW51KCQpe2lmKCQudGFyZ2V0LmNsb3Nlc3QoIi50cmVlLWl0ZW0iKSlyZXR1cm47JC5wcmV2ZW50RGVmYXVsdCgpLCQuc3RvcFByb3BhZ2F0aW9uKCk7bGV0IEI9W3tuYW1lOiJOZXcgRmlsZSIsaWNvbk5hbWU6ImZpbGVQbHVzIixhY3Rpb246YXN5bmMoKT0+dGhpcy5jcmVhdGVOZXdGaWxlKCIvIil9LHtuYW1lOiJOZXcgRm9sZGVyIixpY29uTmFtZToiZm9sZGVyUGx1cyIsYWN0aW9uOmFzeW5jKCk9PnRoaXMuY3JlYXRlTmV3Rm9sZGVyKCIvIil9XTt0aGlzLmNsaXBib2FyZFBhdGgmJkIucHVzaCh7ZGl2aWRlcjohMH0se25hbWU6IlBhc3RlIixpY29uTmFtZToiY2xpcGJvYXJkIixhY3Rpb246YXN5bmMoKT0+dGhpcy5wYXN0ZUl0ZW0oIi8iKX0pLGF3YWl0IHRyLm9wZW5Db250ZXh0TWVudVdpdGhPcHRpb25zKCQsQil9YXN5bmMgc2hvd0lucHV0TW9kYWwoJCl7cmV0dXJuIG5ldyBQcm9taXNlKGFzeW5jIEk9PntsZXQgQj1hd2FpdCBHdC5jcmVhdGVBbmRTaG93KHtoZWFkaW5nOiQuaGVhZGluZyx3aWR0aDoic21hbGwiLGNvbnRlbnQ6U2AKICAgICAgICAgIDxkZWVzLWlucHV0LXRleHQKICAgICAgICAgICAgLmxhYmVsPSR7JC5sYWJlbH0KICAgICAgICAgICAgLnZhbHVlPSR7JC52YWx1ZXx8IiJ9CiAgICAgICAgICA+PC9kZWVzLWlucHV0LXRleHQ+CiAgICAgICAgYCxtZW51T3B0aW9uczpbe25hbWU6IkNhbmNlbCIsYWN0aW9uOmFzeW5jIHk9Pnthd2FpdCB5LmRlc3Ryb3koKSxJKG51bGwpfX0se25hbWU6JC5idXR0b25OYW1lfHwiQ3JlYXRlIixhY3Rpb246YXN5bmMgeT0+e2xldCBQPXkuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiLm1vZGFsIC5jb250ZW50Iik/LnF1ZXJ5U2VsZWN0b3IoImRlZXMtaW5wdXQtdGV4dCIpPy52YWx1ZT8udHJpbSgpfHwiIjthd2FpdCB5LmRlc3Ryb3koKSxJKFB8fG51bGwpfX1dfSk7YXdhaXQgQi51cGRhdGVDb21wbGV0ZTtsZXQgej1CLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoIi5tb2RhbCAuY29udGVudCIpO2lmKHope2xldCB5PXoucXVlcnlTZWxlY3RvcigiZGVlcy1pbnB1dC10ZXh0Iik7eSYmKGF3YWl0IHkudXBkYXRlQ29tcGxldGUseS5mb2N1cygpKX19KX1hc3luYyBjcmVhdGVOZXdGaWxlKCQpe2xldCBJPWF3YWl0IHRoaXMuc2hvd0lucHV0TW9kYWwoe2hlYWRpbmc6Ik5ldyBGaWxlIixsYWJlbDoiRmlsZSBuYW1lIn0pO2lmKCFJfHwhdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudClyZXR1cm47bGV0IEI9JD09PSIvIj9gLyR7SX1gOmAkeyR9LyR7SX1gO3RyeXthd2FpdCB0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50LndyaXRlRmlsZShCLCIiKSxhd2FpdCB0aGlzLnJlZnJlc2goKSx0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJmaWxlLWNyZWF0ZWQiLHtkZXRhaWw6e3BhdGg6Qn0sYnViYmxlczohMCxjb21wb3NlZDohMH0pKX1jYXRjaCh6KXtjb25zb2xlLmVycm9yKCJGYWlsZWQgdG8gY3JlYXRlIGZpbGU6Iix6KX19YXN5bmMgY3JlYXRlTmV3Rm9sZGVyKCQpe2xldCBJPWF3YWl0IHRoaXMuc2hvd0lucHV0TW9kYWwoe2hlYWRpbmc6Ik5ldyBGb2xkZXIiLGxhYmVsOiJGb2xkZXIgbmFtZSJ9KTtpZighSXx8IXRoaXMuZXhlY3V0aW9uRW52aXJvbm1lbnQpcmV0dXJuO2xldCBCPSQ9PT0iLyI/YC8ke0l9YDpgJHskfS8ke0l9YDt0cnl7YXdhaXQgdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudC5ta2RpcihCKSxhd2FpdCB0aGlzLnJlZnJlc2goKSx0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJmb2xkZXItY3JlYXRlZCIse2RldGFpbDp7cGF0aDpCfSxidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpfWNhdGNoKHope2NvbnNvbGUuZXJyb3IoIkZhaWxlZCB0byBjcmVhdGUgZm9sZGVyOiIseil9fWFzeW5jIGRlbGV0ZUl0ZW0oJCl7aWYoISghdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudHx8IWNvbmZpcm0oYERlbGV0ZSAkeyQubmFtZX0/YCkpKXRyeXthd2FpdCB0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50LnJtKCQucGF0aCx7cmVjdXJzaXZlOiQudHlwZT09PSJkaXJlY3RvcnkifSksYXdhaXQgdGhpcy5yZWZyZXNoKCksdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgiaXRlbS1kZWxldGVkIix7ZGV0YWlsOntwYXRoOiQucGF0aCx0eXBlOiQudHlwZX0sYnViYmxlczohMCxjb21wb3NlZDohMH0pKX1jYXRjaChCKXtjb25zb2xlLmVycm9yKCJGYWlsZWQgdG8gZGVsZXRlIGl0ZW06IixCKX19YXN5bmMgcmVuYW1lSXRlbSgkKXtpZighdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudClyZXR1cm47bGV0IEk9YXdhaXQgdGhpcy5zaG93SW5wdXRNb2RhbCh7aGVhZGluZzoiUmVuYW1lIixsYWJlbDoiTmV3IG5hbWUiLHZhbHVlOiQubmFtZSxidXR0b25OYW1lOiJSZW5hbWUifSk7aWYoIUl8fEk9PT0kLm5hbWUpcmV0dXJuO2xldCBCPSQucGF0aC5zdWJzdHJpbmcoMCwkLnBhdGgubGFzdEluZGV4T2YoIi8iKSl8fCIvIix6PUI9PT0iLyI/YC8ke0l9YDpgJHtCfS8ke0l9YDt0cnl7aWYoJC50eXBlPT09ImZpbGUiKXtsZXQgeT1hd2FpdCB0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50LnJlYWRGaWxlKCQucGF0aCk7YXdhaXQgdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudC53cml0ZUZpbGUoeix5KSxhd2FpdCB0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50LnJtKCQucGF0aCl9ZWxzZSBhd2FpdCB0aGlzLmNvcHlEaXJlY3RvcnlDb250ZW50cygkLnBhdGgseiksYXdhaXQgdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudC5ybSgkLnBhdGgse3JlY3Vyc2l2ZTohMH0pO2F3YWl0IHRoaXMucmVmcmVzaCgpLHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoIml0ZW0tcmVuYW1lZCIse2RldGFpbDp7b2xkUGF0aDokLnBhdGgsbmV3UGF0aDp6LHR5cGU6JC50eXBlfSxidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpfWNhdGNoKHkpe2NvbnNvbGUuZXJyb3IoIkZhaWxlZCB0byByZW5hbWUgaXRlbToiLHkpfX1hc3luYyBkdXBsaWNhdGVJdGVtKCQpe2lmKCF0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50KXJldHVybjtsZXQgST0kLnBhdGguc3Vic3RyaW5nKDAsJC5wYXRoLmxhc3RJbmRleE9mKCIvIikpfHwiLyIsQjtpZigkLnR5cGU9PT0iZmlsZSIpe2xldCB5PSQubmFtZS5sYXN0SW5kZXhPZigiLiIpO2lmKHk+MCl7bGV0IEU9JC5uYW1lLnN1YnN0cmluZygwLHkpLF89JC5uYW1lLnN1YnN0cmluZyh5KTtCPWAke0V9X2NvcHkke199YH1lbHNlIEI9YCR7JC5uYW1lfV9jb3B5YH1lbHNlIEI9YCR7JC5uYW1lfV9jb3B5YDtsZXQgej1JPT09Ii8iP2AvJHtCfWA6YCR7SX0vJHtCfWA7dHJ5e2lmKCQudHlwZT09PSJmaWxlIil7bGV0IHk9YXdhaXQgdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudC5yZWFkRmlsZSgkLnBhdGgpO2F3YWl0IHRoaXMuZXhlY3V0aW9uRW52aXJvbm1lbnQud3JpdGVGaWxlKHoseSl9ZWxzZSBhd2FpdCB0aGlzLmNvcHlEaXJlY3RvcnlDb250ZW50cygkLnBhdGgseik7YXdhaXQgdGhpcy5yZWZyZXNoKCksdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgiaXRlbS1kdXBsaWNhdGVkIix7ZGV0YWlsOntzb3VyY2VQYXRoOiQucGF0aCxuZXdQYXRoOnosdHlwZTokLnR5cGV9LGJ1YmJsZXM6ITAsY29tcG9zZWQ6ITB9KSl9Y2F0Y2goeSl7Y29uc29sZS5lcnJvcigiRmFpbGVkIHRvIGR1cGxpY2F0ZSBpdGVtOiIseSl9fWFzeW5jIGNvcHlJdGVtKCQpe3RoaXMuY2xpcGJvYXJkUGF0aD0kLnBhdGgsdGhpcy5jbGlwYm9hcmRPcGVyYXRpb249ImNvcHkifWFzeW5jIHBhc3RlSXRlbSgkKXtpZighdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudHx8IXRoaXMuY2xpcGJvYXJkUGF0aClyZXR1cm47bGV0IEk9dGhpcy5jbGlwYm9hcmRQYXRoLnNwbGl0KCIvIikucG9wKCl8fCJwYXN0ZWQiLEI9JD09PSIvIj9gLyR7SX1gOmAkeyR9LyR7SX1gO3RyeXtpZighYXdhaXQgdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudC5leGlzdHModGhpcy5jbGlwYm9hcmRQYXRoKSl7Y29uc29sZS5lcnJvcigiU291cmNlIGZpbGUgbm8gbG9uZ2VyIGV4aXN0cyIpLHRoaXMuY2xpcGJvYXJkUGF0aD1udWxsLHRoaXMuY2xpcGJvYXJkT3BlcmF0aW9uPW51bGw7cmV0dXJufXRyeXtsZXQgej1hd2FpdCB0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50LnJlYWRGaWxlKHRoaXMuY2xpcGJvYXJkUGF0aCk7YXdhaXQgdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudC53cml0ZUZpbGUoQix6KX1jYXRjaHthd2FpdCB0aGlzLmNvcHlEaXJlY3RvcnlDb250ZW50cyh0aGlzLmNsaXBib2FyZFBhdGgsQil9YXdhaXQgdGhpcy5yZWZyZXNoKCksdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgiaXRlbS1wYXN0ZWQiLHtkZXRhaWw6e3NvdXJjZVBhdGg6dGhpcy5jbGlwYm9hcmRQYXRoLHRhcmdldFBhdGg6Qn0sYnViYmxlczohMCxjb21wb3NlZDohMH0pKSx0aGlzLmNsaXBib2FyZFBhdGg9bnVsbCx0aGlzLmNsaXBib2FyZE9wZXJhdGlvbj1udWxsfWNhdGNoKHope2NvbnNvbGUuZXJyb3IoIkZhaWxlZCB0byBwYXN0ZSBpdGVtOiIseil9fWFzeW5jIGNvcHlEaXJlY3RvcnlDb250ZW50cygkLEkpe2lmKCF0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50KXJldHVybjthd2FpdCB0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50Lm1rZGlyKEkpO2xldCBCPWF3YWl0IHRoaXMuZXhlY3V0aW9uRW52aXJvbm1lbnQucmVhZERpcigkKTtmb3IobGV0IHogb2YgQil7bGV0IHk9JD09PSIvIj9gLyR7ei5uYW1lfWA6YCR7JH0vJHt6Lm5hbWV9YCxFPUk9PT0iLyI/YC8ke3oubmFtZX1gOmAke0l9LyR7ei5uYW1lfWA7aWYoei50eXBlPT09ImRpcmVjdG9yeSIpYXdhaXQgdGhpcy5jb3B5RGlyZWN0b3J5Q29udGVudHMoeSxFKTtlbHNle2xldCBfPWF3YWl0IHRoaXMuZXhlY3V0aW9uRW52aXJvbm1lbnQucmVhZEZpbGUoeSk7YXdhaXQgdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudC53cml0ZUZpbGUoRSxfKX19fWFzeW5jIGZpcnN0VXBkYXRlZCgpe2F3YWl0IHRoaXMubG9hZFRyZWUoKX1hc3luYyB1cGRhdGVkKCQpeyQuaGFzKCJleGVjdXRpb25FbnZpcm9ubWVudCIpJiYodGhpcy5sYXN0RXhlY3V0aW9uRW52aXJvbm1lbnQhPT10aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50JiYodGhpcy5zdG9wRmlsZVdhdGNoZXIoKSx0aGlzLmxhc3RFeGVjdXRpb25FbnZpcm9ubWVudD10aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50KSx0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50JiYoYXdhaXQgdGhpcy5sb2FkVHJlZSgpLHRoaXMuc3RhcnRGaWxlV2F0Y2hlcigpKSl9YXN5bmMgZGlzY29ubmVjdGVkQ2FsbGJhY2soKXthd2FpdCBzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpLHRoaXMuc3RvcEZpbGVXYXRjaGVyKCksdGhpcy5yZWZyZXNoRGVib3VuY2VUaW1lb3V0JiYoY2xlYXJUaW1lb3V0KHRoaXMucmVmcmVzaERlYm91bmNlVGltZW91dCksdGhpcy5yZWZyZXNoRGVib3VuY2VUaW1lb3V0PW51bGwpfXN0YXJ0RmlsZVdhdGNoZXIoKXtpZighKCF0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50fHx0aGlzLmZpbGVXYXRjaGVyKSl0cnl7dGhpcy5maWxlV2F0Y2hlcj10aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50LndhdGNoKCIvIiwoJCxJKT0+e3RoaXMucmVmcmVzaERlYm91bmNlVGltZW91dCYmY2xlYXJUaW1lb3V0KHRoaXMucmVmcmVzaERlYm91bmNlVGltZW91dCksdGhpcy5yZWZyZXNoRGVib3VuY2VUaW1lb3V0PXNldFRpbWVvdXQoKCk9Pnt0aGlzLnJlZnJlc2goKX0sMzAwKX0se3JlY3Vyc2l2ZTohMH0pfWNhdGNoKCQpe2NvbnNvbGUud2FybigiRmlsZSB3YXRjaGluZyBub3Qgc3VwcG9ydGVkOiIsJCl9fXN0b3BGaWxlV2F0Y2hlcigpe3RoaXMuZmlsZVdhdGNoZXImJih0aGlzLmZpbGVXYXRjaGVyLnN0b3AoKSx0aGlzLmZpbGVXYXRjaGVyPW51bGwpfWFzeW5jIGxvYWRUcmVlKCl7aWYodGhpcy5leGVjdXRpb25FbnZpcm9ubWVudCYmIXRoaXMubG9hZFRyZWVTdGFydGVkKXt0aGlzLmxvYWRUcmVlU3RhcnRlZD0hMCx0aGlzLmlzTG9hZGluZz0hMCx0aGlzLmVycm9yTWVzc2FnZT0iIjt0cnl7dGhpcy5leGVjdXRpb25FbnZpcm9ubWVudC5yZWFkeXx8YXdhaXQgdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudC5pbml0KCk7bGV0ICQ9YXdhaXQgdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudC5yZWFkRGlyKHRoaXMucm9vdFBhdGgpO3RoaXMudHJlZURhdGE9dGhpcy5zb3J0RW50cmllcygkKS5tYXAoST0+KHsuLi5JLGxldmVsOjAsZXhwYW5kZWQ6ITEsY2hpbGRyZW46SS50eXBlPT09ImRpcmVjdG9yeSI/W106dm9pZCAwfSkpfWNhdGNoKCQpe3RoaXMuZXJyb3JNZXNzYWdlPWBGYWlsZWQgdG8gbG9hZCBmaWxlczogJHskfWAsY29uc29sZS5lcnJvcigiRmFpbGVkIHRvIGxvYWQgZmlsZSB0cmVlOiIsJCksdGhpcy5sb2FkVHJlZVN0YXJ0ZWQ9ITF9ZmluYWxseXt0aGlzLmlzTG9hZGluZz0hMX19fXNvcnRFbnRyaWVzKCQpe3JldHVybiAkLnNvcnQoKEksQik9PkkudHlwZSE9PUIudHlwZT9JLnR5cGU9PT0iZGlyZWN0b3J5Ij8tMToxOkkubmFtZS5sb2NhbGVDb21wYXJlKEIubmFtZSkpfWFzeW5jIHJlZnJlc2goKXt0aGlzLmV4cGFuZGVkUGF0aHMuY2xlYXIoKSx0aGlzLmxvYWRUcmVlU3RhcnRlZD0hMSxhd2FpdCB0aGlzLmxvYWRUcmVlKCl9c2VsZWN0RmlsZSgkKXt0aGlzLnNlbGVjdGVkUGF0aD0kfXN0YXRpY3twbihhLHIpfX07cmV0dXJuIE49YX0pKCl9KTt2YXIgSDB0LEtaLEpScixxMHQ9bCgoKT0+e1NlKCk7b3QoKTtjMygpO0gwdD1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LEtaPWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSxKUnI9KCgpPT57bGV0IGU9W3plKCJkZWVzLXdvcmtzcGFjZS10ZXJtaW5hbC1wcmV2aWV3IildLHQscj1bXSxhLGk9RGUsbyxuPVtdLHM9W10sYyxkPVtdLGY9W107dmFyIHU9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCBwPXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO289W2ooe3R5cGU6U3RyaW5nfSldLGM9W2ooe3R5cGU6QXJyYXl9KV0sSDB0KHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiY29tbWFuZCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6aD0+ImNvbW1hbmQiaW4gaCxnZXQ6aD0+aC5jb21tYW5kLHNldDooaCxiKT0+e2guY29tbWFuZD1ifX0sbWV0YWRhdGE6cH0sbixzKSxIMHQodGhpcyxudWxsLGMse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJsaW5lcyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6aD0+ImxpbmVzImluIGgsZ2V0Omg9PmgubGluZXMsc2V0OihoLGIpPT57aC5saW5lcz1ifX0sbWV0YWRhdGE6cH0sZCxmKSxIMHQobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6cH0sbnVsbCxyKSx1PWE9dC52YWx1ZSxwJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnB9KX1zdGF0aWMgZGVtbz0oKT0+U2AKICAgIDxkZWVzLXdvcmtzcGFjZS10ZXJtaW5hbC1wcmV2aWV3CiAgICAgIC5jb21tYW5kPSR7InBucG0gaW5zdGFsbCJ9CiAgICAgIC5saW5lcz0ke1siUGFja2FnZXM6ICs0MiIsIlByb2dyZXNzOiByZXNvbHZlZCAxNDIsIHJldXNlZCAxNDAsIGRvd25sb2FkZWQgMiwgYWRkZWQgNDIsIGRvbmUiLCIiLCJkZXBlbmRlbmNpZXM6IiwiKyBAcHVzaC5yb2Nrcy9zbWFydHByb21pc2UgNC4yLjMiLCIrIHR5cGVzY3JpcHQgNS4zLjMiLCIiLCJEb25lIGluIDIuM3MiXX0KICAgID48L2RlZXMtd29ya3NwYWNlLXRlcm1pbmFsLXByZXZpZXc+CiAgYDtzdGF0aWMgZGVtb0dyb3Vwcz1bIldvcmtzcGFjZSJdOyNlPUtaKHRoaXMsbiwiIik7Z2V0IGNvbW1hbmQoKXtyZXR1cm4gdGhpcy4jZX1zZXQgY29tbWFuZChwKXt0aGlzLiNlPXB9I3Q9KEtaKHRoaXMscyksS1oodGhpcyxkLFtdKSk7Z2V0IGxpbmVzKCl7cmV0dXJuIHRoaXMuI3R9c2V0IGxpbmVzKHApe3RoaXMuI3Q9cH10ZXJtaW5hbD0oS1oodGhpcyxmKSxudWxsKTtmaXRBZGRvbj1udWxsO2xhc3RMaW5lQ291bnQ9MDtyZXNpemVPYnNlcnZlcj1udWxsO3Rlcm1pbmFsVGhlbWVTdWJzY3JpcHRpb249bnVsbDtzdGF0aWMgc3R5bGVzPVtQZSxtLmRlZmF1bHRTdHlsZXMsbGVgCiAgICAgIDpob3N0IHsKICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICBoZWlnaHQ6IDIwMHB4OwogICAgICB9CgogICAgICAudGVybWluYWwtcHJldmlldyB7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZmZmZmZmIiwiIzAwMDAwMCIpfTsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODUlKSIsImhzbCgwIDAlIDIwJSkiKX07CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOwogICAgICB9CgogICAgICAudGVybWluYWwtaGVhZGVyIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgZ2FwOiA4cHg7CiAgICAgICAgcGFkZGluZzogOHB4IDEycHg7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk2JSkiLCJoc2woMCAwJSAxMCUpIil9OwogICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICBmb250LWZhbWlseTogJ1NGIE1vbm8nLCAnTW9uYWNvJywgJ0luY29uc29sYXRhJywgJ0ZpcmEgQ29kZScsIG1vbm9zcGFjZTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDQwJSkiLCJoc2woMCAwJSA2MCUpIil9OwogICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODUlKSIsImhzbCgwIDAlIDIwJSkiKX07CiAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgIH0KCiAgICAgIC50ZXJtaW5hbC1oZWFkZXItaWNvbiB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA1MCUpIiwiaHNsKDAgMCUgNTAlKSIpfTsKICAgICAgfQoKICAgICAgLnRlcm1pbmFsLWhlYWRlci1jb21tYW5kIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDIwJSkiLCJoc2woMCAwJSA4MCUpIil9OwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgIH0KCiAgICAgIC50ZXJtaW5hbC1jb250YWluZXIgewogICAgICAgIGZsZXg6IDE7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIHBhZGRpbmc6IDhweDsKICAgICAgfQoKICAgICAgI3h0ZXJtLWNvbnRhaW5lciB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHRvcDogOHB4OwogICAgICAgIGxlZnQ6IDhweDsKICAgICAgICByaWdodDogOHB4OwogICAgICAgIGJvdHRvbTogOHB4OwogICAgICB9CgogICAgICAvKiB4dGVybS5qcyBzdHlsZXMgKi8KICAgICAgLnh0ZXJtIHsKICAgICAgICBmb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJyAwOwogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTsKICAgICAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsKICAgICAgfQoKICAgICAgLnh0ZXJtLmZvY3VzLAogICAgICAueHRlcm06Zm9jdXMgewogICAgICAgIG91dGxpbmU6IG5vbmU7CiAgICAgIH0KCiAgICAgIC54dGVybSAueHRlcm0taGVscGVycyB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHRvcDogMDsKICAgICAgICB6LWluZGV4OiA1OwogICAgICB9CgogICAgICAueHRlcm0gLnh0ZXJtLWhlbHBlci10ZXh0YXJlYSB7CiAgICAgICAgcGFkZGluZzogMDsKICAgICAgICBib3JkZXI6IDA7CiAgICAgICAgbWFyZ2luOiAwOwogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgIGxlZnQ6IC05OTk5ZW07CiAgICAgICAgdG9wOiAwOwogICAgICAgIHdpZHRoOiAwOwogICAgICAgIGhlaWdodDogMDsKICAgICAgICB6LWluZGV4OiAtNTsKICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgcmVzaXplOiBub25lOwogICAgICB9CgogICAgICAueHRlcm0gLmNvbXBvc2l0aW9uLXZpZXcgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZmZmZmZmIiwiIzAwMDAwMCIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMzMzMzMzMiLCIjZmZmZmZmIil9OwogICAgICAgIGRpc3BsYXk6IG5vbmU7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgICAgICAgei1pbmRleDogMTsKICAgICAgfQoKICAgICAgLnh0ZXJtIC5jb21wb3NpdGlvbi12aWV3LmFjdGl2ZSB7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgIH0KCiAgICAgIC54dGVybSAueHRlcm0tdmlld3BvcnQgewogICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR7bS5iZFRoZW1lKCIjZmZmZmZmIiwiIzAwMDAwMCIpfTsKICAgICAgICBvdmVyZmxvdy15OiBzY3JvbGw7CiAgICAgICAgY3Vyc29yOiBkZWZhdWx0OwogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICByaWdodDogMDsKICAgICAgICBsZWZ0OiAwOwogICAgICAgIHRvcDogMDsKICAgICAgICBib3R0b206IDA7CiAgICAgIH0KCiAgICAgIC54dGVybSAueHRlcm0tc2NyZWVuIHsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgIH0KCiAgICAgIC54dGVybSAueHRlcm0tc2NyZWVuIGNhbnZhcyB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIGxlZnQ6IDA7CiAgICAgICAgdG9wOiAwOwogICAgICB9CgogICAgICAueHRlcm0gLnh0ZXJtLXNjcm9sbC1hcmVhIHsKICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47CiAgICAgIH0KCiAgICAgIC54dGVybS1jaGFyLW1lYXN1cmUtZWxlbWVudCB7CiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgdG9wOiAwOwogICAgICAgIGxlZnQ6IC05OTk5ZW07CiAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDsKICAgICAgfQoKICAgICAgLnh0ZXJtIHsKICAgICAgICBjdXJzb3I6IHRleHQ7CiAgICAgIH0KCiAgICAgIC54dGVybS5lbmFibGUtbW91c2UtZXZlbnRzIHsKICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7CiAgICAgIH0KCiAgICAgIC54dGVybS54dGVybS1jdXJzb3ItcG9pbnRlciB7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICB9CgogICAgICAueHRlcm0uY29sdW1uLXNlbGVjdC5mb2N1cyB7CiAgICAgICAgY3Vyc29yOiBjcm9zc2hhaXI7CiAgICAgIH0KCiAgICAgIC54dGVybSAueHRlcm0tYWNjZXNzaWJpbGl0eSwKICAgICAgLnh0ZXJtIC54dGVybS1tZXNzYWdlIHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgbGVmdDogMDsKICAgICAgICB0b3A6IDA7CiAgICAgICAgYm90dG9tOiAwOwogICAgICAgIHJpZ2h0OiAwOwogICAgICAgIHotaW5kZXg6IDEwOwogICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDsKICAgICAgfQoKICAgICAgLnh0ZXJtIC5saXZlLXJlZ2lvbiB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIGxlZnQ6IC05OTk5cHg7CiAgICAgICAgd2lkdGg6IDFweDsKICAgICAgICBoZWlnaHQ6IDFweDsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICB9CgogICAgICAueHRlcm0tZGltIHsKICAgICAgICBvcGFjaXR5OiAwLjU7CiAgICAgIH0KCiAgICAgIC54dGVybS11bmRlcmxpbmUgewogICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOwogICAgICB9CgogICAgICAvKiBDdXN0b20gc2Nyb2xsYmFyIGZvciB4dGVybSB2aWV3cG9ydCAqLwogICAgICAueHRlcm0gLnh0ZXJtLXZpZXdwb3J0Ojotd2Via2l0LXNjcm9sbGJhciB7CiAgICAgICAgd2lkdGg6IDhweDsKICAgICAgfQoKICAgICAgLnh0ZXJtIC54dGVybS12aWV3cG9ydDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5NiUpIiwiaHNsKDAgMCUgOCUpIil9OwogICAgICB9CgogICAgICAueHRlcm0gLnh0ZXJtLXZpZXdwb3J0Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDgwJSkiLCJoc2woMCAwJSAyNSUpIil9OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgfQoKICAgICAgLnh0ZXJtIC54dGVybS12aWV3cG9ydDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA3MCUpIiwiaHNsKDAgMCUgMzUlKSIpfTsKICAgICAgfQogICAgYF07cmVuZGVyKCl7cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9InRlcm1pbmFsLXByZXZpZXciPgogICAgICAgIDxkaXYgY2xhc3M9InRlcm1pbmFsLWhlYWRlciI+CiAgICAgICAgICA8c3BhbiBjbGFzcz0idGVybWluYWwtaGVhZGVyLWljb24iPiQ8L3NwYW4+CiAgICAgICAgICA8c3BhbiBjbGFzcz0idGVybWluYWwtaGVhZGVyLWNvbW1hbmQiPiR7dGhpcy5jb21tYW5kfHwiV2FpdGluZy4uLiJ9PC9zcGFuPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InRlcm1pbmFsLWNvbnRhaW5lciI+CiAgICAgICAgICA8ZGl2IGlkPSJ4dGVybS1jb250YWluZXIiPjwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgIGB9Z2V0VGVybWluYWxUaGVtZShwKXtyZXR1cm4gcD97YmFja2dyb3VuZDoiI2ZmZmZmZiIsZm9yZWdyb3VuZDoiIzMzMzMzMyIsY3Vyc29yOiIjMzMzMzMzIixjdXJzb3JBY2NlbnQ6IiNmZmZmZmYiLHNlbGVjdGlvbkJhY2tncm91bmQ6InJnYmEoMCwgMCwgMCwgMC4yKSJ9OntiYWNrZ3JvdW5kOiIjMDAwMDAwIixmb3JlZ3JvdW5kOiIjY2NjY2NjIixjdXJzb3I6IiNjY2NjY2MiLGN1cnNvckFjY2VudDoiIzAwMDAwMCIsc2VsZWN0aW9uQmFja2dyb3VuZDoicmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpIn19YXN5bmMgZmlyc3RVcGRhdGVkKHApe3N1cGVyLmZpcnN0VXBkYXRlZChwKTtsZXQgaD10aGlzLnNoYWRvd1Jvb3Q/LmdldEVsZW1lbnRCeUlkKCJ4dGVybS1jb250YWluZXIiKTtpZighaClyZXR1cm47bGV0IGI9YXdhaXQgdGhpcy5kb210b29sc1Byb21pc2UseD1iLnRoZW1lTWFuYWdlci5nb0JyaWdodEJvb2xlYW4sZz14MS5nZXRJbnN0YW5jZSgpLFt2LHddPWF3YWl0IFByb21pc2UuYWxsKFtnLmxvYWRYdGVybSgpLGcubG9hZFh0ZXJtRml0QWRkb24oKV0pO3RoaXMudGVybWluYWw9bmV3IHYuVGVybWluYWwoe2NvbnZlcnRFb2w6ITAsY3Vyc29yQmxpbms6ITEsZGlzYWJsZVN0ZGluOiEwLGZvbnRTaXplOjEyLGZvbnRGYW1pbHk6IidTRiBNb25vJywgJ01vbmFjbycsICdJbmNvbnNvbGF0YScsICdGaXJhIENvZGUnLCBtb25vc3BhY2UiLHRoZW1lOnRoaXMuZ2V0VGVybWluYWxUaGVtZSh4KSxzY3JvbGxiYWNrOjFlM30pLHRoaXMudGVybWluYWxUaGVtZVN1YnNjcmlwdGlvbj1iLnRoZW1lTWFuYWdlci50aGVtZU9ic2VydmFibGUuc3Vic2NyaWJlKE09Pnt0aGlzLnRlcm1pbmFsJiYodGhpcy50ZXJtaW5hbC5vcHRpb25zLnRoZW1lPXRoaXMuZ2V0VGVybWluYWxUaGVtZShNKSl9KSx0aGlzLmZpdEFkZG9uPW5ldyB3LkZpdEFkZG9uLHRoaXMudGVybWluYWwubG9hZEFkZG9uKHRoaXMuZml0QWRkb24pLHRoaXMudGVybWluYWwub3BlbihoKSx0aGlzLmZpdEFkZG9uLmZpdCgpLHRoaXMucmVzaXplT2JzZXJ2ZXI9bmV3IFJlc2l6ZU9ic2VydmVyKCgpPT57dGhpcy5maXRBZGRvbiYmdGhpcy5maXRBZGRvbi5maXQoKX0pLHRoaXMucmVzaXplT2JzZXJ2ZXIub2JzZXJ2ZShoKSx0aGlzLndyaXRlTmV3TGluZXMoKX1hc3luYyB1cGRhdGVkKHApe3N1cGVyLnVwZGF0ZWQocCkscC5oYXMoImxpbmVzIikmJnRoaXMud3JpdGVOZXdMaW5lcygpfXdyaXRlTmV3TGluZXMoKXtpZighdGhpcy50ZXJtaW5hbClyZXR1cm47bGV0IHA9dGhpcy5saW5lcy5zbGljZSh0aGlzLmxhc3RMaW5lQ291bnQpO2ZvcihsZXQgaCBvZiBwKXRoaXMudGVybWluYWwud3JpdGVsbihoKTt0aGlzLmxhc3RMaW5lQ291bnQ9dGhpcy5saW5lcy5sZW5ndGh9YXN5bmMgZGlzY29ubmVjdGVkQ2FsbGJhY2soKXt0aGlzLnJlc2l6ZU9ic2VydmVyJiYodGhpcy5yZXNpemVPYnNlcnZlci5kaXNjb25uZWN0KCksdGhpcy5yZXNpemVPYnNlcnZlcj1udWxsKSx0aGlzLnRlcm1pbmFsVGhlbWVTdWJzY3JpcHRpb24mJih0aGlzLnRlcm1pbmFsVGhlbWVTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKSx0aGlzLnRlcm1pbmFsVGhlbWVTdWJzY3JpcHRpb249bnVsbCksdGhpcy50ZXJtaW5hbCYmKHRoaXMudGVybWluYWwuZGlzcG9zZSgpLHRoaXMudGVybWluYWw9bnVsbCksYXdhaXQgc3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKX1hZGRMaW5lKHApe3RoaXMubGluZXM9Wy4uLnRoaXMubGluZXMscF19Y2xlYXIoKXt0aGlzLmxpbmVzPVtdLHRoaXMubGFzdExpbmVDb3VudD0wLHRoaXMudGVybWluYWwmJnRoaXMudGVybWluYWwuY2xlYXIoKX1zdGF0aWN7S1ooYSxyKX19O3JldHVybiB1PWF9KSgpfSk7dmFyIGxnLFpzLGVCcixqMHQ9bCgoKT0+e1NlKCk7b3QoKTticigpO2JpKCk7bGc9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxacz1mdW5jdGlvbihlLHQscil7Zm9yKHZhciBhPWFyZ3VtZW50cy5sZW5ndGg+MixpPTA7aTx0Lmxlbmd0aDtpKyspcj1hP3RbaV0uY2FsbChlLHIpOnRbaV0uY2FsbChlKTtyZXR1cm4gYT9yOnZvaWQgMH0sZUJyPSgoKT0+e2xldCBlPVt6ZSgiZGVlcy13b3Jrc3BhY2UtYm90dG9tYmFyIildLHQscj1bXSxhLGk9RGUsbyxuPVtdLHM9W10sYyxkPVtdLGY9W10sdSxwPVtdLGg9W10sYix4PVtdLGc9W10sdix3PVtdLE09W107dmFyIEY9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCBDPXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO289W2ooe3R5cGU6T2JqZWN0fSldLGM9W3JlKCldLHU9W3JlKCldLGI9W3JlKCldLHY9W3JlKCldLGxnKHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZXhlY3V0aW9uRW52aXJvbm1lbnQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOms9PiJleGVjdXRpb25FbnZpcm9ubWVudCJpbiBrLGdldDprPT5rLmV4ZWN1dGlvbkVudmlyb25tZW50LHNldDooayxOKT0+e2suZXhlY3V0aW9uRW52aXJvbm1lbnQ9Tn19LG1ldGFkYXRhOkN9LG4scyksbGcodGhpcyxudWxsLGMse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJzY3JpcHRzIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczprPT4ic2NyaXB0cyJpbiBrLGdldDprPT5rLnNjcmlwdHMsc2V0OihrLE4pPT57ay5zY3JpcHRzPU59fSxtZXRhZGF0YTpDfSxkLGYpLGxnKHRoaXMsbnVsbCx1LHtraW5kOiJhY2Nlc3NvciIsbmFtZToicGFja2FnZVN0YXR1cyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6az0+InBhY2thZ2VTdGF0dXMiaW4gayxnZXQ6az0+ay5wYWNrYWdlU3RhdHVzLHNldDooayxOKT0+e2sucGFja2FnZVN0YXR1cz1OfX0sbWV0YWRhdGE6Q30scCxoKSxsZyh0aGlzLG51bGwsYix7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im91dGRhdGVkUGFja2FnZXMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOms9PiJvdXRkYXRlZFBhY2thZ2VzImluIGssZ2V0Oms9Pmsub3V0ZGF0ZWRQYWNrYWdlcyxzZXQ6KGssTik9PntrLm91dGRhdGVkUGFja2FnZXM9Tn19LG1ldGFkYXRhOkN9LHgsZyksbGcodGhpcyxudWxsLHYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJpc0NoZWNraW5nUGFja2FnZXMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOms9PiJpc0NoZWNraW5nUGFja2FnZXMiaW4gayxnZXQ6az0+ay5pc0NoZWNraW5nUGFja2FnZXMsc2V0OihrLE4pPT57ay5pc0NoZWNraW5nUGFja2FnZXM9Tn19LG1ldGFkYXRhOkN9LHcsTSksbGcobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6Q30sbnVsbCxyKSxGPWE9dC52YWx1ZSxDJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOkN9KX0jZT1acyh0aGlzLG4sbnVsbCk7Z2V0IGV4ZWN1dGlvbkVudmlyb25tZW50KCl7cmV0dXJuIHRoaXMuI2V9c2V0IGV4ZWN1dGlvbkVudmlyb25tZW50KEMpe3RoaXMuI2U9Q30jdD0oWnModGhpcyxzKSxacyh0aGlzLGQse30pKTtnZXQgc2NyaXB0cygpe3JldHVybiB0aGlzLiN0fXNldCBzY3JpcHRzKEMpe3RoaXMuI3Q9Q30jcj0oWnModGhpcyxmKSxacyh0aGlzLHAsImlkbGUiKSk7Z2V0IHBhY2thZ2VTdGF0dXMoKXtyZXR1cm4gdGhpcy4jcn1zZXQgcGFja2FnZVN0YXR1cyhDKXt0aGlzLiNyPUN9I2E9KFpzKHRoaXMsaCksWnModGhpcyx4LFtdKSk7Z2V0IG91dGRhdGVkUGFja2FnZXMoKXtyZXR1cm4gdGhpcy4jYX1zZXQgb3V0ZGF0ZWRQYWNrYWdlcyhDKXt0aGlzLiNhPUN9I2k9KFpzKHRoaXMsZyksWnModGhpcyx3LCExKSk7Z2V0IGlzQ2hlY2tpbmdQYWNrYWdlcygpe3JldHVybiB0aGlzLiNpfXNldCBpc0NoZWNraW5nUGFja2FnZXMoQyl7dGhpcy4jaT1DfXBlbmRpbmdQYWNrYWdlVXBkYXRlPShacyh0aGlzLE0pLCExKTtoYW5kbGVQcm9jZXNzQ29tcGxldGU9Qz0+e3RoaXMucGVuZGluZ1BhY2thZ2VVcGRhdGUmJih0aGlzLnBlbmRpbmdQYWNrYWdlVXBkYXRlPSExLHNldFRpbWVvdXQoKCk9PnRoaXMuY2hlY2tQYWNrYWdlcygpLDUwMCkpfTtzdGF0aWMgc3R5bGVzPVtQZSxtLmRlZmF1bHRTdHlsZXMsbGVgCiAgICAgIDpob3N0IHsKICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICBoZWlnaHQ6IDI0cHg7CiAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgIH0KCiAgICAgIC5ib3R0b20tYmFyIHsKICAgICAgICBoZWlnaHQ6IDI0cHg7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIHBhZGRpbmc6IDAgOHB4OwogICAgICAgIGdhcDogNHB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5NCUpIiwiaHNsKDAgMCUgNiUpIil9OwogICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODUlKSIsImhzbCgwIDAlIDE1JSkiKX07CiAgICAgICAgZm9udC1zaXplOiAxMXB4OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNDAlKSIsImhzbCgwIDAlIDYwJSkiKX07CiAgICAgIH0KCiAgICAgIC53aWRnZXQgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDRweDsKICAgICAgICBwYWRkaW5nOiAycHggNnB4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1cyBlYXNlLCBjb2xvciAwLjE1cyBlYXNlOwogICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgICAgIH0KCiAgICAgIC53aWRnZXQ6aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OCUpIiwiaHNsKDAgMCUgMTIlKSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDIwJSkiLCJoc2woMCAwJSA4MCUpIil9OwogICAgICB9CgogICAgICAud2lkZ2V0IGRlZXMtaWNvbiB7CiAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgIH0KCiAgICAgIC53aWRnZXQtc2VwYXJhdG9yIHsKICAgICAgICB3aWR0aDogMXB4OwogICAgICAgIGhlaWdodDogMTRweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgODAlKSIsImhzbCgwIDAlIDIwJSkiKX07CiAgICAgICAgbWFyZ2luOiAwIDRweDsKICAgICAgfQoKICAgICAgLndpZGdldC5ydW5uaW5nIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgyMTAgMTAwJSA0NSUpIiwiaHNsKDIxMCAxMDAlIDYwJSkiKX07CiAgICAgIH0KCiAgICAgIC53aWRnZXQudXAtdG8tZGF0ZSB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMTQyIDcwJSAzNSUpIiwiaHNsKDE0MiA3MCUgNTAlKSIpfTsKICAgICAgfQoKICAgICAgLndpZGdldC51cGRhdGVzLWF2YWlsYWJsZSB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMzggOTIlIDQ1JSkiLCJoc2woMzggOTIlIDU1JSkiKX07CiAgICAgIH0KCiAgICAgIC53aWRnZXQuZXJyb3IgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgNzAlIDUwJSkiLCJoc2woMCA3MCUgNjAlKSIpfTsKICAgICAgfQoKICAgICAgQGtleWZyYW1lcyBzcGluIHsKICAgICAgICBmcm9tIHsgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH0KICAgICAgICB0byB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0KICAgICAgfQoKICAgICAgLnNwaW5uaW5nIHsKICAgICAgICBhbmltYXRpb246IHNwaW4gMXMgbGluZWFyIGluZmluaXRlOwogICAgICB9CgogICAgICAuc3BhY2VyIHsKICAgICAgICBmbGV4OiAxOwogICAgICB9CiAgICBgXTtyZW5kZXIoKXtyZXR1cm4gU2AKICAgICAgPGRpdiBjbGFzcz0iYm90dG9tLWJhciI+CiAgICAgICAgPCEtLSBTY3JpcHQgUnVubmVyIFdpZGdldCAtLT4KICAgICAgICA8ZGl2CiAgICAgICAgICBjbGFzcz0id2lkZ2V0IgogICAgICAgICAgQGNsaWNrPSR7dGhpcy5oYW5kbGVTY3JpcHRDbGlja30KICAgICAgICAgIHRpdGxlPSJSdW4gc2NyaXB0IgogICAgICAgID4KICAgICAgICAgIDxkZWVzLWljb24KICAgICAgICAgICAgLmljb249JHsibHVjaWRlOnBsYXkifQogICAgICAgICAgICBpY29uU2l6ZT0iMTIiCiAgICAgICAgICA+PC9kZWVzLWljb24+CiAgICAgICAgICA8c3Bhbj5TY3JpcHRzPC9zcGFuPgogICAgICAgIDwvZGl2PgoKICAgICAgICA8ZGl2IGNsYXNzPSJ3aWRnZXQtc2VwYXJhdG9yIj48L2Rpdj4KCiAgICAgICAgPCEtLSBQYWNrYWdlIENoZWNrZXIgV2lkZ2V0IC0tPgogICAgICAgIDxkaXYKICAgICAgICAgIGNsYXNzPSJ3aWRnZXQgJHt0aGlzLmdldFBhY2thZ2VTdGF0dXNDbGFzcygpfSIKICAgICAgICAgIEBjbGljaz0ke3RoaXMuaGFuZGxlUGFja2FnZUNsaWNrfQogICAgICAgICAgdGl0bGU9IiR7dGhpcy5nZXRQYWNrYWdlVG9vbHRpcCgpfSIKICAgICAgICA+CiAgICAgICAgICA8ZGVlcy1pY29uCiAgICAgICAgICAgIC5pY29uPSR7dGhpcy5nZXRQYWNrYWdlSWNvbigpfQogICAgICAgICAgICBpY29uU2l6ZT0iMTIiCiAgICAgICAgICAgIGNsYXNzPSIke3RoaXMuaXNDaGVja2luZ1BhY2thZ2VzPyJzcGlubmluZyI6IiJ9IgogICAgICAgICAgPjwvZGVlcy1pY29uPgogICAgICAgICAgPHNwYW4+JHt0aGlzLmdldFBhY2thZ2VTdGF0dXNUZXh0KCl9PC9zcGFuPgogICAgICAgIDwvZGl2PgoKICAgICAgICA8ZGl2IGNsYXNzPSJzcGFjZXIiPjwvZGl2PgoKICAgICAgICA8IS0tIEZ1dHVyZSB3aWRnZXRzIGNhbiBiZSBhZGRlZCBoZXJlIC0tPgogICAgICA8L2Rpdj4KICAgIGB9YXN5bmMgY29ubmVjdGVkQ2FsbGJhY2soKXthd2FpdCBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJwcm9jZXNzLWNvbXBsZXRlIix0aGlzLmhhbmRsZVByb2Nlc3NDb21wbGV0ZSl9YXN5bmMgZGlzY29ubmVjdGVkQ2FsbGJhY2soKXthd2FpdCBzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpLHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJwcm9jZXNzLWNvbXBsZXRlIix0aGlzLmhhbmRsZVByb2Nlc3NDb21wbGV0ZSl9YXN5bmMgZmlyc3RVcGRhdGVkKCl7YXdhaXQgdGhpcy5sb2FkU2NyaXB0cygpLGF3YWl0IHRoaXMuY2hlY2tQYWNrYWdlcygpfWFzeW5jIHVwZGF0ZWQoQyl7Qy5oYXMoImV4ZWN1dGlvbkVudmlyb25tZW50IikmJnRoaXMuZXhlY3V0aW9uRW52aXJvbm1lbnQmJihhd2FpdCB0aGlzLmxvYWRTY3JpcHRzKCksYXdhaXQgdGhpcy5jaGVja1BhY2thZ2VzKCkpfWFzeW5jIGxvYWRTY3JpcHRzKCl7aWYodGhpcy5leGVjdXRpb25FbnZpcm9ubWVudCl0cnl7aWYoIWF3YWl0IHRoaXMuZXhlY3V0aW9uRW52aXJvbm1lbnQuZXhpc3RzKCIvcGFja2FnZS5qc29uIikpe3RoaXMuc2NyaXB0cz17fTtyZXR1cm59bGV0IGs9YXdhaXQgdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudC5yZWFkRmlsZSgiL3BhY2thZ2UuanNvbiIpLE49SlNPTi5wYXJzZShrKTt0aGlzLnNjcmlwdHM9Ti5zY3JpcHRzfHx7fX1jYXRjaChDKXtjb25zb2xlLndhcm4oIkZhaWxlZCB0byBsb2FkIHNjcmlwdHMgZnJvbSBwYWNrYWdlLmpzb246IixDKSx0aGlzLnNjcmlwdHM9e319fWFzeW5jIGhhbmRsZVNjcmlwdENsaWNrKEMpe0Muc3RvcFByb3BhZ2F0aW9uKCk7bGV0IGs9T2JqZWN0LmtleXModGhpcy5zY3JpcHRzKTtpZihrLmxlbmd0aD09PTApcmV0dXJuO2xldCBOPWsubWFwKCQ9Pih7bmFtZTokLGljb25OYW1lOiJsdWNpZGU6dGVybWluYWwiLGFjdGlvbjphc3luYygpPT57YXdhaXQgdGhpcy5ydW5TY3JpcHQoJCl9fSkpO2F3YWl0IHRyLm9wZW5Db250ZXh0TWVudVdpdGhPcHRpb25zKEMsTil9YXN5bmMgcnVuU2NyaXB0KEMpe2lmKCF0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50KXJldHVybjtsZXQgaz17dHlwZToic2NyaXB0IixsYWJlbDpDLGNvbW1hbmQ6InBucG0iLGFyZ3M6WyJydW4iLENdLG1ldGFkYXRhOntzY3JpcHROYW1lOkN9fTt0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJydW4tcHJvY2VzcyIse2J1YmJsZXM6ITAsY29tcG9zZWQ6ITAsZGV0YWlsOmt9KSl9YXN5bmMgY2hlY2tQYWNrYWdlcygpe2lmKCF0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50KXt0aGlzLnBhY2thZ2VTdGF0dXM9ImlkbGUiO3JldHVybn10cnl7aWYoIWF3YWl0IHRoaXMuZXhlY3V0aW9uRW52aXJvbm1lbnQuZXhpc3RzKCIvcGFja2FnZS5qc29uIikpe3RoaXMucGFja2FnZVN0YXR1cz0iaWRsZSI7cmV0dXJufXRoaXMucGFja2FnZVN0YXR1cz0iY2hlY2tpbmciLHRoaXMuaXNDaGVja2luZ1BhY2thZ2VzPSEwO2xldCBrPWF3YWl0IHRoaXMuZXhlY3V0aW9uRW52aXJvbm1lbnQuc3Bhd24oInBucG0iLFsib3V0ZGF0ZWQiLCItLWpzb24iXSksTj0iIiwkPWsub3V0cHV0LmdldFJlYWRlcigpOyhhc3luYygpPT57dHJ5e2Zvcig7Oyl7bGV0e2RvbmU6eix2YWx1ZTp5fT1hd2FpdCAkLnJlYWQoKTtpZih6KWJyZWFrO04rPXl9fWNhdGNoe319KSgpO2xldCBCPWF3YWl0IFByb21pc2UucmFjZShbay5leGl0LG5ldyBQcm9taXNlKHo9PnNldFRpbWVvdXQoKCk9PnooLTEpLDFlNCkpXSk7dHJ5e2F3YWl0ICQuY2FuY2VsKCl9Y2F0Y2h7fWlmKEI9PT0tMSl7Y29uc29sZS53YXJuKCJQYWNrYWdlIGNoZWNrIHRpbWVkIG91dCIpLHRoaXMucGFja2FnZVN0YXR1cz0iZXJyb3IiO3JldHVybn1pZihCPT09MCl0aGlzLnBhY2thZ2VTdGF0dXM9InVwLXRvLWRhdGUiLHRoaXMub3V0ZGF0ZWRQYWNrYWdlcz1bXTtlbHNlIHRyeXtsZXQgej1KU09OLnBhcnNlKE4pO3RoaXMub3V0ZGF0ZWRQYWNrYWdlcz10aGlzLnBhcnNlT3V0ZGF0ZWRQYWNrYWdlcyh6KSx0aGlzLnBhY2thZ2VTdGF0dXM9dGhpcy5vdXRkYXRlZFBhY2thZ2VzLmxlbmd0aD4wPyJ1cGRhdGVzLWF2YWlsYWJsZSI6InVwLXRvLWRhdGUifWNhdGNoe3RoaXMucGFja2FnZVN0YXR1cz0idXBkYXRlcy1hdmFpbGFibGUiLHRoaXMub3V0ZGF0ZWRQYWNrYWdlcz1bXX19Y2F0Y2goQyl7Y29uc29sZS53YXJuKCJGYWlsZWQgdG8gY2hlY2sgZm9yIHBhY2thZ2UgdXBkYXRlczoiLEMpLHRoaXMucGFja2FnZVN0YXR1cz0iZXJyb3IifWZpbmFsbHl7dGhpcy5pc0NoZWNraW5nUGFja2FnZXM9ITF9fXBhcnNlT3V0ZGF0ZWRQYWNrYWdlcyhDKXtsZXQgaz1bXTtpZih0eXBlb2YgQz09Im9iamVjdCImJkMhPT1udWxsKWZvcihsZXRbTiwkXW9mIE9iamVjdC5lbnRyaWVzKEMpKXtsZXQgST0kO2sucHVzaCh7bmFtZTpOLGN1cnJlbnQ6SS5jdXJyZW50fHwidW5rbm93biIsd2FudGVkOkkud2FudGVkfHxJLmN1cnJlbnR8fCJ1bmtub3duIixsYXRlc3Q6SS5sYXRlc3R8fEkud2FudGVkfHwidW5rbm93biIsdHlwZTpJLmRlcGVuZGVuY3lUeXBlPT09ImRldkRlcGVuZGVuY2llcyI/ImRldkRlcGVuZGVuY2llcyI6ImRlcGVuZGVuY2llcyJ9KX1yZXR1cm4ga31hc3luYyBoYW5kbGVQYWNrYWdlQ2xpY2soQyl7Qy5zdG9wUHJvcGFnYXRpb24oKTtsZXQgaz1bXTtpZihrLnB1c2goe25hbWU6dGhpcy5pc0NoZWNraW5nUGFja2FnZXM/IkNoZWNraW5nLi4uIjoiQ2hlY2sgZm9yIHVwZGF0ZXMiLGljb25OYW1lOiJsdWNpZGU6cmVmcmVzaEN3IixhY3Rpb246YXN5bmMoKT0+e2lmKHRoaXMuaXNDaGVja2luZ1BhY2thZ2VzKXJldHVybjtsZXQgTj17dHlwZToicGFja2FnZS11cGRhdGUiLGxhYmVsOiJjaGVjayBwYWNrYWdlcyIsY29tbWFuZDoicG5wbSIsYXJnczpbIm91dGRhdGVkIl19O3RoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoInJ1bi1wcm9jZXNzIix7YnViYmxlczohMCxjb21wb3NlZDohMCxkZXRhaWw6Tn0pKSxzZXRUaW1lb3V0KCgpPT50aGlzLmNoZWNrUGFja2FnZXMoKSwzZTMpfX0pLHRoaXMub3V0ZGF0ZWRQYWNrYWdlcy5sZW5ndGg+MCl7ay5wdXNoKHtkaXZpZGVyOiEwfSk7bGV0IE49dGhpcy5vdXRkYXRlZFBhY2thZ2VzLnNsaWNlKDAsMTApO2ZvcihsZXQgJCBvZiBOKWsucHVzaCh7bmFtZTpgJHskLm5hbWV9OiAkeyQuY3VycmVudH0gXHUyMTkyICR7JC5sYXRlc3R9YCxpY29uTmFtZToibHVjaWRlOnBhY2thZ2UiLGFjdGlvbjphc3luYygpPT57YXdhaXQgdGhpcy51cGRhdGVQYWNrYWdlKCQubmFtZSl9fSk7dGhpcy5vdXRkYXRlZFBhY2thZ2VzLmxlbmd0aD4xMCYmay5wdXNoKHtuYW1lOmAuLi4gYW5kICR7dGhpcy5vdXRkYXRlZFBhY2thZ2VzLmxlbmd0aC0xMH0gbW9yZWAsaWNvbk5hbWU6Imx1Y2lkZTptb3JlSG9yaXpvbnRhbCIsYWN0aW9uOmFzeW5jKCk9Pnt9fSksay5wdXNoKHtkaXZpZGVyOiEwfSksay5wdXNoKHtuYW1lOiJVcGRhdGUgYWxsIHBhY2thZ2VzIixpY29uTmFtZToibHVjaWRlOmFycm93VXBDaXJjbGUiLGFjdGlvbjphc3luYygpPT57YXdhaXQgdGhpcy51cGRhdGVBbGxQYWNrYWdlcygpfX0pfWF3YWl0IHRyLm9wZW5Db250ZXh0TWVudVdpdGhPcHRpb25zKEMsayl9YXN5bmMgdXBkYXRlUGFja2FnZShDKXtpZighdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudClyZXR1cm47dGhpcy5wZW5kaW5nUGFja2FnZVVwZGF0ZT0hMDtsZXQgaz17dHlwZToicGFja2FnZS11cGRhdGUiLGxhYmVsOmB1cGRhdGUgJHtDfWAsY29tbWFuZDoicG5wbSIsYXJnczpbInVwZGF0ZSIsIi0tbGF0ZXN0IixDXSxtZXRhZGF0YTp7cGFja2FnZU5hbWU6Q319O3RoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoInJ1bi1wcm9jZXNzIix7YnViYmxlczohMCxjb21wb3NlZDohMCxkZXRhaWw6a30pKX1hc3luYyB1cGRhdGVBbGxQYWNrYWdlcygpe2lmKCF0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50KXJldHVybjt0aGlzLnBlbmRpbmdQYWNrYWdlVXBkYXRlPSEwO2xldCBDPXt0eXBlOiJwYWNrYWdlLXVwZGF0ZSIsbGFiZWw6InVwZGF0ZSBhbGwiLGNvbW1hbmQ6InBucG0iLGFyZ3M6WyJ1cGRhdGUiLCItLWxhdGVzdCJdfTt0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJydW4tcHJvY2VzcyIse2J1YmJsZXM6ITAsY29tcG9zZWQ6ITAsZGV0YWlsOkN9KSl9Z2V0UGFja2FnZVN0YXR1c0NsYXNzKCl7cmV0dXJuIHRoaXMuaXNDaGVja2luZ1BhY2thZ2VzPyIiOnRoaXMucGFja2FnZVN0YXR1c31nZXRQYWNrYWdlSWNvbigpe2lmKHRoaXMuaXNDaGVja2luZ1BhY2thZ2VzKXJldHVybiJsdWNpZGU6bG9hZGVyMiI7c3dpdGNoKHRoaXMucGFja2FnZVN0YXR1cyl7Y2FzZSJ1cC10by1kYXRlIjpyZXR1cm4ibHVjaWRlOmNoZWNrQ2lyY2xlIjtjYXNlInVwZGF0ZXMtYXZhaWxhYmxlIjpyZXR1cm4ibHVjaWRlOmFsZXJ0Q2lyY2xlIjtjYXNlImVycm9yIjpyZXR1cm4ibHVjaWRlOnhDaXJjbGUiO2RlZmF1bHQ6cmV0dXJuImx1Y2lkZTpwYWNrYWdlIn19Z2V0UGFja2FnZVN0YXR1c1RleHQoKXtpZih0aGlzLmlzQ2hlY2tpbmdQYWNrYWdlcylyZXR1cm4iQ2hlY2tpbmcuLi4iO3N3aXRjaCh0aGlzLnBhY2thZ2VTdGF0dXMpe2Nhc2UidXAtdG8tZGF0ZSI6cmV0dXJuIlVwIHRvIGRhdGUiO2Nhc2UidXBkYXRlcy1hdmFpbGFibGUiOnJldHVybmAke3RoaXMub3V0ZGF0ZWRQYWNrYWdlcy5sZW5ndGh9IHVwZGF0ZSR7dGhpcy5vdXRkYXRlZFBhY2thZ2VzLmxlbmd0aCE9PTE/InMiOiIifWA7Y2FzZSJlcnJvciI6cmV0dXJuIkNoZWNrIGZhaWxlZCI7ZGVmYXVsdDpyZXR1cm4iUGFja2FnZXMifX1nZXRQYWNrYWdlVG9vbHRpcCgpe2lmKHRoaXMuaXNDaGVja2luZ1BhY2thZ2VzKXJldHVybiJDaGVja2luZyBmb3IgcGFja2FnZSB1cGRhdGVzLi4uIjtzd2l0Y2godGhpcy5wYWNrYWdlU3RhdHVzKXtjYXNlInVwLXRvLWRhdGUiOnJldHVybiJBbGwgcGFja2FnZXMgYXJlIHVwIHRvIGRhdGUiO2Nhc2UidXBkYXRlcy1hdmFpbGFibGUiOnJldHVybmAke3RoaXMub3V0ZGF0ZWRQYWNrYWdlcy5sZW5ndGh9IHBhY2thZ2UgdXBkYXRlJHt0aGlzLm91dGRhdGVkUGFja2FnZXMubGVuZ3RoIT09MT8icyI6IiJ9IGF2YWlsYWJsZWA7Y2FzZSJlcnJvciI6cmV0dXJuIkZhaWxlZCB0byBjaGVjayBmb3IgdXBkYXRlcy4gQ2xpY2sgdG8gcmV0cnkuIjtkZWZhdWx0OnJldHVybiJDbGljayB0byBjaGVjayBmb3IgcGFja2FnZSB1cGRhdGVzIn19YXN5bmMgcmVmcmVzaFBhY2thZ2VTdGF0dXMoKXthd2FpdCB0aGlzLmNoZWNrUGFja2FnZXMoKX1hc3luYyByZWZyZXNoU2NyaXB0cygpe2F3YWl0IHRoaXMubG9hZFNjcmlwdHMoKX1zdGF0aWN7WnMoYSxyKX19O3JldHVybiBGPWF9KSgpfSk7dmFyIEpaLFYwdD1sKCgpPT57Slo9Y2xhc3N7bG9hZGVkTGlicz1uZXcgU2V0O25vdEZvdW5kUGFja2FnZXM9bmV3IFNldDttb25hY29JbnN0YW5jZT1udWxsO2V4ZWN1dGlvbkVudmlyb25tZW50PW51bGw7ZmlsZUNhY2hlPW5ldyBNYXA7YWRkZWRFeHRyYUxpYnM9bmV3IE1hcDtnZXQgdHNBcGkoKXtyZXR1cm4gdGhpcy5tb25hY29JbnN0YW5jZT90aGlzLm1vbmFjb0luc3RhbmNlLmxhbmd1YWdlcy50eXBlc2NyaXB0Om51bGx9YXN5bmMgaW5pdCh0LHIpe3RoaXMubW9uYWNvSW5zdGFuY2U9dCx0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50PXIsdGhpcy5jb25maWd1cmVDb21waWxlck9wdGlvbnMoKSxhd2FpdCB0aGlzLmxvYWRBbGxQcm9qZWN0RmlsZXMoKX1hc3luYyBsb2FkQWxsUHJvamVjdEZpbGVzKCl7dGhpcy5leGVjdXRpb25FbnZpcm9ubWVudCYmYXdhaXQgdGhpcy5sb2FkRmlsZXNGcm9tRGlyZWN0b3J5KCIvIil9YXN5bmMgbG9hZEZpbGVzRnJvbURpcmVjdG9yeSh0KXtpZih0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50KXRyeXtsZXQgcj1hd2FpdCB0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50LnJlYWREaXIodCk7Zm9yKGxldCBhIG9mIHIpe2xldCBpPXQ9PT0iLyI/YC8ke2EubmFtZX1gOmAke3R9LyR7YS5uYW1lfWA7aWYoYS5uYW1lIT09Im5vZGVfbW9kdWxlcyIpe2lmKGEudHlwZT09PSJkaXJlY3RvcnkiKWF3YWl0IHRoaXMubG9hZEZpbGVzRnJvbURpcmVjdG9yeShpKTtlbHNlIGlmKGEudHlwZT09PSJmaWxlIil7bGV0IG89YS5uYW1lLnNwbGl0KCIuIikucG9wKCk/LnRvTG93ZXJDYXNlKCk7aWYobz09PSJ0cyJ8fG89PT0idHN4Inx8bz09PSJqcyJ8fG89PT0ianN4Iil0cnl7bGV0IG49YXdhaXQgdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudC5yZWFkRmlsZShpKTt0aGlzLmFkZEZpbGVNb2RlbChpLG4pfWNhdGNoe319fX19Y2F0Y2h7fX1jb25maWd1cmVDb21waWxlck9wdGlvbnMoKXtsZXQgdD10aGlzLnRzQXBpO3QmJih0LnR5cGVzY3JpcHREZWZhdWx0cy5zZXRDb21waWxlck9wdGlvbnMoe3RhcmdldDp0LlNjcmlwdFRhcmdldC5FUzIwMjAsbW9kdWxlOnQuTW9kdWxlS2luZC5FU05leHQsbW9kdWxlUmVzb2x1dGlvbjp0Lk1vZHVsZVJlc29sdXRpb25LaW5kLkJ1bmRsZXI/P3QuTW9kdWxlUmVzb2x1dGlvbktpbmQuTm9kZUpzLGFsbG93U3ludGhldGljRGVmYXVsdEltcG9ydHM6ITAsZXNNb2R1bGVJbnRlcm9wOiEwLHN0cmljdDohMCxub0VtaXQ6ITAsYWxsb3dKczohMCxjaGVja0pzOiExLGFsbG93Tm9uVHNFeHRlbnNpb25zOiEwLGxpYjpbImVzMjAyMCIsImRvbSIsImRvbS5pdGVyYWJsZSJdLGJhc2VVcmw6Ii8iLGFsbG93SW1wb3J0aW5nVHNFeHRlbnNpb25zOiEwLHJlc29sdmVKc29uTW9kdWxlOiEwfSksdC50eXBlc2NyaXB0RGVmYXVsdHMuc2V0RGlhZ25vc3RpY3NPcHRpb25zKHtub1NlbWFudGljVmFsaWRhdGlvbjohMSxub1N5bnRheFZhbGlkYXRpb246ITF9KSx0LnR5cGVzY3JpcHREZWZhdWx0cy5zZXRFYWdlck1vZGVsU3luYyghMCkpfXBhcnNlSW1wb3J0cyh0KXtsZXQgcj1bXSxhPS9pbXBvcnRccysoPzpbXHcqe31ccyxdK2Zyb21ccyspP1snIl0oW14nIl0rKVsnIl0vZyxpO2Zvcig7KGk9YS5leGVjKHQpKSE9PW51bGw7KXtsZXQgbj1pWzFdO2lmKCFuLnN0YXJ0c1dpdGgoIi4iKSYmIW4uc3RhcnRzV2l0aCgiLyIpKXtsZXQgcz1uLnN0YXJ0c1dpdGgoIkAiKT9uLnNwbGl0KCIvIikuc2xpY2UoMCwyKS5qb2luKCIvIik6bi5zcGxpdCgiLyIpWzBdO3IucHVzaChzKX19bGV0IG89L3JlcXVpcmVccypcKFxzKlsnIl0oW14nIl0rKVsnIl1ccypcKS9nO2Zvcig7KGk9by5leGVjKHQpKSE9PW51bGw7KXtsZXQgbj1pWzFdO2lmKCFuLnN0YXJ0c1dpdGgoIi4iKSYmIW4uc3RhcnRzV2l0aCgiLyIpKXtsZXQgcz1uLnN0YXJ0c1dpdGgoIkAiKT9uLnNwbGl0KCIvIikuc2xpY2UoMCwyKS5qb2luKCIvIik6bi5zcGxpdCgiLyIpWzBdO3IucHVzaChzKX19cmV0dXJuWy4uLm5ldyBTZXQocildfWFzeW5jIGxvYWRUeXBlc0ZvclBhY2thZ2UodCl7aWYoISghdGhpcy5tb25hY29JbnN0YW5jZXx8IXRoaXMuZXhlY3V0aW9uRW52aXJvbm1lbnQpJiYhdGhpcy5sb2FkZWRMaWJzLmhhcyh0KSYmIXRoaXMubm90Rm91bmRQYWNrYWdlcy5oYXModCkpdHJ5e2xldCByPWF3YWl0IHRoaXMudHJ5TG9hZFBhY2thZ2VUeXBlcyh0KTtyfHwocj1hd2FpdCB0aGlzLnRyeUxvYWRBdFR5cGVzUGFja2FnZSh0KSkscj90aGlzLmxvYWRlZExpYnMuYWRkKHQpOnRoaXMubm90Rm91bmRQYWNrYWdlcy5hZGQodCl9Y2F0Y2gocil7Y29uc29sZS53YXJuKGBGYWlsZWQgdG8gbG9hZCB0eXBlcyBmb3IgJHt0fTpgLHIpfX1hc3luYyB0cnlMb2FkUGFja2FnZVR5cGVzKHQpe2xldCByPXRoaXMudHNBcGk7aWYoIXRoaXMuZXhlY3V0aW9uRW52aXJvbm1lbnR8fCFyKXJldHVybiExO2xldCBhPWAvbm9kZV9tb2R1bGVzLyR7dH1gO3RyeXtsZXQgaT1gJHthfS9wYWNrYWdlLmpzb25gO2lmKGF3YWl0IHRoaXMuZXhlY3V0aW9uRW52aXJvbm1lbnQuZXhpc3RzKGkpKXtsZXQgcz1hd2FpdCB0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50LnJlYWRGaWxlKGkpLGM9SlNPTi5wYXJzZShzKTtpZihyLnR5cGVzY3JpcHREZWZhdWx0cy5hZGRFeHRyYUxpYihzLGBmaWxlOi8vJHtpfWApLGMudHlwZXN8fGMudHlwaW5ncylyZXR1cm4gYXdhaXQgdGhpcy5sb2FkQWxsRHRzRmlsZXNGcm9tUGFja2FnZShhKSwhMH1sZXQgbj1bYCR7YX0vaW5kZXguZC50c2AsYCR7YX0vZGlzdC9pbmRleC5kLnRzYCxgJHthfS9saWIvaW5kZXguZC50c2BdO2ZvcihsZXQgcyBvZiBuKWlmKGF3YWl0IHRoaXMuZXhlY3V0aW9uRW52aXJvbm1lbnQuZXhpc3RzKHMpKXJldHVybiBhd2FpdCB0aGlzLmxvYWRBbGxEdHNGaWxlc0Zyb21QYWNrYWdlKGEpLCEwO3JldHVybiExfWNhdGNoKGkpe3JldHVybiBjb25zb2xlLmVycm9yKGBGYWlsZWQgdG8gbG9hZCBwYWNrYWdlIHR5cGVzIGZvciAke3R9OmAsaSksITF9fWFzeW5jIGxvYWRBbGxEdHNGaWxlc0Zyb21QYWNrYWdlKHQpe2xldCByPXRoaXMudHNBcGk7IXRoaXMuZXhlY3V0aW9uRW52aXJvbm1lbnR8fCFyfHxhd2FpdCB0aGlzLmxvYWREdHNGaWxlc0Zyb21EaXJlY3RvcnkodCl9YXN5bmMgbG9hZER0c0ZpbGVzRnJvbURpcmVjdG9yeSh0KXtsZXQgcj10aGlzLnRzQXBpO2lmKCEoIXRoaXMuZXhlY3V0aW9uRW52aXJvbm1lbnR8fCFyKSl0cnl7bGV0IGE9YXdhaXQgdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudC5yZWFkRGlyKHQpO2ZvcihsZXQgaSBvZiBhKXtsZXQgbz10PT09Ii8iP2AvJHtpLm5hbWV9YDpgJHt0fS8ke2kubmFtZX1gO2lmKGkubmFtZSE9PSJub2RlX21vZHVsZXMiKXtpZihpLnR5cGU9PT0iZGlyZWN0b3J5Iilhd2FpdCB0aGlzLmxvYWREdHNGaWxlc0Zyb21EaXJlY3Rvcnkobyk7ZWxzZSBpZihpLnR5cGU9PT0iZmlsZSImJmkubmFtZS5lbmRzV2l0aCgiLmQudHMiKSl0cnl7bGV0IG49YXdhaXQgdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudC5yZWFkRmlsZShvKTtyLnR5cGVzY3JpcHREZWZhdWx0cy5hZGRFeHRyYUxpYihuLGBmaWxlOi8vJHtvfWApfWNhdGNoe319fX1jYXRjaHt9fWFzeW5jIHRyeUxvYWRBdFR5cGVzUGFja2FnZSh0KXtpZighdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudClyZXR1cm4hMTtsZXQgYT1gL25vZGVfbW9kdWxlcy8ke3Quc3RhcnRzV2l0aCgiQCIpP2BAdHlwZXMvJHt0LnNsaWNlKDEpLnJlcGxhY2UoIi8iLCJfXyIpfWA6YEB0eXBlcy8ke3R9YH1gO3RyeXtsZXQgaT1gJHthfS9pbmRleC5kLnRzYDtyZXR1cm4gYXdhaXQgdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudC5leGlzdHMoaSk/KGF3YWl0IHRoaXMubG9hZEFsbER0c0ZpbGVzRnJvbVBhY2thZ2UoYSksITApOiExfWNhdGNoe3JldHVybiExfX1hc3luYyBwcm9jZXNzQ29udGVudENoYW5nZSh0KXtsZXQgcj10aGlzLnBhcnNlSW1wb3J0cyh0KTtmb3IobGV0IGEgb2Ygcil0aGlzLmxvYWRlZExpYnMuaGFzKGEpfHxhd2FpdCB0aGlzLmxvYWRUeXBlc0ZvclBhY2thZ2UoYSl9YXN5bmMgc2NhbkFuZExvYWROZXdQYWNrYWdlVHlwZXMoKXtpZih0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50KXt0aGlzLm5vdEZvdW5kUGFja2FnZXMuY2xlYXIoKTt0cnl7aWYoIWF3YWl0IHRoaXMuZXhlY3V0aW9uRW52aXJvbm1lbnQuZXhpc3RzKCIvbm9kZV9tb2R1bGVzIikpcmV0dXJuO2xldCB0PWF3YWl0IHRoaXMuZXhlY3V0aW9uRW52aXJvbm1lbnQucmVhZERpcigiL25vZGVfbW9kdWxlcyIpO2ZvcihsZXQgciBvZiB0KWlmKHIudHlwZT09PSJkaXJlY3RvcnkiKWlmKHIubmFtZS5zdGFydHNXaXRoKCJAIikpdHJ5e2xldCBhPWAvbm9kZV9tb2R1bGVzLyR7ci5uYW1lfWAsaT1hd2FpdCB0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50LnJlYWREaXIoYSk7Zm9yKGxldCBvIG9mIGkpaWYoby50eXBlPT09ImRpcmVjdG9yeSIpe2xldCBuPWAke3IubmFtZX0vJHtvLm5hbWV9YDthd2FpdCB0aGlzLmxvYWRUeXBlc0ZvclBhY2thZ2Uobil9fWNhdGNoe31lbHNlIHIubmFtZS5zdGFydHNXaXRoKCIuIil8fGF3YWl0IHRoaXMubG9hZFR5cGVzRm9yUGFja2FnZShyLm5hbWUpfWNhdGNoKHQpe2NvbnNvbGUud2FybigiRmFpbGVkIHRvIHNjYW4gbm9kZV9tb2R1bGVzOiIsdCl9fX1hZGRGaWxlTW9kZWwodCxyKXtpZighdGhpcy5tb25hY29JbnN0YW5jZSlyZXR1cm47dGhpcy5maWxlQ2FjaGUuc2V0KHQscik7bGV0IGE9dGhpcy5tb25hY29JbnN0YW5jZS5VcmkucGFyc2UoYGZpbGU6Ly8ke3R9YCksaT10aGlzLm1vbmFjb0luc3RhbmNlLmVkaXRvci5nZXRNb2RlbChhKTtpZihpKWkuZ2V0VmFsdWUoKSE9PXImJmkuc2V0VmFsdWUocik7ZWxzZXtsZXQgbz10aGlzLmdldExhbmd1YWdlRnJvbVBhdGgodCk7dGhpcy5tb25hY29JbnN0YW5jZS5lZGl0b3IuY3JlYXRlTW9kZWwocixvLGEpfXRoaXMuYWRkRmlsZUFzRXh0cmFMaWIodCxyKX1hZGRGaWxlQXNFeHRyYUxpYih0LHIpe2xldCBhPXRoaXMudHNBcGk7aWYoIWEpcmV0dXJuO2xldCBpPXRoaXMuYWRkZWRFeHRyYUxpYnMuZ2V0KHQpO2kmJmkuZGlzcG9zZSgpO2xldCBvPWBmaWxlOi8vJHt0fWAsbj1hLnR5cGVzY3JpcHREZWZhdWx0cy5hZGRFeHRyYUxpYihyLG8pO2lmKHRoaXMuYWRkZWRFeHRyYUxpYnMuc2V0KHQsbiksdC5lbmRzV2l0aCgiLnRzIikmJiF0LmVuZHNXaXRoKCIuZC50cyIpKXtsZXQgcz10LnJlcGxhY2UoL1wudHMkLywiLmpzIiksYz1gZmlsZTovLyR7c31gLGQ9YS50eXBlc2NyaXB0RGVmYXVsdHMuYWRkRXh0cmFMaWIocixjKTt0aGlzLmFkZGVkRXh0cmFMaWJzLnNldChzLGQpLHRoaXMuZmlsZUNhY2hlLnNldChzLHIpfWVsc2UgaWYodC5lbmRzV2l0aCgiLnRzeCIpKXtsZXQgcz10LnJlcGxhY2UoL1wudHN4JC8sIi5qc3giKSxjPWBmaWxlOi8vJHtzfWAsZD1hLnR5cGVzY3JpcHREZWZhdWx0cy5hZGRFeHRyYUxpYihyLGMpO3RoaXMuYWRkZWRFeHRyYUxpYnMuc2V0KHMsZCksdGhpcy5maWxlQ2FjaGUuc2V0KHMscil9fWdldEZpbGVDb250ZW50KHQpe3JldHVybiB0aGlzLmZpbGVDYWNoZS5nZXQodCl9Z2V0TGFuZ3VhZ2VGcm9tUGF0aCh0KXtzd2l0Y2godC5zcGxpdCgiLiIpLnBvcCgpPy50b0xvd2VyQ2FzZSgpKXtjYXNlInRzIjpjYXNlInRzeCI6cmV0dXJuInR5cGVzY3JpcHQiO2Nhc2UianMiOmNhc2UianN4IjpyZXR1cm4iamF2YXNjcmlwdCI7Y2FzZSJqc29uIjpyZXR1cm4ianNvbiI7ZGVmYXVsdDpyZXR1cm4icGxhaW50ZXh0In19fX0pO3ZhciBZOCxobix0QnIsVTB0PWwoKCk9PntTZSgpO2VyKCk7VWx0KCk7b3QoKTtvMygpO1k4PWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0saG49ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LHRCcj0oKCk9PntsZXQgZT1bemUoImRlZXMtd29ya3NwYWNlLWRpZmYtZWRpdG9yIildLHQscj1bXSxhLGk9RGUsbyxuPVtdLHM9W10sYyxkPVtdLGY9W10sdSxwPVtdLGg9W10sYix4PVtdLGc9W10sdix3PVtdLE09W10sRixDPVtdLGs9W107dmFyIE49Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCAkPXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO289W2ooe3R5cGU6U3RyaW5nfSldLGM9W2ooe3R5cGU6U3RyaW5nfSldLHU9W2ooe3R5cGU6U3RyaW5nfSldLGI9W2ooe3R5cGU6U3RyaW5nfSldLHY9W2ooe3R5cGU6U3RyaW5nfSldLEY9W2ooe3R5cGU6U3RyaW5nfSldLFk4KHRoaXMsbnVsbCxvLHtraW5kOiJhY2Nlc3NvciIsbmFtZToib3JpZ2luYWxDb250ZW50IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpJPT4ib3JpZ2luYWxDb250ZW50ImluIEksZ2V0Okk9Pkkub3JpZ2luYWxDb250ZW50LHNldDooSSxCKT0+e0kub3JpZ2luYWxDb250ZW50PUJ9fSxtZXRhZGF0YTokfSxuLHMpLFk4KHRoaXMsbnVsbCxjLHtraW5kOiJhY2Nlc3NvciIsbmFtZToibW9kaWZpZWRDb250ZW50IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpJPT4ibW9kaWZpZWRDb250ZW50ImluIEksZ2V0Okk9PkkubW9kaWZpZWRDb250ZW50LHNldDooSSxCKT0+e0kubW9kaWZpZWRDb250ZW50PUJ9fSxtZXRhZGF0YTokfSxkLGYpLFk4KHRoaXMsbnVsbCx1LHtraW5kOiJhY2Nlc3NvciIsbmFtZToib3JpZ2luYWxMYWJlbCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ST0+Im9yaWdpbmFsTGFiZWwiaW4gSSxnZXQ6ST0+SS5vcmlnaW5hbExhYmVsLHNldDooSSxCKT0+e0kub3JpZ2luYWxMYWJlbD1CfX0sbWV0YWRhdGE6JH0scCxoKSxZOCh0aGlzLG51bGwsYix7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im1vZGlmaWVkTGFiZWwiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOkk9PiJtb2RpZmllZExhYmVsImluIEksZ2V0Okk9PkkubW9kaWZpZWRMYWJlbCxzZXQ6KEksQik9PntJLm1vZGlmaWVkTGFiZWw9Qn19LG1ldGFkYXRhOiR9LHgsZyksWTgodGhpcyxudWxsLHYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJsYW5ndWFnZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ST0+Imxhbmd1YWdlImluIEksZ2V0Okk9PkkubGFuZ3VhZ2Usc2V0OihJLEIpPT57SS5sYW5ndWFnZT1CfX0sbWV0YWRhdGE6JH0sdyxNKSxZOCh0aGlzLG51bGwsRix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImZpbGVQYXRoIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpJPT4iZmlsZVBhdGgiaW4gSSxnZXQ6ST0+SS5maWxlUGF0aCxzZXQ6KEksQik9PntJLmZpbGVQYXRoPUJ9fSxtZXRhZGF0YTokfSxDLGspLFk4KG51bGwsdD17dmFsdWU6YX0sZSx7a2luZDoiY2xhc3MiLG5hbWU6YS5uYW1lLG1ldGFkYXRhOiR9LG51bGwsciksTj1hPXQudmFsdWUsJCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsU3ltYm9sLm1ldGFkYXRhLHtlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTokfSl9c3RhdGljIGRlbW89KCk9PlNgCiAgICA8ZGVlcy13b3Jrc3BhY2UtZGlmZi1lZGl0b3IKICAgICAgLm9yaWdpbmFsQ29udGVudD0ke2BmdW5jdGlvbiBoZWxsbygpIHsKICBjb25zb2xlLmxvZygiSGVsbG8iKTsKfWB9CiAgICAgIC5tb2RpZmllZENvbnRlbnQ9JHtgZnVuY3Rpb24gaGVsbG8oKSB7CiAgY29uc29sZS5sb2coIkhlbGxvIFdvcmxkISIpOwogIHJldHVybiB0cnVlOwp9YH0KICAgICAgLmxhbmd1YWdlPSR7InR5cGVzY3JpcHQifQogICAgICAuZmlsZVBhdGg9JHsiL2RlbW8vZXhhbXBsZS50cyJ9CiAgICA+PC9kZWVzLXdvcmtzcGFjZS1kaWZmLWVkaXRvcj4KICBgO3N0YXRpYyBkZW1vR3JvdXBzPVsiV29ya3NwYWNlIl07ZGlmZkVkaXRvckRlZmVycmVkPUp0LnNtYXJ0cHJvbWlzZS5kZWZlcigpOyNlPWhuKHRoaXMsbiwiIik7Z2V0IG9yaWdpbmFsQ29udGVudCgpe3JldHVybiB0aGlzLiNlfXNldCBvcmlnaW5hbENvbnRlbnQoJCl7dGhpcy4jZT0kfSN0PShobih0aGlzLHMpLGhuKHRoaXMsZCwiIikpO2dldCBtb2RpZmllZENvbnRlbnQoKXtyZXR1cm4gdGhpcy4jdH1zZXQgbW9kaWZpZWRDb250ZW50KCQpe3RoaXMuI3Q9JH0jcj0oaG4odGhpcyxmKSxobih0aGlzLHAsIkRpc2sgVmVyc2lvbiIpKTtnZXQgb3JpZ2luYWxMYWJlbCgpe3JldHVybiB0aGlzLiNyfXNldCBvcmlnaW5hbExhYmVsKCQpe3RoaXMuI3I9JH0jYT0oaG4odGhpcyxoKSxobih0aGlzLHgsIkxvY2FsIFZlcnNpb24iKSk7Z2V0IG1vZGlmaWVkTGFiZWwoKXtyZXR1cm4gdGhpcy4jYX1zZXQgbW9kaWZpZWRMYWJlbCgkKXt0aGlzLiNhPSR9I2k9KGhuKHRoaXMsZyksaG4odGhpcyx3LCJ0eXBlc2NyaXB0IikpO2dldCBsYW5ndWFnZSgpe3JldHVybiB0aGlzLiNpfXNldCBsYW5ndWFnZSgkKXt0aGlzLiNpPSR9I289KGhuKHRoaXMsTSksaG4odGhpcyxDLCIiKSk7Z2V0IGZpbGVQYXRoKCl7cmV0dXJuIHRoaXMuI299c2V0IGZpbGVQYXRoKCQpe3RoaXMuI289JH1kaWZmRWRpdG9yPShobih0aGlzLGspLG51bGwpO21vbmFjb1RoZW1lU3Vic2NyaXB0aW9uPW51bGw7b3JpZ2luYWxNb2RlbD1udWxsO21vZGlmaWVkTW9kZWw9bnVsbDtjb25zdHJ1Y3Rvcigpe3N1cGVyKCksWTEuc2V0dXBEb21Ub29scygpfXN0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgOmhvc3QgewogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICB0b3A6IDA7CiAgICAgICAgbGVmdDogMDsKICAgICAgICByaWdodDogMDsKICAgICAgICBib3R0b206IDA7CiAgICAgIH0KCiAgICAgICogewogICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgIH0KCiAgICAgIC5kaWZmLXdyYXBwZXIgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgIH0KCiAgICAgIC5kaWZmLXRvb2xiYXIgewogICAgICAgIGhlaWdodDogNDhweDsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwogICAgICAgIHBhZGRpbmc6IDAgMTZweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOTYlKSIsImhzbCgwIDAlIDEyJSkiKX07CiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4NSUpIiwiaHNsKDAgMCUgMjAlKSIpfTsKICAgICAgICBmbGV4LXNocmluazogMDsKICAgICAgfQoKICAgICAgLmRpZmYtaW5mbyB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogMTJweDsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAzMCUpIiwiaHNsKDAgMCUgODAlKSIpfTsKICAgICAgfQoKICAgICAgLmRpZmYtZmlsZW5hbWUgewogICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAyMCUpIiwiaHNsKDAgMCUgOTAlKSIpfTsKICAgICAgfQoKICAgICAgLmRpZmYtbGFiZWxzIHsKICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA1MCUpIiwiaHNsKDAgMCUgNjAlKSIpfTsKICAgICAgfQoKICAgICAgLmRpZmYtYWN0aW9ucyB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogOHB4OwogICAgICB9CgogICAgICAuZGlmZi1jb250YWluZXIgewogICAgICAgIGZsZXg6IDE7CiAgICAgICAgbWluLWhlaWdodDogMDsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgfQoKICAgICAgLm5hdi1idXR0b25zIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGdhcDogNHB4OwogICAgICB9CgogICAgICAuYWN0aW9uLWJ1dHRvbnMgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZ2FwOiA4cHg7CiAgICAgICAgbWFyZ2luLWxlZnQ6IDE2cHg7CiAgICAgIH0KICAgIGBdO3JlbmRlcigpe2xldCAkPXRoaXMuZmlsZVBhdGguc3BsaXQoIi8iKS5wb3AoKXx8ImZpbGUiO3JldHVybiBTYAogICAgICA8ZGl2IGNsYXNzPSJkaWZmLXdyYXBwZXIiPgogICAgICAgIDxkaXYgY2xhc3M9ImRpZmYtdG9vbGJhciI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJkaWZmLWluZm8iPgogICAgICAgICAgICA8c3BhbiBjbGFzcz0iZGlmZi1maWxlbmFtZSI+JHskfTwvc3Bhbj4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImRpZmYtbGFiZWxzIj4ke3RoaXMub3JpZ2luYWxMYWJlbH0g4oaUICR7dGhpcy5tb2RpZmllZExhYmVsfTwvc3Bhbj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0iZGlmZi1hY3Rpb25zIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibmF2LWJ1dHRvbnMiPgogICAgICAgICAgICAgIDxkZWVzLWJ1dHRvbgogICAgICAgICAgICAgICAgdHlwZT0ib3V0bGluZSIKICAgICAgICAgICAgICAgIEBjbGljaz0ke3RoaXMuZ29Ub1ByZXZpb3VzRGlmZn0KICAgICAgICAgICAgICA+UHJldmlvdXM8L2RlZXMtYnV0dG9uPgogICAgICAgICAgICAgIDxkZWVzLWJ1dHRvbgogICAgICAgICAgICAgICAgdHlwZT0ib3V0bGluZSIKICAgICAgICAgICAgICAgIEBjbGljaz0ke3RoaXMuZ29Ub05leHREaWZmfQogICAgICAgICAgICAgID5OZXh0PC9kZWVzLWJ1dHRvbj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFjdGlvbi1idXR0b25zIj4KICAgICAgICAgICAgICA8ZGVlcy1idXR0b24KICAgICAgICAgICAgICAgIHR5cGU9ImhpZ2hsaWdodGVkIgogICAgICAgICAgICAgICAgQGNsaWNrPSR7dGhpcy5hY2NlcHRMb2NhbH0KICAgICAgICAgICAgICA+VXNlIExvY2FsPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgICAgICA8ZGVlcy1idXR0b24KICAgICAgICAgICAgICAgIHR5cGU9Im91dGxpbmUiCiAgICAgICAgICAgICAgICBAY2xpY2s9JHt0aGlzLmFjY2VwdERpc2t9CiAgICAgICAgICAgICAgPlVzZSBEaXNrPC9kZWVzLWJ1dHRvbj4KICAgICAgICAgICAgICA8ZGVlcy1idXR0b24KICAgICAgICAgICAgICAgIHR5cGU9Im91dGxpbmUiCiAgICAgICAgICAgICAgICBAY2xpY2s9JHt0aGlzLmNsb3NlfQogICAgICAgICAgICAgID5DbG9zZTwvZGVlcy1idXR0b24+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iZGlmZi1jb250YWluZXIiPjwvZGl2PgogICAgICA8L2Rpdj4KICAgIGB9YXN5bmMgZmlyc3RVcGRhdGVkKCl7YXdhaXQgc3VwZXIuZmlyc3RVcGRhdGVkKG5ldyBNYXApLGF3YWl0IHRoaXMuaW5pdERpZmZFZGl0b3IoKX1hc3luYyBpbml0RGlmZkVkaXRvcigpe2xldCAkPXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiLmRpZmYtY29udGFpbmVyIik7aWYoISQpcmV0dXJuO2xldCBJPWBodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL21vbmFjby1lZGl0b3JAJHt6bGV9YCxCPXdpbmRvdy5tb25hY287Qnx8KGF3YWl0IG5ldyBQcm9taXNlKFc9PntsZXQgYWU9c2V0SW50ZXJ2YWwoKCk9Pnt3aW5kb3cubW9uYWNvJiYoY2xlYXJJbnRlcnZhbChhZSksVygpKX0sMTAwKX0pLEI9d2luZG93Lm1vbmFjbyk7bGV0IHo9YXdhaXQgdGhpcy5kb210b29sc1Byb21pc2UsRT16LnRoZW1lTWFuYWdlci5nb0JyaWdodEJvb2xlYW4/InZzIjoidnMtZGFyayIsXz1EYXRlLm5vdygpLFA9Qi5VcmkucGFyc2UoYGRpZmY6Ly9vcmlnaW5hbC8ke199JHt0aGlzLmZpbGVQYXRofWApLFY9Qi5VcmkucGFyc2UoYGRpZmY6Ly9tb2RpZmllZC8ke199JHt0aGlzLmZpbGVQYXRofWApO3RoaXMub3JpZ2luYWxNb2RlbD1CLmVkaXRvci5jcmVhdGVNb2RlbCh0aGlzLm9yaWdpbmFsQ29udGVudCx0aGlzLmxhbmd1YWdlLFApLHRoaXMubW9kaWZpZWRNb2RlbD1CLmVkaXRvci5jcmVhdGVNb2RlbCh0aGlzLm1vZGlmaWVkQ29udGVudCx0aGlzLmxhbmd1YWdlLFYpLHRoaXMuZGlmZkVkaXRvcj1CLmVkaXRvci5jcmVhdGVEaWZmRWRpdG9yKCQse2F1dG9tYXRpY0xheW91dDohMCxyZWFkT25seTohMSxvcmlnaW5hbEVkaXRhYmxlOiExLHJlbmRlclNpZGVCeVNpZGU6ITAsaWdub3JlVHJpbVdoaXRlc3BhY2U6ITEsZm9udFNpemU6MTQsbWluaW1hcDp7ZW5hYmxlZDohMX19KSxCLmVkaXRvci5zZXRUaGVtZShFKSx0aGlzLmRpZmZFZGl0b3Iuc2V0TW9kZWwoe29yaWdpbmFsOnRoaXMub3JpZ2luYWxNb2RlbCxtb2RpZmllZDp0aGlzLm1vZGlmaWVkTW9kZWx9KSx0aGlzLm1vbmFjb1RoZW1lU3Vic2NyaXB0aW9uPXoudGhlbWVNYW5hZ2VyLnRoZW1lT2JzZXJ2YWJsZS5zdWJzY3JpYmUoVz0+e2xldCBhZT1XPyJ2cyI6InZzLWRhcmsiO0IuZWRpdG9yLnNldFRoZW1lKGFlKX0pO2xldCBIPSJtb25hY28tZGlmZi1lZGl0b3ItY3NzIjtpZighdGhpcy5zaGFkb3dSb290Py5nZXRFbGVtZW50QnlJZChIKSl7bGV0IGFlPWF3YWl0KGF3YWl0IGZldGNoKGAke0l9L21pbi92cy9lZGl0b3IvZWRpdG9yLm1haW4uY3NzYCkpLnRleHQoKSxUPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInN0eWxlIik7VC5pZD1ILFQudGV4dENvbnRlbnQ9YWUsdGhpcy5zaGFkb3dSb290Py5hcHBlbmQoVCl9c2V0VGltZW91dCgoKT0+e3RyeXt0aGlzLmRpZmZFZGl0b3I/LnJldmVhbEZpcnN0RGlmZigpfWNhdGNoe319LDEwMCksdGhpcy5kaWZmRWRpdG9yRGVmZXJyZWQucmVzb2x2ZSh0aGlzLmRpZmZFZGl0b3IpfWdvVG9OZXh0RGlmZigpe3RyeXt0aGlzLmRpZmZFZGl0b3I/LmdvVG9EaWZmKCJuZXh0Iil9Y2F0Y2h7fX1nb1RvUHJldmlvdXNEaWZmKCl7dHJ5e3RoaXMuZGlmZkVkaXRvcj8uZ29Ub0RpZmYoInByZXZpb3VzIil9Y2F0Y2h7fX1hY2NlcHRMb2NhbCgpe2xldCAkPXRoaXMuZGlmZkVkaXRvcj8uZ2V0TW9kaWZpZWRFZGl0b3IoKS5nZXRWYWx1ZSgpfHx0aGlzLm1vZGlmaWVkQ29udGVudDt0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJkaWZmLXJlc29sdmVkIix7ZGV0YWlsOnthY3Rpb246InVzZS1sb2NhbCIsY29udGVudDokfSxidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpfWFjY2VwdERpc2soKXt0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJkaWZmLXJlc29sdmVkIix7ZGV0YWlsOnthY3Rpb246InVzZS1kaXNrIixjb250ZW50OnRoaXMub3JpZ2luYWxDb250ZW50fSxidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpfWNsb3NlKCl7dGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgiZGlmZi1jbG9zZWQiLHtidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpfWFzeW5jIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCl7YXdhaXQgc3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKSx0aGlzLm1vbmFjb1RoZW1lU3Vic2NyaXB0aW9uJiYodGhpcy5tb25hY29UaGVtZVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpLHRoaXMubW9uYWNvVGhlbWVTdWJzY3JpcHRpb249bnVsbCksdGhpcy5vcmlnaW5hbE1vZGVsJiYodGhpcy5vcmlnaW5hbE1vZGVsLmRpc3Bvc2UoKSx0aGlzLm9yaWdpbmFsTW9kZWw9bnVsbCksdGhpcy5tb2RpZmllZE1vZGVsJiYodGhpcy5tb2RpZmllZE1vZGVsLmRpc3Bvc2UoKSx0aGlzLm1vZGlmaWVkTW9kZWw9bnVsbCksdGhpcy5kaWZmRWRpdG9yJiYodGhpcy5kaWZmRWRpdG9yLmRpc3Bvc2UoKSx0aGlzLmRpZmZFZGl0b3I9bnVsbCl9c3RhdGlje2huKGEscil9fTtyZXR1cm4gTj1hfSkoKX0pO3ZhciBGYSxGdCxyQnIsYUJyPWwoKCk9PntTZSgpO2VyKCk7b3QoKTt3Y2UoKTtDOCgpO2tjZSgpO2tjZSgpO1paKCk7WlooKTtxMHQoKTtqMHQoKTticigpO0M4KCk7VjB0KCk7YmkoKTt6YSgpO2FjZSgpO1UwdCgpO0ZhPWZ1bmN0aW9uKGUsdCxyLGEsaSxvKXtmdW5jdGlvbiBuKHYpe2lmKHYhPT12b2lkIDAmJnR5cGVvZiB2IT0iZnVuY3Rpb24iKXRocm93IG5ldyBUeXBlRXJyb3IoIkZ1bmN0aW9uIGV4cGVjdGVkIik7cmV0dXJuIHZ9Zm9yKHZhciBzPWEua2luZCxjPXM9PT0iZ2V0dGVyIj8iZ2V0IjpzPT09InNldHRlciI/InNldCI6InZhbHVlIixkPSF0JiZlP2Euc3RhdGljP2U6ZS5wcm90b3R5cGU6bnVsbCxmPXR8fChkP09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZCxhLm5hbWUpOnt9KSx1LHA9ITEsaD1yLmxlbmd0aC0xO2g+PTA7aC0tKXt2YXIgYj17fTtmb3IodmFyIHggaW4gYSliW3hdPXg9PT0iYWNjZXNzIj97fTphW3hdO2Zvcih2YXIgeCBpbiBhLmFjY2VzcyliLmFjY2Vzc1t4XT1hLmFjY2Vzc1t4XTtiLmFkZEluaXRpYWxpemVyPWZ1bmN0aW9uKHYpe2lmKHApdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGFkZCBpbml0aWFsaXplcnMgYWZ0ZXIgZGVjb3JhdGlvbiBoYXMgY29tcGxldGVkIik7by5wdXNoKG4odnx8bnVsbCkpfTt2YXIgZz0oMCxyW2hdKShzPT09ImFjY2Vzc29yIj97Z2V0OmYuZ2V0LHNldDpmLnNldH06ZltjXSxiKTtpZihzPT09ImFjY2Vzc29yIil7aWYoZz09PXZvaWQgMCljb250aW51ZTtpZihnPT09bnVsbHx8dHlwZW9mIGchPSJvYmplY3QiKXRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZCIpOyh1PW4oZy5nZXQpKSYmKGYuZ2V0PXUpLCh1PW4oZy5zZXQpKSYmKGYuc2V0PXUpLCh1PW4oZy5pbml0KSkmJmkudW5zaGlmdCh1KX1lbHNlKHU9bihnKSkmJihzPT09ImZpZWxkIj9pLnVuc2hpZnQodSk6ZltjXT11KX1kJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZCxhLm5hbWUsZikscD0hMH0sRnQ9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LHJCcj0oKCk9PntsZXQgZT1bemUoImRlZXMtd29ya3NwYWNlIildLHQscj1bXSxhLGk9RGUsbyxuPVtdLHM9W10sYyxkPVtdLGY9W10sdSxwPVtdLGg9W10sYix4PVtdLGc9W10sdix3PVtdLE09W10sRixDPVtdLGs9W10sTiwkPVtdLEk9W10sQix6PVtdLHk9W10sRSxfPVtdLFA9W10sVixIPVtdLFc9W10sYWUsVD1bXSxKPVtdLGZlLEw9W10sUT1bXSxrZSxHPVtdLEE9W10sRCxSPVtdLE89W10sWSx1ZT1bXSx5ZT1bXSwkZSxVPVtdLHE9W10saWUsd2U9W10sZ2U9W10sQWUseGU9W10sbmU9W10sTGUsT2U9W10sSmU9W10sdGUsWj1bXSxlZT1bXSxiZSxOZT1bXSxLZT1bXSx5dCxudD1bXSxMdD1bXTt2YXIgT3Q9Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCBzZT10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHt0eXBlOk9iamVjdH0pXSxjPVtqKHthdHRyaWJ1dGU6ITF9KV0sdT1baih7dHlwZTpCb29sZWFufSldLGI9W2ooe3R5cGU6Qm9vbGVhbn0pXSx2PVtqKHt0eXBlOk51bWJlcn0pXSxGPVtqKHt0eXBlOk51bWJlcn0pXSxOPVtyZSgpXSxCPVtyZSgpXSxFPVtyZSgpXSxWPVtyZSgpXSxhZT1bcmUoKV0sZmU9W3JlKCldLGtlPVtyZSgpXSxEPVtyZSgpXSxZPVtyZSgpXSwkZT1bcmUoKV0saWU9W3JlKCldLEFlPVtyZSgpXSxMZT1bcmUoKV0sdGU9W3JlKCldLGJlPVtyZSgpXSx5dD1bcmUoKV0sRmEodGhpcyxudWxsLG8se2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJleGVjdXRpb25FbnZpcm9ubWVudCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ZGU9PiJleGVjdXRpb25FbnZpcm9ubWVudCJpbiBkZSxnZXQ6ZGU9PmRlLmV4ZWN1dGlvbkVudmlyb25tZW50LHNldDooZGUsRWUpPT57ZGUuZXhlY3V0aW9uRW52aXJvbm1lbnQ9RWV9fSxtZXRhZGF0YTpzZX0sbixzKSxGYSh0aGlzLG51bGwsYyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImluaXRpYWxpemF0aW9uUHJvbWlzZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ZGU9PiJpbml0aWFsaXphdGlvblByb21pc2UiaW4gZGUsZ2V0OmRlPT5kZS5pbml0aWFsaXphdGlvblByb21pc2Usc2V0OihkZSxFZSk9PntkZS5pbml0aWFsaXphdGlvblByb21pc2U9RWV9fSxtZXRhZGF0YTpzZX0sZCxmKSxGYSh0aGlzLG51bGwsdSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNob3dGaWxlVHJlZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ZGU9PiJzaG93RmlsZVRyZWUiaW4gZGUsZ2V0OmRlPT5kZS5zaG93RmlsZVRyZWUsc2V0OihkZSxFZSk9PntkZS5zaG93RmlsZVRyZWU9RWV9fSxtZXRhZGF0YTpzZX0scCxoKSxGYSh0aGlzLG51bGwsYix7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNob3dUZXJtaW5hbCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ZGU9PiJzaG93VGVybWluYWwiaW4gZGUsZ2V0OmRlPT5kZS5zaG93VGVybWluYWwsc2V0OihkZSxFZSk9PntkZS5zaG93VGVybWluYWw9RWV9fSxtZXRhZGF0YTpzZX0seCxnKSxGYSh0aGlzLG51bGwsdix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImZpbGVUcmVlV2lkdGgiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmRlPT4iZmlsZVRyZWVXaWR0aCJpbiBkZSxnZXQ6ZGU9PmRlLmZpbGVUcmVlV2lkdGgsc2V0OihkZSxFZSk9PntkZS5maWxlVHJlZVdpZHRoPUVlfX0sbWV0YWRhdGE6c2V9LHcsTSksRmEodGhpcyxudWxsLEYse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJ0ZXJtaW5hbEhlaWdodCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ZGU9PiJ0ZXJtaW5hbEhlaWdodCJpbiBkZSxnZXQ6ZGU9PmRlLnRlcm1pbmFsSGVpZ2h0LHNldDooZGUsRWUpPT57ZGUudGVybWluYWxIZWlnaHQ9RWV9fSxtZXRhZGF0YTpzZX0sQyxrKSxGYSh0aGlzLG51bGwsTix7a2luZDoiYWNjZXNzb3IiLG5hbWU6Im9wZW5GaWxlcyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ZGU9PiJvcGVuRmlsZXMiaW4gZGUsZ2V0OmRlPT5kZS5vcGVuRmlsZXMsc2V0OihkZSxFZSk9PntkZS5vcGVuRmlsZXM9RWV9fSxtZXRhZGF0YTpzZX0sJCxJKSxGYSh0aGlzLG51bGwsQix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImFjdGl2ZUZpbGVQYXRoIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpkZT0+ImFjdGl2ZUZpbGVQYXRoImluIGRlLGdldDpkZT0+ZGUuYWN0aXZlRmlsZVBhdGgsc2V0OihkZSxFZSk9PntkZS5hY3RpdmVGaWxlUGF0aD1FZX19LG1ldGFkYXRhOnNlfSx6LHkpLEZhKHRoaXMsbnVsbCxFLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiaXNUZXJtaW5hbENvbGxhcHNlZCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ZGU9PiJpc1Rlcm1pbmFsQ29sbGFwc2VkImluIGRlLGdldDpkZT0+ZGUuaXNUZXJtaW5hbENvbGxhcHNlZCxzZXQ6KGRlLEVlKT0+e2RlLmlzVGVybWluYWxDb2xsYXBzZWQ9RWV9fSxtZXRhZGF0YTpzZX0sXyxQKSxGYSh0aGlzLG51bGwsVix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImlzRmlsZVRyZWVDb2xsYXBzZWQiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmRlPT4iaXNGaWxlVHJlZUNvbGxhcHNlZCJpbiBkZSxnZXQ6ZGU9PmRlLmlzRmlsZVRyZWVDb2xsYXBzZWQsc2V0OihkZSxFZSk9PntkZS5pc0ZpbGVUcmVlQ29sbGFwc2VkPUVlfX0sbWV0YWRhdGE6c2V9LEgsVyksRmEodGhpcyxudWxsLGFlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiaXNJbml0aWFsaXppbmciLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmRlPT4iaXNJbml0aWFsaXppbmciaW4gZGUsZ2V0OmRlPT5kZS5pc0luaXRpYWxpemluZyxzZXQ6KGRlLEVlKT0+e2RlLmlzSW5pdGlhbGl6aW5nPUVlfX0sbWV0YWRhdGE6c2V9LFQsSiksRmEodGhpcyxudWxsLGZlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiYWN0aXZlQm90dG9tUGFuZWwiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmRlPT4iYWN0aXZlQm90dG9tUGFuZWwiaW4gZGUsZ2V0OmRlPT5kZS5hY3RpdmVCb3R0b21QYW5lbCxzZXQ6KGRlLEVlKT0+e2RlLmFjdGl2ZUJvdHRvbVBhbmVsPUVlfX0sbWV0YWRhdGE6c2V9LEwsUSksRmEodGhpcyxudWxsLGtlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZGlhZ25vc3RpY01hcmtlcnMiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmRlPT4iZGlhZ25vc3RpY01hcmtlcnMiaW4gZGUsZ2V0OmRlPT5kZS5kaWFnbm9zdGljTWFya2VycyxzZXQ6KGRlLEVlKT0+e2RlLmRpYWdub3N0aWNNYXJrZXJzPUVlfX0sbWV0YWRhdGE6c2V9LEcsQSksRmEodGhpcyxudWxsLEQse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJhdXRvU2F2ZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ZGU9PiJhdXRvU2F2ZSJpbiBkZSxnZXQ6ZGU9PmRlLmF1dG9TYXZlLHNldDooZGUsRWUpPT57ZGUuYXV0b1NhdmU9RWV9fSxtZXRhZGF0YTpzZX0sUixPKSxGYSh0aGlzLG51bGwsWSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImluaXRDb21tYW5kIixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpkZT0+ImluaXRDb21tYW5kImluIGRlLGdldDpkZT0+ZGUuaW5pdENvbW1hbmQsc2V0OihkZSxFZSk9PntkZS5pbml0Q29tbWFuZD1FZX19LG1ldGFkYXRhOnNlfSx1ZSx5ZSksRmEodGhpcyxudWxsLCRlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToiaW5pdE91dHB1dCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ZGU9PiJpbml0T3V0cHV0ImluIGRlLGdldDpkZT0+ZGUuaW5pdE91dHB1dCxzZXQ6KGRlLEVlKT0+e2RlLmluaXRPdXRwdXQ9RWV9fSxtZXRhZGF0YTpzZX0sVSxxKSxGYSh0aGlzLG51bGwsaWUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJjdXJyZW50RmlsZVRyZWVXaWR0aCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ZGU9PiJjdXJyZW50RmlsZVRyZWVXaWR0aCJpbiBkZSxnZXQ6ZGU9PmRlLmN1cnJlbnRGaWxlVHJlZVdpZHRoLHNldDooZGUsRWUpPT57ZGUuY3VycmVudEZpbGVUcmVlV2lkdGg9RWV9fSxtZXRhZGF0YTpzZX0sd2UsZ2UpLEZhKHRoaXMsbnVsbCxBZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImN1cnJlbnRUZXJtaW5hbEhlaWdodCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ZGU9PiJjdXJyZW50VGVybWluYWxIZWlnaHQiaW4gZGUsZ2V0OmRlPT5kZS5jdXJyZW50VGVybWluYWxIZWlnaHQsc2V0OihkZSxFZSk9PntkZS5jdXJyZW50VGVybWluYWxIZWlnaHQ9RWV9fSxtZXRhZGF0YTpzZX0seGUsbmUpLEZhKHRoaXMsbnVsbCxMZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImlzRHJhZ2dpbmdGaWxlVHJlZSIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ZGU9PiJpc0RyYWdnaW5nRmlsZVRyZWUiaW4gZGUsZ2V0OmRlPT5kZS5pc0RyYWdnaW5nRmlsZVRyZWUsc2V0OihkZSxFZSk9PntkZS5pc0RyYWdnaW5nRmlsZVRyZWU9RWV9fSxtZXRhZGF0YTpzZX0sT2UsSmUpLEZhKHRoaXMsbnVsbCx0ZSx7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImlzRHJhZ2dpbmdUZXJtaW5hbCIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6ZGU9PiJpc0RyYWdnaW5nVGVybWluYWwiaW4gZGUsZ2V0OmRlPT5kZS5pc0RyYWdnaW5nVGVybWluYWwsc2V0OihkZSxFZSk9PntkZS5pc0RyYWdnaW5nVGVybWluYWw9RWV9fSxtZXRhZGF0YTpzZX0sWixlZSksRmEodGhpcyxudWxsLGJlLHtraW5kOiJhY2Nlc3NvciIsbmFtZToic2hvd0RpZmZWaWV3IixzdGF0aWM6ITEscHJpdmF0ZTohMSxhY2Nlc3M6e2hhczpkZT0+InNob3dEaWZmVmlldyJpbiBkZSxnZXQ6ZGU9PmRlLnNob3dEaWZmVmlldyxzZXQ6KGRlLEVlKT0+e2RlLnNob3dEaWZmVmlldz1FZX19LG1ldGFkYXRhOnNlfSxOZSxLZSksRmEodGhpcyxudWxsLHl0LHtraW5kOiJhY2Nlc3NvciIsbmFtZToiZGlmZlZpZXdDb25maWciLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOmRlPT4iZGlmZlZpZXdDb25maWciaW4gZGUsZ2V0OmRlPT5kZS5kaWZmVmlld0NvbmZpZyxzZXQ6KGRlLEVlKT0+e2RlLmRpZmZWaWV3Q29uZmlnPUVlfX0sbWV0YWRhdGE6c2V9LG50LEx0KSxGYShudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTpzZX0sbnVsbCxyKSxPdD1hPXQudmFsdWUsc2UmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6c2V9KX1zdGF0aWMgZGVtbz0oKT0+e2xldCBzZT1uZXcgVzgsZGU9KGFzeW5jKCk9Pnthd2FpdCBzZS5pbml0KCk7bGV0IGt0PXsicGFja2FnZS5qc29uIjp7ZmlsZTp7Y29udGVudHM6SlNPTi5zdHJpbmdpZnkoe25hbWU6ImRlbW8tcHJvamVjdCIsdmVyc2lvbjoiMS4wLjAiLHR5cGU6Im1vZHVsZSIsc2NyaXB0czp7YnVpbGQ6InRzYyIsZGV2OiJ0c2MgLS13YXRjaCJ9LGRlcGVuZGVuY2llczp7IkBwdXNoLnJvY2tzL3NtYXJ0cHJvbWlzZSI6Il40LjIuMyJ9LGRldkRlcGVuZGVuY2llczp7IkB0eXBlcy9ub2RlIjoiXjIyLjAuMCIsdHlwZXNjcmlwdDoiXjUuMC4wIn19LG51bGwsMil9fSwibnBtZXh0cmEuanNvbiI6e2ZpbGU6e2NvbnRlbnRzOkpTT04uc3RyaW5naWZ5KHtkZWVzRWRpdG9yV29ya3NwYWNlOntvbkluaXQ6InBucG0gaW5zdGFsbCJ9fSxudWxsLDIpfX0sInRzY29uZmlnLmpzb24iOntmaWxlOntjb250ZW50czpKU09OLnN0cmluZ2lmeSh7Y29tcGlsZXJPcHRpb25zOnt0YXJnZXQ6IkVTMjAyMiIsbW9kdWxlOiJOb2RlTmV4dCIsbW9kdWxlUmVzb2x1dGlvbjoiTm9kZU5leHQiLHN0cmljdDohMCxvdXREaXI6Ii4vZGlzdCIscm9vdERpcjoiLi9zcmMiLGRlY2xhcmF0aW9uOiEwfSxpbmNsdWRlOlsic3JjLyoqLyoiXX0sbnVsbCwyKX19LHNyYzp7ZGlyZWN0b3J5OnsiaW5kZXgudHMiOntmaWxlOntjb250ZW50czpgLy8gTWFpbiBlbnRyeSBwb2ludAppbXBvcnQgeyBncmVldCwgZm9ybWF0TmFtZSB9IGZyb20gJy4vdXRpbHMuanMnOwoKY29uc3QgbmFtZSA9IGZvcm1hdE5hbWUoJ1dvcmxkJyk7CmNvbnNvbGUubG9nKGdyZWV0KG5hbWUpKTsKCi8vIEV4YW1wbGUgYXN5bmMgZnVuY3Rpb24KYXN5bmMgZnVuY3Rpb24gbWFpbigpIHsKICBjb25zdCByZXN1bHQgPSBhd2FpdCBQcm9taXNlLnJlc29sdmUoJ0hlbGxvIGZyb20gYXN5bmMhJyk7CiAgY29uc29sZS5sb2cocmVzdWx0KTsKfQoKbWFpbigpOwpgfX0sInV0aWxzLnRzIjp7ZmlsZTp7Y29udGVudHM6YC8vIFV0aWxpdHkgZnVuY3Rpb25zCgpleHBvcnQgaW50ZXJmYWNlIElVc2VyIHsKICBmaXJzdE5hbWU6IHN0cmluZzsKICBsYXN0TmFtZTogc3RyaW5nOwp9CgpleHBvcnQgZnVuY3Rpb24gZ3JlZXQobmFtZTogc3RyaW5nKTogc3RyaW5nIHsKICByZXR1cm4gXGBIZWxsbywgXCR7bmFtZX0hXGA7Cn0KCmV4cG9ydCBmdW5jdGlvbiBmb3JtYXROYW1lKG5hbWU6IHN0cmluZyk6IHN0cmluZyB7CiAgcmV0dXJuIG5hbWUudHJpbSgpLnRvVXBwZXJDYXNlKCk7Cn0KCmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVVc2VyKGZpcnN0TmFtZTogc3RyaW5nLCBsYXN0TmFtZTogc3RyaW5nKTogSVVzZXIgewogIHJldHVybiB7IGZpcnN0TmFtZSwgbGFzdE5hbWUgfTsKfQpgfX0sImltcG9ydHRlc3QudHMiOntmaWxlOntjb250ZW50czpgLy8gVGVzdCBucG0gcGFja2FnZSBpbXBvcnRzCmltcG9ydCAqIGFzIHNtYXJ0cHJvbWlzZSBmcm9tICdAcHVzaC5yb2Nrcy9zbWFydHByb21pc2UnOwoKLy8gVGhpcyBzaG91bGQgaGF2ZSBJbnRlbGxpU2Vuc2Ugc2hvd2luZyBkZWZlcigpIG1ldGhvZApjb25zdCBkZWZlcnJlZCA9IHNtYXJ0cHJvbWlzZS5kZWZlcjxzdHJpbmc+KCk7CgovLyBUZXN0IHVzaW5nIHRoZSBkZWZlcnJlZCBwcm9taXNlCmFzeW5jIGZ1bmN0aW9uIHRlc3RTbWFydFByb21pc2UoKSB7CiAgc2V0VGltZW91dCgoKSA9PiB7CiAgICBkZWZlcnJlZC5yZXNvbHZlKCdIZWxsbyBmcm9tIHNtYXJ0cHJvbWlzZSEnKTsKICB9LCAxMDApOwoKICBjb25zdCByZXN1bHQgPSBhd2FpdCBkZWZlcnJlZC5wcm9taXNlOwogIGNvbnNvbGUubG9nKHJlc3VsdCk7Cn0KCnRlc3RTbWFydFByb21pc2UoKTsKYH19fX19O2F3YWl0IHNlLm1vdW50KGt0KX0pKCksRWU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7RWUuc3R5bGUuY3NzVGV4dD0icG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDA7IGhlaWdodDogMTAwJTsgd2lkdGg6IDEwMCU7IG92ZXJmbG93OiBoaWRkZW47IjtsZXQgZ3Q9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGVlcy13b3Jrc3BhY2UiKTtyZXR1cm4gZ3QuZXhlY3V0aW9uRW52aXJvbm1lbnQ9c2UsZ3QuaW5pdGlhbGl6YXRpb25Qcm9taXNlPWRlLEVlLmFwcGVuZENoaWxkKGd0KSxTYAogICAgICA8ZGVlcy1kZW1vd3JhcHBlcj4KICAgICAgICAke0VlfQogICAgICA8L2RlZXMtZGVtb3dyYXBwZXI+CiAgICBgfTtzdGF0aWMgZGVtb0dyb3Vwcz1bIldvcmtzcGFjZSJdOyNlPUZ0KHRoaXMsbixudWxsKTtnZXQgZXhlY3V0aW9uRW52aXJvbm1lbnQoKXtyZXR1cm4gdGhpcy4jZX1zZXQgZXhlY3V0aW9uRW52aXJvbm1lbnQoc2Upe3RoaXMuI2U9c2V9I3Q9KEZ0KHRoaXMscyksRnQodGhpcyxkLG51bGwpKTtnZXQgaW5pdGlhbGl6YXRpb25Qcm9taXNlKCl7cmV0dXJuIHRoaXMuI3R9c2V0IGluaXRpYWxpemF0aW9uUHJvbWlzZShzZSl7dGhpcy4jdD1zZX0jcj0oRnQodGhpcyxmKSxGdCh0aGlzLHAsITApKTtnZXQgc2hvd0ZpbGVUcmVlKCl7cmV0dXJuIHRoaXMuI3J9c2V0IHNob3dGaWxlVHJlZShzZSl7dGhpcy4jcj1zZX0jYT0oRnQodGhpcyxoKSxGdCh0aGlzLHgsITApKTtnZXQgc2hvd1Rlcm1pbmFsKCl7cmV0dXJuIHRoaXMuI2F9c2V0IHNob3dUZXJtaW5hbChzZSl7dGhpcy4jYT1zZX0jaT0oRnQodGhpcyxnKSxGdCh0aGlzLHcsMjUwKSk7Z2V0IGZpbGVUcmVlV2lkdGgoKXtyZXR1cm4gdGhpcy4jaX1zZXQgZmlsZVRyZWVXaWR0aChzZSl7dGhpcy4jaT1zZX0jbz0oRnQodGhpcyxNKSxGdCh0aGlzLEMsMjAwKSk7Z2V0IHRlcm1pbmFsSGVpZ2h0KCl7cmV0dXJuIHRoaXMuI299c2V0IHRlcm1pbmFsSGVpZ2h0KHNlKXt0aGlzLiNvPXNlfSNuPShGdCh0aGlzLGspLEZ0KHRoaXMsJCxbXSkpO2dldCBvcGVuRmlsZXMoKXtyZXR1cm4gdGhpcy4jbn1zZXQgb3BlbkZpbGVzKHNlKXt0aGlzLiNuPXNlfSNzPShGdCh0aGlzLEkpLEZ0KHRoaXMseiwiIikpO2dldCBhY3RpdmVGaWxlUGF0aCgpe3JldHVybiB0aGlzLiNzfXNldCBhY3RpdmVGaWxlUGF0aChzZSl7dGhpcy4jcz1zZX0jbD0oRnQodGhpcyx5KSxGdCh0aGlzLF8sITEpKTtnZXQgaXNUZXJtaW5hbENvbGxhcHNlZCgpe3JldHVybiB0aGlzLiNsfXNldCBpc1Rlcm1pbmFsQ29sbGFwc2VkKHNlKXt0aGlzLiNsPXNlfSNjPShGdCh0aGlzLFApLEZ0KHRoaXMsSCwhMSkpO2dldCBpc0ZpbGVUcmVlQ29sbGFwc2VkKCl7cmV0dXJuIHRoaXMuI2N9c2V0IGlzRmlsZVRyZWVDb2xsYXBzZWQoc2Upe3RoaXMuI2M9c2V9I2Q9KEZ0KHRoaXMsVyksRnQodGhpcyxULCEwKSk7Z2V0IGlzSW5pdGlhbGl6aW5nKCl7cmV0dXJuIHRoaXMuI2R9c2V0IGlzSW5pdGlhbGl6aW5nKHNlKXt0aGlzLiNkPXNlfSN1PShGdCh0aGlzLEopLEZ0KHRoaXMsTCwidGVybWluYWwiKSk7Z2V0IGFjdGl2ZUJvdHRvbVBhbmVsKCl7cmV0dXJuIHRoaXMuI3V9c2V0IGFjdGl2ZUJvdHRvbVBhbmVsKHNlKXt0aGlzLiN1PXNlfSNmPShGdCh0aGlzLFEpLEZ0KHRoaXMsRyxbXSkpO2dldCBkaWFnbm9zdGljTWFya2Vycygpe3JldHVybiB0aGlzLiNmfXNldCBkaWFnbm9zdGljTWFya2VycyhzZSl7dGhpcy4jZj1zZX1lZGl0b3JFbGVtZW50PShGdCh0aGlzLEEpLG51bGwpO2luaXRpYWxpemF0aW9uU3RhcnRlZD0hMTtpbnRlbGxpU2Vuc2VNYW5hZ2VyPW51bGw7aW50ZWxsaVNlbnNlSW5pdGlhbGl6ZWQ9ITE7bm9kZU1vZHVsZXNXYXRjaGVyPW51bGw7bm9kZU1vZHVsZXNEZWJvdW5jZVRpbWVvdXQ9bnVsbDtpbnRlbGxpU2Vuc2VEZWJvdW5jZVRpbWVvdXQ9bnVsbDtvcGVuRmlsZVdhdGNoZXJzPW5ldyBNYXA7ZmlsZUNoYW5nZURlYm91bmNlPW5ldyBNYXA7YWN0aW9uYmFyRWxlbWVudD1udWxsOyNwPUZ0KHRoaXMsUiwhMSk7Z2V0IGF1dG9TYXZlKCl7cmV0dXJuIHRoaXMuI3B9c2V0IGF1dG9TYXZlKHNlKXt0aGlzLiNwPXNlfWF1dG9TYXZlSW50ZXJ2YWw9KEZ0KHRoaXMsTyksbnVsbCk7I2g9RnQodGhpcyx1ZSwiIik7Z2V0IGluaXRDb21tYW5kKCl7cmV0dXJuIHRoaXMuI2h9c2V0IGluaXRDb21tYW5kKHNlKXt0aGlzLiNoPXNlfSNtPShGdCh0aGlzLHllKSxGdCh0aGlzLFUsW10pKTtnZXQgaW5pdE91dHB1dCgpe3JldHVybiB0aGlzLiNtfXNldCBpbml0T3V0cHV0KHNlKXt0aGlzLiNtPXNlfSNnPShGdCh0aGlzLHEpLEZ0KHRoaXMsd2UsMjUwKSk7Z2V0IGN1cnJlbnRGaWxlVHJlZVdpZHRoKCl7cmV0dXJuIHRoaXMuI2d9c2V0IGN1cnJlbnRGaWxlVHJlZVdpZHRoKHNlKXt0aGlzLiNnPXNlfSN4PShGdCh0aGlzLGdlKSxGdCh0aGlzLHhlLDIwMCkpO2dldCBjdXJyZW50VGVybWluYWxIZWlnaHQoKXtyZXR1cm4gdGhpcy4jeH1zZXQgY3VycmVudFRlcm1pbmFsSGVpZ2h0KHNlKXt0aGlzLiN4PXNlfSNiPShGdCh0aGlzLG5lKSxGdCh0aGlzLE9lLCExKSk7Z2V0IGlzRHJhZ2dpbmdGaWxlVHJlZSgpe3JldHVybiB0aGlzLiNifXNldCBpc0RyYWdnaW5nRmlsZVRyZWUoc2Upe3RoaXMuI2I9c2V9I3Y9KEZ0KHRoaXMsSmUpLEZ0KHRoaXMsWiwhMSkpO2dldCBpc0RyYWdnaW5nVGVybWluYWwoKXtyZXR1cm4gdGhpcy4jdn1zZXQgaXNEcmFnZ2luZ1Rlcm1pbmFsKHNlKXt0aGlzLiN2PXNlfSN5PShGdCh0aGlzLGVlKSxGdCh0aGlzLE5lLCExKSk7Z2V0IHNob3dEaWZmVmlldygpe3JldHVybiB0aGlzLiN5fXNldCBzaG93RGlmZlZpZXcoc2Upe3RoaXMuI3k9c2V9I3c9KEZ0KHRoaXMsS2UpLEZ0KHRoaXMsbnQsbnVsbCkpO2dldCBkaWZmVmlld0NvbmZpZygpe3JldHVybiB0aGlzLiN3fXNldCBkaWZmVmlld0NvbmZpZyhzZSl7dGhpcy4jdz1zZX1rZXlkb3duSGFuZGxlcj0oRnQodGhpcyxMdCksc2U9Pnsoc2UubWV0YUtleXx8c2UuY3RybEtleSkmJnNlLmtleT09PSJzIiYmIXNlLnNoaWZ0S2V5JiYoc2UucHJldmVudERlZmF1bHQoKSx0aGlzLnNhdmVBY3RpdmVGaWxlKCkpLChzZS5tZXRhS2V5fHxzZS5jdHJsS2V5KSYmc2Uuc2hpZnRLZXkmJnNlLmtleS50b0xvd2VyQ2FzZSgpPT09InMiJiYoc2UucHJldmVudERlZmF1bHQoKSx0aGlzLnNhdmVBbGxGaWxlcygpKX0pO2hhbmRsZUZpbGVUcmVlTW91c2VEb3duPXNlPT57c2UucHJldmVudERlZmF1bHQoKSx0aGlzLmlzRHJhZ2dpbmdGaWxlVHJlZT0hMCxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUiLHRoaXMuaGFuZGxlRmlsZVRyZWVNb3VzZU1vdmUpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNldXAiLHRoaXMuaGFuZGxlRmlsZVRyZWVNb3VzZVVwKX07aGFuZGxlRmlsZVRyZWVNb3VzZU1vdmU9c2U9PntpZighdGhpcy5pc0RyYWdnaW5nRmlsZVRyZWUpcmV0dXJuO2xldCBkZT10aGlzLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLEVlPXNlLmNsaWVudFgtZGUubGVmdCxndD0xNTAsa3Q9ZGUud2lkdGgqLjUseXI9TWF0aC5tYXgoZ3QsTWF0aC5taW4oa3QsRWUpKTt0aGlzLmN1cnJlbnRGaWxlVHJlZVdpZHRoPXlyfTtoYW5kbGVGaWxlVHJlZU1vdXNlVXA9KCk9Pnt0aGlzLmlzRHJhZ2dpbmdGaWxlVHJlZT0hMSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUiLHRoaXMuaGFuZGxlRmlsZVRyZWVNb3VzZU1vdmUpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNldXAiLHRoaXMuaGFuZGxlRmlsZVRyZWVNb3VzZVVwKSx3aW5kb3cuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoInJlc2l6ZSIpKX07aGFuZGxlVGVybWluYWxNb3VzZURvd249c2U9PntzZS5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuaXNEcmFnZ2luZ1Rlcm1pbmFsPSEwLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsdGhpcy5oYW5kbGVUZXJtaW5hbE1vdXNlTW92ZSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2V1cCIsdGhpcy5oYW5kbGVUZXJtaW5hbE1vdXNlVXApfTtoYW5kbGVUZXJtaW5hbE1vdXNlTW92ZT1zZT0+e2lmKCF0aGlzLmlzRHJhZ2dpbmdUZXJtaW5hbClyZXR1cm47bGV0IGRlPXRoaXMuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksRWU9c2UuY2xpZW50WS1kZS50b3AsZ3Q9ZGUuaGVpZ2h0LUVlLGt0PTEwMCx5cj1kZS5oZWlnaHQqLjcsbGk9TWF0aC5tYXgoa3QsTWF0aC5taW4oeXIsZ3QpKTt0aGlzLmN1cnJlbnRUZXJtaW5hbEhlaWdodD1saX07aGFuZGxlVGVybWluYWxNb3VzZVVwPSgpPT57dGhpcy5pc0RyYWdnaW5nVGVybWluYWw9ITEsZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2Vtb3ZlIix0aGlzLmhhbmRsZVRlcm1pbmFsTW91c2VNb3ZlKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZXVwIix0aGlzLmhhbmRsZVRlcm1pbmFsTW91c2VVcCksd2luZG93LmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCJyZXNpemUiKSl9O3N0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgOmhvc3QgewogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICB0b3A6IDA7CiAgICAgICAgbGVmdDogMDsKICAgICAgICByaWdodDogMDsKICAgICAgICBib3R0b206IDA7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDk2JSkiLCJoc2woMCAwJSA3JSkiKX07CiAgICAgICAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgJ1NlZ29lIFVJJywgUm9ib3RvLCBzYW5zLXNlcmlmOwogICAgICB9CgogICAgICAud29ya3NwYWNlLW91dGVyIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICB9CgogICAgICAud29ya3NwYWNlLWNvbnRhaW5lciB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93OwogICAgICAgIGZsZXg6IDE7CiAgICAgICAgbWluLWhlaWdodDogMDsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgfQoKICAgICAgLmVkaXRvci1hcmVhIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgZmxleDogMTsKICAgICAgICBtaW4td2lkdGg6IDA7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgfQoKICAgICAgLmZpbGV0cmVlLXBhbmVsIHsKICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICBmbGV4LXNocmluazogMDsKICAgICAgfQoKICAgICAgLmZpbGV0cmVlLXBhbmVsLmNvbGxhcHNlZCB7CiAgICAgICAgd2lkdGg6IDAgIWltcG9ydGFudDsKICAgICAgfQoKICAgICAgLmVkaXRvci1wYW5lbCB7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAxMDAlKSIsImhzbCgwIDAlIDklKSIpfTsKICAgICAgICBmbGV4OiAxOwogICAgICAgIG1pbi13aWR0aDogMjAwcHg7CiAgICAgIH0KCiAgICAgIC50ZXJtaW5hbC1wYW5lbCB7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODUlKSIsImhzbCgwIDAlIDE1JSkiKX07CiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsKICAgICAgICBmbGV4LXNocmluazogMDsKICAgICAgfQoKICAgICAgLnRlcm1pbmFsLXBhbmVsLmNvbGxhcHNlZCB7CiAgICAgICAgaGVpZ2h0OiAzMnB4ICFpbXBvcnRhbnQ7CiAgICAgIH0KCiAgICAgIC5wYW5lbC1oZWFkZXIgewogICAgICAgIGhlaWdodDogMzJweDsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOwogICAgICAgIHBhZGRpbmc6IDAgOHB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5NSUpIiwiaHNsKDAgMCUgOCUpIil9OwogICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODUlKSIsImhzbCgwIDAlIDE1JSkiKX07CiAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA0MCUpIiwiaHNsKDAgMCUgNjAlKSIpfTsKICAgICAgfQoKICAgICAgLnBhbmVsLWhlYWRlci10aXRsZSB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogNnB4OwogICAgICB9CgogICAgICAucGFuZWwtaGVhZGVyLWFjdGlvbnMgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDRweDsKICAgICAgfQoKICAgICAgLnBhbmVsLWFjdGlvbiB7CiAgICAgICAgd2lkdGg6IDI0cHg7CiAgICAgICAgaGVpZ2h0OiAyNHB4OwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgNTAlKSIsImhzbCgwIDAlIDYwJSkiKX07CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgIH0KCiAgICAgIC5wYW5lbC1hY3Rpb246aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA4OCUpIiwiaHNsKDAgMCUgMTglKSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDMwJSkiLCJoc2woMCAwJSA4MCUpIil9OwogICAgICB9CgogICAgICAudGFicy1iYXIgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7CiAgICAgICAgaGVpZ2h0OiAzNnB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5NiUpIiwiaHNsKDAgMCUgOCUpIil9OwogICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDAgMCUgODUlKSIsImhzbCgwIDAlIDE1JSkiKX07CiAgICAgICAgb3ZlcmZsb3cteDogYXV0bzsKICAgICAgfQoKICAgICAgLnRhYiB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGdhcDogNnB4OwogICAgICAgIHBhZGRpbmc6IDAgMTJweDsKICAgICAgICBtaW4td2lkdGg6IDEyMHB4OwogICAgICAgIG1heC13aWR0aDogMjAwcHg7CiAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJHttLmJkVGhlbWUoImhzbCgwIDAlIDg4JSkiLCJoc2woMCAwJSAxMiUpIil9OwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA1MCUpIiwiaHNsKDAgMCUgNjAlKSIpfTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgOTQlKSIsImhzbCgwIDAlIDEwJSkiKX07CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgIH0KCiAgICAgIC50YWI6aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5MiUpIiwiaHNsKDAgMCUgMTIlKSIpfTsKICAgICAgfQoKICAgICAgLnRhYi5hY3RpdmUgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAxMDAlKSIsImhzbCgwIDAlIDklKSIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDIwJSkiLCJoc2woMCAwJSA5MCUpIil9OwogICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAke20uYmRUaGVtZSgiaHNsKDIxMCAxMDAlIDUwJSkiLCJoc2woMjEwIDEwMCUgNjAlKSIpfTsKICAgICAgfQoKICAgICAgLnRhYi1uYW1lIHsKICAgICAgICBmbGV4OiAxOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7CiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKICAgICAgfQoKICAgICAgLnRhYi1jbG9zZSB7CiAgICAgICAgd2lkdGg6IDE2cHg7CiAgICAgICAgaGVpZ2h0OiAxNnB4OwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTsKICAgICAgfQoKICAgICAgLnRhYjpob3ZlciAudGFiLWNsb3NlIHsKICAgICAgICBvcGFjaXR5OiAxOwogICAgICB9CgogICAgICAudGFiLWNsb3NlOmhvdmVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgODUlKSIsImhzbCgwIDAlIDI1JSkiKX07CiAgICAgIH0KCiAgICAgIC50YWItbW9kaWZpZWQgewogICAgICAgIHdpZHRoOiA4cHg7CiAgICAgICAgaGVpZ2h0OiA4cHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA1MCUpIiwiaHNsKDAgMCUgNjAlKSIpfTsKICAgICAgfQoKICAgICAgLnRhYnMtY29udGFpbmVyIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXg6IDE7CiAgICAgICAgb3ZlcmZsb3cteDogYXV0bzsKICAgICAgfQoKICAgICAgLmVkaXRvci1tZW51LWJ1dHRvbiB7CiAgICAgICAgcGFkZGluZzogNnB4IDhweDsKICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDsKICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIG9wYWNpdHk6IDAuNjsKICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzLCBiYWNrZ3JvdW5kIDAuMTVzOwogICAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgfQoKICAgICAgLmVkaXRvci1tZW51LWJ1dHRvbjpob3ZlciB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMCUgLyAwLjA4KSIsImhzbCgwIDAlIDEwMCUgLyAwLjEpIil9OwogICAgICB9CgogICAgICAuZWRpdG9yLWNvbnRlbnQgewogICAgICAgIGZsZXg6IDE7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICB9CgogICAgICAudGVybWluYWwtY29udGVudCB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHRvcDogMzJweDsKICAgICAgICBsZWZ0OiAwOwogICAgICAgIHJpZ2h0OiAwOwogICAgICAgIGJvdHRvbTogMDsKICAgICAgfQoKICAgICAgLnByb2JsZW1zLWNvbnRlbnQgewogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICB0b3A6IDMycHg7CiAgICAgICAgbGVmdDogMDsKICAgICAgICByaWdodDogMDsKICAgICAgICBib3R0b206IDA7CiAgICAgICAgb3ZlcmZsb3cteTogYXV0bzsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMTAwJSkiLCJoc2woMCAwJSA5JSkiKX07CiAgICAgIH0KCiAgICAgIC5wYW5lbC10YWJzIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgZ2FwOiAwOwogICAgICB9CgogICAgICAucGFuZWwtdGFiIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgZ2FwOiA2cHg7CiAgICAgICAgcGFkZGluZzogMCAxMnB4OwogICAgICAgIGhlaWdodDogMzJweDsKICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA1MCUpIiwiaHNsKDAgMCUgNTUlKSIpfTsKICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgdHJhbnNwYXJlbnQ7CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgIH0KCiAgICAgIC5wYW5lbC10YWI6aG92ZXIgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMzAlKSIsImhzbCgwIDAlIDc1JSkiKX07CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCgwIDAlIDkwJSkiLCJoc2woMCAwJSAxMiUpIil9OwogICAgICB9CgogICAgICAucGFuZWwtdGFiLmFjdGl2ZSB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSAyMCUpIiwiaHNsKDAgMCUgOTAlKSIpfTsKICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDIxMCAxMDAlIDUwJSkiLCJoc2woMjEwIDEwMCUgNjAlKSIpfTsKICAgICAgfQoKICAgICAgLnBhbmVsLXRhYi1iYWRnZSB7CiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICBtaW4td2lkdGg6IDE4cHg7CiAgICAgICAgaGVpZ2h0OiAxOHB4OwogICAgICAgIHBhZGRpbmc6IDAgNXB4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDlweDsKICAgICAgICBmb250LXNpemU6IDExcHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiaHNsKDAgNzAlIDUwJSkiLCJoc2woMCA3MCUgNDUlKSIpfTsKICAgICAgICBjb2xvcjogd2hpdGU7CiAgICAgIH0KCiAgICAgIC5wYW5lbC10YWItYmFkZ2Uud2FybmluZyB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoImhzbCg0MCA3MCUgNTAlKSIsImhzbCg0MCA3MCUgNDUlKSIpfTsKICAgICAgfQoKICAgICAgLnBhbmVsLXRhYi1iYWRnZS5ub25lIHsKICAgICAgICBkaXNwbGF5OiBub25lOwogICAgICB9CgogICAgICAucHJvYmxlbXMtbGlzdCB7CiAgICAgICAgcGFkZGluZzogNHB4IDA7CiAgICAgIH0KCiAgICAgIC5wcm9ibGVtLWl0ZW0gewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7CiAgICAgICAgZ2FwOiA4cHg7CiAgICAgICAgcGFkZGluZzogNnB4IDEycHg7CiAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICBsaW5lLWhlaWdodDogMS40OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiaHNsKDAgMCUgMzAlKSIsImhzbCgwIDAlIDgwJSkiKX07CiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjFzIGVhc2U7CiAgICAgIH0KCiAgICAgIC5wcm9ibGVtLWl0ZW06aG92ZXIgewogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA5NSUpIiwiaHNsKDAgMCUgMTUlKSIpfTsKICAgICAgfQoKICAgICAgLnByb2JsZW0taWNvbiB7CiAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgICAgbWFyZ2luLXRvcDogMnB4OwogICAgICB9CgogICAgICAucHJvYmxlbS1pY29uLmVycm9yIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDcwJSA1MCUpIiwiaHNsKDAgNzAlIDYwJSkiKX07CiAgICAgIH0KCiAgICAgIC5wcm9ibGVtLWljb24ud2FybmluZyB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woNDAgNzAlIDUwJSkiLCJoc2woNDAgNzAlIDYwJSkiKX07CiAgICAgIH0KCiAgICAgIC5wcm9ibGVtLWRldGFpbHMgewogICAgICAgIGZsZXg6IDE7CiAgICAgICAgbWluLXdpZHRoOiAwOwogICAgICB9CgogICAgICAucHJvYmxlbS1tZXNzYWdlIHsKICAgICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkOwogICAgICB9CgogICAgICAucHJvYmxlbS1sb2NhdGlvbiB7CiAgICAgICAgbWFyZ2luLXRvcDogMnB4OwogICAgICAgIGZvbnQtc2l6ZTogMTFweDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDUwJSkiLCJoc2woMCAwJSA1NSUpIil9OwogICAgICB9CgogICAgICAucHJvYmxlbXMtZW1wdHkgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDU1JSkiLCJoc2woMCAwJSA1MCUpIil9OwogICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICBnYXA6IDhweDsKICAgICAgfQoKICAgICAgLmVtcHR5LXN0YXRlIHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICBoZWlnaHQ6IDEwMCU7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCJoc2woMCAwJSA1MCUpIiwiaHNsKDAgMCUgNTAlKSIpfTsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgZ2FwOiA4cHg7CiAgICAgIH0KCiAgICAgIC5lbXB0eS1zdGF0ZSBkZWVzLWljb24gewogICAgICAgIHdpZHRoOiA0OHB4OwogICAgICAgIGhlaWdodDogNDhweDsKICAgICAgICBvcGFjaXR5OiAwLjU7CiAgICAgIH0KCiAgICAgIEBrZXlmcmFtZXMgc3BpbiB7CiAgICAgICAgZnJvbSB7IHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9CiAgICAgICAgdG8geyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9CiAgICAgIH0KCiAgICAgIC5pbml0aWFsaXppbmcgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoImhzbCgwIDAlIDUwJSkiLCJoc2woMCAwJSA2MCUpIil9OwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBnYXA6IDEycHg7CiAgICAgIH0KCiAgICAgIC5pbml0aWFsaXppbmcgZGVlcy1pY29uIHsKICAgICAgICBhbmltYXRpb246IHNwaW4gMXMgbGluZWFyIGluZmluaXRlOwogICAgICB9CgogICAgICAuaW5pdGlhbGl6aW5nIGRlZXMtd29ya3NwYWNlLXRlcm1pbmFsLXByZXZpZXcgewogICAgICAgIG1hcmdpbi10b3A6IDI0cHg7CiAgICAgICAgd2lkdGg6IDgwJTsKICAgICAgICBtYXgtd2lkdGg6IDYwMHB4OwogICAgICAgIGhlaWdodDogMjAwcHg7CiAgICAgIH0KCiAgICAgIGRlZXMtd29ya3NwYWNlLWZpbGV0cmVlIHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgdG9wOiAwOwogICAgICAgIGxlZnQ6IDA7CiAgICAgICAgcmlnaHQ6IDA7CiAgICAgICAgYm90dG9tOiAwOwogICAgICB9CgogICAgICBkZWVzLXdvcmtzcGFjZS1tb25hY28gewogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICB0b3A6IDA7CiAgICAgICAgbGVmdDogMDsKICAgICAgICByaWdodDogMDsKICAgICAgICBib3R0b206IDA7CiAgICAgIH0KCiAgICAgIGRlZXMtd29ya3NwYWNlLXRlcm1pbmFsIHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgdG9wOiAwOwogICAgICAgIGxlZnQ6IDA7CiAgICAgICAgcmlnaHQ6IDA7CiAgICAgICAgYm90dG9tOiAwOwogICAgICB9CgogICAgICAvKiBSZXNpemUgaGFuZGxlcyAqLwogICAgICAucmVzaXplLWhhbmRsZS12ZXJ0aWNhbCB7CiAgICAgICAgd2lkdGg6IDZweDsKICAgICAgICBjdXJzb3I6IGNvbC1yZXNpemU7CiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7CiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1cyBlYXNlOwogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICBmbGV4LXNocmluazogMDsKICAgICAgICB6LWluZGV4OiAxMDsKICAgICAgfQoKICAgICAgLnJlc2l6ZS1oYW5kbGUtdmVydGljYWw6aG92ZXIsCiAgICAgIC5yZXNpemUtaGFuZGxlLXZlcnRpY2FsLmRyYWdnaW5nIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiIzNiODJmNiIsIiM1OGE2ZmYiKX07CiAgICAgIH0KCiAgICAgIC5yZXNpemUtaGFuZGxlLXZlcnRpY2FsOjphZnRlciB7CiAgICAgICAgY29udGVudDogJyc7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHRvcDogNTAlOwogICAgICAgIGxlZnQ6IDUwJTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsKICAgICAgICB3aWR0aDogMnB4OwogICAgICAgIGhlaWdodDogMzJweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiIzljYTNhZiIsIiM2ZTc2ODEiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogMXB4OwogICAgICAgIG9wYWNpdHk6IDA7CiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlOwogICAgICB9CgogICAgICAucmVzaXplLWhhbmRsZS12ZXJ0aWNhbDpob3Zlcjo6YWZ0ZXIsCiAgICAgIC5yZXNpemUtaGFuZGxlLXZlcnRpY2FsLmRyYWdnaW5nOjphZnRlciB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2ZmZmZmZiIsIiNmZmZmZmYiKX07CiAgICAgIH0KCiAgICAgIC5yZXNpemUtaGFuZGxlLWhvcml6b250YWwgewogICAgICAgIGhlaWdodDogNnB4OwogICAgICAgIGN1cnNvcjogcm93LXJlc2l6ZTsKICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMTVzIGVhc2U7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIGZsZXgtc2hyaW5rOiAwOwogICAgICAgIHotaW5kZXg6IDEwOwogICAgICB9CgogICAgICAucmVzaXplLWhhbmRsZS1ob3Jpem9udGFsOmhvdmVyLAogICAgICAucmVzaXplLWhhbmRsZS1ob3Jpem9udGFsLmRyYWdnaW5nIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiIzNiODJmNiIsIiM1OGE2ZmYiKX07CiAgICAgIH0KCiAgICAgIC5yZXNpemUtaGFuZGxlLWhvcml6b250YWw6OmFmdGVyIHsKICAgICAgICBjb250ZW50OiAnJzsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgdG9wOiA1MCU7CiAgICAgICAgbGVmdDogNTAlOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOwogICAgICAgIHdpZHRoOiAzMnB4OwogICAgICAgIGhlaWdodDogMnB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjOWNhM2FmIiwiIzZlNzY4MSIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiAxcHg7CiAgICAgICAgb3BhY2l0eTogMDsKICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2U7CiAgICAgIH0KCiAgICAgIC5yZXNpemUtaGFuZGxlLWhvcml6b250YWw6aG92ZXI6OmFmdGVyLAogICAgICAucmVzaXplLWhhbmRsZS1ob3Jpem9udGFsLmRyYWdnaW5nOjphZnRlciB7CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2ZmZmZmZiIsIiNmZmZmZmYiKX07CiAgICAgIH0KCiAgICAgIC8qIFByZXZlbnQgdGV4dCBzZWxlY3Rpb24gd2hpbGUgZHJhZ2dpbmcgKi8KICAgICAgLndvcmtzcGFjZS1jb250YWluZXIuZHJhZ2dpbmcgewogICAgICAgIHVzZXItc2VsZWN0OiBub25lOwogICAgICB9CgogICAgICAud29ya3NwYWNlLWNvbnRhaW5lci5kcmFnZ2luZyAuZmlsZXRyZWUtcGFuZWwsCiAgICAgIC53b3Jrc3BhY2UtY29udGFpbmVyLmRyYWdnaW5nIC5lZGl0b3ItcGFuZWwsCiAgICAgIC53b3Jrc3BhY2UtY29udGFpbmVyLmRyYWdnaW5nIC50ZXJtaW5hbC1wYW5lbCB7CiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgICAgIH0KCiAgICBgXTtyZW5kZXIoKXtsZXQgc2U9WyJ3b3Jrc3BhY2UtY29udGFpbmVyIix0aGlzLmlzRHJhZ2dpbmdGaWxlVHJlZXx8dGhpcy5pc0RyYWdnaW5nVGVybWluYWw/ImRyYWdnaW5nIjoiIl0uZmlsdGVyKEJvb2xlYW4pLmpvaW4oIiAiKTtyZXR1cm4gdGhpcy5pc0luaXRpYWxpemluZz9TYAogICAgICAgIDxkaXYgY2xhc3M9ImluaXRpYWxpemluZyI+CiAgICAgICAgICA8ZGVlcy1pY29uIC5pY29uPSR7Imx1Y2lkZTpsb2FkZXIyIn0gaWNvblNpemU9IjMyIj48L2RlZXMtaWNvbj4KICAgICAgICAgIDxzcGFuPkluaXRpYWxpemluZyB3b3Jrc3BhY2UuLi48L3NwYW4+CiAgICAgICAgICA8ZGVlcy13b3Jrc3BhY2UtdGVybWluYWwtcHJldmlldwogICAgICAgICAgICAuY29tbWFuZD0ke3RoaXMuaW5pdENvbW1hbmR8fCIifQogICAgICAgICAgICAubGluZXM9JHt0aGlzLmluaXRPdXRwdXR9CiAgICAgICAgICA+PC9kZWVzLXdvcmtzcGFjZS10ZXJtaW5hbC1wcmV2aWV3PgogICAgICAgIDwvZGl2PgogICAgICBgOlNgCiAgICAgIDxkaXYgY2xhc3M9IndvcmtzcGFjZS1vdXRlciI+CiAgICAgICAgPGRpdiBjbGFzcz0iJHtzZX0iPgogICAgICAgICAgPCEtLSBGaWxldHJlZSBwYW5lbCAoZnVsbCBoZWlnaHQpIC0tPgogICAgICAgICAgJHt0aGlzLnNob3dGaWxlVHJlZT9TYAogICAgICAgICAgICA8ZGl2CiAgICAgICAgICAgICAgY2xhc3M9ImZpbGV0cmVlLXBhbmVsICR7dGhpcy5pc0ZpbGVUcmVlQ29sbGFwc2VkPyJjb2xsYXBzZWQiOiIifSIKICAgICAgICAgICAgICBzdHlsZT0id2lkdGg6ICR7dGhpcy5pc0ZpbGVUcmVlQ29sbGFwc2VkPzA6dGhpcy5jdXJyZW50RmlsZVRyZWVXaWR0aH1weCIKICAgICAgICAgICAgPgogICAgICAgICAgICAgIDxkZWVzLXdvcmtzcGFjZS1maWxldHJlZQogICAgICAgICAgICAgICAgLmV4ZWN1dGlvbkVudmlyb25tZW50PSR7dGhpcy5leGVjdXRpb25FbnZpcm9ubWVudH0KICAgICAgICAgICAgICAgIC5zZWxlY3RlZFBhdGg9JHt0aGlzLmFjdGl2ZUZpbGVQYXRofQogICAgICAgICAgICAgICAgQGZpbGUtc2VsZWN0PSR7dGhpcy5oYW5kbGVGaWxlU2VsZWN0fQogICAgICAgICAgICAgID48L2RlZXMtd29ya3NwYWNlLWZpbGV0cmVlPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgJHt0aGlzLmlzRmlsZVRyZWVDb2xsYXBzZWQ/IiI6U2AKICAgICAgICAgICAgICA8ZGl2CiAgICAgICAgICAgICAgICBjbGFzcz0icmVzaXplLWhhbmRsZS12ZXJ0aWNhbCAke3RoaXMuaXNEcmFnZ2luZ0ZpbGVUcmVlPyJkcmFnZ2luZyI6IiJ9IgogICAgICAgICAgICAgICAgQG1vdXNlZG93bj0ke3RoaXMuaGFuZGxlRmlsZVRyZWVNb3VzZURvd259CiAgICAgICAgICAgICAgPjwvZGl2PgogICAgICAgICAgICBgfQogICAgICAgICAgYDoiIn0KCiAgICAgICAgICA8IS0tIEVkaXRvciArIFRlcm1pbmFsIGFyZWEgLS0+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJlZGl0b3ItYXJlYSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImVkaXRvci1wYW5lbCI+CiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGFicy1iYXIiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGFicy1jb250YWluZXIiPgogICAgICAgICAgICAgICAgICAke3RoaXMub3BlbkZpbGVzLm1hcChkZT0+U2AKICAgICAgICAgICAgICAgICAgICA8ZGl2CiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0idGFiICR7ZGUucGF0aD09PXRoaXMuYWN0aXZlRmlsZVBhdGg/ImFjdGl2ZSI6IiJ9IgogICAgICAgICAgICAgICAgICAgICAgQGNsaWNrPSR7KCk9PnRoaXMuYWN0aXZhdGVGaWxlKGRlLnBhdGgpfQogICAgICAgICAgICAgICAgICAgID4KICAgICAgICAgICAgICAgICAgICAgICR7ZGUubW9kaWZpZWQ/U2A8c3BhbiBjbGFzcz0idGFiLW1vZGlmaWVkIj48L3NwYW4+YDoiIn0KICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWItbmFtZSI+JHtkZS5uYW1lfTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0YWItY2xvc2UiIEBjbGljaz0ke0VlPT50aGlzLmNsb3NlRmlsZShFZSxkZS5wYXRoKX0+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkZWVzLWljb24gLmljb249JHsibHVjaWRlOngifSBpY29uU2l6ZT0iMTIiPjwvZGVlcy1pY29uPgogICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICBgKX0KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZWRpdG9yLW1lbnUtYnV0dG9uIiBAY2xpY2s9JHt0aGlzLnNob3dFZGl0b3JNZW51fSB0aXRsZT0iRWRpdG9yIG9wdGlvbnMiPgogICAgICAgICAgICAgICAgICA8ZGVlcy1pY29uIC5pY29uPSR7Imx1Y2lkZTptb3JlVmVydGljYWwifSBpY29uU2l6ZT0iMTYiPjwvZGVlcy1pY29uPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZWRpdG9yLWNvbnRlbnQiPgogICAgICAgICAgICAgICAgJHt0aGlzLnNob3dEaWZmVmlldyYmdGhpcy5kaWZmVmlld0NvbmZpZz9TYAogICAgICAgICAgICAgICAgICA8ZGVlcy13b3Jrc3BhY2UtZGlmZi1lZGl0b3IKICAgICAgICAgICAgICAgICAgICAuZmlsZVBhdGg9JHt0aGlzLmRpZmZWaWV3Q29uZmlnLmZpbGVQYXRofQogICAgICAgICAgICAgICAgICAgIC5vcmlnaW5hbENvbnRlbnQ9JHt0aGlzLmRpZmZWaWV3Q29uZmlnLm9yaWdpbmFsQ29udGVudH0KICAgICAgICAgICAgICAgICAgICAubW9kaWZpZWRDb250ZW50PSR7dGhpcy5kaWZmVmlld0NvbmZpZy5tb2RpZmllZENvbnRlbnR9CiAgICAgICAgICAgICAgICAgICAgLmxhbmd1YWdlPSR7dGhpcy5kaWZmVmlld0NvbmZpZy5sYW5ndWFnZX0KICAgICAgICAgICAgICAgICAgICBAZGlmZi1yZXNvbHZlZD0ke3RoaXMuaGFuZGxlRGlmZlJlc29sdmVkfQogICAgICAgICAgICAgICAgICAgIEBkaWZmLWNsb3NlZD0keygpPT57dGhpcy5zaG93RGlmZlZpZXc9ITEsdGhpcy5kaWZmVmlld0NvbmZpZz1udWxsfX0KICAgICAgICAgICAgICAgICAgPjwvZGVlcy13b3Jrc3BhY2UtZGlmZi1lZGl0b3I+CiAgICAgICAgICAgICAgICBgOnRoaXMub3BlbkZpbGVzLmxlbmd0aD09PTA/U2AKICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZW1wdHktc3RhdGUiPgogICAgICAgICAgICAgICAgICAgIDxkZWVzLWljb24gLmljb249JHsibHVjaWRlOmZpbGVDb2RlIn0gaWNvblNpemU9IjQ4Ij48L2RlZXMtaWNvbj4KICAgICAgICAgICAgICAgICAgICA8c3Bhbj5TZWxlY3QgYSBmaWxlIHRvIGVkaXQ8L3NwYW4+CiAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgYDpTYAogICAgICAgICAgICAgICAgICA8ZGVlcy13b3Jrc3BhY2UtbW9uYWNvCiAgICAgICAgICAgICAgICAgICAgLmZpbGVQYXRoPSR7dGhpcy5hY3RpdmVGaWxlUGF0aH0KICAgICAgICAgICAgICAgICAgICAuY29udGVudD0ke3RoaXMuZ2V0QWN0aXZlRmlsZUNvbnRlbnQoKX0KICAgICAgICAgICAgICAgICAgICAubGFuZ3VhZ2U9JHt0aGlzLmdldExhbmd1YWdlRnJvbVBhdGgodGhpcy5hY3RpdmVGaWxlUGF0aCl9CiAgICAgICAgICAgICAgICAgICAgQGNvbnRlbnQtY2hhbmdlPSR7dGhpcy5oYW5kbGVDb250ZW50Q2hhbmdlfQogICAgICAgICAgICAgICAgICA+PC9kZWVzLXdvcmtzcGFjZS1tb25hY28+CiAgICAgICAgICAgICAgICBgfQogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgIDxkZWVzLWFjdGlvbmJhcj48L2RlZXMtYWN0aW9uYmFyPgogICAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAgIDwhLS0gSG9yaXpvbnRhbCByZXNpemUgaGFuZGxlIGZvciB0ZXJtaW5hbCAtLT4KICAgICAgICAgICAgJHt0aGlzLnNob3dUZXJtaW5hbCYmIXRoaXMuaXNUZXJtaW5hbENvbGxhcHNlZD9TYAogICAgICAgICAgICAgIDxkaXYKICAgICAgICAgICAgICAgIGNsYXNzPSJyZXNpemUtaGFuZGxlLWhvcml6b250YWwgJHt0aGlzLmlzRHJhZ2dpbmdUZXJtaW5hbD8iZHJhZ2dpbmciOiIifSIKICAgICAgICAgICAgICAgIEBtb3VzZWRvd249JHt0aGlzLmhhbmRsZVRlcm1pbmFsTW91c2VEb3dufQogICAgICAgICAgICAgID48L2Rpdj4KICAgICAgICAgICAgYDoiIn0KCiAgICAgICAgICAgIDwhLS0gVGVybWluYWwgcGFuZWwgLS0+CiAgICAgICAgICAgICR7dGhpcy5zaG93VGVybWluYWw/U2AKICAgICAgICAgICAgICA8ZGl2CiAgICAgICAgICAgICAgICBjbGFzcz0idGVybWluYWwtcGFuZWwgJHt0aGlzLmlzVGVybWluYWxDb2xsYXBzZWQ/ImNvbGxhcHNlZCI6IiJ9IgogICAgICAgICAgICAgICAgc3R5bGU9ImhlaWdodDogJHt0aGlzLmlzVGVybWluYWxDb2xsYXBzZWQ/MzI6dGhpcy5jdXJyZW50VGVybWluYWxIZWlnaHR9cHgiCiAgICAgICAgICAgICAgPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFuZWwtaGVhZGVyIj4KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFuZWwtdGFicyI+CiAgICAgICAgICAgICAgICAgICAgPGRpdgogICAgICAgICAgICAgICAgICAgICAgY2xhc3M9InBhbmVsLXRhYiAke3RoaXMuYWN0aXZlQm90dG9tUGFuZWw9PT0idGVybWluYWwiPyJhY3RpdmUiOiIifSIKICAgICAgICAgICAgICAgICAgICAgIEBjbGljaz0keygpPT50aGlzLmFjdGl2ZUJvdHRvbVBhbmVsPSJ0ZXJtaW5hbCJ9CiAgICAgICAgICAgICAgICAgICAgPgogICAgICAgICAgICAgICAgICAgICAgPGRlZXMtaWNvbiAuaWNvbj0keyJsdWNpZGU6dGVybWluYWwifSBpY29uU2l6ZT0iMTQiPjwvZGVlcy1pY29uPgogICAgICAgICAgICAgICAgICAgICAgVGVybWluYWwKICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2CiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz0icGFuZWwtdGFiICR7dGhpcy5hY3RpdmVCb3R0b21QYW5lbD09PSJwcm9ibGVtcyI/ImFjdGl2ZSI6IiJ9IgogICAgICAgICAgICAgICAgICAgICAgQGNsaWNrPSR7KCk9PnRoaXMuYWN0aXZlQm90dG9tUGFuZWw9InByb2JsZW1zIn0KICAgICAgICAgICAgICAgICAgICA+CiAgICAgICAgICAgICAgICAgICAgICA8ZGVlcy1pY29uIC5pY29uPSR7Imx1Y2lkZTpjaXJjbGVBbGVydCJ9IGljb25TaXplPSIxNCI+PC9kZWVzLWljb24+CiAgICAgICAgICAgICAgICAgICAgICBQcm9ibGVtcwogICAgICAgICAgICAgICAgICAgICAgJHt0aGlzLmRpYWdub3N0aWNNYXJrZXJzLmxlbmd0aD4wP1NgCiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJwYW5lbC10YWItYmFkZ2UgJHt0aGlzLmdldEVycm9yQ291bnQoKT09PTA/Indhcm5pbmciOiIifSI+JHt0aGlzLmRpYWdub3N0aWNNYXJrZXJzLmxlbmd0aH08L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICBgOiIifQogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFuZWwtaGVhZGVyLWFjdGlvbnMiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBhbmVsLWFjdGlvbiIgQGNsaWNrPSR7dGhpcy50b2dnbGVUZXJtaW5hbH0+CiAgICAgICAgICAgICAgICAgICAgICA8ZGVlcy1pY29uCiAgICAgICAgICAgICAgICAgICAgICAgIC5pY29uPSR7dGhpcy5pc1Rlcm1pbmFsQ29sbGFwc2VkPyJsdWNpZGU6Y2hldnJvblVwIjoibHVjaWRlOmNoZXZyb25Eb3duIn0KICAgICAgICAgICAgICAgICAgICAgICAgaWNvblNpemU9IjE0IgogICAgICAgICAgICAgICAgICAgICAgPjwvZGVlcy1pY29uPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGVybWluYWwtY29udGVudCIgc3R5bGU9ImRpc3BsYXk6ICR7dGhpcy5hY3RpdmVCb3R0b21QYW5lbD09PSJ0ZXJtaW5hbCI/ImJsb2NrIjoibm9uZSJ9Ij4KICAgICAgICAgICAgICAgICAgPGRlZXMtd29ya3NwYWNlLXRlcm1pbmFsCiAgICAgICAgICAgICAgICAgICAgLmV4ZWN1dGlvbkVudmlyb25tZW50PSR7dGhpcy5leGVjdXRpb25FbnZpcm9ubWVudH0KICAgICAgICAgICAgICAgICAgICAuc2V0dXBDb21tYW5kPSR7IiJ9CiAgICAgICAgICAgICAgICAgID48L2RlZXMtd29ya3NwYWNlLXRlcm1pbmFsPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwcm9ibGVtcy1jb250ZW50IiBzdHlsZT0iZGlzcGxheTogJHt0aGlzLmFjdGl2ZUJvdHRvbVBhbmVsPT09InByb2JsZW1zIj8iYmxvY2siOiJub25lIn0iPgogICAgICAgICAgICAgICAgICAke3RoaXMucmVuZGVyUHJvYmxlbXNQYW5lbCgpfQogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIGA6IiJ9CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KCiAgICAgICAgPCEtLSBCb3R0b20gQmFyIChmdWxsIHdpZHRoKSAtLT4KICAgICAgICA8ZGVlcy13b3Jrc3BhY2UtYm90dG9tYmFyCiAgICAgICAgICAuZXhlY3V0aW9uRW52aXJvbm1lbnQ9JHt0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50fQogICAgICAgICAgQHJ1bi1wcm9jZXNzPSR7dGhpcy5oYW5kbGVSdW5Qcm9jZXNzfQogICAgICAgID48L2RlZXMtd29ya3NwYWNlLWJvdHRvbWJhcj4KICAgICAgPC9kaXY+CiAgICBgfWFzeW5jIGNvbm5lY3RlZENhbGxiYWNrKCl7YXdhaXQgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIix0aGlzLmtleWRvd25IYW5kbGVyKX1hc3luYyBkaXNjb25uZWN0ZWRDYWxsYmFjaygpe2F3YWl0IHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsdGhpcy5rZXlkb3duSGFuZGxlciksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2Vtb3ZlIix0aGlzLmhhbmRsZUZpbGVUcmVlTW91c2VNb3ZlKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZXVwIix0aGlzLmhhbmRsZUZpbGVUcmVlTW91c2VVcCksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2Vtb3ZlIix0aGlzLmhhbmRsZVRlcm1pbmFsTW91c2VNb3ZlKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZXVwIix0aGlzLmhhbmRsZVRlcm1pbmFsTW91c2VVcCksdGhpcy5hdXRvU2F2ZUludGVydmFsJiYoY2xlYXJJbnRlcnZhbCh0aGlzLmF1dG9TYXZlSW50ZXJ2YWwpLHRoaXMuYXV0b1NhdmVJbnRlcnZhbD1udWxsKSx0aGlzLnN0b3BOb2RlTW9kdWxlc1dhdGNoZXIoKSx0aGlzLnN0b3BBbGxGaWxlV2F0Y2hlcnMoKX1hc3luYyBmaXJzdFVwZGF0ZWQoKXt0aGlzLmN1cnJlbnRGaWxlVHJlZVdpZHRoPXRoaXMuZmlsZVRyZWVXaWR0aCx0aGlzLmN1cnJlbnRUZXJtaW5hbEhlaWdodD10aGlzLnRlcm1pbmFsSGVpZ2h0LHRoaXMuZXhlY3V0aW9uRW52aXJvbm1lbnQmJmF3YWl0IHRoaXMuaW5pdGlhbGl6ZVdvcmtzcGFjZSgpfWFzeW5jIHVwZGF0ZWQoc2Upe3NlLmhhcygiZXhlY3V0aW9uRW52aXJvbm1lbnQiKSYmdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudCYmYXdhaXQgdGhpcy5pbml0aWFsaXplV29ya3NwYWNlKCksdGhpcy5hY3Rpb25iYXJFbGVtZW50fHwodGhpcy5hY3Rpb25iYXJFbGVtZW50PXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiLmVkaXRvci1wYW5lbCBkZWVzLWFjdGlvbmJhciIpKX1hc3luYyBpbml0aWFsaXplV29ya3NwYWNlKCl7aWYodGhpcy5leGVjdXRpb25FbnZpcm9ubWVudCYmIXRoaXMuaW5pdGlhbGl6YXRpb25TdGFydGVkKXt0aGlzLmluaXRpYWxpemF0aW9uU3RhcnRlZD0hMCx0aGlzLmlzSW5pdGlhbGl6aW5nPSEwO3RyeXt0aGlzLmluaXRpYWxpemF0aW9uUHJvbWlzZT9hd2FpdCB0aGlzLmluaXRpYWxpemF0aW9uUHJvbWlzZTp0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50LnJlYWR5fHxhd2FpdCB0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50LmluaXQoKSxhd2FpdCB0aGlzLmV4ZWN1dGVPbkluaXRDb21tYW5kKCl9Y2F0Y2goc2Upe2NvbnNvbGUuZXJyb3IoIkZhaWxlZCB0byBpbml0aWFsaXplIHdvcmtzcGFjZToiLHNlKSx0aGlzLmluaXRpYWxpemF0aW9uU3RhcnRlZD0hMX1maW5hbGx5e3RoaXMuaXNJbml0aWFsaXppbmc9ITF9fX1hc3luYyBleGVjdXRlT25Jbml0Q29tbWFuZCgpe2lmKHRoaXMuZXhlY3V0aW9uRW52aXJvbm1lbnQpdHJ5e2lmKGF3YWl0IHRoaXMuZXhlY3V0aW9uRW52aXJvbm1lbnQuZXhpc3RzKCIvbnBtZXh0cmEuanNvbiIpKXtsZXQgc2U9YXdhaXQgdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudC5yZWFkRmlsZSgiL25wbWV4dHJhLmpzb24iKSxFZT1KU09OLnBhcnNlKHNlKT8uZGVlc0VkaXRvcldvcmtzcGFjZT8ub25Jbml0O2lmKEVlJiZ0eXBlb2YgRWU9PSJzdHJpbmciKXtjb25zb2xlLmxvZygiRXhlY3V0aW5nIG9uSW5pdCBjb21tYW5kOiIsRWUpLHRoaXMuaW5pdENvbW1hbmQ9RWUsdGhpcy5pbml0T3V0cHV0PVtdO2xldFtndCwuLi5rdF09RWUuc3BsaXQoIiAiKSx5cj1hd2FpdCB0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50LnNwYXduKGd0LGt0KTt5ci5vdXRwdXQucGlwZVRvKG5ldyBXcml0YWJsZVN0cmVhbSh7d3JpdGU6YTE9PntsZXQgaTE9YTEuc3BsaXQoYApgKTtmb3IobGV0IF9lIG9mIGkxKV9lJiYodGhpcy5pbml0T3V0cHV0PVsuLi50aGlzLmluaXRPdXRwdXQsX2VdKX19KSk7bGV0IGxpPWF3YWl0IHlyLmV4aXQ7Y29uc29sZS5sb2coIm9uSW5pdCBjb21tYW5kIGNvbXBsZXRlZCB3aXRoIGV4aXQgY29kZToiLGxpKSx0aGlzLmluaXRPdXRwdXQ9Wy4uLnRoaXMuaW5pdE91dHB1dCwiIixgQ29tbWFuZCBjb21wbGV0ZWQgd2l0aCBleGl0IGNvZGU6ICR7bGl9YF19fX1jYXRjaChzZSl7Y29uc29sZS53YXJuKCJGYWlsZWQgdG8gZXhlY3V0ZSBvbkluaXQgY29tbWFuZDoiLHNlKX19YXN5bmMgaW5pdGlhbGl6ZUludGVsbGlTZW5zZSgpe2lmKCF0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50fHx0aGlzLmludGVsbGlTZW5zZUluaXRpYWxpemVkKXJldHVybjtsZXQgc2U9d2luZG93Lm1vbmFjbztpZihzZXx8KGF3YWl0IG5ldyBQcm9taXNlKGRlPT5zZXRUaW1lb3V0KGRlLDEwMCkpLHNlPXdpbmRvdy5tb25hY28pLCFzZSl7Y29uc29sZS53YXJuKCJNb25hY28gbm90IHlldCBsb2FkZWQsIEludGVsbGlTZW5zZSB3aWxsIGJlIGluaXRpYWxpemVkIGxhdGVyIik7cmV0dXJufXRoaXMuaW50ZWxsaVNlbnNlSW5pdGlhbGl6ZWQ9ITAsdGhpcy5pbnRlbGxpU2Vuc2VNYW5hZ2VyPW5ldyBKWixhd2FpdCB0aGlzLmludGVsbGlTZW5zZU1hbmFnZXIuaW5pdChzZSx0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50KSx0aGlzLnNldHVwTWFya2VyTGlzdGVuZXIoKSx0aGlzLnN0YXJ0Tm9kZU1vZHVsZXNXYXRjaGVyKCksYXdhaXQgdGhpcy5pbnRlbGxpU2Vuc2VNYW5hZ2VyLnNjYW5BbmRMb2FkTmV3UGFja2FnZVR5cGVzKCl9c3RhcnROb2RlTW9kdWxlc1dhdGNoZXIoKXtpZighKCF0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50fHx0aGlzLm5vZGVNb2R1bGVzV2F0Y2hlcikpdHJ5e3RoaXMubm9kZU1vZHVsZXNXYXRjaGVyPXRoaXMuZXhlY3V0aW9uRW52aXJvbm1lbnQud2F0Y2goIi9ub2RlX21vZHVsZXMiLChzZSxkZSk9Pnt0aGlzLm5vZGVNb2R1bGVzRGVib3VuY2VUaW1lb3V0JiZjbGVhclRpbWVvdXQodGhpcy5ub2RlTW9kdWxlc0RlYm91bmNlVGltZW91dCksdGhpcy5ub2RlTW9kdWxlc0RlYm91bmNlVGltZW91dD1zZXRUaW1lb3V0KGFzeW5jKCk9Pnt0aGlzLmludGVsbGlTZW5zZU1hbmFnZXImJmF3YWl0IHRoaXMuaW50ZWxsaVNlbnNlTWFuYWdlci5zY2FuQW5kTG9hZE5ld1BhY2thZ2VUeXBlcygpfSwyZTMpfSx7cmVjdXJzaXZlOiEwfSl9Y2F0Y2goc2Upe2NvbnNvbGUud2FybigiQ291bGQgbm90IHdhdGNoIG5vZGVfbW9kdWxlczoiLHNlKX19c3RvcE5vZGVNb2R1bGVzV2F0Y2hlcigpe3RoaXMubm9kZU1vZHVsZXNXYXRjaGVyJiYodGhpcy5ub2RlTW9kdWxlc1dhdGNoZXIuc3RvcCgpLHRoaXMubm9kZU1vZHVsZXNXYXRjaGVyPW51bGwpLHRoaXMubm9kZU1vZHVsZXNEZWJvdW5jZVRpbWVvdXQmJihjbGVhclRpbWVvdXQodGhpcy5ub2RlTW9kdWxlc0RlYm91bmNlVGltZW91dCksdGhpcy5ub2RlTW9kdWxlc0RlYm91bmNlVGltZW91dD1udWxsKX1zdGFydFdhdGNoaW5nRmlsZShzZSl7aWYoISghdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudHx8dGhpcy5vcGVuRmlsZVdhdGNoZXJzLmhhcyhzZSkpKXRyeXtsZXQgZGU9dGhpcy5leGVjdXRpb25FbnZpcm9ubWVudC53YXRjaChzZSwoRWUsZ3QpPT57bGV0IGt0PXRoaXMuZmlsZUNoYW5nZURlYm91bmNlLmdldChzZSk7a3QmJmNsZWFyVGltZW91dChrdCk7bGV0IHlyPXNldFRpbWVvdXQoKCk9Pnt0aGlzLmhhbmRsZUV4dGVybmFsRmlsZUNoYW5nZShzZSksdGhpcy5maWxlQ2hhbmdlRGVib3VuY2UuZGVsZXRlKHNlKX0sMzAwKTt0aGlzLmZpbGVDaGFuZ2VEZWJvdW5jZS5zZXQoc2UseXIpfSk7dGhpcy5vcGVuRmlsZVdhdGNoZXJzLnNldChzZSxkZSl9Y2F0Y2goZGUpe2NvbnNvbGUud2FybihgQ291bGQgbm90IHdhdGNoIGZpbGUgJHtzZX06YCxkZSl9fXN0b3BXYXRjaGluZ0ZpbGUoc2Upe2xldCBkZT10aGlzLm9wZW5GaWxlV2F0Y2hlcnMuZ2V0KHNlKTtkZSYmKGRlLnN0b3AoKSx0aGlzLm9wZW5GaWxlV2F0Y2hlcnMuZGVsZXRlKHNlKSk7bGV0IEVlPXRoaXMuZmlsZUNoYW5nZURlYm91bmNlLmdldChzZSk7RWUmJihjbGVhclRpbWVvdXQoRWUpLHRoaXMuZmlsZUNoYW5nZURlYm91bmNlLmRlbGV0ZShzZSkpfXN0b3BBbGxGaWxlV2F0Y2hlcnMoKXtmb3IobGV0IHNlIG9mIHRoaXMub3BlbkZpbGVXYXRjaGVycy52YWx1ZXMoKSlzZS5zdG9wKCk7dGhpcy5vcGVuRmlsZVdhdGNoZXJzLmNsZWFyKCk7Zm9yKGxldCBzZSBvZiB0aGlzLmZpbGVDaGFuZ2VEZWJvdW5jZS52YWx1ZXMoKSljbGVhclRpbWVvdXQoc2UpO3RoaXMuZmlsZUNoYW5nZURlYm91bmNlLmNsZWFyKCl9YXN5bmMgaGFuZGxlRXh0ZXJuYWxGaWxlQ2hhbmdlKHNlKXtsZXQgZGU9dGhpcy5vcGVuRmlsZXMuZmluZChFZT0+RWUucGF0aD09PXNlKTtpZighKCFkZXx8IXRoaXMuZXhlY3V0aW9uRW52aXJvbm1lbnQpKXRyeXtsZXQgRWU9YXdhaXQgdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudC5yZWFkRmlsZShzZSk7aWYoRWU9PT1kZS5jb250ZW50KXJldHVybjtpZihkZS5tb2RpZmllZCl7bGV0IGd0PWF3YWl0IHRoaXMuYWN0aW9uYmFyRWxlbWVudD8uc2hvdyh7bWVzc2FnZTpgIiR7ZGUubmFtZX0iIGNoYW5nZWQgb24gZGlzay4gV2hhdCBkbyB5b3Ugd2FudCB0byBkbz9gLHR5cGU6InF1ZXN0aW9uIixpY29uOiJsdWNpZGU6Z2l0TWVyZ2UiLGFjdGlvbnM6W3tpZDoibG9hZC1kaXNrIixsYWJlbDoiTG9hZCBmcm9tIERpc2siLHByaW1hcnk6ITB9LHtpZDoic2F2ZS1sb2NhbCIsbGFiZWw6IlNhdmUgTG9jYWwgdG8gRGlzayJ9LHtpZDoiY29tcGFyZSIsbGFiZWw6IkNvbXBhcmUifV0sdGltZW91dDp7ZHVyYXRpb246MTVlMyxkZWZhdWx0QWN0aW9uSWQ6ImxvYWQtZGlzayJ9LGRpc21pc3NpYmxlOiEwfSk7Z3Q/LmFjdGlvbklkPT09ImxvYWQtZGlzayI/YXdhaXQgdGhpcy51cGRhdGVGaWxlQ29udGVudChzZSxFZSwhMSk6Z3Q/LmFjdGlvbklkPT09InNhdmUtbG9jYWwiPyhhd2FpdCB0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50LndyaXRlRmlsZShzZSxkZS5jb250ZW50KSx0aGlzLm9wZW5GaWxlcz10aGlzLm9wZW5GaWxlcy5tYXAoa3Q9Pmt0LnBhdGg9PT1zZT97Li4ua3QsbW9kaWZpZWQ6ITF9Omt0KSk6Z3Q/LmFjdGlvbklkPT09ImNvbXBhcmUiJiZ0aGlzLm9wZW5EaWZmVmlldyhzZSxkZS5jb250ZW50LEVlKX1lbHNlIGF3YWl0IHRoaXMudXBkYXRlRmlsZUNvbnRlbnQoc2UsRWUsITApfWNhdGNoKEVlKXtjb25zb2xlLndhcm4oYEZhaWxlZCB0byBoYW5kbGUgZXh0ZXJuYWwgY2hhbmdlIGZvciAke3NlfTpgLEVlKX19YXN5bmMgdXBkYXRlRmlsZUNvbnRlbnQoc2UsZGUsRWUpe2lmKHRoaXMub3BlbkZpbGVzPXRoaXMub3BlbkZpbGVzLm1hcChndD0+Z3QucGF0aD09PXNlP3suLi5ndCxjb250ZW50OmRlLG1vZGlmaWVkOiExfTpndCksc2U9PT10aGlzLmFjdGl2ZUZpbGVQYXRoKXtsZXQgZ3Q9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCJkZWVzLXdvcmtzcGFjZS1tb25hY28iKTtndCYmYXdhaXQgZ3Quc2V0Q29udGVudEV4dGVybmFsKGRlLEVlKX19b3BlbkRpZmZWaWV3KHNlLGRlLEVlKXt0aGlzLmRpZmZWaWV3Q29uZmlnPXtmaWxlUGF0aDpzZSxvcmlnaW5hbENvbnRlbnQ6RWUsbW9kaWZpZWRDb250ZW50OmRlLGxhbmd1YWdlOnRoaXMuZ2V0TGFuZ3VhZ2VGcm9tUGF0aChzZSl9LHRoaXMuc2hvd0RpZmZWaWV3PSEwfWFzeW5jIGhhbmRsZURpZmZSZXNvbHZlZChzZSl7bGV0e2FjdGlvbjpkZSxjb250ZW50OkVlfT1zZS5kZXRhaWwsZ3Q9dGhpcy5kaWZmVmlld0NvbmZpZz8uZmlsZVBhdGg7aWYoIWd0fHwhdGhpcy5leGVjdXRpb25FbnZpcm9ubWVudCl7dGhpcy5zaG93RGlmZlZpZXc9ITEsdGhpcy5kaWZmVmlld0NvbmZpZz1udWxsO3JldHVybn1pZihkZT09PSJ1c2UtbG9jYWwiKXtpZihhd2FpdCB0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50LndyaXRlRmlsZShndCxFZSksdGhpcy5vcGVuRmlsZXM9dGhpcy5vcGVuRmlsZXMubWFwKGt0PT5rdC5wYXRoPT09Z3Q/ey4uLmt0LGNvbnRlbnQ6RWUsbW9kaWZpZWQ6ITF9Omt0KSxndD09PXRoaXMuYWN0aXZlRmlsZVBhdGgpe2xldCBrdD10aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoImRlZXMtd29ya3NwYWNlLW1vbmFjbyIpO2t0JiZhd2FpdCBrdC5zZXRDb250ZW50RXh0ZXJuYWwoRWUsITEpfX1lbHNlIGRlPT09InVzZS1kaXNrIiYmYXdhaXQgdGhpcy51cGRhdGVGaWxlQ29udGVudChndCxFZSwhMSk7dGhpcy5zaG93RGlmZlZpZXc9ITEsdGhpcy5kaWZmVmlld0NvbmZpZz1udWxsfWFzeW5jIGhhbmRsZUZpbGVTZWxlY3Qoc2Upe2xldHtwYXRoOmRlLG5hbWU6RWV9PXNlLmRldGFpbDthd2FpdCB0aGlzLm9wZW5GaWxlKGRlLEVlKX1hc3luYyBvcGVuRmlsZShzZSxkZSl7aWYodGhpcy5vcGVuRmlsZXMuZmluZChndD0+Z3QucGF0aD09PXNlKSl7dGhpcy5hY3RpdmVGaWxlUGF0aD1zZTtyZXR1cm59aWYodGhpcy5leGVjdXRpb25FbnZpcm9ubWVudCl0cnl7bGV0IGd0PWF3YWl0IHRoaXMuZXhlY3V0aW9uRW52aXJvbm1lbnQucmVhZEZpbGUoc2UpO2lmKHRoaXMub3BlbkZpbGVzPVsuLi50aGlzLm9wZW5GaWxlcyx7cGF0aDpzZSxuYW1lOmRlLGNvbnRlbnQ6Z3QsbW9kaWZpZWQ6ITF9XSx0aGlzLmFjdGl2ZUZpbGVQYXRoPXNlLHRoaXMuc3RhcnRXYXRjaGluZ0ZpbGUoc2UpLCF0aGlzLmludGVsbGlTZW5zZUluaXRpYWxpemVkKXthd2FpdCB0aGlzLnVwZGF0ZUNvbXBsZXRlLGF3YWl0IG5ldyBQcm9taXNlKHlyPT5zZXRUaW1lb3V0KHlyLDUwMCkpLGF3YWl0IHRoaXMuaW5pdGlhbGl6ZUludGVsbGlTZW5zZSgpO2xldCBrdD10aGlzLmdldExhbmd1YWdlRnJvbVBhdGgoc2UpO3RoaXMuaW50ZWxsaVNlbnNlTWFuYWdlciYmKGt0PT09InR5cGVzY3JpcHQifHxrdD09PSJqYXZhc2NyaXB0IikmJmF3YWl0IHRoaXMuaW50ZWxsaVNlbnNlTWFuYWdlci5wcm9jZXNzQ29udGVudENoYW5nZShndCl9fWNhdGNoKGd0KXtjb25zb2xlLmVycm9yKGBGYWlsZWQgdG8gb3BlbiBmaWxlICR7c2V9OmAsZ3QpfX1hY3RpdmF0ZUZpbGUoc2Upe3RoaXMuYWN0aXZlRmlsZVBhdGg9c2V9Y2xvc2VGaWxlKHNlLGRlKXtzZS5zdG9wUHJvcGFnYXRpb24oKTtsZXQgRWU9dGhpcy5vcGVuRmlsZXMuZmluZEluZGV4KGt0PT5rdC5wYXRoPT09ZGUpO2lmKEVlPT09LTEpcmV0dXJuO2xldCBndD10aGlzLm9wZW5GaWxlc1tFZV07aWYoIShndC5tb2RpZmllZCYmIWNvbmZpcm0oYCR7Z3QubmFtZX0gaGFzIHVuc2F2ZWQgY2hhbmdlcy4gQ2xvc2UgYW55d2F5P2ApKSYmKHRoaXMuc3RvcFdhdGNoaW5nRmlsZShkZSksdGhpcy5vcGVuRmlsZXM9dGhpcy5vcGVuRmlsZXMuZmlsdGVyKGt0PT5rdC5wYXRoIT09ZGUpLHRoaXMuYWN0aXZlRmlsZVBhdGg9PT1kZSkpaWYodGhpcy5vcGVuRmlsZXMubGVuZ3RoPjApe2xldCBrdD1NYXRoLm1pbihFZSx0aGlzLm9wZW5GaWxlcy5sZW5ndGgtMSk7dGhpcy5hY3RpdmVGaWxlUGF0aD10aGlzLm9wZW5GaWxlc1trdF0ucGF0aH1lbHNlIHRoaXMuYWN0aXZlRmlsZVBhdGg9IiJ9Z2V0QWN0aXZlRmlsZUNvbnRlbnQoKXtyZXR1cm4gdGhpcy5vcGVuRmlsZXMuZmluZChkZT0+ZGUucGF0aD09PXRoaXMuYWN0aXZlRmlsZVBhdGgpPy5jb250ZW50fHwiIn1oYW5kbGVDb250ZW50Q2hhbmdlKHNlKXtsZXQgZGU9c2UuZGV0YWlsLEVlPXRoaXMub3BlbkZpbGVzLmZpbmRJbmRleChrdD0+a3QucGF0aD09PXRoaXMuYWN0aXZlRmlsZVBhdGgpO2lmKEVlPT09LTEpcmV0dXJuO2xldCBndD10aGlzLm9wZW5GaWxlc1tFZV07aWYoZ3QuY29udGVudCE9PWRlKXt0aGlzLm9wZW5GaWxlcz1bLi4udGhpcy5vcGVuRmlsZXMuc2xpY2UoMCxFZSksey4uLmd0LGNvbnRlbnQ6ZGUsbW9kaWZpZWQ6ITB9LC4uLnRoaXMub3BlbkZpbGVzLnNsaWNlKEVlKzEpXTtsZXQga3Q9dGhpcy5nZXRMYW5ndWFnZUZyb21QYXRoKHRoaXMuYWN0aXZlRmlsZVBhdGgpO3RoaXMuaW50ZWxsaVNlbnNlTWFuYWdlciYmKGt0PT09InR5cGVzY3JpcHQifHxrdD09PSJqYXZhc2NyaXB0IikmJih0aGlzLmludGVsbGlTZW5zZURlYm91bmNlVGltZW91dCYmY2xlYXJUaW1lb3V0KHRoaXMuaW50ZWxsaVNlbnNlRGVib3VuY2VUaW1lb3V0KSx0aGlzLmludGVsbGlTZW5zZURlYm91bmNlVGltZW91dD1zZXRUaW1lb3V0KCgpPT57dGhpcy5pbnRlbGxpU2Vuc2VNYW5hZ2VyPy5wcm9jZXNzQ29udGVudENoYW5nZShkZSl9LDUwMCkpfX1nZXRMYW5ndWFnZUZyb21QYXRoKHNlKXtsZXQgZGU9c2Uuc3BsaXQoIi4iKS5wb3AoKT8udG9Mb3dlckNhc2UoKTtyZXR1cm57dHM6InR5cGVzY3JpcHQiLHRzeDoidHlwZXNjcmlwdCIsanM6ImphdmFzY3JpcHQiLGpzeDoiamF2YXNjcmlwdCIsanNvbjoianNvbiIsaHRtbDoiaHRtbCIsY3NzOiJjc3MiLHNjc3M6InNjc3MiLGxlc3M6Imxlc3MiLG1kOiJtYXJrZG93biIseWFtbDoieWFtbCIseW1sOiJ5YW1sIix4bWw6InhtbCIsc3FsOiJzcWwiLHB5OiJweXRob24iLHNoOiJzaGVsbCIsYmFzaDoic2hlbGwifVtkZXx8IiJdfHwicGxhaW50ZXh0In10b2dnbGVUZXJtaW5hbCgpe3RoaXMuaXNUZXJtaW5hbENvbGxhcHNlZD0hdGhpcy5pc1Rlcm1pbmFsQ29sbGFwc2VkfWFzeW5jIHNhdmVBY3RpdmVGaWxlKCl7bGV0IHNlPXRoaXMub3BlbkZpbGVzLmZpbmQoZGU9PmRlLnBhdGg9PT10aGlzLmFjdGl2ZUZpbGVQYXRoKTtpZighKCFzZXx8IXRoaXMuZXhlY3V0aW9uRW52aXJvbm1lbnQpKXRyeXthd2FpdCB0aGlzLmV4ZWN1dGlvbkVudmlyb25tZW50LndyaXRlRmlsZShzZS5wYXRoLHNlLmNvbnRlbnQpLHRoaXMub3BlbkZpbGVzPXRoaXMub3BlbkZpbGVzLm1hcChkZT0+ZGUucGF0aD09PXNlLnBhdGg/ey4uLmRlLG1vZGlmaWVkOiExfTpkZSksdGhpcy5pbnRlbGxpU2Vuc2VNYW5hZ2VyJiZ0aGlzLmludGVsbGlTZW5zZU1hbmFnZXIuYWRkRmlsZU1vZGVsKHNlLnBhdGgsc2UuY29udGVudCl9Y2F0Y2goZGUpe2NvbnNvbGUuZXJyb3IoIkZhaWxlZCB0byBzYXZlIGZpbGU6IixkZSl9fWFzeW5jIHNhdmVBbGxGaWxlcygpe2lmKHRoaXMuZXhlY3V0aW9uRW52aXJvbm1lbnQpe2ZvcihsZXQgc2Ugb2YgdGhpcy5vcGVuRmlsZXMuZmlsdGVyKGRlPT5kZS5tb2RpZmllZCkpdHJ5e2F3YWl0IHRoaXMuZXhlY3V0aW9uRW52aXJvbm1lbnQud3JpdGVGaWxlKHNlLnBhdGgsc2UuY29udGVudCksdGhpcy5pbnRlbGxpU2Vuc2VNYW5hZ2VyJiZ0aGlzLmludGVsbGlTZW5zZU1hbmFnZXIuYWRkRmlsZU1vZGVsKHNlLnBhdGgsc2UuY29udGVudCl9Y2F0Y2goZGUpe2NvbnNvbGUuZXJyb3IoYEZhaWxlZCB0byBzYXZlICR7c2UucGF0aH06YCxkZSl9dGhpcy5vcGVuRmlsZXM9dGhpcy5vcGVuRmlsZXMubWFwKHNlPT4oey4uLnNlLG1vZGlmaWVkOiExfSkpfX1hc3luYyBzaG93RWRpdG9yTWVudShzZSl7c2Uuc3RvcFByb3BhZ2F0aW9uKCk7bGV0IGRlPVt7bmFtZTp0aGlzLmF1dG9TYXZlPyJcdTI3MTMgQXV0byBTYXZlIjoiQXV0byBTYXZlIixpY29uTmFtZToibHVjaWRlOnNhdmUiLGFjdGlvbjphc3luYygpPT50aGlzLnRvZ2dsZUF1dG9TYXZlKCl9LHtkaXZpZGVyOiEwfSx7bmFtZToiU2F2ZSIsaWNvbk5hbWU6Imx1Y2lkZTpzYXZlIixhY3Rpb246YXN5bmMoKT0+dGhpcy5zYXZlQWN0aXZlRmlsZSgpfSx7bmFtZToiU2F2ZSBBbGwiLGljb25OYW1lOiJsdWNpZGU6c2F2ZSIsYWN0aW9uOmFzeW5jKCk9PnRoaXMuc2F2ZUFsbEZpbGVzKCl9XTthd2FpdCB0ci5vcGVuQ29udGV4dE1lbnVXaXRoT3B0aW9ucyhzZSxkZSl9dG9nZ2xlQXV0b1NhdmUoKXt0aGlzLmF1dG9TYXZlPSF0aGlzLmF1dG9TYXZlLHRoaXMuYXV0b1NhdmU/dGhpcy5hdXRvU2F2ZUludGVydmFsPXNldEludGVydmFsKCgpPT57dGhpcy5vcGVuRmlsZXMuc29tZShkZT0+ZGUubW9kaWZpZWQpJiZ0aGlzLnNhdmVBbGxGaWxlcygpfSwyZTMpOnRoaXMuYXV0b1NhdmVJbnRlcnZhbCYmKGNsZWFySW50ZXJ2YWwodGhpcy5hdXRvU2F2ZUludGVydmFsKSx0aGlzLmF1dG9TYXZlSW50ZXJ2YWw9bnVsbCl9Z2V0RXJyb3JDb3VudCgpe3JldHVybiB0aGlzLmRpYWdub3N0aWNNYXJrZXJzLmZpbHRlcihzZT0+c2Uuc2V2ZXJpdHk9PT04KS5sZW5ndGh9cmVuZGVyUHJvYmxlbXNQYW5lbCgpe3JldHVybiB0aGlzLmRpYWdub3N0aWNNYXJrZXJzLmxlbmd0aD09PTA/U2AKICAgICAgICA8ZGl2IGNsYXNzPSJwcm9ibGVtcy1lbXB0eSI+CiAgICAgICAgICA8ZGVlcy1pY29uIC5pY29uPSR7Imx1Y2lkZTpjaGVja0NpcmNsZSJ9IGljb25TaXplPSIyNCI+PC9kZWVzLWljb24+CiAgICAgICAgICA8c3Bhbj5ObyBwcm9ibGVtcyBkZXRlY3RlZDwvc3Bhbj4KICAgICAgICA8L2Rpdj4KICAgICAgYDpTYAogICAgICA8ZGl2IGNsYXNzPSJwcm9ibGVtcy1saXN0Ij4KICAgICAgICAke3RoaXMuZGlhZ25vc3RpY01hcmtlcnMubWFwKHNlPT5TYAogICAgICAgICAgPGRpdiBjbGFzcz0icHJvYmxlbS1pdGVtIiBAY2xpY2s9JHsoKT0+dGhpcy5uYXZpZ2F0ZVRvUHJvYmxlbShzZSl9PgogICAgICAgICAgICA8ZGVlcy1pY29uCiAgICAgICAgICAgICAgY2xhc3M9InByb2JsZW0taWNvbiAke3NlLnNldmVyaXR5PT09OD8iZXJyb3IiOiJ3YXJuaW5nIn0iCiAgICAgICAgICAgICAgLmljb249JHtzZS5zZXZlcml0eT09PTg/Imx1Y2lkZTpjaXJjbGVYIjoibHVjaWRlOnRyaWFuZ2xlQWxlcnQifQogICAgICAgICAgICAgIGljb25TaXplPSIxNCIKICAgICAgICAgICAgPjwvZGVlcy1pY29uPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJwcm9ibGVtLWRldGFpbHMiPgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9InByb2JsZW0tbWVzc2FnZSI+JHtzZS5tZXNzYWdlfTwvZGl2PgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9InByb2JsZW0tbG9jYXRpb24iPgogICAgICAgICAgICAgICAgJHtzZS5yZXNvdXJjZS5wYXRoLnNwbGl0KCIvIikucG9wKCl9ICgke3NlLnN0YXJ0TGluZU51bWJlcn0sICR7c2Uuc3RhcnRDb2x1bW59KQogICAgICAgICAgICAgICAgJHtzZS5zb3VyY2U/YFske3NlLnNvdXJjZX1dYDoiIn0KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICBgKX0KICAgICAgPC9kaXY+CiAgICBgfWFzeW5jIG5hdmlnYXRlVG9Qcm9ibGVtKHNlKXtsZXQgZGU9c2UucmVzb3VyY2UucGF0aCxFZT1kZS5zcGxpdCgiLyIpLnBvcCgpfHwiIjt0aGlzLm9wZW5GaWxlcy5maW5kKHlyPT55ci5wYXRoPT09ZGUpP3RoaXMuYWN0aXZlRmlsZVBhdGg9ZGU6YXdhaXQgdGhpcy5vcGVuRmlsZShkZSxFZSksYXdhaXQgdGhpcy51cGRhdGVDb21wbGV0ZTtsZXQga3Q9dGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCJkZWVzLXdvcmtzcGFjZS1tb25hY28iKTtpZihrdCl7bGV0IHlyPWF3YWl0IGt0LmVkaXRvckRlZmVycmVkLnByb21pc2U7eXIucmV2ZWFsTGluZUluQ2VudGVyKHNlLnN0YXJ0TGluZU51bWJlcikseXIuc2V0UG9zaXRpb24oe2xpbmVOdW1iZXI6c2Uuc3RhcnRMaW5lTnVtYmVyLGNvbHVtbjpzZS5zdGFydENvbHVtbn0pLHlyLmZvY3VzKCl9fXNldHVwTWFya2VyTGlzdGVuZXIoKXtsZXQgc2U9d2luZG93Lm1vbmFjbztzZSYmKHNlLmVkaXRvci5vbkRpZENoYW5nZU1hcmtlcnMoZGU9Pnt0aGlzLnVwZGF0ZURpYWdub3N0aWNNYXJrZXJzKCl9KSx0aGlzLnVwZGF0ZURpYWdub3N0aWNNYXJrZXJzKCkpfXVwZGF0ZURpYWdub3N0aWNNYXJrZXJzKCl7bGV0IHNlPXdpbmRvdy5tb25hY287aWYoIXNlKXJldHVybjtsZXQgZGU9c2UuZWRpdG9yLmdldE1vZGVsTWFya2Vycyh7fSk7dGhpcy5kaWFnbm9zdGljTWFya2Vycz1kZS5tYXAoRWU9Pih7bWVzc2FnZTpFZS5tZXNzYWdlLHNldmVyaXR5OkVlLnNldmVyaXR5LHN0YXJ0TGluZU51bWJlcjpFZS5zdGFydExpbmVOdW1iZXIsc3RhcnRDb2x1bW46RWUuc3RhcnRDb2x1bW4sZW5kTGluZU51bWJlcjpFZS5lbmRMaW5lTnVtYmVyLGVuZENvbHVtbjpFZS5lbmRDb2x1bW4sc291cmNlOkVlLnNvdXJjZSxyZXNvdXJjZTp7cGF0aDpFZS5yZXNvdXJjZS5wYXRofX0pKX1hc3luYyBoYW5kbGVSdW5Qcm9jZXNzKHNlKXtsZXQgZGU9c2UuZGV0YWlsLEVlPXRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiZGVlcy13b3Jrc3BhY2UtdGVybWluYWwiKTtpZighRWUpe2NvbnNvbGUud2FybigiVGVybWluYWwgY29tcG9uZW50IG5vdCBmb3VuZCIpO3JldHVybn10aGlzLmlzVGVybWluYWxDb2xsYXBzZWQmJih0aGlzLmlzVGVybWluYWxDb2xsYXBzZWQ9ITEpLHRoaXMuYWN0aXZlQm90dG9tUGFuZWw9InRlcm1pbmFsIixhd2FpdCB0aGlzLnVwZGF0ZUNvbXBsZXRlLGF3YWl0IEVlLmNyZWF0ZVByb2Nlc3NUYWIoe3R5cGU6ZGUudHlwZSxsYWJlbDpkZS5sYWJlbCxjb21tYW5kOmRlLmNvbW1hbmQsYXJnczpkZS5hcmdzLG1ldGFkYXRhOmRlLm1ldGFkYXRhLHN3aXRjaFRvVGFiOiEwfSl9c2V0RmlsZVRyZWVXaWR0aChzZSl7bGV0IEVlPXRoaXMuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGgqLjU7dGhpcy5jdXJyZW50RmlsZVRyZWVXaWR0aD1NYXRoLm1heCgxNTAsTWF0aC5taW4oRWUsc2UpKSx3aW5kb3cuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoInJlc2l6ZSIpKX1zZXRUZXJtaW5hbEhlaWdodChzZSl7bGV0IEVlPXRoaXMuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0Ki43O3RoaXMuY3VycmVudFRlcm1pbmFsSGVpZ2h0PU1hdGgubWF4KDEwMCxNYXRoLm1pbihFZSxzZSkpLHdpbmRvdy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgicmVzaXplIikpfXJlc2V0TGF5b3V0KCl7dGhpcy5jdXJyZW50RmlsZVRyZWVXaWR0aD10aGlzLmZpbGVUcmVlV2lkdGgsdGhpcy5jdXJyZW50VGVybWluYWxIZWlnaHQ9dGhpcy50ZXJtaW5hbEhlaWdodCx3aW5kb3cuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoInJlc2l6ZSIpKX1zdGF0aWN7RnQoYSxyKX19O3JldHVybiBPdD1hfSkoKX0pO3ZhciBpQnI9bCgoKT0+e2FCcigpO1YwdCgpfSk7dmFyIG9Ccj1sKCgpPT57QzgoKX0pO3ZhciBuQnI9bCgoKT0+e2tjZSgpfSk7dmFyIHNCcj1sKCgpPT57fSk7dmFyIGxCcj1sKCgpPT57WlooKTtzQnIoKTskMHQoKX0pO3ZhciBjQnI9bCgoKT0+e3EwdCgpfSk7dmFyIGVYLFhjLER2bixkQnIsdUJyPWwoKCk9PntTZSgpO290KCk7QzgoKTtlWD1mdW5jdGlvbihlLHQscixhLGksbyl7ZnVuY3Rpb24gbih2KXtpZih2IT09dm9pZCAwJiZ0eXBlb2YgdiE9ImZ1bmN0aW9uIil0aHJvdyBuZXcgVHlwZUVycm9yKCJGdW5jdGlvbiBleHBlY3RlZCIpO3JldHVybiB2fWZvcih2YXIgcz1hLmtpbmQsYz1zPT09ImdldHRlciI/ImdldCI6cz09PSJzZXR0ZXIiPyJzZXQiOiJ2YWx1ZSIsZD0hdCYmZT9hLnN0YXRpYz9lOmUucHJvdG90eXBlOm51bGwsZj10fHwoZD9PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGQsYS5uYW1lKTp7fSksdSxwPSExLGg9ci5sZW5ndGgtMTtoPj0wO2gtLSl7dmFyIGI9e307Zm9yKHZhciB4IGluIGEpYlt4XT14PT09ImFjY2VzcyI/e306YVt4XTtmb3IodmFyIHggaW4gYS5hY2Nlc3MpYi5hY2Nlc3NbeF09YS5hY2Nlc3NbeF07Yi5hZGRJbml0aWFsaXplcj1mdW5jdGlvbih2KXtpZihwKXRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBhZGQgaW5pdGlhbGl6ZXJzIGFmdGVyIGRlY29yYXRpb24gaGFzIGNvbXBsZXRlZCIpO28ucHVzaChuKHZ8fG51bGwpKX07dmFyIGc9KDAscltoXSkocz09PSJhY2Nlc3NvciI/e2dldDpmLmdldCxzZXQ6Zi5zZXR9OmZbY10sYik7aWYocz09PSJhY2Nlc3NvciIpe2lmKGc9PT12b2lkIDApY29udGludWU7aWYoZz09PW51bGx8fHR5cGVvZiBnIT0ib2JqZWN0Iil0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQiKTsodT1uKGcuZ2V0KSkmJihmLmdldD11KSwodT1uKGcuc2V0KSkmJihmLnNldD11KSwodT1uKGcuaW5pdCkpJiZpLnVuc2hpZnQodSl9ZWxzZSh1PW4oZykpJiYocz09PSJmaWVsZCI/aS51bnNoaWZ0KHUpOmZbY109dSl9ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGQsYS5uYW1lLGYpLHA9ITB9LFhjPWZ1bmN0aW9uKGUsdCxyKXtmb3IodmFyIGE9YXJndW1lbnRzLmxlbmd0aD4yLGk9MDtpPHQubGVuZ3RoO2krKylyPWE/dFtpXS5jYWxsKGUscik6dFtpXS5jYWxsKGUpO3JldHVybiBhP3I6dm9pZCAwfSxEdm49JHQucGx1Z2lucy5zbWFydHByb21pc2UuZGVmZXIoKSxkQnI9KCgpPT57bGV0IGU9W3plKCJkZWVzLXdvcmtzcGFjZS1tYXJrZG93biIpXSx0LHI9W10sYSxpPURlLG8sbj1bXSxzPVtdLGMsZD1bXSxmPVtdLHUscD1bXSxoPVtdLGIseD1bXSxnPVtdO3ZhciB2PWNsYXNzIGV4dGVuZHMgaXtzdGF0aWN7YT10aGlzfXN0YXRpY3tsZXQgdz10eXBlb2YgU3ltYm9sPT0iZnVuY3Rpb24iJiZTeW1ib2wubWV0YWRhdGE/T2JqZWN0LmNyZWF0ZShpW1N5bWJvbC5tZXRhZGF0YV0/P251bGwpOnZvaWQgMDtvPVtqKHt0eXBlOk51bWJlcn0pXSxjPVtqKHt0eXBlOk51bWJlcn0pXSx1PVtyZSgpXSxiPVtyZSgpXSxlWCh0aGlzLG51bGwsbyx7a2luZDoiYWNjZXNzb3IiLG5hbWU6InNwbGl0UmF0aW8iLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOk09PiJzcGxpdFJhdGlvImluIE0sZ2V0Ok09Pk0uc3BsaXRSYXRpbyxzZXQ6KE0sRik9PntNLnNwbGl0UmF0aW89Rn19LG1ldGFkYXRhOnd9LG4scyksZVgodGhpcyxudWxsLGMse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJtaW5QYW5lbFNpemUiLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOk09PiJtaW5QYW5lbFNpemUiaW4gTSxnZXQ6TT0+TS5taW5QYW5lbFNpemUsc2V0OihNLEYpPT57TS5taW5QYW5lbFNpemU9Rn19LG1ldGFkYXRhOnd9LGQsZiksZVgodGhpcyxudWxsLHUse2tpbmQ6ImFjY2Vzc29yIixuYW1lOiJjdXJyZW50U3BsaXRSYXRpbyIsc3RhdGljOiExLHByaXZhdGU6ITEsYWNjZXNzOntoYXM6TT0+ImN1cnJlbnRTcGxpdFJhdGlvImluIE0sZ2V0Ok09Pk0uY3VycmVudFNwbGl0UmF0aW8sc2V0OihNLEYpPT57TS5jdXJyZW50U3BsaXRSYXRpbz1GfX0sbWV0YWRhdGE6d30scCxoKSxlWCh0aGlzLG51bGwsYix7a2luZDoiYWNjZXNzb3IiLG5hbWU6ImlzRHJhZ2dpbmciLHN0YXRpYzohMSxwcml2YXRlOiExLGFjY2Vzczp7aGFzOk09PiJpc0RyYWdnaW5nImluIE0sZ2V0Ok09Pk0uaXNEcmFnZ2luZyxzZXQ6KE0sRik9PntNLmlzRHJhZ2dpbmc9Rn19LG1ldGFkYXRhOnd9LHgsZyksZVgobnVsbCx0PXt2YWx1ZTphfSxlLHtraW5kOiJjbGFzcyIsbmFtZTphLm5hbWUsbWV0YWRhdGE6d30sbnVsbCxyKSx2PWE9dC52YWx1ZSx3JiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxTeW1ib2wubWV0YWRhdGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnd9KX1zdGF0aWMgZGVtbz0oKT0+U2A8ZGVlcy13b3Jrc3BhY2UtbWFya2Rvd24+PC9kZWVzLXdvcmtzcGFjZS1tYXJrZG93bj5gO3N0YXRpYyBkZW1vR3JvdXBzPVsiV29ya3NwYWNlIl07c3RhdGljIHN0eWxlcz1bUGUsbS5kZWZhdWx0U3R5bGVzLGxlYAogICAgICA6aG9zdCB7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgfQoKICAgICAgLnNwbGl0Q29udGFpbmVyIHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsKICAgICAgfQoKICAgICAgLmVkaXRvckNvbnRhaW5lciB7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICBtaW4td2lkdGg6IDEwMHB4OwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgIH0KCiAgICAgIC5yZXNpemVIYW5kbGUgewogICAgICAgIHdpZHRoOiA2cHg7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZTVlN2ViIiwiIzMwMzYzZCIpfTsKICAgICAgICBjdXJzb3I6IGNvbC1yZXNpemU7CiAgICAgICAgZmxleC1zaHJpbms6IDA7CiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1cyBlYXNlOwogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgfQoKICAgICAgLnJlc2l6ZUhhbmRsZTpob3ZlciwKICAgICAgLnJlc2l6ZUhhbmRsZS5kcmFnZ2luZyB7CiAgICAgICAgYmFja2dyb3VuZDogJHttLmJkVGhlbWUoIiMzYjgyZjYiLCIjNThhNmZmIil9OwogICAgICB9CgogICAgICAucmVzaXplSGFuZGxlOjphZnRlciB7CiAgICAgICAgY29udGVudDogJyc7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIHRvcDogNTAlOwogICAgICAgIGxlZnQ6IDUwJTsKICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsKICAgICAgICB3aWR0aDogMnB4OwogICAgICAgIGhlaWdodDogMzJweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiIzljYTNhZiIsIiM2ZTc2ODEiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogMXB4OwogICAgICAgIG9wYWNpdHk6IDAuNjsKICAgICAgfQoKICAgICAgLnJlc2l6ZUhhbmRsZTpob3Zlcjo6YWZ0ZXIsCiAgICAgIC5yZXNpemVIYW5kbGUuZHJhZ2dpbmc6OmFmdGVyIHsKICAgICAgICBiYWNrZ3JvdW5kOiAke20uYmRUaGVtZSgiI2ZmZmZmZiIsIiNmZmZmZmYiKX07CiAgICAgICAgb3BhY2l0eTogMTsKICAgICAgfQoKICAgICAgLm91dGxldENvbnRhaW5lciB7CiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgIGhlaWdodDogMTAwJTsKICAgICAgICBtaW4td2lkdGg6IDEwMHB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7bS5iZFRoZW1lKCIjZmZmZmZmIiwiIzBkMTExNyIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMyNDI5MmYiLCIjZTZlZGYzIil9OwogICAgICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsICdTZWdvZSBVSScsICdOb3RvIFNhbnMnLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmOwogICAgICAgIHBhZGRpbmc6IDIwcHg7CiAgICAgICAgb3ZlcmZsb3cteTogYXV0bzsKICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgICB9CgogICAgICAvKiBQcmV2ZW50IHRleHQgc2VsZWN0aW9uIHdoaWxlIGRyYWdnaW5nICovCiAgICAgIC5zcGxpdENvbnRhaW5lci5kcmFnZ2luZyB7CiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgIH0KCiAgICAgIC5zcGxpdENvbnRhaW5lci5kcmFnZ2luZyAuZWRpdG9yQ29udGFpbmVyLAogICAgICAuc3BsaXRDb250YWluZXIuZHJhZ2dpbmcgLm91dGxldENvbnRhaW5lciB7CiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgICAgIH0KICAgIGBdOyNlPVhjKHRoaXMsbiw1MCk7Z2V0IHNwbGl0UmF0aW8oKXtyZXR1cm4gdGhpcy4jZX1zZXQgc3BsaXRSYXRpbyh3KXt0aGlzLiNlPXd9I3Q9KFhjKHRoaXMscyksWGModGhpcyxkLDEwKSk7Z2V0IG1pblBhbmVsU2l6ZSgpe3JldHVybiB0aGlzLiN0fXNldCBtaW5QYW5lbFNpemUodyl7dGhpcy4jdD13fSNyPShYYyh0aGlzLGYpLFhjKHRoaXMscCw1MCkpO2dldCBjdXJyZW50U3BsaXRSYXRpbygpe3JldHVybiB0aGlzLiNyfXNldCBjdXJyZW50U3BsaXRSYXRpbyh3KXt0aGlzLiNyPXd9I2E9KFhjKHRoaXMsaCksWGModGhpcyx4LCExKSk7Z2V0IGlzRHJhZ2dpbmcoKXtyZXR1cm4gdGhpcy4jYX1zZXQgaXNEcmFnZ2luZyh3KXt0aGlzLiNhPXd9cmVzaXplSGFuZGxlRWxlbWVudD1YYyh0aGlzLGcpO2NvbnRhaW5lckVsZW1lbnQ7cmVuZGVyKCl7cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9InNwbGl0Q29udGFpbmVyICR7dGhpcy5pc0RyYWdnaW5nPyJkcmFnZ2luZyI6IiJ9Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJlZGl0b3JDb250YWluZXIiIHN0eWxlPSJ3aWR0aDogJHt0aGlzLmN1cnJlbnRTcGxpdFJhdGlvfSUiPgogICAgICAgICAgPGRlZXMtd29ya3NwYWNlLW1vbmFjbwogICAgICAgICAgICAubGFuZ3VhZ2U9JHsibWFya2Rvd24ifQogICAgICAgICAgICAuY29udGVudD0ke2AjIGEgdGVzdCBjb250ZW50CgpUaGlzIGlzIHRlc3QgY29udGVudCB0aGF0IGlzIG9mIGxvbmdlciBmb3JtIGFuIGhvcGVmdWxseSBzdGFydHMgdG8gd3JhcCB3aGVuIEkgbmVlZCBpdC4gQW5kIHllcywgaXQgZG9lcyBwZXJmZWN0bHkuIG5pY2UuCgpUZXN0IHwgSGVsbG8KLS0tIHwgLS0tClllYWggfCBTbyBnb29kCgpUaGlzIGlzIHJlYWwgYXNzZXQgSSB0aGluay4gV2h5IHdvdWxkIHdlIHdhbnQgdG8gbGVhdmUgdGhhdCBvbiB0aGUgdGFibGU/IENhbiB5b3UgdGVsbCBteSB0aGF0PwoKV2h5IGFyZSB3ZSBoZXJlPwoKRG8geW91IGtub3c/Cgo+IG5vdGU6ClRoZXJlIGlzIHNvbWV0aGluZyBnb2luZyBvbi4KClxgXGBcYHR5cGVzY3JpcHQKY29uc3QgaGVsbG8gPSAneWVzJwpcYFxgXGAKYH0KICAgICAgICAgICAgd29yZFdyYXA9ImJvdW5kZWQiCiAgICAgICAgICA+PC9kZWVzLXdvcmtzcGFjZS1tb25hY28+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdgogICAgICAgICAgY2xhc3M9InJlc2l6ZUhhbmRsZSAke3RoaXMuaXNEcmFnZ2luZz8iZHJhZ2dpbmciOiIifSIKICAgICAgICAgIEBtb3VzZWRvd249JHt0aGlzLmhhbmRsZU1vdXNlRG93bn0KICAgICAgICA+PC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ib3V0bGV0Q29udGFpbmVyIiBzdHlsZT0id2lkdGg6ICR7MTAwLXRoaXMuY3VycmVudFNwbGl0UmF0aW99JSI+CiAgICAgICAgICA8ZGVlcy13b3Jrc3BhY2UtbWFya2Rvd25vdXRsZXQ+PC9kZWVzLXdvcmtzcGFjZS1tYXJrZG93bm91dGxldD4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICBgfWFzeW5jIGZpcnN0VXBkYXRlZCh3KXthd2FpdCBzdXBlci5maXJzdFVwZGF0ZWQodyksdGhpcy5jdXJyZW50U3BsaXRSYXRpbz10aGlzLnNwbGl0UmF0aW8sdGhpcy5jb250YWluZXJFbGVtZW50PXRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCIuc3BsaXRDb250YWluZXIiKSx0aGlzLnJlc2l6ZUhhbmRsZUVsZW1lbnQ9dGhpcy5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoIi5yZXNpemVIYW5kbGUiKTtsZXQgTT10aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcigiZGVlcy13b3Jrc3BhY2UtbW9uYWNvIiksRj10aGlzLnNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcigiZGVlcy13b3Jrc3BhY2UtbWFya2Rvd25vdXRsZXQiKSxrPWF3YWl0IG5ldyAkdC5wbHVnaW5zLnNtYXJ0bWFya2Rvd24uU21hcnRNYXJrZG93bigpLmdldE1kUGFyc2VkUmVzdWx0RnJvbU1hcmtkb3duKCJsb2FkaW5nLi4uIik7TS5jb250ZW50U3ViamVjdC5zdWJzY3JpYmUoYXN5bmMgTj0+e2F3YWl0IGsudXBkYXRlRnJvbU1hcmtkb3duU3RyaW5nKE4pO2xldCAkPWsuaHRtbDtGLnVwZGF0ZUh0bWxUZXh0KCQpfSl9aGFuZGxlTW91c2VEb3duPXc9Pnt3LnByZXZlbnREZWZhdWx0KCksdGhpcy5pc0RyYWdnaW5nPSEwLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsdGhpcy5oYW5kbGVNb3VzZU1vdmUpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNldXAiLHRoaXMuaGFuZGxlTW91c2VVcCl9O2hhbmRsZU1vdXNlTW92ZT13PT57aWYoIXRoaXMuaXNEcmFnZ2luZ3x8IXRoaXMuY29udGFpbmVyRWxlbWVudClyZXR1cm47bGV0IE09dGhpcy5jb250YWluZXJFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLEY9TS53aWR0aCxrPSh3LmNsaWVudFgtTS5sZWZ0KS9GKjEwMDtrPU1hdGgubWF4KHRoaXMubWluUGFuZWxTaXplLE1hdGgubWluKDEwMC10aGlzLm1pblBhbmVsU2l6ZSxrKSksdGhpcy5jdXJyZW50U3BsaXRSYXRpbz1rfTtoYW5kbGVNb3VzZVVwPSgpPT57dGhpcy5pc0RyYWdnaW5nPSExLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsdGhpcy5oYW5kbGVNb3VzZU1vdmUpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNldXAiLHRoaXMuaGFuZGxlTW91c2VVcCksdGhpcy5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoImRlZXMtd29ya3NwYWNlLW1vbmFjbyIpJiZ3aW5kb3cuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoInJlc2l6ZSIpKX07YXN5bmMgZGlzY29ubmVjdGVkQ2FsbGJhY2soKXthd2FpdCBzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsdGhpcy5oYW5kbGVNb3VzZU1vdmUpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNldXAiLHRoaXMuaGFuZGxlTW91c2VVcCl9c2V0U3BsaXRSYXRpbyh3KXt0aGlzLmN1cnJlbnRTcGxpdFJhdGlvPU1hdGgubWF4KHRoaXMubWluUGFuZWxTaXplLE1hdGgubWluKDEwMC10aGlzLm1pblBhbmVsU2l6ZSx3KSl9cmVzZXRTcGxpdFJhdGlvKCl7dGhpcy5jdXJyZW50U3BsaXRSYXRpbz10aGlzLnNwbGl0UmF0aW99c3RhdGlje1hjKGEscil9fTtyZXR1cm4gdj1hfSkoKX0pO3ZhciBmQnI9bCgoKT0+e3VCcigpfSk7dmFyIHBCcixoQnI9bCgoKT0+e1NlKCk7emEoKTt0MSgpO3BCcj0oKT0+U2AKICA8ZGVlcy1kZW1vd3JhcHBlcj4KICAgIDxzdHlsZT4KICAgICAgJHtsZWAKICAgICAgICAuZGVtby1jb250YWluZXIgewogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgICBnYXA6IDI0cHg7CiAgICAgICAgICBwYWRkaW5nOiAyNHB4OwogICAgICAgICAgbWF4LXdpZHRoOiA5MDBweDsKICAgICAgICAgIG1hcmdpbjogMCBhdXRvOwogICAgICAgIH0KICAgICAgYH0KICAgIDwvc3R5bGU+CgogICAgPGRpdiBjbGFzcz0iZGVtby1jb250YWluZXIiPgogICAgICA8IS0tIERlbW8gMTogSGVhZGluZ3MgLS0+CiAgICAgIDxkZWVzLXBhbmVsCiAgICAgICAgLnRpdGxlPSR7IkhlYWRpbmdzIn0KICAgICAgICAuc3VidGl0bGU9JHsiQWxsIGhlYWRpbmcgbGV2ZWxzIGZyb20gSDEgdG8gSDYifQogICAgICAgIC5ydW5BZnRlclJlbmRlcj0ke2FzeW5jIGU9Pnthd2FpdCBlLnF1ZXJ5U2VsZWN0b3IoImRlZXMtd29ya3NwYWNlLW1hcmtkb3dub3V0bGV0Iik/LnVwZGF0ZUh0bWxUZXh0KGAKICAgICAgICAgICAgPGgxPkhlYWRpbmcgTGV2ZWwgMTwvaDE+CiAgICAgICAgICAgIDxoMj5IZWFkaW5nIExldmVsIDI8L2gyPgogICAgICAgICAgICA8aDM+SGVhZGluZyBMZXZlbCAzPC9oMz4KICAgICAgICAgICAgPGg0PkhlYWRpbmcgTGV2ZWwgNDwvaDQ+CiAgICAgICAgICAgIDxoNT5IZWFkaW5nIExldmVsIDU8L2g1PgogICAgICAgICAgICA8aDY+SGVhZGluZyBMZXZlbCA2PC9oNj4KICAgICAgICAgIGApfX0KICAgICAgPgogICAgICAgIDxkZWVzLXdvcmtzcGFjZS1tYXJrZG93bm91dGxldD48L2RlZXMtd29ya3NwYWNlLW1hcmtkb3dub3V0bGV0PgogICAgICA8L2RlZXMtcGFuZWw+CgogICAgICA8IS0tIERlbW8gMjogVGV4dCBGb3JtYXR0aW5nIC0tPgogICAgICA8ZGVlcy1wYW5lbAogICAgICAgIC50aXRsZT0keyJUZXh0IEZvcm1hdHRpbmcifQogICAgICAgIC5zdWJ0aXRsZT0keyJCb2xkLCBpdGFsaWMsIGxpbmtzLCBjb2RlLCBhbmQga2V5Ym9hcmQgaW5wdXQifQogICAgICAgIC5ydW5BZnRlclJlbmRlcj0ke2FzeW5jIGU9Pnthd2FpdCBlLnF1ZXJ5U2VsZWN0b3IoImRlZXMtd29ya3NwYWNlLW1hcmtkb3dub3V0bGV0Iik/LnVwZGF0ZUh0bWxUZXh0KGAKICAgICAgICAgICAgPHA+VGhpcyBpcyBhIHBhcmFncmFwaCB3aXRoIDxzdHJvbmc+Ym9sZCB0ZXh0PC9zdHJvbmc+IGFuZCA8ZW0+aXRhbGljIHRleHQ8L2VtPi48L3A+CiAgICAgICAgICAgIDxwPllvdSBjYW4gYWxzbyB1c2UgPHN0cm9uZz48ZW0+Ym9sZCBpdGFsaWM8L2VtPjwvc3Ryb25nPiBmb3IgZW1waGFzaXMuPC9wPgogICAgICAgICAgICA8cD5IZXJlJ3MgYSA8YSBocmVmPSIjIj5saW5rIGV4YW1wbGU8L2E+IGFuZCBzb21lIDxjb2RlPmlubGluZSBjb2RlPC9jb2RlPi48L3A+CiAgICAgICAgICAgIDxwPlByZXNzIDxrYmQ+Q3RybDwva2JkPiArIDxrYmQ+Qzwva2JkPiB0byBjb3B5IHRleHQuPC9wPgogICAgICAgICAgICA8aHI+CiAgICAgICAgICAgIDxwPkFib3ZlIGlzIGEgaG9yaXpvbnRhbCBydWxlIHNlcGFyYXRvci48L3A+CiAgICAgICAgICBgKX19CiAgICAgID4KICAgICAgICA8ZGVlcy13b3Jrc3BhY2UtbWFya2Rvd25vdXRsZXQ+PC9kZWVzLXdvcmtzcGFjZS1tYXJrZG93bm91dGxldD4KICAgICAgPC9kZWVzLXBhbmVsPgoKICAgICAgPCEtLSBEZW1vIDM6IExpc3RzIC0tPgogICAgICA8ZGVlcy1wYW5lbAogICAgICAgIC50aXRsZT0keyJMaXN0cyJ9CiAgICAgICAgLnN1YnRpdGxlPSR7Ik9yZGVyZWQsIHVub3JkZXJlZCwgYW5kIHRhc2sgbGlzdHMifQogICAgICAgIC5ydW5BZnRlclJlbmRlcj0ke2FzeW5jIGU9Pnthd2FpdCBlLnF1ZXJ5U2VsZWN0b3IoImRlZXMtd29ya3NwYWNlLW1hcmtkb3dub3V0bGV0Iik/LnVwZGF0ZUh0bWxUZXh0KGAKICAgICAgICAgICAgPGgzPlVub3JkZXJlZCBMaXN0PC9oMz4KICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgIDxsaT5GaXJzdCBpdGVtPC9saT4KICAgICAgICAgICAgICA8bGk+U2Vjb25kIGl0ZW0KICAgICAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgICAgPGxpPk5lc3RlZCBpdGVtIDE8L2xpPgogICAgICAgICAgICAgICAgICA8bGk+TmVzdGVkIGl0ZW0gMjwvbGk+CiAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgPGxpPlRoaXJkIGl0ZW08L2xpPgogICAgICAgICAgICA8L3VsPgoKICAgICAgICAgICAgPGgzPk9yZGVyZWQgTGlzdDwvaDM+CiAgICAgICAgICAgIDxvbD4KICAgICAgICAgICAgICA8bGk+U3RlcCBvbmU8L2xpPgogICAgICAgICAgICAgIDxsaT5TdGVwIHR3bzwvbGk+CiAgICAgICAgICAgICAgPGxpPlN0ZXAgdGhyZWU8L2xpPgogICAgICAgICAgICA8L29sPgoKICAgICAgICAgICAgPGgzPlRhc2sgTGlzdDwvaDM+CiAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICA8bGkgY2xhc3M9InRhc2stbGlzdC1pdGVtIj48aW5wdXQgdHlwZT0iY2hlY2tib3giIGNoZWNrZWQgZGlzYWJsZWQ+IENvbXBsZXRlZCB0YXNrPC9saT4KICAgICAgICAgICAgICA8bGkgY2xhc3M9InRhc2stbGlzdC1pdGVtIj48aW5wdXQgdHlwZT0iY2hlY2tib3giIGRpc2FibGVkPiBQZW5kaW5nIHRhc2s8L2xpPgogICAgICAgICAgICAgIDxsaSBjbGFzcz0idGFzay1saXN0LWl0ZW0iPjxpbnB1dCB0eXBlPSJjaGVja2JveCIgZGlzYWJsZWQ+IEFub3RoZXIgdGFzazwvbGk+CiAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICBgKX19CiAgICAgID4KICAgICAgICA8ZGVlcy13b3Jrc3BhY2UtbWFya2Rvd25vdXRsZXQ+PC9kZWVzLXdvcmtzcGFjZS1tYXJrZG93bm91dGxldD4KICAgICAgPC9kZWVzLXBhbmVsPgoKICAgICAgPCEtLSBEZW1vIDQ6IENvZGUgQmxvY2tzIC0tPgogICAgICA8ZGVlcy1wYW5lbAogICAgICAgIC50aXRsZT0keyJDb2RlIEJsb2NrcyJ9CiAgICAgICAgLnN1YnRpdGxlPSR7IlN5bnRheCBoaWdobGlnaHRlZCBjb2RlIGV4YW1wbGVzIn0KICAgICAgICAucnVuQWZ0ZXJSZW5kZXI9JHthc3luYyBlPT57YXdhaXQgZS5xdWVyeVNlbGVjdG9yKCJkZWVzLXdvcmtzcGFjZS1tYXJrZG93bm91dGxldCIpPy51cGRhdGVIdG1sVGV4dChgCiAgICAgICAgICAgIDxwPklubGluZSBjb2RlOiA8Y29kZT5jb25zdCBncmVldGluZyA9ICJIZWxsbywgV29ybGQhIjs8L2NvZGU+PC9wPgoKICAgICAgICAgICAgPGgzPlR5cGVTY3JpcHQgRXhhbXBsZTwvaDM+CiAgICAgICAgICAgIDxwcmU+PGNvZGU+PHNwYW4gY2xhc3M9ImhsanMta2V5d29yZCI+aW1wb3J0PC9zcGFuPiB7IGh0bWwsIGNzcyB9IDxzcGFuIGNsYXNzPSJobGpzLWtleXdvcmQiPmZyb208L3NwYW4+IDxzcGFuIGNsYXNzPSJobGpzLXN0cmluZyI+J0BkZXNpZ24uZXN0YXRlL2RlZXMtZWxlbWVudCc8L3NwYW4+OwoKPHNwYW4gY2xhc3M9ImhsanMta2V5d29yZCI+aW50ZXJmYWNlPC9zcGFuPiA8c3BhbiBjbGFzcz0iaGxqcy10aXRsZSI+SVVzZXI8L3NwYW4+IHsKICA8c3BhbiBjbGFzcz0iaGxqcy1hdHRyIj5uYW1lPC9zcGFuPjogPHNwYW4gY2xhc3M9ImhsanMtYnVpbHRfaW4iPnN0cmluZzwvc3Bhbj47CiAgPHNwYW4gY2xhc3M9ImhsanMtYXR0ciI+ZW1haWw8L3NwYW4+OiA8c3BhbiBjbGFzcz0iaGxqcy1idWlsdF9pbiI+c3RyaW5nPC9zcGFuPjsKICA8c3BhbiBjbGFzcz0iaGxqcy1hdHRyIj5hZ2U8L3NwYW4+PzogPHNwYW4gY2xhc3M9ImhsanMtYnVpbHRfaW4iPm51bWJlcjwvc3Bhbj47Cn0KCjxzcGFuIGNsYXNzPSJobGpzLWtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0iaGxqcy10aXRsZSI+Z2V0VXNlcjwvc3Bhbj4gPSA8c3BhbiBjbGFzcz0iaGxqcy1rZXl3b3JkIj5hc3luYzwvc3Bhbj4gKDxzcGFuIGNsYXNzPSJobGpzLWF0dHIiPmlkPC9zcGFuPjogPHNwYW4gY2xhc3M9ImhsanMtYnVpbHRfaW4iPnN0cmluZzwvc3Bhbj4pOiA8c3BhbiBjbGFzcz0iaGxqcy1idWlsdF9pbiI+UHJvbWlzZTwvc3Bhbj4mbHQ7SVVzZXImZ3Q7ID0mZ3Q7IHsKICA8c3BhbiBjbGFzcz0iaGxqcy1rZXl3b3JkIj5jb25zdDwvc3Bhbj4gcmVzcG9uc2UgPSA8c3BhbiBjbGFzcz0iaGxqcy1rZXl3b3JkIj5hd2FpdDwvc3Bhbj4gZmV0Y2goXGAvYXBpL3VzZXJzL1wke2lkfVxgKTsKICA8c3BhbiBjbGFzcz0iaGxqcy1rZXl3b3JkIj5yZXR1cm48L3NwYW4+IHJlc3BvbnNlLmpzb24oKTsKfTs8L2NvZGU+PC9wcmU+CgogICAgICAgICAgICA8aDM+SlNPTiBFeGFtcGxlPC9oMz4KICAgICAgICAgICAgPHByZT48Y29kZT57CiAgPHNwYW4gY2xhc3M9ImhsanMtYXR0ciI+Im5hbWUiPC9zcGFuPjogPHNwYW4gY2xhc3M9ImhsanMtc3RyaW5nIj4iZGVlcy1jYXRhbG9nIjwvc3Bhbj4sCiAgPHNwYW4gY2xhc3M9ImhsanMtYXR0ciI+InZlcnNpb24iPC9zcGFuPjogPHNwYW4gY2xhc3M9ImhsanMtc3RyaW5nIj4iMy4wLjAiPC9zcGFuPiwKICA8c3BhbiBjbGFzcz0iaGxqcy1hdHRyIj4iZGVwZW5kZW5jaWVzIjwvc3Bhbj46IHsKICAgIDxzcGFuIGNsYXNzPSJobGpzLWF0dHIiPiJAZGVzaWduLmVzdGF0ZS9kZWVzLWVsZW1lbnQiPC9zcGFuPjogPHNwYW4gY2xhc3M9ImhsanMtc3RyaW5nIj4iXjIuMC4wIjwvc3Bhbj4KICB9Cn08L2NvZGU+PC9wcmU+CiAgICAgICAgICBgKX19CiAgICAgID4KICAgICAgICA8ZGVlcy13b3Jrc3BhY2UtbWFya2Rvd25vdXRsZXQ+PC9kZWVzLXdvcmtzcGFjZS1tYXJrZG93bm91dGxldD4KICAgICAgPC9kZWVzLXBhbmVsPgoKICAgICAgPCEtLSBEZW1vIDU6IFRhYmxlcyAtLT4KICAgICAgPGRlZXMtcGFuZWwKICAgICAgICAudGl0bGU9JHsiVGFibGVzIn0KICAgICAgICAuc3VidGl0bGU9JHsiU3R5bGVkIHRhYmxlcyB3aXRoIGFsdGVybmF0aW5nIHJvd3MifQogICAgICAgIC5ydW5BZnRlclJlbmRlcj0ke2FzeW5jIGU9Pnthd2FpdCBlLnF1ZXJ5U2VsZWN0b3IoImRlZXMtd29ya3NwYWNlLW1hcmtkb3dub3V0bGV0Iik/LnVwZGF0ZUh0bWxUZXh0KGAKICAgICAgICAgICAgPHRhYmxlPgogICAgICAgICAgICAgIDx0aGVhZD4KICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgPHRoPkZlYXR1cmU8L3RoPgogICAgICAgICAgICAgICAgICA8dGg+U3RhdHVzPC90aD4KICAgICAgICAgICAgICAgICAgPHRoPlByaW9yaXR5PC90aD4KICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgPC90aGVhZD4KICAgICAgICAgICAgICA8dGJvZHk+CiAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgIDx0ZD5EYXJrIG1vZGUgc3VwcG9ydDwvdGQ+CiAgICAgICAgICAgICAgICAgIDx0ZD5Db21wbGV0ZWQ8L3RkPgogICAgICAgICAgICAgICAgICA8dGQ+SGlnaDwvdGQ+CiAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICA8dGQ+UmVzcG9uc2l2ZSBkZXNpZ248L3RkPgogICAgICAgICAgICAgICAgICA8dGQ+SW4gUHJvZ3Jlc3M8L3RkPgogICAgICAgICAgICAgICAgICA8dGQ+TWVkaXVtPC90ZD4KICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgIDx0ZD5BY2Nlc3NpYmlsaXR5PC90ZD4KICAgICAgICAgICAgICAgICAgPHRkPlBsYW5uZWQ8L3RkPgogICAgICAgICAgICAgICAgICA8dGQ+SGlnaDwvdGQ+CiAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICA8dGQ+RG9jdW1lbnRhdGlvbjwvdGQ+CiAgICAgICAgICAgICAgICAgIDx0ZD5JbiBQcm9ncmVzczwvdGQ+CiAgICAgICAgICAgICAgICAgIDx0ZD5Mb3c8L3RkPgogICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICA8L3Rib2R5PgogICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgYCl9fQogICAgICA+CiAgICAgICAgPGRlZXMtd29ya3NwYWNlLW1hcmtkb3dub3V0bGV0PjwvZGVlcy13b3Jrc3BhY2UtbWFya2Rvd25vdXRsZXQ+CiAgICAgIDwvZGVlcy1wYW5lbD4KCiAgICAgIDwhLS0gRGVtbyA2OiBCbG9ja3F1b3RlcyAmIEFsZXJ0cyAtLT4KICAgICAgPGRlZXMtcGFuZWwKICAgICAgICAudGl0bGU9JHsiQmxvY2txdW90ZXMgJiBBbGVydHMifQogICAgICAgIC5zdWJ0aXRsZT0keyJRdW90ZXMgYW5kIEdpdEh1Yi1zdHlsZSBhbGVydHMifQogICAgICAgIC5ydW5BZnRlclJlbmRlcj0ke2FzeW5jIGU9Pnthd2FpdCBlLnF1ZXJ5U2VsZWN0b3IoImRlZXMtd29ya3NwYWNlLW1hcmtkb3dub3V0bGV0Iik/LnVwZGF0ZUh0bWxUZXh0KGAKICAgICAgICAgICAgPGJsb2NrcXVvdGU+CiAgICAgICAgICAgICAgPHA+VGhpcyBpcyBhIHN0YW5kYXJkIGJsb2NrcXVvdGUuIEl0J3MgZ3JlYXQgZm9yIGhpZ2hsaWdodGluZyBpbXBvcnRhbnQgaW5mb3JtYXRpb24gb3IgcXVvdGVzIGZyb20gb3RoZXIgc291cmNlcy48L3A+CiAgICAgICAgICAgIDwvYmxvY2txdW90ZT4KCiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1hcmtkb3duLWFsZXJ0IG1hcmtkb3duLWFsZXJ0LW5vdGUiPgogICAgICAgICAgICAgIDxwPjxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gVGhpcyBpcyBhbiBpbmZvcm1hdGlvbmFsIG5vdGUgdG8gZHJhdyBhdHRlbnRpb24gdG8gaW1wb3J0YW50IGRldGFpbHMuPC9wPgogICAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1hcmtkb3duLWFsZXJ0IG1hcmtkb3duLWFsZXJ0LXRpcCI+CiAgICAgICAgICAgICAgPHA+PHN0cm9uZz5UaXA6PC9zdHJvbmc+IEhlcmUncyBhIGhlbHBmdWwgdGlwIHRvIGltcHJvdmUgeW91ciB3b3JrZmxvdy48L3A+CiAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWFya2Rvd24tYWxlcnQgbWFya2Rvd24tYWxlcnQtaW1wb3J0YW50Ij4KICAgICAgICAgICAgICA8cD48c3Ryb25nPkltcG9ydGFudDo8L3N0cm9uZz4gVGhpcyBpbmZvcm1hdGlvbiBpcyBjcnVjaWFsIGZvciB1bmRlcnN0YW5kaW5nIHRoZSB0b3BpYy48L3A+CiAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWFya2Rvd24tYWxlcnQgbWFya2Rvd24tYWxlcnQtd2FybmluZyI+CiAgICAgICAgICAgICAgPHA+PHN0cm9uZz5XYXJuaW5nOjwvc3Ryb25nPiBCZSBjYXJlZnVsIHdoZW4gcGVyZm9ybWluZyB0aGlzIGFjdGlvbi48L3A+CiAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWFya2Rvd24tYWxlcnQgbWFya2Rvd24tYWxlcnQtY2F1dGlvbiI+CiAgICAgICAgICAgICAgPHA+PHN0cm9uZz5DYXV0aW9uOjwvc3Ryb25nPiBUaGlzIGFjdGlvbiBtYXkgaGF2ZSB1bmludGVuZGVkIGNvbnNlcXVlbmNlcy48L3A+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgYCl9fQogICAgICA+CiAgICAgICAgPGRlZXMtd29ya3NwYWNlLW1hcmtkb3dub3V0bGV0PjwvZGVlcy13b3Jrc3BhY2UtbWFya2Rvd25vdXRsZXQ+CiAgICAgIDwvZGVlcy1wYW5lbD4KCiAgICAgIDwhLS0gRGVtbyA3OiBGdWxsIERvY3VtZW50IC0tPgogICAgICA8ZGVlcy1wYW5lbAogICAgICAgIC50aXRsZT0keyJGdWxsIERvY3VtZW50In0KICAgICAgICAuc3VidGl0bGU9JHsiQSBjb21wbGV0ZSBtYXJrZG93biBkb2N1bWVudCBleGFtcGxlIn0KICAgICAgICAucnVuQWZ0ZXJSZW5kZXI9JHthc3luYyBlPT57YXdhaXQgZS5xdWVyeVNlbGVjdG9yKCJkZWVzLXdvcmtzcGFjZS1tYXJrZG93bm91dGxldCIpPy51cGRhdGVIdG1sVGV4dChgCiAgICAgICAgICAgIDxoMT5HZXR0aW5nIFN0YXJ0ZWQgR3VpZGU8L2gxPgogICAgICAgICAgICA8cD5XZWxjb21lIHRvIHRoZSA8c3Ryb25nPmRlZXMtY2F0YWxvZzwvc3Ryb25nPiBjb21wb25lbnQgbGlicmFyeS4gVGhpcyBndWlkZSB3aWxsIGhlbHAgeW91IGdldCB1cCBhbmQgcnVubmluZyBxdWlja2x5LjwvcD4KCiAgICAgICAgICAgIDxoMj5JbnN0YWxsYXRpb248L2gyPgogICAgICAgICAgICA8cD5JbnN0YWxsIHRoZSBwYWNrYWdlIHVzaW5nIHlvdXIgcHJlZmVycmVkIHBhY2thZ2UgbWFuYWdlcjo8L3A+CiAgICAgICAgICAgIDxwcmU+PGNvZGU+PHNwYW4gY2xhc3M9ImhsanMtY29tbWVudCI+IyBVc2luZyBwbnBtIChyZWNvbW1lbmRlZCk8L3NwYW4+CnBucG0gYWRkIEBkZXNpZ24uZXN0YXRlL2RlZXMtY2F0YWxvZwoKPHNwYW4gY2xhc3M9ImhsanMtY29tbWVudCI+IyBVc2luZyBucG08L3NwYW4+Cm5wbSBpbnN0YWxsIEBkZXNpZ24uZXN0YXRlL2RlZXMtY2F0YWxvZzwvY29kZT48L3ByZT4KCiAgICAgICAgICAgIDxoMj5CYXNpYyBVc2FnZTwvaDI+CiAgICAgICAgICAgIDxwPkltcG9ydCBhbmQgdXNlIGNvbXBvbmVudHMgaW4geW91ciBUeXBlU2NyaXB0IGZpbGVzOjwvcD4KICAgICAgICAgICAgPHByZT48Y29kZT48c3BhbiBjbGFzcz0iaGxqcy1rZXl3b3JkIj5pbXBvcnQ8L3NwYW4+IHsgRGVlc0J1dHRvbiB9IDxzcGFuIGNsYXNzPSJobGpzLWtleXdvcmQiPmZyb208L3NwYW4+IDxzcGFuIGNsYXNzPSJobGpzLXN0cmluZyI+J0BkZXNpZ24uZXN0YXRlL2RlZXMtY2F0YWxvZyc8L3NwYW4+OwoKPHNwYW4gY2xhc3M9ImhsanMtY29tbWVudCI+Ly8gVXNlIGluIHlvdXIgdGVtcGxhdGVzPC9zcGFuPgpodG1sXGAmbHQ7ZGVlcy1idXR0b24mZ3Q7Q2xpY2sgbWUmbHQ7L2RlZXMtYnV0dG9uJmd0O1xgPC9jb2RlPjwvcHJlPgoKICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWFya2Rvd24tYWxlcnQgbWFya2Rvd24tYWxlcnQtdGlwIj4KICAgICAgICAgICAgICA8cD48c3Ryb25nPlRpcDo8L3N0cm9uZz4gQ2hlY2sgdGhlIGRlbW8gc2hvd2Nhc2UgZm9yIGxpdmUgZXhhbXBsZXMgb2YgYWxsIGNvbXBvbmVudHMuPC9wPgogICAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAgIDxoMj5BdmFpbGFibGUgQ29tcG9uZW50czwvaDI+CiAgICAgICAgICAgIDx0YWJsZT4KICAgICAgICAgICAgICA8dGhlYWQ+CiAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgIDx0aD5Db21wb25lbnQ8L3RoPgogICAgICAgICAgICAgICAgICA8dGg+RGVzY3JpcHRpb248L3RoPgogICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICA8L3RoZWFkPgogICAgICAgICAgICAgIDx0Ym9keT4KICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgPHRkPjxjb2RlPmRlZXMtYnV0dG9uPC9jb2RlPjwvdGQ+CiAgICAgICAgICAgICAgICAgIDx0ZD5QcmltYXJ5IGJ1dHRvbiBjb21wb25lbnQ8L3RkPgogICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgPHRkPjxjb2RlPmRlZXMtaW5wdXQtdGV4dDwvY29kZT48L3RkPgogICAgICAgICAgICAgICAgICA8dGQ+VGV4dCBpbnB1dCBmaWVsZDwvdGQ+CiAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICA8dGQ+PGNvZGU+ZGVlcy10YWJsZTwvY29kZT48L3RkPgogICAgICAgICAgICAgICAgICA8dGQ+RGF0YSB0YWJsZSB3aXRoIHNvcnRpbmc8L3RkPgogICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgPHRkPjxjb2RlPmRlZXMtbW9kYWw8L2NvZGU+PC90ZD4KICAgICAgICAgICAgICAgICAgPHRkPk1vZGFsIGRpYWxvZzwvdGQ+CiAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgIDwvdGJvZHk+CiAgICAgICAgICAgIDwvdGFibGU+CgogICAgICAgICAgICA8aDI+TmV4dCBTdGVwczwvaDI+CiAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICA8bGk+RXhwbG9yZSB0aGUgPGEgaHJlZj0iIyI+Y29tcG9uZW50IGRvY3VtZW50YXRpb248L2E+PC9saT4KICAgICAgICAgICAgICA8bGk+Q2hlY2sgb3V0IHRoZSA8YSBocmVmPSIjIj50aGVtaW5nIGd1aWRlPC9hPjwvbGk+CiAgICAgICAgICAgICAgPGxpPkpvaW4gb3VyIDxhIGhyZWY9IiMiPmNvbW11bml0eSBEaXNjb3JkPC9hPjwvbGk+CiAgICAgICAgICAgIDwvdWw+CgogICAgICAgICAgICA8YmxvY2txdW90ZT4KICAgICAgICAgICAgICA8cD4iVGhlIGJlc3QgY29tcG9uZW50IGxpYnJhcnkgaXMgb25lIHRoYXQgZ2V0cyBvdXQgb2YgeW91ciB3YXkuIiBcdTIwMTQgRGVzaWduIFN5c3RlbXMgVGVhbTwvcD4KICAgICAgICAgICAgPC9ibG9ja3F1b3RlPgogICAgICAgICAgYCl9fQogICAgICA+CiAgICAgICAgPGRlZXMtd29ya3NwYWNlLW1hcmtkb3dub3V0bGV0PjwvZGVlcy13b3Jrc3BhY2UtbWFya2Rvd25vdXRsZXQ+CiAgICAgIDwvZGVlcy1wYW5lbD4KICAgIDwvZGl2PgogIDwvZGVlcy1kZW1vd3JhcHBlcj4KYH0pO3ZhciBLdmEsSnZhLG1CcixnQnI9bCgoKT0+e1NlKCk7b3QoKTtoQnIoKTtLdmE9ZnVuY3Rpb24oZSx0LHIsYSxpLG8pe2Z1bmN0aW9uIG4odil7aWYodiE9PXZvaWQgMCYmdHlwZW9mIHYhPSJmdW5jdGlvbiIpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24gZXhwZWN0ZWQiKTtyZXR1cm4gdn1mb3IodmFyIHM9YS5raW5kLGM9cz09PSJnZXR0ZXIiPyJnZXQiOnM9PT0ic2V0dGVyIj8ic2V0IjoidmFsdWUiLGQ9IXQmJmU/YS5zdGF0aWM/ZTplLnByb3RvdHlwZTpudWxsLGY9dHx8KGQ/T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkLGEubmFtZSk6e30pLHUscD0hMSxoPXIubGVuZ3RoLTE7aD49MDtoLS0pe3ZhciBiPXt9O2Zvcih2YXIgeCBpbiBhKWJbeF09eD09PSJhY2Nlc3MiP3t9OmFbeF07Zm9yKHZhciB4IGluIGEuYWNjZXNzKWIuYWNjZXNzW3hdPWEuYWNjZXNzW3hdO2IuYWRkSW5pdGlhbGl6ZXI9ZnVuY3Rpb24odil7aWYocCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgYWRkIGluaXRpYWxpemVycyBhZnRlciBkZWNvcmF0aW9uIGhhcyBjb21wbGV0ZWQiKTtvLnB1c2gobih2fHxudWxsKSl9O3ZhciBnPSgwLHJbaF0pKHM9PT0iYWNjZXNzb3IiP3tnZXQ6Zi5nZXQsc2V0OmYuc2V0fTpmW2NdLGIpO2lmKHM9PT0iYWNjZXNzb3IiKXtpZihnPT09dm9pZCAwKWNvbnRpbnVlO2lmKGc9PT1udWxsfHx0eXBlb2YgZyE9Im9iamVjdCIpdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGV4cGVjdGVkIik7KHU9bihnLmdldCkpJiYoZi5nZXQ9dSksKHU9bihnLnNldCkpJiYoZi5zZXQ9dSksKHU9bihnLmluaXQpKSYmaS51bnNoaWZ0KHUpfWVsc2UodT1uKGcpKSYmKHM9PT0iZmllbGQiP2kudW5zaGlmdCh1KTpmW2NdPXUpfWQmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShkLGEubmFtZSxmKSxwPSEwfSxKdmE9ZnVuY3Rpb24oZSx0LHIpe2Zvcih2YXIgYT1hcmd1bWVudHMubGVuZ3RoPjIsaT0wO2k8dC5sZW5ndGg7aSsrKXI9YT90W2ldLmNhbGwoZSxyKTp0W2ldLmNhbGwoZSk7cmV0dXJuIGE/cjp2b2lkIDB9LG1Ccj0oKCk9PntsZXQgZT1bemUoImRlZXMtd29ya3NwYWNlLW1hcmtkb3dub3V0bGV0IildLHQscj1bXSxhLGk9RGU7dmFyIG89Y2xhc3MgZXh0ZW5kcyBpe3N0YXRpY3thPXRoaXN9c3RhdGlje2xldCBuPXR5cGVvZiBTeW1ib2w9PSJmdW5jdGlvbiImJlN5bWJvbC5tZXRhZGF0YT9PYmplY3QuY3JlYXRlKGlbU3ltYm9sLm1ldGFkYXRhXT8/bnVsbCk6dm9pZCAwO0t2YShudWxsLHQ9e3ZhbHVlOmF9LGUse2tpbmQ6ImNsYXNzIixuYW1lOmEubmFtZSxtZXRhZGF0YTpufSxudWxsLHIpLG89YT10LnZhbHVlLG4mJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLFN5bWJvbC5tZXRhZGF0YSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6bn0pfXN0YXRpYyBkZW1vPXBCcjtzdGF0aWMgZGVtb0dyb3Vwcz1bIldvcmtzcGFjZSJdO3N0YXRpYyBzdHlsZXM9W1BlLG0uZGVmYXVsdFN0eWxlcyxsZWAKICAgICAgOmhvc3QgewogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICAgIGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsICdTZWdvZSBVSScsICdOb3RvIFNhbnMnLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmOwogICAgICAgIGZvbnQtc2l6ZTogMTZweDsKICAgICAgICBsaW5lLWhlaWdodDogMS42OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzI0MjkyZiIsIiNlNmVkZjMiKX07CiAgICAgIH0KCiAgICAgIC5vdXRsZXQgewogICAgICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDsKICAgICAgfQoKICAgICAgLyogSGVhZGluZ3MgKi8KICAgICAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7CiAgICAgICAgbWFyZ2luLXRvcDogMjRweDsKICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjU7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMWYyMzI4IiwiI2YwZjZmYyIpfTsKICAgICAgfQoKICAgICAgaDEgewogICAgICAgIGZvbnQtc2l6ZTogMmVtOwogICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjNlbTsKICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNkMWQ5ZTAiLCIjMzAzNjNkIil9OwogICAgICB9CgogICAgICBoMiB7CiAgICAgICAgZm9udC1zaXplOiAxLjVlbTsKICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC4zZW07CiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZDFkOWUwIiwiIzMwMzYzZCIpfTsKICAgICAgfQoKICAgICAgaDMgewogICAgICAgIGZvbnQtc2l6ZTogMS4yNWVtOwogICAgICB9CgogICAgICBoNCB7CiAgICAgICAgZm9udC1zaXplOiAxZW07CiAgICAgIH0KCiAgICAgIGg1IHsKICAgICAgICBmb250LXNpemU6IDAuODc1ZW07CiAgICAgIH0KCiAgICAgIGg2IHsKICAgICAgICBmb250LXNpemU6IDAuODVlbTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM2NTZkNzYiLCIjOGI5NDllIil9OwogICAgICB9CgogICAgICAvKiBQYXJhZ3JhcGhzIGFuZCB0ZXh0ICovCiAgICAgIHAgewogICAgICAgIG1hcmdpbi10b3A6IDA7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDsKICAgICAgfQoKICAgICAgLyogTGlua3MgKi8KICAgICAgYSB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMDk2OWRhIiwiIzU4YTZmZiIpfTsKICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7CiAgICAgIH0KCiAgICAgIGE6aG92ZXIgewogICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOwogICAgICB9CgogICAgICAvKiBTdHJvbmcgYW5kIGVtcGhhc2lzICovCiAgICAgIHN0cm9uZyB7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMxZjIzMjgiLCIjZjBmNmZjIil9OwogICAgICB9CgogICAgICBlbSB7CiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljOwogICAgICB9CgogICAgICAvKiBMaXN0cyAqLwogICAgICB1bCwgb2wgewogICAgICAgIG1hcmdpbi10b3A6IDA7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDsKICAgICAgICBwYWRkaW5nLWxlZnQ6IDJlbTsKICAgICAgfQoKICAgICAgbGkgewogICAgICAgIG1hcmdpbi10b3A6IDRweDsKICAgICAgfQoKICAgICAgbGkgKyBsaSB7CiAgICAgICAgbWFyZ2luLXRvcDogNHB4OwogICAgICB9CgogICAgICB1bCB1bCwgdWwgb2wsIG9sIHVsLCBvbCBvbCB7CiAgICAgICAgbWFyZ2luLXRvcDogMDsKICAgICAgICBtYXJnaW4tYm90dG9tOiAwOwogICAgICB9CgogICAgICAvKiBCbG9ja3F1b3RlcyAqLwogICAgICBibG9ja3F1b3RlIHsKICAgICAgICBtYXJnaW46IDAgMCAxNnB4IDA7CiAgICAgICAgcGFkZGluZzogMCAxZW07CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNjU2ZDc2IiwiIzhiOTQ5ZSIpfTsKICAgICAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZDFkOWUwIiwiIzMwMzYzZCIpfTsKICAgICAgfQoKICAgICAgYmxvY2txdW90ZSA+IDpmaXJzdC1jaGlsZCB7CiAgICAgICAgbWFyZ2luLXRvcDogMDsKICAgICAgfQoKICAgICAgYmxvY2txdW90ZSA+IDpsYXN0LWNoaWxkIHsKICAgICAgICBtYXJnaW4tYm90dG9tOiAwOwogICAgICB9CgogICAgICAvKiBJbmxpbmUgY29kZSAqLwogICAgICBjb2RlIHsKICAgICAgICBwYWRkaW5nOiAwLjJlbSAwLjRlbTsKICAgICAgICBtYXJnaW46IDA7CiAgICAgICAgZm9udC1zaXplOiA4NSU7CiAgICAgICAgZm9udC1mYW1pbHk6IHVpLW1vbm9zcGFjZSwgU0ZNb25vLVJlZ3VsYXIsICdTRiBNb25vJywgTWVubG8sIENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJywgbW9ub3NwYWNlOwogICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR7bS5iZFRoZW1lKCJyZ2JhKDE3NSwgMTg0LCAxOTMsIDAuMikiLCJyZ2JhKDExMCwgMTE4LCAxMjksIDAuNCkiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgIHdoaXRlLXNwYWNlOiBicmVhay1zcGFjZXM7CiAgICAgIH0KCiAgICAgIC8qIENvZGUgYmxvY2tzICovCiAgICAgIHByZSB7CiAgICAgICAgbWFyZ2luLXRvcDogMDsKICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4OwogICAgICAgIHBhZGRpbmc6IDE2cHg7CiAgICAgICAgb3ZlcmZsb3c6IGF1dG87CiAgICAgICAgZm9udC1zaXplOiA4NSU7CiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDU7CiAgICAgICAgZm9udC1mYW1pbHk6IHVpLW1vbm9zcGFjZSwgU0ZNb25vLVJlZ3VsYXIsICdTRiBNb25vJywgTWVubG8sIENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJywgbW9ub3NwYWNlOwogICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR7bS5iZFRoZW1lKCIjZjZmOGZhIiwiIzE2MWIyMiIpfTsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgd29yZC13cmFwOiBub3JtYWw7CiAgICAgIH0KCiAgICAgIHByZSBjb2RlIHsKICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgICBwYWRkaW5nOiAwOwogICAgICAgIG1hcmdpbjogMDsKICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTsKICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDsKICAgICAgICB3b3JkLXdyYXA6IG5vcm1hbDsKICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsKICAgICAgICBib3JkZXI6IDA7CiAgICAgICAgZm9udC1zaXplOiAxMDAlOwogICAgICAgIHdoaXRlLXNwYWNlOiBwcmU7CiAgICAgIH0KCiAgICAgIC8qIFRhYmxlcyAqLwogICAgICB0YWJsZSB7CiAgICAgICAgd2lkdGg6IG1heC1jb250ZW50OwogICAgICAgIG1heC13aWR0aDogMTAwJTsKICAgICAgICBtYXJnaW4tdG9wOiAwOwogICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7CiAgICAgICAgYm9yZGVyLXNwYWNpbmc6IDA7CiAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsKICAgICAgICBvdmVyZmxvdzogYXV0bzsKICAgICAgICBkaXNwbGF5OiBibG9jazsKICAgICAgfQoKICAgICAgdGFibGUgdGggewogICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgcGFkZGluZzogNnB4IDEzcHg7CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNkMWQ5ZTAiLCIjMzAzNjNkIil9OwogICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR7bS5iZFRoZW1lKCIjZjZmOGZhIiwiIzE2MWIyMiIpfTsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMxZjIzMjgiLCIjZTZlZGYzIil9OwogICAgICB9CgogICAgICB0YWJsZSB0ZCB7CiAgICAgICAgcGFkZGluZzogNnB4IDEzcHg7CiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHttLmJkVGhlbWUoIiNkMWQ5ZTAiLCIjMzAzNjNkIil9OwogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzFmMjMyOCIsIiNlNmVkZjMiKX07CiAgICAgIH0KCiAgICAgIHRhYmxlIHRyIHsKICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke20uYmRUaGVtZSgiI2ZmZmZmZiIsIiMwZDExMTciKX07CiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR7bS5iZFRoZW1lKCIjZDFkOWUwIiwiIzIxMjYyZCIpfTsKICAgICAgfQoKICAgICAgdGFibGUgdHI6bnRoLWNoaWxkKDJuKSB7CiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHttLmJkVGhlbWUoIiNmNmY4ZmEiLCIjMTYxYjIyIil9OwogICAgICB9CgogICAgICAvKiBIb3Jpem9udGFsIHJ1bGVzICovCiAgICAgIGhyIHsKICAgICAgICBoZWlnaHQ6IDRweDsKICAgICAgICBwYWRkaW5nOiAwOwogICAgICAgIG1hcmdpbjogMjRweCAwOwogICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR7bS5iZFRoZW1lKCIjZDFkOWUwIiwiIzMwMzYzZCIpfTsKICAgICAgICBib3JkZXI6IDA7CiAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4OwogICAgICB9CgogICAgICAvKiBJbWFnZXMgKi8KICAgICAgaW1nIHsKICAgICAgICBtYXgtd2lkdGg6IDEwMCU7CiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgIH0KCiAgICAgIC8qIFRhc2sgbGlzdHMgKi8KICAgICAgLnRhc2stbGlzdC1pdGVtIHsKICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7CiAgICAgIH0KCiAgICAgIC50YXNrLWxpc3QtaXRlbSBpbnB1dCB7CiAgICAgICAgbWFyZ2luOiAwIDAuMmVtIDAuMjVlbSAtMS40ZW07CiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAgICAgfQoKICAgICAgLyogRGVmaW5pdGlvbiBsaXN0cyAqLwogICAgICBkbCB7CiAgICAgICAgcGFkZGluZzogMDsKICAgICAgfQoKICAgICAgZGwgZHQgewogICAgICAgIHBhZGRpbmc6IDA7CiAgICAgICAgbWFyZ2luLXRvcDogMTZweDsKICAgICAgICBmb250LXNpemU6IDFlbTsKICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgfQoKICAgICAgZGwgZGQgewogICAgICAgIHBhZGRpbmc6IDAgMTZweDsKICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4OwogICAgICB9CgogICAgICAvKiBLZXlib2FyZCBpbnB1dCAqLwogICAgICBrYmQgewogICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgICAgICBwYWRkaW5nOiAzcHggNXB4OwogICAgICAgIGZvbnQtc2l6ZTogMTFweDsKICAgICAgICBmb250LWZhbWlseTogdWktbW9ub3NwYWNlLCBTRk1vbm8tUmVndWxhciwgJ1NGIE1vbm8nLCBNZW5sbywgQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBtb25vc3BhY2U7CiAgICAgICAgbGluZS1oZWlnaHQ6IDEwcHg7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjMWYyMzI4IiwiI2U2ZWRmMyIpfTsKICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR7bS5iZFRoZW1lKCIjZjZmOGZhIiwiIzE2MWIyMiIpfTsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2QxZDllMCIsIiMzMDM2M2QiKX07CiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgLTFweCAwICR7bS5iZFRoZW1lKCIjZDFkOWUwIiwiIzMwMzYzZCIpfTsKICAgICAgfQoKICAgICAgLyogRm9vdG5vdGVzICovCiAgICAgIC5mb290bm90ZXMgewogICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM2NTZkNzYiLCIjOGI5NDllIil9OwogICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAke20uYmRUaGVtZSgiI2QxZDllMCIsIiMzMDM2M2QiKX07CiAgICAgICAgcGFkZGluZy10b3A6IDE2cHg7CiAgICAgICAgbWFyZ2luLXRvcDogMzJweDsKICAgICAgfQoKICAgICAgLyogQWxlcnRzL0FkbW9uaXRpb25zICovCiAgICAgIC5tYXJrZG93bi1hbGVydCB7CiAgICAgICAgcGFkZGluZzogOHB4IDE2cHg7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDsKICAgICAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkOwogICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgfQoKICAgICAgLm1hcmtkb3duLWFsZXJ0LW5vdGUgewogICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoIiMwOTY5ZGEiLCIjNThhNmZmIil9OwogICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR7bS5iZFRoZW1lKCJyZ2JhKDksIDEwNSwgMjE4LCAwLjEpIiwicmdiYSg1NiwgMTM5LCAyNTMsIDAuMSkiKX07CiAgICAgIH0KCiAgICAgIC5tYXJrZG93bi1hbGVydC13YXJuaW5nIHsKICAgICAgICBib3JkZXItY29sb3I6ICR7bS5iZFRoZW1lKCIjYmY4NzAwIiwiI2QyOTkyMiIpfTsKICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke20uYmRUaGVtZSgicmdiYSgxOTEsIDEzNSwgMCwgMC4xKSIsInJnYmEoMTg3LCAxMjgsIDksIDAuMSkiKX07CiAgICAgIH0KCiAgICAgIC5tYXJrZG93bi1hbGVydC1pbXBvcnRhbnQgewogICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoIiM4MjUwZGYiLCIjYTM3MWY3Iil9OwogICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR7bS5iZFRoZW1lKCJyZ2JhKDEzMCwgODAsIDIyMywgMC4xKSIsInJnYmEoMTYzLCAxMTMsIDI0NywgMC4xKSIpfTsKICAgICAgfQoKICAgICAgLm1hcmtkb3duLWFsZXJ0LWNhdXRpb24gewogICAgICAgIGJvcmRlci1jb2xvcjogJHttLmJkVGhlbWUoIiNjZjIyMmUiLCIjZjg1MTQ5Iil9OwogICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR7bS5iZFRoZW1lKCJyZ2JhKDIwNywgMzQsIDQ2LCAwLjEpIiwicmdiYSgyNDgsIDgxLCA3MywgMC4xKSIpfTsKICAgICAgfQoKICAgICAgLm1hcmtkb3duLWFsZXJ0LXRpcCB7CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke20uYmRUaGVtZSgiIzFhN2YzNyIsIiMzZmI5NTAiKX07CiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHttLmJkVGhlbWUoInJnYmEoMjYsIDEyNywgNTUsIDAuMSkiLCJyZ2JhKDQ2LCAxNjAsIDY3LCAwLjEpIil9OwogICAgICB9CgogICAgICAvKiBTeW50YXggaGlnaGxpZ2h0aW5nIGZvciBjb2RlIGJsb2NrcyAqLwogICAgICAuaGxqcy1jb21tZW50LAogICAgICAuaGxqcy1xdW90ZSB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjNmE3MzdkIiwiIzhiOTQ5ZSIpfTsKICAgICAgfQoKICAgICAgLmhsanMta2V5d29yZCwKICAgICAgLmhsanMtc2VsZWN0b3ItdGFnLAogICAgICAuaGxqcy1hZGRpdGlvbiB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjZDczYTQ5IiwiI2ZmN2I3MiIpfTsKICAgICAgfQoKICAgICAgLmhsanMtbnVtYmVyLAogICAgICAuaGxqcy1zdHJpbmcsCiAgICAgIC5obGpzLW1ldGEgLmhsanMtbWV0YS1zdHJpbmcsCiAgICAgIC5obGpzLWxpdGVyYWwsCiAgICAgIC5obGpzLWRvY3RhZywKICAgICAgLmhsanMtcmVnZXhwIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiMwMzJmNjIiLCIjYTVkNmZmIil9OwogICAgICB9CgogICAgICAuaGxqcy10aXRsZSwKICAgICAgLmhsanMtc2VjdGlvbiwKICAgICAgLmhsanMtbmFtZSwKICAgICAgLmhsanMtc2VsZWN0b3ItaWQsCiAgICAgIC5obGpzLXNlbGVjdG9yLWNsYXNzIHsKICAgICAgICBjb2xvcjogJHttLmJkVGhlbWUoIiM2ZjQyYzEiLCIjZDJhOGZmIil9OwogICAgICB9CgogICAgICAuaGxqcy1hdHRyaWJ1dGUsCiAgICAgIC5obGpzLWF0dHIsCiAgICAgIC5obGpzLXZhcmlhYmxlLAogICAgICAuaGxqcy10ZW1wbGF0ZS12YXJpYWJsZSwKICAgICAgLmhsanMtY2xhc3MgLmhsanMtdGl0bGUsCiAgICAgIC5obGpzLXR5cGUgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiIzAwNWNjNSIsIiM3OWMwZmYiKX07CiAgICAgIH0KCiAgICAgIC5obGpzLXN5bWJvbCwKICAgICAgLmhsanMtYnVsbGV0LAogICAgICAuaGxqcy1zdWJzdCwKICAgICAgLmhsanMtbWV0YSwKICAgICAgLmhsanMtbWV0YSAuaGxqcy1rZXl3b3JkLAogICAgICAuaGxqcy1zZWxlY3Rvci1hdHRyLAogICAgICAuaGxqcy1zZWxlY3Rvci1wc2V1ZG8sCiAgICAgIC5obGpzLWxpbmsgewogICAgICAgIGNvbG9yOiAke20uYmRUaGVtZSgiI2UzNjIwOSIsIiNmZmE2NTciKX07CiAgICAgIH0KCiAgICAgIC5obGpzLWJ1aWx0X2luLAogICAgICAuaGxqcy1kZWxldGlvbiB7CiAgICAgICAgY29sb3I6ICR7bS5iZFRoZW1lKCIjYjMxZDI4IiwiI2ZmYTE5OCIpfTsKICAgICAgfQoKICAgICAgLmhsanMtZm9ybXVsYSB7CiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHttLmJkVGhlbWUoIiNmNmY4ZmEiLCIjMTYxYjIyIil9OwogICAgICB9CgogICAgICAuaGxqcy1lbXBoYXNpcyB7CiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljOwogICAgICB9CgogICAgICAuaGxqcy1zdHJvbmcgewogICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOwogICAgICB9CiAgICBgXTtvdXRsZXQ7cmVuZGVyKCl7cmV0dXJuIFNgCiAgICAgIDxkaXYgY2xhc3M9Im91dGxldCI+CiAgICAgICAgPGgxPk1hcmtkb3duIFByZXZpZXc8L2gxPgogICAgICAgIDxwPkNvbnRlbnQgd2lsbCBhcHBlYXIgaGVyZSB3aGVuIG1hcmtkb3duIGlzIHBhcnNlZC48L3A+CiAgICAgIDwvZGl2PgogICAgYH1hc3luYyBmaXJzdFVwZGF0ZWQobil7YXdhaXQgc3VwZXIuZmlyc3RVcGRhdGVkKG4pLHRoaXMub3V0bGV0PXRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCIub3V0bGV0Iil9YXN5bmMgdXBkYXRlSHRtbFRleHQobil7YXdhaXQgdGhpcy51cGRhdGVDb21wbGV0ZSx0aGlzLm91dGxldHx8KHRoaXMub3V0bGV0PXRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCIub3V0bGV0IikpLHRoaXMub3V0bGV0LmlubmVySFRNTD1ufXN0YXRpY3tKdmEoYSxyKX19O3JldHVybiBvPWF9KSgpfSk7dmFyIHhCcj1sKCgpPT57Z0JyKCl9KTt2YXIgYkJyPWwoKCk9PntqMHQoKX0pO3ZhciB2QnI9bCgoKT0+e1UwdCgpfSk7dmFyIHlCcj1sKCgpPT57aUJyKCk7b0JyKCk7bkJyKCk7bEJyKCk7Y0JyKCk7ZkJyKCk7eEJyKCk7YkJyKCk7dkJyKCl9KTt2YXIgd0JyPWwoKCk9Pnt9KTt2YXIgTUJyPWwoKCk9Pnt3QnIoKX0pO3ZhciBrQnI9bCgoKT0+e1NlKCl9KTt2YXIgU0JyPWwoKCk9PntrQnIoKX0pO3ZhciB6QnI9bCgoKT0+e1RuKCk7b3QoKTtqUHIoKTtlSXIoKTtoSXIoKTtJSXIoKTtzTnIoKTtkTnIoKTtQTnIoKTtrRnIoKTtMT3IoKTtPT3IoKTt3Y2UoKTtQUnIoKTtRUnIoKTt5QnIoKTtNQnIoKTtTQnIoKX0pO3ZhciBDQnIsX0JyPWwoKCk9PntDQnI9e25hbWU6IkBkZXNpZ24uZXN0YXRlL2RlZXMtY2F0YWxvZyIsdmVyc2lvbjoiMy40OS4wIixkZXNjcmlwdGlvbjoiQSBjb21wcmVoZW5zaXZlIGxpYnJhcnkgdGhhdCBwcm92aWRlcyBkeW5hbWljIHdlYiBjb21wb25lbnRzIGZvciBidWlsZGluZyBzb3BoaXN0aWNhdGVkIGFuZCBtb2Rlcm4gd2ViIGFwcGxpY2F0aW9ucyB1c2luZyBKYXZhU2NyaXB0IGFuZCBUeXBlU2NyaXB0LiJ9fSk7dmFyIFcwdD17fTtxZShXMHQse0NhbnZhc1Bvb2w6KCk9PmVnLERlZXNBY3Rpb25iYXI6KCk9Pk5JcixEZWVzQXBwdWk6KCk9PkVQcixEZWVzQXBwdWlBY3Rpdml0eWxvZzooKT0+UUFyLERlZXNBcHB1aUJhcjooKT0+ZkVyLERlZXNBcHB1aUJvdHRvbWJhcjooKT0+Z0VyLERlZXNBcHB1aU1haW5jb250ZW50OigpPT5BUHIsRGVlc0FwcHVpTWFpbm1lbnU6KCk9PlNQcixEZWVzQXBwdWlQcm9maWxlRHJvcGRvd246KCk9PnVFcixEZWVzQXBwdWlTZWNvbmRhcnltZW51OigpPT5fUHIsRGVlc0FwcHVpVGFiczooKT0+RFByLERlZXNBdWRpb1ZpZXdlcjooKT0+REZyLERlZXNCYWRnZTooKT0+SElyLERlZXNCdXR0b246KCk9PmJQcixEZWVzQnV0dG9uRXhpdDooKT0+V1ByLERlZXNCdXR0b25Hcm91cDooKT0+UVByLERlZXNDaGFydEFyZWE6KCk9PnNJcixEZWVzQ2hhcnRMb2c6KCk9PnVJcixEZWVzQ2hpcHM6KCk9PkZOcixEZWVzQ29udGV4dG1lbnU6KCk9PnRyLERlZXNEYXNoYm9hcmRncmlkOigpPT5yRnIsRGVlc0RhdGF2aWV3Q29kZWJveDooKT0+eElyLERlZXNEYXRhdmlld1N0YXR1c29iamVjdDooKT0+TUlyLERlZXNGb3JtOigpPT5tUHIsRGVlc0Zvcm1TdWJtaXQ6KCk9PkVsZSxEZWVzRm9ybWF0dGluZ01lbnU6KCk9PllsZSxEZWVzSGVhZGluZzooKT0+bEZyLERlZXNIaW50OigpPT5HSXIsRGVlc0ljb246KCk9PlVBcixEZWVzSW1hZ2VWaWV3ZXI6KCk9PkNGcixEZWVzSW5wdXRCYXNlOigpPT5odCxEZWVzSW5wdXRDaGVja2JveDooKT0+TWxlLERlZXNJbnB1dENvZGU6KCk9PkNsZSxEZWVzSW5wdXREYXRlcGlja2VyOigpPT5fbGUsRGVlc0lucHV0RHJvcGRvd246KCk9PiRsZSxEZWVzSW5wdXRGaWxldXBsb2FkOigpPT5JbGUsRGVlc0lucHV0SWJhbjooKT0+T2xlLERlZXNJbnB1dExpc3Q6KCk9PlVsZSxEZWVzSW5wdXRNdWx0aXRvZ2dsZTooKT0+UmxlLERlZXNJbnB1dFBob25lOigpPT5IbGUsRGVlc0lucHV0UHJvZmlsZVBpY3R1cmU6KCk9PiROcixEZWVzSW5wdXRRdWFudGl0eVNlbGVjdG9yOigpPT5MbGUsRGVlc0lucHV0UmFkaW9ncm91cDooKT0+RGxlLERlZXNJbnB1dFJpY2h0ZXh0OigpPT5LbGUsRGVlc0lucHV0VGFnczooKT0+VmxlLERlZXNJbnB1dFRleHQ6KCk9PlRsZSxEZWVzSW5wdXRUb2dnbGU6KCk9PnFsZSxEZWVzSW5wdXRUeXBlbGlzdDooKT0+amxlLERlZXNJbnB1dFd5c2l3eWc6KCk9PiRaLERlZXNMYWJlbDooKT0+QUVyLERlZXNNb2JpbGVuYXZpZ2F0aW9uOigpPT5CUHIsRGVlc01vZGFsOigpPT5HdCxEZWVzUGFnaW5hdGlvbjooKT0+aEZyLERlZXNQYW5lbDooKT0+d0VyLERlZXNQZGZWaWV3ZXI6KCk9PkJGcixEZWVzUHJldmlldzooKT0+VkZyLERlZXNQcm9ncmVzc2JhcjooKT0+SklyLERlZXNTZWFyY2hiYXI6KCk9PlJScixEZWVzU2hvcHBpbmdQcm9kdWN0Y2FyZDooKT0+akVyLERlZXNTaW1wbGVBcHBEYXNoOigpPT56UnIsRGVlc1NpbXBsZUxvZ2luOigpPT5BUnIsRGVlc1NsYXNoTWVudTooKT0+V2xlLERlZXNTcGVlY2hidWJibGU6KCk9PlBPcixEZWVzU3Bpbm5lcjooKT0+dE5yLERlZXNTdGF0c0dyaWQ6KCk9PnZQcixEZWVzU3RlcHBlcjooKT0+eUZyLERlZXNTdG9yYWdlQnJvd3NlcjooKT0+RUlyLERlZXNTdG9yYWdlQ29sdW1uczooKT0+TElyLERlZXNTdG9yYWdlS2V5czooKT0+RElyLERlZXNTdG9yYWdlUHJldmlldzooKT0+QUlyLERlZXNUYWJsZTooKT0+ZWNlLERlZXNUaGVtZTooKT0+VlJyLERlZXNUaWxlQXVkaW86KCk9PmRPcixEZWVzVGlsZUJhc2U6KCk9PnlvLERlZXNUaWxlRm9sZGVyOigpPT5DT3IsRGVlc1RpbGVJbWFnZTooKT0+b09yLERlZXNUaWxlTm90ZTooKT0+eU9yLERlZXNUaWxlUGRmOigpPT5lT3IsRGVlc1RpbGVWaWRlbzooKT0+bU9yLERlZXNUb2FzdDooKT0+THIsRGVlc1VwZGF0ZXI6KCk9Pk1jZSxEZWVzVmlkZW9WaWV3ZXI6KCk9PlBGcixEZWVzV2luZG93Q29udHJvbHM6KCk9PmRFcixEZWVzV2luZG93TGF5ZXI6KCk9PnFuLERlZXNXb3Jrc3BhY2U6KCk9PnJCcixEZWVzV29ya3NwYWNlQm90dG9tYmFyOigpPT5lQnIsRGVlc1dvcmtzcGFjZURpZmZFZGl0b3I6KCk9PnRCcixEZWVzV29ya3NwYWNlRmlsZXRyZWU6KCk9PktScixEZWVzV29ya3NwYWNlTWFya2Rvd246KCk9PmRCcixEZWVzV29ya3NwYWNlTWFya2Rvd25vdXRsZXQ6KCk9Pm1CcixEZWVzV29ya3NwYWNlTW9uYWNvOigpPT5FRXIsRGVlc1dvcmtzcGFjZVRlcm1pbmFsOigpPT5QMHQsRGVlc1dvcmtzcGFjZVRlcm1pbmFsUHJldmlldzooKT0+SlJyLERlZXNXeXNpd3lnQmxvY2s6KCk9PlkkcixQUk9HUkFNTUlOR19MQU5HVUFHRVM6KCk9Pm1aLFBkZk1hbmFnZXI6KCk9PmhsLFBlcmZvcm1hbmNlTW9uaXRvcjooKT0+dGcsVGVybWluYWxUYWJNYW5hZ2VyOigpPT5ZWixUeXBlU2NyaXB0SW50ZWxsaVNlbnNlTWFuYWdlcjooKT0+SlosVmlld1JlZ2lzdHJ5OigpPT5QWixXZWJDb250YWluZXJFbnZpcm9ubWVudDooKT0+VzgsV3lzaXd5Z0Jsb2NrT3BlcmF0aW9uczooKT0+Z1osV3lzaXd5Z0Jsb2NrczooKT0+ZzEsV3lzaXd5Z0NvbnZlcnRlcnM6KCk9PlduLFd5c2l3eWdEcmFnRHJvcEhhbmRsZXI6KCk9PkRaLFd5c2l3eWdGb3JtYXR0aW5nOigpPT5SYyxXeXNpd3lnSGlzdG9yeTooKT0+QVosV3lzaXd5Z0lucHV0SGFuZGxlcjooKT0+VFosV3lzaXd5Z0tleWJvYXJkSGFuZGxlcjooKT0+TFosV3lzaXd5Z01vZGFsTWFuYWdlcjooKT0+X1osV3lzaXd5Z1NlbGVjdGlvbjooKT0+cnQsV3lzaXd5Z1Nob3J0Y3V0czooKT0+b2ksWkluZGV4UmVnaXN0cnk6KCk9PmhyZSxjb2xvcnM6KCk9Pms4LGNvbW1pdGluZm86KCk9PkNCcixjb21wb25lbnRaSW5kZXg6KCk9PmtvYSxkZWJvdW5jZTooKT0+dnZhLGZvcm1hdENvdW50OigpPT5USXIsZm9ybWF0RmlsZVNpemU6KCk9Pm4wdCxmb3JtYXRTaXplOigpPT5YOSxnZXRDb250ZW50VHlwZTooKT0+aDMsZ2V0RGVmYXVsdENvbnRlbnQ6KCk9Pks5LGdldEZpbGVOYW1lOigpPT5kcixnZXRQYXJlbnRQcmVmaXg6KCk9PmpzLGdldFBhdGhTZWdtZW50czooKT0+UjgsZ2V0WkluZGV4OigpPT5Nb2EsaWNvbnM6KCk9PnlsZSxpc0luVmlld3BvcnQ6KCk9Pnd2YSxyZWdpc3RlckFsbEJsb2NrSGFuZGxlcnM6KCk9Pmokcix0aGVtZURlZmF1bHRTdHlsZXM6KCk9PlBlLHRoZW1lRGVmYXVsdHM6KCk9PlE0LHRocm90dGxlOigpPT55dmEsdGlsZUJhc2VTdHlsZXM6KCk9PmVvLHZhbGlkYXRlTW92ZTooKT0+UTksd3lzaXd5Z1N0eWxlczooKT0+Z2N0LHpJbmRleExheWVyczooKT0+TGksekluZGV4UmVnaXN0cnk6KCk9PmNhfSk7dmFyIHRYPWwoKCk9Pnt6QnIoKTtWbigpO19CcigpfSk7dmFyIFl0LFFuPWwoKCk9PntfbigpO3RYKCk7WXQ9QW99KTt2YXIgUWM9bCgoKT0+e2pnKCl9KTt2YXIgVEJyPWwoKCk9Pnt9KTt2YXIgTEJyPWwoKCk9Pnt9KTt2YXIgREJyPWwoKCk9Pnt9KTt2YXIgQUJyPWwoKCk9Pnt9KTt2YXIgRUJyPWwoKCk9Pnt9KTt2YXIgJEJyPXt9O3ZhciBLYz1sKCgpPT57VEJyKCk7TEJyKCk7REJyKCk7QUJyKCk7RUJyKCl9KTt2YXIgUEJyPWwoKCk9PntRYygpO0tjKCl9KTt2YXIgSUJyPWwoKCk9PntRYygpO0tjKCl9KTt2YXIgTkJyPWwoKCk9PntRYygpO0tjKCl9KTt2YXIgRkJyPWwoKCk9PntRYygpO0tjKCl9KTt2YXIgT0JyPWwoKCk9PntRYygpO0tjKCl9KTt2YXIgUkJyPWwoKCk9PntRYygpO0tjKCl9KTt2YXIgQkJyPWwoKCk9PntRYygpO0tjKCl9KTt2YXIgSEJyPXt9O3ZhciBxQnI9bCgoKT0+e1BCcigpO0lCcigpO05CcigpO0ZCcigpO09CcigpO1JCcigpO0JCcigpfSk7dmFyIGFYPWwoKCk9PntRYygpO0tjKCk7cUJyKCl9KTt2YXIgdzMsU28seGwsem8sWjgsTTMsZ2wsaVgsSmMseWksakJyLFNjZSxYOCxROCxWQnIsVUJyLFdCcixHQnIsWUJyLFpCcix6Y2UsQ2NlLF9jZSxUY2Usc3duLExjZSxsd24sWEJyLFFCcixLQnIsWTB0LGN3bixjZyxleWEsRzB0LGJsPWwoYXN5bmMoKT0+e1FuKCk7YVgoKTt3Mz1uZXcgWXQucGx1Z2lucy5zbWFydHN0YXRlLlNtYXJ0c3RhdGUsU289YXdhaXQgdzMuZ2V0U3RhdGVQYXJ0KCJsb2dpbiIse2lkZW50aXR5Om51bGwsaXNMb2dnZWRJbjohMX0sInBlcnNpc3RlbnQiKSx4bD1hd2FpdCB3My5nZXRTdGF0ZVBhcnQoInNlcnZlciIse3N0YXR1czpudWxsLGNvbm5lY3Rpb25JbmZvOm51bGx9LCJzb2Z0Iiksem89YXdhaXQgdzMuZ2V0U3RhdGVQYXJ0KCJidWNrZXRzIix7YnVja2V0czpbXX0sInNvZnQiKSxaOD1hd2FpdCB3My5nZXRTdGF0ZVBhcnQoIm9iamVjdHMiLHtyZXN1bHQ6bnVsbCxjdXJyZW50QnVja2V0OiIiLGN1cnJlbnRQcmVmaXg6IiJ9LCJzb2Z0IiksTTM9YXdhaXQgdzMuZ2V0U3RhdGVQYXJ0KCJjcmVkZW50aWFscyIse2NyZWRlbnRpYWxzOltdfSwic29mdCIpLGdsPWF3YWl0IHczLmdldFN0YXRlUGFydCgicG9saWNpZXMiLHtwb2xpY2llczpbXX0sInNvZnQiKSxpWD1hd2FpdCB3My5nZXRTdGF0ZVBhcnQoImNvbmZpZyIse2NvbmZpZzpudWxsfSwic29mdCIpLEpjPWF3YWl0IHczLmdldFN0YXRlUGFydCgidWkiLHthY3RpdmVWaWV3OiJvdmVydmlldyIsYXV0b1JlZnJlc2g6ITAscmVmcmVzaEludGVydmFsOjNlNH0pLHlpPSgpPT4oe2lkZW50aXR5OlNvLmdldFN0YXRlKCkuaWRlbnRpdHl9KSxqQnI9U28uY3JlYXRlQWN0aW9uKGFzeW5jKGUsdCk9Pnt0cnl7bGV0IGE9YXdhaXQgbmV3IFl0LnBsdWdpbnMudHlwZWRyZXF1ZXN0LlR5cGVkUmVxdWVzdCgiL3R5cGVkcmVxdWVzdCIsImFkbWluTG9naW5XaXRoVXNlcm5hbWVBbmRQYXNzd29yZCIpLmZpcmUoe3VzZXJuYW1lOnQudXNlcm5hbWUscGFzc3dvcmQ6dC5wYXNzd29yZH0pO3JldHVybntpZGVudGl0eTphLmlkZW50aXR5fHxudWxsLGlzTG9nZ2VkSW46ISFhLmlkZW50aXR5fX1jYXRjaChyKXtyZXR1cm4gY29uc29sZS5lcnJvcigiTG9naW4gZmFpbGVkOiIscikse2lkZW50aXR5Om51bGwsaXNMb2dnZWRJbjohMX19fSksU2NlPVNvLmNyZWF0ZUFjdGlvbihhc3luYyBlPT57bGV0IHQ9eWkoKTt0cnl7dC5pZGVudGl0eSYmYXdhaXQgbmV3IFl0LnBsdWdpbnMudHlwZWRyZXF1ZXN0LlR5cGVkUmVxdWVzdCgiL3R5cGVkcmVxdWVzdCIsImFkbWluTG9nb3V0IikuZmlyZSh7aWRlbnRpdHk6dC5pZGVudGl0eX0pfWNhdGNoKHIpe2NvbnNvbGUuZXJyb3IoIkxvZ291dCBlcnJvcjoiLHIpfXJldHVybntpZGVudGl0eTpudWxsLGlzTG9nZ2VkSW46ITF9fSksWDg9eGwuY3JlYXRlQWN0aW9uKGFzeW5jIGU9PntsZXQgdD15aSgpO3RyeXtsZXQgYT1hd2FpdCBuZXcgWXQucGx1Z2lucy50eXBlZHJlcXVlc3QuVHlwZWRSZXF1ZXN0KCIvdHlwZWRyZXF1ZXN0IiwiZ2V0U2VydmVyU3RhdHVzIikuZmlyZSh7aWRlbnRpdHk6dC5pZGVudGl0eX0pO3JldHVybntzdGF0dXM6YS5zdGF0dXMsY29ubmVjdGlvbkluZm86YS5jb25uZWN0aW9uSW5mb319Y2F0Y2gocil7cmV0dXJuIGNvbnNvbGUuZXJyb3IoIkZhaWxlZCB0byBmZXRjaCBzZXJ2ZXIgc3RhdHVzOiIsciksZS5nZXRTdGF0ZSgpfX0pLFE4PXpvLmNyZWF0ZUFjdGlvbihhc3luYyBlPT57bGV0IHQ9eWkoKTt0cnl7cmV0dXJue2J1Y2tldHM6KGF3YWl0IG5ldyBZdC5wbHVnaW5zLnR5cGVkcmVxdWVzdC5UeXBlZFJlcXVlc3QoIi90eXBlZHJlcXVlc3QiLCJsaXN0QnVja2V0cyIpLmZpcmUoe2lkZW50aXR5OnQuaWRlbnRpdHl9KSkuYnVja2V0c319Y2F0Y2gocil7cmV0dXJuIGNvbnNvbGUuZXJyb3IoIkZhaWxlZCB0byBmZXRjaCBidWNrZXRzOiIsciksZS5nZXRTdGF0ZSgpfX0pLFZCcj16by5jcmVhdGVBY3Rpb24oYXN5bmMoZSx0KT0+e2xldCByPXlpKCk7dHJ5e3JldHVybiBhd2FpdCBuZXcgWXQucGx1Z2lucy50eXBlZHJlcXVlc3QuVHlwZWRSZXF1ZXN0KCIvdHlwZWRyZXF1ZXN0IiwiY3JlYXRlQnVja2V0IikuZmlyZSh7aWRlbnRpdHk6ci5pZGVudGl0eSxidWNrZXROYW1lOnQuYnVja2V0TmFtZX0pLHtidWNrZXRzOihhd2FpdCBuZXcgWXQucGx1Z2lucy50eXBlZHJlcXVlc3QuVHlwZWRSZXF1ZXN0KCIvdHlwZWRyZXF1ZXN0IiwibGlzdEJ1Y2tldHMiKS5maXJlKHtpZGVudGl0eTpyLmlkZW50aXR5fSkpLmJ1Y2tldHN9fWNhdGNoKGEpe3JldHVybiBjb25zb2xlLmVycm9yKCJGYWlsZWQgdG8gY3JlYXRlIGJ1Y2tldDoiLGEpLGUuZ2V0U3RhdGUoKX19KSxVQnI9em8uY3JlYXRlQWN0aW9uKGFzeW5jKGUsdCk9PntsZXQgcj15aSgpO3RyeXtyZXR1cm4gYXdhaXQgbmV3IFl0LnBsdWdpbnMudHlwZWRyZXF1ZXN0LlR5cGVkUmVxdWVzdCgiL3R5cGVkcmVxdWVzdCIsImRlbGV0ZUJ1Y2tldCIpLmZpcmUoe2lkZW50aXR5OnIuaWRlbnRpdHksYnVja2V0TmFtZTp0LmJ1Y2tldE5hbWV9KSx7YnVja2V0czplLmdldFN0YXRlKCkuYnVja2V0cy5maWx0ZXIobz0+by5uYW1lIT09dC5idWNrZXROYW1lKX19Y2F0Y2goYSl7cmV0dXJuIGNvbnNvbGUuZXJyb3IoIkZhaWxlZCB0byBkZWxldGUgYnVja2V0OiIsYSksZS5nZXRTdGF0ZSgpfX0pLFdCcj1nbC5jcmVhdGVBY3Rpb24oYXN5bmMgZT0+e2xldCB0PXlpKCk7dHJ5e3JldHVybntwb2xpY2llczooYXdhaXQgbmV3IFl0LnBsdWdpbnMudHlwZWRyZXF1ZXN0LlR5cGVkUmVxdWVzdCgiL3R5cGVkcmVxdWVzdCIsImxpc3ROYW1lZFBvbGljaWVzIikuZmlyZSh7aWRlbnRpdHk6dC5pZGVudGl0eX0pKS5wb2xpY2llc319Y2F0Y2gocil7cmV0dXJuIGNvbnNvbGUuZXJyb3IoIkZhaWxlZCB0byBmZXRjaCBwb2xpY2llczoiLHIpLGUuZ2V0U3RhdGUoKX19KSxHQnI9Z2wuY3JlYXRlQWN0aW9uKGFzeW5jKGUsdCk9PntsZXQgcj15aSgpO3RyeXtyZXR1cm4gYXdhaXQgbmV3IFl0LnBsdWdpbnMudHlwZWRyZXF1ZXN0LlR5cGVkUmVxdWVzdCgiL3R5cGVkcmVxdWVzdCIsImNyZWF0ZU5hbWVkUG9saWN5IikuZmlyZSh7aWRlbnRpdHk6ci5pZGVudGl0eSxuYW1lOnQubmFtZSxkZXNjcmlwdGlvbjp0LmRlc2NyaXB0aW9uLHN0YXRlbWVudHM6dC5zdGF0ZW1lbnRzfSkse3BvbGljaWVzOihhd2FpdCBuZXcgWXQucGx1Z2lucy50eXBlZHJlcXVlc3QuVHlwZWRSZXF1ZXN0KCIvdHlwZWRyZXF1ZXN0IiwibGlzdE5hbWVkUG9saWNpZXMiKS5maXJlKHtpZGVudGl0eTpyLmlkZW50aXR5fSkpLnBvbGljaWVzfX1jYXRjaChhKXtyZXR1cm4gY29uc29sZS5lcnJvcigiRmFpbGVkIHRvIGNyZWF0ZSBwb2xpY3k6IixhKSxlLmdldFN0YXRlKCl9fSksWUJyPWdsLmNyZWF0ZUFjdGlvbihhc3luYyhlLHQpPT57bGV0IHI9eWkoKTt0cnl7cmV0dXJuIGF3YWl0IG5ldyBZdC5wbHVnaW5zLnR5cGVkcmVxdWVzdC5UeXBlZFJlcXVlc3QoIi90eXBlZHJlcXVlc3QiLCJ1cGRhdGVOYW1lZFBvbGljeSIpLmZpcmUoe2lkZW50aXR5OnIuaWRlbnRpdHkscG9saWN5SWQ6dC5wb2xpY3lJZCxuYW1lOnQubmFtZSxkZXNjcmlwdGlvbjp0LmRlc2NyaXB0aW9uLHN0YXRlbWVudHM6dC5zdGF0ZW1lbnRzfSkse3BvbGljaWVzOihhd2FpdCBuZXcgWXQucGx1Z2lucy50eXBlZHJlcXVlc3QuVHlwZWRSZXF1ZXN0KCIvdHlwZWRyZXF1ZXN0IiwibGlzdE5hbWVkUG9saWNpZXMiKS5maXJlKHtpZGVudGl0eTpyLmlkZW50aXR5fSkpLnBvbGljaWVzfX1jYXRjaChhKXtyZXR1cm4gY29uc29sZS5lcnJvcigiRmFpbGVkIHRvIHVwZGF0ZSBwb2xpY3k6IixhKSxlLmdldFN0YXRlKCl9fSksWkJyPWdsLmNyZWF0ZUFjdGlvbihhc3luYyhlLHQpPT57bGV0IHI9eWkoKTt0cnl7cmV0dXJuIGF3YWl0IG5ldyBZdC5wbHVnaW5zLnR5cGVkcmVxdWVzdC5UeXBlZFJlcXVlc3QoIi90eXBlZHJlcXVlc3QiLCJkZWxldGVOYW1lZFBvbGljeSIpLmZpcmUoe2lkZW50aXR5OnIuaWRlbnRpdHkscG9saWN5SWQ6dC5wb2xpY3lJZH0pLHtwb2xpY2llczplLmdldFN0YXRlKCkucG9saWNpZXMuZmlsdGVyKG89Pm8uaWQhPT10LnBvbGljeUlkKX19Y2F0Y2goYSl7cmV0dXJuIGNvbnNvbGUuZXJyb3IoIkZhaWxlZCB0byBkZWxldGUgcG9saWN5OiIsYSksZS5nZXRTdGF0ZSgpfX0pLHpjZT1hc3luYyBlPT57bGV0IHQ9eWkoKTtyZXR1cm4gYXdhaXQgbmV3IFl0LnBsdWdpbnMudHlwZWRyZXF1ZXN0LlR5cGVkUmVxdWVzdCgiL3R5cGVkcmVxdWVzdCIsImdldEJ1Y2tldE5hbWVkUG9saWNpZXMiKS5maXJlKHtpZGVudGl0eTp0LmlkZW50aXR5LGJ1Y2tldE5hbWU6ZX0pfSxDY2U9YXN5bmMoZSx0KT0+e2xldCByPXlpKCk7cmV0dXJuIGF3YWl0IG5ldyBZdC5wbHVnaW5zLnR5cGVkcmVxdWVzdC5UeXBlZFJlcXVlc3QoIi90eXBlZHJlcXVlc3QiLCJhdHRhY2hQb2xpY3lUb0J1Y2tldCIpLmZpcmUoe2lkZW50aXR5OnIuaWRlbnRpdHkscG9saWN5SWQ6ZSxidWNrZXROYW1lOnR9KX0sX2NlPWFzeW5jKGUsdCk9PntsZXQgcj15aSgpO3JldHVybiBhd2FpdCBuZXcgWXQucGx1Z2lucy50eXBlZHJlcXVlc3QuVHlwZWRSZXF1ZXN0KCIvdHlwZWRyZXF1ZXN0IiwiZGV0YWNoUG9saWN5RnJvbUJ1Y2tldCIpLmZpcmUoe2lkZW50aXR5OnIuaWRlbnRpdHkscG9saWN5SWQ6ZSxidWNrZXROYW1lOnR9KX0sVGNlPWFzeW5jIGU9PntsZXQgdD15aSgpO3JldHVybiBhd2FpdCBuZXcgWXQucGx1Z2lucy50eXBlZHJlcXVlc3QuVHlwZWRSZXF1ZXN0KCIvdHlwZWRyZXF1ZXN0IiwiZ2V0UG9saWN5QnVja2V0cyIpLmZpcmUoe2lkZW50aXR5OnQuaWRlbnRpdHkscG9saWN5SWQ6ZX0pfSxzd249YXN5bmMoZSx0KT0+e2xldCByPXlpKCk7cmV0dXJuIGF3YWl0IG5ldyBZdC5wbHVnaW5zLnR5cGVkcmVxdWVzdC5UeXBlZFJlcXVlc3QoIi90eXBlZHJlcXVlc3QiLCJzZXRQb2xpY3lCdWNrZXRzIikuZmlyZSh7aWRlbnRpdHk6ci5pZGVudGl0eSxwb2xpY3lJZDplLGJ1Y2tldE5hbWVzOnR9KX0sTGNlPVo4LmNyZWF0ZUFjdGlvbihhc3luYyhlLHQpPT57bGV0IHI9eWkoKTt0cnl7cmV0dXJue3Jlc3VsdDooYXdhaXQgbmV3IFl0LnBsdWdpbnMudHlwZWRyZXF1ZXN0LlR5cGVkUmVxdWVzdCgiL3R5cGVkcmVxdWVzdCIsImxpc3RPYmplY3RzIikuZmlyZSh7aWRlbnRpdHk6ci5pZGVudGl0eSxidWNrZXROYW1lOnQuYnVja2V0TmFtZSxwcmVmaXg6dC5wcmVmaXh8fCIiLGRlbGltaXRlcjp0LmRlbGltaXRlcnx8Ii8ifSkpLnJlc3VsdCxjdXJyZW50QnVja2V0OnQuYnVja2V0TmFtZSxjdXJyZW50UHJlZml4OnQucHJlZml4fHwiIn19Y2F0Y2goYSl7cmV0dXJuIGNvbnNvbGUuZXJyb3IoIkZhaWxlZCB0byBmZXRjaCBvYmplY3RzOiIsYSksZS5nZXRTdGF0ZSgpfX0pLGx3bj1aOC5jcmVhdGVBY3Rpb24oYXN5bmMoZSx0KT0+e2xldCByPXlpKCk7dHJ5e2F3YWl0IG5ldyBZdC5wbHVnaW5zLnR5cGVkcmVxdWVzdC5UeXBlZFJlcXVlc3QoIi90eXBlZHJlcXVlc3QiLCJkZWxldGVPYmplY3QiKS5maXJlKHtpZGVudGl0eTpyLmlkZW50aXR5LGJ1Y2tldE5hbWU6dC5idWNrZXROYW1lLGtleTp0LmtleX0pO2xldCBpPWUuZ2V0U3RhdGUoKTtyZXR1cm57cmVzdWx0Oihhd2FpdCBuZXcgWXQucGx1Z2lucy50eXBlZHJlcXVlc3QuVHlwZWRSZXF1ZXN0KCIvdHlwZWRyZXF1ZXN0IiwibGlzdE9iamVjdHMiKS5maXJlKHtpZGVudGl0eTpyLmlkZW50aXR5LGJ1Y2tldE5hbWU6aS5jdXJyZW50QnVja2V0LHByZWZpeDppLmN1cnJlbnRQcmVmaXgsZGVsaW1pdGVyOiIvIn0pKS5yZXN1bHQsY3VycmVudEJ1Y2tldDppLmN1cnJlbnRCdWNrZXQsY3VycmVudFByZWZpeDppLmN1cnJlbnRQcmVmaXh9fWNhdGNoKGEpe3JldHVybiBjb25zb2xlLmVycm9yKCJGYWlsZWQgdG8gZGVsZXRlIG9iamVjdDoiLGEpLGUuZ2V0U3RhdGUoKX19KSxYQnI9TTMuY3JlYXRlQWN0aW9uKGFzeW5jIGU9PntsZXQgdD15aSgpO3RyeXtyZXR1cm57Y3JlZGVudGlhbHM6KGF3YWl0IG5ldyBZdC5wbHVnaW5zLnR5cGVkcmVxdWVzdC5UeXBlZFJlcXVlc3QoIi90eXBlZHJlcXVlc3QiLCJnZXRDcmVkZW50aWFscyIpLmZpcmUoe2lkZW50aXR5OnQuaWRlbnRpdHl9KSkuY3JlZGVudGlhbHN9fWNhdGNoKHIpe3JldHVybiBjb25zb2xlLmVycm9yKCJGYWlsZWQgdG8gZmV0Y2ggY3JlZGVudGlhbHM6IixyKSxlLmdldFN0YXRlKCl9fSksUUJyPU0zLmNyZWF0ZUFjdGlvbihhc3luYyhlLHQpPT57bGV0IHI9eWkoKTt0cnl7cmV0dXJuIGF3YWl0IG5ldyBZdC5wbHVnaW5zLnR5cGVkcmVxdWVzdC5UeXBlZFJlcXVlc3QoIi90eXBlZHJlcXVlc3QiLCJhZGRDcmVkZW50aWFsIikuZmlyZSh7aWRlbnRpdHk6ci5pZGVudGl0eSxhY2Nlc3NLZXlJZDp0LmFjY2Vzc0tleUlkLHNlY3JldEFjY2Vzc0tleTp0LnNlY3JldEFjY2Vzc0tleX0pLHtjcmVkZW50aWFsczooYXdhaXQgbmV3IFl0LnBsdWdpbnMudHlwZWRyZXF1ZXN0LlR5cGVkUmVxdWVzdCgiL3R5cGVkcmVxdWVzdCIsImdldENyZWRlbnRpYWxzIikuZmlyZSh7aWRlbnRpdHk6ci5pZGVudGl0eX0pKS5jcmVkZW50aWFsc319Y2F0Y2goYSl7cmV0dXJuIGNvbnNvbGUuZXJyb3IoIkZhaWxlZCB0byBhZGQgY3JlZGVudGlhbDoiLGEpLGUuZ2V0U3RhdGUoKX19KSxLQnI9TTMuY3JlYXRlQWN0aW9uKGFzeW5jKGUsdCk9PntsZXQgcj15aSgpO3RyeXtyZXR1cm4gYXdhaXQgbmV3IFl0LnBsdWdpbnMudHlwZWRyZXF1ZXN0LlR5cGVkUmVxdWVzdCgiL3R5cGVkcmVxdWVzdCIsInJlbW92ZUNyZWRlbnRpYWwiKS5maXJlKHtpZGVudGl0eTpyLmlkZW50aXR5LGFjY2Vzc0tleUlkOnQuYWNjZXNzS2V5SWR9KSx7Y3JlZGVudGlhbHM6ZS5nZXRTdGF0ZSgpLmNyZWRlbnRpYWxzLmZpbHRlcihvPT5vLmFjY2Vzc0tleUlkIT09dC5hY2Nlc3NLZXlJZCl9fWNhdGNoKGEpe3JldHVybiBjb25zb2xlLmVycm9yKCJGYWlsZWQgdG8gcmVtb3ZlIGNyZWRlbnRpYWw6IixhKSxlLmdldFN0YXRlKCl9fSksWTB0PWlYLmNyZWF0ZUFjdGlvbihhc3luYyBlPT57bGV0IHQ9eWkoKTt0cnl7cmV0dXJue2NvbmZpZzooYXdhaXQgbmV3IFl0LnBsdWdpbnMudHlwZWRyZXF1ZXN0LlR5cGVkUmVxdWVzdCgiL3R5cGVkcmVxdWVzdCIsImdldFNlcnZlckNvbmZpZyIpLmZpcmUoe2lkZW50aXR5OnQuaWRlbnRpdHl9KSkuY29uZmlnfX1jYXRjaChyKXtyZXR1cm4gY29uc29sZS5lcnJvcigiRmFpbGVkIHRvIGZldGNoIGNvbmZpZzoiLHIpLGUuZ2V0U3RhdGUoKX19KSxjd249SmMuY3JlYXRlQWN0aW9uKGFzeW5jKGUsdCk9Pih7Li4uZS5nZXRTdGF0ZSgpLGFjdGl2ZVZpZXc6dC52aWV3fSkpLGNnPW51bGwsZXlhPWFzeW5jKCk9PntpZihTby5nZXRTdGF0ZSgpLmlzTG9nZ2VkSW4pdHJ5e2F3YWl0IHhsLmRpc3BhdGNoQWN0aW9uKFg4LG51bGwpfWNhdGNoe319LEcwdD0oKT0+e2xldCBlPUpjLmdldFN0YXRlKCksdD1Tby5nZXRTdGF0ZSgpO2UuYXV0b1JlZnJlc2gmJnQuaXNMb2dnZWRJbj8oY2cmJmNsZWFySW50ZXJ2YWwoY2cpLGNnPXNldEludGVydmFsKCgpPT57ZXlhKCl9LGUucmVmcmVzaEludGVydmFsKSk6Y2cmJihjbGVhckludGVydmFsKGNnKSxjZz1udWxsKX07SmMuc2VsZWN0KGU9PmUpLnN1YnNjcmliZSgoKT0+RzB0KCkpLFNvLnNlbGVjdChlPT5lKS5zdWJzY3JpYmUoKCk9PkcwdCgpKSxHMHQoKX0pO3ZhciB0eWEsWjB0LFgwdCxkZyxEY2U9bChhc3luYygpPT57UW4oKTthd2FpdCBibCgpO3R5YT1ZdC5wbHVnaW5zLnNtYXJ0cm91dGVyLlNtYXJ0Um91dGVyLFowdD1bIm92ZXJ2aWV3IiwiYnVja2V0cyIsImJyb3dzZXIiLCJwb2xpY2llcyIsImNvbmZpZyIsImFjY2VzcyBrZXlzIl0sWDB0PWNsYXNze3JvdXRlcjtpbml0aWFsaXplZD0hMTtzdXBwcmVzc1N0YXRlVXBkYXRlPSExO2NvbnN0cnVjdG9yKCl7dGhpcy5yb3V0ZXI9bmV3IHR5YSh7ZGVidWc6ITF9KX1pbml0KCl7dGhpcy5pbml0aWFsaXplZHx8KHRoaXMuc2V0dXBSb3V0ZXMoKSx0aGlzLnNldHVwU3RhdGVTeW5jKCksdGhpcy5oYW5kbGVJbml0aWFsUm91dGUoKSx0aGlzLmluaXRpYWxpemVkPSEwKX12aWV3VG9QYXRoKHQpe3JldHVybmAvJHt0LnJlcGxhY2UoL1xzKy9nLCItIil9YH1wYXRoVG9WaWV3KHQpe3JldHVybih0LnNwbGl0KCIvIikuZmlsdGVyKEJvb2xlYW4pWzBdfHwiIikucmVwbGFjZSgvLS9nLCIgIil9c2V0dXBSb3V0ZXMoKXtmb3IobGV0IHQgb2YgWjB0KXRoaXMucm91dGVyLm9uKHRoaXMudmlld1RvUGF0aCh0KSxhc3luYygpPT57dGhpcy51cGRhdGVWaWV3U3RhdGUodCl9KTt0aGlzLnJvdXRlci5vbigiLyIsYXN5bmMoKT0+e3RoaXMubmF2aWdhdGVUbyh0aGlzLnZpZXdUb1BhdGgoIm92ZXJ2aWV3IikpfSl9c2V0dXBTdGF0ZVN5bmMoKXtKYy5zdGF0ZS5zdWJzY3JpYmUodD0+e2lmKHRoaXMuc3VwcHJlc3NTdGF0ZVVwZGF0ZSlyZXR1cm47bGV0IHI9d2luZG93LmxvY2F0aW9uLnBhdGhuYW1lLGE9dGhpcy52aWV3VG9QYXRoKHQuYWN0aXZlVmlldyk7ciE9PWEmJih0aGlzLnN1cHByZXNzU3RhdGVVcGRhdGU9ITAsdGhpcy5yb3V0ZXIucHVzaFVybChhKSx0aGlzLnN1cHByZXNzU3RhdGVVcGRhdGU9ITEpfSl9aGFuZGxlSW5pdGlhbFJvdXRlKCl7bGV0IHQ9d2luZG93LmxvY2F0aW9uLnBhdGhuYW1lO2lmKCF0fHx0PT09Ii8iKXRoaXMucm91dGVyLnB1c2hVcmwodGhpcy52aWV3VG9QYXRoKCJvdmVydmlldyIpKTtlbHNle2xldCByPXRoaXMucGF0aFRvVmlldyh0KTtaMHQuaW5jbHVkZXMocik/dGhpcy51cGRhdGVWaWV3U3RhdGUocik6dGhpcy5yb3V0ZXIucHVzaFVybCh0aGlzLnZpZXdUb1BhdGgoIm92ZXJ2aWV3IikpfX11cGRhdGVWaWV3U3RhdGUodCl7dGhpcy5zdXBwcmVzc1N0YXRlVXBkYXRlPSEwO2xldCByPUpjLmdldFN0YXRlKCk7ci5hY3RpdmVWaWV3IT09dCYmSmMuc2V0U3RhdGUoey4uLnIsYWN0aXZlVmlldzp0fSksdGhpcy5zdXBwcmVzc1N0YXRlVXBkYXRlPSExfW5hdmlnYXRlVG8odCl7dGhpcy5yb3V0ZXIucHVzaFVybCh0KX1uYXZpZ2F0ZVRvVmlldyh0KXtaMHQuaW5jbHVkZXModCk/dGhpcy5uYXZpZ2F0ZVRvKHRoaXMudmlld1RvUGF0aCh0KSk6dGhpcy5uYXZpZ2F0ZVRvKHRoaXMudmlld1RvUGF0aCgib3ZlcnZpZXciKSl9ZGVzdHJveSgpe3RoaXMucm91dGVyLmRlc3Ryb3koKSx0aGlzLmluaXRpYWxpemVkPSExfX0sZGc9bmV3IFgwdH0pO3ZhciB2bCxKQnI9bCgoKT0+e19uKCk7dmw9aGFgCiAgOmhvc3QgewogICAgZGlzcGxheTogYmxvY2s7CiAgICBtYXJnaW46IGF1dG87CiAgICBtYXgtd2lkdGg6IDEyODBweDsKICAgIHBhZGRpbmc6IDE2cHggMTZweDsKICB9CmB9KTt2YXIgZUhyLFEwdCxyeWEsb1gsdEhyPWwoKCk9PntfbigpO2VIcj1bR2koIm9ianN0LXNlY3Rpb25oZWFkaW5nIildO29YPWNsYXNzIGV4dGVuZHMocnlhPVlpKXtzdGF0aWMgc3R5bGVzPVtpdC5kZWZhdWx0U3R5bGVzLGhhYAogICAgICA6aG9zdCB7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDsKICAgICAgfQogICAgICBoMSB7CiAgICAgICAgZm9udC1zaXplOiAyNHB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgbWFyZ2luOiAwOwogICAgICAgIGNvbG9yOiAke2l0LmJkVGhlbWUoIiMxYTFhMmUiLCIjZTBlMGUwIil9OwogICAgICB9CiAgICBgXTtyZW5kZXIoKXtyZXR1cm4gRHRgPGgxPjxzbG90Pjwvc2xvdD48L2gxPmB9fTtRMHQ9eTEocnlhKSxvWD1wYShRMHQsMCwiT2Jqc3RTZWN0aW9uSGVhZGluZyIsZUhyLG9YKSxocihRMHQsMSxvWCl9KTt2YXIgSzg9bCgoKT0+e0pCcigpO3RIcigpfSk7dmFyIG5Icj17fTtxZShuSHIse09ianN0Vmlld092ZXJ2aWV3OigpPT5yMH0pO3ZhciBySHIsYUhyLGlIcixvSHIsdDAsSzB0LEowdCxyMCxlNHQ9bChhc3luYygpPT57UW4oKTthd2FpdCBibCgpO0s4KCk7X24oKTtvSHI9W0dpKCJvYmpzdC12aWV3LW92ZXJ2aWV3IildO3IwPWNsYXNzIGV4dGVuZHMoaUhyPVlpLGFIcj1bcGkoKV0sckhyPVtwaSgpXSxpSHIpe2NvbnN0cnVjdG9yKCl7c3VwZXIoKTtjMSh0aGlzLEswdCxocih0MCw4LHRoaXMse3N0YXR1czpudWxsLGNvbm5lY3Rpb25JbmZvOm51bGx9KSksaHIodDAsMTEsdGhpcyk7YzEodGhpcyxKMHQsaHIodDAsMTIsdGhpcyx7YnVja2V0czpbXX0pKSxocih0MCwxNSx0aGlzKTtsZXQgcj14bC5zZWxlY3QoaT0+aSkuc3Vic2NyaWJlKGk9Pnt0aGlzLnNlcnZlclN0YXRlPWl9KTt0aGlzLnJ4U3Vic2NyaXB0aW9ucy5wdXNoKHIpO2xldCBhPXpvLnNlbGVjdChpPT5pKS5zdWJzY3JpYmUoaT0+e3RoaXMuYnVja2V0c1N0YXRlPWl9KTt0aGlzLnJ4U3Vic2NyaXB0aW9ucy5wdXNoKGEpfWFzeW5jIGNvbm5lY3RlZENhbGxiYWNrKCl7c3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKSx4bC5kaXNwYXRjaEFjdGlvbihYOCxudWxsKSx6by5kaXNwYXRjaEFjdGlvbihROCxudWxsKX1yZW5kZXIoKXtsZXQgcj10aGlzLnNlcnZlclN0YXRlLnN0YXR1cyxhPXRoaXMuc2VydmVyU3RhdGUuY29ubmVjdGlvbkluZm8saT1be2lkOiJzdGF0dXMiLHRpdGxlOiJTZXJ2ZXIgU3RhdHVzIix2YWx1ZTpyPy5ydW5uaW5nPyJPbmxpbmUiOiJPZmZsaW5lIix0eXBlOiJ0ZXh0IixpY29uOiJsdWNpZGU6c2VydmVyIixjb2xvcjpyPy5ydW5uaW5nPyIjNGNhZjUwIjoiI2Y0NDMzNiIsZGVzY3JpcHRpb246cj9gVXB0aW1lOiAke3RoaXMuZm9ybWF0VXB0aW1lKHIudXB0aW1lKX1gOiJMb2FkaW5nLi4uIn0se2lkOiJidWNrZXRzIix0aXRsZToiQnVja2V0cyIsdmFsdWU6cj8uYnVja2V0Q291bnQ/PzAsdHlwZToibnVtYmVyIixpY29uOiJsdWNpZGU6ZGF0YWJhc2UiLGNvbG9yOiIjMjE5NmYzIn0se2lkOiJvYmplY3RzIix0aXRsZToiVG90YWwgT2JqZWN0cyIsdmFsdWU6cj8udG90YWxPYmplY3RDb3VudD8/MCx0eXBlOiJudW1iZXIiLGljb246Imx1Y2lkZTpmaWxlIixjb2xvcjoiI2ZmOTgwMCJ9LHtpZDoic3RvcmFnZSIsdGl0bGU6IlN0b3JhZ2UgVXNlZCIsdmFsdWU6cj90aGlzLmZvcm1hdEJ5dGVzKHIudG90YWxTdG9yYWdlQnl0ZXMpOiIwIEIiLHR5cGU6InRleHQiLGljb246Imx1Y2lkZTpoYXJkRHJpdmUiLGNvbG9yOiIjOWMyN2IwIn0se2lkOiJzdG9yYWdlUG9ydCIsdGl0bGU6IlN0b3JhZ2UgUG9ydCIsdmFsdWU6cj8ub2Jqc3RQb3J0Pz85ZTMsdHlwZToibnVtYmVyIixpY29uOiJsdWNpZGU6bmV0d29yayIsY29sb3I6IiMwMGJjZDQifSx7aWQ6InJlZ2lvbiIsdGl0bGU6IlJlZ2lvbiIsdmFsdWU6cj8ucmVnaW9uPz8idXMtZWFzdC0xIix0eXBlOiJ0ZXh0IixpY29uOiJsdWNpZGU6Z2xvYmUiLGNvbG9yOiIjNjA3ZDhiIn1dO3JldHVybiBEdGAKICAgICAgPG9ianN0LXNlY3Rpb25oZWFkaW5nPk92ZXJ2aWV3PC9vYmpzdC1zZWN0aW9uaGVhZGluZz4KICAgICAgPGRlZXMtc3RhdHNncmlkCiAgICAgICAgLnRpbGVzPSR7aX0KICAgICAgICAuZ3JpZEFjdGlvbnM9JHtbe25hbWU6IlJlZnJlc2giLGljb25OYW1lOiJsdWNpZGU6cmVmcmVzaEN3IixhY3Rpb246YXN5bmMoKT0+e2F3YWl0IHhsLmRpc3BhdGNoQWN0aW9uKFg4LG51bGwpLGF3YWl0IHpvLmRpc3BhdGNoQWN0aW9uKFE4LG51bGwpfX1dfQogICAgICA+PC9kZWVzLXN0YXRzZ3JpZD4KCiAgICAgICR7YT9EdGAKICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29ubmVjdGlvbkluZm8iPgogICAgICAgICAgICAgIDxoMj5Db25uZWN0aW9uIEluZm88L2gyPgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibGFiZWwiPkVuZHBvaW50PC9zcGFuPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InZhbHVlIj4ke2EuZW5kcG9pbnR9OiR7YS5wb3J0fTwvc3Bhbj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImxhYmVsIj5Qcm90b2NvbDwvc3Bhbj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ2YWx1ZSI+JHthLnVzZVNzbD8iSFRUUFMiOiJIVFRQIn08L3NwYW4+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93Ij4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJsYWJlbCI+QWNjZXNzIEtleTwvc3Bhbj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ2YWx1ZSI+JHthLmFjY2Vzc0tleX08L3NwYW4+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93Ij4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJsYWJlbCI+UmVnaW9uPC9zcGFuPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InZhbHVlIj4ke2EucmVnaW9ufTwvc3Bhbj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICBgOiIifQogICAgYH1mb3JtYXRVcHRpbWUocil7bGV0IGE9TWF0aC5mbG9vcihyLzg2NDAwKSxpPU1hdGguZmxvb3IociU4NjQwMC8zNjAwKSxvPU1hdGguZmxvb3IociUzNjAwLzYwKTtyZXR1cm4gYT4wP2Ake2F9ZCAke2l9aCAke299bWA6aT4wP2Ake2l9aCAke299bWA6YCR7b31tYH1mb3JtYXRCeXRlcyhyKXtpZihyPT09MClyZXR1cm4iMCBCIjtsZXQgYT1bIkIiLCJLQiIsIk1CIiwiR0IiLCJUQiJdLGk9TWF0aC5mbG9vcihNYXRoLmxvZyhyKS9NYXRoLmxvZygxMDI0KSk7cmV0dXJuYCR7KHIvTWF0aC5wb3coMTAyNCxpKSkudG9GaXhlZCgxKX0gJHthW2ldfWB9fTt0MD15MShpSHIpLEswdD1uZXcgV2Vha01hcCxKMHQ9bmV3IFdlYWtNYXAscGEodDAsNCwic2VydmVyU3RhdGUiLGFIcixyMCxLMHQpLHBhKHQwLDQsImJ1Y2tldHNTdGF0ZSIsckhyLHIwLEowdCkscjA9cGEodDAsMCwiT2Jqc3RWaWV3T3ZlcnZpZXciLG9IcixyMCksbDEocjAsInN0eWxlcyIsW2l0LmRlZmF1bHRTdHlsZXMsdmwsaGFgCiAgICAgIC5jb25uZWN0aW9uSW5mbyB7CiAgICAgICAgbWFyZ2luLXRvcDogMzJweDsKICAgICAgICBwYWRkaW5nOiAyNHB4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke2l0LmJkVGhlbWUoIiNmNWY1ZjUiLCIjMWExYTJlIil9OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7aXQuYmRUaGVtZSgiI2UwZTBlMCIsIiMyYTJhNGEiKX07CiAgICAgIH0KICAgICAgLmNvbm5lY3Rpb25JbmZvIGgyIHsKICAgICAgICBtYXJnaW46IDAgMCAxNnB4IDA7CiAgICAgICAgZm9udC1zaXplOiAxOHB4OwogICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7CiAgICAgICAgY29sb3I6ICR7aXQuYmRUaGVtZSgiIzMzMyIsIiNjY2MiKX07CiAgICAgIH0KICAgICAgLmNvbm5lY3Rpb25JbmZvIC5yb3cgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICB9CiAgICAgIC5jb25uZWN0aW9uSW5mbyAubGFiZWwgewogICAgICAgIHdpZHRoOiAxMjBweDsKICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgIGNvbG9yOiAke2l0LmJkVGhlbWUoIiM2NjYiLCIjOTk5Iil9OwogICAgICB9CiAgICAgIC5jb25uZWN0aW9uSW5mbyAudmFsdWUgewogICAgICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7CiAgICAgICAgY29sb3I6ICR7aXQuYmRUaGVtZSgiIzMzMyIsIiNlMGUwZTAiKX07CiAgICAgICAgcGFkZGluZzogNHB4IDhweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7CiAgICAgICAgYmFja2dyb3VuZDogJHtpdC5iZFRoZW1lKCIjZThlOGU4IiwiIzI1MjU0MCIpfTsKICAgICAgfQogICAgYF0pLGhyKHQwLDEscjApfSk7dmFyIGRIcj17fTtxZShkSHIse09ianN0Vmlld0J1Y2tldHM6KCk9PmszfSk7dmFyIHNIcixsSHIsY0hyLHVnLHQ0dCxrMyxyNHQ9bChhc3luYygpPT57UW4oKTthd2FpdCBibCgpO0s4KCk7YXdhaXQgRGNlKCk7X24oKTt0WCgpO2NIcj1bR2koIm9ianN0LXZpZXctYnVja2V0cyIpXTtrMz1jbGFzcyBleHRlbmRzKGxIcj1ZaSxzSHI9W3BpKCldLGxIcil7Y29uc3RydWN0b3IoKXtzdXBlcigpO2MxKHRoaXMsdDR0LGhyKHVnLDgsdGhpcyx7YnVja2V0czpbXX0pKSxocih1ZywxMSx0aGlzKTtsZXQgcj16by5zZWxlY3QoYT0+YSkuc3Vic2NyaWJlKGE9Pnt0aGlzLmJ1Y2tldHNTdGF0ZT1hfSk7dGhpcy5yeFN1YnNjcmlwdGlvbnMucHVzaChyKX1hc3luYyBjb25uZWN0ZWRDYWxsYmFjaygpe3N1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCksem8uZGlzcGF0Y2hBY3Rpb24oUTgsbnVsbCl9cmVuZGVyKCl7cmV0dXJuIER0YAogICAgICA8b2Jqc3Qtc2VjdGlvbmhlYWRpbmc+QnVja2V0czwvb2Jqc3Qtc2VjdGlvbmhlYWRpbmc+CiAgICAgIDxkZWVzLXRhYmxlCiAgICAgICAgaGVhZGluZzE9IkJ1Y2tldHMiCiAgICAgICAgaGVhZGluZzI9Ik1hbmFnZSB5b3VyIHN0b3JhZ2UgYnVja2V0cyIKICAgICAgICAuZGF0YT0ke3RoaXMuYnVja2V0c1N0YXRlLmJ1Y2tldHN9CiAgICAgICAgLmRhdGFOYW1lPSR7ImJ1Y2tldCJ9CiAgICAgICAgLnNlYXJjaGFibGU9JHshMH0KICAgICAgICAuZGlzcGxheUZ1bmN0aW9uPSR7cj0+KHtuYW1lOnIubmFtZSxvYmplY3RzOlN0cmluZyhyLm9iamVjdENvdW50KSxzaXplOnRoaXMuZm9ybWF0Qnl0ZXMoci50b3RhbFNpemVCeXRlcyksY3JlYXRlZDpuZXcgRGF0ZShyLmNyZWF0aW9uRGF0ZSkudG9Mb2NhbGVEYXRlU3RyaW5nKCl9KX0KICAgICAgICAuZGF0YUFjdGlvbnM9JHtbe25hbWU6IkNyZWF0ZSBCdWNrZXQiLGljb25OYW1lOiJsdWNpZGU6cGx1cyIsdHlwZTpbImhlYWRlciJdLGFjdGlvbkZ1bmM6YXN5bmMoKT0+e2F3YWl0IHRoaXMuc2hvd0NyZWF0ZUJ1Y2tldE1vZGFsKCl9fSx7bmFtZToiQnJvd3NlIixpY29uTmFtZToibHVjaWRlOmZvbGRlck9wZW4iLHR5cGU6WyJpblJvdyJdLGFjdGlvbkZ1bmM6YXN5bmMgcj0+e2F3YWl0IFo4LmRpc3BhdGNoQWN0aW9uKExjZSx7YnVja2V0TmFtZTpyLml0ZW0ubmFtZSxwcmVmaXg6IiIsZGVsaW1pdGVyOiIvIn0pLGRnLm5hdmlnYXRlVG9WaWV3KCJicm93c2VyIil9fSx7bmFtZToiUG9saWN5IixpY29uTmFtZToibHVjaWRlOnNoaWVsZCIsdHlwZTpbImluUm93Il0sYWN0aW9uRnVuYzphc3luYyByPT57YXdhaXQgdGhpcy5zaG93UG9saWN5TW9kYWwoci5pdGVtLm5hbWUpfX0se25hbWU6IkRlbGV0ZSIsaWNvbk5hbWU6Imx1Y2lkZTp0cmFzaDIiLHR5cGU6WyJpblJvdyIsImNvbnRleHRtZW51Il0sYWN0aW9uRnVuYzphc3luYyByPT57YXdhaXQgdGhpcy5zaG93RGVsZXRlQnVja2V0TW9kYWwoci5pdGVtLm5hbWUpfX1dfQogICAgICA+PC9kZWVzLXRhYmxlPgogICAgYH1hc3luYyBzaG93Q3JlYXRlQnVja2V0TW9kYWwoKXthd2FpdCBHdC5jcmVhdGVBbmRTaG93KHtoZWFkaW5nOiJDcmVhdGUgQnVja2V0Iixjb250ZW50OkR0YAogICAgICAgIDxkZWVzLWZvcm0+CiAgICAgICAgICA8ZGVlcy1pbnB1dC10ZXh0IC5rZXk9JHsiYnVja2V0TmFtZSJ9IC5sYWJlbD0keyJCdWNrZXQgTmFtZSJ9IC5yZXF1aXJlZD0keyEwfT48L2RlZXMtaW5wdXQtdGV4dD4KICAgICAgICA8L2RlZXMtZm9ybT4KICAgICAgYCxtZW51T3B0aW9uczpbe25hbWU6IkNhbmNlbCIsYWN0aW9uOmFzeW5jIHI9PntyLmRlc3Ryb3koKX19LHtuYW1lOiJDcmVhdGUiLGFjdGlvbjphc3luYyByPT57bGV0IGk9YXdhaXQgci5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoImRlZXMtZm9ybSIpLmNvbGxlY3RGb3JtRGF0YSgpO2kuYnVja2V0TmFtZSYmYXdhaXQgem8uZGlzcGF0Y2hBY3Rpb24oVkJyLHtidWNrZXROYW1lOmkuYnVja2V0TmFtZX0pLHIuZGVzdHJveSgpfX1dfSl9YXN5bmMgc2hvd0RlbGV0ZUJ1Y2tldE1vZGFsKHIpe2F3YWl0IEd0LmNyZWF0ZUFuZFNob3coe2hlYWRpbmc6IkRlbGV0ZSBCdWNrZXQiLGNvbnRlbnQ6RHRgPHA+QXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSBidWNrZXQgPHN0cm9uZz4ke3J9PC9zdHJvbmc+PyBUaGlzIGFjdGlvbiBjYW5ub3QgYmUgdW5kb25lLjwvcD5gLG1lbnVPcHRpb25zOlt7bmFtZToiQ2FuY2VsIixhY3Rpb246YXN5bmMgYT0+e2EuZGVzdHJveSgpfX0se25hbWU6IkRlbGV0ZSIsYWN0aW9uOmFzeW5jIGE9Pnthd2FpdCB6by5kaXNwYXRjaEFjdGlvbihVQnIse2J1Y2tldE5hbWU6cn0pLGEuZGVzdHJveSgpfX1dfSl9YXN5bmMgc2hvd1BvbGljeU1vZGFsKHIpe2xldCBhPWF3YWl0IHpjZShyKSxpPW51bGwsbz0obixzKT0+RHRgCiAgICAgIDxzdHlsZT4KICAgICAgICAucG9saWN5LWxpc3RzIHsgZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgZ2FwOiAxNnB4OyB9CiAgICAgICAgLnBvbGljeS1zZWN0aW9uIGg0IHsKICAgICAgICAgIG1hcmdpbjogMCAwIDhweCAwOwogICAgICAgICAgZm9udC1zaXplOiAxM3B4OwogICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICAgIGNvbG9yOiAke2l0LmJkVGhlbWUoIiMzMzMiLCIjY2NjIil9OwogICAgICAgIH0KICAgICAgICAucG9saWN5LWl0ZW0gewogICAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7CiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47CiAgICAgICAgICBwYWRkaW5nOiA4cHggMTJweDsKICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsKICAgICAgICAgIGJhY2tncm91bmQ6ICR7aXQuYmRUaGVtZSgiI2Y1ZjVmNSIsIiMxYTFhMmUiKX07CiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7CiAgICAgICAgICBjb2xvcjogJHtpdC5iZFRoZW1lKCIjMzMzIiwiI2VlZSIpfTsKICAgICAgICB9CiAgICAgICAgLnBvbGljeS1pdGVtLWluZm8geyBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBnYXA6IDJweDsgfQogICAgICAgIC5wb2xpY3ktaXRlbS1uYW1lIHsgZm9udC1zaXplOiAxNHB4OyBmb250LXdlaWdodDogNTAwOyB9CiAgICAgICAgLnBvbGljeS1pdGVtLWRlc2MgeyBmb250LXNpemU6IDEycHg7IGNvbG9yOiAke2l0LmJkVGhlbWUoIiM2NjYiLCIjOTk5Iil9OyB9CiAgICAgICAgLnBvbGljeS1pdGVtIGJ1dHRvbiB7CiAgICAgICAgICBwYWRkaW5nOiA0cHggMTJweDsKICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgICAgIGJvcmRlcjogbm9uZTsKICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDsKICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7CiAgICAgICAgICBmbGV4LXNocmluazogMDsKICAgICAgICB9CiAgICAgICAgLmJ0bi1kZXRhY2ggewogICAgICAgICAgYmFja2dyb3VuZDogJHtpdC5iZFRoZW1lKCIjZmZlYmVlIiwiIzNlMWExYSIpfTsKICAgICAgICAgIGNvbG9yOiAke2l0LmJkVGhlbWUoIiNjNjI4MjgiLCIjZWY1MzUwIil9OwogICAgICAgIH0KICAgICAgICAuYnRuLWRldGFjaDpob3ZlciB7IG9wYWNpdHk6IDAuODsgfQogICAgICAgIC5idG4tYXR0YWNoIHsKICAgICAgICAgIGJhY2tncm91bmQ6ICR7aXQuYmRUaGVtZSgiI2UzZjJmZCIsIiMxYTJhM2UiKX07CiAgICAgICAgICBjb2xvcjogJHtpdC5iZFRoZW1lKCIjMTU2NWMwIiwiIzY0YjVmNiIpfTsKICAgICAgICB9CiAgICAgICAgLmJ0bi1hdHRhY2g6aG92ZXIgeyBvcGFjaXR5OiAwLjg7IH0KICAgICAgICAuZW1wdHktbm90ZSB7CiAgICAgICAgICBjb2xvcjogJHtpdC5iZFRoZW1lKCIjOTk5IiwiIzY2NiIpfTsKICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsKICAgICAgICAgIHBhZGRpbmc6IDhweCAwOwogICAgICAgIH0KICAgICAgPC9zdHlsZT4KICAgICAgPGRpdiBjbGFzcz0icG9saWN5LWxpc3RzIj4KICAgICAgICA8ZGl2IGNsYXNzPSJwb2xpY3ktc2VjdGlvbiI+CiAgICAgICAgICA8aDQ+QXR0YWNoZWQgUG9saWNpZXMgKCR7bi5sZW5ndGh9KTwvaDQ+CiAgICAgICAgICAke24ubGVuZ3RoPjA/bi5tYXAoYz0+RHRgCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwb2xpY3ktaXRlbSI+CiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBvbGljeS1pdGVtLWluZm8iPgogICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJwb2xpY3ktaXRlbS1uYW1lIj4ke2MubmFtZX08L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgJHtjLmRlc2NyaXB0aW9uP0R0YDxzcGFuIGNsYXNzPSJwb2xpY3ktaXRlbS1kZXNjIj4ke2MuZGVzY3JpcHRpb259PC9zcGFuPmA6IiJ9CiAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJidG4tZGV0YWNoIiBAY2xpY2s9JHthc3luYyBkPT57ZC50YXJnZXQuZGlzYWJsZWQ9ITAsYXdhaXQgX2NlKGMuaWQscik7bGV0IGY9YXdhaXQgemNlKHIpO2kmJihpLmNvbnRlbnQ9byhmLmF0dGFjaGVkUG9saWNpZXMsZi5hdmFpbGFibGVQb2xpY2llcykpfX0+RGV0YWNoPC9idXR0b24+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICBgKTpEdGA8cCBjbGFzcz0iZW1wdHktbm90ZSI+Tm8gcG9saWNpZXMgYXR0YWNoZWQgdG8gdGhpcyBidWNrZXQuPC9wPmB9CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0icG9saWN5LXNlY3Rpb24iPgogICAgICAgICAgPGg0PkF2YWlsYWJsZSBQb2xpY2llcyAoJHtzLmxlbmd0aH0pPC9oND4KICAgICAgICAgICR7cy5sZW5ndGg+MD9zLm1hcChjPT5EdGAKICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBvbGljeS1pdGVtIj4KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icG9saWN5LWl0ZW0taW5mbyI+CiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InBvbGljeS1pdGVtLW5hbWUiPiR7Yy5uYW1lfTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAke2MuZGVzY3JpcHRpb24/RHRgPHNwYW4gY2xhc3M9InBvbGljeS1pdGVtLWRlc2MiPiR7Yy5kZXNjcmlwdGlvbn08L3NwYW4+YDoiIn0KICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImJ0bi1hdHRhY2giIEBjbGljaz0ke2FzeW5jIGQ9PntkLnRhcmdldC5kaXNhYmxlZD0hMCxhd2FpdCBDY2UoYy5pZCxyKTtsZXQgZj1hd2FpdCB6Y2Uocik7aSYmKGkuY29udGVudD1vKGYuYXR0YWNoZWRQb2xpY2llcyxmLmF2YWlsYWJsZVBvbGljaWVzKSl9fT5BdHRhY2g8L2J1dHRvbj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgIGApOkR0YDxwIGNsYXNzPSJlbXB0eS1ub3RlIj4ke24ubGVuZ3RoPjA/IkFsbCBwb2xpY2llcyBhcmUgYWxyZWFkeSBhdHRhY2hlZC4iOiJObyBwb2xpY2llcyBkZWZpbmVkIHlldC4gQ3JlYXRlIHBvbGljaWVzIGluIHRoZSBQb2xpY2llcyB2aWV3LiJ9PC9wPmB9CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgYDtpPWF3YWl0IEd0LmNyZWF0ZUFuZFNob3coe2hlYWRpbmc6YFBvbGljaWVzIGZvcjogJHtyfWAsY29udGVudDpvKGEuYXR0YWNoZWRQb2xpY2llcyxhLmF2YWlsYWJsZVBvbGljaWVzKSxtZW51T3B0aW9uczpbe25hbWU6IkRvbmUiLGFjdGlvbjphc3luYyBuPT57bi5kZXN0cm95KCl9fV19KX1mb3JtYXRCeXRlcyhyKXtpZihyPT09MClyZXR1cm4iMCBCIjtsZXQgYT1bIkIiLCJLQiIsIk1CIiwiR0IiLCJUQiJdLGk9TWF0aC5mbG9vcihNYXRoLmxvZyhyKS9NYXRoLmxvZygxMDI0KSk7cmV0dXJuYCR7KHIvTWF0aC5wb3coMTAyNCxpKSkudG9GaXhlZCgxKX0gJHthW2ldfWB9fTt1Zz15MShsSHIpLHQ0dD1uZXcgV2Vha01hcCxwYSh1Zyw0LCJidWNrZXRzU3RhdGUiLHNIcixrMyx0NHQpLGszPXBhKHVnLDAsIk9ianN0Vmlld0J1Y2tldHMiLGNIcixrMyksbDEoazMsInN0eWxlcyIsW2l0LmRlZmF1bHRTdHlsZXMsdmxdKSxocih1ZywxLGszKX0pO3ZhciBTMyx1SHIsZkhyPWwoYXN5bmMoKT0+e1FuKCk7YXdhaXQgYmwoKTthWCgpO1MzPSgpPT5Tby5nZXRTdGF0ZSgpLmlkZW50aXR5LHVIcj0oKT0+KHthc3luYyBsaXN0T2JqZWN0cyhlLHQscil7bGV0IGk9YXdhaXQgbmV3IFl0LnBsdWdpbnMudHlwZWRyZXF1ZXN0LlR5cGVkUmVxdWVzdCgiL3R5cGVkcmVxdWVzdCIsImxpc3RPYmplY3RzIikuZmlyZSh7aWRlbnRpdHk6UzMoKSxidWNrZXROYW1lOmUscHJlZml4OnR8fCIiLGRlbGltaXRlcjpyfHwiLyJ9KTtyZXR1cm57b2JqZWN0czppLnJlc3VsdC5vYmplY3RzLm1hcChvPT4oe2tleTpvLmtleSxzaXplOm8uc2l6ZSxsYXN0TW9kaWZpZWQ6bmV3IERhdGUoby5sYXN0TW9kaWZpZWQpLnRvSVNPU3RyaW5nKCl9KSkscHJlZml4ZXM6aS5yZXN1bHQuY29tbW9uUHJlZml4ZXN9fSxhc3luYyBnZXRPYmplY3QoZSx0KXtyZXR1cm4gYXdhaXQgbmV3IFl0LnBsdWdpbnMudHlwZWRyZXF1ZXN0LlR5cGVkUmVxdWVzdCgiL3R5cGVkcmVxdWVzdCIsImdldE9iamVjdCIpLmZpcmUoe2lkZW50aXR5OlMzKCksYnVja2V0TmFtZTplLGtleTp0fSl9LGFzeW5jIHB1dE9iamVjdChlLHQscixhKXtyZXR1cm4oYXdhaXQgbmV3IFl0LnBsdWdpbnMudHlwZWRyZXF1ZXN0LlR5cGVkUmVxdWVzdCgiL3R5cGVkcmVxdWVzdCIsInB1dE9iamVjdCIpLmZpcmUoe2lkZW50aXR5OlMzKCksYnVja2V0TmFtZTplLGtleTp0LGJhc2U2NENvbnRlbnQ6cixjb250ZW50VHlwZTphfSkpLm9rfSxhc3luYyBkZWxldGVPYmplY3QoZSx0KXtyZXR1cm4oYXdhaXQgbmV3IFl0LnBsdWdpbnMudHlwZWRyZXF1ZXN0LlR5cGVkUmVxdWVzdCgiL3R5cGVkcmVxdWVzdCIsImRlbGV0ZU9iamVjdCIpLmZpcmUoe2lkZW50aXR5OlMzKCksYnVja2V0TmFtZTplLGtleTp0fSkpLm9rfSxhc3luYyBkZWxldGVQcmVmaXgoZSx0KXtyZXR1cm4oYXdhaXQgbmV3IFl0LnBsdWdpbnMudHlwZWRyZXF1ZXN0LlR5cGVkUmVxdWVzdCgiL3R5cGVkcmVxdWVzdCIsImRlbGV0ZVByZWZpeCIpLmZpcmUoe2lkZW50aXR5OlMzKCksYnVja2V0TmFtZTplLHByZWZpeDp0fSkpLm9rfSxhc3luYyBnZXRPYmplY3RVcmwoZSx0KXtyZXR1cm4oYXdhaXQgbmV3IFl0LnBsdWdpbnMudHlwZWRyZXF1ZXN0LlR5cGVkUmVxdWVzdCgiL3R5cGVkcmVxdWVzdCIsImdldE9iamVjdFVybCIpLmZpcmUoe2lkZW50aXR5OlMzKCksYnVja2V0TmFtZTplLGtleTp0fSkpLnVybH0sYXN5bmMgbW92ZU9iamVjdChlLHQscil7cmV0dXJuIGF3YWl0IG5ldyBZdC5wbHVnaW5zLnR5cGVkcmVxdWVzdC5UeXBlZFJlcXVlc3QoIi90eXBlZHJlcXVlc3QiLCJtb3ZlT2JqZWN0IikuZmlyZSh7aWRlbnRpdHk6UzMoKSxidWNrZXROYW1lOmUsc291cmNlS2V5OnQsZGVzdEtleTpyfSl9LGFzeW5jIG1vdmVQcmVmaXgoZSx0LHIpe3JldHVybiBhd2FpdCBuZXcgWXQucGx1Z2lucy50eXBlZHJlcXVlc3QuVHlwZWRSZXF1ZXN0KCIvdHlwZWRyZXF1ZXN0IiwibW92ZVByZWZpeCIpLmZpcmUoe2lkZW50aXR5OlMzKCksYnVja2V0TmFtZTplLHNvdXJjZVByZWZpeDp0LGRlc3RQcmVmaXg6cn0pfX0pfSk7dmFyIHhIcj17fTtxZSh4SHIse09ianN0Vmlld09iamVjdHM6KCk9PmkwfSk7dmFyIHBIcixoSHIsbUhyLGdIcixhMCxhNHQsaTR0LGkwLG80dD1sKGFzeW5jKCk9PntRbigpO2F3YWl0IGJsKCk7YXdhaXQgZkhyKCk7X24oKTtnSHI9W0dpKCJvYmpzdC12aWV3LW9iamVjdHMiKV07aTA9Y2xhc3MgZXh0ZW5kcyhtSHI9WWksaEhyPVtwaSgpXSxwSHI9W3BpKCldLG1Icil7Y29uc3RydWN0b3IoKXtzdXBlcigpO2MxKHRoaXMsYTR0LGhyKGEwLDgsdGhpcyx7YnVja2V0czpbXX0pKSxocihhMCwxMSx0aGlzKTtjMSh0aGlzLGk0dCxocihhMCwxMix0aGlzLCIiKSksaHIoYTAsMTUsdGhpcyk7bDEodGhpcywiZGF0YVByb3ZpZGVyIix1SHIoKSk7bGV0IHI9em8uc2VsZWN0KGk9PmkpLnN1YnNjcmliZShpPT57dGhpcy5idWNrZXRzU3RhdGU9aX0pO3RoaXMucnhTdWJzY3JpcHRpb25zLnB1c2gocik7bGV0IGE9Wjguc2VsZWN0KGk9PmkuY3VycmVudEJ1Y2tldCkuc3Vic2NyaWJlKGk9PntpJiYodGhpcy5zZWxlY3RlZEJ1Y2tldD1pKX0pO3RoaXMucnhTdWJzY3JpcHRpb25zLnB1c2goYSl9YXN5bmMgY29ubmVjdGVkQ2FsbGJhY2soKXtzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpLHRoaXMuYnVja2V0c1N0YXRlLmJ1Y2tldHMubGVuZ3RoPT09MCYmem8uZGlzcGF0Y2hBY3Rpb24oUTgsbnVsbCl9cmVuZGVyKCl7cmV0dXJuIER0YAogICAgICA8ZGl2IGNsYXNzPSJidWNrZXQtYmFyIj4KICAgICAgICA8bGFiZWw+QnVja2V0OjwvbGFiZWw+CiAgICAgICAgJHt0aGlzLmJ1Y2tldHNTdGF0ZS5idWNrZXRzLm1hcChyPT5EdGAKICAgICAgICAgICAgPHNwYW4KICAgICAgICAgICAgICBjbGFzcz0iYnVja2V0LWNoaXAgJHt0aGlzLnNlbGVjdGVkQnVja2V0PT09ci5uYW1lPyJhY3RpdmUiOiIifSIKICAgICAgICAgICAgICBAY2xpY2s9JHsoKT0+dGhpcy5zZWxlY3RCdWNrZXQoci5uYW1lKX0KICAgICAgICAgICAgPiR7ci5uYW1lfTwvc3Bhbj4KICAgICAgICAgIGApfQogICAgICAgICR7dGhpcy5idWNrZXRzU3RhdGUuYnVja2V0cy5sZW5ndGg9PT0wP0R0YDxzcGFuIHN0eWxlPSJjb2xvcjogIzk5OTsgZm9udC1zaXplOiAxM3B4OyI+Tm8gYnVja2V0cyBmb3VuZDwvc3Bhbj5gOiIifQogICAgICA8L2Rpdj4KICAgICAgJHt0aGlzLnNlbGVjdGVkQnVja2V0P0R0YAogICAgICAgICAgICA8ZGl2IGNsYXNzPSJicm93c2VyLWNvbnRhaW5lciI+CiAgICAgICAgICAgICAgPGRlZXMtc3RvcmFnZS1icm93c2VyCiAgICAgICAgICAgICAgICAuZGF0YVByb3ZpZGVyPSR7dGhpcy5kYXRhUHJvdmlkZXJ9CiAgICAgICAgICAgICAgICAuYnVja2V0TmFtZT0ke3RoaXMuc2VsZWN0ZWRCdWNrZXR9CiAgICAgICAgICAgICAgPjwvZGVlcy1zdG9yYWdlLWJyb3dzZXI+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgYDpEdGAKICAgICAgICAgICAgPGRpdiBjbGFzcz0ibm9CdWNrZXQiPgogICAgICAgICAgICAgIDxwPlNlbGVjdCBhIGJ1Y2tldCBhYm92ZSB0byBicm93c2Ugb2JqZWN0cy48L3A+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgYH0KICAgIGB9c2VsZWN0QnVja2V0KHIpe3RoaXMuc2VsZWN0ZWRCdWNrZXQ9cixaOC5kaXNwYXRjaEFjdGlvbihMY2Use2J1Y2tldE5hbWU6cixwcmVmaXg6IiIsZGVsaW1pdGVyOiIvIn0pfX07YTA9eTEobUhyKSxhNHQ9bmV3IFdlYWtNYXAsaTR0PW5ldyBXZWFrTWFwLHBhKGEwLDQsImJ1Y2tldHNTdGF0ZSIsaEhyLGkwLGE0dCkscGEoYTAsNCwic2VsZWN0ZWRCdWNrZXQiLHBIcixpMCxpNHQpLGkwPXBhKGEwLDAsIk9ianN0Vmlld09iamVjdHMiLGdIcixpMCksbDEoaTAsInN0eWxlcyIsW2l0LmRlZmF1bHRTdHlsZXMsaGFgCiAgICAgIDpob3N0IHsKICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgIH0KICAgICAgLmJ1Y2tldC1iYXIgewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBnYXA6IDEycHg7CiAgICAgICAgcGFkZGluZzogOHB4IDE2cHg7CiAgICAgICAgZmxleC13cmFwOiB3cmFwOwogICAgICB9CiAgICAgIC5idWNrZXQtYmFyIGxhYmVsIHsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsKICAgICAgICBjb2xvcjogJHtpdC5iZFRoZW1lKCIjMzMzIiwiI2NjYyIpfTsKICAgICAgfQogICAgICAuYnVja2V0LWNoaXAgewogICAgICAgIHBhZGRpbmc6IDZweCAxNnB4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7CiAgICAgICAgZm9udC1zaXplOiAxM3B4OwogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke2l0LmJkVGhlbWUoIiNkZGQiLCIjNDQ0Iil9OwogICAgICAgIGJhY2tncm91bmQ6ICR7aXQuYmRUaGVtZSgiI2Y1ZjVmNSIsIiMxYTFhMmUiKX07CiAgICAgICAgY29sb3I6ICR7aXQuYmRUaGVtZSgiIzMzMyIsIiNjY2MiKX07CiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7CiAgICAgIH0KICAgICAgLmJ1Y2tldC1jaGlwOmhvdmVyIHsKICAgICAgICBib3JkZXItY29sb3I6ICR7aXQuYmRUaGVtZSgiIzIxOTZmMyIsIiM2NGI1ZjYiKX07CiAgICAgICAgY29sb3I6ICR7aXQuYmRUaGVtZSgiIzIxOTZmMyIsIiM2NGI1ZjYiKX07CiAgICAgIH0KICAgICAgLmJ1Y2tldC1jaGlwLmFjdGl2ZSB7CiAgICAgICAgYmFja2dyb3VuZDogJHtpdC5iZFRoZW1lKCIjMjE5NmYzIiwiIzE1NjVjMCIpfTsKICAgICAgICBjb2xvcjogd2hpdGU7CiAgICAgICAgYm9yZGVyLWNvbG9yOiAke2l0LmJkVGhlbWUoIiMyMTk2ZjMiLCIjMTU2NWMwIil9OwogICAgICB9CiAgICAgIC5icm93c2VyLWNvbnRhaW5lciB7CiAgICAgICAgZmxleDogMTsKICAgICAgICBtaW4taGVpZ2h0OiAwOwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgIH0KICAgICAgLm5vQnVja2V0IHsKICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgcGFkZGluZzogNjRweCAwOwogICAgICAgIGNvbG9yOiAke2l0LmJkVGhlbWUoIiM2NjYiLCIjOTk5Iil9OwogICAgICAgIGZvbnQtc2l6ZTogMTZweDsKICAgICAgfQogICAgYF0pLGhyKGEwLDEsaTApfSk7dmFyIHdIcj17fTtxZSh3SHIse09ianN0Vmlld1BvbGljaWVzOigpPT56M30pO3ZhciBiSHIsdkhyLHlIcixmZyxuNHQsejMsczR0PWwoYXN5bmMoKT0+e1FuKCk7YXdhaXQgYmwoKTtLOCgpO2FYKCk7X24oKTt0WCgpO3lIcj1bR2koIm9ianN0LXZpZXctcG9saWNpZXMiKV07ejM9Y2xhc3MgZXh0ZW5kcyh2SHI9WWksYkhyPVtwaSgpXSx2SHIpe2NvbnN0cnVjdG9yKCl7c3VwZXIoKTtjMSh0aGlzLG40dCxocihmZyw4LHRoaXMse3BvbGljaWVzOltdfSkpLGhyKGZnLDExLHRoaXMpO2xldCByPWdsLnNlbGVjdChhPT5hKS5zdWJzY3JpYmUoYT0+e3RoaXMucG9saWNpZXNTdGF0ZT1hfSk7dGhpcy5yeFN1YnNjcmlwdGlvbnMucHVzaChyKX1hc3luYyBjb25uZWN0ZWRDYWxsYmFjaygpe3N1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCksZ2wuZGlzcGF0Y2hBY3Rpb24oV0JyLG51bGwpfXJlbmRlcigpe3JldHVybiBEdGAKICAgICAgPG9ianN0LXNlY3Rpb25oZWFkaW5nPlBvbGljaWVzPC9vYmpzdC1zZWN0aW9uaGVhZGluZz4KICAgICAgPGRlZXMtdGFibGUKICAgICAgICBoZWFkaW5nMT0iTmFtZWQgUG9saWNpZXMiCiAgICAgICAgaGVhZGluZzI9IkNyZWF0ZSByZXVzYWJsZSBwb2xpY2llcyBhbmQgYXR0YWNoIHRoZW0gdG8gYnVja2V0cyIKICAgICAgICAuZGF0YT0ke3RoaXMucG9saWNpZXNTdGF0ZS5wb2xpY2llc30KICAgICAgICAuZGF0YU5hbWU9JHsicG9saWN5In0KICAgICAgICAuZGlzcGxheUZ1bmN0aW9uPSR7cj0+KHtOYW1lOnIubmFtZSxEZXNjcmlwdGlvbjpyLmRlc2NyaXB0aW9uLFN0YXRlbWVudHM6U3RyaW5nKHIuc3RhdGVtZW50cy5sZW5ndGgpLFVwZGF0ZWQ6bmV3IERhdGUoci51cGRhdGVkQXQpLnRvTG9jYWxlRGF0ZVN0cmluZygpfSl9CiAgICAgICAgLmRhdGFBY3Rpb25zPSR7W3tuYW1lOiJDcmVhdGUgUG9saWN5IixpY29uTmFtZToibHVjaWRlOnBsdXMiLHR5cGU6WyJoZWFkZXIiXSxhY3Rpb25GdW5jOmFzeW5jKCk9Pnthd2FpdCB0aGlzLnNob3dDcmVhdGVQb2xpY3lNb2RhbCgpfX0se25hbWU6IkVkaXQiLGljb25OYW1lOiJsdWNpZGU6cGVuY2lsIix0eXBlOlsiaW5Sb3ciXSxhY3Rpb25GdW5jOmFzeW5jIHI9Pnthd2FpdCB0aGlzLnNob3dFZGl0UG9saWN5TW9kYWwoci5pdGVtKX19LHtuYW1lOiJCdWNrZXRzIixpY29uTmFtZToibHVjaWRlOmRhdGFiYXNlIix0eXBlOlsiaW5Sb3ciXSxhY3Rpb25GdW5jOmFzeW5jIHI9Pnthd2FpdCB0aGlzLnNob3dQb2xpY3lCdWNrZXRzTW9kYWwoci5pdGVtKX19LHtuYW1lOiJEZWxldGUiLGljb25OYW1lOiJsdWNpZGU6dHJhc2gyIix0eXBlOlsiaW5Sb3ciLCJjb250ZXh0bWVudSJdLGFjdGlvbkZ1bmM6YXN5bmMgcj0+e2F3YWl0IHRoaXMuc2hvd0RlbGV0ZVBvbGljeU1vZGFsKHIuaXRlbSl9fV19CiAgICAgID48L2RlZXMtdGFibGU+CiAgICBgfWdldERlZmF1bHRTdGF0ZW1lbnRzKCl7cmV0dXJuW3tTaWQ6IlB1YmxpY1JlYWQiLEVmZmVjdDoiQWxsb3ciLFByaW5jaXBhbDoiKiIsQWN0aW9uOiJzMzpHZXRPYmplY3QiLFJlc291cmNlOiJhcm46YXdzOnMzOjo6JHtidWNrZXR9LyoifV19YXN5bmMgc2hvd0NyZWF0ZVBvbGljeU1vZGFsKCl7bGV0IHI9SlNPTi5zdHJpbmdpZnkodGhpcy5nZXREZWZhdWx0U3RhdGVtZW50cygpLG51bGwsMik7YXdhaXQgR3QuY3JlYXRlQW5kU2hvdyh7aGVhZGluZzoiQ3JlYXRlIFBvbGljeSIsY29udGVudDpEdGAKICAgICAgICA8c3R5bGU+CiAgICAgICAgICAucG9saWN5LWZvcm0geyBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBnYXA6IDEycHg7IH0KICAgICAgICAgIC5wb2xpY3ktZm9ybSBsYWJlbCB7IGZvbnQtc2l6ZTogMTNweDsgZm9udC13ZWlnaHQ6IDYwMDsgY29sb3I6ICR7aXQuYmRUaGVtZSgiIzMzMyIsIiNjY2MiKX07IH0KICAgICAgICAgIC5wb2xpY3ktZm9ybSBpbnB1dCwgLnBvbGljeS1mb3JtIHRleHRhcmVhIHsKICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxMnB4OwogICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAke2l0LmJkVGhlbWUoIiNkZGQiLCIjNDQ0Iil9OwogICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR7aXQuYmRUaGVtZSgiI2ZmZiIsIiMxMTEiKX07CiAgICAgICAgICAgIGNvbG9yOiAke2l0LmJkVGhlbWUoIiMzMzMiLCIjZWVlIil9OwogICAgICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgICAgICB9CiAgICAgICAgICAucG9saWN5LWZvcm0gdGV4dGFyZWEgewogICAgICAgICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlOwogICAgICAgICAgICBmb250LXNpemU6IDEycHg7CiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDIwMHB4OwogICAgICAgICAgICByZXNpemU6IHZlcnRpY2FsOwogICAgICAgICAgfQogICAgICAgICAgLnBvbGljeS1mb3JtIGlucHV0OmZvY3VzLCAucG9saWN5LWZvcm0gdGV4dGFyZWE6Zm9jdXMgewogICAgICAgICAgICBvdXRsaW5lOiBub25lOwogICAgICAgICAgICBib3JkZXItY29sb3I6ICR7aXQuYmRUaGVtZSgiIzIxOTZmMyIsIiM2NGI1ZjYiKX07CiAgICAgICAgICB9CiAgICAgICAgICAucG9saWN5LWVycm9yIHsgY29sb3I6ICNlZjUzNTA7IGZvbnQtc2l6ZTogMTNweDsgbWluLWhlaWdodDogMjBweDsgfQogICAgICAgICAgLnBvbGljeS1oaW50IHsgY29sb3I6ICR7aXQuYmRUaGVtZSgiIzY2NiIsIiM5OTkiKX07IGZvbnQtc2l6ZTogMTJweDsgfQogICAgICAgIDwvc3R5bGU+CiAgICAgICAgPGRpdiBjbGFzcz0icG9saWN5LWZvcm0iPgogICAgICAgICAgPGRpdj4KICAgICAgICAgICAgPGxhYmVsPk5hbWU8L2xhYmVsPgogICAgICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgY2xhc3M9InBvbGljeS1uYW1lIiBwbGFjZWhvbGRlcj0iZS5nLiBQdWJsaWMgUmVhZCBBY2Nlc3MiIC8+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgIDxsYWJlbD5EZXNjcmlwdGlvbjwvbGFiZWw+CiAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBjbGFzcz0icG9saWN5LWRlc2NyaXB0aW9uIiBwbGFjZWhvbGRlcj0iZS5nLiBBbGxvdyBhbm9ueW1vdXMgcmVhZCBhY2Nlc3MgdG8gb2JqZWN0cyIgLz4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdj4KICAgICAgICAgICAgPGxhYmVsPlN0YXRlbWVudHMgKEpTT04gYXJyYXkpPC9sYWJlbD4KICAgICAgICAgICAgPHAgY2xhc3M9InBvbGljeS1oaW50Ij5Vc2UgXCR7YnVja2V0fSBpbiBSZXNvdXJjZSBBUk5zIOKAlCBpdCB3aWxsIGJlIHJlcGxhY2VkIHdpdGggdGhlIGFjdHVhbCBidWNrZXQgbmFtZSB3aGVuIGFwcGxpZWQuPC9wPgogICAgICAgICAgICA8dGV4dGFyZWEgY2xhc3M9InBvbGljeS1zdGF0ZW1lbnRzIj4ke3J9PC90ZXh0YXJlYT4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0icG9saWN5LWVycm9yIj48L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgYCxtZW51T3B0aW9uczpbe25hbWU6IkNhbmNlbCIsYWN0aW9uOmFzeW5jIGE9PnthLmRlc3Ryb3koKX19LHtuYW1lOiJDcmVhdGUiLGFjdGlvbjphc3luYyBhPT57bGV0IGk9YS5zaGFkb3dSb290LG89aS5xdWVyeVNlbGVjdG9yKCIucG9saWN5LW5hbWUiKT8udmFsdWU/LnRyaW0oKSxuPWkucXVlcnlTZWxlY3RvcigiLnBvbGljeS1kZXNjcmlwdGlvbiIpPy52YWx1ZT8udHJpbSgpLHM9aS5xdWVyeVNlbGVjdG9yKCIucG9saWN5LXN0YXRlbWVudHMiKT8udmFsdWU/LnRyaW0oKSxjPWkucXVlcnlTZWxlY3RvcigiLnBvbGljeS1lcnJvciIpO2lmKCFvKXtjLnRleHRDb250ZW50PSJOYW1lIGlzIHJlcXVpcmVkLiI7cmV0dXJufWlmKCFzKXtjLnRleHRDb250ZW50PSJTdGF0ZW1lbnRzIGFyZSByZXF1aXJlZC4iO3JldHVybn1sZXQgZDt0cnl7aWYoZD1KU09OLnBhcnNlKHMpLCFBcnJheS5pc0FycmF5KGQpKXRocm93IG5ldyBFcnJvcigiTXVzdCBiZSBhbiBhcnJheSIpfWNhdGNoKGYpe2MudGV4dENvbnRlbnQ9YEludmFsaWQgSlNPTjogJHtmLm1lc3NhZ2V9YDtyZXR1cm59YXdhaXQgZ2wuZGlzcGF0Y2hBY3Rpb24oR0JyLHtuYW1lOm8sZGVzY3JpcHRpb246bnx8IiIsc3RhdGVtZW50czpkfSksYS5kZXN0cm95KCl9fV19KX1hc3luYyBzaG93RWRpdFBvbGljeU1vZGFsKHIpe2xldCBhPUpTT04uc3RyaW5naWZ5KHIuc3RhdGVtZW50cyxudWxsLDIpO2F3YWl0IEd0LmNyZWF0ZUFuZFNob3coe2hlYWRpbmc6YEVkaXQgUG9saWN5OiAke3IubmFtZX1gLGNvbnRlbnQ6RHRgCiAgICAgICAgPHN0eWxlPgogICAgICAgICAgLnBvbGljeS1mb3JtIHsgZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgZ2FwOiAxMnB4OyB9CiAgICAgICAgICAucG9saWN5LWZvcm0gbGFiZWwgeyBmb250LXNpemU6IDEzcHg7IGZvbnQtd2VpZ2h0OiA2MDA7IGNvbG9yOiAke2l0LmJkVGhlbWUoIiMzMzMiLCIjY2NjIil9OyB9CiAgICAgICAgICAucG9saWN5LWZvcm0gaW5wdXQsIC5wb2xpY3ktZm9ybSB0ZXh0YXJlYSB7CiAgICAgICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgICAgICBwYWRkaW5nOiA4cHggMTJweDsKICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHtpdC5iZFRoZW1lKCIjZGRkIiwiIzQ0NCIpfTsKICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgICAgICBiYWNrZ3JvdW5kOiAke2l0LmJkVGhlbWUoIiNmZmYiLCIjMTExIil9OwogICAgICAgICAgICBjb2xvcjogJHtpdC5iZFRoZW1lKCIjMzMzIiwiI2VlZSIpfTsKICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OwogICAgICAgICAgfQogICAgICAgICAgLnBvbGljeS1mb3JtIHRleHRhcmVhIHsKICAgICAgICAgICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTsKICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgICAgICBtaW4taGVpZ2h0OiAyMDBweDsKICAgICAgICAgICAgcmVzaXplOiB2ZXJ0aWNhbDsKICAgICAgICAgIH0KICAgICAgICAgIC5wb2xpY3ktZm9ybSBpbnB1dDpmb2N1cywgLnBvbGljeS1mb3JtIHRleHRhcmVhOmZvY3VzIHsKICAgICAgICAgICAgb3V0bGluZTogbm9uZTsKICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAke2l0LmJkVGhlbWUoIiMyMTk2ZjMiLCIjNjRiNWY2Iil9OwogICAgICAgICAgfQogICAgICAgICAgLnBvbGljeS1lcnJvciB7IGNvbG9yOiAjZWY1MzUwOyBmb250LXNpemU6IDEzcHg7IG1pbi1oZWlnaHQ6IDIwcHg7IH0KICAgICAgICAgIC5wb2xpY3ktaGludCB7IGNvbG9yOiAke2l0LmJkVGhlbWUoIiM2NjYiLCIjOTk5Iil9OyBmb250LXNpemU6IDEycHg7IH0KICAgICAgICA8L3N0eWxlPgogICAgICAgIDxkaXYgY2xhc3M9InBvbGljeS1mb3JtIj4KICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgIDxsYWJlbD5OYW1lPC9sYWJlbD4KICAgICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIGNsYXNzPSJwb2xpY3ktbmFtZSIgLnZhbHVlPSR7ci5uYW1lfSAvPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8ZGl2PgogICAgICAgICAgICA8bGFiZWw+RGVzY3JpcHRpb248L2xhYmVsPgogICAgICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgY2xhc3M9InBvbGljeS1kZXNjcmlwdGlvbiIgLnZhbHVlPSR7ci5kZXNjcmlwdGlvbn0gLz4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdj4KICAgICAgICAgICAgPGxhYmVsPlN0YXRlbWVudHMgKEpTT04gYXJyYXkpPC9sYWJlbD4KICAgICAgICAgICAgPHAgY2xhc3M9InBvbGljeS1oaW50Ij5Vc2UgXCR7YnVja2V0fSBpbiBSZXNvdXJjZSBBUk5zIOKAlCBpdCB3aWxsIGJlIHJlcGxhY2VkIHdpdGggdGhlIGFjdHVhbCBidWNrZXQgbmFtZSB3aGVuIGFwcGxpZWQuPC9wPgogICAgICAgICAgICA8dGV4dGFyZWEgY2xhc3M9InBvbGljeS1zdGF0ZW1lbnRzIj4ke2F9PC90ZXh0YXJlYT4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0icG9saWN5LWVycm9yIj48L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgYCxtZW51T3B0aW9uczpbe25hbWU6IkNhbmNlbCIsYWN0aW9uOmFzeW5jIGk9PntpLmRlc3Ryb3koKX19LHtuYW1lOiJTYXZlIixhY3Rpb246YXN5bmMgaT0+e2xldCBvPWkuc2hhZG93Um9vdCxuPW8ucXVlcnlTZWxlY3RvcigiLnBvbGljeS1uYW1lIik/LnZhbHVlPy50cmltKCkscz1vLnF1ZXJ5U2VsZWN0b3IoIi5wb2xpY3ktZGVzY3JpcHRpb24iKT8udmFsdWU/LnRyaW0oKSxjPW8ucXVlcnlTZWxlY3RvcigiLnBvbGljeS1zdGF0ZW1lbnRzIik/LnZhbHVlPy50cmltKCksZD1vLnF1ZXJ5U2VsZWN0b3IoIi5wb2xpY3ktZXJyb3IiKTtpZighbil7ZC50ZXh0Q29udGVudD0iTmFtZSBpcyByZXF1aXJlZC4iO3JldHVybn1pZighYyl7ZC50ZXh0Q29udGVudD0iU3RhdGVtZW50cyBhcmUgcmVxdWlyZWQuIjtyZXR1cm59bGV0IGY7dHJ5e2lmKGY9SlNPTi5wYXJzZShjKSwhQXJyYXkuaXNBcnJheShmKSl0aHJvdyBuZXcgRXJyb3IoIk11c3QgYmUgYW4gYXJyYXkiKX1jYXRjaCh1KXtkLnRleHRDb250ZW50PWBJbnZhbGlkIEpTT046ICR7dS5tZXNzYWdlfWA7cmV0dXJufWF3YWl0IGdsLmRpc3BhdGNoQWN0aW9uKFlCcix7cG9saWN5SWQ6ci5pZCxuYW1lOm4sZGVzY3JpcHRpb246c3x8IiIsc3RhdGVtZW50czpmfSksaS5kZXN0cm95KCl9fV19KX1hc3luYyBzaG93RGVsZXRlUG9saWN5TW9kYWwocil7YXdhaXQgR3QuY3JlYXRlQW5kU2hvdyh7aGVhZGluZzoiRGVsZXRlIFBvbGljeSIsY29udGVudDpEdGAKICAgICAgICA8cD5BcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIHBvbGljeSA8c3Ryb25nPiR7ci5uYW1lfTwvc3Ryb25nPj88L3A+CiAgICAgICAgPHAgc3R5bGU9ImNvbG9yOiAke2l0LmJkVGhlbWUoIiM2NjYiLCIjOTk5Iil9OyBmb250LXNpemU6IDEzcHg7Ij4KICAgICAgICAgIFRoaXMgd2lsbCBhbHNvIGRldGFjaCB0aGUgcG9saWN5IGZyb20gYWxsIGJ1Y2tldHMgaXQgaXMgY3VycmVudGx5IGFwcGxpZWQgdG8uCiAgICAgICAgPC9wPgogICAgICBgLG1lbnVPcHRpb25zOlt7bmFtZToiQ2FuY2VsIixhY3Rpb246YXN5bmMgYT0+e2EuZGVzdHJveSgpfX0se25hbWU6IkRlbGV0ZSIsYWN0aW9uOmFzeW5jIGE9Pnthd2FpdCBnbC5kaXNwYXRjaEFjdGlvbihaQnIse3BvbGljeUlkOnIuaWR9KSxhLmRlc3Ryb3koKX19XX0pfWFzeW5jIHNob3dQb2xpY3lCdWNrZXRzTW9kYWwocil7bGV0IGE9YXdhaXQgVGNlKHIuaWQpLGk9bnVsbCxvPShuLHMpPT5EdGAKICAgICAgPHN0eWxlPgogICAgICAgIC5idWNrZXQtbGlzdHMgeyBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBnYXA6IDE2cHg7IH0KICAgICAgICAuYnVja2V0LXNlY3Rpb24gaDQgewogICAgICAgICAgbWFyZ2luOiAwIDAgOHB4IDA7CiAgICAgICAgICBmb250LXNpemU6IDEzcHg7CiAgICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgICAgY29sb3I6ICR7aXQuYmRUaGVtZSgiIzMzMyIsIiNjY2MiKX07CiAgICAgICAgfQogICAgICAgIC5idWNrZXQtaXRlbSB7CiAgICAgICAgICBkaXNwbGF5OiBmbGV4OwogICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICAgICAgICAgIHBhZGRpbmc6IDhweCAxMnB4OwogICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4OwogICAgICAgICAgYmFja2dyb3VuZDogJHtpdC5iZFRoZW1lKCIjZjVmNWY1IiwiIzFhMWEyZSIpfTsKICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRweDsKICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICAgIGNvbG9yOiAke2l0LmJkVGhlbWUoIiMzMzMiLCIjZWVlIil9OwogICAgICAgIH0KICAgICAgICAuYnVja2V0LWl0ZW0gYnV0dG9uIHsKICAgICAgICAgIHBhZGRpbmc6IDRweCAxMnB4OwogICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgICAgYm9yZGVyOiBub25lOwogICAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICAgICAgZm9udC1zaXplOiAxMnB4OwogICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsKICAgICAgICB9CiAgICAgICAgLmJ0bi1kZXRhY2ggewogICAgICAgICAgYmFja2dyb3VuZDogJHtpdC5iZFRoZW1lKCIjZmZlYmVlIiwiIzNlMWExYSIpfTsKICAgICAgICAgIGNvbG9yOiAke2l0LmJkVGhlbWUoIiNjNjI4MjgiLCIjZWY1MzUwIil9OwogICAgICAgIH0KICAgICAgICAuYnRuLWRldGFjaDpob3ZlciB7IG9wYWNpdHk6IDAuODsgfQogICAgICAgIC5idG4tYXR0YWNoIHsKICAgICAgICAgIGJhY2tncm91bmQ6ICR7aXQuYmRUaGVtZSgiI2UzZjJmZCIsIiMxYTJhM2UiKX07CiAgICAgICAgICBjb2xvcjogJHtpdC5iZFRoZW1lKCIjMTU2NWMwIiwiIzY0YjVmNiIpfTsKICAgICAgICB9CiAgICAgICAgLmJ0bi1hdHRhY2g6aG92ZXIgeyBvcGFjaXR5OiAwLjg7IH0KICAgICAgICAuZW1wdHktbm90ZSB7CiAgICAgICAgICBjb2xvcjogJHtpdC5iZFRoZW1lKCIjOTk5IiwiIzY2NiIpfTsKICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsKICAgICAgICAgIHBhZGRpbmc6IDhweCAwOwogICAgICAgIH0KICAgICAgPC9zdHlsZT4KICAgICAgPGRpdiBjbGFzcz0iYnVja2V0LWxpc3RzIj4KICAgICAgICA8ZGl2IGNsYXNzPSJidWNrZXQtc2VjdGlvbiI+CiAgICAgICAgICA8aDQ+QXR0YWNoZWQgQnVja2V0cyAoJHtuLmxlbmd0aH0pPC9oND4KICAgICAgICAgICR7bi5sZW5ndGg+MD9uLm1hcChjPT5EdGAKICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1Y2tldC1pdGVtIj4KICAgICAgICAgICAgICAgICAgPHNwYW4+JHtjfTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuLWRldGFjaCIgQGNsaWNrPSR7YXN5bmMgZD0+e2QudGFyZ2V0LmRpc2FibGVkPSEwLGF3YWl0IF9jZShyLmlkLGMpO2xldCBmPWF3YWl0IFRjZShyLmlkKTtpJiYoaS5jb250ZW50PW8oZi5hdHRhY2hlZEJ1Y2tldHMsZi5hdmFpbGFibGVCdWNrZXRzKSl9fT5EZXRhY2g8L2J1dHRvbj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgIGApOkR0YDxwIGNsYXNzPSJlbXB0eS1ub3RlIj5ObyBidWNrZXRzIGF0dGFjaGVkIHRvIHRoaXMgcG9saWN5LjwvcD5gfQogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImJ1Y2tldC1zZWN0aW9uIj4KICAgICAgICAgIDxoND5BdmFpbGFibGUgQnVja2V0cyAoJHtzLmxlbmd0aH0pPC9oND4KICAgICAgICAgICR7cy5sZW5ndGg+MD9zLm1hcChjPT5EdGAKICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImJ1Y2tldC1pdGVtIj4KICAgICAgICAgICAgICAgICAgPHNwYW4+JHtjfTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuLWF0dGFjaCIgQGNsaWNrPSR7YXN5bmMgZD0+e2QudGFyZ2V0LmRpc2FibGVkPSEwLGF3YWl0IENjZShyLmlkLGMpO2xldCBmPWF3YWl0IFRjZShyLmlkKTtpJiYoaS5jb250ZW50PW8oZi5hdHRhY2hlZEJ1Y2tldHMsZi5hdmFpbGFibGVCdWNrZXRzKSl9fT5BdHRhY2g8L2J1dHRvbj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgIGApOkR0YDxwIGNsYXNzPSJlbXB0eS1ub3RlIj5BbGwgYnVja2V0cyBhbHJlYWR5IGhhdmUgdGhpcyBwb2xpY3kuPC9wPmB9CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgYDtpPWF3YWl0IEd0LmNyZWF0ZUFuZFNob3coe2hlYWRpbmc6YEJ1Y2tldHMgZm9yOiAke3IubmFtZX1gLGNvbnRlbnQ6byhhLmF0dGFjaGVkQnVja2V0cyxhLmF2YWlsYWJsZUJ1Y2tldHMpLG1lbnVPcHRpb25zOlt7bmFtZToiRG9uZSIsYWN0aW9uOmFzeW5jIG49PntuLmRlc3Ryb3koKX19XX0pfX07Zmc9eTEodkhyKSxuNHQ9bmV3IFdlYWtNYXAscGEoZmcsNCwicG9saWNpZXNTdGF0ZSIsYkhyLHozLG40dCksejM9cGEoZmcsMCwiT2Jqc3RWaWV3UG9saWNpZXMiLHlIcix6MyksbDEoejMsInN0eWxlcyIsW2l0LmRlZmF1bHRTdHlsZXMsdmxdKSxocihmZywxLHozKX0pO3ZhciB6SHI9e307cWUoekhyLHtPYmpzdFZpZXdDb25maWc6KCk9PkMzfSk7dmFyIE1IcixrSHIsU0hyLHBnLGw0dCxDMyxjNHQ9bChhc3luYygpPT57UW4oKTthd2FpdCBibCgpO0s4KCk7X24oKTtTSHI9W0dpKCJvYmpzdC12aWV3LWNvbmZpZyIpXTtDMz1jbGFzcyBleHRlbmRzKGtIcj1ZaSxNSHI9W3BpKCldLGtIcil7Y29uc3RydWN0b3IoKXtzdXBlcigpO2MxKHRoaXMsbDR0LGhyKHBnLDgsdGhpcyx7Y29uZmlnOm51bGx9KSksaHIocGcsMTEsdGhpcyk7bGV0IHI9aVguc2VsZWN0KGE9PmEpLnN1YnNjcmliZShhPT57dGhpcy5jb25maWdTdGF0ZT1hfSk7dGhpcy5yeFN1YnNjcmlwdGlvbnMucHVzaChyKX1hc3luYyBjb25uZWN0ZWRDYWxsYmFjaygpe3N1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCksaVguZGlzcGF0Y2hBY3Rpb24oWTB0LG51bGwpfXJlbmRlcigpe2xldCByPXRoaXMuY29uZmlnU3RhdGUuY29uZmlnLGE9W3tpZDoib2Jqc3RQb3J0Iix0aXRsZToiU3RvcmFnZSBBUEkgUG9ydCIsdmFsdWU6cj8ub2Jqc3RQb3J0Pz8iLS0iLHR5cGU6Im51bWJlciIsaWNvbjoibHVjaWRlOm5ldHdvcmsiLGNvbG9yOiIjMjE5NmYzIn0se2lkOiJ1aVBvcnQiLHRpdGxlOiJVSSBQb3J0Iix2YWx1ZTpyPy51aVBvcnQ/PyItLSIsdHlwZToibnVtYmVyIixpY29uOiJsdWNpZGU6bW9uaXRvciIsY29sb3I6IiMwMGJjZDQifSx7aWQ6InJlZ2lvbiIsdGl0bGU6IlJlZ2lvbiIsdmFsdWU6cj8ucmVnaW9uPz8iLS0iLHR5cGU6InRleHQiLGljb246Imx1Y2lkZTpnbG9iZSIsY29sb3I6IiM2MDdkOGIifSx7aWQ6InN0b3JhZ2VEaXIiLHRpdGxlOiJTdG9yYWdlIERpcmVjdG9yeSIsdmFsdWU6cj8uc3RvcmFnZURpcmVjdG9yeT8/Ii0tIix0eXBlOiJ0ZXh0IixpY29uOiJsdWNpZGU6aGFyZERyaXZlIixjb2xvcjoiIzljMjdiMCJ9LHtpZDoiYXV0aCIsdGl0bGU6IkF1dGhlbnRpY2F0aW9uIix2YWx1ZTpyPy5hdXRoRW5hYmxlZD8iRW5hYmxlZCI6IkRpc2FibGVkIix0eXBlOiJ0ZXh0IixpY29uOiJsdWNpZGU6c2hpZWxkIixjb2xvcjpyPy5hdXRoRW5hYmxlZD8iIzRjYWY1MCI6IiNmNDQzMzYifSx7aWQ6ImNvcnMiLHRpdGxlOiJDT1JTIix2YWx1ZTpyPy5jb3JzRW5hYmxlZD8iRW5hYmxlZCI6IkRpc2FibGVkIix0eXBlOiJ0ZXh0IixpY29uOiJsdWNpZGU6Z2xvYmUyIixjb2xvcjpyPy5jb3JzRW5hYmxlZD8iIzRjYWY1MCI6IiNmZjk4MDAifV0saT1be2lkOiJjbHVzdGVyU3RhdHVzIix0aXRsZToiQ2x1c3RlciBTdGF0dXMiLHZhbHVlOnI/LmNsdXN0ZXJFbmFibGVkPyJFbmFibGVkIjoiRGlzYWJsZWQiLHR5cGU6InRleHQiLGljb246Imx1Y2lkZTpuZXR3b3JrIixjb2xvcjpyPy5jbHVzdGVyRW5hYmxlZD8iIzRjYWY1MCI6IiNmZjk4MDAifSx7aWQ6Im5vZGVJZCIsdGl0bGU6Ik5vZGUgSUQiLHZhbHVlOnI/LmNsdXN0ZXJOb2RlSWR8fCIoYXV0bykiLHR5cGU6InRleHQiLGljb246Imx1Y2lkZTpmaW5nZXJwcmludCIsY29sb3I6IiM2MDdkOGIifSx7aWQ6InF1aWNQb3J0Iix0aXRsZToiUVVJQyBQb3J0Iix2YWx1ZTpyPy5jbHVzdGVyUXVpY1BvcnQ/PzQ0MzMsdHlwZToibnVtYmVyIixpY29uOiJsdWNpZGU6cmFkaW8iLGNvbG9yOiIjMDBiY2Q0In0se2lkOiJzZWVkTm9kZXMiLHRpdGxlOiJTZWVkIE5vZGVzIix2YWx1ZTpyPy5jbHVzdGVyU2VlZE5vZGVzPy5sZW5ndGg/PzAsdHlwZToibnVtYmVyIixpY29uOiJsdWNpZGU6Z2l0QnJhbmNoIixjb2xvcjoiIzNmNTFiNSIsZGVzY3JpcHRpb246cj8uY2x1c3RlclNlZWROb2Rlcz8ubGVuZ3RoP3IuY2x1c3RlclNlZWROb2Rlcy5qb2luKCIsICIpOiJObyBzZWVkIG5vZGVzIGNvbmZpZ3VyZWQifSx7aWQ6ImhlYXJ0YmVhdEludGVydmFsIix0aXRsZToiSGVhcnRiZWF0IEludGVydmFsIix2YWx1ZTpgJHtyPy5jbHVzdGVySGVhcnRiZWF0SW50ZXJ2YWxNcz8/NWUzfW1zYCx0eXBlOiJ0ZXh0IixpY29uOiJsdWNpZGU6aGVhcnRQdWxzZSIsY29sb3I6IiNlOTFlNjMifSx7aWQ6ImhlYXJ0YmVhdFRpbWVvdXQiLHRpdGxlOiJIZWFydGJlYXQgVGltZW91dCIsdmFsdWU6YCR7cj8uY2x1c3RlckhlYXJ0YmVhdFRpbWVvdXRNcz8/M2U0fW1zYCx0eXBlOiJ0ZXh0IixpY29uOiJsdWNpZGU6dGltZXIiLGNvbG9yOiIjZmY1NzIyIn1dLG89W3tpZDoiZGF0YVNoYXJkcyIsdGl0bGU6IkRhdGEgU2hhcmRzIix2YWx1ZTpyPy5lcmFzdXJlRGF0YVNoYXJkcz8/NCx0eXBlOiJudW1iZXIiLGljb246Imx1Y2lkZTpsYXllcnMiLGNvbG9yOiIjMjE5NmYzIn0se2lkOiJwYXJpdHlTaGFyZHMiLHRpdGxlOiJQYXJpdHkgU2hhcmRzIix2YWx1ZTpyPy5lcmFzdXJlUGFyaXR5U2hhcmRzPz8yLHR5cGU6Im51bWJlciIsaWNvbjoibHVjaWRlOnNoaWVsZENoZWNrIixjb2xvcjoiIzRjYWY1MCJ9LHtpZDoiY2h1bmtTaXplIix0aXRsZToiQ2h1bmsgU2l6ZSIsdmFsdWU6dGhpcy5mb3JtYXRCeXRlcyhyPy5lcmFzdXJlQ2h1bmtTaXplQnl0ZXM/PzQxOTQzMDQpLHR5cGU6InRleHQiLGljb246Imx1Y2lkZTpwdXp6bGUiLGNvbG9yOiIjOWMyN2IwIixkZXNjcmlwdGlvbjpgJHtyPy5lcmFzdXJlRGF0YVNoYXJkcz8/NH0rJHtyPy5lcmFzdXJlUGFyaXR5U2hhcmRzPz8yfSA9ICR7TWF0aC5yb3VuZCgocj8uZXJhc3VyZVBhcml0eVNoYXJkcz8/MikvKHI/LmVyYXN1cmVEYXRhU2hhcmRzPz80KSoxMDApfSUgb3ZlcmhlYWRgfV0sbj1yPy5kcml2ZVBhdGhzPy5sZW5ndGg/ci5kcml2ZVBhdGhzOnI/LnN0b3JhZ2VEaXJlY3Rvcnk/W3Iuc3RvcmFnZURpcmVjdG9yeV06WyIvZGF0YSJdLHM9W3tpZDoiZHJpdmVDb3VudCIsdGl0bGU6IkRyaXZlIENvdW50Iix2YWx1ZTpuLmxlbmd0aCx0eXBlOiJudW1iZXIiLGljb246Imx1Y2lkZTpoYXJkRHJpdmUiLGNvbG9yOiIjM2Y1MWI1In1dO3JldHVybiBEdGAKICAgICAgPG9ianN0LXNlY3Rpb25oZWFkaW5nPlNlcnZlciBDb25maWd1cmF0aW9uPC9vYmpzdC1zZWN0aW9uaGVhZGluZz4KICAgICAgPGRlZXMtc3RhdHNncmlkCiAgICAgICAgLnRpbGVzPSR7YX0KICAgICAgICAuZ3JpZEFjdGlvbnM9JHtbe25hbWU6IlJlZnJlc2giLGljb25OYW1lOiJsdWNpZGU6cmVmcmVzaEN3IixhY3Rpb246YXN5bmMoKT0+e2F3YWl0IGlYLmRpc3BhdGNoQWN0aW9uKFkwdCxudWxsKX19XX0KICAgICAgPjwvZGVlcy1zdGF0c2dyaWQ+CgogICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uU3BhY2VyIj4KICAgICAgICA8b2Jqc3Qtc2VjdGlvbmhlYWRpbmc+Q2x1c3RlciBDb25maWd1cmF0aW9uPC9vYmpzdC1zZWN0aW9uaGVhZGluZz4KICAgICAgPC9kaXY+CiAgICAgIDxkZWVzLXN0YXRzZ3JpZCAudGlsZXM9JHtpfT48L2RlZXMtc3RhdHNncmlkPgoKICAgICAgJHtyPy5jbHVzdGVyRW5hYmxlZD9EdGAKICAgICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uU3BhY2VyIj4KICAgICAgICAgIDxvYmpzdC1zZWN0aW9uaGVhZGluZz5FcmFzdXJlIENvZGluZzwvb2Jqc3Qtc2VjdGlvbmhlYWRpbmc+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRlZXMtc3RhdHNncmlkIC50aWxlcz0ke299PjwvZGVlcy1zdGF0c2dyaWQ+CiAgICAgIGA6IiJ9CgogICAgICA8ZGl2IGNsYXNzPSJzZWN0aW9uU3BhY2VyIj4KICAgICAgICA8b2Jqc3Qtc2VjdGlvbmhlYWRpbmc+U3RvcmFnZSBEcml2ZXM8L29ianN0LXNlY3Rpb25oZWFkaW5nPgogICAgICA8L2Rpdj4KICAgICAgPGRlZXMtc3RhdHNncmlkIC50aWxlcz0ke3N9PjwvZGVlcy1zdGF0c2dyaWQ+CiAgICAgIDxkaXYgY2xhc3M9ImRyaXZlTGlzdCI+CiAgICAgICAgJHtuLm1hcCgoZCxmKT0+RHRgCiAgICAgICAgICA8ZGl2IGNsYXNzPSJkcml2ZUl0ZW0iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJkcml2ZUluZGV4Ij4ke2YrMX08L2Rpdj4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImRyaXZlUGF0aCI+JHtkfTwvc3Bhbj4KICAgICAgICAgIDwvZGl2PgogICAgICAgIGApfQogICAgICA8L2Rpdj4KCiAgICAgIDxkaXYgY2xhc3M9ImluZm9QYW5lbCI+CiAgICAgICAgPGgyPkNvbmZpZ3VyYXRpb24gUmVmZXJlbmNlPC9oMj4KICAgICAgICA8cD5DbHVzdGVyIGFuZCBkcml2ZSBzZXR0aW5ncyBhcmUgYXBwbGllZCBhdCBzZXJ2ZXIgc3RhcnR1cC4gVG8gY2hhbmdlIHRoZW0sIHNldCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGVzIGFuZCByZXN0YXJ0IHRoZSBzZXJ2ZXIuPC9wPgogICAgICAgIDxkaXYgY2xhc3M9InJvdyI+PHNwYW4gY2xhc3M9ImxhYmVsIj5PQkpTVF9DTFVTVEVSX0VOQUJMRUQ8L3NwYW4+PHNwYW4gY2xhc3M9InZhbHVlIj5FbmFibGUgY2x1c3RlcmluZyAodHJ1ZS9mYWxzZSk8L3NwYW4+PC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0icm93Ij48c3BhbiBjbGFzcz0ibGFiZWwiPk9CSlNUX0NMVVNURVJfTk9ERV9JRDwvc3Bhbj48c3BhbiBjbGFzcz0idmFsdWUiPlVuaXF1ZSBub2RlIGlkZW50aWZpZXI8L3NwYW4+PC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0icm93Ij48c3BhbiBjbGFzcz0ibGFiZWwiPk9CSlNUX0NMVVNURVJfUVVJQ19QT1JUPC9zcGFuPjxzcGFuIGNsYXNzPSJ2YWx1ZSI+UVVJQyB0cmFuc3BvcnQgcG9ydCAoZGVmYXVsdDogNDQzMyk8L3NwYW4+PC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0icm93Ij48c3BhbiBjbGFzcz0ibGFiZWwiPk9CSlNUX0NMVVNURVJfU0VFRF9OT0RFUzwvc3Bhbj48c3BhbiBjbGFzcz0idmFsdWUiPkNvbW1hLXNlcGFyYXRlZCBzZWVkIG5vZGUgYWRkcmVzc2VzPC9zcGFuPjwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InJvdyI+PHNwYW4gY2xhc3M9ImxhYmVsIj5PQkpTVF9EUklWRV9QQVRIUzwvc3Bhbj48c3BhbiBjbGFzcz0idmFsdWUiPkNvbW1hLXNlcGFyYXRlZCBkcml2ZSBtb3VudCBwYXRoczwvc3Bhbj48L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPjxzcGFuIGNsYXNzPSJsYWJlbCI+T0JKU1RfRVJBU1VSRV9EQVRBX1NIQVJEUzwvc3Bhbj48c3BhbiBjbGFzcz0idmFsdWUiPkRhdGEgc2hhcmRzIGZvciBlcmFzdXJlIGNvZGluZyAoZGVmYXVsdDogNCk8L3NwYW4+PC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0icm93Ij48c3BhbiBjbGFzcz0ibGFiZWwiPk9CSlNUX0VSQVNVUkVfUEFSSVRZX1NIQVJEUzwvc3Bhbj48c3BhbiBjbGFzcz0idmFsdWUiPlBhcml0eSBzaGFyZHMgZm9yIGVyYXN1cmUgY29kaW5nIChkZWZhdWx0OiAyKTwvc3Bhbj48L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPjxzcGFuIGNsYXNzPSJsYWJlbCI+T0JKU1RfRVJBU1VSRV9DSFVOS19TSVpFPC9zcGFuPjxzcGFuIGNsYXNzPSJ2YWx1ZSI+Q2h1bmsgc2l6ZSBpbiBieXRlcyAoZGVmYXVsdDogNDE5NDMwNCk8L3NwYW4+PC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0icm93Ij48c3BhbiBjbGFzcz0ibGFiZWwiPk9CSlNUX0hFQVJUQkVBVF9JTlRFUlZBTF9NUzwvc3Bhbj48c3BhbiBjbGFzcz0idmFsdWUiPkhlYXJ0YmVhdCBpbnRlcnZhbCBpbiBtcyAoZGVmYXVsdDogNTAwMCk8L3NwYW4+PC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0icm93Ij48c3BhbiBjbGFzcz0ibGFiZWwiPk9CSlNUX0hFQVJUQkVBVF9USU1FT1VUX01TPC9zcGFuPjxzcGFuIGNsYXNzPSJ2YWx1ZSI+SGVhcnRiZWF0IHRpbWVvdXQgaW4gbXMgKGRlZmF1bHQ6IDMwMDAwKTwvc3Bhbj48L2Rpdj4KICAgICAgPC9kaXY+CiAgICBgfWZvcm1hdEJ5dGVzKHIpe2lmKHI9PT0wKXJldHVybiIwIEIiO2xldCBhPVsiQiIsIktCIiwiTUIiLCJHQiIsIlRCIl0saT1NYXRoLmZsb29yKE1hdGgubG9nKHIpL01hdGgubG9nKDEwMjQpKTtyZXR1cm5gJHsoci9NYXRoLnBvdygxMDI0LGkpKS50b0ZpeGVkKGk9PT0wPzA6MSl9ICR7YVtpXX1gfX07cGc9eTEoa0hyKSxsNHQ9bmV3IFdlYWtNYXAscGEocGcsNCwiY29uZmlnU3RhdGUiLE1IcixDMyxsNHQpLEMzPXBhKHBnLDAsIk9ianN0Vmlld0NvbmZpZyIsU0hyLEMzKSxsMShDMywic3R5bGVzIixbaXQuZGVmYXVsdFN0eWxlcyx2bCxoYWAKICAgICAgLnNlY3Rpb25TcGFjZXIgewogICAgICAgIG1hcmdpbi10b3A6IDMycHg7CiAgICAgIH0KICAgICAgLmluZm9QYW5lbCB7CiAgICAgICAgbWFyZ2luLXRvcDogMzJweDsKICAgICAgICBwYWRkaW5nOiAyNHB4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke2l0LmJkVGhlbWUoIiNmNWY1ZjUiLCIjMWExYTJlIil9OwogICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR7aXQuYmRUaGVtZSgiI2UwZTBlMCIsIiMyYTJhNGEiKX07CiAgICAgIH0KICAgICAgLmluZm9QYW5lbCBoMiB7CiAgICAgICAgbWFyZ2luOiAwIDAgMTZweCAwOwogICAgICAgIGZvbnQtc2l6ZTogMThweDsKICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgIGNvbG9yOiAke2l0LmJkVGhlbWUoIiMzMzMiLCIjY2NjIil9OwogICAgICB9CiAgICAgIC5pbmZvUGFuZWwgcCB7CiAgICAgICAgbWFyZ2luOiAwIDAgMTZweCAwOwogICAgICAgIGZvbnQtc2l6ZTogMTRweDsKICAgICAgICBjb2xvcjogJHtpdC5iZFRoZW1lKCIjNjY2IiwiIzk5OSIpfTsKICAgICAgICBsaW5lLWhlaWdodDogMS41OwogICAgICB9CiAgICAgIC5pbmZvUGFuZWwgLnJvdyB7CiAgICAgICAgZGlzcGxheTogZmxleDsKICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOwogICAgICAgIG1hcmdpbi1ib3R0b206IDhweDsKICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgIH0KICAgICAgLmluZm9QYW5lbCAubGFiZWwgewogICAgICAgIG1pbi13aWR0aDogMjYwcHg7CiAgICAgICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTsKICAgICAgICBmb250LXdlaWdodDogNTAwOwogICAgICAgIGNvbG9yOiAke2l0LmJkVGhlbWUoIiMxNTY1YzAiLCIjNjRiNWY2Iil9OwogICAgICAgIHBhZGRpbmc6IDRweCA4cHg7CiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4OwogICAgICAgIGJhY2tncm91bmQ6ICR7aXQuYmRUaGVtZSgiI2UzZjJmZCIsIiMxYTIzN2UzMCIpfTsKICAgICAgfQogICAgICAuaW5mb1BhbmVsIC52YWx1ZSB7CiAgICAgICAgY29sb3I6ICR7aXQuYmRUaGVtZSgiIzY2NiIsIiM5OTkiKX07CiAgICAgICAgbWFyZ2luLWxlZnQ6IDEycHg7CiAgICAgIH0KICAgICAgLmRyaXZlTGlzdCB7CiAgICAgICAgbWFyZ2luLXRvcDogMTZweDsKICAgICAgfQogICAgICAuZHJpdmVMaXN0IC5kcml2ZUl0ZW0gewogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7CiAgICAgICAgZm9udC1zaXplOiAxNHB4OwogICAgICB9CiAgICAgIC5kcml2ZUxpc3QgLmRyaXZlSW5kZXggewogICAgICAgIHdpZHRoOiAzMnB4OwogICAgICAgIGhlaWdodDogMzJweDsKICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7CiAgICAgICAgYmFja2dyb3VuZDogJHtpdC5iZFRoZW1lKCIjZThlYWY2IiwiIzFhMjM3ZTQwIil9OwogICAgICAgIGNvbG9yOiAke2l0LmJkVGhlbWUoIiMzZjUxYjUiLCIjNzk4NmNiIil9OwogICAgICAgIGRpc3BsYXk6IGZsZXg7CiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsKICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsKICAgICAgICBmb250LXdlaWdodDogNjAwOwogICAgICAgIGZvbnQtc2l6ZTogMTNweDsKICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7CiAgICAgIH0KICAgICAgLmRyaXZlTGlzdCAuZHJpdmVQYXRoIHsKICAgICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlOwogICAgICAgIGNvbG9yOiAke2l0LmJkVGhlbWUoIiMzMzMiLCIjZTBlMGUwIil9OwogICAgICAgIHBhZGRpbmc6IDZweCAxMnB4OwogICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDsKICAgICAgICBiYWNrZ3JvdW5kOiAke2l0LmJkVGhlbWUoIiNlOGU4ZTgiLCIjMjUyNTQwIil9OwogICAgICB9CiAgICBgXSksaHIocGcsMSxDMyl9KTt2YXIgTEhyPXt9O3FlKExIcix7T2Jqc3RWaWV3Q3JlZGVudGlhbHM6KCk9Pl8zfSk7dmFyIENIcixfSHIsVEhyLGhnLGQ0dCxfMyx1NHQ9bChhc3luYygpPT57UW4oKTthd2FpdCBibCgpO0s4KCk7X24oKTt0WCgpO1RIcj1bR2koIm9ianN0LXZpZXctY3JlZGVudGlhbHMiKV07XzM9Y2xhc3MgZXh0ZW5kcyhfSHI9WWksQ0hyPVtwaSgpXSxfSHIpe2NvbnN0cnVjdG9yKCl7c3VwZXIoKTtjMSh0aGlzLGQ0dCxocihoZyw4LHRoaXMse2NyZWRlbnRpYWxzOltdfSkpLGhyKGhnLDExLHRoaXMpO2xldCByPU0zLnNlbGVjdChhPT5hKS5zdWJzY3JpYmUoYT0+e3RoaXMuY3JlZGVudGlhbHNTdGF0ZT1hfSk7dGhpcy5yeFN1YnNjcmlwdGlvbnMucHVzaChyKX1hc3luYyBjb25uZWN0ZWRDYWxsYmFjaygpe3N1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCksTTMuZGlzcGF0Y2hBY3Rpb24oWEJyLG51bGwpfXJlbmRlcigpe3JldHVybiBEdGAKICAgICAgPG9ianN0LXNlY3Rpb25oZWFkaW5nPkFjY2VzcyBLZXlzPC9vYmpzdC1zZWN0aW9uaGVhZGluZz4KICAgICAgPGRlZXMtdGFibGUKICAgICAgICBoZWFkaW5nMT0iQWNjZXNzIENyZWRlbnRpYWxzIgogICAgICAgIGhlYWRpbmcyPSJNYW5hZ2UgYWNjZXNzIGtleXMgZm9yIEFQSSBhdXRoZW50aWNhdGlvbiIKICAgICAgICAuZGF0YT0ke3RoaXMuY3JlZGVudGlhbHNTdGF0ZS5jcmVkZW50aWFsc30KICAgICAgICAuZGF0YU5hbWU9JHsiY3JlZGVudGlhbCJ9CiAgICAgICAgLmRpc3BsYXlGdW5jdGlvbj0ke3I9Pih7IkFjY2VzcyBLZXkgSUQiOnIuYWNjZXNzS2V5SWQsIlNlY3JldCBBY2Nlc3MgS2V5IjpyLnNlY3JldEFjY2Vzc0tleX0pfQogICAgICAgIC5kYXRhQWN0aW9ucz0ke1t7bmFtZToiQWRkIEtleSIsaWNvbk5hbWU6Imx1Y2lkZTpwbHVzIix0eXBlOlsiaGVhZGVyIl0sYWN0aW9uRnVuYzphc3luYygpPT57YXdhaXQgdGhpcy5zaG93QWRkS2V5TW9kYWwoKX19LHtuYW1lOiJSZW1vdmUiLGljb25OYW1lOiJsdWNpZGU6dHJhc2gyIix0eXBlOlsiaW5Sb3ciLCJjb250ZXh0bWVudSJdLGFjdGlvbkZ1bmM6YXN5bmMgcj0+e2F3YWl0IHRoaXMuc2hvd1JlbW92ZUtleU1vZGFsKHIuaXRlbS5hY2Nlc3NLZXlJZCl9fV19CiAgICAgID48L2RlZXMtdGFibGU+CiAgICBgfWFzeW5jIHNob3dBZGRLZXlNb2RhbCgpe2F3YWl0IEd0LmNyZWF0ZUFuZFNob3coe2hlYWRpbmc6IkFkZCBBY2Nlc3MgS2V5Iixjb250ZW50OkR0YAogICAgICAgIDxkZWVzLWZvcm0+CiAgICAgICAgICA8ZGVlcy1pbnB1dC10ZXh0IC5rZXk9JHsiYWNjZXNzS2V5SWQifSAubGFiZWw9JHsiQWNjZXNzIEtleSBJRCJ9IC5yZXF1aXJlZD0keyEwfT48L2RlZXMtaW5wdXQtdGV4dD4KICAgICAgICAgIDxkZWVzLWlucHV0LXRleHQgLmtleT0keyJzZWNyZXRBY2Nlc3NLZXkifSAubGFiZWw9JHsiU2VjcmV0IEFjY2VzcyBLZXkifSAucmVxdWlyZWQ9JHshMH0+PC9kZWVzLWlucHV0LXRleHQ+CiAgICAgICAgPC9kZWVzLWZvcm0+CiAgICAgIGAsbWVudU9wdGlvbnM6W3tuYW1lOiJDYW5jZWwiLGFjdGlvbjphc3luYyByPT57ci5kZXN0cm95KCl9fSx7bmFtZToiQWRkIixhY3Rpb246YXN5bmMgcj0+e2xldCBpPWF3YWl0IHIuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCJkZWVzLWZvcm0iKS5jb2xsZWN0Rm9ybURhdGEoKTtpLmFjY2Vzc0tleUlkJiZpLnNlY3JldEFjY2Vzc0tleSYmYXdhaXQgTTMuZGlzcGF0Y2hBY3Rpb24oUUJyLHthY2Nlc3NLZXlJZDppLmFjY2Vzc0tleUlkLHNlY3JldEFjY2Vzc0tleTppLnNlY3JldEFjY2Vzc0tleX0pLHIuZGVzdHJveSgpfX1dfSl9YXN5bmMgc2hvd1JlbW92ZUtleU1vZGFsKHIpe2F3YWl0IEd0LmNyZWF0ZUFuZFNob3coe2hlYWRpbmc6IlJlbW92ZSBBY2Nlc3MgS2V5Iixjb250ZW50OkR0YDxwPkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byByZW1vdmUgYWNjZXNzIGtleSA8c3Ryb25nPiR7cn08L3N0cm9uZz4/PC9wPmAsbWVudU9wdGlvbnM6W3tuYW1lOiJDYW5jZWwiLGFjdGlvbjphc3luYyBhPT57YS5kZXN0cm95KCl9fSx7bmFtZToiUmVtb3ZlIixhY3Rpb246YXN5bmMgYT0+e2F3YWl0IE0zLmRpc3BhdGNoQWN0aW9uKEtCcix7YWNjZXNzS2V5SWQ6cn0pLGEuZGVzdHJveSgpfX1dfSl9fTtoZz15MShfSHIpLGQ0dD1uZXcgV2Vha01hcCxwYShoZyw0LCJjcmVkZW50aWFsc1N0YXRlIixDSHIsXzMsZDR0KSxfMz1wYShoZywwLCJPYmpzdFZpZXdDcmVkZW50aWFscyIsVEhyLF8zKSxsMShfMywic3R5bGVzIixbaXQuZGVmYXVsdFN0eWxlcyx2bF0pLGhyKGhnLDEsXzMpfSk7UW4oKTthd2FpdCBibCgpO2FYKCk7YXdhaXQgRGNlKCk7X24oKTt2YXIgREhyLEFIcixFSHIsJEhyLG8wLGY0dCxwNHQ7JEhyPVtHaSgib2Jqc3QtYXBwLXNoZWxsIildO3ZhciBUMz1jbGFzcyBleHRlbmRzKEVIcj1ZaSxBSHI9W3BpKCldLERIcj1bcGkoKV0sRUhyKXtjb25zdHJ1Y3Rvcigpe3N1cGVyKCk7YzEodGhpcyxmNHQsaHIobzAsOCx0aGlzLHtpZGVudGl0eTpudWxsLGlzTG9nZ2VkSW46ITF9KSksaHIobzAsMTEsdGhpcyk7YzEodGhpcyxwNHQsaHIobzAsMTIsdGhpcyx7YWN0aXZlVmlldzoib3ZlcnZpZXciLGF1dG9SZWZyZXNoOiEwLHJlZnJlc2hJbnRlcnZhbDozZTR9KSksaHIobzAsMTUsdGhpcyk7bDEodGhpcywidmlld1RhYnMiLFt7bmFtZToiT3ZlcnZpZXciLGljb25OYW1lOiJsdWNpZGU6bGF5b3V0RGFzaGJvYXJkIixlbGVtZW50Oihhc3luYygpPT4oYXdhaXQgZTR0KCkudGhlbigoKT0+bkhyKSkuT2Jqc3RWaWV3T3ZlcnZpZXcpKCl9LHtuYW1lOiJCdWNrZXRzIixpY29uTmFtZToibHVjaWRlOmRhdGFiYXNlIixlbGVtZW50Oihhc3luYygpPT4oYXdhaXQgcjR0KCkudGhlbigoKT0+ZEhyKSkuT2Jqc3RWaWV3QnVja2V0cykoKX0se25hbWU6IkJyb3dzZXIiLGljb25OYW1lOiJsdWNpZGU6Zm9sZGVyT3BlbiIsZWxlbWVudDooYXN5bmMoKT0+KGF3YWl0IG80dCgpLnRoZW4oKCk9PnhIcikpLk9ianN0Vmlld09iamVjdHMpKCl9LHtuYW1lOiJQb2xpY2llcyIsaWNvbk5hbWU6Imx1Y2lkZTpzaGllbGQiLGVsZW1lbnQ6KGFzeW5jKCk9Pihhd2FpdCBzNHQoKS50aGVuKCgpPT53SHIpKS5PYmpzdFZpZXdQb2xpY2llcykoKX0se25hbWU6IkNvbmZpZyIsaWNvbk5hbWU6Imx1Y2lkZTpzZXR0aW5ncyIsZWxlbWVudDooYXN5bmMoKT0+KGF3YWl0IGM0dCgpLnRoZW4oKCk9PnpIcikpLk9ianN0Vmlld0NvbmZpZykoKX0se25hbWU6IkFjY2VzcyBLZXlzIixpY29uTmFtZToibHVjaWRlOmtleSIsZWxlbWVudDooYXN5bmMoKT0+KGF3YWl0IHU0dCgpLnRoZW4oKCk9PkxIcikpLk9ianN0Vmlld0NyZWRlbnRpYWxzKSgpfV0pO2wxKHRoaXMsInJlc29sdmVkVmlld1RhYnMiLFtdKTtkb2N1bWVudC50aXRsZT0iT2JqZWN0U3RvcmFnZSI7bGV0IHI9U28uc2VsZWN0KGk9PmkpLnN1YnNjcmliZShpPT57dGhpcy5sb2dpblN0YXRlPWksaS5pc0xvZ2dlZEluJiZ4bC5kaXNwYXRjaEFjdGlvbihYOCxudWxsKX0pO3RoaXMucnhTdWJzY3JpcHRpb25zLnB1c2gocik7bGV0IGE9SmMuc2VsZWN0KGk9PmkpLnN1YnNjcmliZShpPT57dGhpcy51aVN0YXRlPWksdGhpcy5zeW5jQXBwZGFzaFZpZXcoaS5hY3RpdmVWaWV3KX0pO3RoaXMucnhTdWJzY3JpcHRpb25zLnB1c2goYSl9cmVuZGVyKCl7cmV0dXJuIER0YAogICAgICA8ZGl2IGNsYXNzPSJtYWluY29udGFpbmVyIj4KICAgICAgICA8ZGVlcy1zaW1wbGUtbG9naW4gbmFtZT0iT2JqZWN0U3RvcmFnZSI+CiAgICAgICAgICA8ZGVlcy1zaW1wbGUtYXBwZGFzaAogICAgICAgICAgICBuYW1lPSJPYmplY3RTdG9yYWdlIgogICAgICAgICAgICAudmlld1RhYnM9JHt0aGlzLnJlc29sdmVkVmlld1RhYnN9CiAgICAgICAgICA+CiAgICAgICAgICA8L2RlZXMtc2ltcGxlLWFwcGRhc2g+CiAgICAgICAgPC9kZWVzLXNpbXBsZS1sb2dpbj4KICAgICAgPC9kaXY+CiAgICBgfWFzeW5jIGZpcnN0VXBkYXRlZCgpe3RoaXMucmVzb2x2ZWRWaWV3VGFicz1hd2FpdCBQcm9taXNlLmFsbCh0aGlzLnZpZXdUYWJzLm1hcChhc3luYyBvPT4oe25hbWU6by5uYW1lLGljb25OYW1lOm8uaWNvbk5hbWUsZWxlbWVudDphd2FpdCBvLmVsZW1lbnR9KSkpLHRoaXMucmVxdWVzdFVwZGF0ZSgpLGF3YWl0IHRoaXMudXBkYXRlQ29tcGxldGU7bGV0IHI9dGhpcy5zaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoImRlZXMtc2ltcGxlLWxvZ2luIik7ciYmci5hZGRFdmVudExpc3RlbmVyKCJsb2dpbiIsbz0+e3RoaXMubG9naW4oby5kZXRhaWwuZGF0YS51c2VybmFtZSxvLmRldGFpbC5kYXRhLnBhc3N3b3JkKX0pO2xldCBhPXRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCJkZWVzLXNpbXBsZS1hcHBkYXNoIik7aWYoYSYmKGEuYWRkRXZlbnRMaXN0ZW5lcigidmlldy1zZWxlY3QiLG89PntsZXQgbj1vLmRldGFpbC52aWV3Lm5hbWUudG9Mb3dlckNhc2UoKTtkZy5uYXZpZ2F0ZVRvVmlldyhuKX0pLGEuYWRkRXZlbnRMaXN0ZW5lcigibG9nb3V0Iixhc3luYygpPT57YXdhaXQgU28uZGlzcGF0Y2hBY3Rpb24oU2NlLG51bGwpfSkpLGEmJnRoaXMucmVzb2x2ZWRWaWV3VGFicy5sZW5ndGg+MCl7bGV0IG89dGhpcy5yZXNvbHZlZFZpZXdUYWJzLmZpbmQobj0+bi5uYW1lLnRvTG93ZXJDYXNlKCk9PT10aGlzLnVpU3RhdGUuYWN0aXZlVmlldyl8fHRoaXMucmVzb2x2ZWRWaWV3VGFic1swXTthd2FpdCBhLmxvYWRWaWV3KG8pfWxldCBpPVNvLmdldFN0YXRlKCk7aWYoaS5pZGVudGl0eT8uand0KWlmKGkuaWRlbnRpdHkuZXhwaXJlc0F0PkRhdGUubm93KCkpdHJ5e2xldCBuPWF3YWl0IG5ldyBZdC5wbHVnaW5zLnR5cGVkcmVxdWVzdC5UeXBlZFJlcXVlc3QoIi90eXBlZHJlcXVlc3QiLCJnZXRTZXJ2ZXJTdGF0dXMiKS5maXJlKHtpZGVudGl0eTppLmlkZW50aXR5fSk7eGwuc2V0U3RhdGUoe3N0YXR1czpuLnN0YXR1cyxjb25uZWN0aW9uSW5mbzpuLmNvbm5lY3Rpb25JbmZvfSksdGhpcy5sb2dpblN0YXRlPWksciYmYXdhaXQgci5zd2l0Y2hUb1Nsb3R0ZWRDb250ZW50KCl9Y2F0Y2gobyl7Y29uc29sZS53YXJuKCJTdG9yZWQgc2Vzc2lvbiBpbnZhbGlkLCByZXR1cm5pbmcgdG8gbG9naW46IixvKSxhd2FpdCBTby5kaXNwYXRjaEFjdGlvbihTY2UsbnVsbCl9ZWxzZSBhd2FpdCBTby5kaXNwYXRjaEFjdGlvbihTY2UsbnVsbCl9YXN5bmMgbG9naW4ocixhKXtsZXQgaT1hd2FpdCB0aGlzLmRvbXRvb2xzUHJvbWlzZSxvPXRoaXMuc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCJkZWVzLXNpbXBsZS1sb2dpbiIpLG49bz8uc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcigiZGVlcy1mb3JtIik7biYmbi5zZXRTdGF0dXMoInBlbmRpbmciLCJMb2dnaW5nIGluLi4uIiksKGF3YWl0IFNvLmRpc3BhdGNoQWN0aW9uKGpCcix7dXNlcm5hbWU6cixwYXNzd29yZDphfSkpLmlkZW50aXR5PyhuJiZuLnNldFN0YXR1cygic3VjY2VzcyIsIkxvZ2dlZCBpbiEiKSxvJiZhd2FpdCBvLnN3aXRjaFRvU2xvdHRlZENvbnRlbnQoKSxhd2FpdCB4bC5kaXNwYXRjaEFjdGlvbihYOCxudWxsKSk6biYmKG4uc2V0U3RhdHVzKCJlcnJvciIsIkxvZ2luIGZhaWxlZCEiKSxhd2FpdCBpLmNvbnZlbmllbmNlLnNtYXJ0ZGVsYXkuZGVsYXlGb3IoMmUzKSxuLnJlc2V0KCkpfXN5bmNBcHBkYXNoVmlldyhyKXtsZXQgYT10aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoImRlZXMtc2ltcGxlLWFwcGRhc2giKTtpZighYXx8dGhpcy5yZXNvbHZlZFZpZXdUYWJzLmxlbmd0aD09PTApcmV0dXJuO2xldCBpPXRoaXMucmVzb2x2ZWRWaWV3VGFicy5maW5kKG89Pm8ubmFtZS50b0xvd2VyQ2FzZSgpPT09cik7aSYmYS5sb2FkVmlldyhpKX19O28wPXkxKEVIciksZjR0PW5ldyBXZWFrTWFwLHA0dD1uZXcgV2Vha01hcCxwYShvMCw0LCJsb2dpblN0YXRlIixBSHIsVDMsZjR0KSxwYShvMCw0LCJ1aVN0YXRlIixESHIsVDMscDR0KSxUMz1wYShvMCwwLCJPYmpzdEFwcFNoZWxsIiwkSHIsVDMpLGwxKFQzLCJzdHlsZXMiLFtpdC5kZWZhdWx0U3R5bGVzLGhhYAogICAgICA6aG9zdCB7CiAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgaGVpZ2h0OiAxMDAlOwogICAgICB9CiAgICAgIC5tYWluY29udGFpbmVyIHsKICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICBoZWlnaHQ6IDEwMHZoOwogICAgICB9CiAgICBgXSksaHIobzAsMSxUMyk7SzgoKTtlNHQoKTtyNHQoKTtvNHQoKTtzNHQoKTtjNHQoKTt1NHQoKTtRbigpO19uKCk7YXdhaXQgRGNlKCk7ZGcuaW5pdCgpLEZiLnJlbmRlcihEdGA8b2Jqc3QtYXBwLXNoZWxsPjwvb2Jqc3QtYXBwLXNoZWxsPmAsZG9jdW1lbnQuYm9keSk7Ci8qISBCdW5kbGVkIGxpY2Vuc2UgaW5mb3JtYXRpb246CgpAbGl0L3JlYWN0aXZlLWVsZW1lbnQvY3NzLXRhZy5qczoKQGxpdC9yZWFjdGl2ZS1lbGVtZW50L2Nzcy10YWcuanM6CiAgKCoqCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgMjAxOSBHb29nbGUgTExDCiAgICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZQogICAqKQoKQGxpdC9yZWFjdGl2ZS1lbGVtZW50L3JlYWN0aXZlLWVsZW1lbnQuanM6CmxpdC1odG1sL2xpdC1odG1sLmpzOgpsaXQtZWxlbWVudC9saXQtZWxlbWVudC5qczoKQGxpdC9yZWFjdGl2ZS1lbGVtZW50L2RlY29yYXRvcnMvcHJvcGVydHkuanM6CmxpdC1odG1sL2RpcmVjdGl2ZS5qczoKbGl0LWh0bWwvZGlyZWN0aXZlcy91bnNhZmUtaHRtbC5qczoKQGxpdC9yZWFjdGl2ZS1lbGVtZW50L2RlY29yYXRvcnMvY3VzdG9tLWVsZW1lbnQuanM6CkBsaXQvcmVhY3RpdmUtZWxlbWVudC9kZWNvcmF0b3JzL3N0YXRlLmpzOgpAbGl0L3JlYWN0aXZlLWVsZW1lbnQvZGVjb3JhdG9ycy9ldmVudC1vcHRpb25zLmpzOgpAbGl0L3JlYWN0aXZlLWVsZW1lbnQvZGVjb3JhdG9ycy9iYXNlLmpzOgpAbGl0L3JlYWN0aXZlLWVsZW1lbnQvZGVjb3JhdG9ycy9xdWVyeS5qczoKQGxpdC9yZWFjdGl2ZS1lbGVtZW50L2RlY29yYXRvcnMvcXVlcnktYWxsLmpzOgpAbGl0L3JlYWN0aXZlLWVsZW1lbnQvZGVjb3JhdG9ycy9xdWVyeS1hc3luYy5qczoKQGxpdC9yZWFjdGl2ZS1lbGVtZW50L2RlY29yYXRvcnMvcXVlcnktYXNzaWduZWQtbm9kZXMuanM6CmxpdC1odG1sL2FzeW5jLWRpcmVjdGl2ZS5qczoKbGl0LWh0bWwvZGlyZWN0aXZlcy91bnRpbC5qczoKbGl0LWh0bWwvZGlyZWN0aXZlcy9hc3luYy1yZXBsYWNlLmpzOgpsaXQtaHRtbC9kaXJlY3RpdmVzL2FzeW5jLWFwcGVuZC5qczoKbGl0LWh0bWwvZGlyZWN0aXZlcy9yZXBlYXQuanM6CkBsaXQvcmVhY3RpdmUtZWxlbWVudC9yZWFjdGl2ZS1lbGVtZW50LmpzOgpsaXQtaHRtbC9saXQtaHRtbC5qczoKbGl0LWVsZW1lbnQvbGl0LWVsZW1lbnQuanM6CkBsaXQvcmVhY3RpdmUtZWxlbWVudC9kZWNvcmF0b3JzL3Byb3BlcnR5LmpzOgpsaXQtaHRtbC9kaXJlY3RpdmUuanM6CmxpdC1odG1sL2RpcmVjdGl2ZXMvdW5zYWZlLWh0bWwuanM6CkBsaXQvcmVhY3RpdmUtZWxlbWVudC9kZWNvcmF0b3JzL2N1c3RvbS1lbGVtZW50LmpzOgpAbGl0L3JlYWN0aXZlLWVsZW1lbnQvZGVjb3JhdG9ycy9zdGF0ZS5qczoKQGxpdC9yZWFjdGl2ZS1lbGVtZW50L2RlY29yYXRvcnMvZXZlbnQtb3B0aW9ucy5qczoKQGxpdC9yZWFjdGl2ZS1lbGVtZW50L2RlY29yYXRvcnMvYmFzZS5qczoKQGxpdC9yZWFjdGl2ZS1lbGVtZW50L2RlY29yYXRvcnMvcXVlcnkuanM6CkBsaXQvcmVhY3RpdmUtZWxlbWVudC9kZWNvcmF0b3JzL3F1ZXJ5LWFsbC5qczoKQGxpdC9yZWFjdGl2ZS1lbGVtZW50L2RlY29yYXRvcnMvcXVlcnktYXN5bmMuanM6CkBsaXQvcmVhY3RpdmUtZWxlbWVudC9kZWNvcmF0b3JzL3F1ZXJ5LWFzc2lnbmVkLW5vZGVzLmpzOgpsaXQtaHRtbC9hc3luYy1kaXJlY3RpdmUuanM6CmxpdC1odG1sL2RpcmVjdGl2ZXMvdW50aWwuanM6CmxpdC1odG1sL2RpcmVjdGl2ZXMvYXN5bmMtcmVwbGFjZS5qczoKbGl0LWh0bWwvZGlyZWN0aXZlcy9hc3luYy1hcHBlbmQuanM6CmxpdC1odG1sL2RpcmVjdGl2ZXMvcmVwZWF0LmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IDIwMTcgR29vZ2xlIExMQwogICAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UKICAgKikKCmxpdC1odG1sL2lzLXNlcnZlci5qczoKbGl0LWh0bWwvaXMtc2VydmVyLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IDIwMjIgR29vZ2xlIExMQwogICAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UKICAgKikKCnN3ZWV0LXNjcm9sbC9zd2VldC1zY3JvbGwuanM6CnN3ZWV0LXNjcm9sbC9zd2VldC1zY3JvbGwuanM6CiAgKCohIEBwcmVzZXJ2ZSBzd2VldC1zY3JvbGwgdjQuMC4wIC0gdHN1eW9zaGl3YWRhIHwgTUlUIExpY2Vuc2UgKikKICAoKiEgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKICAgICAgQ29weXJpZ2h0IChjKSBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgICAgIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOyB5b3UgbWF5IG5vdCB1c2UKICAgICAgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUKICAgICAgTGljZW5zZSBhdCBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKICAKICAgICAgVEhJUyBDT0RFIElTIFBST1ZJREVEIE9OIEFOICpBUyBJUyogQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWQogICAgICBLSU5ELCBFSVRIRVIgRVhQUkVTUyBPUiBJTVBMSUVELCBJTkNMVURJTkcgV0lUSE9VVCBMSU1JVEFUSU9OIEFOWSBJTVBMSUVECiAgICAgIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBUSVRMRSwgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UsCiAgICAgIE1FUkNIQU5UQUJMSVRZIE9SIE5PTi1JTkZSSU5HRU1FTlQuCiAgCiAgICAgIFNlZSB0aGUgQXBhY2hlIFZlcnNpb24gMi4wIExpY2Vuc2UgZm9yIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucwogICAgICBhbmQgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCiAgICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqICopCgpsaXQtaHRtbC9zdGF0aWMuanM6CmxpdC1odG1sL2RpcmVjdGl2ZS1oZWxwZXJzLmpzOgpsaXQtaHRtbC9zdGF0aWMuanM6CmxpdC1odG1sL2RpcmVjdGl2ZS1oZWxwZXJzLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IDIwMjAgR29vZ2xlIExMQwogICAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UKICAgKikKCkBsaXQvcmVhY3RpdmUtZWxlbWVudC9kZWNvcmF0b3JzL3F1ZXJ5LWFzc2lnbmVkLWVsZW1lbnRzLmpzOgpsaXQtaHRtbC9kaXJlY3RpdmVzL3ByaXZhdGUtYXN5bmMtaGVscGVycy5qczoKbGl0LWh0bWwvZGlyZWN0aXZlcy9rZXllZC5qczoKQGxpdC9yZWFjdGl2ZS1lbGVtZW50L2RlY29yYXRvcnMvcXVlcnktYXNzaWduZWQtZWxlbWVudHMuanM6CmxpdC1odG1sL2RpcmVjdGl2ZXMvcHJpdmF0ZS1hc3luYy1oZWxwZXJzLmpzOgpsaXQtaHRtbC9kaXJlY3RpdmVzL2tleWVkLmpzOgogICgqKgogICAqIEBsaWNlbnNlCiAgICogQ29weXJpZ2h0IDIwMjEgR29vZ2xlIExMQwogICAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UKICAgKikKCkBmb3J0YXdlc29tZS9mb250YXdlc29tZS1zdmctY29yZS9pbmRleC5tanM6CkBmb3J0YXdlc29tZS9mcmVlLWJyYW5kcy1zdmctaWNvbnMvaW5kZXgubWpzOgpAZm9ydGF3ZXNvbWUvZnJlZS1yZWd1bGFyLXN2Zy1pY29ucy9pbmRleC5tanM6CkBmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucy9pbmRleC5tanM6CiAgKCohCiAgICogRm9udCBBd2Vzb21lIEZyZWUgNy4yLjAgYnkgQGZvbnRhd2Vzb21lIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb20KICAgKiBMaWNlbnNlIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb20vbGljZW5zZS9mcmVlIChJY29uczogQ0MgQlkgNC4wLCBGb250czogU0lMIE9GTCAxLjEsIENvZGU6IE1JVCBMaWNlbnNlKQogICAqIENvcHlyaWdodCAyMDI2IEZvbnRpY29ucywgSW5jLgogICAqKQoKbHVjaWRlL2Rpc3QvZXNtL2RlZmF1bHRBdHRyaWJ1dGVzLmpzOgpsdWNpZGUvZGlzdC9lc20vY3JlYXRlRWxlbWVudC5qczoKbHVjaWRlL2Rpc3QvZXNtL3NoYXJlZC9zcmMvdXRpbHMvaGFzQTExeVByb3AuanM6Cmx1Y2lkZS9kaXN0L2VzbS9zaGFyZWQvc3JjL3V0aWxzL21lcmdlQ2xhc3Nlcy5qczoKbHVjaWRlL2Rpc3QvZXNtL3NoYXJlZC9zcmMvdXRpbHMvdG9DYW1lbENhc2UuanM6Cmx1Y2lkZS9kaXN0L2VzbS9zaGFyZWQvc3JjL3V0aWxzL3RvUGFzY2FsQ2FzZS5qczoKbHVjaWRlL2Rpc3QvZXNtL3JlcGxhY2VFbGVtZW50LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYS1hcnJvdy1kb3duLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYS1hcnJvdy11cC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2EtbGFyZ2Utc21hbGwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hY2Nlc3NpYmlsaXR5LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYWN0aXZpdHkuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9haXItdmVudC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2FpcnBsYXkuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hbGFybS1jbG9jay1taW51cy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2FsYXJtLWNsb2NrLWNoZWNrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYWxhcm0tY2xvY2stb2ZmLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYWxhcm0tY2xvY2suanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hbGFybS1jbG9jay1wbHVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYWxhcm0tc21va2UuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hbGJ1bS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2FsaWduLWNlbnRlci1ob3Jpem9udGFsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYWxpZ24tY2VudGVyLXZlcnRpY2FsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYWxpZ24tZW5kLWhvcml6b250YWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hbGlnbi1lbmQtdmVydGljYWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hbGlnbi1ob3Jpem9udGFsLWRpc3RyaWJ1dGUtY2VudGVyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYWxpZ24taG9yaXpvbnRhbC1kaXN0cmlidXRlLWVuZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2FsaWduLWhvcml6b250YWwtZGlzdHJpYnV0ZS1zdGFydC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2FsaWduLWhvcml6b250YWwtanVzdGlmeS1jZW50ZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hbGlnbi1ob3Jpem9udGFsLWp1c3RpZnktZW5kLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYWxpZ24taG9yaXpvbnRhbC1qdXN0aWZ5LXN0YXJ0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYWxpZ24taG9yaXpvbnRhbC1zcGFjZS1hcm91bmQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hbGlnbi1ob3Jpem9udGFsLXNwYWNlLWJldHdlZW4uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hbGlnbi1zdGFydC1ob3Jpem9udGFsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYWxpZ24tc3RhcnQtdmVydGljYWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hbGlnbi12ZXJ0aWNhbC1kaXN0cmlidXRlLWNlbnRlci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2FsaWduLXZlcnRpY2FsLWRpc3RyaWJ1dGUtZW5kLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYWxpZ24tdmVydGljYWwtZGlzdHJpYnV0ZS1zdGFydC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2FsaWduLXZlcnRpY2FsLWp1c3RpZnktY2VudGVyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYWxpZ24tdmVydGljYWwtanVzdGlmeS1lbmQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hbGlnbi12ZXJ0aWNhbC1qdXN0aWZ5LXN0YXJ0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYWxpZ24tdmVydGljYWwtc3BhY2UtYXJvdW5kLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYWxpZ24tdmVydGljYWwtc3BhY2UtYmV0d2Vlbi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2FtcGVyc2FuZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2FtYnVsYW5jZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2FtcGVyc2FuZHMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hbXBob3JhLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYW5jaG9yLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYW5ncnkuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hbm5veWVkLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYW50ZW5uYS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2FudmlsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYXBlcnR1cmUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hcHAtd2luZG93LW1hYy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2FwcC13aW5kb3cuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hcHBsZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2FyY2hpdmUtcmVzdG9yZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2FyY2hpdmUteC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2FyY2hpdmUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hcm1jaGFpci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Fycm93LWJpZy1kb3duLWRhc2guanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hcnJvdy1iaWctZG93bi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Fycm93LWJpZy1sZWZ0LWRhc2guanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hcnJvdy1iaWctbGVmdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Fycm93LWJpZy1yaWdodC1kYXNoLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYXJyb3ctYmlnLXJpZ2h0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYXJyb3ctYmlnLXVwLWRhc2guanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hcnJvdy1kb3duLTAtMS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Fycm93LWJpZy11cC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Fycm93LWRvd24tMS0wLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYXJyb3ctZG93bi1hLXouanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hcnJvdy1kb3duLWZyb20tbGluZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Fycm93LWRvd24tbGVmdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Fycm93LWRvd24tbmFycm93LXdpZGUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hcnJvdy1kb3duLXJpZ2h0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYXJyb3ctZG93bi10by1kb3QuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hcnJvdy1kb3duLXRvLWxpbmUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hcnJvdy1kb3duLXVwLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYXJyb3ctZG93bi13aWRlLW5hcnJvdy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Fycm93LWRvd24tei1hLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYXJyb3ctZG93bi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Fycm93LWxlZnQtZnJvbS1saW5lLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYXJyb3ctbGVmdC1yaWdodC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Fycm93LWxlZnQtdG8tbGluZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Fycm93LWxlZnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hcnJvdy1yaWdodC1mcm9tLWxpbmUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hcnJvdy1yaWdodC1sZWZ0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYXJyb3ctcmlnaHQtdG8tbGluZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Fycm93LXJpZ2h0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYXJyb3ctdXAtMC0xLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYXJyb3ctdXAtMS0wLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYXJyb3ctdXAtYS16LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYXJyb3ctdXAtZG93bi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Fycm93LXVwLWZyb20tZG90LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYXJyb3ctdXAtZnJvbS1saW5lLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYXJyb3ctdXAtbGVmdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Fycm93LXVwLW5hcnJvdy13aWRlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYXJyb3ctdXAtcmlnaHQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hcnJvdy11cC10by1saW5lLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYXJyb3ctdXAtd2lkZS1uYXJyb3cuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hcnJvdy11cC16LWEuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hcnJvdy11cC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Fycm93cy11cC1mcm9tLWxpbmUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hdC1zaWduLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYXN0ZXJpc2suanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hdG9tLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYXVkaW8tbGluZXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9hdWRpby13YXZlZm9ybS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2F3YXJkLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYXhlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYXhpcy0zZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2JhYnkuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9iYWNrcGFjay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2JhZGdlLWFsZXJ0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmFkZ2UtY2VudC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2JhZGdlLWNoZWNrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmFkZ2UtZXVyby5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2JhZGdlLWRvbGxhci1zaWduLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmFkZ2UtaW5kaWFuLXJ1cGVlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmFkZ2UtaW5mby5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2JhZGdlLWphcGFuZXNlLXllbi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2JhZGdlLW1pbnVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmFkZ2UtcGVyY2VudC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2JhZGdlLXBvdW5kLXN0ZXJsaW5nLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmFkZ2UtcGx1cy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2JhZGdlLXF1ZXN0aW9uLW1hcmsuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9iYWRnZS1ydXNzaWFuLXJ1YmxlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmFkZ2Utc3dpc3MtZnJhbmMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9iYWRnZS10dXJraXNoLWxpcmEuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9iYWRnZS14LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmFkZ2UuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9iYWdnYWdlLWNsYWltLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmFsbG9vbi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Jhbi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2JhbmFuYS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2JhbmRhZ2UuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9iYW5rbm90ZS1hcnJvdy1kb3duLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmFua25vdGUtYXJyb3ctdXAuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9iYW5rbm90ZS14LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmFua25vdGUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9iYXJjb2RlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmFycmVsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmFzZWxpbmUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9iYXRoLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmF0dGVyeS1jaGFyZ2luZy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2JhdHRlcnktZnVsbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2JhdHRlcnktbG93LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmF0dGVyeS1tZWRpdW0uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9iYXR0ZXJ5LXBsdXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9iYXR0ZXJ5LXdhcm5pbmcuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9iYXR0ZXJ5LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmVha2VyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmVhbi1vZmYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9iZWFuLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmVkLWRvdWJsZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2JlZC1zaW5nbGUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9iZWQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9iZWVmLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmVlci1vZmYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9iZWVyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmVsbC1kb3QuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9iZWxsLW9mZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2JlbGwtZWxlY3RyaWMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9iZWxsLW1pbnVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmVsbC1wbHVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmVsbC1yaW5nLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmVsbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2JldHdlZW4taG9yaXpvbnRhbC1lbmQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9iZXR3ZWVuLXZlcnRpY2FsLWVuZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2JldHdlZW4taG9yaXpvbnRhbC1zdGFydC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2JldHdlZW4tdmVydGljYWwtc3RhcnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9iaWtlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmljZXBzLWZsZXhlZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2JpbmFyeS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Jpb2hhemFyZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Jpbm9jdWxhcnMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9iaXJkLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYml0Y29pbi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2JpcmRob3VzZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2JsZW5kLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmxpbmRzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmxvY2tzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmx1ZXRvb3RoLWNvbm5lY3RlZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2JsdWV0b290aC1vZmYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9ibHVldG9vdGgtc2VhcmNoaW5nLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYmx1ZXRvb3RoLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYm9sZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2JvbHQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9ib21iLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYm9uZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Jvb2stYS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Jvb2stYWxlcnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9ib29rLWF1ZGlvLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYm9vay1jaGVjay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Jvb2stZGFzaGVkLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYm9vay1jb3B5LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYm9vay1kb3duLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYm9vay1oZWFkcGhvbmVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYm9vay1oZWFydC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Jvb2staW1hZ2UuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9ib29rLWtleS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Jvb2stbWFya2VkLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYm9vay1sb2NrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYm9vay1taW51cy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Jvb2stb3Blbi1jaGVjay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Jvb2stb3Blbi10ZXh0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYm9vay1vcGVuLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYm9vay1wbHVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYm9vay1zZWFyY2guanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9ib29rLXRleHQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9ib29rLXVwLTIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9ib29rLXR5cGUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9ib29rLXVwLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYm9vay11c2VyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYm9vay14LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYm9vay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Jvb2ttYXJrLWNoZWNrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYm9va21hcmstbWludXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9ib29rbWFyay1wbHVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYm9va21hcmsteC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Jvb2ttYXJrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYm9vbS1ib3guanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9ib3QtbWVzc2FnZS1zcXVhcmUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9ib3Qtb2ZmLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYm90LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYm93LWFycm93LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYm90dGxlLXdpbmUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9ib3guanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9ib3hlcy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2JyYWNlcy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2JyYWNrZXRzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYnJhaW4tY2lyY3VpdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2JyYWluLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYnJhaW4tY29nLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYnJpY2std2FsbC1maXJlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYnJpY2std2FsbC1zaGllbGQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9icmljay13YWxsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYnJpZWZjYXNlLWJ1c2luZXNzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYnJpZWZjYXNlLWNvbnZleW9yLWJlbHQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9icmllZmNhc2UtbWVkaWNhbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2JyaWVmY2FzZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2JyaW5nLXRvLWZyb250LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYnJ1c2gtY2xlYW5pbmcuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9icnVzaC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2J1Zy1vZmYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9idWJibGVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYnVnLXBsYXkuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9idWcuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9idWlsZGluZy0yLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvYnVpbGRpbmcuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9idXMtZnJvbnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9idXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jYWJsZS1jYXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jYWJsZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nha2Utc2xpY2UuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jYWtlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2FsY3VsYXRvci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NhbGVuZGFyLTEuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jYWxlbmRhci1hcnJvdy1kb3duLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2FsZW5kYXItYXJyb3ctdXAuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jYWxlbmRhci1jaGVjay0yLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2FsZW5kYXItY2hlY2suanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jYWxlbmRhci1jbG9jay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NhbGVuZGFyLWNvZy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NhbGVuZGFyLWRheXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jYWxlbmRhci1mb2xkLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2FsZW5kYXItaGVhcnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jYWxlbmRhci1taW51cy0yLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2FsZW5kYXItbWludXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jYWxlbmRhci1vZmYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jYWxlbmRhci1wbHVzLTIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jYWxlbmRhci1wbHVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2FsZW5kYXItcmFuZ2UuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jYWxlbmRhci1zZWFyY2guanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jYWxlbmRhci1zeW5jLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2FsZW5kYXIteC0yLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2FsZW5kYXIteC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NhbGVuZGFyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2FsZW5kYXJzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2FtZXJhLW9mZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NhbWVyYS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NhbmR5LWNhbmUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jYW5keS1vZmYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jYW5uYWJpcy1vZmYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jYW5uYWJpcy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NhbmR5LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2FwdGlvbnMtb2ZmLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2FwdGlvbnMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jYXItZnJvbnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jYXItdGF4aS1mcm9udC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nhci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NhcmF2YW4uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jYXJyb3QuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jYXJkLXNpbS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nhc2UtbG93ZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jYXNlLXNlbnNpdGl2ZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nhc2UtdXBwZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jYXNzZXR0ZS10YXBlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2FzdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NhdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nhc3RsZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NjdHYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaGFydC1hcmVhLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2hhcnQtYmFyLWJpZy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NoYXJ0LWJhci1kZWNyZWFzaW5nLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2hhcnQtYmFyLWluY3JlYXNpbmcuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaGFydC1iYXItc3RhY2tlZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NoYXJ0LWJhci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NoYXJ0LWNhbmRsZXN0aWNrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2hhcnQtY29sdW1uLWJpZy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NoYXJ0LWNvbHVtbi1kZWNyZWFzaW5nLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2hhcnQtY29sdW1uLWluY3JlYXNpbmcuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaGFydC1jb2x1bW4uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaGFydC1jb2x1bW4tc3RhY2tlZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NoYXJ0LWdhbnR0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2hhcnQtbGluZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NoYXJ0LW5ldHdvcmsuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaGFydC1uby1heGVzLWNvbHVtbi1kZWNyZWFzaW5nLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2hhcnQtbm8tYXhlcy1jb2x1bW4taW5jcmVhc2luZy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NoYXJ0LW5vLWF4ZXMtY29sdW1uLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2hhcnQtbm8tYXhlcy1jb21iaW5lZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NoYXJ0LW5vLWF4ZXMtZ2FudHQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaGFydC1waWUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaGFydC1zcGxpbmUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaGFydC1zY2F0dGVyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2hlY2stY2hlY2suanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaGVjay1saW5lLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2hlY2suanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaGVmLWhhdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NoZXJyeS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NoZXNzLWtpbmcuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaGVzcy1iaXNob3AuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaGVzcy1rbmlnaHQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaGVzcy1wYXduLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2hlc3MtcXVlZW4uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaGVzcy1yb29rLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2hldnJvbi1kb3duLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2hldnJvbi1maXJzdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NoZXZyb24tbGFzdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NoZXZyb24tcmlnaHQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaGV2cm9uLWxlZnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaGV2cm9uLXVwLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2hldnJvbnMtZG93bi11cC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NoZXZyb25zLWRvd24uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaGV2cm9ucy1sZWZ0LXJpZ2h0LWVsbGlwc2lzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2hldnJvbnMtbGVmdC1yaWdodC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NoZXZyb25zLWxlZnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaGV2cm9ucy1yaWdodC1sZWZ0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2hldnJvbnMtcmlnaHQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaGV2cm9ucy11cC1kb3duLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2hldnJvbnMtdXAuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaHJvbWl1bS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NpZ2FyZXR0ZS1vZmYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaHVyY2guanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaWdhcmV0dGUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaXJjbGUtYWxlcnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaXJjbGUtYXJyb3ctZG93bi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NpcmNsZS1hcnJvdy1sZWZ0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2lyY2xlLWFycm93LW91dC1kb3duLWxlZnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaXJjbGUtYXJyb3ctb3V0LWRvd24tcmlnaHQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaXJjbGUtYXJyb3ctb3V0LXVwLWxlZnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaXJjbGUtYXJyb3ctb3V0LXVwLXJpZ2h0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2lyY2xlLWFycm93LXJpZ2h0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2lyY2xlLWFycm93LXVwLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2lyY2xlLWNoZWNrLWJpZy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NpcmNsZS1jaGVjay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NpcmNsZS1jaGV2cm9uLWRvd24uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaXJjbGUtY2hldnJvbi1sZWZ0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2lyY2xlLWNoZXZyb24tcmlnaHQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaXJjbGUtY2hldnJvbi11cC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NpcmNsZS1kYXNoZWQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaXJjbGUtZGl2aWRlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2lyY2xlLWRvbGxhci1zaWduLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2lyY2xlLWRvdC1kYXNoZWQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaXJjbGUtZG90LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2lyY2xlLWVsbGlwc2lzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2lyY2xlLWVxdWFsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2lyY2xlLWZhZGluZy1hcnJvdy11cC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NpcmNsZS1mYWRpbmctcGx1cy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NpcmNsZS1nYXVnZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NpcmNsZS1taW51cy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NpcmNsZS1vZmYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaXJjbGUtcGFya2luZy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NpcmNsZS1wYXJraW5nLW9mZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NpcmNsZS1wYXVzZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NpcmNsZS1wZXJjZW50LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2lyY2xlLXBpbGUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaXJjbGUtcGxheS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NpcmNsZS1wbHVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2lyY2xlLXBvdW5kLXN0ZXJsaW5nLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2lyY2xlLXBvd2VyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2lyY2xlLXF1ZXN0aW9uLW1hcmsuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaXJjbGUtc2xhc2gtMi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NpcmNsZS1zbGFzaC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NpcmNsZS1zbWFsbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NpcmNsZS1zdGFyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2lyY2xlLXN0b3AuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaXJjbGUtdXNlci1yb3VuZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NpcmNsZS11c2VyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2lyY2xlLXguanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaXJjbGUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jaXJjdWl0LWJvYXJkLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2l0cnVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2xhcHBlcmJvYXJkLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2xpcGJvYXJkLWNoZWNrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2xpcGJvYXJkLWNsb2NrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2xpcGJvYXJkLWNvcHkuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jbGlwYm9hcmQtbGlzdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NsaXBib2FyZC1taW51cy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NsaXBib2FyZC1wYXN0ZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NsaXBib2FyZC1wZW4tbGluZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NsaXBib2FyZC1wZW4uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jbGlwYm9hcmQtcGx1cy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NsaXBib2FyZC10eXBlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2xpcGJvYXJkLXguanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jbGlwYm9hcmQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jbG9jay0xLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2xvY2stMTAuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jbG9jay0xMS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nsb2NrLTEyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2xvY2stMy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nsb2NrLTIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jbG9jay00LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2xvY2stNS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nsb2NrLTYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jbG9jay03LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2xvY2stOS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nsb2NrLTguanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jbG9jay1hbGVydC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nsb2NrLWFycm93LWRvd24uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jbG9jay1hcnJvdy11cC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nsb2NrLWNoZWNrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2xvY2stZmFkaW5nLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2xvY2stcGx1cy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nsb2NrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2xvdWQtYWxlcnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jbG9zZWQtY2FwdGlvbi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nsb3VkLWJhY2t1cC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nsb3VkLWNoZWNrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2xvdWQtY29nLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2xvdWQtZG93bmxvYWQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jbG91ZC1kcml6emxlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2xvdWQtZm9nLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2xvdWQtaGFpbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nsb3VkLWxpZ2h0bmluZy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nsb3VkLW1vb24tcmFpbi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nsb3VkLW1vb24uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jbG91ZC1vZmYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jbG91ZC1yYWluLXdpbmQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jbG91ZC1yYWluLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2xvdWQtc25vdy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nsb3VkLXN1bi1yYWluLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2xvdWQtc3luYy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nsb3VkLXN1bi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nsb3VkLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2xvdWQtdXBsb2FkLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2xvdWR5LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2xvdmVyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY2x1Yi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NvZGUteG1sLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY29kZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NvZGVwZW4uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jb2Rlc2FuZGJveC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NvZmZlZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NvZy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NvaW5zLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY29sdW1ucy0yLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY29sdW1ucy0zLWNvZy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NvbHVtbnMtMy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NvbHVtbnMtNC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NvbWJpbmUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jb21tYW5kLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY29tcGFzcy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NvbXBvbmVudC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NvbmNpZXJnZS1iZWxsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY29tcHV0ZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jb25lLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY29uc3RydWN0aW9uLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY29udGFjdC1yb3VuZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NvbnRhY3QuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jb250YWluZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jb250cmFzdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nvb2tpZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nvb2tpbmctcG90LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY29weS1jaGVjay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NvcHktbWludXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jb3B5LXBsdXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jb3B5LXNsYXNoLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY29weS14LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY29weS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NvcHlsZWZ0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY29weXJpZ2h0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY29ybmVyLWRvd24tbGVmdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nvcm5lci1kb3duLXJpZ2h0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY29ybmVyLWxlZnQtZG93bi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nvcm5lci1sZWZ0LXVwLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY29ybmVyLXJpZ2h0LWRvd24uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jb3JuZXItcmlnaHQtdXAuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jb3JuZXItdXAtbGVmdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NwdS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nvcm5lci11cC1yaWdodC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2NyZWF0aXZlLWNvbW1vbnMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jcmVkaXQtY2FyZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nyb2lzc2FudC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nyb3AuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jcm9zcy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nyb3NzaGFpci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Nyb3duLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvY3VwLXNvZGEuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jdWJvaWQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9jdXJyZW5jeS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2N5bGluZGVyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZGFtLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZGF0YWJhc2UtYmFja3VwLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZGF0YWJhc2UtemFwLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZGF0YWJhc2Utc2VhcmNoLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZGVjaW1hbHMtYXJyb3ctbGVmdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2RhdGFiYXNlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZGVjaW1hbHMtYXJyb3ctcmlnaHQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9kZWxldGUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9kaWFtZXRlci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Rlc3NlcnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9kaWFtb25kLW1pbnVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZGlhbW9uZC1wZXJjZW50LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZGlhbW9uZC1wbHVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZGlhbW9uZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2RpY2UtMS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2RpY2UtMi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2RpY2UtMy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2RpY2UtNC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2RpY2UtNS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2RpY2UtNi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2RpY2VzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZGlmZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Rpc2MtMi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Rpc2MtYWxidW0uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9kaXNjLTMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9kaXNjLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZGl2aWRlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZG5hLW9mZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2RvY2suanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9kbmEuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9kb2cuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9kb2xsYXItc2lnbi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2RvbnV0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZG9vci1jbG9zZWQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9kb29yLWNsb3NlZC1sb2NrZWQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9kb29yLW9wZW4uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9kb3QuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9kb3dubG9hZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2RyYW1hLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZHJhZnRpbmctY29tcGFzcy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2RyaWJiYmxlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZHJpbGwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9kcm9uZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Ryb3BsZXQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9kcm9wbGV0LW9mZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Ryb3BsZXRzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZHJ1bS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2RydW1zdGljay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2R1bWJiZWxsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZWFyLW9mZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Vhci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2VhcnRoLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZWFydGgtbG9jay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2VjbGlwc2UuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9lZ2ctb2ZmLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZWdnLWZyaWVkLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZWdnLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZWxsaXBzZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2VsbGlwc2lzLXZlcnRpY2FsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZWxsaXBzaXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9lcXVhbC1hcHByb3hpbWF0ZWx5LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZXF1YWwtbm90LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZXF1YWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9lcmFzZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9ldGhlcm5ldC1wb3J0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZXVyby5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2V4cGFuZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2V2LWNoYXJnZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9leHRlcm5hbC1saW5rLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZXllLW9mZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2V5ZS1jbG9zZWQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9leWUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9mYWNlYm9vay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZhY3RvcnkuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9mYW4uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9mYXN0LWZvcndhcmQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9mZWF0aGVyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZmVuY2UuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9mZXJyaXMtd2hlZWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9maWdtYS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtYXJjaGl2ZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtYXhpcy0zZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtYmFkZ2UuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9maWxlLWJveC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtYnJhY2VzLWNvcm5lci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtYnJhY2VzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZmlsZS1jaGFydC1jb2x1bW4taW5jcmVhc2luZy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtY2hhcnQtY29sdW1uLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZmlsZS1jaGFydC1saW5lLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZmlsZS1jaGFydC1waWUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9maWxlLWNoZWNrLWNvcm5lci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtY2hlY2suanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9maWxlLWNvZGUtY29ybmVyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZmlsZS1jbG9jay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtY29kZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtY29nLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZmlsZS1kaWdpdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtZGlmZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtZG93bi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtZXhjbGFtYXRpb24tcG9pbnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9maWxlLWhlYWRwaG9uZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtaGVhcnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9maWxlLWltYWdlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZmlsZS1pbnB1dC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtbG9jay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUta2V5LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZmlsZS1taW51cy1jb3JuZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9maWxlLW1pbnVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZmlsZS1tdXNpYy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtb3V0cHV0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZmlsZS1wZW4tbGluZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtcGVuLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZmlsZS1wbGF5LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZmlsZS1wbHVzLWNvcm5lci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtcGx1cy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtcXVlc3Rpb24tbWFyay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtc2Nhbi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtc2VhcmNoLWNvcm5lci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtc2VhcmNoLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZmlsZS1zaWduYWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9maWxlLXNsaWRlcnMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9maWxlLXNwcmVhZHNoZWV0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZmlsZS1zdGFjay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtc3ltbGluay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtdGV4dC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtdHlwZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtdGVybWluYWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9maWxlLXR5cGUtY29ybmVyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZmlsZS11cC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtdXNlci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtdmlkZW8tY2FtZXJhLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZmlsZS14LWNvcm5lci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGUtdm9sdW1lLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZmlsZS14LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZmlsZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbGVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZmlsbS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZpbmdlcnByaW50LXBhdHRlcm4uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9maXJlLWV4dGluZ3Vpc2hlci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Zpc2gtb2ZmLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZmlzaC1zeW1ib2wuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9maXNoLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZmlzaGluZy1ob29rLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZmlzaGluZy1yb2QuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9mbGFnLXRyaWFuZ2xlLWxlZnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9mbGFnLW9mZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZsYWctdHJpYW5nbGUtcmlnaHQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9mbGFnLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZmxhbWUta2luZGxpbmcuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9mbGFtZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZsYXNobGlnaHQtb2ZmLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZmxhc2hsaWdodC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZsYXNrLWNvbmljYWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9mbGFzay1jb25pY2FsLW9mZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZsYXNrLXJvdW5kLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZmxpcC1ob3Jpem9udGFsLTIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9mbGlwLXZlcnRpY2FsLTIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9mbG93ZXItMi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Zsb3dlci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZvY3VzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZm9sZC1ob3Jpem9udGFsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZm9sZC12ZXJ0aWNhbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZvbGRlci1hcmNoaXZlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZm9sZGVyLWNoZWNrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZm9sZGVyLWNsb2NrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZm9sZGVyLWNsb3NlZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZvbGRlci1jb2RlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZm9sZGVyLWNvZy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZvbGRlci1kb3QuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9mb2xkZXItZG93bi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZvbGRlci1naXQtMi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZvbGRlci1naXQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9mb2xkZXItaGVhcnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9mb2xkZXItaW5wdXQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9mb2xkZXIta2FuYmFuLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZm9sZGVyLWtleS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZvbGRlci1sb2NrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZm9sZGVyLW1pbnVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZm9sZGVyLW9wZW4tZG90LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZm9sZGVyLW9wZW4uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9mb2xkZXItcGVuLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZm9sZGVyLW91dHB1dC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZvbGRlci1wbHVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZm9sZGVyLXJvb3QuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9mb2xkZXItc2VhcmNoLTIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9mb2xkZXItc2VhcmNoLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZm9sZGVyLXN5bWxpbmsuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9mb2xkZXItc3luYy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZvbGRlci10cmVlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZm9sZGVyLXVwLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZm9sZGVyLXguanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9mb2xkZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9mb2xkZXJzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZm9vdHByaW50cy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Zvcm0uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9mb3JrbGlmdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZyYW1lLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZm9yd2FyZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ZyYW1lci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Zyb3duLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZnVlbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Z1bGxzY3JlZW4uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9mdW5uZWwtcGx1cy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2Z1bm5lbC14LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZnVubmVsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZ2FsbGVyeS1ob3Jpem9udGFsLWVuZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2dhbGxlcnktaG9yaXpvbnRhbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2dhbGxlcnktdGh1bWJuYWlscy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2dhbGxlcnktdmVydGljYWwtZW5kLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZ2FsbGVyeS12ZXJ0aWNhbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2dhbWVwYWQtMi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2dhbWVwYWQtZGlyZWN0aW9uYWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9nYW1lcGFkLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZ2F1Z2UuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9nYXZlbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2dlb3JnaWFuLWxhcmkuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9nZW0uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9naG9zdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2dpZnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9naXQtYnJhbmNoLW1pbnVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZ2l0LWJyYW5jaC1wbHVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZ2l0LWJyYW5jaC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2dpdC1jb21taXQtaG9yaXpvbnRhbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2dpdC1jb21taXQtdmVydGljYWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9naXQtY29tcGFyZS1hcnJvd3MuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9naXQtY29tcGFyZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2dpdC1ncmFwaC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2dpdC1mb3JrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZ2l0LW1lcmdlLWNvbmZsaWN0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZ2l0LW1lcmdlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZ2l0LXB1bGwtcmVxdWVzdC1hcnJvdy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2dpdC1wdWxsLXJlcXVlc3QtY2xvc2VkLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZ2l0LXB1bGwtcmVxdWVzdC1jcmVhdGUtYXJyb3cuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9naXQtcHVsbC1yZXF1ZXN0LWNyZWF0ZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2dpdC1wdWxsLXJlcXVlc3QtZHJhZnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9naXQtcHVsbC1yZXF1ZXN0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZ2l0aHViLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZ2l0bGFiLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZ2xhc3Mtd2F0ZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9nbG9iZS1sb2NrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZ2xhc3Nlcy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2dsb2JlLXguanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9nbG9iZS1vZmYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9nbG9iZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2dvYWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9ncHUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9ncmFkdWF0aW9uLWNhcC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2dyaWQtMngyLWNoZWNrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZ3JpZC0yeDItcGx1cy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2dyYXBlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZ3JpZC0yeDIteC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2dyaWQtMngyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZ3JpZC0zeDIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9ncmlkLTN4My5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2dyaXAtaG9yaXpvbnRhbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2dyaXAtdmVydGljYWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9ncmlwLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvZ3JvdXAuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9ndWl0YXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9oYW0uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9oYW1idXJnZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9oYW1tZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9oYW5kLWNvaW5zLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvaGFuZC1maXN0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvaGFuZC1ncmFiLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvaGFuZC1oZWFydC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2hhbmQtaGVscGluZy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2hhbmQtbWV0YWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9oYW5kLXBsYXR0ZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9oYW5kYmFnLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvaGFuZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2hhcmQtZHJpdmUtZG93bmxvYWQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9oYXJkLWRyaXZlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvaGFuZHNoYWtlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvaGFyZC1kcml2ZS11cGxvYWQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9oYXJkLWhhdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2hhc2guanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9oYXQtZ2xhc3Nlcy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2hhemUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9oZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2hkbWktcG9ydC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2hlYWRpbmctMS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2hlYWRpbmctMi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2hlYWRpbmctMy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2hlYWRpbmctNC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2hlYWRpbmctNS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2hlYWRpbmcuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9oZWFkaW5nLTYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9oZWFkcGhvbmVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvaGVhZHBob25lLW9mZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2hlYWRzZXQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9oZWFydC1oYW5kc2hha2UuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9oZWFydC1jcmFjay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2hlYXJ0LW9mZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2hlYXJ0LW1pbnVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvaGVhcnQtcGx1cy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2hlYXJ0LXB1bHNlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvaGVhcnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9oZWF0ZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9oZWxpY29wdGVyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvaGV4YWdvbi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2hpZ2hsaWdodGVyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvaGlzdG9yeS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2hvcC1vZmYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9ob3NwaXRhbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2hvcC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2hvdGVsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvaG91cmdsYXNzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvaG91c2UtaGVhcnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9ob3VzZS1wbHVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvaG91c2UtcGx1Zy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2hvdXNlLXdpZmkuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9pY2UtY3JlYW0tYm93bC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2hvdXNlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvaWNlLWNyZWFtLWNvbmUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9pZC1jYXJkLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvaWQtY2FyZC1sYW55YXJkLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvaW1hZ2UtZG93bi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ltYWdlLW1pbnVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvaW1hZ2Utb2ZmLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvaW1hZ2UtcGxheS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ltYWdlLXBsdXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9pbWFnZS11cC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ltYWdlLXVwc2NhbGUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9pbWFnZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ltYWdlcy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2ltcG9ydC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2luYm94LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvaW5maW5pdHkuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9pbmRpYW4tcnVwZWUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9pbmZvLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvaW5zcGVjdGlvbi1wYW5lbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2luc3RhZ3JhbS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2l0YWxpYy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2l0ZXJhdGlvbi1jdy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2l0ZXJhdGlvbi1jY3cuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9qb3lzdGljay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2phcGFuZXNlLXllbi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2thbmJhbi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2theWFrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMva2V5LXNxdWFyZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2tleS1yb3VuZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2tleS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2tleWJvYXJkLW9mZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2tleWJvYXJkLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMva2V5Ym9hcmQtbXVzaWMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9sYW1wLWNlaWxpbmcuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9sYW1wLWRlc2suanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9sYW1wLWZsb29yLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbGFtcC13YWxsLWRvd24uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9sYW1wLXdhbGwtdXAuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9sYW5kLXBsb3QuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9sYW1wLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbGFuZG1hcmsuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9sYW5ndWFnZXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9sYXB0b3AtbWluaW1hbC1jaGVjay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2xhcHRvcC1taW5pbWFsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbGFwdG9wLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbGFzc28tc2VsZWN0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbGFzc28uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9sYXVnaC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2xheWVycy0yLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbGF5ZXJzLXBsdXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9sYXllcnMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9sYXlvdXQtZ3JpZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2xheW91dC1kYXNoYm9hcmQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9sYXlvdXQtbGlzdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2xheW91dC1wYW5lbC1sZWZ0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbGF5b3V0LXBhbmVsLXRvcC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2xheW91dC10ZW1wbGF0ZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2xlYWZ5LWdyZWVuLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbGVjdGVybi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2xlYWYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9sZW5zLWNvbmNhdmUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9sZW5zLWNvbnZleC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2xpYnJhcnktYmlnLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbGlicmFyeS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2xpZmUtYnVveS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2xpZ2F0dXJlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbGlnaHRidWxiLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbGluZS1kb3QtcmlnaHQtaG9yaXpvbnRhbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2xpZ2h0YnVsYi1vZmYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9saW5lLXNxdWlnZ2xlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbGluay0yLW9mZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2xpbmstMi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2xpbmsuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9saW5rZWRpbi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2xpc3QtY2hlY2suanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9saXN0LWNoZWNrcy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2xpc3QtY2hldnJvbnMtZG93bi11cC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2xpc3QtY29sbGFwc2UuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9saXN0LWNoZXZyb25zLXVwLWRvd24uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9saXN0LWVuZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2xpc3QtZmlsdGVyLXBsdXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9saXN0LWZpbHRlci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2xpc3QtaW5kZW50LWRlY3JlYXNlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbGlzdC1pbmRlbnQtaW5jcmVhc2UuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9saXN0LW11c2ljLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbGlzdC1taW51cy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2xpc3Qtb3JkZXJlZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2xpc3QtcmVzdGFydC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2xpc3QtcGx1cy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2xpc3Qtc3RhcnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9saXN0LXRvZG8uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9saXN0LXRyZWUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9saXN0LXZpZGVvLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbGlzdC14LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbGlzdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2xvYWRlci1jaXJjbGUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9sb2FkZXItcGlud2hlZWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9sb2FkZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9sb2NhdGUtZml4ZWQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9sb2NhdGUtb2ZmLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbG9jYXRlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbG9jay1rZXlob2xlLW9wZW4uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9sb2NrLWtleWhvbGUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9sb2NrLW9wZW4uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9sb2ctaW4uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9sb2NrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbG9nLW91dC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2xvZ3MuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9sb2xsaXBvcC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL2x1Z2dhZ2UuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tYWduZXQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tYWlsLWNoZWNrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWFpbC1taW51cy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21haWwtb3Blbi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21haWwtcGx1cy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21haWwtcXVlc3Rpb24tbWFyay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21haWwtc2VhcmNoLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWFpbC13YXJuaW5nLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWFpbC14LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWFpbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21haWxib3guanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tYWlscy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21hcC1taW51cy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21hcC1waW4tY2hlY2staW5zaWRlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWFwLXBpbi1ob3VzZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21hcC1waW4tY2hlY2suanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tYXAtcGluLW1pbnVzLWluc2lkZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21hcC1waW4tbWludXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tYXAtcGluLW9mZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21hcC1waW4tcGVuLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWFwLXBpbi1wbHVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWFwLXBpbi1wbHVzLWluc2lkZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21hcC1waW4teC1pbnNpZGUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tYXAtcGluLXguanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tYXAtcGluLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWFwLXBpbm5lZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21hcC1wbHVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWFycy1zdHJva2UuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tYXAuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tYXJzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWFydGluaS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21heGltaXplLTIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tYXhpbWl6ZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21lZ2FwaG9uZS1vZmYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tZWRhbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21lZ2FwaG9uZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21laC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21lbnUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tZW1vcnktc3RpY2suanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tZXJnZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21lc3NhZ2UtY2lyY2xlLWNoZWNrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWVzc2FnZS1jaXJjbGUtY29kZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21lc3NhZ2UtY2lyY2xlLWRhc2hlZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21lc3NhZ2UtY2lyY2xlLWhlYXJ0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWVzc2FnZS1jaXJjbGUtbW9yZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21lc3NhZ2UtY2lyY2xlLW9mZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21lc3NhZ2UtY2lyY2xlLXBsdXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tZXNzYWdlLWNpcmNsZS1xdWVzdGlvbi1tYXJrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWVzc2FnZS1jaXJjbGUtcmVwbHkuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tZXNzYWdlLWNpcmNsZS13YXJuaW5nLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWVzc2FnZS1jaXJjbGUteC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21lc3NhZ2UtY2lyY2xlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWVzc2FnZS1zcXVhcmUtY2hlY2suanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tZXNzYWdlLXNxdWFyZS1jb2RlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWVzc2FnZS1zcXVhcmUtZGFzaGVkLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWVzc2FnZS1zcXVhcmUtZGlmZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21lc3NhZ2Utc3F1YXJlLWRvdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21lc3NhZ2Utc3F1YXJlLWhlYXJ0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWVzc2FnZS1zcXVhcmUtbG9jay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21lc3NhZ2Utc3F1YXJlLW1vcmUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tZXNzYWdlLXNxdWFyZS1vZmYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tZXNzYWdlLXNxdWFyZS1wbHVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWVzc2FnZS1zcXVhcmUtcXVvdGUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tZXNzYWdlLXNxdWFyZS1yZXBseS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21lc3NhZ2Utc3F1YXJlLXNoYXJlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWVzc2FnZS1zcXVhcmUtdGV4dC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21lc3NhZ2Utc3F1YXJlLXdhcm5pbmcuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tZXNzYWdlLXNxdWFyZS14LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWVzc2FnZS1zcXVhcmUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tZXNzYWdlcy1zcXVhcmUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tZXRyb25vbWUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9taWMtb2ZmLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWljLXZvY2FsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWljLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWljcm9jaGlwLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWljcm93YXZlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWlsZXN0b25lLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWljcm9zY29wZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21pbGstb2ZmLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWluaW1pemUtMi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21pbGsuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9taW5pbWl6ZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21pbnVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWlycm9yLXJlY3Rhbmd1bGFyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbWlycm9yLXJvdW5kLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbW9uaXRvci1jaGVjay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21vbml0b3ItY2xvdWQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tb25pdG9yLWNvZy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21vbml0b3ItZG90LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbW9uaXRvci1kb3duLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbW9uaXRvci1vZmYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tb25pdG9yLXBhdXNlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbW9uaXRvci1wbGF5LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbW9uaXRvci1zbWFydHBob25lLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbW9uaXRvci1zcGVha2VyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbW9uaXRvci1zdG9wLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbW9uaXRvci11cC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21vbml0b3IteC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21vbml0b3IuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tb29uLXN0YXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tb29uLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbW90b3JiaWtlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbW91bnRhaW4tc25vdy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21vdW50YWluLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbW91c2UtbGVmdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21vdXNlLW9mZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21vdXNlLXBvaW50ZXItMi1vZmYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tb3VzZS1wb2ludGVyLTIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tb3VzZS1wb2ludGVyLWJhbi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21vdXNlLXBvaW50ZXItY2xpY2suanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tb3VzZS1wb2ludGVyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbW91c2UtcmlnaHQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tb3ZlLTNkLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbW91c2UuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tb3ZlLWRpYWdvbmFsLTIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tb3ZlLWRpYWdvbmFsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbW92ZS1kb3duLXJpZ2h0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbW92ZS1kb3duLWxlZnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tb3ZlLWRvd24uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tb3ZlLWhvcml6b250YWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tb3ZlLXJpZ2h0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbW92ZS1sZWZ0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbW92ZS11cC1sZWZ0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbW92ZS11cC1yaWdodC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL21vdmUtdXAuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tb3ZlLXZlcnRpY2FsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbW92ZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL211c2ljLTIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9tdXNpYy0zLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbXVzaWMtNC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL211c2ljLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbmF2aWdhdGlvbi0yLW9mZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL25hdmlnYXRpb24tMi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL25hdmlnYXRpb24tb2ZmLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbmF2aWdhdGlvbi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL25ldHdvcmsuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9uZmMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9uZXdzcGFwZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9ub24tYmluYXJ5LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbm90ZWJvb2stcGVuLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbm90ZWJvb2stdGFicy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL25vdGVib29rLXRleHQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9ub3RlcGFkLXRleHQtZGFzaGVkLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbm90ZXBhZC10ZXh0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvbm90ZWJvb2suanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9udXQtb2ZmLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvb2N0YWdvbi1taW51cy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL251dC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL29jdGFnb24tYWxlcnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9vY3RhZ29uLXBhdXNlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvb2N0YWdvbi14LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvb2N0YWdvbi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL29tZWdhLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvb3B0aW9uLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvb3JiaXQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9vcmlnYW1pLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcGFja2FnZS0yLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcGFja2FnZS1jaGVjay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3BhY2thZ2UtbWludXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wYWNrYWdlLW9wZW4uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wYWNrYWdlLXBsdXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wYWNrYWdlLXNlYXJjaC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3BhY2thZ2UteC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3BhY2thZ2UuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wYWludC1idWNrZXQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wYWludC1yb2xsZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wYWludGJydXNoLXZlcnRpY2FsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcGFpbnRicnVzaC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3BhbGV0dGUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wYW5kYS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3BhbmVsLWJvdHRvbS1jbG9zZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3BhbmVsLWJvdHRvbS1kYXNoZWQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wYW5lbC1ib3R0b20tb3Blbi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3BhbmVsLWJvdHRvbS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3BhbmVsLWxlZnQtY2xvc2UuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wYW5lbC1sZWZ0LWRhc2hlZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3BhbmVsLWxlZnQtb3Blbi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3BhbmVsLWxlZnQtcmlnaHQtZGFzaGVkLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcGFuZWwtbGVmdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3BhbmVsLXJpZ2h0LWNsb3NlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcGFuZWwtcmlnaHQtZGFzaGVkLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcGFuZWwtcmlnaHQtb3Blbi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3BhbmVsLXJpZ2h0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcGFuZWwtdG9wLWJvdHRvbS1kYXNoZWQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wYW5lbC10b3AtY2xvc2UuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wYW5lbC10b3Atb3Blbi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3BhbmVsLXRvcC1kYXNoZWQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wYW5lbC10b3AuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wYW5lbHMtbGVmdC1ib3R0b20uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wYW5lbHMtcmlnaHQtYm90dG9tLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcGFuZWxzLXRvcC1sZWZ0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcGFwZXJjbGlwLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcGFyZW50aGVzZXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wYXJraW5nLW1ldGVyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcGFydHktcG9wcGVyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcGF1c2UuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wYXctcHJpbnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wYy1jYXNlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcGVuLWxpbmUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wZW4tb2ZmLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcGVuLXRvb2wuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wZW4uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wZW5jaWwtbGluZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3BlbmNpbC1vZmYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wZW5jaWwtcnVsZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wZW5jaWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wZXJjZW50LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcGVudGFnb24uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wZXJzb24tc3RhbmRpbmcuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9waGlsaXBwaW5lLXBlc28uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9waG9uZS1jYWxsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcGhvbmUtZm9yd2FyZGVkLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcGhvbmUtaW5jb21pbmcuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9waG9uZS1taXNzZWQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9waG9uZS1vZmYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9waG9uZS1vdXRnb2luZy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3Bob25lLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcGkuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9waWFuby5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3BpY2theGUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9waWN0dXJlLWluLXBpY3R1cmUtMi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3BpY3R1cmUtaW4tcGljdHVyZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3BpZ2d5LWJhbmsuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9waWxjcm93LWxlZnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9waWxjcm93LXJpZ2h0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcGlsY3Jvdy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3BpbGwtYm90dGxlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcGlsbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3Bpbi1vZmYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9waW4uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9waXBldHRlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcGl6emEuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wbGFuZS1sYW5kaW5nLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcGxhbmUtdGFrZW9mZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3BsYW5lLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcGxheS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3BsdWctMi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3BsdWctemFwLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcGx1Zy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3BsdXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wb2NrZXQta25pZmUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wb2NrZXQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wb2RjYXN0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcG9pbnRlci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3BvaW50ZXItb2ZmLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcG9wY29ybi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3BvcHNpY2xlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcG91bmQtc3RlcmxpbmcuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wb3dlci1vZmYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wb3dlci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3ByZXNlbnRhdGlvbi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3ByaW50ZXItY2hlY2suanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wcmludGVyLXguanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wcmludGVyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcHJvamVjdG9yLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcHJvcG9ydGlvbnMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9wdXp6bGUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9weXJhbWlkLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcXItY29kZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3JhYmJpdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3F1b3RlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcmFkYXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yYWRpYXRpb24uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yYWRpY2FsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcmFkaW8tcmVjZWl2ZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yYWRpby5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3JhZGlvLXRvd2VyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcmFkaXVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcmFpbC1zeW1ib2wuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yYWluYm93LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcmF0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcmF0aW8uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yZWNlaXB0LWV1cm8uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yZWNlaXB0LWNlbnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yZWNlaXB0LWluZGlhbi1ydXBlZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3JlY2VpcHQtamFwYW5lc2UteWVuLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcmVjZWlwdC1wb3VuZC1zdGVybGluZy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3JlY2VpcHQtcnVzc2lhbi1ydWJsZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3JlY2VpcHQtdGV4dC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3JlY2VpcHQtc3dpc3MtZnJhbmMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yZWNlaXB0LXR1cmtpc2gtbGlyYS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3JlY2VpcHQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yZWN0YW5nbGUtY2lyY2xlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcmVjdGFuZ2xlLWVsbGlwc2lzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcmVjdGFuZ2xlLWdvZ2dsZXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yZWN0YW5nbGUtaG9yaXpvbnRhbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3JlY3ljbGUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yZWN0YW5nbGUtdmVydGljYWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yZWRvLTIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yZWRvLWRvdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3JlZG8uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yZWZyZXNoLWNjdy1kb3QuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yZWZyZXNoLWNjdy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3JlZnJlc2gtY3ctb2ZmLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcmVmcmVzaC1jdy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3JlZnJpZ2VyYXRvci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3JlZ2V4LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcmVtb3ZlLWZvcm1hdHRpbmcuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yZXBlYXQtMS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3JlcGVhdC0yLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcmVwZWF0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcmVwbGFjZS1hbGwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yZXBsYWNlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcmVwbHktYWxsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcmV3aW5kLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcmVwbHkuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yaWJib24uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yb2NrZXQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yb2NraW5nLWNoYWlyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcm9sbGVyLWNvYXN0ZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yb3NlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcm90YXRlLTNkLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcm90YXRlLWNjdy1rZXkuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yb3RhdGUtY2N3LXNxdWFyZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3JvdGF0ZS1jY3cuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yb3RhdGUtY3cuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yb3RhdGUtY3ctc3F1YXJlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcm91dGUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yb3V0ZS1vZmYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yb3V0ZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yb3dzLTIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yb3dzLTMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yb3dzLTQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9yc3MuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9ydWxlci1kaW1lbnNpb24tbGluZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3J1bGVyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvcnVzc2lhbi1ydWJsZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NhaWxib2F0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2FsYWQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zYW5kd2ljaC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NhdGVsbGl0ZS1kaXNoLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2F0ZWxsaXRlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2F1ZGktcml5YWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zYXZlLW9mZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NhdmUtYWxsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2F2ZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NjYWxlLTNkLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2NhbGUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zY2FsaW5nLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2Nhbi1iYXJjb2RlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2Nhbi1leWUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zY2FuLWZhY2UuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zY2FuLWhlYXJ0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2Nhbi1saW5lLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2Nhbi1xci1jb2RlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2Nhbi1zZWFyY2guanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zY2FuLXRleHQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zY2FuLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2Nob29sLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2Npc3NvcnMtbGluZS1kYXNoZWQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zY2lzc29ycy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3Njb290ZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zY3JlZW4tc2hhcmUtb2ZmLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2NyZWVuLXNoYXJlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2Nyb2xsLXRleHQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zY3JvbGwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zZWFyY2gtYWxlcnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zZWFyY2gtY2hlY2suanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zZWFyY2gtY29kZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NlYXJjaC14LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2VhcmNoLXNsYXNoLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2VjdGlvbi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NlYXJjaC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NlbmQtaG9yaXpvbnRhbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NlbmQtdG8tYmFjay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NlbmQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zZXBhcmF0b3ItaG9yaXpvbnRhbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NlcGFyYXRvci12ZXJ0aWNhbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NlcnZlci1jb2cuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zZXJ2ZXItY3Jhc2guanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zZXJ2ZXItb2ZmLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2VydmVyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2V0dGluZ3MtMi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NldHRpbmdzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2hhcGVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2hhcmUtMi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NoYXJlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2hlZXQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zaGVsbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NoZWx2aW5nLXVuaXQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zaGllbGQtYWxlcnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zaGllbGQtYmFuLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2hpZWxkLWVsbGlwc2lzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2hpZWxkLWNoZWNrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2hpZWxkLWhhbGYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zaGllbGQtbWludXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zaGllbGQtb2ZmLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2hpZWxkLXBsdXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zaGllbGQtcXVlc3Rpb24tbWFyay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NoaWVsZC11c2VyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2hpZWxkLXguanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zaGlwLXdoZWVsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2hpZWxkLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2hpcC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NoaXJ0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2hvcHBpbmctYmFnLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2hvcHBpbmctYmFza2V0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2hvcHBpbmctY2FydC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3Nob3ZlbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3Nob3dlci1oZWFkLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2hyZWRkZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zaHJpbXAuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zaHJpbmsuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zaHJ1Yi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NodWZmbGUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zaWdtYS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NpZ25hbC1oaWdoLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2lnbmFsLWxvdy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NpZ25hbC1tZWRpdW0uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zaWduYWwtemVyby5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NpZ25hbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NpZ25hdHVyZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NpZ25wb3N0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2lyZW4uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zaWducG9zdC1iaWcuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9za2lwLWJhY2suanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9za2lwLWZvcndhcmQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zbGFjay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NsYXNoLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc2t1bGwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zbGljZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NsaWRlcnMtdmVydGljYWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zbGlkZXJzLWhvcml6b250YWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zbWFydHBob25lLWNoYXJnaW5nLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc21hcnRwaG9uZS1uZmMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zbWFydHBob25lLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc21pbGUtcGx1cy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NtaWxlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc25vd2ZsYWtlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc29hcC1kaXNwZW5zZXItZHJvcGxldC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NuYWlsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc29mYS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NvbGFyLXBhbmVsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc291cC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NwYWNlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3BhZGUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zcGFya2xlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3BhcmtsZXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zcGVha2VyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3BlZWNoLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3BlbGwtY2hlY2stMi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NwbGluZS1wb2ludGVyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3BlbGwtY2hlY2suanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zcGxpbmUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zcGxpdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3Nwb29sLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3ByYXktY2FuLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3BvdGxpZ2h0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3Byb3V0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLWFycm93LWRvd24tbGVmdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NxdWFyZS1hY3Rpdml0eS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NxdWFyZS1hcnJvdy1kb3duLXJpZ2h0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLWFycm93LWRvd24uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zcXVhcmUtYXJyb3ctbGVmdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NxdWFyZS1hcnJvdy1vdXQtZG93bi1sZWZ0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLWFycm93LW91dC1kb3duLXJpZ2h0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLWFycm93LW91dC11cC1sZWZ0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLWFycm93LW91dC11cC1yaWdodC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NxdWFyZS1hcnJvdy1yaWdodC1lbnRlci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NxdWFyZS1hcnJvdy1yaWdodC1leGl0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLWFycm93LXJpZ2h0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLWFycm93LXVwLWxlZnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zcXVhcmUtYXJyb3ctdXAtcmlnaHQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zcXVhcmUtYXJyb3ctdXAuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zcXVhcmUtY2VudGVybGluZS1kYXNoZWQtaG9yaXpvbnRhbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NxdWFyZS1hc3Rlcmlzay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NxdWFyZS1ib3R0b20tZGFzaGVkLXNjaXNzb3JzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLWNlbnRlcmxpbmUtZGFzaGVkLXZlcnRpY2FsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLWNoYXJ0LWdhbnR0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLWNoZWNrLWJpZy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NxdWFyZS1jaGVjay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NxdWFyZS1jaGV2cm9uLWRvd24uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zcXVhcmUtY2hldnJvbi1sZWZ0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLWNoZXZyb24tcmlnaHQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zcXVhcmUtY2hldnJvbi11cC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NxdWFyZS1jb2RlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLWRhc2hlZC1ib3R0b20tY29kZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NxdWFyZS1kYXNoZWQtYm90dG9tLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLWRhc2hlZC1rYW5iYW4uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zcXVhcmUtZGFzaGVkLW1vdXNlLXBvaW50ZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zcXVhcmUtZGFzaGVkLXRvcC1zb2xpZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NxdWFyZS1kYXNoZWQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zcXVhcmUtZGl2aWRlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLWRvdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NxdWFyZS1lcXVhbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NxdWFyZS1mdW5jdGlvbi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NxdWFyZS1rYW5iYW4uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zcXVhcmUtbGlicmFyeS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NxdWFyZS1tLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLW1lbnUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zcXVhcmUtbWludXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zcXVhcmUtbW91c2UtcG9pbnRlci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NxdWFyZS1wYXJraW5nLW9mZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NxdWFyZS1wYXJraW5nLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLXBhdXNlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLXBlbi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NxdWFyZS1wZXJjZW50LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLXBpLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLXBpbGNyb3cuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zcXVhcmUtcGxheS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NxdWFyZS1wbHVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLXBvd2VyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLXJhZGljYWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zcXVhcmUtcm91bmQtY29ybmVyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLXNjaXNzb3JzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLXNpZ21hLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLXNsYXNoLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLXNwbGl0LWhvcml6b250YWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zcXVhcmUtc3BsaXQtdmVydGljYWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zcXVhcmUtc3F1YXJlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLXN0YWNrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLXN0YXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zcXVhcmUtc3RvcC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NxdWFyZS11c2VyLXJvdW5kLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLXRlcm1pbmFsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlLXVzZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zcXVhcmUteC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NxdWFyZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NxdWFyZXMtZXhjbHVkZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NxdWFyZXMtaW50ZXJzZWN0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1YXJlcy1zdWJ0cmFjdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3NxdWFyZXMtdW5pdGUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zcXVpcmNsZS1kYXNoZWQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zcXVpcmNsZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3N0YW1wLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3F1aXJyZWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zdGFyLWhhbGYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zdGFyLW9mZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3N0YXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zdGVwLWJhY2suanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zdGVwLWZvcndhcmQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zdGV0aG9zY29wZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3N0aWNrZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zdGlja3ktbm90ZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3N0b25lLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3RvcmUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zdHJldGNoLWhvcml6b250YWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zdHJldGNoLXZlcnRpY2FsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3RyaWtldGhyb3VnaC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3N1YnNjcmlwdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3N1bi1kaW0uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zdW4tbWVkaXVtLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3VuLW1vb24uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zdW4tc25vdy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3N1bi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3N1bnJpc2UuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zdW5zZXQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zdXBlcnNjcmlwdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3N3YXRjaC1ib29rLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3dpdGNoLWNhbWVyYS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3N3aXNzLWZyYW5jLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvc3dvcmQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90YWJsZS0yLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdGFibGUtY2VsbHMtbWVyZ2UuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zd29yZHMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy9zeXJpbmdlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdGFibGUtY2VsbHMtc3BsaXQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90YWJsZS1jb2x1bW5zLXNwbGl0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdGFibGUtb2YtY29udGVudHMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90YWJsZS1wcm9wZXJ0aWVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdGFibGUtcm93cy1zcGxpdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RhYmxlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdGFibGV0LXNtYXJ0cGhvbmUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90YWJsZXQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90YWJsZXRzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdGFnLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdGFncy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RhbGx5LTEuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90YWxseS0yLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdGFsbHktMy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RhbGx5LTQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90YWxseS01LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdGFuZ2VudC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RhcmdldC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RlbGVzY29wZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RlbnQtdHJlZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RlbnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90ZXJtaW5hbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3Rlc3QtdHViZS1kaWFnb25hbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3Rlc3QtdHViZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3Rlc3QtdHViZXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90ZXh0LWFsaWduLWNlbnRlci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RleHQtYWxpZ24tZW5kLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdGV4dC1hbGlnbi1qdXN0aWZ5LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdGV4dC1hbGlnbi1zdGFydC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RleHQtY3Vyc29yLWlucHV0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdGV4dC1jdXJzb3IuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90ZXh0LWluaXRpYWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90ZXh0LXF1b3RlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdGV4dC1zZWFyY2guanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90ZXh0LXNlbGVjdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RleHQtd3JhcC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RoZWF0ZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90aGVybW9tZXRlci1zbm93Zmxha2UuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90aGVybW9tZXRlci1zdW4uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90aGVybW9tZXRlci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RodW1icy1kb3duLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdGh1bWJzLXVwLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdGlja2V0LWNoZWNrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdGlja2V0LW1pbnVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdGlja2V0LXBlcmNlbnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90aWNrZXQtcGx1cy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RpY2tldC1zbGFzaC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RpY2tldC14LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdGlja2V0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdGlja2V0cy1wbGFuZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RpY2tldHMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90aW1lci1yZXNldC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RpbWVyLW9mZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RpbWVyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdG9nZ2xlLWxlZnQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90b2lsZXQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90b2dnbGUtcmlnaHQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90b29sLWNhc2UuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90b29sYm94LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdG9ybmFkby5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RvcnVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdG91Y2hwYWQtb2ZmLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdG91Y2hwYWQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90b3dlbC1yYWNrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdG93ZXItY29udHJvbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RveS1icmljay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RyYWN0b3IuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90cmFmZmljLWNvbmUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90cmFpbi1mcm9udC10dW5uZWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90cmFpbi1mcm9udC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RyYWluLXRyYWNrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdHJhbS1mcm9udC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RyYW5zZ2VuZGVyLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdHJhc2gtMi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RyYXNoLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdHJlZS1wYWxtLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdHJlZS1kZWNpZHVvdXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90cmVlLXBpbmUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90cmVlcy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RyZWxsby5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RyZW5kaW5nLWRvd24uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90cmVuZGluZy11cC1kb3duLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdHJlbmRpbmctdXAuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90cmlhbmdsZS1hbGVydC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RyaWFuZ2xlLWRhc2hlZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RyaWFuZ2xlLXJpZ2h0LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdHJpYW5nbGUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90cm9waHkuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy90cnVjay1lbGVjdHJpYy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3RydWNrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdHVya2lzaC1saXJhLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdHVybnRhYmxlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdHVydGxlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdHYtbWluaW1hbC1wbGF5LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdHYtbWluaW1hbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3R2LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdHdpdGNoLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdHdpdHRlci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3R5cGUtb3V0bGluZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3R5cGUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy91bWJyZWxsYS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3VtYnJlbGxhLW9mZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3VuZGVybGluZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3VuZG8tMi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3VuZG8tZG90LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdW5kby5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3VuZm9sZC1ob3Jpem9udGFsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdW5mb2xkLXZlcnRpY2FsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdW5ncm91cC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3VuaXZlcnNpdHkuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy91bmxpbmsuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy91bnBsdWcuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy91bmxpbmstMi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3VwbG9hZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3VzYi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3VzZXItY2hlY2suanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy91c2VyLWNvZy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3VzZXIta2V5LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdXNlci1sb2NrLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdXNlci1taW51cy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3VzZXItcGx1cy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3VzZXItcGVuLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdXNlci1yb3VuZC1jaGVjay5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3VzZXItcm91bmQtY29nLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdXNlci1yb3VuZC1rZXkuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy91c2VyLXJvdW5kLW1pbnVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdXNlci1yb3VuZC1wZW4uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy91c2VyLXJvdW5kLXBsdXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy91c2VyLXJvdW5kLXNlYXJjaC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3VzZXItcm91bmQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy91c2VyLXJvdW5kLXguanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy91c2VyLXNlYXJjaC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3VzZXItc3Rhci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3VzZXIteC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3VzZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy91c2Vycy1yb3VuZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3V0ZW5zaWxzLWNyb3NzZWQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy91c2Vycy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3V0aWxpdHktcG9sZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3V0ZW5zaWxzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdmFuLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdmFyaWFibGUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy92ZWN0b3Itc3F1YXJlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdmF1bHQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy92ZWdhbi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3ZlbmV0aWFuLW1hc2suanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy92ZW51cy1hbmQtbWFycy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3ZlbnVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdmlicmF0ZS1vZmYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy92aWJyYXRlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdmlkZW8tb2ZmLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdmlkZW8uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy92aWRlb3RhcGUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy92aWV3LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdm9pY2VtYWlsLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdm9sbGV5YmFsbC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3ZvbHVtZS0xLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvdm9sdW1lLTIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy92b2x1bWUteC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3ZvbHVtZS1vZmYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy92b2x1bWUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy93YWxsZXQtY2FyZHMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy92b3RlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvd2FsbGV0LW1pbmltYWwuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy93YWxsZXQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy93YWxscGFwZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy93YW5kLXNwYXJrbGVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvd2FuZC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3dhcmVob3VzZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3dhc2hpbmctbWFjaGluZS5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3dhdGNoLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvd2F2ZXMtYXJyb3ctZG93bi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3dhdmVzLWxhZGRlci5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3dhdmVzLWFycm93LXVwLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvd2F2ZXMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy93YXlwb2ludHMuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy93ZWJjYW0uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy93ZWJob29rLW9mZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3dlYmhvb2suanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy93ZWlnaHQtdGlsZGUuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy93aGVhdC1vZmYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy93ZWlnaHQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy93aGVhdC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3dob2xlLXdvcmQuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy93aWZpLWNvZy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3dpZmktaGlnaC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3dpZmktbG93LmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvd2lmaS1wZW4uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy93aWZpLW9mZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3dpZmktemVyby5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3dpZmktc3luYy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3dpZmkuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy93aW5kLWFycm93LWRvd24uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy93aW5kLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvd2luZS1vZmYuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy93aW5lLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvd29ya2Zsb3cuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy93b3JtLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvd3JlbmNoLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMveC1saW5lLXRvcC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3guanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy95b3V0dWJlLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvemFwLW9mZi5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3phcC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3pvZGlhYy1hcXVhcml1cy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3pvZGlhYy1hcmllcy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3pvZGlhYy1jYW5jZXIuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy96b2RpYWMtY2Fwcmljb3JuLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvem9kaWFjLWxlby5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3pvZGlhYy1nZW1pbmkuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy96b2RpYWMtbGlicmEuanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy96b2RpYWMtb3BoaXVjaHVzLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvem9kaWFjLXBpc2Nlcy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3pvZGlhYy1zYWdpdHRhcml1cy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3pvZGlhYy1zY29ycGlvLmpzOgpsdWNpZGUvZGlzdC9lc20vaWNvbnMvem9kaWFjLXRhdXJ1cy5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3pvZGlhYy12aXJnby5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zL3pvb20taW4uanM6Cmx1Y2lkZS9kaXN0L2VzbS9pY29ucy96b29tLW91dC5qczoKbHVjaWRlL2Rpc3QvZXNtL2ljb25zQW5kQWxpYXNlcy5qczoKbHVjaWRlL2Rpc3QvZXNtL2x1Y2lkZS5qczoKICAoKioKICAgKiBAbGljZW5zZSBsdWNpZGUgdjAuNTc3LjAgLSBJU0MKICAgKgogICAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIElTQyBsaWNlbnNlLgogICAqIFNlZSB0aGUgTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLgogICAqKQoKaWJhbnRvb2xzL2pzbmV4dC9pYmFudG9vbHMuanM6CiAgKCohCiAgICogQGxpY2Vuc2UKICAgKiBDb3B5cmlnaHQgU2HFoWEgSm92YW5pxIcKICAgKiBMaWNlbnNlZCB1bmRlciB0aGUgTW96aWxsYSBQdWJsaWMgTGljZW5zZSwgVmVyc2lvbiAyLjAgb3IgdGhlIE1JVCBsaWNlbnNlLAogICAqIGF0IHlvdXIgb3B0aW9uLiBUaGlzIGZpbGUgbWF5IG5vdCBiZSBjb3BpZWQsIG1vZGlmaWVkLCBvciBkaXN0cmlidXRlZAogICAqIGV4Y2VwdCBhY2NvcmRpbmcgdG8gdGhvc2UgdGVybXMuCiAgICogU1BEWC1GaWxlQ29weXJpZ2h0VGV4dDogU2HFoWEgSm92YW5pxIcKICAgKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUIG9yIE1QTC8yLjAKICAgKikKICAoKioKICAgKiBWYWxpZGF0aW9uLCBleHRyYWN0aW9uIGFuZCBjcmVhdGlvbiBvZiBJQkFOLCBCQkFOLCBCSUMvU1dJRlQgbnVtYmVycyBwbHVzIHNvbWUgb3RoZXIgaGVscGZ1bCBzdHVmZgogICAqIEBwYWNrYWdlIERvY3VtZW50YXRpb24KICAgKiBAYXV0aG9yIFNhxaFhIEpvdmFuacSHCiAgICogQG1vZHVsZSBpYmFudG9vbHMKICAgKiBAdmVyc2lvbiA0LjUuMQogICAqIEBsaWNlbnNlIE1JVCBvciBNUEwtMi4wCiAgICogQHByZWZlcnJlZAogICAqKQoqLwovLyMgc291cmNlTWFwcGluZ1VSTD1idW5kbGUtMTc3NDM5MTY4OTA5Ni5qcy5tYXAK"
|
|
},
|
|
{
|
|
"path": "index.html",
|
|
"contentBase64": "PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KICA8aGVhZD4KICAgIDxtZXRhCiAgICAgIG5hbWU9InZpZXdwb3J0IgogICAgICBjb250ZW50PSJ1c2VyLXNjYWxhYmxlPTAsIGluaXRpYWwtc2NhbGU9MSwgbWF4aW11bS1zY2FsZT0xLCBtaW5pbXVtLXNjYWxlPTEsIHdpZHRoPWRldmljZS13aWR0aCwgaGVpZ2h0PWRldmljZS1oZWlnaHQiCiAgICAvPgogICAgPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9dXRmLTgiIC8+CiAgICA8bWV0YSBuYW1lPSJ0aGVtZS1jb2xvciIgY29udGVudD0iIzAwMDAwMCIgLz4KICAgIDx0aXRsZT5PYmplY3RTdG9yYWdlPC90aXRsZT4KICAgIDxsaW5rIHJlbD0icHJlY29ubmVjdCIgaHJlZj0iaHR0cHM6Ly9hc3NldGJyb2tlci5sb3NzbGVzcy5vbmUvIiBjcm9zc29yaWdpbj4KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cHM6Ly9hc3NldGJyb2tlci5sb3NzbGVzcy5vbmUvZm9udHMvZm9udHMuY3NzIj4KICAgIDxzdHlsZT4KICAgICAgaHRtbCB7CiAgICAgICAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7CiAgICAgICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOwogICAgICB9CiAgICAgIGJvZHkgewogICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgICAgICBiYWNrZ3JvdW5kOiAjMDAwOwogICAgICAgIG1hcmdpbjogMHB4OwogICAgICB9CiAgICA8L3N0eWxlPgogIDwvaGVhZD4KICA8Ym9keT4KICAgIDxub3NjcmlwdD4KICAgICAgPHAgc3R5bGU9ImNvbG9yOiAjZmZmOyB0ZXh0LWFsaWduOiBjZW50ZXI7IG1hcmdpbi10b3A6IDEwMHB4OyI+CiAgICAgICAgSmF2YVNjcmlwdCBpcyByZXF1aXJlZCB0byBydW4gdGhlIE9iamVjdFN0b3JhZ2UgZGFzaGJvYXJkLgogICAgICA8L3A+CiAgICA8L25vc2NyaXB0PgogIDwvYm9keT4KICA8c2NyaXB0IGRlZmVyIHR5cGU9Im1vZHVsZSIgc3JjPSIvYnVuZGxlLmpzIj48L3NjcmlwdD4KPC9odG1sPgo="
|
|
}
|
|
];
|